From d00ab8afbbed25427c15effa7b3f72146cb15396 Mon Sep 17 00:00:00 2001 From: Ajax Davis Date: Thu, 1 Jan 2026 17:09:51 +1000 Subject: [PATCH] feat: add /tool-ideas page with 10K AI-generated tools MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add virtualized list using react-virtuoso for smooth scrolling - Filter by category, verb, quality score, and search - Expandable cards with parameters, returns, AI guidance - Add redirect from /tools-ideas to /tool-ideas 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- apps/web/data/tools-export.json | 844696 +++++++++++++++ apps/web/next.config.ts | 9 + apps/web/package.json | 1 + apps/web/src/app/api/tool-ideas/route.ts | 128 + .../src/app/tool-ideas/ToolIdeasClient.tsx | 322 + apps/web/src/app/tool-ideas/page.tsx | 27 + pnpm-lock.yaml | 2191 +- 7 files changed, 847125 insertions(+), 249 deletions(-) create mode 100644 apps/web/data/tools-export.json create mode 100644 apps/web/src/app/api/tool-ideas/route.ts create mode 100644 apps/web/src/app/tool-ideas/ToolIdeasClient.tsx create mode 100644 apps/web/src/app/tool-ideas/page.tsx diff --git a/apps/web/data/tools-export.json b/apps/web/data/tools-export.json new file mode 100644 index 0000000..1f6cf17 --- /dev/null +++ b/apps/web/data/tools-export.json @@ -0,0 +1,844696 @@ +{ + "metadata": { + "exportedAt": "2026-01-01T06:06:02.809Z", + "count": 10000, + "minQuality": 0.5, + "excludeNonsensical": false + }, + "tools": [ + { + "name": "infrastructure-management.generateMarkdown", + "description": "Generates a detailed markdown report summarizing the configuration, status, and metadata of specified cloud or physical infrastructure resources. Accepts structured input describing infrastructure components and outputs a human-readable markdown document suitable for documentation or auditing.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureData", + "type": "object", + "description": "Structured object containing details about the infrastructure components, including types, configurations, statuses, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title to display at the top of the markdown report.", + "required": false, + "defaultValue": "Infrastructure Report" + }, + { + "name": "includeStatus", + "type": "boolean", + "description": "Whether to include the current operational status of infrastructure elements in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata and tags associated with the infrastructure components.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Preferred date format string to display timestamps within the report (e.g., YYYY-MM-DD).", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "sectionOrder", + "type": "array", + "description": "Array specifying order of sections such as ['Overview', 'Details', 'Status', 'Metadata']. If empty or omitted, default order is used.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated markdown string under the key 'markdownContent'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce comprehensive markdown documentation from infrastructure configuration data. Ideal for generating README files, audit reports, or status summaries that make complex infrastructure details accessible and easy to share with stakeholders.", + "limitations": "This tool does not perform live querying or validation of infrastructure states; it relies solely on provided input data. It also does not convert markdown to other document formats.", + "examples": [ + "Generate a markdown report from JSON describing a multi-cloud environment setup with statuses and metadata.", + "Create a summary markdown document for on-premise server racks including configurations and tags.", + "Produce an infrastructure documentation markdown section with custom title and date format." + ] + }, + "tags": [ + "infrastructure", + "markdown", + "documentation", + "reporting", + "cloud", + "physical", + "status", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"infrastructureData\":{\"servers\":[{\"name\":\"web01\",\"type\":\"VM\",\"os\":\"Ubuntu 20.04\",\"status\":\"running\",\"metadata\":{\"location\":\"datacenter1\",\"owner\":\"teamA\"}},{\"name\":\"db01\",\"type\":\"Database\",\"engine\":\"PostgreSQL\",\"status\":\"stopped\",\"metadata\":{\"location\":\"datacenter2\",\"owner\":\"teamB\"}}],\"networks\":[{\"name\":\"internal-net\",\"cidr\":\"10.0.0.0/24\",\"status\":\"active\"}]},\"title\":\"Weekly Infrastructure Report\",\"includeStatus\":true,\"includeMetadata\":true,\"dateFormat\":\"YYYY-MM-DD\",\"sectionOrder\":[\"Overview\",\"Details\",\"Status\",\"Metadata\"]}", + "description": "Generate a markdown infrastructure summary including servers and networks with status and metadata in a custom section order." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "etl-processes.generateHeading", + "description": "Generates a formatted heading string for use in ETL reports or data processing logs. Accepts a base title, optional subtitle, heading level, and formatting options, then outputs a properly formatted heading text suitable for display or inclusion in ETL documentation or data pipelines.", + "category": "etl-processes", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main text for the heading to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "subtitle", + "type": "string", + "description": "An optional subtitle to appear below the main heading.", + "required": false, + "defaultValue": "" + }, + { + "name": "headingLevel", + "type": "number", + "description": "Level of the heading from 1 to 6, determining its importance/format style.", + "required": false, + "defaultValue": "1" + }, + { + "name": "useMarkdown", + "type": "boolean", + "description": "Whether to format the heading using Markdown syntax.", + "required": false, + "defaultValue": "true" + }, + { + "name": "uppercase", + "type": "boolean", + "description": "If true, converts the heading texts to uppercase.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string under key 'headingText'." + }, + "aiAgent": { + "useCase": "Use this tool when constructing ETL process documentation, logs, or generated reports that require clear hierarchical headings with optional formatting. It helps generate consistent, styled headings for step indications or section titles in ETL pipelines or extracted data summaries.", + "limitations": "This tool only generates text headings and does not produce styled HTML or rich text formats beyond markdown. It does not create multi-language headings or perform text translations.", + "examples": [ + "Generate a level 2 markdown heading with a subtitle for an ETL extraction step.", + "Create an uppercase level 1 heading without markdown formatting.", + "Produce a simple level 3 heading as plain text." + ] + }, + "tags": [ + "etl", + "heading", + "generate", + "formatting", + "documentation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Data Extraction Step\",\"subtitle\":\"Extracting user data from API\",\"headingLevel\":2,\"useMarkdown\":true,\"uppercase\":false}", + "description": "Generate a markdown level 2 heading with a subtitle for an ETL extraction step." + }, + { + "inputJson": "{\"title\":\"FINAL REPORT\",\"subtitle\":\"Summary of Process\",\"headingLevel\":1,\"useMarkdown\":false,\"uppercase\":true}", + "description": "Create an uppercase level 1 heading without markdown formatting." + }, + { + "inputJson": "{\"title\":\"Transformation Details\",\"headingLevel\":3,\"useMarkdown\":false,\"uppercase\":false}", + "description": "Produce a simple level 3 heading as plain text with no subtitle." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "model-management.generateHeading", + "description": "Generates a concise, informative heading or title for an AI model training, deployment, or management report or document. Accepts input parameters describing the model type, purpose, and context to produce a clear heading string suitable for documentation or summaries.", + "category": "model-management", + "parameters": [ + { + "name": "modelType", + "type": "string", + "description": "Type or name of the AI model (e.g., 'Transformer', 'CNN', 'Recommendation Engine').", + "required": true, + "defaultValue": "" + }, + { + "name": "taskDomain", + "type": "string", + "description": "The application domain or problem area the model addresses (e.g., 'image classification', 'natural language processing').", + "required": true, + "defaultValue": "" + }, + { + "name": "action", + "type": "string", + "description": "The main action or focus related to the model lifecycle (e.g., 'training', 'deployment', 'evaluation').", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Intended audience for the heading, such as 'data scientists', 'project stakeholders', or 'developers'.", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The tone or style of the heading: 'formal', 'concise', 'informative', or 'creative'.", + "required": false, + "defaultValue": "concise" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading string ready for use in reports or UI." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to produce clear and context-aware headings or titles for documents or reports pertaining to AI model lifecycle stages, such as summarizing model training results, deployment status, or evaluation findings. It helps maintain consistency and professionalism in generated content.", + "limitations": "The tool cannot generate lengthy summaries or detailed content beyond the heading. It relies on accurate input parameters; insufficient or vague inputs may yield generic or less relevant headings.", + "examples": [ + "Generate a heading for a CNN model used in image classification during deployment for developers.", + "Create an informative heading for a Transformer model training report targeting data scientists.", + "Produce a concise title for evaluation results of a recommendation engine for stakeholders." + ] + }, + "tags": [ + "model-management", + "generate", + "heading", + "AI documentation", + "reporting", + "title generation" + ], + "examples": [ + { + "inputJson": "{\"modelType\":\"Transformer\",\"taskDomain\":\"natural language processing\",\"action\":\"training\",\"audience\":\"data scientists\",\"style\":\"informative\"}", + "description": "Generate an informative heading for training a Transformer model in NLP targeted at data scientists." + }, + { + "inputJson": "{\"modelType\":\"CNN\",\"taskDomain\":\"image classification\",\"action\":\"deployment\",\"audience\":\"developers\",\"style\":\"concise\"}", + "description": "Create a concise heading for deploying a CNN model for image classification aimed at developers." + }, + { + "inputJson": "{\"modelType\":\"Recommendation Engine\",\"taskDomain\":\"e-commerce personalization\",\"action\":\"evaluation\",\"audience\":\"project stakeholders\",\"style\":\"formal\"}", + "description": "Produce a formal heading for evaluation results of a recommendation engine targeting project stakeholders." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "infrastructure-management.sendNotification", + "description": "Sends notifications to specified recipients regarding infrastructure events or alerts. Accepts message content, recipient details, notification channels (such as email, SMS, or Slack), and priority settings. Processes the inputs to dispatch messages via the chosen channels and returns the delivery status and any error messages.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The main content text of the notification message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as email addresses, phone numbers, or user IDs for messaging platforms.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "Channels to send notifications through; supported options include 'email', 'sms', 'slack'.", + "required": true, + "defaultValue": "[\"email\"]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification such as 'low', 'normal', or 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for the notification if applicable (e.g., for email notifications).", + "required": false, + "defaultValue": "" + }, + { + "name": "sendTime", + "type": "string", + "description": "ISO 8601 timestamp string specifying scheduled send time; sends immediately if empty.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall status of the send operation, a breakdown of results per channel and recipient, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool to notify infrastructure teams or automated systems about critical events, maintenance windows, status updates, or alerts needing immediate attention. It supports different communication channels and allows scheduling or prioritization to manage notifications effectively.", + "limitations": "Cannot generate message content automatically; requires preformatted message input. Limited to predefined channels and requires valid recipient identifiers. Does not guarantee delivery confirmation beyond channel receipt acknowledgement.", + "examples": [ + "Send a high-priority email alert to the on-call team about a server outage.", + "Dispatch SMS and Slack notifications to multiple recipients about maintenance schedule.", + "Schedule a low-priority notification email with a subject about upcoming infrastructure upgrades." + ] + }, + "tags": [ + "notification", + "infrastructure", + "alerts", + "communication", + "email", + "sms", + "slack", + "priority" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"Server cluster 5 is down. Immediate action required.\",\"recipients\":[\"oncall@example.com\",\"ops-team@example.com\"],\"channels\":[\"email\"],\"priority\":\"high\",\"subject\":\"URGENT: Server Outage Alert\",\"sendTime\":\"\"}", + "description": "Send a high-priority email notification to on-call and ops team about a critical server outage." + }, + { + "inputJson": "{\"messageContent\":\"Scheduled maintenance tonight from 10pm to 1am.\",\"recipients\":[\"+1234567890\",\"+1987654321\"],\"channels\":[\"sms\",\"slack\"],\"priority\":\"normal\",\"subject\":\"\",\"sendTime\":\"\"}", + "description": "Send SMS and Slack notifications about scheduled maintenance to a list of phone numbers and Slack users." + }, + { + "inputJson": "{\"messageContent\":\"Infrastructure upgrade next week.\",\"recipients\":[\"infra-team@example.com\"],\"channels\":[\"email\"],\"priority\":\"low\",\"subject\":\"Upcoming Upgrade\",\"sendTime\":\"2024-06-15T08:00:00Z\"}", + "description": "Schedule a low priority email notification about an upcoming infrastructure upgrade to be sent on a specific date and time." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "legal-tools.createDocument", + "description": "Creates a customizable legal document based on user-provided specifications, such as document type, parties involved, key terms, and governing law. Processes inputs to generate a draft legal contract or agreement in a structured text format, ready for review and further legal refinement.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of legal document to create (e.g., 'NDA', 'Service Agreement', 'Employment Contract').", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the document, each with a name and role.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "keyTerms", + "type": "object", + "description": "Key terms and clauses to include in the document, provided as a dictionary of term names to definitions or values.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "governingLaw", + "type": "string", + "description": "The jurisdiction or governing law to which the document is subject.", + "required": false, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The effective date of the document in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeConfidentialityClause", + "type": "boolean", + "description": "Whether to include a confidentiality clause in the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalClauses", + "type": "array", + "description": "List of additional custom clauses or provisions as free text to append to the document.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns the generated legal document including a structured text draft and metadata such as summary and included clauses." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a draft legal document tailored to specific details like parties, key terms, and governing law for contracts, agreements, or other legal instruments. It supports creating initial drafts before review by legal professionals.", + "limitations": "The tool generates drafts based on templates and provided inputs but cannot provide legal advice or guarantee compliance with all local laws or regulations. Review by a qualified attorney is necessary before final use.", + "examples": [ + "Create a non-disclosure agreement between Company A and Company B with confidentiality clause included.", + "Generate a service agreement effective 2024-07-01 governing law California, involving two companies and standard payment terms.", + "Draft an employment contract with customized benefits and termination clauses." + ] + }, + "tags": [ + "legal", + "document-creation", + "contract", + "compliance", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"NDA\",\"parties\":[{\"name\":\"Alpha Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Beta LLC\",\"role\":\"Receiving Party\"}],\"keyTerms\":{\"duration\":\"2 years\",\"scope\":\"Confidential information exchange\"},\"governingLaw\":\"Delaware\",\"effectiveDate\":\"2024-06-01\",\"includeConfidentialityClause\":true,\"additionalClauses\":[]}", + "description": "Generate a 2-year NDA between Alpha Corp and Beta LLC under Delaware law including confidentiality clause." + }, + { + "inputJson": "{\"documentType\":\"Service Agreement\",\"parties\":[{\"name\":\"Gamma Solutions\",\"role\":\"Provider\"},{\"name\":\"Delta Industries\",\"role\":\"Client\"}],\"keyTerms\":{\"paymentTerms\":\"Net 30\",\"services\":\"IT consulting and support\"},\"governingLaw\":\"New York\",\"effectiveDate\":\"2024-07-15\",\"includeConfidentialityClause\":false,\"additionalClauses\":[\"Service level agreement attached as annex.\"]}", + "description": "Create a service agreement for IT consulting with payment terms and additional SLA clause." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "marketing-automation.composeWord", + "description": "Generates a creative marketing word or short phrase optimized for campaign themes based on input keywords, tone preference, and target audience. Accepts an array of keywords and outputs a compelling word or phrase that fits marketing contexts such as branding, slogans, or product naming.", + "category": "marketing-automation", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "An array of strings representing key themes, concepts, or product features to inspire the generated word or phrase.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the word phrase, e.g., 'professional', 'playful', 'innovative'. Guides the style of the generated output.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word or phrase, including spaces, to ensure suitability for marketing materials.", + "required": false, + "defaultValue": "20" + }, + { + "name": "audience", + "type": "string", + "description": "Target audience descriptor, such as 'tech-savvy millennials' or 'small business owners'. Helps tailor the wording to audience preferences.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing word or phrase as a string, plus metadata like tone used and keywords reference." + }, + "aiAgent": { + "useCase": "Use this tool when needing creative single words or short phrases as branding elements, slogans, or campaign titles derived from given keywords and tone preferences. It aids in rapid ideation tailored to audience and style requirements.", + "limitations": "Cannot create long marketing copy or full sentences; focuses only on succinct words or brief phrases. May not capture extremely niche jargon accurately without proper keywords.", + "examples": [ + "Generate a playful brand name for an eco-friendly apparel line using keywords 'green','style','comfort'.", + "Create a professional product slogan word for a SaaS tool targeting small businesses.", + "Produce an innovative short phrase combining 'speed' and 'security' for a tech startup." + ] + }, + "tags": [ + "marketing", + "content-generation", + "branding", + "slogan", + "creative-writing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"green\",\"style\",\"comfort\"],\"tone\":\"playful\",\"maxLength\":15,\"audience\":\"eco-conscious young adults\"}", + "description": "Generate a playful word or phrase for an eco-friendly apparel brand targeting young adults." + }, + { + "inputJson": "{\"keywords\":[\"speed\",\"security\"],\"tone\":\"innovative\",\"maxLength\":20,\"audience\":\"tech-savvy professionals\"}", + "description": "Create an innovative slogan word or phrase combining ideas of speed and security for a tech product." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "frontend-development.analyzeHeading", + "description": "Analyzes an HTML heading element string or a plain text heading along with its level to evaluate semantic correctness, readability, and accessibility compliance. The tool identifies issues such as missing heading levels, poor contrast, and suggests improvements. Outputs a detailed report with scores and recommendations.", + "category": "frontend-development", + "parameters": [ + { + "name": "headingHTML", + "type": "string", + "description": "HTML string of the heading element to analyze (e.g., '

Title

'). Required if headingText is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "headingText", + "type": "string", + "description": "Plain text of the heading to analyze. Required if headingHTML is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "headingLevel", + "type": "number", + "description": "The heading level (1-6) to analyze. Required if headingText is provided without headingHTML.", + "required": false, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to include accessibility checks such as color contrast and ARIA usage in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkReadability", + "type": "boolean", + "description": "Whether to analyze the readability of the heading text, including length and complexity.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including semantic correctness, accessibility issues, readability metrics, and recommendations for improvement." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the quality and accessibility of page headings for frontend applications, ensuring semantic HTML and user-friendly content structure. It helps in automated UI audits and accessibility compliance reviews.", + "limitations": "This tool does not automatically fix headings; it provides analysis and recommendations only. It does not analyze headings in context of entire page DOM or styles except what is directly provided.", + "examples": [ + "Analyze the heading HTML '

Welcome to our site

' for semantic correctness and accessibility.", + "Evaluate a plain text heading 'Chapter 1: Introduction' given with level 1 for readability and accessibility.", + "Check a heading HTML with disabled accessibility checks to focus only on semantics and readability." + ] + }, + "tags": [ + "frontend", + "heading", + "analysis", + "accessibility", + "readability", + "semantic-html", + "ui-audit" + ], + "examples": [ + { + "inputJson": "{\"headingHTML\":\"

Welcome to the Dashboard

\",\"checkAccessibility\":true,\"checkReadability\":true}", + "description": "Analyze a level 2 heading HTML element with accessibility and readability checks enabled." + }, + { + "inputJson": "{\"headingText\":\"User Profile Settings\",\"headingLevel\":3,\"checkAccessibility\":false,\"checkReadability\":true}", + "description": "Analyze a plain text heading at level 3 focusing on readability without accessibility checks." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "backend-development.downloadTable", + "description": "Downloads data in tabular format from a specified database or API endpoint. Accepts parameters to query and filter the table data and outputs the resulting table in CSV, JSON, or Excel format suitable for downstream processing or analysis.", + "category": "backend-development", + "parameters": [ + { + "name": "sourceType", + "type": "string", + "description": "Type of data source: 'database' or 'api'.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Connection string or URL to access the data source (e.g., DB connection URI or API base URL).", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table to download (required if sourceType is 'database').", + "required": false, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "API endpoint path to fetch the table data (required if sourceType is 'api').", + "required": false, + "defaultValue": "" + }, + { + "name": "queryFilters", + "type": "object", + "description": "Key-value pairs representing filters or query parameters to apply when fetching the table data.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the downloaded table: 'csv', 'json', or 'excel'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to download. Default is no limit.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a success flag, message, and the table data encoded as a string in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve tabular data dynamically from backend data sources for processing, analysis, or export. It is suitable for pulling filtered or full datasets from databases or APIs in common formats like CSV, JSON, or Excel, enabling interoperability with downstream systems or workflows.", + "limitations": "Cannot connect to proprietary or non-standard data sources without proper adapter. Requires correct connection info and permissions. Does not perform complex joins or transformations beyond basic filtering. Large data downloads may be limited by system memory and execution environment.", + "examples": [ + "Download all records from 'users' table in PostgreSQL database as CSV.", + "Fetch filtered order data from REST API endpoint '/orders' in JSON format.", + "Retrieve first 100 rows from 'inventory' table from MySQL database exporting as Excel." + ] + }, + "tags": [ + "backend", + "database", + "api", + "download", + "table", + "csv", + "json", + "excel" + ], + "examples": [ + { + "inputJson": "{\"sourceType\":\"database\",\"connectionString\":\"postgresql://user:pass@localhost:5432/mydb\",\"tableName\":\"employees\",\"outputFormat\":\"csv\"}", + "description": "Download all rows from the 'employees' table in a PostgreSQL database as CSV." + }, + { + "inputJson": "{\"sourceType\":\"api\",\"connectionString\":\"https://api.example.com\",\"apiEndpoint\":\"/sales-data\",\"queryFilters\":{\"region\":\"EMEA\"},\"outputFormat\":\"json\"}", + "description": "Fetch sales data filtered by region 'EMEA' from an API endpoint, output as JSON." + }, + { + "inputJson": "{\"sourceType\":\"database\",\"connectionString\":\"mysql://user:pass@localhost:3306/shop\",\"tableName\":\"products\",\"outputFormat\":\"excel\",\"maxRows\":50}", + "description": "Download the first 50 product records from MySQL database as an Excel file." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "prompt-engineering.generateSentence", + "description": "Generates a coherent and contextually relevant sentence based on an optional input prompt, desired tone, and style. Accepts input parameters for prompt text, tone (e.g., formal, casual), style (e.g., descriptive, persuasive), and length to produce a single sentence aligned to user specifications.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptText", + "type": "string", + "description": "Optional starting phrase or context to guide sentence generation.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the generated sentence, such as formal, casual, or neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "style", + "type": "string", + "description": "Writing style for the sentence: e.g., descriptive, persuasive, informative.", + "required": false, + "defaultValue": "descriptive" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length in words of the generated sentence.", + "required": false, + "defaultValue": "20" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence as a string under the key 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a precise and contextually relevant single sentence for use in prompts, content creation, or demonstration. It is ideal for crafting sentences that conform to specific tone and style requirements based on optional user input or context.", + "limitations": "This tool generates only a single sentence and does not produce multi-sentence paragraphs or long text. It may not perfectly capture highly specialized jargon without sufficient context.", + "examples": [ + "Generate a formal sentence describing renewable energy benefits.", + "Create a casual sentence promoting a new app feature.", + "Produce a descriptive sentence starting with 'The ancient tree...'." + ] + }, + "tags": [ + "prompt-engineering", + "generation", + "sentence", + "text-generation", + "tone", + "style" + ], + "examples": [ + { + "inputJson": "{\"promptText\":\"The ancient tree\",\"tone\":\"descriptive\",\"style\":\"descriptive\",\"maxLength\":15}", + "description": "Generate a descriptive sentence starting with 'The ancient tree'." + }, + { + "inputJson": "{\"promptText\":\"\",\"tone\":\"formal\",\"style\":\"persuasive\",\"maxLength\":20}", + "description": "Generate a formal persuasive sentence without a prompt." + }, + { + "inputJson": "{\"promptText\":\"Introducing our app\",\"tone\":\"casual\",\"style\":\"informative\",\"maxLength\":12}", + "description": "Generate a casual informative sentence starting with 'Introducing our app'." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "text-analysis.generateText", + "description": "Generates coherent and contextually relevant text based on a provided input prompt. The tool accepts a text prompt and optional parameters to control length, creativity, and style, then produces a generated text output suitable for creative writing, summarization, or content creation.", + "category": "text-analysis", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "The input text prompt that guides the content generation process.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated text in tokens or words.", + "required": false, + "defaultValue": "200" + }, + { + "name": "temperature", + "type": "number", + "description": "Controls randomness in text generation; higher values yield more creative results (range 0.0 to 1.0).", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "topP", + "type": "number", + "description": "Nucleus sampling parameter controlling diversity; 0.0 to 1.0 where lower values narrow the scope of considered words.", + "required": false, + "defaultValue": "0.9" + }, + { + "name": "style", + "type": "string", + "description": "Optional stylistic tone or genre (e.g., formal, conversational, poetic) to influence generated text tone.", + "required": false, + "defaultValue": "" + }, + { + "name": "returnAsHtml", + "type": "boolean", + "description": "Whether to format the generated text with basic HTML tags for rich text display.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text and metadata about the generation process, such as input prompt, parameters used, and estimated token count." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate human-like text based on a specific prompt, including writing creative content, summarizing ideas into extended text, or drafting messages automatically. It helps produce fluent and contextually appropriate text for applications in chatbots, content creation, or automated writing.", + "limitations": "The tool cannot guarantee factually accurate content or perfectly mimic specific writing styles without additional fine-tuning. It also may produce plausible-sounding but incorrect or nonsensical information and is sensitive to prompt quality.", + "examples": [ + "Generate a motivational paragraph about overcoming challenges.", + "Create a short story introduction in a fantasy style.", + "Produce a formal email draft based on a brief request." + ] + }, + "tags": [ + "text-generation", + "NLP", + "creative-writing", + "content-creation", + "language-model", + "summarization", + "text-synthesis" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"Write a friendly email invitation to a team meeting next Monday.\",\"maxLength\":100,\"temperature\":0.6,\"style\":\"conversational\"}", + "description": "Generate a short and polite invitation email with a conversational tone." + }, + { + "inputJson": "{\"prompt\":\"Once upon a time in a distant galaxy,\",\"maxLength\":150,\"temperature\":0.9,\"style\":\"fantasy\"}", + "description": "Create an opening paragraph for a fantasy story with imaginative and vivid language." + }, + { + "inputJson": "{\"prompt\":\"Explain the importance of regular exercise in 3 paragraphs.\",\"maxLength\":200,\"temperature\":0.5,\"style\":\"formal\"}", + "description": "Generate a formal, informative text about the benefits of exercise." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "security-tools.formatReport", + "description": "Formats a security assessment report by accepting raw report data including findings, severity levels, and recommendations, then generates a polished, standardized report in multiple output formats such as PDF, HTML, or Markdown.", + "category": "security-tools", + "parameters": [ + { + "name": "rawReportData", + "type": "object", + "description": "The raw security report data including findings, descriptions, severity ratings, and remediation suggestions to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired file format for the formatted report (e.g., PDF, HTML, Markdown).", + "required": true, + "defaultValue": "\"PDF\"" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section at the beginning of the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include remediation recommendations for each security finding.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Custom title to display at the top of the report.", + "required": false, + "defaultValue": "\"Security Assessment Report\"" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the report author or security team to use in the report metadata.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "date", + "type": "string", + "description": "Report creation date in ISO 8601 format for display on the report.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report content in the specified format, along with metadata including filename and content type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a professional and standardized security report from raw vulnerability and assessment data. Ideal for creating documents for stakeholders, compliance, or audits with consistent formatting automatically adapted to preferred output types.", + "limitations": "Cannot generate original security findings or assess vulnerabilities; formatting only. Limited to the supported output formats and depends on quality of input data for clarity and completeness.", + "examples": [ + "Format a raw security findings JSON into a PDF report with summary and recommendations.", + "Create an HTML version of a vulnerability report without the executive summary.", + "Generate a Markdown report with a custom title and author metadata." + ] + }, + "tags": [ + "security", + "report", + "formatting", + "assessment", + "vulnerability", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"rawReportData\": {\"findings\": [{\"id\": \"F1\", \"description\": \"SQL Injection vulnerability in login form.\", \"severity\": \"High\", \"recommendation\": \"Use parameterized queries.\"}]}, \"outputFormat\": \"PDF\", \"includeSummary\": true, \"includeRecommendations\": true, \"reportTitle\": \"Monthly Security Report\", \"authorName\": \"Security Team\", \"date\": \"2024-06-01\"}", + "description": "Generate a PDF security report with one high severity finding, including summary and recommendations." + }, + { + "inputJson": "{\"rawReportData\": {\"findings\": [{\"id\": \"F2\", \"description\": \"Missing HTTP security headers.\", \"severity\": \"Medium\", \"recommendation\": \"Add Content-Security-Policy header.\"}]}, \"outputFormat\": \"HTML\", \"includeSummary\": false, \"includeRecommendations\": true, \"reportTitle\": \"Web Security Findings\"}", + "description": "Produce an HTML report focusing on web security issues without an executive summary." + }, + { + "inputJson": "{\"rawReportData\": {\"findings\": [{\"id\": \"F3\", \"description\": \"Outdated software version detected.\", \"severity\": \"Low\", \"recommendation\": \"Update to the latest secure version.\"}]}, \"outputFormat\": \"Markdown\", \"reportTitle\": \"Software Audit Report\", \"authorName\": \"Audit Team\"}", + "description": "Create a Markdown formatted report highlighting outdated software with author metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "frontend-development.generateEvent", + "description": "Generates a structured analytics event object for frontend usage based on specified parameters such as event name, user details, metadata, and timing. The tool processes input to create a standardized event payload suitable for sending to analytics platforms or internal tracking systems.", + "category": "frontend-development", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The name/type of the event to generate (e.g., 'button_click', 'page_view').", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user triggering the event, if available.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "number", + "description": "Unix timestamp in milliseconds representing when the event occurred. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional dictionary of additional key-value pairs describing event context, such as page details or element attributes.", + "required": false, + "defaultValue": "" + }, + { + "name": "sessionId", + "type": "string", + "description": "Identifier for the user session during which the event occurred.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured event object containing the event name, userId, sessionId, timestamp, and metadata fields, ready to be serialized or sent to analytics backend." + }, + "aiAgent": { + "useCase": "Use this tool when instrumenting frontend applications to programmatically create consistent analytics event objects for user interactions or system events. Helps automate standardized event generation for tracking and analysis in web or mobile interfaces.", + "limitations": "Does not send or dispatch the event to any endpoint; only creates the event object. Does not validate userId/sessionId format or enrich metadata beyond what is provided.", + "examples": [ + "Generate a click event on a signup button with user and session info.", + "Create a page view event capturing URL and referrer in metadata.", + "Produce a custom event with arbitrary metadata describing user preferences." + ] + }, + "tags": [ + "frontend", + "analytics", + "event", + "generation", + "tracking", + "user-interaction" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"button_click\",\"userId\":\"user123\",\"sessionId\":\"sess456\",\"metadata\":{\"buttonId\":\"signupBtn\",\"page\":\"homepage\"}}", + "description": "Generate a button click event with user and session identifiers including metadata about button and page." + }, + { + "inputJson": "{\"eventName\":\"page_view\",\"metadata\":{\"url\":\"https://example.com\",\"referrer\":\"https://google.com\"}}", + "description": "Generate a page view event including the current URL and referrer as metadata; uses current timestamp." + }, + { + "inputJson": "{\"eventName\":\"custom_event\",\"userId\":\"user789\",\"timestamp\":1686000000000,\"metadata\":{\"feature\":\"betaFeatureFlag\",\"enabled\":true}}", + "description": "Generate a custom event with explicit timestamp and metadata indicating a feature flag status." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "web-development.analyzeCustomer", + "description": "Analyzes customer data from web platforms by processing input such as customer demographics, behavior metrics, and engagement history. It performs statistical analysis and segmentation to produce insights like customer segments, lifetime value scores, and churn risk predictions, formatted as structured JSON reports to aid web development and marketing strategies.", + "category": "web-development", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "Array of customer records with detailed attributes for analysis. Each record should include demographic and behavioral fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform, e.g., 'segmentation', 'lifetimeValue', 'churnPrediction'.", + "required": true, + "defaultValue": "segmentation" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range for filtering behavioral data, with 'startDate' and 'endDate' in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "minSegmentSize", + "type": "number", + "description": "Minimum number of customers required in each segment to be considered valid. Applies to segmentation analysis.", + "required": false, + "defaultValue": "50" + }, + { + "name": "includeBehaviorMetrics", + "type": "boolean", + "description": "Whether to include detailed behavior metrics analysis such as session frequency and conversion rates.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing analysis results such as customer segments with key characteristics, LTV scores, churn predictions, and summary statistics relevant to the selected analysis type." + }, + "aiAgent": { + "useCase": "Use this tool when you have customer data related to web user interactions and demographics and need to derive actionable insights for targeted marketing, personalized UX development, or retention strategy formulation. Ideal for informing product development teams, marketing strategists, and customer success teams.", + "limitations": "This tool does not predict real-time individual customer decisions or provide recommendations outside of statistical analysis. It requires structured historical data and cannot analyze unstructured textual feedback directly.", + "examples": [ + "Analyze customer segments from recent web user demographics and purchase behavior.", + "Predict customer churn risk based on engagement history for at-risk groups.", + "Calculate and categorize customer lifetime value for targeted email campaigns." + ] + }, + "tags": [ + "analysis", + "customer", + "web-development", + "segmentation", + "marketing", + "behavior" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"id\":\"c1\",\"age\":32,\"gender\":\"female\",\"purchaseFrequency\":5,\"lastPurchase\":\"2024-05-15\",\"totalSpent\":350,\"sessionsLastMonth\":12}],\"analysisType\":\"segmentation\",\"timeRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2024-05-31\"},\"minSegmentSize\":100,\"includeBehaviorMetrics\":true}", + "description": "Perform customer segmentation with demographic and behavioral metrics over last 17 months, ignoring segments smaller than 100 customers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "customer-support.createEmail", + "description": "Generates a professionally formatted customer support email based on input parameters including recipient details, subject, body content, and optional signature and attachments. Outputs a structured email object ready for sending through standard email clients or APIs.", + "category": "customer-support", + "parameters": [ + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the primary recipient for the support email.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email to inform the recipient of its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email, including the support message or response.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccEmails", + "type": "array", + "description": "Optional list of email addresses to be carbon copied on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccEmails", + "type": "array", + "description": "Optional list of email addresses to be blind carbon copied on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects, each with name and content (base64 or URL).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "signature", + "type": "string", + "description": "Optional email signature block to append at the end of the message.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the email (e.g., 'High', 'Normal', 'Low').", + "required": false, + "defaultValue": "Normal" + } + ], + "returns": { + "type": "object", + "description": "Formatted email object containing all fields including To, CC, BCC, Subject, Body, Attachments, Signature, and Priority ready to be sent or previewed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to compose a full customer support email with specified recipients, subject, and content, optionally with attachments and signatures, to ensure consistent professional communication.", + "limitations": "Cannot send the email directly; requires integration with an email sending service. Does not generate content automatically, input must be provided for the email body.", + "examples": [ + "Create a refund confirmation email to customer@example.com with a receipt attached.", + "Compose a follow-up email with high priority to a customer who reported an issue.", + "Generate a support answer email including a troubleshooting guide and standard signature." + ] + }, + "tags": [ + "customer support", + "email", + "communication", + "message creation", + "help desk", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientEmail\":\"customer@example.com\",\"subject\":\"Your Refund Confirmation\",\"body\":\"Dear Customer, your refund of $50 has been processed.\",\"attachments\":[{\"name\":\"receipt.pdf\",\"content\":\"base64encodedstring\"}],\"signature\":\"Best regards, Support Team\",\"priority\":\"Normal\"}", + "description": "Creating a refund confirmation email with receipt attachment and signature." + }, + { + "inputJson": "{\"recipientEmail\":\"user@domain.com\",\"subject\":\"Follow-up on Your Support Ticket\",\"body\":\"Hello, we are following up on your recent support request.\",\"ccEmails\":[\"supervisor@domain.com\"],\"priority\":\"High\"}", + "description": "Compose a high priority follow-up email with CC to supervisor." + }, + { + "inputJson": "{\"recipientEmail\":\"client@business.com\",\"subject\":\"Troubleshooting Guide\",\"body\":\"Please find attached the troubleshooting guide for your issue.\",\"attachments\":[{\"name\":\"troubleshooting.pdf\",\"content\":\"https://example.com/troubleshooting.pdf\"}],\"signature\":\"Technical Support Team\"}", + "description": "Generate a support response email with a troubleshooting guide attachment and a known signature." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "backend-development.analyzeDocument", + "description": "Analyzes backend development-related documents such as API specifications, architecture diagrams, or code documentation provided as text or structured JSON. The tool extracts key components, detects inconsistencies or missing information, and summarizes the document's structure to aid developers in understanding and improving backend systems.", + "category": "backend-development", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The full text or JSON string content of the backend document to be analyzed (e.g., API spec, architecture overview).", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "The format of the input document: 'text' for plain text or 'json' for structured JSON input.", + "required": true, + "defaultValue": "text" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail in analysis: 'summary' for brief overview, 'detailed' for in-depth extraction and issue detection.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "detectIssues", + "type": "boolean", + "description": "Whether to detect potential inconsistencies, errors, or missing elements in the document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summarized structure of the document, identified key components (e.g., endpoints, schemas, modules), detected issues if any, and recommendations for improvements." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing backend-related documents such as API specs, system architecture descriptions, or code documentation to quickly extract structure, identify flaws or omissions, and provide insights that help streamline backend development and maintenance.", + "limitations": "Cannot fully interpret non-standard or highly ambiguous document formats; may not replace detailed manual review by experts; doesn't execute code or validate runtime behavior.", + "examples": [ + "Analyze a REST API specification to summarize endpoints and validate completeness.", + "Review a JSON-based backend architecture document to detect inconsistencies.", + "Generate a summary and feedback on backend module documentation text." + ] + }, + "tags": [ + "backend", + "document-analysis", + "api-spec", + "architecture", + "code-doc", + "validation" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"{\\\"openapi\\\": \\\"3.0.0\\\", \\\"info\\\": {\\\"title\\\": \\\"User API\\\", \\\"version\\\": \\\"1.0.0\\\"}, \\\"paths\\\": {\\\"/users\\\": {\\\"get\\\": {\\\"summary\\\": \\\"List users\\\"}}}}\",\"documentFormat\":\"json\",\"analysisDepth\":\"detailed\",\"detectIssues\":true}", + "description": "Analyze a JSON OpenAPI spec document in detail, detecting issues and summarizing endpoints." + }, + { + "inputJson": "{\"documentContent\":\"This backend system manages user authentication, data processing, and API endpoints for client applications.\",\"documentFormat\":\"text\",\"analysisDepth\":\"summary\",\"detectIssues\":false}", + "description": "Provide a summary of a plain text backend architecture description without issue detection." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "backend-development.createEmail", + "description": "Creates a fully structured email object ready for sending via an email service. Accepts input details like sender, recipients, subject, body (text and optional HTML), and attachments. Processes these inputs to generate a standardized email payload including headers and encoded attachments, suitable for integration with various email sending APIs.", + "category": "backend-development", + "parameters": [ + { + "name": "from", + "type": "string", + "description": "Sender email address in standard format (e.g., user@example.com).", + "required": true, + "defaultValue": "" + }, + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses to be carbon copied (CC).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses to be blind carbon copied (BCC).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Plain text content of the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "HTML content of the email body for rich formatting.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachments, each item is an object with filename, content (Base64), and optional contentType.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An email object containing all provided fields formatted and encoded for sending with common email services." + }, + "aiAgent": { + "useCase": "Use this tool when you need to prepare an email payload from given input details for backend applications, such as generating email payloads for SMTP clients or API-based email services. It consolidates email fields, supports plain text and HTML bodies, handles multiple recipients, CC/BCC lists, and encodes attachments correctly to ensure a compliant email structure.", + "limitations": "This tool does not send the email, validate email addresses' format deeply, or handle user authentication. It only prepares the email content and structure for sending through external email services.", + "examples": [ + "Create an email to a single recipient with a subject and plain text body.", + "Create an email with both plain text and HTML body, multiple recipients in To and CC, and one PDF attachment.", + "Create an email with BCC recipients and no attachments, to be sent via an SMTP server." + ] + }, + "tags": [ + "email", + "backend", + "communication", + "message", + "notification" + ], + "examples": [ + { + "inputJson": "{\"from\":\"noreply@example.com\",\"to\":[\"user1@example.com\"],\"cc\":[],\"bcc\":[],\"subject\":\"Welcome!\",\"bodyText\":\"Hello User, welcome to our service.\",\"bodyHtml\":\"

Hello User, welcome to our service.

\",\"attachments\":[]}", + "description": "Simple email with one recipient, subject, and both plain text and HTML body, no attachments." + }, + { + "inputJson": "{\"from\":\"support@example.com\",\"to\":[\"client@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[\"auditor@example.com\"],\"subject\":\"Monthly Report\",\"bodyText\":\"Please find the monthly report attached.\",\"bodyHtml\":\"

Please find the monthly report attached.

\",\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"JVBERi0xLjQKJcTl8uXrp/Og0MTGCjQgMCBvYmoKPDwvTGluZWFyaXplZCAxL0wgMTI1NTQvTiAxL1R5cGUvQ2F0YWxvZy9QYXJlbnQgMyAwIFI+PgplbmRvYmoK\",\"contentType\":\"application/pdf\"}]}", + "description": "Email with multiple recipients in To, CC and BCC, HTML body and a PDF attachment." + }, + { + "inputJson": "{\"from\":\"alerts@example.com\",\"to\":[\"admin@example.com\"],\"cc\":[],\"bcc\":[],\"subject\":\"System Alert\",\"bodyText\":\"High CPU usage detected.\",\"bodyHtml\":\"\",\"attachments\":[]}", + "description": "Alert email with one recipient and plain text body, no HTML or attachments." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "backend-development.createCode", + "description": "Generates backend server-side code snippets based on provided specifications, including programming language, framework, and functionality requirements. Takes structured inputs describing endpoints, data models, and logic to produce ready-to-use code files or fragments for APIs and services.", + "category": "backend-development", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language in which the code should be generated (e.g., Node.js, Python, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Backend framework or runtime environment to tailor the code for (e.g., Express, Flask, Spring).", + "required": false, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "Array of endpoint objects defining route paths, HTTP methods, and associated handler logic.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataModels", + "type": "array", + "description": "Array of data model definitions with fields and types to generate corresponding classes or schemas.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDatabaseIntegration", + "type": "boolean", + "description": "Flag to specify if database interaction code (e.g., ORM or raw queries) should be included.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authentication", + "type": "string", + "description": "Type of authentication mechanism to include (e.g., JWT, OAuth, none).", + "required": false, + "defaultValue": "none" + }, + { + "name": "generateTests", + "type": "boolean", + "description": "Flag indicating whether to generate basic test cases for the created code.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated code files as key-value pairs where the key is the filename and the value is the code content string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly prototype or scaffold backend server code by specifying desired endpoints, data models, and features. It helps automate generating boilerplate or initial implementations for APIs and services across various languages and frameworks.", + "limitations": "The tool generates boilerplate and scaffold code but does not implement complex business logic or optimizations. It may not cover every edge case or advanced framework-specific features.", + "examples": [ + "Generate a simple Express.js REST API with CRUD endpoints for a User model.", + "Create a Flask backend with JWT authentication and endpoints for product management.", + "Produce Java Spring controller code with database integration and unit tests for order processing." + ] + }, + "tags": [ + "backend", + "code generation", + "API", + "server", + "scaffolding", + "automation" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"Node.js\",\"framework\":\"Express\",\"endpoints\":[{\"path\":\"/users\",\"method\":\"GET\",\"handler\":\"fetch all users\"},{\"path\":\"/users\",\"method\":\"POST\",\"handler\":\"create a new user\"}],\"dataModels\":[{\"name\":\"User\",\"fields\":{\"id\":\"string\",\"name\":\"string\",\"email\":\"string\"}}],\"includeDatabaseIntegration\":true,\"authentication\":\"JWT\",\"generateTests\":true}", + "description": "Generate an Express.js backend with JWT auth, database integration, User model, and test cases." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "backend-development.createDocument", + "description": "Creates a new document record in a backend system given the document type, content, metadata, and optional access permissions. Validates inputs and returns confirmation with the new document ID and timestamps.", + "category": "backend-development", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type/category of the document to create (e.g., 'report', 'invoice').", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Main content or body of the document in plain text or markup format.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Key-value pairs providing additional information about the document (e.g., author, title, tags).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "accessPermissions", + "type": "object", + "description": "Defines user roles or groups that can access or modify this document.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "version", + "type": "number", + "description": "Initial version number of the document, defaults to 1 if omitted.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object confirming document creation, including the unique document ID, creation and update timestamps, and the stored metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and store structured documents on a backend server, specifying content, type, metadata, and access controls. Commonly used in content management systems, document repositories, or business applications managing documents.", + "limitations": "Does not handle complex document transformations or content parsing beyond basic validation; does not manage document storage location specifics or full version history beyond initial version.", + "examples": [ + "Create a financial report document with title and author metadata and restrict access to finance team.", + "Create a simple text note document without metadata, open access.", + "Create an invoice document with detailed metadata including client and due date, setting access for billing and sales teams." + ] + }, + "tags": [ + "backend", + "document", + "creation", + "API", + "content-management", + "access-control" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"report\",\"content\":\"Annual financial report content...\",\"metadata\":{\"title\":\"Annual Report 2023\",\"author\":\"Jane Smith\"},\"accessPermissions\":{\"roles\":[\"finance_team\"]},\"version\":1}", + "description": "Create an annual financial report document with metadata and restrict access to finance team." + }, + { + "inputJson": "{\"documentType\":\"note\",\"content\":\"Remember to update project roadmap.\",\"metadata\":{},\"accessPermissions\":{},\"version\":1}", + "description": "Create a simple note document with no metadata and open access." + }, + { + "inputJson": "{\"documentType\":\"invoice\",\"content\":\"Invoice details for client X.\",\"metadata\":{\"client\":\"ClientX\",\"dueDate\":\"2024-07-01\"},\"accessPermissions\":{\"groups\":[\"billing\",\"sales\"]}}", + "description": "Create an invoice document with client and due date metadata, accessible by billing and sales groups." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "web-development.renderLink", + "description": "Renders a fully formatted HTML anchor (<a>) tag based on input parameters such as URL, display text, target attribute, CSS classes, and optional tooltip. Outputs a valid HTML string representing the link element, ready for insertion into web pages or templates.", + "category": "web-development", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The destination URL the link points to. Required for link functionality.", + "required": true, + "defaultValue": "" + }, + { + "name": "text", + "type": "string", + "description": "The visible text content of the link to be displayed to users.", + "required": true, + "defaultValue": "" + }, + { + "name": "target", + "type": "string", + "description": "Specifies where to open the linked document, e.g., _blank, _self. Defaults to _self.", + "required": false, + "defaultValue": "_self" + }, + { + "name": "classNames", + "type": "string", + "description": "Space-separated list of CSS classes to apply to the link element for styling purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "id", + "type": "string", + "description": "Optional id attribute for the anchor tag, useful for CSS or JavaScript targeting.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional tooltip text displayed when hovering over the link.", + "required": false, + "defaultValue": "" + }, + { + "name": "rel", + "type": "string", + "description": "The rel attribute specifying the relationship between linked resource and current document, like noopener or noreferrer.", + "required": false, + "defaultValue": "" + }, + { + "name": "isDisabled", + "type": "boolean", + "description": "If true, renders the link in a disabled state by removing the href and adding disabled styling.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'html' which is the fully formed HTML anchor tag string representing the link." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate customizable HTML links dynamically from structured input data, such as URL and display text, including optional attributes for styling, accessibility, or behavior. Ideal for web page rendering, email templates, or content generation that requires robust link formatting.", + "limitations": "This tool only generates static HTML anchor elements; it does not validate URLs for security, handle localization, or generate complex link components such as dropdowns or dynamic routing links.", + "examples": [ + "Generate a link to 'https://example.com' with text 'Visit Example' opening in a new tab.", + "Render a disabled link with the text 'Unavailable' and an explanatory tooltip.", + "Create a link with custom CSS classes 'btn primary' and id 'signup-link'" + ] + }, + "tags": [ + "html", + "link", + "rendering", + "web", + "anchor", + "frontend", + "ui" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"text\":\"Visit Example\",\"target\":\"_blank\",\"classNames\":\"btn primary\",\"id\":\"link1\",\"title\":\"Go to example website\",\"rel\":\"noopener noreferrer\",\"isDisabled\":false}", + "description": "Renders a link that opens https://example.com in a new tab with styling and tooltip." + }, + { + "inputJson": "{\"url\":\"https://unavailable.com\",\"text\":\"Unavailable\",\"target\":\"_self\",\"classNames\":\"disabled-link\",\"id\":\"\",\"title\":\"This link is currently disabled\",\"rel\":\"\",\"isDisabled\":true}", + "description": "Renders a disabled link showing 'Unavailable' with tooltip and disabled styling." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Link", + "context": null + } + }, + { + "name": "web-development.renderText", + "description": "Renders formatted textual content into HTML with optional styles and semantic tags. Accepts plain text or lightly marked up text, plus options for encoding, wrapping in container tags, and applying CSS classes or inline styles. Outputs HTML string ready for embedding in webpages or components.", + "category": "web-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to render into HTML. Supports plain text or simple markup like line breaks.", + "required": true, + "defaultValue": "" + }, + { + "name": "encodeHtmlEntities", + "type": "boolean", + "description": "Whether to encode HTML entities in the text to prevent HTML injection. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "containerTag", + "type": "string", + "description": "Optional HTML tag to wrap the text output in (e.g., 'p', 'div', 'span'). If empty, text is output without container.", + "required": false, + "defaultValue": "" + }, + { + "name": "cssClasses", + "type": "array", + "description": "List of CSS class names to add to the container tag if specified.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "inlineStyles", + "type": "object", + "description": "CSS style properties to add inline to the container tag if specified. Object keys as CSS properties, values as strings.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "preserveLineBreaks", + "type": "boolean", + "description": "If true, converts line breaks in text to
tags in the HTML output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML string under key 'html'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw or lightly formatted text into sanitized, styled HTML fragments suitable for embedding in web pages, emails, or components. It helps produce safe, consistent HTML output with optional styling and container tags.", + "limitations": "Cannot parse or convert complex markdown or HTML — only simple text rendering with optional line breaks and container styling. Does not handle images, links, or advanced formatting beyond line breaks and container attributes.", + "examples": [ + "Render simple plain text as a paragraph with CSS class 'intro-text'.", + "Render text preserving line breaks inside a div with red text color.", + "Render raw text safely encoded without any container tags." + ] + }, + "tags": [ + "rendering", + "html", + "text", + "web", + "styling", + "sanitization" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello, world!\",\"containerTag\":\"p\",\"cssClasses\":[\"intro-text\"],\"encodeHtmlEntities\":true}", + "description": "Render simple plain text as a paragraph with CSS class 'intro-text'." + }, + { + "inputJson": "{\"text\":\"Line1\\nLine2\\nLine3\",\"containerTag\":\"div\",\"inlineStyles\":{\"color\":\"red\"},\"preserveLineBreaks\":true}", + "description": "Render text preserving line breaks inside a div with red text color." + }, + { + "inputJson": "{\"text\":\"\",\"encodeHtmlEntities\":true}", + "description": "Render raw text safely encoded without any container tags to prevent HTML injection." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "web-development.renderQuote", + "description": "Renders a stylized HTML snippet of a quote with optional author attribution. Accepts the quote text, author name, and formatting options such as font style, text alignment, and inclusion of quotation marks. Produces a complete HTML string ready for embedding in a webpage.", + "category": "web-development", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The main quote text to render.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person who said the quote, optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeQuotationMarks", + "type": "boolean", + "description": "Whether to include quotation marks around the quote text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "fontFamily", + "type": "string", + "description": "CSS font-family to apply to the quote text.", + "required": false, + "defaultValue": "Georgia, serif" + }, + { + "name": "textAlign", + "type": "string", + "description": "Text alignment for the quote: left, center, or right.", + "required": false, + "defaultValue": "center" + }, + { + "name": "fontSize", + "type": "string", + "description": "CSS font-size value for the quote text, e.g., '16px', '1.5em'.", + "required": false, + "defaultValue": "1.2em" + }, + { + "name": "color", + "type": "string", + "description": "Text color for the quote, specified as a CSS color value.", + "required": false, + "defaultValue": "#333333" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single HTML string with the complete quote block ready to embed." + }, + "aiAgent": { + "useCase": "Use this tool when generating dynamic website content that includes quotations, such as testimonials, inspirational quotes, or citations, and you want them properly styled as HTML to embed directly in web pages.", + "limitations": "This tool does not support advanced interactive features or animations; it only generates static HTML markup with simple inline styling.", + "examples": [ + "Render a quote with author name, centered alignment, and custom font style.", + "Generate a quote block without quotation marks and right aligned text.", + "Create a simple quote design using default styles." + ] + }, + "tags": [ + "web", + "quote", + "rendering", + "frontend", + "HTML", + "styling" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"authorName\":\"Franklin D. Roosevelt\",\"includeQuotationMarks\":true,\"fontFamily\":\"'Times New Roman', serif\",\"textAlign\":\"center\",\"fontSize\":\"1.5em\",\"color\":\"#555555\"}", + "description": "Render a center-aligned Roosevelt quote with custom font and color." + }, + { + "inputJson": "{\"quoteText\":\"Do or do not, there is no try.\",\"authorName\":\"Yoda\",\"includeQuotationMarks\":false,\"textAlign\":\"right\",\"fontSize\":\"18px\"}", + "description": "Render a right-aligned Yoda quote without quotation marks using default font family and color." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Quote", + "context": null + } + }, + { + "name": "web-development.renderReference", + "description": "Renders a styled HTML reference section based on an array of reference entries, each including fields like author, title, year, etc. The tool processes structured reference data and outputs a web-ready HTML string formatted consistently according to a citation style.", + "category": "web-development", + "parameters": [ + { + "name": "references", + "type": "array", + "description": "Array of reference objects to render, each containing citation details such as author, title, year, and source.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style to apply for formatting references, e.g., APA, MLA, Chicago.", + "required": false, + "defaultValue": "APA" + }, + { + "name": "containerId", + "type": "string", + "description": "Optional HTML id attribute to assign to the container wrapping the rendered references.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeLinks", + "type": "boolean", + "description": "Whether to include clickable hyperlinks if URLs are provided for references.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customClass", + "type": "string", + "description": "Optional CSS class name to apply to the reference container for styling purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing an HTML string representing the formatted and styled reference list, ready to embed in a webpage." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a visually consistent, standards-compliant reference section for web pages or documentation from structured citation data. It automates applying citation formatting and produces HTML ready to insert into website content.", + "limitations": "Does not validate or verify reference data accuracy; limited to supported citation styles; not a full bibliographic database manager.", + "examples": [ + "Render a list of academic references in APA style for a research paper webpage.", + "Generate a clickable reference list for documentation with URLs included.", + "Output MLA formatted HTML references with custom container styling." + ] + }, + "tags": [ + "web", + "rendering", + "references", + "citation", + "html", + "formatting", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"references\":[{\"author\":\"Doe, J.\",\"title\":\"Understanding AI\",\"year\":2023,\"source\":\"AI Journal\",\"url\":\"https://aijournal.example/article\"},{\"author\":\"Smith, A.\",\"title\":\"Web Development Basics\",\"year\":2021,\"source\":\"WebConf\"}],\"citationStyle\":\"APA\",\"containerId\":\"refsSection\",\"includeLinks\":true,\"customClass\":\"ref-list\"}", + "description": "Render two references in APA style with clickable links and custom container id and class." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Reference", + "context": null + } + }, + { + "name": "web-development.renderCitation", + "description": "Renders a formatted citation string from input bibliographic data according to a specified citation style (e.g., APA, MLA, Chicago). Accepts structured citation details like authors, title, source, and date, and outputs a correctly formatted plain text citation for embedding in websites or documents.", + "category": "web-development", + "parameters": [ + { + "name": "citationData", + "type": "object", + "description": "Structured bibliographic data including authors, title, source, publication date, publisher, volume, issue, pages, and URL where applicable.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Citation style format to use for rendering. Examples include 'APA', 'MLA', 'Chicago'.", + "required": true, + "defaultValue": "APA" + }, + { + "name": "language", + "type": "string", + "description": "Language code to use for citations with language-specific variations (e.g., 'en' for English, 'fr' for French).", + "required": false, + "defaultValue": "en" + }, + { + "name": "asHTML", + "type": "boolean", + "description": "Whether to output the citation formatted as HTML (true) or plain text (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered citation string, in plain text or HTML depending on parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate properly formatted bibliographic citations from structured data for display on web pages, digital publications, or academic resources, ensuring compliance with common citation styles. It helps automate citation formatting to improve consistency and readability.", + "limitations": "Does not generate citations from unstructured text or URLs automatically; requires full structured input data. Supports only commonly used citation styles predefined; custom styles are not supported.", + "examples": [ + "Render an APA citation from a JSON object with author, title, and publication data.", + "Generate an MLA style citation as HTML for embedding in a webpage.", + "Create a Chicago style citation for a book with multiple authors and publisher information." + ] + }, + "tags": [ + "citation", + "rendering", + "web", + "bibliography", + "formatting", + "academic", + "reference" + ], + "examples": [ + { + "inputJson": "{\"citationData\":{\"authors\":[{\"firstName\":\"John\",\"lastName\":\"Doe\"}],\"title\":\"Artificial Intelligence Basics\",\"publisher\":\"Tech Press\",\"publicationYear\":2021,\"pages\":\"123-130\"},\"style\":\"APA\",\"asHTML\":false}", + "description": "Render a plain text APA citation for a book with one author." + }, + { + "inputJson": "{\"citationData\":{\"authors\":[{\"firstName\":\"Jane\",\"lastName\":\"Smith\"}],\"title\":\"Modern Web Design\",\"source\":\"Journal of Web Development\",\"publicationYear\":2022,\"volume\":\"12\",\"issue\":\"4\",\"pages\":\"45-60\",\"url\":\"https://example.com/article\"},\"style\":\"MLA\",\"asHTML\":true}", + "description": "Render an MLA citation as HTML for a journal article with URL." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Citation", + "context": null + } + }, + { + "name": "web-development.renderHeading", + "description": "Generates an HTML heading element string based on specified text content and heading level. Accepts heading text, level (H1-H6), optional CSS classes, and accessibility attributes, then returns a complete HTML string for embedding in web pages or templates.", + "category": "web-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content to display inside the heading element.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level from 1 to 6 determining the HTML tag (h1 to h6).", + "required": true, + "defaultValue": "1" + }, + { + "name": "classNames", + "type": "array", + "description": "Optional list of CSS class names to add to the heading element.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "id", + "type": "string", + "description": "Optional id attribute for the heading element to target it uniquely.", + "required": false, + "defaultValue": "" + }, + { + "name": "ariaLabel", + "type": "string", + "description": "Optional ARIA label for accessibility purposes providing descriptive label to screen readers.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property 'html' with the complete heading HTML element." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate semantic HTML heading tags with dynamic content and optional styling or accessibility attributes. It helps automate content rendering for web pages, templates, or components where headings vary by text or level.", + "limitations": "This tool does not sanitize input text for HTML injection vulnerabilities, so text inputs should be sanitized elsewhere if coming from untrusted sources. It also does not support embedding other HTML inside the heading.", + "examples": [ + "Generate an H2 heading with text 'Welcome to My Site' and CSS classes ['title', 'main']", + "Generate an H1 heading with text 'Dashboard' and an ARIA label for screen readers", + "Generate an H3 heading with text 'Section 3' and an id attribute 'sec3'" + ] + }, + "tags": [ + "html", + "heading", + "rendering", + "web", + "accessibility", + "css" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to My Site\",\"level\":2,\"classNames\":[\"title\",\"main\"],\"id\":\"\",\"ariaLabel\":\"\"}", + "description": "Generate an H2 heading with the text 'Welcome to My Site' and CSS classes 'title' and 'main'." + }, + { + "inputJson": "{\"text\":\"Dashboard\",\"level\":1,\"classNames\":[],\"id\":\"\",\"ariaLabel\":\"Main dashboard header\"}", + "description": "Generate an H1 heading with text 'Dashboard' and an ARIA label for screen reader accessibility." + }, + { + "inputJson": "{\"text\":\"Section 3\",\"level\":3,\"classNames\":[],\"id\":\"sec3\",\"ariaLabel\":\"\"}", + "description": "Generate an H3 heading with text 'Section 3' and an id attribute 'sec3'." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Heading", + "context": null + } + }, + { + "name": "web-development.renderWord", + "description": "Renders a single word as styled HTML content suitable for embedding in web pages. Accepts the word text, optional styling options such as font size, color, font family, and additional CSS classes. Outputs a safe HTML string that wraps the word in a styled span element, ready for insertion into a webpage.", + "category": "web-development", + "parameters": [ + { + "name": "wordText", + "type": "string", + "description": "The single word text to render.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "string", + "description": "CSS font-size value to apply to the word (e.g., '16px', '1.5em').", + "required": false, + "defaultValue": "16px" + }, + { + "name": "color", + "type": "string", + "description": "CSS color value to apply to the word text (e.g., '#333333', 'red').", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "fontFamily", + "type": "string", + "description": "CSS font-family to apply (e.g., 'Arial', 'Times New Roman').", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "isBold", + "type": "boolean", + "description": "Whether the word text should be bolded.", + "required": false, + "defaultValue": "false" + }, + { + "name": "isItalic", + "type": "boolean", + "description": "Whether the word text should be italicized.", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalClasses", + "type": "string", + "description": "Additional CSS classes to add to the span element, separated by spaces.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the rendered HTML string with the styled word wrapped in a span element." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate HTML markup for a single word with specific styles or classes in a web development context. Useful for dynamic text styling, UI components, or custom rendering pipelines where isolated word elements with customized appearance are required.", + "limitations": "This tool only renders a single word; it does not handle multiple words, paragraphs, or complex HTML. It does not sanitize or handle embedded HTML in the input wordText and assumes plain text input.", + "examples": [ + "Render the word 'Hello' in bold red Arial, 20px font.", + "Generate a styled span for the word 'Welcome' italicized with a custom CSS class 'highlight'.", + "Produce HTML to display the word 'Test' in 18px size and blue color without additional formatting." + ] + }, + "tags": [ + "web", + "rendering", + "html", + "styling", + "text", + "word", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"wordText\":\"Hello\",\"fontSize\":\"20px\",\"color\":\"red\",\"fontFamily\":\"Arial\",\"isBold\":true,\"isItalic\":false,\"additionalClasses\":\"\"}", + "description": "Render 'Hello' in bold red Arial font sized 20px." + }, + { + "inputJson": "{\"wordText\":\"Welcome\",\"fontSize\":\"16px\",\"color\":\"#333333\",\"fontFamily\":\"Times New Roman\",\"isBold\":false,\"isItalic\":true,\"additionalClasses\":\"highlight\"}", + "description": "Render 'Welcome' italicized with a gray color and a CSS class 'highlight'." + }, + { + "inputJson": "{\"wordText\":\"Test\",\"fontSize\":\"18px\",\"color\":\"blue\",\"fontFamily\":\"Verdana\",\"isBold\":false,\"isItalic\":false,\"additionalClasses\":\"\"}", + "description": "Render 'Test' in 18px blue Verdana font with no bold or italic." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "web-development.renderChart", + "description": "This tool accepts structured data and rendering options to produce a chart visualization as an HTML string containing SVG or Canvas elements. It supports various chart types like bar, line, and pie charts by processing the input data and rendering parameters, outputting an embeddable chart representation suitable for web pages.", + "category": "web-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data objects representing the values to be visualized, each item should include necessary fields such as labels and numerical values.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "The type of chart to render, e.g., 'bar', 'line', 'pie'.", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the chart in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the chart in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to display above the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "colors", + "type": "array", + "description": "An array of color strings to style the chart elements.", + "required": false, + "defaultValue": "" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Whether to display a legend for the chart.", + "required": false, + "defaultValue": "true" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the x-axis.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the y-axis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'html' which is a string of HTML markup rendering the chart as SVG or canvas elements, ready for embedding in a webpage." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate dynamic, embeddable chart visualizations for websites based on structured input data and customizable display options. Ideal for dashboard creation, reporting, or data presentation in web applications.", + "limitations": "This tool does not perform data analysis or complex statistical computations; it assumes the input data is prepared and formatted correctly. It also does not generate interactive charts beyond basic SVG or Canvas rendering.", + "examples": [ + "Render a bar chart from sales data with custom colors and title.", + "Create a pie chart showing market share with legend displayed.", + "Generate a line chart of temperature readings with labeled axes and no legend." + ] + }, + "tags": [ + "chart", + "rendering", + "visualization", + "web", + "svg", + "canvas", + "data", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"label\":\"Q1\",\"value\":150},{\"label\":\"Q2\",\"value\":200},{\"label\":\"Q3\",\"value\":170},{\"label\":\"Q4\",\"value\":220}],\"chartType\":\"bar\",\"width\":800,\"height\":400,\"title\":\"Quarterly Sales\",\"colors\":[\"#4e79a7\",\"#f28e2b\",\"#e15759\",\"#76b7b2\"],\"showLegend\":true}", + "description": "Render a bar chart to display quarterly sales data with custom colors and a title." + }, + { + "inputJson": "{\"data\":[{\"label\":\"Chrome\",\"value\":60},{\"label\":\"Firefox\",\"value\":25},{\"label\":\"Safari\",\"value\":10},{\"label\":\"Other\",\"value\":5}],\"chartType\":\"pie\",\"title\":\"Browser Market Share\",\"showLegend\":true}", + "description": "Create a pie chart showing browser market share with legend." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Chart", + "context": null + } + }, + { + "name": "web-development.renderDashboard", + "description": "Renders a customizable web analytics dashboard based on provided data metrics, widget configurations, and styling options. Accepts raw analytics data and configuration parameters, processes visualization layouts, and outputs fully rendered HTML and JavaScript code for embedding in web applications.", + "category": "web-development", + "parameters": [ + { + "name": "metricsData", + "type": "object", + "description": "Structured analytics data including key performance indicators and time-series values to visualize in the dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "widgetConfig", + "type": "array", + "description": "An array specifying each widget's type (e.g., chart, table), data binding, and display options within the dashboard layout.", + "required": true, + "defaultValue": "" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title text displayed at the top of the dashboard interface.", + "required": false, + "defaultValue": "\"Analytics Dashboard\"" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme of the dashboard, influencing colors, fonts, and styles (e.g., 'light', 'dark').", + "required": false, + "defaultValue": "\"light\"" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Time interval in seconds for automatic data refresh and dashboard re-rendering. Zero disables auto refresh.", + "required": false, + "defaultValue": "0" + }, + { + "name": "showFilters", + "type": "boolean", + "description": "Flag to include interactive filters for data subsets (date ranges, categories) in the rendered dashboard.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the assembled HTML string, accompanying JavaScript code for interactivity, and CSS styles as a string, ready to embed or save as a standalone dashboard page." + }, + "aiAgent": { + "useCase": "Use when dynamically generating a data analytics dashboard for web applications based on custom input metrics and widget configurations. Ideal for creating visual reports and interactive analytics views tailored to user data sets.", + "limitations": "Cannot perform data analysis or cleansing. It assumes the input data metrics are preprocessed and accurate. It does not handle backend data fetching or storage. Complex custom widget development beyond built-in types is not supported.", + "examples": [ + "Render a sales analytics dashboard with sales, revenue, and customer acquisition charts.", + "Create a dashboard with real-time traffic metrics and include filter controls for date range selection.", + "Generate a dark-theme dashboard displaying user engagement statistics with auto-refresh every 5 minutes." + ] + }, + "tags": [ + "web-development", + "dashboard", + "analytics", + "rendering", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":{\"sales\":[100,150,200],\"dates\":[\"2024-01-01\",\"2024-01-02\",\"2024-01-03\"]},\"widgetConfig\":[{\"type\":\"lineChart\",\"dataKey\":\"sales\",\"title\":\"Daily Sales\"}],\"dashboardTitle\":\"Sales Overview\"}", + "description": "Basic sales line chart dashboard with custom title." + }, + { + "inputJson": "{\"metricsData\":{\"activeUsers\":[1200,1350,1280],\"dates\":[\"2024-06-01\",\"2024-06-02\",\"2024-06-03\"]},\"widgetConfig\":[{\"type\":\"barChart\",\"dataKey\":\"activeUsers\",\"title\":\"Active Users\"},{\"type\":\"table\",\"dataKey\":\"activeUsers\",\"title\":\"User Data Table\"}],\"theme\":\"dark\",\"refreshInterval\":300}", + "description": "Dark theme dashboard with bar chart and data table, auto-refresh every 5 minutes." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Dashboard", + "context": null + } + }, + { + "name": "web-development.renderParagraph", + "description": "Renders a styled HTML paragraph element based on provided text content and optional styling parameters. Accepts plain text and style options such as font size, color, alignment, and bold/italic emphasis, then outputs a string containing valid HTML markup for webpage integration.", + "category": "web-development", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The plain text content to be included inside the paragraph element.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "string", + "description": "CSS font-size value for the paragraph text, e.g., '16px', '1em'.", + "required": false, + "defaultValue": "16px" + }, + { + "name": "color", + "type": "string", + "description": "CSS color value for the text, e.g., '#333333' or 'black'.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "textAlign", + "type": "string", + "description": "Text alignment within the paragraph, one of 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "isBold", + "type": "boolean", + "description": "Whether the paragraph text should be rendered in bold.", + "required": false, + "defaultValue": "false" + }, + { + "name": "isItalic", + "type": "boolean", + "description": "Whether the paragraph text should be italicized.", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalClasses", + "type": "string", + "description": "Space-separated string of additional CSS classes to apply to the paragraph tag.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'html' which holds the fully rendered HTML paragraph string with inline styles and classes applied." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate HTML paragraphs with custom styling from plain text inputs, suitable for embedding into web pages or templates without manually writing HTML code. Particularly useful when paragraph styling varies based on user input or application state.", + "limitations": "This tool does not sanitize input text against HTML/script injection; input should be sanitized separately to prevent security vulnerabilities. It also does not generate complex nested HTML or handle multimedia content within paragraphs.", + "examples": [ + "Render a bold, centered paragraph with red text color.", + "Create a simple left-aligned paragraph with default styling.", + "Generate an italicized paragraph with custom CSS classes for additional styling." + ] + }, + "tags": [ + "web", + "html", + "rendering", + "paragraph", + "styling", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Welcome to our website!\",\"fontSize\":\"18px\",\"color\":\"#ff0000\",\"textAlign\":\"center\",\"isBold\":true,\"isItalic\":false,\"additionalClasses\":\"highlighted\"}", + "description": "Render a bold, centered paragraph with red text color and an additional CSS class 'highlighted'." + }, + { + "inputJson": "{\"textContent\":\"This is a normal paragraph.\",\"fontSize\":\"16px\",\"color\":\"#000000\",\"textAlign\":\"left\",\"isBold\":false,\"isItalic\":false,\"additionalClasses\":\"\"}", + "description": "Create a simple left-aligned paragraph with default styling." + }, + { + "inputJson": "{\"textContent\":\"Note the italic style.\",\"fontSize\":\"14px\",\"color\":\"#333333\",\"textAlign\":\"justify\",\"isBold\":false,\"isItalic\":true,\"additionalClasses\":\"note-text\"}", + "description": "Generate an italicized paragraph with justified alignment and a custom class 'note-text'." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-development.renderGraph", + "description": "Renders an interactive graph visualization from structured data inputs such as nodes and edges. Accepts JSON data representing graph structure and optional configuration parameters for styling and layout. Outputs HTML and JavaScript code snippets that can be directly embedded into webpages to display the graph with zoom, pan, and tooltip features.", + "category": "web-development", + "parameters": [ + { + "name": "graphData", + "type": "object", + "description": "An object containing arrays of nodes and edges defining the graph structure. Nodes must have unique ids; edges specify source and target node ids.", + "required": true, + "defaultValue": "" + }, + { + "name": "layout", + "type": "string", + "description": "Layout algorithm to position graph nodes. Supported options: 'force-directed', 'circular', 'grid'.", + "required": false, + "defaultValue": "force-directed" + }, + { + "name": "width", + "type": "number", + "description": "Width in pixels of the rendered graph container.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height in pixels of the rendered graph container.", + "required": false, + "defaultValue": "600" + }, + { + "name": "nodeColor", + "type": "string", + "description": "Default color for graph nodes, specified as a CSS color string.", + "required": false, + "defaultValue": "#1f77b4" + }, + { + "name": "edgeColor", + "type": "string", + "description": "Default color for graph edges, specified as a CSS color string.", + "required": false, + "defaultValue": "#999" + }, + { + "name": "showTooltip", + "type": "boolean", + "description": "Determines whether node tooltips appear on hover, showing node details.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing HTML and JavaScript strings for embedding the interactive graph visualization into a webpage." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate interactive graph visualizations for websites or web applications from JSON-structured graph data, enabling users to explore relationships via dynamic layouts, zooming, and tooltips. It's ideal for visualizing networks such as social connections, dependency graphs, organizational charts, or data flow diagrams.", + "limitations": "This tool does not perform graph data validation beyond structure and uniqueness of node IDs. It does not support real-time graph updates after rendering or export of static image files. It currently supports only basic layouts and styling customizations.", + "examples": [ + "Render a force-directed graph from a JSON dataset representing social network nodes and their friendships.", + "Create a circular layout graph of organizational hierarchy with custom colors for nodes and edges.", + "Generate a grid layout graph for dependency management visualizations with tooltip disabled." + ] + }, + "tags": [ + "web", + "graph", + "visualization", + "interactive", + "javascript", + "html", + "layout", + "data-visualization" + ], + "examples": [ + { + "inputJson": "{\"graphData\":{\"nodes\":[{\"id\":\"1\",\"label\":\"Node 1\"},{\"id\":\"2\",\"label\":\"Node 2\"}],\"edges\":[{\"source\":\"1\",\"target\":\"2\"}]},\"layout\":\"force-directed\",\"width\":600,\"height\":400,\"nodeColor\":\"#ff5733\",\"edgeColor\":\"#333\",\"showTooltip\":true}", + "description": "Force-directed graph with two nodes connected by one edge, custom node and edge colors, showing tooltips." + }, + { + "inputJson": "{\"graphData\":{\"nodes\":[{\"id\":\"a\",\"label\":\"A\"},{\"id\":\"b\",\"label\":\"B\"},{\"id\":\"c\",\"label\":\"C\"}],\"edges\":[{\"source\":\"a\",\"target\":\"b\"},{\"source\":\"a\",\"target\":\"c\"}]},\"layout\":\"circular\",\"width\":500,\"height\":500,\"nodeColor\":\"#2ca02c\",\"edgeColor\":\"#555\",\"showTooltip\":false}", + "description": "Circular layout graph with three nodes and two edges, green nodes and gray edges, tooltips disabled." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Graph", + "context": null + } + }, + { + "name": "web-development.renderDiagram", + "description": "Renders a diagram image from a structured JSON or text-based diagram definition such as flowcharts, sequence diagrams, or org charts. Accepts diagram definitions in formats like Mermaid or a custom nodes-and-links JSON, processes layout and styling options, and outputs a scalable SVG or PNG image suitable for embedding in web pages or documents.", + "category": "web-development", + "parameters": [ + { + "name": "diagramDefinition", + "type": "string", + "description": "Text string containing the diagram description in supported formats (e.g., Mermaid syntax or JSON defining nodes and edges).", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output image format, e.g., 'svg' for vector or 'png' for raster output.", + "required": true, + "defaultValue": "svg" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output image in pixels (applicable for PNG or SVG viewBox scaling).", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme for the diagram, controlling colors and styles (e.g., 'default', 'dark', or custom themes).", + "required": false, + "defaultValue": "default" + }, + { + "name": "showLabels", + "type": "boolean", + "description": "Flag indicating whether node and edge labels should be rendered.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the rendered diagram image data as a base64 encoded string and metadata such as format, width, and height." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate visual diagram images (flowcharts, sequence diagrams, org charts) dynamically from textual or JSON definitions for embedding into web applications, documentation, or reports. It supports customizable styling and output formats to facilitate automated diagram rendering workflows.", + "limitations": "This tool cannot generate diagrams from unstructured natural language descriptions. It requires diagram definitions in supported syntaxes like Mermaid or standardized JSON. It does not handle complex interactive or animated diagrams.", + "examples": [ + "Render a flowchart defined in Mermaid syntax as an SVG image for embedding in a developer documentation site.", + "Generate a PNG image of an organizational chart from a JSON node-edge structure with a dark theme for presentation slides.", + "Create a sequence diagram with labels turned off for a minimalist web page illustration." + ] + }, + "tags": [ + "web-development", + "diagram-rendering", + "svg", + "png", + "visualization", + "flowchart", + "sequence-diagram", + "org-chart" + ], + "examples": [ + { + "inputJson": "{\"diagramDefinition\":\"graph TD; A-->B; B-->C; C-->A;\",\"format\":\"svg\",\"width\":600,\"height\":400,\"theme\":\"default\",\"showLabels\":true}", + "description": "Render a simple directed graph flowchart as SVG with default styling." + }, + { + "inputJson": "{\"diagramDefinition\":\"sequenceDiagram\\nAlice->>Bob: Hello Bob, how are you?\\nBob-->>Alice: I am good thanks!\",\"format\":\"png\",\"width\":800,\"height\":600,\"theme\":\"dark\",\"showLabels\":true}", + "description": "Render a sequence diagram as a PNG image with a dark theme and labels shown." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Diagram", + "context": null + } + }, + { + "name": "web-development.renderAttachment", + "description": "Renders downloadable or embeddable media attachments within web pages. Accepts the attachment's URL or base64 data, type (e.g., image, video, audio, document), and options for display size, controls, and captions. Produces the appropriate HTML snippet to embed or link the attachment for seamless user interaction.", + "category": "web-development", + "parameters": [ + { + "name": "attachmentUrl", + "type": "string", + "description": "URL of the media attachment to render, or empty if using base64Data", + "required": false, + "defaultValue": "" + }, + { + "name": "base64Data", + "type": "string", + "description": "Base64-encoded data of the media attachment if a URL is not provided", + "required": false, + "defaultValue": "" + }, + { + "name": "attachmentType", + "type": "string", + "description": "Type of media: image, video, audio, or document; influences embedding method", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width in pixels for rendering the media if applicable", + "required": false, + "defaultValue": "300" + }, + { + "name": "height", + "type": "number", + "description": "Height in pixels for rendering the media if applicable", + "required": false, + "defaultValue": "200" + }, + { + "name": "showControls", + "type": "boolean", + "description": "Whether to show playback controls for audio/video types", + "required": false, + "defaultValue": "true" + }, + { + "name": "caption", + "type": "string", + "description": "Optional caption text to display below the media", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string snippet to embed or link the attachment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate HTML code snippets to embed or link media attachments (images, audio, video, documents) in a web page, supporting either a URL or base64 data input and customizable display options. This helps automate content rendering workflows in web development.", + "limitations": "Does not upload or host media files; assumes the attachment URLs or base64 data are valid and accessible. Does not support complex document viewers beyond simple embedding or linking. Styling is limited to basic size and captioning; further customization requires manual CSS editing.", + "examples": [ + "Render an image attachment from URL with specific width and caption.", + "Embed an audio attachment using base64 data and show playback controls.", + "Generate HTML to link a PDF document for download with optional caption." + ] + }, + "tags": [ + "web-development", + "rendering", + "media", + "attachments", + "html", + "embedding" + ], + "examples": [ + { + "inputJson": "{\"attachmentUrl\":\"https://example.com/image.jpg\",\"attachmentType\":\"image\",\"width\":400,\"height\":300,\"caption\":\"Example Image\"}", + "description": "Render an image from a URL with specified width, height, and caption." + }, + { + "inputJson": "{\"base64Data\":\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU2LjMyLjEwNAAAAAAAAAAAAAAA//tgxAA\",\"attachmentType\":\"audio\",\"showControls\":true}", + "description": "Embed an audio clip from base64 data with playback controls visible." + }, + { + "inputJson": "{\"attachmentUrl\":\"https://example.com/doc.pdf\",\"attachmentType\":\"document\",\"caption\":\"Download PDF Document\"}", + "description": "Generate HTML to link a PDF document with a caption." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Attachment", + "context": null + } + }, + { + "name": "web-development.renderSentence", + "description": "Renders a given sentence string into a secure and well-formatted HTML snippet. It accepts plain text input, optionally applies specified text styling (such as bold, italic, underline, and color), ensures proper HTML escaping to prevent injection, and outputs a sanitized HTML string representing the styled sentence ready for embedding in web pages.", + "category": "web-development", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The plain text sentence to be rendered as HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render the sentence text in bold style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render the sentence text in italic style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "underline", + "type": "boolean", + "description": "Whether to render the sentence text with underline style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "textColor", + "type": "string", + "description": "CSS color value to apply to the text, e.g., 'red' or '#FF0000'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the sanitized HTML string for the input sentence with the specified styling applied." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert plain sentence text into a safe, styled HTML snippet suitable for rendering inside web pages or applications. It ensures the text is escaped to prevent HTML injection and applies simple inline styling based on user preferences, helping generate dynamic content securely.", + "limitations": "This tool only supports basic inline text styles (bold, italic, underline, and text color). It does not support complex formatting, rich text elements, or markdown parsing. It focuses on single sentences, not paragraphs or multi-block content.", + "examples": [ + "Render the sentence 'Hello, world!' in bold and red color.", + "Generate HTML for sentence 'Welcome to our site' italicized with underline.", + "Output a plain sentence without additional styling." + ] + }, + "tags": [ + "rendering", + "web", + "html", + "text-styling", + "sanitization", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"Hello, world!\",\"bold\":true,\"italic\":false,\"underline\":false,\"textColor\":\"#FF0000\"}", + "description": "Render 'Hello, world!' with bold style and red color." + }, + { + "inputJson": "{\"sentence\":\"Welcome to our site\",\"bold\":false,\"italic\":true,\"underline\":true,\"textColor\":\"blue\"}", + "description": "Render sentence italicized and underlined with blue text color." + }, + { + "inputJson": "{\"sentence\":\"Plain text only\",\"bold\":false,\"italic\":false,\"underline\":false,\"textColor\":\"\"}", + "description": "Render sentence as plain text with no styling." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "web-development.renderScreenshot", + "description": "Renders a screenshot of a specified webpage URL, optionally emulating different device viewports and customizing output format. Takes a URL and rendering options, processes the webpage rendering headlessly, and produces an image file in the requested format.", + "category": "web-development", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the webpage to capture in the screenshot.", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Viewport width in pixels for rendering (default is 1280).", + "required": false, + "defaultValue": "1280" + }, + { + "name": "height", + "type": "number", + "description": "Viewport height in pixels for rendering (default is 720).", + "required": false, + "defaultValue": "720" + }, + { + "name": "deviceScaleFactor", + "type": "number", + "description": "Device scale factor for high-DPI rendering (default 1).", + "required": false, + "defaultValue": "1" + }, + { + "name": "fullPage", + "type": "boolean", + "description": "Whether to capture the full scrollable page (true) or just the viewport (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "format", + "type": "string", + "description": "Image format for the screenshot output, e.g., 'png' or 'jpeg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "quality", + "type": "number", + "description": "Quality of the image from 0 to 100; applies only to 'jpeg' format.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the screenshot image as a base64 encoded string and metadata such as the format, width, and height." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically obtain visual snapshots of webpages for monitoring, preview, testing, or archival purposes. It supports customizing the viewport size, capturing full pages, and different output image formats to suit various use cases such as responsive design checks or thumbnail generation.", + "limitations": "Cannot execute dynamic interactions like clicking or typing before screenshot. Pages requiring authentication or with strong anti-bot measures may not render correctly. Does not capture video or animated content, only static images.", + "examples": [ + "Capture a standard desktop viewport screenshot of 'https://example.com' as a PNG.", + "Generate a full-page JPEG screenshot of 'https://example.com' with viewport 375x667 to simulate a mobile device.", + "Render a screenshot of 'https://example.com' with device scale factor 2 for high-resolution output." + ] + }, + "tags": [ + "screenshot", + "webpage", + "render", + "image", + "headless-browser", + "thumbnail" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"width\":1280,\"height\":720,\"fullPage\":false,\"format\":\"png\"}", + "description": "Capture a 1280x720 viewport screenshot in PNG format of example.com." + }, + { + "inputJson": "{\"url\":\"https://example.com\",\"width\":375,\"height\":667,\"fullPage\":true,\"format\":\"jpeg\",\"quality\":90}", + "description": "Capture a full-page mobile sized screenshot as a high-quality JPEG." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Screenshot", + "context": null + } + }, + { + "name": "web-development.formatQuote", + "description": "Formats a given textual quote by applying customizable styling and markup options suitable for web display. Accepts raw quote text and optional metadata, processes formatting preferences such as citation, emphasis style, and HTML wrappers, and outputs the formatted HTML string for embedding on web pages.", + "category": "web-development", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The raw textual content of the quote to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person who originally said or wrote the quote, used for citation if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "The source (e.g., book, speech, article) from which the quote is taken, appended as citation information.", + "required": false, + "defaultValue": "" + }, + { + "name": "emphasisStyle", + "type": "string", + "description": "Specifies the text style applied to the quote (e.g., italic, bold, underline).", + "required": false, + "defaultValue": "italic" + }, + { + "name": "includeBlockquote", + "type": "boolean", + "description": "Whether to wrap the quote in an HTML
element for semantic markup.", + "required": false, + "defaultValue": "true" + }, + { + "name": "classNames", + "type": "array", + "description": "Array of CSS class names to add to the quote container element for styling purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "addQuotationMarks", + "type": "boolean", + "description": "Whether to automatically add typographic quotation marks around the quote text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted quote as an HTML string ready for web embedding, including citation if provided." + }, + "aiAgent": { + "useCase": "Use this tool when you need to display a stylized block of quoted text on a website or web application, ensuring consistent HTML structure, optional citation, and customizable emphasis styling. Helpful for content management, blog posts, articles, or anywhere quotes are highlighted.", + "limitations": "This tool does not translate, paraphrase, or validate the authenticity of quotes. It also does not generate natural language content or advanced typographic styling beyond basic HTML and CSS class assignment.", + "examples": [ + "Format the quote 'To be or not to be' by Shakespeare in italic within a blockquote with citation.", + "Create a bold quote display without blockquote tags.", + "Add custom CSS classes to a quote from Albert Einstein including the source book title." + ] + }, + "tags": [ + "web", + "formatting", + "quote", + "HTML", + "CSS", + "content", + "citation" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"authorName\":\"Franklin D. Roosevelt\",\"source\":\"Speech\",\"emphasisStyle\":\"italic\",\"includeBlockquote\":true,\"classNames\":[\"inspirational\",\"highlight\"],\"addQuotationMarks\":true}", + "description": "Format a motivational quote with author and source, italic style, wrapped in blockquote with custom CSS classes." + }, + { + "inputJson": "{\"quoteText\":\"Simplicity is the ultimate sophistication.\",\"authorName\":\"Leonardo da Vinci\",\"emphasisStyle\":\"bold\",\"includeBlockquote\":false,\"classNames\":[],\"addQuotationMarks\":false}", + "description": "Format a simple quote with bold style without blockquote and without quotation marks." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Quote", + "context": null + } + }, + { + "name": "web-development.renderFile", + "description": "This tool accepts a file input (such as images, PDFs, or text files), processes it to render an embeddable HTML representation or preview, and outputs the rendered HTML snippet. It supports optional parameters for width, height, and rendering mode to tailor the output for website embedding or display.", + "category": "web-development", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded string of the file content to render, required for processing the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file (e.g., image/png, application/pdf) to determine rendering method.", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "string", + "description": "Desired width of the rendered output (CSS units, e.g., '100%', '400px').", + "required": false, + "defaultValue": "100%" + }, + { + "name": "height", + "type": "string", + "description": "Desired height of the rendered output (CSS units, e.g., 'auto', '300px').", + "required": false, + "defaultValue": "auto" + }, + { + "name": "renderMode", + "type": "string", + "description": "Rendering style or method, such as 'inline', 'iframe', or 'embed'.", + "required": false, + "defaultValue": "inline" + } + ], + "returns": { + "type": "object", + "description": "An object containing an HTML string that embeds or previews the file ready to be inserted into a web page." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate embeddable HTML code for displaying various types of media files (images, PDFs, text) on web pages dynamically from raw file data. It is useful in content management systems or dynamic webpage generation where files are stored or transferred as base64 strings and need rendering.", + "limitations": "Cannot render executable or complex interactive file formats (e.g., video players, complex 3D models). It does not perform file content validation beyond MIME type and encoding detection. It cannot convert file formats, only generate previews as-is.", + "examples": [ + "Render an image file as an inline HTML img tag with 300px width.", + "Render a PDF file within an iframe with a height of 500px on a website.", + "Render a plain text file content inside a styled HTML pre tag as inline content." + ] + }, + "tags": [ + "rendering", + "web", + "file-display", + "HTML", + "media-previews", + "embedding" + ], + "examples": [ + { + "inputJson": "{\"fileContent\":\"iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4\\n//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==\",\"fileType\":\"image/png\",\"width\":\"300px\",\"height\":\"auto\",\"renderMode\":\"inline\"}", + "description": "Render a PNG image as an inline HTML img element with width 300px." + }, + { + "inputJson": "{\"fileContent\":\"JVBERi0xLjcKCjEgMCBvYmoKPDwvVHlwZS9QYWdlL1BhcmVudCAzIDAgUi9SZXNvdXJjZXMgMiAwIFIvTWVkaWFCb3hbMCAwIDYxMiA3OTJdL0NvbnRlbnRzIDQgMCBSPj4KZW5kb2JqCjIgMCBvYmoKPDwvUHJvY1NldFsvUERGL0ltYWdlXTw8L0xlbmd0aCAxMi9GaWx0ZXIgWy9GbGF0ZURlY29kZV0+Pi9GaWx0ZXIAPj4KZW5kb2JqCjMgMCBvYmoKPDwvVHlwZS9QYWdlcy9Db3VudCAxL0tpZHNbMSAwIFJdPj5lbmRvYmoK", + "description": "Render a simple PDF file inside an iframe with height 500px for website embedding." + }, + { + "inputJson": "{\"fileContent\":\"SGVsbG8sIHRoaXMgaXMgYSBzYW1wbGUgdGV4dCBmaWxlLg==\",\"fileType\":\"text/plain\",\"width\":\"100%\",\"height\":\"auto\",\"renderMode\":\"inline\"}", + "description": "Render a plain text file as inline styled HTML content in a pre tag." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "web-development.renderAudio", + "description": "This tool accepts audio source input parameters, such as URLs or base64 strings, and renders an HTML5 audio player element customizable with controls, autoplay, loop, and styling options. It outputs a string containing valid HTML markup to embed the audio in web pages.", + "category": "web-development", + "parameters": [ + { + "name": "audioSource", + "type": "string", + "description": "URL or base64-encoded string representing the audio file source to be rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "controls", + "type": "boolean", + "description": "Whether to display native audio controls (play, pause, volume, etc.).", + "required": false, + "defaultValue": "true" + }, + { + "name": "autoplay", + "type": "boolean", + "description": "Whether the audio should start playing automatically when loaded.", + "required": false, + "defaultValue": "false" + }, + { + "name": "loop", + "type": "boolean", + "description": "Whether the audio should loop continuously after ending.", + "required": false, + "defaultValue": "false" + }, + { + "name": "muted", + "type": "boolean", + "description": "Whether to mute the audio initially when it starts playing.", + "required": false, + "defaultValue": "false" + }, + { + "name": "preload", + "type": "string", + "description": "Preload attribute specifying if and how the audio should be loaded initially ('auto', 'metadata', or 'none').", + "required": false, + "defaultValue": "auto" + }, + { + "name": "cssClass", + "type": "string", + "description": "Optional CSS class or classes to apply to the audio element for styling.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single property 'html' containing the HTML audio tag string ready for embedding." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a fully functional and customizable HTML audio player element from a given audio source URL or base64 data for inclusion in web pages or apps. Ideal for dynamic web content generation or when automated embedding of audio is needed with control over playback behavior and styling.", + "limitations": "This tool does not process audio content beyond rendering the HTML element. It cannot convert or transcode audio files or analyze audio metadata beyond what is provided in the source string.", + "examples": [ + "Create an audio player for a podcast episode URL with controls and looping enabled.", + "Render an autoplaying background music audio element with muted start and no controls.", + "Generate a styled audio player from a base64 encoded audio source to embed in a webpage." + ] + }, + "tags": [ + "web-development", + "audio", + "media", + "rendering", + "html5", + "player", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"audioSource\":\"https://example.com/audio/song.mp3\",\"controls\":true,\"autoplay\":false,\"loop\":false,\"muted\":false,\"preload\":\"auto\",\"cssClass\":\"custom-audio-player\"}", + "description": "Render a standard audio player with controls and a custom CSS class for styling from a URL source." + }, + { + "inputJson": "{\"audioSource\":\"data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEAIlYAAESsAAACABAAZGF0YUAAAAA=\",\"controls\":false,\"autoplay\":true,\"loop\":true,\"muted\":true,\"preload\":\"auto\",\"cssClass\":\"background-music\"}", + "description": "Render a muted, autoplaying, looping audio player without visible controls, using a base64 encoded audio source." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Audio", + "context": null + } + }, + { + "name": "web-development.renderVideo", + "description": "This tool accepts video source URLs or file paths along with optional rendering parameters such as width, height, autoplay, and controls to generate an embeddable HTML5 video player snippet. It processes inputs to produce responsive and customizable video embed code for integration into websites.", + "category": "web-development", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "URL or file path of the video to render", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the video player in pixels", + "required": false, + "defaultValue": "640" + }, + { + "name": "height", + "type": "number", + "description": "Height of the video player in pixels", + "required": false, + "defaultValue": "360" + }, + { + "name": "autoplay", + "type": "boolean", + "description": "Whether the video should start playing automatically", + "required": false, + "defaultValue": "false" + }, + { + "name": "controls", + "type": "boolean", + "description": "Whether to show native video controls", + "required": false, + "defaultValue": "true" + }, + { + "name": "loop", + "type": "boolean", + "description": "Whether the video should loop when ended", + "required": false, + "defaultValue": "false" + }, + { + "name": "muted", + "type": "boolean", + "description": "Whether the video should start muted", + "required": false, + "defaultValue": "false" + }, + { + "name": "poster", + "type": "string", + "description": "URL of an image to show before the video plays", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing an 'html' string field with the embeddable HTML5 video element as per given parameters" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate HTML5 video player code for dynamic embedding of video content into web pages, adapting player size, autoplay, controls, and other attributes as per context. This is useful for website generation, content management systems, or dynamic page customization.", + "limitations": "This tool generates static HTML snippets only; it does not upload, transcode, or host videos. It also does not handle DRM, streaming protocols, or advanced video player features beyond basic HTML5 attributes.", + "examples": [ + "Generate HTML5 video embed code for a video located at https://example.com/video.mp4 with width 800px and autoplay enabled.", + "Create a video player snippet for local video file '/videos/demo.mp4' with controls hidden and looping enabled.", + "Render a video player with a poster image https://example.com/poster.jpg and muted playback by default." + ] + }, + "tags": [ + "web", + "video", + "HTML5", + "media", + "embed", + "frontend", + "rendering" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/video.mp4\",\"width\":800,\"height\":450,\"autoplay\":true,\"controls\":true,\"loop\":false,\"muted\":false,\"poster\":\"\"}", + "description": "Embed a video with size 800x450, autoplay enabled, controls visible, no looping, and no poster image." + }, + { + "inputJson": "{\"videoSource\":\"/videos/demo.mp4\",\"width\":640,\"height\":360,\"autoplay\":false,\"controls\":false,\"loop\":true,\"muted\":false,\"poster\":\"\"}", + "description": "Embed a local video with controls hidden and loop enabled." + }, + { + "inputJson": "{\"videoSource\":\"https://example.com/video.mp4\",\"width\":640,\"height\":360,\"autoplay\":false,\"controls\":true,\"loop\":false,\"muted\":true,\"poster\":\"https://example.com/poster.jpg\"}", + "description": "Embed a muted video with a poster image and default player size." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Video", + "context": null + } + }, + { + "name": "web-development.renderSummary", + "description": "This tool accepts a structured JSON document or text input and generates a concise, web-friendly summary highlighting key points. It processes provided content, extracting main ideas and optionally formats the summary with HTML tags for easy embedding in web pages. The output is a clear textual or HTML snippet summarizing the original document.", + "category": "web-development", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main textual content or JSON string of the document to summarize. Required for generating the summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "The content type of input; can be 'text' or 'json'. Determines processing method. Defaults to 'text'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the summary output, ensuring concise results. Defaults to 300 characters.", + "required": false, + "defaultValue": "300" + }, + { + "name": "includeHtmlFormatting", + "type": "boolean", + "description": "If true, the output summary includes basic HTML tags (like

, ) for web integration. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "Optional list of keywords to emphasize in the summary by wrapping them in tags if HTML formatting is enabled.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summarized text as a string, optionally including HTML formatting based on parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create concise, readable summaries of documents or content pieces for display or use within web pages. Ideal for generating preview snippets, abstracts, or meta descriptions from longer text or JSON-structured content.", + "limitations": "Does not generate summaries for multimedia content (images, video). Quality depends on clarity and structure of input text; it cannot guarantee perfect semantic interpretation or domain-specific summarization.", + "examples": [ + "Summarize a long blog post text to 200 characters for a web preview.", + "Create a highlighted summary from JSON metadata describing an article.", + "Produce a short HTML-formatted abstract for a web page section." + ] + }, + "tags": [ + "summary", + "web", + "text-processing", + "html", + "content-extraction", + "document" + ], + "examples": [ + { + "inputJson": "{\"content\":\"This document discusses the benefits of AI in healthcare, covering improved diagnostics, personalized treatment plans, and enhanced patient engagement.\",\"contentType\":\"text\",\"maxLength\":150,\"includeHtmlFormatting\":true,\"highlightKeywords\":[\"AI\",\"healthcare\"]}", + "description": "Summarize a text document about AI in healthcare, limit to 150 chars, with HTML formatting highlighting keywords." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "web-development.renderDocument", + "description": "Renders an HTML or markdown document into a stylized, fully formatted HTML output. Accepts raw content as HTML or markdown along with optional CSS styles and rendering options such as scripting enablement. Produces a string of rendered HTML ready for use in webpages or previews.", + "category": "web-development", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The raw document content to render, either HTML or markdown formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "Specifies the type of content provided ('html' or 'markdown').", + "required": true, + "defaultValue": "" + }, + { + "name": "cssStyles", + "type": "string", + "description": "Optional CSS styles to apply to the rendered output, as a style string.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableScripts", + "type": "boolean", + "description": "Whether to allow scripts in the output HTML (dangerous, usually false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "rendererOptions", + "type": "object", + "description": "Additional options for rendering like sanitize output, linkify markdown URLs, etc.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML string under the key 'renderedHTML'." + }, + "aiAgent": { + "useCase": "Use this tool when converting raw HTML or markdown content into a rendered HTML format for display or preview purposes within web development or CMS applications. It helps generate safe, styled, and clean HTML output based on input content and style preferences.", + "limitations": "This tool does not execute or interpret JavaScript embedded in the HTML. It does not provide server-side rendering or dynamic content injection beyond static styling and markdown conversion.", + "examples": [ + "Render markdown content with custom CSS styles for a blog preview.", + "Render raw HTML safely with scripts disabled for user-submitted content.", + "Convert markdown notes into styled HTML formatted for website embedding." + ] + }, + "tags": [ + "web", + "rendering", + "html", + "markdown", + "document", + "css", + "preview" + ], + "examples": [ + { + "inputJson": "{\"content\":\"# Hello World\\nThis is a sample markdown document.\",\"contentType\":\"markdown\",\"cssStyles\":\"body { font-family: Arial; color: #333; }\",\"enableScripts\":false}", + "description": "Render markdown content with simple CSS styles applied, scripts disabled." + }, + { + "inputJson": "{\"content\":\"

Welcome

This is an HTML snippet.

\",\"contentType\":\"html\",\"cssStyles\":\"p { color: blue; }\",\"enableScripts\":false}", + "description": "Render raw HTML with CSS styling for paragraphs." + }, + { + "inputJson": "{\"content\":\"## Title\\n* Item 1\\n* Item 2\",\"contentType\":\"markdown\",\"enableScripts\":false}", + "description": "Render markdown list items using default styling and no scripts." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "web-development.renderReport", + "description": "Generates a formatted HTML report from structured input data. Accepts JSON data and optional style settings, processes the data according to specified report templates, and outputs a complete HTML string representing the rendered report ready for display or saving.", + "category": "web-development", + "parameters": [ + { + "name": "reportData", + "type": "object", + "description": "Structured input data for the report content, including sections, tables, and charts.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateName", + "type": "string", + "description": "Name of the report template to use for rendering the report layout and styles.", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag to include charts generated from the data within the report output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customStyles", + "type": "string", + "description": "Optional CSS styles to apply to the rendered report to override or extend template styles.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing a single property 'htmlReport' with the full HTML string of the rendered report." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create visually structured HTML reports from JSON data for dashboards, status updates, or analytics summaries. It supports multiple templates and styling options, suitable for web page display or email embedding.", + "limitations": "Does not generate PDF or formats other than HTML. Chart rendering depends on data format and may require external scripts to display charts in the rendered HTML. Does not support real-time interactive reports.", + "examples": [ + "Render a sales summary report in HTML using the default template, including charts.", + "Generate an inventory report HTML without charts, applying custom CSS styles to brand the report.", + "Create a performance report using a specialized template with data supplied as JSON." + ] + }, + "tags": [ + "web", + "reporting", + "html", + "rendering", + "dashboard", + "charts" + ], + "examples": [ + { + "inputJson": "{\"reportData\":{\"title\":\"Monthly Sales\",\"sections\":[{\"header\":\"Overview\",\"content\":\"Sales increased by 10% compared to last month.\"}],\"tables\":[{\"header\":\"Sales Data\",\"rows\":[[\"Product\",\"Units Sold\",\"Revenue\"],[\"Widget A\",120,2400],[\"Widget B\",90,1800]]}],\"charts\":[{\"type\":\"bar\",\"data\":[120,90],\"labels\":[\"Widget A\",\"Widget B\"]}]},\"templateName\":\"default\",\"includeCharts\":true,\"customStyles\":\"\"}", + "description": "Render a monthly sales report with default template including charts." + }, + { + "inputJson": "{\"reportData\":{\"title\":\"Inventory Status\",\"sections\":[{\"header\":\"Current Stock Levels\",\"content\":\"All products are above minimum thresholds.\"}],\"tables\":[{\"header\":\"Stock Table\",\"rows\":[[\"Item\",\"Stock\"],[\"Item A\",50],[\"Item B\",30]]}]},\"templateName\":\"default\",\"includeCharts\":false,\"customStyles\":\"body { font-family: Arial; color: #333; }\"}", + "description": "Render an inventory report without charts and with custom font and color styles." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "web-development.renderImage", + "description": "Renders an image element for web pages using given source URL, alt text, dimensions, and styling options. Accepts input parameters like image URL, width, height, alt text, CSS classes, and inline styles, then produces a fully formed HTML tag string ready for embedding in web content.", + "category": "web-development", + "parameters": [ + { + "name": "src", + "type": "string", + "description": "The URL or relative path of the image to render. Required to load the image source.", + "required": true, + "defaultValue": "" + }, + { + "name": "altText", + "type": "string", + "description": "Alternative text for the image used for accessibility and SEO.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the image in pixels. If omitted, image natural width is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "Height of the image in pixels. If omitted, image natural height is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "cssClasses", + "type": "array", + "description": "Array of CSS class names to apply to the image element for styling.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "inlineStyles", + "type": "object", + "description": "An object specifying inline CSS styles as key-value pairs to apply directly to the image element.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "loading", + "type": "string", + "description": "Loading behavior attribute for the image, e.g., 'lazy' or 'eager'. Defaults to browser default if empty.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML tag string under the field 'htmlString'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate HTML img elements with specified attributes like source, alt text, sizing, CSS classes, or inline styles during website rendering or content generation workflows. It helps automate and ensure consistent image markup.", + "limitations": "This tool only generates the HTML img tag string and does not handle image file validation, optimization, or upload management.", + "examples": [ + "Render an image with fixed width and alt text for a product thumbnail.", + "Generate an image tag with lazy loading and multiple CSS classes for responsive design.", + "Create an image element with inline styles for custom border and shadow effects." + ] + }, + "tags": [ + "web", + "image", + "html", + "render", + "frontend", + "media", + "css" + ], + "examples": [ + { + "inputJson": "{\"src\":\"https://example.com/logo.png\",\"altText\":\"Company Logo\",\"width\":150,\"height\":50,\"cssClasses\":[\"logo\",\"responsive\"],\"inlineStyles\":{\"border\":\"1px solid #ccc\"},\"loading\":\"lazy\"}", + "description": "Render a company logo image with specific dimensions, CSS classes, border styling, and lazy loading enabled." + }, + { + "inputJson": "{\"src\":\"images/banner.jpg\",\"altText\":\"Homepage Banner\",\"cssClasses\":[\"banner-image\"],\"loading\":\"eager\"}", + "description": "Generate an img tag for the homepage banner with eager loading and given CSS class." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "web-development.renderBrief", + "description": "Renders a concise, structured brief document in HTML format based on input project details. Accepts title, objectives, target audience, deliverables, and optional styling preferences. Processes the data to generate a clean, well-organized HTML brief suitable for web display or inclusion in documentation.", + "category": "web-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the brief document to be rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "objectives", + "type": "array", + "description": "A list of key objectives to be included in the brief.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the brief's target audience.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliverables", + "type": "array", + "description": "List of project deliverables to highlight in the brief.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTimeline", + "type": "boolean", + "description": "Whether to include a timeline section if timeline data provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeline", + "type": "string", + "description": "Optional timeline information for project milestones in plain text or markdown.", + "required": false, + "defaultValue": "" + }, + { + "name": "customStyles", + "type": "string", + "description": "Optional CSS styles to customize the brief's appearance in HTML output.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML brief as a string under 'htmlContent'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a formal project brief as an HTML snippet from structured input data. Useful for quickly producing standardized briefs for project documentation or client presentations on web platforms.", + "limitations": "Does not generate graphical charts or handle complex markdown conversion. Styling is limited to basic CSS provided via 'customStyles' parameter. It produces static HTML without interactivity.", + "examples": [ + "Render a project brief with title, objectives, audience, deliverables, and a timeline.", + "Generate a brief without timeline but with custom CSS styles applied.", + "Create a minimal brief with just title and main objectives." + ] + }, + "tags": [ + "web", + "document", + "brief", + "render", + "html", + "project", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Website Redesign Project\",\"objectives\":[\"Improve user experience\",\"Increase conversion rate\",\"Update branding\"],\"targetAudience\":\"Internal stakeholders and design team\",\"deliverables\":[\"Wireframes\",\"High fidelity mockups\",\"Final design assets\"],\"includeTimeline\":true,\"timeline\":\"Phase 1: Research - Jan 2024\\nPhase 2: Design - Feb 2024\\nPhase 3: Testing - Mar 2024\",\"customStyles\":\"body { font-family: Arial, sans-serif; color: #333; } h1 { color: #0055a5; }\"}", + "description": "Render a full project brief including timeline and custom styles." + }, + { + "inputJson": "{\"title\":\"Mobile App Launch\",\"objectives\":[\"User onboarding\",\"App store optimization\"],\"targetAudience\":\"Marketing and product teams\",\"deliverables\":[\"Launch plan\",\"App store assets\"],\"includeTimeline\":false,\"customStyles\":\"\"}", + "description": "Generate a brief without timeline and default styling." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Brief", + "context": null + } + }, + { + "name": "web-development.formatReference", + "description": "Formats bibliographic reference entries into standardized citation styles such as APA, MLA, or Chicago. Accepts raw reference data as input (like author names, titles, dates) and outputs properly formatted reference strings suitable for web display or documentation.", + "category": "web-development", + "parameters": [ + { + "name": "referenceData", + "type": "object", + "description": "An object containing raw bibliographic information including author(s), title, publication year, publisher, URL, and other citation details.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The citation style to format the reference in. Supported values include 'APA', 'MLA', and 'Chicago'.", + "required": true, + "defaultValue": "APA" + }, + { + "name": "includeUrl", + "type": "boolean", + "description": "Whether to include the URL or DOI in the formatted reference when available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "capitalizeTitle", + "type": "boolean", + "description": "If true, capitalizes the title according to the citation style rules.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'formattedReference' which is the citation formatted as a string according to the specified style." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or display standardized bibliographic references on websites or in documentation to ensure citation compliance and readability according to common academic or publishing standards.", + "limitations": "This tool does not verify the accuracy of the reference data provided, nor does it support citation styles beyond APA, MLA, and Chicago at this time. It may not handle complex or uncommon source types perfectly.", + "examples": [ + "Format a book reference in APA style for a website bibliography.", + "Generate a formatted reference string from raw author, title, and year data in MLA style.", + "Produce a Chicago style citation for an online article including its URL." + ] + }, + "tags": [ + "formatting", + "citation", + "bibliography", + "web-development", + "reference" + ], + "examples": [ + { + "inputJson": "{\"referenceData\":{\"author\":[\"John Doe\"],\"title\":\"Understanding AI\",\"year\":\"2022\",\"publisher\":\"Tech Books Publishing\"},\"style\":\"APA\",\"includeUrl\":false,\"capitalizeTitle\":true}", + "description": "Format a book reference in APA style with title capitalization." + }, + { + "inputJson": "{\"referenceData\":{\"author\":[\"Jane Smith\"],\"title\":\"Modern Web Design\",\"year\":\"2020\",\"url\":\"https://example.com/article\"},\"style\":\"MLA\",\"includeUrl\":true,\"capitalizeTitle\":false}", + "description": "Generate MLA style citation for an online article including URL." + }, + { + "inputJson": "{\"referenceData\":{\"author\":[\"Alice Johnson\",\"Bob Lee\"],\"title\":\"Deep Learning Advances\",\"year\":\"2019\",\"publisher\":\"Science Press\"},\"style\":\"Chicago\",\"includeUrl\":false,\"capitalizeTitle\":false}", + "description": "Produce Chicago style citation for a book with multiple authors." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Reference", + "context": null + } + }, + { + "name": "web-development.formatCitation", + "description": "This tool accepts raw citation data in JSON or string form along with a specified citation style (e.g., APA, MLA, Chicago). It processes the input by formatting the citation according to the selected style's rules and outputs a correctly formatted citation string suitable for web or academic usage.", + "category": "web-development", + "parameters": [ + { + "name": "citationData", + "type": "object", + "description": "An object containing the citation fields (author, title, year, publisher, etc.) representing the source to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style to apply for formatting such as 'APA', 'MLA', or 'Chicago'.", + "required": true, + "defaultValue": "APA" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format for the formatted citation, e.g., 'text' for plain text or 'html' for HTML formatted output.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeURL", + "type": "boolean", + "description": "Whether to append the source URL if available in the citation data.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object with a single field 'formattedCitation' containing the citation formatted string as per the selected style and options." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce correctly styled citations for sources to display on websites, in documentation, or academic related content, ensuring compliance with common citation standards without manual formatting.", + "limitations": "This tool cannot retrieve citation metadata automatically; it requires structured citation input data. It is limited to commonly used citation styles and may not support highly specialized or custom citation styles.", + "examples": [ + "Format a citation in APA style from raw citation data for display on a research website.", + "Convert structured book citation details into an MLA formatted string including an HTML anchor for the URL.", + "Generate a Chicago style citation text from article metadata excluding the source URL." + ] + }, + "tags": [ + "web-development", + "citation", + "formatting", + "academic", + "bibliography", + "reference management" + ], + "examples": [ + { + "inputJson": "{\"citationData\":{\"author\":\"Smith, John\",\"title\":\"Introduction to Web Development\",\"year\":2020,\"publisher\":\"Tech Press\",\"url\":\"https://example.com/book\"},\"citationStyle\":\"APA\",\"outputFormat\":\"text\",\"includeURL\":true}", + "description": "Format a book citation in APA style including URL as plain text." + }, + { + "inputJson": "{\"citationData\":{\"author\":\"Doe, Jane\",\"title\":\"Modern Styling Techniques\",\"journal\":\"Web Journal\",\"volume\":\"15\",\"issue\":\"3\",\"pages\":\"42-59\",\"year\":2019},\"citationStyle\":\"MLA\",\"outputFormat\":\"html\",\"includeURL\":false}", + "description": "Format a journal article citation in MLA style without URL output in HTML." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Citation", + "context": null + } + }, + { + "name": "web-development.formatHeading", + "description": "Formats a given plain text string into an HTML heading element according to specified heading level and optional CSS classes. Accepts raw text input, applies heading level tags (h1 to h6), inserts optional CSS class attributes, and returns a fully formed HTML heading string suitable for embedding in web pages.", + "category": "web-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The plain text content to format as a heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level from 1 to 6 indicating h1 through h6 tags.", + "required": true, + "defaultValue": "1" + }, + { + "name": "cssClasses", + "type": "string", + "description": "Optional space-separated CSS class names to include in the heading element.", + "required": false, + "defaultValue": "" + }, + { + "name": "id", + "type": "string", + "description": "Optional id attribute to add to the heading element for anchors or styling.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the HTML string of the formatted heading in the 'html' property." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents tasked with generating or formatting web page headings dynamically, ensuring proper semantic HTML structure with correct heading levels and optional styling. It helps automate the creation of accessible and standards-compliant heading tags from plain text in content generation workflows.", + "limitations": "It does not sanitize or escape HTML entities; input text should be safe or pre-escaped to prevent injection vulnerabilities. It only formats headings and does not handle other HTML content or styles beyond class and id attributes.", + "examples": [ + "Format raw text 'Welcome to Our Site' as an h2 heading with class 'main-title'.", + "Generate an h1 heading without any CSS classes or id.", + "Create an h4 heading with CSS classes 'section-header highlight' and id 'intro'." + ] + }, + "tags": [ + "web", + "html", + "heading", + "formatting", + "frontend", + "css", + "component" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to Our Site\",\"level\":2,\"cssClasses\":\"main-title\",\"id\":\"\"}", + "description": "Format text as an h2 heading with one CSS class." + }, + { + "inputJson": "{\"text\":\"Home Page\",\"level\":1,\"cssClasses\":\"\",\"id\":\"\"}", + "description": "Create a top-level h1 heading with no additional classes or id." + }, + { + "inputJson": "{\"text\":\"Introduction\",\"level\":4,\"cssClasses\":\"section-header highlight\",\"id\":\"intro\"}", + "description": "Generate an h4 heading with multiple CSS classes and an id attribute." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Heading", + "context": null + } + }, + { + "name": "web-development.formatLink", + "description": "Formats a given URL and optional display text into a valid HTML anchor tag. Accepts a URL string and optional link text, along with options to open the link in a new tab and add CSS classes. Outputs a safely formatted HTML link string ready to embed in web pages.", + "category": "web-development", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL that the link will point to. Must be a valid URL starting with http:// or https://.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkText", + "type": "string", + "description": "The visible text for the link. If omitted or empty, the URL itself will be used as the link text.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Indicates whether the link should open in a new browser tab (sets target='_blank').", + "required": false, + "defaultValue": "false" + }, + { + "name": "cssClasses", + "type": "string", + "description": "Optional string of space-separated CSS class names to add to the anchor tag's class attribute.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted HTML anchor tag string under the 'htmlLink' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate HTML anchor tags from a URL and optional display text, especially when formatting user input or dynamically generated links for web pages. It ensures correct HTML syntax and optionally handles opening in new tabs and CSS styling classes.", + "limitations": "This tool does not validate the URL beyond basic scheme checks and does not sanitize embedded HTML within the link text, so it should be used with trusted inputs or additionally sanitized.", + "examples": [ + "Format a simple link from a URL only.", + "Format a link with custom display text and CSS classes.", + "Create a link that opens in a new tab." + ] + }, + "tags": [ + "web-development", + "html", + "formatting", + "link", + "anchor-tag", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://www.example.com\"}", + "description": "Formats a basic anchor tag using the URL as both href and link text." + }, + { + "inputJson": "{\"url\":\"https://www.example.com\",\"linkText\":\"Example Site\",\"openInNewTab\":true}", + "description": "Formats an anchor tag with custom text that opens in a new tab." + }, + { + "inputJson": "{\"url\":\"https://www.example.com\",\"linkText\":\"Visit Example\",\"cssClasses\":\"btn btn-primary\"}", + "description": "Formats an anchor tag with custom text and CSS classes for styling." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "web-development.formatParagraph", + "description": "Formats a given paragraph of text according to specified styling and structural options. Accepts raw paragraph string input and applies line breaks, indentation, text alignment, and maximum line width rules to produce a neatly formatted paragraph string suitable for web content or documentation.", + "category": "web-development", + "parameters": [ + { + "name": "paragraphText", + "type": "string", + "description": "The raw paragraph text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum number of characters per line before wrapping. Lines will break at word boundaries if possible.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentSpaces", + "type": "number", + "description": "Number of spaces to insert at the start of each line as indentation.", + "required": false, + "defaultValue": "0" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style for lines: 'left', 'right', or 'center'. Defaults to 'left'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "preserveLineBreaks", + "type": "boolean", + "description": "If true, preserves original line breaks in the paragraph input instead of rewrapping.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted paragraph as a single string with applied formatting rules." + }, + "aiAgent": { + "useCase": "Use this tool when needing to present or output a paragraph with consistent and readable formatting on web pages, emails, or documentation. Ideal for wrapping text to a certain width, adding indentation, and controlling alignment for better aesthetics or readability.", + "limitations": "Cannot apply complex text styling such as font changes or color. It only formats plain text paragraphs with whitespace, breaks and alignment. Does not parse or transform HTML or markdown syntax.", + "examples": [ + "Format a user input paragraph to have 4 spaces indentation, 60 characters max line width, and centered alignment.", + "Reformat a block of text to 80 characters line width with left alignment and no indentation.", + "Preserve existing line breaks but right-align each line with 2 spaces indentation." + ] + }, + "tags": [ + "formatting", + "text", + "paragraph", + "wrapping", + "alignment", + "indentation", + "web-content" + ], + "examples": [ + { + "inputJson": "{\"paragraphText\":\"This is a sample paragraph that needs to be formatted accordingly. It contains multiple sentences and should be wrapped correctly.\",\"lineWidth\":50,\"indentSpaces\":4,\"alignment\":\"left\",\"preserveLineBreaks\":false}", + "description": "Format a paragraph with 50 characters max line width, 4 spaces of indentation, left aligned." + }, + { + "inputJson": "{\"paragraphText\":\"Centered paragraph text should appear with lines centered and wrapped at 40 chars.\",\"lineWidth\":40,\"indentSpaces\":0,\"alignment\":\"center\",\"preserveLineBreaks\":false}", + "description": "Center align paragraph text with 40 char max width and no indentation." + }, + { + "inputJson": "{\"paragraphText\":\"Line one.\\nLine two is here.\\nLine three follows.\",\"lineWidth\":80,\"indentSpaces\":2,\"alignment\":\"right\",\"preserveLineBreaks\":true}", + "description": "Preserve line breaks and right-align each line with 2 spaces indentation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-development.formatWord", + "description": "This tool accepts a single word as input and formats it according to specified casing styles such as camelCase, snake_case, kebab-case, PascalCase, UPPERCASE, or lowercase. It outputs the formatted word as a string, enabling consistent styling for identifiers or text elements in web development projects.", + "category": "web-development", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The input word or phrase to be formatted (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The desired output format style (e.g., camelCase, snake_case, kebab-case, PascalCase, UPPERCASE, lowercase) (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveAcronyms", + "type": "boolean", + "description": "If true, preserves acronyms capitalization when applicable (optional)", + "required": false, + "defaultValue": "false" + }, + { + "name": "delimiter", + "type": "string", + "description": "Custom delimiter to use when formatStyle is 'custom' (optional)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted word string under 'formattedWord' key" + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize the formatting of a single word or phrase for identifiers, CSS classes, variable names, or user-visible text within web development tasks. It ensures consistency in naming conventions across codebases and UI elements.", + "limitations": "This tool only formats a single word or phrase according to predefined case styles. It does not handle multiple words as separate inputs or advanced linguistic transformations such as stemming or pluralization.", + "examples": [ + "Format the word 'background color' into camelCase.", + "Convert the word 'user_name' to PascalCase.", + "Output the word 'APIResponse' in lowercase." + ] + }, + "tags": [ + "formatting", + "string", + "case-style", + "web-development", + "naming", + "identifier", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"word\":\"background color\",\"formatStyle\":\"camelCase\"}", + "description": "Convert phrase with space into camelCase string." + }, + { + "inputJson": "{\"word\":\"user_name\",\"formatStyle\":\"PascalCase\"}", + "description": "Change snake_case style word into PascalCase." + }, + { + "inputJson": "{\"word\":\"APIResponse\",\"formatStyle\":\"lowercase\",\"preserveAcronyms\":true}", + "description": "Convert to lowercase while optionally preserving acronym casing." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "web-development.formatText", + "description": "Formats plain text input according to specified style rules such as capitalization, line length wrapping, indentation, and spacing. Accepts a raw string and applies transformations to produce clean, consistent formatted text suitable for display or processing in web development contexts.", + "category": "web-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input plain text string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalize", + "type": "string", + "description": "Capitalization style to apply: 'none', 'uppercase', 'lowercase', 'title' (capitalize first letter of each word).", + "required": false, + "defaultValue": "none" + }, + { + "name": "wrapWidth", + "type": "number", + "description": "Maximum number of characters per line to wrap the text. Use 0 or null for no wrapping.", + "required": false, + "defaultValue": "0" + }, + { + "name": "indentSpaces", + "type": "number", + "description": "Number of spaces to indent each line.", + "required": false, + "defaultValue": "0" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace of each line.", + "required": false, + "defaultValue": "true" + }, + { + "name": "convertTabsToSpaces", + "type": "boolean", + "description": "Replace tab characters with spaces according to indentSpaces setting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted text string under 'formattedText'." + }, + "aiAgent": { + "useCase": "Use this tool to clean, normalize, and style plain text content before embedding it into HTML pages, emails, or documentation in web development workflows. It helps standardize text appearance, indentations, line lengths, and case formatting to improve readability and presentation consistency.", + "limitations": "Cannot parse or format markup languages like HTML or Markdown specifically; focuses purely on plain text manipulation without semantic understanding.", + "examples": [ + "Format a raw text paragraph into wrapped lines of 80 characters with title case and 4 spaces indentation.", + "Convert input text entirely to uppercase without line wrapping.", + "Trim whitespace and convert tabs to spaces with no capitalization or line wrapping." + ] + }, + "tags": [ + "text", + "formatting", + "web-development", + "string-manipulation", + "cleaning", + "indentation", + "wrapping", + "capitalization" + ], + "examples": [ + { + "inputJson": "{\"text\":\"\\tHello world! This is a sample text to demonstrate text formatting tool.\",\"capitalize\":\"title\",\"wrapWidth\":40,\"indentSpaces\":4,\"trimWhitespace\":true,\"convertTabsToSpaces\":true}", + "description": "Format the sample text by applying title case, wrap lines at 40 characters, indent each line by 4 spaces, trim whitespace, and convert tabs to spaces." + }, + { + "inputJson": "{\"text\":\"ERROR: invalid input detected.\",\"capitalize\":\"uppercase\",\"wrapWidth\":0,\"indentSpaces\":0,\"trimWhitespace\":false,\"convertTabsToSpaces\":false}", + "description": "Convert the input text to uppercase without wrapping or indentation, preserving whitespace and tabs." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "web-development.formatSentence", + "description": "This tool accepts a raw sentence string and formats it according to specified stylistic rules such as capitalization style, punctuation correction, and spacing. It outputs a clean, well-formatted sentence string ready for inclusion in web content or user interfaces.", + "category": "web-development", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The raw input sentence string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeStyle", + "type": "string", + "description": "Capitalization style to apply: 'none', 'sentenceCase', 'titleCase', 'uppercase', or 'lowercase'.", + "required": false, + "defaultValue": "sentenceCase" + }, + { + "name": "correctPunctuation", + "type": "boolean", + "description": "Whether to fix common punctuation mistakes (e.g., add missing periods, fix spacing).", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace and reduce multiple spaces to single spaces.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "The input sentence transformed and formatted as per the specified options, suitable for web display." + }, + "aiAgent": { + "useCase": "Use when raw text content or user-generated input needs to be cleaned up and standardized before display on a website or user interface, ensuring consistent capitalization, spacing, and punctuation for polished presentation.", + "limitations": "Does not perform complex grammar correction or semantic adjustments; focuses only on stylistic formatting of single sentences.", + "examples": [ + "Format the sentence 'hello world!' as title case with punctuation correction.", + "Convert the sentence 'this is a test' to uppercase without changing punctuation.", + "Trim extra spaces and capitalize the first word of the input sentence." + ] + }, + "tags": [ + "web", + "text-formatting", + "sentence", + "string-processing", + "capitalization", + "punctuation" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"hello world! this is an example.\",\"capitalizeStyle\":\"sentenceCase\",\"correctPunctuation\":true,\"trimWhitespace\":true}", + "description": "Formats a raw sentence by capitalizing the first letter, correcting punctuation, and trimming extra spaces." + }, + { + "inputJson": "{\"sentence\":\" multiple spaces and no punctuation\",\"capitalizeStyle\":\"titleCase\",\"correctPunctuation\":false,\"trimWhitespace\":true}", + "description": "Trims whitespace and applies title case without punctuation correction." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "web-development.formatHTML", + "description": "Formats raw or minified HTML code string by beautifying, indenting, and normalizing whitespace for improved readability and maintenance. Accepts an HTML string input, applies configurable indentation and optional beautification rules, and returns a well-structured, human-readable HTML string output.", + "category": "web-development", + "parameters": [ + { + "name": "html", + "type": "string", + "description": "The raw or minified HTML code string that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for each indentation level in the output HTML.", + "required": false, + "defaultValue": "2" + }, + { + "name": "indentWithTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation. Overrides indentSize if true.", + "required": false, + "defaultValue": "false" + }, + { + "name": "preserveNewlines", + "type": "boolean", + "description": "Whether to preserve existing line breaks in text nodes when formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxPreserveNewlines", + "type": "number", + "description": "Maximum number of consecutive line breaks to preserve when preserveNewlines is true.", + "required": false, + "defaultValue": "2" + }, + { + "name": "wrapLineLength", + "type": "number", + "description": "Maximum length of a line; lines longer than this will be wrapped when possible.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted HTML string under the 'formattedHtml' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean, beautify, or normalize raw or minified HTML code for easier readability, debugging, review, or maintenance. It is useful in code editors, web IDEs, or automation workflows that manipulate HTML source and require standardized formatting conventions.", + "limitations": "Does not validate HTML syntax correctness or fix semantic errors. Does not optimize or minify HTML for production use. Performance may decrease with extremely large HTML documents.", + "examples": [ + "Format a minified HTML snippet with 2-space indentation.", + "Convert HTML with tabs for indentation instead of spaces.", + "Preserve existing line breaks up to a maximum of two consecutive newlines in text content." + ] + }, + "tags": [ + "formatting", + "html", + "beautify", + "code-cleanup", + "web-development", + "indentation" + ], + "examples": [ + { + "inputJson": "{\"html\":\"

Hello

This is a paragraph.

\",\"indentSize\":4,\"indentWithTabs\":false,\"preserveNewlines\":true,\"maxPreserveNewlines\":2,\"wrapLineLength\":80}", + "description": "Format simple nested HTML with 4-space indentation" + }, + { + "inputJson": "{\"html\":\"
  • Item1
  • Item2
\",\"indentSize\":0,\"indentWithTabs\":true,\"preserveNewlines\":false,\"maxPreserveNewlines\":1,\"wrapLineLength\":80}", + "description": "Format list HTML using tabs for indentation, no preservation of newlines" + }, + { + "inputJson": "{\"html\":\"
Line1\\n\\n\\nLine2
\",\"indentSize\":2,\"indentWithTabs\":false,\"preserveNewlines\":true,\"maxPreserveNewlines\":2,\"wrapLineLength\":100}", + "description": "Preserve up to two consecutive newlines inside HTML text nodes" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "HTML", + "context": null + } + }, + { + "name": "web-development.formatMarkdown", + "description": "Formats raw Markdown text according to specified style guidelines. Accepts Markdown content as input, applies formatting options such as line wrapping, heading styles, and list indentation, and outputs a clean, standardized Markdown string suitable for consistent documentation or web content.", + "category": "web-development", + "parameters": [ + { + "name": "markdownText", + "type": "string", + "description": "The raw Markdown text input to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line; lines will be wrapped accordingly.", + "required": false, + "defaultValue": "80" + }, + { + "name": "useAtxHeadings", + "type": "boolean", + "description": "If true, use ATX style headings (#) instead of Setext style (= or -).", + "required": false, + "defaultValue": "true" + }, + { + "name": "listItemIndentation", + "type": "string", + "description": "Indentation style for list items: 'space' for spaces or 'tab' for tab characters.", + "required": false, + "defaultValue": "space" + }, + { + "name": "trimTrailingWhitespace", + "type": "boolean", + "description": "If true, trims trailing whitespace from each line.", + "required": false, + "defaultValue": "true" + }, + { + "name": "ensureLineBreaksBetweenBlocks", + "type": "boolean", + "description": "If true, ensures exactly one blank line between markdown block elements.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted Markdown text string under 'formattedMarkdown' key." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to enforce consistent markdown formatting across documentation or web content, such as before publishing or committing to a repo. It helps standardize heading styles, wrap lines for better readability, and clean up list indentation and whitespace issues.", + "limitations": "This tool does not render Markdown to HTML or other formats. It only reformats existing Markdown text based on stylistic rules and does not interpret or modify embedded code blocks or metadata.", + "examples": [ + "Format a raw markdown file to use ATX style headers and wrap lines at 80 characters.", + "Standardize list indentation in a markdown document with spaces instead of tabs.", + "Clean up trailing whitespace and ensure consistent blank lines between sections of markdown text." + ] + }, + "tags": [ + "formatting", + "markdown", + "documentation", + "web", + "content", + "standardization", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"markdownText\":\"#Heading\\nThis is a paragraph with a very long line that should be wrapped properly to improve readability and visual consistency in Markdown files.\",\"maxLineLength\":50,\"useAtxHeadings\":true,\"listItemIndentation\":\"space\",\"trimTrailingWhitespace\":true,\"ensureLineBreaksBetweenBlocks\":true}", + "description": "Format Markdown with ATX headings, wrap lines at 50 chars, and standardize spacing." + }, + { + "inputJson": "{\"markdownText\":\"Heading\\n=======\\n- item1\\n- item2\",\"useAtxHeadings\":true}", + "description": "Convert Setext heading to ATX heading and keep default formatting." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Markdown", + "context": null + } + }, + { + "name": "web-development.formatYAML", + "description": "Formats a given YAML string to a standardized style, applying consistent indentation, spacing, and optionally sorting keys. Accepts raw YAML text and outputs a clean, human-readable YAML string conforming to common style guidelines for easier maintenance and readability.", + "category": "web-development", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "Raw YAML string input to be formatted. Must be valid YAML syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted YAML. Typically 2 or 4.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "If true, sorts the keys in mappings alphabetically in the output YAML to improve consistency.", + "required": false, + "defaultValue": "false" + }, + { + "name": "keepComments", + "type": "boolean", + "description": "If true, preserves comments from the original YAML in the formatted output. Otherwise strips comments.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted YAML string as 'formattedYaml' and a boolean 'success' indicating formatting result." + }, + "aiAgent": { + "useCase": "Use this tool when you receive raw or inconsistently formatted YAML data (e.g., configuration files, API specs) that needs to be cleaned and standardized for readability and maintenance in web development projects. It helps ensure uniform indentation, spacing, optional key sorting, and comment retention, making YAML files easier to review and modify.", + "limitations": "Cannot fix syntactically invalid YAML input; requires valid YAML syntax to format correctly. Does not perform semantic validation or error correction beyond formatting.", + "examples": [ + "Format this YAML configuration string with 4-space indentation and sorted keys.", + "Format a YAML file but remove all comments during formatting.", + "Standardize indentation to 2 spaces preserving original comments in the YAML code." + ] + }, + "tags": [ + "formatting", + "YAML", + "web-development", + "code-cleanup", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"database:\\n host: localhost\\n port: 5432\\n credentials:\\n user: admin\\n password: secret\\nlogging:\\n level: info\\n enabled: true\",\"indentationSpaces\":4,\"sortKeys\":true,\"keepComments\":true}", + "description": "Format a typical web app config YAML with 4 space indentation and sorted keys, preserving comments." + }, + { + "inputJson": "{\"yamlContent\":\"- name: John\\n age: 30\\n- name: Alice\\n age: 25\",\"indentationSpaces\":2,\"sortKeys\":false,\"keepComments\":false}", + "description": "Format a YAML list without sorting keys and strip any comments, indented with 2 spaces." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "YAML", + "context": null + } + }, + { + "name": "web-development.formatXML", + "description": "Formats a raw XML string to produce a well-indented, human-readable XML output. Accepts unformatted or minified XML input and processes it by parsing and pretty-printing with configurable indentation. Returns a string of formatted XML preserving the original content structure.", + "category": "web-development", + "parameters": [ + { + "name": "xmlString", + "type": "string", + "description": "The raw XML string input to be formatted; must be well-formed XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for each indentation level in the output XML; default is 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tab characters for indentation instead of spaces; default is false (spaces used).", + "required": false, + "defaultValue": "false" + }, + { + "name": "preserveEmptyLines", + "type": "boolean", + "description": "Indicates if existing empty lines in the XML input should be preserved in the formatted output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the prettified XML string as formattedXML and an error message if formatting failed, empty if successful." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert a compressed or poorly formatted XML string into a clean, readable format with consistent indentation for debugging, display, or documentation purposes. It is ideal for XML data inspection, editing, or integration into readable documentation.", + "limitations": "Cannot format XML strings that are not well-formed. Does not perform XML validation beyond parsing nor modify XML content, only formatting is affected.", + "examples": [ + "Format a minified XML string for display in a web UI with 4-space indentation.", + "Reformat XML with tabs instead of spaces for easier code editing.", + "Preserve empty lines in large XML files while formatting indentation." + ] + }, + "tags": [ + "formatting", + "xml", + "web-development", + "data-processing", + "pretty-print", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"xmlString\":\"value\",\"indentationSpaces\":2,\"useTabs\":false,\"preserveEmptyLines\":false}", + "description": "Simple XML string formatted with two spaces indentation." + }, + { + "inputJson": "{\"xmlString\":\"value\",\"indentationSpaces\":4,\"useTabs\":true,\"preserveEmptyLines\":false}", + "description": "Format XML using tabs for indentation with visually clear spacing." + }, + { + "inputJson": "{\"xmlString\":\"\\n\\n text\\n\",\"indentationSpaces\":2,\"useTabs\":false,\"preserveEmptyLines\":true}", + "description": "Format XML preserving existing empty lines between nodes." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "XML", + "context": null + } + }, + { + "name": "web-development.formatCSV", + "description": "Formats raw CSV data according to specified delimiter, line endings, and quoting rules. Accepts CSV text input, processes it to ensure consistent styling and escaping, and outputs the formatted CSV string suitable for web or application use.", + "category": "web-development", + "parameters": [ + { + "name": "csvText", + "type": "string", + "description": "Raw CSV text input to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate the fields; commonly a comma or semicolon", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteCharacter", + "type": "string", + "description": "Character used to quote fields containing delimiters or line breaks", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineEnding", + "type": "string", + "description": "Type of line ending for CSV rows; e.g., \\n (LF), \\r\\n (CRLF)", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "trimFields", + "type": "boolean", + "description": "Whether to trim whitespace from fields", + "required": false, + "defaultValue": "true" + }, + { + "name": "escapeQuotes", + "type": "boolean", + "description": "Whether to double-up quote characters inside quoted fields", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "The formatted CSV string with consistent delimiters, quoting, escaping, and line endings" + }, + "aiAgent": { + "useCase": "Use this tool when you receive CSV data that needs to be standardized for better compatibility with web applications, CSV readers, or APIs. It helps enforce uniform delimiter, quote, and line-ending styles to prevent parsing errors and improve readability. This is especially useful before saving, displaying, or transmitting CSV data.", + "limitations": "This tool does not validate CSV content semantically or parse CSV into structured objects. It focuses solely on formatting style and escaping rules. It also does not add or remove columns or rows.", + "examples": [ + "Format CSV text to use semicolons as delimiters and Windows-style line endings.", + "Clean CSV input from inconsistent whitespace and ensure all fields are quoted properly.", + "Convert poorly formatted CSV into standardized form for web upload." + ] + }, + "tags": [ + "csv", + "formatting", + "web-development", + "data-cleanup", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"csvText\":\"name , age,\\nJohn Doe, 30\\nJane,25\",\"delimiter\":\",\",\"quoteCharacter\":\"\\\"\",\"lineEnding\":\"\\n\",\"trimFields\":true,\"escapeQuotes\":true}", + "description": "Format CSV with commas as delimiters, trim whitespace, and standard LF line endings." + }, + { + "inputJson": "{\"csvText\":\"id;name;comment\\n1;Alice;Hello; world\\n2;Bob;Goodbye\",\"delimiter\":\";\",\"quoteCharacter\":\"\\\"\",\"lineEnding\":\"\\r\\n\",\"trimFields\":true,\"escapeQuotes\":true}", + "description": "Format CSV using semicolon delimiters and CRLF line endings for Windows compatibility." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "web-development.formatDataset", + "description": "Formats raw dataset inputs (in JSON, CSV, or array of objects) for web display by standardizing date formats, normalizing numeric values, and aligning columns with consistent header naming conventions. Returns a cleaned and uniformly structured dataset ready for frontend rendering or further processing.", + "category": "web-development", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "The dataset as an array of objects, each representing a data record to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "The format of the input dataset (e.g., 'json', 'csv', 'array').", + "required": false, + "defaultValue": "json" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Desired output date format string (e.g., 'YYYY-MM-DD', 'MM/DD/YYYY').", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "numericPrecision", + "type": "number", + "description": "Number of decimal places for numeric values normalization.", + "required": false, + "defaultValue": "2" + }, + { + "name": "columnMapping", + "type": "object", + "description": "An object mapping original column names to desired display names to unify headers.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "removeEmptyRows", + "type": "boolean", + "description": "Whether to remove rows with all empty or null values.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted dataset as an array of standardized records, with columns renamed and data cleaned for consistent web presentation." + }, + "aiAgent": { + "useCase": "Use this tool when raw datasets from diverse sources require consistent formatting for web applications. It helps unify date formats, numeric precision, and column names for frontend display or API consumption, facilitating seamless integration and improved user experience.", + "limitations": "Does not perform complex data validation, infer data types beyond basic detection, or handle extremely large datasets that may require streaming or chunk processing.", + "examples": [ + "Format a JSON dataset with inconsistent date strings and varied column headers for web display.", + "Normalize numeric values to 3 decimals and rename columns in a CSV-imported dataset.", + "Remove all empty rows from an array of data objects before rendering in a web table." + ] + }, + "tags": [ + "formatting", + "dataset", + "web", + "data-cleaning", + "json", + "csv", + "frontend", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"date\":\"12-31-2023\",\"price\":\"100.4567\",\"product\":\"A\"},{\"date\":\"01-01-2024\",\"price\":\"200.1\",\"product\":\"B\"}],\"inputFormat\":\"json\",\"dateFormat\":\"YYYY-MM-DD\",\"numericPrecision\":2,\"columnMapping\":{\"product\":\"Product Name\",\"price\":\"Price ($)\"},\"removeEmptyRows\":true}", + "description": "Formats a JSON dataset by standardizing date format to ISO, rounding price to 2 decimals, renaming product and price columns, and removing empty rows." + }, + { + "inputJson": "{\"dataset\":[{\"date\":\"2023/12/31\",\"sales\":null},{\"date\":\"2024/01/01\",\"sales\":300}],\"inputFormat\":\"array\",\"dateFormat\":\"MM/DD/YYYY\",\"numericPrecision\":0,\"columnMapping\":{\"date\":\"Sale Date\",\"sales\":\"Total Sales\"},\"removeEmptyRows\":true}", + "description": "Formats an array dataset for display, changing date format to MM/DD/YYYY, rounding sales to integer, renaming columns, and removing fully empty rows." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "web-development.formatJSON", + "description": "Formats an input JSON string or object into a human-readable string with customizable indentation and optional sorting of keys. Accepts either a raw JSON string or a JavaScript object, processes it by pretty-printing with given indentation level and optional key sorting, and returns the formatted JSON string output suitable for improved readability and maintenance.", + "category": "web-development", + "parameters": [ + { + "name": "inputJSON", + "type": "string", + "description": "Input JSON to format as a string. Can be a raw JSON string or a stringified object. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the output. Defaults to 2 spaces.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort the JSON object keys alphabetically before formatting. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputAsString", + "type": "boolean", + "description": "If true, always returns a formatted JSON string. If false and input is an object, returns the formatted JSON object (parsed). Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON output either as a string or object, plus an error message if formatting failed. Contains keys: formattedJSON (string), error (string, empty if none)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw or minified JSON data into a neatly indented and optionally key-sorted format for easier reading, debugging, or presentation in web development environments.", + "limitations": "Does not validate if the input JSON contains semantic errors or circular references. Fails if input is not valid JSON or object.", + "examples": [ + "Format a minified JSON string with 4 spaces indentation and sorted keys", + "Pretty-print a JSON object with default indentation", + "Format a JSON string without sorting keys and using 2 spaces indentation" + ] + }, + "tags": [ + "formatting", + "json", + "web-development", + "pretty-print", + "data-processing" + ], + "examples": [ + { + "inputJson": "{\"inputJSON\":\"{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30,\\\"city\\\":\\\"New York\\\"}\",\"indentation\":4,\"sortKeys\":true,\"outputAsString\":true}", + "description": "Format a JSON string with 4 spaces indentation and sorted keys." + }, + { + "inputJson": "{\"inputJSON\":\"{\\\"b\\\":2,\\\"a\\\":1}\",\"indentation\":2,\"sortKeys\":false,\"outputAsString\":true}", + "description": "Format a JSON string with default 2 spaces indentation and without sorting keys." + }, + { + "inputJson": "{\"inputJSON\":\"{\\\"z\\\":10,\\\"y\\\":20}\",\"outputAsString\":true}", + "description": "Format JSON string with default indentation and no sorting keys, output as formatted string." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "web-development.formatTest", + "description": "Formats test code snippets from various testing frameworks (e.g., Jest, Mocha) into a standardized, readable style with consistent indentation, spacing, and naming conventions. Accepts raw test code as a string and outputs the formatted test code string for improved readability and maintainability.", + "category": "web-development", + "parameters": [ + { + "name": "testCode", + "type": "string", + "description": "Raw source code of the test to be formatted, as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The testing framework of the input code, e.g., 'jest', 'mocha'. Helps tailor formatting rules.", + "required": false, + "defaultValue": "jest" + }, + { + "name": "indentStyle", + "type": "string", + "description": "Indentation style to apply: 'spaces' or 'tabs'.", + "required": false, + "defaultValue": "spaces" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces or tabs to use per indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length before wrapping code lines.", + "required": false, + "defaultValue": "80" + }, + { + "name": "quoteStyle", + "type": "string", + "description": "Preferred quote style for strings: 'single' or 'double'.", + "required": false, + "defaultValue": "single" + }, + { + "name": "semi", + "type": "boolean", + "description": "Whether to add semicolons at the end of statements.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted test code string under 'formattedTestCode' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize or clean up test code from various sources or frameworks to improve readability and consistency in web development projects. Ideal during code reviews, refactoring, or CI pipelines to ensure test code adheres to team style guidelines.", + "limitations": "This tool does not validate test logic or ensure tests pass; it only formats code style. Complex dynamic code or non-standard test syntaxes may not format correctly.", + "examples": [ + "Format a raw Jest unit test code string to consistent style.", + "Convert a Mocha test code to use tabs indentation and double quotes.", + "Apply consistent semicolon usage and line length wrapping to test JavaScript functions." + ] + }, + "tags": [ + "web", + "development", + "testing", + "formatting", + "code-style", + "jest", + "mocha" + ], + "examples": [ + { + "inputJson": "{\"testCode\":\"describe('sum', ()=>{test('adds numbers',()=>{expect(sum(1,2)).toBe(3)})})\",\"framework\":\"jest\",\"indentStyle\":\"spaces\",\"indentSize\":2,\"maxLineLength\":80,\"quoteStyle\":\"single\",\"semi\":true}", + "description": "Format a simple Jest test code snippet with 2 spaces indent, single quotes, and semicolons." + }, + { + "inputJson": "{\"testCode\":\"describe('API tests', function() { it('returns 200', function() { assert.equal(response.status, 200)})})\",\"framework\":\"mocha\",\"indentStyle\":\"tabs\",\"indentSize\":1,\"maxLineLength\":100,\"quoteStyle\":\"double\",\"semi\":false}", + "description": "Format a Mocha test snippet using tabs for indentation, double quotes, and no semicolons." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "web-development.formatTable", + "description": "Formats tabular data given as JSON arrays into styled HTML tables. Accepts data as an array of objects or arrays, applies optional styling and formatting options, and outputs responsive, semantic HTML table markup ready for web use.", + "category": "web-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects or arrays representing the rows of the table. Each object should have consistent keys for columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnHeaders", + "type": "array", + "description": "Optional array of strings to use as column headers. If omitted and data is array of objects, headers are derived from object keys.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeBorders", + "type": "boolean", + "description": "Whether to include borders around table cells for clearer separation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "stripedRows", + "type": "boolean", + "description": "Whether to apply alternating background colors to rows for readability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "responsive", + "type": "boolean", + "description": "If true, output table wrapped for horizontal scrolling on small screens.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tableId", + "type": "string", + "description": "Optional id attribute for the table element for CSS or JS targeting.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single key 'html' containing the generated HTML string representing the styled table." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to convert structured data (JSON arrays or objects) into clean, styled HTML table markup suitable for embedding within web pages or apps with customizable appearance. It helps generate accessible tables with optional responsive design and visual enhancements.", + "limitations": "This tool does not support complex table features such as sorting, filtering, pagination, or nested tables. It only produces static HTML output, no interactive behaviors.", + "examples": [ + "Format a JSON array of user data into a bordered, striped HTML table for a web dashboard.", + "Generate an HTML table from an array of arrays with custom column headers and no borders.", + "Create a responsive HTML table from JSON objects with default styling and an assigned element ID." + ] + }, + "tags": [ + "html", + "table", + "formatting", + "web-development", + "responsive", + "styling" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"includeBorders\":true,\"stripedRows\":true}", + "description": "Format array of objects with borders and striped rows." + }, + { + "inputJson": "{\"data\":[[\"Product\",\"Price\",\"Stock\"],[\"Widget\",19.99,100],[\"Gadget\",29.99,50]],\"columnHeaders\":[\"Name\",\"Price\",\"Inventory\"],\"includeBorders\":false,\"responsive\":false}", + "description": "Format array of arrays with custom headers, no borders, non-responsive." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "web-development.formatMigration", + "description": "Formats and standardizes database migration script code snippets to a consistent style. Accepts migration script text as input, applies syntax formatting rules based on the specified database type (e.g., SQL, MongoDB), and outputs the formatted, clean migration code ready for integration or review.", + "category": "web-development", + "parameters": [ + { + "name": "migrationCode", + "type": "string", + "description": "The raw migration script code to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of the database system the migration script targets (e.g., 'sql', 'mongodb'). Determines formatting rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationStyle", + "type": "string", + "description": "Indentation style to apply: 'spaces' or 'tabs'.", + "required": false, + "defaultValue": "spaces" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces or tabs per indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "wrapLineLength", + "type": "number", + "description": "Maximum line length before wrapping is applied.", + "required": false, + "defaultValue": "80" + }, + { + "name": "preserveComments", + "type": "boolean", + "description": "Whether to preserve original comments in the migration code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted migration script and metadata such as original and formatted code length." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to clean up or standardize migration scripts in various database languages, ensuring consistent styling for readability, collaboration, or deployment. It supports multiple database types and common formatting preferences.", + "limitations": "This tool does not execute or validate migration logic correctness; it only formats code structure and style. Complex non-standard scripts or embedded dynamic code might not be perfectly formatted.", + "examples": [ + "Format a raw SQL migration script to consistent indentation and line wrapping.", + "Standardize MongoDB migration scripts with tabs indentation and preserve comments.", + "Clean and format legacy migration code snippets before code review integration." + ] + }, + "tags": [ + "formatting", + "database", + "migration", + "code-quality", + "sql", + "mongodb", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"migrationCode\":\"CREATE TABLE users(id INT PRIMARY KEY, name VARCHAR(255));\",\"databaseType\":\"sql\",\"indentationStyle\":\"spaces\",\"indentationSize\":2,\"wrapLineLength\":80,\"preserveComments\":true}", + "description": "Format a simple SQL migration script with standard 2-space indentation." + }, + { + "inputJson": "{\"migrationCode\":\"db.users.insert({name:'Alice',age:30});\",\"databaseType\":\"mongodb\",\"indentationStyle\":\"tabs\",\"indentationSize\":1,\"wrapLineLength\":100,\"preserveComments\":false}", + "description": "Format a MongoDB migration script using tabs indentation and removing comments." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Migration", + "context": null + } + }, + { + "name": "web-development.formatAPI", + "description": "Formats raw API specification input (in JSON or YAML) into well-structured, human-readable documentation or code snippets. Accepts API specs and formatting options; produces formatted API docs or code stubs for easier understanding and use by developers.", + "category": "web-development", + "parameters": [ + { + "name": "apiSpec", + "type": "string", + "description": "The API specification as a JSON or YAML string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format, e.g., 'markdown', 'html', or 'codeSnippet'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for code snippet generation if outputFormat is 'codeSnippet', e.g., 'javascript', 'python'.", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example requests and responses in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Optional style guide or formatting rules to apply (e.g., 'OpenAPI', 'RAML', or custom style).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted API documentation or code snippet as a string under the 'formattedOutput' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw API specifications into readable documentation or usable code snippets to assist developers in understanding and implementing APIs quickly and consistently. It's ideal for generating markdown docs, html formatted API pages, or client code samples from raw JSON or YAML API specs.", + "limitations": "This tool does not validate API specifications for correctness; it only formats provided specs. It cannot generate complete API implementations or handle API specs with syntax errors.", + "examples": [ + "Format a raw OpenAPI JSON spec into markdown documentation with examples.", + "Generate a Python code snippet for given API endpoints from a YAML spec.", + "Output HTML formatted API docs without example requests and responses." + ] + }, + "tags": [ + "api", + "formatting", + "documentation", + "code generation", + "web-development", + "openapi" + ], + "examples": [ + { + "inputJson": "{\"apiSpec\":\"{\\\"openapi\\\":\\\"3.0.0\\\",\\\"info\\\":{\\\"title\\\":\\\"Sample API\\\",\\\"version\\\":\\\"1.0.0\\\"},\\\"paths\\\":{\\\"/users\\\":{\\\"get\\\":{\\\"summary\\\":\\\"List users\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"A JSON array of user names\\\"}}}}}}\",\"outputFormat\":\"markdown\",\"includeExamples\":true}", + "description": "Format a simple OpenAPI JSON spec to markdown including example requests." + }, + { + "inputJson": "{\"apiSpec\":\"openapi: 3.0.0\\ninfo:\\n title: Sample API\\n version: 1.0.0\\npaths:\\n /items:\\n post:\\n summary: Create item\\n responses:\\n '201':\\n description: Item created\",\"outputFormat\":\"codeSnippet\",\"language\":\"python\",\"includeExamples\":false}", + "description": "Generate Python client code snippet from YAML API spec without examples." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "web-development.formatSchema", + "description": "This tool accepts JSON schema code as input and reformats it to a standardized, human-readable style according to specified indentation and styling preferences. It outputs the formatted JSON schema string, making it easier to read and maintain in web development projects.", + "category": "web-development", + "parameters": [ + { + "name": "schemaJson", + "type": "string", + "description": "The JSON schema as a string to be formatted. Must be valid JSON schema code.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for each indentation level in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to alphabetically sort the keys in objects for consistent ordering.", + "required": false, + "defaultValue": "true" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tab characters instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width for wrapping long lines in the formatted schema; if 0, no wrapping is applied.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted schema string in JSON format with applied styling preferences." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean up, standardize, or improve the readability of JSON schema files during web development. It helps automated and consistent formatting for better version control diffs and human understanding.", + "limitations": "This tool does not validate schema correctness, only formatting. It cannot merge or modify schema logic or content beyond structural formatting.", + "examples": [ + "Format a JSON schema string with 4-space indentation and sorted keys.", + "Convert a minimized JSON schema into a human-readable indented format using tabs.", + "Wrap long lines of JSON schema at 100 characters with spaces for indentation." + ] + }, + "tags": [ + "web-development", + "json-schema", + "formatting", + "code-style", + "json", + "schema", + "formatter" + ], + "examples": [ + { + "inputJson": "{\"schemaJson\":\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"name\\\":{\\\"type\\\":\\\"string\\\"},\\\"age\\\":{\\\"type\\\":\\\"integer\\\"}}}\",\"indentation\":4,\"sortKeys\":true,\"useTabs\":false,\"lineWidth\":80}", + "description": "Format a compact JSON schema string with 4 spaces indentation and keys sorted alphabetically." + }, + { + "inputJson": "{\"schemaJson\":\"{\\\"properties\\\":{\\\"z\\\":{\\\"type\\\":\\\"string\\\"},\\\"a\\\":{\\\"type\\\":\\\"number\\\"}},\\\"type\\\":\\\"object\\\"}\",\"indentation\":2,\"sortKeys\":false,\"useTabs\":true,\"lineWidth\":0}", + "description": "Format JSON schema using tabs without sorting keys and no line wrapping." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Schema", + "context": null + } + }, + { + "name": "web-development.formatQuery", + "description": "Formats and beautifies SQL query strings, accepting raw SQL input and optional formatting preferences such as indentation size and uppercase keywords, and returns a neatly formatted SQL query string for improved readability and maintenance.", + "category": "web-development", + "parameters": [ + { + "name": "queryString", + "type": "string", + "description": "The raw SQL query string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces to use for each indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "If true, SQL keywords will be converted to uppercase for better visibility.", + "required": false, + "defaultValue": "true" + }, + { + "name": "linesBetweenClauses", + "type": "number", + "description": "Number of blank lines inserted between main SQL clauses (e.g., SELECT, FROM, WHERE).", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted SQL query string under the field 'formattedQuery'." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent encounters raw or minified SQL queries that require beautification for better readability, debugging, or presentation in web development contexts. It helps standardize query appearances to improve maintainability or documentation quality.", + "limitations": "The tool formats queries based on standard SQL syntax; it might not correctly format proprietary or non-standard SQL dialects. It does not validate SQL syntax correctness or optimize query performance.", + "examples": [ + "Format this raw SQL query for readability.", + "Convert all keywords in the SQL query to uppercase and indent with 4 spaces.", + "Insert two blank lines between main clauses in the SQL statement." + ] + }, + "tags": [ + "sql", + "formatting", + "web-development", + "query", + "beautify", + "code-style" + ], + "examples": [ + { + "inputJson": "{\"queryString\":\"select id, name from users where age>20 order by name desc\",\"indentationSize\":4,\"uppercaseKeywords\":true,\"linesBetweenClauses\":1}", + "description": "Format a simple SQL query with 4-space indentation and uppercase keywords." + }, + { + "inputJson": "{\"queryString\":\"insert into orders(id,product_id,quantity)values(1,101,2)\",\"indentationSize\":2,\"uppercaseKeywords\":false,\"linesBetweenClauses\":0}", + "description": "Format an insert statement with 2-space indentation and lowercase keywords, no extra blank lines." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "web-development.formatEndpoint", + "description": "Formats a web API endpoint definition string into a standardized URL path with appropriate parameter placeholders and HTTP method indication. It accepts a raw endpoint string, HTTP method, and optional parameter details, then returns a clean, consistent endpoint format suitable for documentation or code generation.", + "category": "web-development", + "parameters": [ + { + "name": "rawEndpoint", + "type": "string", + "description": "The raw endpoint string to be formatted, e.g., '/users/:id/details' or 'api/v1/users/{userId}'", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for this endpoint (e.g., GET, POST, PUT, DELETE) to include in the formatted output", + "required": true, + "defaultValue": "" + }, + { + "name": "parameterStyle", + "type": "string", + "description": "Style to use for path parameters: 'colon' for :param, 'curly' for {param}, or 'semicolon' for ;param (default is colon)", + "required": false, + "defaultValue": "colon" + }, + { + "name": "queryParameters", + "type": "array", + "description": "Optional array of query parameter names to append to the endpoint as a query string template", + "required": false, + "defaultValue": "[]" + }, + { + "name": "normalizeSlashes", + "type": "boolean", + "description": "Whether to normalize multiple slashes and remove trailing slash except root", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted endpoint string, including normalized path, standardized parameter placeholders, HTTP method label, and optionally the full URI template with query parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert various raw or inconsistent API endpoint specifications into a single uniform format, especially useful before generating API documentation, client SDK code, or routing logic. It standardizes parameter syntax and URL formatting for better interoperability.", + "limitations": "This tool does not validate the semantic correctness of parameter names, nor does it parse or handle complex nested query parameter schemas or body payloads. It focuses solely on URL path and query string formatting.", + "examples": [ + "Format a REST endpoint with colon style parameters and GET method.", + "Normalize slashes and adapt parameters to curly braces style with POST method.", + "Add query parameters template to a base endpoint URL." + ] + }, + "tags": [ + "web-development", + "api", + "endpoint", + "formatting", + "url", + "http-method", + "parameter-handling" + ], + "examples": [ + { + "inputJson": "{\"rawEndpoint\":\"/api/v1/users/:userId/profile\",\"httpMethod\":\"GET\",\"parameterStyle\":\"curly\",\"queryParameters\":[\"include\",\"limit\"],\"normalizeSlashes\":true}", + "description": "Convert colon style path parameters to curly braces, add query parameters, and normalize slashes for a GET user profile endpoint." + }, + { + "inputJson": "{\"rawEndpoint\":\"//orders//:orderId//items\",\"httpMethod\":\"POST\",\"parameterStyle\":\"colon\",\"queryParameters\":[],\"normalizeSlashes\":true}", + "description": "Clean up duplicate slashes and keep colon style parameters for a POST order items endpoint without query parameters." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "web-development.formatModule", + "description": "Formats JavaScript or TypeScript module code to a consistent style. Accepts source code as a string along with formatting options, then applies indentation, semicolon usage, quote style, and other stylistic rules to produce clean, standardized module code output.", + "category": "web-development", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw JavaScript or TypeScript module code to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Specifies whether the source code is 'javascript' or 'typescript'", + "required": true, + "defaultValue": "javascript" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation", + "required": false, + "defaultValue": "2" + }, + { + "name": "useSemicolons", + "type": "boolean", + "description": "Determines whether to add semicolons at the end of statements", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteStyle", + "type": "string", + "description": "Preferred quote style: 'single' or 'double'", + "required": false, + "defaultValue": "single" + }, + { + "name": "trailingComma", + "type": "string", + "description": "Trailing commas style: 'none', 'es5', or 'all'", + "required": false, + "defaultValue": "es5" + } + ], + "returns": { + "type": "object", + "description": "Returns a formatted code string for the module, and optionally a report object with formatting changes or errors" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to clean up or standardize module source code to a preferred coding style for readability, consistency, or before further processing (e.g., analysis, transpilation). It is appropriate for both JavaScript and TypeScript modules.", + "limitations": "Does not perform semantic code transformations, lint fixes beyond formatting, or code validation. It requires syntactically valid input code; malformed modules may result in formatting errors.", + "examples": [ + "Format a raw TypeScript module code with 4 spaces indentation, double quotes, and no semicolons.", + "Convert JavaScript module source to use single quotes and trailing commas on ES5-compatible syntax, with 2 spaces indentation.", + "Apply formatting to a JavaScript module source disabling trailing commas and ensuring semicolons." + ] + }, + "tags": [ + "formatting", + "javascript", + "typescript", + "code-style", + "module", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"import React from 'react';\\nconst Comp=()=>{return
Hello
}\\nexport default Comp\",\"language\":\"javascript\",\"indentSize\":2,\"useSemicolons\":true,\"quoteStyle\":\"single\",\"trailingComma\":\"es5\"}", + "description": "Format a small React JS module code to use 2 spaces, semicolons, single quotes and ES5 trailing commas." + }, + { + "inputJson": "{\"sourceCode\":\"type User = {name:string,age:number}\\nconst getUser = (): User => {return {name:\\\"Alice\\\", age:30}}\",\"language\":\"typescript\",\"indentSize\":4,\"useSemicolons\":false,\"quoteStyle\":\"double\",\"trailingComma\":\"none\"}", + "description": "Format a TypeScript module snippet with 4 space indents, double quotes, no semicolons, and no trailing commas." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "web-development.formatFunction", + "description": "Formats a JavaScript function code snippet according to specified styling rules. Accepts a function as a string, applies indentation, spacing, and bracket placement preferences, and returns the formatted function string ready for use in web development.", + "category": "web-development", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "The JavaScript function code as a raw string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentStyle", + "type": "string", + "description": "Specifies the indentation style to use. Options: 'space' or 'tab'.", + "required": false, + "defaultValue": "space" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces per indentation level (if indentStyle is 'space').", + "required": false, + "defaultValue": "2" + }, + { + "name": "braceStyle", + "type": "string", + "description": "Brace style for function blocks. Options: '1tbs' (one true brace style), 'allman'.", + "required": false, + "defaultValue": "1tbs" + }, + { + "name": "spaceBeforeParen", + "type": "boolean", + "description": "Whether to insert a space before the parentheses in function declaration (e.g., function name () vs function name()).", + "required": false, + "defaultValue": "false" + }, + { + "name": "preserveNewlines", + "type": "boolean", + "description": "Whether to keep existing line breaks within the function code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function as a string under the key 'formattedFunction'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ensure that JavaScript function code snippets conform to consistent style guidelines before injecting into projects or for improved readability and maintenance. It supports customization of indentation, brace placement, and spacing to match project coding standards.", + "limitations": "This tool only formats single JavaScript function code snippets and does not validate or parse entire scripts or other programming languages. It does not correct syntax errors or semantic issues in the code.", + "examples": [ + "Format a raw JS function code string with 4 spaces indentation and Allman brace style.", + "Format a function string to enforce no space before parentheses and tab indentation.", + "Preserve existing newlines but apply 2-space indentation and 1tbs brace style." + ] + }, + "tags": [ + "formatting", + "javascript", + "code-style", + "web-development", + "function" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"function greet(name){console.log('Hello, '+name);}\",\"indentStyle\":\"space\",\"indentSize\":2,\"braceStyle\":\"1tbs\",\"spaceBeforeParen\":false,\"preserveNewlines\":true}", + "description": "Format a simple function with 2 spaces indentation and one true brace style without space before parentheses." + }, + { + "inputJson": "{\"functionCode\":\"function add (a,b)\n{\nreturn a+b;\n}\",\"indentStyle\":\"space\",\"indentSize\":4,\"braceStyle\":\"allman\",\"spaceBeforeParen\":true,\"preserveNewlines\":false}", + "description": "Format function with 4 space indentation, Allman style braces with space before parentheses, removing extra newlines." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "web-development.formatComponent", + "description": "Formats source code of web components (React, Vue, Angular) to improve readability and maintain consistent style. Accepts the component code as a string, applies specified style rules or defaults, and returns the formatted code string.", + "category": "web-development", + "parameters": [ + { + "name": "componentCode", + "type": "string", + "description": "The raw source code of the web component to format, provided as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Specifies the framework of the component (e.g., 'react', 'vue', 'angular') to apply framework-specific formatting.", + "required": false, + "defaultValue": "react" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Name of the styling convention or code standard to apply (e.g., 'prettier', 'eslint', 'custom').", + "required": false, + "defaultValue": "prettier" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs for indentation (true) or spaces (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "tabWidth", + "type": "number", + "description": "Number of spaces per indentation level if spaces are used.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted component code as a string under the key 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to consistently format web component source code to adhere to style guides, improving readability and maintainability across team projects. It supports multiple frameworks and formatting style options, helping when generating or refactoring component code.", + "limitations": "This tool formats code but does not validate syntax correctness or fix runtime errors. It does not support custom formatting rules beyond the specified style guides.", + "examples": [ + "Format a React component code string using Prettier style defaults.", + "Format a Vue component with custom tab settings.", + "Apply Angular component formatting using ESLint rules." + ] + }, + "tags": [ + "formatting", + "web-development", + "code-style", + "react", + "vue", + "angular", + "components" + ], + "examples": [ + { + "inputJson": "{\"componentCode\":\"function Button(){return }\",\"framework\":\"react\",\"styleGuide\":\"prettier\",\"useTabs\":false,\"tabWidth\":2}", + "description": "Format a simple React button component using Prettier defaults with spaces for indentation." + }, + { + "inputJson": "{\"componentCode\":\"\",\"framework\":\"vue\",\"styleGuide\":\"prettier\",\"useTabs\":true,\"tabWidth\":4}", + "description": "Format a Vue component template using tabs for indentation with tab width 4." + }, + { + "inputJson": "{\"componentCode\":\"@Component({ selector: 'app-root' })\\nexport class AppComponent {}\",\"framework\":\"angular\",\"styleGuide\":\"eslint\",\"useTabs\":false,\"tabWidth\":2}", + "description": "Format a basic Angular component code applying ESLint style guide with spaces and 2 spaces indentation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "web-development.formatReadme", + "description": "Formats a README markdown document according to configurable style preferences and standards. It accepts the raw README content as input, applies standard formatting rules such as header normalization, bullet list consistency, code block styling, and line width adjustments, then outputs the formatted markdown text ready for use in repositories.", + "category": "web-development", + "parameters": [ + { + "name": "readmeContent", + "type": "string", + "description": "The raw markdown content of the README file to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length for wrapping text lines in the README. Defaults to 80 characters.", + "required": false, + "defaultValue": "80" + }, + { + "name": "headerStyle", + "type": "string", + "description": "Preferred header style: 'atx' (prefix '#' characters) or 'setext' (underline style).", + "required": false, + "defaultValue": "atx" + }, + { + "name": "bulletStyle", + "type": "string", + "description": "Preferred bullet list style: '-' (dash), '*' (asterisk), or '+' (plus).", + "required": false, + "defaultValue": "-" + }, + { + "name": "codeBlockStyle", + "type": "string", + "description": "Code block style: 'fenced' (triple backticks) or 'indented' (4-space indentation).", + "required": false, + "defaultValue": "fenced" + }, + { + "name": "ensureTrailingNewline", + "type": "boolean", + "description": "If true, ensures the README ends with a newline character.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the formatted README markdown text under 'formattedReadme' key, suitable for saving or displaying." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to clean up or standardize a project's README markdown file for consistency and readability before publishing or committing to version control. It helps maintain uniform style across projects or teams by automatically applying formatting rules based on specified preferences.", + "limitations": "This tool does not rewrite or generate README content, nor does it validate markdown semantic correctness beyond formatting style. Complex markdown elements like embedded HTML might not be perfectly handled.", + "examples": [ + "Format a messy README markdown to use ATX headers, dashes for bullets, fenced code blocks, and wrap lines at 80 characters.", + "Convert a README from indented code blocks to fenced code blocks and ensure the document ends with a trailing newline.", + "Apply consistent bullet style and header formatting to a newly created README file." + ] + }, + "tags": [ + "markdown", + "readme", + "formatting", + "web-development", + "documentation", + "style", + "automation" + ], + "examples": [ + { + "inputJson": "{\"readmeContent\":\"#Project Title\\nThis project does amazing things. \\n* First feature\\n* Second feature\\n```\ndef example():\\n pass\\n```\",\"maxLineLength\":80,\"headerStyle\":\"atx\",\"bulletStyle\":\"-\",\"codeBlockStyle\":\"fenced\",\"ensureTrailingNewline\":true}", + "description": "Formats a basic README with bullet and code block style preference, enforcing 80 character line wrap." + }, + { + "inputJson": "{\"readmeContent\":\"Project Title\\n==============\\n\\nThis is an indented code block:\\n console.log('Hello');\",\"maxLineLength\":100,\"headerStyle\":\"atx\",\"bulletStyle\":\"*\",\"codeBlockStyle\":\"fenced\",\"ensureTrailingNewline\":false}", + "description": "Converts a setext header to ATX style and changes indented code blocks to fenced style." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Readme", + "context": null + } + }, + { + "name": "web-development.formatTemplate", + "description": "Formats HTML or text-based templates by applying indentation, line breaks, and consistent spacing for improved readability and maintainability. Accepts template content as a string, along with optional formatting options, and outputs a neatly formatted template string.", + "category": "web-development", + "parameters": [ + { + "name": "templateContent", + "type": "string", + "description": "The raw template string content to be formatted, such as HTML, XML, or text with placeholders.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces used for each indentation level in the formatted template.", + "required": false, + "defaultValue": "2" + }, + { + "name": "preserveLineBreaks", + "type": "boolean", + "description": "Whether to preserve existing line breaks in the template or reformat them.", + "required": false, + "defaultValue": "true" + }, + { + "name": "compressWhitespace", + "type": "boolean", + "description": "Whether to reduce multiple spaces and tabs to a single space, compressing whitespace where possible.", + "required": false, + "defaultValue": "false" + }, + { + "name": "templateType", + "type": "string", + "description": "Type of the template language (e.g., html, xml, handlebars, mustache) to apply appropriate formatting rules.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted template string under the key 'formattedTemplate'." + }, + "aiAgent": { + "useCase": "Use this tool to format and beautify template files or strings when generating or modifying templates in web development projects. This improves readability and consistency in templates such as HTML, XML, or templating languages, facilitating debugging and collaborative editing.", + "limitations": "Does not analyze template logic or validate syntax correctness. It only formats whitespace, indentation, and line breaks according to simple rules and does not execute or render the template.", + "examples": [ + "Format a raw HTML template string for better readability.", + "Apply consistent indentation of 4 spaces across a mustache template.", + "Reduce whitespace in an XML configuration template while preserving line breaks." + ] + }, + "tags": [ + "formatting", + "template", + "web", + "html", + "xml", + "templating" + ], + "examples": [ + { + "inputJson": "{\"templateContent\":\"

Hello,{{name}}

\",\"indentationSpaces\":2,\"preserveLineBreaks\":true,\"compressWhitespace\":false,\"templateType\":\"html\"}", + "description": "Format a simple HTML template with default 2-space indentation." + }, + { + "inputJson": "{\"templateContent\":\"
\\n

Item: {{item}}

\\n
\",\"indentationSpaces\":4,\"preserveLineBreaks\":true,\"compressWhitespace\":true,\"templateType\":\"html\"}", + "description": "Format a section template with 4-space indentation and compress extra spaces inside tags." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Template", + "context": null + } + }, + { + "name": "web-development.formatSpec", + "description": "Formats web development specification documents to improve readability and maintain consistent structure. Accepts spec content in markdown or JSON format, applies style guidelines such as indentation, heading styles, bullet points, and code blocks, then returns a neatly formatted version in the requested output format (markdown or JSON).", + "category": "web-development", + "parameters": [ + { + "name": "specContent", + "type": "string", + "description": "The raw specification document content to be formatted, either as markdown text or JSON string.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "The format of the input specContent: 'markdown' or 'json'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format after formatting: 'markdown' or 'json'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "styleGuide", + "type": "object", + "description": "Optional object specifying style preferences such as indentation size, heading style (e.g., hash marks count), bullet character, and code block style.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted specification content as a string in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to take a raw or inconsistently formatted web development specification document and transform it into a clear, consistent, and standardized format, improving readability and maintainability. Useful for preparing specs for sharing with teams or publishing.", + "limitations": "Cannot interpret or create specification content; it only formats given content. Complex semantic corrections or content validation are outside its scope.", + "examples": [ + "Format a markdown spec document to have consistent heading levels and bullet styles.", + "Convert a JSON-format spec into a neatly indented JSON string with sorted keys.", + "Reformat a markdown spec using a specified style guide with 4-space indent and dash bullet points." + ] + }, + "tags": [ + "web-development", + "formatting", + "documentation", + "specification", + "markdown", + "json" + ], + "examples": [ + { + "inputJson": "{\"specContent\":\"# API Spec\\n Use this document to describe endpoints.\\n- endpoint1\\n-endpoint2\",\"inputFormat\":\"markdown\",\"outputFormat\":\"markdown\"}", + "description": "Format a messy markdown specification document to consistent heading and bullet styles." + }, + { + "inputJson": "{\"specContent\":\"{\\n\\\"title\\\": \\\"API Spec\\\",\\n\\\"endpoints\\\": [\\\"endpoint1\\\", \\\"endpoint2\\\"]\\n}\",\"inputFormat\":\"json\",\"outputFormat\":\"json\"}", + "description": "Format a JSON string spec into properly indented JSON." + }, + { + "inputJson": "{\"specContent\":\"## Spec\\n* point1\\n*point2\",\"inputFormat\":\"markdown\",\"outputFormat\":\"markdown\",\"styleGuide\":{\"indentSize\":4,\"bulletChar\":\"-\"}}", + "description": "Reformat markdown spec with 4 spaces indentation and dash bullets." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Spec", + "context": null + } + }, + { + "name": "web-development.formatFAQ", + "description": "Formats a raw FAQ input by structuring questions and answers into a clean, consistent HTML or Markdown layout. Accepts an array of question-answer pairs and customization parameters for output style, enabling easy integration into web pages or documentation sites. Produces formatted text output ready for display.", + "category": "web-development", + "parameters": [ + { + "name": "faqEntries", + "type": "array", + "description": "Array of objects each containing 'question' and 'answer' strings to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the format of the output, such as 'html' or 'markdown'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeNumbering", + "type": "boolean", + "description": "Whether to number the questions in the output for easier reference.", + "required": false, + "defaultValue": "true" + }, + { + "name": "questionStyle", + "type": "string", + "description": "CSS class or markdown syntax for styling questions.", + "required": false, + "defaultValue": "\"faq-question\"" + }, + { + "name": "answerStyle", + "type": "string", + "description": "CSS class or markdown syntax for styling answers.", + "required": false, + "defaultValue": "\"faq-answer\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string 'formattedFAQ', which is the fully formatted FAQ content as per chosen options." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw FAQ data, typically a JSON or array of question-answer pairs, into a formatted web-friendly block for websites or documentation portals. It helps automate consistent styling and structuring FAQs for usability and aesthetic coherence.", + "limitations": "This tool does not generate FAQ content or validate factual correctness; it only formats provided data into HTML or Markdown representations. It also does not support interactive FAQ behaviors like collapsible answers without additional client-side scripting.", + "examples": [ + "Format an array of FAQs into HTML with numbered questions for a help page.", + "Generate a markdown-formatted FAQ list without numbering for a README file.", + "Apply custom CSS classes to FAQ entries for branding in a web app." + ] + }, + "tags": [ + "web", + "FAQ", + "formatting", + "documentation", + "HTML", + "Markdown" + ], + "examples": [ + { + "inputJson": "{\"faqEntries\":[{\"question\":\"What is your return policy?\",\"answer\":\"You can return any item within 30 days.\"},{\"question\":\"Do you ship internationally?\",\"answer\":\"Yes, we ship to most countries worldwide.\"}],\"outputFormat\":\"html\",\"includeNumbering\":true}", + "description": "Formats a simple FAQ array to numbered HTML styled with default CSS classes." + }, + { + "inputJson": "{\"faqEntries\":[{\"question\":\"How to reset my password?\",\"answer\":\"Click on 'Forgot password' and follow instructions.\"}],\"outputFormat\":\"markdown\",\"includeNumbering\":false,\"questionStyle\":\"**\",\"answerStyle\":\"_\"}", + "description": "Creates a markdown formatted FAQ without numbering, styling questions bold and answers italic." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "FAQ", + "context": null + } + }, + { + "name": "web-development.formatBrief", + "description": "Formats a textual project brief for web development purposes. Accepts raw text input of a brief and optional style preferences; processes the text to ensure consistent formatting, clear section organization, standard fonts, and proper paragraph spacing. Outputs a cleaned, styled version of the brief as HTML or plain text ready for inclusion in documentation or web presentation.", + "category": "web-development", + "parameters": [ + { + "name": "briefText", + "type": "string", + "description": "The raw textual content of the brief to be formatted. Required for processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format: 'html' for styled HTML output or 'plain' for plain text output.", + "required": false, + "defaultValue": "html" + }, + { + "name": "fontFamily", + "type": "string", + "description": "CSS font-family name to apply in the formatted output. Defaults to a clean, sans-serif font for readability.", + "required": false, + "defaultValue": "Arial, sans-serif" + }, + { + "name": "fontSize", + "type": "number", + "description": "Base font size in pixels to use in the formatted text.", + "required": false, + "defaultValue": "14" + }, + { + "name": "includeSectionHeaders", + "type": "boolean", + "description": "Whether to parse and highlight common section headers in the brief (e.g., Objectives, Timeline, Deliverables).", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length before wrapping text in plain output mode; ignored for HTML output.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted brief as a string in the requested format, and metadata about the formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when needing to prepare or standardize web project briefs for presentation, sharing, or documentation. It helps agents convert unstructured raw text briefs into professionally formatted documents with consistent styling and clear structure, output as HTML or plain text as needed.", + "limitations": "This tool does not perform deep semantic analysis of the brief content, cannot create briefs from scratch, nor does it handle complex multimedia content. It focuses on formatting textual briefs only.", + "examples": [ + "Format this raw project brief text into styled HTML for inclusion on our project wiki.", + "Convert this unformatted brief text into clean plain text with proper line breaks and readable font size.", + "Apply standard section headers highlighting and font styling to this client brief text and return it as HTML." + ] + }, + "tags": [ + "formatting", + "web-development", + "documentation", + "brief", + "html", + "plain-text", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"briefText\":\"Project Overview:\\nBuild a responsive website that showcases our product catalog.\\nObjectives:\\n- Create user-friendly navigation\\n- Optimize for mobile devices\\nTimeline:\\nCompletion expected in 3 months.\",\"outputFormat\":\"html\",\"fontFamily\":\"Helvetica, sans-serif\",\"fontSize\":16,\"includeSectionHeaders\":true}", + "description": "Input raw brief text with common headers, requesting HTML output with Helvetica font and 16px size." + }, + { + "inputJson": "{\"briefText\":\"This is a quick note about the website update. Make sure SEO tags are updated accordingly.\",\"outputFormat\":\"plain\",\"maxLineLength\":60}", + "description": "Simple short brief text requesting plain text formatting with line wrap at 60 characters." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Brief", + "context": null + } + }, + { + "name": "web-development.formatChecklist", + "description": "Formats a textual checklist input into a clean, structured HTML or markdown format suitable for embedding in web pages or documentation. Accepts raw checklist text with optional metadata, processes it to uniform style, indentation, and bullet styles, then outputs formatted checklist string in the selected format.", + "category": "web-development", + "parameters": [ + { + "name": "checklistText", + "type": "string", + "description": "Raw checklist text input, with items separated by lines, optionally including nesting.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'html' for web embedding or 'markdown' for documentation.", + "required": true, + "defaultValue": "html" + }, + { + "name": "includeCheckboxes", + "type": "boolean", + "description": "Whether to include interactive or visual checkboxes (HTML input elements or markdown checkboxes).", + "required": false, + "defaultValue": "true" + }, + { + "name": "bulletStyle", + "type": "string", + "description": "Bullet style for top-level items, e.g. '-', '*', or numbers for ordered lists.", + "required": false, + "defaultValue": "-" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indenting nested checklist items (only affects markdown).", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted checklist string in the requested format under 'formattedChecklist' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform a raw or loosely formatted textual checklist into a consistent, attractive format for web or documents, ensuring proper nesting, bullet styles, and optionally interactive checkboxes. Ideal for content automation or generating UI components from plain text.", + "limitations": "Cannot parse very complex checklist syntax with mixed styles or embedded HTML; limited to basic nesting and bullet styles. It does not apply styling beyond formatting and cannot convert to formats other than HTML or markdown.", + "examples": [ + "Format a raw text checklist into a clean HTML list with checkboxes for embedding on a website.", + "Convert a plain text list to markdown format with proper indentation and bullet styling for documentation.", + "Generate a nested checklist in HTML without checkboxes for static display." + ] + }, + "tags": [ + "web", + "formatting", + "checklist", + "html", + "markdown", + "content", + "automation" + ], + "examples": [ + { + "inputJson": "{\"checklistText\":\"Design homepage\\n- Create wireframe\\n- Review with team\\nDeploy site\\n- Run tests\\n- Go live\",\"outputFormat\":\"html\",\"includeCheckboxes\":true,\"bulletStyle\":\"-\",\"indentSize\":2}", + "description": "Formats a simple nested task checklist into an HTML list with checkboxes." + }, + { + "inputJson": "{\"checklistText\":\"Buy groceries\\n Fruits\\n Vegetables\\nClean house\",\"outputFormat\":\"markdown\",\"includeCheckboxes\":true,\"bulletStyle\":\"*\",\"indentSize\":4}", + "description": "Converts a checklist with two nesting levels into markdown with checkboxes and 4-space indentation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Checklist", + "context": null + } + }, + { + "name": "web-development.formatCode", + "description": "Formats source code strings according to specified syntax rules and style preferences to improve readability and maintainability. Accepts raw code as input along with language specification and optional style configuration, and returns the formatted code string.", + "category": "web-development", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw source code string that needs to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the code to determine proper parsing and formatting rules, e.g., 'javascript', 'python'.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleConfig", + "type": "object", + "description": "An optional object specifying style preferences such as indentation size, use of tabs vs spaces, line width limits, and other language-specific formatting rules.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string and any warnings or errors encountered during formatting." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically format code snippets or files to ensure consistent styling and improved readability across projects. It is especially helpful for standardizing code before commits, reviews, or sharing, and supports multiple languages and style configurations.", + "limitations": "Cannot fix semantic errors or refactor code logic; only performs syntactical formatting. Some complex or partial code fragments may not format correctly.", + "examples": [ + "Format a JavaScript function with 2-space indentation.", + "Format a Python script using PEP8 style guidelines.", + "Format a JSON string with 4 spaces indentation." + ] + }, + "tags": [ + "formatting", + "code", + "web-development", + "style", + "linting", + "beautify" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function test(){console.log('Hello, world!');}\",\"language\":\"javascript\",\"styleConfig\":{\"indentSize\":2,\"useTabs\":false}}", + "description": "Format a JavaScript function with 2 spaces indentation and spaces instead of tabs." + }, + { + "inputJson": "{\"code\":\"def foo():\\n print('bar')\",\"language\":\"python\",\"styleConfig\":{\"maxLineLength\":79}}", + "description": "Format a Python function conforming to max line length 79 for readability." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "web-development.formatTranscript", + "description": "Formats raw text transcripts by applying consistent punctuation, capitalization, speaker labeling, and paragraph breaks. Accepts plain text or JSON with speaker segments, processes it to improve readability and structure, and outputs a clean, formatted transcript suitable for publishing or archiving.", + "category": "web-development", + "parameters": [ + { + "name": "transcriptText", + "type": "string", + "description": "Raw transcript text input, may be plain text or semi-structured.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input transcript: plainText or jsonSegments.", + "required": true, + "defaultValue": "plainText" + }, + { + "name": "speakerLabels", + "type": "boolean", + "description": "Whether to detect and label speaker turns explicitly.", + "required": false, + "defaultValue": "true" + }, + { + "name": "addTimestamps", + "type": "boolean", + "description": "Whether to include timestamps before each speaker segment if available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum length of each line before inserting a line break for readability.", + "required": false, + "defaultValue": "80" + }, + { + "name": "capitalizeSentences", + "type": "boolean", + "description": "Whether to capitalize the first letter of each sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted transcript as a string, and optionally a JSON structured version with speaker segments and timestamps if parsed." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or semi-structured transcript data from interviews, meetings or speeches and want to produce a clean, human-readable, well-formatted transcript with proper punctuation, capitalization and speaker labels. Useful before publishing or sharing transcripts or for better readability.", + "limitations": "This tool does not perform transcription or audio processing; it requires text input. It cannot perfectly infer all speaker changes unless explicit segmentation is provided. Complex transcripts with overlapping speech or poor input structure may not format ideally.", + "examples": [ + "Format a raw meeting transcript to add speaker names and punctuation.", + "Convert JSON segments of a podcast transcript into a readable formatted text.", + "Reformat a plain text interview transcript applying consistent capitalization and paragraphs." + ] + }, + "tags": [ + "formatting", + "transcript", + "web-development", + "text-processing", + "readability" + ], + "examples": [ + { + "inputJson": "{\"transcriptText\":\"john: hello there how are you doing today\\nmary: i'm good thanks! and you?\",\"inputFormat\":\"plainText\",\"speakerLabels\":true,\"addTimestamps\":false,\"maxLineLength\":80,\"capitalizeSentences\":true}", + "description": "Format a plain text transcript with speaker labels and capitalization." + }, + { + "inputJson": "{\"transcriptText\":\"[{\\\"speaker\\\":\\\"User\\\",\\\"text\\\":\\\"hello john how are you?\\\", \\\"timestamp\\\":\\\"00:00:05\\\"},{\\\"speaker\\\":\\\"John\\\",\\\"text\\\":\\\"i'm doing well thanks for asking.\\\",\\\"timestamp\\\":\\\"00:00:10\\\"}]\",\"inputFormat\":\"jsonSegments\",\"speakerLabels\":true,\"addTimestamps\":true,\"maxLineLength\":80,\"capitalizeSentences\":true}", + "description": "Format a JSON structured transcript with speaker names and timestamps added." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Transcript", + "context": null + } + }, + { + "name": "web-development.formatMinutes", + "description": "Formats raw meeting minutes text into a clean, structured HTML document. Accepts unformatted minute text, applies parsing rules such as headings for agenda items, bullet points for decisions and actions, and timestamps formatting to produce readable, accessible minutes ready for web publishing or sharing.", + "category": "web-development", + "parameters": [ + { + "name": "rawMinutesText", + "type": "string", + "description": "Unstructured raw text of meeting minutes that need formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Flag to enable formatting or highlighting of timestamps within the minutes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "highlightDecisions", + "type": "boolean", + "description": "Whether to visually emphasize decision items in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format; supports 'html' (default) or 'markdown'.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted minutes as a string in the requested format and metadata such as word count and detected agenda items count." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw, often loosely formatted meeting minutes that need to be transformed automatically into a clean, readable, and structured format for web display or documentation. The tool helps maintain consistency and enhances readability, especially useful for publishing minutes in internal or external sites.", + "limitations": "This tool cannot interpret or correct semantic errors in meeting content, nor can it guarantee perfect accuracy in complex minutes with unusual formatting or shorthand. It also does not generate summaries or translate content.", + "examples": [ + "Format these raw minutes including timestamps and highlight decisions for our project meeting.", + "Convert plain text meeting notes into clean HTML minutes for our company intranet.", + "Output the meeting minutes in markdown format for our documentation repository." + ] + }, + "tags": [ + "formatting", + "minutes", + "meeting-notes", + "web-development", + "document-structuring", + "html", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"rawMinutesText\":\"Meeting started at 10:00 AM.\\nAgenda: Project Updates\\n- Discussed progress on phase 1.\\nDecision: Move to phase 2 next week.\\nAction: John to prepare report by Friday.\",\"includeTimestamps\":true,\"highlightDecisions\":true,\"outputFormat\":\"html\"}", + "description": "Raw minutes with timestamps and decisions to be formatted into HTML with decision highlights." + }, + { + "inputJson": "{\"rawMinutesText\":\"10:00 Meeting began\\nTopic 1: Budget Review\\nConclusion: Budget approved for Q4\\nNext steps: team to submit expense reports.\",\"includeTimestamps\":false,\"highlightDecisions\":false,\"outputFormat\":\"markdown\"}", + "description": "Convert meeting notes to markdown without highlighting decisions or timestamps." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Minutes", + "context": null + } + }, + { + "name": "web-development.formatBlogPost", + "description": "Formats a blog post content input to consistent styling and structure. Accepts raw blog post data including title, author, date, body text, and optional tags. Processes the input to normalize headings, paragraphs, code snippets, and lists according to best web development practices, then outputs a clean HTML string ready for website publishing.", + "category": "web-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the author of the blog post.", + "required": false, + "defaultValue": "" + }, + { + "name": "datePublished", + "type": "string", + "description": "Publication date in ISO 8601 format (e.g., 2024-05-01).", + "required": false, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Raw blog post content, including markdown or plain text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags or categories related to the blog post.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTOC", + "type": "boolean", + "description": "Whether to generate and include a Table of Contents based on headings.", + "required": false, + "defaultValue": "false" + }, + { + "name": "codeHighlighting", + "type": "boolean", + "description": "Whether to apply syntax highlighting to code blocks within the content.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted blog post as sanitized and styled HTML, including optional metadata fields." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw blog post data into a polished, web-ready HTML structure with normalized formatting, suitable for publishing on websites or CMS platforms. It is ideal for standardizing style, handling headings, paragraphs, code blocks, lists, and optionally generating a Table of Contents.", + "limitations": "Does not perform content moderation or verify factual accuracy. It cannot generate blog post content from scratch and assumes input is text-based content. It is not a markdown-to-HTML converter covering all edge cases, mostly focused on common blog post structures.", + "examples": [ + "Format my raw blog post text into consistent HTML with headings and code blocks styled.", + "Generate a clean blog post HTML with TOC for publishing.", + "Normalize a given blog article content adding tags and author metadata." + ] + }, + "tags": [ + "web", + "blog", + "formatting", + "html", + "content-management", + "publishing" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Introducing Our New Feature\",\"author\":\"Jane Doe\",\"datePublished\":\"2024-05-01\",\"content\":\"# Welcome to Our Update\\nWe are excited to introduce...\\n```js\\nconsole.log('Hello, blog!');\\n```\",\"tags\":[\"update\",\"feature\"],\"includeTOC\":true,\"codeHighlighting\":true}", + "description": "Format a blog post including markdown headings and JavaScript code with TOC and syntax highlighting enabled." + }, + { + "inputJson": "{\"title\":\"Weekly Recap\",\"content\":\"This week we had several important events...\\n- Event one\\n- Event two\\nStay tuned for more!\",\"tags\":[\"weekly\",\"news\"],\"includeTOC\":false,\"codeHighlighting\":false}", + "description": "Format a simple text blog post with bullet points, excluding TOC and code highlighting." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "BlogPost", + "context": null + } + }, + { + "name": "web-development.formatSummary", + "description": "Formats a given textual summary or document domain description into a clean, readable HTML snippet or plain text output. Accepts raw summary text and optional style preferences, then processes and returns a formatted version suitable for web display or documentation purposes.", + "category": "web-development", + "parameters": [ + { + "name": "summaryText", + "type": "string", + "description": "The raw plain text summary or document domain content to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "Desired output format: 'html' for HTML formatted output, or 'plain' for plain text.", + "required": false, + "defaultValue": "html" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of the formatted summary; longer summaries will be truncated gracefully.", + "required": false, + "defaultValue": "0" + }, + { + "name": "addBulletPoints", + "type": "boolean", + "description": "If true and the summary contains multiple sentences or items, formats them as bullet points in HTML output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "textColor", + "type": "string", + "description": "Optional CSS color name or code to apply to text in HTML format output.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted summary string under the key 'formattedSummary'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to prepare a raw textual summary or domain description for web presentation or user-friendly display, ensuring consistent formatting such as HTML tagging, bullet points, truncation, and color styling. Particularly useful for rendering summaries in documentation sites or web dashboards.", + "limitations": "Cannot perform deep semantic summarization or content rewriting; only formats given text. Does not generate summaries from raw data or documents.", + "examples": [ + "Format a long text summary into HTML with bullet points and max length 200.", + "Generate plain text summary truncated to 100 characters for logs.", + "Produce colored HTML snippet from raw summary text for display on webpage." + ] + }, + "tags": [ + "formatting", + "web", + "documentation", + "summary", + "html", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"summaryText\":\"This document describes the API endpoints available for user authentication, including login, logout, and password reset.\",\"formatType\":\"html\",\"addBulletPoints\":true,\"maxLength\":200}", + "description": "Format a short technical summary into HTML with bullet points for web display." + }, + { + "inputJson": "{\"summaryText\":\"User management domain covers creating, updating, deleting user profiles, and assigning roles.\",\"formatType\":\"plain\",\"maxLength\":50}", + "description": "Generate a plain text format summary truncated to 50 characters." + }, + { + "inputJson": "{\"summaryText\":\"System overview includes performance metrics, uptime, and error rates.\",\"formatType\":\"html\",\"textColor\":\"#336699\"}", + "description": "Produce an HTML output with custom text color for visual emphasis." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "web-development.formatChangelog", + "description": "Formats a raw changelog text or structured changelog entries into a standardized, readable markdown changelog document. Accepts either plaintext logs or JSON arrays of changelog items, applies consistent formatting rules including version headings, dates, categories, and entries, and returns a clean markdown string suitable for project documentation or release notes.", + "category": "web-development", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw plaintext changelog content to be formatted, optional if structuredEntries is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "structuredEntries", + "type": "array", + "description": "Array of changelog entry objects with version, date, categories and changes to format. Overrides inputText if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Format string for dates in versions (e.g., 'YYYY-MM-DD'), default is 'YYYY-MM-DD'.", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "includeUnreleasedSection", + "type": "boolean", + "description": "Whether to include an 'Unreleased' section if no version date is provided (default false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "categoryOrder", + "type": "array", + "description": "Ordered list of categories to list first; other categories come after alphabetically.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLineWidth", + "type": "number", + "description": "Maximum line width for wrapping text, 0 disables wrapping (default 80).", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted changelog content as a markdown string, ready to be saved or displayed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw or semi-structured changelog data into a professionally formatted markdown changelog document for display in repos, release notes, or documentation sites. Useful for standardizing changelogs from inconsistent inputs.", + "limitations": "Does not parse commit histories or generate changelog entries from version control systems. Does not validate semantic versioning correctness. Cannot fetch changelog data from external sources.", + "examples": [ + "Format raw plain text changelog into markdown", + "Format JSON changelog entries array with categories and dates", + "Reformat changelog wrapping lines to 100 characters width" + ] + }, + "tags": [ + "formatting", + "changelog", + "markdown", + "web-development", + "documentation", + "release-notes" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Version 1.0.0\\n- Added feature A\\n- Fixed bug B\\n\\nVersion 1.1.0\\n- Improved performance\\n- Updated dependencies\"}", + "description": "Format a basic plain text changelog into markdown with default settings." + }, + { + "inputJson": "{\"structuredEntries\":[{\"version\":\"2.0.0\",\"date\":\"2024-05-20\",\"categories\":{\"Added\":[\"New UI theme\"],\"Fixed\":[\"Crash on logout\"]}},{\"version\":\"2.1.0\",\"date\":\"2024-06-05\",\"categories\":{\"Changed\":[\"Updated API endpoints\"]}}],\"dateFormat\":\"MMMM D, YYYY\",\"includeUnreleasedSection\":true,\"categoryOrder\":[\"Added\",\"Changed\",\"Fixed\"]}", + "description": "Format structured changelog entries with specific date format, category order and an unreleased section." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Changelog", + "context": null + } + }, + { + "name": "web-development.formatArticle", + "description": "Formats a raw article text input by applying typographic rules, structuring paragraphs, adding headings, and optionally converting markdown or HTML elements into clean HTML output. It accepts plain text or minimal markup articles and returns a structured HTML string suitable for publishing on websites.", + "category": "web-development", + "parameters": [ + { + "name": "articleText", + "type": "string", + "description": "The raw article content as a plain text or markdown-formatted string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Specifies the format of the input text, options include 'plain', 'markdown', or 'html'.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "convertHeadingsToHtml", + "type": "boolean", + "description": "If true and input is markdown or plain text, converts detected headings into corresponding HTML heading tags.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before inserting a line break in the formatted output.", + "required": false, + "defaultValue": "80" + }, + { + "name": "removeExtraWhitespace", + "type": "boolean", + "description": "Whether to trim extra whitespace and normalize spacing between paragraphs and lines.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'html' or 'markdown'. Defaults to 'html'.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article string in the requested output format, suitable for direct embedding or publishing on web pages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw or loosely formatted article content into clean, web-ready format, applying consistent formatting rules, proper paragraph structure, heading tags, and typographic corrections. Ideal for processing articles from text sources before publishing on websites or CMS platforms.", + "limitations": "Does not perform content rewriting, language translation, or SEO optimization. It does not support complex HTML or embedded multimedia elements beyond basic formatting. It assumes the input is primarily text with light markup.", + "examples": [ + "Format a raw plain text article into properly structured HTML for website publication.", + "Convert markdown article content into clean HTML with headings and paragraphs.", + "Clean up article text by normalizing whitespace and limiting line length for better readability." + ] + }, + "tags": [ + "web", + "formatting", + "article", + "html", + "markdown", + "typography", + "content-management" + ], + "examples": [ + { + "inputJson": "{\"articleText\":\"# Introduction\\nThis is a sample article. It needs formatting.\",\"inputFormat\":\"markdown\",\"convertHeadingsToHtml\":true,\"outputFormat\":\"html\"}", + "description": "Convert markdown article text with headings to formatted HTML." + }, + { + "inputJson": "{\"articleText\":\"This is an unformatted plain text article. It lacks paragraphs and headings.\",\"inputFormat\":\"plain\",\"removeExtraWhitespace\":true,\"maxLineLength\":100,\"outputFormat\":\"html\"}", + "description": "Format plain text article by normalizing whitespace and splitting into paragraphs, output HTML." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "web-development.formatResume", + "description": "Formats raw resume data into a professionally styled, customizable document in PDF or HTML format. Accepts structured JSON input detailing personal info, experience, education, skills, and optional design preferences. Outputs a polished resume file suitable for job applications or online profiles.", + "category": "web-development", + "parameters": [ + { + "name": "resumeData", + "type": "object", + "description": "Structured JSON object containing resume sections such as personal info, work experience, education, skills, and optionally projects or certifications.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the resume document, e.g., 'pdf' or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "templateName", + "type": "string", + "description": "Name of the resume template style to apply for formatting, such as 'modern', 'classic', or 'minimalist'.", + "required": false, + "defaultValue": "modern" + }, + { + "name": "includePhoto", + "type": "boolean", + "description": "Whether to include a professional photo in the formatted resume if available in resumeData.", + "required": false, + "defaultValue": "false" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Preferred font family for the resume text, overriding template defaults if supplied.", + "required": false, + "defaultValue": "" + }, + { + "name": "primaryColor", + "type": "string", + "description": "Hex color code to customize primary highlight color in the resume template.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64 encoded string of the formatted resume document, content type (e.g., 'application/pdf'), and an optional preview URL if hosted." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw resume details in JSON format and need to generate a professional, visually appealing resume document in PDF or HTML for job applications, portfolio websites, or email submissions. It helps automate consistent formatting and styling from structured data inputs.", + "limitations": "Cannot generate resume data itself; requires structured resume input. Limited to predefined templates and customization options. Does not perform content validation, proofreading, or advanced graphic design.", + "examples": [ + "Format a JSON resume into a clean PDF resume with the 'modern' template.", + "Generate an HTML resume from input data with customized colors and fonts for an online portfolio.", + "Produce a minimalist PDF resume including the candidate's photo if provided." + ] + }, + "tags": [ + "resume", + "formatting", + "pdf", + "html", + "web-development", + "document-generation", + "career" + ], + "examples": [ + { + "inputJson": "{\"resumeData\":{\"personalInfo\":{\"name\":\"Alice Johnson\",\"email\":\"alice@example.com\",\"phone\":\"555-1234\",\"location\":\"Austin, TX\"},\"workExperience\":[{\"company\":\"Tech Innovations\",\"role\":\"Software Developer\",\"startDate\":\"2019-06\",\"endDate\":\"2023-04\",\"description\":\"Developed scalable web apps.\"}],\"education\":[{\"degree\":\"BSc Computer Science\",\"school\":\"State University\",\"year\":\"2019\"}],\"skills\":[\"JavaScript\",\"React\",\"Node.js\"]},\"outputFormat\":\"pdf\",\"templateName\":\"modern\",\"includePhoto\":false}", + "description": "Generate a PDF resume for Alice Johnson using the modern template without a photo." + }, + { + "inputJson": "{\"resumeData\":{\"personalInfo\":{\"name\":\"Bob Lee\",\"email\":\"bob@example.com\",\"phone\":\"555-5678\",\"location\":\"Seattle, WA\",\"photoUrl\":\"https://example.com/photos/bob.jpg\"},\"workExperience\":[{\"company\":\"Creative Agency\",\"role\":\"UX Designer\",\"startDate\":\"2017-01\",\"endDate\":\"2022-12\",\"description\":\"Designed user-centric interfaces.\"}],\"education\":[{\"degree\":\"BA Graphic Design\",\"school\":\"Art School\",\"year\":\"2016\"}],\"skills\":[\"Adobe XD\",\"Sketch\",\"Figma\"]},\"outputFormat\":\"html\",\"templateName\":\"minimalist\",\"includePhoto\":true,\"primaryColor\":\"#336699\",\"fontFamily\":\"Arial\"}", + "description": "Create an HTML minimalist resume for Bob Lee including his photo and customized colors and font." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Resume", + "context": null + } + }, + { + "name": "web-development.formatReleaseNotes", + "description": "Formats raw release notes text into a clean, readable, and professional document. Accepts raw release notes content with optional metadata, processes formatting including headings, bullet points, dates, versioning, and outputs a structured markdown or HTML document suitable for publication.", + "category": "web-development", + "parameters": [ + { + "name": "rawContent", + "type": "string", + "description": "Raw release notes text or markdown to format", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version number of the release, to include as a heading or label", + "required": false, + "defaultValue": "" + }, + { + "name": "releaseDate", + "type": "string", + "description": "Release date in ISO format to display prominently in the notes", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'markdown' or 'html'", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate and include a summary or highlights section at the top", + "required": false, + "defaultValue": "true" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "List of keywords to emphasize or highlight within the notes", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted release notes as a string in the specified format and metadata fields" + }, + "aiAgent": { + "useCase": "Use this tool when presenting raw or loosely structured release notes that need consistent professional formatting for public documentation, changelogs, or web pages. It's ideal for transforming draft notes into reader-friendly markdown or HTML formats with proper headings, bullets, and version/date highlights.", + "limitations": "Cannot generate content or verify the accuracy of release notes; does not translate or localize notes; limited to formatting existing text as provided.", + "examples": [ + "Format raw markdown notes into an HTML changelog for a new software version.", + "Add a release date and version heading when formatting notes to markdown.", + "Emphasize bug fix keywords in release notes by highlighting them in the output." + ] + }, + "tags": [ + "formatting", + "release notes", + "documentation", + "web-development", + "markdown", + "html" + ], + "examples": [ + { + "inputJson": "{\"rawContent\":\"## Bug Fixes\\n- Fixed login issue\\n- Resolved crash on startup\\n\\n## Features\\n- Added user profile page\",\"version\":\"2.1.0\",\"releaseDate\":\"2024-06-15\",\"outputFormat\":\"markdown\",\"includeSummary\":true,\"highlightKeywords\":[\"Fixed\",\"Resolved\"]}", + "description": "Formatting raw release notes with headings and highlights into markdown with version and date." + }, + { + "inputJson": "{\"rawContent\":\"- Fixed security vulnerabilities\\n- Improved performance\",\"version\":\"1.5.3\",\"releaseDate\":\"2024-05-01\",\"outputFormat\":\"html\",\"includeSummary\":false,\"highlightKeywords\":[\"Fixed\"]}", + "description": "Format brief release notes into HTML without summary, emphasizing fix keywords." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "ReleaseNotes", + "context": null + } + }, + { + "name": "web-development.formatEmail", + "description": "This tool accepts raw email content and optional metadata, then formats the email into a professional and consistent HTML and plain text structure suitable for sending. It processes input such as subject, body text, sender info, and recipient details to produce well-structured email outputs with proper styling and encoding.", + "category": "web-development", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "The main plain text content of the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "Optional HTML content for the email body. If provided, used instead of plain text formatting.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "The name of the sender to display in the email header.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "senderEmail", + "type": "string", + "description": "The email address of the sender to include in the email header.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "recipientName", + "type": "string", + "description": "Name of the recipient for personalized greeting, if needed.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Flag to include a default signature block at the end of the email.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') for localization of formatting rules and date/time if used.", + "required": false, + "defaultValue": "\"en\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing 'htmlEmail' with fully formatted HTML email content, and 'plainTextEmail' with cleaned and formatted plain text version ready for sending." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare clean, professional emails from raw content or templates, ensuring consistent formatting for both HTML-capable and plain-text-only email clients. It is useful for automating email generation, confirmation messages, newsletters, or transactional emails requiring polish and correctness.", + "limitations": "This tool does not handle sending emails or manage email headers beyond formatting sender and recipient info. It does not perform advanced personalization beyond basic name insertion or content personalization.", + "examples": [ + "Format an email by providing subject, plain text, optional HTML body, and sender/recipient information to generate ready-to-send email content.", + "Generate both HTML and plain text versions of a marketing email including a signature and localized formatting.", + "Prepare a transactional email message with consistent styling and optional personalized greeting based on recipient name." + ] + }, + "tags": [ + "email", + "formatting", + "html", + "plain text", + "communication", + "web-development", + "automation" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Welcome to Our Service\",\"bodyText\":\"Hello John,\\nThank you for joining us!\",\"bodyHtml\":\"

Hello John,

Thank you for joining us!

\",\"senderName\":\"Support Team\",\"senderEmail\":\"support@example.com\",\"recipientName\":\"John\",\"includeSignature\":true,\"language\":\"en\"}", + "description": "Format a welcome email with both HTML and plain text versions including a signature and personalized recipient name." + }, + { + "inputJson": "{\"subject\":\"Your Invoice\",\"bodyText\":\"Dear Customer,\\nPlease find your invoice attached.\",\"senderEmail\":\"billing@example.com\",\"includeSignature\":false}", + "description": "Generate a plain text invoice notification email without HTML or signature." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "web-development.formatInvoice", + "description": "Formats raw invoice data provided as an object or JSON string into a professionally styled HTML invoice document. It accepts invoice details including supplier info, client info, line items, taxes, discounts, and totals, then generates a clean, print-ready HTML string with consistent styling suitable for embedding on web pages or emailing.", + "category": "web-development", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "The invoice data object containing all necessary fields such as supplier, client, items, taxes, discounts, and totals.", + "required": true, + "defaultValue": "" + }, + { + "name": "currencySymbol", + "type": "string", + "description": "Currency symbol to display for monetary values, e.g., '$', '€', '£'.", + "required": false, + "defaultValue": "\"$\"" + }, + { + "name": "locale", + "type": "string", + "description": "Locale string (e.g., 'en-US', 'de-DE') to format dates and numbers appropriately.", + "required": false, + "defaultValue": "\"en-US\"" + }, + { + "name": "includeLogoUrl", + "type": "string", + "description": "URL of the company logo to include in the invoice header. If empty, no logo will be shown.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "showTaxBreakdown", + "type": "boolean", + "description": "Whether to display a detailed tax breakdown section on the invoice.", + "required": false, + "defaultValue": "true" + }, + { + "name": "themeColor", + "type": "string", + "description": "Primary hex color code for styling the invoice highlights and headers (e.g., '#4A90E2').", + "required": false, + "defaultValue": "\"#333333\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property 'html' with complete formatted invoice HTML content ready for display or emailing." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw invoice data and need to generate a visually presentable, professional invoice document in HTML format for web display or email embedding. It helps ensure consistent styling and formatting of invoices generated dynamically by applications or chatbots.", + "limitations": "This tool does not generate PDF files directly, nor does it send the invoice via email. It also does not validate invoice data semantics like tax rates or client legality; it expects valid input format.", + "examples": [ + "Format provided invoice JSON data into a clean HTML invoice for embedding on a client portal.", + "Generate an email-ready HTML snippet from raw invoice details with company logo and localized currency formatting.", + "Create a printable invoice HTML with a tax breakdown and custom theme color from structured invoice input." + ] + }, + "tags": [ + "invoice", + "formatting", + "web-development", + "html", + "document-generation", + "financial", + "billing" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"supplier\":{\"name\":\"TechCorp LLC\",\"address\":\"123 Tech Lane, Silicon Valley, CA\"},\"client\":{\"name\":\"Innovate Solutions\",\"address\":\"456 Innovation Drive, New York, NY\"},\"invoiceNumber\":\"INV-2024-0056\",\"date\":\"2024-06-15\",\"dueDate\":\"2024-07-15\",\"items\":[{\"description\":\"Software License\",\"quantity\":10,\"unitPrice\":99.99},{\"description\":\"Support Plan - 12 months\",\"quantity\":1,\"unitPrice\":249.00}],\"taxRate\":0.08,\"discount\":50,\"notes\":\"Thank you for your business!\"},\"currencySymbol\":\"$\",\"locale\":\"en-US\",\"includeLogoUrl\":\"https://example.com/logo.png\",\"showTaxBreakdown\":true,\"themeColor\":\"#0A74DA\"}", + "description": "Formatting a detailed invoice with supplier and client info, multiple line items, tax, discount, and a logo into styled HTML." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "web-development.composeReference", + "description": "Generates a structured website reference section by composing formatted citations from provided source details. Accepts an array of reference objects with fields such as author, title, publication, url, and date. Outputs a formatted, standardized reference list as an HTML string suitable for embedding in web pages.", + "category": "web-development", + "parameters": [ + { + "name": "references", + "type": "array", + "description": "An array of reference objects each containing citation details like author, title, publication, url, and date.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The citation style to format references, e.g., APA, MLA, Chicago. Defaults to APA.", + "required": false, + "defaultValue": "APA" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the composed reference list, either 'html' or 'markdown'. Defaults to 'html'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeLinks", + "type": "boolean", + "description": "Whether to include clickable URLs in the references if available. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object with a single property 'formattedReferences', a string containing the formatted references list in the specified output format." + }, + "aiAgent": { + "useCase": "Use this tool when generating a website or document content that requires a clear, standardized bibliography or sources section. It helps synthesize raw reference data into well-formatted reference lists suitable for web pages, enhancing source credibility and user experience.", + "limitations": "Cannot verify accuracy or completeness of references. Limited to formatting given data; does not fetch or validate source metadata. Style support limited to common academic styles and may not reflect every nuance of each style guide's latest version.", + "examples": [ + "Compose a reference section in APA style from a list of academic papers.", + "Format website sources as MLA references with clickable links in HTML.", + "Generate a bibliography in Chicago style for embedding in markdown documentation." + ] + }, + "tags": [ + "web-development", + "content-generation", + "references", + "citation-formatting", + "html", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"references\":[{\"author\":\"Smith, John\",\"title\":\"Understanding Web APIs\",\"publication\":\"Tech Journal\",\"date\":\"2021\",\"url\":\"https://techjournal.com/web-apis\"},{\"author\":\"Doe, Jane\",\"title\":\"Modern HTML Techniques\",\"publication\":\"Web Monthly\",\"date\":\"2022\"}],\"style\":\"APA\",\"outputFormat\":\"html\",\"includeLinks\":true}", + "description": "Compose an APA-style reference list in HTML including clickable links when URLs are present." + }, + { + "inputJson": "{\"references\":[{\"author\":\"Nguyen, Alex\",\"title\":\"CSS Grid Layout\",\"publication\":\"Design Weekly\",\"date\":\"2020\",\"url\":\"https://designweekly.com/css-grid\"}],\"style\":\"MLA\",\"outputFormat\":\"markdown\",\"includeLinks\":false}", + "description": "Create an MLA-formatted bibliography in markdown format without clickable links." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Reference", + "context": null + } + }, + { + "name": "web-development.formatContract", + "description": "Formats a legal or business contract document provided as text or structured JSON, applying consistent styling, organization, and numbering to all sections, clauses, and definitions. Returns a cleanly formatted contract in plain text or HTML format ready for review or presentation.", + "category": "web-development", + "parameters": [ + { + "name": "contractContent", + "type": "string", + "description": "The raw contract text or JSON string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the contractContent input; either 'text' for plain contract text or 'json' for structured contract object.", + "required": true, + "defaultValue": "text" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted contract, e.g., 'text' or 'html'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and insert a table of contents based on contract sections.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sectionNumberingStyle", + "type": "string", + "description": "Style of section numbering (e.g., 'numeric', 'roman', 'alpha').", + "required": false, + "defaultValue": "numeric" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indenting subsections and clauses.", + "required": false, + "defaultValue": "4" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract as a string in the requested output format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to format a contract document received as raw text or structured JSON into a clear, consistent, and professional style for presentation or legal review. It helps organize contract sections with appropriate numbering, indentation, and optional table of contents. It is useful for contract drafting assistants or document preparation tools.", + "limitations": "This tool does not perform legal validation or content correctness checks. It only formats the contract structurally and visually. Complex semantic restructuring or content interpretation is outside its scope.", + "examples": [ + "Format a plain text contract with default numeric section numbering and output as HTML.", + "Format a contract provided as a JSON object with custom indentation and include a table of contents.", + "Convert raw contract text to a neatly formatted plain text version with Roman numeral section numbering." + ] + }, + "tags": [ + "formatting", + "contract", + "legal-documents", + "web-development", + "document-structure", + "html", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"contractContent\":\"Section 1: Introduction\\nThis contract is between...\\nSection 2: Terms\\nThe terms are...\",\"inputFormat\":\"text\",\"outputFormat\":\"text\",\"includeTableOfContents\":false}", + "description": "Format a plain text contract with default settings producing plain text output." + }, + { + "inputJson": "{\"contractContent\":\"{\\\"sections\\\":[{\\\"title\\\":\\\"Introduction\\\",\\\"text\\\":\\\"This agreement...\\\"},{\\\"title\\\":\\\"Payment Terms\\\",\\\"text\\\":\\\"Payment must be made...\\\"}]}\",\"inputFormat\":\"json\",\"outputFormat\":\"html\",\"includeTableOfContents\":true,\"sectionNumberingStyle\":\"roman\",\"indentationSpaces\":2}", + "description": "Format a contract in JSON format into HTML with Roman numeral numbering, a table of contents, and 2 spaces indentation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "web-development.formatProposal", + "description": "Formats a web development proposal document to ensure consistent style, structure, and readability. Accepts unformatted or semi-structured proposal text or JSON containing proposal sections, applies formatting rules like headings, bullet points, and styling, and outputs a clean, well-organized proposal in markdown or HTML format.", + "category": "web-development", + "parameters": [ + { + "name": "proposalContent", + "type": "string", + "description": "Raw proposal text or JSON string containing proposal sections to be formatted. Can include project description, deliverables, timeline, and budget.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input proposal content. Supported values are 'text' for raw text or 'json' for structured JSON input.", + "required": false, + "defaultValue": "\"text\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the formatted proposal, such as 'markdown' or 'html'.", + "required": false, + "defaultValue": "\"markdown\"" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to automatically generate and include a table of contents based on proposal sections.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line to wrap text for readability (applicable primarily for text-based outputs).", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted proposal content string in the specified output format and metadata about the formatting process. Example fields: formattedContent (string), contentFormat (string)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to standardize the formatting of web development project proposals for clear presentation and consistent styling across mixed or raw input content. Helpful when integrating various proposal inputs into client-ready documents.", + "limitations": "Does not perform content validation, grammar correction, or proposal content generation. It only reformats existing content; complex layout designs beyond markdown or basic HTML are not supported.", + "examples": [ + "Format raw text proposal into markdown with table of contents.", + "Convert JSON structured proposal into clean HTML presentation format.", + "Wrap long lines in input text proposal to improve readability." + ] + }, + "tags": [ + "web", + "formatting", + "proposal", + "document", + "markdown", + "html", + "presentation", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"proposalContent\":\"Project: Website Redesign\\nObjectives:\\n- Modernize UI\\n- Improve SEO\\nDeliverables:\\n1. Design mockups\\n2. Responsive implementation\\nTimeline:\\n6 weeks\",\"inputFormat\":\"text\",\"outputFormat\":\"markdown\",\"includeTableOfContents\":true,\"maxLineLength\":80}", + "description": "Format a plain text web development proposal into markdown format including a table of contents for improved readability." + }, + { + "inputJson": "{\"proposalContent\":\"{\\\"title\\\":\\\"Website Redesign\\\",\\\"sections\\\":[{\\\"header\\\":\\\"Objectives\\\",\\\"content\\\":\\\"Modernize UI and improve SEO\\\"},{\\\"header\\\":\\\"Deliverables\\\",\\\"content\\\":\\\"Design mockups, responsive implementation\\\"},{\\\"header\\\":\\\"Timeline\\\",\\\"content\\\":\\\"6 weeks\\\"}]}\" ,\"inputFormat\":\"json\",\"outputFormat\":\"html\",\"includeTableOfContents\":false,\"maxLineLength\":80}", + "description": "Format a structured JSON proposal into a clean, styled HTML document without a table of contents." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Proposal", + "context": null + } + }, + { + "name": "web-development.composeCitation", + "description": "This tool accepts bibliographic information as input and composes a properly formatted citation string according to a specified citation style (e.g., APA, MLA, Chicago). It processes the provided metadata such as author, title, publication year, and source, and outputs a formatted citation suitable for web content or academic references.", + "category": "web-development", + "parameters": [ + { + "name": "authors", + "type": "array", + "description": "A list of author names in 'Last, First' format; at least one author required.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title of the work to cite.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationYear", + "type": "number", + "description": "The year the work was published.", + "required": false, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "The source or publisher of the work (journal name, book publisher, website, etc.).", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style to format the citation (e.g., 'APA', 'MLA', 'Chicago').", + "required": true, + "defaultValue": "APA" + }, + { + "name": "edition", + "type": "string", + "description": "Edition information if applicable (e.g., '2nd edition').", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL if the source is an online resource.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessDate", + "type": "string", + "description": "Date the online resource was accessed, in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property 'formattedCitation' which holds the citation string formatted according to the specified style." + }, + "aiAgent": { + "useCase": "Use this tool when generating citations dynamically for web pages, academic writing, or documentation where proper referencing is needed in a specified style using provided bibliographic metadata.", + "limitations": "This tool cannot verify the accuracy of bibliographic data provided or handle every edge case of citation style variations or extremely unusual sources. It assumes input data is accurate and complete for formatting.", + "examples": [ + "Compose an APA citation for a journal article authored by 'Smith, John' and 'Doe, Jane' titled 'The Future of AI' published in 2020 in the 'Journal of AI Research'.", + "Generate an MLA citation for a book authored by 'Brown, Lisa' titled 'Web Development Essentials' published by 'Tech Publishers' in 2018.", + "Create a Chicago style citation for an online resource with a given url and accessed date." + ] + }, + "tags": [ + "citation", + "formatting", + "bibliography", + "reference", + "web-content", + "academic-writing" + ], + "examples": [ + { + "inputJson": "{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"The Future of AI\",\"publicationYear\":2020,\"source\":\"Journal of AI Research\",\"citationStyle\":\"APA\"}", + "description": "APA style journal article citation with two authors and publication year." + }, + { + "inputJson": "{\"authors\":[\"Brown, Lisa\"],\"title\":\"Web Development Essentials\",\"publicationYear\":2018,\"source\":\"Tech Publishers\",\"citationStyle\":\"MLA\",\"edition\":\"2nd edition\"}", + "description": "MLA style book citation including edition." + }, + { + "inputJson": "{\"authors\":[\"Johnson, Mark\"],\"title\":\"An Introduction to Quantum Computing\",\"citationStyle\":\"Chicago\",\"url\":\"https://example.com/quantum\",\"accessDate\":\"2023-11-01\"}", + "description": "Chicago style citation for an online resource with access date." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Citation", + "context": null + } + }, + { + "name": "web-development.composeWord", + "description": "This tool composes a word by combining specified prefixes, root words, and suffixes with optional hyphenation and case formatting. It accepts input components and options, processes them to form a single syntactically correct word string suitable for web content or UI elements, and outputs the composed word as a string.", + "category": "web-development", + "parameters": [ + { + "name": "prefix", + "type": "string", + "description": "Optional prefix to prepend to the root word (e.g., 'un')", + "required": false, + "defaultValue": "" + }, + { + "name": "rootWord", + "type": "string", + "description": "The root word to form the base of the composed word (e.g., 'happy')", + "required": true, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "Optional suffix to append to the root word (e.g., 'ness')", + "required": false, + "defaultValue": "" + }, + { + "name": "useHyphen", + "type": "boolean", + "description": "Whether to insert hyphens between prefix, root, and suffix if multiple parts are present", + "required": false, + "defaultValue": "false" + }, + { + "name": "caseFormat", + "type": "string", + "description": "Format casing of the output word: 'lower', 'upper', 'camel' or 'pascal'", + "required": false, + "defaultValue": "lower" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed word as a string with the key 'composedWord'" + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate or compose custom words for web UI elements, variable names, or content that requires specific prefix and suffix combinations, formatted with particular casing or hyphenation. It assists in creating consistent, readable word forms dynamically.", + "limitations": "This tool cannot validate semantics or meaning of composed words; it strictly concatenates based on input parameters. It does not perform dictionary lookups or ensure word correctness beyond formatting.", + "examples": [ + "Compose the word with prefix 'pre', root word 'view', suffix 'ed', hyphenated and in camel case.", + "Create a simple word 'happy' in uppercase without prefix or suffix.", + "Generate a word combining root 'connect' and suffix 'ion' with pascal case and no hyphens." + ] + }, + "tags": [ + "composition", + "word", + "string-manipulation", + "web-development", + "formatting", + "prefix-suffix", + "hyphenation" + ], + "examples": [ + { + "inputJson": "{\"prefix\":\"pre\",\"rootWord\":\"view\",\"suffix\":\"ed\",\"useHyphen\":true,\"caseFormat\":\"camel\"}", + "description": "Compose 'pre-view-ed' formatted in camel case resulting in 'preViewEd' with hyphens disregarded in output but indicating segmentation." + }, + { + "inputJson": "{\"rootWord\":\"happy\",\"caseFormat\":\"upper\"}", + "description": "Compose single root word 'happy' converted fully to uppercase 'HAPPY' with no prefix or suffix." + }, + { + "inputJson": "{\"rootWord\":\"connect\",\"suffix\":\"ion\",\"caseFormat\":\"pascal\",\"useHyphen\":false}", + "description": "Compose word 'connection' formatted in PascalCase: 'Connection', no hyphens." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "web-development.formatDocument", + "description": "This tool accepts a raw HTML or XML document string and formats it by applying proper indentation and consistent spacing to improve readability and maintainability. It supports customizable indentation size and style (spaces or tabs) and outputs the formatted document as a string compatible with web standards.", + "category": "web-development", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The raw HTML or XML document content to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces or tabs to use per indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs for indentation instead of spaces.", + "required": false, + "defaultValue": "false" + }, + { + "name": "preserveNewlines", + "type": "boolean", + "description": "Whether to preserve existing blank lines between elements in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length before line breaking is applied. Use 0 to disable.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "string", + "description": "The formatted HTML or XML document content as a string with consistent indentation and spacing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to clean up or prettify raw or minified HTML or XML documents to improve readability for developers, code reviews, or automated processing. It is useful when generating or refactoring web content to ensure consistent style and maintainability.", + "limitations": "This tool does not validate if the input document is well-formed or semantically correct; malformed documents may lead to incorrect formatting or errors. It also does not modify content beyond spacing and indentation (no code transformations or linting).", + "examples": [ + "Format a raw, minified HTML document string to be more readable with 4 spaces indentation.", + "Convert an XML fragment with inconsistent spacing into a cleanly indented format using tabs.", + "Format an HTML snippet preserving blank lines but soft-wrap long lines beyond 100 characters." + ] + }, + "tags": [ + "web", + "html", + "xml", + "formatting", + "prettify", + "code-style", + "indentation" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"

Hello

\",\"indentationSize\":2,\"useTabs\":false,\"preserveNewlines\":true,\"maxLineLength\":80}", + "description": "Format a simple HTML snippet with 2 spaces indentation, preserve blank lines, and default line length." + }, + { + "inputJson": "{\"documentContent\":\"ValueAnother\",\"indentationSize\":1,\"useTabs\":true,\"preserveNewlines\":false,\"maxLineLength\":0}", + "description": "Format an XML document using tabs with indentation size 1 and no maximum line length constraint or blank line preservation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "web-development.formatReport", + "description": "Formats a report document based on a provided template, content sections, and styling preferences. Accepts a JSON object representing the report structure and formatting options, then outputs a well-structured HTML or PDF formatted report string ready for display or download.", + "category": "web-development", + "parameters": [ + { + "name": "reportData", + "type": "object", + "description": "An object representing the content and structure of the report, including title, sections, and data fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateStyle", + "type": "string", + "description": "A string indicating the preset formatting style/template to apply, e.g., 'professional', 'modern', or custom CSS class names.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report, either 'html' or 'pdf'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents based on report sections.", + "required": false, + "defaultValue": "true" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family to use for the report text, e.g., 'Arial', 'Times New Roman'.", + "required": false, + "defaultValue": "\"Arial, sans-serif\"" + }, + { + "name": "fontSize", + "type": "number", + "description": "Base font size in pixels for the report text.", + "required": false, + "defaultValue": "14" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report as a string and metadata about the report." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a visually consistent, formatted report document from raw content data and style preferences, suitable for web display or offline distribution as PDF. Ideal for automated report generation workflows in web apps or dashboards.", + "limitations": "This tool does not perform content validation or data aggregation; it only formats provided data into a report structure. The PDF generation depends on environment support for API or library capable of HTML to PDF conversion.", + "examples": [ + "Format a quarterly sales report JSON data into a professional styled HTML report with a table of contents", + "Generate a PDF report from technical project data using a modern template style", + "Produce a report with customized font and size for better readability" + ] + }, + "tags": [ + "web", + "document", + "report", + "formatting", + "html", + "pdf", + "templating" + ], + "examples": [ + { + "inputJson": "{\"reportData\":{\"title\":\"Quarterly Sales Report\",\"author\":\"Jane Doe\",\"date\":\"2024-06-01\",\"sections\":[{\"heading\":\"Executive Summary\",\"content\":\"Sales increased by 12% from last quarter.\"},{\"heading\":\"Regional Breakdown\",\"content\":\"North America led growth with 15% increase.\"}]},\"templateStyle\":\"professional\",\"outputFormat\":\"html\",\"includeTableOfContents\":true,\"fontFamily\":\"'Helvetica, sans-serif'\",\"fontSize\":16}", + "description": "Format given quarterly sales data into an HTML report with professional style, including TOC, using Helvetica font at size 16." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "web-development.composeQuote", + "description": "Generates a styled and formatted quote block for web pages, accepting input text, author name, and optional styling options. Produces an HTML snippet with semantic tags and inline styles or CSS classes suitable for direct embedding into website content.", + "category": "web-development", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The text content of the quote to be displayed.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author or source of the quote, displayed with the quote.", + "required": false, + "defaultValue": "" + }, + { + "name": "citation", + "type": "string", + "description": "Optional citation or reference for the quote, such as a book or speech title.", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "object", + "description": "Optional styling options for the quote block such as font style, color, and alignment.", + "required": false, + "defaultValue": "" + }, + { + "name": "useBlockquoteTag", + "type": "boolean", + "description": "Whether to wrap the quote in a blockquote HTML tag for semantic markup.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Contains the generated HTML string representing the composed quote, ready for embedding in web content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate a web-ready quote snippet from plain text input with optional author and citation, applying consistent styling and semantic HTML structure. Ideal for websites presenting quotations attractively without manual HTML coding.", + "limitations": "The tool does not handle multi-language text formatting beyond basic UTF-8, and it does not sanitize HTML input from users—security measures must be applied externally.", + "examples": [ + "Create a quote block with the quote text, author, and italic styling.", + "Generate a quote without author but with a citation and right text alignment.", + "Produce a plain quote wrapped in blockquote tag with default styling." + ] + }, + "tags": [ + "web-development", + "content-generation", + "html", + "quotes", + "styling" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"authorName\":\"Franklin D. Roosevelt\",\"style\":{\"fontStyle\":\"italic\",\"color\":\"#555555\",\"textAlign\":\"center\"},\"useBlockquoteTag\":true}", + "description": "Quote with author, italic style, centered text wrapped in blockquote." + }, + { + "inputJson": "{\"quoteText\":\"Simplicity is the ultimate sophistication.\",\"citation\":\"Leonardo da Vinci Collection\",\"useBlockquoteTag\":false}", + "description": "Quote with citation only, no blockquote wrapper." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Quote", + "context": null + } + }, + { + "name": "web-development.composeLink", + "description": "Creates an HTML link element ( tag) based on provided URL and display options. Accepts a target URL, optional link text, and attributes like CSS classes, id, title, target, and rel. Outputs a complete HTML anchor tag string ready for embedding in web pages.", + "category": "web-development", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The target URL to which the link will point.", + "required": true, + "defaultValue": "" + }, + { + "name": "text", + "type": "string", + "description": "The visible text for the link. Defaults to the URL if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "cssClasses", + "type": "array", + "description": "List of CSS class names to add to the anchor tag for styling.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "id", + "type": "string", + "description": "Optional id attribute for the anchor element.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title attribute to show on hover for the link.", + "required": false, + "defaultValue": "" + }, + { + "name": "target", + "type": "string", + "description": "Specifies where to open the linked document (e.g., '_blank', '_self'). Defaults to '_self'.", + "required": false, + "defaultValue": "_self" + }, + { + "name": "rel", + "type": "string", + "description": "Relationship attribute for the link (e.g., 'noopener noreferrer') for security/privacy.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the 'html' property with the fully composed anchor tag string." + }, + "aiAgent": { + "useCase": "Use this tool when generating dynamic web content that requires safe, customizable HTML links. It helps form standardized anchor tags from minimal input without manually constructing HTML, ideal for templating engines, CMS content, or automation agents building webpages.", + "limitations": "Does not validate URLs or sanitize inputs for security beyond attribute assignment. It does not render or check link functionality or accessibility compliance.", + "examples": [ + "Create a link to https://example.com with text 'Visit Example' opening in a new tab.", + "Generate a styled link with classes 'btn btn-primary' and title 'Home page' linking to '/'", + "Compose a simple link using only the provided URL where link text defaults to URL." + ] + }, + "tags": [ + "web", + "html", + "link", + "anchor", + "compose", + "web-development", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"text\":\"Visit Example\",\"cssClasses\":[\"btn\",\"btn-primary\"],\"id\":\"exampleLink\",\"title\":\"Go to Example\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}", + "description": "Creates a styled link to example.com opening in a new tab with security rel attributes." + }, + { + "inputJson": "{\"url\":\"/home\",\"text\":\"Home\",\"cssClasses\":[],\"id\":\"\",\"title\":\"Home page\",\"target\":\"_self\",\"rel\":\"\"}", + "description": "Creates a simple internal link to the home page with a title attribute." + }, + { + "inputJson": "{\"url\":\"https://openai.com\",\"text\":\"\",\"cssClasses\":[],\"id\":\"openaiLink\",\"title\":\"\",\"target\":\"_self\",\"rel\":\"\"}", + "description": "Creates a link where text defaults to the URL since no text was provided." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "web-development.composeHeading", + "description": "Generates an HTML heading element as a string based on provided text content, heading level (1-6), optional CSS class names, and optional inline styles. Useful for dynamically composing semantic and styled headings for web pages.", + "category": "web-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The textual content to be placed inside the heading element.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "The level of heading (1 to 6) indicating

to

. Defaults to 1.", + "required": false, + "defaultValue": "1" + }, + { + "name": "classNames", + "type": "array", + "description": "Optional list of CSS class names to add to the heading element.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "inlineStyles", + "type": "object", + "description": "Optional object of CSS style properties and values to include as inline styles.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "string", + "description": "An HTML string representing the composed heading element with attributes and content." + }, + "aiAgent": { + "useCase": "This tool is suited for AI agents that need to generate semantic HTML headings tailored with specific styles or classes. For example, when dynamically building a webpage heading based on user input or content, an agent can invoke this tool to produce the properly formatted heading tag, ensuring correct level usage and optional styling.", + "limitations": "This tool only composes the heading as an HTML string and does not insert it into a DOM or handle complex HTML escaping beyond basic text. It also does not validate CSS properties or sanitize inputs aggressively.", + "examples": [ + "Create an

heading with the text 'Welcome to the Site' and class 'main-title'", + "Generate a simple

heading with the text 'Home' with no additional styles", + "Make an

heading that includes inline styles for font color red and bold text" + ] + }, + "tags": [ + "html", + "heading", + "web-development", + "content-generation", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to Our Website\",\"level\":2,\"classNames\":[\"hero-title\",\"bold\"],\"inlineStyles\":{\"color\":\"#333\",\"fontWeight\":\"700\"}}", + "description": "Generating an

heading with multiple CSS classes and inline styles." + }, + { + "inputJson": "{\"text\":\"About Us\",\"level\":1}", + "description": "Simple

heading with default styling." + }, + { + "inputJson": "{\"text\":\"Features\",\"level\":3,\"inlineStyles\":{\"color\":\"blue\",\"textDecoration\":\"underline\"}}", + "description": "An

heading with blue and underlined text via inline styles." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Heading", + "context": null + } + }, + { + "name": "web-development.composeSentence", + "description": "Generates a coherent sentence suitable for web content composition based on specified keywords, tone, and style. The tool accepts an array of keywords, desired tone, and style parameters, then produces a clear, contextually relevant sentence for use in website text or UI elements.", + "category": "web-development", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of keywords or phrases to include or focus on in the sentence composition.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the sentence, e.g., formal, casual, friendly, professional.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "style", + "type": "string", + "description": "Writing style for the sentence, such as informative, promotional, descriptive.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated sentence in characters.", + "required": false, + "defaultValue": "120" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed sentence as a single string property named 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate a concise, context-aware sentence for website copy, UI text, or content snippets based on given keywords and style preferences. It assists in composing varied sentence structures aligned with the desired tone and purpose.", + "limitations": "It cannot generate long paragraphs or multiple sentences at once. It may not fully capture nuanced stylistic preferences or complex semantic relationships beyond the keywords provided.", + "examples": [ + "Compose a promotional sentence including keywords 'sustainable', 'eco-friendly', and 'affordable' with a friendly tone.", + "Generate a formal sentence with keywords 'privacy policy', 'data protection', and 'user consent'.", + "Create an informative sentence about 'cloud hosting' and 'scalability' in a professional style." + ] + }, + "tags": [ + "sentence generation", + "content creation", + "web copy", + "text generation", + "composition" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"secure\",\"login\",\"fast\"],\"tone\":\"professional\",\"style\":\"informative\",\"maxLength\":100}", + "description": "Generate a professional informative sentence about a secure and fast login." + }, + { + "inputJson": "{\"keywords\":[\"sale\",\"discount\",\"limited-time\"],\"tone\":\"friendly\",\"style\":\"promotional\",\"maxLength\":80}", + "description": "Create a friendly promotional sentence for a limited-time sale discount." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "web-development.composeComment", + "description": "Generates a formatted comment snippet for website content, given author details and comment text. Accepts input including the author's name, email (optional), comment content, and optional metadata such as date and reply-to ID. Produces a standardized comment object or markup suitable for insertion into web pages or comment management systems.", + "category": "web-development", + "parameters": [ + { + "name": "authorName", + "type": "string", + "description": "Name of the comment author, shown publicly.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the comment author, used for notifications or gravatar integration.", + "required": false, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The main textual content of the comment to be published.", + "required": true, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 formatted date string of when the comment was made; defaults to current date if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "replyToId", + "type": "string", + "description": "Identifier of the comment this is replying to if applicable; empty if a top-level comment.", + "required": false, + "defaultValue": "" + }, + { + "name": "isHtmlAllowed", + "type": "boolean", + "description": "Whether to allow HTML content inside the comment text; disables encoding if true.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured comment object containing author details, sanitized comment content, timestamp, and reply linkage, ready for storage or display." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate well-structured and possibly sanitized comment data for web development contexts, such as building comment sections or APIs that manage user feedback on web pages. It ensures consistent formatting, optional HTML sanitization, and metadata inclusion for web comments.", + "limitations": "Does not perform spam detection, sentiment analysis, or advanced validation beyond basic text encoding and formatting. It requires the caller to handle storage or further processing.", + "examples": [ + "Compose a new top-level comment from user 'Alice' with a text message.", + "Create a reply comment referencing comment ID '123abc' including author's email and current timestamp.", + "Generate a comment that supports HTML content in the comment text for richer formatting." + ] + }, + "tags": [ + "web", + "comment", + "compose", + "user-generated-content", + "markup", + "sanitization", + "response" + ], + "examples": [ + { + "inputJson": "{\"authorName\":\"Alice\",\"authorEmail\":\"alice@example.com\",\"commentText\":\"This is a great article!\",\"date\":\"2024-06-10T14:30:00Z\",\"replyToId\":\"\",\"isHtmlAllowed\":false}", + "description": "Top-level comment by Alice with plain text on a specific date." + }, + { + "inputJson": "{\"authorName\":\"Bob\",\"authorEmail\":\"\",\"commentText\":\"Thanks for the info!\",\"date\":\"\",\"replyToId\":\"123abc\",\"isHtmlAllowed\":true}", + "description": "A reply comment by Bob allowing HTML formatting, replying to comment ID '123abc' with current date." + }, + { + "inputJson": "{\"authorName\":\"Charlie\",\"commentText\":\"Looking forward to more updates.\",\"isHtmlAllowed\":false}", + "description": "Simple comment with minimal required fields from Charlie, no email or date specified (defaults applied)." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "web-development.composeText", + "description": "Generates well-structured website content text based on user-provided topics, tone, and style preferences. Accepts input parameters to guide content length, tone (formal, casual, etc.), and keywords to include, then produces coherent, human-like paragraphs optimized for web presentation.", + "category": "web-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the text to compose, guiding content focus.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone to use in the content, such as formal, casual, friendly, or professional.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "style", + "type": "string", + "description": "Preferred writing style, e.g., descriptive, persuasive, informative, or narrative.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords that should be naturally incorporated into the text for SEO or emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the composed text output, in number of words.", + "required": false, + "defaultValue": "200" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the output text, e.g., 'en' for English, 'es' for Spanish.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed text as a string, matching the input constraints." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate coherent and appropriately styled website textual content when given a clear topic and tone, facilitating content creation for landing pages, descriptions, or blog intros. It helps accelerate web development by producing quality text drafts ready for review or direct use.", + "limitations": "It cannot guarantee factual accuracy or deep technical expertise about specialized subjects and may require human editing for tone consistency and brand alignment.", + "examples": [ + "Compose a formal introductory paragraph about sustainable energy technology.", + "Generate a casual product description including keywords 'eco-friendly' and 'durable'.", + "Create an informative web page section on benefits of mindfulness with a maximum length of 150 words." + ] + }, + "tags": [ + "content-generation", + "text-composition", + "web-content", + "seo", + "writing-assistant" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work\",\"tone\":\"professional\",\"style\":\"informative\",\"keywords\":[\"flexibility\",\"work-life balance\"],\"maxLength\":150,\"language\":\"en\"}", + "description": "Compose a professional and informative paragraph about benefits of remote work including specified keywords." + }, + { + "inputJson": "{\"topic\":\"Coffee brewing methods\",\"tone\":\"casual\",\"style\":\"descriptive\",\"keywords\":[\"espresso\",\"french press\"],\"maxLength\":100}", + "description": "Generate a casual, descriptive text about different coffee brewing methods using given keywords." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "web-development.composeMention", + "description": "Generates HTML snippet for a user mention in web content, accepting user details and optional display options, producing valid HTML with semantic attributes for clear user reference and linking.", + "category": "web-development", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "The unique username or handle of the user to mention, used in the link and data attributes.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayName", + "type": "string", + "description": "The name to display for the user mention in the content. If omitted, username is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "profileUrl", + "type": "string", + "description": "The URL to the user's profile or page, used as the href attribute of the mention link.", + "required": true, + "defaultValue": "" + }, + { + "name": "cssClass", + "type": "string", + "description": "Optional CSS class(es) to apply to the mention element for custom styling.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAvatar", + "type": "boolean", + "description": "Flag to include a small avatar image next to the mention name, enhances visual recognition.", + "required": false, + "defaultValue": "false" + }, + { + "name": "avatarUrl", + "type": "string", + "description": "URL to the user's avatar image, required if includeAvatar is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "HTML string representing the user mention, including a link, display name, and optional avatar." + }, + "aiAgent": { + "useCase": "Use this tool when composing web content or posts that require mentioning users with semantic, clickable references. It ensures consistent, accessible HTML with optional avatar inclusion, suitable for social media, comments, forums, or collaborative tools.", + "limitations": "This tool doesn't validate URLs or usernames, nor does it fetch user data; it relies on input parameters. It outputs HTML string only; further integration into web pages or frameworks is needed for rendering.", + "examples": [ + "Create a mention for user 'john_doe' with display name 'John Doe' linking to his profile.", + "Generate mention HTML with avatar image for user 'alice123' for a social comment.", + "Produce a simple mention using only username and profile URL, no avatar, with custom CSS class." + ] + }, + "tags": [ + "web", + "mention", + "HTML", + "user", + "social", + "content", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"username\":\"john_doe\",\"displayName\":\"John Doe\",\"profileUrl\":\"https://site.com/users/john_doe\",\"cssClass\":\"user-mention\",\"includeAvatar\":false,\"avatarUrl\":\"\"}", + "description": "Mention user John Doe without avatar, styled with CSS class." + }, + { + "inputJson": "{\"username\":\"alice123\",\"displayName\":\"Alice\",\"profileUrl\":\"https://social.app/u/alice123\",\"cssClass\":\"mention highlight\",\"includeAvatar\":true,\"avatarUrl\":\"https://social.app/images/avatar/alice123.png\"}", + "description": "Mention Alice including avatar image and CSS highlight." + }, + { + "inputJson": "{\"username\":\"guest\",\"displayName\":\"\",\"profileUrl\":\"https://example.org/users/guest\",\"cssClass\":\"\",\"includeAvatar\":false,\"avatarUrl\":\"\"}", + "description": "Simple mention using username as display with no avatar or CSS." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Mention", + "context": null + } + }, + { + "name": "web-development.composeNotification", + "description": "This tool generates customizable web notification messages based on provided parameters such as title, message content, notification type (info, warning, error, success), and optional actions like buttons or links. It outputs a JSON structure suitable for rendering on web interfaces or integrating with front-end frameworks.", + "category": "web-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The headline or title text of the notification to display.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Main content or body text of the notification, explaining the alert or info.", + "required": true, + "defaultValue": "" + }, + { + "name": "type", + "type": "string", + "description": "Visual style and category of the notification; typical values include 'info', 'success', 'warning', 'error'.", + "required": false, + "defaultValue": "info" + }, + { + "name": "dismissable", + "type": "boolean", + "description": "Whether the notification includes a close button for the user to dismiss it.", + "required": false, + "defaultValue": "true" + }, + { + "name": "actions", + "type": "array", + "description": "Array of action objects containing label and URL that add interactive buttons/links within the notification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Optional duration in seconds after which the notification auto-dismisses. Zero or omitted means persistent.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured JSON object representing the composed notification including all given parameters formatted for front-end usage." + }, + "aiAgent": { + "useCase": "Use this tool when constructing structured notification messages for websites or applications, especially when needing consistent formatting and support for multiple notification types and actions. Ideal for generating front-end payloads that can be rendered by UI components.", + "limitations": "This tool does not handle notification delivery mechanisms such as push notifications or server-side scheduling. It only composes the notification data structure.", + "examples": [ + "Create an error notification with dismiss button and an action link to support.", + "Generate a success notification with only a title and message, no actions, auto-dismiss after 5 seconds.", + "Produce a warning notification with custom actions and persistent display until dismissed." + ] + }, + "tags": [ + "web", + "notification", + "message", + "ui", + "alert", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Session Expired\",\"message\":\"Your session has timed out due to inactivity.\",\"type\":\"error\",\"dismissable\":true,\"actions\":[{\"label\":\"Login Again\",\"url\":\"/login\"}],\"timeoutSeconds\":0}", + "description": "An error notification informing user session expired, with a dismiss button and a link to log in again." + }, + { + "inputJson": "{\"title\":\"Upload Complete\",\"message\":\"Your files have been successfully uploaded.\",\"type\":\"success\",\"dismissable\":true,\"actions\":[],\"timeoutSeconds\":5}", + "description": "A success notification confirming file upload completion that auto-dismisses after 5 seconds." + }, + { + "inputJson": "{\"title\":\"Low Disk Space\",\"message\":\"Your disk space is running low. Please free up space.\",\"type\":\"warning\",\"dismissable\":true,\"actions\":[{\"label\":\"Manage Storage\",\"url\":\"/storage\"}],\"timeoutSeconds\":0}", + "description": "A warning notification about low disk space with an action button for storage management, persistent until dismissed." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "web-development.composeReply", + "description": "Generates a professional reply message based on the provided context and previous message. Accepts the original message and optional parameters like tone and desired length, then composes a clear, context-aware response message suitable for email, chat, or forum communication.", + "category": "web-development", + "parameters": [ + { + "name": "originalMessage", + "type": "string", + "description": "The message text to which the reply will respond (usually a received email or chat message).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the reply, e.g., formal, friendly, concise, apologetic, etc.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "string", + "description": "Preferred length of the reply: short, medium, or long.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a signature block to the reply message.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customSignature", + "type": "string", + "description": "A custom signature text to append if includeSignature is true. Ignored otherwise.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed reply message text under the key 'replyMessage'." + }, + "aiAgent": { + "useCase": "This tool should be used by AI agents when replying to messages within web platforms like forums, customer support chats, or emails requiring coherent, contextually appropriate responses. It is ideal for automating replies that maintain a selected tone and length, improving communication efficiency.", + "limitations": "It cannot handle highly specialized legal, medical, or technical advice beyond general conversational replies. It may not perfectly capture extremely nuanced emotional context or sarcasm.", + "examples": [ + "Compose a friendly reply to an email asking for meeting availability.", + "Generate a concise, formal response to a customer complaint with an apology and resolution.", + "Create a brief, polite forum reply declining an invitation." + ] + }, + "tags": [ + "communication", + "reply", + "message", + "composition", + "web", + "automation" + ], + "examples": [ + { + "inputJson": "{\"originalMessage\":\"Hi team, can you please provide an update on the project status?\",\"tone\":\"formal\",\"length\":\"medium\",\"includeSignature\":true,\"customSignature\":\"Best regards, John\"}", + "description": "Generate a formal medium-length reply to request for project status update including a signature." + }, + { + "inputJson": "{\"originalMessage\":\"Are you attending the meetup next week?\",\"tone\":\"friendly\",\"length\":\"short\",\"includeSignature\":false,\"customSignature\":\"\"}", + "description": "Generate a short and friendly reply to an informal event invitation without signature." + }, + { + "inputJson": "{\"originalMessage\":\"Your order arrived damaged. I want a refund.\",\"tone\":\"apologetic\",\"length\":\"medium\",\"includeSignature\":true,\"customSignature\":\"Customer Support Team\"}", + "description": "Generate a medium length apologetic customer support reply addressing a refund request with signature." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Reply", + "context": null + } + }, + { + "name": "web-development.composeParagraph", + "description": "Composes a well-structured paragraph of text for web content based on a given topic and style preferences. Accepts input parameters including topic keywords, tone, length, and optional specific content points, processing them to output a coherent paragraph suitable for website use or content blocks.", + "category": "web-development", + "parameters": [ + { + "name": "topicKeywords", + "type": "array", + "description": "List of keywords or phrases to include in the paragraph to guide the content focus.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the paragraph, e.g., formal, casual, persuasive, informative.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the paragraph in number of sentences. Typically between 3 and 7.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includePoints", + "type": "array", + "description": "Optional list of specific points or facts to ensure inclusion in the paragraph content.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text as a string under the key 'paragraph'." + }, + "aiAgent": { + "useCase": "Use this tool when generating descriptive or informative paragraphs for webpages, blogs, or other web-based textual content. Ideal for assisting in content creation by providing focused, coherent paragraphs tailored to given keywords, tone, and length requirements.", + "limitations": "Cannot guarantee factual accuracy or deep domain expertise; the generated text may require human review for correctness and style consistency.", + "examples": [ + "Generate a persuasive paragraph about the benefits of organic gardening using keywords like 'eco-friendly' and 'sustainable'.", + "Compose an informative paragraph summarizing key features of a new software product targeting developers.", + "Write a casual paragraph highlighting top tourist attractions in Paris including specific landmarks." + ] + }, + "tags": [ + "content generation", + "paragraph writing", + "web content", + "text synthesis", + "tone adaptation", + "SEO" + ], + "examples": [ + { + "inputJson": "{\"topicKeywords\":[\"responsive design\",\"mobile\",\"user experience\"],\"tone\":\"informative\",\"length\":5}", + "description": "Generate an informative paragraph focused on responsive design improving mobile user experience." + }, + { + "inputJson": "{\"topicKeywords\":[\"cloud security\",\"data protection\"],\"tone\":\"formal\",\"length\":6,\"includePoints\":[\"compliance standards\",\"encryption methods\"]}", + "description": "Create a formal paragraph addressing cloud security, emphasizing compliance standards and encryption methods." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-development.composeThread", + "description": "Composes a communication thread for web applications by accepting thread metadata, participants, and initial messages. It processes the input to structure a thread object suitable for posting or storing in forums, chat apps, or customer support systems, producing a fully formatted thread ready for use.", + "category": "web-development", + "parameters": [ + { + "name": "threadTitle", + "type": "string", + "description": "The title or subject of the communication thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "Array of participant user IDs or usernames involved in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessages", + "type": "array", + "description": "Array of initial messages for the thread, each with sender ID, timestamp, and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "isPinned", + "type": "boolean", + "description": "Flag indicating if the thread should be pinned or highlighted.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags or labels to categorize the thread.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the composed thread with structured metadata, participant info, message array, pinned status, tags, and a unique thread ID." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create a new communication thread in a web app context—such as initializing forums, support ticket discussions, or group chats—by defining thread metadata, participants, and initial messages to construct a complete thread structure for immediate use or storage.", + "limitations": "This tool does not handle message content moderation, real-time message delivery, or persistent storage—it only composes the thread structure. It also does not manage participant authentication or authorization.", + "examples": [ + "Create a new support thread titled 'Payment Issue' with customer and agent participants and first message describing problem.", + "Compose a forum thread with title, multiple participants, and multiple initial introductory messages.", + "Initialize a chat thread between three users with one greeting message and mark it as pinned." + ] + }, + "tags": [ + "communication", + "thread", + "web", + "messaging", + "forum", + "chat", + "support" + ], + "examples": [ + { + "inputJson": "{\"threadTitle\":\"Feature Request Discussion\",\"participants\":[\"user123\",\"dev456\"],\"initialMessages\":[{\"senderId\":\"user123\",\"timestamp\":\"2024-06-01T09:30:00Z\",\"content\":\"I would love to see dark mode support.\"}],\"isPinned\":false,\"tags\":[\"feature\",\"discussion\"]}", + "description": "Compose a new thread for discussing a feature request with two participants and one initial message." + }, + { + "inputJson": "{\"threadTitle\":\"Customer Support - Login Issues\",\"participants\":[\"customer789\",\"agent101\"],\"initialMessages\":[{\"senderId\":\"customer789\",\"timestamp\":\"2024-06-02T14:00:00Z\",\"content\":\"Unable to login after password reset.\"},{\"senderId\":\"agent101\",\"timestamp\":\"2024-06-02T14:05:00Z\",\"content\":\"We're looking into this issue.\"}],\"isPinned\":true,\"tags\":[\"support\",\"login\"]}", + "description": "Create a pinned support thread about login issues with two messages from customer and agent." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Thread", + "context": null + } + }, + { + "name": "web-development.composeChannel", + "description": "Creates a new communication channel configuration for a web platform by accepting channel type, participants, access controls, and optional metadata. Validates inputs and returns a structured channel object with unique ID suitable for integration into messaging or notification systems.", + "category": "web-development", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of the channel such as 'chat', 'announcement', or 'support'.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of user identifiers who will be part of the channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Determines if the channel is private or public.", + "required": false, + "defaultValue": "false" + }, + { + "name": "accessControls", + "type": "object", + "description": "Object defining permissions and roles for participants, e.g., {admin: [userId1], member: [userId2,userId3]}.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional channel info like description or tags.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the fully composed channel, including id, type, participant list, privacy status, access controls, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically set up a communication channel in a web application platform, providing necessary configuration details like participant list and permissions. It's designed for creating structured channels for chat, notifications, or announcements with configurable privacy and roles.", + "limitations": "This tool does not send messages or manage real-time communication sessions; it only composes channel configurations. It assumes participant identifiers and permission formats are valid externally.", + "examples": [ + "Create a private chat channel for three users with one admin and two members.", + "Compose a public announcement channel with no restrictions and descriptive metadata.", + "Set up a support channel with specific access controls assigning different roles." + ] + }, + "tags": [ + "channel", + "communication", + "web", + "configuration", + "compose", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"chat\",\"participants\":[\"user123\",\"user456\",\"user789\"],\"isPrivate\":true,\"accessControls\":{\"admin\":[\"user123\"],\"member\":[\"user456\",\"user789\"]},\"metadata\":{\"description\":\"Team project chat\"}}", + "description": "Creates a private chat channel with three users, designating one as admin and two as members, adding a description." + }, + { + "inputJson": "{\"channelType\":\"announcement\",\"participants\":[],\"isPrivate\":false,\"accessControls\":{},\"metadata\":{\"topic\":\"Quarterly Updates\",\"tags\":[\"company\",\"news\"]}}", + "description": "Creates a public announcement channel without participants restriction, including topic and tags in metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Channel", + "context": null + } + }, + { + "name": "web-development.composeReadme", + "description": "Generates a well-structured README.md file for a web development project based on input parameters such as project name, description, technologies used, installation instructions, usage examples, contribution guidelines, and license. Outputs the complete markdown content string for immediate use.", + "category": "web-development", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the web development project.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief summary describing the project's purpose and features.", + "required": true, + "defaultValue": "" + }, + { + "name": "technologies", + "type": "array", + "description": "List of key technologies, frameworks, or libraries used in the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions to install and set up the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "string", + "description": "Code snippets or explanations illustrating how to run or use the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "contributionGuidelines", + "type": "string", + "description": "Instructions and rules for contributing to the project, including code style or pull requests.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "The license under which the project is released, e.g., MIT, Apache 2.0, GPL.", + "required": false, + "defaultValue": "MIT" + } + ], + "returns": { + "type": "string", + "description": "A string containing the complete README.md content formatted in markdown." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a professional README.md for a web development project from key metadata and instructions. It helps create consistent documentation quickly, ideal for initializing repos or updating project docs without manual formatting.", + "limitations": "This tool does not fetch or analyze code; it relies entirely on user-provided input. It cannot validate technical correctness or provide advanced documentation like API references or diagrams.", + "examples": [ + "Generate README for a React app with installation and usage instructions", + "Create README including contribution guidelines and license details", + "Compose a README listing project technologies and a project description" + ] + }, + "tags": [ + "documentation", + "readme", + "markdown", + "web-development", + "automation", + "project-setup" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"AwesomeWebApp\",\"projectDescription\":\"A powerful web app for managing tasks.\",\"technologies\":[\"React\",\"Node.js\",\"MongoDB\"],\"installationInstructions\":\"1. Clone repo\\n2. Run npm install\\n3. Run npm start\",\"usageExamples\":\"Open browser at localhost:3000 to use the app.\",\"contributionGuidelines\":\"Please fork and submit pull requests with descriptive messages.\",\"license\":\"MIT\"}", + "description": "Generate a full README file with all relevant sections for a React + Node.js project." + }, + { + "inputJson": "{\"projectName\":\"SimplePortfolio\",\"projectDescription\":\"Personal portfolio website.\",\"technologies\":[\"HTML\",\"CSS\",\"JavaScript\"],\"installationInstructions\":\"Just open index.html in any browser.\",\"usageExamples\":\"Showcases projects and contact info.\",\"contributionGuidelines\":\"No contributions accepted.\",\"license\":\"Apache 2.0\"}", + "description": "Create README for a simple static portfolio website with basic instructions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Readme", + "context": null + } + }, + { + "name": "web-development.composeMessage", + "description": "Generates a well-structured message for web communication by accepting parameters such as recipient, subject, message body, and optional formatting or personalization data. It produces a formatted message string ready for sending via email, chat, or web notifications.", + "category": "web-development", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "The email address or username of the message recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject or title of the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content or text of the message to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Optional object specifying formatting rules such as bold, italic, or bullet points.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "personalizationData", + "type": "object", + "description": "Optional key-value pairs to personalize the message (e.g., recipient name, company).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully composed message as a formatted string, including headers and body ready for dispatch." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create clear, formatted messages for communication channels within web applications, such as sending notification emails, chat messages, or alerts. It helps structure and personalize messages programmatically.", + "limitations": "This tool does not send the message, nor integrates with delivery protocols; it only composes the content and formatting. It does not perform language translation or advanced natural language generation beyond templated personalization.", + "examples": [ + "Compose a notification email to user@example.com with the subject 'Welcome' and a personalized welcome message including the user's first name.", + "Create a formatted chat message with bullet points for system updates addressed to admin user.", + "Generate a simple alert message body with no special formatting to notify a user about a password reset request." + ] + }, + "tags": [ + "web", + "message", + "compose", + "communication", + "email", + "notification" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"jane.doe@example.com\",\"subject\":\"Welcome to Our Service\",\"body\":\"Hello {{name}},\\nThank you for joining! We're excited to have you.\",\"formattingOptions\":{\"bold\":true},\"personalizationData\":{\"name\":\"Jane\"}}", + "description": "Compose a personalized welcome email in bold to Jane Doe." + }, + { + "inputJson": "{\"recipient\":\"adminUser\",\"subject\":\"System Update\",\"body\":\"Please review the following updates:\\n- Patch 1 applied\\n- Server restart at midnight\",\"formattingOptions\":{\"bulletPoints\":true},\"personalizationData\":{}}", + "description": "Compose a system update message with bullet points to an admin user." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "web-development.composeTemplate", + "description": "Composes an HTML or text-based template by injecting dynamic content into placeholders. Accepts a template string with placeholders and a data object; produces a final formatted string with all placeholders replaced accordingly, suitable for emails, webpages, or document generation.", + "category": "web-development", + "parameters": [ + { + "name": "templateString", + "type": "string", + "description": "The raw template containing placeholders to be replaced with dynamic content, e.g., '{{username}}'.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Key-value pairs where keys correspond to placeholders in the template and values are the content to replace them.", + "required": true, + "defaultValue": "" + }, + { + "name": "placeholderDelimiter", + "type": "array", + "description": "An array of two strings defining the opening and closing delimiters for placeholders. Default is ['{{','}}'].", + "required": false, + "defaultValue": "[\"{{\",\"}}\"]" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "Flag indicating whether to escape HTML special characters in injected content to prevent XSS. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "If true, the tool throws errors on missing data keys for placeholders; otherwise leaves placeholders unchanged. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed template string with placeholders replaced by corresponding data values." + }, + "aiAgent": { + "useCase": "Use this tool when dynamically creating web templates or documents that require runtime substitution of variable content within a consistent structure, such as generating personalized emails, HTML pages, or text reports. It handles placeholder replacement securely with options for escaping HTML and strict validation.", + "limitations": "Does not perform advanced templating logic such as loops, conditionals, or functions. Complex templates requiring logic processing must use a dedicated templating engine.", + "examples": [ + "Compose a welcome email template by injecting user name and signup date.", + "Generate a simple webpage snippet replacing a title and content placeholders with provided text.", + "Fill a plain text invoice template with customer and order details." + ] + }, + "tags": [ + "webdevelopment", + "template", + "string-replacement", + "html", + "email", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"templateString\":\"

Welcome, {{username}}!

Your account balance is {{balance}}.

\",\"data\":{\"username\":\"Alice\",\"balance\":\"$100\"}}", + "description": "Inject user name and balance into an HTML welcome message." + }, + { + "inputJson": "{\"templateString\":\"Dear {{name}},\\nThank you for your order #{{orderId}}.\",\"data\":{\"name\":\"Bob\",\"orderId\":\"12345\"}}", + "description": "Fill a plain text notification template with customer name and order ID." + }, + { + "inputJson": "{\"templateString\":\"
{{greeting}} {{user}}!
\",\"data\":{\"greeting\":\"Hello\",\"user\":\"Eve\"},\"escapeHtml\":true}", + "description": "Compose a small HTML snippet greeting the user, ensuring HTML entities are escaped." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Template", + "context": null + } + }, + { + "name": "web-development.composeChecklist", + "description": "Generates a detailed and organized checklist document tailored for web development projects. Accepts input parameters including project phase, focus areas (e.g., UI, backend, testing), and optional custom tasks. Processes this information to produce a structured checklist covering essential tasks, best practices, and validation points suitable for the specified project context.", + "category": "web-development", + "parameters": [ + { + "name": "projectPhase", + "type": "string", + "description": "Specifies the current phase of the web development project (e.g., planning, development, testing, deployment).", + "required": true, + "defaultValue": "" + }, + { + "name": "focusAreas", + "type": "array", + "description": "An array of key focus areas for the checklist, such as ['UI','backend','performance','security'].", + "required": true, + "defaultValue": "[]" + }, + { + "name": "includeCustomTasks", + "type": "boolean", + "description": "If true, allows inclusion of user-defined custom tasks in the checklist.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customTasks", + "type": "array", + "description": "List of custom task strings to include when includeCustomTasks is true.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output checklist document; can be 'json' for structured data or 'markdown' for formatted text.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the checklist organized by categories with tasks and status placeholders. If markdown is chosen, returns a string with the formatted markdown checklist." + }, + "aiAgent": { + "useCase": "Use this tool when generating structured checklists for various phases of web development to ensure comprehensive coverage of essential tasks and best practices. It helps project managers, developers, and QA engineers systematically track progress and verify readiness in specific areas such as UI, backend, or testing.", + "limitations": "This tool does not generate real-time updates or track task completion status; it only composes an initial checklist based on input parameters. It also cannot customize subtasks deeply beyond provided custom tasks.", + "examples": [ + "Generate a checklist for the testing phase focusing on backend and performance.", + "Create a development phase checklist including UI and security-related tasks plus some custom ones.", + "Produce a markdown formatted deployment checklist covering all areas." + ] + }, + "tags": [ + "web", + "checklist", + "project management", + "task planning", + "documentation", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"projectPhase\":\"testing\",\"focusAreas\":[\"backend\",\"performance\"],\"includeCustomTasks\":false}", + "description": "Generates a backend and performance testing checklist for the testing project phase." + }, + { + "inputJson": "{\"projectPhase\":\"development\",\"focusAreas\":[\"UI\",\"security\"],\"includeCustomTasks\":true,\"customTasks\":[\"Review accessibility compliance\",\"Verify CSP headers\"],\"outputFormat\":\"markdown\"}", + "description": "Creates a markdown checklist for development focusing on UI and security with added custom tasks." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Checklist", + "context": null + } + }, + { + "name": "web-development.composeFAQ", + "description": "Creates a structured FAQ document by accepting an array of questions and answers. The tool processes the input to generate a well-formatted HTML or Markdown FAQ section suitable for integration into websites, improving user self-service support and information access.", + "category": "web-development", + "parameters": [ + { + "name": "questionsAndAnswers", + "type": "array", + "description": "An array of objects each containing a 'question' and its corresponding 'answer' as strings, representing FAQ entries to be included in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the format of the generated FAQ document, e.g., 'html' for HTML markup or 'markdown' for Markdown text.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeSchemaMarkup", + "type": "boolean", + "description": "Indicates whether to include structured data markup (FAQPage schema) for SEO enhancement in the output. Applies only for HTML format.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the FAQ section to be included at the top of the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the FAQ content as a string in the requested format under 'faqContent', and a 'contentType' string indicating MIME type like 'text/html' or 'text/markdown'." + }, + "aiAgent": { + "useCase": "Use this tool when generating FAQ sections for web pages by converting raw question-answer data into polished, standardized FAQ content in HTML or Markdown with optional SEO markup. Ideal for automating support content creation, enhancing user experience, and improving search engine visibility.", + "limitations": "Does not generate questions or answers automatically; relies on provided well-formatted input. Does not handle very large datasets efficiently. Output customization beyond basic formatting is limited.", + "examples": [ + "Generate an HTML FAQ section with schema markup from given questions and answers.", + "Create a Markdown FAQ document without schema markup for inclusion in a static site generator.", + "Add a title to the FAQ section and output in HTML format for a product support page." + ] + }, + "tags": [ + "web", + "faq", + "content-generation", + "html", + "markdown", + "seo" + ], + "examples": [ + { + "inputJson": "{\"questionsAndAnswers\":[{\"question\":\"What is your return policy?\",\"answer\":\"You can return any item within 30 days of purchase.\"},{\"question\":\"Do you offer technical support?\",\"answer\":\"Yes, 24/7 technical support is available via phone and email.\"}],\"outputFormat\":\"html\",\"includeSchemaMarkup\":true,\"title\":\"Frequently Asked Questions\"}", + "description": "Generate an HTML FAQ block with schema markup and title from two Q&A pairs." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "FAQ", + "context": null + } + }, + { + "name": "web-development.composeBrief", + "description": "This tool generates a concise project brief document for a website or web app based on input requirements. Given details like project goals, target audience, key features, and constraints, it composes a structured brief summarizing the domain, objectives, and scope to guide development teams. The output is a clear, formatted textual brief suitable for initial planning stages.", + "category": "web-development", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name or title of the web project to be briefed.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectGoals", + "type": "string", + "description": "A description of the main goals or objectives the website should achieve.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended users or audience for the website.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of primary features or functionalities the website should include.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "technicalConstraints", + "type": "string", + "description": "Any technical, budgetary, or timeline constraints relevant to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any other relevant information or instructions to include in the brief.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed project brief as a formatted string under 'briefText'." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to assist in creating a clear, structured project brief document for web development tasks. It helps transform scattered input details into a professional summary guiding development scope, requirements, and objectives.", + "limitations": "It cannot replace a detailed requirements gathering session with stakeholders. It produces a textual brief but does not generate visuals or formal project management documents.", + "examples": [ + "Create a project brief for an e-commerce site targeting millennials focusing on mobile-first design.", + "Compose a web app brief for a productivity tool with integrations and user collaboration features.", + "Generate a brief for a nonprofit organization's informational website with a limited budget." + ] + }, + "tags": [ + "web development", + "project brief", + "requirements", + "documentation", + "planning", + "web projects" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"EcoShop\",\"projectGoals\":\"Create an environmentally focused e-commerce platform that promotes sustainable products.\",\"targetAudience\":\"Eco-conscious shoppers aged 18-35.\",\"keyFeatures\":[\"mobile-friendly design\",\"sustainable product filters\",\"user reviews\"],\"technicalConstraints\":\"Launch within 6 months on a limited budget.\",\"additionalNotes\":\"Include multilingual support starting with English and Spanish.\"}", + "description": "Brief for an eco-friendly e-commerce site targeting young eco-conscious buyers." + }, + { + "inputJson": "{\"projectName\":\"TaskMaster Pro\",\"projectGoals\":\"Develop a web productivity app to enhance team collaboration and task management.\",\"targetAudience\":\"Small to medium business teams.\",\"keyFeatures\":[\"real-time collaboration\",\"calendar integration\",\"notifications\"],\"technicalConstraints\":\"Must integrate with existing Google Workspace APIs.\",\"additionalNotes\":\"Focus on intuitive UX.\"}", + "description": "Brief for a collaborative task management web app for SMB teams." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Brief", + "context": null + } + }, + { + "name": "web-development.composeMinutes", + "description": "This tool assists in composing meeting minutes by accepting details like meeting topics, attendees, discussions, decisions, and action items as input. It processes this structured data to generate a well-formatted minutes document in text or markdown format, ready for sharing or archiving.", + "category": "web-development", + "parameters": [ + { + "name": "meetingTitle", + "type": "string", + "description": "Title or subject of the meeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Date of the meeting in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "attendees", + "type": "array", + "description": "List of attendee names present at the meeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "agendaItems", + "type": "array", + "description": "Array of agenda items or topics discussed, each as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "discussionPoints", + "type": "object", + "description": "Mapping of agenda items to an array of discussion points or notes under each topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "decisionsMade", + "type": "object", + "description": "Mapping of agenda items to array of decisions or resolutions made for each topic.", + "required": false, + "defaultValue": "" + }, + { + "name": "actionItems", + "type": "array", + "description": "List of action items including description, assignee, and due date as objects.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatMarkdown", + "type": "boolean", + "description": "If true, formats the output as markdown; otherwise, plain text.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a formatted meeting minutes document as a string under the 'minutesDocument' key." + }, + "aiAgent": { + "useCase": "Use this tool to generate clear, professional meeting minutes from structured input such as agenda, attendees, discussions, and action items. It's ideal for teams wanting to automate or standardize minutes writing for project sprints, client meetings, or internal reviews.", + "limitations": "This tool does not record audio or transcribe spoken meetings, nor can it infer content beyond the provided input. It requires structured data to compose coherent minutes.", + "examples": [ + "Create meeting minutes for the weekly team sync including attendees, agenda, and decisions.", + "Generate minutes in markdown format for a project kickoff meeting with detailed action items.", + "Prepare a summary document listing decisions and assigned tasks from a client call." + ] + }, + "tags": [ + "web-development", + "document-generation", + "meeting", + "minutes", + "automation", + "productivity" + ], + "examples": [ + { + "inputJson": "{\"meetingTitle\":\"Sprint Planning Meeting\",\"date\":\"2024-06-01\",\"attendees\":[\"Alice\",\"Bob\",\"Charlie\"],\"agendaItems\":[\"Sprint goals\",\"Task assignments\"],\"discussionPoints\":{\"Sprint goals\":[\"Define priorities for next sprint\",\"Discuss timeline constraints\"],\"Task assignments\":[\"Alice to lead frontend tasks\",\"Bob to handle backend development\"]},\"decisionsMade\":{\"Sprint goals\":[\"Focus on user authentication and dashboard\"],\"Task assignments\":[\"Assign backend API to Bob\"]},\"actionItems\":[{\"description\":\"Setup authentication module\",\"assignee\":\"Alice\",\"dueDate\":\"2024-06-10\"},{\"description\":\"Design database schema\",\"assignee\":\"Bob\",\"dueDate\":\"2024-06-08\"}],\"formatMarkdown\":true}", + "description": "Generate markdown formatted minutes for a sprint planning meeting including attendees, agenda topics, discussion notes, decisions, and action items." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Minutes", + "context": null + } + }, + { + "name": "web-development.composeBlogPost", + "description": "This tool generates a complete, formatted blog post based on user inputs including title, author, main topics, target audience, and style preferences. It processes these inputs to compose coherent, well-structured content with optional SEO metadata and formatting options, outputting a ready-to-publish blog post in Markdown or HTML format.", + "category": "web-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the blog post to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the author to be displayed with the blog post.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "topics", + "type": "array", + "description": "List of main topics or keywords to cover within the blog post content.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for tone and content suitability (e.g., beginners, experts).", + "required": false, + "defaultValue": "\"general audience\"" + }, + { + "name": "style", + "type": "string", + "description": "Preferred writing style for the blog post (e.g., formal, casual, technical).", + "required": false, + "defaultValue": "\"informative\"" + }, + { + "name": "includeSEO", + "type": "boolean", + "description": "Whether to generate SEO-friendly metadata like meta description and keywords.", + "required": false, + "defaultValue": "false" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the blog post, either 'markdown' or 'html'.", + "required": false, + "defaultValue": "\"markdown\"" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate desired word count for the blog post content.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed blog post content with properties 'content' (string) and optionally 'seoMetadata' (object with meta description and keywords)" + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a full, publish-ready blog post from high-level inputs like title and topics. Ideal for automating content creation workflows, drafting posts quickly, or assisting in writing consistent blog entries tailored to a specific audience and style.", + "limitations": "The tool cannot guarantee factual accuracy or up-to-date information. It does not perform real-time fact checking or integrate with external data sources for dynamic content.", + "examples": [ + "Compose a 1200-word technical blog post titled 'The Future of AI in Healthcare' for expert readers with a formal style.", + "Create a casual blog post about 'Top 10 Travel Destinations in 2024' aimed at general audience, including SEO metadata.", + "Generate a markdown formatted blog post on 'Benefits of Remote Work' targeting corporate managers." + ] + }, + "tags": [ + "blogging", + "content-generation", + "markdown", + "html", + "seo", + "writing-assistant", + "web-content" + ], + "examples": [ + { + "inputJson": "{\"title\":\"The Benefits of Morning Exercise\",\"author\":\"Jane Doe\",\"topics\":[\"health\",\"exercise\",\"morning routine\"],\"targetAudience\":\"general audience\",\"style\":\"informative\",\"includeSEO\":true,\"format\":\"markdown\",\"wordCount\":800}", + "description": "Generate an 800-word informative blog post about morning exercise benefits with SEO metadata, formatted in markdown." + }, + { + "inputJson": "{\"title\":\"Advanced JavaScript Tips\",\"author\":\"John Smith\",\"topics\":[\"JavaScript\",\"programming\",\"web development\"],\"targetAudience\":\"expert developers\",\"style\":\"technical\",\"includeSEO\":false,\"format\":\"html\",\"wordCount\":1500}", + "description": "Create a technical, 1500-word blog post in HTML about advanced JavaScript techniques for expert developers, no SEO metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "BlogPost", + "context": null + } + }, + { + "name": "web-development.composeTranscript", + "description": "This tool accepts raw audio or video file URLs and optional speaker metadata, then processes and composes a clean, timestamped transcript in text or JSON format. It outputs a structured transcript suitable for embedding in websites or further text processing.", + "category": "web-development", + "parameters": [ + { + "name": "mediaUrl", + "type": "string", + "description": "URL of the audio or video file to transcribe and compose the transcript from", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the spoken content for accurate transcription", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps in the transcript output", + "required": false, + "defaultValue": "true" + }, + { + "name": "speakerLabels", + "type": "array", + "description": "Optional array of speaker names or labels for speaker diarization assignment", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output transcript: plain text or JSON", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed transcript in the requested format, including text content and metadata such as timestamps and speaker labels if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate clean, web-friendly transcripts from audio or video media sources for websites, applications, or documentation. It is helpful for accessibility features, content SEO, and user engagement by providing readable and organized dialogue text with optional speaker identification and timing data.", + "limitations": "This tool does not perform actual speech recognition but expects an audio/video URL for external transcription. It relies on external services or prior transcription data. It cannot handle encrypted or inaccessible media URLs, nor translate the transcript into other languages.", + "examples": [ + "Generate a transcript of a webinar video including speaker names and timestamps in JSON format.", + "Compose a plain text transcript from a podcast episode URL in English.", + "Create a transcript without timestamps from a lecture audio file URL, assuming the media is in English." + ] + }, + "tags": [ + "transcription", + "web-content", + "accessibility", + "media-processing", + "speaker-diarization", + "timestamping" + ], + "examples": [ + { + "inputJson": "{\"mediaUrl\":\"https://example.com/media/interview.mp4\",\"language\":\"en-US\",\"includeTimestamps\":true,\"speakerLabels\":[\"Host\",\"Guest\"],\"outputFormat\":\"json\"}", + "description": "Compose a JSON transcript with timestamps and speaker labels from an English interview video URL." + }, + { + "inputJson": "{\"mediaUrl\":\"https://example.com/media/podcast.mp3\",\"includeTimestamps\":false,\"outputFormat\":\"text\"}", + "description": "Generate a plain text transcript without timestamps from an English podcast audio URL." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Transcript", + "context": null + } + }, + { + "name": "web-development.composeSummary", + "description": "Generates a concise summary of a given document related to web development. Accepts raw text content or HTML input, analyzes key points using natural language processing, and produces a clear, coherent summary highlighting the document's main ideas and purpose.", + "category": "web-development", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The full text or HTML content of the document to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "The format of the input document content; either 'text' or 'html'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired length of the summary in number of sentences or key points.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input content (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to include a list of key phrases or terms extracted from the document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and optionally extracted key phrases if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need a clear, concise summary of lengthy or complex web development documentation, such as technical specs, tutorials, or project notes. It helps agents extract essential points quickly for reporting, briefing, or content previews.", + "limitations": "Cannot replace human expert review for highly technical or nuanced content. Summaries are approximate and may omit subtle details. Performance may vary with very short or poorly formatted inputs.", + "examples": [ + "Summarize a long HTML tutorial about React hooks into three main points.", + "Create a concise summary of a text-based API reference documentation.", + "Generate a brief overview and key terms from a JavaScript framework specification." + ] + }, + "tags": [ + "web-development", + "summary", + "document", + "nlp", + "content-analysis", + "html", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"React is a JavaScript library for building user interfaces. It allows developers to create large web applications that can update and render efficiently in response to data changes. React uses a declarative programming model and component-based architecture.\",\"inputFormat\":\"text\",\"summaryLength\":2,\"language\":\"en\",\"includeKeyPhrases\":true}", + "description": "Summarize a short plain text description of React focusing on main ideas and key phrases." + }, + { + "inputJson": "{\"documentContent\":\"

Webpack Overview

Webpack is a module bundler for modern JavaScript applications. It processes and bundles assets like JavaScript, CSS, and images for optimized delivery.

\",\"inputFormat\":\"html\",\"summaryLength\":3,\"language\":\"en\",\"includeKeyPhrases\":false}", + "description": "Generate a concise summary from a simple HTML snippet describing Webpack." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "web-development.composeEmail", + "description": "This tool generates a complete email message based on provided parameters such as recipients, subject, body content, and optional attachments. It processes inputs including plain text or HTML content, handles CC/BCC fields, and outputs a structured email object ready to be sent via an email sending service or client.", + "category": "web-development", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of primary recipient email addresses for the email (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses to receive carbon copies (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses to receive blind carbon copies (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email, can be plain text or HTML (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates if the body content is HTML formatted (optional, default false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachments, each with filename and base64 or URL content (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyTo", + "type": "string", + "description": "Email address to use in the Reply-To header (optional).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An email object containing all headers and content structured and ready for sending via SMTP or API." + }, + "aiAgent": { + "useCase": "Use this tool when generating a fully structured email message dynamically from given parameters, for sending notifications, user communications, or automated emails in web applications. It ensures all parts such as recipients, subject, body, and attachments are properly composed before dispatch.", + "limitations": "This tool only composes the email and does not send it. It does not manage SMTP connections or authentication. Validation of email addresses' deliverability is not included.", + "examples": [ + "Compose an email to multiple recipients with cc and an HTML body.", + "Create an email with attachments and a specific reply-to address.", + "Generate a plain text email with only a subject and body for a single recipient." + ] + }, + "tags": [ + "email", + "compose", + "web-development", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"alice@example.com\"],\"subject\":\"Meeting Reminder\",\"body\":\"

Dear Alice,
Just a reminder about tomorrow's meeting at 10am.
Best regards,
Bob

\",\"isHtml\":true}", + "description": "Compose a reminder email with HTML content to a single recipient." + }, + { + "inputJson": "{\"to\":[\"john@example.com\",\"jane@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Project Update\",\"body\":\"The project has reached phase 2. Please see attached report.\",\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"base64EncodedPdfContent==\"}]}", + "description": "Compose an email with multiple recipients, CC, and a PDF attachment." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "web-development.composeArticle", + "description": "This tool accepts structured input such as article title, author, content sections, and metadata. It composes a well-formatted article in HTML or Markdown format, integrating headings, paragraphs, images, links, and references as specified. The output is a complete article document ready for publication or further editing.", + "category": "web-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the article to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the article author or content creator.", + "required": false, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An ordered list of sections composing the article. Each section includes a heading and body content, optionally images or links.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output format of the composed article, either 'html' or 'markdown'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional article metadata such as publication date, tags, and summary.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed article as a string under 'content' key, plus its format and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured and formatted article document for web publication or content management systems based on provided title, sections, and metadata inputs. It simplifies article creation by automatically organizing and formatting content with optional support for HTML or Markdown outputs.", + "limitations": "This tool does not generate article content automatically; it requires well-structured input content sections. It cannot perform content fact-checking, SEO optimization, or multimedia processing beyond simple image URL embedding.", + "examples": [ + "Compose an article titled 'Latest Web Development Trends' with three sections and output in HTML.", + "Create a Markdown blog post about 'Sustainable Technology' with author name and tags.", + "Generate an article with metadata including publication date and summary, formatted as HTML." + ] + }, + "tags": [ + "web", + "article", + "content", + "compose", + "html", + "markdown", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"The Future of AI in Web Development\",\"author\":\"Jane Doe\",\"sections\":[{\"heading\":\"Introduction\",\"body\":\"Artificial Intelligence is reshaping web development workflows...\"},{\"heading\":\"Current Applications\",\"body\":\"AI tools assist with code generation, testing, and deployment automation...\"},{\"heading\":\"Challenges and Opportunities\",\"body\":\"Despite benefits, challenges include bias, security, and maintainability...\"}],\"format\":\"html\",\"metadata\":{\"publicationDate\":\"2024-06-01\",\"tags\":[\"AI\",\"web development\"],\"summary\":\"Overview of AI trends impacting web development.\"}}", + "description": "Compose an HTML article with given title, author, multiple sections, and metadata including tags and publication date." + }, + { + "inputJson": "{\"title\":\"Accessibility Best Practices\",\"sections\":[{\"heading\":\"Why Accessibility Matters\",\"body\":\"Ensuring websites are accessible benefits all users...\"},{\"heading\":\"Key Techniques\",\"body\":\"Use semantic HTML, alt attributes, ARIA roles...\"}],\"format\":\"markdown\"}", + "description": "Generate a Markdown formatted article on accessibility with two sections, no author or metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "web-development.composeDocument", + "description": "This tool accepts structured input content (such as text blocks, headings, images, and links) and configuration options to compose a complete HTML document. It processes and organizes input into semantic HTML5 structure, applies optional styling or metadata, and outputs a valid HTML document string ready for deployment or further editing.", + "category": "web-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the HTML document to set in the head section.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author metadata to include in the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentBlocks", + "type": "array", + "description": "An array of content block objects defining the main body content, each block specifying its type (e.g., paragraph, heading, image) and associated data.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeStyles", + "type": "boolean", + "description": "Flag indicating whether to include default basic CSS styles in the document to improve readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') to set as the document's language attribute.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the full HTML document as a string under the property 'htmlDocument'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate complete HTML documents from structured content inputs for web pages, reports, or emails. It helps in automating web document creation ensuring semantic correctness and optional styling, useful for web-development agents assembling content from data or user input.", + "limitations": "Does not support advanced dynamic scripting, interactive elements, or rendering rich media beyond static images and text. Styling is basic and not customizable beyond default inclusion flag.", + "examples": [ + "Generate a simple HTML page with title, author metadata, and three paragraphs of text content.", + "Create an HTML document with multiple heading levels and images, specifying language as French.", + "Produce a minimal HTML page with no styles included, only text content and title." + ] + }, + "tags": [ + "web", + "document", + "HTML", + "compose", + "automation", + "content", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Sample Page\",\"author\":\"John Doe\",\"contentBlocks\":[{\"type\":\"heading\",\"level\":1,\"text\":\"Welcome to Our Site\"},{\"type\":\"paragraph\",\"text\":\"This is the first paragraph.\"},{\"type\":\"paragraph\",\"text\":\"This is the second paragraph.\"}],\"includeStyles\":true,\"language\":\"en\"}", + "description": "Basic HTML document with title, author, headings, and paragraphs with default styling." + }, + { + "inputJson": "{\"title\":\"Rapport Mensuel\",\"author\":\"Marie Curie\",\"contentBlocks\":[{\"type\":\"heading\",\"level\":2,\"text\":\"Introduction\"},{\"type\":\"paragraph\",\"text\":\"Voici le rapport mensuel.\"},{\"type\":\"image\",\"src\":\"report-chart.png\",\"alt\":\"Monthly Chart\"}],\"includeStyles\":false,\"language\":\"fr\"}", + "description": "French language document with heading, paragraph, image, and no styles." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "web-development.composeReport", + "description": "Generates a detailed HTML or Markdown report for web projects by accepting project data, metrics, and optional styling preferences. Processes inputs to compose structured sections, visual summaries, and downloadable content outlining project progress or status. Outputs a formatted report document as a string or file link.", + "category": "web-development", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the web project the report is about.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title of the report document to be generated.", + "required": false, + "defaultValue": "Project Report" + }, + { + "name": "contentSections", + "type": "array", + "description": "An array of objects representing individual sections with titles and body content to include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "object", + "description": "Key-value pairs representing project metrics (e.g., performance, bug counts) to summarize in the report.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the report, either 'html' or 'markdown'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section based on metrics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "styleTemplate", + "type": "string", + "description": "Optional CSS style or Markdown style template to format the report visually.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the 'reportContent' as a string with the formatted report in specified format, and 'fileName' suggesting a filename for saving the report." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to create a professional, structured report document about a web development project, including sections, metrics summaries, and optionally styled output in HTML or Markdown. It's helpful for generating project status, debugging summaries, or performance analysis documents automatically from given data.", + "limitations": "This tool does not generate complex charts or graphs, nor does it fetch data from external sources; all input data must be provided. It also does not handle real-time updates or editing after report generation.", + "examples": [ + "Generate an HTML project status report for 'Website Redesign' with sections describing progress, bug fixes, and performance metrics.", + "Compose a Markdown report summarizing test results and deployment details for a web app project with a custom style template.", + "Create a simple HTML report with a summary section for project 'E-commerce Platform' including uptime and error count metrics." + ] + }, + "tags": [ + "web-development", + "report", + "document-generation", + "project-management", + "HTML", + "Markdown", + "summary", + "automation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Website Redesign\",\"reportTitle\":\"Monthly Status Report\",\"contentSections\":[{\"title\":\"Overview\",\"body\":\"This month we improved the UI and fixed major bugs.\"},{\"title\":\"Bug Fixes\",\"body\":\"Fixed 25 bugs including critical payment gateway issues.\"}],\"metrics\":{\"performance\":\"95%\",\"bugs\":\"25\"},\"format\":\"html\",\"includeSummary\":true}", + "description": "Generate an HTML status report for the Website Redesign project including sections and metrics summary." + }, + { + "inputJson": "{\"projectName\":\"E-commerce Platform\",\"contentSections\":[{\"title\":\"Deployment Info\",\"body\":\"Version 2.3 deployed with improved checkout flow.\"}],\"metrics\":{\"uptime\":\"99.9%\",\"errorCount\":3},\"format\":\"markdown\",\"includeSummary\":true}", + "description": "Compose a markdown report with deployment info and metrics summary for an e-commerce platform project." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "web-development.buildCluster", + "description": "Builds and configures a scalable infrastructure cluster for web applications. Accepts parameters such as cluster size, node configuration, cloud provider, and network settings. Provisions computing resources, sets up load balancers, and deploys basic monitoring. Returns cluster details including endpoints, resource allocation, and status.", + "category": "web-development", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "Unique name for the cluster to identify it.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of nodes to provision in the cluster.", + "required": true, + "defaultValue": "3" + }, + { + "name": "nodeType", + "type": "string", + "description": "Type or size of nodes to use (e.g., t3.medium, n1-standard-1).", + "required": true, + "defaultValue": "" + }, + { + "name": "cloudProvider", + "type": "string", + "description": "Cloud provider where the cluster will be built (e.g., AWS, GCP, Azure).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region to deploy the cluster in.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "enableLoadBalancer", + "type": "boolean", + "description": "Whether to provision a load balancer for the cluster.", + "required": false, + "defaultValue": "true" + }, + { + "name": "networkSettings", + "type": "object", + "description": "Network configuration including VPC, subnets, and security groups.", + "required": false, + "defaultValue": "" + }, + { + "name": "monitoringEnabled", + "type": "boolean", + "description": "Enable basic monitoring and alerting for cluster health.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a detailed cluster summary including cluster ID, status, node info, endpoint URLs, and monitoring dashboard links." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and configure a new scalable cluster for deploying web applications or services across cloud providers with customizable node count and configuration. It is ideal for automating infrastructure setup as part of a CI/CD pipeline or infrastructure as code process.", + "limitations": "This tool does not manage application deployment inside the cluster nor handle advanced cluster orchestration features like autoscaling policies or CI integration. It also assumes access credentials and permissions for the specified cloud provider are already handled externally.", + "examples": [ + "Build a 5-node AWS cluster with t3.medium nodes in us-west-2 with load balancer enabled.", + "Create a GCP cluster named 'prod-cluster' with 3 nodes of n1-standard-1 and default network settings.", + "Set up a cluster on Azure with disabled monitoring and a custom VPC configuration." + ] + }, + "tags": [ + "infrastructure", + "cluster", + "cloud", + "provisioning", + "web-development", + "automation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"dev-cluster\",\"nodeCount\":3,\"nodeType\":\"t3.medium\",\"cloudProvider\":\"AWS\",\"region\":\"us-east-1\",\"enableLoadBalancer\":true,\"monitoringEnabled\":true}", + "description": "Build a 3-node AWS cluster with t3.medium nodes in us-east-1 with monitoring and load balancing enabled." + }, + { + "inputJson": "{\"clusterName\":\"staging-cluster\",\"nodeCount\":5,\"nodeType\":\"n1-standard-1\",\"cloudProvider\":\"GCP\",\"region\":\"us-central1\",\"enableLoadBalancer\":false,\"monitoringEnabled\":true}", + "description": "Create a 5-node GCP cluster without a load balancer but with monitoring enabled." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "web-development.buildDatabase", + "description": "Creates a relational or NoSQL database schema and provisions an initial database instance for web applications. Accepts database type, schema definition, connection parameters, and optional seed data; then generates the schema, sets up tables or collections, and returns connection information and setup status.", + "category": "web-development", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database to build, e.g., 'PostgreSQL', 'MySQL', 'MongoDB'.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "Defines database tables/collections, fields, types, constraints, and relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionParams", + "type": "object", + "description": "Configuration parameters for database connection such as host, port, username, password.", + "required": true, + "defaultValue": "" + }, + { + "name": "seedData", + "type": "array", + "description": "Optional array of objects representing data to pre-populate the database after creation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableIndexes", + "type": "boolean", + "description": "Whether to create indexes defined in the schema or suggested for optimization.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateSchemaOnly", + "type": "boolean", + "description": "If true, only validates the schema without creating the database.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the database connection info, status of creation, schema validation messages, and any error details." + }, + "aiAgent": { + "useCase": "Use this tool when a web application backend requires a new database infrastructure setup according to specific schema and connection parameters. It is ideal for automating initial provisioning of databases during deployment or development. Agents can supply schema definitions and receive ready-to-use connection info.", + "limitations": "This tool does not handle complex migration or schema evolution for existing databases, nor does it manage database backups or cluster configurations.", + "examples": [ + "Create a PostgreSQL database with user and order tables and seed initial user data.", + "Set up a MongoDB database with collections for products and customers including indexes.", + "Validate a proposed schema for a MySQL database without provisioning it yet." + ] + }, + "tags": [ + "web", + "database", + "provisioning", + "schema", + "relational", + "NoSQL", + "automation" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"schemaDefinition\":{\"tables\":{\"users\":{\"columns\":{\"id\":{\"type\":\"serial\",\"primaryKey\":true},\"name\":{\"type\":\"varchar(100)\"},\"email\":{\"type\":\"varchar(255)\",\"unique\":true}}},\"orders\":{\"columns\":{\"order_id\":{\"type\":\"serial\",\"primaryKey\":true},\"user_id\":{\"type\":\"int\",\"foreignKey\":{\"table\":\"users\",\"column\":\"id\"}},\"amount\":{\"type\":\"decimal\"}}}}},\"connectionParams\":{\"host\":\"localhost\",\"port\":5432,\"username\":\"admin\",\"password\":\"secret\",\"database\":\"shopdb\"},\"seedData\":[{\"table\":\"users\",\"rows\":[{\"name\":\"Alice\",\"email\":\"alice@example.com\"}]}]}", + "description": "Provision PostgreSQL database 'shopdb' with defined users and orders tables and seed one user." + }, + { + "inputJson": "{\"databaseType\":\"MongoDB\",\"schemaDefinition\":{\"collections\":{\"products\":{\"fields\":{\"name\":\"string\",\"price\":\"number\",\"inStock\":\"boolean\"}}}},\"connectionParams\":{\"host\":\"mongo.example.com\",\"port\":27017,\"username\":\"user\",\"password\":\"pass\",\"database\":\"store\"},\"enableIndexes\":true}", + "description": "Set up a MongoDB store database with a products collection and create indexes." + }, + { + "inputJson": "{\"databaseType\":\"MySQL\",\"schemaDefinition\":{\"tables\":{\"customers\":{\"columns\":{\"customer_id\":{\"type\":\"int\",\"primaryKey\":true},\"first_name\":{\"type\":\"varchar(50)\"},\"last_name\":{\"type\":\"varchar(50)\"}}}},\"connectionParams\":{\"host\":\"127.0.0.1\",\"port\":3306,\"username\":\"root\",\"password\":\"rootpass\",\"database\":\"crm\"},\"validateSchemaOnly\":true}", + "description": "Validate the schema definition for a MySQL CRM database without creating it yet." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "web-development.buildQueue", + "description": "This tool creates and configures a task queue system for web applications. It accepts parameters specifying queue name, maximum concurrency, retry policies, persistence options, and task validation rules. It outputs a JSON representation of the configured queue infrastructure ready for integration in backend services or serverless environments.", + "category": "web-development", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifier for the queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxConcurrency", + "type": "number", + "description": "The maximum number of tasks that can be processed concurrently in the queue.", + "required": false, + "defaultValue": "5" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Defines rules for retrying failed tasks, including max retries and delay between attempts.", + "required": false, + "defaultValue": "" + }, + { + "name": "persistence", + "type": "boolean", + "description": "Determines if the queue should persist tasks on storage to survive application restarts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "taskValidationSchema", + "type": "object", + "description": "JSON schema object to validate tasks before they are accepted into the queue.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object describing the fully configured queue including parameters used and endpoints or interfaces for interacting with the queue." + }, + "aiAgent": { + "useCase": "Use this tool when building or extending web applications that require managed background task processing, such as job queues for sending emails, processing uploads, or asynchronous workflows. It helps generate a queue configuration that can be implemented with backend services or serverless functions, enabling controlled concurrency, retries, and persistence.", + "limitations": "This tool does not implement the queue runtime itself or provide message consumption logic; it only configures and outputs queue infrastructure setup parameters. Actual task processing and queue execution environment must be managed separately.", + "examples": [ + "Create a queue named 'emailSender' with max concurrency 10 and automatic retry up to 3 times.", + "Build a persistent task queue 'imageProcessor' with validation schema requiring an image URL in each task.", + "Generate a non-persistent queue 'tempNotifications' with concurrency limit 2 and no retry policy." + ] + }, + "tags": [ + "web", + "queue", + "task management", + "infrastructure", + "backend", + "asynchronous" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"emailSender\",\"maxConcurrency\":10,\"retryPolicy\":{\"maxRetries\":3,\"retryDelayMs\":5000},\"persistence\":true}", + "description": "Create an email sending queue with max 10 concurrent tasks, retry policy of 3 attempts with 5 seconds delay, and persistent storage." + }, + { + "inputJson": "{\"queueName\":\"imageProcessor\",\"maxConcurrency\":4,\"persistence\":true,\"taskValidationSchema\":{\"type\":\"object\",\"properties\":{\"imageUrl\":{\"type\":\"string\",\"format\":\"uri\"}},\"required\":[\"imageUrl\"]}}", + "description": "Create a persistent image processing queue with concurrency 4 that validates each task has a valid image URL." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "web-development.buildCache", + "description": "BuildCache is a tool that accepts website resource metadata and configuration parameters to generate a configurable caching infrastructure plan. It processes inputs like cache strategies, resource types, and expiration policies, then outputs optimized cache configurations for server-side or client-side caches such as HTTP cache headers, service worker rules, or CDN cache settings.", + "category": "web-development", + "parameters": [ + { + "name": "resources", + "type": "array", + "description": "List of website resources with metadata (URL, type, size, frequency of change) to include in the cache plan.", + "required": true, + "defaultValue": "" + }, + { + "name": "cacheStrategy", + "type": "string", + "description": "The caching strategy to apply (e.g., 'Cache First', 'Network First', 'Stale While Revalidate').", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultExpirationSeconds", + "type": "number", + "description": "Default cache expiration time in seconds if a specific expiration is not set per resource.", + "required": false, + "defaultValue": "86400" + }, + { + "name": "enableServiceWorker", + "type": "boolean", + "description": "Flag to generate a service worker caching configuration for offline support.", + "required": false, + "defaultValue": "false" + }, + { + "name": "cdnProvider", + "type": "string", + "description": "Specify the CDN provider to optimize the cache config output for platform-specific settings (e.g., 'Cloudflare', 'Akamai').", + "required": false, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include recommended HTTP cache headers in the output configuration.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing cache configuration rules, including HTTP headers settings, service worker code snippets (if enabled), and CDN cache rule sets optimized as per provided parameters." + }, + "aiAgent": { + "useCase": "Use this tool when designing or optimizing web caching strategies for improved website performance and bandwidth reduction. It helps generate appropriate cache configurations for different resource types, cache strategies, and deployment environments like CDNs and service workers.", + "limitations": "Does not deploy the cache configurations; it only generates the configuration code and guidelines. It does not monitor cache effectiveness or real-time cache invalidations.", + "examples": [ + "Generate a cache configuration for all site images and scripts using 'Cache First' strategy with a 1 day expiration.", + "Create service worker cache rules for a progressive web app enabling offline support with stale-while-revalidate strategy.", + "Produce CDN caching rules optimized for Cloudflare with HTTP header recommendations for static assets." + ] + }, + "tags": [ + "web", + "caching", + "performance", + "service worker", + "CDN", + "configuration", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"resources\":[{\"url\":\"/images/logo.png\",\"type\":\"image\",\"size\":50000,\"changeFrequency\":\"monthly\"},{\"url\":\"/scripts/app.js\",\"type\":\"script\",\"size\":150000,\"changeFrequency\":\"weekly\"}],\"cacheStrategy\":\"Cache First\",\"defaultExpirationSeconds\":86400,\"enableServiceWorker\":true,\"cdnProvider\":\"Cloudflare\",\"includeHeaders\":true}", + "description": "Generate cache config for images and scripts with Cache First strategy, enable service worker and Cloudflare CDN." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Cache", + "context": null + } + }, + { + "name": "web-development.buildService", + "description": "Builds and deploys a web service based on provided configuration. Accepts service name, runtime environment, source code repository URL, deployment environment, and optional environment variables. Processes these inputs to set up CI/CD pipelines, configure hosting, and deploy the service. Outputs deployment status, service URL, and any error messages.", + "category": "web-development", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The name identifier for the web service to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "runtimeEnvironment", + "type": "string", + "description": "The runtime environment for the service, e.g., 'nodejs', 'python', or 'java'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceRepositoryUrl", + "type": "string", + "description": "URL to the source code repository containing the service code (e.g., GitHub repo URL).", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Target environment for deployment such as 'staging' or 'production'.", + "required": true, + "defaultValue": "" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to configure the service.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Whether to enable autoscaling for the deployed service.", + "required": false, + "defaultValue": "false" + }, + { + "name": "instanceCount", + "type": "number", + "description": "Number of instances to deploy if autoscaling is not enabled.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing deployment status ('success' or 'failed'), the URL of the deployed service if successful, and an errors array if any issues occurred." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically build and deploy a backend web service from source code with specific runtime and environment settings, for continuous integration and delivery purposes or initial deployments.", + "limitations": "This tool does not handle detailed source code validation, complex multi-service orchestration, nor does it configure advanced network or security policies beyond basic environment variables and deployment setup.", + "examples": [ + "Deploy a NodeJS service for production environment from a GitHub repository with environment variables set.", + "Build a Python web service on staging with autoscaling enabled for load tests.", + "Deploy a Java service with two fixed instances and custom configuration variables to production." + ] + }, + "tags": [ + "web-development", + "deployment", + "ci/cd", + "service-building", + "cloud", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"user-auth-service\",\"runtimeEnvironment\":\"nodejs\",\"sourceRepositoryUrl\":\"https://github.com/example/user-auth\",\"deploymentEnvironment\":\"production\",\"environmentVariables\":{\"JWT_SECRET\":\"s3cr3t\"},\"enableAutoScaling\":true}", + "description": "Deploy NodeJS user authentication service to production with autoscaling enabled and JWT secret environment variable." + }, + { + "inputJson": "{\"serviceName\":\"data-processor\",\"runtimeEnvironment\":\"python\",\"sourceRepositoryUrl\":\"https://gitlab.com/org/data-processing\",\"deploymentEnvironment\":\"staging\",\"environmentVariables\":{\"DEBUG\":\"true\"},\"enableAutoScaling\":false,\"instanceCount\":2}", + "description": "Build and deploy a Python data processing service to staging with two fixed instances and debugging enabled via env variable." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "web-development.buildInstance", + "description": "This tool provisions and configures a cloud instance for web hosting based on user-defined parameters such as cloud provider, instance type, operating system, region, and optional startup scripts. It initializes the environment and returns the instance metadata including ID, IP address, and status.", + "category": "web-development", + "parameters": [ + { + "name": "cloudProvider", + "type": "string", + "description": "Name of the cloud provider where the instance will be created (e.g., AWS, Azure, GCP).", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "Type/size of the cloud instance to provision (e.g., t2.micro, Standard_B1s).", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system image to install on the instance (e.g., Ubuntu 20.04, Windows Server 2019).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region where the instance should be launched (e.g., us-east-1, europe-west3).", + "required": true, + "defaultValue": "" + }, + { + "name": "startupScript", + "type": "string", + "description": "Optional shell or PowerShell script to run on instance initialization.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyPairName", + "type": "string", + "description": "Name of the SSH key pair to associate with the instance for secure access.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the instance ID, public IP address, status, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically provision and configure a cloud instance for deploying or testing websites or web applications. It handles instance creation and basic setup based on user specifications without manual cloud console intervention.", + "limitations": "This tool cannot handle complex infrastructure orchestration (e.g., multi-instance clusters or container orchestration). It depends on pre-configured cloud provider credentials and may not support all providers or instance types.", + "examples": [ + "Provision a Ubuntu web server in AWS us-east-1 of type t2.micro with a startup script to install Apache.", + "Launch a Windows Server instance in Azure Europe region with specified size and no startup script.", + "Create a GCP instance with an SSH key for access and a script to deploy a Node.js application." + ] + }, + "tags": [ + "infrastructure", + "cloud", + "provisioning", + "web-hosting", + "instance-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"cloudProvider\":\"AWS\",\"instanceType\":\"t2.micro\",\"operatingSystem\":\"Ubuntu 20.04\",\"region\":\"us-east-1\",\"startupScript\":\"#!/bin/bash\\nsudo apt update && sudo apt install -y apache2\",\"keyPairName\":\"my-keypair\"}", + "description": "Provision a small Ubuntu server on AWS with Apache installed on startup and specific SSH key pair." + }, + { + "inputJson": "{\"cloudProvider\":\"Azure\",\"instanceType\":\"Standard_B1s\",\"operatingSystem\":\"Windows Server 2019\",\"region\":\"europe-west\",\"startupScript\":\"\",\"keyPairName\":\"azure-key\"}", + "description": "Launch a Windows Server instance in Azure Europe region with a named SSH key and no startup script." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "web-development.buildContainer", + "description": "Builds and deploys a containerized web application environment based on specified configurations. Accepts inputs like container image, environment variables, port mappings, and resource limits, then creates and starts the container on a target host or orchestrator. Outputs status and container details like ID and endpoint URLs.", + "category": "web-development", + "parameters": [ + { + "name": "containerImage", + "type": "string", + "description": "Docker image name with tag to use for the container", + "required": true, + "defaultValue": "" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set inside the container", + "required": false, + "defaultValue": "{}" + }, + { + "name": "portMappings", + "type": "array", + "description": "Array of objects specifying containerPort and hostPort for port forwarding", + "required": false, + "defaultValue": "[]" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Specifies resource constraints like memory (e.g., '512m') and CPU shares", + "required": false, + "defaultValue": "{}" + }, + { + "name": "containerName", + "type": "string", + "description": "Optional name to assign to the container instance", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "restartPolicy", + "type": "string", + "description": "Container restart policy such as 'no', 'on-failure', or 'always'", + "required": false, + "defaultValue": "\"no\"" + }, + { + "name": "targetHost", + "type": "string", + "description": "Address or identifier of the host or orchestrator where the container is deployed", + "required": false, + "defaultValue": "\"localhost\"" + } + ], + "returns": { + "type": "object", + "description": "Result object containing 'success' (boolean), 'containerId' (string), 'message' (string for errors or status), and 'endpoints' (array of accessible URLs)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create and start containerized web application instances with specific configurations on a given host or orchestration platform, enabling automated deployment in web development workflows.", + "limitations": "Does not handle image building or container orchestration logic outside of starting containers. Assumes container image is pre-built and accessible. Does not manage multi-container services or networking beyond port mappings.", + "examples": [ + "Build and start a container from image 'nginx:latest' exposing port 80 mapped to host port 8080.", + "Deploy a container with environment variables for database credentials and resource limits for CPU and memory.", + "Restart a container with a specified name on a remote Docker host." + ] + }, + "tags": [ + "web-development", + "container", + "docker", + "deployment", + "automation", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"containerImage\":\"nginx:latest\",\"portMappings\":[{\"containerPort\":80,\"hostPort\":8080}],\"containerName\":\"webserver1\"}", + "description": "Deploy an NGINX container exposing port 80 as port 8080 on the host with a container name." + }, + { + "inputJson": "{\"containerImage\":\"myapp/backend:v2\",\"environmentVariables\":{\"DB_HOST\":\"db.example.com\",\"DB_USER\":\"admin\"},\"resourceLimits\":{\"memory\":\"512m\",\"cpuShares\":512},\"restartPolicy\":\"always\"}", + "description": "Start a backend app container with environment variables and resource limits, set to always restart." + }, + { + "inputJson": "{\"containerImage\":\"redis:6-alpine\",\"targetHost\":\"192.168.1.100\",\"portMappings\":[{\"containerPort\":6379,\"hostPort\":6379}]}", + "description": "Build and deploy a Redis container on a remote host forwarding default Redis port." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "web-development.buildPackage", + "description": "Builds a web development package from specified source files and configuration options. Accepts the source directory path, build environment (development or production), output directory, bundling options, and optional minification flag. Processes files to bundle, transpile if needed, and outputs a deployable package with build logs and summary.", + "category": "web-development", + "parameters": [ + { + "name": "sourceDir", + "type": "string", + "description": "File system path to the source code directory to build from.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputDir", + "type": "string", + "description": "File system path where the built package files will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Build environment, e.g., 'development' or 'production' to configure optimizations accordingly.", + "required": true, + "defaultValue": "production" + }, + { + "name": "bundleConfig", + "type": "object", + "description": "Configuration object defining bundling options like entry points, output names, and module rules.", + "required": false, + "defaultValue": "" + }, + { + "name": "minify", + "type": "boolean", + "description": "Flag indicating whether to minify output files. Recommended true for production builds.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sourceMaps", + "type": "boolean", + "description": "Flag indicating whether to generate source maps for debugging purposes.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "BuildResult containing success status, array of output file paths, build logs capturing steps and warnings/errors, and a summary including build duration and total files processed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate packaging of web development projects, including bundling JavaScript, CSS, and assets based on specified configurations, to generate deployable output suited for development or production environments. Useful in continuous integration pipelines or devops workflows requiring flexible and reproducible builds.", + "limitations": "Does not perform deployment or upload of packages to servers or package managers. Does not handle dependency installation or project scaffolding; expects source and configuration ready to build.", + "examples": [ + "Build a production package for the web app located in './src' with minified output and source maps.", + "Create a development build with no minification outputting files to './build-dev'.", + "Build with a custom bundling configuration specifying multiple entry points and hashed filenames." + ] + }, + "tags": [ + "web-development", + "build", + "package", + "bundling", + "transpiling" + ], + "examples": [ + { + "inputJson": "{\"sourceDir\":\"./src\",\"outputDir\":\"./dist\",\"environment\":\"production\",\"minify\":true,\"sourceMaps\":true}", + "description": "Builds a production-ready package from './src' into './dist' with minification and source maps." + }, + { + "inputJson": "{\"sourceDir\":\"./app\",\"outputDir\":\"./build-dev\",\"environment\":\"development\",\"minify\":false,\"sourceMaps\":false}", + "description": "Creates a development build from './app' into './build-dev' with no minification or source maps." + }, + { + "inputJson": "{\"sourceDir\":\"./project\",\"outputDir\":\"./output\",\"environment\":\"production\",\"bundleConfig\":{\"entry\":{\"main\":\"./project/index.js\",\"vendor\":\"./project/vendor.js\"},\"output\":{\"filename\":\"[name].[contenthash].js\"}},\"minify\":true,\"sourceMaps\":true}", + "description": "Builds a production package with custom bundling configuration generating hashed filenames for cache busting." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "web-development.buildServer", + "description": "Builds and configures a web server instance based on specified parameters such as server type, operating system, server software, and resources. Accepts configuration inputs and returns deployment status along with server access details. Useful for automated provisioning of web server infrastructure.", + "category": "web-development", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server to build, e.g., 'development', 'staging', or 'production'.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system for the server, e.g., 'Ubuntu 22.04', 'CentOS 7', or 'Windows Server 2019'.", + "required": true, + "defaultValue": "" + }, + { + "name": "serverSoftware", + "type": "string", + "description": "Web server software to install, e.g., 'nginx', 'apache', or 'iis'.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate to the server instance.", + "required": false, + "defaultValue": "2" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes for the server.", + "required": false, + "defaultValue": "4" + }, + { + "name": "storageGB", + "type": "number", + "description": "Disk storage size in gigabytes assigned to the server.", + "required": false, + "defaultValue": "50" + }, + { + "name": "enableSSL", + "type": "boolean", + "description": "Whether to enable SSL with a self-signed certificate.", + "required": false, + "defaultValue": "false" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Additional environment variables to set on the server as key-value pairs.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing serverId, status indicating success or error, serverUrl for accessing the web server, and a message providing additional info." + }, + "aiAgent": { + "useCase": "Use this tool when automating the provisioning and configuration of web server infrastructure to support application deployments. It is suited for scenarios requiring a programmable interface to build servers with customized OS, web server software, resource allocation, and environment setup. This tool accelerates CI/CD pipelines, cloud infrastructure setup, and test environment preparation.", + "limitations": "This tool does not handle deploying application code, managing DNS settings, or configuring advanced network security groups. It also cannot customize server software beyond installation and basic configuration.", + "examples": [ + "Create a production server using Ubuntu with nginx and 8 CPU cores, 16GB RAM.", + "Setup a development server with Windows Server 2019, IIS, and enable SSL.", + "Provision a staging server on CentOS with Apache and 4 CPU cores, setting environment variables for database credentials." + ] + }, + "tags": [ + "server", + "infrastructure", + "web", + "automation", + "provisioning", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"production\",\"operatingSystem\":\"Ubuntu 22.04\",\"serverSoftware\":\"nginx\",\"cpuCores\":8,\"memoryGB\":16,\"storageGB\":100,\"enableSSL\":true}", + "description": "Provision a production Ubuntu server with nginx, ample CPU and RAM, 100GB storage, and SSL enabled." + }, + { + "inputJson": "{\"serverType\":\"development\",\"operatingSystem\":\"Windows Server 2019\",\"serverSoftware\":\"iis\",\"cpuCores\":2,\"memoryGB\":4,\"storageGB\":50,\"enableSSL\":false}", + "description": "Build a Windows development server with IIS, minimal resources, no SSL." + }, + { + "inputJson": "{\"serverType\":\"staging\",\"operatingSystem\":\"CentOS 7\",\"serverSoftware\":\"apache\",\"cpuCores\":4,\"memoryGB\":8,\"storageGB\":75,\"enableSSL\":false,\"environmentVariables\":{\"DB_HOST\":\"staging-db.local\",\"DEBUG\":\"true\"}}", + "description": "Setup a staging CentOS server with Apache and environment variables for database host and debug mode." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "web-development.buildPipeline", + "description": "This tool accepts configuration inputs for a web development build pipeline, including build steps, tools, environment settings, and triggers. It processes these inputs to generate a reproducible, automated pipeline configuration file (e.g., for CI/CD systems like Jenkins, GitHub Actions, or GitLab CI) that can be directly used to build, test, and deploy web applications.", + "category": "web-development", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "Unique name identifier for the build pipeline.", + "required": true, + "defaultValue": "" + }, + { + "name": "buildSteps", + "type": "array", + "description": "An ordered array of objects each defining a build step with properties such as name, command, and optional environment variables.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "object", + "description": "Key-value pairs of environment variables to set during the build process.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "triggerEvents", + "type": "array", + "description": "Array of event types that trigger the pipeline, e.g., push, pull_request, merge, schedule.", + "required": false, + "defaultValue": "[\"push\"]" + }, + { + "name": "pipelineType", + "type": "string", + "description": "The target CI/CD system for the pipeline configuration (e.g., 'githubActions', 'jenkins', 'gitlabCi').", + "required": true, + "defaultValue": "githubActions" + }, + { + "name": "cachePaths", + "type": "array", + "description": "Array of file or directory paths to cache between runs to speed up build.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notifications", + "type": "object", + "description": "Configuration for notifications upon pipeline success/failure, e.g., email or Slack webhook settings.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the serialized pipeline configuration as a string and metadata such as file format and suggested filename." + }, + "aiAgent": { + "useCase": "Use this tool when creating or updating an automated build pipeline configuration for web development projects. It helps generate ready-to-use pipeline config files for popular CI/CD platforms based on customizable build steps, environment settings, triggers, caching, and notifications, enabling continuous integration and continuous deployment workflows.", + "limitations": "This tool generates pipeline configuration files but does not execute pipelines or manage deployment infrastructure. Complex conditional pipeline logic or custom scripting beyond the defined commands might require manual adjustments.", + "examples": [ + "Generate a GitHub Actions workflow for a Node.js project with build, test, and deploy steps triggered on pull requests.", + "Create a Jenkins pipeline configuration with environment variables and caching for frontend asset builds.", + "Build a GitLab CI pipeline that triggers nightly to run integration tests and notify a Slack channel on failure." + ] + }, + "tags": [ + "web-development", + "build", + "CI/CD", + "pipeline", + "automation", + "devops", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"nodejs-ci\",\"pipelineType\":\"githubActions\",\"buildSteps\":[{\"name\":\"Install Dependencies\",\"command\":\"npm install\"},{\"name\":\"Run Tests\",\"command\":\"npm test\"},{\"name\":\"Build\",\"command\":\"npm run build\"}],\"environment\":{\"NODE_ENV\":\"production\"},\"triggerEvents\":[\"pull_request\"],\"cachePaths\":[\"~/.npm\"],\"notifications\":{\"email\":\"dev-team@example.com\"}}", + "description": "Generate a GitHub Actions pipeline for a Node.js project triggered on pull requests, with caching and email notifications." + }, + { + "inputJson": "{\"pipelineName\":\"frontend-build\",\"pipelineType\":\"jenkins\",\"buildSteps\":[{\"name\":\"Install\",\"command\":\"yarn install\"},{\"name\":\"Build Assets\",\"command\":\"yarn build\"}],\"environment\":{\"CI\":\"true\"},\"triggerEvents\":[\"push\"],\"cachePaths\":[\"node_modules\"],\"notifications\":{}}", + "description": "Create a Jenkins pipeline configuration for building frontend assets on push events with caching of node_modules." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "web-development.buildWorkflow", + "description": "This tool generates a customizable web development workflow configuration based on user inputs. It accepts input parameters such as the development framework, build tools, testing and deployment options, and outputs a structured workflow file (e.g., YAML or JSON) for automating web project build processes with CI/CD pipelines.", + "category": "web-development", + "parameters": [ + { + "name": "projectType", + "type": "string", + "description": "Type of web project (e.g., 'React', 'Vue', 'Angular', 'StaticSite') to tailor the workflow accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "buildTool", + "type": "string", + "description": "The build tool or task runner to use (e.g., 'Webpack', 'Vite', 'Parcel').", + "required": true, + "defaultValue": "" + }, + { + "name": "testFrameworks", + "type": "array", + "description": "List of testing frameworks to include in the workflow (e.g., ['Jest', 'Cypress']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deploymentTarget", + "type": "string", + "description": "Target deployment platform (e.g., 'Netlify', 'Vercel', 'AWS', 'Firebase').", + "required": false, + "defaultValue": "" + }, + { + "name": "includeLinting", + "type": "boolean", + "description": "Whether to include linting steps in the workflow.", + "required": false, + "defaultValue": "true" + }, + { + "name": "nodeVersion", + "type": "string", + "description": "Specify the Node.js version to use in the workflow environment (e.g., '16', '18').", + "required": false, + "defaultValue": "16" + }, + { + "name": "workflowFormat", + "type": "string", + "description": "Output workflow file format, either 'YAML' or 'JSON'.", + "required": false, + "defaultValue": "YAML" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated workflow configuration content string and the recommended filename for the workflow file." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly create a complete automated build, test, and deployment workflow tailored to a specific web project type. It is helpful for generating CI/CD pipeline files for platforms such as GitHub Actions, GitLab CI, or other CI services customized to user preferences and project requirements.", + "limitations": "This tool does not execute or validate the generated workflow files within CI environments. It cannot automatically resolve complex dependencies or environment-specific configurations outside of the user-provided parameters.", + "examples": [ + "Generate a React project workflow using Webpack and Jest, deploying to Vercel.", + "Create a Vue app workflow with Vite as the build tool, including Cypress tests and linting, deploying to Netlify.", + "Build a static site workflow with Parcel and no tests, deploying on Firebase." + ] + }, + "tags": [ + "web-development", + "automation", + "CI/CD", + "workflow", + "build", + "deployment", + "testing", + "linting" + ], + "examples": [ + { + "inputJson": "{\"projectType\":\"React\",\"buildTool\":\"Webpack\",\"testFrameworks\":[\"Jest\"],\"deploymentTarget\":\"Vercel\",\"includeLinting\":true,\"nodeVersion\":\"18\",\"workflowFormat\":\"YAML\"}", + "description": "Generate a React project workflow using Webpack and Jest, deploying to Vercel with linting and Node.js v18." + }, + { + "inputJson": "{\"projectType\":\"Vue\",\"buildTool\":\"Vite\",\"testFrameworks\":[\"Cypress\"],\"deploymentTarget\":\"Netlify\",\"includeLinting\":true,\"nodeVersion\":\"16\",\"workflowFormat\":\"JSON\"}", + "description": "Create a Vue app workflow with Vite, Cypress tests, linting enabled, deploying to Netlify in JSON format." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "web-development.buildPullRequest", + "description": "Creates a new Pull Request on a specified git repository hosting platform based on provided source and target branches. Accepts repository details, branch names, and PR metadata, then initializes the pull request for review and integration. Outputs the pull request URL and ID for tracking.", + "category": "web-development", + "parameters": [ + { + "name": "repositoryOwner", + "type": "string", + "description": "Owner or organization name of the repository, e.g., 'octocat'.", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryName", + "type": "string", + "description": "The name of the repository, e.g., 'Hello-World'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceBranch", + "type": "string", + "description": "The branch containing the changes you want to merge.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The branch you want to merge the changes into, typically 'main' or 'master'.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title for the pull request describing the purpose of the changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Detailed description of the pull request, explaining the changes and reasons.", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of usernames to request review from.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "labels", + "type": "array", + "description": "List of labels to apply to the pull request for categorization.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the pull request ID, URL, and status confirming creation success." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically open a pull request after pushing feature or fix branches for code review and integration in a git repository hosted on platforms like GitHub, GitLab, or Bitbucket. It automates PR creation during automated CI/CD flows or developer assistance.", + "limitations": "Does not create branches, commit code, or handle merge conflicts. Requires valid repository access and permissions to create PRs.", + "examples": [ + "Create a PR to merge 'feature/login' into 'main' with title 'Add login functionality' including reviewers alice and bob.", + "Open a PR to merge 'bugfix/issue-123' into 'develop' with description and labels 'bug' and 'urgent'.", + "Generate pull request for repository user/repo from branch 'hotfix' to 'master' with no reviewers or labels." + ] + }, + "tags": [ + "pull request", + "git", + "repository", + "automation", + "code review", + "CI/CD" + ], + "examples": [ + { + "inputJson": "{\"repositoryOwner\":\"octocat\",\"repositoryName\":\"Hello-World\",\"sourceBranch\":\"feature/login\",\"targetBranch\":\"main\",\"title\":\"Add login functionality\",\"body\":\"Implemented OAuth2 login flow and updated tests.\",\"reviewers\":[\"alice\",\"bob\"],\"labels\":[\"feature\",\"authentication\"]}", + "description": "Create a pull request to merge the 'feature/login' branch into 'main' including reviewers and labels." + }, + { + "inputJson": "{\"repositoryOwner\":\"teamX\",\"repositoryName\":\"project-y\",\"sourceBranch\":\"bugfix/issue-123\",\"targetBranch\":\"develop\",\"title\":\"Fix issue 123\",\"body\":\"Fixes crash when input is empty.\",\"reviewers\":[],\"labels\":[\"bug\",\"urgent\"]}", + "description": "Open a PR for a bugfix branch targeting 'develop' branch with labels for priority but no reviewers." + }, + { + "inputJson": "{\"repositoryOwner\":\"user1\",\"repositoryName\":\"repo-sample\",\"sourceBranch\":\"hotfix\",\"targetBranch\":\"master\",\"title\":\"Hotfix critical bug\"}", + "description": "Generate a basic pull request with minimal inputs and no optional reviewers or labels." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "web-development.buildCommit", + "description": "Creates a commit object in a version-controlled web development project by staging specified file changes, generating a commit message, and associating author and timestamp details. Accepts file paths and content changes, commit message, author info, and optional parent commit hash; outputs a structured commit object with unique ID and metadata.", + "category": "web-development", + "parameters": [ + { + "name": "filesChanged", + "type": "array", + "description": "Array of objects representing files changed, each with file path and new content or diff.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "The descriptive message summarizing the commit's purpose and scope.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "The name of the author creating the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the author for identification in the commit metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "parentCommitHash", + "type": "string", + "description": "Hash of the parent commit to link the commit in the repository history; optional for initial commits.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp for the commit; defaults to current time if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object representing the created commit, including unique commit hash, committed files, message, author info, timestamp, and parent commit hash." + }, + "aiAgent": { + "useCase": "Use this tool when automating or assisting in version control operations during web development projects, to programmatically create commits that capture file changes with appropriate metadata. Helpful for CI/CD pipelines, automated code updates, or integrating development tools that manage source control.", + "limitations": "This tool does not perform actual repository storage or branch management; it only creates the commit object structure. It cannot push commits to remote repositories or resolve merge conflicts.", + "examples": [ + "Create a commit for updated CSS and HTML files with author 'Jane Doe' and message 'Fix header layout issues'.", + "Generate a commit object for initial commit with multiple JS source files and author info.", + "Build a commit including a specified parent commit hash for tracking history explicitly." + ] + }, + "tags": [ + "web-development", + "version-control", + "commit", + "automation", + "source-code", + "build", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"filesChanged\":[{\"filePath\":\"styles/main.css\",\"content\":\"body { margin: 0; }\"},{\"filePath\":\"index.html\",\"content\":\"Hello World\"}],\"commitMessage\":\"Initial commit with basic styles and index file\",\"authorName\":\"Alice Smith\",\"authorEmail\":\"alice@example.com\",\"timestamp\":\"2024-06-01T12:00:00Z\"}", + "description": "Create an initial commit with basic CSS and HTML files by author Alice Smith." + }, + { + "inputJson": "{\"filesChanged\":[{\"filePath\":\"app.js\",\"content\":\"console.log('Update');\"}],\"commitMessage\":\"Update app console log\",\"authorName\":\"Bob Lee\",\"authorEmail\":\"bob.lee@example.com\",\"parentCommitHash\":\"abc123def456\",\"timestamp\":\"2024-06-02T08:30:00Z\"}", + "description": "Create a commit updating app.js with reference to an existing parent commit hash." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "web-development.buildVariable", + "description": "Creates a JavaScript variable declaration string based on the specified variable name, type, initial value, and scope. Accepts inputs defining the variable's characteristics and produces a valid JavaScript variable declaration statement as output.", + "category": "web-development", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The name of the JavaScript variable to declare.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable (e.g., string, number, boolean, array, object). This is for validation and comment purposes as JavaScript is loosely typed.", + "required": false, + "defaultValue": "string" + }, + { + "name": "initialValue", + "type": "string", + "description": "The initial value to assign to the variable, as a string representation of the code.", + "required": false, + "defaultValue": "" + }, + { + "name": "scope", + "type": "string", + "description": "The scope keyword for the variable declaration: \"var\", \"let\", or \"const\".", + "required": false, + "defaultValue": "let" + }, + { + "name": "includeTypeComment", + "type": "boolean", + "description": "Whether to include a comment indicating the intended type of the variable above the declaration.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript variable declaration code string under the key \"variableDeclaration\"." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate JavaScript variable declarations with specific names, values, and scopes for dynamic code generation or template building. It helps construct syntactically correct variable declarations respecting the scope and optionally including a type hint comment.", + "limitations": "This tool does not validate correctness of initialValue beyond basic insertion and does not enforce strict typing since JavaScript is dynamic. It does not generate complex value expressions automatically, only formats provided strings into declarations.", + "examples": [ + "Generate a const variable named apiEndpoint with initial value 'https://api.example.com'.", + "Create a let variable called count of type number without an initial value.", + "Build a var variable named settings that is an object initialized with an empty object literal." + ] + }, + "tags": [ + "javascript", + "variable", + "code-generation", + "web-development", + "scope", + "declaration", + "programming" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"userName\",\"variableType\":\"string\",\"initialValue\":\"'Alice'\",\"scope\":\"const\",\"includeTypeComment\":true}", + "description": "Declare a constant string variable named 'userName' initialized to 'Alice' with a type comment." + }, + { + "inputJson": "{\"variableName\":\"maxRetries\",\"variableType\":\"number\",\"initialValue\":\"5\",\"scope\":\"let\",\"includeTypeComment\":false}", + "description": "Declare a let variable named 'maxRetries' initialized to 5 without a type comment." + }, + { + "inputJson": "{\"variableName\":\"config\",\"variableType\":\"object\",\"initialValue\":\"{}\",\"scope\":\"var\",\"includeTypeComment\":true}", + "description": "Declare a var variable named 'config' initialized as an empty object with a type comment." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "web-development.buildBranch", + "description": "Builds a new code branch in a Git repository with specified base branch and optional commit message. Accepts repository URL, branch name, base branch, and optional commit message. Clones the repo, creates the new branch from base, optionally commits preliminary changes, and pushes the branch. Returns success status and details of the created branch.", + "category": "web-development", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the Git repository where the branch will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The name of the new branch to create in the repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The base branch name from which to create the new branch, e.g., 'main' or 'develop'.", + "required": false, + "defaultValue": "main" + }, + { + "name": "commitMessage", + "type": "string", + "description": "An optional commit message for an initial commit on the new branch. If empty, no commit is made.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the result status, branch information, and any error messages from the branch creation process." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of a new feature or fix branch in a codebase, for example, before applying changes or running integration workflows. This helps in automating development workflows where branching and code isolation are needed.", + "limitations": "This tool cannot perform complex Git operations beyond branch creation and a single optional commit, nor can it resolve merge conflicts or interact with code hosting service APIs beyond Git cloning and pushing.", + "examples": [ + "Create a new feature branch 'feature/login' off 'develop' branch for upcoming login feature.", + "Create a hotfix branch 'hotfix/critical-bug' from 'main' and add an initial commit message.", + "Build a new experimental branch named 'experiment/ui-redesign' without any initial commit from 'main'." + ] + }, + "tags": [ + "git", + "branch", + "web-development", + "automation", + "code-management" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo.git\",\"branchName\":\"feature/login\",\"baseBranch\":\"develop\",\"commitMessage\":\"Initial commit for login feature branch\"}", + "description": "Create a new 'feature/login' branch from 'develop' with an initial commit message." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo.git\",\"branchName\":\"hotfix/critical-bug\",\"baseBranch\":\"main\",\"commitMessage\":\"Fix critical production bug\"}", + "description": "Create a hotfix branch from 'main' with a commit message describing the fix." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo.git\",\"branchName\":\"experiment/ui-redesign\",\"baseBranch\":\"main\",\"commitMessage\":\"\"}", + "description": "Create a new experimental branch from 'main' without any initial commit." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "web-development.buildConfig", + "description": "Generates a structured web application configuration file based on provided input parameters including environment settings, feature toggles, API endpoints, and build options. Accepts input as JSON objects and outputs a standardized configuration object ready for use in deployment or further development workflows.", + "category": "web-development", + "parameters": [ + { + "name": "environment", + "type": "string", + "description": "Target deployment environment name such as 'development', 'testing', or 'production'.", + "required": true, + "defaultValue": "" + }, + { + "name": "featureToggles", + "type": "object", + "description": "An object mapping feature names to boolean values to enable or disable features dynamically.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "apiEndpoints", + "type": "object", + "description": "Object defining base URLs or endpoints for various backend services used by the web application.", + "required": true, + "defaultValue": "" + }, + { + "name": "buildOptions", + "type": "object", + "description": "Compilation and bundling options such as minification, source maps generation, and target JavaScript version.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the output configuration format, e.g., 'json', 'yaml', or 'js'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A configuration object containing all specified settings merged and formatted per the selected output format, ready for web app consumption or deployment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate or update web application configuration files for different environments or feature sets, especially to automate build and deployment pipelines. It ensures consistent, validated config output from structured input parameters, reducing manual errors in config management.", + "limitations": "Does not validate the semantic correctness of the input API endpoints or feature toggle logic beyond structure. Not intended to configure server or infrastructure settings outside web app config scope.", + "examples": [ + "Generate a production config enabling caching and analytics features with specific API endpoints.", + "Produce a development config with debugging build options and local backend URLs.", + "Create a testing config disabling experimental features and using mock API endpoints." + ] + }, + "tags": [ + "web", + "configuration", + "automation", + "build", + "deployment", + "frontend", + "settings" + ], + "examples": [ + { + "inputJson": "{\"environment\":\"production\",\"featureToggles\":{\"enableCache\":true,\"enableAnalytics\":true},\"apiEndpoints\":{\"userService\":\"https://api.example.com/users\",\"paymentService\":\"https://api.example.com/payments\"},\"buildOptions\":{\"minify\":true,\"sourceMaps\":false},\"outputFormat\":\"json\"}", + "description": "Generate a production config enabling cache and analytics features with specified stable API endpoints." + }, + { + "inputJson": "{\"environment\":\"development\",\"featureToggles\":{\"debugMode\":true},\"apiEndpoints\":{\"userService\":\"http://localhost:3000/users\",\"paymentService\":\"http://localhost:3000/payments\"},\"buildOptions\":{\"minify\":false,\"sourceMaps\":true},\"outputFormat\":\"js\"}", + "description": "Create a development config enabling debug mode with local API URLs and enabled source maps for easier debugging." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "web-development.buildEndpoint", + "description": "Creates a complete backend API endpoint in Node.js Express framework based on specified parameters including HTTP method, route path, request validation schema, response data structure, and middleware options. Outputs generated endpoint code as a string ready for integration.", + "category": "web-development", + "parameters": [ + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method for the endpoint, e.g., GET, POST, PUT, DELETE.", + "required": true, + "defaultValue": "" + }, + { + "name": "routePath", + "type": "string", + "description": "The URL path for the endpoint, e.g., '/users/:id'.", + "required": true, + "defaultValue": "" + }, + { + "name": "requestSchema", + "type": "object", + "description": "JSON schema defining the expected request body structure for validation. Optional for GET requests.", + "required": false, + "defaultValue": "" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON schema describing the shape and types of the response data returned by the endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "middlewares", + "type": "array", + "description": "Array of middleware function names (strings) to apply to the endpoint in order, e.g., ['authenticate', 'logRequest'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "asyncHandler", + "type": "boolean", + "description": "Flag indicating whether to wrap the endpoint handler in async function to support async/await operations.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'endpointCode' string with the full Express.js route handler code snippet implementing the endpoint with validation and middleware." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically generate boilerplate backend API endpoints in Node.js Express. Ideal in situations requiring rapid prototyping or augmenting existing codebases with standardized, validated HTTP route handlers. It enables generation of consistent endpoint code based on formal specification.", + "limitations": "This tool generates Express.js style endpoints in JavaScript only and assumes the user integrates them properly into their app. It does not create frontend code or handle database interaction logic beyond placeholders. Complex business logic must be added manually.", + "examples": [ + "Generate a POST /users endpoint validating required user creation data and returning the new user object.", + "Build a GET /products/:id endpoint with middleware for authentication and response schema defining product details.", + "Create a DELETE /orders/:orderId endpoint with async handler and logging middleware." + ] + }, + "tags": [ + "web-development", + "api", + "endpoint", + "express-js", + "nodejs", + "backend", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"httpMethod\":\"POST\",\"routePath\":\"/users\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\",\"format\":\"email\"}},\"required\":[\"name\",\"email\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}},\"required\":[\"id\",\"name\",\"email\"]},\"middlewares\":[\"validateApiKey\"],\"asyncHandler\":true}", + "description": "Create a POST /users endpoint that validates input user data with middleware to check an API key, returning the created user object asynchronously." + }, + { + "inputJson": "{\"httpMethod\":\"GET\",\"routePath\":\"/products/:id\",\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"}},\"required\":[\"id\",\"name\",\"price\"]},\"middlewares\":[\"authenticateUser\",\"logRequest\"],\"asyncHandler\":false}", + "description": "Build a synchronous GET /products/:id endpoint with authentication and logging middleware, returning product details." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "web-development.buildComponent", + "description": "Generates a customizable web UI component based on specified framework, component type, props, and styles. Accepts configuration inputs and outputs self-contained code snippets in JavaScript or TypeScript, compatible with React, Vue, or Angular, ready for integration and further development.", + "category": "web-development", + "parameters": [ + { + "name": "framework", + "type": "string", + "description": "Target JavaScript framework for the component, e.g., react, vue, angular", + "required": true, + "defaultValue": "" + }, + { + "name": "componentType", + "type": "string", + "description": "Type of UI component to build, e.g., button, card, modal, input", + "required": true, + "defaultValue": "" + }, + { + "name": "componentName", + "type": "string", + "description": "The name to assign to the generated component", + "required": false, + "defaultValue": "CustomComponent" + }, + { + "name": "props", + "type": "object", + "description": "Key-value pairs defining props and their types to be included in the component", + "required": false, + "defaultValue": "{}" + }, + { + "name": "styles", + "type": "object", + "description": "CSS style definitions or classes to apply to the component elements", + "required": false, + "defaultValue": "{}" + }, + { + "name": "typescript", + "type": "boolean", + "description": "Whether to generate the component code in TypeScript (true) or plain JavaScript (false)", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Include boilerplate test file for the component (using Jest or preferred framework)", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code for the component and optionally associated files like styles and tests" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create reusable UI components quickly in popular JavaScript frameworks from specifications such as component type, props, and style. It is ideal for generating starter code for frontend development tasks, speeding up prototyping or scaffolding UI elements.", + "limitations": "This tool does not handle complex business logic, state management beyond basic props, or automatically generate responsive or accessible design compliance beyond simple styling. It cannot replace full component design or human review for UI/UX best practices.", + "examples": [ + "Generate a React button component named 'PrimaryButton' with props for 'label' (string) and 'onClick' (function), including basic styling and TypeScript support.", + "Build a Vue modal component with customizable title and visible props, without TypeScript.", + "Create an Angular input field component named 'SearchInput' with style classes and include a Jest test file." + ] + }, + "tags": [ + "web", + "component", + "UI", + "frontend", + "react", + "vue", + "angular", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"framework\":\"react\",\"componentType\":\"button\",\"componentName\":\"PrimaryButton\",\"props\":{\"label\":\"string\",\"onClick\":\"() => void\"},\"styles\":{\"backgroundColor\":\"blue\",\"color\":\"white\"},\"typescript\":true,\"includeTests\":true}", + "description": "Generate a TypeScript React button component named PrimaryButton with label and onClick props, styled with blue background and white text, including a test file." + }, + { + "inputJson": "{\"framework\":\"vue\",\"componentType\":\"modal\",\"componentName\":\"InfoModal\",\"props\":{\"title\":\"string\",\"isVisible\":\"boolean\"},\"styles\":{},\"typescript\":false,\"includeTests\":false}", + "description": "Generate a plain JavaScript Vue modal component InfoModal with title and visibility controlled by props, without additional styles or tests." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "web-development.buildSchema", + "description": "Generates a JSON Schema definition based on user-provided structure specifications for website data models. Accepts an input object describing fields, types, and constraints, and produces a valid, comprehensive JSON Schema to validate data objects in web applications.", + "category": "web-development", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name identifier of the data model or schema to build.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "An array of field descriptor objects defining each property with type, required flag, and constraints such as minLength, maxLength, format etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalProperties", + "type": "boolean", + "description": "Whether to allow properties not specified in the schema fields. Defaults to false to enforce strict validation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "requiredFields", + "type": "array", + "description": "List of field names that must be present in the valid data object. Overrides field-level required flags.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON Schema object compliant with the JSON Schema Specification (draft-07 or later) representing the data model described by the input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate JSON Schema documents for validating website data structures, such as form inputs, API payloads, or configuration objects. It helps automate schema creation based on declarative field specifications, reducing manual coding errors and improving data integrity in web apps.", + "limitations": "This tool does not generate schemas for database-specific constraints or indexing. It focuses on JSON Schema specification for data validation and does not handle UI forms or code generation.", + "examples": [ + "Generate a JSON schema for a user profile with fields like name (string), email (string, format email), age (integer, minimum 0), and required fields name and email.", + "Create schema for a blog post object with title (string), content (string), tags (array of strings), and publishedAt (string, format date-time).", + "Build schema for an e-commerce product with id (string), price (number, minimum 0), description (string, optional), and stockCount (integer)." + ] + }, + "tags": [ + "web", + "schema", + "json-schema", + "validation", + "data-model", + "automation", + "input-validation" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"UserProfile\",\"fields\":[{\"name\":\"name\",\"type\":\"string\",\"required\":true},{\"name\":\"email\",\"type\":\"string\",\"format\":\"email\",\"required\":true},{\"name\":\"age\",\"type\":\"integer\",\"minimum\":0}],\"requiredFields\":[\"name\",\"email\"],\"additionalProperties\":false}", + "description": "Generate a JSON Schema for a user profile model with required name and email, and an optional age field." + }, + { + "inputJson": "{\"modelName\":\"BlogPost\",\"fields\":[{\"name\":\"title\",\"type\":\"string\",\"required\":true},{\"name\":\"content\",\"type\":\"string\",\"required\":true},{\"name\":\"tags\",\"type\":\"array\",\"items\":{\"type\":\"string\"},\"required\":false},{\"name\":\"publishedAt\",\"type\":\"string\",\"format\":\"date-time\",\"required\":false}],\"requiredFields\":[\"title\",\"content\"],\"additionalProperties\":false}", + "description": "Create a schema for a blog post object that requires title and content, with optional tags and publishedAt datetime." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "web-development.buildQuery", + "description": "Constructs a URL query string or structured query object based on input parameters for web requests. Accepts filters, sort orders, pagination settings, and field selections, then outputs an encoded query string or JSON object suitable for API calls or URL appending.", + "category": "web-development", + "parameters": [ + { + "name": "filters", + "type": "object", + "description": "Key-value pairs representing filter conditions, where values can be strings, numbers, or arrays for multi-values.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field name to sort the results by (e.g., 'date', 'name').", + "required": false, + "defaultValue": "" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Sort direction: 'asc' for ascending or 'desc' for descending.", + "required": false, + "defaultValue": "asc" + }, + { + "name": "page", + "type": "number", + "description": "Page number for paginated results, starting at 1.", + "required": false, + "defaultValue": "1" + }, + { + "name": "pageSize", + "type": "number", + "description": "Number of items per page for pagination.", + "required": false, + "defaultValue": "10" + }, + { + "name": "fields", + "type": "array", + "description": "Array of strings specifying which fields to include in the response.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "encode", + "type": "boolean", + "description": "If true, output is a URL-encoded query string; if false, output is a JSON query object.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing either the 'queryString' as a URL-encoded string when encode=true, or a 'queryObject' representing the structured query if encode=false." + }, + "aiAgent": { + "useCase": "Use this tool when needing to dynamically generate URL query strings or JSON query objects for API requests based on user input parameters such as filters, sorting, pagination, and selected fields. It helps construct standardized queries to interact with RESTful web services or build URLs for fetching data.", + "limitations": "Does not support complex nested logical operators like AND/OR groups or advanced GraphQL queries. Only handles simple flat filter objects and basic sorting and pagination.", + "examples": [ + "Build a URL query string to filter products by category and price range, sorted by price descending, with page 2 of 20 items per page.", + "Generate a JSON query object for an API call filtering users by status 'active' and selecting only 'id' and 'email' fields.", + "Create a query string for fetching posts with no filters but sorted by date ascending including fields 'title' and 'summary'." + ] + }, + "tags": [ + "web", + "query builder", + "URL encoding", + "API", + "pagination", + "filters", + "sorting" + ], + "examples": [ + { + "inputJson": "{\"filters\":{\"category\":\"books\",\"priceMax\":30},\"sortBy\":\"price\",\"sortOrder\":\"desc\",\"page\":2,\"pageSize\":20,\"fields\":[\"title\",\"author\",\"price\"],\"encode\":true}", + "description": "Generate a URL query string filtering books with max price 30, sorted by price descending, page 2, 20 items/page, including title, author, price fields." + }, + { + "inputJson": "{\"filters\":{\"status\":\"active\"},\"fields\":[\"id\",\"email\"],\"encode\":false}", + "description": "Build a JSON query object to filter active users and select only id and email fields." + }, + { + "inputJson": "{\"sortBy\":\"date\",\"sortOrder\":\"asc\",\"fields\":[\"title\",\"summary\"],\"encode\":true}", + "description": "Create a URL-encoded query string sorted by ascending date selecting title and summary fields, no filters." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "web-development.buildDependency", + "description": "This tool automates the process of building and bundling a specified JavaScript or CSS dependency for web projects. It accepts a dependency name and version, processes it by fetching the source from package registries, builds or bundles the code (optionally minifying and transpiling), and outputs a ready-to-use build artifact with metadata for integration.", + "category": "web-development", + "parameters": [ + { + "name": "dependencyName", + "type": "string", + "description": "The exact name of the dependency/package to build (e.g., react, lodash).", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "The specific version of the dependency to use. If empty, uses latest.", + "required": false, + "defaultValue": "" + }, + { + "name": "buildTools", + "type": "array", + "description": "An array specifying which build tools or bundlers to use (e.g., webpack, rollup, esbuild). Defaults to webpack if empty.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minify", + "type": "boolean", + "description": "Whether to minify the output bundle. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "transpileTarget", + "type": "string", + "description": "Target environment for transpilation (e.g., es5, es6) to ensure compatibility. Empty means no transpilation.", + "required": false, + "defaultValue": "" + }, + { + "name": "entryFile", + "type": "string", + "description": "Custom entry file path within the dependency if different from default package main. Empty uses default.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the built artifact filename, path, size bytes, and metadata like dependency name and version used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically prepare a dependency package for web projects, especially in scenarios requiring building from source with specific versions, bundling strategies, and optimization options like minification or transpilation for target environments.", + "limitations": "This tool does not resolve dependency conflicts or install dependencies in projects; it solely builds individual specified dependencies. It also requires internet access to fetch package sources and assumes standard package structures.", + "examples": [ + "Build the React library version 17.0.2 using webpack with minification enabled.", + "Bundle lodash latest version with esbuild targeting ES5 environment.", + "Build a CSS framework dependency with no minification and default build process." + ] + }, + "tags": [ + "build", + "dependency", + "web-development", + "bundling", + "minification", + "transpilation" + ], + "examples": [ + { + "inputJson": "{\"dependencyName\":\"react\",\"version\":\"17.0.2\",\"buildTools\":[\"webpack\"],\"minify\":true,\"transpileTarget\":\"es6\",\"entryFile\":\"\"}", + "description": "Build React 17.0.2 using webpack with minification and ES6 target." + }, + { + "inputJson": "{\"dependencyName\":\"lodash\",\"version\":\"\",\"buildTools\":[\"esbuild\"],\"minify\":false,\"transpileTarget\":\"es5\",\"entryFile\":\"\"}", + "description": "Build latest lodash using esbuild, no minification, transpile to ES5." + }, + { + "inputJson": "{\"dependencyName\":\"tailwindcss\",\"version\":\"3.1.0\",\"buildTools\":[],\"minify\":false,\"transpileTarget\":\"\",\"entryFile\":\"src/index.css\"}", + "description": "Build Tailwind CSS 3.1.0 with default build tool and custom entry CSS file, no minification." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Dependency", + "context": null + } + }, + { + "name": "web-development.buildModule", + "description": "Builds a reusable web development module by accepting source code files, configuration options, and dependencies, then compiles and bundles them into a distributable JavaScript module compatible with modern frontend frameworks or vanilla JS projects. Outputs the compiled module files and a manifest describing the module structure.", + "category": "web-development", + "parameters": [ + { + "name": "sourceFiles", + "type": "array", + "description": "Array of source code files (JavaScript/TypeScript/HTML/CSS) to include in the module, each as an object with filename and content", + "required": true, + "defaultValue": "" + }, + { + "name": "entryPoint", + "type": "string", + "description": "The main file (relative to sourceFiles) that serves as the module entry point", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The output module format: e.g., 'esm', 'cjs', or 'umd'", + "required": true, + "defaultValue": "esm" + }, + { + "name": "includeSourceMaps", + "type": "boolean", + "description": "Whether to generate source maps for debugging", + "required": false, + "defaultValue": "false" + }, + { + "name": "dependencies", + "type": "object", + "description": "A key-value map of external dependencies and their versions to include as peer dependencies", + "required": false, + "defaultValue": "{}" + }, + { + "name": "minify", + "type": "boolean", + "description": "Whether to minify the output code", + "required": false, + "defaultValue": "true" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "Target environment for the module, e.g., 'browser', 'node', or 'universal'", + "required": false, + "defaultValue": "browser" + } + ], + "returns": { + "type": "object", + "description": "An object containing the bundled module files keyed by filename and a manifest describing the module metadata and dependencies" + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate the process of building a web development module from source files, manage dependencies, configure output format, and produce a ready-to-distribute package compatible with frontend applications or libraries. Ideal for generating reusable modular code components.", + "limitations": "Does not perform runtime testing or deployment; does not resolve complex dependency graphs beyond specified peers; input code correctness and syntax checking are outside its scope.", + "examples": [ + "Build a minified ES module from several JS and CSS files with source maps for a browser app.", + "Create a CommonJS module targeting Node environment with specified external dependencies.", + "Generate a UMD bundle without minification including source files with HTML and CSS assets." + ] + }, + "tags": [ + "web-development", + "module", + "build", + "frontend", + "bundling", + "js", + "typescript" + ], + "examples": [ + { + "inputJson": "{\"sourceFiles\":[{\"filename\":\"index.js\",\"content\":\"export function greet() { return 'Hello'; }\"},{\"filename\":\"style.css\",\"content\":\".greet { color: blue; }\"}],\"entryPoint\":\"index.js\",\"outputFormat\":\"esm\",\"includeSourceMaps\":true,\"dependencies\":{},\"minify\":true,\"targetEnvironment\":\"browser\"}", + "description": "Builds an ES module with source code and CSS, including source maps, minified for browser use." + }, + { + "inputJson": "{\"sourceFiles\":[{\"filename\":\"main.ts\",\"content\":\"export const pi = 3.14;\"}],\"entryPoint\":\"main.ts\",\"outputFormat\":\"cjs\",\"includeSourceMaps\":false,\"dependencies\":{\"lodash\":\"^4.17.21\"},\"minify\":true,\"targetEnvironment\":\"node\"}", + "description": "Creates a CommonJS module in Node.js targeting environment with lodash as external dependency." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "web-development.buildFunction", + "description": "Generates a JavaScript function code snippet based on specified name, parameters, body logic, and style options. It accepts the function name, list of parameter names, function body as code string, and an optional style for output format ('declaration' or 'arrow'). It outputs a well-formatted JavaScript function string that can be inserted into projects or further customized.", + "category": "web-development", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The name of the function to create (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "Array of parameter names for the function (optional, default empty)", + "required": false, + "defaultValue": "[]" + }, + { + "name": "functionBody", + "type": "string", + "description": "JavaScript code to be used as the function's executable body (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Defines format of function code: 'declaration' for function declaration or 'arrow' for arrow function (optional; default 'declaration')", + "required": false, + "defaultValue": "\"declaration\"" + }, + { + "name": "useStrict", + "type": "boolean", + "description": "Whether to add 'use strict' directive at the start of the function body (optional; default false)", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript function code as a string under 'functionCode' key" + }, + "aiAgent": { + "useCase": "Use this tool to programmatically generate reusable JavaScript functions tailored to specified signatures and logic, facilitating automated code scaffolding in web development workflows, templates, or code synthesis scenarios.", + "limitations": "This tool does not validate syntax correctness of the provided function body code or perform static analysis; it only formats code structure based on inputs.", + "examples": [ + "Create a function named 'sum' with parameters ['a','b'] that returns their addition.", + "Generate an arrow function 'greet' that accepts one parameter 'name' and returns a greeting string.", + "Build a 'multiply' function with parameters ['x','y'] including 'use strict' directive in the body." + ] + }, + "tags": [ + "web", + "javascript", + "function", + "code-generation", + "template", + "scaffolding" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"sum\",\"parameters\":[\"a\",\"b\"],\"functionBody\":\"return a + b;\",\"style\":\"declaration\",\"useStrict\":false}", + "description": "Generate a traditional function declaration named 'sum' that adds two numbers." + }, + { + "inputJson": "{\"functionName\":\"greet\",\"parameters\":[\"name\"],\"functionBody\":\"return `Hello, ${name}!`;\",", + "description": "Create an arrow function 'greet' that returns a greeting message." + }, + { + "inputJson": "{\"functionName\":\"multiply\",\"parameters\":[\"x\",\"y\"],\"functionBody\":\"'use strict';\\nreturn x * y;\",\"style\":\"declaration\",\"useStrict\":true}", + "description": "Build a function 'multiply' that multiplies two values including 'use strict' directive." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "web-development.buildAPI", + "description": "Generates a RESTful API server skeleton based on user-supplied specifications including endpoints, HTTP methods, request/response schemas, and authentication options. Takes JSON describing API design and outputs ready-to-run server code in Node.js/Express with basic validation and routing setup.", + "category": "web-development", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The name of the API being built, used as project title and namespace.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "An array of endpoint definitions, each including path, HTTP method, request and response schemas, and optional auth requirements.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional authentication configuration (type, e.g., jwt or none, and related settings).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "databaseSupport", + "type": "boolean", + "description": "Whether to include basic database connection scaffolding (e.g., MongoDB integration).", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Programming language/framework for the generated API server (default is Node.js with Express).", + "required": false, + "defaultValue": "nodejs-express" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated API server source code files mapped by filename, including routes, controllers, and configuration files ready for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when a user needs to quickly scaffold a RESTful API with specified endpoints without manual coding, enabling rapid prototyping or starting point for development. Particularly useful when endpoint details and schema specs are known and a Node.js/Express backend is desired.", + "limitations": "This tool does not implement complex business logic or advanced data validation beyond basic schema checks. It assumes standard REST conventions and is limited to the specified framework and language. It cannot deploy or host the generated code.", + "examples": [ + "Generate an API for managing books with GET/post endpoints including JSON schemas.", + "Build a user management API with JWT authentication and CRUD endpoints.", + "Scaffold a simple product catalog API without authentication." + ] + }, + "tags": [ + "api", + "web-development", + "rest", + "nodejs", + "express", + "scaffolding", + "backend", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"BookStoreAPI\",\"endpoints\":[{\"path\":\"/books\",\"method\":\"GET\",\"requestSchema\":{},\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"title\":{\"type\":\"string\"},\"author\":{\"type\":\"string\"}}}},\"authenticationRequired\":false},{\"path\":\"/books\",\"method\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"title\":{\"type\":\"string\"},\"author\":{\"type\":\"string\"}}},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"}}},\"authenticationRequired\":true}],\"authentication\":{\"type\":\"jwt\"},\"databaseSupport\":true}", + "description": "Generate a book management API with GET and POST endpoints, JWT authentication, and MongoDB support." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "web-development.buildMigration", + "description": "Generates database migration scripts for web applications based on schema changes provided as input. Accepts current and target database schema definitions and outputs incremental migration code in SQL or a selected migration framework format.", + "category": "web-development", + "parameters": [ + { + "name": "currentSchema", + "type": "object", + "description": "Current database schema represented as a JSON object detailing tables, columns, types, and constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetSchema", + "type": "object", + "description": "Desired target database schema represented as JSON, indicating intended changes compared to current schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database for targeted migration scripts (e.g., 'PostgreSQL', 'MySQL', 'SQLite').", + "required": true, + "defaultValue": "PostgreSQL" + }, + { + "name": "migrationFramework", + "type": "string", + "description": "Optional migration tooling format for output scripts (e.g., 'Knex', 'TypeORM', 'Sequelize'). If empty, outputs raw SQL.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRollback", + "type": "boolean", + "description": "Flag specifying if rollback migration scripts should be generated alongside forward migrations.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured output containing the migration script code as a string, optionally both forward and rollback scripts, and metadata about the migration steps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate the creation of database migration scripts for web applications after schema changes. It helps developers generate safe, incremental migration SQL or framework-specific scripts to update database schemas without manual script writing.", + "limitations": "This tool does not validate the runtime environment or perform database state verification. Complex schema conflicts or manual intervention for data migrations beyond schema changes are not handled.", + "examples": [ + "Generate migration SQL from an old schema to a new schema for a PostgreSQL database.", + "Create migration scripts using Knex format including rollback scripts for schema evolution.", + "Produce raw SQL migrations for a MySQL database without rollback scripts." + ] + }, + "tags": [ + "database", + "migration", + "web-development", + "schema", + "automation", + "SQL", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"currentSchema\":{\"tables\":{\"users\":{\"columns\":{\"id\":{\"type\":\"integer\",\"primaryKey\":true},\"name\":{\"type\":\"string\",\"nullable\":false}}}}},\"targetSchema\":{\"tables\":{\"users\":{\"columns\":{\"id\":{\"type\":\"integer\",\"primaryKey\":true},\"name\":{\"type\":\"string\",\"nullable\":false},\"email\":{\"type\":\"string\",\"nullable\":true}}}}},\"databaseType\":\"PostgreSQL\",\"migrationFramework\":\"\",\"includeRollback\":true}", + "description": "Create SQL migration scripts to add an optional 'email' column to the 'users' table, including rollback script for PostgreSQL." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Migration", + "context": null + } + }, + { + "name": "web-development.buildTest", + "description": "Generates automated test code for a specified web development component or function. Accepts details of the component, preferred test framework, and test cases, then produces runnable test scripts in the chosen framework format to verify component behavior.", + "category": "web-development", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "Name of the component or module to generate tests for.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The testing framework to use (e.g., Jest, Mocha, Jasmine).", + "required": true, + "defaultValue": "Jest" + }, + { + "name": "testCases", + "type": "array", + "description": "Array of test case objects describing input conditions and expected outputs.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the component and test (e.g., JavaScript, TypeScript).", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "includeSetupTeardown", + "type": "boolean", + "description": "Whether to include setup and teardown hooks in the generated test code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated test code as a string and metadata such as language and framework used." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create automated tests for a web component or function, especially to accelerate unit test writing by providing structured test cases and preferred frameworks. It helps streamline test generation for faster development cycles.", + "limitations": "The tool cannot infer component behavior without explicit test case specifications and does not execute tests or perform test validation; it only generates test code based on input descriptions.", + "examples": [ + "Generate Jest unit tests for a React button component given input events and expected outputs.", + "Create Mocha tests for a backend API request handler with specified input and expected responses.", + "Build Jasmine tests for a utility function with various edge case inputs." + ] + }, + "tags": [ + "testing", + "automation", + "web-development", + "unit-test", + "test-generation" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"LoginForm\",\"testFramework\":\"Jest\",\"testCases\":[{\"description\":\"renders input fields\",\"input\":null,\"expected\":\"input fields present\"},{\"description\":\"submits form with valid data\",\"input\":{\"username\":\"user\",\"password\":\"pass\"},\"expected\":\"calls onSubmit handler\"}],\"language\":\"JavaScript\",\"includeSetupTeardown\":true}", + "description": "Generate Jest tests for LoginForm component verifying UI elements and submit behavior." + }, + { + "inputJson": "{\"componentName\":\"apiHandler\",\"testFramework\":\"Mocha\",\"testCases\":[{\"description\":\"responds with 200 status\",\"input\":{\"requestType\":\"GET\"},\"expected\":{\"status\":200}}],\"language\":\"JavaScript\",\"includeSetupTeardown\":false}", + "description": "Create Mocha tests for an API handler that expects GET requests and returns status 200." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "web-development.buildCode", + "description": "This tool accepts specifications for a website or web application in the form of a structured object describing pages, components, styles, and behaviors. It processes these inputs to generate clean, modular front-end source code in HTML, CSS, and JavaScript or frameworks like React. The output includes ready-to-use code files and a summary of generated assets.", + "category": "web-development", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the web project or application to generate code for.", + "required": true, + "defaultValue": "" + }, + { + "name": "pages", + "type": "array", + "description": "An array of page definitions including layout, content, and components to be included on each page.", + "required": true, + "defaultValue": "" + }, + { + "name": "styles", + "type": "object", + "description": "Styling guidelines or theme definitions such as colors, fonts, and spacing to apply globally or per component.", + "required": false, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Target front-end framework or library to use for code generation, e.g., 'vanilla', 'react', 'vue'.", + "required": false, + "defaultValue": "vanilla" + }, + { + "name": "includeRouting", + "type": "boolean", + "description": "Whether to generate routing/navigation code for multi-page or single page applications.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specify preferred output format such as 'file-zip' (default), 'folder-structure' or 'inline-code'.", + "required": false, + "defaultValue": "file-zip" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code files structured by filenames and content. May include metadata such as file count, total size in bytes, and a summary report." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate foundational front-end web code from high-level project and design specifications, speeding up prototyping or initial development stages. Ideal for scenarios where detailed UI/UX components and pages are described and code scaffolding is desired in popular frameworks.", + "limitations": "The tool cannot generate backend/server-side code, complex state management logic beyond basic patterns, or handle highly custom interactive behaviors without detailed specification.", + "examples": [ + "Generate a multi-page React website code base with given pages and global styles.", + "Build static HTML/CSS/JS frontend code for a simple marketing website.", + "Create a Vue.js SPA code structure with routing and styled components based on provided specs." + ] + }, + "tags": [ + "web", + "code-generation", + "frontend", + "scaffolding", + "react", + "vue", + "html", + "css", + "javascript" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"PortfolioSite\",\"pages\":[{\"name\":\"Home\",\"components\":[{\"type\":\"Header\"},{\"type\":\"Gallery\"},{\"type\":\"ContactForm\"}]},{\"name\":\"About\",\"components\":[{\"type\":\"TextSection\"}]}],\"styles\":{\"primaryColor\":\"#3498db\",\"fontFamily\":\"Arial, sans-serif\"},\"framework\":\"react\",\"includeRouting\":true,\"outputFormat\":\"file-zip\"}", + "description": "Generate React code for a portfolio site with Home and About pages, including components and global styles." + }, + { + "inputJson": "{\"projectName\":\"LandingPage\",\"pages\":[{\"name\":\"Main\",\"components\":[{\"type\":\"HeroSection\"},{\"type\":\"FeaturesList\"},{\"type\":\"SignupForm\"}]}],\"styles\":{\"primaryColor\":\"#e74c3c\",\"fontFamily\":\"Helvetica, sans-serif\"},\"framework\":\"vanilla\",\"includeRouting\":false,\"outputFormat\":\"inline-code\"}", + "description": "Build static vanilla HTML/CSS/JS for a single landing page with hero, features, and signup form components." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "web-development.createReference", + "description": "Generates standardized web references (e.g., bibliography or resource citations) based on provided source details. Accepts metadata like author, title, URL, access date, and formats the reference according to common citation styles (APA, MLA, Chicago). Outputs formatted citation string suitable for embedding in web content or documentation.", + "category": "web-development", + "parameters": [ + { + "name": "sourceType", + "type": "string", + "description": "Type of source being referenced (e.g., website, article, book).", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Author or creator of the source (person or organization).", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the content or resource being referenced.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationYear", + "type": "number", + "description": "Year the source was published or released.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL of the source if it is an online resource.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessDate", + "type": "string", + "description": "Date the source was accessed (ISO format recommended).", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style to format the reference (e.g., APA, MLA, Chicago).", + "required": true, + "defaultValue": "APA" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted citation string in the chosen style, ready for inclusion in web pages or documentation, plus metadata about the citation style used." + }, + "aiAgent": { + "useCase": "Use when generating properly formatted reference citations for web-based documents or websites, especially when sourcing external information that requires crediting with standard citation formats.", + "limitations": "Does not fetch or validate source metadata automatically; requires accurate input. Limited to common citation formats and source types; may not support highly specialized or rare citation needs.", + "examples": [ + "Create an APA citation for a web article authored by Jane Doe, accessed on 2023-05-10.", + "Format a MLA style reference for a company website with no specified author.", + "Generate a Chicago style citation for an online book published in 2020 with a known author." + ] + }, + "tags": [ + "web-development", + "reference", + "citation", + "bibliography", + "content-creation", + "documentation", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"sourceType\":\"website\",\"author\":\"John Smith\",\"title\":\"Understanding Web Development\",\"publicationYear\":2022,\"url\":\"https://example.com/webdev\",\"accessDate\":\"2023-04-01\",\"citationStyle\":\"APA\"}", + "description": "Generate an APA formatted citation for a website article with known author and access date." + }, + { + "inputJson": "{\"sourceType\":\"book\",\"author\":\"Emma Brown\",\"title\":\"Modern JavaScript\",\"publicationYear\":2019,\"citationStyle\":\"Chicago\"}", + "description": "Create a Chicago style reference for a published book with author and year." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "web-development.createQuote", + "description": "Generates an HTML snippet for displaying a styled quote on a website. Accepts quote text, author, optional citation URL, and styling options like font style and alignment. Outputs a ready-to-insert HTML string representing the formatted quote block.", + "category": "web-development", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The main content of the quote to be displayed.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the person who said the quote.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationUrl", + "type": "string", + "description": "Optional URL to link the author's name or provide source of the quote.", + "required": false, + "defaultValue": "" + }, + { + "name": "fontStyle", + "type": "string", + "description": "CSS font style to apply to the quote text (e.g., italic, normal).", + "required": false, + "defaultValue": "italic" + }, + { + "name": "textAlign", + "type": "string", + "description": "Text alignment for the quote block: left, center, or right.", + "required": false, + "defaultValue": "left" + }, + { + "name": "includeQuoteMarks", + "type": "boolean", + "description": "Whether to enclose the quote text in quotation marks.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing a single property 'html' with the generated HTML quote block as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a visually formatted quote section as HTML for embedding into web pages or blog posts, including proper attribution and optional styling. It's helpful for dynamically generating quotes with consistent styling in web development tasks.", + "limitations": "Does not generate image-based quotes or advanced interactive elements; purely creates styled HTML text blocks. It requires valid input strings and does not validate URLs beyond presence.", + "examples": [ + "Create a centered italicized quote with author linked to a source URL.", + "Generate a left-aligned quote block without quotation marks for a testimonial section.", + "Produce a quote snippet with default styles and no citation link." + ] + }, + "tags": [ + "quote", + "html", + "web-development", + "content-creation", + "styling" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"author\":\"Franklin D. Roosevelt\",\"citationUrl\":\"https://www.fdrlibrary.org/\"}", + "description": "A classic inspirational quote with author linked to an external URL." + }, + { + "inputJson": "{\"quoteText\":\"Simplicity is the ultimate sophistication.\",\"author\":\"Leonardo da Vinci\",\"textAlign\":\"center\",\"fontStyle\":\"normal\",\"includeQuoteMarks\":false}", + "description": "Centered, normal font style quote without quotation marks for a minimalist web design." + }, + { + "inputJson": "{\"quoteText\":\"Code is like humor. When you have to explain it, it’s bad.\",\"author\":\"Cory House\"}", + "description": "Default styled quote with author and no citation link." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "web-development.createLink", + "description": "Generates an HTML anchor element (
) string based on provided parameters, including URL, display text, optional target, rel attributes, CSS classes, and accessibility attributes. Accepts parameters to customize the link output for embedding directly into web pages or HTML content.", + "category": "web-development", + "parameters": [ + { + "name": "href", + "type": "string", + "description": "The URL or link target for the anchor element. Must be a valid URL or relative path.", + "required": true, + "defaultValue": "" + }, + { + "name": "text", + "type": "string", + "description": "The visible text or content inside the link. HTML may be included if safe.", + "required": true, + "defaultValue": "" + }, + { + "name": "target", + "type": "string", + "description": "The target attribute specifying how to open the link, e.g., '_blank', '_self'. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "rel", + "type": "string", + "description": "The rel attribute for relationship hints like 'noopener', 'nofollow'. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "classNames", + "type": "array", + "description": "An array of CSS class names to apply to the anchor element for styling.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "ariaLabel", + "type": "string", + "description": "Optional ARIA label attribute to improve accessibility, providing an accessible name.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string for the anchor element under the key 'html'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a customized HTML link string to embed in web pages, emails, or other HTML content. It is ideal for generating links with specific targets, accessibility attributes, and styling classes without manually writing HTML each time.", + "limitations": "This tool does not validate URL safety or sanitize input to prevent XSS; ensure inputs are trusted or sanitized externally. It also does not support generating complex link content such as nested elements beyond the provided text string.", + "examples": [ + "Create a link to 'https://example.com' with text 'Visit Example' opening in a new tab.", + "Generate a link with CSS classes 'btn' and 'btn-primary' for styling.", + "Create an accessible link with aria-label 'Read more about topics'." + ] + }, + "tags": [ + "web", + "html", + "link", + "anchor", + "generator", + "accessibility", + "css", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"href\":\"https://example.com\",\"text\":\"Visit Example\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"classNames\":[\"btn\",\"btn-primary\"],\"ariaLabel\":\"Visit Example Website\"}", + "description": "Creates an external link to example.com that opens in a new tab, includes security rel attributes, styled with CSS classes, and accessibility label." + }, + { + "inputJson": "{\"href\":\"/about\",\"text\":\"About Us\",\"classNames\":[\"nav-link\"]}", + "description": "Creates a relative link to the About page with a CSS class for navigation link styling." + }, + { + "inputJson": "{\"href\":\"mailto:info@example.com\",\"text\":\"Contact Us\",\"ariaLabel\":\"Send email to contact\"}", + "description": "Creates a mailto link to send an email with an ARIA label for accessibility." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "web-development.createCitation", + "description": "Generates formatted citation text from given bibliographic details in various citation styles like APA, MLA, Chicago, and more. Accepts citation data such as author names, title, publication year, source type, and outputs a properly formatted citation string for website content inclusion.", + "category": "web-development", + "parameters": [ + { + "name": "authors", + "type": "array", + "description": "List of author names in 'Last, First' format.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the work to be cited, such as article or book title.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationYear", + "type": "number", + "description": "Year the work was published.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of source, e.g., 'book', 'article', 'website', 'conferencePaper'.", + "required": true, + "defaultValue": "" + }, + { + "name": "publisher", + "type": "string", + "description": "Publisher or organization responsible for the work. Optional for some source types.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL of the source, used if sourceType is 'website' or online resource.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style format to apply: e.g., 'APA', 'MLA', 'Chicago'.", + "required": true, + "defaultValue": "APA" + }, + { + "name": "accessDate", + "type": "string", + "description": "Date the source was accessed (for online sources), in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single property 'citationText' containing the formatted citation as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate properly formatted bibliographic citations from structured bibliographic data to embed in web content, academic references, or documentation where correct citation format is required automatically. This helps maintain consistency and accuracy in citing various source types across multiple citation styles.", + "limitations": "Does not verify the accuracy of the bibliographic data entered and cannot generate citations from unstructured natural language input. It also does not support citation styles outside a predefined list and may not handle very rare or complex source types perfectly.", + "examples": [ + "Create an APA citation for a book authored by multiple authors published in 2019.", + "Generate an MLA citation for an online article with URL and access date.", + "Format a Chicago style citation for a conference paper with publisher details." + ] + }, + "tags": [ + "citation", + "web-development", + "formatting", + "bibliography", + "academic", + "reference" + ], + "examples": [ + { + "inputJson": "{\"authors\":[\"Doe, John\",\"Smith, Jane\"],\"title\":\"Understanding AI Tools\",\"publicationYear\":2019,\"sourceType\":\"book\",\"publisher\":\"Tech Press\",\"citationStyle\":\"APA\"}", + "description": "Generate an APA citation for a book with two authors published in 2019." + }, + { + "inputJson": "{\"authors\":[\"Williams, Sarah\"],\"title\":\"Open Web Sources and Their Impact\",\"publicationYear\":2021,\"sourceType\":\"website\",\"url\":\"https://example.com/article\",\"citationStyle\":\"MLA\",\"accessDate\":\"2024-04-20\"}", + "description": "Create an MLA citation for an online article including URL and access date." + }, + { + "inputJson": "{\"authors\":[\"Johnson, Mark\"],\"title\":\"Next-Gen Web Frameworks\",\"publicationYear\":2022,\"sourceType\":\"conferencePaper\",\"publisher\":\"International Web Conf\",\"citationStyle\":\"Chicago\"}", + "description": "Format a Chicago style citation for a conference paper with publisher details." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Citation", + "context": null + } + }, + { + "name": "web-development.createHeading", + "description": "Generates a semantic HTML heading element as a string. Accepts the heading level (h1-h6), the text content, an optional CSS class name or array of class names, and optional inline styles as a CSS string. Outputs a well-formed HTML heading tag with the specified attributes and content.", + "category": "web-development", + "parameters": [ + { + "name": "level", + "type": "number", + "description": "Heading level between 1 and 6 indicating h1 to h6 tags.", + "required": true, + "defaultValue": "" + }, + { + "name": "text", + "type": "string", + "description": "Text content to be placed inside the heading element.", + "required": true, + "defaultValue": "" + }, + { + "name": "className", + "type": "string", + "description": "Optional CSS class name(s) as a single string or space-separated list.", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Optional inline styles as a valid CSS string (e.g. 'color:red;font-weight:bold;').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A string representing the complete HTML heading element with supplied level, content, class, and style." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate semantic HTML heading elements for webpages or templates, allowing customization of heading level, content, CSS classes, and inline styles. This is useful for dynamically assembled webpages where headings need to be created consistently and safely without manual HTML coding.", + "limitations": "It does not sanitize or escape the text content, so it should not be used with untrusted input without prior sanitization. It also does not support accessibility attributes like aria-label or id by default.", + "examples": [ + "Create a main title heading level 1 with custom CSS class.", + "Generate a subheading level 3 with inline style for color.", + "Produce a heading level 2 without any additional class or style." + ] + }, + "tags": [ + "web", + "html", + "heading", + "ui", + "content", + "frontend", + "templating" + ], + "examples": [ + { + "inputJson": "{\"level\":1,\"text\":\"Welcome to Our Site\",\"className\":\"main-title\",\"style\":\"color:#333; font-weight:bold;\"}", + "description": "Creates an H1 heading with text 'Welcome to Our Site', a class 'main-title', and inline styling for color and font weight." + }, + { + "inputJson": "{\"level\":3,\"text\":\"Features\",\"className\":\"features-subheading\",\"style\":\"color:blue;\"}", + "description": "Generates an H3 heading named 'Features' with a CSS class and blue colored text via inline style." + }, + { + "inputJson": "{\"level\":2,\"text\":\"Contact Us\",\"className\":\"\",\"style\":\"\"}", + "description": "Produces a simple H2 heading 'Contact Us' with no classes or styles." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "web-development.createWord", + "description": "Generates a single valid English word based on specified constraints such as length, starting or ending characters, and part of speech. Inputs include desired word length, optional prefix or suffix, and part of speech preference. Outputs a word string matching the criteria if found, suitable for content creation or dynamic web elements.", + "category": "web-development", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Desired length of the generated word; if zero or omitted, any length is acceptable.", + "required": false, + "defaultValue": "0" + }, + { + "name": "startsWith", + "type": "string", + "description": "Optional starting character(s) that the word should begin with.", + "required": false, + "defaultValue": "" + }, + { + "name": "endsWith", + "type": "string", + "description": "Optional ending character(s) that the word should end with.", + "required": false, + "defaultValue": "" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "Part of speech to filter the word by (e.g., noun, verb, adjective). Optional.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word string or an empty string if no match found, along with a success boolean." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate a valid English word that meets certain lexical or structural criteria for web content, such as placeholder text, creative naming, or user interface elements. It helps automate content generation with linguistic control.", + "limitations": "Cannot guarantee extremely rare or specialized vocabulary words; limited to standard English lexicon. Does not create new words or handle multiple languages.", + "examples": [ + "Generate a 5-letter adjective starting with 's'", + "Find a noun ending with 'ing'", + "Create any verb starting with 're' and length 6" + ] + }, + "tags": [ + "word", + "generation", + "content-creation", + "lexical", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"length\":5,\"startsWith\":\"s\",\"partOfSpeech\":\"adjective\"}", + "description": "Generate a 5-letter adjective starting with 's'." + }, + { + "inputJson": "{\"endsWith\":\"ing\",\"partOfSpeech\":\"noun\"}", + "description": "Generate a noun ending with 'ing'." + }, + { + "inputJson": "{\"length\":6,\"startsWith\":\"re\",\"partOfSpeech\":\"verb\"}", + "description": "Create a 6-letter verb starting with 're'." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "web-development.createConversion", + "description": "This tool creates a web conversion tracking event based on user-defined parameters such as event name, trigger conditions, and associated value. It accepts inputs describing the conversion action, trigger rules, and optional value metrics, and outputs a structured conversion tracking snippet or configuration object for integration into the website's analytics system.", + "category": "web-development", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The name of the conversion event to track, e.g., 'Purchase' or 'SignUp'.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerType", + "type": "string", + "description": "The type of trigger for the conversion event, e.g., 'pageView', 'click', 'formSubmission'.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerSelector", + "type": "string", + "description": "A CSS selector or URL pattern to identify when the conversion event should be triggered.", + "required": false, + "defaultValue": "" + }, + { + "name": "conversionValue", + "type": "number", + "description": "Optional numeric value associated with the conversion, such as purchase amount.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the conversion value, e.g., 'USD'. Required if conversionValue is set.", + "required": false, + "defaultValue": "" + }, + { + "name": "sendTo", + "type": "string", + "description": "Identifier for the analytics platform or account to send the conversion data to (e.g., Google Ads ID).", + "required": true, + "defaultValue": "" + }, + { + "name": "isCustomEvent", + "type": "boolean", + "description": "Indicates if the conversion event is a custom event rather than a standard predefined one.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the conversion tracking configuration, including event name, trigger details, and tracking snippet for integration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to set up or generate web conversion tracking events for analytics platforms based on specific user interactions or conditions on a web page. It is ideal for automating event creation for marketing campaigns or user behavior measurement.", + "limitations": "This tool does not integrate with analytics platforms directly; it generates configuration and snippets that must be manually or programmatically added to the website's codebase or tag manager. It cannot verify if the conversion tracking was successful or handle offline conversion imports.", + "examples": [ + "Create a conversion for tracking purchases on order confirmation page with purchase amount.", + "Set up a sign-up conversion triggered by form submission button click.", + "Generate a custom event conversion for users watching a video till the end." + ] + }, + "tags": [ + "web", + "analytics", + "conversion", + "tracking", + "event", + "marketing", + "user-behavior" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"Purchase\",\"triggerType\":\"pageView\",\"triggerSelector\":\"https://example.com/thank-you\",\"conversionValue\":99.99,\"currency\":\"USD\",\"sendTo\":\"AW-123456789\"}", + "description": "Track purchase conversions when users land on the thank you page with a value of 99.99 USD." + }, + { + "inputJson": "{\"eventName\":\"SignUp\",\"triggerType\":\"click\",\"triggerSelector\":\"#signup-button\",\"sendTo\":\"AW-123456789\"}", + "description": "Create a conversion event for when users click the sign-up button." + }, + { + "inputJson": "{\"eventName\":\"VideoComplete\",\"triggerType\":\"customEvent\",\"triggerSelector\":\"\",\"isCustomEvent\":true,\"sendTo\":\"AW-123456789\"}", + "description": "Setup a custom conversion event for video completion without a specific selector trigger." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "web-development.createText", + "description": "Generates customizable text content suitable for websites based on specified parameters such as content type, length, tone, and topic. Inputs define the desired style and subject, and the tool outputs coherent, SEO-friendly textual content to be used in web pages, blogs, or marketing materials.", + "category": "web-development", + "parameters": [ + { + "name": "contentType", + "type": "string", + "description": "Type of text content to generate, e.g., 'paragraph', 'headline', 'list', or 'caption'.", + "required": true, + "defaultValue": "" + }, + { + "name": "topic", + "type": "string", + "description": "The main subject or theme for the generated text content.", + "required": true, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate word count for the text output. Use 0 for flexible length.", + "required": false, + "defaultValue": "100" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the text such as 'formal', 'informal', 'friendly', 'professional', or 'persuasive'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords to be naturally integrated into the text for SEO purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the generated text, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text content as a string and metadata about the generation, including word count and content type." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate readable, structured text content for diverse website needs such as articles, product descriptions, or headings based on specific topics and tone preferences, facilitating quick content creation without manual writing.", + "limitations": "Cannot create highly specialized technical or legal documents requiring expert knowledge. It may not always accurately reflect current events or real-time data. Text generated may require human review for style consistency and factual accuracy.", + "examples": [ + "Generate a formal product description paragraph about eco-friendly water bottles with SEO keywords.", + "Create an engaging headline for a blog post about web development trends.", + "Produce a concise, friendly caption for a social media image about summer vacations." + ] + }, + "tags": [ + "web", + "text-generation", + "content-creation", + "seo", + "marketing", + "writing", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"contentType\":\"paragraph\",\"topic\":\"sustainable fashion\",\"length\":120,\"tone\":\"professional\",\"keywords\":[\"eco-friendly\",\"ethical\",\"clothing\"],\"language\":\"en\"}", + "description": "Generate a professional paragraph about sustainable fashion integrating given SEO keywords." + }, + { + "inputJson": "{\"contentType\":\"headline\",\"topic\":\"artificial intelligence breakthroughs\",\"length\":10,\"tone\":\"informal\",\"keywords\":[],\"language\":\"en\"}", + "description": "Create a short, informal headline about recent AI breakthroughs." + }, + { + "inputJson": "{\"contentType\":\"caption\",\"topic\":\"beach holiday\",\"length\":15,\"tone\":\"friendly\",\"keywords\":[],\"language\":\"en\"}", + "description": "Produce a friendly caption for a social media post about a beach holiday." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "web-development.createSentence", + "description": "Generates a grammatically correct, contextually appropriate English sentence based on specified content parameters such as topic, tone, and length. Accepts topic keywords, desired sentence length, and tone style, producing a coherent single sentence that can be used in web content or UI text.", + "category": "web-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or keywords the sentence should be about.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone or style of the sentence, e.g., formal, casual, friendly, professional.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "sentenceLength", + "type": "number", + "description": "Desired approximate sentence length in words.", + "required": false, + "defaultValue": "15" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call to action in the sentence if applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence as a string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate short, relevant sentences for web UI elements, marketing blurbs, tooltips, or onboarding instructions based on a specific topic and tone. It helps automate content creation for dynamic websites.", + "limitations": "Cannot generate multiple sentences or paragraphs; limited to English; may produce generic sentences that need review for brand voice consistency.", + "examples": [ + "Create a friendly sentence about user registration to greet new users.", + "Generate a formal sentence related to data security for a website header.", + "Make a short call-to-action sentence encouraging newsletter signups." + ] + }, + "tags": [ + "content generation", + "sentence creation", + "web writing", + "text generation", + "UI text" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"newsletter signup\",\"tone\":\"friendly\",\"sentenceLength\":12,\"includeCallToAction\":true}", + "description": "Generate a friendly, concise sentence encouraging newsletter signup with a call to action." + }, + { + "inputJson": "{\"topic\":\"data privacy\",\"tone\":\"formal\",\"sentenceLength\":15,\"includeCallToAction\":false}", + "description": "Create a formal, informative sentence about data privacy without a call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Sentence", + "context": null + } + }, + { + "name": "web-development.createParagraph", + "description": "Creates a formatted HTML paragraph element string based on input text and optional styles and attributes. Accepts plain text content, optional CSS styles, CSS class names as an array, and additional HTML attributes as key-value pairs. Outputs a string representing a complete

HTML element with all applied configurations.", + "category": "web-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The textual content to be included inside the paragraph element, supports plain text.", + "required": true, + "defaultValue": "" + }, + { + "name": "styles", + "type": "object", + "description": "An optional object representing CSS style properties and their values to be applied inline to the paragraph.", + "required": false, + "defaultValue": "" + }, + { + "name": "cssClasses", + "type": "array", + "description": "An optional array of CSS class names (strings) to assign to the paragraph element for styling.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attributes", + "type": "object", + "description": "Optional additional HTML attributes as key-value pairs to be added to the paragraph tag (e.g., id, data-* attributes).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A string containing the fully constructed HTML

element with the provided text content, inline styles, class names, and additional attributes." + }, + "aiAgent": { + "useCase": "When an AI agent needs to dynamically generate HTML paragraph elements for web pages, including customizable text content, styling, CSS classes and extra attributes without manual HTML coding, it should use this tool to create valid and flexible paragraph elements as strings to embed in larger HTML documents or templates.", + "limitations": "This tool generates only paragraph (

) HTML elements; it does not sanitize or validate the text or attribute values for security (e.g., XSS protection) which should be handled externally.", + "examples": [ + "Create a paragraph with simple text \"Hello World\".", + "Create a paragraph with red text color and font size 14px.", + "Create a paragraph with class names ['intro','highlight'] and data-id attribute set to 'para1'." + ] + }, + "tags": [ + "web-development", + "html", + "paragraph", + "html-generation", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello World\"}", + "description": "Basic paragraph with plain text content." + }, + { + "inputJson": "{\"text\":\"Stylish text\",\"styles\":{\"color\":\"red\",\"fontSize\":\"14px\"}}", + "description": "Paragraph with inline styles to color text red and set font size." + }, + { + "inputJson": "{\"text\":\"Class and attrs\",\"cssClasses\":[\"intro\",\"highlight\"],\"attributes\":{\"id\":\"para1\",\"data-info\":\"sample\"}}", + "description": "Paragraph with multiple CSS classes and additional HTML attributes." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-development.createSession", + "description": "Creates a new user analytics session for a website by accepting session metadata such as user agent, IP address, start timestamp, and optional custom attributes. It processes this data to initialize a session record and returns a unique session identifier and timestamps for tracking session duration and further analytic events.", + "category": "web-development", + "parameters": [ + { + "name": "userAgent", + "type": "string", + "description": "The user agent string from the user's browser to identify device and browser info.", + "required": true, + "defaultValue": "" + }, + { + "name": "ipAddress", + "type": "string", + "description": "The IP address of the user to track geographic or network info.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTimestamp", + "type": "number", + "description": "The UNIX timestamp in milliseconds indicating when the session started.", + "required": false, + "defaultValue": "0" + }, + { + "name": "customAttributes", + "type": "object", + "description": "Optional custom key-value pairs to attach additional metadata to the session.", + "required": false, + "defaultValue": "" + }, + { + "name": "referrerUrl", + "type": "string", + "description": "The URL of the site that referred the user to this website, if any.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a unique session ID, the recorded start timestamp, and optionally metadata confirming stored custom attributes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to start tracking a new user session for website analytics purposes, capturing essential session metadata for later event correlation or user behavior analysis.", + "limitations": "This tool does not handle event tracking within the session or session termination; those require separate tools or APIs.", + "examples": [ + "Create a session on user visit capturing user agent and IP.", + "Start a session that includes custom attributes like campaign source.", + "Initialize a session with a known start timestamp for backdated analytics." + ] + }, + "tags": [ + "session", + "analytics", + "web", + "tracking", + "user-experience", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"userAgent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64)\",\"ipAddress\":\"192.168.1.1\"}", + "description": "Basic session creation with required parameters userAgent and ipAddress." + }, + { + "inputJson": "{\"userAgent\":\"Mozilla/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X)\",\"ipAddress\":\"203.0.113.5\",\"customAttributes\":{\"campaign\":\"spring_sale\",\"userType\":\"premium\"}}", + "description": "Create session including custom attributes to track marketing campaign and user type." + }, + { + "inputJson": "{\"userAgent\":\"Mozilla/5.0\",\"ipAddress\":\"198.51.100.23\",\"startTimestamp\":1685500000000,\"referrerUrl\":\"https://example.com\"}", + "description": "Session created with explicit start timestamp and referrer URL to track source attribution." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "web-development.createDashboard", + "description": "Generates a customizable web analytics dashboard using provided configuration parameters. Accepts inputs such as data sources, visualization preferences, metrics to track, and display options. Processes these inputs to produce an interactive dashboard layout in JSON format, ready for integration into web applications.", + "category": "web-development", + "parameters": [ + { + "name": "dashboardName", + "type": "string", + "description": "The title or name for the dashboard being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "An array of objects specifying sources of data, including type (e.g., API, database), endpoint or connection string, and authentication details as needed.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "A list of metric definitions to include on the dashboard, each specifying metric name, calculation method, and display label.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizations", + "type": "array", + "description": "Array defining the visual components (e.g., charts, tables) for displaying each metric, including chart type, layout position, and configuration options.", + "required": true, + "defaultValue": "" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Interval in seconds at which the dashboard data should refresh to show updated analytics.", + "required": false, + "defaultValue": "60" + }, + { + "name": "theme", + "type": "string", + "description": "UI theme name for the dashboard (e.g., light, dark) to control its visual style.", + "required": false, + "defaultValue": "light" + }, + { + "name": "responsive", + "type": "boolean", + "description": "Flag to enable responsive layout adapting to different screen sizes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the fully structured and configured dashboard, including metadata, layout, data source bindings, and visualization components." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a ready-to-use analytics dashboard configuration programmatically, based on user requirements for data sources, metrics, and visual styles, enabling quick setup of monitoring interfaces in web projects.", + "limitations": "This tool does not perform actual data fetching or rendering; it only creates the dashboard configuration schema. Integration with visualization libraries and data retrieval implementation must be handled separately.", + "examples": [ + "Create a sales performance dashboard with API data source and bar charts.", + "Generate a user engagement dashboard with multiple metrics and real-time refresh every 30 seconds.", + "Build a lightweight, mobile-friendly dashboard using dark theme and chart visualizations." + ] + }, + "tags": [ + "web", + "dashboard", + "analytics", + "visualization", + "configuration", + "responsive", + "theme" + ], + "examples": [ + { + "inputJson": "{\"dashboardName\":\"Sales Overview\",\"dataSources\":[{\"type\":\"API\",\"endpoint\":\"https://api.example.com/sales\",\"auth\":{\"token\":\"abcd1234\"}}],\"metrics\":[{\"name\":\"totalRevenue\",\"calculation\":\"sum\",\"label\":\"Total Revenue\"},{\"name\":\"ordersCount\",\"calculation\":\"count\",\"label\":\"Number of Orders\"}],\"visualizations\":[{\"metricName\":\"totalRevenue\",\"type\":\"barChart\",\"position\":{\"row\":1,\"column\":1}},{\"metricName\":\"ordersCount\",\"type\":\"lineChart\",\"position\":{\"row\":1,\"column\":2}}],\"refreshInterval\":120,\"theme\":\"light\",\"responsive\":true}", + "description": "Create a sales dashboard showing total revenue and order count with API data source, bar and line charts, refreshing every 2 minutes." + }, + { + "inputJson": "{\"dashboardName\":\"User Engagement\",\"dataSources\":[{\"type\":\"database\",\"connectionString\":\"Server=myServer;Database=analytics;User Id=admin;Password=pass;\"}],\"metrics\":[{\"name\":\"activeUsers\",\"calculation\":\"distinctCount\",\"label\":\"Active Users\"},{\"name\":\"sessionDuration\",\"calculation\":\"avg\",\"label\":\"Avg Session Duration\"}],\"visualizations\":[{\"metricName\":\"activeUsers\",\"type\":\"table\",\"position\":{\"row\":1,\"column\":1}},{\"metricName\":\"sessionDuration\",\"type\":\"pieChart\",\"position\":{\"row\":1,\"column\":2}}],\"refreshInterval\":30,\"theme\":\"dark\",\"responsive\":true}", + "description": "Generate a user engagement dashboard with metrics from database, including active users and session duration, with table and pie chart visualizations, refreshing every 30 seconds, in dark theme." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "web-development.createKPI", + "description": "Creates a Key Performance Indicator (KPI) configuration for web analytics by accepting KPI name, description, associated metric, calculation formula, and target goal. Processes inputs to generate a structured KPI object ready for integration into analytics dashboards or reports.", + "category": "web-development", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The unique name of the KPI to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description explaining the KPI and its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "The primary metric that this KPI measures (e.g., 'page views', 'conversion rate').", + "required": true, + "defaultValue": "" + }, + { + "name": "calculationFormula", + "type": "string", + "description": "Formula used to calculate the KPI from raw data metrics, expressed as a string (e.g., '(conversions / visits) * 100').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetGoal", + "type": "number", + "description": "The numeric target value for this KPI to achieve, used for progress tracking.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "string", + "description": "The time frame over which the KPI is measured (e.g., 'daily', 'monthly').", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "tags", + "type": "array", + "description": "Array of strings representing tags or categories for the KPI.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A structured KPI object containing name, description, metric, formula, target goal, time frame, and tags. This object is ready for saving into analytics systems or dashboards." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to define or register new web analytics KPIs based on user input parameters, ensuring that KPIs are properly structured for tracking performance metrics on a website or web application. Useful for setting up dashboards or monitoring goals.", + "limitations": "This tool does not collect data or perform real-time analytics; it only creates the KPI definition object. The calculation formula must be provided as a string and is not automatically validated for syntax or correctness.", + "examples": [ + "Create a KPI to track daily conversion rate with target goal 5%.", + "Set up monthly page views KPI without a specific target goal.", + "Generate a KPI to measure bounce rate calculated as '(bounces / visits) * 100' with tags for user engagement." + ] + }, + "tags": [ + "web", + "analytics", + "KPI", + "dashboard", + "metrics", + "performance", + "definition" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"Daily Conversion Rate\",\"description\":\"Percentage of visitors converting daily.\",\"metric\":\"conversion rate\",\"calculationFormula\":\"(conversions / visits) * 100\",\"targetGoal\":5,\"timeFrame\":\"daily\",\"tags\":[\"conversion\",\"daily\",\"performance\"]}", + "description": "Create a KPI to track the daily conversion rate with a 5% target goal." + }, + { + "inputJson": "{\"kpiName\":\"Monthly Page Views\",\"metric\":\"page views\",\"calculationFormula\":\"pageViews\",\"timeFrame\":\"monthly\",\"tags\":[\"traffic\",\"monthly\"]}", + "description": "Set up a monthly KPI for total page views without a specific target goal." + }, + { + "inputJson": "{\"kpiName\":\"Bounce Rate\",\"description\":\"Percentage of single-page visits.\",\"metric\":\"bounce rate\",\"calculationFormula\":\"(bounces / visits) * 100\",\"tags\":[\"engagement\",\"bounce\"]}", + "description": "Generate a KPI to measure bounce rate with engagement tags but no target goal specified." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "web-development.createAnomaly", + "description": "Analyzes website analytics data (e.g., traffic, user behavior, performance metrics) over time to detect anomalies such as sudden spikes, drops, or unusual patterns. Accepts time-series data with configurable sensitivity and outputs detected anomaly events with timestamps, significance scores, and suggested causes when possible.", + "category": "web-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Time-series array of analytics data points, each containing a timestamp and associated metrics (e.g., page views, bounce rate).", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names in the data to analyze for anomalies (e.g., ['pageViews', 'bounceRate']).", + "required": true, + "defaultValue": "" + }, + { + "name": "sensitivity", + "type": "number", + "description": "A number between 0 and 1 determining anomaly detection sensitivity; higher means more anomalies are detected.", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "timeWindow", + "type": "string", + "description": "Time window over which to aggregate/analyze data (e.g., '1h', '1d').", + "required": false, + "defaultValue": "1h" + }, + { + "name": "seasonality", + "type": "boolean", + "description": "Indicates if the detection should account for seasonal patterns in the data (daily/weekly trends).", + "required": false, + "defaultValue": "true" + }, + { + "name": "minimumAnomalyScore", + "type": "number", + "description": "Minimum anomaly score threshold to report (0-1).", + "required": false, + "defaultValue": "0.5" + } + ], + "returns": { + "type": "object", + "description": "Object containing array of detected anomalies; each includes metric name, timestamp, anomaly score, and optionally a brief cause explanation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically identify unusual or unexpected changes in web analytics metrics to alert site maintainers or enable automated responses. Ideal for monitoring user traffic, engagement, or performance issues that deviate from typical patterns.", + "limitations": "Cannot definitively explain root causes of anomalies or handle malformed/incomplete input data. Limited to metrics provided and detection configured parameters; false positives or negatives may occur.", + "examples": [ + "Detect anomalous traffic drops over past week for pageViews and bounceRate.", + "Identify sudden spikes in performance metrics during a marketing campaign.", + "Alert on unusual bounce rate patterns accounting for daily seasonality." + ] + }, + "tags": [ + "web", + "analytics", + "anomaly detection", + "monitoring", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"pageViews\":1000,\"bounceRate\":0.55},{\"timestamp\":\"2024-06-01T01:00:00Z\",\"pageViews\":2500,\"bounceRate\":0.52},{\"timestamp\":\"2024-06-01T02:00:00Z\",\"pageViews\":1020,\"bounceRate\":0.54}],\"metrics\":[\"pageViews\",\"bounceRate\"],\"sensitivity\":0.9,\"timeWindow\":\"1h\",\"seasonality\":true,\"minimumAnomalyScore\":0.7}", + "description": "Analyze hourly pageViews and bounceRate data to find significant anomalies with high sensitivity and seasonality consideration." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "web-development.createEvent", + "description": "Creates a web analytics event object for tracking user interactions on a website. Accepts event name, category, action, optional label and value, timestamp, and custom properties. Outputs a structured event object ready for sending to analytics services or storing.", + "category": "web-development", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The name of the event to be tracked (e.g., 'button_click').", + "required": true, + "defaultValue": "" + }, + { + "name": "eventCategory", + "type": "string", + "description": "The category of the event, representing a group of events (e.g., 'navigation').", + "required": true, + "defaultValue": "" + }, + { + "name": "eventAction", + "type": "string", + "description": "The specific action taken by the user (e.g., 'click').", + "required": true, + "defaultValue": "" + }, + { + "name": "eventLabel", + "type": "string", + "description": "An optional label providing additional information about the event (e.g., 'signup_button').", + "required": false, + "defaultValue": "" + }, + { + "name": "eventValue", + "type": "number", + "description": "An optional numeric value associated with the event (e.g., 1 for count or amount).", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "number", + "description": "The UNIX timestamp in milliseconds when the event occurred. Defaults to current time if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "customProperties", + "type": "object", + "description": "Optional key-value pairs for additional event metadata (e.g., {\"page\":\"homepage\"}).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured event object containing all provided event details, formatted for analytics tracking." + }, + "aiAgent": { + "useCase": "Use this tool when you need to construct a detailed event object representing user interactions on a website for analytics purposes. It helps standardize event data before sending to tracking services like Google Analytics or custom backends.", + "limitations": "This tool does not send or persist the event data. It only creates the event object; integration with tracking or storage systems must be handled separately.", + "examples": [ + "Create an event for a user clicking the signup button in the navigation menu.", + "Generate a purchase event with value and label to track revenue.", + "Record a video play event with custom properties about the video id and duration." + ] + }, + "tags": [ + "web", + "analytics", + "event", + "tracking", + "user-interaction", + "web-development", + "model" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"click\",\"eventCategory\":\"navigation\",\"eventAction\":\"button_click\",\"eventLabel\":\"signup_button\"}", + "description": "Create an event for a button click on the signup button in navigation." + }, + { + "inputJson": "{\"eventName\":\"purchase\",\"eventCategory\":\"ecommerce\",\"eventAction\":\"complete\",\"eventValue\":49.99,\"eventLabel\":\"order_12345\"}", + "description": "Create an event for a purchase completed with a dollar value and order label." + }, + { + "inputJson": "{\"eventName\":\"video_play\",\"eventCategory\":\"media\",\"eventAction\":\"play\",\"customProperties\":{\"videoId\":\"vid789\",\"duration\":300}}", + "description": "Create an event for a video play action including custom video metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "web-development.createTrend", + "description": "This tool analyzes website interaction data such as page views, user clicks, or session durations over a specified time range and generates actionable trend analytics. It accepts raw or aggregated web metrics, applies smoothing and comparison algorithms to identify positive or negative trends, seasonal patterns, and anomalies, and outputs a structured trend report with visualizable data points and key insights.", + "category": "web-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing web interaction records with timestamps and associated metrics (e.g., page views, clicks).", + "required": true, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "The specific metric to analyze for trends, such as 'pageViews', 'clicks', or 'sessionDuration'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The ISO 8601 formatted date string indicating the start of the time range for trend analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The ISO 8601 formatted date string marking the end of the time range for trend analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for aggregating data points such as 'hourly', 'daily', or 'weekly'.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "applySmoothing", + "type": "boolean", + "description": "Whether to apply smoothing techniques to the data to reduce noise in trend detection.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeAnomalies", + "type": "boolean", + "description": "Whether to include detected anomalies in the trend report output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A detailed trend report containing an array of time series data points with timestamps and metric values, summary statistics describing trend direction and strength, identified seasonal patterns if any, and anomaly details when requested." + }, + "aiAgent": { + "useCase": "Use this tool to derive meaningful patterns and trends from raw or aggregated website interaction metrics, aiding website owners or developers in understanding user behavior changes over time, evaluating marketing impact, or optimizing web content and performance.", + "limitations": "This tool does not predict future trends beyond the input data range, nor does it process unstructured data formats; it requires input data to be properly structured and time-stamped.", + "examples": [ + "Analyze daily pageViews trend from 2024-01-01 to 2024-03-31 with smoothing and anomaly detection.", + "Generate weekly clicks trend report for last quarter without smoothing.", + "Evaluate sessionDuration hourly trend for a specific week with anomalies included." + ] + }, + "tags": [ + "web-development", + "analytics", + "trend-analysis", + "time-series", + "user-behavior", + "data-aggregation", + "website-metrics" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-01-01T00:00:00Z\",\"pageViews\":120},{\"timestamp\":\"2024-01-02T00:00:00Z\",\"pageViews\":135},{\"timestamp\":\"2024-01-03T00:00:00Z\",\"pageViews\":150}],\"metric\":\"pageViews\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-03\",\"granularity\":\"daily\",\"applySmoothing\":true,\"includeAnomalies\":false}", + "description": "Analyzing daily page views from Jan 1 to 3, 2024 with smoothing applied and anomaly detection off." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "web-development.createCache", + "description": "Creates and configures a caching layer for a web application. Accepts parameters defining cache type (memory, Redis, disk), TTL (time to live) for cached items, maximum cache size, and other options. Returns configuration details and a cache instance reference for integration into the web app stack.", + "category": "web-development", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create, e.g., 'memory', 'redis', 'disk'.", + "required": true, + "defaultValue": "" + }, + { + "name": "ttlSeconds", + "type": "number", + "description": "Time to live for cache entries in seconds. Items expire after this time.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of items or total size (depending on cache type) allowed in the cache.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "redisConfig", + "type": "object", + "description": "Configuration object for Redis connection (host, port, password), required if cacheType='redis'.", + "required": false, + "defaultValue": "" + }, + { + "name": "persistToDisk", + "type": "boolean", + "description": "Indicates if the cache should persist data to disk (only applicable for disk cache type).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cache instance reference, the effective configuration parameters, and status indicating readiness." + }, + "aiAgent": { + "useCase": "Use this tool when needing to add caching capabilities to a web application to improve performance and reduce database or API load. It is helpful when the agent must generate or modify cache layers dynamically based on app requirements or environment.", + "limitations": "This tool does not handle the internal caching logic beyond instantiation and configuration. It requires appropriate runtime environment support and connection access for cache backends like Redis. It does not perform cache eviction policies beyond configured parameters.", + "examples": [ + "Create an in-memory cache with 1-hour TTL and max size 500 items.", + "Create a Redis cache connected to a remote server with TTL 300 seconds.", + "Create a disk cache that persists data with max size 10000 items." + ] + }, + "tags": [ + "web", + "cache", + "performance", + "infrastructure", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"memory\",\"ttlSeconds\":3600,\"maxSize\":500}", + "description": "Create an in-memory cache with default TTL and a max size of 500 items." + }, + { + "inputJson": "{\"cacheType\":\"redis\",\"ttlSeconds\":300,\"redisConfig\":{\"host\":\"redis.example.com\",\"port\":6379,\"password\":\"s3cr3t\"}}", + "description": "Create a Redis cache connecting to a specified Redis host with 5-minute TTL." + }, + { + "inputJson": "{\"cacheType\":\"disk\",\"persistToDisk\":true,\"maxSize\":10000}", + "description": "Create a disk-based cache that persists data between restarts with a maximum of 10,000 entries." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "web-development.createMetric", + "description": "Creates a customizable web analytics metric based on user-defined parameters including name, description, data source, calculation formula, and aggregation method. Accepts configuration inputs and outputs a fully defined metric object suitable for integration into web analytics dashboards or tracking systems.", + "category": "web-development", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The unique name identifier for the metric to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief explanation of what the metric measures and its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "string", + "description": "The source dataset or event stream name from which metric data will be derived.", + "required": true, + "defaultValue": "" + }, + { + "name": "calculationFormula", + "type": "string", + "description": "A formula or expression defining how to compute the metric using data fields from the data source, e.g., 'sum(clicks)/sum(visits)'.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "The aggregation method to apply, such as 'sum', 'average', 'count', or 'unique', to the calculation result.", + "required": true, + "defaultValue": "sum" + }, + { + "name": "timeGranularity", + "type": "string", + "description": "The time interval for metric aggregation, e.g., 'hourly', 'daily', or 'monthly'.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filter conditions to restrict data included in the metric calculation, structured as key-value pairs representing field and required value.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A metric object containing the configured name, description, data source, formula, aggregation method, and optional filters ready for use in analytics systems." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define a new custom analytics metric for web data tracking, such as creating conversion rates, user engagement scores, or other KPIs that require specific calculation logic and aggregation preferences.", + "limitations": "The tool does not perform actual data fetching or calculations but only generates the metric definition; underlying analytics system must support applying the formula and aggregation to real data.", + "examples": [ + "Create a daily conversion rate metric based on clicks and visits.", + "Define a unique visitor count metric filtered by country=\"US\".", + "Set up an average session duration metric aggregated hourly." + ] + }, + "tags": [ + "web-development", + "analytics", + "metric-creation", + "custom-metrics", + "web-analytics", + "data-processing" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"conversionRate\",\"description\":\"Percentage of visitors who complete a purchase.\",\"dataSource\":\"userEvents\",\"calculationFormula\":\"sum(purchases)/sum(visits)\",\"aggregationMethod\":\"average\",\"timeGranularity\":\"daily\",\"filters\":{\"country\":\"US\"}}", + "description": "Create a daily conversion rate metric filtered for US visitors using average aggregation." + }, + { + "inputJson": "{\"metricName\":\"uniqueVisitors\",\"description\":\"Count of unique visitors to the site.\",\"dataSource\":\"pageViews\",\"calculationFormula\":\"countDistinct(userId)\",\"aggregationMethod\":\"count\",\"timeGranularity\":\"monthly\"}", + "description": "Define a monthly count of unique visitors metric without filters." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "web-development.createCluster", + "description": "Creates and configures a scalable web server cluster for deploying web applications. Accepts configuration parameters such as number of servers, instance types, load balancer settings, and network configuration. Processes these inputs to provision and initialize the cluster infrastructure, then returns details about the created cluster including access endpoints and status.", + "category": "web-development", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The unique name to identify the cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "serverCount", + "type": "number", + "description": "Number of web server instances to include in the cluster.", + "required": true, + "defaultValue": "3" + }, + { + "name": "instanceType", + "type": "string", + "description": "Type/specification of the server instances (e.g., t2.medium, n1-standard-2).", + "required": false, + "defaultValue": "t2.medium" + }, + { + "name": "loadBalancerType", + "type": "string", + "description": "Type of load balancer to deploy (e.g., application, network).", + "required": false, + "defaultValue": "application" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the cluster should be deployed.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "autoScalingEnabled", + "type": "boolean", + "description": "Whether to enable auto-scaling for the cluster.", + "required": false, + "defaultValue": "true" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration settings like VPC ID, subnets, and security groups.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing cluster identifier, list of server instance IDs, load balancer DNS name and status of deployment." + }, + "aiAgent": { + "useCase": "Use when an AI assistant needs to automate the provisioning of a web server environment, enabling deployment readiness and scalability for web applications. Ideal for scenarios requiring quick cluster setup with customizable server counts, instance types, and network parameters.", + "limitations": "Does not handle the deployment of application code or software inside the servers; it focuses on infrastructure creation only. Does not support creation beyond web server clusters (e.g., databases or caching layers).", + "examples": [ + "Create a 5-node cluster with t3.large instances in us-west-2 region and enable network load balancer.", + "Set up a minimal cluster with 2 servers and default load balancer in us-east-1 for a staging environment.", + "Build a scalable web server cluster with auto-scaling disabled in eu-central-1 region." + ] + }, + "tags": [ + "web-development", + "infrastructure", + "cluster", + "provisioning", + "automation", + "cloud", + "scalability" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"prod-web-cluster\",\"serverCount\":5,\"instanceType\":\"t3.large\",\"loadBalancerType\":\"network\",\"region\":\"us-west-2\",\"autoScalingEnabled\":true}", + "description": "Create a 5-node cluster with t3.large instances in the us-west-2 region with a network load balancer and auto-scaling enabled." + }, + { + "inputJson": "{\"clusterName\":\"staging-cluster\",\"serverCount\":2}", + "description": "Create a minimal cluster with 2 default t2.medium instances and an application load balancer in the default region with auto-scaling enabled." + }, + { + "inputJson": "{\"clusterName\":\"eu-cluster\",\"serverCount\":4,\"autoScalingEnabled\":false,\"region\":\"eu-central-1\"}", + "description": "Set up a 4-node cluster without auto-scaling in the eu-central-1 region using default instance and load balancer settings." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "web-development.createQueue", + "description": "Creates and configures a message queue service for web applications. Accepts queue name, type, durability, max size, and optional access policies. Processes these inputs to set up a queue in the specified environment, returning its configuration details and status information.", + "category": "web-development", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "Unique identifier for the queue.", + "required": true, + "defaultValue": "" + }, + { + "name": "queueType", + "type": "string", + "description": "Type of queue to create, e.g., 'standard' or 'fifo'.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "durable", + "type": "boolean", + "description": "If true, the queue persists beyond server restarts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSizeMb", + "type": "number", + "description": "Maximum size of the queue in megabytes.", + "required": false, + "defaultValue": "1024" + }, + { + "name": "accessPolicies", + "type": "object", + "description": "Optional access control policies for the queue specifying permissions and roles.", + "required": false, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Deployment environment such as 'development', 'staging', or 'production'.", + "required": false, + "defaultValue": "production" + } + ], + "returns": { + "type": "object", + "description": "An object containing the queue configuration details including URL, ARN (if applicable), creation timestamp, and status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically set up message queues for decoupling components in a web application architecture. It supports configuring queue properties like durability and size limits to suit different environments such as development or production.", + "limitations": "This tool does not handle message publishing or consumption; it only creates and configures the queue resource itself. It also depends on the underlying message queue infrastructure being available and accessible.", + "examples": [ + "Create a durable FIFO queue named 'orderProcessing' with a max size of 2048 MB for production environment.", + "Set up a standard queue called 'emailNotifications' with default settings for staging.", + "Create a non-durable queue with specific access policies for testing purposes." + ] + }, + "tags": [ + "web-development", + "queue", + "infrastructure", + "message-queue", + "async-processing", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"orderProcessing\",\"queueType\":\"fifo\",\"durable\":true,\"maxSizeMb\":2048,\"environment\":\"production\"}", + "description": "Create a durable FIFO queue 'orderProcessing' with 2048 MB max size for production." + }, + { + "inputJson": "{\"queueName\":\"emailNotifications\"}", + "description": "Create a standard, durable queue 'emailNotifications' with default max size for production." + }, + { + "inputJson": "{\"queueName\":\"testQueue\",\"durable\":false,\"accessPolicies\":{\"roles\":[\"tester\"],\"permissions\":[\"send\",\"receive\"]}}", + "description": "Create a non-durable queue 'testQueue' with custom access policies for testing." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "web-development.createDatabase", + "description": "Creates a new database instance with specified type, name, and configuration settings. Accepts parameters defining the database type (e.g., MySQL, PostgreSQL), credentials, storage size, and optional initialization scripts. Returns connection details and status of creation.", + "category": "web-development", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the database to create (e.g., 'mysql', 'postgresql').", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseName", + "type": "string", + "description": "Name of the new database to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "userName", + "type": "string", + "description": "Username for database access.", + "required": true, + "defaultValue": "" + }, + { + "name": "userPassword", + "type": "string", + "description": "Password for the database user.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageSizeMB", + "type": "number", + "description": "Allocated storage size in megabytes for the database.", + "required": false, + "defaultValue": "100" + }, + { + "name": "initializeScripts", + "type": "array", + "description": "Array of SQL commands or file references to run immediately after database creation for initialization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "host", + "type": "string", + "description": "Host address to deploy the database to; default is local server.", + "required": false, + "defaultValue": "localhost" + }, + { + "name": "port", + "type": "number", + "description": "Port number for the database service (default depends on databaseType).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of creation, connection string details, and any initialization errors." + }, + "aiAgent": { + "useCase": "Use this tool when a new database is required to support a web application or service, specifying type and configuration parameters. It automates provisioning and initialization, providing connection info for subsequent use.", + "limitations": "Does not handle scaling or database backups. Does not support cloud-provider specific advanced configurations or managed services with proprietary APIs.", + "examples": [ + "Create a MySQL database named 'appdb' with default storage on localhost.", + "Create a PostgreSQL database with custom initialization SQL scripts for schema setup.", + "Create a database with specified user credentials and return the connection URI." + ] + }, + "tags": [ + "database", + "creation", + "web-development", + "configuration", + "mysql", + "postgresql" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"mysql\",\"databaseName\":\"appdb\",\"userName\":\"admin\",\"userPassword\":\"securePass123\"}", + "description": "Create a MySQL database named 'appdb' with default storage and credentials." + }, + { + "inputJson": "{\"databaseType\":\"postgresql\",\"databaseName\":\"testdb\",\"userName\":\"testuser\",\"userPassword\":\"pass456\",\"storageSizeMB\":500,\"initializeScripts\":[\"CREATE TABLE users(id SERIAL PRIMARY KEY, name VARCHAR(100));\"]}", + "description": "Create a PostgreSQL database with a custom initialization script for creating a users table." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "web-development.createService", + "description": "Creates and configures a backend service instance based on specified parameters such as service name, programming language, framework, and deployment environment. Accepts service configuration inputs, sets up the base infrastructure code, and outputs service metadata including endpoints and deployment status.", + "category": "web-development", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The desired name for the new service to identify it uniquely.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language to use for the service (e.g., Node.js, Python, Go).", + "required": true, + "defaultValue": "Node.js" + }, + { + "name": "framework", + "type": "string", + "description": "Web framework or backend framework to use (e.g., Express, Flask, Gin).", + "required": false, + "defaultValue": "Express" + }, + { + "name": "environment", + "type": "string", + "description": "Deployment environment for the service (e.g., development, staging, production).", + "required": false, + "defaultValue": "development" + }, + { + "name": "databaseConfig", + "type": "object", + "description": "Configuration object for database connection (type, host, credentials) or empty if no DB needed.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableAuthentication", + "type": "boolean", + "description": "Flag to add authentication middleware to the service.", + "required": false, + "defaultValue": "false" + }, + { + "name": "port", + "type": "number", + "description": "The port number on which the service should listen.", + "required": false, + "defaultValue": "3000" + } + ], + "returns": { + "type": "object", + "description": "An object containing serviceId, serviceUrl, deploymentStatus, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when a user needs to scaffold and initialize a backend service setup quickly for a web application, including setting programming language, framework, and deployment environment. It helps automate base service code creation for web projects.", + "limitations": "Does not handle detailed custom business logic insertion or continuous integration setup; focuses on initial service scaffolding only.", + "examples": [ + "Create a new Node.js Express service called 'user-service' with authentication enabled.", + "Set up a Python Flask service for staging environment without database connection.", + "Generate a Go Gin service named 'payment' listening on port 8080 with MySQL database config." + ] + }, + "tags": [ + "web", + "backend", + "service", + "scaffold", + "deployment", + "infrastructure", + "api" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"user-service\",\"programmingLanguage\":\"Node.js\",\"framework\":\"Express\",\"environment\":\"production\",\"databaseConfig\":{\"type\":\"MongoDB\",\"host\":\"mongo.example.com\",\"username\":\"admin\",\"password\":\"secret\"},\"enableAuthentication\":true,\"port\":4000}", + "description": "Create a production Node.js Express service named 'user-service' with MongoDB and authentication on port 4000." + }, + { + "inputJson": "{\"serviceName\":\"analytics\",\"programmingLanguage\":\"Python\",\"framework\":\"Flask\",\"environment\":\"development\",\"enableAuthentication\":false,\"port\":5000}", + "description": "Create a development Python Flask service named 'analytics' without database or authentication on port 5000." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "web-development.createInstance", + "description": "Creates a new web server instance based on specified configuration parameters such as server type, region, size, and optional startup script. Processes these inputs to provision and initialize the server instance, returning detailed metadata including instance ID, IP address, status, and creation timestamp.", + "category": "web-development", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of the server instance to create, e.g., 'nodejs', 'php', 'static'.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region where the server instance will be deployed, like 'us-east-1' or 'eu-west-2'.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceSize", + "type": "string", + "description": "Size or tier of the instance indicating resource allocation, such as 'small', 'medium', or 'large'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startupScript", + "type": "string", + "description": "Optional script to run on instance startup for environment setup or deployment tasks.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Flag to enable automatic scaling of the instance based on load.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to tag and organize the instance for management and billing.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing instance metadata such as instanceId, ipAddress, status, region, size, creationTimestamp, and optional message information." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and configure web server instances for deploying websites or web applications. It is suited for scenarios involving automated infrastructure provisioning where parameters like server type, region, and size must be specified to prepare a fresh environment ready for deployment.", + "limitations": "This tool does not manage ongoing instance health, scaling policies beyond a simple flag, or complex orchestration workflows. It does not handle deployment of application code beyond executing an optional startup script.", + "examples": [ + "Create a new Node.js server instance in the US East region with medium size.", + "Set up a small static website server in Europe with auto-scaling disabled.", + "Provision a PHP server in Asia with a custom startup script for installing dependencies." + ] + }, + "tags": [ + "web", + "server", + "infrastructure", + "automation", + "provisioning" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"nodejs\",\"region\":\"us-east-1\",\"instanceSize\":\"medium\",\"startupScript\":\"npm install && npm start\",\"enableAutoScaling\":true,\"tags\":{\"env\":\"production\",\"project\":\"website\"}}", + "description": "Create a medium Node.js server instance in US East with auto-scaling enabled and a startup script to install dependencies." + }, + { + "inputJson": "{\"serverType\":\"static\",\"region\":\"eu-west-2\",\"instanceSize\":\"small\",\"enableAutoScaling\":false}", + "description": "Provision a small static server instance in Europe without auto-scaling." + }, + { + "inputJson": "{\"serverType\":\"php\",\"region\":\"ap-southeast-1\",\"instanceSize\":\"large\",\"startupScript\":\"composer install\",\"tags\":{\"env\":\"dev\"}}", + "description": "Create a large PHP server instance in Asia with a startup script to install PHP dependencies." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "web-development.createContainer", + "description": "Creates a containerized web application environment using specified container technology and configuration. Accepts parameters including container type (e.g., Docker), base image, port mappings, environment variables, and resource limits. Processes these inputs to generate a running container instance with the given settings. Outputs container ID, status, and access details.", + "category": "web-development", + "parameters": [ + { + "name": "containerType", + "type": "string", + "description": "Type of container technology to use, e.g., 'docker' or 'podman'.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseImage", + "type": "string", + "description": "Base container image to use, such as 'node:14-alpine'.", + "required": true, + "defaultValue": "" + }, + { + "name": "portMappings", + "type": "array", + "description": "Array of port mapping objects {containerPort:number, hostPort:number} to expose container services.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set inside the container.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Resource limits like CPU and memory, e.g., {cpu:'1.0', memory:'512m'}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "containerName", + "type": "string", + "description": "Optional name to assign to the container instance.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details of the created container including container ID, status (e.g., 'running'), and any access information like exposed ports." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create, configure, and launch containerized web app environments as part of web development automation or deployment workflows. It helps automate container setup with custom settings based on user parameters.", + "limitations": "Does not handle container orchestration (like managing multiple containers or clusters), nor does it perform image building beyond using specified base images. Requires the container runtime to be installed and accessible on the host environment.", + "examples": [ + "Create a Docker container of a Node.js app exposing port 3000", + "Generate a container with environment variables and fixed CPU/memory limits", + "Launch a container and assign it a custom container name" + ] + }, + "tags": [ + "container", + "web-development", + "deployment", + "automation", + "docker", + "podman" + ], + "examples": [ + { + "inputJson": "{\"containerType\":\"docker\",\"baseImage\":\"node:14-alpine\",\"portMappings\":[{\"containerPort\":3000,\"hostPort\":3000}],\"environmentVariables\":{\"NODE_ENV\":\"production\"},\"resourceLimits\":{\"cpu\":\"0.5\",\"memory\":\"256m\"},\"containerName\":\"my-node-app\"}", + "description": "Create a Docker container using node:14-alpine image, expose port 3000, set NODE_ENV to production, limit CPU and memory, and name container 'my-node-app'." + }, + { + "inputJson": "{\"containerType\":\"podman\",\"baseImage\":\"nginx:latest\",\"portMappings\":[{\"containerPort\":80,\"hostPort\":8080}],\"environmentVariables\":{},\"resourceLimits\":{},\"containerName\":\"web-server\"}", + "description": "Create a Podman container with the latest nginx image, map port 80 inside container to port 8080 on host, no env vars or resource limits, name it 'web-server'." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "web-development.createChannel", + "description": "Creates a new communication channel for a website or web application, allowing users or services to exchange messages or data. Accepts parameters such as channel name, type (e.g., chat, notification, support), visibility (public or private), and optional metadata. Returns the details of the created channel including a unique identifier, creation timestamp, and configuration info.", + "category": "web-development", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "The name of the channel to be created. Required to uniquely identify the channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Specifies the type of the channel, such as 'chat', 'notification', or 'support'. Determines how the channel behaves.", + "required": true, + "defaultValue": "" + }, + { + "name": "visibility", + "type": "string", + "description": "Defines if the channel is 'public' or 'private'. Public channels are accessible to all users, private to restricted audiences.", + "required": false, + "defaultValue": "public" + }, + { + "name": "allowedUsers", + "type": "array", + "description": "List of user IDs allowed to access the channel, relevant if visibility is 'private'.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata or settings for the channel, such as description, icon URL, or rules.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created channel's unique ID, name, type, visibility, creation timestamp, allowed users, and any metadata." + }, + "aiAgent": { + "useCase": "Use this tool when building or managing web apps that require creation of communication channels for messaging, notifications, or support. It helps programmatically provision channels with control over access and type to meet varying communication needs.", + "limitations": "This tool does not manage message sending, retrieval, or real-time updates within the channel. It strictly creates and configures the communication channel entity itself.", + "examples": [ + "Create a public chat channel named 'general' for all users.", + "Create a private support channel named 'premiumSupport' visible only to certain user IDs.", + "Create a notification channel named 'systemAlerts' with metadata describing its purpose." + ] + }, + "tags": [ + "web-development", + "channel", + "communication", + "create", + "messaging", + "notifications" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"general\",\"channelType\":\"chat\",\"visibility\":\"public\"}", + "description": "Create a public chat channel named 'general'." + }, + { + "inputJson": "{\"channelName\":\"vipSupport\",\"channelType\":\"support\",\"visibility\":\"private\",\"allowedUsers\":[\"user123\",\"user456\"]}", + "description": "Create a private support channel accessible only to specific users." + }, + { + "inputJson": "{\"channelName\":\"alerts\",\"channelType\":\"notification\",\"metadata\":{\"description\":\"System-wide alerts\"}}", + "description": "Create a notification channel with metadata describing its purpose." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "web-development.createServer", + "description": "Creates a simple HTTP or HTTPS web server based on provided configuration parameters such as port, hostname, protocol, and routes. Accepts HTTP route definitions with handlers and outputs a running server instance with status and access details.", + "category": "web-development", + "parameters": [ + { + "name": "hostname", + "type": "string", + "description": "Hostname or IP address where the server will listen (e.g., 'localhost' or '0.0.0.0')", + "required": false, + "defaultValue": "localhost" + }, + { + "name": "port", + "type": "number", + "description": "Port number for the server to listen on (e.g., 80, 443, 3000)", + "required": true, + "defaultValue": "" + }, + { + "name": "protocol", + "type": "string", + "description": "Protocol to use: 'http' or 'https'", + "required": false, + "defaultValue": "http" + }, + { + "name": "sslKeyPath", + "type": "string", + "description": "File path to SSL private key (required for https)", + "required": false, + "defaultValue": "" + }, + { + "name": "sslCertPath", + "type": "string", + "description": "File path to SSL certificate (required for https)", + "required": false, + "defaultValue": "" + }, + { + "name": "routes", + "type": "array", + "description": "Array of route objects defining URL paths, HTTP methods, and response handlers", + "required": true, + "defaultValue": "" + }, + { + "name": "enableCors", + "type": "boolean", + "description": "Whether to enable CORS headers for all routes", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing server status info such as 'running' boolean, server url, configured routes and any errors encountered" + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a lightweight HTTP/HTTPS server with specified hostname, port, and route handlers for web development or testing purposes. It facilitates quick server setup within scripts or automation flows.", + "limitations": "This tool creates simple servers mainly for development or light production use; it does not support advanced middleware frameworks, database integration, or load balancing out-of-the-box.", + "examples": [ + "Create an HTTP server on port 8080 serving two GET routes with basic JSON responses.", + "Create an HTTPS server on port 443 with provided SSL key and certificate files and enable CORS.", + "Set up a server listening on all interfaces (0.0.0.0), port 3000, with a POST route handling form submissions." + ] + }, + "tags": [ + "web", + "server", + "http", + "https", + "routes", + "development", + "api" + ], + "examples": [ + { + "inputJson": "{\"hostname\":\"localhost\",\"port\":8080,\"protocol\":\"http\",\"routes\":[{\"path\":\"/hello\",\"method\":\"GET\",\"handler\":\"return { greeting: 'Hello, World!' };\"},{\"path\":\"/status\",\"method\":\"GET\",\"handler\":\"return { status: 'OK' };\"}],\"enableCors\":true}", + "description": "Create an HTTP server on localhost, port 8080 with two GET routes returning JSON and CORS enabled." + }, + { + "inputJson": "{\"hostname\":\"0.0.0.0\",\"port\":443,\"protocol\":\"https\",\"sslKeyPath\":\"./ssl/key.pem\",\"sslCertPath\":\"./ssl/cert.pem\",\"routes\":[{\"path\":\"/\",\"method\":\"GET\",\"handler\":\"return { message: 'Secure Home' };\"}],\"enableCors\":false}", + "description": "Create an HTTPS server listening on all interfaces, port 443 with SSL and a single GET route." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "web-development.createReply", + "description": "Generates a user-friendly, context-aware reply message for a web-based communication interface. It accepts the original message content, user role, and optional tone and language preferences, then processes them to produce a suitable reply text formatted for web display.", + "category": "web-development", + "parameters": [ + { + "name": "originalMessage", + "type": "string", + "description": "The text of the original message to which a reply is being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "userRole", + "type": "string", + "description": "Role of the user creating the reply (e.g., admin, moderator, guest, user) which influences the reply style.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Optional tone of the reply such as formal, friendly, or neutral to tailor language style.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "language", + "type": "string", + "description": "Optional language code (e.g., 'en', 'es') to create the reply in the specified language.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of the reply in characters to enforce brevity.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply text formatted for web display." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate an appropriate text reply to a user message within a web application, such as chat interfaces or support forums, considering user roles and tone preferences to improve communication effectiveness.", + "limitations": "This tool does not generate replies for highly technical or domain-specific content without external knowledge, nor does it manage multi-turn conversations or context beyond the single original message provided.", + "examples": [ + "Create a friendly reply from a moderator to a user's question about account settings.", + "Generate a formal reply from an admin acknowledging a bug report.", + "Produce a concise neutral reply for a guest user commenting on a post." + ] + }, + "tags": [ + "web", + "communication", + "reply", + "message", + "response", + "user-interface", + "chat", + "support" + ], + "examples": [ + { + "inputJson": "{\"originalMessage\":\"How do I change my password?\",\"userRole\":\"moderator\",\"tone\":\"friendly\",\"language\":\"en\",\"maxLength\":200}", + "description": "Generate a friendly reply from a moderator guiding a user on password change." + }, + { + "inputJson": "{\"originalMessage\":\"There is a bug in the payment system.\",\"userRole\":\"admin\",\"tone\":\"formal\",\"language\":\"en\",\"maxLength\":300}", + "description": "Generate a formal reply from an admin acknowledging the bug report." + }, + { + "inputJson": "{\"originalMessage\":\"Thanks for the info!\",\"userRole\":\"guest\",\"tone\":\"neutral\",\"language\":\"en\"}", + "description": "Generate a concise neutral reply from a guest user in response to information provided." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "web-development.createMention", + "description": "Creates an HTML mention element suitable for embedding in web content or apps. Accepts a username or user ID and optional display name and styling options. Produces a sanitized HTML string representing a clickable mention link or styled span with data attributes for frontend processing or API use.", + "category": "web-development", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user to mention, used as a data attribute (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "displayName", + "type": "string", + "description": "The visible name to show for the mention, defaults to userId if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "className", + "type": "string", + "description": "CSS class name(s) to apply to the mention element for styling (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "hrefTemplate", + "type": "string", + "description": "Template URL for the mention link with '{userId}' placeholder, e.g., '/profile/{userId}'. If empty, no link is created, only a span.", + "required": false, + "defaultValue": "" + }, + { + "name": "sanitizeHtml", + "type": "boolean", + "description": "Whether to sanitize the output HTML to prevent XSS, enabled by default.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string that is a safe, clickable or styled mention element ready for embedding in web UIs." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate user mention elements in HTML for web pages or applications, ensuring consistent markup, optional linking, and safe output. Useful for chat systems, comments, notifications, or any place where user mentions appear as part of content.", + "limitations": "This tool only creates the HTML snippet. It does not resolve user IDs to names or verify user existence. It also does not manage frontend interaction beyond static markup.", + "examples": [ + "Generate a mention for user with ID 'user123' shown as 'Alice' linking to '/users/user123'.", + "Create a mention for user 'bob' without a link, just a styled span with class 'mention'.", + "Produce a mention element sanitized to avoid script injection when given unsafe input." + ] + }, + "tags": [ + "web", + "mention", + "html", + "user", + "communication", + "UI", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"12345\",\"displayName\":\"Jane Doe\",\"className\":\"mention highlight\",\"hrefTemplate\":\"/users/{userId}\",\"sanitizeHtml\":true}", + "description": "Creates a clickable mention for user 12345 with display name 'Jane Doe', styled with 'mention highlight' classes linking to /users/12345." + }, + { + "inputJson": "{\"userId\":\"bob\",\"displayName\":\"\",\"className\":\"mention\",\"hrefTemplate\":\"\",\"sanitizeHtml\":true}", + "description": "Creates a non-linked mention span with class 'mention' displaying 'bob' as the visible text." + }, + { + "inputJson": "{\"userId\":\"evil

Sample text for embedding.

\",\"excludeTags\":[\"script\"],\"embeddingModel\":\"default\",\"language\":\"en\"}", + "description": "Create embedding excluding script tags to avoid non-textual content." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "embedding-generation.createYAML", + "description": "Generates vector embeddings from structured YAML input. Accepts a YAML-formatted string that describes text entries or documents, parses the input, extracts the textual content, and produces a corresponding array of vector embeddings for each text unit, suitable for semantic search or clustering.", + "category": "embedding-generation", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "A string containing well-formed YAML data representing texts to embed. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use (e.g., 'text-embedding-xyz'). If omitted, a default model is used.", + "required": false, + "defaultValue": "default" + }, + { + "name": "fieldPath", + "type": "string", + "description": "YAML path (dot notation) specifying where text is located within each entry, e.g. 'documents.text'. Defaults to top-level strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "ignoreMissingFields", + "type": "boolean", + "description": "If true, entries missing the text field are skipped instead of causing error.", + "required": false, + "defaultValue": "true" + }, + { + "name": "normalizeEmbeddings", + "type": "boolean", + "description": "Whether to normalize each resulting embedding vector to unit length.", + "required": false, + "defaultValue": "true" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of text items to process per batch when generating embeddings to optimize performance.", + "required": false, + "defaultValue": "64" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of embedding vectors and metadata. Each embedding corresponds to one parsed text entry from the YAML input." + }, + "aiAgent": { + "useCase": "Use this tool when structured text data is provided in YAML format and vector embeddings are needed for downstream NLP tasks such as semantic search, clustering, or similarity comparison. Ideal for YAML documents with nested or arrayed textual content requiring extraction and embedding.", + "limitations": "This tool does not perform YAML validation beyond parsing, nor does it generate embeddings for non-text data or complex non-string YAML nodes. It requires the text to be extractable via a specified field. It cannot embed images or binary data encoded in YAML.", + "examples": [ + "Generate embeddings for a list of documents described in a YAML file where each document has a 'summary' field.", + "Create embeddings from a YAML configuration defining multiple paragraphs under keys.", + "Process YAML data with nested arrays of text entries for vectorization." + ] + }, + "tags": [ + "embedding", + "YAML", + "NLP", + "vectorization", + "semantic-search" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"documents:\\n - id: 1\\n text: 'The quick brown fox jumps over the lazy dog'\\n - id: 2\\n text: 'Artificial intelligence and machine learning are related fields'\",\"fieldPath\":\"documents.text\"}", + "description": "Embed text under 'text' fields in an array named 'documents' in YAML." + }, + { + "inputJson": "{\"yamlContent\":\"- title: Intro\\n content: 'Welcome to the overview of embedding creation.'\\n- title: Details\\n content: 'Embedding models convert text to vectors.'\",\"fieldPath\":\"content\"}", + "description": "Embed top-level array items extracting 'content' field as text." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "embedding-generation.createImage", + "description": "Generates a fixed-length vector embedding from an input image to represent its visual features for similarity search, classification, or other machine learning tasks. Accepts image data via base64 string or image URL, processes it through a convolutional neural network model, and returns a numerical vector embedding.", + "category": "embedding-generation", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64 encoded image data. Provide either imageData or imageUrl.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageUrl", + "type": "string", + "description": "URL of the image to fetch and embed. Provide either imageUrl or imageData.", + "required": false, + "defaultValue": "" + }, + { + "name": "modelName", + "type": "string", + "description": "Name of the pre-trained embedding model to use (e.g., 'resnet50', 'mobilenetv2').", + "required": false, + "defaultValue": "resnet50" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Width in pixels to resize the image before embedding.", + "required": false, + "defaultValue": "224" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Height in pixels to resize the image before embedding.", + "required": false, + "defaultValue": "224" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as an array of floats and metadata about the embedding." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert images to vector embeddings for tasks like image similarity, clustering, or downstream ML applications. It can embed images supplied as URLs or base64 data using common pre-trained CNN models.", + "limitations": "Does not perform image recognition or classification directly; only generates embeddings. Quality depends on the chosen underlying model. Large images may require resizing to meet input constraints. Does not support batch processing of multiple images in one call.", + "examples": [ + "Generate embedding for an image URL to find similar images.", + "Embed base64 image data for content-based image retrieval.", + "Create fixed-size vectors from product photos for recommendation engines." + ] + }, + "tags": [ + "embedding", + "image", + "vector", + "machine-learning", + "computer-vision", + "feature-extraction" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/image1.jpg\",\"modelName\":\"resnet50\",\"resizeWidth\":224,\"resizeHeight\":224,\"normalize\":true}", + "description": "Embedding generation from an image URL using ResNet50 model resized to 224x224 pixels." + }, + { + "inputJson": "{\"imageData\":\"iVBORw0KGgoAAAANSUhEUgAAA...\",\"modelName\":\"mobilenetv2\",\"normalize\":false}", + "description": "Embedding generation from base64 image data using MobileNetV2 without normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "embedding-generation.createXML", + "description": "Generates an XML document embedding representation by processing input text or structured data and producing a vector embedding encoded within an XML structure. Accepts raw text or key-value object inputs, creates embeddings, and outputs XML embedding entries for downstream consumption.", + "category": "embedding-generation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw text or JSON string representing structured data to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier for the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata such as timestamps and model info in the XML output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTokens", + "type": "number", + "description": "Maximum number of tokens to consider for generating the embedding.", + "required": false, + "defaultValue": "512" + }, + { + "name": "namespace", + "type": "string", + "description": "XML namespace to use for embedding elements in the output document.", + "required": false, + "defaultValue": "http://example.com/embedding" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'xmlEmbedding' which is a string with the generated XML embedding document." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert plain text or structured key-value inputs into vector embeddings embedded in a standardized XML format for integration with systems requiring XML data exchange or further XML transformations. Useful for semantic search indexing or interoperability with legacy XML-based pipelines.", + "limitations": "Does not perform semantic reasoning on the content beyond generating embeddings. The XML schema is basic and may require adaptation for specialized XML schemas. Cannot embed binary or highly nested complex data structures directly without preprocessing.", + "examples": [ + "Generate an XML embedding for a product description text.", + "Convert JSON key-value pairs into an XML embedding format for downstream search.", + "Produce embeddings from a short paragraph with metadata included in XML format." + ] + }, + "tags": [ + "embedding", + "XML", + "vectorization", + "text-processing", + "data-serialization", + "semantic-search" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"The quick brown fox jumps over the lazy dog.\",\"embeddingModel\":\"text-embedding-ada-002\",\"includeMetadata\":true,\"maxTokens\":128,\"namespace\":\"http://example.com/embedding\"}", + "description": "Embed simple English sentence with metadata in default namespace." + }, + { + "inputJson": "{\"inputData\":\"{\\\"title\\\":\\\"AI Tool\\\",\\\"description\\\":\\\"An embedding generator\\\"}\",\"embeddingModel\":\"text-embedding-ada-002\",\"includeMetadata\":false,\"maxTokens\":256,\"namespace\":\"http://custom.org/embedding\"}", + "description": "Embed JSON string input without metadata using custom XML namespace." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "embedding-generation.createMarkdown", + "description": "Generates vector embeddings from Markdown content by extracting meaningful textual elements and transforming them into numerical vectors suitable for semantic search, clustering, or machine learning applications. Accepts raw Markdown text input and outputs embedding vectors along with metadata about the processed content.", + "category": "embedding-generation", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "The raw Markdown-formatted text to be embedded.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for vector generation, e.g., 'text-embedding-ada-002'.", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "splitSections", + "type": "boolean", + "description": "Whether to split the Markdown into sections (e.g., headings) and generate embeddings per section instead of whole document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sectionDepth", + "type": "number", + "description": "If splitting, the maximum heading depth (e.g., 2 for h1 and h2) used to identify sections.", + "required": false, + "defaultValue": "2" + }, + { + "name": "removeCodeBlocks", + "type": "boolean", + "description": "Whether to exclude code blocks from the text before creating embeddings.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embeddings as arrays of floats linked to either the whole document or individual Markdown sections, including metadata such as section titles and original text snippets." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create vector embeddings from Markdown documents or content to enable semantic search, similarity comparison, or downstream NLP tasks on markdown-based knowledge bases or documentation repositories. It simplifies extracting meaningful textual data from Markdown formatting and supports section-level vector generation for finer-grained embeddings.", + "limitations": "This tool does not perform OCR, speech-to-text transcription, or generate embeddings from non-textual elements like images embedded in Markdown. Extremely large Markdown documents may require pre-chunking outside this tool. The quality of embeddings depends on the selected model and preprocessing parameters.", + "examples": [ + "Generate embeddings from a README.md file to enable semantic search in a developer documentation website.", + "Create embeddings for sections in a Markdown user guide to support topic-specific recommendations.", + "Produce vector representations from Markdown notes, excluding code blocks, for clustering similar note topics." + ] + }, + "tags": [ + "embedding", + "markdown", + "vectorization", + "semantic-search", + "nlp", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Introduction\\nThis project uses AI to generate embeddings.\\n## Details\\nMore information about the embedding process.\\n```python\\ndef example():\\n pass\\n```\",\"embeddingModel\":\"text-embedding-ada-002\",\"splitSections\":true,\"sectionDepth\":2,\"removeCodeBlocks\":true}", + "description": "Creating embeddings per section from a Markdown document, excluding code blocks." + }, + { + "inputJson": "{\"markdownContent\":\"# Project Overview\\nWe use advanced embedding techniques.\",\"splitSections\":false,\"removeCodeBlocks\":false}", + "description": "Generate a single embedding vector for entire Markdown content including code blocks." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "embedding-generation.createTable", + "description": "Generates a vector embedding representation for tabular data, accepting input as a structured table in JSON or CSV format. Processes the data by encoding each row or selected columns into fixed-size embedding vectors, outputting an array of embeddings suitable for similarity search, clustering, or machine learning tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "The tabular data input as a JSON string (array of objects) or CSV string to be embedded.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the input table data: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "columns", + "type": "array", + "description": "An optional list of column names to include in the embedding creation; if empty or omitted, all columns are used.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for vector generation (e.g., 'default-text-embedding-v1').", + "required": false, + "defaultValue": "default-text-embedding-v1" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the resulting embeddings to unit length vectors.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the embeddings array and metadata: embeddings is an array of float arrays (one per row), metadata includes number of rows processed and column info." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert tabular data into vector embeddings for downstream tasks like data similarity search, clustering, or as input features for ML models. Especially useful when the table contains textual or mixed-type columns requiring semantic understanding.", + "limitations": "Does not perform feature engineering beyond embedding specified columns; unable to embed nested or hierarchical table data directly; performance depends on embedding model capability.", + "examples": [ + "Create embeddings for a JSON table of customer records focusing on 'name' and 'email' columns.", + "Generate vector embeddings from CSV sales data using default settings.", + "Embed tabular survey data selecting text response columns only." + ] + }, + "tags": [ + "embedding", + "table", + "vectorization", + "data-processing", + "machine-learning", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"[{\\\"name\\\": \\\"Alice\\\", \\\"email\\\": \\\"alice@example.com\\\", \\\"age\\\": 30}, {\\\"name\\\": \\\"Bob\\\", \\\"email\\\": \\\"bob@example.com\\\", \\\"age\\\": 25}]\",\"format\":\"json\",\"columns\":[\"name\",\"email\"],\"embeddingModel\":\"default-text-embedding-v1\",\"normalize\":true}", + "description": "Embed JSON table data using only 'name' and 'email' columns with normalization." + }, + { + "inputJson": "{\"tableData\":\"name,email,age\\nAlice,alice@example.com,30\\nBob,bob@example.com,25\",\"format\":\"csv\",\"columns\":[],\"embeddingModel\":\"default-text-embedding-v1\",\"normalize\":false}", + "description": "Embed CSV format table data using all columns, no normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "embedding-generation.createJSON", + "description": "Generates JSON-formatted vector embeddings for input text or array of texts using specified embedding model and options. Accepts plain text or list of texts, validates inputs, generates embeddings, and returns an object mapping each input to its vector embedding in JSON format.", + "category": "embedding-generation", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of one or more text strings to generate embeddings for.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": true, + "defaultValue": "" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of texts to process in one batch for efficiency; default is 16.", + "required": false, + "defaultValue": "16" + }, + { + "name": "normalizeVectors", + "type": "boolean", + "description": "Whether to L2 normalize the resulting embeddings; improves vector similarity calculations if true.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include original text alongside its embedding in the JSON output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object mapping each input text to its generated vector embedding array, optionally including original text if includeMetadata is true." + }, + "aiAgent": { + "useCase": "Use this tool to convert one or multiple input text strings into standardized JSON embedding objects for downstream tasks like semantic search, clustering, or ML input. It is useful when an agent needs structured embedding data that includes both vector arrays and optionally the source texts, supporting batch processing for efficiency.", + "limitations": "This tool does not perform embedding model training or vector database indexing. It assumes input texts are sufficiently clean and non-empty, and does not handle non-text data. Model-specific token limits or API constraints must be managed externally.", + "examples": [ + "Generate JSON embeddings for a list of customer feedback messages using 'text-embedding-ada-002' model for clustering analysis.", + "Create normalized vector embeddings in JSON for multiple product descriptions for semantic search indexing.", + "Produce JSON output embedding for a single sentence without metadata inclusion for lightweight API response." + ] + }, + "tags": [ + "embedding", + "vectorization", + "json", + "nlp", + "batch-processing", + "text", + "vector-embedding", + "semantic-search" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"The quick brown fox jumps over the lazy dog.\"],\"embeddingModel\":\"text-embedding-ada-002\",\"batchSize\":1,\"normalizeVectors\":false,\"includeMetadata\":true}", + "description": "Generate JSON embeddings for a single sentence including metadata." + }, + { + "inputJson": "{\"texts\":[\"Customer review one.\",\"Customer review two.\",\"Customer review three.\"],\"embeddingModel\":\"text-embedding-ada-002\",\"batchSize\":3,\"normalizeVectors\":true,\"includeMetadata\":true}", + "description": "Generate normalized embeddings for multiple customer reviews with metadata." + }, + { + "inputJson": "{\"texts\":[\"Short phrase\"],\"embeddingModel\":\"text-embedding-ada-002\",\"batchSize\":1,\"normalizeVectors\":false,\"includeMetadata\":false}", + "description": "Generate embedding for one short phrase without including input text in output." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "embedding-generation.createCSV", + "description": "This tool accepts an array of text entries and generates a CSV file where each row contains the original text and its corresponding vector embedding generated by a specified embedding model. It processes the texts to produce vector embeddings and outputs a CSV formatted string that can be saved or utilized for downstream tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of strings representing the texts to embed. Required and must contain at least one text.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelName", + "type": "string", + "description": "The name of the embedding model to use for generating vectors (e.g., 'openai-text-embedding-3-small').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Indicates whether to include CSV headers (text and embedding vector columns) in the output CSV.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to separate CSV columns, default is comma (,).", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV string with each row having the original text and its associated embedding vector serialized as JSON array." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a CSV file combining textual data with their vector embeddings for tasks such as semantic search, clustering, or offline analysis. Particularly useful to prepare data for ML pipelines or data export where embeddings must be paired with original texts in a CSV format.", + "limitations": "Cannot generate embeddings for non-text inputs such as images or audio. Embedding quality depends on the specified model. The output CSV may be large for big input arrays and vectors.", + "examples": [ + "Create embeddings for a list of customer reviews and output as CSV for further processing.", + "Generate a CSV of product descriptions with embeddings for semantic similarity analysis.", + "Produce a CSV file containing input texts and their embeddings to upload in a data visualization tool." + ] + }, + "tags": [ + "embedding-generation", + "csv", + "vector-embedding", + "text-processing", + "vectorization" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"The quick brown fox jumps over the lazy dog.\", \"AI is transforming many industries.\"],\"modelName\":\"openai-text-embedding-3-small\",\"includeHeaders\":true,\"delimiter\":\",\"}", + "description": "Generate a CSV embedding file for two sample texts including headers and using comma delimiter." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "embedding-generation.createWorkflow", + "description": "Creates a customizable workflow configuration for generating vector embeddings from text or code data. Accepts input specifying the data type, embedding model parameters, preprocessing steps, and output format. Produces a structured workflow object encoding these instructions for embedding generation pipelines.", + "category": "embedding-generation", + "parameters": [ + { + "name": "dataType", + "type": "string", + "description": "Type of input data for embedding generation (e.g., 'text', 'code').", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier or name of the embedding model to use (e.g., 'sentence-transformers/all-MiniLM-L6-v2').", + "required": true, + "defaultValue": "" + }, + { + "name": "preprocessingSteps", + "type": "array", + "description": "An ordered list of preprocessing operations to apply before embedding (e.g., ['tokenization', 'lowercasing']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of data items to process simultaneously in each embedding batch.", + "required": false, + "defaultValue": "32" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the output embeddings (e.g., 'json', 'numpy').", + "required": false, + "defaultValue": "json" + }, + { + "name": "normalizeEmbeddings", + "type": "boolean", + "description": "Whether to normalize embeddings to unit length after generation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A workflow configuration object detailing the input specifications, embedding model, preprocessing steps, batch settings, and output preferences for embedding generation pipelines." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically define embedding generation workflows that incorporate specific data types, preprocessing sequences, and model choices. It supports configuring embedding pipelines for different domains such as natural language or source code, enabling flexible and reusable workflows for downstream tasks like indexing or semantic search.", + "limitations": "This tool only creates the workflow configuration; it does not perform the actual embedding generation or model inference.", + "examples": [ + "Create an embedding workflow for text documents using a transformer model with standard preprocessing.", + "Generate a workflow configuration for embedding source code snippets including tokenization and normalization.", + "Set up a workflow to batch process text inputs and output embeddings in numpy format." + ] + }, + "tags": [ + "embedding", + "workflow", + "configuration", + "text", + "code", + "machine-learning", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"dataType\":\"text\",\"embeddingModel\":\"sentence-transformers/all-MiniLM-L6-v2\",\"preprocessingSteps\":[\"tokenization\",\"lowercasing\"],\"batchSize\":64,\"outputFormat\":\"json\",\"normalizeEmbeddings\":true}", + "description": "Workflow for creating normalized embeddings from text using a popular transformer model with tokenization and lowercasing preprocessing." + }, + { + "inputJson": "{\"dataType\":\"code\",\"embeddingModel\":\"code-search-net\",\"preprocessingSteps\":[\"tokenization\"],\"batchSize\":16,\"outputFormat\":\"numpy\",\"normalizeEmbeddings\":false}", + "description": "Workflow configuration to embed code snippets using a code-search specific model, including tokenization without normalization, outputting embeddings as numpy arrays." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "embedding-generation.createDataset", + "description": "This tool creates a dataset suitable for training embedding models by processing input text data. It accepts an array of text items or documents, optionally with associated metadata, cleans and normalizes the text, and outputs a structured dataset with unique IDs, cleaned text, and metadata fields to facilitate embedding generation.", + "category": "embedding-generation", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of strings representing the text items or documents to include in the dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "array", + "description": "Optional array of metadata objects corresponding to each text item; length must match texts array if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "cleanText", + "type": "boolean", + "description": "Flag indicating whether to perform text cleaning and normalization (e.g., lowercasing, removing special chars).", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeDuplicates", + "type": "boolean", + "description": "Whether to remove duplicate text entries from the dataset.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minTextLength", + "type": "number", + "description": "Minimum length of text items in characters; entries shorter than this are excluded.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns a dataset object containing a list of entries each with unique id, cleaned text, and optional metadata, ready for embedding model consumption." + }, + "aiAgent": { + "useCase": "Use this tool when you need to prepare raw text data into a clean, structured dataset tailored for embedding generation tasks such as semantic search, clustering, or downstream NLP. It helps ensure data quality by cleaning, filtering, and structuring inputs with metadata support.", + "limitations": "This tool does not generate embeddings itself; it only prepares text data. It requires text inputs; other data types are unsupported. Complex NLP normalization or language detection is not performed.", + "examples": [ + "Create a cleaned dataset from customer reviews for embedding model training.", + "Generate an embedding dataset from a list of product descriptions with associated category metadata.", + "Remove duplicates and filter out short texts from raw text logs before creating embedding dataset." + ] + }, + "tags": [ + "embedding-generation", + "dataset-preparation", + "text-processing", + "data-cleaning", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"Hello World!\",\"The quick brown fox.\",\"Hello World!\"],\"metadata\":[{\"source\":\"tweet1\"},{\"source\":\"article1\"},{\"source\":\"tweet1\"}],\"cleanText\":true,\"removeDuplicates\":true,\"minTextLength\":5}", + "description": "Create a cleaned dataset from short texts with metadata, removing duplicates and enforcing minimum text length." + }, + { + "inputJson": "{\"texts\":[\"Sample document one.\",\"Another example text.\"],\"cleanText\":false,\"removeDuplicates\":false,\"minTextLength\":0}", + "description": "Create a dataset without cleaning or removing duplicates to preserve raw data for embedding." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "embedding-generation.createPullRequest", + "description": "Generates vector embeddings for the description and code changes of a GitHub pull request to aid in semantic search, code review assistance, and automation workflows. Accepts pull request metadata and diff text as input, processes them into combined embeddings capturing semantic content, and outputs structured embedding vectors.", + "category": "embedding-generation", + "parameters": [ + { + "name": "repositoryName", + "type": "string", + "description": "The full name of the repository (e.g., 'org/repo') where the pull request exists.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestTitle", + "type": "string", + "description": "The title of the pull request to embed for semantic understanding.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestDescription", + "type": "string", + "description": "The detailed description or body of the pull request, providing context and intent of the changes.", + "required": false, + "defaultValue": "" + }, + { + "name": "diffText", + "type": "string", + "description": "The unified diff text of code changes included in the pull request to generate embeddings from.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier for the embedding model to use (e.g., 'code-similarity-v1') to generate vectors.", + "required": false, + "defaultValue": "code-similarity-v1" + }, + { + "name": "maxTokens", + "type": "number", + "description": "Maximum number of tokens to process from text inputs to limit embedding size.", + "required": false, + "defaultValue": "2048" + } + ], + "returns": { + "type": "object", + "description": "An object containing embedding vectors (arrays of floating-point numbers) for the pull request title, description, and code diff, along with metadata like model used and dimensionality." + }, + "aiAgent": { + "useCase": "Use this tool when you have details of a pull request (including title, description, and code changes) and want to generate semantic vector embeddings to enable intelligent code review assistance, search over pull requests, clustering similar PRs, or feeding into ML models for downstream tasks. It is best suited for automating codebase maintenance and developer productivity enhancements.", + "limitations": "This tool does not create or modify actual pull requests on Git hosting platforms; it purely generates embeddings from provided PR data. It requires the caller to provide diff text and will not fetch repository data by itself. Embedding quality depends on the chosen model and input token limits.", + "examples": [ + "Create embeddings for a new feature pull request containing a long description and code diff.", + "Generate semantic vectors from a bugfix PR's title and changes to enable PR similarity search.", + "Embed multiple pull requests' metadata and diffs for clustering related changes during release planning." + ] + }, + "tags": [ + "embedding", + "code-review", + "pull-request", + "semantic-search", + "github", + "vectorization", + "automation" + ], + "examples": [ + { + "inputJson": "{\"repositoryName\":\"example-org/example-repo\",\"pullRequestTitle\":\"Add new payment gateway integration\",\"pullRequestDescription\":\"This PR introduces support for the new AcmePay gateway, including API client and tests.\",\"diffText\":\"diff --git a/src/payment.js b/src/payment.js\\nindex e69de29..4b825dc 100644\\n--- a/src/payment.js\\n+++ b/src/payment.js\\n@@ -0,0 +1,10 @@\\n+function acmePay() {\\n+ // AcmePay API client implementation\\n+}\\n\",\"embeddingModel\":\"code-similarity-v1\",\"maxTokens\":2048}", + "description": "Embedding generation for a feature pull request with title, description, and code diff input." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "embedding-generation.createPipeline", + "description": "Creates a customizable embedding generation pipeline by combining preprocessing, encoder model selection, and postprocessing steps. Accepts configuration for input text handling, choice of embedding model, and output formatting, and returns a reusable pipeline object for embedding text inputs.", + "category": "embedding-generation", + "parameters": [ + { + "name": "preprocessingSteps", + "type": "array", + "description": "Ordered list of preprocessing operations to apply to input text before embedding (e.g., tokenization, normalization).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier or name of the embedding model to use (e.g., 'bert-base-uncased', 'sentence-transformers/all-MiniLM-L6-v2').", + "required": true, + "defaultValue": "" + }, + { + "name": "postprocessingSteps", + "type": "array", + "description": "Ordered list of operations to apply on generated embeddings (e.g., normalization, dimensionality reduction).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of input texts to embed simultaneously for efficiency. Must be positive integer.", + "required": false, + "defaultValue": "32" + }, + { + "name": "device", + "type": "string", + "description": "Compute device to run the embedding model on (e.g., 'cpu', 'cuda').", + "required": false, + "defaultValue": "cpu" + } + ], + "returns": { + "type": "object", + "description": "A pipeline object encapsulating the configured embedding generation process, exposing a method to embed input texts efficiently." + }, + "aiAgent": { + "useCase": "Use this tool to set up a flexible embedding generation pipeline tailored to specific input preprocessing needs and preferred embedding models. Useful when building vector search systems, recommendation engines, or language understanding modules requiring consistent embedding generation.", + "limitations": "This tool does not perform embedding itself but creates a configured pipeline. The pipeline's effectiveness depends on chosen models and preprocessing steps, which must be supported by underlying ML frameworks.", + "examples": [ + "Create a pipeline that tokenizes and lowercases input, uses 'sentence-transformers/all-MiniLM-L6-v2' as the embedding model, applies L2 normalization, and runs on GPU.", + "Set up a simple pipeline with no preprocessing or postprocessing using 'bert-base-uncased' model on CPU.", + "Build a pipeline that truncates long input texts, encodes with 'distilbert-base-uncased', and reduces embedding dimensionality for faster similarity search." + ] + }, + "tags": [ + "embedding", + "pipeline", + "NLP", + "vectorization", + "machine learning", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"preprocessingSteps\":[\"lowercase\",\"tokenize\"],\"embeddingModel\":\"sentence-transformers/all-MiniLM-L6-v2\",\"postprocessingSteps\":[\"normalize\"],\"batchSize\":64,\"device\":\"cuda\"}", + "description": "Create a pipeline with lowercase and tokenization preprocessing, using a MiniLM model, normalize embeddings, batch size 64 on GPU." + }, + { + "inputJson": "{\"embeddingModel\":\"bert-base-uncased\"}", + "description": "Create a simple pipeline with default settings using bert-base-uncased model." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "embedding-generation.createIssue", + "description": "Generates a vector embedding for a code issue description to facilitate semantic search, clustering, and similarity analysis within code repositories or project management tools. Accepts the textual issue description and optional metadata for enhanced context, then returns a numerical vector embedding representing the issue's semantic content.", + "category": "embedding-generation", + "parameters": [ + { + "name": "issueDescription", + "type": "string", + "description": "The natural language description of the code issue or bug report to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional contextual data about the issue such as severity, tags, or component name to influence embedding generation.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to use for generating the vector representation.", + "required": false, + "defaultValue": "default-code-issue-embedding-model" + }, + { + "name": "includeRawTextEmbedding", + "type": "boolean", + "description": "Flag to include embedding of the raw issue description text alongside any metadata-enhanced embedding.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated vector embedding array, model info used, and optionally the original text and metadata for reference." + }, + "aiAgent": { + "useCase": "Use this tool when an AI system needs to represent code issue descriptions in vector form to enable semantic understanding, similarity detection, clustering, or integration with vector search systems. Ideal for improving bug triage, related issue grouping, or recommending relevant documentation.", + "limitations": "The tool cannot fix issues or provide explanations; it only encodes textual descriptions into vectors. Quality depends on the input clarity and embedding model capabilities.", + "examples": [ + "Generate an embedding for a bug report describing a null pointer exception in the login module.", + "Create embeddings for issue summaries to cluster similar tickets in a software project.", + "Produce vector representations of code vulnerabilities described in issue reports for semantic search integration." + ] + }, + "tags": [ + "embedding", + "code", + "issue-tracking", + "semantic-search", + "bug-report", + "vector", + "code-analysis" + ], + "examples": [ + { + "inputJson": "{\"issueDescription\":\"Application throws null pointer exception when user tries to login with empty password field.\",\"metadata\":{\"severity\":\"high\",\"component\":\"authentication\"},\"embeddingModel\":\"default-code-issue-embedding-model\",\"includeRawTextEmbedding\":true}", + "description": "Embedding a bug report about a null pointer exception in the login component." + }, + { + "inputJson": "{\"issueDescription\":\"Memory leak detected in image processing pipeline causing degraded performance over time.\",\"metadata\":{\"severity\":\"medium\",\"component\":\"image-processing\"}}", + "description": "Create embedding for a memory leak issue in image processing without specifying embedding model explicitly." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "embedding-generation.createCommit", + "description": "Generates a vector embedding that represents a code commit by analyzing its diffs, commit message, and metadata. Accepts structured commit data including author, message, changed files with diffs, and timestamp, and outputs a fixed-length numeric embedding useful for code search, similarity detection, or downstream ML tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "The textual commit message explaining the changes made in the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author who made the commit.", + "required": false, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the commit author.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the commit was made.", + "required": false, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of objects representing changed files, each with filename and diff text or patch representing code changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryName", + "type": "string", + "description": "Name of the repository or project containing the commit.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a high-dimensional numeric embedding vector representing the commit semantics and code changes, suitable for similarity search and machine learning applications." + }, + "aiAgent": { + "useCase": "Use this tool when you need a concise numeric representation (embedding) of a code commit to enable semantic search, clustering, or recommendation systems based on commit contents and metadata. It is suitable for analyzing code changes at a commit level for tasks like anomaly detection, impact analysis, or finding similar commits.", + "limitations": "This tool does not perform full semantic code understanding or generate human-readable summaries. It cannot interpret binary diffs or non-textual changes and requires textual diffs that include contextual code.", + "examples": [ + "Generate an embedding for a code commit to find similar commits in a large repository.", + "Create vector embeddings of recent commits to cluster them by functionality changes.", + "Use embeddings of commits to recommend reviewers based on history." + ] + }, + "tags": [ + "embedding", + "code", + "commit", + "vector", + "diff", + "code-analysis", + "semantic-search" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Fix null pointer exception in user login flow\",\"authorName\":\"Alice Johnson\",\"authorEmail\":\"alice@example.com\",\"timestamp\":\"2024-05-10T15:23:00Z\",\"changedFiles\":[{\"filename\":\"src/login.js\",\"diff\":\"- if(user!=null){\\n+ if(user!==null && user.isActive){\\n\"}],\"repositoryName\":\"auth-service\"}", + "description": "Embedding generation for a commit fixing a null pointer exception in login code." + }, + { + "inputJson": "{\"commitMessage\":\"Add unit tests for payment processing module\",\"authorName\":\"Bob Lee\",\"changedFiles\":[{\"filename\":\"tests/payment.test.js\",\"diff\":\"+ test('processPayment handles invalid input', () => {\\n+ expect(() => processPayment(null)).toThrow();\\n+ });\\n\"}]}", + "description": "Embed a commit that adds new unit tests to the payment processing code." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "embedding-generation.createBranch", + "description": "Generates a branch-specific embedding vector for code repositories. Takes branch name, repository URL or code snapshots as input, processes code content on that branch, and outputs a vector embedding representing branch-specific code features for search or analysis.", + "category": "embedding-generation", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the Git repository to extract code from (required if codeSnapshot not provided).", + "required": false, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The name of the branch in the repository to generate the embedding for (required if repositoryUrl provided).", + "required": false, + "defaultValue": "" + }, + { + "name": "codeSnapshot", + "type": "object", + "description": "An optional snapshot of the code files keyed by file path, used instead of repositoryUrl and branchName.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Specifies which embedding model to use for vector generation (e.g., 'code-search-babbage').", + "required": false, + "defaultValue": "code-search-babbage" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Whether to include dependency files from the branch in the embedding (true/false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the embedding vector as an array of floats and metadata like branch and repo info." + }, + "aiAgent": { + "useCase": "Use this tool when needing a vector embedding that captures the characteristics of a specific Git branch's code base, such as for code search, branch similarity comparisons, or specialized analysis. It supports input as a live repo+branch or code snapshots. Useful for agents managing code QA or knowledge management.", + "limitations": "Cannot directly handle private repositories without access credentials. Does not generate embeddings for individual commits or files separately unless pre-processed. The output embedding dimensionality depends on the embedding model chosen and might vary.", + "examples": [ + "Generate an embedding for the dev branch of a public GitHub repo to enable semantic search.", + "Build a branch embedding from a provided set of code files snapshot to represent a feature branch offline.", + "Create embeddings for different branches and compare similarity for impact analysis." + ] + }, + "tags": [ + "embedding-generation", + "code", + "branch", + "repository", + "vector-embedding" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"branchName\":\"feature-ai-embedding\",\"embeddingModel\":\"code-search-babbage\",\"includeDependencies\":true}", + "description": "Generate embedding for the 'feature-ai-embedding' branch of a public GitHub repository including dependencies." + }, + { + "inputJson": "{\"codeSnapshot\":{\"src/main.js\":\"console.log('Hello World');\",\"package.json\":\"{\\\"name\\\":\\\"example\\\"}\"},\"embeddingModel\":\"code-search-babbage\",\"includeDependencies\":false}", + "description": "Create embedding using a code snapshot representing files on a branch, without including dependencies." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "embedding-generation.createVariable", + "description": "Generates a vector embedding for a given code variable name or identifier using a specified embedding model. The tool accepts a variable name as input and returns its vector embedding representation, which can be used for code analysis, similarity search, or machine learning tasks involving code semantics.", + "category": "embedding-generation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The name or identifier of the code variable to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The embedding model to use for vector generation, e.g., 'codebert', 'fasttext-code'.", + "required": false, + "defaultValue": "codebert" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the resulting embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original variable name and its corresponding embedding vector as an array of floats." + }, + "aiAgent": { + "useCase": "Use this tool when you need a vector representation of a code variable to perform semantic similarity, find related variables across codebases, support code search, or input into machine learning models that analyze code structure and meaning. It is particularly useful when analyzing or clustering code symbols by meaning.", + "limitations": "This tool cannot generate contextual embeddings requiring full code context or interpret variable usage. It only embeds isolated variable names, so deeper semantic understanding may be limited.", + "examples": [ + "Generate the embedding vector for the variable named 'userId' using default settings.", + "Create a normalized embedding vector for a variable named 'temp_buffer' using the 'fasttext-code' model." + ] + }, + "tags": [ + "embedding", + "code", + "variable", + "vector", + "machine-learning", + "code-analysis" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"userId\"}", + "description": "Generate an embedding vector for the code variable \"userId\" using the default embedding model." + }, + { + "inputJson": "{\"variableName\":\"temp_buffer\",\"embeddingModel\":\"fasttext-code\",\"normalize\":false}", + "description": "Create a raw embedding vector for the variable \"temp_buffer\" using the FastText code model without normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "embedding-generation.createConfig", + "description": "Creates a configuration object for embedding generation models. Accepts parameters such as model type, embedding dimensions, normalization options, and tokenizer settings. Processes these inputs to produce a config object that standardizes embedding generation settings for downstream embedding computation workflows.", + "category": "embedding-generation", + "parameters": [ + { + "name": "modelType", + "type": "string", + "description": "Specifies the embedding model to use, e.g., 'bert-base', 'openai-text-embedding', or custom.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "Number of dimensions for the output embedding vectors; must be a positive integer matching the model's output size.", + "required": true, + "defaultValue": "" + }, + { + "name": "normalizeEmbeddings", + "type": "boolean", + "description": "Whether to normalize the embeddings to unit length after generation (true enables normalization).", + "required": false, + "defaultValue": "false" + }, + { + "name": "tokenizerSettings", + "type": "object", + "description": "Optional settings to customize the tokenizer, such as max token length, truncation strategy, or special tokens.", + "required": false, + "defaultValue": "" + }, + { + "name": "useGPU", + "type": "boolean", + "description": "Indicates if GPU acceleration should be enabled for embedding generation (if supported by environment).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A configuration object containing all specified parameters formatted for use in embedding generation pipelines, ensuring consistent embedding computation behavior." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create or update configuration objects that define how text embeddings are generated, including model specifics, embedding dimensions, normalization, and tokenizer options. This standardizes embedding setup for downstream tasks like similarity search or classification.", + "limitations": "This tool does not perform actual embedding generation; it only creates configuration objects. It cannot validate model availability or run model inference.", + "examples": [ + "Create a config for 'bert-base' model with 768 dimensions and normalized embeddings.", + "Generate a config for OpenAI embeddings with tokenization truncation settings.", + "Set up GPU-enabled embedding config for custom model with 512 dimensions." + ] + }, + "tags": [ + "embedding", + "configuration", + "model-settings", + "text-processing", + "vector", + "generation" + ], + "examples": [ + { + "inputJson": "{\"modelType\":\"bert-base\",\"embeddingDimension\":768,\"normalizeEmbeddings\":true,\"tokenizerSettings\":{\"maxLength\":512,\"truncationStrategy\":\"longest_first\"},\"useGPU\":false}", + "description": "Standard BERT embedding config with normalization and tokenizer max token length 512." + }, + { + "inputJson": "{\"modelType\":\"openai-text-embedding\",\"embeddingDimension\":1536,\"normalizeEmbeddings\":false,\"tokenizerSettings\":{},\"useGPU\":true}", + "description": "OpenAI embedding config requesting GPU compute without normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "embedding-generation.createDependency", + "description": "Generates vector embeddings for code dependencies based on their source code or metadata. Accepts dependency identifiers or source snippets, processes them with a code-focused embedding model, and returns numeric vector embeddings for use in search, analysis, or recommendation systems.", + "category": "embedding-generation", + "parameters": [ + { + "name": "dependencyName", + "type": "string", + "description": "The name of the dependency or package to generate embeddings for, e.g., a library or module name, optional if providing source code.", + "required": false, + "defaultValue": "" + }, + { + "name": "sourceCode", + "type": "string", + "description": "Raw source code or relevant code excerpts of the dependency for generating accurate embeddings, required if dependencyName is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the provided source code, used to enhance embedding accuracy, e.g., 'javascript', 'python'.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Specifies which embedding model to use for generation, e.g., 'code-bert', 'starcoder'.", + "required": false, + "defaultValue": "\"code-bert\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embedding as an array of floats, the dimension of the embedding vector, and meta info about input." + }, + "aiAgent": { + "useCase": "Use this tool when you need vector embeddings representing code dependencies to improve search, similarity detection, or knowledge graphs involving software libraries. It helps integrate dependency semantic info into ML workflows by transforming code or metadata to high-dimensional vectors.", + "limitations": "Cannot generate embeddings without valid source code or identifiable dependency metadata. Embeddings quality depends heavily on the input and chosen model; it does not analyze license or security aspects of dependencies.", + "examples": [ + "Generate embeddings for the React library to enable semantic search over dependencies.", + "Create vector embeddings from code snippets of a dependency for ML model input.", + "Embed metadata of a Python package to cluster similar dependencies." + ] + }, + "tags": [ + "embedding", + "code-analysis", + "dependencies", + "vector-representation", + "software-libraries", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"dependencyName\":\"lodash\",\"sourceCode\":\"\",\"language\":\"javascript\",\"embeddingModel\":\"code-bert\"}", + "description": "Generate embedding for the lodash JS library using default code-bert model with no source code input." + }, + { + "inputJson": "{\"dependencyName\":\"\",\"sourceCode\":\"function add(a, b) { return a + b; }\",\"language\":\"javascript\",\"embeddingModel\":\"starcoder\"}", + "description": "Embed a small JavaScript code snippet representing a dependency function with starcoder model." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "embedding-generation.createPackage", + "description": "Generates a reusable code package that encapsulates text embedding generation functionality. Accepts configuration details like embedding model, programming language, and package metadata. Processes these inputs to output a ready-to-use code package including API calls or local embedding model integration for downstream vectorization tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier or name of the embedding model to use (e.g., 'text-embedding-3-large').", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Target programming language for the generated package (e.g., 'python', 'javascript').", + "required": true, + "defaultValue": "" + }, + { + "name": "packageName", + "type": "string", + "description": "Name of the generated package or module.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version number of the package, following semantic versioning (e.g., '1.0.0').", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "includeApiClient", + "type": "boolean", + "description": "Whether to include an API client wrapper for remote embedding service calls.", + "required": false, + "defaultValue": "true" + }, + { + "name": "licenseType", + "type": "string", + "description": "License type for the generated package (e.g., 'MIT', 'Apache-2.0').", + "required": false, + "defaultValue": "\"MIT\"" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of additional dependencies or libraries to include in the package.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata and content of the generated package. Includes package name, version, language, a zip file content encoded as base64 string, and a manifest describing files included." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a ready-to-install or import code package that performs text embedding generation with specific model and language setups. This helps automate deployment or integration tasks by providing reusable code bundles tailored to user or system configuration.", + "limitations": "Cannot generate runnable binaries or packages for languages or environments not supported by the underlying embedding models. Does not provide embeddings directly, only the code to generate them.", + "examples": [ + "Create a Python package named 'textEmbedder' using the 'text-embedding-3-large' model with an MIT license.", + "Generate a JavaScript embedding client package configured to use a remote API with version '0.9.0'.", + "Produce a Python package including additional numpy dependency for embedding generation." + ] + }, + "tags": [ + "embedding", + "code-generation", + "package", + "text-embeddings", + "AI-integration" + ], + "examples": [ + { + "inputJson": "{\"embeddingModel\":\"text-embedding-3-large\",\"programmingLanguage\":\"python\",\"packageName\":\"textEmbedder\",\"version\":\"1.0.0\",\"includeApiClient\":true,\"licenseType\":\"MIT\",\"dependencies\":[\"numpy\"]}", + "description": "Generate a Python package named 'textEmbedder' using the 'text-embedding-3-large' model, including numpy dependency and API client wrapper." + }, + { + "inputJson": "{\"embeddingModel\":\"text-embedding-2-small\",\"programmingLanguage\":\"javascript\",\"packageName\":\"embedClientJS\",\"version\":\"0.9.0\",\"includeApiClient\":true,\"licenseType\":\"Apache-2.0\",\"dependencies\":[]}", + "description": "Create a JavaScript embedding client package named 'embedClientJS' using a smaller embedding model with Apache 2.0 license." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "embedding-generation.createTest", + "description": "Generates a test suite embedding from provided code snippets in various programming languages. Accepts an array of code samples and language identifiers, processes them to create a vector representation suitable for similarity search and downstream test analysis tasks, and returns combined embedding vector data.", + "category": "embedding-generation", + "parameters": [ + { + "name": "codeSnippets", + "type": "array", + "description": "Array of objects each containing a 'code' string and 'language' string representing the code sample and its programming language.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for vector generation, e.g. 'codebert-base' or 'text-embedding-ada-002'.", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the resulting combined embedding vector to unit length. Useful for cosine similarity calculations.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a combined embedding vector as an array of floats and metadata about the embedding generation process." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate vector embeddings representing multiple code snippets to perform similarity search, clustering, or downstream analysis on test code samples. Particularly useful in contexts of test code understanding, code search, or embedding-based retrieval related to code tests.", + "limitations": "This tool only generates embeddings for supplied code snippets; it does not analyze or execute code. Quality depends on embedding model chosen and code snippet quality.", + "examples": [ + "Create a test embedding from 3 JavaScript unit test functions for similarity search.", + "Generate embeddings for a set of Python and Java test methods for indexing in a code search engine." + ] + }, + "tags": [ + "embedding", + "code", + "test", + "vectorization", + "code-analysis", + "code-search" + ], + "examples": [ + { + "inputJson": "{\"codeSnippets\":[{\"code\":\"def test_add():\\n assert add(1, 2) == 3\",\"language\":\"python\"},{\"code\":\"function testAdd() { assert(add(1,2) === 3); }\",\"language\":\"javascript\"}],\"embeddingModel\":\"codebert-base\",\"normalize\":true}", + "description": "Generate a combined embedding from Python and JavaScript test functions using the 'codebert-base' model." + }, + { + "inputJson": "{\"codeSnippets\":[{\"code\":\"@Test public void testAdd() { assertEquals(3, add(1,2)); }\",\"language\":\"java\"}],\"embeddingModel\":\"text-embedding-ada-002\",\"normalize\":false}", + "description": "Generate an embedding vector from a single Java test method without normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "embedding-generation.createQuery", + "description": "Generates a vector embedding for a given query text to facilitate semantic search or similarity comparisons. Accepts plain text as input, processes it using a specified embedding model, and returns a fixed-length numeric vector representing the semantic content of the query.", + "category": "embedding-generation", + "parameters": [ + { + "name": "queryText", + "type": "string", + "description": "The input text query for which to generate the embedding.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to use (e.g., 'openai/text-embedding-ada-002').", + "required": false, + "defaultValue": "openai/text-embedding-ada-002" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the resulting embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original query text and its corresponding embedding vector array of floats." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert a textual query into a numerical vector representation for use in vector search, retrieval augmentation, recommendation systems, or similarity analyses. The generated embeddings enable semantic understanding beyond keyword matching.", + "limitations": "This tool does not handle batch embedding generation or embedding of non-textual data. The quality of the embedding depends on the chosen model and may not capture domain-specific nuances without fine-tuning.", + "examples": [ + "Generate an embedding vector for a user search query to find relevant documents.", + "Create a semantic vector for a question to compare with FAQ embeddings.", + "Convert short text queries into vectors for similarity ranking in a chatbot." + ] + }, + "tags": [ + "embedding", + "query", + "vector", + "semantic-search", + "nlp", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"queryText\": \"How to integrate vector search in my app?\", \"embeddingModel\": \"openai/text-embedding-ada-002\", \"normalize\": true}", + "description": "Generate a normalized embedding vector for a typical user query about integrating vector search." + }, + { + "inputJson": "{\"queryText\": \"Best practices for semantic similarity\", \"normalize\": false}", + "description": "Create an embedding without normalization for a text about best practices in semantic similarity." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "embedding-generation.createAPI", + "description": "This tool generates a ready-to-use RESTful API server code scaffold that wraps a specified embedding generation model. It accepts model details and configuration, and outputs code templates in the chosen programming language that serve embedding vectors for given input texts.", + "category": "embedding-generation", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name or identifier of the embedding model to be used (e.g., 'text-embedding-ada-002').", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated API server code (e.g., 'Python', 'Node.js').", + "required": true, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "The API path for embedding requests (default '/embed').", + "required": false, + "defaultValue": "/embed" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether to include authentication middleware in the API scaffold.", + "required": false, + "defaultValue": "false" + }, + { + "name": "openAiApiKeyEnvVar", + "type": "string", + "description": "Name of environment variable to read the OpenAI API key from, if applicable.", + "required": false, + "defaultValue": "OPENAI_API_KEY" + }, + { + "name": "port", + "type": "number", + "description": "The port number that the API server will listen on.", + "required": false, + "defaultValue": "8080" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API server source code as a string, ready to be written to a file and run." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate a minimal, practical API server that exposes an embedding generation model as a REST endpoint. It enables programmatic access to embeddings via HTTP calls in standard programming languages, facilitating easy integration into applications or pipelines.", + "limitations": "Does not implement production-hardened features like rate limiting, advanced authentication, or multi-model management. Assumes embedding model is externally accessible via API or library.", + "examples": [ + "Generate a Python Flask API that wraps the OpenAI embedding model 'text-embedding-ada-002'.", + "Create a Node.js Express API endpoint for producing text embeddings on port 5000 with authentication enabled.", + "Produce server code for an embedding API using a custom embedding model name, available via environment variable OpenAI key." + ] + }, + "tags": [ + "embedding-generation", + "API", + "code-generation", + "REST", + "server", + "openai", + "text-embedding" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"text-embedding-ada-002\",\"programmingLanguage\":\"Python\",\"apiEndpoint\":\"/embed\",\"authenticationRequired\":false,\"openAiApiKeyEnvVar\":\"OPENAI_API_KEY\",\"port\":8080}", + "description": "Generate a Python Flask API endpoint '/embed' that returns embeddings from the OpenAI 'text-embedding-ada-002' model with no authentication, listening on port 8080." + }, + { + "inputJson": "{\"modelName\":\"custom-embedding-v1\",\"programmingLanguage\":\"Node.js\",\"apiEndpoint\":\"/v1/embeddings\",\"authenticationRequired\":true,\"openAiApiKeyEnvVar\":\"MY_API_KEY\",\"port\":5000}", + "description": "Generate a Node.js Express API at '/v1/embeddings' requiring auth middleware, using a custom embedding model and API key environment variable 'MY_API_KEY' on port 5000." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "embedding-generation.createMigration", + "description": "Generates a code migration script that updates embedding generation logic from one model or schema version to another. Accepts current and target embedding model details, and produces a migration script that automates refactoring embedding generation calls and configuration in codebases.", + "category": "embedding-generation", + "parameters": [ + { + "name": "currentModelVersion", + "type": "string", + "description": "The current version identifier or name of the embedding model used in the code base.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetModelVersion", + "type": "string", + "description": "The target embedding model version to migrate the codebase to.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceCodeLanguage", + "type": "string", + "description": "Programming language of the source code to generate the migration script for (e.g., Python, JavaScript).", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingFunctionName", + "type": "string", + "description": "Name of the function or method responsible for embedding generation in the existing code.", + "required": false, + "defaultValue": "generateEmbedding" + }, + { + "name": "includeDocumentationUpdates", + "type": "boolean", + "description": "Whether to include automated updates to code comments and documentation about embedding changes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the migration script code as a string plus a summary of changes for review." + }, + "aiAgent": { + "useCase": "Use this tool when needing to upgrade or refactor embedding generation in codebases across model versions or APIs, automating the tedious and error-prone process of updating embedding logic and signatures to ensure consistency and accuracy.", + "limitations": "This tool does not test the generated migration script or run it; it produces suggested migration code and summaries, requiring developer review and integration.", + "examples": [ + "Create a migration script to move embedding calls from model v1 to v2 in a Python codebase.", + "Generate migration code updating embedding function name and parameters when switching embedding APIs in JavaScript." + ] + }, + "tags": [ + "embedding-generation", + "migration", + "code-refactoring", + "automation", + "ai-model-update" + ], + "examples": [ + { + "inputJson": "{\"currentModelVersion\":\"v1\",\"targetModelVersion\":\"v2\",\"sourceCodeLanguage\":\"Python\",\"embeddingFunctionName\":\"embed_text\",\"includeDocumentationUpdates\":true}", + "description": "Generate migration script from embedding model v1 to v2 in Python codebase where embedding function is named 'embed_text' with doc updates." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Migration", + "context": null + } + }, + { + "name": "embedding-generation.createEndpoint", + "description": "This tool creates a customizable API endpoint configured to generate vector embeddings from text inputs using specified embedding models. It accepts parameters defining the endpoint path, supported models, maximum input length, and batching options, and outputs the endpoint configuration details needed for deployment or integration.", + "category": "embedding-generation", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path where the embedding generation endpoint will be accessible, e.g., /api/embeddings.", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedModels", + "type": "array", + "description": "List of embedding model identifiers that this endpoint will support for generating embeddings.", + "required": true, + "defaultValue": "[\"text-embedding-ada-002\"]" + }, + { + "name": "maxInputLength", + "type": "number", + "description": "Maximum length (in tokens or characters) for input text that the endpoint will accept.", + "required": false, + "defaultValue": "2048" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of input texts to process in one batch to optimize throughput and latency.", + "required": false, + "defaultValue": "16" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Whether to enable request and response logging for the endpoint.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Flag to require authentication (e.g., API key) to access the endpoint.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the endpoint configuration details, including the full access URL, supported models, input constraints, and security settings." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a new API endpoint for generating vector embeddings from textual data, customizing it with supported models, input limits, authentication, and batching to integrate embedding capabilities into applications or services.", + "limitations": "This tool configures the endpoint but does not implement the underlying embedding model or hosting infrastructure; deployment and model serving must be handled separately.", + "examples": [ + "Create an embedding endpoint at /api/embed using 'text-embedding-ada-002' and 'text-embedding-babbage-001' models.", + "Create a public embedding endpoint with no authentication and logging enabled for experimental use.", + "Set up an embedding endpoint that batches input in sizes of 32 and limits input length to 1024 tokens." + ] + }, + "tags": [ + "embedding", + "API", + "endpoint", + "configuration", + "vectorization", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/api/embeddings\",\"supportedModels\":[\"text-embedding-ada-002\"],\"maxInputLength\":2048,\"batchSize\":16,\"enableLogging\":false,\"authenticationRequired\":true}", + "description": "Create a secure embedding endpoint at /api/embeddings supporting the 'text-embedding-ada-002' model with default input length and batch size." + }, + { + "inputJson": "{\"endpointPath\":\"/embed/public\",\"supportedModels\":[\"text-embedding-ada-002\",\"text-embedding-babbage-001\"],\"maxInputLength\":1024,\"batchSize\":32,\"enableLogging\":true,\"authenticationRequired\":false}", + "description": "Create a public embedding endpoint supporting multiple models, with logging enabled and larger batch size for throughput." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "embedding-generation.createSchema", + "description": "Creates a JSON schema definition for embedding vector data according to specified dimensions and metadata requirements. Accepts parameters such as embedding dimension size, metadata fields, and data types, producing a structured JSON schema for validating embedding documents in databases or APIs.", + "category": "embedding-generation", + "parameters": [ + { + "name": "embeddingDimension", + "type": "number", + "description": "The size (dimensionality) of the embedding vectors to define in the schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include additional metadata fields in the schema (e.g., source, timestamp).", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadataFields", + "type": "array", + "description": "List of metadata field names to include when includeMetadata is true.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadataTypes", + "type": "object", + "description": "Map of metadata field names to their data types (e.g., string, number, date).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "requiredMetadataFields", + "type": "array", + "description": "List of metadata fields that are mandatory in the schema.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the schema definition that can be used to validate embedding documents, including the embedding vector and optional metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a JSON schema for embedding vectors and their associated metadata to perform validation or database schema enforcement. This is useful when setting up data ingestion pipelines or APIs expecting embedding data with consistent structure and required fields.", + "limitations": "This tool does not generate embedding vectors or perform actual embedding; it only creates the schema for their structure. It also does not validate data against the schema, only produces the schema itself.", + "examples": [ + "Generate a JSON schema for 512-dimensional embeddings without metadata.", + "Create a schema for 768-dimensional embeddings including metadata fields 'source' (string) and 'timestamp' (date), with 'source' as required.", + "Produce a schema for embeddings of dimension 1024 with no metadata fields." + ] + }, + "tags": [ + "embedding", + "schema", + "validation", + "json-schema", + "vector", + "metadata", + "data-modeling" + ], + "examples": [ + { + "inputJson": "{\"embeddingDimension\":512,\"includeMetadata\":false}", + "description": "Create a simple schema for a 512-d embedding vector with no metadata." + }, + { + "inputJson": "{\"embeddingDimension\":768,\"includeMetadata\":true,\"metadataFields\":[\"source\",\"timestamp\"],\"metadataTypes\":{\"source\":\"string\",\"timestamp\":\"string\"},\"requiredMetadataFields\":[\"source\"]}", + "description": "Schema for 768-d embedding with metadata fields 'source' (required) and 'timestamp'." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "embedding-generation.createModule", + "description": "Creates a reusable code module that generates vector embeddings from text data. Accepts configuration parameters including embedding model type, input text language, and preprocessing options. Produces a code module in the specified programming language with functions for embedding generation and integration guidance.", + "category": "embedding-generation", + "parameters": [ + { + "name": "embeddingModel", + "type": "string", + "description": "The embedding model to use (e.g., 'bert-base-uncased', 'openai-text-embedding-ada-002').", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Target programming language for the generated module code (e.g., 'python', 'javascript').", + "required": true, + "defaultValue": "python" + }, + { + "name": "inputLanguage", + "type": "string", + "description": "Primary language of input text to be embedded (e.g., 'en', 'fr', 'zh').", + "required": false, + "defaultValue": "en" + }, + { + "name": "preprocessingSteps", + "type": "array", + "description": "List of preprocessing steps to include in the module (e.g., ['lowercase','removePunctuation']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeExampleUsage", + "type": "boolean", + "description": "Whether to include example usage code snippet in the module.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code as a string and metadata about the module, including language and dependencies." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate a ready-to-use code module for producing text embeddings tailored to a chosen embedding model and programming language. Helpful for developers integrating embedding generation into their applications without writing boilerplate code manually.", + "limitations": "This tool does not train or fine-tune embedding models, nor does it perform embedding generation itself. It only generates code modules. It cannot guarantee compatibility with all third-party libraries or runtime environments.", + "examples": [ + "Generate a Python module using the 'bert-base-uncased' model that preprocesses text by lowercasing and removing punctuation.", + "Create a JavaScript module with example usage to embed French language text using 'openai-text-embedding-ada-002'." + ] + }, + "tags": [ + "embedding-generation", + "module", + "code-generation", + "text-processing", + "developer-tool" + ], + "examples": [ + { + "inputJson": "{\"embeddingModel\":\"bert-base-uncased\",\"programmingLanguage\":\"python\",\"inputLanguage\":\"en\",\"preprocessingSteps\":[\"lowercase\",\"removePunctuation\"],\"includeExampleUsage\":true}", + "description": "Generate a Python embedding module using BERT-base with lowercasing and punctuation removal preprocessing." + }, + { + "inputJson": "{\"embeddingModel\":\"openai-text-embedding-ada-002\",\"programmingLanguage\":\"javascript\",\"inputLanguage\":\"fr\",\"preprocessingSteps\":[],\"includeExampleUsage\":true}", + "description": "Create a JavaScript module for OpenAI's ada text embedding for French text without preprocessing steps." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "embedding-generation.createComponent", + "description": "Creates a reusable embedding generation component configuration based on specified model and parameters. Accepts inputs like model name, embedding dimension, tokenizer options, and returns a component definition object usable in AI pipelines for generating vector embeddings from textual data.", + "category": "embedding-generation", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "Name of the embedding model to use for component creation, e.g., 'text-embedding-ada-002'.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "Output dimension size of the embedding vectors that the component will produce.", + "required": true, + "defaultValue": "" + }, + { + "name": "tokenizerOptions", + "type": "object", + "description": "Optional tokenizer configuration including max token length and special token handling.", + "required": false, + "defaultValue": "" + }, + { + "name": "normalizeEmbeddings", + "type": "boolean", + "description": "Whether to normalize the output embeddings to unit length for consistent vector representation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "componentName", + "type": "string", + "description": "Optional custom name to assign to the created embedding component.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object defining the embedding generation component, including model name, preprocessing options, embedding dimension, and methods to embed input text." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create reusable, configurable embedding generator components within an AI pipeline or application, especially to standardize how text is embedded using specific models and tokenization parameters. Suitable for development environments or custom ML workflows configuring vectorization steps.", + "limitations": "This tool does not execute the embedding generation itself; it only creates configuration components. It cannot process raw text inputs or return embeddings directly. It requires downstream systems to call the generated component to perform embedding.", + "examples": [ + "Create an embedding component for 'text-embedding-ada-002' with 1536 dimensions, using default tokenizer options.", + "Generate a normalized embedding component named 'MyCustomEmbedder' with 768 dimensions and custom tokenizer max token length.", + "Create embedding component with no normalization and default model settings." + ] + }, + "tags": [ + "embedding", + "component", + "vectorization", + "text-processing", + "AI-pipeline" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"text-embedding-ada-002\",\"embeddingDimension\":1536,\"normalizeEmbeddings\":true}", + "description": "Create a component using 'text-embedding-ada-002' model with 1536 dimensions and normalized embeddings." + }, + { + "inputJson": "{\"modelName\":\"custom-transformer\",\"embeddingDimension\":768,\"tokenizerOptions\":{\"maxLength\":512},\"componentName\":\"MyCustomEmbedder\",\"normalizeEmbeddings\":false}", + "description": "Create a custom named embedding component with specified tokenizer max length and without normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "embedding-generation.createFunction", + "description": "Creates a vector embedding generation function based on specified text preprocessing settings and model parameters. Accepts input text data, applies optional normalization and tokenization, then outputs a function that can generate embeddings for new text inputs according to the configured model.", + "category": "embedding-generation", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The identifier of the embedding model to use (e.g., 'bert-base', 'sentence-transformers').", + "required": true, + "defaultValue": "" + }, + { + "name": "normalizeText", + "type": "boolean", + "description": "Whether to apply text normalization steps like lowercasing and removing punctuation before embedding.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tokenizerOptions", + "type": "object", + "description": "Configuration parameters for the tokenizer such as max sequence length, truncation, and padding.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "Dimensionality of the output embedding vectors. If not specified, uses the model's default dimension.", + "required": false, + "defaultValue": "" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of text inputs to process in a batch when generating embeddings to optimize performance.", + "required": false, + "defaultValue": "32" + } + ], + "returns": { + "type": "object", + "description": "A callable function that accepts an array of texts and returns an array of embedding vectors matching the configured model and preprocessing parameters." + }, + "aiAgent": { + "useCase": "Use this tool to configure and obtain a customized embedding function for text data, allowing downstream AI tasks like similarity search, clustering, or semantic analysis with embeddings generated under specific model and preprocessing conditions.", + "limitations": "This tool does not itself generate embeddings until the returned function is called with text inputs; it relies on underlying models provided externally and does not perform model training or fine-tuning.", + "examples": [ + "Create an embedding function using 'sentence-transformers' model with normalization enabled.", + "Configure a function for embedding texts with max token length set via tokenizer options.", + "Set up a function generating 768-dimensional embeddings with batching for efficient bulk processing." + ] + }, + "tags": [ + "embedding", + "function", + "text-processing", + "vectorization", + "model-config" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"sentence-transformers/all-MiniLM-L6-v2\",\"normalizeText\":true,\"tokenizerOptions\":{\"maxLength\":128,\"truncation\":true},\"embeddingDimension\":384,\"batchSize\":16}", + "description": "Create embedding function using a popular lightweight transformer model with normalization and truncation." + }, + { + "inputJson": "{\"modelName\":\"bert-base-uncased\",\"normalizeText\":false,\"tokenizerOptions\":{},\"batchSize\":32}", + "description": "Create embedding function with BERT base model without text normalization and default tokenizer settings." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "embedding-generation.createSpec", + "description": "Generates a detailed embedding specification document for a given textual domain description, including embedding dimensions, tokenization rules, and preprocessing steps required for consistent vector generation. Accepts domain description and configuration options, outputs a structured embedding specification as JSON.", + "category": "embedding-generation", + "parameters": [ + { + "name": "domainDescription", + "type": "string", + "description": "Detailed textual description of the domain or dataset for which embeddings are to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "The dimensionality of the embedding vectors to generate, typically between 50 and 1024.", + "required": true, + "defaultValue": "512" + }, + { + "name": "tokenizationMethod", + "type": "string", + "description": "The tokenization approach to use, e.g., 'word', 'subword', or 'character'.", + "required": false, + "defaultValue": "subword" + }, + { + "name": "preprocessingSteps", + "type": "array", + "description": "An ordered list of preprocessing actions to apply, such as 'lowercase', 'removePunctuation', 'lemmatization'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeStopWords", + "type": "boolean", + "description": "Flag indicating whether stop words should be included in the embeddings or filtered out during preprocessing.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object specifying the embedding configuration including dimension, tokenization method, preprocessing pipeline, and metadata for embedding generation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to create a precise specification document for generating embeddings tailored to a specific textual domain or dataset, to ensure consistent and optimized vector representations for downstream tasks such as search, clustering, or classification.", + "limitations": "This tool generates a specification document only, and does not perform embedding vector computation or training itself. It requires detailed domain input for best results.", + "examples": [ + "Create an embedding spec for legal documents with 300 dimensions, subword tokenization, removing punctuation, and excluding stop words.", + "Generate a spec for customer support chat logs embeddings, using 512 dimensions and including lemmatization in preprocessing.", + "Produce an embedding configuration for scientific abstracts with 768 dimensions, word tokenization, and including stop words." + ] + }, + "tags": [ + "embedding", + "specification", + "vector", + "text processing", + "tokenization", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"domainDescription\":\"Customer support chat logs for tech products.\",\"embeddingDimension\":512,\"tokenizationMethod\":\"subword\",\"preprocessingSteps\":[\"lowercase\",\"lemmatization\"],\"includeStopWords\":false}", + "description": "Generate an embedding specification for tech product support chat logs with 512 dimensions, subword tokenization, lowercase and lemmatization preprocessing, excluding stop words." + }, + { + "inputJson": "{\"domainDescription\":\"Legal contract clauses.\",\"embeddingDimension\":300,\"tokenizationMethod\":\"word\",\"preprocessingSteps\":[\"removePunctuation\"],\"includeStopWords\":false}", + "description": "Create embedding spec for legal contracts using 300-dimensional word embeddings, removing punctuation, without stop words." + }, + { + "inputJson": "{\"domainDescription\":\"Scientific research abstracts.\",\"embeddingDimension\":768,\"tokenizationMethod\":\"word\",\"preprocessingSteps\":[],\"includeStopWords\":true}", + "description": "Produce embedding specification for scientific abstracts with 768-dimensional word embeddings, no preprocessing steps, including stop words." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "embedding-generation.createFAQ", + "description": "Creates vector embeddings for a set of frequently asked questions (FAQs) and their answers, enabling semantic search and similarity tasks. Accepts an array of FAQ entries each with question and answer, optionally specifying embedding model and language. Outputs a structured array of embeddings linked to each FAQ entry.", + "category": "embedding-generation", + "parameters": [ + { + "name": "faqs", + "type": "array", + "description": "Array of FAQ entries where each entry is an object with 'question' and 'answer' strings.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for generating vector representations.", + "required": false, + "defaultValue": "\"default-faq-embedding-v1\"" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') of the FAQ content to optimize embedding generation.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "normalizeVectors", + "type": "boolean", + "description": "Whether to normalize the output embeddings to unit length for cosine similarity purposes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with array of embeddings, each entry correlates to the input FAQ including question, answer, and the embedding vector as an array of numbers." + }, + "aiAgent": { + "useCase": "Use this tool when you have a collection of FAQs and want to create vector embeddings for them to enable semantic search, clustering, or similarity comparison, for example to build intelligent FAQ retrieval systems or customer support automation.", + "limitations": "This tool does not generate or summarize FAQ content, only creates embeddings from provided FAQ question-answer pairs. It does not index the embeddings or perform search queries itself.", + "examples": [ + "Create embeddings for a product's customer support FAQs to integrate semantic search.", + "Generate vector representations of FAQs in multiple languages for a multilingual help center.", + "Embed a set of training FAQs for a chatbot knowledge base to improve answer relevance." + ] + }, + "tags": [ + "embedding-generation", + "faq", + "semantic-search", + "vectorization", + "nlp", + "customer-support" + ], + "examples": [ + { + "inputJson": "{\"faqs\":[{\"question\":\"What is your return policy?\",\"answer\":\"You can return any item within 30 days of purchase.\"},{\"question\":\"How do I track my order?\",\"answer\":\"Once shipped, you will receive a tracking number via email.\"}]}", + "description": "Embedding generation for a small set of e-commerce customer service FAQs." + }, + { + "inputJson": "{\"faqs\":[{\"question\":\"¿Cómo puedo restablecer mi contraseña?\",\"answer\":\"Puede restablecerla desde la página de configuración de la cuenta.\"}],\"language\":\"es\"}", + "description": "Create embeddings for FAQs provided in Spanish by specifying language parameter." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "FAQ", + "context": null + } + }, + { + "name": "embedding-generation.createReadme", + "description": "Generates a detailed README document embedding by processing project-related textual input. Accepts textual project descriptions, features, and usage instructions, then creates a structured textual README suitable for embedding generation workflows. Outputs the final README content as a string for embedding purposes.", + "category": "embedding-generation", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project to appear as the README title.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A concise description explaining the purpose and scope of the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "An array of strings listing key features or highlights of the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions on how to install or set up the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "An array of strings providing practical usage examples or code snippets.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "license", + "type": "string", + "description": "The type of license the project is released under, to be included as a README section.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated README content as a single markdown-formatted string under the key 'readmeContent'." + }, + "aiAgent": { + "useCase": "Use this tool when needing a well-structured README document text that can later be embedded into vector representations for search, classification, or documentation indexing. Ideal for projects needing automated README generation from descriptive inputs prior to embedding.", + "limitations": "This tool generates only textual content for a README document; it does not create actual embeddings or handle binary files like images or diagrams. It also assumes input text is in English and does not validate or enrich the content beyond formatting.", + "examples": [ + "Generate a README embedding text for a new JavaScript library by providing name, description, features, installation, usage, and license.", + "Create a README text embedding from minimal inputs: only project name and description.", + "Produce a README markdown text with detailed installation and usage instructions for embedding vectorization." + ] + }, + "tags": [ + "embedding", + "readme", + "documentation", + "text-generation", + "project-description", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"FastAPI Utils\",\"projectDescription\":\"A Python utility library for simplifying FastAPI development.\",\"features\":[\"Lightweight\",\"Easy integration\",\"Asynchronous support\"],\"installationInstructions\":\"Run `pip install fastapi-utils` to install.\",\"usageExamples\":[\"from fastapi_utils import FastAPIUtils\",\"app = FastAPIUtils()\"],\"license\":\"MIT\"}", + "description": "Generating README content embedding text for a Python FastAPI utility library with typical README sections." + }, + { + "inputJson": "{\"projectName\":\"DataCleanser\",\"projectDescription\":\"Tool for fast cleansing of CSV datasets.\"}", + "description": "Generating minimal README content embedding text with just project name and description for a CSV data processing tool." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "embedding-generation.createCode", + "description": "Generates vector embeddings specifically for source code snippets or files. Accepts code as a string input along with language specification, processes the code to create semantic vector representations capturing syntax and semantics. Outputs an embedding array suitable for code search, clone detection, or recommendation tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The source code snippet/text to embed, provided as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the code (e.g., 'python', 'java', 'javascript') to optimize embedding.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "Dimension of the output embedding vector, determining size and detail of representation.", + "required": false, + "defaultValue": "768" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the output embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as an array of numbers representing the semantic embedding of the input code snippet." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert source code snippets or files into vector embeddings for tasks like code search, similarity detection, clone detection, or code recommendation within repositories. It captures semantic and syntactic features of the code.", + "limitations": "This tool only generates embeddings for code as text input; it does not analyze execution behavior or runtime performance. Language support depends on the specified input language; unsupported languages may yield less accurate embeddings.", + "examples": [ + "Generate embedding for a Python function to find similar functions in a codebase.", + "Create embeddings for JavaScript snippets for use in a code recommendation engine.", + "Normalize code embeddings to ensure consistency when comparing syntax vectors." + ] + }, + "tags": [ + "embedding", + "code", + "source-code", + "programming", + "vector", + "semantic", + "search" + ], + "examples": [ + { + "inputJson": "{\"code\":\"def add(a, b):\\n return a + b\",\"language\":\"python\"}", + "description": "Generate a normalized embedding for a simple Python add function." + }, + { + "inputJson": "{\"code\":\"function greet(name) { return `Hello, ${name}!`; }\",\"language\":\"javascript\",\"normalize\":false}", + "description": "Create a non-normalized embedding vector for a JavaScript greeting function." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "embedding-generation.createTemplate", + "description": "Creates a customizable embedding generation template for document or domain-specific text processing. Accepts parameters defining the document domain, embedding model preferences, and template structure. Outputs a structured JSON template guiding embedding generation workflows for consistent vector embedding creation across similar document types.", + "category": "embedding-generation", + "parameters": [ + { + "name": "documentDomain", + "type": "string", + "description": "The specific domain or type of documents for which to create the embedding template (e.g., legal contracts, scientific papers).", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to be used with this template (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "templateDescription", + "type": "string", + "description": "A descriptive summary about the purpose and use of the generated embedding template.", + "required": false, + "defaultValue": "" + }, + { + "name": "fieldsToEmbed", + "type": "array", + "description": "An array of text fields or sections from documents that should be processed to create embeddings (e.g., ['title', 'abstract', 'body']).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "preprocessingInstructions", + "type": "string", + "description": "Optional instructions or rules for preprocessing text before embedding generation, such as tokenization, cleaning, or normalization guidelines.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Specifies whether to include document metadata as part of the embedding template context.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the embedding generation template, including domain, model settings, targeted fields, and preprocessing guidelines." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to establish standardized embedding specifications for text documents within specific domains. Typical scenarios include setting up embedding pipelines for legal documents, research papers, support tickets, or other domain-specific corpora to ensure consistent vector representations across applications.", + "limitations": "This tool does not generate embeddings directly but creates templates or specifications to guide embedding generation steps. It cannot preprocess or embed raw text by itself.", + "examples": [ + "Create an embedding template for legal contracts focusing on clauses and summaries using the 'text-embedding-ada-002' model.", + "Generate a template for scientific papers highlighting abstract and conclusion sections with preprocessing instructions to remove references.", + "Build a domain-specific embedding template for customer support tickets including metadata like ticket priority." + ] + }, + "tags": [ + "embedding", + "template", + "document-domain", + "vector embeddings", + "text processing", + "machine learning" + ], + "examples": [ + { + "inputJson": "{\"documentDomain\":\"legal contracts\",\"embeddingModel\":\"text-embedding-ada-002\",\"templateDescription\":\"Template for embedding contract clauses and summaries\",\"fieldsToEmbed\":[\"clauses\",\"summary\"],\"preprocessingInstructions\":\"Remove stopwords and legal citations\",\"includeMetadata\":true}", + "description": "Embedding template for legal contract clauses and summaries with cleaning instructions and metadata inclusion." + }, + { + "inputJson": "{\"documentDomain\":\"scientific papers\",\"embeddingModel\":\"text-embedding-ada-002\",\"templateDescription\":\"Embedding template focusing on abstract and conclusion\",\"fieldsToEmbed\":[\"abstract\",\"conclusion\"],\"preprocessingInstructions\":\"Lowercase, remove references section\",\"includeMetadata\":false}", + "description": "Template creation for embeddings of key scientific paper sections without metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "embedding-generation.createSummary", + "description": "Generates a concise textual summary from a provided document to distill key points and main ideas. Accepts raw text or URL input, applies natural language processing to identify salient information, and outputs a summarized version suitable for embedding or quick understanding.", + "category": "embedding-generation", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "Raw text content of the document to be summarized. Provide either this or documentUrl, but at least one is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentUrl", + "type": "string", + "description": "URL of the document to fetch and summarize if documentText is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired length of the summary in number of sentences. Defaults to 3 sentences.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the document text for accurate processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to append important keywords extracted from the document to the summary output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and, optionally, extracted keywords if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing a vector-friendly compact representation of a document's main content, useful for embedding generation, quick previews, or content indexing. Ideal for summarizing lengthy documents into bite-sized textual snippets to improve downstream embedding quality and retrieval speed.", + "limitations": "Cannot process multimedia or non-text content directly. Summaries may lose nuanced details in complex or highly technical documents. Quality depends on language support and input document clarity.", + "examples": [ + "Summarize a research article text into 5 sentences.", + "Generate a short summary from a news article URL.", + "Create a brief summary with keywords from a company report text." + ] + }, + "tags": [ + "embedding", + "summary", + "document", + "nlp", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Climate change is causing Earth's average temperatures to rise, leading to various environmental impacts such as melting ice, rising sea levels, and more extreme weather events.\",\"summaryLength\":2,\"includeKeywords\":true}", + "description": "Summarizes a short text about climate change into 2 sentences with keywords." + }, + { + "inputJson": "{\"documentUrl\":\"https://example.com/long-article\",\"summaryLength\":4,\"language\":\"en\"}", + "description": "Generates a 4-sentence summary from an article accessed via URL." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "embedding-generation.createChecklist", + "description": "Generates a structured checklist document embedding from an input checklist defined by items, categories, and optional metadata. It processes the checklist text and metadata to create vector embeddings representing each checklist item and category, enabling semantic search and similarity operations on checklist content.", + "category": "embedding-generation", + "parameters": [ + { + "name": "checklistTitle", + "type": "string", + "description": "Title of the checklist document to embed, providing context.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "An array of checklist items; each item is an object with text and optional category tags.", + "required": true, + "defaultValue": "" + }, + { + "name": "categories", + "type": "array", + "description": "Optional array of category names that group checklist items, enhancing semantic structure.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to embed additional metadata such as priority or due dates for items.", + "required": false, + "defaultValue": "false" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to use (e.g., 'default-embedding-v1').", + "required": false, + "defaultValue": "default-embedding-v1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the checklist title, a list of embedded items with their vector embeddings, and optionally category embeddings and metadata embeddings if included." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert a detailed checklist document — including categorized items and optional metadata — into vector embeddings for semantic search, similarity detection, or further NLP analysis in AI workflows. Useful for task management platforms, quality assurance processes, or knowledge base indexing that rely on embedding representations of checklist content.", + "limitations": "This tool does not perform natural language understanding beyond embedding generation; it cannot interpret checklist semantics, validate item correctness, or generate checklist content. Embedding quality depends on the selected model and input text clarity.", + "examples": [ + "Create a checklist embedding for a product launch QA checklist with items grouped by testing types.", + "Generate checklist embeddings from a safety inspection list including priority tags as metadata.", + "Convert a project task checklist with categories into embeddings for semantic retrieval." + ] + }, + "tags": [ + "embedding", + "checklist", + "document", + "semantic", + "vector", + "task", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"checklistTitle\":\"Software Release QA Checklist\",\"items\":[{\"text\":\"Verify all unit tests pass\",\"category\":\"Testing\"},{\"text\":\"Update release notes\",\"category\":\"Documentation\"},{\"text\":\"Deploy to staging environment\",\"category\":\"Deployment\"}],\"categories\":[\"Testing\",\"Documentation\",\"Deployment\"],\"includeMetadata\":false}", + "description": "Embedding generation for a QA checklist categorized by testing, documentation, and deployment tasks." + }, + { + "inputJson": "{\"checklistTitle\":\"Safety Inspection Checklist\",\"items\":[{\"text\":\"Check fire extinguishers expiration date\",\"category\":\"Equipment\",\"priority\":\"High\"},{\"text\":\"Ensure emergency exits are clear\",\"category\":\"Facility\",\"priority\":\"Critical\"}],\"categories\":[\"Equipment\",\"Facility\"],\"includeMetadata\":true}", + "description": "Embedding generation for a safety inspection checklist including priority metadata for each item." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Checklist", + "context": null + } + }, + { + "name": "embedding-generation.createChangelog", + "description": "Generates a detailed vector embedding representation of a software project's changelog document. Accepts raw changelog text or structured JSON describing version updates, processes it to capture semantic features and context, and outputs embeddings suitable for similarity search, clustering, or analysis of changelog content evolution.", + "category": "embedding-generation", + "parameters": [ + { + "name": "changelogText", + "type": "string", + "description": "Raw text content of the changelog document, including version descriptions and update notes.", + "required": false, + "defaultValue": "" + }, + { + "name": "structuredChangelog", + "type": "object", + "description": "Optional structured JSON object representing the changelog, with versions, dates, and change lists, to generate embeddings from a cleaner input format.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The identifier of the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "includeVersionVectors", + "type": "boolean", + "description": "Whether to generate separate embeddings for each version section in the changelog instead of a single embedding for the entire document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the changelog text to optimize embedding model tokenization and accuracy (e.g., 'en').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embeddings in vector form. If includeVersionVectors is true, returns a map from version identifiers to embedding arrays; otherwise a single embedding array representing the entire changelog." + }, + "aiAgent": { + "useCase": "Use this tool when an AI system needs to semantically analyze or index software project changelogs for search, comparison, or trend detection, converting the text content into numerical vector form useful for downstream ML tasks or similarity queries. It supports both raw text and structured changelog inputs and can embed complete documents or individual version entries.", + "limitations": "This tool does not generate changelog text, interpret changelog semantics beyond embedding, or validate changelog content correctness.", + "examples": [ + "Generate embedding vectors from a raw changelog text to enable searching for similar updates across projects.", + "Create embeddings from structured changelog JSON to cluster software versions by similarity of changes.", + "Produce individual embeddings per version section to track semantic changes across software releases." + ] + }, + "tags": [ + "embedding", + "changelog", + "software", + "versioning", + "vectorization", + "semantic-search" + ], + "examples": [ + { + "inputJson": "{\"changelogText\":\"## v1.0.1 - Bug fixes and minor improvements\\n- Fixed login issue causing crashes\\n- Improved UI response times\",\"embeddingModel\":\"text-embedding-ada-002\",\"includeVersionVectors\":false}", + "description": "Generate a single embedding vector from raw changelog text including version and bullet notes." + }, + { + "inputJson": "{\"structuredChangelog\":{\"versions\":[{\"version\":\"1.0.0\",\"date\":\"2023-01-15\",\"changes\":[\"Initial release\",\"Core features implemented\"]},{\"version\":\"1.0.1\",\"date\":\"2023-02-01\",\"changes\":[\"Fixed login crash\",\"UI performance optimization\"]}]},\"embeddingModel\":\"text-embedding-ada-002\",\"includeVersionVectors\":true}", + "description": "Generate separate embeddings for each version entry from a structured changelog JSON object to analyze the progression of changes." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Changelog", + "context": null + } + }, + { + "name": "embedding-generation.createBrief", + "description": "Generates a concise textual summary (brief) for a technical document or dataset description to facilitate embedding creation. Accepts raw text and optional parameters controlling summary length and focus. Outputs a short, coherent brief capturing the document's essential topics, suitable for downstream embedding generation.", + "category": "embedding-generation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The full text content of the technical document or dataset description to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the generated brief summary. Controls brevity.", + "required": false, + "defaultValue": "300" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "Optional list of keywords to emphasize in the brief summary to guide content focus.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text (e.g., 'en') to tailor the summary generation properly.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated brief summary as a string under 'briefText'." + }, + "aiAgent": { + "useCase": "Use this tool when the agent needs to create a concise, coherent summary of a longer technical document or dataset description to generate domain-specific embeddings efficiently. The brief condenses core topics and key information, optimizing embedding quality and retrieval relevance.", + "limitations": "This tool cannot generate detailed or extensive summaries; it produces brief overviews only. It may not capture very nuanced or implicit information and depends on quality and clarity of the input text.", + "examples": [ + "Create a brief summary of a long machine learning research paper abstract for embedding.", + "Generate a concise overview focusing on specified keywords within a dataset documentation to support semantic search embedding.", + "Produce a short summary in English from a longer textual description of a technical specification document." + ] + }, + "tags": [ + "embedding", + "summary", + "brief", + "technical-document", + "nlp", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This document describes the architecture and implementation details of a distributed machine learning framework designed to scale training across multiple GPUs and nodes. It includes modular components for data ingestion, model parallelism, and fault tolerance.\",\"maxLength\":250,\"focusKeywords\":[\"distributed\",\"machine learning\",\"scaling\"]}", + "description": "Summarize a technical document about a distributed machine learning system focusing on scaling and architecture." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Brief", + "context": null + } + }, + { + "name": "embedding-generation.createTranscript", + "description": "Generates vector embeddings from a transcript text input. Accepts raw transcript text, optionally segmented by speaker or timestamp, processes the content by embedding meaningful segments, and outputs an array of embedding vectors each tied to portions of the transcript for semantic search or analysis.", + "category": "embedding-generation", + "parameters": [ + { + "name": "transcriptText", + "type": "string", + "description": "Raw transcript text to embed, can include speaker labels or timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentBy", + "type": "string", + "description": "How to segment the transcript for embedding generation: 'sentence', 'paragraph', or 'speaker'.", + "required": false, + "defaultValue": "sentence" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or type of embedding model to use for vector generation.", + "required": false, + "defaultValue": "default-embedding-model" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps in the output alongside embeddings if available in transcript.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSegmentLength", + "type": "number", + "description": "Maximum number of tokens or words per segment to embed; longer segments will be split.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of embeddings, each with its associated transcript segment text, optional speaker label, and optional timestamp information if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you have a transcript of spoken content (like meetings, interviews, lectures) and need to produce vector embeddings to enable semantic search, content clustering, or downstream NLP tasks. It supports segmentation by sentence, paragraph, or speaker to tailor embeddings granularity.", + "limitations": "This tool cannot perform the initial transcription from audio or video; it requires the transcript text as input. It also relies on an available compatible embedding model and does not handle embedding fine-tuning or training.", + "examples": [ + "Generate embeddings from an interview transcript segmented by speaker labels.", + "Create embeddings for a meeting transcript segmented by paragraph for later semantic retrieval.", + "Produce vector embeddings from a lecture transcript with timestamp data included in output." + ] + }, + "tags": [ + "embedding", + "transcript", + "semantic-search", + "NLP", + "vectorization", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"transcriptText\":\"Speaker A: Hello, and welcome to the meeting. Speaker B: Thank you, glad to be here.\",\"segmentBy\":\"speaker\",\"embeddingModel\":\"default-embedding-model\",\"includeTimestamps\":false,\"maxSegmentLength\":500}", + "description": "Create embeddings segmenting the transcript by speaker turns for a short dialogue." + }, + { + "inputJson": "{\"transcriptText\":\"Today we discuss quarterly goals. First, the marketing targets. Then, the financial outlook.\",\"segmentBy\":\"sentence\",\"embeddingModel\":\"default-embedding-model\",\"includeTimestamps\":false,\"maxSegmentLength\":300}", + "description": "Generate embeddings from a transcript segmented by sentence for fine-grained semantic indexing." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Transcript", + "context": null + } + }, + { + "name": "embedding-generation.createMinutes", + "description": "Generates vector embeddings from meeting minutes text to capture semantic content for advanced search, clustering, and analysis. Accepts raw text or structured minutes, processes sentence or paragraph segments into embeddings, and returns vectors with metadata for downstream AI tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "minutesText", + "type": "string", + "description": "The raw text content of the meeting minutes to be converted into embeddings.", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentLevel", + "type": "string", + "description": "Granularity level of embedding generation: 'sentence' or 'paragraph'. Determines how the text is split before embedding.", + "required": false, + "defaultValue": "paragraph" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The identifier of the embedding model to use, e.g., 'text-embedding-ada-002'.", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "If true, includes metadata like segment index and timestamp references in the output for each embedding vector.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTokensPerSegment", + "type": "number", + "description": "Maximum token count allowed per segment to ensure embedding model compatibility.", + "required": false, + "defaultValue": "512" + } + ], + "returns": { + "type": "object", + "description": "An object containing embeddings as arrays of floats, their corresponding text segments, and optional metadata such as segment indices and timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when converting meeting minutes text into numerical vector embeddings to enable semantic search, similarity detection, topic clustering, or machine learning analysis. Ideal for situations where minutes text needs to be transformed from unstructured or semi-structured form into searchable vector formats for downstream AI tasks.", + "limitations": "This tool does not summarize, transcribe, or interpret meeting content. It only converts provided text into embeddings and requires pre-existing text input. Effectiveness depends on input quality and embedding model capabilities.", + "examples": [ + "Create vector embeddings for the paragraphs in our last project's meeting minutes to index in our search system.", + "Generate sentence-level embeddings from a structured minutes document for topic modeling.", + "Convert raw minutes text into embeddings including metadata for downstream AI analysis." + ] + }, + "tags": [ + "embedding", + "meeting-minutes", + "vectorization", + "text-processing", + "semantic-search", + "AI-preprocessing" + ], + "examples": [ + { + "inputJson": "{\"minutesText\":\"Attendees discussed project timeline delays and agreed to adjust milestones accordingly. The budget review highlighted increased costs due to resource changes.\",\"segmentLevel\":\"paragraph\",\"embeddingModel\":\"text-embedding-ada-002\",\"includeMetadata\":true}", + "description": "Generate paragraph-level embeddings for provided minutes text including metadata." + }, + { + "inputJson": "{\"minutesText\":\"The kickoff meeting started with introductions. Action items were assigned to team leads.\",\"segmentLevel\":\"sentence\",\"embeddingModel\":\"text-embedding-001\",\"includeMetadata\":false}", + "description": "Generate sentence-level embeddings without metadata for short minutes text." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Minutes", + "context": null + } + }, + { + "name": "embedding-generation.createBlogPost", + "description": "Generates a vector embedding for a given blog post content to facilitate semantic search, recommendation, or clustering tasks. Accepts raw blog post text and optional metadata, processes the text through an embedding model, and outputs a high-dimensional vector representation along with key metadata.", + "category": "embedding-generation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post to generate embeddings for.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The textual content of the blog post to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the author of the blog post, used as metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags or keywords associated with the blog post for context.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en') of the blog post content to select appropriate embedding model.", + "required": false, + "defaultValue": "en" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Specifies which embedding model to use (e.g., 'transformer-base').", + "required": false, + "defaultValue": "transformer-base" + } + ], + "returns": { + "type": "object", + "description": "An object containing the vector embedding array and blog post metadata including title, author, tags, and language." + }, + "aiAgent": { + "useCase": "Use this tool when you need to represent blog posts as fixed-size numerical vectors for applications like semantic search, content recommendation, similarity analysis, or clustering. It is valuable in content management systems, search engines, and personalized content delivery platforms that leverage semantic understanding of blog articles.", + "limitations": "This tool does not generate summary or extractive content from the blog post, nor does it handle image or multimedia content embeddings. The quality of embeddings depends on the selected embedding model and the quality of input text.", + "examples": [ + "Generate embeddings to enable semantic search over a corpus of blog posts.", + "Create vector representations to cluster blog posts by topic or style.", + "Produce embeddings for blog posts to power recommendation engines based on content similarity." + ] + }, + "tags": [ + "embedding", + "blog", + "vectorization", + "semantic-search", + "content-management", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"title\":\"How to Boost Productivity with AI\",\"content\":\"Artificial Intelligence dramatically improves productivity by automating tasks.\",\"author\":\"Jane Doe\",\"tags\":[\"AI\",\"productivity\",\"automation\"],\"language\":\"en\"}", + "description": "Create an embedding for a blog post about AI improving productivity, including metadata." + }, + { + "inputJson": "{\"title\":\"La gestion du temps efficace\",\"content\":\"Gérer son temps est essentiel pour réussir au travail.\",\"author\":\"Jean Dupont\",\"tags\":[\"gestion du temps\",\"efficacité\"],\"language\":\"fr\"}", + "description": "Generate embedding for a French language blog post about effective time management." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "embedding-generation.createReleaseNotes", + "description": "Generates vector embeddings representing the content of software release notes. Accepts the raw text or structured changelog entries, processes the textual data to create dense numerical vectors suitable for semantic search, clustering, or downstream machine learning tasks, and returns the embedding vector along with metadata.", + "category": "embedding-generation", + "parameters": [ + { + "name": "releaseNotesText", + "type": "string", + "description": "Raw text content of the release notes to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Optional title or version identifier of the release notes document.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "normalizeVector", + "type": "boolean", + "description": "Whether to L2-normalize the resulting embedding vector before returning it.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the embedding vector as an array of floats, along with metadata such as model and input info." + }, + "aiAgent": { + "useCase": "Use this tool when an application needs to convert release notes text into vector embeddings for similarity search, semantic analysis, or indexing in a vector database. It is useful in scenarios like recommending relevant release notes, clustering changelogs by topic, or integrating release information as knowledge vectors.", + "limitations": "This tool only generates embeddings for textual release notes content. It does not summarize, parse detailed changelog semantics, or generate release notes from diff data.", + "examples": [ + "Generate an embedding for the latest software version release notes to enable searching for breaking changes.", + "Create vectors for multiple release notes documents to support clustering similar updates.", + "Embed changelog entries to facilitate semantic filtering in a documentation portal." + ] + }, + "tags": [ + "embedding", + "release notes", + "changelog", + "vectorization", + "semantic search", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"releaseNotesText\":\"Version 2.5.0 includes new authentication features, bug fixes, and performance improvements.\",\"documentTitle\":\"App Release 2.5.0\"}", + "description": "Embedding generation for a small release note text describing features and fixes in version 2.5.0." + }, + { + "inputJson": "{\"releaseNotesText\":\"- Added OAuth2 login support\\n- Fixed memory leak issue on data sync\\n- Improved dashboard loading time by 40%\",\"embeddingModel\":\"text-embedding-ada-002\",\"normalizeVector\":true}", + "description": "Embedding for structured changelog bullet points, using the default embedding model with normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "ReleaseNotes", + "context": null + } + }, + { + "name": "embedding-generation.createArticle", + "description": "Generates a vector embedding representation for a full article or document text. Accepts the article content as plain text or markdown, performs linguistic and semantic processing, and outputs a fixed-length numerical vector suitable for downstream tasks like semantic search, clustering, or classification.", + "category": "embedding-generation", + "parameters": [ + { + "name": "articleText", + "type": "string", + "description": "The full text content of the article or document to embed. Required, should be at least a few sentences and can be multiple paragraphs.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The identifier of the embedding model to use (e.g., 'distilbert-base-nli-stsb-mean-tokens'). Defaults to a general-purpose semantic embedding model.", + "required": false, + "defaultValue": "all-mpnet-base-v2" + }, + { + "name": "normalizeEmbedding", + "type": "boolean", + "description": "Whether to apply normalization (e.g., L2 norm) to the embedding vector.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTokens", + "type": "number", + "description": "Maximum tokens from the article text to use for embedding to limit size. Articles longer than this are truncated or split before embedding.", + "required": false, + "defaultValue": "512" + } + ], + "returns": { + "type": "object", + "description": "An object containing the vector embedding as a float array, the embedding dimension, and metadata such as the model used." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert article or document text into fixed-length vector embeddings for semantic search, similarity comparison, clustering, or as input features for machine learning models. It is suited for whole-article embeddings rather than short snippets or single sentences.", + "limitations": "This tool only produces embeddings for the text provided; it does not summarize, translate, or extract key phrases. Very long articles exceeding token limits must be truncated or chunked externally. Quality depends on the embedding model's capabilities.", + "examples": [ + "Generate an embedding vector for a news article to compare with other articles for topic similarity.", + "Embed a research paper abstract and body text to enable semantic retrieval in a document database.", + "Create vector representation of blog posts for clustering analysis." + ] + }, + "tags": [ + "embedding", + "generation", + "article", + "document", + "nlp", + "semantic", + "vector" + ], + "examples": [ + { + "inputJson": "{\"articleText\":\"In recent years, advances in artificial intelligence have transformed various industries...\",\"embeddingModel\":\"all-mpnet-base-v2\",\"normalizeEmbedding\":true,\"maxTokens\":512}", + "description": "Create normalized embedding for a news article using default model and token limit." + }, + { + "inputJson": "{\"articleText\":\"# Machine Learning Trends\\nThis article explores the latest trends in machine learning including transformer models...\",\"embeddingModel\":\"distilbert-base-nli-stsb-mean-tokens\",\"normalizeEmbedding\":false,\"maxTokens\":256}", + "description": "Generate unnormalized embedding for a markdown formatted technical article using a specific model and smaller max tokens." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "file-operations.downloadHTML", + "description": "Downloads HTML content from a specified URL or from provided raw HTML text, and saves it as an .html file locally or returns it as a string. Supports optional filename and encoding settings for the saved file.", + "category": "file-operations", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to download the HTML content from. Required if rawHtml is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawHtml", + "type": "string", + "description": "Raw HTML content provided as a string to save directly without fetching. Required if url is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the file to save the HTML content into, default is 'download.html'.", + "required": false, + "defaultValue": "download.html" + }, + { + "name": "encoding", + "type": "string", + "description": "Character encoding for the saved HTML file, default is 'utf-8'.", + "required": false, + "defaultValue": "utf-8" + }, + { + "name": "saveToFile", + "type": "boolean", + "description": "Whether to save the HTML content to a file. If false, returns raw HTML string instead.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the filename (if saved) and the HTML content as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to download and store HTML content from the web or save raw HTML as a file. Useful for archiving pages, offline viewing, or preprocessing HTML for further analysis or rendering.", + "limitations": "Cannot download pages behind authentication or with complex JavaScript rendering. RawHtml input cannot be validated or sanitized by this tool.", + "examples": [ + "Download the homepage of example.com and save it as 'example.html'.", + "Save provided raw HTML code as a local HTML file.", + "Return the raw HTML content as a string without saving to file." + ] + }, + "tags": [ + "file", + "download", + "HTML", + "web", + "archiving", + "offline" + ], + "examples": [ + { + "inputJson": "{\"url\": \"https://example.com\", \"fileName\": \"example.html\", \"saveToFile\": true}", + "description": "Download HTML content from 'https://example.com' and save as 'example.html'" + }, + { + "inputJson": "{\"rawHtml\": \"

Test

\", \"fileName\": \"test.html\", \"saveToFile\": true}", + "description": "Save given raw HTML content to 'test.html'" + }, + { + "inputJson": "{\"url\": \"https://example.com\", \"saveToFile\": false}", + "description": "Download HTML from 'https://example.com' and return it as a string without saving" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "HTML", + "context": null + } + }, + { + "name": "embedding-generation.createEmail", + "description": "Generates a vector embedding for the content of an email to enable semantic search, classification, or clustering. Accepts email components including subject, body text, sender, recipients, and optionally metadata. Produces a numerical vector embedding representing the semantic content of the entire email.", + "category": "embedding-generation", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to be embedded.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content or body text of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "sender", + "type": "string", + "description": "Email address or name of the sender; used to enrich the embedding context.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of email addresses or names of recipients; helps contextualize the communication.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with extra email info (e.g., date, tags) to influence embedding generation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated vector embedding as an array of floats and metadata about the embedding dimensions and source." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to convert email textual data into vector embeddings for similarity search, categorization, or semantic analysis within email management or CRM systems. It helps improve retrieval of related emails or clustering communications by meaning rather than keywords.", + "limitations": "This tool does not perform email content summarization or sentiment analysis. It only generates vector embeddings and does not interpret or modify email content.", + "examples": [ + "Generate embedding for an email with subject and body to classify into categories.", + "Create semantic vector for email text to cluster similar emails.", + "Embed email content and metadata to improve search relevance in an inbox." + ] + }, + "tags": [ + "embedding", + "email", + "semantic-search", + "vector", + "communication", + "NLP", + "email-processing" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Meeting Reminder\",\"body\":\"Don't forget our meeting at 10 AM tomorrow.\",\"sender\":\"alice@example.com\",\"recipients\":[\"bob@example.com\",\"carol@example.com\"]}", + "description": "Embedding for a typical meeting reminder email." + }, + { + "inputJson": "{\"subject\":\"Project Update\",\"body\":\"The latest project update includes new timelines and goals.\",\"sender\":\"manager@example.com\",\"metadata\":{\"priority\":\"high\",\"sentDate\":\"2024-05-10\"}}", + "description": "Embedding for a project update email including metadata for richer context." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "embedding-generation.createContract", + "description": "Generates vector embeddings for contract documents by analyzing their textual content. Accepts the full contract text or segmented clauses, processes the text using NLP embedding models specialized for legal language, and outputs a vector embedding array representing the document's semantic features for use in similarity search, classification, or clustering.", + "category": "embedding-generation", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "The full text content of the contract document to embed. Required if contractClauses is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "contractClauses", + "type": "array", + "description": "Optional array of strings, each representing distinct clauses or sections of the contract to embed separately.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Name or identifier of the embedding model to use, optimized for legal documents (e.g., 'legal-embedding-v1').", + "required": false, + "defaultValue": "legal-embedding-v1" + }, + { + "name": "normalizeVectors", + "type": "boolean", + "description": "Whether to normalize the output embedding vectors to unit length for consistent similarity computations.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing one or more embedding vectors (arrays of floats), either a single embedding for the full contract text or multiple embeddings if clauses were provided." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to transform contract documents or their segments into vector embeddings for tasks like semantic search, clustering, or comparison in contract management and analysis systems. It is especially useful when working with legal language requiring domain-appropriate embedding models.", + "limitations": "The tool does not parse or validate contract content for legal correctness. It only generates embeddings of the text and cannot interpret or summarize legal meaning. Accuracy depends on the quality of the underlying embedding model.", + "examples": [ + "Generate an embedding for the full text of a commercial lease agreement.", + "Create embeddings for each clause of a service level agreement for similarity search.", + "Obtain a normalized embedding vector for a non-disclosure agreement document." + ] + }, + "tags": [ + "embedding-generation", + "legal", + "contract", + "document", + "vectorization", + "nlp", + "semantic-search" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This Agreement is made between Party A and Party B. The term of agreement is five years...\"}", + "description": "Generate a single embedding for the full text of a simple contract." + }, + { + "inputJson": "{\"contractClauses\":[\"Confidentiality: Both parties agree to...\",\"Termination: Either party may terminate...\"],\"normalizeVectors\":true}", + "description": "Generate normalized vectors for each clause of a contract separately." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "embedding-generation.createDocument", + "description": "Creates a vector embedding for a given document text to enable semantic search, similarity comparison, or downstream NLP tasks. Accepts raw document text and optional metadata, processes the text using pretrained embedding models, and outputs a structured embedding vector along with the document metadata for indexing or storage.", + "category": "embedding-generation", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The raw text content of the document to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with additional information about the document (e.g., title, author).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "modelName", + "type": "string", + "description": "Identifier of the embedding model to use (e.g., 'text-embedding-ada-002'). Defaults to a general-purpose text embedding model.", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the resulting embedding vector to unit length. Defaults to true for cosine similarity use cases.", + "required": false, + "defaultValue": "true" + }, + { + "name": "truncateToMaxTokens", + "type": "boolean", + "description": "Automatically truncate the input text if it exceeds the model's max token limit. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as an array of numbers, the embedding dimension, and echoed metadata for reference." + }, + "aiAgent": { + "useCase": "Use this tool to convert unstructured document text into fixed-length numerical vectors useful for semantic search, clustering, or machine learning. It helps represent the semantic meaning of documents for vector databases or similarity engines.", + "limitations": "The tool cannot perform document splitting; very long documents must be split before embedding. It does not generate embeddings for non-text data like images or audio. Embeddings quality depends on the chosen model and may not capture all nuances.", + "examples": [ + "Generate an embedding for a product description for search indexing.", + "Create embeddings from user manuals for semantic question-answering.", + "Convert legal contracts into vectors to compare similarity with previous cases." + ] + }, + "tags": [ + "embedding", + "document", + "vectorization", + "semantic-search", + "nlp", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"The quick brown fox jumps over the lazy dog.\",\"metadata\":{\"title\":\"Example sentence\",\"author\":\"Anonymous\"}}", + "description": "Embedding a simple sample sentence with metadata." + }, + { + "inputJson": "{\"documentText\":\"Artificial intelligence and machine learning are transforming industries.\",\"modelName\":\"text-embedding-ada-002\",\"normalize\":true}", + "description": "Embedding a tech-focused document text with default model and normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "embedding-generation.createResume", + "description": "Generates a vector embedding representation for a given resume document text to enable semantic search, similarity analysis, or downstream machine learning tasks. Accepts raw resume text or structured resume JSON and outputs a normalized fixed-length embedding vector.", + "category": "embedding-generation", + "parameters": [ + { + "name": "resumeText", + "type": "string", + "description": "Raw textual content of the resume to embed. Required if structuredResume is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "structuredResume", + "type": "object", + "description": "Resume content in structured JSON format with fields like education, workExperience, skills; used instead of raw text for embedding generation.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use, e.g., 'resume-bert-base'. Determines embedding quality and vector size.", + "required": false, + "defaultValue": "resume-bert-base" + }, + { + "name": "normalizeVector", + "type": "boolean", + "description": "Whether to L2 normalize the embedding vector. Helps with cosine similarity comparisons.", + "required": false, + "defaultValue": "true" + }, + { + "name": "truncateLength", + "type": "number", + "description": "Maximum token length of the input text to consider before truncation.", + "required": false, + "defaultValue": "1024" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as an array of floats and metadata such as vector dimension and model used." + }, + "aiAgent": { + "useCase": "Use this tool when you have resume data in text or structured JSON form and need to create vector embeddings for tasks like semantic search, candidate-job matching, clustering resumes, or similarity detection. It standardizes multiple resume formats into a consistent vector space.", + "limitations": "The tool cannot parse or extract resume data from PDFs or images; preprocessing to obtain clean text or structured JSON is required. The quality depends on the embedding model chosen and may require tuning for specific domains or languages.", + "examples": [ + "Create an embedding for a candidate's resume text to index in a search database.", + "Generate vector representation from a structured resume JSON for similarity comparison.", + "Embed resumes to cluster them by skillset and experience." + ] + }, + "tags": [ + "embedding", + "resume", + "vectorization", + "semantic-search", + "nlp", + "candidate-matching" + ], + "examples": [ + { + "inputJson": "{\"resumeText\":\"John Doe\\nSoftware Engineer with 5 years of experience in Python and Java. Skilled in machine learning and cloud computing.\",\"embeddingModel\":\"resume-bert-base\"}", + "description": "Generate embedding from raw resume text for a software engineer candidate." + }, + { + "inputJson": "{\"structuredResume\":{\"education\":[{\"degree\":\"BSc Computer Science\",\"year\":2018}],\"workExperience\":[{\"role\":\"Software Developer\",\"years\":3}],\"skills\":[\"Python\",\"Java\",\"ML\"]},\"normalizeVector\":false}", + "description": "Create embedding from structured resume data without normalization for custom downstream processing." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "embedding-generation.createInvoice", + "description": "Generates a vector embedding representation of an invoice document text or structured data for use in similarity search, classification, or downstream AI tasks. Accepts raw invoice text or parsed invoice fields and outputs a fixed-length numeric embedding vector.", + "category": "embedding-generation", + "parameters": [ + { + "name": "invoiceText", + "type": "string", + "description": "Raw text content of the invoice document to embed. Optional if invoiceData is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "invoiceData", + "type": "object", + "description": "Structured invoice data as key-value pairs (e.g., date, items, total). Optional if invoiceText is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to use for generating the vector embedding.", + "required": true, + "defaultValue": "invoice-embed-v1" + }, + { + "name": "normalize", + "type": "boolean", + "description": "If true, normalize the resulting embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the numeric embedding vector array and metadata such as embedding dimension and model used." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert invoice data into vector embeddings for similarity matching, clustering, or as input features to machine learning models. It is ideal for indexing invoices in a vector database or comparing invoice contents at semantic level.", + "limitations": "Does not extract or parse invoice fields from images or PDFs; expects text or structured data input. Embeddings capture semantic content but not layout or formatting specifics. Model choice affects embedding quality.", + "examples": [ + "Create a vector embedding for an invoice text to find similar invoices.", + "Generate an embedding for structured invoice data to enable clustering by invoice features.", + "Use embedding to convert invoice text for AI classification of invoice types." + ] + }, + "tags": [ + "embedding", + "invoice", + "document", + "vector", + "nlp", + "ai", + "finance" + ], + "examples": [ + { + "inputJson": "{\"invoiceText\":\"Invoice #12345 dated 2024-06-01 for Acme Corp. Total amount due $453.25.\",\"embeddingModel\":\"invoice-embed-v1\",\"normalize\":true}", + "description": "Generate embedding from plain invoice text." + }, + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"12345\",\"date\":\"2024-06-01\",\"vendor\":\"Acme Corp.\",\"totalAmount\":453.25},\"embeddingModel\":\"invoice-embed-v1\",\"normalize\":false}", + "description": "Generate embedding from structured invoice data without normalization." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "embedding-generation.createProposal", + "description": "Generates a semantic vector embedding for a detailed project proposal document text. Accepts proposal text and optional domain context to produce a high-dimensional vector representation capturing the proposal's topical and conceptual content suitable for similarity search, recommendation, or clustering.", + "category": "embedding-generation", + "parameters": [ + { + "name": "proposalText", + "type": "string", + "description": "Full text content of the project proposal document to embed", + "required": true, + "defaultValue": "" + }, + { + "name": "domainContext", + "type": "string", + "description": "Optional context or domain (e.g., 'software development', 'marketing') to tailor embedding semantics", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use (e.g., 'text-embedding-ada-002')", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to L2-normalize the resulting embedding vector", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as a list of floats and metadata about the input and model used" + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform detailed project proposal texts into vector embeddings for semantic search, clustering, or recommendation systems within project or document management environments. It enables downstream algorithms to compare and find similar proposals based on content.", + "limitations": "This tool generates embeddings only from textual content; it cannot analyze non-textual elements like images or tables within proposals. It does not generate or summarize proposal content.", + "examples": [ + "Generate an embedding vector for a marketing campaign proposal to find similar successful campaigns.", + "Create embeddings for software project proposals to cluster by technology focus.", + "Embed research grant proposals' content for similarity scoring and recommendation." + ] + }, + "tags": [ + "embedding", + "proposal", + "document", + "semantic", + "vectorization", + "text-processing", + "project-management" + ], + "examples": [ + { + "inputJson": "{\"proposalText\":\"This project aims to develop an AI-powered chatbot to improve customer support responsiveness and reduce operational costs by automating FAQ handling.\",\"domainContext\":\"customer service\",\"embeddingModel\":\"text-embedding-ada-002\",\"normalize\":true}", + "description": "Embedding a customer service project proposal text for semantic similarity search." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "file-operations.downloadScreenshot", + "description": "This tool downloads a screenshot image from a specified URL or web page. It accepts a URL string and optional parameters for image format, resolution, and viewport size. It processes the webpage rendering and returns a screenshot image file in the requested format.", + "category": "file-operations", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the web page to capture a screenshot from.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "The image format to save the screenshot as (e.g., 'png', 'jpeg').", + "required": false, + "defaultValue": "png" + }, + { + "name": "width", + "type": "number", + "description": "The width in pixels of the viewport for the screenshot.", + "required": false, + "defaultValue": "1920" + }, + { + "name": "height", + "type": "number", + "description": "The height in pixels of the viewport for the screenshot.", + "required": false, + "defaultValue": "1080" + }, + { + "name": "fullPage", + "type": "boolean", + "description": "Whether to capture the entire page, scrolling through the full height.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the screenshot image data as a base64 encoded string and the image format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to obtain a visual capture of a web page given its URL, such as for analysis, archiving, or presentation purposes. It allows specifying resolution and image format to tailor the screenshot for various applications, like generating thumbnails or full-page captures.", + "limitations": "This tool cannot interact with dynamic content that requires user interaction beyond initial page load. It may not capture certain browser plugins or popups. Javascript-heavy pages might not render exactly as in a real browser if the rendering engine has limitations.", + "examples": [ + "Download a PNG screenshot of https://example.com with default resolution.", + "Download a full-page JPEG screenshot of https://example.com with 1280x720 viewport.", + "Download a 800x600 PNG screenshot of a URL for quick preview." + ] + }, + "tags": [ + "download", + "screenshot", + "webpage", + "image", + "capture", + "file", + "media" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"imageFormat\":\"png\"}", + "description": "Download a PNG screenshot of the homepage of example.com with default viewport size." + }, + { + "inputJson": "{\"url\":\"https://example.com\",\"imageFormat\":\"jpeg\",\"width\":1280,\"height\":720,\"fullPage\":false}", + "description": "Download a JPEG screenshot of example.com with 1280x720 viewport, not full page." + }, + { + "inputJson": "{\"url\":\"https://example.com/about\",\"fullPage\":true}", + "description": "Download a full-page PNG screenshot of the about page of example.com with default size." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Screenshot", + "context": null + } + }, + { + "name": "embedding-generation.createReport", + "description": "Generates a detailed vector embedding report summarizing the semantic structure and key topic vectors of input documents or text arrays. Accepts single or multiple texts, processes embedding creation and clustering insights, and returns a structured report with embedding statistics, cluster labels, and representative vectors.", + "category": "embedding-generation", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of text strings (documents, paragraphs, or sentences) to create embeddings for and include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for generating vector representations (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "maxClusterCount", + "type": "number", + "description": "Maximum number of semantic clusters/topics to identify and summarize in the report.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeRawEmbeddings", + "type": "boolean", + "description": "Whether to include the raw vector embeddings for each input text in the output report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input texts to optimize embedding generation (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Report object containing: cluster summaries with representative topic vectors, embedding statistics (mean, variance), cluster assignments per input text, and optionally raw embeddings." + }, + "aiAgent": { + "useCase": "Use this tool when needing a comprehensive semantic overview of a set of text documents by generating embeddings, identifying key topics or clusters, and producing a structured report for downstream analysis or decision making. It helps analyze large text corpora by embedding and summarizing semantic content.", + "limitations": "This tool does not perform natural language generation or text summarization beyond clustering embeddings. It requires input texts in supported languages and cannot interpret the meaning beyond vector embedding space representation.", + "examples": [ + "Generate an embedding report summarizing semantic clusters for a list of product reviews.", + "Create a report showing key topics and statistics from a set of customer feedback messages.", + "Produce a vector embedding report of Wikipedia articles in English to understand topic groupings." + ] + }, + "tags": [ + "embedding", + "embedding-generation", + "semantic-clustering", + "vector-analysis", + "reporting", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"TPMJS is a versatile tool registry.\",\"Embedding generation creates vector representations of text.\"],\"embeddingModel\":\"text-embedding-ada-002\",\"maxClusterCount\":3,\"includeRawEmbeddings\":true,\"language\":\"en\"}", + "description": "Generate embedding report for two short text inputs with raw embeddings included and 3 semantic clusters." + }, + { + "inputJson": "{\"texts\":[\"Customer service feedback is vital.\",\"Product reviews vary widely.\",\"User satisfaction drives sales.\"],\"embeddingModel\":\"text-embedding-002\",\"maxClusterCount\":2,\"includeRawEmbeddings\":false,\"language\":\"en\"}", + "description": "Create an embedding report summarizing three customer-related texts into 2 clusters without raw embeddings." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "file-operations.downloadAttachment", + "description": "This tool downloads an email or message attachment given its source URL or identifier. It accepts parameters to specify the attachment source, authentication if needed, and optional output filename. The tool processes the download request and returns the file content or a saved file path depending on usage.", + "category": "file-operations", + "parameters": [ + { + "name": "attachmentUrl", + "type": "string", + "description": "The URL from which to download the attachment. Required if attachmentId is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachmentId", + "type": "string", + "description": "A unique identifier for the attachment in a system. Used if attachmentUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or credentials required to access the attachment URL, if protected.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFilename", + "type": "string", + "description": "Optional desired filename to save the attachment locally. If omitted, a default name is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for the download operation to complete before failing.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status, filename saved or error detail if failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically retrieve and save attachments from emails or messaging systems via URL or identifier, especially in automated workflows where manual download is impractical.", + "limitations": "Cannot download attachments from sources requiring interactive authentication steps beyond token input; does not parse or extract attachments from messages without direct URL or ID; handles single attachment per invocation.", + "examples": [ + "Download attachment from URL with authentication token.", + "Download attachment using system attachment ID without authentication.", + "Download attachment and save to a custom filename locally." + ] + }, + "tags": [ + "file-download", + "attachment", + "email", + "automation", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"attachmentUrl\":\"https://example.com/files/report.pdf\",\"authToken\":\"Bearer abc123\",\"outputFilename\":\"finance_report.pdf\"}", + "description": "Download a PDF attachment from a secure URL using an auth token and save with a custom filename." + }, + { + "inputJson": "{\"attachmentId\":\"att-9876543210\"}", + "description": "Download an attachment using only its unique identifier, without providing URL or authentication." + }, + { + "inputJson": "{\"attachmentUrl\":\"https://publicserver.com/media/image.jpg\"}", + "description": "Download a publicly available image attachment by URL without authentication or custom filename." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Attachment", + "context": null + } + }, + { + "name": "file-operations.downloadFile", + "description": "Downloads a file from a specified URL to a local destination path. Accepts the file URL, optional destination directory, filename, and overwrite flag. It performs HTTP(S) download and saves the file locally, returning success status and file path or error details.", + "category": "file-operations", + "parameters": [ + { + "name": "fileUrl", + "type": "string", + "description": "The full HTTP or HTTPS URL of the file to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "The local directory path where the file will be saved. If omitted, defaults to the current working directory.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The name to save the file as. If omitted, the original filename from the URL is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists at the destination. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Time in seconds before the download request times out. Default is 30 seconds.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing download success status, local file path if successful, and error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve a remote file via URL and save it locally for further processing, storage, or user delivery. Typical scenarios include downloading images, documents, or datasets. The agent should ensure valid URLs and handle network errors gracefully.", + "limitations": "This tool cannot download files requiring authentication or cookies unless the URL includes access tokens. It does not support protocols other than HTTP and HTTPS. Large file downloads may be limited by agent environment constraints.", + "examples": [ + "Download an image from a public URL and save it to a specified folder with a custom filename.", + "Fetch a dataset CSV file from a URL and save it using the default filename in the current directory.", + "Attempt to download a file with overwrite enabled, replacing an existing file if present." + ] + }, + "tags": [ + "file", + "download", + "http", + "network", + "file-system", + "media" + ], + "examples": [ + { + "inputJson": "{\"fileUrl\":\"https://example.com/image.png\",\"destinationPath\":\"/tmp/images\",\"fileName\":\"holiday.png\",\"overwrite\":false}", + "description": "Download an image from a URL to /tmp/images as 'holiday.png', do not overwrite if exists." + }, + { + "inputJson": "{\"fileUrl\":\"https://example.com/data.csv\"}", + "description": "Download a CSV file from URL to current directory with original filename." + }, + { + "inputJson": "{\"fileUrl\":\"https://example.com/report.pdf\",\"destinationPath\":\"C:/Reports\",\"overwrite\":true}", + "description": "Download a PDF report to C:/Reports, overwrite if the file already exists." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "file-operations.downloadAudio", + "description": "Downloads audio files from a specified URL and saves them locally or to a specified directory. Accepts an audio file URL and optional parameters for filename, format conversion, and download timeout. Returns metadata about the saved file upon successful download.", + "category": "file-operations", + "parameters": [ + { + "name": "audioUrl", + "type": "string", + "description": "The URL of the audio file to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "savePath", + "type": "string", + "description": "Local file system path or directory where the audio file will be saved. If a directory is provided, the filename parameter or derived filename will be used.", + "required": false, + "defaultValue": "./" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional filename for saving the audio file. If omitted, filename will be derived from the URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "convertFormat", + "type": "string", + "description": "Desired audio format to convert the file to after download (e.g., mp3, wav). If empty, no conversion is performed.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download to complete before aborting.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full local path of the saved file, file size in bytes, audio format, and download status message." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to retrieve audio content from the internet programmatically, possibly converting it to a desired format, for offline processing or playback. Ideal when the agent is given a URL and must ensure the audio is saved locally with optional format standards.", + "limitations": "Cannot handle audio streams requiring authentication tokens or DRM-protected content. Format conversion supports only common audio formats and relies on underlying system capabilities. Network interruptions may cause failed downloads.", + "examples": [ + "Download a podcast episode audio file from a direct URL and save it as MP3.", + "Fetch an audio sample from a given online resource and save it locally without format conversion.", + "Download an audio file with a specified timeout to avoid long hanging downloads." + ] + }, + "tags": [ + "download", + "audio", + "file-management", + "media", + "network", + "conversion" + ], + "examples": [ + { + "inputJson": "{\"audioUrl\":\"https://example.com/audio/sample.wav\",\"savePath\":\"/user/downloads/audio\",\"fileName\":\"sample_converted.mp3\",\"convertFormat\":\"mp3\",\"timeoutSeconds\":30}", + "description": "Downloads a WAV audio file from a URL, converts it to MP3, and saves it with a specified filename and 30 seconds timeout." + }, + { + "inputJson": "{\"audioUrl\":\"https://example.com/audio/song.mp3\",\"savePath\":\"/music\",\"fileName\":\"\",\"convertFormat\":\"\",\"timeoutSeconds\":60}", + "description": "Downloads an MP3 audio file from URL and saves it to /music directory, keeping original format and filename, with a 60 seconds timeout." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Audio", + "context": null + } + }, + { + "name": "file-operations.downloadVideo", + "description": "Downloads a video file from a specified URL and saves it to a given local file path. Accepts the video URL and target path, optionally supports setting a network timeout and whether to overwrite existing files. Returns details about the downloaded file including size and duration if available.", + "category": "file-operations", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video file to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetPath", + "type": "string", + "description": "The local file system path to save the downloaded video file to.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before timing out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file at targetPath if it already exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file path, size in bytes, video duration in seconds (if obtainable), and a success status." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to programmatically acquire a video file from an internet source and save it locally for further processing, analysis, or playback. It is ideal for scenarios requiring reliable video downloading with options for timeout and overwrite protection.", + "limitations": "This tool cannot extract video metadata beyond basic duration if not accessible from the file. It does not support downloading from sites requiring complex authentication or streaming protocols that need specialized handling. It downloads direct video file URLs only.", + "examples": [ + "Download a training video from https://example.com/video.mp4 to /videos/training.mp4.", + "Download a promotional clip and overwrite if it exists at /tmp/promo.mov.", + "Download a video with a 60 second timeout from a given URL." + ] + }, + "tags": [ + "file", + "download", + "video", + "media", + "network", + "file-saving", + "streaming", + "media-processing" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/sample.mp4\",\"targetPath\":\"/home/user/videos/sample.mp4\",\"timeoutSeconds\":60,\"overwrite\":true}", + "description": "Download a sample MP4 video with a 60 second timeout and overwrite enabled." + }, + { + "inputJson": "{\"videoUrl\":\"https://mediahost.com/videos/event.mov\",\"targetPath\":\"C:\\\\Videos\\\\event.mov\",\"overwrite\":false}", + "description": "Download an event MOV video without overwriting an existing file on a Windows system." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "file-operations.downloadMarkdown", + "description": "Downloads Markdown content provided as a string or from a URL and saves it as a .md file locally or in a specified directory. Supports customization of filename, directory path, and overwrite options. Returns the full path of the saved Markdown file.", + "category": "file-operations", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "Markdown text content to save as a file. Provide as string if downloading from content directly.", + "required": false, + "defaultValue": "" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "URL to fetch Markdown content from if markdownContent is not provided. Must respond with Markdown text.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the saved Markdown file without extension. Defaults to 'downloaded_markdown'.", + "required": false, + "defaultValue": "downloaded_markdown" + }, + { + "name": "directoryPath", + "type": "string", + "description": "Local directory path where the Markdown file will be saved. Defaults to current working directory.", + "required": false, + "defaultValue": "." + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists. Defaults to false to prevent accidental data loss.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the absolute path to the saved Markdown file and confirmation of success." + }, + "aiAgent": { + "useCase": "Use this tool when Markdown text needs to be saved as a local file either from a direct content input or fetched from a URL. Suitable for agents automating documentation download, note-taking, or archival of Markdown resources.", + "limitations": "Cannot parse or modify Markdown content, only downloads and saves. Requires valid Markdown content as input or accessible URL. Does not handle authentication for protected URLs.", + "examples": [ + "Download Markdown from a URL and save it locally with a custom filename.", + "Save provided Markdown string content to a specified directory.", + "Download Markdown content without overwriting existing files, ensuring safe file storage." + ] + }, + "tags": [ + "file", + "markdown", + "download", + "save", + "content", + "document" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Hello World\\nThis is a sample Markdown text.\",\"fileName\":\"sample_note\",\"directoryPath\":\"./docs\",\"overwrite\":true}", + "description": "Save provided Markdown string content as 'sample_note.md' in './docs' directory, overwriting existing file." + }, + { + "inputJson": "{\"sourceUrl\":\"https://raw.githubusercontent.com/user/repo/README.md\",\"fileName\":\"README\",\"directoryPath\":\"./downloads\",\"overwrite\":false}", + "description": "Download Markdown content from a URL and save as 'README.md' in './downloads' without overwriting existing files." + }, + { + "inputJson": "{\"markdownContent\":\"- Item 1\\n- Item 2\",\"fileName\":\"list\",\"directoryPath\":\".\",\"overwrite\":false}", + "description": "Save a simple Markdown list as 'list.md' in the current directory, preserving existing files." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Markdown", + "context": null + } + }, + { + "name": "file-operations.downloadImage", + "description": "Downloads an image from a specified URL, saves it locally or returns its binary content. Accepts the image URL and optional parameters for file path, HTTP headers, and timeout. Returns success status and file path or image data depending on parameters.", + "category": "file-operations", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The URL of the image to download (must be a valid http/https URL).", + "required": true, + "defaultValue": "" + }, + { + "name": "saveToFile", + "type": "boolean", + "description": "Whether to save the downloaded image to a file on disk (true) or return binary data (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "filePath", + "type": "string", + "description": "Local file path to save the image if saveToFile is true. If empty, a default filename is generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "httpHeaders", + "type": "object", + "description": "Optional HTTP headers to include in the download request (e.g., authorization tokens).", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout duration in seconds for the image download request.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status and either the file path (if saved) or the image binary data in base64 encoding." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to retrieve image files from online sources for processing, analysis, or local storage. It handles accessible image URLs and provides flexibility to save images locally or return them in-memory for immediate use.", + "limitations": "Cannot download images from URLs that require interactive authentication or complex JavaScript rendering. Not suitable for scraping protected or dynamically generated images.", + "examples": [ + "Download and save an image from a public URL to a specified local path.", + "Fetch an image from a URL and get the raw image data in base64 without saving to disk.", + "Download an image with custom HTTP headers for authenticated requests." + ] + }, + "tags": [ + "download", + "image", + "file", + "http", + "media", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/image.jpg\",\"saveToFile\":true,\"filePath\":\"./downloads/image.jpg\"}", + "description": "Download an image from a URL and save it to a given local path." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/avatar.png\",\"saveToFile\":false}", + "description": "Download an image and get its base64 binary data without saving to disk." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "file-operations.downloadCSV", + "description": "This tool takes structured data as input (either as an array of objects or a CSV string), converts it into a valid CSV format if needed, and prepares it for download by generating a downloadable CSV file content string. It supports customizing delimiter, including headers, and encoding options, outputting the CSV content as a string ready to be saved or served as a file.", + "category": "file-operations", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing the structured data rows to be converted to CSV format. Each object is a row with key-value pairs as columns. Alternatively, a CSV string can be provided if raw CSV input is preferred.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include the object keys as the first header row in the CSV output. Defaults to true to have column headers.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character used to separate values in the CSV file. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the CSV file to be downloaded, including extension .csv. Defaults to 'data.csv'.", + "required": false, + "defaultValue": "data.csv" + }, + { + "name": "encoding", + "type": "string", + "description": "The character encoding for the CSV file content, e.g., 'utf-8'. Defaults to 'utf-8'.", + "required": false, + "defaultValue": "utf-8" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV file name and the CSV content as a string, encoded as specified, ready for file download or saving." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a CSV file from structured data for download or export, such as exporting tables, reports, or data summaries. It is helpful for converting data objects into a CSV string and packaging it with a proper filename and encoding for user download or backend processing.", + "limitations": "This tool does not handle downloading files directly to a user's system; it only prepares CSV content and metadata. It does not parse or process complex nested objects beyond flat key-value pairs for CSV serialization.", + "examples": [ + "Download a CSV file from a list of user information objects with default settings.", + "Export report data as CSV with semicolon delimiter and no headers.", + "Prepare CSV content under a custom filename and UTF-16 encoding." + ] + }, + "tags": [ + "file", + "csv", + "export", + "download", + "data-format", + "file-operations" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"email\":\"alice@example.com\"},{\"name\":\"Bob\",\"age\":25,\"email\":\"bob@example.com\"}]}", + "description": "Generate a CSV file from a simple array of objects with default comma delimiter and headers included." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Widget\",\"price\":19.99,\"stock\":100},{\"product\":\"Gadget\",\"price\":29.99,\"stock\":50}],\"delimiter\":\";\",\"includeHeaders\":false,\"fileName\":\"inventory.csv\"}", + "description": "Export product inventory data as CSV without headers and using semicolon as delimiter with a specified filename." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "file-operations.downloadYAML", + "description": "Downloads YAML data from a specified URL or remote source. Accepts a URL string and optional request headers, performs an HTTP GET request, validates and parses the YAML content, then returns the raw YAML text along with a parsed JSON representation for further processing.", + "category": "file-operations", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL or endpoint from which to download the YAML file. Must be a valid and accessible URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the request, e.g., for authentication or custom user-agent.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum number of seconds to wait for the download before timing out.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the raw YAML content as a string and the parsed YAML converted into a JSON structure for easy consumption by other tools or code." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically download configuration or data files in YAML format from remote HTTP(S) sources, typically APIs or raw file URLs, and want both the original YAML text as well as a parsed JSON object for processing or validation.", + "limitations": "This tool only supports downloading YAML over HTTP/HTTPS. It cannot download files from local file systems or other protocols. It assumes that the content at the URL is valid YAML and does not handle binary or non-YAML content gracefully.", + "examples": [ + "Download a remote Kubernetes configuration YAML file from a public GitHub URL.", + "Retrieve a YAML manifest from a REST API endpoint that requires custom headers for authorization." + ] + }, + "tags": [ + "download", + "yaml", + "file", + "http", + "configuration", + "parse" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/config.yaml\"}", + "description": "Download a public YAML configuration file from a standard URL with default headers and timeout." + }, + { + "inputJson": "{\"url\":\"https://api.example.com/data.yaml\",\"headers\":{\"Authorization\":\"Bearer TOKEN123\"},\"timeoutSeconds\":10}", + "description": "Download a YAML file from a protected API endpoint using a Bearer token, with a 10 second timeout." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "YAML", + "context": null + } + }, + { + "name": "file-operations.downloadXML", + "description": "Downloads XML data from a specified URL or API endpoint and saves it to a local file path. Accepts a URL string and optional HTTP headers for authentication or custom requests. Returns the saved file path and download status.", + "category": "file-operations", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL or API endpoint from which to download the XML data.", + "required": true, + "defaultValue": "" + }, + { + "name": "savePath", + "type": "string", + "description": "Local file path where the downloaded XML file will be saved, including filename and extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpHeaders", + "type": "object", + "description": "Optional HTTP headers (key-value pairs) to include in the download request, e.g., for authentication.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Optional timeout in seconds for the download request before it fails. Default is 30 seconds.", + "required": false, + "defaultValue": "30" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the existing file at savePath if it exists. Default is false to avoid overwriting.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the local file path of the saved XML and a status message indicating success or error details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically download XML data from a web resource or API and store it locally for further processing or analysis. It supports custom headers for authenticated endpoints and handles file management with overwrite control.", + "limitations": "This tool does not parse or validate the XML content; it only handles downloading and saving raw XML data. It also does not support XML downloads from URLs requiring complex authentication flows like OAuth beyond header injection.", + "examples": [ + "Download the latest RSS feed XML from a news site and save it for analysis.", + "Fetch XML data from a secured API endpoint requiring an API key header, saving the response to a specific directory.", + "Download an XML sitemap from a website and save it locally for SEO audits." + ] + }, + "tags": [ + "file", + "download", + "XML", + "network", + "HTTP", + "save", + "web" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/data.xml\",\"savePath\":\"/tmp/data.xml\"}", + "description": "Simple download of an XML file from a public URL." + }, + { + "inputJson": "{\"url\":\"https://api.example.com/secure/data\",\"savePath\":\"/data/secure.xml\",\"httpHeaders\":{\"Authorization\":\"Bearer abc123\"},\"overwrite\":true}", + "description": "Download XML data from a secured API with authorization header, overwriting any existing file." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "XML", + "context": null + } + }, + { + "name": "file-operations.downloadJSON", + "description": "Downloads JSON data by saving it to a specified file path on the user's local system. Accepts JSON content as a string or object, validates it, and writes it to the given file path with UTF-8 encoding. Produces a confirmation result indicating success or details on any write errors.", + "category": "file-operations", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The JSON data to download; can be a JSON string or stringified JSON object to be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "The full path including filename where the JSON should be saved on the local filesystem.", + "required": true, + "defaultValue": "" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "If true, the JSON will be formatted with indentation for readability before saving.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a success boolean and optional message describing the outcome of the download operation." + }, + "aiAgent": { + "useCase": "Use this tool when you have JSON data that needs to be saved locally as a file, such as exporting configuration, data snapshots, or API responses as JSON files. Useful for persisting data generated or transformed during the workflow for later use or sharing.", + "limitations": "Cannot download files to remote machines or browsers directly; only saves JSON files where the system running the tool has write permissions. Does not handle non-JSON data formats or convert other data types automatically.", + "examples": [ + "Save JSON API response data to a local file for inspection.", + "Export user settings or preferences as a JSON file for backup.", + "Save generated report data in JSON format with pretty print for easier reading." + ] + }, + "tags": [ + "file", + "download", + "JSON", + "export", + "save", + "data", + "filesystem" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"{\\\"name\\\":\\\"John Doe\\\",\\\"age\\\":30}\",\"filePath\":\"./output/userData.json\",\"prettyPrint\":true}", + "description": "Saving a simple JSON object to a local file with pretty formatting." + }, + { + "inputJson": "{\"jsonData\":\"[1,2,3,4]\",\"filePath\":\"/tmp/numbers.json\",\"prettyPrint\":false}", + "description": "Saving a JSON array to a file without pretty print to reduce file size." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "file-operations.downloadTable", + "description": "Downloads a tabular dataset as a file in the specified format. Accepts a table represented as an array of objects or arrays, processes optional formatting settings, and outputs a downloadable file such as CSV, XLSX, or JSON. Useful for exporting data tables from in-memory structures to user-accessible files.", + "category": "file-operations", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "The table data to be downloaded, represented as an array of row objects or arrays. Each row should be uniform in structure.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the file to create and download, including the extension (e.g., data.csv).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "The desired file format for download; supported formats are 'csv', 'xlsx', and 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the output file (applicable for CSV and XLSX).", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character used in CSV output; ignored if fileFormat is not 'csv'.", + "required": false, + "defaultValue": "," + }, + { + "name": "sheetName", + "type": "string", + "description": "The name of the worksheet when exporting to XLSX format; ignored otherwise.", + "required": false, + "defaultValue": "Sheet1" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status and the downloadable file content as a Blob or data URL, depending on implementation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to export structured table-like data from application memory into common file formats for download, sharing, or storage. This avoids manual file creation and formatting, streamlining client-side data export workflows.", + "limitations": "Does not support extremely large datasets that exceed in-memory handling capabilities; does not perform data validation or correcting malformed tables; limited to CSV, XLSX, and JSON exports only.", + "examples": [ + "Download the current user report table as a CSV file including headers with default comma delimiter.", + "Export sales data as an XLSX file named 'sales_report.xlsx' with a custom sheet name.", + "Generate a JSON file of the data for API export or backup purposes." + ] + }, + "tags": [ + "file", + "download", + "table", + "export", + "csv", + "xlsx", + "json" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"id\":1,\"name\":\"Alice\",\"score\":95},{\"id\":2,\"name\":\"Bob\",\"score\":88}],\"fileName\":\"results.csv\",\"fileFormat\":\"csv\",\"includeHeaders\":true,\"delimiter\":\",\"}", + "description": "Download a small table as CSV with headers and default comma delimiter." + }, + { + "inputJson": "{\"tableData\":[{\"product\":\"Widget\",\"quantity\":20,\"price\":9.99},{\"product\":\"Gadget\",\"quantity\":15,\"price\":15.49}],\"fileName\":\"inventory.xlsx\",\"fileFormat\":\"xlsx\",\"includeHeaders\":true,\"sheetName\":\"Inventory\"}", + "description": "Export inventory data to XLSX with headers and custom sheet name." + }, + { + "inputJson": "{\"tableData\":[{\"userId\":123,\"active\":true},{\"userId\":456,\"active\":false}],\"fileName\":\"users.json\",\"fileFormat\":\"json\"}", + "description": "Generate a JSON file representing user statuses without headers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "file-operations.downloadCode", + "description": "Downloads source code files or projects from specified URLs or repository links. Accepts single or multiple URLs, supports authentication tokens for private repos, and saves files to a given local directory, returning download status and file paths.", + "category": "file-operations", + "parameters": [ + { + "name": "sourceUrls", + "type": "array", + "description": "Array of URLs pointing to code files or repositories to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local directory path where the downloaded code should be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token for accessing private repositories or restricted downloads.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite existing files in the destination path if they exist.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of download results, each with the source URL, success status, error messages if any, and local saved file path." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically download single or multiple code files or entire repositories from public or private sources, useful in automation workflows requiring source code acquisition. It helps in integrating code retrieval steps in automation scripts or agents.", + "limitations": "This tool does not perform repository cloning with full git history or support partial file downloads within large repositories beyond the top-level files. It relies on URLs to files or zipped archives, so it cannot interpret repository metadata or branches beyond default.", + "examples": [ + "Download code files from given URLs to a local project directory.", + "Download a private repo's zipped source code using an auth token.", + "Retrieve multiple code snippets/files from various public URLs for analysis." + ] + }, + "tags": [ + "file-download", + "code-management", + "automation", + "repository", + "source-code", + "file-operations", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"sourceUrls\":[\"https://raw.githubusercontent.com/user/repo/main/app.js\"],\"destinationPath\":\"/usr/local/projects/myapp\",\"authToken\":\"\",\"overwriteExisting\":true}", + "description": "Download a single public JavaScript file and overwrite existing if needed." + }, + { + "inputJson": "{\"sourceUrls\":[\"https://github.com/user/private-repo/archive/refs/heads/main.zip\"],\"destinationPath\":\"/home/user/projects/private\",\"authToken\":\"ghp_abcdef1234567890\",\"overwriteExisting\":false}", + "description": "Download a private repository archive with authentication token without overwriting." + }, + { + "inputJson": "{\"sourceUrls\":[\"https://example.com/code1.py\",\"https://example.com/code2.py\"],\"destinationPath\":\"C:\\\\Projects\\\\Scripts\",\"authToken\":\"\",\"overwriteExisting\":false}", + "description": "Download multiple public Python script files to specified Windows directory." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "file-operations.uploadFile", + "description": "Uploads a file from the local system or a provided file buffer to a specified remote destination such as a cloud storage service or an FTP server. Accepts file path or raw file data, target destination parameters, and optional metadata, then transfers the file and returns a confirmation status with the remote file URL or path.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local filesystem path of the file to be uploaded. Required if fileBuffer is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileBuffer", + "type": "string", + "description": "Base64-encoded content of the file to be uploaded. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationType", + "type": "string", + "description": "Type of the remote destination where file will be uploaded. Examples: 's3', 'ftp', 'http', 'azureBlob'.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationConfig", + "type": "object", + "description": "Configuration object with credentials and connection details required for the destination type (e.g., bucket name, endpoint URL, access keys).", + "required": true, + "defaultValue": "" + }, + { + "name": "remoteFileName", + "type": "string", + "description": "Name to assign to the uploaded file at the destination. If empty, original file name used.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata key-value pairs to associate with the file upon upload, if supported by destination.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status, remote file URL/path, and any messages or errors encountered during upload." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transfer file data from local sources or in-memory buffers to remote storage destinations for backup, sharing, or integration with other systems. Suitable for uploading documents, images, or data files where the agent has access to file content and destination credentials.", + "limitations": "Does not perform file content validation, format conversion, or chunked uploads for very large files. Relies on correct destination configuration and available network connectivity.", + "examples": [ + "Upload a local image file to an AWS S3 bucket for further processing.", + "Send a generated PDF document from a buffer to an FTP server for official record storage.", + "Upload backup data to Azure Blob Storage with custom metadata tags." + ] + }, + "tags": [ + "upload", + "file", + "storage", + "cloud", + "ftp", + "s3", + "azure" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/tmp/report.pdf\",\"destinationType\":\"s3\",\"destinationConfig\":{\"bucketName\":\"my-bucket\",\"accessKeyId\":\"AKIA...\",\"secretAccessKey\":\"***\"},\"remoteFileName\":\"reports/2024/report.pdf\",\"metadata\":{\"author\":\"John Doe\",\"department\":\"finance\"}}", + "description": "Upload a PDF report from local filesystem to an S3 bucket under 'reports/2024/' path with metadata." + }, + { + "inputJson": "{\"fileBuffer\":\"SGVsbG8gd29ybGQ=\",\"destinationType\":\"ftp\",\"destinationConfig\":{\"host\":\"ftp.example.com\",\"port\":21,\"user\":\"ftpuser\",\"password\":\"pass\"},\"remoteFileName\":\"uploads/hello.txt\"}", + "description": "Upload a text file from base64 buffer to an FTP server into 'uploads' directory." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "file-operations.uploadScreenshot", + "description": "Uploads a screenshot image file to a specified remote storage endpoint. Accepts screenshot data as a base64 string or binary file path, optional metadata (title, description), and authentication credentials. Returns the URL of the uploaded screenshot and status information.", + "category": "file-operations", + "parameters": [ + { + "name": "screenshotData", + "type": "string", + "description": "Base64 encoded image data of the screenshot to be uploaded. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local file system path to the screenshot image file to be uploaded. Required if screenshotData is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "HTTP endpoint URL where the screenshot should be uploaded. Must support file uploads.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key to authorize the upload to the destination endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata object containing title and description to associate with the screenshot.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, uploaded file URL, and optionally any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to save or share screenshot images by uploading them to a cloud or web storage service. It handles both base64 or local files and manages metadata and authentication to integrate with remote backends.", + "limitations": "This tool does not capture screenshots; it only uploads them. It requires valid endpoint URL and authentication. It cannot perform image transformations or optimizations before upload.", + "examples": [ + "Upload a screenshot from base64 data to a cloud storage with API token.", + "Upload a local PNG screenshot file to a secure server with metadata title and description.", + "Upload screenshot without metadata, only with authentication token and destination URL." + ] + }, + "tags": [ + "file upload", + "screenshot", + "media", + "image", + "cloud storage", + "authentication", + "file-operations" + ], + "examples": [ + { + "inputJson": "{\"screenshotData\":\"iVBORw0KGgoAAAANSUhEUgAAA...\",\"destinationUrl\":\"https://upload.example.com/api/upload\",\"authToken\":\"abc123token\",\"metadata\":{\"title\":\"Error Screen\",\"description\":\"Screenshot of error message on login\"}}", + "description": "Upload a base64 encoded screenshot image to a cloud endpoint with metadata and authentication." + }, + { + "inputJson": "{\"filePath\":\"/tmp/screenshots/screen1.png\",\"destinationUrl\":\"https://files.example.com/upload\",\"authToken\":\"token987\"}", + "description": "Upload a local screenshot PNG file to a remote server requiring auth, without metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Screenshot", + "context": null + } + }, + { + "name": "file-operations.downloadDataset", + "description": "Downloads a dataset file from a specified URL, optionally authenticating with an API key, and saves it locally with a specified filename and format. Supports optional timeout and retry parameters for robust downloads.", + "category": "file-operations", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL from which to download the dataset file.", + "required": true, + "defaultValue": "" + }, + { + "name": "saveAs", + "type": "string", + "description": "Local filename (including path) to save the downloaded dataset file.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Expected dataset file format (e.g., CSV, JSON, ZIP) to validate or process download.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "apiKey", + "type": "string", + "description": "Optional API key for authorization if the dataset URL requires authentication.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download to complete before aborting.", + "required": false, + "defaultValue": "60" + }, + { + "name": "maxRetries", + "type": "number", + "description": "Number of times to retry download if it fails due to network errors.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success or failure, with message details and the local path of the saved dataset if successful." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to programmatically retrieve datasets from web sources, especially those requiring authorization or configurable download options, and save them locally for analysis or further processing. It helps automate dataset acquisition workflows reliably.", + "limitations": "Does not parse or analyze dataset contents, only downloads and saves files. Cannot handle interactive authentication flows beyond simple API keys. Relies on valid URLs and accessible endpoints.", + "examples": [ + "Download a CSV dataset from a public URL and save it locally.", + "Download an authenticated JSON dataset using an API key and save it with a specified filename.", + "Download a zipped dataset from a URL with retries and timeout configured." + ] + }, + "tags": [ + "file", + "download", + "dataset", + "data acquisition", + "http", + "api", + "auth" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/data/sample.csv\",\"saveAs\":\"/tmp/sample.csv\"}", + "description": "Download a public CSV dataset and save it as sample.csv" + }, + { + "inputJson": "{\"url\":\"https://api.example.com/data\",\"saveAs\":\"data.json\",\"format\":\"json\",\"apiKey\":\"abcdef123456\"}", + "description": "Download a JSON dataset from an authenticated API endpoint using an API key" + }, + { + "inputJson": "{\"url\":\"https://datasets.example.com/archive.zip\",\"saveAs\":\"/tmp/archive.zip\",\"format\":\"zip\",\"timeoutSeconds\":120,\"maxRetries\":5}", + "description": "Download a large zipped dataset file with extended timeout and retries" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "file-operations.uploadAttachment", + "description": "Uploads a file attachment from local storage or a URL to a specified target location or server. Accepts file path or URL input, validates and streams the file data, and returns a confirmation with metadata including file URL, size, and upload status.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path to the file to upload (required if fileUrl is not provided)", + "required": false, + "defaultValue": "" + }, + { + "name": "fileUrl", + "type": "string", + "description": "Publicly accessible URL of the file to upload (required if filePath is not provided)", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLocation", + "type": "string", + "description": "Destination path or endpoint where the file should be uploaded", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists at the target location", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata key-value pairs to associate with the uploaded attachment", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, accessible URL or path of the uploaded file, file size in bytes, and any error messages if applicable" + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload attachments such as documents, images, or other media files to a remote server or cloud storage as part of a workflow. It handles uploads from either local files or remote URLs, returning a confirmation with file metadata to confirm success.", + "limitations": "This tool cannot modify file contents or perform virus scanning. It requires access permissions to the target location and valid input source; it cannot fetch files from URLs requiring authentication.", + "examples": [ + "Upload a profile picture from a local file path to the user avatar storage folder.", + "Upload a PDF document available at a public URL to a cloud storage bucket with metadata tags.", + "Overwrite an existing attachment at the target location with a new local file." + ] + }, + "tags": [ + "file", + "upload", + "attachment", + "media", + "remote", + "storage", + "transfer", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/tmp/image.png\",\"targetLocation\":\"s3://mybucket/uploads/user123/image.png\",\"overwrite\":true}", + "description": "Upload a local image file to an S3 bucket, overwriting if exists." + }, + { + "inputJson": "{\"fileUrl\":\"https://example.com/manual.pdf\",\"targetLocation\":\"/var/data/manuals/2024_manual.pdf\",\"metadata\":{\"project\":\"Q2Release\",\"author\":\"John Doe\"}}", + "description": "Upload a remote PDF by URL to a local directory with metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Attachment", + "context": null + } + }, + { + "name": "file-operations.downloadDocument", + "description": "Downloads a document file from a specified URL and saves it to a local file path. Accepts the source URL, optional authentication headers, and local destination path. Performs HTTP GET request to fetch the document and writes it to disk, returning success status and file metadata.", + "category": "file-operations", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL of the document to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local file system path where the downloaded document will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationHeaders", + "type": "object", + "description": "Optional HTTP headers (e.g., authorization tokens) to include in the download request.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Optional timeout in seconds for the download request. Default is 30 seconds.", + "required": false, + "defaultValue": "30" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists at the destination path.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status (true/false), HTTP status code, local file path if successful, and error message if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically download a document from the internet or a protected resource and save it to a local file system for further processing or storage. It's useful for automating document retrieval tasks from URLs requiring optional authentication.", + "limitations": "Cannot handle interactive authentication flows like OAuth redirects. Does not support partial downloads or resume capabilities. Relies on network connectivity and valid URL.", + "examples": [ + "Download a public PDF file from a URL to local disk.", + "Download a document from a URL requiring a bearer token header.", + "Download and overwrite an existing local document with the latest version from the web." + ] + }, + "tags": [ + "file", + "download", + "document", + "http", + "network", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/sample.pdf\",\"destinationPath\":\"/tmp/sample.pdf\"}", + "description": "Download a PDF from a public URL and save it locally." + }, + { + "inputJson": "{\"sourceUrl\":\"https://api.example.com/secure/doc1\",\"destinationPath\":\"/data/doc1.docx\",\"authenticationHeaders\":{\"Authorization\":\"Bearer abc123token\"},\"overwrite\":true}", + "description": "Download a secured document with bearer token authentication and overwrite existing file." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "file-operations.uploadAudio", + "description": "Uploads an audio file to a specified remote storage server or cloud service. Accepts audio files in common formats (e.g., mp3, wav, flac) via a file path or binary input, uploads them using provided authentication credentials, and returns metadata including upload status, URL, and file info.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path to the audio file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional custom filename to use for the uploaded audio file. If empty, original filename is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "URL or endpoint of the remote storage or service where the audio will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key required to authorize the upload request.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file at destination if it already exists (true) or not (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload result details: success status, uploaded file URL, file size in bytes, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to store audio files to a remote server or cloud storage as part of workflows like media management, content publishing, or audio analysis pipelines. It streamlines authenticated uploads and provides detailed feedback for integration.", + "limitations": "This tool handles uploading only; it does not perform any audio format conversion, validation beyond file accessibility, or resume interrupted uploads.", + "examples": [ + "Upload local podcast audio to cloud storage for hosting.", + "Save recorded interview audio files to a secure remote server.", + "Transfer processed audio clips to a content distribution endpoint." + ] + }, + "tags": [ + "file upload", + "audio", + "cloud storage", + "media management", + "authentication", + "remote upload" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/user/home/music/song.mp3\",\"fileName\":\"my_favorite_song.mp3\",\"destinationUrl\":\"https://api.cloudstorage.com/upload\",\"authToken\":\"abc123token\",\"overwrite\":true}", + "description": "Upload an MP3 file with a custom filename to cloud storage, allowing overwrite if it exists." + }, + { + "inputJson": "{\"filePath\":\"./recordings/interview.wav\",\"fileName\":\"\",\"destinationUrl\":\"https://media.server.com/uploadAudio\",\"authToken\":\"securetoken987\",\"overwrite\":false}", + "description": "Upload a WAV audio recording to a media server keeping original filename without overwriting existing files." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Audio", + "context": null + } + }, + { + "name": "file-operations.uploadVideo", + "description": "Uploads a video file to a specified storage location or video hosting service. Accepts video file content or path, validates format and size, and returns a unique video identifier and accessible URL upon successful upload.", + "category": "file-operations", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local file path to the video file to be uploaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoFileContent", + "type": "string", + "description": "Base64 encoded content of the video file if not using a file path.", + "required": false, + "defaultValue": "" + }, + { + "name": "destination", + "type": "string", + "description": "Target destination or storage service identifier (e.g., 's3', 'azureBlob', or custom URL).", + "required": true, + "defaultValue": "s3" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata object including title, description, tags associated with the video.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed file size for upload in megabytes.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the video ID, URL where the video is accessible, and any upload status messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload a video file to a cloud storage or video hosting platform, enabling subsequent retrieval, sharing, or processing. Ideal for workflows involving media upload automation or integration with video services.", + "limitations": "This tool does not transcode or process the video content beyond basic validation. Upload destination must be supported and properly configured by external integration.", + "examples": [ + "Upload a user-generated video file to cloud storage with title and tags.", + "Upload a base64 encoded video from memory to a specified video hosting service.", + "Upload a video file with file size restriction enforced." + ] + }, + "tags": [ + "upload", + "file-operations", + "video", + "cloud-storage", + "media-management" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/path/to/video.mp4\",\"destination\":\"s3\",\"metadata\":{\"title\":\"My Vacation\",\"description\":\"Vacation clips from 2023\",\"tags\":[\"vacation\",\"travel\"]},\"maxFileSizeMB\":100}", + "description": "Upload a local MP4 video file to AWS S3 with descriptive metadata and 100 MB max size limit." + }, + { + "inputJson": "{\"videoFileContent\":\"VGhpcyBpcyBhIGJhc2U2NCBlbmNvZGVkIHZpZGVvIGNvbnRlbnQ=\",\"destination\":\"azureBlob\",\"metadata\":{\"title\":\"Sample Video\"}}", + "description": "Upload a base64 encoded video content string to Azure Blob Storage with a title metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "file-operations.downloadReport", + "description": "Downloads a report file from a specified URL, optionally applying authentication headers and saving it to a given local path. Accepts URL as input, supports HTTP headers for auth, and writes the downloaded content to disk in the desired location. Returns status and file path info.", + "category": "file-operations", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL from which to download the report file.", + "required": true, + "defaultValue": "" + }, + { + "name": "savePath", + "type": "string", + "description": "Local file system path where the downloaded report will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers object for authentication or custom requests (e.g., Authorization tokens).", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before aborting.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "Outputs the download status, local file path of saved report, and any relevant error messages if failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically download a report file from a remote server or API endpoint, especially when authentication or custom headers are required and the file must be saved locally for further processing or analysis.", + "limitations": "Cannot parse or interpret report content; only downloads raw file data. Does not support multi-part or chunked downloads automatically.", + "examples": [ + "Download the latest sales report from a secure URL with authentication headers and save it locally.", + "Retrieve a CSV or PDF report from a remote endpoint handling timeouts and saving file under a specific directory.", + "Programmatically fetch a report file for offline processing from an internal web service URL." + ] + }, + "tags": [ + "file", + "download", + "report", + "http", + "authentication", + "file-saving" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/reports/monthly_sales.pdf\",\"savePath\":\"/tmp/monthly_sales.pdf\",\"headers\":{\"Authorization\":\"Bearer abc123\"},\"timeoutSeconds\":30}", + "description": "Downloads a secure monthly sales report PDF with an authorization token, saving it under /tmp folder." + }, + { + "inputJson": "{\"url\":\"https://data.example.org/reports/annual_summary.csv\",\"savePath\":\"/data/annual_summary.csv\"}", + "description": "Downloads an annual summary CSV report without additional headers and saves it into /data directory." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "file-operations.uploadJSON", + "description": "Uploads a JSON data file or content string to a specified storage location or endpoint. Accepts either a JSON string or a path to a local JSON file, validates the JSON format, and then uploads it using HTTP or filesystem methods as specified. Returns upload status and metadata such as size and upload destination.", + "category": "file-operations", + "parameters": [ + { + "name": "jsonContent", + "type": "string", + "description": "The JSON data as a string to be uploaded. Required if jsonFilePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "jsonFilePath", + "type": "string", + "description": "Local path to the JSON file to be uploaded. Required if jsonContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "uploadUrl", + "type": "string", + "description": "The destination URL or endpoint for uploading the JSON data, e.g., an HTTP API endpoint. Required if targetLocation is not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLocation", + "type": "string", + "description": "A local or network file path to upload the JSON file to instead of using a URL endpoint. Required if uploadUrl is not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to use when uploading to a URL endpoint, e.g., POST or PUT. Defaults to POST.", + "required": false, + "defaultValue": "POST" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the upload request when using uploadUrl, e.g., authorization tokens.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "If true, overwrite existing files at the target location. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status (e.g., success or failure), HTTP response code if applicable, bytes uploaded, the final destination path or URL, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transfer valid JSON data to a remote API endpoint or save it to a specific file location, supporting scenarios like configuration deployment, data syncing, or API-driven uploads. It handles both local files and direct JSON content strings with validation to ensure only correct JSON is uploaded.", + "limitations": "This tool does not perform complex JSON transformations or validations beyond basic syntax checks. It does not support multipart upload for very large files or handle authentication beyond simple HTTP headers provided. It cannot upload to unsupported protocols outside HTTP or filesystem paths.", + "examples": [ + "Upload JSON string to a given REST API with a Bearer token header.", + "Upload a local JSON config file to a local directory, overwriting any existing file.", + "Upload JSON data using PUT HTTP method to update a resource on a web service." + ] + }, + "tags": [ + "upload", + "JSON", + "file-operations", + "data-transfer", + "HTTP", + "filesystem" + ], + "examples": [ + { + "inputJson": "{\"jsonContent\":\"{\\\"name\\\": \\\"test\\\", \\\"value\\\": 123}\",\"uploadUrl\":\"https://api.example.com/upload\",\"httpMethod\":\"POST\",\"headers\":{\"Authorization\":\"Bearer abc123\"},\"overwrite\":true}", + "description": "Uploading a JSON string to a REST API endpoint with authorization and overwrite flag." + }, + { + "inputJson": "{\"jsonFilePath\":\"/tmp/data.json\",\"targetLocation\":\"/var/data/backup.json\",\"overwrite\":false}", + "description": "Uploading a local JSON file from one path to another on the local filesystem, without overwriting existing files." + }, + { + "inputJson": "{\"jsonContent\":\"{\\\"settings\\\":{\\\"theme\\\":\\\"dark\\\"}}\",\"uploadUrl\":\"https://api.example.com/config\",\"httpMethod\":\"PUT\"}", + "description": "Uploading JSON data to update configuration by sending a PUT request to a web service." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "file-operations.uploadTable", + "description": "Uploads a tabular data file (CSV, Excel, or JSON array) to a specified storage location. Accepts a file input or raw content string, validates format and optional schema, then stores the table data and returns a reference URL or identifier for future access.", + "category": "file-operations", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the file being uploaded, including extension (e.g., data.csv).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Raw string content of the tabular data file to upload (CSV, JSON array, or Excel base64).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type/format of the file content being uploaded (csv, json, xlsx).", + "required": true, + "defaultValue": "" + }, + { + "name": "storagePath", + "type": "string", + "description": "The target storage path or directory where the table file should be saved.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the table columns against a provided schema (if schema is given).", + "required": false, + "defaultValue": "false" + }, + { + "name": "schema", + "type": "object", + "description": "Optional schema definition outlining expected columns and data types.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the storage reference URL or identifier confirming successful upload." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to save or backup structured tabular data received as strings or files into persistent storage for subsequent processing or retrieval. It supports common table formats and offers optional schema validation to ensure data integrity before upload.", + "limitations": "Does not perform complex data transformations or cleaning beyond basic schema validation. Limited to uploading tabular data formats only. Does not support databases or streaming large datasets incrementally.", + "examples": [ + "Upload a CSV sales report file string to cloud storage under folder 'reports/2024'.", + "Store an Excel inventory spreadsheet encoded in base64 with optional schema validation on columns.", + "Save a JSON array as a table file named 'users.json' in a temp directory." + ] + }, + "tags": [ + "upload", + "file operations", + "table data", + "csv", + "excel", + "json", + "storage", + "validation" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"sales.csv\",\"fileContent\":\"name,amount,date\\nAlice,100,2024-01-01\\nBob,150,2024-01-02\",\"fileType\":\"csv\",\"storagePath\":\"reports/2024\",\"validateSchema\":false,\"schema\":{}}", + "description": "Uploading a simple CSV file containing sales data to the reports/2024 folder without schema validation." + }, + { + "inputJson": "{\"fileName\":\"inventory.xlsx\",\"fileContent\":\"UEsDBBQABgAIAAAAIQCzT98ytQEAAOEPAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAACAAAAAA\",\"fileType\":\"xlsx\",\"storagePath\":\"inventory\",\"validateSchema\":true,\"schema\":{\"columns\":[{\"name\":\"itemId\",\"type\":\"string\"},{\"name\":\"quantity\",\"type\":\"number\"}]}}", + "description": "Uploading an Excel inventory file with base64 content and validating against a given column schema." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "file-operations.uploadImage", + "description": "Uploads an image file to a specified storage location or service. Accepts image content via file path or base64 string, validates file type and size, optionally resizes or compresses the image, and returns a URL or identifier for the uploaded image.", + "category": "file-operations", + "parameters": [ + { + "name": "imageSource", + "type": "string", + "description": "Path to the image file on local disk or a base64 encoded image string.", + "required": true, + "defaultValue": "" + }, + { + "name": "destination", + "type": "string", + "description": "Target storage location identifier or URL endpoint for uploading the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Optional width to resize the image to, preserving aspect ratio if height not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Optional height to resize the image to, preserving aspect ratio if width not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "compressQuality", + "type": "number", + "description": "Optional compression quality percentage (1-100) to reduce image file size.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite the file if an image with the same name exists at destination.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the public URL or unique identifier of the uploaded image, the final image dimensions, and the file size in bytes." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload images from local or encoded sources to remote storage or CDN, optionally adjusting size or quality for optimized delivery. Useful for applications managing user avatars, product photos, or gallery images requiring automated image processing before upload.", + "limitations": "This tool cannot perform complex image editing beyond basic resizing and compression. It does not support uploading non-image files or handle authentication to storage services unless pre-configured.", + "examples": [ + "Upload a user profile picture from local disk and resize to 200x200 pixels.", + "Upload a base64-encoded product image string compressing it to 80% quality.", + "Upload an image file ensuring not to overwrite existing files at the target location." + ] + }, + "tags": [ + "upload", + "image", + "file-storage", + "image-processing", + "media", + "resize", + "compress" + ], + "examples": [ + { + "inputJson": "{\"imageSource\":\"/path/to/avatar.jpg\",\"destination\":\"s3://user-uploads/avatars/\",\"resizeWidth\":200,\"resizeHeight\":200,\"compressQuality\":85,\"overwriteExisting\":true}", + "description": "Upload a local avatar image to S3, resizing to 200x200 pixels and compressing quality to 85%, allowing overwrite." + }, + { + "inputJson": "{\"imageSource\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"destination\":\"https://example-cdn.com/uploads/\",\"compressQuality\":80}", + "description": "Upload a base64 PNG image string to a CDN endpoint, compressing the image to 80% quality with no resizing." + }, + { + "inputJson": "{\"imageSource\":\"/images/event-photo.png\",\"destination\":\"/var/www/html/uploads/\",\"overwriteExisting\":false}", + "description": "Upload a local event photo to a web server upload folder, refusing to overwrite if file exists." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "file-operations.uploadCode", + "description": "Uploads source code files to a designated remote repository or storage service. Accepts file content, file name, and destination details, performs validation and storage operations, and returns the upload status and metadata such as file URL or repository info.", + "category": "file-operations", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the code file to upload, including extension (e.g., script.js).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "The full code content of the file to be uploaded as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "destination", + "type": "object", + "description": "An object specifying where to upload the code, including type (e.g., repository, storage), URL or endpoint, and optional authentication info.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite an existing file with the same name at the destination if it exists.", + "required": false, + "defaultValue": "false" + }, + { + "name": "commitMessage", + "type": "string", + "description": "A message describing the changes or purpose of the upload, used if uploading to a version control repository.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the upload (success or failure), URL or path to the uploaded file, and any relevant metadata such as version or commit ID." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload source code files to a remote code repository (e.g., GitHub) or storage service (e.g., cloud bucket) as part of continuous integration, collaborative development, or deployment pipelines. It handles validation and communication with the remote service to confirm successful upload.", + "limitations": "Does not perform code compilation, syntax validation, or security scanning. Authentication credentials must be correctly provided in the destination object. Does not create repositories or storage buckets, only uploads to existing destinations.", + "examples": [ + "Upload a JavaScript file to a GitHub repository with a commit message.", + "Save a Python script to a cloud storage bucket without overwriting existing files.", + "Upload multiple code files sequentially to a remote version control system." + ] + }, + "tags": [ + "file", + "upload", + "code", + "repository", + "storage", + "source code", + "devops", + "automation" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"app.js\",\"fileContent\":\"console.log('Hello, world!');\",\"destination\":{\"type\":\"repository\",\"url\":\"https://github.com/user/project\",\"authToken\":\"ghp_exampletoken\"},\"overwrite\":true,\"commitMessage\":\"Add initial app.js file\"}", + "description": "Uploading a JavaScript file named app.js to a GitHub repository with overwrite enabled and a commit message." + }, + { + "inputJson": "{\"fileName\":\"script.py\",\"fileContent\":\"print('Data processing')\",\"destination\":{\"type\":\"storage\",\"url\":\"https://cloudstorage.example.com/bucket\",\"authToken\":\"token123\"},\"overwrite\":false,\"commitMessage\":\"\"}", + "description": "Uploading a Python script to a cloud storage bucket without overwriting if the file exists." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "file-operations.uploadHTML", + "description": "Uploads an HTML file or HTML content string to a specified storage location or web server endpoint. Accepts either a local file path or raw HTML content as input, performs validation to ensure valid HTML format, and then uploads the data to a target URL or storage service, returning a confirmation response including the upload status and accessible URL if applicable.", + "category": "file-operations", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to upload; if provided, takes precedence over filePath.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local path to an HTML file to upload; used if htmlContent is empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "uploadUrl", + "type": "string", + "description": "Destination URL or API endpoint where the HTML content should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token for secure upload endpoints, such as bearer tokens.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "MIME type of the uploaded content, typically 'text/html'.", + "required": false, + "defaultValue": "text/html" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite existing content at the destination if it exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the upload operation, any error messages, and the URL where the HTML content is accessible if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload HTML content or HTML files to web servers, content management systems, or storage services as part of web asset deployment or content updates. It supports both raw HTML strings and file-based inputs, allowing flexible workflows for web developers or automated systems managing web content.", + "limitations": "Does not perform comprehensive content sanitization or security scanning; the tool uploads as-is. It requires that the destination server accept uploads via HTTP requests with proper authentication if needed. Does not support large file chunking or resumable uploads.", + "examples": [ + "Upload a local index.html to a web server endpoint that requires an auth token.", + "Upload raw HTML content to a staging API URL without authentication.", + "Overwrite existing HTML content at a specified upload URL using raw HTML input." + ] + }, + "tags": [ + "upload", + "html", + "file-management", + "web-content", + "http", + "api", + "file-operations" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/local/path/to/page.html\",\"uploadUrl\":\"https://example.com/upload\",\"authToken\":\"Bearer abc123\",\"overwrite\":true}", + "description": "Uploads a local HTML file to a remote server with authentication, overwriting existing content." + }, + { + "inputJson": "{\"htmlContent\":\"Hello World\",\"uploadUrl\":\"https://example.com/api/upload\",\"contentType\":\"text/html\"}", + "description": "Uploads raw HTML string content to an API endpoint without authentication, default content type." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "HTML", + "context": null + } + }, + { + "name": "file-operations.uploadYAML", + "description": "Uploads a YAML file from a given file path or raw content to a specified destination, optionally validating its syntax and returning metadata about the upload. Accepts local file paths or YAML content as input, processes upload to a target directory or storage, and outputs success status and file info.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local filesystem path to the YAML file to upload. Required if rawContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawContent", + "type": "string", + "description": "Raw YAML content as a string to upload. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Target path or directory where the YAML file will be uploaded. If directory, original filename is preserved; if file path, uploaded file uses that name.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSyntax", + "type": "boolean", + "description": "Whether to validate YAML syntax before uploading to catch errors early.", + "required": false, + "defaultValue": "true" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Allow overwriting the destination file if it already exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object indicating upload success, file path, and optionally validation errors." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transfer or save YAML configuration or data files from local sources or raw content strings to a specified storage destination, with optional syntax validation to ensure YAML correctness before saving.", + "limitations": "Cannot upload files from remote URLs directly; content must be local or provided as raw string. Does not support editing or transforming YAML content beyond validation.", + "examples": [ + "Upload a local YAML file to a remote directory ensuring syntax is checked.", + "Upload YAML string content as a file to a specified path without overwriting existing files.", + "Validate and upload a YAML config file to a backup folder replacing old config if allowed." + ] + }, + "tags": [ + "file", + "upload", + "yaml", + "validation", + "configuration", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/local/configs/app.yaml\",\"destinationPath\":\"/remote/storage/configs/\",\"validateSyntax\":true,\"overwrite\":false}", + "description": "Upload a local YAML file to a remote directory with syntax validation and no overwrite." + }, + { + "inputJson": "{\"rawContent\":\"key: value\\nlist:\\n - item1\\n - item2\",\"destinationPath\":\"/remote/storage/data/settings.yaml\",\"validateSyntax\":true,\"overwrite\":true}", + "description": "Upload raw YAML content as a new file, validate syntax, and overwrite existing file if present." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "YAML", + "context": null + } + }, + { + "name": "file-operations.uploadXML", + "description": "Uploads an XML file to a specified storage destination. The tool accepts XML content either as a raw string or a file path, validates basic XML structure, and uploads the content to the target location such as a server, cloud storage or database. It returns an upload status including success confirmation and resource identifier.", + "category": "file-operations", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "Raw XML content as a string to upload. Required if xmlFilePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "xmlFilePath", + "type": "string", + "description": "Local file path to the XML file to upload. Required if xmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationType", + "type": "string", + "description": "Type of destination to upload to, e.g., \"server\", \"cloudStorage\", \"database\".", + "required": true, + "defaultValue": "server" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Target path or identifier at the destination where the XML file will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists at the destination.", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateXML", + "type": "boolean", + "description": "Whether to perform a structural XML validation before upload.", + "required": false, + "defaultValue": "true" + }, + { + "name": "authToken", + "type": "string", + "description": "Authorization token or key to authenticate upload requests if needed.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the upload operation, including success flag, message, and optionally the uploaded resource identifier or URL." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload XML data files to various storage destinations within automated workflows. It is suitable for transferring configuration files, data feeds, or reports in XML format to servers, cloud storage buckets, or databases requiring file import. The tool handles basic XML validation and supports authentication for secure uploads.", + "limitations": "This tool does not parse or transform XML content beyond basic validation. It cannot handle incremental or partial uploads of large XML files. It requires either raw content or a file path for input, and does not generate XML content itself.", + "examples": [ + "Upload an XML configuration file from local disk to a cloud storage bucket with overwrite enabled.", + "Upload XML content received as a string to a remote server, validating XML before upload.", + "Upload an XML feed to a database system using an authentication token." + ] + }, + "tags": [ + "file upload", + "XML", + "data transfer", + "cloud storage", + "server upload", + "file management" + ], + "examples": [ + { + "inputJson": "{\"xmlFilePath\":\"/local/path/config.xml\",\"destinationType\":\"cloudStorage\",\"destinationPath\":\"bucket/config.xml\",\"overwrite\":true}", + "description": "Upload an XML configuration file from local storage to a cloud storage bucket, overwriting existing file." + }, + { + "inputJson": "{\"xmlContent\":\"UserAdmin\",\"destinationType\":\"server\",\"destinationPath\":\"/uploads/note.xml\",\"validateXML\":true}", + "description": "Upload raw XML string content to a server path with validation." + }, + { + "inputJson": "{\"xmlFilePath\":\"/data/feed.xml\",\"destinationType\":\"database\",\"destinationPath\":\"feeds/xmlFeed\",\"authToken\":\"abcd1234\"}", + "description": "Upload XML feed file to a database destination using an authorization token." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "XML", + "context": null + } + }, + { + "name": "file-operations.uploadMarkdown", + "description": "Uploads Markdown content or Markdown files to a specified storage destination. Accepts raw Markdown text or a Markdown file path, processes any optional metadata, and stores the content securely. Returns an upload status with the storage location or error details.", + "category": "file-operations", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "Raw Markdown text to be uploaded directly. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local file system path of the Markdown file to upload. Required if markdownContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destination", + "type": "string", + "description": "The target storage location or URL where the Markdown content will be uploaded. Could be a cloud bucket, server path, or API endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs of metadata to associate with the Markdown content, e.g., tags, author, or description.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Flag indicating whether to overwrite existing content at the destination if it exists. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Upload status including success flag, message, and storage location or error information if upload failed" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload Markdown content, either generated dynamically or from existing files, to appropriate storage or web destinations, preserving any associated metadata and handling overwrite policies. This supports content management, publishing workflows, and data archival.", + "limitations": "This tool does not parse or validate Markdown syntax, nor does it convert Markdown to other formats; it only uploads raw Markdown content. The tool assumes access permissions to the destination are properly configured beforehand.", + "examples": [ + "Upload generated Markdown documentation to a project repository.", + "Upload a README.md file from local disk to a cloud storage bucket.", + "Upload Markdown content with metadata tags for categorization." + ] + }, + "tags": [ + "upload", + "markdown", + "file", + "content-management", + "storage", + "file-operations" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Project Title\\nThis is a sample markdown content.\",\"destination\":\"https://storage.example.com/project-docs/README.md\",\"overwrite\":true}", + "description": "Uploading raw Markdown text content to a cloud storage URL with overwrite enabled." + }, + { + "inputJson": "{\"filePath\":\"./docs/README.md\",\"destination\":\"/mnt/shared/docs/README.md\",\"metadata\":{\"author\":\"John Doe\",\"version\":\"1.0\"},\"overwrite\":false}", + "description": "Uploading a local Markdown file to a network shared folder with metadata and without overwriting existing files." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Markdown", + "context": null + } + }, + { + "name": "file-operations.uploadDataset", + "description": "Uploads a dataset file to a specified cloud storage or database endpoint. Accepts dataset files in common formats such as CSV, JSON, or Excel, validates basic structure, and stores them under a given project or folder name. Returns metadata about the upload including file size, type, and storage location URL.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local file system path to the dataset file to upload (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationType", + "type": "string", + "description": "Type of destination to upload to: 'cloudStorage' or 'database' (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Target path or connection string for upload destination, e.g., cloud folder path or database table name (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "File format of the dataset: 'csv', 'json', 'xlsx'. If not provided, deduced from file extension (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the dataset if it already exists at the destination (optional).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload metadata including fileName, fileSizeBytes, format, destinationUrl, and a success status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload datasets stored locally to a remote storage or database while ensuring correct format handling and metadata reporting. It is ideal for automating data ingestion in ML pipelines or data processing workflows.", + "limitations": "This tool does not perform deep content validation beyond basic format checks, nor does it transform or clean data. It only supports common file formats and predefined destination types. It requires existing access and permissions to the destination.", + "examples": [ + "Upload a CSV dataset located at '/data/sales.csv' to a cloud bucket named 'project-data' without overwriting existing files.", + "Upload an Excel dataset to a database table 'customer_info' overwriting any existing data.", + "Upload a JSON dataset to cloud storage, letting the tool detect format automatically from file extension." + ] + }, + "tags": [ + "upload", + "dataset", + "file", + "cloudStorage", + "database", + "dataIngestion", + "fileTransfer" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/tmp/data/customers.csv\",\"destinationType\":\"cloudStorage\",\"destinationPath\":\"projectX/datasets/customers/\",\"format\":\"csv\",\"overwrite\":false}", + "description": "Upload customers.csv dataset file to a cloud storage under projectX folder without overwriting existing data." + }, + { + "inputJson": "{\"filePath\":\"/home/user/records.xlsx\",\"destinationType\":\"database\",\"destinationPath\":\"sales_db.records\",\"format\":\"xlsx\",\"overwrite\":true}", + "description": "Upload an Excel dataset to the 'records' table in the sales_db database, overwriting any existing data." + }, + { + "inputJson": "{\"filePath\":\"/var/data/events.json\",\"destinationType\":\"cloudStorage\",\"destinationPath\":\"events_archive/2024/\",\"overwrite\":false}", + "description": "Upload a JSON dataset to cloud storage at 'events_archive/2024/', auto-detecting file format from extension." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "file-operations.uploadCSV", + "description": "Uploads a CSV file from a specified file path or raw content string, validates its structure optionally using provided delimiter and header presence info, and stores it to a target storage path or system. Returns status, uploaded file metadata, and any validation errors.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path of the CSV file to upload. Required if fileContent not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Raw CSV content as string. Required if filePath not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetPath", + "type": "string", + "description": "Destination path or storage URI where the CSV file should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used as field delimiter in the CSV file (e.g., ',', ';').", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the CSV content includes a header row.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateStructure", + "type": "boolean", + "description": "If true, validates CSV structure (consistency of columns) before upload.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Upload result status including success boolean, message, uploaded file metadata (like size and row count), and any validation errors encountered." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to programmatically upload CSV data from local storage or raw CSV content to a storage system, optionally validating format and headers to ensure consistent data ingestion before downstream processing.", + "limitations": "Does not parse or transform CSV data beyond structure validation; does not support uploading files other than CSV; requires either filePath or fileContent, but not both empty.", + "examples": [ + "Upload a CSV file from disk to cloud storage with validation.", + "Upload raw CSV string content and specify no header row.", + "Upload a semicolon-delimited CSV file while specifying the delimiter." + ] + }, + "tags": [ + "file-operations", + "upload", + "CSV", + "data-ingestion", + "validation" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/local/data/users.csv\",\"targetPath\":\"s3://bucket/data/users.csv\"}", + "description": "Uploads a CSV file located on local disk to an S3 bucket path, using default comma delimiter and header presence with validation." + }, + { + "inputJson": "{\"fileContent\":\"id;name;age\\n1;Alice;30\\n2;Bob;25\",\"targetPath\":\"/upload/users_semicolon.csv\",\"delimiter\":\";\",\"hasHeader\":true}", + "description": "Uploads raw CSV content with semicolon delimiter specifying header presence to a local upload directory." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "file-operations.uploadDocument", + "description": "Uploads a document file to a specified remote storage location. Accepts a file path or file content as input, along with metadata such as target storage location and optional tags. Processes the document by transferring it securely and returns confirmation details including upload status, file URL, and file ID.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local file system path to the document to upload. Should be an absolute or relative path.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Raw base64-encoded content of the document. Provide alternatively to filePath for direct data upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetStorage", + "type": "string", + "description": "The identifier or URL of the remote storage location where the document should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional name to assign to the uploaded document. If omitted and uploading via filePath, the original file name is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of strings for metadata tagging of the uploaded document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "If true, overwrite an existing document with the same name at the target storage. Otherwise, upload will fail if a conflict exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object containing upload status, URL of the stored document, a unique document ID, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when needing to upload document files such as PDFs, Word documents, or text files to remote storage systems for backup, sharing, or further processing. It supports input as either local file paths or direct content, with metadata tagging and overwrite options.", + "limitations": "This tool does not perform file format conversions or content validation beyond basic existence checks. It assumes the target storage service is accessible and properly configured for receiving uploads.", + "examples": [ + "Upload a local PDF file to cloud storage with tagging.", + "Upload a base64-encoded Word document content to a secure remote path.", + "Attempt to upload a document and overwrite if it already exists at the destination." + ] + }, + "tags": [ + "upload", + "document", + "file", + "storage", + "file-management", + "file-operations" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"./reports/annual_report.pdf\",\"targetStorage\":\"https://cloudstorage.example.com/docs\",\"tags\":[\"financial\",\"2023\"],\"overwrite\":false}", + "description": "Upload a local PDF document to remote cloud storage with specified tags, without overwriting existing files." + }, + { + "inputJson": "{\"fileContent\":\"JVBERi0xLjQKJcfs...\",\"fileName\":\"summary.docx\",\"targetStorage\":\"s3://company-docs/uploads\",\"overwrite\":true}", + "description": "Upload a base64-encoded Word document content directly to an S3 bucket path, overwriting any existing file named summary.docx." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "notifications.sendMessage", + "description": "Sends a customizable notification message to one or multiple recipients via specified channels like email, SMS, or push notifications. Accepts message content, recipient details, and delivery options, and returns the status of the message delivery to inform success or failure.", + "category": "notifications", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The main text content of the notification message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientIds", + "type": "array", + "description": "List of recipient identifiers (e.g., email addresses, phone numbers, or user IDs) to whom the message will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "The delivery channel to use for sending the message, such as 'email', 'sms', or 'push'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "subject", + "type": "string", + "description": "Optional subject of the message, typically used for email notifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message: 'low', 'normal', or 'high'. Affects delivery handling if supported.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying when to send the message. If omitted, message is sent immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional custom key-value data to attach with the message for tracking or analytics purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall status of the send operation, a mapping of recipient IDs to send statuses ('sent', 'failed'), and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically deliver notification messages across multiple channels such as email, SMS, or push notifications to users or customers. It supports both immediate and scheduled sends, message prioritization, and tracking metadata for enhanced notification workflows.", + "limitations": "This tool does not handle message templating or content personalization beyond the raw message content provided. It also depends on the external services or infrastructure availability for actual message delivery.", + "examples": [ + "Send an urgent SMS notification to a list of phone numbers right now.", + "Schedule an email message with a subject and metadata to be sent tomorrow morning.", + "Send a push notification message to specific user IDs with normal priority." + ] + }, + "tags": [ + "notifications", + "messaging", + "alerts", + "email", + "sms", + "push", + "schedule", + "priority" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"System maintenance will start at midnight.\",\"recipientIds\":[\"user1@example.com\",\"user2@example.com\"],\"channel\":\"email\",\"subject\":\"Maintenance Notice\",\"priority\":\"high\",\"scheduledTime\":\"\"}", + "description": "Send a high priority email notification immediately to two users alerting them of upcoming maintenance." + }, + { + "inputJson": "{\"messageContent\":\"Your verification code is 123456.\",\"recipientIds\":[\"+1234567890\"],\"channel\":\"sms\",\"priority\":\"normal\"}", + "description": "Send a normal priority SMS message containing a verification code to one phone number immediately." + }, + { + "inputJson": "{\"messageContent\":\"You have a new message!\",\"recipientIds\":[\"user_id_1001\"],\"channel\":\"push\",\"priority\":\"low\",\"scheduledTime\":\"2024-07-01T09:00:00Z\",\"metadata\":{\"campaign\":\"welcome\"}}", + "description": "Schedule a low priority push notification with metadata for analytics to be sent to a user at a specified time." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "file-operations.uploadReport", + "description": "Uploads a report file to a specified remote server or cloud storage. Accepts a file path and metadata, handles file validation and transmission, and returns the upload status and accessible URL or error details.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path to the report file to be uploaded", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "Remote URL or endpoint where the report will be uploaded", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata information about the report (e.g., title, author, date)", + "required": false, + "defaultValue": "{}" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Flag to allow overwriting an existing report at the destination if it exists", + "required": false, + "defaultValue": "false" + }, + { + "name": "authToken", + "type": "string", + "description": "Authorization token or credentials required for authentication with the destination", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the upload result status, URL of the uploaded report if successful, and error message if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload a local report file to a remote server or cloud storage as part of document management, archival, or sharing workflows. It is suitable for automating report submissions and ensuring file availability on specified endpoints.", + "limitations": "This tool does not process or modify the content of the report file beyond validation, and requires correct permissions and network access for uploading. It cannot handle interactive authentication flows or convert file formats.", + "examples": [ + "Upload the latest sales report PDF to the company report server with overwrite allowed.", + "Send a generated report file along with metadata to a cloud storage endpoint using an authentication token.", + "Upload a quarterly financial report to a remote URL without overwriting existing files." + ] + }, + "tags": [ + "file", + "upload", + "report", + "cloud", + "document", + "management", + "storage" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/home/user/reports/Q1_financial_summary.pdf\",\"destinationUrl\":\"https://reports.example.com/upload\",\"metadata\":{\"title\":\"Q1 Financial Summary\",\"author\":\"Jane Doe\",\"date\":\"2024-03-31\"},\"overwrite\":true,\"authToken\":\"abcd1234\"}", + "description": "Upload a local PDF report to a remote company server with metadata and overwrite enabled." + }, + { + "inputJson": "{\"filePath\":\"/tmp/generated_report.docx\",\"destinationUrl\":\"https://cloudstorage.example/api/upload\",\"metadata\":{},\"overwrite\":false,\"authToken\":\"\"}", + "description": "Upload a newly generated report to a cloud storage URL without metadata or authentication token and with no overwrite." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "notifications.sendComment", + "description": "Sends a comment notification to one or more users via specified channels. Accepts input including comment text, recipient identifiers, optional metadata like related task or post ID, and delivery preferences. Processes input to format and dispatch the notification, returning status and details of delivery for each recipient.", + "category": "notifications", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to be sent in the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientIds", + "type": "array", + "description": "Array of user IDs to whom the comment notification should be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedEntityId", + "type": "string", + "description": "Optional identifier for the related entity (e.g., task, post) that the comment is about.", + "required": false, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of notification channels to send through, e.g., ['email','sms','inApp'].", + "required": false, + "defaultValue": "[\"inApp\"]" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier of the user sending the comment notification, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification, e.g., 'normal' or 'high'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object with overall status and details per recipient, indicating whether notification was successfully sent and any errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to notify users about a new comment on a shared resource or discussion thread. It facilitates notifying multiple recipients through various channels, including in-app or external notifications. Appropriate for collaboration platforms, task management, or social apps.", + "limitations": "This tool does not create or store comments themselves, nor does it manage user preferences; it only sends notifications based on provided inputs. It cannot guarantee delivery beyond the success status returned from the notification channels.", + "examples": [ + "Send a comment notification to the team about a task update via email and in-app.", + "Notify a single user with a high priority comment alert only in-app.", + "Send a comment notification related to a blog post to multiple recipients via default in-app channel." + ] + }, + "tags": [ + "notification", + "comments", + "messaging", + "alerts", + "collaboration", + "multi-channel" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"Please review the latest update to the project plan.\",\"recipientIds\":[\"user123\",\"user456\"],\"relatedEntityId\":\"task789\",\"channels\":[\"email\",\"inApp\"],\"senderId\":\"user999\",\"priority\":\"normal\"}", + "description": "Send a standard comment notification to two users about a task via email and in-app." + }, + { + "inputJson": "{\"commentText\":\"Urgent: The server is down!\",\"recipientIds\":[\"admin001\"],\"channels\":[\"inApp\"],\"priority\":\"high\"}", + "description": "Send a high priority in-app comment notification to an admin user about an urgent issue." + }, + { + "inputJson": "{\"commentText\":\"New comment on your blog post.\",\"recipientIds\":[\"blogOwner\"],\"relatedEntityId\":\"post12345\"}", + "description": "Send a default in-app comment notification to blog owner about a new comment on their post." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "notifications.sendNotification", + "description": "Sends a notification message to specified recipients via chosen communication channels such as email, SMS, or push notifications. Accepts message content, recipient details, channel preferences, and optional metadata. Returns the send status and message IDs for tracking.", + "category": "notifications", + "parameters": [ + { + "name": "message", + "type": "string", + "description": "The content of the notification message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as email addresses, phone numbers, or user IDs.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "Communication channels to send the notification through, e.g., ['email', 'sms', 'push'].", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the notification, applicable for email or similar channels.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification such as 'low', 'normal', or 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional key-value pairs to include with the notification for tracking or contextual purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status, array of messageIds for sent notifications, and optionally error details if any failures occurred." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send alerts or messages to users or systems across multiple channels. Ideal for notifying users of important events, reminders, or updates in a flexible, multi-channel manner.", + "limitations": "This tool does not handle message content generation or formatting beyond accepting raw strings. Delivery depends on external channel integrations that may not guarantee instant or assured receipt.", + "examples": [ + "Send an email notification to a user about a scheduled maintenance.", + "Notify a user via SMS and push notification about a critical alert.", + "Send a low priority update message to multiple users via email." + ] + }, + "tags": [ + "notifications", + "alerts", + "communication", + "multi-channel", + "messaging", + "email", + "sms", + "push" + ], + "examples": [ + { + "inputJson": "{\"message\":\"Your appointment is confirmed for April 24 at 3 PM.\",\"recipients\":[\"user1@example.com\"],\"channels\":[\"email\"],\"subject\":\"Appointment Confirmation\",\"priority\":\"normal\"}", + "description": "Send an email notification confirming an appointment to a single recipient." + }, + { + "inputJson": "{\"message\":\"Server CPU usage has exceeded 90%.\",\"recipients\":[\"+1234567890\",\"user2@example.com\"],\"channels\":[\"sms\",\"email\"],\"priority\":\"high\"}", + "description": "Send a high priority alert via SMS and email to two recipients about server load." + }, + { + "inputJson": "{\"message\":\"Weekly newsletter is available.\",\"recipients\":[\"user3@example.com\"],\"channels\":[\"email\"],\"subject\":\"Weekly Newsletter\",\"priority\":\"low\"}", + "description": "Send a low priority weekly newsletter to a user via email." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "notifications.sendReply", + "description": "Sends a reply message to an existing notification thread or message, accepting input such as the recipient's contact details, message content, and optional attachment or metadata. It processes these inputs to deliver a reply notification and returns a status indicating success or failure along with any error messages.", + "category": "notifications", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Identifier of the existing notification thread or message to reply to.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Identifier or address of the intended recipient of the reply message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "Text content of the reply message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachments (e.g., file URLs or base64 strings) to include with the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata such as message priority, tags, or custom headers relevant to the reply.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "readReceiptRequested", + "type": "boolean", + "description": "Whether to request a read receipt from the recipient.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object describing the result of sending the reply, including success status, message ID, timestamp, and any error details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to respond to an existing notification, such as replying to a customer support message, acknowledging alerts, or continuing a conversational thread in a notification system. It allows automated or assisted communication within existing message contexts.", + "limitations": "This tool cannot compose original notifications or initiate new notification threads; it requires a valid existing thread or message identifier. It also does not handle scheduling delayed replies or rich media composition beyond simple attachments.", + "examples": [ + "Send a reply message to a user's query in a support ticket notification.", + "Automatically acknowledge receipt of an alert message with a confirmation reply.", + "Respond to a notification thread providing additional requested information." + ] + }, + "tags": [ + "notifications", + "messaging", + "reply", + "communication", + "alerts", + "automation" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"thread_12345\",\"recipientId\":\"user_67890\",\"messageContent\":\"Thank you for your message. We have escalated your request to our support team.\",\"attachments\":[],\"metadata\":{\"priority\":\"high\"},\"readReceiptRequested\":true}", + "description": "Reply to a user's support message in an existing notification thread, with priority marked and read receipt requested." + }, + { + "inputJson": "{\"threadId\":\"alert_98765\",\"recipientId\":\"admin_001\",\"messageContent\":\"Alert acknowledged. Our team is investigating the issue.\",\"attachments\":[],\"metadata\":{},\"readReceiptRequested\":false}", + "description": "Send an acknowledgment reply to an alert notification for an administrative user." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "notifications.sendMention", + "description": "Sends a mention notification to a user within a communication platform or system. Accepts the recipient's username or user ID, the content of the mention, context identifiers like channel or message ID, and optionally a mention type to tailor the notification format. Returns a status object indicating success or failure and a timestamp of delivery.", + "category": "notifications", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "The unique identifier or username of the user to mention (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The content of the mention or message that includes the user mention (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "channelId", + "type": "string", + "description": "Optional identifier of the channel or conversation where the mention occurs", + "required": false, + "defaultValue": "" + }, + { + "name": "contextMessageId", + "type": "string", + "description": "Optional identifier of the message that triggered the mention, if replying or referencing", + "required": false, + "defaultValue": "" + }, + { + "name": "mentionType", + "type": "string", + "description": "Optional type of mention to define notification style, e.g., 'direct', 'reply', or 'general'", + "required": false, + "defaultValue": "direct" + } + ], + "returns": { + "type": "object", + "description": "Contains success boolean, delivery timestamp ISO string, and optional error message if failed" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to alert or notify a specific user by tagging or mentioning them within a messaging or collaboration platform. This is useful to bring attention to a message, comment, or update directly relevant to that user in teams, chat rooms, or ticketing systems.", + "limitations": "Cannot ensure user presence or that the mention was seen; depends on platform capabilities. Does not support bulk mentions or mentions outside the integrated platform.", + "examples": [ + "Send a mention to user 'jsmith' with a message about upcoming deadline.", + "Mention a user in channel 'dev-updates' referencing a specific message ID.", + "Send a general mention without contextual message ID." + ] + }, + "tags": [ + "notifications", + "messaging", + "mentions", + "alerts", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"jsmith\",\"message\":\"Hey @jsmith, please review the updated specs.\",\"channelId\":\"dev-chat\",\"mentionType\":\"direct\"}", + "description": "Send a direct mention to user 'jsmith' in the 'dev-chat' channel with a call to action." + }, + { + "inputJson": "{\"recipientId\":\"alex\",\"message\":\"@alex replied to your comment.\",\"channelId\":\"project-discussion\",\"contextMessageId\":\"msg7890\",\"mentionType\":\"reply\"}", + "description": "Notify user 'alex' that their reply is posted referencing a specific message." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Mention", + "context": null + } + }, + { + "name": "notifications.sendChannel", + "description": "Sends a notification message through a specified communication channel such as email, SMS, or push notification. Accepts the target channel type, recipient details, message content, and optional metadata. Processes the inputs to deliver the message and returns the delivery status and message ID if successful.", + "category": "notifications", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "The communication channel to send the notification through (e.g., 'email', 'sms', 'push').", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "Identifier for the recipient depending on the channel (email address, phone number, or device token).", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The notification message content to be sent to the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Optional subject line for the notification, useful for email channels.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data such as priority level or custom tags to include with the notification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send action, unique message ID when available, and an error message if the send failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to notify a user or system via common communication channels with customizable message content and recipients. It allows dynamically choosing the channel and tailoring messages accordingly, supporting operational alerts, user notifications, and event triggers across multiple platforms.", + "limitations": "This tool does not handle message formatting beyond plain text or validate recipient contact formats beyond basic checks. It cannot guarantee delivery due to external factors such as provider outages or invalid recipient info. It does not store messages or support complex templating or batch sending inherently.", + "examples": [ + "Send an email notification to a user with a subject and message.", + "Send an SMS notification to a phone number with a short text message.", + "Send a push notification to a device token with a critical alert message." + ] + }, + "tags": [ + "notifications", + "send", + "communication", + "email", + "sms", + "push", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"email\",\"recipient\":\"user@example.com\",\"subject\":\"Account Alert\",\"message\":\"Your account password was changed successfully.\",\"metadata\":{\"priority\":\"high\"}}", + "description": "Sending a high-priority email notification to inform the user about a password change." + }, + { + "inputJson": "{\"channelType\":\"sms\",\"recipient\":\"+1234567890\",\"message\":\"Your verification code is 123456.\",\"metadata\":{}}", + "description": "Sending a SMS with a verification code to a user's phone number." + }, + { + "inputJson": "{\"channelType\":\"push\",\"recipient\":\"deviceToken_abc123\",\"message\":\"You have a new message in your inbox.\",\"metadata\":{\"category\":\"messages\"}}", + "description": "Sending a push notification about a new inbox message to a specific device token." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "notifications.sendAlert", + "description": "Sends a security alert notification to specified recipients via different channels like email, SMS, or push notifications. Accepts alert details including severity, message, and recipients, processes them by formatting the alert, and returns the sending status and message ID if applicable.", + "category": "notifications", + "parameters": [ + { + "name": "alertTitle", + "type": "string", + "description": "The title or subject of the security alert to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertMessage", + "type": "string", + "description": "Detailed message content describing the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity of the alert (e.g., low, medium, high, critical) that can determine notification priority.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "Array of recipient identifiers such as email addresses or phone numbers.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "Notification delivery channels (e.g., email, sms, push) to use for sending the alert.", + "required": true, + "defaultValue": "[\"email\"]" + }, + { + "name": "sendAt", + "type": "string", + "description": "Optional ISO 8601 date-time string indicating scheduled time to send the alert. Immediate if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, optional message ID, and error information if sending fails." + }, + "aiAgent": { + "useCase": "Use this tool to send timely security alerts or notifications to users or administrators when suspicious or critical events occur, ensuring appropriate recipients are informed via preferred communication channels.", + "limitations": "This tool does not generate alerts from raw data; it only sends pre-formed alert messages. It also does not store alert history or provide analytics on delivery performance.", + "examples": [ + "Send a critical alert about a detected intrusion to security team emails and SMS.", + "Notify admins about a medium severity vulnerability discovered in the system via email only.", + "Schedule a low severity informational alert to be sent tomorrow morning to system operators via push notification." + ] + }, + "tags": [ + "notifications", + "security", + "alerts", + "email", + "sms", + "push", + "reminders", + "critical" + ], + "examples": [ + { + "inputJson": "{\"alertTitle\":\"Intrusion Detected\",\"alertMessage\":\"Multiple failed login attempts detected from IP 192.168.1.22\",\"severityLevel\":\"critical\",\"recipients\":[\"secops@example.com\",\"+15551234567\"],\"channels\":[\"email\",\"sms\"]}", + "description": "Send a critical security alert about intrusion to email and SMS recipients." + }, + { + "inputJson": "{\"alertTitle\":\"Vulnerability Update\",\"alertMessage\":\"A medium severity vulnerability was identified in server X.\",\"severityLevel\":\"medium\",\"recipients\":[\"admin@example.com\"],\"channels\":[\"email\"]}", + "description": "Notify system admins about a medium severity vulnerability via email only." + }, + { + "inputJson": "{\"alertTitle\":\"Daily Security Reminder\",\"alertMessage\":\"Remember to update your passwords regularly.\",\"severityLevel\":\"low\",\"recipients\":[\"ops@example.com\"],\"channels\":[\"push\"],\"sendAt\":\"2024-06-30T08:00:00Z\"}", + "description": "Schedule a low severity daily reminder for operations team via push notification." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "notifications.sendThread", + "description": "Sends a notification message to a communication thread such as a chat room or discussion channel. Accepts thread identifier, message content, optional sender info, and delivery preferences; processes and posts the message to the designated thread; returns status and metadata of the sent notification.", + "category": "notifications", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier of the thread or channel to send the notification to.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Content of the notification message to be sent to the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "Name or identifier of the message sender (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "urgent", + "type": "boolean", + "description": "Flag indicating if the notification should be marked as urgent, possibly triggering special handling.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "List of URLs or references to attachments to include with the notification message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "silent", + "type": "boolean", + "description": "If true, sends the notification without alert sounds or banners.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, message ID, timestamp of sending, and optional error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to post updates, alerts, or messages directly into a communication thread or chat channel as notifications. It supports urgent flags and attachments to customize the notification's impact and content. Useful for team alerts, system warnings, or discussion starters.", + "limitations": "This tool does not support reading or fetching messages from threads, only sending. It cannot guarantee delivery beyond acknowledging sent status and does not handle user-specific notification preferences.", + "examples": [ + "Send an urgent alert to the dev team chat.", + "Post a daily summary message with report attachment.", + "Send a silent notification about system maintenance to ops channel." + ] + }, + "tags": [ + "notifications", + "communication", + "thread", + "messaging", + "alert", + "chat" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"dev-team-123\",\"message\":\"Urgent: The server will undergo maintenance at 10 PM.\",\"senderName\":\"System Alert\",\"urgent\":true}", + "description": "Send an urgent maintenance alert to the development team thread." + }, + { + "inputJson": "{\"threadId\":\"marketing-xyz\",\"message\":\"Here is the campaign report for last week.\",\"attachments\":[\"https://example.com/reports/week42.pdf\"],\"senderName\":\"MarketingBot\"}", + "description": "Post a message with a report attachment to the marketing team thread." + }, + { + "inputJson": "{\"threadId\":\"ops-channel\",\"message\":\"Scheduled downtime tomorrow.\",\"silent\":true}", + "description": "Send a silent notification about scheduled downtime to operations channel." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "notifications.sendEmail", + "description": "Sends an email notification to one or multiple recipients. Accepts parameters like recipient addresses, subject line, email body content (plaintext or HTML), optional CC and BCC lists, and attachments. Processes the inputs to format the email properly, sends it via an SMTP or configured email service, and returns a success status along with a message ID or error details.", + "category": "notifications", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "Array of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Content of the email message; can be plaintext or HTML formatted string.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional array of email addresses to be CC'd in the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional array of email addresses to be BCC'd in the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating whether the body content is in HTML format (true) or plaintext (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachments, each with filename and base64 encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "from", + "type": "string", + "description": "Optional sender email address; defaults to system-configured sender if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing a success boolean, a message ID if sent successfully, or error details if failed." + }, + "aiAgent": { + "useCase": "This tool should be used when the AI agent needs to send an email notification, alert, or message to specified recipients with customizable subject, body, and optional attachments. Ideal for transactional emails, alerts, updates, or notifications that require structured email delivery.", + "limitations": "This tool does not manage recipient verification or email content validation beyond formatting. It also cannot customize SMTP server settings beyond what's preconfigured, nor does it handle email inbox management or replies.", + "examples": [ + "Send a notification email to a user confirming their account signup.", + "Send a daily report email with an attached PDF to multiple stakeholders via CC.", + "Send an HTML formatted promotional email to a subscriber list with optional BCC." + ] + }, + "tags": [ + "notifications", + "email", + "communication", + "alerts", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Welcome to Our Service\",\"body\":\"Thank you for signing up!\",\"isHtml\":false}", + "description": "Send a simple plaintext welcome email to a single recipient." + }, + { + "inputJson": "{\"to\":[\"team@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Weekly Status Report\",\"body\":\"

Report

See attached.

\",\"isHtml\":true,\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"JVBERi0xLjcKJ...base64encodedpdf==\"}]}", + "description": "Send an HTML email with an attachment and CC to a team mailing list." + }, + { + "inputJson": "{\"to\":[\"customer1@example.com\",\"customer2@example.com\"],\"bcc\":[\"audit@example.com\"],\"subject\":\"Service Update\",\"body\":\"The service will be down for maintenance tonight.\",\"isHtml\":false}", + "description": "Send a plaintext notification email to multiple recipients with a BCC for audit purposes." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "messaging.sendReply", + "description": "Sends a reply message within an existing chat or conversation thread. Accepts the conversation or message ID, the reply content, and optional metadata like attachments or mentions. Processes the input by posting the reply in context and returns the status and sent message details.", + "category": "messaging", + "parameters": [ + { + "name": "conversationId", + "type": "string", + "description": "ID of the conversation or thread to which the reply is sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyToMessageId", + "type": "string", + "description": "ID of the specific message being replied to within the conversation.", + "required": false, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "Text content of the reply message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment objects (e.g., files, images) to include in the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mentions", + "type": "array", + "description": "Optional list of user IDs to mention directly in the reply message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sendAsHtml", + "type": "boolean", + "description": "Flag indicating if messageContent includes HTML formatting to render.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the status of the send operation, the ID of the newly created reply message, timestamp, and any error details if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send a reply message in an ongoing chat or messaging conversation, for example to answer user queries, continue discussions, or provide context-specific responses within a thread.", + "limitations": "This tool cannot initiate new conversations or send messages outside of an existing conversation context. It also does not handle message editing or deletion.", + "examples": [ + "Send a reply to a user's question within a support chat thread.", + "Reply to a specific message with an attached image in a group chat.", + "Mention specific users in a reply message to notify them in the conversation." + ] + }, + "tags": [ + "messaging", + "reply", + "chat", + "conversation", + "real-time", + "communication", + "integration" + ], + "examples": [ + { + "inputJson": "{\"conversationId\":\"conv12345\",\"replyToMessageId\":\"msg67890\",\"messageContent\":\"Thank you for your message! We'll look into it.\",\"attachments\":[],\"mentions\":[],\"sendAsHtml\":false}", + "description": "Replying with a simple text thank-you message to a specific message in a conversation." + }, + { + "inputJson": "{\"conversationId\":\"groupchat567\",\"messageContent\":\"Here's the report you asked for.\",\"attachments\":[{\"type\":\"file\",\"url\":\"https://fileserver.com/report.pdf\",\"fileName\":\"report.pdf\"}],\"mentions\":[\"user789\"],\"sendAsHtml\":false}", + "description": "Sending a reply in a group chat that includes a file attachment and mentions a user." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "messaging.sendThread", + "description": "Sends a complete thread of messages to a specified chat or messaging channel. Accepts a thread ID or array of message objects with sender, content, and timestamps; posts the entire conversation context to the target destination, enabling bulk or replayed message delivery. Returns confirmation of successful delivery and message IDs.", + "category": "messaging", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier of the thread to send; if provided, messages are fetched automatically.", + "required": false, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "Array of message objects to send as a thread; overrides threadId if provided. Each message includes sender, content, and timestamp.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationChannelId", + "type": "string", + "description": "Identifier of the channel or chat to which the thread will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveTimestamps", + "type": "boolean", + "description": "Whether to preserve original message timestamps in the sent thread (true) or use current sending time (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "notifyUsers", + "type": "boolean", + "description": "If true, users involved in the thread will receive notifications for the newly sent messages.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a status string indicating success or failure, the destination channel ID, and an array of sent message IDs confirming delivery." + }, + "aiAgent": { + "useCase": "Use this tool when needing to send or replicate an entire conversation thread from one channel or thread to another, such as migrating conversations, reposting historic chat context, or bulk message sending with context intact. It handles multiple messages atomically, preserving order and optionally timestamps.", + "limitations": "Cannot fetch messages from threads without valid threadId or messages array; message format must be valid. Does not perform message content moderation or transformations. Delivery depends on destination channel permissions and availability.", + "examples": [ + "Send an archived chat thread to a new project channel for team onboarding.", + "Replay a discussion from a support ticket thread to an escalation channel.", + "Bulk-send messages from exported chat logs to recreate conversation in backup system." + ] + }, + "tags": [ + "messaging", + "thread", + "send", + "chat", + "conversation", + "bulk-send" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"thread-12345\",\"destinationChannelId\":\"channel-6789\",\"preserveTimestamps\":true,\"notifyUsers\":false}", + "description": "Send an existing thread identified by thread-12345 to channel-6789, preserving original timestamps and disabling user notifications." + }, + { + "inputJson": "{\"messages\":[{\"sender\":\"user1\",\"content\":\"Hello team!\",\"timestamp\":1685967600000},{\"sender\":\"user2\",\"content\":\"Hi! How can I help?\",\"timestamp\":1685967660000}],\"destinationChannelId\":\"channel-9876\",\"preserveTimestamps\":false,\"notifyUsers\":true}", + "description": "Send a custom array of messages as a thread to channel-9876, using current timestamp and notifying users." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "messaging.sendComment", + "description": "Sends a text comment to a specified channel or thread within a real-time messaging system. Accepts inputs including the message content, target channel or thread ID, and optional metadata like user identity or reply references. Processes formatting and delivers the comment to the messaging backend, returning a confirmation of delivery and the unique comment ID.", + "category": "messaging", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The text content of the comment to send. Supports plain text and basic formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelId", + "type": "string", + "description": "Identifier of the channel or conversation where the comment should be posted.", + "required": true, + "defaultValue": "" + }, + { + "name": "threadId", + "type": "string", + "description": "Optional identifier of the parent thread to reply within a thread context.", + "required": false, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier representing the user sending the comment, for authentication or attribution.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of file or media attachments metadata to include with the comment.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mentionUserIds", + "type": "array", + "description": "Optional array of user IDs to mention/highlight in the comment text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "formatting", + "type": "string", + "description": "Optional formatting style or markup language for the comment (e.g., markdown, HTML).", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the sent comment, including unique comment ID, timestamp, and status confirmation." + }, + "aiAgent": { + "useCase": "Use this tool whenever your goal is to post a new comment or message in a real-time chat or messaging platform, especially to notify others, continue a conversation thread, or log communication. It handles both new channel messages and threaded replies with optional mentions or attachments.", + "limitations": "This tool does not handle editing or deleting comments after sending, nor does it guarantee delivery beyond confirmation from the messaging backend. It cannot translate or generate comment content automatically.", + "examples": [ + "Send a new comment to channel 'general' with a greeting message.", + "Reply to a specific thread in a project channel with feedback.", + "Post a comment including mentions and an image attachment in a team chat." + ] + }, + "tags": [ + "messaging", + "send", + "comment", + "chat", + "real-time", + "thread", + "mention" + ], + "examples": [ + { + "inputJson": "{\"content\":\"Hello team, please review the latest update.\",\"channelId\":\"general\",\"userId\":\"user_123\"}", + "description": "Send a simple comment with a greeting to the 'general' channel." + }, + { + "inputJson": "{\"content\":\"I agree with the above point.\",\"channelId\":\"project-x\",\"threadId\":\"thread789\",\"userId\":\"user_456\"}", + "description": "Reply within a specific thread in the 'project-x' channel." + }, + { + "inputJson": "{\"content\":\"FYI @john_doe, here's the report.\",\"channelId\":\"team-chat\",\"mentionUserIds\":[\"john_doe\"],\"attachments\":[{\"type\":\"image\",\"url\":\"http://example.com/report.png\"}],\"userId\":\"user_789\"}", + "description": "Send a comment mentioning a user and attaching an image in a team chat." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "messaging.sendChannel", + "description": "Sends a text message to a specified messaging channel in a chat or collaboration platform. It accepts channel ID or name, message content, optional attachments or mentions, then posts the message via the platform's API. Returns confirmation status with message ID and timestamp.", + "category": "messaging", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Unique identifier of the target channel to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageText", + "type": "string", + "description": "The text content of the message to send to the channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects such as images, files, or rich media to include with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mentions", + "type": "array", + "description": "Optional array of user IDs or usernames to mention in the message for notifications.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the message, e.g., 'normal', 'high'; influences notification behavior if supported.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "The result object containing status of sending, message unique identifier, channel, and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to post information, alerts, or responses into a team or public chat channel for communication or notification purposes.", + "limitations": "Does not support editing or deleting messages once sent; message formatting is limited to supported platform features; cannot send to private channels without proper permissions.", + "examples": [ + "Send a status update message to the project channel.", + "Notify a team channel of an important alert with user mentions.", + "Post a daily report with an attachment to a specific chat channel." + ] + }, + "tags": [ + "messaging", + "send", + "channel", + "chat", + "communication", + "notification", + "integration" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"proj-team-123\",\"messageText\":\"Deployment completed successfully.\",\"attachments\":[],\"mentions\":[]}", + "description": "Send a simple text message notifying deployment success to project team channel." + }, + { + "inputJson": "{\"channelId\":\"alerts-001\",\"messageText\":\"Urgent: Server CPU usage over 90%!\",\"attachments\":[],\"mentions\":[\"adminUser1\",\"devOpsLead\"]}", + "description": "Send an urgent alert message mentioning admins in the alerts channel." + }, + { + "inputJson": "{\"channelId\":\"reports-2024\",\"messageText\":\"Here is the weekly usage report.\",\"attachments\":[{\"type\":\"file\",\"url\":\"https://fileserver.com/report.pdf\",\"filename\":\"usage_report.pdf\"}],\"mentions\":[]}", + "description": "Send a weekly report with a PDF attachment to the reports channel." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "messaging.sendMention", + "description": "Sends a mention notification in a real-time messaging channel or conversation by tagging one or more users in a message. Accepts channel or conversation ID, user identifiers to mention, and message content, then posts the composed message with mentions. Returns message ID and status confirmation.", + "category": "messaging", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "The unique identifier of the messaging channel or conversation where the mention will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "userIds", + "type": "array", + "description": "Array of user identifiers to mention/tag in the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageText", + "type": "string", + "description": "The content of the message to send, which will include mentions of specified users.", + "required": true, + "defaultValue": "" + }, + { + "name": "silent", + "type": "boolean", + "description": "If true, sends the mention message without triggering notification sounds for mentioned users.", + "required": false, + "defaultValue": "false" + }, + { + "name": "threadId", + "type": "string", + "description": "Optional thread or parent message ID to send this mention as a reply within a thread.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique identifier of the sent message and a status indicating success or failure." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to notify or draw specific users' attention within a messaging platform by directly mentioning them, ensuring the message is received in context. Useful for collaborative environments, task updates, or alerting team members in chats.", + "limitations": "This tool cannot create channels or retrieve user IDs; it only sends mentions in existing channels. It can't guarantee message delivery if users have notification settings that suppress mentions.", + "examples": [ + "Mention user(s) in a project update channel to alert about a new task assignment.", + "Send a mention within a thread to request clarification from a specific user.", + "Notify multiple team members in a general chat by sending a message tagging them all." + ] + }, + "tags": [ + "messaging", + "mention", + "notification", + "real-time", + "chat", + "collaboration", + "tagging" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"channel_12345\",\"userIds\":[\"user_6789\"],\"messageText\":\"@user_6789 Please review the latest design doc.\"}", + "description": "Mention a single user in the general project discussion channel to request document review." + }, + { + "inputJson": "{\"channelId\":\"team_chat_987\",\"userIds\":[\"user_123\",\"user_456\"],\"messageText\":\"@user_123 @user_456 Please confirm your availability for the meeting.\",\"silent\":true}", + "description": "Send a silent mention to two team members asking about meeting availability in the team chat." + }, + { + "inputJson": "{\"channelId\":\"support_channel\",\"userIds\":[\"agent007\"],\"messageText\":\"@agent007 Can you please check the status of ticket #54321?\",\"threadId\":\"msg_7890\"}", + "description": "Mention a specific support agent in a reply within a support ticket thread to check ticket status." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Mention", + "context": null + } + }, + { + "name": "email-communication.sendReply", + "description": "Sends a reply email to a specified original message. Accepts the original email ID or message reference, the reply content, optional subject override, attachments, and options for CC/BCC. Processes formatting and sends the reply maintaining email threading. Returns status and message ID of the sent reply.", + "category": "email-communication", + "parameters": [ + { + "name": "originalMessageId", + "type": "string", + "description": "The unique identifier of the original email message to which this is a reply.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyContent", + "type": "string", + "description": "The body content of the reply email, supports plain text or HTML markup.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Optional override for the email subject of the reply. If empty, original subject with 'Re:' prefix is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "Optional array of email addresses to CC on the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccRecipients", + "type": "array", + "description": "Optional array of email addresses to BCC on the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachments to include in the reply email, each with filename and base64 content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating if the replyContent is formatted as HTML (true) or plain text (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, message ID of the sent reply, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send a contextual reply to an existing email thread, preserving original conversation context and formatting. Suitable for automating customer support replies, user notifications, or assistant responses to received emails.", + "limitations": "Cannot compose an initial email unrelated to a previous message. Does not handle complex template rendering beyond supplied replyContent. Attachment size limits and recipient validation must be managed externally.", + "examples": [ + "Reply to a customer support email confirming issue resolution.", + "Send a quick follow-up answer to a meeting scheduling email.", + "Include an attachment in a reply email to a project discussion." + ] + }, + "tags": [ + "email", + "reply", + "communication", + "automation", + "customer-support", + "threading" + ], + "examples": [ + { + "inputJson": "{\n \"originalMessageId\": \"abc123xyz\",\n \"replyContent\": \"Thank you for your message. We have resolved the issue you reported.\",\n \"subject\": \"\",\n \"ccRecipients\": [],\n \"bccRecipients\": [],\n \"attachments\": [],\n \"isHtml\": false\n}", + "description": "Send a plain text reply confirming issue resolution without changing subject or adding recipients." + }, + { + "inputJson": "{\n \"originalMessageId\": \"msg789\",\n \"replyContent\": \"

Please find the attached report as requested.

\",\n \"subject\": \"Project Report Attached\",\n \"ccRecipients\": [\"manager@example.com\"],\n \"bccRecipients\": [],\n \"attachments\": [{\"filename\": \"report.pdf\", \"contentBase64\": \"JVBERi0xLjQKJ...\"}],\n \"isHtml\": true\n}", + "description": "Send an HTML reply with an attachment and custom subject, CC'ing the manager." + }, + { + "inputJson": "{\n \"originalMessageId\": \"email001\",\n \"replyContent\": \"Looking forward to our meeting next week.\",\n \"subject\": \"\",\n \"ccRecipients\": [],\n \"bccRecipients\": [\"hr@example.com\"],\n \"attachments\": [],\n \"isHtml\": false\n}", + "description": "Send a plain text reply with a BCC recipient and default reply subject." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "messaging.sendMessage", + "description": "Sends a real-time message to a specified chat channel or user. Accepts inputs like recipient ID, message content, and optional metadata such as attachments or priority flags. Processes the inputs to deliver the message via the messaging platform and returns a message status with delivery details.", + "category": "messaging", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "The unique identifier of the target user or channel to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageText", + "type": "string", + "description": "The text content of the message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects containing URLs or base64 encoded content to include with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isUrgent", + "type": "boolean", + "description": "Flag indicating if the message should be marked as urgent or high priority.", + "required": false, + "defaultValue": "false" + }, + { + "name": "formatting", + "type": "string", + "description": "Optional parameter indicating the message formatting style like markdown or plain text.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "sendAsUserId", + "type": "string", + "description": "Optional user ID to send the message on behalf of; if not set, sends as system or bot user.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing message delivery status information including success flag, message ID, timestamp, and an error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically send messages in real time to specific users or channels within a chat or messaging platform, such as notifications, alerts, or chat responses. It supports both text and attachments, as well as urgency marking, allowing for versatile messaging scenarios.", + "limitations": "This tool does not handle message retrieval, editing, or deletion. It also does not manage user presence or multi-channel broadcasting beyond individual recipient IDs.", + "examples": [ + "Send a welcome message to a new user with optional attachments.", + "Notify a support agent with an urgent alert message.", + "Post a formatted markdown announcement to a group chat." + ] + }, + "tags": [ + "messaging", + "real-time", + "send", + "chat", + "notification", + "text", + "attachments" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user_12345\",\"messageText\":\"Hello! Your appointment is confirmed for tomorrow at 10 AM.\",\"attachments\":[],\"isUrgent\":false,\"formatting\":\"plain\",\"sendAsUserId\":\"\"}", + "description": "Send a simple appointment confirmation message to a user." + }, + { + "inputJson": "{\"recipientId\":\"channel_support\",\"messageText\":\"**Urgent:** Server outage detected. Immediate action required.\",\"attachments\":[],\"isUrgent\":true,\"formatting\":\"markdown\",\"sendAsUserId\":\"bot_system\"}", + "description": "Send an urgent markdown-formatted alert to support channel from system bot." + }, + { + "inputJson": "{\"recipientId\":\"user_67890\",\"messageText\":\"Here's the report you requested.\",\"attachments\":[{\"type\":\"pdf\",\"url\":\"https://example.com/report.pdf\"}],\"isUrgent\":false,\"formatting\":\"plain\",\"sendAsUserId\":\"user_manager\"}", + "description": "Send a plain text message with a PDF report attachment on behalf of a manager." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "messaging.sendNotification", + "description": "Sends a real-time notification message to one or more users or devices. Accepts parameters such as recipient IDs, message content, notification type, and optional metadata for context or display customization. Returns a status indicating success or failure for each recipient along with any error messages.", + "category": "messaging", + "parameters": [ + { + "name": "recipientIds", + "type": "array", + "description": "Array of recipient user or device IDs to send the notification to.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title or headline of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The main content or body of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "The category or type of notification (e.g., 'info', 'warning', 'alert').", + "required": false, + "defaultValue": "info" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification ('low', 'normal', 'high').", + "required": false, + "defaultValue": "normal" + }, + { + "name": "silent", + "type": "boolean", + "description": "If true, sends the notification silently without sound or vibration.", + "required": false, + "defaultValue": "false" + }, + { + "name": "dataPayload", + "type": "object", + "description": "Additional key-value pairs to include in the notification for handling on client side.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the success status and error info for each recipient." + }, + "aiAgent": { + "useCase": "Use this tool when you need to deliver timely alerts, messages, or updates directly to users' devices or sessions, such as app notifications, system alerts, or chat updates. It is ideal when you know recipient identifiers and want to customize notification appearance or behavior.", + "limitations": "Does not handle scheduling future notifications or batch queuing. Does not support rich media attachments (images, sounds). Relies on existing recipient IDs and available messaging infrastructure.", + "examples": [ + "Send a high priority alert to multiple users about system downtime.", + "Send a silent update notification with additional data to one device.", + "Notify users about a new chat message with customized title and message content." + ] + }, + "tags": [ + "messaging", + "notification", + "real-time", + "alert", + "push" + ], + "examples": [ + { + "inputJson": "{\"recipientIds\":[\"user123\",\"user456\"],\"title\":\"System Maintenance\",\"message\":\"Scheduled maintenance at midnight.\",\"notificationType\":\"alert\",\"priority\":\"high\"}", + "description": "Send a high priority alert notification to multiple users about maintenance." + }, + { + "inputJson": "{\"recipientIds\":[\"device789\"],\"title\":\"Background Sync\",\"message\":\"Your data has been synced.\",\"silent\":true}", + "description": "Send a silent notification to a device confirming background data sync." + }, + { + "inputJson": "{\"recipientIds\":[\"user321\"],\"title\":\"New Message\",\"message\":\"You have a new chat message from Alice.\",\"dataPayload\":{\"chatId\":\"chat987\"}}", + "description": "Notify a user about a new chat message including chat context data." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "messaging.sendAlert", + "description": "Sends a security alert message to specified users or channels in a messaging platform. Accepts alert content, severity levels, target recipients, and optional metadata. Processes the input to format the alert and delivers a confirmation response on success or failure.", + "category": "messaging", + "parameters": [ + { + "name": "alertTitle", + "type": "string", + "description": "Title or headline of the alert message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertMessage", + "type": "string", + "description": "Detailed text content of the security alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity classification of the alert such as 'info', 'warning', 'critical'.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "Array of user IDs, usernames, or channel identifiers who will receive the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of channel for delivery such as 'direct', 'group', or 'broadcast'.", + "required": false, + "defaultValue": "direct" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional key-value pairs providing context or tags for the alert.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing status of the alert sending process including success flag, message ID if successful, and error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when a security issue or important system event needs to be communicated promptly to specific users or groups in a messaging environment. Suitable for real-time alerting of incidents, warnings, or operational notifications requiring immediate attention.", + "limitations": "This tool does not analyze or generate alert content. It assumes alert content and recipient identifiers are valid and properly formatted. It cannot escalate or route alerts beyond the provided recipients.", + "examples": [ + "Send a critical security breach alert to the security team channels.", + "Notify direct users about a scheduled maintenance alert at warning level.", + "Broadcast an informational alert about system health to all users." + ] + }, + "tags": [ + "messaging", + "security", + "alert", + "notification", + "real-time", + "incident-management", + "chat" + ], + "examples": [ + { + "inputJson": "{\"alertTitle\":\"Unauthorized Access Detected\",\"alertMessage\":\"Multiple failed login attempts detected from IP 192.168.1.100.\",\"severityLevel\":\"critical\",\"recipients\":[\"security_team\", \"admin_group\"],\"channelType\":\"group\"}", + "description": "Send a critical alert about unauthorized access attempts to security team and admins in a group channel." + }, + { + "inputJson": "{\"alertTitle\":\"Scheduled Maintenance\",\"alertMessage\":\"System patching will occur tonight at 11 PM.\",\"severityLevel\":\"info\",\"recipients\":[\"user123\"],\"channelType\":\"direct\"}", + "description": "Send an informational alert to one user about upcoming maintenance in a direct message." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "messaging.sendEmail", + "description": "Sends an email message to one or multiple recipients accepting inputs such as recipient addresses, subject, message body (plain text or HTML), and optional attachments. It processes the inputs by formatting the email and using an SMTP or email service to send the message, returning a confirmation with message ID and status.", + "category": "messaging", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses to send the email to (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of CC recipients' email addresses (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of BCC recipients' email addresses (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Content of the email body, supports plain text or HTML format (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "True if the email body is HTML formatted, false if plain text (optional, default false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments, each with name and base64-encoded content (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "from", + "type": "string", + "description": "Email address of the sender. If not provided, uses default configured sender (optional).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing messageId (string) identifying the sent email and status (string) indicating success or failure with error messages if any." + }, + "aiAgent": { + "useCase": "This tool is appropriate for AI agents needing to send emails programmatically, such as for notifications, alerts, user communications, or transactional emails. It is useful when the agent has email content ready and recipient information and requires reliable delivery via an email service.", + "limitations": "This tool does not handle email receiving, inbox management, email templating or localization. It cannot guarantee delivery beyond successful handoff to the email service. Attachments must be encoded and provided by the caller.", + "examples": [ + "Send a welcome email to a new user with personalized subject and body.", + "Notify multiple team members with CC and BCC about a project update including attached report.", + "Send a plain text password reset email from a specified sender address." + ] + }, + "tags": [ + "messaging", + "email", + "send", + "communication", + "notification", + "transactional" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Welcome to Our Service\",\"body\":\"Hello User,\\nThank you for signing up!\",\"isHtml\":false}", + "description": "Send a simple plain text welcome email to a single recipient." + }, + { + "inputJson": "{\"to\":[\"team1@example.com\",\"team2@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[\"audit@example.com\"],\"subject\":\"Project Update\",\"body\":\"

Update

The project is on track.

\",\"isHtml\":true,\"attachments\":[{\"name\":\"report.pdf\",\"content\":\"JVBERi0xLjQKJcfs...\"}]}", + "description": "Send an HTML email including CC, BCC, and an attached PDF report to a team." + }, + { + "inputJson": "{\"from\":\"noreply@example.com\",\"to\":[\"user@example.com\"],\"subject\":\"Password Reset\",\"body\":\"Your password reset code is 123456.\",\"isHtml\":false}", + "description": "Send a password reset email from a specific no-reply sender address." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "email-communication.sendChannel", + "description": "Sends an email through a specified communication channel such as SMTP or an API-based service. Accepts email details including recipients, subject, body, and optional attachments; processes the sending via the chosen channel; returns a status report including success confirmation and message ID or error details.", + "category": "email-communication", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of email sending channel to use (e.g., 'SMTP', 'SendGrid', 'Mailgun').", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpConfig", + "type": "object", + "description": "SMTP configuration object including host, port, username, password (required if channelType is SMTP).", + "required": false, + "defaultValue": "" + }, + { + "name": "apiKey", + "type": "string", + "description": "API key for the email service provider (required if channelType uses API).", + "required": false, + "defaultValue": "" + }, + { + "name": "fromAddress", + "type": "string", + "description": "Email address of the sender.", + "required": true, + "defaultValue": "" + }, + { + "name": "toAddresses", + "type": "array", + "description": "Array of recipient email addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccAddresses", + "type": "array", + "description": "Array of CC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccAddresses", + "type": "array", + "description": "Array of BCC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main body content of the email (supports plain text or HTML).", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects, each with filename and content (base64 or file path).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns a result object with keys: success (boolean), messageId (string if sent), error (string if failed)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to send an email message through a specified sending channel with full control over recipients, subject, content, and attachments. It supports SMTP or API-based providers, enabling flexible email automation.", + "limitations": "Does not handle email template rendering or dynamic personalization; assumes valid SMTP/API credentials are provided. Does not guarantee deliverability, only submission status.", + "examples": [ + "Send a transactional email to a user via SMTP server.", + "Send a marketing email through SendGrid API with multiple recipients and attachments.", + "Send a confirmation email with CC and BCC recipients using a configured SMTP channel." + ] + }, + "tags": [ + "email", + "send", + "communication", + "automation", + "SMTP", + "API", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"SMTP\",\"smtpConfig\":{\"host\":\"smtp.example.com\",\"port\":587,\"username\":\"user\",\"password\":\"pass\"},\"fromAddress\":\"noreply@example.com\",\"toAddresses\":[\"user1@example.com\"],\"ccAddresses\":[],\"bccAddresses\":[],\"subject\":\"Welcome to Our Service\",\"body\":\"Hello, welcome!\",\"attachments\":[]}", + "description": "Send a welcome email to one recipient using SMTP." + }, + { + "inputJson": "{\"channelType\":\"SendGrid\",\"apiKey\":\"SG.xxxxxxxx\",\"fromAddress\":\"marketing@example.com\",\"toAddresses\":[\"client1@example.com\",\"client2@example.com\"],\"ccAddresses\":[\"manager@example.com\"],\"bccAddresses\":[],\"subject\":\"Our Latest Offers\",\"body\":\"

Check out our new offers!

\",\"attachments\":[{\"filename\":\"promo.pdf\",\"content\":\"base64encodedstring\"}]}", + "description": "Send a marketing email with an attachment via SendGrid API." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "email-communication.sendAlert", + "description": "Sends a security alert email to specified recipients with customizable subject, message, and priority level. Accepts list of email addresses, subject line, message body, and optionally attachments and priority tags. Processes the inputs by formatting the email, then dispatches it through the configured SMTP service. Returns delivery status for tracking.", + "category": "email-communication", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses for the alert. Must be valid emails.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the security alert email.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content of the security alert email. Supports plain text or limited HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the alert email; e.g., 'High', 'Medium', 'Low'.", + "required": false, + "defaultValue": "Medium" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of file paths or URLs to attach to the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "Optional list of email addresses to be carbon copied.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccRecipients", + "type": "array", + "description": "Optional list of email addresses to be blind carbon copied.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Object containing overall success status and per-recipient delivery results including any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to notify security teams or stakeholders of critical or informational security events via email. Suitable for automated alerts triggered by monitoring systems or AI-analyzed incidents to ensure timely awareness and response.", + "limitations": "This tool does not analyze security events or determine alert content; it only sends provided alert content via email. It does not guarantee delivery due to external email system factors and does not handle two-way email communication or escalation logic.", + "examples": [ + "Send a high priority email alert to the security operations team with an incident summary and attached logs.", + "Notify IT management with medium priority about a scheduled maintenance alert.", + "Send a low priority email to multiple recipients informing them of a resolved security issue." + ] + }, + "tags": [ + "email", + "security", + "alert", + "automation", + "notification", + "communication", + "priority", + "attachments" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"secops@example.com\"],\"subject\":\"Critical: Unauthorized Access Detected\",\"messageBody\":\"An unauthorized login attempt was detected on server X at 03:15 UTC.\",\"priority\":\"High\",\"attachments\":[\"/var/logs/auth_log.txt\"]}", + "description": "Send a high priority alert email with an attachment to the security operations team." + }, + { + "inputJson": "{\"recipients\":[\"itmanager@example.com\"],\"subject\":\"Scheduled Security Maintenance Notification\",\"messageBody\":\"The firewall will undergo scheduled maintenance on March 5th from 2-4 AM.\",\"priority\":\"Medium\"}", + "description": "Send a medium priority informational email about scheduled maintenance to IT management." + }, + { + "inputJson": "{\"recipients\":[\"securityteam@example.com\",\"auditor@example.com\"],\"subject\":\"Resolved: Phishing Attack Incident\",\"messageBody\":\"The phishing incident reported yesterday has been fully resolved.\",\"priority\":\"Low\",\"ccRecipients\":[\"compliance@example.com\"]}", + "description": "Notify multiple recipients with a low priority email about resolution of a phishing incident, CC compliance." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "email-communication.sendMention", + "description": "Sends an email message that explicitly mentions or notifies a specific recipient or list of recipients within the email body, ensuring they are highlighted for attention. It accepts sender info, recipient email(s), mention targets, subject, and message content, and outputs a send status with message ID or error details.", + "category": "email-communication", + "parameters": [ + { + "name": "senderEmail", + "type": "string", + "description": "The email address of the sender from which the email will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmails", + "type": "array", + "description": "Array of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "mentionEmails", + "type": "array", + "description": "Array of email addresses to explicitly mention within the email body for notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email message where mentions will be embedded or highlighted.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccEmails", + "type": "array", + "description": "Optional array of CC (carbon copy) email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccEmails", + "type": "array", + "description": "Optional array of BCC (blind carbon copy) email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mentionStyle", + "type": "string", + "description": "Optional style or format for how mentioned emails are highlighted in the message (e.g., bold, @username).", + "required": false, + "defaultValue": "@mention" + } + ], + "returns": { + "type": "object", + "description": "Returns the result of the send operation including success status, message ID if sent, and error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool to send emails that require explicitly calling out or mentioning specific recipients in the email body to draw their attention, such as notifying team members or stakeholders in a shared conversation. It ensures mentions are formatted and recipients are notified appropriately.", + "limitations": "This tool cannot verify delivery beyond handoff to the email server and does not support rich text formatting beyond simple mention styles. It also assumes valid email addresses and does not provide spam or security scanning.", + "examples": [ + "Send notification email to a team with specific members mentioned in the message.", + "Send customer support email highlighting the responsible support agent.", + "Send project update email mentioning multiple stakeholders to ensure attention." + ] + }, + "tags": [ + "email", + "communication", + "send", + "mention", + "notification", + "automation", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"senderEmail\":\"alice@example.com\",\"recipientEmails\":[\"team@example.com\"],\"mentionEmails\":[\"bob@example.com\"],\"subject\":\"Project Update\",\"body\":\"Hello team, please note the updates. @bob@example.com please review the latest changes.\",\"ccEmails\":[],\"bccEmails\":[],\"mentionStyle\":\"@mention\"}", + "description": "Send a project update email to the team explicitly mentioning Bob to review changes." + }, + { + "inputJson": "{\"senderEmail\":\"support@company.com\",\"recipientEmails\":[\"customer@example.com\"],\"mentionEmails\":[\"agent1@company.com\"],\"subject\":\"Support Ticket Response\",\"body\":\"Dear Customer, your ticket is being handled by @agent1@company.com and will be updated shortly.\",\"ccEmails\":[],\"bccEmails\":[],\"mentionStyle\":\"@mention\"}", + "description": "Send a support response email mentioning the assigned agent to the customer." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Mention", + "context": null + } + }, + { + "name": "email-communication.sendNotification", + "description": "This tool sends email notifications to specified recipients. It accepts parameters including recipient emails, subject, body content (HTML or plain text), optional attachments, and sender details. It processes these inputs to dispatch an email via a configured SMTP service or API and returns a status including success confirmation and message ID or error details.", + "category": "email-communication", + "parameters": [ + { + "name": "recipientEmails", + "type": "array", + "description": "List of recipient email addresses to send the notification to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for the notification email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email message. Can include HTML or plain text.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates whether the body content is HTML (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachments to include, each with filename and base64-encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "senderEmail", + "type": "string", + "description": "Email address used as sender. If omitted, default sender is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "replyTo", + "type": "string", + "description": "Optional reply-to email address for recipient responses.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object indicating the sending result with properties 'success' (boolean), 'messageId' (string if successful), and 'error' (string if failed)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send scheduled or triggered email notifications, alerts, or updates to users or stakeholders. Helpful for automating communication workflows, transactional messages, or announcement blasts.", + "limitations": "This tool does not generate email content; it only sends emails with provided content. It cannot manage large-scale mailing list subscriptions or handle bounce management internally.", + "examples": [ + "Send a notification email to a user about a password reset.", + "Send an HTML formatted newsletter update to a list of subscribers.", + "Send an alert email with a PDF report attached to the operations team." + ] + }, + "tags": [ + "email", + "notification", + "communication", + "automation", + "SMTP", + "alert", + "transactional" + ], + "examples": [ + { + "inputJson": "{\"recipientEmails\":[\"user@example.com\"],\"subject\":\"Welcome to Our Service\",\"body\":\"Hello, thank you for joining us!\",\"isHtml\":false}", + "description": "Send a simple welcome plain text email to a single recipient." + }, + { + "inputJson": "{\"recipientEmails\":[\"team@example.com\"],\"subject\":\"Monthly Report\",\"body\":\"

Monthly Report

See attached report.

\",\"isHtml\":true,\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"JVBERi0xLjQKJ...base64 content...\"}]}", + "description": "Send an HTML email with a PDF attachment to a team mailing list." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "email-communication.sendMessage", + "description": "Sends an email message to specified recipients with options for subject, body content (plain text or HTML), attachments, and additional headers. Accepts recipient addresses, message content, and configuration parameters; processes email formatting and SMTP transmission; returns delivery status and message ID.", + "category": "email-communication", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses. At least one recipient is required.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of email addresses to be CC'd.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of email addresses to be BCC'd.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Content of the email message, plain text or HTML based on isHtml parameter.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates if the body content is in HTML format. Defaults to false (plain text).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "List of file attachments with each having filename and base64 encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "headers", + "type": "object", + "description": "Additional email headers to include, e.g., custom X-Headers.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Result object including success boolean, messageId string if successful, and error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send email messages programmatically with customizable recipients, subject, body content (text or HTML), optional attachments, and custom headers via SMTP or an email service interface. Suitable for automated notifications, alerts, or replies.", + "limitations": "This tool does not handle email server configuration or authentication itself; it expects the SMTP setup to be handled externally. It also cannot guarantee delivery or handle inbound email processing.", + "examples": [ + "Send a plain text notification email to one recipient.", + "Send an HTML formatted newsletter to multiple recipients with an attached PDF.", + "Send an email with CC and BCC recipients and custom headers for tracking." + ] + }, + "tags": [ + "email", + "send", + "communication", + "automation", + "notification", + "SMTP" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Account Alert\",\"body\":\"Your account balance is low.\",\"isHtml\":false}", + "description": "Send a simple plain text alert message to a single recipient." + }, + { + "inputJson": "{\"to\":[\"client1@example.com\",\"client2@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Monthly Report\",\"body\":\"

Report Attached

Please review the monthly report.

\",\"isHtml\":true,\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"JVBERi0xLjcKJYGBgYEKMSAwIG9iago8PC9UeXBlL0NhdGFsb2cvUGFnZXMgMiAwIFI+PgplbmRvYmo=\"}]}", + "description": "Send an HTML email with CC recipients and a PDF attachment to multiple main recipients." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "email-communication.sendEmail", + "description": "This tool sends an email message to one or more recipients. It accepts inputs such as recipient email addresses, subject line, body content (plain text and/or HTML), optional attachments, and sender details. It processes this data to dispatch the email using SMTP or a configured email service, returning a result indicating success, message ID, or error details.", + "category": "email-communication", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses to send the email to", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses to receive a carbon copy of the email", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses to receive a blind carbon copy of the email", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Plain text content of the email body", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "HTML content of the email body; overrides plain text if provided", + "required": false, + "defaultValue": "" + }, + { + "name": "from", + "type": "string", + "description": "Sender's email address; if omitted, defaults to configured sender identity", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects, each containing filename and base64-encoded content", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Email priority level, e.g., 'high', 'normal', or 'low'", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "Result indicating success or failure of sending the email, including message ID and error information if any" + }, + "aiAgent": { + "useCase": "Use this tool when needing to send transactional or marketing emails, notifications, or alerts to one or more email recipients with optional attachments and formatting. Ideal for automated systems requiring programmatic email delivery with flexible content and recipients.", + "limitations": "This tool cannot compose email content automatically beyond provided inputs; it does not manage inboxes or receive email. It also depends on configured mail servers and cannot ensure delivery or spam filtering outcomes.", + "examples": [ + "Send a welcome email to a new user after registration.", + "Send a weekly report email with PDF attachment to a distribution list.", + "Send a password reset email to a single recipient with high priority." + ] + }, + "tags": [ + "email", + "communication", + "send", + "automation", + "notifications", + "transactional", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Welcome to Our Service\",\"bodyText\":\"Hello User, welcome!\",\"from\":\"noreply@service.com\"}", + "description": "Send a simple welcome email in plain text to a single recipient." + }, + { + "inputJson": "{\"to\":[\"team@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Weekly Report\",\"bodyHtml\":\"

Weekly Report

Find attached.

\",\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"\"}],\"from\":\"reports@example.com\"}", + "description": "Send an HTML weekly report email with a PDF attachment to multiple recipients and CC to manager." + }, + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Password Reset\",\"bodyText\":\"Click the link to reset your password.\",\"priority\":\"high\"}", + "description": "Send a high priority password reset email with plain text body." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "email-communication.sendComment", + "description": "Sends a comment as an email message to specified recipients. Accepts input including recipient emails, subject, comment body, optional CC/BCC lists, and attachment references. Processes inputs by formatting the email and using an SMTP or API-based service to deliver the email. Outputs a delivery status and message ID if successful.", + "category": "email-communication", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses to send the comment to", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for the comment email", + "required": true, + "defaultValue": "" + }, + { + "name": "commentBody", + "type": "string", + "description": "Main content of the comment to send", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of email addresses to CC", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of email addresses to BCC", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment file references or URLs", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyTo", + "type": "string", + "description": "Optional email address to use as reply-to", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status, message ID if sent, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when needing to send a textual comment or note to one or more email recipients as a formal email message, including handling CC/BCC and optional attachments. It is suitable for automation scenarios where comments need to be communicated via email rather than platform-internal messaging.", + "limitations": "Cannot perform rich formatting beyond plain text or simple HTML. Does not support inline images or real-time collaboration. Not responsible for email content validation or addressing spam filters.", + "examples": [ + "Send a comment to a project team with a summary and request for feedback.", + "Email a customer support comment including logs as attachment to multiple recipients.", + "Send a notification comment to stakeholders with CC and BCC recipients specified." + ] + }, + "tags": [ + "email", + "communication", + "send", + "comment", + "automation", + "notification" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"team@example.com\"],\"subject\":\"Weekly Update\",\"commentBody\":\"Here is the weekly status update on the project.\"}", + "description": "Send a simple weekly update comment email to a team." + }, + { + "inputJson": "{\"to\":[\"client@example.com\"],\"subject\":\"Issue Resolution Comment\",\"commentBody\":\"The reported issue has been resolved. Please find attached the log files.\",\"attachments\":[\"log1.txt\",\"log2.txt\"]}", + "description": "Send a comment email to client including attachments." + }, + { + "inputJson": "{\"to\":[\"support@example.com\"],\"subject\":\"Customer Feedback\",\"commentBody\":\"Customer has reported intermittent failures.\",\"cc\":[\"manager@example.com\"],\"bcc\":[\"audit@example.com\"]}", + "description": "Send customer feedback comment email with CC and BCC recipients." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "email-communication.sendThread", + "description": "Sends an entire email thread as a single continuous email, including all previous messages formatted chronologically. Accepts thread messages and recipient details, composes a combined email preserving message context, and dispatches it to specified recipients. Returns the send status and message ID for tracking.", + "category": "email-communication", + "parameters": [ + { + "name": "threadMessages", + "type": "array", + "description": "An ordered array of message objects representing the email thread, each with sender, timestamp, and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of email addresses to send the thread to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for the outgoing combined email thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "The email address from which the thread will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeAttachments", + "type": "boolean", + "description": "Whether to include attachments from all messages in the thread in the outgoing email.", + "required": false, + "defaultValue": "false" + }, + { + "name": "format", + "type": "string", + "description": "Email format for the thread message: 'plain' for plain text or 'html' for formatted HTML.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "An object detailing if the send was successful with message ID and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send a consolidated email thread to one or more recipients, preserving the chronological conversation context. Ideal for summarizing or sharing discussion histories in a single email instead of multiple individual messages.", + "limitations": "Does not generate or alter individual message contents beyond formatting; cannot handle partial thread sends or dynamically summarize thread content beyond concatenation.", + "examples": [ + "Send the whole customer support email conversation to a manager for review.", + "Forward the legal discussion thread to the legal team maintaining the full message context.", + "Resend a project email thread as a consolidated recap to all participants." + ] + }, + "tags": [ + "email", + "thread", + "send", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"threadMessages\":[{\"sender\":\"alice@example.com\",\"timestamp\":\"2024-05-01T09:15:00Z\",\"content\":\"Hi team, let's start the project.\"},{\"sender\":\"bob@example.com\",\"timestamp\":\"2024-05-01T09:45:00Z\",\"content\":\"I agree, setting up the infrastructure.\"}],\"recipients\":[\"manager@example.com\"],\"subject\":\"Project Kickoff Thread\",\"senderEmail\":\"alice@example.com\",\"includeAttachments\":false,\"format\":\"html\"}", + "description": "Send a project kickoff email thread to a manager as a combined HTML email." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "customer-support.sendThread", + "description": "Sends a message thread within a customer support platform to a specified recipient or group. Accepts inputs such as the thread ID, message content, recipient identifiers, and optional attachments. Processes the dispatch of the entire thread content or a new message within the thread, returning a status confirmation with message IDs and timestamps.", + "category": "customer-support", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier of the message thread to send or append to.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientIds", + "type": "array", + "description": "An array of user IDs representing the recipients of the thread or message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The content of the new message to send in the thread. If empty, sends the existing thread as-is.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects (each with filename and URL) to include with the message.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message to be sent (e.g., high, normal, low).", + "required": false, + "defaultValue": "normal" + }, + { + "name": "notifyRecipients", + "type": "boolean", + "description": "Whether to trigger notifications for recipients upon sending the thread/message.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the send action, sent message ID, timestamps, and any errors." + }, + "aiAgent": { + "useCase": "Use this tool when needing to send or forward an entire support conversation thread or to append a new message within an existing thread to one or multiple recipients in customer support scenarios. It ensures message content and attachments are properly sent and notifications dispatched as needed.", + "limitations": "Cannot create a new thread from scratch; the thread must exist. Does not support scheduling messages for future delivery. It does not handle message translation or content moderation.", + "examples": [ + "Send a follow-up message within thread 'abc123' to customer 'user456' with text and attachment.", + "Forward entire thread 'xyz789' to a group of support agents for review.", + "Send a quick update message in thread 'def456' without attachments and mark it as high priority." + ] + }, + "tags": [ + "customer-support", + "messaging", + "thread-management", + "notifications", + "attachments", + "priority" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"thread001\",\"recipientIds\":[\"user123\"],\"messageContent\":\"Hello, your issue is being reviewed.\",\"attachments\":[],\"priority\":\"normal\",\"notifyRecipients\":true}", + "description": "Send a follow-up message to a single customer in an existing thread with normal priority and notification." + }, + { + "inputJson": "{\"threadId\":\"thread002\",\"recipientIds\":[\"agent001\",\"agent002\"],\"messageContent\":\"\",\"attachments\":[],\"priority\":\"normal\",\"notifyRecipients\":false}", + "description": "Forward an existing thread without new message content to two agents without notifications." + }, + { + "inputJson": "{\"threadId\":\"thread003\",\"recipientIds\":[\"user789\"],\"messageContent\":\"Please find the attached logs.\",\"attachments\":[{\"filename\":\"log1.txt\",\"url\":\"https://files.example.com/log1.txt\"}],\"priority\":\"high\",\"notifyRecipients\":true}", + "description": "Send a high priority message with an attachment to one user in an existing thread." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "customer-support.sendReply", + "description": "Sends a reply message to a customer inquiry or support ticket. Accepts the ticket ID, reply content, optional attachments, and metadata like urgency or channel. Processes this by posting the reply within the customer support system and returns confirmation details including status and timestamp.", + "category": "customer-support", + "parameters": [ + { + "name": "ticketId", + "type": "string", + "description": "Unique identifier for the customer support ticket to reply to.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyContent", + "type": "string", + "description": "Text content of the reply message to send to the customer.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment file URLs or IDs to include with the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyChannel", + "type": "string", + "description": "The communication channel used for the reply (e.g., email, chat, sms).", + "required": false, + "defaultValue": "email" + }, + { + "name": "isUrgent", + "type": "boolean", + "description": "Flag indicating if the reply is marked as urgent and requires immediate attention.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object confirming the reply was sent with message ID, timestamp, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to respond to a customer support ticket by sending a text reply, optionally with attachments, via a chosen communication channel. It is ideal for automating responses or processing follow-ups in a structured support system.", + "limitations": "This tool cannot create new tickets or modify ticket data other than adding replies. It also cannot read tickets or analyze ticket contents to compose replies automatically.", + "examples": [ + "Send a follow-up reply to ticket '12345' with a troubleshooting link attached.", + "Respond urgently via chat to ticket '67890' confirming issue resolution.", + "Send a standard email reply to ticket 'abcde' thanking the customer for their patience." + ] + }, + "tags": [ + "customer-support", + "communication", + "reply", + "ticketing", + "automation", + "message-sending", + "helpdesk" + ], + "examples": [ + { + "inputJson": "{\"ticketId\":\"12345\",\"replyContent\":\"Thank you for contacting us. Please try restarting your device as the first troubleshooting step.\",\"attachments\":[],\"replyChannel\":\"email\",\"isUrgent\":false}", + "description": "Send a standard email reply with troubleshooting instructions to ticket '12345'." + }, + { + "inputJson": "{\"ticketId\":\"67890\",\"replyContent\":\"We are escalating your issue to our technical team and will update you shortly.\",\"attachments\":[],\"replyChannel\":\"chat\",\"isUrgent\":true}", + "description": "Send an urgent chat reply notifying escalation for ticket '67890'." + }, + { + "inputJson": "{\"ticketId\":\"abcde\",\"replyContent\":\"Here is the user manual you requested.\",\"attachments\":[\"file://manual.pdf\"],\"replyChannel\":\"email\",\"isUrgent\":false}", + "description": "Send an email reply with an attachment (user manual) to ticket 'abcde'." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "customer-support.sendMention", + "description": "Sends a mention notification within a customer support platform to notify a specific agent or group about a ticket or message. Accepts parameters specifying the recipient, the context of the mention, and optional message content, then processes the mention trigger and returns a confirmation of delivery and status.", + "category": "customer-support", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the agent or group to be mentioned", + "required": true, + "defaultValue": "" + }, + { + "name": "ticketId", + "type": "string", + "description": "Identifier of the support ticket or conversation related to the mention", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Optional additional message content to accompany the mention", + "required": false, + "defaultValue": "" + }, + { + "name": "mentionType", + "type": "string", + "description": "Type of mention: 'user' for individual or 'group' for multiple agents", + "required": true, + "defaultValue": "user" + }, + { + "name": "urgent", + "type": "boolean", + "description": "Flag indicating if the mention should be marked as urgent for priority handling", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the mention delivery, including success boolean, a message description, and a mentionId for reference" + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to notify specific customer support agents or groups about a relevant ticket, comment, or update requiring their attention within a customer support platform. This ensures timely collaboration and task visibility among support teams.", + "limitations": "This tool cannot create or modify tickets or send mentions outside the integrated support platform. It also does not support bulk mentions beyond a single agent or group at a time.", + "examples": [ + "Notify a specific support agent about a newly escalated support ticket.", + "Send a group mention to all billing team members regarding a payment issue.", + "Attach a custom note with the mention to clarify the required action." + ] + }, + "tags": [ + "customer-support", + "notification", + "mention", + "collaboration", + "support-ticket" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"agent123\",\"ticketId\":\"tk98765\",\"message\":\"Please review the customer's latest update.\",\"mentionType\":\"user\",\"urgent\":true}", + "description": "Send an urgent mention to a single agent notifying them about a ticket update with an additional message." + }, + { + "inputJson": "{\"recipientId\":\"group_billing\",\"ticketId\":\"tk12345\",\"mentionType\":\"group\"}", + "description": "Send a mention to the billing support group about a payment-related ticket without extra message content." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Mention", + "context": null + } + }, + { + "name": "customer-support.sendEmail", + "description": "Sends an email message from a specified sender to one or more recipients, with support for subject, body (text or HTML), and optional attachments. Accepts parameters for recipients, subject line, message content, sender address, carbon copy, blind carbon copy, and reply-to addresses. Returns a status object indicating delivery success or failure and any error messages.", + "category": "customer-support", + "parameters": [ + { + "name": "fromAddress", + "type": "string", + "description": "Email address of the sender.", + "required": true, + "defaultValue": "" + }, + { + "name": "toAddresses", + "type": "array", + "description": "Array of recipient email addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccAddresses", + "type": "array", + "description": "Array of email addresses to be carbon copied.", + "required": false, + "defaultValue": "" + }, + { + "name": "bccAddresses", + "type": "array", + "description": "Array of email addresses to be blind carbon copied.", + "required": false, + "defaultValue": "" + }, + { + "name": "replyToAddress", + "type": "string", + "description": "Email address for reply-to header if different from sender.", + "required": false, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Content of the email message, can be plain text or HTML formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates whether the body is in HTML format.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects, each with filename and binary data as base64 string.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a boolean success flag, messageId if successful, and error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically send customizable email messages to customers or internal staff in customer support scenarios, such as sending ticket updates, notifications, or responses. It supports multiple recipients and attachments, enabling robust communication workflows.", + "limitations": "This tool does not handle email inbox management, spam filtering, or email receiving; it only sends outgoing emails. It also does not guarantee delivery, only transmission to the email server.", + "examples": [ + "Send a ticket update email to a customer with a PDF attachment.", + "Send a notification email to multiple support agents about system status.", + "Send a confirmation email with HTML formatting to a single customer." + ] + }, + "tags": [ + "email", + "customer support", + "communication", + "notification", + "outbound" + ], + "examples": [ + { + "inputJson": "{\"fromAddress\":\"support@company.com\",\"toAddresses\":[\"customer1@example.com\"],\"subject\":\"Your support ticket has been updated\",\"body\":\"Dear customer, your ticket #1234 has a new update.\",\"isHtml\":false}", + "description": "Basic support ticket update email to one customer." + }, + { + "inputJson": "{\"fromAddress\":\"noreply@company.com\",\"toAddresses\":[\"agent1@company.com\",\"agent2@company.com\"],\"ccAddresses\":[\"manager@company.com\"],\"subject\":\"System Outage Alert\",\"body\":\"The system will be down for maintenance at midnight.\",\"isHtml\":false}", + "description": "Notification email to multiple support agents with a CC to the manager." + }, + { + "inputJson": "{\"fromAddress\":\"support@company.com\",\"toAddresses\":[\"customer2@example.com\"],\"subject\":\"Your order receipt\",\"body\":\"

Thank you for your purchase!

Attached is your receipt.

\",\"isHtml\":true,\"attachments\":[{\"filename\":\"receipt.pdf\",\"data\":\"JVBERi0xLjUKJcfs...\"}]}", + "description": "HTML formatted confirmation email with PDF attachment to customer." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "marketing-automation.analyzeReference", + "description": "Analyzes marketing reference content such as URLs, documents, or raw text to extract actionable marketing insights. It accepts a reference input (link, text, or file content), performs content analysis including sentiment, keyword extraction, competitor mentions, and campaign indicators, then outputs a structured summary report highlighting key marketing insights and recommendations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "referenceType", + "type": "string", + "description": "Specifies the type of input reference: 'url', 'text', or 'document'.", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceInput", + "type": "string", + "description": "The URL link, raw text content, or encoded document content to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the reference content, e.g., 'en' for English, to improve analysis accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "If true, include sentiment analysis of the reference content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywordExtraction", + "type": "boolean", + "description": "If true, include keyword and keyphrase extraction in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeCompetitorMentions", + "type": "boolean", + "description": "If true, detect mentions of competitors in the content where applicable.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length in characters for the generated summary report (recommend 500-2000).", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report containing summary, extracted keywords, sentiment scores, detected competitor mentions, and marketing recommendations" + }, + "aiAgent": { + "useCase": "Use this tool when tasked with evaluating marketing reference materials such as competitor campaign pages, promotional texts, product launch documents, or market reports. It helps synthesize complex marketing information into actionable insights and identifies strategic markers useful for campaign optimization and competitor analysis.", + "limitations": "Cannot access restricted or paywalled content behind URLs. Accuracy depends on input language support and content quality. Does not replace human expert judgment but supplements marketing analysis.", + "examples": [ + "Analyze the marketing strategy described in this competitor's campaign URL.", + "Extract key marketing messages and sentiment from this product launch press release text.", + "Summarize and identify competitor references from the attached trade report document." + ] + }, + "tags": [ + "marketing", + "analysis", + "content-analysis", + "reference", + "insights", + "automation", + "campaigns" + ], + "examples": [ + { + "inputJson": "{\"referenceType\":\"url\",\"referenceInput\":\"https://example.com/competitor-campaign\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"includeKeywordExtraction\":true,\"includeCompetitorMentions\":true,\"maxSummaryLength\":1200}", + "description": "Analyze a competitor's marketing campaign webpage for insights, keywords, sentiment, and competitor mentions." + }, + { + "inputJson": "{\"referenceType\":\"text\",\"referenceInput\":\"Our latest product launch offers innovative solutions with a focus on sustainability and user experience.\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"includeKeywordExtraction\":true,\"includeCompetitorMentions\":false}", + "description": "Analyze raw marketing text content for key points, sentiment, and keywords, omitting competitor mentions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "customer-support.sendChannel", + "description": "This tool sends a message through a specified customer support communication channel such as email, chat, SMS, or social media messaging. It accepts parameters defining the channel type, recipient information, message content, and optional metadata, processes the sending request via the appropriate API or protocol, and returns a status report indicating success or failure with relevant details.", + "category": "customer-support", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "The type of support channel to send the message through (e.g., email, chat, SMS, social).", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "The unique identifier or address of the message recipient appropriate to the channel (email address, phone number, chat ID).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The textual content of the message to be sent to the customer or recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata such as subject line for email, message priority, or attachments information.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier for the sender or customer support representative (optional).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the sending result including success status, message ID if applicable, timestamp, and error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to send messages on behalf of customer support agents through various communication channels for inquiries, notifications, or follow-ups. Ideal for automating multi-channel responses or routing messages programmatically.", + "limitations": "This tool cannot create or manage the customer support channels themselves, nor can it guarantee message delivery beyond reporting the send attempt status. It also does not handle message formatting or templates inherently.", + "examples": [ + "Send a follow-up email to customer confirming their ticket resolution.", + "Send a chat message to a customer on the company support website.", + "Send an SMS notification about a scheduled service appointment." + ] + }, + "tags": [ + "customer-support", + "communication", + "send-message", + "multi-channel", + "notifications", + "automation" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"email\",\"recipient\":\"user@example.com\",\"messageContent\":\"Dear customer, your issue has been resolved.\",\"metadata\":{\"subject\":\"Ticket Resolved\"},\"senderId\":\"supportAgent01\"}", + "description": "Send an email notifying the customer that their support ticket issue has been resolved." + }, + { + "inputJson": "{\"channelType\":\"chat\",\"recipient\":\"chatUser123\",\"messageContent\":\"Hello! How can I assist you today?\",\"metadata\":{},\"senderId\":\"chatBot001\"}", + "description": "Send a chat message initiating conversation with a customer on website support chat." + }, + { + "inputJson": "{\"channelType\":\"sms\",\"recipient\":\"+15551234567\",\"messageContent\":\"Reminder: Your appointment is scheduled for tomorrow at 3 PM.\",\"metadata\":{},\"senderId\":\"system\"}", + "description": "Send an SMS notification reminding the customer of an upcoming appointment." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "customer-support.sendAlert", + "description": "Sends an alert notification to designated customer support team members regarding security-related events or potential threats. Accepts input including alert message, recipients, severity, and optional metadata, then processes and dispatches the alert via email or in-system notification, returning a status confirmation for each recipient.", + "category": "customer-support", + "parameters": [ + { + "name": "alertMessage", + "type": "string", + "description": "The main content or description of the security alert to be sent to the team.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers (emails or user IDs) who should receive the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Defines the urgency or impact level of the alert (e.g., 'low', 'medium', 'high').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "sendByEmail", + "type": "boolean", + "description": "Whether to send the alert as an email message to recipients.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sendInSystemNotification", + "type": "boolean", + "description": "Whether to send the alert as an in-system notification within the customer support portal.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data related to the alert, such as incident ID, timestamp, or related system info.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall success status and detailed results for each recipient indicating whether alert delivery succeeded or failed." + }, + "aiAgent": { + "useCase": "Use this tool when a security incident or suspicious activity affecting customers is detected and the customer support team must be notified promptly with clear details and appropriate urgency. It is ideal for automating alerts across multiple channels and ensuring the relevant staff receive timely notifications to take action.", + "limitations": "This tool does not investigate security incidents, store alert logs long-term, or integrate directly with external incident management systems without additional interfacing.", + "examples": [ + "Send an urgent alert to the customer support lead and security team about a possible data breach.", + "Notify all frontline support agents with a medium priority message about phishing attempts targeting users.", + "Send a low severity alert via email only about a system maintenance affecting login services." + ] + }, + "tags": [ + "alert", + "security", + "customer-support", + "notification", + "incident-management" + ], + "examples": [ + { + "inputJson": "{\"alertMessage\":\"Urgent: Potential data breach detected in account management system.\",\"recipients\":[\"lead@support.com\",\"security@company.com\"],\"severityLevel\":\"high\",\"sendByEmail\":true,\"sendInSystemNotification\":true}", + "description": "Send a high severity alert to key support and security team members via email and in-system notification." + }, + { + "inputJson": "{\"alertMessage\":\"Phishing attempts detected targeting customer accounts.\",\"recipients\":[\"agent1@support.com\",\"agent2@support.com\"],\"severityLevel\":\"medium\",\"sendByEmail\":false,\"sendInSystemNotification\":true}", + "description": "Notify frontline support agents with a medium severity alert using in-system notifications only." + }, + { + "inputJson": "{\"alertMessage\":\"Scheduled maintenance affecting login services.\",\"recipients\":[\"all@support.com\"],\"severityLevel\":\"low\",\"sendByEmail\":true,\"sendInSystemNotification\":false}", + "description": "Send a low priority alert via email to all support staff about upcoming maintenance." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "customer-support.sendNotification", + "description": "Sends a notification message to specified customers or user groups. Accepts recipient identifiers, message content, notification type, and delivery preferences. Processes input to format and dispatch notifications via chosen channels, returning delivery status and error details if any.", + "category": "customer-support", + "parameters": [ + { + "name": "recipientIds", + "type": "array", + "description": "Array of unique identifiers representing the notification recipients (e.g., user IDs or customer IDs).", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The main content text of the notification to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type or category of the notification, e.g., 'alert', 'reminder', or 'promotion'.", + "required": false, + "defaultValue": "general" + }, + { + "name": "channels", + "type": "array", + "description": "List of channels through which to send the notification, such as ['email', 'sms', 'push'].", + "required": false, + "defaultValue": "[\"email\"]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification: 'low', 'normal', or 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule the notification for future delivery. Omit for immediate sending.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAttachments", + "type": "boolean", + "description": "Whether to include attachments with the notification, if supported by channels.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment object URLs or identifiers to include with the notification.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary of notification dispatch results, including total recipients, successful deliveries, failures, and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to notify customers or users about updates, alerts, promotions, or reminders across multiple communication channels. This tool handles sending personalized or bulk notifications and reports delivery results.", + "limitations": "Cannot compose message content or determine recipient lists; these must be supplied. Does not guarantee delivery, only attempts it via specified channels. Scheduling accuracy depends on system clock and infrastructure.", + "examples": [ + "Send promo notification to multiple customers via email and SMS.", + "Schedule a reminder notification to a user group for an upcoming event.", + "Send a high-priority alert notification to a single user via push notification." + ] + }, + "tags": [ + "notification", + "customer-support", + "communication", + "messaging", + "alert", + "reminder", + "promotion" + ], + "examples": [ + { + "inputJson": "{\"recipientIds\": [\"user123\", \"user456\"], \"message\": \"Don't miss our summer sale! Up to 50% off.\", \"notificationType\": \"promotion\", \"channels\": [\"email\", \"sms\"], \"priority\": \"normal\", \"includeAttachments\": false}", + "description": "Send a promotional sale notification via email and SMS to two users." + }, + { + "inputJson": "{\"recipientIds\": [\"group789\"], \"message\": \"Your subscription expires in 3 days.\", \"notificationType\": \"reminder\", \"channels\": [\"email\"], \"priority\": \"high\", \"scheduleTime\": \"2024-07-01T09:00:00Z\"}", + "description": "Schedule a high-priority reminder email to a user group about subscription expiration." + }, + { + "inputJson": "{\"recipientIds\": [\"user999\"], \"message\": \"System outage detected. Please check status.\", \"notificationType\": \"alert\", \"channels\": [\"push\"], \"priority\": \"high\", \"includeAttachments\": false}", + "description": "Send an immediate high-priority push alert about a system outage to a single user." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "customer-support.sendComment", + "description": "Sends a comment message related to a specific customer support ticket or case. Accepts details such as ticket ID, comment text, optional attachments, and metadata to post the comment into the customer's support thread. Returns confirmation with comment ID and timestamp.", + "category": "customer-support", + "parameters": [ + { + "name": "ticketId", + "type": "string", + "description": "Unique identifier of the support ticket to which the comment should be added.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person or agent sending the comment, used for display in the thread.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPublic", + "type": "boolean", + "description": "Flag indicating if the comment is visible to the customer (true) or internal only (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachment file URLs or base64 encoded data associated with the comment.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with extra information about the comment, such as tags or references.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation details including the newly created comment ID, timestamp, and the status of the operation." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically add comments to existing customer support tickets, enabling automated or assisted interactions such as follow-ups, clarifications, or internal notes. It is useful when the AI agent identifies the need to append relevant information to a customer conversation or escalate issues internally.", + "limitations": "This tool cannot create new tickets, update existing ticket statuses, or delete comments. It only adds new comments to already existing tickets.", + "examples": [ + "Add a public comment to ticket 12345 informing the customer their issue is being escalated.", + "Send an internal note to ticket 98765 for the support team regarding investigation results.", + "Attach a screenshot and add a comment to ticket 54321 explaining the troubleshooting steps taken." + ] + }, + "tags": [ + "comment", + "customer-support", + "ticketing", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"ticketId\":\"TKT1001\",\"commentText\":\"We have received your request and are working on it.\",\"authorName\":\"SupportBot\",\"isPublic\":true}", + "description": "Add a public comment to acknowledge receipt of the customer's request." + }, + { + "inputJson": "{\"ticketId\":\"TKT1002\",\"commentText\":\"Issue reproduction confirmed. Engineering team notified.\",\"authorName\":\"AgentAlice\",\"isPublic\":false,\"metadata\":{\"priority\":\"high\"}}", + "description": "Add an internal private comment with metadata marking the ticket as high priority." + }, + { + "inputJson": "{\"ticketId\":\"TKT1003\",\"commentText\":\"Please find attached the logs you requested.\",\"authorName\":\"SupportBot\",\"isPublic\":true,\"attachments\":[\"https://fileserver.com/logs/TKT1003.log\"]}", + "description": "Add a public comment with a link to a log file attachment for the customer." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "customer-support.sendMessage", + "description": "Sends a message to a customer or a group of customers through specified communication channels such as email, SMS, or in-app notifications. Accepts recipient identifiers, message content, channel preferences, and optional metadata. Returns delivery status and message IDs for tracking purposes.", + "category": "customer-support", + "parameters": [ + { + "name": "recipientIds", + "type": "array", + "description": "Array of unique identifiers representing the message recipients (e.g., customer IDs or contact emails).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageSubject", + "type": "string", + "description": "Subject line of the message, applicable for email channels.", + "required": false, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content of the message to be sent to recipients.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of communication channels to use for sending the message, e.g., ['email', 'sms', 'inApp'].", + "required": true, + "defaultValue": "[\"email\"]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message ('low', 'normal', 'high'), which may affect delivery order or notifications.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional arbitrary metadata object for tagging or additional instructions, such as campaign identifiers or message templates.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of recipient delivery statuses including message ID, recipient ID, channel used, and success or error details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate or assist in sending customer service messages across multiple channels, such as notifications about order status, support replies, or promotional announcements. It helps coordinate communication by specifying recipients, content, and preferred channels.", + "limitations": "Cannot generate or personalize message content dynamically; assumes content is already prepared. Does not guarantee message delivery as it depends on external channel providers.", + "examples": [ + "Send an order shipment notification email to a specific customer.", + "Send an urgent SMS alert to multiple customers.", + "Deliver an in-app notification reminding a customer about a support ticket update." + ] + }, + "tags": [ + "customer-support", + "messaging", + "notification", + "communication", + "email", + "sms", + "in-app", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientIds\":[\"cust12345\"],\"messageSubject\":\"Your Order Has Shipped\",\"messageBody\":\"Dear customer, your order #98765 has been shipped and is on its way.\",\"channels\":[\"email\"],\"priority\":\"high\",\"metadata\":{\"orderId\":\"98765\"}}", + "description": "Send a high priority shipment confirmation email to a single customer." + }, + { + "inputJson": "{\"recipientIds\":[\"cust12345\",\"cust67890\"],\"messageBody\":\"Server maintenance is scheduled tonight from 1 AM to 3 AM.\",\"channels\":[\"sms\"],\"priority\":\"normal\"}", + "description": "Send an SMS alert about scheduled server maintenance to multiple customers." + }, + { + "inputJson": "{\"recipientIds\":[\"cust54321\"],\"messageBody\":\"Your support ticket #452 has been updated. Please check your account for details.\",\"channels\":[\"inApp\"],\"priority\":\"normal\"}", + "description": "Send an in-app notification to inform a customer about an update to their support ticket." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "marketing-automation.analyzeQuote", + "description": "Analyzes the content and sentiment of a sales or marketing quote text to extract key metrics such as sentiment score, keyword highlights, and readability. Accepts raw quote text and optional context parameters, then returns an analysis report useful for optimizing quote effectiveness in marketing campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The raw text content of the marketing or sales quote to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the quote text for accurate analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "industryContext", + "type": "string", + "description": "Optional industry or sector context to tailor keyword extraction and sentiment interpretation.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeReadability", + "type": "boolean", + "description": "Flag to include readability metrics such as Flesch score in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing overall sentiment score, key highlighted phrases and words, readability scores if requested, and a summary interpretation of the quote's marketing tone." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating marketing or sales quote texts to assess their emotional tone, pinpoint impactful keywords, and gauge readability. This aids marketing automation systems in optimizing content for higher engagement and conversion rates.", + "limitations": "This tool analyzes text but does not generate quotes or assess pricing accuracy. It also may have limited accuracy with slang or highly domain-specific jargon not included in its language models.", + "examples": [ + "Analyze the sentiment and key phrases of a new product launch quote for our next campaign.", + "Evaluate readability and tone of a customer testimonial quotation before using it in an ad.", + "Extract the main marketing keywords and overall positivity from a promotional quote text." + ] + }, + "tags": [ + "marketing", + "automation", + "text analysis", + "sentiment", + "quote", + "content", + "readability" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"Our innovative solution guarantees a 30% increase in efficiency, transforming your business workflows.\",\"language\":\"en\",\"industryContext\":\"technology\",\"includeReadability\":true}", + "description": "Analyzing a technology sector marketing quote for sentiment, keywords, and readability." + }, + { + "inputJson": "{\"quoteText\":\"Experience unmatched customer support and quality unlike any competitor.\",\"includeReadability\":false}", + "description": "Evaluating the sentiment and key phrases of a customer service quote without readability metrics." + }, + { + "inputJson": "{\"quoteText\":\"Boost your sales with our proven marketing strategies designed specifically for retail.\",\"language\":\"en\",\"industryContext\":\"retail\",\"includeReadability\":true}", + "description": "Extracting marketing insights from a retail-focused sales quote including readability score." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "marketing-automation.analyzeCitation", + "description": "Analyzes citations referenced in marketing content or campaigns by processing input citation texts or lists, evaluating their relevance, authority, and impact on marketing effectiveness, and producing a detailed report including citation quality scores, influence metrics, and recommendations for marketing optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "citations", + "type": "array", + "description": "An array of citation strings or objects representing marketing content references to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional context description of the marketing campaign or content where citations are used to tailor analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeInfluenceMetrics", + "type": "boolean", + "description": "Flag to include detailed influence and impact metrics of each citation on marketing effectiveness.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language of the citations for accurate parsing and analysis.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured analysis report containing citation relevance scores, authority ratings, influence metrics, and actionable recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the quality and marketing impact of citations within marketing materials or campaigns to optimize content credibility and audience trust. It supports strategies that depend on authoritative references to enhance campaign effectiveness.", + "limitations": "This tool does not verify factual accuracy of citations or provide legal compliance checks. It is focused on marketing relevance and influence rather than academic rigor.", + "examples": [ + "Analyze the citations used in our recent email campaign to assess their marketing impact.", + "Evaluate a list of references from a whitepaper to improve its trustworthiness for targeted client outreach." + ] + }, + "tags": [ + "marketing", + "automation", + "citation", + "analysis", + "content-optimization", + "influence" + ], + "examples": [ + { + "inputJson": "{\"citations\": [\"Smith J. 2020. Marketing Trends.\", \"Doe A. 2019. Consumer Behavior Insights.\"], \"context\": \"Email campaign for new product launch\", \"includeInfluenceMetrics\": true, \"language\": \"en\"}", + "description": "Analyze two marketing citations referenced in an email campaign to determine their influence metrics and relevance." + }, + { + "inputJson": "{\"citations\": [\"Johnson R. 2018. Social Media Impact Study.\"], \"includeInfluenceMetrics\": false}", + "description": "Analyze a single citation without influence metrics to evaluate its authority in marketing content." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Citation", + "context": null + } + }, + { + "name": "marketing-automation.analyzeLink", + "description": "Analyzes marketing campaign URLs to extract and evaluate performance indicators such as traffic source, UTM parameters, click-through rates, and conversion metrics. Accepts a URL string and optional campaign context, and returns structured analysis to optimize marketing strategies.", + "category": "marketing-automation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The marketing URL to be analyzed, including tracking parameters if present.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignContext", + "type": "object", + "description": "Optional context data about the campaign such as campaign name, medium, or other metadata to enhance analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeHistoricalData", + "type": "boolean", + "description": "Flag to include historical performance data related to the URL if available in integrated analytics platforms.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report including detected UTM parameters, estimated traffic source breakdown, click-through rate, conversion data if available, and recommendations for improving link performance." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze the effectiveness and parameters of marketing links, such as URLs tagged with UTM parameters, to gain insights into campaign performance and traffic sources. It helps agents optimize campaign strategies based on link data analysis.", + "limitations": "Does not automatically fetch real-time analytics data without integration with analytics APIs. Cannot analyze URLs without access to underlying performance metrics.", + "examples": [ + "Analyze the given campaign link to report all UTM parameters and recent click metrics.", + "Evaluate the provided URL and suggest improvements based on its traffic source and conversion rates.", + "Provide a performance summary of this marketing link including historical click and conversion data if available." + ] + }, + "tags": [ + "marketing", + "automation", + "link-analysis", + "UTM", + "campaign", + "performance", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/?utm_source=google&utm_medium=cpc&utm_campaign=spring_sale\"}", + "description": "Analyze a basic marketing link with standard UTM parameters." + }, + { + "inputJson": "{\"url\":\"https://example.com/product?id=123&utm_source=newsletter\",\"campaignContext\":{\"campaignName\":\"Winter Promo\",\"medium\":\"email\"},\"includeHistoricalData\":true}", + "description": "Analyze an email campaign link with context and request inclusion of historical data." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "marketing-automation.analyzeSession", + "description": "Analyzes a marketing session dataset to extract key user behavior metrics such as session duration, page views, bounce rate, conversion events, and traffic sources. Accepts session data as JSON or CSV, with options to filter by date range and segment users. Produces detailed metrics and summary insights to inform campaign optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "sessionData", + "type": "string", + "description": "Raw session data in JSON or CSV format to be analyzed, containing user interactions and events within sessions.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input session data: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) to filter sessions for analysis. Optional, if provided limits data to sessions after or on this day.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) to filter sessions for analysis. Optional, if provided limits data to sessions before or on this day.", + "required": false, + "defaultValue": "" + }, + { + "name": "userSegment", + "type": "object", + "description": "Object defining filters to segment user sessions (e.g., by location, device type). Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeConversionEvents", + "type": "boolean", + "description": "Whether to include analysis of conversion events in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed session metrics such as average session duration, total page views, bounce rate, conversion rates, traffic source distribution, and insights summarizing user behavior." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract actionable insights from raw marketing session data to evaluate campaign performance, identify user behavior patterns, or segment users for targeted marketing strategies. Ideal for automated marketing analytics, reporting, and optimization workflows.", + "limitations": "Cannot ingest data formats other than JSON or CSV. Does not perform predictive modeling or real-time session tracking. Requires well-structured session data containing timestamps and event details.", + "examples": [ + "Analyze user sessions from last month to identify average session duration and bounce rate.", + "Segment session data for mobile device users and analyze conversion events to evaluate mobile campaign success.", + "Provide summary insights of traffic sources and page views from a JSON export of website sessions." + ] + }, + "tags": [ + "marketing", + "automation", + "analytics", + "session-analysis", + "user-behavior", + "conversion", + "campaign-optimization" + ], + "examples": [ + { + "inputJson": "{\"sessionData\":\"[{\\\"sessionId\\\":\\\"s1\\\",\\\"userId\\\":\\\"u1\\\",\\\"events\\\":[{\\\"eventType\\\":\\\"pageview\\\",\\\"timestamp\\\":\\\"2024-05-01T10:00:00Z\\\"},{\\\"eventType\\\":\\\"conversion\\\",\\\"timestamp\\\":\\\"2024-05-01T10:05:00Z\\\"}]},{\\\"sessionId\\\":\\\"s2\\\",\\\"userId\\\":\\\"u2\\\",\\\"events\\\":[{\\\"eventType\\\":\\\"pageview\\\",\\\"timestamp\\\":\\\"2024-05-02T11:00:00Z\\\"}]}]\",\"dataFormat\":\"json\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\",\"includeConversionEvents\":true}", + "description": "Analyze JSON session data for May 2024 including conversion events." + }, + { + "inputJson": "{\"sessionData\":\"sessionId,userId,eventType,timestamp\\ns1,u1,pageview,2024-05-01T10:00:00Z\\ns1,u1,conversion,2024-05-01T10:05:00Z\\ns2,u2,pageview,2024-05-02T11:00:00Z\",\"dataFormat\":\"csv\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\",\"userSegment\":{\"deviceType\":\"mobile\"},\"includeConversionEvents\":false}", + "description": "Analyze CSV session data for May 2024 filtering for mobile device users, excluding conversion events." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "marketing-automation.analyzeText", + "description": "Analyzes marketing-related text content by extracting sentiment, key topics, and marketing tone to improve campaign effectiveness. Accepts raw text input and optional parameters for analysis depth and language. Outputs structured insights including sentiment score, dominant topics, and tone classification.", + "category": "marketing-automation", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The marketing text content to analyze for sentiment, topics, and tone.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "ISO code of the text language (e.g., 'en' for English). Helps improve accuracy of analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis in the result.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopics", + "type": "boolean", + "description": "Whether to extract key topics from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTone", + "type": "boolean", + "description": "Whether to classify the marketing tone of the text (e.g., persuasive, informative).", + "required": false, + "defaultValue": "true" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: 'basic', 'detailed', or 'comprehensive'. Higher levels provide more insights but take longer.", + "required": false, + "defaultValue": "basic" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis result including sentiment score (-1 to 1), array of key topics with confidence scores, and marketing tone classification." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze marketing content to understand audience engagement factors such as sentiment, topical relevance, and tone style. This aids in optimizing copywriting, targeting, and campaign strategies by providing actionable insights from raw text data.", + "limitations": "Does not analyze images or multimedia content; sentiment and tone detection accuracy may vary based on language and input quality; not a substitute for human nuanced review.", + "examples": [ + "Analyze the sentiment and key topics of this new product launch email copy.", + "Determine the marketing tone of this social media ad text and identify main themes.", + "Provide a detailed analysis of customer feedback text to identify sentiment and trending topics." + ] + }, + "tags": [ + "text-analysis", + "marketing", + "sentiment", + "topic-extraction", + "tone-detection", + "content-optimization" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Introducing our latest eco-friendly water bottle that keeps your drinks cold for 24 hours! Perfect for active lifestyles.\",\"language\":\"en\",\"includeSentiment\":true,\"includeTopics\":true,\"includeTone\":true,\"analysisDepth\":\"basic\"}", + "description": "Analyze a product promotion text for sentiment, topics, and tone." + }, + { + "inputJson": "{\"textContent\":\"Don't miss out on our summer sale! Up to 50% off on select items.\",\"includeSentiment\":true,\"includeTopics\":true,\"includeTone\":true,\"analysisDepth\":\"detailed\"}", + "description": "Analyze a promotional sale announcement with detailed insights." + }, + { + "inputJson": "{\"textContent\":\"Customer reviews show great satisfaction but some concerns about delivery times.\",\"language\":\"en\",\"includeSentiment\":true,\"includeTopics\":true,\"includeTone\":false,\"analysisDepth\":\"comprehensive\"}", + "description": "Analyze customer feedback to understand sentiment and key issues, ignoring tone." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "marketing-automation.analyzeHeading", + "description": "This tool analyzes the effectiveness of marketing campaign headings by evaluating input heading text based on clarity, emotional impact, keyword presence, and length. Given a heading string, it returns a detailed analysis including scores and improvement suggestions to optimize engagement and conversion rates.", + "category": "marketing-automation", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The marketing campaign heading text to analyze for effectiveness.", + "required": true, + "defaultValue": "" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "An array of keywords the heading should ideally include to improve relevance and SEO.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum desired length of the heading in characters to evaluate conciseness.", + "required": false, + "defaultValue": "60" + }, + { + "name": "analyzeEmotionalTone", + "type": "boolean", + "description": "Whether to analyze the emotional tone of the heading to assess impact.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing clarity score, emotional tone score, keyword presence report, length evaluation, and actionable suggestions for improving the heading." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate and improve marketing campaign headings to ensure they effectively attract attention, include important keywords, maintain ideal length, and evoke desired emotional responses, thereby optimizing click-through and conversion rates.", + "limitations": "This tool does not generate new headings or rewrite content; it only analyzes provided headings. It does not evaluate other campaign elements like images or overall strategy.", + "examples": [ + "Analyze the effectiveness of a campaign heading for email marketing.", + "Check keyword presence and length in a promotional banner heading.", + "Evaluate emotional impact of a landing page headline." + ] + }, + "tags": [ + "marketing", + "automation", + "analysis", + "heading", + "SEO", + "content-optimization", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Unlock Your Best Summer Deals Today!\",\"focusKeywords\":[\"summer\",\"deals\"],\"maxLength\":50,\"analyzeEmotionalTone\":true}", + "description": "Analyze a promotional heading with specific focus keywords and standard max length." + }, + { + "inputJson": "{\"headingText\":\"Discover the Future of Sustainable Tech\",\"focusKeywords\":[\"sustainable\",\"tech\",\"future\"],\"maxLength\":60,\"analyzeEmotionalTone\":false}", + "description": "Evaluate a tech product heading focusing on keyword inclusion without emotional tone analysis." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "marketing-automation.analyzeWord", + "description": "Analyzes a given word or phrase to determine its marketing effectiveness based on sentiment, emotional impact, relevance to target audience, and potential for engagement. Accepts a word or phrase string and optional context parameters, then outputs a detailed analysis including sentiment score, keyword strength, and recommendations for usage in campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word or short phrase to analyze for marketing effectiveness.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) of the word for accurate sentiment and relevance analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description or category of the target audience to tailor analysis for relevance (e.g., 'millennials', 'tech professionals').", + "required": false, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional context where the word will be used (e.g., 'email subject line', 'social media ad') to fine-tune recommendations.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCompetitorComparison", + "type": "boolean", + "description": "If true, compares word effectiveness against competitor campaign word usage trends.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Analysis object containing sentiment score (-1 to 1), emotional impact summary, keyword strength score, relevance to target audience rating, usage recommendations, and optional competitor comparison insights." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the impact and suitability of a specific word or phrase in a marketing context. It helps optimize word choices for campaign messaging by providing data-driven insight on sentiment, emotional appeal, and audience relevance, boosting engagement potential.", + "limitations": "This tool does not generate new words or phrases, nor does it analyze complete texts or long documents. Sentiment and relevance scoring rely on language and context provided, so incomplete context may reduce accuracy.", + "examples": [ + "Analyze the word 'innovative' for a campaign targeting tech professionals.", + "Evaluate the phrase 'limited time offer' for an email subject line targeting young adults.", + "Check the sentiment and emotional impact of the word 'luxury' compared to competitor usage." + ] + }, + "tags": [ + "marketing", + "analysis", + "word", + "sentiment", + "engagement", + "campaign", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"word\":\"innovative\",\"language\":\"en\",\"targetAudience\":\"tech professionals\",\"context\":\"email subject line\",\"includeCompetitorComparison\":true}", + "description": "Analyze the word 'innovative' for its marketing effectiveness targeting tech professionals in an email subject line with competitor usage comparison." + }, + { + "inputJson": "{\"word\":\"limited time offer\",\"language\":\"en\",\"targetAudience\":\"young adults\",\"context\":\"social media ad\",\"includeCompetitorComparison\":false}", + "description": "Evaluate the phrase 'limited time offer' for relevance and emotional impact in a social media ad targeting young adults." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "marketing-automation.analyzeSentence", + "description": "Analyzes a marketing sentence by performing sentiment analysis, detecting key marketing themes, and evaluating emotional impact. Accepts a single text sentence input and returns sentiment scores, identified themes (e.g., urgency, exclusivity, trust), and emotional tone to help optimize marketing messages for target audiences.", + "category": "marketing-automation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The marketing sentence text to analyze for sentiment and themes.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the sentence for analysis model selection.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeEmotionAnalysis", + "type": "boolean", + "description": "Whether to analyze and return emotional tone scores.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment polarity, detected marketing themes, and emotional tone scores relevant to marketing impact." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate the effectiveness and emotional appeal of marketing sentences. It helps identify how positive, negative, or neutral a message is, what marketing themes are emphasized, and the emotional tone it conveys, aiding in optimizing copy for campaigns.", + "limitations": "Cannot replace comprehensive campaign strategy analysis; limited to single sentences and does not assess entire campaign context or audience segmentation.", + "examples": [ + "Analyze the sentiment and themes in this sentence: 'Limited time offer! Save big today.'", + "Determine if the sentence 'Our product is trusted by millions worldwide.' conveys trust and positivity.", + "Check emotional tones in the phrase 'Hurry, only a few spots left!'" + ] + }, + "tags": [ + "marketing", + "analysis", + "sentiment", + "emotion", + "copywriting", + "messageOptimization" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"Exclusive deal just for you! Act now before it's gone.\",\"language\":\"en\",\"includeEmotionAnalysis\":true}", + "description": "Analyze an urgent and exclusive marketing sentence for sentiment, themes, and emotional tone." + }, + { + "inputJson": "{\"sentence\":\"Our customers love the reliable quality of our products.\",\"language\":\"en\",\"includeEmotionAnalysis\":true}", + "description": "Evaluate the trustworthiness and positivity in a customer trust-related marketing sentence." + }, + { + "inputJson": "{\"sentence\":\"Don't miss out on savings this weekend only!\",\"language\":\"en\",\"includeEmotionAnalysis\":false}", + "description": "Analyze the sentiment and marketing themes without emotional tone analysis in a sales urgency sentence." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "marketing-automation.analyzeAnomaly", + "description": "Analyzes marketing campaign performance data to detect anomalies in key metrics such as click-through rates, conversion rates, or engagement over a specified period. Accepts time-series data, applies statistical and machine learning models to identify unusual patterns or deviations, and outputs detailed anomaly reports with timestamps, impacted metrics, and severity scores.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names to analyze for anomalies, e.g., ['clickThroughRate','conversionRate']", + "required": true, + "defaultValue": "[]" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted start date of analysis period", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted end date of analysis period", + "required": true, + "defaultValue": "" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Threshold sensitivity for anomaly detection (0 to 1), higher means more anomalies detected", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "aggregateBy", + "type": "string", + "description": "Granularity of data aggregation, e.g., 'daily', 'hourly', or 'weekly'", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected anomalies, each with metric name, timestamp, anomaly score, and description of the anomaly." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring marketing campaign analytics to automatically identify abnormal behavior or unexpected changes in key performance indicators. Ideal for early detection of potential issues or opportunities needing attention in campaigns, saving manual analysis time and improving responsiveness.", + "limitations": "Cannot explain root causes of anomalies or directly modify campaigns. Requires sufficient and clean time-series data. May produce false positives if data is noisy or incomplete.", + "examples": [ + "Find anomalies in click-through rate and conversion rate for campaign XYZ from Jan 1 to Jan 31.", + "Analyze daily engagement and bounce rate metrics for campaign ABC over the last two weeks with high sensitivity.", + "Identify unusual spikes or drops in weekly conversion rates for campaign 1234 between March 1 and March 31." + ] + }, + "tags": [ + "marketing", + "analytics", + "anomaly-detection", + "campaign-monitoring", + "time-series", + "automation" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"cmp12345\",\"metrics\":[\"clickThroughRate\",\"conversionRate\"],\"startDate\":\"2024-04-01T00:00:00Z\",\"endDate\":\"2024-04-30T23:59:59Z\",\"sensitivity\":0.85,\"aggregateBy\":\"daily\"}", + "description": "Detect anomalies in daily click-through and conversion rates for April 2024 for campaign cmp12345 with high sensitivity." + }, + { + "inputJson": "{\"campaignId\":\"spring_sale_2024\",\"metrics\":[\"engagement\",\"bounceRate\"],\"startDate\":\"2024-03-15T00:00:00Z\",\"endDate\":\"2024-04-15T23:59:59Z\",\"sensitivity\":0.7,\"aggregateBy\":\"hourly\"}", + "description": "Analyze hourly engagement and bounce rate metrics for the Spring Sale 2024 campaign for one month with moderate sensitivity." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "marketing-automation.analyzeParagraph", + "description": "Analyzes a given marketing text paragraph to evaluate sentiment, extract key marketing keywords, and assess tone and engagement potential. Accepts textual input and returns structured analysis useful for refining marketing messages.", + "category": "marketing-automation", + "parameters": [ + { + "name": "paragraphText", + "type": "string", + "description": "The marketing paragraph text to analyze for sentiment, keywords, and tone.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text (e.g., 'en' for English) to tailor analysis accordingly.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Whether to extract key marketing keywords from the paragraph text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the paragraph text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeTone", + "type": "boolean", + "description": "Whether to analyze tone and engagement potential of the paragraph text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment score (e.g., positive, neutral, negative), list of extracted marketing keywords, tone classification (e.g., persuasive, informative), and an engagement potential score." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate and improve marketing content by understanding sentiment, identifying impactful keywords, and assessing overall tone to optimize messaging effectiveness in campaigns.", + "limitations": "Does not generate new marketing content or provide in-depth industry-specific keyword suggestions. Analysis accuracy depends on input text clarity and language support.", + "examples": [ + "Analyze the sentiment and keywords in this product promotion paragraph.", + "Evaluate the tone and engagement potential of a campaign's introductory text.", + "Extract marketing keywords from a newsletter paragraph to optimize SEO." + ] + }, + "tags": [ + "marketing", + "analysis", + "sentiment", + "keywords", + "tone", + "engagement", + "content-evaluation" + ], + "examples": [ + { + "inputJson": "{\"paragraphText\":\"Our new smartwatch offers advanced health tracking features that keep you motivated and connected all day.\",\"language\":\"en\",\"extractKeywords\":true,\"analyzeSentiment\":true,\"analyzeTone\":true", + "description": "Analyze a product promotion paragraph for sentiment, keywords, and tone." + }, + { + "inputJson": "{\"paragraphText\":\"Don't miss out on our exclusive summer sale with discounts up to 50%! Shop now and save big.\",\"extractKeywords\":true,\"analyzeSentiment\":true}", + "description": "Evaluate a promotional sale paragraph extracting keywords and sentiment." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "marketing-automation.analyzeConversion", + "description": "Analyzes marketing campaign conversion data by processing input metrics such as visits, leads, and sales over time. It calculates conversion rates, identifies trends and bottlenecks, and generates summary statistics and insights to optimize campaign performance.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Identifier of the marketing campaign to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date of the analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date of the analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "conversionStages", + "type": "array", + "description": "Ordered list of conversion funnel stages to consider (e.g., ['visit','lead','sale']).", + "required": false, + "defaultValue": "[\"visit\",\"lead\",\"sale\"]" + }, + { + "name": "metrics", + "type": "array", + "description": "Specific metrics to analyze (e.g., ['conversionRate','dropOffRate']).", + "required": false, + "defaultValue": "[\"conversionRate\"]" + } + ], + "returns": { + "type": "object", + "description": "Structured report including overall conversion rates per stage, time series trend data, bottleneck identification, and actionable recommendations." + }, + "aiAgent": { + "useCase": "Use this tool to quantitatively evaluate the effectiveness of marketing campaigns by analyzing conversion data across defined funnel stages over a selectable time period. Helpful for marketing analysts and automation agents aiming to optimize lead generation and sales outcomes by identifying strengths and weaknesses in the conversion process.", + "limitations": "This tool does not directly access raw campaign data or real-time feeds; it requires pre-collected and structured data input associated with campaignId. It also does not perform campaign setup or media buying optimization.", + "examples": [ + "Analyze conversion performance for campaign ID 'cmp123' during the last quarter.", + "Provide trend insights and bottleneck detection on leads to sales conversion for campaign 'cmp456' between 2024-01-01 and 2024-03-31.", + "Calculate overall conversion rates and identify stages with highest drop-off for campaign 'springLaunch2024'." + ] + }, + "tags": [ + "marketing", + "analytics", + "conversion", + "automation", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"cmp123\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"conversionStages\":[\"visit\",\"lead\",\"sale\"],\"metrics\":[\"conversionRate\",\"dropOffRate\"]}", + "description": "Analyze conversion rates and drop-off across visit-lead-sale funnel for campaign cmp123 in Q1 2024." + }, + { + "inputJson": "{\"campaignId\":\"launch2024\",\"metrics\":[\"conversionRate\"]}", + "description": "Calculate overall conversion rates for campaign launch2024 using default date range and funnel stages." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "marketing-automation.analyzeEvent", + "description": "Analyzes marketing event data such as campaign interactions or customer engagement events. Accepts event logs or structured event data, performs aggregation and statistical insights (e.g., event frequency, conversion rates, attendee behavior patterns), and outputs a detailed analysis report highlighting key metrics and trends relevant for marketing optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of event objects containing event details such as type, timestamp, user attributes, and metadata for analysis", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted start date to filter events (inclusive). If omitted, includes all events prior.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted end date to filter events (inclusive). If omitted, includes all events after startDate.", + "required": false, + "defaultValue": "" + }, + { + "name": "eventTypes", + "type": "array", + "description": "List of event types to include in analysis. If empty or omitted, analyzes all event types.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "groupBy", + "type": "string", + "description": "Dimension to group analysis by, such as 'eventType', 'userSegment', or 'campaignId'. If empty, no grouping applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeConversionRate", + "type": "boolean", + "description": "Whether to compute conversion rates based on specified conversion event types.", + "required": false, + "defaultValue": "true" + }, + { + "name": "conversionEventTypes", + "type": "array", + "description": "List of event types considered as conversions, used if includeConversionRate is true.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated event metrics, including counts, frequencies, conversion rates, and time-based trends grouped by specified dimensions if provided." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand marketing event data to extract insights about user engagement, campaign performance, event distribution over time, and conversion effectiveness. Ideal for generating reports or feeding downstream automation with summarized metrics from raw event logs.", + "limitations": "This tool cannot perform raw data cleaning or anomaly detection beyond basic filtering. It relies on well-structured event data with consistent fields. Complex predictive modeling or causal inference is outside its scope.", + "examples": [ + "Analyze event data from last quarter for types 'click' and 'impression' grouped by campaignId.", + "Compute conversion rates for user signup events from marketing events collected in the past month.", + "Summarize attendee interactions by user segment for an event marketing campaign period." + ] + }, + "tags": [ + "marketing", + "automation", + "analytics", + "event-analysis", + "conversion", + "reporting", + "campaign", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"eventType\":\"click\",\"timestamp\":\"2024-04-10T12:34:56Z\",\"userId\":\"u123\",\"campaignId\":\"camp1\"},{\"eventType\":\"impression\",\"timestamp\":\"2024-04-10T12:35:10Z\",\"userId\":\"u124\",\"campaignId\":\"camp1\"},{\"eventType\":\"click\",\"timestamp\":\"2024-04-11T08:22:00Z\",\"userId\":\"u125\",\"campaignId\":\"camp2\"}],\"startDate\":\"2024-04-01T00:00:00Z\",\"endDate\":\"2024-04-30T23:59:59Z\",\"eventTypes\":[\"click\",\"impression\"],\"groupBy\":\"campaignId\",\"includeConversionRate\":true,\"conversionEventTypes\":[\"click\"]}", + "description": "Analyze clicks and impressions for April 2024 grouped by campaign ID, including conversion rate for click events." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "marketing-automation.analyzeTrend", + "description": "Analyzes marketing data trends over time by accepting campaign performance metrics or social media data, applies statistical methods and trend detection algorithms, and outputs detailed insights about trend direction, strength, anomalies, and predictions for future performance.", + "category": "marketing-automation", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "Type of input data (e.g., 'socialMedia', 'emailCampaign', 'adPerformance').", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying 'startDate' and 'endDate' (ISO strings) to define the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of performance metric names to analyze (e.g., ['clicks','impressions','engagementRate']).", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationInterval", + "type": "string", + "description": "Interval for data aggregation ('daily', 'weekly', 'monthly').", + "required": false, + "defaultValue": "daily" + }, + { + "name": "trendDetectionMethod", + "type": "string", + "description": "Statistical method to detect trends ('linearRegression', 'movingAverage', 'seasonalDecompose').", + "required": false, + "defaultValue": "linearRegression" + }, + { + "name": "includeForecast", + "type": "boolean", + "description": "Whether to include future trend forecasts based on historical data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "forecastHorizon", + "type": "number", + "description": "Number of future periods to forecast if includeForecast is true.", + "required": false, + "defaultValue": "7" + } + ], + "returns": { + "type": "object", + "description": "An object containing identified trends for each metric including trend direction ('up', 'down', 'stable'), strength (numeric score), detected anomalies with timestamps, and optional forecast values with confidence intervals." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing marketing campaign data or social media metrics over time to detect and understand underlying trends, evaluate campaign effectiveness, and anticipate future performance. It helps automate data-driven marketing strategy adjustments.", + "limitations": "Does not perform data cleansing or integrate raw data from external sources. Accuracy depends on quality and consistency of the input data. It supports pre-defined trend detection methods but not custom algorithms.", + "examples": [ + "Analyze trending engagement rate in social media campaigns over the past quarter.", + "Identify anomalies in email marketing click rates during last 3 months.", + "Forecast impressions trends for weekly online ads for next 2 weeks." + ] + }, + "tags": [ + "marketing", + "analytics", + "trend analysis", + "campaign performance", + "forecasting", + "time series" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"socialMedia\",\"timeRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\"},\"metrics\":[\"engagementRate\",\"reach\"],\"aggregationInterval\":\"weekly\",\"trendDetectionMethod\":\"movingAverage\",\"includeForecast\":true,\"forecastHorizon\":4}", + "description": "Analyze weekly engagement rate and reach trends from social media campaigns in Q1 2023 and forecast next month." + }, + { + "inputJson": "{\"dataSource\":\"emailCampaign\",\"timeRange\":{\"startDate\":\"2023-02-01\",\"endDate\":\"2023-04-30\"},\"metrics\":[\"clicks\",\"openRate\"],\"aggregationInterval\":\"daily\",\"trendDetectionMethod\":\"linearRegression\",\"includeForecast\":false}", + "description": "Daily trend analysis on clicks and open rates of email campaigns from Feb to April 2023 with no forecast." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "marketing-automation.analyzeDashboard", + "description": "Analyzes marketing campaign dashboards by ingesting raw performance data and configuration options to produce summarized insights, trend analyses, and KPI evaluations. The tool accepts campaign metrics and dashboard settings, performs data aggregation, comparison against goals, and outputs a structured report highlighting key findings.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "object", + "description": "Raw marketing campaign data including metrics like impressions, clicks, conversions over time.", + "required": true, + "defaultValue": "" + }, + { + "name": "dashboardConfig", + "type": "object", + "description": "Configuration settings of the dashboard such as selected KPIs, date ranges, and segmentation filters.", + "required": true, + "defaultValue": "" + }, + { + "name": "comparePeriod", + "type": "string", + "description": "Optional parameter specifying a previous period (e.g., 'last_month') to compare against for trend analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis output report; supports 'summary' or 'detailed'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include automated marketing improvement recommendations based on analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report containing aggregated metrics, trend insights, KPI evaluations, and optionally improvement recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the performance and effectiveness of marketing campaigns through their dashboards. It helps in understanding metric trends, comparing periods, and extracting actionable insights for marketing optimization.", + "limitations": "Does not connect to live data sources or fetch raw data automatically; requires pre-provided campaign data. Does not perform creative or qualitative content analysis.", + "examples": [ + "Analyze last quarter's Facebook ad campaign dashboard with focus on conversion rate and ROAS.", + "Generate a detailed analysis report comparing current and previous month campaign KPIs.", + "Provide marketing optimization recommendations based on email campaign dashboard data." + ] + }, + "tags": [ + "marketing", + "analytics", + "dashboard", + "campaign-analysis", + "KPI", + "reporting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":{\"impressions\":50000,\"clicks\":1200,\"conversions\":150,\"revenue\":4500,\"dateRange\":\"2024-01-01 to 2024-03-31\"},\"dashboardConfig\":{\"selectedKPIs\":[\"CTR\",\"ConversionRate\",\"ROAS\"],\"dateRange\":\"2024-01-01 to 2024-03-31\",\"segments\":[\"age:25-34\",\"device:mobile\"]},\"comparePeriod\":\"last_quarter\",\"outputFormat\":\"summary\",\"includeRecommendations\":true}", + "description": "Summarize Q1 campaign performance with comparison to previous quarter and generate high-level recommendations." + }, + { + "inputJson": "{\"campaignData\":{\"emailOpens\":2000,\"emailClicks\":400,\"subscriptions\":50,\"dateRange\":\"2024-05-01 to 2024-05-31\"},\"dashboardConfig\":{\"selectedKPIs\":[\"OpenRate\",\"ClickThroughRate\",\"SubscriptionRate\"],\"dateRange\":\"2024-05-01 to 2024-05-31\"},\"outputFormat\":\"detailed\",\"includeRecommendations\":false}", + "description": "Produce a detailed report on May email campaign KPIs without recommendations." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "marketing-automation.analyzeKPI", + "description": "Analyzes marketing KPIs by accepting structured campaign data and performance metrics, calculating key indicators such as conversion rates, ROI, click-through rates, and engagement statistics. It outputs a summarized report highlighting KPI trends, benchmarks, and actionable insights for campaign optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "array", + "description": "Array of objects representing campaign performance metrics over time (e.g., impressions, clicks, conversions).", + "required": true, + "defaultValue": "" + }, + { + "name": "kpisToAnalyze", + "type": "array", + "description": "List of KPI names to analyze such as 'conversionRate', 'roi', 'clickThroughRate'. If empty, analyzes all available KPIs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeFrameStart", + "type": "string", + "description": "Start date (ISO 8601) for the time frame of KPI analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeFrameEnd", + "type": "string", + "description": "End date (ISO 8601) for the time frame of KPI analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "benchmarkValues", + "type": "object", + "description": "Optional object providing benchmark values for KPIs to compare performance against industry or historical standards.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Flag indicating whether to include trend analysis over the specified time frame.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object summarizing each KPI with current values, trend direction, deviation from benchmarks, and actionable insights for marketing campaign improvements." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the effectiveness of marketing campaigns by analyzing key performance indicators extracted from raw campaign data. It's useful for generating detailed reports that assist in decision-making for campaign adjustments and budget allocation.", + "limitations": "This tool does not collect raw data from external sources; input data must be preprocessed and accurately structured. It also does not predict future KPI values beyond identifying trends from historical data.", + "examples": [ + "Analyze KPIs for the last quarter to see how our paid ads performed compared to industry benchmarks.", + "Generate a KPI analysis report from campaign data including conversion rates and ROI for multiple campaigns.", + "Provide trends and insights about click-through rates and engagement metrics from recent marketing emails." + ] + }, + "tags": [ + "marketing", + "automation", + "analytics", + "KPI", + "campaign analysis", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":[{\"date\":\"2024-04-01\",\"impressions\":10000,\"clicks\":500,\"conversions\":50,\"revenue\":2500}],\"kpisToAnalyze\":[\"conversionRate\",\"roi\"],\"timeFrameStart\":\"2024-04-01\",\"timeFrameEnd\":\"2024-04-30\",\"benchmarkValues\":{\"conversionRate\":0.05,\"roi\":1.5},\"includeTrends\":true}", + "description": "Analyze conversion rate and ROI KPIs for April 2024 campaign data with benchmarks." + }, + { + "inputJson": "{\"campaignData\":[{\"date\":\"2024-05-01\",\"impressions\":15000,\"clicks\":850,\"conversions\":80}],\"kpisToAnalyze\":[],\"timeFrameStart\":\"2024-05-01\",\"timeFrameEnd\":\"2024-05-31\",\"benchmarkValues\":{},\"includeTrends\":false}", + "description": "Analyze all KPIs from May 2024 campaign data without trend analysis or benchmarks." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "marketing-automation.analyzeMetric", + "description": "Analyzes marketing campaign metrics by accepting raw metric data and contextual parameters. It processes time-series or aggregate marketing data, performs trend analysis, calculates key performance indicators, and outputs an interpretable summary report with insights and recommendations for campaign optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "metricData", + "type": "array", + "description": "An array of objects representing the raw metric data points to analyze, each with timestamps and values.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "A string specifying the type of metric being analyzed (e.g., 'clicks', 'impressions', 'conversions').", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 format start date for the analysis period (e.g., '2024-01-01').", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 format end date for the analysis period (e.g., '2024-01-31').", + "required": false, + "defaultValue": "" + }, + { + "name": "compareToPreviousPeriod", + "type": "boolean", + "description": "Flag indicating whether the tool should compare metrics to the previous period for trend detection.", + "required": false, + "defaultValue": "false" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for analysis such as 'daily', 'weekly', or 'monthly'.", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "A structured report object containing summary statistics, trend analyses, KPI calculations, and actionable insights related to the input marketing metric data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand and provide insights on marketing campaign performance metrics over a given period. It helps convert raw data into actionable analysis, trends, and recommendations for improving campaign effectiveness.", + "limitations": "This tool does not perform raw data collection or cleansing; input data must be preprocessed and formatted correctly. It also does not execute campaign actions or predict future trends beyond trend comparison with past data.", + "examples": [ + "Analyze the daily clicks metric for the last month and compare it to the previous month.", + "Provide a summary and insights for conversions from a recent campaign dataset.", + "Generate trend analysis of weekly impressions over the past quarter." + ] + }, + "tags": [ + "marketing", + "automation", + "analytics", + "metrics", + "campaign", + "performance", + "trend-analysis" + ], + "examples": [ + { + "inputJson": "{\"metricData\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"value\":120},{\"timestamp\":\"2024-04-02T00:00:00Z\",\"value\":150}],\"metricType\":\"clicks\",\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-07\",\"compareToPreviousPeriod\":true,\"granularity\":\"daily\"}", + "description": "Daily clicks data for the first week of April 2024 with comparison to the previous week." + }, + { + "inputJson": "{\"metricData\":[{\"timestamp\":\"2024-03-01T00:00:00Z\",\"value\":5000},{\"timestamp\":\"2024-03-31T00:00:00Z\",\"value\":7200}],\"metricType\":\"impressions\",\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"compareToPreviousPeriod\":false,\"granularity\":\"monthly\"}", + "description": "Monthly impressions metric for March 2024 without comparison." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "marketing-automation.analyzeMention", + "description": "Analyzes brand or product mentions from provided communication text or social media data. Accepts raw text or structured mention data, extracts sentiment, key topics, and mention frequency, then outputs a detailed analysis report highlighting positive, negative, or neutral sentiment trends and key influencer impact.", + "category": "marketing-automation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw text or communication content containing mentions to analyze, can be social media posts, reviews, or comments.", + "required": false, + "defaultValue": "" + }, + { + "name": "mentionData", + "type": "array", + "description": "Structured array of mention objects including text, author, timestamp fields to analyze for sentiment and trends.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') to guide sentiment analysis and keyword extraction.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'startDate' and 'endDate' (ISO 8601 strings) to limit analysis to mentions in this period.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeNeutral", + "type": "boolean", + "description": "Whether to include neutral sentiment mentions in the analysis output. Defaults to false to focus on polarized opinions.", + "required": false, + "defaultValue": "false" + }, + { + "name": "topInfluencerCount", + "type": "number", + "description": "Number of top influencers to identify based on mention impact or reach, default is 5.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive analysis report including total mention counts, sentiment breakdown (positive, negative, neutral), key topics extracted from mentions, and a ranked list of top influencers with their mention metrics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to interpret raw text or structured mentions data to provide sentiment insights, identify trending topics related to a brand or product, and highlight influential mention sources, useful for marketing performance evaluation or campaign adjustment.", + "limitations": "Cannot access live social media data; must be provided with text or mention data. Sentiment analysis quality depends on language support and text clarity. Does not detect sarcastic or highly nuanced mentions reliably.", + "examples": [ + "Analyze sentiment and influencer impact from a list of social media mentions over the last month.", + "Extract key topics and mention trends from raw customer review texts in English.", + "Provide a sentiment breakdown including neutral for brand feedback comments within a custom date range." + ] + }, + "tags": [ + "marketing", + "sentiment-analysis", + "brand-monitoring", + "influencer-analysis", + "text-analysis", + "social-listening" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"I love the new product update! Great job team, but the pricing could be better.\",\"language\":\"en\",\"includeNeutral\":false}", + "description": "Analyze single input text for sentiment and topic extraction in English, excluding neutral sentiment." + }, + { + "inputJson": "{\"mentionData\":[{\"text\":\"The app keeps crashing, very frustrating.\",\"author\":\"user123\",\"timestamp\":\"2024-05-15T10:00:00Z\"},{\"text\":\"Amazing user experience and fantastic support!\",\"author\":\"influencerX\",\"timestamp\":\"2024-05-16T12:30:00Z\"}],\"language\":\"en\",\"includeNeutral\":false,\"topInfluencerCount\":3}", + "description": "Analyze structured mention data containing positive and negative user feedback, identify sentiment and top influencers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Mention", + "context": null + } + }, + { + "name": "marketing-automation.analyzeComment", + "description": "Analyzes customer comments or feedback from marketing channels to extract sentiment, detect key topics, and provide engagement metrics. Accepts raw comment text or an array of comments, processes them using natural language processing to identify positive, negative, or neutral sentiment, extracts main themes or keywords, and returns a structured summary report with insights for marketing optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "comments", + "type": "array", + "description": "An array of comment strings or feedback texts to analyze for sentiment and topics.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the comments to improve accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentimentScores", + "type": "boolean", + "description": "Whether to include detailed sentiment scores for each comment in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "extractKeywordsCount", + "type": "number", + "description": "Number of top keywords or topics to extract from the comments.", + "required": false, + "defaultValue": "5" + }, + { + "name": "minCommentLength", + "type": "number", + "description": "Minimum character length of comments to consider in the analysis, filtering out shorter texts.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall sentiment summary, keyword topics with relevance scores, counts of positive/negative/neutral comments, and optional detailed sentiment scores per comment if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly gain insights from customer comments or feedback collected through marketing campaigns, social media, or surveys. It helps evaluate public opinion, spot emerging topics, and measure engagement tone to support data-driven marketing decisions.", + "limitations": "The tool cannot replace in-depth human qualitative analysis and may not accurately analyze sarcasm, irony, or complex emotional nuances. It relies on textual data and lacks contextual understanding beyond the comments provided.", + "examples": [ + "Analyze recent social media comments to summarize customer sentiment about a new product launch.", + "Extract key topics and sentiment from feedback collected in a user survey.", + "Generate a report summarizing positive, neutral, and negative comments about a marketing campaign." + ] + }, + "tags": [ + "marketing", + "automation", + "sentiment-analysis", + "feedback", + "comments", + "NLP", + "customer-insights" + ], + "examples": [ + { + "inputJson": "{\"comments\":[\"I love the new features you introduced! Very helpful.\",\"The product is okay, but could use improvement.\",\"Terrible experience, I am very disappointed.\"],\"includeSentimentScores\":true}", + "description": "Analyze mixed sentiment comments from users including detailed sentiment scores." + }, + { + "inputJson": "{\"comments\":[\"Great campaign!\",\"Not impressed with the new update.\",\"Average service.\"],\"extractKeywordsCount\":3}", + "description": "Analyze a small set of comments focusing on extracting top 3 keywords and overall sentiment." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "marketing-automation.analyzeMessage", + "description": "Analyzes marketing message content provided as plain text, extracting key marketing metrics such as sentiment, call-to-action effectiveness, keyword relevance, and suggested improvements. It accepts message text and optional context parameters, processes linguistic and marketing-focused data, and outputs an analysis report including sentiments, scores, and optimization tips.", + "category": "marketing-automation", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The plain text content of the marketing message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional context or campaign type related to the message (e.g., email, social media) to tailor analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the message content to improve accuracy of analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSuggestions", + "type": "boolean", + "description": "Whether to include writing and call-to-action improvement suggestions in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment analysis (positive, neutral, negative scores), keyword relevance score, call-to-action effectiveness score, and optionally recommendations for message improvement." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the effectiveness and tone of a marketing message before deployment. It helps in understanding sentiment, key marketing metrics, and provides optimization suggestions to improve engagement and conversion rates.", + "limitations": "This tool analyzes text content only; it does not evaluate visual assets or full campaign performance. Sentiment and effectiveness scores are estimations and may require human review in nuance-sensitive contexts.", + "examples": [ + "Analyze my new email campaign message to understand its positivity and call-to-action strength.", + "Evaluate the social media post text for marketing impact and get suggestions for improvement.", + "Check the language tone and keyword relevance of our SMS marketing message." + ] + }, + "tags": [ + "marketing", + "analysis", + "automation", + "message", + "sentiment", + "call-to-action", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Don't miss out on our exclusive 50% off sale! Shop now and save big.\",\"context\":\"email\",\"language\":\"en\",\"includeSuggestions\":true}", + "description": "Analyzing an email message promoting a sale for sentiment, call-to-action effectiveness, and improvement tips." + }, + { + "inputJson": "{\"messageText\":\"Join our webinar to learn the secrets of digital marketing success.\",\"context\":\"social media\",\"language\":\"en\",\"includeSuggestions\":true}", + "description": "Analyzing a social media post promoting a webinar to assess message impact and suggestions for enhancement." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "marketing-automation.analyzeThread", + "description": "Analyzes a marketing communication thread such as an email chain or chat conversation. Accepts thread data including messages and metadata, processes sentiment, engagement metrics, key topics, and response delays, and returns a structured report outlining thread effectiveness and communication insights.", + "category": "marketing-automation", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier for the communication thread to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "Array of message objects within the thread, each containing sender, timestamp, and content fields.", + "required": false, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Optional ISO date string to filter messages starting from this date.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Optional ISO date string to filter messages up to this date.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag to enable sentiment analysis on each message. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEngagementMetrics", + "type": "boolean", + "description": "Flag to include engagement metrics such as reply rates and delays. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopicExtraction", + "type": "boolean", + "description": "Flag to perform key topic and keyword extraction from the thread. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Analysis report object containing sentiment summaries, engagement metrics like response times and rates, key topics discussed, and overall thread effectiveness score." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the quality and effectiveness of a marketing communication thread, whether email or chat, to guide campaign adjustments and optimize messaging strategies. Helpful for evaluating customer response behavior and identifying key discussion topics.", + "limitations": "Cannot analyze attachments or multimedia content embedded in the thread; quality depends on completeness and quality of supplied messages data; does not generate new responses or content.", + "examples": [ + "Analyze the email thread with ID 'thread123' to get sentiment and engagement insights.", + "Analyze messages from '2023-04-01' to '2023-04-10' including sentiment analysis.", + "Get a topic summary and response time metrics for marketing chat conversation thread ID 'conv456'." + ] + }, + "tags": [ + "marketing", + "automation", + "analysis", + "communication", + "thread", + "sentiment", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"email-thread-001\",\"includeSentimentAnalysis\":true,\"includeEngagementMetrics\":true,\"includeTopicExtraction\":true}", + "description": "Analyze the marketing email thread with ID 'email-thread-001' for sentiment, engagement, and topics." + }, + { + "inputJson": "{\"threadId\":\"chat-789\",\"messages\":[{\"sender\":\"agent\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"content\":\"Hello! How can I help you today?\"},{\"sender\":\"customer\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"content\":\"I'm interested in your product pricing.\"}],\"includeEngagementMetrics\":false}", + "description": "Analyze a short chat thread with explicit messages provided, skipping engagement metrics." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "marketing-automation.analyzeChannel", + "description": "Analyzes marketing communication channel data to assess performance metrics such as engagement, conversion rates, bounce rates, and audience demographics. Accepts input data from email, social media, or messaging platforms and outputs an analytical report summarizing channel effectiveness and recommendations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel (e.g. email, socialMedia, sms).", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Raw interaction data specific to the channel, such as message events, clicks, opens, impressions, or replies.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Date range for analysis with startDate and endDate in ISO format (e.g. {\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\"}).", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentFilters", + "type": "object", + "description": "Optional segmentation criteria to filter audience subsets (e.g. demographics, geography).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing key performance indicators like engagement rate, conversion rate, bounce rate, audience demographics, and actionable insights for the specified channel." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the performance of a marketing communication channel using raw event data to generate insights on engagement, conversion, and audience characteristics, enabling data-driven campaign optimization.", + "limitations": "Does not collect raw data; requires properly formatted input data. Cannot replace human strategic marketing decisions. Limited to structured event data from recognized communication channels.", + "examples": [ + "Analyze the email campaign performance data from last month focusing on open and click rates.", + "Evaluate our social media channel effectiveness for the last quarter segmented by age group.", + "Provide engagement metrics and recommendations for SMS marketing based on text message delivery and response data." + ] + }, + "tags": [ + "marketing", + "automation", + "channelAnalysis", + "campaignPerformance", + "engagement", + "conversion", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"email\",\"data\":{\"events\":[{\"type\":\"open\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"type\":\"click\",\"timestamp\":\"2024-05-01T10:05:00Z\"},{\"type\":\"bounce\",\"timestamp\":\"2024-05-01T10:01:00Z\"}],\"totalSent\":1000},\"timeRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"}}", + "description": "Analyze email campaign data from May 2024 to assess open and click rates and identify potential issues like bounces." + }, + { + "inputJson": "{\"channelType\":\"socialMedia\",\"data\":{\"posts\":[{\"impressions\":1000,\"engagements\":150,\"date\":\"2024-04-01\"},{\"impressions\":1200,\"engagements\":200,\"date\":\"2024-04-02\"}]},\"timeRange\":{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\"},\"segmentFilters\":{\"ageGroup\":\"18-24\"}}", + "description": "Evaluate social media channel engagement metrics for April 2024 filtered by age group 18-24." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "marketing-automation.analyzeReply", + "description": "Analyzes customer reply messages from marketing campaigns to extract sentiment, intent, and key feedback points. Accepts textual reply input, performs natural language processing to classify sentiment and intent, and outputs a structured summary including sentiment score, detected intent, and summary keywords.", + "category": "marketing-automation", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The raw text of the customer reply message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the reply text (e.g., 'en' for English) to optimize NLP models.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to include key extracted keywords in the output summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxKeywords", + "type": "number", + "description": "The maximum number of keywords to extract from the reply text.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis summary object containing sentiment score (range -1 to 1), sentiment label (e.g., positive, negative, neutral), detected intent category, an array of key feedback keywords, and a brief text summary of the reply content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand customer reply messages in marketing campaigns, to automatically gauge customer sentiment, infer their intent (e.g., inquiry, complaint, praise), and extract important feedback keywords. It helps in automating response prioritization, customer segmentation, and improving campaign messaging based on actual customer inputs.", + "limitations": "The tool cannot provide deep conversational context beyond the single reply message. Complex sarcasm, idioms, or highly ambiguous texts may reduce accuracy. It also does not perform reply generation or detailed customer profiling beyond the analyzed text.", + "examples": [ + "Analyze a customer's reply to a promotional email to understand if the customer is interested, confused, or dissatisfied.", + "Extract key topics mentioned in customer feedback replies from a recent marketing SMS campaign.", + "Determine the sentiment and intent of replies to a product launch announcement email to prioritize customer support responses." + ] + }, + "tags": [ + "marketing", + "automation", + "analysis", + "sentiment-analysis", + "reply", + "customer-feedback", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thanks for the great deal! I'm very happy with the service.\",\"language\":\"en\",\"includeKeywords\":true,\"maxKeywords\":3}", + "description": "Analyze a positive customer reply expressing satisfaction." + }, + { + "inputJson": "{\"replyText\":\"I didn't understand the offer details, can you clarify?\",\"language\":\"en\",\"includeKeywords\":true,\"maxKeywords\":4}", + "description": "Analyze a customer reply indicating confusion and request for clarification." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "marketing-automation.analyzeNotification", + "description": "Analyzes marketing notification campaign data to provide insights on delivery performance, engagement metrics, and audience segmentation. Accepts notification campaign IDs or raw event data, processes metrics like open rates, click rates, and conversions, and outputs a detailed performance report to optimize future campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Identifier of the notification campaign to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "eventData", + "type": "array", + "description": "Raw event data for notifications, including delivery and interaction timestamps and user IDs. Used if campaignId is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSegmentation", + "type": "boolean", + "description": "Whether to analyze and include audience segmentation insights in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metrics", + "type": "array", + "description": "Specific metrics to analyze, e.g., ['openRate', 'clickThroughRate', 'conversionRate']. Defaults to all key metrics if empty.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall metrics, trends over time, audience segment performance, and actionable insights for improving notification campaigns." + }, + "aiAgent": { + "useCase": "Use this tool to evaluate the effectiveness of marketing notification campaigns by examining delivery success, user engagement, and conversion metrics. It helps optimize campaign timing, content, and targeting by revealing performance patterns and segment responses. Ideal when raw events or campaign IDs with date ranges are available.", + "limitations": "Cannot send notifications or modify campaigns; analysis depends on data completeness and quality provided; may not integrate real-time streaming data.", + "examples": [ + "Analyze the past month's push notification campaign with ID 'camp123' to understand engagement trends and segment performance.", + "Evaluate raw event data for a recent email notification blast to extract open and click rates between 2024-01-01 and 2024-01-15.", + "Generate a report focusing on conversion rates and click-through rates for a specified campaign to optimize messaging strategies." + ] + }, + "tags": [ + "marketing", + "notification", + "analytics", + "campaign analysis", + "engagement", + "performance" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"camp123\",\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"includeSegmentation\":true}", + "description": "Analyze campaign 'camp123' performance and audience segmentation for March 2024." + }, + { + "inputJson": "{\"eventData\":[{\"userId\":\"u1\",\"event\":\"delivered\",\"timestamp\":\"2024-04-10T10:00:00Z\"},{\"userId\":\"u1\",\"event\":\"opened\",\"timestamp\":\"2024-04-10T10:05:00Z\"},{\"userId\":\"u2\",\"event\":\"delivered\",\"timestamp\":\"2024-04-10T10:00:00Z\"}],\"metrics\":[\"openRate\",\"clickThroughRate\"]}", + "description": "Analyze provided raw notification events focusing on open and click-through rates." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "marketing-automation.analyzeAlert", + "description": "Analyzes marketing security alerts by processing alert details such as notification type, message, timestamps, and severity. It evaluates potential threats or suspicious activities affecting marketing campaigns or data, and outputs a structured risk assessment report including threat level, recommended actions, and alert metadata.", + "category": "marketing-automation", + "parameters": [ + { + "name": "alertType", + "type": "string", + "description": "Type of the alert to analyze, e.g., phishing, data breach, suspicious login (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "alertMessage", + "type": "string", + "description": "Detailed message or content of the alert to be analyzed (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "alertTimestamp", + "type": "string", + "description": "ISO 8601 timestamp of when the alert was generated (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity level of the alert, e.g., low, medium, high, critical (optional)", + "required": false, + "defaultValue": "medium" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier of the marketing campaign related to this alert (optional)", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalData", + "type": "object", + "description": "Optional object including any extra data relevant to alert context (optional)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Analysis report detailing the threat assessment, including threatLevel (low, medium, high, critical), confidence score (0-1), recommended mitigation actions, and processed alert metadata." + }, + "aiAgent": { + "useCase": "This tool helps AI agents automatically analyze and assess security alerts related to marketing systems and campaigns. It is useful when an agent detects or receives marketing-related security notifications and needs to determine risk severity, impact, and next steps for mitigation. It bridges security alert data with marketing operational context for proactive defense.", + "limitations": "The tool cannot prevent attacks or fix security issues directly; it only analyzes alert data and provides recommendations. It may be limited by incomplete or inaccurate input alert information and does not replace full security incident investigations.", + "examples": [ + "Analyze a phishing alert received for a marketing email campaign", + "Assess the risk level of a suspicious login detected on a marketing platform account", + "Generate mitigation guidance from a high severity data breach alert impacting customer data" + ] + }, + "tags": [ + "marketing", + "security", + "alert-analysis", + "threat-assessment", + "automation", + "campaign-protection" + ], + "examples": [ + { + "inputJson": "{\"alertType\":\"phishing\",\"alertMessage\":\"Multiple users reported suspicious link in marketing newsletter\",\"alertTimestamp\":\"2024-05-15T08:30:00Z\",\"severityLevel\":\"high\",\"campaignId\":\"camp12345\",\"additionalData\":{\"detectedUrl\":\"http://malicious.example.com\"}}", + "description": "Analyze a phishing alert reporting suspicious link in a marketing newsletter campaign." + }, + { + "inputJson": "{\"alertType\":\"suspiciousLogin\",\"alertMessage\":\"Unusual login detected from unknown IP in marketing dashboard\",\"alertTimestamp\":\"2024-05-20T13:45:00Z\",\"severityLevel\":\"medium\",\"campaignId\":\"camp67890\"}", + "description": "Evaluate risk of a suspicious login event to marketing platform dashboard." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "marketing-automation.analyzeBudget", + "description": "Analyzes a marketing campaign budget by evaluating the allocation across channels, comparing planned versus actual spend, and providing key performance insights such as return on investment and cost efficiency. Accepts detailed budget and spend data as inputs and outputs a structured report with actionable analytics.", + "category": "marketing-automation", + "parameters": [ + { + "name": "plannedBudget", + "type": "object", + "description": "Object mapping marketing channels to their planned budget amounts in USD.", + "required": true, + "defaultValue": "" + }, + { + "name": "actualSpend", + "type": "object", + "description": "Object mapping marketing channels to their actual spend amounts in USD.", + "required": true, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Object mapping marketing channels to their key performance metrics (e.g., leads generated, conversions).", + "required": false, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the output report, e.g., 'summary' for high-level insights, 'detailed' for granular analysis.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object summarizing budget allocation, variance between planned and actual spending, performance efficiency metrics such as ROI per channel, and recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate how marketing budgets were utilized across multiple channels, detect overspending or underspending, and correlate spending with performance indicators. It helps in understanding budget efficiency and guiding adjustments for future campaigns.", + "limitations": "This tool does not track real-time spend updates, does not execute budget changes, and relies on accurate input data for meaningful analysis. It cannot replace financial auditing.", + "examples": [ + "Analyze the monthly marketing budget allocation and actual spend for the April campaign.", + "Generate a report comparing planned versus actual spend across channels and evaluate ROI.", + "Provide a detailed analysis of budget underspending and performance for the last quarter." + ] + }, + "tags": [ + "marketing", + "budget analysis", + "campaign performance", + "cost efficiency", + "ROI", + "marketing-automation" + ], + "examples": [ + { + "inputJson": "{\"plannedBudget\":{\"socialMedia\":10000,\"email\":5000,\"searchAds\":15000},\"actualSpend\":{\"socialMedia\":12000,\"email\":4500,\"searchAds\":14000},\"performanceMetrics\":{\"socialMedia\":{\"leads\":250,\"conversions\":35},\"email\":{\"leads\":100,\"conversions\":20},\"searchAds\":{\"leads\":300,\"conversions\":40}},\"reportFormat\":\"summary\"}", + "description": "Summarize the marketing budget spend and performance for social media, email, and search ads with planned and actual amounts." + }, + { + "inputJson": "{\"plannedBudget\":{\"socialMedia\":8000,\"email\":4000,\"searchAds\":12000,\"affiliate\":3000},\"actualSpend\":{\"socialMedia\":7500,\"email\":4100,\"searchAds\":13000,\"affiliate\":3500},\"performanceMetrics\":{\"socialMedia\":{\"conversions\":30},\"email\":{\"conversions\":18},\"searchAds\":{\"conversions\":45},\"affiliate\":{\"conversions\":15}},\"reportFormat\":\"detailed\"}", + "description": "Provide a detailed channel-wise comparison of planned versus actual budgets including conversion metrics." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Budget", + "context": null + } + }, + { + "name": "marketing-automation.analyzeIncident", + "description": "Analyzes marketing-related security incidents by accepting incident logs, campaign metadata, and threat intelligence data. It processes these inputs to identify the root cause, affected assets, and potential campaign impact, outputting a detailed incident report with risk assessment and recommended remediation steps.", + "category": "marketing-automation", + "parameters": [ + { + "name": "incidentLogs", + "type": "array", + "description": "List of security incident log entries related to marketing platforms, including timestamps and event details.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier of the marketing campaign affected by the incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatIntelligenceData", + "type": "object", + "description": "Optional object containing external threat intelligence relevant to the incident, such as known attacker signatures or vulnerabilities.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail for the analysis, e.g., 'basic', 'detailed', or 'comprehensive'.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "includeRemediation", + "type": "boolean", + "description": "Flag indicating whether to include remediation recommendations in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured incident analysis report including summary, root cause analysis, affected campaign components, risk level, and optional remediation suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze security incidents specifically impacting marketing campaigns or platforms. It helps identify how incidents affect campaign operations, assesses risk, and prepares actionable insights for marketing operations or security teams.", + "limitations": "This tool cannot detect incidents on its own; it requires prior incident logs and metadata. It focuses only on marketing-related security incidents and does not replace enterprise-wide security incident management.", + "examples": [ + "Analyze the recent phishing incident logs impacting campaign ID 'summer_promo_2024' to understand its root cause and impact.", + "Evaluate marketing platform breach logs with threat intelligence to generate a comprehensive incident report with remediation steps.", + "Generate a basic incident impact summary for campaign 'black_friday_2023' using given security logs." + ] + }, + "tags": [ + "security", + "marketing", + "incident analysis", + "automation", + "risk assessment", + "campaign management" + ], + "examples": [ + { + "inputJson": "{\"incidentLogs\":[{\"timestamp\":\"2024-06-10T13:45:00Z\",\"event\":\"unauthorizedAccess\",\"details\":\"Suspicious login detected from foreign IP.\"},{\"timestamp\":\"2024-06-10T14:00:00Z\",\"event\":\"dataExfiltration\",\"details\":\"Large export of customer emails.\"}],\"campaignId\":\"summer_sale_2024\",\"threatIntelligenceData\":{\"knownAttackers\":[\"APT28\"],\"vulnerabilities\":[\"CVE-2024-12345\"]},\"analysisDepth\":\"detailed\",\"includeRemediation\":true}", + "description": "Detailed analysis of unauthorized access and data exfiltration in the 'summer_sale_2024' campaign incorporating threat intelligence to produce comprehensive incident report with remediation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "marketing-automation.analyzeThreat", + "description": "Analyzes marketing campaign data and external signals to identify potential threats such as phishing, brand impersonation, or fraudulent ads. It accepts campaign metadata and threat indicators, processes risk factors using ML models, and outputs a detailed threat risk report with recommendations for mitigation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "object", + "description": "Structured data containing details about the marketing campaign to analyze, including channels, creatives, and targeting info.", + "required": true, + "defaultValue": "" + }, + { + "name": "externalThreatIndicators", + "type": "array", + "description": "List of external threat indicators such as suspicious domains, phishing URLs, or known bad actors relevant to marketing channels.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail in the threat analysis report, e.g., 'basic', 'detailed', or 'comprehensive'.", + "required": false, + "defaultValue": "\"basic\"" + }, + { + "name": "includeMitigationSuggestions", + "type": "boolean", + "description": "Whether to include actionable steps and recommendations for mitigating identified threats.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary of detected threats, risk scores, detailed findings for each threat type, and optional mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate marketing campaigns for potential security threats such as phishing attempts, fake brand content, or ads leading to malicious sites to protect brand integrity and user safety. It helps automate risk assessment by correlating campaign data with external threat intelligence.", + "limitations": "Cannot detect zero-day threats not included in externalThreatIndicators or unseen attack vectors without historical data. Does not perform network-level security scans.", + "examples": [ + "Identify phishing risks in our latest email campaign.", + "Analyze recent digital ads for potential brand impersonation threats.", + "Evaluate the risk level of social media ads based on suspicious external URLs." + ] + }, + "tags": [ + "marketing", + "security", + "threat-analysis", + "automation", + "campaign", + "phishing", + "fraud-detection", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":{\"campaignId\":\"camp123\",\"channels\":[\"email\",\"social\"],\"creatives\":[{\"id\":\"ad1\",\"type\":\"banner\",\"url\":\"http://malicious.example.com\"}],\"targetAudience\":\"general\"},\"externalThreatIndicators\":[{\"type\":\"phishing-url\",\"value\":\"malicious.example.com\"}],\"analysisDepth\":\"detailed\",\"includeMitigationSuggestions\":true}", + "description": "Analyze a marketing campaign with a known malicious URL to identify phishing threats and obtain mitigation advice." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "marketing-automation.analyzeVulnerability", + "description": "Analyzes potential vulnerabilities in marketing automation campaigns by examining inputs such as campaign configurations, user behavior patterns, and third-party integrations. Processes these data to detect weak points that could lead to data leaks, unauthorized access, or performance degradation. Returns a detailed vulnerability report with severity ratings and remediation recommendations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeThirdPartyIntegrations", + "type": "boolean", + "description": "Whether to include security analysis of third-party marketing service integrations.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkDataPrivacyCompliance", + "type": "boolean", + "description": "Flag to verify if the campaign complies with data privacy regulations (e.g., GDPR, CCPA).", + "required": false, + "defaultValue": "true" + }, + { + "name": "userSegments", + "type": "array", + "description": "Optional list of user segment identifiers to analyze for segment-specific vulnerabilities.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: basic, standard, or deep. Deep includes extensive checks and simulations.", + "required": false, + "defaultValue": "standard" + } + ], + "returns": { + "type": "object", + "description": "An object containing a categorized list of detected vulnerabilities with severity levels, affected components, impact descriptions, and detailed recommendations for mitigation or fixes." + }, + "aiAgent": { + "useCase": "Use this tool when assessing the security posture of automated marketing campaigns to proactively identify risks such as data leaks, misconfigurations, or privacy violations before campaign launch or iteration. It helps ensure compliance and safeguards sensitive user data in multi-channel marketing environments.", + "limitations": "Does not directly fix vulnerabilities or patch software; requires correct campaign identifiers and access permissions. It also does not replace comprehensive IT security audits but complements them focusing on marketing automation context.", + "examples": [ + "Analyze campaign 'summer_promo_2024' for vulnerabilities including third-party integrations and data privacy compliance.", + "Check the 'holiday_launch' campaign user segments for potential data leakage risks with a deep analysis.", + "Perform a basic vulnerability scan on campaign 'new_product_intro' without third-party integrations." + ] + }, + "tags": [ + "security", + "marketing-automation", + "vulnerability-analysis", + "campaign-security", + "data-privacy", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"summer_promo_2024\",\"includeThirdPartyIntegrations\":true,\"checkDataPrivacyCompliance\":true,\"userSegments\":[\"loyal_customers\",\"new_signups\"],\"analysisDepth\":\"deep\"}", + "description": "Run a deep vulnerability analysis on the 'summer_promo_2024' campaign considering integrations, privacy compliance and key user segments." + }, + { + "inputJson": "{\"campaignId\":\"holiday_launch\",\"includeThirdPartyIntegrations\":false,\"checkDataPrivacyCompliance\":true,\"analysisDepth\":\"standard\"}", + "description": "Standard analysis of the 'holiday_launch' campaign focusing on privacy compliance but excluding third-party integrations." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "marketing-automation.analyzeRisk", + "description": "Analyzes marketing campaign data to identify and assess potential risks such as audience overlap, compliance issues, fraud patterns, and budget exposure. Accepts campaign metadata and performance metrics, processes risk factors using predefined rules and machine learning models, then outputs a detailed risk assessment report highlighting vulnerabilities and mitigation suggestions.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "object", + "description": "Detailed information about the marketing campaign including channels, budgets, targeting parameters, and performance metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceRules", + "type": "array", + "description": "List of compliance and regulatory constraints relevant to the campaign to check for violations or risks.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fraudDetectionEnabled", + "type": "boolean", + "description": "Flag to enable analysis for potential fraud such as click spamming or bot activity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "Numeric threshold (0-1) to classify campaigns as low or high risk based on the calculated risk score.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "Risk assessment report including overall risk score, identified risk categories, specific issues with descriptions, and recommended mitigation actions." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing marketing campaigns to proactively identify risks that could lead to financial loss, compliance violations, or campaign underperformance. It assists in making data-driven decisions to adjust campaigns and minimize exposure to risks.", + "limitations": "Cannot guarantee detection of all risk factors, especially unforeseen external changes. Requires accurate and comprehensive input data. Not a replacement for professional risk audits.", + "examples": [ + "Analyze risk for campaign with large cross-channel activities to identify budget exposure and compliance issues", + "Assess fraud risk in paid social campaigns with suspected click anomalies", + "Evaluate impact of targeting overlap on campaign effectiveness and risk profile" + ] + }, + "tags": [ + "marketing", + "risk-analysis", + "campaign-management", + "automation", + "fraud-detection", + "compliance", + "budget-management" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":{\"channels\":[\"social\",\"email\"],\"budget\":50000,\"targetAudiences\":[\"18-25\",\"tech-enthusiasts\"],\"performanceMetrics\":{\"clickThroughRate\":0.05,\"conversionRate\":0.02}},\"complianceRules\":[\"GDPR\",\"CAN-SPAM\"],\"fraudDetectionEnabled\":true,\"riskThreshold\":0.7}", + "description": "Assess risk for a $50k campaign running social and email channels targeting young tech enthusiasts subject to GDPR and CAN-SPAM rules." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "marketing-automation.analyzeForecast", + "description": "This tool accepts historical marketing campaign data and business parameters as input to analyze and generate predictive forecasts about future campaign performance and ROI. It processes data trends, seasonal effects, and key metrics, outputting detailed forecasts with confidence intervals and actionable insights for campaign planning.", + "category": "marketing-automation", + "parameters": [ + { + "name": "historicalData", + "type": "array", + "description": "An array of past marketing campaign results, including performance metrics like impressions, clicks, conversions, and spend. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "string", + "description": "The period for forecasting (e.g., next quarter, next 6 months). Determines the scope of predictions. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "businessObjectives", + "type": "object", + "description": "Key business goals aligned with the forecast, such as target revenue, growth rate, or desired ROI. Helps tailor forecast outputs. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "seasonalAdjustments", + "type": "boolean", + "description": "Flag to enable adjusting forecasts for known seasonal patterns affecting marketing effectiveness. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (between 0 and 1) for statistical intervals around forecasted values. Default is 0.95 (95%). Optional.", + "required": false, + "defaultValue": "0.95" + } + ], + "returns": { + "type": "object", + "description": "An object containing predicted campaign metrics over the specified time frame including forecasts for impressions, clicks, conversions, expected ROI, confidence intervals, and strategic recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you want to predict how upcoming marketing campaigns may perform based on historical data and preset business goals. It helps in planning budget allocations and setting realistic performance targets by providing statistically grounded forecasts including confidence levels.", + "limitations": "This tool does not replace expert human judgment or guarantee future results; it relies on quality and completeness of historical data and may not capture sudden market changes or unrecorded external factors.", + "examples": [ + "Predict campaign performance and ROI for next quarter based on last two years of campaign data.", + "Analyze forecasts for a new product launch campaign incorporating target revenue objectives.", + "Generate adjusted forecasts accounting for seasonality effects for upcoming holiday marketing campaigns." + ] + }, + "tags": [ + "forecasting", + "marketing", + "automation", + "campaign-analysis", + "predictive-analytics", + "ROI", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"historicalData\":[{\"campaignId\":\"c001\",\"date\":\"2023-01-01\",\"impressions\":100000,\"clicks\":5000,\"conversions\":250,\"spend\":10000}],\"timeFrame\":\"next quarter\",\"businessObjectives\":{\"targetROI\":1.5},\"seasonalAdjustments\":true,\"confidenceLevel\":0.95}", + "description": "Forecast next quarter's campaign outcomes using one past campaign data record and business ROI targets with seasonality adjustments enabled." + }, + { + "inputJson": "{\"historicalData\":[{\"campaignId\":\"c001\",\"date\":\"2022-05-01\",\"impressions\":75000,\"clicks\":3000,\"conversions\":150,\"spend\":7000},{\"campaignId\":\"c002\",\"date\":\"2022-12-01\",\"impressions\":90000,\"clicks\":4500,\"conversions\":220,\"spend\":9000}],\"timeFrame\":\"next 6 months\",\"seasonalAdjustments\":false,\"confidenceLevel\":0.90}", + "description": "Generate a 6-month performance forecast from two past campaigns without seasonal adjustments at 90% confidence." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Forecast", + "context": null + } + }, + { + "name": "marketing-automation.analyzeExpense", + "description": "This tool accepts detailed expense data related to marketing campaigns, including amounts, dates, categories, and campaign identifiers. It processes the data to analyze spending patterns, compare expenses against budgets, identify cost efficiencies or overruns, and generate summarized reports highlighting key insights. The output is a structured expense analysis report with metrics, trends, and recommendations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "expenseData", + "type": "array", + "description": "Array of expense records, each with amount, date, category, and campaignId, representing marketing-related expenditures.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) for the analysis period. Only expenses on or after this date are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) for the analysis period. Only expenses on or before this date are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "budgetByCampaign", + "type": "object", + "description": "Optional object mapping campaign IDs to budget amounts to compare actual expenses against planned budgets.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByCategory", + "type": "boolean", + "description": "If true, the analysis groups expense summaries by category, otherwise by campaign.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized expense analysis including total spent, spend by category or campaign, budget comparison results, trend data, and identified cost anomalies or efficiencies." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate marketing expenses to understand spending trends, verify budget adherence, and identify areas for cost optimization across campaigns or categories. It aids in reporting and decision support for marketing financial management.", + "limitations": "Does not automate budget adjustments or recommend specific vendor changes. Analysis depends on the input accuracy and completeness of expense records. It does not perform forecasting beyond the provided expense data.", + "examples": [ + "Analyze total marketing expenses and budget compliance for campaigns in Q1 2024.", + "Identify which marketing categories incurred the highest expenses in the previous month.", + "Generate a summary of marketing spend trends grouped by category for the last 6 months." + ] + }, + "tags": [ + "marketing", + "expense-analysis", + "budget-monitoring", + "campaign-spending", + "financial-reporting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"expenseData\":[{\"amount\":1200.50,\"date\":\"2024-01-05\",\"category\":\"social-media\",\"campaignId\":\"camp01\"},{\"amount\":3000,\"date\":\"2024-01-15\",\"category\":\"email\",\"campaignId\":\"camp02\"},{\"amount\":1500,\"date\":\"2024-02-10\",\"category\":\"social-media\",\"campaignId\":\"camp01\"}],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"budgetByCampaign\":{\"camp01\":5000,\"camp02\":4000},\"groupByCategory\":true}", + "description": "Analyze marketing expenses grouped by category with budget comparison for Q1 2024 campaigns." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "marketing-automation.analyzeOrder", + "description": "Analyzes a marketing order by processing order details such as items, customer demographics, and campaign identifiers to evaluate performance metrics like conversion rates, revenue generated, and ROI. The tool outputs insights that help optimize marketing strategies and improve campaign effectiveness.", + "category": "marketing-automation", + "parameters": [ + { + "name": "orderId", + "type": "string", + "description": "Unique identifier for the order to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "orderData", + "type": "object", + "description": "Detailed object containing order items, quantities, prices, customer info, and campaign tags. Used for in-depth analysis if orderId is not supplied or for supplementing existing records.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCustomerSegmentation", + "type": "boolean", + "description": "Whether to perform customer segmentation analysis based on order demographics.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timePeriod", + "type": "string", + "description": "Optional time period (e.g., '2024-01') to constrain analysis to orders within specific campaign dates.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of specific metrics to calculate such as ['conversionRate','averageOrderValue','ROI']. If empty, defaults to key standard metrics.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured report including calculated metrics (conversion rate, revenue, ROI), customer segmentation summaries, campaign performance comparisons, and actionable recommendations for marketing improvements." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the effectiveness of a completed order in marketing campaigns, especially to extract ROI, conversion insights, and customer behavior analyses from order data or identifiers. It supports decisions on campaign adjustments and budget allocation.", + "limitations": "Cannot process orders without sufficient detail; does not access live external databases or CRM systems automatically; performs analysis based on provided data only; does not generate new campaigns or modify orders.", + "examples": [ + "Analyze order performance metrics for order ID 'ORD12345' to guide next marketing steps.", + "Perform customer segmentation and ROI calculation on a batch of orders from a specific campaign in March 2024.", + "Calculate conversion rate and average order value including customer demographic insights for a given order data object." + ] + }, + "tags": [ + "marketing", + "automation", + "analysis", + "order", + "campaign", + "metrics", + "customer-segmentation" + ], + "examples": [ + { + "inputJson": "{\"orderId\":\"ORD12345\",\"includeCustomerSegmentation\":true,\"metrics\":[\"ROI\",\"conversionRate\"]}", + "description": "Analyze ROI and conversion rate for order with ID ORD12345 including customer segmentation." + }, + { + "inputJson": "{\"orderData\":{\"items\":[{\"productId\":\"P001\",\"quantity\":3,\"price\":29.99},{\"productId\":\"P002\",\"quantity\":1,\"price\":99.95}],\"customer\":{\"age\":30,\"location\":\"NY\"},\"campaignId\":\"CAMP2024SPRING\"},\"timePeriod\":\"2024-03\"}", + "description": "Analyze detailed order data from spring 2024 campaign with time constraint to provide performance insight." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Order", + "context": null + } + }, + { + "name": "marketing-automation.analyzePayment", + "description": "Analyzes marketing-related payment data by accepting transaction records and campaign identifiers. Processes payment amounts, dates, and customer segments to generate insights such as revenue trends, conversion efficiency, and campaign ROI. Outputs structured analytics including summarized metrics and visualizable data points.", + "category": "marketing-automation", + "parameters": [ + { + "name": "paymentRecords", + "type": "array", + "description": "List of payment transaction objects, each including amount, date, customer segment, and payment method.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier for the marketing campaign to associate with the payments.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) for the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) for the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBySegment", + "type": "boolean", + "description": "Whether to group analysis results by customer segments.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code of the payment amounts (e.g., USD).", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized payment metrics including total revenue, average payment amount, payment count, revenue trends over time, ROI estimates, and optionally breakdowns by customer segments." + }, + "aiAgent": { + "useCase": "Use this tool to analyze payment data linked to marketing campaigns to assess revenue performance, conversion rates, and return on investment. It helps in identifying which campaigns and customer segments generate the highest payment volumes and revenue over a specified period.", + "limitations": "This tool does not perform payment fraud detection or individual transaction validation. It also does not connect to live payment gateways; input data must be provided externally.", + "examples": [ + "Analyze payments for campaign ID 'cmp-2023-09' in the last quarter to understand revenue trends.", + "Generate a report summarizing total payments grouped by customer segments for campaign 'holiday_sale'.", + "Calculate ROI and average transaction size for a payment dataset linked to campaign 'summer_launch'." + ] + }, + "tags": [ + "marketing", + "payment-analysis", + "campaign-performance", + "revenue", + "customer-segmentation", + "ROI", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"paymentRecords\":[{\"amount\":120.5,\"date\":\"2024-05-01T10:15:00Z\",\"customerSegment\":\"retail\",\"paymentMethod\":\"credit_card\"},{\"amount\":75.0,\"date\":\"2024-05-03T14:22:00Z\",\"customerSegment\":\"wholesale\",\"paymentMethod\":\"paypal\"}],\"campaignId\":\"cmp-2024-spring\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\",\"groupBySegment\":true,\"currency\":\"USD\"}", + "description": "Analyze payments from May 2024 for campaign 'cmp-2024-spring' grouping results by customer segment." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "marketing-automation.analyzeLead", + "description": "Analyzes lead data provided as input to evaluate quality, engagement level, and potential conversion score. Accepts lead attributes such as demographics, interaction history, and campaign source. Processes this data using predictive analytics and scoring models to output a detailed analysis report including lead score, recommended next actions, and segmentation category.", + "category": "marketing-automation", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "An object containing lead attributes such as name, contact info, demographic details, and behavioral data.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEngagementAnalysis", + "type": "boolean", + "description": "Whether to analyze the lead's engagement history like email opens, clicks, and website visits.", + "required": false, + "defaultValue": "true" + }, + { + "name": "scoringModel", + "type": "string", + "description": "The identifier of the scoring model to use for lead evaluation (e.g., 'default', 'customModel1').", + "required": false, + "defaultValue": "default" + }, + { + "name": "campaignSource", + "type": "string", + "description": "The marketing campaign or channel from which the lead originated, useful for segmenting and attribution.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing lead score (number), engagement metrics summary, recommended next marketing actions, and lead segmentation category label." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate individual lead data to prioritize marketing efforts and personalize follow-ups. It is especially useful in automated campaign management and qualification pipelines to score leads and suggest next campaign actions based on data-driven models.", + "limitations": "This tool does not generate leads or collect raw lead data; it only analyzes data provided to it. It relies on predefined scoring models and may require updated training data for accuracy over time.", + "examples": [ + "Analyze this lead's data to get a lead quality score and suggested follow-ups.", + "Evaluate leads from the recent webinar campaign to find hottest prospects.", + "Provide segmentation and next best action for a given lead including engagement metrics." + ] + }, + "tags": [ + "marketing", + "lead-analysis", + "automation", + "scoring", + "campaign-management" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"industry\":\"Technology\",\"jobTitle\":\"CTO\",\"interactions\":{\"emailOpens\":5,\"clicks\":2,\"websiteVisits\":3}},\"includeEngagementAnalysis\":true,\"scoringModel\":\"default\",\"campaignSource\":\"WebinarJune2024\"}", + "description": "Analyze a technology sector CTO lead from webinar with engagement data included." + }, + { + "inputJson": "{\"leadData\":{\"name\":\"John Smith\",\"email\":\"john.smith@example.com\",\"industry\":\"Finance\",\"jobTitle\":\"CFO\"},\"includeEngagementAnalysis\":false,\"scoringModel\":\"customModel1\",\"campaignSource\":\"NewsletterMay2024\"}", + "description": "Analyze a finance sector CFO lead without engagement data using a custom scoring model." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "marketing-automation.analyzeDeal", + "description": "Analyzes sales deal data by accepting deal attributes such as deal size, duration, client industry, and conversion stage. It processes historical and current deal information to generate insights about deal health, risk, and expected closure likelihood, outputting a detailed analysis report including key performance indicators and recommendations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "dealId", + "type": "string", + "description": "Unique identifier of the deal to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealSize", + "type": "number", + "description": "Monetary value of the deal in USD or specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealDurationDays", + "type": "number", + "description": "Number of days since the deal was created or first contacted.", + "required": false, + "defaultValue": "0" + }, + { + "name": "clientIndustry", + "type": "string", + "description": "Industry sector of the client associated with the deal, e.g., technology, healthcare.", + "required": false, + "defaultValue": "" + }, + { + "name": "conversionStage", + "type": "string", + "description": "Current stage of the deal in the sales pipeline, e.g., prospecting, negotiation, closing.", + "required": false, + "defaultValue": "" + }, + { + "name": "historicalDealsData", + "type": "array", + "description": "Optional array of past deals data objects to compare trends and improve analysis accuracy.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Analysis report containing risk score, expected closure probability, deal health indicators, and strategic recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the status and outlook of an ongoing or proposed sales deal by processing quantitative and categorical deal parameters to produce actionable insights. It helps prioritize deals, forecast revenue and identify risk factors in a marketing or sales automation context.", + "limitations": "This tool does not negotiate deals, generate leads, or replace human judgement. It requires accurate input data and does not handle real-time deal updates automatically.", + "examples": [ + "Analyze deal with ID D12345 having deal size 50000 USD in technology industry currently at negotiation stage.", + "Provide a risk and closure probability assessment for a healthcare sector deal of 75000 USD created 30 days ago.", + "Evaluate deal health for a set of historical deals to identify factors contributing to success." + ] + }, + "tags": [ + "marketing", + "analysis", + "sales", + "deal", + "automation", + "risk-assessment", + "forecasting" + ], + "examples": [ + { + "inputJson": "{\"dealId\":\"D12345\",\"dealSize\":50000,\"dealDurationDays\":15,\"clientIndustry\":\"technology\",\"conversionStage\":\"negotiation\"}", + "description": "Analyze a technology sector deal worth $50,000 currently in negotiation stage, created 15 days ago." + }, + { + "inputJson": "{\"dealId\":\"D67890\",\"dealSize\":120000,\"dealDurationDays\":45,\"clientIndustry\":\"healthcare\",\"conversionStage\":\"closing\"}", + "description": "Assess a healthcare industry deal valued at $120,000 that is 45 days old and in the closing stage." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "marketing-automation.analyzeAccount", + "description": "Analyzes a marketing account's campaign performance data to provide insights on key metrics such as engagement, conversion rates, and ROI. Accepts account identifiers and optional date ranges, processes marketing campaign results including channel-specific data, and outputs a detailed performance summary with actionable recommendations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the marketing account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (YYYY-MM-DD) for the analysis period. If omitted, defaults to 30 days before endDate.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (YYYY-MM-DD) for the analysis period. If omitted, defaults to current date.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeChannels", + "type": "array", + "description": "List of marketing channels to include in the analysis (e.g., ['email','social','paid']). If omitted, all channels are considered.", + "required": false, + "defaultValue": "" + }, + { + "name": "performanceThreshold", + "type": "number", + "description": "Minimum engagement rate threshold for reporting specific campaign highlights. Default is 0.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall account marketing performance metrics including engagement rates, conversion rates, ROI by channel, trend analysis, and specific actionable recommendations to optimize campaigns." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents that need to evaluate the effectiveness of marketing campaigns within a given account over a specified period, helping to identify strengths and weaknesses across channels and suggest improvements. It is useful for campaign performance reporting and strategic marketing optimization.", + "limitations": "Does not access raw customer data or CRM entries beyond campaign performance metrics. Lacks real-time tracking capability and depends on historical data availability through integrations. Cannot execute campaign changes automatically; only provides analysis and recommendations.", + "examples": [ + "Analyze marketing account performance for account ID 'acct123' over the last month.", + "Provide insights on social and email channels performance between 2024-04-01 and 2024-04-30 for account 'account456'.", + "Identify campaigns with engagement rates above 5% for account 'abc789' over the past quarter." + ] + }, + "tags": [ + "marketing", + "analysis", + "account", + "campaign", + "performance", + "automation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"account123\",\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"includeChannels\":[\"email\",\"social\"],\"performanceThreshold\":0.05}", + "description": "Analyze email and social channel campaigns for account 'account123' during March 2024, highlighting any campaigns with engagement rate above 5%." + }, + { + "inputJson": "{\"accountId\":\"acct789\",\"performanceThreshold\":0.1}", + "description": "Analyze all marketing channels for account 'acct789' over the past 30 days with a high performance threshold, focusing on campaigns exceeding 10% engagement rate." + }, + { + "inputJson": "{\"accountId\":\"market999\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-06-01\"}", + "description": "Analyze overall marketing account 'market999' data from beginning of the year through June 1, 2024, covering all channels without special thresholds." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "marketing-automation.analyzeCustomer", + "description": "Analyzes customer data to identify segments, behavior patterns, and potential high-value targets. Accepts customer profiles and interaction records, applies clustering and scoring algorithms, and outputs actionable insights for targeted marketing campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "List of customer records including demographics, purchase history, and interaction data.", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentCriteria", + "type": "object", + "description": "Criteria for segmenting customers, such as demographic filters or behavioral thresholds.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "scoringModel", + "type": "string", + "description": "Identifier for the scoring or predictive model to apply to customer data.", + "required": false, + "defaultValue": "defaultModel" + }, + { + "name": "maxSegments", + "type": "number", + "description": "Maximum number of customer segments to identify.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeChurnRisk", + "type": "boolean", + "description": "Whether to include churn risk estimation in the analysis.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Analysis results including identified customer segments, scores for key metrics (e.g., retention likelihood, customer value), and recommendations for marketing strategies." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to optimize marketing efforts by understanding customer groupings, identifying high-value or at-risk customers, and tailoring campaigns. Suitable for scenarios with partially or fully structured customer data requiring segmentation and predictive scoring.", + "limitations": "Does not perform raw data cleaning or unstructured text analysis; relies on input data quality and model calibration; does not execute marketing campaigns.", + "examples": [ + "Analyze the customer base to find segments at risk of churn and suggest retention strategies.", + "Provide customer segmentation based on purchase frequency and demographics for targeted email campaigns.", + "Score customers by predicted lifetime value and identify top 3 segments for a new product launch." + ] + }, + "tags": [ + "marketing", + "customer-analysis", + "segmentation", + "predictive-scoring", + "automation", + "campaign-optimization" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"id\":\"cust001\",\"age\":34,\"gender\":\"F\",\"purchases\":20,\"lastPurchaseDaysAgo\":15},{\"id\":\"cust002\",\"age\":28,\"gender\":\"M\",\"purchases\":5,\"lastPurchaseDaysAgo\":120}],\"segmentCriteria\":{\"ageRange\":[25,40]},\"scoringModel\":\"lifetimeValueV1\",\"maxSegments\":3,\"includeChurnRisk\":true}", + "description": "Segment customers aged 25-40, apply lifetime value scoring, limit to 3 segments, include churn risk." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "marketing-automation.analyzeOpportunity", + "description": "Analyzes business marketing opportunities by evaluating key metrics such as target market size, expected ROI, competitive landscape, and alignment with current marketing strategy. Accepts opportunity data and historical campaign performance. Processes to identify viability and potential impact, returning a detailed scoring and recommendations report.", + "category": "marketing-automation", + "parameters": [ + { + "name": "opportunityData", + "type": "object", + "description": "Detailed data about the marketing opportunity including target demographic, market size, estimated budget, and expected outcomes.", + "required": true, + "defaultValue": "" + }, + { + "name": "historicalPerformance", + "type": "array", + "description": "Array of past marketing campaign summaries to compare and benchmark the opportunity against.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "riskTolerance", + "type": "number", + "description": "Numeric value (0-1) representing how much risk the business is willing to accept when pursuing the opportunity, influencing analysis weighting.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "strategyAlignmentThreshold", + "type": "number", + "description": "Minimum alignment score (0-100) required with current marketing strategy to consider the opportunity viable.", + "required": false, + "defaultValue": "70" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing a viability score, ROI projection, risk assessment, competitive analysis summary, and actionable recommendations." + }, + "aiAgent": { + "useCase": "Use when evaluating potential marketing initiatives or campaigns to quantitatively assess their attractiveness and alignment with business goals. It helps prioritize opportunities based on data-driven insights from current market and past performance data.", + "limitations": "Cannot guarantee actual market performance; dependent on accuracy and completeness of input data; does not replace human strategic judgment but aids it.", + "examples": [ + "Analyze a new social media campaign opportunity targeting a niche demographic.", + "Evaluate potential ROI and risks of expanding into a new geographic market segment.", + "Compare and prioritize multiple marketing initiatives based on past campaign data and strategic fit." + ] + }, + "tags": [ + "marketing", + "automation", + "opportunity", + "analysis", + "ROI", + "strategy", + "risk", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"opportunityData\":{\"targetDemographic\":\"millennials\",\"marketSize\":5000000,\"estimatedBudget\":200000,\"expectedOutcomes\":{\"leads\":10000,\"sales\":500}},\"historicalPerformance\":[{\"campaignName\":\"SpringSale\",\"ROI\":1.5,\"risk\":0.3},{\"campaignName\":\"HolidayPromo\",\"ROI\":1.2,\"risk\":0.2}],\"riskTolerance\":0.6,\"strategyAlignmentThreshold\":75}", + "description": "Analyze a new marketing opportunity aimed at millennials with past campaign data to benchmark." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "marketing-automation.analyzeMarkdown", + "description": "Analyzes marketing campaign content written in Markdown format to extract key marketing elements, sentiment, and topic distribution. Accepts Markdown text input, processes the content to identify marketing messages, call-to-actions, and emotional tone, and returns a structured summary report for refining campaign effectiveness.", + "category": "marketing-automation", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "The raw marketing campaign text in Markdown format to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the Markdown content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "topicExtractionCount", + "type": "number", + "description": "Number of key topics to extract from the content for thematic analysis.", + "required": false, + "defaultValue": "5" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the Markdown content to improve accuracy of linguistic analysis.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A detailed report summarizing detected marketing elements, sentiment scores, topic distribution, and suggestions for content optimization." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze the textual content of marketing campaigns that are authored in Markdown to gain insights on marketing messages, sentiment, and topical relevance. Ideal for refining campaign wording, ensuring calls-to-action are present, and understanding emotional impact. It supports content QA and targeted optimization.", + "limitations": "Cannot analyze images or embedded media within the Markdown; focuses solely on textual content. Does not generate new marketing content, only analyzes provided input. Sentiment and topic extraction quality may vary with very short or highly technical texts.", + "examples": [ + "Analyze this markdown to identify key marketing calls to action and sentiment.", + "Extract main marketing topics from campaign content written in Markdown.", + "Provide a summary report of the promotional markdown text including emotional tone and suggestions." + ] + }, + "tags": [ + "marketing", + "automation", + "analysis", + "markdown", + "content-analysis", + "sentiment", + "topic-extraction", + "campaign-optimization" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Summer Sale\\nDon't miss out on our exclusive **50% off** deals! Shop now and save big.\",\"includeSentimentAnalysis\":true,\"topicExtractionCount\":3,\"language\":\"en\"}", + "description": "Analyze a markdown snippet advertising a summer sale with a strong call-to-action." + }, + { + "inputJson": "{\"markdownContent\":\"## New Product Launch\\nDiscover the innovative features of our latest product. Pre-order today to enjoy early bird discounts!\",\"includeSentimentAnalysis\":true,\"topicExtractionCount\":4,\"language\":\"en\"}", + "description": "Analyze marketing text for a new product launch with emphasis on pre-order incentives." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "marketing-automation.analyzeYAML", + "description": "This tool accepts marketing campaign configurations and results formatted in YAML. It parses and analyzes the data to extract key performance metrics, identify trends, and generate a summarized business report. Output is returned as a structured JSON object highlighting campaign effectiveness and recommendations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "YAML string containing the marketing campaign data and results to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include actionable marketing recommendations based on analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metricsToFocus", + "type": "array", + "description": "List of specific metric names (strings) to prioritize in the analysis, e.g., ['clickThroughRate','conversionRate'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Specifies the format of the summary report output, either 'json' or 'markdown'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A detailed JSON object containing parsed campaign metrics, performance trends, and optional recommendations." + }, + "aiAgent": { + "useCase": "When an AI agent needs to understand and evaluate marketing campaign results provided in YAML format—for example, analyzing large volumes of campaign configurations and their outcomes to produce summary reports, identify top KPIs, and suggest improvements automatically.", + "limitations": "Cannot validate YAML syntax beyond basic parsing; assumes input is structured as marketing campaign data. Does not execute campaign simulations or predict future performance beyond current data analysis.", + "examples": [ + "Analyze this YAML marketing campaign data and produce a performance summary.", + "Parse the given YAML content of multiple campaigns and highlight the key metrics with recommendations.", + "Provide a markdown report focusing on conversion and click through rates from the supplied YAML data." + ] + }, + "tags": [ + "marketing", + "automation", + "analysis", + "yaml", + "campaign", + "metrics", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"campaigns:\\n - name: Spring Sale\\n clicks: 1200\\n impressions: 50000\\n conversions: 60\\n - name: Summer Launch\\n clicks: 800\\n impressions: 30000\\n conversions: 45\",\"includeRecommendations\":true,\"metricsToFocus\":[\"clickThroughRate\",\"conversionRate\"],\"reportFormat\":\"json\"}", + "description": "Analyze two campaigns' basic performance data from YAML and produce a JSON report with recommendations." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "marketing-automation.analyzeJSON", + "description": "Accepts marketing campaign data as JSON, analyzes key performance indicators (KPIs) such as conversion rates, click-through rates, and audience engagement, and outputs a structured summary highlighting strengths, weaknesses, and optimization suggestions.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "object", + "description": "The raw marketing campaign data formatted as JSON, including metrics like impressions, clicks, conversions, audience demographics, and timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiList", + "type": "array", + "description": "List of KPIs to extract and analyze from the campaign data, such as ['conversionRate', 'clickThroughRate', 'bounceRate']. Defaults to common marketing KPIs if empty.", + "required": false, + "defaultValue": "[\"conversionRate\",\"clickThroughRate\",\"bounceRate\"]" + }, + { + "name": "timeFrameStart", + "type": "string", + "description": "ISO 8601 date string to specify the starting date/time for analysis window. If omitted, analysis includes all available data.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeFrameEnd", + "type": "string", + "description": "ISO 8601 date string to specify the ending date/time for analysis window. If omitted, analysis includes all available data.", + "required": false, + "defaultValue": "" + }, + { + "name": "compareToPreviousPeriod", + "type": "boolean", + "description": "Whether to compare analyzed KPIs to the previous equivalent period to identify trends or changes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "If true, the output will include actionable recommendations based on the analyzed data to improve marketing performance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed KPI values, trend comparisons if requested, and optionally recommendations for marketing campaign optimization." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw marketing campaign data formatted in JSON and need a rapid, structured analysis of key performance metrics with optional trends and actionable insights. This helps automate marketing performance review and strategy optimization without manual data crunching.", + "limitations": "Cannot access external data sources or dynamically retrieve missing marketing data. Analysis depends solely on provided JSON data quality and completeness.", + "examples": [ + "Analyze my last campaign's JSON data for conversion and click rates within last month and compare to previous month.", + "Extract and summarize key KPIs from multiple marketing campaigns JSON to evaluate performance.", + "Provide marketing optimization recommendations based on social media campaign JSON data during specified time frame." + ] + }, + "tags": [ + "marketing", + "automation", + "analytics", + "JSON", + "campaign analysis", + "KPI", + "performance", + "recommendations" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":{\"impressions\":10000,\"clicks\":500,\"conversions\":50,\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\"},\"kpiList\":[\"conversionRate\",\"clickThroughRate\"],\"timeFrameStart\":\"2024-05-01T00:00:00Z\",\"timeFrameEnd\":\"2024-05-31T23:59:59Z\",\"compareToPreviousPeriod\":true,\"includeRecommendations\":true}", + "description": "Analyze conversion and click-through rates for May 2024 campaign, compare to April 2024, and provide recommendations." + }, + { + "inputJson": "{\"campaignData\":{\"impressions\":20000,\"clicks\":1000,\"conversions\":80,\"bounceRate\":0.3},\"kpiList\":[],\"includeRecommendations\":false}", + "description": "Analyze the default key KPIs of a campaign with no specific KPIs requested, without recommendations." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "marketing-automation.analyzeHTML", + "description": "Analyzes provided raw HTML content of marketing emails or landing pages to extract key marketing metrics such as link click density, keyword frequency, image alt text presence, and form presence. Outputs a structured report highlighting potential optimizations for marketing performance.", + "category": "marketing-automation", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content of the marketing email or landing page to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analyzeLinks", + "type": "boolean", + "description": "Whether to analyze and report on links and their distribution in the HTML content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "keywordList", + "type": "array", + "description": "List of marketing-related keywords to check frequency of within the HTML content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Enable checking for HTML accessibility features, such as presence of alt text on images.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the output report, e.g., 'json' or 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including metrics such as link click distribution, keyword frequency counts, accessibility checks, form detection, and suggestions for improvements." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract actionable marketing insights from raw HTML content of emails or landing pages to improve engagement rates and compliance with best practices. Ideal for automated marketing performance analysis or pre-deployment validation of marketing assets.", + "limitations": "Cannot render or simulate user interactions with the HTML content; analysis is static and based solely on the HTML markup provided. Does not execute scripts or styles. Cannot verify actual engagement metrics beyond structural analysis.", + "examples": [ + "Analyze the HTML of a marketing email to get keyword frequency and link distribution.", + "Check if all images in the landing page HTML have alt text for accessibility compliance.", + "Generate a JSON report summarizing link and form counts in campaign HTML content." + ] + }, + "tags": [ + "marketing", + "automation", + "html", + "analysis", + "email", + "landing-page", + "seo", + "accessibility" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"
Buy nowsale banner
\",\"analyzeLinks\":true,\"keywordList\":[\"buy\",\"sale\"],\"checkAccessibility\":true,\"reportFormat\":\"json\"}", + "description": "HTML input containing a link, image with alt text, and a form to analyze keywords, links, and accessibility." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "marketing-automation.analyzeXML", + "description": "Analyzes marketing campaign data provided in XML format by extracting key performance indicators like open rates, click-through rates, conversion metrics, and segment distributions, then generates a structured summary report with insights and trends for campaign performance evaluation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "xmlData", + "type": "string", + "description": "The raw XML string containing marketing campaign data to analyze. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractKPIs", + "type": "array", + "description": "List of key performance indicators to extract from the XML, e.g., ['openRate','clickThroughRate']. Optional; defaults to common KPIs.", + "required": false, + "defaultValue": "[\"openRate\",\"clickThroughRate\",\"conversionRate\"]" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'startDate' and 'endDate' strings (ISO format) to restrict analysis to specific campaign dates.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSegments", + "type": "boolean", + "description": "Whether to include analysis segmented by audience groups if present in the XML data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing extracted KPI values, trend summary text, segmented breakdowns if requested, and any warnings about data quality or missing fields." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract and synthesize marketing campaign performance metrics embedded in XML format data files, especially to automate report generation and identify trends without manual data parsing. It aids in summarizing important analytics from potentially complex nested XML campaign exports.", + "limitations": "Cannot interpret data outside of the XML structure provided or generate visualizations. Assumes XML conforms to expected marketing campaign schema. Does not predict future trends or apply advanced statistical modeling.", + "examples": [ + "Analyze this campaign XML to extract all relevant KPIs.", + "Summarize click and conversion rates from the marketing data in XML for Q1 2023.", + "Provide segmented open and click rate analysis from this XML campaign export." + ] + }, + "tags": [ + "marketing", + "automation", + "XML", + "analysis", + "campaign", + "KPIs", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"xmlData\":\"451035012\",\"extractKPIs\":[\"openRate\",\"clickThroughRate\"],\"includeSegments\":true}", + "description": "Analyze XML campaign data extracting open and click rates including segment breakdowns." + }, + { + "inputJson": "{\"xmlData\":\"3082\",\"dateRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\"},\"includeSegments\":false}", + "description": "Analyze campaign XML data filtered by Q1 2023 date range without segment details." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "marketing-automation.analyzeTable", + "description": "Analyzes tabular marketing campaign data provided as structured arrays or objects. It performs summary statistics, identifies trends, segments data by key marketing dimensions, and highlights actionable insights. The output is a detailed report containing aggregated metrics, correlation analyses, and segmentation summaries to support campaign optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "Array of objects representing rows of marketing data, each object with key-value pairs for columns (e.g., clicks, impressions, conversions).", + "required": true, + "defaultValue": "" + }, + { + "name": "groupByColumns", + "type": "array", + "description": "List of column names to group data by for segmentation and aggregation (e.g., 'region', 'channel').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "array", + "description": "List of numeric metric columns to analyze (e.g., 'clicks', 'CTR', 'revenue').", + "required": true, + "defaultValue": "" + }, + { + "name": "timePeriodColumn", + "type": "string", + "description": "Name of the column representing time periods (e.g., 'date' or 'week') to analyze trends over time.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCorrelationAnalysis", + "type": "boolean", + "description": "Flag to perform correlation analysis among numeric metrics, to identify relationships.", + "required": false, + "defaultValue": "false" + }, + { + "name": "trendAnalysisPeriod", + "type": "number", + "description": "Number of time units (rows) to consider when detecting trend changes, if timePeriodColumn is set.", + "required": false, + "defaultValue": "7" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated statistics (sums, averages) per grouping, trend analyses over time, correlation coefficients among metrics, and identified segments with key insights." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw tabular marketing data, such as campaign performance logs, and need to automatically extract summaries, segment insights, identify metric correlations, and track trends to optimize marketing decisions.", + "limitations": "Cannot process unstructured data formats like images or text blobs; requires well-structured tabular data with consistent column names; does not generate predictive models or forecast future performance; analysis limited to provided numeric and categorical fields.", + "examples": [ + "Analyze campaign performance table to summarize clicks and conversions by channel and region.", + "Provide trend insights over weekly data to identify performance dips.", + "Find correlations among impressions, clicks, and revenue in marketing dataset." + ] + }, + "tags": [ + "marketing", + "automation", + "analysis", + "data-table", + "segmentation", + "trend-analysis", + "correlation" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"date\":\"2023-05-01\",\"channel\":\"email\",\"region\":\"north\",\"clicks\":150,\"impressions\":3000,\"conversions\":20},{\"date\":\"2023-05-01\",\"channel\":\"social\",\"region\":\"north\",\"clicks\":200,\"impressions\":4000,\"conversions\":25},{\"date\":\"2023-05-02\",\"channel\":\"email\",\"region\":\"south\",\"clicks\":120,\"impressions\":2800,\"conversions\":15}],\"groupByColumns\":[\"channel\",\"region\"],\"metrics\":[\"clicks\",\"impressions\",\"conversions\"],\"timePeriodColumn\":\"date\",\"includeCorrelationAnalysis\":true,\"trendAnalysisPeriod\":2}", + "description": "Analyze marketing campaign data grouped by channel and region with correlation and trend analysis over daily dates." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "marketing-automation.analyzeDataset", + "description": "Analyzes marketing datasets by processing campaign performance metrics, customer engagement data, and sales figures. Accepts datasets in CSV or JSON format and returns actionable insights including key performance indicators, trend analysis, and segment-specific recommendations to optimize marketing strategies.", + "category": "marketing-automation", + "parameters": [ + { + "name": "dataset", + "type": "string", + "description": "The marketing dataset content as a CSV string or JSON array of objects to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input dataset: 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail for analysis: 'summary' for high-level KPIs, 'detailed' for in-depth segment and trend insights.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional filter for the analysis to a specific date range with 'startDate' and 'endDate' in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "segments", + "type": "array", + "description": "Optional list of customer segments or campaign IDs to focus the analysis on specific groups.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall performance metrics, trend graphs data arrays, segment-wise analysis summaries, and actionable recommendations as strings." + }, + "aiAgent": { + "useCase": "Use this tool when needing to derive insights from raw marketing campaign data to inform decision making. It is ideal for summarizing campaign effectiveness, identifying trends across time, or detecting high-value customer segments for targeted marketing.", + "limitations": "This tool cannot perform predictive modeling beyond trend analysis or handle datasets with unstructured data such as images or raw text. It requires properly formatted CSV or JSON input with recognized marketing fields.", + "examples": [ + "Analyze a CSV dataset of last quarter email campaigns to get summary KPIs and trend insights.", + "Provide detailed analysis on JSON dataset focusing on the segment of high-spending customers.", + "Filter dataset by last 6 months and analyze performance of social media campaigns across different regions." + ] + }, + "tags": [ + "marketing", + "automation", + "data-analysis", + "campaign-performance", + "customer-segmentation", + "insights" + ], + "examples": [ + { + "inputJson": "{\"dataset\":\"campaignId,date,segment,impressions,clicks,conversions,revenue\\nC101,2024-01-01,young-adults,10000,500,50,2500\\nC102,2024-01-02,middle-aged,8000,400,40,2000\",\"dataFormat\":\"csv\",\"analysisDepth\":\"summary\"}", + "description": "Analyze a CSV dataset of two marketing campaigns for a summary of key performance indicators." + }, + { + "inputJson": "{\"dataset\":[{\"campaignId\":\"C201\",\"date\":\"2024-03-15\",\"segment\":\"vip-customers\",\"impressions\":5000,\"clicks\":250,\"conversions\":30,\"revenue\":3000},{\"campaignId\":\"C202\",\"date\":\"2024-03-16\",\"segment\":\"new-users\",\"impressions\":7000,\"clicks\":350,\"conversions\":45,\"revenue\":2250}],\"dataFormat\":\"json\",\"analysisDepth\":\"detailed\",\"segments\":[\"vip-customers\"]}", + "description": "Analyze a JSON dataset focusing on VIP customer segment with detailed insights." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "marketing-automation.analyzeCSV", + "description": "Analyzes marketing campaign data from a CSV file input, extracting key performance indicators such as open rates, click-through rates, conversion metrics, and customer segment statistics. Outputs a structured JSON report summarizing insights and trends for campaign optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "Raw CSV data as a string containing marketing campaign results (required columns like email, open_rate, click_rate, conversions).", + "required": true, + "defaultValue": "" + }, + { + "name": "dateColumn", + "type": "string", + "description": "The column name representing the date of each campaign entry, used for time-based analysis.", + "required": false, + "defaultValue": "date" + }, + { + "name": "segmentColumn", + "type": "string", + "description": "The column name for customer segments to analyze performance by segment.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric column names to analyze (e.g., ['open_rate','click_rate','conversions']).", + "required": false, + "defaultValue": "[\"open_rate\",\"click_rate\",\"conversions\"]" + }, + { + "name": "groupByDate", + "type": "boolean", + "description": "Whether to aggregate and analyze metrics over date periods.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateAggregation", + "type": "string", + "description": "The date aggregation period: daily, weekly, or monthly. Applies only if groupByDate is true.", + "required": false, + "defaultValue": "weekly" + } + ], + "returns": { + "type": "object", + "description": "A JSON object summarizing analyzed metrics including averages, trends over time, segment breakdowns, and key insights for marketing campaign performance." + }, + "aiAgent": { + "useCase": "Use this tool to automatically analyze bulk CSV data from marketing campaigns to understand campaign effectiveness, identify successful customer segments, and track performance trends over time for data-driven decision making.", + "limitations": "Cannot process CSVs missing essential marketing metrics columns; does not perform causal analysis or predict future trends, only summarizes historical data.", + "examples": [ + "Analyze the CSV file of last quarter's email campaign performance to find trends in open and click rates.", + "Provide segment-wise conversion analysis from a CSV export of marketing data.", + "Summarize weekly performance metrics from a CSV marketing report for management review." + ] + }, + "tags": [ + "marketing", + "automation", + "csv", + "analysis", + "campaign", + "metrics", + "segmentation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"email,date,segment,open_rate,click_rate,conversions\\njohn@example.com,2023-04-01,A,0.45,0.12,2\\nsara@example.com,2023-04-01,B,0.50,0.15,1\\njohn@example.com,2023-04-08,A,0.50,0.10,3\",\"dateColumn\":\"date\",\"segmentColumn\":\"segment\",\"metrics\":[\"open_rate\",\"click_rate\",\"conversions\"],\"groupByDate\":true,\"dateAggregation\":\"weekly\"}", + "description": "Analyze weekly aggregated open, click rates, and conversions by segment from a marketing campaign CSV." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "marketing-automation.analyzeDocument", + "description": "This tool accepts marketing campaign documents (plain text, HTML, or PDF) to analyze content effectiveness by extracting key marketing metrics, sentiment, and keyword density. It processes the input document to provide structured insights such as sentiment scores, prominent keywords, and suggested improvements, enabling data-driven marketing optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "Raw text content or full text extracted from the document to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "Format of the input document, e.g., 'text', 'html', or 'pdf'", + "required": true, + "defaultValue": "text" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the document content, e.g., 'en' for English", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the document", + "required": false, + "defaultValue": "true" + }, + { + "name": "keywordsLimit", + "type": "number", + "description": "Maximum number of top keywords to extract and report", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including sentiment score, identified keywords with frequencies, content readability score, and improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically analyze marketing campaign documents to extract insights such as sentiment, keyword prominence, and content effectiveness. It is ideal for optimizing marketing materials, assessing campaign messaging success, or summarizing document content for decision-making.", + "limitations": "This tool cannot interpret multimedia content embedded in documents, does not provide translation services, and analysis quality depends on the clarity and language of the input document. It does not replace expert marketing strategy but supports quantitative content analysis.", + "examples": [ + "Analyze the effectiveness and sentiment of a product launch email campaign document.", + "Extract key marketing keywords and sentiment from a recent newsletter HTML file.", + "Provide content improvement suggestions based on sentiment and keyword analysis for a social media marketing brochure." + ] + }, + "tags": [ + "marketing", + "automation", + "document analysis", + "sentiment analysis", + "keyword extraction", + "content optimization" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"Dear customers, our new product launches next week! Exciting features await you.\",\"documentFormat\":\"text\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"keywordsLimit\":5}", + "description": "Analyze a short product launch message text for sentiment and top keywords." + }, + { + "inputJson": "{\"documentContent\":\"

Monthly Newsletter

Discover our latest offers and news!

\",\"documentFormat\":\"html\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"keywordsLimit\":8}", + "description": "Analyze an HTML newsletter content to extract marketing insights." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "marketing-automation.sendComment", + "description": "Sends a comment as part of a marketing campaign interaction to a specified platform or user. Accepts text content, target recipient details, and optional metadata like campaign identifiers. Processes the input to format and send the comment, then returns a status and any platform response.", + "category": "marketing-automation", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Identifier for the recipient user or entity to receive the comment.", + "required": true, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "The platform or communication channel where the comment will be posted (e.g., social media platform, CRM).", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Optional identifier for the marketing campaign related to this comment.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional object containing additional data such as tags, timestamps, or priorities related to the comment.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPublic", + "type": "boolean", + "description": "Flag indicating if the comment should be public or private (default is true for public).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, message ID if applicable, timestamp, and any error message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate sending comments or replies in a marketing campaign context, such as posting on social media, responding to leads, or adding comments within CRM systems to engage customers. It enables seamless interaction as part of automated outreach programs.", + "limitations": "This tool does not analyze comment content for sentiment or compliance, nor does it manage complex conversation threads or responses. It only sends one comment per call, without follow-up tracking.", + "examples": [ + "Send a promotional comment to a lead's profile on LinkedIn within campaign ID 2024Q2.", + "Post a public comment on the company Facebook page engaging users about a new product launch.", + "Send a private comment within a CRM record linked to a specific customer interaction." + ] + }, + "tags": [ + "marketing", + "automation", + "comment", + "communication", + "campaign", + "social media", + "crm" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"Great feedback, thank you for sharing!\",\"recipientId\":\"customer_12345\",\"platform\":\"CRM\",\"campaignId\":\"spring_launch_2024\",\"metadata\":{\"priority\":\"high\"},\"isPublic\":false}", + "description": "Send a private comment within a CRM system to a specific customer record with high priority tag." + }, + { + "inputJson": "{\"commentText\":\"Check out our new discounts available now!\",\"recipientId\":\"page_admin_6789\",\"platform\":\"Facebook\",\"campaignId\":\"discount_campaign_04\",\"isPublic\":true}", + "description": "Post a public promotional comment on a Facebook page as part of a discount campaign." + }, + { + "inputJson": "{\"commentText\":\"Thank you for your interest! We'll get back shortly.\",\"recipientId\":\"lead_54321\",\"platform\":\"LinkedIn\",\"campaignId\":\"lead_engagement_Q2\",\"isPublic\":true}", + "description": "Send a public comment reply to a lead on LinkedIn during a Q2 engagement campaign." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "marketing-automation.analyzeReport", + "description": "Analyzes marketing campaign reports by accepting structured report data in JSON or CSV format, extracting key performance metrics like engagement rates, conversion rates, and ROI, and generating a summarized analysis with insights and recommendations to optimize future campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "reportData", + "type": "string", + "description": "Raw report data content as JSON or CSV string containing marketing campaign metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input report data: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "campaignId", + "type": "string", + "description": "Optional identifier for the campaign to focus the analysis on specific data segments.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to generate actionable marketing recommendations based on the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the generated analysis summary and recommendations.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary with key metrics, insights, and optional recommendations for optimizing marketing campaigns." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent receives raw or structured marketing report data and needs to extract meaningful insights and performance metrics to help evaluate campaign effectiveness or to guide marketing strategy adjustments.", + "limitations": "Cannot generate analysis from unstructured text reports or purely qualitative data; relies on structured numerical campaign data. Does not replace deep domain expert analysis for complex marketing decisions.", + "examples": [ + "Analyze the Q2 social media campaign report data and provide insights along with optimization tips.", + "Given CSV data from last month's email marketing campaigns, summarize performance and suggest areas of improvement.", + "Evaluate the JSON report from a digital ad campaign and generate an English summary highlighting key outcomes." + ] + }, + "tags": [ + "marketing", + "automation", + "analysis", + "report", + "campaign", + "performance", + "insights" + ], + "examples": [ + { + "inputJson": "{\"reportData\":\"{\\\"campaigns\\\":[{\\\"id\\\":\\\"camp123\\\",\\\"impressions\\\":10000,\\\"clicks\\\":500,\\\"conversions\\\":50,\\\"cost\\\":2000}]}\",\"dataFormat\":\"json\",\"campaignId\":\"camp123\",\"includeRecommendations\":true,\"language\":\"en\"}", + "description": "Analyze a JSON report for campaign 'camp123' providing performance summary and recommendations." + }, + { + "inputJson": "{\"reportData\":\"campaignId,impressions,clicks,conversions,cost\\ncamp789,20000,1000,80,3500\",\"dataFormat\":\"csv\",\"includeRecommendations\":false,\"language\":\"en\"}", + "description": "Analyze CSV data for a marketing report without recommendations, focus on key metrics." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "marketing-automation.sendReply", + "description": "Sends a personalized reply message as part of a marketing automation workflow. Accepts recipient contact info, message content, and optional scheduling parameters. Processes the inputs to dispatch the reply via email or SMS and returns delivery status and message ID.", + "category": "marketing-automation", + "parameters": [ + { + "name": "recipientContact", + "type": "object", + "description": "The contact information of the recipient, including at least email or phone number fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The text or HTML content of the reply message to be sent to the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Channel to send the reply through; options include 'email' or 'sms'. Defaults to 'email'.", + "required": false, + "defaultValue": "\"email\"" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule the message in the future. If omitted, message is sent immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier or name of the sender for display purposes, such as 'Marketing Team'.", + "required": false, + "defaultValue": "" + }, + { + "name": "trackingEnabled", + "type": "boolean", + "description": "Whether to enable tracking for link clicks and opens in the reply message; defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the send request, a unique message ID, and optional error details if sending failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically send follow-up or reply messages to contacts during marketing campaigns, either instantly or scheduled. It handles communication via email or SMS, allows message personalization, and returns delivery status for campaign tracking.", + "limitations": "Does not compose message content or handle multi-language translations. Cannot guarantee delivery as it's subject to external channel providers' reliability. Does not support rich media attachments beyond plain text or embedded HTML.", + "examples": [ + "Send a thank-you reply email immediately after a lead signs up.", + "Schedule an SMS reply a day later thanking a user for their purchase.", + "Send a promotional email reply with tracking enabled for click analytics." + ] + }, + "tags": [ + "marketing", + "automation", + "communication", + "email", + "sms", + "reply", + "campaign", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"recipientContact\":{\"email\":\"customer@example.com\"},\"messageContent\":\"Thank you for your interest! We will contact you shortly.\",\"channel\":\"email\",\"trackingEnabled\":true}", + "description": "Send an immediate thank-you reply email with tracking enabled." + }, + { + "inputJson": "{\"recipientContact\":{\"phone\":\"+1234567890\"},\"messageContent\":\"Hi! Thanks for your recent purchase. Let us know if you have questions.\",\"channel\":\"sms\",\"scheduleTime\":\"2024-07-01T10:00:00Z\"}", + "description": "Schedule an SMS reply message to be sent on July 1, 2024, at 10 AM UTC." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "marketing-automation.sendMention", + "description": "Sends a mention message to a specified social media platform or marketing channel. Accepts parameters defining the recipient handle, message content, and optional media attachments. Processes the message and schedules or immediately publishes the mention. Returns the delivery status and metadata of the sent mention.", + "category": "marketing-automation", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "The social media or marketing platform to send the mention on (e.g., Twitter, Instagram, LinkedIn).", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientHandle", + "type": "string", + "description": "The handle or username of the recipient to mention or tag in the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The content of the mention message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "mediaUrls", + "type": "array", + "description": "An optional array of URLs linking to images or media to attach to the mention message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "An optional ISO 8601 datetime string to schedule the mention for future delivery. If empty or omitted, sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of hashtags or tags to include in the mention message to increase reach.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the status of the mention (e.g., sent, scheduled, failed), a unique mention ID, timestamp of the action, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to automate outreach or brand engagement by mentioning specific users or channels across social media or marketing platforms. Ideal for campaign automation, influencer engagement, or prompt responses to trending topics by tagging relevant accounts.", + "limitations": "Cannot compose the message content meaningfully; relies on input text. Does not handle responses or inbound messages. Delivery depends on third-party platform API availability and rate limits.", + "examples": [ + "Send a mention on Twitter to @brandpartner thanking them for collaboration.", + "Schedule an Instagram mention tagging @influencer with promotional message and attached image.", + "Immediately mention @customer on LinkedIn with a personalized offer message." + ] + }, + "tags": [ + "marketing", + "automation", + "social-media", + "mention", + "outreach", + "campaign", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"Twitter\",\"recipientHandle\":\"@openai\",\"message\":\"Thanks for the great work! #AI\",\"mediaUrls\":[],\"scheduleTime\":\"\",\"tags\":[\"#AI\"]}", + "description": "Send an immediate mention on Twitter to @openai with a thank you message including a hashtag." + }, + { + "inputJson": "{\"platform\":\"Instagram\",\"recipientHandle\":\"@techguru\",\"message\":\"Check out our new product launch!\",\"mediaUrls\":[\"https://example.com/image1.jpg\"],\"scheduleTime\":\"2024-07-01T10:00:00Z\",\"tags\":[\"#Launch\"]}", + "description": "Schedule an Instagram mention to @techguru with an attached product image and a launch hashtag." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Mention", + "context": null + } + }, + { + "name": "marketing-automation.sendEmail", + "description": "Sends an email marketing campaign to a list of recipients. Accepts inputs for sender details, recipient email addresses, email subject, HTML or plain text content, and optional attachments or scheduling info. Processes the email sending via a configured SMTP or email service provider and returns a summary status with message IDs and any errors.", + "category": "marketing-automation", + "parameters": [ + { + "name": "senderEmail", + "type": "string", + "description": "The email address that appears as the sender of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmails", + "type": "array", + "description": "Array of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentHtml", + "type": "string", + "description": "The HTML content of the email body. Either contentHtml or contentText must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentText", + "type": "string", + "description": "The plain text content of the email body. Either contentHtml or contentText must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachments where each attachment is an object with filename and base64 encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sendAt", + "type": "string", + "description": "Optional ISO 8601 date-time string to schedule the email for future sending.", + "required": false, + "defaultValue": "" + }, + { + "name": "replyTo", + "type": "string", + "description": "Optional email address for reply-to field in the email header.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a status indicator, a list of message IDs for successfully sent emails, and any error messages if failures occurred." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automate sending marketing emails or newsletters to multiple recipients with customized content, attachments, or scheduled delivery. The tool helps in managing bulk email sending through standard email providers or services and tracking the send status.", + "limitations": "Cannot create or manage email lists; does not handle advanced personalization beyond static content; does not track open rates or clicks; requires configured email service credentials outside this tool.", + "examples": [ + "Send a promotional email to 500 customers with html content scheduled for next Monday.", + "Send a plain-text reminder email to a small list of subscribers immediately.", + "Send an email with PDF attachment to a business client with reply-to address specified." + ] + }, + "tags": [ + "email", + "marketing", + "automation", + "campaign", + "bulk-send", + "schedule", + "attachments" + ], + "examples": [ + { + "inputJson": "{\"senderEmail\":\"promo@company.com\",\"recipientEmails\":[\"user1@example.com\",\"user2@example.com\"],\"subject\":\"Summer Sale is Here!\",\"contentHtml\":\"

Don\\'t miss our summer sale!

Up to 50% off on all items.

\",\"sendAt\":\"2024-06-01T09:00:00Z\"}", + "description": "Schedule sending an HTML email announcing a summer sale to two recipients for June 1st." + }, + { + "inputJson": "{\"senderEmail\":\"newsletter@company.com\",\"recipientEmails\":[\"subscriber@example.com\"],\"subject\":\"Monthly Newsletter\",\"contentText\":\"Hello, here is our monthly newsletter.\",\"replyTo\":\"support@company.com\"}", + "description": "Send an immediate plain text newsletter email with a reply-to address set." + }, + { + "inputJson": "{\"senderEmail\":\"sales@company.com\",\"recipientEmails\":[\"client@example.com\"],\"subject\":\"Your Invoice\",\"contentText\":\"Please find attached the invoice for your order.\",\"attachments\":[{\"filename\":\"invoice.pdf\",\"content\":\"JVBERi0xLjQKJbX...\"}]}", + "description": "Send an invoice email with a PDF attachment to a client." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "marketing-automation.sendAlert", + "description": "This tool sends marketing security alerts to designated recipients when suspicious activities or threats related to marketing campaigns are detected. It accepts alert details like message, severity, recipient list, and optional scheduling info, then processes them to dispatch notifications via email or SMS. It outputs the status of the alert dispatch attempt including success or error details.", + "category": "marketing-automation", + "parameters": [ + { + "name": "alertMessage", + "type": "string", + "description": "The main content or message of the alert to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Indicates the urgency or importance of the alert, e.g., low, medium, high.", + "required": true, + "defaultValue": "medium" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient contacts (emails or phone numbers) to receive the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactMethod", + "type": "string", + "description": "Preferred method to send the alert, such as 'email' or 'sms'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying when to send the alert; immediate if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Optional identifier to link the alert with a specific marketing campaign for context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a success flag, a message summarizing the result, and if failed, error details." + }, + "aiAgent": { + "useCase": "Use this tool to automatically notify marketing security teams or stakeholders when suspicious activities, vulnerabilities, or breaches are detected in marketing campaigns. It helps automate alerting based on threat detection results or monitoring systems to ensure timely response and mitigate risks.", + "limitations": "This tool does not itself detect threats or analyze campaign data; it only sends alerts based on provided input. It also depends on proper recipient contact formats and does not guarantee delivery beyond attempted dispatch.", + "examples": [ + "Send a high severity alert to the security team by email about a detected phishing campaign targeting customers.", + "Schedule a low severity warning SMS alert for the marketing manager regarding unusual login attempts in the campaign dashboard.", + "Dispatch an immediate medium level alert to multiple emails about a detected vulnerability in the campaign software integration." + ] + }, + "tags": [ + "marketing", + "automation", + "alert", + "security", + "notification", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"alertMessage\":\"Detected phishing attack in recent email blast targeting customers.\",\"severityLevel\":\"high\",\"recipients\":[\"security@example.com\"],\"contactMethod\":\"email\",\"scheduleTime\":\"\"}", + "description": "Send an immediate high severity email alert to security team about detected phishing." + }, + { + "inputJson": "{\"alertMessage\":\"Unusual login attempts detected in campaign management portal.\",\"severityLevel\":\"medium\",\"recipients\":[\"manager@example.com\",\"security@example.com\"],\"contactMethod\":\"email\",\"scheduleTime\":\"2024-07-01T09:00:00Z\"}", + "description": "Schedule medium severity email alert to manager and security about suspicious logins." + }, + { + "inputJson": "{\"alertMessage\":\"Possible data exposure from marketing integration plugin.\",\"severityLevel\":\"high\",\"recipients\":[\"security@example.com\"],\"contactMethod\":\"sms\",\"scheduleTime\":\"\"}", + "description": "Send immediate SMS high severity alert to security about data exposure issue." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "marketing-automation.sendMessage", + "description": "Sends a personalized marketing message to a target audience via specified communication channels such as email or SMS. Accepts recipient details, message content, channel selection, and optional scheduling parameters. Processes message templating with variables and outputs a delivery report summarizing success and failure counts.", + "category": "marketing-automation", + "parameters": [ + { + "name": "recipientList", + "type": "array", + "description": "An array of recipient objects containing contact information and personalization data.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageTemplate", + "type": "string", + "description": "The message content that may include placeholders for personalization variables.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "The communication channel to send the message through, e.g., 'email' or 'sms'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sendTime", + "type": "string", + "description": "Optional scheduled time in ISO 8601 format to send the message; if omitted, sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier representing the sender name or number as displayed to recipients.", + "required": false, + "defaultValue": "" + }, + { + "name": "trackingEnabled", + "type": "boolean", + "description": "Flag indicating if message tracking (opens, clicks) should be enabled.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A report object with total recipients, number of messages sent successfully, and any failures with error details." + }, + "aiAgent": { + "useCase": "Use this tool to automate delivery of marketing messages tailored to individual recipients via email or SMS. Ideal for campaigns requiring scheduled dispatch and personalization, enabling better audience engagement and tracking message delivery outcomes.", + "limitations": "This tool does not handle complex campaign analytics or automatic list segmentation; it only sends messages to provided recipient data. Does not generate message content or validate phone/email formats internally.", + "examples": [ + "Send a promotional email to a list of customers with personalized discount codes.", + "Schedule an SMS notification about a product launch to subscribers.", + "Send a marketing message immediately to a small list via email with tracking enabled." + ] + }, + "tags": [ + "marketing", + "automation", + "messaging", + "email", + "sms", + "personalization", + "campaign", + "delivery" + ], + "examples": [ + { + "inputJson": "{\"recipientList\":[{\"email\":\"user1@example.com\",\"name\":\"John\"},{\"email\":\"user2@example.com\",\"name\":\"Jane\"}],\"messageTemplate\":\"Hello {{name}}, check out our new offers!\",\"channel\":\"email\",\"sendTime\":\"\",\"senderId\":\"PromoTeam\",\"trackingEnabled\":true}", + "description": "Send a personalized email to two users immediately with tracking enabled." + }, + { + "inputJson": "{\"recipientList\":[{\"phone\":\"+1234567890\",\"name\":\"Alice\"}],\"messageTemplate\":\"Hi {{name}}, don't miss our flash sale!\",\"channel\":\"sms\",\"sendTime\":\"2024-06-30T09:00:00Z\",\"senderId\":\"ShopX\",\"trackingEnabled\":false}", + "description": "Schedule an SMS campaign message to Alice at a specific future time without tracking." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "sales-automation.sendReply", + "description": "Sends a customized reply message to a sales lead or customer via the specified communication channel. Accepts input such as recipient contact details, message content, and optional metadata, then processes and dispatches the message accordingly, returning the status and message ID if successful.", + "category": "sales-automation", + "parameters": [ + { + "name": "recipientContact", + "type": "object", + "description": "Contact details of the message recipient, including type and address (e.g., email or phone number).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The content of the reply message to send to the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "communicationChannel", + "type": "string", + "description": "The channel to send the reply through, such as 'email', 'sms', or 'chat'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "subjectLine", + "type": "string", + "description": "Subject line for the message when using email channel; ignored otherwise.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message, e.g., 'normal', 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata or tags to annotate the message.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the result status, message identifier if sent successfully, and error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send a direct, personalized reply to a prospect or customer during a sales process, automating communication across email, SMS, or chat channels based on contact information and message context.", + "limitations": "This tool does not handle message template generation, recipient validation beyond required fields, or conversation context management beyond single message sending.", + "examples": [ + "Send a follow-up email reply to a lead after a product demo.", + "Send an SMS reply acknowledging a customer's inquiry.", + "Send a chat reply with troubleshooting instructions through a supported channel." + ] + }, + "tags": [ + "sales", + "automation", + "communication", + "reply", + "lead management", + "customer engagement", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"recipientContact\":{\"type\":\"email\",\"address\":\"lead@example.com\"},\"messageContent\":\"Thank you for your interest in our product. Let me know if you have any questions.\",\"communicationChannel\":\"email\",\"subjectLine\":\"Thank you for your inquiry\",\"priority\":\"normal\",\"metadata\":{\"campaignId\":\"camp123\"}}", + "description": "Send an email reply thanking a lead after their inquiry." + }, + { + "inputJson": "{\"recipientContact\":{\"type\":\"phone\",\"address\":\"+1234567890\"},\"messageContent\":\"We have received your request and will get back to you shortly.\",\"communicationChannel\":\"sms\",\"priority\":\"high\",\"metadata\":{}}", + "description": "Send a high priority SMS reply acknowledging receipt of a request." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "marketing-automation.sendNotification", + "description": "Sends a marketing notification to a specified list of recipients via chosen channels such as email, SMS, or push notifications. Accepts recipient details, message content, channel preferences, and scheduling options; processes delivery through integrated marketing platforms; returns delivery status and summary report.", + "category": "marketing-automation", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "Array of recipient contact objects including email, phone number, or device ID depending on channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageSubject", + "type": "string", + "description": "Subject line of the notification (applicable for email).", + "required": false, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content of the notification message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of channels to send notifications on, e.g., ['email','sms','push'].", + "required": true, + "defaultValue": "[\"email\"]" + }, + { + "name": "sendAt", + "type": "string", + "description": "Optional ISO 8601 datetime string to schedule sending in the future; if omitted sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier of the marketing campaign for tracking purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of notification, values like 'high','normal','low'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the delivery status for each recipient and channel, including success flags and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the delivery of marketing notifications or alerts across multiple communication channels with support for scheduling and campaign tracking. Ideal for multi-channel outreach campaigns targeting segmented user lists.", + "limitations": "This tool does not create the message content or manage recipient segmentation. It requires valid contact information formatted for the chosen channels and does not guarantee delivery as external system limitations apply.", + "examples": [ + "Send promotional emails and SMS notifications to a customer segment.", + "Schedule a push notification campaign for a mobile app to go live at a future time.", + "Send immediate alert notifications to all subscribers via email." + ] + }, + "tags": [ + "marketing", + "notification", + "automation", + "email", + "sms", + "push", + "campaign", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[{\"email\":\"john.doe@example.com\"},{\"email\":\"jane.smith@example.com\"}],\"messageSubject\":\"Spring Sale Launch!\",\"messageBody\":\"Dear customer, enjoy our exclusive spring sale with up to 50% off.\",\"channels\":[\"email\"],\"sendAt\":\"\",\"campaignId\":\"SPRING2024\",\"priority\":\"high\"}", + "description": "Send a high priority email notification about a spring sale to a list of recipients immediately." + }, + { + "inputJson": "{\"recipients\":[{\"phone\":\"+15551234567\"}],\"messageBody\":\"Your verification code is 123456.\",\"channels\":[\"sms\"],\"sendAt\":\"2024-07-01T09:00:00Z\",\"campaignId\":\"\",\"priority\":\"normal\"}", + "description": "Schedule an SMS notification with a verification code to send at 9 AM UTC on July 1, 2024." + }, + { + "inputJson": "{\"recipients\":[{\"deviceId\":\"device123\"}],\"messageBody\":\"Don't miss our app update with new features!\",\"channels\":[\"push\"],\"sendAt\":\"\",\"campaignId\":\"UPDATE2024\",\"priority\":\"normal\"}", + "description": "Send an immediate push notification alerting users about a new app update." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "sales-automation.sendMention", + "description": "Sends a mention notification to a user or group within a sales communication platform, referencing a specific sales lead or opportunity. Accepts recipient identifiers, a message with optional lead context, and sends a formatted mention to alert relevant parties. Returns confirmation of delivery status and message ID.", + "category": "sales-automation", + "parameters": [ + { + "name": "recipientIds", + "type": "array", + "description": "Array of user or group IDs to mention in the communication platform.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The content of the mention message to be sent, which can include dynamic placeholders.", + "required": true, + "defaultValue": "" + }, + { + "name": "leadId", + "type": "string", + "description": "Optional sales lead or opportunity ID to reference in the mention, linking communication to a specific sales record.", + "required": false, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "Identifier of the communication platform where the mention should be sent (e.g., Slack, Microsoft Teams).", + "required": true, + "defaultValue": "slack" + }, + { + "name": "urgent", + "type": "boolean", + "description": "Flag to indicate if the mention should be marked as urgent or prioritized in the recipient's interface.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send action, the unique ID of the sent mention, timestamp, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to proactively notify specific users or groups about updates or actions related to sales leads within supported communication platforms, ensuring timely awareness and collaboration.", + "limitations": "This tool cannot compose complex natural language messages automatically; it requires a predefined message input. It also cannot fetch recipient IDs or lead details by itself.", + "examples": [ + "Notify the sales team mentioned in Slack about a new lead needing attention.", + "Send an urgent mention to the account manager group in Microsoft Teams referencing lead 12345." + ] + }, + "tags": [ + "sales", + "communication", + "notification", + "lead-management", + "automation", + "mention", + "sales-automation" + ], + "examples": [ + { + "inputJson": "{\"recipientIds\":[\"U2345\",\"U6789\"],\"message\":\"Please review the latest update on lead 98765.\",\"leadId\":\"98765\",\"platform\":\"slack\",\"urgent\":false}", + "description": "Mention two users in Slack about an update on a sales lead." + }, + { + "inputJson": "{\"recipientIds\":[\"teamAccountManagers\"],\"message\":\"Urgent: Closing date is approaching for lead 12345.\",\"leadId\":\"12345\",\"platform\":\"microsoft-teams\",\"urgent\":true}", + "description": "Send an urgent mention to a group in Microsoft Teams about a critical lead deadline." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Mention", + "context": null + } + }, + { + "name": "marketing-automation.sendChannel", + "description": "Sends marketing campaign messages through a specified communication channel such as email, SMS, or push notifications. It accepts campaign content, recipient lists, and channel configurations, processes the dispatching of messages accordingly, and returns the delivery status and analytics data per message.", + "category": "marketing-automation", + "parameters": [ + { + "name": "channel", + "type": "string", + "description": "The communication channel to send messages through (e.g., 'email', 'sms', 'push').", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier of the marketing campaign to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "object", + "description": "The message content including subject, body, and any multimedia attachments.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "Array of recipient objects containing contact details appropriate for the channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "sendTime", + "type": "string", + "description": "ISO 8601 timestamp indicating when to send messages. If omitted, send immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "trackingEnabled", + "type": "boolean", + "description": "If true, track message open rates and clicks where supported.", + "required": false, + "defaultValue": "true" + }, + { + "name": "priority", + "type": "string", + "description": "Send priority level, e.g., 'high', 'normal', or 'low'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall send operation status, a list of per-recipient delivery results with status and message IDs, and analytics summary if tracking is enabled." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to dispatch marketing campaign messages through multiple communication channels with rich message content and recipient segmentation, coordinating timed sends and capturing delivery analytics. It is particularly useful for automated campaign execution and follow-up workflows.", + "limitations": "It does not create campaign content or manage recipient lists; those must be prepared beforehand. It cannot guarantee delivery but reports status received from service providers. It does not handle channel credential configuration.", + "examples": [ + "Send an email campaign with personalized content to a customer segment now.", + "Schedule SMS alerts via the campaign at a specific future date and time.", + "Send push notifications with tracking enabled for app users in a campaign." + ] + }, + "tags": [ + "marketing", + "automation", + "send", + "channel", + "campaign", + "communication", + "email", + "sms", + "push" + ], + "examples": [ + { + "inputJson": "{\"channel\":\"email\",\"campaignId\":\"cmp12345\",\"content\":{\"subject\":\"Spring Sale!\",\"body\":\"Enjoy 20% off on all items.\",\"attachments\":[]},\"recipientList\":[{\"email\":\"user1@example.com\"},{\"email\":\"user2@example.com\"}],\"trackingEnabled\":true}", + "description": "Send an immediate email campaign to two recipients with tracking enabled." + }, + { + "inputJson": "{\"channel\":\"sms\",\"campaignId\":\"cmp67890\",\"content\":{\"body\":\"Flash Sale! 50% off. Visit our site now.\"},\"recipientList\":[{\"phoneNumber\":\"+1234567890\"},{\"phoneNumber\":\"+1987654321\"}],\"sendTime\":\"2024-07-01T10:00:00Z\",\"trackingEnabled\":false}", + "description": "Schedule an SMS blast for a flash sale to two phone numbers without tracking, to send at a specific future time." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "sales-automation.sendComment", + "description": "Sends a comment or note to a specified lead or contact within the sales CRM system. Accepts lead ID and comment text as input, optionally including metadata such as author ID and visibility scope. Processes and adds the comment to the lead's record, returning status confirming successful posting with timestamp and comment ID.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadId", + "type": "string", + "description": "Unique identifier of the lead or contact to which the comment will be attached.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The content of the comment or note to be sent to the lead's record.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier of the user or agent sending the comment, for audit purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "visibility", + "type": "string", + "description": "Visibility scope of the comment (e.g., 'internal' or 'public'). Determines who can see the comment.", + "required": false, + "defaultValue": "internal" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp for the comment. If omitted, system's current time is used.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, posted comment ID, timestamp, and an optional message." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to add contextual remarks, updates, or follow-up notes directly to a lead's profile within a sales CRM. Ideal for tracking interactions, sharing insights with sales team members, or logging communication details automatically during automated sales workflows.", + "limitations": "This tool does not retrieve existing comments, modify or delete comments once posted, or send notifications to leads. It only adds new comment entries to lead records.", + "examples": [ + "Add a follow-up note to lead ID 'L12345' after a call.", + "Log an internal comment noting the lead's interest level for sales review.", + "Send a public comment to a lead visible to the client on their portal." + ] + }, + "tags": [ + "sales", + "crm", + "commenting", + "lead-management", + "automation", + "notes", + "communication" + ], + "examples": [ + { + "inputJson": "{\"leadId\":\"L12345\",\"commentText\":\"Spoke with client, interested in premium plan.\",\"authorId\":\"U6789\",\"visibility\":\"internal\"}", + "description": "Adding an internal comment summarizing a client call outcome." + }, + { + "inputJson": "{\"leadId\":\"L98765\",\"commentText\":\"Sent proposal documents as requested.\",\"authorId\":\"U6789\"}", + "description": "Logging a note about sending proposal documents; visibility defaults to internal." + }, + { + "inputJson": "{\"leadId\":\"L54321\",\"commentText\":\"Client viewed contract and approved terms.\",\"authorId\":\"U4321\",\"visibility\":\"public\",\"timestamp\":\"2024-06-01T14:30:00Z\"}", + "description": "Posting a public comment with a specific timestamp, visible to the client." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "sales-automation.sendChannel", + "description": "Sends a sales communication message through a specified channel such as email, SMS, or social media. Accepts inputs including message content, recipient details, and channel type. Processes the inputs by formatting and dispatching the message via the chosen channel, returning the status of the send operation including success or failure details.", + "category": "sales-automation", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel to send the message through (e.g., 'email', 'sms', 'socialMedia').", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "object", + "description": "Object containing recipient details like email address, phone number, or social media handle.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The text content of the message to send to the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for email messages. Optional for other channels.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier or address of the sender (e.g., email address, phone number, or account handle).", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects (e.g., files or URLs) to include with the message. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message, such as 'normal' or 'high'. Optional.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the message send request, including 'success' boolean, 'messageId' if applicable, and 'error' details if failed." + }, + "aiAgent": { + "useCase": "This tool is used to automate sending sales communications through various channels to leads or customers. An AI agent should use it when it needs to deliver personalized or bulk messages via email, SMS, or social platforms within a sales automation workflow. It facilitates faster outreach and follow-ups without manual intervention.", + "limitations": "This tool does not generate message content or manage lead data; it only handles sending messages through specified channels. It also depends on the availability and configuration of underlying messaging services or APIs and may not handle message templates or complex multi-step campaigns.", + "examples": [ + "Send promotional email to a lead with discount offer", + "Send SMS reminder about upcoming sales event", + "Post message via social media channel to engage new prospects" + ] + }, + "tags": [ + "sales", + "automation", + "communication", + "messaging", + "email", + "sms", + "socialMedia", + "leadManagement" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"email\",\"recipient\":{\"email\":\"customer@example.com\"},\"messageContent\":\"Hello, we have a special offer just for you!\",\"subject\":\"Exclusive Discount Inside\",\"senderId\":\"sales@company.com\",\"attachments\":[],\"priority\":\"high\"}", + "description": "Send a high priority promotional email to a customer with subject and no attachments." + }, + { + "inputJson": "{\"channelType\":\"sms\",\"recipient\":{\"phoneNumber\":\"+1234567890\"},\"messageContent\":\"Reminder: your appointment is tomorrow at 10 AM.\",\"senderId\":\"CompanySMS\"}", + "description": "Send an SMS reminder message for an appointment to a customer's phone number." + }, + { + "inputJson": "{\"channelType\":\"socialMedia\",\"recipient\":{\"handle\":\"@leadUser\"},\"messageContent\":\"Check out our latest product updates! Visit our website for details.\"}", + "description": "Send a social media message to a user handle promoting product updates." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "marketing-automation.sendThread", + "description": "Sends a marketing communication thread comprising multiple messages to a target audience via specified channels. Accepts input parameters including recipient lists, message contents, channel selection, scheduling options, and tracking preferences. Processes the thread by queuing or dispatching messages accordingly and returns a status report including message IDs and delivery status.", + "category": "marketing-automation", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier of the marketing thread to send, consisting of one or more coordinated messages.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "Array of recipient contact objects or identifiers specifying who will receive the messages.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of communication channels to send messages through, such as email, SMS, or push notifications.", + "required": true, + "defaultValue": "" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule when the thread should begin sending; sends immediately if empty or omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "trackDelivery", + "type": "boolean", + "description": "Flag indicating whether to track delivery and engagement metrics for the sent messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier for the sender profile or account used to send the thread messages.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, including success flag, message IDs for each sent message, and error information if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when orchestrating multi-message marketing campaigns that need to be sent as a thread or sequence across multiple communication channels to targeted recipient groups. It automates the dispatch and scheduling of threaded marketing content and provides feedback on send status and tracking.", + "limitations": "Does not create or design the messages; the thread content must already be defined. Does not handle message personalization beyond recipient addressing. Relies on external channel integrations for actual message delivery.", + "examples": [ + "Send a promotional email and SMS thread to all users who signed up last week.", + "Schedule a multi-part push notification campaign to app users next Monday.", + "Send a welcome message thread via email immediately to new subscribers using the marketing account." + ] + }, + "tags": [ + "marketing", + "automation", + "communication", + "messaging", + "campaign", + "multichannel", + "threading" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"welcomeThread2024\",\"recipientList\":[{\"email\":\"user1@example.com\"},{\"email\":\"user2@example.com\"}],\"channels\":[\"email\",\"sms\"],\"scheduleTime\":\"\",\"trackDelivery\":true,\"senderId\":\"marketingAccountA\"}", + "description": "Send a welcome thread immediately via email and SMS to specified users, tracking delivery." + }, + { + "inputJson": "{\"threadId\":\"promoSeq01\",\"recipientList\":[{\"phone\":\"+15551234567\"}],\"channels\":[\"sms\"],\"scheduleTime\":\"2024-07-01T09:00:00Z\",\"trackDelivery\":false}", + "description": "Schedule a promotional SMS thread to a phone number at a specific time, without tracking delivery." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "sales-automation.sendThread", + "description": "Sends a sales communication thread including one or more messages to a specified lead or contact. Accepts input such as recipient details, an array of message objects with content and optional attachments, and optional scheduling information. Processes the messages to deliver them via integrated email or messaging platforms. Returns a status summary with message IDs and delivery results.", + "category": "sales-automation", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the lead or contact to whom the thread will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "An array of message objects composing the thread, each containing content, optional subject, and optional attachments.", + "required": true, + "defaultValue": "" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 datetime string to schedule the thread delivery in the future. If omitted, sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "communicationChannel", + "type": "string", + "description": "Channel to use for sending the thread, e.g., 'email', 'sms', or 'chat'. Defaults to 'email'.", + "required": false, + "defaultValue": "\"email\"" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the thread, e.g., 'normal', 'high'.", + "required": false, + "defaultValue": "\"normal\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall status, individual message IDs, and any errors encountered during sending." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to automate sending a sequence of sales messages as a cohesive conversation thread to a lead or contact, potentially scheduling for future delivery and choosing communication channels. It helps streamline outreach and follow-ups with structured multistep threads.", + "limitations": "This tool does not create or manage leads; it assumes recipientId is valid. It does not handle inbound message parsing or responses. Attachments must follow supported formats externally validated before use.", + "examples": [ + "Send a three-message sales introduction thread to a new lead immediately by email.", + "Schedule a follow-up thread with personalized messages to be sent tomorrow via email.", + "Send a quick SMS message thread to a contact for a time-sensitive promotion." + ] + }, + "tags": [ + "sales", + "automation", + "communication", + "messaging", + "lead-management", + "email", + "sms" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"lead_123456\",\"messages\":[{\"subject\":\"Introduction\",\"content\":\"Hi, I wanted to introduce our new product line.\",\"attachments\":[]},{\"content\":\"Please let me know if you want a demo.\"}],\"communicationChannel\":\"email\"}", + "description": "Send a multi-message sales email thread immediately to a lead." + }, + { + "inputJson": "{\"recipientId\":\"contact_987\",\"messages\":[{\"content\":\"Don't miss our limited offer!\"}],\"scheduleTime\":\"2024-12-01T09:00:00Z\",\"communicationChannel\":\"sms\",\"priority\":\"high\"}", + "description": "Schedule a high priority SMS message thread to be sent in the future to a contact." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "sales-automation.sendMessage", + "description": "This tool sends a personalized sales message to one or more leads. It accepts input including recipient contact details, message content, and optional scheduling or channel preferences. The tool processes the inputs to dispatch messages via email or SMS and returns the status for each recipient (success, failure, error details).", + "category": "sales-automation", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipients where each contains contact information such as email or phone number and optional lead metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The body of the sales message to be sent, which can include placeholders for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Preferred communication channel for the message, e.g., 'email' or 'sms'.", + "required": false, + "defaultValue": "email" + }, + { + "name": "sendImmediately", + "type": "boolean", + "description": "Whether to send the message immediately (true) or schedule for later (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "ISO 8601 formatted date-time string to schedule the message; required if sendImmediately is false.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the sender as it should appear in the message.", + "required": false, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for email messages; ignored if channel is SMS.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object describing the delivery status for each recipient, including success or failure and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate outreach to sales leads by sending customized messages through email or SMS channels. Ideal for scenarios involving bulk messaging, personalized content, and scheduling communications to improve engagement.", + "limitations": "Does not generate message content or handle complex campaign analytics. Does not support channels other than email or SMS. Scheduling precision depends on system clock and may vary.", + "examples": [ + "Send a welcome email to new leads with their names personalized in the message.", + "Send an SMS reminder about a sales call scheduled tomorrow afternoon to multiple contacts.", + "Schedule an email campaign to launch after business hours targeting a curated list of leads." + ] + }, + "tags": [ + "sales", + "automation", + "messaging", + "lead management", + "email", + "sms", + "outreach" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[{\"email\":\"alice@example.com\"},{\"email\":\"bob@example.com\"}],\"messageContent\":\"Hello {{name}}, we have a special offer for you!\",\"channel\":\"email\",\"sendImmediately\":true,\"senderName\":\"Sales Team\",\"subject\":\"Exclusive Offer Just for You\"}", + "description": "Send an immediate personalized email to multiple leads with a promotional message." + }, + { + "inputJson": "{\"recipients\":[{\"phone\":\"+1234567890\"}],\"messageContent\":\"Hi, just a reminder about your meeting tomorrow at 10 AM.\",\"channel\":\"sms\",\"sendImmediately\":true}", + "description": "Send an immediate SMS reminder to a single lead about their meeting." + }, + { + "inputJson": "{\"recipients\":[{\"email\":\"charlie@example.com\"}],\"messageContent\":\"Dear {{name}}, check out our new product launch next week.\",\"channel\":\"email\",\"sendImmediately\":false,\"scheduledTime\":\"2024-07-01T08:00:00Z\",\"senderName\":\"Marketing Team\",\"subject\":\"Upcoming Product Launch\"}", + "description": "Schedule an email to be sent in the future with personalized product launch details." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "sales-automation.sendNotification", + "description": "Sends a notification message to a specified recipient or group within a sales context, supporting various channels such as email, SMS, or in-app alerts. Accepts parameters defining recipient contact info, message content, delivery channel, and optional scheduling, processing these inputs to dispatch the notification and returning a status report of the delivery outcome.", + "category": "sales-automation", + "parameters": [ + { + "name": "recipient", + "type": "object", + "description": "Contact information of the notification recipient, e.g., email address or phone number.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Content of the notification message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Communication channel to use for sending the notification, e.g., 'email', 'sms', or 'inApp'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule the notification for future delivery. If omitted, sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification, e.g., 'normal' or 'high'. Higher priority may trigger more immediate delivery methods.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data related to the notification for tracking or personalization purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the notification sending attempt, including success flag, message ID if successful, and error details if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate sending actionable notifications to sales leads, customers, or team members using various communication channels. It supports immediate or scheduled messages with customizable priority and metadata for personalization and tracking.", + "limitations": "Does not handle recipient validation or channel-specific formatting errors beyond basic checks; success depends on external communication service availability and correct recipient contact info.", + "examples": [ + "Send a promotional email to a sales lead immediately.", + "Schedule an SMS reminder to a customer before an appointment.", + "Send an in-app alert to sales team members about an urgent lead update." + ] + }, + "tags": [ + "notification", + "sales", + "automation", + "communication", + "email", + "sms", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"recipient\":{\"email\":\"lead@example.com\"},\"message\":\"Exclusive offer just for you!\",\"channel\":\"email\",\"priority\":\"high\"}", + "description": "Send a high-priority promotional email notification to a sales lead." + }, + { + "inputJson": "{\"recipient\":{\"phone\":\"+1234567890\"},\"message\":\"Reminder: your sales appointment is tomorrow at 3 PM.\",\"channel\":\"sms\",\"scheduleTime\":\"2024-07-01T15:00:00Z\"}", + "description": "Schedule an SMS reminder to a customer one day before their appointment." + }, + { + "inputJson": "{\"recipient\":{\"userId\":\"sales_user_007\"},\"message\":\"New lead assigned to you: Acme Corp.\",\"channel\":\"inApp\"}", + "description": "Send an immediate in-app alert to a sales team member about a new lead assignment." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "sales-automation.sendEmail", + "description": "This tool sends a customized sales email to one or multiple recipients. It accepts recipient email addresses, email subject, body content (which can be plain text or HTML), and optional CC and BCC fields. It processes these inputs by connecting to an SMTP or email API to deliver the message and returns a delivery status and message ID if successful.", + "category": "sales-automation", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses to receive the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content of the email; supports plain text or HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of email addresses for CC recipients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of email addresses for BCC recipients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Specifies if the email body is in HTML format; false means plain text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "from", + "type": "string", + "description": "Optional sender email address; defaults to configured sales email address if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'success' boolean, 'messageId' string if sent, and 'error' string if failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to send sales outreach or follow-up emails automatically to leads or customers, enabling automation of communication in sales workflows, including bulk personalized messaging with tracking of delivery status.", + "limitations": "This tool does not generate email content or manage replies; it only sends emails as provided. It does not provide analytics or handle complex campaign scheduling.", + "examples": [ + "Send a follow-up email to a lead list with personalized links.", + "Send a bulk promotional email to multiple recipients with CC to the sales manager.", + "Send a HTML formatted invitation email for a sales webinar." + ] + }, + "tags": [ + "email", + "sales", + "automation", + "communication", + "outreach", + "bulk-send" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"lead@example.com\"],\"subject\":\"Special Offer Just for You!\",\"body\":\"Hello, we have an exclusive offer...\",\"isHtml\":false}", + "description": "Send a plain text sales offer email to one lead." + }, + { + "inputJson": "{\"to\":[\"client1@example.com\",\"client2@example.com\"],\"subject\":\"Upcoming Product Webinar\",\"body\":\"

Join us for a webinar

Details inside...

\",\"isHtml\":true,\"cc\":[\"manager@example.com\"]}", + "description": "Send an HTML formatted webinar invitation to multiple clients, CCing the manager." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "copywriting.draftQuote", + "description": "Generates a compelling marketing or promotional quote based on given product or service details, target audience, tone, and keywords. It processes the inputs to create a concise, persuasive quote suitable for advertising or branding purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to promote", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "Brief description highlighting key features or benefits", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience or customer segment for the quote", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the quote (e.g., inspirational, professional, playful)", + "required": false, + "defaultValue": "inspirational" + }, + { + "name": "keywords", + "type": "array", + "description": "List of important keywords to include or emphasize", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the quote in characters", + "required": false, + "defaultValue": "140" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote string" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create persuasive, short-form marketing quotes or taglines based on product specifics and marketing goals. Ideal for generating promotional content for ads, websites, and campaigns.", + "limitations": "Cannot guarantee trademark compliance or adapt to extremely niche industries without clear input. May produce quotes that need human refinement for brand voice consistency.", + "examples": [ + "Generate a motivational product quote for a new fitness app targeting young adults.", + "Draft a playful and catchy quote highlighting eco-friendly features of a brand of sneakers.", + "Create a professional quote promoting a consulting firm's new AI service, including keywords like efficiency and innovation." + ] + }, + "tags": [ + "copywriting", + "marketing", + "quote", + "branding", + "promotional", + "advertising", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoRun Sneakers\",\"productDescription\":\"Lightweight, stylish sneakers made from recycled materials.\",\"targetAudience\":\"eco-conscious millennials\",\"tone\":\"playful\",\"keywords\":[\"sustainable\",\"comfort\",\"style\"],\"maxLength\":100}", + "description": "Draft a playful, short quote promoting eco-friendly sneakers targeting millennials." + }, + { + "inputJson": "{\"productName\":\"AI Boost Consulting\",\"productDescription\":\"Consulting service specializing in AI-driven efficiency improvements.\",\"targetAudience\":\"business executives\",\"tone\":\"professional\",\"keywords\":[\"efficiency\",\"innovation\"],\"maxLength\":140}", + "description": "Generate a professional quote emphasizing AI-powered innovation for business executives." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Quote", + "context": null + } + }, + { + "name": "sales-automation.sendAlert", + "description": "Sends an automated alert to a specified sales or security team member when suspicious sales activities or potential security breaches are detected within sales processes. Accepts details about the alert context, urgency, and recipient contact information and returns the status of the alert delivery.", + "category": "sales-automation", + "parameters": [ + { + "name": "alertType", + "type": "string", + "description": "Type of alert to send, e.g., 'fraudDetection', 'unauthorizedAccess', or 'suspiciousActivity' in sales systems.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Detailed message content describing the alert and relevant context for immediate action.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmails", + "type": "array", + "description": "List of email addresses to which the alert should be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority of the alert: 'low', 'medium', or 'high', influencing notification urgency.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "relatedLeadId", + "type": "string", + "description": "Optional sales lead identifier related to the alert for cross-reference in CRM systems.", + "required": false, + "defaultValue": "" + }, + { + "name": "sendSms", + "type": "boolean", + "description": "Whether to also send the alert as an SMS message for urgent notifications.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object including the alertId, sendStatus ('success' or 'failure'), and timestamp of alert dispatch." + }, + "aiAgent": { + "useCase": "Use this tool when suspicious activities or security concerns related to sales processes arise and an immediate, automated notification must be sent to responsible team members to prompt fast response and mitigation.", + "limitations": "This tool does not perform detection or analysis of suspicious activities; it only sends alerts based on inputs provided by other systems or analysis modules.", + "examples": [ + "Send alert to sales security about detected fraudulent transaction on a lead.", + "Notify a sales manager via email and SMS about unauthorized CRM access attempts.", + "Alert the security team about unusual lead activity with medium priority." + ] + }, + "tags": [ + "sales", + "automation", + "alert", + "security", + "notification", + "leadManagement", + "riskManagement" + ], + "examples": [ + { + "inputJson": "{\"alertType\":\"fraudDetection\",\"message\":\"Potential fraudulent transaction detected for lead ID 12345.\",\"recipientEmails\":[\"security@example.com\"],\"priorityLevel\":\"high\",\"relatedLeadId\":\"12345\",\"sendSms\":true}", + "description": "Sending a high priority fraud detection alert with SMS notification to the security team for a specific lead." + }, + { + "inputJson": "{\"alertType\":\"unauthorizedAccess\",\"message\":\"Unauthorized CRM access attempt detected.\",\"recipientEmails\":[\"salesmanager@example.com\"],\"priorityLevel\":\"medium\",\"sendSms\":false}", + "description": "Sending an alert email without SMS about unauthorized access attempt to a sales manager." + }, + { + "inputJson": "{\"alertType\":\"suspiciousActivity\",\"message\":\"Multiple failed login attempts detected on lead 98765's CRM record.\",\"recipientEmails\":[\"securityteam@example.com\", \"itadmin@example.com\"],\"priorityLevel\":\"medium\"}", + "description": "Sending a medium priority alert email to multiple recipients about suspicious login activity." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "copywriting.draftCitation", + "description": "This tool generates a properly formatted citation for a given source, based on the specified citation style (e.g., APA, MLA, Chicago). It accepts details about the source such as author(s), title, publication year, publisher, URL, and formats these inputs into a complete, polished citation string for academic or professional use.", + "category": "copywriting", + "parameters": [ + { + "name": "sourceType", + "type": "string", + "description": "Type of source to cite (e.g., book, journal, website, article)", + "required": true, + "defaultValue": "article" + }, + { + "name": "authors", + "type": "array", + "description": "List of author names in 'Last, First' format", + "required": true, + "defaultValue": "[]" + }, + { + "name": "title", + "type": "string", + "description": "Title of the work or article being cited", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationYear", + "type": "string", + "description": "Year the work was published", + "required": false, + "defaultValue": "" + }, + { + "name": "publisher", + "type": "string", + "description": "Name of the publisher or publishing organization", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL or DOI of the source if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style format to use (e.g., APA, MLA, Chicago)", + "required": true, + "defaultValue": "APA" + }, + { + "name": "accessDate", + "type": "string", + "description": "Date the URL/source was accessed, for online citations (YYYY-MM-DD)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted citation string under 'citation' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce accurate, stylistically correct citations for given sources to include in academic papers, reports, or publications. It is Ideal for generating citations in various popular formats given structured source information.", + "limitations": "This tool cannot verify the correctness of input metadata or replace manual style guide consultation. It may not cover less common citation formats or complex source types like artworks or interviews.", + "examples": [ + "Generate an APA citation for a book by two authors published in 2018.", + "Create an MLA citation for a website including author, title, URL, and access date.", + "Format a Chicago style citation for a journal article with multiple authors." + ] + }, + "tags": [ + "copywriting", + "citation", + "academic", + "formatting", + "APA", + "MLA", + "Chicago" + ], + "examples": [ + { + "inputJson": "{\"sourceType\":\"book\",\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Effective Project Management\",\"publicationYear\":\"2018\",\"publisher\":\"Tech Press\",\"citationStyle\":\"APA\"}", + "description": "Draft APA citation for a two-author book published in 2018." + }, + { + "inputJson": "{\"sourceType\":\"website\",\"authors\":[\"Brown, Alice\"],\"title\":\"Understanding AI Ethics\",\"publicationYear\":\"\",\"publisher\":\"\",\"url\":\"https://aiexample.org/ethics\",\"citationStyle\":\"MLA\",\"accessDate\":\"2024-05-15\"}", + "description": "Create an MLA citation for a website with author and access date." + }, + { + "inputJson": "{\"sourceType\":\"journal\",\"authors\":[\"Lee, Mark\",\"King, Sarah\"],\"title\":\"Advances in Battery Technology\",\"publicationYear\":\"2020\",\"publisher\":\"Journal of Energy Science\",\"citationStyle\":\"Chicago\"}", + "description": "Format a Chicago style citation for a journal article with two authors published in 2020." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Citation", + "context": null + } + }, + { + "name": "copywriting.draftReference", + "description": "This tool drafts high-quality, professional reference letters or recommendation texts based on input details about the referee, referent, purpose, and key qualities. It generates fully formatted, personalized reference content suitable for academic, employment, or character references.", + "category": "copywriting", + "parameters": [ + { + "name": "referentName", + "type": "string", + "description": "Full name of the person who is being referenced in the text.", + "required": true, + "defaultValue": "" + }, + { + "name": "refereeName", + "type": "string", + "description": "Name of the person writing the reference or their title if preferred for formality.", + "required": false, + "defaultValue": "" + }, + { + "name": "relationship", + "type": "string", + "description": "Description of the relationship between referee and referent (e.g., supervisor, professor, colleague).", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "The purpose of the reference letter, such as job application, academic admission, or character endorsement.", + "required": true, + "defaultValue": "" + }, + { + "name": "qualities", + "type": "array", + "description": "An array of key qualities or achievements of the referent to highlight in the reference text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "string", + "description": "Desired approximate length of the drafted reference: short, medium, or long.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "tone", + "type": "string", + "description": "Tone or style of the reference letter such as formal, friendly, or enthusiastic.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted reference letter as a formatted string under the key 'referenceLetter'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a customized, coherent reference or recommendation letter quickly and professionally, based on structured user input about the people involved and the letter's context. Especially useful for generating drafts that users can further personalize.", + "limitations": "This tool cannot verify factual accuracy or provide legally binding statements. It relies solely on user-supplied information and cannot detect dishonesty or guarantee that the reference meets specific institutional criteria.", + "examples": [ + "Draft a formal employment reference for a software engineer applying to a tech company.", + "Write a character reference for a volunteer applying for a community service award.", + "Create an academic recommendation letter for a student applying for graduate school." + ] + }, + "tags": [ + "copywriting", + "reference letter", + "recommendation", + "professional writing", + "drafting", + "personalized", + "letter", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"referentName\":\"Jane Doe\",\"refereeName\":\"Dr. Robert Smith\",\"relationship\":\"Professor of Computer Science\",\"purpose\":\"graduate school admission\",\"qualities\":[\"strong analytical skills\",\"dedicated researcher\",\"excellent communication\"],\"length\":\"medium\",\"tone\":\"formal\"}", + "description": "Generate a formal academic recommendation letter for Jane Doe applying to graduate school, highlighting her skills and dedication." + }, + { + "inputJson": "{\"referentName\":\"Mark Johnson\",\"refereeName\":\"Samantha Lee\",\"relationship\":\"former manager\",\"purpose\":\"job application\",\"qualities\":[\"leadership\",\"team player\",\"project management\"],\"length\":\"short\",\"tone\":\"enthusiastic\"}", + "description": "Create a short, enthusiastic employment reference letter for Mark Johnson from his former manager Samantha Lee." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Reference", + "context": null + } + }, + { + "name": "copywriting.draftWord", + "description": "This tool generates a concise marketing or promotional word based on input parameters such as target audience, product type, desired tone, and optional keywords. It processes the inputs by selecting or creating a single impactful word suitable for branding, advertising, or campaign use, and outputs the generated word as a string.", + "category": "copywriting", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "The primary demographic or customer segment the word should resonate with (e.g., 'young adults', 'tech enthusiasts').", + "required": true, + "defaultValue": "" + }, + { + "name": "productType", + "type": "string", + "description": "Type or category of product or service to associate the word with (e.g., 'energy drink', 'software').", + "required": true, + "defaultValue": "" + }, + { + "name": "desiredTone", + "type": "string", + "description": "Tone or feeling to convey (e.g., 'energetic', 'trustworthy', 'luxurious').", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "keywords", + "type": "array", + "description": "Optional array of related keywords or concepts to inspire the word creation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output word (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word and explanation for its selection." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a catchy, single-word branding or promotional term tailored to a specific audience, product type, and tone. Ideal for suggesting impactful words for marketing campaigns or product names rapidly with creative context.", + "limitations": "This tool does not generate full taglines, slogans, or multi-word phrases. It also may not generate trademark-safe or legally vetted names, which require additional checks.", + "examples": [ + "Generate a powerful one-word brand name for a fitness app aimed at millennials with an energetic tone.", + "Create a catchy promotional word for a new luxury skincare line targeting middle-aged women.", + "Provide an innovative word related to eco-friendly packaging for environmentally conscious consumers." + ] + }, + "tags": [ + "copywriting", + "marketing", + "branding", + "word generation", + "creative writing", + "promotional", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"young adults\",\"productType\":\"energy drink\",\"desiredTone\":\"energetic\",\"keywords\":[\"power\",\"boost\",\"vitality\"],\"language\":\"en\"}", + "description": "Generate an energetic promotional word for an energy drink targeting young adults." + }, + { + "inputJson": "{\"targetAudience\":\"business professionals\",\"productType\":\"productivity software\",\"desiredTone\":\"trustworthy\",\"keywords\":[\"efficiency\",\"time\",\"focus\"],\"language\":\"en\"}", + "description": "Create a trustworthy single-word brand name for productivity software aimed at business professionals." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "copywriting.draftLink", + "description": "Generates a concise, engaging marketing or promotional snippet designed to accompany a URL link. Accepts the link URL and optional context keywords, tone, and length preferences. Produces a tailored text snippet suitable for social media posts, email campaigns, or web promotions to effectively drive user clicks and engagement.", + "category": "copywriting", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The destination URL to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextKeywords", + "type": "array", + "description": "Optional keywords or topics to shape the message context and increase relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the text snippet, e.g., 'formal', 'casual', 'exciting'.", + "required": false, + "defaultValue": "\"casual\"" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the drafted text, ensuring compatibility with specific platform limits.", + "required": false, + "defaultValue": "140" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call-to-action phrase to include, such as 'Learn more', 'Shop now', or 'Discover'.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted promotional text snippet optimized for the given URL and parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create appealing and contextually relevant short promotional texts that accompany URLs to improve click-through rates and engagement on marketing channels like social media posts, newsletters, or ads. It tailors language style and length to fit target audiences and platform constraints.", + "limitations": "Cannot verify the actual content or safety of the URL; does not generate long-form content; the output may require manual review for compliance with brand guidelines or legal standards.", + "examples": [ + "Draft a casual and exciting snippet to promote https://example.com/sale with call-to-action 'Shop now' and max length 120.", + "Create a formal, brief link preview text for https://news.example.com/article about environment with keywords ['climate', 'policy'].", + "Generate a short social media text for https://blog.example.com/new-feature without call to action, tone casual, and maximum length 100 characters." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotion", + "link", + "social media", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/sale\",\"contextKeywords\":[\"discount\",\"shoes\"],\"tone\":\"exciting\",\"maxLength\":120,\"callToAction\":\"Shop now\"}", + "description": "Creates a short, exciting promotional snippet for a sale on shoes with a call-to-action button prompting users to shop now." + }, + { + "inputJson": "{\"url\":\"https://news.example.com/article\",\"contextKeywords\":[\"climate\",\"policy\"],\"tone\":\"formal\",\"maxLength\":150,\"callToAction\":\"Learn more\"}", + "description": "Generates a formal text snippet to promote a news article on climate policy with a 'Learn more' call to action." + }, + { + "inputJson": "{\"url\":\"https://blog.example.com/new-feature\",\"tone\":\"casual\",\"maxLength\":100,\"callToAction\":\"\"}", + "description": "Drafts a casual and concise social media snippet to announce a new feature blog post without a call-to-action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Link", + "context": null + } + }, + { + "name": "copywriting.draftHeading", + "description": "Generates compelling marketing or promotional headings based on given product or service details. Accepts input such as product description, target audience, and tone to produce creative and attention-grabbing headings suitable for advertisements, websites, or campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "A brief description of the product or service to highlight in the heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the heading, influencing style and word choice.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the heading, e.g., upbeat, professional, casual, urgent.", + "required": false, + "defaultValue": "upbeat" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the generated heading to fit display constraints.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading text along with metadata such as length and confidence score." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate catchy, relevant headings for marketing content or promotional materials based on minimal input describing the product and desired style. It helps automate creative headline writing for campaigns, landing pages, and ads.", + "limitations": "This tool cannot guarantee the heading matches complex brand guidelines or legal advertising constraints and may need human review for tone accuracy or compliance.", + "examples": [ + "Generate a headline for a new eco-friendly water bottle aimed at young adults with an energetic tone.", + "Create a professional heading for a software consulting service targeting corporate clients.", + "Draft a casual, fun heading under 50 characters for a local bakery's spring promotion." + ] + }, + "tags": [ + "copywriting", + "marketing", + "headline", + "drafting", + "advertising", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"A lightweight, eco-friendly water bottle made from recycled materials.\",\"targetAudience\":\"young adults\",\"tone\":\"energetic\",\"maxLength\":60}", + "description": "Generate an energetic headline for an eco-friendly water bottle aimed at young adults." + }, + { + "inputJson": "{\"productDescription\":\"Professional software consulting services for enterprises.\",\"targetAudience\":\"corporate clients\",\"tone\":\"professional\",\"maxLength\":70}", + "description": "Create a polished heading for a software consulting firm targeting corporate clients." + }, + { + "inputJson": "{\"productDescription\":\"Freshly baked pastries with seasonal flavors.\",\"tone\":\"casual\",\"maxLength\":50}", + "description": "Draft a short, casual heading for a bakery's seasonal promotion." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Heading", + "context": null + } + }, + { + "name": "copywriting.draftChecklist", + "description": "Generates a tailored checklist to guide the creation of marketing or promotional content based on the specified campaign type, target audience, and key objectives. Accepts parameters to customize the checklist scope and outputs structured steps to ensure comprehensive and effective copywriting.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "The type of marketing campaign (e.g., email, social media, landing page) to tailor the checklist appropriately.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience or customer segment for the campaign. Used to customize checklist focus.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyObjectives", + "type": "array", + "description": "List of key objectives or goals for the campaign (e.g., increase signups, brand awareness). Guides checklist priorities.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSEO", + "type": "boolean", + "description": "Whether to include SEO-related items in the checklist for digital campaigns.", + "required": false, + "defaultValue": "false" + }, + { + "name": "languageTone", + "type": "string", + "description": "Preferred tone or style for the copywriting (e.g., formal, casual, persuasive). Influences checklist elements.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxItems", + "type": "number", + "description": "Maximum number of checklist items to generate. Helps keep checklist focused and manageable.", + "required": false, + "defaultValue": "20" + } + ], + "returns": { + "type": "object", + "description": "An object containing a checklist array with ordered steps or points as strings to guide marketing copywriting." + }, + "aiAgent": { + "useCase": "Use this tool when needing a structured, tailored checklist to plan and ensure thorough, goal-oriented writing for marketing or promotional content. It helps break down complex copywriting tasks into actionable items that suit specific campaign types and audience goals.", + "limitations": "Does not generate the actual copy content, only the checklist. It cannot replace creative writing or strategy planning beyond checklist guidance.", + "examples": [ + "Generate a checklist for a social media campaign targeting millennials to increase brand engagement.", + "Create a checklist for drafting an email marketing campaign with a persuasive tone including SEO considerations.", + "Produce a checklist focused on landing page copywriting for a product launch with clear call-to-action objectives." + ] + }, + "tags": [ + "copywriting", + "marketing", + "checklist", + "content planning", + "campaign", + "promotion", + "SEO", + "writing guide" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"targetAudience\":\"small business owners\",\"keyObjectives\":[\"increase open rates\",\"drive sales\"],\"includeSEO\":false,\"languageTone\":\"professional\",\"maxItems\":10}", + "description": "Checklist for an email marketing campaign targeting small business owners with the goals of increasing open rates and driving sales, in a professional tone." + }, + { + "inputJson": "{\"campaignType\":\"social media\",\"targetAudience\":\"millennials\",\"keyObjectives\":[\"brand engagement\"],\"includeSEO\":true,\"languageTone\":\"casual\",\"maxItems\":15}", + "description": "Checklist tailored for a social media campaign aimed at millennials that includes SEO factors and adopts a casual tone, focusing on brand engagement." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Checklist", + "context": null + } + }, + { + "name": "copywriting.draftText", + "description": "Generates marketing or promotional text drafts based on the specified content type, tone, audience, and key points. Accepts structured inputs including product or service descriptions and outputs well-formed text suitable for campaigns, advertisements, or social media posts.", + "category": "copywriting", + "parameters": [ + { + "name": "contentType", + "type": "string", + "description": "Type of content to draft, e.g., 'ad copy', 'social media post', 'email newsletter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Array of key features, benefits, or messages to include in the draft text.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the content to tailor tone and style.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style for the text, e.g., 'professional', 'friendly', 'urgent'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum desired length of the generated text in characters.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted marketing or promotional text as a string, and metadata such as word count." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate initial drafts of marketing or promotional content tailored to a specific campaign, product, or audience. It helps accelerate content creation by producing human-like, engaging text based on provided key points and style parameters.", + "limitations": "The tool cannot guarantee fully optimized SEO text or final copy ready for publication without human review. It may not capture highly specialized jargon or comply with legal/regulatory requirements automatically.", + "examples": [ + "Draft a friendly Instagram post for a new organic skincare line highlighting natural ingredients and benefits.", + "Generate a concise email newsletter introduction promoting a seasonal sale targeted at budget-conscious consumers.", + "Create an urgent ad copy for a tech gadget launch emphasizing speed and innovation." + ] + }, + "tags": [ + "copywriting", + "marketing", + "content generation", + "drafting", + "advertising", + "promotional text" + ], + "examples": [ + { + "inputJson": "{\"contentType\":\"ad copy\",\"keyPoints\":[\"fast delivery\",\"money back guarantee\",\"24/7 customer support\"],\"targetAudience\":\"online shoppers\",\"tone\":\"professional\",\"maxLength\":300}", + "description": "Draft professional ad copy emphasizing key service features for online shoppers." + }, + { + "inputJson": "{\"contentType\":\"social media post\",\"keyPoints\":[\"brand anniversary\",\"special discounts\",\"limited time offer\"],\"tone\":\"friendly\"}", + "description": "Create a friendly social media post announcing a brand anniversary sale." + }, + { + "inputJson": "{\"contentType\":\"email newsletter\",\"keyPoints\":[\"new product launch\",\"exclusive preview\",\"early bird discount\"],\"targetAudience\":\"subscribers\",\"tone\":\"urgent\",\"maxLength\":400}", + "description": "Generate an urgent, concise email newsletter intro about a new product launch for subscribers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "copywriting.draftReadme", + "description": "Generates a well-structured README.md file draft for software projects based on inputs like project name, description, installation instructions, usage examples, and license information. It processes these inputs to produce a formatted markdown document outlining key project details, helping users quickly produce professional documentation.", + "category": "copywriting", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project to be included as the README title.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A concise description that summarizes the project's purpose and features.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step installation instructions to guide users in setting up the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "string", + "description": "Example code snippets or command-line usage to demonstrate how to use the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "licenseInfo", + "type": "string", + "description": "License information specifying the terms under which the project is distributed.", + "required": false, + "defaultValue": "" + }, + { + "name": "contributionGuidelines", + "type": "string", + "description": "Information about how others can contribute to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Contact information for users to reach out with questions or feedback.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeBadges", + "type": "boolean", + "description": "Flag to include common status badges (e.g., build status, version) at the top of the README.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object that contains the full README content in markdown format in the 'readmeContent' field." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a professional and structured README file for new or existing software projects based on provided project details and usage information. It helps automate initial documentation drafting, saving time and ensuring completeness of common README sections.", + "limitations": "Cannot generate content beyond supplied inputs such as advanced tutorials, changelogs, or dynamic badges that require real-time data. The quality depends on the completeness and clarity of given parameters.", + "examples": [ + "Generate a README draft for a machine learning library including install instructions and usage examples.", + "Create a README for a CLI tool with license and contribution guidelines included.", + "Produce a minimal README with project name and description only." + ] + }, + "tags": [ + "copywriting", + "documentation", + "readme", + "markdown", + "software", + "automation", + "project setup" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"SmartHomeAPI\",\"projectDescription\":\"An API to control smart home devices remotely via HTTP.\",\"installationInstructions\":\"1. Clone the repo\\n2. Run npm install\\n3. Start server with npm start\",\"usageExamples\":\"curl -X POST http://localhost:3000/devices/light/on\",\"licenseInfo\":\"MIT\",\"contributionGuidelines\":\"Please fork and submit pull requests.\",\"contactInfo\":\"devteam@smarthome.com\",\"includeBadges\":true}", + "description": "Draft a detailed README for a smart home API project including badges, install, usage, license, and contribution sections." + }, + { + "inputJson": "{\"projectName\":\"DataUtils\",\"projectDescription\":\"A utility library for common data manipulation tasks in JavaScript.\",\"installationInstructions\":\"npm install datautils\",\"usageExamples\":\"import { shuffle } from 'datautils';\\nconsole.log(shuffle([1,2,3,4]));\",\"licenseInfo\":\"Apache 2.0\",\"includeBadges\":false}", + "description": "Generate a README draft for a data utility library focusing on install instructions and usage code samples." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Readme", + "context": null + } + }, + { + "name": "copywriting.draftSentence", + "description": "Generates a single marketing sentence draft based on specified product or service details, target audience, tone, and key selling points. Accepts structured input describing what to promote and outputs a concise, persuasive promotional sentence tailored to requested style and audience.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service being promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "A brief description of the product or service, highlighting features or benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or market segment for the marketing sentence.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the sentence such as friendly, professional, urgent, or playful.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "keySellingPoints", + "type": "array", + "description": "An array of key features or benefits to highlight in the sentence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the resulting sentence in characters to fit specific format requirements.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object with a single drafted marketing sentence string tailored to the input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to produce a brief, persuasive sentence for marketing or promotional material dynamically, based on specific input about the product, audience, and desired tone. Ideal for generating taglines, ad snippets, or social media lines without manual copywriting.", + "limitations": "Cannot generate multiple sentences or longer content pieces. Quality depends on clarity and completeness of input parameters. May not handle extremely technical or niche products well.", + "examples": [ + "Write a friendly sentence promoting a new eco-friendly water bottle for outdoor enthusiasts.", + "Draft a professional, concise sentence highlighting benefits of a cloud software service for small businesses.", + "Create an urgent, playful sentence for a limited-time sale on handmade jewelry." + ] + }, + "tags": [ + "copywriting", + "marketing", + "sentence generation", + "promotional text", + "advertising", + "branding" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoSip Water Bottle\",\"productDescription\":\"a reusable, insulated water bottle made from recycled materials\",\"targetAudience\":\"outdoor enthusiasts and environmentally conscious consumers\",\"tone\":\"friendly\",\"keySellingPoints\":[\"keeps drinks cold for 24 hours\",\"eco-friendly materials\",\"durable design\"],\"maxLength\":140}", + "description": "Generate a friendly marketing sentence for an eco-friendly, insulated water bottle targeting outdoor lovers." + }, + { + "inputJson": "{\"productName\":\"CloudSync Pro\",\"productDescription\":\"a secure cloud storage service with automatic backup and access anywhere\",\"targetAudience\":\"small business owners\",\"tone\":\"professional\",\"keySellingPoints\":[\"99.9% uptime\",\"end-to-end encryption\",\"24/7 support\"],\"maxLength\":150}", + "description": "Draft a professional sentence highlighting a secure cloud storage solution for small businesses." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "copywriting.draftTemplate", + "description": "Generates marketing and promotional copywriting templates based on specified campaign goals, tone, target audience, and format. Accepts inputs such as campaign type, key messages, tone style, target demographics, and output format to produce a ready-to-use draft template for marketing communications.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "The type of campaign for which the template is drafted, e.g., email, social media, product launch.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMessages", + "type": "array", + "description": "An array of key messages or product features to highlight in the template.", + "required": true, + "defaultValue": "" + }, + { + "name": "toneStyle", + "type": "string", + "description": "The desired tone of the template such as professional, casual, humorous, or persuasive.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience to tailor the template language accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "templateFormat", + "type": "string", + "description": "Preferred output format for the template: e.g., plain text, HTML, markdown.", + "required": false, + "defaultValue": "plain text" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action section in the template.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted marketing template text and metadata such as format and recommended usage advice." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to quickly generate a marketing or promotional copywriting template tailored to campaign specifics, target demographics, and tone preferences. Ideal for campaign planning stages or automating marketing content creation for different channels.", + "limitations": "This tool cannot customize content with live data such as dynamic pricing, it does not generate final polished ads but rather draft templates needing human review and refinement.", + "examples": [ + "Draft a social media template for a product launch targeting young adults with a casual, upbeat tone.", + "Create an email marketing template highlighting eco-friendly features with a professional tone including a call to action.", + "Generate a product launch flyer template in HTML format focusing on key eco-benefits and a persuasive tone." + ] + }, + "tags": [ + "copywriting", + "template", + "marketing", + "drafting", + "promotional", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"keyMessages\":[\"Exclusive 20% discount\",\"Limited time offer\"],\"toneStyle\":\"professional\",\"targetAudience\":\"young professionals\",\"templateFormat\":\"plain text\",\"includeCallToAction\":true}", + "description": "Draft an email marketing template with a professional tone targeting young professionals, emphasizing an exclusive limited-time discount offer." + }, + { + "inputJson": "{\"campaignType\":\"social media\",\"keyMessages\":[\"New eco-friendly product line\",\"Sustainable packaging\"],\"toneStyle\":\"casual\",\"targetAudience\":\"environmentally conscious millennials\",\"templateFormat\":\"markdown\",\"includeCallToAction\":true}", + "description": "Create a social media post template in markdown with a casual tone promoting an eco-friendly product line to millennials." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Template", + "context": null + } + }, + { + "name": "copywriting.draftFAQ", + "description": "Generates a structured FAQ document based on provided product or service details and common customer queries. It accepts key information such as product description, target audience, and example questions, then drafts clear and concise FAQ entries answering those questions. The output is a list of question-answer pairs ideal for marketing, support, or onboarding.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "A concise description of the product or service for which to create the FAQ. Provides context for accurate answer generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience (e.g., new users, technical users) to tailor the tone and complexity of the FAQ. Optional but recommended.", + "required": false, + "defaultValue": "" + }, + { + "name": "commonQuestions", + "type": "array", + "description": "An array of common or anticipated questions customers might ask about the product or service. These form the FAQ entries' questions.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxAnswerLength", + "type": "number", + "description": "Maximum word count for each answer to keep responses concise and focused. Defaults to 100 words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "If true, the tool includes example scenarios or use cases in answers where appropriate, enhancing clarity.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of FAQ entries. Each entry is an object with 'question' and 'answer' string fields." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents tasked with creating marketing content, support documentation, or onboarding materials, needing to quickly generate user-friendly FAQ sections based on limited input data. It helps automate crafting consistent Q&A content reflecting common concerns and product details.", + "limitations": "The tool cannot replace expert technical support or legal advice. It produces draft content that may require human review for accuracy and completeness. It relies on the quality and completeness of the input data to generate relevant answers.", + "examples": [ + "Generate FAQs for a new fitness tracking app targeting casual users with questions about battery life and compatibility.", + "Create an FAQ for a cloud storage service including common security and pricing questions.", + "Draft FAQ entries for a home automation device, focusing on setup and troubleshooting queries." + ] + }, + "tags": [ + "copywriting", + "FAQ", + "marketing", + "customerSupport", + "documentation", + "contentCreation" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"A mobile app that tracks daily physical activity and sleep patterns.\",\"targetAudience\":\"Casual and fitness-focused users.\",\"commonQuestions\":[\"How long does the battery last?\",\"Is the app compatible with iOS and Android?\"],\"maxAnswerLength\":80,\"includeExamples\":true}", + "description": "Draft FAQs for a fitness tracking app answering battery life and compatibility." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "FAQ", + "context": null + } + }, + { + "name": "copywriting.draftParagraph", + "description": "Generates a marketing or promotional paragraph based on provided product or service details, target audience, tone, and key points. Accepts structured input to tailor content and outputs a compelling paragraph suitable for advertising or web content.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the paragraph (e.g., millennials, tech professionals).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone or style of the paragraph (e.g., professional, friendly, enthusiastic).", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key product features or selling points to highlight.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "paragraphLength", + "type": "number", + "description": "Approximate desired length of the output paragraph in number of sentences.", + "required": false, + "defaultValue": "4" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated promotional paragraph text." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to draft clear, appealing marketing paragraphs tailored to specified audience and tone, for use in advertisements, web content, or promotional materials. It helps produce focused and engaging text based on product info and desired style.", + "limitations": "Cannot produce highly specialized technical documentation or legal disclaimers; may not capture very nuanced brand voice without extensive examples.", + "examples": [ + "Draft a friendly paragraph promoting a new eco-friendly water bottle targeted at outdoor enthusiasts.", + "Create a professional paragraph advertising a B2B cloud storage service for IT managers.", + "Write an enthusiastic paragraph highlighting the features of a new fitness app for millennials." + ] + }, + "tags": [ + "copywriting", + "marketing", + "content generation", + "promotional text", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoSip Water Bottle\",\"targetAudience\":\"outdoor enthusiasts\",\"tone\":\"friendly\",\"keyFeatures\":[\"BPA-free material\",\"keeps drinks cold 24 hours\",\"sleek design\"],\"paragraphLength\":4}", + "description": "Generate a friendly marketing paragraph for an eco-friendly water bottle aimed at outdoor enthusiasts." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "copywriting.draftSummary", + "description": "Generates a concise and engaging summary from a longer document or text input. It accepts raw textual content and options for summary length and style, then processes the text to produce a clear, readable summary suitable for marketing, presentations, or briefings.", + "category": "copywriting", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The full text or document content to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired word count for the summary. Defaults to 100 words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "style", + "type": "string", + "description": "Tone or style for the summary such as 'formal', 'casual', or 'persuasive'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeKeyPoints", + "type": "boolean", + "description": "Whether to highlight key points or bullet them in the summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and metadata about the summary such as word count and style used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to condense lengthy documents, reports, or articles into brief, clear summaries that capture essential information for marketing, executive briefings, or promotional materials. Ideal for transforming complex content into reader-friendly abstracts.", + "limitations": "The tool may not perfectly capture highly technical details or nuanced arguments. It does not replace expert content editing or fact-checking.", + "examples": [ + "Create a 150-word persuasive summary for a product whitepaper.", + "Summarize the meeting transcript in a formal tone highlighting action items.", + "Generate a casual 80-word summary for a blog post introduction." + ] + }, + "tags": [ + "copywriting", + "summarization", + "marketing", + "text", + "summary", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Our new electric scooter offers a revolutionary way to commute with zero emissions, a range of 50 miles per charge, and compact foldable design...\",\"summaryLength\":120,\"style\":\"persuasive\",\"includeKeyPoints\":true}", + "description": "Generate a persuasive summary highlighting key features of an electric scooter product brochure." + }, + { + "inputJson": "{\"text\":\"The quarterly financial report indicates a steady growth in revenue by 12% compared to last year... The main drivers of growth included increased sales in the European market and cost optimization...\",\"summaryLength\":100,\"style\":\"formal\",\"includeKeyPoints\":false}", + "description": "Create a formal summary of a quarterly financial report for an executive briefing." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "copywriting.draftBrief", + "description": "Generates a concise marketing or project brief based on provided key points and objectives. Accepts an array of input topics, target audience details, and desired tone, then synthesizes these inputs into a structured, clear brief suitable for guiding campaigns or projects.", + "category": "copywriting", + "parameters": [ + { + "name": "topics", + "type": "array", + "description": "List of key topics or points to include in the brief, each as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the brief, e.g., demographics or buyer personas.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the brief, e.g., professional, casual, persuasive.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "objective", + "type": "string", + "description": "Main objective or goal of the brief, e.g., increase brand awareness, launch new product.", + "required": true, + "defaultValue": "" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum length of the drafted brief in words. If unset, defaults to 300 words.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted brief text as a string under the 'briefText' key, formatted for immediate use or further editing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a clear and concise marketing or project brief from fragmented input points, target audience, and campaign objectives. Ideal for automating initial briefing drafts for teams or clients.", + "limitations": "This tool does not create detailed project plans, marketing strategies, or creative content beyond concise briefing documents. It relies on clear input parameters for best results and may produce generic text if inputs are vague.", + "examples": [ + "Draft a marketing brief for a new eco-friendly water bottle targeting environmentally conscious millennials with a persuasive tone.", + "Generate a concise project brief outlining key features for a mobile app launch aimed at tech-savvy young adults.", + "Create a professional brief for a B2B software product with objectives to increase lead generation." + ] + }, + "tags": [ + "copywriting", + "brief", + "marketing", + "drafting", + "content creation", + "project planning" + ], + "examples": [ + { + "inputJson": "{\"topics\":[\"Eco-friendly materials\",\"Reusable design\",\"Affordable price point\"],\"targetAudience\":\"Environmentally conscious millennials\",\"tone\":\"persuasive\",\"objective\":\"Increase brand awareness for new water bottle launch\",\"lengthLimit\":250}", + "description": "Create a persuasive marketing brief focused on the launch of an eco-friendly water bottle targeting millennials." + }, + { + "inputJson": "{\"topics\":[\"User-friendly interface\",\"Cross-platform compatibility\",\"Real-time notifications\"],\"targetAudience\":\"Tech-savvy young adults\",\"tone\":\"professional\",\"objective\":\"Outline key app features for launch marketing\",\"lengthLimit\":300}", + "description": "Generate a professional brief highlighting core features of a new app to assist marketing efforts for young adult demographics." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Brief", + "context": null + } + }, + { + "name": "copywriting.draftTranscript", + "description": "This tool accepts a raw transcript text as input and drafts a polished, coherent written version suitable for marketing or promotional purposes. It processes the input to improve grammar, flow, and style, and outputs a refined transcript draft that is clear, engaging, and aligned with promotional communication standards.", + "category": "copywriting", + "parameters": [ + { + "name": "rawTranscript", + "type": "string", + "description": "The original raw transcript text to be polished and drafted into a marketing-friendly document.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience to tailor the tone and style of the draft accordingly (e.g., professionals, general public).", + "required": false, + "defaultValue": "" + }, + { + "name": "styleTone", + "type": "string", + "description": "Desired style or tone for the drafted transcript such as formal, casual, enthusiastic, or persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the drafted transcript in words; the tool will summarize or trim to meet this constraint.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "highlightKeyPoints", + "type": "boolean", + "description": "Whether to emphasize and highlight key points and takeaways in the drafted transcript for promotional impact.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted transcript text, polished for clarity, grammar, and promotional style." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw, unedited transcripts from interviews, speeches, or recordings into polished, marketing-appropriate drafts. Useful for preparing promotional materials, blog posts, press releases, or summarized presentations based on spoken content. It helps maintain engagement with the intended audience by adapting tone and length.", + "limitations": "Cannot create content beyond the transcript provided; does not add factual information not present in the source text. May require human review for technical accuracy or legal compliance.", + "examples": [ + "Draft a promotional transcript from a raw interview text for a professional tech audience.", + "Create a casual, engaging transcript draft from a recorded podcast episode.", + "Summarize and polish a long webinar transcript for a marketing newsletter." + ] + }, + "tags": [ + "copywriting", + "transcript", + "drafting", + "marketing", + "promotional", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"rawTranscript\":\"Thank you all for joining our webinar today. We discussed the latest features of our software platform and how they can help increase productivity.\",\"targetAudience\":\"technology professionals\",\"styleTone\":\"formal\",\"maxLength\":150,\"highlightKeyPoints\":true}", + "description": "Draft a formal, polished transcript from a webinar raw transcript tailored to technology professionals, emphasizing key points within 150 words." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Transcript", + "context": null + } + }, + { + "name": "copywriting.draftMinutes", + "description": "Generates professional meeting minutes by processing structured or semi-structured input including meeting details, discussion points, decisions, and action items. Produces a well-formatted minutes document suitable for distribution.", + "category": "copywriting", + "parameters": [ + { + "name": "meetingTitle", + "type": "string", + "description": "Title or topic of the meeting being summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateTime", + "type": "string", + "description": "Date and time when the meeting took place, in ISO 8601 format (e.g., 2024-06-01T10:00:00Z).", + "required": true, + "defaultValue": "" + }, + { + "name": "attendees", + "type": "array", + "description": "List of attendees' names participating in the meeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "agendaItems", + "type": "array", + "description": "Ordered list of agenda items discussed during the meeting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "discussionPoints", + "type": "object", + "description": "Key-value pairs mapping agenda items to arrays of discussion points or highlights.", + "required": true, + "defaultValue": "" + }, + { + "name": "decisions", + "type": "object", + "description": "Key-value pairs mapping agenda items to decisions made, if any.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "actionItems", + "type": "array", + "description": "List of action items derived from the meeting with assignees and deadlines.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a meeting summary paragraph at the beginning of the minutes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted meeting minutes as a string under the 'minutesText' field, ready for distribution or documentation purposes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent has access to structured meeting data such as attendees, agendas, discussions, decisions, and action items, and needs to produce professional, readable meeting minutes that clearly summarize key information. Suitable to automate or assist administrative tasks in business or organizational settings.", + "limitations": "This tool cannot generate meeting content from audio or unstructured text; it requires structured inputs reflecting meeting details. It also does not validate factual accuracy of inputs.", + "examples": [ + "Create meeting minutes for a project kickoff meeting with three attendees and a clear agenda.", + "Summarize discussion points and decisions from a sales review meeting into a formal minutes document.", + "Generate minutes including a summary and action items for a weekly team sync meeting." + ] + }, + "tags": [ + "copywriting", + "meeting", + "minutes", + "documentation", + "summary", + "business" + ], + "examples": [ + { + "inputJson": "{\"meetingTitle\":\"Project Kickoff\",\"dateTime\":\"2024-06-01T09:00:00Z\",\"attendees\":[\"Alice Johnson\",\"Bob Smith\",\"Carol Lee\"],\"agendaItems\":[\"Introductions\",\"Project Overview\",\"Roles and Responsibilities\"],\"discussionPoints\":{\"Introductions\":[\"Attendees introduced themselves.\"],\"Project Overview\":[\"Goals and timelines were outlined.\"],\"Roles and Responsibilities\":[\"Each member described their tasks.\"]},\"decisions\":{\"Project Overview\":\"Timeline to be finalized by next meeting.\"},\"actionItems\":[{\"task\":\"Define detailed timeline\",\"assignee\":\"Bob Smith\",\"dueDate\":\"2024-06-07\"}],\"includeSummary\":true}", + "description": "Draft meeting minutes for a project kickoff with three attendees, agenda, discussions, decisions, and action items." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Minutes", + "context": null + } + }, + { + "name": "copywriting.draftEmail", + "description": "Generates a professional and persuasive marketing or promotional email based on the provided subject, target audience, product or service details, tone, and desired call-to-action. The tool processes these inputs to craft a coherent and customized email draft ready for review or sending.", + "category": "copywriting", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The main subject line or topic of the email to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended recipients, including demographics or interests to tailor the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "productOrServiceDetails", + "type": "string", + "description": "Key features, benefits, or information about the product or service being promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email, such as formal, casual, enthusiastic, or persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific action you want the reader to take after reading the email, e.g., visit website or make a purchase.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDiscount", + "type": "boolean", + "description": "Whether to include a discount or promotional offer in the email.", + "required": false, + "defaultValue": "false" + }, + { + "name": "discountDetails", + "type": "string", + "description": "Details about the discount or offer to include, such as percentage off or promo code.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated email draft text optimized to suit the specified inputs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to rapidly generate customized marketing emails tailored for different audiences and products, saving time and ensuring consistent professional messaging. It assists in crafting clear subject lines, persuasive content, and effective calls to action based on user inputs.", + "limitations": "This tool cannot guarantee perfect brand alignment or legal compliance with marketing laws; outputs should be reviewed by a human before sending.", + "examples": [ + "Draft a promotional email for a new eco-friendly water bottle targeting outdoor enthusiasts with a casual tone and a 10% discount offer.", + "Write a formal email introducing a software update to existing clients emphasizing improved security features and urging them to schedule an upgrade call.", + "Create an enthusiastic email inviting customers to a limited-time webinar about health supplements, encouraging registration with a special promo code." + ] + }, + "tags": [ + "copywriting", + "email", + "marketing", + "promotional", + "drafting", + "communication" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Introducing Our New Eco-Friendly Water Bottle\",\"targetAudience\":\"Outdoor enthusiasts aged 20-40 who care about sustainability\",\"productOrServiceDetails\":\"Lightweight, BPA-free water bottle made from recycled materials, keeps drinks cold for 24 hours\",\"tone\":\"casual\",\"callToAction\":\"Visit our website to order now\",\"includeDiscount\":true,\"discountDetails\":\"Use code ECO10 for 10% off\"}", + "description": "Draft a casual promotional email for an eco-friendly product including a discount." + }, + { + "inputJson": "{\"subject\":\"Important Security Update Available\",\"targetAudience\":\"Current software clients in finance sector\",\"productOrServiceDetails\":\"New update includes advanced encryption and multi-factor authentication\",\"tone\":\"formal\",\"callToAction\":\"Schedule your upgrade call today\",\"includeDiscount\":false,\"discountDetails\":\"\"}", + "description": "Generate a formal email announcing a software update emphasizing security features." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "copywriting.draftResume", + "description": "Generates a tailored professional resume draft based on user details such as work experience, education, skills, and job target. Inputs include structured personal and career information which the tool processes to output a formatted resume draft text optimized for clarity and relevance to the specified job role.", + "category": "copywriting", + "parameters": [ + { + "name": "fullName", + "type": "string", + "description": "The candidate's full name as it should appear on the resume.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact details including email, phone number, and optionally LinkedIn or personal website URLs.", + "required": true, + "defaultValue": "" + }, + { + "name": "professionalSummary", + "type": "string", + "description": "A brief summary or objective statement highlighting the candidate's career goals and strengths.", + "required": false, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "List of work experience entries, each with job title, company name, start and end dates, and a description of responsibilities and achievements.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "List of educational credentials, each with degree, institution, and graduation year.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Key professional skills and proficiencies relevant to the job target.", + "required": true, + "defaultValue": "" + }, + { + "name": "certifications", + "type": "array", + "description": "Optional certifications or professional licenses relevant to the field.", + "required": false, + "defaultValue": "" + }, + { + "name": "jobTarget", + "type": "string", + "description": "The type of job or sector the resume should be tailored for (e.g., software engineer, project manager).", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the draft resume text formatted as a string that can be reviewed, edited, or exported by the user." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a professional and customized resume draft from structured input without manual formatting, especially helpful for job seekers tailoring resumes to specific roles. It helps save time and ensures inclusion of all relevant information, presenting it in a coherent, industry-appropriate style.", + "limitations": "The tool cannot replace manual editing for highly personalized styling preferences or guarantee ATS (Applicant Tracking System) optimization without additional specialized input. It may not handle unstructured or incomplete data gracefully.", + "examples": [ + "Draft a resume for a software engineer with 5 years experience focusing on backend development.", + "Create a resume draft for an entry-level marketing coordinator position including internships and skills.", + "Generate a resume for a project manager with certifications in PMP and Agile, targeting roles in the IT sector." + ] + }, + "tags": [ + "copywriting", + "resume", + "drafting", + "career", + "job application", + "professional writing" + ], + "examples": [ + { + "inputJson": "{\"fullName\":\"Jane Doe\",\"contactInfo\":{\"email\":\"jane.doe@example.com\",\"phone\":\"123-456-7890\",\"linkedIn\":\"linkedin.com/in/janedoe\"},\"professionalSummary\":\"Experienced software developer with a focus on scalable backend systems.\",\"workExperience\":[{\"jobTitle\":\"Backend Developer\",\"company\":\"TechCorp\",\"startDate\":\"2018-06\",\"endDate\":\"2023-01\",\"description\":\"Developed microservices and APIs using Node.js and Python.\"}],\"education\":[{\"degree\":\"B.Sc. Computer Science\",\"institution\":\"State University\",\"graduationYear\":\"2018\"}],\"skills\":[\"Node.js\",\"Python\",\"REST APIs\",\"Docker\"],\"certifications\":[],\"jobTarget\":\"Backend Software Engineer\"}", + "description": "Generate a backend-focused software engineer resume draft for Jane Doe with specified experience and skills." + }, + { + "inputJson": "{\"fullName\":\"Mark Spencer\",\"contactInfo\":{\"email\":\"mark.spencer@example.com\",\"phone\":\"987-654-3210\"},\"professionalSummary\":\"Enthusiastic marketing graduate seeking entry-level opportunities.\",\"workExperience\":[{\"jobTitle\":\"Marketing Intern\",\"company\":\"AdWorks\",\"startDate\":\"2022-06\",\"endDate\":\"2022-12\",\"description\":\"Assisted in social media campaigns and content creation.\"}],\"education\":[{\"degree\":\"B.A. Marketing\",\"institution\":\"City College\",\"graduationYear\":\"2023\"}],\"skills\":[\"Social media marketing\",\"Content creation\",\"SEO basics\"],\"certifications\":[],\"jobTarget\":\"Marketing Coordinator\"}", + "description": "Create an entry-level marketing coordinator resume draft featuring internship and skill highlights for Mark Spencer." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Resume", + "context": null + } + }, + { + "name": "copywriting.draftInvoice", + "description": "Generates a professional and clear invoice draft based on provided client information, list of billed items or services, payment terms, and optional notes. Accepts structured details such as client data, service descriptions, quantities, rates, and outputs a formatted invoice text suitable for copywriting or immediate client communication.", + "category": "copywriting", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name or company name of the invoice recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientAddress", + "type": "string", + "description": "Mailing address of the client or company being invoiced.", + "required": false, + "defaultValue": "" + }, + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier or number for the invoice.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date when the invoice is issued (formatted as YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date (formatted as YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of billed items, each with description, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency symbol or code for amounts (e.g., $, USD).", + "required": false, + "defaultValue": "$" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Payment terms like 'Net 30', 'Due on receipt', etc.", + "required": false, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or instructions for the client regarding the invoice.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a complete, professionally worded invoice text ready for sending or further editing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a clear, professional draft of an invoice from given client and billing details, especially for marketing, sales follow-up, or billing departments to quickly generate client-ready invoices in text form.", + "limitations": "This tool does not perform arithmetic verification beyond basic totals, nor does it generate PDF or formatted documents; manual formatting or integration with document tools may be required afterward.", + "examples": [ + "Create an invoice draft for client 'ABC Corp' with 3 items, due in 30 days.", + "Generate a billing invoice text for a single consulting service with payment due on receipt.", + "Draft a detailed invoice including special notes and payment terms for a corporate client." + ] + }, + "tags": [ + "copywriting", + "invoice", + "billing", + "drafting", + "financial documents", + "marketing", + "client communication" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corporation\",\"clientAddress\":\"123 Industrial Ave, Suite 4, Metropolis\",\"invoiceNumber\":\"INV-2024-045\",\"invoiceDate\":\"2024-06-10\",\"dueDate\":\"2024-07-10\",\"items\":[{\"description\":\"Web Design Services\",\"quantity\":10,\"unitPrice\":75},{\"description\":\"Hosting Fee\",\"quantity\":1,\"unitPrice\":150}],\"currency\":\"$\",\"paymentTerms\":\"Net 30\",\"notes\":\"Thank you for your business!\"}", + "description": "Invoice draft for a corporate client with multiple line items and notes." + }, + { + "inputJson": "{\"clientName\":\"Jane Doe\",\"invoiceNumber\":\"JD-1001\",\"invoiceDate\":\"2024-06-15\",\"dueDate\":\"2024-06-15\",\"items\":[{\"description\":\"Consulting Session\",\"quantity\":1,\"unitPrice\":300}],\"currency\":\"$\",\"paymentTerms\":\"Due on receipt\",\"notes\":\"Please remit payment promptly.\"}", + "description": "Single item consulting invoice with immediate due date and payment instructions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "copywriting.draftBlogPost", + "description": "Generates a well-structured blog post draft based on a given topic, target audience, and optional keywords. Accepts inputs describing the blog post theme and style preferences, processes them to create a coherent, engaging article, and outputs the blog post content as text.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the blog post to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers, to tailor tone and complexity appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "An array of keywords or phrases to naturally incorporate in the blog post for SEO purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "wordCount", + "type": "number", + "description": "Desired length of the blog post in words; helps control detail and depth.", + "required": false, + "defaultValue": "800" + }, + { + "name": "styleTone", + "type": "string", + "description": "Preferred writing style or tone, e.g., casual, formal, persuasive, informative.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "includeHeadings", + "type": "boolean", + "description": "Whether to include section headings to structure the blog post.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted blog post text and optional metadata like estimated reading time." + }, + "aiAgent": { + "useCase": "Use this tool when needing to rapidly produce a complete draft of a blog post on any topic, tailored to a specific audience and style, including SEO keyword integration. It is ideal for content marketing, blogging, and digital publishing scenarios.", + "limitations": "Cannot provide final edited or critically fact-checked content; output may require human review for accuracy and personalization.", + "examples": [ + "Draft a 1000-word blog post on sustainable fashion targeting environmentally conscious millennials including keywords like 'eco-friendly', 'slow fashion'.", + "Create a formal blog post about AI automation in healthcare for industry professionals.", + "Generate a casual, 500-word blog post about outdoor fitness tips with headings." + ] + }, + "tags": [ + "copywriting", + "blogging", + "content creation", + "SEO", + "marketing", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work\",\"targetAudience\":\"corporate employees\",\"keywords\":[\"work from home\",\"flexibility\",\"productivity\"],\"wordCount\":700,\"styleTone\":\"informative\",\"includeHeadings\":true}", + "description": "Draft a 700-word informative blog post about the benefits of remote work tailored for corporate employees including specified keywords." + }, + { + "inputJson": "{\"topic\":\"Top 5 travel destinations in 2024\",\"targetAudience\":\"millennial travelers\",\"keywords\":[\"budget travel\",\"adventure\",\"culture\"],\"wordCount\":600,\"styleTone\":\"casual\",\"includeHeadings\":true}", + "description": "Generate a casual and engaging 600-word blog post listing top travel destinations for millennials, focusing on budget and cultural experiences." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "BlogPost", + "context": null + } + }, + { + "name": "copywriting.draftArticle", + "description": "Generates a draft article based on a topic, target audience, and style preferences. Accepts inputs such as article topic, keywords to include, target audience description, desired tone, and approximate article length. Produces a coherent, structured article draft suitable for marketing or informational use.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the article to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords to be incorporated naturally within the article to improve SEO relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers to tailor the article's tone and complexity.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the article, e.g., professional, casual, persuasive, friendly.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate target length of the article in words.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted article text and metadata such as word count and suggested title." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a first draft of an article to support marketing campaigns, blog content, or informational materials quickly. It helps generate a structured and readable article based on the provided topic and parameters, serving as a solid foundation for further editing and refinement.", + "limitations": "The tool generates initial drafts but may lack detailed factual data, advanced domain-specific knowledge, or creative nuances. It should not be used as final published content without human review and editing.", + "examples": [ + "Draft an article on the benefits of renewable energy targeting environmentally conscious consumers with a friendly tone.", + "Generate a 800-word technical overview of blockchain for software developers including keywords like \"decentralization\" and \"smart contracts\".", + "Create a persuasive marketing article about a new fitness app aimed at young adults using casual tone." + ] + }, + "tags": [ + "copywriting", + "article", + "drafting", + "marketing", + "SEO", + "contentCreation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work\",\"keywords\":[\"flexibility\",\"work-life balance\"],\"targetAudience\":\"corporate employees\",\"tone\":\"professional\",\"length\":700}", + "description": "Draft an article about the benefits of remote work for corporate employees using a professional tone, including flexibility and work-life balance keywords." + }, + { + "inputJson": "{\"topic\":\"Summer skincare tips\",\"keywords\":[\"sun protection\",\"hydration\"],\"targetAudience\":\"young adults\",\"tone\":\"friendly\",\"length\":600}", + "description": "Create a friendly article providing summer skincare tips targeting young adults with emphasis on sun protection and hydration." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Article", + "context": null + } + }, + { + "name": "copywriting.draftProposal", + "description": "Drafts a professional business proposal document based on provided project details, client information, objectives, and deliverables. It accepts structured inputs describing the project scope, goals, timeline, budget, and client preferences, then generates a clear, organized, and persuasive proposal text suitable for sending to potential clients or stakeholders.", + "category": "copywriting", + "parameters": [ + { + "name": "projectTitle", + "type": "string", + "description": "Title of the project or proposal being prepared.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientName", + "type": "string", + "description": "Name of the client or organization the proposal is addressed to.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "Detailed description of the project including purpose and background.", + "required": true, + "defaultValue": "" + }, + { + "name": "objectives", + "type": "array", + "description": "List of project objectives or goals that the proposal aims to achieve.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliverables", + "type": "array", + "description": "List of deliverables or key outputs that will be provided to the client.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeline", + "type": "string", + "description": "Estimated timeline or schedule for completing the project phases.", + "required": false, + "defaultValue": "" + }, + { + "name": "budget", + "type": "string", + "description": "Proposed budget or cost estimate for the project work.", + "required": false, + "defaultValue": "" + }, + { + "name": "clientPreferences", + "type": "string", + "description": "Additional notes or preferences specified by the client to tailor the proposal tone or style.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete draft proposal text in a 'proposalText' string field, formatted for readability and professional presentation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured, formal business proposal document based on specific provided project and client information. Ideal for sales teams, consultants, and freelancers preparing custom proposals efficiently without starting from scratch.", + "limitations": "This tool does not provide legal or contractually binding text and should be reviewed by a professional before sending. It cannot replace detailed financial analysis or project management plans.", + "examples": [ + "Draft a proposal for a new mobile app development for a retail client including objectives and deliverables.", + "Generate a project proposal for SEO consulting services with timeline and budget details.", + "Create a professional proposal for an event planning project addressing a corporate client with specific style preferences." + ] + }, + "tags": [ + "copywriting", + "proposal", + "business document", + "marketing", + "sales", + "drafting", + "professional communication" + ], + "examples": [ + { + "inputJson": "{\"projectTitle\":\"Mobile App Development for Retail\",\"clientName\":\"Acme Retail Corp\",\"projectDescription\":\"Develop a cross-platform mobile application to enhance customer engagement and support online sales.\",\"objectives\":[\"Increase user engagement\",\"Streamline purchase process\",\"Integrate loyalty program\"],\"deliverables\":[\"iOS and Android app\",\"Admin dashboard\",\"User training and documentation\"],\"timeline\":\"6 months\",\"budget\":\"$150,000\",\"clientPreferences\":\"Formal tone, emphasize ROI benefits.\"}", + "description": "Generate a formal proposal draft for a retail client focused on app development with clear objectives and deliverables." + }, + { + "inputJson": "{\"projectTitle\":\"SEO Consulting Services\",\"clientName\":\"BrightStart Media\",\"projectDescription\":\"Provide SEO strategy and implementation to boost organic search rankings and traffic.\",\"objectives\":[\"Keyword research and optimization\",\"Content strategy development\",\"Backlink building\"],\"deliverables\":[\"SEO audit report\",\"Monthly performance reports\",\"Content calendar\"],\"timeline\":\"3 months\",\"budget\":\"$20,000\",\"clientPreferences\":\"Concise and persuasive tone.\"}", + "description": "Draft a concise SEO consulting proposal including budget and timeline for a media agency." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Proposal", + "context": null + } + }, + { + "name": "copywriting.draftContract", + "description": "This tool drafts customized legal contract documents based on user inputs such as the contract type, parties involved, key terms, and jurisdiction. It processes the provided parameters to generate a clear, professional contract draft in text format, suitable for further legal review or direct use.", + "category": "copywriting", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "Type of contract to draft (e.g., NDA, service agreement, sales contract)", + "required": true, + "defaultValue": "" + }, + { + "name": "partyA", + "type": "string", + "description": "Name and details of the first party involved in the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "partyB", + "type": "string", + "description": "Name and details of the second party involved in the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "terms", + "type": "object", + "description": "Key contract terms including duration, payment, obligations, confidentiality, and termination details", + "required": true, + "defaultValue": "" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction whose laws govern the contract (e.g., California, UK)", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSignatures", + "type": "boolean", + "description": "Whether to include signature lines for the parties", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted contract as a string in standard legal format, ready for review or use." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a preliminary draft of a legal contract tailored to specific parties, terms, and contract type without starting from scratch. Valuable for preparing initial drafts for NDAs, service agreements, or sales contracts that can be reviewed or edited by legal teams.", + "limitations": "This tool does not provide legal advice or guarantee the legal enforceability of the drafted contract. It requires user-provided accurate input and should be reviewed by qualified legal professionals before use.", + "examples": [ + "Draft an NDA agreement between Acme Corp and Beta LLC, including confidentiality for 2 years governed by California law.", + "Generate a service agreement contract for a freelance consultant and a client, specifying payment terms, services scope, and termination conditions under UK law.", + "Produce a sales contract between a supplier and retailer with delivery terms, payment schedule, and dispute resolution clauses under New York jurisdiction." + ] + }, + "tags": [ + "copywriting", + "legal", + "contract drafting", + "document generation", + "business", + "law", + "automation" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"NDA\",\"partyA\":\"Acme Corp, 123 Acme Street, Acme City\",\"partyB\":\"Beta LLC, 456 Beta Avenue, Beta Town\",\"terms\":{\"duration\":\"2 years\",\"confidentiality\":\"strict\",\"obligations\":\"no disclosure of proprietary information\",\"termination\":\"30 days notice\"},\"governingLaw\":\"California\",\"includeSignatures\":true}", + "description": "Draft a 2-year NDA contract with confidentiality and termination terms between two companies under California law." + }, + { + "inputJson": "{\"contractType\":\"Service Agreement\",\"partyA\":\"John Doe Consulting\",\"partyB\":\"XYZ Inc.\",\"terms\":{\"services\":\"IT consulting\",\"payment\":\"$5000 monthly\",\"duration\":\"12 months\",\"termination\":\"60 days notice\"},\"governingLaw\":\"UK\",\"includeSignatures\":true}", + "description": "Draft a service agreement contract for IT consulting services under UK jurisdiction including payment and termination conditions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "copywriting.draftDocument", + "description": "This tool generates a marketing or promotional document draft based on inputs like target audience, product features, tone, and length preferences. It processes these inputs to produce a coherent, persuasive document draft ready for review and editing.", + "category": "copywriting", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the document, e.g., demographics, interests. Required to tailor content effectively.", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Name of the product, service, or offering to promote in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "List of key features or benefits of the product/service to highlight.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the document, e.g., professional, friendly, enthusiastic. Influences writing style.", + "required": false, + "defaultValue": "\"professional\"" + }, + { + "name": "documentLength", + "type": "number", + "description": "Approximate desired length of the draft in words to control verbosity.", + "required": false, + "defaultValue": "300" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call-to-action phrase or message to include at the end of the document.", + "required": false, + "defaultValue": "\"Contact us today to learn more!\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the drafted document text as a string, including sections like introduction, feature highlights, and call to action." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create initial marketing or promotional content drafts tailored to specific audiences and products, helping speed up content creation that can be later refined by humans.", + "limitations": "The tool generates drafts and may not capture nuanced brand voice or comply fully with specialized marketing strategies requiring human review.", + "examples": [ + "Draft a promotional document targeting young professionals for a new smart watch emphasizing health features.", + "Create a friendly tone marketing draft for a luxury skincare line focusing on natural ingredients.", + "Generate a concise 200-word sales document for a B2B software solution with a compelling call to action." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotional", + "content-creation", + "drafting", + "document" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"young professionals aged 25-35 interested in fitness and technology\",\"productName\":\"FitTrack Pro\",\"productFeatures\":[\"24/7 heart rate monitoring\",\"Sleep tracking\",\"Water-resistant up to 50m\"],\"tone\":\"enthusiastic\",\"documentLength\":350,\"callToAction\":\"Order your FitTrack Pro today and take control of your health!\"}", + "description": "Draft a promotional document highlighting fitness features of a smartwatch for tech-savvy young professionals." + }, + { + "inputJson": "{\"targetAudience\":\"small business owners looking for easy accounting solutions\",\"productName\":\"EasyBooks Cloud\",\"productFeatures\":[\"Automated invoicing\",\"Real-time expense tracking\",\"Secure cloud backups\"],\"tone\":\"professional\",\"documentLength\":250,\"callToAction\":\"Start your free trial of EasyBooks Cloud now!\"}", + "description": "Create a professional marketing draft promoting accounting software to small business owners." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "copywriting.draftReport", + "description": "Generates a structured marketing or business report based on provided input data and objectives. Accepts input parameters like report type, target audience, key points to include, tone style, and additional data. Outputs a well-formed, coherent report draft optimized for promotional or business contexts.", + "category": "copywriting", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "Specifies the type of report to generate, such as 'market analysis', 'performance overview', or 'product launch'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Defines the intended readers of the report (e.g., executives, customers, investors) to tailor the tone and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of key topics or data points that must be covered in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Sets the writing tone of the report, such as 'formal', 'persuasive', or 'casual'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "additionalData", + "type": "object", + "description": "Optional supplementary data or statistics to incorporate into the report's content.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the report in words.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the drafted report text and metadata such as report type and word count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a professional marketing, business, or performance report draft automatically from structured input data and key points, ensuring the report is targeted, coherent, and styled appropriately for the audience.", + "limitations": "The tool cannot replace human experts in validating data accuracy or contextual nuances beyond the supplied inputs; it does not generate real data but relies on user-provided information.", + "examples": [ + "Draft a market analysis report for investors highlighting growth potential and risks, using a formal tone.", + "Create a product launch overview for customers focusing on benefits with a persuasive tone, around 800 words.", + "Generate a quarterly performance report for executives emphasizing key achievements and statistics." + ] + }, + "tags": [ + "copywriting", + "report", + "marketing", + "business", + "drafting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"market analysis\",\"targetAudience\":\"investors\",\"keyPoints\":[\"growth potential\",\"competitive landscape\",\"market risks\"],\"tone\":\"formal\",\"length\":1200}", + "description": "Generate a formal market analysis report aimed at investors emphasizing growth potential and risks." + }, + { + "inputJson": "{\"reportType\":\"product launch\",\"targetAudience\":\"customers\",\"keyPoints\":[\"product features\",\"usage benefits\",\"special offers\"],\"tone\":\"persuasive\",\"length\":800}", + "description": "Draft a persuasive product launch report for customers highlighting features and benefits." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "copywriting.composeCitation", + "description": "Generates a properly formatted academic citation based on input source details and selected citation style. Accepts source information such as author(s), title, publication year, and more. Outputs a correctly formatted citation string suitable for academic or professional use.", + "category": "copywriting", + "parameters": [ + { + "name": "authors", + "type": "array", + "description": "List of author names in 'LastName, FirstName' format. Required for citation.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the source material such as a book, article, or paper. Required for citation.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationYear", + "type": "number", + "description": "Year when the source was published. Helps indicate the currency of the source. Required for citation.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of source, e.g., book, journal article, website, report. Adjusts citation formatting accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "publisher", + "type": "string", + "description": "Name of the publisher or organization that released the source. Optional for some source types.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL of the online source if applicable, included as part of the citation when relevant.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style to format output, e.g., APA, MLA, Chicago. Determines citation formatting rules. Required.", + "required": true, + "defaultValue": "APA" + }, + { + "name": "pageNumbers", + "type": "string", + "description": "Page numbers or page range to cite, if applicable. Included in citation for articles or book chapters.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted citation string under the key 'formattedCitation'." + }, + "aiAgent": { + "useCase": "Use this tool when tasked with generating standardized citations for academic, research, or professional documents. It automates adherence to specific citation style guides, saving time and reducing errors in citation formatting.", + "limitations": "Cannot verify accuracy of source data; relies on correct input. Not designed to handle extremely uncommon or custom citation styles. Formatting nuances might vary slightly based on style guide updates.", + "examples": [ + "Generate an APA citation for a journal article authored by multiple people.", + "Compose an MLA citation for a book with a known publisher and publication year.", + "Create a Chicago style citation for a web source including a URL and accessed year." + ] + }, + "tags": [ + "copywriting", + "citation", + "academic", + "formatting", + "APA", + "MLA", + "Chicago" + ], + "examples": [ + { + "inputJson": "{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"The Future of AI\",\"publicationYear\":2023,\"sourceType\":\"journal article\",\"publisher\":\"Tech Journal\",\"url\":\"https://techjournal.org/future-ai\",\"citationStyle\":\"APA\",\"pageNumbers\":\"15-29\"}", + "description": "Generate an APA formatted citation for a journal article with two authors and page numbers." + }, + { + "inputJson": "{\"authors\":[\"Brown, Lisa\"],\"title\":\"Understanding Quantum Computing\",\"publicationYear\":2020,\"sourceType\":\"book\",\"publisher\":\"Science Press\",\"citationStyle\":\"MLA\"}", + "description": "Create an MLA citation for a book with one author and a known publisher." + }, + { + "inputJson": "{\"authors\":[\"Johnson, Mark\"],\"title\":\"Advances in Renewable Energy\",\"publicationYear\":2021,\"sourceType\":\"website\",\"url\":\"https://renewableenergy.com/article\",\"citationStyle\":\"Chicago\"}", + "description": "Produce a Chicago style citation for a web article including a URL." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Citation", + "context": null + } + }, + { + "name": "copywriting.composeReference", + "description": "Generates a professional, concise reference letter or testimonial text based on input details about the subject, relationship, and qualities to recommend. Accepts structured data about the person to reference, purpose, and tone, then composes a formatted reference text output suitable for use in job applications, academic purposes, or endorsements.", + "category": "copywriting", + "parameters": [ + { + "name": "subjectName", + "type": "string", + "description": "Full name of the person to be referenced (required for personalization).", + "required": true, + "defaultValue": "" + }, + { + "name": "relationship", + "type": "string", + "description": "Description of the relationship between the writer and the subject (e.g., manager, professor).", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "Intended purpose of the reference letter (e.g., job application, academic admission).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyQualities", + "type": "array", + "description": "List of key qualities, skills, or achievements to highlight in the reference.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the reference (e.g., formal, friendly, enthusiastic).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the reference text in sentences.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed reference letter text formatted as plain text." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to generate a well-structured and personalized reference letter or testimonial text based on defined inputs about the candidate and context. Ideal for automating recommendation letter drafts, saving time, and ensuring relevant qualities are highlighted appropriately.", + "limitations": "The tool cannot verify factual accuracy of inputs or provide legally binding recommendations. It relies entirely on supplied data and cannot generate references without sufficient detail.", + "examples": [ + "Compose a strong, formal job reference for an employee named Jane Doe, highlighting her leadership and communication skills.", + "Create a friendly academic reference for a student applying to graduate school named John Smith, focusing on research and teamwork.", + "Generate a brief enthusiastic testimonial for a freelancer named Alex Brown, emphasizing reliability and creativity." + ] + }, + "tags": [ + "copywriting", + "reference", + "recommendation", + "testimonial", + "letter", + "compose", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"subjectName\":\"Jane Doe\",\"relationship\":\"former manager\",\"purpose\":\"job application\",\"keyQualities\":[\"leadership\",\"communication skills\"],\"tone\":\"formal\",\"length\":6}", + "description": "Compose a formal reference letter for an employee Jane Doe emphasizing leadership and communication." + }, + { + "inputJson": "{\"subjectName\":\"John Smith\",\"relationship\":\"professor\",\"purpose\":\"graduate school admission\",\"keyQualities\":[\"research abilities\",\"teamwork\"],\"tone\":\"friendly\",\"length\":5}", + "description": "Create a friendly academic reference for a student John Smith highlighting research and teamwork skills." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Reference", + "context": null + } + }, + { + "name": "copywriting.composeQuote", + "description": "Generates impactful and contextually relevant marketing or inspirational quotes based on input themes, tone, and target audience characteristics. Accepts parameters specifying the desired stylistic tone, themes, and audience to produce a tailored quote text suitable for promotional or motivational use.", + "category": "copywriting", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "Primary theme or subject of the quote, guiding its conceptual focus.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The stylistic tone for the quote, e.g., inspirational, motivational, humorous, formal.", + "required": false, + "defaultValue": "inspirational" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for which the quote is intended, influencing style and wording.", + "required": false, + "defaultValue": "" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum number of characters allowed in the quote text to ensure brevity and impact.", + "required": false, + "defaultValue": "140" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a subtle call to action or motivational prompt within the quote.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text and metadata such as theme, tone, and length." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate concise, effective quotes for marketing materials, social posts, presentations, or motivational content. It helps produce well-phrased quotes aligned with specific themes and audience tones without manually crafting each one.", + "limitations": "The tool generates quotes based on input parameters but cannot verify originality or guarantee uniqueness. It also does not produce very long texts or detailed explanations, being limited to short quote style outputs.", + "examples": [ + "Create a motivational quote about teamwork for young professionals.", + "Generate an inspirational quote on innovation with a formal tone.", + "Compose a humorous marketing quote about productivity including a call to action." + ] + }, + "tags": [ + "copywriting", + "quote generation", + "marketing", + "inspirational", + "motivational", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"teamwork\",\"tone\":\"motivational\",\"targetAudience\":\"young professionals\",\"lengthLimit\":120,\"includeCallToAction\":false}", + "description": "Generate a motivational quote about teamwork targeted at young professionals with a length limit of 120 characters." + }, + { + "inputJson": "{\"theme\":\"innovation\",\"tone\":\"formal\",\"targetAudience\":\"corporate executives\",\"lengthLimit\":140,\"includeCallToAction\":false}", + "description": "Compose a formal inspirational quote about innovation for corporate executives." + }, + { + "inputJson": "{\"theme\":\"productivity\",\"tone\":\"humorous\",\"targetAudience\":\"general public\",\"lengthLimit\":140,\"includeCallToAction\":true}", + "description": "Produce a humorous marketing quote about productivity including a call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Quote", + "context": null + } + }, + { + "name": "copywriting.composeLink", + "description": "This tool generates persuasive and engaging promotional text for a given URL link. Users provide the link URL and optionally a title, target audience description, and desired tone. The tool analyzes the input and composes a concise marketing message that highlights the link's value or content to encourage clicks or shares.", + "category": "copywriting", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The target URL for which to compose promotional text.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title or headline related to the link content, to help contextualize the message.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the promotional message, to tailor tone and content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the promotional text (e.g., professional, casual, enthusiastic).", + "required": false, + "defaultValue": "casual" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the output promotional text in characters.", + "required": false, + "defaultValue": "280" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed promotional text optimized for sharing or marketing use." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create short, compelling promotional copy that encourages users to visit or share a specific web link. It is useful for social media posts, emails, or digital marketing content where quick engagement is vital.", + "limitations": "This tool cannot verify or analyze the actual content of the URL beyond parsing metadata or title provided. It also cannot generate long-form descriptions or detailed reviews.", + "examples": [ + "Compose a catchy tweet to promote https://example.com announcing a new product.", + "Generate a short promotional message for a link to a blog post targeting young professionals with an enthusiastic tone.", + "Create an engaging link preview text for a business website homepage in a professional tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "linkPromotion", + "socialMedia", + "contentCreation", + "shortCopy" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://technews.com/new-gadget\",\"title\":\"Introducing the X100 Gadget\",\"targetAudience\":\"tech enthusiasts and early adopters\",\"tone\":\"enthusiastic\",\"maxLength\":150}", + "description": "Compose a promotional message for a tech gadget aimed at tech enthusiasts with an enthusiastic style." + }, + { + "inputJson": "{\"url\":\"https://healthtips.org/healthy-eating\",\"title\":\"Healthy Eating Guide\",\"targetAudience\":\"general public interested in wellness\",\"tone\":\"professional\",\"maxLength\":200}", + "description": "Generate a professional promotional text designed for a health and wellness audience." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "copywriting.composeWord", + "description": "Generates a single compelling marketing or promotional word based on the specified industry, target audience, tone, and optional keyword input to enhance brand messaging and engagement. Outputs a word optimized for use in advertising and copywriting contexts.", + "category": "copywriting", + "parameters": [ + { + "name": "industry", + "type": "string", + "description": "The industry or sector relevant to the word, e.g., technology, fashion, finance.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The demographic or customer segment the word should appeal to, e.g., millennials, professionals.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or feeling the word should convey, e.g., energetic, trustworthy, luxurious.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyword", + "type": "string", + "description": "An optional seed keyword or concept to base the word upon or relate to, enhancing thematic relevance.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word and a brief explanation of its marketing appeal and usage context." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a powerful single word tailored for marketing copy that fits the specified industry, audience, and tone. Ideal for branding, campaign naming, slogans, or highlighting product features with catchy, targeted vocabulary.", + "limitations": "This tool does not generate full sentences or copy blocks, only single words. It may not always guarantee trademark or uniqueness clearance for generated terms.", + "examples": [ + "Create a compelling word for a new tech gadget aimed at young professionals with a futuristic tone.", + "Generate an energetic word for a fitness brand targeting millennials.", + "Find a luxury-oriented word for a high-end fashion line aimed at affluent customers." + ] + }, + "tags": [ + "copywriting", + "marketing", + "branding", + "content generation", + "word generation" + ], + "examples": [ + { + "inputJson": "{\"industry\":\"technology\",\"targetAudience\":\"young professionals\",\"tone\":\"futuristic\",\"keyword\":\"innovation\"}", + "description": "Generate a futuristic marketing word for technology targeting young professionals, inspired by the keyword innovation." + }, + { + "inputJson": "{\"industry\":\"fitness\",\"targetAudience\":\"millennials\",\"tone\":\"energetic\",\"keyword\":\"power\"}", + "description": "Create an energetic promotional word for a fitness brand aimed at millennials related to 'power'." + }, + { + "inputJson": "{\"industry\":\"fashion\",\"targetAudience\":\"affluent customers\",\"tone\":\"luxurious\",\"keyword\":\"elegance\"}", + "description": "Compose a luxury-oriented word for a high-end fashion audience centered on elegance." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "copywriting.composeSentence", + "description": "Generates a single marketing or promotional sentence based on the provided product or service description, target audience, and tone. It accepts input parameters like product details, target customer, and desired tone, then composes an engaging sentence suitable for advertising or promotional use.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "Brief description of the product or service to promote", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The specific audience or customer segment for the sentence", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the sentence (e.g., professional, casual, enthusiastic)", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeCTA", + "type": "boolean", + "description": "Whether to include a call-to-action in the sentence", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed sentence as a string under the key 'sentence'" + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents tasked with creating concise, impactful promotional content where a single, well-crafted sentence is needed to highlight a product's value to a specific audience with a chosen tone. It helps generate marketing copy for ads, social media posts, or product descriptions.", + "limitations": "This tool generates only one sentence and cannot produce longer marketing texts or multiple variations at once. It may not handle highly technical or niche products without detailed input.", + "examples": [ + "Compose a promotional sentence for a new eco-friendly water bottle targeting outdoor enthusiasts in an enthusiastic tone including a call to action.", + "Create a professional sentence advertising a software tool for small businesses without a call to action.", + "Generate a casual sentence describing a new coffee blend aimed at young adults." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotion", + "sentence generation", + "advertising", + "tone control" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"eco-friendly reusable water bottle\",\"targetAudience\":\"outdoor enthusiasts\",\"tone\":\"enthusiastic\",\"includeCTA\":true}", + "description": "Generate an enthusiastic sentence with a call to action promoting an eco-friendly water bottle for outdoor enthusiasts." + }, + { + "inputJson": "{\"productDescription\":\"project management software for small businesses\",\"tone\":\"professional\",\"includeCTA\":false}", + "description": "Create a professional promotional sentence describing project management software without a call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "copywriting.composeText", + "description": "Generates marketing and promotional text based on input parameters such as target audience, product or service details, desired tone, and text length. It processes these inputs to compose clear, persuasive copy suitable for various marketing channels, producing finalized text output.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to be promoted", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the marketing text", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "Key features or benefits of the product/service to highlight in the text", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone/style of the text, e.g., professional, casual, enthusiastic", + "required": false, + "defaultValue": "professional" + }, + { + "name": "textLength", + "type": "number", + "description": "Approximate desired length of the generated text in words", + "required": false, + "defaultValue": "100" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call to action to include in the text (optional)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing text as a string under 'composedText'." + }, + "aiAgent": { + "useCase": "Use this tool when a marketing or promotional text is needed quickly based on product details and audience profile. It helps generate tailored copy that aligns with marketing objectives, tone, and desired length without manual writing.", + "limitations": "The tool cannot perform deep market research or provide real-time competitive analysis. It may not capture brand-specific guidelines unless explicitly detailed in inputs.", + "examples": [ + "Compose a promotional email text for a new eco-friendly water bottle targeting health-conscious millennials, tone casual, about 150 words.", + "Generate a brief social media ad copy for an online course on machine learning for beginners with an enthusiastic tone.", + "Create website homepage text highlighting the features of a new smartphone, professional tone, about 200 words, including a call to action to buy now." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotional text", + "content generation", + "advertising", + "AI writing" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoWave Water Bottle\",\"targetAudience\":\"health-conscious millennials\",\"productFeatures\":[\"BPA-free\",\"insulated\",\"keeps drinks cold for 24 hours\"],\"tone\":\"casual\",\"textLength\":150,\"callToAction\":\"Order now to get 20% off!\"}", + "description": "Create casual promotional text for EcoWave Water Bottle targeting young health-focused consumers with features and a call to action." + }, + { + "inputJson": "{\"productName\":\"ML Starter Course\",\"targetAudience\":\"beginners interested in AI\",\"tone\":\"enthusiastic\",\"textLength\":100,\"callToAction\":\"Sign up today!\"}", + "description": "Generate enthusiastic social media ad copy for an introductory machine learning course inviting beginners to enroll." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "copywriting.composeParagraph", + "description": "Generates a coherent and engaging marketing or promotional paragraph based on specified product or service details, tone, and target audience. Accepts input parameters describing the subject and style, then composes a tailored paragraph suitable for advertising or content marketing purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The main product, service, or topic to promote in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style of the paragraph, such as 'friendly', 'professional', 'enthusiastic', or 'informative'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or customer persona for the paragraph, e.g., 'young adults into fitness', 'small business owners', etc.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key features or selling points about the subject to be included in the paragraph.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the generated paragraph to control verbosity.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing paragraph text under the 'paragraph' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a concise and compelling paragraph for marketing materials, product descriptions, or promotional content tailored to specific subjects and tones. Ideal for quickly generating human-like persuasive text based on input features and audience information.", + "limitations": "This tool cannot create multi-paragraph content or guarantee factual accuracy beyond the provided inputs. It does not generate images or bullet lists, and is limited to text paragraphs only.", + "examples": [ + "Compose a friendly paragraph promoting a new organic energy drink aimed at fitness enthusiasts including its natural ingredients and health benefits.", + "Create a professional paragraph describing a software service for small business owners highlighting ease of use and cost savings.", + "Write an enthusiastic paragraph about a summer sale event focusing on discounts and limited-time offers." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotional", + "paragraph", + "content-generation", + "advertising", + "branding" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Eco-friendly reusable water bottles\",\"tone\":\"friendly\",\"targetAudience\":\"environmentally conscious millennials\",\"keyFeatures\":[\"BPA-free material\",\"keeps drinks cold for 24 hours\",\"stylish designs\"],\"maxLength\":300}", + "description": "Generate a friendly marketing paragraph about reusable water bottles for eco-conscious millennials including key features." + }, + { + "inputJson": "{\"subject\":\"Cloud-based project management software\",\"tone\":\"professional\",\"targetAudience\":\"small business teams\",\"keyFeatures\":[\"real-time collaboration\",\"task tracking\",\"customizable workflows\"],\"maxLength\":400}", + "description": "Create a professional promotional paragraph for a project management software targeting small teams, emphasizing key features." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "copywriting.composeReply", + "description": "This tool generates professional and contextually appropriate reply messages based on an input message and optional parameters such as tone, formality, and reply length. It processes the given conversation snippet or query and composes a coherent and relevant textual response suitable for emails, customer service, or social media communications.", + "category": "copywriting", + "parameters": [ + { + "name": "inputMessage", + "type": "string", + "description": "The original message or query to which a reply is to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the reply (e.g., friendly, formal, enthusiastic).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "formality", + "type": "string", + "description": "The formality level of the reply (e.g., informal, neutral, formal).", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "replyLength", + "type": "string", + "description": "Preferred length of the reply (e.g., short, medium, long).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action phrase in the reply.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the reply text (e.g., en, es, fr).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed reply message as a string under 'replyMessage'." + }, + "aiAgent": { + "useCase": "Use this tool when tasked with generating a well-written response to an incoming communication in contexts such as customer support, email correspondence, or social media interaction. It helps produce replies that match requested tone and formality while ensuring relevance to the original message.", + "limitations": "Cannot handle real-time conversations or understand visual/non-textual context. Replies are generated solely from the provided message and parameters; complex multi-turn dialogue context may not be fully captured.", + "examples": [ + "Compose a friendly and short reply to a customer's complaint about delayed shipment.", + "Generate a formal and detailed response to an inquiry regarding product features.", + "Create an informal and enthusiastic reply to a social media comment praising a service." + ] + }, + "tags": [ + "copywriting", + "reply", + "communication", + "email", + "customer-service", + "social-media", + "tone", + "formality" + ], + "examples": [ + { + "inputJson": "{\"inputMessage\":\"Thank you for contacting us about your delayed shipment. We apologize for the inconvenience.\",\"tone\":\"friendly\",\"formality\":\"informal\",\"replyLength\":\"short\",\"includeCallToAction\":true,\"language\":\"en\"}", + "description": "Compose a friendly, informal, short reply with a call to action to a customer support message." + }, + { + "inputJson": "{\"inputMessage\":\"Could you provide detailed specifications of the latest model?\",\"tone\":\"formal\",\"formality\":\"formal\",\"replyLength\":\"long\",\"includeCallToAction\":false,\"language\":\"en\"}", + "description": "Generate a formal, detailed reply to a customer inquiry about product specifications." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Reply", + "context": null + } + }, + { + "name": "copywriting.composeHeading", + "description": "Generates a catchy and optimized heading text based on a topic, tone, and target audience. Accepts a topic string, optional tone and audience parameters, and returns a concise heading suitable for marketing or promotional use.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme for the heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone for the heading, e.g., friendly, formal, urgent.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor the heading accordingly, e.g., young professionals, tech enthusiasts.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the heading to ensure brevity.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create compelling headings for marketing materials such as ads, web pages, or emails, ensuring the heading matches the theme, appeals to the audience, and fits length constraints.", + "limitations": "It cannot generate full-length articles or detailed content bodies; output is limited to concise heading text that aligns with inputs and tone but may require manual review for brand fit.", + "examples": [ + "Create a friendly heading about eco-friendly products for young adults.", + "Generate a formal heading for a corporate software launch targeting executives.", + "Compose an urgent heading for a limited-time sale targeting online shoppers." + ] + }, + "tags": [ + "copywriting", + "heading", + "marketing", + "content creation", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"eco-friendly products\",\"tone\":\"friendly\",\"targetAudience\":\"young adults\",\"maxLength\":50}", + "description": "Generate a friendly heading about eco-friendly products targeting young adults." + }, + { + "inputJson": "{\"topic\":\"corporate software launch\",\"tone\":\"formal\",\"targetAudience\":\"executives\",\"maxLength\":60}", + "description": "Create a formal heading for corporate software launch aimed at executives." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Heading", + "context": null + } + }, + { + "name": "copywriting.composeMention", + "description": "This tool generates a well-crafted mention text suitable for marketing or promotional communications. It accepts inputs about the person or brand to mention, the context of the mention, tone style, and desired length. It outputs a polished mention text that can be used in copywriting for social media, emails, or ads.", + "category": "copywriting", + "parameters": [ + { + "name": "mentionName", + "type": "string", + "description": "The name of the person, brand, or entity to mention in the text.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Brief description or context around why the mention is being made, e.g., product endorsement, event shoutout.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone style of the mention text, such as formal, casual, enthusiastic, or neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the mention text in words.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call to action in the mention text.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated mention text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly create engaging and context-appropriate mention statements for marketing or promotional content, such as tagging influencers, partners, or brands in social media posts, newsletters, or advertisements. It helps produce polished, tone-appropriate text that fits the given context and length constraints.", + "limitations": "Cannot guarantee uniqueness or compliance with brand guidelines. It does not generate images or complex multi-entity mentions. The tone and style may require human review to ensure marketing appropriateness.", + "examples": [ + "Generate an enthusiastic mention for a brand endorsing a new product in a social media post.", + "Compose a formal mention text for an event shoutout including a call to action.", + "Create a short, casual mention highlighting a partner company in an email newsletter." + ] + }, + "tags": [ + "copywriting", + "mention", + "marketing", + "branding", + "social media", + "promotion", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"mentionName\":\"EcoClean\",\"context\":\"partnering to promote sustainable home products\",\"tone\":\"enthusiastic\",\"length\":40,\"includeCallToAction\":true}", + "description": "Generate an enthusiastic mention for EcoClean emphasizing partnership and a call to action." + }, + { + "inputJson": "{\"mentionName\":\"Dr. Jane Smith\",\"context\":\"keynote speaker at our annual conference\",\"tone\":\"formal\",\"length\":30,\"includeCallToAction\":false}", + "description": "Compose a formal mention to highlight Dr. Jane Smith as a keynote speaker without a call to action." + }, + { + "inputJson": "{\"mentionName\":\"SmartHome Inc.\",\"context\":\"collaborating on new smart device launch\",\"tone\":\"casual\",\"length\":20,\"includeCallToAction\":false}", + "description": "Create a short, casual mention of SmartHome Inc. for a newsletter about a new device launch." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Mention", + "context": null + } + }, + { + "name": "copywriting.composeChannel", + "description": "Generates tailored marketing and communication content optimized for a specified communication channel such as email, social media, blogs, or ads. Takes details about the target audience, brand tone, message goal, and channel type, then composes engaging text that fits the stylistic and technical constraints of the selected channel.", + "category": "copywriting", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "The communication channel for which the text is to be composed, e.g., 'email', 'socialMedia', 'blog', 'advertisement'. Determines style and format.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience including demographics, interests, or behaviors to tailor the message appropriately.", + "required": true, + "defaultValue": "" + }, + { + "name": "brandTone", + "type": "string", + "description": "Defines the brand voice or tone (e.g., friendly, professional, playful) to be reflected in the content.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageGoal", + "type": "string", + "description": "The main purpose of the message such as to inform, persuade, promote, or engage.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "A list of main features, offers, or ideas that should be emphasized in the content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum character length or word count for the composed content, tailored to the channel's typical constraints.", + "required": false, + "defaultValue": "280" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call to action in the content to prompt audience response or engagement.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for output content; defaults to English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated content text optimized for the specified channel and parameters, plus metadata like length and language." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce marketing or promotional text tailored specifically to the communication channel. It helps create messages that resonate with the intended audience while respecting channel constraints like length and tone.", + "limitations": "Cannot replace deep strategic marketing expertise or understand highly specialized brand nuances outside the provided inputs. The generated content may need human review for best results.", + "examples": [ + "Compose a friendly email to young adult customers promoting a new eco-friendly product line.", + "Generate a concise social media post in professional tone highlighting a webinar announcement.", + "Create an engaging blog introduction informing tech enthusiasts about the latest software release." + ] + }, + "tags": [ + "copywriting", + "marketing", + "content generation", + "communication", + "channel", + "promotion", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"email\",\"targetAudience\":\"young adults interested in sustainability\",\"brandTone\":\"friendly\",\"messageGoal\":\"promote new eco-friendly product line\",\"keyPoints\":[\"made from recycled materials\",\"discount offer\",\"limited-time availability\"],\"lengthLimit\":300,\"includeCallToAction\":true,\"language\":\"en\"}", + "description": "Compose a promotional email for eco-conscious young adult customers." + }, + { + "inputJson": "{\"channelType\":\"socialMedia\",\"targetAudience\":\"professionals in marketing\",\"brandTone\":\"professional\",\"messageGoal\":\"announce upcoming webinar\",\"keyPoints\":[\"date, time, and registration link\"],\"lengthLimit\":150,\"includeCallToAction\":true,\"language\":\"en\"}", + "description": "Generate a social media announcement for a marketing webinar in a professional tone." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Channel", + "context": null + } + }, + { + "name": "copywriting.composeReadme", + "description": "Generates a professional README.md file for software projects based on input details such as project name, description, installation steps, usage instructions, contribution guidelines, license, and contact info. Produces a markdown formatted README string ready for inclusion in repositories.", + "category": "copywriting", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the software project.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief summary describing the project and its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions for installing the software (can include commands or prerequisites).", + "required": false, + "defaultValue": "" + }, + { + "name": "usageInformation", + "type": "string", + "description": "Details on how to use the software, including examples or commands.", + "required": false, + "defaultValue": "" + }, + { + "name": "contributionGuidelines", + "type": "string", + "description": "Guidelines for other developers who want to contribute to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "licenseName", + "type": "string", + "description": "The license type of the project, e.g., MIT, Apache 2.0, GPLv3.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactEmail", + "type": "string", + "description": "Contact email for project maintainers for questions or support.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'readmeMarkdown' which is a string containing the complete README content formatted in markdown." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a standardized, clear, and professional README file for a software project repository to help users understand and utilize the project quickly. It is useful during project setup automation, documentation generation, or when scaffolding new projects.", + "limitations": "This tool cannot validate technical accuracy of installation or usage instructions. It generates text based on provided input and does not test the software itself. Very complex or highly customized docs may need manual refinement.", + "examples": [ + "Create a README for a Python library that does text analysis, including install via pip, usage examples, an MIT license, and contributor contact.", + "Generate a basic README for a web app project with a short project description and usage instructions only.", + "Produce a README with detailed contribution guidelines and license info for an open source CLI tool." + ] + }, + "tags": [ + "copywriting", + "documentation", + "readme", + "markdown", + "software", + "automation", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"TextAnalyzer\",\"projectDescription\":\"A Python library for analyzing and summarizing text.\",\"installationInstructions\":\"Install via pip: pip install textanalyzer\",\"usageInformation\":\"Import the library and use the summarize() function.\",\"contributionGuidelines\":\"Fork the repo and submit pull requests.\",\"licenseName\":\"MIT\",\"contactEmail\":\"support@textanalyzer.org\"}", + "description": "Generating a complete README for a Python text analysis library." + }, + { + "inputJson": "{\"projectName\":\"WebApp\",\"projectDescription\":\"A React-based web application for task management.\",\"usageInformation\":\"Run npm start to launch the app.\",\"licenseName\":\"Apache 2.0\"}", + "description": "Generating a README with basic usage info and license for a React web app." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Readme", + "context": null + } + }, + { + "name": "copywriting.composeNotification", + "description": "This tool generates tailored notification messages for various contexts such as app alerts, email updates, or push notifications. It accepts inputs describing the notification purpose, target audience, tone, and key content points, then creates a clear, concise, and engaging notification message output ready for distribution.", + "category": "copywriting", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to compose, e.g., 'appAlert', 'emailUpdate', 'pushNotification'.", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Target audience or user segment for the notification, e.g., 'newUsers', 'subscribers', 'premiumMembers'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the notification, such as 'formal', 'casual', 'friendly', or 'urgent'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "contentPoints", + "type": "array", + "description": "Key points or information items that must be included in the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call-to-action phrase or instruction to include, e.g., 'Update now', 'Learn more'.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the notification text in characters to ensure brevity and fit.", + "required": false, + "defaultValue": "160" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object with a composed notification message string, and metadata such as character count and suggested send channel." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate professional and customized notification messages for marketing, user engagement, or informational purposes, tailored by type and audience with an appropriate tone. It helps automate writing concise and effective notices suitable for various communication channels.", + "limitations": "Cannot generate multimedia content, complex personalization beyond given input parameters, or guarantee compliance with all regulatory standards for notifications like opt-in requirements.", + "examples": [ + "Compose a push notification for premium members with a friendly tone informing them of a new feature.", + "Create an email update for new users with a formal tone summarizing recent changes.", + "Generate a short app alert with an urgent tone calling users to update the app immediately." + ] + }, + "tags": [ + "copywriting", + "notification", + "marketing", + "communication", + "content-generation", + "messaging", + "automation" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"pushNotification\",\"audience\":\"premiumMembers\",\"tone\":\"friendly\",\"contentPoints\":[\"New feature available\",\"Improved interface\",\"Exclusive access\"],\"callToAction\":\"Try it now!\",\"maxLength\":140}", + "description": "Generate a push notification message informing premium members of a new feature with a friendly tone and concise format." + }, + { + "inputJson": "{\"notificationType\":\"emailUpdate\",\"audience\":\"newUsers\",\"tone\":\"formal\",\"contentPoints\":[\"Welcome to our platform\",\"Overview of features\",\"How to get started\"],\"callToAction\":\"Get started\",\"maxLength\":500}", + "description": "Compose a formal email update welcoming new users and guiding them to get started with platform features." + }, + { + "inputJson": "{\"notificationType\":\"appAlert\",\"audience\":\"allUsers\",\"tone\":\"urgent\",\"contentPoints\":[\"Critical security update\",\"Immediate app update required\"],\"callToAction\":\"Update now\",\"maxLength\":100}", + "description": "Create an urgent app alert instructing all users to apply a critical security update immediately." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "copywriting.composeThread", + "description": "Generates a coherent and engaging communication thread suitable for social media or email based on the provided topic, target audience, and style preferences. Accepts input details like topic, tone, audience, and number of messages, then produces a structured thread of short, sequential messages designed to inform, persuade, or engage readers.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the thread to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers or recipients of the thread, influencing style and content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or writing style for the thread messages, e.g., formal, casual, enthusiastic.", + "required": false, + "defaultValue": "casual" + }, + { + "name": "messageCount", + "type": "number", + "description": "The number of individual messages or posts to generate in the thread.", + "required": false, + "defaultValue": "5" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action to include towards the end of the thread, like visiting a link or responding.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing an ordered array of composed messages forming the thread." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create multi-part communications such as social media threads or email sequences that are coherent, topical, and tailored to an audience with a specified tone. It helps generate structured, engaging, and goal-oriented content spanning multiple messages or posts.", + "limitations": "Cannot guarantee factual accuracy beyond training data. Does not produce multimedia content. Limited in handling extremely technical or specialized domain-specific jargon unless explicitly provided. Not intended for real-time updates or dynamic conversations.", + "examples": [ + "Create a 7-post Twitter thread for tech enthusiasts about the newest AI model.", + "Write a 3-message email thread in a formal tone aimed at prospective clients introducing a new service.", + "Compose a 5-message casual social media thread promoting a summer sale with a call to action to visit the website." + ] + }, + "tags": [ + "copywriting", + "social media", + "thread", + "content generation", + "marketing", + "communication" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Introducing our new AI productivity tool\",\"targetAudience\":\"tech professionals\",\"tone\":\"enthusiastic\",\"messageCount\":5,\"callToAction\":\"Try it free today!\"}", + "description": "Compose a 5-message social media thread with an enthusiastic tone for tech professionals about a new AI productivity tool, ending with a call to action." + }, + { + "inputJson": "{\"topic\":\"Weekly company update\",\"targetAudience\":\"employees\",\"tone\":\"formal\",\"messageCount\":3,\"callToAction\":\"Please submit your reports by Friday.\"}", + "description": "Generate a 3-message formal email thread providing a weekly update to employees with a clear call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Thread", + "context": null + } + }, + { + "name": "copywriting.composeComment", + "description": "Generates a tailored comment based on the provided topic, tone, and context. Accepts inputs including the subject matter, desired style (e.g., friendly, professional), and any key points to highlight. Produces a well-formed comment suitable for use in marketing communications, social media, or customer engagement.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme the comment should address.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The style or attitude of the comment, such as friendly, professional, enthusiastic, or neutral.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of important points or keywords that the comment should include or emphasize.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of characters for the comment to ensure brevity or platform-specific limits.", + "required": false, + "defaultValue": "250" + }, + { + "name": "audience", + "type": "string", + "description": "The intended audience of the comment, e.g., customers, partners, social media followers.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated comment text that aligns with the given parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate engaging and contextually appropriate comments for marketing purposes, whether for social media posts, product feedback, or customer interactions. It helps create consistent, tone-aware communication that incorporates specific key points or messaging.", + "limitations": "This tool cannot guarantee factual correctness or appropriateness beyond the input scope provided. It does not replace human review for sensitive or highly regulated content.", + "examples": [ + "Create a friendly comment highlighting new features of a product launch for social media.", + "Generate a professional comment emphasizing key benefits of a service for a business partner audience.", + "Write a short enthusiastic comment using given keywords promoting a special discount offer." + ] + }, + "tags": [ + "copywriting", + "comment", + "marketing", + "social media", + "engagement", + "customer communication" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Introducing our new eco-friendly packaging\",\"tone\":\"enthusiastic\",\"keyPoints\":[\"environmentally friendly\",\"recyclable\",\"sustainable\"],\"maxLength\":200,\"audience\":\"customers\"}", + "description": "Generate an enthusiastic customer comment about new sustainable packaging." + }, + { + "inputJson": "{\"topic\":\"Thank you for your feedback on our software update\",\"tone\":\"professional\",\"keyPoints\":[\"appreciate\",\"improvements\",\"commitment to quality\"],\"maxLength\":150}", + "description": "Create a professional comment acknowledging user feedback on a software update." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "copywriting.composeMessage", + "description": "Generates a tailored marketing or promotional message based on provided parameters such as target audience, product details, tone, and desired message length. Processes input to produce a concise and persuasive message suitable for advertising campaigns or client communications.", + "category": "copywriting", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for the message (e.g., young professionals, parents, tech enthusiasts).", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Name of the product or service being promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "List of key features or benefits of the product or service to highlight in the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone/style of the message (e.g., friendly, professional, humorous, urgent).", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "messageLength", + "type": "number", + "description": "Desired approximate length of the message in words.", + "required": false, + "defaultValue": "50" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call-to-action phrase to include (e.g., \"Buy now\", \"Learn more\").", + "required": false, + "defaultValue": "\"Learn more\"" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated promotional message text and metadata such as length." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create marketing or advertising messages customized to specific audiences and products, ensuring the tone and length meet campaign requirements. It is especially helpful for drafting messages for emails, social media, or product descriptions.", + "limitations": "The tool cannot verify factual accuracy of product claims and may not fully capture complex brand guidelines or legal disclaimers.", + "examples": [ + "Compose a friendly 40-word promotional message for a new eco-friendly water bottle targeted at outdoor enthusiasts.", + "Write a professional and brief message including a call-to-action to buy a new software product for small businesses.", + "Create a humorous social media post promoting a fast-food chain's new burger with key features and an urgent tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotional", + "message generation", + "advertising", + "branding" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"young professionals\",\"productName\":\"EcoSip Water Bottle\",\"productFeatures\":[\"BPA-free materials\",\"Keeps drinks cold for 24 hours\",\"Sleek modern design\"],\"tone\":\"friendly\",\"messageLength\":40,\"callToAction\":\"Buy now\"}", + "description": "Generate a friendly marketing message for a water bottle targeting young professionals, about 40 words, with a buy now call to action." + }, + { + "inputJson": "{\"targetAudience\":\"small business owners\",\"productName\":\"QuickBooks Pro 2024\",\"productFeatures\":[\"Easy invoice management\",\"Real-time financial reports\",\"Cloud backup included\"],\"tone\":\"professional\",\"messageLength\":30,\"callToAction\":\"Try it free\"}", + "description": "Create a professional, concise message to promote accounting software to small business owners, including a free trial call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "copywriting.composeFAQ", + "description": "This tool generates a structured FAQ document by composing clear, concise questions and answers based on a provided product or service description, key topics, and user concerns. It accepts textual inputs describing the domain and optional specific questions, then outputs an organized FAQ in JSON or markdown format to assist customer support and marketing.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "Detailed description of the product, service, or topic the FAQ is about.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyTopics", + "type": "array", + "description": "List of main topics or themes to address in the FAQ. Helps focus question generation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "specificQuestions", + "type": "array", + "description": "Optional list of user-provided questions to include or base answers on in the FAQ.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "numberOfQuestions", + "type": "number", + "description": "Desired number of questions in the generated FAQ (max limit applies).", + "required": false, + "defaultValue": "10" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format for the FAQ document: 'json' for structured data or 'markdown' for readable text.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeAnswers", + "type": "boolean", + "description": "Whether to generate answers for the questions as well (true) or only list questions (false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the FAQ document, either structured with questions and answers in JSON or as a markdown string." + }, + "aiAgent": { + "useCase": "Use this tool when you have descriptive information about a product, service, or domain and want to quickly generate a relevant FAQ section for websites, help centers, or marketing materials. It helps produce user-friendly question-and-answer content that addresses common concerns, improving customer engagement and reducing support requests.", + "limitations": "Cannot guarantee complete domain expertise or accuracy; may generate generic or approximate answers without access to up-to-date or proprietary data. The quality depends on input completeness.", + "examples": [ + "Generate an FAQ for a new mobile app based on its feature list.", + "Create FAQ questions focusing on billing and account topics for a SaaS product.", + "Produce a markdown FAQ document from a product description with 15 questions." + ] + }, + "tags": [ + "copywriting", + "FAQ generation", + "customer support", + "marketing", + "documentation", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"Our AI-powered photo editing app offers automatic filtering, object removal, and batch processing.\",\"keyTopics\":[\"features\",\"pricing\",\"usage\"],\"numberOfQuestions\":5,\"outputFormat\":\"json\",\"includeAnswers\":true}", + "description": "Generate a 5-question FAQ with answers in JSON format about an AI photo editing app." + }, + { + "inputJson": "{\"productDescription\":\"Cloud storage service with secure encryption and multi-device sync.\",\"specificQuestions\":[\"How secure is my data?\",\"Can I access files offline?\"],\"outputFormat\":\"markdown\",\"includeAnswers\":true}", + "description": "Create a markdown FAQ including user-supplied questions focusing on security and access for a cloud storage service." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "FAQ", + "context": null + } + }, + { + "name": "copywriting.composeTemplate", + "description": "This tool generates customized marketing and promotional text templates based on user-provided parameters such as target audience, product features, tone, and template type. It processes input preferences to compose structured, ready-to-use copywriting templates for campaigns, emails, ads, or social media posts.", + "category": "copywriting", + "parameters": [ + { + "name": "templateType", + "type": "string", + "description": "The type of copywriting template to generate, such as 'email', 'ad', 'landingPage', or 'socialMediaPost'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the audience segment the template should address, including demographic or psychographic details.", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "A list of key product or service features to highlight within the template.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style of the text, such as 'professional', 'friendly', 'urgent', or 'informative'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "length", + "type": "number", + "description": "Preferred approximate length of the generated template in words. Defaults to 150 if not specified.", + "required": false, + "defaultValue": "150" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call to action phrase to include in the template, e.g., 'Buy Now', 'Sign Up Today'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully composed copywriting template as a string under 'templateContent' field, and metadata such as templateType and wordCount." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate structured marketing copy templates tailored to specific audience segments and product features. Ideal for creating drafts of emails, promotional ads, landing pages, or social posts, providing a clear starting point for further customization.", + "limitations": "This tool cannot replace domain-specific legal or compliance review. It may not perfectly capture highly specialized brand voice nuances without additional adjustment.", + "examples": [ + "Generate a friendly email template targeting millennials highlighting eco-friendly features.", + "Compose a professional ad template for a B2B software product emphasizing security and scalability.", + "Create a short social media post template with an urgent tone and a strong call to action." + ] + }, + "tags": [ + "copywriting", + "marketing", + "template", + "text generation", + "promotional", + "email", + "advertisement", + "social media" + ], + "examples": [ + { + "inputJson": "{\"templateType\":\"email\",\"targetAudience\":\"young professionals aged 25-35 interested in sustainability\",\"productFeatures\":[\"eco-friendly materials\",\"carbon neutral production\",\"durable design\"],\"tone\":\"friendly\",\"length\":200,\"callToAction\":\"Learn More\"}", + "description": "Generate a friendly email template aimed at young, sustainability-conscious professionals emphasizing eco features and including a call to action." + }, + { + "inputJson": "{\"templateType\":\"ad\",\"targetAudience\":\"IT managers in medium-sized companies\",\"productFeatures\":[\"advanced security\",\"scalable architecture\",\"24/7 support\"],\"tone\":\"professional\",\"length\":100,\"callToAction\":\"Request a Demo\"}", + "description": "Create a professional ad template targeting IT managers highlighting security and scalability with a demo request." + }, + { + "inputJson": "{\"templateType\":\"socialMediaPost\",\"targetAudience\":\"fitness enthusiasts\",\"productFeatures\":[\"new workout plans\",\"personalized coaching\"],\"tone\":\"urgent\",\"length\":50,\"callToAction\":\"Sign Up Now\"}", + "description": "Compose a short social media post template with an urgent tone for fitness enthusiasts promoting new plans and coaching." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Template", + "context": null + } + }, + { + "name": "copywriting.composeChecklist", + "description": "Generates a detailed, customized checklist document based on specified marketing or promotional campaign objectives. Takes input parameters defining campaign type, target audience, and key focus areas, then composes a step-by-step checklist to guide copywriting and campaign execution efforts, outputting it as a structured text list.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign (e.g., email, social media, product launch) to tailor the checklist accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Primary audience segment the campaign targets, influencing relevant checklist items.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyFocusAreas", + "type": "array", + "description": "List of focus areas or goals for the campaign (e.g., brand awareness, lead generation), guiding checklist composition.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeBestPractices", + "type": "boolean", + "description": "Whether to add best practice tips for copywriting and campaign execution in the checklist.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language for the checklist content (e.g., English, Spanish).", + "required": false, + "defaultValue": "English" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed checklist as a structured array of steps and optional notes tailored to the campaign." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to help craft a focused and actionable checklist for marketing copywriting efforts, ensuring all critical tasks and considerations are included to improve campaign success and consistency.", + "limitations": "This tool cannot perform the actual copywriting of campaign text or validate the effectiveness of the checklist items; it generates structured guidance only.", + "examples": [ + "Compose a checklist for a social media product launch campaign targeting millennials.", + "Create a marketing checklist focused on lead generation email campaigns including best practices.", + "Generate a checklist for a brand awareness campaign in Spanish with focus on social media posts." + ] + }, + "tags": [ + "copywriting", + "checklist", + "marketing", + "campaign", + "promotional content", + "guidance", + "planning" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"targetAudience\":\"small business owners\",\"keyFocusAreas\":[\"lead generation\",\"customer retention\"],\"includeBestPractices\":true,\"language\":\"English\"}", + "description": "Checklist for an email campaign focused on lead generation and customer retention for small business owners." + }, + { + "inputJson": "{\"campaignType\":\"social media\",\"targetAudience\":\"millennials\",\"keyFocusAreas\":[\"brand awareness\"],\"includeBestPractices\":false,\"language\":\"English\"}", + "description": "Checklist for a social media campaign targeting millennials focusing on brand awareness without best practices tips." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Checklist", + "context": null + } + }, + { + "name": "copywriting.composeBrief", + "description": "Generates a comprehensive marketing brief based on product details, target audience, key messages, and campaign goals. Accepts structured inputs describing the product/service, audience personas, and marketing objectives. Outputs a clear, concise brief to guide campaign creation and strategy alignment.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to be marketed.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "Detailed description of the product or service including features and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or customer personas.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMessages", + "type": "array", + "description": "List of important key messages or value propositions to include in the brief.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "campaignGoals", + "type": "string", + "description": "Main objectives and goals of the marketing campaign (e.g., raise awareness, increase sales).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style for the brief (e.g., formal, friendly, persuasive).", + "required": false, + "defaultValue": "Professional" + }, + { + "name": "deadline", + "type": "string", + "description": "Deadline for the campaign or brief completion (ISO date string).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed marketing brief as a formatted string." + }, + "aiAgent": { + "useCase": "Use this tool when a concise, structured marketing brief is needed to align marketing teams, agencies, or content creators around product details, audience targeting, messaging, and campaign goals. It speeds briefing creation from raw inputs, ensuring clarity and completeness.", + "limitations": "This tool does not replace strategic marketing planning or detailed market research; it synthesizes input data into a brief but relies on quality and completeness of inputs for best output.", + "examples": [ + "Compose a marketing brief for a new organic skincare line targeting young adults emphasizing eco-friendliness and gentle ingredients.", + "Generate a promotional campaign brief for a SaaS product focused on improving team collaboration, with a professional and persuasive tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "brief", + "content creation", + "campaign planning" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoGlow Skincare\",\"productDescription\":\"A line of organic, eco-friendly skincare products made with gentle natural ingredients, designed for sensitive skin.\",\"targetAudience\":\"Young adults aged 18-30, environmentally conscious, interested in health and wellness.\",\"keyMessages\":[\"100% organic ingredients\",\"Eco-friendly packaging\",\"Gentle on sensitive skin\"],\"campaignGoals\":\"Increase brand awareness among young adults, drive online sales through social media.\",\"tone\":\"friendly\",\"deadline\":\"2024-09-30\"}", + "description": "Create a marketing brief for an organic skincare line focusing on eco-conscious young adults." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Brief", + "context": null + } + }, + { + "name": "copywriting.composeSummary", + "description": "This tool accepts a detailed document or text content as input and composes a clear, concise summary tailored for marketing or promotional purposes. It processes the key points, highlights benefits, and outputs a well-structured summary suitable for use in marketing materials or executive briefs.", + "category": "copywriting", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The full text or document content to be summarized. Required for generating the summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the summary in words. Limits the output to a concise size.", + "required": false, + "defaultValue": "100" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the summary, e.g., professional, casual, enthusiastic. Adjusts style accordingly.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "List of keywords or phrases to emphasize in the summary if present in the input text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "audience", + "type": "string", + "description": "Intended audience for the summary, such as investors, customers, or internal teams. Tailors language and focus.", + "required": false, + "defaultValue": "general" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed summary text as 'summaryText' and metadata such as 'wordCount' and 'toneUsed'." + }, + "aiAgent": { + "useCase": "Use this tool when you need a marketing-oriented summary of a longer document, to quickly produce promotional or executive summaries emphasizing key benefits and features, tailored by tone and audience.", + "limitations": "This tool does not perform in-depth text analysis beyond summarization and marketing emphasis; it may omit highly technical details and is not suitable for legal or highly technical summarizations.", + "examples": [ + "Summarize a product brochure into a professional marketing summary under 100 words.", + "Generate an enthusiastic summary of a service description highlighting its unique features for potential customers.", + "Create a concise executive summary for investors emphasizing business growth metrics." + ] + }, + "tags": [ + "copywriting", + "summary", + "marketing", + "promotion", + "document", + "text", + "content", + "compose" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Our new eco-friendly water bottle is made from 100% recycled materials and features an innovative design that keeps beverages cold for 24 hours. Perfect for outdoor enthusiasts and environmentally conscious consumers.\",\"maxLength\":80,\"tone\":\"enthusiastic\",\"highlightKeywords\":[\"eco-friendly\",\"innovative design\"],\"audience\":\"customers\"}", + "description": "Compose an enthusiastic marketing summary for customers highlighting eco-friendliness and innovative design." + }, + { + "inputJson": "{\"inputText\":\"The quarterly report details a 25% increase in revenue and successful market expansion in three new countries, driven by our latest product launch and targeted marketing campaigns.\",\"maxLength\":100,\"tone\":\"professional\",\"audience\":\"investors\"}", + "description": "Generate a professional executive summary for investors focusing on growth and expansion." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "copywriting.composeDocument", + "description": "This tool generates a customized marketing or promotional document based on user inputs including topic, target audience, document type, tone, length, and key messages. It processes the inputs to create coherent, persuasive text tailored for advertising or promotional purposes, outputting the final composed document as a string.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or product for the document to promote or describe.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the document, defining style and content focus.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of document to compose, such as flyer, brochure, email, or webpage content.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of voice for the document, e.g., formal, casual, enthusiastic, professional.", + "required": false, + "defaultValue": "\"professional\"" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the document in words.", + "required": false, + "defaultValue": "300" + }, + { + "name": "keyMessages", + "type": "array", + "description": "Array of key points or benefits to emphasize in the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "callToAction", + "type": "string", + "description": "The call-to-action phrase or instruction to include at the document's end.", + "required": false, + "defaultValue": "\"Contact us today!\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed document text as a string and metadata about the document." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate professional marketing or promotional content quickly for a specific topic and audience. It helps automate copywriting tasks by producing tailored documents such as flyers, brochures, or emails based on user guidance about tone, length, and key messages.", + "limitations": "Cannot create highly specialized technical manuals or legal documents; may require human editing for accuracy and adherence to brand voice; does not generate images or multimedia content.", + "examples": [ + "Compose a brochure for a new eco-friendly water bottle targeting young adults with an enthusiastic tone.", + "Create a concise professional email promoting a software subscription service aimed at small business owners.", + "Write a flyer describing a summer sale event for a local bookstore, emphasizing discounts and inviting customers to visit." + ] + }, + "tags": [ + "copywriting", + "marketing", + "document generation", + "promotional content", + "advertising", + "content creation", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"eco-friendly water bottle\",\"targetAudience\":\"young adults\",\"documentType\":\"brochure\",\"tone\":\"enthusiastic\",\"length\":400,\"keyMessages\":[\"sustainable materials\",\"keeps water cold 24 hours\",\"stylish and durable\"],\"callToAction\":\"Buy yours today!\"}", + "description": "Compose an enthusiastic brochure promoting an eco-friendly water bottle to young adults." + }, + { + "inputJson": "{\"topic\":\"software subscription service\",\"targetAudience\":\"small business owners\",\"documentType\":\"email\",\"tone\":\"professional\",\"length\":250,\"keyMessages\":[\"affordable pricing\",\"24/7 customer support\",\"easy setup\"],\"callToAction\":\"Sign up now and boost your business.\"}", + "description": "Generate a professional and concise email for a software service targeting small business owners." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "copywriting.composeEmail", + "description": "Generates a professional marketing or promotional email based on given inputs such as target audience, product or service details, tone, and call-to-action. Accepts structured information to create a customized email body ready for distribution.", + "category": "copywriting", + "parameters": [ + { + "name": "recipientType", + "type": "string", + "description": "The target audience for the email (e.g., \"new customers\", \"subscribers\", \"partners\").", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Name of the product or service the email is promoting.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "Brief description of the product or service highlighting key features and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone style of the email such as formal, casual, friendly, or persuasive.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "callToAction", + "type": "string", + "description": "Desired action for recipients, e.g., \"Buy Now\", \"Sign Up\", \"Learn More\".", + "required": true, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the sender or company to appear in the email signature.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDiscount", + "type": "boolean", + "description": "Whether to include a discount or special offer in the email.", + "required": false, + "defaultValue": "false" + }, + { + "name": "discountDetails", + "type": "string", + "description": "Details about the discount or offer to include when includeDiscount is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email components including subject, body text, and optional signature." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a well-structured marketing or promotional email crafted for a specific audience and product, saving time over manual writing and ensuring consistent messaging. It works well when given clear product info and target user data.", + "limitations": "This tool cannot send emails or perform recipient list management. It may not perfectly capture highly specialized product details without precise input. Tone and style are limited to common categories.", + "examples": [ + "Compose a promotional email for new customers introducing a new software product with a friendly tone and a call to action to sign up for a trial.", + "Write a marketing email targeting existing subscribers offering a 20% discount on a seasonal product with a formal tone.", + "Generate a casual email to partners announcing a new collaboration feature inviting them to learn more." + ] + }, + "tags": [ + "copywriting", + "email", + "marketing", + "promotional", + "compose", + "business" + ], + "examples": [ + { + "inputJson": "{\"recipientType\":\"new customers\",\"productName\":\"SmartHome Security System\",\"productDescription\":\"an advanced, easy-to-install security system with 24/7 monitoring and mobile alerts\",\"tone\":\"friendly\",\"callToAction\":\"Sign up for a free trial\",\"senderName\":\"SafeHome Inc.\",\"includeDiscount\":true,\"discountDetails\":\"20% off your first purchase\"}", + "description": "Generate a friendly marketing email for new customers about a security product with discount and call to action." + }, + { + "inputJson": "{\"recipientType\":\"subscribers\",\"productName\":\"EcoFriendly Water Bottle\",\"productDescription\":\"a reusable bottle made from 100% recycled materials, BPA-free and insulated\",\"tone\":\"formal\",\"callToAction\":\"Buy Now\",\"senderName\":\"GreenLife Corp.\",\"includeDiscount\":false,\"discountDetails\":\"\"}", + "description": "Create a formal email for subscribers promoting an eco-friendly product with a call to purchase but no discount." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "copywriting.composeMinutes", + "description": "This tool generates professional meeting minutes from an input summary or transcription. It accepts key discussion points, decisions, action items, and attendee information, then composes a clear, structured minutes document suitable for sharing with stakeholders.", + "category": "copywriting", + "parameters": [ + { + "name": "meetingTitle", + "type": "string", + "description": "Title or subject of the meeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Date of the meeting in YYYY-MM-DD format.", + "required": true, + "defaultValue": "" + }, + { + "name": "attendees", + "type": "array", + "description": "List of attendees' names.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "summaryPoints", + "type": "array", + "description": "Key discussion points or notes from the meeting.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "decisions", + "type": "array", + "description": "Decisions made during the meeting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "actionItems", + "type": "array", + "description": "List of action items including task description and assignee.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any other important notes or remarks to include.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed minutes as a formatted string document and a structured summary of key elements such as attendees, decisions, and action items." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert informal meeting summaries, transcripts, or notes into a polished, professional set of meeting minutes that can be easily reviewed and distributed. It helps save time and ensures consistency in documenting meetings for project management or organizational record-keeping.", + "limitations": "It does not transcribe audio or video content and relies on accurate input data. It cannot infer missing details or verify facts beyond the supplied input.", + "examples": [ + "Generate minutes for a project kickoff meeting including attendees, main discussion points, decisions, and tasks assigned.", + "Create a formal minutes document based on summarized notes from a weekly team meeting.", + "Compose minutes from a client meeting, highlighting agreements, follow-up actions, and participant list." + ] + }, + "tags": [ + "copywriting", + "meeting", + "minutes", + "document", + "summary", + "professional", + "business", + "notes" + ], + "examples": [ + { + "inputJson": "{\"meetingTitle\":\"Project Kickoff Meeting\",\"date\":\"2024-06-05\",\"attendees\":[\"Alice Johnson\",\"Bob Smith\",\"Carol Lee\"],\"summaryPoints\":[\"Project scope and goals discussed\",\"Timeline and milestones set\",\"Budget preliminary agreed\"],\"decisions\":[\"Approved project timeline\",\"Decided on weekly status meetings\"],\"actionItems\":[{\"task\":\"Prepare project plan draft\",\"assignee\":\"Alice Johnson\"},{\"task\":\"Set up project repository\",\"assignee\":\"Bob Smith\"}],\"additionalNotes\":\"Next meeting scheduled for June 12.\"}", + "description": "Minutes generation for a typical kickoff meeting with key points, decisions, and assigned tasks." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Minutes", + "context": null + } + }, + { + "name": "copywriting.composeTranscript", + "description": "This tool generates a coherent and professionally written transcript from raw audio or video content summaries, notes, or bullet points. It processes input text descriptions and produces a polished, readable transcript suitable for publishing or internal record-keeping.", + "category": "copywriting", + "parameters": [ + { + "name": "contentSummary", + "type": "string", + "description": "A detailed summary or notes extracted from the audio or video content to be transformed into a transcript.", + "required": true, + "defaultValue": "" + }, + { + "name": "speakerNames", + "type": "array", + "description": "An optional list of speaker names to assign to different parts of the transcript, enhancing clarity and structure.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps at appropriate intervals within the transcript for reference.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tone", + "type": "string", + "description": "The tonal style in which to compose the transcript, e.g., formal, conversational, technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "language", + "type": "string", + "description": "Language code specifying the language of the transcript output, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully composed transcript text, optionally with structured speaker labels and timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when you have a summary, notes, or partial raw text from an audio or video recording and need a clean, well-structured transcript for documentation, publishing, or review. Ideal when the raw input is not a direct transcription but requires composition into a natural, readable transcript format.", + "limitations": "Cannot generate transcripts from raw audio or video files directly; input must already be a text summary or notes. May not perfectly capture exact spoken words if input summaries lack detail or accuracy.", + "examples": [ + "Compose a formal transcript from provided meeting notes assigning speakers and including timestamps.", + "Generate a conversational-style transcript from interview bullet points in English.", + "Create an English transcript from summarized seminar content without timestamps." + ] + }, + "tags": [ + "copywriting", + "transcript", + "text composition", + "document", + "speech", + "summarization", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"contentSummary\":\"Introduction by John Doe discussing quarterly goals. Jane Smith responds with updates on marketing campaigns.\",\"speakerNames\":[\"John Doe\",\"Jane Smith\"],\"includeTimestamps\":true,\"tone\":\"formal\",\"language\":\"en\"}", + "description": "Compose a formal transcript with speaker labels and timestamps from a meeting summary." + }, + { + "inputJson": "{\"contentSummary\":\"Q&A session highlights covering product features and user feedback.\",\"speakerNames\":[],\"includeTimestamps\":false,\"tone\":\"conversational\",\"language\":\"en\"}", + "description": "Generate a conversational transcript from summarized Q&A highlights without speaker names or timestamps." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Transcript", + "context": null + } + }, + { + "name": "copywriting.composeBlogPost", + "description": "Generates a detailed and engaging blog post based on the provided topic, target audience, desired tone, and length. The tool processes input parameters to create structured content including introduction, body sections, and conclusion, optimized for readability and audience engagement.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the blog post to be written.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers or specific demographic for the blog post.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired writing style or tone such as professional, casual, informative, or persuasive.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the blog post measured in number of words.", + "required": false, + "defaultValue": "800" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords to include in the blog post for SEO or emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call to action at the end of the post.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed blog post text, including optional sections like introduction, body, and conclusion." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a comprehensive and tailored blog post from minimal input such as topic and audience details. It is ideal for marketing content creation, SEO blogs, and informational posts that require clear structure and engaging language.", + "limitations": "This tool cannot provide real-time trending data or verify factual correctness beyond its training data. It also does not replace expert domain-specific knowledge or personalized editorial judgment.", + "examples": [ + "Write a 1000-word blog post about sustainable travel for environmentally conscious millennial travelers, with an informative tone and SEO keywords: eco-friendly, travel tips, green tourism.", + "Create a casual blog post introducing a new tech gadget aimed at early adopters, approximately 700 words, including a persuasive tone and call to action.", + "Generate a 500-word professional blog article on financial planning for retirement targeting middle-aged professionals, emphasizing trust and reliability." + ] + }, + "tags": [ + "copywriting", + "blog", + "marketing", + "content-creation", + "SEO", + "writing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work for businesses\",\"targetAudience\":\"HR managers and business leaders\",\"tone\":\"professional\",\"length\":900,\"keywords\":[\"remote work\",\"productivity\",\"employee satisfaction\"],\"includeCallToAction\":true}", + "description": "Generate a professional 900-word blog post for HR managers highlighting the benefits of remote work, including relevant keywords and a call to action." + }, + { + "inputJson": "{\"topic\":\"Top 10 healthy smoothie recipes\",\"targetAudience\":\"health-conscious millennials\",\"tone\":\"casual\",\"length\":600,\"keywords\":[\"smoothies\",\"healthy recipes\",\"nutrition\"],\"includeCallToAction\":false}", + "description": "Create a casual 600-word blog post targeting millennials interested in health, listing popular smoothie recipes without a call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "BlogPost", + "context": null + } + }, + { + "name": "copywriting.composeReport", + "description": "Generates a structured report based on given data and topics. It accepts parameters for report type, target audience, key points, and formatting style, then composes a comprehensive textual report outline or full text tailored to the specified context.", + "category": "copywriting", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "The kind of report to generate, such as 'market analysis', 'project status', 'financial summary'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended readers of the report, e.g., 'executives', 'clients', 'technical team'. This guides tone and complexity.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "A list of key points or data items that must be covered or emphasized in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the report in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "tone", + "type": "string", + "description": "The style or tone of writing, e.g., 'formal', 'informative', 'persuasive'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section at the start of the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Preferred formatting style or template, such as 'APA', 'bullet points', or 'narrative'.", + "required": false, + "defaultValue": "narrative" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed report text and optional metadata like section breakdown." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate structured, professional reports tailored to specific audiences and report types, incorporating provided key points or data. Ideal for business, marketing, project management, or financial contexts requiring clear, targeted communication.", + "limitations": "The tool cannot analyze raw data or generate actual charts/tables from numeric input; it relies on provided key points and textual input. Content accuracy depends on the quality and clarity of the input parameters.", + "examples": [ + "Generate a market analysis report for executives highlighting the recent sales growth and competitor activity.", + "Compose a project status report for the technical team focusing on completed milestones and upcoming risks.", + "Create a financial summary report for clients summarizing quarterly earnings and investment performance." + ] + }, + "tags": [ + "copywriting", + "report", + "business", + "marketing", + "professional writing", + "document generation" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"market analysis\",\"targetAudience\":\"executives\",\"keyPoints\":[\"Q1 sales increased by 15%\",\"Competitor X launched a new product\",\"Market trends show rising demand for green solutions\"],\"length\":1200,\"tone\":\"formal\",\"includeSummary\":true,\"formatStyle\":\"narrative\"}", + "description": "Generate a formal market analysis report for executives with specified key points and summary." + }, + { + "inputJson": "{\"reportType\":\"project status\",\"targetAudience\":\"technical team\",\"keyPoints\":[\"Phase 1 completed\",\"Bug backlog reduced by 40%\",\"Risks include potential delays in supplier delivery\"],\"length\":800,\"tone\":\"informative\",\"includeSummary\":false,\"formatStyle\":\"bullet points\"}", + "description": "Compose an informative project status report in bullet points style, no summary, targeting technical team." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "copywriting.generateHeading", + "description": "Generates compelling and targeted marketing headings based on provided product or campaign details. Accepts inputs such as product name, key benefits, target audience, and tone to produce a concise, engaging heading suitable for promotional materials or websites.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to feature in the heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyBenefits", + "type": "array", + "description": "List of main benefits or features of the product; helps tailor the heading content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target customer segment for the heading to appeal to.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the heading, e.g., professional, casual, urgent, friendly.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length allowed for the heading to ensure brevity.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when marketing headings are needed that resonate with a specific audience and highlight key product benefits. It aids in quickly creating engaging headlines for websites, ads, or emails tailored to tone and length constraints.", + "limitations": "Cannot produce long-form content or guarantee headline effectiveness without human review; dependent on input quality and specificity.", + "examples": [ + "Generate a catchy heading for a vegan skincare product targeting millennials with a friendly tone.", + "Create a professional heading highlighting the security features of a new software for enterprise clients." + ] + }, + "tags": [ + "copywriting", + "marketing", + "heading", + "content generation", + "branding", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoClean Detergent\",\"keyBenefits\":[\"biodegradable\",\"hypoallergenic\",\"effective stain removal\"],\"targetAudience\":\"environmentally conscious families\",\"tone\":\"friendly\",\"maxLength\":50}", + "description": "Generate a friendly, concise headline for an eco-friendly household detergent targeting families." + }, + { + "inputJson": "{\"productName\":\"SecureVault 360\",\"keyBenefits\":[\"enterprise-grade encryption\",\"real-time monitoring\"],\"targetAudience\":\"corporate security officers\",\"tone\":\"professional\",\"maxLength\":60}", + "description": "Create a professional heading emphasizing security features for an enterprise software product." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "copywriting.composeArticle", + "description": "Generates a complete article based on given topics, target audience, tone, and length preferences. Accepts input parameters that guide the content style, subject focus, and structure, then produces a well-formed article draft suitable for marketing, educational, or informational purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or theme of the article to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers to tailor tone and complexity (e.g., general public, professionals).", + "required": false, + "defaultValue": "general public" + }, + { + "name": "tone", + "type": "string", + "description": "Writing tone or style such as formal, casual, persuasive, or neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired article length measured in words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "keywords", + "type": "array", + "description": "List of specific keywords or phrases to be included in the article for SEO or emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSections", + "type": "array", + "description": "Optional sections to structure the article, e.g., introduction, benefits, conclusion.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code to specify the article's language (default is English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed article text and metadata such as word count and sections." + }, + "aiAgent": { + "useCase": "Use this tool whenever a detailed article draft is needed quickly based on a defined topic and style. Useful for content marketing, blogging, educational resources, or product descriptions where tailored, ready-to-edit content accelerates writing processes.", + "limitations": "The tool does not provide verified facts or references; content should be reviewed for factual accuracy and customized for brand voice. It may not generate highly specialized technical or legal documentation reliably.", + "examples": [ + "Compose an article on renewable energy targeting environmentally conscious readers in a persuasive tone around 800 words.", + "Create a casual style article about beginner fitness tips for general audiences with key phrases provided.", + "Write a neutral tone article in English about the benefits of meditation structured with introduction, benefits, and conclusion sections." + ] + }, + "tags": [ + "copywriting", + "article generation", + "content creation", + "marketing", + "SEO", + "writing assistant", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work\",\"targetAudience\":\"corporate employees\",\"tone\":\"professional\",\"length\":700,\"keywords\":[\"remote work\",\"productivity\",\"flexibility\"],\"includeSections\":[\"introduction\",\"main benefits\",\"challenges\",\"conclusion\"],\"language\":\"en\"}", + "description": "Generate a professional article on remote work benefits and challenges aimed at corporate employees." + }, + { + "inputJson": "{\"topic\":\"Healthy cooking tips\",\"tone\":\"casual\",\"length\":400,\"keywords\":[\"healthy cooking\",\"quick meals\"],\"language\":\"en\"}", + "description": "Compose a casual, 400-word article with tips on healthy and quick cooking." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "copywriting.generateCitation", + "description": "Generates a properly formatted citation string based on provided source details and requested citation style. Accepts bibliographic information such as author(s), title, publication date, source type, and outputs a citation conforming to styles like APA, MLA, or Chicago.", + "category": "copywriting", + "parameters": [ + { + "name": "authors", + "type": "array", + "description": "List of authors in the format 'LastName, FirstName'. Multiple authors allowed.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the work or article to be cited.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationDate", + "type": "string", + "description": "Publication date of the source, preferably in YYYY or YYYY-MM-DD format.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of source such as book, journal article, website, or conference paper.", + "required": true, + "defaultValue": "" + }, + { + "name": "publisher", + "type": "string", + "description": "Name of the publisher, journal, or website where the source was published.", + "required": false, + "defaultValue": "" + }, + { + "name": "volume", + "type": "string", + "description": "Volume number if applicable (commonly for journals).", + "required": false, + "defaultValue": "" + }, + { + "name": "issue", + "type": "string", + "description": "Issue number if applicable (commonly for journals).", + "required": false, + "defaultValue": "" + }, + { + "name": "pages", + "type": "string", + "description": "Page range of the article or chapter if applicable, e.g., '23-45'.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL of the source if it is accessed online.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style to use for formatting (e.g., APA, MLA, Chicago).", + "required": true, + "defaultValue": "APA" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted citation string and the citation style used, enabling direct inclusion in documents or references sections." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate accurate and properly formatted citations from raw bibliographic data to support documentation, academic writing, or marketing collateral. It streamlines citation creation tailored to common styles, ensuring consistency and saving time for content creators or researchers.", + "limitations": "This tool cannot verify the accuracy or existence of the source information provided; it depends entirely on input correctness. It may not support niche or newly introduced citation styles beyond the common ones specified.", + "examples": [ + "Generate an APA citation for a journal article with multiple authors", + "Create an MLA citation for a book with a single author", + "Produce a Chicago style citation for an online article with URL" + ] + }, + "tags": [ + "copywriting", + "citation", + "bibliography", + "formatting", + "academic", + "reference" + ], + "examples": [ + { + "inputJson": "{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Innovations in AI\",\"publicationDate\":\"2022\",\"sourceType\":\"journal article\",\"publisher\":\"Journal of AI Research\",\"volume\":\"15\",\"issue\":\"4\",\"pages\":\"100-120\",\"url\":\"\",\"citationStyle\":\"APA\"}", + "description": "Generate an APA citation for a journal article with two authors." + }, + { + "inputJson": "{\"authors\":[\"Brown, Lisa\"],\"title\":\"Marketing Strategies 101\",\"publicationDate\":\"2019\",\"sourceType\":\"book\",\"publisher\":\"Business Press\",\"volume\":\"\",\"issue\":\"\",\"pages\":\"\",\"url\":\"\",\"citationStyle\":\"MLA\"}", + "description": "Generate an MLA citation for a book with one author." + }, + { + "inputJson": "{\"authors\":[\"Nguyen, Alex\"],\"title\":\"How to optimize SEO\",\"publicationDate\":\"2020-05-10\",\"sourceType\":\"website\",\"publisher\":\"SEO Experts Blog\",\"volume\":\"\",\"issue\":\"\",\"pages\":\"\",\"url\":\"https://seoexpertblog.com/optimize-seo\",\"citationStyle\":\"Chicago\"}", + "description": "Generate a Chicago style citation for an online article with a URL." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Citation", + "context": null + } + }, + { + "name": "copywriting.generateReference", + "description": "Generates a professional and effective reference letter or testimonial based on input details about the referee, relationship, purpose, and key qualities or achievements to highlight. Accepts structured input to tailor tone and content, producing a well-formed textual reference suitable for job applications, academic recommendations, or other formal endorsements.", + "category": "copywriting", + "parameters": [ + { + "name": "refereeName", + "type": "string", + "description": "Full name of the person writing the reference letter.", + "required": true, + "defaultValue": "" + }, + { + "name": "refereePosition", + "type": "string", + "description": "Job position or title of the referee to add credibility (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "refereeOrganization", + "type": "string", + "description": "Organization or company the referee is associated with.", + "required": false, + "defaultValue": "" + }, + { + "name": "candidateName", + "type": "string", + "description": "Full name of the person being recommended or referenced.", + "required": true, + "defaultValue": "" + }, + { + "name": "relationship", + "type": "string", + "description": "Description of the relationship between referee and candidate (e.g., supervisor, professor).", + "required": true, + "defaultValue": "" + }, + { + "name": "referencePurpose", + "type": "string", + "description": "Purpose of the reference letter (e.g., job application, academic program).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyQualities", + "type": "array", + "description": "Array of key qualities, skills, or achievements of the candidate to emphasize.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the letter (e.g., formal, enthusiastic, neutral).", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reference letter text as a string with formatted paragraphs." + }, + "aiAgent": { + "useCase": "When an AI agent needs to assist users in generating tailored reference or recommendation letters quickly by structuring relevant input details about the candidate and referee. Useful in HR, academic, or professional settings.", + "limitations": "Cannot verify factual accuracy or authenticity; does not generate legal or notarized documents; limited to text generation and does not customize formatting beyond paragraph structure.", + "examples": [ + "Generate a job reference letter for an employee named John Doe from his supervisor Jane Smith to support a software engineering position.", + "Create an academic recommendation letter for a student applying to a graduate program highlighting leadership and research skills." + ] + }, + "tags": [ + "copywriting", + "referenceLetter", + "recommendation", + "testimonial", + "professionalWriting", + "HR", + "academic" + ], + "examples": [ + { + "inputJson": "{\"refereeName\":\"Jane Smith\",\"refereePosition\":\"Senior Manager\",\"refereeOrganization\":\"Tech Innovations Ltd.\",\"candidateName\":\"John Doe\",\"relationship\":\"direct supervisor for 3 years\",\"referencePurpose\":\"job application for software engineer role\",\"keyQualities\":[\"strong coding skills\",\"team leadership\",\"problem solving\"],\"tone\":\"formal\"}", + "description": "Generate a formal reference letter from a supervisor for a candidate applying for a software engineer position." + }, + { + "inputJson": "{\"refereeName\":\"Dr. Alice Johnson\",\"refereePosition\":\"Professor of Chemistry\",\"refereeOrganization\":\"State University\",\"candidateName\":\"Mary Lee\",\"relationship\":\"thesis advisor\",\"referencePurpose\":\"graduate school admission\",\"keyQualities\":[\"research skills\",\"academic excellence\",\"critical thinking\"],\"tone\":\"enthusiastic\"}", + "description": "Create an enthusiastic academic recommendation letter for a student applying to graduate school." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "copywriting.generateParagraph", + "description": "Generates a marketing or promotional paragraph based on provided product or service details, target audience, tone, and key features. The tool processes input parameters to produce a coherent, persuasive paragraph tailored to specified style and purpose, suitable for use in advertisements, websites, or brochures.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to feature in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience or customer persona for whom the paragraph is intended.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of main features or benefits to highlight in the paragraph.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of writing (e.g., enthusiastic, formal, friendly).", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "paragraphLength", + "type": "number", + "description": "Approximate length of paragraph in sentences (1 to 5).", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing paragraph as a string." + }, + "aiAgent": { + "useCase": "Use this tool when the goal is to create compelling, customized marketing paragraphs for products or services based on input features and audience characteristics. Ideal to quickly generate promotional text in various tones for websites, brochures, or ads.", + "limitations": "Cannot verify factual accuracy of features nor replace in-depth copywriting strategies requiring market research or brand voice guidelines.", + "examples": [ + "Generate a friendly paragraph highlighting eco-friendly features of a reusable water bottle for health-conscious adults.", + "Create a formal paragraph describing the benefits of an enterprise software for IT managers.", + "Write an enthusiastic short paragraph promoting a new smartphone to young tech-savvy consumers." + ] + }, + "tags": [ + "copywriting", + "marketing", + "content generation", + "promotional text", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoSipper Reusable Water Bottle\",\"targetAudience\":\"health-conscious adults who care about the environment\",\"keyFeatures\":[\"leak-proof lid\",\"made from recycled materials\",\"keeps drinks cold for 24 hours\"],\"tone\":\"friendly\",\"paragraphLength\":3}", + "description": "Generate a friendly marketing paragraph for an eco-friendly water bottle targeting health-conscious adults." + }, + { + "inputJson": "{\"productName\":\"SecureIT Enterprise Software\",\"targetAudience\":\"IT managers in large corporations\",\"keyFeatures\":[\"real-time threat monitoring\",\"compliance reporting\",\"easy integration with existing systems\"],\"tone\":\"formal\",\"paragraphLength\":4}", + "description": "Create a formal promotional paragraph for an IT security software aimed at enterprise IT managers." + }, + { + "inputJson": "{\"productName\":\"XPhone Ultra 2024\",\"targetAudience\":\"young tech-savvy consumers\",\"keyFeatures\":[\"120MP camera\",\"5G connectivity\",\"ultra-fast processor\"],\"tone\":\"enthusiastic\",\"paragraphLength\":2}", + "description": "Write an enthusiastic short paragraph promoting a new smartphone to young consumers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "copywriting.generateQuote", + "description": "Generates creative and compelling marketing quotes based on input themes, tones, and target audiences. Accepts keywords or topics and optional stylistic preferences, then produces a ready-to-use promotional quote string tailored for advertising or social media campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "The main subject or theme the quote should be about, e.g., innovation, customer service, health.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the quote, such as inspirational, humorous, professional, or casual.", + "required": false, + "defaultValue": "inspirational" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The demographic or group the quote is intended to resonate with, e.g., millennials, entrepreneurs, fitness enthusiasts.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "The preferred maximum length of the quote in characters, to fit different platforms.", + "required": false, + "defaultValue": "140" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a subtle call to action in the quote.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing quote text." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to generate short, effective marketing or promotional quotes tailored to specific themes and audiences, suitable for use in advertisements, social media posts, or branding materials. It streamlines quote creation ensuring engagement and relevance.", + "limitations": "The tool cannot generate highly specialized domain-specific quotes without general context; it may not perfectly match niche jargon or guaranteed trademarked slogans.", + "examples": [ + "Generate an inspirational quote about sustainability for eco-conscious consumers.", + "Create a humorous quote about coffee targeting office workers.", + "Produce a concise professional quote promoting teamwork for a corporate newsletter." + ] + }, + "tags": [ + "copywriting", + "marketing", + "quote generation", + "advertising", + "social media", + "branding" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"innovation\",\"tone\":\"inspirational\",\"targetAudience\":\"entrepreneurs\",\"length\":120,\"includeCallToAction\":true}", + "description": "Generate an inspirational innovation quote with a call to action for entrepreneurs." + }, + { + "inputJson": "{\"theme\":\"fitness\",\"tone\":\"motivational\",\"targetAudience\":\"fitness enthusiasts\",\"length\":100,\"includeCallToAction\":false}", + "description": "Generate a motivational fitness quote for fitness enthusiasts without call to action." + }, + { + "inputJson": "{\"theme\":\"customer service\",\"tone\":\"professional\",\"targetAudience\":\"business owners\",\"length\":140,\"includeCallToAction\":true}", + "description": "Create a professional customer service quote for business owners including a call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "copywriting.generateConversion", + "description": "Generates persuasive, conversion-focused marketing copy based on provided product or service details, target audience characteristics, desired call-to-action, and optional tone or style preferences. Processes inputs to produce effective text aiming to improve reader engagement and drive measurable conversion actions.", + "category": "copywriting", + "parameters": [ + { + "name": "productOrServiceDescription", + "type": "string", + "description": "Detailed description of the product or service to promote, including key features and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience including demographics, interests, and pain points.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "Desired action you want readers to take after reading the copy, e.g., sign up, buy now, request a demo.", + "required": true, + "defaultValue": "" + }, + { + "name": "toneStyle", + "type": "string", + "description": "Optional tone or style for the copy such as friendly, professional, urgent, or enthusiastic.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length in words of the generated copy. Defaults to 100 words if not specified.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated conversion copy as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create compelling, persuasive marketing text aimed at converting readers into customers or leads based on structured inputs describing the offer and audience. It helps generate custom sales copy for websites, ads, emails, or social media posts tailored to specific marketing goals.", + "limitations": "Cannot guarantee actual conversion performance as effectiveness depends on real-world testing and market variables. Generated copy may require human review for compliance, brand alignment, and nuance.", + "examples": [ + "Generate a promotional paragraph for a new fitness app targeting busy professionals encouraging them to sign up for a free trial.", + "Create a Facebook ad copy for an eco-friendly cleaning product aimed at environmentally conscious millennials to buy now.", + "Draft an email invite for a webinar about cloud security targeting IT managers with a professional tone and urging registration." + ] + }, + "tags": [ + "copywriting", + "marketing", + "conversion", + "advertising", + "content generation", + "sales", + "AI writing" + ], + "examples": [ + { + "inputJson": "{\"productOrServiceDescription\":\"A productivity app that streamlines task management with AI reminders and collaboration features.\",\"targetAudience\":\"Young professionals aged 25-35 who struggle with managing multiple projects.\",\"callToAction\":\"Download the app today and get a 7-day free trial.\",\"toneStyle\":\"motivational\",\"length\":120}", + "description": "Generate motivational copy for a productivity app targeting young professionals encouraging download and free trial." + }, + { + "inputJson": "{\"productOrServiceDescription\":\"Organic skincare line made from all-natural ingredients suitable for sensitive skin.\",\"targetAudience\":\"Health-conscious women aged 30-50 looking for gentle, eco-friendly skincare.\",\"callToAction\":\"Shop now and enjoy a 20% discount.\",\"toneStyle\":\"friendly\",\"length\":90}", + "description": "Generate friendly and appealing ad copy for organic skincare aimed at health-conscious women to drive immediate sales." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "copywriting.generateText", + "description": "Generates marketing and promotional text content based on input parameters such as target audience, product description, tone, and desired text length. It processes input details to create tailored and engaging copy suitable for advertising, websites, or social media posts.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "A detailed description of the product or service to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience or customer segment for the text.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style of the text (e.g., casual, professional, persuasive).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "textLength", + "type": "number", + "description": "Approximate length of the generated text in words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action phrase or sentence to include at the end of the text.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing text content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce clear, persuasive, and tailored marketing copy for digital or print media based on specific product details and audience characteristics. This helps automate content creation for campaigns, websites, or social posts efficiently.", + "limitations": "The tool cannot generate factual data or guarantee marketing effectiveness. It may not be suitable for highly technical or regulated industries without further expert review.", + "examples": [ + "Generate a promotional paragraph for a new eco-friendly water bottle targeting health-conscious millennials with a casual tone.", + "Create a professional product description for an enterprise software solution aimed at IT managers, about 150 words.", + "Write a short ad copy for a summer sale on fashion shoes including a call to action to visit the store." + ] + }, + "tags": [ + "copywriting", + "marketing", + "text generation", + "advertising", + "content creation", + "promotional text" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"A smartwatch with heart rate monitor, sleep tracking, and GPS.\",\"targetAudience\":\"fitness enthusiasts\",\"tone\":\"motivational\",\"textLength\":120,\"callToAction\":\"Order yours today to stay fit!\"}", + "description": "Generate motivational marketing text for a fitness smartwatch targeting fitness enthusiasts." + }, + { + "inputJson": "{\"productDescription\":\"Online course teaching beginner guitar skills.\",\"targetAudience\":\"adults wanting to learn guitar\",\"tone\":\"friendly\",\"textLength\":80,\"callToAction\":\"Sign up now!\"}", + "description": "Create a friendly promotional text for a beginner guitar course targeting adult learners." + }, + { + "inputJson": "{\"productDescription\":\"Luxury skincare cream with natural ingredients.\",\"targetAudience\":\"women aged 30-50\",\"tone\":\"professional\",\"textLength\":150,\"callToAction\":\"Experience radiant skin today.\"}", + "description": "Produce a professional product description for luxury skincare cream targeting mature women." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "copywriting.generateSentence", + "description": "Generates a single marketing or promotional sentence based on the given product or service description, target audience, tone, and optional keywords. It processes the input to produce a persuasive and engaging sentence tailored for advertising or content marketing purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "A brief description of the product or service being promoted, providing key features or benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The specific demographic or customer segment that the sentence should appeal to, e.g., young professionals, tech enthusiasts.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the sentence, such as friendly, professional, casual, or persuasive.", + "required": false, + "defaultValue": "persuasive" + }, + { + "name": "keywords", + "type": "array", + "description": "An optional list of keywords to incorporate into the sentence for SEO or emphasis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing or promotional sentence as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce a concise and compelling marketing sentence tailored to a product or service description, targeting a specific audience or tone. Ideal for creating taglines, ads, or promotional snippets requiring persuasive language.", + "limitations": "This tool generates only a single sentence and may not create complex copy or multi-sentence content. It cannot guarantee brand compliance or legal approval, and results should be reviewed before use in official materials.", + "examples": [ + "Generate a promotional sentence for a new eco-friendly water bottle targeting environmentally conscious consumers.", + "Create a friendly and casual marketing sentence for a mobile app that helps organize tasks.", + "Produce a professional tone sentence advertising cloud storage services using keywords 'secure' and 'reliable'." + ] + }, + "tags": [ + "copywriting", + "marketing", + "generate", + "sentence", + "promotion", + "advertising", + "content" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"A smartwatch with heart rate monitoring, GPS, and long battery life.\",\"targetAudience\":\"fitness enthusiasts\",\"tone\":\"motivational\",\"keywords\":[\"smartwatch\",\"fitness\"]}", + "description": "Generate a motivational marketing sentence for a smartwatch targeting fitness enthusiasts, focusing on key features." + }, + { + "inputJson": "{\"productDescription\":\"An online platform that connects freelance graphic designers with clients worldwide.\",\"targetAudience\":\"freelancers\",\"tone\":\"professional\",\"keywords\":[\"design\",\"freelance\"]}", + "description": "Create a professional promotional sentence advertising an online platform for freelance graphic designers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "copywriting.generateLink", + "description": "Generates a marketing-friendly hyperlink text and URL based on the product or campaign details provided. Accepts product name, target URL, and optional call-to-action phrase, then produces a concise, persuasive clickable link text paired with the URL, optimized for promotional content.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetUrl", + "type": "string", + "description": "The URL the link should point to.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call-to-action phrase to include in the link text (e.g., 'Buy Now', 'Learn More').", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated link text to ensure it fits display constraints.", + "required": false, + "defaultValue": "50" + }, + { + "name": "includeDiscount", + "type": "boolean", + "description": "Whether to include mention of a discount or special offer if applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'linkText' for the clickable copy and the 'url' it points to." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create concise, effective promotional links for marketing copy, website banners, social media posts, or email campaigns. It helps generate persuasive clickable text that aligns with the product's branding and call to action while pairing it with the correct URL.", + "limitations": "Cannot verify the validity or accessibility of the URL provided; does not generate URLs, only uses given ones. Does not create graphics or track clicks.", + "examples": [ + "Generate a link for the new winter jacket product page with a \"Shop Now\" call-to-action.", + "Create a promotional link for a summer sale with discount mention included.", + "Generate a short link text for a handheld gadget with default settings." + ] + }, + "tags": [ + "copywriting", + "link generation", + "marketing", + "promotions", + "call to action" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoSmart Water Bottle\",\"targetUrl\":\"https://example.com/ecosmart-bottle\",\"callToAction\":\"Buy Now\",\"maxLength\":40,\"includeDiscount\":false}", + "description": "Generate a marketing link for the EcoSmart Water Bottle with a 'Buy Now' call-to-action." + }, + { + "inputJson": "{\"productName\":\"Summer Sale 2024\",\"targetUrl\":\"https://example.com/summer-sale\",\"callToAction\":\"Shop the Sale\",\"maxLength\":60,\"includeDiscount\":true}", + "description": "Generate a promotional link text including discount mention for Summer Sale 2024." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "copywriting.generateWord", + "description": "Generates a marketing or promotional word based on input criteria such as desired tone, word length, and keyword focus. Accepts optional parameters to tailor the output word to specific campaign needs, producing a single word suitable for use in advertising copy or branding.", + "category": "copywriting", + "parameters": [ + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the word to generate, e.g., 'friendly', 'luxury', or 'energetic'.", + "required": false, + "defaultValue": "" + }, + { + "name": "keywordFocus", + "type": "string", + "description": "A keyword or theme to guide the word generation, helping make it relevant to the product or campaign.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word in characters, useful for concise branding.", + "required": false, + "defaultValue": "15" + }, + { + "name": "startLetter", + "type": "string", + "description": "Optional specific starting letter for the generated word to match branding guidelines.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSuffix", + "type": "boolean", + "description": "Whether to include common suffixes to make the word sound more product-like or brandable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word string under 'word' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need a single catchy or thematic word for marketing, advertising, branding, or promotional content. It is helpful for creating evocative product names, slogans, or buzzwords tailored to a campaign's tone and focus.", + "limitations": "This tool generates individual words only, not phrases or complete sentences. It does not guarantee trademark safety or popularity and should be used as a creative aid, not a definitive final naming solution.", + "examples": [ + "Generate a luxury-sounding word related to 'time'", + "Create a short, energetic word starting with 'S'", + "Provide a friendly word under 10 characters focusing on 'health'" + ] + }, + "tags": [ + "copywriting", + "generate", + "marketing", + "branding", + "advertising", + "word", + "creative" + ], + "examples": [ + { + "inputJson": "{\"tone\":\"luxury\",\"keywordFocus\":\"time\",\"maxLength\":12}", + "description": "Generate a luxury-themed word related to 'time' under 12 characters." + }, + { + "inputJson": "{\"tone\":\"energetic\",\"startLetter\":\"S\",\"includeSuffix\":true}", + "description": "Create an energetic word starting with S and possibly with a suffix." + }, + { + "inputJson": "{\"tone\":\"friendly\",\"keywordFocus\":\"health\",\"maxLength\":10}", + "description": "Generate a friendly word under 10 characters focusing on health." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "copywriting.generateAnomaly", + "description": "Generates compelling marketing copy that highlights detected anomalies or unexpected insights from analytics data. Accepts raw anomaly descriptions or data summary as input and produces persuasive text focused on the anomaly's impact and significance to engage stakeholders or customers.", + "category": "copywriting", + "parameters": [ + { + "name": "anomalySummary", + "type": "string", + "description": "A brief summary or description of the detected anomaly in analytic data to be highlighted in the copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the marketing copy, e.g., professional, urgent, optimistic, cautionary.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for the copy, for tailoring language and focus.", + "required": false, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "An optional call to action phrase to include in the copy, e.g., 'Contact us for details.'", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in words) of the generated copy to ensure conciseness.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy as a string under the 'copyText' key." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to communicate detected anomalies or unusual patterns found in analytics data through marketing or promotional text to stakeholders, clients, or users. It helps in framing technical findings into engaging, persuasive narratives that highlight urgency, opportunity, or concern.", + "limitations": "This tool cannot analyze raw data or detect anomalies itself; it relies on provided descriptions or summaries. It also may not perfectly capture domain-specific nuances without sufficient context in input.", + "examples": [ + "Generate a professional announcement copy about a sudden spike in sales in a particular region.", + "Create urgent marketing text highlighting an anomaly in system performance metrics to notify customers.", + "Produce optimistic copy focused on an unexpected increase in user engagement detected last month." + ] + }, + "tags": [ + "copywriting", + "marketing", + "anomaly", + "analytics", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"anomalySummary\":\"Our latest analytics detected a 230% increase in website traffic from the Asia-Pacific region last quarter.\",\"tone\":\"optimistic\",\"targetAudience\":\"marketing team\",\"callToAction\":\"Let's leverage this growth opportunity.\",\"maxLength\":120}", + "description": "Generate optimistic marketing copy highlighting a large increase in website traffic for the marketing team with a call to action." + }, + { + "inputJson": "{\"anomalySummary\":\"An unexpected drop of 40% in conversion rates was observed during the last two weeks.\",\"tone\":\"cautionary\",\"targetAudience\":\"executive stakeholders\",\"callToAction\":\"Investigate immediately.\",\"maxLength\":100}", + "description": "Create cautionary marketing text warning executive stakeholders about a significant drop in conversion rates with a prompt to act." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "copywriting.generateEvent", + "description": "Generates persuasive and engaging marketing event copy tailored for analytics products or platforms. Accepts event details such as event name, purpose, target audience, date/time, and key highlights. Produces professionally written promotional text suitable for advertising, emails, or social media posts to drive attendance and engagement.", + "category": "copywriting", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The name or title of the event to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventPurpose", + "type": "string", + "description": "The primary goal or theme of the event, such as a product launch or webinar topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for this event (e.g., data analysts, marketers).", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDate", + "type": "string", + "description": "Date and time of the event in ISO 8601 or human-readable format.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyHighlights", + "type": "array", + "description": "List of main features, speakers, or sessions that make the event attractive.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the generated copy, e.g., formal, casual, enthusiastic, or professional.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated copy to fit marketing channels.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated event promotional copy string under the key 'eventCopy'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly create compelling, customized marketing text for analytics-related events, such as webinars, launches, or conferences, to help drive registrations and engagement without requiring manual copywriting expertise.", + "limitations": "Cannot replace the need for human review for compliance, branding consistency, or detailed scheduling information. May lack nuance for highly technical or niche subject matter without sufficient input detail.", + "examples": [ + "Generate copy for an analytics webinar targeting marketing professionals about latest trends.", + "Create a promotional text for a product launch event focusing on new analytics dashboard features.", + "Write a social media post text for an upcoming conference on data science and analytics." + ] + }, + "tags": [ + "copywriting", + "event marketing", + "analytics", + "promotion", + "content generation", + "AI writing" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"Analytics Trends 2024 Webinar\",\"eventPurpose\":\"Discuss latest analytics technologies and applications\",\"targetAudience\":\"Marketing professionals, data analysts\",\"eventDate\":\"2024-09-15T14:00:00Z\",\"keyHighlights\":[\"Top industry speakers\",\"Live Q&A session\",\"Exclusive demo\"],\"tone\":\"enthusiastic\",\"maxLength\":250}", + "description": "Generate engaging webinar promotional copy for marketing professionals." + }, + { + "inputJson": "{\"eventName\":\"New Dashboard Launch\",\"eventPurpose\":\"Showcase new advanced analytics dashboard features\",\"targetAudience\":\"Business analysts and decision makers\",\"keyHighlights\":[\"Real-time insights\",\"Custom reports\",\"User-friendly interface\"],\"tone\":\"professional\",\"maxLength\":200}", + "description": "Create professional, concise product launch event copy." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "copywriting.generateSession", + "description": "Generates engaging, conversion-focused marketing copy for an analytics session, based on input session data such as user behavior, session duration, interaction highlights, and key metrics. Outputs customized promotional text that highlights session value for stakeholders or marketing campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier of the analytics session to generate copy for.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionData", + "type": "object", + "description": "Object containing session metrics and interactions (e.g., duration, pageViews, userActions).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the copy (e.g., professional, casual, enthusiastic).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the generated copy in words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the generated copy (e.g., marketers, executives, product managers).", + "required": false, + "defaultValue": "marketers" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text and summary metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce compelling marketing or promotional text summarizing the key highlights and value of a user analytics session in a persuasive style tailored to a target audience. Useful for generating session-based marketing content automatically from raw analytics data.", + "limitations": "The tool cannot perform session data analysis or generate insights beyond the data provided; it depends entirely on the quality and completeness of input session data for meaningful copy.", + "examples": [ + "Generate a promotional paragraph highlighting peak user engagement during session XYZ123.", + "Produce a 150-word enthusiastic summary of session data for product managers.", + "Create a professional summary focused on session duration and conversion actions for executives." + ] + }, + "tags": [ + "copywriting", + "marketing", + "analytics", + "session", + "text generation", + "promotional", + "summary" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"ABC123\",\"sessionData\":{\"duration\":300,\"pageViews\":12,\"conversions\":3,\"bounceRate\":0.2},\"tone\":\"enthusiastic\",\"length\":120,\"targetAudience\":\"marketers\"}", + "description": "Generate a 120-word enthusiastic marketing copy summarizing session ABC123 analytics for marketers." + }, + { + "inputJson": "{\"sessionId\":\"XYZ789\",\"sessionData\":{\"duration\":600,\"pageViews\":25,\"userActions\":[\"clicked signup\",\"downloaded brochure\"],\"conversions\":5},\"tone\":\"professional\",\"length\":100,\"targetAudience\":\"executives\"}", + "description": "Produce a 100-word professional summary of session XYZ789 focusing on user actions and conversions for executives." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "copywriting.generateKPI", + "description": "Generates clear, concise marketing copy that highlights key performance indicators (KPIs) for a given campaign or project. Accepts KPI data such as metrics, values, and timeframe; processes this data to produce persuasive promotional text that summarizes performance and impact for reports, presentations, or marketing materials.", + "category": "copywriting", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The name or title of the KPI to be highlighted, e.g., 'Conversion Rate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiValue", + "type": "number", + "description": "The numerical value of the KPI, e.g., 15.5 representing 15.5%.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiUnit", + "type": "string", + "description": "The unit or measure of the KPI value, e.g., '%', 'visitors', 'revenue'.", + "required": true, + "defaultValue": "" + }, + { + "name": "timePeriod", + "type": "string", + "description": "The timeframe for the KPI measurement, e.g., 'Q1 2024', 'last month'.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The target audience for the marketing copy, e.g., 'stakeholders', 'potential clients'.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the generated copy such as 'formal', 'informative', 'enthusiastic', or 'neutral'.", + "required": false, + "defaultValue": "neutral" + } + ], + "returns": { + "type": "object", + "description": "An object containing a string field 'marketingCopy' with the generated promotional text summarizing the KPI." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create persuasive, KPI-focused marketing copy for reports, presentations or marketing materials from raw performance data. It helps translate numerical KPIs into clear, audience-appropriate language highlighting successes or insights.", + "limitations": "This tool cannot generate visual KPI charts or deep data analysis. It also cannot validate KPI data accuracy or produce multi-KPI comparative reports automatically.", + "examples": [ + "Generate an enthusiastic copy line emphasizing a 25% increase in customer engagement last quarter for potential clients.", + "Create a concise, formal summary of a 10,000 visitor milestone achieved in March 2024 for internal stakeholders.", + "Produce a neutral tone text describing a conversion rate of 5.8% for an online campaign without specifying the target audience." + ] + }, + "tags": [ + "copywriting", + "marketing", + "KPI", + "performance", + "analytics", + "promotional-text", + "business", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"Customer Retention Rate\",\"kpiValue\":85,\"kpiUnit\":\"%\",\"timePeriod\":\"FY 2023\",\"targetAudience\":\"stakeholders\",\"tone\":\"formal\"}", + "description": "Generate formal KPI-focused marketing copy for FY 2023 customer retention rate targeting stakeholders." + }, + { + "inputJson": "{\"kpiName\":\"Monthly Active Users\",\"kpiValue\":150000,\"kpiUnit\":\"users\",\"timePeriod\":\"last month\",\"targetAudience\":\"potential clients\",\"tone\":\"enthusiastic\"}", + "description": "Create enthusiastic KPI copy highlighting monthly active users for a marketing campaign aimed at potential clients." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "copywriting.generateDashboard", + "description": "Generates persuasive marketing copy for analytics dashboards based on input data, key metrics, and target audience. Accepts dashboard context, performance highlights, and tone preferences, then produces engaging headlines, descriptions, and call-to-action text designed to showcase dashboard value and insights.", + "category": "copywriting", + "parameters": [ + { + "name": "dashboardName", + "type": "string", + "description": "The name or title of the analytics dashboard to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMetrics", + "type": "array", + "description": "A list of important metrics or KPIs featured in the dashboard that should be highlighted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The primary audience or user group for the dashboard (e.g., executives, analysts).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the marketing copy, such as professional, casual, persuasive, or technical.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "callToAction", + "type": "string", + "description": "A call-to-action phrase to encourage use or exploration of the dashboard.", + "required": false, + "defaultValue": "Explore the dashboard now!" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated marketing copy components: headline, description, and callToAction text." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create engaging marketing and promotional text specifically tailored for analytics dashboards. It is ideal for generating copy that highlights key insights and appeals to targeted professionals or decision-makers, facilitating user engagement and dashboard adoption.", + "limitations": "This tool cannot generate or analyze actual dashboard data or visualizations; it only produces textual marketing content based on provided input. It may not capture highly technical jargon unless specified in tone or content.", + "examples": [ + "Generate marketing copy for a sales performance dashboard targeting sales managers with a persuasive tone.", + "Create a professional description highlighting the key KPIs of a financial analytics dashboard for executive stakeholders.", + "Produce a casual and engaging call-to-action for a marketing analytics dashboard encouraging exploration." + ] + }, + "tags": [ + "copywriting", + "marketing", + "dashboard", + "analytics", + "text generation", + "promotional text" + ], + "examples": [ + { + "inputJson": "{\"dashboardName\":\"Sales Performance Dashboard\",\"keyMetrics\":[\"Monthly Revenue\",\"Customer Acquisition Rate\",\"Conversion Rate\"],\"targetAudience\":\"Sales Managers\",\"tone\":\"persuasive\",\"callToAction\":\"Boost your sales insights today!\"}", + "description": "Generate persuasive marketing copy for a sales performance dashboard aimed at sales managers." + }, + { + "inputJson": "{\"dashboardName\":\"Financial Overview Dashboard\",\"keyMetrics\":[\"Cash Flow\",\"Profit Margin\",\"Expense Ratio\"],\"targetAudience\":\"Executive Team\",\"tone\":\"professional\",\"callToAction\":\"Discover financial insights now.\"}", + "description": "Create professional marketing copy highlighting financial KPIs for executives." + }, + { + "inputJson": "{\"dashboardName\":\"Marketing Trends Dashboard\",\"keyMetrics\":[\"Website Traffic\",\"Social Engagement\",\"Lead Generation\"],\"tone\":\"casual\",\"callToAction\":\"Check out the latest trends!\"}", + "description": "Produce casual and engaging copy for a marketing trends dashboard encouraging user engagement." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "copywriting.generateMetric", + "description": "Generates compelling descriptive marketing text for a specific business metric or KPI based on input data and context. Inputs include the metric name, its numeric value, target audience, and tone preference. Outputs a short copywriting snippet that highlights the metric's significance in a persuasive style for promotional or reporting purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The name of the business metric or KPI to describe, e.g. 'conversion rate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricValue", + "type": "number", + "description": "The current numeric value of the metric to incorporate in the generated text.", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "The target audience for the text, e.g. 'investors', 'customers', 'employees'.", + "required": false, + "defaultValue": "general public" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the promotional text, e.g. 'formal', 'enthusiastic', 'motivational'.", + "required": false, + "defaultValue": "enthusiastic" + }, + { + "name": "context", + "type": "string", + "description": "Additional context or background about the metric or business area to tailor the text.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy as a string under the 'text' property." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to produce engaging marketing copy that highlights the importance or achievement of a specific business metric or KPI for communication purposes such as reports, newsletters, or sales materials. It is especially useful when numeric metrics need to be translated into easy-to-understand, persuasive text tailored for different audiences and tones.", + "limitations": "This tool cannot generate real-time metric data and relies on accurate input values. It does not produce visualizations or detailed analytical explanations, only concise promotional text.", + "examples": [ + "Generate a motivational message for a 15% increase in monthly recurring revenue targeting company employees.", + "Create an enthusiastic snippet for a 98% customer satisfaction rate to be used in a marketing brochure for potential clients.", + "Provide a formal description of a 5% decrease in churn rate for an investor report." + ] + }, + "tags": [ + "copywriting", + "marketing", + "analytics", + "business metrics", + "promotional text", + "KPI", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"conversion rate\",\"metricValue\":12.5,\"audience\":\"marketers\",\"tone\":\"enthusiastic\",\"context\":\"Q2 sales campaign performance\"}", + "description": "Generate an enthusiastic marketing snippet describing a 12.5% conversion rate for marketers, emphasizing Q2 campaign results." + }, + { + "inputJson": "{\"metricName\":\"customer retention\",\"metricValue\":85,\"audience\":\"investors\",\"tone\":\"formal\",\"context\":\"year-end review\"}", + "description": "Create a formal copy highlighting an 85% customer retention rate for investors in year-end documents." + }, + { + "inputJson": "{\"metricName\":\"website traffic growth\",\"metricValue\":30,\"audience\":\"general public\",\"tone\":\"motivational\",\"context\":\"social media campaign success\"}", + "description": "Produce a motivational text for the general public describing 30% website traffic growth attributed to social media efforts." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "copywriting.generateChart", + "description": "Generates a concise, persuasive marketing text and description for a given chart data input. Accepts chart data and chart type to produce engaging copy that highlights key insights and appeals to target audiences, suitable for promotional materials or reports.", + "category": "copywriting", + "parameters": [ + { + "name": "chartType", + "type": "string", + "description": "Type of the chart (e.g., bar, line, pie) to tailor the marketing text.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartData", + "type": "object", + "description": "Data object representing the chart's data points, labels, or series to be summarized in the copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience to customize tone and focus of the marketing text.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyInsights", + "type": "array", + "description": "List of main insights or takeaways from the chart to emphasize in the writing.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the marketing copy, such as 'professional', 'enthusiastic', or 'informative'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length in words for the generated marketing text to ensure appropriate size.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text and a brief summary describing the chart's key message." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate promotional or descriptive marketing texts that effectively communicate the value, insights, or appeal of data presented as charts. It is handy for content creators, marketers, or analysts preparing reports, presentations, or advertisements that require engaging copy tailored around a data visualization.", + "limitations": "Cannot create visual charts or handle raw data visualization; focuses on generating textual descriptions and marketing-oriented narratives based on the provided chart data and summary input.", + "examples": [ + "Generate a marketing paragraph summarizing a sales growth line chart targeting investors.", + "Create an engaging description for a pie chart showing market share for a product launch flyer.", + "Produce a concise copy highlighting key insights from a bar chart comparing quarterly revenues." + ] + }, + "tags": [ + "copywriting", + "marketing", + "chart", + "data visualization", + "content generation", + "promotion" + ], + "examples": [ + { + "inputJson": "{\"chartType\":\"bar\",\"chartData\":{\"labels\":[\"Q1\",\"Q2\",\"Q3\",\"Q4\"],\"values\":[15000,18000,22000,25000]},\"targetAudience\":\"business executives\",\"keyInsights\":[\"steady revenue growth each quarter\",\"strong Q4 performance\"],\"tone\":\"professional\",\"maxLength\":120}", + "description": "Generate a professional marketing copy for a bar chart showing quarterly revenue growth aimed at business executives." + }, + { + "inputJson": "{\"chartType\":\"pie\",\"chartData\":{\"segments\":[\"Product A\",\"Product B\",\"Product C\"],\"percentages\":[45,30,25]},\"targetAudience\":\"marketing team\",\"tone\":\"enthusiastic\"}", + "description": "Create an enthusiastic promotional description for a pie chart displaying product market shares for the marketing team." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "copywriting.generateTrend", + "description": "Generates a concise and engaging marketing trend report based on input industry keywords and recent market data. The tool accepts keywords and optional date range to analyze relevant current trends, then produces summarized trend insights and recommended copy points for promotional content.", + "category": "copywriting", + "parameters": [ + { + "name": "industryKeywords", + "type": "array", + "description": "A list of keywords related to the industry or market to analyze for trends.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "startDate", + "type": "string", + "description": "Optional start date (YYYY-MM-DD) to filter trend data from.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Optional end date (YYYY-MM-DD) to filter trend data up to.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxTrendCount", + "type": "number", + "description": "Maximum number of top trends to include in the output (1-10).", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeCopySuggestions", + "type": "boolean", + "description": "Whether to include suggested marketing copy points based on trends.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing an array of trend summaries with title, description, and optional copy suggestions." + }, + "aiAgent": { + "useCase": "Useful for marketers, content creators, and product managers to quickly generate insightful summaries of the latest market or industry trends based on custom keywords and recent data. Enables crafting timely promotional copy grounded in relevant trend analysis.", + "limitations": "Does not replace detailed market research or proprietary data analysis; relies on publicly available or input data and may not reflect all niche or highly specialized trends.", + "examples": [ + "Generate marketing trend insights for renewable energy industry keywords from last 6 months including copy suggestions.", + "Get top 3 trend summaries for e-commerce related keywords without copy suggestions.", + "Provide trend analysis for health tech sector keywords from 2023-01-01 to 2023-06-30 with copy suggestions." + ] + }, + "tags": [ + "copywriting", + "marketing", + "trend analysis", + "content generation", + "promotional text", + "analytics", + "market trends" + ], + "examples": [ + { + "inputJson": "{\"industryKeywords\":[\"renewable energy\",\"solar power\",\"wind energy\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-06-30\",\"maxTrendCount\":4,\"includeCopySuggestions\":true}", + "description": "Generate a trend report with copy suggestions for renewable energy industry in first half of 2023." + }, + { + "inputJson": "{\"industryKeywords\":[\"e-commerce\",\"online shopping\"],\"maxTrendCount\":3,\"includeCopySuggestions\":false}", + "description": "Generate top 3 trends for e-commerce keywords with no copy suggestions, using recent data." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "copywriting.generateForecast", + "description": "Generates a business forecast marketing text based on input data such as market trends, sales figures, and growth projections. Processes numerical and contextual inputs to produce engaging promotional copy that highlights anticipated business performance and future opportunities.", + "category": "copywriting", + "parameters": [ + { + "name": "industry", + "type": "string", + "description": "The industry or market sector the forecast is about (e.g., technology, retail).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "string", + "description": "The forecast period, e.g., next quarter, fiscal year, or next 5 years.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMetrics", + "type": "object", + "description": "An object containing key numerical metrics like projected sales, growth rate, and market share percentages.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The primary audience for the forecast text, e.g., investors, customers, or internal stakeholders.", + "required": false, + "defaultValue": "investors" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the generated copy, e.g., optimistic, cautious, or neutral.", + "required": false, + "defaultValue": "optimistic" + }, + { + "name": "includeChallenges", + "type": "boolean", + "description": "Whether to include potential challenges or risks in the forecast copy.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated marketing forecast text under the 'forecastText' key." + }, + "aiAgent": { + "useCase": "Use this tool to create promotional business forecast content tailored for specific industries and timeframes based on quantitative projections and market insights. Ideal for generating investor relations materials, marketing campaigns, or strategic presentations highlighting expected growth and opportunities.", + "limitations": "This tool does not perform actual market analysis or validate data accuracy; it only generates marketing copy based on provided inputs. It cannot replace detailed financial modeling or expert forecasts.", + "examples": [ + "Generate an optimistic 1-year sales forecast text for the retail industry targeting customers.", + "Create a cautious growth forecast for the tech sector addressing investors including potential market risks.", + "Produce a neutral 5-year market share projection summary for internal stakeholders without mentioning challenges." + ] + }, + "tags": [ + "copywriting", + "business", + "marketing", + "forecast", + "sales", + "growth", + "promotional", + "writing" + ], + "examples": [ + { + "inputJson": "{\"industry\":\"technology\",\"timeFrame\":\"next fiscal year\",\"keyMetrics\":{\"projectedSales\":\"150 million USD\",\"growthRate\":\"12%\",\"marketShare\":\"5%\"},\"targetAudience\":\"investors\",\"tone\":\"optimistic\",\"includeChallenges\":false}", + "description": "Generate an optimistic forecast text for the technology sector's next fiscal year focusing on sales and growth projections for investors." + }, + { + "inputJson": "{\"industry\":\"retail\",\"timeFrame\":\"next quarter\",\"keyMetrics\":{\"projectedSales\":\"50 million USD\",\"growthRate\":\"3%\",\"marketShare\":\"10%\"},\"targetAudience\":\"customers\",\"tone\":\"cautious\",\"includeChallenges\":true}", + "description": "Create a cautious next quarter sales forecast for the retail industry targeting customers, including potential challenges." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Forecast", + "context": null + } + }, + { + "name": "copywriting.generateGraph", + "description": "Generates a customized, publication-ready graph image to illustrate marketing or promotional content. Accepts structured data points, graph type, and styling preferences, then produces a visual graph (e.g., bar, line, pie) tailored for inclusion in marketing materials or presentations.", + "category": "copywriting", + "parameters": [ + { + "name": "dataPoints", + "type": "array", + "description": "An array of data objects representing points or categories to plot, each with label and numeric value.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, such as 'bar', 'line', or 'pie'.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title text to display on the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color palette to apply for graph elements, e.g., 'vibrant', 'pastel', or hex codes.", + "required": false, + "defaultValue": "vibrant" + }, + { + "name": "width", + "type": "number", + "description": "Width of the graph image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the graph image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining the graph data series.", + "required": false, + "defaultValue": "true" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label text for the x-axis, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label text for the y-axis, if applicable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a Base64 encoded image string of the generated graph and metadata including image format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a clear, visually appealing graph that supports marketing or promotional copy, enhancing presentations, social media posts, or reports with data visualization tailored for a marketing context.", + "limitations": "Does not perform data analysis or generate textual copy; inputs must be clean and numeric. Limited to common graph types; complex interactive or 3D graphs are not supported.", + "examples": [ + "Generate a bar chart visualizing quarterly sales to embed in a promotional newsletter.", + "Create a pie chart showing market share percentages for a presentation slide.", + "Produce a line graph tracking customer acquisition growth for social media marketing content." + ] + }, + "tags": [ + "copywriting", + "graph", + "visualization", + "marketing", + "promotional", + "media", + "data-visualization" + ], + "examples": [ + { + "inputJson": "{\"dataPoints\":[{\"label\":\"Q1\",\"value\":15000},{\"label\":\"Q2\",\"value\":20000},{\"label\":\"Q3\",\"value\":18000},{\"label\":\"Q4\",\"value\":22000}],\"graphType\":\"bar\",\"title\":\"Quarterly Sales 2023\",\"colorScheme\":\"vibrant\",\"width\":800,\"height\":600,\"includeLegend\":true,\"xAxisLabel\":\"Quarter\",\"yAxisLabel\":\"Revenue ($)\"}", + "description": "Generate a vibrant bar graph displaying quarterly sales for 2023 to use in marketing materials." + }, + { + "inputJson": "{\"dataPoints\":[{\"label\":\"Brand A\",\"value\":40},{\"label\":\"Brand B\",\"value\":35},{\"label\":\"Brand C\",\"value\":25}],\"graphType\":\"pie\",\"title\":\"Market Share Distribution\",\"colorScheme\":\"pastel\",\"width\":600,\"height\":400,\"includeLegend\":true}", + "description": "Create a pastel-colored pie chart visualizing market share distribution among three brands." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "copywriting.generateHTML", + "description": "Generates marketing or promotional HTML content based on input text, style preferences, and target audience. Accepts plain text or bullet points, processes copywriting best practices, and outputs formatted HTML code ready for web or email use.", + "category": "copywriting", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main marketing or promotional text content to be converted into HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired writing tone for the content, such as 'formal', 'casual', 'energetic', or 'persuasive'.", + "required": false, + "defaultValue": "persuasive" + }, + { + "name": "audience", + "type": "string", + "description": "Description of the target audience to tailor the copy, e.g., 'tech-savvy millennials', 'business executives', or 'retail customers'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCTA", + "type": "boolean", + "description": "Whether to include a call-to-action button or link in the generated HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "ctaText", + "type": "string", + "description": "Text to display on the call-to-action button or link if includeCTA is true.", + "required": false, + "defaultValue": "Learn More" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated HTML content to ensure brevity or fit constraints.", + "required": false, + "defaultValue": "500" + }, + { + "name": "stylePreset", + "type": "string", + "description": "Optional style preset for the HTML output like 'modern', 'minimalist', or 'classic' to influence formatting and colors.", + "required": false, + "defaultValue": "modern" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string with marketing copy formatted according to provided parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to rapidly create engaging, formatted marketing HTML content from plain text input that is tailored in tone and style for specific audiences and includes call-to-action elements for web or email campaigns.", + "limitations": "Cannot generate images or multimedia elements; does not validate HTML for all email clients or browsers; style customization is limited to presets and simple formatting.", + "examples": [ + "Generate persuasive product launch HTML for tech-savvy millennials including a call-to-action button.", + "Create short, formal promotional email HTML without call-to-action link.", + "Produce minimalist styled marketing HTML targeting business executives with custom call-to-action text." + ] + }, + "tags": [ + "copywriting", + "HTML", + "marketing", + "promotion", + "email", + "webcontent", + "call-to-action" + ], + "examples": [ + { + "inputJson": "{\"content\":\"Introducing our latest smartwatch with advanced health tracking features.\",\"tone\":\"persuasive\",\"audience\":\"tech-savvy millennials\",\"includeCTA\":true,\"ctaText\":\"Buy Now\",\"maxLength\":400,\"stylePreset\":\"modern\"}", + "description": "Generate a modern styled promotional HTML snippet for a smartwatch aimed at tech-savvy millennials with a persuasive tone and a 'Buy Now' button." + }, + { + "inputJson": "{\"content\":\"End of season clearance sale up to 50% off.\",\"tone\":\"formal\",\"audience\":\"retail customers\",\"includeCTA\":false,\"maxLength\":250,\"stylePreset\":\"classic\"}", + "description": "Create formal, classic style HTML for a clearance sale announcement targeting retail customers without a call-to-action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "copywriting.generateDiagram", + "description": "Generates marketing and promotional diagrams based on provided text descriptions or concepts. Accepts textual inputs outlining key messages, target audiences, and diagram style preferences. Processes these inputs to create visually structured diagram concepts ideal for marketing materials, outputting a diagram in SVG or PNG format alongside a textual summary of key design elements.", + "category": "copywriting", + "parameters": [ + { + "name": "conceptDescription", + "type": "string", + "description": "A detailed textual description of the concept or marketing message to visualize in the diagram.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the marketing diagram, influencing style and language.", + "required": false, + "defaultValue": "" + }, + { + "name": "diagramStyle", + "type": "string", + "description": "Preferred style for the diagram, such as flowchart, mind map, infographic, or organizational chart.", + "required": false, + "defaultValue": "flowchart" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme preference for the diagram, e.g., 'corporate', 'vibrant', or hex color codes.", + "required": false, + "defaultValue": "corporate" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format: 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "includeKeyPoints", + "type": "boolean", + "description": "Whether to include textual key points extracted from the concept in the diagram.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated diagram image encoded as a base64 string and a text summary of key diagram components." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create visually engaging marketing diagrams or infographics that illustrate key messages or concepts from textual descriptions. It helps automate the generation of promotional media assets suited for presentations, social media, or campaign materials.", + "limitations": "Cannot produce highly customized or artistic diagram visuals equivalent to professional graphic design software. Complexity of input concepts affects clarity and coherence of the generated diagram. Output is limited to simple diagram styles.", + "examples": [ + "Generate a mind map diagram for a new product launch targeting tech-savvy millennials.", + "Create a flowchart illustrating the customer journey for an online subscription service.", + "Produce an infographic style diagram summarizing the benefits of a health supplement for busy professionals." + ] + }, + "tags": [ + "copywriting", + "diagram", + "marketing", + "visualization", + "infographic", + "generate" + ], + "examples": [ + { + "inputJson": "{\"conceptDescription\":\"A flowchart showing the steps of subscribing to our premium service: sign up, select plan, payment, confirmation, start using.\",\"targetAudience\":\"young professionals\",\"diagramStyle\":\"flowchart\",\"colorScheme\":\"corporate\",\"outputFormat\":\"svg\",\"includeKeyPoints\":true}", + "description": "Generate a corporate style flowchart diagram visualizing the subscription steps for a young professional audience." + }, + { + "inputJson": "{\"conceptDescription\":\"Mind map of key features and benefits of our new eco-friendly cleaning product.\",\"diagramStyle\":\"mind map\",\"colorScheme\":\"vibrant\",\"outputFormat\":\"png\",\"includeKeyPoints\":true}", + "description": "Create a vibrant mind map infographic displaying features and benefits of an eco-friendly product." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "copywriting.generateYAML", + "description": "Generates YAML-formatted marketing and promotional copy based on structured input data. Accepts a description of product features, target audience, tone, and style preferences, then produces clean, well-organized YAML output representing marketing text and metadata suitable for further processing or integration.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to generate marketing copy for.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of key product features or benefits to highlight in the marketing copy.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the marketing message, influencing tone and style.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy such as 'friendly', 'professional', 'casual', or 'luxury'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "style", + "type": "string", + "description": "Preferred writing style or format (e.g., 'concise', 'detailed', 'storytelling').", + "required": false, + "defaultValue": "concise" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata fields like version, lastUpdated, and author in the YAML output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field with the YAML string of generated marketing content and relevant metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create structured marketing or promotional copy in YAML format for integration into content management systems, chatbots, or automated marketing pipelines. It assists in converting raw product info and stylistic preferences into standardized YAML documents.", + "limitations": "Cannot generate uniquely creative writing beyond input parameters; dependent on quality and completeness of input data. Not suitable for generating fully formatted HTML or non-text multimedia content.", + "examples": [ + "Generate marketing YAML for a new smartphone highlighting camera and battery life aimed at tech enthusiasts in a friendly tone.", + "Create YAML promotional copy for an eco-friendly detergent with detailed style for environmentally conscious consumers.", + "Produce concise YAML marketing text for a new app targeting professionals with a professional tone." + ] + }, + "tags": [ + "copywriting", + "yaml", + "marketing", + "promotional-text", + "content-generation", + "structured-data" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoClean Detergent\",\"features\":[\"Biodegradable formula\",\"Leaves no residue\",\"Safe for sensitive skin\"],\"targetAudience\":\"Environmentally conscious homeowners\",\"tone\":\"friendly\",\"style\":\"detailed\",\"includeMetadata\":true}", + "description": "Generate detailed, friendly YAML marketing copy for an eco-friendly detergent targeting environmentally conscious homeowners." + }, + { + "inputJson": "{\"productName\":\"SnapShot Pro Camera\",\"features\":[\"48MP ultra-clear photos\",\"20 hour battery life\",\"Water-resistant design\"],\"tone\":\"professional\",\"style\":\"concise\",\"includeMetadata\":false}", + "description": "Create concise, professional YAML promotional copy for a high-end camera emphasizing key features." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "copywriting.generateXML", + "description": "Generates an XML document containing marketing or promotional text structured into customizable sections. Accepts structured input data including campaign title, target audience, product details, and promotional messages. Produces a well-formed XML string organizing these elements for easy integration with marketing platforms or further processing.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignTitle", + "type": "string", + "description": "Title or name of the marketing campaign to include in the XML root element attribute or tag.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience segment for personalization in the promotional text.", + "required": false, + "defaultValue": "" + }, + { + "name": "productDetails", + "type": "object", + "description": "Structured object containing product name, features, benefits, and pricing info to include in XML nodes.", + "required": true, + "defaultValue": "" + }, + { + "name": "promotionalMessages", + "type": "array", + "description": "Array of strings representing key promotional messages or call-to-actions to embed in the XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') for the generated text content to adapt language style.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include metadata such as date generated and author info in the XML.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'xmlString' with the generated XML document as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform structured marketing content data into a standardized XML format that can be easily consumed by other marketing tools or content management systems. It is ideal for automating campaign content packaging or for generating consistent promotional text layouts in XML.", + "limitations": "This tool does not perform language translation beyond simple language style adaptation. It also does not validate marketing claims or check compliance; content quality depends entirely on input provided.", + "examples": [ + "Generate XML for a new product launch campaign targeting millennials with several promotional messages.", + "Create XML marketing content including product descriptions and CTA for use in email templates.", + "Produce an XML file with metadata for a campaign personalized for a European audience." + ] + }, + "tags": [ + "copywriting", + "XML", + "marketing", + "promotionalText", + "contentGeneration", + "campaign", + "automation" + ], + "examples": [ + { + "inputJson": "{\"campaignTitle\":\"Spring Sale 2024\",\"targetAudience\":\"budget-conscious young adults\",\"productDetails\":{\"name\":\"SmartWatch X\",\"features\":\"Heart rate monitor, GPS, Waterproof\",\"benefits\":\"Stay connected and track health easily\",\"price\":\"$199\"},\"promotionalMessages\":[\"Limited time offer!\",\"Buy one get one 50% off.\",\"Free shipping on orders over $50.\"],\"language\":\"en\",\"includeMetadata\":true}", + "description": "Generate XML structure for a spring sale marketing campaign targeting young adults including product details and promotional messages." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "copywriting.generateCSV", + "description": "Generates a CSV file containing multiple marketing copy entries based on given input prompts and parameters. Accepts input keywords, target audience descriptions, tone preferences, and desired output fields, producing a CSV formatted string with generated copy variations ready for use or further editing.", + "category": "copywriting", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of keywords or key phrases to focus the marketing copy on.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor the tone and style accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy, e.g., casual, formal, persuasive.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "fields", + "type": "array", + "description": "The CSV columns to generate, e.g., headline, description, callToAction.", + "required": true, + "defaultValue": "[\"headline\",\"description\"]" + }, + { + "name": "numEntries", + "type": "number", + "description": "Number of copy entries (rows) to generate in the CSV output.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field `csvContent` with the generated CSV string of marketing copy entries." + }, + "aiAgent": { + "useCase": "Use this tool when needing bulk marketing copy created in structured CSV format to facilitate campaigns, A/B testing, or integration with content management workflows. It helps generate varied text snippets tailored by keywords, audience, and tone for dynamic marketing purposes.", + "limitations": "It does not generate final polished copy guaranteed to convert; outputs may require review and editing. It does not support advanced formatting beyond CSV structure.", + "examples": [ + "Generate 10 rows of promotional headlines and descriptions targeting young adults interested in eco-friendly products with a casual tone.", + "Create 5 marketing call-to-action lines and descriptions focused on a business software target audience using a formal tone.", + "Produce a CSV with 3 variants of product taglines and supporting descriptions based on the keywords provided." + ] + }, + "tags": [ + "copywriting", + "CSV generation", + "marketing", + "bulk content", + "text generation", + "promotional text" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"sustainable\",\"eco-friendly\",\"green\"],\"targetAudience\":\"environmentally conscious millennials\",\"tone\":\"casual\",\"fields\":[\"headline\",\"description\",\"callToAction\"],\"numEntries\":5}", + "description": "Generate 5 rows of eco-friendly marketing copy targeting millennials with casual tone." + }, + { + "inputJson": "{\"keywords\":[\"B2B software\",\"productivity\",\"efficiency\"],\"targetAudience\":\"business professionals\",\"tone\":\"formal\",\"fields\":[\"headline\",\"description\"],\"numEntries\":3}", + "description": "Generate 3 formal marketing copy rows focused on B2B software benefits." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "copywriting.generateJSON", + "description": "Generates structured JSON output for marketing copy based on input parameters such as product details, target audience, tone, and key selling points. Processes input to produce promotional text segments in JSON format, facilitating integration into marketing frameworks or automated content systems.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to be marketed.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "A brief description outlining the main features or purpose of the product.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Defines the primary demographic or customer segment to tailor the copy towards (e.g., young adults, businesses).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Specifies the stylistic tone of the generated copy, such as friendly, professional, or persuasive.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "keySellingPoints", + "type": "array", + "description": "An array of strings listing the main benefits or unique selling propositions to emphasize in the copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "callToAction", + "type": "string", + "description": "The desired call-to-action phrase to include in the promotional text.", + "required": false, + "defaultValue": "Buy now" + }, + { + "name": "language", + "type": "string", + "description": "The language code for generating copy (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing distinct sections of marketing copy such as headline, body, and call to action, structured for easy parsing and usage in applications." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate structured promotional copy tailored to specific product details and audience characteristics in a JSON format for seamless integration into marketing platforms, websites, or apps.", + "limitations": "Does not generate long-form content or replace human editing for brand voice consistency; limited to concise marketing copy segments.", + "examples": [ + "Generate marketing copy JSON for a new organic skincare product targeting young adults with a friendly tone.", + "Create structured promotional text for a B2B software service emphasizing security features in a professional tone.", + "Produce JSON-formatted marketing snippets including headline, description, and call to action for a mobile app launch." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotional-text", + "JSON", + "automation", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoGlow Facial Cream\",\"productDescription\":\"A natural and organic facial cream that hydrates and rejuvenates skin.\",\"targetAudience\":\"young adults\",\"tone\":\"friendly\",\"keySellingPoints\":[\"100% organic ingredients\",\"cruelty-free\",\"suitable for all skin types\"],\"callToAction\":\"Try EcoGlow today!\",\"language\":\"en\"}", + "description": "Generate promotional copy JSON for an organic skincare product aimed at young adults with a friendly style." + }, + { + "inputJson": "{\"productName\":\"SecureSys Cloud Storage\",\"productDescription\":\"Enterprise-grade cloud storage with top-tier encryption and compliance certifications.\",\"targetAudience\":\"businesses\",\"tone\":\"professional\",\"keySellingPoints\":[\"AES-256 encryption\",\"GDPR compliant\",\"99.9% uptime SLA\"],\"callToAction\":\"Contact us for a demo\",\"language\":\"en\"}", + "description": "Create a professional marketing copy JSON structure for a cloud storage service targeting business clients." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "copywriting.generateMarkdown", + "description": "Generates marketing and promotional content formatted in Markdown. Accepts raw text input describing the subject and key points, processes them to create well-structured and engaging Markdown output including headings, bullet points, and emphasis suited for blogs, emails, or social posts.", + "category": "copywriting", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The main topic or product to promote in the Markdown content.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of key points or features to highlight within the content.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor the tone and style appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "A call-to-action phrase or sentence to include in the content.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words for the generated Markdown content.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown string under 'markdownContent' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce ready-to-use marketing or promotional text formatted in Markdown, ideal for content marketing, email campaigns, or social media posts where structured text with headings and bullet points enhances readability and engagement.", + "limitations": "This tool cannot verify factual accuracy of the content or tailor responses for complex legal or technical compliance. It focuses on general marketing tone and structure rather than deep brand voice consistency.", + "examples": [ + "Generate a Markdown blog post for a new smartphone highlighting its battery life and camera features.", + "Create a promotional email in Markdown for an online course targeting young professionals.", + "Produce a Markdown formatted social media post announcing a seasonal sale with a clear call-to-action." + ] + }, + "tags": [ + "copywriting", + "markdown", + "marketing", + "promotional", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Eco-friendly Water Bottles\",\"keyPoints\":[\"Made from recycled materials\",\"Keeps drinks cold for 24hrs\",\"BPA free and non-toxic\"],\"targetAudience\":\"Environmentally conscious consumers\",\"callToAction\":\"Order yours today!\",\"maxLength\":200}", + "description": "Generate a Markdown promotional post about eco-friendly water bottles highlighting key features and call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "copywriting.generateDataset", + "description": "Generates a structured dataset of marketing copy samples based on specified themes, tones, and target audiences. Accepts parameters defining the marketing context and outputs a dataset containing varied promotional text entries suitable for training or reference.", + "category": "copywriting", + "parameters": [ + { + "name": "themes", + "type": "array", + "description": "List of marketing themes or topics for the copy samples (e.g., technology, health).", + "required": true, + "defaultValue": "" + }, + { + "name": "tones", + "type": "array", + "description": "Desired tones for the copywriting samples (e.g., formal, casual, persuasive).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudiences", + "type": "array", + "description": "Specified target audiences or customer segments (e.g., millennials, small business owners).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "samplesPerCombination", + "type": "number", + "description": "Number of distinct copy samples to generate per theme-tone-audience combination.", + "required": false, + "defaultValue": "5" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for each copy sample.", + "required": false, + "defaultValue": "280" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array named 'dataset' with entries, each having 'theme', 'tone', 'audience' (if provided), and 'copyText' fields representing generated marketing copy samples." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create comprehensive datasets of marketing copy spanning multiple themes, tones, and audiences, for purposes like training AI models, generating marketing content templates, or performing copywriting style analysis. It automates generating diverse promotional text samples tailored to specific contexts.", + "limitations": "The tool generates synthetic marketing text samples but does not verify factual accuracy or compliance with brand guidelines. Generated content might require human review before actual marketing use. It cannot incorporate sensitive or proprietary company data not provided in inputs.", + "examples": [ + "Generate 10 persuasive copies for the health and wellness theme targeting young adults.", + "Create dataset of casual and formal tone copies for technology products aimed at professionals.", + "Produce marketing text samples for eco-friendly products in enthusiastic tone without specifying an audience." + ] + }, + "tags": [ + "copywriting", + "dataset", + "marketing", + "text-generation", + "promotional-content", + "dataset-creation" + ], + "examples": [ + { + "inputJson": "{\"themes\":[\"technology\"],\"tones\":[\"formal\",\"casual\"],\"targetAudiences\":[\"professionals\"],\"samplesPerCombination\":3,\"maxLength\":200}", + "description": "Generate 3 formal and casual tone marketing copy samples for technology targeting professionals." + }, + { + "inputJson": "{\"themes\":[\"health\",\"fitness\"],\"tones\":[\"persuasive\"],\"targetAudiences\":[],\"samplesPerCombination\":5,\"maxLength\":150}", + "description": "Generate 5 persuasive copy samples for health and fitness themes without specific audience." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "copywriting.generateTest", + "description": "Generates realistic code test scenarios or test case descriptions based on given programming language, framework, and feature specifications. Accepts input parameters for feature description, preferred language, and testing framework, then produces structured test case text or code snippets suitable for integration in test suites.", + "category": "copywriting", + "parameters": [ + { + "name": "featureDescription", + "type": "string", + "description": "A brief description of the feature or functionality to be tested.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language in which the test code or examples should be generated (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Testing framework name or style (e.g., Jest, Mocha, PyTest) that output tests should be compatible with.", + "required": false, + "defaultValue": "Jest" + }, + { + "name": "testType", + "type": "string", + "description": "Type of test to generate, such as unit, integration, or functional.", + "required": false, + "defaultValue": "unit" + }, + { + "name": "includeSetup", + "type": "boolean", + "description": "Whether to include test setup and teardown code snippets if applicable.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTestCases", + "type": "number", + "description": "Maximum number of individual test cases to generate in the output.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated test code or detailed test case descriptions as a string, formatted appropriately for the specified language and framework." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate skeleton or example test code or test case descriptions for specified features in chosen languages and frameworks, to accelerate test coverage creation or to suggest test ideas.", + "limitations": "Cannot run or validate the correctness of generated test code; generated tests may require manual review and adaptation. Limited to popular languages and frameworks specified; may not support all edge case test types or obscure frameworks.", + "examples": [ + "Generate unit tests in JavaScript using Jest for a user login feature.", + "Create integration test cases in Python with PyTest for a data import module.", + "Produce a set of functional test scenarios describing expected behavior for an e-commerce cart system." + ] + }, + "tags": [ + "copywriting", + "testing", + "code generation", + "unit test", + "integration test", + "test automation" + ], + "examples": [ + { + "inputJson": "{\"featureDescription\":\"User authentication with email and password\",\"programmingLanguage\":\"JavaScript\",\"testFramework\":\"Jest\",\"testType\":\"unit\",\"includeSetup\":true,\"maxTestCases\":3}", + "description": "Generate Jest unit test code snippets for user authentication feature in JavaScript." + }, + { + "inputJson": "{\"featureDescription\":\"Data import from CSV files\",\"programmingLanguage\":\"Python\",\"testFramework\":\"PyTest\",\"testType\":\"integration\",\"includeSetup\":false,\"maxTestCases\":2}", + "description": "Generate PyTest integration test cases for CSV data import in Python without setup code." + }, + { + "inputJson": "{\"featureDescription\":\"Shopping cart adding and removing items\",\"programmingLanguage\":\"JavaScript\",\"testFramework\":\"Mocha\",\"testType\":\"functional\",\"includeSetup\":true,\"maxTestCases\":4}", + "description": "Generate functional test case descriptions and sample code using Mocha for shopping cart behavior." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "copywriting.generateQuery", + "description": "Generates optimized marketing or advertising search queries based on a product description, target audience, and marketing goals. Accepts detailed product information and campaign context, then produces a list of tailored, high-impact search queries or keywords suitable for use in SEO or pay-per-click campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "Detailed description of the product or service to be marketed, including key features and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the ideal customer or demographic targeted by the marketing campaign.", + "required": false, + "defaultValue": "" + }, + { + "name": "marketingGoal", + "type": "string", + "description": "Primary objective for the marketing campaign, such as brand awareness, lead generation, or direct sales.", + "required": false, + "defaultValue": "" + }, + { + "name": "queryCount", + "type": "number", + "description": "Number of distinct search queries or keywords to generate.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeBrandName", + "type": "boolean", + "description": "Whether to incorporate the brand name in the generated queries for branding purposes.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of generated search queries optimized for marketing campaigns, each including the query text and a relevance score." + }, + "aiAgent": { + "useCase": "Use this tool when planning or optimizing digital marketing and advertising campaigns that rely on targeted search queries, such as SEO or PPC advertising. It helps to quickly generate relevant, high-impact queries tailored to a product and audience.", + "limitations": "Cannot guarantee actual search volume or bid cost effectiveness; it does not access live search engine data or trends, only generates queries based on provided input context.", + "examples": [ + "Generate top search queries for a new eco-friendly water bottle aimed at young adults.", + "Create marketing search keywords to boost direct sales of a premium skincare line.", + "Provide branded and unbranded query suggestions for a SaaS productivity tool targeting small businesses." + ] + }, + "tags": [ + "copywriting", + "marketing", + "SEO", + "advertising", + "search query generation", + "digital marketing", + "PPC" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"Lightweight, durable eco-friendly water bottle made from recycled materials.\",\"targetAudience\":\"Young adults aged 18-30 interested in sustainability and outdoor activities.\",\"marketingGoal\":\"Brand awareness\",\"queryCount\":5,\"includeBrandName\":false}", + "description": "Generate 5 SEO queries targeting young adults to raise brand awareness for eco water bottle." + }, + { + "inputJson": "{\"productDescription\":\"Premium anti-aging skincare serum with natural ingredients.\",\"targetAudience\":\"Women aged 35-55 concerned about skin health.\",\"marketingGoal\":\"Direct sales\",\"queryCount\":8,\"includeBrandName\":true}", + "description": "Generate 8 branded and unbranded PPC keywords for premium skincare product aimed at middle-aged women." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "copywriting.generateFAQ", + "description": "Generates a comprehensive Frequently Asked Questions (FAQ) document based on a given topic, product, or service description and list of common customer questions. The tool processes input text and optional question prompts to produce clear, concise question-and-answer pairs formatted as an FAQ section.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The overall subject or product name for which the FAQ is to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the product, service, or domain to contextualize the FAQ content.", + "required": true, + "defaultValue": "" + }, + { + "name": "commonQuestions", + "type": "array", + "description": "An optional array of specific questions customers frequently ask related to the topic, guiding the FAQ generation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxQuestions", + "type": "number", + "description": "Maximum number of FAQ question-answer pairs to generate, capped to avoid excessive length.", + "required": false, + "defaultValue": "10" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) for the generated FAQ content.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of FAQ entries, each with a question and an answer string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to rapidly produce a clear, well-structured FAQ section for marketing websites, product pages, user support portals, or documentation based on concise input about a product or service and optionally typical customer questions. It helps automate content creation to improve user self-service and reduce support queries.", + "limitations": "The generated FAQ is only as accurate and relevant as the input description and questions provided. It may produce generic or incomplete answers if inputs lack detail. Domain-specific or highly technical FAQs might need manual review and refinement.", + "examples": [ + "Generate an FAQ for a new smart fitness watch including common questions about battery life and compatibility.", + "Create an FAQ document for an online cloud storage service based on a product description and common user concerns about security.", + "Produce up to 5 FAQ entries for an eco-friendly cleaning product focusing on usage and safety." + ] + }, + "tags": [ + "copywriting", + "FAQ", + "content generation", + "marketing", + "customer support", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Smart Home Thermostat\",\"description\":\"A state-of-the-art smart thermostat that learns your schedule, saves energy, and can be controlled via mobile app.\",\"commonQuestions\":[\"How do I install the thermostat?\",\"Is it compatible with my heating system?\",\"Can it be controlled remotely?\"],\"maxQuestions\":5,\"language\":\"en\"}", + "description": "Generate a focused FAQ for a smart thermostat covering installation, compatibility, and remote control questions." + }, + { + "inputJson": "{\"topic\":\"Organic Shampoo\",\"description\":\"A natural shampoo made with organic ingredients, free from sulfates and parabens, designed for sensitive scalp.\",\"commonQuestions\":[],\"maxQuestions\":3,\"language\":\"en\"}", + "description": "Generate a brief FAQ about an organic shampoo based on product description only, no given questions." + }, + { + "inputJson": "{\"topic\":\"Cloud Storage Pro Plan\",\"description\":\"High-capacity cloud storage with advanced encryption and 24/7 customer support.\",\"commonQuestions\":[\"How secure is my data?\",\"What is the storage limit?\"],\"maxQuestions\":4,\"language\":\"en\"}", + "description": "Generate a FAQ for a cloud storage service highlighting security and storage limit questions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "FAQ", + "context": null + } + }, + { + "name": "copywriting.generateReadme", + "description": "Generates a professional and clear README.md content for a software project. Accepts project details such as project name, description, installation instructions, usage examples, contribution guidelines, license, and outputs a well-structured markdown README file content.", + "category": "copywriting", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project to be included as the README title.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief description of the project’s purpose and features.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions on how to install the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "string", + "description": "Examples demonstrating how to use the project or its features.", + "required": false, + "defaultValue": "" + }, + { + "name": "contributionGuidelines", + "type": "string", + "description": "Guidelines for contributing to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "licenseType", + "type": "string", + "description": "The license under which the project is released (e.g., MIT, GPL).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a markdown string under the 'readmeContent' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a complete, organized README.md file for a new or existing software project. It helps automate the creation of essential documentation by combining project details into a professional markdown document, saving time and ensuring consistency.", + "limitations": "It cannot generate project-specific technical documentation beyond what is provided in parameters. It relies entirely on input details and does not analyze codebases to infer content.", + "examples": [ + "Generate a README for an open-source JavaScript library including installation and usage.", + "Create a README for a tool with contribution guidelines and license.", + "Generate a minimal README with just project name and description." + ] + }, + "tags": [ + "copywriting", + "documentation", + "readme", + "markdown", + "software", + "project" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"AwesomeLib\",\"projectDescription\":\"A JavaScript library to simplify data visualization.\",\"installationInstructions\":\"npm install awesomelib\",\"usageExamples\":\"import { Chart } from 'awesomelib';\\nconst chart = new Chart(data);\\nchart.render();\",\"contributionGuidelines\":\"Please submit pull requests with tests.\",\"licenseType\":\"MIT\"}", + "description": "Generate a full README for a JS library with installation, usage, contribution, and license." + }, + { + "inputJson": "{\"projectName\":\"MyCLI\",\"projectDescription\":\"A command-line tool for task automation.\",\"installationInstructions\":\"Download the binary from releases.\",\"usageExamples\":\"mycli --help\",\"contributionGuidelines\":\"Fork the repo and open pull requests.\",\"licenseType\":\"GPL-3.0\"}", + "description": "Generate README for a CLI tool including main sections." + }, + { + "inputJson": "{\"projectName\":\"SimpleProject\",\"projectDescription\":\"A demo project to showcase example code.\"}", + "description": "Generate a minimal README with only project name and description." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "copywriting.generateCode", + "description": "Generates ready-to-use programming code snippets or small modules based on natural language descriptions or specifications provided. Accepts parameters for desired programming language, functionality description, code style preferences, and output length constraints, producing clean example code tailored to user requirements.", + "category": "copywriting", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "The target programming language for the generated code (e.g., Python, JavaScript).", + "required": true, + "defaultValue": "" + }, + { + "name": "functionalityDescription", + "type": "string", + "description": "A detailed natural language description of the desired code functionality or behavior.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Preferred coding style or conventions to follow (e.g., functional, object-oriented, compact).", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLines", + "type": "number", + "description": "Maximum number of lines for the generated code snippet.", + "required": false, + "defaultValue": "50" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether the generated code should include explanatory comments.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string and metadata about the code, including language and estimated complexity." + }, + "aiAgent": { + "useCase": "Use this tool when a user requests coding help in natural language, such as generating a function, script, or algorithm snippet in a specific language, especially for prototyping, educational purposes, or accelerating development.", + "limitations": "The tool cannot guarantee the generated code is optimized, bug-free, or secure. It does not perform thorough validation or testing. Complex system designs or very large code bases are out of scope.", + "examples": [ + "Generate a Python function that sorts a list of integers.", + "Create a JavaScript module to validate email addresses.", + "Produce a compact JavaScript snippet that fetches data from an API and logs the result." + ] + }, + "tags": [ + "code generation", + "copywriting", + "programming", + "automation", + "developer tools", + "snippet" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"Python\",\"functionalityDescription\":\"Function to calculate the factorial of a number using recursion.\",\"codeStyle\":\"functional\",\"maxLines\":20,\"includeComments\":true}", + "description": "Generate a Python recursive factorial function with comments." + }, + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"functionalityDescription\":\"Check if a given string is a palindrome.\",\"codeStyle\":\"compact\",\"maxLines\":15,\"includeComments\":false}", + "description": "Generate a compact JavaScript function to check palindromes without comments." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "copywriting.generateMinutes", + "description": "Generates professional and concise meeting minutes from provided meeting details including agenda, attendees, discussion points, and action items. Accepts structured input of meeting data, processes it into organized and readable minutes text document, suitable for distribution.", + "category": "copywriting", + "parameters": [ + { + "name": "meetingDate", + "type": "string", + "description": "Date of the meeting in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "meetingTitle", + "type": "string", + "description": "Title or subject of the meeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "attendees", + "type": "array", + "description": "List of meeting attendees' names or roles.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "agendaItems", + "type": "array", + "description": "List of agenda topics to be discussed in the meeting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "discussionPoints", + "type": "array", + "description": "Detailed discussion points covering each agenda item with summaries.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "actionItems", + "type": "array", + "description": "List of action items with descriptions and assigned responsible persons.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "meetingDurationMinutes", + "type": "number", + "description": "Duration of the meeting in minutes.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section at the beginning of the minutes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured document containing formatted meeting minutes as a text string, including headings for date, attendees, agenda, discussions, action items, and optional summary." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw meeting details, notes, or structured inputs into a well-formatted, clear set of meeting minutes suitable for sharing with stakeholders. It is ideal for business meetings, project updates, or team syncs.", + "limitations": "Cannot generate minutes without sufficient input detail. Does not record audio or transcribe raw recordings; requires textual inputs. Quality depends on completeness of provided meeting data.", + "examples": [ + "Generate minutes from a project kickoff meeting with detailed agenda and action items.", + "Create a summary minute document from a brainstorming session notes.", + "Produce concise minutes focusing on assigned action items and decisions made." + ] + }, + "tags": [ + "copywriting", + "minutes", + "meeting", + "documentation", + "summary", + "business" + ], + "examples": [ + { + "inputJson": "{\"meetingDate\":\"2024-06-01\",\"meetingTitle\":\"Q2 Project Update\",\"attendees\":[\"Alice Smith\",\"Bob Johnson\",\"Carlos Diaz\"],\"agendaItems\":[\"Project status\",\"Budget review\",\"Next steps\"],\"discussionPoints\":[\"Project status: On track with milestones.\",\"Budget review: Additional funding required.\",\"Next steps: Prepare proposal for additional budget.\"],\"actionItems\":[{\"description\":\"Draft budget proposal\",\"assignedTo\":\"Alice Smith\"},{\"description\":\"Schedule follow-up meeting\",\"assignedTo\":\"Bob Johnson\"}],\"meetingDurationMinutes\":45,\"includeSummary\":true}", + "description": "Minutes generation for a Q2 project update meeting with agenda, discussions, and action items." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Minutes", + "context": null + } + }, + { + "name": "copywriting.generateChecklist", + "description": "Generates a comprehensive, customized checklist for marketing and promotional campaigns based on user-provided goals, target audience, campaign type, and specific tasks. Accepts details and outputs an organized list of actionable checklist items to guide marketing efforts effectively.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign (e.g., email, social media, product launch) to tailor checklist content.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the campaign's target audience to customize relevant checklist points.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignGoals", + "type": "array", + "description": "List of primary goals for the campaign (e.g., increase engagement, brand awareness) to focus checklist items.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTaskDetails", + "type": "boolean", + "description": "Whether to include detailed explanations and tips for each checklist item.", + "required": false, + "defaultValue": "false" + }, + { + "name": "deadline", + "type": "string", + "description": "Optional campaign deadline to prioritize checklist items accordingly (format: YYYY-MM-DD).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing an ordered array named checklist where each entry includes a title and optionally detailed description of task items customized for the campaign." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a structured and actionable checklist for various types of marketing campaigns to ensure all critical steps are remembered and properly executed. Particularly helpful in automating checklist generation based on campaign specifics to save time and reduce errors.", + "limitations": "Cannot replace expert marketing consultation or capture highly specialized industry compliance requirements. Checklist items are generic and depend on accurate and complete input details.", + "examples": [ + "Generate a checklist for a social media campaign targeting young adults focusing on brand awareness and engagement.", + "Create an email marketing checklist aiming to increase newsletter subscriptions with detailed task explanations.", + "Produce a product launch checklist with a deadline emphasizing pre-launch and post-launch activities." + ] + }, + "tags": [ + "copywriting", + "marketing", + "checklist", + "campaign", + "promotion", + "automation" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"social media\",\"targetAudience\":\"millennial urban professionals\",\"campaignGoals\":[\"increase engagement\",\"brand awareness\"],\"includeTaskDetails\":true}", + "description": "Generate a detailed social media campaign checklist aimed at urban millennials, focused on engagement and brand awareness." + }, + { + "inputJson": "{\"campaignType\":\"email\",\"targetAudience\":\"subscribers of tech newsletter\",\"campaignGoals\":[\"increase subscriptions\"],\"includeTaskDetails\":false}", + "description": "Generate a straightforward checklist for an email marketing campaign to boost tech newsletter subscriptions without detailed task info." + }, + { + "inputJson": "{\"campaignType\":\"product launch\",\"targetAudience\":\"retail customers\",\"campaignGoals\":[\"successful launch\",\"customer feedback\"],\"includeTaskDetails\":true,\"deadline\":\"2024-12-01\"}", + "description": "Generate a detailed product launch checklist with a set deadline emphasizing launch preparation and feedback collection." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Checklist", + "context": null + } + }, + { + "name": "copywriting.generateBrief", + "description": "Generates a concise and effective marketing brief based on product details, target audience, objectives, and tone. Accepts inputs describing the product or service, key features, target demographics, and desired style, and produces a structured brief outlining marketing goals, unique selling points, and suggested messaging strategies.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to create the brief for.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "Detailed description of the product, including key features and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended customer segment or demographic.", + "required": true, + "defaultValue": "" + }, + { + "name": "marketingObjectives", + "type": "array", + "description": "List of primary marketing objectives, such as brand awareness or lead generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "toneOfVoice", + "type": "string", + "description": "Preferred tone or style of the marketing brief, e.g., formal, casual, enthusiastic.", + "required": false, + "defaultValue": "Professional" + }, + { + "name": "competitorInsights", + "type": "string", + "description": "Optional overview of competitors or differentiators to include in the brief.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured marketing brief including objectives, target audience summary, key messaging, and recommended approach." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a streamlined marketing brief from product and audience inputs to aid marketing teams in campaign planning. Ideal for quickly summarizing essential marketing parameters into a clear document.", + "limitations": "This tool generates briefs based on provided input but does not perform deep market analysis or guarantee marketing success. It relies on accurate and sufficient input data to create useful outputs.", + "examples": [ + "Generate a marketing brief for a new eco-friendly water bottle targeting environmentally conscious millennials with an enthusiastic tone.", + "Create a brief highlighting the key selling points and objectives for a SaaS platform aiming to increase subscriptions among small businesses.", + "Produce a structured marketing brief for a luxury skincare brand emphasizing exclusivity and quality targeting affluent women." + ] + }, + "tags": [ + "copywriting", + "marketing", + "brief", + "generate", + "promotion", + "strategy" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoSip Water Bottle\",\"productDescription\":\"A reusable water bottle made from recycled materials that keeps drinks cold for 24 hours.\",\"targetAudience\":\"Environmentally conscious millennials aged 25-35.\",\"marketingObjectives\":[\"Increase brand awareness\",\"Drive online sales\"],\"toneOfVoice\":\"Enthusiastic\",\"competitorInsights\":\"Competitors focus less on sustainability, more on style.\"}", + "description": "Generate a marketing brief for an eco-friendly water bottle targeting millennials." + }, + { + "inputJson": "{\"productName\":\"CloudTrack SaaS\",\"productDescription\":\"A subscription-based cloud platform for project management and team collaboration.\",\"targetAudience\":\"Small and medium business owners seeking efficient team tools.\",\"marketingObjectives\":[\"Increase subscriptions\",\"Build brand loyalty\"],\"toneOfVoice\":\"Professional\",\"competitorInsights\":\"Strong competitors with complex UIs.\"}", + "description": "Create a marketing brief for a SaaS product targeting SMBs to improve subscriptions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Brief", + "context": null + } + }, + { + "name": "copywriting.generateSummary", + "description": "This tool accepts a document text input and generates a concise, coherent summary highlighting the key points. It processes the input text using natural language understanding techniques to produce an accurate and engaging summary suitable for marketing, presentations, or quick overviews.", + "category": "copywriting", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text of the document to summarize, typically several paragraphs or pages.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired length of the summary in number of sentences; controls conciseness.", + "required": false, + "defaultValue": "3" + }, + { + "name": "tone", + "type": "string", + "description": "Writing tone of the summary; e.g., formal, casual, professional, friendly.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "Optional list of keywords or phrases to emphasize or include in the summary.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the summary output, default is 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated summary text and metadata including length and language." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to quickly generate a brief, readable summary of a longer document or article to streamline understanding, improve marketing content creation, or prepare executive briefs. It helps in extracting key points without manual summarization.", + "limitations": "This tool cannot fully interpret highly technical or ambiguous content accurately and may miss nuanced meanings. It does not generate summaries longer than the requested sentence count and cannot analyze non-textual content.", + "examples": [ + "Generate a short professional summary of a product description document.", + "Summarize a long research article into 5 sentences with a friendly tone.", + "Create a brief overview highlighting user benefits from a technical manual." + ] + }, + "tags": [ + "copywriting", + "summary", + "marketing", + "text", + "document", + "content creation", + "natural language processing" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Our new software product offers unprecedented data processing speeds combined with ease of use. Designed for both enterprises and individual users, it supports a wide range of formats and integrates seamlessly with existing workflows.\",\"summaryLength\":2,\"tone\":\"professional\"}", + "description": "Generate a professional 2-sentence summary highlighting product features." + }, + { + "inputJson": "{\"documentText\":\"This article explains the benefits of sustainable energy and how your company can reduce its carbon footprint by adopting solar power solutions.\",\"summaryLength\":3,\"tone\":\"friendly\",\"highlightKeywords\":[\"sustainable energy\",\"solar power\"]}", + "description": "Create a friendly 3-sentence summary emphasizing sustainable energy and solar power keywords." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "copywriting.generateTemplate", + "description": "Generates marketing and promotional copywriting templates based on input parameters such as industry, target audience, template type, and tone. Inputs define the structure and style, and the output is a customizable text template suitable for marketing campaigns or promotional materials.", + "category": "copywriting", + "parameters": [ + { + "name": "industry", + "type": "string", + "description": "Industry or business sector for which to generate the copywriting template (e.g., technology, fashion).", + "required": true, + "defaultValue": "" + }, + { + "name": "templateType", + "type": "string", + "description": "Type of marketing template to generate (e.g., email, social media post, landing page).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience or customer persona for whom the template is intended.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of voice for the template (e.g., professional, casual, enthusiastic).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action section in the template.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the template output.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated copywriting template text and metadata such as the industry, template type, and tone." + }, + "aiAgent": { + "useCase": "When an AI agent needs to quickly generate structured marketing content frameworks tailored to specific industries and audiences, this tool produces detailed copywriting templates that can be customized and refined further. Useful for automated marketing content generation and campaign planning.", + "limitations": "This tool generates templates and frameworks, not complete finalized copy. It cannot replace creative human copywriting nuance or verify factual claims. Output should be reviewed and edited before use.", + "examples": [ + "Generate a social media post template for the fitness industry targeting young adults with an enthusiastic tone.", + "Create an email marketing template for a B2B technology company with a professional tone including a call to action.", + "Produce a landing page copy template for an eco-friendly product in Spanish language." + ] + }, + "tags": [ + "copywriting", + "template", + "marketing", + "promotional", + "automation", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"industry\":\"fitness\",\"templateType\":\"social media post\",\"targetAudience\":\"young adults\",\"tone\":\"enthusiastic\",\"includeCallToAction\":true,\"language\":\"en\"}", + "description": "Generate a social media marketing template targeted at young adults in the fitness industry with an enthusiastic tone and call to action." + }, + { + "inputJson": "{\"industry\":\"technology\",\"templateType\":\"email\",\"targetAudience\":\"B2B clients\",\"tone\":\"professional\",\"includeCallToAction\":true,\"language\":\"en\"}", + "description": "Generate a professional email marketing template for B2B technology company including call to action." + }, + { + "inputJson": "{\"industry\":\"eco-friendly products\",\"templateType\":\"landing page\",\"language\":\"es\",\"tone\":\"professional\",\"includeCallToAction\":true}", + "description": "Generate a Spanish landing page copy template for eco-friendly products with a professional tone." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "copywriting.generateSchema", + "description": "Generates a structured JSON schema for marketing content based on specified content types and attributes. Accepts input detailing desired content elements and outputs a JSON schema defining the structure and constraints for automated or guided copy creation.", + "category": "copywriting", + "parameters": [ + { + "name": "contentType", + "type": "string", + "description": "Type of marketing content schema to generate (e.g., 'productDescription', 'adCopy', 'emailNewsletter').", + "required": true, + "defaultValue": "" + }, + { + "name": "attributes", + "type": "array", + "description": "List of content attributes to include, each defining a field name and expected data type (e.g., [{\"field\":\"headline\",\"type\":\"string\"}, {\"field\":\"callToAction\",\"type\":\"string\"}]).", + "required": true, + "defaultValue": "" + }, + { + "name": "requiredFields", + "type": "array", + "description": "Array of attribute field names to be marked as required in the schema.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Flag to include example values in the generated schema to illustrate content format.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the generated JSON schema for the specified marketing content type, including properties, types, required fields, and optionally examples." + }, + "aiAgent": { + "useCase": "This tool is intended for AI agents tasked with generating structured templates or validation schemas for marketing copywriting content. It helps define clear schema structures for automated content generation engines or content management systems that require standardized input formats.", + "limitations": "The tool produces schema definitions but does not generate the actual marketing text content. It requires explicit attribute and content type inputs and does not infer content semantics beyond the given specifications.", + "examples": [ + "Generate a schema for product description including headline, features, and call to action.", + "Create a JSON schema for ad copy with required fields headline and offer details.", + "Produce a newsletter schema with subject, intro text, main content, and signature fields, including examples." + ] + }, + "tags": [ + "copywriting", + "schema", + "marketing", + "automation", + "content-structure", + "json-schema" + ], + "examples": [ + { + "inputJson": "{\"contentType\":\"productDescription\",\"attributes\":[{\"field\":\"headline\",\"type\":\"string\"},{\"field\":\"features\",\"type\":\"array\"},{\"field\":\"callToAction\",\"type\":\"string\"}],\"requiredFields\":[\"headline\",\"callToAction\"],\"includeExamples\":true}", + "description": "Generate a JSON schema for a product description content type, marking headline and callToAction as required, with example values included." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "copywriting.generateTranscript", + "description": "Generates a written transcript from audio or video content by accepting a spoken content input or its summary, and producing a coherent, reader-friendly transcript that captures spoken words with clarity and correct formatting suitable for publication or accessibility purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "audioContent", + "type": "string", + "description": "The URL or base64 string of the audio or video file to transcribe.", + "required": false, + "defaultValue": "" + }, + { + "name": "spokenContentSummary", + "type": "string", + "description": "A brief textual summary or notes of the spoken content, used when audio input is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language spoken in the audio content for accurate transcription (e.g., 'en', 'es').", + "required": true, + "defaultValue": "en" + }, + { + "name": "includeSpeakerLabels", + "type": "boolean", + "description": "Whether to include speaker labels in the transcript for multi-person conversations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "formattingStyle", + "type": "string", + "description": "Preferred formatting style for the transcript output such as 'verbatim', 'clean', or 'summary'.", + "required": false, + "defaultValue": "clean" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the final transcript text, metadata like word count, and optionally speaker labels if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create readable, accurate transcripts from audio or video materials for marketing content, interviews, podcasts, or presentations to facilitate accessibility, content repurposing, and documentation.", + "limitations": "This tool requires either an audio/video input or an accurate summary to generate a transcript. It cannot perfectly transcribe poor quality audio, multiple overlapping speakers without clear separation, or translate languages.", + "examples": [ + "Generate a transcript from the uploaded podcast audio in English with speaker labels.", + "Create a clean transcript from a meeting summary without audio input.", + "Produce a verbatim transcript from a webinar audio file in Spanish without speaker differentiation." + ] + }, + "tags": [ + "copywriting", + "transcription", + "marketing", + "audio processing", + "content creation", + "accessibility" + ], + "examples": [ + { + "inputJson": "{\"audioContent\":\"https://example.com/podcast-episode.mp3\",\"language\":\"en\",\"includeSpeakerLabels\":true,\"formattingStyle\":\"clean\"}", + "description": "Generate a clean transcript from a podcast audio with speaker labels." + }, + { + "inputJson": "{\"spokenContentSummary\":\"In this webinar, we discussed Q3 marketing strategy and upcoming product launches.\",\"language\":\"en\",\"formattingStyle\":\"summary\"}", + "description": "Generate a summarized transcript based on webinar notes without audio input." + }, + { + "inputJson": "{\"audioContent\":\"base64audio==\",\"language\":\"es\",\"includeSpeakerLabels\":false,\"formattingStyle\":\"verbatim\"}", + "description": "Create a verbatim transcript from a Spanish audio recording without speaker labels." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Transcript", + "context": null + } + }, + { + "name": "copywriting.generateReleaseNotes", + "description": "Generates professional and clear release notes based on the input details of a software release. Accepts information such as version number, release date, a list of features, bug fixes, improvements, deprecated features, and known issues. Produces well-structured, human-readable release notes text suitable for publication to end users or stakeholders.", + "category": "copywriting", + "parameters": [ + { + "name": "version", + "type": "string", + "description": "The version number of the release (e.g., '2.5.1').", + "required": true, + "defaultValue": "" + }, + { + "name": "releaseDate", + "type": "string", + "description": "The date of the release in ISO format (e.g., '2024-06-20').", + "required": false, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "An array of new features added in this release. Each item is a short descriptive string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bugFixes", + "type": "array", + "description": "An array of bug fixes included in this release. Each item is a short descriptive string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "improvements", + "type": "array", + "description": "An array of improvements or enhancements made in this release. Each item is a short descriptive string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deprecatedFeatures", + "type": "array", + "description": "An array listing any features that are deprecated or removed in this release.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "knownIssues", + "type": "array", + "description": "An array listing known issues or limitations that users should be aware of in this release.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "audience", + "type": "string", + "description": "Optional target audience for the release notes (e.g., 'end-users', 'developers').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property 'releaseNotesText' with the generated release notes." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create clear, professional release notes for software or applications based on structured input about version, changes, fixes, and issues. Particularly useful to automate the creation of release communications or documentation updates by summarizing input details into natural language notes.", + "limitations": "This tool generates release notes text based solely on the provided input and cannot infer missing details or verify the accuracy of input data. It does not create formatted documents such as PDFs or HTML but only generates plain text notes.", + "examples": [ + "Generate release notes for a version 1.3.0 release including new features, bug fixes, and known issues.", + "Create release notes targeted at developers, highlighting deprecated features and improvements in version 2.0.0.", + "Produce release notes for an interim patch release version 2.1.2 containing only bug fixes." + ] + }, + "tags": [ + "copywriting", + "release notes", + "documentation", + "software", + "marketing", + "automation", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"version\":\"1.3.0\",\"releaseDate\":\"2024-06-21\",\"features\":[\"Added dark mode support\",\"Integrated new payment gateway\"],\"bugFixes\":[\"Fixed crash on startup on iOS 14\",\"Resolved data sync issue under poor network conditions\"],\"improvements\":[\"Improved app loading speed\",\"Enhanced security for user data\"],\"deprecatedFeatures\":[],\"knownIssues\":[\"Occasional UI flicker on Android 11 devices\"],\"audience\":\"end-users\"}", + "description": "Release notes for a major feature release targeting end users with features, fixes, improvements, and known issues." + }, + { + "inputJson": "{\"version\":\"2.0.0\",\"releaseDate\":\"2024-07-01\",\"features\":[\"Added support for multiple user profiles\"],\"bugFixes\":[],\"improvements\":[\"Refactored backend API for better scalability\"],\"deprecatedFeatures\":[\"Removed legacy authentication methods\"],\"knownIssues\":[],\"audience\":\"developers\"}", + "description": "Release notes focusing on developer audience highlighting new features, improvements, and deprecated features for a major version update." + }, + { + "inputJson": "{\"version\":\"2.1.2\",\"releaseDate\":\"2024-07-10\",\"features\":[],\"bugFixes\":[\"Patched security vulnerability in login module\"],\"improvements\":[],\"deprecatedFeatures\":[],\"knownIssues\":[],\"audience\":\"end-users\"}", + "description": "Patch release notes listing only the bug fixes and no new features or improvements." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "ReleaseNotes", + "context": null + } + }, + { + "name": "copywriting.generateChangelog", + "description": "Generates a professional and clear changelog document based on provided version updates, feature descriptions, bug fixes, and improvements. Accepts structured update data and outputs formatted changelog text suitable for release notes or documentation.", + "category": "copywriting", + "parameters": [ + { + "name": "version", + "type": "string", + "description": "The version number for the release (e.g., '1.2.0').", + "required": true, + "defaultValue": "" + }, + { + "name": "releaseDate", + "type": "string", + "description": "The release date in ISO format (e.g., '2024-05-30').", + "required": false, + "defaultValue": "" + }, + { + "name": "addedFeatures", + "type": "array", + "description": "List of new features added in this version, each as a string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fixedBugs", + "type": "array", + "description": "List of bugs fixed in this version, each as a string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "improvements", + "type": "array", + "description": "List of general improvements or optimizations in this release, each as a string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "breakingChanges", + "type": "array", + "description": "List of breaking changes or important notes that users should be aware of, each as a string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Output changelog style format: options like 'markdown', 'plaintext', or 'html'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the changelog text formatted as specified, with a single property 'changelogText' containing the full changelog string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate professional changelog text from structured release update data to maintain up-to-date release notes or product documentation. It helps ensure consistency and clarity in software or product update announcements.", + "limitations": "This tool cannot infer updates from unstructured text or code diffs automatically; input data must be well-structured. It does not generate detailed technical descriptions or interpret ambiguous update entries.", + "examples": [ + "Generate a markdown formatted changelog for version '2.0.0' released today including new features, bug fixes and breaking changes.", + "Create a plaintext changelog for a patch version with only bug fixes and improvements listed.", + "Produce an HTML changelog snippet for embedding in a website release notes section." + ] + }, + "tags": [ + "copywriting", + "changelog", + "release-notes", + "documentation", + "marketing", + "versioning" + ], + "examples": [ + { + "inputJson": "{\"version\":\"1.4.0\",\"releaseDate\":\"2024-06-01\",\"addedFeatures\":[\"Added user profile customization options\",\"Implemented dark mode support\"],\"fixedBugs\":[\"Fixed crash on logout\",\"Resolved layout issue on mobile devices\"],\"improvements\":[\"Improved loading speed\",\"Enhanced security for authentication\"],\"breakingChanges\":[\"Removed deprecated API endpoints\"],\"formatStyle\":\"markdown\"}", + "description": "Generate a markdown changelog for version 1.4.0 with various update categories." + }, + { + "inputJson": "{\"version\":\"1.3.2\",\"addedFeatures\":[],\"fixedBugs\":[\"Fixed typo in settings page\"],\"improvements\":[\"Optimized database queries\"],\"formatStyle\":\"plaintext\"}", + "description": "Create a simple plaintext changelog highlighting minor bug fix and improvement for patch version." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Changelog", + "context": null + } + }, + { + "name": "copywriting.generateDocument", + "description": "Generates a marketing or promotional document based on user-defined parameters like target audience, product details, tone, document type, and length. Processes these inputs to produce a well-structured, persuasive text tailored for the intended purpose, such as brochures, email campaigns, or press releases.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for whom the document is intended.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of marketing document to generate (e.g., brochure, email, press release).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone or style of the document (e.g., friendly, professional, urgent).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key features or selling points to highlight in the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "desiredLength", + "type": "number", + "description": "Approximate length of the document in words.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing document text and a summary of its characteristics." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to create customized marketing or promotional documents quickly based on product details and audience insights. It helps generate polished text tailored to specific campaign goals and formats, accelerating content creation workflows.", + "limitations": "Cannot generate document with highly technical or legal accuracy without expert input. May produce generic content if input details are insufficient or vague.", + "examples": [ + "Generate a friendly brochure text for a new fitness tracker targeting millennials.", + "Create a professional press release announcing the launch of a new software product for enterprise clients.", + "Write an urgent email campaign promoting a limited-time offer on home security systems." + ] + }, + "tags": [ + "copywriting", + "marketing", + "content generation", + "promotional", + "document", + "advertising", + "brand messaging" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoSmart Water Bottle\",\"targetAudience\":\"Environmentally conscious young adults\",\"documentType\":\"brochure\",\"tone\":\"friendly\",\"keyFeatures\":[\"BPA-free\",\"Double insulated\",\"Keeps drinks cold for 24h\"],\"desiredLength\":250}", + "description": "Generate a friendly brochure for an eco-friendly water bottle targeting young adults." + }, + { + "inputJson": "{\"productName\":\"SecurePay Online\",\"targetAudience\":\"Small business owners looking for easy payment solutions\",\"documentType\":\"email\",\"tone\":\"professional\",\"keyFeatures\":[\"Low fees\",\"24/7 support\",\"Easy integration\"],\"desiredLength\":150}", + "description": "Write a professional email promoting an online payment service for small businesses." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "copywriting.generateBlogPost", + "description": "Generates a comprehensive blog post based on the given topic, target audience, desired length, and tone. The tool processes input parameters to create a coherent, engaging, and well-structured article suitable for marketing or informational purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the blog post to write about.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers of the blog post (e.g., beginners, tech professionals).", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired word count for the blog post.", + "required": false, + "defaultValue": "800" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style for the blog post (e.g., formal, casual, persuasive).", + "required": false, + "defaultValue": "informative" + }, + { + "name": "keywords", + "type": "array", + "description": "A list of keywords to naturally incorporate in the blog post for SEO purposes.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post text and metadata like word count." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to quickly generate marketing, educational, or informative blog content tailored to specific topics and audiences. It helps automate content creation in digital marketing, content strategy, or communications roles.", + "limitations": "The tool cannot replace expert review or domain-specific accuracy validation. It may produce generic or slightly off-topic content if parameters are vague or insufficient. It is not designed for highly technical or legal content requiring precise citations.", + "examples": [ + "Generate a 1000-word persuasive blog post about sustainable fashion targeting environmentally conscious consumers.", + "Create a casual style 500-word article explaining the benefits of meditation for beginners.", + "Write an informative blog post about cloud computing trends incorporating keywords 'cloud security' and 'hybrid cloud'." + ] + }, + "tags": [ + "copywriting", + "blogging", + "content creation", + "marketing", + "SEO", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work\",\"targetAudience\":\"HR managers and team leaders\",\"length\":1000,\"tone\":\"professional\",\"keywords\":[\"remote work\",\"flexible schedule\"]}", + "description": "Generate a professional, 1000-word blog post about benefits of remote work aimed at HR managers, including specified SEO keywords." + }, + { + "inputJson": "{\"topic\":\"Top 5 programming languages in 2024\",\"length\":800,\"tone\":\"informative\"}", + "description": "Create an informative 800-word article listing the top programming languages in 2024 with no specific audience or keywords." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "copywriting.generateArticle", + "description": "Generates a well-structured, coherent article based on a provided topic and style preferences. Accepts inputs such as topic keywords, target audience, desired tone, length, and optional subtopics, then produces a formatted article text suitable for marketing or informational purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme for the article to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers, to help tailor language and content complexity.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The writing style or mood, e.g. formal, casual, enthusiastic, persuasive.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the article in words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "subtopics", + "type": "array", + "description": "List of specific points or themes to be covered within the article for focus and structure.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to append a marketing call to action at the end of the article.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text and metadata such as estimated word count." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce original, coherent, and contextually relevant articles for marketing, blogging, or informational websites based on topical inputs and style preferences.", + "limitations": "May not capture highly specialized or technical domain expertise accurately without domain-specific training data; output should be reviewed for factual accuracy and compliance.", + "examples": [ + "Generate an article on sustainable tourism targeted at environmentally conscious travelers, with a friendly tone.", + "Create a 750-word formal article about cybersecurity risks for small business owners, including detailed subtopics on phishing and malware and a call to action.", + "Write a brief casual article introducing the benefits of meditation for busy professionals." + ] + }, + "tags": [ + "copywriting", + "article", + "marketing", + "content-generation", + "writing", + "SEO" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"sustainable tourism\",\"targetAudience\":\"environmentally conscious travelers\",\"tone\":\"friendly\",\"length\":600,\"subtopics\":[\"eco-friendly practices\",\"local community support\"],\"includeCallToAction\":true}", + "description": "Generate a friendly, 600-word article on sustainable tourism focusing on eco-friendly practices and supporting local communities with a call to action." + }, + { + "inputJson": "{\"topic\":\"cybersecurity risks\",\"targetAudience\":\"small business owners\",\"tone\":\"formal\",\"length\":750,\"subtopics\":[\"phishing\",\"malware\"],\"includeCallToAction\":true}", + "description": "Create a formal 750-word article about cybersecurity risks aimed at small business owners, covering phishing and malware, including a call to action." + }, + { + "inputJson": "{\"topic\":\"meditation benefits\",\"targetAudience\":\"busy professionals\",\"tone\":\"casual\",\"length\":400,\"subtopics\":[],\"includeCallToAction\":false}", + "description": "Write a casual 400-word article introducing meditation benefits for busy professionals with no additional call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "copywriting.generateReport", + "description": "Generates a structured marketing report based on input parameters including target audience, product details, campaign goals, and tone. The tool synthesizes these inputs to create a comprehensive report suitable for marketing teams outlining strategy, expected results, and key messaging.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to be featured in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the marketing campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignGoals", + "type": "string", + "description": "Primary objectives of the marketing campaign such as increasing brand awareness or driving sales.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the report, e.g., professional, casual, persuasive.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section at the start of the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the generated report in number of words.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing report text under the key 'reportContent'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce well-organized marketing strategy reports automatically from high-level campaign inputs. It helps marketing teams quickly generate drafts that outline key campaign elements, target audiences, goals, and messaging strategies.", + "limitations": "This tool generates text based on input parameters but does not create visual elements, detailed analytics, or personalized data insights. It is not a substitute for expert marketing consulting and may produce generalized content.", + "examples": [ + "Generate a marketing report for a new smartphone targeting young adults focusing on brand awareness with a persuasive tone.", + "Create a brief marketing strategy report for an eco-friendly detergent product for environmentally conscious consumers with a professional tone." + ] + }, + "tags": [ + "copywriting", + "report", + "marketing", + "strategy", + "automation" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoClean Detergent\",\"targetAudience\":\"Environmentally conscious consumers aged 25-40\",\"campaignGoals\":\"Increase brand awareness and drive sales in organic markets\",\"tone\":\"professional\",\"includeSummary\":true,\"length\":1200}", + "description": "Generate a detailed marketing report for an eco-friendly detergent targeting green consumers, emphasizing brand awareness goals." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "copywriting.createCitation", + "description": "Generates a formatted citation text snippet based on provided source information and citation style. Accepts input details like author, title, publication date, and source type, then produces a properly styled citation string suitable for marketing or promotional content referencing.", + "category": "copywriting", + "parameters": [ + { + "name": "author", + "type": "string", + "description": "Full name(s) of the author(s) of the source material.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the source document or content.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationDate", + "type": "string", + "description": "Publication date or year of the source, in ISO 8601 or YYYY format.", + "required": false, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of source (e.g., book, article, website, report).", + "required": true, + "defaultValue": "" + }, + { + "name": "publisher", + "type": "string", + "description": "Name of the publisher or organization that produced the source.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "Web address if the source is online, used to generate URL citations.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style to use for formatting (e.g., APA, MLA, Chicago).", + "required": true, + "defaultValue": "APA" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted citation string under the key 'citationText'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce correctly formatted citations for source references within marketing or promotional text. It helps ensure proper accreditation of content sources in widely recognized citation styles, supporting credible and professional copywriting.", + "limitations": "This tool generates citations based on input parameters and common citation styles but does not verify source accuracy, completeness, or conformity to the latest style manual editions.", + "examples": [ + "Create an APA citation for a marketing report authored by Jane Smith published in 2021.", + "Generate an MLA style citation for a website article by Tom Johnson.", + "Format a Chicago style citation for a book titled 'Digital Marketing Basics' published by MarketPro in 2020." + ] + }, + "tags": [ + "copywriting", + "citation", + "marketing", + "reference", + "formatting", + "APA", + "MLA", + "Chicago" + ], + "examples": [ + { + "inputJson": "{\"author\":\"Jane Smith\",\"title\":\"2021 Market Trends\",\"publicationDate\":\"2021\",\"sourceType\":\"report\",\"publisher\":\"Insight Analytics\",\"url\":\"\",\"citationStyle\":\"APA\"}", + "description": "Generate an APA style citation for a marketing report by Jane Smith published in 2021." + }, + { + "inputJson": "{\"author\":\"Tom Johnson\",\"title\":\"How to Boost Online Engagement\",\"publicationDate\":\"\",\"sourceType\":\"website\",\"publisher\":\"\",\"url\":\"https://example.com/boost-engagement\",\"citationStyle\":\"MLA\"}", + "description": "Create an MLA citation for an online article with provided URL and author." + }, + { + "inputJson": "{\"author\":\"Michael Lee\",\"title\":\"Digital Marketing Basics\",\"publicationDate\":\"2020\",\"sourceType\":\"book\",\"publisher\":\"MarketPro\",\"url\":\"\",\"citationStyle\":\"Chicago\"}", + "description": "Format a Chicago style citation for a book with given author, title, and publisher." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Citation", + "context": null + } + }, + { + "name": "copywriting.createKPI", + "description": "Generates clear and persuasive Key Performance Indicator (KPI) descriptions for marketing and promotional content based on provided performance metrics and business goals. Accepts KPI metrics, target audience, and optional tone; produces a concise, engaging KPI statement suitable for reports, campaigns, or presentations.", + "category": "copywriting", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The name/title of the KPI to describe (e.g., 'Customer Retention Rate').", + "required": true, + "defaultValue": "" + }, + { + "name": "metricValue", + "type": "string", + "description": "Numeric or percentage value representing the KPI's current or target measurement (e.g., '85%').", + "required": true, + "defaultValue": "" + }, + { + "name": "businessGoal", + "type": "string", + "description": "The business objective related to the KPI (e.g., 'improve customer loyalty').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the KPI statement (e.g., 'executive team', 'marketing department').", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone or style for the KPI statement (e.g., 'formal', 'motivational', 'concise').", + "required": false, + "defaultValue": "concise" + } + ], + "returns": { + "type": "object", + "description": "Structured output including the KPI statement text and a summary of the KPI context." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate impactful, tailored KPI descriptions for marketing or business analytics reports that clearly convey measurement results and align with strategic goals. It helps in creating engaging and understandable KPI statements for various audiences and contexts.", + "limitations": "This tool does not generate or analyze KPI data itself; it requires accurate input metrics and goals from the user. It also cannot customize extremely technical KPI language beyond general tone adjustments.", + "examples": [ + "Create a motivational KPI statement describing a 20% increase in web traffic to emphasize marketing success for the marketing team.", + "Generate a concise KPI line for a quarterly financial report showing a 15% reduction in churn rate linking to revenue growth.", + "Write a formal KPI description aimed at executives highlighting a 90% customer satisfaction rating achieved this quarter." + ] + }, + "tags": [ + "copywriting", + "KPI", + "marketing", + "analytics", + "business", + "reporting", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"Customer Retention Rate\",\"metricValue\":\"85%\",\"businessGoal\":\"improve customer loyalty\",\"targetAudience\":\"marketing department\",\"tone\":\"motivational\"}", + "description": "Generate an engaging KPI descriptor for a marketing team showing strong retention numbers with a motivational tone." + }, + { + "inputJson": "{\"kpiName\":\"Website Traffic Growth\",\"metricValue\":\"+20%\",\"businessGoal\":\"increase brand awareness\",\"targetAudience\":\"executive team\",\"tone\":\"formal\"}", + "description": "Produce a formal KPI statement describing positive website traffic increase for an executive-level report." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "copywriting.createReference", + "description": "Creates a polished and professional reference or testimonial text for marketing purposes based on provided information about a product, service, or individual. Accepts details such as subject name, key qualities, usage context, and tone to generate an effective promotional reference statement.", + "category": "copywriting", + "parameters": [ + { + "name": "subjectName", + "type": "string", + "description": "The name of the person, product, or service the reference is about.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyQualities", + "type": "array", + "description": "A list of key qualities, features, or benefits to highlight in the reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "The usage context or situation in which the subject was used or experienced.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style of the reference text, e.g., professional, friendly, enthusiastic.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the generated reference text in words.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reference text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when a marketing or promotional reference/testimonial is needed to endorse a product, service, or individual, based on key attributes and context to produce persuasive content suitable for use in campaigns, websites, or presentations.", + "limitations": "This tool generates generic, plausible references based on input but cannot verify authenticity or provide real customer testimonials.", + "examples": [ + "Create a positive professional reference for a software product highlighting reliability and user support.", + "Generate a friendly testimonial for a consulting service emphasizing personalized attention and results." + ] + }, + "tags": [ + "copywriting", + "reference", + "testimonial", + "marketing", + "promotion", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"subjectName\":\"BrightTech CRM\",\"keyQualities\":[\"user-friendly interface\",\"excellent customer support\",\"scalable features\"],\"context\":\"used by small businesses for sales management\",\"tone\":\"professional\",\"length\":80}", + "description": "Generate a professional testimonial for a CRM software highlighting key benefits and usage context." + }, + { + "inputJson": "{\"subjectName\":\"Jane Doe Consulting\",\"keyQualities\":[\"personalized strategies\",\"quick turnaround\",\"result-oriented approach\"],\"context\":\"consulting services for startups\",\"tone\":\"friendly\",\"length\":60}", + "description": "Create a friendly marketing reference for a consulting service focused on startups." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "copywriting.createQuote", + "description": "Generates an inspiring or promotional quote tailored to a specific theme or product. Accepts parameters for tone, style, target audience, and key message. Outputs a polished quote suitable for marketing materials, social media, or promotional content.", + "category": "copywriting", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "The main subject or theme for the quote (e.g., motivation, innovation, teamwork).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The emotional style of the quote such as uplifting, witty, formal, or casual.", + "required": false, + "defaultValue": "inspirational" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the quote, helping tailor language and impact (e.g., entrepreneurs, students, general public).", + "required": false, + "defaultValue": "" + }, + { + "name": "keyMessage", + "type": "string", + "description": "A core message or idea the quote should convey or emphasize.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the quote to fit specific mediums.", + "required": false, + "defaultValue": "120" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated quote text and metadata like length and tone." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create catchy, thematic quotes for marketing campaigns, social media posts, speeches, or motivational contexts. It's especially useful to produce tailored quotes with a specific emotional tone and audience in mind to enhance engagement and relevance.", + "limitations": "This tool cannot verify factual accuracy if specific data is involved in the quote and does not generate multi-sentence paragraphs or detailed content beyond a short quote.", + "examples": [ + "Create an inspiring quote about teamwork for corporate professionals.", + "Generate a witty quote related to technology for social media.", + "Provide a motivational quote under 100 characters for student audience." + ] + }, + "tags": [ + "copywriting", + "quote", + "marketing", + "social-media", + "inspiration", + "promotional-content" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"motivation\",\"tone\":\"uplifting\",\"targetAudience\":\"entrepreneurs\",\"keyMessage\":\"perseverance leads to success\",\"maxLength\":100}", + "description": "Generate an uplifting motivational quote about perseverance for entrepreneurs, max 100 characters." + }, + { + "inputJson": "{\"theme\":\"innovation\",\"tone\":\"formal\",\"targetAudience\":\"technology executives\",\"keyMessage\":\"embracing change\",\"maxLength\":140}", + "description": "Produce a formal quote on innovation and embracing change for tech executives, max 140 characters." + }, + { + "inputJson": "{\"theme\":\"teamwork\",\"tone\":\"casual\",\"targetAudience\":\"young professionals\",\"keyMessage\":\"collaboration wins\",\"maxLength\":120}", + "description": "Create a casual quote about teamwork and collaboration targeted at young professionals, maximum 120 chars." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "copywriting.createLink", + "description": "Generates a marketing-friendly hyperlink with customizable anchor text and optional tracking parameters. Accepts a base URL and descriptive text, then outputs a full HTML anchor tag or plain URL with UTM parameters for promotional campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The main URL to which the link should point, e.g., a product or landing page URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "anchorText", + "type": "string", + "description": "The visible text for the hyperlink that will be displayed to users.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeUtm", + "type": "boolean", + "description": "Whether to append UTM tracking parameters to the URL for campaign analytics.", + "required": false, + "defaultValue": "false" + }, + { + "name": "utmSource", + "type": "string", + "description": "The UTM source identifier, e.g., 'newsletter' or 'social'. Used only if includeUtm is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "utmMedium", + "type": "string", + "description": "The UTM medium descriptor, like 'email' or 'cpc'. Used only if includeUtm is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "utmCampaign", + "type": "string", + "description": "The UTM campaign name to track the marketing effort, e.g., 'spring-sale'. Used only if includeUtm is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format for the generated link: 'html' for anchor tag, or 'url' for plain URL string.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated link either as an HTML anchor tag or plain URL string, depending on outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create attractive, trackable promotional links for marketing content. It helps dynamically construct URLs with embedded tracking parameters and present them either as clickable HTML or simple text links suitable for emails, websites, or social media posts.", + "limitations": "This tool cannot create shortened URLs or guarantee the validity of the input URLs. It also doesn't generate QR codes or graphical elements.", + "examples": [ + "Generate an HTML link with UTM parameters for an email campaign.", + "Create a plain URL with custom anchor text for social media posting.", + "Produce a hyperlink without tracking parameters for a simple product link." + ] + }, + "tags": [ + "copywriting", + "marketing", + "linkGeneration", + "utm", + "promotionalLinks", + "htmlAnchor" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://example.com/product\",\"anchorText\":\"Check out our new product!\",\"includeUtm\":true,\"utmSource\":\"newsletter\",\"utmMedium\":\"email\",\"utmCampaign\":\"spring-sale\",\"outputFormat\":\"html\"}", + "description": "Generate an HTML anchor tag with UTM parameters for an email newsletter campaign." + }, + { + "inputJson": "{\"baseUrl\":\"https://example.com/offer\",\"anchorText\":\"Limited Time Offer\",\"includeUtm\":true,\"utmSource\":\"social\",\"utmMedium\":\"cpc\",\"utmCampaign\":\"holiday-deal\",\"outputFormat\":\"url\"}", + "description": "Generate a plain URL with UTM parameters suitable for social media paid campaign." + }, + { + "inputJson": "{\"baseUrl\":\"https://example.com/about\",\"anchorText\":\"Learn More\",\"includeUtm\":false,\"outputFormat\":\"html\"}", + "description": "Generate a simple HTML anchor link without any tracking parameters." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "copywriting.createHeading", + "description": "This tool generates compelling and attention-grabbing headings based on input keywords or topics and the intended audience or tone. It processes these inputs to produce suitable, concise, marketing-focused headings for use in advertisements, blogs, emails, or social media.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme for the heading to focus on.", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Target audience the heading should appeal to, e.g., professionals, teenagers, or fitness enthusiasts.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the heading, such as formal, casual, humorous, or urgent.", + "required": false, + "defaultValue": "casual" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length allowed for the heading to ensure brevity and impact.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeKeyword", + "type": "boolean", + "description": "Whether to explicitly include the main topic keyword in the heading for SEO or clarity.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading string under the key 'heading'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create effective marketing or promotional headings tailored to specific topics, audiences, and tones to improve engagement and clarity in copywriting tasks. It helps generate creative, contextual headline ideas quickly.", + "limitations": "It cannot guarantee originality or trademark safety of headings. It also cannot replace deep human creativity for highly nuanced branding or legal review.", + "examples": [ + "Create a catchy heading about sustainable fashion targeting eco-conscious consumers with a casual tone.", + "Generate a formal heading for a financial report summary for professional investors.", + "Produce a short humorous heading about coffee benefits for young adults." + ] + }, + "tags": [ + "copywriting", + "heading", + "marketing", + "content creation", + "advertising", + "SEO" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"healthy snacks\",\"audience\":\"parents\",\"tone\":\"friendly\",\"maxLength\":50,\"includeKeyword\":true}", + "description": "Generate a friendly, concise heading about healthy snacks aimed at parents." + }, + { + "inputJson": "{\"topic\":\"cloud security\",\"audience\":\"IT professionals\",\"tone\":\"formal\",\"maxLength\":70,\"includeKeyword\":true}", + "description": "Create a formal heading focused on cloud security targeted at IT professionals." + }, + { + "inputJson": "{\"topic\":\"summer sale\",\"audience\":\"general public\",\"tone\":\"urgent\",\"maxLength\":40,\"includeKeyword\":false}", + "description": "Produce a short, urgent heading about a summer sale without necessarily including the topic keyword explicitly." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "copywriting.createText", + "description": "Generates marketing or promotional text based on input parameters including target audience, product description, tone, and desired text length. Processes inputs with NLP models to produce persuasive and customized copy for various marketing channels.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "Detailed description of the product or service features and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the text, including demographics and preferences.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the text, e.g., professional, casual, enthusiastic, or humorous.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "textLength", + "type": "number", + "description": "Approximate length of the generated text in words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action to include at the end of the text.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated promotional text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create customized marketing or promotional copy based on specific product details and audience profiles. Ideal for generating content for ads, social media posts, emails, or product descriptions that match a given tone and length requirement.", + "limitations": "Cannot guarantee uniqueness or compliance with advertising standards. Generated text may require human review to ensure factual accuracy and appropriateness for specific brands or regulatory environments.", + "examples": [ + "Generate a professional 100-word product description for a new smartphone targeted at tech-savvy millennials with a call to action to buy now.", + "Create a casual and enthusiastic social media post promoting a new organic skincare line aimed at eco-conscious consumers.", + "Write a brief, humorous promotional email for a coffee subscription service aimed at young adults." + ] + }, + "tags": [ + "copywriting", + "marketing", + "text generation", + "promotional content", + "NLP", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoClean Dishwasher\",\"productDescription\":\"A fully automatic dishwasher using eco-friendly detergents and low water consumption.\",\"targetAudience\":\"Environmentally conscious homeowners aged 30-50.\",\"tone\":\"professional\",\"textLength\":120,\"callToAction\":\"Order yours today to make your home greener!\"}", + "description": "Generate a professional promotional text for an eco-friendly dishwasher targeting environmentally conscious homeowners." + }, + { + "inputJson": "{\"productName\":\"GlowUp Serum\",\"productDescription\":\"A vitamin-rich face serum that hydrates skin and reduces wrinkles.\",\"targetAudience\":\"Women aged 25-40 interested in skincare.\",\"tone\":\"enthusiastic\",\"textLength\":80,\"callToAction\":\"Try GlowUp Serum now for radiant skin!\"}", + "description": "Create a short enthusiastic marketing text for a skincare product aimed at women interested in beauty treatments." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "copywriting.createSentence", + "description": "Generates a concise, persuasive marketing or promotional sentence based on provided product or service details, target audience, and desired tone. Accepts textual inputs describing key product features and outputs a polished sentence suitable for use in ads, social media, or promotional materials.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "Brief description of the product or service to promote, including key features and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the marketing sentence, e.g., young adults, professionals, hobbyists.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the sentence, such as casual, professional, enthusiastic, or authoritative.", + "required": false, + "defaultValue": "casual" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated sentence in characters, to fit specific use cases like tweets or ads.", + "required": false, + "defaultValue": "140" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated promotional sentence as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need a single, compelling marketing sentence crafted from raw product or service details to quickly generate promotional content tailored to a specific target audience and tone. Ideal for social media posts, ad copy snippets, or headline generation.", + "limitations": "This tool generates only one sentence at a time and does not create full paragraphs or extensive marketing plans. It may not reflect nuanced brand voice details without careful input.", + "examples": [ + "Create a catchy sentence for a new energy drink targeting athletes with an enthusiastic tone.", + "Generate a professional promotional sentence for a software tool aimed at business consultants." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotion", + "sentence generation", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"A smartwatch that tracks fitness metrics and monitors heart rate in real-time.\",\"targetAudience\":\"fitness enthusiasts\",\"tone\":\"enthusiastic\",\"maxLength\":120}", + "description": "Generate an enthusiastic marketing sentence for a fitness smartwatch targeting fitness enthusiasts." + }, + { + "inputJson": "{\"productDescription\":\"Cloud-based project management software with collaboration tools.\",\"targetAudience\":\"small business owners\",\"tone\":\"professional\",\"maxLength\":140}", + "description": "Create a professional marketing sentence promoting project management software to small business owners." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Sentence", + "context": null + } + }, + { + "name": "copywriting.createParagraph", + "description": "Generates a compelling marketing paragraph based on provided topic, target audience, tone, and key points. It processes the input to create an engaging piece of promotional text tailored to the brand voice and campaign goals.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or product for the marketing paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the paragraph (e.g., young professionals, tech enthusiasts).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone for the paragraph such as friendly, professional, enthusiastic, or casual.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of key features or benefits to highlight in the paragraph.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the paragraph in words; defaults to 100 words.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing paragraph text." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate engaging marketing paragraphs for products, services, or campaigns. It helps draft promotional content tailored to a specific audience, tone, and message points, streamlining copywriting tasks for marketing teams or automated content generation.", + "limitations": "This tool cannot replace detailed copywriting strategy, deep brand insight, or highly specialized content creation. It may produce generic text if inputs are vague or too broad.", + "examples": [ + "Create a friendly promotional paragraph about a new fitness app for young adults.", + "Generate an enthusiastic paragraph highlighting the eco-friendly features of a product targeting environmentally conscious consumers.", + "Write a professional marketing paragraph about a SaaS platform for corporate clients focusing on security features." + ] + }, + "tags": [ + "copywriting", + "marketing", + "content generation", + "paragraph creation", + "promotional text", + "branding" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Smart Home Security System\",\"targetAudience\":\"homeowners concerned about safety\",\"tone\":\"professional\",\"keyPoints\":[\"24/7 monitoring\",\"easy installation\",\"mobile app access\"],\"maxLength\":80}", + "description": "Generate a professional marketing paragraph about a smart home security system targeting homeowners." + }, + { + "inputJson": "{\"topic\":\"Organic Skincare Line\",\"targetAudience\":\"eco-conscious millennials\",\"tone\":\"enthusiastic\",\"keyPoints\":[\"natural ingredients\",\"cruelty-free\",\"sustainable packaging\"],\"maxLength\":100}", + "description": "Create an enthusiastic paragraph emphasizing the natural and ethical qualities of an organic skincare line for millennials." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "copywriting.createWord", + "description": "Generates a single compelling and contextually appropriate word tailored for marketing and promotional content. Accepts parameters defining the desired tone, industry context, word length, and style preferences to produce an effective, catchy word that fits specific branding or campaign needs.", + "category": "copywriting", + "parameters": [ + { + "name": "industry", + "type": "string", + "description": "The industry or product category the word should relate to (e.g., technology, fashion, food).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The emotional tone or mood of the word (e.g., playful, professional, luxurious).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word.", + "required": false, + "defaultValue": "15" + }, + { + "name": "style", + "type": "string", + "description": "Preferred stylistic attribute of the word (e.g., modern, classic, futuristic).", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the generated word (default is English).", + "required": false, + "defaultValue": "English" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word and optional metadata such as reasoning or related keywords." + }, + "aiAgent": { + "useCase": "Use when needing a unique, brand-appropriate word for marketing copy, product names, slogans, or promotional materials to capture the target audience's attention and convey specific brand attributes.", + "limitations": "Cannot guarantee trademark uniqueness or legal clearance; not suitable for generating multi-word phrases or full sentences.", + "examples": [ + "Create a playful word for a children's toy brand.", + "Generate a futuristic-sounding word related to technology.", + "Produce a luxurious one-word brand name for a high-end fashion line." + ] + }, + "tags": [ + "copywriting", + "branding", + "marketing", + "word-generation", + "naming" + ], + "examples": [ + { + "inputJson": "{\"industry\":\"technology\",\"tone\":\"futuristic\",\"maxLength\":10,\"style\":\"modern\",\"language\":\"English\"}", + "description": "Generate a modern, futuristic word up to 10 characters long related to technology." + }, + { + "inputJson": "{\"industry\":\"food\",\"tone\":\"playful\",\"maxLength\":7,\"style\":\"\",\"language\":\"English\"}", + "description": "Create a playful short word related to food industry." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "copywriting.createEvent", + "description": "Creates a compelling marketing copy for an event based on provided details like event name, date, audience, and key highlights. It processes the input attributes to generate engaging promotional text tailored to attract the specified audience, producing ready-to-use event descriptions.", + "category": "copywriting", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The official name of the event to include in the copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDate", + "type": "string", + "description": "The date or date range of the event, formatted as a string (e.g., 'June 15-17, 2024').", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "The target audience for the event, such as 'tech professionals' or 'music lovers'.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyHighlights", + "type": "array", + "description": "A list of key features, speakers, or attractions of the event to emphasize in the copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the marketing copy, e.g., 'professional', 'casual', 'exciting'.", + "required": false, + "defaultValue": "exciting" + }, + { + "name": "callToAction", + "type": "string", + "description": "A call-to-action phrase to encourage audience engagement, like 'Register now' or 'Join us today'.", + "required": false, + "defaultValue": "Register now" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated event marketing copy as a single string under 'marketingCopy'." + }, + "aiAgent": { + "useCase": "Use this tool when creating promotional content for events where the agent has factual details such as event name, date, audience, and highlights. It helps generate engaging text to attract and inform potential attendees efficiently without manually crafting marketing materials.", + "limitations": "Cannot generate event details or logistics; requires accurate input data to produce relevant copy. Does not replace professional copywriting nuances or deep brand alignment beyond given parameters.", + "examples": [ + "Create an engaging event description for a technology conference happening July 10-12 targeting software developers.", + "Generate a promotional text for a local jazz festival aimed at music enthusiasts with highlights of featured artists.", + "Write a professional event announcement for a corporate summit scheduled in September focused on business leaders." + ] + }, + "tags": [ + "copywriting", + "event", + "marketing", + "promotional text", + "content creation", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"Global Tech Summit 2024\",\"eventDate\":\"July 10-12, 2024\",\"audience\":\"software developers\",\"keyHighlights\":[\"Keynote by industry leaders\",\"Workshops on AI and Blockchain\"],\"tone\":\"exciting\",\"callToAction\":\"Register now\"}", + "description": "Generate exciting marketing copy for a technology summit targeting software developers." + }, + { + "inputJson": "{\"eventName\":\"Downtown Jazz Festival\",\"eventDate\":\"August 5, 2024\",\"audience\":\"music lovers\",\"keyHighlights\":[\"Live performances by top jazz artists\",\"Food and craft beer stalls\"],\"tone\":\"casual\",\"callToAction\":\"Join us today\"}", + "description": "Create casual event copy to promote a local jazz festival for music fans." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "copywriting.createConversion", + "description": "Generates persuasive marketing copy aimed at increasing conversion rates based on specified product details, target audience, and desired call-to-action. Accepts inputs describing product features, target demographic, conversion goals, and tone, then outputs tailored promotional text optimized for conversion.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "List of key features or benefits of the product/service to highlight in the copy.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the ideal audience or customer persona for the campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionGoal", + "type": "string", + "description": "The specific conversion action the copy should encourage, e.g., sign-ups, purchases, downloads.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The style or tone of the copy, e.g., friendly, professional, urgent.", + "required": false, + "defaultValue": "\"friendly\"" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated copy to fit specific platform constraints.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated conversion-focused marketing copy as a string." + }, + "aiAgent": { + "useCase": "Use this tool when creating marketing content aimed at boosting conversion metrics based on given product and audience details. It helps generate tailored promotional copy that aligns with conversion objectives, saving time and improving message effectiveness.", + "limitations": "This tool generates text based on input parameters but does not validate factual accuracy or guarantee conversion success; it cannot replace professional marketing strategy or human creativity.", + "examples": [ + "Create a persuasive product description for a new fitness app targeting busy professionals to increase free trial sign-ups.", + "Generate an urgent call-to-action copy for a limited-time discount on eco-friendly home products.", + "Write friendly and engaging promotional text for a new book launch aiming to maximize pre-orders." + ] + }, + "tags": [ + "copywriting", + "marketing", + "conversion", + "promotional text", + "advertising", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"SmartHome Thermostat\",\"productFeatures\":[\"Energy saving\",\"Easy installation\",\"Remote control via app\"],\"targetAudience\":\"Homeowners interested in smart technology and energy efficiency\",\"conversionGoal\":\"Purchase\",\"tone\":\"professional\",\"maxLength\":250}", + "description": "Generate professional marketing copy for a smart thermostat appealing to tech-savvy homeowners to encourage purchases." + }, + { + "inputJson": "{\"productName\":\"Yoga Retreat Weekend\",\"productFeatures\":[\"Relaxing environment\",\"Expert instructors\",\"All levels welcome\"],\"targetAudience\":\"Adults seeking stress relief and wellness experiences\",\"conversionGoal\":\"Sign-ups\",\"tone\":\"friendly\",\"maxLength\":200}", + "description": "Create friendly and inviting copy for a yoga retreat promotion targeting adults interested in wellness to boost sign-ups." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "copywriting.createDashboard", + "description": "Generates a compelling marketing copy for an analytics dashboard product by taking product features, target audience, and tone of voice as inputs and producing persuasive promotional text suitable for websites, ads, or brochures.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the analytics dashboard product for which the copy is being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "A list of key features or functionalities of the dashboard to highlight in the marketing copy.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended user base or market segment to address in the copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "toneOfVoice", + "type": "string", + "description": "The desired tone or style for the copy, e.g., professional, casual, innovative, or persuasive.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "primaryBenefit", + "type": "string", + "description": "The main benefit or value proposition to emphasize in the marketing text.", + "required": false, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "A phrase or sentence encouraging users to take a specific action, such as sign up or request a demo.", + "required": false, + "defaultValue": "Learn more and get started today!" + } + ], + "returns": { + "type": "object", + "description": "An object containing the crafted marketing copy text for the dashboard product and optionally key highlighted points." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear and engaging marketing copy tailored to a specific analytics dashboard product, emphasizing features and benefits for a defined audience. Ideal for creating promotional website content, ad copy, or brochures automatically.", + "limitations": "This tool cannot create graphical dashboard visualizations or actual UI elements; it only generates textual marketing content based on input descriptions. It also depends on the quality of input data for relevance and accuracy.", + "examples": [ + "Create a promotional description for a new dashboard product targeting small business owners, highlighting ease of use and real-time data insights in a casual tone.", + "Generate persuasive copy for an enterprise analytics dashboard focused on security and scalability with a professional tone.", + "Write marketing text for a dashboard with AI-powered predictive analytics aimed at marketing teams." + ] + }, + "tags": [ + "copywriting", + "marketing", + "analytics", + "dashboard", + "textGeneration", + "promotionalContent" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"InsightPro\",\"features\":[\"Real-time data tracking\",\"Customizable reports\",\"Mobile-friendly interface\"],\"targetAudience\":\"small business owners\",\"toneOfVoice\":\"casual\",\"primaryBenefit\":\"Make data-driven decisions easily\",\"callToAction\":\"Sign up for a free trial now!\"}", + "description": "Generate marketing copy for InsightPro targeting small business owners emphasizing ease of data-driven decisions with a casual tone." + }, + { + "inputJson": "{\"productName\":\"SecureAnalytics\",\"features\":[\"Enterprise-grade security\",\"Scalable infrastructure\",\"24/7 customer support\"],\"targetAudience\":\"IT professionals\",\"toneOfVoice\":\"professional\",\"primaryBenefit\":\"Protect your critical business data\",\"callToAction\":\"Request a demo today.\"}", + "description": "Create a professional promotional text for SecureAnalytics aimed at IT professionals highlighting security and scalability." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "copywriting.createTrend", + "description": "Generates a marketing trend report by analyzing input data such as social media keywords, product mentions, or customer feedback. It identifies emerging popular topics, sentiment, and potential marketing angles, producing a concise trend summary and actionable copywriting insights for promotional content.", + "category": "copywriting", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "Source of the input data to analyze (e.g., 'socialMedia', 'productReviews', 'customerSurveys').", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords or hashtags to focus the trend analysis on.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeFrameDays", + "type": "number", + "description": "Number of past days to consider for trend analysis.", + "required": false, + "defaultValue": "30" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the data to gauge positive or negative trends.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTrendCount", + "type": "number", + "description": "Maximum number of distinct trends to identify and summarize.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing identified trends with summaries, sentiment scores, and copywriting suggestions to leverage each trend in marketing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create marketing-oriented trend reports based on various textual data inputs to inform copywriting and promotional strategies. It helps produce actionable insights from raw data focusing on social media or customer feedback trends.", + "limitations": "Cannot process non-textual data; effectiveness depends on quality and volume of input data; trends are based on recent textual patterns only, no predictive forecasting.", + "examples": [ + "Create a trend report for the past 14 days focused on hashtags related to eco-friendly products from social media sources.", + "Analyze product reviews and identify top 3 emerging customer sentiment trends for copywriting purposes.", + "Generate a marketing trend summary from customer survey comments focusing on wellness and lifestyle keywords." + ] + }, + "tags": [ + "copywriting", + "trend analysis", + "marketing", + "social media", + "sentiment", + "analytics", + "promotion" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"socialMedia\",\"keywords\":[\"#sustainability\",\"#greenliving\"],\"timeFrameDays\":14,\"sentimentAnalysis\":true,\"maxTrendCount\":3}", + "description": "Generate a trend report for sustainability-related hashtags on social media over the last 14 days." + }, + { + "inputJson": "{\"dataSource\":\"productReviews\",\"keywords\":[\"durability\",\"battery life\"],\"timeFrameDays\":30,\"sentimentAnalysis\":true,\"maxTrendCount\":2}", + "description": "Identify top 2 trends in product reviews focusing on durability and battery life for copywriting insights." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "copywriting.createAnomaly", + "description": "Generates a compelling marketing anomaly report that highlights unusual or unexpected patterns in analytics data. It accepts key anomaly insights and context, then crafts engaging copy to communicate these unique findings effectively to stakeholders or marketing audiences.", + "category": "copywriting", + "parameters": [ + { + "name": "anomalyDescription", + "type": "string", + "description": "Detailed description of the anomaly or unusual pattern detected in analytics data", + "required": true, + "defaultValue": "" + }, + { + "name": "contextData", + "type": "object", + "description": "Supplementary details or metrics related to the anomaly, such as time frame, affected segments, or key figures", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Target audience type for the copy, e.g., marketing team, executives, or customers", + "required": false, + "defaultValue": "marketing team" + }, + { + "name": "tone", + "type": "string", + "description": "Writing tone for the copy, for example: formal, casual, enthusiastic, or urgent", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the output copy in words", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text emphasizing the anomaly and its significance" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to translate complex or technical anomaly data from analytics into clear, engaging, and audience-tailored marketing or internal communication copy. It is ideal for highlighting unusual trends or data points in newsletters, reports, or campaign materials.", + "limitations": "Cannot analyze raw data itself; requires pre-processed anomaly insights as input. Does not generate visualizations or perform statistical anomaly detection.", + "examples": [ + "Create a brief report copy explaining an unexpected sales spike last quarter for the executive team with a formal tone.", + "Generate engaging marketing text describing a sudden increase in user activity for customers with an enthusiastic tone.", + "Write a concise internal update about a drop in website traffic detected last week for the marketing team in a casual tone." + ] + }, + "tags": [ + "copywriting", + "analytics", + "anomaly", + "marketing", + "reporting", + "communication" + ], + "examples": [ + { + "inputJson": "{\"anomalyDescription\":\"A 40% increase in product sign-ups in the last 7 days compared to the previous month.\",\"contextData\":{\"timeFrame\":\"last 7 days\",\"comparisonPeriod\":\"previous month\",\"keyMetric\":\"sign-ups\"},\"audience\":\"executive team\",\"tone\":\"formal\",\"length\":120}", + "description": "Generate formal marketing copy for executives highlighting a significant increase in product sign-ups." + }, + { + "inputJson": "{\"anomalyDescription\":\"A sudden 25% drop in website traffic from social media referrals.\",\"contextData\":{\"timeFrame\":\"last week\",\"affectedSegment\":\"social media referrals\",\"metric\":\"website visits\"},\"audience\":\"marketing team\",\"tone\":\"casual\",\"length\":100}", + "description": "Create casual internal communication copy explaining a drop in website traffic from social media." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "copywriting.createSession", + "description": "Creates a copywriting session summary by accepting session analytics data such as visitor behavior, engagement metrics, and timeframe to generate a marketing-focused report that highlights key insights for promotional content optimization.", + "category": "copywriting", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier for the analytics session to summarize", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 start time for the session analytics period", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 end time for the session analytics period", + "required": true, + "defaultValue": "" + }, + { + "name": "engagementMetrics", + "type": "array", + "description": "List of engagement metric names to include such as clicks, scroll depth, or time on page", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudienceDescription", + "type": "string", + "description": "Brief description of the target audience for tailoring the session summary", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summarized marketing session report with key analytics insights and recommendations for promotional copywriting." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a concise, marketing-oriented summary of a given analytics session including visitor behavior and engagement metrics, to inform copywriting strategies or content optimization. It is ideal for creating quick syntheses from raw session data focusing on promotional improvement.", + "limitations": "This tool does not perform raw data analytics or collect session data itself; it requires pre-processed analytics input for summary generation. It cannot customize complex analytics reports beyond engagement metrics or replace detailed data analysis tools.", + "examples": [ + "Generate a marketing summary report for session ID 'sess123' from last week focusing on click rates and scroll depth.", + "Create an engagement overview for session 'sess987' including time on page and audience description 'young professionals.'" + ] + }, + "tags": [ + "copywriting", + "analytics", + "session", + "marketing", + "summary", + "engagement", + "content optimization" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess123\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-01T23:59:59Z\",\"engagementMetrics\":[\"clicks\",\"scrollDepth\"],\"targetAudienceDescription\":\"millennial tech users\"}", + "description": "Create a marketing-focused session summary for specified engagement metrics and a defined audience." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "copywriting.createCache", + "description": "Generates persuasive and clear marketing copy for promoting caching infrastructure solutions. Accepts inputs about cache types, benefits, target audience, and usage scenarios, then creates tailored promotional text to highlight cache advantages in software infrastructure.", + "category": "copywriting", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to promote (e.g., Redis, Memcached, CDN cache).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the copy (e.g., software developers, CTOs, infrastructure engineers).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyBenefits", + "type": "array", + "description": "List of main benefits to highlight (e.g., reduced latency, scalability, cost savings).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "usageScenario", + "type": "string", + "description": "Specific use case or scenario where the cache is applied (e.g., real-time analytics, web acceleration).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the copywriting (e.g., professional, friendly, technical).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated copy.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text under the key 'marketingCopy'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce effective, domain-specific marketing content to promote cache infrastructure products or solutions. Especially useful for software companies looking to create tailored promotional materials or website content that highlights cache advantages for targeted audiences.", + "limitations": "This tool does not generate technical documentation or deep technical explanations; it focuses solely on promotional marketing copy. It cannot replace detailed architecture or implementation guides.", + "examples": [ + "Generate a short promotional paragraph for Redis cache targeting CTOs highlighting scalability and cost savings.", + "Create friendly tone copy to promote CDN cache for web developers focusing on latency reduction and reliability." + ] + }, + "tags": [ + "copywriting", + "marketing", + "infrastructure", + "cache", + "promotion", + "technology" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"Redis\",\"targetAudience\":\"CTOs\",\"keyBenefits\":[\"scalability\",\"cost savings\"],\"usageScenario\":\"real-time analytics\",\"tone\":\"professional\",\"maxLength\":250}", + "description": "Professional marketing copy for Redis cache targeting CTOs emphasizing scalability and cost savings in real-time analytics." + }, + { + "inputJson": "{\"cacheType\":\"CDN cache\",\"targetAudience\":\"web developers\",\"keyBenefits\":[\"latency reduction\",\"reliability\"],\"tone\":\"friendly\",\"maxLength\":150}", + "description": "Friendly promotional text for CDN cache targeting web developers focusing on latency reduction and reliability." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "copywriting.createMetric", + "description": "Generates a custom marketing or promotional metric definition based on input parameters such as campaign goals, target audience, and performance indicators. Accepts details about the marketing context and outputs a well-defined metric description along with how to calculate it, enabling better performance tracking for copywriting efforts.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignGoal", + "type": "string", + "description": "The main objective of the marketing campaign (e.g., brand awareness, lead generation).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the campaign (e.g., young adults, B2B professionals).", + "required": true, + "defaultValue": "" + }, + { + "name": "performanceIndicators", + "type": "array", + "description": "List of relevant measurable indicators to include in the metric (e.g., click-through rate, conversion rate).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "string", + "description": "The period over which the metric should be evaluated (e.g., monthly, quarterly).", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "includeBenchmark", + "type": "boolean", + "description": "Whether to include benchmarking information or industry standards in the metric description.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the metric name, detailed description, calculation method, and optional benchmarking information." + }, + "aiAgent": { + "useCase": "Use this tool when you need to define clear, actionable marketing metrics tailored to specific campaign goals and audiences. It assists in creating meaningful metrics for copywriting performance measurement, enabling data-driven optimization.", + "limitations": "It cannot fetch real-time data or perform metric calculations on actual campaign data; it only generates metric definitions and calculation methods based on input parameters.", + "examples": [ + "Create a metric for measuring conversion rate from a digital ad campaign targeting young adults aiming at lead generation.", + "Generate a brand awareness metric definition for a B2B campaign targeting professionals with benchmarking included.", + "Define a metric to track email campaign engagement over a quarterly period focusing on click-through and open rates." + ] + }, + "tags": [ + "copywriting", + "marketing", + "metrics", + "analytics", + "campaign", + "performance", + "measurement" + ], + "examples": [ + { + "inputJson": "{\"campaignGoal\":\"lead generation\",\"targetAudience\":\"young adults\",\"performanceIndicators\":[\"conversion rate\",\"click-through rate\"],\"timeFrame\":\"monthly\",\"includeBenchmark\":true}", + "description": "Generate a metric focused on lead generation for young adults including benchmarking details." + }, + { + "inputJson": "{\"campaignGoal\":\"brand awareness\",\"targetAudience\":\"B2B professionals\",\"performanceIndicators\":[\"impressions\",\"engagement rate\"],\"includeBenchmark\":false}", + "description": "Define a brand awareness metric for B2B professional audience without benchmarking." + }, + { + "inputJson": "{\"campaignGoal\":\"email engagement\",\"targetAudience\":\"existing customers\",\"performanceIndicators\":[\"open rate\",\"click rate\"],\"timeFrame\":\"quarterly\",\"includeBenchmark\":true}", + "description": "Create an email campaign engagement metric over a quarterly timeframe including benchmark info." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "copywriting.createQueue", + "description": "This tool generates a creative marketing copy for promoting a queue management system or infrastructure. It accepts input such as the type of queue system, target audience, purpose, and desired tone, then crafts persuasive, clear promotional text to effectively communicate the queue's benefits and features.", + "category": "copywriting", + "parameters": [ + { + "name": "queueType", + "type": "string", + "description": "Type of queue system to promote, e.g., customer support, task processing, checkout line.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Primary audience for the promotional copy, such as business managers, IT professionals, or end consumers.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of main features or benefits of the queue system to highlight.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "toneStyle", + "type": "string", + "description": "Desired tone for the copy, e.g., professional, friendly, urgent, playful.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the promotional copy in words.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text under the 'marketingCopy' field." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create tailored marketing or promotional content focused on queue management solutions or infrastructure. Helpful for generating engaging, audience-appropriate copy that highlights system benefits and features for sales or informational purposes.", + "limitations": "This tool does not generate technical documentation, detailed product specifications, or scripts for UI interactions. It focuses solely on persuasive marketing text generation.", + "examples": [ + "Create a friendly marketing paragraph promoting a customer support queue to small business owners.", + "Write a professional 100-word advertisement for a task processing queue targeting IT managers.", + "Generate a playful promo text highlighting benefits of a checkout line queue for retail customers." + ] + }, + "tags": [ + "copywriting", + "marketing", + "queue", + "promotional text", + "infrastructure", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"queueType\":\"customer support\",\"targetAudience\":\"small business owners\",\"keyFeatures\":[\"reduces wait time\",\"improves customer satisfaction\",\"easy to integrate\"],\"toneStyle\":\"friendly\",\"length\":100}", + "description": "Create a friendly promo marketing text for a customer support queue aimed at small business owners." + }, + { + "inputJson": "{\"queueType\":\"task processing\",\"targetAudience\":\"IT managers\",\"keyFeatures\":[\"automated task assignment\",\"scalable\",\"real-time monitoring\"],\"toneStyle\":\"professional\",\"length\":120}", + "description": "Generate a professional marketing copy for a task processing queue targeting IT managers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "copywriting.createService", + "description": "Generates tailored promotional and marketing copy for technology services based on service descriptors provided. Takes inputs describing the target audience, key features, benefits, and tone to produce professional, engaging service descriptions usable for websites, brochures, or advertising.", + "category": "copywriting", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The name of the service to create promotional copy for.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or customer segment for the service.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of important features or capabilities of the service.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "benefits", + "type": "array", + "description": "List of primary benefits or value propositions for customers.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy, e.g., professional, casual, persuasive, technical.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated copy in characters.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated service promotional text under the 'promotionalCopy' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate clear, persuasive, and tailored marketing copy for technology or infrastructure-related services, helping to craft engaging service descriptions for websites, sales materials, or ads. It is ideal when you have service details and want professional copy without manual writing.", + "limitations": "This tool focuses only on copywriting and cannot generate technical documentation, code, or complex marketing strategies. It relies on quality input and does not verify factual accuracy beyond provided descriptions.", + "examples": [ + "Create a promotional description for a cloud backup service targeting SMBs emphasizing security and simplicity in a friendly tone.", + "Generate marketing copy for a managed Kubernetes service highlighting scalability and expert support for enterprise customers.", + "Write service copy for a 5G network infrastructure service focusing on speed and reliability with a professional tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "service description", + "promotion", + "technology", + "infrastructure", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"CloudSecure Backup\",\"targetAudience\":\"Small and Medium Businesses\",\"keyFeatures\":[\"End-to-end encryption\",\"Automatic daily backups\",\"Unlimited storage\"],\"benefits\":[\"Protect business data from loss\",\"Easy recovery in case of disaster\"],\"tone\":\"friendly\",\"maxLength\":450}", + "description": "Generate friendly marketing copy for a cloud backup service targeted at SMBs, focusing on security and ease of use." + }, + { + "inputJson": "{\"serviceName\":\"KubeSmart Managed Service\",\"targetAudience\":\"Enterprise IT teams\",\"keyFeatures\":[\"Automated scaling\",\"24/7 expert support\",\"Seamless cluster upgrades\"],\"benefits\":[\"Reduce operational overhead\",\"Ensure high availability\"],\"tone\":\"professional\"}", + "description": "Create professional promotional text for a managed Kubernetes service emphasizing scalability and support." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "copywriting.createCluster", + "description": "Generates a cohesive and logically grouped cluster of marketing copy components centered on a specific infrastructure topic or product, integrating keywords, taglines, and thematic content to support SEO and promotional efforts. Accepts a primary infrastructure theme and related keywords, and outputs an organized cluster of copy elements.", + "category": "copywriting", + "parameters": [ + { + "name": "primaryTheme", + "type": "string", + "description": "The main infrastructure topic or product around which the copy cluster is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedKeywords", + "type": "array", + "description": "List of related keywords to include throughout the cluster to enhance SEO relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor tone and style of the copy cluster.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy, e.g., professional, casual, tech-savvy. Defaults to professional.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "clusterSize", + "type": "number", + "description": "Number of copy elements (e.g., taglines, summaries, bullet points) to generate in the cluster. Defaults to 5.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object representing a cluster of copy items, each including title, description, and relevant keywords to support infrastructure marketing campaigns." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce a coherent set of related marketing text snippets about an infrastructure product or domain to improve SEO and campaign cohesion. It helps in creating interconnected copy elements for landing pages, ads, or content hubs.", + "limitations": "Cannot generate fully finalized marketing content without human review; does not perform graphic design or full content strategy planning.", + "examples": [ + "Create an SEO copy cluster for a cloud hosting service emphasizing reliability and scalability.", + "Generate a cluster of promotional taglines and descriptions for a new data center infrastructure, targeting IT managers.", + "Produce a set of related marketing phrases and summaries for a container orchestration platform with a casual tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "infrastructure", + "SEO", + "cluster", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"primaryTheme\":\"Cloud hosting service\",\"relatedKeywords\":[\"reliability\",\"scalability\",\"24/7 support\"],\"targetAudience\":\"SMB IT managers\",\"tone\":\"professional\",\"clusterSize\":4}", + "description": "Cluster for cloud hosting featuring reliability, scalability for SMB IT managers" + }, + { + "inputJson": "{\"primaryTheme\":\"Data center infrastructure\",\"relatedKeywords\":[\"security\",\"high availability\"],\"targetAudience\":\"enterprise IT executives\",\"tone\":\"formal\",\"clusterSize\":3}", + "description": "Professional cluster emphasizing security and availability for data centers" + }, + { + "inputJson": "{\"primaryTheme\":\"Container orchestration platform\",\"relatedKeywords\":[\"automation\",\"Kubernetes\",\"DevOps\"],\"targetAudience\":\"DevOps engineers\",\"tone\":\"casual\",\"clusterSize\":5}", + "description": "Casual tone cluster targeting DevOps engineers for container orchestration" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "copywriting.createReply", + "description": "Generates a tailored reply message based on the original incoming message and contextual details. Accepts the received message content and optional tone, language, and purpose parameters, then crafts an appropriate and coherent response suitable for professional or casual communication.", + "category": "copywriting", + "parameters": [ + { + "name": "originalMessage", + "type": "string", + "description": "The text of the incoming message that requires a reply.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the reply, such as formal, casual, friendly, or professional.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the reply (e.g., 'en' for English, 'es' for Spanish).", + "required": false, + "defaultValue": "en" + }, + { + "name": "purpose", + "type": "string", + "description": "The intent behind the reply, such as answering questions, providing information, or expressing gratitude.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipientType", + "type": "string", + "description": "Type of recipient like customer, colleague, or manager to tailor the reply accordingly.", + "required": false, + "defaultValue": "customer" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply text suitable for sending back as a response." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a context-aware and appropriately toned reply message to an incoming communication. Ideal for automating responses to customer inquiries, internal messages, or other communications requiring clear, polite, and tailored replies.", + "limitations": "This tool generates text based on input context but does not analyze or verify factual accuracy of the content. Human review might be needed for sensitive or critical communications.", + "examples": [ + "Generate a polite customer service reply in English with a friendly tone.", + "Create a formal reply to a colleague's technical inquiry.", + "Write a brief thank you reply to a customer feedback message." + ] + }, + "tags": [ + "copywriting", + "reply", + "communication", + "customer service", + "email", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"originalMessage\":\"Thank you for your help with the project last week.\",\"tone\":\"friendly\",\"purpose\":\"express gratitude\",\"language\":\"en\"}", + "description": "Generate a friendly thank you reply to express gratitude." + }, + { + "inputJson": "{\"originalMessage\":\"Can you provide the latest sales report?\",\"tone\":\"formal\",\"purpose\":\"provide information\",\"recipientType\":\"colleague\"}", + "description": "Create a formal reply providing information to a colleague's request." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "copywriting.createDatabase", + "description": "This tool generates persuasive and clear copywriting text aimed at promoting and explaining database infrastructure products or services. It accepts inputs such as the database type, key features, target audience, and marketing tone, processes these to create engaging marketing content suitable for websites, brochures, or pitches, and outputs polished promotional text tailored to the given parameters.", + "category": "copywriting", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database to focus the copywriting on (e.g., SQL, NoSQL, graph, cloud database)", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of important features or selling points of the database product or service", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Primary audience for the marketing text, such as developers, CTOs, or business users", + "required": false, + "defaultValue": "technical and business professionals" + }, + { + "name": "marketingTone", + "type": "string", + "description": "Tone of the copywriting text, like professional, casual, innovative, or trustworthy", + "required": false, + "defaultValue": "professional" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum length of the generated marketing text in words", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text for the database product or service, ready for use in promotional materials." + }, + "aiAgent": { + "useCase": "Use this tool when tasked with creating high-quality marketing content that highlights the features and benefits of database infrastructure products. It is especially useful for promotional writing that requires tailoring to a specific audience or marketing tone, helping automate copy generation for websites, brochures, or presentations.", + "limitations": "This tool does not generate technical documentation, implementation guides, or detailed product specifications. It focuses only on promotional and marketing style text.", + "examples": [ + "Create marketing copy for a cloud-based NoSQL database highlighting scalability and security for CTOs in a trustworthy tone.", + "Generate promotional text focused on a new graph database's unique querying capabilities for software developers with an innovative tone.", + "Write brief marketing content about key-value store database emphasizing performance and reliability in a casual tone for business users." + ] + }, + "tags": [ + "copywriting", + "database", + "marketing", + "promotional text", + "infrastructure", + "content generation", + "technology" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"NoSQL\",\"keyFeatures\":[\"scalability\",\"high availability\",\"flexible data model\"],\"targetAudience\":\"CTOs and software architects\",\"marketingTone\":\"trusted and professional\",\"lengthLimit\":120}", + "description": "Marketing text promoting a NoSQL database focusing on scalability and availability for CTOs." + }, + { + "inputJson": "{\"databaseType\":\"graph database\",\"keyFeatures\":[\"advanced relationship queries\",\"visual data exploration\",\"real-time analytics\"],\"targetAudience\":\"data scientists\",\"marketingTone\":\"innovative\",\"lengthLimit\":100}", + "description": "Copy highlighting the innovative features of a graph database for data scientists." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "copywriting.createChannel", + "description": "Generates engaging and tailored copy for communication channels like email newsletters, social media posts, or SMS campaigns based on specified channel type, audience profile, tone, and message goals. Accepts input parameters defining channel characteristics and outputs optimized marketing text suitable for that channel.", + "category": "copywriting", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel (e.g., 'email', 'socialMedia', 'SMS') for which the copy is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceProfile", + "type": "string", + "description": "Brief description of the target audience including demographics, interests, or behaviors.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the message such as 'friendly', 'professional', 'urgent', or 'casual'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "messageGoal", + "type": "string", + "description": "Primary goal of the message, e.g., 'promote a sale', 'announce a new product', or 'drive website traffic'.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call to action to include in the copy, like 'Sign up now' or 'Learn more'.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output copy, e.g., 'en' for English. Defaults to English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated copy in characters. If omitted, no length limit is applied.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated copy text optimized for the specified communication channel." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create channel-specific marketing copy tailored to a defined audience profile and communication tone, ensuring message relevance and channel appropriateness. Ideal for automating generation of promotional content like email campaign body text, social media posts, or SMS messages.", + "limitations": "This tool does not generate visual content or handle multi-channel integration workflows. It cannot verify compliance with legal or platform-specific regulations on its own and may require human review for sensitive contexts.", + "examples": [ + "Create a friendly email newsletter promoting a new product launch for young adults interested in fitness.", + "Generate a concise and urgent SMS message to notify customers about a flash sale.", + "Write a casual social media post for millennials announcing a webinar with a signup call to action." + ] + }, + "tags": [ + "copywriting", + "marketing", + "channel-specific", + "content generation", + "automation", + "promotional", + "communication" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"email\",\"audienceProfile\":\"Young professionals interested in tech gadgets\",\"tone\":\"professional\",\"messageGoal\":\"promote a new smartwatch launch\",\"callToAction\":\"Pre-order now\",\"language\":\"en\",\"maxLength\":300}", + "description": "Generate a professional email promoting a smartwatch launch targeting young tech-savvy adults with a pre-order CTA." + }, + { + "inputJson": "{\"channelType\":\"socialMedia\",\"audienceProfile\":\"Millennials active on Instagram\",\"tone\":\"casual\",\"messageGoal\":\"announce a summer sale\",\"callToAction\":\"Shop today!\",\"language\":\"en\"}", + "description": "Create a casual Instagram post announcing a summer sale with a shopping CTA geared to millennial users." + }, + { + "inputJson": "{\"channelType\":\"SMS\",\"audienceProfile\":\"Subscribers in New York interested in dining offers\",\"tone\":\"urgent\",\"messageGoal\":\"notify about a limited-time discount\",\"callToAction\":\"Reserve a table\",\"language\":\"en\",\"maxLength\":160}", + "description": "Generate an urgent SMS message notifying subscribers of a limited-time dining discount with a reservation CTA." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "copywriting.createServer", + "description": "Generates engaging marketing copy to promote server infrastructure products or services. Accepts inputs describing the server's key features, target audience, tone, and purpose, then crafts persuasive text aimed at driving user interest and sales. Outputs polished promotional content tailored to specified marketing needs.", + "category": "copywriting", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "Name of the server or server product to promote", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of key features and benefits of the server infrastructure", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or customer persona", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy, e.g., professional, casual, persuasive", + "required": false, + "defaultValue": "professional" + }, + { + "name": "useCase", + "type": "string", + "description": "Primary use case or purpose of the server product", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated copy in characters", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a 'marketingCopy' string field containing the generated promotional text" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create tailored marketing copy for server infrastructure products based on features, audience, and tone. It helps automate content creation for marketing campaigns, websites, or sales collateral.", + "limitations": "This tool cannot generate highly technical documentation, user manuals, or detailed specifications. It focuses purely on marketing and promotional language.", + "examples": [ + "Create a persuasive product description for a cloud server targeting startups with a casual tone.", + "Generate concise marketing copy highlighting security features of an enterprise server for IT professionals.", + "Write engaging content for a new gaming server product aimed at gamers using a lively tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "server", + "infrastructure", + "promotion", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"CloudX Pro\",\"features\":[\"99.99% uptime\",\"Scalable resources\",\"24/7 customer support\"],\"targetAudience\":\"startup tech companies\",\"tone\":\"casual\",\"useCase\":\"cloud computing platform\",\"maxLength\":300}", + "description": "Generate casual promotional copy for CloudX Pro server targeted at startup companies highlighting reliability and support." + }, + { + "inputJson": "{\"serverName\":\"SecureCore 5000\",\"features\":[\"Advanced encryption\",\"Multi-factor authentication\",\"Automated security updates\"],\"targetAudience\":\"IT security professionals\",\"tone\":\"professional\",\"useCase\":\"enterprise security servers\",\"maxLength\":400}", + "description": "Create professional marketing content emphasizing the security features of SecureCore 5000 for IT experts." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "copywriting.createInstance", + "description": "This tool generates tailored marketing copywriting content for cloud infrastructure service instances. It accepts inputs describing instance features such as type, size, region, and target audience, then produces professionally written promotional text that highlights key benefits and use cases for the specified instance configuration.", + "category": "copywriting", + "parameters": [ + { + "name": "instanceType", + "type": "string", + "description": "The type of the infrastructure instance (e.g., virtual machine, container, database).", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceSize", + "type": "string", + "description": "The size or tier of the instance (e.g., small, medium, large, or specific resource allocation).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "The geographic region or data center location of the instance (e.g., US-East, Europe-West).", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the marketing copy (e.g., startups, enterprise, developers).", + "required": false, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key technical or business features to emphasize in the copy (e.g., high availability, cost efficiency).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone for the copywriting (e.g., professional, casual, persuasive).", + "required": false, + "defaultValue": "professional" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text for the instance." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate compelling, customized marketing copy for cloud infrastructure instances based on specified features and audience. It helps create engaging promotional text suitable for product pages, brochures, or ads in technology marketing contexts.", + "limitations": "This tool cannot generate highly technical documentation or detailed specifications. It focuses on marketing-oriented language and does not replace technical writing or compliance-related texts.", + "examples": [ + "Create promotional copy for a large virtual machine in US-East targeting startups highlighting cost efficiency and scalability.", + "Generate persuasive instance description for a small container in Europe-West aimed at developers emphasizing ease of deployment.", + "Produce professional marketing content for a medium database instance targeting enterprise clients focusing on high availability and security features." + ] + }, + "tags": [ + "copywriting", + "marketing", + "infrastructure", + "cloud", + "instance", + "promotion", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"instanceType\":\"virtual machine\",\"instanceSize\":\"large\",\"region\":\"US-East\",\"targetAudience\":\"startups\",\"keyFeatures\":[\"cost efficiency\",\"scalability\"],\"tone\":\"persuasive\"}", + "description": "Generate persuasive marketing copy for a large virtual machine in US-East for startups focusing on cost efficiency and scalability." + }, + { + "inputJson": "{\"instanceType\":\"container\",\"instanceSize\":\"small\",\"region\":\"Europe-West\",\"targetAudience\":\"developers\",\"keyFeatures\":[\"ease of deployment\"],\"tone\":\"casual\"}", + "description": "Create casual tone marketing copy for a small container instance in Europe-West highlighting ease of deployment for developers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "copywriting.createContainer", + "description": "Generates persuasive marketing copy describing container infrastructure solutions. Accepts input parameters detailing container technology features, target audience, and tone, then produces tailored promotional text suitable for websites, brochures, or ads that highlight the value and benefits of container platforms.", + "category": "copywriting", + "parameters": [ + { + "name": "containerType", + "type": "string", + "description": "Type of container infrastructure to promote, e.g., Docker, Kubernetes, or OpenShift.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the marketing copy, such as developers, CIOs, or DevOps teams.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of main features or advantages of the container platform to highlight in the copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the marketing text, e.g., professional, casual, or enthusiastic.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "outputLength", + "type": "number", + "description": "Approximate number of words for the created marketing text.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text under a 'marketingCopy' key." + }, + "aiAgent": { + "useCase": "When an AI agent needs to produce targeted marketing content for container infrastructure products or services, this tool creates clear, persuasive copy customized by container type, audience, and tone to facilitate promotional materials generation.", + "limitations": "This tool does not generate technical manuals, purely factual datasheets, or code snippets; it focuses on marketing text only.", + "examples": [ + "Create a compelling ad copy for Kubernetes targeting DevOps engineers with an enthusiastic tone.", + "Generate website copy highlighting Docker's scalability features for CIOs in a professional tone.", + "Write a concise brochure description of OpenShift aimed at developers emphasizing key security benefits." + ] + }, + "tags": [ + "copywriting", + "marketing", + "container", + "infrastructure", + "promotional text", + "technology", + "DevOps", + "cloud" + ], + "examples": [ + { + "inputJson": "{\"containerType\":\"Kubernetes\",\"targetAudience\":\"DevOps engineers\",\"keyFeatures\":[\"scalability\",\"automated deployment\",\"open-source\"],\"tone\":\"enthusiastic\",\"outputLength\":120}", + "description": "Generate energetic marketing copy for Kubernetes focusing on key benefits for DevOps engineers." + }, + { + "inputJson": "{\"containerType\":\"Docker\",\"targetAudience\":\"CIOs\",\"keyFeatures\":[\"portability\",\"security\",\"ecosystem\"],\"tone\":\"professional\",\"outputLength\":150}", + "description": "Create professional marketing text emphasizing Docker's advantages for CIO-level decision makers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "copywriting.createComment", + "description": "Generates a concise and engaging comment for marketing or communication purposes based on the input topic, tone, and target audience. Accepts text inputs describing the context and desired sentiment, processes the information using natural language generation techniques, and outputs a polished comment suitable for social media, blogs, or promotional materials.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or content the comment should address.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the comment, e.g., friendly, professional, enthusiastic.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the comment to tailor the language and style accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the comment in characters; helps keep messages concise.", + "required": false, + "defaultValue": "280" + }, + { + "name": "includeHashtags", + "type": "boolean", + "description": "Whether to include relevant hashtags to improve reach or engagement.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated comment text and optional metadata like length and hashtags." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to create engaging and contextually appropriate comments for marketing campaigns, social media posts, or communication channels. It helps produce concise comments that fit a desired tone and audience, enhancing interaction and promotion effectiveness.", + "limitations": "It cannot produce deeply technical or confidential comments without proper context. Generated comments may need human review for brand voice compliance and cultural nuances.", + "examples": [ + "Generate a friendly comment promoting a new eco-friendly product.", + "Create a professional comment for a B2B software announcement targeting IT managers.", + "Write a short enthusiastic comment for a social media post about a summer sale including hashtags." + ] + }, + "tags": [ + "copywriting", + "comment", + "marketing", + "social media", + "communication", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Launch of our new sustainable packaging line\",\"tone\":\"enthusiastic\",\"targetAudience\":\"environmentally conscious consumers\",\"maxLength\":200,\"includeHashtags\":true}", + "description": "Generate an enthusiastic comment promoting a new eco-friendly packaging product with hashtags." + }, + { + "inputJson": "{\"topic\":\"Upcoming webinar on cybersecurity best practices\",\"tone\":\"professional\",\"targetAudience\":\"IT professionals\",\"maxLength\":150,\"includeHashtags\":false}", + "description": "Create a professional comment inviting IT professionals to a webinar without hashtags." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "copywriting.createMention", + "description": "Generates a customized, engaging mention or shout-out text for marketing and promotional communications. Accepts inputs describing the person, brand, or entity to mention, the context or platform, tone style, and additional keywords to tailor the mention. Produces relevant, professional mention text ready for use in social media, blogs, or ads.", + "category": "copywriting", + "parameters": [ + { + "name": "mentionEntity", + "type": "string", + "description": "The name of the person, brand, product, or entity to mention in the text.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "The communication context such as social media post, blog, email newsletter, or advertisement.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the mention text, e.g., casual, professional, enthusiastic, or formal.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "keywords", + "type": "array", + "description": "Additional keywords or attributes to incorporate into the mention for relevance and SEO purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated mention text to fit platform limits.", + "required": false, + "defaultValue": "280" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated mention text string optimized for the given inputs." + }, + "aiAgent": { + "useCase": "Use this tool when generating short, targeted promotional or recognition mentions for individuals, brands, products, or services tailored to the intended platform and tone. Ideal for marketing campaigns, social media engagement posts, influencer shout-outs, or brand awareness efforts.", + "limitations": "This tool does not generate long-form copy or detailed descriptive content. It focuses on concise mention text and cannot handle complex narratives or factual verification beyond given inputs.", + "examples": [ + "Create a warm, casual mention for a new tech startup for Twitter.", + "Generate a professional mention to recognize a collaborator in a newsletter.", + "Produce an enthusiastic shout-out featuring product features for an Instagram post." + ] + }, + "tags": [ + "copywriting", + "marketing", + "mention", + "promotion", + "social media", + "branding", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"mentionEntity\":\"EcoBright Solar\",\"context\":\"social media post\",\"tone\":\"enthusiastic\",\"keywords\":[\"renewable energy\",\"sustainability\"],\"maxLength\":140}", + "description": "Generate an enthusiastic mention for EcoBright Solar emphasizing renewable energy in a social media post." + }, + { + "inputJson": "{\"mentionEntity\":\"Anna Smith\",\"context\":\"email newsletter\",\"tone\":\"professional\",\"keywords\":[\"collaboration\",\"teamwork\"],\"maxLength\":300}", + "description": "Create a professional mention recognizing Anna Smith's collaboration for an email newsletter." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Mention", + "context": null + } + }, + { + "name": "copywriting.createThread", + "description": "Generates a structured communication thread by creating a series of engaging, topic-coherent messages. Accepts inputs such as topic, audience profile, thread length, and style preferences, then produces a sequence of connected messages suitable for social media or forum discussions.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the thread to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceProfile", + "type": "string", + "description": "Description of the target audience to tailor tone and content appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "threadLength", + "type": "number", + "description": "Number of messages or posts to generate in the thread.", + "required": false, + "defaultValue": "5" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the thread messages, e.g., formal, casual, humorous.", + "required": false, + "defaultValue": "casual" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call to action in the final message of the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "platform", + "type": "string", + "description": "Intended platform for the thread, which may affect style and format (e.g. Twitter, Reddit).", + "required": false, + "defaultValue": "Twitter" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated thread as an ordered array of messages, each with message content and metadata like message number and suggested hashtags if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a multi-message communication thread for marketing or promotional purposes, targeting specific audience segments and platforms to maximize engagement.", + "limitations": "Cannot guarantee platform-specific compliance such as length limits or community guidelines; generated content may require human review before publication.", + "examples": [ + "Create a Twitter thread of 7 messages about the benefits of electric vehicles for environmentally conscious millennials.", + "Generate a casual Reddit discussion thread on the topic of home workouts during winter targeting fitness enthusiasts.", + "Produce a LinkedIn thread consisting of 5 professional messages highlighting the latest trends in AI technology for business executives." + ] + }, + "tags": [ + "copywriting", + "thread", + "social media", + "marketing", + "content creation", + "communication", + "promotional text" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of Electric Vehicles\",\"audienceProfile\":\"Environmentally conscious millennials\",\"threadLength\":7,\"tone\":\"informative\",\"includeCallToAction\":true,\"platform\":\"Twitter\"}", + "description": "Create a 7-message Twitter thread launching an informative discussion about electric vehicles targeting millennials interested in sustainability." + }, + { + "inputJson": "{\"topic\":\"Home Workouts in Winter\",\"audienceProfile\":\"Fitness enthusiasts\",\"threadLength\":5,\"tone\":\"casual\",\"includeCallToAction\":false,\"platform\":\"Reddit\"}", + "description": "Generate a casual 5-message Reddit thread focused on home workouts during winter to engage fitness enthusiasts without a call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "copywriting.createNotification", + "description": "Generates clear and engaging notification text for marketing, product updates, or user alerts. Accepts inputs such as notification purpose, tone, audience, and key message points. Produces a polished notification message ready for deployment across digital platforms.", + "category": "copywriting", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to create, e.g., 'product update', 'promotion', 'reminder'.", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Target audience for the notification, e.g., 'existing customers', 'newsletter subscribers'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the notification, such as 'formal', 'friendly', 'urgent'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "keyMessage", + "type": "string", + "description": "The main message or offer to communicate in the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action phrase, e.g., 'Shop now', 'Learn more'.", + "required": false, + "defaultValue": "" + }, + { + "name": "characterLimit", + "type": "number", + "description": "Maximum character length for the notification text to fit platform restrictions.", + "required": false, + "defaultValue": "160" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted notification text ready for distribution." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce concise, audience-appropriate notification messages for marketing campaigns, app alerts, or product updates. Ideal for generating text that aligns with specified tones and character limits.", + "limitations": "Cannot design layout or handle multimedia content; focuses solely on text generation for notifications.", + "examples": [ + "Create a friendly promotional notification for newsletter subscribers offering a 20% discount.", + "Generate an urgent product update notification for all users with a call to action to update the app.", + "Produce a reminder notification in a formal tone for existing customers about upcoming subscription renewal." + ] + }, + "tags": [ + "copywriting", + "notification", + "marketing", + "text generation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"promotion\",\"audience\":\"newsletter subscribers\",\"tone\":\"friendly\",\"keyMessage\":\"Get 20% off all items this weekend only!\",\"callToAction\":\"Shop now\",\"characterLimit\":160}", + "description": "Create a friendly promotional notification for newsletter subscribers offering a 20% discount." + }, + { + "inputJson": "{\"notificationType\":\"product update\",\"audience\":\"all users\",\"tone\":\"urgent\",\"keyMessage\":\"Version 2.0 is live with new security features.\",\"callToAction\":\"Update now\",\"characterLimit\":160}", + "description": "Generate an urgent product update notification directing users to update their app." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "copywriting.createMessage", + "description": "Generates a tailored marketing or promotional message based on input parameters including target audience, product details, tone of voice, and desired call to action. It processes these inputs to produce an engaging, coherent message suitable for marketing communication channels.", + "category": "copywriting", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "Description of the audience the message is targeted to, including demographics or interests.", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "The name of the product or service the message is promoting.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key features or benefits to highlight about the product or service.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone or style of the message, such as friendly, professional, enthusiastic, or urgent.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "callToAction", + "type": "string", + "description": "Desired call to action to include, e.g., buy now, sign up, learn more.", + "required": false, + "defaultValue": "learn more" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length in characters for the generated message to ensure fit for specific channels.", + "required": false, + "defaultValue": "280" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing message string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a concise, targeted marketing or promotional message that incorporates specific product information, audience targeting, and tone. Ideal for social media, email campaigns, or online ads where messaging needs to be clear and engaging.", + "limitations": "The tool may not generate messages that are fully compliant with all regional advertising regulations or extremely specialized industry jargon without additional context.", + "examples": [ + "Create a promotional message for a new fitness tracker targeting active millennials using a friendly tone.", + "Generate a professional message to announce a software update to enterprise clients with a call to action to upgrade.", + "Write an enthusiastic message for a limited-time discount on eco-friendly products aimed at environmentally conscious shoppers." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotion", + "message generation", + "advertising", + "communication" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"young professionals aged 25-35 interested in health and wellness\",\"productName\":\"FitTrack Pro\",\"keyFeatures\":[\"24/7 heart rate monitor\",\"sleep tracking\",\"water resistant\"],\"tone\":\"enthusiastic\",\"callToAction\":\"buy now\",\"maxLength\":200}", + "description": "Generate an enthusiastic marketing message for a fitness tracker targeting young professionals with a clear call to action." + }, + { + "inputJson": "{\"targetAudience\":\"small business owners\",\"productName\":\"Invoice Master\",\"keyFeatures\":[\"automated invoicing\",\"multi-currency support\",\"easy tax calculations\"],\"tone\":\"professional\",\"callToAction\":\"sign up\",\"maxLength\":150}", + "description": "Create a professional promotional message for invoicing software directed at small business owners encouraging sign ups." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "copywriting.createKey", + "description": "Generates compelling, persuasive marketing copy for security keys and related security hardware. Accepts product details and target audience info, crafts tailored promotional text highlighting key features and security benefits, and outputs ready-to-use copy for marketing materials or product pages.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The official name of the security key product to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "List of key technical features and specifications of the security key.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended users or customer segment for the security key.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the marketing copy such as professional, friendly, or technical.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the marketing text in words.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated marketing copy as a string under the 'marketingCopy' field." + }, + "aiAgent": { + "useCase": "Use this tool when generating marketing content for security hardware products like security keys. It helps create targeted, feature-focused copy tailored to specific audiences, improving promotional materials with persuasive text highlighting product security benefits.", + "limitations": "Cannot generate detailed technical datasheets or exhaustive manuals; focuses solely on marketing style content. It does not provide legal or compliance verbiage.", + "examples": [ + "Create promotional copy for a new biometric security key aimed at enterprise IT admins in a professional tone, about 150 words.", + "Generate friendly and concise marketing text for a USB security key targeting everyday consumers.", + "Write a technical-sounding advertising paragraph highlighting multi-factor authentication features of a security key for cybersecurity professionals." + ] + }, + "tags": [ + "copywriting", + "marketing", + "security", + "security key", + "promotional text", + "product description" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"SecurePass Pro\",\"productFeatures\":[\"FIDO2 compliant\",\"Biometric fingerprint sensor\",\"Multi-factor authentication support\",\"Water resistant\",\"USB-C and NFC connectivity\"],\"targetAudience\":\"Enterprise IT administrators looking to enhance login security\",\"tone\":\"professional\",\"length\":150}", + "description": "Generate professional marketing copy for SecurePass Pro targeting enterprise IT admins." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "copywriting.createCredential", + "description": "This tool generates professional and persuasive copywriting text for digital security credentials, such as user access tokens and authentication badges. It accepts inputs detailing the credential type, audience, and usage context, then produces clear and compelling descriptive text for marketing or user guidance purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "credentialType", + "type": "string", + "description": "The type of digital credential to describe (e.g., access token, security badge).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the credential text (e.g., IT admins, end users).", + "required": true, + "defaultValue": "" + }, + { + "name": "usageContext", + "type": "string", + "description": "The context or scenario in which the credential is used (e.g., multi-factor authentication, secure login).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the copywriting output (e.g., professional, friendly, technical).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the output text in words.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated credential descriptive text under the key 'credentialCopy'. The output is optimized for clarity and marketing effectiveness." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create engaging, clear, and market-friendly descriptive text for digital security credentials, such as in onboarding materials, product descriptions, or internal documentation. It helps transform credential technical details into audience-appropriate copy to improve understanding and adoption.", + "limitations": "The tool focuses on writing copy and does not generate actual security credentials or validate their security properties. It also may not cover deeply technical or legal compliance language accurately.", + "examples": [ + "Create a friendly description of an access token for end users to explain its usage in a mobile app.", + "Generate professional copy explaining a security badge for IT administrators implementing role-based access control.", + "Write a concise, technical overview for a multi-factor authentication credential to be used in training materials." + ] + }, + "tags": [ + "copywriting", + "security", + "credential", + "marketing", + "digital identity", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"credentialType\":\"Access Token\",\"targetAudience\":\"End Users\",\"usageContext\":\"Secure login to mobile app\",\"tone\":\"friendly\",\"length\":80}", + "description": "Generate friendly, concise copy describing an access token for end users using a mobile app." + }, + { + "inputJson": "{\"credentialType\":\"Security Badge\",\"targetAudience\":\"IT Administrators\",\"usageContext\":\"Role-based access control management\",\"tone\":\"professional\",\"length\":120}", + "description": "Create professional copy explaining security badges for IT admins managing access." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "copywriting.createCertificate", + "description": "This tool generates professionally worded certificate texts for security and compliance domains. It accepts details such as recipient name, certificate type, issuing authority, date, and purpose, then crafts a formal certificate text suitable for printing or digital presentation.", + "category": "copywriting", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Full name of the certificate recipient, to be included on the certificate.", + "required": true, + "defaultValue": "" + }, + { + "name": "certificateType", + "type": "string", + "description": "Type of certificate to generate (e.g., 'Security Compliance', 'Data Protection Training').", + "required": true, + "defaultValue": "" + }, + { + "name": "issuingAuthority", + "type": "string", + "description": "Name of the organization or authority issuing the certificate.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateIssued", + "type": "string", + "description": "Date when the certificate is issued, in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "purposeDescription", + "type": "string", + "description": "Brief description of what the certificate recognizes or validates.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSignatureLine", + "type": "boolean", + "description": "Whether to include a placeholder for a signature line at the bottom of the certificate.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully composed certificate text and metadata such as the title and formatted date." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create formal certificate text for security or compliance achievements to present professionally to individuals or organizations. It helps automate generating consistent, clear, and proper certificate wording based on given input details.", + "limitations": "This tool only generates textual content for certificates; it does not create visual layouts, graphic design, or official certificate files like PDFs or images.", + "examples": [ + "Create a certificate text for a cybersecurity awareness course completion.", + "Generate a security compliance certificate text for a company issued by the regulatory board.", + "Write certificate wording recognizing a data protection officer's training completion issued by an internal security team." + ] + }, + "tags": [ + "copywriting", + "certificate", + "security", + "compliance", + "document", + "certificateText" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Jane Doe\",\"certificateType\":\"Security Compliance\",\"issuingAuthority\":\"Global Security Board\",\"dateIssued\":\"2024-07-01\",\"purposeDescription\":\"successful completion of the 2024 Security Compliance Program\",\"includeSignatureLine\":true}", + "description": "Generate a Security Compliance certificate text recognizing Jane Doe's successful completion of the 2024 Security Compliance Program issued by Global Security Board." + }, + { + "inputJson": "{\"recipientName\":\"John Smith\",\"certificateType\":\"Data Protection Training\",\"issuingAuthority\":\"InfoSec Department\",\"dateIssued\":\"2024-06-15\",\"purposeDescription\":\"completion of mandatory data protection and privacy training\",\"includeSignatureLine\":false}", + "description": "Create a Data Protection Training certificate text for John Smith issued by the InfoSec Department without a signature line." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "copywriting.createIncident", + "description": "This tool generates professional, clear incident reports for security-related events based on provided details like incident type, description, severity, and response actions. It accepts structured input about the incident and produces a concise, formal written incident report suitable for communication with stakeholders or documentation purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "The category or type of the security incident (e.g., data breach, ransomware attack).", + "required": true, + "defaultValue": "" + }, + { + "name": "incidentDescription", + "type": "string", + "description": "A detailed description of what occurred during the incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "impactSeverity", + "type": "string", + "description": "Severity level of the incident impact (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionDateTime", + "type": "string", + "description": "Date and time when the incident was first detected, in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected systems, services, or assets involved in the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mitigationActions", + "type": "string", + "description": "Description of actions taken to contain or mitigate the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportAudience", + "type": "string", + "description": "Intended audience of the report (e.g., internal stakeholders, customers, regulatory bodies).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a well-formatted textual incident report summarizing the incident details in professional language." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create formal incident reports from raw incident data to communicate clearly with stakeholders or document incidents properly. It helps transform structured incident details into polished, readable reports that highlight critical information, impact, and response efforts.", + "limitations": "This tool cannot verify incident facts or replace in-depth forensic analysis. It is not designed to generate incident remediation plans or technical logs directly, only narrative reports based on inputs.", + "examples": [ + "Create an incident report for a recent data breach affecting customer data with high severity.", + "Generate a formal report describing actions taken during a ransomware attack found yesterday.", + "Summarize a security incident involving unauthorized access to internal systems for management review." + ] + }, + "tags": [ + "copywriting", + "security", + "incident reporting", + "communication", + "documentation", + "security incident" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"Data Breach\",\"incidentDescription\":\"Unauthorized access detected in customer database exposing email addresses.\",\"impactSeverity\":\"High\",\"detectionDateTime\":\"2024-06-10T14:23:00Z\",\"affectedSystems\":[\"Customer DB\",\"Email Marketing System\"],\"mitigationActions\":\"Access blocked, passwords reset, forensic investigation initiated.\",\"reportAudience\":\"Internal Management\"}", + "description": "A high severity data breach incident with details on detection, impact and mitigation for internal management." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "copywriting.createSecret", + "description": "Generates compelling marketing copy emphasizing product or service secrecy features, such as confidentiality, security, or exclusivity. Accepts inputs including product details, target audience, and tone, producing persuasive secret-focused promotional text to enhance appeal and trust in security-sensitive markets.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to be marketed.", + "required": true, + "defaultValue": "" + }, + { + "name": "secretFeatureDescription", + "type": "string", + "description": "Description of the secret, confidentiality, or security feature to highlight.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience or customer segment for the copy.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the copy, such as professional, casual, or urgent.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "copyLength", + "type": "number", + "description": "Approximate desired length of the generated copy in words.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secret-focused marketing copy as a string." + }, + "aiAgent": { + "useCase": "When an AI agent needs to create marketing content that highlights the secrecy, confidentiality, or security aspects of a product or service to attract customers who value privacy or exclusive features. Suitable for promotional materials emphasizing trust and discretion.", + "limitations": "Does not generate technical security documentation or actual encryption keys; focuses strictly on persuasive copywriting. Cannot verify factual accuracy of security claims.", + "examples": [ + "Create secret-focused marketing copy for a new encrypted messaging app targeting privacy-conscious users.", + "Generate a promotional paragraph emphasizing the exclusive, confidential nature of a premium membership service.", + "Write professional marketing text highlighting the security features of a cloud storage solution for enterprises." + ] + }, + "tags": [ + "copywriting", + "marketing", + "security", + "secret", + "promotional", + "content generation", + "privacy", + "confidentiality" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"SecureChat\",\"secretFeatureDescription\":\"end-to-end encryption ensuring no third-party access\",\"targetAudience\":\"privacy-conscious consumers\",\"tone\":\"professional\",\"copyLength\":100}", + "description": "Generate professional copy for SecureChat emphasizing its end-to-end encryption for privacy-focused users." + }, + { + "inputJson": "{\"productName\":\"EliteClub\",\"secretFeatureDescription\":\"exclusive membership with confidential benefits\",\"targetAudience\":\"affluent individuals\",\"tone\":\"luxurious\",\"copyLength\":80}", + "description": "Create luxurious copy promoting EliteClub’s secretive, exclusive membership benefits for wealthy clients." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "copywriting.createAlert", + "description": "Generates a professionally written security alert message based on provided incident details, target audience, and urgency level. Accepts inputs like incident type, description, affected systems, and urgency, then crafts a clear, concise alert suitable for internal or external communication.", + "category": "copywriting", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "Type of security incident (e.g., data breach, malware, phishing).", + "required": true, + "defaultValue": "" + }, + { + "name": "incidentDescription", + "type": "string", + "description": "Detailed description of the incident, including what happened and impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected systems, services, or locations.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency level of the alert (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Audience for the alert (e.g., internal staff, customers, partners).", + "required": true, + "defaultValue": "" + }, + { + "name": "recommendedActions", + "type": "string", + "description": "Suggested next steps or mitigations for recipients to follow.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated alert message text and a brief summary for quick reference." + }, + "aiAgent": { + "useCase": "Use this tool when a clear, professional security alert needs to be quickly created based on incident details. Ideal for informing stakeholders with a properly structured and audience-appropriate message about security issues and required actions.", + "limitations": "Cannot replace legal or official communications requiring approvals. Does not perform incident analysis or verify incident accuracy. It generates text only based on inputs provided.", + "examples": [ + "Create a high urgency alert for a phishing attack affecting email systems to internal staff with recommended actions.", + "Generate a medium urgency alert for a malware outbreak affecting endpoint devices for IT partners.", + "Draft a low urgency alert about a minor data exposure incident directed to customers." + ] + }, + "tags": [ + "copywriting", + "security", + "alert", + "notification", + "incident communication", + "marketing", + "internal communication" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"Phishing Scam\",\"incidentDescription\":\"A phishing email campaign was detected targeting employees with malicious links.\",\"affectedSystems\":[\"Email System\"],\"urgencyLevel\":\"High\",\"targetAudience\":\"Internal Staff\",\"recommendedActions\":\"Do not click on suspicious links; report emails to IT immediately.\"}", + "description": "Generate a high urgency alert for internal staff describing a phishing scam affecting email systems." + }, + { + "inputJson": "{\"incidentType\":\"Malware Infection\",\"incidentDescription\":\"Several endpoint devices were found infected by ransomware.\",\"affectedSystems\":[\"Endpoint Devices\"],\"urgencyLevel\":\"Critical\",\"targetAudience\":\"IT Partners\",\"recommendedActions\":\"Isolate affected devices and begin incident response protocols.\"}", + "description": "Create a critical alert for IT partners about ransomware infection on endpoint devices." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "copywriting.createVulnerability", + "description": "Generates clear, concise vulnerability descriptions for security advisories or reports. Accepts inputs like vulnerability type, affected software, impact severity, and technical details, processes this data to produce well-structured, professional vulnerability write-ups suitable for communication to technical and non-technical audiences.", + "category": "copywriting", + "parameters": [ + { + "name": "vulnerabilityType", + "type": "string", + "description": "Type or category of the vulnerability (e.g., SQL Injection, Buffer Overflow).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSoftware", + "type": "string", + "description": "Name and version(s) of the software affected by the vulnerability.", + "required": true, + "defaultValue": "" + }, + { + "name": "impactSeverity", + "type": "string", + "description": "Severity level of the vulnerability (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "technicalDetails", + "type": "string", + "description": "Technical description including how the vulnerability can be exploited or occurs.", + "required": true, + "defaultValue": "" + }, + { + "name": "mitigationAdvice", + "type": "string", + "description": "Recommended mitigations or remediation actions to address the vulnerability.", + "required": false, + "defaultValue": "" + }, + { + "name": "audienceType", + "type": "string", + "description": "Target audience for the output (e.g., technical, non-technical, executive).", + "required": false, + "defaultValue": "technical" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated vulnerability description formatted for the specified audience, including a summary, impact, and mitigation sections." + }, + "aiAgent": { + "useCase": "Use this tool when generating professional vulnerability descriptions for security advisories, reports, or documentation requiring clear communication of technical details and impact to various audiences. It helps in drafting initial write-ups that comply with security communication best practices.", + "limitations": "This tool cannot verify or discover vulnerabilities. It relies solely on the input provided and does not replace expert security analysis or vulnerability validation.", + "examples": [ + "Generate a vulnerability description for a cross-site scripting flaw in version 2.5 of a web app targeting non-technical managers.", + "Create a detailed report entry describing a critical buffer overflow in a networking library used in embedded devices.", + "Draft mitigation advice for a new SQL injection vulnerability found in a CMS platform." + ] + }, + "tags": [ + "copywriting", + "security", + "vulnerability", + "reporting", + "documentation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityType\":\"Cross-Site Scripting (XSS)\",\"affectedSoftware\":\"ExampleCMS 3.2.1\",\"impactSeverity\":\"High\",\"technicalDetails\":\"The vulnerability is due to improper sanitization of user input in the comment submission form, allowing execution of arbitrary JavaScript.\",\"mitigationAdvice\":\"Apply input validation and output encoding on all user-generated content.\",\"audienceType\":\"non-technical\"}", + "description": "Generate a user-friendly vulnerability description for a cross-site scripting bug in a CMS, intended for non-technical readers." + }, + { + "inputJson": "{\"vulnerabilityType\":\"Buffer Overflow\",\"affectedSoftware\":\"NetSecureLib v1.4\",\"impactSeverity\":\"Critical\",\"technicalDetails\":\"A buffer overflow occurs in the packet parsing function when processing oversized network frames, leading to potential remote code execution.\",\"mitigationAdvice\":\"Update to the latest version 1.5 where bounds checking is enforced.\",\"audienceType\":\"technical\"}", + "description": "Create a technical report snippet describing a critical buffer overflow vulnerability in a networking library with recommended action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "copywriting.createForecast", + "description": "Generates a clear, concise business forecast text based on provided historical data, market trends, time horizon, and business goals. It processes numerical and qualitative inputs to create a persuasive marketing-style forecast for business planning or promotional purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "historicalDataSummary", + "type": "string", + "description": "A brief summary of past performance metrics relevant to the forecast (e.g., sales figures, growth rates).", + "required": true, + "defaultValue": "" + }, + { + "name": "marketTrends", + "type": "string", + "description": "Description of current relevant market conditions or trends affecting the business domain.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeHorizonMonths", + "type": "number", + "description": "The forecast period in months, indicating how far ahead to project the forecast.", + "required": true, + "defaultValue": "12" + }, + { + "name": "businessGoals", + "type": "string", + "description": "Business objectives or targets to highlight or align the forecast with.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style for the forecast text (e.g., optimistic, conservative, neutral).", + "required": false, + "defaultValue": "optimistic" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated forecast text and a summary highlight." + }, + "aiAgent": { + "useCase": "Use this tool when generating persuasive business forecast texts for marketing materials, investor updates, strategic planning documents, or promotional content where a forecast is needed from given historical and market data inputs. It helps produce coherent narrative forecasts based on numerical and qualitative data inputs.", + "limitations": "This tool cannot generate precise quantitative models or replace detailed financial modeling; it creates text forecasts based on inputs without deep statistical computations.", + "examples": [ + "Create a 12-month optimistic sales forecast to use in a product launch presentation.", + "Generate a conservative business growth forecast highlighting market challenges for an investor report.", + "Write a neutral forecast summary focusing on new market trends and business goals for internal strategy planning." + ] + }, + "tags": [ + "copywriting", + "forecast", + "business", + "marketing", + "text generation", + "planning" + ], + "examples": [ + { + "inputJson": "{\"historicalDataSummary\":\"Our revenue grew 15% annually over the past 3 years.\",\"marketTrends\":\"Increasing demand in sustainable products and eco-conscious consumer base.\",\"timeHorizonMonths\":12,\"businessGoals\":\"Expand market share by 10% and launch two new product lines.\",\"tone\":\"optimistic\"}", + "description": "Generate a 12-month optimistic business forecast emphasizing growth and new products based on historical and market data." + }, + { + "inputJson": "{\"historicalDataSummary\":\"Sales declined 5% last year due to supply chain disruptions.\",\"marketTrends\":\"Market facing strong competition and fluctuating raw material costs.\",\"timeHorizonMonths\":6,\"businessGoals\":\"Maintain current customer base and reduce costs.\",\"tone\":\"conservative\"}", + "description": "Create a 6-month conservative forecast focusing on cost management and stable customer retention amid challenges." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Forecast", + "context": null + } + }, + { + "name": "copywriting.createRisk", + "description": "Generates clear, concise marketing copy describing security risks for products or services. Accepts inputs like risk type, target audience, severity level, and context to produce persuasive, informative text for awareness campaigns, product pages, or security advisories.", + "category": "copywriting", + "parameters": [ + { + "name": "riskType", + "type": "string", + "description": "The specific type of security risk to describe (e.g., phishing, data breach).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Who the risk description is aimed at (e.g., general users, IT professionals).", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The risk severity level (e.g., low, medium, high) to emphasize in the copy.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "context", + "type": "string", + "description": "Additional context about the risk or environment where it applies (e.g., cloud services, mobile apps).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style of the copy (e.g., formal, simple, urgent).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length for the generated text in characters.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated risk marketing copy as a string field 'riskCopy'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to produce effective marketing or informational copy focused on explaining security risks tailored to a specific audience. It helps convert technical risk details into clear, engaging promotional or educational text.", + "limitations": "This tool does not perform risk assessment or validation. It cannot generate technical documentation or detailed security reports. It relies solely on provided inputs to generate copy and may not capture all nuances of complex risks.", + "examples": [ + "Create marketing text warning general users about high severity phishing risks in mobile apps.", + "Produce a formal description of medium severity data breach risks targeting IT professionals.", + "Generate a simple, urgent warning about ransomware threats in cloud services for a newsletter." + ] + }, + "tags": [ + "copywriting", + "security", + "risk", + "marketing", + "awareness", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"riskType\":\"phishing\",\"targetAudience\":\"general users\",\"severityLevel\":\"high\",\"context\":\"mobile apps\",\"tone\":\"urgent\",\"maxLength\":300}", + "description": "Generate an urgent warning about high severity phishing risk targeting general users using mobile apps." + }, + { + "inputJson": "{\"riskType\":\"data breach\",\"targetAudience\":\"IT professionals\",\"severityLevel\":\"medium\",\"context\":\"cloud services\",\"tone\":\"formal\",\"maxLength\":400}", + "description": "Produce formal marketing copy about medium severity data breach risks for IT professionals focused on cloud services." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "copywriting.createThreat", + "description": "Generates a realistic, detailed security threat description based on given parameters such as threat type, attack vector, target system, and severity level. It processes structured inputs to produce a comprehensive promotional or awareness text about cybersecurity threats suitable for marketing or educational content.", + "category": "copywriting", + "parameters": [ + { + "name": "threatType", + "type": "string", + "description": "Type of threat to describe (e.g., phishing, ransomware, DDoS).", + "required": true, + "defaultValue": "" + }, + { + "name": "attackVector", + "type": "string", + "description": "The method or entry point used by the threat (e.g., email, network, USB).", + "required": false, + "defaultValue": "" + }, + { + "name": "targetSystem", + "type": "string", + "description": "The target environment or system affected by the threat (e.g., corporate network, IoT devices).", + "required": false, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The level of threat severity (e.g., low, medium, high, critical).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "industry", + "type": "string", + "description": "Industry or sector for contextualizing the threat (e.g., finance, healthcare).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMitigationTips", + "type": "boolean", + "description": "Whether to append actionable mitigation advice to the threat description.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a coherent, engaging threat description text suitable for marketing, awareness campaigns, or security blogs." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to generate compelling, informative descriptions of cybersecurity threats for marketing materials, cybersecurity awareness content, blogs, or educational campaigns. It helps transform technical threat data into understandable and engaging copy for a general or specialized audience.", + "limitations": "The tool does not analyze real-time threat data or perform vulnerability assessments; it only generates descriptive copy based on provided parameters and may not reflect current threat trends or real attack data.", + "examples": [ + "Generate a description about ransomware targeting healthcare with high severity including mitigation tips.", + "Create a phishing threat description focused on email attack vectors for corporate networks without mitigation tips.", + "Write a DDoS attack description for financial services with critical severity." + ] + }, + "tags": [ + "copywriting", + "security", + "threat", + "marketing", + "cybersecurity", + "awareness" + ], + "examples": [ + { + "inputJson": "{\"threatType\":\"ransomware\",\"attackVector\":\"email attachments\",\"targetSystem\":\"healthcare systems\",\"severityLevel\":\"high\",\"industry\":\"healthcare\",\"includeMitigationTips\":true}", + "description": "Generate a high severity ransomware threat description targeting healthcare systems via email attachments, including mitigation advice." + }, + { + "inputJson": "{\"threatType\":\"phishing\",\"attackVector\":\"email\",\"targetSystem\":\"corporate network\",\"severityLevel\":\"medium\",\"industry\":\"finance\",\"includeMitigationTips\":false}", + "description": "Create a phishing threat description aimed at corporate networks in finance sector, medium severity, without mitigation tips." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "copywriting.createBudget", + "description": "Generates a detailed business budget proposal text based on input financial data and project parameters. Accepts project goals, estimated costs, duration, and key financial assumptions, then produces a clear, persuasive budget document ready for stakeholder review or marketing contexts.", + "category": "copywriting", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project or business initiative the budget is for.", + "required": true, + "defaultValue": "" + }, + { + "name": "totalBudget", + "type": "number", + "description": "The total amount of money allocated or requested for the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "durationMonths", + "type": "number", + "description": "The timeframe in months over which the budget applies.", + "required": true, + "defaultValue": "" + }, + { + "name": "costBreakdown", + "type": "object", + "description": "A detailed object containing key cost categories and their respective amounts (e.g., personnel, equipment, marketing).", + "required": true, + "defaultValue": "" + }, + { + "name": "financialAssumptions", + "type": "string", + "description": "Any financial assumptions or constraints that affect the budget, such as expected inflation or resource availability.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience of the budget document, e.g., internal management, investors, partners.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted budget proposal text string that summarizes the financial plan clearly and persuasively." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create coherent, professional budget proposals from raw financial and project data. It helps generate persuasive and structured budget overviews for business presentations, investor pitches, or internal planning documents.", + "limitations": "Cannot perform actual financial validations or audits; outputs based solely on user input and basic formatting; detailed financial accuracy must be verified by experts.", + "examples": [ + "Create a project budget summary for an IT development initiative with a $500,000 budget over 12 months.", + "Generate a marketing campaign budget proposal based on provided costs for personnel, media buys, and creative expenses.", + "Produce a clear and concise budget document for internal stakeholders showing cost allocation across departments." + ] + }, + "tags": [ + "copywriting", + "budget", + "business", + "financial writing", + "proposal generation", + "marketing", + "financial planning" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"New App Launch\",\"totalBudget\":300000,\"durationMonths\":6,\"costBreakdown\":{\"personnel\":150000,\"marketing\":80000,\"equipment\":30000,\"miscellaneous\":40000},\"financialAssumptions\":\"Costs assume moderate inflation and stable supplier pricing.\",\"targetAudience\":\"investors\"}", + "description": "Budget proposal for a 6 month new app launch project with detailed cost categories." + }, + { + "inputJson": "{\"projectName\":\"Annual Marketing Campaign\",\"totalBudget\":120000,\"durationMonths\":12,\"costBreakdown\":{\"mediaBuy\":60000,\"creativeProduction\":30000,\"staffSalaries\":20000,\"contingency\":10000},\"financialAssumptions\":\"Budget assumes 5% annual marketing cost increase.\",\"targetAudience\":\"management\"}", + "description": "Marketing campaign budget over one year with breakdown for media, creative, and salaries." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Budget", + "context": null + } + }, + { + "name": "copywriting.createPayment", + "description": "Generates clear, persuasive marketing copy for payment-related communications such as invoices, payment reminders, payment confirmations, or payment plan offers. Accepts details about the payment context and target audience, then produces professional text tailored to the specified purpose.", + "category": "copywriting", + "parameters": [ + { + "name": "paymentType", + "type": "string", + "description": "Type of payment material to create, e.g., invoice, reminder, confirmation, plan offer.", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "Monetary amount related to the payment.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the amount, e.g., USD, EUR.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date for payment in ISO format (YYYY-MM-DD), if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "Name of the payment recipient or customer.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy, e.g., formal, friendly, urgent.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "additionalInfo", + "type": "string", + "description": "Extra details or instructions to include in the payment text.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated payment-related copy text as 'text' and metadata including type and tone." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate professional marketing or transactional copy related to payments, such as sending payment reminders or confirming a received payment. It helps create clear, appropriate text quickly tailored to the payment context and audience.", + "limitations": "This tool cannot generate actual payment processing data or legal documents, nor can it replace personalized financial advice. It only produces marketing-style text for payment communications.", + "examples": [ + "Create a friendly payment reminder for a $150 invoice due on 2024-07-01 addressed to John Doe.", + "Generate a formal payment confirmation message for a completed $99.99 payment in USD.", + "Produce a promotional text offering a payment plan option with clear terms and friendly tone." + ] + }, + "tags": [ + "copywriting", + "payment", + "marketing", + "financial communication", + "text generation", + "business", + "invoicing" + ], + "examples": [ + { + "inputJson": "{\"paymentType\":\"reminder\",\"amount\":150,\"currency\":\"USD\",\"dueDate\":\"2024-07-01\",\"recipientName\":\"John Doe\",\"tone\":\"friendly\",\"additionalInfo\":\"Please pay via bank transfer.\"}", + "description": "Generate a friendly payment reminder for John Doe about an invoice of $150 due on July 1, 2024." + }, + { + "inputJson": "{\"paymentType\":\"confirmation\",\"amount\":99.99,\"currency\":\"USD\",\"recipientName\":\"Jane Smith\",\"tone\":\"formal\"}", + "description": "Create a formal payment confirmation message for Jane Smith for a payment of $99.99." + }, + { + "inputJson": "{\"paymentType\":\"plan offer\",\"tone\":\"friendly\",\"additionalInfo\":\"Two monthly installments with no interest.\"}", + "description": "Produce a friendly promotional text offering a no-interest payment plan with two installments." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "copywriting.createExpense", + "description": "Generates professional and clear expense descriptions and justifications for business communication, based on input details like amount, purpose, date, and category. Produces formatted text suitable for reimbursement requests, reports, or documentation.", + "category": "copywriting", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "Expense amount in the relevant currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the expense, e.g., USD, EUR.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "expenseDate", + "type": "string", + "description": "Date of the expense in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "Category or type of expense (e.g., travel, meals, office supplies).", + "required": false, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "Brief explanation of the reason for the expense.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalDetails", + "type": "string", + "description": "Any additional details or context to include in the expense description.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated expense description text formatted suitably for business use." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create clear, concise, and professional expense descriptions or justifications for business reimbursements, accounting, or reporting based on minimal input details. It helps automate writing expense narratives for documentation or communication.", + "limitations": "This tool generates text descriptions only and does not perform expense validation, approval, or processing. It cannot verify receipt authenticity or compliance with company policy.", + "examples": [ + "Create a detailed description for a $150 meal expense during a client meeting on 2024-05-10.", + "Generate an expense justification for a $300 office supply purchase on 2024-04-22.", + "Produce a reimbursement description for a $450 travel expense categorized as 'transportation'." + ] + }, + "tags": [ + "copywriting", + "expense", + "business", + "finance", + "reporting", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"amount\":150,\"currency\":\"USD\",\"expenseDate\":\"2024-05-10\",\"category\":\"meals\",\"purpose\":\"Client meeting lunch\",\"additionalDetails\":\"Lunch with potential client to discuss project scope.\"}", + "description": "Generate description for a meal expense for a client meeting." + }, + { + "inputJson": "{\"amount\":300,\"category\":\"office supplies\",\"purpose\":\"New office chairs for team members\",\"expenseDate\":\"2024-04-22\"}", + "description": "Create justification for an office supplies purchase." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "copywriting.createOrder", + "description": "Generates persuasive and clear marketing copy to promote a product order, based on input details such as product name, quantity, target audience, and desired tone. It processes these inputs to produce compelling order-related promotional text suitable for emails, ads, or websites.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product to feature in the order copy", + "required": true, + "defaultValue": "" + }, + { + "name": "quantity", + "type": "number", + "description": "Number of units to be ordered or promoted", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the audience intended to receive the promotional text", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Style or mood of the copy, e.g., friendly, professional, urgent", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call to action to include, e.g., \"Order now\", \"Limited offer\"", + "required": false, + "defaultValue": "Order now" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated promotional order copy as a string under the key 'orderCopy'" + }, + "aiAgent": { + "useCase": "Use this tool when you need to create tailored marketing text that encourages customers to place an order for a product. Ideal for generating dynamic promotional content for emails, advertisements, or landing pages based on product details and audience context.", + "limitations": "Cannot perform actual order processing or validate inventory; it focuses solely on copywriting for promotional purposes.", + "examples": [ + "Create order copy to promote 100 units of a new eco-friendly water bottle to young professionals with an urgent tone.", + "Generate friendly marketing text for ordering 50 custom notebooks targeting students with a call to action to buy now.", + "Write a professional order prompt for 200 office chairs aimed at corporate clients with a 'Limited time offer' CTA." + ] + }, + "tags": [ + "copywriting", + "marketing", + "order", + "promotional text", + "business", + "sales", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoBottle\",\"quantity\":100,\"targetAudience\":\"young professionals\",\"tone\":\"urgent\",\"callToAction\":\"Order now\"}", + "description": "Generate urgent, persuasive copy promoting an order of 100 EcoBottles for young professionals." + }, + { + "inputJson": "{\"productName\":\"Custom Notebook\",\"quantity\":50,\"targetAudience\":\"students\",\"tone\":\"friendly\",\"callToAction\":\"Buy now\"}", + "description": "Create friendly and inviting order copy for 50 custom notebooks targeting students." + }, + { + "inputJson": "{\"productName\":\"Office Chair Model X\",\"quantity\":200,\"targetAudience\":\"corporate clients\",\"tone\":\"professional\",\"callToAction\":\"Limited time offer\"}", + "description": "Produce professional marketing text to promote ordering 200 office chairs to corporate clients with a limited time promotion." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "copywriting.createDeal", + "description": "Generates persuasive marketing copy for business deals based on input parameters like offer details, target audience, tone, and call-to-action. Processes the inputs to create engaging promotional text for use in advertising campaigns, emails, or websites.", + "category": "copywriting", + "parameters": [ + { + "name": "dealTitle", + "type": "string", + "description": "The title or headline of the deal or promotion to be advertised.", + "required": true, + "defaultValue": "" + }, + { + "name": "offerDetails", + "type": "string", + "description": "The specific details or description of the deal, including discounts, benefits, or conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "A brief description of the intended audience for the deal (e.g., tech enthusiasts, holiday shoppers).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the copy, such as friendly, urgent, formal, or playful.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "callToAction", + "type": "string", + "description": "The call-to-action phrase to encourage customer response (e.g., 'Shop Now', 'Limited Time Offer').", + "required": false, + "defaultValue": "Act Now!" + }, + { + "name": "expirationDate", + "type": "string", + "description": "Optional expiration date of the deal to create urgency in the copy (format ISO 8601 date).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated promotional deal copy as a string under the 'dealCopy' key." + }, + "aiAgent": { + "useCase": "Use this tool when generating marketing or promotional text for specific business deals or offers. It helps create compelling messaging tailored to the deal's specifics, preferred tone, and target audience to increase customer engagement and conversions.", + "limitations": "Does not verify factual accuracy of deal details; cannot replace human review for compliance or legal checks. Also, it does not generate graphics or multimedia content.", + "examples": [ + "Create a friendly and urgent promotional text advertising a 30% off winter sale for fashion shoppers with a call-to-action 'Shop Now' and expiration date.", + "Generate formal marketing copy for a business bulk purchase discount aimed at corporate clients with a polite call-to-action.", + "Write a playful promotional message for a weekend flash deal on electronics targeting tech enthusiasts without a specified expiration date." + ] + }, + "tags": [ + "copywriting", + "marketing", + "deal", + "promotion", + "advertising", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"dealTitle\":\"Winter Sale - 30% Off All Fashion\",\"offerDetails\":\"Enjoy 30% discount on all winter apparel including coats, scarves, and boots.\",\"targetAudience\":\"fashion shoppers\",\"tone\":\"friendly\",\"callToAction\":\"Shop Now\",\"expirationDate\":\"2024-12-31\"}", + "description": "Generate a friendly promotional copy for a winter sale deal targeting fashion shoppers with a call-to-action and expiration date." + }, + { + "inputJson": "{\"dealTitle\":\"Bulk Purchase Discount\",\"offerDetails\":\"Receive 15% off on orders of 100 units or more for corporate clients.\",\"targetAudience\":\"corporate clients\",\"tone\":\"formal\",\"callToAction\":\"Contact Sales\",\"expirationDate\":\"\"}", + "description": "Create formal marketing text for a bulk discount aimed at corporate clients with a polite call-to-action and no expiration date." + }, + { + "inputJson": "{\"dealTitle\":\"Weekend Flash Electronics Deal\",\"offerDetails\":\"Exclusive discounts on laptops, tablets, and accessories this weekend only.\",\"targetAudience\":\"tech enthusiasts\",\"tone\":\"playful\",\"callToAction\":\"Grab Yours Now!\",\"expirationDate\":\"\"}", + "description": "Write playful promotional copy for a weekend-only flash deal targeting tech enthusiasts without an expiration date." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "copywriting.createAccount", + "description": "Generates persuasive and engaging marketing copy to promote a new business account, focusing on target audience, key benefits, and unique selling points to attract signups or interest. Takes input about account features, target demographics, and tone and outputs polished promotional text.", + "category": "copywriting", + "parameters": [ + { + "name": "accountName", + "type": "string", + "description": "The name of the business account or service to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the primary audience for the marketing copy (e.g., small business owners, freelancers).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key features or benefits of the account to highlight in the copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the copy (e.g., professional, friendly, casual, persuasive).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "callToAction", + "type": "string", + "description": "A call to action to encourage user engagement (e.g., Sign up today!).", + "required": false, + "defaultValue": "Sign up today!" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete generated promotional marketing copy text under 'marketingCopy' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create compelling promotional text for a business account aimed at attracting and converting potential customers. It is ideal for generating marketing material that highlights features and benefits tailored to a specific audience with a specified tone and call to action.", + "limitations": "The tool generates text based on provided inputs but cannot create actual logos, design elements, or perform account setup processes. It also does not guarantee compliance with legal advertising standards or industry-specific regulations.", + "examples": [ + "Generate marketing copy for a new freelancer account targeting independent consultants with a friendly tone and emphasizing flexible pricing.", + "Create promotional text for a small business account highlighting security features and professional tone with a strong call to action.", + "Write copy to introduce a new student account emphasizing ease of use and appealing to young adults." + ] + }, + "tags": [ + "copywriting", + "marketing", + "account promotion", + "business", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"accountName\":\"ProConsult Freelancer Account\",\"targetAudience\":\"independent consultants and freelancers\",\"keyFeatures\":[\"flexible pricing\",\"24/7 support\",\"easy invoicing\"],\"tone\":\"friendly\",\"callToAction\":\"Join now and boost your freelancing career!\"}", + "description": "Marketing copy for a freelancer account aimed at consultants, using a friendly tone." + }, + { + "inputJson": "{\"accountName\":\"SecureBiz Small Business Account\",\"targetAudience\":\"small business owners\",\"keyFeatures\":[\"advanced security\",\"multi-factor authentication\",\"dedicated account manager\"],\"tone\":\"professional\",\"callToAction\":\"Protect your business today!\"}", + "description": "Professional tone marketing text promoting security features for small business owners." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "copywriting.createDiagram", + "description": "Generates a marketing or promotional diagram based on textual input and stylistic preferences. Accepts textual description of the message or concept, diagram type, style options, and outputs a detailed diagram layout plan or graphic structure that can be used in marketing content creation.", + "category": "copywriting", + "parameters": [ + { + "name": "textDescription", + "type": "string", + "description": "The main textual content or concept description to base the diagram on.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to create, e.g., flowchart, infographic, mind map, or chart.", + "required": true, + "defaultValue": "flowchart" + }, + { + "name": "style", + "type": "string", + "description": "Visual style for the diagram, e.g., professional, playful, minimalist.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "colorPalette", + "type": "array", + "description": "Array of color hex codes defining the color scheme for the diagram.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining diagram elements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format such as JSON layout, SVG markup, or textual layout description.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing the diagram layout or graphic data in the specified output format, including nodes, connections, colors, and annotations relevant for marketing use." + }, + "aiAgent": { + "useCase": "Use this tool when a marketing or copywriting agent needs to convert promotional or conceptual text into a clear and visually structured diagram to enhance communication, presentations, or campaign materials. Suitable for generating flowcharts, infographics, and mind maps that represent marketing ideas visually.", + "limitations": "This tool does not generate final graphical images but produces structured layouts or graphic blueprints. It cannot replace graphic design software or manual artistic adjustments. Complex or highly customized visual styles may not be fully supported.", + "examples": [ + "Create a flowchart diagram explaining the customer journey with a professional style.", + "Generate a colorful infographic from a product features description including a legend.", + "Produce a minimalist mind map from campaign goals text for internal presentation." + ] + }, + "tags": [ + "copywriting", + "diagram", + "marketing", + "visualization", + "promotional content", + "flowchart", + "infographic", + "mind map" + ], + "examples": [ + { + "inputJson": "{\"textDescription\":\"Outline of customer onboarding process steps and decision points.\",\"diagramType\":\"flowchart\",\"style\":\"professional\",\"colorPalette\":[\"#004080\",\"#c0d6e4\"],\"includeLegend\":true,\"outputFormat\":\"JSON\"}", + "description": "Generate a professional flowchart diagram layout based on a customer onboarding textual outline." + }, + { + "inputJson": "{\"textDescription\":\"Key product features and benefits arranged for an infographic.\",\"diagramType\":\"infographic\",\"style\":\"playful\",\"colorPalette\":[\"#ff5733\",\"#33c1ff\",\"#a833ff\"],\"includeLegend\":true,\"outputFormat\":\"JSON\"}", + "description": "Create a colorful playful infographic layout highlighting product features and benefits with legend." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "copywriting.createLead", + "description": "Generates compelling lead paragraphs for marketing or promotional content based on the target audience, product/service details, tone, and format preferences. Accepts structured input describing context and outputs a persuasive introductory text snippet designed to engage potential customers effectively.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or customer segment for the lead.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style for the lead paragraph (e.g., friendly, professional, enthusiastic).", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "keyBenefits", + "type": "array", + "description": "List of key benefits or features of the product/service to highlight in the lead.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Preferred text format or length for the lead (e.g., short, medium, long).", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated lead paragraph as a string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to craft the opening paragraph of marketing materials, advertisements, or promotional content that requires quick audience engagement by summarizing key product/service value in a targeted, persuasive manner.", + "limitations": "The tool cannot create full marketing copy beyond the lead paragraph and may not account fully for very niche or highly technical domains without adequate input detail.", + "examples": [ + "Create a friendly lead paragraph for a new eco-friendly water bottle targeting young adults highlighting sustainability and convenience.", + "Generate a professional lead for a B2B software platform aimed at financial institutions emphasizing security and efficiency.", + "Write an enthusiastic short lead for a fitness app targeting beginners focusing on ease of use and motivation." + ] + }, + "tags": [ + "copywriting", + "marketing", + "lead generation", + "text generation", + "promotional text" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoFlow Water Bottle\",\"targetAudience\":\"Environmentally conscious young adults\",\"tone\":\"friendly\",\"keyBenefits\":[\"sustainable materials\",\"keeps drinks cold for 24 hours\"],\"format\":\"medium\"}", + "description": "Generate a mid-length friendly lead paragraph for an eco-friendly water bottle aimed at young adults." + }, + { + "inputJson": "{\"productName\":\"FinSecurePro\",\"targetAudience\":\"Financial institutions\",\"tone\":\"professional\",\"keyBenefits\":[\"advanced encryption\",\"real-time monitoring\"],\"format\":\"long\"}", + "description": "Create a detailed professional lead paragraph for a financial software focusing on security features." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "copywriting.createOpportunity", + "description": "This tool generates persuasive business opportunity descriptions based on input parameters such as industry, target audience, product or service details, and unique selling points. It processes these inputs to produce a clear, engaging marketing copy that outlines the opportunity's value proposition and potential benefits for stakeholders.", + "category": "copywriting", + "parameters": [ + { + "name": "industry", + "type": "string", + "description": "The industry or sector related to the opportunity (e.g., technology, healthcare).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target customers or clients for the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "productOrService", + "type": "string", + "description": "Description of the product or service involved in the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "uniqueSellingPoints", + "type": "array", + "description": "List of key unique selling points or advantages of the opportunity.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "marketTrends", + "type": "string", + "description": "Relevant market trends that support the opportunity, if available.", + "required": false, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action to include at the end of the opportunity description.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy describing the business opportunity, including value proposition and benefits." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to craft a clear, compelling business opportunity description for marketing materials, presentations or proposals. It helps translate raw business facts into persuasive copy tailored to a target audience and industry context.", + "limitations": "It cannot replace detailed business analysis or strategic consultation and relies on accurate input data to produce relevant copy.", + "examples": [ + "Generate an opportunity description for a new healthcare app targeting elderly users.", + "Create a business opportunity for a solar energy product focusing on sustainability market trends.", + "Write a persuasive opportunity summary for a tech startup's AI-based chatbot tool." + ] + }, + "tags": [ + "marketing", + "business", + "copywriting", + "opportunity", + "business development", + "sales", + "promotional text", + "B2B" + ], + "examples": [ + { + "inputJson": "{\"industry\":\"Healthcare\",\"targetAudience\":\"elderly patients and caregivers\",\"productOrService\":\"a user-friendly medication management app\",\"uniqueSellingPoints\":[\"easy to use interface\",\"reminder notifications\",\"integration with pharmacies\"],\"marketTrends\":\"growing aging population and increasing use of mobile health tools\",\"callToAction\":\"Contact us for a demo today!\"}", + "description": "Create opportunity copy for a healthcare app aimed at elderly users." + }, + { + "inputJson": "{\"industry\":\"Renewable Energy\",\"targetAudience\":\"homeowners interested in sustainable solutions\",\"productOrService\":\"a compact, affordable solar panel system\",\"uniqueSellingPoints\":[\"cost-effective\",\"easy installation\",\"government incentives available\"],\"marketTrends\":\"rising energy costs and government subsidies for green energy\",\"callToAction\":\"Join the green revolution now!\"}", + "description": "Generate marketing copy for a new solar energy product." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "copywriting.createCustomer", + "description": "Generates a detailed customer persona description based on provided demographic details, interests, and behaviors. Accepts input parameters defining customer attributes and produces a marketing-ready customer profile text to support targeted copywriting and campaign planning.", + "category": "copywriting", + "parameters": [ + { + "name": "ageRange", + "type": "string", + "description": "Age range of the customer group (e.g., '25-34')", + "required": true, + "defaultValue": "" + }, + { + "name": "gender", + "type": "string", + "description": "Gender identity of the customer group (e.g., 'female', 'male', 'non-binary')", + "required": false, + "defaultValue": "" + }, + { + "name": "location", + "type": "string", + "description": "Geographic location or region of the customer (e.g., 'North America')", + "required": false, + "defaultValue": "" + }, + { + "name": "interests", + "type": "array", + "description": "List of main interests or hobbies of the customer (e.g., ['fitness', 'technology'])", + "required": true, + "defaultValue": "" + }, + { + "name": "incomeLevel", + "type": "string", + "description": "Typical income level of the customer group (e.g., 'middle', 'high')", + "required": false, + "defaultValue": "" + }, + { + "name": "purchaseBehavior", + "type": "string", + "description": "Key purchasing habits or preferences (e.g., 'prefers online shopping')", + "required": false, + "defaultValue": "" + }, + { + "name": "brandAttitudes", + "type": "string", + "description": "Customer's general attitude towards brands (e.g., 'brand loyal', 'value-seeker')", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a comprehensive, narrative customer profile text suitable for use in marketing and advertising copy." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a detailed, humanized customer persona to tailor marketing messages, segment audiences, or inform product positioning. It helps transform raw customer attribute data into engaging descriptions for copywriting purposes.", + "limitations": "This tool does not generate actual customer data but creates fictional personas based on inputs; it cannot replace detailed market research or analytics data.", + "examples": [ + "Create a customer profile for females aged 25-34 interested in fitness and healthy eating living in North America.", + "Generate a buyer persona for middle income tech enthusiasts aged 30-40 who prefer online shopping.", + "Create a customer description for brand loyal males interested in outdoor activities and sustainability aged 20-30." + ] + }, + "tags": [ + "copywriting", + "customerPersona", + "marketing", + "audience", + "profile", + "advertising", + "targeting" + ], + "examples": [ + { + "inputJson": "{\"ageRange\":\"25-34\",\"gender\":\"female\",\"location\":\"North America\",\"interests\":[\"fitness\",\"healthy eating\"],\"incomeLevel\":\"middle\",\"purchaseBehavior\":\"prefers online shopping\",\"brandAttitudes\":\"value-seeker\"}", + "description": "Create a customer persona for middle-income females aged 25-34 in North America interested in fitness and healthy eating, who prefer online shopping and seek value from brands." + }, + { + "inputJson": "{\"ageRange\":\"30-40\",\"gender\":\"male\",\"location\":\"Europe\",\"interests\":[\"technology\",\"gaming\"],\"incomeLevel\":\"high\",\"purchaseBehavior\":\"early adopter\",\"brandAttitudes\":\"brand loyal\"}", + "description": "Generate a customer profile for high-income males aged 30-40 in Europe into technology and gaming, who are early adopters and brand loyal." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "copywriting.createScreenshot", + "description": "Generates a high-quality promotional screenshot image for marketing purposes by combining textual content, visual styling, and optional branding elements. Accepts input text, style parameters, and optional images, producing a shareable screenshot image optimized for ads, presentations, or social media.", + "category": "copywriting", + "parameters": [ + { + "name": "headlineText", + "type": "string", + "description": "Primary headline text displayed prominently in the screenshot.", + "required": true, + "defaultValue": "" + }, + { + "name": "subHeadlineText", + "type": "string", + "description": "Supporting subheadline text that appears below the main headline.", + "required": false, + "defaultValue": "" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the screenshot in HEX or CSS color names.", + "required": false, + "defaultValue": "#ffffff" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family to apply to all text elements.", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Base font size in pixels for headline text.", + "required": false, + "defaultValue": "24" + }, + { + "name": "textColor", + "type": "string", + "description": "Color of the text in HEX or CSS color names.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "logoImageUrl", + "type": "string", + "description": "URL of an optional logo image to include in the screenshot.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Image output format, e.g., PNG or JPEG.", + "required": false, + "defaultValue": "PNG" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated screenshot image as a base64 encoded string and metadata including format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create marketing-ready, visually appealing screenshots that combine text and optional branding for promotional content such as social media ads, landing pages, or presentations. It automates the generation of styled images from textual input and design parameters.", + "limitations": "Cannot generate complex layouts or interactive elements; limited to static image output. Image quality depends on text length and parameter combinations; does not fetch or verify external URLs for logos.", + "examples": [ + "Create a screenshot with a headline and subheadline on a blue background with white text.", + "Generate a promotional banner including a logo and customized font for a new product release.", + "Produce a simple text-only screenshot optimized for social media advertising." + ] + }, + "tags": [ + "copywriting", + "image generation", + "marketing", + "screenshot", + "promotional", + "branding", + "visual content" + ], + "examples": [ + { + "inputJson": "{\"headlineText\":\"Announcing Our New Product!\",\"subHeadlineText\":\"Innovate your workflow with cutting-edge tech.\",\"backgroundColor\":\"#0047AB\",\"fontFamily\":\"Helvetica\",\"fontSize\":28,\"textColor\":\"#ffffff\",\"logoImageUrl\":\"https://example.com/logo.png\",\"outputFormat\":\"PNG\"}", + "description": "Creates a promotional screenshot with a bold headline, subheadline, blue background, white text, and company logo." + }, + { + "inputJson": "{\"headlineText\":\"Limited Time Offer!\",\"subHeadlineText\":\"Get 50% off until Sunday.\",\"backgroundColor\":\"#ffcc00\",\"fontFamily\":\"Verdana\",\"fontSize\":24,\"textColor\":\"#333333\",\"logoImageUrl\":\"\",\"outputFormat\":\"JPEG\"}", + "description": "Generates a bright promotional image emphasizing a sales offer using yellow background and dark text, without a logo." + }, + { + "inputJson": "{\"headlineText\":\"Join Our Webinar\",\"subHeadlineText\":\"Learn industry secrets from experts.\",\"backgroundColor\":\"#ffffff\",\"fontFamily\":\"Times New Roman\",\"fontSize\":20,\"textColor\":\"#000000\",\"logoImageUrl\":\"\",\"outputFormat\":\"PNG\"}", + "description": "Produces a clean, elegant screenshot with black text on white background promoting a webinar event." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Screenshot", + "context": null + } + }, + { + "name": "copywriting.createGraph", + "description": "Generates compelling, marketing-oriented textual descriptions for various types of graphs based on input data and graph type. Accepts raw numerical or categorical data along with graph metadata, processes key insights, trends, and comparisons, and outputs persuasive copy suitable for promotional or analytical content.", + "category": "copywriting", + "parameters": [ + { + "name": "graphType", + "type": "string", + "description": "Type of graph to describe, such as 'bar', 'line', 'pie', or 'scatter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Structured data representing the graph contents, including labels and values.", + "required": true, + "defaultValue": "" + }, + { + "name": "highlightPoints", + "type": "array", + "description": "Specific data points or trends in the graph to emphasize in the copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Writing tone for the description, e.g., 'professional', 'casual', 'enthusiastic'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "language", + "type": "string", + "description": "Desired language for the generated text, default is English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words for the generated graph description.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated persuasive graph description text ready for marketing use." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to create engaging and readable copy that explains or promotes graphical data visualizations in marketing materials, presentations, or reports. It is ideal for summarizing data insights in a way that is accessible and persuasive to a non-technical audience.", + "limitations": "The tool cannot generate visual graphs or handle raw image inputs; it focuses solely on textual description. It may not be able to capture deeply complex statistical insights beyond summary-level trends.", + "examples": [ + "Create a compelling description for a bar graph showing quarterly sales growth.", + "Write an enthusiastic copy for a pie chart illustrating market share.", + "Generate a professional summary of a line chart tracking website traffic over a year." + ] + }, + "tags": [ + "copywriting", + "graph description", + "marketing text", + "data storytelling", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"graphType\":\"bar\",\"data\":{\"labels\":[\"Q1\",\"Q2\",\"Q3\",\"Q4\"],\"values\":[15000,18000,22000,25000]},\"highlightPoints\":[\"Q3 and Q4 show significant growth\"],\"tone\":\"enthusiastic\",\"language\":\"en\",\"maxLength\":100}", + "description": "Generating an energetic description for a bar graph illustrating quarterly sales increase." + }, + { + "inputJson": "{\"graphType\":\"pie\",\"data\":{\"labels\":[\"Brand A\",\"Brand B\",\"Brand C\"],\"values\":[45,30,25]},\"highlightPoints\":[\"Brand A leads the market\"],\"tone\":\"professional\",\"language\":\"en\",\"maxLength\":80}", + "description": "Creating a professional summary for a pie chart showing brand market share." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "copywriting.createChart", + "description": "Generates descriptive chart content for marketing use by accepting raw chart data and chart type. It analyzes the data, summarizes key insights, and produces engaging promotional text that highlights trends, comparisons, or performance metrics to support marketing campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "chartType", + "type": "string", + "description": "The type of chart (e.g., bar, line, pie) to contextualize the description.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "array", + "description": "An array of objects representing the chart data points, each with labels and numeric values.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Defines the audience for tailoring tone and complexity of the chart text (e.g., general public, executives).", + "required": false, + "defaultValue": "general public" + }, + { + "name": "highlightKeyPoints", + "type": "boolean", + "description": "Whether to emphasize key insights and trends prominently in the generated text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code to generate the chart description text (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a concise, engaging chart description optimized for marketing or promotional usage." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce compelling written explanations or promotional blurbs for chart data in marketing materials. It is valuable when the visual data needs narrative to engage the audience and communicate insights effectively without manual copywriting.", + "limitations": "Cannot generate actual images or visual charts; output is limited to textual descriptions. It also relies on well-structured input data and may not capture very complex or domain-specific nuances without tailored input.", + "examples": [ + "Create a promotional text for a line chart showing quarterly sales growth.", + "Generate engaging copy describing a pie chart breaking down product category revenue.", + "Write an executive summary highlighting key points from a bar chart comparing market share." + ] + }, + "tags": [ + "copywriting", + "chart", + "marketing", + "content generation", + "data summarization" + ], + "examples": [ + { + "inputJson": "{\"chartType\":\"bar\",\"data\":[{\"label\":\"Q1\",\"value\":150},{\"label\":\"Q2\",\"value\":200},{\"label\":\"Q3\",\"value\":250},{\"label\":\"Q4\",\"value\":300}],\"targetAudience\":\"executives\",\"highlightKeyPoints\":true}", + "description": "Generate executive-focused promotional text describing quarterly sales growth from bar chart data." + }, + { + "inputJson": "{\"chartType\":\"pie\",\"data\":[{\"label\":\"Category A\",\"value\":45},{\"label\":\"Category B\",\"value\":35},{\"label\":\"Category C\",\"value\":20}],\"targetAudience\":\"general public\",\"highlightKeyPoints\":true}", + "description": "Create engaging copy explaining a pie chart illustrating product category revenue distribution." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "copywriting.createConfig", + "description": "Generates a structured configuration object for copywriting tasks, allowing specification of tone, target audience, content length, and style preferences. Accepts parameters defining these elements, processes them into a unified JSON config used to guide AI copywriting models or tools. Outputs a JSON configuration ready for integration.", + "category": "copywriting", + "parameters": [ + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy, e.g., 'formal', 'casual', 'friendly', or 'professional'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the copy, such as demographics or buyer persona.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentLength", + "type": "number", + "description": "Approximate target length of the copy in words.", + "required": false, + "defaultValue": "300" + }, + { + "name": "style", + "type": "string", + "description": "Specific stylistic preferences like 'concise', ' humorous', 'technical', or 'storytelling'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeKeywords", + "type": "array", + "description": "List of keywords or phrases to include in the copy for SEO or emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludeWords", + "type": "array", + "description": "List of words or phrases to avoid in the content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the copywriting content.", + "required": false, + "defaultValue": "en" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of content to be produced, such as 'blog post', 'ad copy', 'product description'.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the full copywriting configuration, consolidating all input parameters in a structured schema for use by copywriting generation services." + }, + "aiAgent": { + "useCase": "Use this tool to create detailed and structured configurations that guide AI-powered copywriting engines, ensuring the generated text matches tone, style, length, audience, and content type requirements for marketing and promotional materials.", + "limitations": "Does not generate actual copywriting text; only provides configuration. It cannot validate audience or stylistic preferences semantics beyond input copying.", + "examples": [ + "Create a config for a friendly, concise blog post targeting young professionals about fintech.", + "Generate a configuration for professional product description copy in English including specific SEO keywords.", + "Set up a config for humorous ad copy aimed at teenagers with a casual tone." + ] + }, + "tags": [ + "copywriting", + "configuration", + "marketing", + "content generation", + "AI prompt", + "text style", + "SEO" + ], + "examples": [ + { + "inputJson": "{\"tone\":\"friendly\",\"targetAudience\":\"young professionals in fintech\",\"contentLength\":500,\"style\":\"concise\",\"includeKeywords\":[\"fintech\",\"investment\"],\"excludeWords\":[\"complex\"],\"language\":\"en\",\"contentType\":\"blog post\"}", + "description": "Configuration for a friendly and concise blog post aimed at young fintech professionals, including SEO keywords." + }, + { + "inputJson": "{\"tone\":\"professional\",\"targetAudience\":\"enterprise customers\",\"contentLength\":300,\"style\":\"technical\",\"includeKeywords\":[\"cloud computing\",\"security\"],\"excludeWords\":[],\"language\":\"en\",\"contentType\":\"product description\"}", + "description": "Config for a professional, technical product description targeting enterprise customers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "copywriting.createDataset", + "description": "Generates a structured dataset of marketing copy samples tailored for training or testing natural language models. Accepts inputs like target industry, tone, and content type, then creates a labeled dataset with text samples categorized by style, purpose, and format in JSON or CSV format.", + "category": "copywriting", + "parameters": [ + { + "name": "industry", + "type": "string", + "description": "Target industry or domain for marketing copy (e.g., technology, healthcare).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the copy (e.g., formal, casual, persuasive).", + "required": false, + "defaultValue": "informative" + }, + { + "name": "contentTypes", + "type": "array", + "description": "List of marketing content types to include (e.g., slogans, product descriptions, social media posts).", + "required": true, + "defaultValue": "[\"slogans\",\"productDescriptions\"]" + }, + { + "name": "numSamples", + "type": "number", + "description": "Number of text samples to generate per content type.", + "required": false, + "defaultValue": "10" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output dataset file (json or csv).", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dataset as an array of sample objects and metadata such as industry, tone, and content types." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create diverse, labeled datasets containing marketing copy samples for specific industries and tones, useful for training, testing, or benchmarking NLP and AI copywriting models.", + "limitations": "Cannot guarantee factual accuracy or legal compliance of generated content. May not capture extremely niche or specialized industry jargon fully.", + "examples": [ + "Create a dataset of 20 persuasive slogans and product descriptions for the technology sector.", + "Generate 15 formal healthcare marketing social media posts samples.", + "Produce an informative dataset in json format with 10 product descriptions and 10 slogans for the fashion industry." + ] + }, + "tags": [ + "copywriting", + "dataset", + "marketing", + "NLP", + "training-data", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"industry\":\"technology\",\"tone\":\"persuasive\",\"contentTypes\":[\"slogans\",\"productDescriptions\"],\"numSamples\":5,\"outputFormat\":\"json\"}", + "description": "Generate a dataset with 5 persuasive slogans and product descriptions for the technology industry." + }, + { + "inputJson": "{\"industry\":\"healthcare\",\"contentTypes\":[\"socialMediaPosts\"],\"numSamples\":10,\"outputFormat\":\"csv\"}", + "description": "Create 10 social media post samples for healthcare in CSV format using default tone (informative)." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "copywriting.createAttachment", + "description": "Generates a promotional media attachment combining copywriting text with image or video links. Accepts marketing copy, media URLs, attachment type, and optional branding details. Produces a structured attachment object optimized for social media or email campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "copyText", + "type": "string", + "description": "The marketing or promotional text content for the attachment, concise and engaging.", + "required": true, + "defaultValue": "" + }, + { + "name": "mediaUrls", + "type": "array", + "description": "List of URLs pointing to images or videos to include in the attachment.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "attachmentType", + "type": "string", + "description": "The type of media attachment: e.g., 'image', 'video', or 'carousel'.", + "required": true, + "defaultValue": "" + }, + { + "name": "brandName", + "type": "string", + "description": "Optional brand or product name to include in the attachment for branding consistency.", + "required": false, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action phrase to encourage user interaction.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "Intended platform for the attachment, e.g., 'email', 'facebook', or 'instagram' to optimize formatting.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the finalized attachment including structured text, embedded media links, formatting metadata, and call to action ready for marketing use." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create ready-to-deploy promotional media attachments that combine compelling copywriting with visual media links, tailored for social media or email marketing channels. It facilitates generating structured, consistent marketing attachments to improve campaign engagement.", + "limitations": "This tool does not generate or host media files; it only organizes provided copy and media URLs into a marketing attachment structure. It cannot validate media URL content or perform visual content analysis.", + "examples": [ + "Create an Instagram image post attachment with marketing copy and brand name.", + "Generate a video attachment with call to action text for email marketing.", + "Build a carousel attachment with multiple images and promotional copy for Facebook." + ] + }, + "tags": [ + "copywriting", + "marketing", + "media", + "attachment", + "social media", + "email marketing", + "promotional content" + ], + "examples": [ + { + "inputJson": "{\"copyText\":\"Discover the future of smart tech with our latest smartwatch! Limited time offer.\",\"mediaUrls\":[\"https://example.com/images/smartwatch.jpg\"],\"attachmentType\":\"image\",\"brandName\":\"SmartTech\",\"callToAction\":\"Shop Now\",\"targetPlatform\":\"instagram\"}", + "description": "An Instagram image attachment promoting a smartwatch with brand and call to action." + }, + { + "inputJson": "{\"copyText\":\"Watch our introduction video to see how our product can change your life.\",\"mediaUrls\":[\"https://example.com/videos/intro.mp4\"],\"attachmentType\":\"video\",\"brandName\":\"LifeChanger\",\"callToAction\":\"Learn More\",\"targetPlatform\":\"email\"}", + "description": "A video attachment for an email campaign containing promotional text and call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "copywriting.createFile", + "description": "Generates a text-based marketing copy file (e.g., TXT, DOCX, PDF) from provided marketing content, tone, and format preferences. Accepts input content and style parameters, processes the text with formatting suitable for the specified file type, and outputs a downloadable file containing the crafted copy ready for distribution or publishing.", + "category": "copywriting", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main marketing or promotional text content to be included in the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the copy such as formal, casual, enthusiastic, or professional.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Specifies the output file format to generate such as 'txt', 'docx', or 'pdf'.", + "required": true, + "defaultValue": "txt" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include a header section with branding or title in the file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "headerText", + "type": "string", + "description": "Custom header text to include if header is enabled.", + "required": false, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size to apply to the text content in the file, applicable for rich formats.", + "required": false, + "defaultValue": "12" + }, + { + "name": "fontName", + "type": "string", + "description": "Name of the font to use in the file for text formatting (if supported).", + "required": false, + "defaultValue": "Arial" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file name and a base64 string representing the encoded file content for download or saving." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to generate a marketing or promotional text document file that can be readily saved, shared, or sent to clients. It is ideal for automating the creation of polished copy files in various formats tailored to desired tone and styling.", + "limitations": "Does not generate graphic content or complex layouts beyond basic text and simple formatting. Cannot create multimedia or interactive files. Precision font styling depends on file format support.", + "examples": [ + "Create a professional PDF file with promotional copy about a new software release.", + "Generate a casual tone TXT file containing event invitation text.", + "Produce a DOCX marketing flyer text file with custom header and font settings." + ] + }, + "tags": [ + "copywriting", + "fileGeneration", + "marketing", + "textFormatting", + "documentCreation", + "promotion", + "contentCreation" + ], + "examples": [ + { + "inputJson": "{\"content\":\"Introducing our latest product, designed to boost your productivity!\",\"tone\":\"enthusiastic\",\"fileFormat\":\"pdf\",\"includeHeader\":true,\"headerText\":\"Product Launch\",\"fontSize\":14,\"fontName\":\"Helvetica\"}", + "description": "Generate an enthusiastic promotional PDF file with a header and custom font." + }, + { + "inputJson": "{\"content\":\"Join us for our annual conference.\",\"tone\":\"casual\",\"fileFormat\":\"txt\",\"includeHeader\":false}", + "description": "Create a simple casual TXT file with invitation text without a header." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "copywriting.createVideo", + "description": "Generates a short promotional video script and storyboard based on provided marketing content and style preferences. Accepts product descriptions, target audience details, tone, and desired video length, then outputs a storyboard outline with suggested scenes, dialogue, and text overlays for video production.", + "category": "copywriting", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "Detailed description of the product or service to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience including demographics and interests.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the video, e.g., professional, casual, humorous, inspirational.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "videoLengthSeconds", + "type": "number", + "description": "Approximate length of the video in seconds, typically between 15 and 120 seconds.", + "required": false, + "defaultValue": "60" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call-to-action to include at the end of the video, like 'Buy now' or 'Learn more'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated video script and storyboard consisting of scenes with text, dialogue suggestions, and visual descriptions." + }, + "aiAgent": { + "useCase": "This tool is ideal for generating initial video marketing content for advertising campaigns, social media videos, or product promos when given product details and audience context. It helps quickly produce structured creative outlines for video production teams.", + "limitations": "This tool does not generate actual video media files or animations. It provides textual storyboard and script suggestions, requiring further production work to create final videos.", + "examples": [ + "Create a 30-second inspirational video script for a new smartwatch aimed at tech-savvy professionals.", + "Generate a humorous 15-second storyboard for a snack brand targeting teenagers.", + "Produce a professional promotional video outline highlighting fitness app features for health-conscious adults." + ] + }, + "tags": [ + "copywriting", + "video", + "marketing", + "advertising", + "scriptwriting", + "storyboarding", + "promotional" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"A smartwatch with health tracking and seamless smartphone integration.\",\"targetAudience\":\"tech-savvy professionals aged 25-40.\",\"tone\":\"inspirational\",\"videoLengthSeconds\":30,\"callToAction\":\"Order yours today!\"}", + "description": "Generate a motivational and professional 30-second video script promoting a smartwatch." + }, + { + "inputJson": "{\"productDescription\":\"A new crunchy snack brand offering various flavors.\",\"targetAudience\":\"teenagers aged 13-19.\",\"tone\":\"humorous\",\"videoLengthSeconds\":15,\"callToAction\":\"Try it now!\"}", + "description": "Create a short, funny storyboard for a snack targeted to teenagers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "copywriting.createImage", + "description": "Generates marketing and promotional images based on textual descriptions and branding guidelines. Accepts inputs such as key marketing messages, style preferences, target audience details, and branding colors, then uses these to create visually appealing images suitable for campaigns, advertisements, or social media posts. Outputs a high-resolution image file URL or base64 string.", + "category": "copywriting", + "parameters": [ + { + "name": "textPrompt", + "type": "string", + "description": "A concise description of the marketing message or theme to be visualized in the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The artistic or design style to apply to the image (e.g., minimalistic, vintage, modern, futuristic).", + "required": false, + "defaultValue": "modern" + }, + { + "name": "brandColors", + "type": "array", + "description": "List of hex color codes to incorporate in the image following brand guidelines.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Brief description of the target audience (e.g., young adults, professionals) to tailor image tone accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageDimensions", + "type": "object", + "description": "An object specifying image width and height in pixels, e.g., {\"width\":1080, \"height\":1080}.", + "required": false, + "defaultValue": "{\"width\":1080,\"height\":1080}" + }, + { + "name": "includeLogo", + "type": "boolean", + "description": "Whether to include the company's logo in the image if logo details are available.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated image as a URL or base64 string and metadata about the image including dimensions and style." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate promotional images for marketing campaigns, social media, advertisements, or product launches by converting marketing messages and brand preferences into visually optimized images. It enables fast creation of visuals aligned with branding and target audience.", + "limitations": "Cannot guarantee compliance with all brand manual specifics especially for complex logos or proprietary fonts. Not suitable for creating photographic or hyper-realistic images from scratch. May require human review for final approval.", + "examples": [ + "Create a modern style promotional image with the phrase 'Summer Sale - 50% OFF' targeting young adults, incorporating brand color #FF5733.", + "Generate a minimalistic social media post image with the text 'Join our Webinar' using brand colors #0044CC and #FFFFFF.", + "Produce a futuristic product launch banner for professionals, 1920x1080 pixels, including company logo." + ] + }, + "tags": [ + "copywriting", + "image generation", + "marketing", + "promotion", + "branding", + "design", + "advertisement" + ], + "examples": [ + { + "inputJson": "{\"textPrompt\":\"Summer Sale - 50% OFF on all items\",\"style\":\"modern\",\"brandColors\":[\"#FF5733\"],\"targetAudience\":\"young adults\",\"imageDimensions\":{\"width\":1080,\"height\":1080},\"includeLogo\":false}", + "description": "Creates a modern styled promotional image for a summer sale targeting young adults with vibrant brand color." + }, + { + "inputJson": "{\"textPrompt\":\"Join our Webinar\",\"style\":\"minimalistic\",\"brandColors\":[\"#0044CC\", \"#FFFFFF\"],\"targetAudience\":\"professionals\",\"imageDimensions\":{\"width\":1200,\"height\":628},\"includeLogo\":true}", + "description": "Generates a minimalistic social media post inviting professionals to join a webinar, including the company logo." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "copywriting.createHTML", + "description": "Generates marketing and promotional HTML content based on provided text inputs, style preferences, and layout options. Accepts input such as headline, body text, call-to-action details, and style parameters. Outputs an HTML string with semantic structure, inline or linked styles, and responsive design elements suitable for web marketing materials.", + "category": "copywriting", + "parameters": [ + { + "name": "headline", + "type": "string", + "description": "Main headline or title text for the promotional content.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Primary body or description text detailing the offer or promotion.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToActionText", + "type": "string", + "description": "Text for the call-to-action button or link, e.g., 'Buy Now'.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToActionUrl", + "type": "string", + "description": "URL the call-to-action button or link should point to.", + "required": true, + "defaultValue": "" + }, + { + "name": "themeColor", + "type": "string", + "description": "Hex or named color used for accents and call-to-action button styling.", + "required": false, + "defaultValue": "#007BFF" + }, + { + "name": "includeImageUrl", + "type": "string", + "description": "Optional URL to an image displayed in the promotional HTML block.", + "required": false, + "defaultValue": "" + }, + { + "name": "layoutStyle", + "type": "string", + "description": "Layout style choice, e.g., 'vertical' or 'horizontal' arrangement of elements.", + "required": false, + "defaultValue": "vertical" + }, + { + "name": "responsive", + "type": "boolean", + "description": "Whether to produce responsive HTML designed for mobile and desktop.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string under the 'html' property." + }, + "aiAgent": { + "useCase": "Use this tool when generating standardized, well-structured promotional HTML content from marketing text inputs, ensuring consistent style and formatting without manual coding. Helpful for automating creation of email campaigns, landing pages, or web advertisements.", + "limitations": "Cannot create complex interactive scripts, animations, or handle rich multimedia beyond basic images. Styling is basic and intended for marketing use cases, not full website development.", + "examples": [ + "Create HTML for a promotional sale with headline, body, call-to-action button linking to a product page, using brand color #FF5733.", + "Generate marketing HTML content with a horizontal layout including an image URL for a new product launch announcement.", + "Provide responsive promotional HTML content with default theme color, featuring a headline, descriptive text, and a signup button linking to a registration page." + ] + }, + "tags": [ + "copywriting", + "HTML", + "marketing", + "promotion", + "template", + "automation", + "web", + "email" + ], + "examples": [ + { + "inputJson": "{\"headline\":\"Summer Sale - Up to 50% Off!\",\"bodyText\":\"Don't miss out on our biggest sale of the year. Shop now and save big on all your favorite products.\",\"callToActionText\":\"Shop Now\",\"callToActionUrl\":\"https://example.com/sale\",\"themeColor\":\"#FF5733\",\"includeImageUrl\":\"https://example.com/images/sale_banner.jpg\",\"layoutStyle\":\"vertical\",\"responsive\":true}", + "description": "Generate a vertical layout HTML promotional block for a summer sale with an image and custom brand color." + }, + { + "inputJson": "{\"headline\":\"Join Our Newsletter!\",\"bodyText\":\"Stay updated with the latest news and exclusive offers. Subscribe today.\",\"callToActionText\":\"Subscribe\",\"callToActionUrl\":\"https://example.com/subscribe\",\"themeColor\":\"#0056b3\",\"layoutStyle\":\"horizontal\",\"responsive\":true}", + "description": "Create a horizontal layout marketing HTML with call-to-action for newsletter subscription." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "copywriting.createAudio", + "description": "Generates a promotional or marketing audio clip based on provided text content and style preferences. Accepts written scripts or summaries and produces a finalized audio file in specified format using text-to-speech synthesis, optionally adding background music or effects.", + "category": "copywriting", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The main script or promotional text to be converted into audio.", + "required": true, + "defaultValue": "" + }, + { + "name": "voiceType", + "type": "string", + "description": "The desired voice profile for narration, e.g., male/female, tone, accent.", + "required": false, + "defaultValue": "neutral-female" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the speech synthesis (e.g., en-US, es-ES).", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Output audio file format, e.g., mp3, wav, ogg.", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "backgroundMusicUrl", + "type": "string", + "description": "Optional URL to background music track to blend with narration.", + "required": false, + "defaultValue": "" + }, + { + "name": "speechRate", + "type": "number", + "description": "Speed of the speech in words per minute.", + "required": false, + "defaultValue": "150" + }, + { + "name": "includeEffects", + "type": "boolean", + "description": "Whether to add audio effects or enhancements like reverb or equalization.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the audio file URL and metadata about the generated audio clip, including duration and format." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to create marketing or promotional audio content from textual inputs, such as ad scripts, product descriptions, or announcements, producing professional-sounding audio files for campaigns or media.", + "limitations": "Cannot generate original voice acting beyond synthesized voices; background music must be provided via URL; audio quality depends on underlying TTS engine capabilities.", + "examples": [ + "Create an upbeat female voice ad in English with background music in MP3.", + "Generate a Spanish male voice narration from the given promo script without background music.", + "Produce a slow-paced audio announcement file in WAV format with slight echo effect." + ] + }, + "tags": [ + "copywriting", + "audio", + "text-to-speech", + "marketing", + "promotions", + "media", + "voice synthesis" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Introducing our new product line - efficient, affordable, and eco-friendly! Order now and save 20%.\",\"voiceType\":\"female-standard\",\"language\":\"en-US\",\"audioFormat\":\"mp3\",\"backgroundMusicUrl\":\"https://example.com/music/ambient.mp3\",\"speechRate\":160,\"includeEffects\":true}", + "description": "Generation of a female English promo audio with upbeat background music and subtle audio effects." + }, + { + "inputJson": "{\"textContent\":\"¡Descubre la nueva experiencia con nuestro servicio premium! Calidad y exclusividad a tu alcance.\",\"voiceType\":\"male\",\"language\":\"es-ES\",\"audioFormat\":\"wav\",\"backgroundMusicUrl\":\"\",\"speechRate\":140,\"includeEffects\":false}", + "description": "Creating a Spanish male voice narration for a premium service announcement with no background music." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "copywriting.createMarkdown", + "description": "Generates well-structured marketing or promotional content formatted in Markdown. Accepts inputs describing the product or service, target audience, tone, and key points, then produces a ready-to-use Markdown document suitable for blogs, newsletters, or promotional websites.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the content (e.g., demographics, interests).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key features or benefits to highlight in the content.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the content (e.g., professional, friendly, casual, urgent).", + "required": false, + "defaultValue": "Professional" + }, + { + "name": "callToAction", + "type": "string", + "description": "Call to action phrase or sentence to include at the end of the content.", + "required": false, + "defaultValue": "Learn more and get started today!" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any extra instructions or style guidelines for content generation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown content as a string under 'markdownContent'." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to create engaging, market-ready Markdown formatted copy for products or services based on given details and specified tone. It's useful for quickly generating promotional blog posts, feature highlights, and sales copy that can be directly published or edited further.", + "limitations": "The tool cannot verify factual accuracy about the product beyond the given input and may not perfectly capture nuanced brand voice or highly technical content without detailed input.", + "examples": [ + "Create a Markdown promo for a new smartwatch for fitness enthusiasts with a friendly tone.", + "Generate an urgent call-to-action newsletter snippet highlighting limited-time discounts for a software service.", + "Produce a professional product overview in Markdown emphasizing ease of use and security features." + ] + }, + "tags": [ + "copywriting", + "markdown", + "marketing", + "promotional", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoClean Water Bottle\",\"targetAudience\":\"environmentally conscious adults aged 25-45\",\"keyFeatures\":[\"Reusable and eco-friendly\",\"Keeps water cold for 24 hours\",\"BPA-free materials\"],\"tone\":\"friendly\",\"callToAction\":\"Join the green movement—get your EcoClean now!\",\"additionalNotes\":\"Include bullet points and a short intro paragraph.\"}", + "description": "Generate friendly marketing Markdown text for an eco-friendly water bottle targeting adult eco-conscious consumers." + }, + { + "inputJson": "{\"productName\":\"QuickFix Antivirus\",\"targetAudience\":\"small business owners\",\"keyFeatures\":[\"Real-time protection\",\"Automatic updates\",\"24/7 customer support\"],\"tone\":\"professional\",\"callToAction\":\"Protect your business today with QuickFix Antivirus.\",\"additionalNotes\":\"Focus on reliability and business safety.\"}", + "description": "Create a professional Markdown promotional snippet for antivirus software aimed at small businesses." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "copywriting.createYAML", + "description": "Generates a YAML-formatted document that structures marketing copy based on input parameters such as campaign details, target audience, product features, and desired tone. The tool processes descriptive input and outputs a well-organized YAML string suitable for use in marketing automation or content management systems.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name or title of the marketing campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "The name of the product or service being promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the marketing copy.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "A list of the product's main features or selling points to highlight.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the copy, e.g., 'professional', 'friendly', 'exciting'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "callToAction", + "type": "string", + "description": "The call-to-action phrase to include at the end of the copy.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A string containing the marketing copy formatted as YAML, including sections for campaignName, productName, targetAudience, features, tone, and callToAction." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured marketing information into a formatted YAML document that can be integrated with marketing automation tools or content management systems. Ideal for agents tasked with generating templated marketing content with configurable tone and focus.", + "limitations": "This tool generates YAML-formatted text but does not validate the marketing effectiveness or compliance of the content. It cannot create fully original persuasive text beyond basic templates and supplied inputs.", + "examples": [ + "Generate YAML for a friendly tone marketing campaign promoting a new eco-friendly water bottle.", + "Create YAML that organizes product features and includes a clear call to action for a B2B SaaS software.", + "Output marketing copy YAML targeting young professionals with a professional tone and detailed product descriptions." + ] + }, + "tags": [ + "copywriting", + "yaml", + "marketing", + "contentGeneration", + "automation", + "templating" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Summer Sale\",\"productName\":\"Eco Water Bottle\",\"targetAudience\":\"environment-conscious young adults\",\"keyFeatures\":[\"BPA free\",\"Keeps water cold 24 hours\",\"Recyclable materials\"],\"tone\":\"friendly\",\"callToAction\":\"Shop now and save!\"}", + "description": "Generate YAML marketing copy for a summer sale campaign targeting eco-conscious consumers with a friendly tone." + }, + { + "inputJson": "{\"campaignName\":\"Enterprise Cloud Upgrade\",\"productName\":\"CloudPro SaaS\",\"targetAudience\":\"IT professionals and CTOs\",\"keyFeatures\":[\"99.9% uptime\",\"24/7 support\",\"Scalable infrastructure\"],\"tone\":\"professional\",\"callToAction\":\"Request a demo today\"}", + "description": "Create professional tone YAML marketing copy for an enterprise software upgrade campaign." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "copywriting.createXML", + "description": "Creates a structured XML document representing marketing or promotional content. Accepts input as either a JSON object or string describing copywriting elements like headings, paragraphs, calls to action, and metadata. Processes this input to generate a well-formed XML string output suitable for integration with content management systems or marketing automation platforms.", + "category": "copywriting", + "parameters": [ + { + "name": "copyElements", + "type": "object", + "description": "A JSON object representing the structured content elements such as headings, paragraphs, and calls to action to include in the XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "The name of the root XML element enclosing all provided copywriting content.", + "required": false, + "defaultValue": "MarketingContent" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to indicate whether to include metadata such as author, campaign name, and date in the XML output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "An optional JSON object containing metadata fields like author, campaignName, creationDate to embed in the output XML if includeMetadata is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A string containing a well-formed XML document representing the input copywriting content and optional metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform structured marketing or promotional text data into a standardized XML format. This is useful in workflows where copywriting content must be interoperable with XML-based CMS, automated marketing tools, or for export to external platforms requiring XML input.", + "limitations": "This tool does not perform copywriting creativity or natural language generation; it requires well-structured input describing the content elements. It also does not validate XML schemas beyond well-formedness and assumes simple hierarchical XML structures.", + "examples": [ + "Create an XML representation of a promotional headline, body text, and call to action for a product launch.", + "Generate an XML document including campaign metadata for marketing automation import.", + "Transform provided JSON-formatted marketing copy into XML format for CMS ingestion." + ] + }, + "tags": [ + "copywriting", + "XML", + "marketing", + "content generation", + "data transformation", + "promotion" + ], + "examples": [ + { + "inputJson": "{\"copyElements\":{\"heading\":\"Introducing the Future\",\"paragraphs\":[\"Our latest product revolutionizes your workflow.\"],\"callToAction\":\"Buy Now\"},\"rootElementName\":\"AdContent\",\"includeMetadata\":true,\"metadata\":{\"author\":\"Jane Doe\",\"campaignName\":\"Launch2024\",\"creationDate\":\"2024-06-01\"}}", + "description": "Generate XML for a promotional ad with heading, paragraph, CTA, and campaign metadata." + }, + { + "inputJson": "{\"copyElements\":{\"heading\":\"Summer Sale\",\"paragraphs\":[\"Save up to 50% on select items!\"],\"callToAction\":\"Shop Today\"},\"rootElementName\":\"Promo\",\"includeMetadata\":false}", + "description": "Create a simple XML document for a summer sale promotion without metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "copywriting.createJSON", + "description": "Generates a structured JSON object containing marketing copy elements based on given input parameters such as product name, target audience, key features, and tone of voice. It processes inputs to produce organized promotional text segments suitable for use in marketing campaigns, ads, or content strategies.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "A brief description of the intended audience for the marketing copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "An array of key features or benefits to highlight in the marketing copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style for the copy such as professional, casual, humorous, or inspirational.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "callToAction", + "type": "string", + "description": "A call to action phrase or sentence to encourage user engagement or purchase.", + "required": false, + "defaultValue": "Buy now!" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing segmented fields for headline, body copy, features list, and call to action, formatted for immediate use in marketing materials." + }, + "aiAgent": { + "useCase": "Use this tool when generating structured marketing copy tailored to a specific product and audience. It helps encapsulate key messaging elements in JSON format for easy integration with other systems or further processing.", + "limitations": "This tool does not generate long-form articles or SEO optimized content. It focuses on concise promotional copy snippets only.", + "examples": [ + "Create marketing JSON for a new smartphone aimed at young professionals, highlighting speed and camera features with a casual tone.", + "Generate promotional copy JSON for an organic skincare line targeting eco-conscious consumers with an inspirational style.", + "Produce marketing content JSON for a productivity app emphasizing ease of use and time-saving features using a professional tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "JSON", + "promotional-text", + "content-generation", + "product-description" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoSmart Water Bottle\",\"targetAudience\":\"environmentally conscious consumers\",\"keyFeatures\":[\"Keeps water cold for 24 hours\",\"Made from recycled materials\",\"Leak-proof design\"],\"tone\":\"inspirational\",\"callToAction\":\"Join the green revolution today!\"}", + "description": "Generate inspirational marketing copy JSON for an eco-friendly water bottle targeting green consumers." + }, + { + "inputJson": "{\"productName\":\"FastTrack Laptop\",\"targetAudience\":\"tech-savvy professionals\",\"keyFeatures\":[\"Lightning fast SSD\",\"Ultra HD display\",\"Long battery life\"],\"tone\":\"professional\",\"callToAction\":\"Upgrade your workflow now!\"}", + "description": "Create professional marketing JSON for a high-performance laptop aimed at professionals." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "copywriting.createCSV", + "description": "Generates a CSV string containing marketing copy entries based on provided input prompts, keywords, or themes. Accepts an array of texts or topics and produces a structured CSV where each row represents a distinct marketing message, suitable for bulk editing or content planning.", + "category": "copywriting", + "parameters": [ + { + "name": "entries", + "type": "array", + "description": "An array of objects each containing 'headline' and optionally 'description' strings to be converted into CSV rows.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include CSV column headers in the output. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character to separate CSV values (e.g., comma, semicolon). Default is comma (,).", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "string", + "description": "A CSV formatted string representing the marketing copy entries." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert generated or curated marketing copy ideas into a structured CSV format for workflows like bulk upload, editing in spreadsheets, or integration with marketing platforms.", + "limitations": "This tool only creates CSV formatted text and does not generate marketing copy content itself. It assumes input entries are pre-generated or curated and does not validate the marketing effectiveness of the copy.", + "examples": [ + "Create a CSV from a list of marketing headlines for email campaign.", + "Export product promotion titles and descriptions into CSV for team review.", + "Generate a CSV file from given marketing slogans with descriptions included." + ] + }, + "tags": [ + "copywriting", + "csv", + "marketing", + "content export", + "bulk processing" + ], + "examples": [ + { + "inputJson": "{\"entries\":[{\"headline\":\"Boost Your Sales Now!\",\"description\":\"Use our platform to increase conversions.\"},{\"headline\":\"Limited Time Offer\",\"description\":\"Grab the deal before it expires.\"}],\"includeHeaders\":true,\"delimiter\":\",\"}", + "description": "Create CSV including headers from a list of marketing headlines and descriptions." + }, + { + "inputJson": "{\"entries\":[{\"headline\":\"Eco-Friendly Products\"},{\"headline\":\"Sustainable Living Tips\"}],\"includeHeaders\":false,\"delimiter\":\";\"}", + "description": "Generate CSV without headers using semicolon as delimiter from headlines only." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "copywriting.createWorkflow", + "description": "This tool generates a step-by-step copywriting workflow tailored for marketing campaigns. It accepts input parameters defining the campaign goals, target audience, content type, and desired channels. It produces a detailed, practical workflow outlining phases such as research, drafting, reviews, and distribution to streamline content creation and maximize promotional effectiveness.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignGoal", + "type": "string", + "description": "The primary objective of the marketing campaign (e.g., brand awareness, lead generation).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience including demographics and interests.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of content to create, such as blog posts, social media posts, or email newsletters.", + "required": true, + "defaultValue": "" + }, + { + "name": "distributionChannels", + "type": "array", + "description": "List of channels where content will be published (e.g., Facebook, email, blog).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSEO", + "type": "boolean", + "description": "Whether to integrate SEO best practices in the workflow phases.", + "required": false, + "defaultValue": "false" + }, + { + "name": "workflowDetailLevel", + "type": "string", + "description": "Level of detail desired in the workflow: 'basic', 'intermediate', or 'detailed'.", + "required": false, + "defaultValue": "basic" + } + ], + "returns": { + "type": "object", + "description": "An object describing the copywriting workflow with ordered phases, detailed actions per phase, and tips for execution." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a structured copywriting process tailored to specific campaign goals, audience, and content types. It helps automate planning and ensures marketing content creation follows efficient, best-practice steps.", + "limitations": "It does not generate the actual copy content; rather, it outlines the process. It cannot customize workflows for highly specialized or niche industries without further input.", + "examples": [ + "Create a workflow for a social media campaign aimed at millennials to increase brand engagement with detailed steps.", + "Generate a basic copywriting workflow for email newsletters targeting small business owners with SEO considerations.", + "Provide an intermediate-level workflow for blog post creation focusing on lead generation distributed via company website." + ] + }, + "tags": [ + "copywriting", + "workflow", + "marketing", + "content creation", + "automation", + "campaign planning", + "SEO integration" + ], + "examples": [ + { + "inputJson": "{\"campaignGoal\":\"brand awareness\",\"targetAudience\":\"young adults ages 18-24 interested in fitness and wellness\",\"contentType\":\"social media posts\",\"distributionChannels\":[\"Instagram\",\"TikTok\"],\"includeSEO\":true,\"workflowDetailLevel\":\"detailed\"}", + "description": "A detailed social media copywriting workflow designed for a fitness brand targeting young adults on Instagram and TikTok with SEO best practices included." + }, + { + "inputJson": "{\"campaignGoal\":\"lead generation\",\"targetAudience\":\"small business owners\",\"contentType\":\"email newsletters\",\"distributionChannels\":[\"email\"],\"includeSEO\":false,\"workflowDetailLevel\":\"basic\"}", + "description": "A basic email newsletter copywriting workflow aimed at generating leads from small business owners without SEO integration." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "copywriting.createTable", + "description": "Generates a marketing or promotional content table based on specified headers and data points, organizing key product or service attributes into a structured, readable table format for use in copywriting contexts. Accepts headers and rows as inputs and outputs formatted table text.", + "category": "copywriting", + "parameters": [ + { + "name": "headers", + "type": "array", + "description": "An array of strings defining the column headers for the table. These represent key marketing attributes or categories.", + "required": true, + "defaultValue": "" + }, + { + "name": "rows", + "type": "array", + "description": "An array of arrays, each inner array representing a row of string values corresponding to the headers. These contain the marketing details or comparisons.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableFormat", + "type": "string", + "description": "The desired table format: 'markdown', 'html', or 'plain' for different output styles.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "If true, appends a brief summary paragraph below the table highlighting key selling points.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summaryTone", + "type": "string", + "description": "Tone or style for the optional summary text, e.g., 'professional', 'casual', or 'enthusiastic'. Used only if includeSummary is true.", + "required": false, + "defaultValue": "professional" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'tableText' which includes the generated table in the selected format as a string. If summary is included, it is appended as text below the table." + }, + "aiAgent": { + "useCase": "Use this tool when marketing content needs a clear, well-structured table summarizing product features, comparisons, or benefits. It helps generate formatted tables with consistent style to enhance promotional materials, sales sheets, or online listings, especially when input data is organized in key-value form.", + "limitations": "It does not generate the content values themselves; it requires fully provided header and row data. It cannot create graphical tables or images, only text-based tables in specified formats.", + "examples": [ + "Create a markdown table comparing three software plans with key features.", + "Generate an HTML table to showcase product specs for an e-commerce page.", + "Produce a plain text table listing benefits and drawbacks of a service including a casual summary paragraph." + ] + }, + "tags": [ + "copywriting", + "table", + "marketing", + "promotion", + "content-generation", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"headers\":[\"Plan\",\"Price\",\"Storage\",\"Support\"],\"rows\":[[\"Basic\",\"$5/mo\",\"10GB\",\"Email\"],[\"Pro\",\"$15/mo\",\"100GB\",\"Phone & Email\"],[\"Enterprise\",\"Custom\",\"1TB+\",\"24/7 Dedicated\"]],\"tableFormat\":\"markdown\",\"includeSummary\":true,\"summaryTone\":\"professional\"}", + "description": "Generate a markdown table comparing subscription plans with a professional summary." + }, + { + "inputJson": "{\"headers\":[\"Feature\",\"Standard\",\"Premium\"],\"rows\":[[\"Availability\",\"9am-5pm\",\"24/7\"],[\"Backup\",\"Weekly\",\"Daily\"],[\"Customizable\",\"No\",\"Yes\"]],\"tableFormat\":\"html\",\"includeSummary\":false}", + "description": "Create an HTML table showing feature differences between service tiers without summary." + }, + { + "inputJson": "{\"headers\":[\"Benefit\",\"Description\"],\"rows\":[[\"Fast Setup\",\"Get started in minutes\"],[\"Affordable\",\"Low monthly costs\"],[\"Reliable\",\"99.9% uptime guarantee\"]],\"tableFormat\":\"plain\",\"includeSummary\":true,\"summaryTone\":\"enthusiastic\"}", + "description": "Build a plain text table listing benefits with an enthusiastic summary." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "copywriting.createPullRequest", + "description": "Generates a well-structured, persuasive pull request description for code changes, given code context and objectives. Accepts inputs describing the code changes, purpose, and key points, and produces a polished PR message that concisely explains what the change does and why it matters.", + "category": "copywriting", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "The name of the branch for which the pull request is being created, to provide context.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeSummary", + "type": "string", + "description": "A brief summary of the changes introduced by this code update or feature.", + "required": true, + "defaultValue": "" + }, + { + "name": "changeDetails", + "type": "string", + "description": "Detailed explanation of what the code changes, including features, fixes, or improvements.", + "required": true, + "defaultValue": "" + }, + { + "name": "motivation", + "type": "string", + "description": "The core reason or motivation behind making these changes, e.g., bug fix, enhancement, refactor.", + "required": false, + "defaultValue": "" + }, + { + "name": "impact", + "type": "string", + "description": "Description of the potential impact or benefits this change will have on the project or users.", + "required": false, + "defaultValue": "" + }, + { + "name": "relatedIssues", + "type": "array", + "description": "List of related issue identifiers or references to link in the pull request description.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated pull request title and body text, ready to be used as the PR message." + }, + "aiAgent": { + "useCase": "Use this tool when creating pull requests that require clear and effective communication about the code changes. It helps summarize technical updates into professional and persuasive messages for reviewers.", + "limitations": "This tool cannot create or submit the pull request on the version control platform; it focuses solely on generating the textual description. It may not capture highly project-specific conventions without tailored prompts.", + "examples": [ + "Create a PR description for a feature branch adding user authentication with OAuth integration.", + "Generate a pull request message summarizing a bug fix for a memory leak issue and referencing the related ticket.", + "Produce a PR description for code refactoring to improve API response times without changing functionality." + ] + }, + "tags": [ + "copywriting", + "pull request", + "code collaboration", + "developer tools", + "automation" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"feature/oauth-login\",\"codeSummary\":\"Implemented OAuth user login.\",\"changeDetails\":\"Added OAuth2 authentication flow with Google and Facebook providers, including token handling and session management.\",\"motivation\":\"To simplify user login and increase security by using established OAuth providers.\",\"impact\":\"Improves user onboarding and reduces password management risks.\",\"relatedIssues\":[\"#123\",\"#124\"]}", + "description": "Create a PR message for implementing OAuth login." + }, + { + "inputJson": "{\"branchName\":\"bugfix/memory-leak\",\"codeSummary\":\"Fixed memory leak in cache module.\",\"changeDetails\":\"Refactored cache invalidation to properly release references, preventing memory bloat over time.\",\"motivation\":\"Resolve report of increasing memory consumption causing crashes.\",\"impact\":\"Enhances stability and performance under heavy load.\",\"relatedIssues\":[\"#200\"]}", + "description": "Generate a PR description for fixing a memory leak issue." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "copywriting.createPipeline", + "description": "Constructs a customizable sequence (pipeline) of content generation and editing steps tailored for marketing and promotional copywriting. Takes an array of task modules (e.g., idea generation, drafting, SEO optimization, headline creation) as input, processes them in order, and outputs the final polished copy text along with metadata about each step's output.", + "category": "copywriting", + "parameters": [ + { + "name": "tasks", + "type": "array", + "description": "An ordered list of copywriting task modules to include in the pipeline, e.g. 'generateIdea','draftContent','seoOptimize','createHeadline'. Each task will be executed sequentially.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for which the copy should be tailored, influencing the tone and style of the generated text.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy such as 'formal', 'friendly', 'urgent', etc., affecting language style at various pipeline steps.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "keywords", + "type": "array", + "description": "List of SEO or thematic keywords that should be incorporated into the copy when relevant, enhancing SEO optimization steps.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the final copy output in characters to constrain verbosity.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the final polished copy text and a breakdown of outputs from each pipeline step for review and auditing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build and run a series of marketing copywriting operations as a workflow, enabling complex tailored content generation with different stylistic and functional enhancements. Ideal when a consistent multi-step process is required rather than a single stand-alone generation.", + "limitations": "This tool cannot execute custom code tasks beyond predefined copywriting steps and is limited to sequential linear pipelines. It does not provide direct analytics or A/B testing capabilities within the pipeline.", + "examples": [ + "Create a pipeline with idea generation, draft writing, SEO keyword insertion, headline creation for a youthful audience.", + "Build a copywriting flow with a formal tone including content drafting and proofreading steps.", + "Generate a promotional email copy pipeline limited to 500 characters embedding provided keywords." + ] + }, + "tags": [ + "copywriting", + "pipeline", + "marketing", + "content-generation", + "seo", + "automation" + ], + "examples": [ + { + "inputJson": "{\"tasks\":[\"generateIdea\",\"draftContent\",\"seoOptimize\",\"createHeadline\"],\"targetAudience\":\"young adults interested in technology\",\"tone\":\"friendly\",\"keywords\":[\"innovative\",\"smart devices\"],\"maxLength\":800}", + "description": "Create a pipeline that generates ideas, drafts content, optimizes it with provided keywords, and creates a headline for young, tech-savvy adults." + }, + { + "inputJson": "{\"tasks\":[\"draftContent\",\"proofreadContent\"],\"tone\":\"formal\",\"maxLength\":1000}", + "description": "Build a two-step pipeline to draft and proofread formal tone copy limited to 1000 characters." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "copywriting.createIssue", + "description": "This tool generates a clear and concise issue description for software development or project management purposes. It accepts inputs such as issue title, problem summary, impact description, environment details, and reproduction steps, then composes a well-structured issue report suitable for use in code repositories or tracking systems.", + "category": "copywriting", + "parameters": [ + { + "name": "issueTitle", + "type": "string", + "description": "A brief, descriptive title for the issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "problemSummary", + "type": "string", + "description": "A concise summary of the problem experienced.", + "required": true, + "defaultValue": "" + }, + { + "name": "impactDescription", + "type": "string", + "description": "Details explaining the issue's impact on the system or users.", + "required": false, + "defaultValue": "" + }, + { + "name": "environmentDetails", + "type": "string", + "description": "Information about the environment where the issue occurs (e.g., OS, software version).", + "required": false, + "defaultValue": "" + }, + { + "name": "reproductionSteps", + "type": "array", + "description": "Step-by-step instructions to reproduce the issue.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted issue report with title and detailed description ready to be used in issue trackers." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create clear, well-structured issue reports for software bugs or feature requests based on fragmented user input. It ensures clarity and completeness, facilitating better understanding by developers and stakeholders.", + "limitations": "Cannot verify technical accuracy or automatically detect issues from code; relies on user-provided inputs for content generation.", + "examples": [ + "Create an issue for a bug where the app crashes on startup with steps to reproduce.", + "Generate a feature request issue describing desired functionality with its benefits." + ] + }, + "tags": [ + "copywriting", + "issue", + "software", + "bug report", + "feature request", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"issueTitle\":\"App crashes on startup\",\"problemSummary\":\"Application crashes immediately after launching.\",\"impactDescription\":\"Prevents users from accessing the app, causing loss of productivity.\",\"environmentDetails\":\"iOS 15.2, app version 1.3.5\",\"reproductionSteps\":[\"Open the app\",\"Observe crash within 2 seconds\"]}", + "description": "Create a bug issue report for an app crashing on startup with detailed reproduction steps." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "copywriting.createBranch", + "description": "Generates compelling and targeted promotional copy for marketing a new software branch or feature update. Accepts inputs describing the branch name, key features, target audience, and desired tone. Processes this data to produce a concise marketing text suitable for release notes, announcements, or campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "Name of the software branch or feature update to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of main features or improvements in the branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or user segment for this branch.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the promotional copy, e.g., professional, casual, enthusiastic.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated promotional text in characters.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated promotional copy text as a string under the property 'promotionalText'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create persuasive and engaging marketing or promotional copy specifically tailored to announce or describe a new software branch or feature update. It assists in quickly generating audience-appropriate copy highlighting key improvements and benefits without manual writing.", + "limitations": "Cannot generate technical documentation or detailed release notes; it focuses on marketing-oriented, concise promotional text rather than exhaustive technical details.", + "examples": [ + "Create an enthusiastic promotional blurb for a new mobile app version called 'Velocity v2.0' highlighting speed improvements and new UI.", + "Generate a professional marketing text announcing the 'DataSync Branch' aimed at enterprise users focusing on security enhancements.", + "Write a casual, succinct promotion for a 'Night mode feature branch' targeting young, tech-savvy users." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotional text", + "software branch", + "feature announcement", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"Velocity v2.0\",\"keyFeatures\":[\"50% faster load times\",\"Redesigned user interface\",\"Improved battery efficiency\"],\"targetAudience\":\"mobile app users\",\"tone\":\"enthusiastic\",\"maxLength\":250}", + "description": "Generate an enthusiastic marketing blurb for a new app version highlighting speed, UI, and battery improvements." + }, + { + "inputJson": "{\"branchName\":\"DataSync Branch\",\"keyFeatures\":[\"End-to-end encryption\",\"Enterprise-grade access control\",\"Optimized sync performance\"],\"targetAudience\":\"enterprise clients\",\"tone\":\"professional\"}", + "description": "Create a professional promotional text for an enterprise-focused software branch emphasizing security and performance." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "copywriting.createCommit", + "description": "Generates a concise, clear, and contextually relevant git commit message based on a provided description of code changes. Accepts a natural language summary or list of code modifications and produces a professional commit message following best practices.", + "category": "copywriting", + "parameters": [ + { + "name": "changeDescription", + "type": "string", + "description": "Natural language description of the code changes or update summary to base the commit message on.", + "required": true, + "defaultValue": "" + }, + { + "name": "type", + "type": "string", + "description": "Type of commit (e.g., feat, fix, docs, style, refactor, test, chore) to categorize the change.", + "required": false, + "defaultValue": "feat" + }, + { + "name": "scope", + "type": "string", + "description": "Optional scope or component affected by the commit (e.g., 'auth', 'UI').", + "required": false, + "defaultValue": "" + }, + { + "name": "breakingChange", + "type": "boolean", + "description": "Marks if the commit introduces a breaking change, adding 'BREAKING CHANGE:' in body.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted commit message string adhering to conventional commit standards." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate commit message generation for code changes described in natural language, ensuring messages are standardized, clear, and useful for version control history. Ideal for CI/CD pipelines, automated PRs, or assisting developers in writing better commit messages.", + "limitations": "Cannot verify the accuracy of commit messages against actual code diffs; quality depends on the input description clarity. Does not generate code diffs or analyze code quality.", + "examples": [ + "Generate a commit message for fixing a login bug described as 'Fix null pointer exception when user logs in without profile picture'", + "Create a commit message for adding user profile page with description 'Add new user profile page with editable details'", + "Generate a commit message marking a breaking change when removing deprecated API endpoints." + ] + }, + "tags": [ + "copywriting", + "commit", + "version control", + "automation", + "devops", + "conventional commits" + ], + "examples": [ + { + "inputJson": "{\"changeDescription\":\"Fix null pointer exception when user logs in without profile picture\",\"type\":\"fix\",\"scope\":\"auth\",\"breakingChange\":false}", + "description": "Generate a commit message for a bug fix in the authentication module." + }, + { + "inputJson": "{\"changeDescription\":\"Add new user profile page with editable details\",\"type\":\"feat\",\"scope\":\"UI\",\"breakingChange\":false}", + "description": "Generate a commit message for a new feature adding a user profile page." + }, + { + "inputJson": "{\"changeDescription\":\"Remove deprecated API endpoints causing conflicts\",\"type\":\"refactor\",\"scope\":\"api\",\"breakingChange\":true}", + "description": "Generate a commit message for a breaking change removing deprecated APIs." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "copywriting.createVariable", + "description": "Generates a well-crafted variable name and optionally a description text for use in code or templates based on a provided concept or value description. Accepts input describing the intended use or meaning of the variable, then creates clear, concise, code-appropriate variable names and explanation text to improve readability and maintainability.", + "category": "copywriting", + "parameters": [ + { + "name": "conceptDescription", + "type": "string", + "description": "Brief textual description of the concept or value that the variable should represent, e.g. 'number of items in cart' or 'user login status'.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "Data type of the variable, e.g. 'string', 'number', 'boolean' to guide name appropriateness.", + "required": false, + "defaultValue": "string" + }, + { + "name": "style", + "type": "string", + "description": "Naming style to apply, e.g. 'camelCase', 'snake_case', 'PascalCase' for variable name formatting.", + "required": false, + "defaultValue": "camelCase" + }, + { + "name": "includeDescription", + "type": "boolean", + "description": "Whether to output a descriptive comment or human-readable explanation alongside the variable name.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated variable name as a string and optionally a descriptive text explaining the variable purpose." + }, + "aiAgent": { + "useCase": "Use this tool when generating or suggesting meaningful and consistent variable names for marketing copywriting templates, scripts, or any code-related variables. Helps enforce best naming practices and clarity in code and copywriting projects.", + "limitations": "Does not generate actual variable values or code, only name suggestions and explanations. Not suited for very complex variable naming that requires domain-specific knowledge beyond provided description.", + "examples": [ + "Create a variable name for a user’s current subscription plan", + "Generate a boolean variable indicating product availability", + "Get a descriptive variable name for number of clicks on a promotion button" + ] + }, + "tags": [ + "copywriting", + "variableNaming", + "code", + "namingConvention", + "automation", + "codeQuality" + ], + "examples": [ + { + "inputJson": "{\"conceptDescription\":\"number of items in shopping cart\",\"variableType\":\"number\",\"style\":\"camelCase\",\"includeDescription\":true}", + "description": "Generate a camelCase variable name and description for 'number of items in shopping cart' as a number type." + }, + { + "inputJson": "{\"conceptDescription\":\"user login status\",\"variableType\":\"boolean\",\"style\":\"snake_case\",\"includeDescription\":false}", + "description": "Generate a snake_case variable name without description for a boolean variable representing user login status." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "copywriting.createPackage", + "description": "Generates a complete marketing copywriting package tailored for a product or service. Accepts inputs such as product details, target audience, tone, and key features, then produces multiple copy components including taglines, product descriptions, and social media posts designed for persuasive marketing.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "A detailed description of the product or service highlighting its main features and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The primary audience or customer segment that the copy should appeal to.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the marketing copy, e.g., enthusiastic, professional, casual, luxurious.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "An array of key product features or unique selling points to emphasize in the copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output copy, e.g., 'en' for English, 'es' for Spanish.", + "required": false, + "defaultValue": "en" + }, + { + "name": "socialPlatforms", + "type": "array", + "description": "List of social media platforms for which to generate specific posts, e.g., ['twitter','facebook'].", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing several marketing copy components such as tagline, productDescription, socialMediaPosts keyed by platform." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents tasked with supporting marketing teams or small businesses by generating a comprehensive set of promotional texts quickly from minimal product input, streamlining the content creation process across multiple channels.", + "limitations": "The tool cannot create visual assets, perform competitive analysis, or guarantee marketing effectiveness. It generates text based solely on provided inputs without real-time market data.", + "examples": [ + "Create a marketing copy package for a new fitness tracker aimed at health-conscious millennials with an enthusiastic tone.", + "Generate promotional texts for an eco-friendly detergent targeting environmentally aware consumers using a professional tone.", + "Produce social media post ideas for a luxury watch across Twitter and Instagram with a luxurious tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "content-creation", + "package", + "promotional-text", + "automation", + "social-media" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoClean Detergent\",\"productDescription\":\"A biodegradable, non-toxic detergent that cleans clothes effectively without harming the environment.\",\"targetAudience\":\"environmentally conscious families\",\"tone\":\"professional\",\"keyFeatures\":[\"biodegradable\",\"non-toxic\",\"high performance\"],\"language\":\"en\",\"socialPlatforms\":[\"facebook\",\"instagram\"]}", + "description": "Generate full marketing package for EcoClean targeting eco-conscious families with professional tone and social media posts for Facebook and Instagram." + }, + { + "inputJson": "{\"productName\":\"FitPro X1 Fitness Tracker\",\"productDescription\":\"A sleek fitness tracker with heart rate monitoring, GPS, and sleep tracking features.\",\"targetAudience\":\"millennials into fitness and tech\",\"tone\":\"enthusiastic\",\"keyFeatures\":[\"heart rate monitor\",\"GPS\",\"sleep tracking\"],\"language\":\"en\",\"socialPlatforms\":[\"twitter\"]}", + "description": "Create marketing copy for FitPro X1 fitness tracker targeting millennials, include enthusiastic tone and Twitter posts." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "copywriting.createEndpoint", + "description": "Generates a clear and persuasive API endpoint documentation snippet based on input details such as endpoint path, method, parameters, description, and response format. It transforms technical input into marketing-style copy suitable for product docs, developer portals, or promotional materials.", + "category": "copywriting", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path of the API endpoint (e.g., /users/{id}).", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method used by the endpoint (e.g., GET, POST).", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "A brief high-level summary of what the endpoint does, for promotional style text.", + "required": true, + "defaultValue": "" + }, + { + "name": "detailedDescription", + "type": "string", + "description": "A longer technical description of the endpoint's functionality and purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "parametersDescription", + "type": "array", + "description": "An array of objects describing each input parameter with fields: name (string), type (string), required (boolean), and description (string).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "responseDescription", + "type": "string", + "description": "Description of the typical response content and success criteria.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with a 'marketingCopy' string containing the generated endpoint description in clear, persuasive, marketing style." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw API technical details into friendly, engaging marketing copy or user-facing documentation for an API endpoint. It is ideal for developer portals, product releases, or marketing materials to explain technical endpoints in an accessible way.", + "limitations": "This tool does not generate actual code or validate API schema correctness. It focuses solely on clear marketing-style textual descriptions and does not cover complex technical specifications or security details.", + "examples": [ + "Generate a user-friendly description for a GET /users/{id} API endpoint that retrieves user details.", + "Create a marketing snippet describing the POST /orders endpoint for creating new orders with parameters and response info." + ] + }, + "tags": [ + "copywriting", + "documentation", + "api", + "endpoint", + "marketing", + "developer-portal" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/users/{id}\",\"httpMethod\":\"GET\",\"summary\":\"Retrieve user details\",\"detailedDescription\":\"Fetches detailed information for a user specified by the user ID.\",\"parametersDescription\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true,\"description\":\"Unique identifier for the user.\"}],\"responseDescription\":\"Returns user profile including name, email, and account status.\"}", + "description": "Marketing copy generation for GET /users/{id} endpoint." + }, + { + "inputJson": "{\"endpointPath\":\"/orders\",\"httpMethod\":\"POST\",\"summary\":\"Create a new order\",\"detailedDescription\":\"Allows clients to create new orders by submitting product and quantity information.\",\"parametersDescription\":[{\"name\":\"productId\",\"type\":\"string\",\"required\":true,\"description\":\"ID of the product to order.\"},{\"name\":\"quantity\",\"type\":\"number\",\"required\":true,\"description\":\"Number of units to order.\"}],\"responseDescription\":\"Returns the order confirmation with order ID and estimated delivery date.\"}", + "description": "Marketing copy for POST /orders endpoint to create new orders." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "copywriting.createDependency", + "description": "This tool generates persuasive and clear dependency descriptions for software projects or libraries based on input details such as dependency name, version constraints, and target audience. It creates marketing-style text that explains the purpose and benefits of the dependency to encourage adoption.", + "category": "copywriting", + "parameters": [ + { + "name": "dependencyName", + "type": "string", + "description": "The name of the software dependency to describe.", + "required": true, + "defaultValue": "" + }, + { + "name": "versionRange", + "type": "string", + "description": "The version constraints or specific versions for the dependency (e.g., ^2.1.0, >=1.0.0).", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the description, such as developers, technical leads, or product managers.", + "required": false, + "defaultValue": "developers" + }, + { + "name": "highlightFeatures", + "type": "array", + "description": "An array of key features or benefits of the dependency to emphasize in the description.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the description, such as professional, friendly, or persuasive.", + "required": false, + "defaultValue": "professional" + } + ], + "returns": { + "type": "object", + "description": "An object containing a generated description text presenting the dependency in a compelling and clear manner." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create marketing or explanatory text describing a software dependency for documentation, project READMEs, or promotional material to clearly communicate its purpose and value to potential users.", + "limitations": "It cannot generate actual technical dependency metadata or handle complex technical validations. It focuses on descriptive marketing style text, not on dependency resolution or compatibility analysis.", + "examples": [ + "Generate a dependency description for 'axios' library version '^0.21.1' targeting frontend developers highlighting its ease of use and reliability, in a friendly tone.", + "Create a professional description for a logging library 'winston' with no specified version, aimed at backend engineers emphasizing flexibility and support for transports.", + "Produce a persuasive dependency description for 'lodash', specifying version '>=4.17.0', highlighting utility and performance benefits for general developers." + ] + }, + "tags": [ + "copywriting", + "dependency", + "marketing", + "description", + "software", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"dependencyName\":\"express\",\"versionRange\":\"^4.17.1\",\"targetAudience\":\"backend developers\",\"highlightFeatures\":[\"minimalist web framework\",\"robust routing\",\"middleware support\"],\"tone\":\"professional\"}", + "description": "Generate a professional marketing description for the Express framework dependency targeting backend developers." + }, + { + "inputJson": "{\"dependencyName\":\"react\",\"versionRange\":\"^18.0.0\",\"targetAudience\":\"frontend developers\",\"highlightFeatures\":[\"component-based UI\",\"virtual DOM\",\"strong community support\"],\"tone\":\"friendly\"}", + "description": "Create a friendly description highlighting React features for frontend developers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "copywriting.createAPI", + "description": "Generates well-structured, comprehensive API documentation and promotional content based on provided API details such as endpoints, methods, parameters, and usage examples. Takes structured input describing an API and outputs engaging marketing copy alongside technical summaries to assist developers and marketers in promoting the API.", + "category": "copywriting", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The official name of the API for which content is being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiDescription", + "type": "string", + "description": "A brief technical summary describing the API's purpose and capabilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "An array of objects describing each API endpoint including path, method, parameters, and example usage.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience for the copywriting such as developers, product managers, or marketers.", + "required": false, + "defaultValue": "developers" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone/style of the promotional text, e.g., formal, casual, persuasive.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include usage examples in the generated copywriting content.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing two main fields: 'marketingCopy' with engaging promotional text and 'technicalSummary' with a clear, structured API overview." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create clear, appealing, and structured promotional and documentation content for an API based on its technical specification. It's ideal to accelerate content creation for API platforms, developer portals, and marketing materials that require coherent integration of technical details and marketing appeal.", + "limitations": "This tool does not generate API implementation code or detailed technical tutorials. It relies on accurate and complete input data to produce quality output and may not fully capture complex API behaviors if poorly described.", + "examples": [ + "Create promotional content for a payment gateway API focusing on fast transactions and secure endpoints.", + "Generate developer-friendly marketing copy for a social media API with emphasis on easy integration and rich features.", + "Produce a professional summary and marketing highlights for a weather data API targeting mobile app developers." + ] + }, + "tags": [ + "copywriting", + "API", + "marketing", + "documentation", + "promotional", + "content-generation", + "developer-relations" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"WeatherPro API\",\"apiDescription\":\"Provides real-time and forecast weather data globally.\",\"endpoints\":[{\"path\":\"/current\",\"method\":\"GET\",\"parameters\":[{\"name\":\"location\",\"type\":\"string\",\"required\":true}],\"exampleUsage\":\"GET /current?location=London\"},{\"path\":\"/forecast\",\"method\":\"GET\",\"parameters\":[{\"name\":\"location\",\"type\":\"string\",\"required\":true},{\"name\":\"days\",\"type\":\"number\",\"required\":false}],\"exampleUsage\":\"GET /forecast?location=London&days=5\"}],\"targetAudience\":\"mobile developers\",\"tone\":\"casual\",\"includeExamples\":true}", + "description": "Generate engaging promotional and technical content for a global weather data API aimed at mobile developers, with a casual tone and usage examples included." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "copywriting.createMigration", + "description": "Generates clear, concise copywriting text explaining the purpose, benefits, and steps of a software database migration process. Accepts migration context details as input, then produces professional marketing-style text to communicate the migration plan effectively to stakeholders or customers.", + "category": "copywriting", + "parameters": [ + { + "name": "migrationName", + "type": "string", + "description": "The name or title of the migration project.", + "required": true, + "defaultValue": "" + }, + { + "name": "migrationGoal", + "type": "string", + "description": "A brief description of the goal or purpose of the migration.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of systems, databases, or platforms affected by the migration.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "keyBenefits", + "type": "array", + "description": "Key advantages or improvements expected from the migration.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "migrationSteps", + "type": "array", + "description": "Outline of the main steps involved in the migration process.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the copy (e.g., technical team, executives, customers).", + "required": false, + "defaultValue": "general audience" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the copywriting output (e.g., professional, casual, persuasive).", + "required": false, + "defaultValue": "professional" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated copywriting text describing the migration plan in a clear, engaging manner." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create marketing or internal communication text that explains a software or database migration clearly and persuasively, highlighting goals, benefits, and processes to various stakeholders. Ideal for generating content for newsletters, announcements, or documentation summaries.", + "limitations": "This tool does not perform technical migration steps or validate migration plans. It only generates descriptive copywriting text based on provided inputs.", + "examples": [ + "Create copy to announce a database migration improving system reliability to customers.", + "Generate internal communication text describing the migration steps to IT staff.", + "Write a persuasive description of the benefits of migrating to a new data platform for executive briefing." + ] + }, + "tags": [ + "copywriting", + "migration", + "software", + "marketing", + "communication", + "database" + ], + "examples": [ + { + "inputJson": "{\"migrationName\":\"Q3 Database Upgrade\",\"migrationGoal\":\"Upgrade database infrastructure for improved performance and scalability.\",\"affectedSystems\":[\"CustomerDB\",\"OrdersDB\"],\"keyBenefits\":[\"Faster queries\",\"Increased uptime\",\"Better scalability\"],\"migrationSteps\":[\"Backup current databases\",\"Deploy new database servers\",\"Migrate data\",\"Run integrity checks\"],\"targetAudience\":\"customers\",\"tone\":\"professional\"}", + "description": "Generate professional copy for customers announcing an upcoming database upgrade with benefits and steps." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Migration", + "context": null + } + }, + { + "name": "copywriting.createSchema", + "description": "Generates a structured JSON Schema for a marketing or promotional copywriting project based on input requirements. Accepts details about the content type, target audience, tone, and key messaging elements, then outputs a detailed, valid JSON Schema defining the expected data structure and content constraints for use in automated or AI-assisted copywriting workflows.", + "category": "copywriting", + "parameters": [ + { + "name": "contentType", + "type": "string", + "description": "Type of marketing content (e.g., 'email', 'ad', 'landing page') to define schema for.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience to customize the schema to relevant user demographics and preferences.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy (e.g., 'professional', 'friendly', 'urgent') to influence content attribute constraints in schema.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyMessages", + "type": "array", + "description": "List of main messages or product features that copy must include, to shape the content requirements in the schema.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether the schema should enforce presence of a call-to-action element in the content.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JSON Schema defining the expected structure and content constraints for the copywriting project." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate or validate marketing copy content to ensure output matches a defined structure aligned with project requirements. It helps define and enforce input data and content rules before copy generation, improving quality and adherence to goals.", + "limitations": "This tool generates structural schemas for copywriting data but does not generate actual marketing copy text. It also cannot fully capture highly subjective or deeply creative nuances that require human interpretation.", + "examples": [ + "Create a schema for an email marketing campaign targeting young adults with a friendly tone including key product benefits and a call to action.", + "Define a schema for a landing page advertisement, professional tone, focus on security features with mandatory call to action.", + "Generate a schema for a social media ad, casual tone, highlight three main features without a required call to action." + ] + }, + "tags": [ + "copywriting", + "schema", + "marketing", + "content-structure", + "validation", + "json-schema" + ], + "examples": [ + { + "inputJson": "{\"contentType\":\"email\",\"targetAudience\":\"young adults\",\"tone\":\"friendly\",\"keyMessages\":[\"fast delivery\",\"eco-friendly packaging\"],\"includeCallToAction\":true}", + "description": "Generate a schema for a friendly-toned email marketing piece targeting young adults, emphasizing fast delivery and eco-friendly packaging with a call to action." + }, + { + "inputJson": "{\"contentType\":\"landing page\",\"tone\":\"professional\",\"keyMessages\":[\"data security\",\"24/7 support\"],\"includeCallToAction\":true}", + "description": "Create a schema for a professional landing page ad that highlights data security and 24/7 support and requires a call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "copywriting.createQuery", + "description": "Generates optimized code query statements or search queries based on provided intent and technical context, aiding in crafting precise, effective queries for databases, APIs, or code search tools.", + "category": "copywriting", + "parameters": [ + { + "name": "intent", + "type": "string", + "description": "The goal or purpose of the query to be generated, describing what information to retrieve or filter.", + "required": true, + "defaultValue": "" + }, + { + "name": "technicalContext", + "type": "string", + "description": "Background context including programming language, database type, API type, or environment relevant to constructing the query.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Preferred format of the generated query, e.g., SQL, GraphQL, REST API call, or generic search syntax.", + "required": false, + "defaultValue": "SQL" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated query to enhance readability and maintainability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "complexityLevel", + "type": "string", + "description": "Expected complexity of the query: simple, intermediate, or advanced, affecting structure and optimization techniques used.", + "required": false, + "defaultValue": "intermediate" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string and optional explanations or advantages for its usage." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or suggest precise and optimized code or search queries based on a clear user intent and given technical context, to automate or assist with database querying, API search, or codebase exploration.", + "limitations": "This tool cannot validate executions of generated queries or connect to live systems for testing; it may not perfectly interpret ambiguous or highly domain-specific intents without sufficient context.", + "examples": [ + "Generate an SQL query to retrieve all users registered after 2022-01-01.", + "Create a GraphQL query to fetch a list of products with price and availability.", + "Generate a simple search query to find 'error handling' examples in JavaScript code repositories." + ] + }, + "tags": [ + "copywriting", + "query generation", + "code", + "database", + "API", + "search" + ], + "examples": [ + { + "inputJson": "{\"intent\":\"Find all customers from New York who made purchases over $1000 in the last year\",\"technicalContext\":\"SQL, MySQL database\",\"outputFormat\":\"SQL\",\"includeComments\":true,\"complexityLevel\":\"intermediate\"}", + "description": "Generate an SQL query to find customers in New York with large purchases in the last year including comments" + }, + { + "inputJson": "{\"intent\":\"Fetch list of books with author and publication year\",\"technicalContext\":\"GraphQL\",\"outputFormat\":\"GraphQL\",\"includeComments\":false,\"complexityLevel\":\"simple\"}", + "description": "Create a basic GraphQL query for books with author and year" + }, + { + "inputJson": "{\"intent\":\"Search codebase for functions related to login authentication\",\"technicalContext\":\"JavaScript code repository\",\"outputFormat\":\"generic\",\"includeComments\":false,\"complexityLevel\":\"intermediate\"}", + "description": "Generate a search query to find login-related functions in JS repositories" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "copywriting.createTest", + "description": "Generates realistic, well-structured software test case code snippets based on user input describing the functionality to be tested, preferred programming language, and test framework. Accepts textual test descriptions and outputs executable test code for use in development environments.", + "category": "copywriting", + "parameters": [ + { + "name": "testDescription", + "type": "string", + "description": "A detailed description of the functionality or behavior to be tested in plain English.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language in which the test code should be generated (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The testing framework to use when generating the test code (e.g., Jest, Mocha, PyTest, JUnit).", + "required": false, + "defaultValue": "\"Jest\"" + }, + { + "name": "testType", + "type": "string", + "description": "Type of test to generate, such as unit, integration, or functional test.", + "required": false, + "defaultValue": "\"unit\"" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated test code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string, along with metadata specifying language and framework." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly produce sample or starter test case code based on a textual description of desired test behavior, supporting multiple languages and frameworks. It helps automate initial test creation for developers or teams adopting automated testing practices.", + "limitations": "The tool cannot guarantee fully syntactically correct or executable tests for complex scenarios or unknown frameworks. It does not execute tests or verify their correctness. It best serves simple to moderately complex test cases.", + "examples": [ + "Generate a Jest unit test in JavaScript for validating email input format.", + "Create a PyTest functional test in Python to check user login behavior.", + "Produce a JUnit integration test in Java that verifies database record insertion." + ] + }, + "tags": [ + "copywriting", + "testCodeGeneration", + "softwareTesting", + "automation", + "unitTest", + "integrationTest", + "functionalTest" + ], + "examples": [ + { + "inputJson": "{\"testDescription\":\"Verify that the add function returns the sum of two numbers.\",\"programmingLanguage\":\"JavaScript\",\"testFramework\":\"Jest\",\"testType\":\"unit\",\"includeComments\":true}", + "description": "Generate a Jest unit test for a simple add function in JavaScript." + }, + { + "inputJson": "{\"testDescription\":\"Check that the user authentication fails with wrong password.\",\"programmingLanguage\":\"Python\",\"testFramework\":\"PyTest\",\"testType\":\"functional\",\"includeComments\":false}", + "description": "Create a PyTest functional test for authentication failure scenario." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "copywriting.createCode", + "description": "Generates code snippets or templates tailored for marketing campaigns, promotional websites, or advertising tools based on user-specified programming languages, frameworks, and marketing objectives. Accepts inputs such as target language, desired code functionality, and style preferences to output ready-to-use code suitable for copywriting tech deployments.", + "category": "copywriting", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated code snippet, e.g., JavaScript, Python, HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Optional framework or library to use, e.g., React, Django, Vue, or can be empty for plain code.", + "required": false, + "defaultValue": "" + }, + { + "name": "functionalityDescription", + "type": "string", + "description": "A textual description of the marketing or promotional feature to implement, e.g., 'dynamic promotional banner showing discounts'.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Optional style preferences such as 'modular', 'functional', or 'class-based' to influence code structure.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Flag to include explanatory comments in the generated code for better understanding and maintainability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string, the programming language used, and optional metadata such as estimated complexity or dependencies." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate code snippets or reusable templates that implement marketing-focused features, such as promotional widgets, dynamic text content, or campaign integration code, tailored to specific languages and frameworks. It helps automate coding tasks for marketing technology development.", + "limitations": "This tool generates basic to moderately complex code snippets; it does not create full applications or highly complex systems. It cannot guarantee fully bug-free code or perfect integration in all environments and requires developer review and customization.", + "examples": [ + "Create a React component that displays a flashing sale banner.", + "Generate Python code to send marketing emails with personalized discount offers.", + "Produce HTML and CSS code for a responsive promotional landing page section." + ] + }, + "tags": [ + "copywriting", + "code generation", + "marketing", + "promotional code", + "automation", + "templates", + "marketing technology" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"framework\":\"React\",\"functionalityDescription\":\"dynamic promotional banner showing discount countdown\",\"codeStyle\":\"functional\",\"includeComments\":true}", + "description": "Generate a React functional component in JavaScript for a dynamic promotional banner with a discount countdown timer." + }, + { + "inputJson": "{\"programmingLanguage\":\"Python\",\"framework\":\"\",\"functionalityDescription\":\"send personalized marketing email with discount code\",\"codeStyle\":\"\",\"includeComments\":false}", + "description": "Create Python code that sends personalized marketing emails including individual discount codes, without extra comments." + }, + { + "inputJson": "{\"programmingLanguage\":\"HTML\",\"framework\":\"\",\"functionalityDescription\":\"responsive landing page section for upcoming sale\",\"codeStyle\":\"\",\"includeComments\":true}", + "description": "Produce HTML and CSS code for a responsive landing page section promoting an upcoming sale, with explanatory comments." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "copywriting.createModule", + "description": "Generates a complete marketing copywriting module for software projects, including tagline, feature highlights, value propositions, and call-to-action text. Accepts project details, target audience, tone, and key features; outputs a structured module ready for integration into promotional materials or websites.", + "category": "copywriting", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the software project or product to create copywriting for.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or market segment for the module.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key features or benefits of the software to highlight in the copywriting module.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the write-up, e.g., professional, casual, witty, inspirational.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "moduleLength", + "type": "number", + "description": "Approximate length of the module in number of sentences or paragraphs.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a strong call-to-action section in the module.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured object containing the tagline, feature highlights, value proposition, and call-to-action text as strings." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate coherent, persuasive marketing copywriting modules for software products based on specific input parameters such as project details and audience characteristics. Ideal for automating content creation for websites, landing pages, or promotional campaigns.", + "limitations": "Cannot verify factual accuracy of provided product features; requires accurate input data. Output style may require human review to ensure brand voice consistency.", + "examples": [ + "Create a copywriting module for a productivity app targeting remote workers, highlighting real-time collaboration and offline mode.", + "Generate a marketing module with a casual tone for a gaming platform focusing on community features and exclusive content.", + "Produce a concise professional copywriting module for a cybersecurity tool emphasizing reliability and 24/7 support." + ] + }, + "tags": [ + "copywriting", + "marketing", + "module", + "software", + "promotional", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"FocusFlow\",\"targetAudience\":\"remote workers and freelancers\",\"keyFeatures\":[\"real-time collaboration\",\"offline mode\",\"task prioritization\"],\"tone\":\"professional\",\"moduleLength\":4,\"includeCallToAction\":true}", + "description": "Generate a professional marketing module for a productivity app targeting remote workers" + }, + { + "inputJson": "{\"projectName\":\"GameCircle\",\"targetAudience\":\"casual and hardcore gamers\",\"keyFeatures\":[\"community features\",\"exclusive content\",\"in-game events\"],\"tone\":\"casual\",\"moduleLength\":5,\"includeCallToAction\":true}", + "description": "Create a casual tone copywriting module for a gaming platform" + }, + { + "inputJson": "{\"projectName\":\"SecureSafe\",\"targetAudience\":\"small and medium businesses\",\"keyFeatures\":[\"reliable endpoint protection\",\"24/7 support\",\"advanced threat detection\"],\"tone\":\"professional\",\"moduleLength\":3,\"includeCallToAction\":false}", + "description": "Produce a concise and professional marketing module for a cybersecurity tool without call to action" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "copywriting.createSpec", + "description": "Generates a detailed specification document for a given product, feature, or service. Accepts inputs such as the domain context, target audience, key requirements, and goals. Processes these inputs to create a structured, clear, and persuasive spec document suitable for marketing and planning purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the specification document to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "domain", + "type": "string", + "description": "The domain or industry context of the product or feature (e.g., SaaS, ecommerce, fintech).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the primary audience for the spec (e.g., developers, marketing teams, customers).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key features or components to highlight within the spec.", + "required": true, + "defaultValue": "" + }, + { + "name": "goals", + "type": "string", + "description": "The main goals or objectives that the spec aims to achieve or support.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone for the spec document (e.g., formal, persuasive, technical).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Approximate desired length of the spec document in words.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing a structured spec document in textual form with sections for overview, features, goals, and conclusion." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to produce a marketing or project specification document based on brief input parameters. It helps generate clear, coherent, and targeted spec docs suitable for internal or external communication without manual drafting.", + "limitations": "The tool cannot generate highly technical specs requiring deep domain expertise or include proprietary data not provided in inputs. It also does not create visual diagrams or editable formats beyond text.", + "examples": [ + "Create a product spec for a new mobile app targeting young adults in ecommerce.", + "Generate a feature specification document for an AI-powered customer support chatbot.", + "Write a marketing spec doc for launching a fintech service to small businesses." + ] + }, + "tags": [ + "copywriting", + "specification", + "marketing", + "document", + "product", + "feature" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Mobile App Feature Spec\",\"domain\":\"ecommerce\",\"targetAudience\":\"development and marketing teams\",\"keyFeatures\":[\"user login\",\"product search\",\"shopping cart\",\"payment gateway\"],\"goals\":\"Streamline user purchase flow and improve conversion rate.\",\"tone\":\"persuasive\",\"lengthLimit\":600}", + "description": "Create a persuasive spec document for an ecommerce mobile app focusing on key user features and business goals." + }, + { + "inputJson": "{\"title\":\"AI Chatbot Feature Specification\",\"domain\":\"customer service\",\"targetAudience\":\"technical leads and project managers\",\"keyFeatures\":[\"natural language understanding\",\"multi-language support\",\"ticket generation\",\"analytics dashboard\"],\"goals\":\"Enhance automated support capabilities and reduce human agent load.\",\"tone\":\"formal\",\"lengthLimit\":500}", + "description": "Generate a formal, structured spec document for an AI chatbot project highlighting features and objectives." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "copywriting.createReadme", + "description": "Generates a professional README.md document for software projects based on project details provided. Accepts input such as project name, description, installation instructions, usage examples, license, and contact info. Processes these inputs using structured templates to output a formatted markdown README suitable for GitHub or other repositories.", + "category": "copywriting", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project to be included as the main title of the README.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A concise description summarizing the project's purpose and functionality.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step installation instructions or commands for users to set up the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageInformation", + "type": "string", + "description": "Examples and explanations of how to use the project once installed or configured.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "The type of software license governing the project (e.g., MIT, GPL, Apache 2.0).", + "required": false, + "defaultValue": "" + }, + { + "name": "contributingGuidelines", + "type": "string", + "description": "Instructions detailing how other developers can contribute to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInformation", + "type": "string", + "description": "Contact details such as email or website for users or contributors to reach the maintainer.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a markdown formatted string under the 'readmeMarkdown' property." + }, + "aiAgent": { + "useCase": "Use this tool when a README file is needed for a new or existing software project to provide clear, standardized documentation for users and contributors. Ideal for automatic documentation generation in project scaffolding, continuous integration pipelines, or project onboarding assistants.", + "limitations": "This tool generates generic README templates based on input text and cannot produce project-specific technical diagrams or highly customized documentation. The quality depends heavily on the clarity and completeness of input information provided.", + "examples": [ + "Generate a README for a Python library named 'DataUtils' that helps with data processing.", + "Create a README for a web app project with installation and usage instructions and MIT license.", + "Produce README markdown for an open-source CLI tool including contribution guidelines and contact info." + ] + }, + "tags": [ + "copywriting", + "documentation", + "readme", + "markdown", + "software", + "automation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"DataUtils\",\"projectDescription\":\"A Python library for simple data processing and manipulation tasks.\",\"installationInstructions\":\"Run 'pip install datautils' to install the package.\",\"usageInformation\":\"Import DataUtils and use its functions to clean and transform datasets.\",\"license\":\"MIT\",\"contributingGuidelines\":\"Please fork the repo and create pull requests.\",\"contactInformation\":\"email@datacompany.com\"}", + "description": "Generate a README for a Python data processing library with full details including contributing and contact info." + }, + { + "inputJson": "{\"projectName\":\"QuickCLI\",\"projectDescription\":\"Command-line interface tool to automate daily tasks.\",\"installationInstructions\":\"Download the binary from releases and add to PATH.\",\"usageInformation\":\"Run 'quickcli --help' to see commands.\",\"license\":\"Apache 2.0\",\"contributingGuidelines\":\"Open issues or create pull requests.\",\"contactInformation\":\"maintainer@quickcli.io\"}", + "description": "Create README for a CLI tool project including installation, usage, license, and contribution instructions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "copywriting.createBrief", + "description": "Generates a concise marketing brief based on provided product details, target audience, tone, and campaign objectives. Accepts structured inputs describing the product and desired messaging tone, processes these to create a clear, focused brief for content creators or marketing teams. Outputs a formatted brief highlighting key messaging points and campaign goals.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to be promoted", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "Detailed description highlighting product features and benefits", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience including demographics and psychographics", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignGoals", + "type": "string", + "description": "Primary objectives of the marketing campaign like brand awareness or sales increase", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the brief, e.g., professional, casual, enthusiastic", + "required": false, + "defaultValue": "professional" + }, + { + "name": "keyMessages", + "type": "array", + "description": "List of crucial messages or selling points to emphasize in the brief", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the output brief in number of words", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the marketing brief text, structured to highlight product overview, key messages, target audience insights, and campaign objectives." + }, + "aiAgent": { + "useCase": "Use this tool to create structured marketing briefs when given product details and campaign goals, to guide content creators, marketing teams, or strategists in aligning messaging consistently. Ideal for agencies or businesses needing clear campaign documents quickly.", + "limitations": "It cannot generate highly detailed marketing strategies or copy variations; it produces concise briefs only. It depends on the quality and completeness of input data; vague inputs produce general briefs.", + "examples": [ + "Create a marketing brief for a new eco-friendly water bottle targeting young adults, with a casual tone.", + "Generate a professional brief for a SaaS productivity tool aimed at small business owners emphasizing increased efficiency.", + "Produce a concise brief for a luxury skincare line aimed at middle-aged women focusing on anti-aging benefits." + ] + }, + "tags": [ + "copywriting", + "marketing", + "brief", + "content creation", + "campaign planning", + "branding" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoSip Water Bottle\",\"productDescription\":\"A durable, BPA-free water bottle made from recycled materials that keeps drinks cold for 24 hours using advanced insulation.\",\"targetAudience\":\"Environmentally conscious young adults aged 18-30 who value sustainability and health.\",\"campaignGoals\":\"Increase brand awareness and drive pre-orders through social media channels.\",\"tone\":\"casual\",\"keyMessages\":[\"Sustainable and eco-friendly\",\"Keeps beverages cold all day\",\"Stylish and portable\"],\"length\":250}", + "description": "Brief for an eco-friendly reusable water bottle aimed at young adults, in a casual tone." + }, + { + "inputJson": "{\"productName\":\"TaskMaster Pro\",\"productDescription\":\"A cloud-based productivity software that integrates task management, calendar, and collaboration tools for small businesses.\",\"targetAudience\":\"Small business owners and their teams looking for efficient project management.\",\"campaignGoals\":\"Position as the go-to productivity app to improve team work and task tracking.\",\"tone\":\"professional\",\"keyMessages\":[\"All-in-one solution\",\"Improves team collaboration\",\"Easy to use interface\"],\"length\":300}", + "description": "Professional marketing brief for a productivity SaaS product targeting small businesses." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Brief", + "context": null + } + }, + { + "name": "copywriting.createFunction", + "description": "Generates a marketing-oriented function description and promotional text based on input function name, purpose, and target audience. Accepts a function name, a brief description of its role, and the intended user demographic, then outputs a compelling function summary suitable for marketing materials or documentation highlights.", + "category": "copywriting", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The exact name of the function to generate copy for.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionPurpose", + "type": "string", + "description": "A brief, clear explanation of what the function does or aims to achieve.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The primary audience or user base that will use or benefit from the function (e.g., developers, marketers).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the promotional text such as professional, casual, enthusiastic, or technical.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include usage examples in the generated copy.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated marketing copy including a function summary and optional usage examples" + }, + "aiAgent": { + "useCase": "Use this tool when you need to create compelling, clear, and targeted promotional or descriptive copy for technical functions, particularly when preparing documentation or marketing materials that need to engage specific audiences effectively.", + "limitations": "This tool cannot generate actual working code or detailed technical specifications; it focuses solely on creating engaging descriptive text around a function.", + "examples": [ + "Generate marketing copy for a data processing function targeting software developers.", + "Create a promotional summary for a new AI prediction function aimed at business analysts with an enthusiastic tone.", + "Write a clear and professional description with an example usage for a sorting algorithm function." + ] + }, + "tags": [ + "copywriting", + "marketing", + "function", + "documentation", + "promotional", + "technical writing" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"calculateRevenue\",\"functionPurpose\":\"computes total revenue from sales data\",\"targetAudience\":\"financial analysts\",\"tone\":\"professional\",\"includeExamples\":true}", + "description": "Generate professional marketing text describing a financial calculation function with usage examples." + }, + { + "inputJson": "{\"functionName\":\"sendEmailNotification\",\"functionPurpose\":\"sends automated email alerts to users\",\"targetAudience\":\"product managers\",\"tone\":\"casual\",\"includeExamples\":false}", + "description": "Create casual promotional copy for a user notification function targeting product managers without examples." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "copywriting.createTemplate", + "description": "Creates a customizable marketing copywriting template based on specified campaign type, target audience, and tone. Accepts inputs defining template structure including headline, body, call-to-action sections and generates a reusable document template for consistent promotional content.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "The type of marketing campaign (e.g., Email, Social Media, Print) for which the template is designed.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience or customer segment.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the copy (e.g., Friendly, Professional, Urgent).", + "required": false, + "defaultValue": "Professional" + }, + { + "name": "includeSections", + "type": "array", + "description": "List of sections to include such as ['headline','body','callToAction','footer'].", + "required": false, + "defaultValue": "[\"headline\",\"body\",\"callToAction\"]" + }, + { + "name": "language", + "type": "string", + "description": "Language of the template to produce (e.g., English, Spanish).", + "required": false, + "defaultValue": "English" + } + ], + "returns": { + "type": "object", + "description": "An object containing the structured template with placeholders for copywriting sections, suitable for filling in campaign-specific content." + }, + "aiAgent": { + "useCase": "Use this tool when a consistent and reusable marketing copywriting structure is needed for campaigns targeting specific audiences with customized tone and sections. Ideal for automating template generation across channels to maintain brand voice and improve efficiency.", + "limitations": "Does not generate full copy content, only creates template structure with placeholders. Tone and style are limited to general presets and may not capture nuanced brand voice.", + "examples": [ + "Create a social media advertising copy template targeting young adults with a casual tone including headline, body, and call to action.", + "Generate an email marketing template for healthcare professionals with a formal tone including headline, body, call to action, and footer sections.", + "Produce a print ad template for luxury products targeting high-income customers with an elegant tone." + ] + }, + "tags": [ + "copywriting", + "template", + "marketing", + "content creation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"Email\",\"targetAudience\":\"Tech professionals aged 25-40\",\"tone\":\"Friendly\",\"includeSections\":[\"headline\",\"body\",\"callToAction\"],\"language\":\"English\"}", + "description": "Create an email marketing template for tech professionals with friendly tone" + }, + { + "inputJson": "{\"campaignType\":\"Social Media\",\"targetAudience\":\"Fitness enthusiasts\",\"tone\":\"Motivational\",\"includeSections\":[\"headline\",\"body\",\"callToAction\",\"footer\"],\"language\":\"English\"}", + "description": "Generate a social media copy template with motivational tone targeting fitness enthusiasts" + }, + { + "inputJson": "{\"campaignType\":\"Print\",\"targetAudience\":\"Luxury car buyers\",\"tone\":\"Elegant\",\"includeSections\":[\"headline\",\"body\",\"callToAction\"],\"language\":\"English\"}", + "description": "Produce an elegant print advertisement template for luxury car buyers" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "copywriting.createFAQ", + "description": "This tool generates a structured Frequently Asked Questions (FAQ) document based on provided product or service details, target audience, and desired tone. It accepts inputs describing key topics and generates clear, concise Q&A pairs as output suitable for marketing or support materials.", + "category": "copywriting", + "parameters": [ + { + "name": "domainDescription", + "type": "string", + "description": "Detailed description of the product, service, or domain the FAQ will cover.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor the language and complexity accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyTopics", + "type": "array", + "description": "List of main topics or themes to be included in the FAQ, guiding question generation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "numberOfQuestions", + "type": "number", + "description": "Maximum number of FAQ questions to generate, to control FAQ length.", + "required": false, + "defaultValue": "10" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of writing to apply (e.g., formal, friendly, professional, casual).", + "required": false, + "defaultValue": "friendly" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of generated FAQ entries, each with a question and answer string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate customer-facing FAQ content for marketing websites, product launches, or customer support sections based on summarized domain information and key concerns. It helps automate content creation tailored to audience and tone preferences.", + "limitations": "The tool relies entirely on the input description and key topics; it cannot verify factual correctness or provide answers beyond provided context. It may not cover extremely technical or niche queries accurately.", + "examples": [ + "Generate an FAQ for a new eco-friendly water bottle targeting active millennials.", + "Create a professional FAQ for SaaS software help pages focusing on billing and security questions.", + "Produce a casual FAQ for a small business catering to pet owners about grooming services." + ] + }, + "tags": [ + "copywriting", + "FAQ", + "content generation", + "marketing", + "customer support", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"domainDescription\":\"A cloud-based project management tool that helps teams collaborate with task assignments, timelines, and file sharing.\",\"targetAudience\":\"Small to medium businesses, project managers, and team members.\",\"keyTopics\":[\"task management\",\"collaboration\",\"security\",\"pricing\"],\"numberOfQuestions\":5,\"tone\":\"professional\"}", + "description": "Generate a professional FAQ for a SaaS project management product focused on collaboration and pricing." + }, + { + "inputJson": "{\"domainDescription\":\"Organic skincare line using sustainable sourcing and cruelty-free ingredients.\",\"targetAudience\":\"Environmentally conscious consumers aged 25-40.\",\"keyTopics\":[\"ingredients\",\"sourcing\",\"usage\",\"pricing\"],\"numberOfQuestions\":7,\"tone\":\"friendly\"}", + "description": "Create a friendly FAQ for a new eco-friendly skincare brand highlighting ingredients and ethical practices." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "FAQ", + "context": null + } + }, + { + "name": "copywriting.createChecklist", + "description": "Generates a detailed marketing or promotional checklist based on user input about campaign goals, target audience, and key marketing channels. Accepts campaign type and objectives, and produces a structured, step-by-step checklist to guide content creation and marketing execution.", + "category": "copywriting", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign (e.g., email campaign, social media launch, product promotion).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for the campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "marketingChannels", + "type": "array", + "description": "List of marketing channels to be included (e.g., ['email','social media','blog']).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "campaignObjectives", + "type": "array", + "description": "Specific objectives or goals of the campaign (e.g., ['increase brand awareness','boost sales']).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "includeTimeline", + "type": "boolean", + "description": "Whether to include estimated timeline steps in the checklist.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured checklist object including key action items, steps, and optionally timeline guidance tailored to the provided campaign parameters." + }, + "aiAgent": { + "useCase": "Use this tool when planning marketing or promotional campaigns requiring structured task checklists to ensure thorough execution across channels and objectives. It helps generate actionable steps and reminders to guide copywriting and marketing teams.", + "limitations": "This tool does not create the actual copy or creative content; it focuses on checklist generation only. It cannot replace detailed project management tools, and it relies on accurate input about campaign parameters.", + "examples": [ + "Create a checklist for an email campaign targeting small business owners to increase newsletter signups.", + "Generate a promotional checklist for a social media launch aimed at young adults focusing on brand awareness.", + "Provide a step-by-step checklist for a product promotion campaign across email and blog channels with defined sales goals." + ] + }, + "tags": [ + "copywriting", + "marketing", + "checklist", + "campaign planning", + "promotional content" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email campaign\",\"targetAudience\":\"small business owners\",\"marketingChannels\":[\"email\"],\"campaignObjectives\":[\"increase newsletter signups\"],\"includeTimeline\":true}", + "description": "Checklist for an email campaign targeting small business owners aimed at increasing newsletter signups." + }, + { + "inputJson": "{\"campaignType\":\"social media launch\",\"targetAudience\":\"young adults\",\"marketingChannels\":[\"social media\"],\"campaignObjectives\":[\"brand awareness\"],\"includeTimeline\":false}", + "description": "Promotional checklist for a social media launch focused on brand awareness among young adults." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Checklist", + "context": null + } + }, + { + "name": "copywriting.createComponent", + "description": "Generates a marketing copywriting text component tailored for UI inclusion, based on product details, target audience, tone, and component role. Accepts inputs like product features, audience profile, desired tone, and component type to produce an engaging, concise text snippet suitable for banners, cards, or calls-to-action.", + "category": "copywriting", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product or service to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "List of key product features or benefits to highlight.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy e.g., friendly, professional, urgent.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "componentType", + "type": "string", + "description": "The type of UI component for which the text is intended, such as banner, card, or call-to-action.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in characters) for the generated text component to ensure fitting UI constraints.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text component string labeled as 'text'." + }, + "aiAgent": { + "useCase": "Use this tool when generating short marketing text snippets customized for specific UI components based on product details and audience context, to streamline content creation for web and app interfaces.", + "limitations": "This tool does not generate full-length articles or complex copywriting projects; it is focused on concise UI components only.", + "examples": [ + "Create a friendly banner text for a new fitness tracker highlighting its heart rate monitoring and waterproof features targeting active adults.", + "Generate a professional call-to-action text component encouraging small businesses to try cloud accounting software.", + "Produce a short card description for a new vegan snack product targeting environmentally-conscious consumers with an enthusiastic tone." + ] + }, + "tags": [ + "copywriting", + "marketing", + "UI component", + "text generation", + "promotional text", + "branding" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"FitPulse Tracker\",\"productFeatures\":[\"accurate heart rate monitor\",\"waterproof up to 50m\",\"7-day battery life\"],\"targetAudience\":\"active adults who enjoy outdoor sports\",\"tone\":\"friendly\",\"componentType\":\"banner\",\"maxLength\":120}", + "description": "Generate a friendly banner text advertising a fitness tracker for active adults emphasizing heart rate monitoring and waterproof capability." + }, + { + "inputJson": "{\"productName\":\"CloudBooks Pro\",\"productFeatures\":[\"real-time invoicing\",\"expense tracking\",\"secure data encryption\"],\"targetAudience\":\"small business owners\",\"tone\":\"professional\",\"componentType\":\"call-to-action\",\"maxLength\":100}", + "description": "Create a professional call-to-action text for cloud accounting software aimed at small business owners." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "copywriting.createMinutes", + "description": "This tool generates professional meeting minutes based on provided meeting details such as agenda, participants, discussion points, and action items. It organizes the input into a clear, concise document summarizing key points, decisions, and assigned tasks, suitable for distribution to meeting attendees.", + "category": "copywriting", + "parameters": [ + { + "name": "meetingTitle", + "type": "string", + "description": "Title or subject of the meeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "meetingDate", + "type": "string", + "description": "Date of the meeting in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant names or roles present at the meeting.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "agendaItems", + "type": "array", + "description": "Array of agenda items planned for discussion.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "discussionPoints", + "type": "array", + "description": "Array of discussion points corresponding to agenda items, describing highlights and outcomes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "decisionsMade", + "type": "array", + "description": "List of formal decisions or conclusions reached during the meeting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "actionItems", + "type": "array", + "description": "List of action items assigned, including responsible person and due date if known.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any miscellaneous notes or remarks relevant to the meeting minutes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a well-structured meeting minutes document as a formal string and optionally summarized key points array." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create formal, professional meeting minutes from raw meeting data inputs. Ideal for converting agenda topics, discussions, decisions, and tasks into a clear, distributable summary that attendees or stakeholders can easily understand.", + "limitations": "This tool does not record audio or automatically transcribe spoken content. It requires manual input of meeting information. It may not capture implicit context or emotional nuances of discussions.", + "examples": [ + "Create minutes for a project kickoff meeting with listed participants, agenda, and assigned tasks.", + "Summarize key discussion points and decisions from a board meeting input.", + "Generate a formal minutes document from input notes and action items from a team meeting." + ] + }, + "tags": [ + "copywriting", + "documentation", + "meeting", + "minutes", + "summary", + "productivity" + ], + "examples": [ + { + "inputJson": "{\"meetingTitle\":\"Quarterly Sales Review\",\"meetingDate\":\"2024-05-10\",\"participants\":[\"Alice Johnson\",\"Bob Smith\",\"Claire Lee\"],\"agendaItems\":[\"Sales Performance\",\"Challenges\",\"Next Quarter Strategy\"],\"discussionPoints\":[\"Reviewed Q1 and Q2 sales figures.\",\"Discussed supply chain delays impacting orders.\",\"Outlined marketing plans for Q3.\"],\"decisionsMade\":[\"Increase budget for digital marketing.\",\"Negotiate with suppliers for faster deliveries.\"],\"actionItems\":[{\"task\":\"Prepare updated sales forecast\",\"assignee\":\"Alice Johnson\",\"dueDate\":\"2024-05-20\"},{\"task\":\"Contact alternative suppliers\",\"assignee\":\"Bob Smith\",\"dueDate\":\"2024-05-25\"}],\"additionalNotes\":\"Next meeting scheduled for August 15th.\"}", + "description": "Generate minutes summarizing a quarterly sales meeting including agenda, discussions, decisions, and action items." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Minutes", + "context": null + } + }, + { + "name": "copywriting.createSummary", + "description": "Generates a coherent and concise summary from a provided source text or document. Accepts raw text or URL input, processes key information extraction and natural language generation to produce a clear, engaging summary. Output is a text string summarizing main points without losing important context.", + "category": "copywriting", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The raw text content to summarize. If both sourceText and sourceUrl are provided, sourceText takes precedence.", + "required": false, + "defaultValue": "" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "URL of the document or webpage to summarize if sourceText is not provided. The tool will fetch and extract main text content from this URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum desired length of the summary in words. Helps control the brevity or detail level.", + "required": false, + "defaultValue": "150" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone/style of the summary, e.g., neutral, persuasive, casual, professional. Influences writing style.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "includeKeyPoints", + "type": "boolean", + "description": "Whether to list bullet-point key points in addition to the paragraph summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary text and optionally key bullet points." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate brief, readable summaries that capture essential ideas from longer documents or text sources, aiding quick understanding, marketing, or content previews. Ideal for summarizing articles, reports, or product descriptions to create marketing copy or executive summaries.", + "limitations": "Cannot ensure perfect accuracy if source content is ambiguous or poorly structured. Does not replace expert human summarization for legal or critical documents. May struggle with very short or highly technical texts.", + "examples": [ + "Summarize the latest company report into a 100-word professional summary.", + "Create a casual summary for a product description from a webpage URL.", + "Generate a neutral summary with key bullet points from provided text." + ] + }, + "tags": [ + "copywriting", + "summary", + "text", + "marketing", + "content", + "naturalLanguageProcessing" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Our innovative platform leverages AI to automate routine tasks, boosting productivity and improving accuracy across teams. With customizable modules, businesses can tailor workflows to specific needs, resulting in measurable efficiency gains. Continuous updates ensure cutting-edge performance and security.\",\"maxLength\":100,\"tone\":\"professional\",\"includeKeyPoints\":true}", + "description": "Summarize a product introduction with professional tone, including bullet points." + }, + { + "inputJson": "{\"sourceUrl\":\"https://example.com/2023-market-report\",\"maxLength\":150}", + "description": "Create a neutral summary of a market report fetched from a URL, capped at 150 words." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "copywriting.createTranscript", + "description": "Generates a detailed, readable transcript from a provided audio or video file or raw text input. Accepts audio/video URL or text content and processes it to produce a polished, structured transcript suitable for marketing, promotional, or documentation purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "inputSource", + "type": "string", + "description": "The URL or base64 encoded string of the audio or video file, or raw text content to transcribe or format. Required if rawText is empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawText", + "type": "string", + "description": "Raw text input to format into a clean transcript. Used if no audio/video file is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en-US') of the audio or text content to improve transcription accuracy.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps at regular intervals in the transcript.", + "required": false, + "defaultValue": "true" + }, + { + "name": "speakerLabels", + "type": "boolean", + "description": "If true, attempts to identify and label different speakers in the transcript.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Style of the output transcript formatting, e.g., 'paragraph', 'bullet', or 'dialogue'.", + "required": false, + "defaultValue": "dialogue" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length in characters for the generated transcript; longer inputs will be summarized.", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cleaned and formatted transcript text, speaker metadata if identified, and optional timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to create clear, well-structured transcripts from multimedia content or raw text for marketing, promotional, or documentation purposes. It is useful for generating readable meeting notes, interviews, presentations, or promotional scripts from audio, video, or text sources.", + "limitations": "This tool does not perform advanced audio transcription beyond basic automatic speech recognition and formatting. It may not handle poor audio quality or multiple overlapping speakers accurately. It cannot generate transcripts without input content.", + "examples": [ + "Create a transcript from a marketing webinar video link with speaker labels and timestamps.", + "Format a raw interview text into dialogue style transcript without timestamps.", + "Generate a summarized transcript from a lengthy podcast audio file in English." + ] + }, + "tags": [ + "copywriting", + "transcript", + "audio-to-text", + "video-transcription", + "marketing", + "formatting", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"inputSource\":\"https://example.com/webinar.mp4\",\"language\":\"en-US\",\"includeTimestamps\":true,\"speakerLabels\":true,\"formatStyle\":\"dialogue\"}", + "description": "Transcribe a webinar video with speaker labels and timestamps in dialogue format." + }, + { + "inputJson": "{\"rawText\":\"Welcome to our product launch event. Today we will discuss the new features...\",\"formatStyle\":\"paragraph\",\"includeTimestamps\":false}", + "description": "Create a paragraph style transcript from raw text without timestamps." + }, + { + "inputJson": "{\"inputSource\":\"base64audiodatastring...\",\"language\":\"en-US\",\"maxLength\":5000}", + "description": "Generate a concise transcript summarizing a base64 encoded audio clip in English." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Transcript", + "context": null + } + }, + { + "name": "copywriting.createBlogPost", + "description": "Generates a detailed blog post based on a given topic, target audience, and desired tone. It accepts key inputs about the theme, length, style, keywords, and optional subtopics, then produces a structured, SEO-friendly blog post draft suitable for marketing or informational purposes.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the blog post to write.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers to tailor language and style.", + "required": false, + "defaultValue": "" + }, + { + "name": "postLength", + "type": "number", + "description": "Approximate desired word count of the blog post.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "tone", + "type": "string", + "description": "Writing tone such as formal, casual, enthusiastic, or professional.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keywords", + "type": "array", + "description": "List of SEO keywords or phrases to naturally include in the post.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subtopics", + "type": "array", + "description": "Optional array of subtopic titles or points to cover within the post.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to add a promotional call-to-action at the end of the blog post.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post text and metadata such as word count and highlighted keywords." + }, + "aiAgent": { + "useCase": "Ideal for marketing teams, content creators, or AI agents needing to create engaging, SEO-optimized blog content for various industries and audiences. Useful when quick generation of well-structured and targeted marketing articles or informational posts is required.", + "limitations": "Cannot replace expert domain knowledge for highly technical or niche topics; generated content may require human review and editing for accuracy and style consistency.", + "examples": [ + "Write a professional blog post about sustainable fashion targeting environmentally conscious millennials.", + "Create a casual 800-word blog post on home gardening tips including the keywords 'organic', 'DIY', and 'urban farming'.", + "Generate a detailed marketing blog post about the benefits of cloud computing with a call-to-action to sign up for a webinar." + ] + }, + "tags": [ + "copywriting", + "blog", + "marketing", + "SEO", + "content creation", + "writing", + "AI generated" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"The Importance of Cybersecurity in Small Businesses\",\"targetAudience\":\"small business owners\",\"postLength\":1200,\"tone\":\"professional\",\"keywords\":[\"cybersecurity\",\"small business\",\"data protection\"],\"subtopics\":[\"common cyber threats\",\"best practices\",\"tools and resources\"],\"includeCallToAction\":true}", + "description": "Generate a professional blog post targeted at small business owners that covers cybersecurity importance, common threats, and best practices, including a call to action." + }, + { + "inputJson": "{\"topic\":\"Top 10 Hiking Trails in the Pacific Northwest\",\"targetAudience\":\"outdoor enthusiasts\",\"postLength\":800,\"tone\":\"casual\",\"keywords\":[\"hiking\",\"Pacific Northwest\",\"trails\"],\"subtopics\":[],\"includeCallToAction\":false}", + "description": "Create a casual, informative blog post listing top hiking trails for outdoor enthusiasts." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "copywriting.createInvoice", + "description": "Generates a professional, well-structured invoice text based on inputs such as client details, itemized services or products, pricing, taxes, and payment terms. It processes the given data to produce clear invoice content ready for usage in billing communications or document templates.", + "category": "copywriting", + "parameters": [ + { + "name": "senderName", + "type": "string", + "description": "Name of the individual or company issuing the invoice", + "required": true, + "defaultValue": "" + }, + { + "name": "senderAddress", + "type": "string", + "description": "Address of the sender to appear on the invoice", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "Name of the client or company receiving the invoice", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientAddress", + "type": "string", + "description": "Address of the recipient for billing purposes", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier for the invoice", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date when the invoice is issued, preferably ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date (ISO format)", + "required": false, + "defaultValue": "" + }, + { + "name": "lineItems", + "type": "array", + "description": "Array of objects describing each item or service billed. Each item should include description (string), quantity (number), unitPrice (number), and optionally taxRate (number)", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for prices, e.g., USD, EUR", + "required": false, + "defaultValue": "USD" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Text describing payment terms or instructions", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a full invoice text as a single formatted string and a summary with calculated totals including subtotal, tax, and total amount." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate human-readable, professional invoice text from structured billing details. It is suitable for business automation, customer invoicing, and generating billing documents to send to clients.", + "limitations": "This tool does not create PDF or formatted document files, only plain text invoice content. It also does not validate tax rules or local regulations.", + "examples": [ + "Create an invoice text for a consulting firm billing a client with multiple services detailed.", + "Generate an invoice for sale of products including quantities, prices, and applicable taxes.", + "Produce invoice text specifying payment terms and due date for freelance work." + ] + }, + "tags": [ + "copywriting", + "invoice", + "billing", + "finance", + "document generation", + "text generation" + ], + "examples": [ + { + "inputJson": "{ \"senderName\": \"Acme Corp\", \"senderAddress\": \"123 Business Rd, Metropolis\", \"recipientName\": \"John Doe\", \"recipientAddress\": \"456 Residential St, Gotham\", \"invoiceNumber\": \"INV-1001\", \"invoiceDate\": \"2024-06-01\", \"dueDate\": \"2024-06-15\", \"lineItems\": [ { \"description\": \"Website Design\", \"quantity\": 1, \"unitPrice\": 1500, \"taxRate\": 0.1 }, { \"description\": \"Hosting (6 months)\", \"quantity\": 6, \"unitPrice\": 20 } ], \"currency\": \"USD\", \"paymentTerms\": \"Payment due within 14 days via bank transfer.\" }", + "description": "Invoice text for a client including web design and hosting services with a tax rate on one item." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "copywriting.createReleaseNotes", + "description": "Generates professional release notes text based on provided software version details, feature descriptions, bug fixes, and known issues. Accepts a structured input outlining the version, date, and categorized updates, and outputs a polished, user-friendly release notes document suitable for product announcements or documentation.", + "category": "copywriting", + "parameters": [ + { + "name": "version", + "type": "string", + "description": "The software version identifier for this release (e.g., 'v2.3.1').", + "required": true, + "defaultValue": "" + }, + { + "name": "releaseDate", + "type": "string", + "description": "The release date in ISO format (YYYY-MM-DD) to include in the notes.", + "required": false, + "defaultValue": "" + }, + { + "name": "newFeatures", + "type": "array", + "description": "List of new feature descriptions introduced in this release.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bugFixes", + "type": "array", + "description": "List of resolved bugs and issue fixes included in this release.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "knownIssues", + "type": "array", + "description": "List of any known issues or limitations users should be aware of.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Optional additional notes or disclaimers to include at the end of the release notes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'releaseNotes' string value with well-structured, clear, and formatted release notes text suitable for publication." + }, + "aiAgent": { + "useCase": "When preparing documentation or communications for a software product's new release, an AI agent can use this tool to automatically create comprehensive and reader-friendly release notes from structured update data, saving time and ensuring consistency.", + "limitations": "The tool cannot extract release information from unstructured inputs or source code automatically, and it requires well-formed input data. It does not format outputs for specific platforms like HTML or Markdown automatically.", + "examples": [ + "Create release notes for version 1.0.0 including several new features and bug fixes with a release date.", + "Generate release notes for a patch release that only fixes bugs and includes known issues.", + "Produce release notes including additional disclaimers for an enterprise product release." + ] + }, + "tags": [ + "copywriting", + "release notes", + "software documentation", + "product update", + "marketing text" + ], + "examples": [ + { + "inputJson": "{\"version\":\"v2.3.1\",\"releaseDate\":\"2024-05-15\",\"newFeatures\":[\"Added multi-language support\",\"Improved user dashboard UI\"],\"bugFixes\":[\"Fixed crash when opening settings\",\"Resolved data sync issues\"],\"knownIssues\":[\"Login delays under heavy load\"],\"additionalNotes\":\"Please backup your data before updating.\"}", + "description": "Generate detailed release notes including new features, bug fixes, known issues, and additional instructions." + }, + { + "inputJson": "{\"version\":\"v1.0.0\",\"newFeatures\":[\"Initial product launch with core features\"],\"bugFixes\":[],\"knownIssues\":[]}", + "description": "Create initial release notes for the product launch with core features only." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "ReleaseNotes", + "context": null + } + }, + { + "name": "copywriting.createChangelog", + "description": "Generates a well-structured changelog document based on provided release notes and version details. It accepts inputs such as version number, release date, list of changes categorized by type (added, fixed, changed, removed), and outputs a formatted changelog text in markdown or plain text suitable for release documentation.", + "category": "copywriting", + "parameters": [ + { + "name": "version", + "type": "string", + "description": "The semantic version number for the release, e.g., '1.2.0'.", + "required": true, + "defaultValue": "" + }, + { + "name": "releaseDate", + "type": "string", + "description": "Release date in YYYY-MM-DD format. If omitted, no date is included.", + "required": false, + "defaultValue": "" + }, + { + "name": "changes", + "type": "object", + "description": "An object categorizing change descriptions by type, e.g., {'added': [...], 'fixed': [...], 'changed': [...], 'removed': [...]}. Each category is optional but values are arrays of strings describing the changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the changelog text, either 'markdown' or 'plaintext'. Defaults to 'markdown'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include a header title like '## [version] - releaseDate' in the changelog output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted changelog text under the 'changelogText' property." + }, + "aiAgent": { + "useCase": "When an AI agent needs to produce professional and standardized changelogs from raw release notes or update descriptions, especially for software or product releases, use this tool to transform categorized changes into clear, formatted documents for publishing or developer communication.", + "limitations": "This tool generates textual changelogs based on input data but does not validate semantic versioning or automate gathering changes from version control commits. It also does not handle multilingual changelogs or graphical changelog formats.", + "examples": [ + "Create a markdown changelog for version 2.5.0 released on 2024-04-15 including added features and bug fixes.", + "Generate a plaintext changelog without a release date for version 1.0.0 with only removed and fixed changes.", + "Produce a changelog markdown including a header for version 3.0.1 with multiple change categories." + ] + }, + "tags": [ + "copywriting", + "changelog", + "release notes", + "documentation", + "marketing", + "software" + ], + "examples": [ + { + "inputJson": "{\"version\":\"2.0.0\",\"releaseDate\":\"2024-05-01\",\"changes\":{\"added\":[\"New user dashboard introduced\",\"Support for multi-factor authentication\"],\"fixed\":[\"Resolved login timeout issue\",\"Fixed typo in onboarding email\"]},\"format\":\"markdown\",\"includeHeader\":true}", + "description": "Generate a markdown changelog for version 2.0.0 with added features and fixes, including the release date and header." + }, + { + "inputJson": "{\"version\":\"1.0.0\",\"changes\":{\"removed\":[\"Deprecated legacy API endpoints\"]},\"format\":\"plaintext\",\"includeHeader\":false}", + "description": "Generate a plaintext changelog for version 1.0.0 listing removed features, without release date or header." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Changelog", + "context": null + } + }, + { + "name": "copywriting.createEmail", + "description": "Generates a professionally written marketing or promotional email based on specified input parameters such as target audience, product/service details, tone, and call-to-action. The tool processes the inputs to compose a coherent, engaging email content suitable for outreach, sales, or informational campaigns.", + "category": "copywriting", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended recipients of the email (e.g., young professionals, existing customers)", + "required": true, + "defaultValue": "" + }, + { + "name": "productOrService", + "type": "string", + "description": "Name and brief description of the product or service being promoted", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email (e.g., friendly, formal, persuasive)", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "callToAction", + "type": "string", + "description": "The action you want the reader to take after reading the email (e.g., buy now, sign up)", + "required": true, + "defaultValue": "" + }, + { + "name": "emailLength", + "type": "string", + "description": "Preferred length of the email content (e.g., short, medium, long)", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeSubjectLine", + "type": "boolean", + "description": "Whether to generate an email subject line along with the body", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated email subject (if requested) and body content as strings" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate tailored, persuasive marketing or promotional emails quickly for various audiences and products, ensuring tone and message align with campaign goals. It efficiently creates structured email content based on provided details to aid in outreach and sales efforts.", + "limitations": "Cannot replace human review for compliance, cultural sensitivity, or highly specialized industry jargon. It does not send emails or handle responses.", + "examples": [ + "Generate a friendly email promoting a new online course for beginner photographers with a call-to-action to sign up.", + "Create a formal email to existing customers advertising a holiday sale with a prompt to visit the website.", + "Produce a short, persuasive email targeting young professionals to try a new fitness app with a download link call-to-action." + ] + }, + "tags": [ + "copywriting", + "email", + "marketing", + "promotional", + "sales", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"young professionals interested in fitness\",\"productOrService\":\"FitTrack App, a personalized fitness tracking application\",\"tone\":\"persuasive\",\"callToAction\":\"download the app now\",\"emailLength\":\"short\",\"includeSubjectLine\":true}", + "description": "Create a short, persuasive marketing email promoting a fitness app with a call to action to download." + }, + { + "inputJson": "{\"targetAudience\":\"existing customers of a tech gadget store\",\"productOrService\":\"Holiday Season 20% off Sale on all gadgets\",\"tone\":\"friendly\",\"callToAction\":\"visit our store today\",\"emailLength\":\"medium\",\"includeSubjectLine\":true}", + "description": "Generate a medium length friendly promotional email about a holiday sale for existing customers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "copywriting.createArticle", + "description": "Generates a tailored marketing article based on provided topic, target audience, tone, and desired length. Accepts inputs describing the article's purpose and style, processes content creation using AI language capabilities, and produces a coherent, engaging article ready for promotional use.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the article for content focus.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers to tailor language and tone appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the article, e.g., professional, friendly, persuasive, or casual.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate word count target for the article.", + "required": false, + "defaultValue": "500" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords or phrases to include for SEO and thematic emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call-to-action statement to conclude the article.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text and metadata including word count and included keywords." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to generate original and engaging marketing content tailored to a specific topic and audience, saving time for content creators and marketers.", + "limitations": "The tool may not produce perfectly accurate or specialized technical content and cannot verify factual accuracy. It is also limited by provided parameters and may require human editing for best results.", + "examples": [ + "Write a persuasive article about the benefits of green energy for environmentally conscious consumers.", + "Create a friendly and casual blog post about new fitness apparel targeting young adults.", + "Generate a professional and concise article on cloud computing trends for IT decision makers." + ] + }, + "tags": [ + "copywriting", + "content creation", + "marketing", + "article", + "seo", + "writing", + "ai-generated" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of sustainable packaging\",\"targetAudience\":\"eco-conscious consumers and businesses\",\"tone\":\"persuasive\",\"length\":600,\"keywords\":[\"sustainable packaging\",\"environment\",\"eco-friendly\"],\"callToAction\":\"Switch to sustainable packaging today!\"}", + "description": "Generate a persuasive article about sustainable packaging targeting eco-conscious readers with specified keywords and a call to action." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "copywriting.createResume", + "description": "Generates a professional resume document based on user-provided personal details, job history, education, and skills. Supports multiple formats and provides tailored output for different industries or job roles.", + "category": "copywriting", + "parameters": [ + { + "name": "fullName", + "type": "string", + "description": "The candidate's full name as it should appear on the resume.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact details including email, phone number, and optionally LinkedIn or portfolio links.", + "required": true, + "defaultValue": "" + }, + { + "name": "professionalSummary", + "type": "string", + "description": "A brief summary or objective statement highlighting the candidate's career goals or key qualifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "List of work experience entries, each with company, role, start and end dates, and key achievements.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "Educational background including institutions, degrees earned, and graduation years.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Array of skills or competencies relevant to the targeted job role.", + "required": false, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "Industry or job sector to tailor the resume phrasing and keywords (e.g., software engineering, marketing).", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the resume (e.g., PDF, DOCX, plain text).", + "required": false, + "defaultValue": "PDF" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated resume file's content encoded as base64 string and the filename with extension." + }, + "aiAgent": { + "useCase": "Use this tool when a user needs to quickly generate a tailored, professional resume based on structured input data. It helps automate resume creation by formatting and organizing user data according to industry best practices and outputting in common document formats.", + "limitations": "This tool cannot evaluate the quality or accuracy of user-provided data. It cannot replace personalized career advice or job coaching. Complex layout customizations or creative designs beyond templates are not supported.", + "examples": [ + "Create a resume for a software engineer with three previous jobs and a skills list.", + "Generate a marketing resume emphasizing campaign management experience and social media skills.", + "Produce a simple text resume for a recent graduate including education and internships." + ] + }, + "tags": [ + "copywriting", + "resume", + "document generation", + "career", + "job application", + "professional writing" + ], + "examples": [ + { + "inputJson": "{\"fullName\":\"Jane Doe\",\"contactInfo\":{\"email\":\"jane.doe@example.com\",\"phone\":\"555-123-4567\",\"linkedin\":\"linkedin.com/in/janedoe\"},\"professionalSummary\":\"Experienced software developer specializing in full-stack web applications.\",\"workExperience\":[{\"company\":\"Tech Solutions\",\"role\":\"Software Engineer\",\"startDate\":\"2018-06\",\"endDate\":\"2022-04\",\"achievements\":[\"Developed scalable web apps\",\"Improved app performance by 30%\"]},{\"company\":\"Web Start\",\"role\":\"Junior Developer\",\"startDate\":\"2016-01\",\"endDate\":\"2018-05\",\"achievements\":[\"Assisted in front-end development\",\"Wrote unit tests\"]}],\"education\":[{\"institution\":\"State University\",\"degree\":\"BSc Computer Science\",\"graduationYear\":\"2015\"}],\"skills\":[\"JavaScript\",\"React\",\"Node.js\",\"SQL\"],\"industry\":\"software engineering\",\"outputFormat\":\"PDF\"}", + "description": "Generate a software engineering resume in PDF format with detailed work experience and skills for Jane Doe." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "content-creation.renderQuote", + "description": "Generates a styled HTML snippet for a given quote and optional author. It accepts quote text, author name, and styling options such as font size, color, and alignment, then returns a ready-to-use HTML string rendering the quote attractively for web content or social media.", + "category": "content-creation", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The main text of the quote to render, required, should be a meaningful sentence or phrase.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "The author or source of the quote to display below the quote text, optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "string", + "description": "CSS font size for the quote text, e.g., '16px', default is '18px'.", + "required": false, + "defaultValue": "18px" + }, + { + "name": "color", + "type": "string", + "description": "Text color for the quote, expressed in CSS format like hex or named color, default '#333'.", + "required": false, + "defaultValue": "#333" + }, + { + "name": "textAlign", + "type": "string", + "description": "Text alignment for the quote container: 'left', 'center', or 'right'.", + "required": false, + "defaultValue": "center" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the quote container in CSS format, default is transparent.", + "required": false, + "defaultValue": "transparent" + }, + { + "name": "maxWidth", + "type": "string", + "description": "Maximum width for the quote container (CSS units), defaults to '500px'.", + "required": false, + "defaultValue": "500px" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML string of the styled quote under the 'html' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create visually appealing, styled quote snippets for web pages, blogs, newsletters, or social media posts. It is useful to dynamically display inspirational, motivational, or cited quotes with optional author attribution and customizable styling.", + "limitations": "This tool only produces static HTML snippets and does not support advanced animations, external CSS linking, or interactive quote features.", + "examples": [ + "Render a quote by Albert Einstein with large font and centered alignment.", + "Generate a left-aligned quote with blue text and a light background.", + "Create a minimal styled quote without author attribution." + ] + }, + "tags": [ + "content creation", + "rendering", + "quote", + "HTML", + "styling", + "text formatting" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"author\":\"Franklin D. Roosevelt\",\"fontSize\":\"20px\",\"color\":\"#0055AA\",\"textAlign\":\"center\",\"backgroundColor\":\"#f0f8ff\",\"maxWidth\":\"600px\"}", + "description": "Render a centered, large blue quote with author and a light blue background." + }, + { + "inputJson": "{\"quoteText\":\"Simplicity is the ultimate sophistication.\",\"author\":\"Leonardo da Vinci\",\"fontSize\":\"16px\",\"color\":\"#444\",\"textAlign\":\"left\"}", + "description": "Render a left-aligned quote with muted dark text and default max width." + }, + { + "inputJson": "{\"quoteText\":\"Stay hungry, stay foolish.\",\"fontSize\":\"18px\",\"color\":\"#222\",\"textAlign\":\"right\",\"backgroundColor\":\"#fff0f5\"}", + "description": "Right-aligned quote without author and a faint pink background." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Quote", + "context": null + } + }, + { + "name": "copywriting.createContract", + "description": "Generates a customized contract document based on specified contract type, parties involved, key terms, and optional clauses. Accepts structured input to tailor agreement sections and outputs a well-organized, coherent contract text suitable for legal or business use.", + "category": "copywriting", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "Type of contract to generate, such as 'Service Agreement', 'Non-Disclosure Agreement', or 'Sales Contract'.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the contract, each with a name and role.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The date when the contract becomes effective, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "terms", + "type": "object", + "description": "Key contractual terms including payment, duration, obligations, and termination conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "optionalClauses", + "type": "array", + "description": "Array of additional clauses to include, such as confidentiality, dispute resolution, or force majeure.", + "required": false, + "defaultValue": "" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction law governing the contract (e.g., 'California, USA').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated contract text as a single formatted string and a summary of key contract elements extracted for quick reference." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce a legally styled contract document quickly and tailored to specific business arrangements by providing structured input describing contract parties, terms, and clauses. It can streamline contract creation, reduce drafting errors, and ensure consistency across contracts.", + "limitations": "This tool does not provide legal advice or replace consultation with qualified legal counsel. It generates draft contracts based on templates and input parameters, which may require legal review before execution.", + "examples": [ + "Create a service agreement contract between two companies with payment terms, confidentiality clause, and termination conditions.", + "Generate a non-disclosure agreement between an individual and a company effective on a specific date, governed by New York law.", + "Draft a sales contract including parties' details, delivery terms, payment schedule, and a force majeure clause." + ] + }, + "tags": [ + "copywriting", + "contract", + "legal", + "document generation", + "business", + "agreement" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"Service Agreement\",\"parties\":[{\"name\":\"Acme Corp.\",\"role\":\"Provider\"},{\"name\":\"Beta LLC\",\"role\":\"Client\"}],\"effectiveDate\":\"2024-07-01\",\"terms\":{\"payment\":\"Monthly fee of $5000\",\"duration\":\"12 months\",\"obligations\":\"Provider to supply consulting services\",\"termination\":\"30 days notice\"},\"optionalClauses\":[\"Confidentiality\",\"Dispute Resolution\"],\"governingLaw\":\"California, USA\"}", + "description": "Generate a service agreement with key terms between Acme Corp. and Beta LLC starting July 1, 2024, governed by California law." + }, + { + "inputJson": "{\"contractType\":\"Non-Disclosure Agreement\",\"parties\":[{\"name\":\"John Smith\",\"role\":\"Discloser\"},{\"name\":\"XYZ Inc.\",\"role\":\"Recipient\"}],\"terms\":{\"duration\":\"2 years\",\"obligations\":\"Protect all disclosed confidential information\"},\"governingLaw\":\"New York, USA\"}", + "description": "Create an NDA between an individual and a company with confidentiality obligations and a 2-year term." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "content-creation.renderReference", + "description": "Renders a formatted bibliographic reference string from structured reference data. Accepts input containing citation fields such as author, title, publication year, publisher, etc., and outputs a properly formatted reference string in the specified citation style (e.g., APA, MLA, Chicago).", + "category": "content-creation", + "parameters": [ + { + "name": "referenceData", + "type": "object", + "description": "An object containing the reference metadata fields such as authors, title, year, journal, volume, issue, pages, publisher, DOI, URL, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style to format the reference in (e.g., apa, mla, chicago).", + "required": false, + "defaultValue": "apa" + }, + { + "name": "includeUrl", + "type": "boolean", + "description": "Whether to include URL or DOI links in the rendered reference if available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') for localized formatting or punctuation, optional.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single 'formattedReference' string property containing the fully formatted bibliographic reference." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured bibliographic metadata for a reference and need a human-readable citation string formatted according to a specific academic or publication style. It is ideal for automatically generating reference lists and bibliographies in documents, research papers, or content management systems.", + "limitations": "This tool cannot verify the accuracy or completeness of the input reference data. It does not retrieve missing metadata from external databases. It only formats provided data according to style rules and does not produce inline citations.", + "examples": [ + "Render a reference in APA style from JSON metadata including authors, title and publication year.", + "Generate an MLA citation string for a journal article with volume, issue, and pages.", + "Format a book reference in Chicago style including publisher and DOI link." + ] + }, + "tags": [ + "content-creation", + "bibliography", + "citation", + "reference-formatting", + "academic", + "bibliographic-data", + "render" + ], + "examples": [ + { + "inputJson": "{\"referenceData\":{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Exploring AI\",\"year\":2022,\"publisher\":\"Tech Books Publishing\"},\"citationStyle\":\"apa\",\"includeUrl\":true}", + "description": "Render an APA style book reference with two authors and publisher." + }, + { + "inputJson": "{\"referenceData\":{\"authors\":[\"Brown, Lisa\"],\"title\":\"Deep Learning Advances\",\"journal\":\"Journal of AI Research\",\"year\":2021,\"volume\":45,\"issue\":3,\"pages\":\"123-145\",\"doi\":\"10.1000/jar.2021.45.3.123\"},\"citationStyle\":\"mla\",\"includeUrl\":true}", + "description": "Render an MLA style journal article citation including DOI." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Reference", + "context": null + } + }, + { + "name": "copywriting.createDocument", + "description": "Generates a tailored marketing or promotional document based on provided input such as target audience, product details, tone, and document type. Processes the input to create coherent, persuasive text suitable for emails, brochures, ads, or social media posts.", + "category": "copywriting", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "Defines the intended audience for the document to tailor language and style accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Name of the product or service being promoted, to include in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of main features or benefits of the product/service to highlight in the text.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of document to create, e.g., 'email', 'brochure', 'advertisement', 'social media post'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone/style of the writing, e.g., 'professional', 'friendly', 'urgent', 'casual'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate targeted word count for the document to control length and detail.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing document text and metadata such as word count and suggested headline." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate marketing or promotional content tailored to specific audiences, products, and communication channels. It assists with creating polished text for campaigns, advertisements, or outreach emails based on structured inputs.", + "limitations": "This tool generates text based on input parameters but does not conduct market research or verify product claims. It may require user revision to ensure factual accuracy and brand compliance.", + "examples": [ + "Create a social media post for a new eco-friendly water bottle targeting millennials with a casual tone.", + "Generate an email promoting a software update to existing customers with a professional but enthusiastic tone.", + "Produce a short ad copy highlighting key benefits of a fitness app for health-conscious individuals." + ] + }, + "tags": [ + "copywriting", + "marketing", + "document generation", + "promotional text", + "content creation", + "advertisement", + "brochure", + "email" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"millennials\",\"productName\":\"EcoSplash Water Bottle\",\"keyFeatures\":[\"BPA-free\",\"Keeps drinks cold for 24 hours\",\"Eco-friendly materials\"],\"documentType\":\"social media post\",\"tone\":\"casual\",\"wordCount\":100}", + "description": "Generate a casual social media post targeting millennials for an eco-friendly water bottle." + }, + { + "inputJson": "{\"targetAudience\":\"software users\",\"productName\":\"TaskMaster Pro v2.0\",\"keyFeatures\":[\"New UI\",\"Faster syncing\",\"Bug fixes\"],\"documentType\":\"email\",\"tone\":\"professional\",\"wordCount\":150}", + "description": "Create a professional promotional email about a software update to existing users." + }, + { + "inputJson": "{\"targetAudience\":\"fitness enthusiasts\",\"productName\":\"FitTrack App\",\"keyFeatures\":[\"Personalized workout plans\",\"Nutrition tracking\",\"Community challenges\"],\"documentType\":\"advertisement\",\"tone\":\"enthusiastic\",\"wordCount\":80}", + "description": "Write an enthusiastic ad copy highlighting benefits of a fitness app for health-conscious users." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "copywriting.createProposal", + "description": "Generates a professional business proposal document based on provided client details, project scope, objectives, pricing, and timelines. Processes structured input to create a coherent, persuasive proposal text suitable for client submission.", + "category": "copywriting", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "The name of the client or company the proposal is addressed to.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectTitle", + "type": "string", + "description": "The title of the project or engagement for which the proposal is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectScope", + "type": "string", + "description": "Detailed description of the work or services to be provided in the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "objectives", + "type": "array", + "description": "List of key goals or objectives the project aims to achieve.", + "required": true, + "defaultValue": "" + }, + { + "name": "pricingDetails", + "type": "object", + "description": "An object defining pricing structure, including cost breakdowns or total price.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeline", + "type": "string", + "description": "Expected project duration or milestones and delivery dates.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any extra important notes or terms to be included in the proposal.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated proposal text and metadata." + }, + "aiAgent": { + "useCase": "Use when needing to quickly generate polished, client-ready business proposals based on structured project input data, ensuring consistent tone and formatting while saving time on manual drafting.", + "limitations": "Cannot generate legal contracts or highly customized proposals requiring expert domain-specific knowledge; output should be reviewed by a human before client submission.", + "examples": [ + "Generate a proposal for a website redesign project for Acme Corp with specified objectives and pricing.", + "Create a proposal document for consulting services including timeline and pricing info.", + "Draft a business proposal for a mobile app development project with scope and goals outlined." + ] + }, + "tags": [ + "copywriting", + "proposal", + "business", + "marketing", + "document generation", + "client communication" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corporation\",\"projectTitle\":\"Website Redesign Project\",\"projectScope\":\"Redesign the corporate website to improve UX and update branding.\",\"objectives\":[\"Improve site navigation\",\"Increase mobile responsiveness\",\"Modernize visual design\"],\"pricingDetails\":{\"totalPrice\":15000,\"currency\":\"USD\",\"paymentTerms\":\"50% upfront, 50% on delivery\"},\"timeline\":\"Completion within 3 months.\",\"additionalNotes\":\"Includes two rounds of revisions.\"}", + "description": "Generate a detailed proposal for Acme Corporation's website redesign including scope, objectives, pricing, timeline, and notes." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "copywriting.createReport", + "description": "Generates a comprehensive written report based on provided input data and user instructions. Accepts parameters such as report topic, key points, desired length, style, and target audience. Processes the input to compose a structured, coherent report suitable for marketing, business, or analytical contexts. Outputs the complete text of the report as a string.", + "category": "copywriting", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the report to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of essential points or data to be included and emphasized in the report.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired word count of the report; influences level of detail.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "style", + "type": "string", + "description": "The tone and style of the report; e.g., formal, persuasive, informational.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor the report's language and complexity.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full report text under the 'text' field." + }, + "aiAgent": { + "useCase": "Use this tool whenever a detailed marketing or business report needs to be generated quickly from key input points and context, such as for presentations, client proposals, or internal reviews. It helps focus writing efforts and produces structured drafts suitable for further editing.", + "limitations": "This tool cannot verify factual accuracy of input data or create visual elements like charts and images. It only generates textual content based on provided inputs and instructions.", + "examples": [ + "Create a formal annual sales report focusing on growth trends and key markets, about 1200 words.", + "Generate an informational report summarizing new product features for prospective clients in a persuasive style.", + "Produce a brief business analysis report highlighting strengths and weaknesses for internal stakeholders." + ] + }, + "tags": [ + "copywriting", + "report", + "marketing", + "business", + "writing", + "documentation", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Annual Marketing Performance\",\"keyPoints\":[\"Sales increased by 15% compared to last year\",\"Social media engagement grew by 30%\",\"Customer retention rate improved\",\"New market segments explored\"],\"length\":1200,\"style\":\"formal\",\"targetAudience\":\"company executives and board members\"}", + "description": "Create a formal annual marketing performance report for executives focusing on growth and key achievements." + }, + { + "inputJson": "{\"topic\":\"Product Launch Summary\",\"keyPoints\":[\"Features overview\",\"Target audience benefits\",\"Launch event reception\",\"Early sales data\"],\"length\":800,\"style\":\"persuasive\",\"targetAudience\":\"potential customers and partners\"}", + "description": "Generate a persuasive product launch summary report targeting potential customers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "content-creation.renderCitation", + "description": "This tool accepts citation data in various input formats (such as JSON objects detailing author, title, publication, year, etc.) and renders it into a properly formatted citation string according to a specified citation style (APA, MLA, Chicago, etc.). It processes the input data, applies style rules, and outputs a ready-to-use citation text for academic or professional use.", + "category": "content-creation", + "parameters": [ + { + "name": "citationData", + "type": "object", + "description": "Structured bibliographic information including fields like author, title, publisher, year, etc., required to generate the citation.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The citation style to use for formatting (e.g., 'APA', 'MLA', 'Chicago').", + "required": true, + "defaultValue": "APA" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The output format specifying how to render the citation text, e.g., 'plain' text or 'HTML' with markup.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "includeUrl", + "type": "boolean", + "description": "Whether to include the URL or DOI if present in the citation data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') for localized citation formatting if applicable.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered citation as a formatted string ready for display or insertion into documents." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to output bibliographic citations from structured data in a specific style for academic or publishing purposes, ensuring consistent citation formatting automatically.", + "limitations": "This tool does not validate the correctness of the citation data fields nor does it support all possible citation styles or very complex source types like legal or ancient texts. It assumes well-formed input data.", + "examples": [ + "Generate an APA citation string for a journal article using given metadata.", + "Render an MLA style citation for a book including URL if available.", + "Provide a Chicago style citation output in HTML format for a website reference." + ] + }, + "tags": [ + "content-creation", + "citation", + "formatting", + "academic", + "bibliography", + "rendering" + ], + "examples": [ + { + "inputJson": "{\"citationData\":{\"author\":\"Doe, John\",\"title\":\"The Example Book\",\"publisher\":\"Fictional Press\",\"year\":\"2020\",\"url\":\"https://example.com/book\"},\"style\":\"APA\",\"outputFormat\":\"plain\",\"includeUrl\":true,\"language\":\"en\"}", + "description": "Generate a plain text APA citation including URL." + }, + { + "inputJson": "{\"citationData\":{\"author\":\"Smith, Jane\",\"title\":\"Research Paper\",\"journal\":\"Science Journal\",\"volume\":\"15\",\"issue\":\"4\",\"pages\":\"100-110\",\"year\":\"2019\"},\"style\":\"MLA\",\"outputFormat\":\"plain\",\"includeUrl\":false,\"language\":\"en\"}", + "description": "Generate an MLA citation for a journal article without URL." + }, + { + "inputJson": "{\"citationData\":{\"author\":\"Patel, Anil\",\"title\":\"Web Article\",\"website\":\"Example News\",\"year\":\"2021\",\"url\":\"https://examplenews.com/article\"},\"style\":\"Chicago\",\"outputFormat\":\"HTML\",\"includeUrl\":true,\"language\":\"en\"}", + "description": "Generate an HTML formatted Chicago style citation for a web article including URL." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Citation", + "context": null + } + }, + { + "name": "content-creation.renderLink", + "description": "Generates an HTML hyperlink element as a string based on provided URL, display text, and optional attributes such as target, title, and CSS classes. Accepts URL and display text as inputs, processes attributes, and outputs a complete anchor tag string.", + "category": "content-creation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The destination URL for the hyperlink. Must be a valid URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "The text to display as the clickable link. If empty, the URL will be used as text.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "If true, adds target='_blank' and rel='noopener' to open the link in a new browser tab.", + "required": false, + "defaultValue": "false" + }, + { + "name": "title", + "type": "string", + "description": "Optional title attribute for the link, providing additional info on hover.", + "required": false, + "defaultValue": "" + }, + { + "name": "cssClasses", + "type": "array", + "description": "List of CSS class names to apply to the anchor element.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the 'html' field with the fully rendered anchor tag as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a safe, customizable HTML anchor tag string for embedding links in content dynamically, including defining how links open and styling them with CSS classes. It helps ensure consistent markup generation with optional attributes.", + "limitations": "Does not validate if the URL is reachable or safe beyond basic string use. Does not sanitize inputs for scripting vulnerabilities; the agent should validate inputs beforehand. Handles only basic anchor tag rendering.", + "examples": [ + "Generate a link to 'https://example.com' with display 'Example', opening in a new tab.", + "Create a link with no display text, so the URL is shown, and add CSS classes 'btn' and 'btn-primary'.", + "Render a link to 'https://openai.com' with a title attribute set to 'OpenAI Homepage'." + ] + }, + "tags": [ + "content", + "html", + "link", + "rendering", + "anchor", + "web", + "frontend" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"Example\",\"openInNewTab\":true,\"title\":\"Visit example website\",\"cssClasses\":[\"link\",\"external\"]}", + "description": "Renders a link to example.com with display text 'Example', opens in new tab, has title and css classes." + }, + { + "inputJson": "{\"url\":\"https://openai.com\",\"displayText\":\"\",\"openInNewTab\":false,\"title\":\"OpenAI Homepage\",\"cssClasses\":[] }", + "description": "Renders a link to OpenAI homepage showing the URL as text and a title attribute, no new tab or classes." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Link", + "context": null + } + }, + { + "name": "content-creation.renderHeading", + "description": "Renders a formatted HTML heading element based on the provided text content, heading level, and optional styling attributes. Accepts plain text or simple markdown-like inline markup and outputs a string containing the complete HTML heading tag with applied classes and styles, suitable for embedding in web pages or rich text documents.", + "category": "content-creation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content to be included inside the heading. Supports plain text or basic inline markdown like *emphasis* or **strong**.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "The heading level indicating the HTML heading tag to use (1-6 correspond to

-

).", + "required": true, + "defaultValue": "1" + }, + { + "name": "cssClass", + "type": "string", + "description": "Optional CSS class name(s) to add to the heading element for styling purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "inlineStyle", + "type": "string", + "description": "Optional inline CSS styles to apply directly to the heading element, e.g., \"color:red; font-weight:bold;\".", + "required": false, + "defaultValue": "" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "Determines whether to escape HTML special characters in the text content to prevent injection; set to false if the text contains trusted HTML.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'html' with the rendered heading element as an HTML string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate semantic HTML heading elements programmatically from text inputs, including scenarios where configurable levels and styling are required such as dynamically generating content sections or preparing headings for a CMS or web app.", + "limitations": "This tool only generates heading elements; it does not generate or parse full documents or manage accessibility attributes beyond standard HTML tags. It does not support complex markdown or nested HTML elements inside the heading text.", + "examples": [ + "Render a level 2 heading with the text 'Welcome to Our Site'.", + "Render a level 3 heading with text containing *emphasis* and a custom CSS class.", + "Render a level 1 heading with red colored text using inline styles." + ] + }, + "tags": [ + "html", + "heading", + "rendering", + "content-creation", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to Our Site\",\"level\":2}", + "description": "Render a simple level 2 heading with default styling." + }, + { + "inputJson": "{\"text\":\"This is a **bold** heading\",\"level\":3,\"cssClass\":\"section-title\"}", + "description": "Render level 3 heading with markdown strong and a CSS class for styling." + }, + { + "inputJson": "{\"text\":\"Alert!\",\"level\":1,\"inlineStyle\":\"color:red; font-weight:bold;\"}", + "description": "Render level 1 heading with inline CSS styles for red, bold text." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Heading", + "context": null + } + }, + { + "name": "content-creation.renderWord", + "description": "Renders a styled word or short text snippet as a high-quality image or SVG. Accepts input text and styling options such as font, size, color, background, and output format. Processes visual rendering and returns a URL or binary data encoding the rendered word graphic suitable for web or design use.", + "category": "content-creation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The word or short text snippet to render visually.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family to use for rendering the text (e.g., Arial, Times New Roman).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for the rendered word.", + "required": false, + "defaultValue": "48" + }, + { + "name": "fontColor", + "type": "string", + "description": "Color of the text, as named color or hex code (e.g., '#000000').", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color behind the text, as named color or hex code. Use transparent if empty.", + "required": false, + "defaultValue": "transparent" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format: 'png', 'jpeg', or 'svg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render the text in bold style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render the text in italic style.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a data URI string or URL to the rendered image and metadata including width, height, and format." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to programmatically generate a visual representation of a word or short text snippet as a styled image or vector graphic. Ideal for dynamic logo creation, styled labels, graphical buttons, or text-based visuals in content pipelines.", + "limitations": "This tool cannot render long passages of text or complex layouts. It focuses on single words or short phrases and does not support advanced typography features like kerning pairs or ligatures beyond standard font rendering.", + "examples": [ + "Render the word 'Hello' in bold italic red font on a transparent background as PNG.", + "Generate a 72px large blue 'Welcome' text with a white background saved as SVG.", + "Create the word 'Sale' in 100px black font with a yellow background in JPEG format." + ] + }, + "tags": [ + "rendering", + "text", + "graphics", + "image-generation", + "font", + "visual-content" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello\",\"fontFamily\":\"Helvetica\",\"fontSize\":60,\"fontColor\":\"#FF0000\",\"backgroundColor\":\"transparent\",\"outputFormat\":\"png\",\"bold\":true,\"italic\":true}", + "description": "Render 'Hello' in 60px bold italic Helvetica font, red color, transparent background as PNG." + }, + { + "inputJson": "{\"text\":\"Welcome\",\"fontSize\":72,\"fontColor\":\"blue\",\"backgroundColor\":\"white\",\"outputFormat\":\"svg\",\"bold\":false,\"italic\":false}", + "description": "Render 'Welcome' in 72px normal blue font with white background as SVG." + }, + { + "inputJson": "{\"text\":\"Sale\",\"fontSize\":100,\"fontColor\":\"#000000\",\"backgroundColor\":\"#FFFF00\",\"outputFormat\":\"jpeg\",\"bold\":false,\"italic\":false}", + "description": "Render 'Sale' in 100px black font with a bright yellow background as JPEG." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "content-creation.renderDashboard", + "description": "Generates an interactive analytics dashboard based on provided data sources and configuration options. Accepts data inputs, visualization specifications, and user preferences to produce a rendered dashboard that can be embedded or displayed in web or app environments with customizable charts, tables, and filters.", + "category": "content-creation", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of data source objects detailing the datasets to be visualized, including connection strings, data types, and query definitions.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationConfig", + "type": "object", + "description": "Configuration object specifying the type of charts, metrics, dimensions, and layout instructions for the dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to apply on the data before rendering the dashboard, such as date ranges or attribute selectors.", + "required": false, + "defaultValue": "" + }, + { + "name": "theme", + "type": "string", + "description": "Theme name or style guide to apply to the dashboard visuals, e.g., 'light', 'dark', or custom theme identifier.", + "required": false, + "defaultValue": "light" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Time in seconds for automatic dashboard refresh from live data sources. Set 0 to disable auto-refresh.", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the rendered dashboard output: 'html', 'json', or 'embedCode'.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered dashboard output as a string, plus metadata such as timestamp and any warnings." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create customizable, interactive dashboards for analytics purposes from multiple data inputs, supporting various chart types and user-driven filtering. Ideal for agents tasked with generating visual reports or embedding analytics views in applications or websites.", + "limitations": "Does not handle data ingestion or cleaning. Relies on preprocessed and valid input data sources. Complex data transformations must be done prior to providing input.", + "examples": [ + "Render a sales performance dashboard with bar charts and line graphs based on monthly sales data for the last year.", + "Generate an interactive KPI dashboard with filters for department and date ranges, themed in dark mode, outputting an embeddable HTML snippet.", + "Create a JSON-format dashboard representation for integration into a mobile analytics app with auto-refresh every 60 seconds." + ] + }, + "tags": [ + "dashboard", + "analytics", + "visualization", + "reporting", + "interactive", + "data", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[{\"name\":\"salesData\",\"type\":\"csv\",\"url\":\"https://example.com/sales.csv\"}],\"visualizationConfig\":{\"charts\":[{\"type\":\"bar\",\"metric\":\"revenue\",\"dimension\":\"month\"},{\"type\":\"line\",\"metric\":\"units_sold\",\"dimension\":\"month\"}],\"layout\":{\"rows\":1,\"columns\":2}},\"filters\":{\"dateRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"}},\"theme\":\"light\",\"refreshInterval\":0,\"outputFormat\":\"html\"}", + "description": "Render a sales dashboard with bar and line charts for revenue and units sold across 2023." + }, + { + "inputJson": "{\"dataSources\":[{\"name\":\"employeeKPI\",\"type\":\"database\",\"connectionString\":\"Server=myServer;Database=myDB;User=myUser;Pwd=myPwd;\"}],\"visualizationConfig\":{\"charts\":[{\"type\":\"gauge\",\"metric\":\"employee_satisfaction_score\",\"dimension\":\"department\"}],\"layout\":{\"rows\":1,\"columns\":1}},\"filters\":{},\"theme\":\"dark\",\"refreshInterval\":120,\"outputFormat\":\"embedCode\"}", + "description": "Generate an embeddable dashboard showing employee satisfaction gauge chart by department, dark theme, auto-refresh every 2 minutes." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Dashboard", + "context": null + } + }, + { + "name": "content-creation.renderChart", + "description": "Generates a chart image from provided structured data and configuration settings. Accepts data arrays or objects defining series, labels, and other chart elements; applies styling and formatting options; outputs a rendered chart image as base64-encoded PNG or SVG format suitable for embedding or saving.", + "category": "content-creation", + "parameters": [ + { + "name": "chartType", + "type": "string", + "description": "Type of chart to render, e.g., 'bar', 'line', 'pie', 'scatter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Structured data defining labels and datasets for the chart. Must follow a standard format with labels (array of strings) and datasets (array of objects with data arrays and labels).", + "required": true, + "defaultValue": "" + }, + { + "name": "options", + "type": "object", + "description": "Optional configuration object to customize chart appearance including colors, axis settings, legends, and dimensions.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output chart image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output chart image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output image, either 'png' or 'svg'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing base64-encoded string of the rendered chart image and its MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to convert structured data into a visual chart for reports, presentations, or dashboards. It is ideal for generating dynamic visualizations programmatically from data sources or user input, enabling embedding in web or document formats.", + "limitations": "Cannot perform advanced data analysis or automatic data transformation. The tool expects data to be preprocessed and structured correctly. It does not support interactive charts or real-time updates.", + "examples": [ + "Generate a bar chart showing monthly sales data for 2023.", + "Create a pie chart to display percentage distribution of market segments.", + "Render a line chart comparing stock prices over time with custom colors and axis labels." + ] + }, + "tags": [ + "chart", + "visualization", + "data-visualization", + "image-generation", + "content-creation", + "rendering", + "media" + ], + "examples": [ + { + "inputJson": "{\"chartType\":\"bar\",\"data\":{\"labels\":[\"Jan\",\"Feb\",\"Mar\"],\"datasets\":[{\"label\":\"Sales\",\"data\":[150,200,170]}]},\"options\":{\"colors\":[\"#4e79a7\"]},\"width\":600,\"height\":400,\"outputFormat\":\"png\"}", + "description": "Render a 600x400 pixel bar chart in PNG format showing sales data for three months with a custom color." + }, + { + "inputJson": "{\"chartType\":\"pie\",\"data\":{\"labels\":[\"A\",\"B\",\"C\"],\"datasets\":[{\"label\":\"Segments\",\"data\":[30,45,25]}]},\"width\":500,\"height\":500,\"outputFormat\":\"svg\"}", + "description": "Create a 500x500 pixel pie chart in SVG format representing distribution percentages for three segments." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Chart", + "context": null + } + }, + { + "name": "content-creation.renderParagraph", + "description": "Generates a formatted paragraph of text based on input content and optional styling preferences. Accepts a raw text string and styling options such as text alignment, font size, line spacing, and output format (HTML or plain text). Returns a rendered paragraph string with the specified formatting applied.", + "category": "content-creation", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The raw textual content to render as a paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "textAlignment", + "type": "string", + "description": "Specifies text alignment within the paragraph: 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels to apply to the paragraph text.", + "required": false, + "defaultValue": "14" + }, + { + "name": "lineHeight", + "type": "number", + "description": "Line height (spacing) multiplier for the paragraph text.", + "required": false, + "defaultValue": "1.5" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the rendered paragraph, either 'html' or 'plain'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "additionalStyles", + "type": "object", + "description": "An object specifying additional CSS styles as key-value pairs to apply to the paragraph (HTML output only).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered paragraph string in the specified format under the 'renderedParagraph' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a paragraph of text with specific formatting for inclusion in documents, web pages, or digital content. It is ideal for converting raw text into styled paragraphs with common formatting options. AI agents can utilize it for content presentation or when generating formatted HTML or plain text snippets.", + "limitations": "This tool does not support complex inline styling of individual words or phrases, nor does it process markdown or rich text input. It only applies general paragraph-level formatting.", + "examples": [ + "Render a paragraph with centered alignment and 16px font size in HTML format.", + "Generate a plain text paragraph with justified alignment and increased line spacing.", + "Create an HTML paragraph with custom CSS styles for color and background." + ] + }, + "tags": [ + "content", + "rendering", + "text-formatting", + "paragraph", + "HTML", + "plain-text" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"This is an example paragraph.\",\"textAlignment\":\"center\",\"fontSize\":16,\"lineHeight\":1.6,\"outputFormat\":\"html\"}", + "description": "Render a centered HTML paragraph with 16px font size and 1.6 line height." + }, + { + "inputJson": "{\"textContent\":\"Plain text paragraph\\nwith line breaks.\",\"textAlignment\":\"justify\",\"outputFormat\":\"plain\"}", + "description": "Generate a justified plain text paragraph without HTML formatting." + }, + { + "inputJson": "{\"textContent\":\"Styled paragraph.\",\"outputFormat\":\"html\",\"additionalStyles\":{\"color\":\"#333333\",\"background-color\":\"#f0f0f0\"}}", + "description": "Create an HTML paragraph with custom text color and background color styles." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "content-creation.renderSentence", + "description": "Generates a grammatically correct and contextually appropriate sentence based on provided parameters such as keywords, desired tone, and language. Accepts input parameters that guide theme, style, and length, and outputs a natural language sentence suitable for digital content creation.", + "category": "content-creation", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of words or key phrases that the generated sentence should incorporate.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the sentence, e.g., formal, casual, humorous, or neutral.", + "required": false, + "defaultValue": "\"neutral\"" + }, + { + "name": "language", + "type": "string", + "description": "Language code (ISO 639-1) for the sentence's language output, e.g., 'en' for English.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the generated sentence. Defaults to 140 characters.", + "required": false, + "defaultValue": "140" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence string and metadata about the sentence, including its length and tone." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a coherent, contextually relevant sentence incorporating specific keywords with controlled tone and length, useful for drafting social media posts, captions, summaries, or creative content snippets.", + "limitations": "Cannot generate multiple sentences or paragraphs; output is limited to a single sentence. Accuracy depends on keyword relevance and may not always perfectly match intended tone or language subtleties.", + "examples": [ + "Generate a friendly sentence with keywords 'summer' and 'vacation'.", + "Create a formal sentence including the terms 'technology' and 'innovation'.", + "Produce a humorous sentence containing 'cat' and 'coffee'." + ] + }, + "tags": [ + "content-generation", + "sentence", + "natural-language", + "text-generation", + "tone-control", + "keyword-based" + ], + "examples": [ + { + "inputJson": "{\"keywords\": [\"summer\", \"vacation\"], \"tone\": \"friendly\", \"language\": \"en\", \"maxLength\": 100}", + "description": "Generate an English-friendly sentence that includes the keywords 'summer' and 'vacation' with a max length of 100." + }, + { + "inputJson": "{\"keywords\": [\"technology\", \"innovation\"], \"tone\": \"formal\"}", + "description": "Create a formal sentence in English that includes the keywords 'technology' and 'innovation'." + }, + { + "inputJson": "{\"keywords\": [\"cat\", \"coffee\"], \"tone\": \"humorous\", \"maxLength\": 80}", + "description": "Generate a humorous sentence containing the words 'cat' and 'coffee' limited to 80 characters." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "content-creation.renderText", + "description": "Renders input text by applying optional formatting styles such as bold, italic, underline, font size, and color. Accepts plain text and formatting instructions, then outputs HTML-formatted string reflecting the desired styles for use in web content or digital documents.", + "category": "content-creation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The plain text content to be formatted and rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to apply bold styling to the entire text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to apply italic styling to the entire text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "underline", + "type": "boolean", + "description": "Whether to underline the entire text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels to apply to the text, if specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "color", + "type": "string", + "description": "Text color as a CSS-compatible string (e.g., '#000000' or 'red').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML string with the applied formatting under the key 'renderedHtml'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert plain text into formatted HTML for display in web pages, emails, or digital documents, with basic styling like bold, italic, underline, font size, and color applied consistently.", + "limitations": "This tool applies uniform styling to the entire text; it does not support partial or inline varied formatting within the same text input.", + "examples": [ + "Render the text 'Hello World' in bold and red color.", + "Render the text 'Sample Text' with italic, underline, and font size 18.", + "Render the text 'No formatting' with default style." + ] + }, + "tags": [ + "text", + "rendering", + "formatting", + "HTML", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello World\",\"bold\":true,\"color\":\"red\"}", + "description": "Render 'Hello World' in bold red text." + }, + { + "inputJson": "{\"text\":\"Sample Text\",\"italic\":true,\"underline\":true,\"fontSize\":18}", + "description": "Render 'Sample Text' italicized, underlined, with font size 18 pixels." + }, + { + "inputJson": "{\"text\":\"No formatting\"}", + "description": "Render 'No formatting' with default style (no special formatting)." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "content-creation.renderGraph", + "description": "Renders customizable graphs from structured data inputs such as arrays or objects. Accepts parameters defining graph type, data points, labels, colors, and dimensions. Processes the data to produce an SVG or PNG image of the graph for embedding or display in digital content projects.", + "category": "content-creation", + "parameters": [ + { + "name": "graphType", + "type": "string", + "description": "Type of graph to render, e.g., 'line', 'bar', 'pie', 'scatter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataPoints", + "type": "array", + "description": "Array of data points or series to plot; format depends on graph type (e.g., array of numbers or objects with x,y).", + "required": true, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "Optional array of labels corresponding to data points or axes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "colors", + "type": "array", + "description": "Optional array of colors for graph elements like bars, lines, or slices.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output graph image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output graph image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output image, e.g., 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to display above the graph.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered graph image encoded as a base64 string and the MIME type of the image." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate visualization graphics such as line charts, bar graphs, pie charts, or scatter plots from given numerical or categorical datasets to embed within reports, articles, dashboards, or presentations. It is useful for transforming raw data into visual summaries on demand.", + "limitations": "This tool cannot perform complex statistical analysis or dynamic interactive charting. It does not support 3D graphs or animations. It only produces static images in specified formats.", + "examples": [ + "Render a line graph showing monthly sales figures.", + "Create a pie chart representing market share percentages.", + "Generate a scatter plot with labeled points for data analysis." + ] + }, + "tags": [ + "graph", + "render", + "visualization", + "chart", + "data-visualization", + "content-creation", + "image", + "media" + ], + "examples": [ + { + "inputJson": "{\"graphType\":\"line\",\"dataPoints\":[10,20,15,30,25],\"labels\":[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\"],\"colors\":[\"#4caf50\"],\"width\":600,\"height\":400,\"outputFormat\":\"svg\",\"title\":\"Monthly Sales\"}", + "description": "Renders a line graph with sales data for five months with green line and labels." + }, + { + "inputJson": "{\"graphType\":\"pie\",\"dataPoints\":[40,30,20,10],\"labels\":[\"Product A\",\"Product B\",\"Product C\",\"Product D\"],\"colors\":[\"#f44336\",\"#2196f3\",\"#ffeb3b\",\"#9c27b0\"],\"width\":500,\"height\":500,\"outputFormat\":\"png\",\"title\":\"Product Market Share\"}", + "description": "Creates a colored pie chart in PNG representing product market shares." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Graph", + "context": null + } + }, + { + "name": "content-creation.renderScreenshot", + "description": "Generates a screenshot image of a specified web page URL or provided HTML content. Accepts URL or raw HTML input, waits until page load or specified delay, and outputs a PNG or JPEG image file encoded in Base64 or as a downloadable file URL.", + "category": "content-creation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web page URL to capture as a screenshot. Either url or htmlContent must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML markup to render and capture as a screenshot. Used if url is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "The viewport width in pixels for rendering the page. Defaults to 1280.", + "required": false, + "defaultValue": "1280" + }, + { + "name": "height", + "type": "number", + "description": "The viewport height in pixels for rendering the page. Defaults to 720.", + "required": false, + "defaultValue": "720" + }, + { + "name": "delay", + "type": "number", + "description": "Delay in milliseconds to wait after page load before taking screenshot, allowing dynamic content to render. Defaults to 1000ms.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "fullPage", + "type": "boolean", + "description": "If true, captures the entire scrollable page, otherwise only the viewport.", + "required": false, + "defaultValue": "false" + }, + { + "name": "imageFormat", + "type": "string", + "description": "Image file format to output: 'png' or 'jpeg'. Defaults to 'png'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "quality", + "type": "number", + "description": "Quality of the image output between 0-100 (only applies to JPEG). Defaults to 80.", + "required": false, + "defaultValue": "80" + }, + { + "name": "outputType", + "type": "string", + "description": "Output format: 'base64' for Base64 encoded string or 'url' for downloadable file URL.", + "required": false, + "defaultValue": "base64" + } + ], + "returns": { + "type": "object", + "description": "An object containing the screenshot result, including the image in the requested output format and metadata like width, height, format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate static visual captures of web pages or HTML markup for documentation, previews, testing, or archival purposes. It's ideal for capturing dynamic or static page states programmatically with configurable viewports and formats.", + "limitations": "Cannot interact with pages requiring authentication or complex client-side interactions beyond a simple delay. Does not support video or animated content capture. Rendering accuracy limited to what headless browser engine supports.", + "examples": [ + "Capture a screenshot of the homepage of example.com as a PNG base64 string.", + "Render provided HTML content with 1024x768 viewport and output JPEG image URL.", + "Take a full page screenshot of a news article URL after waiting 2 seconds for ads to load." + ] + }, + "tags": [ + "screenshot", + "rendering", + "webpage", + "content-creation", + "image", + "automation", + "html" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"width\":1280,\"height\":720,\"delay\":1000,\"fullPage\":false,\"imageFormat\":\"png\",\"outputType\":\"base64\"}", + "description": "Capture a 1280x720 viewport screenshot of https://example.com as PNG Base64 string" + }, + { + "inputJson": "{\"htmlContent\":\"

Hello World

\",\"width\":800,\"height\":600,\"imageFormat\":\"jpeg\",\"quality\":90,\"outputType\":\"url\"}", + "description": "Render simple HTML content with 800x600 viewport and output JPEG image URL with high quality" + }, + { + "inputJson": "{\"url\":\"https://news.example.com/article\",\"fullPage\":true,\"delay\":2000,\"outputType\":\"base64\"}", + "description": "Capture a full page screenshot of a news article URL after 2 seconds delay, output as Base64 PNG string" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Screenshot", + "context": null + } + }, + { + "name": "content-creation.renderAttachment", + "description": "Renders a digital attachment such as an image, video, audio, or document file within a web or application interface. Accepts the attachment's URL or base64 data along with optional metadata and rendering options to produce an embeddable HTML snippet or media element.", + "category": "content-creation", + "parameters": [ + { + "name": "attachmentUrl", + "type": "string", + "description": "The URL of the attachment to be rendered. Required if base64Data is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "base64Data", + "type": "string", + "description": "Base64 encoded data of the attachment. Required if attachmentUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachmentType", + "type": "string", + "description": "Type of the attachment (e.g., image, video, audio, document). Used to determine rendering method.", + "required": true, + "defaultValue": "" + }, + { + "name": "altText", + "type": "string", + "description": "Alternative text for the attachment to improve accessibility, primarily for images and videos.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Desired width in pixels to render the attachment. Defaults to original or adaptive sizing if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "Desired height in pixels to render the attachment. Defaults to original or adaptive sizing if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "controls", + "type": "boolean", + "description": "For media like audio or video, whether to show playback controls. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "autoplay", + "type": "boolean", + "description": "Applicable for audio/video attachments, specifies if media should start playing automatically. Default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML string for embedding the attachment and metadata used in rendering." + }, + "aiAgent": { + "useCase": "Use this tool when you need to embed or display media attachments dynamically in digital content environments, such as websites, email templates, or apps. It handles different media types and formats into standardized HTML elements for seamless rendering.", + "limitations": "Does not handle file uploads or downloads; expects attachment data or URLs already accessible. Not responsible for media transcoding or format conversion. Rendering varies by browser capability and media type support.", + "examples": [ + "Render an image attachment by URL with specific dimensions and alt text.", + "Render a base64 encoded audio clip with controls enabled and autoplay disabled.", + "Render a document attachment as a clickable embed or download link depending on type." + ] + }, + "tags": [ + "rendering", + "media", + "attachment", + "content-creation", + "embedding", + "image", + "video", + "audio", + "document" + ], + "examples": [ + { + "inputJson": "{\"attachmentUrl\":\"https://example.com/image.jpg\",\"attachmentType\":\"image\",\"altText\":\"Sample Image\",\"width\":600,\"height\":400}", + "description": "Render an image from a web URL with specified width, height, and alt text." + }, + { + "inputJson": "{\"base64Data\":\"data:audio/mp3;base64,//uQZAAA...\",\"attachmentType\":\"audio\",\"controls\":true,\"autoplay\":false}", + "description": "Render an audio attachment from base64 data with playback controls enabled but no autoplay." + }, + { + "inputJson": "{\"attachmentUrl\":\"https://example.com/doc.pdf\",\"attachmentType\":\"document\"}", + "description": "Render a document attachment as a downloadable link or embedded viewer based on type." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Attachment", + "context": null + } + }, + { + "name": "content-creation.renderVideo", + "description": "Generates a video file by rendering input assets such as images, video clips, text overlays, and audio tracks. It processes the inputs according to specified parameters like resolution, frame rate, and encoding format, producing a final video output file suitable for sharing or publishing.", + "category": "content-creation", + "parameters": [ + { + "name": "sources", + "type": "array", + "description": "List of input media assets (images, video clips, audio, text overlays) with their sequence and timing details.", + "required": true, + "defaultValue": "" + }, + { + "name": "resolution", + "type": "string", + "description": "Output video resolution in WIDTHxHEIGHT format (e.g., 1920x1080).", + "required": true, + "defaultValue": "1920x1080" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frame rate of the output video in frames per second (fps).", + "required": false, + "defaultValue": "30" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The container format of the output video file (e.g., mp4, mov, mkv).", + "required": true, + "defaultValue": "mp4" + }, + { + "name": "bitrate", + "type": "string", + "description": "Target video bitrate for encoding (e.g., 5M for 5 Mbps).", + "required": false, + "defaultValue": "5M" + }, + { + "name": "audioEnabled", + "type": "boolean", + "description": "Whether to include audio tracks in the output video.", + "required": false, + "defaultValue": "true" + }, + { + "name": "audioBitrate", + "type": "string", + "description": "Target audio bitrate for encoding (e.g., 192k).", + "required": false, + "defaultValue": "192k" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color code (hex or named) used when rendering images or text with transparency.", + "required": false, + "defaultValue": "black" + } + ], + "returns": { + "type": "object", + "description": "An object containing the path or URL to the rendered video file and metadata such as duration, resolution, and size." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a finalized video product from various multimedia inputs with specified output settings, such as creating promotional videos, tutorials, or social media content. It orchestrates rendering, encoding, and composition into a single shareable video file.", + "limitations": "This tool does not perform advanced video editing effects like 3D animations, real-time interactive content, or AI-driven content generation; it renders based on provided source assets and simple transformations.", + "examples": [ + "Create a 30-second promotional video compiling images and voiceover audio at 1080p resolution.", + "Generate a social media clip with text overlays and background music at 720p, 24 fps.", + "Render a recorded lecture video by combining video footage, presentation slides, and recorded audio into a single 1080p mp4 file." + ] + }, + "tags": [ + "video", + "rendering", + "content-creation", + "media", + "encoding", + "multimedia" + ], + "examples": [ + { + "inputJson": "{\"sources\":[{\"type\":\"image\",\"path\":\"/assets/image1.png\",\"duration\":5},{\"type\":\"video\",\"path\":\"/assets/clip1.mp4\",\"start\":0,\"end\":10},{\"type\":\"text\",\"content\":\"Welcome to our tutorial\",\"start\":0,\"end\":5,\"position\":\"bottom\"},{\"type\":\"audio\",\"path\":\"/assets/voiceover.mp3\",\"start\":0}],\"resolution\":\"1920x1080\",\"frameRate\":30,\"outputFormat\":\"mp4\",\"bitrate\":\"5M\",\"audioEnabled\":true,\"audioBitrate\":\"192k\",\"backgroundColor\":\"#FFFFFF\"}", + "description": "Render a 10-second video combining images, a video clip, text overlay, and voiceover audio into a 1080p mp4 file." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Video", + "context": null + } + }, + { + "name": "content-creation.renderDiagram", + "description": "Renders a visual diagram image from structured diagram data provided in JSON or Graphviz DOT format. Processes the input to generate a PNG or SVG output depicting flowcharts, UML diagrams, or network graphs according to the specified style and layout options.", + "category": "content-creation", + "parameters": [ + { + "name": "diagramData", + "type": "string", + "description": "The structured diagram input in JSON or Graphviz DOT format defining nodes, edges, and layout.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output image format: 'png' or 'svg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "style", + "type": "object", + "description": "Optional styling options such as colors, fonts, and line styles.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered diagram image as a base64 encoded string and its MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate visual diagram representations from structured data inputs for documentation, presentations, or UI previews. It helps transform raw diagram specifications into graphical images in common formats.", + "limitations": "Does not support interactive or animated diagrams. Complex or very large diagrams may be rendered with simplified layouts. Input must be valid JSON or Graphviz DOT syntax; invalid inputs will cause errors.", + "examples": [ + "Render a flowchart diagram described in JSON to PNG for embedding in a report.", + "Generate an SVG UML class diagram from a Graphviz DOT format string.", + "Create a network graph image with custom colors and font styles from JSON input." + ] + }, + "tags": [ + "rendering", + "diagram", + "visualization", + "flowchart", + "uml", + "graph", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"diagramData\":\"{\\\"nodes\\\":[{\\\"id\\\":\\\"A\\\",\\\"label\\\":\\\"Start\\\"},{\\\"id\\\":\\\"B\\\",\\\"label\\\":\\\"End\\\"}],\\\"edges\\\":[{\\\"from\\\":\\\"A\\\",\\\"to\\\":\\\"B\\\"}]}\",\"format\":\"png\",\"width\":600,\"height\":400}", + "description": "Render a simple flowchart diagram from JSON to PNG image." + }, + { + "inputJson": "{\"diagramData\":\"digraph G { A -> B; B -> C; C -> A; }\",\"format\":\"svg\"}", + "description": "Generate a circular graph diagram in SVG format from Graphviz DOT input." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Diagram", + "context": null + } + }, + { + "name": "content-creation.renderFile", + "description": "Renders a multimedia or document file from an input source with optional transformations. Accepts file content as base64 string or URL, processes rendering options like format conversion, resizing, and optimization, and outputs the rendered file as a base64 encoded string or downloadable link.", + "category": "content-creation", + "parameters": [ + { + "name": "inputSource", + "type": "string", + "description": "Base64 encoded file content or URL of the source file to render", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format (e.g., png, jpeg, mp4, pdf)", + "required": false, + "defaultValue": "png" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Optional width to resize the output file in pixels (for images/video)", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Optional height to resize the output file in pixels (for images/video)", + "required": false, + "defaultValue": "" + }, + { + "name": "optimize", + "type": "boolean", + "description": "Whether to apply optimization/compression to reduce file size", + "required": false, + "defaultValue": "false" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color to apply when rendering images with transparency (hex code)", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "outputType", + "type": "string", + "description": "Output type: 'base64' for encoded string, or 'downloadLink' for a URL to download the rendered file", + "required": false, + "defaultValue": "base64" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered file as a base64 string or a downloadable URL, along with metadata such as file size and format" + }, + "aiAgent": { + "useCase": "This tool is used when an agent needs to process and generate a specific file format from given input, optionally resizing or optimizing media files for better delivery or compatibility. It is suitable for preparing images, videos, or documents for display, download, or further processing.", + "limitations": "Does not support complex video editing or multi-page document rendering beyond format conversion and resizing. Large files may require asynchronous processing or external services.", + "examples": [ + "Render an input PNG image from a base64 string to a JPEG resized to 800x600 with optimization enabled.", + "Render a PDF document provided via URL to a base64 encoded PNG thumbnail image.", + "Convert an MP4 video URL to a smaller MP4 file with reduced resolution for mobile use." + ] + }, + "tags": [ + "rendering", + "file-processing", + "media", + "image", + "video", + "document", + "conversion", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"inputSource\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"outputFormat\":\"jpeg\",\"resizeWidth\":800,\"resizeHeight\":600,\"optimize\":true,\"outputType\":\"base64\"}", + "description": "Convert a base64 encoded PNG image to optimized JPEG resized to 800x600." + }, + { + "inputJson": "{\"inputSource\":\"https://example.com/sample.pdf\",\"outputFormat\":\"png\",\"resizeWidth\":200,\"resizeHeight\":258,\"optimize\":false,\"outputType\":\"downloadLink\"}", + "description": "Render the first page of a PDF from URL to a PNG image with specified size, no optimization, returning a download link." + }, + { + "inputJson": "{\"inputSource\":\"https://example.com/video.mp4\",\"outputFormat\":\"mp4\",\"resizeWidth\":480,\"resizeHeight\":270,\"optimize\":true,\"outputType\":\"base64\"}", + "description": "Download and resize an MP4 video from a URL to 480x270 pixels with optimization, returning base64 encoded output." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "content-creation.renderImage", + "description": "Renders a high-quality image based on specified parameters such as dimensions, background color, optional text with styling, and optional overlay graphics. Accepts structured input to produce a PNG or JPEG image output suitable for digital content creation and display.", + "category": "content-creation", + "parameters": [ + { + "name": "width", + "type": "number", + "description": "Width of the output image in pixels.", + "required": true, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output image in pixels.", + "required": true, + "defaultValue": "" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the image in hex or CSS color format (e.g., '#FFFFFF' or 'transparent').", + "required": false, + "defaultValue": "white" + }, + { + "name": "text", + "type": "string", + "description": "Optional text to render centered on the image.", + "required": false, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for the optional text.", + "required": false, + "defaultValue": "24" + }, + { + "name": "fontColor", + "type": "string", + "description": "Font color for the text in hex or CSS color format.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "overlayImageUrl", + "type": "string", + "description": "Optional URL of an overlay image to place centered on top of the background.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format: 'png' or 'jpeg'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a base64-encoded string of the rendered image and its MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create customized images for digital content, such as social media posts, banners, or placeholders. It is ideal when inputs specify image size, colors, text content, styling, and optional overlays, and quick generation of image data URI is required.", + "limitations": "This tool cannot generate complex graphic designs, detailed illustrations, or photos. It only supports basic rendering of plain backgrounds, centered text, and single overlay images with no advanced graphics manipulation.", + "examples": [ + "Generate a 800x600 banner image with a blue background and white centered text reading 'Welcome!'", + "Create a 400x400 transparent image with an overlay logo image URL in PNG format.", + "Render a 1080x1080 social media post with black text 'Sale 50%' in red font color on a yellow background as JPEG output." + ] + }, + "tags": [ + "image", + "render", + "content-creation", + "graphics", + "text", + "overlay", + "digital-media" + ], + "examples": [ + { + "inputJson": "{\"width\":800,\"height\":600,\"backgroundColor\":\"#0000FF\",\"text\":\"Welcome!\",\"fontSize\":48,\"fontColor\":\"#FFFFFF\",\"outputFormat\":\"png\"}", + "description": "Render a blue 800x600 image with white 'Welcome!' text centered." + }, + { + "inputJson": "{\"width\":400,\"height\":400,\"backgroundColor\":\"transparent\",\"overlayImageUrl\":\"https://example.com/logo.png\"}", + "description": "Render a 400x400 transparent image with a centered overlay image from URL." + }, + { + "inputJson": "{\"width\":1080,\"height\":1080,\"backgroundColor\":\"#FFFF00\",\"text\":\"Sale 50%\",\"fontSize\":64,\"fontColor\":\"#FF0000\",\"outputFormat\":\"jpeg\"}", + "description": "Create a 1080x1080 yellow background JPEG with red 'Sale 50%' text centered." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "content-creation.renderBrief", + "description": "Generates a concise, structured brief document from provided textual inputs such as project goals, audience details, and key messages. Processes the input by organizing content into sections like overview, objectives, target audience, and deliverables, then outputs a formatted text brief suitable for stakeholder communication or project kickoff.", + "category": "content-creation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or headline for the brief document.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectSummary", + "type": "string", + "description": "A short summary or background of the project to include in the brief.", + "required": true, + "defaultValue": "" + }, + { + "name": "objectives", + "type": "array", + "description": "A list of specific objectives or goals the project aims to achieve.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or stakeholders for the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMessages", + "type": "array", + "description": "Essential messages or points that should be conveyed in the brief.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deliverables", + "type": "array", + "description": "List of expected deliverables or outputs associated with the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone for the brief text, e.g., formal, casual, persuasive.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted brief text with sections such as title, overview, objectives, audience, key messages, and deliverables." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a clear, structured project brief from raw inputs describing goals, audience, and deliverables. It is useful for synthesizing scattered information into a professional summary for meetings, proposals, or documentation. It helps ensure all critical aspects of a project are captured in an organized way.", + "limitations": "Cannot generate detailed creative content or extensive reports beyond a concise summary. Does not include visual design or formatting beyond text arrangement. Requires clear input data to produce coherent output.", + "examples": [ + "Create a project brief with goals and audience for a new marketing campaign.", + "Generate a concise brief summarizing client requirements and deliverables for internal review.", + "Produce a formal brief outlining objectives and key messages for a technology rollout." + ] + }, + "tags": [ + "content-creation", + "brief", + "document", + "summary", + "project-management", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Marketing Campaign Brief\",\"projectSummary\":\"Launch of the new summer collection.\",\"objectives\":[\"Increase brand awareness\",\"Drive online sales\"],\"targetAudience\":\"Young adults aged 18-30 interested in fashion.\",\"keyMessages\":[\"Trendy and affordable\",\"Limited time offer\"],\"deliverables\":[\"Social media ads\",\"Email newsletter\"],\"tone\":\"formal\"}", + "description": "Generating a formal brief summarizing a marketing campaign's goals and target demographics." + }, + { + "inputJson": "{\"title\":\"Internal Project Kickoff\",\"projectSummary\":\"Development of the new mobile app.\",\"objectives\":[\"Complete MVP by Q3\",\"Ensure user-friendly interface\"],\"targetAudience\":\"Internal stakeholders and development team.\",\"keyMessages\":[],\"deliverables\":[\"Prototype\",\"Testing report\"],\"tone\":\"casual\"}", + "description": "Producing an internal brief to align team members on key project objectives and deliverables." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Brief", + "context": null + } + }, + { + "name": "content-creation.renderAudio", + "description": "Renders an audio file from given textual script and optional voice parameters. Accepts a text script or phonetic input, voice settings such as language, gender, and speed, then processes the input to synthesize and generate an audio file in the requested format (e.g., MP3, WAV). Outputs a downloadable audio file URL or binary data.", + "category": "content-creation", + "parameters": [ + { + "name": "script", + "type": "string", + "description": "The textual content or script to convert into speech audio.", + "required": true, + "defaultValue": "" + }, + { + "name": "voiceLanguage", + "type": "string", + "description": "Language code (e.g., 'en-US') specifying the language of the voice.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "voiceGender", + "type": "string", + "description": "Preferred gender of the synthesized voice, e.g., 'male', 'female', or 'neutral'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "speed", + "type": "number", + "description": "Speech speed rate; typical range 0.5 (slow) to 2.0 (fast).", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Output audio format such as 'mp3', 'wav', or 'ogg'.", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Sample rate of generated audio in Hz, e.g., 22050, 44100.", + "required": false, + "defaultValue": "44100" + }, + { + "name": "includeSilenceAtStartEnd", + "type": "boolean", + "description": "Whether to include short silence padding at beginning and end of audio for smoother playback.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the audio file URL or base64 encoded binary data, audio metadata such as duration and format." + }, + "aiAgent": { + "useCase": "Use this tool when generating speech audio from text for applications like podcasts, voiceovers, accessibility, or interactive voice response systems. It is ideal for converting any textual content into natural-sounding audio output with customizable voice parameters.", + "limitations": "Cannot generate audio from raw music notation or non-textual sound sources. Quality depends on underlying TTS engine; may not handle very long texts without segmentation. Does not support real-time audio streaming.", + "examples": [ + "Generate an English female voice MP3 file reading a short product description.", + "Create a slow male voice WAV file from a customer support script in Spanish.", + "Produce a neutral voice OGG audio for website accessibility announcements." + ] + }, + "tags": [ + "text-to-speech", + "audio-synthesis", + "content-creation", + "voice-generation", + "media", + "tts" + ], + "examples": [ + { + "inputJson": "{\"script\":\"Welcome to our website! We hope you enjoy your visit.\",\"voiceLanguage\":\"en-US\",\"voiceGender\":\"female\",\"speed\":1.0,\"audioFormat\":\"mp3\"}", + "description": "Generate a female US English voice speaking a welcome message as MP3." + }, + { + "inputJson": "{\"script\":\"Gracias por contactarnos. Su solicitud será atendida pronto.\",\"voiceLanguage\":\"es-ES\",\"voiceGender\":\"male\",\"speed\":0.9,\"audioFormat\":\"wav\"}", + "description": "Generate a male Spanish voice reading a customer service message slowly in WAV format." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Audio", + "context": null + } + }, + { + "name": "content-creation.renderDocument", + "description": "Generates a formatted document file from input content provided as text or structured data. Supports input in markdown or HTML and renders output as PDF, DOCX, or HTML file. Applies optional styling including templates and custom CSS. Produces a downloadable document with the rendered content-ready for sharing or printing.", + "category": "content-creation", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main document content to render, can be in markdown or HTML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input content; allowed values are 'markdown' or 'html'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format: 'pdf', 'docx', or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to include in the rendered document's metadata or header.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author metadata to embed in the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "If true and output supports it, include a table of contents generated from headings.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customCss", + "type": "string", + "description": "Optional custom CSS styles to apply when rendering HTML and PDF outputs.", + "required": false, + "defaultValue": "" + }, + { + "name": "templateName", + "type": "string", + "description": "Optional named template to apply for consistent styling and layout, if supported.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with a base64-encoded string of the rendered document file and metadata." + }, + "aiAgent": { + "useCase": "Use this tool to convert raw text or structured content into polished, formatted document files in PDF, DOCX, or HTML formats, especially when styling and metadata are needed for professional sharing, printing, or archiving.", + "limitations": "Does not support complex interactive elements or embedded multimedia beyond what markdown/HTML can represent. Document templates must be predefined in the system; custom template uploading is not supported.", + "examples": [ + "Render a markdown blog post into a PDF with a title and author metadata.", + "Convert HTML-formatted content into a DOCX file with a custom CSS style applied.", + "Generate an HTML document including a table of contents from markdown input." + ] + }, + "tags": [ + "document", + "rendering", + "pdf", + "docx", + "html", + "content-creation", + "formatting", + "export" + ], + "examples": [ + { + "inputJson": "{\"content\":\"# Report\\nThis is the first section.\\n\\n## Subsection\\nDetails go here.\",\"inputFormat\":\"markdown\",\"outputFormat\":\"pdf\",\"title\":\"Monthly Report\",\"author\":\"Alice Smith\",\"includeTableOfContents\":true}", + "description": "Render markdown content with headings and a table of contents into a PDF document titled 'Monthly Report' authored by Alice Smith." + }, + { + "inputJson": "{\"content\":\"

Project Plan

Outline of project milestones.

\",\"inputFormat\":\"html\",\"outputFormat\":\"docx\",\"title\":\"Project Plan\",\"author\":\"Bob Lee\",\"customCss\":\"body { font-family: Arial; }\"}", + "description": "Convert simple HTML content to a DOCX file with custom font styling and metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "content-creation.renderReport", + "description": "Generates a formatted report document based on provided data and templates. Accepts raw data inputs and optional style or layout configurations, processes this information by populating templates, and outputs a structured report in PDF, HTML, or TXT format suitable for presentations, archives, or sharing.", + "category": "content-creation", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The raw input data to be included and visualized in the report, such as statistics, tables, or content sections.", + "required": true, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "Identifier or content of the report template defining the layout and formatting to apply when rendering the report.", + "required": false, + "defaultValue": "default" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired format of the output report document. Supported formats include 'PDF', 'HTML', and 'TXT'.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to use for the report's main header or cover page.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Determines whether to automatically generate and include a table of contents based on sections in the report data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to display in the report metadata or footer section.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered report as a base64-encoded string along with metadata such as MIME type, file extension, and summary information." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a professional, structured report document from raw data or analytical content, enabling formatted output in common document file types for sharing, archiving, or presentation. Ideal for automating report generation pipelines or enhancing content creation workflows.", + "limitations": "Cannot generate interactive or dynamic reports beyond the specified static formats; complex visualizations require pre-processing before input; relies on existing template definitions or simple default layouts.", + "examples": [ + "Generate a quarterly sales report in PDF with a table of contents and custom title.", + "Create a simple report in HTML from given statistics data without author information.", + "Produce a plain text report summarizing input content using the default template." + ] + }, + "tags": [ + "content creation", + "document generation", + "reporting", + "rendering", + "PDF", + "HTML", + "TXT", + "automation" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"summary\":\"Sales increased by 15% compared to last quarter.\",\"sections\":[{\"title\":\"Overview\",\"content\":\"Overall sales growth was strong.\"},{\"title\":\"Details\",\"content\":\"Top products: A, B, and C.\"}]},\"template\":\"modern\",\"outputFormat\":\"PDF\",\"title\":\"Quarterly Sales Report\",\"includeTableOfContents\":true,\"author\":\"Jane Doe\"}", + "description": "Generate a PDF quarterly sales report with a table of contents, using 'modern' template and specified author." + }, + { + "inputJson": "{\"data\":{\"summary\":\"Monthly website traffic summary.\",\"sections\":[{\"title\":\"Traffic Overview\",\"content\":\"Visits increased by 10%.\"},{\"title\":\"Source Breakdown\",\"content\":\"Majority from organic search.\"}]},\"outputFormat\":\"HTML\",\"includeTableOfContents\":false}", + "description": "Create an HTML report summarizing monthly website traffic without table of contents." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "content-creation.renderSummary", + "description": "This tool accepts a textual document or multiple documents as input and generates a coherent, concise summary capturing the main points. It processes the input text using natural language understanding and summarization techniques and outputs a brief text summary that aids quick comprehension of the content.", + "category": "content-creation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The main textual content to be summarized. This can be a document, article, or any text input.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired approximate length of the summary in number of sentences. Defaults to 3.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input text and summary output, e.g., 'en' for English. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "If true, the summary will include key highlighted phrases for emphasis. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and optional highlights if requested." + }, + "aiAgent": { + "useCase": "Use this tool when a concise summary of longer textual content is needed to enable faster understanding or decision-making. It is suitable for digesting articles, reports, emails, or multiple documents, especially when screening large volumes of text.", + "limitations": "This tool cannot interpret non-textual data (images, tables). The summary quality depends on input clarity and may omit nuanced details. It is not a substitute for full comprehensive reading.", + "examples": [ + "Summarize this 1000-word article into 3 sentences.", + "Generate a brief summary highlighting key points from this product manual.", + "Produce an English summary of this French document using about 5 sentences." + ] + }, + "tags": [ + "content-creation", + "summary", + "text-processing", + "natural-language", + "document", + "readability" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"The quarterly financial report indicates a steady increase in revenue across all sectors, particularly in e-commerce and cloud services. Expenses remained stable, with notable investments in research and development helping fuel innovation. Market analysts expect continued growth in the next fiscal quarter as new products are launched.\",\"summaryLength\":3,\"language\":\"en\",\"includeHighlights\":true}", + "description": "Summarizes a business report highlighting revenue growth and investments." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "content-creation.formatReference", + "description": "Formats a bibliographic reference provided as structured data or plain text into a specified citation style (e.g., APA, MLA, Chicago). Accepts input as an object containing reference fields or raw reference string, processes the input according to the style rules, and outputs a properly formatted citation string.", + "category": "content-creation", + "parameters": [ + { + "name": "referenceData", + "type": "object", + "description": "Structured object representing bibliographic reference details such as author, title, year, publisher, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceString", + "type": "string", + "description": "Raw reference text input to be formatted; used if structured data is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style format to apply (e.g., 'APA', 'MLA', 'Chicago').", + "required": true, + "defaultValue": "APA" + }, + { + "name": "includeDOI", + "type": "boolean", + "description": "Whether to include the DOI or URL in the formatted reference when available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for localized formatting rules (e.g., 'en', 'fr').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted reference string and metadata about the formatting." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert bibliographic reference data or strings into a specific citation style for inclusion in academic, professional, or publishing contexts. It automates consistent formatting to save time and reduce errors.", + "limitations": "Does not perform fuzzy parsing or extraction from unstructured source documents; input must be clean and complete. Limited to style guidelines supported in the implementation; complex corner cases of citation standards may not be fully handled.", + "examples": [ + "Format a book reference from structured data into MLA style.", + "Convert a raw reference string to APA formatted citation.", + "Include DOI information automatically if available in the reference object." + ] + }, + "tags": [ + "citation", + "bibliography", + "formatting", + "reference", + "academic", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"referenceData\":{\"author\":\"Jane Doe\",\"title\":\"Understanding AI\",\"year\":2021,\"publisher\":\"TechPress\"},\"citationStyle\":\"APA\",\"includeDOI\":false}", + "description": "Format a book reference from structured data into APA style without a DOI." + }, + { + "inputJson": "{\"referenceString\":\"Doe, J. (2021). Understanding AI. TechPress.\",\"citationStyle\":\"MLA\"}", + "description": "Format a raw reference string into MLA citation style." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Reference", + "context": null + } + }, + { + "name": "content-creation.formatCitation", + "description": "Formats bibliographic citation data into a specified citation style such as APA, MLA, or Chicago. It accepts structured citation details including author names, publication title, date, and other relevant fields, then outputs a properly formatted citation string ready for use in academic or professional documents.", + "category": "content-creation", + "parameters": [ + { + "name": "citationData", + "type": "object", + "description": "Structured object containing citation details such as authors, title, publisher, year, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Target citation style (e.g., 'APA', 'MLA', 'Chicago'). Determines formatting rules applied.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDOI", + "type": "boolean", + "description": "Whether to include the DOI in the formatted citation if available in citationData.", + "required": false, + "defaultValue": "true" + }, + { + "name": "capitalizeTitle", + "type": "boolean", + "description": "Whether to apply title case capitalization to the title field as per style guidelines.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'formattedCitation' string field, which has the citation formatted according to the specified style." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to generate correctly formatted bibliographic citations from raw citation data for academic, publishing, or professional content creation tasks. It helps automate citation formatting to comply with style guides, reducing manual effort and errors.", + "limitations": "This tool cannot verify the correctness or completeness of citation data provided. It only formats given data according to style rules; it does not fetch missing citation metadata or validate sources.", + "examples": [ + "Format a citation in APA style for a journal article", + "Generate an MLA style citation including DOI for a book", + "Create a Chicago style citation with title capitalization for a conference paper" + ] + }, + "tags": [ + "citation", + "formatting", + "bibliography", + "academic", + "style-guide", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"citationData\":{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Exploring the Cosmos\",\"year\":2021,\"journal\":\"Astrophysics Today\",\"volume\":42,\"issue\":7,\"pages\":\"100-120\",\"doi\":\"10.1234/astro.2021.007\"},\"style\":\"APA\",\"includeDOI\":true,\"capitalizeTitle\":true}", + "description": "Format a journal article citation in APA style including DOI" + }, + { + "inputJson": "{\"citationData\":{\"authors\":[\"Brown, Alice\"],\"title\":\"History of Art\",\"publisher\":\"ArtPress\",\"year\":2018,\"location\":\"New York\"},\"style\":\"MLA\",\"includeDOI\":false,\"capitalizeTitle\":false}", + "description": "Format a book citation in MLA style without including DOI and without title capitalization" + }, + { + "inputJson": "{\"citationData\":{\"authors\":[\"Lee, Kevin\"],\"title\":\"Advances in Robotics\",\"conference\":\"International Robotics Conference\",\"year\":2023,\"pages\":\"50-60\"},\"style\":\"Chicago\",\"includeDOI\":false,\"capitalizeTitle\":true}", + "description": "Format a conference paper citation in Chicago style with title capitalization" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Citation", + "context": null + } + }, + { + "name": "content-creation.formatQuote", + "description": "Formats a given quote text with optional attributes such as author name, source, citation style, and desired text formatting (e.g., bold, italic). Accepts raw quote and metadata, processes formatting rules, and outputs the quote as a styled string suitable for display or publication.", + "category": "content-creation", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The main textual content of the quote to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author of the quote, if known, to include as attribution.", + "required": false, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Source of the quote, such as book, speech, or article title, for citation purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style for formatting the source reference (e.g., APA, MLA, Chicago).", + "required": false, + "defaultValue": "APA" + }, + { + "name": "textFormatting", + "type": "array", + "description": "Array of text formatting options to apply to the quote, e.g., ['bold', 'italic'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeQuotationMarks", + "type": "boolean", + "description": "Whether to surround the quote text with quotation marks.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the formatted quote: plain text, HTML, or markdown.", + "required": false, + "defaultValue": "plain" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted quote string under 'formattedQuote' key and metadata fields for author and source if provided." + }, + "aiAgent": { + "useCase": "Use this tool when you need to present quotes in a consistent, styled manner including author and source attribution, formatted according to citation standards and output format preferences. Ideal for article drafting, content publishing, and educational material generation.", + "limitations": "This tool formats quotes only and does not perform quote extraction, verification, or fact-checking. It cannot generate citations beyond formatting author and source strings provided.", + "examples": [ + "Format a quote with author and source using APA style in markdown.", + "Generate a bolded, italicized quote text with quotation marks included.", + "Produce plain text quote output without any author attribution." + ] + }, + "tags": [ + "content-creation", + "formatting", + "quotes", + "text-styling", + "citation", + "publishing" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"To be, or not to be, that is the question.\",\"authorName\":\"William Shakespeare\",\"source\":\"Hamlet\",\"citationStyle\":\"MLA\",\"textFormatting\":[\"italic\"],\"includeQuotationMarks\":true,\"outputFormat\":\"markdown\"}", + "description": "Format a Shakespeare quote in MLA style with italic text and quotation marks in markdown output." + }, + { + "inputJson": "{\"quoteText\":\"Life is what happens when you're busy making other plans.\",\"authorName\":\"John Lennon\",\"includeQuotationMarks\":false,\"outputFormat\":\"plain\"}", + "description": "Format a plain text quote from John Lennon without quotation marks or source." + }, + { + "inputJson": "{\"quoteText\":\"Imagination is more important than knowledge.\",\"textFormatting\":[\"bold\"],\"outputFormat\":\"html\"}", + "description": "Format a quote with bold text and HTML output, no author or source included." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Quote", + "context": null + } + }, + { + "name": "content-creation.formatLink", + "description": "Formats a given URL string into various hyperlink styles suitable for digital content, such as Markdown, HTML anchor tags, and plain text with optional display text. Accepts raw URLs and optional parameters for display text and format type; outputs the correctly formatted link string.", + "category": "content-creation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The raw URL string to be formatted into a hyperlink.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "Optional text to display instead of the raw URL. If empty, the URL itself is used as the display text.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "The desired output format of the link: markdown, html, or plainText.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "For HTML format, whether to include target='_blank' attribute to open the link in a new browser tab.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted link as a string under 'formattedLink' property." + }, + "aiAgent": { + "useCase": "Use when needing to convert raw URLs into properly formatted hyperlink strings for various content formats, enhancing readability and usability of links in generated digital content such as markdown documents, HTML pages, or plain text contexts.", + "limitations": "Does not validate the URL's reachability or safety; does not generate QR codes or link previews; limited to formatting links only, no URL shortening or metadata fetching.", + "examples": [ + "Format a raw URL as a Markdown link with display text", + "Generate an HTML anchor tag that opens the link in a new tab", + "Output a plain text string showing the URL with display text" + ] + }, + "tags": [ + "formatting", + "link", + "url", + "content-creation", + "markdown", + "html" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"Example Site\",\"formatType\":\"markdown\"}", + "description": "Format a URL into a markdown link with custom display text." + }, + { + "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"Visit Example\",\"formatType\":\"html\",\"openInNewTab\":true}", + "description": "Format a URL into an HTML anchor tag that opens in a new tab." + }, + { + "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"\",\"formatType\":\"plainText\"}", + "description": "Show the URL as plain text with no display text specified, defaults to the URL itself." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "content-creation.formatSentence", + "description": "This tool takes a raw sentence as input and formats it according to specified stylistic and grammatical rules, such as capitalization style, punctuation adjustment, and trimming whitespace. It produces a clean, properly formatted sentence output suitable for polished content creation.", + "category": "content-creation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The raw sentence text to format. Required for processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeStyle", + "type": "string", + "description": "Defines capitalization style: 'none', 'sentenceCase', 'titleCase', or 'uppercase'.", + "required": false, + "defaultValue": "sentenceCase" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "ensureEndingPunctuation", + "type": "boolean", + "description": "Ensures the sentence ends with appropriate punctuation (., !, ?).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted sentence string." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw sentence text that needs consistent formatting such as adjusting capitalization styles, cleaning up whitespace, and ensuring proper sentence-ending punctuation. It is ideal when preparing text content for presentation, publishing, or readability enhancement.", + "limitations": "This tool does not perform semantic corrections or grammar checking beyond basic punctuation and capitalization. It also does not translate or paraphrase content.", + "examples": [ + "Format a user input sentence to title case with proper punctuation.", + "Clean up a sentence with excessive whitespace and inconsistent capitalization.", + "Ensure a given sentence ends with a punctuation mark and is trimmed for whitespace." + ] + }, + "tags": [ + "formatting", + "text", + "content-creation", + "sentence", + "capitalization", + "punctuation", + "whitespace" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\" this is a test sentence\",\"capitalizeStyle\":\"sentenceCase\",\"trimWhitespace\":true,\"ensureEndingPunctuation\":true}", + "description": "Formats a sentence with sentence case capitalization, trims whitespace, and ensures ending punctuation." + }, + { + "inputJson": "{\"sentence\":\"welcome to the jungle\",\"capitalizeStyle\":\"titleCase\",\"trimWhitespace\":false,\"ensureEndingPunctuation\":true}", + "description": "Formats input sentence to title case and ensures it ends with punctuation but does not trim whitespace." + }, + { + "inputJson": "{\"sentence\":\"HELLO WORLD!\",\"capitalizeStyle\":\"none\",\"trimWhitespace\":true,\"ensureEndingPunctuation\":false}", + "description": "Keeps original capitalization, trims whitespace, and does not alter ending punctuation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "content-creation.formatHeading", + "description": "Formats a given text string as a heading with specified level and style. Accepts plain text input and returns a string formatted as a heading in Markdown, HTML, or plain text with optional capitalization and prefix symbols.", + "category": "content-creation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content of the heading to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "The heading level (e.g., 1 for top-level heading, up to 6).", + "required": false, + "defaultValue": "1" + }, + { + "name": "format", + "type": "string", + "description": "The output format: 'markdown', 'html', or 'plain'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "Whether to capitalize the heading text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "prefixSymbol", + "type": "string", + "description": "Optional symbol prefix for plain text format headings (e.g., '*', '-', '#'). Ignored in markdown and html formats.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string under the key 'formattedHeading'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate headings in consistent, customizable formats for documents, web pages, or markdown files. It simplifies heading level styling and format conversion for content creation workflows.", + "limitations": "Cannot interpret or parse existing formatted headings; only formats plain text input as a heading. Does not support advanced styling such as colors or fonts.", + "examples": [ + "Format heading text 'Project Overview' as a Markdown h2 heading.", + "Generate an HTML h3 heading from text 'Introduction' with capitalization.", + "Create a plain text heading with a '#' prefix symbol for level 1." + ] + }, + "tags": [ + "content", + "formatting", + "heading", + "markdown", + "html", + "text", + "capitalization" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Project Overview\",\"level\":2,\"format\":\"markdown\"}", + "description": "Formats 'Project Overview' as a level 2 Markdown heading." + }, + { + "inputJson": "{\"text\":\"Introduction\",\"level\":3,\"format\":\"html\",\"capitalize\":true}", + "description": "Formats 'Introduction' as an HTML h3 heading with capitalization." + }, + { + "inputJson": "{\"text\":\"Summary\",\"level\":1,\"format\":\"plain\",\"prefixSymbol\":\"#\"}", + "description": "Formats 'Summary' as a plain text level 1 heading with # prefix symbol." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Heading", + "context": null + } + }, + { + "name": "content-creation.formatText", + "description": "Formats input text according to specified styling options such as line width, indentation, text case, and bullet list style. Accepts raw string input and outputs a formatted string that adheres to the given parameters, improving readability and consistency for digital content.", + "category": "content-creation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw input text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum number of characters per line; text will be wrapped accordingly.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to indent each line of the formatted text.", + "required": false, + "defaultValue": "0" + }, + { + "name": "textCase", + "type": "string", + "description": "Defines the case transformation to apply: 'none', 'uppercase', 'lowercase', or 'capitalize'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "bulletStyle", + "type": "string", + "description": "Style of bullet points to apply if text represents a list; options include '*', '-', '+', or none for no bullets.", + "required": false, + "defaultValue": "*" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, leading/trailing whitespace is trimmed from each line.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object with a single 'formattedText' property containing the fully formatted string output." + }, + "aiAgent": { + "useCase": "Use this tool when needing to consistently format raw textual content for improved readability, such as preparing paragraphs for display, creating bullet lists, setting indentation levels for code or prose, or converting text case for uniformity in content creation workflows.", + "limitations": "This tool does not perform semantic text corrections, grammar checking, or complex markdown transformations beyond basic bullet styling and case conversion.", + "examples": [ + "Format a paragraph to 60 characters wide with indentation of 4 spaces.", + "Convert input text to uppercase with no indentation, wrapping lines at 70 characters.", + "Create a bulleted list from input text lines using '+' as bullet character." + ] + }, + "tags": [ + "formatting", + "text-processing", + "content-creation", + "text-style", + "wrapping", + "indentation", + "case-conversion", + "bullets" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is an example paragraph of text that will be formatted by wrapping lines and indenting.\",\"lineWidth\":50,\"indentation\":2,\"textCase\":\"none\",\"bulletStyle\":\"none\",\"trimWhitespace\":true}", + "description": "Format paragraph with line width 50 and indent 2 spaces." + }, + { + "inputJson": "{\"text\":\"hello world! this should be uppercase.\",\"textCase\":\"uppercase\"}", + "description": "Convert text to uppercase with default formatting." + }, + { + "inputJson": "{\"text\":\"Item one\\nItem two\\nItem three\",\"bulletStyle\":\"-\",\"indentation\":4}", + "description": "Format a bulleted list with '-' bullets and indentation of 4 spaces." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "content-creation.formatParagraph", + "description": "Formats a given paragraph of text according to specified style rules including alignment, indentation, line spacing, and font attributes. Accepts raw paragraph text and formatting options, processes these options, and outputs the formatted paragraph as a styled string or markup object.", + "category": "content-creation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "alignment", + "type": "string", + "description": "Paragraph alignment style: 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "lineSpacing", + "type": "number", + "description": "Line spacing multiplier for the paragraph (e.g., 1.0 for single-spaced, 1.5 for one-and-a-half).", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "indentation", + "type": "number", + "description": "Indentation in spaces or pixels for the first line of the paragraph.", + "required": false, + "defaultValue": "0" + }, + { + "name": "fontName", + "type": "string", + "description": "Font family name to apply to the paragraph text (e.g., 'Arial', 'Times New Roman').", + "required": false, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in points to use for the paragraph text.", + "required": false, + "defaultValue": "12" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to make the paragraph text bold.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to make the paragraph text italicized.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph as a styled HTML string or markup representation, including applied formatting properties." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically apply consistent paragraph formatting to text content for documents, reports, or UI displays. It standardizes text alignment, spacing, indentation, and font styling for improved readability and presentation. This is useful in content generation, document automation, or formatting user input.", + "limitations": "This tool does not perform grammar, spelling, or semantic editing; it only applies visual text formatting. It outputs markup or styled text but does not generate visual previews or handle multiple paragraphs at once.", + "examples": [ + "Format a paragraph with justified alignment, 1.5 line spacing, and indent the first line by 4 spaces.", + "Render text in bold italic Arial font, size 14, aligned center.", + "Apply single spacing and left alignment with no indentation to a blockquote paragraph." + ] + }, + "tags": [ + "formatting", + "text", + "paragraph", + "style", + "content-creation", + "typography" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph.\",\"alignment\":\"justify\",\"lineSpacing\":1.5,\"indentation\":4,\"fontName\":\"Times New Roman\",\"fontSize\":12,\"bold\":false,\"italic\":false}", + "description": "Format text with justified alignment, 1.5 line spacing, 4 space indentation, Times New Roman 12pt font." + }, + { + "inputJson": "{\"text\":\"Important note.\",\"alignment\":\"center\",\"lineSpacing\":1.0,\"indentation\":0,\"fontName\":\"Arial\",\"fontSize\":14,\"bold\":true,\"italic\":true}", + "description": "Center aligned, bold italic Arial font, size 14 text with no indentation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "content-creation.formatWord", + "description": "Formats a single word according to the specified style and locale settings. Accepts a word string as input and applies formatting options such as capitalization style, case conversion, and locale-specific transformations, outputting the formatted word as a string.", + "category": "content-creation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The input word to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The formatting style to apply: 'uppercase', 'lowercase', 'capitalize', or 'titleCase'", + "required": false, + "defaultValue": "capitalize" + }, + { + "name": "locale", + "type": "string", + "description": "Optional BCP 47 language tag for locale-specific formatting rules (e.g., 'en-US', 'tr-TR')", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted word as a string under the key 'formattedWord'" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to apply consistent capitalization or locale-sensitive formatting to single words within larger text processing workflows, such as generating user-facing content or normalizing inputs.", + "limitations": "Does not handle multi-word phrases or complex linguistic transformations such as stemming or translation. Limited to simple case and capitalization formatting for single words.", + "examples": [ + "Format the word 'example' to uppercase.", + "Capitalize the word 'straße' using German locale.", + "Convert the word 'iPhone' to title case." + ] + }, + "tags": [ + "formatting", + "content-creation", + "word", + "text-processing", + "capitalization", + "locale" + ], + "examples": [ + { + "inputJson": "{\"word\":\"example\",\"formatStyle\":\"uppercase\",\"locale\":\"\"}", + "description": "Convert the word 'example' to uppercase." + }, + { + "inputJson": "{\"word\":\"straße\",\"formatStyle\":\"capitalize\",\"locale\":\"de-DE\"}", + "description": "Capitalize German word 'straße' with locale-aware formatting." + }, + { + "inputJson": "{\"word\":\"iPhone\",\"formatStyle\":\"titleCase\",\"locale\":\"en-US\"}", + "description": "Apply title case formatting to the word 'iPhone'." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "content-creation.formatYAML", + "description": "This tool accepts a YAML string input and reformats it for improved readability and consistency, applying proper indentation, spacing, and optional styling preferences. It outputs a well-formatted YAML string that adheres to best practices, suitable for configuration files, documentation, or data exchange.", + "category": "content-creation", + "parameters": [ + { + "name": "yamlInput", + "type": "string", + "description": "The raw YAML string to be formatted. Must be valid YAML syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for each indentation level. Typical is 2 or 4.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort mapping keys alphabetically for consistency.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line length before wrapping. Use 0 for no wrapping.", + "required": false, + "defaultValue": "80" + }, + { + "name": "useBlockStyle", + "type": "boolean", + "description": "Use block style for multiline strings instead of folded style.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted YAML string or error details if formatting failed. Contains 'formattedYAML' string and 'error' string if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize or beautify YAML content for readability, sharing, or version control. It's helpful for developers or systems exchanging YAML config files to ensure consistent formatting and style.", + "limitations": "This tool cannot validate or fix semantic errors in YAML content beyond syntactic correctness. It does not transform or interpret the data, only refactors formatting. Invalid YAML input will cause an error output.", + "examples": [ + "Format raw YAML input with default indentation and styles.", + "Format YAML content with 4 spaces indentation and sorted keys.", + "Format YAML without line wrapping and using folded style for multiline strings." + ] + }, + "tags": [ + "formatting", + "YAML", + "content-creation", + "code-formatting", + "configuration", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"yamlInput\":\"name:Test\\nage:30\\naddress:\\n city:New York\\n zip:10001\\n hobbies:\\n- reading\\n- hiking\",\"indentationSpaces\":2,\"sortKeys\":true,\"lineWidth\":80,\"useBlockStyle\":true}", + "description": "Format a YAML string with 2 spaces indentation and keys sorted alphabetically." + }, + { + "inputJson": "{\"yamlInput\":\"user:\\n name: Alice\\n occupation: Developer\\nnotes: |\\n Likes coding and reading\\n Enjoys hiking on weekends\",\"indentationSpaces\":4,\"sortKeys\":false,\"lineWidth\":0,\"useBlockStyle\":true}", + "description": "Format YAML with 4 spaces indentation, no line wrapping, and block style for multiline strings." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "YAML", + "context": null + } + }, + { + "name": "content-creation.formatMarkdown", + "description": "Formats raw text inputs into structured Markdown output. Accepts plain text or lightly structured content, applies specified Markdown formatting styles such as headings, lists, bold, italics, and code blocks, and returns well-formed Markdown text ready for rendering or saving.", + "category": "content-creation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw input text to be formatted into Markdown.", + "required": true, + "defaultValue": "" + }, + { + "name": "applyHeadings", + "type": "boolean", + "description": "Determines whether to detect and apply heading levels (e.g., #, ##) based on input markers or line patterns.", + "required": false, + "defaultValue": "true" + }, + { + "name": "convertLists", + "type": "boolean", + "description": "Whether to identify and format bullet or numbered lists from plain lines starting with list markers.", + "required": false, + "defaultValue": "true" + }, + { + "name": "emphasizeText", + "type": "boolean", + "description": "Apply bold or italic formatting to text between specific delimiters (e.g., * or _).", + "required": false, + "defaultValue": "true" + }, + { + "name": "codeBlockStyle", + "type": "string", + "description": "Type of code block to use for formatted code segments (e.g., fenced triple backticks or indented).", + "required": false, + "defaultValue": "fenced" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width for wrapping paragraphs to improve readability in raw Markdown.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted Markdown text string under 'markdown' key." + }, + "aiAgent": { + "useCase": "Use this tool when the input is unstructured or loosely formatted text that needs to be transformed into clean, standardized Markdown suitable for documentation, blogs, or notes. It helps automate consistent formatting to Markdown syntax to improve readability and enable further processing or rendering.", + "limitations": "Cannot fully interpret complex document structures or semantic meaning beyond basic formatting rules. Not a Markdown linter or style enforcer, nor does it generate Markdown from non-text content like images or tables unless expressed in text form.", + "examples": [ + "Format plain notes into Markdown headings and lists.", + "Convert text with inline bold and italic markers into proper Markdown syntax.", + "Wrap paragraphs to specified line width and format fenced code blocks for code snippets." + ] + }, + "tags": [ + "markdown", + "formatting", + "content-creation", + "text-processing", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Meeting Notes\\nDiscuss project timeline\\n* Task 1\\n* Task 2\\nUse *emphasis* and **strong** text.\",\"applyHeadings\":true,\"convertLists\":true,\"emphasizeText\":true,\"codeBlockStyle\":\"fenced\",\"lineWidth\":80}", + "description": "Formats meeting notes with headings, bullet lists, and emphasis into Markdown." + }, + { + "inputJson": "{\"text\":\"Sample code:\\nfunction greet() {\\n console.log(\\\"Hello World\\\");\\n}\",\"applyHeadings\":false,\"convertLists\":false,\"emphasizeText\":false,\"codeBlockStyle\":\"fenced\",\"lineWidth\":80}", + "description": "Formats a code snippet with fenced code blocks and no other Markdown formatting." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Markdown", + "context": null + } + }, + { + "name": "content-creation.formatTable", + "description": "Formats tabular data according to specified styling options. Accepts input as an array of objects or arrays representing rows, applies formatting such as column alignment, borders, header styles, and outputs the table as a formatted string in Markdown, HTML, or plain text.", + "category": "content-creation", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "The tabular data to format; each element is a row represented as an array or object. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the table. Options: 'markdown', 'html', or 'plain'. Defaults to 'markdown'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "alignments", + "type": "array", + "description": "Array specifying column alignments: each element is 'left', 'center', or 'right'. Defaults to all 'left'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Indicates if the first row is a header row to be formatted differently. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "borderStyle", + "type": "string", + "description": "Style of border for plain text tables: 'none', 'ascii', or 'unicode'. Defaults to 'ascii'. Ignored for HTML/Markdown.", + "required": false, + "defaultValue": "ascii" + }, + { + "name": "headerStyle", + "type": "string", + "description": "Style of header formatting: 'bold', 'underline', or 'none'. Defaults to 'bold'.", + "required": false, + "defaultValue": "bold" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing 'formattedTable', a string of the formatted table in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate visually well-structured tables from raw tabular data within document generation, reporting, or UI presentation contexts. It supports transforming arrays or objects into formatted tables with customizable alignment and style in common output formats, facilitating readable content generation.", + "limitations": "Does not parse or validate complex nested data types; assumes uniform row structure. Not intended for large data processing or interactive table features.", + "examples": [ + "Format a small dataset as a Markdown table with centered columns.", + "Create an HTML table from array-of-objects with bold headers.", + "Generate a plain text table using Unicode borders with right-aligned numeric columns." + ] + }, + "tags": [ + "content-creation", + "table", + "formatting", + "markdown", + "html", + "plain-text", + "data-display" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"Name\":\"Alice\",\"Age\":30,\"City\":\"New York\"},{\"Name\":\"Bob\",\"Age\":25,\"City\":\"Los Angeles\"}],\"outputFormat\":\"markdown\",\"alignments\":[\"left\",\"center\",\"right\"],\"includeHeader\":true,\"borderStyle\":\"\",\"headerStyle\":\"bold\"}", + "description": "Format an array of objects as a Markdown table with left, center, and right alignments respectively." + }, + { + "inputJson": "{\"tableData\":[[\"Product\",\"Price\",\"Stock\"],[\"Pen\",1.2,100],[\"Notebook\",2.5,200]],\"outputFormat\":\"html\",\"alignments\":[\"left\",\"right\",\"center\"],\"includeHeader\":true,\"borderStyle\":\"\",\"headerStyle\":\"underline\"}", + "description": "Format a 2D array table with header underline style as an HTML table." + }, + { + "inputJson": "{\"tableData\":[[\"ID\",\"Score\"],[\"1\",88],[\"2\",92]],\"outputFormat\":\"plain\",\"alignments\":[\"left\",\"right\"],\"includeHeader\":true,\"borderStyle\":\"unicode\",\"headerStyle\":\"bold\"}", + "description": "Generate a plain text table with Unicode borders and bold headers, right-aligning the Score column." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "content-creation.formatHTML", + "description": "Formats a given HTML string by properly indenting nested tags, optionally minifying or prettifying the HTML output. Accepts raw or poorly formatted HTML and produces clean, readable or compact HTML code according to parameters.", + "category": "content-creation", + "parameters": [ + { + "name": "html", + "type": "string", + "description": "Raw or unformatted HTML string input that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use per indentation level for pretty printing.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "If true, indentation uses tabs instead of spaces.", + "required": false, + "defaultValue": "false" + }, + { + "name": "minify", + "type": "boolean", + "description": "If true, removes unnecessary whitespace and line breaks to produce compact HTML.", + "required": false, + "defaultValue": "false" + }, + { + "name": "preserveNewLines", + "type": "boolean", + "description": "If true, preserves meaningful new lines inside pre or code tags when formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted HTML string as 'formattedHtml'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean up raw or badly formatted HTML code, for example when ingesting user-generated or legacy HTML content, before further editing, displaying, or processing. It helps generate consistent and readable or compact HTML according to user preferences.", + "limitations": "Does not validate or correct invalid HTML syntax or fix broken tags, only formats existing HTML structure. It cannot transform non-HTML input or parse scripts/styles for correctness.", + "examples": [ + "Format a minified HTML snippet into readable indented code with 4 spaces indent.", + "Minify an already pretty HTML to reduce size before sending over network.", + "Preserve lines inside
 tags while pretty printing the rest."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "html",
+        "content-creation",
+        "prettify",
+        "minify",
+        "web",
+        "code"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"html\":\"

Title

Paragraph.

\",\"indentSize\":4,\"useTabs\":false,\"minify\":false}", + "description": "Pretty print simple HTML with 4 spaces indentation." + }, + { + "inputJson": "{\"html\":\"

Test

\",\"minify\":true}", + "description": "Minify HTML by removing extra whitespace and line breaks." + }, + { + "inputJson": "{\"html\":\"
Line1\\nLine2

Text

\",\"preserveNewLines\":true}", + "description": "Pretty print HTML but preserve new lines inside
 tag."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "HTML",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatMigration",
+      "description": "Formats database migration scripts or configuration files to adhere to specified coding standards and style guides. Accepts raw migration files or scripts as input, processes them to adjust indentation, naming conventions, and code layout, and outputs the formatted migration content ready for inclusion in a codebase or execution environment.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "migrationContent",
+          "type": "string",
+          "description": "The raw migration script or configuration content to format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The programming or scripting language of the migration content (e.g., SQL, JavaScript, Python).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "Identifier for the style guide or formatting standard to apply (e.g., 'Airbnb', 'PSR-2', 'Google').",
+          "required": false,
+          "defaultValue": "default"
+        },
+        {
+          "name": "indentStyle",
+          "type": "string",
+          "description": "Indentation style to use: 'spaces' or 'tabs'.",
+          "required": false,
+          "defaultValue": "spaces"
+        },
+        {
+          "name": "indentSize",
+          "type": "number",
+          "description": "Number of spaces or tabs to use per indentation level.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "lineEnding",
+          "type": "string",
+          "description": "Preferred line ending format: 'LF' or 'CRLF'.",
+          "required": false,
+          "defaultValue": "LF"
+        },
+        {
+          "name": "fixLintErrors",
+          "type": "boolean",
+          "description": "Whether to attempt fixing linting issues during formatting if tools allow.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted migration content string and a summary of formatting changes applied."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to standardize and format migration scripts or files before committing them to a repository, sharing with a team, or deploying. It is ideal to ensure consistent styling and reduce errors caused by inconsistent formatting in database or code migration tasks.",
+        "limitations": "This tool cannot validate the semantic correctness of migration scripts or guarantee that the migration will run successfully. It focuses only on formatting and style adjustments, not logic or syntax validation beyond basic formatting rules.",
+        "examples": [
+          "Format a raw SQL migration script according to the Google style guide with 4 space indents.",
+          "Adjust a JavaScript-based migration file using Airbnb style, tabs for indentation, and fix lint errors if possible.",
+          "Format a Python Alembic migration file using default style with 2 spaces and LF line endings."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "migration",
+        "database",
+        "code-style",
+        "devops",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"migrationContent\":\"CREATE TABLE users(id INT PRIMARY KEY, name VARCHAR(100));\",\"language\":\"SQL\",\"styleGuide\":\"Google\",\"indentStyle\":\"spaces\",\"indentSize\":4,\"lineEnding\":\"LF\",\"fixLintErrors\":false}",
+          "description": "Format a simple SQL migration script using Google style guide with 4 spaces indentation and LF line endings."
+        },
+        {
+          "inputJson": "{\"migrationContent\":\"module.exports = { up: function(knex) {return knex.schema.createTable('users', function(table) {table.increments('id').primary();table.string('name');});}, down: function(knex) {return knex.schema.dropTable('users');} };\",\"language\":\"JavaScript\",\"styleGuide\":\"Airbnb\",\"indentStyle\":\"tabs\",\"indentSize\":1,\"lineEnding\":\"LF\",\"fixLintErrors\":true}",
+          "description": "Format a JavaScript migration file using Airbnb style guide with tabs and fix lint errors."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Migration",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatTest",
+      "description": "Formats raw source code test snippets into a readable, standardized style according to specified test framework conventions (e.g., Jest, Mocha). Accepts string input of test code, language, and target framework, returning well-indented, cleanly styled test code as string output.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "testCode",
+          "type": "string",
+          "description": "Raw test code snippet as input to be formatted",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language of the test code (e.g., 'javascript', 'typescript')",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "testFramework",
+          "type": "string",
+          "description": "Target test framework to format the code for (e.g., 'jest', 'mocha')",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentSize",
+          "type": "number",
+          "description": "Number of spaces used per indentation level",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "Whether to use tabs instead of spaces for indentation",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with a single property 'formattedTestCode' containing the formatted test code string."
+      },
+      "aiAgent": {
+        "useCase": "Use when needing to convert raw or poorly formatted test code snippets into clean, readable, and standardized tests corresponding to the specified programming language and test framework. Useful for improving code readability, enforcing style guides, or preparing test code for integration into projects.",
+        "limitations": "Does not validate test logic correctness or test execution; focuses only on formatting style. Limited to known test frameworks and common languages. May not handle highly unconventional code structures.",
+        "examples": [
+          "Format a raw JavaScript test snippet into Jest style with 2 spaces indentation.",
+          "Convert a TypeScript Mocha test snippet to use tabs for indentation.",
+          "Standardize formatting for a messy JavaScript test code snippet targeting Mocha."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "test-code",
+        "code-style",
+        "unit-testing",
+        "javascript",
+        "typescript",
+        "jest",
+        "mocha"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"testCode\":\"test('adds numbers',()=>{expect(add(1,2)).toBe(3)})\",\"language\":\"javascript\",\"testFramework\":\"jest\",\"indentSize\":2,\"useTabs\":false}",
+          "description": "Format a simple JavaScript test snippet to Jest conventions with 2 spaces indentation."
+        },
+        {
+          "inputJson": "{\"testCode\":\"describe('math', function(){ it('adds',()=>{ expect(add(1,2)).to.equal(3); }) })\",\"language\":\"javascript\",\"testFramework\":\"mocha\",\"indentSize\":4,\"useTabs\":true}",
+          "description": "Format a JavaScript test snippet for Mocha with 4 spaces indentation replaced by tabs."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Test",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatDataset",
+      "description": "Formats a dataset by applying uniform data transformations such as trimming whitespace, standardizing date formats, normalizing numerical values, renaming fields, and filtering records based on criteria. Accepts input datasets as JSON arrays of objects and outputs the transformed dataset in the same structure.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "dataset",
+          "type": "array",
+          "description": "The input dataset to format, represented as an array of objects (records).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "trimWhitespace",
+          "type": "boolean",
+          "description": "Whether to trim leading and trailing whitespace from all string fields in the dataset.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "dateFormat",
+          "type": "string",
+          "description": "Target date format to standardize date fields (e.g., 'YYYY-MM-DD'). If empty, dates remain unchanged.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "numericNormalization",
+          "type": "string",
+          "description": "Method to normalize numeric fields: 'min-max', 'z-score', or empty for no normalization.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "fieldRenames",
+          "type": "object",
+          "description": "Object mapping existing field names to new field names for renaming dataset keys.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "filterCriteria",
+          "type": "object",
+          "description": "Filter conditions specifying field-value pairs; records must match all to be included.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted dataset as an array of records under the 'formattedDataset' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to clean and standardize datasets before analysis or integration. It helps in preparing data by enforcing consistent formatting, simplifying downstream processing or visualization tasks. Ideal when handling raw data with inconsistent entries or varying formats.",
+        "limitations": "Cannot perform complex data validations or infer transformations automatically beyond specified parameters. Does not handle nested objects or arrays within dataset records.",
+        "examples": [
+          "Format a dataset by trimming whitespace and standardizing all date fields to 'YYYY-MM-DD'.",
+          "Rename fields 'fname' to 'firstName' and filter dataset to include only records where 'status' equals 'active'.",
+          "Normalize numerical fields using min-max scaling while cleaning string whitespace."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "dataset",
+        "data-cleaning",
+        "data-normalization",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dataset\":[{\"name\":\" Alice \",\"dob\":\"12/31/1990\",\"score\":10},{\"name\":\"Bob\",\"dob\":\"1991-01-15\",\"score\":15}],\"trimWhitespace\":true,\"dateFormat\":\"YYYY-MM-DD\",\"numericNormalization\":\"min-max\",\"fieldRenames\":{\"name\":\"fullName\"},\"filterCriteria\":{}}",
+          "description": "Normalize dates to 'YYYY-MM-DD', trim whitespace, rename 'name' to 'fullName' and apply min-max normalization to scores."
+        },
+        {
+          "inputJson": "{\"dataset\":[{\"fname\":\"John\",\"status\":\"active\",\"age\":30},{\"fname\":\"Jane\",\"status\":\"inactive\",\"age\":25}],\"trimWhitespace\":false,\"dateFormat\":\"\",\"numericNormalization\":\"\",\"fieldRenames\":{\"fname\":\"firstName\"},\"filterCriteria\":{\"status\":\"active\"}}",
+          "description": "Rename field 'fname' to 'firstName' and filter dataset to include only records with status 'active'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Dataset",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatCSV",
+      "description": "Formats raw CSV data into a clean, consistent CSV string with options to customize delimiter, quote characters, line endings, and whether to include header rows. Accepts input as a CSV string or array of objects and outputs properly formatted CSV text suitable for file saving or data transfer.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "string",
+          "description": "Raw CSV string or JSON array string to format into CSV.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "delimiter",
+          "type": "string",
+          "description": "Character to use as field delimiter (e.g., comma, semicolon).",
+          "required": false,
+          "defaultValue": ","
+        },
+        {
+          "name": "quoteChar",
+          "type": "string",
+          "description": "Character used to quote fields, typically double quotes (\").",
+          "required": false,
+          "defaultValue": "\""
+        },
+        {
+          "name": "includeHeaders",
+          "type": "boolean",
+          "description": "Whether to include column headers in output CSV (if input includes headers or an array of objects).",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "lineEnding",
+          "type": "string",
+          "description": "String used for line breaks. Use '\\n' for Unix or '\\r\\n' for Windows.",
+          "required": false,
+          "defaultValue": "\\n"
+        }
+      ],
+      "returns": {
+        "type": "string",
+        "description": "A formatted CSV string matching the specified parameters, ready for file output or API transmission."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to standardize or reformat CSV data: for example, cleaning up inconsistent CSV inputs, changing delimiters, enforcing quoting, or preparing data for exporting or interoperation with CSV-consuming systems.",
+        "limitations": "Does not parse CSV into structured usable objects or validate data types; only formats given CSV or array input into consistent CSV text. Does not handle extremely large datasets efficiently in memory-limited environments.",
+        "examples": [
+          "Format raw CSV string by changing delimiter from comma to semicolon.",
+          "Convert array of objects to CSV string including headers with double quotes as quote characters.",
+          "Normalize line endings to Windows style and ensure all fields are properly quoted."
+        ]
+      },
+      "tags": [
+        "content",
+        "csv",
+        "formatting",
+        "data-cleaning",
+        "export",
+        "delimiter",
+        "quote",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":\"name,age,city\\nAlice,30,New York\\nBob,25,Los Angeles\",\"delimiter\":\";\",\"quoteChar\":\"\\\"\",\"includeHeaders\":true,\"lineEnding\":\"\\r\\n\"}",
+          "description": "Convert a CSV string with commas to semicolon delimiters and Windows line endings."
+        },
+        {
+          "inputJson": "{\"inputData\":\"[{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30,\\\"city\\\":\\\"New York\\\"},{\\\"name\\\":\\\"Bob\\\",\\\"age\\\":25,\\\"city\\\":\\\"Los Angeles\\\"}]\",\"delimiter\":\",\",\"quoteChar\":\"\\\"\",\"includeHeaders\":true,\"lineEnding\":\"\\n\"}",
+          "description": "Format an array of objects into CSV with default comma delimiter and Unix line endings."
+        },
+        {
+          "inputJson": "{\"inputData\":\"name;age;city\\nAlice;30;New York\\nBob;25;Los Angeles\",\"delimiter\":\";\",\"quoteChar\":\"'\",\"includeHeaders\":true,\"lineEnding\":\"\\n\"}",
+          "description": "Format CSV string with semicolon delimiter, single quote character, and Unix line endings."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "CSV",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatJSON",
+      "description": "Formats a JSON string or object input to produce a properly indented and human-readable JSON string output. Accepts raw JSON string or an object, applies indentation with customizable number of spaces, and optionally sorts object keys alphabetically for consistent formatting.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "inputJSON",
+          "type": "string",
+          "description": "The JSON string or serialized JSON input to format. Must be valid JSON.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentationSpaces",
+          "type": "number",
+          "description": "Number of spaces used for indentation in the output JSON. Typical values are 2 or 4.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "sortKeys",
+          "type": "boolean",
+          "description": "If true, object keys are sorted alphabetically in the output for consistency.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "spaceAfterColon",
+          "type": "boolean",
+          "description": "If true, inserts a space after the colon in key-value pairs for readability.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted JSON string under 'formattedJSON' key. Throws error if input JSON is invalid."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to tidy up or normalize JSON data for display, logging, configuration files, or ensuring consistent formatting before storage or transmission. It helps produce readable JSON output with customizable styling.",
+        "limitations": "Cannot validate semantic correctness beyond JSON syntax. Cannot transform JSON data beyond formatting (e.g., cannot restructure data or change values). Does not process extremely large JSON strings efficiently.",
+        "examples": [
+          "Format a minified JSON string with 4 spaces indentation for readability.",
+          "Format JSON object input with sorted keys for consistent output.",
+          "Produce compact JSON by setting indentation to 0 and disabling extra spacing."
+        ]
+      },
+      "tags": [
+        "json",
+        "formatting",
+        "content-creation",
+        "pretty-print",
+        "data-formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputJSON\":\"{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30,\\\"city\\\":\\\"NY\\\"}\",\"indentationSpaces\":4,\"sortKeys\":true,\"spaceAfterColon\":true}",
+          "description": "Format a JSON string with 4-space indentation and keys sorted alphabetically."
+        },
+        {
+          "inputJson": "{\"inputJSON\":\"[1,2,3,4]\",\"indentationSpaces\":2,\"sortKeys\":false,\"spaceAfterColon\":true}",
+          "description": "Format a JSON array string with 2-space indentation without sorting keys."
+        },
+        {
+          "inputJson": "{\"inputJSON\":\"{\\\"b\\\":1,\\\"a\\\":2}\",\"indentationSpaces\":0,\"sortKeys\":true,\"spaceAfterColon\":false}",
+          "description": "Format JSON object with no indentation and no space after colon, sorting keys alphabetically for compactness."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "JSON",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatXML",
+      "description": "Formats an input XML string by applying consistent indentation and optional line breaks to improve readability. Accepts a raw XML string and returns a prettified XML string output. Can customize indentation style and size.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "xmlString",
+          "type": "string",
+          "description": "The raw XML string input that needs formatting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentationSize",
+          "type": "number",
+          "description": "Number of spaces to use per indentation level in the formatted output.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "If true, uses tab characters for indentation instead of spaces.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "includeLineBreaks",
+          "type": "boolean",
+          "description": "Whether to include line breaks between elements for better readability.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted XML string under the key 'formattedXml'. If the input XML is invalid, an error message is included."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to transform raw, minified, or inconsistently formatted XML data into a human-readable, consistently indented XML format. This is useful for display, debugging, logging, or preparing XML content for editing and review.",
+        "limitations": "This tool does not validate XML syntax or correctness beyond basic structural assumptions and may not fix invalid XML. It only formats the XML string for readability without changing element ordering or content.",
+        "examples": [
+          "Format a compacted XML string to be readable with standard 2-space indentation.",
+          "Convert an XML string to use tabs for indentation instead of spaces for editor compatibility.",
+          "Format XML for display ensuring line breaks between elements are present."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "XML",
+        "prettify",
+        "indentation",
+        "data-rendering"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"xmlString\":\"valuevalue2\",\"indentationSize\":4,\"useTabs\":false,\"includeLineBreaks\":true}",
+          "description": "Format basic XML with 4 spaces indentation and line breaks."
+        },
+        {
+          "inputJson": "{\"xmlString\":\"value\",\"useTabs\":true}",
+          "description": "Format XML using tabs for indentation instead of spaces."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "XML",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatQuery",
+      "description": "Formats and standardizes database query strings according to specified style preferences. Accepts a raw query string and optional formatting options (such as indentation, uppercase keywords). Returns a clean, well-indented query string suitable for readability and consistent code style in SQL, NoSQL, or similar query languages.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "query",
+          "type": "string",
+          "description": "The raw database query string that needs formatting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The query language of the input (e.g., 'sql', 'mongodb', 'graphql').",
+          "required": false,
+          "defaultValue": "sql"
+        },
+        {
+          "name": "indentationSpaces",
+          "type": "number",
+          "description": "Number of spaces used for indentation of nested clauses or levels.",
+          "required": false,
+          "defaultValue": "4"
+        },
+        {
+          "name": "uppercaseKeywords",
+          "type": "boolean",
+          "description": "If true, SQL keywords or language reserved words will be uppercased in the output for clarity.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "newlineAroundOperators",
+          "type": "boolean",
+          "description": "If true, places newlines before or after major operators (e.g., AND, OR, JOIN) for better readability.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a formattedQuery string with the cleaned and nicely formatted query based on the inputs."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to clean up, reformat, or standardize database queries for better readability, consistency, or downstream processing. Useful in generating human-readable SQL or NoSQL queries from user input or legacy sources.",
+        "limitations": "Currently supports only a limited set of query languages and basic formatting options; does not perform semantic validation or optimization of queries.",
+        "examples": [
+          "Format this raw SQL query with 2-space indentation and uppercase keywords.",
+          "Reformat a MongoDB query string for better readability.",
+          "Standardize GraphQL queries with custom indentation and newlines around operators."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "query",
+        "SQL",
+        "NoSQL",
+        "code-style",
+        "database",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"query\":\"select id,name from users where age>30 and status='active' order by name desc\",\"language\":\"sql\",\"indentationSpaces\":2,\"uppercaseKeywords\":true,\"newlineAroundOperators\":true}",
+          "description": "Formats a basic SQL SELECT query with 2-space indentation and uppercase keywords."
+        },
+        {
+          "inputJson": "{\"query\":\"{ user(id: \\\"1\\\") { name, age, posts(limit:5) { title, date } } }\",\"language\":\"graphql\",\"indentationSpaces\":2,\"uppercaseKeywords\":false,\"newlineAroundOperators\":false}",
+          "description": "Formats a GraphQL query with 2-space indentation but without uppercasing keywords or extra newlines."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Query",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatEndpoint",
+      "description": "Formats raw API endpoint code snippets into consistent, readable, and standardized code blocks. Accepts endpoint definitions as strings in formats like REST or GraphQL, applies user-specified styling rules such as indentation size, syntax highlighting preference, and comment style, then outputs the formatted endpoint code as a string ready for integration or documentation.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "endpointCode",
+          "type": "string",
+          "description": "The raw code snippet defining the API endpoint to format. Can include REST, GraphQL, or similar endpoint code.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming or specification language of the endpoint code (e.g., 'REST', 'GraphQL', 'OpenAPI'). Used to apply correct syntax rules.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentationSize",
+          "type": "number",
+          "description": "Number of spaces to use for each indentation level in the formatted code.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "Whether to use tabs instead of spaces for indentation.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "syntaxHighlighting",
+          "type": "boolean",
+          "description": "Whether to include syntax highlighting markup in the formatted output, for documentation purposes.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "commentStyle",
+          "type": "string",
+          "description": "Preferred comment style to apply ('line', 'block', or 'none') when formatting embedded comments in the endpoint code.",
+          "required": false,
+          "defaultValue": "line"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted endpoint code as a string, optionally including metadata such as detected language and formatting summary, suitable for display or further processing."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have raw or inconsistent API endpoint code snippets that need formatting for better readability, consistency in documentation, or codebase integration. Helpful for preparing clean endpoint definitions in REST, GraphQL, or similar formats before publishing or sharing internally.",
+        "limitations": "This tool does not validate endpoint correctness or semantics; it only formats code syntax for readability. It also cannot generate endpoint definitions from descriptions or translate between API specification languages.",
+        "examples": [
+          "Format a raw REST endpoint code snippet with 4-space indentation and syntax highlighting.",
+          "Standardize GraphQL schema endpoint definitions to use tabs for indentation.",
+          "Convert endpoint code comments to block style formatting with 2 spaces indentation."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "api",
+        "endpoint",
+        "code",
+        "content-creation",
+        "documentation",
+        "rest",
+        "graphql"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"endpointCode\":\"GET /users/{id} HTTP/1.1\\nHost: api.example.com\\nAccept: application/json\",\"language\":\"REST\",\"indentationSize\":4,\"useTabs\":false,\"syntaxHighlighting\":true,\"commentStyle\":\"line\"}",
+          "description": "Format a simple REST endpoint snippet with 4 spaces indentation and syntax highlighting."
+        },
+        {
+          "inputJson": "{\"endpointCode\":\"type Query {\\nuser(id: ID!): User\\n}\",\"language\":\"GraphQL\",\"indentationSize\":2,\"useTabs\":true,\"syntaxHighlighting\":false,\"commentStyle\":\"block\"}",
+          "description": "Format a GraphQL query definition using tabs and block comment style without syntax highlighting."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Endpoint",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatSchema",
+      "description": "Formats a JSON schema string or object into a standardized, readable, and properly indented schema format. Accepts a JSON string or object representing a JSON Schema and returns a formatted JSON string with customizable indentation, ensuring consistent style suitable for documentation or further processing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "schemaInput",
+          "type": "string",
+          "description": "The input JSON Schema as a raw JSON string to be parsed and formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentation",
+          "type": "number",
+          "description": "Number of spaces to use for indentation in the formatted output. Typically 2 or 4.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "sortProperties",
+          "type": "boolean",
+          "description": "Whether to sort the properties of objects alphabetically to ensure consistent order in the output.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formattedSchema as a JSON string with applied indentation and property ordering."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to produce a clean, human-readable version of a JSON Schema for documentation, code generation, review, or debugging. It helps standardize the schema format and improves readability by enforcing consistent indentation and optional property sorting.",
+        "limitations": "This tool formats existing valid JSON Schema inputs but does not validate schema correctness or resolve references within the schema. It does not transform schema semantics or generate schemas from non-schema data.",
+        "examples": [
+          "Format a raw JSON Schema string into a neatly indented JSON string with 4 spaces indentation.",
+          "Format a JSON Schema object with sorted properties alphabetically for consistent documentation.",
+          "Reformat a minified schema string into human-readable form with default indentation."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "json",
+        "json-schema",
+        "content-creation",
+        "code-style"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"schemaInput\":\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"b\\\":{\\\"type\\\":\\\"string\\\"},\\\"a\\\":{\\\"type\\\":\\\"number\\\"}}}\",\"indentation\":4,\"sortProperties\":true}",
+          "description": "Formats a JSON Schema string with 4 spaces indentation and properties sorted alphabetically."
+        },
+        {
+          "inputJson": "{\"schemaInput\":\"{\\\"type\\\":\\\"array\\\",\\\"items\\\":{\\\"type\\\":\\\"integer\\\"}}\",\"indentation\":2,\"sortProperties\":false}",
+          "description": "Formats a simple JSON Schema array type with 2 spaces indentation without sorting."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Schema",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatFunction",
+      "description": "Formats a given source code function string according to specified style rules. Accepts raw function code as a string and options such as indentation style, line width, and whether to use semicolons. Returns the formatted function code string, improved for readability and consistency with common coding standards.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "functionCode",
+          "type": "string",
+          "description": "The raw source code of the function to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentStyle",
+          "type": "string",
+          "description": "Indentation style to use: can be 'space' or 'tab'. Determines whether spaces or tabs are used for indentation.",
+          "required": false,
+          "defaultValue": "space"
+        },
+        {
+          "name": "indentSize",
+          "type": "number",
+          "description": "Number of spaces or tabs per indentation level. Ignored if indentStyle is 'tab'.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "maxLineWidth",
+          "type": "number",
+          "description": "Maximum line width before code lines are wrapped for better readability.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "useSemicolons",
+          "type": "boolean",
+          "description": "Whether to insert semicolons at the end of statements when applicable.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "braceStyle",
+          "type": "string",
+          "description": "Brace style to apply: '1tbs' (One True Brace Style), 'stroustrup', or 'allman'. Determines positioning of braces.",
+          "required": false,
+          "defaultValue": "1tbs"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted function code as a string under the key 'formattedFunction'. The output is syntactically equivalent to the input but follows the specified formatting options."
+      },
+      "aiAgent": {
+        "useCase": "This tool is useful when an AI agent needs to standardize or beautify code snippets of functions in various programming languages to improve readability, maintainability, or to conform to project style guidelines before displaying, storing, or further processing the code.",
+        "limitations": "The tool focuses on formatting a single function code string and does not perform linting, error checking, or transpilation. It may not fully support every edge-case syntax or all programming languages. It expects syntactically valid input function code.",
+        "examples": [
+          "Format a raw JavaScript function with 4 spaces indentation and 'allman' brace style.",
+          "Reformat a Python function string using tabs and a max line width of 100 characters.",
+          "Apply semicolon-less formatting to a TypeScript function code snippet with 2 spaces indent."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "code",
+        "function",
+        "beautify",
+        "code-style",
+        "source-code",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"functionCode\":\"function  sum(a,b){return a+b}\",\"indentStyle\":\"space\",\"indentSize\":2,\"maxLineWidth\":80,\"useSemicolons\":true,\"braceStyle\":\"1tbs\"}",
+          "description": "Format a compact JavaScript function with standard 2-space indentation and semicolons."
+        },
+        {
+          "inputJson": "{\"functionCode\":\"def greet(name):\\n  print(f'Hello, {name}')\",\"indentStyle\":\"tab\",\"indentSize\":1,\"maxLineWidth\":80,\"useSemicolons\":false,\"braceStyle\":\"1tbs\"}",
+          "description": "Format a Python function using tabs for indentation without semicolons."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Function",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatSpec",
+      "description": "This tool accepts a software or technical specification document as text or structured JSON input, formats it into a standardized, readable spec document according to chosen style guidelines (like Markdown, reStructuredText, or HTML), and outputs the formatted spec. It supports organizing sections, formatted code blocks, lists, and tables.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "inputSpec",
+          "type": "string",
+          "description": "The raw specification document content or structured data to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFormat",
+          "type": "string",
+          "description": "Format of the input spec (e.g., 'plaintext', 'json'), to guide parsing if needed.",
+          "required": false,
+          "defaultValue": "plaintext"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format for the specification (e.g., 'markdown', 'html', 'rst').",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents in the formatted spec.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "Optional style guide or template name to apply formatting rules from (e.g., 'default', 'IEEE', 'custom').",
+          "required": false,
+          "defaultValue": "default"
+        },
+        {
+          "name": "sectionOrdering",
+          "type": "array",
+          "description": "An optional array of strings defining the order of sections to appear in the output, if applicable.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted specification document as a string under 'formattedSpec', and metadata such as content type or format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to generate or reformat technical specification documents into clean, standardized formats suitable for sharing, documentation, or presentation. Ideal for transforming raw or loosely structured spec content into professional formatted outputs.",
+        "limitations": "Cannot fully interpret ambiguous or incomplete specification inputs; expects reasonably well-structured or clearly sectionalized input. Does not generate spec content from scratch, only formats provided content.",
+        "examples": [
+          "Format a JSON structured spec document into Markdown with a table of contents.",
+          "Convert a plaintext tech spec into HTML formatted document for web presentation.",
+          "Apply a custom style guide to a software specification and export as reStructuredText."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "documentation",
+        "specification",
+        "technical-document",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputSpec\":\"# API Spec\\n## Authentication\\nUse OAuth2.0.\\n## Endpoints\\n- /users\\n- /posts\",\"inputFormat\":\"plaintext\",\"outputFormat\":\"markdown\",\"includeTableOfContents\":true,\"styleGuide\":\"default\",\"sectionOrdering\":[] }",
+          "description": "Format a plain text API specification into Markdown with a table of contents."
+        },
+        {
+          "inputJson": "{\"inputSpec\":\"{\\\"title\\\":\\\"API Spec\\\",\\\"sections\\\":[{\\\"heading\\\":\\\"Authentication\\\",\\\"content\\\":\\\"Use OAuth2.0.\\\"},{\\\"heading\\\":\\\"Endpoints\\\",\\\"content\\\":\\\"/users, /posts\\\"}]}','inputFormat':'json','outputFormat':'html','includeTableOfContents':true,'styleGuide':'default','sectionOrdering':['Authentication','Endpoints'] }",
+          "description": "Format a JSON structured specification into an HTML document with sections ordered and a table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Spec",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatAPI",
+      "description": "Formats provided API specification code snippets according to a specified programming language style (e.g., JavaScript, Python) and style guideline. Accepts raw or partial API code text input, applies syntax formatting and indentation rules, and outputs clean, standardized API code for improved readability and maintainability.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "apiCode",
+          "type": "string",
+          "description": "The raw or partial API specification code snippet to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Target programming language or specification format for the API code (e.g., 'JavaScript', 'Python', 'OpenAPI').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "The style guideline to apply for formatting (e.g., 'Google', 'Airbnb', 'PEP8'); if unspecified, defaults to common conventions.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentSpaces",
+          "type": "number",
+          "description": "Number of spaces to use for indentation in the formatted code; overrides style guide indent if specified.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "preserveComments",
+          "type": "boolean",
+          "description": "Whether to preserve comments in the API code during formatting.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted API code as a string and any messages or warnings generated during formatting."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to cleanly format or standardize API code snippets or specifications for documentation, code review, or integration. It helps produce readable, style-consistent API code from raw or inconsistent inputs, supporting multiple languages and style guidelines.",
+        "limitations": "This tool formats the code text only; it does not validate semantic correctness or functional correctness of the API specification. It also cannot generate API code from scratch or fix logical errors.",
+        "examples": [
+          "Format a raw JavaScript API method snippet to Airbnb style.",
+          "Convert and format OpenAPI specification fragment to Google style indentation.",
+          "Clean and uniformly indent a Python Flask API route handler snippet."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "api",
+        "code",
+        "style",
+        "content-creation",
+        "programming",
+        "clean-code"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"apiCode\":\"function getUser(id){return fetch('/user/'+id)}\",\"language\":\"JavaScript\",\"styleGuide\":\"Airbnb\",\"indentSpaces\":2,\"preserveComments\":true}",
+          "description": "Formats a raw JavaScript API function snippet to conform with Airbnb style guidelines using 2-space indentation and preserving comments."
+        },
+        {
+          "inputJson": "{\"apiCode\":\"paths:\\n  /users:\\n    get:\\n      summary: Retrieves list of users\\n\",\"language\":\"OpenAPI\",\"styleGuide\":\"Google\",\"indentSpaces\":4,\"preserveComments\":false}",
+          "description": "Formats an OpenAPI snippet with 4-space indentation according to Google style rules without preserving comments."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "API",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatModule",
+      "description": "Formats source code modules by applying consistent code styling rules. Accepts raw source code as input along with the programming language and style preferences. Outputs the formatted source code string adhering to the specified style guidelines.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "sourceCode",
+          "type": "string",
+          "description": "Raw source code string of the module to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language of the source code (e.g., 'javascript', 'python', 'java').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "Named style guide to apply (e.g., 'Google', 'Airbnb', 'PEP8') or 'custom' for user-defined options.",
+          "required": false,
+          "defaultValue": "Google"
+        },
+        {
+          "name": "customRules",
+          "type": "object",
+          "description": "Optional object specifying custom formatting rules to override the style guide. Keys and values depend on the language/style guide.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "insertFinalNewline",
+          "type": "boolean",
+          "description": "Whether to ensure the file ends with a newline character.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "tabWidth",
+          "type": "number",
+          "description": "Number of spaces per indentation level.",
+          "required": false,
+          "defaultValue": "2"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted source code string and optionally a summary of changes made."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to automatically format source code modules to enforce consistent styling and improve readability before committing code, code reviews, or publishing. It helps prepare code fragments or whole files to match a given style guide or custom format rules.",
+        "limitations": "Cannot fix semantic or logic errors, only formats code styling. Style guide support may be limited to common languages and predefined guides. Custom rule complexity depends on implementation.",
+        "examples": [
+          "Format JavaScript module source code according to Airbnb style guide.",
+          "Format a Python module ensuring PEP8 compliance with 4 space indentation.",
+          "Format Java source code applying Google Java style with a final newline."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "code",
+        "module",
+        "styleguide",
+        "development",
+        "source-code",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceCode\":\"function sum(a,b){return a+b}\",\"language\":\"javascript\",\"styleGuide\":\"Airbnb\",\"insertFinalNewline\":true,\"tabWidth\":2}",
+          "description": "Formats a simple JavaScript function with Airbnb style guide and ensures a final newline."
+        },
+        {
+          "inputJson": "{\"sourceCode\":\"def add(a,b):\\n  return a+b\",\"language\":\"python\",\"styleGuide\":\"PEP8\",\"tabWidth\":4}",
+          "description": "Formats Python function according to PEP8 with 4 space indentation."
+        },
+        {
+          "inputJson": "{\"sourceCode\":\"public class HelloWorld{public static void main(String[] args){System.out.println(\\\"Hello, World!\\\");}}\",\"language\":\"java\",\"styleGuide\":\"Google\",\"insertFinalNewline\":true}",
+          "description": "Formats a Java 'Hello World' class according to Google Java style guide, adding a final newline."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Module",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatReadme",
+      "description": "Formats a raw README markdown text or similar project description document by applying consistent styling, section ordering, and optional enhancement like badges or table of contents. Accepts raw markdown input and outputs cleaned, well-structured, and standardized markdown ready for repositories or documentation sites.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "rawMarkdown",
+          "type": "string",
+          "description": "The original README content in markdown format to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "Optional style guide preset name to apply formatting rules (e.g., 'GitHub', 'Standard','Custom').",
+          "required": false,
+          "defaultValue": "GitHub"
+        },
+        {
+          "name": "includeToc",
+          "type": "boolean",
+          "description": "Whether to add or update a Table of Contents based on headings.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "addBadges",
+          "type": "array",
+          "description": "An array of badge markdown strings to prepend to the README (e.g., build status, license badges).",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "reorderSections",
+          "type": "array",
+          "description": "An array defining desired order of main sections by heading titles (e.g., ['Introduction','Installation','Usage','Contributing','License']).",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum line length for wrapping text lines; 0 means no wrapping.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted README markdown as a string under 'formattedMarkdown'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to standardize and improve the structure and presentation of README files or project documentation in markdown format. Helpful for cleaning up inconsistent formatting, adding table of contents, or preparing docs for open source release or publication.",
+        "limitations": "The tool does not validate markdown syntax beyond formatting, nor does it create content or fix spelling and grammar. It also cannot interpret deeply nested document logic or insert dynamic content beyond badges and TOC.",
+        "examples": [
+          "Format a raw README to GitHub style, include TOC and badges.",
+          "Reorder README sections to a specified sequence and wrap lines at 100 characters.",
+          "Format a README without TOC or badges, preserving original section order."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "markdown",
+        "readme",
+        "documentation",
+        "developer-tools",
+        "open-source"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawMarkdown\":\"# My Project\\nThis is a sample README.\\n## Usage\\nRun the app.\",\"styleGuide\":\"GitHub\",\"includeToc\":true,\"addBadges\":[\"![build status](https://img.shields.io/badge/build-passing-green.svg)\"],\"reorderSections\":[\"Introduction\",\"Usage\"],\"maxLineLength\":80}",
+          "description": "Format a basic README with GitHub style, adding TOC and build status badge, reorder Introduction and Usage sections."
+        },
+        {
+          "inputJson": "{\"rawMarkdown\":\"# Project\\nSome description\",\"styleGuide\":\"Standard\",\"includeToc\":false,\"addBadges\":[],\"reorderSections\":[],\"maxLineLength\":0}",
+          "description": "Format README to Standard style without TOC or badges, no line wrapping."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatComponent",
+      "description": "Formats source code components such as classes, functions, or modules in supported programming languages. Accepts raw component code and formatting options, applies consistent indentation, spacing, and style conventions, and outputs the formatted code string ready for inclusion in larger codebases.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "componentCode",
+          "type": "string",
+          "description": "The raw source code of the component to format, as a string.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language of the component code (e.g., 'javascript', 'python', 'java').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "Optional coding style guide or preset to follow (e.g., 'Airbnb', 'Google', 'PEP8').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentSize",
+          "type": "number",
+          "description": "Number of spaces to use per indentation level. Defaults to 2.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "Whether to use tabs for indentation instead of spaces.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "semiColon",
+          "type": "boolean",
+          "description": "Whether to enforce semicolons at the end of statements (where applicable).",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with the formatted component code as a string and optional parsing warnings or errors."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have raw or inconsistently styled source code for a component in a supported programming language and want to produce a clean, stylistically consistent formatted version following a specified style guide or customized formatting parameters. This helps maintain codebase quality and readability.",
+        "limitations": "Cannot fix semantic or functional code errors; focuses solely on stylistic formatting. Limited to supported languages and recognized style guides or presets. Does not generate documentation or analyze code logic.",
+        "examples": [
+          "Format a raw JavaScript function component using the Airbnb style guide.",
+          "Format a Python class code string enforcing 4-space indentation and PEP8 style.",
+          "Format a Java method with tabs instead of spaces for indentation and no semicolons (if language allows)."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "code",
+        "component",
+        "source-code",
+        "style",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"componentCode\":\"function add(a,b){return a+b}\",\"language\":\"javascript\",\"styleGuide\":\"Airbnb\",\"indentSize\":2,\"useTabs\":false,\"semiColon\":true}",
+          "description": "Format a JavaScript function to Airbnb style with 2 spaces indentation and semicolons."
+        },
+        {
+          "inputJson": "{\"componentCode\":\"class Person:\\n def __init__(self,name):\\n  self.name=name\",\"language\":\"python\",\"styleGuide\":\"PEP8\",\"indentSize\":4,\"useTabs\":false}",
+          "description": "Format a Python class to PEP8 style with 4 spaces indentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Component",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatCode",
+      "description": "This tool takes source code as input, automatically formats it according to specified language style guidelines, and outputs the cleaned, consistently styled code. It supports multiple programming languages and customizable indentation, line length, and brace style settings to produce readable, standardized code blocks.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "sourceCode",
+          "type": "string",
+          "description": "The raw source code text that needs formatting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language of the source code to apply appropriate formatting rules (e.g., 'javascript', 'python', 'java').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentationStyle",
+          "type": "string",
+          "description": "Style of indentation, such as 'spaces' or 'tabs'.",
+          "required": false,
+          "defaultValue": "spaces"
+        },
+        {
+          "name": "indentationSize",
+          "type": "number",
+          "description": "Number of spaces or tabs used for each indentation level.",
+          "required": false,
+          "defaultValue": "4"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum allowed line length before wrapping the code lines.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "braceStyle",
+          "type": "string",
+          "description": "Brace placement style, e.g., '1tbs', 'allman', or 'stroustrup'.",
+          "required": false,
+          "defaultValue": "1tbs"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted code as a string and a summary of formatting changes applied."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when raw or poorly formatted source code needs to be cleaned for readability, consistency, or to adhere to language-specific style guidelines before review or production deployment. It is especially useful for automated code formatting in CI/CD pipelines or IDE integrations.",
+        "limitations": "This tool reformats code style but does not perform semantic analysis, linting error detection, or code correctness checks. It supports common languages but may not cover every language syntax or variant.",
+        "examples": [
+          "Format a JavaScript snippet with 2 spaces indentation and max line length 100.",
+          "Format Python code with tabs indentation following PEP 8 style.",
+          "Format Java code using Allman brace style and 4 spaces indentation."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "code",
+        "programming",
+        "style",
+        "software development"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceCode\":\"function foo(){console.log('hello');}\",\"language\":\"javascript\",\"indentationStyle\":\"spaces\",\"indentationSize\":2,\"maxLineLength\":100,\"braceStyle\":\"1tbs\"}",
+          "description": "Format minimal JavaScript code with 2-space indentation"
+        },
+        {
+          "inputJson": "{\"sourceCode\":\"def foo():\\n    print('hello')\",\"language\":\"python\",\"indentationStyle\":\"tabs\",\"indentationSize\":1,\"maxLineLength\":80,\"braceStyle\":\"\"}",
+          "description": "Format Python code with tab indentation following PEP 8 standards"
+        },
+        {
+          "inputJson": "{\"sourceCode\":\"public class Main{public static void main(String[] args){System.out.println(\\\"Hello\\\");}}\",\"language\":\"java\",\"indentationStyle\":\"spaces\",\"indentationSize\":4,\"maxLineLength\":80,\"braceStyle\":\"allman\"}",
+          "description": "Format Java code snippet with Allman brace style and 4 spaces indentation"
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Code",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatFAQ",
+      "description": "Formats a list of FAQ entries into a structured, user-friendly FAQ document. Accepts input as an array of objects, each with a question and answer, and produces a formatted string output with optional styling and numbering.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "faqEntries",
+          "type": "array",
+          "description": "An array of objects each containing 'question' and 'answer' strings representing FAQ items to format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Output format style, such as 'markdown', 'html', or 'plainText' to control formatting syntax.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "numbered",
+          "type": "boolean",
+          "description": "Whether to number the FAQ entries sequentially. Defaults to false (bulleted style).",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "includeHeading",
+          "type": "boolean",
+          "description": "Whether to include a main heading 'Frequently Asked Questions' at the start of the output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "maxItems",
+          "type": "number",
+          "description": "Maximum number of FAQ entries to include in the output. If set, truncates the list to this number.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing 'formattedFAQ' string which is the complete formatted FAQ document in the specified style."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate a clean, formatted FAQ section from raw question-answer pairs in various output formats like markdown for docs, HTML for web pages, or plaintext for simple display, optionally with numbering and a main heading.",
+        "limitations": "Does not generate content itself; requires pre-existing questions and answers. Formatting styles are limited to basic markdown, HTML, or plain text and may not support advanced styling or nested elements.",
+        "examples": [
+          "Format an FAQ array into a markdown document with numbered questions.",
+          "Create a plain text FAQ list without numbering or heading, limited to top 5 questions.",
+          "Generate an HTML formatted FAQ with heading and unnumbered entries."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "content-creation",
+        "FAQ",
+        "documentation",
+        "markdown",
+        "html",
+        "plainText"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"faqEntries\":[{\"question\":\"What is your return policy?\",\"answer\":\"You can return any item within 30 days of purchase.\"},{\"question\":\"Do you offer technical support?\",\"answer\":\"Yes, 24/7 technical support is available.\"}],\"style\":\"markdown\",\"numbered\":true,\"includeHeading\":true}",
+          "description": "Format two FAQ items as a numbered markdown FAQ document including a heading."
+        },
+        {
+          "inputJson": "{\"faqEntries\":[{\"question\":\"How to reset my password?\",\"answer\":\"Click 'Forgot Password' on the login page and follow instructions.\"},{\"question\":\"Is there a mobile app?\",\"answer\":\"Yes, available on both Android and iOS.\"}],\"style\":\"plainText\",\"numbered\":false,\"includeHeading\":false}",
+          "description": "Format a simple plain text FAQ without heading or numbering."
+        },
+        {
+          "inputJson": "{\"faqEntries\":[{\"question\":\"Where are you located?\",\"answer\":\"Our headquarters are in New York.\"}],\"style\":\"html\",\"numbered\":false,\"includeHeading\":true}",
+          "description": "Generate a single entry FAQ formatted as HTML with a heading and bulleted entry."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatChecklist",
+      "description": "Formats a checklist from a list of items and metadata into a standardized text or markdown document. Accepts an array of checklist items, each with optional status and description, and outputs a formatted checklist string with configurable options including output style, item prefixes, and status indicators.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "items",
+          "type": "array",
+          "description": "An array of checklist items, each item is an object with 'text' (string), optional 'isChecked' (boolean), and optional 'description' (string).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The format of the output checklist document, e.g., 'markdown' or 'plainText'.",
+          "required": false,
+          "defaultValue": "\"markdown\""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title string to be included at the top of the checklist.",
+          "required": false,
+          "defaultValue": "\"\""
+        },
+        {
+          "name": "includeDescriptions",
+          "type": "boolean",
+          "description": "Whether to include item descriptions below each checklist item.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "checkedSymbol",
+          "type": "string",
+          "description": "Symbol or string to use for checked items (default is 'x' for markdown).",
+          "required": false,
+          "defaultValue": "\"x\""
+        },
+        {
+          "name": "uncheckedSymbol",
+          "type": "string",
+          "description": "Symbol or string to use for unchecked items (default is space for markdown).",
+          "required": false,
+          "defaultValue": "\" \""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with a single 'formattedChecklist' string property containing the formatted checklist document."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or formatting checklists for documentation, project management, or task tracking. It helps create consistent checklist output in markdown or plain text from raw checklist item data, supporting features like checked states, descriptions, and titles to improve clarity and presentation.",
+        "limitations": "This tool only formats checklist items into text formats (markdown or plain text). It does not integrate with external task management systems, does not support interactive or dynamic checklist behavior, and does not generate complex document formats like PDF or HTML with styling.",
+        "examples": [
+          "Generate a markdown checklist with items and checkboxes from item data including checked states.",
+          "Create a plain text checklist with a title, without item descriptions, using custom symbols for checkboxes.",
+          "Format a checklist including item descriptions displayed below each item in markdown format."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "checklist",
+        "markdown",
+        "task-management",
+        "document"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"items\":[{\"text\":\"Install dependencies\",\"isChecked\":true},{\"text\":\"Run tests\",\"isChecked\":false},{\"text\":\"Deploy to production\",\"isChecked\":false}],\"outputFormat\":\"markdown\",\"title\":\"Release Checklist\",\"includeDescriptions\":false}",
+          "description": "Format a checklist in markdown with a title and checked states."
+        },
+        {
+          "inputJson": "{\"items\":[{\"text\":\"Buy groceries\",\"isChecked\":false,\"description\":\"Remember to buy fruits and veggies.\"},{\"text\":\"Call plumber\",\"isChecked\":true,\"description\":\"Fix kitchen sink leak.\"}],\"outputFormat\":\"markdown\",\"title\":\"Home Tasks\",\"includeDescriptions\":true}",
+          "description": "Format a markdown checklist including item descriptions below each item."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatTemplate",
+      "description": "Formats a provided document template by applying consistent styles, placeholders formatting, and layout adjustments. Accepts a template string with placeholders, formatting options, and outputs a formatted template string ready for content insertion or presentation.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "templateString",
+          "type": "string",
+          "description": "The raw template text which may include placeholders or tokens to format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The style preset to apply such as 'formal', 'casual', or 'business'.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "placeholderFormat",
+          "type": "string",
+          "description": "The formatting style for placeholders, e.g., double curly braces '{{placeholder}}', angle brackets ''.",
+          "required": false,
+          "defaultValue": "{{}}"
+        },
+        {
+          "name": "indentationSpaces",
+          "type": "number",
+          "description": "Number of spaces to use for indentation in the formatted template.",
+          "required": false,
+          "defaultValue": "4"
+        },
+        {
+          "name": "capitalizeHeadings",
+          "type": "boolean",
+          "description": "Whether to capitalize all headings within the template.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "lineSpacing",
+          "type": "number",
+          "description": "Number of line breaks between paragraphs or sections.",
+          "required": false,
+          "defaultValue": "1"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted template string as 'formattedTemplate'. This template is consistently styled and ready for content insertion."
+      },
+      "aiAgent": {
+        "useCase": "This tool should be used when an AI needs to prepare or normalize document templates by applying stylistic rules and placeholder formatting to ensure consistency before content insertion or distribution. It helps automate template standardization for reports, letters, emails, or other documents.",
+        "limitations": "It does not fill in placeholder values; it only formats the template structure and style. It cannot interpret or validate the correctness of placeholders' semantics.",
+        "examples": [
+          "Format the supplied email template to have formal style with double curly braces for placeholders.",
+          "Apply business style template formatting using angle brackets for placeholders with 2 spaces indentation.",
+          "Produce a casually styled template with capitalized headings and single line spacing."
+        ]
+      },
+      "tags": [
+        "content",
+        "template",
+        "formatting",
+        "document",
+        "style",
+        "placeholder",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"templateString\":\"Dear {{recipient}},\\n\\nWe are pleased to offer you the position at our company.\",\"style\":\"formal\",\"placeholderFormat\":\"{{}}\",\"indentationSpaces\":4,\"capitalizeHeadings\":true,\"lineSpacing\":1}",
+          "description": "Format a job offer letter template with formal style and standard placeholder formatting."
+        },
+        {
+          "inputJson": "{\"templateString\":\"Hello ,\\nPlease find your invoice below.\",\"style\":\"business\",\"placeholderFormat\":\"<>\"}",
+          "description": "Apply business style formatting with angle bracket placeholders on an invoice template."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatSummary",
+      "description": "Formats a plain text summary to improve readability and presentation based on specified style options. It accepts a raw text summary along with formatting preferences such as maximum line length, bullet style for lists, and capitalization rules, then outputs a well-structured, formatted summary string.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "rawSummary",
+          "type": "string",
+          "description": "The input plain text summary that needs formatting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum length of each line in characters to wrap text appropriately. Use 0 for no wrapping.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "bulletStyle",
+          "type": "string",
+          "description": "Character(s) to use as bullet points for list items, e.g., '-', '*', or numbered lists.",
+          "required": false,
+          "defaultValue": "-"
+        },
+        {
+          "name": "capitalizeFirstLetter",
+          "type": "boolean",
+          "description": "Whether to capitalize the first letter of each sentence in the summary.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "trimExtraWhitespace",
+          "type": "boolean",
+          "description": "Whether to remove extra spaces and normalize spacing in the summary.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted summary as a string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have an unformatted or minimally formatted text summary that needs to be cleaned up for readability and presentation. Ideal for preparing summaries extracted from raw content or AI-generated text for reports, emails, or documentation where consistent formatting is required.",
+        "limitations": "This tool does not generate summaries or analyze content meaning, it only reformats existing plain text summaries. It does not support complex document structures such as tables or images.",
+        "examples": [
+          "Format a summary text for a project report with 60 character line length and bullet points as '*'.",
+          "Clean up a rough summary removing extra spaces and capitalizing sentences.",
+          "Format a raw meeting summary text with no line length limit and dashes as bullets."
+        ]
+      },
+      "tags": [
+        "content",
+        "formatting",
+        "summary",
+        "text",
+        "presentation",
+        "cleanup"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawSummary\":\"project status update includes the following points\\n- schedule on track \\n- budget under review \\n- risks identified\",\"maxLineLength\":60,\"bulletStyle\":\"*\",\"capitalizeFirstLetter\":true,\"trimExtraWhitespace\":true}",
+          "description": "Formats a project status update summary to 60 chars per line, using '*' bullet points and proper sentence capitalization."
+        },
+        {
+          "inputJson": "{\"rawSummary\":\"this is a raw summary   with inconsistent spacing. it should be cleaned.\",\"maxLineLength\":80,\"bulletStyle\":\"-\",\"capitalizeFirstLetter\":true,\"trimExtraWhitespace\":true}",
+          "description": "Cleans extra spaces and capitalizes first letters in a short summary with no specific line length wrapping."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatBrief",
+      "description": "Formats a textual brief document by structuring its sections, applying consistent headings, and ensuring readability. Accepts raw brief text as input, processes it to identify headings, bullet points, and paragraphs, and outputs a cleanly formatted brief suitable for presentation or sharing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "rawText",
+          "type": "string",
+          "description": "The unformatted brief text input to be structured and formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "headingStyle",
+          "type": "string",
+          "description": "The style of headings to apply (e.g., 'bold', 'underline', 'uppercase').",
+          "required": false,
+          "defaultValue": "bold"
+        },
+        {
+          "name": "bulletStyle",
+          "type": "string",
+          "description": "Type of bullet points to use ('dash', 'asterisk', 'numbered').",
+          "required": false,
+          "defaultValue": "dash"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum characters per line for text wrapping and readability.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "applyNumbering",
+          "type": "boolean",
+          "description": "Whether to number main sections automatically.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted brief text as a single string with applied structure and styles."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to convert raw brief text into a well-structured, easy-to-read document, such as when preparing executive summaries or project briefs. It helps ensure consistent formatting before output or sharing.",
+        "limitations": "This tool formats the structure and appearance but does not rewrite or summarize the content, and cannot correct factual or grammatical errors.",
+        "examples": [
+          "Format raw project brief text to a polished document with bold headings.",
+          "Apply numbered sections and dash-style bullet points to a meeting brief.",
+          "Wrap lines at 60 characters and use uppercase headings for emphasis."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "document",
+        "brief",
+        "content-creation",
+        "text-processing",
+        "structure"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawText\":\"Project Overview\\nThis project aims to improve user engagement.\\nKey Goals:\\n- Increase retention\\n- Enhance UI\\nTimeline\\nQ1: Research\\nQ2: Design\\nQ3: Development\",\"headingStyle\":\"bold\",\"bulletStyle\":\"dash\",\"maxLineLength\":80,\"applyNumbering\":true}",
+          "description": "Formats a project brief with bold headings, dash bullets, line wrapping at 80 chars, and numbered sections."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatMinutes",
+      "description": "Formats raw meeting minutes text into a clean, standardized minutes document. Accepts raw text or JSON segments of notes, processes sections like attendees, agenda, discussions, decisions, and action items, and outputs a well-structured formatted meeting minutes document in text or Markdown format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "rawMinutes",
+          "type": "string",
+          "description": "Raw meeting notes text or JSON string representing meeting segments to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "Desired output format style, e.g., 'text', 'markdown', or 'html'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeSections",
+          "type": "array",
+          "description": "List of sections to include in the formatted output (e.g., ['attendees','agenda','decisions','actionItems']).",
+          "required": false,
+          "defaultValue": "[\"attendees\",\"agenda\",\"discussions\",\"decisions\",\"actionItems\"]"
+        },
+        {
+          "name": "dateFormat",
+          "type": "string",
+          "description": "Date format string to display dates consistently (e.g., 'YYYY-MM-DD').",
+          "required": false,
+          "defaultValue": "YYYY-MM-DD"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title to include at the top of the formatted meeting minutes document.",
+          "required": false,
+          "defaultValue": "Meeting Minutes"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted meeting minutes as a string under 'formattedMinutes' key, and optionally the used format style under 'formatStyle'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have unstructured or semi-structured meeting notes that need to be converted into a professional, readable meeting minutes document for sharing or archiving. It standardizes key sections like attendees, agenda, discussion points, decisions made, and action items into a clear and organized format.",
+        "limitations": "This tool does not transcribe audio or verify factual content; it relies on the input notes quality. It cannot interpret ambiguous or incomplete notes beyond basic formatting.",
+        "examples": [
+          "Format raw meeting notes text into Markdown meeting minutes.",
+          "Generate a text-only formatted document from JSON segments of meeting notes.",
+          "Include only specific sections like attendees and action items in the output."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "meeting-minutes",
+        "document",
+        "productivity",
+        "collaboration"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawMinutes\":\"Attendees: Alice, Bob\\nAgenda: Project kickoff\\nDiscussion: Reviewed project scope and deliverables.\\nDecisions: Approved timeline \\nAction Items: Bob to create project plan by next week.\",\"formatStyle\":\"markdown\",\"includeSections\":[\"attendees\",\"agenda\",\"discussions\",\"decisions\",\"actionItems\"],\"dateFormat\":\"YYYY-MM-DD\",\"title\":\"Project Kickoff Meeting\"}",
+          "description": "Formats raw meeting notes into a Markdown structured minutes document including all standard sections."
+        },
+        {
+          "inputJson": "{\"rawMinutes\":\"{\\\"attendees\\\": [\\\"Alice\\\", \\\"Bob\\\"], \\\"agenda\\\": [\\\"Project kickoff\\\"], \\\"decisions\\\": [\\\"Approved timeline\\\"]}\",\"formatStyle\":\"text\",\"includeSections\":[\"attendees\",\"agenda\",\"decisions\"],\"dateFormat\":\"MM/DD/YYYY\",\"title\":\"Kickoff Meeting\"}",
+          "description": "Formats meeting notes provided as JSON segments into a plain text minutes document, including only attendees, agenda, and decisions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatTranscript",
+      "description": "Formats raw transcript text into well-structured formats such as plain text with timestamps, subtitle files (SRT), or JSON for easier readability or integration. Accepts raw transcript input with optional timestamps and speaker labels, processes formatting according to specified style and output type, and returns the formatted transcript as a string.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "rawTranscript",
+          "type": "string",
+          "description": "The raw transcript text input possibly containing timestamps and speaker labels.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format: e.g., 'plain' for readable text, 'srt' for subtitles, or 'json' for structured data.",
+          "required": true,
+          "defaultValue": "plain"
+        },
+        {
+          "name": "includeTimestamps",
+          "type": "boolean",
+          "description": "Whether to include timestamps in the output when supported by the format.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeSpeakerLabels",
+          "type": "boolean",
+          "description": "Whether to include speaker labels in the output if present in input, supported by format.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "timestampFormat",
+          "type": "string",
+          "description": "Format for timestamps if included, e.g., 'HH:MM:SS,ms' for SRT or 'HH:MM:SS' for plain text.",
+          "required": false,
+          "defaultValue": "HH:MM:SS"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum characters per line for plain text output to improve readability.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted transcript string under 'formattedTranscript' key and the format used under 'format' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when raw, unstructured transcript text from audio or video sources needs to be converted into a standardized readable format such as subtitles (SRT), plain readable text, or structured JSON for integration with other applications. Ideal for preparing transcripts for publishing, editing, or subtitle generation.",
+        "limitations": "Does not perform transcription or speech-to-text itself, only formats existing transcript text. Cannot correct transcription errors or add timestamps if not present in input. Formatting output is limited to supported styles (plain, SRT, JSON).",
+        "examples": [
+          "Format a raw meeting transcript into an SRT subtitle file for video.",
+          "Convert an interview transcript into readable plain text with timestamps.",
+          "Generate a JSON structured transcript from raw speaker-labeled text."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "transcript",
+        "formatting",
+        "subtitle",
+        "srt",
+        "text",
+        "json",
+        "media"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawTranscript\":\"[00:00:01] Speaker 1: Hello, this is the start.\\n[00:00:05] Speaker 2: Hi! Glad to be here.\",\"outputFormat\":\"srt\",\"includeTimestamps\":true,\"includeSpeakerLabels\":true}",
+          "description": "Convert raw transcript including timestamps and speaker labels into an SRT subtitle format."
+        },
+        {
+          "inputJson": "{\"rawTranscript\":\"Speaker 1: Welcome everyone to the session. Speaker 2: Thank you!\",\"outputFormat\":\"plain\",\"includeTimestamps\":false,\"includeSpeakerLabels\":true,\"maxLineLength\":50}",
+          "description": "Format raw transcript into plain readable text without timestamps, preserving speaker labels and wrapping lines to 50 characters."
+        },
+        {
+          "inputJson": "{\"rawTranscript\":\"[00:00:01] Speaker 1: Good morning.\\n[00:00:04] Speaker 2: Morning!\",\"outputFormat\":\"json\",\"includeTimestamps\":true,\"includeSpeakerLabels\":true}",
+          "description": "Output transcript as a JSON object including timestamps and speaker labeling for integration with applications."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatReleaseNotes",
+      "description": "Formats raw release notes text or structured release information into a clean, professional, and standardized release notes document. Accepts plain text or release data object inputs, processes styling, sections, and versioning info, and outputs formatted markdown or HTML release notes suitable for publication.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "releaseData",
+          "type": "object",
+          "description": "Structured release information including version, date, highlights, fixes, and other notes.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the release notes document, e.g., 'markdown' or 'html'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeSections",
+          "type": "array",
+          "description": "Array of section names to include like ['Features','Bug Fixes','Known Issues']. If empty, includes all available sections.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeVersionHeader",
+          "type": "boolean",
+          "description": "Whether to include version and date header in the formatted output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "maxEntryLength",
+          "type": "number",
+          "description": "Maximum character length allowed per entry, longer entries will be truncated with ellipsis.",
+          "required": false,
+          "defaultValue": "500"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted release notes string and metadata such as content type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent receives either raw text or structured data for software release notes and needs to produce a polished, well-structured document in markdown or HTML, suitable for users, stakeholders, or publication on release platforms.",
+        "limitations": "This tool does not generate release notes content from unstructured changelogs or code diffs; it only formats provided release data or text. It cannot perform natural language summarization or content creation beyond formatting and truncation.",
+        "examples": [
+          "Format a JSON release notes object into markdown, including only Features and Bug Fixes sections.",
+          "Produce HTML formatted release notes for version 2.1.0, including the version header.",
+          "Format plain text release notes input, truncating long entries to 300 characters."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "release notes",
+        "content creation",
+        "documentation",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"releaseData\":{\"version\":\"1.4.2\",\"date\":\"2024-05-20\",\"Features\":[\"Added new dashboard widgets\",\"Improved login security\"],\"Bug Fixes\":[\"Fixed crash on startup\",\"Resolved UI overlap issue\"],\"Known Issues\":[\"Minor delay in notifications\"]},\"outputFormat\":\"markdown\",\"includeSections\":[\"Features\",\"Bug Fixes\"],\"includeVersionHeader\":true,\"maxEntryLength\":500}",
+          "description": "Formats structured release data into markdown including only Features and Bug Fixes sections with version header."
+        },
+        {
+          "inputJson": "{\"releaseData\":{\"version\":\"3.0.0\",\"date\":\"2024-06-01\",\"Highlights\":[\"Complete UI overhaul\",\"Performance improvements\"],\"Bug Fixes\":[\"Fixed memory leak in module X\"]},\"outputFormat\":\"html\",\"includeSections\":[],\"includeVersionHeader\":true,\"maxEntryLength\":300}",
+          "description": "Formats full release notes in HTML, truncating entries longer than 300 characters, including all sections with version header."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "ReleaseNotes",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatChangelog",
+      "description": "This tool accepts a raw changelog text or object representing software release notes, parses and formats it into a standardized, clean, and markdown-compatible changelog document. It supports customizable formatting styles and output as string or JSON object, facilitating consistent release documentation publishing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "rawChangelog",
+          "type": "string",
+          "description": "The raw changelog content as unformatted text or markdown string. Required.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The version number of the release to include in the changelog header. Optional; leaves header generic if empty.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "releaseDate",
+          "type": "string",
+          "description": "The release date in ISO format (YYYY-MM-DD) to include in the changelog header. Optional.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "Specifies the output formatting style (e.g., 'markdown', 'html', 'plaintext'). Defaults to 'markdown'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeSections",
+          "type": "array",
+          "description": "An array of changelog sections to include such as ['Added','Changed','Fixed']. If empty or omitted, includes all detected sections.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputType",
+          "type": "string",
+          "description": "The output format: 'string' returns formatted changelog text; 'json' returns structured JSON object representing the changelog. Default is 'string'.",
+          "required": false,
+          "defaultValue": "string"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns the formatted changelog content as a string or structured JSON object with version, date, and categorized changes depending on outputType."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to transform raw or inconsistently formatted changelog input into a clean, standardized, well-structured changelog document for display, release notes, or publication. Helpful for automating changelog generation in CI/CD pipelines or software documentation workflows.",
+        "limitations": "Cannot automatically generate changelog content from commit history or tickets; input changelog content must be provided. Does not translate or summarize changelog entries.",
+        "examples": [
+          "Format a raw changelog string into markdown with version and date headers.",
+          "Generate a JSON structured changelog from raw text showing only 'Added' and 'Fixed' sections.",
+          "Convert existing changelog to plaintext for plain text release notes."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "changelog",
+        "release-notes",
+        "documentation",
+        "markdown"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawChangelog\":\"## Added\\n- New login feature\\n## Fixed\\n- Bugfix in user profile\",\"version\":\"1.4.2\",\"releaseDate\":\"2024-06-01\",\"formatStyle\":\"markdown\",\"includeSections\":[],\"outputType\":\"string\"}",
+          "description": "Formats a simple raw changelog with version and date into markdown string."
+        },
+        {
+          "inputJson": "{\"rawChangelog\":\"## Added\\n- Dark mode support\\n## Changed\\n- Updated dependencies\",\"formatStyle\":\"plaintext\",\"outputType\":\"string\"}",
+          "description": "Formats given changelog content into plaintext without version/date header."
+        },
+        {
+          "inputJson": "{\"rawChangelog\":\"## Fixed\\n- Security patch\",\"version\":\"1.5.0\",\"outputType\":\"json\"}",
+          "description": "Produces JSON object representing changelog document for version 1.5.0 with only fixed section."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Changelog",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatBlogPost",
+      "description": "Formats a raw blog post draft into a polished HTML or Markdown document. Accepts the blog post content and metadata, applies styling options, inserts headers, footers, images, and generates structured output ready for publication or further editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "content",
+          "type": "string",
+          "description": "The raw textual content of the blog post as plain text or lightly formatted markup.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title of the blog post to be prominently included in the formatted output.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Author's name to include as metadata or in the byline section.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "Publication date of the blog post, formatted as ISO 8601 string (e.g., 2023-04-20).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Desired output format for the blog post; supported options: 'html' or 'markdown'.",
+          "required": true,
+          "defaultValue": "html"
+        },
+        {
+          "name": "includeImages",
+          "type": "boolean",
+          "description": "Whether to embed or link images referenced within the blog content as part of the formatting.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Styling theme applied to blog post formatting; influences colors, fonts, and layout styles.",
+          "required": false,
+          "defaultValue": "default"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the fully formatted blog post text in the chosen format and metadata including word count and applied styles."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert raw blog draft text and metadata into a clean, publication-ready HTML or Markdown format with consistent styling and optional image embedding. It streamlines preparing posts for websites or content platforms requiring structured formats.",
+        "limitations": "Does not perform advanced content rewriting, SEO optimization, or plagiarism detection. Limited to formatting and structuring tasks. Does not validate external image URLs or guarantee accessibility compliance.",
+        "examples": [
+          "Format a submitted blog draft from plain text to HTML with byline and date included.",
+          "Generate a Markdown version of a blog post with embedded images for a static site generator.",
+          "Apply a custom theme to a blog post text and output as HTML for CMS upload."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "blog",
+        "html",
+        "markdown",
+        "publication",
+        "styling"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"content\":\"Welcome to my new blog! This post covers AI advancements.\",\"title\":\"AI Advancements 2024\",\"author\":\"Jane Doe\",\"date\":\"2024-06-01\",\"format\":\"html\",\"includeImages\":false,\"theme\":\"modern\"}",
+          "description": "Format a simple AI blog post text into styled HTML including metadata and modern theme."
+        },
+        {
+          "inputJson": "{\"content\":\"This is a technical post about APIs.\",\"title\":\"Understanding APIs\",\"format\":\"markdown\",\"includeImages\":true}",
+          "description": "Produce a Markdown blog post that embeds images and includes title with default theme."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatInvoice",
+      "description": "Formats raw invoice data into a professional, well-structured invoice document in PDF or HTML format. Accepts detailed invoice data including client info, line items, taxes, discounts, and branding elements, and outputs a polished invoice ready for delivery or printing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "invoiceData",
+          "type": "object",
+          "description": "Complete invoice details including client information, itemized charges, taxes, discounts, invoice number, and dates.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the formatted invoice document, either 'PDF' or 'HTML'.",
+          "required": true,
+          "defaultValue": "PDF"
+        },
+        {
+          "name": "includeLogo",
+          "type": "boolean",
+          "description": "Whether to include the company logo in the invoice header.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "logoUrl",
+          "type": "string",
+          "description": "URL of the company logo image to embed if includeLogo is true.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "currencySymbol",
+          "type": "string",
+          "description": "The currency symbol to display alongside monetary amounts (e.g., '$', '€').",
+          "required": false,
+          "defaultValue": "$"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code for localizing date formats and labels in the invoice (e.g., 'en', 'fr').",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "showTotalsInWords",
+          "type": "boolean",
+          "description": "Option to display the invoice total amount also spelled out in words.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted invoice document as a base64 encoded string and metadata such as file type and recommended filename."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert raw structured invoice data from a system or form into a clean, professional invoice document for sending to clients or for record-keeping. Ideal for automated billing pipelines or digital invoicing platforms.",
+        "limitations": "Cannot generate invoices without all required invoice data fields. Does not handle payment processing or invoice numbering generation by itself. Complex multi-page invoices with very large item lists may affect formatting consistency.",
+        "examples": [
+          "Generate a PDF invoice from raw invoice line items and client details to email a customer.",
+          "Create an HTML version of the invoice to display in a web portal with company branding.",
+          "Format invoice data into a PDF including logo and amounts spelled out in words for formal documentation."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "invoice",
+        "document",
+        "PDF",
+        "HTML",
+        "billing",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-12345\",\"date\":\"2024-06-01\",\"dueDate\":\"2024-06-15\",\"client\":{\"name\":\"Acme Corp\",\"address\":\"123 Business Rd, Suite 100\"},\"items\":[{\"description\":\"Product A\",\"quantity\":10,\"unitPrice\":15.5},{\"description\":\"Service B\",\"quantity\":5,\"unitPrice\":40}],\"taxRate\":0.07,\"discount\":20},\"outputFormat\":\"PDF\",\"includeLogo\":true,\"logoUrl\":\"https://example.com/logo.png\",\"currencySymbol\":\"$\",\"language\":\"en\",\"showTotalsInWords\":true}",
+          "description": "Format a complete invoice with line items, tax, and discount into a professional PDF including company logo and amounts in words."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Invoice",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatArticle",
+      "description": "Formats a raw article text input into a structured and styled HTML or Markdown output. Accepts article content, formatting preferences, and styling options to produce a cleanly formatted article suitable for publishing platforms or web display.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "articleText",
+          "type": "string",
+          "description": "The raw article text content to be formatted, including paragraphs and headings.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format for the formatted article, e.g., 'html' or 'markdown'.",
+          "required": true,
+          "defaultValue": "\"html\""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents based on headings in the article.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "headingStyle",
+          "type": "string",
+          "description": "Style choice for headings, e.g., 'bold', 'underline', or 'default'.",
+          "required": false,
+          "defaultValue": "\"default\""
+        },
+        {
+          "name": "maxLineWidth",
+          "type": "number",
+          "description": "Maximum line width limit for text wrapping in the formatted output (applicable primarily for Markdown).",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "customCss",
+          "type": "string",
+          "description": "Optional custom CSS styles to embed within the HTML output (ignored if outputFormat is Markdown).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the fully formatted article as a string and metadata about the output format and any warnings or notes."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert plain or semi-structured article text into a well-formatted, stylized article output in HTML or Markdown. It assists in transforming raw content into publication-ready format with options such as table of contents, heading styles, and custom CSS injection.",
+        "limitations": "Does not perform content editing, grammar checking, or content generation. Focuses only on formatting given text. Complex layout features like multi-column or interactive content are not supported.",
+        "examples": [
+          "Format raw article text into HTML with a table of contents and bold headings.",
+          "Convert article content into Markdown format with default heading style and a max line width of 100 characters.",
+          "Format article text into HTML embedding custom CSS for branding styles."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "content-creation",
+        "article",
+        "html",
+        "markdown",
+        "text-processing",
+        "styling"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"articleText\":\"# Introduction\\nThis is the first paragraph.\\n## Subheading\\nMore detailed information.\",\"outputFormat\":\"html\",\"includeTableOfContents\":true,\"headingStyle\":\"bold\",\"maxLineWidth\":80,\"customCss\":\"h1 { color: #2E86C1; }\"}",
+          "description": "Format a markdown style raw article into HTML with table of contents, bold headings, 80 char line width, and a custom blue heading CSS."
+        },
+        {
+          "inputJson": "{\"articleText\":\"Introduction\\nThis is the first paragraph.\\nSubheading\\nMore details here.\",\"outputFormat\":\"markdown\",\"includeTableOfContents\":false,\"headingStyle\":\"default\",\"maxLineWidth\":100,\"customCss\":\"\"}",
+          "description": "Convert plaintext article content into Markdown format with default heading style and no table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatEmail",
+      "description": "Formats raw email content by applying specified style templates, adjusting layout, and optionally adding salutation and signature. Accepts plain text or HTML body, subject, recipient info, and formatting options; outputs a fully formatted email in HTML suitable for sending or previewing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "The subject line of the email to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "body",
+          "type": "string",
+          "description": "The main content or body of the email, can be plain text or HTML.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "recipientName",
+          "type": "string",
+          "description": "The recipient's name to personalize the salutation, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "senderName",
+          "type": "string",
+          "description": "The sender's name to include in the signature or closing line.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeSignature",
+          "type": "boolean",
+          "description": "Whether to append a standard signature block at the end of the email.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "signatureText",
+          "type": "string",
+          "description": "Custom signature text to include if includeSignature is true; overrides default signature if provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "The email formatting style to apply, such as 'professional', 'casual', 'marketing', or 'newsletter'.",
+          "required": false,
+          "defaultValue": "professional"
+        },
+        {
+          "name": "includeSalutation",
+          "type": "boolean",
+          "description": "Whether to prepend a salutation line addressing the recipient by name if given.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the fully formatted email body in HTML format and the finalized subject line."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or refining email messages that require professional and consistent formatting, including templating of salutations, signatures, and style adjustments. Ideal for automating email communications to customers, partners, or teams where style uniformity and personalization are needed.",
+        "limitations": "This tool does not send emails or handle email protocol. It only formats the email content for display or sending via other systems. Complex dynamic content or inline media embedding is unsupported.",
+        "examples": [
+          "Format a sales outreach email with a casual style and include a custom signature.",
+          "Generate a professional newsletter email body with default styling and standard signature.",
+          "Create a reminder email with recipient name in salutation and no signature."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "email",
+        "formatting",
+        "communication",
+        "templating",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"subject\":\"Meeting Agenda Update\",\"body\":\"Please find the updated agenda for tomorrow's meeting attached.\",\"recipientName\":\"Alice\",\"senderName\":\"Bob\",\"includeSignature\":true,\"signatureText\":\"Best regards, Bob Smith\\nCompany Inc.\",\"formatStyle\":\"professional\",\"includeSalutation\":true}",
+          "description": "Format a professional meeting email with personalized salutation and custom signature."
+        },
+        {
+          "inputJson": "{\"subject\":\"Don't Miss Our Summer Sale!\",\"body\":\"Huge discounts on all products this week only. Shop now!\",\"recipientName\":\"\",\"senderName\":\"Marketing Team\",\"includeSignature\":false,\"formatStyle\":\"marketing\",\"includeSalutation\":false}",
+          "description": "Format a marketing promotional email with no salutation or signature for mass distribution."
+        },
+        {
+          "inputJson": "{\"subject\":\"Quick Reminder\",\"body\":\"Just a quick reminder about the deadline next Monday.\",\"recipientName\":\"John\",\"senderName\":\"Sarah\",\"includeSignature\":true,\"signatureText\":\"\",\"formatStyle\":\"casual\",\"includeSalutation\":true}",
+          "description": "Format a casual reminder email including default signature and personalized greeting."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Email",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatResume",
+      "description": "Formats a resume provided as structured JSON data according to a specified style template (e.g., chronological, functional, hybrid). Accepts resume details including personal info, experience, education, and skills. Returns a formatted resume as a styled text string or PDF-ready output.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "resumeData",
+          "type": "object",
+          "description": "Structured JSON object containing resume details like personal information, work experience, education, skills, and certifications.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "Desired resume format style, such as 'chronological', 'functional', or 'hybrid' to structure the content accordingly.",
+          "required": true,
+          "defaultValue": "chronological"
+        },
+        {
+          "name": "includeSections",
+          "type": "array",
+          "description": "List of resume sections to include, e.g., ['summary','experience','education','skills']. Determines which sections appear in the formatted resume.",
+          "required": false,
+          "defaultValue": "[\"summary\",\"experience\",\"education\",\"skills\"]"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Output format of the formatted resume. Options include 'text' for plain formatted text or 'pdf' for PDF-ready content.",
+          "required": false,
+          "defaultValue": "text"
+        },
+        {
+          "name": "highlightSkills",
+          "type": "boolean",
+          "description": "Whether to emphasize or visually highlight skills in the formatted resume (applicable for text and some PDF styles).",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted resume as a string in the requested output format, along with metadata like page count for PDF."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert raw structured resume data into a professional, well-organized resume document, formatted per common industry styles. Ideal for automated resume building, batch formatting, or tailoring resumes to specific job applications.",
+        "limitations": "Does not perform resume content analysis or optimization beyond formatting. Cannot create resume data from unstructured input. Limited to predefined style templates.",
+        "examples": [
+          "Format a chronological resume as plain text including all standard sections.",
+          "Generate a PDF formatted functional style resume highlighting skills section.",
+          "Create a hybrid resume excluding the summary section in text format."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "resume",
+        "formatting",
+        "document",
+        "career",
+        "pdf",
+        "text"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"resumeData\":{\"personalInfo\":{\"name\":\"Jane Doe\",\"email\":\"jane@example.com\"},\"experience\":[{\"company\":\"ACME Corp\",\"position\":\"Engineer\",\"startDate\":\"2019-01\",\"endDate\":\"2022-06\",\"details\":\"Worked on systems.\"}],\"education\":[{\"school\":\"State University\",\"degree\":\"BSc Computer Science\",\"year\":\"2018\"}],\"skills\":[\"JavaScript\",\"Leadership\"]},\"formatStyle\":\"chronological\",\"includeSections\":[\"personalInfo\",\"experience\",\"education\",\"skills\"],\"outputFormat\":\"text\",\"highlightSkills\":false}",
+          "description": "Format a standard chronological resume as plain text including all key sections."
+        },
+        {
+          "inputJson": "{\"resumeData\":{\"personalInfo\":{\"name\":\"John Smith\",\"email\":\"johnsmith@email.com\"},\"experience\":[{\"company\":\"Tech Solutions\",\"position\":\"Developer\",\"startDate\":\"2015-05\",\"endDate\":\"2020-08\",\"details\":\"Developed web apps.\"}],\"education\":[{\"school\":\"Tech Institute\",\"degree\":\"MSc Information Technology\",\"year\":\"2015\"}],\"skills\":[\"React\",\"Project Management\"]},\"formatStyle\":\"functional\",\"includeSections\":[\"personalInfo\",\"skills\",\"education\"],\"outputFormat\":\"pdf\",\"highlightSkills\":true}",
+          "description": "Generate a PDF functional resume highlighting skills and excluding experience details."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Resume",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatReport",
+      "description": "Formats a textual report document according to specified style guidelines. Accepts raw report content and customizable formatting options such as font style, font size, margins, header/footer text, and output file format. Produces a finalized, styled report document ready for printing or digital distribution.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "reportContent",
+          "type": "string",
+          "description": "The raw textual content of the report to be formatted, including sections, paragraphs, and data.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "fontName",
+          "type": "string",
+          "description": "The desired font family to apply throughout the report (e.g., Arial, Times New Roman).",
+          "required": false,
+          "defaultValue": "Times New Roman"
+        },
+        {
+          "name": "fontSize",
+          "type": "number",
+          "description": "The size of the font to use in points.",
+          "required": false,
+          "defaultValue": "12"
+        },
+        {
+          "name": "marginInches",
+          "type": "object",
+          "description": "Margin sizes in inches for the report page. Should include top, bottom, left, and right keys.",
+          "required": false,
+          "defaultValue": "{\"top\":1,\"bottom\":1,\"left\":1,\"right\":1}"
+        },
+        {
+          "name": "includeHeaderFooter",
+          "type": "boolean",
+          "description": "Whether to include header and footer sections in the report.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "headerText",
+          "type": "string",
+          "description": "Custom text to appear in the header if headers are included.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "footerText",
+          "type": "string",
+          "description": "Custom text to appear in the footer if footers are included.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The file format for the output report document (e.g., PDF, DOCX).",
+          "required": false,
+          "defaultValue": "PDF"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted report document as a base64-encoded string along with metadata such as filename and mime type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to transform raw textual report content into a professional, visually consistent document with standardized formatting for sharing, printing, or archiving. It helps apply common styling conventions and outputs the result in popular document formats.",
+        "limitations": "This tool does not perform content analysis, summarization, or generate report content. It also doesn't support highly customized layout designs or complex interactive elements like tables of contents or embedded multimedia.",
+        "examples": [
+          "Format a quarterly sales report with Times New Roman font, 12pt, one-inch margins, including company header and page number footer, output as PDF.",
+          "Convert raw text notes of a research summary into a formatted document using Arial font, 11pt, with custom header and footer text, output as DOCX."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "document-formatting",
+        "report",
+        "PDF",
+        "DOCX",
+        "text-styling"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"reportContent\":\"Executive Summary:\\nThis quarter we achieved record growth...\",\"fontName\":\"Arial\",\"fontSize\":11,\"marginInches\":{\"top\":1,\"bottom\":1,\"left\":1,\"right\":1},\"includeHeaderFooter\":true,\"headerText\":\"Company Confidential\",\"footerText\":\"Page 1\",\"outputFormat\":\"PDF\"}",
+          "description": "Format an executive summary report in Arial 11pt with headers and footers for confidential distribution."
+        },
+        {
+          "inputJson": "{\"reportContent\":\"Research Findings:\\nThe experiment yielded significant results...\",\"fontName\":\"Calibri\",\"fontSize\":12,\"marginInches\":{\"top\":1.25,\"bottom\":1.25,\"left\":1,\"right\":1},\"includeHeaderFooter\":false,\"outputFormat\":\"DOCX\"}",
+          "description": "Format a research findings report in Calibri 12pt without headers/footers, using slightly larger top and bottom margins."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatContract",
+      "description": "Formats a contract document by accepting raw contract text along with optional formatting options such as style templates, font sizes, and clause ordering rules. It processes the input by applying consistent styles, organizing clauses logically, and ensuring professional document structure. The output is a fully formatted contract ready for review or signing as a text string or a structured document object.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "contractText",
+          "type": "string",
+          "description": "The raw unformatted contract text that needs to be processed and structured into a properly formatted document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleTemplate",
+          "type": "string",
+          "description": "Optional style template name to apply specific fonts, headings, and paragraph styles.",
+          "required": false,
+          "defaultValue": "Standard"
+        },
+        {
+          "name": "fontSize",
+          "type": "number",
+          "description": "Base font size (in points) to use throughout the contract for consistent appearance.",
+          "required": false,
+          "defaultValue": "12"
+        },
+        {
+          "name": "clauseOrder",
+          "type": "array",
+          "description": "An optional ordered list of clause titles specifying the sequence in which clauses should appear.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Flag to determine whether to generate a table of contents at the beginning of the contract.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output document format, e.g., 'text', 'markdown', or 'json' structured format.",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted contract document as a string or structured data depending on the output format, plus metadata such as applied style and document length."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to convert raw contract text into a professionally formatted legal document for presentation, review, or digital signing. Helpful in scenarios where consistent styling, clause organization, and optional additions like a table of contents improve readability and legal clarity.",
+        "limitations": "Cannot interpret or validate contract legal content for compliance; does not create contract text but only formats provided input.",
+        "examples": [
+          "Format a raw service agreement text into a styled contract with a table of contents.",
+          "Apply corporate branding style to an NDA contract and reorder clauses per company standards.",
+          "Convert a plain text lease contract into markdown format for online publication."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "document-formatting",
+        "legal",
+        "contract",
+        "text-processing",
+        "formatting",
+        "document-management"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"contractText\":\"This Agreement is made on... Section 1 Definitions... Section 2 Obligations...\",\"styleTemplate\":\"Corporate\",\"fontSize\":11,\"clauseOrder\":[\"Definitions\",\"Obligations\",\"Termination\"],\"includeTableOfContents\":true,\"outputFormat\":\"text\"}",
+          "description": "Formatting a corporate style contract with clause reordering and TOC."
+        },
+        {
+          "inputJson": "{\"contractText\":\"Lease Contract... Parties... Terms...\",\"styleTemplate\":\"Standard\",\"fontSize\":12,\"includeTableOfContents\":false,\"outputFormat\":\"markdown\"}",
+          "description": "Formatting a lease contract into markdown without a table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Contract",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftReference",
+      "description": "Generates a well-formatted academic or professional reference entry based on provided bibliographic details. Accepts parameters like author(s), title, publication year, source type, and more; processes them into a standardized citation string formatted in styles such as APA, MLA, or Chicago. Outputs the formatted reference ready for inclusion in documents or bibliographies.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of authors for the reference, each as a string in 'Last, First' format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the work cited, e.g., book, article, or webpage title.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationYear",
+          "type": "number",
+          "description": "Year the work was published.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of source, such as 'book', 'journal', 'website', 'conference paper'.",
+          "required": true,
+          "defaultValue": "book"
+        },
+        {
+          "name": "publisher",
+          "type": "string",
+          "description": "Publisher name, relevant for book or report sources.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "journalName",
+          "type": "string",
+          "description": "Name of the journal or magazine if sourceType is 'journal'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "volume",
+          "type": "string",
+          "description": "Volume number for journal articles or multi-volume works.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "issue",
+          "type": "string",
+          "description": "Issue number of the journal if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pages",
+          "type": "string",
+          "description": "Page range of article or chapter, e.g., '23-45'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL if the source is online or digital.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessDate",
+          "type": "string",
+          "description": "Date the online source was accessed, in ISO format YYYY-MM-DD.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "The desired citation style (e.g., 'APA', 'MLA', 'Chicago').",
+          "required": true,
+          "defaultValue": "APA"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single field 'formattedReference' with the complete formatted citation string."
+      },
+      "aiAgent": {
+        "useCase": "This tool helps generate properly formatted reference entries for academic papers, reports, or professional documents from structured bibliographic input. AI agents use it to automate citation creation ensuring consistency and adherence to style guides like APA, MLA, or Chicago when drafting content or assembling bibliographies.",
+        "limitations": "This tool cannot verify the accuracy of bibliographic data or access external databases to retrieve missing information; it formats only the supplied input. It also does not handle complex citation nuances such as legal or patent references.",
+        "examples": [
+          "Draft an APA style reference for a journal article by two authors published in 2020.",
+          "Create an MLA citation for a book authored by a single author published by a known publisher.",
+          "Generate a Chicago style reference for a webpage with a URL and access date."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "citation",
+        "reference",
+        "academic",
+        "bibliography",
+        "formatting",
+        "drafting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Innovations in AI\",\"publicationYear\":2020,\"sourceType\":\"journal\",\"journalName\":\"Journal of AI Research\",\"volume\":\"15\",\"issue\":\"4\",\"pages\":\"134-150\",\"citationStyle\":\"APA\"}",
+          "description": "Generate an APA citation for a journal article with two authors published in 2020."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Brown, Alice\"],\"title\":\"Modern Web Design\",\"publicationYear\":2018,\"sourceType\":\"book\",\"publisher\":\"Tech Press\",\"citationStyle\":\"MLA\"}",
+          "description": "Create an MLA citation for a book by a single author."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Green, Sarah\"],\"title\":\"Understanding Cloud Computing\",\"sourceType\":\"website\",\"url\":\"https://cloud.example.com/overview\",\"accessDate\":\"2023-11-05\",\"citationStyle\":\"Chicago\"}",
+          "description": "Generate a Chicago style reference for a webpage with URL and access date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftCitation",
+      "description": "Generates a properly formatted citation string based on provided bibliographic details and citation style. Accepts input fields like author(s), title, publication year, source type, and optional details like volume and pages. Outputs a citation string formatted accordingly (e.g., APA, MLA, Chicago).",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of author names in 'Last, First' format; multiple authors supported.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title of the work being cited (article, book, etc.).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationYear",
+          "type": "number",
+          "description": "Year the work was published or released.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of source, e.g., 'book', 'journalArticle', 'website'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationTitle",
+          "type": "string",
+          "description": "Name of journal, book publisher, or website, depending on source.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "volume",
+          "type": "string",
+          "description": "Volume number of the journal or book series, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "issue",
+          "type": "string",
+          "description": "Issue number of the journal, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pages",
+          "type": "string",
+          "description": "Page range for articles or chapters, e.g., '23-45'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "doiOrUrl",
+          "type": "string",
+          "description": "Digital Object Identifier (DOI) or URL for online sources.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format output (e.g., 'APA', 'MLA', 'Chicago').",
+          "required": true,
+          "defaultValue": "APA"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a single string field 'citation' containing the formatted citation text."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate accurate and properly formatted citations for academic or professional documents based on structured bibliographic details. It standardizes citation creation according to a specified style, saving manual formatting effort.",
+        "limitations": "Does not verify the correctness of bibliographic data nor fetch missing metadata automatically. Limited to  common citation styles and may not cover all edge cases, such as unusual source types or complex multi-author rules.",
+        "examples": [
+          "Generate an APA citation for a journal article with multiple authors.",
+          "Create a Chicago-style citation for a book with publisher info.",
+          "Draft an MLA citation for a website source including a URL."
+        ]
+      },
+      "tags": [
+        "citation",
+        "content-creation",
+        "academic",
+        "formatting",
+        "bibliography",
+        "reference",
+        "APA",
+        "MLA",
+        "Chicago"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Innovations in AI\",\"publicationYear\":2022,\"sourceType\":\"journalArticle\",\"publicationTitle\":\"Journal of AI Research\",\"volume\":\"15\",\"issue\":\"3\",\"pages\":\"123-145\",\"doiOrUrl\":\"10.1234/jair.2022.01503\",\"citationStyle\":\"APA\"}",
+          "description": "Drafts an APA citation for a journal article with two authors, volume, issue, pages, and DOI."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Brown, Lisa\"],\"title\":\"Understanding Modern Art\",\"publicationYear\":2018,\"sourceType\":\"book\",\"publicationTitle\":\"Modern Art Press\",\"citationStyle\":\"Chicago\"}",
+          "description": "Creates a Chicago-style citation for a book with a single author, publisher, and year."
+        },
+        {
+          "inputJson": "{\"authors\":[],\"title\":\"Climate Change Effects\",\"publicationYear\":2020,\"sourceType\":\"website\",\"publicationTitle\":\"Environmental News\",\"doiOrUrl\":\"https://envnews.org/climate-change-effects\",\"citationStyle\":\"MLA\"}",
+          "description": "Generates an MLA citation for a website article without authors but with a URL."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatProposal",
+      "description": "Formats a textual proposal document into a structured, professional layout suitable for presentations or submissions. Accepts raw proposal text and optional formatting preferences, applies consistent styles like headings, bullet points, and sections, then outputs a formatted document in Markdown or HTML format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "proposalText",
+          "type": "string",
+          "description": "Raw textual content of the proposal to be formatted, including all sections and paragraphs.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "The desired output format style, e.g., 'markdown' or 'html'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate a table of contents based on proposal headings.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum number of characters per line for text wrapping, if applicable.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "highlightKeywords",
+          "type": "array",
+          "description": "List of keywords or phrases to emphasize in the formatted proposal, e.g., bold or italicize.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the fully formatted proposal document in the specified format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have an unstructured or semi-structured proposal text that needs consistent formatting into a professional document format for sharing, reviewing or publishing. This helps convert plain text into readable, well-organized documents with sections and lists clearly styled.",
+        "limitations": "This tool does not generate or verify proposal content; it only formats provided text. It cannot create graphics or handle complex visual layouts outside basic Markdown or HTML styling.",
+        "examples": [
+          "Format a raw proposal text into Markdown with a table of contents.",
+          "Convert a plain text proposal into HTML with keyword highlights.",
+          "Wrap lines at 100 characters while formatting a proposal."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "formatting",
+        "proposal",
+        "document",
+        "markdown",
+        "html",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"proposalText\":\"# Project Proposal\\n\\nThis project aims to develop an AI tool.\\n\\n## Objectives\\n- Automate document formatting\\n- Improve readability\\n\\n## Timeline\\nThe project will span 6 months.\",\"formatStyle\":\"markdown\",\"includeTableOfContents\":true,\"maxLineLength\":80,\"highlightKeywords\":[\"AI tool\",\"document formatting\"]}",
+          "description": "Formats a markdown proposal with headings, bullet points, a TOC, and highlights specified keywords."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Proposal",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.formatDocument",
+      "description": "This tool takes raw text or document content as input along with formatting instructions or style guidelines, applies the specified formatting (such as headings, lists, fonts, alignments, and styles), and outputs a neatly formatted document in the desired output format like HTML, Markdown, or plain text. It streamlines document presentation based on user-defined style parameters.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "content",
+          "type": "string",
+          "description": "The raw text or document content to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "object",
+          "description": "An object defining the formatting rules such as font size, headings, bullet points, bold, italic, alignment, and paragraph spacing.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format of the formatted document (e.g., 'html', 'markdown', 'plainText').",
+          "required": true,
+          "defaultValue": "html"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents in the document if applicable.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "maxLineWidth",
+          "type": "number",
+          "description": "Maximum number of characters per line for text wrapping in plain text output.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted document content as a string and the format type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert raw or minimally formatted document content into a polished, styled document that adheres to specific formatting rules or style guides. It's especially useful for generating clean readable outputs for reports, articles, or documentation in various output formats.",
+        "limitations": "This tool does not perform content generation, grammar correction, or semantic analysis. It only applies structural and stylistic formatting based on provided instructions. It cannot handle complex layouts like multi-column pages or embedded media beyond text formatting.",
+        "examples": [
+          "Format a raw article text into Markdown with headings and bullet lists.",
+          "Convert plain text meeting notes into an HTML report styled with company branding.",
+          "Apply specified font style and alignment to a document and output as plain text with line wrapping."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "document",
+        "content creation",
+        "text styling",
+        "html",
+        "markdown"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"content\":\"Meeting notes:\\n- Discuss project timeline\\n- Assign tasks\",\"formatStyle\":{\"heading\":{\"level\":2,\"bold\":true},\"list\":{\"type\":\"bullet\"}},\"outputFormat\":\"markdown\",\"includeTableOfContents\":false,\"maxLineWidth\":80}",
+          "description": "Format meeting notes into Markdown with bold level 2 heading and bullet list."
+        },
+        {
+          "inputJson": "{\"content\":\"Report Summary:\\nThis report outlines the quarterly results.\",\"formatStyle\":{\"paragraph\":{\"alignment\":\"justify\",\"fontSize\":12},\"heading\":{\"level\":1,\"underline\":true}},\"outputFormat\":\"html\",\"includeTableOfContents\":true}",
+          "description": "Format a summary report into HTML with justified paragraphs, underlined heading, and a table of contents included."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftQuote",
+      "description": "Generates a concise, well-formulated quote or inspirational statement based on a specified topic, author style mimic, or theme. Accepts keywords or themes as input, applies natural language generation techniques to produce a creative and meaningful quote, and returns the drafted text suitable for content creation or social media use.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme for the quote (e.g., 'perseverance', 'love', 'technology').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "authorStyle",
+          "type": "string",
+          "description": "Optional. The name of a famous author or historical figure to mimic their style in the quote (e.g., 'Shakespeare', 'Einstein').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Optional. Approximate desired length of the quote in words. Defaults to 15.",
+          "required": false,
+          "defaultValue": "15"
+        },
+        {
+          "name": "includeCitation",
+          "type": "boolean",
+          "description": "Optional. Whether to include a generated citation or attribution if mimicking a famous author. Defaults false.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Optional. Language code for the quote output (e.g., 'en' for English). Defaults to English.",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted quote text and optional citation information if applicable."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create original and creative quotes or aphorisms based on given topics or themes, especially for content creation, marketing materials, social media posts, or inspirational messaging. It helps generate stylistically unique quotes that suit specified author styles or remain neutral.",
+        "limitations": "The tool generates synthetic quotes and does not fetch actual existing quotes. Citation or author mimicry is stylistic and may not produce authentic historical quotes. Output quality depends on the clarity and specificity of input parameters.",
+        "examples": [
+          "Draft a quote about resilience in the style of Maya Angelou.",
+          "Create an inspirational technology-related quote approximately 12 words long.",
+          "Generate a short love quote in English without author style."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "quote generation",
+        "inspiration",
+        "text synthesis",
+        "creative writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"resilience\",\"authorStyle\":\"Maya Angelou\",\"length\":20,\"includeCitation\":true,\"language\":\"en\"}",
+          "description": "Draft a 20-word inspirational quote about resilience mimicking Maya Angelou's style, with citation."
+        },
+        {
+          "inputJson": "{\"topic\":\"technology\",\"length\":12,\"includeCitation\":false,\"language\":\"en\"}",
+          "description": "Create a concise 12-word quote related to technology without author style or citation."
+        },
+        {
+          "inputJson": "{\"topic\":\"love\",\"language\":\"en\"}",
+          "description": "Generate a short neutral quote about love in English."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftLink",
+      "description": "Generates a well-structured hyperlink HTML snippet or Markdown link based on provided URL, link text, and optional attributes such as title and CSS class. Accepts raw URL and descriptive text, processes them into a finalized link format ready for embedding in digital content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The target URL the link should point to.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "linkText",
+          "type": "string",
+          "description": "The visible text for the link.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title attribute text for the link, shown on hover.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "cssClass",
+          "type": "string",
+          "description": "Optional CSS class attribute to style the link.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "useMarkdown",
+          "type": "boolean",
+          "description": "Flag indicating if the output should be Markdown (true) or HTML (false).",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the final formatted link string in the specified markup format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically generate link elements from raw URL and descriptive text for embedding in content, blog posts, or web pages, supporting both HTML and Markdown outputs to fit different publishing platforms.",
+        "limitations": "It cannot validate URL accessibility or correctness beyond basic syntax; it also does not automatically shorten URLs or handle complex link embedding scenarios such as dynamic parameters or tracking codes.",
+        "examples": [
+          "Create an HTML anchor link with a tooltip title for a news article.",
+          "Generate a Markdown link for a documentation page using the given URL and text.",
+          "Produce a styled HTML link with a provided CSS class for a marketing email."
+        ]
+      },
+      "tags": [
+        "content",
+        "link",
+        "html",
+        "markdown",
+        "drafting",
+        "web",
+        "urls"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://www.example.com\",\"linkText\":\"Example Website\",\"title\":\"Visit Example\",\"cssClass\":\"external-link\",\"useMarkdown\":false}",
+          "description": "Generate a styled HTML link with title and CSS class"
+        },
+        {
+          "inputJson": "{\"url\":\"https://docs.example.com\",\"linkText\":\"Documentation\",\"title\":\"Official Docs\",\"cssClass\":\"\",\"useMarkdown\":true}",
+          "description": "Create a Markdown formatted link with title as optional attribute ignored since Markdown does not support it"
+        },
+        {
+          "inputJson": "{\"url\":\"https://news.example.com/article\",\"linkText\":\"Latest News\",\"title\":\"Read the latest news article\",\"cssClass\":\"news-link\",\"useMarkdown\":false}",
+          "description": "Produce an HTML anchor tag for a news article link with styling and title attribute"
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftHeading",
+      "description": "Generates a concise and relevant heading for a piece of content based on the provided topic, keywords, tone, and intended audience. Takes user inputs to produce a clear, engaging heading suitable for articles, blog posts, or documents.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme of the content for which a heading is needed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "Optional list of important keywords to include or emphasize in the heading.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Desired tone of the heading, e.g., formal, casual, professional, humorous.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "audience",
+          "type": "string",
+          "description": "Target audience description to tailor the heading appropriately.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the heading in number of characters.",
+          "required": false,
+          "defaultValue": "60"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated heading text and metadata like length and keywords used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate an engaging, contextually relevant heading for digital content such as articles, blog posts, or reports, ensuring it matches the topic, tone, and audience specified.",
+        "limitations": "Does not generate multi-level headings or subheadings; focuses only on a single, primary heading. It cannot guarantee SEO optimization beyond keyword inclusion.",
+        "examples": [
+          "Generate a formal heading for a blog about sustainable living including the keyword 'eco-friendly'.",
+          "Draft a casual heading for a tech article aimed at beginners about AI advancements.",
+          "Create a short professional heading for a report on quarterly financial results."
+        ]
+      },
+      "tags": [
+        "content",
+        "heading",
+        "drafting",
+        "writing",
+        "headline",
+        "text-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Benefits of regular exercise\",\"keywords\":[\"health\",\"fitness\"],\"tone\":\"formal\",\"audience\":\"general public\",\"maxLength\":50}",
+          "description": "Generate a formal heading for an article on the health benefits of regular exercise targeting general readers."
+        },
+        {
+          "inputJson": "{\"topic\":\"latest smartphone trends\",\"keywords\":[\"technology\",\"gadgets\"],\"tone\":\"casual\",\"audience\":\"tech enthusiasts\",\"maxLength\":60}",
+          "description": "Draft a casual heading for tech enthusiasts about the newest trends in smartphones."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftWord",
+      "description": "Generates a draft paragraph or short text segment focused on a given word or keyword. Accepts a core word and optional parameters such as tone, style, and context to create a coherent, contextually relevant draft output useful as a starting point for articles, marketing copy, or stories.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "word",
+          "type": "string",
+          "description": "The main word or keyword around which the draft content will be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The emotional tone or mood of the draft (e.g., formal, casual, optimistic).",
+          "required": false,
+          "defaultValue": "neutral"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The writing style to adopt, such as descriptive, persuasive, or narrative.",
+          "required": false,
+          "defaultValue": "general"
+        },
+        {
+          "name": "context",
+          "type": "string",
+          "description": "Brief background or setting information to give context to the word for more relevant content.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of words or tokens to generate in the draft. Limits length of output.",
+          "required": false,
+          "defaultValue": "100"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted text segment associated with the input word, including metadata about tone and style used."
+      },
+      "aiAgent": {
+        "useCase": "This tool is useful when an AI agent needs to create a first draft or idea expansion centered on a specific word or keyword. It helps rapidly produce thematic content snippets that can be further refined or expanded, particularly in content generation pipelines for blogging, marketing, or creative writing.",
+        "limitations": "The tool generates initial drafts only and may not produce polished or finalized text. It cannot ensure factual accuracy or complex logical structuring beyond short paragraphs.",
+        "examples": [
+          "Draft a formal paragraph about 'innovation' with an optimistic tone.",
+          "Create a casual, narrative style draft around the word 'beach'.",
+          "Generate a short persuasive text centered on the keyword 'sustainability'."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "writing",
+        "drafting",
+        "copywriting",
+        "text generation",
+        "creative writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"word\":\"innovation\",\"tone\":\"optimistic\",\"style\":\"formal\",\"context\":\"technology industry\",\"maxLength\":80}",
+          "description": "Generate a formal, optimistic draft about 'innovation' within the technology industry context."
+        },
+        {
+          "inputJson": "{\"word\":\"beach\",\"tone\":\"casual\",\"style\":\"narrative\",\"maxLength\":50}",
+          "description": "Create a casual narrative-style paragraph focused on the word 'beach'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftReadme",
+      "description": "Generates a well-structured README.md draft for software projects based on provided project details, including description, installation instructions, usage examples, and other relevant documentation sections. Accepts project metadata and outputs a formatted markdown string ready for review and use.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the project to be documented.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "projectDescription",
+          "type": "string",
+          "description": "A brief description summarizing the purpose and features of the project.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "installationInstructions",
+          "type": "string",
+          "description": "Step-by-step instructions on how to install or set up the project. Markdown formatting allowed.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "usageExamples",
+          "type": "string",
+          "description": "Code snippets or textual examples demonstrating how to use the project. Markdown formatting allowed.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "apiReference",
+          "type": "string",
+          "description": "Optional details about APIs or important interfaces provided by the project.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contributionGuidelines",
+          "type": "string",
+          "description": "Guidelines for contributing to the project, including how to submit issues and pull requests.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "licenseInfo",
+          "type": "string",
+          "description": "Information about the project license (e.g., MIT, GPL).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contactInformation",
+          "type": "string",
+          "description": "Contact details or links for users to reach project maintainers or support.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single field 'readmeContent' which is a complete README.md text in markdown format, ready to be used or further edited."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a clear and structured README file draft is needed to document a software project rapidly. This is especially useful for automating initial documentation creation from basic project data provided by a developer or team. The tool helps standardize README format and content for clarity and completeness.",
+        "limitations": "The generated README is a draft and may require manual refinement and validation for accuracy, completeness, and project-specific details not provided in input. It does not execute code or verify information correctness.",
+        "examples": [
+          "Create a README draft for a new open source JavaScript library with installation instructions and usage examples.",
+          "Generate a README including contribution and license info for an internal tool.",
+          "Draft a minimal README with just project name and description when limited info is available."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "documentation",
+        "README",
+        "markdown",
+        "software project",
+        "automation",
+        "developer tool"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"AwesomeLib\",\"projectDescription\":\"A JavaScript library for awesome animations.\",\"installationInstructions\":\"npm install awesomelib\",\"usageExamples\":\"import { animate } from 'awesomelib';\\nanimate('#element');\",\"contributionGuidelines\":\"Please open issues for bugs or feature requests.\",\"licenseInfo\":\"MIT License\",\"contactInformation\":\"email: dev@awesomelib.org\"}",
+          "description": "Generates a README draft for a JavaScript library with common sections filled."
+        },
+        {
+          "inputJson": "{\"projectName\":\"DataCruncher\",\"projectDescription\":\"A Python tool to process and analyze large datasets efficiently.\"}",
+          "description": "Creates a minimal README draft with project name and description only."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftText",
+      "description": "Generates a draft text based on a given prompt, desired length, tone, and target audience. Accepts parameters to tailor the writing style and content focus, then produces a coherent, contextually relevant draft suitable for further editing or publishing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "prompt",
+          "type": "string",
+          "description": "The initial idea or topic to base the draft text on.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired length of the draft text in words.",
+          "required": false,
+          "defaultValue": "300"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone or style of the text, e.g., formal, casual, persuasive, neutral.",
+          "required": false,
+          "defaultValue": "neutral"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended readers to tailor content accordingly.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeCallToAction",
+          "type": "boolean",
+          "description": "Whether to include a call-to-action at the end of the draft text.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of keywords to emphasize or include in the draft text for SEO or focus.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated draft text and metadata such as word count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce initial content drafts on specified topics with customizable length, tone, and audience focus, enabling fast content generation for blogs, marketing, or documentation.",
+        "limitations": "Cannot guarantee final text quality or factual accuracy; drafts may require human review and editing; limited to text generation and not detailed domain-specific expertise.",
+        "examples": [
+          "Draft a 500-word persuasive blog post on renewable energy for general audience.",
+          "Create a formal 200-word summary about a new software feature.",
+          "Generate a casual product description including specified keywords and a call to action."
+        ]
+      },
+      "tags": [
+        "content generation",
+        "text drafting",
+        "copywriting",
+        "AI writing",
+        "content creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"prompt\":\"The benefits of meditation for mental health.\",\"length\":400,\"tone\":\"informative\",\"targetAudience\":\"general public\",\"includeCallToAction\":false,\"keywords\":[\"meditation\",\"mental health\",\"wellness\"]}",
+          "description": "Generate an informative 400-word draft about meditation's benefits for a general audience without call to action."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Introducing our new eco-friendly water bottle.\",\"length\":150,\"tone\":\"casual\",\"targetAudience\":\"outdoor enthusiasts\",\"includeCallToAction\":true,\"keywords\":[\"eco-friendly\",\"water bottle\",\"sustainability\"]}",
+          "description": "Create a casual promotional draft with call to action targeting outdoor enthusiasts."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftBrief",
+      "description": "This tool drafts a concise business or project brief based on provided inputs such as purpose, target audience, key objectives, and background information. It processes the inputs to generate a structured, clear brief suitable for internal or client review.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the brief document, summarizing the project or topic.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "purpose",
+          "type": "string",
+          "description": "Main purpose or goal of the brief, explaining why it is being created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience for the brief, e.g., internal team, stakeholders, clients.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyObjectives",
+          "type": "array",
+          "description": "List of key objectives or goals that the project or initiative aims to achieve.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "background",
+          "type": "string",
+          "description": "Background information or context relevant to the project or topic of the brief.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "deadline",
+          "type": "string",
+          "description": "Deadline or timeframe for the project or brief delivery in ISO date format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Preferred tone for the brief content, e.g., formal, casual, persuasive.",
+          "required": false,
+          "defaultValue": "formal"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated brief including title, executive summary, objectives, and background sections as a single formatted string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to help draft a structured project or business brief based on user-provided key details to save time and ensure clarity. Ideal for generating summaries to guide team alignment or client communication.",
+        "limitations": "Cannot replace specialized domain expertise or generate highly technical content without sufficient detailed input from the user. The quality depends on completeness and clarity of inputs.",
+        "examples": [
+          "Draft a brief for a new marketing campaign targeting millennials to increase brand awareness.",
+          "Create a project brief summarizing objectives and deadlines for a software development initiative.",
+          "Prepare a client presentation brief explaining project background and expected outcomes."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "drafting",
+        "brief",
+        "business",
+        "project",
+        "summary",
+        "document"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"New Product Launch\",\"purpose\":\"To inform the marketing team about the upcoming product and align on goals.\",\"targetAudience\":\"Marketing department and stakeholders\",\"keyObjectives\":[\"Increase awareness\",\"Generate leads\",\"Achieve sales target\"],\"background\":\"This product addresses a gap in the market for affordable smart home devices.\",\"deadline\":\"2024-09-30\",\"tone\":\"formal\"}",
+          "description": "Draft a formal brief for a marketing team regarding an upcoming product launch, including objectives and background."
+        },
+        {
+          "inputJson": "{\"title\":\"Website Redesign Project\",\"purpose\":\"Provide an overview of the website redesign aims and milestones.\",\"targetAudience\":\"Project team and company executives\",\"keyObjectives\":[\"Improve user experience\",\"Update branding\",\"Increase site traffic\"],\"background\":\"Our current website is outdated and does not reflect the new brand strategy.\",\"deadline\":\"2024-12-15\",\"tone\":\"formal\"}",
+          "description": "Generate a structured project brief outlining objectives and context for a website redesign."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftTranscript",
+      "description": "Generates a structured transcript draft from audio or video input along with optional metadata. Accepts media file URL or text subtitle input, analyzes or formats content, and produces a timestamped transcript text draft suitable for editing or publishing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "mediaUrl",
+          "type": "string",
+          "description": "URL to the audio or video file to transcribe or draft the transcript from.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "subtitleText",
+          "type": "string",
+          "description": "Optional subtitle text input representing dialogue or narration to format as a transcript draft.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code (e.g., 'en', 'es') specifying the spoken language for transcription or formatting.",
+          "required": true,
+          "defaultValue": "en"
+        },
+        {
+          "name": "includeTimestamps",
+          "type": "boolean",
+          "description": "Whether to include timestamps in the output transcript draft.",
+          "required": true,
+          "defaultValue": "true"
+        },
+        {
+          "name": "speakerLabels",
+          "type": "boolean",
+          "description": "Whether to attempt to identify and label different speakers in the transcript draft.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "maxSegmentLength",
+          "type": "number",
+          "description": "Maximum length in seconds for each transcript segment before a timestamp break.",
+          "required": false,
+          "defaultValue": "60"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted transcript text with optional metadata such as timestamps and speaker labels."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to create a preliminary transcript draft from audio or video content to facilitate review, editing, or further processing. Helpful for generating readable, structured text from multimedia inputs or subtitle text to prepare transcripts for publishing or accessibility.",
+        "limitations": "This tool does not perform perfect speech-to-text transcription from audio or video; it may rely on provided subtitles or require additional transcription services. It cannot fully verify transcript accuracy or context beyond formatting and structuring input content.",
+        "examples": [
+          "Draft a transcript from a webinar recording URL with English audio and timestamps included.",
+          "Format provided subtitle text into a clean transcript format labeling speakers.",
+          "Create a short segment-timestamped transcript draft from a podcast audio file."
+        ]
+      },
+      "tags": [
+        "content",
+        "transcript",
+        "drafting",
+        "audio",
+        "video",
+        "subtitle",
+        "text",
+        "media"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mediaUrl\":\"https://example.com/meeting.mp4\",\"language\":\"en\",\"includeTimestamps\":true,\"speakerLabels\":true}",
+          "description": "Draft a transcript including timestamps and speaker labels from an English meeting video."
+        },
+        {
+          "inputJson": "{\"subtitleText\":\"[00:00:01] Hello and welcome.\\n[00:00:05] This is the project update.\",\"language\":\"en\",\"includeTimestamps\":true}",
+          "description": "Create a formatted transcript draft from given subtitle text with timestamps."
+        },
+        {
+          "inputJson": "{\"mediaUrl\":\"https://example.com/podcast.mp3\",\"language\":\"en\",\"includeTimestamps\":false,\"maxSegmentLength\":30}",
+          "description": "Generate a transcript draft without timestamps from a podcast audio, splitting text into 30-second segments."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftChecklist",
+      "description": "Generates a structured checklist based on a given topic, purpose, and desired number of items. Users provide a checklist topic and optional context; the tool produces an organized list of actionable steps or considerations tailored to the input, formatted for easy review and use.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or focus of the checklist to be drafted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "purpose",
+          "type": "string",
+          "description": "The intended use or goal of the checklist, providing context to guide content creation.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "numberOfItems",
+          "type": "number",
+          "description": "Approximate number of checklist items to generate for thorough coverage.",
+          "required": false,
+          "defaultValue": "10"
+        },
+        {
+          "name": "itemDetailLevel",
+          "type": "string",
+          "description": "Detail level for each item, e.g., 'brief' or 'detailed', affecting the length and depth of each checklist point.",
+          "required": false,
+          "defaultValue": "brief"
+        },
+        {
+          "name": "includeTips",
+          "type": "boolean",
+          "description": "Whether to add extra tips or explanations alongside each checklist item.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the checklist title and an ordered array of checklist items, each optionally with explanatory tips."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to quickly generate a coherent and relevant checklist for a specific topic, such as project planning, event preparation, or quality assurance. It helps organize important tasks or considerations into a clear, actionable format for users to follow.",
+        "limitations": "The tool may produce generic or high-level checklist items and might not cover very specialized or highly technical domains in depth. It is not designed to replace expert consultation or detailed procedural manuals.",
+        "examples": [
+          "Create a checklist for launching a new website project with about 8 items and include detailed points.",
+          "Draft a simple grocery shopping checklist focused on healthy eating with brief items.",
+          "Generate a handyman's home inspection checklist with tips included for each item."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "checklist",
+        "task management",
+        "organization",
+        "planning"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Launching a new website project\",\"purpose\":\"Project management guidance\",\"numberOfItems\":8,\"itemDetailLevel\":\"detailed\",\"includeTips\":true}",
+          "description": "Generate a detailed project launch checklist for a new website with useful tips on each step."
+        },
+        {
+          "inputJson": "{\"topic\":\"Healthy grocery shopping\",\"purpose\":\"Guide for nutrition-focused purchases\",\"numberOfItems\":10,\"itemDetailLevel\":\"brief\",\"includeTips\":false}",
+          "description": "Create a concise checklist for shopping groceries aimed at healthy eating."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftTemplate",
+      "description": "Generates a customized document template by accepting a template type, optional placeholders, and formatting preferences. Produces a structured template draft in JSON or text format suitable for further editing or immediate use.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "templateType",
+          "type": "string",
+          "description": "Specifies the kind of document template to create, such as 'business proposal', 'newsletter', or 'invoice'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "placeholders",
+          "type": "object",
+          "description": "Key-value pairs defining placeholder names and their default values to include in the template for personalization.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The output format of the drafted template, such as 'json' for structured data or 'text' for plain text documents.",
+          "required": false,
+          "defaultValue": "json"
+        },
+        {
+          "name": "includeInstructions",
+          "type": "boolean",
+          "description": "If true, includes usage instructions or comments within the template to guide users.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The natural language for template text, e.g., 'en' for English, to localize generated content.",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A drafted template object containing the template content, metadata like type and language, and optional usage instructions."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a structured document template customized to a specific domain or purpose, optionally including placeholders for dynamic content. It enables efficient content creation workflows by providing a ready-to-edit or deployable template draft.",
+        "limitations": "This tool cannot fill in real-time data or generate complete documents from scratch; it produces template scaffolds requiring further population or customization.",
+        "examples": [
+          "Create a business proposal template with placeholders for client name and project details.",
+          "Generate a newsletter template in text format including instructions for editors.",
+          "Draft an invoice template in English with placeholders for billing details."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "template generation",
+        "document drafting",
+        "automation",
+        "placeholders",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"templateType\":\"business proposal\",\"placeholders\":{\"clientName\":\"[Client Name]\",\"projectName\":\"[Project Name]\"},\"format\":\"json\",\"includeInstructions\":true,\"language\":\"en\"}",
+          "description": "Draft a business proposal template in JSON including placeholders and usage instructions."
+        },
+        {
+          "inputJson": "{\"templateType\":\"newsletter\",\"format\":\"text\",\"includeInstructions\":true,\"language\":\"en\"}",
+          "description": "Generate a plain text newsletter template with instructions in English."
+        },
+        {
+          "inputJson": "{\"templateType\":\"invoice\",\"placeholders\":{\"invoiceNumber\":\"[Invoice No]\",\"dueDate\":\"[Due Date]\"},\"format\":\"json\"}",
+          "description": "Create a JSON invoice template including relevant placeholders."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftFAQ",
+      "description": "Generates a structured Frequently Asked Questions (FAQ) document draft based on a provided topic and optional detailed input such as target audience, product details, or common concerns. The tool synthesizes relevant questions and answers to produce a clear, organized FAQ output in JSON or plain text format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Primary subject or domain for which the FAQ is to be generated, e.g., product name or service type.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended readers or customers to tailor the complexity and style of the FAQ (e.g., beginners, advanced users).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyDetails",
+          "type": "string",
+          "description": "Supplementary information or context about the topic, such as feature descriptions or common customer questions, to enhance answer relevance.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "numberOfEntries",
+          "type": "number",
+          "description": "Desired number of question-answer pairs in the drafted FAQ. Limits the output length.",
+          "required": false,
+          "defaultValue": "10"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the FAQ output, either 'json' for structured data or 'text' for plain formatted text.",
+          "required": false,
+          "defaultValue": "json"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted FAQ, including an array of question and answer pairs, and metadata like topic and entry count."
+      },
+      "aiAgent": {
+        "useCase": "Use when a user or client needs to quickly generate an initial FAQ document for a new product, service, or domain based on limited input to streamline content creation. It helps draft relevant questions and articulate clear answers automatically. This is particularly useful for onboarding, website content, or customer support documentation.",
+        "limitations": "Cannot guarantee domain-expert accuracy; may require human review and refinement. Not designed to incorporate confidential or proprietary information without explicit input.",
+        "examples": [
+          "Draft an FAQ for a new fitness app aimed at beginners covering 8 questions.",
+          "Create a FAQ document for an ecommerce platform focusing on shipping policies in plain text format.",
+          "Generate FAQs about a software product including key features and user concerns for advanced users."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "FAQ",
+        "document drafting",
+        "customer support",
+        "knowledge base",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"electric bicycles\",\"targetAudience\":\"beginner commuters\",\"keyDetails\":\"advantages, charging time, safety features\",\"numberOfEntries\":5,\"outputFormat\":\"json\"}",
+          "description": "Generate a 5-entry FAQ tailored for beginners interested in electric bicycles focusing on advantages, charging, and safety."
+        },
+        {
+          "inputJson": "{\"topic\":\"Cloud Storage Service\",\"targetAudience\":\"IT professionals\",\"numberOfEntries\":10,\"outputFormat\":\"text\"}",
+          "description": "Create a 10-question FAQ in plain text designed for IT professionals about features of a cloud storage service."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftSummary",
+      "description": "Generates a concise summary from provided text content. Accepts raw text input, processes key information extraction and condensation using NLP techniques, and outputs a brief summary highlighting the main points, suitable for documents, articles, or reports.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "textContent",
+          "type": "string",
+          "description": "The full text content to summarize; can be a document, article, or any lengthy text.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the summary in words; controls summary brevity.",
+          "required": false,
+          "defaultValue": "100"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language of the input text to tailor summarization models accordingly (e.g., 'en' for English).",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "includeKeyPhrases",
+          "type": "boolean",
+          "description": "Whether to extract and include key phrases in the summary output.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated summary string and an optional list of key phrases if requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create a readable, concise summary from large blocks of text to present the main ideas quickly, such as summarizing articles, reports, or lengthy documents for easier consumption.",
+        "limitations": "May not capture nuanced or highly technical content accurately; summaries depend on input text quality and length; not suited for generating summaries of non-text inputs or multimedia content.",
+        "examples": [
+          "Summarize a product review article into 100 words.",
+          "Create a summary of a meeting transcript highlighting key decisions.",
+          "Generate key phrases along with a short summary of a research paper."
+        ]
+      },
+      "tags": [
+        "summarization",
+        "content-creation",
+        "nlp",
+        "text-processing",
+        "document",
+        "summary",
+        "draft"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"textContent\":\"In recent years, the field of artificial intelligence has seen rapid advancements with applications ranging from healthcare to autonomous vehicles. These developments are driven by improved algorithms, larger datasets, and better hardware capabilities, enabling machines to learn and make decisions more effectively than ever before.\",\"maxLength\":50,\"language\":\"en\",\"includeKeyPhrases\":false}",
+          "description": "Summarize a paragraph about AI advancements into a brief summary."
+        },
+        {
+          "inputJson": "{\"textContent\":\"The quarterly report highlights a 15% increase in revenue, driven primarily by growth in the Asia-Pacific region. Operational costs were reduced by 5%, boosting overall profitability. Key initiatives included expanding product lines and improving customer service.\",\"maxLength\":70,\"language\":\"en\",\"includeKeyPhrases\":true}",
+          "description": "Summarize a financial report paragraph and include key phrases."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftParagraph",
+      "description": "Generates a coherent paragraph of text based on a given topic and optional stylistic preferences. Accepts a theme or subject, tone, and target length, then drafts a focused paragraph matching the input parameters.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme of the paragraph to draft.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired style or emotional tone of the paragraph, e.g., formal, casual, persuasive.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate number of words the paragraph should contain.",
+          "required": false,
+          "defaultValue": "100"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "Optional list of specific words to include within the paragraph for emphasis or SEO purposes.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted paragraph as a string under the key 'paragraph'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a concise, themed paragraph is needed quickly, such as for content drafts, marketing messages, summaries, or writing assistance. It is ideal for generating coherent, stylistically consistent text on a specified topic with control over tone and length.",
+        "limitations": "The tool cannot guarantee in-depth technical accuracy or extensive creative composition beyond a single paragraph. It may not adhere perfectly to highly specialized jargon or extremely long content requirements.",
+        "examples": [
+          "Draft a persuasive paragraph about renewable energy.",
+          "Create a casual paragraph describing a new smartphone feature.",
+          "Write a formal paragraph on the importance of cybersecurity."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "text-generation",
+        "paragraph",
+        "drafting",
+        "writing-assistance"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Benefits of daily exercise\",\"tone\":\"motivational\",\"length\":80,\"keywords\":[\"health\",\"energy\"]}",
+          "description": "Draft a motivational paragraph about the benefits of daily exercise including keywords \"health\" and \"energy\"."
+        },
+        {
+          "inputJson": "{\"topic\":\"Artificial Intelligence in healthcare\",\"tone\":\"formal\",\"length\":120}",
+          "description": "Generate a formal paragraph discussing the role of artificial intelligence in healthcare."
+        },
+        {
+          "inputJson": "{\"topic\":\"Tips for remote work productivity\",\"tone\":\"casual\",\"length\":100}",
+          "description": "Create a casual paragraph giving tips for improving productivity while working remotely."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftSentence",
+      "description": "Generates a coherent, contextually relevant sentence based on a provided prompt, desired tone, and length constraints. It accepts a text prompt and optional parameters for style and complexity, and returns a single drafted sentence as output.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "prompt",
+          "type": "string",
+          "description": "A short text prompt or seed phrase to guide sentence generation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Desired tone or style of the sentence, e.g., formal, casual, optimistic.",
+          "required": false,
+          "defaultValue": "neutral"
+        },
+        {
+          "name": "complexity",
+          "type": "string",
+          "description": "Level of sentence complexity, e.g., simple, intermediate, complex.",
+          "required": false,
+          "defaultValue": "intermediate"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the sentence in characters.",
+          "required": false,
+          "defaultValue": "140"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted sentence as a string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a natural, context-aware sentence is needed based on a given text seed or prompt. It is ideal for content creation workflows requiring brief, stylistically tailored text generation, such as writing assistance or chatbot responses.",
+        "limitations": "The tool generates one sentence at a time and may produce generic or less accurate content for highly specialized or ambiguous prompts. It does not generate paragraphs or multiple sentences in one call.",
+        "examples": [
+          "Draft a formal sentence about climate change.",
+          "Create a casual sentence expressing excitement about a new project.",
+          "Generate a complex sentence starting with 'Despite the challenges...'"
+        ]
+      },
+      "tags": [
+        "content generation",
+        "text creation",
+        "sentence drafting",
+        "natural language",
+        "writing assistance"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"prompt\":\"Advancements in AI\",\"tone\":\"formal\",\"complexity\":\"complex\",\"maxLength\":150}",
+          "description": "Draft a formal, complex sentence about AI advancements."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Weekend plans\",\"tone\":\"casual\",\"maxLength\":100}",
+          "description": "Create a casual and short sentence about weekend plans."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Despite the challenges\",\"complexity\":\"complex\"}",
+          "description": "Generate a complex sentence starting with 'Despite the challenges...'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftInvoice",
+      "description": "Generates a professional invoice draft based on provided client, services, and payment details. Accepts inputs including client information, itemized list of products or services with quantities and prices, invoice number, and due date. Outputs a structured invoice ready for review or further formatting.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "invoiceNumber",
+          "type": "string",
+          "description": "Unique identifier for the invoice to distinguish it from others.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "invoiceDate",
+          "type": "string",
+          "description": "Date when the invoice is issued (ISO 8601 format recommended).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dueDate",
+          "type": "string",
+          "description": "Payment due date for the invoice (ISO 8601 format recommended).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "clientInfo",
+          "type": "object",
+          "description": "Details of the client including name, address, and contact information.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "items",
+          "type": "array",
+          "description": "List of items or services, each with description, quantity, unit price, and optional tax rate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "currency",
+          "type": "string",
+          "description": "Currency code (ISO 4217) used for invoice amounts, e.g., USD, EUR.",
+          "required": false,
+          "defaultValue": "USD"
+        },
+        {
+          "name": "notes",
+          "type": "string",
+          "description": "Additional comments or terms to appear on the invoice.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a structured invoice object containing header, client details, itemized charges with totals and taxes, notes, and payment terms suitable for rendering or exporting."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to programmatically create a draft invoice document from structured input data for clients and services rendered, especially when automating billing workflows or generating templated invoices for review.",
+        "limitations": "This tool does not perform payment processing or legal validation of invoice terms. It creates draft invoices but does not manage invoice tracking or integrate with accounting software directly.",
+        "examples": [
+          "Create an invoice draft for a client with three services including quantities and unit prices.",
+          "Generate an invoice with client contact details, invoice and due dates, and include payment notes.",
+          "Draft an invoice in EUR currency for goods sold with itemized tax calculations."
+        ]
+      },
+      "tags": [
+        "invoice",
+        "billing",
+        "content-creation",
+        "document-generation",
+        "finance",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"invoiceNumber\":\"INV-1001\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-06-30\",\"clientInfo\":{\"name\":\"Acme Corp.\",\"address\":\"123 Market St, Springfield\",\"email\":\"billing@acmecorp.com\"},\"items\":[{\"description\":\"Consultation Services\",\"quantity\":10,\"unitPrice\":150,\"taxRate\":0.1},{\"description\":\"Software License\",\"quantity\":2,\"unitPrice\":2000,\"taxRate\":0.2}],\"currency\":\"USD\",\"notes\":\"Payment due within 30 days.\"}",
+          "description": "Draft an invoice for Acme Corp. for consultation and software license fees with taxes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Invoice",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftMinutes",
+      "description": "This tool generates a structured draft of meeting minutes based on provided meeting details such as agenda items, participants, and notes. It processes the input to create organized minutes including attendance, discussion summaries, decisions made, and action items, outputting a formatted textual draft suitable for review and distribution.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "meetingTitle",
+          "type": "string",
+          "description": "Title or subject of the meeting to be documented",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "Date of the meeting in ISO format (YYYY-MM-DD)",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "participants",
+          "type": "array",
+          "description": "List of participant names who attended the meeting",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "agendaItems",
+          "type": "array",
+          "description": "List of agenda item titles or topics discussed during the meeting",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "discussionPoints",
+          "type": "array",
+          "description": "Array of objects summarizing discussion per agenda item, each including 'agendaItem' and 'points' as string",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "decisions",
+          "type": "array",
+          "description": "List of key decisions made during the meeting",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "actionItems",
+          "type": "array",
+          "description": "List of action items with assigned responsible persons and deadlines",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "meetingLeader",
+          "type": "string",
+          "description": "Name of the person leading or chairing the meeting",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted meeting minutes as a formatted text string under the 'minutesText' key"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce a clear, professional draft of meeting minutes from structured input data collected before or during a meeting. It helps in quickly generating consistent and organized minutes from agenda and discussion data, facilitating efficient meeting documentation.",
+        "limitations": "The tool cannot infer content not provided; accuracy depends on input detail quality. It does not transcribe audio or extract facts automatically from recordings.",
+        "examples": [
+          "Generate meeting minutes draft from the agenda, participants, summary of topics discussed, decisions, and assigned actions.",
+          "Create a formatted meeting minutes document after manually entering notes from a project status meeting.",
+          "Produce a drafts of minutes emphasizing decisions and next steps for team distribution after a client meeting."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "meeting minutes",
+        "documentation",
+        "productivity",
+        "office tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"meetingTitle\":\"Monthly Marketing Strategy Meeting\",\"date\":\"2024-06-05\",\"participants\":[\"Alice Johnson\",\"Bob Smith\",\"Carol Lee\"],\"agendaItems\":[\"Campaign Review\",\"Budget Allocation\",\"New Product Launch\"],\"discussionPoints\":[{\"agendaItem\":\"Campaign Review\",\"points\":\"Reviewed last quarter’s campaign results; noted increased engagement on social media.\"},{\"agendaItem\":\"Budget Allocation\",\"points\":\"Discussed proposed budget increase for digital ads.\"},{\"agendaItem\":\"New Product Launch\",\"points\":\"Planned launch timeline and assigned marketing tasks.\"}],\"decisions\":[\"Approve 15% increase in digital ad budget.\",\"Launch new product on September 1st.\"],\"actionItems\":[{\"task\":\"Prepare detailed ad budget proposal\",\"assignee\":\"Bob Smith\",\"deadline\":\"2024-06-12\"},{\"task\":\"Create launch event plan\",\"assignee\":\"Carol Lee\",\"deadline\":\"2024-07-01\"}],\"meetingLeader\":\"Alice Johnson\"}",
+          "description": "Draft meeting minutes for a marketing strategy meeting with agenda topics, discussions, decisions, and action items."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftBlogPost",
+      "description": "Generates a draft blog post based on the given topic, target audience, desired tone, and optional keywords. Processes the inputs to create a coherent, engaging, and structured blog post comprising an introduction, main body, and conclusion. Outputs the draft blog content as plain text.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme for the blog post to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended readers to tailor the post style and complexity.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone of the blog post, e.g., professional, casual, persuasive.",
+          "required": false,
+          "defaultValue": "neutral"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "Relevant keywords or phrases to include for SEO and thematic emphasis.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "wordCount",
+          "type": "number",
+          "description": "Approximate desired length of the blog post in words.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "includeCallToAction",
+          "type": "boolean",
+          "description": "Whether to add a call-to-action section at the end of the blog post.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated blog post text as a string and metadata such as estimated word count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to quickly generate a structured, readable draft blog post from minimal input, such as topic and audience, to accelerate content creation workflows. Ideal for content marketing, blogs, and web articles requiring engaging and audience-tailored writing.",
+        "limitations": "Cannot guarantee factual accuracy or replace expert content reviewers; generated content may require editing for nuance, tone, and SEO optimization beyond initial drafting.",
+        "examples": [
+          "Create a 1000-word blog post about sustainable gardening for beginner gardeners with a friendly tone.",
+          "Draft a professional blog post explaining recent blockchain trends focused on financial investors.",
+          "Generate a casual tech blog discussing the benefits of AI in daily life, including the keywords AI, automation, smart devices."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "blog",
+        "drafting",
+        "writing",
+        "SEO",
+        "marketing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Tips for effective remote work\",\"targetAudience\":\"remote employees and freelancers\",\"tone\":\"professional\",\"keywords\":[\"remote work\",\"productivity\",\"home office\"],\"wordCount\":900,\"includeCallToAction\":true}",
+          "description": "Generate a professional blog post to help remote workers improve productivity and office setup."
+        },
+        {
+          "inputJson": "{\"topic\":\"Best budget travel destinations 2024\",\"targetAudience\":\"young adults and students\",\"tone\":\"casual\",\"keywords\":[\"budget travel\",\"2024 vacations\",\"cheap destinations\"],\"wordCount\":750,\"includeCallToAction\":false}",
+          "description": "Create a casual blog post suggesting affordable travel places for the upcoming year without a call to action."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftContract",
+      "description": "Generates a preliminary contract document based on provided contract type, key terms, and optional clauses. Accepts inputs such as contract type, parties involved, effective dates, payment terms, confidentiality clauses, and other relevant provisions. Produces a formatted draft contract text suitable for review and editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "contractType",
+          "type": "string",
+          "description": "Specifies the type of contract to draft (e.g., 'NDA', 'Service Agreement').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "parties",
+          "type": "array",
+          "description": "List of parties involved in the contract, each as an object with name and role.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "effectiveDate",
+          "type": "string",
+          "description": "The contract's effective date as an ISO 8601 date string (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "termLengthMonths",
+          "type": "number",
+          "description": "Duration of the contract term in months.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "paymentTerms",
+          "type": "string",
+          "description": "Details of payment terms such as amounts, schedules, and methods.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "confidentialityClause",
+          "type": "boolean",
+          "description": "Flag to include a standard confidentiality clause in the contract.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "terminationConditions",
+          "type": "string",
+          "description": "Conditions under which the contract may be terminated.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "additionalClauses",
+          "type": "array",
+          "description": "An array of additional clause texts to be appended to the contract.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns draft contract with full text and metadata including contract type and involved parties."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create a first draft of a legal contract quickly by providing structured inputs such as contract type, parties, and key terms. It helps automate creation of standard contract templates and preliminary wording for review and negotiation.",
+        "limitations": "This tool does not provide legally vetted or jurisdiction-specific contracts, nor does it replace professional legal advice. It cannot enforce or validate legal compliance or custom complex clauses beyond provided input.",
+        "examples": [
+          "Draft a service agreement contract between two companies specifying payment terms and confidentiality.",
+          "Generate an NDA between two parties with a 12-month term and termination conditions.",
+          "Create a freelance work contract including additional clauses about intellectual property rights."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "contract",
+        "legal",
+        "drafting",
+        "automation",
+        "document-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"contractType\":\"NDA\",\"parties\":[{\"name\":\"Alpha Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Beta LLC\",\"role\":\"Receiving Party\"}],\"effectiveDate\":\"2024-06-01\",\"termLengthMonths\":12,\"confidentialityClause\":true}",
+          "description": "Drafts a 12-month NDA between two companies including confidentiality clause."
+        },
+        {
+          "inputJson": "{\"contractType\":\"Service Agreement\",\"parties\":[{\"name\":\"Tech Solutions\",\"role\":\"Provider\"},{\"name\":\"RetailCo\",\"role\":\"Client\"}],\"paymentTerms\":\"Monthly payments of $5000 due by the 5th day.\",\"terminationConditions\":\"Either party may terminate with 30 days written notice.\"}",
+          "description": "Creates a service agreement with specific payment terms and termination conditions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Contract",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftArticle",
+      "description": "Generates a structured draft article based on input topic, keywords, and desired length. Accepts topic string, optional keywords array, target word count, and tone style. Produces a coherent article draft suitable for further editing or publishing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The primary subject or title of the article to draft.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of important keywords to be naturally included in the article.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "targetWordCount",
+          "type": "number",
+          "description": "Approximate desired length of the article in words.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The tone or style of writing: e.g., formal, casual, persuasive, informative.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "includeSubheadings",
+          "type": "boolean",
+          "description": "Whether to organize the article into sections with subheadings for clarity.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the full article draft text and a list of suggested sections or subheadings."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to rapidly generate comprehensive article drafts from minimal input such as topic and keywords, ideal for content creation workflows requiring structured, human-readable text. It is helpful for generating well-organized initial drafts that can be refined further.",
+        "limitations": "This tool does not perform fact-checking or source citation automatically, and the generated content may require human review before publication to ensure accuracy and appropriateness.",
+        "examples": [
+          "Draft an article about sustainable urban farming emphasizing environmental benefits, targeting 1200 words, with a persuasive tone.",
+          "Create a casual style article draft on the topic of electric vehicles that includes keywords: \"EV,\" \"charging stations,\" and \"range anxiety.\"",
+          "Generate an informative article draft on the history of jazz music around 900 words, including subheadings for key periods."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "article drafting",
+        "text generation",
+        "writing assistant",
+        "content marketing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Sustainable urban farming\",\"keywords\":[\"environment\",\"green spaces\",\"local food\"],\"targetWordCount\":1200,\"tone\":\"persuasive\",\"includeSubheadings\":true}",
+          "description": "Generate a 1200-word persuasive article draft focusing on sustainable urban farming and its environmental benefits."
+        },
+        {
+          "inputJson": "{\"topic\":\"Electric vehicles\",\"keywords\":[\"EV\",\"charging stations\",\"range anxiety\"],\"targetWordCount\":800,\"tone\":\"casual\",\"includeSubheadings\":false}",
+          "description": "Create a casual tone article draft about electric vehicles including specified keywords, approximately 800 words, without subheadings."
+        },
+        {
+          "inputJson": "{\"topic\":\"History of jazz music\",\"keywords\":[],\"targetWordCount\":900,\"tone\":\"informative\",\"includeSubheadings\":true}",
+          "description": "Produce an informative article draft on the history of jazz music structured with subheadings, around 900 words."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftReport",
+      "description": "Generates a structured draft report based on provided topic, key points, and optional data summary. Accepts input including report title, target audience, sections with content outlines, and data summaries. Processes inputs to produce a coherent multi-section textual report draft suitable for review or further editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "reportTitle",
+          "type": "string",
+          "description": "The main title or subject of the report to be drafted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience to tailor tone and complexity (e.g., executives, technical staff).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section objects, each containing a header and key points or bullet outlines to cover in that section.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dataSummary",
+          "type": "string",
+          "description": "Optional summarized data or results to incorporate as factual content within the report.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeExecutiveSummary",
+          "type": "boolean",
+          "description": "Flag to include an executive summary section at the beginning of the report.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "languageTone",
+          "type": "string",
+          "description": "Preferred tone of the report, e.g., formal, informal, persuasive, neutral.",
+          "required": false,
+          "defaultValue": "formal"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete textual draft of the report, with sections and optional executive summary in a structured format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to quickly generate a structured, coherent draft of a report document from prescribed inputs such as key topics, audience type, and data points. Useful for automating content creation workflows in business, research, or project reporting with minimal manual writing.",
+        "limitations": "Cannot generate highly specialized technical content requiring domain expertise beyond provided inputs. Does not perform detailed fact-checking or real-time data integration.",
+        "examples": [
+          "Draft a quarterly sales report for executive team highlighting revenue trends and regional performance.",
+          "Create a project status report with sections on progress, risks, and next steps for stakeholders.",
+          "Generate a marketing campaign report draft in persuasive tone based on campaign metrics and outcomes."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "report drafting",
+        "document generation",
+        "automation",
+        "business reporting",
+        "text generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"reportTitle\":\"Q1 Financial Overview\",\"targetAudience\":\"Senior Management\",\"sections\":[{\"header\":\"Revenue Analysis\",\"keyPoints\":[\"Total revenue growth\",\"Revenue by region\"]},{\"header\":\"Expense Breakdown\",\"keyPoints\":[\"Operational expenses\",\"Marketing costs\"]}],\"dataSummary\":\"Q1 showed a 10% revenue increase compared to Q4, driven primarily by North America and APAC regions.\",\"includeExecutiveSummary\":true,\"languageTone\":\"formal\"}",
+          "description": "Draft a formal Q1 financial overview report with executive summary for senior management including revenue and expenses."
+        },
+        {
+          "inputJson": "{\"reportTitle\":\"Project Phoenix Status Update\",\"targetAudience\":\"Project Stakeholders\",\"sections\":[{\"header\":\"Progress\",\"keyPoints\":[\"Completed milestones\",\"Current sprint objectives\"]},{\"header\":\"Risks and Issues\",\"keyPoints\":[\"Identified roadblocks\",\"Mitigation plans\"]},{\"header\":\"Next Steps\",\"keyPoints\":[\"Upcoming tasks\",\"Resource allocation\"]}],\"includeExecutiveSummary\":false,\"languageTone\":\"neutral\"}",
+          "description": "Generate a neutral-tone project status report covering progress, risks and next steps without executive summary."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftResume",
+      "description": "Generates a professional resume by accepting personal details, work experience, education, skills, and optionally a job description to tailor the resume. Processes structured input to create a well-formatted and concise resume draft ready for review or customization.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "personalInfo",
+          "type": "object",
+          "description": "Personal information including name, contact details, and summary statement.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "workExperience",
+          "type": "array",
+          "description": "List of work experiences, each with company, role, dates, and achievements.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "education",
+          "type": "array",
+          "description": "List of educational qualifications with institution, degree, and dates.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "skills",
+          "type": "array",
+          "description": "List of professional skills relevant to the candidate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "jobDescription",
+          "type": "string",
+          "description": "Optional job description or role to tailor the resume towards specific job requirements.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "templateStyle",
+          "type": "string",
+          "description": "Optional parameter to select resume style template (e.g., 'modern', 'classic').",
+          "required": false,
+          "defaultValue": "classic"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a formatted resume text and optionally the structure used for further edits."
+      },
+      "aiAgent": {
+        "useCase": "This tool is ideal for generating initial professional resumes quickly from structured inputs, helping users or AI agents produce tailored resume drafts ready for customization or submission. It supports creating resumes for diverse industries by adjusting content and format.",
+        "limitations": "This tool cannot extract information from unstructured text or documents, nor perform precise graphic design layouts. It provides a textual formatted draft best suited for standard text-based resume creation.",
+        "examples": [
+          "Draft a resume with my personal info, work experience in software engineering, education background in computer science, key skills, and tailor it to a data scientist position.",
+          "Generate a classic style resume draft for a marketing professional using provided job history and education.",
+          "Create a modern style resume for a recent graduate including personal summary and skills relevant to entry-level positions."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "resume",
+        "career",
+        "drafting",
+        "document-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"personalInfo\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phone\":\"123-456-7890\",\"summary\":\"Experienced software engineer specialized in backend systems.\"},\"workExperience\":[{\"company\":\"Tech Corp\",\"role\":\"Software Engineer\",\"startDate\":\"2018-06\",\"endDate\":\"2023-01\",\"achievements\":[\"Developed scalable APIs\",\"Led migration to cloud infrastructure\"]}],\"education\":[{\"institution\":\"State University\",\"degree\":\"BSc Computer Science\",\"startDate\":\"2014-09\",\"endDate\":\"2018-05\"}],\"skills\":[\"Python\",\"Java\",\"AWS\",\"Docker\"],\"jobDescription\":\"Data Scientist role involving machine learning and data visualization.\",\"templateStyle\":\"modern\"}",
+          "description": "Draft a modern style resume for an experienced software engineer, tailored for a data scientist role."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Resume",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftEmail",
+      "description": "Generates a professionally structured email draft based on recipient information, subject, purpose, and optional tone. Accepts parameters such as recipient name, subject, and email body points, then composes a coherent email draft text.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "recipientName",
+          "type": "string",
+          "description": "Name of the primary email recipient to personalize the greeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "Subject line of the email to indicate the topic.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "purpose",
+          "type": "string",
+          "description": "Main intent or reason for the email to guide the content tone and focus.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "List of important points or details to include in the email body.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Preferred tone of the email (e.g., formal, friendly, concise).",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "closing",
+          "type": "string",
+          "description": "Optional closing line or sign-off to end the email professionally.",
+          "required": false,
+          "defaultValue": "Best regards,"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete email draft text with greeting, body, and closing formatted as a string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a clear, professional email draft given a recipient, subject, and a set of key points or purpose. It helps automate drafting in business or personal communication scenarios requiring customized, tone-appropriate emails.",
+        "limitations": "Cannot send emails or manage email clients. It produces text only and may not fully capture complex emotional nuance or highly technical content without detailed input.",
+        "examples": [
+          "Draft a formal email to a client summarizing project updates.",
+          "Create a friendly invitation email for a team meeting.",
+          "Generate a concise follow-up email after a job interview."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "email",
+        "drafting",
+        "communication",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipientName\":\"John Smith\",\"subject\":\"Project Update\",\"purpose\":\"Inform the client about the latest progress and next steps.\",\"keyPoints\":[\"Completed phase one\",\"Started phase two\",\"Expected completion next month\"],\"tone\":\"formal\",\"closing\":\"Sincerely,\"}",
+          "description": "Formal project update email to a client with key status points."
+        },
+        {
+          "inputJson": "{\"recipientName\":\"Emma\",\"subject\":\"Team Lunch Invitation\",\"purpose\":\"Invite teammates to lunch this Friday.\",\"keyPoints\":[\"Date and time: Friday at noon\",\"Location: Downtown Bistro\",\"RSVP by Wednesday\"],\"tone\":\"friendly\",\"closing\":\"Cheers,\"}",
+          "description": "Friendly invitation email for a casual team lunch."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Email",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftProposal",
+      "description": "Generates a structured project proposal draft based on provided key details such as project objectives, stakeholders, timeline, and budget. Accepts inputs defining scope, goals, and requirements; processes them to create a coherent proposal document outline and content suggestions; outputs a draft proposal text in markdown or plain text format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectTitle",
+          "type": "string",
+          "description": "The title of the project for the proposal.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "projectSummary",
+          "type": "string",
+          "description": "A brief summary describing the purpose and main goal of the project.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "objectives",
+          "type": "array",
+          "description": "List of specific objectives or goals the project aims to achieve.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "stakeholders",
+          "type": "array",
+          "description": "List of key stakeholders or involved parties with their roles or importance.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "timeline",
+          "type": "string",
+          "description": "General timeline or schedule overview for project milestones.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "budgetEstimate",
+          "type": "string",
+          "description": "Estimated budget for the project, including funding sources if available.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "additionalNotes",
+          "type": "string",
+          "description": "Optional additional information or requirements to be considered in the proposal.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired format of the output draft, e.g. 'markdown' or 'plain'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the proposal draft text under 'proposalDraft' key and meta information about sections included."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an initial draft of a project proposal document is needed from key project details to help structure ideas, define goals, and create a ready-to-edit document outline quickly.",
+        "limitations": "Cannot replace detailed expert-written proposals or legal/financial advice. Does not generate highly customized technical content or consult on feasibility. Outputs a draft to be reviewed and refined by humans.",
+        "examples": [
+          "Draft a proposal for a community recycling initiative covering goals and stakeholders.",
+          "Generate a project proposal draft summarizing a software development plan with timeline and budget.",
+          "Create an initial proposal document for a marketing campaign highlighting objectives and estimated costs."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "proposal drafting",
+        "project management",
+        "document generation",
+        "writing assistant"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectTitle\":\"EcoPark Revitalization\",\"projectSummary\":\"A project aimed at renovating the local park to improve community access and green space.\",\"objectives\":[\"Improve accessibility\",\"Add new playground equipment\",\"Increase green landscaping\"],\"stakeholders\":[\"City Council\",\"Local Community Groups\"],\"timeline\":\"6 months from approval to completion\",\"budgetEstimate\":\"$150,000\",\"additionalNotes\":\"Focus on sustainable, eco-friendly materials.\",\"outputFormat\":\"markdown\"}",
+          "description": "Draft proposal for a local park renovation project with objectives and budget."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Proposal",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeReference",
+      "description": "Generates a properly formatted reference citation based on provided source details and citation style. Accepts input including author names, title, publication date, source type, and outputs a formatted reference string according to popular academic styles like APA, MLA, or Chicago.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of source (e.g., book, journal, website, article).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "authorNames",
+          "type": "array",
+          "description": "List of authors' full names in preferred order.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the work to be cited.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationYear",
+          "type": "number",
+          "description": "Year the source was published.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publisher",
+          "type": "string",
+          "description": "Name of the publisher or publishing organization.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "journalName",
+          "type": "string",
+          "description": "Name of the journal if sourceType is journal article.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "volume",
+          "type": "string",
+          "description": "Volume number if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "issue",
+          "type": "string",
+          "description": "Issue number if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pages",
+          "type": "string",
+          "description": "Page range if applicable (e.g., 12-34).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL if source is online and applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessDate",
+          "type": "string",
+          "description": "Date the online source was accessed (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format output (e.g., APA, MLA, Chicago).",
+          "required": true,
+          "defaultValue": "APA"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Contains the formatted reference string compatible with the requested citation style and source type, ready for inclusion in bibliographies or reference lists."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when composing academic papers, articles, or reports requiring properly formatted citations from detailed source metadata. It ensures consistent, style-accurate references automatically, saving time and reducing manual errors.",
+        "limitations": "This tool cannot verify the accuracy of source metadata or retrieve missing data; input must be complete and correct. It does not support uncommon or highly customized citation styles beyond popular standards like APA, MLA, and Chicago.",
+        "examples": [
+          "Create an APA reference for a book with multiple authors.",
+          "Generate an MLA citation for a journal article including volume and issue.",
+          "Format a Chicago style reference for a website with URL and access date."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "citation",
+        "reference formatting",
+        "academic writing",
+        "bibliography"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceType\":\"book\",\"authorNames\":[\"John Smith\",\"Jane Doe\"],\"title\":\"Understanding AI\",\"publicationYear\":2021,\"publisher\":\"Tech Press\",\"citationStyle\":\"APA\"}",
+          "description": "Formatting an APA style book reference with two authors."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"journal\",\"authorNames\":[\"Emily Johnson\"],\"title\":\"Deep Learning Advances\",\"publicationYear\":2020,\"journalName\":\"AI Research Journal\",\"volume\":\"15\",\"issue\":\"4\",\"pages\":\"234-250\",\"citationStyle\":\"MLA\"}",
+          "description": "Creating an MLA citation for a journal article including volume and issue details."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"website\",\"authorNames\":[\"Tech Editor\"],\"title\":\"Future of Robotics\",\"publicationYear\":2023,\"url\":\"https://www.techsite.com/robotics\",\"accessDate\":\"2024-05-01\",\"citationStyle\":\"Chicago\"}",
+          "description": "Generating a Chicago style reference for an online article with URL and accessed date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.draftDocument",
+      "description": "Generates a preliminary draft of a document based on an input outline or topic description. Processes text prompts, structural requirements, and style preferences and produces a coherent draft text in specified format, ready for further editing or refinement.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title or subject of the document to be drafted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outlinePoints",
+          "type": "array",
+          "description": "An ordered list of key points or headings to structure the document around.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The writing style or tone (e.g., formal, informal, technical, persuasive) to apply to the draft.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "audience",
+          "type": "string",
+          "description": "Intended readership or audience type (e.g., general public, experts, students).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code indicating the desired language of the draft (e.g., 'en', 'es').",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the draft document in words. If omitted, defaults to 1000 words.",
+          "required": false,
+          "defaultValue": "1000"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted document text and metadata such as word count and detected language."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing a first-pass draft document generated from a high-level input such as a title, outline, or topic description. It helps in quickly producing base content for reports, articles, briefs, or proposals that require structured text based on user guidance.",
+        "limitations": "The draft is a generated initial version and may contain inaccuracies or lack detailed domain expertise. It should be reviewed and edited by a human before finalization. It cannot incorporate external or real-time data sources by itself.",
+        "examples": [
+          "Generate a formal report draft on climate change impacts based on provided key points.",
+          "Create an informal blog post draft about hiking tips for beginners.",
+          "Draft a technical memo summarizing new software architecture concepts."
+        ]
+      },
+      "tags": [
+        "content-generation",
+        "document",
+        "drafting",
+        "writing",
+        "text-generation",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"The Impact of Renewable Energy Adoption\",\"outlinePoints\":[\"Introduction\",\"Environmental Benefits\",\"Economic Considerations\",\"Challenges and Solutions\",\"Conclusion\"],\"style\":\"formal\",\"audience\":\"policy makers\",\"language\":\"en\",\"maxLength\":1200}",
+          "description": "Draft a formal policy report on renewable energy using provided outline points."
+        },
+        {
+          "inputJson": "{\"title\":\"Tips for First-Time Hikers\",\"style\":\"informal\",\"audience\":\"general public\",\"language\":\"en\",\"maxLength\":800}",
+          "description": "Create an informal blog post draft giving tips for beginner hikers."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeCitation",
+      "description": "Composes a formatted citation string from structured bibliographic information following specified citation styles such as APA, MLA, or Chicago. Accepts inputs including author names, title, publication date, and source details, then outputs a correctly formatted citation text.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of author names in order, each as a string (e.g., ['John Smith', 'Jane Doe']).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the cited work such as article, book, or webpage.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationDate",
+          "type": "string",
+          "description": "Date of publication in ISO format or other recognizable date string.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "source",
+          "type": "string",
+          "description": "Name of the publication, journal, website, or publisher of the work.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format the output, e.g., 'APA', 'MLA', or 'Chicago'.",
+          "required": true,
+          "defaultValue": "APA"
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL of the online source if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessDate",
+          "type": "string",
+          "description": "Date when the online source was accessed, for online citations.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted citation string as 'formattedCitation'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a properly formatted citation from given bibliographic data for inclusion in academic or professional documents. It helps convert raw citation metadata into standardized citation text for styles like APA, MLA, or Chicago.",
+        "limitations": "This tool cannot fetch bibliographic data automatically or verify the accuracy of input data. It only formats the citation string based on provided inputs and the selected style.",
+        "examples": [
+          "Generate an APA citation for a journal article with two authors.",
+          "Create an MLA citation for a website accessed today.",
+          "Produce a Chicago style citation for a book with known author and publication date."
+        ]
+      },
+      "tags": [
+        "citation",
+        "formatting",
+        "academic",
+        "bibliography",
+        "reference",
+        "style guide",
+        "APA",
+        "MLA",
+        "Chicago"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"authors\":[\"Jane Doe\",\"John Smith\"],\"title\":\"Innovations in AI Research\",\"publicationDate\":\"2022-08-15\",\"source\":\"Journal of AI Studies\",\"citationStyle\":\"APA\"}",
+          "description": "Create an APA citation for a journal article with two authors."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Alice Johnson\"],\"title\":\"Exploring the Cosmos\",\"publicationDate\":\"2019\",\"source\":\"Space Exploration Press\",\"citationStyle\":\"Chicago\"}",
+          "description": "Produce a Chicago style citation for a book with one author."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Emily Brown\"],\"title\":\"Climate Change Effects\",\"url\":\"https://climateexample.org\",\"accessDate\":\"2024-06-01\",\"citationStyle\":\"MLA\"}",
+          "description": "Generate an MLA citation for a web page including accessed date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeHeading",
+      "description": "Generates well-structured and relevant headings for documents, articles, or web pages based on a given topic, desired tone, and heading level. Accepts a short textual topic and formatting preferences, and produces a concise heading text appropriate for the specified context.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Main subject or theme for the heading to be generated. Required for context relevance.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "headingLevel",
+          "type": "number",
+          "description": "Desired heading level from 1 (largest) to 6 (smallest), reflecting document structure and importance.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone or style of the heading, e.g., formal, casual, technical, or persuasive, to match the target audience.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of characters allowed in the heading to ensure conciseness and formatting consistency.",
+          "required": false,
+          "defaultValue": "60"
+        },
+        {
+          "name": "includeKeyword",
+          "type": "string",
+          "description": "Optional keyword that should be included in the heading to improve SEO or relevance.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed heading text and its corresponding heading level used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate appropriate, concise, and formatted headings for digital content such as articles, blogs, reports, or web pages based on thematic input and formatting constraints. It helps maintain consistency in document structure and enhances content readability and SEO.",
+        "limitations": "Cannot generate full section content or paragraphs, only single-line headings. Quality depends on specificity of input topic and parameters. It does not replace editorial review for nuance or cultural context.",
+        "examples": [
+          "Generate a level 1 heading with a formal tone on 'Climate Change Effects'.",
+          "Create a casual, level 3 heading for a blog post about 'Healthy Eating Tips'.",
+          "Produce a technical level 2 heading including keyword 'AI Optimization' within 50 characters."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "heading",
+        "text-generation",
+        "SEO",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Benefits of Meditation\",\"headingLevel\":2,\"tone\":\"formal\",\"maxLength\":50}",
+          "description": "Generate a formal level 2 heading about 'Benefits of Meditation' with max 50 characters."
+        },
+        {
+          "inputJson": "{\"topic\":\"Summer Travel Tips\",\"headingLevel\":3,\"tone\":\"casual\"}",
+          "description": "Generate a casual level 3 heading focusing on summer travel."
+        },
+        {
+          "inputJson": "{\"topic\":\"Quantum Computing Basics\",\"includeKeyword\":\"Quantum\",\"maxLength\":40}",
+          "description": "Generate a heading including 'Quantum' keyword, max 40 characters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeLink",
+      "description": "Creates a formatted hyperlink for digital content by accepting a URL, display text, and optional attributes like title and target. It processes these inputs to generate a valid HTML anchor tag or Markdown link as output, suitable for embedding within web or text content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The destination URL the link should point to.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "displayText",
+          "type": "string",
+          "description": "The text to display for the link; if empty, the URL is used as display text.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional tooltip text that appears when hovering over the link.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "openInNewTab",
+          "type": "boolean",
+          "description": "Whether the link should open in a new browser tab or window (adds target attribute).",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the link: 'html' for anchor tag or 'markdown' for markdown syntax.",
+          "required": false,
+          "defaultValue": "html"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated link string in the requested format under the 'link' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when composing or formatting links for inclusion in digital content such as web pages, blogs, or markdown documents. It helps standardize link creation with customizable display text, titles, and open-in-new-tab behavior, outputting clean HTML or markdown syntax as needed.",
+        "limitations": "This tool does not validate URLs for accessibility or check if the link destination is safe or live. It does not support advanced HTML attributes such as classes or styles beyond title and target.",
+        "examples": [
+          "Create an HTML anchor tag linking to 'https://example.com' with display text 'Example Site' that opens in a new tab.",
+          "Generate a markdown formatted link for 'https://docs.example.com' using the default display text (the URL).",
+          "Create an HTML link with a tooltip title attribute and no special target behavior."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "link",
+        "html",
+        "markdown",
+        "formatting",
+        "hyperlink"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://openai.com\",\"displayText\":\"OpenAI Website\",\"title\":\"Visit OpenAI\",\"openInNewTab\":true,\"format\":\"html\"}",
+          "description": "Create an HTML link to 'https://openai.com' with display text 'OpenAI Website', a title tooltip, that opens in a new tab."
+        },
+        {
+          "inputJson": "{\"url\":\"https://github.com\",\"displayText\":\"\",\"title\":\"GitHub Homepage\",\"openInNewTab\":false,\"format\":\"markdown\"}",
+          "description": "Generate a markdown link to 'https://github.com' using the URL as display text, with a title attribute (ignored in markdown)."
+        },
+        {
+          "inputJson": "{\"url\":\"https://news.example.com\",\"displayText\":\"Latest News\",\"title\":\"Read the latest news\",\"openInNewTab\":false,\"format\":\"html\"}",
+          "description": "Create a standard HTML anchor with custom display text and title, opening in the same tab."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeQuote",
+      "description": "This tool generates a well-structured quote based on user input. It accepts optional text fragments or themes and can produce quotes with specified tone, length, and attribution. The output is a formatted quote string with optional author attribution.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "The central theme or subject of the quote to guide composition, e.g., 'inspiration', 'wisdom'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Desired tone of the quote such as 'motivational', 'humorous', or 'philosophical'.",
+          "required": false,
+          "defaultValue": "inspirational"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the quote in characters to ensure brevity if needed.",
+          "required": false,
+          "defaultValue": "140"
+        },
+        {
+          "name": "includeAttribution",
+          "type": "boolean",
+          "description": "Whether to append an author or source attribution to the quote.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "authorName",
+          "type": "string",
+          "description": "Name of the person to attribute the quote to if includeAttribution is true.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated quote text and optional author attribution."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate original or inspired quotes for content creation, social media posts, presentations, or motivational materials. It helps produce meaningful, contextual quotes tailored by theme and tone to enrich digital content.",
+        "limitations": "The tool cannot generate or verify historically accurate quotes or attribute quotes to real persons reliably when custom authorName is provided. It does not support multi-language quotes beyond English.",
+        "examples": [
+          "Generate a motivational quote about perseverance.",
+          "Compose a humorous quote related to technology.",
+          "Create a short inspirational quote with attribution to 'Anonymous'."
+        ]
+      },
+      "tags": [
+        "content",
+        "quote",
+        "composition",
+        "inspiration",
+        "text-generation",
+        "attribution"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"theme\":\"perseverance\",\"tone\":\"motivational\",\"maxLength\":120,\"includeAttribution\":false,\"authorName\":\"\"}",
+          "description": "Generate a motivational quote about perseverance up to 120 characters without attribution."
+        },
+        {
+          "inputJson": "{\"theme\":\"technology\",\"tone\":\"humorous\",\"maxLength\":140,\"includeAttribution\":true,\"authorName\":\"Tech Guru\"}",
+          "description": "Create a humorous technology-related quote with attribution to 'Tech Guru'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeWord",
+      "description": "Generates a new English word based on given parameters such as meaning, part of speech, length constraints, and style preferences. Accepts semantic and stylistic inputs, processes through word-formation heuristics and language models, and returns a unique word with definition and linguistic attributes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "meaning",
+          "type": "string",
+          "description": "The semantic concept or idea the generated word should represent.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "partOfSpeech",
+          "type": "string",
+          "description": "Grammatical category of the word: noun, verb, adjective, adverb, etc.",
+          "required": false,
+          "defaultValue": "noun"
+        },
+        {
+          "name": "minLength",
+          "type": "number",
+          "description": "Minimum length of the generated word in characters.",
+          "required": false,
+          "defaultValue": "3"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the generated word in characters.",
+          "required": false,
+          "defaultValue": "12"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Preferred style of the word: formal, informal, scientific, poetic, or fantasy.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "includeRealWords",
+          "type": "boolean",
+          "description": "If true, the output word may use or combine existing real words; if false, the word will be entirely artificial.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated word, its definition, part of speech, length, and style attributes."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create new English words to capture novel concepts, brand names, fictional terms, or jargon based on specified meanings and stylistic requirements. It aids in content creation that requires unique or evocative terminology.",
+        "limitations": "Cannot guarantee dictionary-valid or widely accepted words; the generated words may be novel and require validation for use. Does not translate or generate words in languages other than English.",
+        "examples": [
+          "Generate a new noun meaning 'a device that cleans the air silently' that sounds scientific.",
+          "Create a poetic adjective that conveys 'radiant and mysterious' with length between 5 and 10 letters.",
+          "Compose a fantasy style verb for 'to teleport quickly and unexpectedly'."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "word-generation",
+        "linguistics",
+        "creative-writing",
+        "naming",
+        "branding"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"meaning\":\"a device that cleans the air silently\",\"partOfSpeech\":\"noun\",\"minLength\":6,\"maxLength\":10,\"style\":\"scientific\",\"includeRealWords\":false}",
+          "description": "Generate a scientific noun for a silent air cleaning device with length between 6 and 10 characters."
+        },
+        {
+          "inputJson": "{\"meaning\":\"radiant and mysterious\",\"partOfSpeech\":\"adjective\",\"minLength\":5,\"maxLength\":10,\"style\":\"poetic\",\"includeRealWords\":false}",
+          "description": "Create a poetic adjective word that conveys being radiant and mysterious with length between 5 and 10."
+        },
+        {
+          "inputJson": "{\"meaning\":\"to teleport quickly and unexpectedly\",\"partOfSpeech\":\"verb\",\"minLength\":5,\"maxLength\":8,\"style\":\"fantasy\",\"includeRealWords\":false}",
+          "description": "Generate a fantasy-style verb for rapid and unexpected teleportation with word length between 5 and 8."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeSentence",
+      "description": "Generates a coherent and contextually appropriate sentence based on given input parameters such as topic, style, tone, and desired length. It processes the inputs to compose a natural language sentence suitable for content creation, summarization, or communication purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme the sentence should be about.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The writing style for the sentence, e.g., formal, casual, academic, conversational.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The emotional tone of the sentence, such as neutral, positive, negative, humorous, or serious.",
+          "required": false,
+          "defaultValue": "neutral"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "The maximum number of words the sentence should contain.",
+          "required": false,
+          "defaultValue": "20"
+        },
+        {
+          "name": "includeKeywords",
+          "type": "array",
+          "description": "An optional list of keywords to include in the sentence for emphasis or relevance.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed sentence text and metadata about its parameters."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate a single coherent sentence that accurately and succinctly conveys a specific topic or message, customizable by style and tone. Ideal for tasks like writing assistants, content generation snippets, or generating illustrative example sentences.",
+        "limitations": "This tool produces only single sentences, not paragraphs or multi-sentence text. It may not capture deep domain-specific jargon nuances if overly specialized. Output depends on input clarity and parameter constraints.",
+        "examples": [
+          "Compose a formal sentence about climate change with a serious tone.",
+          "Generate a casual, positive sentence about coffee including the keywords 'morning' and 'energizing'.",
+          "Create a short academic sentence summarizing the importance of biodiversity."
+        ]
+      },
+      "tags": [
+        "content",
+        "generation",
+        "sentence",
+        "writing",
+        "text",
+        "style",
+        "tone"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"climate change\",\"style\":\"formal\",\"tone\":\"serious\",\"maxLength\":25}",
+          "description": "Generate a formal and serious sentence on climate change up to 25 words."
+        },
+        {
+          "inputJson": "{\"topic\":\"coffee\",\"style\":\"casual\",\"tone\":\"positive\",\"maxLength\":15,\"includeKeywords\":[\"morning\",\"energizing\"]}",
+          "description": "Create a casual and positive sentence mentioning morning and energizing about coffee."
+        },
+        {
+          "inputJson": "{\"topic\":\"biodiversity\",\"style\":\"academic\",\"tone\":\"neutral\",\"maxLength\":20}",
+          "description": "Compose an academic style sentence about the importance of biodiversity, neutral tone, max 20 words."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeParagraph",
+      "description": "Generates a coherent paragraph of text based on a given topic, style, and length preference. Accepts input parameters to specify the subject matter, the tone of writing, target audience, and approximate paragraph length. Outputs a well-structured paragraph suitable for digital content creation or editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme for the paragraph content.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone of the paragraph such as formal, casual, persuasive, informative, or friendly.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "audience",
+          "type": "string",
+          "description": "Intended audience for the paragraph to tailor language and complexity such as general public, experts, students, or children.",
+          "required": false,
+          "defaultValue": "general public"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate number of sentences to be generated in the paragraph.",
+          "required": false,
+          "defaultValue": "5"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "Optional list of keywords to emphasize in the paragraph for SEO or thematic focus.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated paragraph text as a string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to quickly generate a focused and coherent paragraph on a specified topic, matching a particular tone and suited to a defined audience. Useful for drafting articles, reports, summaries, or content blocks requiring consistent style and readability.",
+        "limitations": "This tool cannot produce highly specialized technical jargon without error, may lack deep domain expertise, and does not generate multi-paragraph or fully structured articles. It also may not perfectly optimize SEO or citation specifics.",
+        "examples": [
+          "Compose a friendly paragraph about the benefits of daily exercise for a general audience.",
+          "Write a formal paragraph explaining the importance of cybersecurity for IT professionals.",
+          "Generate an informative paragraph of about 7 sentences on climate change targeted at high school students."
+        ]
+      },
+      "tags": [
+        "content",
+        "generation",
+        "writing",
+        "paragraph",
+        "AI",
+        "text",
+        "creative",
+        "composition"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"benefits of meditation\",\"tone\":\"friendly\",\"audience\":\"general public\",\"length\":5}",
+          "description": "Generate a friendly paragraph about benefits of meditation for a general audience with about 5 sentences."
+        },
+        {
+          "inputJson": "{\"topic\":\"solar energy adoption\",\"tone\":\"informative\",\"audience\":\"students\",\"length\":6,\"keywords\":[\"renewable energy\",\"sustainability\"]}",
+          "description": "Generate an informative paragraph on solar energy adoption for students emphasizing renewable energy and sustainability."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeText",
+      "description": "Generates original, coherent text content based on a given prompt, tone, and length constraints. Accepts parameters like topic, style, target audience, and optional keywords to incorporate. Produces text output suitable for articles, blog posts, marketing copy, or creative writing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "prompt",
+          "type": "string",
+          "description": "The initial text or idea to inspire the composition (required).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Desired tone or voice of the text such as formal, casual, persuasive, or friendly.",
+          "required": false,
+          "defaultValue": "neutral"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of words or characters for the generated text.",
+          "required": false,
+          "defaultValue": "500"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Intended audience demographic (e.g., professionals, teenagers, general public) to tailor the language style.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of important keywords or phrases to incorporate into the generated text.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeCallToAction",
+          "type": "boolean",
+          "description": "Whether to include a call-to-action in the text if appropriate.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated text content as a string and metadata such as word count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate original and contextually relevant textual content for articles, blogs, marketing materials, or other creative writing tasks, especially when a specific tone or audience focus is desired. It helps automate writing based on prompts and parameters to save time while maintaining style consistency.",
+        "limitations": "May not produce perfectly factual or deeply specialized content without further editing; not suitable for generating highly technical or sensitive information without expert review.",
+        "examples": [
+          "Generate a persuasive marketing paragraph about a new eco-friendly product.",
+          "Write a casual blog introduction on healthy eating habits.",
+          "Create a formal summary article about recent technological advancements."
+        ]
+      },
+      "tags": [
+        "content",
+        "generation",
+        "writing",
+        "text",
+        "creative",
+        "marketing",
+        "blog"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"prompt\":\"The benefits of daily meditation\",\"tone\":\"informative\",\"maxLength\":300,\"targetAudience\":\"general public\",\"keywords\":[\"mindfulness\",\"stress reduction\"],\"includeCallToAction\":true}",
+          "description": "Generate an informative article on meditation benefits incorporating specific keywords with a call to action."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Introducing our latest smartphone model\",\"tone\":\"persuasive\",\"maxLength\":150,\"targetAudience\":\"tech enthusiasts\",\"keywords\":[\"camera\",\"battery life\"],\"includeCallToAction\":true}",
+          "description": "Create a persuasive marketing text highlighting smartphone features for tech enthusiasts."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeReply",
+      "description": "Generates a context-aware, coherent reply message based on an input conversation snippet and specified tone and style preferences. Accepts original message text, optional conversation history, desired tone, and style parameters; outputs a natural language reply suitable for communications such as emails, chats, or social media responses.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "originalMessage",
+          "type": "string",
+          "description": "The primary message or query that requires a reply.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "conversationHistory",
+          "type": "array",
+          "description": "Array of previous messages in the conversation providing context, each as a string. Optional but improves reply relevance.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Desired tone of the reply (e.g., formal, friendly, professional, casual).",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Writing style preference (e.g., concise, detailed, empathetic).",
+          "required": false,
+          "defaultValue": "concise"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code for the reply (e.g., en, es). Defaults to English.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum character length for the generated reply. If omitted, no strict limit.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single property 'replyMessage' which holds the generated reply text string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to generate suitable replies when an AI agent needs to respond to messages in diverse communication channels, ensuring tone and style match user or context preferences. Ideal for email assistants, chatbots, or social media response automation, enhancing engagement and professional communication.",
+        "limitations": "May not capture nuanced emotional context perfectly, or replace deep personal judgment in sensitive communications. Effectiveness depends on provided conversation context and clarity of tone/style parameters.",
+        "examples": [
+          "Compose a friendly reply to a customer complaint.",
+          "Generate a brief professional answer to an internal email.",
+          "Create a casual response to a chat message about event plans."
+        ]
+      },
+      "tags": [
+        "content-generation",
+        "reply",
+        "communication",
+        "message",
+        "email",
+        "chat",
+        "tone",
+        "style"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"originalMessage\":\"Thank you for your update on the project timeline.\",\"tone\":\"professional\",\"style\":\"concise\"}",
+          "description": "Generate a professional, concise reply to an email update message."
+        },
+        {
+          "inputJson": "{\"originalMessage\":\"Can you help me understand the recent changes?\",\"conversationHistory\":[\"Sure, what changes are you referring to?\"],\"tone\":\"friendly\",\"style\":\"detail\",\"language\":\"en\"}",
+          "description": "Compose a friendly and detailed reply to clarify recent changes in a conversation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Reply",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeMessage",
+      "description": "Generates a well-structured message based on provided parameters including recipient information, message purpose, tone, and content details. It processes inputs to create a coherent message text suitable for emails, notifications, or informal communication, returning the composed message string.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "recipientName",
+          "type": "string",
+          "description": "Name of the person receiving the message, used to personalize content.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "messagePurpose",
+          "type": "string",
+          "description": "The main intent of the message, such as 'meeting request', 'thank you note', or 'reminder'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "messageTone",
+          "type": "string",
+          "description": "Desired tone of the message like 'formal', 'friendly', or 'urgent' to affect wording style.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "contentDetails",
+          "type": "string",
+          "description": "Additional details or key points to include in the message body.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeSignature",
+          "type": "boolean",
+          "description": "Whether to include a standard closing signature in the message.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "senderName",
+          "type": "string",
+          "description": "Name of the message sender, used in signature or closing if included.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed message as a text string under the key 'messageText'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a customized message for communication, adapting style and content to specific recipients and purposes. Ideal for automating email drafts, customer notifications, or personalized outreach messages requiring coherent and context-aware text generation.",
+        "limitations": "This tool does not send or deliver the message; it only composes text. It cannot personalize messages based on recipient behavior or history beyond provided inputs, and does not support multilingual composition beyond the input language.",
+        "examples": [
+          "Compose a formal meeting invitation email to a project stakeholder named Alice including meeting agenda details.",
+          "Generate a friendly thank-you note to a colleague named Bob after receiving assistance on a task.",
+          "Create an urgent reminder message about an approaching deadline for a client named Carol with polite closing."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "message-composition",
+        "email-drafting",
+        "communication",
+        "text-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipientName\":\"Alice\",\"messagePurpose\":\"meeting invitation\",\"messageTone\":\"formal\",\"contentDetails\":\"Please join the project update call scheduled for Wednesday at 3 PM.\",\"includeSignature\":true,\"senderName\":\"John\"}",
+          "description": "Compose a formal meeting invitation email for recipient Alice with meeting details and signature."
+        },
+        {
+          "inputJson": "{\"recipientName\":\"Bob\",\"messagePurpose\":\"thank you note\",\"messageTone\":\"friendly\",\"contentDetails\":\"Thanks for helping with the report last week!\",\"includeSignature\":true,\"senderName\":\"John\"}",
+          "description": "Generate a friendly thank-you note to Bob expressing gratitude and including sender signature."
+        },
+        {
+          "inputJson": "{\"recipientName\":\"Carol\",\"messagePurpose\":\"deadline reminder\",\"messageTone\":\"urgent\",\"contentDetails\":\"The submission deadline is tomorrow at noon.\",\"includeSignature\":false,\"senderName\":\"\"}",
+          "description": "Create an urgent reminder message for Carol about an approaching deadline without signature."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Message",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeComment",
+      "description": "Generates a coherent and contextually relevant comment based on given input parameters such as the topic, tone, and length preferences. The tool accepts a subject and optional style instructions to compose a natural language comment suitable for social media, forums, or feedback sections.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The subject or theme on which to base the comment.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone of the comment, e.g., friendly, professional, humorous, or critical.",
+          "required": false,
+          "defaultValue": "friendly"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired length of the comment in words.",
+          "required": false,
+          "defaultValue": "50"
+        },
+        {
+          "name": "targetPlatform",
+          "type": "string",
+          "description": "The platform where the comment will be posted, influencing style (e.g., Twitter, Reddit, Blog).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeCallToAction",
+          "type": "boolean",
+          "description": "Whether to include a call-to-action in the comment if relevant.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed comment text as a string under the 'commentText' field."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate human-like comments related to a specific topic, adjusting tone and length for social media posts, blog feedback, or discussion forums. It helps automate thoughtful responses or engagement messages suited for various platforms.",
+        "limitations": "This tool cannot guarantee the factual accuracy of the comment content and should not be used to generate comments requiring expert domain knowledge without verification. It may also not handle extremely niche or ambiguous topics effectively.",
+        "examples": [
+          "Generate a friendly 40-word comment about environmental conservation for a Reddit post.",
+          "Write a professional 100-word comment giving feedback on a product review.",
+          "Create a humorous short comment about a new tech gadget announcement."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "comment generation",
+        "social media",
+        "feedback",
+        "natural language generation",
+        "tone control"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"The benefits of meditation\",\"tone\":\"friendly\",\"length\":60}",
+          "description": "Compose a friendly comment approximately 60 words long about the benefits of meditation."
+        },
+        {
+          "inputJson": "{\"topic\":\"New company policy changes\",\"tone\":\"professional\",\"length\":100,\"includeCallToAction\":true}",
+          "description": "Generate a professional, about 100-word comment discussing new company policy changes including a call to action."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Comment",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeNotification",
+      "description": "Generates a formatted notification message based on input parameters including recipient info, notification type, message content, urgency level, and optional actions. Produces a structured notification object ready for sending or display in apps.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "recipient",
+          "type": "object",
+          "description": "Details of the notification recipient including id and optional name or contact.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "notificationType",
+          "type": "string",
+          "description": "Category of the notification such as 'alert', 'reminder', or 'update'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "messageContent",
+          "type": "string",
+          "description": "The main text content of the notification message.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "urgencyLevel",
+          "type": "string",
+          "description": "Indicates urgency, e.g., 'low', 'medium', or 'high'.",
+          "required": false,
+          "defaultValue": "medium"
+        },
+        {
+          "name": "actions",
+          "type": "array",
+          "description": "Array of optional action buttons or links the user can engage with, each with label and url.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code for message localization, e.g., 'en', 'es'.",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Structured notification object including recipient, type, content, urgency, actions, and metadata ready for use in notification systems."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to programmatically compose notifications for users in different contexts such as alerts, reminders, or updates, ensuring consistent formatting and inclusion of optional interactive actions and proper urgency tagging. It supports multi-language content and personalized recipient data to tailor the notification.",
+        "limitations": "Does not send or deliver notifications; only composes and formats message content. It does not generate rich media or attachments beyond plain text and action links.",
+        "examples": [
+          "Compose a high urgency alert notification for user id 123 with a link to view details.",
+          "Generate a reminder notification in Spanish with two action buttons for confirming or rescheduling.",
+          "Create an update notification with medium urgency and no actions for multiple recipients."
+        ]
+      },
+      "tags": [
+        "content",
+        "notification",
+        "compose",
+        "messaging",
+        "alerts",
+        "reminders"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipient\":{\"id\":\"user123\",\"name\":\"Alice\"},\"notificationType\":\"alert\",\"messageContent\":\"Your account password has been changed successfully.\",\"urgencyLevel\":\"high\",\"actions\":[{\"label\":\"Review Activity\",\"url\":\"https://example.com/activity\"}],\"language\":\"en\"}",
+          "description": "Compose a high urgency alert notification for user Alice with an action to review activity."
+        },
+        {
+          "inputJson": "{\"recipient\":{\"id\":\"user456\"},\"notificationType\":\"reminder\",\"messageContent\":\"No olvides tu cita mañana a las 10 AM.\",\"urgencyLevel\":\"medium\",\"actions\":[{\"label\":\"Confirmar\",\"url\":\"https://example.com/confirm\"},{\"label\":\"Reprogramar\",\"url\":\"https://example.com/reschedule\"}],\"language\":\"es\"}",
+          "description": "Generate a reminder notification in Spanish with two action buttons for confirming or rescheduling."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Notification",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeChannel",
+      "description": "Generates a detailed communication channel plan for content distribution. Accepts inputs such as channel type (e.g., email, social media), target audience demographics, message objectives, and scheduling preferences. Outputs a structured content channel plan including recommended message formats, posting schedules, and audience targeting recommendations.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "channelType",
+          "type": "string",
+          "description": "Type of communication channel to compose content for, e.g., 'email', 'socialMedia', 'blog', or 'sms'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "object",
+          "description": "Demographic and psychographic information describing the intended audience, e.g., age range, interests, location.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "messageObjectives",
+          "type": "array",
+          "description": "List of objectives the message should accomplish, e.g., ['brand awareness', 'lead generation'].",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "postingFrequencyPerWeek",
+          "type": "number",
+          "description": "Number of content pieces to post per week on this channel.",
+          "required": false,
+          "defaultValue": "3"
+        },
+        {
+          "name": "preferredContentFormats",
+          "type": "array",
+          "description": "Preferred content formats suitable for the channel such as ['text', 'image', 'video'].",
+          "required": false,
+          "defaultValue": "[\"text\"]"
+        },
+        {
+          "name": "startDate",
+          "type": "string",
+          "description": "ISO 8601 date string representing the starting date for the channel content schedule.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Structured content channel plan including recommended message formats, posting schedules with timestamps, targeting recommendations, and channel-specific best practices."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when designing or optimizing digital communication strategies across multiple channels. It helps AI agents recommend tailored content distribution plans based on audience and marketing objectives, improving engagement and reach.",
+        "limitations": "This tool does not generate actual message content or creative copy. It focuses on planning and scheduling strategy, not content creation itself.",
+        "examples": [
+          "Create a social media channel plan targeting millennials interested in fitness with 5 posts per week focusing on brand awareness.",
+          "Compose an email channel strategy for B2B clients emphasizing lead generation with bi-weekly newsletters starting next Monday.",
+          "Design a blog content channel for local audiences focusing on community events with 2 posts per week."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "channel-planning",
+        "communication",
+        "marketing",
+        "strategy",
+        "social-media",
+        "email",
+        "scheduling"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"channelType\":\"socialMedia\",\"targetAudience\":{\"ageRange\":\"18-35\",\"interests\":[\"fitness\",\"wellness\"],\"location\":\"USA\"},\"messageObjectives\":[\"brand awareness\"],\"postingFrequencyPerWeek\":5,\"preferredContentFormats\":[\"image\",\"video\"],\"startDate\":\"2024-07-01\"}",
+          "description": "Plan a social media channel content strategy targeting US millennials interested in fitness with 5 posts per week starting July 1, using images and videos."
+        },
+        {
+          "inputJson": "{\"channelType\":\"email\",\"targetAudience\":{\"industry\":\"technology\",\"jobTitles\":[\"CTO\",\"Developer\"]},\"messageObjectives\":[\"lead generation\"],\"postingFrequencyPerWeek\":2,\"preferredContentFormats\":[\"text\"],\"startDate\":\"2024-06-15\"}",
+          "description": "Compose an email communication channel plan targeting tech professionals for lead generation purposes, sending 2 emails per week starting June 15."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Channel",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeMention",
+      "description": "Generates a properly formatted mention string for a user or entity within digital content, such as social media posts, comments, or documentation. It accepts a username or entity identifier and optional display text to create a mention string compatible with platforms that support '@' mentions or customizable mention syntaxes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "username",
+          "type": "string",
+          "description": "The exact username or identifier to mention. Required for generating a valid mention.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "displayText",
+          "type": "string",
+          "description": "Optional text to display instead of the raw username in the mention. If empty, the username is used.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "platform",
+          "type": "string",
+          "description": "Target platform or system for which to format the mention (e.g., 'twitter', 'slack', 'github'). Determines mention syntax. Defaults to 'generic' which uses '@username'.",
+          "required": false,
+          "defaultValue": "generic"
+        },
+        {
+          "name": "includeAtSymbol",
+          "type": "boolean",
+          "description": "Whether to prepend an '@' symbol to the mention. Defaults to true, but some platforms may not use '@'.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted mention string compatible with the specified platform."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating user or entity mentions within digital content that require proper formatting for specific platforms or standardized '@' notation. It ensures mentions are syntactically correct to trigger notifications or highlight users appropriately.",
+        "limitations": "This tool does not verify the validity or existence of usernames, nor does it handle multiple mentions in one call. It is limited to formatting a single mention string based on input parameters and known platform syntaxes.",
+        "examples": [
+          "Generate a Twitter mention for user 'johndoe'.",
+          "Create a Slack mention with custom display text for user id 'U12345'.",
+          "Format a generic mention without the '@' symbol for a username 'alice'."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "mention",
+        "social",
+        "communication",
+        "text-formatting",
+        "platform-specific"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"username\":\"johndoe\",\"platform\":\"twitter\"}",
+          "description": "Generate a Twitter mention for 'johndoe', should output '@johndoe'."
+        },
+        {
+          "inputJson": "{\"username\":\"U12345\",\"displayText\":\"John Doe\",\"platform\":\"slack\"}",
+          "description": "Create a Slack platform mention using user ID with display text, e.g., '<@U12345|John Doe>'."
+        },
+        {
+          "inputJson": "{\"username\":\"alice\",\"includeAtSymbol\":false}",
+          "description": "Generate a generic mention without '@', just 'alice'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Mention",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeThread",
+      "description": "Generates a structured communication thread based on given topic, initial message, and participant details. Accepts topic string, starter message, participant list, and optional thread style settings, then outputs a formatted thread object ready for digital communication platforms.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or title of the communication thread.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "initialMessage",
+          "type": "string",
+          "description": "The first message initiating the thread, providing context or a question.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "participants",
+          "type": "array",
+          "description": "List of participant user IDs or names involved in the thread.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "threadStyle",
+          "type": "object",
+          "description": "Optional settings to customize thread formatting such as message order, anonymity, or priority flags.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A complete thread object including topic, messages array starting with the initial message, participant details, and metadata for thread management."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to create new discussion threads or conversations in messaging, forum, or collaboration platforms where structured initial content and participant metadata are required to initialize a thread.",
+        "limitations": "This tool cannot post the thread to external platforms or manage live real-time messaging; it only prepares the structured thread data object.",
+        "examples": [
+          "Create a new project discussion thread with a kickoff message and specified team members.",
+          "Generate a customer support thread starting with an initial inquiry message and a list of assigned agents.",
+          "Compose a forum topic thread with a detailed question and participant list for a specialized community."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "thread",
+        "communication",
+        "messaging",
+        "discussion",
+        "collaboration"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Q2 Marketing Strategy\",\"initialMessage\":\"Let's discuss the main goals and campaigns for Q2.\",\"participants\":[\"alice\",\"bob\",\"carol\"],\"threadStyle\":{\"messageOrder\":\"chronological\",\"priority\":\"high\"}}",
+          "description": "Creating a marketing discussion thread with three participants and prioritized as high."
+        },
+        {
+          "inputJson": "{\"topic\":\"Support Ticket #4567\",\"initialMessage\":\"Customer reported an issue with login.\",\"participants\":[\"agent_john\",\"agent_mary\"],\"threadStyle\":{\"anonymity\":false}}",
+          "description": "Composing a support ticket thread starting with initial customer problem and two support agents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Thread",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeReadme",
+      "description": "Generates a professional README.md file for software projects by accepting inputs like project name, description, installation instructions, usage guidelines, contribution rules, license info, and contact details. Processes these inputs to compose a well-structured markdown document ready for repository inclusion.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the software project to include in the README title.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "projectDescription",
+          "type": "string",
+          "description": "A brief description summarizing the project's purpose and functionality.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "installationInstructions",
+          "type": "string",
+          "description": "Step-by-step instructions for installing the project or dependencies.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "usageInformation",
+          "type": "string",
+          "description": "Details on how to use the project after installation, including example commands or code snippets.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contributionGuidelines",
+          "type": "string",
+          "description": "Guidelines for contributing to the project like pull request process and code style.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "license",
+          "type": "string",
+          "description": "The license under which the project is released (e.g., MIT, Apache 2.0).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contactInformation",
+          "type": "string",
+          "description": "Contact details or links for users needing help or wanting to get in touch with maintainers.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object with one key 'readmeContent' containing the full README.md text string formatted in markdown."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a clear, well-structured README file for a software project based on provided project metadata. Ideal to assist developers in creating consistent documentation without manually formatting markdown. It handles typical sections and organizes content for repository display.",
+        "limitations": "Does not create highly customized or dynamic badges, build status links, or deeply technical API documentation sections. It produces a general README template but not project-specific advanced docs.",
+        "examples": [
+          "Create a README for a Python library named 'DataCleaner' with installation, usage, and MIT license.",
+          "Generate README content for a web app project with contribution guidelines and contact info.",
+          "Make a simple README including project name and description only."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "documentation",
+        "markdown",
+        "readme",
+        "software-project",
+        "developer-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"DataCleaner\",\"projectDescription\":\"A Python library for efficient data cleaning and preprocessing.\",\"installationInstructions\":\"pip install datacleaner\",\"usageInformation\":\"import datacleaner\\ncleaned = datacleaner.clean(data)\",\"contributionGuidelines\":\"Please fork the repo and submit pull requests.\",\"license\":\"MIT\",\"contactInformation\":\"email: dev@datacleaner.com\"}",
+          "description": "Generating a full README for a Python library with all common sections."
+        },
+        {
+          "inputJson": "{\"projectName\":\"MyWebApp\",\"projectDescription\":\"A modern web application built with React and Node.js.\",\"installationInstructions\":\"npm install && npm start\",\"usageInformation\":\"Navigate to localhost:3000 to view the app.\",\"contributionGuidelines\":\"Open issues or pull requests are welcome.\",\"license\":\"Apache 2.0\",\"contactInformation\":\"https://github.com/mywebapp\"}",
+          "description": "Creating README for a web app with usage and contribution guidelines."
+        },
+        {
+          "inputJson": "{\"projectName\":\"QuickScript\",\"projectDescription\":\"Simple command-line tool to automate tasks.\"}",
+          "description": "Minimal README with only name and description provided."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeFAQ",
+      "description": "Generates a structured Frequently Asked Questions (FAQ) document based on a provided list of questions and answers, optionally tailored to a specific topic or style. Accepts an array of Q&A pairs and outputs a formatted FAQ suitable for web or document inclusion.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "questionsAnswers",
+          "type": "array",
+          "description": "An array of objects each containing 'question' and 'answer' strings to include in the FAQ.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Optional topic or subject to contextualize and focus the FAQ content.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Optional style of the FAQ output, e.g., 'formal', 'conversational', or 'technical'.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "includeIntro",
+          "type": "boolean",
+          "description": "Whether to include a brief introduction paragraph summarizing the FAQ content.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "maxAnswerLength",
+          "type": "number",
+          "description": "Maximum character length for answers; longer answers will be summarized to this length.",
+          "required": false,
+          "defaultValue": "500"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed FAQ as a formatted string and optionally metadata like question count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to quickly create a clear, organized FAQ document from a list of questions and answers, especially to enhance content clarity on websites, help documents, or product manuals. It helps in providing consistent answers in a user-friendly format.",
+        "limitations": "Cannot generate questions or answers from scratch; requires input Q&A pairs. It does not handle multimedia content or highly technical formatting like collapsible sections or embedded links.",
+        "examples": [
+          "Generate a FAQ for a software product based on given user questions and support answers.",
+          "Create a conversational style FAQ for a website's customer support page.",
+          "Summarize long answers to keep the FAQ concise and clear."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "FAQ",
+        "documentation",
+        "customer support",
+        "content formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"questionsAnswers\":[{\"question\":\"How do I reset my password?\",\"answer\":\"To reset your password, click on the 'Forgot Password' link on the login page and follow the instructions sent to your email.\"},{\"question\":\"What payment methods do you accept?\",\"answer\":\"We accept all major credit cards, PayPal, and bank transfers.\"}],\"topic\":\"Account Management\",\"style\":\"formal\",\"includeIntro\":true,\"maxAnswerLength\":300}",
+          "description": "Creating a formal FAQ about account management with two Q&A pairs and including an introductory paragraph."
+        },
+        {
+          "inputJson": "{\"questionsAnswers\":[{\"question\":\"Can I use this software offline?\",\"answer\":\"Yes, the software supports offline usage except for features that require internet access like real-time collaboration.\"}],\"topic\":\"Software Usage\",\"style\":\"conversational\",\"includeIntro\":false,\"maxAnswerLength\":200}",
+          "description": "Generating a short conversational FAQ entry about software offline capabilities without an intro."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeTemplate",
+      "description": "Generates a document template based on a specified type and optional content placeholders. Accepts template type and customizable fields, applies predefined layouts and formats, and outputs a structured template string ready for further editing or use.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "templateType",
+          "type": "string",
+          "description": "The category of template to compose, e.g., 'invoice', 'report', 'letter'. Determines the layout and included sections.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "placeholders",
+          "type": "object",
+          "description": "Key-value pairs defining placeholder names and default text or variable markers to include in the template.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "includeInstructions",
+          "type": "boolean",
+          "description": "Whether to include inline instructions or comments describing each section or placeholder in the template.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output document format. Options include 'plainText', 'markdown', 'html'. Controls how template is rendered.",
+          "required": false,
+          "defaultValue": "plainText"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the composed template as a string under 'templateContent', and metadata such as templateType and placeholders included."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce standardized document templates with customizable placeholders for users, such as creating invoices, reports, or letters with a defined structure. It helps automate template generation for digital content management workflows.",
+        "limitations": "It cannot fill placeholders with real data; it only composes the template skeleton. Complex formatting beyond basic layouts is not supported. It does not generate fully final documents but reusable templates.",
+        "examples": [
+          "Generate a basic invoice template with predefined placeholders.",
+          "Create a report template including inline instructions for sections.",
+          "Compose a letter template formatted in markdown with placeholders for recipient and date."
+        ]
+      },
+      "tags": [
+        "template",
+        "document",
+        "content-creation",
+        "automation",
+        "compose",
+        "layout",
+        "placeholders"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"templateType\":\"invoice\",\"placeholders\":{\"clientName\":\"[Client Name]\",\"invoiceNumber\":\"[Invoice Number]\",\"date\":\"[Date]\"},\"includeInstructions\":true,\"format\":\"plainText\"}",
+          "description": "Compose a plain text invoice template with placeholders and inline instructions."
+        },
+        {
+          "inputJson": "{\"templateType\":\"report\",\"placeholders\":{\"title\":\"[Report Title]\",\"summary\":\"[Executive Summary]\",\"date\":\"[Date]\"},\"includeInstructions\":false,\"format\":\"markdown\"}",
+          "description": "Generate a markdown report template with basic placeholders but no instructions."
+        },
+        {
+          "inputJson": "{\"templateType\":\"letter\",\"placeholders\":{\"recipient\":\"[Recipient Name]\",\"sender\":\"[Sender Name]\",\"date\":\"[Date]\"},\"includeInstructions\":true,\"format\":\"html\"}",
+          "description": "Create an HTML letter template including placeholders and inline instructional comments."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeChecklist",
+      "description": "Generates a structured checklist document based on a given title, description, and a list of items. Accepts checklist metadata and tasks, and produces a formatted checklist with optional item priorities and completion status fields for task tracking.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title or heading of the checklist to be composed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A brief description or purpose of the checklist to provide context.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "items",
+          "type": "array",
+          "description": "An array of checklist item objects, each specifying the task description and optional properties like priority and completion status.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includePriority",
+          "type": "boolean",
+          "description": "Flag indicating whether to include priority levels for each item in the checklist.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "includeCompletionStatus",
+          "type": "boolean",
+          "description": "Flag indicating whether to include a completion status field (e.g., checkbox) for each checklist item.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed checklist with title, description, and an array of formatted checklist items including optional priority and completion status fields."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a clear and organized checklist document for task tracking, onboarding, quality control, or project management based on user-provided tasks and metadata. It helps structure raw tasks into a formal checklist format suitable for presentation or further processing.",
+        "limitations": "This tool does not support dynamic updating of checklist item states after creation or integrate with external project management systems. It only formats the provided input into a checklist structure.",
+        "examples": [
+          "Create a daily onboarding checklist with tasks and indicate priority for each.",
+          "Generate a quality assurance checklist with completion status for each step.",
+          "Compose a packing checklist for travel without priorities but with checkboxes."
+        ]
+      },
+      "tags": [
+        "content",
+        "checklist",
+        "task management",
+        "document generation",
+        "productivity",
+        "workflow"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Website Launch Checklist\",\"description\":\"Steps to complete before launching the new website.\",\"items\":[{\"task\":\"Finalize design mockups\",\"priority\":\"High\"},{\"task\":\"Test all links and forms\",\"priority\":\"Medium\"},{\"task\":\"Prepare press release\"}],\"includePriority\":true,\"includeCompletionStatus\":true}",
+          "description": "Generating a website launch checklist including task priorities and completion checkboxes."
+        },
+        {
+          "inputJson": "{\"title\":\"Daily Health Checklist\",\"items\":[{\"task\":\"Take vitamins\"},{\"task\":\"Drink 8 glasses of water\"},{\"task\":\"30 minutes exercise\"}],\"includePriority\":false,\"includeCompletionStatus\":true}",
+          "description": "Creating a simple daily health checklist with checkboxes but no priorities."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeTranscript",
+      "description": "Composes a structured written transcript from audio/video input or text segments. Accepts raw media files or timestamped subtitle snippets, processes speech recognition and formatting, and outputs a clean, readable transcript suitable for documentation, accessibility, and archival purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "mediaUrl",
+          "type": "string",
+          "description": "URL of the audio or video file to transcribe. Provide either mediaUrl or subtitleSegments.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "subtitleSegments",
+          "type": "array",
+          "description": "Array of subtitle segment objects with startTime, endTime, and text to compose transcript from pre-existing text segments.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code of the audio or text segments to optimize transcription accuracy. Defaults to 'en'.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "includeTimestamps",
+          "type": "boolean",
+          "description": "Whether to include timestamps inline in the transcript output. Defaults to false for cleaner text.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "formattingStyle",
+          "type": "string",
+          "description": "Formatting style for the output transcript such as 'plain', 'paragraph', or 'subtitle'. Defaults to 'paragraph'.",
+          "required": false,
+          "defaultValue": "paragraph"
+        },
+        {
+          "name": "speakerLabels",
+          "type": "boolean",
+          "description": "Whether to attempt speaker diarization and label speakers in the transcript. Defaults to false.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing the composed transcript text and metadata such as word count and detected language."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to generate accurate and well-formatted transcripts from media files or subtitle data for meetings, interviews, lectures, or video content. It is helpful when creating accessible content, searchable records, or textual documentation from audio or video sources.",
+        "limitations": "The tool depends on the quality of input audio or text segments. It cannot correct errors in the original recording nor generate transcripts without any input media or text. Speaker diarization may be imperfect for overlapping speech or noisy environments.",
+        "examples": [
+          "Generate a written transcript from this conference video URL.",
+          "Compose a transcript from provided timestamped subtitle segments in English.",
+          "Produce a paragraph formatted transcript with speaker labels from this podcast audio file."
+        ]
+      },
+      "tags": [
+        "transcription",
+        "content-creation",
+        "media-processing",
+        "accessibility",
+        "document-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mediaUrl\":\"https://example.com/meeting_audio.mp3\",\"language\":\"en\",\"includeTimestamps\":true,\"formattingStyle\":\"paragraph\",\"speakerLabels\":true}",
+          "description": "Generate a paragraph-formatted transcript with speaker labels and timestamps from an English meeting audio file."
+        },
+        {
+          "inputJson": "{\"subtitleSegments\":[{\"startTime\":0.0,\"endTime\":2.5,\"text\":\"Welcome everyone.\"},{\"startTime\":2.5,\"endTime\":5.0,\"text\":\"Let's start the presentation.\"}],\"formattingStyle\":\"subtitle\",\"includeTimestamps\":false}",
+          "description": "Compose a transcript from an array of subtitle segments, outputting subtitle-style format without timestamps."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeMinutes",
+      "description": "This tool generates structured meeting minutes from provided meeting details such as agenda topics, participants, discussion points, decisions, and action items. It processes input data to produce a clear, organized minutes document in text or JSON format suitable for record-keeping and sharing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "meetingTitle",
+          "type": "string",
+          "description": "The title or subject of the meeting to be documented.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "meetingDate",
+          "type": "string",
+          "description": "The date of the meeting in ISO 8601 format (YYYY-MM-DD).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "participants",
+          "type": "array",
+          "description": "List of participant names attending the meeting.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "agendaItems",
+          "type": "array",
+          "description": "Array of agenda topics to be covered during the meeting.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "discussionPoints",
+          "type": "array",
+          "description": "Discussion details for each agenda item, including key points raised.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "decisions",
+          "type": "array",
+          "description": "List of decisions made during the meeting, linked to agenda items if applicable.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "actionItems",
+          "type": "array",
+          "description": "Tasks assigned during the meeting, with responsible persons and deadlines if available.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Output format for the minutes document: 'text' for plain text or 'json' for structured JSON.",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted meeting minutes as a string in the requested format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent must generate clear and formal meeting minutes from raw meeting data inputs, such as agendas, discussions, and decisions, to provide a summary suitable for participants and record-keeping. It is ideal for automating documentation after virtual or in-person meetings.",
+        "limitations": "This tool generates minutes based on provided structured inputs and does not perform raw transcription from audio or video. It cannot infer missing information not supplied by the user.",
+        "examples": [
+          "Generate minutes from a weekly team meeting with agendas, discussions, and actions.",
+          "Create a text summary of decisions and tasks from project kickoff meeting data.",
+          "Provide JSON formatted minutes for automated workflow integration."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "document generation",
+        "meeting documentation",
+        "automation",
+        "minutes",
+        "productivity"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"meetingTitle\":\"Weekly Team Sync\",\"meetingDate\":\"2024-06-01\",\"participants\":[\"Alice\",\"Bob\",\"Charlie\"],\"agendaItems\":[\"Project Status\",\"Risk Review\"],\"discussionPoints\":[{\"topic\":\"Project Status\",\"points\":[\"Alice reported progress on milestone 1\",\"Bob highlighted delay due to vendor\"],\"decisions\":[\"Adjust deadline for milestone 2\"]}],\"decisions\":[\"Approve revised timeline\"],\"actionItems\":[{\"task\":\"Bob to contact vendor\",\"owner\":\"Bob\",\"dueDate\":\"2024-06-05\"}],\"outputFormat\":\"text\"}",
+          "description": "Compose detailed text minutes for a weekly team sync meeting with agenda, discussions, decisions, and action items."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeBrief",
+      "description": "Generates a concise briefing document based on provided key points, target audience, and purpose. Accepts inputs like topic, objectives, key messages, and intended length, then produces a structured brief that can be used for project kickoffs, marketing plans, or meeting overviews.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Main subject or theme of the brief to be composed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "objectives",
+          "type": "array",
+          "description": "List of goals or objectives the brief should address.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "keyMessages",
+          "type": "array",
+          "description": "Core messages or points to highlight in the brief.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience for the brief.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "purpose",
+          "type": "string",
+          "description": "Overall purpose or intention of the brief (e.g., inform, persuade, instruct).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired length of the brief in words.",
+          "required": false,
+          "defaultValue": "300"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Preferred tone of the brief (e.g., formal, casual, motivational).",
+          "required": false,
+          "defaultValue": "formal"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated brief text and its metadata, including word count and summary."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a succinct, structured overview document that captures main points and objectives for internal or external communication, aiding users in quickly creating professional briefs without manual drafting.",
+        "limitations": "This tool cannot replace subject matter expertise and may produce generalized content that requires user review. It does not provide detailed analyses or deep research content.",
+        "examples": [
+          "Create a brief for a product launch targeting marketing team members to align on key messages.",
+          "Generate a 250-word briefing to summarize project goals and deliverables for stakeholders.",
+          "Compose a casual tone briefing for an internal team meeting outlining objectives and agenda."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "document generation",
+        "brief",
+        "summary",
+        "business",
+        "marketing",
+        "communication"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"New Mobile App Launch\",\"objectives\":[\"Inform the marketing team\",\"Align on messaging\",\"Define launch goals\"],\"keyMessages\":[\"Innovative features\",\"User-friendly design\",\"Competitive pricing\"],\"targetAudience\":\"Marketing team\",\"purpose\":\"Align internal communication\",\"length\":300,\"tone\":\"formal\"}",
+          "description": "Generate a formal brief for marketing team to align on a new app launch."
+        },
+        {
+          "inputJson": "{\"topic\":\"Quarterly Sales Review\",\"objectives\":[\"Summarize sales data\",\"Highlight challenges\",\"Plan next quarter\"],\"keyMessages\":[\"Revenue increased by 10%\",\"Customer retention improved\",\"Expand sales team\"],\"targetAudience\":\"Sales department\",\"purpose\":\"Inform and motivate team\",\"length\":250,\"tone\":\"motivational\"}",
+          "description": "Create a motivational brief summarizing quarterly sales for the sales team."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeArticle",
+      "description": "Generates a coherent and structured article based on given topics, keywords, and style preferences. Accepts parameters to tailor article length, tone, and target audience, then produces a well-organized article text and summary suitable for publishing or further editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the article to be composed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of key terms that should be covered or emphasized in the article.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired length of the article in words.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone or style of the article, such as formal, casual, persuasive, or informative.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended readership, e.g., general public, experts, students.",
+          "required": false,
+          "defaultValue": "general public"
+        },
+        {
+          "name": "includeSummary",
+          "type": "boolean",
+          "description": "Whether to generate a short summary or abstract for the article.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete article text and an optional summary if requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to create original articles from scratch or based on provided topics and keywords. Ideal for generating blog posts, informational content, or drafts that require customization in tone and length. Useful when a structured, coherent article is needed without manual writing.",
+        "limitations": "Does not guarantee factual accuracy or citations. May require human review for complex or technical topics. Cannot create articles with multimedia content or interactive elements.",
+        "examples": [
+          "Compose an 800-word informative article titled 'The Future of Renewable Energy' targeting general readers, emphasizing solar and wind power.",
+          "Generate a formal article about the impact of AI in healthcare for an expert audience, with a persuasive tone.",
+          "Create a casual blog post titled 'Top 5 Travel Destinations for 2024' with a summary, focusing on keywords like 'adventure', 'culture', and 'budget-friendly'."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "article-generation",
+        "writing",
+        "blog",
+        "informational",
+        "text-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"The Future of Renewable Energy\",\"keywords\":[\"solar power\",\"wind power\",\"sustainability\"],\"length\":800,\"tone\":\"informative\",\"targetAudience\":\"general public\",\"includeSummary\":true}",
+          "description": "Generate an informative article about renewable energy focusing on solar and wind power for general readers, about 800 words, with a summary."
+        },
+        {
+          "inputJson": "{\"title\":\"Impact of AI in Healthcare\",\"keywords\":[\"AI\",\"healthcare\",\"technology\",\"patient care\"],\"length\":1000,\"tone\":\"formal\",\"targetAudience\":\"experts\",\"includeSummary\":false}",
+          "description": "Create a formal article addressing the impact of AI on healthcare intended for expert readers, about 1000 words, no summary."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeBlogPost",
+      "description": "Generates a complete blog post based on provided topics, keywords, desired length, and style preferences. It processes the input parameters to create a coherent, structured article including title, introduction, body sections, and conclusion. Outputs the blog post content as formatted text ready for publishing or further editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the blog post to focus the content.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of keywords or phrases to be incorporated naturally throughout the blog post to improve SEO relevance.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The tone or style of the blog post (e.g., casual, professional, humorous).",
+          "required": false,
+          "defaultValue": "professional"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the target readership to tailor language and complexity (e.g., beginners, experts).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "wordCount",
+          "type": "number",
+          "description": "Approximate desired word count for the entire blog post.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "includeSections",
+          "type": "array",
+          "description": "Optional list of section headings to structure the blog post (e.g., Introduction, Benefits, Conclusion).",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated blog post with title, full content, and optionally structured sections as text."
+      },
+      "aiAgent": {
+        "useCase": "When needing to rapidly generate a coherent, SEO-friendly blog post tailored to specific topics, keywords, and audience preferences, this tool provides a streamlined content creation starting point. Ideal for content marketing, rapid prototyping, draft creation, or bulk blog writing automation.",
+        "limitations": "The tool cannot replace expert domain knowledge or human editing for accuracy and creativity. It may produce generic or formulaic content and might require fact-checking and style polishing by a human editor.",
+        "examples": [
+          "Create a blog post about sustainable living incorporating keywords like 'eco-friendly,' 'carbon footprint,' and 'renewable energy' with a casual tone for beginners.",
+          "Generate a professional blog article targeting software developers explaining the benefits of TypeScript with approximately 1200 words.",
+          "Compose a blog post titled 'The Future of Remote Work' with sections Introduction, Challenges, Opportunities, and Conclusion."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "blog writing",
+        "SEO",
+        "content marketing",
+        "article generation",
+        "AI writing",
+        "digital content"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"The Benefits of Meditation\",\"keywords\":[\"mindfulness\",\"stress relief\",\"mental health\"],\"tone\":\"calm\",\"targetAudience\":\"general public\",\"wordCount\":700}",
+          "description": "Generate a 700-word calm toned blog post aimed at the general public about the benefits of meditation including mindfulness, stress relief, and mental health."
+        },
+        {
+          "inputJson": "{\"title\":\"Top 10 JavaScript Frameworks in 2024\",\"keywords\":[\"JavaScript\",\"frameworks\",\"web development\"],\"tone\":\"professional\",\"targetAudience\":\"web developers\",\"wordCount\":1000,\"includeSections\":[\"Introduction\",\"Framework List\",\"Comparison\",\"Conclusion\"]}",
+          "description": "Create a 1000-word professional blog post for web developers listing and comparing the top 10 JavaScript frameworks in 2024 with specified sections."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeSummary",
+      "description": "Generates a concise summary from a given text or document. Accepts input text, summarizes key points, optionally targets a specific summary length or style, and outputs a clear, coherent summary suitable for quick understanding or content preview.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "inputText",
+          "type": "string",
+          "description": "The full text or document content to be summarized.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length (in characters) for the summary. If not set, defaults to a moderate length summary.",
+          "required": false,
+          "defaultValue": "500"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The tone or style of the summary, e.g. 'formal', 'informal', 'technical'.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "includeHighlights",
+          "type": "boolean",
+          "description": "Whether to include bullet point highlights in addition to the summary text.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the summary text and optionally bullet points if requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to generate quick, human-readable summaries of long documents or articles to help users grasp key information efficiently. Useful for briefing, content curation, or preview generation.",
+        "limitations": "May not capture highly nuanced or context-dependent meanings accurately. Not intended for summarizing very short texts or texts full of ambiguous references.",
+        "examples": [
+          "Summarize a research paper abstract into a 200-character formal summary.",
+          "Generate an informal, bullet-point summary of a news article for social media posting.",
+          "Create a brief technical summary from long software documentation."
+        ]
+      },
+      "tags": [
+        "summary",
+        "content-creation",
+        "document",
+        "text-processing",
+        "abstraction"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputText\":\"Artificial intelligence (AI) is intelligence demonstrated by machines, unlike the natural intelligence displayed by humans and animals. AI applications include advanced web search engines, recommendation systems, and autonomous vehicles.\",\"maxLength\":150,\"style\":\"formal\",\"includeHighlights\":false}",
+          "description": "Generate a formal summary of an AI-focused text with max length 150 characters without highlights."
+        },
+        {
+          "inputJson": "{\"inputText\":\"The quarterly sales report shows a 15% increase in revenue compared to the last quarter. Marketing campaigns have been effective in new customer acquisition, but supply chain delays remain a challenge.\",\"maxLength\":200,\"style\":\"informal\",\"includeHighlights\":true}",
+          "description": "Create an informal summary with bullet point highlights for a sales report."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeEmail",
+      "description": "This tool composes a professional email based on input parameters including recipient details, subject, body content, tone, and optional attachments. It processes the inputs to generate a complete email draft ready for sending or further editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "recipientEmail",
+          "type": "string",
+          "description": "The email address of the recipient. Required to specify the email target.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "recipientName",
+          "type": "string",
+          "description": "The name of the recipient, used for personalized greetings. Not strictly required.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "The subject line of the email, summarizing its purpose.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "bodyContent",
+          "type": "string",
+          "description": "The main body text of the email, can include detailed information or message.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Desired tone of the email such as formal, informal, friendly, or urgent, influencing the style of the composition.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "attachments",
+          "type": "array",
+          "description": "List of filenames or URLs to include as attachments in the email, optional.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "ccEmails",
+          "type": "array",
+          "description": "Array of email addresses to be CC'd on the email.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "bccEmails",
+          "type": "array",
+          "description": "Array of email addresses to be BCC'd on the email.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the composed email with fields for recipient, subject, body, tone, attachments, CC and BCC lists."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate or draft professional emails with customization for tone, recipient details, and attachments, especially useful in automated communication workflows or personal assistant scenarios.",
+        "limitations": "This tool does not send emails or validate email addresses; it only generates email content draft format.",
+        "examples": [
+          "Compose an email to a client with a formal tone requesting a project update.",
+          "Create a friendly follow-up email to a colleague including an attached report.",
+          "Draft an urgent email to the manager notifying about a deadline change."
+        ]
+      },
+      "tags": [
+        "email",
+        "content creation",
+        "communication",
+        "automated writing",
+        "professional",
+        "message drafting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipientEmail\":\"client@example.com\",\"recipientName\":\"Alice\",\"subject\":\"Project Update Request\",\"bodyContent\":\"Dear Alice, I hope this message finds you well. Could you please provide the latest update on the project status at your earliest convenience? Thanks in advance.\",\"tone\":\"formal\",\"attachments\":[],\"ccEmails\":[],\"bccEmails\":[]}",
+          "description": "Formal email requesting a project update from a client."
+        },
+        {
+          "inputJson": "{\"recipientEmail\":\"colleague@example.com\",\"recipientName\":\"Bob\",\"subject\":\"Weekly Report Attached\",\"bodyContent\":\"Hi Bob, Please find attached the weekly performance report. Let me know if you have any questions.\",\"tone\":\"friendly\",\"attachments\":[\"report.pdf\"],\"ccEmails\":[\"teamlead@example.com\"],\"bccEmails\":[]}",
+          "description": "Friendly email to a colleague sending a weekly report with CC to team lead."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Email",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeReport",
+      "description": "This tool generates a detailed written report based on structured input data and a specified report template. It accepts content sections, metadata such as title, author, and date, and formatting preferences, then composes a coherent, well-organized report document in Markdown or PDF format as output.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title of the report to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "The author or creator name to include in the report metadata.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "The date to display on the report, typically in YYYY-MM-DD format.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of content sections; each section is an object with a heading and body text to include in the report.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Desired output format of the report document, e.g., 'markdown' or 'pdf'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to automatically generate and include a table of contents.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "pageSize",
+          "type": "string",
+          "description": "Page size for PDF output, e.g., 'A4', 'Letter'. Effective only if format is 'pdf'.",
+          "required": false,
+          "defaultValue": "A4"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated report content as a string and the format indicating the file type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a structured, formal report needs to be programmatically generated from raw data or section content. It helps automate report writing by formatting and assembling sections into a polished document in the desired format, saving time on manual composition.",
+        "limitations": "This tool cannot perform complex data analysis or generate content beyond the provided input sections. It also does not handle multimedia embedding beyond text and simple formatting.",
+        "examples": [
+          "Generate a project status report with sections for overview, milestones, and risks.",
+          "Compose a research summary report in PDF format with a title, author, and date.",
+          "Create a meeting minutes document in markdown with a table of contents included."
+        ]
+      },
+      "tags": [
+        "reporting",
+        "document-generation",
+        "content-creation",
+        "automation",
+        "markdown",
+        "pdf"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Q2 Financial Report\",\"author\":\"Jane Smith\",\"date\":\"2024-06-15\",\"sections\":[{\"heading\":\"Executive Summary\",\"body\":\"This quarter showed 10% growth in revenue...\"},{\"heading\":\"Detailed Analysis\",\"body\":\"The sales increased primarily in the North America region...\"}],\"format\":\"pdf\",\"includeTableOfContents\":true,\"pageSize\":\"Letter\"}",
+          "description": "Generate a PDF financial report with two sections, including a table of contents and author/date metadata."
+        },
+        {
+          "inputJson": "{\"title\":\"Weekly Team Meeting Minutes\",\"sections\":[{\"heading\":\"Attendees\",\"body\":\"List of attendees...\"},{\"heading\":\"Discussion Points\",\"body\":\"Summary of topics discussed...\"},{\"heading\":\"Action Items\",\"body\":\"Tasks assigned with deadlines...\"}],\"format\":\"markdown\",\"includeTableOfContents\":false}",
+          "description": "Compose a markdown document for meeting minutes without a table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.composeDocument",
+      "description": "This tool accepts structured inputs including a title, sections with headings and content, and optional metadata to compose a coherent, formatted document. It processes the inputs to generate a plain text or markdown formatted document string suitable for reports, articles, or notes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the document to be composed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section objects, each containing a heading and associated content for that section.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional metadata for the document such as author, date, and keywords.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The desired output format: 'plain' for plain text or 'markdown' for markdown formatting.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed document string under the 'document' key, formatted as requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a structured and readable document from user-provided outlines, sections, and metadata. It is suitable for creating reports, summaries, articles, or notes in plain text or markdown format. The agent can rely on this tool to produce organized textual content without manual formatting.",
+        "limitations": "This tool does not perform natural language generation beyond assembling and formatting given inputs. It cannot rewrite, summarize, or generate content autonomously and requires structured section content as input.",
+        "examples": [
+          "Compose a markdown report with given title and three sections, including author metadata.",
+          "Create a plain text meeting notes document with a title and bulleted action items sections.",
+          "Generate an article using provided section headings and paragraphs, output formatted in markdown."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "document generation",
+        "markdown",
+        "report writing",
+        "text formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Quarterly Sales Report\",\"sections\":[{\"heading\":\"Introduction\",\"content\":\"Overview of sales performance.\"},{\"heading\":\"Data Analysis\",\"content\":\"Detailed data insights.\"},{\"heading\":\"Conclusion\",\"content\":\"Summary and future outlook.\"}],\"metadata\":{\"author\":\"Jane Doe\",\"date\":\"2024-05-31\"},\"format\":\"markdown\"}",
+          "description": "Compose a quarterly sales report with three sections and author metadata in markdown format."
+        },
+        {
+          "inputJson": "{\"title\":\"Team Meeting Notes\",\"sections\":[{\"heading\":\"Attendees\",\"content\":\"John, Sarah, Ahmed.\"},{\"heading\":\"Discussion Points\",\"content\":\"Project deadlines, resource allocation.\"},{\"heading\":\"Action Items\",\"content\":\"Assign tasks, schedule follow-up.\"}],\"format\":\"plain\"}",
+          "description": "Generate plain text meeting notes with multiple sections, no metadata."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateReference",
+      "description": "Generates a formatted reference citation based on bibliographic details provided as input, supporting various citation styles such as APA, MLA, and Chicago. The tool accepts key data fields including author(s), title, publication year, source type, and outputs a properly formatted reference string suitable for academic and professional documents.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of authors, each as a full name string, used to create the author portion of the reference.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title of the work being referenced (article, book, report, etc.).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "year",
+          "type": "number",
+          "description": "Year of publication or release.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of source (e.g., book, journalArticle, website, report) to determine formatting rules.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publication",
+          "type": "string",
+          "description": "Name of the publication, publisher, or website where the source appears, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "volume",
+          "type": "string",
+          "description": "Volume number of the source (for journal articles, etc.), if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "issue",
+          "type": "string",
+          "description": "Issue number of the source (for journals), if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pages",
+          "type": "string",
+          "description": "Page numbers or range for the referenced material, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL for online sources, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "The citation style to format the reference in, e.g., APA, MLA, Chicago.",
+          "required": true,
+          "defaultValue": "APA"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted reference string under the key 'formattedReference'."
+      },
+      "aiAgent": {
+        "useCase": "This tool should be used when an AI needs to generate a scholarly or professional reference based on structured bibliographic data. It ensures citations comply with standard styles for consistent and accurate references in documents, research papers, or bibliographies.",
+        "limitations": "Cannot verify the correctness or existence of source data; formatting may not cover all edge case rules of citation styles or very specialized source types.",
+        "examples": [
+          "Generate an APA citation for a journal article with multiple authors and volume/issue info.",
+          "Create an MLA style reference for an online report with a URL.",
+          "Format a Chicago style citation for a book given author, year, publisher."
+        ]
+      },
+      "tags": [
+        "citation",
+        "reference",
+        "bibliography",
+        "formatting",
+        "academic",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"authors\":[\"Jane Doe\",\"John Smith\"],\"title\":\"Insights into Quantum Computing\",\"year\":2022,\"sourceType\":\"journalArticle\",\"publication\":\"Journal of Computing Research\",\"volume\":\"15\",\"issue\":\"4\",\"pages\":\"123-145\",\"citationStyle\":\"APA\"}",
+          "description": "Generate an APA style reference for a journal article with two authors and volume/issue."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Anne Brown\"],\"title\":\"Modern Web Design Trends\",\"year\":2020,\"sourceType\":\"website\",\"publication\":\"WebDesign Weekly\",\"url\":\"https://webdesignweekly.example.com/article123\",\"citationStyle\":\"MLA\"}",
+          "description": "Create an MLA style citation for an online article with a URL."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Robert Green\"],\"title\":\"Effective Project Management\",\"year\":2018,\"sourceType\":\"book\",\"publication\":\"TechPress\",\"citationStyle\":\"Chicago\"}",
+          "description": "Format a Chicago style reference for a book with author, title, year, and publisher."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateCitation",
+      "description": "Generates properly formatted citations for various source types (e.g., books, articles, websites) based on provided bibliographic information and desired citation style such as APA, MLA, or Chicago. Accepts details like author names, title, publication year, and outputs a formatted citation string.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of source to cite (e.g., book, journalArticle, website)",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "array",
+          "description": "List of authors, each as a string in 'Last, First' format",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the source material",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationYear",
+          "type": "number",
+          "description": "Year the source was published",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "publisher",
+          "type": "string",
+          "description": "Publisher name for books or organizations responsible for content",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "journalName",
+          "type": "string",
+          "description": "Journal or periodical name for articles",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "volume",
+          "type": "string",
+          "description": "Volume number for journal articles",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "issue",
+          "type": "string",
+          "description": "Issue number for journal articles",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pages",
+          "type": "string",
+          "description": "Page range for articles or book chapters",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL for online sources",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessDate",
+          "type": "string",
+          "description": "Date the online source was accessed (format YYYY-MM-DD)",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format output (e.g., APA, MLA, Chicago)",
+          "required": true,
+          "defaultValue": "APA"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted citation string and the citation style used"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to produce a correctly formatted citation string for a source based on its bibliographic details, supporting multiple source types and citation styles. Essential for academic content generation, reference list creation, or document automation where standardized citations are required.",
+        "limitations": "This tool generates citations based on common fields but does not verify source accuracy or handle extremely niche citation types. It requires correct input data; incomplete or incorrect data will affect output formatting.",
+        "examples": [
+          "Generate an APA book citation with author names, title, publisher, and year.",
+          "Create an MLA citation for a journal article including volume, issue, pages, and journal name.",
+          "Format a Chicago-style citation for a website with author, title, URL, and access date."
+        ]
+      },
+      "tags": [
+        "citation",
+        "reference",
+        "content-creation",
+        "academic",
+        "formatting",
+        "bibliography"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceType\":\"book\",\"author\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"The Art of Testing\",\"publicationYear\":2020,\"publisher\":\"Tech Press\",\"citationStyle\":\"APA\"}",
+          "description": "Generate an APA citation for a book with two authors."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"journalArticle\",\"author\":[\"Brown, Lisa\"],\"title\":\"Innovations in AI\",\"journalName\":\"AI Journal\",\"volume\":\"15\",\"issue\":\"4\",\"pages\":\"123-145\",\"publicationYear\":2022,\"citationStyle\":\"MLA\"}",
+          "description": "Generate an MLA citation for a journal article with volume and issue."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"website\",\"author\":[\"Green, Alice\"],\"title\":\"Understanding Quantum Computing\",\"url\":\"https://example.com/quantum\",\"accessDate\":\"2023-05-01\",\"citationStyle\":\"Chicago\"}",
+          "description": "Generate a Chicago style citation for a website with access date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateWord",
+      "description": "Generates a single word based on optional criteria such as language, part of speech, word length, and thematic category. Accepts parameters to customize the word output and returns a relevant word as a string.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code (e.g., 'en' for English) to generate the word in.",
+          "required": false,
+          "defaultValue": "\"en\""
+        },
+        {
+          "name": "partOfSpeech",
+          "type": "string",
+          "description": "The desired part of speech such as noun, verb, adjective, or adverb.",
+          "required": false,
+          "defaultValue": "\"\""
+        },
+        {
+          "name": "minLength",
+          "type": "number",
+          "description": "Minimum number of characters for the generated word.",
+          "required": false,
+          "defaultValue": "1"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of characters for the generated word.",
+          "required": false,
+          "defaultValue": "20"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Optional thematic category to influence the word's meaning or domain (e.g., 'technology', 'nature').",
+          "required": false,
+          "defaultValue": "\"\""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated word as a string and the details of the parameters used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a single, contextually relevant word is needed for creative writing, branding, game development, or natural language generation. It helps generate words tailored by language, meaning, or stylistic constraints.",
+        "limitations": "This tool does not generate phrases or sentences, nor does it guarantee the word is common or easily recognized. Complex semantic or contextual usage beyond part of speech and theme is not supported.",
+        "examples": [
+          "Generate a noun in English with 5 to 7 letters related to technology.",
+          "Generate a short adjective describing a natural theme.",
+          "Generate any verb in French without length restriction."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "word-generation",
+        "language",
+        "text",
+        "nlp",
+        "creative-writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"language\":\"en\",\"partOfSpeech\":\"noun\",\"minLength\":4,\"maxLength\":8,\"theme\":\"technology\"}",
+          "description": "Generate a technology-related noun in English between 4 and 8 characters."
+        },
+        {
+          "inputJson": "{\"language\":\"en\",\"partOfSpeech\":\"adjective\",\"minLength\":3,\"maxLength\":6,\"theme\":\"nature\"}",
+          "description": "Generate a short adjective describing something natural."
+        },
+        {
+          "inputJson": "{\"language\":\"fr\",\"partOfSpeech\":\"verb\",\"minLength\":2,\"maxLength\":10,\"theme\":\"\"}",
+          "description": "Generate a verb in French with no theme and a character length between 2 and 10."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateQuote",
+      "description": "Generates an inspirational or motivational quote based on optional themes or subjects provided as input. Processes user-defined topics or styles to create a relevant, original quote output as a string suitable for digital content use.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Optional theme or subject to guide the generated quote (e.g., 'perseverance', 'happiness').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Optional stylistic preference for the quote (e.g., 'philosophical', 'humorous', 'poetic').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the generated quote in characters. Limits the output size.",
+          "required": false,
+          "defaultValue": "200"
+        },
+        {
+          "name": "includeAuthor",
+          "type": "boolean",
+          "description": "Whether to append a fictional author name to the quote for stylistic effect.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated quote text and optionally the author name."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool whenever you need to create original, motivational or thematic quotes for digital content such as social media posts, blogs, presentations, or creative projects. It helps generate concise, relevant quotes based on user-defined themes and styles, facilitating content creation without relying on existing famous quotes.",
+        "limitations": "The generated quotes are original but may lack deep philosophical rigor or novelty. It cannot verify or produce quotes attributed to real historical figures accurately. It should not be used for generating quotes that require factual or historical authenticity.",
+        "examples": [
+          "Generate a motivational quote about perseverance with a poetic style.",
+          "Create a humorous quote related to technology.",
+          "Produce a short inspirational quote without any specific theme."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "generate",
+        "quote",
+        "inspiration",
+        "motivational",
+        "creative-writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"theme\":\"courage\",\"style\":\"philosophical\",\"maxLength\":150,\"includeAuthor\":true}",
+          "description": "Generate a philosophical quote about courage with a maximum length of 150 characters, including a fictional author."
+        },
+        {
+          "inputJson": "{\"theme\":\"technology\",\"style\":\"humorous\",\"maxLength\":100,\"includeAuthor\":false}",
+          "description": "Create a humorous technology-themed quote without author attribution, limited to 100 characters."
+        },
+        {
+          "inputJson": "{\"theme\":\"\",\"style\":\"\",\"maxLength\":120,\"includeAuthor\":false}",
+          "description": "Produce a general inspirational quote with no specified theme or style, limited to 120 characters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateLink",
+      "description": "Generates a secure, customized URL link based on input parameters such as base URL, query parameters, short link preference, and expiration time. Processes the inputs to produce a ready-to-use hyperlink that optionally includes encoded parameters, shortened URLs, and expiration metadata in the output.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "baseUrl",
+          "type": "string",
+          "description": "The base URL to which parameters will be appended to form the full link.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "queryParams",
+          "type": "object",
+          "description": "An object representing key-value pairs to be converted into URL query parameters.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "shorten",
+          "type": "boolean",
+          "description": "If true, the generated URL will be shortened using a built-in shortening algorithm.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "expirationSeconds",
+          "type": "number",
+          "description": "Optional time in seconds after which the link will expire and become invalid.",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "customAlias",
+          "type": "string",
+          "description": "Optional custom alias for the shortened URL for easier recall, if supported and available.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the full generated URL, optionally the shortened URL, expiration timestamp if set, and a flag indicating if the link is shortened."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create a shareable link that includes dynamic query parameters, may require shortening for brevity, and/or needs expiration controls for limited time access. It is ideal for generating promotional links, personalized referral URLs, or temporary access links.",
+        "limitations": "This tool does not provide real external URL shortening or hosting; shortened URLs are algorithmically generated and may not resolve outside this environment. It does not verify link accessibility or enforce expiration beyond metadata.",
+        "examples": [
+          "Generate a promotional link with campaign parameters and a 24-hour expiration.",
+          "Create a short URL with a custom alias for an internal document.",
+          "Generate a link with multiple query parameters without shortening."
+        ]
+      },
+      "tags": [
+        "content",
+        "link generation",
+        "URL",
+        "shortening",
+        "query parameters",
+        "expiration"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"baseUrl\":\"https://example.com/product\",\"queryParams\":{\"utm_source\":\"newsletter\",\"utm_campaign\":\"spring_sale\"},\"shorten\":true,\"expirationSeconds\":86400}",
+          "description": "Generate a shortened URL for a product page with marketing campaign parameters and a 24-hour expiration."
+        },
+        {
+          "inputJson": "{\"baseUrl\":\"https://docs.example.com/view\",\"queryParams\":{\"docId\":\"12345\",\"user\":\"abc\"},\"shorten\":false}",
+          "description": "Generate a full URL with query parameters pointing to a document view without shortening."
+        },
+        {
+          "inputJson": "{\"baseUrl\":\"https://app.example.com/r\",\"shorten\":true,\"customAlias\":\"specialoffer\"}",
+          "description": "Generate a shortened URL using a custom alias for a special offer landing page."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateKPI",
+      "description": "Generates customized Key Performance Indicator (KPI) reports based on specified analytics data inputs. Accepts raw dataset or summary statistics along with KPI definitions and outputs a structured KPI report highlighting trends, targets, and performance evaluations.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "dataSource",
+          "type": "object",
+          "description": "An object representing the analytics data; can include raw data arrays or summarized metrics.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "kpiDefinitions",
+          "type": "array",
+          "description": "An array of KPI descriptor objects specifying the KPI name, calculation formula, target value, and evaluation criteria.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timeframe",
+          "type": "object",
+          "description": "Defines the start and end date/time for the KPI calculation period.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "compareWithPreviousPeriod",
+          "type": "boolean",
+          "description": "If true, includes comparison metrics against a previous timeframe for trend analysis.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the KPI report, e.g., JSON, CSV, or formatted text.",
+          "required": false,
+          "defaultValue": "JSON"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured KPI report object containing calculated KPI values, target comparisons, trend insights, and optionally formatted according to outputFormat."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate performance metrics reports from analytics data, summarizing key business or operational indicators for decision making. It can create tailored KPI summaries based on definitions and target thresholds.",
+        "limitations": "This tool does not fetch or clean raw data, nor does it provide advanced predictive analytics beyond simple trend comparisons. It requires pre-processed data input and cannot automatically define KPIs.",
+        "examples": [
+          "Generate monthly sales KPIs showing total revenue vs target and previous month comparison.",
+          "Create a user engagement KPI report for the last quarter including churn and retention rates.",
+          "Produce a CSV KPI summary report for a manufacturing process with efficiency and defect rate KPIs."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "kpi",
+        "analytics",
+        "reporting",
+        "performance",
+        "data-analysis",
+        "business-intelligence"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dataSource\":{\"sales\":[{\"date\":\"2024-01-01\",\"revenue\":10000},{\"date\":\"2024-01-02\",\"revenue\":12000}]},\"kpiDefinitions\":[{\"name\":\"Total Revenue\",\"formula\":\"sum(sales.revenue)\",\"target\":15000}],\"timeframe\":{\"start\":\"2024-01-01\",\"end\":\"2024-01-31\"},\"compareWithPreviousPeriod\":true,\"outputFormat\":\"JSON\"}",
+          "description": "Generate January total revenue KPI with target comparison and previous period trend."
+        },
+        {
+          "inputJson": "{\"dataSource\":{\"engagement\":{\"dailyActiveUsers\":1000,\"churnRate\":0.05}},\"kpiDefinitions\":[{\"name\":\"Churn Rate\",\"formula\":\"engagement.churnRate\",\"target\":0.04}],\"outputFormat\":\"CSV\"}",
+          "description": "Create a KPI report for user churn rate with CSV output format."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "KPI",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateHeading",
+      "description": "Generates a well-structured heading based on provided keywords and desired heading level. Accepts keywords or a brief description, processes context, and outputs a text heading formatted appropriately for digital documents or web content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "An array of keywords or key phrases that should be included or influence the heading content.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "headingLevel",
+          "type": "number",
+          "description": "The desired heading level (e.g., 1 for H1, 2 for H2), determining the heading's importance and size.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The stylistic tone or style of the heading, such as 'formal', 'informal', 'technical', or 'marketing'.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of characters allowed in the generated heading to ensure concise output.",
+          "required": false,
+          "defaultValue": "60"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated heading text and its HTML tag representation"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create contextual and visually hierarchical headings for articles, web pages, or digital content based on keywords or ideas for better structure and user readability. It helps maintain SEO-friendly and semantically correct headings at the specified level and style.",
+        "limitations": "Cannot generate full paragraphs or multiple headings at once; it focuses on a single heading. It also cannot guarantee perfect SEO optimization beyond keyword usage and simple style guidelines.",
+        "examples": [
+          "Generate a concise H1 heading for an article about sustainable gardening using keywords 'sustainability', 'gardening', 'tips'.",
+          "Create a formal H3 heading for a technical document section about cloud computing basics.",
+          "Produce a marketing style H2 heading with a maximum length of 50 characters incorporating 'email campaigns' and 'conversion rates'."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "heading",
+        "text-generation",
+        "seo",
+        "digital-content",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"keywords\":[\"sustainability\",\"gardening\",\"tips\"],\"headingLevel\":1,\"style\":\"formal\",\"maxLength\":60}",
+          "description": "Generate a formal H1 heading containing keywords related to sustainable gardening."
+        },
+        {
+          "inputJson": "{\"keywords\":[\"cloud computing\",\"basics\"],\"headingLevel\":3,\"style\":\"technical\",\"maxLength\":50}",
+          "description": "Create a technical-style H3 heading about cloud computing basics."
+        },
+        {
+          "inputJson": "{\"keywords\":[\"email campaigns\",\"conversion rates\"],\"headingLevel\":2,\"style\":\"marketing\",\"maxLength\":50}",
+          "description": "Generate a marketing style H2 heading focused on email campaigns and improving conversion rates within 50 characters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateParagraph",
+      "description": "Generates a coherent and contextually relevant paragraph of text based on a given topic, tone, and optional keywords. Accepts parameters to control length and style, then produces a well-structured paragraph suitable for articles, blogs, or reports.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme for the paragraph to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired length of the paragraph in number of sentences.",
+          "required": false,
+          "defaultValue": "5"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone or style of writing, such as formal, casual, persuasive, or informative.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "An optional array of keywords or phrases to incorporate into the paragraph.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code for the output text (e.g., 'en' for English).",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated paragraph text as a string, matching the requested topic and style."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate a standalone paragraph that explains, describes, or elaborates on a specific topic in a chosen style and length, such as for content creation, draft writing, or summarization tasks.",
+        "limitations": "This tool generates text based on topic and style but does not verify factual accuracy or provide citations. It is less suited for highly technical or domain-specialized paragraphs requiring expert input.",
+        "examples": [
+          "Generate a formal paragraph about the benefits of renewable energy.",
+          "Create a casual paragraph describing a day at the beach including the keywords 'sun', 'waves', and 'fun'.",
+          "Write a persuasive paragraph about the importance of healthy eating, approximately 7 sentences long."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "text generation",
+        "paragraph",
+        "writing assistant",
+        "AI writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Benefits of renewable energy\",\"length\":5,\"tone\":\"formal\",\"keywords\":[\"sustainability\",\"carbon footprint\"],\"language\":\"en\"}",
+          "description": "Generate a formal paragraph about renewable energy benefits incorporating sustainability and carbon footprint keywords."
+        },
+        {
+          "inputJson": "{\"topic\":\"A day at the beach\",\"length\":4,\"tone\":\"casual\",\"keywords\":[\"sun\",\"waves\",\"fun\"],\"language\":\"en\"}",
+          "description": "Create a casual paragraph describing a day at the beach using specified keywords."
+        },
+        {
+          "inputJson": "{\"topic\":\"Importance of healthy eating\",\"length\":7,\"tone\":\"persuasive\",\"keywords\":[],\"language\":\"en\"}",
+          "description": "Write a persuasive paragraph about healthy eating approximately seven sentences long."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateSentence",
+      "description": "Generates a coherent and contextually relevant sentence based on specified parameters such as topic, style, length, and language. It accepts inputs defining the desired content characteristics and produces a natural language sentence accordingly.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The subject or theme for the sentence to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Writing style or tone of the sentence, e.g., formal, casual, poetic.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired length of the sentence in words.",
+          "required": false,
+          "defaultValue": "15"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code to generate the sentence in, e.g., 'en' for English.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "includeKeywords",
+          "type": "array",
+          "description": "List of keywords that should appear in the sentence if possible.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated sentence as a string under the key 'sentence'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce a single, contextually relevant sentence for content creation tasks such as writing prompts, summaries, or filler text in various styles and languages. It helps generate natural language output fitting user specifications.",
+        "limitations": "The tool generates single sentences only and does not produce paragraphs or longer text. It may not always perfectly integrate all keywords depending on length constraints and coherence. It cannot verify factual accuracy or provide multiple sentences as output.",
+        "examples": [
+          "Generate a formal English sentence about climate change approximately 20 words long.",
+          "Create a casual sentence including the keywords 'coffee' and 'morning' in English.",
+          "Produce a poetic style sentence on the topic of hope in English."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "text generation",
+        "sentence",
+        "NLP",
+        "writing assistant"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"artificial intelligence\",\"style\":\"formal\",\"length\":20,\"language\":\"en\",\"includeKeywords\":[\"machine learning\"]}",
+          "description": "Generate a formal English sentence about artificial intelligence including the keyword 'machine learning', approximately 20 words."
+        },
+        {
+          "inputJson": "{\"topic\":\"morning routine\",\"style\":\"casual\",\"length\":15,\"language\":\"en\",\"includeKeywords\":[\"coffee\",\"sunrise\"]}",
+          "description": "Create a casual sentence about morning routine including 'coffee' and 'sunrise' in English, about 15 words."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateText",
+      "description": "Generates original text content based on a provided prompt and optional constraints such as length, style, and tone. It accepts input parameters defining the topic or seed text, desired text length, writing style, and tone, then processes these to output coherent, contextually relevant text for content creation purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "prompt",
+          "type": "string",
+          "description": "Initial text or topic to generate content about.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of characters or tokens to generate in the output text.",
+          "required": false,
+          "defaultValue": "500"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Writing style to apply, such as formal, informal, technical, or conversational.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone of the generated text, e.g., friendly, professional, neutral, or persuasive.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code (e.g., 'en' for English) for the output text.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "includeReferences",
+          "type": "boolean",
+          "description": "Whether to include or simulate references or citations in the generated text.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated text string and metadata about the generation process, such as length and applied style or tone."
+      },
+      "aiAgent": {
+        "useCase": "This tool should be used when an AI agent needs to create natural language text content from a user-provided prompt or seed. It is suitable for generating articles, blogs, summaries, or creative writing with customizable style and tone. Agents can specify content parameters to tailor the output for the intended audience or purpose.",
+        "limitations": "The tool cannot guarantee factual accuracy or up-to-date information and may produce generic or less creative text depending on input quality. It is not designed for generating highly specialized technical documents or confidential/legal content without expert review.",
+        "examples": [
+          "Generate a friendly blog post introduction about sustainable living.",
+          "Create a professional summary of recent sales data trends.",
+          "Write a conversational product description for a new smartphone model."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "text generation",
+        "natural language",
+        "writing",
+        "creative",
+        "automated content",
+        "blogging",
+        "copywriting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"prompt\":\"The benefits of daily meditation\",\"maxLength\":300,\"style\":\"informal\",\"tone\":\"friendly\",\"language\":\"en\",\"includeReferences\":false}",
+          "description": "Generate a friendly, informal text about meditation benefits suitable for a blog post."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Quarterly financial report summary\",\"maxLength\":250,\"style\":\"formal\",\"tone\":\"professional\",\"language\":\"en\"}",
+          "description": "Produce a formal and professional summary text for a business report."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Introducing the new XPhone 12\",\"maxLength\":200,\"style\":\"conversational\",\"tone\":\"persuasive\",\"language\":\"en\"}",
+          "description": "Create a persuasive and conversational product description for marketing purposes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateConversion",
+      "description": "Generates a conversion report from provided digital marketing campaign data, calculating key metrics like conversion rate, cost per conversion, and total conversions. Accepts arrays of campaign performance entries and processes them to produce a summary JSON report for analytics and decision making.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "campaignData",
+          "type": "array",
+          "description": "An array of campaign objects each containing clicks, conversions, and cost metrics.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "conversionGoalName",
+          "type": "string",
+          "description": "The name of the conversion goal to label the report with.",
+          "required": false,
+          "defaultValue": "\"Primary Conversion\""
+        },
+        {
+          "name": "includeCostMetrics",
+          "type": "boolean",
+          "description": "Whether to include cost per conversion and total cost metrics in the report.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "decimalPlaces",
+          "type": "number",
+          "description": "Number of decimal places to round numeric metrics to.",
+          "required": false,
+          "defaultValue": "2"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A report object containing total clicks, total conversions, conversion rate percentage, total cost, and cost per conversion, labeled by the conversion goal name."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate a concise conversion analytics report from raw campaign performance data to understand effectiveness and ROI of digital marketing efforts. It helps transform raw clicks, conversions, and cost inputs into actionable conversion metrics for business analysis.",
+        "limitations": "This tool does not track individual user journeys or provide advanced statistical modeling; it operates on aggregated campaign data only.",
+        "examples": [
+          "Generate a conversion report from multiple campaigns to find overall conversion rate and cost per conversion.",
+          "Produce a summary conversion metric output filtering by a specific conversion goal name.",
+          "Calculate conversion metrics without including cost-related data."
+        ]
+      },
+      "tags": [
+        "conversion",
+        "analytics",
+        "digital-marketing",
+        "reporting",
+        "content-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"campaignData\":[{\"clicks\":1000,\"conversions\":50,\"cost\":200},{\"clicks\":500,\"conversions\":25,\"cost\":100}],\"conversionGoalName\":\"Signup\",\"includeCostMetrics\":true,\"decimalPlaces\":2}",
+          "description": "Generate a conversion report for a signup goal including cost metrics with 2 decimal precision."
+        },
+        {
+          "inputJson": "{\"campaignData\":[{\"clicks\":1500,\"conversions\":75,\"cost\":350}],\"conversionGoalName\":\"Purchase\",\"includeCostMetrics\":false,\"decimalPlaces\":1}",
+          "description": "Generate a conversion report for a purchase goal excluding cost data and rounding to 1 decimal place."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Conversion",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateTrend",
+      "description": "This tool analyzes input datasets such as social media posts, search queries, or sales metrics over specified time frames to identify emerging or declining trends. It accepts raw data arrays along with parameters to define the focus area and time scope, processes patterns using statistical methods and natural language analysis, and outputs a structured summary of detected trends, their strength, and temporal evolution.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "dataSourceType",
+          "type": "string",
+          "description": "Type of the data provided, e.g., 'socialMedia', 'searchQueries', 'salesData'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "data",
+          "type": "array",
+          "description": "Array of data points relevant to the chosen dataSourceType; e.g., posts, queries, or sales records with timestamps.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timeWindowDays",
+          "type": "number",
+          "description": "Number of past days to analyze for trends, defining the time scope of analysis.",
+          "required": false,
+          "defaultValue": "30"
+        },
+        {
+          "name": "trendFocus",
+          "type": "string",
+          "description": "Optional keyword or category to focus the trend analysis, e.g., a hashtag, product category, or topic.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "minTrendStrength",
+          "type": "number",
+          "description": "Minimum threshold to report a trend based on strength score (0 to 1).",
+          "required": false,
+          "defaultValue": "0.2"
+        },
+        {
+          "name": "includeSentiment",
+          "type": "boolean",
+          "description": "Whether to analyze and include sentiment trends if input data contains text.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing identified trends with details: trend name, strength score, growth direction, associated keywords, and optionally sentiment orientation over time."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to detect and summarize significant emerging or fading trends from temporal datasets such as social media activity, search behavior, or sales figures. It enables strategic content creation, marketing adjustments, or market analysis based on evolving user interests and behaviors.",
+        "limitations": "Does not perform real-time streaming analysis; requires input data to be structured and timestamped. Trend focus requires relevant keywords for targeted results. Sentiment analysis is only supported for text-based data and may have language limitations.",
+        "examples": [
+          "Identify top 5 rising topics on Twitter in last 14 days containing the hashtag #climatechange.",
+          "Analyze product sales data from last quarter to find declining categories.",
+          "Generate sentiment trends on customer reviews mentioning 'battery life' over the past month."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "trend-analysis",
+        "analytics",
+        "social-media",
+        "marketing",
+        "time-series",
+        "sentiment-analysis"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dataSourceType\":\"socialMedia\",\"data\":[{\"text\":\"Exploring new eco-friendly gadgets! #climatechange\",\"timestamp\":\"2024-05-20T10:00:00Z\"},{\"text\":\"Solar power is gaining traction #climatechange\",\"timestamp\":\"2024-05-21T12:30:00Z\"}],\"timeWindowDays\":14,\"trendFocus\":\"climatechange\",\"minTrendStrength\":0.3,\"includeSentiment\":true}",
+          "description": "Analyze social media posts with #climatechange over past 14 days including sentiment."
+        },
+        {
+          "inputJson": "{\"dataSourceType\":\"salesData\",\"data\":[{\"product\":\"smartphone\",\"unitsSold\":1500,\"date\":\"2024-04-01\"},{\"product\":\"smartphone\",\"unitsSold\":1200,\"date\":\"2024-04-15\"},{\"product\":\"tablet\",\"unitsSold\":700,\"date\":\"2024-04-01\"},{\"product\":\"tablet\",\"unitsSold\":1300,\"date\":\"2024-04-15\"}],\"timeWindowDays\":30,\"minTrendStrength\":0.25}",
+          "description": "Detect sales trends for electronics products over last 30 days to find growth or decline."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Trend",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateSession",
+      "description": "Generates a detailed analytics session report based on user activity data. Accepts inputs such as user identifiers, time ranges, and event types to process interaction logs. Outputs a structured session summary including duration, event counts, engagement metrics, and common paths.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "userId",
+          "type": "string",
+          "description": "Identifier for the user whose session data is to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "startTime",
+          "type": "string",
+          "description": "Start timestamp (ISO 8601) for filtering session data.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "endTime",
+          "type": "string",
+          "description": "End timestamp (ISO 8601) for filtering session data.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "eventTypes",
+          "type": "array",
+          "description": "List of event types to include in the session analysis, e.g., ['click', 'navigation'].",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includePaths",
+          "type": "boolean",
+          "description": "Whether to include detailed user navigation paths in the output.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "minEventCount",
+          "type": "number",
+          "description": "Minimum number of events user must have in the session to be included in the summary.",
+          "required": false,
+          "defaultValue": "1"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object summarizing the session analytics including session duration, total events, event breakdown by type, engagement score, and optionally user navigation paths."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating summarized user session analytics from raw interaction logs within a specified period. It helps produce meaningful metrics like session length, event counts, and behavioral patterns for content engagement analysis or user behavior research.",
+        "limitations": "This tool does not process raw logs itself; it expects preprocessed or queryable event data. It cannot handle live streaming data and does not generate predictive analytics or user segmentation beyond the session scope.",
+        "examples": [
+          "Generate a session report for user 'user123' from 2024-04-01T00:00:00Z to 2024-04-01T23:59:59Z including click and navigation events.",
+          "Create a session summary for a user with minimum 5 events in their session, including detailed navigation paths.",
+          "Produce engagement metrics for events of type 'play' and 'pause' over the last week for user 'abc789'."
+        ]
+      },
+      "tags": [
+        "analytics",
+        "session",
+        "user-behavior",
+        "content-creation",
+        "report-generation",
+        "engagement"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"userId\":\"user123\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-01T23:59:59Z\",\"eventTypes\":[\"click\",\"navigation\"],\"includePaths\":true}",
+          "description": "Generate a detailed session report for user123 on April 1, 2024 with click and navigation events, including navigation paths."
+        },
+        {
+          "inputJson": "{\"userId\":\"abc789\",\"startTime\":\"2024-03-25T00:00:00Z\",\"endTime\":\"2024-03-31T23:59:59Z\",\"eventTypes\":[\"play\",\"pause\"],\"includePaths\":false,\"minEventCount\":3}",
+          "description": "Create a session summary with engagement metrics for play/pause events over the last week for user abc789, with sessions having at least 3 events."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Session",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateAnomaly",
+      "description": "This tool accepts numerical time-series data or datasets with timestamps and metrics, analyzes the data to detect unusual patterns or anomalies using statistical and machine learning methods, and generates a detailed anomaly report highlighting anomalies, their severity, timestamps, and possible explanations.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "An array of objects each representing a timestamped data point containing numeric metrics to analyze for anomalies.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timestampField",
+          "type": "string",
+          "description": "The key name in each data object that contains the timestamp (ISO 8601 format preferred).",
+          "required": true,
+          "defaultValue": "timestamp"
+        },
+        {
+          "name": "metricFields",
+          "type": "array",
+          "description": "List of key names in data objects representing numeric metrics to analyze for anomalies.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sensitivity",
+          "type": "number",
+          "description": "Parameter to adjust anomaly detection sensitivity; higher values detect more subtle anomalies. Typical range 0.1 to 1.0.",
+          "required": false,
+          "defaultValue": "0.5"
+        },
+        {
+          "name": "detectionMethod",
+          "type": "string",
+          "description": "Anomaly detection algorithm to use: 'statistical', 'machineLearning', or 'hybrid'.",
+          "required": false,
+          "defaultValue": "hybrid"
+        },
+        {
+          "name": "explainability",
+          "type": "boolean",
+          "description": "If true, includes explanations for detected anomalies based on feature contribution or patterns.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "maxAnomalies",
+          "type": "number",
+          "description": "Maximum number of anomalies to report. If zero or omitted, report all detected anomalies.",
+          "required": false,
+          "defaultValue": "0"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing a list of detected anomalies with timestamps, related metric values, anomaly scores, severity categorizations, and optional explanations."
+      },
+      "aiAgent": {
+        "useCase": "Use when an AI agent needs to identify unusual or unexpected events in time-series or metric data to flag potential issues, deviations from normal behavior, or opportunities for investigation. Common in monitoring, fraud detection, or data quality validation.",
+        "limitations": "Cannot guarantee detection of all anomaly types; effectiveness depends on input data quality and choice of parameters. Not designed for unstructured or categorical data without proper numerical encoding.",
+        "examples": [
+          "Detect anomalies in server CPU usage metrics over a week.",
+          "Analyze transaction volume to find fraud signals in payment data.",
+          "Identify dips and spikes in website traffic relative to historical patterns."
+        ]
+      },
+      "tags": [
+        "anomaly-detection",
+        "analytics",
+        "time-series",
+        "machine-learning",
+        "data-quality",
+        "monitoring"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"cpu\":20.5,\"memory\":30.1},{\"timestamp\":\"2024-05-01T01:00:00Z\",\"cpu\":75.3,\"memory\":32.0},{\"timestamp\":\"2024-05-01T02:00:00Z\",\"cpu\":22.0,\"memory\":29.9}],\"timestampField\":\"timestamp\",\"metricFields\":[\"cpu\",\"memory\"],\"sensitivity\":0.6,\"detectionMethod\":\"statistical\",\"explainability\":true}",
+          "description": "Detect CPU and memory usage anomalies in hourly server metrics for May 1st."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Anomaly",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateDashboard",
+      "description": "Generates a customizable analytics dashboard by processing provided data sources and visualization preferences. Accepts multiple data inputs, filters, and chart configurations, and outputs a structured dashboard layout in JSON suitable for rendering in web or app interfaces.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "dataSources",
+          "type": "array",
+          "description": "Array of data source objects containing raw data or query info to populate dashboard charts.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "filters",
+          "type": "object",
+          "description": "Optional object defining filter criteria to apply on data before visualization, e.g., date ranges or categories.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "chartTypes",
+          "type": "array",
+          "description": "List of chart types (e.g., line, bar, pie) to be included in the dashboard and their configuration details.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "layout",
+          "type": "string",
+          "description": "Layout mode or template identifier to arrange the charts on the dashboard (e.g., grid, freeform).",
+          "required": false,
+          "defaultValue": "grid"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Visual theme or color scheme for the dashboard, enhancing presentation aesthetics.",
+          "required": false,
+          "defaultValue": "light"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title for the generated dashboard for display purposes.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "refreshInterval",
+          "type": "number",
+          "description": "Optional refresh interval in seconds for live dashboards to update data automatically.",
+          "required": false,
+          "defaultValue": "0"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the dashboard configuration including charts, layout, filters, and metadata structured for rendering or further processing."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to create a data analytics dashboard from given datasets and visualization preferences, enabling data-driven insights display in a customizable format. Suitable for generating dashboards for web interfaces, reporting tools, or business intelligence platforms.",
+        "limitations": "This tool does not perform data extraction or cleaning; input data must be preprocessed and valid. It also does not render the visualizations but outputs a configuration JSON to be used by front-end components.",
+        "examples": [
+          "Generate a sales dashboard with bar and line charts segmented by region and time.",
+          "Create a marketing KPI dashboard using pie charts with filters for campaign and date range.",
+          "Build a real-time server metrics dashboard updating every minute using a predefined layout and dark theme."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "dashboard",
+        "analytics",
+        "data-visualization",
+        "reporting",
+        "business-intelligence",
+        "generate"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dataSources\":[{\"name\":\"salesData\",\"type\":\"csv\",\"data\":\"...\"}],\"filters\":{\"dateRange\":\"lastQuarter\"},\"chartTypes\":[{\"type\":\"bar\",\"dataSource\":\"salesData\",\"xAxis\":\"region\",\"yAxis\":\"revenue\"},{\"type\":\"line\",\"dataSource\":\"salesData\",\"xAxis\":\"month\",\"yAxis\":\"profit\"}],\"layout\":\"grid\",\"theme\":\"light\",\"title\":\"Quarterly Sales Dashboard\",\"refreshInterval\":0}",
+          "description": "Generate a quarterly sales dashboard displaying revenue by region as bar chart and profit trends by month as line chart in a grid layout with light theme."
+        },
+        {
+          "inputJson": "{\"dataSources\":[{\"name\":\"marketingData\",\"type\":\"json\",\"data\":\"...\"}],\"filters\":{\"campaign\":\"Summer2023\"},\"chartTypes\":[{\"type\":\"pie\",\"dataSource\":\"marketingData\",\"categoryField\":\"channel\",\"valueField\":\"engagement\"}],\"layout\":\"freeform\",\"theme\":\"dark\",\"title\":\"Marketing Campaign Engagement\",\"refreshInterval\":300}",
+          "description": "Create a marketing campaign engagement dashboard using a pie chart to show engagement by channel, with dark theme and auto-refresh every 5 minutes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Dashboard",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateEvent",
+      "description": "Generates a structured digital event object for analytics or event tracking systems based on input parameters such as event type, timestamp, user metadata, and event properties. It validates and compiles this data into a JSON-compatible event payload ready for ingestion or further processing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "eventType",
+          "type": "string",
+          "description": "The name or type of the event to be generated (e.g., 'page_view', 'purchase').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timestamp",
+          "type": "string",
+          "description": "ISO 8601 formatted timestamp representing when the event occurred. Defaults to current time if omitted.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "userId",
+          "type": "string",
+          "description": "Unique identifier for the user related to this event, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "properties",
+          "type": "object",
+          "description": "An object containing key-value pairs that detail specific attributes or metadata of the event.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "anonymousId",
+          "type": "string",
+          "description": "An anonymous identifier for the user, used when userId is not available.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A JSON object representing the fully constructed event payload with eventType, timestamp, user info, and properties."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create standardized event data objects for analytics tracking or event logging. It helps in synthesizing structured event messages suitable for insertion into analytics pipelines or databases based on user inputs describing the event.",
+        "limitations": "This tool does not send or store events; it only generates the event object. It does not validate the semantic correctness of custom event properties or handle integration with external analytics services.",
+        "examples": [
+          "Generate a 'purchase' event including user ID, purchase details, and timestamp.",
+          "Create a 'page_view' event with anonymous user ID and page metadata.",
+          "Produce a custom event with a specific timestamp and multiple properties describing user interaction."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "event",
+        "analytics",
+        "tracking",
+        "data-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"eventType\":\"purchase\",\"timestamp\":\"2024-06-01T14:52:00Z\",\"userId\":\"user_12345\",\"properties\":{\"itemId\":\"sku_9876\",\"price\":29.99,\"currency\":\"USD\"}}",
+          "description": "Generating a purchase event with user details and purchase properties."
+        },
+        {
+          "inputJson": "{\"eventType\":\"page_view\",\"anonymousId\":\"anon_67890\",\"properties\":{\"pageUrl\":\"https://example.com/home\",\"referrer\":\"https://google.com\"}}",
+          "description": "Generating a page view event for an anonymous user with page metadata."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Event",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateGraph",
+      "description": "Generates customizable graphs based on input datasets and specified chart types. Accepts structured data (e.g., arrays of data points), chart configuration options (such as type, labels, colors), and outputs a graph image or SVG suitable for embedding in documents or web pages.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "An array of data points or objects representing the data to plot; each element should conform to the expected structure for the chosen chart type.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "chartType",
+          "type": "string",
+          "description": "The type of graph to generate, e.g., 'line', 'bar', 'pie', 'scatter'. Determines the chart rendering style.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title displayed on the graph for context or identification.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "xAxisLabel",
+          "type": "string",
+          "description": "Label for the X-axis to explain the data dimension represented horizontally.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "yAxisLabel",
+          "type": "string",
+          "description": "Label for the Y-axis to explain the data dimension represented vertically.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the output graph image in pixels.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the output graph image in pixels.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "colors",
+          "type": "array",
+          "description": "An array of color strings to apply to various data series or slices for customization.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Output format of the generated graph: 'PNG', 'JPEG', or 'SVG'.",
+          "required": false,
+          "defaultValue": "SVG"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated graph image encoded as a base64 string along with metadata; includes 'imageBase64', 'format', 'width', and 'height'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create visual representations of numerical or categorical data to enhance reports, presentations, or web content dynamically. Ideal for summarizing trends, distributions, comparisons, and proportions with clear, customizable graphs.",
+        "limitations": "Cannot process unstructured or very large datasets beyond typical memory limits; does not perform complex statistical analysis or interactive chart functionalities; requires correctly formatted input data to produce meaningful graphs.",
+        "examples": [
+          "Generate a bar chart showing quarterly sales data with labeled axes and custom colors.",
+          "Create a pie chart representing market share distribution among competitors with a title and small dimensions for embedding.",
+          "Produce a scatter plot to visualize correlation between two variables with axis labels and output as PNG image."
+        ]
+      },
+      "tags": [
+        "graph generation",
+        "data visualization",
+        "chart creation",
+        "content-creation",
+        "media",
+        "reporting",
+        "presentation",
+        "image generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"label\":\"Q1\",\"value\":150},{\"label\":\"Q2\",\"value\":200},{\"label\":\"Q3\",\"value\":180},{\"label\":\"Q4\",\"value\":220}],\"chartType\":\"bar\",\"title\":\"Quarterly Sales\",\"xAxisLabel\":\"Quarter\",\"yAxisLabel\":\"Sales ($K)\",\"width\":800,\"height\":600,\"colors\":[\"#4a90e2\",\"#50e3c2\",\"#f5a623\",\"#d0021b\"],\"outputFormat\":\"SVG\"}",
+          "description": "Bar chart of quarterly sales with axis labels and custom colors."
+        },
+        {
+          "inputJson": "{\"data\":[{\"category\":\"Brand A\",\"value\":40},{\"category\":\"Brand B\",\"value\":25},{\"category\":\"Brand C\",\"value\":20},{\"category\":\"Brand D\",\"value\":15}],\"chartType\":\"pie\",\"title\":\"Market Share\",\"width\":400,\"height\":400,\"colors\":[\"#3498db\",\"#2ecc71\",\"#e74c3c\",\"#9b59b6\"],\"outputFormat\":\"PNG\"}",
+          "description": "Pie chart showing market share distribution among brands."
+        },
+        {
+          "inputJson": "{\"data\":[{\"x\":1,\"y\":2},{\"x\":2,\"y\":3},{\"x\":3,\"y\":5},{\"x\":4,\"y\":4}],\"chartType\":\"scatter\",\"title\":\"Variable Correlation\",\"xAxisLabel\":\"Variable X\",\"yAxisLabel\":\"Variable Y\",\"width\":600,\"height\":400,\"outputFormat\":\"JPEG\"}",
+          "description": "Scatter plot visualizing correlation between two variables."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Graph",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateDiagram",
+      "description": "Generates a structured diagram image based on textual description and optional customization parameters. Accepts input defining diagram type, nodes, connections, styles, and layout preferences, then produces a visual diagram file (SVG or PNG) representing the specified structure and relationships.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "diagramType",
+          "type": "string",
+          "description": "Specifies the diagram type to generate, e.g., flowchart, mindmap, orgChart, networkGraph",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "nodes",
+          "type": "array",
+          "description": "Array of node objects defining each node's id, label, and optional attributes for the diagram",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "edges",
+          "type": "array",
+          "description": "Array of edge objects defining connections, each with sourceNodeId, targetNodeId, and optional label or style",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "layoutStyle",
+          "type": "string",
+          "description": "Preferred layout style: hierarchical, radial, forceDirected, or grid",
+          "required": false,
+          "defaultValue": "hierarchical"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output image format, e.g., svg or png",
+          "required": false,
+          "defaultValue": "svg"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Visual theme for diagram colors and fonts, e.g., light, dark, corporate",
+          "required": false,
+          "defaultValue": "light"
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the output diagram image in pixels",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the output diagram image in pixels",
+          "required": false,
+          "defaultValue": "600"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the base64 encoded diagram image data, output format, and metadata like node and edge counts"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create visual diagrams from structured textual or data descriptions, such as flowcharts for workflows, organizational charts, mind maps for brainstorming, or network graphs for system relationships, especially when a quick visual representation is desired without manual drawing.",
+        "limitations": "Cannot interpret ambiguous or incomplete diagram descriptions; does not generate interactive diagrams; limited to predefined diagram types and simple styles; complex graphical customizations require external tools.",
+        "examples": [
+          "Generate a flowchart diagram for a sales process with labeled nodes and directional edges.",
+          "Create an organizational chart diagram from a list of employees and their managers.",
+          "Produce a mind map diagram based on topics and subtopics with radial layout."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "diagram",
+        "visualization",
+        "flowchart",
+        "mindmap",
+        "orgChart",
+        "networkGraph",
+        "image-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"diagramType\":\"flowchart\",\"nodes\":[{\"id\":\"start\",\"label\":\"Start\"},{\"id\":\"step1\",\"label\":\"Submit Request\"},{\"id\":\"step2\",\"label\":\"Approve Request\"},{\"id\":\"end\",\"label\":\"End\"}],\"edges\":[{\"sourceNodeId\":\"start\",\"targetNodeId\":\"step1\"},{\"sourceNodeId\":\"step1\",\"targetNodeId\":\"step2\"},{\"sourceNodeId\":\"step2\",\"targetNodeId\":\"end\"}],\"layoutStyle\":\"hierarchical\",\"outputFormat\":\"svg\",\"theme\":\"corporate\",\"width\":1024,\"height\":768}",
+          "description": "A flowchart diagram illustrating a simple request approval process with start, steps, and end nodes."
+        },
+        {
+          "inputJson": "{\"diagramType\":\"orgChart\",\"nodes\":[{\"id\":\"ceo\",\"label\":\"CEO\"},{\"id\":\"cto\",\"label\":\"CTO\"},{\"id\":\"dev1\",\"label\":\"Developer 1\"},{\"id\":\"dev2\",\"label\":\"Developer 2\"}],\"edges\":[{\"sourceNodeId\":\"ceo\",\"targetNodeId\":\"cto\"},{\"sourceNodeId\":\"cto\",\"targetNodeId\":\"dev1\"},{\"sourceNodeId\":\"cto\",\"targetNodeId\":\"dev2\"}],\"layoutStyle\":\"hierarchical\",\"outputFormat\":\"png\",\"theme\":\"light\",\"width\":800,\"height\":600}",
+          "description": "An organizational chart with CEO at the top, CTO reporting to CEO, and two developers reporting to CTO."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Diagram",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateChart",
+      "description": "Generates a customizable chart image based on input data and user-specified chart type, labels, and styling options. Accepts structured data arrays and configuration parameters, processes them to create charts such as bar, line, pie, or scatter, and outputs a URL or base64 image data of the generated chart.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "chartType",
+          "type": "string",
+          "description": "The type of chart to generate. Supported types include 'bar', 'line', 'pie', and 'scatter'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "data",
+          "type": "array",
+          "description": "An array of data points or series objects to plot on the chart. For bar and line charts, arrays of numbers or objects with labels and values are supported. For pie charts, an array of label-value pairs is required.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "labels",
+          "type": "array",
+          "description": "An array of category labels for the data points (e.g., x-axis labels). Applies primarily to bar, line, and scatter charts.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title text to display on the chart.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the output chart image in pixels, default is 800.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the output chart image in pixels, default is 600.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "backgroundColor",
+          "type": "string",
+          "description": "Hex or named color string for the chart background. Defaults to white (#FFFFFF).",
+          "required": false,
+          "defaultValue": "#FFFFFF"
+        },
+        {
+          "name": "showLegend",
+          "type": "boolean",
+          "description": "Whether to display a legend on the chart. Useful for multi-series data. Defaults to true.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a dataURL string with the chart image encoded in Base64 and optionally a direct image URL if hosted externally."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create visual graphical representations of numerical or categorical data for reports, dashboards, or presentations. It enables the generation of various chart types directly from structured data inputs, supporting customization of styling and labeling.",
+        "limitations": "Does not support highly complex or interactive charts (e.g., 3D, animated, GIS maps). Chart types are limited to common simple visualization forms. Large datasets may not render optimally. Does not interpret raw unstructured text data; input must be structured appropriately.",
+        "examples": [
+          "Generate a bar chart showing monthly sales figures with labeled months and a title.",
+          "Create a pie chart representing market share percentages with distinct colors and a legend.",
+          "Produce a scatter plot from X/Y coordinate arrays to analyze data distribution."
+        ]
+      },
+      "tags": [
+        "chart",
+        "visualization",
+        "generate",
+        "content-creation",
+        "data-visualization",
+        "image"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"chartType\":\"bar\",\"data\":[150, 200, 175, 225],\"labels\":[\"Q1\",\"Q2\",\"Q3\",\"Q4\"],\"title\":\"Quarterly Revenue\",\"width\":600,\"height\":400}",
+          "description": "Generate a bar chart of quarterly revenue with labels and a title."
+        },
+        {
+          "inputJson": "{\"chartType\":\"pie\",\"data\":[{\"label\":\"Product A\",\"value\":40},{\"label\":\"Product B\",\"value\":25},{\"label\":\"Product C\",\"value\":35}],\"title\":\"Market Share\",\"backgroundColor\":\"#FAFAFA\",\"showLegend\":true}",
+          "description": "Create a pie chart illustrating market share by product with a legend."
+        },
+        {
+          "inputJson": "{\"chartType\":\"scatter\",\"data\":[{\"x\":5,\"y\":20},{\"x\":10,\"y\":40},{\"x\":15,\"y\":25}],\"labels\":[],\"title\":\"Sample Scatter Plot\",\"width\":700,\"height\":500}",
+          "description": "Produce a scatter plot using x and y coordinate pairs without axis labels."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Chart",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateMetric",
+      "description": "Generates key performance metrics from given content analytics data. Accepts an array of content engagement records (such as views, clicks, shares) over a time range, applies aggregation and filtering based on parameters, and outputs calculated metrics like average engagement rate, growth trends, or content reach summaries in a structured format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "Array of engagement records with timestamps and metric values used for computation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "startDate",
+          "type": "string",
+          "description": "Start date of the time range for which to generate metrics, in ISO format.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "endDate",
+          "type": "string",
+          "description": "End date of the time range for which to generate metrics, in ISO format.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "metrics",
+          "type": "array",
+          "description": "List of specific metric names to calculate (e.g., ['views', 'clicks', 'shares']). If empty, computes all available metrics.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "aggregationMethod",
+          "type": "string",
+          "description": "Aggregation method to apply (e.g., 'sum', 'average', 'max'). Defaults to 'sum'.",
+          "required": false,
+          "defaultValue": "sum"
+        },
+        {
+          "name": "filterCriteria",
+          "type": "object",
+          "description": "Optional filters to apply on data fields (e.g., {'region':'NA', 'device':'mobile'}).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing calculated metrics and analysis results, including aggregated values, trends, and summaries."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to quantify content performance by generating relevant metrics from raw engagement data. It helps summarize user interactions over specified periods or segments, supporting data-driven content strategy and reporting.",
+        "limitations": "Cannot directly collect raw data; assumes input data is pre-collected and correctly formatted. Does not perform advanced predictive analytics or visualizations.",
+        "examples": [
+          "Generate average views and clicks metrics for last month's video content.",
+          "Calculate total shares and engagement growth between two dates for a given dataset.",
+          "Filter and summarize mobile user engagement metrics from the provided raw data array."
+        ]
+      },
+      "tags": [
+        "content",
+        "analytics",
+        "metric",
+        "engagement",
+        "aggregation",
+        "reporting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"views\":150,\"clicks\":30,\"shares\":5},{\"timestamp\":\"2024-05-02T10:00:00Z\",\"views\":200,\"clicks\":45,\"shares\":10}],\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-02\",\"metrics\":[\"views\",\"clicks\"],\"aggregationMethod\":\"sum\",\"filterCriteria\":{}}",
+          "description": "Sum views and clicks over two days for content engagement data."
+        },
+        {
+          "inputJson": "{\"data\":[{\"timestamp\":\"2024-04-10T09:00:00Z\",\"views\":100,\"clicks\":20,\"shares\":2},{\"timestamp\":\"2024-04-15T15:00:00Z\",\"views\":220,\"clicks\":50,\"shares\":12}],\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"metrics\":[\"shares\"],\"aggregationMethod\":\"average\",\"filterCriteria\":{\"region\":\"EU\"}}",
+          "description": "Average shares in April filtered by region 'EU'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Metric",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateHTML",
+      "description": "Generates custom HTML markup based on structured input data and options. Accepts content elements such as text, images, links, and layout preferences, processes these to create a well-formed HTML string suitable for web pages or email templates.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "contentElements",
+          "type": "array",
+          "description": "An array of content element objects describing the HTML components to generate, including type and content details.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeStyles",
+          "type": "boolean",
+          "description": "Whether to include basic CSS styles inline in the generated HTML for layout and formatting.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "doctype",
+          "type": "string",
+          "description": "The document type declaration to use, e.g., 'html' for  or empty to omit.",
+          "required": false,
+          "defaultValue": "html"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language code for the HTML document's lang attribute, e.g. 'en' for English.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title text to include in the HTML head section.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing a single property 'html' which holds the generated HTML string representing the requested content structure."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate structured HTML output from abstract content definitions, such as creating web page templates, email newsletter content, or any customizable HTML documents based on input data. It helps automate HTML creation without manual coding.",
+        "limitations": "Does not support generating interactive JavaScript functionality or complex dynamic content. Focused on static HTML and simple inline styles only.",
+        "examples": [
+          "Generate a basic webpage with a title, header, paragraph, and image.",
+          "Create an HTML email template with inline styles and links.",
+          "Produce localized HTML content by specifying the document language and title."
+        ]
+      },
+      "tags": [
+        "html",
+        "content-generation",
+        "web",
+        "email",
+        "template",
+        "markup"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"contentElements\":[{\"type\":\"header\",\"level\":1,\"text\":\"Welcome to Our Site\"},{\"type\":\"paragraph\",\"text\":\"This is an introductory paragraph describing our services.\"},{\"type\":\"image\",\"src\":\"https://example.com/image.jpg\",\"alt\":\"Example Image\"}],\"includeStyles\":true,\"doctype\":\"html\",\"language\":\"en\",\"title\":\"Home Page\"}",
+          "description": "Generate a simple English webpage with a header, paragraph, and image including basic styles."
+        },
+        {
+          "inputJson": "{\"contentElements\":[{\"type\":\"paragraph\",\"text\":\"Dear subscriber, check out our latest news!\"},{\"type\":\"link\",\"href\":\"https://news.example.com\",\"text\":\"Latest Updates\"}],\"includeStyles\":true,\"doctype\":\"html\",\"language\":\"en\",\"title\":\"Newsletter\"}",
+          "description": "Generate an HTML email template with styled paragraph and link content."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "HTML",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateForecast",
+      "description": "Generates a detailed business forecast report based on historical sales data, market trends, and user-defined parameters such as forecast period and confidence interval. The tool analyzes input data, applies forecasting models, and outputs projections including expected sales, revenue, and growth metrics in structured JSON format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "historicalData",
+          "type": "array",
+          "description": "Array of past sales or revenue records with date and value pairs used for training the forecast model.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "forecastPeriodMonths",
+          "type": "number",
+          "description": "Number of months ahead for which to generate the forecast.",
+          "required": true,
+          "defaultValue": "12"
+        },
+        {
+          "name": "confidenceLevel",
+          "type": "number",
+          "description": "Statistical confidence level (in percent) for forecast intervals, e.g., 95 for 95% confidence.",
+          "required": false,
+          "defaultValue": "95"
+        },
+        {
+          "name": "includeMarketTrends",
+          "type": "boolean",
+          "description": "Flag indicating whether to incorporate external market trend factors into the forecast.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format for the output report, options include 'json' or 'csv'.",
+          "required": false,
+          "defaultValue": "json"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing forecast projections by month, confidence intervals, summary statistics including predicted revenue, growth rate, and a brief explanation of the forecast methodology."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a user needs to predict future sales and revenue based on their historical data combined optionally with market trends, allowing for business planning, budgeting, or risk assessment. It is suitable for generating time-series forecasts with confidence intervals for decision support.",
+        "limitations": "Cannot replace domain expert analysis; accuracy depends on quality and completeness of historical data; does not incorporate unexpected disruptive events or qualitative factors beyond provided inputs.",
+        "examples": [
+          "Generate a 6-month sales forecast with 90% confidence using the provided past two years of sales data.",
+          "Produce a 12-month revenue projection including market trends for a new product line.",
+          "Create a JSON report of upcoming quarterly revenue forecast with standard 95% confidence intervals."
+        ]
+      },
+      "tags": [
+        "forecasting",
+        "business",
+        "sales",
+        "revenue",
+        "time-series",
+        "analytics"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"historicalData\":[{\"date\":\"2022-01\",\"value\":10000},{\"date\":\"2022-02\",\"value\":10500},{\"date\":\"2022-03\",\"value\":11000}],\"forecastPeriodMonths\":6,\"confidenceLevel\":90,\"includeMarketTrends\":true,\"outputFormat\":\"json\"}",
+          "description": "Six-month sales forecast with a 90% confidence interval using recent quarterly data with market trends."
+        },
+        {
+          "inputJson": "{\"historicalData\":[{\"date\":\"2021-01\",\"value\":5000},{\"date\":\"2021-02\",\"value\":5200},{\"date\":\"2021-03\",\"value\":5100},{\"date\":\"2021-04\",\"value\":5300}],\"forecastPeriodMonths\":12,\"confidenceLevel\":95,\"includeMarketTrends\":false,\"outputFormat\":\"csv\"}",
+          "description": "One-year forecast without market trends producing CSV formatted report for export."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Forecast",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateCSV",
+      "description": "Generates a CSV-formatted string from structured data input. Accepts an array of objects or arrays representing rows. Supports custom delimiter, optional inclusion of headers, and configurable text quoting. Outputs valid CSV content as a string suitable for file creation or data exchange.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "Array of objects or arrays where each item represents a CSV row. Required.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeHeaders",
+          "type": "boolean",
+          "description": "Whether to include the headers as the first CSV row. Ignored if data is array of arrays. Optional.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "delimiter",
+          "type": "string",
+          "description": "Character used to separate values in the CSV, default is a comma. Optional.",
+          "required": false,
+          "defaultValue": ","
+        },
+        {
+          "name": "quoteAllFields",
+          "type": "boolean",
+          "description": "Whether to quote all fields in the CSV. If false, quotes only necessary fields. Optional.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "lineSeparator",
+          "type": "string",
+          "description": "String to separate lines, default is \"\\n\". Optional.",
+          "required": false,
+          "defaultValue": "\n"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing a single string field 'csv' representing the complete CSV content."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to transform structured data such as JSON arrays of objects or arrays into CSV format for spreadsheet compatibility, data export, or interoperability. Ideal for generating CSV content to supply to users, downstream systems, or for file generation.",
+        "limitations": "This tool does not handle extremely large datasets that exceed memory limits, nor does it perform validation of input data structure correctness. It also does not generate CSV files but returns CSV content as a string only.",
+        "examples": [
+          "Generate CSV from array of objects with headers.",
+          "Generate CSV from array of arrays without headers.",
+          "Generate CSV using semicolon delimiter and quoting all fields."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "csv",
+        "data-export",
+        "formatting",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"includeHeaders\":true,\"delimiter\":\",\",\"quoteAllFields\":false,\"lineSeparator\":\"\\n\"}",
+          "description": "Generate a CSV string from an array of objects including headers with default comma delimiter."
+        },
+        {
+          "inputJson": "{\"data\":[[\"name\",\"age\",\"city\"],[\"Alice\",30,\"New York\"],[\"Bob\",25,\"Los Angeles\"]],\"includeHeaders\":false,\"delimiter\":\",\",\"quoteAllFields\":false,\"lineSeparator\":\"\\n\"}",
+          "description": "Generate a CSV string from an array of arrays without adding headers."
+        },
+        {
+          "inputJson": "{\"data\":[{\"product\":\"Widget\",\"price\":19.99,\"quantity\":10},{\"product\":\"Gadget\",\"price\":29.99,\"quantity\":5}],\"includeHeaders\":true,\"delimiter\":\";\",\"quoteAllFields\":true,\"lineSeparator\":\"\\r\\n\"}",
+          "description": "Generate CSV with semicolon delimiter and all fields quoted, using CRLF as line separator."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "CSV",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateMarkdown",
+      "description": "Generates Markdown formatted text based on structured input content including headings, paragraphs, lists, links, images, code blocks, and other common Markdown elements. Accepts inputs describing the document structure and content, then produces a complete Markdown string output suitable for documentation, blogging, or note-taking.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Primary title of the Markdown document, rendered as an H1 heading.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section objects defining headers, content paragraphs, lists, code blocks, images, and links, which together form the Markdown document body.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Flag to indicate whether to prepend a generated table of contents based on section headers.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "codeLanguageDefault",
+          "type": "string",
+          "description": "Default programming language label to use for code blocks if not specified in individual sections.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single property 'markdown' which is a string of the assembled Markdown content representing the provided input structure."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically create well-structured Markdown documents from abstract content descriptions or templates, such as for automating documentation, blog post drafts, reports, or notes.",
+        "limitations": "Cannot generate Markdown content from unstructured raw text or natural language descriptions directly without pre-formatted sections input. It does not apply advanced semantic understanding or writing style refinement.",
+        "examples": [
+          "Generate a README file with sections for Introduction, Installation, Usage, and License.",
+          "Create a blog post draft with headings, paragraphs, and embedded images and code examples.",
+          "Produce a project summary document with a table of contents and multiple nested list items."
+        ]
+      },
+      "tags": [
+        "content",
+        "markdown",
+        "document",
+        "generation",
+        "writing",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Sample Document\",\"sections\":[{\"header\":\"Introduction\",\"content\":[{\"type\":\"paragraph\",\"text\":\"This is an example introduction.\"},{\"type\":\"list\",\"ordered\":false,\"items\":[\"Point one\",\"Point two\"]}]},{\"header\":\"Code Example\",\"content\":[{\"type\":\"code\",\"text\":\"console.log('Hello, world!');\",\"language\":\"javascript\"}]}],\"includeTableOfContents\":true}",
+          "description": "Generates a Markdown document with title, introduction, bullet list, code example, and a table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Markdown",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateXML",
+      "description": "Generates well-formed XML documents based on provided data and structure definitions. Accepts an input object representing the hierarchical data or a predefined schema, processes it to create valid XML string output suitable for data exchange, configuration files, or content storage.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "rootElementName",
+          "type": "string",
+          "description": "Name of the root XML element in the generated document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dataObject",
+          "type": "object",
+          "description": "Hierarchical object representing the nested elements and their values or attributes to construct the XML content.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeDeclaration",
+          "type": "boolean",
+          "description": "Flag to include the XML declaration header (e.g. ).",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "attributesMap",
+          "type": "object",
+          "description": "Optional mapping that defines XML attributes for specific elements identified by their path or key in the dataObject.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "prettyPrint",
+          "type": "boolean",
+          "description": "If true, the output XML will be indented and formatted for readability; otherwise, it is minified.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "encoding",
+          "type": "string",
+          "description": "Character encoding to declare in the XML header if included (e.g., 'UTF-8').",
+          "required": false,
+          "defaultValue": "UTF-8"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated XML string and metadata such as success status and error messages if any."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert structured data into a standardized XML format for interoperability, configuration files generation, or content export. It is ideal for preparing XML outputs from JSON-like data structures, providing control over elements, attributes, and formatting.",
+        "limitations": "Does not perform XML schema validation or enforce complex data constraints beyond structural conversion. Input must be serializable to XML elements; complex data types like functions or circular references are unsupported.",
+        "examples": [
+          "Generate an XML configuration file from a nested data object specifying settings and attributes.",
+          "Create XML content representing a catalog of products, including elements with attributes and nested child elements.",
+          "Produce a pretty-printed XML document with a custom root element name and specific encoding header."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "XML",
+        "data-format",
+        "serialization",
+        "configuration",
+        "export"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rootElementName\":\"library\",\"dataObject\":{\"book\":[{\"title\":\"1984\",\"author\":\"George Orwell\",\"year\":1949},{\"title\":\"Brave New World\",\"author\":\"Aldous Huxley\",\"year\":1932}]},\"includeDeclaration\":true,\"prettyPrint\":true}",
+          "description": "Generate a pretty XML catalog with books inside a library root element including XML declaration."
+        },
+        {
+          "inputJson": "{\"rootElementName\":\"config\",\"dataObject\":{\"database\":{\"host\":\"localhost\",\"port\":3306},\"debug\":true},\"attributesMap\":{\"database\":{\"type\":\"sql\"}},\"includeDeclaration\":false,\"prettyPrint\":false}",
+          "description": "Generate a compact XML config file without declaration, adding an attribute to the database element."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "XML",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateYAML",
+      "description": "Generates YAML formatted text from input data provided as an object or string. Accepts structured JSON or plain text input, converts it into properly indented YAML syntax, and outputs a YAML string suitable for configuration, data serialization, or documentation purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "object",
+          "description": "The input data to convert to YAML format; must be a JSON-serializable object representing the data structure.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeHeader",
+          "type": "boolean",
+          "description": "Whether to prepend a YAML document start marker ('---') at the beginning of the output.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "indentation",
+          "type": "number",
+          "description": "Number of spaces to use for indentation in the YAML output, improving readability.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "lineWidth",
+          "type": "number",
+          "description": "Maximum line width before folding long lines in the YAML output; set 0 for no line wrapping.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single property 'yamlString' which is the generated YAML string representing the input data."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert structured data represented as JSON or similar objects into YAML format for configuration files, data exchange, or documentation. Particularly useful when preparing input for systems or tools that consume YAML.",
+        "limitations": "This tool does not validate the business logic of the input data beyond structural conversion. Extremely large or deeply nested data may have performance impact or require additional handling.",
+        "examples": [
+          "Convert a JSON object describing an application configuration into YAML for deployment.",
+          "Generate a YAML manifest from structured input to provide configuration documentation.",
+          "Create a YAML representation of nested data received from an API for easier human reading or editing."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "data-conversion",
+        "YAML",
+        "serialization",
+        "configuration",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":{\"appName\":\"ExampleApp\",\"version\":\"1.2.3\",\"features\":[\"featureA\",\"featureB\"],\"settings\":{\"debug\":true,\"maxUsers\":100}},\"includeHeader\":true,\"indentation\":2,\"lineWidth\":80}",
+          "description": "Generate a YAML document from an application config object including document start marker and default indentation."
+        },
+        {
+          "inputJson": "{\"inputData\":{\"database\":{\"host\":\"localhost\",\"port\":5432,\"credentials\":{\"user\":\"admin\",\"password\":\"secret\"}}},\"includeHeader\":false,\"indentation\":4,\"lineWidth\":0}",
+          "description": "Generate YAML from a nested database config object with 4 spaces indentation and no line wrapping."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "YAML",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateJSON",
+      "description": "Generates structured JSON data based on a user-defined schema, data templates, or simple property-value inputs. Accepts an object describing desired keys, types, and optionally sample values or constraints, then produces a JSON string or object adhering to those specifications, useful for mock data generation or API response simulation.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "schema",
+          "type": "object",
+          "description": "An object defining keys, their data types (string, number, boolean, array, object), and optionally sample values or constraints for generating the JSON structure.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "numberOfEntries",
+          "type": "number",
+          "description": "The number of JSON objects to generate if an array output is desired.",
+          "required": false,
+          "defaultValue": "1"
+        },
+        {
+          "name": "outputAsString",
+          "type": "boolean",
+          "description": "Whether to output the generated JSON as a string (true) or a parsed object (false).",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeNulls",
+          "type": "boolean",
+          "description": "Flag to include null values for optional fields not specified with samples or constraints.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "randomSeed",
+          "type": "number",
+          "description": "Optional seed for random data generation to allow reproducible outputs.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a JSON object or JSON string (based on outputAsString) containing generated data adhering to the input schema and constraints. If numberOfEntries > 1, returns an array of such objects."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate mock JSON data based on explicit schema definitions or templates, for testing, development, or prototyping APIs and content structures. It helps produce structured samples without manual JSON coding.",
+        "limitations": "Cannot generate deeply complex nested objects without explicit schema detail. Does not synthesize meaningful textual content beyond provided samples or simple random generation. Does not validate business logic constraints beyond type and basic value rules.",
+        "examples": [
+          "Generate a single JSON object with user profile fields: name (string), age (number), email (string).",
+          "Create an array of 5 JSON objects representing product items with id (number), name (string), price (number), and inStock (boolean).",
+          "Output formatted JSON string representing configuration settings with optional null fields included."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "generate",
+        "json",
+        "mock-data",
+        "schema-based",
+        "data-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"schema\":{\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"number\"},\"email\":{\"type\":\"string\"}},\"numberOfEntries\":1,\"outputAsString\":true}",
+          "description": "Generate a single JSON object with user profile information, output as JSON string."
+        },
+        {
+          "inputJson": "{\"schema\":{\"id\":{\"type\":\"number\"},\"name\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"},\"inStock\":{\"type\":\"boolean\"}},\"numberOfEntries\":5,\"outputAsString\":false}",
+          "description": "Generate an array of 5 product JSON objects as parsed object."
+        },
+        {
+          "inputJson": "{\"schema\":{\"settingName\":{\"type\":\"string\"},\"enabled\":{\"type\":\"boolean\"},\"value\":{\"type\":\"string\"}},\"numberOfEntries\":2,\"outputAsString\":true,\"includeNulls\":true}",
+          "description": "Generate 2 JSON configuration objects as strings, including null fields where applicable."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "JSON",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateDataset",
+      "description": "Generates synthetic datasets based on user-defined schema and parameters. Accepts input such as field definitions, data types, number of records, and optional data constraints to produce a structured JSON or CSV dataset suitable for testing, training, or prototyping.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "schema",
+          "type": "array",
+          "description": "An array of field definitions specifying each field's name, type, and constraints; e.g., [{\"fieldName\":\"age\",\"type\":\"number\",\"min\":18,\"max\":65}].",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "recordCount",
+          "type": "number",
+          "description": "The total number of data records to generate in the dataset.",
+          "required": true,
+          "defaultValue": "100"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format: 'json' for JSON array, or 'csv' for CSV string.",
+          "required": false,
+          "defaultValue": "json"
+        },
+        {
+          "name": "includeHeaders",
+          "type": "boolean",
+          "description": "Whether to include headers as first row in CSV output; ignored for JSON output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "seed",
+          "type": "number",
+          "description": "Optional random seed for reproducibility of the generated dataset.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated dataset as a string under the 'data' key, formatted as specified, and a 'meta' key with information about the schema and record count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when synthetic or mock data is required for software testing, machine learning model training, or prototyping applications without exposing real user information. It helps generate customizable datasets quickly based on user-defined field types and constraints.",
+        "limitations": "This tool cannot generate meaningful real-world relationships between fields beyond the specified field constraints. It does not validate complex schema dependencies or ensure semantic correctness between fields.",
+        "examples": [
+          "Generate a dataset of 500 user profiles with fields: name (string), age (number between 18 and 80), and email (string).",
+          "Create 1000 records of product data with fields: productId (string), price (number between 5 and 500), and inStock (boolean).",
+          "Produce a CSV dataset of 200 entries with fields: date (date string), temperature (number between -20 and 40), and condition (string from list: sunny, rainy, cloudy)."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "dataset-generation",
+        "synthetic-data",
+        "mock-data",
+        "data-science",
+        "testing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"schema\":[{\"fieldName\":\"age\",\"type\":\"number\",\"min\":18,\"max\":65},{\"fieldName\":\"gender\",\"type\":\"string\",\"values\":[\"Male\",\"Female\",\"Other\"]}],\"recordCount\":10,\"outputFormat\":\"json\"}",
+          "description": "Generate 10 records with age numbers between 18 and 65 and gender as categorical values."
+        },
+        {
+          "inputJson": "{\"schema\":[{\"fieldName\":\"productId\",\"type\":\"string\"},{\"fieldName\":\"price\",\"type\":\"number\",\"min\":5,\"max\":500},{\"fieldName\":\"inStock\",\"type\":\"boolean\"}],\"recordCount\":5,\"outputFormat\":\"csv\",\"includeHeaders\":true}",
+          "description": "Generate 5 product records in CSV format including headers."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Dataset",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateTest",
+      "description": "Generates automated test code based on input specifications such as programming language, test framework, function or class details, and test scenarios. Processes structured input to produce syntactically correct and logically relevant unit or integration test code snippets for software development purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language for the generated test code (e.g., 'JavaScript', 'Python').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "testFramework",
+          "type": "string",
+          "description": "Testing framework to target (e.g., 'Jest', 'Mocha', 'PyTest').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "functionName",
+          "type": "string",
+          "description": "Name of the function or method to be tested.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputParameters",
+          "type": "array",
+          "description": "Array of input parameter names and sample values for the function under test.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "testCases",
+          "type": "array",
+          "description": "Array of test case objects each specifying description, inputs, and expected output for test scenarios.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeSetupTeardown",
+          "type": "boolean",
+          "description": "Whether to include setup and teardown methods in the generated test code.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "testType",
+          "type": "string",
+          "description": "Type of test to generate: 'unit' or 'integration'.",
+          "required": false,
+          "defaultValue": "unit"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing the generated test code as a string under the 'code' key and optionally the language and framework metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to automate the creation of software test code based on detailed input about the functions and expected behaviors to be tested. It helps developers save time by producing boilerplate test code consistent with a specified language and testing framework.",
+        "limitations": "Cannot generate tests for undocumented or highly complex behaviors that lack clear expected outputs. Does not replace thorough manual test design in complex systems. Quality of generated tests depends on input completeness and accuracy.",
+        "examples": [
+          "Generate unit tests in JavaScript using Jest for a function that adds two numbers.",
+          "Create PyTest integration tests for a database access class with multiple scenarios.",
+          "Produce Mocha test code with setup and teardown for a function validating email addresses."
+        ]
+      },
+      "tags": [
+        "testing",
+        "code-generation",
+        "software-development",
+        "unit-tests",
+        "integration-tests",
+        "automation",
+        "programming"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"language\":\"JavaScript\",\"testFramework\":\"Jest\",\"functionName\":\"addNumbers\",\"inputParameters\":[{\"name\":\"a\",\"value\":1},{\"name\":\"b\",\"value\":2}],\"testCases\":[{\"description\":\"adds positive numbers\",\"inputs\":{\"a\":1,\"b\":2},\"expected\":3},{\"description\":\"adds negative numbers\",\"inputs\":{\"a\":-1,\"b\":-2},\"expected\":-3}],\"includeSetupTeardown\":false,\"testType\":\"unit\"}",
+          "description": "Generate Jest unit tests for a simple addNumbers function with positive and negative input cases."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Test",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateQuery",
+      "description": "Generates a structured query string based on provided parameters like keywords, filters, and sort options. Accepts an object detailing query criteria, processes these to build a valid query (e.g., SQL, GraphQL, or search engine query) string, which can be used to retrieve targeted data or content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "queryType",
+          "type": "string",
+          "description": "The type of query to generate, e.g., 'SQL', 'GraphQL', 'search'. Determines the syntax and structure of the output query string.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "An array of keywords or key phrases to include in the query for matching relevant content or data.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "filters",
+          "type": "object",
+          "description": "Optional filters as key-value pairs to narrow down the query results, e.g., {status: 'active', dateFrom: '2023-01-01'}.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "sortBy",
+          "type": "string",
+          "description": "Optional field name to sort the query results by, e.g., 'date', 'relevance'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "sortOrder",
+          "type": "string",
+          "description": "Sort order direction: 'asc' for ascending or 'desc' for descending. Defaults to 'asc'.",
+          "required": false,
+          "defaultValue": "asc"
+        },
+        {
+          "name": "limit",
+          "type": "number",
+          "description": "Maximum number of results to return in the query output. Useful for pagination or performance.",
+          "required": false,
+          "defaultValue": "10"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated query string formatted according to the specified query type. Includes the 'queryString' key with the constructed query."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create structured queries dynamically based on user input or contextual parameters to fetch data or content. Particularly useful when the target data source supports SQL, GraphQL, or search engine queries, enabling precise retrieval without manual query construction.",
+        "limitations": "This tool does not execute queries or validate against specific database schemas. It generates generic queries based on provided parameters but does not guarantee syntax compatibility with all database dialects or APIs.",
+        "examples": [
+          "Generate a SQL query to find active users created after a certain date, sorted by creation date descending.",
+          "Create a GraphQL query filtering products by category and price range.",
+          "Build a search engine query string to find articles containing specific keywords with relevance sorting."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "query-generation",
+        "search",
+        "SQL",
+        "GraphQL",
+        "filtering",
+        "sorting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"queryType\":\"SQL\",\"keywords\":[\"customer\",\"subscription\"],\"filters\":{\"status\":\"active\",\"createdAfter\":\"2023-01-01\"},\"sortBy\":\"createdAt\",\"sortOrder\":\"desc\",\"limit\":50}",
+          "description": "Generate a SQL query to find active customer subscriptions created after January 1, 2023, sorted by creation date descending, limited to 50 results."
+        },
+        {
+          "inputJson": "{\"queryType\":\"GraphQL\",\"keywords\":[\"product\",\"inStock\"],\"filters\":{\"category\":\"electronics\",\"priceRange\":{\"min\":100,\"max\":500}},\"sortBy\":\"price\",\"sortOrder\":\"asc\",\"limit\":20}",
+          "description": "Generate a GraphQL query to find electronic products in stock priced between 100 and 500, sorted by price ascending, limited to 20."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Query",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateCode",
+      "description": "Generates syntactically correct source code snippets based on natural language prompts or specified requirements. Accepts programming language, functional description, coding style preferences, and optional input/output examples; produces executable code snippets suitable for integration or learning.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "programmingLanguage",
+          "type": "string",
+          "description": "Target programming language for the generated code, e.g., 'Python', 'JavaScript', 'Java'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "functionalityDescription",
+          "type": "string",
+          "description": "Natural language description of the functionality or task the generated code should perform.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "codeStylePreferences",
+          "type": "object",
+          "description": "Optional preferences for code style such as indentation, variable naming conventions, or use of libraries.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "inputExamples",
+          "type": "array",
+          "description": "Optional array of example inputs used to guide the code generation (e.g., sample function inputs).",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "outputExamples",
+          "type": "array",
+          "description": "Optional array of expected outputs corresponding to inputExamples for testing correctness.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "maxLines",
+          "type": "number",
+          "description": "Maximum number of lines of code to generate to limit output size.",
+          "required": false,
+          "defaultValue": "50"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated code snippet as a string, language identified, and optionally explanation or notes."
+      },
+      "aiAgent": {
+        "useCase": "This tool is ideal when an agent needs to programmatically generate executable code snippets from natural language specifications for rapid prototyping, learning examples, or to augment automation pipelines with custom code modules. It simplifies code creation based on clear functional requirements without manual coding.",
+        "limitations": "It cannot guarantee fully optimized performance or perfect security. It may not generate complex multi-file projects or applications requiring deep architectural design. Generated code should be reviewed and tested before production use.",
+        "examples": [
+          "Generate a Python function to compute factorial of a number.",
+          "Create a JavaScript snippet to validate email format.",
+          "Provide a Java method that reverses a string using recursion."
+        ]
+      },
+      "tags": [
+        "code generation",
+        "programming",
+        "automation",
+        "snippet",
+        "source code",
+        "developer tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"programmingLanguage\":\"Python\",\"functionalityDescription\":\"Compute the factorial of a non-negative integer.\",\"codeStylePreferences\":{\"indentation\":\"4 spaces\"},\"inputExamples\":[5],\"outputExamples\":[120],\"maxLines\":20}",
+          "description": "Generate a Python function calculating factorial of a number."
+        },
+        {
+          "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"functionalityDescription\":\"Validate if an input string is a valid email address.\",\"codeStylePreferences\":{\"variableNaming\":\"camelCase\"},\"maxLines\":30}",
+          "description": "Create a JavaScript code snippet for email validation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Code",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateSchema",
+      "description": "Generates a JSON Schema draft from a provided simplified object definition or example data. Accepts a JSON object or string example, processes its structure, types, and constraints, and outputs a detailed JSON Schema draft compliant with the JSON Schema specification.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "inputExample",
+          "type": "object",
+          "description": "The JSON object or example structure from which to generate the JSON Schema.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "schemaVersion",
+          "type": "string",
+          "description": "The JSON Schema draft version to generate, e.g., \"draft07\" or \"draft2019-09\".",
+          "required": false,
+          "defaultValue": "draft07"
+        },
+        {
+          "name": "includeDescriptions",
+          "type": "boolean",
+          "description": "Whether to include placeholder description fields for each property in the generated schema.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "requiredFields",
+          "type": "array",
+          "description": "An optional array listing property names to explicitly mark as required in the schema. If empty or omitted, properties are inferred as required if present in the inputExample.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the generated JSON Schema including $schema field, properties with types, and constraints extracted from the input."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically create a JSON Schema draft from example JSON data or simple object definitions to validate data inputs, generate documentation, or scaffold schema-driven interfaces. It helps automate schema creation for APIs, configurations, or data validation layers.",
+        "limitations": "This tool cannot perfectly infer complex validation rules like pattern matching, advanced dependencies, or conditional schemas. It also does not generate schemas from unstructured text or non-JSON inputs.",
+        "examples": [
+          "Generate a JSON Schema draft07 for API request validation from a sample payload.",
+          "Create a schema to validate config files based on typical example data.",
+          "Produce a schema draft2019-09 including descriptions for all fields to use in frontend form generation."
+        ]
+      },
+      "tags": [
+        "generation",
+        "schema",
+        "json",
+        "validation",
+        "content-creation",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputExample\":{\"name\":\"John Doe\",\"age\":30,\"email\":\"john@example.com\",\"isActive\":true},\"schemaVersion\":\"draft07\",\"includeDescriptions\":false,\"requiredFields\":[\"name\",\"email\"]}",
+          "description": "Generate a draft07 JSON Schema from a user profile example marking 'name' and 'email' as required without descriptions."
+        },
+        {
+          "inputJson": "{\"inputExample\":{\"productId\":12345,\"price\":99.99,\"tags\":[\"new\",\"sale\"]},\"schemaVersion\":\"draft2019-09\",\"includeDescriptions\":true,\"requiredFields\":[]}",
+          "description": "Generate a draft2019-09 schema including descriptions for product data with inferred required fields."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Schema",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateReadme",
+      "description": "Generates a professional README.md file for software projects based on detailed project information provided. Accepts inputs such as project name, description, installation instructions, usage examples, features, license, and author details, processing these to output a structured markdown README document.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the project to be displayed as the main title in the README.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "projectDescription",
+          "type": "string",
+          "description": "A concise description summarizing the purpose and scope of the project.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "installationInstructions",
+          "type": "string",
+          "description": "Step-by-step instructions for installing the project or necessary dependencies.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "usageInformation",
+          "type": "string",
+          "description": "Examples or commands explaining how to use the project effectively.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "features",
+          "type": "array",
+          "description": "A list of key features or highlights of the project to showcase.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "license",
+          "type": "string",
+          "description": "The license under which the project is released (e.g., MIT, GPL).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contributingGuidelines",
+          "type": "string",
+          "description": "Instructions or rules for contributing to the project.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "authorName",
+          "type": "string",
+          "description": "Name of the project author or maintainer to be displayed in the README.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "additionalSections",
+          "type": "array",
+          "description": "Optional custom sections with titles and content to be appended to the README. Each item should be an object with 'title' and 'content' string properties.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete README content as a markdown string, ready to be saved or displayed."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent receives a request to create or update a comprehensive README.md file for a software project based on structured input about project details. It helps generate consistent, professional documentation automatically.",
+        "limitations": "This tool cannot verify technical accuracy of the content nor generate code snippets beyond provided usage info. It also cannot replace human review for style or completeness.",
+        "examples": [
+          "Create a README for a new CLI tool called 'FastBuild' with installation and usage instructions.",
+          "Generate a README including project features, license, and contribution guidelines for an open-source library.",
+          "Produce a README file using just project name and description with optional additional custom sections."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "documentation",
+        "README",
+        "markdown",
+        "software",
+        "project",
+        "generate"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"FastBuild\",\"projectDescription\":\"A fast and efficient build tool for modern JavaScript projects.\",\"installationInstructions\":\"Run npm install -g fastbuild\",\"usageInformation\":\"fastbuild build --watch\",\"features\":[\"Blazing fast incremental builds\",\"Built-in caching\",\"Easy CLI interface\"],\"license\":\"MIT\",\"contributingGuidelines\":\"Please open issues for bugs and submit pull requests.\",\"authorName\":\"Jane Developer\",\"additionalSections\":[]}",
+          "description": "Generate a full README with detailed installation, usage, features, license, contribution guidelines, and author."
+        },
+        {
+          "inputJson": "{\"projectName\":\"MyLibrary\",\"projectDescription\":\"A lightweight utility library for data manipulation.\",\"installationInstructions\":\"npm install mylibrary\",\"usageInformation\":\"const lib = require('mylibrary');\\nlib.doSomething();\",\"features\":[],\"license\":\"Apache-2.0\",\"contributingGuidelines\":\"\",\"authorName\":\"\",\"additionalSections\":[{\"title\":\"FAQ\",\"content\":\"Q: Is this library compatible with Node.js?\\nA: Yes, fully compatible.\"}]}",
+          "description": "Create README with minimal feature list but includes a custom FAQ section."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateTemplate",
+      "description": "Generates customizable document templates based on user-defined parameters such as template type, sections, and styling preferences. Accepts parameters defining the template's intended use (e.g., report, invoice), desired sections, and formatting options, then outputs a structured template object including placeholders for dynamic content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "templateType",
+          "type": "string",
+          "description": "The type of template to generate, e.g., 'report', 'invoice', 'letter', or 'presentation'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section names to include in the template, such as ['Introduction','Summary','Details','Conclusion'].",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeHeader",
+          "type": "boolean",
+          "description": "Whether to include a header section with title and date placeholders.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeFooter",
+          "type": "boolean",
+          "description": "Whether to include a footer section with page numbers and copyright info.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "styleSettings",
+          "type": "object",
+          "description": "An object defining styling preferences, e.g., {fontFamily:'Arial', fontSize:12, colorScheme:'light'}.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured template object containing metadata, defined sections with placeholders, and styling information suitable for rendering or further editing."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create document templates dynamically according to user specifications, such as generating a business report layout with specific sections or styling. Ideal for automating template creation to streamline document generation workflows.",
+        "limitations": "This tool cannot fill templates with actual content; it only defines the structure and style. It does not support real-time collaborative editing or advanced graphic layouts.",
+        "examples": [
+          "Generate a project status report template with sections: Introduction, Progress, Issues, Next Steps and corporate style.",
+          "Create an invoice template including header and footer with default styling.",
+          "Produce a minimal letter template without footer but with custom font and color scheme."
+        ]
+      },
+      "tags": [
+        "template",
+        "document",
+        "content creation",
+        "automation",
+        "dynamic",
+        "layout",
+        "style"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"templateType\":\"report\",\"sections\":[\"Introduction\",\"Summary\",\"Details\",\"Conclusion\"],\"includeHeader\":true,\"includeFooter\":true,\"styleSettings\":{\"fontFamily\":\"Times New Roman\",\"fontSize\":12,\"colorScheme\":\"light\"}}",
+          "description": "Generate a professional report template with typical sections and default header/footer, styled in Times New Roman."
+        },
+        {
+          "inputJson": "{\"templateType\":\"invoice\",\"sections\":[\"Billing Details\",\"Itemized Charges\",\"Total\"],\"includeHeader\":true,\"includeFooter\":true,\"styleSettings\":{\"fontFamily\":\"Arial\",\"fontSize\":10,\"colorScheme\":\"dark\"}}",
+          "description": "Create an invoice template with billing and charges sections and dark theme styling."
+        },
+        {
+          "inputJson": "{\"templateType\":\"letter\",\"sections\":[\"Salutation\",\"Body\",\"Closing\"],\"includeHeader\":true,\"includeFooter\":false,\"styleSettings\":{\"fontFamily\":\"Calibri\",\"fontSize\":11,\"colorScheme\":\"light\"}}",
+          "description": "Generate a letter template with header but no footer, using Calibri font and light color scheme."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateBrief",
+      "description": "Generates a structured brief document based on provided project details, target audience, objectives, and key points. Accepts input parameters describing the scope and requirements, processes them to create a concise, clear summary brief suitable for internal or client use.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the project or initiative for which the brief is generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "objectives",
+          "type": "array",
+          "description": "An array of strings describing the main goals or objectives of the project.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience or users of the project.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "List of key points, features, or ideas to be included in the brief.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "deadline",
+          "type": "string",
+          "description": "Optional deadline or timeline for project completion (ISO 8601 date or descriptive string).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "additionalNotes",
+          "type": "string",
+          "description": "Any additional information or context to include in the brief.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated brief text and a structured summary of key elements for easy integration."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a concise, structured brief document is needed to summarize project objectives, target users, and key points. It helps automate the initial documentation phase for projects across marketing, product development, or content creation by transforming raw input into a clear, usable brief.",
+        "limitations": "The tool cannot generate highly detailed project plans or technical specifications. It relies on the quality and completeness of input data and does not validate external factual accuracy.",
+        "examples": [
+          "Generate a marketing campaign brief based on objectives and target audience.",
+          "Create a project brief for a new software feature with key points and timeline.",
+          "Summarize client's requirements into a clear internal brief document."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "brief",
+        "summary",
+        "documentation",
+        "project-planning",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"Website Redesign\",\"objectives\":[\"Improve user engagement\",\"Increase mobile traffic\"],\"targetAudience\":\"Young professionals aged 25-35\",\"keyPoints\":[\"Responsive mobile design\",\"Faster loading times\"],\"deadline\":\"2024-09-30\",\"additionalNotes\":\"Focus on accessibility compliance.\"}",
+          "description": "Generating a project brief for a website redesign with specific goals, audience, and deadline."
+        },
+        {
+          "inputJson": "{\"projectName\":\"Social Media Campaign Q3\",\"objectives\":[\"Boost brand awareness\",\"Increase follower count by 20%\"],\"targetAudience\":\"Millennials and Gen Z\",\"keyPoints\":[\"Influencer partnerships\",\"Regular video content\"],\"deadline\":\"2024-07-15\",\"additionalNotes\":\"Align with new product launch.\"}",
+          "description": "Creating a marketing brief for a social media campaign with clear objectives and strategic points."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateFAQ",
+      "description": "Generates a formatted FAQ document based on provided information and topics. Accepts product or service details, common questions, and relevant keywords and outputs a structured FAQ text suitable for websites, manuals, or support portals.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Main subject or product the FAQ focuses on, such as a software name or service category.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "questions",
+          "type": "array",
+          "description": "List of common questions or queries related to the topic that the FAQ should address.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "backgroundInfo",
+          "type": "string",
+          "description": "Detailed description or background information about the product or service to inform accurate answers.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code (e.g., 'en', 'es') in which the FAQ should be generated.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "maxQuestions",
+          "type": "number",
+          "description": "Maximum number of questions to include in the FAQ; if fewer questions provided, uses those.",
+          "required": false,
+          "defaultValue": "10"
+        },
+        {
+          "name": "includeIntro",
+          "type": "boolean",
+          "description": "Whether to generate a brief introduction paragraph before the FAQ list.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted FAQ text, including optional introduction and each question paired with its generated answer."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create or expand a Frequently Asked Questions document to assist users by providing clear answers about a product, service, or topic, especially when given domain-specific details and user questions. It's ideal for automating support content generation from knowledge bases or product documentation.",
+        "limitations": "Cannot verify factual accuracy beyond input data; may generate generic answers if background info is insufficient. Does not tailor answers for individual users or handle complex legal or medical advice.",
+        "examples": [
+          "Generate FAQ for a new software product from key features and common user questions.",
+          "Create an FAQ for a website's return policy based on policy text to help customer support.",
+          "Produce a bilingual FAQ where questions and answers are provided in specified language."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "document-generation",
+        "FAQ",
+        "support",
+        "customer-service",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"SuperApp Pro\",\"questions\":[\"How do I install SuperApp Pro?\",\"What are the system requirements?\",\"Is there a trial version available?\"],\"backgroundInfo\":\"SuperApp Pro is a productivity application compatible with Windows and Mac. Users require 4GB RAM and 500MB disk space. A 14-day free trial is offered.\",\"language\":\"en\",\"maxQuestions\":5,\"includeIntro\":true}",
+          "description": "Generate an English FAQ for a productivity app based on provided features and common questions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateChecklist",
+      "description": "Generates a structured checklist document based on provided topics, subtopics, and item details. Accepts input parameters to customize checklist title, sections, individual items with descriptions, and priorities. Outputs a JSON-formatted checklist suitable for task management or documentation purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the checklist document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section objects, each containing a section title and an array of checklist items.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includePriorities",
+          "type": "boolean",
+          "description": "Flag to indicate whether priority levels should be included in checklist items.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "defaultPriority",
+          "type": "string",
+          "description": "Default priority level assigned to checklist items if none specified (e.g., 'Medium').",
+          "required": false,
+          "defaultValue": "Medium"
+        },
+        {
+          "name": "formatAsMarkdown",
+          "type": "boolean",
+          "description": "If true, generate checklist output formatted as markdown text instead of JSON.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated checklist represented as JSON and optionally as a markdown string if requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to create organized, multi-section checklists for project plans, quality assurance, event planning, or instructional guides based on user-provided topics and items. It helps automate production of clear, actionable checklist documents with customizable priorities and formatting.",
+        "limitations": "Does not generate checklist content from unstructured text or automatically infer checklist items. It requires structured input. It cannot handle real-time task tracking or integrations with external task management apps.",
+        "examples": [
+          "Generate a product launch checklist with sections for pre-launch, launch day, and post-launch tasks.",
+          "Create a QA checklist for software testing with items marked by priority and detailed descriptions.",
+          "Produce a markdown formatted event planning checklist including venue, catering, and invitations sections."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "checklist",
+        "document-generation",
+        "task-management",
+        "planning"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Website Launch Checklist\",\"sections\":[{\"sectionTitle\":\"Pre-launch Tasks\",\"items\":[{\"description\":\"Complete final design review\",\"priority\":\"High\"},{\"description\":\"Set up hosting environment\",\"priority\":\"Medium\"}]},{\"sectionTitle\":\"Launch Day Tasks\",\"items\":[{\"description\":\"Deploy website to production\",\"priority\":\"High\"},{\"description\":\"Announce launch on social media\",\"priority\":\"Medium\"}]}],\"includePriorities\":true,\"formatAsMarkdown\":false}",
+          "description": "Generate a checklist for a website launch with prioritized tasks formatted as JSON."
+        },
+        {
+          "inputJson": "{\"title\":\"Event Planning Checklist\",\"sections\":[{\"sectionTitle\":\"Venue\",\"items\":[{\"description\":\"Book venue\",\"priority\":\"High\"},{\"description\":\"Arrange seating\",\"priority\":\"Low\"}]},{\"sectionTitle\":\"Catering\",\"items\":[{\"description\":\"Choose menu\",\"priority\":\"Medium\"},{\"description\":\"Confirm dietary restrictions\",\"priority\":\"High\"}]}],\"includePriorities\":true,\"formatAsMarkdown\":true}",
+          "description": "Create a markdown formatted event planning checklist including priorities."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateReleaseNotes",
+      "description": "Generates detailed and well-structured release notes documents from provided release metadata and change logs. Accepts inputs such as version number, release date, list of features, bug fixes, and known issues, and produces formatted release notes suitable for product documentation or publication.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The version number of the release (e.g., 'v2.3.0').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "releaseDate",
+          "type": "string",
+          "description": "The release date in ISO 8601 format (e.g., '2024-05-01').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "features",
+          "type": "array",
+          "description": "An array of strings describing new features introduced in this release.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "bugFixes",
+          "type": "array",
+          "description": "An array of strings listing bug fixes included in this release.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "knownIssues",
+          "type": "array",
+          "description": "An array of strings to note known issues that remain in this release.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "additionalNotes",
+          "type": "string",
+          "description": "Optional additional notes or comments to include in the release notes.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the release notes document: 'markdown', 'html', or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted release notes string in the specified format, under the key 'releaseNotes'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create professional and consistent release notes documents automatically based on structured input data about a new product or software version. This helps streamline publishing, saves time, and ensures clarity for end users or stakeholders.",
+        "limitations": "This tool does not generate content beyond the input provided, such as interpreting code changes or creating summaries without explicit data. It also does not localize or translate contents automatically.",
+        "examples": [
+          "Generate release notes for a new software version including features and bug fixes.",
+          "Create HTML formatted release notes from a detailed change list.",
+          "Produce a simple plaintext release note summary for an internal patch."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "release-notes",
+        "documentation",
+        "software",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"version\":\"v3.1.0\",\"releaseDate\":\"2024-05-15\",\"features\":[\"Added user authentication support\",\"Improved performance of data queries\"],\"bugFixes\":[\"Fixed crash on startup\",\"Resolved memory leak issue\"],\"knownIssues\":[\"Minor UI glitch on settings page\"],\"format\":\"markdown\"}",
+          "description": "Generate markdown release notes for version v3.1.0 with features, fixes, and known issues."
+        },
+        {
+          "inputJson": "{\"version\":\"1.0.0\",\"releaseDate\":\"2024-01-01\",\"features\":[\"Initial release with core functionalities\"],\"format\":\"plaintext\"}",
+          "description": "Generate a plaintext release note for the initial release of a product."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "ReleaseNotes",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateTranscript",
+      "description": "Generates a textual transcript from an uploaded audio or video file, using speech-to-text processing. Accepts media file input and optional parameters for language and speaker diarization. Outputs a structured transcript with timestamps and speaker labels if enabled.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "mediaUrl",
+          "type": "string",
+          "description": "URL or path to the audio/video file to transcribe",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code of the spoken language in the media (e.g., 'en-US')",
+          "required": false,
+          "defaultValue": "en-US"
+        },
+        {
+          "name": "enableSpeakerDiarization",
+          "type": "boolean",
+          "description": "Whether to separate transcript by speaker voices",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "timestampInterval",
+          "type": "number",
+          "description": "Interval in seconds to insert timestamps in the transcript",
+          "required": false,
+          "defaultValue": "30"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the transcript, e.g., 'text' or 'json' with metadata",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the full transcript text, optionally segmented by timestamps and speakers, plus metadata if requested"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert audio or video content into readable, searchable text. It is useful for meeting notes, content indexing, accessibility, and content repurposing. It supports multiple languages and can optionally separate speakers and add timestamps for clarity.",
+        "limitations": "This tool cannot generate transcripts without clear audio input or from files without speech (e.g., music only). It may have lower accuracy in noisy environments or with overlapping speech. It does not perform translations or summarize content.",
+        "examples": [
+          "Generate a transcript from an English podcast episode URL.",
+          "Create a diarized transcript with speaker labels for a recorded webinar.",
+          "Produce a JSON-formatted transcript with timestamps every 10 seconds from a video file URL."
+        ]
+      },
+      "tags": [
+        "transcription",
+        "speech-to-text",
+        "audio-processing",
+        "video-processing",
+        "content-creation",
+        "accessibility"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mediaUrl\":\"https://example.com/meeting-recording.mp4\",\"language\":\"en-US\",\"enableSpeakerDiarization\":true,\"timestampInterval\":60,\"format\":\"json\"}",
+          "description": "Generate a JSON transcript with speaker labels and timestamps every 60 seconds from an English meeting video."
+        },
+        {
+          "inputJson": "{\"mediaUrl\":\"https://example.com/podcast-episode.mp3\",\"language\":\"en-US\",\"enableSpeakerDiarization\":false,\"format\":\"text\"}",
+          "description": "Generate plain text transcript from an English podcast audio without speaker separation."
+        },
+        {
+          "inputJson": "{\"mediaUrl\":\"https://example.com/webinar.mkv\",\"language\":\"es-ES\",\"enableSpeakerDiarization\":true,\"timestampInterval\":30,\"format\":\"json\"}",
+          "description": "Generate a diarized Spanish transcript with timestamps every 30 seconds from a webinar video."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateChangelog",
+      "description": "Generates a structured changelog document by parsing commit messages or a list of versioned changes. Accepts inputs such as raw commit logs or an array of change entries, processes to group changes by categories (e.g., Added, Fixed, Changed), and outputs a formatted markdown or plain text changelog suitable for release notes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "commitMessages",
+          "type": "array",
+          "description": "An array of commit message strings to extract changes from. Each message should be a conventional commit or descriptive note.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "changeEntries",
+          "type": "array",
+          "description": "An array of structured change objects with fields like type (Added, Fixed), description, and optional scope. Used if commitMessages not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The version string for the release, e.g., '1.2.3'. This is included in the changelog heading.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "Release date in ISO 8601 format (YYYY-MM-DD). Included in the changelog heading.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The format for the output changelog: 'markdown' or 'text'. Defaults to markdown.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeUncategorized",
+          "type": "boolean",
+          "description": "Whether to include changes that do not fit into standard categories under an 'Uncategorized' section.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "categoriesOrder",
+          "type": "array",
+          "description": "Defines the order and names of categories in the changelog. Defaults to ['Added','Changed','Deprecated','Removed','Fixed','Security'].",
+          "required": false,
+          "defaultValue": "[\"Added\",\"Changed\",\"Deprecated\",\"Removed\",\"Fixed\",\"Security\"]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the changelog string under the 'changelog' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to automatically generate a standardized changelog document from commit logs or a list of changes for software releases or project updates. It helps in formatting and grouping changes by type, preparing release notes efficiently.",
+        "limitations": "The tool relies on structured commit messages or well-formed change entries. It cannot infer changes without descriptive inputs and does not automatically fetch commits from repositories.",
+        "examples": [
+          "Generate a markdown changelog from recent conventional commits for version 2.0.0.",
+          "Create a plain text changelog from an array of change entries without a date.",
+          "Produce a changelog including uncategorized changes and specifying a custom category order."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "changelog",
+        "release-notes",
+        "documentation",
+        "automation",
+        "project-management"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"commitMessages\":[\"feat: add user login feature\",\"fix: correct typo in README\",\"docs: update API documentation\"],\"version\":\"1.4.0\",\"date\":\"2024-05-15\",\"outputFormat\":\"markdown\"}",
+          "description": "Generate a markdown changelog for version 1.4.0 using commit messages including feature, fix, and docs updates."
+        },
+        {
+          "inputJson": "{\"changeEntries\":[{\"type\":\"Added\",\"description\":\"Support for multi-factor authentication\"},{\"type\":\"Fixed\",\"description\":\"Crash on startup on Windows devices\"},{\"type\":\"Changed\",\"description\":\"Updated database schema\"}],\"version\":\"2.0.0\",\"outputFormat\":\"text\",\"includeUncategorized\":false}",
+          "description": "Create a plain text changelog for version 2.0.0 from explicit change entries, excluding uncategorized changes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Changelog",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateMinutes",
+      "description": "Generates detailed meeting minutes from meeting transcripts or notes by extracting key points, decisions, action items, attendees, and summaries. Accepts plain text or structured input and outputs a formatted summary document suitable for distribution.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "meetingTranscript",
+          "type": "string",
+          "description": "Raw text transcript or detailed notes of the meeting to process for minutes generation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "meetingDate",
+          "type": "string",
+          "description": "Date of the meeting in ISO 8601 format (YYYY-MM-DD) to include in the minutes header.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "attendees",
+          "type": "array",
+          "description": "List of attendees' names who participated in the meeting.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeActionItems",
+          "type": "boolean",
+          "description": "Whether to extract and highlight action items from the meeting content.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language of the meeting content for accurate processing (e.g., 'en' for English).",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the generated minutes output, e.g., 'text', 'markdown', or 'json'.",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted meeting minutes with structured sections such as summary, decisions, action items, attendees, and date."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have a meeting transcript or detailed notes and need to quickly generate clear, organized meeting minutes for sharing or archiving without manual summarization. It helps teams maintain records of decisions, tasks, and attendance efficiently.",
+        "limitations": "Cannot replace the accuracy of official meeting transcription; quality depends on the input transcript clarity. May miss nuances or implicit decisions not clearly stated in the input.",
+        "examples": [
+          "Generate meeting minutes from a text transcript capturing all key discussion points and action items.",
+          "Create a markdown formatted summary of meeting notes including the date and a list of attendees.",
+          "Extract and highlight action items from a raw meeting note document in JSON output format."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "meeting",
+        "minutes",
+        "document-generation",
+        "summarization",
+        "productivity"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"meetingTranscript\":\"Project kickoff meeting started with introductions. Decision to adopt Agile methodology was made. John will lead the development team.\",\"meetingDate\":\"2024-04-15\",\"attendees\":[\"Alice\",\"Bob\",\"John\"],\"includeActionItems\":true,\"language\":\"en\",\"outputFormat\":\"text\"}",
+          "description": "Generate text format meeting minutes from a short project kickoff meeting transcript including attendees and date."
+        },
+        {
+          "inputJson": "{\"meetingTranscript\":\"Discussed quarterly budget review and allocation. Decided to increase marketing budget by 10%. Action item assigned to Sarah to prepare new budget proposal.\",\"attendees\":[\"Mike\",\"Sarah\"],\"includeActionItems\":true,\"outputFormat\":\"markdown\"}",
+          "description": "Create markdown formatted minutes summarizing budget decisions and action items with attendee names."
+        },
+        {
+          "inputJson": "{\"meetingTranscript\":\"Review of last sprint goals. All goals met except for backend API updates. Action item: Dev team to prioritize API completion next sprint.\",\"includeActionItems\":true,\"outputFormat\":\"json\"}",
+          "description": "Produce json structured meeting minutes including identified action items from sprint review notes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateSummary",
+      "description": "Generates a concise, coherent summary from a provided text document or content. Accepts raw text input and optional parameters to control summary length and style. Outputs a summarized text capturing the key points, suitable for quick understanding or previews.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The full text content to be summarized. Required for summary generation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the summary in number of words. Optional; defaults to 100.",
+          "required": false,
+          "defaultValue": "100"
+        },
+        {
+          "name": "summaryStyle",
+          "type": "string",
+          "description": "Style of the summary; can be 'concise', 'detailed', or 'bulleted'. Defaults to 'concise'.",
+          "required": false,
+          "defaultValue": "concise"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code of the input text for accurate summarization. Defaults to 'en' for English.",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the summary text, its word count, and the original language code."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create a brief, readable synopsis of long texts like articles, reports, or documents to enable quick comprehension or preview. It is useful for content summarization in content management, news aggregation, or research.",
+        "limitations": "Cannot replace specialized domain expert summaries. Quality depends on input text clarity and language support. May not capture nuanced or highly technical details accurately.",
+        "examples": [
+          "Summarize a research article into a concise paragraph.",
+          "Generate a bulleted summary of a product review.",
+          "Create a brief summary from a lengthy news report."
+        ]
+      },
+      "tags": [
+        "content",
+        "summarization",
+        "text",
+        "document",
+        "summary",
+        "content-creation",
+        "generate"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"The quick brown fox jumps over the lazy dog. This sentence is often used as a pangram in the English language to test fonts and keyboards.\",\"maxLength\":20,\"summaryStyle\":\"concise\"}",
+          "description": "Summarize a well-known pangram sentence with a concise summary limited to 20 words."
+        },
+        {
+          "inputJson": "{\"text\":\"In 2023, renewable energy sources saw unprecedented growth due to technological advances and policy changes worldwide.\",\"maxLength\":30,\"summaryStyle\":\"bulleted\"}",
+          "description": "Create a bulleted summary highlighting the main points about renewable energy growth in 2023."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateArticle",
+      "description": "Generates a coherent, structured article based on a given topic, intended audience, and desired length. Accepts inputs detailing topic, style, keywords, and language, then produces a formatted article text with an optional title and summary.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Main subject or theme for the article to cover.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "audience",
+          "type": "string",
+          "description": "Target audience profile or demographic for tailoring content tone and complexity.",
+          "required": false,
+          "defaultValue": "general"
+        },
+        {
+          "name": "articleLength",
+          "type": "number",
+          "description": "Approximate desired length of the article in words.",
+          "required": false,
+          "defaultValue": "500"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code for the article output, e.g., 'en' for English.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Writing style or tone, such as formal, casual, technical, or persuasive.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of important keywords or phrases that should be included in the article.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeSummary",
+          "type": "boolean",
+          "description": "Whether to include a brief summary paragraph at the start of the article.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete article text, including title, body, and optional summary."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create a full-length article on a specified topic for presentations, blogs, newsletters, or reports, customized by audience, length, and style. It helps quickly generate structured, coherent content ready for editing or publication.",
+        "limitations": "The tool may produce generic or overly formal content and might not replace expert-authored articles requiring deep domain knowledge or citations. It does not perform fact-checking or source attribution.",
+        "examples": [
+          "Generate a 1000-word article on climate change targeted to high school students in a casual style including keywords 'global warming', 'carbon emissions'.",
+          "Produce a technical article about machine learning in English, approx. 1500 words, formal tone, with a summary.",
+          "Create a brief persuasive article about the benefits of remote work for a general audience, around 700 words."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "article writing",
+        "text generation",
+        "writing assistant",
+        "blog content",
+        "AI writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Benefits of Urban Gardening\",\"audience\":\"home gardeners\",\"articleLength\":800,\"language\":\"en\",\"style\":\"casual\",\"keywords\":[\"sustainability\",\"health benefits\"],\"includeSummary\":true}",
+          "description": "Generate an 800-word casual article on urban gardening emphasizing sustainability and health benefits for home gardeners, including a summary."
+        },
+        {
+          "inputJson": "{\"topic\":\"Advancements in Renewable Energy Technologies\",\"articleLength\":1200,\"style\":\"technical\",\"includeSummary\":false}",
+          "description": "Generate a 1200-word technical article about recent advancements in renewable energy technologies without a summary."
+        },
+        {
+          "inputJson": "{\"topic\":\"Tips for Effective Remote Team Communication\",\"audience\":\"business professionals\",\"articleLength\":600,\"style\":\"formal\",\"includeSummary\":true}",
+          "description": "Generate a formal 600-word article with a summary on best practices for remote team communication aimed at business professionals."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateBlogPost",
+      "description": "Generates a detailed blog post based on a given topic, target audience, and style preferences. Accepts inputs including topic keywords, desired length, writing tone, and additional sections. Processes this data to create a structured, coherent blog post draft suitable for digital publishing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Main subject or theme for the blog post to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Intended readers or demographic for tailoring language and style.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "postLength",
+          "type": "number",
+          "description": "Approximate length of the blog post in words.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Writing style or tone such as formal, casual, or conversational.",
+          "required": false,
+          "defaultValue": "conversational"
+        },
+        {
+          "name": "includeSections",
+          "type": "array",
+          "description": "Optional list of specific sections to include such as introduction, FAQ, conclusion.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of keywords or phrases to emphasize for SEO purposes.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated blog post content including title, formatted body text divided by sections, and a summary."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to quickly draft comprehensive blog posts tailored by topic, audience, tone, or length, especially for content marketing, SEO, or thought leadership. It supports generating content frameworks efficiently by providing structured text areas.",
+        "limitations": "Cannot replace expert domain-specific knowledge or fact-checking; generated posts may require review and editing for accuracy and style conformity.",
+        "examples": [
+          "Generate a 1000-word blog post about benefits of remote work for tech professionals in a formal tone.",
+          "Create a casual, 600-word blog entry introducing beginner yoga poses, including an FAQ section.",
+          "Write a conversational blog post on healthy meal prep tips targeting college students."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "generation",
+        "blog",
+        "writing",
+        "SEO",
+        "marketing",
+        "digital-content"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"sustainable travel\",\"targetAudience\":\"eco-conscious travelers\",\"postLength\":900,\"tone\":\"informative\",\"includeSections\":[\"introduction\",\"tips\",\"conclusion\"],\"keywords\":[\"eco-friendly travel\",\"carbon footprint\",\"green hotels\"]}",
+          "description": "Generate a 900-word informative blog post on sustainable travel for eco-conscious travelers including introduction, tips, and conclusion sections focusing on eco-friendly travel keywords."
+        },
+        {
+          "inputJson": "{\"topic\":\"home workout routines\",\"postLength\":700,\"tone\":\"casual\",\"keywords\":[\"no equipment\",\"quick workouts\"]}",
+          "description": "Create a 700-word casual blog post about home workout routines emphasizing quick workouts requiring no equipment."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateDocument",
+      "description": "Generates a structured digital document based on provided content, style preferences, and formatting options. Accepts text inputs such as title, sections, and optional images or tables, then produces a formatted document output in specified file formats such as PDF, DOCX, or HTML.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the document to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section objects containing headings and content paragraphs for the document body.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Optional design style for the document (e.g., formal, modern, minimalist).",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to include a table of contents based on section headings.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The file format for the generated document output (pdf, docx, html).",
+          "required": true,
+          "defaultValue": "pdf"
+        },
+        {
+          "name": "authorName",
+          "type": "string",
+          "description": "Optional author name to include in the document metadata or header/footer.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated document as a base64 encoded string along with metadata such as file name and format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a well-structured document for reports, proposals, summaries, or presentations based on given textual content and formatting preferences. Ideal for automating document creation workflows and producing outputs in common file formats.",
+        "limitations": "Does not support complex media embedding such as videos or interactive content. Cannot perform extensive graphic design or layout customization beyond provided styles.",
+        "examples": [
+          "Create a business report document with sections and export as PDF.",
+          "Generate a project proposal in DOCX with a professional style and table of contents.",
+          "Produce an HTML formatted document for web publishing based on provided article text."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "document",
+        "generate",
+        "pdf",
+        "docx",
+        "report",
+        "automation",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Annual Sales Report\",\"sections\":[{\"heading\":\"Executive Summary\",\"content\":\"This year sales increased by 20%.\"},{\"heading\":\"Detailed Analysis\",\"content\":\"Our top performing region was...\"}],\"style\":\"formal\",\"includeTableOfContents\":true,\"outputFormat\":\"pdf\",\"authorName\":\"Jane Doe\"}",
+          "description": "Generate a formal PDF sales report with title, multiple sections, table of contents, and author name."
+        },
+        {
+          "inputJson": "{\"title\":\"Project Proposal\",\"sections\":[{\"heading\":\"Introduction\",\"content\":\"The project aims to...\"},{\"heading\":\"Budget\",\"content\":\"Estimated cost is...\"}],\"style\":\"modern\",\"includeTableOfContents\":false,\"outputFormat\":\"docx\"}",
+          "description": "Create a modern style project proposal document as a DOCX file without a table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createReference",
+      "description": "Creates a formatted bibliographic reference entry from structured input data. Accepts source details such as author names, title, publication date, and source type, then returns a properly formatted reference string in a selected citation style (e.g., APA, MLA, Chicago).",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of source to reference, such as book, journal, website, or report.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of author objects, each with 'firstName' and 'lastName' strings.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the source or document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationDate",
+          "type": "string",
+          "description": "Publication date in ISO format (YYYY-MM-DD) or year only.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publisher",
+          "type": "string",
+          "description": "Name of the publisher or publishing organization.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL of the source if it is an online reference.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format the reference (e.g. APA, MLA, Chicago).",
+          "required": true,
+          "defaultValue": "APA"
+        },
+        {
+          "name": "edition",
+          "type": "string",
+          "description": "Edition information if applicable (e.g. 2nd edition).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "volume",
+          "type": "string",
+          "description": "Volume number if applicable for journals or multi-volume works.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "issue",
+          "type": "string",
+          "description": "Issue number if applicable for journals.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted reference string under 'formattedReference' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating bibliographic references for academic papers, articles, reports, or digital content requiring standardized source citations. It automates the creation of properly styled references from detailed source metadata to ensure formatting accuracy and save time.",
+        "limitations": "This tool does not fetch or validate source metadata automatically; all input details must be provided accurately. It supports common citation styles but may not cover all niche or updated style variants.",
+        "examples": [
+          "Create an APA format reference for a book with authors, title, publication year, and publisher.",
+          "Generate an MLA citation for a journal article including volume and issue numbers.",
+          "Produce a Chicago style citation for an online report with URL and publication date."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "reference",
+        "citation",
+        "bibliography",
+        "academic",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceType\":\"book\",\"authors\":[{\"firstName\":\"John\",\"lastName\":\"Doe\"},{\"firstName\":\"Jane\",\"lastName\":\"Smith\"}],\"title\":\"Introduction to Testing\",\"publicationDate\":\"2018-05-01\",\"publisher\":\"Tech Press\",\"citationStyle\":\"APA\",\"edition\":\"2nd edition\"}",
+          "description": "Create an APA style reference for a book with two authors, publisher, and edition."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"journal\",\"authors\":[{\"firstName\":\"Alice\",\"lastName\":\"Brown\"}],\"title\":\"Advances in AI Research\",\"publicationDate\":\"2023\",\"publisher\":\"Science Journal\",\"citationStyle\":\"MLA\",\"volume\":\"34\",\"issue\":\"2\"}",
+          "description": "Generate an MLA citation for a journal article with volume and issue numbers."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"website\",\"authors\":[{\"firstName\":\"Mark\",\"lastName\":\"Lee\"}],\"title\":\"Understanding Web Security\",\"publicationDate\":\"2022-11-15\",\"url\":\"https://www.websec.com/article\",\"citationStyle\":\"Chicago\"}",
+          "description": "Produce a Chicago style citation for an online article with URL."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.generateReport",
+      "description": "Generates a structured written report based on user-provided data, topic, and formatting preferences. The tool accepts input content (text, data summary, or analytics), report type, and optional sections to include. It processes these inputs to produce a coherent report document in text or markdown format, suitable for business, technical, or summary purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme of the report to generate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contentData",
+          "type": "string",
+          "description": "Raw textual content, data summary, or analytics to incorporate into the report.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "reportType",
+          "type": "string",
+          "description": "The style or category of the report, such as business, technical, summary, or progress.",
+          "required": false,
+          "defaultValue": "summary"
+        },
+        {
+          "name": "includeSections",
+          "type": "array",
+          "description": "List of specific sections to include in the report, e.g., ['Introduction', 'Analysis', 'Conclusion'].",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The output format for the report, such as 'text' or 'markdown'.",
+          "required": false,
+          "defaultValue": "text"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language code for the report content, e.g., 'en' for English.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "pageLength",
+          "type": "number",
+          "description": "Approximate desired length of the report in pages or sections.",
+          "required": false,
+          "defaultValue": "3"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated report text and metadata including topic and format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a concise, structured report is needed from provided data or content inputs, such as for generating business progress reports, technical reviews, or executive summaries automatically extracted from raw inputs. It aids in converting unstructured or semi-structured information into readable documents.",
+        "limitations": "This tool does not perform deep domain-specific analysis or data validation. It cannot replace expert-written reports needing complex domain knowledge or highly customized formatting beyond the basic templates.",
+        "examples": [
+          "Generate a business report summarizing quarterly sales data.",
+          "Create a technical report analyzing system performance logs.",
+          "Produce a concise project summary report with key milestones and risks."
+        ]
+      },
+      "tags": [
+        "content",
+        "report",
+        "generation",
+        "summary",
+        "business",
+        "technical",
+        "documentation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Quarterly Sales Analysis\",\"contentData\":\"Sales increased by 15% compared to last quarter with significant growth in the EMEA region.\",\"reportType\":\"business\",\"includeSections\":[\"Introduction\",\"Data Analysis\",\"Conclusion\"],\"format\":\"markdown\",\"language\":\"en\",\"pageLength\":4}",
+          "description": "Generate a markdown formatted business report on quarterly sales with specified sections."
+        },
+        {
+          "inputJson": "{\"topic\":\"Server Performance Review\",\"contentData\":\"CPU usage spiked during peak hours causing latency issues. Memory usage remained stable.\",\"reportType\":\"technical\",\"format\":\"text\",\"language\":\"en\"}",
+          "description": "Create a plain text technical report focusing on server performance with provided observations."
+        },
+        {
+          "inputJson": "{\"topic\":\"Project Summary\",\"contentData\":\"All milestones met on time; budget usage at 95%. Minor risks associated with resource allocation.\",\"reportType\":\"summary\",\"pageLength\":2}",
+          "description": "Produce a brief project summary report with key achievements and risks."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCitation",
+      "description": "Generates a properly formatted citation string based on provided bibliographic information and the specified citation style. Accepts details like author(s), title, publication year, publisher, and outputs the citation according to styles such as APA, MLA, or Chicago.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of author names in 'LastName, FirstName' format for the citation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the work to be cited (e.g., book title, article title).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationYear",
+          "type": "number",
+          "description": "Year when the work was published.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publisher",
+          "type": "string",
+          "description": "Name of the publisher or journal name where the work was published.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format the citation in (e.g., 'APA', 'MLA', 'Chicago').",
+          "required": true,
+          "defaultValue": "APA"
+        },
+        {
+          "name": "edition",
+          "type": "string",
+          "description": "Edition information of the work if applicable (e.g., '2nd edition').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL of online sources, if applicable, included in the citation.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessDate",
+          "type": "string",
+          "description": "Date when an online source was accessed, in YYYY-MM-DD format, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted citation string and the style used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate accurately formatted citations from bibliographic data for academic papers, articles, or digital content in various citation styles. It helps automate citation creation to ensure correctness and saves time compared to manual formatting.",
+        "limitations": "This tool cannot verify the factual accuracy of the bibliographic data provided or fetch missing metadata automatically. It also does not support highly specialized or less common citation styles beyond core popular ones.",
+        "examples": [
+          "Generate an APA style citation for a book with authors, title, year, and publisher.",
+          "Create an MLA format citation for an online article including URL and access date.",
+          "Produce a Chicago style citation with multiple authors and edition info."
+        ]
+      },
+      "tags": [
+        "citation",
+        "content-creation",
+        "academic-writing",
+        "bibliography",
+        "reference",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Understanding AI\",\"publicationYear\":2021,\"publisher\":\"Tech Publishers\",\"citationStyle\":\"APA\"}",
+          "description": "Generate an APA citation for a book with two authors, title, year, and publisher."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Brown, Lisa\"],\"title\":\"Advances in Machine Learning\",\"publicationYear\":2020,\"url\":\"https://example.com/article\",\"accessDate\":\"2023-04-12\",\"citationStyle\":\"MLA\"}",
+          "description": "Generate an MLA citation for an online article with one author, URL, and access date."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Green, Michael\",\"Taylor, Anne\"],\"title\":\"Data Science Handbook\",\"publicationYear\":2019,\"publisher\":\"Data Press\",\"edition\":\"3rd edition\",\"citationStyle\":\"Chicago\"}",
+          "description": "Generate a Chicago style citation for a third edition book with two authors."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createLink",
+      "description": "Generates a formatted hyperlink based on input parameters including URL, display text, and optional attributes such as title, target, and CSS classes. It validates the URL and outputs a properly constructed HTML anchor tag string for embedding in digital content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The destination URL for the link. Must be a valid URL starting with http:// or https://",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "displayText",
+          "type": "string",
+          "description": "The text to display for the hyperlink. If empty, the URL itself will be used as the display text.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional tooltip text that appears on hover over the link.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "openInNewTab",
+          "type": "boolean",
+          "description": "Whether the link should open in a new browser tab or window. Defaults to false.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "cssClasses",
+          "type": "array",
+          "description": "An array of CSS class names to apply to the anchor tag for styling purposes.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "rel",
+          "type": "string",
+          "description": "Optional value for the 'rel' attribute specifying the relationship between current page and the linked URL (e.g., 'nofollow', 'noopener').",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the full HTML anchor tag string as 'htmlString' representing the link ready for content embedding."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create standardized, well-formed HTML links programmatically from raw input parameters such as URL and link text, ensuring attributes like target and CSS classes are consistently applied for web content creation or editing.",
+        "limitations": "This tool does not verify the availability or safety of the URL beyond basic format checking, nor does it generate URLs or fetch metadata from the link target.",
+        "examples": [
+          "Create a link to https://example.com with the display text 'Example Website' opening in a new tab and styled with classes 'btn' and 'primary'.",
+          "Generate a simple link for the URL https://openai.com with no display text to default to showing the URL itself.",
+          "Build a link with title tooltip 'Go to Documentation', opening in the current tab, and rel attribute 'noopener' to ensure security."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "HTML",
+        "link generation",
+        "web",
+        "hyperlink",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"Example Website\",\"openInNewTab\":true,\"cssClasses\":[\"btn\",\"primary\"]}",
+          "description": "Creates a link to example.com with custom display text, that opens in a new tab and includes button styling classes."
+        },
+        {
+          "inputJson": "{\"url\":\"https://openai.com\",\"displayText\":\"\"}",
+          "description": "Generates a simple link using the URL itself as the display text, with default behavior opening in the same tab."
+        },
+        {
+          "inputJson": "{\"url\":\"https://docs.example.org\",\"displayText\":\"Documentation\",\"title\":\"Go to Documentation\",\"openInNewTab\":false,\"rel\":\"noopener\"}",
+          "description": "Creates a link to documentation with a title attribute, that opens in the same tab with a security-related rel attribute."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createQuote",
+      "description": "Generates a formatted inspirational or thematic quote based on provided text or keywords. Accepts input as a custom quote or keywords and outputs a styled quote object with text, author, and theme metadata.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The exact quote text to create. If empty, keywords will be used to generate a relevant quote.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Name of the person who said the quote. Defaults to 'Unknown' if not provided.",
+          "required": false,
+          "defaultValue": "\"Unknown\""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of keywords to generate a quote about if 'text' is empty. Ignored if 'text' is provided.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Theme or category of the quote such as 'motivation', 'love', or 'wisdom' for styling and context.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citation",
+          "type": "string",
+          "description": "Optional citation or source info for the quote (e.g., book title or speech).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted quote text, author, theme, and optional citation metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate or format quotes for content such as articles, social media posts, presentations, or creative projects. It assists in creating customized or generated quotes with metadata, suitable for inspirational or thematic contexts.",
+        "limitations": "The tool cannot verify the authenticity of quotes or provide real-time citations. Generated quotes based on keywords are approximations and not guaranteed to be original or accurate.",
+        "examples": [
+          "Create an inspirational quote about perseverance by specifying keywords ['perseverance', 'strength'].",
+          "Format a provided quote text with author and theme metadata.",
+          "Generate a quote with a custom citation from a famous speech."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "quote",
+        "inspirational",
+        "text generation",
+        "formatting",
+        "creative writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"author\":\"Franklin D. Roosevelt\",\"theme\":\"motivation\"}",
+          "description": "Format a known motivational quote with author and theme."
+        },
+        {
+          "inputJson": "{\"keywords\":[\"courage\",\"challenge\"],\"theme\":\"strength\"}",
+          "description": "Generate a custom quote about courage and challenge with a strength theme."
+        },
+        {
+          "inputJson": "{\"text\":\"To be, or not to be, that is the question.\",\"author\":\"William Shakespeare\",\"citation\":\"Hamlet, Act 3, Scene 1\",\"theme\":\"philosophy\"}",
+          "description": "Format a classic philosophical quote with citation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createHeading",
+      "description": "Generates a formatted heading string based on the provided text, heading level, and optional style attributes. It accepts plain text input and outputs a heading formatted for HTML or markdown, supporting customization of heading level (1-6), text alignment, and additional CSS classes or markdown syntax.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The text content to be used as the heading.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "level",
+          "type": "number",
+          "description": "Heading level from 1 to 6, indicating the importance and size of the heading.",
+          "required": true,
+          "defaultValue": "1"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format for the heading, e.g., 'html' or 'markdown'.",
+          "required": false,
+          "defaultValue": "html"
+        },
+        {
+          "name": "textAlign",
+          "type": "string",
+          "description": "Optional text alignment: 'left', 'center', or 'right'. Applies CSS styles in HTML or alignment hints in markdown.",
+          "required": false,
+          "defaultValue": "left"
+        },
+        {
+          "name": "cssClasses",
+          "type": "array",
+          "description": "Optional array of CSS class names to add to the heading element (only applicable in HTML format).",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted heading string as 'headingString'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating structured content documents, web pages, or markdown files where headings with specific levels and styles are required to organize content clearly and semantically. It helps format headings consistently across content types, supporting output customization.",
+        "limitations": "This tool only produces formatted heading strings and does not create full documents or validate surrounding content context. It does not support complex styling beyond text alignment and CSS classes in HTML or basic formatting in markdown.",
+        "examples": [
+          "Create a level 2 HTML heading titled 'Introduction' centered with a CSS class 'main-heading'.",
+          "Generate a markdown level 3 heading reading 'Features' with left alignment.",
+          "Produce a plain level 1 heading 'Welcome' in HTML with default left alignment and no extra classes."
+        ]
+      },
+      "tags": [
+        "content",
+        "heading",
+        "formatting",
+        "html",
+        "markdown",
+        "text",
+        "web"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"Introduction\",\"level\":2,\"format\":\"html\",\"textAlign\":\"center\",\"cssClasses\":[\"main-heading\"]}",
+          "description": "Create a centered level 2 HTML heading with class 'main-heading'."
+        },
+        {
+          "inputJson": "{\"text\":\"Features\",\"level\":3,\"format\":\"markdown\",\"textAlign\":\"left\"}",
+          "description": "Generate a left aligned level 3 heading in markdown format."
+        },
+        {
+          "inputJson": "{\"text\":\"Welcome\",\"level\":1}",
+          "description": "Produce a level 1 HTML heading with default alignment and no CSS classes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createConversion",
+      "description": "Generates a conversion analytics report by processing raw event or user interaction data. Accepts input datasets including visitor actions, timestamps, and outcomes, calculates conversion rates for specified goals or funnels, and outputs a detailed summary with key metrics and visualizations in JSON format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "array",
+          "description": "Array of event objects representing user interactions and outcomes, each with timestamp and event type.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "conversionGoal",
+          "type": "string",
+          "description": "The specific goal or event name that defines a conversion (e.g., 'purchase', 'signup').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timeframeStart",
+          "type": "string",
+          "description": "ISO 8601 formatted start datetime for filtering events to analyze.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "timeframeEnd",
+          "type": "string",
+          "description": "ISO 8601 formatted end datetime for filtering events to analyze.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "funnelSteps",
+          "type": "array",
+          "description": "Ordered list of event names that define the conversion funnel steps, to calculate drop-off rates if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeVisualizations",
+          "type": "boolean",
+          "description": "Whether to include basic data visualizations (e.g., conversion rate over time) in output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "minEventsThreshold",
+          "type": "number",
+          "description": "Minimum number of events required to generate reliable metrics; below this, warnings are included.",
+          "required": false,
+          "defaultValue": "10"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing conversion metrics including total visitors, conversions count, conversion rate, funnel step drop-offs, and optional visualizations as base64 encoded images or data URLs."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to compute and report conversion metrics and funnel analytics from raw event data in marketing, sales, or user engagement scenarios. It is suitable for generating summaries that inform campaign effectiveness and optimize user journeys.",
+        "limitations": "This tool does not perform real-time data streaming analysis, advanced predictive modeling, or detailed user segmentation beyond funnel steps. It assumes input data is already cleaned and formatted appropriately.",
+        "examples": [
+          "Calculate the conversion rate for 'purchase' events between two dates.",
+          "Analyze funnel drop-off rates for a multi-step signup process.",
+          "Generate a conversion report including visual graphs from website clickstream data."
+        ]
+      },
+      "tags": [
+        "conversion",
+        "analytics",
+        "content-creation",
+        "reporting",
+        "marketing",
+        "funnel",
+        "metrics"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":[{\"userId\":\"u1\",\"event\":\"pageView\",\"timestamp\":\"2024-06-01T10:00:00Z\"},{\"userId\":\"u1\",\"event\":\"signup\",\"timestamp\":\"2024-06-01T10:05:00Z\"},{\"userId\":\"u2\",\"event\":\"pageView\",\"timestamp\":\"2024-06-01T11:00:00Z\"}],\"conversionGoal\":\"signup\",\"timeframeStart\":\"2024-06-01T00:00:00Z\",\"timeframeEnd\":\"2024-06-02T00:00:00Z\",\"includeVisualizations\":true}",
+          "description": "Calculate sign-up conversion rate between June 1 and June 2 with visualizations."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Conversion",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createText",
+      "description": "Generates customized textual content based on user-provided prompts and content parameters. Accepts inputs like topic, style, length, and tone, then produces coherent and contextually appropriate text output suitable for articles, posts, or other written materials.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme for the generated text.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired length of the text in words.",
+          "required": false,
+          "defaultValue": "300"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The style or mood of the text, such as formal, casual, or persuasive.",
+          "required": false,
+          "defaultValue": "neutral"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The output format for the text, e.g. plain, markdown, or html.",
+          "required": false,
+          "defaultValue": "plain"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "A list of key terms or phrases to be included in the text.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated text content as a string and metadata about the generation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create coherent, contextually relevant written content from scratch based on a topic and style parameters. Ideal for generating articles, blog posts, summaries, or other textual content automatically.",
+        "limitations": "Cannot guarantee factual accuracy or up-to-date information; not suitable for complex technical writing requiring precise domain expertise or sensitive content.",
+        "examples": [
+          "Create an engaging blog post about climate change in a casual tone about 500 words.",
+          "Generate a formal summary of machine learning advancements including specified keywords.",
+          "Write a persuasive text encouraging reading of a new book with specified tone and length."
+        ]
+      },
+      "tags": [
+        "text-generation",
+        "content-creation",
+        "writing",
+        "article",
+        "blogging",
+        "copywriting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Benefits of daily meditation\",\"length\":400,\"tone\":\"informal\",\"format\":\"markdown\",\"keywords\":[\"mindfulness\",\"stress reduction\"]}",
+          "description": "Generate an informal 400-word markdown article on daily meditation and include keywords mindfulness and stress reduction."
+        },
+        {
+          "inputJson": "{\"topic\":\"Latest trends in AI\",\"length\":200,\"tone\":\"formal\",\"format\":\"plain\",\"keywords\":[]}",
+          "description": "Create a formal 200-word plain text summary discussing the latest AI trends without specific keywords."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createTrend",
+      "description": "Generates a data-driven trend report based on input datasets or keywords. Accepts time-series data or keyword lists related to a topic, analyzes frequency and growth patterns over a specified period, and outputs a structured summary of trend dynamics with relevant metrics and visualization pointers.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "dataSource",
+          "type": "string",
+          "description": "URL or identifier of the data source containing time-series or keyword frequency data to analyze for trend creation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of keywords or phrases to focus the trend analysis on when dataset contains multiple topics.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "startDate",
+          "type": "string",
+          "description": "ISO 8601 formatted date string to define the start of the analysis period.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "endDate",
+          "type": "string",
+          "description": "ISO 8601 formatted date string to define the end of the analysis period.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "granularity",
+          "type": "string",
+          "description": "Time granularity for trend analysis such as 'daily', 'weekly', or 'monthly'.",
+          "required": false,
+          "defaultValue": "weekly"
+        },
+        {
+          "name": "includeVisualHints",
+          "type": "boolean",
+          "description": "Flag indicating whether to include suggestions for visualizations that represent the trend clearly.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the trend analysis summary including trend strength metrics, growth rates, key data points, and optional visualization hints."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create a clear, data-based summary of trend patterns over time for specific keywords or topics from actual datasets. It helps synthesize complex frequency data into actionable insights, supporting content creation such as market reports, social media strategy, or research briefs.",
+        "limitations": "This tool does not fetch raw data automatically and requires properly formatted input data sources. It cannot perform real-time trend prediction beyond given data or analyze sentiment beyond frequency and growth patterns.",
+        "examples": [
+          "Generate a trend report for 'electric vehicles' keyword frequency on Twitter over the last year with weekly granularity.",
+          "Create a trend summary from a time-series dataset of product sales data from Jan 1 2023 to Jun 1 2023 to identify emerging consumer interests.",
+          "Analyze multiple keywords related to 'home fitness' for the past six months to spot rising trends and generate visualization suggestions."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "analytics",
+        "trend-analysis",
+        "data-driven",
+        "report-generation",
+        "time-series",
+        "keywords"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dataSource\":\"https://example.com/datasets/twitter_keyword_freq.json\",\"keywords\":[\"electric vehicles\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\",\"granularity\":\"weekly\",\"includeVisualHints\":true}",
+          "description": "Generate a weekly trend report on the popularity of 'electric vehicles' from Twitter data for 2023."
+        },
+        {
+          "inputJson": "{\"dataSource\":\"dataset://sales_2023_q1\",\"keywords\":[\"fitness tracker\",\"smartwatch\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"granularity\":\"daily\",\"includeVisualHints\":false}",
+          "description": "Create a detailed daily trend analysis for 'fitness tracker' and 'smartwatch' product sales in Q1 2023 without visualization hints."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Trend",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createEvent",
+      "description": "Creates a structured analytics event definition for digital content tracking. Accepts event name, properties, timestamp, user info, and optional metadata. Processes inputs to generate a standardized event object ready for logging or downstream analytics processing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "eventName",
+          "type": "string",
+          "description": "The name of the event to create, e.g., 'page_view' or 'button_click'",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "properties",
+          "type": "object",
+          "description": "Key-value pairs describing event attributes, e.g., {'buttonColor': 'red', 'page': 'homepage'}",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "timestamp",
+          "type": "string",
+          "description": "ISO 8601 formatted timestamp of when the event occurred (e.g., '2024-04-25T10:20:30Z'). Defaults to current time if omitted.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "userId",
+          "type": "string",
+          "description": "Unique identifier of the user who performed the event, if known",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "sessionId",
+          "type": "string",
+          "description": "Session identifier to link related events from the same user session",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Additional optional metadata for the event (e.g., device info, app version)",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured event object containing all provided inputs normalized with standard fields: eventName, properties, timestamp, userId, sessionId, and metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically generate a structured event object to log or send to an analytics system, based on given details about the event, user, and context. It standardizes event creation to ensure consistency in analytics workflows.",
+        "limitations": "This tool does not send events to analytics platforms or ensure schema validity beyond basic structure. It also does not generate events from raw logs or infer missing data automatically.",
+        "examples": [
+          "Create an event for a user clicking a signup button with button color and page info.",
+          "Generate an event representing a page view with timestamp and session ID.",
+          "Build an event for a purchase completed with user ID and additional metadata like payment method."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "analytics",
+        "event-tracking",
+        "data-logging",
+        "user-interaction",
+        "digital-marketing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"eventName\":\"button_click\",\"properties\":{\"buttonColor\":\"blue\",\"buttonText\":\"Subscribe\"},\"timestamp\":\"2024-04-25T15:22:10Z\",\"userId\":\"user_1234\",\"sessionId\":\"session_5678\",\"metadata\":{\"device\":\"mobile\",\"appVersion\":\"1.5.2\"}}",
+          "description": "Create an event for a button click with detailed properties and user/session context."
+        },
+        {
+          "inputJson": "{\"eventName\":\"page_view\",\"properties\":{\"pageUrl\":\"https://example.com/home\"}}",
+          "description": "Generate a simple page view event with default timestamp and no user info."
+        },
+        {
+          "inputJson": "{\"eventName\":\"purchase\",\"properties\":{\"itemId\":\"sku_9876\",\"price\":29.99,\"currency\":\"USD\"},\"userId\":\"user_4321\",\"metadata\":{\"paymentMethod\":\"credit_card\"}}",
+          "description": "Create a purchase event with pricing details and user identity."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Event",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createDashboard",
+      "description": "Creates a customizable analytics dashboard by processing provided datasets and user preferences. Accepts data sources and configuration settings, processes metrics and visualizations, and outputs a structured dashboard layout with charts, tables, and summary widgets suitable for web or app integration.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "dashboardTitle",
+          "type": "string",
+          "description": "The title of the dashboard to be displayed prominently.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dataSources",
+          "type": "array",
+          "description": "Array of objects representing data sources, each with identifiers and query details to fetch analytics data.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "metrics",
+          "type": "array",
+          "description": "List of metrics to be calculated and displayed, such as total sales, user engagement, conversion rate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "widgets",
+          "type": "array",
+          "description": "Configuration of visual components like charts, tables, and summary cards including type and data binding info.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Visual theme for the dashboard UI (e.g., light, dark, corporate).",
+          "required": false,
+          "defaultValue": "light"
+        },
+        {
+          "name": "refreshInterval",
+          "type": "number",
+          "description": "Time interval in seconds for automatic data refresh on the dashboard; 0 to disable auto-refresh.",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "includeFilters",
+          "type": "boolean",
+          "description": "Whether to include filter controls for users to dynamically query dashboard data.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the fully configured dashboard including layout, data bindings, and visual elements, ready for rendering or integration."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate an interactive and customizable analytics overview from multiple data sources, supporting various metrics and visualizations, to deliver insights in a user-friendly dashboard format.",
+        "limitations": "Does not perform raw data extraction or complex data cleaning; assumes input data sources are preprocessed and accessible. Does not implement rendering but provides structured layout and configuration only.",
+        "examples": [
+          "Create a sales performance dashboard showing total revenue, sales by region, and customer acquisition metrics.",
+          "Generate a user engagement dashboard with charts for daily active users and session duration.",
+          "Build a marketing campaign dashboard displaying conversion rates and ad spend with filters for date range."
+        ]
+      },
+      "tags": [
+        "dashboard",
+        "analytics",
+        "content-creation",
+        "visualization",
+        "data",
+        "metrics",
+        "business-intelligence"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dashboardTitle\":\"Sales Overview\",\"dataSources\":[{\"id\":\"ds1\",\"type\":\"database\",\"query\":\"SELECT * FROM sales_data\"}],\"metrics\":[\"totalSales\",\"salesByRegion\"],\"widgets\":[{\"type\":\"barChart\",\"metric\":\"salesByRegion\",\"title\":\"Sales by Region\"},{\"type\":\"summaryCard\",\"metric\":\"totalSales\",\"title\":\"Total Sales\"}],\"theme\":\"corporate\",\"refreshInterval\":300,\"includeFilters\":true}",
+          "description": "Create a corporate-themed sales overview dashboard with bar chart and summary card, auto-refresh every 5 minutes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Dashboard",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createAnomaly",
+      "description": "This tool accepts a dataset containing time-series or multi-dimensional metrics and applies anomaly detection algorithms to identify unusual patterns or deviations. It processes input data to highlight anomalies based on statistical thresholds, machine learning models, or user-defined criteria, and outputs a structured report listing detected anomalies with timestamps, severity scores, and contextual metadata.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "Array of data points representing observations or metric values over time or related contexts. Each data point should be an object with timestamp and metric values.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "algorithm",
+          "type": "string",
+          "description": "The anomaly detection algorithm to apply, e.g., 'statistical', 'isolationForest', 'LSTM','seasonalHybrid'.",
+          "required": false,
+          "defaultValue": "statistical"
+        },
+        {
+          "name": "sensitivity",
+          "type": "number",
+          "description": "A number between 0 and 1 indicating how sensitive the anomaly detection should be; higher values detect more anomalies but may increase false positives.",
+          "required": false,
+          "defaultValue": "0.5"
+        },
+        {
+          "name": "timeField",
+          "type": "string",
+          "description": "The name of the field in data objects that represents the timestamp or time index for each metric record.",
+          "required": false,
+          "defaultValue": "timestamp"
+        },
+        {
+          "name": "metricsFields",
+          "type": "array",
+          "description": "List of field names in the data objects to analyze for anomalies. If empty, all numeric fields will be used.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "threshold",
+          "type": "number",
+          "description": "A specific threshold value to classify an anomaly if using statistical methods; overrides sensitivity thresholds if provided.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing an array of anomalies detected. Each anomaly includes a timestamp, the metric(s) involved, the anomaly score, and a severity level or classification."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to automatically identify irregular or unexpected patterns in metric data such as system logs, user activity, financial transactions, or sensor readings to support monitoring, alerting, or root cause analysis. It is suited for scenarios requiring scalable anomaly detection based on statistical or machine learning approaches, allowing configuration of detection sensitivity and algorithms.",
+        "limitations": "The tool requires input data to be well-structured and time-indexed. It may not perform well on highly sparse or unstructured data. Domain-specific contextual interpretation of anomalies is outside its scope. The tool does not automatically explain the cause of anomalies, only identifies them.",
+        "examples": [
+          "Detect anomalies in web server request counts to identify traffic spikes or drops.",
+          "Analyze sensor data from IoT devices for unusual readings that may indicate faults.",
+          "Scan financial transactions across multiple metrics to flag suspicious activities."
+        ]
+      },
+      "tags": [
+        "anomaly-detection",
+        "analytics",
+        "content-creation",
+        "machine-learning",
+        "time-series",
+        "monitoring"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"cpu\":20,\"memory\":30},{\"timestamp\":\"2024-06-01T01:00:00Z\",\"cpu\":85,\"memory\":32},{\"timestamp\":\"2024-06-01T02:00:00Z\",\"cpu\":22,\"memory\":31}],\"algorithm\":\"statistical\",\"sensitivity\":0.7,\"timeField\":\"timestamp\",\"metricsFields\":[\"cpu\"]}",
+          "description": "Detect CPU usage anomalies in hourly server metrics using default statistical method and a higher sensitivity."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Anomaly",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createSession",
+      "description": "Creates a new analytics session record based on input parameters including user ID, session start time, device info, and optional metadata. Validates inputs and returns a structured session object with a unique session ID and timestamps for tracking user activity.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "userId",
+          "type": "string",
+          "description": "Unique identifier for the user whose session is being created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "startTime",
+          "type": "string",
+          "description": "ISO 8601 formatted timestamp indicating when the session started.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "deviceInfo",
+          "type": "object",
+          "description": "An object containing details about the user's device such as device type, operating system, and browser.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional additional data related to the session, such as campaign info or entry URL.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "isNewUser",
+          "type": "boolean",
+          "description": "Flag to indicate if this session belongs to a new user or returning user.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the newly created session including sessionId, userId, startTime, deviceInfo, metadata, and isNewUser flag."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create and record user interaction sessions for analytics purposes, including tracking start time, device context, and custom metadata. It's suitable for logging sessions in web or mobile applications to support analytics and activity monitoring.",
+        "limitations": "This tool only creates the session object but does not handle session updates or termination tracking. It does not store the session in a database; that requires external integration.",
+        "examples": [
+          "Create a session when a user logs in to start tracking their activity.",
+          "Log a session with device and campaign metadata on a marketing landing page visit.",
+          "Start a session for a new user with basic device info for analytics collection."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "session",
+        "analytics",
+        "user-tracking",
+        "data-collection"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"userId\":\"user_12345\",\"startTime\":\"2024-04-27T12:00:00Z\",\"deviceInfo\":{\"deviceType\":\"mobile\",\"os\":\"iOS 16\",\"browser\":\"Safari\"},\"metadata\":{\"campaign\":\"spring_sale\"},\"isNewUser\":true}",
+          "description": "Creating a session for a new iOS mobile user coming from a spring sale campaign."
+        },
+        {
+          "inputJson": "{\"userId\":\"user_67890\",\"startTime\":\"2024-04-27T15:30:00Z\"}",
+          "description": "Creating a simple session record for a returning user with minimal data."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Session",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createParagraph",
+      "description": "Generates a coherent paragraph of text based on a given topic and style. Accepts inputs like topic keywords and tone, and outputs a fully formed paragraph suitable for articles, blogs, or reports.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme the paragraph should focus on.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone of the paragraph, e.g., formal, casual, persuasive, informative.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate number of sentences to generate in the paragraph.",
+          "required": false,
+          "defaultValue": "5"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include examples or illustrative details in the paragraph.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language for the generated paragraph, defaults to English.",
+          "required": false,
+          "defaultValue": "English"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated paragraph text as a string under the 'paragraph' property."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a focused paragraph of prose about a specific topic, adapting tone and length based on context for content creation tasks such as article writing, summarization, or report generation.",
+        "limitations": "The tool cannot generate highly specialized technical paragraphs requiring deep domain expertise, nor can it guarantee factual accuracy; it is best suited for general content creation and illustrative writing.",
+        "examples": [
+          "Create an informative 5-sentence paragraph about climate change.",
+          "Generate a casual paragraph about the benefits of meditation including examples.",
+          "Write a formal paragraph on data privacy in English, 7 sentences long."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "text generation",
+        "paragraph writing",
+        "creative writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"climate change\",\"tone\":\"informative\",\"length\":5,\"includeExamples\":false,\"language\":\"English\"}",
+          "description": "Generate an informative paragraph about climate change with 5 sentences."
+        },
+        {
+          "inputJson": "{\"topic\":\"benefits of meditation\",\"tone\":\"casual\",\"length\":6,\"includeExamples\":true,\"language\":\"English\"}",
+          "description": "Create a casual paragraph explaining meditation benefits with illustrative examples."
+        },
+        {
+          "inputJson": "{\"topic\":\"data privacy\",\"tone\":\"formal\",\"length\":7,\"includeExamples\":false,\"language\":\"English\"}",
+          "description": "Write a formal 7 sentence paragraph about data privacy in English."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createSentence",
+      "description": "Generates a coherent and contextually relevant sentence based on provided keywords, tone, and complexity level. Accepts keywords as an array of strings, a tone specifying the style (e.g., formal, casual), and a complexity level (simple, intermediate, advanced). Outputs a well-formed sentence incorporating the inputs.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "An array of keywords that should be included or reflected in the generated sentence.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The tone or style of the sentence, e.g., formal, casual, informative, persuasive.",
+          "required": false,
+          "defaultValue": "\"neutral\""
+        },
+        {
+          "name": "complexity",
+          "type": "string",
+          "description": "The complexity level of the sentence, such as simple, intermediate, or advanced vocabulary and structure.",
+          "required": false,
+          "defaultValue": "\"intermediate\""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of words allowed in the generated sentence.",
+          "required": false,
+          "defaultValue": "30"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated sentence as a string and metadata: word count and applied tone."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a single, clear, and contextually appropriate sentence based on specific keywords or desired writing style, such as for summarizing key points, writing prompts, or creative content generation.",
+        "limitations": "Cannot generate multiple sentences or paragraphs. May produce sentences that lack deep factual accuracy. Does not handle non-English languages or specialized jargon well.",
+        "examples": [
+          "Create a formal sentence including keywords 'climate change' and 'policy'.",
+          "Generate a casual sentence using keywords 'coffee' and 'morning'.",
+          "Produce a simple sentence with keywords 'dog' and 'park' and a max length of 10 words."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "sentence-generation",
+        "text",
+        "natural-language",
+        "writing",
+        "creative",
+        "AI"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"keywords\":[\"climate change\",\"policy\"],\"tone\":\"formal\",\"complexity\":\"advanced\"}",
+          "description": "Generate an advanced formal sentence containing 'climate change' and 'policy'."
+        },
+        {
+          "inputJson": "{\"keywords\":[\"coffee\",\"morning\"],\"tone\":\"casual\",\"complexity\":\"simple\"}",
+          "description": "Generate a simple casual sentence including 'coffee' and 'morning'."
+        },
+        {
+          "inputJson": "{\"keywords\":[\"dog\",\"park\"],\"maxLength\":10}",
+          "description": "Generate a sentence about 'dog' and 'park' with a maximum length of 10 words."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createWord",
+      "description": "Generates a new word based on specified linguistic properties such as length, parts of speech, or phonetic style. The tool accepts parameters defining the word's characteristics and produces either a neologism or a plausible word fitting the input criteria, useful for creative writing, branding, or language experiments.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Desired length of the generated word (number of characters). Ignored if zero or not provided.",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "partOfSpeech",
+          "type": "string",
+          "description": "Target part of speech for the word (e.g., noun, verb, adjective). Optional parameter to guide generation.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "phoneticStyle",
+          "type": "string",
+          "description": "Preferred phonetic style or pattern (e.g., soft, harsh, harmonious). Helps shape word phonology, optional.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "seedWord",
+          "type": "string",
+          "description": "An optional existing word to influence or base the new word on, for inspiration or morphing.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "quantity",
+          "type": "number",
+          "description": "Number of unique words to generate in one call, from 1 to 10.",
+          "required": false,
+          "defaultValue": "1"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing a list of generated words that meet the specified criteria."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to generate original or creative words for content such as brand names, fictional character names, or new terminology. It helps add originality and linguistic variety to digital content creation workflows.",
+        "limitations": "The tool does not guarantee that generated words exist in any language or their semantic meaning. It cannot generate full definitions or ensure words are suitable for all cultural contexts.",
+        "examples": [
+          "Generate a new brand name with 8 letters and a soft phonetic style.",
+          "Create three new adjectives related to speed.",
+          "Produce a single noun inspired by the word 'stream'."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "word-generation",
+        "creative-writing",
+        "branding",
+        "linguistics"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"length\":7,\"partOfSpeech\":\"noun\",\"phoneticStyle\":\"soft\",\"quantity\":1}",
+          "description": "Generate one soft-sounding noun of length 7."
+        },
+        {
+          "inputJson": "{\"seedWord\":\"light\",\"quantity\":3}",
+          "description": "Generate three words inspired by the seed word 'light'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createKPI",
+      "description": "Creates a customized Key Performance Indicator (KPI) definition based on specified business objectives and measurement parameters. Accepts input such as KPI name, target metrics, calculation logic, data sources, and reporting frequency, then outputs a structured KPI object that can be integrated into analytics dashboards or performance tracking systems.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "kpiName",
+          "type": "string",
+          "description": "The descriptive name of the KPI to be created (e.g., Monthly Revenue Growth)",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Detailed explanation of what the KPI measures and its business relevance",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetMetric",
+          "type": "string",
+          "description": "The specific metric or data field this KPI will track (e.g., revenue, conversion rate)",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "calculationFormula",
+          "type": "string",
+          "description": "The formula or logic used to calculate the KPI value from raw data (e.g., sum(revenue)/count(days))",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dataSources",
+          "type": "array",
+          "description": "List of data source names or identifiers required to compute the KPI",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "reportingFrequency",
+          "type": "string",
+          "description": "How often the KPI should be updated or reported (e.g., daily, weekly, monthly)",
+          "required": true,
+          "defaultValue": "monthly"
+        },
+        {
+          "name": "thresholds",
+          "type": "object",
+          "description": "Optional performance thresholds defining success, warning, and failure levels (e.g., {\"success\":90,\"warning\":75})",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "owner",
+          "type": "string",
+          "description": "Person or team responsible for the KPI monitoring and actions",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured KPI object containing all defined attributes, ready for storage or integration into analytics platforms"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to formalize and create well-defined KPIs for monitoring performance against business objectives. It is ideal for generating standardized KPI definitions from user inputs to ensure consistent analytics and reporting setup.",
+        "limitations": "This tool does not collect or process raw performance data; it only creates the KPI definition structure. The calculation formula should be validated externally for correctness.",
+        "examples": [
+          "Create a KPI tracking the weekly active users with a formula counting unique user IDs per week and monthly reporting.",
+          "Define a sales conversion rate KPI using the ratio of completed purchases to total visits updated daily.",
+          "Generate a KPI to measure customer satisfaction using survey score averages with quarterly reporting."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "analytics",
+        "KPI",
+        "performance-metrics",
+        "business-intelligence",
+        "data-analytics",
+        "reporting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"kpiName\":\"Monthly Revenue Growth\",\"description\":\"Measures the percentage increase in revenue compared to the previous month.\",\"targetMetric\":\"revenue\",\"calculationFormula\":\"(current_month_revenue - previous_month_revenue) / previous_month_revenue * 100\",\"dataSources\":[\"salesDatabase\"],\"reportingFrequency\":\"monthly\",\"thresholds\":{\"success\":10,\"warning\":5},\"owner\":\"finance-team\"}",
+          "description": "Create a monthly revenue growth KPI with success and warning thresholds."
+        },
+        {
+          "inputJson": "{\"kpiName\":\"Weekly Active Users\",\"targetMetric\":\"activeUsers\",\"calculationFormula\":\"count(distinct userId) per week\",\"dataSources\":[\"userActivityLogs\"],\"reportingFrequency\":\"weekly\"}",
+          "description": "Define a weekly active users KPI based on unique user count."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "KPI",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createDatabase",
+      "description": "Creates a new database schema definition for content management systems. Accepts parameters such as database type, schema name, and table definitions including fields and data types. Processes these inputs to generate a JSON-structured database schema template suitable for integration with content creation platforms or CMS backends.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "databaseType",
+          "type": "string",
+          "description": "Type of the database to create schema for, e.g., SQL, NoSQL",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "schemaName",
+          "type": "string",
+          "description": "Name of the database schema or project",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tables",
+          "type": "array",
+          "description": "Array of table definitions, each with name, fields (name and data type), and optional indexes",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTimestamps",
+          "type": "boolean",
+          "description": "Whether to include standard created_at and updated_at timestamp fields in each table",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "primaryKeyType",
+          "type": "string",
+          "description": "Data type for primary keys in tables, e.g., integer, UUID",
+          "required": false,
+          "defaultValue": "integer"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated database schema as a JSON string and metadata about the schema such as total tables and example table definitions"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to design or scaffold a database schema for a content management system or digital content platform, based on user specifications about structure and data types. It helps automate the initial creation of structured, consistent database definitions, streamlining backend content infrastructure setup.",
+        "limitations": "This tool generates schema definitions but does not create the actual physical databases or manage migrations. It also does not perform data validation rules beyond basic types.",
+        "examples": [
+          "Create a database schema with tables for articles, authors, and categories including respective fields.",
+          "Generate a NoSQL database schema suitable for a content platform tracking posts and user metadata.",
+          "Produce a SQL schema with UUID primary keys and timestamp fields included for all tables."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "database",
+        "schema generation",
+        "CMS",
+        "infrastructure",
+        "backend"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"databaseType\":\"SQL\",\"schemaName\":\"ContentManagement\",\"tables\":[{\"name\":\"Articles\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"title\",\"type\":\"string\"},{\"name\":\"content\",\"type\":\"text\"},{\"name\":\"authorId\",\"type\":\"integer\"}]},{\"name\":\"Authors\",\"fields\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"email\",\"type\":\"string\"}]}],\"includeTimestamps\":true,\"primaryKeyType\":\"integer\"}",
+          "description": "Create a SQL database schema named ContentManagement with Articles and Authors tables, including timestamp fields and integer primary keys."
+        },
+        {
+          "inputJson": "{\"databaseType\":\"NoSQL\",\"schemaName\":\"BlogPlatform\",\"tables\":[{\"name\":\"Posts\",\"fields\":[{\"name\":\"_id\",\"type\":\"UUID\"},{\"name\":\"title\",\"type\":\"string\"},{\"name\":\"body\",\"type\":\"string\"},{\"name\":\"tags\",\"type\":\"array\"}]},{\"name\":\"Users\",\"fields\":[{\"name\":\"_id\",\"type\":\"UUID\"},{\"name\":\"username\",\"type\":\"string\"}]}],\"includeTimestamps\":false,\"primaryKeyType\":\"UUID\"}",
+          "description": "Generate a NoSQL schema named BlogPlatform with Posts and Users collections using UUIDs as primary keys and no timestamp fields."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Database",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createQueue",
+      "description": "Creates a managed message queue for content creation workflows. Accepts parameters defining queue name, type (e.g., FIFO or standard), visibility timeout, and optional metadata. Returns a queue object with a unique identifier and configuration details to enable buffering, ordering, and asynchronous processing of content creation tasks.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "queueName",
+          "type": "string",
+          "description": "The unique name for the queue to be created, used to identify it in the system.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "queueType",
+          "type": "string",
+          "description": "The type of queue to create; options include 'FIFO' for ordered processing or 'Standard' for best-effort ordering.",
+          "required": true,
+          "defaultValue": "Standard"
+        },
+        {
+          "name": "visibilityTimeout",
+          "type": "number",
+          "description": "The duration (in seconds) that a message received from the queue will be invisible to other consumers while being processed.",
+          "required": false,
+          "defaultValue": "30"
+        },
+        {
+          "name": "maxMessageSize",
+          "type": "number",
+          "description": "Maximum size (in bytes) of a message allowed in the queue.",
+          "required": false,
+          "defaultValue": "262144"
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional key-value pairs to attach metadata or tags to the queue for organizational purposes.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing queueId, queueName, queueType, creationTimestamp, visibilityTimeout, maxMessageSize, and any metadata provided."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI system needs to setup a dedicated message queue to manage asynchronous tasks or events related to content creation processes such as rendering, publishing, or moderation. It is suitable for orchestrating content workflows requiring reliability, ordering, and scalable throughput.",
+        "limitations": "This tool does not handle message publishing or consumption within the queue — it only sets up and configures the queue itself. It cannot manage queue monitoring or scaling dynamically.",
+        "examples": [
+          "Create a FIFO queue named 'ContentRenderQueue' with a visibility timeout of 60 seconds.",
+          "Set up a standard queue with a 256KB message size limit named 'PublishingTasks'.",
+          "Create a queue with custom metadata tags for department 'marketing' and project 'summer_campaign'."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "queue",
+        "infrastructure",
+        "message-queue",
+        "async-processing",
+        "workflow-management"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"queueName\":\"ContentRenderQueue\",\"queueType\":\"FIFO\",\"visibilityTimeout\":60}",
+          "description": "Creates a FIFO queue named ContentRenderQueue with a 60 seconds visibility timeout."
+        },
+        {
+          "inputJson": "{\"queueName\":\"PublishingTasks\",\"queueType\":\"Standard\",\"maxMessageSize\":131072}",
+          "description": "Creates a standard type queue with max message size of 128KB named PublishingTasks."
+        },
+        {
+          "inputJson": "{\"queueName\":\"MarketingQueue\",\"queueType\":\"Standard\",\"metadata\":{\"department\":\"marketing\",\"project\":\"summer_campaign\"}}",
+          "description": "Creates a standard queue with metadata tags for organizational purposes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Queue",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCache",
+      "description": "Creates and manages an in-memory or persistent cache for digital content to speed up retrieval and reduce redundant processing. Accepts configuration parameters defining cache type, size limits, eviction policy, and optional persistence options. Returns a cache instance identifier and status indicating readiness.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "cacheName",
+          "type": "string",
+          "description": "Unique name identifier for the cache instance to create.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "cacheType",
+          "type": "string",
+          "description": "Type of cache to create, e.g., 'memory' for in-memory cache or 'disk' for persistent cache storage.",
+          "required": true,
+          "defaultValue": "memory"
+        },
+        {
+          "name": "maxSize",
+          "type": "number",
+          "description": "Maximum size of the cache in megabytes to limit memory or disk usage.",
+          "required": false,
+          "defaultValue": "100"
+        },
+        {
+          "name": "evictionPolicy",
+          "type": "string",
+          "description": "Cache eviction policy to use when the max size is reached, such as 'LRU' (Least Recently Used), 'FIFO' (First In First Out), or 'LFU' (Least Frequently Used).",
+          "required": false,
+          "defaultValue": "LRU"
+        },
+        {
+          "name": "persistencePath",
+          "type": "string",
+          "description": "File system path to store cache data if cacheType is 'disk'. Ignored otherwise.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "defaultTTL",
+          "type": "number",
+          "description": "Default time-to-live for cached items in seconds. Items expire and are removed after this time unless refreshed.",
+          "required": false,
+          "defaultValue": "3600"
+        },
+        {
+          "name": "enableCompression",
+          "type": "boolean",
+          "description": "Option to enable compression of cached content to reduce storage size at the cost of additional CPU usage.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the created cache's unique identifier and a status message confirming cache creation and configuration."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to establish a cache layer to improve performance in digital content generation or delivery pipelines. Typical scenarios include caching generated images, text snippets, or other frequently requested data to reduce recomputation or repeated fetches from slower storage.",
+        "limitations": "This tool does not handle distributed cache synchronization or multi-node cluster cache consistency. It also does not directly manage cache retrieval; it only creates and configures the cache instance.",
+        "examples": [
+          "Create a memory cache named 'imageCache' with max size 200MB and LRU eviction.",
+          "Create a persistent disk cache 'contentCache' stored at '/var/cache/content' with compression enabled.",
+          "Create a small 50MB cache for ephemeral data with a short TTL of 300 seconds."
+        ]
+      },
+      "tags": [
+        "cache",
+        "content-creation",
+        "performance",
+        "infrastructure",
+        "memory",
+        "disk",
+        "eviction",
+        "compression"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"cacheName\":\"imageCache\",\"cacheType\":\"memory\",\"maxSize\":200,\"evictionPolicy\":\"LRU\",\"defaultTTL\":3600}",
+          "description": "Create a memory cache named 'imageCache' with 200MB max size and LRU eviction policy."
+        },
+        {
+          "inputJson": "{\"cacheName\":\"contentCache\",\"cacheType\":\"disk\",\"maxSize\":500,\"evictionPolicy\":\"FIFO\",\"persistencePath\":\"/var/cache/content\",\"enableCompression\":true}",
+          "description": "Create a persistent disk cache called 'contentCache' at the specified path with FIFO eviction and compression enabled."
+        },
+        {
+          "inputJson": "{\"cacheName\":\"tempCache\",\"cacheType\":\"memory\",\"maxSize\":50,\"defaultTTL\":300}",
+          "description": "Create a small, short-lived memory cache for ephemeral data with 50MB size and 5 minutes TTL."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Cache",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createMetric",
+      "description": "Generates a customized analytic metric definition based on input parameters such as metric name, formula, description, data sources, and aggregation method. Processes these inputs to create a structured metric object usable in content analytics platforms for tracking and reporting purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "metricName",
+          "type": "string",
+          "description": "The unique name identifier for the metric to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formula",
+          "type": "string",
+          "description": "The calculation formula or expression defining how the metric value is computed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A human-readable explanation of what the metric measures and its significance.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "dataSources",
+          "type": "array",
+          "description": "List of data source identifiers used by this metric for calculation.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "aggregationMethod",
+          "type": "string",
+          "description": "The aggregation method applied to raw data (e.g., sum, average, count).",
+          "required": false,
+          "defaultValue": "sum"
+        },
+        {
+          "name": "timeFrame",
+          "type": "string",
+          "description": "The time interval over which the metric is calculated or aggregated, e.g., daily, weekly.",
+          "required": false,
+          "defaultValue": "daily"
+        },
+        {
+          "name": "filters",
+          "type": "object",
+          "description": "Optional filtering parameters defining subset of data used for metric calculation.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured JSON object representing the metric definition including name, formula, description, sources, aggregation, timeframe, and filters."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to define new analytic metrics for digital content performance measurement, for example, to track user engagement, conversion rates, or custom KPIs based on multiple data sources and aggregation rules.",
+        "limitations": "Cannot calculate or fetch real-time metric values; only generates metric definitions. The tool requires valid formula syntax and compatible data source identifiers to produce usable metrics.",
+        "examples": [
+          "Create a metric named 'AvgSessionDuration' with a formula calculating average session time from session logs, aggregated daily.",
+          "Define a custom conversion rate metric combining page views and signups data sources with a count aggregation.",
+          "Generate a metric measuring 'ContentShares' filtered by social media channels for weekly reporting."
+        ]
+      },
+      "tags": [
+        "analytics",
+        "metrics",
+        "content-creation",
+        "data-aggregation",
+        "performance-tracking"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"metricName\":\"UserEngagementScore\",\"formula\":\"(likes + comments + shares) / views\",\"description\":\"Engagement score representing user interactions per content view.\",\"dataSources\":[\"likesDB\",\"commentsDB\",\"sharesDB\",\"viewsDB\"],\"aggregationMethod\":\"sum\",\"timeFrame\":\"daily\",\"filters\":{}}",
+          "description": "Create a daily engagement score metric summing likes, comments, and shares normalized by views."
+        },
+        {
+          "inputJson": "{\"metricName\":\"WeeklyConversionRate\",\"formula\":\"conversions / visits\",\"description\":\"Rate of conversions per visit over a week.\",\"dataSources\":[\"conversionDB\",\"visitDB\"],\"aggregationMethod\":\"average\",\"timeFrame\":\"weekly\",\"filters\":{\"region\":\"NA\"}}",
+          "description": "Define a weekly average conversion rate metric filtered for North American region."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Metric",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCluster",
+      "description": "This tool accepts configuration parameters to create and initialize a computing cluster tailored for content creation workflows. It processes inputs like cluster size, node specifications, software environment, and access settings to set up a scalable infrastructure cluster. The output confirms cluster creation status and provides connection details and resource summaries.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "clusterName",
+          "type": "string",
+          "description": "Unique name identifier for the cluster to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "nodeCount",
+          "type": "number",
+          "description": "Number of nodes to include in the cluster, determining its size and capacity.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "nodeType",
+          "type": "string",
+          "description": "Specification of node hardware or virtual machine type, defining compute and memory resources per node.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "softwareStack",
+          "type": "array",
+          "description": "List of software packages or environments to install on each cluster node relevant for content creation tasks.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "autoScalingEnabled",
+          "type": "boolean",
+          "description": "Whether to enable automatic scaling of cluster nodes based on workload demand.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "region",
+          "type": "string",
+          "description": "Geographic region where the cluster will be provisioned to optimize latency and compliance.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessControl",
+          "type": "object",
+          "description": "Defines users or groups with access permissions and their permission levels for managing the cluster.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "networkSettings",
+          "type": "object",
+          "description": "Network configuration details such as VPC, subnets, and firewall rules for the cluster.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a clusterStatus object including clusterId, creationTimestamp, connectionEndpoints, nodeDetails array, and overall status message confirming the creation outcome."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to provision a dedicated computing cluster for content creation workloads, such as rendering farms, video processing clusters, or collaborative media editing environments. It helps automate infrastructure setup with specified configurations.",
+        "limitations": "Does not manage ongoing cluster monitoring or advanced orchestration beyond initial creation. It cannot modify clusters once created or handle integration with external resource managers.",
+        "examples": [
+          "Create a scalable render farm with 10 GPU nodes in US-West region.",
+          "Set up a small content creation cluster with predefined software for video editing and storage access.",
+          "Provision a development cluster with auto-scaling enabled in Europe region for collaborative media workflows."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "cluster",
+        "infrastructure",
+        "provisioning",
+        "automation",
+        "media",
+        "rendering",
+        "scalable"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"clusterName\":\"mediaRenderFarm\",\"nodeCount\":10,\"nodeType\":\"gpu-optimized\",\"softwareStack\":[\"ffmpeg\",\"blender\"],\"autoScalingEnabled\":true,\"region\":\"us-west\",\"accessControl\":{\"admin\":\"full\"},\"networkSettings\":{\"vpcId\":\"vpc-123\",\"subnets\":[\"subnet-1\",\"subnet-2\"]}}",
+          "description": "Create a GPU-optimized render farm cluster with auto-scaling in the US-West region configured for media rendering."
+        },
+        {
+          "inputJson": "{\"clusterName\":\"videoEditCluster\",\"nodeCount\":3,\"nodeType\":\"standard\",\"softwareStack\":[\"adobe-premiere\",\"davinci-resolve\"],\"autoScalingEnabled\":false,\"region\":\"eu-central\"}",
+          "description": "Set up a small content creation cluster for video editing software in the EU-Central region without auto-scaling."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Cluster",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createContainer",
+      "description": "Creates a digital content container that serves as a structured workspace or repository for organizing related media and documents. Accepts parameters defining container type, access controls, metadata tags, and initial contents, then provisions a container with corresponding storage and metadata for use in content workflows.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "containerType",
+          "type": "string",
+          "description": "Specifies the type of container to create, such as 'folder', 'album', or 'project'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "name",
+          "type": "string",
+          "description": "The display name for the container.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Optional descriptive text explaining the container’s purpose.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tags",
+          "type": "array",
+          "description": "Array of strings for categorizing or labeling the container for search and filtering.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "accessControl",
+          "type": "object",
+          "description": "Defines access permissions as an object specifying roles or users with read/write rights.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "initialContents",
+          "type": "array",
+          "description": "Optional array of identifiers or URLs for initial media or documents to include in the container.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the unique container ID, type, name, creation timestamp, and access control summary."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create a dedicated and organized container to store or manage digital content such as images, documents, or mixed media for projects or workflows. It suits scenarios requiring structured grouping with metadata and access permissions.",
+        "limitations": "Does not handle content editing or manipulation within the container; only creates and configures the container infrastructure.",
+        "examples": [
+          "Create a photo album container named 'Summer Vacation 2024' with tags 'travel','photos' and read access for user group 'friends'.",
+          "Set up a project folder container called 'Q3 Marketing' with description and access limited to the marketing team.",
+          "Create a generic container of type 'folder' named 'Archive' without initial contents and default access permissions."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "container",
+        "organization",
+        "media-management",
+        "access-control",
+        "metadata"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"containerType\":\"album\",\"name\":\"Summer Vacation 2024\",\"description\":\"Photos from the summer trip\",\"tags\":[\"travel\",\"photos\"],\"accessControl\":{\"read\":[\"group:friends\"],\"write\":[\"user:owner\"]},\"initialContents\":[\"img12345\",\"img67890\"]}",
+          "description": "Create a photo album container with specific tags and access controls, preloaded with two images."
+        },
+        {
+          "inputJson": "{\"containerType\":\"folder\",\"name\":\"Q3 Marketing\",\"description\":\"Marketing materials for Q3\",\"tags\":[\"project\",\"Q3\"],\"accessControl\":{\"read\":[\"group:marketing\"],\"write\":[\"group:marketing\"]},\"initialContents\":[]}",
+          "description": "Create a project folder container restricted to the marketing team for collaboration."
+        },
+        {
+          "inputJson": "{\"containerType\":\"folder\",\"name\":\"Archive\",\"tags\":[],\"accessControl\":{},\"initialContents\":[]}",
+          "description": "Create a generic folder container named Archive with default access and no initial contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Container",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createService",
+      "description": "Creates a new content creation service instance with specified configurations, such as service name, type (e.g., blog, video, podcast), target platform, and access permissions. It processes inputs to provision the service infrastructure and returns service details including endpoints and credentials.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "serviceName",
+          "type": "string",
+          "description": "The unique name identifier for the content creation service to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "serviceType",
+          "type": "string",
+          "description": "The type of content service to create, e.g., blog, videoChannel, podcast.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetPlatform",
+          "type": "string",
+          "description": "The platform where the content service will be deployed or integrated, e.g., YouTube, WordPress.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessPermissions",
+          "type": "object",
+          "description": "Object defining user roles and permissions for access control within the service.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "storageSizeGB",
+          "type": "number",
+          "description": "The allocated storage size in gigabytes for the service content.",
+          "required": false,
+          "defaultValue": "10"
+        },
+        {
+          "name": "enableAnalytics",
+          "type": "boolean",
+          "description": "Flag to enable or disable built-in analytics tracking for the content service.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with serviceId, serviceName, serviceType, endpoints, credentials, and status indicating the provisioning result."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically create and configure a new digital content creation service infrastructure, including setting roles, storage, and platform integration details. Ideal for automating setup in content management workflows.",
+        "limitations": "This tool cannot generate or upload actual content, nor manage ongoing service operations beyond initial creation and configuration.",
+        "examples": [
+          "Create a new video content channel service named 'TechReviews' targeting YouTube with default permissions.",
+          "Set up a podcast service called 'DailyNews' with specific access permissions and 50GB storage.",
+          "Provision a blogging service for WordPress platform with analytics disabled."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "service-provisioning",
+        "automation",
+        "infrastructure",
+        "media",
+        "platform-integration"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"serviceName\":\"TechReviews\",\"serviceType\":\"videoChannel\",\"targetPlatform\":\"YouTube\",\"accessPermissions\":{\"admin\":[\"user1\"],\"editor\":[\"user2\",\"user3\"]},\"storageSizeGB\":20,\"enableAnalytics\":true}",
+          "description": "Creates a YouTube video channel service named TechReviews with specific admin and editor permissions, 20GB storage and analytics enabled."
+        },
+        {
+          "inputJson": "{\"serviceName\":\"DailyNews\",\"serviceType\":\"podcast\",\"accessPermissions\":{\"admin\":[\"hostUser\"]},\"storageSizeGB\":50,\"enableAnalytics\":true}",
+          "description": "Sets up a podcast content creation service called DailyNews with 50GB storage, admin access for hostUser, and analytics enabled."
+        },
+        {
+          "inputJson": "{\"serviceName\":\"FoodBlog\",\"serviceType\":\"blog\",\"targetPlatform\":\"WordPress\",\"enableAnalytics\":false}",
+          "description": "Creates a WordPress blog service named FoodBlog with default storage size and analytics disabled."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Service",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createInstance",
+      "description": "Creates a new digital content instance (e.g., blog post, article, page) by accepting metadata and content input. Processes the data to initialize a structured instance with tags and status, returning the created instance's ID and summary for management or publishing workflows.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title of the content instance to be created, representing the main heading or identifier.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contentBody",
+          "type": "string",
+          "description": "The main textual or markup content of the instance, containing the detailed information or narrative.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Name or identifier of the author or creator of the instance.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tags",
+          "type": "array",
+          "description": "List of tags or keywords associated with the content for categorization and search optimization.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "status",
+          "type": "string",
+          "description": "Current state of the instance such as 'draft', 'published', or 'archived'.",
+          "required": false,
+          "defaultValue": "\"draft\""
+        },
+        {
+          "name": "publishDate",
+          "type": "string",
+          "description": "Optional ISO 8601 date string indicating when the content should be or was published.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing unique instance ID, summary info including title, creation timestamp, author, tags, and current status of the created instance."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate or initialize a new digital content object within a content management or creation workflow, accepting basic metadata and body text to produce a managed instance ready for editing, tagging, or publishing.",
+        "limitations": "This tool does not itself perform content editing, formatting beyond plain input acceptance, or publishing automation; it only creates an instance with provided input data.",
+        "examples": [
+          "Create a new blog post instance titled 'Introduction to AI' with specified content and author.",
+          "Initialize a content page with tags for categorization and mark it as draft.",
+          "Generate a news article instance scheduled for future publication date."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "instance",
+        "creation",
+        "cms",
+        "digital-content",
+        "metadata"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Welcome to Our Platform\",\"contentBody\":\"This is the first page content.\",\"author\":\"Alice\",\"tags\":[\"welcome\",\"homepage\"],\"status\":\"draft\",\"publishDate\":\"\"}",
+          "description": "Create a draft homepage content instance authored by Alice with welcome tags."
+        },
+        {
+          "inputJson": "{\"title\":\"Deep Learning Basics\",\"contentBody\":\"Deep learning is a subset of ML...\",\"author\":\"Bob\",\"tags\":[\"AI\",\"machine learning\"],\"status\":\"published\",\"publishDate\":\"2024-06-01T08:00:00Z\"}",
+          "description": "Create a published article instance with tags and scheduled publish date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Instance",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createServer",
+      "description": "Creates and configures a virtual server instance based on specified parameters such as server type, operating system, and resource allocations. Accepts settings like CPU count, RAM size, storage, and network config, then provisions the server and returns its access details and status.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "serverType",
+          "type": "string",
+          "description": "Type of server to create, e.g., web, database, application (defines preset settings).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "operatingSystem",
+          "type": "string",
+          "description": "Operating system image to install on the server, e.g., Ubuntu 22.04, CentOS 8.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "cpuCores",
+          "type": "number",
+          "description": "Number of CPU cores allocated to the server.",
+          "required": true,
+          "defaultValue": "2"
+        },
+        {
+          "name": "ramGB",
+          "type": "number",
+          "description": "Amount of RAM in gigabytes allocated to the server.",
+          "required": true,
+          "defaultValue": "4"
+        },
+        {
+          "name": "storageGB",
+          "type": "number",
+          "description": "Disk storage size in gigabytes attached to the server.",
+          "required": true,
+          "defaultValue": "50"
+        },
+        {
+          "name": "networkConfig",
+          "type": "object",
+          "description": "Network configuration settings including firewall rules and public IP assignment.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "autoStart",
+          "type": "boolean",
+          "description": "Whether to start the server automatically after creation.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the server ID, IP address, access credentials, status, and creation timestamp."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to programmatically generate a new virtual server with specified resources and software environment for hosting or testing content dynamically. It automates infrastructure provisioning for content-related workflows.",
+        "limitations": "Does not configure application-level software or deploy content beyond OS and basic roles. Does not manage scaling or lifecycle beyond initial creation.",
+        "examples": [
+          "Create a Linux-based web server with 4 CPU cores and 8GB RAM.",
+          "Provision a database server with CentOS, 2 CPUs, and 16GB RAM.",
+          "Create a development server with Ubuntu and 100GB storage that starts automatically."
+        ]
+      },
+      "tags": [
+        "server",
+        "virtual-machine",
+        "provisioning",
+        "cloud",
+        "infrastructure",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"serverType\":\"web\",\"operatingSystem\":\"Ubuntu 22.04\",\"cpuCores\":4,\"ramGB\":8,\"storageGB\":100,\"networkConfig\":{\"publicIP\":true,\"firewallRules\":[{\"port\":80,\"protocol\":\"tcp\"}]}},",
+          "description": "Creates a web server running Ubuntu with 4 CPUs, 8GB RAM, 100GB disk, public IP and port 80 open."
+        },
+        {
+          "inputJson": "{\"serverType\":\"database\",\"operatingSystem\":\"CentOS 8\",\"cpuCores\":2,\"ramGB\":16,\"storageGB\":200,\"autoStart\":false}",
+          "description": "Provisions a database server with CentOS, 2 CPU cores, 16GB RAM, 200GB storage, set to not start automatically."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Server",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createMention",
+      "description": "This tool generates a formatted mention string for a user or entity to be embedded in digital content such as messages, posts, or comments. It accepts the mention target's type (user, group, or role), identifier, and optional display name, then outputs a standardized mention string or object suitable for platforms supporting mentions.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "mentionType",
+          "type": "string",
+          "description": "Type of the mention target, e.g., 'user', 'group', or 'role'",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "identifier",
+          "type": "string",
+          "description": "Unique identifier for the mention target, such as user ID or group ID",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "displayName",
+          "type": "string",
+          "description": "Optional name to display instead of default when mentioning",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "platform",
+          "type": "string",
+          "description": "Target platform to format the mention for (e.g., 'Slack', 'Discord', 'MicrosoftTeams')",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "asObject",
+          "type": "boolean",
+          "description": "Whether to return the mention as a structured object rather than a formatted string",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted mention string or structured mention object depending on parameters"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or composing digital content that requires mentioning users, groups, or roles dynamically within messaging platforms or collaborative tools, ensuring proper mention formatting for the target platform.",
+        "limitations": "Cannot verify if the identifier is valid or if the target entity exists on the platform; does not send or post the mention but only generates the mention format.",
+        "examples": [
+          "Create a mention string for user with ID 'U123456' in Slack.",
+          "Generate a mention object for a group with ID 'G98765' to embed in Microsoft Teams message.",
+          "Produce a display name mention for role 'Admin' on Discord."
+        ]
+      },
+      "tags": [
+        "content",
+        "mention",
+        "communication",
+        "platform-formatting",
+        "digital-content"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mentionType\":\"user\",\"identifier\":\"U123456\",\"displayName\":\"Alice\",\"platform\":\"Slack\",\"asObject\":false}",
+          "description": "Generate a Slack-formatted mention string for user Alice with ID U123456."
+        },
+        {
+          "inputJson": "{\"mentionType\":\"group\",\"identifier\":\"G98765\",\"platform\":\"MicrosoftTeams\",\"asObject\":true}",
+          "description": "Generate a Microsoft Teams mention object for a group with ID G98765."
+        },
+        {
+          "inputJson": "{\"mentionType\":\"role\",\"identifier\":\"Admin\",\"displayName\":\"Administrator\",\"platform\":\"Discord\",\"asObject\":false}",
+          "description": "Generate a Discord mention string for role Admin with a display name."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Mention",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createThread",
+      "description": "Creates a new communication thread for digital interactions such as forums, chat rooms, or discussion boards. Accepts inputs including a title, initial message content, creator information, and optional tags. Processes this information to initialize and return a thread object with a unique thread ID, timestamps, and metadata.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title or subject of the thread to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "initialMessage",
+          "type": "string",
+          "description": "The content of the first message initiating the thread.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "creatorId",
+          "type": "string",
+          "description": "Identifier for the user creating the thread (e.g., username or user ID).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tags",
+          "type": "array",
+          "description": "An array of tags or keywords to categorize or label the thread.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "isPrivate",
+          "type": "boolean",
+          "description": "Whether the thread is private (true) or public (false).",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the created thread, including a unique threadId (string), title (string), creatorId (string), createdAt timestamp (ISO string), initialMessage (string), tags (array of strings), and privacy status (boolean)."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to start a new communication or discussion context, such as initiating a forum topic, creating a new chat thread, or opening a conversation channel. It's useful for organizing messages under a cohesive subject and enabling subsequent user interactions within that thread.",
+        "limitations": "This tool does not handle posting subsequent messages in the thread or managing user permissions beyond the initial privacy flag. It also does not support multimedia content or rich formatting in the initial message.",
+        "examples": [
+          "Create a new forum thread titled \"Project Launch Updates\" with an initial welcome message, tagged with \"project\" and \"updates\".",
+          "Start a private chat thread for a support ticket with the user ID and the issue description as the first message.",
+          "Initiate a public discussion thread titled \"Book Club April Reads\" with a short introduction message."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "communication",
+        "thread management",
+        "discussion",
+        "forum",
+        "chat"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Project Launch Updates\",\"initialMessage\":\"Welcome to the project launch discussion! Share your updates here.\",\"creatorId\":\"user123\",\"tags\":[\"project\",\"updates\"],\"isPrivate\":false}",
+          "description": "Creating a public discussion thread for project updates."
+        },
+        {
+          "inputJson": "{\"title\":\"Support Ticket 5542\",\"initialMessage\":\"User reports an issue with login.\",\"creatorId\":\"supportAgent7\",\"tags\":[],\"isPrivate\":true}",
+          "description": "Creating a private support chat thread for a ticket."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Thread",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createReply",
+      "description": "Generates a contextually relevant and coherent reply message based on an input prompt or conversation history. Accepts a string or array of message objects representing previous dialogue, processes natural language understanding and generation, and outputs a structured reply text suitable for communication applications.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "conversationHistory",
+          "type": "array",
+          "description": "Array of message objects representing previous messages in the conversation, each with sender and content, to provide context for generating the reply.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "replyTone",
+          "type": "string",
+          "description": "Desired tone or style of the reply, such as formal, casual, friendly, or professional, to tailor the response accordingly.",
+          "required": false,
+          "defaultValue": "\"neutral\""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum character length for the reply to keep responses concise and within limits.",
+          "required": false,
+          "defaultValue": "500"
+        },
+        {
+          "name": "includeReferences",
+          "type": "boolean",
+          "description": "Flag indicating whether to include references or citations in the reply if applicable.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated reply text that is contextually relevant and appropriately styled based on given parameters."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate natural language replies in conversation or messaging systems that require coherent, context-aware responses. It helps automate and assist in communication by producing text replies based on prior messages and desired tone.",
+        "limitations": "Cannot guarantee perfect factual accuracy or domain-specific expert knowledge; may produce plausible but incorrect information. Not suitable for highly sensitive or legal communications without review.",
+        "examples": [
+          "Generate a friendly reply to this customer message about a delayed order.",
+          "Create a concise professional email response summarizing the project update.",
+          "Provide a casual text message reply continuing the ongoing chat conversation."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "reply-generation",
+        "natural-language-processing",
+        "communication",
+        "chatbot",
+        "dialogue",
+        "response"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"conversationHistory\":[{\"sender\":\"user\",\"content\":\"Hi, can you update me on the status of my order?\"}],\"replyTone\":\"friendly\",\"maxLength\":200,\"includeReferences\":false}",
+          "description": "Generate a friendly reply to a customer's query about order status."
+        },
+        {
+          "inputJson": "{\"conversationHistory\":[{\"sender\":\"client\",\"content\":\"Could you please send the final report by tomorrow?\"}],\"replyTone\":\"professional\",\"maxLength\":300,\"includeReferences\":true}",
+          "description": "Create a professional, formal response promising delivery of a report by the requested deadline."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Reply",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createComment",
+      "description": "Generates a coherent and contextually relevant comment based on provided content and optional tone and length preferences. Accepts a text input or URL reference, analyzes the content, and produces a suitable comment string for use in discussions, reviews, or social media.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "contentText",
+          "type": "string",
+          "description": "The main text content the comment should relate to or respond to.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contentUrl",
+          "type": "string",
+          "description": "Optional URL of the content source for context; if provided, the tool may fetch or consider this additional information.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Desired tone of the comment such as friendly, professional, casual, or critical.",
+          "required": false,
+          "defaultValue": "friendly"
+        },
+        {
+          "name": "length",
+          "type": "string",
+          "description": "Preferred length of the comment; valid options are short, medium, and long.",
+          "required": false,
+          "defaultValue": "medium"
+        },
+        {
+          "name": "includeQuestion",
+          "type": "boolean",
+          "description": "Whether to include a question in the comment to encourage engagement.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated comment text suitable for posting or further processing."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate natural language comments related to given content, such as for social media posts, article discussions, or review replies. It aids in producing human-like, context-aware commentary that aligns with the specified tone and length preferences.",
+        "limitations": "The tool cannot verify real-time external content or guarantee factual correctness. It assumes content relevance based on input text and may not handle ambiguous or incomplete contexts well.",
+        "examples": [
+          "Generate a friendly, medium-length comment responding to a product review text.",
+          "Create a short, casual comment that encourages discussion about a blog post.",
+          "Make a professional, long comment including a question based on the summary of an article."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "comment-generation",
+        "social-media",
+        "natural-language",
+        "engagement"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"contentText\":\"I recently tried the new smartphone model and found its battery life disappointing.\",\"tone\":\"critical\",\"length\":\"medium\",\"includeQuestion\":true}",
+          "description": "Generate a critical comment of medium length that includes a question responding to user feedback about a smartphone battery."
+        },
+        {
+          "inputJson": "{\"contentText\":\"Check out my latest blog post about sustainable gardening techniques.\",\"tone\":\"friendly\",\"length\":\"short\",\"includeQuestion\":false}",
+          "description": "Create a short and friendly comment to promote engagement on a blog post about gardening."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Comment",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createNotification",
+      "description": "Creates a structured notification message based on input parameters such as title, message body, notification type, and target audience. Processes these inputs to format a consistent notification object that can be used for sending in-app alerts, emails, or push notifications.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The headline or title of the notification, briefly summarizing its purpose.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "messageBody",
+          "type": "string",
+          "description": "Detailed content of the notification providing the main information to the recipient.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "notificationType",
+          "type": "string",
+          "description": "Category of notification (e.g., info, warning, success, error) to specify its intent and appearance.",
+          "required": true,
+          "defaultValue": "info"
+        },
+        {
+          "name": "targetAudience",
+          "type": "array",
+          "description": "List of recipient identifiers (user IDs, roles, or groups) for whom this notification is intended.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "channel",
+          "type": "string",
+          "description": "Delivery method for the notification such as email, push, or in-app. Defaults to in-app.",
+          "required": false,
+          "defaultValue": "in-app"
+        },
+        {
+          "name": "priority",
+          "type": "string",
+          "description": "Defines the urgency level of the notification (e.g., low, normal, high).",
+          "required": false,
+          "defaultValue": "normal"
+        },
+        {
+          "name": "sendTime",
+          "type": "string",
+          "description": "Optional ISO 8601 timestamp when the notification should be sent; if omitted, send immediately.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the finalized notification with metadata including ID, formatted content, target audience, channel, priority, and scheduled send time."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate user-facing notifications from dynamic content or system events, ensuring consistent structure and delivery information for different channels and audiences. It is ideal for creating alerts, reminders, or informational messages in apps or platforms.",
+        "limitations": "This tool does not handle the actual sending of notifications, user preferences management, or real-time delivery tracking.",
+        "examples": [
+          "Create a warning notification about upcoming maintenance targeted to admin users via email.",
+          "Generate a promotional in-app notification to all users highlighting a new feature.",
+          "Schedule a high priority error alert to be sent immediately to support staff via push notification."
+        ]
+      },
+      "tags": [
+        "notification",
+        "content-creation",
+        "messaging",
+        "alerts",
+        "communication"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Server Maintenance\",\"messageBody\":\"Scheduled maintenance will occur at 2 AM UTC.\",\"notificationType\":\"warning\",\"targetAudience\":[\"admin\",\"devops\"],\"channel\":\"email\",\"priority\":\"high\",\"sendTime\":\"2024-06-30T01:45:00Z\"}",
+          "description": "Create a high-priority warning email notification about server maintenance targeting admin and devops teams."
+        },
+        {
+          "inputJson": "{\"title\":\"Welcome!\",\"messageBody\":\"Thank you for joining our platform.\",\"notificationType\":\"info\",\"targetAudience\":[\"allUsers\"],\"channel\":\"in-app\"}",
+          "description": "Create a general informational in-app notification welcoming all users."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Notification",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createChannel",
+      "description": "Creates a new communication channel within a digital content platform or system. Accepts parameters like channel name, description, privacy settings, and initial members. Processes inputs to set up and configure the channel, then returns a summary of the created channel including its unique identifier and access info.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "channelName",
+          "type": "string",
+          "description": "The name to assign to the new communication channel.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A short description explaining the purpose of the channel.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "isPrivate",
+          "type": "boolean",
+          "description": "Determines if the channel is private (true) or public (false).",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "initialMembers",
+          "type": "array",
+          "description": "An array of user IDs to be added as initial members of the channel.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Optional topic or subject the channel focuses on.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing details of the newly created channel, including channel ID, name, description, privacy status, member count, and creation timestamp."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically establish new communication channels for teams, content groups, or communities within a platform. It streamlines onboarding by configuring channel metadata, membership, and access settings automatically.",
+        "limitations": "This tool cannot send messages within the channel or manage channel content beyond initial creation. It also does not handle permissions beyond the basic public/private distinction.",
+        "examples": [
+          "Create a private channel named 'Project X' with the initial team members.",
+          "Set up a public discussion channel about 'AI Research' with a descriptive topic.",
+          "Make a general announcements channel that is public and has no initial members."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "communication",
+        "channel management",
+        "collaboration",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"channelName\":\"Project Phoenix\",\"description\":\"Channel for Project Phoenix team coordination.\",\"isPrivate\":true,\"initialMembers\":[\"user123\",\"user456\"],\"topic\":\"Development updates\"}",
+          "description": "Creates a private channel with initial members and topic for project coordination."
+        },
+        {
+          "inputJson": "{\"channelName\":\"General Announcements\",\"description\":\"Company-wide announcements.\",\"isPrivate\":false,\"initialMembers\":[],\"topic\":\"Company news\"}",
+          "description": "Sets up a public announcements channel without initial members."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Channel",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createMessage",
+      "description": "Generates a formatted message based on input parameters such as recipient, subject, body content, tone, and message type. Accepts plain text or structured inputs, processes them to create a coherent message suitable for email, SMS, or chat, and outputs the finalized message as a string.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "recipient",
+          "type": "string",
+          "description": "The primary recipient of the message, such as an email address or phone number.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "The subject or headline of the message, applicable mainly for emails.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "body",
+          "type": "string",
+          "description": "The main content or body text of the message to be sent.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The tone or style of the message, e.g., formal, casual, friendly, urgent, persuasive.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "messageType",
+          "type": "string",
+          "description": "The type of message to create, such as 'email', 'sms', or 'chat'. Determines formatting.",
+          "required": true,
+          "defaultValue": "email"
+        },
+        {
+          "name": "attachments",
+          "type": "array",
+          "description": "List of attachment URLs or filenames to reference within the message, if applicable.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "signature",
+          "type": "string",
+          "description": "A signature or sign-off text to append at the end of the message.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete formatted message string and metadata such as character count and message type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to compose a professional or casual message for communication via email, SMS, or chat. It helps generate coherent messages based on structured inputs, adjusting tone and formatting to fit the delivery method and context.",
+        "limitations": "This tool does not send messages or validate contact information. It does not generate responses or handle complex conversational flows independently.",
+        "examples": [
+          "Create a formal email to a client inviting them to a meeting.",
+          "Generate a short SMS message notifying a user about a delivery update.",
+          "Compose a friendly chat message to welcome a new team member."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "message-generation",
+        "communication",
+        "email",
+        "sms",
+        "chat",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipient\":\"jane.doe@example.com\",\"subject\":\"Meeting Invitation\",\"body\":\"Dear Jane, I would like to invite you to a project meeting scheduled for Monday at 10 am.\",\"tone\":\"formal\",\"messageType\":\"email\",\"attachments\":[],\"signature\":\"Best regards, John\"}",
+          "description": "Generate a formal email message inviting a recipient to a meeting."
+        },
+        {
+          "inputJson": "{\"recipient\":\"+1234567890\",\"body\":\"Your package has been shipped and will arrive tomorrow.\",\"tone\":\"informal\",\"messageType\":\"sms\",\"attachments\":[],\"signature\":\"\"}",
+          "description": "Generate a brief SMS notification about a delivery."
+        },
+        {
+          "inputJson": "{\"recipient\":\"team_channel\",\"body\":\"Welcome to the team, Alex! Looking forward to working together.\",\"tone\":\"friendly\",\"messageType\":\"chat\",\"attachments\":[],\"signature\":\"\"}",
+          "description": "Compose a friendly chat message welcoming a new team member."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Message",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCertificate",
+      "description": "Generates a digitally signed certificate document based on user-provided details such as recipient name, issuer, date, and certificate type. It processes the inputs to create a formatted certificate in PDF or image format, optionally embedding a QR code linking to verification data, and returns the completed certificate file data and metadata.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "recipientName",
+          "type": "string",
+          "description": "Full name of the certificate recipient to appear on the certificate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "issuerName",
+          "type": "string",
+          "description": "Name of the organization or individual issuing the certificate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "certificateType",
+          "type": "string",
+          "description": "Type or title of the certificate (e.g., 'Completion', 'Achievement').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "issueDate",
+          "type": "string",
+          "description": "Date when the certificate is issued, in ISO 8601 format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "expiryDate",
+          "type": "string",
+          "description": "Optional expiration date for the certificate, in ISO 8601 format.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeQRCode",
+          "type": "boolean",
+          "description": "Whether to embed a QR code that links to certificate verification information.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Output file format of the certificate, either 'PDF' or 'PNG'.",
+          "required": false,
+          "defaultValue": "PDF"
+        },
+        {
+          "name": "backgroundTemplate",
+          "type": "string",
+          "description": "Optional identifier or URL referencing a background template to use for styling the certificate.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the certificate content encoded as a base64 string, the MIME type, and metadata such as issue date, expiry date, and verification link if applicable."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create official-looking certificate documents for achievements, completions, or recognitions from provided participant and issuer information. It is suitable for generating digital certificates with optional verification QR codes for education, training programs, or events.",
+        "limitations": "This tool does not perform cryptographic signature validations or store certificates; it only generates the visual certificate file. It does not issue certificates on blockchain or securely manage certificate revocation.",
+        "examples": [
+          "Create a certificate of completion for a student named John Doe issued by ABC Training on 2024-05-01.",
+          "Generate an achievement certificate for Jane Smith with a QR code linking to verification data.",
+          "Produce a PDF certificate with a custom background for employee of the month."
+        ]
+      },
+      "tags": [
+        "certificate",
+        "content-creation",
+        "document-generation",
+        "digital-certificate",
+        "PDF",
+        "image-generation",
+        "verification"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipientName\":\"John Doe\",\"issuerName\":\"ABC Training\",\"certificateType\":\"Completion\",\"issueDate\":\"2024-05-01\",\"includeQRCode\":true,\"outputFormat\":\"PDF\"}",
+          "description": "Create a PDF completion certificate for John Doe with a QR code for verification."
+        },
+        {
+          "inputJson": "{\"recipientName\":\"Jane Smith\",\"issuerName\":\"XYZ Corp\",\"certificateType\":\"Achievement\",\"issueDate\":\"2024-06-10\",\"expiryDate\":\"2026-06-10\",\"includeQRCode\":false,\"outputFormat\":\"PNG\",\"backgroundTemplate\":\"corporateTemplate1\"}",
+          "description": "Generate a PNG achievement certificate with a corporate background and expiration date for Jane Smith."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Certificate",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createAlert",
+      "description": "Generates a structured security alert message based on input parameters specifying the alert type, severity, affected systems, and message details. Processes the inputs to construct a standardized alert notification object that can be used for internal tracking, notifications, or incident response workflows.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "alertType",
+          "type": "string",
+          "description": "The category or type of the alert, e.g., 'Intrusion', 'Malware', or 'Unauthorized Access'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "severity",
+          "type": "string",
+          "description": "The severity level of the alert, such as 'Low', 'Medium', 'High', or 'Critical'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "affectedSystems",
+          "type": "array",
+          "description": "A list of system names or IDs that are affected by this alert.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "message",
+          "type": "string",
+          "description": "A detailed descriptive message explaining the alert and relevant context.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timestamp",
+          "type": "string",
+          "description": "The ISO 8601 formatted date-time string when the alert was generated. Defaults to current time if empty.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "sourceIp",
+          "type": "string",
+          "description": "Optional IP address related to the alert source, such as an attacker IP or affected system IP.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "additionalData",
+          "type": "object",
+          "description": "Optional object containing any extra relevant data as key-value pairs to include in the alert.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a structured alert object including all input details, a unique alert ID, and formatted timestamp for tracking and notification."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create a formal and structured security alert message from raw event data or summarized threat intelligence to inform monitoring teams or trigger incident response. It is particularly useful for generating standardized alerts for varied security domains.",
+        "limitations": "This tool does not perform any automatic threat analysis or validation of the alert data; it only constructs the alert object from given inputs. It also does not send or distribute the alert, which requires separate integration.",
+        "examples": [
+          "Create a high severity alert for an intrusion detected on multiple servers, including details about the attack and affected IPs.",
+          "Generate a malware alert with medium severity targeting specific systems with a detailed description.",
+          "Create a critical unauthorized access alert containing source IP and custom metadata for incident tracking."
+        ]
+      },
+      "tags": [
+        "security",
+        "alert",
+        "notification",
+        "incident-response",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"alertType\":\"Intrusion\",\"severity\":\"High\",\"affectedSystems\":[\"server01\",\"server02\"],\"message\":\"Multiple failed login attempts detected indicating potential brute force attack.\",\"timestamp\":\"2024-06-01T14:30:00Z\",\"sourceIp\":\"192.168.1.100\",\"additionalData\":{\"attackVector\":\"ssh\",\"detectedBy\":\"IDS\"}}",
+          "description": "Generate a high severity intrusion alert for servers 'server01' and 'server02' with source IP and extra metadata."
+        },
+        {
+          "inputJson": "{\"alertType\":\"Malware\",\"severity\":\"Medium\",\"affectedSystems\":[\"workstation05\"],\"message\":\"Malware signature detected in email attachment.\",\"timestamp\":\"2024-06-01T09:45:00Z\"}",
+          "description": "Create a medium severity malware alert for a single affected workstation without source IP or additional data."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Alert",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createKey",
+      "description": "Generates a cryptographic key for content encryption or signing. Accepts parameters defining key type (e.g., symmetric or asymmetric), algorithm, key size, and optional passphrase. Outputs the generated key material encoded in base64 along with metadata about the key.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "keyType",
+          "type": "string",
+          "description": "Type of key to generate, either 'symmetric' or 'asymmetric'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "algorithm",
+          "type": "string",
+          "description": "Cryptographic algorithm to use (e.g., AES, RSA, ECDSA).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keySize",
+          "type": "number",
+          "description": "Size of the key in bits, depends on algorithm (e.g., 256 for AES, 2048 for RSA).",
+          "required": false,
+          "defaultValue": "256"
+        },
+        {
+          "name": "passphrase",
+          "type": "string",
+          "description": "Optional passphrase to encrypt the generated key material.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "exportFormat",
+          "type": "string",
+          "description": "Format to export the key material, e.g., 'base64', 'hex', or 'pem'.",
+          "required": false,
+          "defaultValue": "base64"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing the generated key material as a string and metadata including algorithm, key size, key type, and export format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to programmatically generate cryptographic keys for securing digital content via encryption, signing, or other cryptographic operations. It is suitable for creating keys for symmetric encryption like AES or asymmetric keys like RSA or ECDSA, with optional passphrase protection.",
+        "limitations": "This tool does not perform key storage or key management beyond generation and export. It does not manage key lifecycle or integrate with hardware security modules or external key stores.",
+        "examples": [
+          "Generate a 256-bit AES symmetric key for encrypting content.",
+          "Create a 2048-bit RSA key pair for digital signing.",
+          "Generate an ECDSA key with a passphrase and export it in PEM format."
+        ]
+      },
+      "tags": [
+        "security",
+        "key-generation",
+        "cryptography",
+        "content-protection",
+        "encryption",
+        "digital-signature"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"keyType\":\"symmetric\",\"algorithm\":\"AES\",\"keySize\":256,\"exportFormat\":\"base64\"}",
+          "description": "Generate a 256-bit AES symmetric key with base64 encoding."
+        },
+        {
+          "inputJson": "{\"keyType\":\"asymmetric\",\"algorithm\":\"RSA\",\"keySize\":2048,\"exportFormat\":\"pem\"}",
+          "description": "Generate a 2048-bit RSA key pair and export in PEM format."
+        },
+        {
+          "inputJson": "{\"keyType\":\"asymmetric\",\"algorithm\":\"ECDSA\",\"keySize\":256,\"passphrase\":\"mySecret123\",\"exportFormat\":\"pem\"}",
+          "description": "Generate a 256-bit ECDSA key encrypted with a passphrase and export as PEM."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Key",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCredential",
+      "description": "Generates a digital security credential based on specified parameters including credential type, identity details, issuance and expiration dates, and optional metadata. Processes input to produce a signed, verifiable credential JSON object that can be used for authentication or authorization purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "credentialType",
+          "type": "string",
+          "description": "Type of the credential to be created, e.g., 'VerifiableCredential', 'AccessToken'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "identityData",
+          "type": "object",
+          "description": "Object containing identity attributes such as name, id, or email required for the credential subject.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "issuer",
+          "type": "string",
+          "description": "Identifier or DID of the credential issuer creating the credential.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "issuedAt",
+          "type": "string",
+          "description": "ISO 8601 formatted issuance date of the credential. If not provided, current date-time is used.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "expirationDate",
+          "type": "string",
+          "description": "Optional ISO 8601 formatted expiration date, after which the credential is no longer valid.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional additional metadata fields to include in the credential.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "signingKey",
+          "type": "string",
+          "description": "Private key or key reference used to cryptographically sign the credential ensuring authenticity.",
+          "required": true,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A JSON object representing the created credential, including all input data, digital signature, and metadata compliant with credential standards (e.g., W3C Verifiable Credentials)."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an application or agent needs to programmatically generate security credentials for identities, such as issuing verifiable credentials for user authentication, access tokens, or badges. It helps automate creation of standardized signed credentials with metadata and expiry.",
+        "limitations": "This tool does not handle key management or secure storage of signing keys and assumes valid keys are provided. It does not verify identity data correctness nor handle credential revocation. External infrastructure needed for full lifecycle management.",
+        "examples": [
+          "Create a verifiable credential for a user with name and email, issued by my organization, expiring in one year.",
+          "Generate an access token credential for API authorization with specific scope metadata.",
+          "Issue a badge credential for event attendance with issuance time but no expiration."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "security",
+        "credential",
+        "digital-identity",
+        "authentication",
+        "authorization"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"credentialType\":\"VerifiableCredential\",\"identityData\":{\"name\":\"Alice Doe\",\"email\":\"alice@example.com\"},\"issuer\":\"did:example:12345\",\"issuedAt\":\"2024-06-01T12:00:00Z\",\"expirationDate\":\"2025-06-01T12:00:00Z\",\"metadata\":{\"role\":\"member\"},\"signingKey\":\"-----BEGIN PRIVATE KEY-----\\nMIIEv...\"}",
+          "description": "Create a verifiable credential for Alice with email and role member, issued on June 1, 2024, valid for one year."
+        },
+        {
+          "inputJson": "{\"credentialType\":\"AccessToken\",\"identityData\":{\"userId\":\"user-7890\"},\"issuer\":\"did:example:issuer456\",\"signingKey\":\"privkey123\"}",
+          "description": "Generate an access token credential for user ID 'user-7890' without expiration date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Credential",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createSecret",
+      "description": "Generates a secure secret string suitable for use as passwords, API keys, or cryptographic tokens. Accepts parameters defining secret length, character types to include, and whether to use symbols, digits, uppercase, and lowercase letters. Outputs the generated secret string ready for immediate use in secure applications.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Length of the secret string to generate, typically between 8 and 128 characters.",
+          "required": true,
+          "defaultValue": "32"
+        },
+        {
+          "name": "includeUppercase",
+          "type": "boolean",
+          "description": "Whether to include uppercase alphabetic characters in the secret.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeLowercase",
+          "type": "boolean",
+          "description": "Whether to include lowercase alphabetic characters in the secret.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeDigits",
+          "type": "boolean",
+          "description": "Whether to include numeric digits in the secret.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeSymbols",
+          "type": "boolean",
+          "description": "Whether to include symbol characters (e.g., !@#$%^&*) in the secret.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "excludeSimilarCharacters",
+          "type": "boolean",
+          "description": "Exclude characters that can be visually confused (like 0 and O, 1 and l).",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated secret string under the key 'secret'."
+      },
+      "aiAgent": {
+        "useCase": "This tool is useful when an AI agent needs to generate strong, customized secret strings for securing user accounts, API authentication, encryption keys, or other security-sensitive applications requiring random yet controlled character sets. It helps maintain best practices by enabling configurable complexity parameters to conform with password policies.",
+        "limitations": "Does not store or manage secrets after generation; it only produces secret strings. The tool cannot assess or guarantee the appropriateness of the secret for all security policies or environments.",
+        "examples": [
+          "Generate a 64-character API key including uppercase, lowercase, digits, and symbols, excluding similar characters.",
+          "Create a short 12-character password that uses only uppercase and digits without symbols.",
+          "Generate a 128-character cryptographic token including all character types for maximum entropy."
+        ]
+      },
+      "tags": [
+        "security",
+        "secret",
+        "password",
+        "token",
+        "key-generation",
+        "random",
+        "encryption",
+        "crypto"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"length\":64,\"includeUppercase\":true,\"includeLowercase\":true,\"includeDigits\":true,\"includeSymbols\":true,\"excludeSimilarCharacters\":true}",
+          "description": "Generate a 64-character secret with all character sets excluding ambiguous chars."
+        },
+        {
+          "inputJson": "{\"length\":12,\"includeUppercase\":true,\"includeLowercase\":false,\"includeDigits\":true,\"includeSymbols\":false,\"excludeSimilarCharacters\":true}",
+          "description": "Generate a 12-character secret with uppercase letters and digits only, no symbols."
+        },
+        {
+          "inputJson": "{\"length\":128,\"includeUppercase\":true,\"includeLowercase\":true,\"includeDigits\":true,\"includeSymbols\":true,\"excludeSimilarCharacters\":false}",
+          "description": "Generate a 128-character secret using all character types including similar looking characters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Secret",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createThreat",
+      "description": "Generates a detailed threat scenario description based on specified parameters such as threat type, target environment, and potential impact. Accepts inputs on threat characteristics and outputs a structured threat report useful for security analysis and risk assessment.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "threatType",
+          "type": "string",
+          "description": "Type of threat to describe, e.g., phishing, malware, DDoS, insider threat.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetEnvironment",
+          "type": "string",
+          "description": "The environment or system targeted by the threat, e.g., enterprise network, cloud service, IoT device.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "potentialImpact",
+          "type": "string",
+          "description": "Expected impact of the threat if successful, e.g., data theft, service disruption, financial loss.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "threatActor",
+          "type": "string",
+          "description": "Description of the attacker or threat actor type, e.g., criminal group, hacktivist, insider.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "attackVector",
+          "type": "string",
+          "description": "Means or method through which the threat is delivered or exploited, e.g., email, exploit kit, social engineering.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "urgencyLevel",
+          "type": "string",
+          "description": "Estimated urgency or immediacy of the threat, e.g., low, medium, high.",
+          "required": false,
+          "defaultValue": "medium"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Structured threat scenario report including a summary, attack details, potential impacts, and mitigation suggestions."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to construct realistic or hypothetical security threat scenarios for simulation, training, or risk assessment purposes. It helps generate detailed, coherent threat descriptions based on specified parameters to assist security analysis or preparedness planning.",
+        "limitations": "This tool does not perform actual threat detection or analysis on real-time data; it generates descriptive scenarios only based on input parameters. It cannot guarantee precise threat mitigation strategies or real-world accuracy beyond general descriptions.",
+        "examples": [
+          "Generate a detailed phishing threat targeting corporate email environments with potential data loss impact.",
+          "Create a DDoS threat scenario affecting cloud services with high urgency.",
+          "Describe an insider threat with social engineering attack vector causing financial fraud."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "security",
+        "threat modeling",
+        "risk assessment",
+        "scenario generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"threatType\":\"phishing\",\"targetEnvironment\":\"corporate email system\",\"potentialImpact\":\"data theft\",\"threatActor\":\"criminal group\",\"attackVector\":\"email link\",\"urgencyLevel\":\"high\"}",
+          "description": "Generate a high-urgency phishing threat scenario targeting corporate email that may lead to data theft."
+        },
+        {
+          "inputJson": "{\"threatType\":\"DDoS\",\"targetEnvironment\":\"cloud service platform\",\"potentialImpact\":\"service disruption\",\"urgencyLevel\":\"medium\"}",
+          "description": "Create a medium urgency DDoS threat scenario affecting a cloud service platform with possible disruption."
+        },
+        {
+          "inputJson": "{\"threatType\":\"insider threat\",\"targetEnvironment\":\"financial systems\",\"potentialImpact\":\"financial fraud\",\"threatActor\":\"disgruntled employee\",\"attackVector\":\"social engineering\",\"urgencyLevel\":\"low\"}",
+          "description": "Describe a low urgency insider threat scenario involving social engineering causing financial fraud."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Threat",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createIncident",
+      "description": "Creates a detailed security incident report based on provided information such as incident type, description, impact, affected systems, and timestamps. Processes input data to generate a structured incident record suitable for tracking and further analysis.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "incidentType",
+          "type": "string",
+          "description": "The category or type of the security incident (e.g., phishing, malware, data breach).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A detailed description of the incident, including observed behaviors and context.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "impactSeverity",
+          "type": "string",
+          "description": "Severity level of the incident impact (e.g., low, medium, high, critical).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "affectedSystems",
+          "type": "array",
+          "description": "List of system names, IP addresses, or components affected by the incident.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "detectedTime",
+          "type": "string",
+          "description": "Timestamp when the incident was detected, in ISO 8601 format.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "reportedBy",
+          "type": "string",
+          "description": "Name or identifier of the person or system reporting the incident.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "incidentStatus",
+          "type": "string",
+          "description": "Current status of the incident (e.g., open, in progress, resolved).",
+          "required": false,
+          "defaultValue": "open"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured incident record including a unique incident ID, summary, timestamps, and all provided details for tracking and management."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a comprehensive and structured security incident report based on raw incident details provided by users or monitoring systems. It helps standardize incident documentation to facilitate tracking, prioritization, and response coordination.",
+        "limitations": "This tool does not automatically detect or analyze incidents; it only formats and structures incident data that must be supplied as input. It also does not update or close existing incidents.",
+        "examples": [
+          "Create a new phishing incident with high impact affecting email servers.",
+          "Report a malware infection detected on multiple workstations with medium severity.",
+          "Log a data breach with detailed description and affected systems list."
+        ]
+      },
+      "tags": [
+        "incident",
+        "security",
+        "reporting",
+        "creation",
+        "content-creation",
+        "security-incident"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"incidentType\":\"Phishing\",\"description\":\"Multiple users reported suspicious emails requesting credentials.\",\"impactSeverity\":\"high\",\"affectedSystems\":[\"email-server-01\",\"user-mailbox-123\"],\"detectedTime\":\"2024-06-15T10:30:00Z\",\"reportedBy\":\"security-team\",\"incidentStatus\":\"open\"}",
+          "description": "Reporting a high severity phishing incident affecting email infrastructure."
+        },
+        {
+          "inputJson": "{\"incidentType\":\"Malware\",\"description\":\"Detected ransomware on several workstation endpoints.\",\"impactSeverity\":\"critical\",\"affectedSystems\":[\"workstation-101\",\"workstation-102\",\"workstation-103\"],\"detectedTime\":\"2024-06-14T22:15:00Z\",\"reportedBy\":\"endpoint-protection\",\"incidentStatus\":\"in progress\"}",
+          "description": "Logging a critical ransomware incident detected by security software."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Incident",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createVulnerability",
+      "description": "Generates a detailed vulnerability report based on provided technical inputs, including vulnerability type, affected software versions, severity, description, and remediation steps. Outputs a structured vulnerability report suitable for documentation or security advisories.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "vulnerabilityName",
+          "type": "string",
+          "description": "The concise name or identifier of the vulnerability (e.g., SQL Injection).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A detailed explanation of the vulnerability, including how it can be exploited.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "affectedSoftware",
+          "type": "array",
+          "description": "List of affected software products and versions (each entry is a string, e.g., 'WordPress 5.8').",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "severity",
+          "type": "string",
+          "description": "The severity classification (e.g., Low, Medium, High, Critical).",
+          "required": true,
+          "defaultValue": "Medium"
+        },
+        {
+          "name": "cvssScore",
+          "type": "number",
+          "description": "The CVSS (Common Vulnerability Scoring System) score as a numeric value (0.0 to 10.0).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "cweId",
+          "type": "string",
+          "description": "The Common Weakness Enumeration identifier related to the vulnerability (e.g., CWE-79).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "remediationSteps",
+          "type": "string",
+          "description": "Recommended remediation or mitigation measures to address the vulnerability.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "disclosureDate",
+          "type": "string",
+          "description": "Date when the vulnerability was first disclosed (ISO format, e.g., 2023-11-15).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured vulnerability report including all provided details and formatted fields for easy integration into security documentation systems."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate formal vulnerability reports from technical inputs, such as summarizing new security flaws, preparing advisories, or documenting findings consistently for developers and security teams. It standardizes vulnerability information into a coherent report format.",
+        "limitations": "This tool does not discover or detect vulnerabilities automatically; it requires accurate input details. It also does not validate CVSS scores or CWE identifiers but formats given data into a report.",
+        "examples": [
+          "Create a vulnerability report for a Cross-Site Scripting (XSS) flaw detected in web app versions 3.1 to 3.5.",
+          "Generate a detailed description and remediation steps for a buffer overflow vulnerability found in a networking library.",
+          "Produce a vulnerability advisory for a critical SQL Injection issue affecting multiple CMS platforms."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "security",
+        "vulnerability",
+        "reporting",
+        "documentation",
+        "remediation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"vulnerabilityName\":\"SQL Injection\",\"description\":\"Allows attackers to execute arbitrary SQL commands via input fields without proper sanitization.\",\"affectedSoftware\":[\"CMS v2.3\",\"WebApp v1.0 to v1.4\"],\"severity\":\"Critical\",\"cvssScore\":9.8,\"cweId\":\"CWE-89\",\"remediationSteps\":\"Implement parameterized queries and input validation.\",\"disclosureDate\":\"2024-05-10\"}",
+          "description": "Generate a vulnerability report for a critical SQL Injection issue on specific software versions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Vulnerability",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createRisk",
+      "description": "Generates a detailed risk report based on provided project or system information. Accepts inputs like risk type, description, likelihood, impact, affected components, and mitigation strategies. Processes these to create a structured risk assessment output, including risk severity and suggested actions.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "riskType",
+          "type": "string",
+          "description": "Category of the risk such as security, operational, financial, or compliance.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Detailed description of the identified risk and its context.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "likelihood",
+          "type": "string",
+          "description": "Estimated probability of the risk occurring (e.g., low, medium, high).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "impact",
+          "type": "string",
+          "description": "Potential impact level if the risk occurs (e.g., low, medium, high).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "affectedComponents",
+          "type": "array",
+          "description": "List of affected systems, processes, or business units.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "mitigationStrategies",
+          "type": "array",
+          "description": "Proposed strategies or actions to mitigate the risk.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "discoveryDate",
+          "type": "string",
+          "description": "Date the risk was identified in ISO 8601 format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a structured risk object including severity score, risk summary, and mitigation plan."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to create formal risk assessments from raw or summarized inputs about potential issues in projects, systems, or processes. It helps generate clear risk profiles with severity evaluation and mitigation suggestions to support risk management decisions.",
+        "limitations": "This tool does not perform real-time risk detection or dynamic threat analysis. It relies on input accuracy and does not replace expert risk evaluation or domain-specific risk modeling.",
+        "examples": [
+          "Create a security risk report for the new authentication system with high likelihood and medium impact.",
+          "Assess operational risk for the supply chain process with specified mitigation strategies.",
+          "Generate a compliance risk entry for missing regulatory documentation with low likelihood but high impact."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "risk-management",
+        "security",
+        "project-management",
+        "assessment",
+        "mitigation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"riskType\":\"security\",\"description\":\"Unauthorized access due to weak authentication controls.\",\"likelihood\":\"high\",\"impact\":\"high\",\"affectedComponents\":[\"Authentication System\",\"User Database\"],\"mitigationStrategies\":[\"Implement multi-factor authentication\",\"Regular access reviews\"],\"discoveryDate\":\"2024-06-15\"}",
+          "description": "Create a detailed security risk report concerning authentication vulnerabilities with mitigation steps."
+        },
+        {
+          "inputJson": "{\"riskType\":\"operational\",\"description\":\"Potential delay in supply chain delivery due to vendor disruptions.\",\"likelihood\":\"medium\",\"impact\":\"medium\",\"affectedComponents\":[\"Supply Chain\"],\"mitigationStrategies\":[\"Establish backup vendors\",\"Increase inventory buffer\"],\"discoveryDate\":\"2024-06-10\"}",
+          "description": "Generate an operational risk assessment for supply chain delays and propose mitigation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Risk",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createBudget",
+      "description": "Creates a detailed business budget document from given inputs including revenue streams, fixed and variable costs, and financial goals. Processes the inputs to calculate total income, expenses, net profit, and provides a structured budget overview as output.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the project or business for which the budget is being created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "currency",
+          "type": "string",
+          "description": "The currency code (e.g., USD, EUR) to format monetary values.",
+          "required": false,
+          "defaultValue": "USD"
+        },
+        {
+          "name": "timePeriod",
+          "type": "string",
+          "description": "The time period the budget covers, such as a month, quarter, or year.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "revenueStreams",
+          "type": "array",
+          "description": "An array of objects each containing name and amount representing sources of income.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "fixedCosts",
+          "type": "array",
+          "description": "An array of objects representing fixed costs with name and amount properties.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "variableCosts",
+          "type": "array",
+          "description": "An array of objects representing variable costs with name and estimated amount properties.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "financialGoals",
+          "type": "array",
+          "description": "Optional array of financial goals or targets to highlight in the budget report.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a structured budget summary including total revenue, total fixed and variable costs, net profit, breakdowns, and notes on financial goals."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating comprehensive business budgets from raw income and expense data. It helps produce clear financial reports for planning and analysis, supporting decisions with precise profit calculations and goal tracking. Ideal for startups, project planning, and financial reporting.",
+        "limitations": "Does not perform advanced financial forecasting or integrate real-time data feeds. It relies on accurate input data and does not handle tax calculations or investment analysis.",
+        "examples": [
+          "Create a monthly budget for a software startup with fixed office rent, variable cloud service costs, and multiple revenue streams.",
+          "Generate a quarterly budget report for a marketing project including expected sales and promotional expenses.",
+          "Build an annual budget outlining revenue goals and corresponding fixed and variable operational costs for a small business."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "budget",
+        "business",
+        "finance",
+        "reporting",
+        "planning"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"EcoFriendly Startup\",\"currency\":\"USD\",\"timePeriod\":\"2024 Q2\",\"revenueStreams\":[{\"name\":\"Product Sales\",\"amount\":50000},{\"name\":\"Consulting Services\",\"amount\":15000}],\"fixedCosts\":[{\"name\":\"Office Rent\",\"amount\":7000},{\"name\":\"Salaries\",\"amount\":25000}],\"variableCosts\":[{\"name\":\"Marketing\",\"amount\":5000},{\"name\":\"Cloud Services\",\"amount\":2000}],\"financialGoals\":[\"Achieve 20% profit margin\"]}",
+          "description": "Creates a quarterly budget for a startup including revenue, fixed and variable costs, and financial goals."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Budget",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createForecast",
+      "description": "Generates a business forecast based on historical data and specified parameters. Accepts input data including time series sales or revenue figures, optional external factors, and forecasting horizon. Applies statistical or machine learning models to project future business metrics, and outputs a structured forecast with point estimates and confidence intervals.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "historicalData",
+          "type": "array",
+          "description": "Array of historical data points, each with timestamp and value, to use as input for forecasting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "forecastHorizon",
+          "type": "number",
+          "description": "Number of future periods (e.g., days, weeks, months) to forecast.",
+          "required": true,
+          "defaultValue": "12"
+        },
+        {
+          "name": "timeInterval",
+          "type": "string",
+          "description": "Time interval for the data points and forecast (e.g., daily, weekly, monthly).",
+          "required": true,
+          "defaultValue": "monthly"
+        },
+        {
+          "name": "modelType",
+          "type": "string",
+          "description": "Type of forecasting model to use, such as 'ARIMA', 'ExponentialSmoothing', or 'Prophet'.",
+          "required": false,
+          "defaultValue": "Prophet"
+        },
+        {
+          "name": "externalFactors",
+          "type": "object",
+          "description": "Optional object with external factors (e.g. marketing spend, holidays) keyed by date to improve forecast accuracy.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "confidenceLevel",
+          "type": "number",
+          "description": "Confidence level for forecast intervals as a decimal (e.g., 0.95 for 95%).",
+          "required": false,
+          "defaultValue": "0.95"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a forecast object containing predicted values for each period, confidence intervals, and metadata about the model applied."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate future business metric projections, such as sales or revenue, based on historical data and optional external factors. It helps in planning, budgeting, and decision-making by providing statistically sound forecasts with uncertainty quantification.",
+        "limitations": "This tool cannot access real-time data feeds automatically. It requires properly formatted historical data and assumes continuity in patterns unless external factors are well-defined. It does not replace expert human judgment or domain-specific adjustments.",
+        "examples": [
+          "Create a 6-month sales forecast using monthly sales data and holiday effects.",
+          "Generate a weekly revenue forecast for the next 12 weeks based on 3 years of weekly historical data.",
+          "Produce a revenue forecast with 95% confidence intervals applying the ARIMA model."
+        ]
+      },
+      "tags": [
+        "forecasting",
+        "business",
+        "content-creation",
+        "time-series",
+        "data-analysis",
+        "sales",
+        "revenue"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"historicalData\":[{\"timestamp\":\"2023-01\",\"value\":100},{\"timestamp\":\"2023-02\",\"value\":110},{\"timestamp\":\"2023-03\",\"value\":105},{\"timestamp\":\"2023-04\",\"value\":115}],\"forecastHorizon\":6,\"timeInterval\":\"monthly\",\"modelType\":\"Prophet\",\"confidenceLevel\":0.95}",
+          "description": "Monthly sales data for 4 months, forecasting next 6 months using Prophet with 95% confidence."
+        },
+        {
+          "inputJson": "{\"historicalData\":[{\"timestamp\":\"2023-01-01\",\"value\":2000},{\"timestamp\":\"2023-01-08\",\"value\":2500},{\"timestamp\":\"2023-01-15\",\"value\":2300}],\"forecastHorizon\":4,\"timeInterval\":\"weekly\",\"modelType\":\"ARIMA\",\"confidenceLevel\":0.90}",
+          "description": "Weekly revenue data for 3 weeks, forecasting next 4 weeks with ARIMA model and 90% confidence."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Forecast",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createPayment",
+      "description": "Creates a payment record by accepting details such as payer information, amount, currency, and payment method. The tool validates input parameters and outputs a structured payment object containing a unique payment ID, status, timestamp, and relevant transaction details for further processing or record-keeping.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "payerName",
+          "type": "string",
+          "description": "Full name of the payer initiating the payment",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "payerEmail",
+          "type": "string",
+          "description": "Email address of the payer for contact and receipt purposes",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "amount",
+          "type": "number",
+          "description": "The monetary amount to be paid, expressed as a positive number",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "currency",
+          "type": "string",
+          "description": "Three-letter ISO currency code representing the currency of the payment",
+          "required": true,
+          "defaultValue": "USD"
+        },
+        {
+          "name": "paymentMethod",
+          "type": "string",
+          "description": "Method of payment such as 'credit_card', 'bank_transfer', or 'paypal'",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Optional description or memo related to the payment",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional additional data related to the payment stored as key-value pairs",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the processed payment with ID, status, timestamp, and input details confirmed"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically generate a payment record during e-commerce transactions, invoicing workflows, or financial operations. It is useful for validating input payment details and creating a structured payment entity that integrates into broader payment processing pipelines.",
+        "limitations": "This tool does not process actual payment authorization or transaction clearing; it only creates and returns payment data records for further external handling.",
+        "examples": [
+          "Create a payment record for a buyer named John Doe paying $150 USD via credit_card.",
+          "Generate a payment entry with metadata for an invoice payment using PayPal.",
+          "Record a bank transfer payment of 500 EUR including a payment description."
+        ]
+      },
+      "tags": [
+        "payment",
+        "content-creation",
+        "business",
+        "transaction",
+        "finance",
+        "record-generation",
+        "e-commerce"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"payerName\":\"John Doe\",\"payerEmail\":\"john.doe@example.com\",\"amount\":150.00,\"currency\":\"USD\",\"paymentMethod\":\"credit_card\",\"description\":\"Order #12345 payment\",\"metadata\":{\"orderId\":\"12345\",\"customerType\":\"regular\"}}",
+          "description": "Creating a payment record for a credit card purchase by John Doe."
+        },
+        {
+          "inputJson": "{\"payerName\":\"Alice Smith\",\"payerEmail\":\"alice.smith@example.com\",\"amount\":500,\"currency\":\"EUR\",\"paymentMethod\":\"bank_transfer\",\"description\":\"Invoice payment for consulting services\"}",
+          "description": "Record a bank transfer payment including a descriptive memo."
+        },
+        {
+          "inputJson": "{\"payerName\":\"Bob Lee\",\"payerEmail\":\"bob.lee@example.com\",\"amount\":75.5,\"currency\":\"USD\",\"paymentMethod\":\"paypal\",\"metadata\":{\"invoiceId\":\"INV7890\"}}",
+          "description": "Generate a payment entry with PayPal payment method and additional metadata."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Payment",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createExpense",
+      "description": "Creates a detailed expense record based on input parameters such as amount, currency, category, date, description, and optionally attached receipts. Processes the input to generate a structured expense entry including metadata for accounting or reimbursement purposes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "amount",
+          "type": "number",
+          "description": "Monetary value of the expense.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "currency",
+          "type": "string",
+          "description": "Currency code in ISO 4217 format (e.g., USD, EUR) for the expense amount.",
+          "required": true,
+          "defaultValue": "USD"
+        },
+        {
+          "name": "category",
+          "type": "string",
+          "description": "Category of the expense, like Travel, Meals, Office Supplies.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "Date of the expense in ISO 8601 format (YYYY-MM-DD).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Detailed description or notes about the expense.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "merchant",
+          "type": "string",
+          "description": "Name of the merchant or payee where the expense occurred.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "receiptUrls",
+          "type": "array",
+          "description": "Optional list of URLs pointing to image or PDF receipts associated with the expense.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "taxAmount",
+          "type": "number",
+          "description": "Tax amount included in the expense, if applicable.",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "paymentMethod",
+          "type": "string",
+          "description": "Payment method used, e.g., credit card, cash, company account.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the created expense record with a unique identifier, full details from input parameters, calculated fields if any, and timestamp of creation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create and log a new expense. This can be part of financial workflow automation, reimbursement processing, or expense tracking. The agent provides required and optional details and receives a structured expense record for subsequent handling.",
+        "limitations": "This tool does not perform currency conversion, receipt image processing (such as OCR), or validation against company policies. It creates the structured expense entry only.",
+        "examples": [
+          "Create an expense record for a business meal with a partner including receipts.",
+          "Log a travel expense with amount, category, date and specify payment method.",
+          "Add a new office supplies expense with a description and tax amount."
+        ]
+      },
+      "tags": [
+        "expense",
+        "finance",
+        "content-creation",
+        "create",
+        "accounting",
+        "reimbursement"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"amount\":123.45,\"currency\":\"USD\",\"category\":\"Meals\",\"date\":\"2024-05-01\",\"description\":\"Business lunch with client\",\"merchant\":\"The Seafood Place\",\"receiptUrls\":[\"https://example.com/receipts/123.pdf\"],\"paymentMethod\":\"Corporate Credit Card\"}",
+          "description": "Create a meal expense including metadata and receipt link."
+        },
+        {
+          "inputJson": "{\"amount\":2500,\"currency\":\"EUR\",\"category\":\"Travel\",\"date\":\"2024-04-20\",\"description\":\"Flight ticket to Conference\",\"paymentMethod\":\"Company Account\"}",
+          "description": "Record a travel expense for a flight ticket without receipt attachment."
+        },
+        {
+          "inputJson": "{\"amount\":87.5,\"currency\":\"GBP\",\"category\":\"Office Supplies\",\"date\":\"2024-03-30\",\"taxAmount\":7.5,\"description\":\"Printer ink purchase\",\"merchant\":\"Stationery Store\"}",
+          "description": "Add an office supply expense including tax and merchant information."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Expense",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createOrder",
+      "description": "This tool accepts order details including customer info, item list, quantities, prices, and shipping data to generate a structured order record. It validates and processes the input to produce a standardized order output suitable for use in content management or e-commerce workflows.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "customerName",
+          "type": "string",
+          "description": "Full name of the customer placing the order",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "customerEmail",
+          "type": "string",
+          "description": "Email address of the customer for notifications",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "items",
+          "type": "array",
+          "description": "List of ordered items, each with product ID, quantity, and unit price",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "shippingAddress",
+          "type": "object",
+          "description": "Shipping address details including street, city, postal code, and country",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "orderDate",
+          "type": "string",
+          "description": "Date when the order was placed in ISO 8601 format",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "notes",
+          "type": "string",
+          "description": "Optional special instructions or notes related to the order",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured order object including order ID, customer info, itemized list with totals, shipping info, order date, and status"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically create and structure orders for customers in digital content systems, online stores, or CRM platforms. It ensures the necessary fields are collected and a complete order record is produced for further processing, integration, or communication.",
+        "limitations": "This tool does not perform payment processing or inventory management. It only creates and formats the order record; additional services are needed to handle fulfillment or payment.",
+        "examples": [
+          "Create a new customer order with two items, shipping details, and optional notes.",
+          "Generate an order record from a customer's purchase including email and delivery address.",
+          "Produce an order summary object with calculated totals ready for export to a system."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "order-management",
+        "e-commerce",
+        "business",
+        "customer",
+        "purchase"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"customerName\":\"Alice Johnson\",\"customerEmail\":\"alice.johnson@example.com\",\"items\":[{\"productId\":\"P1001\",\"quantity\":2,\"unitPrice\":29.99},{\"productId\":\"P2054\",\"quantity\":1,\"unitPrice\":99.95}],\"shippingAddress\":{\"street\":\"123 Elm St\",\"city\":\"Springfield\",\"postalCode\":\"62704\",\"country\":\"USA\"},\"orderDate\":\"2024-06-15T10:30:00Z\",\"notes\":\"Leave package at front door.\"}",
+          "description": "Create an order for Alice Johnson with two distinct products, including full shipping info and a delivery note."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Order",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createAccount",
+      "description": "Creates a new business account profile by accepting essential details such as company name, contact information, industry, and optional metadata. Processes and validates input to generate a standardized account record including a unique identifier, timestamps, and profile status. Returns the created account details for integration or further processing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "companyName",
+          "type": "string",
+          "description": "The official name of the business entity to create an account for.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contactEmail",
+          "type": "string",
+          "description": "Primary email address for account contact and notifications.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contactPhone",
+          "type": "string",
+          "description": "Optional phone number for additional contact method.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "industry",
+          "type": "string",
+          "description": "The industry sector to which the business belongs, e.g., Technology, Retail.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "address",
+          "type": "object",
+          "description": "Physical address details including street, city, state, postal code, and country.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional key-value pairs for additional customizable data related to the account.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "isActive",
+          "type": "boolean",
+          "description": "Flag to specify if the account should be created as active or inactive.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the detailed created account, including generated accountId, input data, timestamps for creation, and current account status."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool whenever a new business entity profile needs to be created within a content management or CRM system. Suitable for automating account onboarding based on provided business data inputs, ensuring records are consistently structured and validated before further processing.",
+        "limitations": "This tool does not verify the legal existence of the business or validate contact details beyond basic formatting checks. It also does not assign permissions or link accounts to users; those must be handled separately.",
+        "examples": [
+          "Create a new account for a tech startup with contact email and industry classification.",
+          "Add a retail store profile including full address and optional metadata for marketing preferences.",
+          "Set up an inactive account entry for a business partner pending verification."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "account",
+        "business",
+        "profile",
+        "onboarding",
+        "crm",
+        "data-entry"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"companyName\":\"GreenTech Solutions\",\"contactEmail\":\"contact@greentech.com\",\"contactPhone\":\"+1234567890\",\"industry\":\"Technology\",\"address\":{\"street\":\"456 Elm St\",\"city\":\"Springfield\",\"state\":\"IL\",\"postalCode\":\"62701\",\"country\":\"USA\"},\"metadata\":{\"preferredLanguage\":\"en\",\"segment\":\"SMB\"},\"isActive\":true}",
+          "description": "Create an active account for a technology company with contact details and address."
+        },
+        {
+          "inputJson": "{\"companyName\":\"FreshMart Grocery\",\"contactEmail\":\"info@freshmart.com\",\"industry\":\"Retail\",\"metadata\":{\"loyaltyMember\":true},\"isActive\":false}",
+          "description": "Create an inactive retail account with minimal contact info and metadata indicating loyalty membership."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Account",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createDeal",
+      "description": "Generates a comprehensive deal document based on input parameters including deal title, parties involved, financial terms, deal duration, confidentiality clauses, and special conditions. The tool processes these inputs to produce a structured deal summary or contract draft as an output, suitable for review or further editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "dealTitle",
+          "type": "string",
+          "description": "The title or name of the deal.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "partiesInvolved",
+          "type": "array",
+          "description": "A list of parties involved in the deal, each with name and role.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "financialTerms",
+          "type": "object",
+          "description": "Key financial details such as price, payment schedule, currency.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dealDurationMonths",
+          "type": "number",
+          "description": "Duration of the deal in months.",
+          "required": false,
+          "defaultValue": "12"
+        },
+        {
+          "name": "confidentialityClause",
+          "type": "boolean",
+          "description": "Whether to include a confidentiality clause in the deal document.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "specialConditions",
+          "type": "array",
+          "description": "Any special terms or conditions to be included in the deal as text entries.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted deal document text, a summary of key terms, and a status flag indicating success or errors."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a formalized deal or contract draft from structured input data for business negotiations, contract reviews, or proposal creation. Ideal for automating routine deal creation or generating standardized contract drafts based on user inputs.",
+        "limitations": "This tool does not perform legal validation or compliance checking and cannot customize highly complex legal language beyond templated clauses. It is intended for draft generation and requires human review.",
+        "examples": [
+          "Create a deal draft between two companies for software licensing with payment terms and confidentiality.",
+          "Generate a short-term service agreement including special conditions and no confidentiality clause.",
+          "Draft a purchase deal for equipment with detailed financial terms and 24-month duration."
+        ]
+      },
+      "tags": [
+        "deal",
+        "contract",
+        "business",
+        "content-generation",
+        "document-creation",
+        "legal-draft"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dealTitle\":\"Software Licensing Agreement\",\"partiesInvolved\":[{\"name\":\"Alpha Corp\",\"role\":\"Licensor\"},{\"name\":\"Beta LLC\",\"role\":\"Licensee\"}],\"financialTerms\":{\"price\":50000,\"paymentSchedule\":\"quarterly\",\"currency\":\"USD\"},\"dealDurationMonths\":12,\"confidentialityClause\":true,\"specialConditions\":[\"Support included for first 12 months\",\"Renewal on mutual agreement\"]}",
+          "description": "Creating a software license deal between two companies including payment terms and confidentiality."
+        },
+        {
+          "inputJson": "{\"dealTitle\":\"Consulting Services Deal\",\"partiesInvolved\":[{\"name\":\"Gamma Consulting\",\"role\":\"Service Provider\"},{\"name\":\"Delta Inc\",\"role\":\"Client\"}],\"financialTerms\":{\"price\":20000,\"paymentSchedule\":\"monthly\",\"currency\":\"USD\"},\"dealDurationMonths\":6,\"confidentialityClause\":false,\"specialConditions\":[]}",
+          "description": "Drafting a consulting service agreement without confidentiality clause for six months duration."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Deal",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createGraph",
+      "description": "Creates a customizable graph image based on provided data points and configuration. Accepts an array of data sets with labels and values, graph type (e.g., line, bar, pie), axis labels, colors, title, and other stylistic options. Generates and returns a graph image URL or base64-encoded image for use in presentations, reports, or web content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "graphType",
+          "type": "string",
+          "description": "Type of graph to create, e.g., 'line', 'bar', 'pie', 'scatter'.",
+          "required": true,
+          "defaultValue": "line"
+        },
+        {
+          "name": "dataSets",
+          "type": "array",
+          "description": "An array of data objects each containing a label (string) and values (array of numbers) to plot.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "xAxisLabel",
+          "type": "string",
+          "description": "Label for the X-axis (ignored for pie charts).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "yAxisLabel",
+          "type": "string",
+          "description": "Label for the Y-axis (ignored for pie charts).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title text to display above the graph.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "colors",
+          "type": "array",
+          "description": "Array of color strings to use for each data set or pie slice.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the generated graph image in pixels.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the generated graph image in pixels.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "showLegend",
+          "type": "boolean",
+          "description": "Whether to display a legend describing the data sets.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the graph image data, including a URL or a base64-encoded PNG image string for embedding."
+      },
+      "aiAgent": {
+        "useCase": "This tool is ideal when needing to visualize numeric data in various common graph formats for reports, dashboards, or content creation. Agents should use it to transform structured data inputs into clear graphical representations for enhanced comprehension.",
+        "limitations": "The tool generates standard graph types and supports basic customization but cannot create highly complex or interactive charts (e.g., 3D graphs or real-time data streaming charts).",
+        "examples": [
+          "Create a bar graph showing quarterly sales for three products.",
+          "Generate a pie chart displaying market share percentages across segments.",
+          "Produce a line graph tracking website traffic over a year with monthly data points."
+        ]
+      },
+      "tags": [
+        "graph",
+        "chart",
+        "data-visualization",
+        "content-creation",
+        "image-generation",
+        "reporting",
+        "analytics"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"graphType\":\"bar\",\"dataSets\":[{\"label\":\"Product A\",\"values\":[120,150,180,200]},{\"label\":\"Product B\",\"values\":[80,90,100,110]}],\"xAxisLabel\":\"Quarter\",\"yAxisLabel\":\"Sales ($k)\",\"title\":\"Quarterly Sales Comparison\",\"colors\":[\"#1f77b4\",\"#ff7f0e\"],\"width\":800,\"height\":600,\"showLegend\":true}",
+          "description": "Generate a bar chart comparing sales of two products over four quarters with labeled axes and legend."
+        },
+        {
+          "inputJson": "{\"graphType\":\"pie\",\"dataSets\":[{\"label\":\"North America\",\"values\":[40]},{\"label\":\"Europe\",\"values\":[30]},{\"label\":\"Asia\",\"values\":[20]},{\"label\":\"Other\",\"values\":[10]}],\"title\":\"Regional Market Share\",\"colors\":[\"#4daf4a\",\"#377eb8\",\"#ff7f00\",\"#984ea3\"],\"width\":600,\"height\":600,\"showLegend\":true}",
+          "description": "Create a pie chart illustrating market share by region with distinct colors and a legend."
+        },
+        {
+          "inputJson": "{\"graphType\":\"line\",\"dataSets\":[{\"label\":\"Website Visitors\",\"values\":[1000,1200,1500,1700,1600,1800,2000,2200,2100,2300,2500,2700]}],\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Visitors\",\"title\":\"Monthly Website Traffic 2023\",\"width\":900,\"height\":500,\"showLegend\":false}",
+          "description": "Produce a line graph showing the monthly visitor counts throughout the year with axis labels, no legend."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Graph",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createOpportunity",
+      "description": "Creates a detailed business opportunity record based on provided inputs such as title, description, target market, expected revenue, and timeline. The tool processes the inputs to generate a structured opportunity object that can be used for tracking, evaluation, or inclusion in CRM systems.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The name or title of the business opportunity.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A detailed description of the opportunity including key features and value proposition.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetMarket",
+          "type": "string",
+          "description": "The primary market or customer segment the opportunity is aimed at.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "expectedRevenue",
+          "type": "number",
+          "description": "Estimated revenue in USD that this opportunity is expected to generate.",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "timelineStart",
+          "type": "string",
+          "description": "Start date of the opportunity timeline in ISO 8601 format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "timelineEnd",
+          "type": "string",
+          "description": "End date of the opportunity timeline in ISO 8601 format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "priority",
+          "type": "string",
+          "description": "Priority level of the opportunity (e.g., Low, Medium, High).",
+          "required": false,
+          "defaultValue": "Medium"
+        },
+        {
+          "name": "tags",
+          "type": "array",
+          "description": "Tags or keywords associated with the opportunity for categorization or search.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured business opportunity object containing all input data plus a generated unique identifier and creation timestamp."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to create clear, consistent records of new business opportunities whenever the AI agent identifies a user intent to propose, log, or document potential business ventures or sales leads. It helps in organizing opportunity data systematically for follow-up or analysis.",
+        "limitations": "This tool does not validate financial accuracy or market feasibility; it creates structured data based solely on input parameters without assessing opportunity viability.",
+        "examples": [
+          "Create a new sales opportunity for a cloud software product targeting SMBs with expected revenue $100,000 starting next month.",
+          "Add an opportunity for a partnership deal with a vendor including timeline and priority information.",
+          "Generate a detailed entry of a new market expansion opportunity with relevant tags."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "business",
+        "opportunity",
+        "CRM",
+        "lead-management",
+        "sales",
+        "marketing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Cloud Migration Service\",\"description\":\"Offering cloud migration consulting and managed services for SMBs.\",\"targetMarket\":\"Small and Medium Businesses\",\"expectedRevenue\":100000,\"timelineStart\":\"2024-07-01\",\"timelineEnd\":\"2024-12-31\",\"priority\":\"High\",\"tags\":[\"cloud\",\"migration\",\"SMB\"]}",
+          "description": "Creating a high priority cloud migration service opportunity for small and medium businesses with expected revenue and timeline."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Opportunity",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createLead",
+      "description": "Generates a new business lead record based on provided contact details, company information, and lead qualification data. Processes the input to structure a standardized lead profile suitable for CRM ingestion or marketing outreach, outputting a complete lead object with unique ID, contact info, status, and tags.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "firstName",
+          "type": "string",
+          "description": "Lead's first name",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "lastName",
+          "type": "string",
+          "description": "Lead's last name",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "email",
+          "type": "string",
+          "description": "Lead's email address",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "phoneNumber",
+          "type": "string",
+          "description": "Lead's phone number",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "company",
+          "type": "string",
+          "description": "Lead's company name",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "jobTitle",
+          "type": "string",
+          "description": "Lead's job title or role",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "leadSource",
+          "type": "string",
+          "description": "Origin of the lead (e.g., conference, website, referral)",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "status",
+          "type": "string",
+          "description": "Current lead status (e.g., new, contacted, qualified)",
+          "required": false,
+          "defaultValue": "new"
+        },
+        {
+          "name": "tags",
+          "type": "array",
+          "description": "Optional list of tags to categorize the lead",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Standardized lead object including unique leadId, full contact info, status, and metadata"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create a structured business lead from raw contact and company data. Ideal for automating CRM entry or preparing leads for marketing/sales outreach. It helps standardize disparate input details into a usable lead entity.",
+        "limitations": "Does not verify contact validity or enrich lead data with third party sources. It assumes input correctness and completeness for best results.",
+        "examples": [
+          "Create a lead from conference sign-up data",
+          "Generate a new lead from website form submission",
+          "Add a new sales lead with contact and company details"
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "lead-generation",
+        "business",
+        "crm",
+        "marketing",
+        "sales",
+        "contact-management"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"+1234567890\",\"company\":\"ExampleCorp\",\"jobTitle\":\"Marketing Manager\",\"leadSource\":\"webinar\",\"status\":\"new\",\"tags\":[\"webinar\",\"marketing\"]}",
+          "description": "Create a new marketing lead from webinar signup data with basic contact and company info."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Lead",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCustomer",
+      "description": "Creates a new customer profile for a business by accepting essential details such as name, contact info, address, and optional metadata. Validates inputs and returns the created customer's unique identifier and summary.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "firstName",
+          "type": "string",
+          "description": "Customer's first name",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "lastName",
+          "type": "string",
+          "description": "Customer's last name",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "email",
+          "type": "string",
+          "description": "Customer's email address for communication",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "phoneNumber",
+          "type": "string",
+          "description": "Customer's phone number",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "address",
+          "type": "object",
+          "description": "Physical address including street, city, state, postalCode, and country",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional key-value pairs for additional customer attributes or tags",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the unique customer ID, full name, contact info, and stored metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to register or update a new customer profile within a CRM or business system by providing required personal and contact details. Helpful for onboarding, account creation workflows, or customer data management scenarios.",
+        "limitations": "This tool does not handle customer authentication, credit checks, or complex validations beyond basic input format checks. It also does not integrate with payment systems or external databases automatically.",
+        "examples": [
+          "Create a new customer profile for John Doe with email and address.",
+          "Register a customer with metadata tags for marketing segmentation.",
+          "Add a phone number to a new customer profile creation request."
+        ]
+      },
+      "tags": [
+        "customer",
+        "creation",
+        "profile",
+        "contact",
+        "crm",
+        "business",
+        "management"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Smith\",\"email\":\"jane.smith@example.com\",\"phoneNumber\":\"123-456-7890\",\"address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\",\"state\":\"CA\",\"postalCode\":\"12345\",\"country\":\"USA\"},\"metadata\":{\"preferredContactMethod\":\"email\",\"customerTier\":\"gold\"}}",
+          "description": "Create a complete customer profile with contact info and metadata tags."
+        },
+        {
+          "inputJson": "{\"firstName\":\"Mike\",\"lastName\":\"Brown\",\"email\":\"mike.brown@example.com\"}",
+          "description": "Create a minimal customer profile with just required fields."
+        },
+        {
+          "inputJson": "{\"firstName\":\"Anna\",\"lastName\":\"Lee\",\"email\":\"anna.lee@example.com\",\"metadata\":{\"newsletterSubscribed\":true}}",
+          "description": "Create customer profile including a subscription metadata flag."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Customer",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createChart",
+      "description": "Generates a customizable chart image based on provided data and parameters. Accepts data series, chart type, labels, and styling options to produce a chart in PNG or SVG format suitable for embedding in documents or web pages.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "chartType",
+          "type": "string",
+          "description": "Type of chart to create, e.g., 'bar', 'line', 'pie'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "data",
+          "type": "array",
+          "description": "Array of data series objects {name:string, values:number[]} representing datasets to plot.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "labels",
+          "type": "array",
+          "description": "Array of strings labeling the data points on the axis or pie slices.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the chart shown prominently above the chart area.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the output chart image in pixels.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the output chart image in pixels.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "colorScheme",
+          "type": "array",
+          "description": "Array of color strings to style each data series distinctively.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Output image format, either 'png' or 'svg'.",
+          "required": false,
+          "defaultValue": "png"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the base64-encoded chart image string and its MIME type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating visual data representations like bar charts, line graphs, or pie charts from structured numeric data to embed as images in reports, presentations, or web content.",
+        "limitations": "Does not support interactive or animated charts, limited to standard chart types, and assumes data is numeric and properly preprocessed.",
+        "examples": [
+          "Create a bar chart comparing monthly sales figures for multiple products.",
+          "Generate a pie chart showing market share percentages for different brands.",
+          "Produce a line chart illustrating temperature changes over time."
+        ]
+      },
+      "tags": [
+        "chart",
+        "visualization",
+        "image",
+        "data",
+        "content",
+        "creation",
+        "graph",
+        "report"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"chartType\":\"bar\",\"data\":[{\"name\":\"Q1 Sales\",\"values\":[150,200,170]},{\"name\":\"Q2 Sales\",\"values\":[180,210,160]}],\"labels\":[\"January\",\"February\",\"March\"],\"title\":\"Quarterly Sales Comparison\",\"width\":800,\"height\":600,\"colorScheme\":[\"#4caf50\",\"#2196f3\"],\"outputFormat\":\"png\"}",
+          "description": "Bar chart comparing Q1 and Q2 sales across three months."
+        },
+        {
+          "inputJson": "{\"chartType\":\"pie\",\"data\":[{\"name\":\"Share\",\"values\":[40,30,20,10]}],\"labels\":[\"Brand A\",\"Brand B\",\"Brand C\",\"Brand D\"],\"title\":\"Market Share Distribution\",\"outputFormat\":\"svg\"}",
+          "description": "Pie chart illustrating market share distribution for four brands."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Chart",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createScreenshot",
+      "description": "Captures a screenshot of a specified web page or screen area on a device. Accepts URL or screen coordinates and optional viewport size, delay, and image format parameters. Returns the screenshot image encoded as base64 along with metadata such as dimensions and format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "targetUrl",
+          "type": "string",
+          "description": "The full URL of the web page to capture a screenshot from. Required if areaCoordinates is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "areaCoordinates",
+          "type": "object",
+          "description": "An object defining the rectangular screen area to capture with top, left, width, and height properties in pixels. Required if targetUrl is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "viewportWidth",
+          "type": "number",
+          "description": "Width of the virtual viewport to render the page for screenshot, in pixels. Defaults to 1280.",
+          "required": false,
+          "defaultValue": "1280"
+        },
+        {
+          "name": "viewportHeight",
+          "type": "number",
+          "description": "Height of the virtual viewport to render the page for screenshot, in pixels. Defaults to 720.",
+          "required": false,
+          "defaultValue": "720"
+        },
+        {
+          "name": "delaySeconds",
+          "type": "number",
+          "description": "Time in seconds to wait after page load or before capturing area to allow dynamic content to render. Defaults to 0.",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "imageFormat",
+          "type": "string",
+          "description": "The image format to output: png or jpeg. Defaults to png.",
+          "required": false,
+          "defaultValue": "png"
+        },
+        {
+          "name": "quality",
+          "type": "number",
+          "description": "Quality of the output image for jpeg format, from 0 to 100. Defaults to 80. Ignored for png.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the captured screenshot image as a base64 string, the image format, width, and height in pixels."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to visually capture the current state of a web page or a specific area on a screen for documentation, analysis, or content creation purposes. It works well for generating visual data from URLs or screen coordinates, supporting optional viewport sizing and delays for dynamic content.",
+        "limitations": "Cannot capture screenshots of local files or pages behind authentication without additional setup. Does not support video or interactive content capture. Image quality depends on viewport and format settings.",
+        "examples": [
+          "Capture a full-page screenshot of https://example.com in PNG format with default viewport.",
+          "Capture a 300x200 pixel area at coordinates (100,100) on the screen, output as JPEG with quality 70.",
+          "Capture https://news.example.com screenshot waiting 2 seconds after load to allow ads to appear."
+        ]
+      },
+      "tags": [
+        "screenshot",
+        "image",
+        "web-capture",
+        "content-creation",
+        "media"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"targetUrl\":\"https://example.com\",\"viewportWidth\":1280,\"viewportHeight\":720,\"imageFormat\":\"png\"}",
+          "description": "Capture a full-page screenshot of example.com in PNG with default viewport."
+        },
+        {
+          "inputJson": "{\"areaCoordinates\":{\"top\":100,\"left\":100,\"width\":300,\"height\":200},\"imageFormat\":\"jpeg\",\"quality\":70}",
+          "description": "Capture a 300x200 pixels area on screen at (100,100) output as JPEG with quality 70."
+        },
+        {
+          "inputJson": "{\"targetUrl\":\"https://news.example.com\",\"delaySeconds\":2,\"imageFormat\":\"png\"}",
+          "description": "Capture https://news.example.com with 2 seconds delay after load to ensure dynamic content is rendered."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Screenshot",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createDiagram",
+      "description": "Generates vector-based diagrams from structured input defining nodes, edges, styles, and layout preferences. Accepts JSON to specify diagram type (flowchart, network, UML), elements, and design options. Outputs a scalable SVG or PNG image file representing the constructed diagram suitable for embedding or download.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "diagramType",
+          "type": "string",
+          "description": "Type of diagram to create (e.g., flowchart, network, UML)",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "nodes",
+          "type": "array",
+          "description": "Array of node objects each with id, label, and optional properties like shape or color",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "edges",
+          "type": "array",
+          "description": "Array of edge objects defining source and target node ids, labels, and optional style attributes",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "layout",
+          "type": "string",
+          "description": "Preferred layout style (e.g., hierarchical, radial, force-directed) to arrange the diagram automatically",
+          "required": false,
+          "defaultValue": "hierarchical"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output image format: 'svg' (default) or 'png'",
+          "required": false,
+          "defaultValue": "svg"
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the output image in pixels",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the output image in pixels",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "includeLegend",
+          "type": "boolean",
+          "description": "Whether to include a legend describing node and edge types",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing the diagram image as a base64 string and metadata describing format, width, height, and type"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to programmatically generate clear, structured diagrams for documentation, reports, visual explanations, or presentations from defined node and edge data. It is ideal when you require vector output with customizable styling and layout from raw data inputs.",
+        "limitations": "This tool does not perform freeform drawing or recognize hand-drawn shapes; it requires structured input data. It cannot generate complex animations or interactive diagrams but static images only.",
+        "examples": [
+          "Create a flowchart diagram from a list of steps and connections.",
+          "Generate a UML class diagram representing classes and their relationships.",
+          "Produce a network topology visualization from node and edge lists with specified layout."
+        ]
+      },
+      "tags": [
+        "diagram",
+        "visualization",
+        "content-creation",
+        "flowchart",
+        "UML",
+        "network",
+        "vector-graphics"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"diagramType\":\"flowchart\",\"nodes\":[{\"id\":\"start\",\"label\":\"Start\",\"shape\":\"circle\",\"color\":\"green\"},{\"id\":\"step1\",\"label\":\"Do Task A\",\"shape\":\"rectangle\"},{\"id\":\"end\",\"label\":\"End\",\"shape\":\"circle\",\"color\":\"red\"}],\"edges\":[{\"source\":\"start\",\"target\":\"step1\"},{\"source\":\"step1\",\"target\":\"end\"}],\"layout\":\"hierarchical\",\"outputFormat\":\"svg\",\"width\":800,\"height\":600,\"includeLegend\":true}",
+          "description": "Generate a simple flowchart diagram illustrating a process from start to end with a single task."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Diagram",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createHTML",
+      "description": "Generates customizable HTML code based on specified parameters such as title, body content, styles, and scripts. Accepts input for key HTML components and outputs a complete HTML document string that can be used directly in web pages or projects.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title text for the HTML document's  tag, displayed in the browser tab.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "bodyContent",
+          "type": "string",
+          "description": "HTML content to be placed inside the <body> tag, including text, images, or other HTML elements.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inlineCSS",
+          "type": "string",
+          "description": "CSS styles to be included within a <style> tag inside the <head> section for custom styling.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "externalCSSLinks",
+          "type": "array",
+          "description": "Array of URLs linking to external CSS stylesheets to include via <link> tags.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "inlineScripts",
+          "type": "string",
+          "description": "JavaScript code to be embedded inside <script> tags just before the closing </body> tag.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "externalScriptLinks",
+          "type": "array",
+          "description": "Array of URLs linking to external JavaScript files to include via <script src=\"...\"> tags before </body>.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code to set the lang attribute on the <html> element (e.g., 'en').",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single 'html' string with the fully constructed HTML document."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to create complete, ready-to-use HTML documents dynamically from structured inputs for websites, prototypes, or content generation when needing custom titles, body content, styles, and scripts added automatically.",
+        "limitations": "Does not render or execute the HTML, does not validate input HTML or scripts for security or correctness, and expects well-formed inputs; complex dynamic behavior (e.g., interactive single-page apps) should be handled separately.",
+        "examples": [
+          "Create a simple HTML page titled 'My Page' with a welcome message in the body.",
+          "Generate an HTML page with inline CSS for styling and external JavaScript files included.",
+          "Produce an HTML document in Spanish with localized language attribute and a custom inline script."
+        ]
+      },
+      "tags": [
+        "content",
+        "HTML",
+        "web",
+        "generate",
+        "static-page",
+        "template"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Welcome\",\"bodyContent\":\"<h1>Hello World</h1><p>This is a test page.</p>\",\"inlineCSS\":\"body { font-family: Arial; color: #333; } h1 { color: blue; }\",\"externalCSSLinks\":[],\"inlineScripts\":\"console.log('Page loaded');\",\"externalScriptLinks\":[],\"language\":\"en\"}",
+          "description": "Creates a basic HTML page with styled header and a console log script."
+        },
+        {
+          "inputJson": "{\"title\":\"Gallery\",\"bodyContent\":\"<div><img src='photo.jpg' alt='Photo'><p>Photo Caption</p></div>\",\"inlineCSS\":\"div { border: 1px solid #ccc; padding: 10px; } img { max-width: 100%; }\",\"externalCSSLinks\":[\"https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css\"],\"inlineScripts\":\"\",\"externalScriptLinks\":[\"https://code.jquery.com/jquery-3.6.0.min.js\"],\"language\":\"en\"}",
+          "description": "Generates an HTML page displaying an image with caption, uses external normalize CSS and jQuery script."
+        },
+        {
+          "inputJson": "{\"title\":\"Página Principal\",\"bodyContent\":\"<h1>Bienvenidos a mi sitio</h1><p>Contenido en español.</p>\",\"inlineCSS\":\"body { background-color: #fafafa; }\",\"externalCSSLinks\":[],\"inlineScripts\":\"alert('Bienvenido!');\",\"externalScriptLinks\":[],\"language\":\"es\"}",
+          "description": "Creates a Spanish language page with inline styles and an alert script."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "HTML",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createFile",
+      "description": "Generates a new digital file of specified type and content. Accepts parameters including file type (e.g., text, markdown, json, image), content data, optional metadata like filename and encoding. Produces a file object with contents encoded appropriately, ready for storage or further processing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "fileType",
+          "type": "string",
+          "description": "The type of file to create, such as 'txt', 'md', 'json', 'png', or 'jpg'. Determines expected content format and encoding.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "content",
+          "type": "string",
+          "description": "The raw content to put inside the file. For text-based files, plain string content; for image files, a base64 encoded string representation of the image data.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "fileName",
+          "type": "string",
+          "description": "Optional custom filename without extension. If omitted, a default name will be generated.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "encoding",
+          "type": "string",
+          "description": "Character encoding for text files, e.g., 'utf-8'. Ignored for binary files like images.",
+          "required": false,
+          "defaultValue": "utf-8"
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional additional metadata to attach to the file, such as description or tags.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the created file, including the full filename, content encoded suitably, fileType, encoding used, and any metadata attached."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create and output a digital file containing user-specified content. This applies to generating text documents, code files, JSON data files, or base64-encoded images for storage, transmission, or further manipulation. It supports both textual content and encoded binary content.",
+        "limitations": "This tool cannot generate complex binary files from raw data aside from base64 strings, nor can it validate or parse content. It does not handle file uploading or persistent storage itself.",
+        "examples": [
+          "Create a markdown file with notes about a project",
+          "Generate a JSON config file with provided settings",
+          "Create a PNG image file from a base64 string of image data"
+        ]
+      },
+      "tags": [
+        "file",
+        "creation",
+        "content-generation",
+        "text",
+        "image",
+        "encoding",
+        "document",
+        "media"
+      ],
+      "examples": [
+        {
+          "inputJson": "{ \"fileType\": \"md\", \"content\": \"# Project Title\\nThis is a markdown file.\", \"fileName\": \"project_notes\" }",
+          "description": "Creates a markdown (.md) file named 'project_notes.md' containing a simple header and text."
+        },
+        {
+          "inputJson": "{ \"fileType\": \"json\", \"content\": \"{\\\"theme\\\": \\\"dark\\\", \\\"version\\\": 1}\", \"fileName\": \"config\" }",
+          "description": "Creates a JSON file named 'config.json' with configuration data."
+        },
+        {
+          "inputJson": "{ \"fileType\": \"png\", \"content\": \"iVBORw0KGgoAAAANSUhEUgAAAAUA\", \"fileName\": \"image1\" }",
+          "description": "Creates a PNG image file named 'image1.png' from a base64 encoded image content string."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "File",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createAttachment",
+      "description": "Creates a media attachment object from provided content and metadata. Accepts raw media content or a URL, along with metadata like filename, content type, and description. Processes input to generate an attachment object with accessible link, file details, and optional thumbnail or preview data.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "content",
+          "type": "string",
+          "description": "Base64-encoded raw media content or empty if using url. Required if url is empty.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL pointing to the media resource, used if raw content is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "fileName",
+          "type": "string",
+          "description": "Name of the file including extension (e.g., 'photo.jpg').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contentType",
+          "type": "string",
+          "description": "MIME type of the attachment (e.g., 'image/jpeg', 'application/pdf').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Optional textual description or caption for the attachment.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "thumbnailBase64",
+          "type": "string",
+          "description": "Optional base64-encoded thumbnail image for preview purposes.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the created attachment including accessible URL, filename, content-type, description, and optional thumbnail data."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or uploading media attachments within content creation workflows, such as adding images, documents, or videos to posts, messages, or content records. It helps consolidate provided content or external URLs into a standardized attachment object for downstream use.",
+        "limitations": "This tool does not perform media content validation, virus scanning, or storage. It does not upload content to remote servers by itself and depends on externally hosted URLs or pre-uploaded content encoded in base64.",
+        "examples": [
+          "Create an image attachment from base64 content with a description.",
+          "Generate a PDF attachment that references an external URL.",
+          "Add a video attachment including a thumbnail preview image."
+        ]
+      },
+      "tags": [
+        "content",
+        "media",
+        "attachment",
+        "creation",
+        "upload",
+        "file",
+        "base64",
+        "url"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"content\":\"iVBORw0KGgoAAAANSUhEUgAAA...\",\"url\":\"\",\"fileName\":\"example.png\",\"contentType\":\"image/png\",\"description\":\"Screenshot of the chart\",\"thumbnailBase64\":\"iVBORw0KGgoAAAANSUhEUgAAA...\"}",
+          "description": "Creating a PNG image attachment from raw base64 content with description and thumbnail."
+        },
+        {
+          "inputJson": "{\"content\":\"\",\"url\":\"https://example.com/files/document.pdf\",\"fileName\":\"document.pdf\",\"contentType\":\"application/pdf\",\"description\":\"Annual report PDF attachment.\",\"thumbnailBase64\":\"\"}",
+          "description": "Creating a PDF attachment referencing an external URL, no raw content included."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Attachment",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createVideo",
+      "description": "Creates a video from given media inputs including images, audio clips, and video clips. It allows specification of durations, transitions, and overlay text to produce a cohesive output video file in popular formats. Inputs are processed sequentially and compiled into a single rendered video output path or URL.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "mediaItems",
+          "type": "array",
+          "description": "An ordered list of media objects (images, audio, or video) with timing and effects to include in the video. Each item specifies type, source URL or path, duration (seconds), and optional text overlay.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output video format such as mp4, mov, or webm.",
+          "required": false,
+          "defaultValue": "mp4"
+        },
+        {
+          "name": "resolution",
+          "type": "string",
+          "description": "Output video resolution in WIDTHxHEIGHT format, e.g., 1920x1080.",
+          "required": false,
+          "defaultValue": "1920x1080"
+        },
+        {
+          "name": "frameRate",
+          "type": "number",
+          "description": "Frames per second for the output video.",
+          "required": false,
+          "defaultValue": "30"
+        },
+        {
+          "name": "backgroundColor",
+          "type": "string",
+          "description": "Hex code or named color for background areas if media does not fill frames.",
+          "required": false,
+          "defaultValue": "#000000"
+        },
+        {
+          "name": "transitionType",
+          "type": "string",
+          "description": "Type of transition between media items, e.g., fade, slide, cut.",
+          "required": false,
+          "defaultValue": "fade"
+        },
+        {
+          "name": "transitionDuration",
+          "type": "number",
+          "description": "Duration in seconds of transitions between media items.",
+          "required": false,
+          "defaultValue": "1"
+        },
+        {
+          "name": "muteAudio",
+          "type": "boolean",
+          "description": "If true, all audio tracks will be muted in the output video.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing output video file URL or path and metadata like duration and format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to programmatically compose and generate custom videos combining images, audio, and video clips with control over timing, transitions, resolutions, and overlays. Ideal for generating promotional videos, slideshows, tutorials, or social media content when dynamic video creation is required.",
+        "limitations": "This tool does not perform advanced video editing like motion tracking, color grading, or 3D effects. It requires properly formatted media inputs and does not generate original video content from scratch.",
+        "examples": [
+          "Create a promotional video from product images and background music with smooth fades.",
+          "Generate a slideshow video from vacation photos with captions and upbeat audio.",
+          "Compile multiple video clips into one video with uniform resolution and crossfade transitions."
+        ]
+      },
+      "tags": [
+        "video",
+        "creation",
+        "media",
+        "editing",
+        "content",
+        "slideshow",
+        "promotional"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mediaItems\":[{\"type\":\"image\",\"source\":\"https://example.com/image1.jpg\",\"duration\":5,\"overlayText\":\"Welcome to Our Product\"},{\"type\":\"audio\",\"source\":\"https://example.com/music.mp3\"},{\"type\":\"video\",\"source\":\"https://example.com/clip1.mp4\",\"duration\":10}],\"outputFormat\":\"mp4\",\"resolution\":\"1280x720\",\"frameRate\":30,\"backgroundColor\":\"#ffffff\",\"transitionType\":\"fade\",\"transitionDuration\":1,\"muteAudio\":false}",
+          "description": "Create a 1280x720 mp4 video combining an image with overlay text, background music, and a short video clip using fade transitions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Video",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createAudio",
+      "description": "Generates a digital audio file from provided text or audio parameters. Accepts text to synthesize speech or musical note sequences to produce sound. Processes input through synthesis engines to output audio in specified format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "inputText",
+          "type": "string",
+          "description": "Text content to be converted to speech audio.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "musicalNotes",
+          "type": "array",
+          "description": "Array of musical notes and durations for melody generation.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "voiceType",
+          "type": "string",
+          "description": "Type of voice for speech synthesis (e.g., male, female, robot).",
+          "required": false,
+          "defaultValue": "female"
+        },
+        {
+          "name": "audioFormat",
+          "type": "string",
+          "description": "Desired output audio file format (e.g., mp3, wav, ogg).",
+          "required": true,
+          "defaultValue": "mp3"
+        },
+        {
+          "name": "sampleRate",
+          "type": "number",
+          "description": "Sample rate in Hz for the output audio file.",
+          "required": false,
+          "defaultValue": "44100"
+        },
+        {
+          "name": "bitRate",
+          "type": "number",
+          "description": "Bitrate in kbps for the output audio quality.",
+          "required": false,
+          "defaultValue": "192"
+        },
+        {
+          "name": "includeBackgroundMusic",
+          "type": "boolean",
+          "description": "Whether to add background music under synthesized speech.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing a base64 encoded audio file and metadata including format, duration, and sample rate."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate speech audio from text for narration, audiobooks, or voice responses, or to create simple musical audio from note sequences. Useful in content creation workflows that require audio generation without manual recording.",
+        "limitations": "Cannot produce complex multi-instrument compositions or understand intent/context beyond text-to-speech and basic note-to-audio synthesis. Background music options are limited and not customizable beyond a preset selection.",
+        "examples": [
+          "Create an mp3 speech audio narrating a paragraph of text with a female voice.",
+          "Generate a wav audio clip playing a simple melody from given musical notes.",
+          "Produce an ogg file with speech and soft background music included."
+        ]
+      },
+      "tags": [
+        "audio",
+        "content-creation",
+        "text-to-speech",
+        "music-synthesis",
+        "media-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputText\":\"Hello, welcome to our podcast!\",\"voiceType\":\"female\",\"audioFormat\":\"mp3\",\"sampleRate\":44100}",
+          "description": "Create a female voiced mp3 speech audio from input text."
+        },
+        {
+          "inputJson": "{\"musicalNotes\":[{\"note\":\"C4\",\"duration\":1},{\"note\":\"E4\",\"duration\":1},{\"note\":\"G4\",\"duration\":2}],\"audioFormat\":\"wav\"}",
+          "description": "Generate a wav audio clip singing a C major chord progression from notes."
+        },
+        {
+          "inputJson": "{\"inputText\":\"This is an announcement.\",\"audioFormat\":\"ogg\",\"includeBackgroundMusic\":true}",
+          "description": "Produce an ogg speech audio with background music included."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Audio",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createImage",
+      "description": "Generates a digital image based on textual prompts and customization parameters. Accepts description text, style options, dimensions, and optional color schemes, then processes these inputs using generative AI models to produce an image file output in PNG or JPEG format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "prompt",
+          "type": "string",
+          "description": "Text describing the content and style of the image to generate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the generated image in pixels. Common sizes: 256, 512, 1024.",
+          "required": false,
+          "defaultValue": "512"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the generated image in pixels. Common sizes: 256, 512, 1024.",
+          "required": false,
+          "defaultValue": "512"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Artistic style or theme for the image (e.g., 'photorealistic', 'cartoon', 'abstract').",
+          "required": false,
+          "defaultValue": "photorealistic"
+        },
+        {
+          "name": "colorScheme",
+          "type": "string",
+          "description": "Preferred color scheme or palette (e.g., 'vibrant', 'monochrome', 'pastel').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output image file format: 'png' or 'jpeg'.",
+          "required": false,
+          "defaultValue": "png"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Output object containing the image data as a Base64-encoded string and metadata about the generated image (width, height, format)."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a customized digital image from a textual description, such as for marketing visuals, story illustrations, concept art, or UI design mockups. It supports flexible input parameters to tailor image style, size, colors, and format to specific needs.",
+        "limitations": "Cannot produce images with copyrighted content or highly detailed photographic accuracy beyond model capabilities. May generate artifacts or unintended elements depending on prompt clarity.",
+        "examples": [
+          "Generate a 512x512 photorealistic image of a red sports car.",
+          "Create a pastel-colored cartoon-style illustration of a cat playing piano.",
+          "Produce a 1024x1024 abstract image with monochrome color scheme."
+        ]
+      },
+      "tags": [
+        "image generation",
+        "AI art",
+        "digital content",
+        "creative tools",
+        "media creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"prompt\":\"A futuristic cityscape at sunset, photorealistic style\",\"width\":1024,\"height\":768,\"style\":\"photorealistic\",\"colorScheme\":\"vibrant\",\"format\":\"png\"}",
+          "description": "Generate a large photorealistic vibrant image of a futuristic cityscape at sunset."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Cute cartoon puppy with a blue collar\",\"style\":\"cartoon\",\"format\":\"jpeg\"}",
+          "description": "Create a cartoon-style JPEG image of a cute puppy wearing a blue collar with default size."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Abstract geometric shapes\",\"width\":512,\"height\":512,\"style\":\"abstract\",\"colorScheme\":\"monochrome\"}",
+          "description": "Produce a 512x512 abstract monochrome image with geometric shapes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Image",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createYAML",
+      "description": "Generates a YAML formatted string from structured input data. Accepts objects or arrays representing data structures, processes them into YAML syntax with optional formatting preferences, and outputs a valid YAML string ready for configuration files, data exchange, or documentation.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "object",
+          "description": "The JSON-compatible object or array to convert into YAML format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentation",
+          "type": "number",
+          "description": "Number of spaces used for indentation in the YAML output; default is 2 spaces.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "includeDocumentStart",
+          "type": "boolean",
+          "description": "Whether to include the YAML document start marker '---' at the beginning.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "lineWidth",
+          "type": "number",
+          "description": "Maximum line width for folded text strings; use 0 for no line folding.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "sortKeys",
+          "type": "boolean",
+          "description": "Whether to sort object keys alphabetically in the output YAML.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated YAML string under the key 'yamlString'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate clean, human-readable YAML files from in-memory data structures, such as for configuration files, data serialization, or communication with systems that consume YAML. It is ideal in automation, templating, or code generation contexts where YAML output is required.",
+        "limitations": "Does not support advanced YAML features like custom tags, anchors/references, or binary data. It only converts standard JSON-compatible data types to YAML.",
+        "examples": [
+          "Generate a YAML file for a configuration object with nested dictionaries and lists.",
+          "Create a YAML string from an array of objects sorted by keys for documentation.",
+          "Produce a compact YAML output without the document start marker for embedding in another file."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "yaml",
+        "data serialization",
+        "configuration",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":{\"name\":\"exampleConfig\",\"version\":1,\"features\":[\"featureA\",\"featureB\"],\"settings\":{\"enabled\":true,\"threshold\":10}},\"indentation\":4,\"includeDocumentStart\":true,\"lineWidth\":80,\"sortKeys\":false}",
+          "description": "Generate YAML from a nested configuration object with 4-space indentation and document start marker."
+        },
+        {
+          "inputJson": "{\"data\":[{\"id\":3,\"name\":\"Charlie\"},{\"id\":1,\"name\":\"Alice\"},{\"id\":2,\"name\":\"Bob\"}],\"indentation\":2,\"includeDocumentStart\":false,\"lineWidth\":0,\"sortKeys\":true}",
+          "description": "Create YAML string from array of objects with keys sorted alphabetically, no document start marker, and no line folding."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "YAML",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createXML",
+      "description": "Generates a well-formed XML string from a nested JavaScript object input. It accepts an object representing XML elements with their attributes and child elements, processes this structure recursively, and outputs a valid XML string representation ready for storage, transmission, or further processing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "xmlObject",
+          "type": "object",
+          "description": "A nested object representing the XML structure to generate. Each key is an element name; its value can be a string (element text), object (attributes and children), or array (multiple elements).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "rootElementName",
+          "type": "string",
+          "description": "The name of the root XML element to wrap the generated content. If empty, the highest-level keys in xmlObject become root elements.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeDeclaration",
+          "type": "boolean",
+          "description": "Whether to include the XML declaration header (e.g. '<?xml version=\"1.0\" encoding=\"UTF-8\"?>').",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "indent",
+          "type": "string",
+          "description": "String used for indentation of nested elements for readability, e.g., '\\t' or '  '. Use empty string for no indentation.",
+          "required": false,
+          "defaultValue": "  "
+        },
+        {
+          "name": "encoding",
+          "type": "string",
+          "description": "XML encoding to specify in the declaration, e.g., 'UTF-8'. Ignored if includeDeclaration is false.",
+          "required": false,
+          "defaultValue": "UTF-8"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object with a single property 'xmlString' containing the generated XML document as a string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert structured data from JavaScript objects into a formatted XML document for configuration, data exchange, or storage purposes. It is ideal for generating custom XML outputs from complex nested data, supporting attributes and mixed content, ensuring well-formedness and optional declaration headers.",
+        "limitations": "This tool does not perform XML schema validation, entity resolution, or advanced XML transformations like XSLT. It assumes valid input structure representing XML. It does not support XML namespaces or processing instructions beyond the declaration.",
+        "examples": [
+          "Create an XML document representing a book catalog from nested objects.",
+          "Generate configuration XML with attributes and multiple nested elements.",
+          "Produce XML feed data from a structured JSON-like object input."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "XML generation",
+        "data serialization",
+        "structured data",
+        "format conversion"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"xmlObject\":{\"catalog\":{\"book\":[{\"@id\":\"bk101\",\"author\":\"Gambardella, Matthew\",\"title\":\"XML Developer's Guide\",\"genre\":\"Computer\"},{\"@id\":\"bk102\",\"author\":\"Ralls, Kim\",\"title\":\"Midnight Rain\",\"genre\":\"Fantasy\"}]}},\"rootElementName\":\"catalog\",\"includeDeclaration\":true,\"indent\":\"  \",\"encoding\":\"UTF-8\"}",
+          "description": "Generate a catalog XML document with multiple book entries, including attributes for book ids and child elements for author, title, and genre."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "XML",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createMarkdown",
+      "description": "Generates a Markdown formatted document from structured input. Accepts a title, optional sections with headers and paragraphs, bullet and numbered lists, and inline formatting options, then outputs a correctly formatted Markdown string representing the content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Main title of the Markdown document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "Array of section objects, each with optional header, content paragraphs, and lists.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate a table of contents based on section headers.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Markdown flavor/style to apply (e.g., 'GitHub', 'CommonMark').",
+          "required": false,
+          "defaultValue": "GitHub"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the full Markdown string output under the 'markdown' property."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce well-structured, formatted documentation, README files, or content summaries in Markdown format from raw or structured text input. It helps standardize output for technical writing, blog posts, or quick documentation generation.",
+        "limitations": "Does not validate external Markdown syntax extensions or embedded multimedia; complex tables, diagrams, or advanced Markdown features may require manual adjustment.",
+        "examples": [
+          "Create a README with project title and sections with bullet points.",
+          "Generate a Markdown summary with a table of contents for a user guide.",
+          "Produce documentation notes with different Markdown flavors."
+        ]
+      },
+      "tags": [
+        "content",
+        "markdown",
+        "document-generation",
+        "text-formatting",
+        "documentation",
+        "readme"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Project Apollo\",\"sections\":[{\"header\":\"Introduction\",\"paragraphs\":[\"This is the Apollo project.\"],\"bulletList\":[\"Goal 1\",\"Goal 2\"]},{\"header\":\"Installation\",\"paragraphs\":[\"Follow the steps to install.\"],\"numberedList\":[\"Download\",\"Install\",\"Run\"]}],\"includeTableOfContents\":true,\"theme\":\"GitHub\"}",
+          "description": "Generate a README file with title, sections, bullet and numbered lists, and a table of contents using GitHub markdown style."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Markdown",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createJSON",
+      "description": "Generates a well-structured JSON object from provided key-value pairs or nested data definitions. Accepts input as a flat or nested object with string keys and various JSON-compatible value types, validates format, and returns a formatted JSON string for use in APIs, configs, or data exchange.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "dataObject",
+          "type": "object",
+          "description": "The main data object containing key-value pairs or nested objects to be converted into JSON format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentation",
+          "type": "number",
+          "description": "Number of spaces to use for JSON indentation to improve readability. Use 0 for compact JSON.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "sortKeys",
+          "type": "boolean",
+          "description": "Specifies whether to sort the keys in the output JSON alphabetically for consistency.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "stripNulls",
+          "type": "boolean",
+          "description": "If true, properties with null values will be omitted from the resulting JSON output.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated JSON string under 'jsonString' key and a 'success' boolean indicating format validity."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert structured data or nested key-value definitions into valid JSON format, suitable for API requests, configuration files, or data interchange. It ensures proper formatting, optional key sorting, and null value handling.",
+        "limitations": "Does not perform schema validation or complex data type conversions beyond standard JSON types. Cannot merge multiple dataObjects or resolve references inside the data.",
+        "examples": [
+          "Create a JSON string from configuration settings with indentation 4 and sorted keys.",
+          "Generate compact JSON from nested user profile data, stripping null properties.",
+          "Convert a simple key-value mapping into JSON without indentation."
+        ]
+      },
+      "tags": [
+        "json",
+        "content-creation",
+        "data-formatting",
+        "json-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dataObject\":{\"name\":\"Alice\",\"age\":30,\"email\":null},\"indentation\":4,\"sortKeys\":true,\"stripNulls\":true}",
+          "description": "Generates indented JSON from a user object, sorts keys alphabetically, and removes null email field."
+        },
+        {
+          "inputJson": "{\"dataObject\":{\"task\":\"Write report\",\"completed\":false},\"indentation\":0,\"sortKeys\":false,\"stripNulls\":false}",
+          "description": "Creates compact JSON output from a simple task object preserving all fields."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "JSON",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createWorkflow",
+      "description": "Creates a customized content creation workflow by accepting a sequence of tasks, conditions, and roles. Input includes task definitions, dependencies, and assignment details. The tool processes these inputs to generate a structured workflow plan outlining the order of content creation steps with responsibilities, ready for integration or execution.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "workflowName",
+          "type": "string",
+          "description": "A descriptive name for the workflow being created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tasks",
+          "type": "array",
+          "description": "An array of task objects defining each step, including task id, description, and estimated duration.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dependencies",
+          "type": "array",
+          "description": "List of dependency pairs indicating task order, each with fromTaskId and toTaskId.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "roles",
+          "type": "array",
+          "description": "List of roles or user groups that can be assigned tasks within the workflow.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "assignments",
+          "type": "object",
+          "description": "Mapping of task ids to roles or users responsible for completing them.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "conditionalLogic",
+          "type": "array",
+          "description": "Optional conditions to control branching in the workflow based on task outcomes or variables.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Optional detailed description or purpose of the workflow.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A detailed representation of the workflow including tasks, dependencies, assignments, and execution order as a structured plan."
+      },
+      "aiAgent": {
+        "useCase": "When an AI agent needs to plan and automate sequences of content creation tasks including task order, dependencies, role assignments, and conditional steps, this tool helps by generating a structured workflow plan. Ideal for coordinating collaborative content projects or managing complex content pipelines.",
+        "limitations": "This tool does not execute the workflow or connect directly to task management systems; it only generates the structured workflow plan. It cannot infer tasks, dependencies, or assignments without explicit input data.",
+        "examples": [
+          "Create a workflow for blog content creation with tasks like research, writing, editing, approval, and publishing, including role assignments.",
+          "Design a conditional content production workflow that includes a review step only if the draft is marked incomplete.",
+          "Generate a workflow with dependencies and multiple roles for a video production and scriptwriting team."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "workflow management",
+        "task planning",
+        "automation",
+        "collaboration"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"workflowName\":\"Blog Post Creation\",\"tasks\":[{\"id\":\"t1\",\"description\":\"Research topic\",\"duration\":2},{\"id\":\"t2\",\"description\":\"Write draft\",\"duration\":4},{\"id\":\"t3\",\"description\":\"Edit draft\",\"duration\":2},{\"id\":\"t4\",\"description\":\"Publish post\",\"duration\":1}],\"dependencies\":[{\"fromTaskId\":\"t1\",\"toTaskId\":\"t2\"},{\"fromTaskId\":\"t2\",\"toTaskId\":\"t3\"},{\"fromTaskId\":\"t3\",\"toTaskId\":\"t4\"}],\"roles\":[\"Researcher\",\"Writer\",\"Editor\",\"Publisher\"],\"assignments\":{\"t1\":\"Researcher\",\"t2\":\"Writer\",\"t3\":\"Editor\",\"t4\":\"Publisher\"},\"description\":\"Workflow for producing a blog post from research to publication.\"}",
+          "description": "A standard blog content creation workflow with defined tasks, dependencies, and role assignments."
+        },
+        {
+          "inputJson": "{\"workflowName\":\"Conditional Review Workflow\",\"tasks\":[{\"id\":\"draft\",\"description\":\"Write draft\",\"duration\":3},{\"id\":\"review\",\"description\":\"Review draft\",\"duration\":2},{\"id\":\"finalize\",\"description\":\"Finalize content\",\"duration\":1}],\"dependencies\":[{\"fromTaskId\":\"draft\",\"toTaskId\":\"review\"},{\"fromTaskId\":\"review\",\"toTaskId\":\"finalize\"}],\"roles\":[\"Author\",\"Reviewer\"],\"assignments\":{\"draft\":\"Author\",\"review\":\"Reviewer\",\"finalize\":\"Author\"},\"conditionalLogic\":[{\"condition\":\"reviewOutcome == 'incomplete'\",\"taskToExecute\":\"review\"}],\"description\":\"Content workflow with conditional review step based on review outcome.\"}",
+          "description": "Workflow including conditional logic to perform review step only if necessary."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Workflow",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCSV",
+      "description": "Generates a CSV-formatted string from structured data input. Accepts an array of objects where each object represents a row, using specified keys as columns. Outputs a CSV string with configurable delimiter, quote character, and header inclusion options.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "Array of objects representing rows of data to be converted to CSV. Each object's keys correspond to CSV columns.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "columns",
+          "type": "array",
+          "description": "Optional array of strings specifying the order and names of columns to include in the CSV. Defaults to keys from the first row.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "delimiter",
+          "type": "string",
+          "description": "Character used to separate columns in the CSV output, default is comma (,).",
+          "required": false,
+          "defaultValue": ","
+        },
+        {
+          "name": "quoteChar",
+          "type": "string",
+          "description": "Character used to quote fields containing delimiters or special characters, default is double quote (\").",
+          "required": false,
+          "defaultValue": "\""
+        },
+        {
+          "name": "includeHeader",
+          "type": "boolean",
+          "description": "Whether to include a header row with column names in the CSV output, default is true.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "string",
+        "description": "A string representing the input data formatted as a CSV file, ready for saving or transmission."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert structured JSON-like data into CSV format for interoperability, data export, or preparation for spreadsheet applications. It is especially useful when working with tabular data stored in objects and you want a quickly generated, properly escaped CSV string.",
+        "limitations": "This tool does not support nested objects or arrays within the data rows beyond simple key-value pairs. It assumes flat structures for reliable CSV generation.",
+        "examples": [
+          "Generate CSV from an array of user record objects to export user data.",
+          "Create CSV with a custom delimiter and without header for special import requirements.",
+          "Export a subset of fields by specifying the columns parameter."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "CSV",
+        "data export",
+        "format conversion",
+        "spreadsheet"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}]}",
+          "description": "Basic CSV generation from array of user data objects with default comma delimiter and header."
+        },
+        {
+          "inputJson": "{\"data\":[{\"product\":\"Widget\",\"price\":9.99,\"qty\":100},{\"product\":\"Gadget\",\"price\":19.95,\"qty\":50}],\"delimiter\":\";\",\"includeHeader\":true}",
+          "description": "CSV with semicolon delimiter from product inventory data, including header row."
+        },
+        {
+          "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"columns\":[\"name\",\"city\"],\"includeHeader\":false}",
+          "description": "CSV output with only selected columns and no header row."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "CSV",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createTable",
+      "description": "Generates a structured data table from provided headers and rows. Accepts table column headers and an array of data rows matching those headers. Outputs a JSON representation of the table, with rows as objects keyed by header names, suitable for display or further processing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "headers",
+          "type": "array",
+          "description": "An array of strings representing the column headers of the table.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "rows",
+          "type": "array",
+          "description": "An array of arrays, where each inner array represents a row of data corresponding to the headers.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "caption",
+          "type": "string",
+          "description": "Optional descriptive caption for the table.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeIndex",
+          "type": "boolean",
+          "description": "Flag indicating whether to include an index column numbering the rows starting at 1.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with 'headers', 'rows', and optional 'caption', representing the structured table data. Each row is an object mapping header keys to respective cell values. If includeIndex is true, an 'index' key is added to each row."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to create or structure tabular data from raw arrays or textual lists, such as generating display tables for reports, summaries, or embedding structured content in documents or applications. It is useful for converting loose data into a consistent table format.",
+        "limitations": "Does not generate table layouts, styles, or visual rendering. It only structures data logically. It assumes rows match headers in length and does not validate data types beyond basic alignment.",
+        "examples": [
+          "Create a table with user info headers and user list rows.",
+          "Generate a product inventory table with headers and data rows, including index.",
+          "Add a caption and produce JSON table from sales data arrays."
+        ]
+      },
+      "tags": [
+        "content",
+        "table",
+        "data-structure",
+        "generation",
+        "json",
+        "tabular",
+        "rows",
+        "headers"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"headers\":[\"Name\",\"Age\",\"City\"],\"rows\":[[\"Alice\",30,\"New York\"],[\"Bob\",25,\"Chicago\"]],\"caption\":\"User Information\",\"includeIndex\":true}",
+          "description": "Create a user table with name, age, city columns, including row index and caption."
+        },
+        {
+          "inputJson": "{\"headers\":[\"Product\",\"Price\",\"Quantity\"],\"rows\":[[\"Widget\",19.99,10],[\"Gadget\",29.99,5]],\"includeIndex\":false}",
+          "description": "Generate a product list table without an index or caption."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Table",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createDataset",
+      "description": "Generates a structured dataset based on user-defined schema and data sources. Accepts parameters for dataset fields, data types, number of records, and optional data source URLs or seed data. Outputs a JSON-formatted dataset with the specified structure and content.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "schema",
+          "type": "array",
+          "description": "Array of field definitions where each field specifies a name and data type for dataset columns.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "recordCount",
+          "type": "number",
+          "description": "Number of records to create in the dataset.",
+          "required": true,
+          "defaultValue": "100"
+        },
+        {
+          "name": "includeHeaders",
+          "type": "boolean",
+          "description": "Whether to include a header row with field names in the output dataset.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "seedData",
+          "type": "array",
+          "description": "Optional array of sample data objects to influence or seed dataset generation for realistic outputs.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "dataSources",
+          "type": "array",
+          "description": "Optional list of URLs or references to external data sources to enrich or populate dataset fields.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated dataset as an array of records under the key 'data', matching the specified schema and record count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a synthetic or custom-structured dataset for testing, training machine learning models, or simulating data environments based on user-specified field schemas and optional seed data or external sources.",
+        "limitations": "Cannot generate highly complex relational datasets with multi-table relations or enforce complex data integrity constraints beyond the defined simple schema. Quality of generated data depends on seed data and schema accuracy.",
+        "examples": [
+          "Create a dataset with 500 records containing fields for name (string), age (number), and email (string).",
+          "Generate a dataset seeded with customer data from a given URL with 1000 records.",
+          "Produce a small dataset of 50 entries defining custom fields for product name, price, and stock availability."
+        ]
+      },
+      "tags": [
+        "dataset",
+        "generation",
+        "content-creation",
+        "synthetic-data",
+        "schema-driven",
+        "json"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"schema\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"age\",\"type\":\"number\"},{\"name\":\"email\",\"type\":\"string\"}],\"recordCount\":500,\"includeHeaders\":true}",
+          "description": "Generate 500 records with name, age, and email fields"
+        },
+        {
+          "inputJson": "{\"schema\":[{\"name\":\"productName\",\"type\":\"string\"},{\"name\":\"price\",\"type\":\"number\"},{\"name\":\"inStock\",\"type\":\"boolean\"}],\"recordCount\":50}",
+          "description": "Generate 50 product records with name, price, and stock status"
+        },
+        {
+          "inputJson": "{\"schema\":[{\"name\":\"customerId\",\"type\":\"string\"},{\"name\":\"purchaseAmount\",\"type\":\"number\"}],\"recordCount\":1000,\"dataSources\":[\"https://example.com/api/customers\"]}",
+          "description": "Generate 1000 records seeded with external customer data source"
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Dataset",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createIssue",
+      "description": "Creates a new issue in a specified code repository by accepting repository identifiers, issue title, detailed description, labels, assignees, and optional metadata. It processes inputs to format and submit an issue to the repository's issue tracker, returning the created issue's details including ID and URL.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "repositoryOwner",
+          "type": "string",
+          "description": "Owner of the repository (user or organization) where the issue will be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "repositoryName",
+          "type": "string",
+          "description": "Name of the repository where the issue will be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the issue to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "body",
+          "type": "string",
+          "description": "Detailed description or body content of the issue.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "labels",
+          "type": "array",
+          "description": "List of labels to assign to the issue, aiding categorization and filtering.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "assignees",
+          "type": "array",
+          "description": "List of repository usernames to assign the issue to for tracking responsibility.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "milestone",
+          "type": "string",
+          "description": "Optional milestone identifier to associate this issue with a project milestone.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing details of the newly created issue, including its unique ID, URL, title, body, labels, assignees, and milestone if set."
+      },
+      "aiAgent": {
+        "useCase": "This tool should be used when an AI agent needs to programmatically create a new issue in a code repository to track bugs, feature requests, or tasks based on user input or analysis results. It helps automate the issue creation workflow integrating with repositories on platforms like GitHub, GitLab, or Bitbucket.",
+        "limitations": "The tool does not handle authentication or permission checks; it assumes valid credentials are managed externally. It cannot update or close issues once created, nor does it support complex issue templates or project board automation.",
+        "examples": [
+          "Create a bug report issue in the 'example-repo' owned by 'devteam' with error logs attached.",
+          "Open a feature request issue assigning it to 'alice' and 'bob' with 'enhancement' label.",
+          "Create a task issue with title and milestone but no assignees or labels."
+        ]
+      },
+      "tags": [
+        "issue",
+        "repository",
+        "bug-tracking",
+        "feature-request",
+        "automation",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"repositoryOwner\":\"devteam\",\"repositoryName\":\"example-repo\",\"title\":\"Bug: Crash on login\",\"body\":\"App crashes when user attempts to login with valid credentials.\",\"labels\":[\"bug\",\"urgent\"],\"assignees\":[\"alice\"],\"milestone\":\"v1.0\"}",
+          "description": "Create a critical bug issue assigned to Alice for milestone v1.0."
+        },
+        {
+          "inputJson": "{\"repositoryOwner\":\"opensource\",\"repositoryName\":\"libproject\",\"title\":\"Feature: Add dark mode support\",\"body\":\"Submit request to add dark mode UI option for better usability at night.\",\"labels\":[\"enhancement\"],\"assignees\":[],\"milestone\":\"\"}",
+          "description": "Open a feature request for dark mode without assignees or milestone."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Issue",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createPullRequest",
+      "description": "Creates a pull request on a specified repository branch with given title, description, and optional reviewers. Accepts repository info, source and target branches, and metadata; interacts with version control hosting services (e.g., GitHub) to generate the pull request and outputs its URL and ID.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "repositoryOwner",
+          "type": "string",
+          "description": "Owner or organization name of the repository where the PR will be created",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "repositoryName",
+          "type": "string",
+          "description": "Name of the repository to create the pull request in",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sourceBranch",
+          "type": "string",
+          "description": "Name of the branch that contains the changes to merge",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetBranch",
+          "type": "string",
+          "description": "Name of the branch you want to merge the changes into",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the pull request summarizing the changes",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Detailed description or body of the pull request explaining the changes",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "reviewers",
+          "type": "array",
+          "description": "List of usernames to request review from (optional)",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "draft",
+          "type": "boolean",
+          "description": "Whether to create the pull request as a draft",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the pull request ID, URL, and status information"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically create a pull request on a version control hosting platform by providing repo details, branches, and metadata, such as when automating CI/CD workflows or integrating with project management systems.",
+        "limitations": "This tool does not modify branch contents or create branches; it requires existing branches. It also does not handle authentication internally; credentials must be managed externally.",
+        "examples": [
+          "Create a pull request from feature branch to main with title and description.",
+          "Open a draft pull request for code review requesting two specific reviewers.",
+          "Generate a simple pull request without reviewers to merge a bugfix branch."
+        ]
+      },
+      "tags": [
+        "version-control",
+        "pull-request",
+        "automation",
+        "code-review",
+        "git",
+        "repository"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"repositoryOwner\":\"octocat\",\"repositoryName\":\"Hello-World\",\"sourceBranch\":\"feature-branch\",\"targetBranch\":\"main\",\"title\":\"Add new feature\",\"description\":\"This PR adds a new feature to improve performance.\",\"reviewers\":[\"reviewer1\",\"reviewer2\"],\"draft\":false}",
+          "description": "Create a pull request from feature-branch to main with specified reviewers"
+        },
+        {
+          "inputJson": "{\"repositoryOwner\":\"org\",\"repositoryName\":\"project\",\"sourceBranch\":\"bugfix\",\"targetBranch\":\"develop\",\"title\":\"Fix issue #123\",\"description\":\"Fixes a critical bug\",\"reviewers\":[],\"draft\":true}",
+          "description": "Create a draft pull request for a bugfix branch requesting no reviewers"
+        },
+        {
+          "inputJson": "{\"repositoryOwner\":\"user\",\"repositoryName\":\"repo\",\"sourceBranch\":\"update-docs\",\"targetBranch\":\"main\",\"title\":\"Update documentation\",\"description\":\"Improves README and adds API docs.\",\"reviewers\":[],\"draft\":false}",
+          "description": "Simple pull request without reviewers to merge documentation updates"
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "PullRequest",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createPipeline",
+      "description": "Creates a customizable content creation pipeline by defining a sequence of processing steps to generate or transform digital content. Accepts an ordered list of content manipulation modules (e.g., text generation, image processing, formatting), configures parameters for each, and outputs an executable pipeline specification or script that automates end-to-end content generation workflows.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "pipelineName",
+          "type": "string",
+          "description": "A unique name identifying the pipeline to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "steps",
+          "type": "array",
+          "description": "An ordered array of processing step objects, each specifying its type, configuration parameters, and dependencies.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format of the pipeline, e.g., 'script', 'json', or 'yaml'.",
+          "required": false,
+          "defaultValue": "json"
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Optional textual description summarizing the pipeline's purpose and functionality.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the pipeline specification in the chosen format along with metadata including step order and configuration."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to construct repeatable, modular workflows to automate complex content creation tasks by chaining multiple processing modules with user-defined parameters. Ideal for generating structured pipelines to systematically transform or generate digital content.",
+        "limitations": "This tool does not execute or simulate the pipeline; it only creates the pipeline definition. The correctness and compatibility of individual processing steps must be verified separately. It does not provide real-time validation of each step's internal logic.",
+        "examples": [
+          "Create a content creation pipeline with steps for text generation, image embedding, and PDF formatting.",
+          "Define a pipeline with conditional branching for dynamic content selection based on metadata.",
+          "Generate a JSON specification of a pipeline including SEO keyword insertion and social media formatting."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "pipeline",
+        "automation",
+        "workflow",
+        "digital-content"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"pipelineName\":\"BlogPostGenerator\",\"steps\":[{\"type\":\"textGeneration\",\"params\":{\"prompt\":\"Write a 500-word blog about AI.\"}},{\"type\":\"imageInsertion\",\"params\":{\"imageSource\":\"stockAIImages\",\"placement\":\"header\"}},{\"type\":\"formatting\",\"params\":{\"format\":\"markdown\"}}],\"outputFormat\":\"json\",\"description\":\"Pipeline to automate AI blog post creation including text, image, and markdown formatting.\"}",
+          "description": "Create a pipeline that generates blog text, inserts header images, and formats output as markdown."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Pipeline",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCommit",
+      "description": "Creates a new git commit in a specified repository by applying provided file changes with a commit message, author information, and optional parent commit references. Accepts repository path, file modifications, commit message, author name and email, and returns the commit SHA hash on success.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "repositoryPath",
+          "type": "string",
+          "description": "File system path to the git repository where the commit will be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "fileChanges",
+          "type": "array",
+          "description": "List of file changes to include in the commit. Each change includes file path and new content as string. Files will be added or updated accordingly.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "commitMessage",
+          "type": "string",
+          "description": "The commit message describing the changes made in this commit.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "authorName",
+          "type": "string",
+          "description": "The name of the author for the commit metadata.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "authorEmail",
+          "type": "string",
+          "description": "The email of the author for commit metadata.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "parentCommitSha",
+          "type": "string",
+          "description": "Optional SHA(s) of parent commit(s) to base the new commit on. Defaults to HEAD if empty.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns the commit SHA string identifying the newly created commit in the repository."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically create a git commit by applying specified file changes with a descriptive message and author metadata. Ideal for automating commits in code generation, updates, or content versioning workflows within a local or accessible repository.",
+        "limitations": "Cannot create commits in remote repositories directly; repository must exist locally and be a valid git repository; does not handle conflicts or merges; cannot remove files (only add/update) using fileChanges; assumes git environment is properly configured.",
+        "examples": [
+          "Create a commit adding two new files with specified content and author info.",
+          "Update an existing file and commit with a detailed message, no author specified (defaults to system git config).",
+          "Create a commit with multiple parent SHAs to support merge commits programmatically."
+        ]
+      },
+      "tags": [
+        "git",
+        "commit",
+        "version-control",
+        "code",
+        "content",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"repositoryPath\":\"/home/user/myrepo\",\"fileChanges\":[{\"filePath\":\"README.md\",\"content\":\"# Project README\\nUpdated with new instructions.\"},{\"filePath\":\"src/main.py\",\"content\":\"print(\\\"Hello World\\\")\\n\"}],\"commitMessage\":\"Update README and add main.py script\",\"authorName\":\"Alice Developer\",\"authorEmail\":\"alice@example.com\",\"parentCommitSha\":\"\"}",
+          "description": "Create a commit that updates README.md and adds a new Python script with author metadata."
+        },
+        {
+          "inputJson": "{\"repositoryPath\":\"/repo\",\"fileChanges\":[{\"filePath\":\"docs/usage.txt\",\"content\":\"Usage instructions updated.\"}],\"commitMessage\":\"Update usage instructions\",\"authorName\":\"\",\"authorEmail\":\"\",\"parentCommitSha\":\"abc123def456\"}",
+          "description": "Commit a single file change referencing a specific parent commit SHA without specifying author information."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Commit",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createBranch",
+      "description": "Creates a new code branch in a specified Git repository. Accepts repository URL or local path, branch name, and optional base branch name. Clones or uses existing repo, creates the new branch from the base, and returns branch details including confirmation of creation.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "repositoryUrl",
+          "type": "string",
+          "description": "URL of the remote Git repository or local path to the repository.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "branchName",
+          "type": "string",
+          "description": "Name of the new branch to create.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "baseBranchName",
+          "type": "string",
+          "description": "Name of the branch to base the new branch on. Defaults to 'main' if not specified.",
+          "required": false,
+          "defaultValue": "main"
+        },
+        {
+          "name": "localPath",
+          "type": "string",
+          "description": "Local file system path to clone the repo or where the repo exists. If empty, a temporary directory is used.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pushToRemote",
+          "type": "boolean",
+          "description": "Whether to push the new branch to the remote repository after creation.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing confirmation of branch creation including branchName, baseBranchName, repositoryUrl, and success status."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically create a new Git branch as part of a development workflow or automation sequence. It supports creating branches locally and optionally pushing them to remote repositories, facilitating CI/CD pipelines, feature branch management, or automated code updates.",
+        "limitations": "Does not handle repository authentication beyond provided URL accessibility; assumes the repository is accessible and valid. It cannot resolve merge conflicts or complex Git operations beyond branch creation.",
+        "examples": [
+          "Create a feature branch 'feature/login' based on 'develop' in a GitHub repo URL.",
+          "Create a new branch 'hotfix/issue-123' locally without pushing to remote.",
+          "Create a branch using the default base branch 'main' in a local repo path."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "git",
+        "branch",
+        "version-control",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"branchName\":\"feature/login\",\"baseBranchName\":\"develop\",\"pushToRemote\":true}",
+          "description": "Create a feature branch 'feature/login' from 'develop' branch in a GitHub repository and push it to remote."
+        },
+        {
+          "inputJson": "{\"repositoryUrl\":\"/Users/alex/repos/project\",\"branchName\":\"hotfix/issue-123\",\"pushToRemote\":false}",
+          "description": "Create a new branch 'hotfix/issue-123' based on 'main' locally without pushing to remote in an existing local repository."
+        },
+        {
+          "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/example/repo.git\",\"branchName\":\"release/v1.2\",\"baseBranchName\":\"main\",\"localPath\":\"/tmp/repo\"}",
+          "description": "Create a branch 'release/v1.2' from 'main' in the specified local path cloned from the remote GitLab repository."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Branch",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createConfig",
+      "description": "Generates a structured configuration file in JSON or YAML format based on given settings and templates. Accepts input parameters defining configurations such as environment variables, feature flags, and metadata, then outputs a ready-to-use config file string for use in applications or deployment.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "configName",
+          "type": "string",
+          "description": "Name or identifier for the configuration file to generate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "environment",
+          "type": "string",
+          "description": "Target environment for the configuration (e.g., development, production).",
+          "required": false,
+          "defaultValue": "development"
+        },
+        {
+          "name": "settings",
+          "type": "object",
+          "description": "Key-value pairs defining configuration options such as flags, URLs, API keys, or thresholds.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of configuration file, either 'json' or 'yaml'.",
+          "required": false,
+          "defaultValue": "json"
+        },
+        {
+          "name": "includeComments",
+          "type": "boolean",
+          "description": "Whether to include descriptive comments in the generated config file if supported by the format.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "template",
+          "type": "string",
+          "description": "Optional template string or reference that defines the structure/layout of the config output.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated configuration file content as a string and the output format used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically generate configuration files for applications or deployment environments, customizing settings based on input parameters. Ideal for automating setup, creating environment-specific configs, or templating config formats.",
+        "limitations": "This tool does not validate the correctness or semantic appropriateness of configuration values for specific software; it only formats and assembles provided data. It does not generate executable scripts or binary configs.",
+        "examples": [
+          "Create a JSON config for production environment with specific API keys and flags.",
+          "Generate a YAML config for development environment including comments describing each setting.",
+          "Produce a custom config with a provided template string to structure output."
+        ]
+      },
+      "tags": [
+        "configuration",
+        "content-creation",
+        "automation",
+        "json",
+        "yaml",
+        "templating"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"configName\":\"appConfig\",\"environment\":\"production\",\"settings\":{\"apiUrl\":\"https://api.example.com\",\"enableFeatureX\":true,\"retryCount\":5},\"format\":\"json\",\"includeComments\":false}",
+          "description": "Generate a production environment JSON config without comments including API URL and feature flag."
+        },
+        {
+          "inputJson": "{\"configName\":\"devConfig\",\"environment\":\"development\",\"settings\":{\"debug\":true,\"logLevel\":\"verbose\"},\"format\":\"yaml\",\"includeComments\":true}",
+          "description": "Create a development YAML config including comments, enabling debug and verbose logging."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Config",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createVariable",
+      "description": "Creates a code variable representation with specified name, type, initial value, and optional scope and description. Accepts inputs defining variable details, processes to validate and format, and outputs a structured object representing the variable for use in code generation or analysis.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "variableName",
+          "type": "string",
+          "description": "The name of the variable to create, following identifier conventions.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "variableType",
+          "type": "string",
+          "description": "The data type of the variable, such as string, number, boolean, array, or object.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "initialValue",
+          "type": "string",
+          "description": "The initial value assigned to the variable; must be compatible with the variableType.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "scope",
+          "type": "string",
+          "description": "The scope of the variable (e.g., local, global, or function) to define its accessibility.",
+          "required": false,
+          "defaultValue": "local"
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "An optional textual description or comment about the variable's purpose or usage.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured object detailing the variable's name, type, initial value, scope, and description suitable for code generation or documentation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically create or represent a variable with specific attributes in a code context, such as during automated code generation or documentation workflows. It ensures that the variable details are well-structured and validated before use.",
+        "limitations": "Does not generate actual code syntax beyond structured variable representation; does not validate complex type correctness beyond basic type naming; does not manage variable usage or lifecycle in code.",
+        "examples": [
+          "Create a number variable named 'count' initialized to 0 with local scope.",
+          "Define a global string variable 'username' without an initial value and add description.",
+          "Generate a boolean variable 'isActive' initialized to true used in function scope."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "variable",
+        "code-generation",
+        "programming",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"variableName\":\"count\",\"variableType\":\"number\",\"initialValue\":\"0\",\"scope\":\"local\",\"description\":\"Tracks the number of iterations.\"}",
+          "description": "Create a local number variable 'count' with initial value 0 and a description."
+        },
+        {
+          "inputJson": "{\"variableName\":\"username\",\"variableType\":\"string\",\"initialValue\":\"\",\"scope\":\"global\",\"description\":\"Stores the current user's name.\"}",
+          "description": "Create a global string variable 'username' without initial value and with description."
+        },
+        {
+          "inputJson": "{\"variableName\":\"isActive\",\"variableType\":\"boolean\",\"initialValue\":\"true\",\"scope\":\"function\",\"description\":\"Indicates active state.\"}",
+          "description": "Create a boolean variable 'isActive' initialized true in function scope."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Variable",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createPackage",
+      "description": "Creates a code package by generating a standardized package structure based on input parameters like package name, version, description, dependencies, and license. It outputs the structured package files and metadata ready for usage or publishing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "packageName",
+          "type": "string",
+          "description": "Name of the package to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "version",
+          "type": "string",
+          "description": "Initial version of the package, following semantic versioning.",
+          "required": false,
+          "defaultValue": "\"1.0.0\""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Short description of the package's purpose.",
+          "required": false,
+          "defaultValue": "\"\""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Name of the package's author or maintainer.",
+          "required": false,
+          "defaultValue": "\"\""
+        },
+        {
+          "name": "license",
+          "type": "string",
+          "description": "License type for the package (e.g., MIT, Apache-2.0).",
+          "required": false,
+          "defaultValue": "\"MIT\""
+        },
+        {
+          "name": "dependencies",
+          "type": "object",
+          "description": "Key-value pairs of package dependencies and their versions.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "includeReadme",
+          "type": "boolean",
+          "description": "Whether to generate a README.md file with basic info.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeGitignore",
+          "type": "boolean",
+          "description": "Whether to include a standard .gitignore file for code projects.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the generated package structure, including metadata (package.json or equivalent), source folder paths, and optional files content like README.md and .gitignore."
+      },
+      "aiAgent": {
+        "useCase": "This tool is useful when an AI agent needs to bootstrap or scaffold a new code package with proper structure and metadata based on user requirements, such as starting a new project or library. It accelerates project initialization by producing ready-to-use package files.",
+        "limitations": "Does not publish the package to package registries nor install dependencies; it only creates the local package structure and files.",
+        "examples": [
+          "Create a new npm package named 'my-library' with version 0.1.0 and dependencies lodash@^4.17.0.",
+          "Generate a package scaffold for a Python project with MIT license and an author specified.",
+          "Create a package structure without README and gitignore files for a quick prototype."
+        ]
+      },
+      "tags": [
+        "code",
+        "package",
+        "scaffold",
+        "generator",
+        "project initialization",
+        "software development"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"packageName\":\"my-library\",\"version\":\"0.1.0\",\"description\":\"A utility library for string manipulation.\",\"author\":\"Jane Doe\",\"license\":\"MIT\",\"dependencies\":{\"lodash\":\"^4.17.21\"},\"includeReadme\":true,\"includeGitignore\":true}",
+          "description": "Generate a new npm package scaffold named 'my-library' with lodash dependency and standard files."
+        },
+        {
+          "inputJson": "{\"packageName\":\"py-utils\",\"version\":\"0.0.1\",\"description\":\"Python utilities package.\",\"author\":\"John Smith\",\"license\":\"Apache-2.0\",\"dependencies\":{},\"includeReadme\":true,\"includeGitignore\":false}",
+          "description": "Create a Python utilities package structure without .gitignore but with a README."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Package",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createChecklist",
+      "description": "Generates a structured checklist document based on user-defined task items and metadata. Accepts title, description, ordered list of tasks with optional details and completion status. Produces a formatted checklist object suitable for display or export in common content workflows.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title of the checklist.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A brief description or introduction for the checklist.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tasks",
+          "type": "array",
+          "description": "An ordered array of tasks to include in the checklist. Each task can have text, details, and completion status.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "allowPartialCompletion",
+          "type": "boolean",
+          "description": "Indicates whether tasks can be marked as partially completed.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "dueDate",
+          "type": "string",
+          "description": "Optional ISO 8601 formatted due date for the checklist.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A checklist object containing title, description, tasks with status, and metadata suitable for rendering or further processing."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce clear, structured checklists for task organization, project planning, or content management that require labeled items and optional completion tracking. Ideal when users want a ready-to-use checklist to guide workflows or share with teams.",
+        "limitations": "This tool does not manage checklist collaboration, real-time updates, or integration with external task management systems. It only formats checklist data and metadata.",
+        "examples": [
+          "Create a checklist titled \"Project Launch\" with steps to complete and mark initial tasks as done.",
+          "Generate a packing checklist with task details and set a due date for trip preparation.",
+          "Make a household chores checklist where tasks can be partially completed."
+        ]
+      },
+      "tags": [
+        "checklist",
+        "content-creation",
+        "task-management",
+        "document-generation",
+        "productivity"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Project Launch Checklist\",\"description\":\"Tasks to finalize before launch.\",\"tasks\":[{\"text\":\"Finalize requirements document\",\"details\":\"Review with all stakeholders\",\"completed\":true},{\"text\":\"Complete UI design\",\"details\":\"Ensure user feedback incorporation\",\"completed\":false},{\"text\":\"Setup production environment\",\"details\":\"Configure servers and monitoring\",\"completed\":false}],\"allowPartialCompletion\":false,\"dueDate\":\"2024-07-15T17:00:00Z\"}",
+          "description": "Create a project launch checklist with tasks and completion status."
+        },
+        {
+          "inputJson": "{\"title\":\"Vacation Packing List\",\"description\":\"Essential items to pack for vacation.\",\"tasks\":[{\"text\":\"Passport and travel documents\",\"details\":\"Check expiration dates\",\"completed\":false},{\"text\":\"Clothing\",\"details\":\"Pack according to weather forecast\",\"completed\":false}],\"allowPartialCompletion\":false,\"dueDate\":\"2024-08-01\"}",
+          "description": "Generate a packing checklist with due date for vacation preparation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createDependency",
+      "description": "Generates a code dependency descriptor file (e.g., package.json, requirements.txt) based on input specifications such as project language, dependencies list, versions, and optional metadata. Outputs a structured dependency configuration file content suitable for use in project management and build tools.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectType",
+          "type": "string",
+          "description": "The programming language or project type (e.g., 'nodejs', 'python', 'java') determining dependency file format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dependencies",
+          "type": "array",
+          "description": "List of dependency objects each with 'name' and optional 'version' specifying packages to include.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "devDependencies",
+          "type": "array",
+          "description": "Optional list of development-only dependencies with 'name' and optional 'version'.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional extra metadata such as project name, version, description, author details.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "includeScripts",
+          "type": "boolean",
+          "description": "Whether to include script commands (like start, test) if applicable to the project type.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated dependency file content as a string and format identifier (e.g., 'package.json', 'requirements.txt')."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to automatically create or update a project's dependency manifest file for various programming ecosystems based on a structured input list of dependencies, facilitating automated build or deployment processes.",
+        "limitations": "Currently supports major project types like Node.js (package.json), Python (requirements.txt), and Java (pom.xml is not supported), and does not resolve transitive dependencies or validate semantic version correctness.",
+        "examples": [
+          "Create a Node.js package.json with dependencies express@4.17.1 and lodash latest.",
+          "Generate a Python requirements.txt listing Django==3.2 and requests>=2.25.",
+          "Add devDependencies jest@26.6.0 to a Node.js project configuration."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "dependency",
+        "code",
+        "project-management",
+        "package",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectType\":\"nodejs\",\"dependencies\":[{\"name\":\"express\",\"version\":\"4.17.1\"},{\"name\":\"lodash\"}],\"devDependencies\":[{\"name\":\"jest\",\"version\":\"26.6.0\"}],\"metadata\":{\"name\":\"my-app\",\"version\":\"1.0.0\"},\"includeScripts\":true}",
+          "description": "Generate a package.json for a Node.js project with express and lodash dependencies, jest devDependency, project metadata and scripts placeholder."
+        },
+        {
+          "inputJson": "{\"projectType\":\"python\",\"dependencies\":[{\"name\":\"Django\",\"version\":\"3.2\"},{\"name\":\"requests\",\"version\":\"\"}],\"devDependencies\":[],\"metadata\":{},\"includeScripts\":false}",
+          "description": "Create a requirements.txt for a Python project listing Django 3.2 and latest requests as dependencies."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Dependency",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createSchema",
+      "description": "Generates a JSON Schema based on provided field definitions and metadata. Accepts an array of field objects describing name, type, and constraints, and produces a complete JSON Schema object representing the structure, types, and validation rules for content data.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title for the JSON Schema document, describing the overall object.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Detailed description of the schema's purpose or data it represents.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "fields",
+          "type": "array",
+          "description": "An array of field definitions with each field specifying name, data type, and optional validation constraints.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "requiredFields",
+          "type": "array",
+          "description": "List of field names to mark as required in the schema.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "additionalProperties",
+          "type": "boolean",
+          "description": "Indicates if properties not explicitly defined in fields are allowed (true) or disallowed (false).",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A valid JSON Schema object representing the content structure, including properties, types, required fields, and validation rules."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create formal JSON Schema definitions for structured content models based on dynamic or user-provided field specifications. It enables validation of content by producing a full JSON Schema document defining properties, data types, constraints, and required fields, useful for input validation, API documentation, or configuration.",
+        "limitations": "Cannot infer complex conditional schemas or dependencies between fields beyond required and basic type constraints. Does not support generation of schemas for recursive or highly nested complex data without explicit field definitions. Does not generate example data.",
+        "examples": [
+          "Generate a JSON Schema for user profile data with fields for username (string), age (integer, minimum 0), and email (string, format email), marking username and email as required.",
+          "Create a schema for a blog post content type with title (string), body (string), tags (array of strings), and publishedDate (string, format date-time).",
+          "Produce schema for product item with name (string), price (number, minimum 0), inStock (boolean), and categories (array of strings), making name and price required."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "json-schema",
+        "schema-generation",
+        "validation",
+        "content-modeling"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"User Profile\",\"description\":\"Schema for user profile data\",\"fields\":[{\"name\":\"username\",\"type\":\"string\"},{\"name\":\"age\",\"type\":\"integer\",\"minimum\":0},{\"name\":\"email\",\"type\":\"string\",\"format\":\"email\"}],\"requiredFields\":[\"username\",\"email\"],\"additionalProperties\":false}",
+          "description": "Generate a JSON Schema for a user profile with username, age, and email, requiring username and email."
+        },
+        {
+          "inputJson": "{\"title\":\"Blog Post\",\"fields\":[{\"name\":\"title\",\"type\":\"string\"},{\"name\":\"body\",\"type\":\"string\"},{\"name\":\"tags\",\"type\":\"array\",\"itemsType\":\"string\"},{\"name\":\"publishedDate\",\"type\":\"string\",\"format\":\"date-time\"}],\"requiredFields\":[\"title\",\"body\"],\"additionalProperties\":true}",
+          "description": "Create a schema for blog post content including title, body, tags, and published date, with title and body required."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Schema",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createTest",
+      "description": "Generates automated code test cases based on input specifications. Accepts programming language, test framework, function or module code snippet, and testing criteria to produce sample unit or integration test code output in the desired format.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "programmingLanguage",
+          "type": "string",
+          "description": "The programming language for which the test code should be generated (e.g., 'JavaScript', 'Python').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "testFramework",
+          "type": "string",
+          "description": "The testing framework to use, compatible with the programming language (e.g., 'Jest', 'Mocha', 'PyTest').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "codeSnippet",
+          "type": "string",
+          "description": "The source code snippet (function or module) to be tested, provided as a string.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "testCriteria",
+          "type": "object",
+          "description": "An object defining what aspects to test (e.g., input-output pairs, edge cases, exceptions).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "testType",
+          "type": "string",
+          "description": "Type of test to generate: 'unit', 'integration', or 'functional'. Default is 'unit'.",
+          "required": false,
+          "defaultValue": "unit"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing generated test code as a string and optional metadata such as language and framework."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to automatically generate code test cases from code snippets and testing criteria to speed up software validation and quality assurance. It helps generate boilerplate or example tests in specified languages/frameworks.",
+        "limitations": "Cannot replace tests requiring complex domain knowledge or external dependencies. May produce generic tests that need manual refinement for full correctness or coverage.",
+        "examples": [
+          "Generate unit tests for a JavaScript function using Jest with input-output test cases.",
+          "Create integration tests for a Python module using PyTest focused on handling exceptions.",
+          "Produce functional tests for a Java method using JUnit targeting key workflows."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "testing",
+        "code-generation",
+        "automation",
+        "unit-test",
+        "integration-test"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"testFramework\":\"Jest\",\"codeSnippet\":\"function add(a, b) { return a + b; }\",\"testCriteria\":{\"cases\":[{\"input\":[1,2],\"expected\":3},{\"input\":[-1,1],\"expected\":0}]},\"testType\":\"unit\"}",
+          "description": "Generates unit tests in Jest for a simple add function in JavaScript, testing multiple input-output cases."
+        },
+        {
+          "inputJson": "{\"programmingLanguage\":\"Python\",\"testFramework\":\"PyTest\",\"codeSnippet\":\"def divide(x, y):\\n    return x / y\",\"testCriteria\":{\"cases\":[{\"input\":[10,2],\"expected\":5},{\"input\":[5,0],\"expectedException\":\"ZeroDivisionError\"}]},\"testType\":\"unit\"}",
+          "description": "Generates Python unit tests with PyTest for a divide function including exception test case."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Test",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createQuery",
+      "description": "This tool generates structured database query strings for various query languages (SQL, GraphQL, etc.) based on user-provided parameters. Input includes the target database type, table or collection names, fields to select, optional filters, and sorting instructions. The output is a ready-to-use query string matching the specified syntax.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "databaseType",
+          "type": "string",
+          "description": "Target database type or query language, e.g., 'SQL', 'GraphQL'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tableName",
+          "type": "string",
+          "description": "Name of the table (or collection) to query from.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "fields",
+          "type": "array",
+          "description": "Array of fields (columns) to select in the query.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "filters",
+          "type": "object",
+          "description": "Optional filter conditions as key-value pairs or nested objects to apply in WHERE or equivalent clause.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "sortBy",
+          "type": "array",
+          "description": "Optional array of fields to sort the results by, each can be an object with field and direction ('asc'/'desc').",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "limit",
+          "type": "number",
+          "description": "Optional maximum number of records to return.",
+          "required": false,
+          "defaultValue": "0"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated query string in the specified query language."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate database queries dynamically based on user criteria or application logic, without manually writing query syntax. Supports multiple query languages and can process filters, selections, sorting, and limits to produce correct queries.",
+        "limitations": "Cannot validate database schema or guarantee semantic correctness beyond basic syntax generation. Complex nested queries or joins are not supported yet.",
+        "examples": [
+          "Generate a SQL SELECT query fetching 'id' and 'name' from 'users' where 'age' is above 20, sorted by 'created_at' descending.",
+          "Create a GraphQL query selecting 'title' and 'author' fields from 'books' with filter 'published' equals true."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "query-generation",
+        "database",
+        "sql",
+        "graphql",
+        "dynamic-query"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"databaseType\":\"SQL\",\"tableName\":\"employees\",\"fields\":[\"id\",\"name\",\"department\"],\"filters\":{\"department\":\"Sales\",\"active\":true},\"sortBy\":[{\"field\":\"name\",\"direction\":\"asc\"}],\"limit\":100}",
+          "description": "Generate a SQL query selecting id, name, department from employees where department is Sales and active=true, ordered by name ascending, limit 100 records."
+        },
+        {
+          "inputJson": "{\"databaseType\":\"GraphQL\",\"tableName\":\"posts\",\"fields\":[\"title\",\"author\"],\"filters\":{\"published\":true},\"sortBy\":[],\"limit\":0}",
+          "description": "Create a GraphQL query fetching title and author fields from posts where published is true, no sorting or limit."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Query",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createComponent",
+      "description": "Generates a reusable UI component code snippet based on provided specifications including type (e.g., React, Vue), properties, state management, styles, and behavior. Accepts a detailed configuration object and outputs clean, ready-to-use component code as a string.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "componentName",
+          "type": "string",
+          "description": "The desired name for the new component, following valid identifier rules.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "framework",
+          "type": "string",
+          "description": "The frontend framework for which the component should be generated, e.g., 'React', 'Vue', or 'Angular'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "props",
+          "type": "object",
+          "description": "An object defining the prop names and their types that the component should receive.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "state",
+          "type": "object",
+          "description": "An object defining the internal state variables and their initial values if the component is stateful.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "styles",
+          "type": "string",
+          "description": "CSS or CSS-in-JS style definitions to be included with the component.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "behavior",
+          "type": "string",
+          "description": "Description or code snippets for component-specific event handlers or methods to be included.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "useTypescript",
+          "type": "boolean",
+          "description": "Whether to generate the component using TypeScript syntax.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated code string and metadata about the component."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a detailed, ready-to-use UI component is needed based on specified framework, props, state, styles, and behaviors, enabling rapid front-end development and prototyping. Ideal for generating components without manually coding boilerplate and structure.",
+        "limitations": "Cannot generate complex business logic or backend-integrated code. Styling is limited to provided styles or basic patterns. May not support all framework versions or advanced patterns like hooks or composition API beyond standard usage.",
+        "examples": [
+          "Create a React button component with onClick behavior and primary styling.",
+          "Generate a Vue component named 'UserCard' with props for user data and scoped CSS.",
+          "Produce a TypeScript Angular component with input bindings and basic state."
+        ]
+      },
+      "tags": [
+        "code-generation",
+        "frontend",
+        "UI-component",
+        "react",
+        "vue",
+        "angular",
+        "typescript"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"componentName\":\"Button\",\"framework\":\"React\",\"props\":{\"label\":\"string\",\"onClick\":\"function\"},\"state\":{},\"styles\":\".btn { background-color: blue; color: white; padding: 8px; border-radius: 4px; }\",\"behavior\":\"Handles onClick event by calling props.onClick.\",\"useTypescript\":false}",
+          "description": "Generate a React button component with label prop, onClick handler, and basic styles."
+        },
+        {
+          "inputJson": "{\"componentName\":\"UserCard\",\"framework\":\"Vue\",\"props\":{\"user\":\"object\"},\"state\":{\"expanded\":false},\"styles\":\".card { border: 1px solid #ccc; padding: 10px; border-radius: 6px; }\",\"behavior\":\"Toggle expanded state on card click to show more user details.\",\"useTypescript\":false}",
+          "description": "Create a Vue UserCard component with user prop, internal expanded state, scoped CSS, and toggle behavior."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Component",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createEndpoint",
+      "description": "Creates a fully defined REST API endpoint based on provided specifications such as HTTP method, path, request parameters, request/response schema, and authentication requirements. Inputs include endpoint path, HTTP method, input/output JSON schemas, and optional authentication info. Outputs generated endpoint code snippet and a summary of the endpoint definition.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "endpointPath",
+          "type": "string",
+          "description": "URL path for the API endpoint (e.g., /users/{id}).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "httpMethod",
+          "type": "string",
+          "description": "HTTP method for the endpoint (GET, POST, PUT, DELETE, PATCH).",
+          "required": true,
+          "defaultValue": "GET"
+        },
+        {
+          "name": "requestSchema",
+          "type": "object",
+          "description": "JSON Schema describing the expected request body format (optional for GET requests).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "responseSchema",
+          "type": "object",
+          "description": "JSON Schema describing the response body format to be returned by the endpoint.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "authenticationRequired",
+          "type": "boolean",
+          "description": "Indicates whether this endpoint requires authentication.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A short description of the endpoint's purpose and behavior.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated source code snippet for the endpoint (e.g., in Express.js) and a human-readable summary of the endpoint details."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate backend API endpoint code dynamically based on user specifications. Ideal for rapid prototyping or assisting developers by producing boilerplate code and endpoint definitions from structured input. Helps automate tedious code creation and ensures consistency in API design.",
+        "limitations": "This tool does not implement full backend logic beyond endpoint scaffolding, nor does it validate business logic or connect to databases. It cannot handle non-REST API protocols or generate complex middleware beyond authentication enforcement.",
+        "examples": [
+          "Create a POST endpoint at /users to accept user data and return the created user object with authentication.",
+          "Generate a GET endpoint at /products/{id} that returns product details without authentication.",
+          "Create a PUT endpoint at /orders/{orderId} that accepts order updates with authentication required."
+        ]
+      },
+      "tags": [
+        "api",
+        "endpoint",
+        "rest",
+        "generate",
+        "backend",
+        "code",
+        "automation",
+        "scaffolding"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"endpointPath\":\"/users\",\"httpMethod\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}},\"required\":[\"name\",\"email\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}},\"required\":[\"id\",\"name\",\"email\"]},\"authenticationRequired\":true,\"description\":\"Create a new user account\"}",
+          "description": "Generate a POST endpoint /users for creating a user with authentication."
+        },
+        {
+          "inputJson": "{\"endpointPath\":\"/products/{id}\",\"httpMethod\":\"GET\",\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"}},\"required\":[\"id\",\"name\",\"price\"]},\"authenticationRequired\":false,\"description\":\"Retrieve product details by ID\"}",
+          "description": "Generate a GET endpoint /products/{id} to fetch product info without auth."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Endpoint",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createModule",
+      "description": "Generates a reusable software module based on specified programming language, functionality description, and optional dependencies. Accepts inputs defining the module's purpose, code style guidelines, and dependency list, then outputs the generated module's source code and metadata for integration.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "moduleName",
+          "type": "string",
+          "description": "The desired name of the module to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "programmingLanguage",
+          "type": "string",
+          "description": "The programming language for the generated module (e.g., JavaScript, Python).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "functionalityDescription",
+          "type": "string",
+          "description": "A detailed description of the module's functionality and features to implement.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dependencies",
+          "type": "array",
+          "description": "List of external libraries or modules the generated module depends on (if any).",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "codeStyle",
+          "type": "string",
+          "description": "Preferred coding style or conventions to follow (e.g., Airbnb, PEP8).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTests",
+          "type": "boolean",
+          "description": "Whether to generate accompanying unit tests for the module.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated module's source code, filename, and any test code if generated."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to generate a code module fulfilling specific functionality requirements in a given programming language, optionally with dependencies and style guides, to accelerate software development or prototyping.",
+        "limitations": "The tool cannot execute or validate the generated code for correctness or runtime errors; complex modules requiring specialized domain knowledge might need manual refinement.",
+        "examples": [
+          "Create a JavaScript module for validating email addresses with no dependencies.",
+          "Generate a Python data processing module using pandas with unit tests.",
+          "Produce a TypeScript utility module following Airbnb style guide including Lodash dependency."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "code-generation",
+        "module",
+        "software-development",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"moduleName\":\"emailValidator\",\"programmingLanguage\":\"JavaScript\",\"functionalityDescription\":\"Checks if a given string is a valid email address using regex.\",\"dependencies\":[],\"codeStyle\":\"Airbnb\",\"includeTests\":true}",
+          "description": "Generate a JavaScript email validation module with unit tests adhering to Airbnb style."
+        },
+        {
+          "inputJson": "{\"moduleName\":\"dataProcessor\",\"programmingLanguage\":\"Python\",\"functionalityDescription\":\"Processes CSV files to filter rows by user-specified criteria.\",\"dependencies\":[\"pandas\"],\"codeStyle\":\"PEP8\",\"includeTests\":false}",
+          "description": "Create a Python data processing module using pandas without unit tests, following PEP8 style."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Module",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createAPI",
+      "description": "Generates boilerplate code for a RESTful API based on user-specified endpoints, HTTP methods, request/response schemas, and optional authentication settings. Accepts detailed API specifications and outputs structured source code files in the chosen programming language and framework.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "apiName",
+          "type": "string",
+          "description": "The name of the API project or service to generate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language for the generated API code (e.g., 'Node.js', 'Python', 'Java').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "framework",
+          "type": "string",
+          "description": "Web framework to use (e.g., Express for Node.js, Flask for Python, Spring Boot for Java).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "endpoints",
+          "type": "array",
+          "description": "An array of endpoint definitions including path, HTTP method, request and response JSON schemas.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "authentication",
+          "type": "object",
+          "description": "Optional authentication settings including type (e.g., 'JWT', 'OAuth2') and config parameters.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeErrorHandling",
+          "type": "boolean",
+          "description": "Whether to include standard error handling middleware or mechanisms.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "databaseIntegration",
+          "type": "string",
+          "description": "Optional database integration type (e.g., 'MongoDB', 'MySQL') or empty if none.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated API source code files keyed by filename, including README and configuration files if applicable."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to rapidly scaffold a RESTful API backend based on user input specifications, enabling quick prototyping or bootstrapping backend services without manual coding. Ideal for scenarios where multiple endpoints with request/response models and optional auth must be established programmatically.",
+        "limitations": "This tool cannot implement complex business logic beyond the generated boilerplate, nor does it handle frontend code generation or deployment automation.",
+        "examples": [
+          "Generate a Node.js Express API with three endpoints managing user data, including JWT authentication.",
+          "Create a Python Flask API that handles products with MySQL integration, including error handling.",
+          "Produce a Java Spring Boot API with OAuth2 authentication and CRUD endpoints for orders."
+        ]
+      },
+      "tags": [
+        "API",
+        "code-generation",
+        "backend",
+        "REST",
+        "scaffolding",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"apiName\":\"UserService\",\"language\":\"Node.js\",\"framework\":\"Express\",\"endpoints\":[{\"path\":\"/users\",\"method\":\"GET\",\"requestSchema\":{},\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"}}}}},{\"path\":\"/users\",\"method\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}},\"required\":[\"name\",\"email\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}}}}],\"authentication\":{\"type\":\"JWT\"},\"includeErrorHandling\":true,\"databaseIntegration\":\"MongoDB\"}",
+          "description": "Create a Node.js Express API named UserService with GET and POST /users endpoints, JWT auth, error handling, and MongoDB integration."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "API",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createMigration",
+      "description": "Generates a database migration script based on schema changes provided as input. Accepts a description or object defining table modifications like create, update, delete, columns added or changed. Outputs a structured migration code script compatible with common ORM frameworks or plain SQL.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "migrationName",
+          "type": "string",
+          "description": "A descriptive name for the migration to identify its purpose (e.g., AddUsersTable).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "schemaChanges",
+          "type": "object",
+          "description": "An object detailing the schema changes including tables to create, update, or delete with column definitions.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "databaseType",
+          "type": "string",
+          "description": "Target database type for which to generate the migration script (e.g., postgres, mysql, sqlite).",
+          "required": true,
+          "defaultValue": "postgres"
+        },
+        {
+          "name": "useORM",
+          "type": "boolean",
+          "description": "Flag indicating whether to generate migration using ORM-specific syntax or raw SQL.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated migration script as a string and optional metadata such as dependencies or warnings."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create or update database structure by generating migration scripts from high-level schema change descriptions, enabling automated schema versioning and safe application deployment.",
+        "limitations": "Cannot execute the migration against a live database; only generates migration scripts. Does not handle complex data migrations or business logic within migrations.",
+        "examples": [
+          "Generate a migration script to add a users table with id, name, email columns.",
+          "Create a migration to add a nullable 'birthdate' column to the existing 'customers' table.",
+          "Produce a drop table migration for a deprecated 'sessions' table."
+        ]
+      },
+      "tags": [
+        "database",
+        "migration",
+        "schema",
+        "sql",
+        "orm",
+        "code-generation",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"migrationName\":\"AddUsersTable\",\"schemaChanges\":{\"create\":[{\"tableName\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"integer\",\"primaryKey\":true,\"autoIncrement\":true},{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"email\",\"type\":\"string\",\"unique\":true}]}]},\"databaseType\":\"postgres\",\"useORM\":true}",
+          "description": "Create a migration script to add a new 'users' table with id, name, and email columns for a PostgreSQL database using ORM syntax."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Migration",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createFunction",
+      "description": "Generates a complete programming language function based on provided specifications including name, parameters, return type, and logic description. Accepts input details about the function and returns structured code in the specified language, ready for use in software projects.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "functionName",
+          "type": "string",
+          "description": "The desired name of the function to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "parameters",
+          "type": "array",
+          "description": "An array of objects describing each parameter with name and type.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "returnType",
+          "type": "string",
+          "description": "The return type of the function (e.g., int, string, void).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "logicDescription",
+          "type": "string",
+          "description": "A clear textual description of the logic the function should implement.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "programmingLanguage",
+          "type": "string",
+          "description": "The target programming language for the function code (e.g., JavaScript, Python, Java).",
+          "required": true,
+          "defaultValue": "JavaScript"
+        },
+        {
+          "name": "includeComments",
+          "type": "boolean",
+          "description": "Whether to include explanatory comments in the generated code.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated function code as a string and metadata such as language and function signature."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate or scaffold code functions from high-level descriptions, automating boilerplate creation and ensuring consistent syntax in the specified programming language.",
+        "limitations": "Cannot guarantee complex algorithmic correctness or optimized performance. Not suitable for multi-function modules or full classes, focuses on single function generation.",
+        "examples": [
+          "Create a function named 'calculateSum' that takes two integers and returns their sum in Python.",
+          "Generate a JavaScript function 'formatDate' that accepts a date object and returns a formatted string.",
+          "Build a function 'isPrime' in JavaScript that checks if a number is prime, including comments."
+        ]
+      },
+      "tags": [
+        "code-generation",
+        "function",
+        "programming",
+        "automation",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"functionName\":\"calculateSum\",\"parameters\":[{\"name\":\"a\",\"type\":\"number\"},{\"name\":\"b\",\"type\":\"number\"}],\"returnType\":\"number\",\"logicDescription\":\"Return the sum of two numbers a and b.\",\"programmingLanguage\":\"Python\",\"includeComments\":true}",
+          "description": "Create a Python function 'calculateSum' adding two numbers with comments."
+        },
+        {
+          "inputJson": "{\"functionName\":\"formatDate\",\"parameters\":[{\"name\":\"dateObj\",\"type\":\"Date\"}],\"returnType\":\"string\",\"logicDescription\":\"Convert the dateObj to a string in 'YYYY-MM-DD' format.\",\"programmingLanguage\":\"JavaScript\",\"includeComments\":false}",
+          "description": "Generate a JavaScript function 'formatDate' that formats a Date object to string, without comments."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Function",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createCode",
+      "description": "Generates structured source code snippets based on a natural language description of desired functionality. Accepts the target programming language, a detailed textual specification of the code to generate, and optional parameters such as code style guidelines and libraries to include. Produces syntactically valid code ready for integration or review.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The programming language for the generated code (e.g., Python, JavaScript, Java).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "specification",
+          "type": "string",
+          "description": "A natural language description specifying the functionality, features, or behavior the generated code should implement.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleGuidelines",
+          "type": "string",
+          "description": "Optional coding style or conventions to follow in the generated code (e.g., naming conventions, formatting rules).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "libraries",
+          "type": "array",
+          "description": "Optional list of external libraries or modules to include or use in the generated code.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeComments",
+          "type": "boolean",
+          "description": "Whether to include explanatory comments in the generated code.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "targetFramework",
+          "type": "string",
+          "description": "Optional specific framework or environment that the generated code should target (e.g., React for JavaScript, Flask for Python).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated code as a string and optional metadata such as warnings or style adherence notes."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate initial code implementations from descriptive requirements or to prototype functionality quickly in a specified programming language. It is especially useful for transforming high-level feature descriptions into executable code snippets that can serve as starting points for development.",
+        "limitations": "The tool cannot guarantee fully optimized or production-ready code. Generated code may require testing, debugging, and adaptation to fit into existing codebases and comply fully with all project-specific requirements or best practices.",
+        "examples": [
+          "Create a Python function that calculates the factorial of a number recursively.",
+          "Generate a JavaScript component using React that displays a to-do list with add and remove functionality.",
+          "Produce Java code implementing a basic bank account class with deposit, withdraw, and balance retrieval methods."
+        ]
+      },
+      "tags": [
+        "code generation",
+        "programming",
+        "automation",
+        "developer tools",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"language\":\"Python\",\"specification\":\"Create a function to compute the factorial of a given non-negative integer using recursion.\",\"styleGuidelines\":\"Use PEP8 conventions.\",\"libraries\":[],\"includeComments\":true,\"targetFramework\":\"\"}",
+          "description": "Generate a Python recursive factorial function with comments and following PEP8 style."
+        },
+        {
+          "inputJson": "{\"language\":\"JavaScript\",\"specification\":\"Build a React component for a shopping list with add and remove item functionality.\",\"styleGuidelines\":\"Use camelCase for variable names.\",\"libraries\":[\"react\"],\"includeComments\":false,\"targetFramework\":\"React\"}",
+          "description": "Generate a React component in JavaScript for a shopping list without comments, using camelCase variables."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Code",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createSpec",
+      "description": "Generates a detailed specification document for a software project or module based on provided requirements, features, and constraints. Accepts inputs like project name, version, description, features list, and technical requirements, then produces a structured spec document as markdown or JSON to guide development and communication.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the project or module for which the specification is being created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The current version or release number of the specification document.",
+          "required": false,
+          "defaultValue": "1.0.0"
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A brief overview describing the purpose and scope of the project or module.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "features",
+          "type": "array",
+          "description": "A list of key features or functionality that the project or module must implement.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "technicalRequirements",
+          "type": "array",
+          "description": "List of technical constraints, environment details, or dependencies relevant to the project.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The format in which the specification document should be returned, e.g. 'markdown' or 'json'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated specification document as a string in the requested format, plus metadata such as project name and version."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create or standardize a software specification document from structured input data including features and technical requirements. It helps automate documentation generation to improve clarity and speed up the planning phase.",
+        "limitations": "This tool cannot validate the correctness or feasibility of the features or requirements; it only synthesizes the provided input into a formatted spec document. It also does not handle complex natural language understanding beyond structured input.",
+        "examples": [
+          "Generate a spec document for a new mobile app given a feature list and technical constraints.",
+          "Create a formal spec for a software module including version and description to share with the dev team.",
+          "Convert a set of high-level requirements into a markdown spec document for onboarding new developers."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "documentation",
+        "specification",
+        "software development",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"TaskManagerApp\",\"version\":\"0.9.1\",\"description\":\"A mobile application to manage daily tasks and reminders.\",\"features\":[\"User authentication\",\"Task creation and editing\",\"Push notifications\",\"Task categorization\"],\"technicalRequirements\":[\"iOS and Android support\",\"Offline mode\",\"Data sync with cloud backend\"],\"outputFormat\":\"markdown\"}",
+          "description": "Create a markdown spec document for a mobile task manager app including features and technical requirements."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Spec",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createReadme",
+      "description": "Generates a comprehensive README.md file for software projects based on project details input by the user. It processes inputs like project name, description, installation instructions, usage examples, license, and contributor info to output a well-structured Markdown readme document suitable for GitHub or other repositories.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the software project to be documented.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "projectDescription",
+          "type": "string",
+          "description": "A brief overview that describes the purpose and features of the project.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "installationInstructions",
+          "type": "string",
+          "description": "Step-by-step commands or procedures needed to install the project.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "usageExamples",
+          "type": "string",
+          "description": "Code snippets or usage scenarios illustrating how to use the project.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "license",
+          "type": "string",
+          "description": "The license under which the project is released (e.g., MIT, Apache 2.0).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contributingGuidelines",
+          "type": "string",
+          "description": "Information about how others can contribute to the project.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contactInfo",
+          "type": "string",
+          "description": "Contact details or links for users to reach the maintainers for support or questions.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated README content as a single string in Markdown format with sections populated from the input parameters."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically create a standard and well-organized README.md file for a software project repository from structured project information, enabling quick documentation generation without manual Markdown authoring.",
+        "limitations": "This tool does not verify the correctness or completeness of the input data and cannot generate project-specific diagrams or advanced documentation beyond text-based README sections.",
+        "examples": [
+          "Create a README for a new CLI tool including installation and usage instructions.",
+          "Generate a README with licensing and contributing guidelines after project initialization.",
+          "Produce a README with contact info and a project overview for a library repository."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "documentation",
+        "README",
+        "Markdown",
+        "project setup",
+        "developer tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"AwesomeLib\",\"projectDescription\":\"A JavaScript library for awesome tasks.\",\"installationInstructions\":\"npm install awesomelib\",\"usageExamples\":\"const al = require('awesomelib');\\nal.doAwesome();\",\"license\":\"MIT\",\"contributingGuidelines\":\"Please open issues and pull requests.\",\"contactInfo\":\"contact@awesomelib.org\"}",
+          "description": "README for a JavaScript library including all common sections."
+        },
+        {
+          "inputJson": "{\"projectName\":\"DataCruncher\",\"projectDescription\":\"Data analytics tool for big data.\",\"installationInstructions\":\"pip install datacruncher\",\"usageExamples\":\"from datacruncher import analyze\\nresults = analyze(data)\",\"license\":\"Apache 2.0\",\"contributingGuidelines\":\"Contributions welcome via GitHub.\",\"contactInfo\":\"dev@datacruncher.com\"}",
+          "description": "Generating README for a Python data analytics project with detailed usage and licensing."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createTemplate",
+      "description": "Creates customizable document templates by accepting a template name, an optional description, specified fields with their types and placeholders, and output format preferences. Processes inputs to generate reusable template metadata that can be used for consistent content generation or form creation.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "templateName",
+          "type": "string",
+          "description": "The name identifying the template to create.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Optional detailed description of the template’s purpose or content.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "fields",
+          "type": "array",
+          "description": "An array of objects defining each field's name, type, placeholder, and optional default value included in the template.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired format of the generated template metadata, e.g., JSON, YAML, or XML.",
+          "required": false,
+          "defaultValue": "JSON"
+        },
+        {
+          "name": "includeValidation",
+          "type": "boolean",
+          "description": "Flag indicating if validation rules should be included for the fields.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object representing the structured template definition including metadata and fields configuration, formatted as specified."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically create structured document or form templates defining standardized fields and metadata to reuse in content generation or collection workflows. Ideal for creating configurable templates for reports, surveys, emails, or contracts without manual formatting.",
+        "limitations": "This tool does not generate populated documents or handle content filling; it only creates the template schema. It does not support highly complex layout or styling beyond basic field definitions.",
+        "examples": [
+          "Create a survey template named 'Customer Feedback' with fields for rating and comments.",
+          "Generate an email template with placeholders for recipient name and date.",
+          "Build a JSON structured template for a product specification sheet with validation rules."
+        ]
+      },
+      "tags": [
+        "template",
+        "document",
+        "content creation",
+        "form",
+        "schema",
+        "metadata",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"templateName\":\"Customer Survey\",\"description\":\"Template for customer satisfaction surveys\",\"fields\":[{\"name\":\"customerName\",\"type\":\"string\",\"placeholder\":\"Enter customer name\"},{\"name\":\"rating\",\"type\":\"number\",\"placeholder\":\"Rate from 1 to 5\",\"defaultValue\":\"3\"},{\"name\":\"comments\",\"type\":\"string\",\"placeholder\":\"Additional feedback\"}],\"outputFormat\":\"JSON\",\"includeValidation\":true}",
+          "description": "Creates a customer survey template with name, rating, and comments fields formatted as JSON including validation."
+        },
+        {
+          "inputJson": "{\"templateName\":\"Email Follow-up\",\"fields\":[{\"name\":\"recipientName\",\"type\":\"string\",\"placeholder\":\"Recipient's full name\"},{\"name\":\"meetingDate\",\"type\":\"string\",\"placeholder\":\"Date of the meeting\"}],\"outputFormat\":\"YAML\"}",
+          "description": "Generates an email follow-up template with recipient name and meeting date placeholders formatted as YAML."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createFAQ",
+      "description": "Generates a structured FAQ (Frequently Asked Questions) document based on provided thematic area and related questions and answers. Accepts a topic title and an array of question-answer pairs, then formats them into an organized FAQ list suitable for websites or documentation.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme of the FAQ document, providing context for the questions.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "questionsAndAnswers",
+          "type": "array",
+          "description": "An array of objects each containing a 'question' and an 'answer' field, representing the FAQ entries.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language for the FAQ content, specified by standard language code (e.g., 'en' for English).",
+          "required": false,
+          "defaultValue": "\"en\""
+        },
+        {
+          "name": "includeIntroduction",
+          "type": "boolean",
+          "description": "If true, prepends a brief introduction to the FAQ document summarizing the topic.",
+          "required": false,
+          "defaultValue": "\"false\""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with a string 'faqDocument' containing the formatted FAQ content, including the topic heading, optional introduction, and the list of question-answer pairs."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate a clear, structured FAQ document from a set of questions and answers about a specific subject, useful for customer support sites, product documentation, or educational content. It simplifies creating well-organized FAQs based on input data.",
+        "limitations": "Does not generate the questions or answers automatically; it requires all questions and answers to be provided. The tool formats content but does not translate or validate factual accuracy.",
+        "examples": [
+          "Create an FAQ document about a new software product with given user questions and expert answers.",
+          "Generate an FAQ for common company HR policies based on provided Q&A data.",
+          "Format a set of technical support Q&A into a website-ready FAQ section."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "FAQ",
+        "documentation",
+        "question-answer",
+        "support",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Software Installation\",\"questionsAndAnswers\":[{\"question\":\"How do I install the software?\",\"answer\":\"Download the installer from our website and run the setup file.\"},{\"question\":\"What are the system requirements?\",\"answer\":\"The software requires Windows 10 or later and at least 4GB RAM.\"}],\"language\":\"en\",\"includeIntroduction\":true}",
+          "description": "Generate an English FAQ document on Software Installation with an introduction and two Q&A pairs."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createBrief",
+      "description": "Generates a concise brief document based on provided topic, audience, and objectives. Accepts textual inputs describing context and key points, then synthesizes them into a structured brief outlining purpose, scope, and recommended actions.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title or heading of the brief document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Main subject or theme the brief will cover.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "audience",
+          "type": "string",
+          "description": "Intended readers or recipients of the brief to tailor tone and content.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "objectives",
+          "type": "array",
+          "description": "List of goals or desired outcomes the brief should address.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "backgroundInfo",
+          "type": "string",
+          "description": "Additional background information or context to include for completeness.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "lengthLimit",
+          "type": "number",
+          "description": "Maximum word count for the brief to ensure brevity and focus.",
+          "required": false,
+          "defaultValue": "300"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated brief text, structured with sections like introduction, key points, and conclusion."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create a focused, readable briefing document summarizing key information and goals for stakeholders, decision makers, or team members. Ideal for transforming raw inputs about a topic into a professional short report.",
+        "limitations": "The tool cannot replace expert domain knowledge or generate highly technical content without sufficient input data; it may also not create visuals or detailed attachments.",
+        "examples": [
+          "Create a brief outlining a project launch plan for the marketing team.",
+          "Generate a concise brief summarizing quarterly sales performance for executives.",
+          "Produce a summary brief on new security policies for all employees."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "brief",
+        "document",
+        "summary",
+        "business",
+        "writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Q2 Marketing Strategy Brief\",\"topic\":\"Marketing strategy for Q2\",\"audience\":\"Marketing Team\",\"objectives\":[\"Outline campaign goals\",\"Identify key channels\",\"Set KPIs\"],\"backgroundInfo\":\"Previous quarter results included 15% growth.\",\"lengthLimit\":250}",
+          "description": "Generate a concise brief to guide the marketing team on Q2 strategy focusing on goals and key performance indicators."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createSummary",
+      "description": "Generates a concise summary from a given text document or content string. Accepts raw text input and processes it using natural language processing techniques to produce a coherent summary, highlighting key points and main ideas, suitable for quick understanding or briefing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The raw input text content to summarize, can be a paragraph, article, or document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of words or characters for the summary output. Defines summary length.",
+          "required": false,
+          "defaultValue": "150"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language code of the input text to optimize summarization quality.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "includeKeyPoints",
+          "type": "boolean",
+          "description": "Whether to include bullet-point key insights along with the summary paragraph.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the summary text and optionally an array of key points if requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a quick summary of large or complex textual content for easier consumption, such as summarizing articles, reports, or meeting notes.",
+        "limitations": "Cannot guarantee perfect accuracy or cover all nuances of the original text; quality depends on input clarity and language. Not suitable for very short inputs or texts requiring deep semantic understanding beyond key information extraction.",
+        "examples": [
+          "Summarize the latest quarterly financial report into 100 words.",
+          "Create a summary with key bullet points from a product review article.",
+          "Provide a brief summary in French of a news story text."
+        ]
+      },
+      "tags": [
+        "summarization",
+        "content-creation",
+        "NLP",
+        "text-processing",
+        "document-summary",
+        "briefing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"The climate change report highlights increasing global temperatures, rising sea levels, and extreme weather events. It calls for urgent action to reduce greenhouse gas emissions and shift towards renewable energy sources.\",\"maxLength\":50,\"includeKeyPoints\":true}",
+          "description": "Summarizes a climate change report and extracts key points."
+        },
+        {
+          "inputJson": "{\"text\":\"In this article, the author reviews recent advances in AI, focusing on deep learning breakthroughs, ethical considerations, and future research directions.\",\"maxLength\":100}",
+          "description": "Generates a concise summary of an AI research article."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createTranscript",
+      "description": "Generates a structured text transcript from audio or video files, optionally enriched with timestamps and speaker labels. Accepts media files or URLs and outputs a clean, readable transcript in text format or JSON, facilitating content review, accessibility, or editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "mediaUrl",
+          "type": "string",
+          "description": "URL of the audio or video file to transcribe; required if mediaContent is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "mediaContent",
+          "type": "string",
+          "description": "Base64-encoded content of audio or video media for transcription; required if mediaUrl is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code of the spoken content (e.g., 'en-US') to enhance transcription accuracy.",
+          "required": true,
+          "defaultValue": "en-US"
+        },
+        {
+          "name": "enableTimestamps",
+          "type": "boolean",
+          "description": "Whether to include timestamps for each segment or sentence in the transcript.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "enableSpeakerLabels",
+          "type": "boolean",
+          "description": "Whether to identify and label different speakers in the transcript when multiple voices are detected.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the transcript: plain text ('text') or structured JSON ('json').",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the transcript text or structured JSON transcription data, including optional timestamps and speaker labels depending on inputs."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate a readable transcript from audio or video inputs, useful for meeting notes, captions, content indexing, or accessibility compliance. Ideal when the source media is available as a URL or direct content and when a textual or JSON transcript is desired.",
+        "limitations": "This tool does not perform punctuation correction beyond basic speech-to-text capabilities, nor does it handle complex audio separation beyond basic speaker labeling. It requires clear audio and a supported language code. It does not translate content or summarize transcripts.",
+        "examples": [
+          "Transcribe an English video from URL with timestamps enabled.",
+          "Create a plain text transcript from an uploaded audio file without speaker labels.",
+          "Generate a JSON transcript of a meeting recording with speaker identification."
+        ]
+      },
+      "tags": [
+        "transcription",
+        "content-creation",
+        "audio",
+        "video",
+        "accessibility",
+        "speech-to-text"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mediaUrl\":\"https://example.com/audio/meeting.mp3\",\"language\":\"en-US\",\"enableTimestamps\":true,\"enableSpeakerLabels\":true,\"outputFormat\":\"json\"}",
+          "description": "Transcribe an English audio meeting file with speaker labels and timestamps, outputting JSON format."
+        },
+        {
+          "inputJson": "{\"mediaContent\":\"<base64-encoded-audio-data>\",\"language\":\"en-US\",\"enableTimestamps\":false,\"enableSpeakerLabels\":false,\"outputFormat\":\"text\"}",
+          "description": "Transcribe provided base64 audio content into plain text without timestamps or speaker labels."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createReleaseNotes",
+      "description": "Generates a structured release notes document from given version details, change summaries, and optional metadata. Accepts inputs like version number, release date, list of changes categorized by type, and links, then produces formatted release notes suitable for publication or distribution.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The version identifier for the release, e.g., 'v2.4.1' or '1.0.0'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "releaseDate",
+          "type": "string",
+          "description": "The release date in ISO format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "changes",
+          "type": "array",
+          "description": "An array of change objects representing the updates included in this release. Each change includes type (e.g., 'Added', 'Fixed'), description, and optional component.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The optional title for the release notes document.",
+          "required": false,
+          "defaultValue": "Release Notes"
+        },
+        {
+          "name": "includeFooter",
+          "type": "boolean",
+          "description": "Whether to include a standard footer with the release note, such as contact info or support links.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "links",
+          "type": "array",
+          "description": "Optional array of link objects with text and URL to be included in the notes for further reference (e.g., issue trackers, documentation).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted release notes as a string and a structured summary object with categorized changes."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate professional and structured release notes from raw change data for software or product updates. Ideal for product managers, developers, or agents automating release documentation. It creates a human-readable document and a structured summary.",
+        "limitations": "This tool does not fetch or validate data from external sources; all input must be provided. It formats but does not publish release notes.",
+        "examples": [
+          "Create release notes for version 1.2.0 including added features, fixed bugs, and documentation improvements.",
+          "Generate a release notes document with a specific release date and additional reference links.",
+          "Produce release notes including a custom document title and without a footer."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "release notes",
+        "software documentation",
+        "versioning",
+        "change log"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"version\":\"2.1.0\",\"releaseDate\":\"2024-05-15\",\"changes\":[{\"type\":\"Added\",\"description\":\"Support for multi-language input.\"},{\"type\":\"Fixed\",\"description\":\"Bug causing crash on startup.\",\"component\":\"core\"},{\"type\":\"Improved\",\"description\":\"Enhanced UI responsiveness.\"}],\"title\":\"New Features and Fixes in v2.1.0\",\"includeFooter\":true,\"links\":[{\"text\":\"Full changelog\",\"url\":\"https://example.com/changelog\"}]}",
+          "description": "Generate release notes for version 2.1.0 including various change types and a footer with a changelog link."
+        },
+        {
+          "inputJson": "{\"version\":\"1.0.5\",\"changes\":[{\"type\":\"Fixed\",\"description\":\"Security patch in authentication module.\"}],\"includeFooter\":false}",
+          "description": "Minimal release notes for a patch version without footer or release date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "ReleaseNotes",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createMinutes",
+      "description": "Generates structured meeting minutes from provided meeting details including agenda, participant inputs, and notes. It organizes the content into sections such as decisions made, action items assigned, and summary notes, outputting a clear, formatted minutes document in text or JSON.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "meetingTitle",
+          "type": "string",
+          "description": "The title or subject of the meeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "meetingDate",
+          "type": "string",
+          "description": "Date of the meeting in ISO format (YYYY-MM-DD).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "participants",
+          "type": "array",
+          "description": "List of participant names involved in the meeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "agendaItems",
+          "type": "array",
+          "description": "List of agenda points or topics planned for discussion.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "discussionNotes",
+          "type": "object",
+          "description": "Mapping of agenda items to notes or summaries discussed under each topic.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "decisions",
+          "type": "array",
+          "description": "Key decisions made during the meeting.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "actionItems",
+          "type": "array",
+          "description": "Action items assigned, each with a description, assignee, and due date.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the minutes, either 'text' or 'json'.",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted meeting minutes in the requested format, ready for review or distribution."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to generate a clear and comprehensive summary of a meeting's key points, including agenda coverage, decisions, and next steps, from raw input data provided by participants or meeting records. It streamlines producing professional minutes suitable for distribution.",
+        "limitations": "This tool does not transcribe from audio or video automatically; it requires textual input data. It cannot interpret ambiguous or incomplete meeting inputs without user clarification.",
+        "examples": [
+          "Create minutes for a project status meeting with agenda, discussion notes, decisions, and assigned action items.",
+          "Generate meeting minutes in JSON format for use in a project management app.",
+          "Summarize discussion points and decisions from a client call with listed participants and agenda."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "meeting",
+        "minutes",
+        "documentation",
+        "productivity",
+        "summary",
+        "action-items"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"meetingTitle\":\"Project Sync\",\"meetingDate\":\"2024-06-01\",\"participants\":[\"Alice\",\"Bob\",\"Charlie\"],\"agendaItems\":[\"Progress update\",\"Risks discussion\",\"Next steps\"],\"discussionNotes\":{\"Progress update\":\"Alice reported 80% completion.\",\"Risks discussion\":\"Bob highlighted potential delays due to resource shortage.\",\"Next steps\":\"Agree to hire contractors.\"},\"decisions\":[\"Approve contractor hiring\"],\"actionItems\":[{\"description\":\"Prepare budget proposal\",\"assignee\":\"Charlie\",\"dueDate\":\"2024-06-10\"}],\"format\":\"text\"}",
+          "description": "Generate comprehensive text minutes for a project sync meeting including agenda, notes, decisions, and action items."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createEmail",
+      "description": "Generates a professional email message based on user inputs such as recipient information, subject, body content, and optional signature and formatting preferences. The tool composes the complete email text output ready for sending or further editing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "recipientName",
+          "type": "string",
+          "description": "The name of the email recipient, used for greeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "recipientEmail",
+          "type": "string",
+          "description": "The recipient's email address for reference or formatting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "The subject line text for the email message.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "body",
+          "type": "string",
+          "description": "The main content of the email message to communicate the intended information.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "senderName",
+          "type": "string",
+          "description": "The name of the sender to be included in the signature or closing line.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeSignature",
+          "type": "boolean",
+          "description": "Whether to append a signature block with sender information at the end of the email.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The tone or style of email (e.g., formal, friendly, persuasive) to tailor language and style accordingly.",
+          "required": false,
+          "defaultValue": "formal"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete formatted email, including subject and body as a text string ready for sending."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate a complete, context-appropriate email message based on specified parameters like recipient, subject, and body content. It helps create polished email drafts for various professional or casual communication needs.",
+        "limitations": "This tool does not send emails, validate email addresses, or handle attachments. It focuses solely on composing text content for emails.",
+        "examples": [
+          "Create a formal follow-up email to a client named Sarah regarding a project update.",
+          "Generate a friendly thank-you email to a coworker named John after a meeting.",
+          "Write a persuasive sales inquiry email to a prospect named Alex with specific product details."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "email",
+        "communication",
+        "text generation",
+        "business writing",
+        "professional communication"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipientName\":\"Sarah\",\"recipientEmail\":\"sarah@example.com\",\"subject\":\"Project Update\",\"body\":\"I wanted to provide you with the latest status on the project. We have completed the initial phase and are on track for the next milestones.\",\"senderName\":\"Michael\",\"includeSignature\":true,\"tone\":\"formal\"}",
+          "description": "A formal project update email to a client named Sarah including signature."
+        },
+        {
+          "inputJson": "{\"recipientName\":\"John\",\"recipientEmail\":\"john@example.com\",\"subject\":\"Thank You!\",\"body\":\"Thanks so much for your help during yesterday's meeting. I really appreciate your insights and support.\",\"senderName\":\"Emily\",\"includeSignature\":false,\"tone\":\"friendly\"}",
+          "description": "A friendly thank-you email without a signature to a coworker named John."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Email",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createInvoice",
+      "description": "Generates a professional invoice document based on provided client details, itemized services or products, pricing, tax rates, and payment terms. Accepts structured inputs and outputs a formatted invoice in PDF or JSON format ready for distribution or record keeping.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "clientName",
+          "type": "string",
+          "description": "Full name or company name of the invoice recipient.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "clientAddress",
+          "type": "string",
+          "description": "Address of the client to appear on the invoice header.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "invoiceDate",
+          "type": "string",
+          "description": "Date of invoice issuance in ISO format (YYYY-MM-DD).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dueDate",
+          "type": "string",
+          "description": "Payment due date in ISO format (YYYY-MM-DD).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "items",
+          "type": "array",
+          "description": "List of invoice items, each including description, quantity, unitPrice, and optionally, taxRate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "currency",
+          "type": "string",
+          "description": "Currency code as per ISO 4217 (e.g., USD, EUR) used for all monetary values.",
+          "required": true,
+          "defaultValue": "USD"
+        },
+        {
+          "name": "taxRate",
+          "type": "number",
+          "description": "Default tax rate percentage to apply to all items without specific taxRate (e.g., 10 for 10%).",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "paymentTerms",
+          "type": "string",
+          "description": "Description of payment terms (e.g., 'Net 30 days', 'Due on receipt').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "invoiceNumber",
+          "type": "string",
+          "description": "Unique invoice identifier for tracking (auto-generated if empty).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the generated invoice document: 'PDF' or 'JSON'.",
+          "required": false,
+          "defaultValue": "PDF"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the invoice data and the generated document as a base64-encoded string with metadata including total amount and invoice number."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate professional invoices for clients programmatically, for billing or record-keeping purposes, by providing details like client info, line items, pricing, and payment terms. It helps in automating invoice creation for freelance work, business transactions, or ecommerce.",
+        "limitations": "This tool does not send invoices, handle payments, or manage accounting entries. It assumes accurate input data and does not perform validation beyond format checks.",
+        "examples": [
+          "Generate an invoice for a client with three service items, including taxes, in PDF format.",
+          "Create an invoice JSON object for an ecommerce order with product details and due date set to 30 days from invoice date.",
+          "Produce an invoice with default tax applied and specify payment terms for tracking."
+        ]
+      },
+      "tags": [
+        "invoice",
+        "document-generation",
+        "billing",
+        "finance",
+        "pdf",
+        "json",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"clientName\":\"Acme Corporation\",\"clientAddress\":\"123 Market St, Springfield\",\"invoiceDate\":\"2024-05-01\",\"dueDate\":\"2024-05-31\",\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":150.00,\"taxRate\":8},{\"description\":\"Software License\",\"quantity\":5,\"unitPrice\":200.00}],\"currency\":\"USD\",\"taxRate\":10,\"paymentTerms\":\"Net 30 days\",\"invoiceNumber\":\"INV-20240501-001\",\"outputFormat\":\"PDF\"}",
+          "description": "Generate a PDF invoice for Acme Corporation with two items, applying item-specific and default tax rates, and specifying payment terms and invoice number."
+        },
+        {
+          "inputJson": "{\"clientName\":\"Jane Doe\",\"invoiceDate\":\"2024-06-10\",\"dueDate\":\"2024-06-25\",\"items\":[{\"description\":\"Graphic Design Work\",\"quantity\":15,\"unitPrice\":50}],\"currency\":\"USD\",\"taxRate\":7.5,\"outputFormat\":\"JSON\"}",
+          "description": "Create a JSON format invoice for an individual client with one design service line and a 7.5% tax rate applied to the entire invoice."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Invoice",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createResume",
+      "description": "Generates a professional resume document based on detailed user input including personal details, skills, work experience, education, and other relevant sections. Processes structured data to produce well-formatted resume content in a widely accepted format such as PDF or Word.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "fullName",
+          "type": "string",
+          "description": "Applicant's full name as it should appear on the resume",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contactInfo",
+          "type": "object",
+          "description": "Contact details including email, phone number, and optionally address or LinkedIn URL",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "summary",
+          "type": "string",
+          "description": "A brief professional summary or objective statement highlighting career goals or skills",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "skills",
+          "type": "array",
+          "description": "List of relevant professional skills or technologies the applicant possesses",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "workExperience",
+          "type": "array",
+          "description": "Array of work experience entries including job title, company, start/end dates, and descriptions",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "education",
+          "type": "array",
+          "description": "Educational history entries including degrees, institutions, and graduation dates",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "certifications",
+          "type": "array",
+          "description": "Optional list of professional certifications or licenses",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output file format, e.g., 'pdf' or 'docx'",
+          "required": true,
+          "defaultValue": "pdf"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated resume as a base64-encoded string and metadata such as filename and format"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a polished, structured resume document from user-provided data to assist job seekers or professionals in creating job applications. Suitable for automating resume creation with customizable sections and output formats.",
+        "limitations": "Cannot evaluate or improve quality of input content; formatting customization options are limited; output depends entirely on accuracy and completeness of provided input data.",
+        "examples": [
+          "Generate a resume PDF for a software engineer with 5 years of experience and specific skills in JavaScript and AWS.",
+          "Create a resume document including education, certifications, and a professional summary for a recent graduate.",
+          "Produce a Word format resume highlighting project management experience and communication skills."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "resume",
+        "document-generation",
+        "career",
+        "job-application"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"fullName\":\"Jane Doe\",\"contactInfo\":{\"email\":\"jane.doe@example.com\",\"phone\":\"555-123-4567\"},\"summary\":\"Experienced software developer specializing in front-end technologies.\",\"skills\":[\"JavaScript\",\"React\",\"CSS\"],\"workExperience\":[{\"jobTitle\":\"Front-End Developer\",\"company\":\"Tech Solutions Inc.\",\"startDate\":\"2018-06-01\",\"endDate\":\"2023-03-01\",\"description\":\"Developed interactive web applications using React.\"}],\"education\":[{\"degree\":\"B.Sc. Computer Science\",\"institution\":\"State University\",\"graduationDate\":\"2018\"}],\"certifications\":[\"Certified JavaScript Developer\"],\"outputFormat\":\"pdf\"}",
+          "description": "Generate a PDF resume for a front-end developer including work experience and education."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Resume",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createChangelog",
+      "description": "Generates a structured changelog document from provided release metadata including version, date, and categorized changes. Accepts version string, release date, and an object listing added, changed, fixed, and removed items. Outputs a formatted changelog text suitable for release notes.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The version number of the release (e.g., '1.2.0').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "releaseDate",
+          "type": "string",
+          "description": "The release date in ISO format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "changes",
+          "type": "object",
+          "description": "An object containing categorized arrays of changes: added, changed, fixed, removed. Each key maps to an array of strings describing each change.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Custom title for the changelog document; defaults to 'Changelog' if omitted.",
+          "required": false,
+          "defaultValue": "Changelog"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single 'changelog' string property with the formatted changelog text."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating user-readable changelog documents based on structured release notes data to maintain consistent formatting and clarity in software release documentation.",
+        "limitations": "This tool does not extract change information from code repositories or commit logs; it requires structured input data. It also does not support multilingual changelogs or rich media.",
+        "examples": [
+          "Create a changelog for version 2.0.0 including features added, bugs fixed, and items removed.",
+          "Generate a formatted changelog with a custom title and release date for internal documentation.",
+          "Produce a changelog from categorized entries with no release date provided."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "changelog",
+        "release-notes",
+        "documentation",
+        "software-development"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"version\":\"1.4.3\",\"releaseDate\":\"2023-12-15\",\"changes\":{\"added\":[\"New dashboard analytics module\",\"Support for OAuth2 authentication\"],\"fixed\":[\"Crash on startup under certain conditions\",\"Minor UI glitches in settings panel\"],\"changed\":[\"Updated third-party libraries to latest versions\"],\"removed\":[\"Deprecated legacy API endpoints\"]},\"title\":\"Release Notes\"}",
+          "description": "Standard release notes for version 1.4.3 with all categories of changes and a custom title."
+        },
+        {
+          "inputJson": "{\"version\":\"0.9.0\",\"changes\":{\"added\":[\"Initial beta release features\"],\"fixed\":[],\"changed\":[],\"removed\":[]}}",
+          "description": "Minimal changelog for an initial beta release without a release date and default title."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Changelog",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createBlogPost",
+      "description": "Generates a structured blog post based on a given topic, target audience, and style preferences. Accepts inputs such as title, key points, desired tone, and keywords. Processes these inputs to produce a full blog post draft including introduction, body sections, and conclusion, suitable for digital publishing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the blog post to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "An array of strings listing the main points or ideas to cover in the blog post.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended readers to tailor content language and complexity, e.g., 'beginners', 'tech professionals'.",
+          "required": false,
+          "defaultValue": "general audience"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The tone or style of writing, such as 'informative', 'casual', 'professional', or 'persuasive'.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "A list of SEO keywords to organically integrate within the blog content.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code for the blog post output, e.g., 'en' for English.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "wordCount",
+          "type": "number",
+          "description": "Approximate desired word count for the blog post.",
+          "required": false,
+          "defaultValue": "800"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A detailed blog post object containing a title string, an array of paragraphs representing the body, and metadata such as estimated reading time."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate complete, coherent blog posts from a set of topics or ideas, customized for a specific audience or style. Especially useful for content marketing, educational articles, or informative posts.",
+        "limitations": "The tool may not perfectly capture highly specialized expert knowledge or very recent events. It cannot replace human editing for accuracy or compliance with editorial guidelines.",
+        "examples": [
+          "Create a blog post about climate change impacts aimed at high school students in a friendly tone.",
+          "Generate a professional blog post on cybersecurity best practices targeting IT professionals.",
+          "Write a casual blog post about travel tips incorporating given keywords for SEO."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "blog post",
+        "writing",
+        "SEO",
+        "digital marketing",
+        "article generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"The Future of Renewable Energy\",\"keyPoints\":[\"solar advancements\",\"wind power growth\",\"government policies\"],\"targetAudience\":\"general audience\",\"tone\":\"informative\",\"keywords\":[\"renewable energy\",\"solar power\",\"wind energy\"],\"language\":\"en\",\"wordCount\":900}",
+          "description": "Generate an informative blog post about future renewable energy trends for a general audience."
+        },
+        {
+          "inputJson": "{\"title\":\"Top 10 JavaScript Frameworks in 2024\",\"keyPoints\":[\"React\",\"Vue\",\"Angular\",\"Svelte\"],\"targetAudience\":\"web developers\",\"tone\":\"professional\",\"keywords\":[\"JavaScript\",\"frameworks\",\"web development\"],\"language\":\"en\",\"wordCount\":1200}",
+          "description": "Create a professional, detailed blog post comparing popular JavaScript frameworks for developers."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createArticle",
+      "description": "Generates a structured article based on a given topic, optional subtopics, target audience, desired length, and style preferences. Accepts input parameters describing the article requirements, processes them using content generation techniques, and produces a formatted text article including title, headings, and content paragraphs.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme of the article to write about.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "subtopics",
+          "type": "array",
+          "description": "Optional list of subtopics or key points the article should cover.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Intended readers of the article to tailor language and tone accordingly.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Desired approximate length of the article in words.",
+          "required": false,
+          "defaultValue": "1000"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Writing style preference, e.g., formal, conversational, technical, or persuasive.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "includeReferences",
+          "type": "boolean",
+          "description": "Whether to include references or citations when applicable.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated article including title, an array of sections with headings and paragraph text, and metadata about word count."
+      },
+      "aiAgent": {
+        "useCase": "This tool is ideal for AI agents tasked with producing complete, readable articles for blogs, educational sites, newsletters, or marketing content. It helps automate content creation from high-level parameters describing the topic and audience, ensuring consistent structure and style.",
+        "limitations": "The tool cannot guarantee factual accuracy or up-to-date information; it does not perform external research or verify facts. It may produce generic or repetitive content if inputs are too broad or vague.",
+        "examples": [
+          "Create a 1500-word technical article on quantum computing targeting early-career researchers.",
+          "Write a conversational blog post about sustainable living including subtopics on recycling and energy conservation.",
+          "Generate a formal summary article about recent space exploration missions for a general audience."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "article generation",
+        "writing",
+        "automated content",
+        "natural language generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Benefits of mindfulness meditation\",\"subtopics\":[\"stress reduction\",\"improved focus\"],\"targetAudience\":\"general public\",\"length\":800,\"style\":\"conversational\",\"includeReferences\":true}",
+          "description": "Generate an 800-word conversational article about mindfulness meditation benefits for the general public, including references."
+        },
+        {
+          "inputJson": "{\"topic\":\"Electric vehicles technology\",\"targetAudience\":\"technical enthusiasts\",\"length\":1200,\"style\":\"technical\",\"includeReferences\":false}",
+          "description": "Create a 1200-word technical article on electric vehicle technology targeted at technology enthusiasts."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createContract",
+      "description": "Generates a customized legal contract document based on provided contract type and terms. Accepts contract type (e.g., NDA, Service Agreement), parties involved, key terms, and optional clauses. Processes inputs to produce a clear, formatted contract text suitable for review and use.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "contractType",
+          "type": "string",
+          "description": "Type of contract to create, e.g., NDA, Service Agreement, Employment Agreement.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "parties",
+          "type": "array",
+          "description": "Array of party objects involved in the contract, each with name and role (e.g., {\"name\":\"Alice Corp\",\"role\":\"Disclosing Party\"}).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyTerms",
+          "type": "object",
+          "description": "Key terms and conditions to include, such as duration, payment amount, confidentiality terms, and termination clauses.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "optionalClauses",
+          "type": "array",
+          "description": "Additional optional clauses to include if needed, can be standard clauses like arbitration, governing law, or customized text.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language of the contract output, default is English.",
+          "required": false,
+          "defaultValue": "\"English\""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the fully generated contract text and a summary of included sections."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to produce a legal contract document dynamically based on client specifications, ensuring clear and formal contracting text without manually drafting from scratch. Ideal for automating contract creation workflows or assisting users with draft contracts.",
+        "limitations": "This tool does not provide legal advice or guarantee legal enforceability. Complex or jurisdiction-specific contracts may require review by a qualified attorney.",
+        "examples": [
+          "Generate an NDA between Company A and Company B with a 2-year confidentiality term.",
+          "Create a Service Agreement outlining payment terms, deliverables, and termination conditions between Client and Provider.",
+          "Draft an Employment Agreement specifying roles, salary, benefits, and non-compete clauses."
+        ]
+      },
+      "tags": [
+        "contract",
+        "legal",
+        "document-generation",
+        "content-creation",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"contractType\":\"NDA\",\"parties\":[{\"name\":\"Alice Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Bob LLC\",\"role\":\"Receiving Party\"}],\"keyTerms\":{\"duration\":\"2 years\",\"confidentiality\":\"absolute\",\"governingLaw\":\"California\"},\"optionalClauses\":[\"arbitration\"]}",
+          "description": "Create a nondisclosure agreement between two companies with a 2-year confidentiality term and arbitration clause."
+        },
+        {
+          "inputJson": "{\"contractType\":\"Service Agreement\",\"parties\":[{\"name\":\"Client Inc.\",\"role\":\"Client\"},{\"name\":\"ServicePro Ltd.\",\"role\":\"Provider\"}],\"keyTerms\":{\"paymentAmount\":\"5000 USD\",\"deliverables\":\"Monthly reports\",\"terminationNotice\":\"30 days\"},\"optionalClauses\":[]}",
+          "description": "Generate a service agreement specifying payment, deliverables, and termination conditions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Contract",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createDocument",
+      "description": "Generates a structured digital document based on user-provided content, format, and metadata. Accepts inputs including document title, body content, format type (e.g., markdown, HTML, plain text), and optional metadata such as author and creation date. Produces a formatted document string and metadata summary suitable for storage, display, or further processing.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the document to be created.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "bodyContent",
+          "type": "string",
+          "description": "The primary content/body text of the document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The desired document output format (e.g., 'markdown', 'html', 'plaintext').",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Name of the author of the document (optional).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "creationDate",
+          "type": "string",
+          "description": "ISO 8601 formatted date string indicating when the document was created (optional).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted document string and associated metadata including title, author, and creation date."
+      },
+      "aiAgent": {
+        "useCase": "Use when generating new digital documents with defined structure and format from raw textual content and metadata. Ideal for creating notes, reports, or articles programmatically in common formats for display, export, or storage.",
+        "limitations": "Does not perform advanced content editing or natural language generation; requires raw content input. Does not support embedded media like images or complex layouts beyond supported text formats.",
+        "examples": [
+          "Create a markdown document with a given title and body for blog post preparation.",
+          "Generate a plain text report with specified author and creation date metadata.",
+          "Produce an HTML formatted article from supplied textual content and metadata."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "document",
+        "generate",
+        "formatting",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Project Update\",\"bodyContent\":\"The team completed the first development sprint.\",\"format\":\"markdown\",\"author\":\"Alice Johnson\",\"creationDate\":\"2024-06-15T09:00:00Z\"}",
+          "description": "Creating a markdown document titled 'Project Update' with author and creation date metadata."
+        },
+        {
+          "inputJson": "{\"title\":\"Meeting Notes\",\"bodyContent\":\"Discussed action items and deadlines.\",\"format\":\"plaintext\"}",
+          "description": "Generating a plain text document from meeting notes without specifying author or date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createProposal",
+      "description": "Generates a structured project or business proposal document based on user-provided inputs including title, objectives, background, methods, budget, and timeline. Accepts key proposal elements and outputs a formatted proposal text suitable for presentations or submissions.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title or subject of the proposal.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "summary",
+          "type": "string",
+          "description": "A brief summary or abstract of the proposal.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "objectives",
+          "type": "array",
+          "description": "List of key objectives or goals the proposal aims to achieve.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "background",
+          "type": "string",
+          "description": "Background information or context motivating the proposal.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "methods",
+          "type": "string",
+          "description": "Description of the proposed methods, strategies or approaches to achieve objectives.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "budget",
+          "type": "string",
+          "description": "Financial budget details or cost estimates related to the proposal.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "timeline",
+          "type": "string",
+          "description": "Expected timeline or schedule for the project or work outlined in the proposal.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "audience",
+          "type": "string",
+          "description": "The target audience or recipients of the proposal, to tailor tone and content.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the full formatted proposal text as a string, ready for use or export."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a comprehensive, structured proposal document from provided key points and inputs, such as for business plans, project funding requests, or research project outlines. It helps in converting raw content into a coherent professional proposal format.",
+        "limitations": "The tool does not generate domain-specific technical content or detailed financial models; it relies on user inputs to provide accurate data and context. It does not format visual elements like charts or images.",
+        "examples": [
+          "Create a project proposal for a new community garden initiative including objectives, budget, and timeline.",
+          "Generate a business proposal summary for a startup seeking seed funding.",
+          "Draft a research proposal outline highlighting background, objectives, and methods for academic submission."
+        ]
+      },
+      "tags": [
+        "content-creation",
+        "proposal",
+        "document-generation",
+        "business",
+        "project",
+        "writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Community Garden Project Proposal\",\"summary\":\"A project to establish a community garden to promote sustainability.\",\"objectives\":[\"Engage local residents\",\"Create productive green spaces\",\"Educate about sustainable practices\"],\"background\":\"Many urban areas lack green spaces. This project addresses this gap.\",\"methods\":\"Site selection, community outreach, planting workshops.\",\"budget\":\"$10,000 for materials and events.\",\"timeline\":\"6 month implementation from planning to harvest.\",\"audience\":\"Local city council and community stakeholders.\"}",
+          "description": "Generate a proposal document for a community garden project targeting local stakeholders."
+        },
+        {
+          "inputJson": "{\"title\":\"Seed Funding Business Proposal\",\"summary\":\"Proposal to secure seed funding for a tech startup.\",\"objectives\":[\"Develop MVP\",\"Launch a marketing campaign\",\"Expand user base\"],\"budget\":\"$200,000 for development and marketing.\",\"timeline\":\"12 months with quarterly milestones.\",\"audience\":\"Angel investors and venture capitalists.\"}",
+          "description": "Create a business proposal summary for a startup seeking seed funding."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Proposal",
+        "context": null
+      }
+    },
+    {
+      "name": "content-creation.createReport",
+      "description": "Generates a structured report document based on provided data, report type, and formatting preferences. Accepts inputs including title, sections with content in text or data format, and output format (e.g., PDF or DOCX). Processes the inputs to compile and format a comprehensive report with sections, summaries, and optional graphs, returning a downloadable report file URL or binary data.",
+      "category": "content-creation",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the report to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of sections, each with a header and content (text or data) to include in the report.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "reportType",
+          "type": "string",
+          "description": "The type of report to generate, e.g., 'financial', 'project', 'research'. Determines template and styling.",
+          "required": false,
+          "defaultValue": "general"
+        },
+        {
+          "name": "includeSummary",
+          "type": "boolean",
+          "description": "Whether to include a summary section at the beginning of the report.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output file format of the report, e.g., PDF, DOCX, HTML.",
+          "required": false,
+          "defaultValue": "PDF"
+        },
+        {
+          "name": "authorName",
+          "type": "string",
+          "description": "Optional author name to display in the report metadata or header.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the report document as a downloadable URL or as base64 encoded content with metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate detailed, structured reports from raw data, text inputs, or summarized content, such as business reports, research summaries, or project updates. It's useful when delivering formatted documents in common formats like PDF or DOCX for presentation or distribution.",
+        "limitations": "This tool does not perform data analysis or interpretation; it assumes input content is pre-analyzed. It cannot generate complex visualizations beyond basic charts or tables. It also does not support collaborative editing or real-time updates.",
+        "examples": [
+          "Create a financial report summarizing quarterly earnings with sections for overview, revenue, expenses, and forecasts.",
+          "Generate a research summary report from provided study data including methodology, results, and conclusion sections.",
+          "Produce a project status report with sections for milestones, risks, next steps, and an executive summary."
+        ]
+      },
+      "tags": [
+        "content creation",
+        "report generation",
+        "document",
+        "PDF",
+        "DOCX",
+        "business",
+        "summary"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Q1 Financial Report\",\"sections\":[{\"header\":\"Overview\",\"content\":\"This quarter saw strong revenue growth across all divisions.\"},{\"header\":\"Revenue\",\"content\":\"Total revenue reached $5M, up 15% from last quarter.\"},{\"header\":\"Expenses\",\"content\":\"Operating expenses increased by 5%, mainly due to marketing investments.\"},{\"header\":\"Forecast\",\"content\":\"Projected growth for Q2 is 10% based on current market trends.\"}],\"reportType\":\"financial\",\"includeSummary\":true,\"outputFormat\":\"PDF\",\"authorName\":\"Finance Team\"}",
+          "description": "Generate a financial quarterly report with summary and key sections in PDF format, authored by Finance Team."
+        },
+        {
+          "inputJson": "{\"title\":\"Project Alpha Status Update\",\"sections\":[{\"header\":\"Milestones\",\"content\":\"Completed initial design and prototype phases.\"},{\"header\":\"Risks\",\"content\":\"Potential delays due to vendor supply chain issues.\"},{\"header\":\"Next Steps\",\"content\":\"Begin user testing and feedback collection.\"}],\"reportType\":\"project\",\"includeSummary\":false,\"outputFormat\":\"DOCX\",\"authorName\":\"Project Manager\"}",
+          "description": "Create a project status update report without summary, formatted as DOCX, authored by Project Manager."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderQuote",
+      "description": "This tool takes a textual quote and author information as input, optionally applying formatting styles such as citation style, emphasis, and including source details. It outputs a nicely formatted quote block suitable for embedding into documentation, web pages, or publications, ensuring consistent and professional presentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "quoteText",
+          "type": "string",
+          "description": "The main content of the quote to be rendered.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Name of the person who said or wrote the quote.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "source",
+          "type": "string",
+          "description": "Optional source or context where the quote originated (e.g., book, speech).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format the quote (e.g., \"APA\", \"MLA\", \"Chicago\").",
+          "required": false,
+          "defaultValue": "\"APA\""
+        },
+        {
+          "name": "emphasize",
+          "type": "boolean",
+          "description": "Flag to apply emphasis styling (italic or bold) to the quote text.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "includeQuotationMarks",
+          "type": "boolean",
+          "description": "Whether to enclose the quote text with quotation marks.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a formatted quote string ready for embedding, including optional author and source attribution formatted according to the chosen citation style."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to present a styled, formatted quote block in documentation or content, ensuring the quote is clear, properly attributed, and adheres to stylistic guidelines. It is ideal for automated content generation workflows that require consistent quote presentation.",
+        "limitations": "The tool does not generate the quote content itself and does not validate the authenticity or correctness of quote attributions or citation formatting beyond common styles.",
+        "examples": [
+          "Render a famous quote with author and source in APA style.",
+          "Format a motivational quote with emphasis and without quotation marks.",
+          "Create a blockquote with MLA citation style including source details."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "quote",
+        "formatting",
+        "citation",
+        "content-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"author\":\"Franklin D. Roosevelt\",\"source\":\"Speech, 1945\",\"citationStyle\":\"APA\",\"emphasize\":true,\"includeQuotationMarks\":true}",
+          "description": "Render an emphasized quote with author and source using APA style, including quotation marks."
+        },
+        {
+          "inputJson": "{\"quoteText\":\"Code is like humor. When you have to explain it, it’s bad.\",\"author\":\"Cory House\",\"citationStyle\":\"MLA\",\"emphasize\":false,\"includeQuotationMarks\":false}",
+          "description": "Render a quote without quotation marks or emphasis with MLA citation and author attribution only."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderCitation",
+      "description": "Renders formatted citations from structured bibliographic data in various citation styles (e.g., APA, MLA, Chicago). Accepts input metadata such as author names, title, publication date, and outputs a correctly styled citation string for embedding in documents or references.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "citationData",
+          "type": "object",
+          "description": "Structured bibliographic information including fields like authors, title, year, journal, publisher, etc.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Citation style to render the citation in (e.g., APA, MLA, Chicago, IEEE).",
+          "required": true,
+          "defaultValue": "APA"
+        },
+        {
+          "name": "locale",
+          "type": "string",
+          "description": "Locale code to adjust citation formatting according to regional conventions (e.g., en-US, en-GB).",
+          "required": false,
+          "defaultValue": "en-US"
+        },
+        {
+          "name": "includeUrl",
+          "type": "boolean",
+          "description": "Whether to include a URL or DOI if present in the citation data.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "truncateAuthors",
+          "type": "number",
+          "description": "Maximum number of authors to show before using 'et al.'; 0 means no truncation.",
+          "required": false,
+          "defaultValue": "0"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing 'formattedCitation': the citation string formatted according to the requested style and options."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to generate accurate, styled citations for bibliographic entries to embed in documentation, academic papers, or reference lists. It helps ensure compliance with citation standards without manual formatting.",
+        "limitations": "This tool cannot validate the correctness of bibliographic data; it assumes input data is accurate. It also may not support highly specialized or very new citation styles not included in common style sets.",
+        "examples": [
+          "Generate an APA citation string from provided author and journal info.",
+          "Render a citation in MLA style for a book reference.",
+          "Create a Chicago style citation for a conference paper including a DOI URL."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "citation",
+        "formatting",
+        "bibliography",
+        "academic",
+        "reference"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"citationData\":{\"authors\":[{\"firstName\":\"John\",\"lastName\":\"Doe\"},{\"firstName\":\"Jane\",\"lastName\":\"Smith\"}],\"title\":\"Understanding AI Tools\",\"year\":2024,\"journal\":\"Journal of AI Research\",\"volume\":\"15\",\"issue\":\"3\",\"pages\":\"123-145\",\"doi\":\"10.1234/jairesearch.2024.0153\"},\"style\":\"APA\",\"locale\":\"en-US\",\"includeUrl\":true,\"truncateAuthors\":0}",
+          "description": "Render an APA style citation with full authors and DOI URL."
+        },
+        {
+          "inputJson": "{\"citationData\":{\"authors\":[{\"firstName\":\"Alice\",\"lastName\":\"Brown\"},{\"firstName\":\"Bob\",\"lastName\":\"Green\"},{\"firstName\":\"Carol\",\"lastName\":\"White\"}],\"title\":\"Machine Learning Basics\",\"publisher\":\"Tech Books\",\"year\":2023},\"style\":\"MLA\",\"truncateAuthors\":2}",
+          "description": "Render an MLA style book citation truncating authors after two with et al."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderSentence",
+      "description": "Renders a single sentence into formatted documentation text based on specified style and context parameters. Accepts raw sentence text and options such as text style (e.g., plain, bold, italic), target documentation format (Markdown, HTML, plain text), and optional language or domain context. Outputs the sentence string formatted accordingly for inclusion in documentation files.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sentence",
+          "type": "string",
+          "description": "The raw sentence text to be rendered into documentation format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The target documentation format to render the sentence into (e.g., \"markdown\", \"html\", \"plain\").",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Text style to apply to the sentence, such as \"plain\", \"bold\", or \"italic\".",
+          "required": false,
+          "defaultValue": "plain"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Optional language code (e.g., \"en\", \"fr\") to apply locale-specific rendering rules or text normalization.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "context",
+          "type": "string",
+          "description": "Optional domain or context hint (e.g., \"api\", \"user-guide\") to adapt formatting or vocabulary appropriately.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "string",
+        "description": "The formatted sentence string ready for inclusion in documentation, matching the specified format and style."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating documentation content that requires transforming raw sentences into specific markup or plain text formats for consistent style and readability across documents, such as API references, guides, or manuals. It helps render sentences with correct emphasis or styling and adapts formatting to target documentation standards like Markdown or HTML.",
+        "limitations": "This tool only renders single sentences and does not handle paragraphs, multi-sentence formatting, or complex document structure. It does not perform language translation or deep linguistic analysis beyond basic locale adjustments.",
+        "examples": [
+          "Render a sentence bolded in Markdown format.",
+          "Create an italicized sentence in HTML for an API guide.",
+          "Convert a plain sentence into plain text without formatting."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "rendering",
+        "formatting",
+        "sentence",
+        "markdown",
+        "html",
+        "text-style"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sentence\":\"This function initializes the user session.\",\"format\":\"markdown\",\"style\":\"bold\"}",
+          "description": "Render a sentence as bold Markdown text."
+        },
+        {
+          "inputJson": "{\"sentence\":\"Supports multiple languages.\",\"format\":\"html\",\"style\":\"italic\",\"language\":\"en\"}",
+          "description": "Render a sentence italicized in HTML format with English context."
+        },
+        {
+          "inputJson": "{\"sentence\":\"Use admin privileges to access this endpoint.\",\"format\":\"plain\"}",
+          "description": "Render a sentence as plain text without additional styling."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderLink",
+      "description": "Renders an HTML anchor tag as a string based on input URL, display text, and optional attributes like target or CSS classes. Accepts parameters for URL, link text, and attributes, and outputs the complete HTML link element string that can be embedded in documentation or web content.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The URL to link to. Must be a valid HTTP/HTTPS or relative URL.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "linkText",
+          "type": "string",
+          "description": "The text displayed for the link. If empty, the URL is used as the text.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "openInNewTab",
+          "type": "boolean",
+          "description": "If true, adds target=\"_blank\" and rel=\"noopener noreferrer\" to open link in a new browser tab securely.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "cssClass",
+          "type": "string",
+          "description": "Optional CSS class(es) to apply to the anchor tag for styling.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "id",
+          "type": "string",
+          "description": "Optional id attribute for the anchor element.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single property 'html' which is a string representing the fully rendered HTML anchor element."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate well-formed HTML links for documentation pages, markdown conversion, or web content automatically. It ensures correct syntax and allows customization of attributes like opening in a new tab or adding CSS classes.",
+        "limitations": "This tool only generates the anchor tag HTML string and does not validate URL accessibility or sanitize inputs beyond basic escaping.",
+        "examples": [
+          "Create a link to 'https://example.com' with display text 'Example Website'.",
+          "Generate a link to '/docs/setup' with CSS class 'doc-link' opening in a new tab.",
+          "Render a link with just the URL, using it as the link text too."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "html",
+        "link rendering",
+        "web",
+        "string generation",
+        "markup"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://example.com\",\"linkText\":\"Example Website\",\"openInNewTab\":false,\"cssClass\":\"\",\"id\":\"\"}",
+          "description": "Basic link to example.com with custom text."
+        },
+        {
+          "inputJson": "{\"url\":\"/docs/setup\",\"linkText\":\"Setup Guide\",\"openInNewTab\":true,\"cssClass\":\"doc-link\",\"id\":\"setup-link\"}",
+          "description": "Link to a relative docs path that opens in a new tab with styling and ID."
+        },
+        {
+          "inputJson": "{\"url\":\"https://openai.com\",\"linkText\":\"\",\"openInNewTab\":false,\"cssClass\":\"\",\"id\":\"\"}",
+          "description": "Link with URL as the link text by default."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderHeading",
+      "description": "Renders a formatted heading string in Markdown, HTML, or plain text based on the specified heading level and style. Accepts heading text, level (1-6), output format, and optional inline styling parameters. Outputs a string representing the formatted heading suitable for documentation content.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The heading text content to render.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "level",
+          "type": "number",
+          "description": "Heading level from 1 (highest) to 6 (lowest).",
+          "required": true,
+          "defaultValue": "1"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format: markdown, html, or plain.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "inlineStyle",
+          "type": "string",
+          "description": "Optional inline CSS style string to apply (only valid for HTML format).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "id",
+          "type": "string",
+          "description": "Optional id attribute for the heading (used only in HTML format).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single field 'renderedHeading' which is the formatted heading string according to the specified format and parameters."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to generate a properly formatted heading string for documentation or content generation in supported formats like Markdown or HTML. It facilitates consistent, semantically correct heading rendering based on level and customization.",
+        "limitations": "Cannot generate complex heading components beyond text (e.g., icons). Inline styles apply only to HTML output; Markdown and plain text do not support styling.",
+        "examples": [
+          "Render a level 2 heading in Markdown with text 'Introduction'.",
+          "Generate a level 3 heading in HTML with custom inline style and id.",
+          "Output a plain text heading level 1 with a given title."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "rendering",
+        "heading",
+        "markdown",
+        "html",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"Project Overview\",\"level\":1,\"format\":\"markdown\"}",
+          "description": "Render a top-level heading in Markdown."
+        },
+        {
+          "inputJson": "{\"text\":\"Features\",\"level\":3,\"format\":\"html\",\"inlineStyle\":\"color:blue; font-weight:bold;\",\"id\":\"features-section\"}",
+          "description": "Generate a styled HTML h3 with an ID attribute."
+        },
+        {
+          "inputJson": "{\"text\":\"Summary\",\"level\":2,\"format\":\"plain\"}",
+          "description": "Create a plain text heading at level 2."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderReference",
+      "description": "Renders structured reference documentation from input source data such as JSON objects or markdown content. Processes the input to format sections like definitions, parameters, examples, and notes into clean HTML or markdown output suitable for technical documentation sites or wikis.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "object",
+          "description": "A structured object containing reference content such as definitions, parameters, return types, and examples.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The format to render the reference documentation in, e.g., 'html' or 'markdown'.",
+          "required": true,
+          "defaultValue": "html"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Optional styling theme to apply, such as 'light' or 'dark'.",
+          "required": false,
+          "defaultValue": "light"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include code or usage examples in the output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming or markup language for syntax highlighting in examples, e.g., 'json', 'javascript'.",
+          "required": false,
+          "defaultValue": "json"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a string 'renderedContent' with the formatted reference documentation ready to be integrated or published."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate clean, well-structured technical reference documentation from raw structured data or annotated source content. It's ideal for dynamically creating docs pages, API references, or SDK guides in different formats and themes.",
+        "limitations": "The tool does not scrape or extract references automatically from unstructured text; input must be pre-structured. It also does not support advanced interactive elements or live code execution.",
+        "examples": [
+          "Render a JSON-based function reference into HTML with a light theme including usage examples.",
+          "Generate markdown documentation for a set of API parameters without examples, using syntax highlight for JavaScript.",
+          "Produce a dark-themed HTML output of SDK method references from input data including all examples."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "rendering",
+        "reference",
+        "technical-writing",
+        "api-docs",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":{\"title\":\"createUser\",\"description\":\"Creates a new user in the system.\",\"parameters\":[{\"name\":\"username\",\"type\":\"string\",\"description\":\"Unique username for the user.\"},{\"name\":\"password\",\"type\":\"string\",\"description\":\"Password for the user.\"}],\"returns\":{\"type\":\"UserObject\",\"description\":\"The newly created user object.\"},\"examples\":[{\"description\":\"Basic usage example.\",\"code\":\"createUser('alice','password123')\"}]},\"outputFormat\":\"html\",\"theme\":\"light\",\"includeExamples\":true,\"language\":\"javascript\"}",
+          "description": "Render a function reference into HTML format with light theme including examples."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderWord",
+      "description": "This tool takes a word or phrase along with optional formatting instructions and renders it as styled content suitable for documentation or presentation. It accepts input text, font style, size, color, and weight, processing these to generate a formatted word output as HTML or Markdown snippet. The output can be embedded in documents or web pages.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The word or phrase to render.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "fontStyle",
+          "type": "string",
+          "description": "Optional font style such as normal, italic, or oblique.",
+          "required": false,
+          "defaultValue": "normal"
+        },
+        {
+          "name": "fontSize",
+          "type": "number",
+          "description": "Optional font size in pixels to apply to the word.",
+          "required": false,
+          "defaultValue": "14"
+        },
+        {
+          "name": "color",
+          "type": "string",
+          "description": "Optional color value (CSS color name or hex code) for the rendered word.",
+          "required": false,
+          "defaultValue": "#000000"
+        },
+        {
+          "name": "fontWeight",
+          "type": "string",
+          "description": "Optional font weight such as normal, bold, bolder, or numerical values (e.g., 400).",
+          "required": false,
+          "defaultValue": "normal"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The format for rendered output: 'html' for HTML snippet or 'markdown' for Markdown formatted text.",
+          "required": false,
+          "defaultValue": "html"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the rendered word as a string in the specified format. Includes the formattedContent string and the outputFormat used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate styled textual content for documentation, readmes, or web-based help pages where specific font styling for glossary terms, keywords, or labels is required. It helps automate consistent formatting of keywords in generated documentation outputs.",
+        "limitations": "Does not perform advanced text layout beyond basic inline styling. Not suitable for rendering paragraphs, images, or complex document structures. Output is limited to HTML or Markdown formats for a single styled word or phrase.",
+        "examples": [
+          "Render the word 'API' in bold and blue color as HTML.",
+          "Render the phrase 'function name' italic and in 16px font size in Markdown.",
+          "Generate the word 'Error' in red and bold for embedding in documentation."
+        ]
+      },
+      "tags": [
+        "render",
+        "word",
+        "documentation",
+        "formatting",
+        "html",
+        "markdown",
+        "text-style"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"API\",\"fontWeight\":\"bold\",\"color\":\"blue\",\"outputFormat\":\"html\"}",
+          "description": "Render the word 'API' in bold blue text as an HTML snippet."
+        },
+        {
+          "inputJson": "{\"text\":\"function name\",\"fontStyle\":\"italic\",\"fontSize\":16,\"outputFormat\":\"markdown\"}",
+          "description": "Render the phrase 'function name' in italic with 16px font size using Markdown format."
+        },
+        {
+          "inputJson": "{\"text\":\"Error\",\"color\":\"#FF0000\",\"fontWeight\":\"bolder\",\"outputFormat\":\"html\"}",
+          "description": "Render the word 'Error' in bright red color with bolder font weight as HTML."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderText",
+      "description": "Renders input text content into formatted HTML or Markdown based on specified formatting options and templates. Accepts raw text along with format specifications and returns the rendered string ready for documentation pages or previews.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The raw text content to be rendered. Required.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The target output format: 'html' or 'markdown'. Defaults to 'html'.",
+          "required": false,
+          "defaultValue": "html"
+        },
+        {
+          "name": "template",
+          "type": "string",
+          "description": "Optional template name or string to apply around the text for consistent styling or layout. If empty, no template is applied.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "sanitizeHtml",
+          "type": "boolean",
+          "description": "Whether to sanitize the output HTML to prevent XSS or unwanted tags. Applies only if format is 'html'. Defaults to true.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "customStyles",
+          "type": "string",
+          "description": "Optional CSS styles to embed or include in the rendered output for additional customization. Ignored if format is 'markdown'.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the rendered content as a string in the requested format, ready for use in documentation or previews."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert plain or lightly formatted text into rich documentation-ready HTML or Markdown output. Suitable for generating previews, rendering marked-up instructions, or embedding styled text within documentation sites.",
+        "limitations": "This tool does not perform natural language understanding or content generation. It does not convert other formats like PDF or Word documents. Sanitization applies only to HTML output and does not fix semantic markdown errors.",
+        "examples": [
+          "Render a simple Markdown snippet for a software API doc section.",
+          "Convert raw text into safe HTML with embedded custom CSS styles for a documentation page.",
+          "Apply a predefined template around text before rendering it as HTML for consistent branding in docs."
+        ]
+      },
+      "tags": [
+        "render",
+        "documentation",
+        "text formatting",
+        "html",
+        "markdown",
+        "template",
+        "sanitize",
+        "styles"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"# API Reference\\nThis is the main API documentation section.\",\"format\":\"markdown\",\"template\":\"\",\"sanitizeHtml\":true,\"customStyles\":\"\"}",
+          "description": "Render a Markdown heading and paragraph as Markdown output without a template."
+        },
+        {
+          "inputJson": "{\"text\":\"<h1>Welcome</h1><p>API Docs Content</p>\",\"format\":\"html\",\"template\":\"<div class=\\\"doc-container\\\">{{content}}</div>\",\"sanitizeHtml\":true,\"customStyles\":\".doc-container { font-family: Arial; }\"}",
+          "description": "Render HTML content wrapped in a custom template container with CSS styling and sanitization."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderChart",
+      "description": "Renders a customizable chart image based on input dataset and chart configuration parameters. Accepts data points, chart type, labels, colors, and style options; processes them to generate a visual chart rendering output as a base64-encoded PNG image or SVG markup, suitable for embedding in documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "Array of objects representing data points with x and y values or category and value pairs, required to plot the chart.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "chartType",
+          "type": "string",
+          "description": "Type of chart to render, such as 'line', 'bar', 'pie', or 'scatter'.",
+          "required": true,
+          "defaultValue": "line"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title displayed on top of the chart.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "xAxisLabel",
+          "type": "string",
+          "description": "Label for the X axis, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "yAxisLabel",
+          "type": "string",
+          "description": "Label for the Y axis, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "colors",
+          "type": "array",
+          "description": "Array of color strings to be used in the chart for different series or slices.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the output chart image or SVG in pixels.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the output chart image or SVG in pixels.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the rendered output, either 'png' for base64 PNG image or 'svg' for SVG markup.",
+          "required": false,
+          "defaultValue": "png"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the chart image data: base64-encoded PNG string or SVG markup string, along with metadata such as width, height, and format."
+      },
+      "aiAgent": {
+        "useCase": "Use when generating visual charts for inclusion in software documentation, reports, or technical articles from raw or structured data to improve readability and explanation of concepts. Ideal for automated documentation generation requiring charts illustrating numerical or categorical data trends.",
+        "limitations": "Cannot render highly interactive charts or export other formats like PDF. Complex multi-axis or 3D charts are not supported. Input data must be well-structured arrays with appropriate fields.",
+        "examples": [
+          "Render a line chart for monthly sales data.",
+          "Generate a pie chart showing market share percentages with custom colors.",
+          "Create a bar chart to display survey results with axis labels and title."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "chart",
+        "rendering",
+        "visualization",
+        "image",
+        "svg",
+        "png"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"x\":\"Jan\",\"y\":120},{\"x\":\"Feb\",\"y\":150},{\"x\":\"Mar\",\"y\":170}],\"chartType\":\"line\",\"title\":\"Monthly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales\",\"colors\":[\"#4a90e2\"],\"width\":600,\"height\":400,\"outputFormat\":\"png\"}",
+          "description": "Render a line chart for monthly sales with axis labels and title in PNG format."
+        },
+        {
+          "inputJson": "{\"data\":[{\"category\":\"Apple\",\"value\":40},{\"category\":\"Samsung\",\"value\":35},{\"category\":\"Others\",\"value\":25}],\"chartType\":\"pie\",\"title\":\"Market Share Q1\",\"colors\":[\"#ff6384\",\"#36a2eb\",\"#cc65fe\"],\"width\":500,\"height\":500,\"outputFormat\":\"svg\"}",
+          "description": "Generate a pie chart showing market share with custom colors in SVG format."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Chart",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderParagraph",
+      "description": "Renders a formatted documentation paragraph from raw input text, optionally applying markdown or HTML styling. Accepts plain text input along with formatting options and produces a styled paragraph string for documentation systems.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The raw text content of the paragraph to render.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format for rendering the paragraph: 'plain', 'markdown', or 'html'.",
+          "required": false,
+          "defaultValue": "plain"
+        },
+        {
+          "name": "alignment",
+          "type": "string",
+          "description": "Text alignment for the paragraph: 'left', 'right', 'center', or 'justify'.",
+          "required": false,
+          "defaultValue": "left"
+        },
+        {
+          "name": "includeHeader",
+          "type": "boolean",
+          "description": "Whether to include a header above the paragraph (e.g., a section title).",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "headerText",
+          "type": "string",
+          "description": "Text to include as the header above the paragraph if includeHeader is true.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the rendered paragraph as a formatted string under 'renderedParagraph'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to produce a styled paragraph for documentation outputs, converting raw text input into formatted Markdown, HTML, or plain text paragraphs optionally with headers and alignment. It helps in generating presentable document sections dynamically.",
+        "limitations": "Does not support complex layouts, images, or embedded multimedia. Does not generate multiple paragraphs or large documents, only a single paragraph block.",
+        "examples": [
+          "Render a simple plain text paragraph with default alignment.",
+          "Render a paragraph in markdown with center alignment.",
+          "Render a HTML paragraph with a header title included."
+        ]
+      },
+      "tags": [
+        "rendering",
+        "documentation",
+        "text formatting",
+        "paragraph",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"This is a sample documentation paragraph.\",\"format\":\"plain\"}",
+          "description": "Render a basic plain text paragraph."
+        },
+        {
+          "inputJson": "{\"text\":\"This paragraph explains the API usage.\",\"format\":\"markdown\",\"alignment\":\"center\"}",
+          "description": "Render a centered markdown paragraph."
+        },
+        {
+          "inputJson": "{\"text\":\"Details of the component.\",\"format\":\"html\",\"includeHeader\":true,\"headerText\":\"Component Details\"}",
+          "description": "Render an HTML paragraph with a header."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderAttachment",
+      "description": "Renders an attachment file for inclusion in documentation by converting it to an embeddable or preview format. Accepts an attachment URL or raw file data, processes conversion or resizing, and outputs HTML or markdown snippets for displaying image, audio, video, or document previews within documentation pages.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "attachmentUrl",
+          "type": "string",
+          "description": "URL of the attachment file to render (image, audio, video, document). Required if rawFileData is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "rawFileData",
+          "type": "string",
+          "description": "Base64-encoded content of the attachment file. Used if attachmentUrl is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "fileType",
+          "type": "string",
+          "description": "Optional MIME type or file extension of the attachment (e.g., 'image/png', 'pdf'). Helps determine rendering method.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxWidth",
+          "type": "number",
+          "description": "Maximum width in pixels for rendering images or document previews to keep them fit within documentation layout.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "maxHeight",
+          "type": "number",
+          "description": "Maximum height in pixels for rendering images or document previews to keep them fit within documentation layout.",
+          "required": false,
+          "defaultValue": "400"
+        },
+        {
+          "name": "renderFormat",
+          "type": "string",
+          "description": "Output rendering format: 'html' for HTML snippet or 'markdown' for markdown compatible snippet.",
+          "required": false,
+          "defaultValue": "html"
+        },
+        {
+          "name": "enablePreview",
+          "type": "boolean",
+          "description": "If true, generates a preview (thumbnail or playable embedded player) instead of just a download link.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the rendered snippet as a string and metadata about the rendered attachment, including embed type and sanitized file details."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to embed or display various types of attachment files within documentation pages or markdown files, enabling rich media previews or download links to enhance documentation clarity and engagement. It supports images, audio, video, and document formats, converting or resizing as needed.",
+        "limitations": "This tool does not perform OCR or content extraction from attachments, nor does it handle live streaming media. Large files may have performance limitations, and unsupported file types will return a simple download link without preview.",
+        "examples": [
+          "Render an image attachment from a URL as an embeddable HTML snippet with a max width of 500px.",
+          "Render a PDF document from base64 data as a preview thumbnail in markdown format.",
+          "Generate an audio player preview for an MP3 file attachment URL to embed in documentation."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "attachment",
+        "rendering",
+        "media",
+        "preview",
+        "embed",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"attachmentUrl\":\"https://example.com/images/logo.png\",\"fileType\":\"image/png\",\"maxWidth\":500,\"renderFormat\":\"html\",\"enablePreview\":true}",
+          "description": "Render a PNG image from URL as an HTML snippet with preview and max width 500px."
+        },
+        {
+          "inputJson": "{\"rawFileData\":\"JVBERi0xLjQKJcfs...base64encodedpdf...\",\"fileType\":\"application/pdf\",\"maxWidth\":400,\"maxHeight\":400,\"renderFormat\":\"markdown\",\"enablePreview\":true}",
+          "description": "Render a PDF from base64 string as a markdown preview thumbnail of max 400x400."
+        },
+        {
+          "inputJson": "{\"attachmentUrl\":\"https://example.com/audio/tutorial.mp3\",\"fileType\":\"audio/mpeg\",\"renderFormat\":\"html\",\"enablePreview\":true}",
+          "description": "Render an MP3 audio file from URL as an embeddable audio player in HTML."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Attachment",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderScreenshot",
+      "description": "This tool captures a screenshot of a specified webpage or user interface element. It accepts a URL or CSS selector as input, optionally allows setting capture dimensions and device emulation, and returns a high-quality screenshot image in PNG or JPEG format encoded as a base64 string for embedding in documentation or reports.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The URL of the webpage to capture the screenshot from. Required if selector is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "selector",
+          "type": "string",
+          "description": "CSS selector identifying a specific element on the webpage to capture instead of the full page. Required if url is provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "The width in pixels of the viewport or capture area. Defaults to 1280.",
+          "required": false,
+          "defaultValue": "1280"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "The height in pixels of the viewport or capture area. Defaults to 720.",
+          "required": false,
+          "defaultValue": "720"
+        },
+        {
+          "name": "deviceScaleFactor",
+          "type": "number",
+          "description": "Device pixel ratio for high resolution captures, e.g., 2 for retina displays.",
+          "required": false,
+          "defaultValue": "1"
+        },
+        {
+          "name": "fullPage",
+          "type": "boolean",
+          "description": "Whether to capture the entire scrollable page when selector is not specified. Defaults to false.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Image format of the output screenshot: png or jpeg. Defaults to png.",
+          "required": false,
+          "defaultValue": "png"
+        },
+        {
+          "name": "quality",
+          "type": "number",
+          "description": "Quality of the image from 0 to 100, applicable only for jpeg format. Defaults to 80.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the base64 encoded screenshot image string and its metadata"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically capture screenshots of webpages or specific UI elements to embed them in documentation, bug reports, or visual guides. It supports setting viewport size, high-res captures, partial element snapshots, and image format options for flexible documentation needs.",
+        "limitations": "Cannot capture screenshots of webpages that require authentication or have dynamic content that changes after load without additional scripting. Does not support video capture or interactive content snapshots.",
+        "examples": [
+          "Capture a full page screenshot of a documentation homepage in PNG format.",
+          "Capture a specific component from a webpage using a CSS selector in JPEG format with quality 75.",
+          "Capture a viewport-sized screenshot emulating a retina device for high-resolution images."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "screenshot",
+        "rendering",
+        "webpage",
+        "ui",
+        "capture",
+        "image"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://example.com/docs\",\"fullPage\":true,\"format\":\"png\"}",
+          "description": "Capture a full-page PNG screenshot of the example.com docs homepage."
+        },
+        {
+          "inputJson": "{\"url\":\"https://example.com/app\",\"selector\":\"#main-header\",\"width\":800,\"height\":200,\"format\":\"jpeg\",\"quality\":75}",
+          "description": "Capture a JPEG screenshot of the main header element on the example app webpage with custom size and quality."
+        },
+        {
+          "inputJson": "{\"url\":\"https://example.com/dashboard\",\"width\":1280,\"height\":720,\"deviceScaleFactor\":2,\"format\":\"png\"}",
+          "description": "Capture a 1280x720 viewport screenshot with retina scale factor for a dashboard page."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Screenshot",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderDashboard",
+      "description": "Renders an interactive analytics dashboard based on provided documentation usage and engagement data. Accepts structured input data including metrics, configuration options for visualization style and layout, and user preferences. Produces a fully assembled dashboard view as HTML or JSON widget output ready for embedding in documentation portals.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "metricsData",
+          "type": "object",
+          "description": "Structured analytics data object representing various documentation usage metrics and events to visualize.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "visualizationType",
+          "type": "string",
+          "description": "The style of visualization to render, e.g., 'barChart', 'lineGraph', 'heatMap', or 'summaryStats'.",
+          "required": false,
+          "defaultValue": "barChart"
+        },
+        {
+          "name": "layoutConfig",
+          "type": "object",
+          "description": "Configuration object specifying dashboard layout preferences such as widget arrangement, size, and theme.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the rendered dashboard output, e.g., 'html', 'jsonWidget'.",
+          "required": false,
+          "defaultValue": "html"
+        },
+        {
+          "name": "includeFilters",
+          "type": "boolean",
+          "description": "Whether to include interactive filters and controls to allow end-user data exploration within the dashboard.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the rendered dashboard content as a string, and metadata such as content type and generation timestamp."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate a visual analytic dashboard summarizing documentation engagement metrics, such as page views, user feedback, or search terms. Ideal for embedding within documentation portals or reporting interfaces.",
+        "limitations": "This tool does not perform raw data analytics or data cleaning; input data must be preprocessed and validated. It also does not support real-time streaming data or complex custom visualizations beyond predefined templates.",
+        "examples": [
+          "Render a bar chart dashboard of page views and user ratings as HTML for internal docs portal.",
+          "Generate a JSON widget displaying a line graph of weekly documentation search trends with interactive filters enabled.",
+          "Create a summary statistics dashboard in HTML showing documentation usage patterns with a default layout and theme."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "dashboard",
+        "analytics",
+        "rendering",
+        "visualization",
+        "reporting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"metricsData\":{\"pageViews\":[100,150,200],\"userRatings\":[4.5,4.7,4.8]},\"visualizationType\":\"barChart\",\"layoutConfig\":{\"theme\":\"light\"},\"outputFormat\":\"html\",\"includeFilters\":true}",
+          "description": "Render a bar chart dashboard with page views and user ratings metrics as an interactive HTML dashboard."
+        },
+        {
+          "inputJson": "{\"metricsData\":{\"searchTerms\":[{\"term\":\"API\",\"count\":120},{\"term\":\"authentication\",\"count\":80}]},\"visualizationType\":\"lineGraph\",\"outputFormat\":\"jsonWidget\",\"includeFilters\":false}",
+          "description": "Generate a line graph JSON widget visualizing documentation search term counts without filters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Dashboard",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderGraph",
+      "description": "Renders a visual graph from structured graph data provided as nodes and edges. Accepts input in JSON format describing graph components, processes layout and styling options, and outputs a rendered graph image or SVG suitable for embedding in documentation or reports.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "graphData",
+          "type": "object",
+          "description": "The graph data containing nodes and edges to render, structured as {nodes: [...], edges: [...]}. Each node and edge should include required properties (e.g., id, label).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "layout",
+          "type": "string",
+          "description": "The graph layout algorithm to use (e.g., 'force-directed', 'circular', 'tree').",
+          "required": false,
+          "defaultValue": "force-directed"
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "The width in pixels of the rendered graph image.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "The height in pixels of the rendered graph image.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The image format for output, such as 'svg' or 'png'.",
+          "required": false,
+          "defaultValue": "svg"
+        },
+        {
+          "name": "nodeStyle",
+          "type": "object",
+          "description": "Optional styling options for nodes, including color, shape, and size.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "edgeStyle",
+          "type": "object",
+          "description": "Optional styling options for edges, including color and width.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the rendered graph as a base64 encoded image string and the image format used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool whenever an AI needs to produce visual representations of graph data to embed in documentation or reports. It is ideal for rendering dependency graphs, organizational charts, flow diagrams, or network topologies from JSON data describing nodes and edges.",
+        "limitations": "Cannot process unstructured or incomplete graph data; limited to common graph layouts and standard styling; does not provide interactive or animated graphs.",
+        "examples": [
+          "Render a force-directed graph showing module dependencies for a software project.",
+          "Generate a hierarchical tree diagram to illustrate organization structure.",
+          "Create a circular layout graph to represent network device connections."
+        ]
+      },
+      "tags": [
+        "visualization",
+        "graph",
+        "rendering",
+        "documentation",
+        "diagram",
+        "svg",
+        "png"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"graphData\":{\"nodes\":[{\"id\":\"1\",\"label\":\"Node 1\"},{\"id\":\"2\",\"label\":\"Node 2\"}],\"edges\":[{\"from\":\"1\",\"to\":\"2\"}]},\"layout\":\"force-directed\",\"width\":800,\"height\":600,\"outputFormat\":\"svg\"}",
+          "description": "Render a simple force-directed graph with two connected nodes as SVG image."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Graph",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderDiagram",
+      "description": "Renders visual diagrams from structured diagram description inputs such as flowcharts, UML diagrams, or network graphs, producing SVG or PNG image outputs suitable for embedding in documentation or presentations.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "diagramType",
+          "type": "string",
+          "description": "Type of diagram to render (e.g., flowchart, UML, network).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "diagramData",
+          "type": "string",
+          "description": "Structured diagram description in JSON or a recognized DSL format defining nodes, edges, and styling.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Output image format, either 'svg' or 'png'. Defaults to 'svg'.",
+          "required": false,
+          "defaultValue": "svg"
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Optional width of the output diagram image in pixels.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Optional height of the output diagram image in pixels.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Optional visual theme to apply (e.g., 'light', 'dark').",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing the base64-encoded image data string of the rendered diagram and format metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate precise, professional diagrams programmatically from structured description formats during documentation creation, presentations, or technical reports. It is effective for converting diagram definitions into embeddable images directly, ensuring consistency and integration with documentation workflows.",
+        "limitations": "This tool cannot interpret unstructured natural language descriptions into diagrams or edit diagrams interactively. It requires a structured input format describing the diagram elements explicitly.",
+        "examples": [
+          "Render a UML class diagram specified in JSON to SVG for embedding in API docs.",
+          "Generate a flowchart illustrating a process workflow from a defined DSL input in PNG format for training materials.",
+          "Create a network topology diagram from a JSON description applying a dark theme for system architecture documentation."
+        ]
+      },
+      "tags": [
+        "rendering",
+        "diagram",
+        "documentation",
+        "visualization",
+        "svg",
+        "png",
+        "flowchart",
+        "uml"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"diagramType\":\"flowchart\",\"diagramData\":\"{\\\"nodes\\\":[{\\\"id\\\":\\\"start\\\",\\\"label\\\":\\\"Start\\\"},{\\\"id\\\":\\\"end\\\",\\\"label\\\":\\\"End\\\"}],\\\"edges\\\":[{\\\"from\\\":\\\"start\\\",\\\"to\\\":\\\"end\\\"}]}\",\"outputFormat\":\"svg\",\"width\":800,\"height\":600,\"theme\":\"light\"}",
+          "description": "Render a simple flowchart with a Start and End node into an 800x600 SVG using a light theme."
+        },
+        {
+          "inputJson": "{\"diagramType\":\"uml\",\"diagramData\":\"{\\\"classes\\\":[{\\\"name\\\":\\\"User\\\",\\\"attributes\\\":[\\\"id: int\\\",\\\"name: string\\\"],\\\"methods\\\":[\\\"login()\\\",\\\"logout()\\\"]}]}\"}",
+          "description": "Render a UML class diagram with one class 'User' showing attributes and methods as SVG."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Diagram",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderFile",
+      "description": "Renders a documentation file from various input formats (Markdown, HTML, plain text) into a specified output format such as PDF, HTML page, or image. It accepts the file content or path, processes formatting and styling options, and produces a rendered file output accessible via a path or as a binary buffer.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputContent",
+          "type": "string",
+          "description": "The raw content of the file to render, for example Markdown or HTML text.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFilePath",
+          "type": "string",
+          "description": "Path or URL to the source file to render. Used if inputContent is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFormat",
+          "type": "string",
+          "description": "Format of the input content. Supported values: 'markdown', 'html', 'plaintext'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired format of the rendered output file. Supported values: 'pdf', 'html', 'png'.",
+          "required": true,
+          "defaultValue": "pdf"
+        },
+        {
+          "name": "styleTheme",
+          "type": "string",
+          "description": "Optional name of the style theme or CSS to apply during rendering for formatting consistency.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents in the output (only applicable for pdf and html).",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "outputFilePath",
+          "type": "string",
+          "description": "Optional path to save the rendered output file. If empty, output is returned as a data buffer.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with output file path if saved, or binary data buffer if not, plus info about the rendering process."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert documentation files from common source formats into publishable rendered documents such as PDF reports, styled HTML pages, or static images for embedding or sharing. It supports styling and table of contents generation for better presentation.",
+        "limitations": "Does not perform content translation or editing. Does not support interactive web features beyond static HTML output. Output quality depends on correctness of input format and style definitions.",
+        "examples": [
+          "Render a Markdown README into a styled PDF report file.",
+          "Convert an HTML documentation page into a PNG image for quick preview.",
+          "Render plaintext notes into an HTML page with a custom style theme."
+        ]
+      },
+      "tags": [
+        "rendering",
+        "documentation",
+        "file",
+        "conversion",
+        "pdf",
+        "html",
+        "markdown"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputContent\":\"# Project Title\\n\\nThis is an example documentation file in Markdown.\",\"inputFormat\":\"markdown\",\"outputFormat\":\"pdf\",\"includeTableOfContents\":true,\"outputFilePath\":\"/tmp/project_documentation.pdf\"}",
+          "description": "Render a markdown content string into a PDF file with a table of contents saved to a specified path."
+        },
+        {
+          "inputJson": "{\"inputFilePath\":\"./docs/manual.html\",\"inputFormat\":\"html\",\"outputFormat\":\"png\",\"styleTheme\":\"dark\",\"outputFilePath\":\"./outputs/manual_preview.png\"}",
+          "description": "Render an HTML documentation file into a PNG image using a dark style theme."
+        },
+        {
+          "inputJson": "{\"inputContent\":\"Documentation plain text content.\",\"inputFormat\":\"plaintext\",\"outputFormat\":\"html\",\"styleTheme\":\"clean\"}",
+          "description": "Render plain text content into a clean styled HTML page returning the data buffer since no outputFilePath specified."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "File",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderVideo",
+      "description": "Renders a video from provided documentation assets such as images, text overlays, voice narration, and animations. Accepts input files and configuration options, processes and composes them into a finalized video output file ready for use in tutorials or presentations.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "imageAssets",
+          "type": "array",
+          "description": "Array of image file paths or URLs to include as frames or slides in the video.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "textOverlays",
+          "type": "array",
+          "description": "Array of text overlay objects containing text content and timing information to be rendered on video frames.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "audioNarration",
+          "type": "string",
+          "description": "File path or URL to an audio narration file to synchronize with the video content.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired video output format like mp4, mov, or avi.",
+          "required": true,
+          "defaultValue": "mp4"
+        },
+        {
+          "name": "resolution",
+          "type": "string",
+          "description": "Video resolution to output, e.g., '1920x1080' or '1280x720'.",
+          "required": false,
+          "defaultValue": "1920x1080"
+        },
+        {
+          "name": "frameRate",
+          "type": "number",
+          "description": "Frame rate of the output video, frames per second.",
+          "required": false,
+          "defaultValue": "30"
+        },
+        {
+          "name": "backgroundMusic",
+          "type": "string",
+          "description": "Optional background music file to mix with narration audio.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "animationStyles",
+          "type": "object",
+          "description": "Configuration object for applying animations or transitions between frames.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the file path or URL of the rendered video, and metadata like duration and size."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating video tutorials, explainer videos, or demo reels from static documentation assets including images, voice narration, and text overlays for enhanced multimedia documentation. It automates composition and encoding.",
+        "limitations": "Cannot create video content from scratch without assets; does not perform speech synthesis or image generation; limited to provided assets and simple animations only.",
+        "examples": [
+          "Generate a video tutorial from a set of screenshots with narrated instructions.",
+          "Render an explainer video combining animated text overlays and background music from the doc assets.",
+          "Compose a product demo video by arranging images with voice narration and output as mp4."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "video",
+        "rendering",
+        "media",
+        "tutorial",
+        "multimedia"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"imageAssets\":[\"slide1.png\",\"slide2.png\"],\"textOverlays\":[{\"text\":\"Step 1: Setup\",\"startTime\":0,\"endTime\":5}],\"audioNarration\":\"narration.mp3\",\"outputFormat\":\"mp4\",\"resolution\":\"1280x720\",\"frameRate\":24,\"backgroundMusic\":\"bgmusic.mp3\",\"animationStyles\":{\"transition\":\"fade\"}}",
+          "description": "Render a 720p mp4 video from two slides with text overlay and narration plus background music and fade transitions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Video",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderImage",
+      "description": "Renders an image with optional overlays such as captions, highlights, and annotations for embedding in documentation. Accepts image source, overlay details, and output format, processes rendering accordingly, and generates an image file or data URI for use in documents.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "imageSource",
+          "type": "string",
+          "description": "URL or base64 string of the source image to render.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width in pixels to render the output image. Maintains aspect ratio if only width is specified.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height in pixels to render the output image. Maintains aspect ratio if only height is specified.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "caption",
+          "type": "string",
+          "description": "Optional caption text to overlay at the bottom of the image.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "annotations",
+          "type": "array",
+          "description": "Array of objects defining annotations to overlay on the image (each with x,y coords, text, and optional style).",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "highlightAreas",
+          "type": "array",
+          "description": "Array of rectangular areas to highlight on the image, each with x,y,width,height, and color.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output image format, e.g., png, jpeg, or svg.",
+          "required": false,
+          "defaultValue": "png"
+        },
+        {
+          "name": "returnDataUri",
+          "type": "boolean",
+          "description": "Whether to return the rendered image as a base64 data URI instead of a binary file URL.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the rendered image output. Includes either 'imageUrl' as a string URL to the rendered image or 'dataUri' as base64 encoded string if requested, plus metadata like width, height, and format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate or modify images with documentation-focused overlays such as captions, annotations, or highlights to embed into technical docs, tutorials, or guides. It helps produce ready-to-use image files with precise rendering tailored to documentation needs.",
+        "limitations": "This tool does not perform complex image editing like retouching or advanced graphic design. It is limited to static image rendering with overlays and highlights. It also does not extract text from images or perform OCR.",
+        "examples": [
+          "Render a screenshot with a highlighted button area and caption for user guide embedding.",
+          "Generate a diagram image with multiple annotations at specified coordinates for API documentation.",
+          "Produce a resized version of a diagram in JPEG format returned as a data URI for inline embedding."
+        ]
+      },
+      "tags": [
+        "rendering",
+        "image",
+        "documentation",
+        "overlay",
+        "annotation",
+        "caption"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"imageSource\":\"https://example.com/screenshot.png\",\"width\":1024,\"caption\":\"Step 3: Click the highlighted button.\",\"highlightAreas\":[{\"x\":150,\"y\":200,\"width\":100,\"height\":50,\"color\":\"#FF0000\"}],\"outputFormat\":\"png\",\"returnDataUri\":false}",
+          "description": "Render an external screenshot image, resize to 1024px width, add a caption below, highlight a rectangular area in red, output as PNG file URL."
+        },
+        {
+          "inputJson": "{\"imageSource\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"annotations\":[{\"x\":50,\"y\":40,\"text\":\"Important\",\"style\":{\"fontSize\":14,\"color\":\"blue\"}}],\"outputFormat\":\"jpeg\",\"returnDataUri\":true}",
+          "description": "Render a base64-encoded PNG input, add a blue text annotation at coordinates, output as JPEG format and return as base64 data URI."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Image",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderBrief",
+      "description": "Renders a concise, structured brief document from provided content or data inputs. Accepts text snippets, key points, or structured data, processes to organize and summarize them into a formatted brief that highlights essential information. Outputs a document string suitable for executive summaries, reports, or briefing notes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the brief document to display at the top.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "content",
+          "type": "array",
+          "description": "An array of text paragraphs or bullet points to include in the body of the brief.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "summary",
+          "type": "string",
+          "description": "A short summary section to introduce or encapsulate the brief’s main messages.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The output format of the brief, such as 'markdown', 'html', or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeDate",
+          "type": "boolean",
+          "description": "Whether to include the current date stamp in the brief header.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum character length for the generated brief to ensure brevity.",
+          "required": false,
+          "defaultValue": "1000"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted brief as a string under 'document' key and metadata such as length and format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create clear, concise briefing documents highlighting essential information from input content or data, suitable for business, academic, or executive contexts. It helps produce ready-to-use summaries or briefs for presentation or distribution.",
+        "limitations": "This tool cannot generate original content or infer information beyond the supplied input; it solely organizes and formats provided data into a brief. It does not support complex multimedia or interactive formats.",
+        "examples": [
+          "Render a markdown brief titled 'Project Update' summarizing key progress points.",
+          "Create a plaintext brief with a summary introduction and content bullets for a meeting recap.",
+          "Generate an HTML formatted brief limited to 500 characters including the current date."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "render",
+        "brief",
+        "summary",
+        "formatting",
+        "reporting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Weekly Marketing Brief\",\"content\":[\"Increased social media engagement by 15%.\",\"Campaign leads up 10% this week.\",\"Prepared budget forecast for next quarter.\"],\"summary\":\"Key highlights of this week's marketing efforts.\",\"format\":\"markdown\",\"includeDate\":true,\"maxLength\":800}",
+          "description": "Generate a markdown brief summarizing weekly marketing highlights including date."
+        },
+        {
+          "inputJson": "{\"title\":\"Executive Summary\",\"content\":[\"Company revenue rose 8% compared to last quarter.\",\"New product launch scheduled next month.\",\"Cost optimization measures reduced expenses by 5%.\"],\"summary\":\"Quick overview of quarterly financial and operational status.\",\"format\":\"plaintext\",\"includeDate\":false,\"maxLength\":500}",
+          "description": "Create a plaintext executive summary brief without date display, concise and under 500 characters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderAudio",
+      "description": "Renders audio content into embeddable HTML audio players or generates audio files from text inputs using speech synthesis. Accepts audio file URLs, raw audio data, or text to generate speech, and outputs HTML snippets or audio files suitable for documentation embedding or playback.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputType",
+          "type": "string",
+          "description": "Type of input provided: 'audioFile', 'audioUrl', or 'textToSpeech'. Determines processing method.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputContent",
+          "type": "string",
+          "description": "The actual content to process: audio file data as base64 (for audioFile), URL string (for audioUrl), or text string (for textToSpeech).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "voice",
+          "type": "string",
+          "description": "Voice profile to use for text-to-speech synthesis (when inputType is 'textToSpeech').",
+          "required": false,
+          "defaultValue": "en-US"
+        },
+        {
+          "name": "autoplay",
+          "type": "boolean",
+          "description": "Whether the rendered audio player should start playback automatically.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "controls",
+          "type": "boolean",
+          "description": "Whether the rendered audio player should display playback controls.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "loop",
+          "type": "boolean",
+          "description": "Whether the audio playback should loop.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing an HTML string for embedding the audio player or a URL to the generated audio file if text-to-speech was used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to embed playable audio content or generate narration audio for documentation pages, tutorials, or guides from audio files, URLs, or plain text. It simplifies audio rendering and generation with customizable playback options.",
+        "limitations": "Cannot perform advanced audio editing, format conversions beyond supported types, or provide highly customized voice synthesis beyond basic parameters.",
+        "examples": [
+          "Render an HTML audio player for an audio file base64 data.",
+          "Generate narration audio from text input using speech synthesis and get embeddable HTML.",
+          "Embed an audio URL as a playable element with controls and looping enabled."
+        ]
+      },
+      "tags": [
+        "audio",
+        "rendering",
+        "documentation",
+        "text-to-speech",
+        "media",
+        "embedding"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputType\":\"audioUrl\",\"inputContent\":\"https://example.com/audio/tutorial.mp3\",\"autoplay\":false,\"controls\":true,\"loop\":false}",
+          "description": "Embed an audio player for an external MP3 file URL with controls enabled."
+        },
+        {
+          "inputJson": "{\"inputType\":\"textToSpeech\",\"inputContent\":\"Welcome to the documentation tutorial.\",\"voice\":\"en-US\",\"autoplay\":false,\"controls\":true,\"loop\":false}",
+          "description": "Generate speech audio from text and get an embeddable audio player HTML snippet."
+        },
+        {
+          "inputJson": "{\"inputType\":\"audioFile\",\"inputContent\":\"data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEA...\",\"autoplay\":true,\"controls\":false,\"loop\":true}",
+          "description": "Embed a base64-encoded audio file as an auto-playing looping audio player without controls."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Audio",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderDocument",
+      "description": "Renders a structured document from markdown or HTML input into various output formats such as PDF, HTML, or plain text. Accepts source content and formatting options, processes the content applying styles and layout, and produces a formatted document file or string ready for distribution or display.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sourceContent",
+          "type": "string",
+          "description": "The input document content in markdown or HTML format to be rendered.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sourceFormat",
+          "type": "string",
+          "description": "Format of the input content: 'markdown' or 'html'. Determines parsing strategy.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format: 'pdf', 'html', or 'text'. Specifies the rendering target format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "stylesheet",
+          "type": "string",
+          "description": "Optional CSS stylesheet or path to style file to apply during rendering for consistent formatting.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "If true and supported by outputFormat, include a generated table of contents in the rendered document.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "pageSize",
+          "type": "string",
+          "description": "Page size for formats like PDF (e.g., 'A4', 'Letter'). Defaults to 'A4' if not specified.",
+          "required": false,
+          "defaultValue": "A4"
+        },
+        {
+          "name": "orientation",
+          "type": "string",
+          "description": "Page orientation for formats like PDF: 'portrait' or 'landscape'. Defaults to 'portrait'.",
+          "required": false,
+          "defaultValue": "portrait"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the rendered document and metadata including format and optional table of contents info. The 'content' field contains the rendered output as base64 string for binary formats like PDF, or as string for HTML/text."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool to convert authored documentation in markdown or HTML into polished documents in common formats consumable by end users or for distribution, such as PDFs for offline use, styled HTML for web publication, or plain text for simple sharing. It facilitates automated rendering in documentation workflows.",
+        "limitations": "Does not perform content validation or syntax checking of markdown/html input; complex interactive features like embedding videos or scripting are not supported. Stylesheet application is limited to CSS compatible with the rendering engine.",
+        "examples": [
+          "Render markdown user guide into a styled PDF document for printing.",
+          "Convert HTML API reference with embedded styles into a clean HTML page for web hosting.",
+          "Generate plain text summary from a markdown document for quick email sharing."
+        ]
+      },
+      "tags": [
+        "rendering",
+        "documentation",
+        "markdown",
+        "html",
+        "pdf",
+        "formatting",
+        "document generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceContent\":\"# Introduction\\nThis is a sample document.\",\"sourceFormat\":\"markdown\",\"outputFormat\":\"pdf\",\"stylesheet\":\"\",\"includeTableOfContents\":true,\"pageSize\":\"A4\",\"orientation\":\"portrait\"}",
+          "description": "Render a simple markdown document into PDF with a table of contents."
+        },
+        {
+          "inputJson": "{\"sourceContent\":\"<h1>API Reference</h1><p>Details of endpoints.</p>\",\"sourceFormat\":\"html\",\"outputFormat\":\"html\",\"stylesheet\":\"body { font-family: Arial; }\",\"includeTableOfContents\":false}",
+          "description": "Render an HTML snippet into styled HTML output applying a CSS stylesheet."
+        },
+        {
+          "inputJson": "{\"sourceContent\":\"# Summary\\nList of items.\",\"sourceFormat\":\"markdown\",\"outputFormat\":\"text\",\"includeTableOfContents\":false}",
+          "description": "Convert markdown content into plain text format without table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderSummary",
+      "description": "This tool accepts a structured documentation object or markdown text and generates a concise, well-organized summary of the document's main points, headings, and key information. It extracts and condenses content to produce a readable summary suitable for quick understanding or inclusion in overview sections.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "documentContent",
+          "type": "string",
+          "description": "The full text content of the document to summarize, in plain text or markdown format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxSummaryLength",
+          "type": "number",
+          "description": "The approximate maximum number of words for the generated summary. If omitted, defaults to 150 words.",
+          "required": false,
+          "defaultValue": "150"
+        },
+        {
+          "name": "includeHeadings",
+          "type": "boolean",
+          "description": "Whether to structure the summary with document headings for clarity. Defaults to true.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language code of the document content, such as 'en' for English. Used for proper processing. Defaults to 'en'.",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a summary string that concisely represents the key points and headings of the original document."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a brief, readable summary of lengthy documentation content to help users quickly grasp essential information without reading full documents. It's ideal for creating overview snippets, executive summaries, or documentation abstracts.",
+        "limitations": "This tool cannot replace in-depth analysis or interpret implicit content; it summarizes explicit textual content only. It may not perform well on documents with highly technical jargon or non-text elements like images or code that require specialized summarization.",
+        "examples": [
+          "Summarize a long user manual into a 150-word overview.",
+          "Generate a summary of API documentation with headings preserved.",
+          "Create a concise abstract of a markdown specification document."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "summary",
+        "rendering",
+        "text-processing",
+        "markdown",
+        "overview",
+        "abstraction"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"documentContent\":\"# User Guide\\nThis guide explains how to set up the device.\\n## Installation\\nFollow these steps...\\n## Usage\\nImportant commands are...\",\"maxSummaryLength\":100,\"includeHeadings\":true,\"language\":\"en\"}",
+          "description": "Summarize a markdown user guide including headings for a concise overview."
+        },
+        {
+          "inputJson": "{\"documentContent\":\"This document provides detailed API endpoint descriptions and example requests/responses.\",\"maxSummaryLength\":150,\"includeHeadings\":false,\"language\":\"en\"}",
+          "description": "Generate a plain text summary of API documentation without headings for simplicity."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.renderReport",
+      "description": "Renders a detailed report document from structured data inputs (e.g., JSON object or array). It processes content, applies formatting templates, and outputs a fully formatted report in PDF or HTML format for distribution or printing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "reportData",
+          "type": "object",
+          "description": "Structured data representing the report content including sections, tables, charts, and text blocks.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "template",
+          "type": "string",
+          "description": "The identifier or path of the formatting template to apply for styling the report output.",
+          "required": false,
+          "defaultValue": "default"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format of the report, such as 'pdf' or 'html'.",
+          "required": true,
+          "defaultValue": "pdf"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Flag to include an automatically generated table of contents at the start of the report.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "authorName",
+          "type": "string",
+          "description": "Name of the report author to include in the report metadata and cover page if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pageSize",
+          "type": "string",
+          "description": "Page size for the report output (e.g., A4, Letter). Only applies to PDF format.",
+          "required": false,
+          "defaultValue": "A4"
+        },
+        {
+          "name": "orientation",
+          "type": "string",
+          "description": "Page orientation for the report output, either 'portrait' or 'landscape'.",
+          "required": false,
+          "defaultValue": "portrait"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a 'fileData' base64 encoded string of the generated report file, its filename, and MIME type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate formal reports from structured data for business, technical, or project documentation. It is ideal for automating production of PDF or HTML reports that require consistent formatting and optional elements like table of contents or author metadata.",
+        "limitations": "Cannot generate reports from unstructured plain text without formatting instructions. Limited to supported templates and standard page sizes/orientations. Does not include advanced data visualization beyond predefined chart embeddings.",
+        "examples": [
+          "Generate a PDF sales report from monthly sales JSON data using 'corporate' template with a table of contents.",
+          "Produce an HTML formatted project status report with author's name included and default styling.",
+          "Create a landscape-oriented A4 PDF report summarizing survey data without a table of contents."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "report",
+        "rendering",
+        "pdf",
+        "html",
+        "automation",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"reportData\":{\"title\":\"Monthly Sales Report\",\"sections\":[{\"heading\":\"Executive Summary\",\"content\":\"Sales increased by 10% compared to last month.\"},{\"heading\":\"Detailed Sales Data\",\"tables\":[{\"headers\":[\"Product\",\"Units Sold\",\"Revenue\"],\"rows\":[[\"Widget A\",100,5000],[\"Widget B\",150,7500]]}]}]},\"template\":\"corporate\",\"outputFormat\":\"pdf\",\"includeTableOfContents\":true,\"authorName\":\"Jane Doe\",\"pageSize\":\"A4\",\"orientation\":\"portrait\"}",
+          "description": "Generate a corporate-themed PDF sales report with table of contents and author name."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "render",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatQuote",
+      "description": "Formats a given quote text by applying specified styling options and including optional attribution. Accepts quote content, author, citation, and formatting preferences to produce a well-structured, styled quote string suitable for inclusion in documentation or presentations.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "quoteText",
+          "type": "string",
+          "description": "The main text content of the quote to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Name of the person who originally said or wrote the quote. Optional.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citation",
+          "type": "string",
+          "description": "Source of the quote such as book, speech, or article. Optional.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The formatting style for the quote output. Supported options: \"blockquote\", \"inline\", \"fancy\".",
+          "required": false,
+          "defaultValue": "blockquote"
+        },
+        {
+          "name": "includeAttribution",
+          "type": "boolean",
+          "description": "Whether to append author and citation information to the quote output if provided.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum allowed length for the formatted quote output. If exceeded, the quote is truncated with an ellipsis.",
+          "required": false,
+          "defaultValue": "500"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted quote string, ready for use in documentation or presentations, with the applied styles and attribution included if specified."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate properly styled and formatted quotes for documentation pages, articles, or presentations to maintain consistency and readability. Ideal for formatting quotes with optional author and citation info into HTML or markdown styled blocks or inline display.",
+        "limitations": "Cannot verify the factual accuracy of the quote or automatically fetch missing attribution. Formatting is limited to predefined styles and basic truncation; complex rich text or multimedia formatting is not supported.",
+        "examples": [
+          "Format a motivational quote with author attribution as a blockquote.",
+          "Generate an inline styled quote without author or citation.",
+          "Create a fancy styled quote including citation with length limit to 100 characters."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "quotes",
+        "documentation",
+        "styling",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"author\":\"Franklin D. Roosevelt\",\"citation\":\"Speech, 1939\",\"style\":\"blockquote\",\"includeAttribution\":true,\"maxLength\":300}",
+          "description": "Format a blockquote with author and citation included."
+        },
+        {
+          "inputJson": "{\"quoteText\":\"Simplicity is the ultimate sophistication.\",\"style\":\"inline\",\"includeAttribution\":false}",
+          "description": "Format an inline quote without attribution."
+        },
+        {
+          "inputJson": "{\"quoteText\":\"Imagination is more important than knowledge.\",\"author\":\"Albert Einstein\",\"style\":\"fancy\",\"includeAttribution\":true,\"maxLength\":50}",
+          "description": "Create a fancy styled quote truncated to 50 characters with attribution."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatReference",
+      "description": "Formats raw reference data into structured, consistent citation styles commonly used in documentation, such as APA, MLA, or Chicago. Accepts raw reference details as input and outputs a properly formatted citation string according to the selected style.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "referenceData",
+          "type": "object",
+          "description": "An object containing raw reference information such as author(s), title, publication year, publisher, journal name, volume, issue, pages, URL, etc.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The citation style to format the reference in (e.g., 'APA', 'MLA', 'Chicago').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeDOI",
+          "type": "boolean",
+          "description": "Whether to include the DOI or URL in the formatted reference if available.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language for formatting conventions, affects date and name order (e.g., 'en' for English).",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted reference string under 'formattedReference' key, ready for inclusion in documentation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert raw bibliographic data into consistent, publication-ready citation formats appropriate for technical documentation, reports, or academic referencing. It helps maintain uniformity and correctness in references across documents.",
+        "limitations": "Does not validate the completeness or factual correctness of input reference data. It supports common citation styles but may not cover every niche or custom style variation.",
+        "examples": [
+          "Format a raw journal article reference to APA style including DOI.",
+          "Convert a book reference to MLA style without including URL.",
+          "Generate a Chicago style citation from raw author and publication data."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "citations",
+        "references",
+        "bibliography",
+        "APA",
+        "MLA",
+        "Chicago"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"referenceData\":{\"author\":[\"Smith, John\"],\"title\":\"The Art of Documentation\",\"year\":2020,\"publisher\":\"Tech Press\"},\"style\":\"APA\",\"includeDOI\":true,\"language\":\"en\"}",
+          "description": "Formats a book reference in APA style including publisher info."
+        },
+        {
+          "inputJson": "{\"referenceData\":{\"author\":[\"Doe, Jane\",\"Roe, Richard\"],\"title\":\"Advances in AI\",\"journal\":\"AI Journal\",\"year\":2023,\"volume\":\"12\",\"issue\":\"2\",\"pages\":\"45-67\",\"doi\":\"10.1234/aij.2023.12.2.45\"},\"style\":\"MLA\",\"includeDOI\":false}",
+          "description": "Formats a journal article reference for MLA style excluding DOI."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatCitation",
+      "description": "Formats bibliographic citation data into specified citation styles such as APA, MLA, or Chicago. Accepts citation details as structured input, processes according to chosen style rules, and outputs a correctly formatted citation string for use in academic or professional documents.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "citationData",
+          "type": "object",
+          "description": "Structured bibliographic information including author, title, year, publisher, etc.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "The citation style to format into (e.g., 'APA', 'MLA', 'Chicago').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeUrl",
+          "type": "boolean",
+          "description": "Whether to include URL or DOI if available in the output citation.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code for citation output localization (e.g., 'en','es') if supported.",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted citation string and the style used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or converting bibliographic citations from raw source details to styled citation strings for academic papers, reports, or documentation. It is ideal for ensuring citation consistency and correctness according to popular formats like APA, MLA, or Chicago.",
+        "limitations": "Does not validate correctness of input metadata (e.g., author names, publication year). Some niche or less common citation styles or complex cases like multiple authors with equal contribution might not be fully supported.",
+        "examples": [
+          "Format a journal article citation into APA style",
+          "Convert book metadata to an MLA style citation",
+          "Add URL information in a Chicago style citation if DOI is present"
+        ]
+      },
+      "tags": [
+        "documentation",
+        "citation",
+        "formatting",
+        "bibliography",
+        "academic",
+        "reference",
+        "style"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"citationData\":{\"author\":\"Smith, John\",\"title\":\"The Study of AI\",\"year\":2021,\"publisher\":\"Tech Press\",\"type\":\"book\"},\"citationStyle\":\"APA\",\"includeUrl\":false,\"language\":\"en\"}",
+          "description": "Format a book citation in APA style without URL."
+        },
+        {
+          "inputJson": "{\"citationData\":{\"author\":\"Doe, Jane\",\"title\":\"Neural Networks Explained\",\"journal\":\"Computing Today\",\"year\":2020,\"volume\":15,\"issue\":4,\"pages\":\"45-60\",\"doi\":\"10.1234/ct2020.045\"},\"citationStyle\":\"Chicago\",\"includeUrl\":true,\"language\":\"en\"}",
+          "description": "Format a journal article citation in Chicago style including DOI as URL."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatLink",
+      "description": "Formats a given URL and display text into a properly escaped Markdown or HTML link, ensuring correct syntax and safe characters. Accepts raw URL and optional display text, and produces formatted link string suitable for documentation files or web content.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The raw URL to be formatted as a link.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "displayText",
+          "type": "string",
+          "description": "Optional display text for the link. If empty, the URL itself is used as display text.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatType",
+          "type": "string",
+          "description": "The desired output format for the link: 'markdown' or 'html'. Defaults to 'markdown'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "escapeEntities",
+          "type": "boolean",
+          "description": "Whether to escape HTML entities in URL and display text to ensure safe output. Defaults to true.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single string property 'formattedLink' with the correctly formatted and escaped link."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or updating documentation files that include hyperlinks, such as README files or HTML docs. It helps format raw URLs into properly escaped Markdown or HTML links, avoiding syntax errors or unsafe characters. Perfect for agents automating documentation preparation or enhancing text with links.",
+        "limitations": "Does not validate whether the URL is reachable or correct, does not shorten URLs, and does not generate link previews or metadata.",
+        "examples": [
+          "Format URL to Markdown link with display text",
+          "Format URL as HTML link without display text",
+          "Generate a Markdown link that escapes HTML entities in URL and text"
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "link",
+        "markdown",
+        "html",
+        "escaping"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://example.com/page?query=test&sort=asc\",\"displayText\":\"Example Page\",\"formatType\":\"markdown\",\"escapeEntities\":true}",
+          "description": "Format a complex URL with query parameters into a Markdown link with display text, escaping entities."
+        },
+        {
+          "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"\",\"formatType\":\"html\",\"escapeEntities\":false}",
+          "description": "Format a simple URL as an HTML link using the URL itself as the display text, without escaping."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatHeading",
+      "description": "Formats a text string into a styled heading suitable for markdown or HTML documentation. Accepts raw heading text and formatting options such as heading level and style type, then outputs the heading string formatted accordingly for inclusion in documentation files.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The raw text content of the heading to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "level",
+          "type": "number",
+          "description": "The heading level indicating importance (1-6), where 1 is the highest-level heading.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The style of heading format, e.g., 'markdown' for # headings, 'html' for <h> tags, or 'underline' for underlined style.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "capitalize",
+          "type": "boolean",
+          "description": "Whether to automatically capitalize the heading text.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "string",
+        "description": "A formatted heading string according to the specified style and level, ready to insert into documentation content."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or modifying documentation content programmatically and a properly formatted heading is required. Ideal for converting plain text headings to consistent markdown, HTML, or underlined headings with specified levels for clear document structure.",
+        "limitations": "This tool formats headings but does not analyze or generate heading content meaningfully, nor does it handle multi-language localization or complex inline styling.",
+        "examples": [
+          "Format the heading 'Introduction' as a markdown level 1 heading.",
+          "Create an HTML level 3 heading for the text 'Usage Notes'.",
+          "Generate an underlined heading with level 2 style for 'API Reference'."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "heading",
+        "markdown",
+        "html",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"Introduction to the Tool\",\"level\":1,\"style\":\"markdown\",\"capitalize\":true}",
+          "description": "Format a top-level markdown heading with capitalization."
+        },
+        {
+          "inputJson": "{\"text\":\"Usage Instructions\",\"level\":3,\"style\":\"html\",\"capitalize\":false}",
+          "description": "Format a level 3 HTML heading without capitalizing text."
+        },
+        {
+          "inputJson": "{\"text\":\"API Reference\",\"level\":2,\"style\":\"underline\",\"capitalize\":true}",
+          "description": "Generate a capitalized level 2 underlined heading style commonly used in plain text docs."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatParagraph",
+      "description": "This tool formats a given paragraph of text according to specified style options such as alignment, indentation, line spacing, and text casing. It accepts raw text input and formatting parameters, then returns the formatted paragraph as a string ready for insertion into documentation or reports.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The raw paragraph text to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "alignment",
+          "type": "string",
+          "description": "Text alignment within the paragraph: 'left', 'right', 'center', or 'justify'.",
+          "required": false,
+          "defaultValue": "left"
+        },
+        {
+          "name": "indentation",
+          "type": "number",
+          "description": "Number of spaces to indent the first line of the paragraph.",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "lineSpacing",
+          "type": "number",
+          "description": "Line spacing multiplier for the paragraph (e.g., 1 for single spacing, 1.5 for one and a half).",
+          "required": false,
+          "defaultValue": "1"
+        },
+        {
+          "name": "textCase",
+          "type": "string",
+          "description": "Text casing style applied to the paragraph: 'none', 'uppercase', 'lowercase', or 'titlecase'.",
+          "required": false,
+          "defaultValue": "none"
+        },
+        {
+          "name": "maxLineWidth",
+          "type": "number",
+          "description": "Maximum number of characters per line to wrap text appropriately.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted paragraph as a single string with applied styles."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to prepare or reformat paragraph text before inserting it into technical documentation, README files, or reports. It is especially useful for adjusting text layout, ensuring consistent line widths, and applying textual style conventions to improve readability and presentation quality.",
+        "limitations": "This tool does not apply advanced typography features such as font styles, colors, or markdown syntax. It also does not process embedded images or handle multi-paragraph inputs; it is strictly for formatting single paragraphs of plain text.",
+        "examples": [
+          "Format a paragraph with justified alignment, 4 space indentation, and 1.5 line spacing.",
+          "Convert the paragraph text to uppercase and wrap lines at 60 characters.",
+          "Create a left-aligned paragraph with titlecase text and no indentation."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "text",
+        "paragraph",
+        "style",
+        "layout"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"This is a sample paragraph that will be formatted by the tool to demonstrate text wrapping and alignment.\",\"alignment\":\"justify\",\"indentation\":4,\"lineSpacing\":1.5,\"textCase\":\"none\",\"maxLineWidth\":50}",
+          "description": "Format a paragraph with justified alignment, 4 space indentation, and line width wrapping at 50 characters."
+        },
+        {
+          "inputJson": "{\"text\":\"Here is another example paragraph to be converted entirely to uppercase text and wrapped at sixty characters.\",\"alignment\":\"left\",\"indentation\":0,\"lineSpacing\":1,\"textCase\":\"uppercase\",\"maxLineWidth\":60}",
+          "description": "Convert paragraph to uppercase with left alignment and wrap lines at 60 chars."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatSentence",
+      "description": "This tool formats an input sentence according to specified style options such as capitalization style, punctuation enforcement, and trimming whitespace. It accepts raw sentence text and formatting preferences, then outputs a cleaned and consistently styled sentence.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sentence",
+          "type": "string",
+          "description": "The input sentence text to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "capitalizeStyle",
+          "type": "string",
+          "description": "Specifies the capitalization style to apply. Options: 'none', 'firstLetter', 'allCaps', 'allLower'.",
+          "required": false,
+          "defaultValue": "none"
+        },
+        {
+          "name": "ensurePeriod",
+          "type": "boolean",
+          "description": "If true, ensures the sentence ends with a period '.' character. If false, end punctuation is left unchanged.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "trimWhitespace",
+          "type": "boolean",
+          "description": "If true, trims leading and trailing whitespace from the sentence.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted sentence as a string with all specified style transformations applied."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to normalize or standardize individual sentence strings in documentation or text processing workflows, ensuring consistent punctuation, capitalization, and whitespace. Useful for generating cleaner, stylistically uniform text content or polishing sentences before insertion into larger documents.",
+        "limitations": "Cannot perform complex grammatical correction or syntax analysis; only simple formatting transformations on individual sentences.",
+        "examples": [
+          "Format this sentence to start with a capital letter and end with a period.",
+          "Ensure no leading/trailing spaces in a sentence and make all letters lowercase.",
+          "Make the entire sentence uppercase without altering punctuation."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "text-processing",
+        "documentation",
+        "sentence",
+        "capitalization",
+        "punctuation",
+        "cleanup"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sentence\":\"  hello world  \",\"capitalizeStyle\":\"firstLetter\",\"ensurePeriod\":true,\"trimWhitespace\":true}",
+          "description": "Capitalize only the first letter, add a period at the end, and trim spaces."
+        },
+        {
+          "inputJson": "{\"sentence\":\"Check THIS Sentence!\",\"capitalizeStyle\":\"allLower\",\"ensurePeriod\":false,\"trimWhitespace\":true}",
+          "description": "Convert entire sentence to lowercase, keep existing punctuation, trim spaces."
+        },
+        {
+          "inputJson": "{\"sentence\":\"another example\",\"capitalizeStyle\":\"allCaps\",\"ensurePeriod\":true,\"trimWhitespace\":false}",
+          "description": "Convert entire sentence to uppercase and ensure the sentence ends with a period, preserving original whitespace."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatWord",
+      "description": "Formats a single word according to specified style options such as capitalization (e.g., uppercase, lowercase, capitalize), replacement of certain characters, or adding prefixes/suffixes. Accepts the word as input and outputs the formatted word as a string.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "word",
+          "type": "string",
+          "description": "The input word to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "The style to apply for formatting: 'uppercase', 'lowercase', 'capitalize', or 'none' for no change.",
+          "required": false,
+          "defaultValue": "none"
+        },
+        {
+          "name": "prefix",
+          "type": "string",
+          "description": "String to prepend to the word (optional).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "suffix",
+          "type": "string",
+          "description": "String to append to the word (optional).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "replaceCharacters",
+          "type": "object",
+          "description": "An object specifying character replacements, e.g. {\"-\":\"_\", \"@\":\"at\"} to replace specified characters.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted word as a string under the key 'formattedWord'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a single word in documentation needs to be programmatically adjusted for consistency, such as enforcing capitalization, adding standard prefixes or suffixes, or sanitizing characters for style or formatting reasons.",
+        "limitations": "This tool only processes single words; it does not process phrases or sentences and does not perform complex linguistic transformations or grammar checks.",
+        "examples": [
+          "Format the word 'example' to uppercase.",
+          "Capitalize the first letter of the word 'documentation'.",
+          "Replace dashes with underscores in the word 'end-to-end' and add a suffix '_v2'."
+        ]
+      },
+      "tags": [
+        "format",
+        "documentation",
+        "text-processing",
+        "word",
+        "capitalization",
+        "sanitization"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"word\":\"example\",\"formatStyle\":\"uppercase\"}",
+          "description": "Converts the word 'example' to uppercase resulting in 'EXAMPLE'."
+        },
+        {
+          "inputJson": "{\"word\":\"documentation\",\"formatStyle\":\"capitalize\"}",
+          "description": "Capitalizes the first letter of the word 'documentation' resulting in 'Documentation'."
+        },
+        {
+          "inputJson": "{\"word\":\"end-to-end\",\"replaceCharacters\":{\"-\":\"_\"},\"suffix\":\"_v2\"}",
+          "description": "Replaces dashes with underscores and appends '_v2' resulting in 'end_to_end_v2'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatText",
+      "description": "Formats given text content according to specified style guidelines such as indentation, line width, and markdown or HTML formatting. Accepts raw text input and returns the text formatted with consistent spacing, line breaks, and optionally converted to desired markup language output formats.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The raw text content to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "The style or markup language to format the text into, e.g. 'markdown', 'html', or 'plaintext'.",
+          "required": false,
+          "defaultValue": "plaintext"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum number of characters per line to wrap text appropriately.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "indentationSpaces",
+          "type": "number",
+          "description": "Number of spaces to use for indentation in formatted output.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "convertHeaders",
+          "type": "boolean",
+          "description": "Whether to convert header syntax to the target format's style (e.g., markdown headers).",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "trimTrailingWhitespace",
+          "type": "boolean",
+          "description": "Remove trailing whitespace from each line in the output.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted text as a string and the format style applied."
+      },
+      "aiAgent": {
+        "useCase": "This tool is ideal when AI agents or users need to clean up raw or unformatted text for documentation purposes, ensuring consistent styling, line wrapping, indentation, and optional conversion to markdown or HTML formatting before publishing or presenting. It helps maintain readability and professional formatting standards.",
+        "limitations": "The tool does not perform semantic editing, spelling or grammar corrections, or content rewriting. It also does not support complex document structures like tables or embedded elements beyond basic text formatting.",
+        "examples": [
+          "Format raw documentation notes into markdown with 80 character line width and 4 spaces indentation.",
+          "Convert plain text to HTML formatted paragraphs with 2 spaces indentation.",
+          "Clean up text by trimming trailing whitespace and limiting line length to 100 characters."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "text",
+        "markdown",
+        "html",
+        "styling"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"This is a sample raw text. It has inconsistent    spacing and long lines that need to be wrapped properly for documentation purposes.\",\"formatStyle\":\"markdown\",\"maxLineLength\":80,\"indentationSpaces\":4,\"convertHeaders\":true,\"trimTrailingWhitespace\":true}",
+          "description": "Format raw text into markdown with 80-char wrapping and 4 space indentation."
+        },
+        {
+          "inputJson": "{\"text\":\"Simple plain text content with header\\nHeader text\\nMore content.\",\"formatStyle\":\"html\",\"maxLineLength\":100,\"indentationSpaces\":2,\"convertHeaders\":true,\"trimTrailingWhitespace\":true}",
+          "description": "Convert text containing headers to HTML format with line wrapping and indentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatMarkdown",
+      "description": "Formats given markdown content according to specified style options such as line width, heading style, bullet style, and code block formatting. Accepts raw markdown text as input and outputs the formatted markdown text reflowed and styled for readability and consistency.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "markdownContent",
+          "type": "string",
+          "description": "Raw markdown text input to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "lineWidth",
+          "type": "number",
+          "description": "Maximum line width for reflowing text paragraphs. Lines will be wrapped at this length.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "headingStyle",
+          "type": "string",
+          "description": "Preferred style for markdown headings: 'atx' (using #) or 'setext' (underlines).",
+          "required": false,
+          "defaultValue": "atx"
+        },
+        {
+          "name": "bulletStyle",
+          "type": "string",
+          "description": "Bullet list style character: '-', '*', or '+'.",
+          "required": false,
+          "defaultValue": "-"
+        },
+        {
+          "name": "codeBlockStyle",
+          "type": "string",
+          "description": "Code block style: 'fenced' (using triple backticks) or 'indented'.",
+          "required": false,
+          "defaultValue": "fenced"
+        },
+        {
+          "name": "trimTrailingWhitespace",
+          "type": "boolean",
+          "description": "Whether to remove trailing whitespace on each line.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted markdown text under the key 'formattedMarkdown'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent receives unformatted or inconsistently formatted markdown text that needs to be standardized for readability, style consistency, or publishing. It helps in maintaining clean and professional documentation by applying consistent formatting rules automatically.",
+        "limitations": "This tool does not perform markdown syntax validation or fix semantic errors in markdown content. It cannot add missing markdown elements or correct logical structure mistakes beyond stylistic formatting.",
+        "examples": [
+          "Format this long markdown content to a 72 character line width and use setext style headings.",
+          "Convert bullet lists from * to - with fenced code blocks formatting.",
+          "Trim trailing whitespace and reformat markdown with default settings."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "markdown",
+        "text-processing",
+        "style",
+        "cleaning"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"markdownContent\":\"#Title\\nThis is a sample   markdown text with inconsistent     spacing. It has multiple lines and bullet points:\\n* item one\\n*item two\\nSome code:\\n    console.log('hello');\",\"lineWidth\":60,\"headingStyle\":\"atx\",\"bulletStyle\":\"-\",\"codeBlockStyle\":\"fenced\",\"trimTrailingWhitespace\":true}",
+          "description": "Format markdown to 60 characters max line width with atx headings, dashes for bullets, fenced code blocks, and trimming trailing whitespace."
+        },
+        {
+          "inputJson": "{\"markdownContent\":\"Heading\\n=======\\nParagraph that is quite long and should be wrapped accordingly.\n- bullet1\n- bullet2\n```\ncode block\n```\",\"lineWidth\":80,\"headingStyle\":\"setext\",\"bulletStyle\":\"*\",\"codeBlockStyle\":\"indented\",\"trimTrailingWhitespace\":false}",
+          "description": "Format markdown using setext headings, asterisks for bullets, indented code blocks, without trimming trailing whitespace."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Markdown",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatHTML",
+      "description": "Formats raw HTML code to improve readability and consistency. Accepts unformatted or minified HTML as input, applies indentation and optional beautification settings, and outputs clean, properly indented HTML code suitable for documentation or web content maintenance.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "htmlContent",
+          "type": "string",
+          "description": "The raw HTML code string that needs formatting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentSize",
+          "type": "number",
+          "description": "Number of spaces to use for indentation per level.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "Whether to use tab characters for indentation instead of spaces.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum number of characters per line before wrapping occurs. Set 0 to disable wrapping.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "preserveNewlines",
+          "type": "boolean",
+          "description": "Whether to preserve existing newlines in text nodes.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "string",
+        "description": "Formatted and indented HTML code string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to clean up or standardize raw or minified HTML code within documentation projects, improving readability and maintainability of web content or docs that embed HTML snippets.",
+        "limitations": "Does not validate HTML correctness or fix broken markup; purely formats indentation and whitespace. Complex inline scripts or styles may not be optimally formatted.",
+        "examples": [
+          "Format minified HTML snippet for clearer presentation in project documentation.",
+          "Indent raw HTML output from another tool for easier human reading and editing.",
+          "Wrap lines in HTML code blocks to fit predefined width constraints in output documents."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "html",
+        "documentation",
+        "beautify",
+        "indentation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"htmlContent\":\"<div><p>Hello,<span>world!</span></p></div>\",\"indentSize\":4,\"useTabs\":false,\"maxLineLength\":0,\"preserveNewlines\":true}",
+          "description": "Format compact HTML with 4 spaces indentation, no line wrapping, preserve newlines."
+        },
+        {
+          "inputJson": "{\"htmlContent\":\"<ul><li>Item 1</li><li>Item 2</li></ul>\",\"indentSize\":2,\"useTabs\":true,\"maxLineLength\":40,\"preserveNewlines\":true}",
+          "description": "Format HTML using tabs for indentation and wrap lines at 40 characters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "HTML",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatYAML",
+      "description": "This tool accepts a YAML string input and formats it according to specified style options such as indent size and line width, producing a consistently styled, validated YAML output string. It ensures that the YAML content is properly indented, aligned, and human-readable, suitable for maintaining clean documentation or configuration files.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "yamlString",
+          "type": "string",
+          "description": "The raw YAML content string to be formatted and validated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentSize",
+          "type": "number",
+          "description": "Number of spaces to use for indentation of nested elements.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "lineWidth",
+          "type": "number",
+          "description": "Maximum line width for folded or wrapped lines in the output YAML.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "sortKeys",
+          "type": "boolean",
+          "description": "If true, keys in mapping nodes will be sorted alphabetically to maintain order consistency.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "convertTabsToSpaces",
+          "type": "boolean",
+          "description": "If true, tabs in input will be converted to spaces before formatting.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted YAML string and any validation errors found during processing."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to cleanly format and validate YAML content for documentation, configuration files, or data serialization purposes, ensuring consistent indentation, key sorting, and line wrapping to enhance readability and standards compliance.",
+        "limitations": "This tool cannot fix YAML semantic errors beyond basic validation and does not perform YAML schema validation or transformation beyond formatting. It also cannot handle streaming YAML input.",
+        "examples": [
+          "Please reformat this YAML document with an indent size of 4 spaces and ensure keys are sorted.",
+          "Format this YAML string with default settings and report any validation errors found.",
+          "Convert tabs to spaces and format the YAML content with a line width of 100 characters."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "yaml",
+        "documentation",
+        "config",
+        "validation",
+        "indentation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"yamlString\":\"name: John\\nage: 30\\nchildren:\\n - name: Alice\\n   age: 5\\n - name: Bob\\n   age: 8\",\"indentSize\":4,\"lineWidth\":80,\"sortKeys\":true,\"convertTabsToSpaces\":true}",
+          "description": "Format a YAML string with 4-space indentation, sorted keys, and default line width."
+        },
+        {
+          "inputJson": "{\"yamlString\":\"products:\\n\\t- id: 1\\n\\t  name: \"\"Gadget\"\"\\n\\t- id: 2\\n\\t  name: \"\"Widget\"\"\",\"indentSize\":2,\"lineWidth\":60,\"sortKeys\":false,\"convertTabsToSpaces\":true}",
+          "description": "Format YAML input with tabs converted to spaces and 2-space indentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "YAML",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatDataset",
+      "description": "Formats a raw dataset into a clean, consistent, and well-structured document-ready table or report. It accepts input datasets in JSON or CSV formats, applies formatting rules such as column alignment, date and number formatting, header styling, and optional filtering, then outputs a formatted dataset as a string or structured object suitable for inclusion in documentation or reports.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "dataset",
+          "type": "string",
+          "description": "The raw dataset to format as a JSON string or CSV string.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFormat",
+          "type": "string",
+          "description": "Format of the input dataset; options are 'json' or 'csv'.",
+          "required": true,
+          "defaultValue": "json"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format: 'markdown', 'html', 'csv', or 'json'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "dateFormat",
+          "type": "string",
+          "description": "String specifying the desired date format, e.g., 'YYYY-MM-DD'. If empty, dates are unchanged.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "numberPrecision",
+          "type": "number",
+          "description": "Number of decimal places to format numeric values to. If zero or negative, no rounding applied.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "includeHeaders",
+          "type": "boolean",
+          "description": "Whether to include column headers in the formatted output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "columnsToInclude",
+          "type": "array",
+          "description": "List of column names to include in the output. If empty or omitted, all columns included.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "filterConditions",
+          "type": "object",
+          "description": "Optional key-value filter conditions to selectively include rows where the column equals the specified value.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted dataset as a string and metadata including row and column count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to transform raw datasets into a neatly formatted table or dataset for documentation, reports, or markdown pages, improving readability and presentation. Particularly useful when datasets contain inconsistent formatting, require filtering, or need conversion between common formats.",
+        "limitations": "This tool does not perform advanced data analysis, statistical summaries, or complex transformations beyond basic formatting and filtering. It also does not handle extremely large datasets efficiently in one pass.",
+        "examples": [
+          "Format a JSON dataset with dates standardized to 'YYYY-MM-DD' and output as markdown.",
+          "Filter and format a CSV dataset to include only specified columns, output as HTML table.",
+          "Convert a JSON dataset to CSV with numeric values rounded to two decimals and without headers."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "dataset",
+        "documentation",
+        "data-cleaning",
+        "report-generation",
+        "markdown",
+        "csv",
+        "json"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dataset\":\"[{\\\"name\\\":\\\"Alice\\\", \\\"date\\\":\\\"2023/01/15\\\", \\\"score\\\":95.678}]\",\"inputFormat\":\"json\",\"outputFormat\":\"markdown\",\"dateFormat\":\"YYYY-MM-DD\",\"numberPrecision\":1,\"includeHeaders\":true,\"columnsToInclude\":[],\"filterConditions\":{}}",
+          "description": "Format a JSON dataset to markdown with dates formatted to ISO style and numbers rounded to one decimal."
+        },
+        {
+          "inputJson": "{\"dataset\":\"name,date,score\\nBob,2022-12-01,88.1234\\nCarol,2022-11-03,92.8\",\"inputFormat\":\"csv\",\"outputFormat\":\"html\",\"dateFormat\":\"\",\"numberPrecision\":2,\"includeHeaders\":true,\"columnsToInclude\":[\"name\", \"score\"],\"filterConditions\":{\"score\":\">90\"}}",
+          "description": "Format a CSV dataset to HTML, include only name and score columns, and filter scores above 90."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Dataset",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatXML",
+      "description": "Formats a given XML string input with standardized indentation, line breaks, and optional encoding declaration. It accepts raw XML text and parameters to customize indentation size, character, and whether to include an XML declaration header. Outputs a well-structured, human-readable XML string.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "xmlString",
+          "type": "string",
+          "description": "The raw XML string input that needs to be formatted",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentationSize",
+          "type": "number",
+          "description": "Number of characters used per indentation level in the output XML",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "indentationChar",
+          "type": "string",
+          "description": "Character used for indentation, commonly space or tab",
+          "required": false,
+          "defaultValue": " "
+        },
+        {
+          "name": "includeXmlDeclaration",
+          "type": "boolean",
+          "description": "Whether to include the XML declaration header (e.g., <?xml version=\"1.0\" encoding=\"UTF-8\"?>) in the output",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "lineBreak",
+          "type": "string",
+          "description": "The line break character(s) to use, e.g., \\n or \\r\\n",
+          "required": false,
+          "defaultValue": "\n"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted XML string under the key 'formattedXml'"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to ensure XML documents or fragments are formatted consistently for improved readability, debugging, or documentation purposes. It helps maintain clean XML output, enforce indentation style, and optionally manage XML declaration presence. For example, when generating configuration files, documentation, or API responses that require pretty-printed XML.",
+        "limitations": "This tool does not validate the XML content for correctness or well-formedness; malformed XML input may cause formatting errors or failures. It also does not perform XML transformations or schema validation.",
+        "examples": [
+          "Format a raw XML string with 4 spaces indentation and include XML declaration.",
+          "Pretty-print XML without the XML declaration and using tabs for indentation.",
+          "Convert minimized XML into nicely indented XML with Unix line breaks."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "xml",
+        "documentation",
+        "indentation",
+        "pretty-print"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"xmlString\":\"<root><child>value</child></root>\",\"indentationSize\":4,\"indentationChar\":\" \",\"includeXmlDeclaration\":true,\"lineBreak\":\"\\n\"}",
+          "description": "Format a simple XML string with 4 spaces indentation and including the XML declaration"
+        },
+        {
+          "inputJson": "{\"xmlString\":\"<data><item>1</item><item>2</item></data>\",\"indentationSize\":1,\"indentationChar\":\"\\t\",\"includeXmlDeclaration\":false,\"lineBreak\":\"\\n\"}",
+          "description": "Format XML with single tab for indentation and no XML declaration"
+        },
+        {
+          "inputJson": "{\"xmlString\":\"<config><setting name=\\\"A\\\">true</setting></config>\",\"indentationSize\":2,\"indentationChar\":\" \",\"includeXmlDeclaration\":true,\"lineBreak\":\"\\r\\n\"}",
+          "description": "Format XML using 2 spaces indentation and Windows style line breaks, including declaration"
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "XML",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatCSV",
+      "description": "Formats raw CSV data into a clean, consistent style suitable for documentation or presentation. Takes CSV input string, applies customizable options like delimiter, quote character, header presence, trimming fields, and outputs formatted CSV string respecting specified styling rules to improve readability and consistency.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "csvInput",
+          "type": "string",
+          "description": "The raw CSV data as a string that needs formatting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "delimiter",
+          "type": "string",
+          "description": "The delimiter character separating fields in the CSV, usually a comma or semicolon.",
+          "required": false,
+          "defaultValue": ","
+        },
+        {
+          "name": "quoteChar",
+          "type": "string",
+          "description": "Character to use for quoting fields that contain delimiters or special characters.",
+          "required": false,
+          "defaultValue": "\""
+        },
+        {
+          "name": "hasHeader",
+          "type": "boolean",
+          "description": "Specifies if the input CSV string contains a header row.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "trimWhitespace",
+          "type": "boolean",
+          "description": "Whether to trim leading and trailing whitespace from each field.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "alignColumns",
+          "type": "boolean",
+          "description": "Aligns columns visually with padding spaces for documentation-friendly output (usually for display, not raw CSV).",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted CSV string and optionally a preview snippet for documentation display."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have raw or inconsistent CSV data that needs to be standardized for inclusion in technical documentation, reports, or markdown files. It helps produce neat, uniform CSVs ensuring clear presentation and compliance with documentation style guides.",
+        "limitations": "This tool formats CSV text but does not validate CSV content correctness beyond structure. It does not convert CSV to other formats or parse complex CSV with multiline fields unless properly quoted. Not a CSV parser or analyzer.",
+        "examples": [
+          "Format a CSV string with semicolon delimiters and no header.",
+          "Trim whitespace and quote all fields in a given CSV text.",
+          "Align columns with padding spaces for improved readability in markdown documents."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "csv",
+        "formatting",
+        "data-cleaning",
+        "presentation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"csvInput\":\"name , age, city\\nAlice, 30 , New York\\nBob,25,Los Angeles \",\"delimiter\":\",\",\"quoteChar\":\"\\\"\",\"hasHeader\":true,\"trimWhitespace\":true,\"alignColumns\":false}",
+          "description": "Format CSV input by trimming whitespace and outputting clean CSV text."
+        },
+        {
+          "inputJson": "{\"csvInput\":\"id;name;value\\n1;foo;bar\\n2;baz;qux\",\"delimiter\":\";\",\"quoteChar\":\"'\",\"hasHeader\":true,\"trimWhitespace\":false,\"alignColumns\":true}",
+          "description": "Format CSV with semicolon delimiter, single quotes for fields, and align columns for better readability."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "CSV",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatJSON",
+      "description": "Formats a raw JSON string or object into a readable, properly indented and optionally styled JSON string for documentation purposes. Accepts JSON input and returns a well-formatted JSON text output with configurable indentation and optional key sorting.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "jsonInput",
+          "type": "string",
+          "description": "Raw JSON string or serialized JSON data to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentationSpaces",
+          "type": "number",
+          "description": "Number of spaces used for indentation of nested structures in the output. Typical values are 2 or 4.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "sortKeys",
+          "type": "boolean",
+          "description": "If true, keys in objects will be sorted alphabetically in the output. If false, original key order is preserved.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "includeTrailingComma",
+          "type": "boolean",
+          "description": "If true, includes trailing commas in objects and arrays for syntax easing in some documentation styles.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted JSON string under 'formattedJson' key."
+      },
+      "aiAgent": {
+        "useCase": "Whenever an AI agent needs to output JSON content inside documentation or reports for readability and clarity, this tool formats raw or serialized JSON strings into an easy-to-read format, optionally sorting keys for consistency and setting indentation for style conformity. It is ideal before inserting JSON data examples or API responses in markdown or docs.",
+        "limitations": "This tool only formats JSON text; it does not validate JSON correctness beyond parsing nor convert other data formats to JSON. It cannot prettify JSON with comments or non-standard JSON syntax variants.",
+        "examples": [
+          "Format a minified JSON string with 4 spaces indentation for a developer documentation page.",
+          "Sort object keys alphabetically and format JSON examples to improve consistency across API docs.",
+          "Generate a human-readable JSON string example to include in markdown with 2 spaces indentation."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "json",
+        "documentation",
+        "pretty-print",
+        "code sample",
+        "api docs"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"jsonInput\":\"{\\\"name\\\":\\\"John\\\",\\\"age\\\":30,\\\"cars\\\":[\\\"Ford\\\",\\\"BMW\\\"]}\",\"indentationSpaces\":4,\"sortKeys\":false,\"includeTrailingComma\":false}",
+          "description": "Format a basic JSON string with 4 spaces indentation preserving key order."
+        },
+        {
+          "inputJson": "{\"jsonInput\":\"{\\\"b\\\":2,\\\"a\\\":1}\",\"indentationSpaces\":2,\"sortKeys\":true,\"includeTrailingComma\":false}",
+          "description": "Format JSON with keys sorted alphabetically and 2 spaces indentation."
+        },
+        {
+          "inputJson": "{\"jsonInput\":\"{\\\"key1\\\":\\\"value1\\\",\\\"key2\\\":[1,2,3]}\",\"indentationSpaces\":2,\"sortKeys\":false,\"includeTrailingComma\":true}",
+          "description": "Format JSON with trailing commas included for docs requiring syntactic commas."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "JSON",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatTest",
+      "description": "Formats and standardizes test code snippets or test case descriptions into a consistent, readable style according to specified formatting rules. Accepts raw test code or test description strings and outputs them formatted for improved readability and maintainability in documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "testCode",
+          "type": "string",
+          "description": "Raw test code snippet or test case description to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language of the test code (e.g., 'JavaScript', 'Python') to apply appropriate language-specific formatting rules.",
+          "required": true,
+          "defaultValue": "JavaScript"
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "The code style guide or formatting style to follow (e.g., 'Prettier', 'PEP8', 'Google'). Defines conventions like indentation and brace style.",
+          "required": false,
+          "defaultValue": "Prettier"
+        },
+        {
+          "name": "tabWidth",
+          "type": "number",
+          "description": "Number of spaces per indentation level used in formatting the test code.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "Whether to use tabs for indentation instead of spaces.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum line length after which the formatter wraps test code lines for better readability.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted test code as a string, and optionally a report of formatting applied or errors encountered."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when integrating or maintaining technical documentation that includes test case code snippets. It standardizes formatting to enhance clarity, consistency, and professional appearance of test examples across documentation systems.",
+        "limitations": "This tool does not execute or validate the correctness of test code logic; it only formats the code string according to style rules. It may not support every edge language syntax variation or esoteric formatting style.",
+        "examples": [
+          "Format a JavaScript test case snippet to conform to Prettier style with 2 spaces indentation.",
+          "Format Python test code snippet according to PEP8 style with tabs for indentation.",
+          "Reformat a raw test description string to a neatly wrapped paragraph respecting max line length."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "test code",
+        "code style",
+        "programming languages",
+        "code snippets",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"testCode\":\"describe('sum function', () => {it('adds two numbers', () => {expect(sum(1,2)).toBe(3);});});\",\"language\":\"JavaScript\",\"styleGuide\":\"Prettier\",\"tabWidth\":2,\"useTabs\":false,\"maxLineLength\":80}",
+          "description": "Format JavaScript test code snippet to Prettier style with 2-space indentation."
+        },
+        {
+          "inputJson": "{\"testCode\":\"def test_addition():\\n    assert add(2, 3) == 5\",\"language\":\"Python\",\"styleGuide\":\"PEP8\",\"tabWidth\":4,\"useTabs\":true,\"maxLineLength\":79}",
+          "description": "Format Python test function according to PEP8 with tabs for indentation and line length 79."
+        },
+        {
+          "inputJson": "{\"testCode\":\"Test case: verify login failure when password is incorrect.\",\"language\":\"text\",\"styleGuide\":\"\",\"tabWidth\":2,\"useTabs\":false,\"maxLineLength\":60}",
+          "description": "Format a plain test case description string wrapping text at 60 characters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Test",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatEndpoint",
+      "description": "This tool accepts raw API endpoint details, such as HTTP method, path, parameters, request and response schemas, and documentation comments. It processes these inputs to generate well-structured, readable, and standardized endpoint documentation blocks suitable for inclusion in API reference docs or markdown files. Output is formatted endpoint documentation string.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "httpMethod",
+          "type": "string",
+          "description": "HTTP method of the endpoint (e.g., GET, POST).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "endpointPath",
+          "type": "string",
+          "description": "URL path of the API endpoint (e.g., /users/{id}).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Brief description of what this endpoint does.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "queryParameters",
+          "type": "array",
+          "description": "List of query parameters with details (name, type, required, description).",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "pathParameters",
+          "type": "array",
+          "description": "List of path parameters with details (name, type, description).",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "requestBodySchema",
+          "type": "object",
+          "description": "JSON schema or object describing the request body shape.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "responseBodySchema",
+          "type": "object",
+          "description": "JSON schema or object describing the response body.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tags",
+          "type": "array",
+          "description": "Tags or groups this endpoint belongs to, for documentation categorization.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "deprecated",
+          "type": "boolean",
+          "description": "If true, marks this endpoint as deprecated in the documentation.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a formatted string representation of the endpoint's documentation block, compliant with typical API doc standards (e.g., OpenAPI or REST docs). Includes all input details formatted clearly for developer consumption."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or updating API documentation from raw endpoint definitions to produce clear, standardized and developer-friendly documentation blocks suitable for markdown files, API reference sites, or code comment generation. It helps maintain consistent formatting and completeness across API docs.",
+        "limitations": "This tool does not validate endpoint schemas for correctness, nor does it generate example payloads or handle automated testing. It only formats provided information into documentation text.",
+        "examples": [
+          "Generate formatted documentation for a GET /users/{id} endpoint including path and query parameters.",
+          "Create deprecated notice and documentation for a POST /orders endpoint with requestBody and responseBody schemas.",
+          "Format endpoint documentation with tags and detailed descriptions for multi-parameter endpoints."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "API",
+        "endpoint",
+        "formatting",
+        "developer-docs",
+        "REST",
+        "OpenAPI"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"httpMethod\":\"GET\",\"endpointPath\":\"/users/{id}\",\"description\":\"Retrieve user details by user ID.\",\"queryParameters\":[{\"name\":\"verbose\",\"type\":\"boolean\",\"required\":false,\"description\":\"Include detailed info\"}],\"pathParameters\":[{\"name\":\"id\",\"type\":\"string\",\"description\":\"ID of the user\"}],\"responseBodySchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}}},\"tags\":[\"Users\",\"Read\"],\"deprecated\":false}",
+          "description": "Format documentation for a GET endpoint retrieving user details with path and query parameters."
+        },
+        {
+          "inputJson": "{\"httpMethod\":\"POST\",\"endpointPath\":\"/orders\",\"description\":\"Create a new order.\",\"requestBodySchema\":{\"type\":\"object\",\"properties\":{\"userId\":{\"type\":\"string\"},\"items\":{\"type\":\"array\",\"items\":{\"type\":\"string\"}}}},\"responseBodySchema\":{\"type\":\"object\",\"properties\":{\"orderId\":{\"type\":\"string\"},\"status\":{\"type\":\"string\"}}},\"tags\":[\"Orders\",\"Create\"],\"deprecated\":false}",
+          "description": "Format documentation for a POST endpoint to create an order with request and response body schemas."
+        },
+        {
+          "inputJson": "{\"httpMethod\":\"DELETE\",\"endpointPath\":\"/products/{productId}\",\"description\":\"Remove a product by ID.\",\"pathParameters\":[{\"name\":\"productId\",\"type\":\"string\",\"description\":\"ID of the product to delete\"}],\"responseBodySchema\":{\"type\":\"object\",\"properties\":{\"success\":{\"type\":\"boolean\"}}},\"tags\":[\"Products\",\"Delete\"],\"deprecated\":true}",
+          "description": "Format deprecated DELETE endpoint documentation including path parameter and response schema."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Endpoint",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatMigration",
+      "description": "Formats a database migration script or file content into a consistent, readable style according to predefined coding standards. Accepts raw migration code as input and outputs the formatted migration script, ensuring proper indentation, keyword capitalization, and spacing for supported migration languages like SQL or popular ORM migration scripts.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "migrationCode",
+          "type": "string",
+          "description": "The raw migration script or code content to format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The migration script language or framework (e.g., \"sql\", \"knex\", \"typeorm\"). Determines formatting rules.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentation",
+          "type": "string",
+          "description": "The string used for indentation, e.g., two spaces \"  \", a tab \"\\t\".",
+          "required": false,
+          "defaultValue": "  "
+        },
+        {
+          "name": "capitalizeKeywords",
+          "type": "boolean",
+          "description": "Whether to capitalize SQL or migration keywords for readability.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "lineWidth",
+          "type": "number",
+          "description": "Maximum line length before wrapping, if applicable; 0 means no wrapping.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted migration script as a string under the 'formattedCode' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to standardize the formatting of migration scripts to improve readability and maintain coding style consistency in documentation or codebases. It is especially useful for preparing migration files before commit or review.",
+        "limitations": "This tool does not validate the correctness or execution of the migration code; it only formats the text. Support is limited to common migration languages specified; unknown dialects may result in minimal reformatting.",
+        "examples": [
+          "Format a raw SQL migration script to follow project style guidelines.",
+          "Standardize Knex.js migration files indentation and keyword casing.",
+          "Reformat TypeORM migration files to a consistent style before documentation inclusion."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "migration",
+        "database",
+        "code-style",
+        "SQL",
+        "ORM"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"migrationCode\":\"create table users(id int primary key, name varchar(255));\",\"language\":\"sql\",\"indentation\":\"  \",\"capitalizeKeywords\":true,\"lineWidth\":80}",
+          "description": "Format a basic SQL migration script with two-space indentation and capitalized keywords."
+        },
+        {
+          "inputJson": "{\"migrationCode\":\"exports.up = function(knex) {return knex.schema.createTable('users', function(t) {t.increments('id'); t.string('name');});};\",\"language\":\"knex\",\"indentation\":\"\\t\",\"capitalizeKeywords\":false,\"lineWidth\":0}",
+          "description": "Format a Knex.js migration file with tab indentation and no keyword capitalization."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Migration",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatTable",
+      "description": "Formats a raw data table provided as an array of rows into a styled, well-aligned markdown, HTML, or plain text table string. Accepts an array of arrays or array of objects as input, applies column alignment and header formatting, and outputs a formatted table string ready for documentation inclusion.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "The table data to format, as an array of arrays (rows) or array of objects (rows with column keys).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Desired output format: 'markdown', 'html', or 'plainText'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeHeaders",
+          "type": "boolean",
+          "description": "Whether to format the first row or keys as headers and apply header styling.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "columnAlignments",
+          "type": "object",
+          "description": "Optional object specifying alignment per column (e.g., {0: 'left', 1: 'center'}). Values can be 'left', 'center', or 'right'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tableClass",
+          "type": "string",
+          "description": "CSS class name to apply to the table (only for html format).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted table string under the key 'formattedTable'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert raw tabular data into a nicely formatted table for inclusion in documentation or reports, supporting markdown, HTML, or plain text formats. It standardizes table appearance and alignment for clarity and professional presentation.",
+        "limitations": "This tool does not parse or validate the input data beyond basic structure checks. It does not support advanced table features such as nested tables, cell merging, or large dataset pagination.",
+        "examples": [
+          "Format a JSON array of objects into a markdown table with header alignment.",
+          "Convert a CSV parsed array of arrays into an HTML table with CSS classes.",
+          "Create a plain text aligned table from raw data for console documentation."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "table",
+        "markdown",
+        "html",
+        "plainText",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"Name\":\"Alice\",\"Age\":30,\"Role\":\"Engineer\"},{\"Name\":\"Bob\",\"Age\":25,\"Role\":\"Designer\"}],\"format\":\"markdown\",\"includeHeaders\":true}",
+          "description": "Format an array of objects as a markdown table with headers."
+        },
+        {
+          "inputJson": "{\"data\":[[\"Name\",\"Age\",\"Role\"],[\"Alice\",30,\"Engineer\"],[\"Bob\",25,\"Designer\"]],\"format\":\"html\",\"includeHeaders\":true,\"tableClass\":\"doc-table\"}",
+          "description": "Format a 2D array as an HTML table with a CSS class and headers."
+        },
+        {
+          "inputJson": "{\"data\":[[\"Name\",\"Age\",\"Role\"],[\"Alice\",30,\"Engineer\"],[\"Bob\",25,\"Designer\"]],\"format\":\"plainText\",\"includeHeaders\":true,\"columnAlignments\":{\"0\":\"left\",\"1\":\"center\",\"2\":\"right\"}}",
+          "description": "Format a 2D array as an aligned plain text table."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Table",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatSchema",
+      "description": "Formats a given JSON Schema or similar schema definition into a readable, standardized, and documented string format. Accepts schema input as a JSON string or object, applies optional formatting styles, and outputs a formatted schema documentation string for use in technical docs or code comments.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "schemaInput",
+          "type": "object",
+          "description": "The schema object or JSON string representing the schema to format. Must be a valid JSON Schema or similar structured schema.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputType",
+          "type": "string",
+          "description": "The format of schemaInput, either 'json' if a string or 'object' if a parsed object.",
+          "required": false,
+          "defaultValue": "object"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Formatting style to apply, such as 'markdown', 'yaml', or 'json'. Determines output representation.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeDescriptions",
+          "type": "boolean",
+          "description": "Whether to include field/property descriptions in the output if available.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "indentationSpaces",
+          "type": "number",
+          "description": "Number of spaces to use for indentation in the output, applicable for JSON or YAML styles.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "highlightTypes",
+          "type": "boolean",
+          "description": "Whether to highlight or emphasize data types in the formatted output for readability.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted schema string and metadata about the formatting."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert raw schema definitions into human-readable and styled documentation formats for technical documents, API docs, or developer guides. It helps create consistent, clear schema representations from structured definitions, improving documentation quality and accessibility.",
+        "limitations": "Does not validate the schema's semantic correctness beyond basic JSON compliance; does not generate schema from unstructured data; formatting styles are limited to known patterns (markdown, yaml, json); very large schemas may result in large output strings that require additional handling.",
+        "examples": [
+          "Format the schema object of an API request body into markdown for documentation.",
+          "Convert a JSON schema string into YAML formatted schema documentation with descriptions included.",
+          "Generate a minimized JSON-formatted schema output highlighting types for inline code comments."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "schema",
+        "formatting",
+        "json-schema",
+        "markdown",
+        "yaml",
+        "developer-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"schemaInput\":{\"title\":\"User\",\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\",\"description\":\"Unique identifier\"},\"age\":{\"type\":\"integer\",\"description\":\"Age in years\"}}},\"style\":\"markdown\",\"includeDescriptions\":true}",
+          "description": "Format an object schema into markdown including descriptions."
+        },
+        {
+          "inputJson": "{\"schemaInput\":\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"name\\\":{\\\"type\\\":\\\"string\\\"}}}\",\"inputType\":\"json\",\"style\":\"yaml\",\"includeDescriptions\":false}",
+          "description": "Convert a JSON string schema to YAML without descriptions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Schema",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatQuery",
+      "description": "Formats a database or API query string to improve readability and maintain consistent style in documentation. Accepts raw query strings (e.g., SQL, GraphQL) and applies syntax-aware indentation, line breaks, and keyword casing to produce a clean, standardized formatted query for inclusion in technical docs and code comments.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "queryString",
+          "type": "string",
+          "description": "The raw query string to be formatted, e.g., SQL or GraphQL query.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "queryLanguage",
+          "type": "string",
+          "description": "The language of the query (e.g., 'SQL', 'GraphQL') to guide formatting rules.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywordCase",
+          "type": "string",
+          "description": "Preferred casing for keywords: 'upper', 'lower', or 'capitalize'.",
+          "required": false,
+          "defaultValue": "upper"
+        },
+        {
+          "name": "indentationSpaces",
+          "type": "number",
+          "description": "Number of spaces to use for indentation levels in the formatted output.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "inlineArrays",
+          "type": "boolean",
+          "description": "Whether to format array or list parameters inline or expanded on multiple lines.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object with the formatted query string and metadata about the format."
+      },
+      "aiAgent": {
+        "useCase": "Use when generating or updating technical documentation involving database or API queries to ensure queries are consistently and cleanly formatted for readability and professionalism. Ideal for inclusion in docs that will be read by developers or analysts.",
+        "limitations": "Does not execute or validate query correctness; focuses solely on formatting style. May not support extremely obscure or proprietary query languages outside common types like SQL or GraphQL.",
+        "examples": [
+          "Format a raw SQL query string to consistent style with uppercase keywords and 4-space indentation.",
+          "Format a GraphQL query received from an API example, converting keywords to lowercase and adding line breaks for clarity.",
+          "Format a complex SQL query that includes arrays, choosing whether to inline array elements or expand depending on readability preferences."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "query",
+        "sql",
+        "graphql",
+        "code-style"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"queryString\":\"select id,name,email from users where status='active' order by name desc\",\"queryLanguage\":\"SQL\",\"keywordCase\":\"upper\",\"indentationSpaces\":4,\"inlineArrays\":true}",
+          "description": "Format an SQL SELECT query with uppercase keywords and 4 spaces indentation."
+        },
+        {
+          "inputJson": "{\"queryString\":\"{ user(id: \\\"123\\\") { name email posts(limit: 3) { title } } }\",\"queryLanguage\":\"GraphQL\",\"keywordCase\":\"lower\",\"indentationSpaces\":2,\"inlineArrays\":false}",
+          "description": "Format a GraphQL query with lowercase keywords and multiline arrays for clarity."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Query",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatAPI",
+      "description": "Formats raw API specification input (in OpenAPI, Swagger, or similar JSON/YAML formats) into a clean, readable, standardized Markdown or HTML documentation output. Supports customizable templates, syntax highlighting, and versioning info. Produces formatted API docs suitable for developer consumption or publishing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "apiSpec",
+          "type": "string",
+          "description": "Raw API specification content in JSON or YAML string format to be formatted into documentation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFormat",
+          "type": "string",
+          "description": "Format of the input API specification, e.g. 'openapi', 'swagger', or 'raml'.",
+          "required": true,
+          "defaultValue": "openapi"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format for the formatted documentation, e.g. 'markdown' or 'html'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include request and response examples in the formatted output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Optional color or style theme for syntax highlighting in the documentation; applies only to HTML output.",
+          "required": false,
+          "defaultValue": "default"
+        },
+        {
+          "name": "versionInfo",
+          "type": "string",
+          "description": "Optional version string to annotate the API documentation header.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted API documentation as a single string under 'formattedDoc', and metadata such as the output format used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have an API specification in a standard format like OpenAPI or Swagger and need to generate clean, readable, and standardized documentation suitable for developers or publishing portals. It automates transforming raw API specs into human-friendly docs with consistent style.",
+        "limitations": "This tool does not validate the correctness of the API specification itself; it only formats it. It cannot generate docs from incomplete or non-standard specs. Complex custom templates beyond the default are not supported.",
+        "examples": [
+          "Format an OpenAPI JSON spec into markdown for developer documentation.",
+          "Convert a Swagger YAML API spec into styled HTML documentation with examples.",
+          "Generate a versioned markdown API doc from a given OpenAPI spec string."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "api",
+        "formatting",
+        "developer-docs",
+        "openapi",
+        "swagger",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"apiSpec\":\"{\\\"openapi\\\":\\\"3.0.0\\\",\\\"info\\\":{\\\"title\\\":\\\"Pet Store API\\\",\\\"version\\\":\\\"1.0\\\"},\\\"paths\\\":{\\\"/pets\\\":{\\\"get\\\":{\\\"summary\\\":\\\"List all pets\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"An array of pets\\\"}}}}}}}\",\"inputFormat\":\"openapi\",\"outputFormat\":\"markdown\",\"includeExamples\":true,\"theme\":\"\",\"versionInfo\":\"v1.0\"}",
+          "description": "Format a basic OpenAPI JSON string into Markdown documentation including version info."
+        },
+        {
+          "inputJson": "{\"apiSpec\":\"openapi: 3.0.0\\ninfo:\\n  title: Example API\\n  version: '2.0'\\npaths:\\n  /users:\\n    get:\\n      summary: Get user list\\n      responses:\\n        '200':\\n          description: OK\",\"inputFormat\":\"openapi\",\"outputFormat\":\"html\",\"includeExamples\":false,\"theme\":\"dark\",\"versionInfo\":\"2.0\"}",
+          "description": "Format a YAML OpenAPI spec into dark-themed HTML without examples, specifying version."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "API",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatModule",
+      "description": "Formats code modules by parsing their source code to apply consistent indentation, spacing, and style conventions. Accepts source code as input and produces formatted code output matching specified style guidelines, improving readability and maintainability.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sourceCode",
+          "type": "string",
+          "description": "The raw source code of the module to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language of the module (e.g., 'javascript', 'python'). Determines formatting rules.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "Code style guide to follow, such as 'Google', 'Airbnb', or 'PEP8'.",
+          "required": false,
+          "defaultValue": "\"default\""
+        },
+        {
+          "name": "tabWidth",
+          "type": "number",
+          "description": "Number of spaces per indentation level.",
+          "required": false,
+          "defaultValue": "4"
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "Whether to use tabs for indentation instead of spaces.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "trimTrailingWhitespace",
+          "type": "boolean",
+          "description": "If true, removes trailing whitespace from lines.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "insertFinalNewline",
+          "type": "boolean",
+          "description": "If true, ensures the file ends with a newline character.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted source code as a string under 'formattedCode' and optionally a list of formatting warnings."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to standardize and improve the formatting of code modules to adhere to style guides for better readability, maintainability, or preparing code for documentation extraction. It is helpful when integrating code from multiple sources or before creating code documentation.",
+        "limitations": "Does not perform syntax correction or linting beyond formatting; does not refactor code or fix logical errors. Supports only recognized programming languages and predefined style guides.",
+        "examples": [
+          "Format a JavaScript module source code according to Airbnb style guide.",
+          "Convert Python module code to comply with PEP8 indentation and whitespace rules.",
+          "Format a TypeScript module enforcing 2-space indentation and trimming trailing whitespace."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "code",
+        "documentation-tools",
+        "module",
+        "style",
+        "source-code"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceCode\":\"function test( ) {console.log('hello')}\",\"language\":\"javascript\",\"styleGuide\":\"Airbnb\",\"tabWidth\":2,\"useTabs\":false,\"trimTrailingWhitespace\":true,\"insertFinalNewline\":true}",
+          "description": "Format a JavaScript module source code according to Airbnb style guide with 2 spaces indentation."
+        },
+        {
+          "inputJson": "{\"sourceCode\":\"def foo():\\n    print( 'bar' )\",\"language\":\"python\",\"styleGuide\":\"PEP8\",\"tabWidth\":4,\"useTabs\":false,\"trimTrailingWhitespace\":true,\"insertFinalNewline\":true}",
+          "description": "Format a Python module using PEP8 style guide with 4 spaces indentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Module",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatComponent",
+      "description": "Formats code components such as React, Vue, or Angular components to standardized style guidelines. Accepts component source code as input, applies formatting based on specified style presets or custom rules, and returns the formatted code string for improved readability and maintainability.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sourceCode",
+          "type": "string",
+          "description": "The source code of the component to be formatted, accepts code in frameworks like React, Vue, Angular.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "framework",
+          "type": "string",
+          "description": "The framework or library of the component source code, e.g., 'react', 'vue', 'angular'.",
+          "required": false,
+          "defaultValue": "react"
+        },
+        {
+          "name": "stylePreset",
+          "type": "string",
+          "description": "The name of the style preset to apply for formatting, such as 'prettier', 'eslint', or a custom style.",
+          "required": false,
+          "defaultValue": "prettier"
+        },
+        {
+          "name": "customRules",
+          "type": "object",
+          "description": "An object defining any custom formatting rules to override or supplement the selected style preset.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "Whether to use tabs for indentation instead of spaces.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "tabWidth",
+          "type": "number",
+          "description": "The number of spaces per indentation level if spaces are used instead of tabs.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "semi",
+          "type": "boolean",
+          "description": "Whether to add semicolons at the ends of statements.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted component code string, optionally with a formatting report or error details if formatting failed."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to cleanly format source code of UI components in popular frameworks to improve code consistency and readability before committing or documentation updates. It supports multiple frameworks and styling presets with flexibility for custom rules.",
+        "limitations": "This tool focuses on formatting code only; it cannot fix logical errors, refactor code, or convert between frameworks.",
+        "examples": [
+          "Format a React component source code string using Prettier rules.",
+          "Format a Vue component with custom indentation and no semicolons.",
+          "Apply ESLint style preset to an Angular component source."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "code",
+        "component",
+        "documentation",
+        "UI-framework",
+        "style",
+        "prettier"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceCode\":\"function Button(){return <button>Click</button>;}\",\"framework\":\"react\",\"stylePreset\":\"prettier\",\"useTabs\":false,\"tabWidth\":2,\"semi\":true}",
+          "description": "Format a simple React button component with Prettier style, 2 spaces indent, with semicolons."
+        },
+        {
+          "inputJson": "{\"sourceCode\":\"<template><div>{{ msg }}</div></template><script>export default {data(){return {msg:'hello'};}}</script>\",\"framework\":\"vue\",\"stylePreset\":\"prettier\",\"useTabs\":true,\"semi\":false}",
+          "description": "Format a Vue single-file component using tabs for indent, no semicolons."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Component",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatFunction",
+      "description": "Formats a given source code function by applying consistent indentation, spacing, and optionally adding or updating its documentation comment. Accepts a function code snippet and formatting preferences, returning the neatly formatted function code as output.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "functionCode",
+          "type": "string",
+          "description": "The source code of the function to be formatted, including its signature and body.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentationSize",
+          "type": "number",
+          "description": "Number of spaces used for indentation in the formatted function. Defaults to 4.",
+          "required": false,
+          "defaultValue": "4"
+        },
+        {
+          "name": "useTabs",
+          "type": "boolean",
+          "description": "Whether to use tabs instead of spaces for indentation.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "addOrUpdateDoc",
+          "type": "boolean",
+          "description": "If true, the tool will add or update the function's documentation comment above its definition.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "docStyle",
+          "type": "string",
+          "description": "The style of documentation comment to use, for example 'JSDoc' or 'Google'. Only used if addOrUpdateDoc is true.",
+          "required": false,
+          "defaultValue": "JSDoc"
+        }
+      ],
+      "returns": {
+        "type": "string",
+        "description": "The formatted function source code, with adjusted indentation, spacing, and optionally updated documentation comment."
+      },
+      "aiAgent": {
+        "useCase": "This tool is useful when an AI agent is tasked with maintaining or generating code documentation; it ensures function code is consistently formatted and optionally adds or refreshes documentation comments to improve readability and maintainability. For example, after generating a function, an agent can standardize its layout and annotate it according to project style guidelines.",
+        "limitations": "This tool only processes single function snippets as input and does not handle full source files or multiple function blocks. It cannot perform semantic code analysis or fix logical errors within the function itself. It also assumes input code is syntactically valid.",
+        "examples": [
+          "Format a raw JavaScript function with 2-space indentation and add a JSDoc comment.",
+          "Standardize a Python function string using tabs for indentation without adding documentation.",
+          "Reformat a given Java method string with 4-space indentation, updating Google-style documentation comment."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "code",
+        "function",
+        "programming",
+        "style",
+        "formatter"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"functionCode\":\"function sum(a, b) {return a+b;}\",\"indentationSize\":2,\"useTabs\":false,\"addOrUpdateDoc\":true,\"docStyle\":\"JSDoc\"}",
+          "description": "JavaScript function formatted with 2 spaces indentation and JSDoc comment added."
+        },
+        {
+          "inputJson": "{\"functionCode\":\"def add(a,b):\\nreturn a+b\",\"indentationSize\":4,\"useTabs\":true,\"addOrUpdateDoc\":false,\"docStyle\":\"\"}",
+          "description": "Python function formatted using tabs for indentation without adding documentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Function",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatReadme",
+      "description": "Formats a given README.md content string by applying consistent markdown styling, fixing common formatting issues, and optionally injecting standardized sections. Accepts raw markdown text input, processes it for readability and style consistency, then outputs the formatted markdown string ready for display or publishing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "markdownContent",
+          "type": "string",
+          "description": "The raw README markdown text content to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "fixHeadings",
+          "type": "boolean",
+          "description": "If true, corrects and standardizes heading syntax and levels.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "fixListIndentation",
+          "type": "boolean",
+          "description": "If true, ensures consistent indentation and bullet styles in lists.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "injectStandardSections",
+          "type": "array",
+          "description": "Names of common README sections (e.g., ['Contributing', 'License']) to ensure are present and properly formatted.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum line length for wrapping text in paragraphs; set 0 for no wrapping.",
+          "required": false,
+          "defaultValue": "80"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted markdown text and a summary of changes made."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to clean up or standardize README.md files in software projects to ensure consistent markdown styling, fix common formatting problems, and add missing conventional documentation sections before publishing or sharing on repositories like GitHub.",
+        "limitations": "Does not perform content validation or spell checking. Cannot interpret or rewrite content semantics. Limited to formatting markdown syntax only.",
+        "examples": [
+          "Format raw README markdown text input to produce cleaned and well-structured output.",
+          "Inject standard sections like 'Contributing' and 'License' if missing and format all headings properly.",
+          "Wrap paragraph text at a specified line length without breaking code blocks or tables."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "markdown",
+        "formatting",
+        "readme",
+        "developer-tools",
+        "document-standardization"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"markdownContent\": \"#my project\\nThis is a sample readme...\", \"fixHeadings\": true, \"fixListIndentation\": true, \"injectStandardSections\": [\"License\"], \"maxLineLength\": 80}",
+          "description": "Formatting raw README content with fixed headings and added License section."
+        },
+        {
+          "inputJson": "{\"markdownContent\": \"## Introduction\\n- item 1\\n - item 2\", \"fixHeadings\": false, \"fixListIndentation\": true, \"injectStandardSections\": [], \"maxLineLength\": 0}",
+          "description": "Correct only list indentation without wrapping or changing headings."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatSpec",
+      "description": "Formats a software specification document written in plain text or markdown into a standardized, consistent format. Accepts the spec content as input along with formatting options such as style guide choice and output format. Produces a cleaned, well-structured formatted spec document as output, suitable for documentation repositories or sharing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "specContent",
+          "type": "string",
+          "description": "The raw content of the specification document to format, as plain text or markdown.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "The style guide or formatting convention to apply (e.g., 'Google', 'Microsoft', 'custom').",
+          "required": false,
+          "defaultValue": "Google"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format of the formatted spec (e.g., 'markdown', 'html', 'pdf').",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents at the beginning of the document.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "headerLevelStart",
+          "type": "number",
+          "description": "The header level to start with for section titles (e.g., 1 for '#', 2 for '##').",
+          "required": false,
+          "defaultValue": "1"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted specification document as a string in the requested output format and metadata such as the number of sections."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have a specification document that is unstructured or inconsistently formatted and want to produce a standardized, professional-looking spec document. It is helpful for maintaining uniform documentation style across teams and automating formatting tasks.",
+        "limitations": "Cannot interpret or generate substantive content—only formats what is already present. Does not validate the correctness or completeness of the specification content.",
+        "examples": [
+          "Format an RFC spec markdown to Microsoft style with TOC.",
+          "Convert raw spec text to clean markdown with Google style guide.",
+          "Produce an HTML version of a technical spec from markdown input."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "specifications",
+        "markdown",
+        "style-guide",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"specContent\":\"# API Spec\\nThis document details the API endpoints.\\n\\n## Authentication\\n- Uses OAuth2.\\n\",\"styleGuide\":\"Google\",\"outputFormat\":\"markdown\",\"includeTableOfContents\":true,\"headerLevelStart\":1}",
+          "description": "Format a basic API spec markdown document following the Google style guide, including a table of contents, starting header level 1."
+        },
+        {
+          "inputJson": "{\"specContent\":\"Project Spec\\n========\\nDetails:\\n - Overview\\n - Scope\\n\",\"styleGuide\":\"Microsoft\",\"outputFormat\":\"html\",\"includeTableOfContents\":false,\"headerLevelStart\":2}",
+          "description": "Format a project spec text using Microsoft style, output as HTML without a table of contents, starting headers at level 2."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Spec",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatCode",
+      "description": "Formats source code snippets in various programming languages for improved readability and consistency. Accepts raw code strings and a specified language, applies standard formatting rules or custom indentation, and outputs the formatted code string ready for inclusion in documentation or code reviews.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "code",
+          "type": "string",
+          "description": "The raw source code to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The programming language of the source code (e.g., 'javascript', 'python').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentStyle",
+          "type": "string",
+          "description": "The indentation style to use: 'spaces' or 'tabs'.",
+          "required": false,
+          "defaultValue": "spaces"
+        },
+        {
+          "name": "indentSize",
+          "type": "number",
+          "description": "Number of spaces or tabs for each indentation level.",
+          "required": false,
+          "defaultValue": "4"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum allowed line length before wrapping, use 0 for no wrapping.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "insertFinalNewline",
+          "type": "boolean",
+          "description": "Whether to ensure the formatted code ends with a newline character.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted code string and a summary of the formatting operation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to present or document code snippets clearly and consistently, ensuring they follow style guidelines for readability in README files, developer documentation, or code review tools. It accepts raw code and language info, then returns neatly formatted code.",
+        "limitations": "This tool does not perform syntax error correction or code linting beyond formatting style. It supports only popular programming languages with known formatting rules and may not handle proprietary languages or mixed-language code blocks.",
+        "examples": [
+          "Format a messy JavaScript snippet to conform to 2-space indentation.",
+          "Format a Python function with tabs instead of spaces for indentation.",
+          "Format a Java source code sample to wrap lines at 120 characters."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "code",
+        "documentation",
+        "style",
+        "readability",
+        "language-specific"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"code\":\"function test(){console.log('hello world');}\",\"language\":\"javascript\",\"indentStyle\":\"spaces\",\"indentSize\":2,\"maxLineLength\":80,\"insertFinalNewline\":true}",
+          "description": "Format a JavaScript function with 2-space indentation."
+        },
+        {
+          "inputJson": "{\"code\":\"def foo():\\n    print('bar')\",\"language\":\"python\",\"indentStyle\":\"tabs\",\"indentSize\":1,\"maxLineLength\":0,\"insertFinalNewline\":false}",
+          "description": "Format a Python function with tab indentation and no line wrapping."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Code",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatChangelog",
+      "description": "This tool formats raw changelog entries into a consistent, standardized changelog document. It accepts an array of changelog entries with version numbers, dates, and categorized changes (added, fixed, removed, etc.), and outputs a well-structured markdown or plaintext changelog that follows best practices for clarity and readability.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "entries",
+          "type": "array",
+          "description": "An array of changelog entry objects each containing version, date, and changes categorized by type (added, fixed, removed, etc.).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The output format of the changelog, supported formats include 'markdown' or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeDates",
+          "type": "boolean",
+          "description": "Whether to include release dates in the formatted changelog output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "versionPrefix",
+          "type": "string",
+          "description": "Prefix to prepend to each version number, e.g., 'v' to show as 'v1.2.3'.",
+          "required": false,
+          "defaultValue": "v"
+        },
+        {
+          "name": "sortDescending",
+          "type": "boolean",
+          "description": "Whether to sort the changelog entries with the newest version first.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "string",
+        "description": "A formatted changelog string based on the input entries and formatting parameters."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have raw changelog data and want to produce a professional, easy-to-read, and standardized changelog document in markdown or plaintext. It helps automate formatting for release notes, ensuring consistent style and categorization across versions.",
+        "limitations": "This tool does not infer or rewrite changelog content; it only formats the provided structured data. It requires changelog entries to be well-structured with clear categories. It cannot generate changelog entries from unstructured text input.",
+        "examples": [
+          "Format a list of versioned changelog entries into markdown for GitHub release notes.",
+          "Generate a plaintext changelog for software documentation from raw change entries.",
+          "Create a changelog sorted by newest version first including release dates with version prefixes."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "changelog",
+        "release-notes",
+        "markdown",
+        "plaintext"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"entries\":[{\"version\":\"1.2.0\",\"date\":\"2023-05-01\",\"changes\":{\"added\":[\"New user authentication module\"],\"fixed\":[\"Crash on login\"],\"removed\":[]}}, {\"version\":\"1.1.0\",\"date\":\"2023-03-15\",\"changes\":{\"added\":[\"Support for multi-language\"],\"fixed\":[],\"removed\":[\"Deprecated API endpoints\"]}}],\"outputFormat\":\"markdown\",\"includeDates\":true,\"versionPrefix\":\"v\",\"sortDescending\":true}",
+          "description": "Format two changelog entries into a markdown document with dates and version prefix 'v', sorted newest first."
+        },
+        {
+          "inputJson": "{\"entries\":[{\"version\":\"0.9.5\",\"date\":\"2022-12-01\",\"changes\":{\"added\":[\"Beta feature toggle\"],\"fixed\":[\"Minor UI bugs\"],\"removed\":[]}}],\"outputFormat\":\"plaintext\",\"includeDates\":false,\"versionPrefix\":\"\",\"sortDescending\":false}",
+          "description": "Generate a plaintext changelog for a single version without including dates and no version prefix."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Changelog",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatBrief",
+      "description": "Formats a brief document input into a clear, concise, and well-structured summary. Accepts raw text or markdown for the brief content, applies formatting rules such as bullet points, headings, and character limits, and outputs a polished brief suitable for professional or project documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "briefContent",
+          "type": "string",
+          "description": "The raw textual content of the brief to be formatted. Accepts plain text or markdown input.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum character length of the formatted brief. The tool will trim or summarize content as needed to meet this limit.",
+          "required": false,
+          "defaultValue": "1000"
+        },
+        {
+          "name": "useMarkdown",
+          "type": "boolean",
+          "description": "Determines whether the output should preserve markdown formatting (true) or provide plain text (false).",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeHeadings",
+          "type": "boolean",
+          "description": "Specifies whether to generate section headings based on content structure within the brief.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "bulletPointStyle",
+          "type": "string",
+          "description": "Style of bullet points to use if bullet formatting is applied. Options include '-', '*', or '•'.",
+          "required": false,
+          "defaultValue": "-"
+        },
+        {
+          "name": "summaryOnly",
+          "type": "boolean",
+          "description": "If true, produces only a summarized version of the brief without detailed sections.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "The formatted brief output, including the formatted text string and metadata such as length and format type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce concise, standardized brief documents from raw inputs, ensuring readability and professional formatting. Ideal for generating project summaries, executive briefs, or proposal overviews from unstructured text.",
+        "limitations": "This tool does not perform content verification or fact-checking and is not intended for generating briefs from highly technical or specialized documents without prior content validation. It also does not translate languages.",
+        "examples": [
+          "Format this raw project brief text into a well-structured markdown summary limited to 500 characters.",
+          "Create a plain text summary brief from a detailed project update while including bullet points and headings.",
+          "Generate a short executive brief that extracts key points from the provided text without detailed sections."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "brief",
+        "summary",
+        "markdown",
+        "text-processing",
+        "project-docs"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"briefContent\":\"This project aims to improve the user onboarding process by simplifying registration, adding interactive tutorials, and collecting feedback. Expected completion is Q4.\",\"maxLength\":300,\"useMarkdown\":true,\"includeHeadings\":true,\"bulletPointStyle\":\"-\",\"summaryOnly\":false}",
+          "description": "Format a brief project summary as markdown with bullet points and headings, within 300 characters."
+        },
+        {
+          "inputJson": "{\"briefContent\":\"Our Q2 marketing summary includes campaign analytics, customer growth stats, and budget usage. Highlights indicate positive trends in digital engagement.\",\"maxLength\":200,\"useMarkdown\":false,\"includeHeadings\":false,\"bulletPointStyle\":\"*\",\"summaryOnly\":true}",
+          "description": "Generate a plain text short summary brief without headings for a marketing report."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatTemplate",
+      "description": "This tool accepts a document template in text or markdown format along with formatting options, applies styling and structural formatting (like headings, lists, tables), and outputs a cleaned, consistently formatted template ready for documentation use or publishing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "templateContent",
+          "type": "string",
+          "description": "The raw document template content to be formatted, as a string (required)",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formattingStyle",
+          "type": "string",
+          "description": "Specifies the formatting style to apply, e.g., 'markdown', 'asciidoc', or 'custom' (optional)",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum line length for text wrapping (optional)",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "applyConsistentHeadings",
+          "type": "boolean",
+          "description": "Whether to standardize heading levels across the template (optional)",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "preserveWhitespace",
+          "type": "boolean",
+          "description": "Indicates if original whitespace and indentation should be preserved (optional)",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted template content as string and a report of applied formatting changes."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to clean up, structure, and standardize raw or inconsistently formatted documentation templates prior to publishing or further editing. It is ideal for ensuring style consistency, applying markdown or other text-based styles, and preparing templates for integration in documentation workflows.",
+        "limitations": "This tool does not perform content generation or semantic validation of the text; it only applies formatting rules. It is not a full document conversion tool between complex formats (e.g., DOCX to markdown).",
+        "examples": [
+          "Format a raw markdown Docker template ensuring consistent heading levels and line wrapping.",
+          "Apply asciidoc formatting style to a plain text template file.",
+          "Clean and format a README template preserving existing whitespace where necessary."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "templates",
+        "markup",
+        "style",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"templateContent\":\"# Project Title\\nThis project does X.   \\n## Installation\\nUse 'npm install'.\\n\",\"formattingStyle\":\"markdown\",\"maxLineLength\":80,\"applyConsistentHeadings\":true,\"preserveWhitespace\":false}",
+          "description": "Format a simple markdown template to ensure consistent headings and line length."
+        },
+        {
+          "inputJson": "{\"templateContent\":\"Project Overview\\n===============\\nDetails here.\",\"formattingStyle\":\"asciidoc\",\"maxLineLength\":60,\"applyConsistentHeadings\":true,\"preserveWhitespace\":false}",
+          "description": "Convert plain text to asciidoc style with consistent underlined headings."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatChecklist",
+      "description": "Formats a checklist document by organizing checklist items, applying consistent styles, and optionally converting into markdown or HTML. Accepts a raw checklist input with items and statuses, processes layout and style preferences, and outputs a formatted checklist string ready for documentation inclusion.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "checklistItems",
+          "type": "array",
+          "description": "An array of checklist items where each item includes a text description and a completion status (true/false).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format for the checklist, e.g., 'markdown' or 'html'. Defaults to 'markdown'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeHeader",
+          "type": "boolean",
+          "description": "Whether to include a header title at the start of the checklist document. Defaults to true.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "headerTitle",
+          "type": "string",
+          "description": "The text to display as the checklist header if includeHeader is true.",
+          "required": false,
+          "defaultValue": "Checklist"
+        },
+        {
+          "name": "sortItems",
+          "type": "boolean",
+          "description": "If true, sorts the checklist items with incomplete items first. Defaults to false.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted checklist document as a string under 'formattedChecklist'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create or format documentation checklists from raw boolean item lists into clean, readable markdown or HTML for reports, manuals, or project specifications.",
+        "limitations": "This tool does not generate checklist content, only formats provided items. It provides limited styling options and does not support export beyond markdown or HTML formats.",
+        "examples": [
+          "Format a checklist of deployment steps in markdown with a header.",
+          "Produce an HTML formatted checklist without a header for embedding in a website.",
+          "Sort checklist items to prioritize incomplete tasks before formatting."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "checklist",
+        "markdown",
+        "html",
+        "workflow",
+        "project-management"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"checklistItems\":[{\"text\":\"Install dependencies\",\"completed\":true},{\"text\":\"Setup database\",\"completed\":false},{\"text\":\"Run tests\",\"completed\":false}],\"outputFormat\":\"markdown\",\"includeHeader\":true,\"headerTitle\":\"Deployment Steps\",\"sortItems\":true}",
+          "description": "Format a checklist of deployment steps in markdown with incomplete items listed first and a header titled 'Deployment Steps'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatFAQ",
+      "description": "Formats a FAQ document given an array of question-answer pairs or a raw text input. It structures the content into a consistent, well-formatted FAQ style, optionally adding section titles and numbering questions. The output is a clean, readable FAQ text or markdown suitable for documentation delivery.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "faqEntries",
+          "type": "array",
+          "description": "An array of objects each containing 'question' and 'answer' strings representing individual FAQ entries.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "The output format style, e.g., 'plain text' or 'markdown' for formatted output.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "addNumbering",
+          "type": "boolean",
+          "description": "Whether to number the questions sequentially in the output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "sectionTitle",
+          "type": "string",
+          "description": "An optional section title to prepend to the FAQ document.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single 'formattedFAQ' string with the consistent FAQ text formatted as specified."
+      },
+      "aiAgent": {
+        "useCase": "An AI agent should use this tool when it needs to convert raw FAQ data into a structured, cleanly formatted FAQ document to present to users or embed in documentation. This tool standardizes FAQ presentation and supports markdown formatting.",
+        "limitations": "This tool only formats FAQ content; it does not generate questions or answers. It requires well-formed question-answer input and cannot correct content quality or relevance.",
+        "examples": [
+          "Format a given set of FAQ entries into markdown with numbering.",
+          "Generate plain text FAQ without numbering and with a custom section title.",
+          "Convert raw FAQ entries into a standardized FAQ document for user help."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "faq",
+        "markdown",
+        "text-processing",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"faqEntries\":[{\"question\":\"How do I reset my password?\",\"answer\":\"Click on 'Forgot Password' at login and follow the instructions.\"},{\"question\":\"Where can I find the user manual?\",\"answer\":\"The user manual is available on the documentation page.\"}],\"formatStyle\":\"markdown\",\"addNumbering\":true,\"sectionTitle\":\"Frequently Asked Questions\"}",
+          "description": "Format a set of FAQ entries into a numbered markdown FAQ with a section title."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatMinutes",
+      "description": "Formats raw meeting minutes text into a standardized, professional minutes document. Accepts unstructured or semi-structured meeting notes, processes them to organize agenda items, decisions, action points, and attendees, and outputs a clean, well-formatted minutes document as markdown or text.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "rawText",
+          "type": "string",
+          "description": "Raw, unformatted meeting minutes or notes to be processed and formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the formatted minutes: markdown or plain text.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeSummary",
+          "type": "boolean",
+          "description": "Whether to generate a brief summary section at the start of the minutes.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "highlightDecisions",
+          "type": "boolean",
+          "description": "Whether to visually highlight decisions or action items in the output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "customHeader",
+          "type": "string",
+          "description": "Optional custom header/title to prepend to the minutes document.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "Optional meeting date to include in the minutes header, in ISO format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted minutes document with metadata including generated summary and counts of key elements."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have raw or loosely structured meeting notes that need to be converted into a clear, professional minutes document for sharing or record-keeping. It is ideal for standardizing minutes from varied input styles and improving readability and actionability.",
+        "limitations": "Cannot infer content not present in input; quality depends on clarity of rawText. Does not replace human review for meeting accuracy or sensitive content.",
+        "examples": [
+          "Format raw text notes from a project meeting into markdown minutes with summary and highlights.",
+          "Generate plain text minutes without a generated summary.",
+          "Add a custom header with the meeting title to the minutes output."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "meeting",
+        "minutes",
+        "productivity"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawText\":\"Attendees: John, Jane\\nDiscussed project timeline delays. Action: John to update schedule. Decision: Push launch date by one month.\",\"outputFormat\":\"markdown\",\"includeSummary\":true,\"highlightDecisions\":true,\"customHeader\":\"Project Sync Meeting\",\"date\":\"2024-04-20\"}",
+          "description": "Format typical raw meeting notes into markdown output with header, summary, and highlighted decisions."
+        },
+        {
+          "inputJson": "{\"rawText\":\"Team meeting notes without clear formatting.\\n- Items reviewed\\n- Next steps assigned\",\"outputFormat\":\"text\",\"includeSummary\":false,\"highlightDecisions\":false}",
+          "description": "Convert informal text notes into plain text formatted minutes without summary or highlights."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatTranscript",
+      "description": "Formats raw transcript text by applying timestamp normalization, speaker label consistency, and paragraph structuring for readability. Accepts a raw text transcript and configuration options, producing a clean, standardized formatted transcript as output.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "rawTranscript",
+          "type": "string",
+          "description": "The raw transcript text to be formatted, including timestamps and speaker labels.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timestampFormat",
+          "type": "string",
+          "description": "Format for timestamps in the output (e.g., HH:mm:ss, mm:ss).",
+          "required": false,
+          "defaultValue": "HH:mm:ss"
+        },
+        {
+          "name": "speakerLabelStyle",
+          "type": "string",
+          "description": "Style for speaker labels: 'fullName', 'initials', or 'numbered'.",
+          "required": false,
+          "defaultValue": "fullName"
+        },
+        {
+          "name": "paragraphLength",
+          "type": "number",
+          "description": "Approximate number of sentences per paragraph in the formatted output.",
+          "required": false,
+          "defaultValue": "3"
+        },
+        {
+          "name": "includeTimestamps",
+          "type": "boolean",
+          "description": "Whether to include timestamps before paragraphs or speaker turns.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted transcript as a string under the 'formattedTranscript' key."
+      },
+      "aiAgent": {
+        "useCase": "When an AI agent has a raw or unstructured meeting, interview, or event transcript with inconsistent formatting, timestamps, and speaker labels, it can use this tool to produce a clean, human-readable formatted transcript suitable for documentation or publishing.",
+        "limitations": "This tool does not perform transcription or speaker diarization itself. It requires the raw transcript text to already include speaker labels and timestamps. It cannot correct transcription errors or add content.",
+        "examples": [
+          "Format a raw interview transcript adding timestamps in mm:ss format and using numbered speaker labels.",
+          "Convert meeting transcripts with speaker initials and paragraphs of 4 sentences.",
+          "Output a formatted transcript without timestamps for publication."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "transcript",
+        "documentation",
+        "text-processing",
+        "speaker-labels",
+        "timestamps"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawTranscript\":\"[00:00:01] John Doe: Hello everyone. [00:00:05] Jane Smith: Hi John! How are you?\",\"timestampFormat\":\"mm:ss\",\"speakerLabelStyle\":\"numbered\",\"paragraphLength\":2,\"includeTimestamps\":true}",
+          "description": "Format a short transcript using mm:ss timestamps, numbered speakers, and paragraphs of 2 sentences."
+        },
+        {
+          "inputJson": "{\"rawTranscript\":\"[00:00:10] JD: Welcome to the meeting. Let's get started. [00:00:15] JS: Sure thing.\",\"timestampFormat\":\"HH:mm:ss\",\"speakerLabelStyle\":\"initials\",\"paragraphLength\":3,\"includeTimestamps\":false}",
+          "description": "Format a transcript with speaker initials, full HH:mm:ss timestamps, paragraphs of 3 sentences, without timestamps in output."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatReleaseNotes",
+      "description": "Formats raw release notes input into a clear, structured, and user-friendly document. Accepts an array of release entries containing version info, dates, and categorized changes; processes and organizes them into markdown or HTML formatted release notes output that can be published or shared.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "releaseEntries",
+          "type": "array",
+          "description": "An array of release entries, each with version, date, and categorized notes (e.g., features, fixes).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format: 'markdown' or 'html'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeDate",
+          "type": "boolean",
+          "description": "Whether to include the release date in the output formatting.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "sortOrder",
+          "type": "string",
+          "description": "Order to sort releases by version: 'asc' for ascending or 'desc' for descending.",
+          "required": false,
+          "defaultValue": "desc"
+        },
+        {
+          "name": "highlightCritical",
+          "type": "boolean",
+          "description": "Whether to visually highlight critical or breaking changes in the output.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single string field 'formattedNotes' with the fully formatted release notes in the specified output format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert raw or unformatted release note data into a standardized, readable document suitable for release announcements or developer documentation. It helps maintain consistent formatting across release versions and improves clarity with categorized sections and optional highlights.",
+        "limitations": "Cannot generate release notes from unstructured data automatically; expects input in a structured array format. Does not handle translations or localization.",
+        "examples": [
+          "Format release notes JSON array into markdown for public release page.",
+          "Convert raw release note entries to HTML email-friendly version.",
+          "Sort release notes ascending and exclude release dates for internal reviews."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "release-notes",
+        "changelog",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"releaseEntries\":[{\"version\":\"1.2.0\",\"date\":\"2024-05-01\",\"features\":[\"Added user profile customization\"],\"fixes\":[\"Fixed login timeout bug\"],\"breakingChanges\":[\"Removed deprecated settings API\"]},{\"version\":\"1.1.0\",\"date\":\"2024-04-15\",\"features\":[\"Introduced dark mode option\"],\"fixes\":[],\"breakingChanges\":[]}],\"outputFormat\":\"markdown\",\"includeDate\":true,\"sortOrder\":\"desc\",\"highlightCritical\":true}",
+          "description": "Format multiple releases with all sections in markdown, descending order, showing dates and highlighting breaking changes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "ReleaseNotes",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatSummary",
+      "description": "This tool accepts a raw textual summary of a document or project and formats it into a concise, well-structured summary with optional bullet points, line wrapping, and header inclusion. It processes input text to improve readability and consistency before outputting the formatted summary as a string.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "rawSummaryText",
+          "type": "string",
+          "description": "The raw, unformatted textual summary to be processed",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum number of characters per line for wrapping; lines longer than this are wrapped",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "includeHeader",
+          "type": "boolean",
+          "description": "Whether to prepend a standard header title to the summary",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "useBulletPoints",
+          "type": "boolean",
+          "description": "If true, formats the summary into bullet points when applicable",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted summary as a single string in the 'formattedSummary' field."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent must convert raw or loosely structured project or document summaries into standardized, readable formats suitable for documentation, reports or presentations. This helps maintain consistency and professionalism in documentation by enforcing line length limits, optional headers, and bullet formatting.",
+        "limitations": "This tool does not generate new summary content or perform deep semantic analysis; it only reformats provided text. It cannot summarize lengthy documents or extract key points automatically.",
+        "examples": [
+          "Format a project summary text with bullet points and header for a README file.",
+          "Wrap long summary lines to 60 characters without bullet points.",
+          "Format raw feature description text with default settings for a project documentation summary."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "summary",
+        "text-processing",
+        "readability",
+        "reporting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawSummaryText\":\"This document outlines the main features of the project, focusing on usability and performance. It highlights key milestones and the current progress status.\",\"maxLineLength\":50,\"includeHeader\":true,\"useBulletPoints\":true}",
+          "description": "Format a project summary with bullet points, line wrap at 50 chars and header included."
+        },
+        {
+          "inputJson": "{\"rawSummaryText\":\"Summary of changes includes UI redesign, backend API improvements, and bug fixes.\",\"maxLineLength\":80,\"includeHeader\":false,\"useBulletPoints\":false}",
+          "description": "Format a short summary without header or bullet points, wrapping at 80 characters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatBlogPost",
+      "description": "Formats raw blog post content into a clean, readable, and stylistically consistent HTML blog post. Accepts plain text or Markdown input along with metadata and outputs formatted HTML content ready for publishing on websites or blogs.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "rawContent",
+          "type": "string",
+          "description": "The original blog post content as plain text or Markdown format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the blog post to be included in the formatted output.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Name of the author to attribute the blog post to.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "publishDate",
+          "type": "string",
+          "description": "The publication date of the blog post in ISO 8601 format (YYYY-MM-DD).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTOC",
+          "type": "boolean",
+          "description": "Flag to indicate whether to generate and include a Table of Contents based on headings.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum character length per line for paragraph wrapping to improve readability.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Optional CSS theme name to style the blog post (e.g., light, dark).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted blog post's HTML content plus basic metadata for integration or display."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert unformatted or Markdown-based blog content into a clean, visually consistent HTML format suitable for web publishing. It helps prepare blog posts by applying consistent structure, styling, and optional features like Table of Contents generation.",
+        "limitations": "Does not perform spell checking, SEO optimization, or multimedia embedding beyond basic image markdown. Requires well-structured input for best results.",
+        "examples": [
+          "Format this raw Markdown blog post text into styled HTML for publishing.",
+          "Generate an HTML blog post with a Table of Contents from a long article draft.",
+          "Wrap blog paragraphs at 80 characters and apply a dark theme to the HTML output."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "blog",
+        "HTML",
+        "Markdown",
+        "content-preparation",
+        "publication"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawContent\":\"# Introduction\\nThis is the first paragraph of the blog post. It explains the topic clearly.\\n\\n## Details\\nMore detailed explanation in this section.\",\"title\":\"My First Blog Post\",\"author\":\"Jane Doe\",\"publishDate\":\"2024-05-01\",\"includeTOC\":true,\"maxLineLength\":100,\"theme\":\"light\"}",
+          "description": "Format a Markdown blog post with headings included, author and publish date metadata, generate a Table of Contents, wrap lines at 100 characters using a light theme."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatArticle",
+      "description": "Formats an article text input by applying standardized styles such as headers, paragraphs, bullet points, code blocks, and inline emphasis. Accepts raw article content and formatting options to produce a cleanly structured Markdown or HTML-formatted article output.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "articleContent",
+          "type": "string",
+          "description": "The raw text content of the article to be formatted, including sections and paragraphs.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format: 'markdown' or 'html'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "headerStyle",
+          "type": "string",
+          "description": "Style of headers to apply, e.g., 'atx' for markdown # style or 'setext' for underlined. Only applicable if outputFormat='markdown'.",
+          "required": false,
+          "defaultValue": "atx"
+        },
+        {
+          "name": "convertLists",
+          "type": "boolean",
+          "description": "Whether to automatically detect and convert bulleted or numbered lists in the content.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "convertCodeBlocks",
+          "type": "boolean",
+          "description": "Whether to format code snippets within the article using fenced code blocks with optional language tags.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "inlineEmphasis",
+          "type": "boolean",
+          "description": "Whether to transform inline emphasis like bold or italics to proper syntax in the output format.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted article as a string in the chosen output format under the 'formattedContent' field."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have raw article text that needs consistent, clean formatting into Markdown or HTML for publishing, documentation sites, or content management systems. It helps automate applying correct syntax to headers, lists, code, and emphasis to ensure readability and standard compliance.",
+        "limitations": "This tool does not perform language grammar corrections, fact-checking, or content restructuring. It only formats provided text syntactically and does not add or remove content.",
+        "examples": [
+          "Format a raw technical article into HTML with headers and code blocks properly styled.",
+          "Convert plain text notes into Markdown with bullet lists properly formatted.",
+          "Apply consistent header styles and inline emphasis formatting to a draft article."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "article",
+        "markdown",
+        "html",
+        "content-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"articleContent\":\"#My Article\\nThis is the introduction.\\n- First item\\n- Second item\\n\\nHere is some code:\\nconsole.log('Hello World');\",\"outputFormat\":\"markdown\"}",
+          "description": "Format raw article text with headers, bullet lists, and code into Markdown."
+        },
+        {
+          "inputJson": "{\"articleContent\":\"Introduction\\n============\\nThis article explains the process.\\n1. Step one\\n2. Step two\\n\\nHere is inline code: print('Hello')\",\"outputFormat\":\"html\",\"convertLists\":true}",
+          "description": "Convert an article written in plain text with setext headers and steps into correctly formatted HTML."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatResume",
+      "description": "Formats a plain text or JSON structured resume by applying customizable style templates to produce a professionally styled resume in PDF or HTML format. Accepts raw resume content, formatting preferences, and outputs well-structured, visually consistent documents suitable for job applications or sharing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "resumeContent",
+          "type": "string",
+          "description": "The raw resume content as plain text or JSON string representing resume sections and details.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFormat",
+          "type": "string",
+          "description": "Format of the input resumeContent ('plainText' or 'json').",
+          "required": true,
+          "defaultValue": "plainText"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the formatted resume ('pdf' or 'html').",
+          "required": true,
+          "defaultValue": "pdf"
+        },
+        {
+          "name": "styleTemplate",
+          "type": "string",
+          "description": "Name or identifier of the style template to apply (e.g., 'modern', 'classic').",
+          "required": false,
+          "defaultValue": "modern"
+        },
+        {
+          "name": "includeSections",
+          "type": "array",
+          "description": "List of resume sections to include (e.g., ['experience','education','skills']). If empty or omitted, includes all.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "highlightKeywords",
+          "type": "array",
+          "description": "List of keywords to highlight for emphasis in the formatted resume.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "fontSize",
+          "type": "number",
+          "description": "Base font size to use in the formatted resume (points).",
+          "required": false,
+          "defaultValue": "11"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted resume file content encoded in base64 and the MIME type."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert raw resume data into a professional, styled document for job applications, ensuring consistent formatting and enhanced readability. It supports multiple input and output formats and customizable styling.",
+        "limitations": "Cannot create resume content from scratch or validate resume data accuracy. Formatting is limited to predefined templates and cannot perform heavy graphical design.",
+        "examples": [
+          "Format a JSON structured resume into a PDF using the 'classic' style.",
+          "Convert plain text resume to HTML highlighting specific skills keywords.",
+          "Generate a minimum font size formatted PDF for accessibility."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "resume",
+        "formatting",
+        "PDF",
+        "HTML",
+        "style",
+        "templates",
+        "job-application"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"resumeContent\":\"{\\\"name\\\":\\\"Alice Johnson\\\",\\\"experience\\\":[{\\\"company\\\":\\\"ACME Corp\\\",\\\"role\\\":\\\"Developer\\\",\\\"years\\\":3}]}\",\"inputFormat\":\"json\",\"outputFormat\":\"pdf\",\"styleTemplate\":\"classic\",\"includeSections\":[\"experience\",\"education\"],\"highlightKeywords\":[\"Developer\"],\"fontSize\":12}",
+          "description": "Format a JSON resume into a classic style PDF including only experience and education, highlighting 'Developer'."
+        },
+        {
+          "inputJson": "{\"resumeContent\":\"Alice Johnson\\nExperience:\\n- Developer at ACME Corp for 3 years\\nEducation:\\n- BSc in Computer Science\",\"inputFormat\":\"plainText\",\"outputFormat\":\"html\",\"styleTemplate\":\"modern\",\"highlightKeywords\":[\"Developer\"],\"fontSize\":11}",
+          "description": "Format a plain text resume into a modern style HTML highlighting 'Developer'."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Resume",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatInvoice",
+      "description": "Formats invoice data provided as JSON into a clean, standardized PDF or HTML document. Accepts raw invoice details including items, prices, company info, and customer info. Outputs a professionally styled invoice ready for sending or printing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "invoiceData",
+          "type": "object",
+          "description": "Structured invoice details including items, pricing, dates, company and customer info. Required for generating the invoice.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format for the invoice document, e.g., 'PDF' or 'HTML'. Defaults to 'PDF'.",
+          "required": false,
+          "defaultValue": "PDF"
+        },
+        {
+          "name": "includeCompanyLogo",
+          "type": "boolean",
+          "description": "Flag to include the company logo in the formatted invoice. Defaults to true.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "templateStyle",
+          "type": "string",
+          "description": "Name or identifier of the invoice template style to use for formatting. Defaults to 'standard'.",
+          "required": false,
+          "defaultValue": "standard"
+        },
+        {
+          "name": "currencySymbol",
+          "type": "string",
+          "description": "Currency symbol to use in the invoice, e.g., '$', '€'. Defaults to '$'.",
+          "required": false,
+          "defaultValue": "$"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted invoice document's binary data encoded as base64, along with metadata such as content type and preview text."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have raw invoice data and need to convert it into a professional invoice document for distribution or printing. It standardizes styling, applies formatting, and outputs in PDF or HTML. Suitable for automating invoice creation in billing systems or chatbots.",
+        "limitations": "This tool does not perform invoice data validation or calculations. It does not send invoices; output must be handled separately. Logo image must be supplied within invoiceData or configured externally.",
+        "examples": [
+          "Format a JSON invoice into a PDF suitable for sending to a client.",
+          "Generate a HTML invoice for web preview showing a detailed billing summary.",
+          "Create a standardized invoice document with custom styling and currency symbol for international invoicing."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "invoice",
+        "formatting",
+        "pdf",
+        "html",
+        "billing",
+        "finance",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-2024-001\",\"date\":\"2024-05-20\",\"dueDate\":\"2024-06-20\",\"company\":{\"name\":\"Acme Corp\",\"address\":\"123 Industrial Way\",\"phone\":\"555-1234\",\"email\":\"billing@acme.com\"},\"customer\":{\"name\":\"John Doe\",\"address\":\"456 Elm St\",\"phone\":\"555-5678\"},\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":9.99},{\"description\":\"Widget B\",\"quantity\":5,\"unitPrice\":19.99}],\"notes\":\"Thank you for your business!\"},\"outputFormat\":\"PDF\",\"includeCompanyLogo\":true,\"templateStyle\":\"modern\",\"currencySymbol\":\"$\"}",
+          "description": "Create a modern style PDF invoice for Acme Corp's customer John Doe including company logo and monetary values in US Dollars."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Invoice",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatEmail",
+      "description": "This tool accepts raw email content, including optional subject and recipient details, and formats it into a professional, well-structured email body. It performs text normalization, applies consistent formatting rules such as paragraph breaks, bullet points, and polite closings, and outputs a clean, formatted email string ready for sending or documentation purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "rawContent",
+          "type": "string",
+          "description": "The unformatted body text of the email to be cleaned and structured.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "Optional subject line for the email to include in formatting context.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "recipientName",
+          "type": "string",
+          "description": "Optional recipient name used to personalize the greetings or salutation in the email.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "senderName",
+          "type": "string",
+          "description": "Optional sender name to append to the signature for personalization.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeSignature",
+          "type": "boolean",
+          "description": "Whether to append a standard signature block to the end of the email.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "Preferred style of formatting: 'formal', 'informal', or 'neutral'. Adjusts tone and phraseology accordingly.",
+          "required": false,
+          "defaultValue": "formal"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the fully formatted email text as a single string, including subject line if provided, greeting, body formatted with paragraphs and lists, and signature if enabled."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert raw, unstructured email text or draft notes into a polished and properly formatted email message suitable for professional communication or documentation. It helps ensure consistent tone, structure, and presentation for outgoing emails.",
+        "limitations": "This tool does not send emails, verify email addresses, or handle email attachments. It only formats plain text content into a styled email body and subject line.",
+        "examples": [
+          "Format an informal email draft to a client with personalized greeting and signature.",
+          "Clean up and structure notes into a formal email to a project team.",
+          "Generate a formatted email with a specified subject and neutral tone from bullet point input."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "email",
+        "communication",
+        "documentation",
+        "professional",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rawContent\":\"hello there, i wanted to check in about the q3 report. please find attached the details. thanks!\",\"subject\":\"Q3 Report Update\",\"recipientName\":\"John\",\"senderName\":\"Emma\",\"includeSignature\":true,\"formatStyle\":\"formal\"}",
+          "description": "Formats an informal raw email into a formal styled email with greeting and signature, including a subject line."
+        },
+        {
+          "inputJson": "{\"rawContent\":\"team, please review the following:\\n- budget approval\\n- timeline adjustments\\nlet me know your feedback.\",\"subject\":\"Project Update\",\"includeSignature\":false,\"formatStyle\":\"neutral\"}",
+          "description": "Formats bullet point notes into a neutral-tone email for team updates without signature."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Email",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftCitation",
+      "description": "This tool generates a properly formatted academic or professional citation string based on given source details and citation style. It accepts bibliographic information such as author names, publication year, title, source type, and optional data, processes them according to citation standard rules, and outputs a formatted citation string in styles like APA, MLA, or Chicago.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of author names in 'Last, First' format or similar, required for generating the citation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the work being cited (e.g., article, book, webpage).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationYear",
+          "type": "number",
+          "description": "Year the work was published or released.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of source such as 'book', 'journalArticle', 'website', 'conferencePaper'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publisher",
+          "type": "string",
+          "description": "Publisher or publishing entity name (if applicable).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "journalName",
+          "type": "string",
+          "description": "Name of the journal if sourceType is 'journalArticle'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "volume",
+          "type": "string",
+          "description": "Volume number of the journal or book series (optional).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "issue",
+          "type": "string",
+          "description": "Issue number for journals or periodicals (optional).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pages",
+          "type": "string",
+          "description": "Page range of the article or chapter (e.g., \"123-145\").",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL for online sources (optional).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "doi",
+          "type": "string",
+          "description": "Digital Object Identifier if available (optional).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessDate",
+          "type": "string",
+          "description": "Date of online source access in 'YYYY-MM-DD' format (optional).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format the output (e.g., 'APA', 'MLA', 'Chicago').",
+          "required": true,
+          "defaultValue": "APA"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted citation string and the citation style used, suitable for inclusion in documentation or bibliographies."
+      },
+      "aiAgent": {
+        "useCase": "AI agents should use this tool when they need to generate standardized citation strings for references given bibliographic metadata. It is helpful for assembling reference lists, footnotes, or in-text citations automatically in various academic or professional formats.",
+        "limitations": "This tool cannot verify the accuracy of bibliographic data provided or access external databases to enrich incomplete citation information. It follows formatting rules but does not resolve conflicting style guidelines.",
+        "examples": [
+          "Generate an APA citation for a book authored by 'Smith, John' published in 2020 titled 'Modern Testing'.",
+          "Create an MLA citation for a journal article published in 2018 by multiple authors with a DOI.",
+          "Provide a Chicago style citation for a webpage accessed on a specific date."
+        ]
+      },
+      "tags": [
+        "citation",
+        "documentation",
+        "formatting",
+        "bibliography",
+        "reference",
+        "academic"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"authors\":[\"Smith, John\"],\"title\":\"Modern Testing\",\"publicationYear\":2020,\"sourceType\":\"book\",\"publisher\":\"Tech Press\",\"citationStyle\":\"APA\"}",
+          "description": "APA citation for a single-author book with publisher info."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Doe, Jane\",\"Brown, Alice\"],\"title\":\"Insights into AI\",\"publicationYear\":2018,\"sourceType\":\"journalArticle\",\"journalName\":\"Journal of AI Research\",\"volume\":\"12\",\"issue\":\"3\",\"pages\":\"45-67\",\"doi\":\"10.1234/jair.2018.4567\",\"citationStyle\":\"MLA\"}",
+          "description": "MLA citation for a journal article with two authors and a DOI."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Green, Emily\"],\"title\":\"Understanding Machine Learning\",\"publicationYear\":2022,\"sourceType\":\"website\",\"url\":\"https://ml.example.com\",\"accessDate\":\"2024-05-10\",\"citationStyle\":\"Chicago\"}",
+          "description": "Chicago style citation for a website accessed on a certain date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatContract",
+      "description": "Formats a legal or business contract text according to specified style guidelines, ensuring consistent structure, headings, numbering, and spacing. Accepts raw contract text and formatting options, and outputs the formatted contract as plain text or markdown.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "contractText",
+          "type": "string",
+          "description": "The raw unformatted contract text that needs to be structured and styled.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "The desired formatting style, such as 'legal', 'business', or 'custom'. Determines heading styles, numbering, font emphasis, and spacing conventions.",
+          "required": false,
+          "defaultValue": "legal"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format: either 'plain' text or 'markdown' to support rich text elements like bold and italics.",
+          "required": false,
+          "defaultValue": "plain"
+        },
+        {
+          "name": "numberSections",
+          "type": "boolean",
+          "description": "Whether to add hierarchical numbering to section headings for easier navigation.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "enforceSpacing",
+          "type": "boolean",
+          "description": "Whether to ensure consistent spacing between paragraphs and sections.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "customStyles",
+          "type": "object",
+          "description": "Optional object defining custom styling preferences, such as heading prefixes, bullet characters, or font emphasis tokens for markdown output.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the formatted contract text under 'formattedContract' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert raw or inconsistently formatted contract text into a clean, professionally formatted document adhering to specific style guidelines, aiding readability and professionalism. Useful for preparing contracts for review or publication.",
+        "limitations": "This tool does not perform legal validation or interpretation of contract content. It does not generate contracts from scratch, only reformats existing text.",
+        "examples": [
+          "Format a raw contract text into markdown with numbered sections.",
+          "Clean up spacing and apply a business style format to a contract document.",
+          "Apply custom heading styles to an existing contract text and return plain text output."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "contracts",
+        "legal",
+        "business",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"contractText\":\"This Agreement is made on...\\n1. Definitions\\nThe parties agree...\",\"formatStyle\":\"legal\",\"outputFormat\":\"markdown\",\"numberSections\":true,\"enforceSpacing\":true}",
+          "description": "Format a raw legal contract text with markdown output, numbered sections, and consistent spacing."
+        },
+        {
+          "inputJson": "{\"contractText\":\"Contract:\\nTerms and Conditions\\n- Parties involved...\",\"formatStyle\":\"business\",\"outputFormat\":\"plain\",\"numberSections\":false,\"enforceSpacing\":true}",
+          "description": "Apply business style formatting to a contract without numbering sections, outputting plain text."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Contract",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatProposal",
+      "description": "Formats a project or product proposal document for consistency and clarity. Accepts raw proposal text or markdown, applies formatting rules (like headings, lists, and emphasis), inserts a table of contents if requested, and outputs a cleaned, formatted markdown or HTML string suitable for review or publication.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "proposalText",
+          "type": "string",
+          "description": "Raw text or markdown content of the proposal to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the output document, e.g., 'markdown' or 'html'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents based on headings in the proposal.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "maxLineLength",
+          "type": "number",
+          "description": "Maximum line length to wrap text lines for improved readability.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "headingStyle",
+          "type": "string",
+          "description": "Preferred style for headings, e.g., 'atx' (with #) or 'setext' (underline style).",
+          "required": false,
+          "defaultValue": "atx"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted proposal text in the specified output format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to ensure that proposal documents conform to a standardized, professional format for effective communication and presentation. It helps clean up raw or inconsistent proposal drafts into structured, readable documents ready for sharing with stakeholders or embedding in documentation systems.",
+        "limitations": "Does not perform content validation or assess proposal quality; purely formats provided text. Not suitable for creating proposals from scratch or generating content.",
+        "examples": [
+          "Format a raw proposal markdown into polished markdown with a table of contents included.",
+          "Convert raw proposal text to HTML with consistent heading styles and wrapped lines.",
+          "Generate a formatted markdown proposal without a table of contents for manual review."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "proposal",
+        "markdown",
+        "html",
+        "table-of-contents"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"proposalText\":\"# Project Proposal\\nThis is a proposal for a new project.\\n## Goals\\n- Improve efficiency\\n- Reduce cost\",\"outputFormat\":\"markdown\",\"includeTableOfContents\":true,\"maxLineLength\":80,\"headingStyle\":\"atx\"}",
+          "description": "Format a markdown proposal with headings and a generated table of contents."
+        },
+        {
+          "inputJson": "{\"proposalText\":\"Project Summary:\\nWe aim to launch a web platform.\",\"outputFormat\":\"html\",\"includeTableOfContents\":false,\"maxLineLength\":100,\"headingStyle\":\"atx\"}",
+          "description": "Format plain text proposal to HTML without a table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Proposal",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatDocument",
+      "description": "Formats a document string into a specified style and format. Accepts raw text or markdown input and applies formatting rules such as heading styles, line width, indentation, and code block handling. Outputs the formatted document string ready for publishing or further processing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "documentContent",
+          "type": "string",
+          "description": "The raw content of the document to be formatted, in plain text or markdown.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "The target format style, e.g., 'markdown', 'plainText', 'html'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "maxLineWidth",
+          "type": "number",
+          "description": "Maximum number of characters per line. Lines exceeding this will be wrapped accordingly.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "indentationSpaces",
+          "type": "number",
+          "description": "Number of spaces to use for indentation levels.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "preserveCodeBlocks",
+          "type": "boolean",
+          "description": "If true, code blocks will remain unchanged during formatting.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "applyHeadingStyles",
+          "type": "boolean",
+          "description": "Whether to format headings according to the target style (e.g., markdown #, html <h> tags).",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted document as a string under 'formattedDocument' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to standardize and beautify documentation text for consistent presentation, especially prior to publishing or exporting to different formats. It is ideal for converting raw or semi-structured text into well-formatted markdown, HTML, or plain text documents.",
+        "limitations": "Cannot perform semantic content rewriting or generate new content; purely formatting existing text. Limited to text and markdown inputs, no support for complex document formats such as DOCX or PDF.",
+        "examples": [
+          "Format a markdown README.md file to have lines wrapped at 80 characters and consistent heading styles.",
+          "Convert a plain text document into an HTML formatted string preserving code blocks.",
+          "Reformat a technical document string with 4-space indentation and convert to plain text output."
+        ]
+      },
+      "tags": [
+        "formatting",
+        "documentation",
+        "markdown",
+        "text",
+        "html",
+        "style",
+        "beautify"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"documentContent\":\"# Sample Document\\nThis is a sample   document with inconsistent spacing and verylongwordswithoutspaces that might need wraping.\",\"formatStyle\":\"markdown\",\"maxLineWidth\":50,\"indentationSpaces\":2,\"preserveCodeBlocks\":true,\"applyHeadingStyles\":true}",
+          "description": "Format markdown content with max line width 50 and standard heading styles."
+        },
+        {
+          "inputJson": "{\"documentContent\":\"## Another Document\\nCode block below:\\n```js\\nconsole.log(\\\"Hello World\\\");\\n```\",\"formatStyle\":\"html\",\"maxLineWidth\":80,\"indentationSpaces\":4,\"preserveCodeBlocks\":true,\"applyHeadingStyles\":true}",
+          "description": "Convert markdown with code blocks to HTML format preserving code blocks and using 4 space indentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftReference",
+      "description": "Generates a structured draft reference document section based on provided metadata and descriptions. Accepts input details about an entity such as functions, classes, or APIs, and produces a formatted reference draft with summary, parameters, return values, and usage notes suitable for documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "entityName",
+          "type": "string",
+          "description": "The name of the entity to document (e.g., function, class or API name).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "entityType",
+          "type": "string",
+          "description": "The type of the entity such as 'function', 'class', 'method', or 'API'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A concise description summarizing the entity's purpose and functionality.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "parameters",
+          "type": "array",
+          "description": "An array of parameter objects with each containing 'name', 'type', and 'description' fields describing input parameters of the entity.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "returnValue",
+          "type": "object",
+          "description": "An object detailing the return type and description of the entity's output.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "examples",
+          "type": "array",
+          "description": "Optional array of usage example strings or code snippets illustrating how to use the entity.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "notes",
+          "type": "string",
+          "description": "Additional notes or remarks relevant to the entity or its usage.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A well-structured reference document draft including the entity name, type, description, parameters with details, return information, examples, and optional notes."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create initial drafts of technical reference documentation sections from structured metadata about functions, classes, or APIs to accelerate manual documentation writing or create baseline docs for review.",
+        "limitations": "This tool does not generate fully styled documentation nor integrate with documentation platforms; it produces raw draft text and structured data requiring further processing or formatting.",
+        "examples": [
+          "Draft a reference for a function named 'calculateSum' that adds two numbers.",
+          "Create a class reference section for 'UserManager' including its methods and usage notes.",
+          "Generate documentation draft for an API endpoint 'GET /users' describing its parameters and response format."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "reference",
+        "drafting",
+        "technical writing",
+        "API docs",
+        "code documentation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"entityName\":\"calculateSum\",\"entityType\":\"function\",\"description\":\"Calculates the sum of two numeric values.\",\"parameters\":[{\"name\":\"a\",\"type\":\"number\",\"description\":\"The first number.\"},{\"name\":\"b\",\"type\":\"number\",\"description\":\"The second number.\"}],\"returnValue\":{\"type\":\"number\",\"description\":\"The sum of a and b.\"},\"examples\":[\"calculateSum(2,3) returns 5\"],\"notes\":\"Ensure inputs are valid numbers.\"}",
+          "description": "Drafting a reference entry for a simple addition function including parameters and return value."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.formatReport",
+      "description": "Formats a raw report text or markdown input into a structured, styled document output. Accepts raw report content, applies specified formatting standards, optional templates, and outputs a well-organized report ready for publishing or sharing in HTML or PDF formats.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "reportContent",
+          "type": "string",
+          "description": "Raw content of the report in plain text or markdown to be formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFormat",
+          "type": "string",
+          "description": "Format of the input content, e.g., 'plaintext' or 'markdown'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the formatted report, e.g., 'html' or 'pdf'.",
+          "required": true,
+          "defaultValue": "html"
+        },
+        {
+          "name": "templateName",
+          "type": "string",
+          "description": "Optional name of the template to apply for formatting the report.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents in the output report.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "customStyles",
+          "type": "string",
+          "description": "Custom CSS or styling rules to apply in the formatted output (applicable for 'html' outputs).",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing the formatted report output and metadata, including the content as a string and the mimeType of the format produced."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a raw or markdown report needs to be converted into a professional, readable document format such as HTML or PDF with optional styling, templates, and table of contents insertion. Useful for preparing reports for stakeholders or publication.",
+        "limitations": "Does not generate report content from data, only formats given text. Complex custom templates beyond a provided set are not supported.",
+        "examples": [
+          "Format a markdown project status report into a styled HTML document with a table of contents.",
+          "Convert a raw plain-text audit report into a PDF formatted with a compliance template.",
+          "Apply custom CSS styling to a markdown technical report and output as HTML."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "formatting",
+        "report",
+        "markdown",
+        "html",
+        "pdf",
+        "template"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"reportContent\":\"# Monthly Sales Report\\n\\nSummary of sales data for the month.\\n- Total Sales: $500,000\\n- Region: North America\",\"inputFormat\":\"markdown\",\"outputFormat\":\"html\",\"templateName\":\"corporate\",\"includeTableOfContents\":true,\"customStyles\":\"body { font-family: Arial, sans-serif; }\"}",
+          "description": "Format a markdown sales report into HTML using the corporate template with TOC and custom styles."
+        },
+        {
+          "inputJson": "{\"reportContent\":\"Executive Summary:\\nThis is the summary of our quarterly results.\",\"inputFormat\":\"plaintext\",\"outputFormat\":\"pdf\",\"templateName\":\"executive\",\"includeTableOfContents\":false,\"customStyles\":\"\"}",
+          "description": "Convert a plain text executive summary report into a PDF with the executive template without table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "format",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftHeading",
+      "description": "Generates a formatted heading string for documentation based on specified heading text, level, and optional style preferences. Accepts plain text or markdown content as input, processes heading formatting including numbering and capitalization, and outputs a ready-to-insert heading line for use in markdown or other documentation formats.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "headingText",
+          "type": "string",
+          "description": "The main text content of the heading to be drafted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "headingLevel",
+          "type": "number",
+          "description": "The level of the heading, typically 1-6, determining the hierarchy and formatting style.",
+          "required": true,
+          "defaultValue": "1"
+        },
+        {
+          "name": "numbered",
+          "type": "boolean",
+          "description": "Whether to prefix the heading with an automatic numbering string (e.g., '1.', '2.1').",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "capitalize",
+          "type": "boolean",
+          "description": "Whether to capitalize the first letter of each word in the heading text.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The formatting style of the heading, such as 'markdown', 'html', or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted heading string ready to be embedded into documentation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate or suggest documentation headings dynamically, ensuring consistent formatting for hierarchical sections, optionally numbered and styled for markdown or other common documentation formats. Ideal for drafting structured outlines or sections on demand.",
+        "limitations": "Cannot generate complex heading markdown with embedded links or images; purely formats plain heading text with simple styles and numbering.",
+        "examples": [
+          "Generate a level 2 markdown heading titled 'Installation Guide' with numbering and capitalization.",
+          "Create a bold HTML level 1 heading for 'User Manual' without numbering.",
+          "Draft a plaintext level 3 heading titled 'API Reference' capitalized but without numbering."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "heading",
+        "drafting",
+        "markdown",
+        "formatting",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"headingText\":\"Introduction\",\"headingLevel\":1,\"numbered\":true,\"capitalize\":true,\"style\":\"markdown\"}",
+          "description": "Create a level 1 markdown heading 'Introduction' with numbering and capitalize each word."
+        },
+        {
+          "inputJson": "{\"headingText\":\"usage details\",\"headingLevel\":3,\"numbered\":false,\"capitalize\":false,\"style\":\"html\"}",
+          "description": "Draft an HTML level 3 heading 'usage details' without numbering and without capitalization."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftWord",
+      "description": "This tool accepts a word or phrase along with optional context and style parameters, and generates a professionally drafted definition, usage example, and notes suitable for inclusion in technical or software documentation. It processes input to produce consistent, clear, and concise word documentation entries.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "word",
+          "type": "string",
+          "description": "The word or term to be documented.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "context",
+          "type": "string",
+          "description": "Optional context or domain where the word is used (e.g., software, networking).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Style of the draft output (e.g., formal, conversational, technical).",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "includeExample",
+          "type": "boolean",
+          "description": "Whether to include a usage example for the word.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "includeNotes",
+          "type": "boolean",
+          "description": "Whether to include additional notes or related terms in the draft.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted word entry including definition, usage example, and notes."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate clear, concise, and consistent documentation entries for specific words or terms, especially technical jargon or domain-specific vocabulary, to assist in building glossaries or enhancing documentation quality.",
+        "limitations": "The tool does not generate definitions for highly ambiguous terms without adequate context or replace comprehensive human review for technical accuracy.",
+        "examples": [
+          "Draft a formal documentation entry for the word 'API' in a software development context.",
+          "Create a conversational style definition of 'Latency' including usage example.",
+          "Generate a concise definition for 'Firewall' without notes."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "drafting",
+        "word",
+        "definition",
+        "technical writing",
+        "content generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"word\":\"API\",\"context\":\"software development\",\"style\":\"formal\",\"includeExample\":true,\"includeNotes\":true}",
+          "description": "Draft a formal documentation entry for 'API' with example and notes in software development context."
+        },
+        {
+          "inputJson": "{\"word\":\"Latency\",\"context\":\"networking\",\"style\":\"conversational\",\"includeExample\":true,\"includeNotes\":false}",
+          "description": "Generate a conversational style definition of 'Latency' including usage example without notes."
+        },
+        {
+          "inputJson": "{\"word\":\"Firewall\",\"context\":\"security\",\"style\":\"technical\",\"includeExample\":false,\"includeNotes\":true}",
+          "description": "Create a technical style definition for 'Firewall' with notes but no usage example."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftTemplate",
+      "description": "This tool helps draft customizable document templates by accepting a template type, key sections, and optional placeholders. It processes the inputs to generate a structured document template in markdown or text format, suitable for use in standard documentation workflows.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "templateType",
+          "type": "string",
+          "description": "Type of the template to draft, e.g., 'Meeting Agenda', 'Project Plan', 'User Guide'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of strings representing the main sections or headings to include in the template.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "placeholders",
+          "type": "object",
+          "description": "Key-value pairs where keys are placeholders in the template and values describe what should replace them.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the template, such as 'markdown' or 'text'. Defaults to 'markdown'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted template as a string and metadata about the template."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create structured document templates to speed up documentation creation, enforce consistency, or standardize processes. Ideal for generating reusable skeletons for various document types with customizable sections and placeholders.",
+        "limitations": "It cannot fill in actual content for the sections; it only drafts the template structure. Complex formatting beyond markdown or plain text is not supported.",
+        "examples": [
+          "Draft a 'Project Plan' template with sections: Introduction, Timeline, Milestones, Risks.",
+          "Create a 'Meeting Agenda' template with customizable placeholders for date and participants.",
+          "Generate a 'User Guide' template in text format with sections for Overview, Installation, Usage, FAQ."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "template",
+        "drafting",
+        "markdown",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"templateType\":\"Meeting Agenda\",\"sections\":[\"Date and Time\",\"Participants\",\"Topics\",\"Action Items\"],\"placeholders\":{\"Date\":\"[Insert date]\",\"Participants\":\"[List participants]\"},\"format\":\"markdown\"}",
+          "description": "Draft a meeting agenda template with common sections and placeholders."
+        },
+        {
+          "inputJson": "{\"templateType\":\"Project Plan\",\"sections\":[\"Executive Summary\",\"Objectives\",\"Timeline\",\"Budget\"],\"format\":\"markdown\"}",
+          "description": "Draft a project plan template with main planning sections in markdown format."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftLink",
+      "description": "This tool drafts a markdown-formatted hyperlink for documentation content. It accepts a URL, display text for the link, optional tooltip title attribute, and a boolean to indicate if the link opens in a new tab. It outputs a properly formatted markdown link string that can be embedded directly in documentation files.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The web address that the markdown link will point to.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "displayText",
+          "type": "string",
+          "description": "The text to be displayed for the link in markdown.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tooltip",
+          "type": "string",
+          "description": "Optional tooltip text shown on hover over the link.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "openInNewTab",
+          "type": "boolean",
+          "description": "Whether the link should open in a new tab when clicked (rendered as HTML attribute in extended markdown).",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the markdown string of the drafted link under the 'markdownLink' property."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or updating documentation that requires properly formatted hyperlinks. It ensures consistent markdown syntax for links with optional tooltips and controls whether links open in new tabs, which is important for user experience in documentation systems.",
+        "limitations": "This tool only creates markdown formatted links, it does not validate the URL format or check link accessibility.",
+        "examples": [
+          "Generate a markdown link to 'https://example.com' with display text 'Example Website' and a tooltip 'Visit the example site'.",
+          "Create a link to internal documentation at '/docs/setup' with display text 'Setup Guide' that opens in the same tab."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "markdown",
+        "link",
+        "drafting",
+        "content",
+        "hyperlink"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://openai.com\",\"displayText\":\"OpenAI\",\"tooltip\":\"AI research lab\",\"openInNewTab\":true}",
+          "description": "Creates a markdown link to OpenAI's homepage with a tooltip and configured to open in a new tab."
+        },
+        {
+          "inputJson": "{\"url\":\"/docs/api-reference\",\"displayText\":\"API Reference\",\"tooltip\":\"Detailed API info\",\"openInNewTab\":false}",
+          "description": "Drafts an internal documentation link to the API reference page that opens in the same tab."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftQuote",
+      "description": "This tool generates a well-structured and contextually relevant quote or testimonial for documentation or promotional materials. Input parameters include the subject or topic, tone, length, and optional author attribution. The tool processes the input to produce a clear, concise quote suitable for embedding in documentation or marketing content.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "The main topic or theme of the quote to generate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone of the quote, e.g., inspirational, professional, casual.",
+          "required": false,
+          "defaultValue": "professional"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate length of the quote in words.",
+          "required": false,
+          "defaultValue": "20"
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Optional author name to attribute the quote to.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated quote text, its tone, length, and optional author attribution."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce concise, meaningful quotes for product documentation, marketing materials, or user testimonials that align with the desired tone and thematic focus. It helps to enrich content with engaging, professional quotes without manually crafting them.",
+        "limitations": "This tool does not guarantee factual attributions or original quotes; it generates plausible text that may need review. It is not a source for verified quotations from external sources.",
+        "examples": [
+          "Generate a professional quote about teamwork in software development.",
+          "Create an inspirational quote about innovation attributed to a founder.",
+          "Draft a brief, casual quote about user experience improvements."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "quote",
+        "content generation",
+        "marketing",
+        "testimonial",
+        "drafting",
+        "text synthesis"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"subject\":\"collaborative software development\",\"tone\":\"professional\",\"length\":25,\"author\":\"Jane Doe\"}",
+          "description": "Generate a professional, approximately 25-word quote about collaborative software development attributed to Jane Doe."
+        },
+        {
+          "inputJson": "{\"subject\":\"innovation\",\"tone\":\"inspirational\",\"length\":20,\"author\":\"\"}",
+          "description": "Generate a 20-word inspirational quote about innovation with no author attribution."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftSentence",
+      "description": "Generates a well-structured and context-appropriate sentence for documentation based on a given topic and writing style. Accepts key points or a brief description and outputs a polished sentence to help streamline documentation drafting.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or concept the sentence should address in the documentation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "context",
+          "type": "string",
+          "description": "Additional context or background information to tailor the sentence appropriately.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "writingStyle",
+          "type": "string",
+          "description": "Preferred writing style or tone, such as formal, casual, technical, or simple.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Intended audience for the documentation, e.g., developers, end-users, or managers.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted sentence as a string under the key 'sentence'. This sentence is suitable for inclusion in documentation content."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate clear, precise, and contextually relevant sentences for documentation, especially to articulate concepts succinctly or to rephrase key points into polished sentences. It helps speed up documentation creation or improvement by automating sentence drafts tailored to style and audience.",
+        "limitations": "This tool cannot generate full paragraphs or entire documentation sections and may not perfectly capture highly specialized domain jargon without detailed context input.",
+        "examples": [
+          "Draft a technical sentence explaining API authentication.",
+          "Create a user-friendly sentence describing software installation prerequisites.",
+          "Generate a formal sentence outlining data privacy considerations for managers."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "drafting",
+        "sentence-generation",
+        "writing-assistance",
+        "technical-writing",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"API authentication using OAuth 2.0\",\"context\":\"security best practices for web services\",\"writingStyle\":\"technical\",\"targetAudience\":\"developers\"}",
+          "description": "Generate a technical sentence about API authentication for developer documentation."
+        },
+        {
+          "inputJson": "{\"topic\":\"software installation prerequisites\",\"writingStyle\":\"casual\",\"targetAudience\":\"end-users\"}",
+          "description": "Create a casual sentence describing prerequisites for installing software aimed at end-users."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftFAQ",
+      "description": "Generates a draft FAQ document based on provided topic and related questions. Accepts a topic string and an optional list of common questions to cover; the tool creates clear question-and-answer pairs designed for user-facing documentation or support pages.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The central subject or domain for the FAQ (e.g., a product name or feature).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "commonQuestions",
+          "type": "array",
+          "description": "An optional list of questions (strings) to include in the FAQ. If empty, the tool infers common questions automatically.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language code (e.g., 'en' for English) in which to draft the FAQ. Default is English.",
+          "required": false,
+          "defaultValue": "\"en\""
+        },
+        {
+          "name": "includeShortAnswers",
+          "type": "boolean",
+          "description": "Whether to produce concise answers (true) or detailed explanations (false). Default is true for brevity.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted FAQ as an array of Q&A pairs with question and answer fields."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create a preliminary FAQ document to assist users or customers based on a topic and optional questions, especially during documentation creation or support content generation. It expedites drafting by providing well-structured common Q&A pairs for review and refinement.",
+        "limitations": "This tool generates draft content and may require human editing for domain-specific accuracy, tone, and detail. It cannot replace expert validation or personalized support answers.",
+        "examples": [
+          "Draft an FAQ for a new photo editing app.",
+          "Generate common questions and answers about the installation process of software.",
+          "Create a brief FAQ in Spanish about account security features."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "FAQ",
+        "drafting",
+        "support",
+        "content-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"PhotoPro app\",\"commonQuestions\":[\"How do I save my edited photos?\",\"Does the app support RAW images?\"],\"language\":\"en\",\"includeShortAnswers\":true}",
+          "description": "Draft an English FAQ for the PhotoPro app with two specific questions, producing concise answers."
+        },
+        {
+          "inputJson": "{\"topic\":\"SecureMail service\",\"commonQuestions\":[],\"language\":\"en\",\"includeShortAnswers\":false}",
+          "description": "Create a detailed FAQ for SecureMail service with auto-inferred common questions in English."
+        },
+        {
+          "inputJson": "{\"topic\":\"Cuenta Seguridad\",\"commonQuestions\":[\"¿Cómo cambio mi contraseña?\"],\"language\":\"es\",\"includeShortAnswers\":true}",
+          "description": "Generate a brief FAQ in Spanish about account security including a specific question about password change."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftParagraph",
+      "description": "Generates a well-structured paragraph for documentation based on a specified topic and optional writing style or tone guidance. Accepts key topic keywords and style preferences, then drafts a coherent paragraph suitable for inclusion in technical, user, or API documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topicKeywords",
+          "type": "array",
+          "description": "List of keywords or phrases that define the main concepts or subject matter to include in the paragraph.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "documentationType",
+          "type": "string",
+          "description": "Type of documentation, e.g., 'user-guide', 'API-reference', 'technical-overview', which influences the language and complexity.",
+          "required": false,
+          "defaultValue": "user-guide"
+        },
+        {
+          "name": "writingStyle",
+          "type": "string",
+          "description": "Optional style or tone for the paragraph, such as 'formal', 'concise', 'friendly', or 'detailed'.",
+          "required": false,
+          "defaultValue": "concise"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of words the generated paragraph should have.",
+          "required": false,
+          "defaultValue": "150"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include a short example or code snippet related to the topic in the paragraph.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated paragraph as a string under 'paragraph' key, optionally including an example snippet if requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when the AI agent needs to generate clear, informative paragraphs for various types of documentation based on specified topics and style requirements, to quickly produce draft content for manuals, guides, or API docs.",
+        "limitations": "Does not generate multi-paragraph sections or entire documents; focuses only on drafting a single coherent paragraph. May need further human editing for accuracy and style consistency.",
+        "examples": [
+          "Draft a concise paragraph explaining the concept of REST APIs for an API reference.",
+          "Create a friendly and detailed paragraph on user login procedures for a user guide.",
+          "Generate a technical overview paragraph on database indexing including a simple example if applicable."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "drafting",
+        "content-generation",
+        "technical-writing",
+        "paragraph",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topicKeywords\":[\"REST API\",\"endpoints\",\"HTTP methods\"],\"documentationType\":\"API-reference\",\"writingStyle\":\"concise\",\"maxLength\":120,\"includeExamples\":true}",
+          "description": "Generate a concise API reference paragraph explaining REST APIs, including a brief example."
+        },
+        {
+          "inputJson": "{\"topicKeywords\":[\"user login\",\"authentication\",\"security\"],\"documentationType\":\"user-guide\",\"writingStyle\":\"friendly\",\"maxLength\":150,\"includeExamples\":false}",
+          "description": "Draft a friendly user guide paragraph about user login and authentication security."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftChecklist",
+      "description": "Generates a structured checklist document tailored to a specific domain or project by accepting a list of key tasks or criteria, optional priorities, and formatting preferences. Outputs a formatted checklist useful for tracking progress, ensuring completeness, or verifying requirements.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "domain",
+          "type": "string",
+          "description": "The specific domain or subject area for which the checklist is to be drafted (e.g., software deployment, event planning).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tasks",
+          "type": "array",
+          "description": "An array of tasks or criteria items to include in the checklist, each as a string.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "priorityLevels",
+          "type": "array",
+          "description": "Optional array specifying priority levels corresponding to each task (e.g., High, Medium, Low). If empty or not provided, all tasks will have equal priority.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeInstructions",
+          "type": "boolean",
+          "description": "Flag determining whether to add brief instructions or tips below each checklist item to guide the user.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "Preferred output format style for the checklist, such as 'markdown', 'html', or 'plainText'. Defaults to 'markdown'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the checklist as a formatted string under 'formattedChecklist', and metadata including total number of tasks and domain."
+      },
+      "aiAgent": {
+        "useCase": "This tool is ideal when an AI agent needs to create clear and structured checklists for project management, quality assurance, or any process that benefits from defined steps or criteria. It supports customization by domain and output format to suit diverse documentation purposes.",
+        "limitations": "The tool cannot automatically generate task items; it requires provided task inputs. It does not assess task correctness or dependencies and does not replace detailed procedural documentation.",
+        "examples": [
+          "Draft a checklist for deploying a software application including tasks like code review, unit testing, staging deployment, and monitoring setup.",
+          "Create an event planning checklist with priority levels and instructions for each task, output in HTML format.",
+          "Generate a simple plain text checklist for daily personal productivity tasks without additional instructions."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "checklist",
+        "taskManagement",
+        "projectPlanning",
+        "formatting",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"domain\":\"software deployment\",\"tasks\":[\"Code review\",\"Unit testing\",\"Build application\",\"Deploy to staging\",\"Run integration tests\",\"Deploy to production\",\"Monitor system health\"],\"priorityLevels\":[\"High\",\"High\",\"Medium\",\"High\",\"High\",\"High\",\"Medium\"],\"includeInstructions\":true,\"formatStyle\":\"markdown\"}",
+          "description": "Create a detailed markdown checklist for software deployment tasks with priorities and instructions."
+        },
+        {
+          "inputJson": "{\"domain\":\"event planning\",\"tasks\":[\"Book venue\",\"Arrange catering\",\"Send invites\",\"Prepare agenda\",\"Confirm audio/visual equipment\"],\"priorityLevels\":[\"High\",\"Medium\",\"High\",\"Low\",\"Medium\"],\"includeInstructions\":false,\"formatStyle\":\"html\"}",
+          "description": "Generate an HTML formatted checklist for event planning tasks without instructions but with priority assignments."
+        },
+        {
+          "inputJson": "{\"domain\":\"daily personal productivity\",\"tasks\":[\"Check email\",\"Plan day\",\"Complete main task\",\"Review progress\",\"Organize workspace\"],\"includeInstructions\":false,\"formatStyle\":\"plainText\"}",
+          "description": "Produce a plain text checklist for daily personal productivity without priority levels or instructions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftText",
+      "description": "This tool accepts a text prompt describing the content and style desired, along with optional context such as document type and target audience. It uses natural language generation to produce a coherent draft text segment suitable for inclusion in documentation, supporting clear, structured professional writing. The output is draft text ready for review and editing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "prompt",
+          "type": "string",
+          "description": "A natural language description or instructions for the draft content to be generated. It guides the tone, topic, and detail level of the draft.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "documentType",
+          "type": "string",
+          "description": "Type of document for which the text is intended, e.g., user manual, API reference, FAQ, design doc. Helps tailor style and terminology.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "audience",
+          "type": "string",
+          "description": "Intended audience for the draft text, e.g., end users, developers, managers. Influences complexity and formality.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Desired approximate length of the draft text in words or sentences (interpretation depending on implementation).",
+          "required": false,
+          "defaultValue": "100"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include examples or code snippets in the draft text when relevant.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated draft text suitable for insertion into a document or further editing."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate initial written content for documentation based on a conceptual prompt or topic, enabling faster drafting of structured, context-aware text segments that can be edited later. It helps in creating descriptions, explanations, or procedural text consistent with the specified document type and audience.",
+        "limitations": "The tool can generate a draft text but cannot verify factual accuracy or domain-specific technical correctness. It does not replace expert review or detailed manual editing. It may produce generic or incomplete content that requires refinement.",
+        "examples": [
+          "Draft a user guide introduction explaining how to set up an application for novice users.",
+          "Generate an API reference description for a 'createUser' function outlining parameters and usage.",
+          "Create a troubleshooting FAQ entry explaining common network connection errors and fixes."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "drafting",
+        "text generation",
+        "content creation",
+        "technical writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"prompt\":\"Write an introduction paragraph for a user manual of a photo editing app.\",\"documentType\":\"user manual\",\"audience\":\"end users\",\"length\":150,\"includeExamples\":false}",
+          "description": "Generating an introductory paragraph for a user manual to help new users understand the app's purpose."
+        },
+        {
+          "inputJson": "{\"prompt\":\"Describe the function processPayment with its parameters and possible errors.\",\"documentType\":\"API reference\",\"audience\":\"developers\",\"length\":80,\"includeExamples\":true}",
+          "description": "Drafting an API reference entry describing a payment processing function, including usage examples."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftReadme",
+      "description": "Generates a draft README.md file for a project based on provided project details including name, description, installation instructions, usage examples, and license information. It accepts structured input and produces a well-organized markdown document outlining key project information suitable for GitHub or other repositories.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The full name of the project or repository to include as the README title.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "projectDescription",
+          "type": "string",
+          "description": "A brief overview describing the purpose and functionality of the project.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "installationInstructions",
+          "type": "string",
+          "description": "Step-by-step commands or notes to install the project or dependencies.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "usageExamples",
+          "type": "string",
+          "description": "Example commands or code snippets showing how to use the project effectively.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "licenseType",
+          "type": "string",
+          "description": "The license under which the project is released, e.g., MIT, GPL-3.0, Apache-2.0.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contributingGuidelines",
+          "type": "string",
+          "description": "Instructions or guidelines for how others can contribute to the project.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeBadgeUrls",
+          "type": "array",
+          "description": "An array of URLs for badges (e.g., build status, coverage) to include at the top of the README.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete README markdown content as a string with sections formatted and structured."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically generate or update a README.md for a software project using structured project details. It helps create a standardized, clear, and informative README quickly without manual markdown formatting.",
+        "limitations": "This tool does not verify the accuracy or currency of the provided content. It cannot generate complex documentation beyond a basic README structure, nor does it fetch dynamic data such as badges or usage metrics automatically.",
+        "examples": [
+          "Generate a README draft given project name and description.",
+          "Create README including installation and usage instructions.",
+          "Produce a README with license and contribution sections from input data."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "readme",
+        "markdown",
+        "project-info",
+        "automation",
+        "software",
+        "project",
+        "docs"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"AwesomeLib\",\"projectDescription\":\"A library that simplifies data processing tasks.\",\"installationInstructions\":\"npm install awesomelib\",\"usageExamples\":\"import { process } from 'awesomelib';\\nprocess(data);\",\"licenseType\":\"MIT\",\"contributingGuidelines\":\"Please submit pull requests for bug fixes or features.\",\"includeBadgeUrls\":[\"https://img.shields.io/badge/build-passing-brightgreen.svg\"]}",
+          "description": "Draft README for 'AwesomeLib' with installation, usage, license, contribution guidelines, and a build status badge."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftTranscript",
+      "description": "This tool accepts audio or video files containing spoken content along with optional speaker metadata. It processes the input by generating a time-coded, text-based transcript that distinguishes speakers, segments dialogue, and optionally summarizes sections. The output is a structured transcript document suitable for documentation or records.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "mediaFileUrl",
+          "type": "string",
+          "description": "URL or path to the audio or video file to be transcribed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code of the spoken content to guide transcription accuracy.",
+          "required": false,
+          "defaultValue": "en-US"
+        },
+        {
+          "name": "speakerMetadata",
+          "type": "object",
+          "description": "Optional mapping of speaker labels to full names or roles for clear identification in the transcript.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTimestamps",
+          "type": "boolean",
+          "description": "Flag to include timestamps for each utterance segment in the transcript output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "summaryLevel",
+          "type": "string",
+          "description": "Level of summarization to apply to transcript sections; options: none, brief, detailed.",
+          "required": false,
+          "defaultValue": "none"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a structured transcript object including an array of dialogue segments with speaker labels, text, timestamps if requested, and optional summary sections."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert audio or video meeting recordings, interviews, or presentations into detailed, speaker-attributed text documents for documentation, review, or publication. It supports inclusion of timestamps and summaries to enhance usability.",
+        "limitations": "This tool does not perform real-time transcription and requires input media URL. It may have reduced accuracy with poor audio quality or overlapping speech. It does not translate languages or generate captions.",
+        "examples": [
+          "Generate a transcript with speaker names from a recorded project meeting video.",
+          "Create a transcript of a podcast episode including timestamps and a brief summary of each segment.",
+          "Draft an interview transcript given audio file and speaker role metadata."
+        ]
+      },
+      "tags": [
+        "transcription",
+        "documentation",
+        "audio",
+        "video",
+        "meeting",
+        "interview",
+        "summarization",
+        "speaker-identification"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mediaFileUrl\":\"https://example.com/meeting1.mp4\",\"language\":\"en-US\",\"speakerMetadata\":{\"spk1\":\"Alice, Project Manager\",\"spk2\":\"Bob, Developer\"},\"includeTimestamps\":true,\"summaryLevel\":\"brief\"}",
+          "description": "Transcribe a project meeting video with speaker names, timestamps, and brief summaries."
+        },
+        {
+          "inputJson": "{\"mediaFileUrl\":\"https://podcast.example.com/episode5.mp3\",\"language\":\"en-US\",\"includeTimestamps\":false,\"summaryLevel\":\"detailed\"}",
+          "description": "Transcribe a podcast episode audio with detailed section summaries but no timestamps."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftBrief",
+      "description": "Generates a concise and structured brief document based on provided inputs such as topic, key points, length preference, and target audience. Processes raw textual inputs and contextual parameters to produce a well-formatted summary brief suitable for internal or external communication.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or title of the brief document to create.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "An array of strings listing essential points or ideas to include in the brief.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "lengthInSentences",
+          "type": "number",
+          "description": "Approximate desired length of the brief in number of sentences.",
+          "required": false,
+          "defaultValue": "5"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience to tailor tone and detail level (e.g., executives, technical team).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "Preferred formatting style for the brief output (e.g., bullet points, paragraphs).",
+          "required": false,
+          "defaultValue": "paragraphs"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the completed brief document as a string and metadata including the actual sentence count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create a clear, concise, and structured brief summary document tailored to a specific topic and audience, helping to automate documentation or communication tasks where concise information distillation is needed.",
+        "limitations": "This tool does not generate detailed reports or full comprehensive documents; it focuses solely on short summaries or briefs. It may not capture highly technical details accurately without input key points.",
+        "examples": [
+          "Draft a brief about the new product launch focused on key features for the marketing team.",
+          "Create a 3 sentence brief summarizing project milestones for executive stakeholders.",
+          "Generate a bullet-point summary brief explaining compliance updates to legal advisors."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "brief",
+        "summary",
+        "drafting",
+        "communication",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Quarterly Sales Update\",\"keyPoints\":[\"Sales increased by 15% compared to last quarter\",\"New product line contributed 40% of sales\",\"Expansion into new markets successful\"],\"lengthInSentences\":4,\"targetAudience\":\"Sales Team\",\"formatStyle\":\"paragraphs\"}",
+          "description": "Create a 4-sentence brief summarizing the quarterly sales update for the sales team."
+        },
+        {
+          "inputJson": "{\"topic\":\"Cybersecurity Policy Changes\",\"keyPoints\":[\"Two-factor authentication is now mandatory\",\"Password changes every 90 days\",\"Incident response procedures updated\"],\"lengthInSentences\":5,\"targetAudience\":\"All employees\",\"formatStyle\":\"bullet points\"}",
+          "description": "Generate a 5-sentence bullet point brief on updated cybersecurity policies aimed at all employees."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftSummary",
+      "description": "This tool accepts a textual document or multiple documents as input and generates a concise, clear summary highlighting key points and essential information. It processes the input text using natural language understanding techniques focused on summarization and outputs a readable, structured summary suitable for documentation purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "documents",
+          "type": "array",
+          "description": "An array of textual document strings to be summarized. Each element should be a plain text paragraph or document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxSummaryLength",
+          "type": "number",
+          "description": "Maximum length of the generated summary in words. Controls summary brevity.",
+          "required": false,
+          "defaultValue": "150"
+        },
+        {
+          "name": "highlightKeyPoints",
+          "type": "boolean",
+          "description": "If true, the summary will include clearly marked key points or bullet points for easier digestion.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code of input documents (e.g., 'en' for English). Determines language model used for summarization.",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated summary text and optionally an array of extracted key points if requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create a concise summary from one or multiple text documents to aid in documentation, report drafting, or information distillation. Ideal for summarizing meeting notes, technical docs, or research papers where a brief but comprehensive digest is required.",
+        "limitations": "This tool cannot verify factual accuracy beyond the input texts nor can it generate summaries for non-text inputs such as images or videos. Very domain-specific jargon may reduce summary quality without customization.",
+        "examples": [
+          "Summarize the key points from these technical requirement documents.",
+          "Create a short summary highlighting the main ideas of the project proposal text.",
+          "Generate a concise overview of a collection of user feedback comments."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "summarization",
+        "text-processing",
+        "summary",
+        "natural-language",
+        "drafting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"documents\":[\"This documentation explains the installation process for the software including prerequisites, steps to follow, and troubleshooting tips.\"],\"maxSummaryLength\":100,\"highlightKeyPoints\":true,\"language\":\"en\"}",
+          "description": "Summarizing a single installation procedure document with key points highlighted."
+        },
+        {
+          "inputJson": "{\"documents\":[\"The project aims to improve data security by implementing multi-factor authentication.\",\"User access roles will be strictly defined to limit data exposure.\"],\"maxSummaryLength\":120,\"highlightKeyPoints\":false,\"language\":\"en\"}",
+          "description": "Summarizing multiple short project update statements without bullet points."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftMinutes",
+      "description": "This tool generates a draft of meeting minutes based on provided meeting details such as agenda, participants, and discussion points. It processes input data to produce a structured summary including action items, decisions made, and next steps formatted as professional meeting minutes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "meetingTitle",
+          "type": "string",
+          "description": "The title or subject of the meeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "meetingDate",
+          "type": "string",
+          "description": "The date when the meeting took place, in ISO 8601 format (e.g., 2024-06-01).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "participants",
+          "type": "array",
+          "description": "List of participants' names attending the meeting.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "agendaItems",
+          "type": "array",
+          "description": "List of agenda points or topics discussed during the meeting.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "discussionPoints",
+          "type": "array",
+          "description": "Detailed notes or summarized points discussed under each agenda item.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "actionItems",
+          "type": "array",
+          "description": "Items assigned to participants as tasks with responsible person and deadline.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "decisionsMade",
+          "type": "array",
+          "description": "Summary of key decisions made during the meeting.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "nextMeetingDate",
+          "type": "string",
+          "description": "Optional date of the next meeting if scheduled, in ISO 8601 format.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted meeting minutes with sections for title, date, participants, agenda, discussion summary, action items, decisions, and next meeting info."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to convert structured or semi-structured meeting input data into a formal, human-readable draft of meeting minutes, which summarizes discussions, captures decisions and action items clearly for record keeping and follow-up.",
+        "limitations": "The tool cannot record audio or transcripts automatically, nor does it validate factual accuracy; it relies on provided inputs being accurate and comprehensive.",
+        "examples": [
+          "Generate draft minutes for a project kickoff meeting with agenda and outcomes.",
+          "Create meeting minutes summarizing discussion points and listing action items from a team meeting.",
+          "Draft minutes from a client meeting including decisions made and follow-up tasks."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "meetings",
+        "minutes",
+        "summary",
+        "action-items",
+        "decisions"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"meetingTitle\":\"Sprint Planning\",\"meetingDate\":\"2024-06-01\",\"participants\":[\"Alice\",\"Bob\",\"Charlie\"],\"agendaItems\":[\"Review last sprint\",\"Plan next sprint\"],\"discussionPoints\":[\"Discussed completed tasks from last sprint.\",\"Prioritized backlog for next sprint.\"],\"actionItems\":[{\"task\":\"Update project timeline\",\"assignee\":\"Bob\",\"deadline\":\"2024-06-05\"}],\"decisionsMade\":[\"Finalize backlogged features for next sprint.\"],\"nextMeetingDate\":\"2024-06-08\"}",
+          "description": "Draft minutes for a sprint planning meeting with agenda topics, discussion points, one action item, and a decision."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftBlogPost",
+      "description": "Drafts an initial blog post based on a given topic, target audience, and optional style guidelines. The tool accepts a topic, key points, desired tone, and length, then generates a structured blog post draft including an introduction, body, and conclusion suitable for review and editing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme of the blog post to be drafted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "An array of key points or ideas to be covered within the blog post.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended readers to tailor the content's tone and complexity (e.g., beginners, professionals).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone of the blog post such as casual, formal, persuasive, or informative.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate target length of the blog post in words.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "includeCallToAction",
+          "type": "boolean",
+          "description": "Whether to include a call to action at the end of the blog post.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the drafted blog post text, structured into sections such as introduction, body paragraphs, and conclusion."
+      },
+      "aiAgent": {
+        "useCase": "This tool is useful when an AI agent needs to create a comprehensive blog post draft from minimal input, supporting content creation workflows for marketing, documentation, or informational websites. It's ideal for quickly generating readable, structured text tailored to a specific audience and style.",
+        "limitations": "The tool cannot replace human proofreading or fact-checking and may produce generic content that requires customization. It does not generate images or media and may not fully capture highly specialized topics without detailed input.",
+        "examples": [
+          "Draft a blog post on the benefits of remote work for tech professionals, with a friendly and approachable tone.",
+          "Create an informative blog article about the latest cybersecurity best practices targeted at small business owners.",
+          "Generate a 1000-word technical blog post on containerization using Docker, aimed at intermediate developers."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "blog",
+        "content-creation",
+        "drafting",
+        "writing",
+        "marketing",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"The future of renewable energy\",\"keyPoints\":[\"solar advancements\",\"wind technology\",\"government policies\"],\"targetAudience\":\"general public\",\"tone\":\"informative\",\"length\":700,\"includeCallToAction\":true}",
+          "description": "Draft an informative blog post about emerging renewable energy technologies for the general public, including a call to action."
+        },
+        {
+          "inputJson": "{\"topic\":\"How to improve cybersecurity for remote teams\",\"keyPoints\":[\"VPN usage\",\"two-factor authentication\",\"regular updates\"],\"targetAudience\":\"IT managers\",\"tone\":\"formal\",\"length\":900,\"includeCallToAction\":false}",
+          "description": "Create a formal, detailed blog post on cybersecurity measures specific to remote teams aimed at IT managers without a call to action."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftInvoice",
+      "description": "This tool drafts a professional invoice document from provided billing data, client information, itemized charges, tax rates, and payment terms. It processes input parameters to organize and calculate totals, then outputs a structured invoice document in JSON format suitable for review or further formatting.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "invoiceNumber",
+          "type": "string",
+          "description": "Unique identifier for the invoice, required for reference and tracking.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "issueDate",
+          "type": "string",
+          "description": "Date when the invoice is issued, formatted as ISO 8601 (YYYY-MM-DD).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dueDate",
+          "type": "string",
+          "description": "Payment due date for the invoice, formatted as ISO 8601 (YYYY-MM-DD).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sellerInfo",
+          "type": "object",
+          "description": "Information about the seller including name, address, contact details.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "buyerInfo",
+          "type": "object",
+          "description": "Information about the buyer including name, address, and contact details.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "lineItems",
+          "type": "array",
+          "description": "List of itemized charges including description, quantity, unit price, and optional discount per item.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "taxRate",
+          "type": "number",
+          "description": "Applicable tax rate as a decimal (e.g., 0.1 for 10%) applied on subtotal.",
+          "required": false,
+          "defaultValue": "0"
+        },
+        {
+          "name": "paymentTerms",
+          "type": "string",
+          "description": "Terms and conditions of payment such as accepted methods and late fees.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured invoice object including totals, tax calculations, and all provided details for formal documentation or presentation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool whenever you need to generate a complete, professional invoice document from structured data about seller, buyer, and items purchased. It is ideal for automating billing document preparation in business systems, financial applications, or customer service settings.",
+        "limitations": "This tool does not produce formatted PDF or visual documents; it outputs structured invoice data. It does not handle currency conversions, payment processing, or legal compliance validations.",
+        "examples": [
+          "Generate an invoice for client Acme Corp with three purchased items and 15% tax.",
+          "Draft an invoice using provided seller and buyer information, specifying payment terms as 'net 30' days.",
+          "Create an invoice for freelance services rendered with detailed line items and no tax."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "invoice",
+        "billing",
+        "finance",
+        "automation",
+        "document-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"invoiceNumber\":\"INV-1001\",\"issueDate\":\"2024-06-15\",\"dueDate\":\"2024-07-15\",\"sellerInfo\":{\"name\":\"Tech Solutions Ltd.\",\"address\":\"123 Innovation Drive, Tech City\",\"contact\":\"contact@techsolutions.com\"},\"buyerInfo\":{\"name\":\"Acme Corporation\",\"address\":\"456 Commerce St, Business Town\",\"contact\":\"accounts@acmecorp.com\"},\"lineItems\":[{\"description\":\"Software Development Services\",\"quantity\":100,\"unitPrice\":75.00},{\"description\":\"Hosting Fees\",\"quantity\":12,\"unitPrice\":20.00}],\"taxRate\":0.15,\"paymentTerms\":\"Net 30 days\"}",
+          "description": "Generate an invoice for a software services company billing Acme Corporation with line items and tax applied."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Invoice",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftReport",
+      "description": "Generates a structured draft report based on provided input data and template parameters. Accepts raw data and user instructions to format sections, include summaries, and produce a cohesive report draft in markdown or plain text format.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the report to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section objects, each with a heading and body content to include in the report.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "summary",
+          "type": "string",
+          "description": "A brief summary or executive overview to prepend in the report.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The output format of the draft report, e.g., 'markdown' or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Flag to indicate if a table of contents should be generated at the start of the report.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the full draft report as a string, formatted per the chosen format, along with metadata such as the word count and the total number of sections included."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate a first draft for structured reports such as project status, research summaries, or business reviews from raw input data and optional summary instructions. It helps quickly create an organized baseline document that can be manually refined later.",
+        "limitations": "This tool cannot perform deep content analysis, validate factual correctness, or replace expert review. It produces draft text based on inputs and formatting rules but does not finalize or polish stylistic elements perfectly.",
+        "examples": [
+          "Create a draft report titled 'Q2 Sales Overview' with three sections covering revenue, expenses, and projections, including a summary executive overview.",
+          "Generate a plaintext draft report with a custom summary and no table of contents for a research findings document.",
+          "Produce a markdown report draft with multiple sections inputted as objects, expecting a formatted toc at the start."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "report",
+        "drafting",
+        "automation",
+        "formatting",
+        "markdown",
+        "summary"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Monthly Project Status\",\"sections\":[{\"heading\":\"Introduction\",\"body\":\"Project alpha started in January with initial milestones met.\"},{\"heading\":\"Progress\",\"body\":\"As of March, 70% of development tasks are done.\"},{\"heading\":\"Risks\",\"body\":\"Potential risk with supply chain delays remains.\"}],\"summary\":\"This report outlines the current status and risks for Project Alpha.\",\"format\":\"markdown\",\"includeTableOfContents\":true}",
+          "description": "Generating a markdown draft report for a monthly project status with table of contents and a summary."
+        },
+        {
+          "inputJson": "{\"title\":\"Research Findings Summary\",\"sections\":[{\"heading\":\"Methodology\",\"body\":\"Data collected through surveys and interviews.\"},{\"heading\":\"Key Results\",\"body\":\"Significant increase in user engagement noted.\"}],\"summary\":\"Brief summary of research findings.\",\"format\":\"plaintext\",\"includeTableOfContents\":false}",
+          "description": "Creating a plaintext draft report summarizing research findings without a table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftArticle",
+      "description": "Generates a draft article based on a provided topic, target audience, and optional key points. Accepts a topic string, optional target audience description, an array of key points to include, and preferred article length. Produces a structured draft article with title, introduction, body paragraphs, and conclusion.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or title of the article to be drafted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience for tailoring the language and focus, e.g., 'beginners', 'developers'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "An array of important subtopics or points to ensure inclusion within the article body.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "articleLength",
+          "type": "number",
+          "description": "Desired approximate length of the article in words (e.g., 500, 1000); helps control detail level.",
+          "required": false,
+          "defaultValue": "800"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the draft article structured into 'title', 'introduction', 'body' (array of paragraphs), and 'conclusion' fields."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a first draft of an article or documentation piece given a topic and optional context. Ideal for speeding up content creation workflows by producing coherent, structured drafts that can be further edited.",
+        "limitations": "This tool cannot replace human editing or expert knowledge review. It produces drafts based on input parameters and common knowledge but may miss domain-specific nuances or require fact checking.",
+        "examples": [
+          "Draft an article about 'Agile Software Development' for beginner developers including key points on Scrum and Kanban.",
+          "Produce a 1000-word article on 'Cloud Security Best Practices' for IT professionals, focusing on data protection and identity management.",
+          "Create a brief article on 'Benefits of Remote Work' for a general audience without specific key points."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "article",
+        "drafting",
+        "content-generation",
+        "writing",
+        "technical-writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Introduction to Machine Learning\",\"targetAudience\":\"beginners in data science\",\"keyPoints\":[\"Supervised learning\",\"Unsupervised learning\",\"Common applications\"],\"articleLength\":700}",
+          "description": "Generate a 700-word draft article introducing machine learning concepts tailored to beginners, covering specified key points."
+        },
+        {
+          "inputJson": "{\"topic\":\"Solar Energy Trends 2024\",\"targetAudience\":\"environmental researchers\",\"keyPoints\":[\"Technological advances\",\"Market growth\",\"Policy impacts\"],\"articleLength\":900}",
+          "description": "Draft a 900-word article on solar energy trends for environmental researchers, ensuring coverage of technology, market, and policy."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftResume",
+      "description": "This tool accepts user-provided career and education details along with preferences such as resume style and target job role, then generates a professional, well-structured resume in text or PDF format. It processes input data to create sections like summary, experience, skills, and education tailored to the specified role.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "fullName",
+          "type": "string",
+          "description": "Applicant's full name to display prominently on the resume.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contactInformation",
+          "type": "object",
+          "description": "Contact details including email, phone number, and optionally LinkedIn or portfolio URLs.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "professionalSummary",
+          "type": "string",
+          "description": "A brief summary or objective statement highlighting the applicant's career goals and key qualifications.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "workExperience",
+          "type": "array",
+          "description": "List of previous job experiences including title, company, duration, and key accomplishments.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "education",
+          "type": "array",
+          "description": "Academic qualifications including degree, institution, years attended, and honors if any.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "skills",
+          "type": "array",
+          "description": "Core professional and technical skills relevant to the target job.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "resumeStyle",
+          "type": "string",
+          "description": "Preferred resume format style such as 'chronological', 'functional', or 'combined'.",
+          "required": false,
+          "defaultValue": "chronological"
+        },
+        {
+          "name": "targetJobRole",
+          "type": "string",
+          "description": "The job role or industry the resume should be tailored for to highlight relevant skills and experiences.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the resume document, e.g., 'text' or 'pdf'.",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted resume as a string or a downloadable PDF link, with metadata about sections included."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating a draft resume from structured input details provided by the user, especially when tailoring content to job roles or preferred resume styles. It assists in creating initial resume drafts that can then be refined further.",
+        "limitations": "This tool does not perfectly tailor resumes for every job or optimize for applicant tracking systems (ATS). It relies solely on input data and does not perform grammar or spelling corrections beyond basic formatting.",
+        "examples": [
+          "Generate a resume draft for a software engineer with 5 years experience targeting a backend developer role.",
+          "Create a functional style resume text output for a recent graduate with internship experience.",
+          "Produce a pdf resume focusing on marketing skills and education for a mid-level marketing manager position."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "resume",
+        "drafting",
+        "career",
+        "job-application",
+        "text-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"fullName\":\"Jane Doe\",\"contactInformation\":{\"email\":\"jane.doe@example.com\",\"phone\":\"123-456-7890\",\"linkedin\":\"linkedin.com/in/janedoe\"},\"professionalSummary\":\"Experienced software engineer specializing in backend development.\",\"workExperience\":[{\"title\":\"Backend Developer\",\"company\":\"Tech Solutions\",\"duration\":\"2018-2023\",\"description\":\"Developed scalable APIs and microservices.\"}],\"education\":[{\"degree\":\"B.Sc. Computer Science\",\"institution\":\"State University\",\"years\":\"2014-2018\"}],\"skills\":[\"Java\",\"Spring Boot\",\"SQL\"],\"resumeStyle\":\"chronological\",\"targetJobRole\":\"Backend Developer\",\"outputFormat\":\"text\"}",
+          "description": "Draft a chronological text resume for an experienced backend software developer."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Resume",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftEmail",
+      "description": "This tool drafts professional email messages based on user inputs such as recipient details, subject, purpose, tone, and key points. It processes these inputs to generate a coherent, contextually appropriate email draft text ready for review or sending.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "recipientName",
+          "type": "string",
+          "description": "Name of the email recipient to personalize the greeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "recipientEmail",
+          "type": "string",
+          "description": "Email address of the recipient, used for validation or context if needed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "Subject line of the email conveying the main topic or purpose.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "purpose",
+          "type": "string",
+          "description": "Brief description of the email's purpose or goal (e.g., scheduling, inquiry, update).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "Array of important points or information to include in the email body for clarity and completeness.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone of the email such as formal, friendly, persuasive, or neutral to suit the context.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "senderName",
+          "type": "string",
+          "description": "Name of the email sender to be included in the closing signature.",
+          "required": true,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete email draft with subject and body as strings."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to rapidly generate a well-structured, contextually appropriate email draft based on targeted inputs such as recipient, purpose, and key content points. Ideal for AI agents handling communication tasks requiring personalized, professional emails to clients, colleagues, or stakeholders.",
+        "limitations": "Does not send emails, verify deliverability or access the user's actual email system. May not perfectly capture extremely nuanced or complex tone preferences without detailed input.",
+        "examples": [
+          "Draft an email to schedule a meeting with a client using a formal tone.",
+          "Create a friendly follow-up email thanking a colleague for their help.",
+          "Generate a persuasive sales email highlighting new product features."
+        ]
+      },
+      "tags": [
+        "email",
+        "drafting",
+        "communication",
+        "professional writing",
+        "automation",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipientName\":\"John Smith\",\"recipientEmail\":\"john.smith@example.com\",\"subject\":\"Quarterly Project Update\",\"purpose\":\"Inform about project progress and next steps\",\"keyPoints\":[\"Completed phase 1 successfully\",\"Started phase 2 last week\",\"Expected completion by July\"],\"tone\":\"formal\",\"senderName\":\"Alice Brown\"}",
+          "description": "Formal project status update email to a client."
+        },
+        {
+          "inputJson": "{\"recipientName\":\"Emily\",\"recipientEmail\":\"emily@example.com\",\"subject\":\"Lunch Catch-Up\",\"purpose\":\"Arrange a casual lunch meeting\",\"keyPoints\":[\"Suggest Wednesday or Thursday\",\"Ask about dietary preferences\"],\"tone\":\"friendly\",\"senderName\":\"Mark\"}",
+          "description": "Friendly email to arrange a casual meeting."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Email",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftContract",
+      "description": "This tool accepts key contract details such as parties involved, terms, payment conditions, duration, and obligations. It processes the input to generate a clear, formatted draft contract document in text format suitable for review and editing. The output is a structured contract draft ready for further modification or finalization.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "partyAName",
+          "type": "string",
+          "description": "Name of the first party in the contract",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "partyBName",
+          "type": "string",
+          "description": "Name of the second party in the contract",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contractTerms",
+          "type": "array",
+          "description": "List of key terms and conditions as strings defining the agreement",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "paymentDetails",
+          "type": "object",
+          "description": "Details about payment including amount, schedule, and currency",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "contractDurationMonths",
+          "type": "number",
+          "description": "Duration of the contract in months",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "renewalOptions",
+          "type": "string",
+          "description": "Description of renewal terms if any",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "confidentialityClauseIncluded",
+          "type": "boolean",
+          "description": "Flag to include a standard confidentiality clause",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated contract draft text as a string"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to quickly produce a structured draft contract based on provided details to initiate legal agreements, ensuring the important elements are included and formatted consistently. It helps automate preliminary contract creation for various business scenarios.",
+        "limitations": "The tool cannot provide legally binding advice or tailor contracts to jurisdiction-specific legal requirements. It produces a generic draft that requires review by a qualified legal professional.",
+        "examples": [
+          "Draft a contract between 'Alpha Corp' and 'Beta LLC' outlining software license terms and a six-month duration.",
+          "Generate a contract draft including payment of $10,000 USD quarterly with confidentiality clause for two parties.",
+          "Create a contract specifying consultant obligations and renewal options for a 12-month engagement."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "contract",
+        "drafting",
+        "legal",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"partyAName\":\"Alpha Corp\",\"partyBName\":\"Beta LLC\",\"contractTerms\":[\"Licensor grants license to use software\",\"License valid for internal use only\"],\"paymentDetails\":{\"amount\":5000,\"currency\":\"USD\",\"schedule\":\"monthly\"},\"contractDurationMonths\":12,\"confidentialityClauseIncluded\":true}",
+          "description": "Drafting a software license contract with monthly payments and confidentiality clause."
+        },
+        {
+          "inputJson": "{\"partyAName\":\"Consulting Inc\",\"partyBName\":\"Client Co\",\"contractTerms\":[\"Consultant to provide consulting services as described\",\"Consultant obligated to deliver monthly reports\"],\"paymentDetails\":{\"amount\":10000,\"currency\":\"USD\",\"schedule\":\"quarterly\"},\"contractDurationMonths\":6,\"renewalOptions\":\"Automatically renew for subsequent 6 month periods unless terminated\"}",
+          "description": "Drafting a consulting services contract with quarterly payment and renewal options."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Contract",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftProposal",
+      "description": "This tool assists in drafting a professional proposal document by accepting input parameters such as title, objectives, scope, deliverables, timeline, and budget. It processes these inputs into a well-structured draft proposal formatted in Markdown or plain text, suitable for review or further editing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title or topic of the proposal document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "objectives",
+          "type": "array",
+          "description": "List of key objectives or goals the proposal aims to achieve.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "scope",
+          "type": "string",
+          "description": "Description of the scope or boundaries of the proposed work.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "deliverables",
+          "type": "array",
+          "description": "List of expected deliverables or outcomes from the project.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "timeline",
+          "type": "string",
+          "description": "Estimated timeline or schedule for the project duration.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "budget",
+          "type": "string",
+          "description": "Overview of the proposed budget or financial estimates.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the draft proposal. Supported: 'markdown', 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted draft proposal text and metadata."
+      },
+      "aiAgent": {
+        "useCase": "AI agents can use this tool when needing to generate structured proposal drafts quickly from high-level project inputs, facilitating documentation creation for stakeholders or clients without manually formatting each section.",
+        "limitations": "The tool cannot replace domain-specific expertise or tailor content to detailed organizational templates; it provides a generic structured draft only.",
+        "examples": [
+          "Draft a project proposal titled 'Mobile App Development' with objectives, scope, deliverables, timeline, and budget.",
+          "Generate a basic proposal draft with a given title and objectives only.",
+          "Create a proposal draft in plain text format summarizing a research project."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "proposal",
+        "drafting",
+        "project-management",
+        "writing",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Website Redesign Project\",\"objectives\":[\"Improve user experience\",\"Increase conversion rates\"],\"scope\":\"Redesign homepage and product pages only.\",\"deliverables\":[\"Wireframes\",\"Final designs\",\"Prototype\"],\"timeline\":\"3 months\",\"budget\":\"$50,000\",\"format\":\"markdown\"}",
+          "description": "Draft a markdown proposal for a website redesign including all key sections."
+        },
+        {
+          "inputJson": "{\"title\":\"Data Analysis Service Proposal\",\"objectives\":[\"Analyze sales data\",\"Generate monthly reports\"],\"scope\":\"Includes data collection and cleaning.\",\"deliverables\":[\"Data reports\",\"Presentation slides\"],\"format\":\"plaintext\"}",
+          "description": "Create a plain text proposal draft for data analysis services with provided elements."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Proposal",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.draftDocument",
+      "description": "Generates a first draft of a document based on a provided outline and key points. Accepts input parameters including document type, outline, style preferences, and target audience to produce a coherent draft text that can be further edited or refined.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "documentType",
+          "type": "string",
+          "description": "The kind of document to draft (e.g., report, proposal, user manual).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outline",
+          "type": "array",
+          "description": "An ordered array of section headings or points defining the document structure.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "object",
+          "description": "Optional mapping of section headings to key points or content summaries to include per section.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleTone",
+          "type": "string",
+          "description": "Preferred writing style or tone (e.g., formal, casual, technical).",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience to tailor language and complexity accordingly.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum approximate word count for the entire draft document.",
+          "required": false,
+          "defaultValue": "2000"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete drafted document text and optionally a breakdown by sections."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to generate an initial version of a document from an outline and relevant details quickly. It helps automate the foundational drafting phase before manual editing and refinement.",
+        "limitations": "It cannot guarantee perfect factual accuracy or capture deep domain-specific subtleties without further human review. Generated content may require iteration and supplementing with expert input.",
+        "examples": [
+          "Draft a project proposal based on provided outline sections and key objectives.",
+          "Generate an initial user manual draft covering the listed topics for a technical product.",
+          "Create a formal report draft targeted at executive management using given section headers and notes."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "drafting",
+        "automation",
+        "writing",
+        "outline-based",
+        "content generation",
+        "report",
+        "proposal"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"documentType\":\"project proposal\",\"outline\":[\"Introduction\",\"Objectives\",\"Methodology\",\"Budget\",\"Conclusion\"],\"keyPoints\":{\"Introduction\":\"Background and need for the project.\",\"Objectives\":\"List main goals and deliverables.\",\"Methodology\":\"Describe approach and timeline.\",\"Budget\":\"Summarize estimated costs.\",\"Conclusion\":\"Recap benefits and call to action.\"},\"styleTone\":\"formal\",\"targetAudience\":\"company executives and stakeholders\",\"maxLength\":1500}",
+          "description": "Draft a formal project proposal covering key standard sections with a target audience of executives."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "draft",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeReference",
+      "description": "This tool generates structured reference documentation entries given key information such as term names, definitions, usage examples, related topics, and formatting options. It accepts input as objects describing the reference content, then formats and outputs a standardized, markdown-compatible reference section suitable for technical documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "term",
+          "type": "string",
+          "description": "The reference term or keyword to be documented.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "definition",
+          "type": "string",
+          "description": "A clear and concise definition or explanation of the term.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "examples",
+          "type": "array",
+          "description": "A list of usage examples illustrating the term in context.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "relatedTerms",
+          "type": "array",
+          "description": "An array of related terms to link within the reference content.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "formatStyle",
+          "type": "string",
+          "description": "The output format style, e.g., 'markdown' or 'html', determining how the reference is composed.",
+          "required": false,
+          "defaultValue": "\"markdown\""
+        },
+        {
+          "name": "includeSeeAlso",
+          "type": "boolean",
+          "description": "Flag to include a 'See Also' section listing related terms if available.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete formatted reference documentation text and metadata such as term and format style."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to automatically generate consistent, structured reference documentation entries from defined input elements, ideal for building or updating technical glossaries or API docs. It helps an AI agent produce polished, linked, and standardized reference content quickly.",
+        "limitations": "This tool does not perform content validation or semantic accuracy checks; it also does not generate the definitions or examples itself, they must be provided as input.",
+        "examples": [
+          "Compose a reference entry for 'API' with definition and usage examples in markdown.",
+          "Generate an HTML formatted reference for 'JSON' including related terms and see-also links.",
+          "Create a documentation reference section for a new SDK function with term, definition, and usage samples"
+        ]
+      },
+      "tags": [
+        "documentation",
+        "reference",
+        "compose",
+        "technical-writing",
+        "glossary",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"term\":\"API\",\"definition\":\"Application Programming Interface, a set of protocols and tools for building software applications.\",\"examples\":[\"Use the API to request user data.\",\"API endpoints define access points.\"],\"relatedTerms\":[\"REST\",\"SDK\"],\"formatStyle\":\"markdown\",\"includeSeeAlso\":true}",
+          "description": "Composing a markdown reference entry for the term 'API' including definition, examples, and related terms."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeCitation",
+      "description": "Generates a properly formatted bibliographic citation string based on input details such as author(s), title, publication date, source, and citation style. Accepts structured citation data and outputs a correctly styled citation for use in documentation or academic works.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of author names as strings in order (e.g., ['John Doe', 'Jane Smith']).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the work being cited, such as article or book title.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationDate",
+          "type": "string",
+          "description": "Date of publication in ISO format (YYYY-MM-DD or YYYY).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "source",
+          "type": "string",
+          "description": "Source of the publication such as journal name, publisher, or website.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL where the work can be accessed, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format the output (e.g., 'APA', 'MLA', 'Chicago').",
+          "required": true,
+          "defaultValue": "APA"
+        },
+        {
+          "name": "edition",
+          "type": "string",
+          "description": "Edition of the work, if applicable (e.g., '2nd').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pageRange",
+          "type": "string",
+          "description": "Page numbers or range for articles or book chapters (e.g., '23-45').",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted citation string under 'formattedCitation' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to generate accurate, properly formatted bibliographic citations for documentation, research papers, or content referencing. It helps ensure citations comply with specified academic or editorial styles based on structured input bibliographic data.",
+        "limitations": "This tool cannot verify the accuracy of bibliographic data or fetch missing citation details automatically. It does not support every citation style variation or localized style adaptations. It assumes input data is correct and complete for formatting.",
+        "examples": [
+          "Generate an APA style citation for a journal article authored by multiple authors.",
+          "Format a book citation in MLA style with publisher and edition information.",
+          "Create a web article citation including URL in Chicago style."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "citation",
+        "formatting",
+        "bibliography",
+        "academic",
+        "reference",
+        "style"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"authors\":[\"John Doe\",\"Jane Smith\"],\"title\":\"Innovations in AI Research\",\"publicationDate\":\"2021-05-10\",\"source\":\"Journal of AI Research\",\"url\":\"https://jair.org/article123\",\"citationStyle\":\"APA\",\"edition\":\"\",\"pageRange\":\"101-120\"}",
+          "description": "APA citation for a journal article with multiple authors, publication date, journal name, URL, and page range."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Emily Brontë\"],\"title\":\"Wuthering Heights\",\"publicationDate\":\"1847\",\"source\":\"Penguin Classics\",\"citationStyle\":\"MLA\",\"edition\":\"2nd\",\"pageRange\":\"\"}",
+          "description": "MLA citation for a classic book with edition specified."
+        },
+        {
+          "inputJson": "{\"authors\":[\"Alex Johnson\"],\"title\":\"Tech Trends 2024\",\"publicationDate\":\"\",\"source\":\"TechWorld Blog\",\"url\":\"https://techworld.com/trends2024\",\"citationStyle\":\"Chicago\",\"edition\":\"\",\"pageRange\":\"\"}",
+          "description": "Chicago style citation for an online blog article with URL and no publication date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeMention",
+      "description": "Generates a formatted mention string (e.g., @username or @group) suitable for inclusion in documentation comments or collaborative documents. Accepts a mention type and identifier, and outputs properly formatted mention syntax compatible with common markdown or documentation tools.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "mentionType",
+          "type": "string",
+          "description": "Type of mention to compose, e.g., 'user', 'group', or 'role'. Determines mention syntax format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "identifier",
+          "type": "string",
+          "description": "The unique identifier or name of the entity being mentioned, such as username or group name.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "displayName",
+          "type": "string",
+          "description": "Optional display name to use in the mention instead of identifier, if different.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "platform",
+          "type": "string",
+          "description": "Target documentation platform or syntax, e.g., 'markdown', 'confluence', or 'github'. Affects mention formatting.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "useBrackets",
+          "type": "boolean",
+          "description": "Whether to enclose the mention in brackets or delimiters as per platform convention.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted mention string ready for insertion into documentation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a correctly formatted mention reference (e.g., @username, @group) for documentation comments or collaborative text editors, ensuring compatibility with the target platform's syntax. This helps automate the creation of notifications or references to people and groups within technical documents.",
+        "limitations": "This tool only composes mention strings; it does not validate whether the identifier exists on the platform or trigger actual notifications.",
+        "examples": [
+          "Generate a user mention for username 'jdoe' in markdown syntax.",
+          "Create a group mention for 'dev-team' using Confluence mention style.",
+          "Compose a role mention with display name 'Admin' for GitHub flavored markdown."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "mention",
+        "compose",
+        "markdown",
+        "collaboration"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mentionType\":\"user\",\"identifier\":\"jdoe\",\"platform\":\"markdown\"}",
+          "description": "Compose a markdown user mention for username 'jdoe'."
+        },
+        {
+          "inputJson": "{\"mentionType\":\"group\",\"identifier\":\"dev-team\",\"platform\":\"confluence\"}",
+          "description": "Create a Confluence formatted group mention for 'dev-team'."
+        },
+        {
+          "inputJson": "{\"mentionType\":\"role\",\"identifier\":\"admin\",\"displayName\":\"Administrator\",\"platform\":\"github\",\"useBrackets\":false}",
+          "description": "Generate a GitHub-flavored markdown mention for role 'admin' using the display name 'Administrator' without brackets."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Mention",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeReply",
+      "description": "Generates a clear, context-aware reply message based on a given incoming message and optional tone or style preferences. Accepts the original message text, context summary, tone, and style instructions, then produces a coherent reply draft suitable for professional or casual communication.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "incomingMessage",
+          "type": "string",
+          "description": "The original message or query to which a reply is needed",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contextSummary",
+          "type": "string",
+          "description": "Brief background or relevant context information to guide reply composition",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone of the reply, e.g., formal, casual, friendly, professional",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Stylistic instructions for the reply, such as concise, detailed, technical, or empathetic",
+          "required": false,
+          "defaultValue": "concise"
+        },
+        {
+          "name": "includeCallToAction",
+          "type": "boolean",
+          "description": "Whether to include a call to action or closing statement in the reply",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed reply text and metadata such as tone and style"
+      },
+      "aiAgent": {
+        "useCase": "This tool is ideal for AI agents tasked with drafting replies to incoming communications, such as emails, tickets, or messages, where context and tone customization are important to maintain professionalism and clarity. It helps automate reply drafting while allowing customization to fit communication style and recipient expectations.",
+        "limitations": "The tool cannot fully understand highly specialized or ambiguous contexts without sufficient input and may not replace human judgment in sensitive communications.",
+        "examples": [
+          "Compose a professional reply to a client inquiry with a friendly tone",
+          "Generate a concise technical response to a support ticket explaining next steps",
+          "Draft a casual apology reply including a call to action for feedback"
+        ]
+      },
+      "tags": [
+        "documentation",
+        "compose",
+        "reply",
+        "communication",
+        "automated-writing",
+        "email",
+        "customer-support"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"incomingMessage\":\"Could you please provide the latest project update?\",\"contextSummary\":\"Project is on track with recent milestones met.\",\"tone\":\"formal\",\"style\":\"concise\",\"includeCallToAction\":true}",
+          "description": "Compose a formal and concise reply to a status update request including a call to action."
+        },
+        {
+          "inputJson": "{\"incomingMessage\":\"I am unhappy with the recent changes to the product.\",\"contextSummary\":\"Customer has a history of product feedback.\",\"tone\":\"empathetic\",\"style\":\"detailed\",\"includeCallToAction\":true}",
+          "description": "Generate an empathetic and detailed reply addressing customer concerns and inviting further feedback."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Reply",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeWord",
+      "description": "Generates a concise, well-formed English word or term based on input parameters such as root word, desired part of speech, and contextual domain. Takes optional hints about style or usage and outputs a suitable word string that fits the requested constraints.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "rootWord",
+          "type": "string",
+          "description": "The base word or root from which to derive or compose a new word. If empty, the tool generates a word from scratch.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "partOfSpeech",
+          "type": "string",
+          "description": "The desired part of speech of the word to generate (e.g., noun, verb, adjective, adverb).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "contextDomain",
+          "type": "string",
+          "description": "The thematic or subject domain to guide word selection or composition (e.g., technology, biology, business).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Writing style or tone guide for the word, such as formal, informal, technical, or creative.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum allowed length of the generated word, including any affixes. Zero implies no limit.",
+          "required": false,
+          "defaultValue": "0"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated word string that fits the given constraints and context, ready for use in documentation or writing."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create a specific English word or term for documentation purposes, especially when generating technical terms, branding words, or context-relevant vocabulary that matches a particular part of speech and domain. It helps maintain consistency and clarity in formal documents by providing well-formed words on request.",
+        "limitations": "This tool cannot generate phrases or multi-word terms; it only outputs single words. It may not guarantee dictionary-valid words if rootWord and style prompt novel derivations. It does not provide definitions or usage examples.",
+        "examples": [
+          "Generate an adjective related to technology starting with 'cyber'.",
+          "Create a noun in the biology domain with a formal style.",
+          "Produce a verb of informal style based on the root word 'connect'."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "word generation",
+        "language",
+        "content creation",
+        "writing aid",
+        "terminology"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"rootWord\":\"cyber\",\"partOfSpeech\":\"adjective\",\"contextDomain\":\"technology\",\"style\":\"technical\",\"maxLength\":15}",
+          "description": "Generate a technical adjective starting with 'cyber' in the technology domain."
+        },
+        {
+          "inputJson": "{\"rootWord\":\"\",\"partOfSpeech\":\"noun\",\"contextDomain\":\"biology\",\"style\":\"formal\",\"maxLength\":0}",
+          "description": "Generate a formal noun in the biology domain without a specific root."
+        },
+        {
+          "inputJson": "{\"rootWord\":\"connect\",\"partOfSpeech\":\"verb\",\"contextDomain\":\"\",\"style\":\"informal\",\"maxLength\":10}",
+          "description": "Generate an informal verb based on root word 'connect' with no length limit."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeParagraph",
+      "description": "This tool generates a coherent, well-structured paragraph based on a given topic, key points, and desired writing style. It accepts input describing the topic, optional bullet points to include, tone of voice, and language, then composes a fluent paragraph suitable for documentation or explanatory purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme that the paragraph should address.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "An optional list of key points or facts that must be included in the paragraph.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The writing style or tone of the paragraph, e.g., formal, casual, neutral.",
+          "required": false,
+          "defaultValue": "\"neutral\""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language code in which the paragraph should be written, e.g., 'en' for English.",
+          "required": false,
+          "defaultValue": "\"en\""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated paragraph text as a string under the 'paragraph' property."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate clear, concise, and contextually relevant paragraphs for documentation sections based on a topic and important points, adapting style and language to fit the target audience. It automates the creation of explanatory content that can be directly used or further edited.",
+        "limitations": "It cannot replace detailed human-authored documentation that requires domain expertise or precise technical accuracy. It may not handle extremely specialized jargon or nuanced content without input guidance.",
+        "examples": [
+          "Compose a formal paragraph about the benefits of unit testing including key points on reliability and maintainability.",
+          "Generate a neutral paragraph summarizing the installation steps for a software package.",
+          "Create a casual paragraph explaining the purpose of a configuration file and why users should not edit it manually."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "text-generation",
+        "paragraph-composition",
+        "writing",
+        "content-creation",
+        "natural-language"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"unit testing benefits\",\"keyPoints\":[\"improves code reliability\",\"enhances maintainability\",\"facilitates early bug detection\"],\"tone\":\"formal\",\"language\":\"en\"}",
+          "description": "Generate a formal paragraph about the benefits of unit testing highlighting reliability, maintainability, and early bug detection."
+        },
+        {
+          "inputJson": "{\"topic\":\"software installation\",\"keyPoints\":[\"download package\",\"run installer\",\"follow prompts\"],\"tone\":\"neutral\",\"language\":\"en\"}",
+          "description": "Create a neutral paragraph summarizing software installation steps."
+        },
+        {
+          "inputJson": "{\"topic\":\"config file purpose\",\"keyPoints\":[\"stores user settings\",\"should not be edited manually\"],\"tone\":\"casual\",\"language\":\"en\"}",
+          "description": "Write a casual paragraph explaining the purpose of a config file and advising against manual edits."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeQuote",
+      "description": "This tool composes a well-formatted quote block for documentation purposes. It accepts a quote text, the author's name, an optional citation source, and formatting preferences. It processes the inputs and outputs a standardized quote snippet suitable for embedding in markdown or HTML documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "quoteText",
+          "type": "string",
+          "description": "The main quote text to be displayed inside the quote block.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "authorName",
+          "type": "string",
+          "description": "The name of the person who said or wrote the quote.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationSource",
+          "type": "string",
+          "description": "Optional source citation, such as book title, article, or speech where the quote originated.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Desired output format, e.g., 'markdown' or 'html'. Determines the markup style for the quote.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeAttribution",
+          "type": "boolean",
+          "description": "Whether to include the author and citation source as attribution below the quote text.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted quote block as a string in the requested markup format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to insert a clear, visually distinct quote block into documentation or content, ensuring consistent formatting and proper attribution. It's helpful to present key insights, notable sayings, or references in an emphasized style within markdown or HTML docs.",
+        "limitations": "It formats quotes but does not verify accuracy of the quote or author data. It does not support complex styling beyond basic markdown or HTML blockquote conventions.",
+        "examples": [
+          "Compose a markdown quote with attribution for a famous software engineering quote.",
+          "Generate an HTML formatted quote block from a user-provided quote and author.",
+          "Create a quote without attribution in markdown format."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "compose",
+        "quote",
+        "format",
+        "markdown",
+        "html",
+        "attribution"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"quoteText\":\"Good code is its own best documentation.\",\"authorName\":\"Steve McConnell\",\"citationSource\":\"Code Complete, 1993\",\"format\":\"markdown\",\"includeAttribution\":true}",
+          "description": "Compose a markdown quote with author and citation attribution."
+        },
+        {
+          "inputJson": "{\"quoteText\":\"Premature optimization is the root of all evil.\",\"authorName\":\"Donald Knuth\",\"format\":\"html\",\"includeAttribution\":true}",
+          "description": "Create an HTML formatted quote block from a famous quote with author attribution but no citation."
+        },
+        {
+          "inputJson": "{\"quoteText\":\"Simplicity is the soul of efficiency.\",\"includeAttribution\":false}",
+          "description": "Generate a markdown quote block without any attribution."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeSentence",
+      "description": "This tool generates a clear and coherent English sentence based on given contextual and stylistic parameters. The input includes a key message or topic phrase, optional style instructions (such as formal or casual tone), and optional target audience details. It outputs a well-structured sentence suitable for documentation or instructional content.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "message",
+          "type": "string",
+          "description": "The main idea or content phrase to be expressed in the sentence.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Tone or style of the sentence, e.g., formal, casual, technical, persuasive.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Intended audience type, such as developers, end users, or managers.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the generated sentence in characters.",
+          "required": false,
+          "defaultValue": "150"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include a simple example within the sentence if applicable.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed sentence string under the key 'sentence'. It includes stylistic metadata if applicable."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create concise and clear sentences for documentation, manuals, tutorials, or release notes. It helps produce human-readable sentences tailored to the style and audience, improving documentation quality and consistency.",
+        "limitations": "This tool cannot generate multi-sentence paragraphs or full documents. It only composes single sentences and does not verify factual correctness of the content.",
+        "examples": [
+          "Compose a formal sentence introducing a new software feature for developer documentation.",
+          "Generate a casual sentence explaining a troubleshooting step for end users.",
+          "Create a technical sentence describing usage of an API parameter for SDK docs."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "sentence generation",
+        "content creation",
+        "writing",
+        "style",
+        "audience"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"message\":\"The system supports multiple authentication methods.\",\"style\":\"formal\",\"targetAudience\":\"developers\",\"maxLength\":120}",
+          "description": "Compose a formal sentence about system authentication methods targeted at developers."
+        },
+        {
+          "inputJson": "{\"message\":\"You can reset your password using the settings menu.\",\"style\":\"casual\",\"targetAudience\":\"end users\",\"includeExamples\":true}",
+          "description": "Generate a casual sentence instructing end users how to reset a password, including an example."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeText",
+      "description": "This tool assists in composing documentation text based on provided topics, context, and style preferences. It accepts input parameters such as the subject to cover, desired tone or style, length constraints, and any reference material, then generates coherent and structured text suitable for technical documentation, user manuals, or project guides.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or topic the documentation text should cover.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "context",
+          "type": "string",
+          "description": "Additional background or context information to guide the text composition.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Requested writing style or tone (e.g., formal, casual, instructional).",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "lengthLimit",
+          "type": "number",
+          "description": "Maximum desired length of the generated text in words.",
+          "required": false,
+          "defaultValue": "500"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include practical examples in the generated documentation text.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "referenceMaterials",
+          "type": "array",
+          "description": "List of URLs or text snippets to reference or incorporate into the text.",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed documentation text as a string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate clear, coherent documentation text tailored for technical guides, manuals, or project documentation based on specific topics and styles. It helps automate draft creation to speed up documentation workflows or to produce initial text that can be later refined by a human writer.",
+        "limitations": "The tool does not verify factual accuracy beyond provided references and may produce generic content if insufficient input detail is provided. It is not designed to replace professional technical writing but to assist and accelerate the writing process.",
+        "examples": [
+          "Generate a user guide introduction for a software application with a formal tone.",
+          "Compose API documentation explaining endpoint authentication methods, including examples.",
+          "Create installation instructions for a hardware device targeting novice users in a simple, clear style."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "text-composition",
+        "technical-writing",
+        "content-generation",
+        "manuals",
+        "guides"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"API authentication methods\",\"context\":\"The API supports OAuth2 and API key methods.\",\"style\":\"formal\",\"lengthLimit\":300,\"includeExamples\":true}",
+          "description": "Compose a formal, concise documentation text explaining API authentication methods with examples."
+        },
+        {
+          "inputJson": "{\"topic\":\"Installing the XYZ router\",\"context\":\"Target audience are home users with no technical background.\",\"style\":\"simple\",\"lengthLimit\":200,\"includeExamples\":true}",
+          "description": "Generate easy-to-understand installation instructions for a router, including practical steps and examples."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeLink",
+      "description": "Creates a markdown-formatted hyperlink for documentation or web content. Accepts a URL and optionally link text, title attribute, and a flag to open in a new tab. Outputs a markdown link string ready for insertion into documentation files or editors.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The target URL for the hyperlink. Must be a valid URL string.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "linkText",
+          "type": "string",
+          "description": "The visible text for the hyperlink. If not provided, the URL itself will be used as link text.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title attribute for the link to show on hover, enhancing accessibility and context.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "openInNewTab",
+          "type": "boolean",
+          "description": "If true, appends HTML target attribute to open the link in a new browser tab. Markdown does not natively support this, so HTML format is used in output.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated link string in markdown or HTML syntax, suitable for embedding in documentation content."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when composing or augmenting documentation that requires insertion of hyperlinks with flexible formatting, such as customizing link text, adding titles, or specifying opening behavior in new tabs for enhanced user experience.",
+        "limitations": "Cannot generate links in formats other than markdown or basic HTML. Does not validate URL reachability or correctness beyond URL string format.",
+        "examples": [
+          "Generate a markdown link to https://example.com with the text 'Example Site'.",
+          "Create a link to https://docs.example.com using URL as link text, with title 'Documentation Home'.",
+          "Make a link to https://openai.com that opens in a new tab."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "link generation",
+        "markdown",
+        "hyperlink",
+        "compose"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://openai.com\",\"linkText\":\"OpenAI\"}",
+          "description": "Basic markdown link with custom link text."
+        },
+        {
+          "inputJson": "{\"url\":\"https://example.com\",\"title\":\"Example Site Home\",\"openInNewTab\":true}",
+          "description": "Link that opens in new tab with title attribute, output uses HTML format."
+        },
+        {
+          "inputJson": "{\"url\":\"https://docs.example.com\"}",
+          "description": "Link with URL as visible text when linkText is not provided."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeHeading",
+      "description": "This tool generates a well-structured Markdown or HTML heading element based on a provided heading text, level, and optional styling or attributes. It processes input parameters to produce a correctly formatted heading string suitable for documentation files or web pages.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "headingText",
+          "type": "string",
+          "description": "The text content to be used as the heading.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "level",
+          "type": "number",
+          "description": "The heading level (e.g., 1 for H1, 2 for H2). Typically between 1 and 6.",
+          "required": true,
+          "defaultValue": "1"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The output format: 'markdown' for Markdown headings, 'html' for HTML headings.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "id",
+          "type": "string",
+          "description": "Optional ID attribute to add to the heading element (only applies for HTML format).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "classNames",
+          "type": "array",
+          "description": "Optional list of CSS class names to include in the heading element (only applies for HTML format).",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted heading string as 'heading'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically generate standardized documentation headings in Markdown or HTML formats, ensuring correct syntax and optionally adding IDs or CSS classes to headings for navigation or styling.",
+        "limitations": "This tool does not generate body content, does not parse or transform existing headings, nor manage heading hierarchies automatically. It only formats a single heading string based on input.",
+        "examples": [
+          "Create a level 2 Markdown heading with the text 'Installation'.",
+          "Generate an H3 HTML heading with ID 'usage' and class 'section-title'."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "heading",
+        "markdown",
+        "html",
+        "formatting",
+        "content generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"headingText\":\"Introduction\",\"level\":1}",
+          "description": "Generate a level 1 Markdown heading 'Introduction'."
+        },
+        {
+          "inputJson": "{\"headingText\":\"Usage Notes\",\"level\":3,\"format\":\"html\",\"id\":\"usage-notes\",\"classNames\":[\"note\",\"highlight\"]}",
+          "description": "Generate a level 3 HTML heading with specified ID and classes."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeChannel",
+      "description": "This tool assists in composing structured communication channel documentation by accepting input details like channel purpose, audience, format, and usage guidelines. It processes these inputs into a coherent and organized Markdown or plaintext document describing the channel for documentation platforms or team manuals.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "channelName",
+          "type": "string",
+          "description": "The name of the communication channel to document (e.g., Engineering Slack).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "channelPurpose",
+          "type": "string",
+          "description": "A brief explanation of the channel's primary use or function.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience or participants of the channel.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "communicationFormat",
+          "type": "string",
+          "description": "Typical format or style of communication in the channel (e.g., asynchronous text, video calls).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "usageGuidelines",
+          "type": "string",
+          "description": "Rules or best practices for using the channel effectively and professionally.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format for the documentation: 'markdown' or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed channel documentation as a formatted text string in the requested output format, plus metadata such as word count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate clear, standardized documentation about communication channels within organizations or projects. Ideal for creating onboarding materials, internal documentation sites, or communication guidelines where a consistent format is needed from disparate or minimal input data.",
+        "limitations": "This tool cannot automatically gather channel details—it requires user input describing the channel. It does not produce interactive or graphical channel representations, only textual documentation.",
+        "examples": [
+          "Compose Slack channel documentation for the engineering team specifying its purpose, audience, and usage rules.",
+          "Generate a plaintext summary of a new video call channel for team meetings.",
+          "Provide guidelines documentation for an async text channel used by customer support."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "communication",
+        "channel",
+        "compose",
+        "internal-docs",
+        "guidelines"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"channelName\":\"Engineering Slack\",\"channelPurpose\":\"Discuss engineering topics and project coordination.\",\"targetAudience\":\"Engineering team members.\",\"communicationFormat\":\"Asynchronous text messages.\",\"usageGuidelines\":\"Use for engineering-related queries only, keep conversations professional and concise.\",\"outputFormat\":\"markdown\"}",
+          "description": "Composes a Markdown formatted documentation describing the Engineering Slack channel, its purpose, audience, communication style, and usage guidelines."
+        },
+        {
+          "inputJson": "{\"channelName\":\"Weekly Video Sync\",\"channelPurpose\":\"Weekly team video meetings to discuss progress and blockers.\",\"outputFormat\":\"plaintext\"}",
+          "description": "Generates a plaintext summary for a weekly video call channel used by the team."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Channel",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeComment",
+      "description": "This tool generates a clear, context-aware comment for software documentation or code review purposes. It accepts inputs such as the main topic or code snippet, the tone of the comment, and any specific points to address. The tool processes this information to produce a well-structured comment suitable for inclusion in documentation or code discussions.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or code snippet the comment is about.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone of the comment, e.g., formal, casual, constructive.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "pointsToAddress",
+          "type": "array",
+          "description": "Specific aspects the comment should cover or emphasize.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language in which the comment should be written.",
+          "required": false,
+          "defaultValue": "English"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the composed comment text and metadata such as tone and addressed points."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate coherent, human-readable comments for documentation or code review contexts based on given topics, tone preferences, and highlighted points. It helps automate writing comments that explain, critique, or annotate software components effectively.",
+        "limitations": "This tool does not provide code analysis or correctness verification. It also cannot generate comments without receiving at least a topic or subject input. It may not capture very domain-specific jargon without proper input data.",
+        "examples": [
+          "Compose a constructive comment on the recent API changes highlighting improved security and backward compatibility.",
+          "Write a casual comment for documentation explaining the rationale behind a deprecated function.",
+          "Generate a formal comment addressing potential performance issues in the given code snippet."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "commenting",
+        "code review",
+        "automation",
+        "writing",
+        "communication"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Refactoring the user authentication module\",\"tone\":\"constructive\",\"pointsToAddress\":[\"improved security\",\"code simplicity\"]}",
+          "description": "Generate a constructive comment focused on security improvement and simplification in a code refactoring context."
+        },
+        {
+          "inputJson": "{\"topic\":\"Deprecation of legacy payment API\",\"tone\":\"formal\",\"pointsToAddress\":[\"migration guidelines\",\"impact on existing clients\"]}",
+          "description": "Compose a formal comment advising about deprecated API and migration steps."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Comment",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeMessage",
+      "description": "Composes a clear, well-structured message suitable for documentation or team communication based on given purpose, audience, key points, and tone. Accepts inputs like message purpose, main content points, recipient role, and desired tone, then generates a coherent message string output ready to be used in documentation, emails, or internal messaging.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "purpose",
+          "type": "string",
+          "description": "The main goal or intent of the message, e.g., update, request, announcement.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "An array of concise bullet points or main topics to be included in the message.",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "audienceRole",
+          "type": "string",
+          "description": "Role or position of the target audience to tailor the language and style appropriately, e.g., developer, manager.",
+          "required": false,
+          "defaultValue": "general"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone of the message, such as formal, informal, friendly, or technical.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "includeCallToAction",
+          "type": "boolean",
+          "description": "Whether to add a call-to-action at the end of the message, such as next steps or requests.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code specifying the language of the output message (e.g., 'en', 'fr').",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the fully composed message text formatted for clear communication."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate professional and contextually appropriate messages for documentation or internal communications based on structured input points, audience, and intent. This is useful for creating consistent updates, requests, and announcements without manual drafting.",
+        "limitations": "This tool does not send or deliver messages; it only composes message content. It may not perfectly capture very nuanced or sensitive communication requiring human judgment.",
+        "examples": [
+          "Compose a project update message for a technical team summarizing completed milestones with a formal tone.",
+          "Generate a friendly announcement message for all staff about an upcoming holiday schedule.",
+          "Create a request message to a manager asking for approval on a new feature deployment."
+        ]
+      },
+      "tags": [
+        "compose",
+        "message",
+        "documentation",
+        "communication",
+        "internal",
+        "team",
+        "formatted"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"purpose\":\"update\",\"keyPoints\":[\"Completed feature X\",\"Fixed bug Y\",\"Started testing phase\"],\"audienceRole\":\"developer\",\"tone\":\"formal\",\"includeCallToAction\":true}",
+          "description": "Formal project update message for developers including key milestones and next steps."
+        },
+        {
+          "inputJson": "{\"purpose\":\"announcement\",\"keyPoints\":[\"Office closed on July 4th\",\"Reminders for timesheet submissions\"],\"audienceRole\":\"all employees\",\"tone\":\"friendly\",\"includeCallToAction\":false}",
+          "description": "Friendly announcement message to all employees about office closure and reminders."
+        },
+        {
+          "inputJson": "{\"purpose\":\"request\",\"keyPoints\":[\"Seeking approval for release schedule\",\"Need feedback on documentation\"],\"audienceRole\":\"manager\",\"tone\":\"formal\",\"includeCallToAction\":true}",
+          "description": "Formal request message directed to management for approval and feedback."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Message",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeNotification",
+      "description": "This tool assists in composing clear, context-appropriate notification messages based on user inputs. It accepts parameters such as recipient role, notification type, key message points, and tone to generate a professional notification text. Output is a structured notification string ready for use in communication channels.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "recipientRole",
+          "type": "string",
+          "description": "Role of the recipient (e.g., developer, manager) to tailor the notification content.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "notificationType",
+          "type": "string",
+          "description": "Type of the notification (e.g., alert, reminder, update) determining style and urgency.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "messagePoints",
+          "type": "array",
+          "description": "Key bullet points or information the notification must include.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone of the notification text (e.g., formal, friendly, urgent).",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "includeCallToAction",
+          "type": "boolean",
+          "description": "Whether to include a call-to-action phrase at the end of the notification.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the fully composed notification text under 'notificationText' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI needs to generate tailored notification messages for documentation, project updates, or alerts targeting specific user roles. It helps produce concise, clear, and contextually appropriate notifications to improve communication effectiveness.",
+        "limitations": "Does not send notifications itself or integrate with communication platforms. It can generate text only, so factual correctness depends on input quality.",
+        "examples": [
+          "Compose a friendly update notification to developers about upcoming API changes with key points on timeline and impact.",
+          "Generate a formal alert notification for managers offering urgent security patch information.",
+          "Create a reminder notification for all team members about documentation deadlines including call to action."
+        ]
+      },
+      "tags": [
+        "communication",
+        "notification",
+        "documentation",
+        "message-composition",
+        "user-roles",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipientRole\":\"developer\",\"notificationType\":\"update\",\"messagePoints\":[\"API version 2.0 release date set\",\"Breaking changes require code updates\"],\"tone\":\"friendly\",\"includeCallToAction\":true}",
+          "description": "Generate a friendly update notification for developers about upcoming API changes including key points and call to action."
+        },
+        {
+          "inputJson": "{\"recipientRole\":\"manager\",\"notificationType\":\"alert\",\"messagePoints\":[\"Security vulnerability detected\",\"Patch deployment required immediately\"],\"tone\":\"formal\",\"includeCallToAction\":true}",
+          "description": "Create a formal alert notification for managers with urgent security patch instructions."
+        },
+        {
+          "inputJson": "{\"recipientRole\":\"all\",\"notificationType\":\"reminder\",\"messagePoints\":[\"Submit documentation updates by Friday\",\"Review checklist attached\"],\"tone\":\"formal\",\"includeCallToAction\":false}",
+          "description": "Compose a formal reminder notification for all team members regarding documentation deadlines without call to action."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Notification",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeThread",
+      "description": "This tool accepts an array of message objects representing contributions in a communication thread. It processes these messages by organizing, formatting, and enhancing the thread into a coherent, readable document that captures the conversation flow and key points. The output is a structured thread summary including metadata, message content, and optionally highlights or action items.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "messages",
+          "type": "array",
+          "description": "An array of message objects, each containing at least an author, timestamp, and content, representing the thread messages to be composed into a document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "An optional title for the composed thread document to provide context and identification.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeMetadata",
+          "type": "boolean",
+          "description": "Flag indicating whether to include message metadata such as timestamps and author names in the output document.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "highlightKeywords",
+          "type": "array",
+          "description": "Optional array of keywords for highlighting important messages or topics within the thread.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "maxMessages",
+          "type": "number",
+          "description": "Maximum number of messages to include in the composed thread document to limit size and focus on the most recent or relevant.",
+          "required": false,
+          "defaultValue": "100"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a structured object representing the composed thread document, including a title, ordered list of formatted messages, optional highlights, and summary metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to synthesize and organize a collection of chat or forum messages into a clear, readable thread summary document. It is suited for scenarios of documentation, reporting, and archiving conversation content for easier understanding and sharing.",
+        "limitations": "This tool does not interpret message semantics deeply or generate full conversation analysis. It cannot verify factual accuracy or infer unstated context beyond formatting and basic highlighting.",
+        "examples": [
+          "Compose a summary document of the last 50 messages in the project discussion channel.",
+          "Create a readable thread document from an array of customer support chat messages including author names and timestamps.",
+          "Generate a document thread highlighting messages containing certain keywords like 'urgent' or 'deadline'."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "communication",
+        "thread",
+        "compose",
+        "summary",
+        "chat",
+        "conversation",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"messages\":[{\"author\":\"Alice\",\"timestamp\":\"2024-04-15T09:10:00Z\",\"content\":\"Can we start the design review next Monday?\"},{\"author\":\"Bob\",\"timestamp\":\"2024-04-15T09:12:00Z\",\"content\":\"Monday works for me.\"},{\"author\":\"Alice\",\"timestamp\":\"2024-04-15T09:15:00Z\",\"content\":\"Great, I'll send an invite.\"}],\"title\":\"Design Review Discussion\",\"includeMetadata\":true,\"highlightKeywords\":[\"review\",\"invite\"],\"maxMessages\":10}",
+          "description": "Compose a thread document from three messages about scheduling a design review meeting, including metadata and highlighting relevant keywords."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Thread",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeReadme",
+      "description": "Generates a structured README.md file for a software project based on provided project metadata, features list, usage instructions, and configuration details. Accepts project details as input objects and outputs a Markdown-formatted README string ready for use in repositories.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the project to include as the main title in the README.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "projectDescription",
+          "type": "string",
+          "description": "A brief description summarizing the project's purpose and functionality.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "installationInstructions",
+          "type": "string",
+          "description": "Step-by-step instructions on how to install or set up the project environment.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "usageExamples",
+          "type": "array",
+          "description": "An array of usage example strings demonstrating how to use the project features.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "features",
+          "type": "array",
+          "description": "List of key features or highlights of the project to showcase its capabilities.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "configurationOptions",
+          "type": "object",
+          "description": "Key-value pairs describing configurable options or environment variables with descriptions.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "license",
+          "type": "string",
+          "description": "The license type to be displayed in the README (e.g., MIT, Apache 2.0).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contributionGuidelines",
+          "type": "string",
+          "description": "Guidelines for contributing to the project, such as how to report issues or submit pull requests.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated README content as a Markdown formatted string with sections generated based on inputs."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to automatically generate a professional and comprehensive README.md file for a software project based on structured input data to help developers quickly produce or update project documentation. It streamlines creating all common README sections ensuring consistency and completeness.",
+        "limitations": "Does not generate project-specific code or detailed tutorials; relies on correct and complete input data for best results. Does not create graphical content or badges.",
+        "examples": [
+          "Generate a README for a new open source library with description, installation, usage examples, and license info.",
+          "Create a README skeleton for a project with defined features and contribution guidelines but no usage examples.",
+          "Update an existing README content by providing updated project description and configuration options."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "readme",
+        "markdown",
+        "project",
+        "software",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"AwesomeLib\",\"projectDescription\":\"A library to do awesome things.\",\"installationInstructions\":\"npm install awesomelib\",\"usageExamples\":[\"const lib = require('awesomelib');\\nlib.doAwesome();\"],\"features\":[\"Easy to use\",\"High performance\",\"Cross-platform\"],\"configurationOptions\":{\"logLevel\":\"Set the logging level (debug, info, error)\"},\"license\":\"MIT\",\"contributionGuidelines\":\"Please open issues for bugs and feature requests.\"}",
+          "description": "Generate a complete README with all major sections for the AwesomeLib project."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeTemplate",
+      "description": "This tool generates a customized document template based on a given structure definition and optional styling and content placeholders. Input includes a template schema or outline, optional parameters for styling and default content. The tool outputs a fully composed reusable document template in Markdown or HTML format.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "templateStructure",
+          "type": "object",
+          "description": "An object defining the hierarchical structure of the document template, including sections, subsections, and content placeholders.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format of the template document, e.g., 'markdown' or 'html'.",
+          "required": true,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "defaultContent",
+          "type": "object",
+          "description": "Optional key-value pairs where keys are placeholder names and values are default content to fill the template placeholders.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "If true, includes a generated table of contents based on the template structure.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "styleOptions",
+          "type": "object",
+          "description": "Optional styling parameters, such as header styles, font sizes, or colors, applicable mostly to HTML output.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed template as a string in the requested format, ready for documentation creation or further customization."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate a reusable documentation template from a defined structure for software specs, user manuals, or other docs, enabling consistent and efficient document creation workflows.",
+        "limitations": "This tool cannot generate content for placeholders beyond default values; it focuses on template structure composition and formatting, not full document population or natural language content generation.",
+        "examples": [
+          "Create a software requirements specification template in markdown with standard section placeholders.",
+          "Compose an HTML user guide template with default intro text and a styled header.",
+          "Generate a documentation template with an automatic table of contents and placeholders for future content."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "template",
+        "compose",
+        "markdown",
+        "html",
+        "structure",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"templateStructure\":{\"title\":\"Project Documentation\",\"sections\":[{\"header\":\"Introduction\",\"placeholders\":[\"overview\",\"purpose\"]},{\"header\":\"Installation\",\"placeholders\":[\"requirements\",\"steps\"]},{\"header\":\"Usage\",\"subsections\":[{\"header\":\"Basic Usage\",\"placeholders\":[\"examples\"]},{\"header\":\"Advanced Usage\",\"placeholders\":[\"configuration\"]}]},{\"header\":\"FAQ\"}]},\"outputFormat\":\"markdown\",\"defaultContent\":{\"overview\":\"Brief overview of the project.\",\"purpose\":\"Explain the project purpose.\"},\"includeTableOfContents\":true}",
+          "description": "Generate a markdown template for a project documentation with sections, subsections, placeholders, and a table of contents, pre-filled with some default content."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeFAQ",
+      "description": "This tool generates a structured FAQ document from a list of question-and-answer pairs. It accepts an array of Q&A entries optionally grouped by topic and produces a formatted FAQ in Markdown or JSON format, facilitating consistent, clear help content for documentation purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "faqEntries",
+          "type": "array",
+          "description": "An array of question and answer objects to include in the FAQ, each with 'question' and 'answer' strings, optionally with a 'topic' string.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format for the FAQ document, either 'markdown' or 'json'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeTopics",
+          "type": "boolean",
+          "description": "Whether to group FAQ entries by their topic if provided. If false, all questions are listed sequentially.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title to prepend as a header to the FAQ document.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted FAQ document as a string in the selected output format under the 'formattedFAQ' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to create or update an FAQ section from raw questions and answers or from FAQ entry data structures, to produce clear, standardized FAQ content for user documentation or knowledge bases. It is ideal for automating FAQ content generation in technical documentation workflows.",
+        "limitations": "The tool does not generate questions or answers from unstructured text or infer missing information; input data must be well-formed Q&A pairs. It also does not translate content or perform advanced styling beyond Markdown and JSON.",
+        "examples": [
+          "Generate a Markdown FAQ document from provided question and answer pairs grouped by topic.",
+          "Produce a JSON formatted FAQ without topic grouping, suitable for integration into a web app.",
+          "Create an FAQ with a custom title header from a list of help questions and answers."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "FAQ",
+        "compose",
+        "content-generation",
+        "help-center",
+        "knowledge-base"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"faqEntries\":[{\"question\":\"How do I reset my password?\",\"answer\":\"Click on 'Forgot password' at login and follow instructions.\",\"topic\":\"Account Management\"},{\"question\":\"Where can I find the user manual?\",\"answer\":\"The user manual is available on our support website.\",\"topic\":\"Resources\"}],\"outputFormat\":\"markdown\",\"includeTopics\":true,\"title\":\"Frequently Asked Questions\"}",
+          "description": "Generate a Markdown FAQ document grouped by topics with a title header."
+        },
+        {
+          "inputJson": "{\"faqEntries\":[{\"question\":\"What is the refund policy?\",\"answer\":\"Refunds are issued within 30 days of purchase.\"},{\"question\":\"How can I contact support?\",\"answer\":\"Support can be contacted via email or phone.\"}],\"outputFormat\":\"json\",\"includeTopics\":false}",
+          "description": "Produce a JSON formatted FAQ listing questions sequentially without topics."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeSummary",
+      "description": "Generates a concise and coherent summary for a specified document or a collection of documents. Accepts raw text or URLs as input, processes the content by extracting key points and themes, and outputs a structured textual summary useful for quick understanding or documentation enhancement.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "documentText",
+          "type": "string",
+          "description": "Raw text content of the document(s) to be summarized. Required if documentUrls is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "documentUrls",
+          "type": "array",
+          "description": "List of URLs pointing to the documents to summarize. Required if documentText is not provided.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "maxSummaryLength",
+          "type": "number",
+          "description": "Maximum length of the summary in number of words, balancing detail and brevity.",
+          "required": false,
+          "defaultValue": "200"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code (e.g., 'en', 'fr') of the document to help tailor the summary generation.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "includeKeyPoints",
+          "type": "boolean",
+          "description": "If true, outputs a bullet point list of key points alongside the summary paragraph.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone of the summary output, e.g., 'formal', 'informal', or 'neutral'.",
+          "required": false,
+          "defaultValue": "neutral"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the summary text and optionally an array of key points extracted from the document(s)."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing a digestible summary of one or multiple documents' content to facilitate quick understanding, report generation, or overview preparation. Ideal for distilling lengthy or complex documentation into manageable abstracts or executive summaries. It can help in automating documentation reviews or briefing creation.",
+        "limitations": "This tool does not read images or non-text media within documents. It cannot guarantee domain-specific expertise in summarization and may not capture highly nuanced technical details perfectly. It requires input as text or accessible URLs with textual content.",
+        "examples": [
+          "Summarize the key points of the project specification document given as text input.",
+          "Generate a 150-word formal summary from these 3 URLs of API documentation.",
+          "Provide an informal summary with bullet points for this provided user manual text."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "summary",
+        "text-processing",
+        "reporting",
+        "content-summarization",
+        "natural-language-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"documentText\":\"This document provides an overview of the new software release, highlighting major features such as improved user interface, enhanced security protocols, and performance optimizations.\",\"maxSummaryLength\":100}",
+          "description": "Summarizing a short software release note text input with a max length constraint."
+        },
+        {
+          "inputJson": "{\"documentUrls\":[\"https://example.com/api-docs/v1\",\"https://example.com/api-docs/v2\"],\"maxSummaryLength\":200,\"includeKeyPoints\":true,\"tone\":\"formal\"}",
+          "description": "Summarizing multiple API documentation pages accessible by URLs, requesting bullet key points and a formal tone."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeBlogPost",
+      "description": "Generates a well-structured blog post draft based on a given topic, target audience, and key points. It accepts input parameters such as topic, desired length, style tone, keywords, and optional outline details. It processes these inputs to create a coherent, engaging draft formatted as markdown or plain text output.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "Main subject or theme for the blog post to be composed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended readership to tailor the writing style and depth accordingly.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "List of important points or subtopics that should be covered in the blog post.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "desiredLength",
+          "type": "number",
+          "description": "Approximate desired length of the blog post in words.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "styleTone",
+          "type": "string",
+          "description": "Preferred writing style or tone, e.g., formal, casual, persuasive, informative.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format for the draft: markdown or plain text.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeOutline",
+          "type": "boolean",
+          "description": "Whether to include a structured outline at the start of the blog post.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the complete blog post draft text and optionally an outline of the content structure."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to draft a coherent, readable blog post quickly on a specific topic with optional stylistic and structural guidelines to save content creation time or support content marketing and documentation efforts.",
+        "limitations": "The tool generates draft content but cannot guarantee factual accuracy or deep expert knowledge; final review and editing by a human are recommended to ensure quality and correctness.",
+        "examples": [
+          "Compose an informative blog post about AI trends targeting software developers.",
+          "Write a casual, engaging blog entry on sustainable living including key points about recycling and energy saving.",
+          "Create a markdown formatted blog draft about cloud security best practices with an outline included."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "writing",
+        "content-creation",
+        "blog-post",
+        "drafting",
+        "markdown",
+        "text-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"The Rise of Quantum Computing\",\"targetAudience\":\"Tech enthusiasts and professionals\",\"keyPoints\":[\"Basic principles\",\"Potential applications\",\"Challenges\"],\"desiredLength\":1000,\"styleTone\":\"informative\",\"format\":\"markdown\",\"includeOutline\":true}",
+          "description": "Generate a detailed, markdown formatted blog post draft on quantum computing aimed at interested tech readers."
+        },
+        {
+          "inputJson": "{\"topic\":\"Healthy Eating Habits\",\"targetAudience\":\"General audience\",\"keyPoints\":[\"Importance of balanced diet\",\"Tips for meal planning\"],\"desiredLength\":600,\"styleTone\":\"casual\",\"format\":\"plain text\",\"includeOutline\":false}",
+          "description": "Create a casual tone blog post draft focused on easy tips for healthy eating, without outline and in plain text."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeChecklist",
+      "description": "Creates a structured checklist document based on a provided topic, key points, and optional task descriptions. Accepts topic title, array of checklist items with optional details, and outputs a formatted checklist suitable for documentation or task management.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The title or main topic of the checklist.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "items",
+          "type": "array",
+          "description": "An array of checklist items, each item is an object with a mandatory 'title' and optional 'description' strings.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeDescriptions",
+          "type": "boolean",
+          "description": "Flag indicating whether to include item descriptions in the final checklist output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the checklist, e.g., 'markdown' or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted checklist string and the item count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate clear, structured checklists for documentation, quality assurance, project planning, or task tracking. It helps convert an array of tasks or points into a readable, consistent checklist document in different text formats.",
+        "limitations": "It does not track task completion status dynamically or integrate with task management systems. The formatting options are limited to plain text or markdown.",
+        "examples": [
+          "Generate a software release checklist with tasks and brief notes.",
+          "Create a maintenance checklist for a server setup.",
+          "Compose a quality assurance checklist listing all test steps with details."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "checklist",
+        "compose",
+        "task-management",
+        "formatting",
+        "markdown"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Software Release Checklist\",\"items\":[{\"title\":\"Code freeze\",\"description\":\"Stop all code changes for release.\"},{\"title\":\"Run tests\",\"description\":\"Execute full regression test suite.\"},{\"title\":\"Update documentation\",\"description\":\"Finalize user manuals and release notes.\"}],\"includeDescriptions\":true,\"format\":\"markdown\"}",
+          "description": "Creates a markdown checklist for software release with titles and descriptions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeBrief",
+      "description": "Generates a concise brief document summarizing key domain-specific information provided as input. Accepts a domain name and related content or parameters, then structures and condenses the information into a clear, formatted brief suitable for quick understanding and sharing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "domain",
+          "type": "string",
+          "description": "The specific subject area or domain for which the brief is composed, e.g., 'machine learning' or 'financial compliance'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "content",
+          "type": "string",
+          "description": "Raw textual content, notes, or key points from which the brief is derived. Can include summaries, bullet points, or raw paragraphs.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the brief in number of words; controls the summary size.",
+          "required": false,
+          "defaultValue": "300"
+        },
+        {
+          "name": "includeReferences",
+          "type": "boolean",
+          "description": "Whether to include a references section with sources, if available in content.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed brief as formatted text, including optional references section if requested."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need a concise, well-structured summary brief on a particular domain from raw or unstructured content to assist in documentation, presentations, or quick knowledge transfer. It is designed to transform detailed or scattered information into a compact and readable overview suitable for stakeholders or team members.",
+        "limitations": "Cannot verify accuracy or completeness beyond the input data; cannot generate domain knowledge not present in content; does not format complex documents like full manuals or detailed reports.",
+        "examples": [
+          "Create a brief overview of recent advances in renewable energy from meeting notes.",
+          "Summarize key compliance points for GDPR given raw policy text.",
+          "Generate a 200-word briefing on agile project management concepts from developer notes."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "summary",
+        "brief",
+        "compose",
+        "domain-specific",
+        "knowledge",
+        "content-summarization"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"domain\":\"cybersecurity\",\"content\":\"This document covers recent threats including ransomware trends, zero-day vulnerabilities discovered in 2023, best practices for incident response, and compliance requirements under updated privacy laws.\",\"maxLength\":250,\"includeReferences\":true}",
+          "description": "Compose a cybersecurity brief summarizing threats, response practices, and compliance with references."
+        },
+        {
+          "inputJson": "{\"domain\":\"healthcare\",\"content\":\"Patient data privacy is governed by HIPAA regulations. Healthcare providers must ensure encryption and access controls are in place. Recent audit showed 5% non-compliance due to outdated software.\",\"maxLength\":150,\"includeReferences\":false}",
+          "description": "Generate a brief about patient data privacy and compliance status in healthcare."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeEmail",
+      "description": "This tool generates a professional email draft based on provided parameters such as recipients, subject, body content, and tone. It processes input including recipient list, email subject, main message body, desired tone, and optional closing remarks to produce a well-structured email draft formatted as plain text or HTML.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "recipients",
+          "type": "array",
+          "description": "List of email addresses to receive the email. Supports TO recipients only.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "Subject line of the email.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "body",
+          "type": "string",
+          "description": "Main content or message body of the email. Can be plain text or markdown.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone or style of the email such as formal, informal, friendly, or persuasive.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "closingRemark",
+          "type": "string",
+          "description": "Optional closing remark or sign-off phrase to end the email, e.g., 'Best regards'.",
+          "required": false,
+          "defaultValue": "Best regards"
+        },
+        {
+          "name": "includeSignature",
+          "type": "boolean",
+          "description": "Whether to append a standard professional signature to the email.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the email draft: 'plain' for plain text or 'html' for HTML formatting.",
+          "required": false,
+          "defaultValue": "plain"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed email draft with keys for recipients, subject, and the complete formatted body as a string."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to compose a professional email quickly based on given inputs such as recipients, subject, and body content. Ideal for generating consistent email drafts with appropriate tone and formatting for business communications.",
+        "limitations": "This tool does not send emails or handle attachments. It cannot customize emails per individual recipient beyond the given input list or dynamically pull recipient-specific data. It also does not verify email address validity.",
+        "examples": [
+          "Compose a formal meeting invitation email to a team with a clear subject and polite closing.",
+          "Generate a friendly follow-up email draft reminding a client about a pending document submission.",
+          "Create an HTML formatted promotional email with an enthusiastic and persuasive tone."
+        ]
+      },
+      "tags": [
+        "email",
+        "composition",
+        "documentation",
+        "communication",
+        "business",
+        "template"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"recipients\":[\"team@example.com\",\"manager@example.com\"],\"subject\":\"Project Kickoff Meeting\",\"body\":\"Dear Team,\\n\\nI would like to schedule a kickoff meeting for our new project. Please confirm your availability next week.\",\"tone\":\"formal\",\"closingRemark\":\"Best regards\",\"includeSignature\":true,\"format\":\"plain\"}",
+          "description": "A formal email draft inviting the team and manager to a project kickoff meeting with polite tone and a signature."
+        },
+        {
+          "inputJson": "{\"recipients\":[\"client@example.com\"],\"subject\":\"Friendly Reminder: Pending Document Submission\",\"body\":\"Hi, just a quick reminder to please send over the required documents by end of this week. Let me know if you need any assistance.\",\"tone\":\"friendly\",\"closingRemark\":\"Cheers\",\"includeSignature\":false,\"format\":\"plain\"}",
+          "description": "A friendly follow-up reminder email to a client without signature, casual closing."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Email",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeTranscript",
+      "description": "This tool accepts a set of raw meeting audio file references and optional meeting metadata, then uses speech recognition data to compose a structured, time-stamped transcript document. It outputs a clean, readable transcript in plain text or JSON format, suitable for documentation or review purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "audioFileUrls",
+          "type": "array",
+          "description": "Array of URLs or file references pointing to meeting audio files to transcribe and compose into transcript.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "languageCode",
+          "type": "string",
+          "description": "The spoken language code of the audio for accurate transcription (e.g., 'en-US').",
+          "required": false,
+          "defaultValue": "\"en-US\""
+        },
+        {
+          "name": "includeTimestamps",
+          "type": "boolean",
+          "description": "Whether to include time stamps for each spoken segment in the transcript output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "speakerLabels",
+          "type": "boolean",
+          "description": "Indicates if the transcript should label speakers when speaker diarization data is available.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the transcript: 'plain' for plain text or 'json' for structured JSON output.",
+          "required": false,
+          "defaultValue": "\"plain\""
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional metadata object including meeting title, date, participants, which will be included in the transcript header.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed transcript document as a string or structured JSON, including optional metadata and timestamp data."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert recorded meeting audio into a clear, readable transcript document that can be archived, shared, or analyzed later. Ideal for project management, interviews, or team meetings where documented records are needed.",
+        "limitations": "This tool relies on accurate audio input and may struggle with poor audio quality, overlapping speech, or uncommon languages/accents. It does not provide real-time transcription, only post-meeting composition.",
+        "examples": [
+          "Compose a transcript from a meeting audio recording in English with timestamps and speaker labels included, output as plain text.",
+          "Generate a JSON formatted transcript for a project kickoff meeting audio, including meeting metadata such as date, title, and participant names."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "transcription",
+        "meeting",
+        "audio-processing",
+        "text-generation",
+        "speech-to-text",
+        "transcript"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"audioFileUrls\":[\"https://example.com/audio/meeting1.mp3\"],\"languageCode\":\"en-US\",\"includeTimestamps\":true,\"speakerLabels\":true,\"outputFormat\":\"plain\",\"metadata\":{\"title\":\"Project Sync\",\"date\":\"2024-05-10\",\"participants\":[\"Alice\",\"Bob\",\"Carol\"]}}",
+          "description": "Transcribe a recorded project sync meeting audio with timestamps and speaker labels into a plain text transcript including metadata header."
+        },
+        {
+          "inputJson": "{\"audioFileUrls\":[\"https://example.com/audio/interview.mp3\"],\"languageCode\":\"en-US\",\"includeTimestamps\":false,\"speakerLabels\":false,\"outputFormat\":\"json\",\"metadata\":{\"title\":\"Candidate Interview\",\"date\":\"2024-04-22\",\"participants\":[\"Interviewer\",\"Candidate\"]}}",
+          "description": "Create a JSON formatted transcript from an interview recording with no timestamps or speaker labels, including meeting metadata."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeMinutes",
+      "description": "This tool generates a well-structured meeting minutes document based on input details such as meeting date, participants, agenda items, discussions, action items, and decisions. It organizes the input into a clear and professional minutes format, suitable for distribution and archiving.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "meetingDate",
+          "type": "string",
+          "description": "The date when the meeting took place, formatted as YYYY-MM-DD.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "participants",
+          "type": "array",
+          "description": "An array of participant names or identifiers who attended the meeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "agendaItems",
+          "type": "array",
+          "description": "List of agenda topics discussed during the meeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "discussionPoints",
+          "type": "object",
+          "description": "An object mapping each agenda item to an array of detailed discussion points or notes.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "actionItems",
+          "type": "array",
+          "description": "Array of action items, each including task description, responsible person, and due date.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "decisions",
+          "type": "array",
+          "description": "List of decisions or resolutions made in the meeting.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "meetingTitle",
+          "type": "string",
+          "description": "Optional title or subject of the meeting.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Structured meeting minutes containing formatted text and sections such as Date, Participants, Agenda, Discussion, Action Items, and Decisions in markdown format."
+      },
+      "aiAgent": {
+        "useCase": "AI agents should use this tool to efficiently create formal meeting minutes documents from raw meeting data, ensuring consistency, clarity, and professionalism. It's especially useful for summarizing discussion points, tracking decisions and action items for future reference and accountability.",
+        "limitations": "This tool cannot transcribe audio or video recordings; it requires structured input data. It also does not generate summaries beyond the provided details.",
+        "examples": [
+          "Create meeting minutes from a development team meeting with detailed agenda and assigned action items.",
+          "Generate a formatted minutes document for a project kickoff meeting including participants and decisions.",
+          "Summarize and structure the notes of a client status update meeting into professional minutes."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "meeting",
+        "minutes",
+        "summary",
+        "organizational",
+        "productivity"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"meetingDate\":\"2024-05-15\",\"participants\":[\"Alice Smith\",\"Bob Johnson\",\"Carol Lee\"],\"agendaItems\":[\"Project Status\",\"Budget Review\",\"Next Steps\"],\"discussionPoints\":{\"Project Status\":[\"Alice reported progress on the frontend module.\",\"Bob noted backend integration is behind schedule.\"],\"Budget Review\":[\"Carol presented updated budget figures.\",\"Team discussed potential cost savings.\"],\"Next Steps\":[\"Assign testing tasks.\",\"Prepare presentation for stakeholders.\"]},\"actionItems\":[{\"task\":\"Complete frontend testing\",\"owner\":\"Alice Smith\",\"dueDate\":\"2024-05-22\"},{\"task\":\"Update budget report\",\"owner\":\"Carol Lee\",\"dueDate\":\"2024-05-20\"}],\"decisions\":[\"Approve budget increase of 10%.\",\"Prioritize backend integration in next sprint.\"],\"meetingTitle\":\"Weekly Project Meeting\"}",
+          "description": "Generate minutes for a weekly project meeting with participants, agenda, detailed discussions, actions, and decisions."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeArticle",
+      "description": "This tool composes a structured article based on provided inputs such as topic, outline, target audience, and style preferences. It processes the input parameters to generate a coherent, well-formatted document article in markdown or HTML format as requested.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or theme of the article to be written.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outline",
+          "type": "array",
+          "description": "An ordered list of headings and subheadings defining the article structure.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended readers to tailor language and complexity accordingly.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "Writing style of the article, e.g., formal, conversational, technical.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired word count of the article.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format of the article, such as 'markdown' or 'html'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeReferences",
+          "type": "boolean",
+          "description": "Whether to include references or citations if applicable.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the composed article text and metadata such as word count and format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate a cohesive and structured article on a specific topic with optional customization including outline, audience, style, length, and output format. It is ideal for drafting documentation, blog posts, or informational content automatically.",
+        "limitations": "The tool cannot replace expert domain knowledge or ensure factual accuracy without external validation. It does not generate images or multimedia content. Complex multi-topic articles may require additional user input or editing.",
+        "examples": [
+          "Compose an article on climate change impacts aimed at high school students with a conversational style and around 1000 words.",
+          "Generate a technical article about REST API best practices with a detailed outline in markdown format.",
+          "Create a formal article about advancements in AI including references, targeting researchers."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "article composition",
+        "content generation",
+        "writing",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Benefits of Meditation for Mental Health\",\"outline\":[\"Introduction\",\"Physical Benefits\",\"Psychological Benefits\",\"How to Meditate\",\"Conclusion\"],\"targetAudience\":\"general public interested in wellness\",\"style\":\"conversational\",\"length\":900,\"format\":\"markdown\",\"includeReferences\":true}",
+          "description": "Compose a structured, conversational article on meditation benefits targeting wellness enthusiasts with references in markdown."
+        },
+        {
+          "inputJson": "{\"topic\":\"Cloud Computing Security\",\"style\":\"technical\",\"length\":1200,\"format\":\"html\"}",
+          "description": "Generate a technical article in HTML format about cloud computing security basics and challenges."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeDocument",
+      "description": "This tool generates a structured document by combining multiple textual inputs such as sections or paragraphs. It accepts an array of content blocks with optional titles, merges them in specified order, applies basic formatting preferences, and outputs a cohesive formatted document string suitable for documentation purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "contentBlocks",
+          "type": "array",
+          "description": "An array of objects representing document sections, each with a mandatory 'text' string and optional 'title' string to include as headings.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to prepend a generated table of contents based on section titles at the start of the document.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Desired output format of the document, e.g., 'markdown', 'html', or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "An optional overall title for the document to be included at the top.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single string field 'document' with the composed and formatted document content."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically generate combined documentation content from multiple text segments or sections into a single formatted document, for instance to create reports, user guides, or technical documents.",
+        "limitations": "This tool does not perform advanced semantic content generation, detailed layout styling, or include media content. It focuses on textual composition with simple formatting in limited formats.",
+        "examples": [
+          "Generate a markdown user guide by combining section texts with titles and a table of contents.",
+          "Create a plain text document from an array of paragraphs without any formatting.",
+          "Produce an HTML help page by composing multiple sections with headings."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "compose",
+        "text processing",
+        "formatting",
+        "document generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"contentBlocks\":[{\"title\":\"Introduction\",\"text\":\"This document provides an overview of the project.\"},{\"title\":\"Details\",\"text\":\"Here are the technical details of the system.\"}],\"includeTableOfContents\":true,\"format\":\"markdown\",\"title\":\"Project Overview\"}",
+          "description": "Compose a markdown document with a title, two sections, and a generated table of contents."
+        },
+        {
+          "inputJson": "{\"contentBlocks\":[{\"text\":\"First paragraph without a title.\"},{\"text\":\"Second paragraph as continuation.\"}],\"includeTableOfContents\":false,\"format\":\"plaintext\",\"title\":\"\"}",
+          "description": "Create a plain text document from paragraphs without titles or table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateReference",
+      "description": "Generates a detailed reference document for specified programming APIs, libraries, or modules based on structured input definitions. Accepts input such as function signatures, descriptions, and parameter details, and produces comprehensive formatted reference documentation in Markdown or HTML format.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputDefinitions",
+          "type": "array",
+          "description": "Array of objects defining the API elements such as functions, classes, or constants to include in the reference documentation. Each object includes name, type, description, parameters, and return information.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Specifies the desired output format of the reference document. Supported values include 'markdown' and 'html'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include usage examples in the generated reference for each API item, if provided in input definitions.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "documentationTitle",
+          "type": "string",
+          "description": "Title to be displayed at the top of the generated reference documentation.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "styleOptions",
+          "type": "object",
+          "description": "Optional styling preferences such as themes or custom CSS for HTML output. Ignored if outputFormat is markdown.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated reference documentation as a string and its format type. Example: { content: '...', format: 'markdown' }"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to programmatically generate clear, structured reference documentation from raw API definitions or specs, especially to maintain consistent, up-to-date technical docs or developer guides. It helps automate documentation generation rather than manual writing.",
+        "limitations": "This tool cannot automatically extract API definitions from source code or interpret undocumented behavior. It relies on well-structured, complete input definitions. It also does not perform spellchecking or grammar analysis of descriptions.",
+        "examples": [
+          "Generate Markdown API reference for a set of backend service functions.",
+          "Produce HTML formatted reference docs including usage examples for a JavaScript library.",
+          "Create a concise reference section with custom title and no examples for utility functions."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "reference",
+        "generate",
+        "API",
+        "developer",
+        "tooling",
+        "markdown",
+        "html"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputDefinitions\":[{\"name\":\"calculateSum\",\"type\":\"function\",\"description\":\"Calculates the sum of two numbers.\",\"parameters\":[{\"name\":\"a\",\"type\":\"number\",\"description\":\"First number\"},{\"name\":\"b\",\"type\":\"number\",\"description\":\"Second number\"}],\"returns\":{\"type\":\"number\",\"description\":\"Sum of a and b.\"},\"examples\":[\"calculateSum(2,3) // returns 5\"]}],\"outputFormat\":\"markdown\",\"includeExamples\":true,\"documentationTitle\":\"Math Utilities API Documentation\"}",
+          "description": "Generate Markdown reference documentation for a simple math utility function including usage examples and a custom title."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.composeReport",
+      "description": "This tool composes a structured report document based on provided textual content, metadata, and optional formatting preferences. It accepts inputs such as the report title, sections with headings and content, author information, date, and output format. The tool processes and organizes these inputs into a coherent report document output in formats like Markdown, HTML, or plain text.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the report to be displayed prominently.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section objects, each including a heading and content text to be included in the report body.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "The author or creator of the report. Used for metadata or a byline.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "The date string to include in the report header or footer, formatted as YYYY-MM-DD or similar.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The output document format: supported options include 'markdown', 'html', or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Flag to indicate whether to generate and include a table of contents based on section headings.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the completed report as a string document under 'reportContent' with the specified formatting."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a structured report document needs to be generated from multiple text sections and metadata, enabling automated document creation workflows such as status updates, summaries, or reviews.",
+        "limitations": "This tool does not analyze, summarize, or generate content on its own; it requires fully provided text and metadata. It also does not support complex document layouts or embedded media beyond text formatting in supported output formats.",
+        "examples": [
+          "Compose a project status report with title, date, author, sections for progress and next steps, output as Markdown.",
+          "Generate a report in HTML format from given sections with a table of contents and author info.",
+          "Create a simple plaintext report with no table of contents for quick sharing."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "report",
+        "compose",
+        "document-generation",
+        "markdown",
+        "html",
+        "plaintext"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Q2 Performance Review\",\"sections\":[{\"heading\":\"Executive Summary\",\"content\":\"The company met all key targets for the quarter.\"},{\"heading\":\"Financial Highlights\",\"content\":\"Revenue increased by 15% compared to Q1.\"},{\"heading\":\"Future Outlook\",\"content\":\"Plans for expansion in new markets are underway.\"}],\"author\":\"Jane Doe\",\"date\":\"2024-06-01\",\"format\":\"markdown\",\"includeTableOfContents\":true}",
+          "description": "Create a detailed Markdown report including author and date, with a table of contents, summarizing quarterly performance."
+        },
+        {
+          "inputJson": "{\"title\":\"Weekly Team Update\",\"sections\":[{\"heading\":\"Completed Tasks\",\"content\":\"Resolved all critical bugs and finished sprint work.\"},{\"heading\":\"Upcoming Tasks\",\"content\":\"Start the new feature implementation next week.\"}],\"author\":\"John Smith\",\"format\":\"plaintext\",\"includeTableOfContents\":false}",
+          "description": "Generate a plain text weekly update report with author but no table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "compose",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateQuote",
+      "description": "Generates a formatted, customizable inspirational or thematic quote for use in documentation, presentations, or reports. Accepts parameters specifying desired themes, authors, languages, and formatting options, then outputs a clean quote text with optional attribution information suitable for embedding.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Specify the theme or topic of the quote, such as 'motivation', 'innovation', or 'teamwork'.",
+          "required": false,
+          "defaultValue": "\"inspiration\""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Filter quotes only by a specific author or leave empty to allow any author.",
+          "required": false,
+          "defaultValue": "\"\""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Specifies the language code (e.g., 'en', 'es') for the quote output; defaults to English.",
+          "required": false,
+          "defaultValue": "\"en\""
+        },
+        {
+          "name": "includeAttribution",
+          "type": "boolean",
+          "description": "Whether to include the author's name alongside the quote text in the output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum character length of the quote text; longer quotes will be excluded or truncated if necessary.",
+          "required": false,
+          "defaultValue": "200"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the quote text, author name (if available and requested), theme, and language info."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to dynamically generate theme-specific or motivational quotes to enrich documentation, slide decks, or reports, especially to inspire teams or highlight key values. It helps automate and customize insertions of relevant quotes without manual search.",
+        "limitations": "Cannot guarantee attribution correctness for all quotes; limited to available quote databases; does not generate original quotes but selects from existing ones.",
+        "examples": [
+          "Generate a motivational quote about teamwork in English, including the author.",
+          "Get a short quote on innovation from Albert Einstein.",
+          "Produce a Spanish language quote on leadership without attribution."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "quote",
+        "inspirational",
+        "automation",
+        "formatting",
+        "author",
+        "theme"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"theme\":\"teamwork\",\"language\":\"en\",\"includeAttribution\":true}",
+          "description": "Generate a motivational quote about teamwork in English, including the author."
+        },
+        {
+          "inputJson": "{\"theme\":\"innovation\",\"author\":\"Albert Einstein\",\"maxLength\":100}",
+          "description": "Get a short quote on innovation from Albert Einstein."
+        },
+        {
+          "inputJson": "{\"theme\":\"leadership\",\"language\":\"es\",\"includeAttribution\":false}",
+          "description": "Produce a Spanish language quote on leadership without attribution."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateCitation",
+      "description": "Generates a properly formatted citation entry for a specified source type (e.g., book, article, website) in a chosen citation style (e.g., APA, MLA, Chicago). It accepts bibliographic details as input and outputs a formatted citation string suitable for inclusion in academic or professional documents.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of the source to cite (e.g., book, journalArticle, website). Determines required citation fields.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format the output (e.g., APA, MLA, Chicago).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "bibliographicData",
+          "type": "object",
+          "description": "An object containing key bibliographic details about the source such as author(s), title, publisher, date, URL, etc., matching the sourceType requirements.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeDOI",
+          "type": "boolean",
+          "description": "Whether to include the DOI (Digital Object Identifier) in the citation if available in bibliographicData.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single string field 'formattedCitation' with the properly formatted citation text."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when a user needs a correctly formatted bibliographic citation based on partial or complete source details to ensure consistent documentation and avoid plagiarism. It helps in generating references following specific style guides automatically.",
+        "limitations": "This tool cannot verify the accuracy of bibliographic data provided. It can't generate citations for unknown or unsupported source types/styles and does not extract metadata from raw documents or URLs.",
+        "examples": [
+          "Generate an APA style citation for a book with author name, title, publisher, and year.",
+          "Format a MLA citation for a journal article including author, article title, journal name, volume, issue, pages, and publication date.",
+          "Create a Chicago style citation for a website with author, webpage title, URL, and access date."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "citation",
+        "bibliography",
+        "formatting",
+        "academic",
+        "reference"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceType\":\"book\",\"citationStyle\":\"APA\",\"bibliographicData\":{\"author\":[\"John Doe\"],\"title\":\"Understanding AI\",\"publisher\":\"Tech Press\",\"year\":\"2022\"},\"includeDOI\":false}",
+          "description": "Generate an APA citation for a book with typical bibliographic fields."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"journalArticle\",\"citationStyle\":\"MLA\",\"bibliographicData\":{\"author\":[\"Jane Smith\",\"Alan Brown\"],\"articleTitle\":\"Advances in Machine Learning\",\"journalName\":\"Journal of AI Research\",\"volume\":\"34\",\"issue\":\"2\",\"pages\":\"123-145\",\"year\":\"2023\"},\"includeDOI\":true}",
+          "description": "Generate an MLA style citation for a journal article with multiple authors and DOI included."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"website\",\"citationStyle\":\"Chicago\",\"bibliographicData\":{\"author\":[\"Emily White\"],\"pageTitle\":\"AI Trends 2024\",\"websiteName\":\"Tech Insights\",\"url\":\"https://techinsights.example/ai-trends-2024\",\"accessDate\":\"2024-04-20\"},\"includeDOI\":false}",
+          "description": "Generate a Chicago style citation for a website including access date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateText",
+      "description": "Generates structured textual documentation based on provided input parameters including topic, style, and key points. Accepts a documentation topic, optional outline points, and style preferences, then produces coherent, formatted text suitable for manuals, guides, or reference documents.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or topic for the documentation text to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "An optional list of key points or subtopics to cover within the generated text.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "documentStyle",
+          "type": "string",
+          "description": "Preferred style or tone for the documentation (e.g., formal, concise, detailed).",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language code for the generated text (e.g., 'en' for English).",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the generated text in characters or words, depending on implementation.",
+          "required": false,
+          "defaultValue": "1000"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated documentation text as a string, formatted per style guidelines."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate clear, coherent documentation text on a specific topic with optional detailed points and defined style preferences. Ideal for creating manuals, product guides, or technical explanations automatically.",
+        "limitations": "Cannot verify factual correctness of generated content or replace domain expert review; may produce generic text if key points are insufficient or too vague.",
+        "examples": [
+          "Generate a formal user guide introduction on 'Installing Software' covering steps and troubleshooting tips.",
+          "Create concise API documentation text for 'Authentication API' with endpoints and example usages.",
+          "Produce detailed reference text on 'Data Backup Procedures' with emphasis on security best practices."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "text generation",
+        "content creation",
+        "manual",
+        "guide",
+        "technical writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Installing Software\",\"keyPoints\":[\"Download\",\"Installation steps\",\"Troubleshooting\"],\"documentStyle\":\"formal\",\"language\":\"en\",\"maxLength\":800}",
+          "description": "Generate a formal introduction and overview text for software installation covering download, steps, and troubleshooting."
+        },
+        {
+          "inputJson": "{\"topic\":\"Authentication API\",\"keyPoints\":[\"Endpoints\",\"Authentication methods\",\"Error codes\"],\"documentStyle\":\"concise\",\"language\":\"en\",\"maxLength\":600}",
+          "description": "Create concise API documentation for an authentication API including endpoints and common errors."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Text",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateHeading",
+      "description": "Generates a formatted heading string based on the specified heading text and level, optionally including markdown or HTML formatting. Accepts plain text for the heading and outputs a correctly formatted heading for documentation purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "headingText",
+          "type": "string",
+          "description": "The text content for the heading to generate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "level",
+          "type": "number",
+          "description": "The heading level, typically from 1 (largest) to 6 (smallest).",
+          "required": true,
+          "defaultValue": "1"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "The output formatting style: 'markdown', 'html', or 'plain'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeNumbering",
+          "type": "boolean",
+          "description": "Whether to prefix the heading with an automatic hierarchical number sequence.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "numberingPrefix",
+          "type": "string",
+          "description": "Custom prefix for heading numbering if includeNumbering is true.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted heading string under the key 'formattedHeading'. The string will be ready for inclusion in documentation with proper formatting and level indication."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to generate structured documentation headings programmatically, ensuring consistent formatting for markdown, HTML, or plain text documentation files. It helps automate heading creation with correct levels and optional numbering for organizing document sections.",
+        "limitations": "This tool cannot parse existing documents to detect headings or manage full document structure. It only generates individual headings based on input parameters.",
+        "examples": [
+          "Generate a markdown H2 heading with text 'Installation'.",
+          "Generate an HTML H4 heading for chapter title with numbering.",
+          "Generate a plain text heading level 3 without formatting."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "heading",
+        "generate",
+        "markdown",
+        "html",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"headingText\":\"Introduction to API\",\"level\":1,\"format\":\"markdown\",\"includeNumbering\":false}",
+          "description": "Generate a top-level markdown heading 'Introduction to API' without numbering."
+        },
+        {
+          "inputJson": "{\"headingText\":\"Setup Guide\",\"level\":2,\"format\":\"html\",\"includeNumbering\":true,\"numberingPrefix\":\"2.\"}",
+          "description": "Generate a level 2 HTML heading with numbering prefix '2.' for 'Setup Guide'."
+        },
+        {
+          "inputJson": "{\"headingText\":\"Notes\",\"level\":3,\"format\":\"plain\",\"includeNumbering\":false}",
+          "description": "Generate a plain text level 3 heading 'Notes' without any markup or numbering."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Heading",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateWord",
+      "description": "Generates a well-formed, contextually relevant English word based on optional parameters such as desired length, part of speech, theme, or complexity level. Accepts these criteria and returns a suitable word string that can be used for documentation, writing, or creative purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "partOfSpeech",
+          "type": "string",
+          "description": "Specifies the desired part of speech for the generated word, e.g., noun, verb, adjective. If empty, any part of speech may be generated.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "minLength",
+          "type": "number",
+          "description": "The minimum number of letters the generated word should have.",
+          "required": false,
+          "defaultValue": "1"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "The maximum number of letters the generated word should have.",
+          "required": false,
+          "defaultValue": "15"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Optional semantic theme or category to guide the word selection (e.g., technology, nature, finance).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "complexityLevel",
+          "type": "string",
+          "description": "Indicates desired complexity of the word such as simple, intermediate, or advanced vocabulary level.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated word as a string and metadata including part of speech, length, and theme if specified."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing a single English word that meets specific criteria such as part of speech, length, theme, or complexity for inclusion in documentation, writing templates, or example content. It helps automate word generation to fit contextual or stylistic needs.",
+        "limitations": "Cannot generate phrases or multiple words at once. Does not provide definitions or detailed linguistic data beyond basic metadata. Outputs only one word per request.",
+        "examples": [
+          "Generate a noun related to technology with 5-8 letters.",
+          "Generate a simple adjective that conveys positivity.",
+          "Generate a complex verb between 7 and 12 letters."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "word-generation",
+        "language",
+        "content-creation",
+        "writing",
+        "vocabulary"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"partOfSpeech\":\"noun\",\"minLength\":5,\"maxLength\":8,\"theme\":\"technology\",\"complexityLevel\":\"\"}",
+          "description": "Generate a technology-themed noun between 5 to 8 letters long."
+        },
+        {
+          "inputJson": "{\"partOfSpeech\":\"adjective\",\"minLength\":3,\"maxLength\":10,\"theme\":\"\",\"complexityLevel\":\"simple\"}",
+          "description": "Generate a simple adjective word of length 3 to 10 letters."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateLink",
+      "description": "Generates a well-formed hyperlink markdown or HTML snippet based on provided text and URL inputs. It accepts display text, target URL, optional title, link target attribute, and output format, then processes these to produce either markdown or HTML formatted links suitable for embedding in documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "displayText",
+          "type": "string",
+          "description": "The text to be shown as the clickable link in the output.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The target URL that the link will point to.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title attribute providing additional info on hover. If empty, no title attribute is added.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "target",
+          "type": "string",
+          "description": "Optional target attribute for HTML links (e.g., _blank). Ignored for markdown output. If empty, target is not included.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Specifies the output format of the link: 'markdown' or 'html'. Defaults to markdown.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing a single string property 'link' with the formatted hyperlink text ready to embed in documentation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically create hyperlinks for documentation content, supporting multiple formats (Markdown or HTML) and optional link attributes. It helps automate embedding consistent, properly formatted links based on input parameters in software or technical documents.",
+        "limitations": "This tool only generates the formatted link string; it does not verify URL validity, fetch metadata, or embed complex interactive content. It does not generate link lists or navigation structures, only single links per call.",
+        "examples": [
+          "Generate a markdown link with display text 'OpenAI' pointing to 'https://openai.com'.",
+          "Create an HTML link opening in a new tab with title attribute.",
+          "Produce a simple markdown link without title or target attributes."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "link-generation",
+        "markdown",
+        "html",
+        "automation",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"displayText\":\"OpenAI\",\"url\":\"https://openai.com\",\"title\":\"OpenAI Homepage\",\"target\":\"\",\"outputFormat\":\"markdown\"}",
+          "description": "Generate a markdown link with title attribute omitted in output."
+        },
+        {
+          "inputJson": "{\"displayText\":\"TPMJS Tool Registry\",\"url\":\"https://example.com/tools\",\"title\":\"TPMJS Tools\",\"target\":\"_blank\",\"outputFormat\":\"html\"}",
+          "description": "Generate an HTML link opening in a new tab with a title attribute."
+        },
+        {
+          "inputJson": "{\"displayText\":\"Documentation\",\"url\":\"https://docs.example.com\",\"title\":\"\",\"target\":\"\",\"outputFormat\":\"markdown\"}",
+          "description": "Generate a simple markdown link without any title attribute."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateSentence",
+      "description": "Generates a well-formed, contextually relevant sentence for documentation purposes based on provided keywords, tone, and style preferences. Accepts keywords or phrases related to the documentation topic, optional tone (formal, casual, technical), and style guidelines, and returns a clear, concise sentence suitable for inclusion in user manuals, API docs, or help files.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "List of keywords or phrases that the sentence should include or relate to",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Tone of the generated sentence; affects formality and style (e.g., 'formal', 'casual', 'technical')",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "styleGuide",
+          "type": "string",
+          "description": "Optional style guide name or description to tailor sentence construction (e.g., 'APA', 'Microsoft Style Guide')",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum number of words in the generated sentence to ensure conciseness",
+          "required": false,
+          "defaultValue": "30"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated sentence as a string and metadata such as detected tone and keywords used, facilitating easy integration into documentation pipelines."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to produce clear, relevant sentences for technical or user documentation on specific topics, ensuring the output aligns with desired tone and style standards. It helps automate writing tasks by generating meaningful, concise sentences from key concepts or terms.",
+        "limitations": "Cannot generate multi-sentence paragraphs or fully structured documentation sections. Does not guarantee legal or highly specialized scientific accuracy. Tone and style are approximations based on input parameters.",
+        "examples": [
+          "Generate a formal sentence including keywords 'API', 'authentication', and 'security'.",
+          "Create a casual sentence about 'error handling' and 'debugging'.",
+          "Produce a concise technical sentence adhering to the Microsoft Style Guide on 'performance optimization' and 'caching'."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "sentence-generation",
+        "content-creation",
+        "writing-assistant",
+        "technical-writing",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"keywords\":[\"API\",\"authentication\",\"security\"],\"tone\":\"formal\",\"styleGuide\":\"\",\"maxLength\":25}",
+          "description": "Generate a formal sentence about API authentication security."
+        },
+        {
+          "inputJson": "{\"keywords\":[\"error handling\",\"debugging\"],\"tone\":\"casual\",\"styleGuide\":\"\",\"maxLength\":20}",
+          "description": "Create a casual sentence on error handling and debugging."
+        },
+        {
+          "inputJson": "{\"keywords\":[\"performance optimization\",\"caching\"],\"tone\":\"technical\",\"styleGuide\":\"Microsoft Style Guide\",\"maxLength\":30}",
+          "description": "Produce a technical sentence on performance optimization and caching following the Microsoft Style Guide."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateParagraph",
+      "description": "Generates a coherent, contextually relevant paragraph for documentation based on a given topic, key points, and desired tone. Accepts input parameters specifying the topic, optional key points to include, preferred tone, and target audience. Produces a polished paragraph suitable for integration into technical or user documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or topic of the paragraph to generate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "An optional list of specific points or concepts to include within the paragraph to ensure coverage of important details.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The desired tone or style of the paragraph, e.g., formal, informal, instructional, friendly.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience for whom the documentation paragraph is being generated, e.g., developers, end users, administrators.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated paragraph text as a string and metadata about the generation such as character count."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create informative, readable paragraphs to document features, concepts, or instructions based on a given topic and specific desired style or audience. It is useful for generating consistent documentation content that can be refined or directly integrated.",
+        "limitations": "This tool generates text based on input parameters but cannot verify factual accuracy or replace domain expert review. It also may not produce paragraphs perfectly matching very niche or complex technical details without detailed key points.",
+        "examples": [
+          "Generate a formal paragraph summarizing a software library feature for developer documentation.",
+          "Produce a friendly explanation paragraph about a product feature aimed at end users.",
+          "Create a technical instruction paragraph including specified troubleshooting steps for system administrators."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "generate",
+        "paragraph",
+        "content creation",
+        "technical writing",
+        "text generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"API rate limiting\",\"keyPoints\":[\"definition\",\"importance\",\"common implementation methods\"],\"tone\":\"formal\",\"targetAudience\":\"developers\"}",
+          "description": "Generate a formal paragraph explaining API rate limiting for software developer documentation including common implementation methods."
+        },
+        {
+          "inputJson": "{\"topic\":\"Password reset feature\",\"tone\":\"friendly\",\"targetAudience\":\"end users\"}",
+          "description": "Create a friendly paragraph explaining the password reset feature for end user help documentation without specific key points."
+        },
+        {
+          "inputJson": "{\"topic\":\"Troubleshooting network connectivity issues\",\"keyPoints\":[\"check cables\",\"restart router\",\"verify IP settings\"],\"tone\":\"instructional\",\"targetAudience\":\"system administrators\"}",
+          "description": "Generate an instructional paragraph covering key network troubleshooting steps for system admin documentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Paragraph",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateSession",
+      "description": "Generates a structured documentation session summary based on provided analytics data for user interactions within a software platform. Accepts session analytics input including timestamps, user actions, and event details, processes and organizes this information, and produces a readable session report suitable for documentation or analysis.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sessionId",
+          "type": "string",
+          "description": "Unique identifier for the session to generate documentation for.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "analyticsData",
+          "type": "object",
+          "description": "Raw analytics data object containing user actions, timestamps, event types and metadata for the session.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeSummary",
+          "type": "boolean",
+          "description": "Whether to include a high-level summary of session activity in the output report.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "timeZone",
+          "type": "string",
+          "description": "The time zone to use when formatting date and time values in the session document.",
+          "required": false,
+          "defaultValue": "UTC"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the session documentation, e.g., markdown, html, or plain text.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated session documentation text in the specified format, along with metadata such as length, creation timestamp, and session ID."
+      },
+      "aiAgent": {
+        "useCase": "Use when an AI assistant needs to convert raw session analytics data of user interactions into a readable, structured document that summarizes key events, sequences and metrics for reporting or review purposes. Helpful for transforming complex analytics into digestible text for documentation or stakeholder communication.",
+        "limitations": "This tool cannot analyze or interpret the semantics of user actions beyond summarizing event metadata; it requires complete and structured analytics input and does not generate real-time analytics documentation.",
+        "examples": [
+          "Generate a markdown session report for user session 12345 with full analytics data",
+          "Create a plain text summary document of session analytics in the EST timezone",
+          "Produce HTML formatted documentation of a session's user interaction events including a summary"
+        ]
+      },
+      "tags": [
+        "documentation",
+        "analytics",
+        "session",
+        "generate",
+        "reporting",
+        "user-interactions",
+        "summary"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sessionId\":\"abc123\",\"analyticsData\":{\"events\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"eventType\":\"click\",\"elementId\":\"btn-submit\"},{\"timestamp\":\"2024-06-01T12:01:00Z\",\"eventType\":\"pageview\",\"page\":\"home\"}]},\"includeSummary\":true,\"timeZone\":\"UTC\",\"outputFormat\":\"markdown\"}",
+          "description": "Generate a markdown formatted session documentation with a summary, using UTC time zone."
+        },
+        {
+          "inputJson": "{\"sessionId\":\"sess789\",\"analyticsData\":{\"events\":[{\"timestamp\":\"2024-06-15T08:30:00-04:00\",\"eventType\":\"scroll\",\"scrollDepth\":\"50%\"}]},\"includeSummary\":false,\"timeZone\":\"America/New_York\",\"outputFormat\":\"html\"}",
+          "description": "Generate an HTML session report for a single scroll event without summary in Eastern time zone."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Session",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateAnomaly",
+      "description": "This tool analyzes documentation changes and usage patterns to detect and generate reports on anomalies such as unusual content modifications, access spikes, or metadata irregularities. It accepts changelog data and access logs as inputs, processes them with anomaly detection algorithms, and outputs a structured anomaly report for documentation maintenance and quality assurance.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "changelogData",
+          "type": "array",
+          "description": "Array of documentation change entries, each with timestamps, authors, and content diffs, to analyze for unusual modifications.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessLogs",
+          "type": "array",
+          "description": "Array of access log entries including user IDs, timestamps, and actions to detect irregular access patterns.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timeWindowHours",
+          "type": "number",
+          "description": "Time window in hours to consider for analyzing anomalies in changes and accesses.",
+          "required": false,
+          "defaultValue": "24"
+        },
+        {
+          "name": "sensitivityLevel",
+          "type": "string",
+          "description": "Level of anomaly sensitivity: 'low', 'medium', or 'high', controls detection thresholds.",
+          "required": false,
+          "defaultValue": "medium"
+        },
+        {
+          "name": "includeMetadataAnalysis",
+          "type": "boolean",
+          "description": "Whether to analyze metadata fields such as tags and version numbers for irregularities.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with anomaly summaries including anomaly type, severity scores, affected documentation sections, timestamps, and suggested next steps for review or correction."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when there is a need to monitor documentation integrity over time, especially to detect unexpected or suspicious changes that could indicate errors, unauthorized edits, or technical issues in documentation systems. It helps maintain high quality and trustworthiness of documentation by flagging anomalies automatically.",
+        "limitations": "This tool cannot automatically fix anomalies or guarantee detection of all subtle issues. It depends on quality and granularity of input changelog and access data. It does not interpret content correctness or semantics beyond pattern anomalies.",
+        "examples": [
+          "Detect unusual spikes in documentation edits in the last 24 hours.",
+          "Identify irregular access patterns to sensitive documentation pages.",
+          "Generate anomaly report with high sensitivity including metadata fields."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "anomaly-detection",
+        "analytics",
+        "quality-assurance",
+        "monitoring"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"changelogData\":[{\"timestamp\":\"2024-06-01T10:00:00Z\",\"author\":\"userA\",\"diff\":\"Added new section on installation.\"},{\"timestamp\":\"2024-06-01T10:05:00Z\",\"author\":\"userB\",\"diff\":\"Deleted entire introduction.\"}],\"accessLogs\":[{\"timestamp\":\"2024-06-01T09:50:00Z\",\"userId\":\"userA\",\"action\":\"edit\"},{\"timestamp\":\"2024-06-01T10:04:00Z\",\"userId\":\"userB\",\"action\":\"edit\"}],\"timeWindowHours\":1,\"sensitivityLevel\":\"high\",\"includeMetadataAnalysis\":true}",
+          "description": "Detect anomalies in edits and accesses within 1 hour with high sensitivity."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Anomaly",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateEvent",
+      "description": "Generates a structured documentation event entry based on provided analytics event details. Accepts event metadata such as event name, description, parameters, and usage context, and outputs a formatted documentation snippet suitable for integration into technical docs or APIs.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "eventName",
+          "type": "string",
+          "description": "The unique name identifier of the analytics event to document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "eventDescription",
+          "type": "string",
+          "description": "A detailed explanation of the event's purpose and when it is triggered.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "eventParameters",
+          "type": "array",
+          "description": "An array of objects describing each parameter of the event, including name, type, and description.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "usageContext",
+          "type": "string",
+          "description": "Optional context or examples of where and how this event is used in the application.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format for the event documentation (e.g., markdown, HTML, JSON schema).",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated event documentation snippet in the specified format, ready for inclusion in documentation systems."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to automatically generate clear, structured documentation for analytics events in software projects. Ideal for technical writers or AI agents tasked with maintaining up-to-date event tracking docs without manual writing.",
+        "limitations": "This tool cannot validate the correctness or runtime existence of the event; it relies solely on provided input data. It does not generate code or analytics implementation, only documentation.",
+        "examples": [
+          "Generate a markdown snippet documenting a 'UserSignup' event with parameters and use case.",
+          "Produce HTML documentation for a 'PurchaseCompleted' event describing its fields and context.",
+          "Create a JSON schema representation as documentation for a 'PageView' event with no parameters."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "analytics",
+        "event",
+        "generate",
+        "technical-writing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"eventName\":\"UserSignup\",\"eventDescription\":\"Triggered when a new user successfully completes the signup process.\",\"eventParameters\":[{\"name\":\"userId\",\"type\":\"string\",\"description\":\"Unique identifier of the registered user.\"},{\"name\":\"signupMethod\",\"type\":\"string\",\"description\":\"Method used to signup, e.g., email, Google, Facebook.\"}],\"usageContext\":\"Used to measure conversion rate and analyze new user acquisition channels.\",\"outputFormat\":\"markdown\"}",
+          "description": "Generate markdown documentation for a UserSignup event with parameters and usage context."
+        },
+        {
+          "inputJson": "{\"eventName\":\"PurchaseCompleted\",\"eventDescription\":\"Fires after a successful purchase transaction is confirmed.\",\"eventParameters\":[{\"name\":\"orderId\",\"type\":\"string\",\"description\":\"Unique identifier for the purchase order.\"},{\"name\":\"amount\",\"type\":\"number\",\"description\":\"Total amount paid in the transaction.\"},{\"name\":\"currency\",\"type\":\"string\",\"description\":\"Currency code for the transaction amount.\"}],\"usageContext\":\"Helps in tracking revenue and purchase behaviors for analytics dashboards.\",\"outputFormat\":\"HTML\"}",
+          "description": "Produce an HTML formatted documentation snippet for the PurchaseCompleted analytics event."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Event",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateConversion",
+      "description": "Generates a detailed conversion analysis report based on input user journey and event data. It accepts JSON data of user events or funnel steps and produces a structured document outlining conversion rates, drop-offs, and suggestions in Markdown or HTML format for easy integration into project documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "eventData",
+          "type": "array",
+          "description": "An array of event objects representing user actions in a funnel or journey, each with timestamps and identifiers.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "funnelSteps",
+          "type": "array",
+          "description": "Ordered list of funnel step names corresponding to user events to define the conversion path.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the generated report, either 'markdown' or 'html'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeRecommendations",
+          "type": "boolean",
+          "description": "Flag to include conversion optimization suggestions in the output report.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "reportTitle",
+          "type": "string",
+          "description": "Title to use for the generated conversion report document.",
+          "required": false,
+          "defaultValue": "Conversion Analysis Report"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted conversion report as a string, and metadata such as conversion rates per step and overall funnel conversion percentage."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to transform raw user event or funnel data into a clear, structured conversion report for documentation or analytics purposes. Ideal for project managers or analysts preparing documentation to track conversion performance and suggest improvements.",
+        "limitations": "This tool does not collect or validate raw event data. It requires input data formatted to match the expected structure. It cannot replace full analytics platforms or real-time data processing.",
+        "examples": [
+          "Generate a conversion report markdown document from funnel event data for Q2 marketing campaign.",
+          "Create an HTML report showing step-wise conversion rates from provided user journey JSON.",
+          "Produce a conversion analysis with recommendations to identify drop-off points in user signup funnel."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "conversion",
+        "analytics",
+        "reporting",
+        "funnel",
+        "user-journey"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"eventData\":[{\"event\":\"Landing Page Visit\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"userId\":\"user123\"},{\"event\":\"Signup Start\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"userId\":\"user123\"},{\"event\":\"Signup Complete\",\"timestamp\":\"2024-05-01T10:07:00Z\",\"userId\":\"user123\"},{\"event\":\"Landing Page Visit\",\"timestamp\":\"2024-05-01T10:01:00Z\",\"userId\":\"user456\"},{\"event\":\"Signup Start\",\"timestamp\":\"2024-05-01T10:06:00Z\",\"userId\":\"user456\"}],\"funnelSteps\":[\"Landing Page Visit\",\"Signup Start\",\"Signup Complete\"],\"outputFormat\":\"markdown\",\"includeRecommendations\":true,\"reportTitle\":\"Q2 Signup Funnel Conversion Report\"}",
+          "description": "Generate a markdown conversion report for signup funnel with given event data and steps."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Conversion",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateTrend",
+      "description": "Generates a trend analysis report based on input documentation metadata or content metrics. Accepts parameters such as document update frequencies, number of contributors, or usage statistics over time, then analyzes and returns key trend indicators like growth patterns and activity spikes to assist documentation managers in understanding documentation lifecycle and engagement.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "dataSource",
+          "type": "string",
+          "description": "Type of data source to analyze, e.g., 'updateFrequency', 'contributorCounts', or 'usageStats'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timeRangeStart",
+          "type": "string",
+          "description": "ISO 8601 date string representing the start of the analysis time range.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "timeRangeEnd",
+          "type": "string",
+          "description": "ISO 8601 date string representing the end of the analysis time range.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "granularity",
+          "type": "string",
+          "description": "Time granularity for trend points, e.g., 'daily', 'weekly', 'monthly'.",
+          "required": false,
+          "defaultValue": "weekly"
+        },
+        {
+          "name": "documentsFilter",
+          "type": "array",
+          "description": "Optional list of document IDs or categories to limit the trend analysis scope.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeVisualizations",
+          "type": "boolean",
+          "description": "Whether to include visualization data like trend graphs in the output.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing analyzed trend data points, summary metrics like percentage growth or decline, detected peaks or anomalies, and optionally visualization data encoding charts or graphs."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to analyze documentation-related data over time to uncover usage or contribution trends, identify patterns of updates or user engagement, and generate summary insights for reporting or decision making. It supports metrics like document update rates, contributor activity, and access statistics.",
+        "limitations": "This tool only analyzes metadata or numeric usage statistics over time; it does not perform deep semantic content analysis or generate summaries of textual content itself. It requires appropriate input data format and time range parameters.",
+        "examples": [
+          "Generate a monthly trend report on document update frequency for the last year.",
+          "Analyze weekly contributor activity trends for a set of API documentation files.",
+          "Provide usage statistics trend with visual charts for the product manuals category in the last six months."
+        ]
+      },
+      "tags": [
+        "trend",
+        "analytics",
+        "documentation",
+        "reporting",
+        "usage",
+        "contributions"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"dataSource\":\"updateFrequency\",\"timeRangeStart\":\"2023-01-01\",\"timeRangeEnd\":\"2023-12-31\",\"granularity\":\"monthly\",\"includeVisualizations\":true}",
+          "description": "Monthly update frequency trends for all documentation in 2023 including visual charts."
+        },
+        {
+          "inputJson": "{\"dataSource\":\"contributorCounts\",\"timeRangeStart\":\"2023-06-01\",\"timeRangeEnd\":\"2024-05-31\",\"granularity\":\"weekly\",\"documentsFilter\":[\"doc123\",\"doc456\"]}",
+          "description": "Weekly contributor counts trend for two specific documents over the last year."
+        },
+        {
+          "inputJson": "{\"dataSource\":\"usageStats\",\"timeRangeStart\":\"2024-01-01\",\"timeRangeEnd\":\"2024-03-31\",\"granularity\":\"daily\",\"includeVisualizations\":false}",
+          "description": "Daily documentation usage statistics trend in Q1 2024 without charts."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Trend",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateKPI",
+      "description": "Generates a detailed KPI (Key Performance Indicator) report document based on provided analytical data and criteria. Accepts raw or processed analytics data along with KPI definitions, processes the data to compute relevant metrics, and outputs a structured document summarizing KPI performance with visualizations and insights, suitable for stakeholder reporting.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "analyticsData",
+          "type": "object",
+          "description": "The raw or aggregated analytics data to be analyzed for KPIs, provided as key-value pairs or nested objects.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "kpiDefinitions",
+          "type": "array",
+          "description": "Array of KPI definitions specifying metric names, calculation formulas, thresholds, and targets to evaluate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "reportTitle",
+          "type": "string",
+          "description": "Title of the KPI report document to be generated.",
+          "required": false,
+          "defaultValue": "KPI Report"
+        },
+        {
+          "name": "timePeriod",
+          "type": "string",
+          "description": "The time period for which the KPIs should be calculated and reported, e.g., 'Q1 2024' or 'Last 30 days'.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeVisualizations",
+          "type": "boolean",
+          "description": "Whether to include charts and graphs representing KPI trends and comparisons in the report.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the report document, e.g., 'pdf', 'html', or 'markdown'.",
+          "required": false,
+          "defaultValue": "pdf"
+        },
+        {
+          "name": "thresholdAlerts",
+          "type": "boolean",
+          "description": "Flag to highlight KPIs that are below or above defined thresholds or targets in the report.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated KPI report content (string) and metadata such as report format and summary statistics."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create formal KPI reports from analytics data to summarize performance for business or project stakeholders. It helps automate the aggregation, calculation, and presentation of KPIs in a standardized report format.",
+        "limitations": "This tool does not perform raw data collection or cleaning, nor does it replace a full BI system. Visualizations are basic and might not support highly customized charting needs.",
+        "examples": [
+          "Generate a quarterly sales KPI report with visual charts in PDF format.",
+          "Create a KPI summary for website traffic analytics over the past month highlighting underperforming metrics.",
+          "Produce a markdown KPI report comparing current performance against target thresholds."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "KPI",
+        "analytics",
+        "reporting",
+        "performance",
+        "metrics",
+        "business",
+        "visualization"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"analyticsData\":{\"salesTotal\":120000,\"newCustomers\":450,\"churnRate\":0.05},\"kpiDefinitions\":[{\"name\":\"Sales Total\",\"formula\":\"salesTotal\",\"threshold\":100000},{\"name\":\"New Customers\",\"formula\":\"newCustomers\",\"threshold\":400},{\"name\":\"Churn Rate\",\"formula\":\"churnRate\",\"threshold\":0.07}],\"reportTitle\":\"Q1 2024 Sales Performance\",\"timePeriod\":\"Q1 2024\",\"includeVisualizations\":true,\"outputFormat\":\"pdf\",\"thresholdAlerts\":true}",
+          "description": "Generate a PDF KPI report for Q1 2024 sales performance with charts and alerts for thresholds."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "KPI",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateMetric",
+      "description": "Generates analytics metrics based on documentation usage data. Accepts input parameters specifying the documentation platform, metric type (e.g., page views, average read time), time range, and optionally filters like document section or user role. Processes the usage logs to compute and return the requested metric in a structured report format.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "platform",
+          "type": "string",
+          "description": "The documentation platform or source (e.g., 'Confluence', 'ReadTheDocs').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "metricType",
+          "type": "string",
+          "description": "Type of metric to generate, such as 'pageViews', 'averageReadTime', 'uniqueVisitors', 'bounceRate'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "startDate",
+          "type": "string",
+          "description": "ISO 8601 formatted start date (YYYY-MM-DD) for the metric time range.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "endDate",
+          "type": "string",
+          "description": "ISO 8601 formatted end date (YYYY-MM-DD) for the metric time range.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "filters",
+          "type": "object",
+          "description": "Optional filter criteria such as {'section': 'API Reference', 'userRole': 'developer'}.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the calculated metric value, the metric type, the date range, and any applied filters. Example: { metricType: 'pageViews', value: 15342, startDate: '2024-01-01', endDate: '2024-01-31', filters: {...} }"
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing quantitative insights about documentation consumption to inform product decisions, content improvements, or user engagement strategies. Ideal for generating monthly reports, tracking feature adoption through docs, or analyzing user behavior patterns within a chosen documentation platform.",
+        "limitations": "Cannot retrieve raw user data due to privacy constraints; depends on platform availability of usage logs; does not perform complex predictive analytics or correlation beyond requested metric aggregation.",
+        "examples": [
+          "Generate monthly page views for the API documentation section on our Confluence site for January 2024.",
+          "Calculate the average read time for all help articles visited by users with the 'customer' role in the last quarter.",
+          "Report unique visitor count to the installation guide on ReadTheDocs between specified dates, filtering for new users only."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "analytics",
+        "metrics",
+        "reporting",
+        "usage",
+        "documentation-platform",
+        "data-analysis"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"platform\":\"Confluence\",\"metricType\":\"pageViews\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"filters\":{\"section\":\"API Reference\"}}",
+          "description": "Generate total page views for the API Reference section in Confluence for January 2024."
+        },
+        {
+          "inputJson": "{\"platform\":\"ReadTheDocs\",\"metricType\":\"averageReadTime\",\"startDate\":\"2023-10-01\",\"endDate\":\"2023-12-31\",\"filters\":{\"userRole\":\"developer\"}}",
+          "description": "Compute average time spent reading all documentation pages by users with developer role over Q4 2023 on ReadTheDocs."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Metric",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateDashboard",
+      "description": "Generates an interactive analytics dashboard based on input documentation metrics. Accepts JSON-formatted documentation data, processes key performance indicators such as coverage, update frequency, issue counts, and user feedback, then outputs a visually structured dashboard configuration in JSON for rendering or integration.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "metricsData",
+          "type": "object",
+          "description": "JSON object containing documentation metrics such as page views, update frequency, issue reports, and feedback scores.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dashboardTitle",
+          "type": "string",
+          "description": "Title of the generated dashboard to display as header.",
+          "required": false,
+          "defaultValue": "\"Documentation Analytics Dashboard\""
+        },
+        {
+          "name": "includeCharts",
+          "type": "array",
+          "description": "List of chart types to include in the dashboard such as ['bar', 'line', 'pie'].",
+          "required": false,
+          "defaultValue": "[\"bar\",\"line\"]"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Visual theme of the dashboard, e.g., 'light' or 'dark'.",
+          "required": false,
+          "defaultValue": "\"light\""
+        },
+        {
+          "name": "refreshInterval",
+          "type": "number",
+          "description": "Auto-refresh interval in seconds for dynamic dashboards; 0 means no auto-refresh.",
+          "required": false,
+          "defaultValue": "0"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A JSON object representing the dashboard layout, including specified charts, data mappings, and visual configurations ready for rendering in a compatible dashboard viewer."
+      },
+      "aiAgent": {
+        "useCase": "AI agents should use this tool to quickly create meaningful visual summaries of documentation-related analytics from raw metric data, enabling insights into documentation performance, user engagement, and issues in a concise dashboard format ideal for monitoring and reporting.",
+        "limitations": "This tool does not perform data collection or metric calculation; it requires preprocessed documentation metrics as input. It also cannot render the dashboard visually, only provides a JSON configuration for visualization tools.",
+        "examples": [
+          "Generate a dashboard highlighting documentation page views and update frequency with bar and line charts.",
+          "Create a dark themed dashboard summarizing issue counts and user feedback scores refreshed every 300 seconds.",
+          "Produce a simple dashboard titled 'API Docs Overview' with pie charts showing content coverage distribution."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "analytics",
+        "dashboard",
+        "visualization",
+        "metrics",
+        "reporting",
+        "data-visualization",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"metricsData\":{\"pageViews\":1200,\"updateFrequency\":5,\"issueReports\":10,\"feedbackScore\":4.2},\"dashboardTitle\":\"Project Docs Metrics\",\"includeCharts\":[\"bar\",\"pie\"],\"theme\":\"light\",\"refreshInterval\":60}",
+          "description": "Generate a dashboard showing key project documentation metrics including page views, update frequency, issue reports, and feedback score with bar and pie charts, refreshing every 60 seconds."
+        },
+        {
+          "inputJson": "{\"metricsData\":{\"pageViews\":3000,\"updateFrequency\":2,\"issueReports\":2,\"feedbackScore\":3.8},\"dashboardTitle\":\"API Docs Summary\",\"includeCharts\":[\"line\"],\"theme\":\"dark\",\"refreshInterval\":0}",
+          "description": "Create a dark-themed dashboard focused on API documentation summary metrics with a line chart and no auto-refresh."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Dashboard",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateForecast",
+      "description": "Generates a business forecast report based on input historical data and assumptions. Accepts time series data and key parameters such as forecast horizon and forecast model type. Processes the data using statistical or machine learning models to produce a detailed forecast summary and visualizations in a structured document format.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "historicalData",
+          "type": "array",
+          "description": "Array of historical data points, each with date and metric value, used as input for forecasting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "forecastHorizon",
+          "type": "number",
+          "description": "Number of future periods (days, months, etc.) to forecast.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "forecastFrequency",
+          "type": "string",
+          "description": "Frequency of data points, e.g., daily, weekly, monthly, to guide forecasting intervals.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "forecastModel",
+          "type": "string",
+          "description": "Type of forecasting model to use, e.g., ARIMA, exponential smoothing, or 'auto' for automatic selection.",
+          "required": false,
+          "defaultValue": "auto"
+        },
+        {
+          "name": "includeVisualizations",
+          "type": "boolean",
+          "description": "Whether to include charts such as line graphs and confidence intervals in the output document.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "confidenceInterval",
+          "type": "number",
+          "description": "Confidence interval percentage (e.g., 95) for forecast uncertainty estimation.",
+          "required": false,
+          "defaultValue": "95"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the output document, e.g., PDF, HTML, or Markdown.",
+          "required": false,
+          "defaultValue": "PDF"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object containing the generated forecast report content as a string, the generated visual assets as base64 strings if included, and metadata about the forecast such as model used and timestamp."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create comprehensive business forecast documentation from raw historical data, including numerical predictions and explanatory visuals, ideal for reporting, stakeholder presentations, and strategic planning.",
+        "limitations": "The tool depends on quality and completeness of historical data. It provides statistical or ML-based forecasts but does not guarantee forecasting accuracy or account for unforeseen events or qualitative factors.",
+        "examples": [
+          "Generate a 12-month sales forecast report using monthly sales data from the last 3 years, including graphs and confidence intervals.",
+          "Create a 30-day website traffic forecast in HTML format using daily visit counts and specify exponential smoothing model.",
+          "Produce a quarterly revenue forecast in PDF without visualizations using quarterly revenue data and default model selection."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "forecasting",
+        "business",
+        "report generation",
+        "time series",
+        "data analysis"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"historicalData\":[{\"date\":\"2021-01-01\",\"value\":500},{\"date\":\"2021-02-01\",\"value\":520},{\"date\":\"2021-03-01\",\"value\":530}],\"forecastHorizon\":12,\"forecastFrequency\":\"monthly\",\"forecastModel\":\"auto\",\"includeVisualizations\":true,\"confidenceInterval\":95,\"outputFormat\":\"PDF\"}",
+          "description": "Generate a 12-month forecast report from monthly sales data with default model and visualizations."
+        },
+        {
+          "inputJson": "{\"historicalData\":[{\"date\":\"2023-04-01\",\"value\":1200},{\"date\":\"2023-04-02\",\"value\":1300},{\"date\":\"2023-04-03\",\"value\":1250}],\"forecastHorizon\":30,\"forecastFrequency\":\"daily\",\"forecastModel\":\"exponentialSmoothing\",\"includeVisualizations\":true,\"confidenceInterval\":90,\"outputFormat\":\"HTML\"}",
+          "description": "Create 30-day daily traffic forecast in HTML format using exponential smoothing model."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Forecast",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateChart",
+      "description": "Generates customizable charts for documentation from structured data inputs such as JSON or CSV. Processes the data according to specified chart type and styling options, then outputs a chart image (PNG, SVG) or embeddable HTML snippet for integration into documentation pages.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "object",
+          "description": "Structured input data for the chart, either as an array of objects or a parsed JSON structure representing the dataset to visualize.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "chartType",
+          "type": "string",
+          "description": "Type of chart to generate, such as 'bar', 'line', 'pie', 'scatter'. Determines the visualization style.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title text displayed above the chart for context or description.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "xAxisLabel",
+          "type": "string",
+          "description": "Label for the x-axis of the chart, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "yAxisLabel",
+          "type": "string",
+          "description": "Label for the y-axis of the chart, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Output format of the generated chart: 'png', 'svg', or 'html' for embeddable code snippet.",
+          "required": false,
+          "defaultValue": "png"
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the chart in pixels.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the chart in pixels.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "colorScheme",
+          "type": "string",
+          "description": "Optional color theme or palette name to style the chart colors consistently.",
+          "required": false,
+          "defaultValue": "default"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the chart output, including the data URL or embeddable snippet and metadata about the chart type and dimensions."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to visually represent data within technical documentation or reports. It is particularly useful for generating clear, publication-quality charts from raw data to enhance documentation clarity and impact.",
+        "limitations": "The tool does not perform advanced statistical analysis or data validation. It requires well-structured input data and does not dynamically fetch or interpret external data sources.",
+        "examples": [
+          "Generate a bar chart showing quarterly sales from JSON data.",
+          "Create a pie chart summarizing survey results with a custom color scheme.",
+          "Produce an SVG line chart of website traffic with axis labels and title."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "chart",
+        "visualization",
+        "generate",
+        "media",
+        "data-visualization",
+        "diagram"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":120},{\"month\":\"Feb\",\"sales\":150},{\"month\":\"Mar\",\"sales\":90}],\"chartType\":\"bar\",\"title\":\"Quarterly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales\",\"outputFormat\":\"png\",\"width\":600,\"height\":400}",
+          "description": "Generate a bar chart visualizing monthly sales data with axis labels and a title."
+        },
+        {
+          "inputJson": "{\"data\":[{\"category\":\"A\",\"value\":30},{\"category\":\"B\",\"value\":70}],\"chartType\":\"pie\",\"title\":\"Category Distribution\",\"colorScheme\":\"pastel\",\"outputFormat\":\"svg\"}",
+          "description": "Create a pastel-colored pie chart showing category proportions with a title."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Chart",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateGraph",
+      "description": "Generates visual graphs based on structured documentation data inputs such as JSON or Markdown outlining entity relationships or process flows. It processes the input to produce SVG or PNG graph images that can be embedded into documentation, helping users visualize complex information.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "string",
+          "description": "Structured data in JSON or Markdown format representing entities and their relationships for graph generation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "graphType",
+          "type": "string",
+          "description": "Type of graph to generate, e.g., 'flowchart', 'dependency', 'mindmap'. Defaults to 'flowchart'.",
+          "required": false,
+          "defaultValue": "flowchart"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Output image format: 'svg' or 'png'. Defaults to 'svg'.",
+          "required": false,
+          "defaultValue": "svg"
+        },
+        {
+          "name": "theme",
+          "type": "string",
+          "description": "Styling theme for the graph, e.g., 'light', 'dark'. Defaults to 'light'.",
+          "required": false,
+          "defaultValue": "light"
+        },
+        {
+          "name": "width",
+          "type": "number",
+          "description": "Width of the generated graph image in pixels. Defaults to 800.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "height",
+          "type": "number",
+          "description": "Height of the generated graph image in pixels. Defaults to 600.",
+          "required": false,
+          "defaultValue": "600"
+        },
+        {
+          "name": "includeLegend",
+          "type": "boolean",
+          "description": "Whether to include a legend describing graph elements. Defaults to true.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "GraphImageOutput containing the image data encoded as a base64 string and metadata about the generated graph."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when documentation content requires visual representation of relationships, workflows, hierarchies, or dependencies derived from structured data inputs to enhance understanding and user engagement. Ideal during documentation creation or updates where visual graphs clarify complex concepts.",
+        "limitations": "This tool does not generate graphs from unstructured natural language text directly; input data must be structured. It also cannot produce interactive or animated graphs, only static images.",
+        "examples": [
+          "Generate a flowchart from given JSON describing process steps.",
+          "Create a dependency graph from Markdown documentation input.",
+          "Produce a mindmap visualizing topic relationships based on structured data."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "graph",
+        "visualization",
+        "diagram",
+        "svg",
+        "png",
+        "flowchart",
+        "dependency"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":\"{\\\"nodes\\\":[{\\\"id\\\":\\\"start\\\",\\\"label\\\":\\\"Start\\\"},{\\\"id\\\":\\\"step1\\\",\\\"label\\\":\\\"Step 1\\\"}],\\\"edges\\\":[{\\\"from\\\":\\\"start\\\",\\\"to\\\":\\\"step1\\\"}]}\",\"graphType\":\"flowchart\",\"outputFormat\":\"svg\",\"theme\":\"light\",\"width\":800,\"height\":600,\"includeLegend\":true}",
+          "description": "Generate a basic flowchart SVG image from simple process JSON."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Graph",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateDiagram",
+      "description": "This tool generates visual diagrams from structured input data describing entities and their relationships. It accepts JSON or a structured object that outlines components, connections, and optional styling or layout preferences, then produces a diagram image or SVG output representation suitable for embedding in documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "object",
+          "description": "Structured data defining entities, relationships, and attributes the diagram will visualize. Required.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "diagramType",
+          "type": "string",
+          "description": "Type of diagram to generate (e.g., flowchart, classDiagram, sequenceDiagram). Default is 'flowchart'.",
+          "required": false,
+          "defaultValue": "flowchart"
+        },
+        {
+          "name": "styleTheme",
+          "type": "string",
+          "description": "Optional visual style theme for the diagram such as colors and fonts (e.g., 'dark', 'corporate').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "layoutDirection",
+          "type": "string",
+          "description": "Layout direction for the diagram (e.g., 'LR' for left-to-right, 'TB' for top-to-bottom).",
+          "required": false,
+          "defaultValue": "TB"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the generated diagram (e.g., 'svg', 'png'). Defaults to 'svg'.",
+          "required": false,
+          "defaultValue": "svg"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated diagram as a base64-encoded string and metadata such as format and size."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to automatically create clear, structured diagrams from predefined data representing processes, relationships, workflows, or system components to embed in technical documentation or reports. It enables consistent, repeatable diagram generation based on structured inputs.",
+        "limitations": "The tool cannot interpret unstructured natural language descriptions or generate diagrams without explicit structured input. It may not support highly customized or artistic diagram styles beyond predefined themes and basic layout options.",
+        "examples": [
+          "Generate a flowchart diagram illustrating the deployment process from JSON defined nodes and edges.",
+          "Create a UML class diagram from structured input describing classes and relationships.",
+          "Produce a sequence diagram representing interactions over time from an event list in JSON format."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "diagram",
+        "visualization",
+        "flowchart",
+        "uml",
+        "automation",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":{\"nodes\":[{\"id\":\"start\",\"label\":\"Start\"},{\"id\":\"step1\",\"label\":\"Step 1\"},{\"id\":\"end\",\"label\":\"End\"}],\"edges\":[{\"from\":\"start\",\"to\":\"step1\"},{\"from\":\"step1\",\"to\":\"end\"}]},\"diagramType\":\"flowchart\",\"layoutDirection\":\"LR\",\"outputFormat\":\"svg\"}",
+          "description": "Generate a simple left-to-right flowchart diagram from a JSON structure with nodes and edges."
+        },
+        {
+          "inputJson": "{\"inputData\":{\"classes\":[{\"name\":\"User\",\"properties\":[\"id\",\"name\"],\"methods\":[\"login()\",\"logout()\"]},{\"name\":\"Session\",\"properties\":[\"token\",\"expiry\"],\"methods\":[]},{\"relationships\":[{\"from\":\"User\",\"to\":\"Session\",\"type\":\"association\"}]}]},\"diagramType\":\"classDiagram\"}",
+          "description": "Generate a UML class diagram from structured data defining classes, their properties, methods, and relationships."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Diagram",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateHTML",
+      "description": "Generates HTML documentation pages from structured input such as Markdown, JSON config, or plain text. It processes the input content, applies optional styling templates, and outputs complete HTML files suitable for documentation websites or standalone references.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sourceContent",
+          "type": "string",
+          "description": "The raw content of the documentation to convert, e.g., Markdown text or JSON representing docs structure.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFormat",
+          "type": "string",
+          "description": "Format of the sourceContent (e.g., 'markdown', 'json', 'plaintext') determining parsing method.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "templateHTML",
+          "type": "string",
+          "description": "Optional HTML template with placeholders to style the generated content; must include '{{content}}' marker where docs go.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTOC",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents based on headers in the source content.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title for the generated HTML page; used in the HTML <title> tag and optionally in page header.",
+          "required": false,
+          "defaultValue": "\"Document\""
+        },
+        {
+          "name": "cssStyles",
+          "type": "string",
+          "description": "Additional CSS styles to embed or link in the generated HTML for custom styling.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns an object with the generated HTML string under 'html' key and metadata like title and included TOC status."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have raw documentation content (Markdown, JSON, or plaintext) and want to convert it into a styled, web-ready HTML document for publishing or preview. Suitable for building static documentation sites or quick documentation pages.",
+        "limitations": "The tool does not perform deep semantic analysis or advanced interactive UI generation. It relies on provided templates for styling and cannot fully convert complex widgets or scripts within documentation.",
+        "examples": [
+          "Generate HTML documentation from Markdown with default styling.",
+          "Create an HTML page including a custom table of contents from JSON structured docs.",
+          "Produce a styled HTML page using a specified HTML template and embedded CSS."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "HTML",
+        "generate",
+        "markdown",
+        "static site",
+        "docs",
+        "templating"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceContent\":\"# API Reference\\nThis API allows...\\n## Authentication\\nDetails about...\",\"inputFormat\":\"markdown\",\"templateHTML\":\"<html><head><title>{{title}}{{content}}\",\"includeTOC\":true,\"title\":\"My API Docs\",\"cssStyles\":\"body { font-family: Arial; }\"}",
+          "description": "Generate a complete HTML documentation page from Markdown with a simple HTML template and CSS styling, including a table of contents."
+        },
+        {
+          "inputJson": "{\"sourceContent\":\"{\\\"sections\\\": [{\\\"header\\\": \\\"Introduction\\\", \\\"content\\\": \\\"Welcome to the docs\\\"}]}\",\"inputFormat\":\"json\",\"includeTOC\":false,\"title\":\"JSON Doc\"}",
+          "description": "Generate HTML docs from JSON structured content without a TOC, using default styling and page title."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "HTML",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateXML",
+      "description": "Generates XML documentation files from structured input data such as objects or arrays. It accepts input describing documentation elements, formats them into a well-formed XML document adhering to specified XML tags, and outputs the XML content as a string for use in documentation systems or integration workflows.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "object",
+          "description": "The structured input representing documentation content to be converted into XML format. Typically includes elements like titles, sections, paragraphs, and metadata.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "rootElementName",
+          "type": "string",
+          "description": "The name of the root XML element wrapping the entire generated XML document.",
+          "required": false,
+          "defaultValue": "Documentation"
+        },
+        {
+          "name": "indentSpaces",
+          "type": "number",
+          "description": "Number of spaces used for XML indentation to enhance readability. Use 0 for no indentation.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "includeXmlDeclaration",
+          "type": "boolean",
+          "description": "Whether to include the XML declaration header (e.g., ) at the top of the output.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "customTagsMapping",
+          "type": "object",
+          "description": "Optional mapping of input data keys to specific XML tag names to customize generated XML structure.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated XML as a string under 'xmlContent' key, and optionally metadata such as generation timestamp."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to transform structured documentation inputs into an XML format compliant with custom or standard schemas for integration into documentation workflows, help systems, or data exchange. It is especially useful for generating XML from JSON-like documentation objects with customizable tags and formatting.",
+        "limitations": "This tool does not validate XML against specific external schemas (XSD) beyond basic XML well-formedness. Complex transformations requiring XPath or XSLT are not supported. It also does not parse XML; it only generates it from structured data.",
+        "examples": [
+          "Generate XML documentation from a nested object representing help topics.",
+          "Create well-indented XML files with custom root element and tag names for software documentation.",
+          "Output XML with or without declaration header based on system requirements."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "XML",
+        "generate",
+        "formatting",
+        "data-conversion"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":{\"title\":\"API Documentation\",\"sections\":[{\"header\":\"Introduction\",\"content\":\"This describes the API.\"},{\"header\":\"Endpoints\",\"content\":\"List of API endpoints.\"}]},\"rootElementName\":\"ApiDoc\",\"indentSpaces\":4,\"includeXmlDeclaration\":true}",
+          "description": "Generate a formatted XML document with root element 'ApiDoc' including title and sections from structured documentation data."
+        },
+        {
+          "inputJson": "{\"data\":{\"summary\":\"Project overview\",\"details\":\"Details about the project.\"},\"rootElementName\":\"ProjectInfo\",\"indentSpaces\":0,\"includeXmlDeclaration\":false}",
+          "description": "Generate compact XML without declaration header for a project info document with specified root element and no indentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "XML",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateYAML",
+      "description": "Generates a structured YAML document based on provided input data and formatting options. Accepts input as a JSON object or string, applies formatting rules such as indentation and line width, and outputs a clean YAML string for use in documentation, configuration, or data serialization.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "object",
+          "description": "The input data as a JSON object to be converted into YAML format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "indentation",
+          "type": "number",
+          "description": "Number of spaces to use for indentation in the generated YAML output.",
+          "required": false,
+          "defaultValue": "2"
+        },
+        {
+          "name": "lineWidth",
+          "type": "number",
+          "description": "Maximum line width in characters before folding long lines; set 0 for no folding.",
+          "required": false,
+          "defaultValue": "80"
+        },
+        {
+          "name": "includeComments",
+          "type": "boolean",
+          "description": "Whether to include optional comments or annotations in the YAML output if provided in input.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "sortKeys",
+          "type": "boolean",
+          "description": "If true, keys in objects will be sorted alphabetically in the output YAML.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated YAML string under the key 'yamlOutput'."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to create or update YAML-formatted documentation or configuration files based on structured data inputs. It is useful for generating readable and well-formatted YAML from JSON objects, ensuring indentation and line width requirements are met, and optionally sorting keys or adding comments.",
+        "limitations": "This tool cannot validate YAML syntax beyond generation, nor does it merge or diff YAML files. It does not support complex YAML features like anchors or custom tags.",
+        "examples": [
+          "Generate a YAML configuration file from a settings JSON object.",
+          "Create a YAML-formatted API documentation section from structured metadata.",
+          "Produce a readable YAML output from nested JSON data for user manuals."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "yaml",
+        "generate",
+        "formatting",
+        "serialization",
+        "config",
+        "data transformation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":{\"name\":\"example\",\"version\":1.0,\"features\":[\"fast\",\"compact\"]},\"indentation\":4,\"lineWidth\":100,\"includeComments\":false,\"sortKeys\":true}",
+          "description": "Generate a YAML document from a JSON object with 4-space indentation, allowing long lines, no comments, and sorted keys."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "YAML",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateMarkdown",
+      "description": "Generates well-structured Markdown documentation from provided input data, including text sections, code snippets, lists, and metadata. Accepts structured content as JSON and outputs a formatted Markdown string suitable for documentation files or README generation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "contentSections",
+          "type": "array",
+          "description": "An array of content sections, each containing a title, optional body text, optional code snippets, and optional lists to include in the Markdown document.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTOC",
+          "type": "boolean",
+          "description": "Whether to include a Table of Contents generated from the section titles at the top of the Markdown output.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "codeLanguage",
+          "type": "string",
+          "description": "Default programming language identifier for code blocks if not specified per snippet, used for syntax highlighting.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional metadata information such as author, date, or version to prepend as front matter or formatted block in the Markdown.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated Markdown content as a string under the 'markdown' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to convert structured descriptive content, including headings, paragraphs, code examples, and lists, into a cleanly formatted Markdown document for software documentation or README files.",
+        "limitations": "This tool does not parse or analyze raw text meaning; it requires well-structured input data. It cannot generate content or summaries automatically.",
+        "examples": [
+          "Generate a README.md from a project description with setup instructions and example usage.",
+          "Create Markdown user documentation including code samples and feature lists from JSON input.",
+          "Produce a Markdown changelog document from structured version and change data."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "markdown",
+        "generate",
+        "text-processing",
+        "code-snippets",
+        "readme",
+        "documentation-generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"contentSections\":[{\"title\":\"Introduction\",\"body\":\"This project provides a tool to generate markdown documents from JSON input.\"},{\"title\":\"Installation\",\"body\":\"To install, run \\`npm install mytool\\`.\",\"codeSnippets\":[{\"code\":\"npm install mytool\",\"language\":\"bash\"}]},{\"title\":\"Usage\",\"body\":\"Use the CLI or API as shown below.\",\"codeSnippets\":[{\"code\":\"mytool generate --input data.json --output doc.md\",\"language\":\"bash\"}],\"lists\":[\"Supports multiple sections\",\"Includes code syntax highlighting\",\"Generates optional TOC\"]}]}",
+          "description": "Generate a project README with sections for introduction, installation, and usage, including code examples and a features list."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Markdown",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateCSV",
+      "description": "Generates a CSV formatted string from structured documentation data input. Accepts an array of objects representing documentation entries (e.g., function names, descriptions, parameters) and transforms this structured data into a CSV text output with customizable delimiters and headers. Output is a CSV string ready for export or saving.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "data",
+          "type": "array",
+          "description": "Array of objects representing documentation entries to convert into CSV format. Each object should have consistent keys used as columns.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeHeaders",
+          "type": "boolean",
+          "description": "Specifies whether to include the headers row with column names from object keys.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "delimiter",
+          "type": "string",
+          "description": "Character to use as a delimiter between CSV fields, typically comma or semicolon.",
+          "required": false,
+          "defaultValue": ","
+        },
+        {
+          "name": "quoteFields",
+          "type": "boolean",
+          "description": "Whether to enclose fields containing delimiters or line breaks in double quotes for CSV compliance.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "lineBreak",
+          "type": "string",
+          "description": "String to use for line breaks between CSV rows, usually '\\n' or '\\r\\n'.",
+          "required": false,
+          "defaultValue": "\\n"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single property 'csv' which is the generated CSV string from the input data."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to generate CSV representations of structured documentation data such as API descriptions, function lists, or parameter tables for export or integration with spreadsheet software. It works well for converting JSON-like arrays of documentation entries into widely compatible CSV text.",
+        "limitations": "This tool does not parse or validate the input data schema; it assumes consistent object structure. It cannot handle nested objects or complex data types beyond flat key-value pairs in each data item.",
+        "examples": [
+          "Generate a CSV summary of API endpoints from JSON objects.",
+          "Export a list of functions and their documentation as CSV for spreadsheets.",
+          "Create a CSV file from documentation entries for inclusion in reports or sharing."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "csv",
+        "export",
+        "data-generation",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"data\":[{\"name\":\"getUser\",\"description\":\"Fetch user info\",\"parameters\":\"userId\"},{\"name\":\"setUser\",\"description\":\"Update user data\",\"parameters\":\"userId,data\"}],\"includeHeaders\":true,\"delimiter\":\",\",\"quoteFields\":true,\"lineBreak\":\"\\n\"}",
+          "description": "Generate CSV with headers for a list of API functions and their parameters."
+        },
+        {
+          "inputJson": "{\"data\":[{\"title\":\"Function\",\"desc\":\"Description\"},{\"title\":\"Login\",\"desc\":\"Authenticate user\"}],\"includeHeaders\":false,\"delimiter\":\";\",\"quoteFields\":false,\"lineBreak\":\"\\r\\n\"}",
+          "description": "Generate CSV without headers and semicolon delimiter from minimal documentation data."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "CSV",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateSchema",
+      "description": "Generates a JSON Schema definition based on provided example JSON data or a textual description of data structure. It processes the input sample or description to infer types, required fields, and format constraints, producing a detailed JSON Schema document suitable for validating similar JSON objects.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "exampleData",
+          "type": "string",
+          "description": "Optional JSON string sample data used to infer the schema structure. If provided, the schema is generated based on this sample; omit if using description parameter.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "Optional textual description of the data structure to guide schema generation if exampleData is not provided.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "schemaTitle",
+          "type": "string",
+          "description": "Title for the generated JSON Schema document, used for identification and metadata.",
+          "required": false,
+          "defaultValue": "GeneratedSchema"
+        },
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The json-schema version to target (e.g., 'http://json-schema.org/draft-07/schema#'). Defaults to draft-07.",
+          "required": false,
+          "defaultValue": "http://json-schema.org/draft-07/schema#"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "If true, includes example values in the generated schema based on the exampleData provided.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "requiredFieldsAreAllProperties",
+          "type": "boolean",
+          "description": "If true, marks all properties inferred from exampleData as required; otherwise only properties confirmed as required are marked.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a JSON object representing the generated JSON Schema, including $schema, title, type, properties, and required fields as applicable."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to automatically create JSON Schema documents for validating JSON payloads based on example samples or descriptive inputs. It helps automate schema creation in API documentation, data contracts, and validation workflows.",
+        "limitations": "Cannot fully infer all constraints or business rules from limited example data or vague descriptions. Complex conditional schemas or polymorphism may require manual refinement.",
+        "examples": [
+          "Generate a JSON Schema from a sample JSON object representing a user profile.",
+          "Create a schema based on a textual description of a product catalog JSON format.",
+          "Produce a schema document that includes example values to help in documentation."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "schema",
+        "json",
+        "validation",
+        "generation",
+        "tools",
+        "api"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"exampleData\":\"{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30,\\\"email\\\":\\\"alice@example.com\\\"}\",\"description\":\"\",\"schemaTitle\":\"UserProfile\",\"version\":\"http://json-schema.org/draft-07/schema#\",\"includeExamples\":\"true\",\"requiredFieldsAreAllProperties\":\"false\"}",
+          "description": "Generate JSON Schema from a JSON example of a user profile with name, age, and email fields, including examples in output."
+        },
+        {
+          "inputJson": "{\"exampleData\":\"\",\"description\":\"An object representing a product with a string 'id', string 'name', numeric 'price', and optional boolean 'inStock'.\",\"schemaTitle\":\"Product\",\"version\":\"http://json-schema.org/draft-07/schema#\",\"includeExamples\":\"false\",\"requiredFieldsAreAllProperties\":\"true\"}",
+          "description": "Generate JSON Schema based on a textual description of a product object marking all properties as required but no example values."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Schema",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateJSON",
+      "description": "Generates a structured JSON representation of software documentation from raw text input or structured outlines. It accepts raw documentation text or nested section outlines, processes them to extract hierarchical structure, titles, and content, and outputs standardized JSON suitable for use in documentation platforms or further automated processing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputText",
+          "type": "string",
+          "description": "Raw documentation text or markdown content to be converted into JSON structure.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "outlineStructure",
+          "type": "object",
+          "description": "An optional nested object representing the document outline (sections, subsections) to generate the JSON structure from.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeMetadata",
+          "type": "boolean",
+          "description": "Flag to include metadata such as author, date, and version in the JSON output if available.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional metadata object containing author, version, date, and other custom fields to include in the JSON output.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "maxDepth",
+          "type": "number",
+          "description": "Maximum depth of nested sections to parse or include in the output JSON. Defaults to 3.",
+          "required": false,
+          "defaultValue": "3"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A JSON object representing the structured software documentation, including nested sections with titles and contents, and optional metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to convert raw documentation text or structured outlines into a standardized JSON format for further automated documentation processing, integration with documentation platforms, or analysis. It helps transform unstructured or semi-structured docs into well-formed JSON hierarchical structures.",
+        "limitations": "This tool does not fully parse complex markdown or embedded code snippets; it requires input as plain text or simple outline structures. It cannot automatically generate documentation from source code or APIs, only format provided text or outlines.",
+        "examples": [
+          "Generate JSON documentation from raw markdown text describing software modules.",
+          "Convert a nested outline object into JSON documentation format with metadata included.",
+          "Limit output JSON to 2 levels of nested headings when generating documentation structure."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "json",
+        "generate",
+        "structure",
+        "text-processing",
+        "metadata"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputText\":\"# Introduction\\nThis is software documentation.\\n## Installation\\nFollow these steps...\",\"includeMetadata\":true,\"metadata\":{\"author\":\"Jane Doe\",\"version\":\"1.0\",\"date\":\"2024-06-01\"},\"maxDepth\":2}",
+          "description": "Convert simple markdown text with headings into a JSON representation including metadata."
+        },
+        {
+          "inputJson": "{\"outlineStructure\":{\"title\":\"API Reference\",\"sections\":[{\"title\":\"Authentication\",\"content\":\"Details about auth.\"},{\"title\":\"Endpoints\",\"sections\":[{\"title\":\"GET /users\",\"content\":\"Returns user list.\"}]}]},\"includeMetadata\":false,\"maxDepth\":3}",
+          "description": "Generate JSON from a nested outline structure describing API documentation without metadata."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "JSON",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateDataset",
+      "description": "Generates structured dataset documentation from raw data input or metadata descriptions to help users understand dataset schema, attributes, types, and sample values. Accepts JSON-formatted dataset description or raw tabular data, processes to extract metadata and samples, outputs detailed documentation in JSON or markdown format.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "string",
+          "description": "Raw dataset as CSV or JSON string, or metadata JSON describing the dataset structure and contents.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "inputFormat",
+          "type": "string",
+          "description": "Format of the input data: 'csv', 'json', or 'metadata' indicating raw data or descriptive metadata input.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output documentation format: 'json' for structured output or 'markdown' for human-readable text.",
+          "required": false,
+          "defaultValue": "json"
+        },
+        {
+          "name": "sampleSize",
+          "type": "number",
+          "description": "Number of sample rows or entries to extract and show as examples in the documentation.",
+          "required": false,
+          "defaultValue": "5"
+        },
+        {
+          "name": "includeDataTypes",
+          "type": "boolean",
+          "description": "Whether to include inferred data types for each attribute in the documentation.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code for generated documentation language (e.g., 'en' for English).",
+          "required": false,
+          "defaultValue": "en"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing generated documentation as a string under 'documentation' key with accompanying format information."
+      },
+      "aiAgent": {
+        "useCase": "Use when detailed, clear dataset documentation is needed to help users understand dataset schema, attributes, types, and sample content for better data exploration, integration, or audit. Ideal when raw data or partial metadata is available and comprehensive docs are required.",
+        "limitations": "Does not perform deep semantic analysis of dataset contents or generate domain-specific explanations beyond structural metadata and samples. Quality depends on input completeness and format accuracy.",
+        "examples": [
+          "Generate markdown dataset documentation from CSV raw data for data catalog.",
+          "Create JSON documentation from given dataset metadata JSON describing columns and datatypes.",
+          "Produce dataset documentation in English displaying sample rows and column types from JSON dataset input."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "dataset",
+        "generate",
+        "metadata",
+        "data-schema",
+        "documentation-tools"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":\"id,name,age\\n1,Alice,30\\n2,Bob,25\",\"inputFormat\":\"csv\",\"outputFormat\":\"markdown\",\"sampleSize\":2,\"includeDataTypes\":true,\"language\":\"en\"}",
+          "description": "Generate markdown documentation from CSV raw data with sample size 2, including data types, in English."
+        },
+        {
+          "inputJson": "{\"inputData\":\"{\\\"columns\\\": [{\\\"name\\\": \\\"id\\\", \\\"type\\\": \\\"integer\\\"}, {\\\"name\\\": \\\"name\\\", \\\"type\\\": \\\"string\\\"}, {\\\"name\\\": \\\"age\\\", \\\"type\\\": \\\"integer\\\"}]}\" ,\"inputFormat\":\"metadata\",\"outputFormat\":\"json\",\"sampleSize\":3,\"includeDataTypes\":true,\"language\":\"en\"}",
+          "description": "Generate JSON documentation from JSON metadata describing dataset schema, with sample size 3."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Dataset",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateTest",
+      "description": "Generates executable test code from provided documentation or code comments. Accepts source code or doc comments in string form with optional specification of testing framework and language. Processes the input to produce unit test code snippets targeting the described functions or methods.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sourceCode",
+          "type": "string",
+          "description": "The source code or documentation containing function signatures and comments describing expected behavior.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Programming language of the source code and desired test output (e.g., 'JavaScript', 'Python').",
+          "required": false,
+          "defaultValue": "JavaScript"
+        },
+        {
+          "name": "testFramework",
+          "type": "string",
+          "description": "Name of the testing framework to generate tests for (e.g., 'Jest', 'Mocha', 'Pytest').",
+          "required": false,
+          "defaultValue": "Jest"
+        },
+        {
+          "name": "includeEdgeCases",
+          "type": "boolean",
+          "description": "Whether to generate tests for common edge cases mentioned or implied in documentation.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "functionNames",
+          "type": "array",
+          "description": "Optional list of function or method names to generate tests for; if omitted, generates for all documented functions.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated test code as a string and metadata about generated tests."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you have source code or detailed documentation describing functions and want to automatically create unit test code snippets to improve test coverage quickly. It is ideal for generating boilerplate test cases based on docstrings or comments to assist development and QA workflows.",
+        "limitations": "Cannot understand undocumented or poorly documented code. The generated tests cover only documented behavior and do not guarantee full coverage or complex integration tests.",
+        "examples": [
+          "Generate Jest tests for all functions in a given JavaScript file with JSDoc comments.",
+          "Create Pytest unit tests from Python functions documented with docstrings.",
+          "Produce Mocha tests for specified functions described in source code comments."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "testing",
+        "code-generation",
+        "unit-test",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceCode\":\"/\\*\\*\\n * Adds two numbers\\n * @param {number} a\\n * @param {number} b\\n * @returns {number}\\n *\\n * @example add(2, 3) returns 5\\n * @example add(0, 0) returns 0\\n *\\/\\nfunction add(a, b) { return a + b; }\",\"language\":\"JavaScript\",\"testFramework\":\"Jest\",\"includeEdgeCases\":true}",
+          "description": "Generate Jest unit tests for a simple add function documented with JSDoc comments."
+        },
+        {
+          "inputJson": "{\"sourceCode\":\"def subtract(a, b):\\n    '''Subtract b from a.\\n\\n    Args:\\n       a (int): first number\\n       b (int): second number\\n\\n    Returns:\\n       int: result of a - b\\n    '''\\n    return a - b\",\"language\":\"Python\",\"testFramework\":\"Pytest\",\"includeEdgeCases\":false}",
+          "description": "Generate Pytest tests from a Python function with docstring documentation."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Test",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateReadme",
+      "description": "Generates a comprehensive README.md file based on provided project metadata, descriptions, usage examples, installation instructions, and configuration options. It processes structured input and outputs a complete markdown-formatted readme document suitable for GitHub or other repositories.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "projectName",
+          "type": "string",
+          "description": "The name of the project or repository to appear as the main title.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "projectDescription",
+          "type": "string",
+          "description": "A brief summary describing the purpose and features of the project.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "installationInstructions",
+          "type": "string",
+          "description": "Step-by-step instructions on how to install or set up the project, formatted as markdown text.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "usageExamples",
+          "type": "array",
+          "description": "An array of strings each providing example usage code or commands demonstrating how to use the project.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "configurationOptions",
+          "type": "object",
+          "description": "Key-value pairs describing configurable options, each with a description and example values.",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "license",
+          "type": "string",
+          "description": "The license under which the project is released, e.g., MIT, Apache-2.0.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "contributingGuidelines",
+          "type": "string",
+          "description": "Guidelines for contributors including how to report issues and submit pull requests.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing a single property 'readmeContent' which is a string of the generated README.md markdown content."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when creating or updating a project's README file to automatically generate clear, well-structured documentation based on the project's metadata and user-provided details. Ideal for automating initial docs or refreshing outdated readme files.",
+        "limitations": "This tool does not validate the correctness of code snippets or dynamically generate complex diagrams. It relies on the quality of input data to produce meaningful output.",
+        "examples": [
+          "Generate a README file from basic project info including name, description, usage examples, and installation steps.",
+          "Create a new README with project configuration options and contribution guidelines included.",
+          "Update an existing README by regenerating content with added license and example usage sections."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "readme",
+        "markdown",
+        "project-docs",
+        "automation",
+        "developers",
+        "opensource"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"projectName\":\"PhotoEditorPro\",\"projectDescription\":\"An advanced photo editing toolkit with AI-powered filters and batch processing.\",\"installationInstructions\":\"1. Download the installer\\n2. Run setup.exe\\n3. Follow on-screen instructions\",\"usageExamples\":[\"photoeditorpro --filter vintage photo.jpg\",\"photoeditorpro --batch-process ./images\"],\"configurationOptions\":{\"filterLevel\":{\"description\":\"Intensity of filter effects (1-10)\",\"example\":\"5\"},\"outputFormat\":{\"description\":\"Format for saving edited images\",\"example\":\"png\"}},\"license\":\"MIT\",\"contributingGuidelines\":\"Please fork the repo, make your changes, and submit a pull request.\"}",
+          "description": "Generate a README.md for an AI-powered photo editing project including install steps, usage, config options, license, and contribution guidelines."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Readme",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateQuery",
+      "description": "Generates a structured documentation query in a human-readable and machine-processable form based on input criteria. Accepts parameters describing the intended documentation content focus, output format, and language. Processes these inputs to create query statements useful for searching or requesting precise documentation data from knowledge bases or systems.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or feature to query about in the documentation (e.g., an API name, function, or module).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "queryType",
+          "type": "string",
+          "description": "The type of query to generate, such as 'usage', 'examples', 'error codes', or 'detailed description'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Desired programming or natural language for the query results (e.g., 'en' for English, 'python' for code snippets).",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Preferred output format of the query result, e.g., 'text', 'markdown', or 'json'.",
+          "required": false,
+          "defaultValue": "text"
+        },
+        {
+          "name": "includeRelatedTopics",
+          "type": "boolean",
+          "description": "Whether to include related or associated topics in the generated query to broaden the scope.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "maxResults",
+          "type": "number",
+          "description": "Maximum number of distinct query sentences or statements to generate.",
+          "required": false,
+          "defaultValue": "5"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated query strings array under 'queries' key, and metadata such as topic and queryType."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to programmatically construct precise, structured query statements to extract or request documentation content from a repository or knowledge system tailored to a specific topic and query kind. It aids in automating documentation retrieval or generation processes.",
+        "limitations": "Does not fetch or summarize documentation content itself; only generates query statements based on given parameters. Accuracy depends on input relevance and clarity. Queries generated may need fine-tuning for specialized systems.",
+        "examples": [
+          "Generate query statements for usage examples of the 'AuthAPI' module in Python.",
+          "Request queries for error codes documentation for the 'DatabaseConnector'.",
+          "Produce markdown formatted queries targeting setup instructions for a given library."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "query generation",
+        "api documentation",
+        "code documentation",
+        "search"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"AuthAPI\",\"queryType\":\"usage\",\"language\":\"python\",\"format\":\"text\",\"includeRelatedTopics\":false,\"maxResults\":3}",
+          "description": "Generate usage query strings for the AuthAPI module in Python code format."
+        },
+        {
+          "inputJson": "{\"topic\":\"DatabaseConnector\",\"queryType\":\"error codes\",\"language\":\"en\",\"format\":\"markdown\",\"includeRelatedTopics\":true,\"maxResults\":2}",
+          "description": "Create markdown formatted queries regarding error codes for DatabaseConnector including related topics."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Query",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateChecklist",
+      "description": "Generates a detailed checklist document based on a given topic and optional checklist items. Accepts a topic string, optional list of checklist items or sections, and formatting preferences, then outputs a structured checklist suitable for documentation or process guidance.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The main subject or title of the checklist to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "checklistItems",
+          "type": "array",
+          "description": "An optional array of strings representing specific checklist items or steps to include. If empty, the tool generates generic items based on the topic.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeDescriptions",
+          "type": "boolean",
+          "description": "Whether to include brief descriptions or instructions for each checklist item.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the checklist document, e.g., 'markdown', 'html', or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated checklist document as a string and the format used."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool whenever an AI agent needs to produce structured, easy-to-follow checklists for documentation, quality assurance, compliance, or process workflows. It supports both user-provided checklist steps or can generate generic steps for common topics, producing output in popular documentation formats.",
+        "limitations": "Cannot guarantee domain-specific checklist completeness or correctness beyond general knowledge. It does not fetch or verify external standards or regulations.",
+        "examples": [
+          "Generate a deployment checklist for web applications.",
+          "Create a safety inspection checklist including descriptions in markdown format.",
+          "Produce a simple hardware assembly checklist in plaintext."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "checklist",
+        "generate",
+        "process",
+        "workflow",
+        "guidance"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Software Deployment\",\"checklistItems\":[\"Backup current version\",\"Notify users\",\"Deploy to staging\",\"Run tests\",\"Deploy to production\",\"Monitor system\"],\"includeDescriptions\":true,\"outputFormat\":\"markdown\"}",
+          "description": "Generate a detailed software deployment checklist with descriptive steps in markdown."
+        },
+        {
+          "inputJson": "{\"topic\":\"Safety Inspection\",\"checklistItems\":[],\"includeDescriptions\":false,\"outputFormat\":\"plaintext\"}",
+          "description": "Generate a generic safety inspection checklist without descriptions in plain text format."
+        },
+        {
+          "inputJson": "{\"topic\":\"Hardware Assembly\",\"checklistItems\":[\"Unpack components\",\"Check parts list\",\"Assemble frame\",\"Install wiring\",\"Test functionality\"],\"includeDescriptions\":true,\"outputFormat\":\"html\"}",
+          "description": "Create a hardware assembly checklist with descriptions formatted as HTML."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Checklist",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateCode",
+      "description": "Generates well-documented source code snippets based on provided functional specifications or descriptions. Accepts input as a functional description or code comments and outputs formatted code with inline documentation in the specified programming language.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "functionDescription",
+          "type": "string",
+          "description": "A detailed functional description or requirements of the code to generate.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "programmingLanguage",
+          "type": "string",
+          "description": "The programming language for the generated code (e.g., Python, JavaScript, Java).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "codeStyle",
+          "type": "string",
+          "description": "Preferred coding style or convention (e.g., camelCase, snake_case).",
+          "required": false,
+          "defaultValue": "snake_case"
+        },
+        {
+          "name": "includeTests",
+          "type": "boolean",
+          "description": "Whether to generate unit test code along with the implementation.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "documentationFormat",
+          "type": "string",
+          "description": "The format of the inline documentation (e.g., Javadoc, docstring, Doxygen).",
+          "required": false,
+          "defaultValue": "docstring"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated source code with inline documentation and optionally test code."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to automatically generate clear, documented source code based on functional requirements or code comments, especially useful for rapid prototyping or documentation generation.",
+        "limitations": "The tool may not generate complex algorithms perfectly or handle very ambiguous descriptions; does not validate code correctness or optimize performance.",
+        "examples": [
+          "Generate a Python function to calculate factorial with docstring documentation.",
+          "Create JavaScript code for merging two arrays with explanatory comments.",
+          "Produce Java code for a class representing a bank account with Javadoc style comments and unit tests."
+        ]
+      },
+      "tags": [
+        "code-generation",
+        "documentation",
+        "programming",
+        "automation",
+        "developer-tools",
+        "code-snippets"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"functionDescription\":\"Function to calculate the factorial of a non-negative integer.\",\"programmingLanguage\":\"Python\",\"codeStyle\":\"snake_case\",\"includeTests\":true,\"documentationFormat\":\"docstring\"}",
+          "description": "Generate a documented Python function with tests to compute factorial."
+        },
+        {
+          "inputJson": "{\"functionDescription\":\"Merge two arrays and return the result without duplicates.\",\"programmingLanguage\":\"JavaScript\",\"includeTests\":false}",
+          "description": "Generate JavaScript code to merge arrays with inline comments."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Code",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateFAQ",
+      "description": "Generates a Frequently Asked Questions (FAQ) document based on provided input data such as a knowledge base, user queries, or product documentation. It processes the input to identify common questions and formulates clear, concise answers, outputting a structured FAQ list for use in websites or manuals.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputTexts",
+          "type": "array",
+          "description": "An array of textual sources such as user questions, product descriptions, or existing documentation to analyze and generate FAQ entries from.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "The language code (e.g., 'en', 'es') for the generated FAQ content.",
+          "required": false,
+          "defaultValue": "\"en\""
+        },
+        {
+          "name": "maxQuestions",
+          "type": "number",
+          "description": "Maximum number of FAQ entries to generate. Limits the length of the FAQ document.",
+          "required": false,
+          "defaultValue": "10"
+        },
+        {
+          "name": "includeAnswers",
+          "type": "boolean",
+          "description": "Whether to generate detailed answers for the questions found. If false, only questions are listed.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "answerDetailLevel",
+          "type": "string",
+          "description": "Level of detail for answers. Options: 'brief', 'detailed'. Determines how comprehensive the answers should be.",
+          "required": false,
+          "defaultValue": "\"brief\""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the FAQ entries as an array, each with 'question' and 'answer' fields."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to automatically create an FAQ document from existing product information, user inquiries, or support materials to help users find answers quickly. It is especially useful in documentation automation, chatbot training, or website help sections.",
+        "limitations": "This tool cannot guarantee the technical accuracy of answers without expert input; it relies on the quality and scope of the input data. It does not support multimedia content in answers and is limited to text-based FAQs.",
+        "examples": [
+          "Generate an FAQ from a product manual and a set of customer support emails.",
+          "Create an FAQ to improve chatbot responses based on past user questions.",
+          "Automatically build a brief FAQ section from technical specifications and usage instructions."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "FAQ",
+        "automation",
+        "customer-support",
+        "knowledge-base"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputTexts\":[\"What is the warranty period?\",\"How to reset my password?\",\"Our product offers 2 years warranty for defects.\",\"To reset your password, click the 'Forgot Password' link and follow instructions.\"],\"language\":\"en\",\"maxQuestions\":5,\"includeAnswers\":true,\"answerDetailLevel\":\"brief\"}",
+          "description": "Generate up to 5 FAQ entries with brief answers from product and customer question texts."
+        },
+        {
+          "inputJson": "{\"inputTexts\":[\"How to install the software?\",\"Installation requires Windows 10 or later.\",\"Can I use the product on Mac?\"],\"language\":\"en\",\"maxQuestions\":3,\"includeAnswers\":true,\"answerDetailLevel\":\"detailed\"}",
+          "description": "Create a short FAQ with detailed answers about software installation and compatibility."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "FAQ",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateTemplate",
+      "description": "Generates a customizable document template based on specified document type and content sections. Accepts inputs defining the document category (e.g., report, manual), desired sections, and style preferences, then outputs a structured template in markdown or HTML format suitable for professional documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "documentType",
+          "type": "string",
+          "description": "Type of document to generate the template for, such as 'user manual', 'technical report', or 'API documentation'.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "List of section titles to be included in the template, for example ['Introduction', 'Usage', 'FAQ'].",
+          "required": true,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "styleFormat",
+          "type": "string",
+          "description": "The output format style, such as 'markdown' or 'html', determining the markup used in the template.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeExampleContent",
+          "type": "boolean",
+          "description": "Whether to include placeholder example content in each section to guide users filling out the template.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "customMetadata",
+          "type": "object",
+          "description": "Optional metadata to embed in the template header, e.g., author name, date, version information.",
+          "required": false,
+          "defaultValue": "{}"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated document template as a string and metadata about the template."
+      },
+      "aiAgent": {
+        "useCase": "This tool helps generate structured, reusable documentation templates for various document types to help maintain consistent formatting and standardize documentation across projects or teams. AI agents can use this when asked to prepare documentation skeletons or boilerplate for technical documents or guides.",
+        "limitations": "Does not create fully populated content; only generates structural templates with optional placeholder text. Does not validate content correctness or compliance with specific organizational documentation standards.",
+        "examples": [
+          "Generate a markdown template for a user manual with 'Introduction', 'Installation', 'Usage' sections including example content.",
+          "Create an HTML template for an API reference with sections 'Overview', 'Authentication', 'Endpoints' without example content.",
+          "Produce a report template in markdown with custom metadata including author and date, with standard sections like 'Summary', 'Results', 'Conclusion'."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "template",
+        "generate",
+        "markdown",
+        "html",
+        "boilerplate",
+        "structured"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"documentType\":\"User Manual\",\"sections\":[\"Introduction\",\"Installation\",\"Usage\",\"FAQ\"],\"styleFormat\":\"markdown\",\"includeExampleContent\":true}",
+          "description": "Generate a markdown template for a user manual with standard sections and example content."
+        },
+        {
+          "inputJson": "{\"documentType\":\"API Reference\",\"sections\":[\"Overview\",\"Authentication\",\"Endpoints\"],\"styleFormat\":\"html\",\"includeExampleContent\":false}",
+          "description": "Create an HTML template for API documentation without example content."
+        },
+        {
+          "inputJson": "{\"documentType\":\"Technical Report\",\"sections\":[\"Summary\",\"Methods\",\"Results\",\"Conclusion\"],\"styleFormat\":\"markdown\",\"includeExampleContent\":true,\"customMetadata\":{\"author\":\"John Doe\",\"date\":\"2024-06-01\"}}",
+          "description": "Generate a technical report markdown template with metadata and sample content."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Template",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateBrief",
+      "description": "Generates a concise brief document summarizing a specified domain or topic. Accepts input as a topic name, optional key points to emphasize, desired length, and format preference. Processes the inputs to create a well-structured brief that outlines the essential information for easy understanding and quick reference.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "topic",
+          "type": "string",
+          "description": "The domain or topic to generate the brief about.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keyPoints",
+          "type": "array",
+          "description": "Optional list of key points or subtopics to highlight in the brief.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate desired length of the brief in words.",
+          "required": false,
+          "defaultValue": "300"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Desired output format such as 'text', 'markdown', or 'html'.",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated brief as a string and metadata such as word count and format."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to create clear, concise summaries for documentation purposes about a given topic domain. Ideal for generating overviews, introductory briefs, or executive summaries to assist stakeholders or new team members in understanding a domain quickly. It is especially useful when a quick digest or briefing document is required with customizable length and key points.",
+        "limitations": "Cannot generate detailed or highly technical documents; summaries may omit complex nuances. Does not replace full documentation, only produces brief overviews based on input scope and topic.",
+        "examples": [
+          "Generate a brief about 'Artificial Intelligence' emphasizing applications.",
+          "Create a 500-word markdown brief on 'Cloud Computing' covering main advantages.",
+          "Produce a text brief on 'Project Management' with no specific key points."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "summary",
+        "briefing",
+        "generate",
+        "domain",
+        "overview"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"topic\":\"Artificial Intelligence\",\"keyPoints\":[\"applications\",\"benefits\"],\"length\":400,\"format\":\"markdown\"}",
+          "description": "Generate a 400-word markdown brief on Artificial Intelligence highlighting applications and benefits."
+        },
+        {
+          "inputJson": "{\"topic\":\"Cloud Computing\",\"length\":500,\"format\":\"text\"}",
+          "description": "Create a 500-word plain text brief about Cloud Computing without specific key points."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Brief",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateSummary",
+      "description": "Generates a concise summary from a given document text, highlighting key points and main ideas. Accepts the full text content and optional parameters such as summary length and language. Outputs a text summary suitable for use in documentation or quick reference.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "documentText",
+          "type": "string",
+          "description": "The full text content of the document to summarize.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "summaryLength",
+          "type": "number",
+          "description": "Desired maximum length of the summary in number of sentences.",
+          "required": false,
+          "defaultValue": "3"
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code of the document text to improve processing accuracy, e.g., 'en' for English.",
+          "required": false,
+          "defaultValue": "en"
+        },
+        {
+          "name": "includeKeyPhrases",
+          "type": "boolean",
+          "description": "Whether to include key phrases extracted from the document alongside the summary.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated summary text and optionally a list of key phrases."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to quickly generate an easy-to-read summary from lengthy documentation to aid comprehension or provide quick reference. Ideal for creating executive summaries, brief overviews, or document abstracts in various language contexts.",
+        "limitations": "The summary length and quality depend on input text clarity and language support. Cannot interpret non-text elements such as images or tables. Summaries may omit nuanced details present in the full document.",
+        "examples": [
+          "Generate a 5-sentence summary of the product manual in English.",
+          "Summarize a research paper text and include key phrases for indexing.",
+          "Create a short summary for a technical document in French."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "summary",
+        "text-processing",
+        "NLP",
+        "language-support",
+        "summarization"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"documentText\":\"This document explains the installation and configuration process of the application. It covers system requirements, step-by-step setup instructions, troubleshooting tips, and security recommendations.\",\"summaryLength\":3,\"language\":\"en\",\"includeKeyPhrases\":false}",
+          "description": "Generate a 3-sentence English summary from a technical installation guide."
+        },
+        {
+          "inputJson": "{\"documentText\":\"The quarterly financial report details company revenue, expenses, and profit margins, highlighting significant growth in the Asia-Pacific region and outlining upcoming investment plans.\",\"summaryLength\":2,\"language\":\"en\",\"includeKeyPhrases\":true}",
+          "description": "Create a brief 2-sentence summary of a financial report and extract key phrases."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Summary",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateReleaseNotes",
+      "description": "Generates detailed release notes documents from structured input about software releases, including version info, new features, bug fixes, and known issues. Accepts release metadata and change lists, processes them into formatted, user-friendly release notes in markdown or plain text format.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The version number of the release (e.g., '2.1.0').",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "releaseDate",
+          "type": "string",
+          "description": "The release date in ISO 8601 format (e.g., '2024-06-01').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "features",
+          "type": "array",
+          "description": "List of new features introduced in this release.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "bugFixes",
+          "type": "array",
+          "description": "List of bugs fixed in this release.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "knownIssues",
+          "type": "array",
+          "description": "List of current known issues remaining in this release.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "format",
+          "type": "string",
+          "description": "Output format for the release notes, e.g., 'markdown' or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeSummary",
+          "type": "boolean",
+          "description": "Whether to include a summary section at the top of the release notes.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Returns a structured object containing the generated release notes as a string and metadata such as the formatted version and release date."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to produce professional, structured release notes from raw release data including features, fixes, and issues. Ideal for automating changelog generation, documentation updates, and stakeholder communication after software releases.",
+        "limitations": "Does not generate content beyond given inputs; relies on user-provided change details. Not suitable for generating release notes from unstructured or natural language changelogs without preprocessing. Formatting options are limited to markdown and plaintext.",
+        "examples": [
+          "Generate release notes for version 3.0.0 with listed features, bug fixes, and known issues in markdown format.",
+          "Produce plaintext release notes summarizing key changes for a hotfix release.",
+          "Create release notes without a summary section for an internal deployment."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "release-notes",
+        "software",
+        "automation",
+        "formatting"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"version\":\"2.5.0\",\"releaseDate\":\"2024-06-01\",\"features\":[\"Added user profile customization\",\"Improved load times\"],\"bugFixes\":[\"Fixed crash on login\",\"Resolved UI glitch on settings page\"],\"knownIssues\":[\"Delayed notifications under heavy load\"],\"format\":\"markdown\",\"includeSummary\":true}",
+          "description": "Generate markdown formatted release notes for version 2.5.0 with features, fixes, known issues, and a summary."
+        },
+        {
+          "inputJson": "{\"version\":\"2.5.1\",\"bugFixes\":[\"Fixed issue where export failed\"],\"format\":\"plaintext\",\"includeSummary\":false}",
+          "description": "Generate plaintext release notes for patch 2.5.1 containing only a bug fix without summary section."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "ReleaseNotes",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateMinutes",
+      "description": "Generates detailed meeting minutes from provided meeting data such as agenda items, participant contributions, decisions made, and action items. Accepts structured meeting content or transcriptions and produces a well-organized minutes document suitable for distribution and archiving.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "meetingTitle",
+          "type": "string",
+          "description": "The title or subject line of the meeting to include in the minutes.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "The date when the meeting took place, in YYYY-MM-DD format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "participants",
+          "type": "array",
+          "description": "List of participant names or identifiers attending the meeting.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "agendaItems",
+          "type": "array",
+          "description": "An array of agenda item objects with titles and summaries to structure the meeting content.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "discussionPoints",
+          "type": "array",
+          "description": "Detailed discussion entries linked to agenda items, capturing participant contributions and key points.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "decisions",
+          "type": "array",
+          "description": "List of decisions or resolutions made during the meeting, linked to relevant agenda items.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "actionItems",
+          "type": "array",
+          "description": "Action items with assignees, deadlines, and descriptions identified in the meeting.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "additionalNotes",
+          "type": "string",
+          "description": "Any extra notes or remarks to be appended to the minutes.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "A structured meeting minutes document including title, date, participants, agenda overview, detailed discussion, decisions, action items, and notes."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent receives raw meeting content and needs to produce clear, professional minutes for record-keeping or sharing with stakeholders. It helps summarize complex discussions into organized, readable minutes automatically.",
+        "limitations": "This tool cannot transcribe audio meetings or infer missing information not provided in the input data. It relies on structured or fully detailed input to generate accurate minutes.",
+        "examples": [
+          "Generate minutes from a completed team meeting with agenda, discussions, and actions.",
+          "Produce a formal minutes document from raw notes and participant contributions.",
+          "Summarize decisions and tasks from a project kickoff meeting transcript."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "meeting",
+        "minutes",
+        "generate",
+        "summary",
+        "action-items",
+        "decisions"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"meetingTitle\":\"Product Strategy Meeting\",\"date\":\"2024-06-15\",\"participants\":[\"Alice\",\"Bob\",\"Charlie\"],\"agendaItems\":[{\"title\":\"Q3 Goals\",\"summary\":\"Discuss objectives and key results for next quarter.\"}],\"discussionPoints\":[{\"agendaItem\":\"Q3 Goals\",\"points\":[\"Alice proposed increasing market share.\",\"Bob highlighted challenges in supply chain.\"]}],\"decisions\":[{\"agendaItem\":\"Q3 Goals\",\"decision\":\"Approve increased budget for marketing.\"}],\"actionItems\":[{\"assignee\":\"Charlie\",\"deadline\":\"2024-07-01\",\"task\":\"Prepare marketing plan draft.\"}],\"additionalNotes\":\"Next meeting scheduled for 2024-07-01.\"}",
+          "description": "Generate structured minutes from comprehensive data about the product strategy meeting."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Minutes",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateTranscript",
+      "description": "Generates a structured transcript document from meeting audio or video input along with optional metadata. Accepts audio/video file or URL and optional speaker identification data. Processes speech recognition, timestamps speech segments, and outputs a clear formatted transcript including speaker labels and time markers.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "mediaSource",
+          "type": "string",
+          "description": "Path or URL to the audio/video file to transcribe.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "language",
+          "type": "string",
+          "description": "Language code of the audio for accurate transcription (e.g., 'en-US').",
+          "required": false,
+          "defaultValue": "en-US"
+        },
+        {
+          "name": "includeTimestamps",
+          "type": "boolean",
+          "description": "Whether to include timestamps for each speech segment in the transcript.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "speakerLabels",
+          "type": "array",
+          "description": "Optional list of known speaker names to label speakers in the transcript.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Format of the transcript output, e.g., 'text', 'json', or 'srt' subtitle format.",
+          "required": false,
+          "defaultValue": "text"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the full transcript text, optionally segmented by speaker and timestamps according to outputFormat."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to convert meeting recordings or other spoken content into structured transcripts for documentation, review, or archival purposes. It's suitable when input is prerecorded media files or accessible URLs of recorded meetings or discussions, and a clear textual record with time references and speaker identification is required.",
+        "limitations": "This tool requires a clear audio/video source and may struggle with overlapping speech, heavy accents, or low-quality recordings. It cannot perform real-time transcription and does not summarize content, only transcribes spoken words.",
+        "examples": [
+          "Generate a transcript from a Zoom meeting recording URL including speaker labels.",
+          "Create a timestamped transcript in JSON format from an MP4 video of a webinar.",
+          "Produce a plain text transcript from an audio file without speaker labels for internal review."
+        ]
+      },
+      "tags": [
+        "transcription",
+        "documentation",
+        "audio",
+        "video",
+        "speech-to-text",
+        "meeting",
+        "transcript generation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"mediaSource\":\"https://example.com/meeting.mp4\",\"language\":\"en-US\",\"includeTimestamps\":true,\"speakerLabels\":[\"Alice\",\"Bob\"],\"outputFormat\":\"text\"}",
+          "description": "Generate a timestamped text transcript from a meeting video URL with speaker names."
+        },
+        {
+          "inputJson": "{\"mediaSource\":\"/path/to/audio.wav\",\"language\":\"en-GB\",\"includeTimestamps\":false,\"speakerLabels\":[],\"outputFormat\":\"json\"}",
+          "description": "Transcribe an audio WAV file in British English without timestamps, output as JSON."
+        },
+        {
+          "inputJson": "{\"mediaSource\":\"https://example.com/podcast.mp3\",\"language\":\"en-US\",\"includeTimestamps\":true,\"speakerLabels\":[\"Host\",\"Guest\"],\"outputFormat\":\"srt\"}",
+          "description": "Create an SRT subtitle file with timestamps from a podcast audio, labeling host and guest speakers."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Transcript",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateBlogPost",
+      "description": "Generates a well-structured blog post draft based on a given topic, target audience, and optional style preferences. The tool accepts input parameters such as title, keywords, intended audience, tone, and desired length, then produces a cohesive blog post text suitable for further editing or publishing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main headline or topic of the blog post to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "A list of keywords or key phrases to include and emphasize within the blog post content.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "audience",
+          "type": "string",
+          "description": "Description of the target audience to tailor content style and complexity (e.g., beginners, professionals).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "The tone or style of the blog post, such as formal, casual, informative, or persuasive.",
+          "required": false,
+          "defaultValue": "informative"
+        },
+        {
+          "name": "length",
+          "type": "number",
+          "description": "Approximate word count desired for the blog post to control its length.",
+          "required": false,
+          "defaultValue": "800"
+        },
+        {
+          "name": "includeOutline",
+          "type": "boolean",
+          "description": "If true, the output will include a post outline before the full text.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object with fields 'title', 'outline' (if requested), and 'content' containing the generated blog post text."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to quickly generate a blog post draft for a given topic with specific emphasis on keywords, audience targeting, tone, and length constraints. Ideal for content creators, marketers, or documentation teams looking to automate first draft generation and improve productivity.",
+        "limitations": "The content produced may require human review and editing for accuracy, style consistency, originality, and factual correctness. It is not suitable for highly technical or sensitive topics without expert oversight.",
+        "examples": [
+          "Generate a 1000-word blog post about 'Machine Learning in Healthcare' targeting professionals, using an informative tone, including keywords like 'AI', 'patient care', and 'data analytics'.",
+          "Create a casual, 600-word blog post titled 'Top 5 Hiking Trails in California' for beginner outdoor enthusiasts.",
+          "Produce an outline plus a 1200-word persuasive blog post on 'Why Remote Work is the Future' aimed at corporate managers."
+        ]
+      },
+      "tags": [
+        "blog",
+        "content-generation",
+        "documentation",
+        "writing",
+        "marketing",
+        "automation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"The Benefits of Mindful Meditation\",\"keywords\":[\"mindfulness\",\"meditation\",\"stress relief\"],\"audience\":\"general public\",\"tone\":\"calm and encouraging\",\"length\":700,\"includeOutline\":true}",
+          "description": "Generate a mindful meditation blog post with an outline, 700 words, calm tone, for general public."
+        },
+        {
+          "inputJson": "{\"title\":\"An Introduction to Quantum Computing\",\"audience\":\"technology enthusiasts\",\"tone\":\"informative\",\"length\":1000}",
+          "description": "Create a detailed, informative 1000-word blog post on quantum computing for tech enthusiasts."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "BlogPost",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateReport",
+      "description": "Generates detailed and customizable reports from structured data inputs such as JSON or CSV. The tool processes filters, aggregates, and formats data into readable PDF or HTML reports with optional sections and summary statistics. Output is a ready-to-share document summarizing key information based on user parameters.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "inputData",
+          "type": "string",
+          "description": "Structured data input in JSON or CSV format to be included in the report, required.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "dataFormat",
+          "type": "string",
+          "description": "Format of the input data, e.g., 'json' or 'csv'. Determines parsing method.",
+          "required": true,
+          "defaultValue": "json"
+        },
+        {
+          "name": "reportTitle",
+          "type": "string",
+          "description": "Title text for the generated report header.",
+          "required": false,
+          "defaultValue": "Generated Report"
+        },
+        {
+          "name": "includeSummary",
+          "type": "boolean",
+          "description": "Whether to include a summary section with aggregations and key metrics.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "filters",
+          "type": "object",
+          "description": "Optional key-value pairs to filter data rows to include (e.g., {'status':'active'}).",
+          "required": false,
+          "defaultValue": "{}"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "Desired output format of the report document, e.g., 'pdf' or 'html'.",
+          "required": false,
+          "defaultValue": "pdf"
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An ordered list of report sections to include, e.g., ['introduction','data','analysis','conclusion'].",
+          "required": false,
+          "defaultValue": "[]"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated report file as a base64 encoded string and metadata including file type and size."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to transform raw structured data into a human-readable, professionally formatted report with custom sections and filtering. Ideal for summarizing analytics, status updates, or datasets in a shareable document format.",
+        "limitations": "This tool does not perform complex statistical analysis or natural language generation beyond templated section content. It requires data to be well-structured and may not handle malformed inputs gracefully.",
+        "examples": [
+          "Generate a PDF report from JSON sales data including summary and filtered by region='EMEA'.",
+          "Create an HTML report from CSV user feedback data, showing introduction and conclusion sections only.",
+          "Produce a PDF report from JSON input with report title 'Monthly Metrics' and including all default sections."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "reporting",
+        "data-processing",
+        "pdf",
+        "html",
+        "summary",
+        "filtering"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"inputData\":\"[{\\\"id\\\":1,\\\"status\\\":\\\"active\\\",\\\"sales\\\":100},{\\\"id\\\":2,\\\"status\\\":\\\"inactive\\\",\\\"sales\\\":200}]\",\"dataFormat\":\"json\",\"reportTitle\":\"Sales Report Q1\",\"includeSummary\":true,\"filters\":{\"status\":\"active\"},\"outputFormat\":\"pdf\",\"sections\":[\"introduction\",\"data\",\"summary\"]}",
+          "description": "Generate a PDF sales report from JSON data filtered to include only active status rows, with introduction, data section, and summary."
+        },
+        {
+          "inputJson": "{\"inputData\":\"id,name,feedback\\n1,Alice,Good service\\n2,Bob,Average experience\",\"dataFormat\":\"csv\",\"reportTitle\":\"User Feedback\",\"includeSummary\":false,\"filters\":{},\"outputFormat\":\"html\",\"sections\":[\"introduction\",\"conclusion\"]}",
+          "description": "Create an HTML report from CSV user feedback data, including only introduction and conclusion sections without summary."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Report",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateChangelog",
+      "description": "Generates a formatted changelog document from a list of versioned updates. Accepts structured input detailing versions, dates, and descriptions of changes, organizes entries by version, and outputs a markdown or plain text changelog ready for release notes or project documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "releaseNotes",
+          "type": "array",
+          "description": "An array of release note objects each containing version, date, and list of changes describing the updates.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format of the changelog, e.g., 'markdown' or 'plaintext'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "includeUnreleased",
+          "type": "boolean",
+          "description": "Whether to include an 'Unreleased' section for upcoming or in-progress changes.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "dateFormat",
+          "type": "string",
+          "description": "The format string to use for dates in the changelog output (e.g., 'YYYY-MM-DD').",
+          "required": false,
+          "defaultValue": "YYYY-MM-DD"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted changelog string under the 'changelogContent' property."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when automatically generating or updating project changelogs from structured release data. It is useful for release automation, documentation updates, and providing consistent, formatted changelog files in markdown or plain text formats.",
+        "limitations": "This tool does not generate release notes from unstructured input or infer changes from code commits. It requires structured release notes input and cannot integrate directly with version control systems.",
+        "examples": [
+          "Generate a markdown changelog from a list of releases with versions, dates, and changes.",
+          "Create a plaintext changelog excluding unreleased changes for a project release.",
+          "Format changelog dates in a custom format while including an Unreleased section."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "changelog",
+        "release-notes",
+        "automation",
+        "project-management"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"releaseNotes\":[{\"version\":\"1.2.0\",\"date\":\"2024-05-01\",\"changes\":[\"Added feature X\",\"Fixed bug Y\"]},{\"version\":\"1.1.0\",\"date\":\"2024-03-15\",\"changes\":[\"Improved performance\",\"Deprecated feature Z\"]}],\"outputFormat\":\"markdown\",\"includeUnreleased\":false,\"dateFormat\":\"YYYY-MM-DD\"}",
+          "description": "Generate a markdown changelog for releases 1.2.0 and 1.1.0 without unreleased changes, using ISO date format."
+        },
+        {
+          "inputJson": "{\"releaseNotes\":[{\"version\":\"2.0.0\",\"date\":\"2024-06-10\",\"changes\":[\"Major UI overhaul\",\"Dropped support for legacy API\"]}],\"outputFormat\":\"plaintext\",\"includeUnreleased\":true,\"dateFormat\":\"MMM DD, YYYY\"}",
+          "description": "Create a plaintext changelog including an unreleased section, with dates in a readable format."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Changelog",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateArticle",
+      "description": "Generates a detailed, well-structured article based on a given topic, target audience, tone, and additional content guidelines. Accepts input parameters such as the article title, keywords, desired length, and style preferences, and produces a coherent article text suitable for documentation, blogs, or knowledge base entries.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title or topic of the article to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "keywords",
+          "type": "array",
+          "description": "A list of keywords or key phrases to be incorporated into the article to improve relevance and SEO.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "targetAudience",
+          "type": "string",
+          "description": "Description of the intended audience (e.g., beginners, developers, managers) to tailor complexity and terminology.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "articleLength",
+          "type": "number",
+          "description": "Approximate length of the article in words; influences depth and detail level.",
+          "required": false,
+          "defaultValue": "1000"
+        },
+        {
+          "name": "tone",
+          "type": "string",
+          "description": "Desired tone of the article such as formal, casual, technical, or conversational.",
+          "required": false,
+          "defaultValue": "formal"
+        },
+        {
+          "name": "structureOutline",
+          "type": "array",
+          "description": "Optional array of headers or sections to structure the article content explicitly.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "includeExamples",
+          "type": "boolean",
+          "description": "Whether to include relevant examples or code snippets if applicable to the topic.",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated article text and a summary outline with headings."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to automatically create comprehensive, well-organized documentation articles from a simple topic input. This is ideal for generating drafts or initial content for blogs, internal wikis, or product documentation to save time and ensure consistency in style and tone.",
+        "limitations": "Cannot guarantee fully accurate domain-specific details without human review. May not produce industry-certified technical content or replace expert written materials completely.",
+        "examples": [
+          "Generate a beginner-friendly article about JavaScript closures including examples.",
+          "Create a formal technical documentation article on API authentication best practices with detailed section headings.",
+          "Produce a conversational blog post about agile project management tailored to new managers."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "article generation",
+        "content creation",
+        "writing assistant",
+        "knowledge base"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Understanding Microservices Architecture\",\"keywords\":[\"microservices\",\"architecture\",\"scalability\"],\"targetAudience\":\"software developers\",\"articleLength\":1200,\"tone\":\"technical\",\"structureOutline\":[\"Introduction\",\"Benefits\",\"Challenges\",\"Best Practices\"],\"includeExamples\":true}",
+          "description": "Generate a technical article aimed at developers explaining microservices architecture with structured headings and best practices including examples."
+        },
+        {
+          "inputJson": "{\"title\":\"Getting Started with Kubernetes\",\"keywords\":[\"kubernetes\",\"container orchestration\"],\"targetAudience\":\"beginners\",\"articleLength\":800,\"tone\":\"casual\",\"includeExamples\":false}",
+          "description": "Create a beginner-friendly article with an easy, casual tone introducing Kubernetes basics without code examples."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Article",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.generateDocument",
+      "description": "Generates a structured document from given content inputs including title, sections, and metadata. Accepts content as plain text or markdown for sections, an optional table of contents, and outputs a formatted document in HTML or markdown format ready for publishing or further editing.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The main title of the document to be generated.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "sections",
+          "type": "array",
+          "description": "An array of section objects, each containing a heading and content. Content can be plain text or markdown.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeTableOfContents",
+          "type": "boolean",
+          "description": "Whether to generate and include a table of contents based on section headings.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The output document format. Supported values: 'html' or 'markdown'.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "metadata",
+          "type": "object",
+          "description": "Optional metadata including author name, date, and keywords to embed in the document header.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated document as a string in the requested format, plus optional metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to programmatically create well-structured documentation from raw text inputs or markdown sections, such as generating API docs, manuals, or guides. It is ideal for assembling multiple content parts into a single cohesive document in HTML or markdown formats.",
+        "limitations": "This tool does not perform grammar or style checks and does not convert scanned images or PDFs into text. It does not handle advanced typesetting or export to formats like PDF or DOCX directly.",
+        "examples": [
+          "Generate a markdown user guide from a set of section texts with metadata.",
+          "Create an HTML formatted API reference with a clickable table of contents.",
+          "Produce a technical document from various markdown content blocks without a TOC."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "generate",
+        "html",
+        "markdown",
+        "automation",
+        "content",
+        "authoring"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"API Usage Guide\",\"sections\":[{\"heading\":\"Introduction\",\"content\":\"This guide explains API usage.\"},{\"heading\":\"Authentication\",\"content\":\"Use OAuth 2.0 for authentication.\"},{\"heading\":\"Endpoints\",\"content\":\"Details of available endpoints.\"}],\"includeTableOfContents\":true,\"outputFormat\":\"html\",\"metadata\":{\"author\":\"John Doe\",\"date\":\"2024-06-01\",\"keywords\":[\"API\",\"guide\"]}}",
+          "description": "Generate an HTML API usage guide with table of contents and metadata."
+        },
+        {
+          "inputJson": "{\"title\":\"Release Notes v1.2\",\"sections\":[{\"heading\":\"New Features\",\"content\":\"Added dark mode and performance improvements.\"},{\"heading\":\"Bug Fixes\",\"content\":\"Fixed login issue on mobile devices.\"}],\"includeTableOfContents\":false,\"outputFormat\":\"markdown\"}",
+          "description": "Generate markdown release notes without a table of contents."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "generate",
+        "object": "Document",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.createCitation",
+      "description": "Generates formatted bibliographic citations for various source types based on input metadata. Accepts source details such as type, author(s), title, publication year, and optional fields, and produces a citation string formatted according to specified citation styles like APA, MLA, or Chicago.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "sourceType",
+          "type": "string",
+          "description": "Type of the source (e.g., book, journal, website, report).",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of author names in 'Last, First' format.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Title of the work being cited.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publicationYear",
+          "type": "string",
+          "description": "The year the source was published.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "publisher",
+          "type": "string",
+          "description": "Name of the publisher or publishing entity (if applicable).",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "journalName",
+          "type": "string",
+          "description": "Name of the journal if the source is an article.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "volume",
+          "type": "string",
+          "description": "Volume number for journal articles or magazines.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "issue",
+          "type": "string",
+          "description": "Issue number for journal articles or magazines.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "pages",
+          "type": "string",
+          "description": "Page range of the article or chapter (e.g., '23-45').",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "url",
+          "type": "string",
+          "description": "URL for online sources, if applicable.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "accessDate",
+          "type": "string",
+          "description": "Date the online source was accessed, formatted as YYYY-MM-DD.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationStyle",
+          "type": "string",
+          "description": "Citation style to format output: 'APA', 'MLA', 'Chicago' (default APA).",
+          "required": false,
+          "defaultValue": "APA"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted citation string as per requested style."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when needing to produce a correctly formatted citation string from bibliographic metadata for inclusion in documentation, research, or reports. It supports multiple source types and citation styles to ensure compliance with academic or professional standards.",
+        "limitations": "This tool does not fetch missing metadata nor verify source accuracy. It cannot format citations for highly unusual or custom styles beyond common standards.",
+        "examples": [
+          "Create an APA citation for a journal article with authors, volume, issue, and pages.",
+          "Generate MLA format citation for a book with publisher and year.",
+          "Produce a Chicago citation for a website with URL and access date."
+        ]
+      },
+      "tags": [
+        "citation",
+        "bibliography",
+        "formatting",
+        "documentation",
+        "reference-management",
+        "APA",
+        "MLA",
+        "Chicago"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"sourceType\":\"book\",\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Understanding AI\",\"publicationYear\":\"2020\",\"publisher\":\"Tech Press\",\"citationStyle\":\"APA\"}",
+          "description": "Generate APA style citation for a book with multiple authors."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"journal\",\"authors\":[\"Brown, Lisa\"],\"title\":\"AI in Modern Healthcare\",\"publicationYear\":\"2022\",\"journalName\":\"HealthTech Journal\",\"volume\":\"15\",\"issue\":\"4\",\"pages\":\"234-250\",\"citationStyle\":\"MLA\"}",
+          "description": "Create MLA formatted citation for a journal article including volume, issue, and pages."
+        },
+        {
+          "inputJson": "{\"sourceType\":\"website\",\"authors\":[\"Johnson, Mark\"],\"title\":\"AI Trends 2024\",\"publicationYear\":\"2024\",\"url\":\"https://aitechnology.example.com/trends2024\",\"accessDate\":\"2024-05-20\",\"citationStyle\":\"Chicago\"}",
+          "description": "Produce Chicago style citation for a website with URL and access date."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Citation",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.createReference",
+      "description": "Creates a structured reference document entry from provided input parameters including title, description, version, authors, and related topics. Processes this data to generate a comprehensive, formatted reference section suitable for inclusion in technical documentation, outputting the reference as a markdown or JSON object.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "title",
+          "type": "string",
+          "description": "The title of the reference entry, representing the subject or feature.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "description",
+          "type": "string",
+          "description": "A detailed explanation of the subject covered by the reference entry.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "version",
+          "type": "string",
+          "description": "The version number or identifier applicable to the reference content.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "authors",
+          "type": "array",
+          "description": "List of author names or contributors to the reference content.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "relatedTopics",
+          "type": "array",
+          "description": "Array of related topics or keywords linking to other documentation entries.",
+          "required": false,
+          "defaultValue": "[]"
+        },
+        {
+          "name": "outputFormat",
+          "type": "string",
+          "description": "The desired output format of the reference; options include 'markdown' or 'json'.",
+          "required": false,
+          "defaultValue": "markdown"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted reference content in the requested output format, including metadata and body."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an AI agent needs to generate or update structured reference sections in technical documentation repositories or knowledge bases, ensuring consistency and completeness of reference material across versions and topics.",
+        "limitations": "This tool does not extract reference content from source code or live systems; it requires provided input data for generation and cannot perform automatic validation of the accuracy of reference content.",
+        "examples": [
+          "Create a reference entry for the 'Authentication Module' version 2.1 with authors and related security topics in markdown.",
+          "Generate a JSON structured reference for the 'API Rate Limiting' feature including description and version info.",
+          "Add a reference section for a new feature with title, description, and related topics without specifying authors, output in markdown format."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "reference",
+        "creation",
+        "technical writing",
+        "markdown",
+        "json",
+        "knowledge base"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"title\":\"Authentication Module\",\"description\":\"Handles user authentication including login, logout, and session management.\",\"version\":\"2.1\",\"authors\":[\"Jane Doe\",\"John Smith\"],\"relatedTopics\":[\"Security\",\"User Management\"],\"outputFormat\":\"markdown\"}",
+          "description": "Create a markdown reference entry for the Authentication Module including authors and related topics."
+        },
+        {
+          "inputJson": "{\"title\":\"API Rate Limiting\",\"description\":\"Limits the number of API calls to prevent abuse and ensure stability.\",\"version\":\"1.4\",\"authors\":[],\"relatedTopics\":[\"API\",\"Performance\"],\"outputFormat\":\"json\"}",
+          "description": "Generate a JSON-formatted reference entry for the API Rate Limiting feature."
+        },
+        {
+          "inputJson": "{\"title\":\"New Feature X\",\"description\":\"Provides new functionality to enhance user experience.\",\"authors\":[\"Alice\"],\"relatedTopics\":[],\"outputFormat\":\"markdown\"}",
+          "description": "Add a markdown reference section for a new feature with minimal info provided."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Reference",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.createQuote",
+      "description": "Creates a formatted quote snippet for documentation or publication by accepting the quote text, author, source, and optional citation details. It outputs a standardized quote object including citation info and formatting meta-data to be integrated into technical or user documentation.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "quoteText",
+          "type": "string",
+          "description": "The main text content of the quote to be included in the documentation.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "The name of the person or entity who originally said or wrote the quote.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "source",
+          "type": "string",
+          "description": "The title or name of the work, speech, or context from which the quote is taken.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "date",
+          "type": "string",
+          "description": "Year or full date when the quote was originally made or published, formatted as YYYY-MM-DD or YYYY.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "citationUrl",
+          "type": "string",
+          "description": "A URL pointing to the original source or a reliable reference for the quote.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "includeFormatting",
+          "type": "boolean",
+          "description": "If true, the output includes rich text formatting annotations (e.g., italics for source) for integration in styled docs.",
+          "required": false,
+          "defaultValue": "true"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted quote text, author, source, date, citation URL, and optional formatting metadata suitable for documentation inclusion."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or updating documentation that requires properly formatted and cited quotes. It helps ensure consistent presentation and inclusion of all relevant bibliographic info for quotes referenced in technical specs, manuals, or user guides.",
+        "limitations": "This tool does not verify the authenticity or correctness of the quote content or citation. It does not generate quotes or paraphrase text; it simply formats and structures provided quote data.",
+        "examples": [
+          "Create a quote snippet from a famous project management thought leader for inclusion in a software methodology guide.",
+          "Generate a properly cited quote block for a documentation page referencing an open source license.",
+          "Format a quote with an associated URL source for a user manual's best practices section."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "quote",
+        "citation",
+        "formatting",
+        "content creation",
+        "author attribution"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"quoteText\":\"The best way to predict the future is to invent it.\",\"author\":\"Alan Kay\",\"source\":\"Lecture at OOPSLA conference\",\"date\":\"1989-10-01\",\"citationUrl\":\"https://en.wikipedia.org/wiki/Alan_Kay\",\"includeFormatting\":true}",
+          "description": "Create a formatted quote snippet from Alan Kay with source, date, and citation URL, including rich formatting."
+        },
+        {
+          "inputJson": "{\"quoteText\":\"Good design adds value faster than it adds cost.\",\"author\":\"Joel Spolsky\",\"source\":\"Joel on Software Blog\",\"includeFormatting\":false}",
+          "description": "Generate a quote snippet with author and source, no date or citation URL, without rich formatting."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Quote",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.createWord",
+      "description": "Creates a Microsoft Word document file (.docx) from provided textual content and optional metadata. It accepts plain text or markdown input, applies basic formatting, and outputs a downloadable Word file for documentation purposes.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "content",
+          "type": "string",
+          "description": "The main textual content to include in the Word document, can be plain text or markdown formatted.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "title",
+          "type": "string",
+          "description": "Optional title to be added as the document heading.",
+          "required": false,
+          "defaultValue": "\"\""
+        },
+        {
+          "name": "author",
+          "type": "string",
+          "description": "Optional author metadata to embed in the document properties.",
+          "required": false,
+          "defaultValue": "\"\""
+        },
+        {
+          "name": "includeTOC",
+          "type": "boolean",
+          "description": "Flag to include a Table of Contents generated from headings in the content.",
+          "required": false,
+          "defaultValue": "false"
+        },
+        {
+          "name": "fontName",
+          "type": "string",
+          "description": "Font family to be used throughout the document, e.g., 'Times New Roman'.",
+          "required": false,
+          "defaultValue": "\"Arial\""
+        },
+        {
+          "name": "fontSize",
+          "type": "number",
+          "description": "Base font size in points to apply to the document text.",
+          "required": false,
+          "defaultValue": "11"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "Object containing a base64 encoded Word document (docx) and its metadata."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when an agent needs to generate formal or informal documentation content in a widely compatible Word document format, for example to produce reports, guides, or manuals that require simple formatting and metadata embedding. It converts text content into a structured .docx file ready for user download or further editing.",
+        "limitations": "This tool does not support complex Word features such as advanced images, tables, macros, or track changes. It handles primarily text with headings for TOC generation and basic styling only.",
+        "examples": [
+          "Create a Word document from a user manual markdown content including a title and author metadata.",
+          "Generate a brief report in Word format with a table of contents derived from markdown headings.",
+          "Produce a simple Word document with customized font and font size from plain text content."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "word",
+        "create",
+        "docx",
+        "document-generation",
+        "text-to-doc"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"content\":\"# Introduction\\nThis is the project overview.\\n## Details\\nFurther explanation.\",\"title\":\"Project Overview\",\"author\":\"Jane Doe\",\"includeTOC\":true,\"fontName\":\"Calibri\",\"fontSize\":12}",
+          "description": "Create a Word document with title, author, TOC, and Calibri font from markdown content."
+        },
+        {
+          "inputJson": "{\"content\":\"Summary of results:\\n- Point one\\n- Point two\",\"title\":\"Results Summary\",\"author\":\"\",\"includeTOC\":false,\"fontName\":\"Times New Roman\",\"fontSize\":11}",
+          "description": "Generate a simple Word document from plain text with a title and Times New Roman font."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Word",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.createSentence",
+      "description": "This tool generates a clear, concise sentence suitable for technical documentation based on the input topic and context parameters. It helps authors by creating human-readable sentences that can be integrated into manuals, guides, or API references. Input includes a subject, action, and optional elaboration. Output is a grammatically correct English sentence.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "subject",
+          "type": "string",
+          "description": "The main topic or entity that the sentence will describe or involve.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "action",
+          "type": "string",
+          "description": "The verb or activity associated with the subject that the sentence should describe.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "context",
+          "type": "string",
+          "description": "Additional context or details to include in the sentence for clarity or specificity.",
+          "required": false,
+          "defaultValue": ""
+        },
+        {
+          "name": "formalTone",
+          "type": "boolean",
+          "description": "Whether the sentence should use a formal tone suitable for professional documentation.",
+          "required": false,
+          "defaultValue": "true"
+        },
+        {
+          "name": "maxLength",
+          "type": "number",
+          "description": "Maximum length of the generated sentence in characters to ensure conciseness.",
+          "required": false,
+          "defaultValue": "150"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the generated sentence as a string under the 'sentence' key."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when you need to create precise, well-formed sentences for technical documentation from conceptual inputs like subject and action, enabling automated or assisted documentation writing. It is especially helpful to maintain consistent tone and clarity in manuals, guides, or API descriptions.",
+        "limitations": "This tool cannot generate multi-sentence paragraphs or fully structured documents, nor does it perform stylistic editing beyond basic tone adjustment. It only creates single sentences based on the inputs provided.",
+        "examples": [
+          "Create a sentence describing how a user logs in to a system with formal tone.",
+          "Generate a concise sentence explaining the function of a cooling system in a device with optional context.",
+          "Produce a sentence about error handling in an API with a maximum length limit."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "sentence generation",
+        "technical writing",
+        "content creation",
+        "automation",
+        "clarity"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"subject\":\"user authentication\",\"action\":\"enables secure access\",\"context\":\"by validating credentials\",\"formalTone\":true,\"maxLength\":120}",
+          "description": "Generate a formal sentence explaining how user authentication works to secure access."
+        },
+        {
+          "inputJson": "{\"subject\":\"API error handling\",\"action\":\"provides clear error messages\",\"context\":\"to assist developers in debugging\",\"formalTone\":false,\"maxLength\":100}",
+          "description": "Create a less formal, concise sentence about API error handling to help developers."
+        },
+        {
+          "inputJson": "{\"subject\":\"system update\",\"action\":\"improves performance\",\"context\":\"and fixes known bugs\",\"formalTone\":true,\"maxLength\":150}",
+          "description": "Produce a formal sentence describing a system update with context on its benefits."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Sentence",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.createLink",
+      "description": "Creates a markdown-formatted hyperlink string based on the given display text and URL. Optionally includes a tooltip for additional context. Accepts the link URL, the visible link text, and an optional tooltip, and outputs a string representing the markdown link to be used in documentation files.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "url",
+          "type": "string",
+          "description": "The target URL or link destination to embed.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "displayText",
+          "type": "string",
+          "description": "The visible text that will be clickable in the link.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "tooltip",
+          "type": "string",
+          "description": "Optional tooltip or title attribute to show additional info on hover.",
+          "required": false,
+          "defaultValue": ""
+        }
+      ],
+      "returns": {
+        "type": "string",
+        "description": "A markdown-formatted hyperlink string representing the link as [displayText](url) with optional tooltip."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating or updating documentation that requires the insertion of hyperlinks in markdown format. It helps create consistent, properly formatted links for URLs, improving documentation clarity and navigability.",
+        "limitations": "This tool only outputs markdown formatted links and does not validate the URL for correctness or availability.",
+        "examples": [
+          "Create a markdown link for a user guide section with text 'User Guide' and URL 'https://example.com/guide'.",
+          "Generate a link with a tooltip explaining the link destination."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "markdown",
+        "links",
+        "formatting",
+        "text-processing"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"url\":\"https://www.example.com\",\"displayText\":\"Example Website\",\"tooltip\":\"Visit the Example website for info\"}",
+          "description": "Create a markdown link with tooltip for the Example Website."
+        },
+        {
+          "inputJson": "{\"url\":\"https://docs.python.org/3/\",\"displayText\":\"Python Docs\",\"tooltip\":\"Official Python 3 documentation\"}",
+          "description": "Generate a markdown link to Python official documentation with a tooltip."
+        }
+      ],
+      "qualityScore": 1,
+      "skeleton": {
+        "verb": "create",
+        "object": "Link",
+        "context": null
+      }
+    },
+    {
+      "name": "documentation-tools.createHeading",
+      "description": "Creates a formatted heading string for documentation content based on the specified text, level, and style. Accepts heading text and optional heading level and style; outputs a properly formatted heading string suitable for Markdown, HTML, or plain text documents.",
+      "category": "documentation-tools",
+      "parameters": [
+        {
+          "name": "text",
+          "type": "string",
+          "description": "The heading text content to be formatted into a heading.",
+          "required": true,
+          "defaultValue": ""
+        },
+        {
+          "name": "level",
+          "type": "number",
+          "description": "The heading level indicating depth (e.g., 1 for top-level heading, 2 for subheading).",
+          "required": false,
+          "defaultValue": "1"
+        },
+        {
+          "name": "style",
+          "type": "string",
+          "description": "The output format style of the heading such as 'markdown', 'html', or 'plain' text.",
+          "required": false,
+          "defaultValue": "markdown"
+        },
+        {
+          "name": "useUnderline",
+          "type": "boolean",
+          "description": "Whether to use underline style for certain markdown headings (like === or --- for level 1 or 2).",
+          "required": false,
+          "defaultValue": "false"
+        }
+      ],
+      "returns": {
+        "type": "object",
+        "description": "An object containing the formatted heading string under the key 'formattedHeading', ready for insertion into documentation."
+      },
+      "aiAgent": {
+        "useCase": "Use this tool when generating structured documentation content that requires consistent heading formatting for readable hierarchy. Useful for automated report generation, README file creation, or dynamic content formatting where heading level and style need explicit control.",
+        "limitations": "This tool only formats headings; it does not generate heading content or handle complex nested formatting beyond heading styles. Styling is limited to markdown, HTML, or plain text output styles.",
+        "examples": [
+          "Create a level 2 Markdown heading reading 'Introduction'.",
+          "Generate an HTML level 3 heading labeled 'Installation'",
+          "Produce a plain text top-level heading titled 'Overview' without any markup."
+        ]
+      },
+      "tags": [
+        "documentation",
+        "heading",
+        "formatting",
+        "markdown",
+        "html",
+        "text",
+        "content-creation"
+      ],
+      "examples": [
+        {
+          "inputJson": "{\"text\":\"Introduction\",\"level\":2,\"style\":\"markdown\"}",
+          "description": "Creates a Markdown level 2 heading: '## Introduction'"
+        },
+        {
+          "inputJson": "{\"text\":\"Installation\",\"level\":3,\"style\":\"html\"}",
+          "description": "Creates an HTML level 3 heading: '

Installation

'" + }, + { + "inputJson": "{\"text\":\"Overview\",\"level\":1,\"style\":\"plain\"}", + "description": "Creates a plain text top-level heading without formatting: 'Overview'" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "documentation-tools.createParagraph", + "description": "Generates a formatted paragraph of documentation text based on given input content, emphasis, and style parameters. It accepts plain text or markdown, an optional heading, and stylistic options like text emphasis and indentation, and returns a well-structured paragraph string ready for insertion into documentation.", + "category": "documentation-tools", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main textual content of the paragraph in plain text or markdown format.", + "required": true, + "defaultValue": "" + }, + { + "name": "heading", + "type": "string", + "description": "An optional heading or subheading that precedes the paragraph. Leave empty if none.", + "required": false, + "defaultValue": "" + }, + { + "name": "emphasis", + "type": "string", + "description": "Text emphasis style to apply such as 'bold', 'italic', or 'none'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "indentationLevel", + "type": "number", + "description": "Number of indentation levels to apply to the paragraph, useful for nested bullet points or code blocks.", + "required": false, + "defaultValue": "0" + }, + { + "name": "addLineBreaks", + "type": "boolean", + "description": "Whether to add line breaks before and after the paragraph for readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a single property 'paragraph' which is a string with the formatted paragraph text, including any headings and applied styles." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate clear, styled documentation paragraphs that can be directly inserted into docs, READMEs, or help files, with optional headings and formatting. Ideal for summarizing features, describing API parameters, or writing instructions.", + "limitations": "Does not generate images or complex layouts. Does not perform advanced markdown conversion beyond basic emphasis and indentation. Not suitable for creating full multi-section documents in one call.", + "examples": [ + "Create a paragraph describing a API function's purpose with a bold heading.", + "Generate an indented paragraph explaining a nested bullet point item.", + "Create an italicized paragraph with no heading and custom line breaks." + ] + }, + "tags": [ + "documentation", + "paragraph", + "formatting", + "text-generation", + "markdown", + "authoring" + ], + "examples": [ + { + "inputJson": "{\"content\":\"This API function retrieves user profile data from the server.\",\"heading\":\"Function Overview\",\"emphasis\":\"bold\",\"indentationLevel\":0,\"addLineBreaks\":true}", + "description": "Creates a bold heading followed by the paragraph explaining an API function." + }, + { + "inputJson": "{\"content\":\"Supports optional query parameters to filter results.\",\"heading\":\"\",\"emphasis\":\"none\",\"indentationLevel\":2,\"addLineBreaks\":false}", + "description": "Creates an indented paragraph without a heading or additional line breaks." + }, + { + "inputJson": "{\"content\":\"Ensure all required fields are completed before submission.\",\"heading\":\"Note\",\"emphasis\":\"italic\",\"indentationLevel\":1,\"addLineBreaks\":true}", + "description": "Creates a paragraph with an italicized 'Note' heading and line breaks for clarity." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "documentation-tools.createAnomaly", + "description": "Analyzes documentation usage data and metadata to create an anomaly report highlighting unusual trends or issues, such as sudden drops in access, editing spikes, or content discrepancies. Accepts logs, user activity data, and document metadata; processes to detect anomalies; outputs a structured report detailing anomaly type, severity, affected documents, and timeframes.", + "category": "documentation-tools", + "parameters": [ + { + "name": "documentationLogs", + "type": "array", + "description": "Array of log entries capturing user access and edits to documentation items.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Metadata about documents including document IDs, authors, last updated timestamps, and categories.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "object", + "description": "Time range (start and end ISO 8601 timestamps) to analyze for anomalies.", + "required": false, + "defaultValue": "{\"start\":\"\",\"end\":\"\"}" + }, + { + "name": "anomalyThreshold", + "type": "number", + "description": "Numeric threshold specifying sensitivity level for flagging anomalies (e.g., z-score or percentage change).", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include suggested actions or fixes in the anomaly report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An anomaly report object containing detected anomaly details including anomaly type, affected documents, severity score, timestamps, and optional recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing documentation usage or editing patterns to identify unusual behaviors or issues needing attention, such as sudden drops or spikes in access or updates, content inconsistencies, or potential user engagement problems. Helpful for maintaining documentation quality and reliability.", + "limitations": "Cannot detect anomalies without sufficient or relevant input data. Does not automatically fix anomalies; it only reports potential issues for human review. Does not interpret content meaning beyond metadata and usage patterns.", + "examples": [ + "Detect sudden drops in documentation access over the past month.", + "Find documents with unusual editing activity in the last week.", + "Generate a report highlighting inconsistent metadata entries suggesting anomalies in document organization." + ] + }, + "tags": [ + "documentation", + "anomaly-detection", + "analytics", + "usage-patterns", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"documentationLogs\":[{\"docId\":\"123\",\"userId\":\"userA\",\"action\":\"view\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"docId\":\"123\",\"userId\":\"userB\",\"action\":\"edit\",\"timestamp\":\"2024-05-01T10:05:00Z\"},{\"docId\":\"456\",\"userId\":\"userC\",\"action\":\"view\",\"timestamp\":\"2024-05-01T11:00:00Z\"}],\"metadata\":{\"123\":{\"author\":\"Alice\",\"lastUpdated\":\"2024-04-30T09:00:00Z\",\"category\":\"API\"},\"456\":{\"author\":\"Bob\",\"lastUpdated\":\"2024-04-25T07:00:00Z\",\"category\":\"Guide\"}},\"timeWindow\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-02T00:00:00Z\"},\"anomalyThreshold\":2.5,\"includeRecommendations\":true}", + "description": "Analyze the usage and edits of documentation on May 1st to detect anomalies with moderate sensitivity and include recommendations." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "documentation-tools.createEvent", + "description": "Creates a detailed analytics event documentation entry based on input parameters such as event name, description, properties, and category. It processes these inputs to generate a standardized event documentation snippet suitable for inclusion in project docs or analytics repositories.", + "category": "documentation-tools", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The unique name of the analytics event to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDescription", + "type": "string", + "description": "A clear, concise description explaining the purpose and context of the event.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventProperties", + "type": "object", + "description": "An object representing key-value pairs where keys are property names and values describe the purpose or type of the property.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "eventCategory", + "type": "string", + "description": "The category under which this event falls, e.g., user-interaction, system, error, etc.", + "required": false, + "defaultValue": "" + }, + { + "name": "isDeprecated", + "type": "boolean", + "description": "Flag indicating whether this event is deprecated and should no longer be used.", + "required": false, + "defaultValue": "false" + }, + { + "name": "versionIntroduced", + "type": "string", + "description": "The version number or date when this event was introduced into the system.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted event documentation snippet including all provided details structured for easy inclusion in docs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or update documentation entries for analytics events. For example, after identifying a new event in the system or when creating consistent documentation from raw event definitions. It helps maintain a standardized format across docs.", + "limitations": "This tool does not validate if the event actually exists in the analytics system or capture real-time event data; it only generates the documentation snippet based on provided input.", + "examples": [ + "Create documentation for a 'user_signup' event with description and properties.", + "Update documentation to mark an event as deprecated.", + "Generate event docs specifying category and version." + ] + }, + "tags": [ + "documentation", + "analytics", + "event", + "create", + "documentation generation", + "analytics event" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"user_login\",\"eventDescription\":\"Triggered when a user successfully logs in.\",\"eventProperties\":{\"method\":\"login method used, e.g., email, google, facebook\",\"timestamp\":\"ISO 8601 formatted login time\"},\"eventCategory\":\"user-interaction\",\"isDeprecated\":false,\"versionIntroduced\":\"1.0.0\"}", + "description": "Generate documentation for a user login event with properties, category, and version introduced." + }, + { + "inputJson": "{\"eventName\":\"payment_failure\",\"eventDescription\":\"Occurs when a payment attempt is declined or fails.\",\"eventProperties\":{\"errorCode\":\"Error code returned by payment gateway\",\"amount\":\"Transaction amount\"},\"eventCategory\":\"system\",\"isDeprecated\":false,\"versionIntroduced\":\"2.3.1\"}", + "description": "Document a system event related to payment failures with its properties." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "documentation-tools.createText", + "description": "Creates custom textual content based on a prompt and optional style parameters. Accepts a topic or prompt along with configurable tone and length preferences, then generates a coherent, contextually relevant text output suitable for documentation, articles, or summaries.", + "category": "documentation-tools", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "The main topic, idea, or prompt based on which the text content will be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the text (e.g., formal, casual, technical).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the generated text in sentences.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include illustrative examples in the generated text when applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated textual content as a string under the key 'text'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate explanatory or descriptive textual content for documentation, articles, summaries, or introduction sections based on a clear prompt. It helps create consistent, styled text snippets that can integrate directly into technical or non-technical documents.", + "limitations": "The tool cannot generate precise code snippets or guarantee domain-specific accuracy without proper prompts; it also does not handle document formatting or complex structured content beyond plain text.", + "examples": [ + "Generate a formal introduction text about REST APIs.", + "Create a casual overview explaining blockchain technology.", + "Provide a technical summary on quantum computing concepts." + ] + }, + "tags": [ + "text-generation", + "documentation", + "content-creation", + "writing", + "tool" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"Explain the concept of cloud computing.\",\"tone\":\"formal\",\"length\":7,\"includeExamples\":true}", + "description": "Generate a formal, moderate length explanatory text about cloud computing including examples." + }, + { + "inputJson": "{\"prompt\":\"Blockchain basics for beginners.\",\"tone\":\"casual\",\"length\":5,\"includeExamples\":false}", + "description": "Create a casual and brief overview of blockchain basics for novices." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "documentation-tools.createTrend", + "description": "Generates a detailed documentation trend report by analyzing time-series data of changes made to documentation files. Accepts inputs such as file change logs or version histories, processes the frequency and types of updates over specified periods, and produces an output report summarizing documentation activity trends including peaks, lulls, and patterns.", + "category": "documentation-tools", + "parameters": [ + { + "name": "logData", + "type": "array", + "description": "Array of documentation change events, each with timestamp, file name, change type, and author information. Required for trend computation.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the trend analysis period in ISO 8601 format (e.g., '2023-01-01').", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the trend analysis period in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Criteria for grouping trend data, e.g., 'file', 'author', or 'changeType'. Determines aggregation focus.", + "required": false, + "defaultValue": "date" + }, + { + "name": "timeInterval", + "type": "string", + "description": "Time interval for trend aggregation such as daily, weekly, or monthly. Defaults to daily.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a textual summary of key trends and observations in the report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured trend report including aggregated counts of documentation changes over time intervals, trend graphs data points, and optionally a textual summary of insights." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze and summarize activity patterns in documentation maintenance, such as identifying periods of high update frequency, detecting contributors' activity over time, or understanding how documentation evolves. Useful for project managers and documentation leads to monitor and improve documentation workflows.", + "limitations": "The tool relies on accurate and well-structured input change logs. It cannot infer causation or qualitatively assess the value of documentation changes; it only analyzes temporal and categorical trends.", + "examples": [ + "Generate a weekly trend report of documentation updates for the last quarter.", + "Analyze documentation changes grouped by author to find the most active contributors in the past month.", + "Provide a monthly summary of types of documentation changes made over the past year." + ] + }, + "tags": [ + "documentation", + "analytics", + "trend", + "reporting", + "activity", + "maintenance" + ], + "examples": [ + { + "inputJson": "{\"logData\":[{\"timestamp\":\"2024-01-05T10:15:00Z\",\"fileName\":\"README.md\",\"changeType\":\"edit\",\"author\":\"alice\"},{\"timestamp\":\"2024-01-06T11:20:00Z\",\"fileName\":\"api.md\",\"changeType\":\"add\",\"author\":\"bob\"},{\"timestamp\":\"2024-01-07T09:00:00Z\",\"fileName\":\"README.md\",\"changeType\":\"edit\",\"author\":\"alice\"}],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"groupBy\":\"file\",\"timeInterval\":\"weekly\",\"includeSummary\":true}", + "description": "Analyze weekly documentation update trends grouped by file for January 2024, including a summary." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "documentation-tools.createConversion", + "description": "Converts documentation files from one format to another, supporting various input formats such as Markdown, reStructuredText, and HTML, and producing output in formats like PDF, HTML, or Markdown. It processes the input content, applies formatting and style conversions, and returns the converted documentation ready for publishing or integration.", + "category": "documentation-tools", + "parameters": [ + { + "name": "inputContent", + "type": "string", + "description": "The documentation content to be converted, provided as a string in the source format.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "The format of the input documentation content (e.g., 'markdown', 'rst', 'html').", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format for the converted documentation (e.g., 'pdf', 'html', 'markdown').", + "required": true, + "defaultValue": "" + }, + { + "name": "options", + "type": "object", + "description": "Optional conversion settings such as styling preferences, page size for PDFs, or HTML template selections.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the converted documentation content as a string and metadata such as output format and conversion status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert documentation between formats to enable integration, publishing, or editing workflows, such as transforming Markdown docs to HTML for web display or generating PDF manuals from source files.", + "limitations": "This tool does not perform content validation or correction beyond formatting conversion. It may not fully support proprietary formats or very complex markup features.", + "examples": [ + "Convert a Markdown README into a PDF manual.", + "Transform reStructuredText documentation to HTML for web publishing.", + "Convert HTML help files back into Markdown for source control editing." + ] + }, + "tags": [ + "documentation", + "conversion", + "markdown", + "pdf", + "html", + "formatting", + "docs", + "format-conversion" + ], + "examples": [ + { + "inputJson": "{\"inputContent\":\"# Sample Documentation\\nThis is a sample doc.\",\"inputFormat\":\"markdown\",\"outputFormat\":\"pdf\",\"options\":{\"pageSize\":\"A4\"}}", + "description": "Convert a Markdown file with a sample header to a PDF document formatted for A4 page size." + }, + { + "inputJson": "{\"inputContent\":\"

Title

Paragraph.

\",\"inputFormat\":\"html\",\"outputFormat\":\"markdown\",\"options\":{}}", + "description": "Transform a simple HTML snippet into Markdown format for easier source editing." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "documentation-tools.createSession", + "description": "Creates a detailed documentation session record to analyze user interaction with documentation content. Accepts input parameters such as sessionId, userId, startTime, endTime, visitedPages, and actionsPerformed. Processes these inputs to compile a session summary including duration, pages viewed, and key user actions. Outputs a structured session object useful for documentation analytics and improvement.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier for the documentation session.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier of the user or session originator.", + "required": false, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp when the session started.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 timestamp when the session ended.", + "required": true, + "defaultValue": "" + }, + { + "name": "visitedPages", + "type": "array", + "description": "List of documentation page URLs or IDs the user visited during the session.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "actionsPerformed", + "type": "array", + "description": "Array of objects recording user interactions such as clicks, searches, and scrolls with timestamps.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deviceType", + "type": "string", + "description": "Type of device used in the session, e.g., 'desktop', 'mobile'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the session with keys: sessionId, userId, durationSeconds, totalPagesVisited, actionsCount, and deviceType if provided." + }, + "aiAgent": { + "useCase": "Use this tool when generating structured records of individual documentation usage sessions for analytics or improvement purposes. It helps in tracking user engagement duration, interactions, and navigation patterns within documentation platforms.", + "limitations": "Does not track real-time user behavior or integrate with external analytics platforms automatically. Requires accurate timestamp and interaction data as input.", + "examples": [ + "Create a new documentation session record for user 123 with visited pages and actions between given start and end times.", + "Generate a session summary object using session metadata and user interactions to analyze documentation usage.", + "Record a documentation usage session for an anonymous user on a mobile device including pages visited and actions performed." + ] + }, + "tags": [ + "documentation", + "analytics", + "session", + "user-tracking", + "interaction", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess-001\",\"userId\":\"user-123\",\"startTime\":\"2024-06-01T10:00:00Z\",\"endTime\":\"2024-06-01T10:15:00Z\",\"visitedPages\":[\"intro.html\",\"setup.html\",\"api-reference.html\"],\"actionsPerformed\":[{\"type\":\"click\",\"target\":\"btn-next\",\"timestamp\":\"2024-06-01T10:05:00Z\"},{\"type\":\"search\",\"query\":\"installation\",\"timestamp\":\"2024-06-01T10:06:30Z\"}],\"deviceType\":\"desktop\"}", + "description": "Record a 15-minute desktop documentation session for user-123 with pages visited and user actions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "documentation-tools.createDashboard", + "description": "Creates an interactive analytics dashboard for documentation projects by accepting data sources, metrics, and visualization preferences. It processes the input to generate a customizable dashboard output, helping technical writers and project managers monitor documentation progress, quality, and usage.", + "category": "documentation-tools", + "parameters": [ + { + "name": "projectId", + "type": "string", + "description": "Unique identifier of the documentation project to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source objects containing metrics and usage data relevant to the documentation", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Array of metric names or identifiers to display on the dashboard (e.g., pageViews, reviewStatus)", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "Preferred visualization types for each metric, such as lineChart, barChart, pieChart", + "required": false, + "defaultValue": "[\"barChart\"]" + }, + { + "name": "refreshIntervalMinutes", + "type": "number", + "description": "Frequency in minutes to refresh data on the dashboard", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeUserFeedback", + "type": "boolean", + "description": "Whether to incorporate user feedback and comments as part of dashboard analytics", + "required": false, + "defaultValue": "false" + }, + { + "name": "theme", + "type": "string", + "description": "Display theme for the dashboard (e.g., light, dark)", + "required": false, + "defaultValue": "light" + } + ], + "returns": { + "type": "object", + "description": "An object containing a fully configured dashboard instance with visual widgets, data bindings, and metadata for rendering in user interface" + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate or update a comprehensive analytics dashboard for documentation projects to monitor key performance indicators such as usage stats, review progress, and user feedback trends. Ideal for technical program managers or documentation leads who require real-time insights.", + "limitations": "This tool does not collect raw data itself; it requires pre-aggregated data sources. It cannot generate dashboards without valid input metrics or data, nor does it handle user interface rendering beyond the dashboard configuration object.", + "examples": [ + "Create a dashboard to monitor the documentation project's page views and edit status with bar charts refreshing every hour.", + "Generate a dark-themed dashboard for documentation review metrics and user feedback summaries with line charts and pie charts.", + "Build a dashboard showing documentation usage statistics with real-time data refresh every 10 minutes and include user comments analytics." + ] + }, + "tags": [ + "documentation", + "dashboard", + "analytics", + "visualization", + "project-management" + ], + "examples": [ + { + "inputJson": "{\"projectId\":\"doc123\",\"dataSources\":[{\"name\":\"usageStats\",\"type\":\"api\"},{\"name\":\"reviewStatus\",\"type\":\"csv\"}],\"metrics\":[\"pageViews\",\"pendingReviews\"],\"visualizationTypes\":[\"barChart\",\"pieChart\"],\"refreshIntervalMinutes\":30,\"includeUserFeedback\":true,\"theme\":\"dark\"}", + "description": "Create a dark-themed dashboard showing page views and review status using bar and pie charts with 30-minute data refresh and user feedback included." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "documentation-tools.createKPI", + "description": "Creates a detailed Key Performance Indicator (KPI) document from provided raw analytics data. Accepts metric names, raw data samples, target values, and descriptions to generate structured KPI documentation including definitions, calculation methods, current vs target performance, and recommendations for focus areas. Outputs a formatted JSON object suitable for inclusion in project documentation or dashboards.", + "category": "documentation-tools", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The name of the KPI to create documentation for.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "An array of metric identifiers or names that compose this KPI.", + "required": true, + "defaultValue": "" + }, + { + "name": "rawData", + "type": "object", + "description": "Raw data points or statistics associated with each metric (e.g., historical values, samples).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetValues", + "type": "object", + "description": "Target or goal values for each metric to measure success.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description outlining what this KPI measures and its business context.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeframe", + "type": "string", + "description": "Time period over which the KPI is measured (e.g., daily, monthly).", + "required": false, + "defaultValue": "monthly" + } + ], + "returns": { + "type": "object", + "description": "A structured KPI documentation object including KPI name, metrics, calculation formula, current values, targets, descriptions, and recommendations." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when needing to generate clear, formal documentation for KPIs based on raw metrics data and targets within analytics or business contexts. Ideal for summarizing analytic results into standardized format for reports or dashboards.", + "limitations": "This tool creates documentation but does not conduct real-time data analysis or metric calculation from unprocessed data streams. It relies on preprocessed inputs and does not generate visualization charts.", + "examples": [ + "Create a KPI documentation for customer churn rate using monthly retention data and targets.", + "Generate KPI document for sales conversion incorporating multiple metrics with target goals.", + "Summarize website traffic performance KPI with description and timeframe for quarterly review." + ] + }, + "tags": [ + "documentation", + "KPI", + "analytics", + "reporting", + "metrics", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"Monthly Active Users\",\"metrics\":[\"userLogins\",\"appSessions\"],\"rawData\":{\"userLogins\":[1200,1300,1250],\"appSessions\":[3500,3600,3700]},\"targetValues\":{\"userLogins\":1500,\"appSessions\":4000},\"description\":\"Measures the count of unique users actively using the platform each month.\",\"timeframe\":\"monthly\"}", + "description": "Generate KPI documentation for Monthly Active Users using login and session data with targets." + }, + { + "inputJson": "{\"kpiName\":\"Customer Satisfaction Score\",\"metrics\":[\"surveyResponses\"],\"rawData\":{\"surveyResponses\":[4.2,4.4,4.5]},\"targetValues\":{\"surveyResponses\":4.7},\"description\":\"Tracks average customer satisfaction rating from surveys.\",\"timeframe\":\"quarterly\"}", + "description": "Create KPI documentation summarizing customer satisfaction scores over the quarter." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "documentation-tools.createMetric", + "description": "Creates a structured documentation metric that quantifies specific analytics relevant to documentation quality or usage. Accepts parameters defining the metric name, description, calculation formula, data sources, and evaluation period. Outputs a metric object suitable for integration into documentation analytics dashboards or reports.", + "category": "documentation-tools", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The unique name identifying the metric (e.g., 'ReadabilityScore').", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed explanation of what the metric measures and its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "calculationFormula", + "type": "string", + "description": "A formula or algorithm description defining how the metric is calculated from source data.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source identifiers or types used to compute the metric (e.g., 'pageViews', 'editCount').", + "required": true, + "defaultValue": "[]" + }, + { + "name": "evaluationPeriodDays", + "type": "number", + "description": "The time period in days over which the metric is calculated.", + "required": false, + "defaultValue": "30" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method used to aggregate raw data (e.g., 'average', 'sum', 'median').", + "required": false, + "defaultValue": "average" + }, + { + "name": "targetValue", + "type": "number", + "description": "Optional target or benchmark value to compare metric against.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the fully defined documentation metric including all inputs and a unique identifier." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to formalize a new analytics metric for documentation, such as tracking readability, update frequency, user engagement, or error rates. It is ideal for generating metrics that feed into dashboards or reporting systems to assess documentation health or impact.", + "limitations": "This tool does not perform actual metric computation or data retrieval; it only defines metrics abstractly. Calculation and data processing must be handled externally.", + "examples": [ + "Create a 'ReadabilityScore' metric using a specific formula based on document text analysis data over the last 90 days.", + "Define an 'EditFrequency' metric aggregating edit counts from documentation sources using sum aggregation over 30 days.", + "Setup a 'UserEngagement' metric combining page views and time spent to gauge engagement trends." + ] + }, + "tags": [ + "documentation", + "metrics", + "analytics", + "quality-assessment", + "reporting", + "documentation-tools" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"ReadabilityScore\",\"description\":\"Measures the average readability score of documentation pages using the Flesch-Kincaid formula.\",\"calculationFormula\":\"average(FleschKincaidScore)\",\"dataSources\":[\"documentTextAnalysis\"],\"evaluationPeriodDays\":90,\"aggregationMethod\":\"average\",\"targetValue\":60}", + "description": "Defines a readability score metric to track over the last 90 days using an average aggregation." + }, + { + "inputJson": "{\"metricName\":\"EditFrequency\",\"description\":\"Counts the total number of edits made to documentation within a specified period.\",\"calculationFormula\":\"sum(EditCount)\",\"dataSources\":[\"editLogs\"],\"evaluationPeriodDays\":30,\"aggregationMethod\":\"sum\"}", + "description": "Defines an edit frequency metric summing all edits in the past 30 days." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "documentation-tools.createQueue", + "description": "Creates and configures a documentation-related processing queue that handles tasks such as document generation, update notifications, or review workflows. Accepts parameters for queue name, task types, concurrency limits, and retention policies, and outputs queue metadata and status on creation.", + "category": "documentation-tools", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifier for the documentation queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "taskTypes", + "type": "array", + "description": "List of task types that this queue will process, e.g., 'generate-pdf', 'send-review-notification'.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "maxConcurrentTasks", + "type": "number", + "description": "Maximum number of tasks that can be processed concurrently in this queue.", + "required": false, + "defaultValue": "5" + }, + { + "name": "retentionDays", + "type": "number", + "description": "Number of days to retain completed tasks in the queue before deletion.", + "required": false, + "defaultValue": "30" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the queue tasks: 'low', 'medium', or 'high'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "autoStart", + "type": "boolean", + "description": "Whether the queue should start processing tasks immediately after creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created queue's identifier, name, configuration details, creation timestamp, and current status (e.g., 'active', 'paused')." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a specialized task queue to manage documentation-related workflows such as generating outputs, triggering notifications, or coordinating reviews. It enables controlled processing of asynchronous documentation tasks with configurable concurrency and retention.", + "limitations": "This tool creates and configures queues but does not execute individual tasks or handle task logic beyond basic queue management.", + "examples": [ + "Create a queue named 'DocGenQueue' for 'generate-pdf' and 'generate-html' tasks with concurrency of 10.", + "Create a high priority queue to send review notifications, which starts immediately.", + "Set up a low priority queue for archiving old documentation tasks with retention of 90 days." + ] + }, + "tags": [ + "documentation", + "queue", + "infrastructure", + "task-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"DocGenQueue\",\"taskTypes\":[\"generate-pdf\",\"generate-html\"],\"maxConcurrentTasks\":10,\"retentionDays\":30,\"priority\":\"medium\",\"autoStart\":true}", + "description": "Create a documentation generation queue for PDF and HTML tasks with concurrency 10." + }, + { + "inputJson": "{\"queueName\":\"ReviewNotificationQueue\",\"taskTypes\":[\"send-review-notification\"],\"maxConcurrentTasks\":5,\"priority\":\"high\",\"autoStart\":true}", + "description": "High priority queue to handle review notification sending, starts immediately." + }, + { + "inputJson": "{\"queueName\":\"ArchiveQueue\",\"taskTypes\":[\"archive-documents\"],\"maxConcurrentTasks\":2,\"retentionDays\":90,\"priority\":\"low\",\"autoStart\":false}", + "description": "Low priority queue for archiving with task retention of 90 days, does not auto start." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "documentation-tools.createCache", + "description": "Creates and manages a cache for documentation infrastructure to improve load times and reduce server requests. Accepts configuration parameters specifying cache type, expiration policy, and storage limits, and outputs a cache instance identifier and status confirmation.", + "category": "documentation-tools", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "The type of cache to create, e.g., \"memory\", \"filesystem\", or \"redis\".", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Time in seconds after which cached items expire. Use 0 for no expiration.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "maxSizeMB", + "type": "number", + "description": "Maximum cache size in megabytes before eviction policies trigger.", + "required": false, + "defaultValue": "100" + }, + { + "name": "persistAcrossSessions", + "type": "boolean", + "description": "Whether the cache should persist data across application restarts.", + "required": false, + "defaultValue": "false" + }, + { + "name": "storagePath", + "type": "string", + "description": "Filesystem path to use when cacheType is filesystem. Ignored otherwise.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object including the cacheId string and status indicating successful creation or error details." + }, + "aiAgent": { + "useCase": "Use this tool when setting up or refreshing documentation systems that benefit from faster content delivery by caching frequently accessed data or generated pages. It is especially suited for cases where cache configuration is required for different environments or storage backends.", + "limitations": "Does not manage the cached content directly or invalidate cache manually; relies on configured expiration and size parameters only. Does not support complex distributed cache synchronization.", + "examples": [ + "Create an in-memory cache with 2 hour expiration for documentation assets.", + "Create a filesystem cache at /var/cache/docs that persists across restarts with 500MB limit.", + "Initialize a Redis cache with no expiration and default size limits." + ] + }, + "tags": [ + "documentation", + "cache", + "infrastructure", + "performance", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"memory\",\"expirationSeconds\":7200,\"maxSizeMB\":200,\"persistAcrossSessions\":false}", + "description": "Create an in-memory cache with a 2-hour expiration and 200MB max size" + }, + { + "inputJson": "{\"cacheType\":\"filesystem\",\"storagePath\":\"/var/cache/docs\",\"expirationSeconds\":0,\"persistAcrossSessions\":true}", + "description": "Create a persistent filesystem cache with no expiration" + }, + { + "inputJson": "{\"cacheType\":\"redis\",\"expirationSeconds\":0}", + "description": "Create a Redis cache with no expiration and default size limits" + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "documentation-tools.createServer", + "description": "Creates a documentation server instance to host and serve documentation files. Accepts configuration such as content directory, server port, and optional SSL certificates. Processes configuration to initialize and start a local or remote server that serves the documentation site with live reload support. Outputs server status, URL, and access credentials if applicable.", + "category": "documentation-tools", + "parameters": [ + { + "name": "contentDirectory", + "type": "string", + "description": "Path to the directory containing the documentation files to be served.", + "required": true, + "defaultValue": "" + }, + { + "name": "port", + "type": "number", + "description": "Port number on which the documentation server will listen for incoming requests.", + "required": false, + "defaultValue": "8080" + }, + { + "name": "useHttps", + "type": "boolean", + "description": "Flag indicating whether to use HTTPS protocol for the server.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sslCertificatePath", + "type": "string", + "description": "File path to the SSL certificate. Required if useHttps is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "sslKeyPath", + "type": "string", + "description": "File path to the SSL private key. Required if useHttps is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableLiveReload", + "type": "boolean", + "description": "Enable live reload feature to refresh documentation pages automatically upon changes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "host", + "type": "string", + "description": "Hostname or IP address to bind the server to. Default is localhost.", + "required": false, + "defaultValue": "localhost" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server's state including the URL, port, protocol, and status message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to set up a local or remote server environment to serve and preview documentation files, enabling easy access and collaboration. Ideal for tasks around documentation hosting, live previews during editing, or providing documentation access to teams.", + "limitations": "This tool does not generate documentation content but only hosts existing documentation. It cannot replace complex documentation platforms or integrate advanced backend features like user authentication beyond basic access.", + "examples": [ + "Create a local documentation server serving files from './docs' on default port.", + "Set up an HTTPS documentation server on port 443 with specific SSL certificates.", + "Enable live reload while serving documentation from a custom host and port." + ] + }, + "tags": [ + "documentation", + "server", + "hosting", + "infrastructure", + "live reload" + ], + "examples": [ + { + "inputJson": "{\"contentDirectory\":\"./docs\",\"port\":3000,\"useHttps\":false,\"enableLiveReload\":true}", + "description": "Start a local documentation server hosting files from the './docs' directory on port 3000 with live reload enabled." + }, + { + "inputJson": "{\"contentDirectory\":\"/var/www/docs\",\"port\":443,\"useHttps\":true,\"sslCertificatePath\":\"/etc/ssl/certs/cert.pem\",\"sslKeyPath\":\"/etc/ssl/private/key.pem\",\"enableLiveReload\":false}", + "description": "Create an HTTPS documentation server on standard port 443 with SSL certificates and no live reload, serving documentation from a secured directory." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "documentation-tools.createService", + "description": "Creates structured service documentation by accepting service metadata, API endpoint details, and configuration options. Processes the inputs to generate comprehensive, formatted documentation suitable for developer onboarding and maintenance, outputting documentation in JSON format including summaries, endpoints, and usage instructions.", + "category": "documentation-tools", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "Name of the service to document", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceDescription", + "type": "string", + "description": "Brief description of the service's purpose and functionality", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version identifier for the service documentation", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "apiEndpoints", + "type": "array", + "description": "List of API endpoints with details such as path, method, parameters, and responses", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Indicates if the service requires authentication", + "required": false, + "defaultValue": "false" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact details for the service maintainer, includes name and email", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON documentation object containing service metadata, endpoints, usage instructions, and contact information" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate accurate and developer-friendly documentation for a newly defined or updated service, including its API endpoints, versioning, and contact information. Helpful for automating documentation creation in software infrastructure projects.", + "limitations": "This tool does not generate code implementations or live API mocks; it produces only static documentation based on provided inputs.", + "examples": [ + "Create documentation for a payment processing service including endpoints and authentication requirements.", + "Generate service docs for an internal user management API with versioning and maintainer contact.", + "Document a microservice including its REST API endpoints with detailed parameter descriptions." + ] + }, + "tags": [ + "documentation", + "service", + "API", + "create", + "infrastructure", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"UserManagement\",\"serviceDescription\":\"Handles user accounts and authentication.\",\"version\":\"2.1.0\",\"apiEndpoints\":[{\"path\":\"/users\",\"method\":\"GET\",\"description\":\"Retrieve list of users\",\"parameters\":[],\"responses\":[{\"code\":200,\"description\":\"List of users returned\"}]}],\"authenticationRequired\":true,\"contactInfo\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\"}}", + "description": "Generate documentation for the UserManagement service version 2.1.0 with one GET endpoint and requiring authentication." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "documentation-tools.createDatabase", + "description": "Creates a structured database schema documentation based on provided database details like tables, columns, data types, constraints, and relationships. It processes the input schema definition and outputs a clear, human-readable documentation report describing the database structure and its elements.", + "category": "documentation-tools", + "parameters": [ + { + "name": "databaseName", + "type": "string", + "description": "The name of the database to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "tables", + "type": "array", + "description": "An array of table objects representing the database tables; each includes tableName, columns, and optional relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRelationships", + "type": "boolean", + "description": "Whether to include relationship descriptions (foreign keys, associations) in the documentation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated documentation, e.g., 'markdown', 'html', or 'plaintext'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeIndexes", + "type": "boolean", + "description": "Whether to include index information in the documentation for each table, if provided.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the documentation content as a string in the requested format and metadata about the documentation generated." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear and comprehensive documentation for a database schema based on structured input describing tables, columns, data types, constraints, and relationships. It is useful in software projects to produce technical documentation for developers or stakeholders.", + "limitations": "This tool does not connect to live databases to extract schema directly; it relies on structured input describing the database schema. Complex database features like stored procedures or triggers are not documented.", + "examples": [ + "Generate markdown documentation for a database describing tables and their columns for a CRM system.", + "Create HTML documentation including indexes and foreign key relationships for an ecommerce database schema." + ] + }, + "tags": [ + "documentation", + "database", + "schema", + "generate", + "infrastructure", + "report" + ], + "examples": [ + { + "inputJson": "{\"databaseName\":\"CRM System\",\"tables\":[{\"tableName\":\"Customers\",\"columns\":[{\"name\":\"CustomerID\",\"type\":\"int\",\"primaryKey\":true},{\"name\":\"FirstName\",\"type\":\"varchar(50)\"},{\"name\":\"LastName\",\"type\":\"varchar(50)\"},{\"name\":\"Email\",\"type\":\"varchar(100)\"}]},{\"tableName\":\"Orders\",\"columns\":[{\"name\":\"OrderID\",\"type\":\"int\",\"primaryKey\":true},{\"name\":\"CustomerID\",\"type\":\"int\",\"foreignKey\":{\"references\":\"Customers\",\"column\":\"CustomerID\"}},{\"name\":\"OrderDate\",\"type\":\"datetime\"}]}],\"includeRelationships\":true,\"outputFormat\":\"markdown\",\"includeIndexes\":false}", + "description": "Generate markdown format documentation describing two tables with columns and foreign key relationships for a CRM database." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "documentation-tools.createCluster", + "description": "Creates a documentation cluster by organizing multiple related documents into a unified, searchable, and linked structure. Accepts metadata and a list of document files or URLs as input. Processes these inputs by indexing content, establishing relationships, and generating a cluster manifest that can be used in documentation systems.", + "category": "documentation-tools", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The unique name of the documentation cluster to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "documents", + "type": "array", + "description": "An array of document objects or URLs to be included in the cluster. Each document should have a title and content or a URL to the content.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata describing the cluster, such as author, version, tags, or description.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the cluster manifest, e.g., JSON or YAML.", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "enableSearchIndex", + "type": "boolean", + "description": "Flag to enable creation of a full-text search index for the cluster documents.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a cluster manifest object that includes the cluster name, metadata, list of documents with metadata, and optionally a search index reference. This manifest can be used to integrate the cluster into documentation systems." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create an organized grouping of documentation files to facilitate unified navigation, search, and management within larger documentation platforms or websites. Ideal for assembling new manuals, API doc sets, or knowledge bases from disparate documents.", + "limitations": "This tool does not perform content translation or generate content; it only organizes and indexes existing documentation. It also does not deploy the cluster to any hosting or documentation platform.", + "examples": [ + "Create a documentation cluster named 'API v2 Docs' from a set of REST API markdown files with relevant metadata.", + "Generate a searchable cluster manifest for user guides and troubleshooting docs with descriptive tags for later integration into a help center.", + "Assemble a cluster from URLs of hosted documentation pages, enabling full-text indexed search across them." + ] + }, + "tags": [ + "documentation", + "cluster", + "organization", + "indexing", + "search", + "documentation-management" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"Developer Guides\",\"documents\":[{\"title\":\"Getting Started\",\"content\":\"# Welcome to the Developer Guides...\"},{\"title\":\"API Reference\",\"url\":\"https://docs.example.com/api\"}],\"metadata\":{\"author\":\"DocTeam\",\"version\":\"1.0\",\"tags\":[\"developer\",\"api\"]},\"outputFormat\":\"JSON\",\"enableSearchIndex\":true}", + "description": "Create a developer guides cluster including a mix of inline content and external URL documents with metadata and search index enabled." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "documentation-tools.createInstance", + "description": "Creates a documentation instance for an infrastructure component by accepting metadata and configuration inputs, generating a structured documentation object that can be integrated into documentation systems. It processes input parameters such as instance name, type, description, and related links, producing a JSON object representing the documentation instance.", + "category": "documentation-tools", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "The unique name identifier for the documentation instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "Type of infrastructure instance (e.g., server, database, container).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the infrastructure instance's purpose and characteristics.", + "required": false, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version identifier of the instance if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "relatedLinks", + "type": "array", + "description": "Array of URLs or references related to the instance documentation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "createdBy", + "type": "string", + "description": "Name or identifier of the person or system creating the documentation instance.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured JSON object representing the documentation instance, including all provided details and metadata with a generated unique ID and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a standardized documentation entry for an infrastructure component, ensuring consistent format and metadata inclusion for further processing or publication.", + "limitations": "This tool only creates the documentation representation; it does not publish, validate external links, or integrate with external documentation platforms automatically.", + "examples": [ + "Create a documentation instance for a new server named 'web-app-01' with description and version.", + "Generate documentation for a database instance including relevant related links.", + "Create an instance doc specifying creator information and type 'container'." + ] + }, + "tags": [ + "documentation", + "infrastructure", + "create", + "metadata", + "instance" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"web-app-01\",\"instanceType\":\"server\",\"description\":\"Primary web application server handling client requests.\",\"version\":\"v2.5.1\",\"relatedLinks\":[\"https://intranet/docs/web-app\"],\"createdBy\":\"admin\"}", + "description": "Create a new server documentation instance with description, version, and a related link." + }, + { + "inputJson": "{\"instanceName\":\"db-prod\",\"instanceType\":\"database\",\"description\":\"Production database for customer data storage.\",\"relatedLinks\":[\"https://intranet/docs/db-schema\",\"https://monitoring.company.com/db-prod\"],\"createdBy\":\"db-admin\"}", + "description": "Create documentation for a production database including multiple related links." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "documentation-tools.createContainer", + "description": "Creates a structured documentation container, such as a manual, guide, or knowledge base section. Accepts input detailing container type, title, optional metadata, and content outline; processes this to generate an organized documentation container structure output, optionally with initial content placeholders or templates.", + "category": "documentation-tools", + "parameters": [ + { + "name": "containerType", + "type": "string", + "description": "Type of documentation container to create, e.g., manual, guide, knowledgeBase.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the documentation container.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text summarizing the container's purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value metadata entries such as authors, version, tags.", + "required": false, + "defaultValue": "" + }, + { + "name": "initialSections", + "type": "array", + "description": "Optional list of section titles or objects defining the initial structure of the container.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTemplates", + "type": "boolean", + "description": "Whether to include default content templates or placeholders inside sections.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created documentation container, including ID, type, title, optional metadata, and structured sections with content placeholders if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to programmatically initialize a structured documentation container that forms the basis for further filling or expansion, such as setting up manuals, guides, or knowledge bases with an organized section layout. It helps automate the creation of standard documentation frameworks based on input specifications.", + "limitations": "This tool does not fill content of sections or generate detailed documentation text; it only creates the container structure and optionally includes predefined templates or placeholders.", + "examples": [ + "Create a user manual container titled 'Product X Manual' with standard setup and troubleshooting sections.", + "Generate a knowledge base section container for 'API Reference' including version and author metadata.", + "Initialize a guide container named 'Getting Started' with initial sections and include content templates." + ] + }, + "tags": [ + "documentation", + "create", + "container", + "manual", + "guide", + "knowledgeBase", + "structure", + "templates" + ], + "examples": [ + { + "inputJson": "{\"containerType\":\"manual\",\"title\":\"Product X Manual\",\"description\":\"Comprehensive manual for Product X.\",\"metadata\":{\"author\":\"Jane Doe\",\"version\":\"1.0\"},\"initialSections\":[\"Introduction\",\"Setup\",\"Usage\",\"Troubleshooting\"],\"includeTemplates\":true}", + "description": "Create a manual container with metadata and four initial sections including templates." + }, + { + "inputJson": "{\"containerType\":\"knowledgeBase\",\"title\":\"API Reference\",\"metadata\":{\"version\":\"2.1\",\"tags\":[\"API\",\"reference\"]},\"initialSections\":[{\"title\":\"Authentication\"},{\"title\":\"Endpoints\"}],\"includeTemplates\":false}", + "description": "Create a knowledge base container titled API Reference with version metadata and two sections, without templates." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "documentation-tools.createReply", + "description": "Creates a professionally formatted reply message for documentation comments or inquiries. Accepts the original comment text, key points to address, and optional tone preference. Produces a clear, concise reply text suitable for insertion in technical documentation or discussion threads.", + "category": "documentation-tools", + "parameters": [ + { + "name": "originalComment", + "type": "string", + "description": "The original comment or inquiry text to which the reply is addressed.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of key points or topics that the reply should cover or respond to.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The preferred tone of the reply, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the reply in characters to ensure conciseness.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply text ready to post or include in documentation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a well-structured and context-aware reply to questions or comments within documentation or technical discussions. It helps automate responses that address specific points raised, maintaining consistency in tone and clarity.", + "limitations": "Cannot generate replies with full contextual awareness beyond provided inputs; complex discussions with nuanced understanding may require manual review.", + "examples": [ + "Generate a formal reply addressing three key points from a review comment.", + "Create a short, casual response to a user question in documentation.", + "Produce a technical reply summarizing how an issue was resolved for a support thread." + ] + }, + "tags": [ + "documentation", + "communication", + "reply", + "automated response", + "technical writing" + ], + "examples": [ + { + "inputJson": "{\"originalComment\":\"Can you clarify how the deployment script handles rollback?\",\"keyPoints\":[\"Explain rollback mechanism\",\"Mention safety checks\",\"Timing of rollback execution\"],\"tone\":\"formal\",\"maxLength\":400}", + "description": "Generate a formal reply explaining rollback handling in a deployment script." + }, + { + "inputJson": "{\"originalComment\":\"Why is the API response slow sometimes?\",\"keyPoints\":[\"Identify potential causes\",\"Suggest monitoring solutions\"],\"tone\":\"technical\",\"maxLength\":300}", + "description": "Create a technical reply addressing API response slowness and solutions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "documentation-tools.createCertificate", + "description": "Generates a formatted security certificate document based on provided certificate details such as issuer, recipient, validity period, and purpose. Accepts structured input data, validates essential fields, and produces a digitally formatted certificate (e.g., PDF or JSON) ready for delivery or archival.", + "category": "documentation-tools", + "parameters": [ + { + "name": "issuerName", + "type": "string", + "description": "Name of the entity issuing the certificate (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "Name of the certificate recipient (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "certificateTitle", + "type": "string", + "description": "Title or type of the certificate (e.g., \"Achievement Certificate\", \"Security Compliance Certificate\").", + "required": true, + "defaultValue": "" + }, + { + "name": "issueDate", + "type": "string", + "description": "Date when the certificate is issued, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "expiryDate", + "type": "string", + "description": "Expiry date of the certificate in ISO 8601 format, if applicable; empty string if not applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "certificateId", + "type": "string", + "description": "Unique identifier or serial number for the certificate.", + "required": false, + "defaultValue": "" + }, + { + "name": "descriptionText", + "type": "string", + "description": "Optional description or details explaining the reason or achievement for the certificate.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format for the generated certificate, e.g., \"PDF\" or \"JSON\".", + "required": false, + "defaultValue": "PDF" + } + ], + "returns": { + "type": "object", + "description": "Contains the generated certificate document metadata and the content encoded as base64 or structured JSON depending on the output format. Includes certificateId, outputFormat, and content fields." + }, + "aiAgent": { + "useCase": "Use this tool when a formal certificate document needs to be created dynamically from structured data for security, compliance, or achievement purposes. It is ideal for automating certificate issuance workflows, generating consistent and valid certificate files that can be delivered to recipients or stored securely.", + "limitations": "This tool does not digitally sign the certificate with a cryptographic signature or manage certificate revocation lists. It also does not connect to external certification authorities or perform identity verification.", + "examples": [ + "Create a security compliance certificate for a cloud service provider with issuer, recipient, validity dates, and description.", + "Generate an achievement certificate for a training participant with customized title and issue date in PDF format.", + "Produce a JSON-format certificate for use in an automated validation system with an assigned unique certificate ID." + ] + }, + "tags": [ + "documentation", + "certificate", + "security", + "compliance", + "automation", + "PDF", + "JSON" + ], + "examples": [ + { + "inputJson": "{\"issuerName\":\"SecureTech Inc.\",\"recipientName\":\"Alice Johnson\",\"certificateTitle\":\"Security Compliance Certificate\",\"issueDate\":\"2024-06-01\",\"expiryDate\":\"2025-06-01\",\"certificateId\":\"SEC1001-2024\",\"descriptionText\":\"Certificate confirming compliance with ISO 27001 standards.\",\"outputFormat\":\"PDF\"}", + "description": "Generate a PDF security compliance certificate for Alice Johnson issued by SecureTech Inc." + }, + { + "inputJson": "{\"issuerName\":\"TechAcademy\",\"recipientName\":\"Bob Lee\",\"certificateTitle\":\"Completion Certificate\",\"issueDate\":\"2024-05-15\",\"expiryDate\":\"\",\"certificateId\":\"\",\"descriptionText\":\"Awarded for completing the Advanced Network Security course.\",\"outputFormat\":\"PDF\"}", + "description": "Create an achievement completion certificate in PDF format without expiry date or certificate ID." + }, + { + "inputJson": "{\"issuerName\":\"CyberCorp\",\"recipientName\":\"Dana Smith\",\"certificateTitle\":\"Access Authorization Certificate\",\"issueDate\":\"2024-06-01\",\"expiryDate\":\"2025-06-01\",\"certificateId\":\"AUTH-2024-06-001\",\"descriptionText\":\"Authorized access to CyberCorp internal systems.\",\"outputFormat\":\"JSON\"}", + "description": "Produce a certificate in JSON format for system access authorization with a unique certificate ID." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "documentation-tools.createCredential", + "description": "Creates a structured credential document for security documentation purposes. Accepts inputs such as credential type, issuer information, subject details, and validity period, then produces a standardized credential JSON object suitable for documentation or integration in identity management systems.", + "category": "documentation-tools", + "parameters": [ + { + "name": "credentialType", + "type": "string", + "description": "The type or category of the credential (e.g., API Key, OAuth Token, Certificate).", + "required": true, + "defaultValue": "" + }, + { + "name": "issuer", + "type": "object", + "description": "Details of the entity issuing the credential, including name and contact information.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "object", + "description": "Information about the credential subject such as username, user ID, or system name.", + "required": true, + "defaultValue": "" + }, + { + "name": "validFrom", + "type": "string", + "description": "Start date and time (ISO 8601) when the credential becomes valid.", + "required": false, + "defaultValue": "" + }, + { + "name": "validTo", + "type": "string", + "description": "End date and time (ISO 8601) when the credential expires.", + "required": false, + "defaultValue": "" + }, + { + "name": "permissions", + "type": "array", + "description": "List of permissions or scopes granted by the credential (e.g., read, write).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive notes about the credential's purpose or usage.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the complete credential with metadata, ready for documentation or security processing." + }, + "aiAgent": { + "useCase": "Use this tool when generating formal security credentials for documentation or identity management; it helps structure the details into a standard format for clarity, auditing, and integration.", + "limitations": "This tool does not generate cryptographic tokens or secret keys; it only creates descriptive credential documents based on provided input.", + "examples": [ + "Create a credential for an API key issued by DevOps team with read and write permissions valid for 1 year.", + "Document a user OAuth token with associated scopes and expiry date.", + "Generate a certificate credential description for internal system authentication." + ] + }, + "tags": [ + "documentation", + "security", + "credential", + "create", + "identity", + "api-key", + "token", + "certificate" + ], + "examples": [ + { + "inputJson": "{\"credentialType\":\"API Key\",\"issuer\":{\"name\":\"DevOps Team\",\"contact\":\"devops@example.com\"},\"subject\":{\"username\":\"service-account-1\"},\"validFrom\":\"2024-01-01T00:00:00Z\",\"validTo\":\"2025-01-01T00:00:00Z\",\"permissions\":[\"read\",\"write\"],\"description\":\"API key for service-account-1 accessing internal APIs.\"}", + "description": "Creating an API key credential document issued by DevOps with read/write permissions." + }, + { + "inputJson": "{\"credentialType\":\"OAuth Token\",\"issuer\":{\"name\":\"Auth Server\",\"contact\":\"auth@example.com\"},\"subject\":{\"userId\":\"user123\"},\"validFrom\":\"2024-06-01T08:00:00Z\",\"validTo\":\"2024-06-30T08:00:00Z\",\"permissions\":[\"profile\",\"email\"],\"description\":\"OAuth token for user access to profile and email data.\"}", + "description": "Documenting an OAuth token credential for a user with limited scope and validity." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "documentation-tools.createMessage", + "description": "Creates a formatted message text intended for documentation or project communication. Accepts parameters such as messageType (e.g., 'meeting update', 'release note'), recipient details, message body content, and tone. Processes the inputs to generate a clear, audience-appropriate message output suitable for documentation or team communication channels.", + "category": "documentation-tools", + "parameters": [ + { + "name": "messageType", + "type": "string", + "description": "Type of the message to tailor its style and format (e.g., 'announcement', 'reminder', 'release note').", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientRole", + "type": "string", + "description": "Intended audience role for the message to adjust tone and content (e.g., 'developers', 'project managers').", + "required": false, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject or headline for the message to summarize content clearly.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyContent", + "type": "string", + "description": "Main content or key points of the message that should be communicated.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone for the message such as 'formal', 'informal', 'technical', or 'friendly'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Flag to indicate if action items should be appended based on the content.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted message text with subject, body, and optionally action items, ready to post or send as part of documentation or communication." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, concise, and audience-appropriate messages for project documentation or team communications, especially when the message must be formatted according to type and tone guidelines. It is useful in automating routine communication tasks to maintain consistency and save time.", + "limitations": "This tool does not send messages or integrate with communication platforms; it only generates message text content. It also does not support complex multimedia content or attachments.", + "examples": [ + "Create a release note message summarizing new features for developers with a formal tone.", + "Generate a friendly reminder message to project managers about upcoming deadlines including action items.", + "Compose an announcement message about a meeting update aimed at all team members with an informal tone." + ] + }, + "tags": [ + "documentation", + "message", + "communication", + "formatting", + "automation", + "project management", + "notifications" + ], + "examples": [ + { + "inputJson": "{\"messageType\":\"release note\",\"recipientRole\":\"developers\",\"subject\":\"Version 2.0 Released\",\"bodyContent\":\"We have released version 2.0 featuring new API endpoints and bug fixes.\",\"tone\":\"formal\",\"includeActionItems\":true}", + "description": "Generate a formal release note message for developers including action items." + }, + { + "inputJson": "{\"messageType\":\"reminder\",\"recipientRole\":\"project managers\",\"subject\":\"Upcoming Deadline\",\"bodyContent\":\"Please ensure all reports are submitted by Friday.\",\"tone\":\"friendly\",\"includeActionItems\":false}", + "description": "Create a friendly reminder for project managers about report submission deadlines." + }, + { + "inputJson": "{\"messageType\":\"announcement\",\"recipientRole\":\"all team members\",\"subject\":\"Meeting Rescheduled\",\"bodyContent\":\"The weekly sync meeting is moved to Thursday at 3 PM.\",\"tone\":\"informal\",\"includeActionItems\":false}", + "description": "Compose an informal announcement message for all team members about a meeting time change." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "documentation-tools.createMention", + "description": "Creates a formatted mention string for documentation or communication contexts by referencing a user, team, or entity. Accepts inputs such as mentionType and identifier, and outputs a standardized mention string suitable for embedding in documents, markdown files, or chat systems.", + "category": "documentation-tools", + "parameters": [ + { + "name": "mentionType", + "type": "string", + "description": "Type of mention to create, such as 'user', 'team', or 'entity'. Determines mention formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "identifier", + "type": "string", + "description": "Unique identifier or name of the mention target, e.g., username, team name, or entity ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayName", + "type": "string", + "description": "Optional display text to show instead of the raw identifier; if empty, identifier is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "Target platform or format for the mention, e.g., 'markdown', 'slack', 'github'. Affects mention syntax.", + "required": false, + "defaultValue": "\"markdown\"" + }, + { + "name": "includeLink", + "type": "boolean", + "description": "Whether to include an embedded hyperlink to the mention target if supported on the platform.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the formatted mention string as 'mentionText' and metadata about the mention." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to insert or generate standardized mentions of users, teams, or entities in documentation, changelogs, or communication platforms, adapting the mention format to different syntaxes like markdown or Slack. It ensures consistency and proper linking across documentation files and messages.", + "limitations": "The tool cannot resolve ambiguous identifiers to actual user or team profiles; it requires accurate inputs. It also does not verify existence or permissions of the mention target on given platforms.", + "examples": [ + "Create a mention for user 'jsmith' in markdown format.", + "Generate a Slack mention for team 'DevOps'.", + "Produce a plain user mention with a display name override." + ] + }, + "tags": [ + "documentation", + "mention", + "communication", + "formatting", + "markdown", + "slack", + "user-reference" + ], + "examples": [ + { + "inputJson": "{\"mentionType\":\"user\",\"identifier\":\"jsmith\"}", + "description": "Basic user mention in default markdown format using identifier as display." + }, + { + "inputJson": "{\"mentionType\":\"team\",\"identifier\":\"DevOps\",\"platform\":\"slack\",\"includeLink\":true}", + "description": "Slack mention for DevOps team with hyperlink included." + }, + { + "inputJson": "{\"mentionType\":\"user\",\"identifier\":\"alice\",\"displayName\":\"Alice Smith\",\"platform\":\"github\"}", + "description": "GitHub mention for user 'alice' with a friendly display name." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Mention", + "context": null + } + }, + { + "name": "documentation-tools.createChannel", + "description": "Creates a new communication channel for documentation teams or projects. Accepts channel name, type (e.g., mailing list, chat room), description, privacy setting, and optional tags. Processes inputs to configure and register the channel, returning channel metadata including unique ID, URL, and settings summary.", + "category": "documentation-tools", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "The name of the communication channel to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of channel such as 'chat', 'email', or 'discussion forum'.", + "required": true, + "defaultValue": "chat" + }, + { + "name": "description", + "type": "string", + "description": "A brief description of the channel's purpose or usage guidelines.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Whether the channel is private (invite-only) or public (accessible to all team members).", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "array", + "description": "Keywords for categorizing or filtering channels (e.g., ['release','api']).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique channel ID, the channel name, type, URL or access point, privacy status, description, and associated tags." + }, + "aiAgent": { + "useCase": "Use this tool when needing to establish designated communication channels for documentation teams or projects to streamline collaboration. It supports setting channel types, access control, and categorization, facilitating efficient team communication linked to documentation tasks.", + "limitations": "This tool does not manage message sending, user membership management, or message history. It only creates and configures channels but does not propagate them to specific communication platforms without integration.", + "examples": [ + "Create a public chat channel named 'API Docs Discussion' for open team collaboration.", + "Set up a private email mailing list channel named 'Doc Review Team' for restricted document review discussions.", + "Create a discussion forum channel tagged with 'release' and 'urgent' for critical release documentation conversations." + ] + }, + "tags": [ + "create", + "channel", + "documentation", + "communication", + "collaboration", + "documentation-tools" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"API Docs Discussion\",\"channelType\":\"chat\",\"description\":\"Public channel for discussing API documentation.\",\"isPrivate\":false,\"tags\":[\"api\",\"discussion\"]}", + "description": "Create a public chat channel focused on API documentation discussions." + }, + { + "inputJson": "{\"channelName\":\"Doc Review Team\",\"channelType\":\"email\",\"description\":\"Private mailing list for document reviewers.\",\"isPrivate\":true,\"tags\":[\"review\",\"private\"]}", + "description": "Set up a private email channel for document reviewers." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "documentation-tools.createKey", + "description": "Generates a cryptographic key pair for securing documentation access or signing. Accepts parameters like algorithm type, key size, and usage purpose. Outputs a structured key object including public and private keys formatted for integration in documentation security workflows.", + "category": "documentation-tools", + "parameters": [ + { + "name": "algorithm", + "type": "string", + "description": "The cryptographic algorithm to use for key generation (e.g., RSA, ECDSA, Ed25519).", + "required": true, + "defaultValue": "" + }, + { + "name": "keySize", + "type": "number", + "description": "The size of the key in bits, applicable for algorithms like RSA (e.g., 2048, 4096).", + "required": false, + "defaultValue": "2048" + }, + { + "name": "usage", + "type": "string", + "description": "Intended usage of the key, such as 'signing' or 'encryption'.", + "required": false, + "defaultValue": "signing" + }, + { + "name": "exportFormat", + "type": "string", + "description": "Format in which keys are output, e.g., PEM or JWK.", + "required": false, + "defaultValue": "PEM" + }, + { + "name": "passphrase", + "type": "string", + "description": "Optional passphrase to encrypt the private key for secure storage.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated publicKey and privateKey strings in the specified format, plus metadata like algorithm and usage." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create cryptographic keys to secure documentation systems, such as generating keys for signing documents, encrypting sensitive docs, or establishing secure access control. It is suitable for agents managing secure document workflows or initializing new documentation security configurations.", + "limitations": "Does not manage key storage or rotation policies. It generates keys only locally and does not interact with hardware security modules or external key vaults.", + "examples": [ + "Generate a 4096-bit RSA key pair for signing documentation.", + "Create an Ed25519 key pair for document encryption in JWK format.", + "Generate an RSA 2048-bit key with a passphrase-protected private key in PEM format." + ] + }, + "tags": [ + "security", + "cryptography", + "documentation", + "key-generation", + "signing", + "encryption" + ], + "examples": [ + { + "inputJson": "{\"algorithm\":\"RSA\",\"keySize\":4096,\"usage\":\"signing\",\"exportFormat\":\"PEM\",\"passphrase\":\"\"}", + "description": "Generate a 4096-bit RSA key pair for document signing in PEM format with no passphrase." + }, + { + "inputJson": "{\"algorithm\":\"Ed25519\",\"usage\":\"encryption\",\"exportFormat\":\"JWK\"}", + "description": "Create an Ed25519 key pair for encrypting documents exported as JSON Web Key (JWK)." + }, + { + "inputJson": "{\"algorithm\":\"RSA\",\"keySize\":2048,\"usage\":\"signing\",\"exportFormat\":\"PEM\",\"passphrase\":\"s3cret\"}", + "description": "Generate a 2048-bit RSA key pair, passphrase protected private key, for signing documents." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "documentation-tools.createThread", + "description": "Creates a new communication thread within a documentation or project collaboration environment. Accepts title, initial message content, authorship info, tags, and optional metadata. Processes inputs to establish a structured thread object, returning the thread ID and summary data for integration or display.", + "category": "documentation-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or subject of the thread, summarizing its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessage", + "type": "string", + "description": "The content of the first message in the thread, setting context for discussion.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier for the user creating the thread; assigns thread ownership.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of tags or keywords for categorizing and searching the thread.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional info such as priority level, related documents, or deadlines.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique thread ID, creation timestamp, and a summary of the thread details including title and author." + }, + "aiAgent": { + "useCase": "Use this tool when initiating structured discussions or communication streams within a documentation system, enabling organized collaboration and message tracking. Helpful for AI agents automating project communications, documentation review processes, or team coordination channels.", + "limitations": "This tool only creates the initial communication thread and message; it does not support posting subsequent messages or managing thread state such as closing or archiving.", + "examples": [ + "Create a discussion thread about updating the API documentation with initial guidelines and assign it to user123.", + "Start a new thread tagged 'urgent' to coordinate on the upcoming product launch documentation.", + "Create a support thread with metadata indicating high priority and linking to relevant error reports." + ] + }, + "tags": [ + "communication", + "documentation", + "thread", + "collaboration", + "discussion" + ], + "examples": [ + { + "inputJson": "{\"title\":\"API Documentation Update\",\"initialMessage\":\"We need to revise the authentication section to include OAuth2 details.\",\"authorId\":\"user123\",\"tags\":[\"api\",\"update\"],\"metadata\":{\"priority\":\"medium\"}}", + "description": "Create a discussion thread to coordinate updating the API documentation's authentication section." + }, + { + "inputJson": "{\"title\":\"Product Launch Coordination\",\"initialMessage\":\"Let's align on the final content for the launch checklist.\",\"authorId\":\"user456\",\"tags\":[\"launch\",\"urgent\"],\"metadata\":{}}", + "description": "Start a high-importance thread focused on coordinating the product launch documentation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "documentation-tools.createSecret", + "description": "This tool accepts secret metadata and content inputs, then generates a formatted secret documentation entry. It processes inputs such as secret name, description, type, and encryption notes and outputs a structured documentation snippet ready for inclusion in project docs or security manuals.", + "category": "documentation-tools", + "parameters": [ + { + "name": "secretName", + "type": "string", + "description": "The name or identifier of the secret to document", + "required": true, + "defaultValue": "" + }, + { + "name": "secretDescription", + "type": "string", + "description": "A detailed description of the secret's purpose and usage", + "required": true, + "defaultValue": "" + }, + { + "name": "secretType", + "type": "string", + "description": "Type/category of the secret (e.g., API key, password, certificate)", + "required": true, + "defaultValue": "" + }, + { + "name": "encryptionDetails", + "type": "string", + "description": "Details about encryption methods used for this secret, if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "rotationPolicy", + "type": "string", + "description": "Description of the secret rotation policy and frequency", + "required": false, + "defaultValue": "" + }, + { + "name": "accessRestrictions", + "type": "string", + "description": "Information about who can access this secret and under what conditions", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured object containing a formatted markdown string documenting the secret plus metadata summary" + }, + "aiAgent": { + "useCase": "Use this tool when you need to create clear, consistent, and secure documentation entries for various secrets in your project or organizational documentation, ensuring sensitive information handling and policy details are properly recorded and easily referenced.", + "limitations": "This tool does not generate or store secrets themselves, nor does it enforce security policies; it only creates documentation content based on given inputs.", + "examples": [ + "Create documentation entry for a new API key including description and access rules", + "Generate a markdown snippet describing the password secret and rotation policy", + "Document encryption details for a certificate used in the project" + ] + }, + "tags": [ + "documentation", + "security", + "secret-management", + "create", + "formatting", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"secretName\":\"DatabasePassword\",\"secretDescription\":\"Password for the main production database user.\",\"secretType\":\"password\",\"encryptionDetails\":\"Stored encrypted with AES-256 in vault.\",\"rotationPolicy\":\"Rotated every 90 days.\",\"accessRestrictions\":\"Accessible only to DB admins via vault permissions.\"}", + "description": "Document a production database password with encryption, rotation, and access details." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "documentation-tools.createNotification", + "description": "Creates a formatted notification message intended for documentation updates or alerts. Accepts inputs such as notification title, message content, severity level, and optional tags. Processes these inputs to generate a structured notification object suitable for integration into documentation platforms or messaging systems.", + "category": "documentation-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The headline or title of the notification to display.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Detailed text or body content of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "The notification importance level, e.g., 'info', 'warning', 'error'.", + "required": false, + "defaultValue": "info" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of tags or keywords to categorize the notification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "displayDuration", + "type": "number", + "description": "Optional duration in seconds for how long the notification should be shown; 0 or omitted means indefinite.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Structured notification object including title, message, severity, tags, timestamp, and displayDuration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, consistent notification messages related to documentation activities, such as updates, alerts, or reminders, ensuring standardized format for downstream display or logging.", + "limitations": "This tool creates notification content only; it does not handle delivery, display rendering, or interaction with notification systems.", + "examples": [ + "Create a warning notification for deprecated API documentation.", + "Generate an info notification about scheduled maintenance for docs platform.", + "Create an error notification indicating failure to update documentation." + ] + }, + "tags": [ + "documentation", + "notification", + "communication", + "alerts", + "updates" + ], + "examples": [ + { + "inputJson": "{\"title\":\"API Deprecated\",\"message\":\"The version v1 API will be deprecated on Dec 31, 2024.\",\"severity\":\"warning\",\"tags\":[\"api\",\"deprecation\"],\"displayDuration\":60}", + "description": "A warning notification about API deprecation with relevant tags and display duration." + }, + { + "inputJson": "{\"title\":\"Documentation Updated\",\"message\":\"New section added to the Getting Started guide.\",\"severity\":\"info\",\"tags\":[\"update\",\"guide\"]}", + "description": "An informational notification signaling an update to the documentation guide." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "documentation-tools.createComment", + "description": "Creates a comment entry associated with specific documentation content. Accepts the target document ID, comment text, author details, and optional metadata such as timestamp or tags. Outputs a structured comment object confirming creation, including unique comment ID and timestamp.", + "category": "documentation-tools", + "parameters": [ + { + "name": "documentId", + "type": "string", + "description": "Unique identifier of the document or section to which the comment applies.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the comment's author for attribution purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the comment's author for contact or notifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "createdAt", + "type": "string", + "description": "Optional ISO 8601 timestamp defining when the comment was created. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of strings tagging the comment with relevant keywords or categories.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created comment, including its unique id, document association, author info, content, tags, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to add user or system-generated comments to specific documentation entries to facilitate collaboration, review, or automated annotations. It is useful for creating traceable and attributed comments linked precisely to documentation items.", + "limitations": "This tool only creates and returns comment metadata; it does not manage comment threading, editing, or deletion, nor does it validate document IDs beyond string acceptance.", + "examples": [ + "Create a comment on the API documentation section to suggest a correction.", + "Add an author attribution note to a documentation page.", + "Tag a comment with 'urgent' and 'review-needed' for priority feedback." + ] + }, + "tags": [ + "documentation", + "comments", + "collaboration", + "annotation", + "feedback" + ], + "examples": [ + { + "inputJson": "{\"documentId\":\"doc12345\",\"commentText\":\"Please update the code sample to reflect the new API version.\",\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane.doe@example.com\",\"tags\":[\"update\",\"api\"]}", + "description": "Creating a comment requesting an update to a code sample with author details and tags." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "documentation-tools.createForecast", + "description": "Creates a comprehensive business forecast document based on historical data, key metrics, assumptions, and desired forecasting period. Accepts input data and parameters, processes trend analysis and projection calculations, and outputs a structured forecast report in markdown or PDF format suitable for business planning or presentations.", + "category": "documentation-tools", + "parameters": [ + { + "name": "historicalData", + "type": "array", + "description": "An array of objects representing past business metrics (e.g., revenue, expenses) with timestamps to analyze trends. Each object includes date and value fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMetrics", + "type": "array", + "description": "List of specific metrics to be included and analyzed in the forecast, for example 'revenue', 'customerGrowth', or 'expenses'.", + "required": true, + "defaultValue": "" + }, + { + "name": "forecastPeriodMonths", + "type": "number", + "description": "Number of future months to generate the forecast for, starting from the latest date in historical data.", + "required": true, + "defaultValue": "12" + }, + { + "name": "assumptions", + "type": "object", + "description": "Key assumptions influencing the forecast, such as growth rates, market conditions, or expected changes in costs. Each key is a metric with corresponding assumption details.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the forecast document. Supported values are 'markdown' and 'pdf'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to generate and include charts or graphs illustrating trends and projections in the forecast document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured forecast document including summary, detailed projections, and visualizations as requested. Contains 'documentContent' field with string content and 'format' field indicating output type." + }, + "aiAgent": { + "useCase": "Use this tool when a business needs a data-driven, well-organized forecast report combining historical data analysis and projected trends to support planning, budgeting, or investor presentations. It automates generating textual and graphical forecast documentation based on variable inputs.", + "limitations": "This tool relies on quality and completeness of input historical data and assumptions provided by the user; it cannot guarantee accuracy of future projections or replace professional financial consulting.", + "examples": [ + "Create a 12-month revenue and expense forecast from past 3 years of monthly data in markdown format.", + "Generate a PDF business growth forecast including customer acquisition and churn metrics for next 6 months, with visual charts.", + "Produce a forecast document with default assumptions and output as markdown focusing on revenue and profit metrics." + ] + }, + "tags": [ + "forecasting", + "documentation", + "business", + "financial-analysis", + "report-generation", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"historicalData\":[{\"date\":\"2020-01-01\",\"revenue\":10000},{\"date\":\"2020-02-01\",\"revenue\":12000},{\"date\":\"2020-03-01\",\"revenue\":13000}],\"keyMetrics\":[\"revenue\",\"expenses\"],\"forecastPeriodMonths\":12,\"assumptions\":{\"revenue\":{\"growthRate\":0.05}},\"outputFormat\":\"markdown\",\"includeVisualizations\":true}", + "description": "Generate a 12-month revenue and expenses forecast in markdown, with a 5% monthly revenue growth assumption and visual charts." + }, + { + "inputJson": "{\"historicalData\":[{\"date\":\"2023-01-01\",\"customerCount\":500},{\"date\":\"2023-02-01\",\"customerCount\":550},{\"date\":\"2023-03-01\",\"customerCount\":620}],\"keyMetrics\":[\"customerCount\"],\"forecastPeriodMonths\":6,\"assumptions\":{\"customerCount\":{\"growthRate\":0.1}},\"outputFormat\":\"pdf\",\"includeVisualizations\":true}", + "description": "Create a 6-month customer growth forecast in PDF including charts based on 10% assumed growth per month." + }, + { + "inputJson": "{\"historicalData\":[{\"date\":\"2021-06-01\",\"profit\":2000},{\"date\":\"2021-07-01\",\"profit\":2200}],\"keyMetrics\":[\"profit\"],\"forecastPeriodMonths\":3,\"outputFormat\":\"markdown\",\"includeVisualizations\":false}", + "description": "Produce a simple 3-month profit forecast in markdown format without visualizations, using default assumptions." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Forecast", + "context": null + } + }, + { + "name": "documentation-tools.createThreat", + "description": "Creates a detailed threat entry for security documentation based on provided parameters such as threat name, description, impact level, likelihood, affected assets, and suggested mitigations. It processes this input to generate a standardized, formatted threat report suitable for technical and compliance documentation.", + "category": "documentation-tools", + "parameters": [ + { + "name": "threatName", + "type": "string", + "description": "The unique name or identifier of the threat.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A comprehensive explanation of the threat and how it could manifest.", + "required": true, + "defaultValue": "" + }, + { + "name": "impactLevel", + "type": "string", + "description": "Severity level of the threat impact (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "likelihood", + "type": "string", + "description": "Estimated probability of the threat occurring (e.g., Unlikely, Possible, Likely, Certain).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedAssets", + "type": "array", + "description": "List of system components or assets potentially impacted by the threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "suggestedMitigations", + "type": "array", + "description": "Recommended measures or controls to mitigate or prevent the threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "references", + "type": "array", + "description": "Optional external references or documentation URLs related to the threat.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full formatted threat entry with all provided information, ready for inclusion in documentation." + }, + "aiAgent": { + "useCase": "Use this tool when generating or updating security documentation that requires a structured, clear, and standardized threat entry. It helps compile essential threat details into a formal report format to facilitate risk assessment, compliance reporting, and security awareness.", + "limitations": "This tool does not perform threat identification or risk analysis; it expects the input information to be provided by a prior risk assessment or expert input. It also does not integrate with external vulnerability databases to auto-populate data.", + "examples": [ + "Create a new threat entry for a high impact SQL injection vulnerability affecting web applications.", + "Document a potential insider threat with medium likelihood affecting confidential data assets and include mitigation strategies.", + "Generate a threat report for a denial-of-service risk with critical impact and associated references." + ] + }, + "tags": [ + "documentation", + "security", + "threat modeling", + "risk management", + "reporting", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"threatName\":\"SQL Injection\",\"description\":\"An attacker can manipulate input fields to execute malicious SQL commands, potentially accessing or altering database contents.\",\"impactLevel\":\"High\",\"likelihood\":\"Likely\",\"affectedAssets\":[\"Web Application\",\"User Database\"],\"suggestedMitigations\":[\"Input Validation\",\"Use Parameterized Queries\",\"Web Application Firewall\"],\"references\":[\"https://owasp.org/www-community/attacks/SQL_Injection\"]}", + "description": "Create a threat entry describing an SQL Injection vulnerability affecting web app and database." + }, + { + "inputJson": "{\"threatName\":\"Insider Data Leak\",\"description\":\"A trusted employee may intentionally or accidentally leak confidential data outside the organization.\",\"impactLevel\":\"Medium\",\"likelihood\":\"Possible\",\"affectedAssets\":[\"Confidential Documents\",\"Customer Data\"],\"suggestedMitigations\":[\"Access Controls\",\"Employee Training\",\"Data Loss Prevention Systems\"]}", + "description": "Document an insider threat with mitigations for confidential data leak scenario." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "documentation-tools.createAlert", + "description": "Creates a standardized security alert documentation entry based on provided alert details including title, description, severity, affected components, and recommended actions. Outputs a formatted alert document suitable for integration in security documentation systems.", + "category": "documentation-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The concise title summarizing the alert, e.g., 'SQL Injection Vulnerability Detected'.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the alert, describing the security issue and its impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the alert; common values include 'Low', 'Medium', 'High', or 'Critical'.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of software components or modules affected by this alert.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "recommendedActions", + "type": "array", + "description": "Step-by-step recommended actions to mitigate or resolve the security alert.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "alertId", + "type": "string", + "description": "Unique identifier for the alert to track and reference it in documentation systems.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateReported", + "type": "string", + "description": "Date the alert was reported or created in ISO 8601 format (e.g., '2024-06-15').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the fully assembled structured security alert document including all input fields formatted and ready for integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or standardize security alert entries for documentation purposes, such as creating alerts after detecting vulnerabilities or incidents in systems. It ensures uniform alert formats for easy communication and tracking.", + "limitations": "This tool does not perform vulnerability detection or validation; it only structures supplied alert information into a documentation-ready format.", + "examples": [ + "Create a security alert documenting a critical buffer overflow vulnerability in the authentication module.", + "Generate an alert describing a medium severity privilege escalation risk affecting multiple services, with mitigation steps.", + "Document a low severity information disclosure issue with recommended remediation steps." + ] + }, + "tags": [ + "documentation", + "security", + "alert", + "create", + "reporting", + "vulnerability", + "standardization" + ], + "examples": [ + { + "inputJson": "{\"title\":\"SQL Injection Vulnerability Detected\",\"description\":\"A SQL injection vulnerability was discovered in the user login component, allowing attackers to execute arbitrary queries.\",\"severity\":\"High\",\"affectedComponents\":[\"User Authentication Service\",\"Database Layer\"],\"recommendedActions\":[\"Validate user inputs using parameterized queries.\",\"Update ORM to latest version.\",\"Perform security testing after patching.\"],\"alertId\":\"ALERT-2024-001\",\"dateReported\":\"2024-06-10\"}", + "description": "Create an alert documenting a high severity SQL injection issue with affected components and remediation steps." + }, + { + "inputJson": "{\"title\":\"Privilege Escalation Risk\",\"description\":\"Potential privilege escalation issue found in the admin dashboard allowing unauthorized data access.\",\"severity\":\"Medium\",\"affectedComponents\":[\"Admin Dashboard Module\"],\"recommendedActions\":[\"Restrict admin panel access.\",\"Apply least privilege principles.\",\"Audit access logs regularly.\"],\"alertId\":\"ALERT-2024-002\",\"dateReported\":\"2024-06-12\"}", + "description": "Document a medium severity privilege escalation risk with recommended mitigation steps." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "documentation-tools.createIncident", + "description": "Creates a detailed security incident report based on provided inputs such as incident type, description, severity, affected systems, and mitigation steps. Processes input data to structure and format a standardized incident document for documentation and tracking purposes.", + "category": "documentation-tools", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "The category or nature of the security incident (e.g., phishing, malware, data breach).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed narrative describing the incident and circumstances around it.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "The assessed impact level of the incident (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected systems, services, or components impacted by the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectedAt", + "type": "string", + "description": "Timestamp when the incident was first detected, in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Name or identifier of the person or system that reported the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "mitigationSteps", + "type": "array", + "description": "Ordered list of actions taken or recommended to contain or resolve the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any extra information or observations relevant to the incident.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted incident report with structured fields and a unique incident ID for tracking." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate standardized, comprehensive security incident reports from unstructured or semi-structured input data. Ideal for automatically documenting incidents encountered during security operations, enabling consistent record-keeping and audit readiness.", + "limitations": "This tool does not perform incident detection or automated severity assessment; it relies on provided input data. It also does not integrate with external incident management platforms or trigger automated mitigations.", + "examples": [ + "Create a detailed report for a phishing attack detected on multiple email accounts with high severity.", + "Document a malware infection on a critical server including mitigation steps taken.", + "Generate an incident report summarizing a data breach affecting customer information." + ] + }, + "tags": [ + "documentation", + "incident-reporting", + "security", + "automation", + "report-generation", + "security-operations" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"phishing\",\"description\":\"Multiple users received emails with suspicious links leading to credential theft attempts.\",\"severity\":\"high\",\"affectedSystems\":[\"email server\",\"user workstations\"],\"detectedAt\":\"2024-06-15T10:30:00Z\",\"reportedBy\":\"security_team\",\"mitigationSteps\":[\"Quarantined phishing emails\",\"Instructed users to reset passwords\"],\"additionalNotes\":\"Incident correlated with recent threat intelligence reports.\"}", + "description": "Reporting a high severity phishing incident impacting email and user workstations." + }, + { + "inputJson": "{\"incidentType\":\"malware\",\"description\":\"Detected ransomware encrypting files on the main database server.\",\"severity\":\"critical\",\"affectedSystems\":[\"database server\"],\"detectedAt\":\"2024-06-14T22:00:00Z\",\"reportedBy\":\"monitoring_system\",\"mitigationSteps\":[\"Isolated infected server\",\"Restored from backups\"],\"additionalNotes\":\"No data exfiltration detected.\"}", + "description": "Documenting a critical ransomware attack on the main database server." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "documentation-tools.createRisk", + "description": "Creates a structured security risk documentation entry based on provided risk details, likelihood, impact, and mitigation strategies. Accepts risk title, description, category, likelihood score, impact score, and suggested mitigations, then generates a formatted risk record for documentation and tracking purposes.", + "category": "documentation-tools", + "parameters": [ + { + "name": "riskTitle", + "type": "string", + "description": "The concise title or name of the security risk to document", + "required": true, + "defaultValue": "" + }, + { + "name": "riskDescription", + "type": "string", + "description": "Detailed explanation of the security risk including context and potential causes", + "required": true, + "defaultValue": "" + }, + { + "name": "riskCategory", + "type": "string", + "description": "Category or domain of the risk such as 'Network', 'Application', or 'Physical'", + "required": true, + "defaultValue": "" + }, + { + "name": "likelihood", + "type": "number", + "description": "Estimated probability of the risk occurring, from 1 (rare) to 5 (almost certain)", + "required": true, + "defaultValue": "" + }, + { + "name": "impact", + "type": "number", + "description": "Estimated severity of impact if the risk occurs, from 1 (minimal) to 5 (critical)", + "required": true, + "defaultValue": "" + }, + { + "name": "mitigationStrategies", + "type": "array", + "description": "List of recommended mitigation actions or controls to reduce or manage the risk", + "required": false, + "defaultValue": "[]" + }, + { + "name": "owner", + "type": "string", + "description": "Person or team responsible for managing or monitoring this risk", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured risk entry object containing all provided details plus calculated risk rating and formatted summary" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or update formal security risk documentation entries with consistent formatting and risk rating calculation, helping teams maintain comprehensive risk registers and improve risk communication.", + "limitations": "This tool does not perform automated risk assessment or real-time data analysis; it relies on supplied input parameters to document and format risk information.", + "examples": [ + "Create a risk entry for database vulnerability with likelihood 4 and impact 5 including mitigation steps.", + "Document a physical security risk for office access with moderate likelihood and impact.", + "Generate a formatted risk record for application injection attacks with detailed description and responsible team." + ] + }, + "tags": [ + "documentation", + "security", + "riskManagement", + "compliance", + "reporting", + "riskAssessment" + ], + "examples": [ + { + "inputJson": "{\"riskTitle\":\"SQL Injection Vulnerability\",\"riskDescription\":\"User input is not properly sanitized, leading to potential database injection attacks.\",\"riskCategory\":\"Application Security\",\"likelihood\":4,\"impact\":5,\"mitigationStrategies\":[\"Implement prepared statements\",\"Conduct input validation\",\"Regular security testing\"],\"owner\":\"App Security Team\"}", + "description": "Create a high-impact application security risk entry for SQL Injection." + }, + { + "inputJson": "{\"riskTitle\":\"Unauthorized Physical Access\",\"riskDescription\":\"Access control to server room is insufficient, increasing risk of unauthorized entry.\",\"riskCategory\":\"Physical Security\",\"likelihood\":3,\"impact\":4,\"mitigationStrategies\":[\"Install badge access systems\",\"Conduct regular security audits\"],\"owner\":\"Facilities Management\"}", + "description": "Document a physical security risk involving unauthorized entry likelihood and mitigation." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "documentation-tools.createVulnerability", + "description": "Creates a detailed vulnerability documentation entry based on provided security issue inputs such as title, description, impacted components, severity, and remediation steps. Processes inputs to generate a structured vulnerability report suitable for security documentation and tracking.", + "category": "documentation-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The concise title or name of the vulnerability.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A thorough description of the vulnerability, how it works, and its impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "impactedComponents", + "type": "array", + "description": "List of system components, modules, or software parts affected by the vulnerability.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the vulnerability (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "remediation", + "type": "string", + "description": "Recommended remediation steps or mitigation strategies.", + "required": false, + "defaultValue": "" + }, + { + "name": "disclosureDate", + "type": "string", + "description": "Date when the vulnerability was disclosed or reported in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "cveId", + "type": "string", + "description": "Common Vulnerabilities and Exposures (CVE) identifier if available.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured vulnerability documentation object containing all submitted details with summary and unique vulnerability ID." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate standardized and comprehensive vulnerability documentation entries for security reports, incident responses, or internal tracking. It is ideal for transforming raw vulnerability data into structured format for documentation systems.", + "limitations": "This tool does not perform vulnerability detection, scanning, or verification. It also does not assign CVSS scoring or perform impact analysis beyond user inputs.", + "examples": [ + "Create a vulnerability document for a high severity cross-site scripting issue affecting the web login module, including description and remediation steps.", + "Generate an entry for a recently disclosed buffer overflow vulnerability in a network service with CVE ID and disclosure date.", + "Document a medium severity privilege escalation issue detected in the authentication component with recommendations for patching." + ] + }, + "tags": [ + "documentation", + "security", + "vulnerability", + "create", + "report", + "remediation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Cross-Site Scripting in Login Page\",\"description\":\"Improper input sanitization allows attackers to inject scripts leading to session hijacking.\",\"impactedComponents\":[\"Web Login Module\",\"User Input Validation\"],\"severity\":\"High\",\"remediation\":\"Implement proper input sanitization and Content Security Policy headers.\",\"disclosureDate\":\"2024-05-15\",\"cveId\":\"CVE-2024-12345\"}", + "description": "Document a high severity XSS vulnerability with remediation and CVE ID." + }, + { + "inputJson": "{\"title\":\"Buffer Overflow in Network Daemon\",\"description\":\"A buffer overflow in the network daemon can cause remote code execution.\",\"impactedComponents\":[\"Network Daemon\"],\"severity\":\"Critical\",\"remediation\":\"Apply patch v2.3.4 released by vendor.\",\"disclosureDate\":\"2024-04-20\",\"cveId\":\"CVE-2024-23456\"}", + "description": "Create a critical buffer overflow vulnerability entry with patch information." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "documentation-tools.createBudget", + "description": "Creates a detailed project budget document based on provided financial inputs such as estimated costs, resource allocations, and timeline constraints. It processes input parameters to generate a structured budget summary including total cost estimates, breakdowns by category, and contingency provisions.", + "category": "documentation-tools", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the project for which the budget is to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (e.g., USD, EUR) for all financial figures.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "costItems", + "type": "array", + "description": "List of cost items, each with fields: name (string), amount (number), category (string), and description (string).", + "required": true, + "defaultValue": "" + }, + { + "name": "contingencyPercentage", + "type": "number", + "description": "Percentage of the total estimated cost to include as financial contingency.", + "required": false, + "defaultValue": "10" + }, + { + "name": "startDate", + "type": "string", + "description": "Project start date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Project end date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a high-level summary section in the budget document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured budget document including project name, timeline, detailed cost breakdown, contingency amount, total budget, and optionally a summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate a comprehensive and structured budget document from raw cost inputs for project management, financial planning, or reporting purposes. Helps automate and standardize budget creation from varied cost elements.", + "limitations": "Does not perform cost validation against real-world pricing databases or integrate with accounting systems. Cannot handle dynamic currency conversions or real-time budget adjustments.", + "examples": [ + "Create a budget for a software development project with specified costs, timeline, and 15% contingency.", + "Generate a budget summary document for a marketing campaign with different cost categories and no contingency.", + "Produce a budget report for an event planning project including start and end dates with default contingency." + ] + }, + "tags": [ + "documentation", + "budget", + "finance", + "project-management", + "report-generation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Website Redesign\",\"currency\":\"USD\",\"costItems\":[{\"name\":\"Design\",\"amount\":15000,\"category\":\"Labor\",\"description\":\"UI/UX designers\"},{\"name\":\"Development\",\"amount\":30000,\"category\":\"Labor\",\"description\":\"Frontend and backend devs\"},{\"name\":\"Hosting\",\"amount\":2000,\"category\":\"Infrastructure\",\"description\":\"Annual hosting fees\"}],\"contingencyPercentage\":12,\"startDate\":\"2024-09-01\",\"endDate\":\"2025-02-28\",\"includeSummary\":true}", + "description": "Generate a budget document for a website redesign project with specified costs, 12% contingency, and defined timeline." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Budget", + "context": null + } + }, + { + "name": "documentation-tools.createOrder", + "description": "Creates a structured documentation order object based on provided order details including customer information, items, payment method, and special instructions. Processes the input to generate a comprehensive order document suitable for business tracking and record keeping.", + "category": "documentation-tools", + "parameters": [ + { + "name": "customerName", + "type": "string", + "description": "Full name of the customer placing the order", + "required": true, + "defaultValue": "" + }, + { + "name": "customerEmail", + "type": "string", + "description": "Email address of the customer for contact and order confirmation", + "required": true, + "defaultValue": "" + }, + { + "name": "orderItems", + "type": "array", + "description": "List of items being ordered, each with name, quantity, and price", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Method of payment chosen by the customer (e.g., credit card, PayPal, bank transfer)", + "required": true, + "defaultValue": "" + }, + { + "name": "orderDate", + "type": "string", + "description": "Date when the order was placed in ISO 8601 format (YYYY-MM-DD)", + "required": false, + "defaultValue": "" + }, + { + "name": "specialInstructions", + "type": "string", + "description": "Any special instructions or notes related to the order", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An order documentation object containing order ID, customer details, list of items with totals, payment method, order date, and any special instructions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a detailed, structured order record for documentation purposes from provided customer and order information. It assists in creating a standardized format that can be used for order tracking, invoicing, or record maintenance within business documentation workflows.", + "limitations": "This tool does not process payments, perform validation beyond basic presence of required fields, or integrate with external order management systems.", + "examples": [ + "Create a customer order document with three items and PayPal as payment method.", + "Generate an order record including special delivery instructions and a specified order date.", + "Produce a structured order for documentation with customer contact info and multiple quantities of items." + ] + }, + "tags": [ + "documentation", + "order", + "business", + "create", + "record", + "customer", + "payment" + ], + "examples": [ + { + "inputJson": "{\"customerName\":\"Jane Doe\",\"customerEmail\":\"jane.doe@example.com\",\"orderItems\":[{\"name\":\"Laptop\",\"quantity\":1,\"price\":1200.00},{\"name\":\"Mouse\",\"quantity\":2,\"price\":25.50}],\"paymentMethod\":\"Credit Card\",\"orderDate\":\"2024-06-15\",\"specialInstructions\":\"Deliver between 9am-5pm.\"}", + "description": "Order documentation for a customer buying a laptop and two mice, paid by credit card, with delivery instructions." + }, + { + "inputJson": "{\"customerName\":\"Acme Corp.\",\"customerEmail\":\"sales@acmecorp.com\",\"orderItems\":[{\"name\":\"Office Chair\",\"quantity\":10,\"price\":85.99}],\"paymentMethod\":\"Bank Transfer\"}", + "description": "Corporate order for 10 office chairs paid via bank transfer without special instructions or order date." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "documentation-tools.createPayment", + "description": "This tool generates a comprehensive payment documentation entry based on input details such as payer information, payment amount, currency, payment method, transaction date, and status. It processes these inputs to produce a standardized and clear payment description suitable for business documentation or API specs.", + "category": "documentation-tools", + "parameters": [ + { + "name": "payerName", + "type": "string", + "description": "Full name or identifier of the payer.", + "required": true, + "defaultValue": "" + }, + { + "name": "payeeName", + "type": "string", + "description": "Full name or identifier of the payee.", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "The payment amount in numeric value, with up to two decimals.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The ISO 4217 currency code for the payment amount (e.g., USD, EUR).", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Method used for the payment, such as credit card, bank transfer, or cash.", + "required": true, + "defaultValue": "" + }, + { + "name": "transactionDate", + "type": "string", + "description": "Date of the transaction in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "transactionId", + "type": "string", + "description": "Unique identifier for the payment transaction.", + "required": false, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current status of the payment such as completed, pending, or failed.", + "required": false, + "defaultValue": "completed" + }, + { + "name": "notes", + "type": "string", + "description": "Optional additional notes or comments about the payment.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a structured documentation entry summarizing the payment details, including a formatted description string and individual fields as received." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create or update structured payment documentation entries for business records, API documentation, or invoicing systems that require clear and consistent payment descriptions. Ideal for generating readable payment summaries from raw payment data", + "limitations": "This tool does not process or validate payment transactions itself; it only generates documentation descriptions based on provided inputs. It does not handle currency conversion or fraud detection.", + "examples": [ + "Create a payment documentation for a completed bank transfer from Alice to Bob for 150.75 USD on 2024-05-15.", + "Generate payment doc for a credit card payment of 99.99 EUR from customer John Doe with transaction ID TX123456789.", + "Document a pending cash payment of 50 GBP from vendor123 with note \"Advance payment\"." + ] + }, + "tags": [ + "documentation", + "payment", + "business", + "financial", + "recording", + "API", + "invoice" + ], + "examples": [ + { + "inputJson": "{\"payerName\":\"Alice Smith\",\"payeeName\":\"Bob Johnson\",\"amount\":150.75,\"currency\":\"USD\",\"paymentMethod\":\"bank transfer\",\"transactionDate\":\"2024-05-15\",\"status\":\"completed\"}", + "description": "Document a completed bank transfer payment from Alice to Bob for USD 150.75 on May 15, 2024." + }, + { + "inputJson": "{\"payerName\":\"John Doe\",\"payeeName\":\"Online Store\",\"amount\":99.99,\"currency\":\"EUR\",\"paymentMethod\":\"credit card\",\"transactionDate\":\"2024-06-01\",\"transactionId\":\"TX123456789\"}", + "description": "Generate payment documentation for a credit card payment with transaction ID by John Doe to an online store." + }, + { + "inputJson": "{\"payerName\":\"Vendor123\",\"payeeName\":\"Company XYZ\",\"amount\":50,\"currency\":\"GBP\",\"paymentMethod\":\"cash\",\"transactionDate\":\"2024-04-30\",\"status\":\"pending\",\"notes\":\"Advance payment\"}", + "description": "Create a payment document for a pending cash payment of 50 GBP noted as advance payment." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "documentation-tools.createExpense", + "description": "Creates a detailed expense documentation entry based on provided financial and contextual input such as amount, date, category, description, and attachments. Processes data to generate a structured expense report entry in JSON format suitable for business documentation and auditing purposes.", + "category": "documentation-tools", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "Monetary value of the expense, in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code of the expense amount, such as USD, EUR, or JPY.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "date", + "type": "string", + "description": "Date when the expense was incurred, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "Expense classification such as Travel, Meals, Office Supplies, or Software.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief textual explanation describing the purpose or details of the expense.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of URLs or base64-encoded strings referencing receipts or supporting documents for the expense.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "approvedBy", + "type": "string", + "description": "Name or identifier of the person who approved the expense, if applicable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON object representing the complete documented expense including metadata and attachments." + }, + "aiAgent": { + "useCase": "Use this tool when generating a formal, structured expense record from raw expense details for documentation, auditing, or reporting purposes in business workflows. Suitable for automation agents needing to create consistent expense entries from user input or system data.", + "limitations": "This tool does not process payments, validate the authenticity of attachments, or handle multi-currency conversions.", + "examples": [ + "Create an expense entry with amount, date, category, and receipt attachment.", + "Document a meal expense that includes description and approval info.", + "Generate an expense record for office supplies without attachments." + ] + }, + "tags": [ + "documentation", + "expense", + "business", + "finance", + "reporting", + "expense-report" + ], + "examples": [ + { + "inputJson": "{\"amount\":150.75,\"currency\":\"USD\",\"date\":\"2024-05-10\",\"category\":\"Travel\",\"description\":\"Taxi fare from airport to hotel\",\"attachments\":[\"https://example.com/receipts/taxi123.jpg\"],\"approvedBy\":\"Jane Smith\"}", + "description": "Create a travel expense entry with amount, date, category, description, attachment URL, and approval name." + }, + { + "inputJson": "{\"amount\":45.00,\"currency\":\"USD\",\"date\":\"2024-05-11\",\"category\":\"Meals\",\"description\":\"Business lunch with client\",\"attachments\":[],\"approvedBy\":\"\"}", + "description": "Create a meal expense entry with amount, date, category, and description but no attachments or approvals." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "documentation-tools.createDeal", + "description": "Creates a comprehensive business deal document based on supplied deal details such as parties involved, terms, pricing, and timelines. Accepts structured input describing deal components, processes to format and organize information into a clear, professional deal document, and outputs the document text as a string.", + "category": "documentation-tools", + "parameters": [ + { + "name": "dealTitle", + "type": "string", + "description": "The official title or name of the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "partiesInvolved", + "type": "array", + "description": "List of parties involved in the deal, each with name and role.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealTerms", + "type": "string", + "description": "Detailed textual description of the terms and conditions of the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "pricingDetails", + "type": "object", + "description": "Object describing pricing elements such as total amount, currency, payment schedule.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date of the deal, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date or expiration date of the deal, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "confidentialityClause", + "type": "boolean", + "description": "Whether to include a standard confidentiality clause in the deal document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the full deal document as a formatted text string for review or distribution." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured, professional business deal document from detailed input parameters including parties, terms, pricing, and timelines. This helps in automating business documentation processes and maintaining consistency.", + "limitations": "This tool does not conduct legal validation or provide legally binding agreements. It generates formatted summaries based on input data but does not substitute for legal advice.", + "examples": [ + "Create a deal document for a software licensing agreement between two companies including payment terms and confidentiality.", + "Generate a sales deal document with detailed pricing and timeline for product delivery.", + "Create a partnership deal outlining roles, responsibilities, and terms without confidentiality clause." + ] + }, + "tags": [ + "documentation", + "business", + "deal", + "contract", + "automation", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"dealTitle\":\"Software Licensing Agreement\",\"partiesInvolved\":[{\"name\":\"Alpha Corp\",\"role\":\"Licensor\"},{\"name\":\"Beta LLC\",\"role\":\"Licensee\"}],\"dealTerms\":\"Beta LLC is granted non-exclusive rights to use the software product.\",\"pricingDetails\":{\"totalAmount\":50000,\"currency\":\"USD\",\"paymentSchedule\":\"50% upfront, 50% after delivery\"},\"startDate\":\"2024-07-01\",\"endDate\":\"2025-06-30\",\"confidentialityClause\":true}", + "description": "Generate a licensing deal document with standard confidentiality clause included." + }, + { + "inputJson": "{\"dealTitle\":\"Product Sales Agreement\",\"partiesInvolved\":[{\"name\":\"Widgets Inc.\",\"role\":\"Seller\"},{\"name\":\"Retailer Co.\",\"role\":\"Buyer\"}],\"dealTerms\":\"Seller agrees to supply 10,000 widgets monthly.\",\"pricingDetails\":{\"totalAmount\":120000,\"currency\":\"USD\",\"paymentSchedule\":\"Monthly payments\"},\"startDate\":\"2024-08-01\",\"confidentialityClause\":false}", + "description": "Create a product sales deal document without a confidentiality clause." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "documentation-tools.createChart", + "description": "Creates customizable charts for documentation by accepting structured data and chart specifications. Processes data input to generate visual charts such as bar, line, pie, or scatter charts. Outputs chart images or embed code suitable for documentation inclusion.", + "category": "documentation-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points or objects representing the chart data, such as [{label:'Q1', value:10}, ...].", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to create; options include 'bar', 'line', 'pie', 'scatter'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title of the chart displayed above the visualization.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the chart in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the chart in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "colors", + "type": "array", + "description": "Array of color strings for the different data series or segments (hex or CSS color names).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "legend", + "type": "boolean", + "description": "Indicates if a legend should be displayed on the chart.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format to output the chart: 'png', 'svg', or 'html' embed code.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a base64-encoded image string or HTML embed code under 'chartOutput', and metadata like width, height, and format." + }, + "aiAgent": { + "useCase": "Use this tool when documentation requires embedded visualizations of data trends, comparisons, or distributions. It converts structured data input into accurate and visually appealing charts suitable for reports, wikis, or manuals.", + "limitations": "Does not support highly interactive or animated charts. Limited to common chart types (bar, line, pie, scatter). Does not generate raw data analysis or textual summaries.", + "examples": [ + "Create a bar chart for quarterly sales data with a title and custom colors.", + "Generate a pie chart representing market share in SVG format without legend.", + "Output a line chart representing performance metrics as HTML embed code for documentation inclusion." + ] + }, + "tags": [ + "documentation", + "chart", + "visualization", + "data", + "media", + "create", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"label\":\"Q1\",\"value\":150},{\"label\":\"Q2\",\"value\":200},{\"label\":\"Q3\",\"value\":180},{\"label\":\"Q4\",\"value\":220}],\"chartType\":\"bar\",\"title\":\"Quarterly Sales\",\"width\":800,\"height\":400,\"colors\":[\"#4CAF50\",\"#FF9800\",\"#2196F3\",\"#9C27B0\"],\"legend\":true,\"outputFormat\":\"png\"}", + "description": "Generate a bar chart representing quarterly sales data with custom colors and legend." + }, + { + "inputJson": "{\"data\":[{\"label\":\"Product A\",\"value\":45},{\"label\":\"Product B\",\"value\":30},{\"label\":\"Product C\",\"value\":25}],\"chartType\":\"pie\",\"title\":\"Market Share\",\"legend\":false,\"outputFormat\":\"svg\"}", + "description": "Create a pie chart of market share distribution as an SVG image without legend." + }, + { + "inputJson": "{\"data\":[{\"label\":\"Jan\",\"value\":50},{\"label\":\"Feb\",\"value\":60},{\"label\":\"Mar\",\"value\":55}],\"chartType\":\"line\",\"title\":\"Monthly Performance\",\"outputFormat\":\"html\",\"legend\":true}", + "description": "Generate an HTML embed code for a line chart showing monthly performance with a legend." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "documentation-tools.createAccount", + "description": "Creates a new account entity for managing documentation ownership and access control within a documentation system. Accepts account details such as name, email, role, and optional metadata; validates inputs and returns the created account record including a unique account ID and creation timestamp.", + "category": "documentation-tools", + "parameters": [ + { + "name": "accountName", + "type": "string", + "description": "The display name of the account to create, representing the user or team.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address associated with the account for notifications and identity verification.", + "required": true, + "defaultValue": "" + }, + { + "name": "role", + "type": "string", + "description": "Role assigned to the account determining permissions, e.g., 'viewer', 'editor', 'admin'.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata as key-value pairs describing the account (e.g., department, location).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created account's unique identifier, name, email, role, metadata, creation timestamp, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a new user or team account within the documentation system for managing access and ownership. It is suitable for automating the onboarding of document contributors or administrators based on their details and roles.", + "limitations": "This tool does not handle authentication credentials, password management, or account deletion. It also cannot assign permissions beyond the predefined roles and does not validate the email beyond basic format checks.", + "examples": [ + "Create a new editor account named 'TechDocs Team' with email techdocs@example.com.", + "Add a viewer account for user john.doe@example.com with appropriate metadata for department and location.", + "Create an admin account for the content manager with full access permissions." + ] + }, + "tags": [ + "account", + "creation", + "documentation", + "user-management", + "access-control" + ], + "examples": [ + { + "inputJson": "{\"accountName\":\"TechDocs Team\",\"email\":\"techdocs@example.com\",\"role\":\"editor\",\"metadata\":{\"department\":\"Documentation\",\"location\":\"NYC\"}}", + "description": "Creating an editor account for the tech documentation team with metadata attributes." + }, + { + "inputJson": "{\"accountName\":\"John Doe\",\"email\":\"john.doe@example.com\",\"role\":\"viewer\"}", + "description": "Adding a new viewer account for an individual contributor without extra metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "documentation-tools.createGraph", + "description": "This tool generates a visual graph image based on a structured input describing nodes and edges. It accepts JSON input specifying graph elements, styles, and layout options, processes this data to construct the graph, and produces an SVG or PNG image file representing the graph for embedding in documentation or reports.", + "category": "documentation-tools", + "parameters": [ + { + "name": "graphData", + "type": "object", + "description": "Structured JSON object describing nodes, edges, and their attributes for the graph.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to create such as 'directed', 'undirected', or 'flowchart'.", + "required": false, + "defaultValue": "directed" + }, + { + "name": "layout", + "type": "string", + "description": "Layout style for the graph, e.g., 'dot', 'circo', 'fdp', 'neato' to influence node positioning.", + "required": false, + "defaultValue": "dot" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, either 'svg' for scalable vector graphics or 'png' for raster image.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "width", + "type": "number", + "description": "Width in pixels of the resulting graph image. Maintains aspect ratio if height not specified.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height in pixels of the resulting graph image. Maintains aspect ratio if width not specified.", + "required": false, + "defaultValue": "600" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the graph image in hex or named color format.", + "required": false, + "defaultValue": "white" + } + ], + "returns": { + "type": "object", + "description": "An object containing the image data as a base64-encoded string and metadata like format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate clear and customizable visual graph representations of structured relational data for embedding in documentation, reports, or presentations. It is ideal for illustrating architectures, workflows, dependencies, or data relationships dynamically based on input specifications.", + "limitations": "This tool cannot create interactive graphs, only static images. Complex graph layouts might require additional manual adjustment. It does not parse unstructured natural language descriptions into graph data.", + "examples": [ + "Create a directed graph image illustrating API dependencies between services.", + "Generate an undirected social network graph visualization for documentation.", + "Produce a flowchart diagram representing stages in a process with labeled nodes." + ] + }, + "tags": [ + "graph", + "visualization", + "documentation", + "diagram", + "create", + "media", + "image" + ], + "examples": [ + { + "inputJson": "{\"graphData\":{\"nodes\":[{\"id\":\"A\",\"label\":\"Start\"},{\"id\":\"B\",\"label\":\"Process\"},{\"id\":\"C\",\"label\":\"End\"}],\"edges\":[{\"from\":\"A\",\"to\":\"B\"},{\"from\":\"B\",\"to\":\"C\"}]},\"graphType\":\"directed\",\"layout\":\"dot\",\"outputFormat\":\"svg\",\"width\":600,\"height\":400,\"backgroundColor\":\"#ffffff\"}", + "description": "Create a simple directed graph with three nodes representing a process flow." + }, + { + "inputJson": "{\"graphData\":{\"nodes\":[{\"id\":\"1\",\"label\":\"Node 1\"},{\"id\":\"2\",\"label\":\"Node 2\"},{\"id\":\"3\",\"label\":\"Node 3\"}],\"edges\":[{\"from\":\"1\",\"to\":\"2\"},{\"from\":\"2\",\"to\":\"3\"},{\"from\":\"3\",\"to\":\"1\"}]},\"graphType\":\"undirected\",\"layout\":\"circo\",\"outputFormat\":\"png\",\"width\":800,\"height\":600,\"backgroundColor\":\"#f0f0f0\"}", + "description": "Generate an undirected cyclic graph showing nodes connected in a loop with PNG output." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "documentation-tools.createCustomer", + "description": "Creates a comprehensive customer documentation record by accepting key customer details such as name, contact information, business description, and special requirements. It processes these inputs to generate a formatted customer profile document suitable for onboarding and reference purposes in documentation systems.", + "category": "documentation-tools", + "parameters": [ + { + "name": "customerName", + "type": "string", + "description": "The full name of the customer or company.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactEmail", + "type": "string", + "description": "Primary contact email address for the customer.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactPhone", + "type": "string", + "description": "Primary contact phone number for the customer.", + "required": false, + "defaultValue": "" + }, + { + "name": "businessDescription", + "type": "string", + "description": "A brief description of the customer's business or activities.", + "required": false, + "defaultValue": "" + }, + { + "name": "specialRequirements", + "type": "string", + "description": "Any special requirements or notes related to the customer.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeConfidentialityClause", + "type": "boolean", + "description": "Whether to include a standard confidentiality clause in the documentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "documentFormat", + "type": "string", + "description": "The output document format, e.g., 'markdown', 'html', or 'plaintext'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated customer documentation content and metadata, including the formatted document string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when onboarding a new customer or updating documentation repositories with detailed customer profiles for internal reference. It helps automate generating consistent, well-structured customer documentation from raw data inputs.", + "limitations": "This tool does not validate customer data beyond basic string checks and does not handle storage or retrieval of documents. It generates documentation only in specified simple formats.", + "examples": [ + "Create a new customer document for Acme Corp with contact email and business description.", + "Generate a customer profile document with confidentiality clause included in HTML format.", + "Produce a plaintext customer overview without phone number or special requirements." + ] + }, + "tags": [ + "documentation", + "customer", + "profile", + "generate", + "onboarding", + "business" + ], + "examples": [ + { + "inputJson": "{\"customerName\": \"Acme Corporation\", \"contactEmail\": \"contact@acme.com\", \"businessDescription\": \"Supplier of industrial widgets\", \"includeConfidentialityClause\": true, \"documentFormat\": \"markdown\"}", + "description": "Generate a markdown formatted customer document for Acme Corporation including a confidentiality clause." + }, + { + "inputJson": "{\"customerName\": \"Beta LLC\", \"contactEmail\": \"info@beta.com\", \"contactPhone\": \"+1234567890\", \"specialRequirements\": \"Needs weekly status reports\", \"documentFormat\": \"html\"}", + "description": "Create an HTML formatted customer profile for Beta LLC including phone and special requirements." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "documentation-tools.createOpportunity", + "description": "Creates a structured documentation entry for a business opportunity based on input details such as title, description, expected impact, timeline, and stakeholders. Processes input data to generate a consistent opportunity record for inclusion in project documentation or CRM systems.", + "category": "documentation-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the business opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the opportunity, including its background and potential benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedImpact", + "type": "string", + "description": "The anticipated impact or outcome of pursuing this opportunity, e.g., revenue increase, market expansion.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeline", + "type": "string", + "description": "Estimated time frame for capitalizing on this opportunity, including start and end dates or deadlines.", + "required": false, + "defaultValue": "" + }, + { + "name": "stakeholders", + "type": "array", + "description": "List of key stakeholders involved or affected by the opportunity, e.g., teams, partners, clients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority assigned to the opportunity, such as High, Medium, or Low.", + "required": false, + "defaultValue": "Medium" + }, + { + "name": "relatedProjects", + "type": "array", + "description": "Identifiers or names of related projects or initiatives connected to this opportunity.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A structured opportunity document containing all provided inputs organized and formatted for documentation systems." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a standardized documentation entry for a new business opportunity, ensuring consistent formatting and capturing all relevant details for project management or stakeholder communication. It aids in converting raw opportunity information into a polished documentation artifact.", + "limitations": "This tool does not evaluate the viability or strategic value of the opportunity; it only formats and organizes provided data into documentation form.", + "examples": [ + "Create a new opportunity doc titled 'Expand Market to Asia' with description and timeline.", + "Document an opportunity for partnership with vendor X including stakeholders and expected impact.", + "Generate an opportunity entry with high priority relating to new product launch projects." + ] + }, + "tags": [ + "documentation", + "business", + "opportunity", + "create", + "project-management" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Expand Market to Asia\",\"description\":\"Opportunity to increase revenue by entering the Asian market through partnerships and localized marketing.\",\"expectedImpact\":\"Increase revenue by 20% over two years.\",\"timeline\":\"2024-06 to 2026-06\",\"stakeholders\":[\"Marketing Team\",\"Asia Regional Managers\"],\"priorityLevel\":\"High\",\"relatedProjects\":[\"Project Phoenix\"]}", + "description": "Creating an opportunity document for expanding business into the Asian market with relevant metadata." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "documentation-tools.createLead", + "description": "Creates a structured business lead document based on provided input details such as company info, contact person, lead source, and notes. Processes input to generate a formatted lead report suitable for CRM import or sales tracking.", + "category": "documentation-tools", + "parameters": [ + { + "name": "companyName", + "type": "string", + "description": "The name of the company for the lead.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactName", + "type": "string", + "description": "Primary contact person's full name for the lead.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactEmail", + "type": "string", + "description": "Email address of the primary contact person.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactPhone", + "type": "string", + "description": "Phone number of the primary contact person.", + "required": false, + "defaultValue": "" + }, + { + "name": "leadSource", + "type": "string", + "description": "Origin of the lead, e.g., referral, website, conference.", + "required": false, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "Industry sector of the company.", + "required": false, + "defaultValue": "" + }, + { + "name": "estimatedBudget", + "type": "number", + "description": "Estimated budget associated with the lead, if known.", + "required": false, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or comments about the lead.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted lead document with structured fields for downstream use in sales or CRM systems." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a clear, structured business lead document from raw input data including company and contact details. It facilitates consistent lead creation for documentation, sales pipelines, or CRM systems by formatting and validating key information.", + "limitations": "This tool does not perform lead qualification or validation beyond formatting. It cannot verify contact information or enrich lead data from external sources.", + "examples": [ + "Create a lead document for a software company with contact details and a budget estimate.", + "Generate a structured lead record based on new contact info collected at a trade show.", + "Format raw lead data into a standardized document for CRM import." + ] + }, + "tags": [ + "documentation", + "lead", + "business", + "sales", + "CRM", + "create" + ], + "examples": [ + { + "inputJson": "{\"companyName\":\"Acme Corp\",\"contactName\":\"Jane Doe\",\"contactEmail\":\"jane.doe@acmecorp.com\",\"contactPhone\":\"+1234567890\",\"leadSource\":\"Website\",\"industry\":\"Manufacturing\",\"estimatedBudget\":50000,\"notes\":\"Interested in bulk purchase.\"}", + "description": "Creates a lead document for Acme Corp with all provided contact info and an estimated budget." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "documentation-tools.createDiagram", + "description": "Creates a structured diagram image based on specified diagram type and elements. Accepts diagram type (e.g., flowchart, sequence), elements with labels and connections, and styling options. Outputs a diagram image URL or base64 representation usable for embedding in documentation or presentations.", + "category": "documentation-tools", + "parameters": [ + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to create (e.g., flowchart, sequence, class diagram).", + "required": true, + "defaultValue": "" + }, + { + "name": "elements", + "type": "array", + "description": "Array of elements to include in the diagram, each with id, label, and optional properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "connections", + "type": "array", + "description": "Array of connections specifying source and target element ids, and optional label or style.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Optional styling parameters for colors, fonts, and shapes.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output diagram image: 'png', 'svg', or 'base64'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the diagram image data in the requested format and metadata including width and height." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate technical diagrams such as flowcharts, UML diagrams, or sequence diagrams from structured input data for inclusion in documentation or presentations. It is useful for converting text or structured definitions into visual media to aid comprehension.", + "limitations": "This tool does not interpret or infer elements from unstructured text; it requires structured input specifying diagram elements and connections. It cannot create interactive or animated diagrams, only static images.", + "examples": [ + "Create a flowchart diagram showing process steps and decisions with labeled connections.", + "Generate a sequence diagram illustrating interactions between system components.", + "Produce a class diagram with multiple classes and inheritance relationships styled with custom colors." + ] + }, + "tags": [ + "diagram", + "visualization", + "documentation", + "flowchart", + "UML", + "media", + "create", + "technical" + ], + "examples": [ + { + "inputJson": "{\"diagramType\":\"flowchart\",\"elements\":[{\"id\":\"start\",\"label\":\"Start\"},{\"id\":\"process1\",\"label\":\"Process 1\"},{\"id\":\"decision1\",\"label\":\"Decision?\"},{\"id\":\"end\",\"label\":\"End\"}],\"connections\":[{\"source\":\"start\",\"target\":\"process1\"},{\"source\":\"process1\",\"target\":\"decision1\"},{\"source\":\"decision1\",\"target\":\"end\",\"label\":\"Yes\"},{\"source\":\"decision1\",\"target\":\"process1\",\"label\":\"No\"}],\"styleOptions\":{\"color\":\"blue\",\"fontSize\":14},\"outputFormat\":\"png\"}", + "description": "Create a simple flowchart diagram with start, process, decision, and end nodes with labeled connections." + }, + { + "inputJson": "{\"diagramType\":\"sequence\",\"elements\":[{\"id\":\"user\",\"label\":\"User\"},{\"id\":\"system\",\"label\":\"System\"}],\"connections\":[{\"source\":\"user\",\"target\":\"system\",\"label\":\"Request\"},{\"source\":\"system\",\"target\":\"user\",\"label\":\"Response\"}],\"outputFormat\":\"svg\"}", + "description": "Generate a sequence diagram showing interaction between User and System with request and response messages." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "documentation-tools.createScreenshot", + "description": "This tool captures a screenshot of a specified webpage URL or local HTML content. It accepts input parameters such as URL or raw HTML, viewport dimensions, image format, and optional delay before capture. It processes the input by rendering the page in a headless browser and outputs an image file as a base64-encoded string or saves it to a file path.", + "category": "documentation-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to capture. Either url or htmlContent is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to render and capture. Either htmlContent or url is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "viewportWidth", + "type": "number", + "description": "Width of the viewport in pixels for rendering the screenshot.", + "required": false, + "defaultValue": "1280" + }, + { + "name": "viewportHeight", + "type": "number", + "description": "Height of the viewport in pixels for rendering the screenshot.", + "required": false, + "defaultValue": "720" + }, + { + "name": "imageFormat", + "type": "string", + "description": "The image output format. Supported formats: png, jpeg.", + "required": false, + "defaultValue": "png" + }, + { + "name": "delay", + "type": "number", + "description": "Delay in milliseconds before taking the screenshot to allow page elements to load.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "fullPage", + "type": "boolean", + "description": "Whether to capture the entire scrollable page or just the viewport.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputType", + "type": "string", + "description": "Return format of the screenshot: \"base64\" string or \"file\" path.", + "required": false, + "defaultValue": "base64" + }, + { + "name": "outputPath", + "type": "string", + "description": "File path to save the screenshot if outputType is \"file\". Ignored otherwise.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Output containing the screenshot image as a base64-encoded string or file path, depending on outputType parameter. Also includes metadata about the capture." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically capture exact visual snapshots of webpages or HTML content for documentation, bug reports, or UI reviews. Ideal for generating static images to embed in docs or share visual states of dynamic content.", + "limitations": "Cannot interact with or manipulate page elements beyond rendering. Does not support capturing screenshots from non-HTML content directly. Requires internet access for URLs. Complex animations or media may not render fully during capture delay.", + "examples": [ + "Capture a screenshot of the homepage of example.com in PNG base64 format for embedding in documentation.", + "Take a full-page JPEG screenshot of the rendered HTML snippet after a 2-second delay, saving to a file.", + "Capture the viewport-only screenshot of a local HTML string with custom dimensions in PNG format as a base64 string." + ] + }, + "tags": [ + "screenshot", + "documentation", + "webpage", + "html", + "image", + "rendering", + "capture" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"viewportWidth\":1200,\"viewportHeight\":800,\"imageFormat\":\"png\",\"delay\":1000,\"fullPage\":false,\"outputType\":\"base64\"}", + "description": "Capture a 1200x800 PNG screenshot of the viewport of https://example.com with a short delay, returned as base64." + }, + { + "inputJson": "{\"htmlContent\":\"

Test

\",\"viewportWidth\":800,\"viewportHeight\":600,\"imageFormat\":\"jpeg\",\"delay\":500,\"fullPage\":true,\"outputType\":\"file\",\"outputPath\":\"/tmp/test-screenshot.jpg\"}", + "description": "Render given HTML snippet at 800x600, capture full page as JPEG, save to /tmp/test-screenshot.jpg." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Screenshot", + "context": null + } + }, + { + "name": "documentation-tools.createVideo", + "description": "Creates a professional-looking documentation video by combining script text, optional narration audio, and visual assets such as slides or screen captures. It processes input scripts, overlays narration if provided, integrates images or video clips, and outputs a finalized video file suitable for instructional or onboarding purposes.", + "category": "documentation-tools", + "parameters": [ + { + "name": "scriptText", + "type": "string", + "description": "The full text script or narration content to be displayed or spoken in the video, required to guide video content.", + "required": true, + "defaultValue": "" + }, + { + "name": "narrationAudioUrl", + "type": "string", + "description": "Optional URL to an audio file containing narration to sync with the script text; if not provided, subtitles can be generated from scriptText.", + "required": false, + "defaultValue": "" + }, + { + "name": "visualAssets", + "type": "array", + "description": "An array of objects containing visual asset URLs (images, slides, video clips) with optional timestamps to integrate into the video timeline.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired video file format (e.g., mp4, mov, avi) for the output.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "videoResolution", + "type": "string", + "description": "Output video resolution, e.g., '1920x1080', '1280x720'.", + "required": false, + "defaultValue": "1920x1080" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to generate and embed subtitles from the scriptText if no narration is provided.", + "required": false, + "defaultValue": "true" + }, + { + "name": "backgroundMusicUrl", + "type": "string", + "description": "Optional URL to background music audio file to include in video with adjustable volume.", + "required": false, + "defaultValue": "" + }, + { + "name": "backgroundMusicVolume", + "type": "number", + "description": "Volume level for background music from 0 (mute) to 100 (full volume); defaults to 30.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Output object containing the URL of the created video file and metadata such as duration and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a comprehensive documentation or instructional video by combining written scripts, narration, and visual assets, enabling automated video onboarding or tutorial creation workflows.", + "limitations": "Does not support live video recording, advanced animations, or interactive video elements; complex video editing beyond combining provided assets is not supported.", + "examples": [ + "Create a tutorial video from a script and slide images.", + "Generate an onboarding video with narration audio and background music.", + "Produce a silent video with subtitles from script text only." + ] + }, + "tags": [ + "documentation", + "video", + "create", + "media", + "tutorial", + "onboarding", + "automation" + ], + "examples": [ + { + "inputJson": "{\"scriptText\":\"Welcome to the product overview. In this video, we will guide you through the main features.\",\"visualAssets\":[{\"url\":\"https://example.com/slides/slide1.png\",\"timestamp\":0},{\"url\":\"https://example.com/slides/slide2.png\",\"timestamp\":15}],\"outputFormat\":\"mp4\",\"videoResolution\":\"1280x720\",\"includeSubtitles\":true}", + "description": "Create a tutorial video from a script with slide images, subtitles included." + }, + { + "inputJson": "{\"scriptText\":\"This is the installation guide.\",\"narrationAudioUrl\":\"https://example.com/audio/narration.mp3\",\"outputFormat\":\"mp4\",\"backgroundMusicUrl\":\"https://example.com/audio/bg-music.mp3\",\"backgroundMusicVolume\":20}", + "description": "Create a narrated onboarding video with background music at low volume." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "documentation-tools.createFile", + "description": "Creates a new documentation file with specified content, format, and optional metadata. Accepts file name, content text, format type (e.g., markdown, plaintext, html), and optionally a directory path and overwrite permission. Produces the path of the created file and success status.", + "category": "documentation-tools", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the file to create including extension, e.g., README.md", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Text content to write into the new documentation file", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the file content such as 'markdown', 'plaintext', or 'html' which may affect default extensions and encoding", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "directoryPath", + "type": "string", + "description": "Optional directory path where to create the file. Uses current directory if empty", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object indicating success status, full path of created file, and error message if any" + }, + "aiAgent": { + "useCase": "Use this tool when you need to create new documentation files programmatically with specific formats and content, for example generating README files, release notes, or project docs in markdown or HTML. It helps automate documentation creation in code repositories or documentation websites.", + "limitations": "Cannot append to existing files or modify files beyond initial creation; does not validate content correctness or syntax beyond format extension support.", + "examples": [ + "Create a README.md with project overview in markdown.", + "Create an HTML file for API documentation with given HTML code.", + "Create a plain text changelog file in a specific directory without overwriting existing files." + ] + }, + "tags": [ + "documentation", + "file-creation", + "markdown", + "html", + "plaintext", + "automation" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"README.md\",\"content\":\"# Project Title\\nThis is the project description.\",\"format\":\"markdown\",\"directoryPath\":\"docs\",\"overwrite\":true}", + "description": "Create or overwrite a README.md file with markdown content inside the 'docs' directory." + }, + { + "inputJson": "{\"fileName\":\"changelog.txt\",\"content\":\"Version 1.0.1 - Fixed bugs and improved performance.\",\"format\":\"plaintext\",\"directoryPath\":\"\",\"overwrite\":false}", + "description": "Create a plain text changelog file in the current directory without overwriting if it exists." + }, + { + "inputJson": "{\"fileName\":\"api_doc.html\",\"content\":\"

API Documentation

Details here.

\",\"format\":\"html\",\"overwrite\":true}", + "description": "Create an HTML file for API documentation with given HTML content, overwriting if it exists." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "documentation-tools.createAttachment", + "description": "Creates a documentation attachment by accepting a file or media input along with metadata, and outputs a structured attachment object useful for including media in documentation pages, wikis, or knowledge bases.", + "category": "documentation-tools", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the file including extension (e.g., diagram.png).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the attachment (e.g., image/png, application/pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded content of the file to embed as an attachment.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A short description or caption for the attachment, explaining its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "An array of tags or keywords associated with the attachment to facilitate searching and categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "author", + "type": "string", + "description": "Name of the person or system who created or provided the attachment.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing metadata and content reference for the created attachment, including URL placeholder and metadata fields." + }, + "aiAgent": { + "useCase": "Use this tool when you need to add media files like images, PDFs, or diagrams to documentation systems and want to generate a standardized attachment object with metadata and encoded content that can be stored or transmitted.", + "limitations": "This tool does not upload files to remote servers, generate URLs, or convert files between formats. It only packages file data and metadata for documentation use.", + "examples": [ + "Create an image attachment for a UML diagram with a description and tags.", + "Create a PDF attachment for a reference document without a description.", + "Create an icon attachment with specified author information." + ] + }, + "tags": [ + "documentation", + "attachment", + "media", + "file", + "metadata", + "create" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"uml_diagram.png\",\"fileType\":\"image/png\",\"fileContent\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"description\":\"UML class diagram illustrating main components.\",\"tags\":[\"uml\",\"diagram\"],\"author\":\"Alice\"}", + "description": "Create a PNG image attachment for a UML diagram with descriptive metadata and tags." + }, + { + "inputJson": "{\"fileName\":\"reference_manual.pdf\",\"fileType\":\"application/pdf\",\"fileContent\":\"JVBERi0xLjQKJcTl8uXr\",\"description\":\"Reference manual for API usage.\",\"tags\":[],\"author\":\"\"}", + "description": "Create a PDF attachment for a reference manual without specifying tags or author." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "documentation-tools.createAudio", + "description": "Creates narrated audio files for documentation by converting text input or Markdown content into speech. Allows customization of voice, language, speech rate, and audio format. Produces shareable audio files to enhance accessibility and engagement in documentation.", + "category": "documentation-tools", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content or Markdown string to be converted into audio narration.", + "required": true, + "defaultValue": "" + }, + { + "name": "voice", + "type": "string", + "description": "The voice profile or speaker to use for narration (e.g., 'en-US-Wavenet-D').", + "required": false, + "defaultValue": "en-US-Wavenet-D" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the narration voice (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "speechRate", + "type": "number", + "description": "Speed of speech, where 1.0 is normal rate. Values <1.0 are slower, >1.0 are faster.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Output audio file format, e.g., 'mp3', 'wav', or 'ogg'.", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "backgroundMusic", + "type": "string", + "description": "Optional URL or file path to background music to mix with the narration.", + "required": false, + "defaultValue": "" + }, + { + "name": "volume", + "type": "number", + "description": "Audio output volume level from 0.0 (mute) to 1.0 (maximum).", + "required": false, + "defaultValue": "1.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL or base64 string of the generated audio file and metadata including duration and format." + }, + "aiAgent": { + "useCase": "Use this tool when generating audio versions of text-based documentation, tutorial scripts, or help content to increase accessibility and user engagement. It's suitable for producing multilingual and multi-voice narrations adjustable for different speech rates and audio formats.", + "limitations": "This tool cannot generate audio directly from images or video content. It does not perform speech-to-text transcription or support real-time streaming audio generation.", + "examples": [ + "Create an mp3 audio narration of a Markdown README file using an American English voice.", + "Generate a slower-paced WAV audio file from a product user guide text input with background music.", + "Produce a short OGG audio clip of a help article in British English voice with default speech rate." + ] + }, + "tags": [ + "documentation", + "audio", + "text-to-speech", + "narration", + "accessibility" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to the project documentation. This section covers the installation steps.\",\"voice\":\"en-US-Wavenet-C\",\"speechRate\":1.0,\"audioFormat\":\"mp3\"}", + "description": "Generate an MP3 narration of a short documentation text with a US English female voice." + }, + { + "inputJson": "{\"text\":\"# User Guide\\nPlease follow these steps carefully to set up your environment.\",\"voice\":\"en-GB-Wavenet-B\",\"language\":\"en-GB\",\"speechRate\":0.9,\"audioFormat\":\"wav\",\"volume\":0.8}", + "description": "Create a British English WAV audio file of a Markdown user guide with slightly slower speech and reduced volume." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "documentation-tools.createMarkdown", + "description": "Generates well-structured Markdown documents based on provided title, sections, and optional metadata. Accepts inputs like document title, array of sections each with headings and content, and optional frontmatter metadata. Outputs a Markdown formatted string ready for documentation files or README creation.", + "category": "documentation-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the Markdown document, rendered as a top-level header.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of sections where each section is an object containing a heading and content for the section.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeFrontmatter", + "type": "boolean", + "description": "Whether to include YAML frontmatter in the output for metadata purposes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "An optional key-value object for YAML frontmatter metadata if includeFrontmatter is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'markdown' key with the generated Markdown string as the value." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate Markdown documents such as README files, user guides, or documentation from structured input data. Ideal for automating documentation workflows where content is assembled from discrete sections and metadata.", + "limitations": "This tool only generates Markdown text; it does not render or preview the Markdown. Complex formatting like tables or embedded media requires manual input within section content.", + "examples": [ + "Create a README with a title and multiple sections like Introduction and Installation.", + "Generate a user guide with a YAML frontmatter including author and date.", + "Produce a Markdown summary document from structured notes." + ] + }, + "tags": [ + "documentation", + "markdown", + "generate", + "content creation", + "README" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Project Overview\",\"sections\":[{\"heading\":\"Introduction\",\"content\":\"This project aims to...\"},{\"heading\":\"Setup\",\"content\":\"Follow these steps to install.\"}],\"includeFrontmatter\":true,\"metadata\":{\"author\":\"Jane Doe\",\"date\":\"2024-06-01\"}}", + "description": "Generating a README.md file with frontmatter metadata, a project title, and multiple sections." + }, + { + "inputJson": "{\"title\":\"API Documentation\",\"sections\":[{\"heading\":\"Endpoints\",\"content\":\"Details of all API endpoints.\"},{\"heading\":\"Authentication\",\"content\":\"Method to authenticate requests.\"}],\"includeFrontmatter\":false}", + "description": "Creating an API documentation Markdown file without frontmatter, including several sections." + } + ], + "qualityScore": 1, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "documentation-tools.createHTML", + "description": "Generates a complete HTML document string based on given parameters including title, body content, optional CSS styles, and scripts. Accepts structured input for document sections and produces a well-formed HTML string ready for saving or embedding.", + "category": "documentation-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the HTML document shown in the browser tab.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyContent", + "type": "string", + "description": "HTML content to be placed inside the tag of the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "cssStyles", + "type": "string", + "description": "Optional CSS styles to embed inside a \",\"inlineStyles\":[\"p { color: red; }\"],\"nonce\":\"abc123\"}", + "description": "Includes inline styles with a CSP nonce." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "security-tools.createSpec", + "description": "This tool generates a comprehensive security specification document based on provided application architecture details, security requirements, and compliance standards. Users input system components, threat models, and desired security controls; the tool processes these to produce a detailed security spec outlining risks, mitigations, and implementation recommendations.", + "category": "security-tools", + "parameters": [ + { + "name": "applicationArchitecture", + "type": "object", + "description": "Detailed description of the application's components, data flows, and infrastructure setup.", + "required": true, + "defaultValue": "" + }, + { + "name": "securityRequirements", + "type": "array", + "description": "List of the security requirements and goals the application must satisfy, e.g., confidentiality, integrity, availability.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "Applicable regulatory and compliance standards to incorporate, e.g., GDPR, HIPAA, PCI-DSS.", + "required": false, + "defaultValue": "" + }, + { + "name": "threatModels", + "type": "array", + "description": "Threat modeling inputs identifying potential risks and attack vectors relevant to the system.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the security specification document, e.g., PDF, Markdown, HTML.", + "required": false, + "defaultValue": "PDF" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated security specification document content as a string and metadata such as format and summary." + }, + "aiAgent": { + "useCase": "AI agents should invoke this tool when tasked with creating or updating security specification documents that define the security posture and controls for software systems based on architecture and risk inputs. It helps automate documentation needed for security reviews, audits, and development guidance.", + "limitations": "This tool does not perform real-time vulnerability scanning or penetration testing; it only generates specifications based on provided inputs. It cannot guarantee compliance or security without human expert review.", + "examples": [ + "Create a security spec for a web app with microservices architecture ensuring PCI-DSS compliance.", + "Generate a security specification document including threat analysis for a healthcare data platform.", + "Produce a Markdown format security spec based on given application architecture and GDPR requirements." + ] + }, + "tags": [ + "security", + "documentation", + "compliance", + "risk-management", + "specification", + "automation" + ], + "examples": [ + { + "inputJson": "{\"applicationArchitecture\":{\"components\":[{\"name\":\"WebApp\",\"type\":\"frontend\"},{\"name\":\"API\",\"type\":\"backend\"},{\"name\":\"Database\",\"type\":\"storage\"}],\"dataFlows\":[{\"from\":\"WebApp\",\"to\":\"API\"},{\"from\":\"API\",\"to\":\"Database\"}]},\"securityRequirements\":[\"confidentiality\",\"integrity\",\"availability\"],\"complianceStandards\":[\"PCI-DSS\"],\"threatModels\":[{\"threat\":\"SQL Injection\",\"severity\":\"high\"}],\"outputFormat\":\"PDF\"}", + "description": "Generate a PCI-DSS compliant security spec for a web app architecture with threat modeling." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "legal-tools.generateDocument", + "description": "Generates a tailored legal document based on the specified document type and input details. Accepts documentType (e.g., NDA, contract, will), relevant parties' information, key terms, and optional clauses as inputs. Outputs a complete, formatted legal document text ready for review or signing.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of legal document to generate (e.g., NDA, employment contract, lease agreement).", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "Array of party objects involved in the document, each with name and role properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyTerms", + "type": "object", + "description": "Key terms and conditions specific to the document type, such as dates, payment terms, and obligations.", + "required": true, + "defaultValue": "" + }, + { + "name": "optionalClauses", + "type": "array", + "description": "List of optional clauses to include, specified as strings, such as confidentiality, termination, or arbitration clauses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Jurisdiction or governing law applicable to the document, to ensure compliance with local legal standards.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated legal document text and metadata such as documentType and parties involved." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly create a standardized legal document tailored to specific parties and terms, such as NDAs, contracts, or agreements, ensuring consistency and reducing manual drafting time.", + "limitations": "Does not replace professional legal advice; may not cover all jurisdiction-specific requirements or handle highly complex bespoke agreements; legality depends on final review and compliance check.", + "examples": [ + "Generate an NDA between two companies with confidentiality and termination clauses.", + "Create an employment contract specifying job title, salary, and probation period.", + "Draft a lease agreement including rent, term, and maintenance responsibilities." + ] + }, + "tags": [ + "legal", + "document generation", + "contract", + "compliance", + "agreement", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"NDA\",\"parties\":[{\"name\":\"Company A\",\"role\":\"Disclosing Party\"},{\"name\":\"Company B\",\"role\":\"Receiving Party\"}],\"keyTerms\":{\"startDate\":\"2024-07-01\",\"durationMonths\":24},\"optionalClauses\":[\"confidentiality\",\"termination\"],\"jurisdiction\":\"California, USA\"}", + "description": "Generate a Non-Disclosure Agreement between two companies with confidentiality and termination clauses under California law." + }, + { + "inputJson": "{\"documentType\":\"Employment Contract\",\"parties\":[{\"name\":\"John Doe\",\"role\":\"Employee\"},{\"name\":\"ABC Corp\",\"role\":\"Employer\"}],\"keyTerms\":{\"position\":\"Software Engineer\",\"salary\":90000,\"probationPeriodMonths\":3},\"optionalClauses\":[\"nonCompete\"],\"jurisdiction\":\"New York, USA\"}", + "description": "Create an employment contract for a software engineer including salary and probation period with a non-compete clause." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "customer-support.analyzeTable", + "description": "Analyzes tabular customer support data (e.g., tickets, chat logs, survey results) to identify key metrics like common issues, response times, sentiment trends, and agent performance. Accepts data tables in JSON array format and outputs a structured analysis report with actionable insights to improve support quality.", + "category": "customer-support", + "parameters": [ + { + "name": "dataTable", + "type": "array", + "description": "An array of objects representing customer support records, such as tickets or chat logs, each with relevant fields like 'issue', 'responseTime', 'sentiment', and 'agent'.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Specifies the type of analysis to perform, e.g., 'summary', 'trend', 'sentiment', or 'agentPerformance'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object with 'startDate' and 'endDate' strings in ISO format to filter data within a date range.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis results in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "topNIssues", + "type": "number", + "description": "Number of top frequent issues to identify and highlight.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report containing metrics like issue frequencies, average response times, sentiment distribution, trend charts data, and agent performance summaries depending on selected analysisType." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing structured customer support data tables to extract actionable insights like top issues, customer sentiment trends, and agent response quality, helping improve overall support effectiveness.", + "limitations": "Does not perform raw data extraction or unstructured text parsing; input must be pre-structured JSON arrays representing tabular data. Complex natural language understanding beyond basic sentiment analysis is not supported.", + "examples": [ + "Analyze summary metrics from last quarter's support tickets to find common problems.", + "Identify sentiment trends over the past month in chat support logs.", + "Evaluate agent performance metrics based on resolution times and customer feedback." + ] + }, + "tags": [ + "customer-support", + "analysis", + "data-table", + "sentiment", + "agent-performance", + "metrics", + "support-tickets" + ], + "examples": [ + { + "inputJson": "{\"dataTable\":[{\"issue\":\"Login failure\",\"responseTime\":120,\"sentiment\":\"negative\",\"agent\":\"Alice\"},{\"issue\":\"Password reset\",\"responseTime\":90,\"sentiment\":\"neutral\",\"agent\":\"Bob\"},{\"issue\":\"Login failure\",\"responseTime\":110,\"sentiment\":\"negative\",\"agent\":\"Alice\"}],\"analysisType\":\"summary\",\"topNIssues\":2}", + "description": "Summarize the most frequent issues, average response times, and sentiment for a small support ticket dataset." + }, + { + "inputJson": "{\"dataTable\":[{\"date\":\"2024-05-01\",\"sentimentScore\":0.2},{\"date\":\"2024-05-02\",\"sentimentScore\":0.7},{\"date\":\"2024-05-03\",\"sentimentScore\":0.5}],\"analysisType\":\"sentiment\",\"timeRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-03\"},\"includeSentiment\":true}", + "description": "Analyze sentiment trend over 3 days from chat support logs." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "customer-support.draftReport", + "description": "This tool generates a comprehensive customer support report based on provided case data. It accepts an array of customer interactions, including timestamps, issue categories, agent notes, and resolutions, then compiles a structured report summarizing trends, outstanding issues, and agent performance metrics in text format.", + "category": "customer-support", + "parameters": [ + { + "name": "caseData", + "type": "array", + "description": "Array of customer support case objects containing interaction details, issue type, agent handling, timestamps, and resolution status.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Specifies the type of report to generate, e.g., 'summary', 'detailed', or 'performance'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "dateRange", + "type": "object", + "description": "Object with 'startDate' and 'endDate' string fields in ISO format to filter case data by date.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include AI-generated recommendations for improving support processes in the report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report text and metadata such as reportType, totalCases analyzed, and key issue summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to synthesize multiple customer support interactions into a readable report that highlights trends, performance insights, or issue summaries over a specified timeframe. It helps automate generating routine support reports for managers or QA teams.", + "limitations": "Cannot replace detailed human analysis; insights are limited to provided data quality. It does not perform actual customer sentiment analysis or handle real-time case tracking.", + "examples": [ + "Generate a monthly summary report of all support tickets closed in May.", + "Create a detailed report focusing on agent performance during the last quarter.", + "Draft a report including recommendations for reducing resolution times based on last week's cases." + ] + }, + "tags": [ + "reporting", + "customer-support", + "summary", + "performance", + "automation" + ], + "examples": [ + { + "inputJson": "{\"caseData\":[{\"caseId\":\"1234\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"issueCategory\":\"Login Problem\",\"agent\":\"Agent A\",\"resolution\":\"Password reset\",\"status\":\"Closed\"},{\"caseId\":\"1235\",\"timestamp\":\"2024-05-02T11:30:00Z\",\"issueCategory\":\"Billing\",\"agent\":\"Agent B\",\"resolution\":\"Refund issued\",\"status\":\"Closed\"}],\"reportType\":\"summary\",\"dateRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"},\"includeRecommendations\":false}", + "description": "Generate a summary report of support cases closed in May." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "customer-support.formatContract", + "description": "Formats a customer contract document by applying standardized templates and styles. Accepts raw contract text and formatting preferences, processes them to produce a polished, consistently styled contract ready for presentation or storage.", + "category": "customer-support", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "The raw text content of the contract to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateStyle", + "type": "string", + "description": "The name of the template style to apply (e.g., 'Standard', 'Professional', 'Minimalist').", + "required": false, + "defaultValue": "Standard" + }, + { + "name": "includeSignatureBlock", + "type": "boolean", + "description": "Whether to append a signature block section at the end of the contract.", + "required": false, + "defaultValue": "true" + }, + { + "name": "companyName", + "type": "string", + "description": "The name of the company issuing the contract, used in headers or footers if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Optional effective date to include in the contract in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract text as HTML and optionally as plain text for further use." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to take a raw or partially drafted contract text and produce a visually structured and consistent contract document for customer review or record keeping. This is useful for automating contract generation workflows with styling and optional signature sections.", + "limitations": "This tool does not analyze legal content or validate contract terms; it only formats text according to templates. It cannot generate contract content from scratch or interpret contract clauses.", + "examples": [ + "Format a raw contract text with the 'Professional' style and include a signature block.", + "Prepare a contract with company name and effective date included, using default template.", + "Format a contract without a signature block for an internal draft." + ] + }, + "tags": [ + "formatting", + "customer-support", + "contracts", + "document-generation", + "templates", + "legal-documents" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This agreement is made between...\",\"templateStyle\":\"Professional\",\"includeSignatureBlock\":true,\"companyName\":\"ACME Corp\",\"effectiveDate\":\"2024-06-01\"}", + "description": "Format a contract with professional style, including company name, effective date, and signature block." + }, + { + "inputJson": "{\"contractText\":\"Terms and conditions...\",\"templateStyle\":\"Minimalist\",\"includeSignatureBlock\":false}", + "description": "Generate a minimalist style contract without a signature block for internal use." + }, + { + "inputJson": "{\"contractText\":\"Contract content here.\",\"companyName\":\"Beta LLC\"}", + "description": "Format contract using default template, including company name, with signature block by default." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "customer-support.composeText", + "description": "Generates professionally crafted customer support text responses based on input parameters including customer query, context, tone, and language. Processes input to produce tailored, polite, and contextually relevant message drafts suitable for help desk and support agents to send.", + "category": "customer-support", + "parameters": [ + { + "name": "customerQuery", + "type": "string", + "description": "The customer's original query or issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextDetails", + "type": "string", + "description": "Additional context to understand the customer's situation or prior interactions.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the response text (e.g., formal, friendly, empathetic).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the response (e.g., en, es, fr).", + "required": false, + "defaultValue": "en" + }, + { + "name": "responseType", + "type": "string", + "description": "Type of response to compose (e.g., apology, information, instruction, escalation).", + "required": false, + "defaultValue": "information" + }, + { + "name": "includeFAQLinks", + "type": "boolean", + "description": "Whether to include relevant FAQ or knowledge base links in the response.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed text message fitting the input parameters and ready for sending to the customer." + }, + "aiAgent": { + "useCase": "Use this tool when a customer support AI agent needs to draft clear, polite, and contextually appropriate response messages customized for the customer's query, tone preferences, and language. It aids in faster, high-quality message composition for support tickets and live chats.", + "limitations": "Cannot replace human judgment for complex cases requiring manual investigation or sensitive handling. It generates text drafts, but factual correctness and policy compliance should be verified before sending.", + "examples": [ + "Compose a friendly apology message addressing a delayed shipment query.", + "Write a brief technical instruction in Spanish to troubleshoot a connectivity issue.", + "Generate a formal escalation notice including FAQ links for an unresolved billing complaint." + ] + }, + "tags": [ + "customer-support", + "text-composition", + "response-generation", + "multilingual", + "tone-adaptive" + ], + "examples": [ + { + "inputJson": "{\"customerQuery\":\"My order hasn’t arrived and it’s already past the estimated delivery date.\",\"tone\":\"empathetic\",\"responseType\":\"apology\",\"includeFAQLinks\":true}", + "description": "Compose an empathetic apology message addressing a delayed order and including helpful FAQ links." + }, + { + "inputJson": "{\"customerQuery\":\"How do I reset my password?\",\"language\":\"en\",\"responseType\":\"instruction\"}", + "description": "Generate clear step-by-step instructions in English for a password reset query." + }, + { + "inputJson": "{\"customerQuery\":\"Tengo problemas para conectar a mi cuenta.\",\"language\":\"es\",\"tone\":\"formal\"}", + "description": "Write a formal response in Spanish for a connectivity issue reported by a customer." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "customer-support.generateArticle", + "description": "Generates a detailed customer support article based on a given topic, issue description, and optional target audience or product context. Accepts textual inputs describing the problem or feature and outputs a structured, easy-to-understand article that can be published to help centers or FAQs.", + "category": "customer-support", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main topic or issue that the article should address, e.g., 'Password Reset' or 'Using Multi-Factor Authentication'.", + "required": true, + "defaultValue": "" + }, + { + "name": "issueDescription", + "type": "string", + "description": "A detailed description of the issue or subject matter that needs support documentation, including common questions or troubleshooting steps.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Optional. The intended audience for the article, such as 'end users', 'administrators', or 'developers'.", + "required": false, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Optional. The specific product or service name to tailor the article content accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTroubleshootingSteps", + "type": "boolean", + "description": "Whether to include a troubleshooting section with common fixes and diagnostics steps in the article.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language code for the generated article, e.g., 'en' for English, 'es' for Spanish. Defaults to English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated support article with title, content body formatted in markdown, and optionally sections like troubleshooting and FAQs." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate clear, user-friendly customer support articles from brief problem descriptions or topics. Ideal for maintaining or expanding help center documentation without manual writing.", + "limitations": "The generated article may need review for accuracy, compliance, and style consistency. It cannot replace expert technical manuals or guarantee resolution for all complex issues.", + "examples": [ + "Generate an article on resetting passwords for end users.", + "Create a support article explaining multi-factor authentication setup for administrators.", + "Produce a troubleshooting guide about login failures on ProductX." + ] + }, + "tags": [ + "customer-support", + "documentation", + "article-generation", + "help-center", + "knowledge-base", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Password Reset\",\"issueDescription\":\"Steps users need to follow in order to reset their forgotten passwords securely.\",\"targetAudience\":\"end users\",\"productName\":\"ExampleApp\",\"includeTroubleshootingSteps\":true,\"language\":\"en\"}", + "description": "Generate a comprehensive article guiding end users on how to reset their passwords in ExampleApp, including troubleshooting tips." + }, + { + "inputJson": "{\"topic\":\"Multi-Factor Authentication Setup\",\"issueDescription\":\"How administrators can enable and configure MFA for user accounts to improve security.\",\"targetAudience\":\"administrators\",\"productName\":\"SecurePortal\",\"includeTroubleshootingSteps\":false,\"language\":\"en\"}", + "description": "Create an instructional article for administrators on setting up MFA in SecurePortal, without troubleshooting sections." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "customer-support.createLink", + "description": "Creates a customizable hyperlink for use in customer support communications or help desk systems. Accepts parameters to define the link URL, display text, optionally set target behaviors, tracking parameters, and accessibility attributes. Outputs a formatted HTML anchor tag string ready to embed in messages, emails, or web content.", + "category": "customer-support", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The destination URL the link will point to, must be a valid HTTP(s) URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "The text that will be displayed for the link to customers or users.", + "required": true, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Determines if the link should open in a new browser tab when clicked.", + "required": false, + "defaultValue": "false" + }, + { + "name": "trackingCode", + "type": "string", + "description": "Optional tracking code or UTM parameters appended to the URL for analytics purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "ariaLabel", + "type": "string", + "description": "Optional ARIA label to improve accessibility by providing descriptive text for screen readers.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete HTML anchor tag string for embedding in customer support content, with all specified attributes and encoding applied." + }, + "aiAgent": { + "useCase": "Use this tool when generating hyperlinks to include in customer support tickets, chat messages, FAQs or email templates. It enables dynamically creating accessible and trackable links that improve user interaction and analytics in customer support contexts.", + "limitations": "This tool does not validate the safety or legitimacy of URLs beyond basic schema checks, nor does it generate shortened URLs automatically.", + "examples": [ + "Create a link to a troubleshooting article opening in a new tab with tracking for newsletter clicks.", + "Generate a plain link with custom display text for embedding in a live chat response.", + "Create an accessible link with an ARIA label describing the destination clearly for screen reader users." + ] + }, + "tags": [ + "customer-support", + "link-creation", + "html", + "accessibility", + "tracking", + "communication" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://support.example.com/help/123\",\"displayText\":\"Help Article\",\"openInNewTab\":true,\"trackingCode\":\"?utm_source=newsletter&utm_medium=email\",\"ariaLabel\":\"Open Help Article about troubleshooting\"}", + "description": "Creates a tracked hyperlink to a help article that opens in a new tab with accessibility label." + }, + { + "inputJson": "{\"url\":\"https://faq.example.com\",\"displayText\":\"FAQ\",\"openInNewTab\":false,\"trackingCode\":\"\",\"ariaLabel\":\"\"}", + "description": "Creates a simple inline hyperlink to FAQ without new tab or tracking." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "marketing-automation.uploadImage", + "description": "Uploads an image file to the marketing automation platform for use in campaigns, landing pages, or advertisements. Accepts an image file path or URL, processes it to validate format and size, and returns an image ID and metadata confirming successful upload.", + "category": "marketing-automation", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "URL of the image to upload if available online. Either imageUrl or imageFilePath is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageFilePath", + "type": "string", + "description": "Local file path to the image to upload. Either imageFilePath or imageUrl is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageName", + "type": "string", + "description": "Optional name or title to assign to the uploaded image for easy identification.", + "required": false, + "defaultValue": "" + }, + { + "name": "altText", + "type": "string", + "description": "Alternative text description for accessibility and SEO purposes, associated with the image.", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Optional target width in pixels to resize the image maintaining aspect ratio before upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Optional target height in pixels to resize the image maintaining aspect ratio before upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of tags or keywords to categorize the image within the marketing system.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing details about the uploaded image including a unique image ID, URL, dimensions, and confirmation status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload images into a marketing platform for use in campaigns, newsletters, landing pages, or advertisements. It handles image validation, optional resizing, and returns metadata needed for referencing the image in further marketing activities.", + "limitations": "This tool cannot edit images beyond resizing, cannot upload unsupported file formats, and does not manage image copyright or licensing.", + "examples": [ + "Upload a local promotional banner image and assign descriptive alt text.", + "Upload an image from an external URL to be used in an email campaign.", + "Resize a product photo to specific dimensions before uploading to the media library." + ] + }, + "tags": [ + "marketing", + "image", + "upload", + "automation", + "media", + "campaign", + "resize" + ], + "examples": [ + { + "inputJson": "{\"imageFilePath\":\"/user/photos/spring_sale.jpg\",\"imageName\":\"Spring Sale Banner\",\"altText\":\"Banner promoting spring sale discounts\",\"resizeWidth\":1200,\"tags\":[\"sale\",\"spring\",\"banner\"]}", + "description": "Upload a local spring sale banner image with resize and tags." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/images/product1.png\",\"altText\":\"New product image\",\"tags\":[\"product\",\"launch\"]}", + "description": "Upload product image from URL with alt text and tags." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "marketing-automation.formatJSON", + "description": "Formats and validates marketing campaign data represented as JSON. Accepts raw JSON input along with options for indentation, sorting keys, and removing null or empty values, then outputs a neatly formatted JSON string ready for reporting or further processing.", + "category": "marketing-automation", + "parameters": [ + { + "name": "rawJson", + "type": "string", + "description": "Raw JSON string containing marketing campaign data to format and validate.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces for indentation in the output formatted JSON.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "If true, keys in all objects are sorted alphabetically in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "removeEmptyValues", + "type": "boolean", + "description": "If true, removes keys with null, empty string, or empty array values from the output JSON.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string and a boolean flag indicating whether the input was valid JSON." + }, + "aiAgent": { + "useCase": "Use this tool when you have marketing campaign data in raw or messy JSON format that needs to be validated and consistently formatted before analytics, reporting, or import into other systems. It helps clean and standardize JSON data automatically.", + "limitations": "This tool does not perform semantic validation or enrichment of marketing data (e.g., no campaign performance analysis). It only formats and cleans JSON structure.", + "examples": [ + "Format raw JSON marketing campaign data with 4 spaces indentation.", + "Sort keys alphabetically and remove empty values from the JSON input.", + "Validate a JSON string and output a neatly indented version for reporting." + ] + }, + "tags": [ + "marketing", + "automation", + "json", + "formatting", + "data-cleaning", + "campaign-data" + ], + "examples": [ + { + "inputJson": "{\"rawJson\":\"{\\\"campaign\\\":\\\"Spring Sale\\\",\\\"startDate\\\":\\\"2024-04-01\\\",\\\"budget\\\":null}\",\"indentation\":4,\"sortKeys\":false,\"removeEmptyValues\":true}", + "description": "Format JSON with 4 spaces indentation and remove keys with null values." + }, + { + "inputJson": "{\"rawJson\":\"{\\\"budget\\\":5000,\\\"campaign\\\":\\\"Holiday Promo\\\",\\\"channels\\\":[\\\"email\\\",\\\"social\\\"]}\",\"indentation\":2,\"sortKeys\":true,\"removeEmptyValues\":false}", + "description": "Format and sort keys alphabetically with 2 spaces indentation." + }, + { + "inputJson": "{\"rawJson\":\"{\\\"campaign\\\":\\\"Launch\\\",\\\"details\\\":{\\\"startDate\\\":\\\"2024-06-01\\\",\\\"endDate\\\":\\\"2024-06-30\\\"},\\\"notes\\\":\\\"\\\"}\",\"indentation\":2,\"sortKeys\":false,\"removeEmptyValues\":true}", + "description": "Format JSON removing empty string values without sorting keys." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "marketing-automation.generateLink", + "description": "Generates a personalized marketing URL with embedded tracking parameters based on campaign details, target audience segments, and optional custom tags. Accepts base URL and marketing parameters, processes them to append UTM tags and personalized tokens, outputs a trackable, ready-to-use link for campaign distribution.", + "category": "marketing-automation", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The original URL to which tracking parameters will be appended.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignName", + "type": "string", + "description": "The name of the marketing campaign for UTM tagging and identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Marketing source (e.g., newsletter, social, paid) to include in tracking parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "medium", + "type": "string", + "description": "Marketing medium (e.g., email, cpc, banner) for UTM parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "term", + "type": "string", + "description": "Keyword term for paid search campaigns, added to the URL as a UTM parameter.", + "required": false, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Content descriptor for differentiating ads or links pointing to the same URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "audienceSegment", + "type": "string", + "description": "Identifier for the targeted audience segment, embedded as a URL parameter for personalization or tracking.", + "required": false, + "defaultValue": "" + }, + { + "name": "customParameters", + "type": "object", + "description": "Additional custom key-value parameters to append to the URL for advanced tracking or personalization.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated URL as a string with all specified tracking and custom parameters properly URL-encoded and appended." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate marketing campaign URLs with UTM and custom tracking parameters for accurate source attribution and audience segmentation in analytics platforms. Ideal for automating link generation across multiple campaigns, mediums, or audience groups.", + "limitations": "Does not validate the target URL's reachability or the correctness of marketing parameter values; does not shorten URLs; assumes parameters are URL-safe strings or appropriately encoded.", + "examples": [ + "Generate a URL for a new email campaign targeting segment A with custom parameters for A/B testing.", + "Create trackable links for a paid social campaign with differing content tags for multiple ads.", + "Produce personalized URLs embedding audience segment IDs for dynamic website content delivery." + ] + }, + "tags": [ + "marketing", + "automation", + "URL generation", + "tracking", + "campaign", + "UTM", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://example.com/landing\",\"campaignName\":\"spring_sale\",\"source\":\"newsletter\",\"medium\":\"email\",\"term\":\"discount\",\"content\":\"header_banner\",\"audienceSegment\":\"segmentA\",\"customParameters\":{\"ref\":\"newsletter_01\",\"promoCode\":\"SPRING10\"}}", + "description": "Generating a trackable link for a spring sale email campaign with keywords, content differentiation, audience segmentation, and custom promo codes." + }, + { + "inputJson": "{\"baseUrl\":\"https://shop.example.com/product\",\"campaignName\":\"summer_launch\",\"source\":\"social\",\"medium\":\"cpc\",\"content\":\"video_ad\",\"customParameters\":{\"creativeId\":\"vid123\",\"placement\":\"feed_top\"}}", + "description": "Create a tracked URL for a paid social campaign with custom ad creative identifiers for an e-commerce product launch." + }, + { + "inputJson": "{\"baseUrl\":\"https://example.com/signup\",\"campaignName\":\"webinar_invite\",\"source\":\"paid_search\",\"medium\":\"cpc\",\"term\":\"webinar+signup\"}", + "description": "Generate a URL for a paid search campaign targeting webinar sign-ups with specific keyword tracking." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "marketing-automation.createArticle", + "description": "Generates a marketing article based on provided topic, target audience, keywords, and tone. Accepts structured input parameters to guide content style and focus. Outputs a fully formed article text suitable for use in marketing campaigns or blogs.", + "category": "marketing-automation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the article to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers or customer segment for the article.", + "required": false, + "defaultValue": "general public" + }, + { + "name": "keywords", + "type": "array", + "description": "List of important keywords or phrases to include within the article content for SEO or emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the article, e.g., formal, casual, persuasive, informative.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate length of the article in words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to append a marketing call-to-action at the end of the article.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text, title, and optionally summary or key points." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate marketing articles tailored to specific topics, audience segments, and SEO strategies. Ideal for automating content creation workflows or dynamically producing blog posts and campaign materials based on structured inputs.", + "limitations": "The tool cannot verify factual accuracy or provide complex data analysis. It may produce generic or repetitive content if inputs are too vague or broad.", + "examples": [ + "Create a 700-word persuasive article about eco-friendly packaging targeted at young adults with keywords: sustainable, biodegradable, green packaging.", + "Generate an informative blog post about digital marketing trends including keywords: SEO, social media, content marketing, tone formal.", + "Produce a short 300-word article introducing a new product launch with a casual tone and a call-to-action to visit the website." + ] + }, + "tags": [ + "marketing", + "content-generation", + "article-writing", + "SEO", + "automation", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work\",\"targetAudience\":\"HR managers\",\"keywords\":[\"remote work\",\"productivity\",\"flexibility\"],\"tone\":\"informative\",\"wordCount\":600,\"includeCallToAction\":true}", + "description": "Generate an informative article on the benefits of remote work for HR managers, including key SEO keywords and a call-to-action." + }, + { + "inputJson": "{\"topic\":\"New vegan protein powder launch\",\"targetAudience\":\"fitness enthusiasts\",\"keywords\":[\"vegan protein\",\"plant-based\",\"healthy lifestyle\"],\"tone\":\"persuasive\",\"wordCount\":500,\"includeCallToAction\":true}", + "description": "Create a persuasive marketing article introducing a new vegan protein powder, targeting fitness enthusiasts with relevant keywords and CTA." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "sales-automation.createOrder", + "description": "Creates a new sales order by accepting customer details, a list of products with quantities, and payment information. It processes the input to generate a validated order record with pricing, taxes, and order ID, then returns the complete order summary including status and estimated delivery.", + "category": "sales-automation", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier of the customer placing the order.", + "required": true, + "defaultValue": "" + }, + { + "name": "products", + "type": "array", + "description": "Array of objects representing products to order, each with productId (string) and quantity (number).", + "required": true, + "defaultValue": "" + }, + { + "name": "shippingAddress", + "type": "object", + "description": "Shipping address details including street, city, state, postalCode, and country.", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Type of payment method chosen, e.g., credit_card, paypal, or bank_transfer.", + "required": true, + "defaultValue": "" + }, + { + "name": "promoCode", + "type": "string", + "description": "Optional promotional code to apply discounts to the order.", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityShipping", + "type": "boolean", + "description": "Flag indicating whether the order should be shipped with priority handling.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the orderId, customerId, list of purchased items with prices, total amount including taxes and discounts, order status, estimated delivery date, and payment confirmation details." + }, + "aiAgent": { + "useCase": "Use when you need to automate the creation of a sales order from structured input including customer info, product selections, and payment details. Ideal for CRM or sales workflow integration to generate validated orders and provide confirmation data.", + "limitations": "This tool does not process payment transactions or handle inventory stock validation beyond basic checks. It assumes product IDs and customer IDs are valid and exists in the system.", + "examples": [ + "CreateOrder for customer 123 with 2 units of product A and 1 unit of product B, paying via credit card.", + "Generate a priority shipping order applying a promo code for a returning customer with shipping address updated.", + "Make a bulk order without promo code but with bank_transfer payment method and standard shipping." + ] + }, + "tags": [ + "sales", + "orderManagement", + "automation", + "leadConversion", + "customerOrders", + "paymentProcessing" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"cust_001\",\"products\":[{\"productId\":\"prod_100\",\"quantity\":2},{\"productId\":\"prod_101\",\"quantity\":1}],\"shippingAddress\":{\"street\":\"123 Elm St\",\"city\":\"Springfield\",\"state\":\"IL\",\"postalCode\":\"62704\",\"country\":\"USA\"},\"paymentMethod\":\"credit_card\",\"promoCode\":\"SUMMER21\",\"priorityShipping\":true}", + "description": "Create a priority shipping order for customer cust_001 buying 2 units of prod_100 and 1 unit of prod_101 using a promo code and credit card payment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "finance-tools.generateText", + "description": "Generates customized financial reports or summary texts based on input data such as transaction history, account balances, or investment portfolios. Processes the provided financial data and templates to produce clear, concise textual outputs suitable for reports, presentations, or client updates.", + "category": "finance-tools", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "Type of financial report or summary text to generate, e.g., 'monthly statement', 'investment summary', or 'budget analysis'.", + "required": true, + "defaultValue": "" + }, + { + "name": "financialData", + "type": "object", + "description": "Structured financial data object including transactions, balances, or other numerical information to base the text on.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language for the generated text output, e.g., 'en' for English, 'es' for Spanish.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Indicates whether to include textual descriptions of charts or graphs in the generated text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "dateRange", + "type": "object", + "description": "Date range filter for the financial data to be included in the report, with 'start' and 'end' date strings in ISO format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text string as 'reportText', optionally including a summary and metadata such as generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when needing an automatically generated narrative or summary from raw financial data, to produce human-readable text reports for client communication, internal reviews, or documentation. It helps transform structured financial data into clear, formatted textual content tailored to financial contexts and report types.", + "limitations": "This tool does not create graphical charts or visual content, nor does it perform advanced financial analysis beyond summarizing input data. It requires accurate and well-structured input financial data to produce meaningful text.", + "examples": [ + "Generate a monthly financial statement text summary for a client's checking and savings account transactions for April 2024.", + "Produce an investment portfolio summary report text highlighting gains, losses, and asset allocation in English.", + "Create a budget analysis text report for the Q2 2024 time frame including transaction data and categorical spending breakdown." + ] + }, + "tags": [ + "finance", + "report-generation", + "text-synthesis", + "financial-summary", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"monthly statement\",\"financialData\":{\"accounts\":[{\"id\":\"acc123\",\"type\":\"checking\",\"transactions\":[{\"date\":\"2024-04-05\",\"amount\":-60.00,\"description\":\"Groceries\"},{\"date\":\"2024-04-10\",\"amount\":1000.00,\"description\":\"Salary Deposit\"}]}]},\"dateRange\":{\"start\":\"2024-04-01\",\"end\":\"2024-04-30\"},\"language\":\"en\"}", + "description": "Generate a monthly statement text report summarizing checking account transactions for April 2024." + }, + { + "inputJson": "{\"reportType\":\"investment summary\",\"financialData\":{\"portfolio\":{\"stocks\":[{\"symbol\":\"AAPL\",\"quantity\":50,\"avgPrice\":140}],\"bonds\":[],\"cash\":5000,\"gains\":350}},\"language\":\"en\"}", + "description": "Generate an English investment summary report outlining portfolio holdings and gains." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "finance-tools.formatDocument", + "description": "Formats various financial documents such as invoices, receipts, and financial statements. Accepts raw document data in JSON or text form, applies formatting rules based on document type and locale settings, and outputs a standardized, human-readable document ready for presentation or printing.", + "category": "finance-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of financial document to format (e.g., invoice, receipt, statement).", + "required": true, + "defaultValue": "" + }, + { + "name": "documentData", + "type": "object", + "description": "Raw data object containing the financial information to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code to format numbers, currency, and dates accordingly (e.g., 'en-US', 'fr-FR').", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "currencyCode", + "type": "string", + "description": "ISO currency code (e.g., USD, EUR) to format monetary values appropriately.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeLogo", + "type": "boolean", + "description": "Whether to include a company or brand logo in the formatted document if available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format, such as 'pdf', 'html', or 'plaintext'.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted document as a string in the specified output format, along with metadata about the formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw financial data into a professionally formatted financial document. It is useful for generating invoices, receipts, or financial statements that comply with locale-specific standards and present financial info clearly and accurately.", + "limitations": "This tool does not generate financial data or validate accounting correctness. It cannot perform computations or audit data integrity. It also does not support custom template designs beyond preset formatting rules.", + "examples": [ + "Format a JSON invoice object into a PDF invoice document localized for German customers.", + "Generate an HTML receipt from raw receipt data applying US locale and USD currency formatting.", + "Create a plain text financial statement report from provided data for quick review." + ] + }, + "tags": [ + "finance", + "document", + "formatting", + "invoices", + "receipts", + "localization", + "currency", + "pdf" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"invoice\",\"documentData\":{\"invoiceNumber\":\"INV-1001\",\"date\":\"2024-05-30\",\"customer\":{\"name\":\"Acme Corp\"},\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":150}],\"taxRate\":0.2},\"locale\":\"de-DE\",\"currencyCode\":\"EUR\",\"includeLogo\":true,\"outputFormat\":\"pdf\"}", + "description": "Format an invoice in PDF for a German locale with Euro currency and include company logo." + }, + { + "inputJson": "{\"documentType\":\"receipt\",\"documentData\":{\"receiptNumber\":\"RCPT-4578\",\"date\":\"2024-06-01\",\"paymentMethod\":\"Credit Card\",\"items\":[{\"description\":\"Office Supplies\",\"amount\":79.99}]},\"locale\":\"en-US\",\"currencyCode\":\"USD\",\"includeLogo\":false,\"outputFormat\":\"html\"}", + "description": "Create an HTML receipt in US English without logo and USD currency formatting." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "finance-tools.formatCode", + "description": "Formats financial code snippets such as formulas, scripts, or configuration code used in financial management systems. Accepts raw code as string input, processes it for consistent indentation, line breaks, and style according to specified language rules, and outputs the well-formatted code string ready for use or presentation.", + "category": "finance-tools", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw financial code snippet or script that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming or scripting language of the code, e.g., 'Python', 'ExcelFormula', 'JavaScript'. Used to apply language-specific formatting rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use per indentation level.", + "required": false, + "defaultValue": "4" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tab characters instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "The maximum allowed line length before wrapping or breaking lines.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string with applied indentation and line breaks, or error messages if formatting failed." + }, + "aiAgent": { + "useCase": "When an AI agent encounters unformatted or messy financial code snippets — such as Excel formulas, custom scripts for financial calculations, or configuration code for financial software — it can use this tool to clean and standardize the code to improve readability, maintainability, and integration into reports or financial applications.", + "limitations": "Cannot execute or validate the financial logic correctness of the code, only formats syntax and style. Limited language support mainly for common financial scripting languages or formula notations.", + "examples": [ + "Format this unindented Python script calculating net present value.", + "Clean up this Excel formula to be more readable.", + "Apply consistent formatting to JavaScript code for a financial dashboard." + ] + }, + "tags": [ + "formatting", + "finance", + "code", + "script", + "formula", + "financial-calculations" + ], + "examples": [ + { + "inputJson": "{\"code\":\"NPV = 0\\nrate = 0.05\\nfor i in range(1,6):NPV += 1000/(1+rate)**i\",\"language\":\"Python\",\"indentSize\":2,\"useTabs\":false,\"maxLineLength\":80}", + "description": "Formats a Python script calculating net present value with consistent indentation and line breaks." + }, + { + "inputJson": "{\"code\":\"=SUM(A1:A5)/COUNT(A1:A5)\",\"language\":\"ExcelFormula\",\"indentSize\":4,\"useTabs\":false,\"maxLineLength\":40}", + "description": "Formats an Excel formula to ensure consistent spacing and readability." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "finance-tools.generateDataset", + "description": "Generates a synthetic financial dataset based on specified parameters including dataset size, date range, transaction categories, and currency. The tool creates realistic transaction records with fields such as transaction ID, date, amount, category, and description, useful for financial analysis, testing, or training models.", + "category": "finance-tools", + "parameters": [ + { + "name": "numRecords", + "type": "number", + "description": "Number of financial transaction records to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for transaction timestamps in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for transaction timestamps in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "categories", + "type": "array", + "description": "List of transaction categories to include (e.g., ['Groceries','Utilities','Salary']).", + "required": false, + "defaultValue": "[\"Salary\",\"Groceries\",\"Utilities\",\"Entertainment\",\"Rent\"]" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for transaction amounts, e.g., USD, EUR.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeDescription", + "type": "boolean", + "description": "Whether to include a short description for each transaction.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array named 'transactions', where each transaction includes an ID, date, amount, category, optionally a description, and currency code." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create realistic, configurable financial transaction datasets for testing software, training machine learning models, analyzing financial workflows without sensitive real data, or demonstrating financial management processes.", + "limitations": "This tool generates synthetic rather than real or historical financial data and does not support integration with live financial feeds or personal financial records.", + "examples": [ + "Generate a dataset of 1000 transactions between 2023-01-01 and 2023-06-30 including default categories, in USD.", + "Create 500 transactions from 2022-01-01 to 2022-12-31 with categories 'Salary' and 'Rent' only, without descriptions.", + "Produce 200 transactions in EUR currency spanning past 3 months including all categories and descriptions." + ] + }, + "tags": [ + "finance", + "dataset generation", + "synthetic data", + "financial transactions", + "testing data", + "machine learning" + ], + "examples": [ + { + "inputJson": "{\"numRecords\":1000,\"startDate\":\"2023-01-01\",\"endDate\":\"2023-06-30\"}", + "description": "Generate 1000 transactions within first half of 2023 using default categories and USD currency." + }, + { + "inputJson": "{\"numRecords\":500,\"startDate\":\"2022-01-01\",\"endDate\":\"2022-12-31\",\"categories\":[\"Salary\",\"Rent\"],\"includeDescription\":false}", + "description": "Generate 500 transactions for year 2022 limited to Salary and Rent categories with no descriptions." + }, + { + "inputJson": "{\"numRecords\":200,\"startDate\":\"2024-03-01\",\"endDate\":\"2024-05-31\",\"currency\":\"EUR\"}", + "description": "Generate 200 transactions over last three months in Euro currency including descriptions." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "finance-tools.createServer", + "description": "Creates and configures a dedicated server optimized for hosting financial management and accounting applications. Accepts parameters for server specs, security protocols, and software stack. Provisions the server with specified OS and finance-related software, and outputs server details including access credentials and configuration summary.", + "category": "finance-tools", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "A unique name identifier for the server instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate for processing power.", + "required": true, + "defaultValue": "4" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes to allocate for the server.", + "required": true, + "defaultValue": "16" + }, + { + "name": "storageGB", + "type": "number", + "description": "Size of SSD storage in gigabytes for data and applications.", + "required": true, + "defaultValue": "100" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "The operating system to install on the server (e.g., Ubuntu 22.04, Windows Server 2019).", + "required": true, + "defaultValue": "Ubuntu 22.04" + }, + { + "name": "enableFirewall", + "type": "boolean", + "description": "Whether to enable and configure a firewall with recommended security settings.", + "required": false, + "defaultValue": "true" + }, + { + "name": "financeSoftwareStack", + "type": "array", + "description": "List of financial management or accounting software to pre-install (e.g., QuickBooks, Odoo ERP).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "backupEnabled", + "type": "boolean", + "description": "Flag indicating if automated backups should be configured.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing server deployment details, including serverId, IP address, admin access credentials, installed software, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a dedicated server environment tailored for financial management or accounting applications, especially when specific hardware specs, OS, and software installations are required to ensure compliance, security, and performance.", + "limitations": "This tool does not manage continuous server maintenance, real-time monitoring, or dynamic scaling. It only creates initial server infrastructure and setups. Post-deployment management must be handled separately.", + "examples": [ + "Create a high-performance server with 8 CPU cores and 32GB RAM, pre-installed with QuickBooks for accounting.", + "Set up a secure Ubuntu server with firewall and backup enabled for hosting financial applications.", + "Provision a Windows Server 2019 machine with 16GB RAM and Odoo ERP installed for finance operations." + ] + }, + "tags": [ + "server", + "infrastructure", + "financial management", + "accounting", + "deployment", + "automation", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"FinanceProdServer1\",\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":200,\"operatingSystem\":\"Ubuntu 22.04\",\"enableFirewall\":true,\"financeSoftwareStack\":[\"QuickBooks\"],\"backupEnabled\":true}", + "description": "Create a production-grade server with 8 CPUs and 32GB RAM, firewall and backup, pre-installed QuickBooks." + }, + { + "inputJson": "{\"serverName\":\"AccountingTestServer\",\"cpuCores\":4,\"memoryGB\":16,\"storageGB\":100,\"operatingSystem\":\"Windows Server 2019\",\"enableFirewall\":true,\"financeSoftwareStack\":[\"Odoo ERP\"],\"backupEnabled\":false}", + "description": "Set up a test server with Windows Server 2019 and Odoo ERP installed, firewall enabled, no backup." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "translation.uploadFile", + "description": "Uploads a text or document file for the purpose of translating its contents from a source language to a target language. The tool accepts file inputs (TXT, DOCX, PDF), extracts text content, performs machine translation, and returns the translated text as a string or downloadable document link.", + "category": "translation", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Path or URL to the file to be uploaded and translated. Supports TXT, DOCX, PDF formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "ISO language code representing the source language of the document. If omitted, auto-detection is attempted.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "ISO language code representing the target language to translate the document into.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the translation, e.g., 'text' for plain text output or 'docx' for formatted document output.", + "required": false, + "defaultValue": "text" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Whether to preserve original document formatting (applicable for DOCX and PDF inputs).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object including the translated text as a string and, if applicable, a URL to download the translated document in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload a document file to be translated from one language to another including handling various document formats and optionally preserving formatting. It is suitable for translating reports, letters, contracts, or educational materials provided as files.", + "limitations": "Cannot translate scanned images or handwritten documents effectively. Large files may have size limits. Formatting preservation is limited to standard styles; complex layouts might not be fully preserved.", + "examples": [ + "Translate a DOCX proposal from English to Spanish preserving formatting.", + "Upload a PDF report in French and get plain text translation in English.", + "Translate a TXT file from auto-detected language to German without preserving formatting." + ] + }, + "tags": [ + "translation", + "upload", + "file", + "document", + "language", + "multilingual", + "document-translation", + "machine-translation" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/documents/contract.docx\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"outputFormat\":\"docx\",\"preserveFormatting\":true}", + "description": "Translate an English contract DOCX file to Spanish, keeping formatting." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/report.pdf\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"en\",\"outputFormat\":\"text\",\"preserveFormatting\":false}", + "description": "Translate a French PDF report to English as plain text." + }, + { + "inputJson": "{\"filePath\":\"/texts/notes.txt\",\"sourceLanguage\":\"\",\"targetLanguage\":\"de\",\"outputFormat\":\"text\",\"preserveFormatting\":false}", + "description": "Upload a TXT file with unknown source language and translate it to German." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "translation.composeEmail", + "description": "This tool generates a professionally composed email in a specified target language. It accepts key email elements such as recipient, subject, body content summary, and desired tone, translates the content if needed, and returns a fully written email ready to send, respecting linguistic and cultural conventions of the target language.", + "category": "translation", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the email recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Email subject line to be translated and included.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodySummary", + "type": "string", + "description": "A brief summary or key points to include in the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Language code of the original content (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Language code into which the email should be composed (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email, such as formal, informal, friendly, or professional.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email with subject and body text translated and styled according to the target language and tone." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a complete email in a different language based on key information and desired tone. It helps in crafting culturally appropriate and fluent emails that do not just translate but also compose content. Ideal for cross-lingual communication tasks.", + "limitations": "This tool does not send emails or handle email metadata such as attachments or headers. It may not perfectly capture idiomatic expressions or very technical language requiring human review, especially for complex or sensitive correspondence.", + "examples": [ + "Compose a formal business email in Spanish introducing a product to a client named Carlos.", + "Generate a friendly invitation email in French for an event, addressed to Sophie.", + "Create an informal thank-you email in Japanese for a colleague named Takashi." + ] + }, + "tags": [ + "translation", + "email", + "language", + "communication", + "composition", + "multilingual", + "formal", + "informal" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Carlos\",\"subject\":\"Product Launch\",\"bodySummary\":\"Introducing our new software product with key features and pricing details.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"tone\":\"formal\"}", + "description": "Compose a formal Spanish email introducing a product launch to Carlos." + }, + { + "inputJson": "{\"recipientName\":\"Sophie\",\"subject\":\"Birthday Party Invitation\",\"bodySummary\":\"Inviting to a casual birthday party next Saturday evening.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"tone\":\"friendly\"}", + "description": "Generate a friendly French invitation email for Sophie." + }, + { + "inputJson": "{\"recipientName\":\"Takashi\",\"subject\":\"Thank You\",\"bodySummary\":\"Expressing gratitude for help on recent project.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"ja\",\"tone\":\"informal\"}", + "description": "Create an informal Japanese thank-you email to Takashi." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "translation.composeDocument", + "description": "This tool accepts a source text document in one language and translates it into a specified target language. It processes the input to produce a coherent, linguistically accurate translated document while maintaining the original formatting and context. The output is the translated document text suitable for professional or casual use.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The complete text content of the document to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the source text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code into which the document should be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "formalTone", + "type": "boolean", + "description": "If true, translates the document using a formal tone; otherwise informal tone is used.", + "required": false, + "defaultValue": "false" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Indicates whether to preserve the original document formatting such as paragraphs and lists during translation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "glossary", + "type": "object", + "description": "Optional user-provided dictionary mapping source terms to preferred translation terms to ensure consistency.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated document text and metadata including detected language, word count, and translation quality score." + }, + "aiAgent": { + "useCase": "Use this tool when you need to translate entire documents from one language to another, ensuring the output preserves the original meaning, style, and formatting, useful for multi-lingual document preparation, localization, and communications.", + "limitations": "Cannot translate extremely technical or domain-specific jargon without specialized glossaries. May not perfectly preserve complex formatting like images or tables.", + "examples": [ + "Translate a marketing brochure from English to Spanish keeping a formal tone.", + "Convert an informal blog post from French to English.", + "Translate a legal document from German to English with a glossary for legal terms." + ] + }, + "tags": [ + "translation", + "document", + "language", + "localization", + "multilingual", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Welcome to our annual company event. We hope you enjoy the presentations and networking opportunities.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"formalTone\":true,\"preserveFormatting\":true}", + "description": "Translating an English company event introduction into formal Spanish, keeping paragraph structure." + }, + { + "inputJson": "{\"sourceText\":\"Salut! Je vais au marché demain.\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"en\",\"formalTone\":false,\"preserveFormatting\":true}", + "description": "Translating an informal French sentence into English with informal tone preserved." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "translation.createContract", + "description": "This tool accepts source contract text and target language code, then translates the entire contract text accurately while preserving legal terminology and formatting suited for contracts. It produces a translated contract document as plain text, suitable for legal review or localization.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The full contract text to be translated, including all clauses and sections.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code (ISO 639-1) specifying the target language for the contract translation.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Optional ISO 639-1 code for the source language to improve translation accuracy; if empty, auto-detection is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Indicates whether to keep original formatting such as headings and bullet points in the translated text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "legalDomain", + "type": "string", + "description": "Optional specification of legal domain (e.g., employment, sales, real estate) to optimize terminology accuracy.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the translated contract text and metadata such as detected source language and any translation notes." + }, + "aiAgent": { + "useCase": "Use when a user needs to translate a legal contract document from one language to another while maintaining precise legal terminology and document structure to support localization or international legal processes. Especially useful for ensuring contracts remain legally coherent after translation.", + "limitations": "This tool does not provide legal advice, validate the legality of translated content, or certify documents. It may not handle extremely complex formatted documents perfectly and should be reviewed by a qualified legal translator.", + "examples": [ + "Translate an employment contract from English to Spanish preserving all legal terms.", + "Convert a sales contract written in French into German with proper clause formatting.", + "Localize a real estate lease agreement from Spanish to English ensuring the terminology fits that legal domain." + ] + }, + "tags": [ + "translation", + "legal", + "contract", + "document", + "localization", + "multilingual", + "legal-translation" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"This Employment Contract is made between Employer and Employee...\",\"targetLanguage\":\"es\",\"sourceLanguage\":\"en\",\"preserveFormatting\":true,\"legalDomain\":\"employment\"}", + "description": "Translate an employment contract from English to Spanish while preserving structure and terminology." + }, + { + "inputJson": "{\"sourceText\":\"Ce contrat de vente est conclu entre le vendeur et l'acheteur...\",\"targetLanguage\":\"de\",\"sourceLanguage\":\"fr\",\"preserveFormatting\":true,\"legalDomain\":\"sales\"}", + "description": "Translate a sales contract from French to German maintaining legal terms and organization." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "copywriting.analyzeMessage", + "description": "Analyzes a marketing or promotional message to evaluate its tone, clarity, persuasiveness, and emotional impact. Accepts a text message as input, processes linguistic and semantic features to generate a detailed report assessing effectiveness and suggesting improvements, and outputs a structured analysis summary.", + "category": "copywriting", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The marketing or promotional message text to analyze for effectiveness and style.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) of the input message to tailor analysis accordingly.", + "required": false, + "defaultValue": "en" + }, + { + "name": "analyzeTone", + "type": "boolean", + "description": "Whether to analyze the message tone (e.g., friendly, urgent).", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeClarity", + "type": "boolean", + "description": "Whether to evaluate the clarity and simplicity of the message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzePersuasiveness", + "type": "boolean", + "description": "Whether to assess the persuasiveness and call-to-action strength.", + "required": false, + "defaultValue": "true" + }, + { + "name": "returnSuggestions", + "type": "boolean", + "description": "Whether to include suggestions for improving the message in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including tone classification, clarity score, persuasiveness rating, emotional impact summary, and optionally suggestions for improvement." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the quality and effectiveness of marketing communications such as ad copy, promotional emails, or social media posts to optimize messaging. It provides linguistic and psychological insights that help refine tone, clarity, and motivation power based on the input text.", + "limitations": "Does not perform cultural sensitivity or legal compliance checks. May not accurately interpret niche industry jargon without customization.", + "examples": [ + "Analyze the tone and persuasiveness of this advertisement text.", + "Evaluate clarity and provide suggestions to improve this marketing email.", + "Check emotional impact and recommend improvements for our social media campaign message." + ] + }, + "tags": [ + "copywriting", + "message analysis", + "marketing", + "tone analysis", + "persuasiveness", + "clarity", + "content optimization" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Buy one get one free! Limited time offer until Sunday. Don’t miss out!\",\"language\":\"en\"}", + "description": "A promotional sales message to analyze for tone, persuasiveness, and clarity." + }, + { + "inputJson": "{\"messageText\":\"Our new software improves productivity by 50% in just one month.\",\"analyzeTone\":true,\"analyzePersuasiveness\":true}", + "description": "Marketing message highlighting product benefits to evaluate effectiveness and emotional appeal." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "content-creation.downloadJSON", + "description": "This tool generates a downloadable JSON file from provided structured data. It accepts an object or array as input, optionally formats the output with indentation for readability, and returns a downloadable file link or base64 content that can be used to save the JSON data to the user's device or further processed in applications.", + "category": "content-creation", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The JavaScript object or array that will be converted into JSON and prepared for download.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired filename for the downloaded JSON file, including extension (e.g., 'data.json').", + "required": false, + "defaultValue": "\"data.json\"" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for JSON pretty-printing indentation. Use 0 or omit for minified output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "returnBase64", + "type": "boolean", + "description": "If true, returns the JSON content as a base64-encoded string instead of a download URL.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing either a 'downloadUrl' string for the JSON file or a 'base64Content' string of the JSON data, depending on 'returnBase64' parameter." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured data into a properly formatted JSON file that the end user or system can download or store. Useful in content management, exporting settings, or sharing data snapshots in JSON format. Supports pretty-printing and flexible output modes for diverse application requirements.", + "limitations": "This tool does not validate the data against JSON schema or sanitize content. It assumes input is serializable without circular references. Large datasets may impact performance or memory during conversion.", + "examples": [ + "Generate and download a pretty-printed JSON file named 'userSettings.json' from a user preferences object.", + "Generate a minified JSON file for lightweight export with filename 'export.json'.", + "Return the JSON content as a base64 string without creating a download link." + ] + }, + "tags": [ + "content-export", + "json", + "download", + "file-generation", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"users\":[{\"id\":1,\"name\":\"Alice\"},{\"id\":2,\"name\":\"Bob\"}],\"meta\":{\"count\":2}},\"fileName\":\"users.json\",\"indentation\":4,\"returnBase64\":false}", + "description": "Download a pretty-formatted JSON file named 'users.json' containing user objects and metadata." + }, + { + "inputJson": "{\"data\":[1,2,3,4,5],\"fileName\":\"numbers.json\",\"indentation\":0,\"returnBase64\":false}", + "description": "Download a minified JSON file named 'numbers.json' representing an array of numbers." + }, + { + "inputJson": "{\"data\":{\"status\":\"ok\",\"code\":200},\"fileName\":\"response.json\",\"indentation\":2,\"returnBase64\":true}", + "description": "Return base64 encoded JSON content of an object with status and code fields, no download link." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "content-creation.buildService", + "description": "This tool assists in building and deploying a digital content service by accepting service configuration details such as service name, content types supported, storage options, and deployment environment. It processes these inputs to provision infrastructure, configure content management, and output a deployment status report with service endpoints and resource details.", + "category": "content-creation", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name identifier for the content service to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentTypes", + "type": "array", + "description": "List of content types (e.g., articles, images, videos) the service should support.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "storageType", + "type": "string", + "description": "Type of storage backend for content, such as 'database', 'objectStorage', or 'filesystem'.", + "required": true, + "defaultValue": "database" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Target environment to deploy the service, e.g., 'development', 'staging', 'production'.", + "required": true, + "defaultValue": "development" + }, + { + "name": "autoScalingEnabled", + "type": "boolean", + "description": "Whether to enable auto-scaling of the service based on load.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxInstances", + "type": "number", + "description": "Maximum number of instances to run if auto-scaling is enabled.", + "required": false, + "defaultValue": "1" + }, + { + "name": "enableCaching", + "type": "boolean", + "description": "Flag to enable caching mechanisms to improve content delivery performance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing deployment status, service endpoints, resource allocations, and any errors encountered during build." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the setup and deployment of a content delivery service tailored to specific content types and infrastructure preferences. It is ideal for scenarios involving rapid provisioning of services for digital content management and distribution with customizable deployment environments and scaling options.", + "limitations": "This tool does not handle content creation or editing itself, only the infrastructure and service deployment aspects. It also does not support manual configuration beyond the supplied parameters and cannot diagnose runtime service issues post-deployment.", + "examples": [ + "Build a content service named 'MediaHub' supporting images and videos with object storage on production environment.", + "Set up a development content service named 'TestDocs' for articles, with database storage and auto-scaling enabled.", + "Deploy a service named 'BlogStore' supporting text and images with caching disabled and a max of 3 instances." + ] + }, + "tags": [ + "content-creation", + "service-deployment", + "content-management", + "infrastructure", + "automation", + "scaling" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"MediaHub\",\"contentTypes\":[\"images\",\"videos\"],\"storageType\":\"objectStorage\",\"deploymentEnvironment\":\"production\",\"autoScalingEnabled\":true,\"maxInstances\":5,\"enableCaching\":true}", + "description": "Deploy a production content service 'MediaHub' supporting images and videos with object storage, auto-scaling enabled, and caching." + }, + { + "inputJson": "{\"serviceName\":\"TestDocs\",\"contentTypes\":[\"articles\"],\"storageType\":\"database\",\"deploymentEnvironment\":\"development\",\"autoScalingEnabled\":false,\"maxInstances\":1,\"enableCaching\":true}", + "description": "Build a development environment content service 'TestDocs' supporting articles with database storage and caching enabled without auto-scaling." + }, + { + "inputJson": "{\"serviceName\":\"BlogStore\",\"contentTypes\":[\"text\",\"images\"],\"storageType\":\"filesystem\",\"deploymentEnvironment\":\"staging\",\"autoScalingEnabled\":true,\"maxInstances\":3,\"enableCaching\":false}", + "description": "Create a staging content service 'BlogStore' supporting text and images stored on filesystem, with auto-scaling up to 3 instances and caching disabled." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "content-creation.sendNotification", + "description": "Sends a customizable notification message to specified recipients using different delivery channels such as email, SMS, or push notification. Accepts recipients, message content, subject, and optional channel preference to dispatch the notification and returns the success status for each recipient.", + "category": "content-creation", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as email addresses or phone numbers to whom the notification will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "The main content of the notification message to be delivered.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject or title of the notification, applicable mainly for email and push notifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Preferred delivery channel for the notification; options include 'email', 'sms', or 'push'. If unspecified, a default or all channels may be used.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier or name that appears as the sender of the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification such as 'normal' or 'high' to influence delivery handling.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule when the notification should be sent; if empty, sends immediately.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of notification delivery per recipient including success boolean and optional error messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to dispatch notifications to users or clients across multiple channels (email, SMS, push) with customized messages. Ideal for alerts, updates, reminders, or promotional content requiring confirmation of delivery or status tracking.", + "limitations": "Does not generate message content; requires preformatted messages. Cannot guarantee delivery due to external channel dependencies. Limited to supported channels and recipient formats.", + "examples": [ + "Send a high-priority email notification about a system outage to a list of users.", + "Dispatch an SMS reminder about an upcoming appointment to a client's phone number.", + "Schedule a push notification for a promotional offer to be sent at a specific future time." + ] + }, + "tags": [ + "notification", + "messaging", + "content-creation", + "communication", + "email", + "sms", + "push", + "reminder" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"user1@example.com\"],\"messageBody\":\"Your account password will expire in 3 days.\",\"subject\":\"Password Expiry Notice\",\"channel\":\"email\",\"priority\":\"high\"}", + "description": "Send a high priority email notification about password expiration to a user." + }, + { + "inputJson": "{\"recipients\":[\"+12345556789\"],\"messageBody\":\"Your appointment is scheduled for tomorrow at 3 PM.\",\"channel\":\"sms\"}", + "description": "Send an SMS appointment reminder to a phone number." + }, + { + "inputJson": "{\"recipients\":[\"device_token_98765\"],\"messageBody\":\"Flash Sale starts in 1 hour! Don't miss out.\",\"channel\":\"push\",\"scheduledTime\":\"2024-07-01T08:00:00Z\"}", + "description": "Schedule a push notification about a flash sale to a device token to be sent at a future time." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "content-creation.buildConfig", + "description": "Generates a structured configuration file based on provided settings and template options. Accepts an input object describing config parameters and generates a complete config file content in JSON, YAML, or INI format for software deployment or application setup.", + "category": "content-creation", + "parameters": [ + { + "name": "configParameters", + "type": "object", + "description": "Key-value pairs representing configuration settings to include in the config file.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateType", + "type": "string", + "description": "Config file format to generate, such as 'json', 'yaml', or 'ini'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated config file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "envPrefix", + "type": "string", + "description": "Optional prefix to add to environment variable names inside the config.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated configuration file as a string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a complete configuration file for an application or service based on user-supplied parameters. It helps in automating creation of deployment or runtime configurations in common formats, reducing manual editing and errors.", + "limitations": "This tool cannot validate the semantic correctness of the configuration values for specific software beyond formatting. It also does not handle nested complex schema validations automatically.", + "examples": [ + "Generate a JSON config for a web server with port and logging settings.", + "Produce a YAML config file including environment variable placeholders with a prefix.", + "Create an INI config file with default values and inline comments explaining each setting." + ] + }, + "tags": [ + "configuration", + "file-generation", + "automation", + "content-creation", + "devops", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"configParameters\":{\"serverPort\":8080,\"enableLogging\":true,\"logLevel\":\"debug\"},\"templateType\":\"json\",\"includeComments\":false,\"envPrefix\":\"APP_\"}", + "description": "Generate a basic JSON config with environment variable prefix and no comments." + }, + { + "inputJson": "{\"configParameters\":{\"databaseHost\":\"localhost\",\"databasePort\":5432,\"useSSL\":false},\"templateType\":\"yaml\",\"includeComments\":true,\"envPrefix\":\"DB_\"}", + "description": "Create a YAML config with explanatory comments for a database connection." + }, + { + "inputJson": "{\"configParameters\":{\"path\":\"/var/www\",\"maxClients\":200,\"timeout\":60},\"templateType\":\"ini\",\"includeComments\":true,\"envPrefix\":\"\"}", + "description": "Produce an INI format config file with comments for a server application." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "documentation-tools.analyzeSession", + "description": "Analyzes user interaction sessions with documentation to extract insights on navigation patterns, search queries, page visits, and user engagement metrics. Accepts raw session logs or structured event data as input, processes this data to identify frequent paths, bottlenecks, and drop-off points, and outputs a comprehensive report summarizing user behavior and recommendations for improving documentation usability.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sessionData", + "type": "array", + "description": "An array of session event objects representing user interactions with the documentation, including timestamps, event types (e.g., pageView, search), and metadata. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp to filter session events starting from this time. Optional, defaults to include all.", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp to filter session events up to this time. Optional, defaults to include all.", + "required": false, + "defaultValue": "" + }, + { + "name": "minSessionDuration", + "type": "number", + "description": "Minimum duration in seconds for sessions to be included in the analysis. Optional, defaults to 0 (include all).", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeSearchAnalysis", + "type": "boolean", + "description": "Whether to analyze and report on search queries made during sessions. Optional, default true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "generateRecommendations", + "type": "boolean", + "description": "If true, the tool will produce actionable recommendations based on session analysis. Optional, default true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summarized metrics including number of sessions analyzed, average session duration, common navigation paths, search term statistics, drop-off points, and optionally recommendations for documentation improvements." + }, + "aiAgent": { + "useCase": "Use this tool when you want to understand how users interact with your documentation in sessions by analyzing event logs or telemetry data. It helps identify which pages are most visited, common session flows, user search behavior, and points where users abandon sessions, enabling data-driven improvements to the documentation. It is especially useful for product managers, documentation teams, and UX researchers monitoring documentation effectiveness.", + "limitations": "This tool cannot track individual user identities due to privacy concerns and does not perform sentiment analysis. It requires properly structured session event data as input and does not collect raw data itself.", + "examples": [ + "Analyze the last week's documentation sessions to find common user navigation paths and search terms.", + "Provide insights on documentation sessions longer than 5 minutes including recommendations to improve user engagement.", + "Summarize session events between two given timestamps focusing on search query effectiveness." + ] + }, + "tags": [ + "documentation", + "analytics", + "session", + "user behavior", + "usability", + "search", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"sessionData\":[{\"timestamp\":\"2024-04-01T10:00:00Z\",\"eventType\":\"pageView\",\"page\":\"Getting Started\"},{\"timestamp\":\"2024-04-01T10:01:00Z\",\"eventType\":\"search\",\"query\":\"installation\"},{\"timestamp\":\"2024-04-01T10:02:30Z\",\"eventType\":\"pageView\",\"page\":\"Installation Guide\"}],\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-02T00:00:00Z\",\"minSessionDuration\":30,\"includeSearchAnalysis\":true,\"generateRecommendations\":true}", + "description": "Analyze documentation session events from April 1, 2024, filtering sessions at least 30 seconds long, including search analysis and recommendations." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "documentation-tools.analyzeHeading", + "description": "Analyzes headings within a documentation file or content block to evaluate structure, hierarchy, and consistency. Accepts text input containing headings (e.g., Markdown or HTML) and returns an analysis identifying heading levels used, ordering integrity, missing levels, and suggestions for improved semantic structure.", + "category": "documentation-tools", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The documentation content containing headings to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the input content (e.g., 'markdown', 'html', or 'plain').", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "maxHeadingLevel", + "type": "number", + "description": "Maximum heading level to consider in the analysis, e.g., 6 for h1 to h6.", + "required": false, + "defaultValue": "6" + }, + { + "name": "checkOrderConsistency", + "type": "boolean", + "description": "Whether to check if heading levels increase or decrease in proper sequential order.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkMissingLevels", + "type": "boolean", + "description": "Whether to identify any missing heading levels in the document hierarchy.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing heading statistics, detected structure issues, and recommendations for improving heading hierarchy and usage." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing documentation to ensure heading usage conforms to best practices for semantic structure, readability, and accessibility. It assists in detecting improper heading sequences, missing levels, and inconsistent hierarchy in Markdown or HTML docs.", + "limitations": "Does not modify the source content; does not analyze heading content quality or relevance; limited to structural and hierarchical analysis only.", + "examples": [ + "Analyze headings in a Markdown README to check for missing heading levels and incorrect order.", + "Evaluate HTML documentation to identify inconsistent heading usage.", + "Check a plain text document for heading structure and suggest improvements." + ] + }, + "tags": [ + "documentation", + "heading", + "analysis", + "structure", + "markdown", + "html", + "accessibility" + ], + "examples": [ + { + "inputJson": "{\"content\":\"# Title\\n## Introduction\\n### Details\\n#### Subdetails\\n## Conclusion\",\"format\":\"markdown\"}", + "description": "Analyze a simple Markdown document for heading hierarchy consistency." + }, + { + "inputJson": "{\"content\":\"

Main Title

Skipped Level

Came Back\",\"format\":\"html\"}", + "description": "Detect issues with heading level skipping and ordering in HTML content." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "documentation-tools.analyzeThreat", + "description": "Analyzes security threat descriptions provided in text or structured format to identify key threat elements such as severity, affected components, and recommended mitigations. Accepts threat reports or briefings as input and returns a structured threat analysis summary useful for documentation or risk assessment.", + "category": "documentation-tools", + "parameters": [ + { + "name": "threatDescription", + "type": "string", + "description": "A detailed textual description of the security threat to analyze, including context, indicators, and impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the threatDescription input, e.g., 'text' or 'json'. Determines parsing approach.", + "required": false, + "defaultValue": "text" + }, + { + "name": "severityLevels", + "type": "array", + "description": "Optional list of predefined severity levels to categorize the threat, e.g., ['Low','Medium','High','Critical'].", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMitigations", + "type": "boolean", + "description": "Flag to include recommended mitigation measures in the output analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language of the threat description to support multilingual analysis; default is English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the analyzed threat details including severity, impacted systems, threat type, description highlights, and recommended mitigations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert free-form or semi-structured threat descriptions into a structured, actionable summary that highlights critical elements for documentation or security decision making. Especially helpful for security documentation workflows requiring concise threat overviews.", + "limitations": "The tool cannot replace expert threat intelligence analysis or detect unknown/unreported threats from raw data. It relies on provided descriptions and may miss nuances if input is incomplete.", + "examples": [ + "Analyze the text of a recent phishing threat report to extract key impact and mitigation steps.", + "Summarize a JSON-formatted threat bulletin to produce a severity level and suggested actions.", + "Process a multi-language threat advisory to generate a documentation-ready summary." + ] + }, + "tags": [ + "documentation", + "security", + "threat analysis", + "risk assessment", + "cybersecurity", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"threatDescription\":\"A new ransomware variant targeting Windows servers encrypts files and demands payment in cryptocurrency. Impacted systems include SQL databases and file shares. Severity assessed as high due to rapid propagation.\",\"inputFormat\":\"text\",\"includeMitigations\":true}", + "description": "Analyze a plain text ransomware threat report including impact and severity." + }, + { + "inputJson": "{\"threatDescription\":\"{\\\"type\\\": \\\"phishing\\\", \\\"description\\\": \\\"Spear phishing emails targeting finance department employees asking for wire transfer approvals.\\\", \\\"affectedSystems\\\": [\\\"email\\\", \\\"finance systems\\\"], \\\"severity\\\": \\\"Medium\\\"}\",\"inputFormat\":\"json\",\"includeMitigations\":true}", + "description": "Analyze a JSON structured threat alert describing a phishing campaign with specified severity." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "documentation-tools.buildComponent", + "description": "This tool automates the generation of code component documentation based on provided source code files and additional metadata. It accepts inputs such as component source files, configuration for documentation style, and optional examples or usage notes. The tool parses the code, extracts relevant comments, and combines them with metadata to output comprehensive, formatted documentation files for the component.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sourceFiles", + "type": "array", + "description": "Array of file paths or code snippets representing the component source code to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format to generate documentation in, such as 'markdown', 'html', or 'json'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include usage examples in the generated documentation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "componentName", + "type": "string", + "description": "The official name of the component to use in documentation headers and references.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata about the component, such as author, version, and tags, to include in the documentation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated documentation content and the format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce or update detailed, well-structured documentation for a software component based on its source code and metadata. It is ideal for maintaining consistent and clear component documentation automatically, especially in CI/CD pipelines or developer tools.", + "limitations": "The tool cannot fully understand undocumented code logic or generate content beyond what is inferable from provided code comments and metadata. It may not handle highly dynamic or generated code well.", + "examples": [ + "Generate markdown documentation for a React component with examples and metadata.", + "Create HTML docs for a set of JavaScript utility functions without usage examples.", + "Produce JSON formatted docs for a backend API component including author and version info." + ] + }, + "tags": [ + "documentation", + "component", + "code", + "generator", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceFiles\":[\"./src/Button.jsx\"],\"outputFormat\":\"markdown\",\"includeExamples\":true,\"componentName\":\"Button\",\"metadata\":{\"author\":\"Jane Doe\",\"version\":\"1.2.0\",\"tags\":[\"UI\",\"button\"]}}", + "description": "Generate Markdown documentation with examples and metadata for a Button React component." + }, + { + "inputJson": "{\"sourceFiles\":[\"./lib/utils.js\"],\"outputFormat\":\"html\",\"includeExamples\":false}", + "description": "Generate HTML documentation for utility functions without usage examples." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "data-analytics.renderReport", + "description": "Generates a comprehensive visual report from structured input data by applying specified templates and visualization preferences. Accepts JSON arrays or objects representing datasets, processes data into charts, tables, and summaries, then renders a report document in PDF or HTML format suitable for presentation and analysis.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The input dataset to be visualized and analyzed, provided as a JSON object or array of objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "The report template name or preset defining layout and styling for the report.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "visualizations", + "type": "array", + "description": "An array specifying types of visualizations (e.g., barChart, lineGraph, pieChart) to include in the report.", + "required": false, + "defaultValue": "[\"barChart\",\"table\"]" + }, + { + "name": "title", + "type": "string", + "description": "The title to display on the generated report.", + "required": false, + "defaultValue": "Data Report" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format: 'pdf' or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag indicating whether to include an automated summary or insights section.", + "required": false, + "defaultValue": "true" + }, + { + "name": "author", + "type": "string", + "description": "Name of the report author to be displayed in the report metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "The generated report file as a base64 encoded string along with metadata including format, size, and report title." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate presentation-ready reports from raw or processed data, especially when visual insights like charts and tables are required for decision making or sharing results. It is valuable for business analytics, research summaries, and periodic performance reports.", + "limitations": "Does not support unstructured data like raw text logs. Visualization options depend on supported templates and may not cover highly customized chart types. Requires clean, structured input data.", + "examples": [ + "Generate a sales report in PDF with bar charts and summaries for Q1 dataset.", + "Create an HTML report visualizing user engagement metrics using line graphs and tables.", + "Produce a standard styled report with default template showing financial data for monthly review." + ] + }, + "tags": [ + "data", + "analytics", + "reporting", + "visualization", + "pdf", + "html", + "charts", + "summary" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":1000,\"expenses\":400},{\"month\":\"Feb\",\"sales\":1100,\"expenses\":450}],\"template\":\"business\",\"visualizations\":[\"barChart\",\"table\"],\"title\":\"Q1 Sales Report\",\"outputFormat\":\"pdf\",\"includeSummary\":true,\"author\":\"Jane Doe\"}", + "description": "Generate a PDF report for Q1 sales with bar charts, tables, and a summary by Jane Doe." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2024-01-01\",\"users\":1200,\"active\":300},{\"date\":\"2024-01-02\",\"users\":1300,\"active\":320}],\"template\":\"standard\",\"visualizations\":[\"lineGraph\"],\"title\":\"User Engagement Report\",\"outputFormat\":\"html\",\"includeSummary\":false,\"author\":\"\"}", + "description": "Create an HTML report showing user engagement trends over dates using line graphs." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "data-analytics.createRisk", + "description": "Analyzes structured input data related to assets, vulnerabilities, threats, and controls to generate a quantified risk assessment report. Accepts JSON-formatted data describing system components and their security parameters, processes risk scoring using configurable methodologies, and outputs a detailed risk profile including risk levels and suggested mitigations.", + "category": "data-analytics", + "parameters": [ + { + "name": "assetData", + "type": "object", + "description": "Structured JSON object containing asset details including types, values, and classifications to evaluate.", + "required": true, + "defaultValue": "" + }, + { + "name": "vulnerabilityData", + "type": "object", + "description": "JSON object listing known vulnerabilities with severity scores linked to assets.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatData", + "type": "object", + "description": "JSON object describing potential threats and their likelihoods related to the assets or environment.", + "required": true, + "defaultValue": "" + }, + { + "name": "controlData", + "type": "object", + "description": "JSON object specifying current security controls in place, including effectiveness ratings.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "riskCalculationMethod", + "type": "string", + "description": "The methodology to calculate risk such as 'CVSS', 'DREAD', or 'custom'.", + "required": false, + "defaultValue": "CVSS" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of risk assessment output, e.g. 'JSON' or 'PDF'.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing the risk assessment results, including risk scores per asset, overall risk levels, and actionable recommendations for mitigation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a comprehensive risk assessment based on detailed input data about assets, vulnerabilities, threats, and controls. It helps quantify security risks to prioritize mitigation efforts and supports security decision-making in enterprises.", + "limitations": "This tool cannot discover vulnerabilities or threats autonomously; it depends on accurate input data. It also does not perform real-time monitoring or incident response.", + "examples": [ + "Create a risk assessment for a set of corporate servers with known vulnerabilities and applied controls.", + "Generate risk scores for IoT devices in a smart building using custom risk calculation.", + "Produce a PDF report summarizing risks for cloud assets with threat and control data." + ] + }, + "tags": [ + "risk-assessment", + "security", + "data-analysis", + "threat-modeling", + "vulnerability-management", + "risk-calculation" + ], + "examples": [ + { + "inputJson": "{\"assetData\":{\"server1\":{\"type\":\"webserver\",\"value\":\"high\",\"importance\":\"critical\"}},\"vulnerabilityData\":{\"vuln1\":{\"asset\":\"server1\",\"severity\":7.5}},\"threatData\":{\"threat1\":{\"description\":\"DDoS attack\",\"likelihood\":\"medium\"}},\"controlData\":{\"firewall\":{\"effectiveness\":0.8}},\"riskCalculationMethod\":\"CVSS\",\"outputFormat\":\"JSON\"}", + "description": "Generate a basic CVSS-based risk assessment for one critical webserver with vulnerabilities and firewall control." + }, + { + "inputJson": "{\"assetData\":{\"deviceA\":{\"type\":\"IoT\",\"value\":\"medium\"}},\"vulnerabilityData\":{\"vulnA\":{\"asset\":\"deviceA\",\"severity\":5.0}},\"threatData\":{\"threatA\":{\"description\":\"Data Exfiltration\",\"likelihood\":\"high\"}},\"controlData\":{},\"riskCalculationMethod\":\"DREAD\",\"outputFormat\":\"JSON\"}", + "description": "Create a risk profile for an IoT device using the DREAD model without existing controls." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "data-analytics.createComponent", + "description": "Creates a reusable data visualization or analytic UI component based on provided data source and configuration options. Accepts data inputs and component settings, generates a component object that can be integrated into dashboards or web apps for interactive data insights.", + "category": "data-analytics", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Specifies the type of visualization or component to create, e.g. 'barChart', 'lineGraph', 'dataTable'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "object", + "description": "The structured data or query parameters that provide the data to visualize. Supports arrays or query definitions.", + "required": true, + "defaultValue": "" + }, + { + "name": "configOptions", + "type": "object", + "description": "Customization options such as color schemes, axis labels, filters, and interactivity settings for the component.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "width", + "type": "number", + "description": "Width of the component in pixels. Optional; defaults to automatic sizing.", + "required": false, + "defaultValue": "0" + }, + { + "name": "height", + "type": "number", + "description": "Height of the component in pixels. Optional; defaults to automatic sizing.", + "required": false, + "defaultValue": "0" + }, + { + "name": "interactive", + "type": "boolean", + "description": "Indicates if the component should support user interactions like hover effects or filtering.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a component definition object including type, rendered markup or configuration, and metadata suitable for embedding into analytic dashboards or frameworks." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate data analytic UI components from datasets, facilitating automated dashboard creation or dynamic report generation in applications.", + "limitations": "Does not perform data cleaning or complex data transformations—input data should be preprocessed. Visualization types are limited to supported componentType values.", + "examples": [ + "Create a bar chart component from sales data with custom colors and axis labels.", + "Generate an interactive line graph component for time series data with specified size.", + "Produce a data table component with filtering enabled for a customer dataset." + ] + }, + "tags": [ + "data-analytics", + "visualization", + "component", + "UI", + "dashboard", + "reporting", + "interactive" + ], + "examples": [ + { + "inputJson": "{\"componentType\": \"barChart\", \"dataSource\": {\"data\": [{\"month\": \"Jan\", \"sales\": 100}, {\"month\": \"Feb\", \"sales\": 150}]}, \"configOptions\": {\"color\": \"blue\", \"xAxisLabel\": \"Month\", \"yAxisLabel\": \"Sales\"}, \"width\": 600, \"height\": 400, \"interactive\": true}", + "description": "Creates a blue bar chart showing sales by month, with axis labels and interactive features, sized 600x400." + }, + { + "inputJson": "{\"componentType\": \"dataTable\", \"dataSource\": {\"data\": [{\"name\": \"Alice\", \"age\": 30}, {\"name\": \"Bob\", \"age\": 25}]}, \"configOptions\": {\"sortable\": true, \"filterable\": true}, \"interactive\": true}", + "description": "Creates an interactive data table component from user data that supports sorting and filtering." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "data-analytics.createQuery", + "description": "Creates a structured data query based on specified dataset, filters, selected fields, and aggregation functions. Accepts dataset identifier and query parameters, processes these to build a query string or object usable by data engines, and outputs the constructed query ready for execution or further processing.", + "category": "data-analytics", + "parameters": [ + { + "name": "datasetId", + "type": "string", + "description": "Identifier of the dataset or database to query against.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "List of field names to include in the query output.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Filter conditions defining constraints on data selection, specified as field-value mappings or operators.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "aggregations", + "type": "array", + "description": "List of aggregation operations such as SUM, AVG, COUNT applied to fields.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "groupBy", + "type": "array", + "description": "Fields to group the query results by.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of records to return.", + "required": false, + "defaultValue": "100" + }, + { + "name": "sortBy", + "type": "array", + "description": "Fields and sort directions (ASC/DESC) to order the results, e.g. [{field:'date', direction:'DESC'}].", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed query, including queryString and optional metadata describing the query components." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate data queries from user or system defined parameters for datasets, enabling automated data retrieval and analysis. Ideal for building dynamic, parameterized queries in data analytics workflows and dashboards.", + "limitations": "This tool does not execute the query against databases; it only constructs the query representation. It may not support highly complex nested queries or database-specific dialects without additional customization.", + "examples": [ + "Create a query to retrieve sales and customer info with filters on date and region, grouped by product category.", + "Generate an aggregation query to count distinct users per country, sorted by user count descending.", + "Build a query selecting specific fields with a limit for preview purposes." + ] + }, + "tags": [ + "data", + "query", + "analytics", + "aggregation", + "filtering", + "grouping", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"datasetId\":\"sales_db\",\"fields\":[\"customer_id\",\"purchase_amount\"],\"filters\":{\"purchase_date\":{\"gte\":\"2023-01-01\"},\"region\":\"EMEA\"},\"groupBy\":[\"product_category\"],\"aggregations\":[{\"function\":\"SUM\",\"field\":\"purchase_amount\"}],\"limit\":100,\"sortBy\":[{\"field\":\"purchase_amount\",\"direction\":\"DESC\"}]}", + "description": "Query sales database for total purchase amount by product category for EMEA region after 2023-01-01, sorted by purchase amount descending." + }, + { + "inputJson": "{\"datasetId\":\"user_data\",\"fields\":[\"country\"],\"aggregations\":[{\"function\":\"COUNT_DISTINCT\",\"field\":\"user_id\"}],\"groupBy\":[\"country\"],\"sortBy\":[{\"field\":\"COUNT_DISTINCT_user_id\",\"direction\":\"DESC\"}]}", + "description": "Generate a query to count distinct users per country, ordered by user counts descending." + }, + { + "inputJson": "{\"datasetId\":\"inventory\",\"fields\":[\"item_id\",\"stock_level\"],\"limit\":10}", + "description": "Create a simple query to preview first 10 inventory items with their stock levels." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "data-analytics.createVariable", + "description": "Creates a new derived variable in a dataset based on existing data columns using specified transformation or calculation rules. Accepts dataset as array of objects, applies the defined formula or logic, and outputs the original dataset augmented with the new variable for further analysis.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "Array of data records, each an object representing a row with key-value pairs for columns", + "required": true, + "defaultValue": "" + }, + { + "name": "variableName", + "type": "string", + "description": "The name of the new variable to create and add to each data record", + "required": true, + "defaultValue": "" + }, + { + "name": "formula", + "type": "string", + "description": "A JavaScript expression or formula using existing columns to compute the new variable's value", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, overwrite existing variable with the same name; if false, raises error or skips", + "required": false, + "defaultValue": "false" + }, + { + "name": "missingValueStrategy", + "type": "string", + "description": "Strategy to handle missing or undefined inputs in formula: 'skip', 'default', or 'error'", + "required": false, + "defaultValue": "skip" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Default value to assign when missingValueStrategy is 'default' and inputs are missing", + "required": false, + "defaultValue": "null" + } + ], + "returns": { + "type": "object", + "description": "Returns the updated dataset as an array of objects, each including the new variable with computed values" + }, + "aiAgent": { + "useCase": "Use this tool when you need to augment raw datasets with new calculated variables or features derived from existing columns, enabling enhanced analytics, modeling, or reporting workflows. It helps in feature engineering and data transformation scenarios.", + "limitations": "The formula must be a valid JavaScript expression referencing existing column names exactly. Complex data types or external data sources cannot be accessed within the formula. Large datasets may require optimized execution beyond the tool's scope.", + "examples": [ + "Create a new variable 'BMI' based on 'weight' and 'height' columns using the formula 'weight / (height/100) ** 2'.", + "Add a binary flag variable 'isAdult' setting 1 if 'age' >= 18 else 0.", + "Generate a new variable 'totalPrice' by multiplying 'unitPrice' and 'quantity'." + ] + }, + "tags": [ + "data", + "variable", + "transformation", + "feature-engineering", + "analytics", + "calculation", + "dataset" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"age\":25,\"height\":175,\"weight\":70},{\"age\":32,\"height\":160,\"weight\":60}],\"variableName\":\"BMI\",\"formula\":\"weight / ((height/100) * (height/100))\"}", + "description": "Calculate Body Mass Index (BMI) for each record based on weight and height fields." + }, + { + "inputJson": "{\"dataset\":[{\"age\":17},{\"age\":20}],\"variableName\":\"isAdult\",\"formula\":\"age >= 18 ? 1 : 0\"}", + "description": "Create a binary indicator variable 'isAdult' based on age." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "data-transformation.generateCSV", + "description": "Generates a CSV formatted string from an array of objects. Accepts structured data as an array of JSON objects, converts each object's fields into CSV columns, supports optional headers and custom delimiters, and produces a CSV string as output.", + "category": "data-transformation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing rows to convert to CSV, each object should have consistent fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Determines whether to include a header row with column names extracted from object keys.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate values in each row; defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character to use for quoting fields containing delimiters or special characters; defaults to double quote (\").", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineEnding", + "type": "string", + "description": "String to use for line breaks between rows; defaults to '\\n'.", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "fieldsOrder", + "type": "array", + "description": "Optional array specifying the order of fields (columns) in the CSV output; if omitted, field order is derived from the first object's keys.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV string under the 'csv' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured JSON data into a standardized CSV format for purposes like data export, interoperability, reporting, or feeding CSV-compatible downstream applications. Ideal for automating the creation of CSV files from API responses or in-memory datasets.", + "limitations": "Does not perform data validation or complex transformations such as nested object flattening; fields must be flat key-value pairs. It also does not handle streaming large datasets and assumes all data fits in memory.", + "examples": [ + "Convert an array of user objects into CSV with headers included.", + "Generate CSV without headers and use semicolon as delimiter.", + "Specify a custom column order in the output CSV." + ] + }, + "tags": [ + "data transformation", + "csv", + "export", + "format conversion", + "json to csv" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"includeHeaders\":true}", + "description": "Convert a simple array of user objects to CSV including headers." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Book\",\"price\":12.99,\"stock\":100},{\"product\":\"Pen\",\"price\":1.99,\"stock\":500}],\"includeHeaders\":false,\"delimiter\":\";\"}", + "description": "Generate CSV from product data without headers and using semicolon delimiter." + }, + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"fieldsOrder\":[\"city\",\"name\",\"age\"]}", + "description": "Generate CSV specifying custom column order different from object key order." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "data-transformation.createParagraph", + "description": "Creates a well-formed paragraph by combining an array of sentences or text fragments. It accepts an array of strings, optionally formats text with capitalization and punctuation, and outputs a single coherent paragraph string.", + "category": "data-transformation", + "parameters": [ + { + "name": "sentences", + "type": "array", + "description": "An array of strings where each item is a sentence or fragment to be combined into a paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeSentences", + "type": "boolean", + "description": "Whether to capitalize the first letter of each sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "addPeriods", + "type": "boolean", + "description": "Whether to append periods to sentences that don't already end with proper punctuation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "separator", + "type": "string", + "description": "String used to separate sentences in the paragraph, usually a space.", + "required": false, + "defaultValue": " " + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from sentences before combining.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the combined paragraph string as 'paragraph', properly formatted." + }, + "aiAgent": { + "useCase": "Use this tool when you have multiple sentences or text snippets that need to be combined into a single, coherent paragraph for display, storage, or further processing. It helps standardize paragraph formatting by capitalizing sentences and ensuring punctuation consistency, ensuring output is readable and well-formed.", + "limitations": "Does not perform deep grammatical corrections or text rewriting; cannot fix sentence meaning or style beyond basic capitalization and punctuation handling.", + "examples": [ + "Create a paragraph from an array of unformatted sentences.", + "Combine text fragments into a formatted paragraph for a report section.", + "Generate a paragraph by ensuring all sentences end with periods and start capitalized." + ] + }, + "tags": [ + "data-transformation", + "text-processing", + "paragraph", + "formatting", + "combining", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"sentences\":[\"this is the first sentence\",\"here is the second\",\"finally the last one\"],\"capitalizeSentences\":true,\"addPeriods\":true}", + "description": "Combine three lowercase sentences into a properly capitalized paragraph with periods." + }, + { + "inputJson": "{\"sentences\":[\"already formatted sentence.\",\"Second sentence!\"]}", + "description": "Combine sentences that already have punctuation without adding new periods." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "data-transformation.generateParagraph", + "description": "Generates a coherent paragraph of text based on a given topic, desired length, and tone. Accepts a topic string and optional parameters for length (number of sentences) and tone to produce a natural-language paragraph suitable for content creation, summaries or explanations.", + "category": "data-transformation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The central theme or subject the paragraph should focus on.", + "required": true, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate number of sentences in the generated paragraph.", + "required": false, + "defaultValue": "5" + }, + { + "name": "tone", + "type": "string", + "description": "The style or tone of the paragraph such as formal, casual, or informative.", + "required": false, + "defaultValue": "informative" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text under the 'paragraph' key." + }, + "aiAgent": { + "useCase": "Use this tool to generate concise, contextually relevant paragraphs for a given topic when you need to create written content, summaries, or explanatory text programmatically. It helps automate content generation while allowing control over length and tone to fit various applications like reports, blogs, or assistive writing.", + "limitations": "Cannot guarantee factual accuracy or deep expertise on specialized topics; may produce generic or plausible-sounding but incorrect information. Not suitable for very short or highly technical texts requiring expert-level detail.", + "examples": [ + "Generate a 5-sentence formal paragraph about climate change.", + "Create a casual 3-sentence paragraph explaining photosynthesis.", + "Write an informative paragraph on the benefits of meditation, about 7 sentences long." + ] + }, + "tags": [ + "text-generation", + "content-creation", + "data-transformation", + "natural-language", + "paragraph", + "writing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Renewable energy\",\"length\":6,\"tone\":\"informative\"}", + "description": "Generate an informative paragraph about renewable energy with 6 sentences." + }, + { + "inputJson": "{\"topic\":\"Benefits of exercise\",\"length\":4,\"tone\":\"casual\"}", + "description": "Create a casual paragraph with 4 sentences explaining the benefits of exercise." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "data-transformation.createSummary", + "description": "This tool accepts a textual document or multiple documents as input and generates a concise summary highlighting the key points. It processes the input text using natural language processing techniques to extract main ideas and produce a shortened, coherent summary text output suitable for quick understanding or briefing.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The full text document or concatenated documents to be summarized. Required for summarization.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired maximum length of the summary in number of sentences. If omitted, defaults to 3 sentences.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text for accurate processing (e.g., 'en' for English). Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to include a list of key phrases or keywords extracted from the document along with the summary. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "useAdvancedModel", + "type": "boolean", + "description": "Whether to use a more advanced summarization model, which may improve quality but require more processing time and resources. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and optional key phrases if requested. The summary is a string and keyPhrases is an array of strings." + }, + "aiAgent": { + "useCase": "Use this tool when needing to condense large textual documents into shorter, digestible summaries for briefings, reports, or quick review. It helps summarize articles, reports, emails, or any text data needing abstraction of main points.", + "limitations": "The tool cannot ensure comprehensive understanding of highly technical or ambiguous text. Summaries are approximate and may omit nuanced details. The quality depends on input text clarity and language support.", + "examples": [ + "Summarize a long research article to extract main findings in about five sentences.", + "Create a short summary and key phrases from a user-provided meeting transcript.", + "Generate a three-sentence summary from multiple concatenated news stories in English." + ] + }, + "tags": [ + "summary", + "text-processing", + "natural-language", + "document", + "abstraction", + "key-phrases", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Artificial intelligence (AI) is the simulation of human intelligence processes by machines, especially computer systems. These processes include learning (the acquisition of information and rules for using the information), reasoning (using rules to reach approximate or definite conclusions), and self-correction.\",\"summaryLength\":2,\"language\":\"en\",\"includeKeyPhrases\":true}", + "description": "Summarize a short definition of artificial intelligence, returning two sentences and key phrases." + }, + { + "inputJson": "{\"inputText\":\"The quarterly financial report shows an increase in revenue by 15% compared to the previous quarter, driven mainly by growth in the Asia-Pacific market segment.\",\"summaryLength\":1,\"includeKeyPhrases\":false}", + "description": "Create a one-sentence summary of a financial report snippet without key phrases." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "data-validation.analyzeSentence", + "description": "Analyzes a given English sentence to validate its grammar, assess readability, check for common writing issues, and provide detailed feedback. Accepts a string input sentence and returns a structured report including grammar correctness, readability score, detected errors, and suggestions.", + "category": "data-validation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The English sentence text to analyze for validation and feedback.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkGrammar", + "type": "boolean", + "description": "Whether to perform grammatical correctness checking.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkReadability", + "type": "boolean", + "description": "Whether to compute a readability score (e.g., Flesch-Kincaid).", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectIssues", + "type": "array", + "description": "Specific writing issues to detect such as passive voice, repeated words, clichés. Empty array means detect all.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Detailed analysis report including grammar correctness, a readability score, specific detected issues with explanations, and improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when validating the quality of English sentences, such as in content moderation, writing assistance, or data preprocessing pipelines. It helps verify grammatical soundness, measure readability, and identify common writing issues to improve text quality before publishing or further analysis.", + "limitations": "This tool analyzes only single English sentences. It does not handle multi-sentence paragraphs, other languages, or domain-specific jargon. It cannot replace full grammar checkers or advanced semantic analysis.", + "examples": [ + "Analyze the sentence 'The quick brown fox jumps over the lazy dog.' for grammar and readability.", + "Check the sentence 'This sentence are not correct' for grammatical errors and passive voice.", + "Provide suggestions to improve the readability and fix clichés in 'At the end of the day, it was a win-win situation.'" + ] + }, + "tags": [ + "data-validation", + "text-analysis", + "grammar-check", + "readability", + "writing-assistance" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"The cat sit on the mat.\"}", + "description": "Analyze a simple grammatically incorrect sentence for grammar errors and readability." + }, + { + "inputJson": "{\"sentence\":\"Due to the fact that he was late, the meeting started without him.\",\"detectIssues\":[\"cliches\",\"passiveVoice\"]}", + "description": "Check a sentence for clichés and passive voice usage." + }, + { + "inputJson": "{\"sentence\":\"AI language models have improved a lot in recent years.\"}", + "description": "Evaluate a grammatically correct sentence for readability and grammar correctness." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "data-validation.createEvent", + "description": "Validates and constructs a structured analytics event object from input parameters. It accepts event metadata, user attributes, and event properties, checks for required fields and correct data types, and outputs a validated event object ready for analytics ingestion.", + "category": "data-validation", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The name of the analytics event to create (e.g., 'button_click').", + "required": true, + "defaultValue": "" + }, + { + "name": "eventTimestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp indicating when the event occurred.", + "required": false, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user who triggered the event.", + "required": true, + "defaultValue": "" + }, + { + "name": "userProperties", + "type": "object", + "description": "Key-value pairs of user attributes (e.g., {'age': 30, 'subscription': 'premium'}).", + "required": false, + "defaultValue": "" + }, + { + "name": "eventProperties", + "type": "object", + "description": "Key-value pairs detailing event-specific properties (e.g., {'buttonColor': 'red', 'page': 'homepage'}).", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the event against a predefined schema for completeness and correctness.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the validated event data with metadata about validation status and error details if any." + }, + "aiAgent": { + "useCase": "Use this tool to create and validate analytics events before sending them to downstream systems to ensure data quality and integrity. It helps prevent malformed or incomplete event data from polluting analytics databases.", + "limitations": "Does not enrich event data from external sources; schema validation depends on predefined schemas being available; cannot process streamed events in real-time.", + "examples": [ + "Create a page view event with user properties.", + "Generate a button click event and validate required fields.", + "Create a purchase event including event and user attributes with timestamp." + ] + }, + "tags": [ + "validation", + "analytics", + "event", + "data-quality", + "user-attributes", + "schema-validation" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"page_view\",\"eventTimestamp\":\"2024-06-20T15:30:00Z\",\"userId\":\"user123\",\"userProperties\":{\"age\":29,\"premiumUser\":true},\"eventProperties\":{\"page\":\"home\"},\"validateSchema\":true}", + "description": "Create a validated 'page_view' event with user and event properties including timestamp." + }, + { + "inputJson": "{\"eventName\":\"button_click\",\"userId\":\"user456\",\"eventProperties\":{\"buttonColor\":\"green\",\"buttonId\":\"signup\"},\"validateSchema\":true}", + "description": "Create a 'button_click' event with button properties and validate it without providing timestamp." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "data-validation.createCSV", + "description": "Generates a CSV formatted string from input data, typically an array of objects or arrays. Processes the data by converting given input records and headers into properly escaped CSV text, supporting custom delimiters and optional inclusion of header row. Outputs a CSV string ready for saving or transmission.", + "category": "data-validation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects (dictionaries) or arrays representing rows of data to be converted into CSV format.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "array", + "description": "An optional array of strings specifying the CSV header row; if omitted and data is array of objects, headers are inferred from keys of first object.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character used to separate CSV fields, default is comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include the header row in the CSV output. Defaults to true if headers are present or inferred.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteFields", + "type": "boolean", + "description": "If true, all fields will be enclosed in quotes; otherwise only fields containing delimiters, quotes, or newlines are quoted. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV formatted string in 'csvString' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare or export data from structured objects/arrays into a CSV format for data exchange, reporting, or file generation. It is useful for generating clean CSV text with customizable options like delimiters and headers.", + "limitations": "This tool does not validate data semantics or types beyond formatting for CSV output, nor does it support complex nested structures or streaming large datasets.", + "examples": [ + "Convert an array of objects to CSV string including headers.", + "Generate CSV with a custom delimiter (e.g., tab \\t) without headers.", + "Export array of arrays to CSV with all fields quoted." + ] + }, + "tags": [ + "data", + "csv", + "export", + "formatting", + "validation" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30},{\"name\":\"Bob\",\"age\":25}]}", + "description": "Basic usage converting array of objects to CSV string with inferred headers." + }, + { + "inputJson": "{\"data\":[[\"Alice\",30],[\"Bob\",25]],\"headers\":[\"name\",\"age\"],\"delimiter\":\"\\t\",\"includeHeaders\":true}", + "description": "Create tab-delimited CSV from array of arrays with explicit headers." + }, + { + "inputJson": "{\"data\":[{\"city\":\"New York\",\"state\":\"NY\"},{\"city\":\"Los Angeles\",\"state\":\"CA\"}],\"quoteFields\":true}", + "description": "CSV generation with all fields quoted." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "etl-processes.analyzeTable", + "description": "This tool accepts a structured tabular dataset (as an array of objects or a CSV string) and performs comprehensive data analysis including summary statistics, missing value detection, data type inference, and basic distribution insights for each column. It outputs a detailed report to help understand the data quality and characteristics for informed ETL decisions.", + "category": "etl-processes", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "The table data to analyze, given as an array of objects where each object represents a row with key-value pairs for columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "The format of the input table data; accepts 'json' (array of objects) or 'csv' string. Default is 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeNullAnalysis", + "type": "boolean", + "description": "Whether to include analysis of missing/null values per column. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sampleSize", + "type": "number", + "description": "Number of rows to sample for analysis to improve performance. If 0 or omitted, analyzes all rows. Default is 0.", + "required": false, + "defaultValue": "0" + }, + { + "name": "columnsToAnalyze", + "type": "array", + "description": "Optional list of column names to restrict analysis to. If empty or omitted, analyzes all columns.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including summary statistics (count, mean, median, mode, std deviation) for numeric columns, frequency counts for categorical columns, detected data types, and missing value statistics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly understand the structure, quality, and key statistics of an input tabular dataset to guide further ETL steps such as cleaning, transformation, or validation. It is especially helpful for exploratory data profiling before pipeline development.", + "limitations": "This tool does not perform data cleaning, transformation, or visualization. It only analyzes and summarizes data characteristics. It may not handle extremely large datasets efficiently without sampling.", + "examples": [ + "Analyze this JSON table data and provide summary statistics and missing value analysis.", + "Provide a detailed type inference and distribution report for these CSV rows.", + "Analyze only the columns 'age' and 'income' from this dataset for data quality insights." + ] + }, + "tags": [ + "etl", + "data-analysis", + "table", + "profiling", + "data-quality", + "summary", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"name\":\"Alice\",\"age\":30,\"income\":70000},{\"name\":\"Bob\",\"age\":null,\"income\":48000},{\"name\":\"Charlie\",\"age\":25,\"income\":null}],\"dataFormat\":\"json\",\"includeNullAnalysis\":true}", + "description": "Analyze a small JSON table to get statistics and null value report." + }, + { + "inputJson": "{\"tableData\":\"name,age,income\\nAlice,30,70000\\nBob,,48000\\nCharlie,25,\",\"dataFormat\":\"csv\",\"includeNullAnalysis\":true}", + "description": "Analyze a CSV string input including missing values." + }, + { + "inputJson": "{\"tableData\":[{\"id\":1,\"score\":88},{\"id\":2,\"score\":92},{\"id\":3,\"score\":85}],\"columnsToAnalyze\":[\"score\"]}", + "description": "Analyze only the 'score' column from JSON table data." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "etl-processes.formatText", + "description": "Formats input text according to specified rules such as trimming whitespace, changing case (uppercase, lowercase, title case), replacing substrings, and normalizing spacing. Accepts raw text and outputs the transformed text string.", + "category": "etl-processes", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input text string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to remove leading and trailing whitespace from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "caseFormat", + "type": "string", + "description": "The case transformation to apply: 'none', 'uppercase', 'lowercase', or 'titleCase'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "replaceRules", + "type": "array", + "description": "An array of objects each with 'from' and 'to' strings to replace all occurrences of 'from' with 'to' in the text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "normalizeSpaces", + "type": "boolean", + "description": "If true, replaces multiple consecutive whitespace characters with a single space.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted text string in the 'formattedText' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to clean and format raw text data as part of an ETL process or pre-processing pipeline, such as standardizing case, trimming unwanted whitespace, normalizing spacing, or applying bulk substring replacements.", + "limitations": "This tool does not perform grammar correction, semantic transformations, or language translation.", + "examples": [ + "Format the raw text by trimming spaces and converting all letters to lowercase.", + "Replace all occurrences of 'foo' with 'bar' in a given text and convert to title case.", + "Normalize multiple spaces to single spaces and trim leading/trailing whitespace." + ] + }, + "tags": [ + "text", + "formatting", + "ETL", + "preprocessing", + "string manipulation" + ], + "examples": [ + { + "inputJson": "{\"text\":\" Hello World! \",\"trimWhitespace\":true,\"caseFormat\":\"uppercase\",\"replaceRules\":[],\"normalizeSpaces\":true}", + "description": "Trim whitespace and convert to uppercase." + }, + { + "inputJson": "{\"text\":\"hello foo foo world\",\"trimWhitespace\":false,\"caseFormat\":\"titleCase\",\"replaceRules\":[{\"from\":\"foo\",\"to\":\"bar\"}],\"normalizeSpaces\":false}", + "description": "Replace 'foo' with 'bar' and convert to title case without trimming whitespace." + }, + { + "inputJson": "{\"text\":\"Multiple spaces here.\",\"trimWhitespace\":true,\"caseFormat\":\"none\",\"replaceRules\":[],\"normalizeSpaces\":true}", + "description": "Normalize multiple spaces into single spaces and trim whitespace." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "etl-processes.buildEndpoint", + "description": "Constructs a fully configured API endpoint for ETL workflows by accepting source and target data specifications, transformation logic, and protocol settings. Processes inputs to generate deployable endpoint code or configuration that extracts data, applies transformations, and loads it to target systems.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration object specifying the data source details including type, connection parameters, and query or extraction method.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "Array of transformation definitions that specify how source data should be manipulated before loading, e.g., filtering, mapping, or aggregation.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetConfig", + "type": "object", + "description": "Configuration object defining the target system for loading data including type, connection info, and destination details.", + "required": true, + "defaultValue": "" + }, + { + "name": "protocol", + "type": "string", + "description": "The communication protocol for the endpoint, such as REST, gRPC, or websocket.", + "required": false, + "defaultValue": "REST" + }, + { + "name": "endpointPath", + "type": "string", + "description": "The URL path where the endpoint will be accessible.", + "required": false, + "defaultValue": "/etl-endpoint" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional authentication settings such as API keys, OAuth tokens, or basic auth to secure the endpoint.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum allowed duration in seconds for the ETL operation before timeout.", + "required": false, + "defaultValue": "60" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of ETL endpoint operations for monitoring or debugging.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated endpoint code or configuration string, status message, and endpoint metadata including accessible URL and protocol." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build or configure an API endpoint that performs ETL by extracting data from a source, applying transformations, and loading results to a target system. Ideal for automating data integration pipelines and exposing them as APIs.", + "limitations": "This tool does not execute or deploy the endpoint, nor does it handle runtime errors beyond configuration. It expects valid source and target configurations beforehand.", + "examples": [ + "Create a REST API endpoint to extract sales data from a SQL database, filter it for the last month, transform currency fields, and load into a reporting data warehouse.", + "Generate a gRPC endpoint that pulls JSON data from a web API, applies mapping transformations, and writes the output to a cloud storage bucket.", + "Build an authenticated websocket endpoint for streaming IoT sensor data, performing aggregation, before loading into a time-series database." + ] + }, + "tags": [ + "etl", + "endpoint", + "api", + "data-integration", + "automation", + "build", + "transform", + "load" + ], + "examples": [ + { + "inputJson": "{\"sourceConfig\":{\"type\":\"sql\",\"connectionString\":\"Server=myserver;Database=sales;User Id=admin;Password=pass;\",\"query\":\"SELECT * FROM transactions WHERE date >= '2024-01-01'\"},\"transformations\":[{\"type\":\"filter\",\"field\":\"amount\",\"operator\":\">\", \"value\":100},{\"type\":\"map\",\"field\":\"currency\",\"mapping\":{\"USD\":\"usd\",\"EUR\":\"eur\"}}],\"targetConfig\":{\"type\":\"datawarehouse\",\"connectionString\":\"warehouse://load?db=analytics\"},\"protocol\":\"REST\",\"endpointPath\":\"/api/sales-data\",\"authentication\":{\"apiKey\":\"abcdef12345\"},\"timeoutSeconds\":120,\"enableLogging\":true}", + "description": "Build a REST API endpoint that extracts large transactions since 2024-01-01 from SQL, transforms currency fields, loads to data warehouse, secured with API key." + }, + { + "inputJson": "{\"sourceConfig\":{\"type\":\"http\",\"endpoint\":\"https://api.example.com/sensors\",\"method\":\"GET\"},\"transformations\":[{\"type\":\"aggregate\",\"field\":\"temperature\",\"operation\":\"avg\"}],\"targetConfig\":{\"type\":\"timeseriesdb\",\"connectionString\":\"tsdb://host:port/db\"},\"protocol\":\"WebSocket\",\"endpointPath\":\"/ws/sensors\",\"authentication\":{},\"timeoutSeconds\":30,\"enableLogging\":false}", + "description": "Create a websocket endpoint that pulls sensor data from HTTP API, averages temperature values, and loads into timeseries DB without authentication." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "etl-processes.buildModule", + "description": "Builds a reusable ETL (Extract, Transform, Load) module from user specifications. Accepts configuration inputs describing data sources, transformation rules, and target destinations. Processes the inputs to generate a code module/script that automates the ETL workflow, outputting the complete module as a source code string for integration or deployment.", + "category": "etl-processes", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "Name of the ETL module to be generated, used as a class or function name in code.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of the source system (e.g., 'database', 'csv', 'api').", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration details needed to connect/read from the source system (e.g., connection strings, file paths).", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "List of transformation steps or rules to apply to the extracted data (e.g., mapping fields, filtering, aggregating).", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationType", + "type": "string", + "description": "Type of the target system where data should be loaded (e.g., 'database', 'dataWarehouse', 'file').", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationConfig", + "type": "object", + "description": "Connection or write configuration details for the destination system.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeErrorHandling", + "type": "boolean", + "description": "Flag to include error handling and logging code in the generated ETL module.", + "required": false, + "defaultValue": "true" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language for the generated ETL module (e.g., 'Python', 'JavaScript').", + "required": false, + "defaultValue": "Python" + } + ], + "returns": { + "type": "object", + "description": "An object containing source code of the ETL module as a string along with metadata such as language and module name." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a custom ETL module quickly based on detailed source, transformation, and destination specifications. Ideal for automating data pipeline assembly, enabling rapid integration of varying data sources and load targets without manual coding.", + "limitations": "It cannot connect to or validate live data sources or perform actual data extraction/load at runtime—only generates the module code. Complex transformations requiring user-defined functions outside basic mapping/filtering may need manual editing after generation.", + "examples": [ + "Build an ETL module named 'UserDataSync' extracting from a MySQL database, transforming user fields, and loading into a PostgreSQL table.", + "Create a CSV to JSON loader ETL module with filtering and field renaming steps, targeting a file storage destination.", + "Generate a simple ETL process module in JavaScript to pull data from a REST API, capitalize certain string fields, and load it to a MongoDB database." + ] + }, + "tags": [ + "etl", + "code-generation", + "data-pipelines", + "automation", + "transformation", + "loading", + "extraction" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"CustomerDataETL\",\"sourceType\":\"database\",\"sourceConfig\":{\"host\":\"db.example.com\",\"port\":3306,\"username\":\"user\",\"password\":\"pass\",\"database\":\"sales\"},\"transformations\":[{\"type\":\"mapFields\",\"mapping\":{\"cust_id\":\"customerId\",\"cust_name\":\"name\"}},{\"type\":\"filter\",\"condition\":\"region == 'US'\"}],\"destinationType\":\"dataWarehouse\",\"destinationConfig\":{\"host\":\"dw.example.com\",\"port\":5432,\"username\":\"dwuser\",\"password\":\"dwpass\",\"database\":\"analytics\"},\"includeErrorHandling\":true,\"programmingLanguage\":\"Python\"}", + "description": "Generate a Python ETL module named 'CustomerDataETL' that connects to a MySQL database as source, transforms fields and filters for US region customers, and loads into a data warehouse using PostgreSQL." + }, + { + "inputJson": "{\"moduleName\":\"ApiToCsvETL\",\"sourceType\":\"api\",\"sourceConfig\":{\"endpoint\":\"https://api.example.com/data\",\"authToken\":\"abcdef123456\"},\"transformations\":[{\"type\":\"filter\",\"condition\":\"status == 'active'\"},{\"type\":\"renameFields\",\"mapping\":{\"firstName\":\"first_name\",\"lastName\":\"last_name\"}}],\"destinationType\":\"csv\",\"destinationConfig\":{\"filePath\":\"/tmp/output.csv\"},\"includeErrorHandling\":false,\"programmingLanguage\":\"JavaScript\"}", + "description": "Create a JavaScript ETL module named 'ApiToCsvETL' extracting data from a REST API with authentication, filtering active records, renaming fields, and saving to a CSV file, without error handling code." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "etl-processes.createKPI", + "description": "Creates a Key Performance Indicator (KPI) definition based on provided raw data source, transformation rules, and calculation logic. Accepts details about data inputs, aggregation methods, filters, and target metrics, then outputs a structured KPI object ready for integration into reporting or analytics systems.", + "category": "etl-processes", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "Name of the KPI to be created, used as an identifier and display label.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "object", + "description": "Definition of the raw data source including type (e.g., database, CSV), location, and schema details.", + "required": true, + "defaultValue": "" + }, + { + "name": "calculationLogic", + "type": "string", + "description": "Expression or formula defining how the KPI value should be calculated from the data source fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method for aggregating data points (e.g., sum, average, count) to compute the KPI.", + "required": true, + "defaultValue": "sum" + }, + { + "name": "filters", + "type": "array", + "description": "Optional list of filter conditions to apply on the data source to refine the KPI dataset before calculation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetFrequency", + "type": "string", + "description": "Reporting frequency for the KPI (e.g., daily, weekly, monthly).", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description explaining the KPI's purpose and usage.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured KPI object including name, data source metadata, calculation details, filters, aggregation method, and frequency ready for use in analytics workflows." + }, + "aiAgent": { + "useCase": "Use this tool when you need to define a new KPI by specifying the underlying raw data, transformation logic, and aggregation rules. It helps automate the setup of KPIs for dashboards, reports, or monitoring systems by generating standardized KPI definitions.", + "limitations": "This tool does not connect to live data sources or perform the actual data extraction. It only defines KPI metadata and calculation logic. Data validation or result computation must be handled separately.", + "examples": [ + "Create a KPI to measure monthly total sales from a sales database with sum aggregation and filtering for active products.", + "Define a daily KPI measuring average customer satisfaction score from survey CSV files, applying weighted calculation logic." + ] + }, + "tags": [ + "etl", + "kpi", + "analytics", + "data-transformation", + "reporting", + "metric-definition" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"MonthlyTotalSales\",\"dataSource\":{\"type\":\"database\",\"connectionString\":\"Server=myServer;Database=salesDb;\",\"table\":\"transactions\"},\"calculationLogic\":\"SUM(amount)\",\"aggregationMethod\":\"sum\",\"filters\":[{\"field\":\"status\",\"operator\":\"=\",\"value\":\"completed\"}],\"targetFrequency\":\"monthly\",\"description\":\"Total sales amount for completed transactions each month.\"}", + "description": "Create a KPI that sums completed sales transactions monthly from a database." + }, + { + "inputJson": "{\"kpiName\":\"DailyAvgCustomerSatisfaction\",\"dataSource\":{\"type\":\"csv\",\"path\":\"/data/surveys/daily_scores.csv\",\"schema\":{\"fields\":[{\"name\":\"score\",\"type\":\"number\"},{\"name\":\"date\",\"type\":\"string\"}]}},\"calculationLogic\":\"AVG(score)\",\"aggregationMethod\":\"average\",\"filters\":[],\"targetFrequency\":\"daily\",\"description\":\"Average daily customer satisfaction score from survey data.\"}", + "description": "Define a KPI for the average customer satisfaction score per day using CSV survey data." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "etl-processes.createTable", + "description": "Creates a new data table within a specified database or data store based on provided schema definitions and optional initial data. Accepts inputs defining table name, columns with data types and constraints, and optionally initial rows to populate. Outputs a confirmation of table creation with metadata including schema and row count.", + "category": "etl-processes", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "Name of the table to be created in the data store.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Array of column definitions, each containing column name, data type, and optional constraints such as primary key or not null.", + "required": true, + "defaultValue": "" + }, + { + "name": "primaryKey", + "type": "array", + "description": "Optional array of column names to designate as primary key(s) for the table.", + "required": false, + "defaultValue": "" + }, + { + "name": "initialData", + "type": "array", + "description": "Optional array of objects representing rows to insert immediately after table creation; keys correspond to column names.", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database system where the table will be created, e.g., 'sql', 'nosql', or specific like 'postgres', 'mongodb'.", + "required": false, + "defaultValue": "sql" + }, + { + "name": "ifNotExists", + "type": "boolean", + "description": "Whether to skip creation if table already exists (true), or throw an error (false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object confirming success status, table metadata including name, columns, primary key, and number of rows inserted." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically define and create new data tables in ETL workflows, enabling structured data storage prior to transform and load phases. Ideal for agents orchestrating database schema setup or data warehouse table management.", + "limitations": "Cannot perform complex database-specific configurations such as indexes beyond primary keys or set up triggers. Does not support schema evolution or altering existing tables.", + "examples": [ + "Create a user table with id as primary key and initial sample users.", + "Create a sales data table with columns for date, product, and amount without initial data.", + "Create a product catalog table with constraints if it does not exist" + ] + }, + "tags": [ + "etl", + "table", + "database", + "schema", + "create", + "data-structure", + "loading" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"integer\",\"constraints\":[\"primary key\"]},{\"name\":\"username\",\"type\":\"varchar(255)\",\"constraints\":[\"not null\"]},{\"name\":\"email\",\"type\":\"varchar(255)\"}],\"primaryKey\":[\"id\"],\"initialData\":[{\"id\":1,\"username\":\"alice\",\"email\":\"alice@example.com\"},{\"id\":2,\"username\":\"bob\",\"email\":\"bob@example.com\"}],\"databaseType\":\"sql\",\"ifNotExists\":true}", + "description": "Create a 'users' table with id as primary key and two initial user records." + }, + { + "inputJson": "{\"tableName\":\"sales\",\"columns\":[{\"name\":\"sale_date\",\"type\":\"date\"},{\"name\":\"product_id\",\"type\":\"integer\"},{\"name\":\"amount\",\"type\":\"decimal(10,2)\"}],\"databaseType\":\"sql\"}", + "description": "Create a 'sales' table for transactional sales data without initial data." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "database-management.createSchema", + "description": "Creates a new database schema based on the provided schema definition. Accepts a JSON object describing tables, columns, data types, constraints, and relationships. Processes the input to generate and execute SQL commands that instantiate the schema, returning a success status and details of created tables.", + "category": "database-management", + "parameters": [ + { + "name": "schemaDefinition", + "type": "object", + "description": "A JSON object defining the database schema including tables, columns, data types, constraints, and relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database for which the schema will be created, e.g., 'PostgreSQL', 'MySQL', or 'SQLite'.", + "required": true, + "defaultValue": "" + }, + { + "name": "executeOnDatabase", + "type": "boolean", + "description": "Whether to execute the schema creation directly on a connected database instance.", + "required": false, + "defaultValue": "false" + }, + { + "name": "connectionString", + "type": "string", + "description": "Database connection string to use if executeOnDatabase is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, messages, and details of created schema elements" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or initialize a database schema programmatically from a high-level schema definition. This includes generating appropriate SQL statements for various database systems and optionally executing them to instantiate the schema. Useful in automated deployment, migration, or database setup tasks.", + "limitations": "This tool does not validate semantic correctness of the schema beyond basic structure. Complex database-specific features like stored procedures, triggers, or advanced permissions are not handled. Also, it requires valid connection details when execution is requested.", + "examples": [ + "Create a PostgreSQL schema with tables for users and orders from a JSON schema.", + "Generate MySQL schema DDL commands without executing them.", + "Initialize a SQLite schema by executing schema creation commands directly on the database file." + ] + }, + "tags": [ + "database", + "schema", + "creation", + "SQL", + "automation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinition\":{\"tables\":[{\"name\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"SERIAL\",\"primaryKey\":true},{\"name\":\"email\",\"type\":\"VARCHAR(255)\",\"unique\":true},{\"name\":\"created_at\",\"type\":\"TIMESTAMP\"}]}]},\"databaseType\":\"PostgreSQL\",\"executeOnDatabase\":false,\"connectionString\":\"\"}", + "description": "Generate PostgreSQL schema DDL for a users table without executing on a database." + }, + { + "inputJson": "{\"schemaDefinition\":{\"tables\":[{\"name\":\"products\",\"columns\":[{\"name\":\"product_id\",\"type\":\"INT\",\"primaryKey\":true},{\"name\":\"name\",\"type\":\"VARCHAR(100)\"},{\"name\":\"price\",\"type\":\"DECIMAL(10,2)\"}]}]},\"databaseType\":\"MySQL\",\"executeOnDatabase\":true,\"connectionString\":\"mysql://user:pass@localhost:3306/shopdb\"}", + "description": "Create a products table schema and execute it on a local MySQL database." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "database-management.createSpec", + "description": "Creates a structured database specification document based on user-provided schema definitions and configuration options. Accepts input defining tables, fields, data types, constraints, and relationships, then produces a comprehensive JSON or YAML specification outlining the database schema for use in development or documentation.", + "category": "database-management", + "parameters": [ + { + "name": "schemaDefinitions", + "type": "array", + "description": "An array of table or collection definitions including fields, data types, and constraints; each element is an object defining a schema entity.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the output specification document, e.g., 'json' or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeRelationships", + "type": "boolean", + "description": "Whether to include foreign keys and relationships in the specification output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeIndexes", + "type": "boolean", + "description": "Whether to include index definitions in the specification document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "specTitle", + "type": "string", + "description": "Title or name for the specification document.", + "required": false, + "defaultValue": "Database Schema Specification" + }, + { + "name": "version", + "type": "string", + "description": "Version number or identifier for the specification document.", + "required": false, + "defaultValue": "1.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the specification document as a formatted string and metadata such as format and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a clear and standardized database schema specification document from defined schema inputs. It helps when preparing documentation, sharing schema design, or automating database deployment scripts. Especially useful in projects requiring formal spec outputs in JSON or YAML for interoperability or validation.", + "limitations": "Does not generate actual database creation scripts or perform database migrations. It cannot validate the schema for runtime correctness, only produce the specification document.", + "examples": [ + "Generate a JSON spec document from table definitions including relationships.", + "Create a YAML schema spec without index information for documentation.", + "Produce a versioned spec document with a custom title for client review." + ] + }, + "tags": [ + "database", + "schema", + "specification", + "documentation", + "json", + "yaml", + "design" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinitions\":[{\"tableName\":\"Users\",\"fields\":[{\"name\":\"id\",\"type\":\"int\",\"primaryKey\":true},{\"name\":\"username\",\"type\":\"string\",\"unique\":true},{\"name\":\"email\",\"type\":\"string\"}]},{\"tableName\":\"Orders\",\"fields\":[{\"name\":\"orderId\",\"type\":\"int\",\"primaryKey\":true},{\"name\":\"userId\",\"type\":\"int\",\"foreignKey\":{\"table\":\"Users\",\"field\":\"id\"}},{\"name\":\"amount\",\"type\":\"decimal\"}]}],\"outputFormat\":\"json\",\"includeRelationships\":true,\"includeIndexes\":true,\"specTitle\":\"Ecommerce DB Spec\",\"version\":\"2.0\"}", + "description": "Create a JSON schema spec for an ecommerce system with Users and Orders tables including their relationships." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "testing-automation.composeReport", + "description": "Generates a comprehensive test execution report by accepting raw test run data, coverage metrics, and error logs. It processes and formats the data into a structured, human-readable report summarizing test results, coverage statistics, and detailed error information in HTML or PDF format.", + "category": "testing-automation", + "parameters": [ + { + "name": "testResults", + "type": "array", + "description": "Array of individual test case results including status, name, and duration.", + "required": true, + "defaultValue": "" + }, + { + "name": "coverageData", + "type": "object", + "description": "Code coverage metrics data to be included in the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "errorLogs", + "type": "array", + "description": "List of error or failure logs captured during the test run.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output format of the report, e.g., 'html' or 'pdf'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include timestamp of test execution in the report header.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Title for the test report document.", + "required": false, + "defaultValue": "Test Execution Report" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content as a string and the file format." + }, + "aiAgent": { + "useCase": "When an AI agent needs to produce a detailed, readable summary of test execution results for stakeholders, including test pass/fail status, coverage insights, and error details, this tool composes and formats these elements into a standard report document. It is appropriate after test automation suites complete to provide summarized insights.", + "limitations": "Cannot execute or run tests itself; only formats and composes reports from provided test data. It does not analyze source code or fix errors automatically.", + "examples": [ + "Generate a PDF report summarizing last night's automated test results including coverage data.", + "Create an HTML report that compiles test results and error logs with the title 'Sprint 12 QA Report'.", + "Produce a test report in HTML format without coverage details but with error logs included." + ] + }, + "tags": [ + "testing", + "automation", + "reporting", + "test-results", + "coverage", + "error-logging", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"testResults\":[{\"name\":\"LoginTest\",\"status\":\"passed\",\"duration\":12.5},{\"name\":\"SignupTest\",\"status\":\"failed\",\"duration\":10.2}],\"coverageData\":{\"statements\":85,\"branches\":80,\"functions\":90},\"errorLogs\":[\"SignupTest: AssertionError on email validation.\"],\"reportFormat\":\"pdf\",\"includeTimestamp\":true,\"title\":\"Nightly Test Report\"}", + "description": "Generate a PDF test report including test results, coverage metrics, and error logs with timestamp and custom title." + }, + { + "inputJson": "{\"testResults\":[{\"name\":\"APIHealthCheck\",\"status\":\"passed\",\"duration\":5.1}],\"reportFormat\":\"html\",\"includeTimestamp\":false,\"title\":\"API Tests Summary\"}", + "description": "Create a minimal HTML report for a single successful test case without coverage or error logs." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "testing-automation.buildTest", + "description": "Generates automated test code for software applications based on user-defined test scenarios and parameters. Accepts inputs such as test type, target language, framework, and test cases; processes them to build executable test scripts; outputs the generated test code as a string or file content.", + "category": "testing-automation", + "parameters": [ + { + "name": "testType", + "type": "string", + "description": "Type of test to generate (e.g., unit, integration, e2e).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Programming language for the test code (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Testing framework to target (e.g., Jest, Mocha, PyTest, JUnit).", + "required": true, + "defaultValue": "" + }, + { + "name": "testCases", + "type": "array", + "description": "List of test cases details, each including inputs, expected outputs, and descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSetupTeardown", + "type": "boolean", + "description": "Whether to include setup and teardown hooks in the generated test code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of output code (e.g., 'string' for code text, 'file' for file-ready content).", + "required": false, + "defaultValue": "string" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated test code as a string and metadata such as language and framework." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate boilerplate or customized automated test scripts for software projects, speeding up test creation and ensuring consistency across multiple languages and frameworks. It is helpful to quickly turn test case specifications into executable tests in popular programming environments.", + "limitations": "This tool does not execute the generated tests or validate runtime behavior. It does not generate tests with deep complex logic beyond provided scenarios. It relies on the quality and completeness of the input test case definitions.", + "examples": [ + "Generate JavaScript unit tests using Jest for provided function test cases.", + "Build Python integration test scripts using PyTest including setup and teardown.", + "Create end-to-end test scripts in Java using JUnit framework based on user scenarios." + ] + }, + "tags": [ + "testing", + "automation", + "code-generation", + "test-script", + "software-testing", + "unit-test", + "integration-test" + ], + "examples": [ + { + "inputJson": "{\"testType\":\"unit\",\"targetLanguage\":\"JavaScript\",\"testFramework\":\"Jest\",\"testCases\":[{\"description\":\"adds two numbers\",\"input\":{\"a\":1,\"b\":2},\"expectedOutput\":3}],\"includeSetupTeardown\":true,\"outputFormat\":\"string\"}", + "description": "Generate a JavaScript Jest unit test for addition function." + }, + { + "inputJson": "{\"testType\":\"integration\",\"targetLanguage\":\"Python\",\"testFramework\":\"PyTest\",\"testCases\":[{\"description\":\"checks user login flow\",\"input\":{\"username\":\"testuser\",\"password\":\"pass123\"},\"expectedOutput\":true}],\"includeSetupTeardown\":false,\"outputFormat\":\"string\"}", + "description": "Generate a Python PyTest integration test verifying user login without setup/teardown." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "testing-automation.generateParagraph", + "description": "Generates a realistic, coherent paragraph of text for use as dummy content in automated testing scenarios. Accepts parameters to specify topic, length, complexity, and tone, then produces a text paragraph useful for populating UI elements or validating text handling in applications.", + "category": "testing-automation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The subject or theme for the generated paragraph. Helps tailor content to a specific context.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate number of sentences to include in the paragraph. Controls paragraph size.", + "required": false, + "defaultValue": "5" + }, + { + "name": "complexity", + "type": "string", + "description": "Desired complexity or reading grade level of the paragraph; options: 'simple', 'medium', 'complex'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "tone", + "type": "string", + "description": "Stylistic tone of the paragraph, such as 'formal', 'informal', 'neutral'.", + "required": false, + "defaultValue": "neutral" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph as a string property 'paragraph'." + }, + "aiAgent": { + "useCase": "This tool should be used when testing software that requires realistic placeholder text that adapts to different themes, lengths, and complexity levels, such as UI components displaying text, content editors, or formatting validation. It helps create varied and relevant dummy content for automated test scenarios.", + "limitations": "The generated paragraph is synthetic and may lack factual accuracy. It is not suitable for generating domain-specific expert content or highly accurate technical text.", + "examples": [ + "Generate a short, informal paragraph about gardening for a mobile app UI test.", + "Create a medium-length, formal paragraph on data privacy for validating a corporate dashboard.", + "Produce a simple paragraph with no specified topic for generic placeholder text in a web form." + ] + }, + "tags": [ + "testing", + "automation", + "content-generation", + "dummy-text", + "ui-testing", + "paragraph", + "placeholder" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"gardening\",\"length\":3,\"complexity\":\"simple\",\"tone\":\"informal\"}", + "description": "Generate a short, simple, informal paragraph about gardening." + }, + { + "inputJson": "{\"topic\":\"data privacy\",\"length\":6,\"complexity\":\"medium\",\"tone\":\"formal\"}", + "description": "Produce a medium-length, formal paragraph about data privacy." + }, + { + "inputJson": "{\"length\":4}", + "description": "Generate a neutral, medium complexity paragraph of 4 sentences with no specific topic." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "testing-automation.createLead", + "description": "This tool automates the creation of business leads within a test environment. It accepts lead details such as name, contact information, company, and optional metadata, performs validation and submits the lead to the system being tested, and returns the creation status along with a unique lead identifier for further testing workflows.", + "category": "testing-automation", + "parameters": [ + { + "name": "leadName", + "type": "string", + "description": "Full name of the lead to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address of the lead for contact", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Contact phone number of the lead", + "required": false, + "defaultValue": "" + }, + { + "name": "companyName", + "type": "string", + "description": "Name of the company associated with the lead", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional custom key-value pairs related to the lead (e.g., lead source, campaign)", + "required": false, + "defaultValue": "{}" + }, + { + "name": "simulateValidationError", + "type": "boolean", + "description": "If true, simulates a validation error for testing validation handling", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the leadId (string), creationStatus (string: success or failure), and optional errorMessage if creation failed." + }, + "aiAgent": { + "useCase": "Use this tool when automating tests for CRM or lead management systems to programmatically generate leads with specified data, verify lead creation workflows, and validate error handling for bad inputs. Useful for load testing, functional testing, and chained test scenarios involving lead data.", + "limitations": "This tool does not perform real-world lead qualification or enrichment; it strictly automates lead creation in test environments. It may not integrate with all third-party CRM systems without additional adapters.", + "examples": [ + "Create a lead with full contact info for testing lead ingestion.", + "Create a lead with minimal data to check required fields validation.", + "Simulate a validation error by intentionally providing invalid email format." + ] + }, + "tags": [ + "testing", + "automation", + "lead-management", + "crm", + "test-data", + "business" + ], + "examples": [ + { + "inputJson": "{\"leadName\":\"Alice Johnson\",\"email\":\"alice.johnson@example.com\",\"phoneNumber\":\"+1234567890\",\"companyName\":\"Acme Corp\",\"metadata\":{\"source\":\"website\"}}", + "description": "Create a lead named Alice Johnson with contact info and metadata source." + }, + { + "inputJson": "{\"leadName\":\"Bob Smith\",\"email\":\"bob.smith@example.com\"}", + "description": "Create a lead with only required name and email fields to test minimal input." + }, + { + "inputJson": "{\"leadName\":\"Invalid Email\",\"email\":\"invalid-email\",\"simulateValidationError\":true}", + "description": "Simulate a validation error for invalid email format input." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "testing-automation.createModule", + "description": "Generates a structured automated testing module for a specified programming language and framework based on user inputs including test targets, test types, and configurations. It outputs ready-to-use source code files that implement test stubs or full test cases facilitating quick test automation setup.", + "category": "testing-automation", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name of the test module to be created, used as the source file and test suite identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the test module, e.g., 'JavaScript', 'Python', or 'Java'.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Testing framework to target, e.g., 'Jest', 'PyTest', 'JUnit'.", + "required": true, + "defaultValue": "" + }, + { + "name": "testTargets", + "type": "array", + "description": "List of function or component names that the tests should cover.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "testTypes", + "type": "array", + "description": "Types of tests to generate for each target, e.g., ['unit', 'integration', 'mock'].", + "required": false, + "defaultValue": "[\"unit\"]" + }, + { + "name": "includeSetupTeardown", + "type": "boolean", + "description": "Whether to include setup and teardown hooks in the generated module.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputPath", + "type": "string", + "description": "Filesystem path or project directory where the generated module files should be saved.", + "required": false, + "defaultValue": "./tests" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code as string(s), file names, and optionally file system paths where they are saved." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly scaffold or generate automated test code modules for software projects, supporting multiple languages and frameworks. Ideal for accelerating test creation by producing ready test module code based on specified targets and test types, thus streamlining test automation workflows.", + "limitations": "This tool cannot execute tests, perform dynamic analysis, or validate the correctness of generated tests beyond code structure. It also does not handle complex test logic generation or integration with CI/CD pipelines directly.", + "examples": [ + "Create a Jest test module in JavaScript named 'userModuleTests' to unit test functions 'login' and 'logout' with setup/teardown included.", + "Generate a PyTest module in Python named 'apiTests' targeting 'fetchData' for integration tests without setup/teardown.", + "Create a JUnit Java module 'PaymentTests' that mocks database calls for payment processing functions." + ] + }, + "tags": [ + "testing", + "automation", + "module", + "code-generation", + "scaffolding", + "unit-testing", + "integration-testing" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"userModuleTests\",\"language\":\"JavaScript\",\"framework\":\"Jest\",\"testTargets\":[\"login\",\"logout\"],\"testTypes\":[\"unit\"],\"includeSetupTeardown\":true,\"outputPath\":\"./tests\"}", + "description": "Generate a Jest JavaScript test module named 'userModuleTests' for unit testing 'login' and 'logout' functions including setup and teardown hooks." + }, + { + "inputJson": "{\"moduleName\":\"apiTests\",\"language\":\"Python\",\"framework\":\"PyTest\",\"testTargets\":[\"fetchData\"],\"testTypes\":[\"integration\"],\"includeSetupTeardown\":false,\"outputPath\":\"./test/integration\"}", + "description": "Create a PyTest module called 'apiTests' for integration testing of the 'fetchData' function without setup/teardown code." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "devops.analyzeKPI", + "description": "This tool accepts operational metrics data for DevOps environments, including deployment frequency, lead time, change failure rate, and mean time to recovery. It processes this data to analyze key performance indicators (KPIs), identifying trends, bottlenecks, and areas for improvement. The output provides a detailed KPI report including summary statistics, historical comparisons, and recommendations for optimizing DevOps workflows.", + "category": "devops", + "parameters": [ + { + "name": "metricsData", + "type": "array", + "description": "An array of metric objects representing DevOps KPIs over time, each containing timestamp and value fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "Start timestamp (ISO 8601) for the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "End timestamp (ISO 8601) for the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "kpiTypes", + "type": "array", + "description": "Specific KPI types to analyze (e.g., 'deploymentFrequency', 'leadTime', 'changeFailureRate', 'MTTR').", + "required": false, + "defaultValue": "[\"deploymentFrequency\",\"leadTime\",\"changeFailureRate\",\"MTTR\"]" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations based on KPI analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate data points: 'daily', 'weekly', or 'monthly'. Defaults to 'weekly' for trend analysis.", + "required": false, + "defaultValue": "weekly" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed KPI summaries, trend analytics, detected anomalies, and optionally improvement recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing DevOps KPIs to understand performance trends over a specified period, identify operational bottlenecks, and obtain insights into how deployment and recovery processes can be optimized. Especially useful for continuous integration metrics to guide DevOps process improvements.", + "limitations": "Does not provide root cause analysis for individual failures or unrelated system metrics. Accuracy depends on quality and completeness of input data. Not designed to replace specialized monitoring tools but to aggregate and interpret existing KPI data.", + "examples": [ + "Analyze the last quarter's deployment frequency and MTTR with recommendations.", + "Compare change failure rates and lead times between two time periods to identify trends.", + "Generate a KPI summary report focusing only on deployment frequency for the past month." + ] + }, + "tags": [ + "devops", + "kpi", + "analytics", + "performance", + "deployment", + "monitoring", + "continuousIntegration" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":[{\"type\":\"deploymentFrequency\",\"timestamp\":\"2024-03-01T00:00:00Z\",\"value\":5},{\"type\":\"deploymentFrequency\",\"timestamp\":\"2024-03-08T00:00:00Z\",\"value\":7},{\"type\":\"MTTR\",\"timestamp\":\"2024-03-01T00:00:00Z\",\"value\":120}],\"timeRangeStart\":\"2024-03-01T00:00:00Z\",\"timeRangeEnd\":\"2024-03-31T23:59:59Z\",\"kpiTypes\":[\"deploymentFrequency\",\"MTTR\"],\"includeRecommendations\":true,\"aggregationMethod\":\"weekly\"}", + "description": "Analyze deployment frequency and MTTR for March 2024 weekly, including recommendations." + }, + { + "inputJson": "{\"metricsData\":[{\"type\":\"changeFailureRate\",\"timestamp\":\"2024-01-01T00:00:00Z\",\"value\":0.13},{\"type\":\"changeFailureRate\",\"timestamp\":\"2024-02-01T00:00:00Z\",\"value\":0.09}],\"timeRangeStart\":\"2024-01-01T00:00:00Z\",\"timeRangeEnd\":\"2024-02-28T23:59:59Z\",\"kpiTypes\":[\"changeFailureRate\"],\"includeRecommendations\":false,\"aggregationMethod\":\"monthly\"}", + "description": "Monthly change failure rate analysis for Jan and Feb 2024 without recommendations." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "devops.uploadDataset", + "description": "Uploads a dataset file to a specified cloud storage or data repository as part of a DevOps workflow. Accepts dataset files in common formats (CSV, JSON, Parquet), validates integrity, optionally compresses, and uploads to target storage with metadata tagging. Returns upload status and metadata info.", + "category": "devops", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path to the dataset file to upload (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetStorageUri", + "type": "string", + "description": "URI of the cloud storage or data repository where the dataset will be uploaded (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the dataset file, e.g., CSV, JSON, Parquet (optional, inferred if empty).", + "required": false, + "defaultValue": "" + }, + { + "name": "compress", + "type": "boolean", + "description": "Whether to compress the dataset file before uploading (optional, default false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadataTags", + "type": "object", + "description": "Key-value pairs of metadata tags to associate with the uploaded dataset (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the dataset if it already exists at the target location (optional, default false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object containing upload status (success or failure), message, uploaded file URI, and applied metadata tags." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate uploading dataset files as part of continuous integration or deployment pipelines. Ideal for pushing datasets into cloud storage systems in a standardized, repeatable way with optional metadata tagging and file compression.", + "limitations": "Cannot perform dataset content validation beyond file integrity; does not transform or analyze the dataset content. Requires existing access credentials to target storage outside this tool.", + "examples": [ + "Upload a CSV dataset to AWS S3 storage with compression enabled.", + "Upload a JSON dataset to a data repository and add metadata tags for versioning.", + "Upload and overwrite an existing Parquet dataset on Google Cloud Storage." + ] + }, + "tags": [ + "devops", + "upload", + "dataset", + "cloud storage", + "automation", + "data pipeline" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"./data/sales.csv\",\"targetStorageUri\":\"s3://my-bucket/datasets/sales.csv\",\"fileFormat\":\"CSV\",\"compress\":true,\"metadataTags\":{\"project\":\"sales-analytics\",\"version\":\"v1.2\"},\"overwrite\":false}", + "description": "Upload a CSV sales dataset to an AWS S3 bucket with compression and metadata tags, no overwrite." + }, + { + "inputJson": "{\"filePath\":\"/tmp/data.json\",\"targetStorageUri\":\"gs://my-datalake/raw/data.json\",\"fileFormat\":\"JSON\",\"compress\":false,\"metadataTags\":{},\"overwrite\":true}", + "description": "Upload a JSON dataset to Google Cloud Storage, overwriting existing file, without compression or metadata." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "devops.sendAlert", + "description": "Sends a security alert notification through specified channels based on input alert details and severity level. Accepts alert message, severity, target channels, and metadata. Processes alert content formatting and delivers the alert using integrated communication services. Returns confirmation status and delivery report.", + "category": "devops", + "parameters": [ + { + "name": "alertMessage", + "type": "string", + "description": "The detailed message content of the security alert to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity level of the alert (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetChannels", + "type": "array", + "description": "List of channels to send the alert to, such as ['email', 'sms', 'slack'].", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata object providing additional context such as timestamps, affected systems, or reference IDs.", + "required": false, + "defaultValue": "" + }, + { + "name": "sendTime", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule the alert; send immediately if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of sending operation including success flag, message, and detailed delivery results per channel." + }, + "aiAgent": { + "useCase": "This tool should be used when an automated system or agent needs to notify relevant teams or personnel about security incidents or warnings in a timely manner. It is useful in continuous monitoring and incident response setups to escalate alerts with context and severity.", + "limitations": "Cannot generate alerts automatically; requires preformatted alert content. Does not decrypt or interpret encrypted or unstructured alert data. Delivery depends on external channel integrations and may fail if those are misconfigured.", + "examples": [ + "Send a critical security breach alert to email and Slack immediately.", + "Schedule a medium severity alert for system maintenance notification to email.", + "Send a low severity warning with metadata to SMS channel only." + ] + }, + "tags": [ + "notification", + "security", + "alert", + "devops", + "incident-response", + "automation" + ], + "examples": [ + { + "inputJson": "{\"alertMessage\":\"Unauthorized login attempt detected on server XYZ\",\"severityLevel\":\"high\",\"targetChannels\":[\"email\",\"slack\"],\"metadata\":{\"timestamp\":\"2024-06-10T14:23:00Z\",\"serverId\":\"XYZ\"}}", + "description": "Send a high severity alert about an unauthorized login on server XYZ through email and Slack." + }, + { + "inputJson": "{\"alertMessage\":\"Scheduled maintenance will start at midnight UTC\",\"severityLevel\":\"medium\",\"targetChannels\":[\"email\"],\"sendTime\":\"2024-06-11T00:00:00Z\"}", + "description": "Schedule a medium severity alert about maintenance start for delivery via email at midnight UTC." + }, + { + "inputJson": "{\"alertMessage\":\"Multiple failed password attempts detected\",\"severityLevel\":\"low\",\"targetChannels\":[\"sms\"],\"metadata\":{\"attemptCount\":5}}", + "description": "Send a low severity alert of multiple password failures to SMS recipients with attempt count included." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "devops.formatJSON", + "description": "Formats a raw JSON string to improve readability and consistency with configurable options. Accepts a JSON string input and outputs a well-indented, optionally compacted or prettified JSON string according to specified indentation levels, spacing characters, and sorting of object keys.", + "category": "devops", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "Raw JSON string to be formatted. Must be valid JSON.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation per level in pretty-printed JSON.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "If true, object keys will be sorted alphabetically in output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "compact", + "type": "boolean", + "description": "If true, output JSON will be compacted with no whitespace, ignoring indentation and sorting.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string or an error message if input is invalid. The formattedJson field contains the processed JSON string on success." + }, + "aiAgent": { + "useCase": "Use this tool when you receive JSON data that is minified, poorly formatted, or inconsistently styled, and you need to present it in a readable and standardized format for debugging, logging, code review, or documentation purposes. It helps developers and deployment scripts by producing clean JSON output aligned with preferred formatting styles.", + "limitations": "The tool does not validate JSON schema or data correctness beyond basic parseability. It cannot fix semantic JSON errors and only formats structurally valid JSON. Very large JSON inputs might impact performance or memory usage.", + "examples": [ + "Format a minified JSON string with 4 spaces indentation.", + "Compact a JSON string to minimize size for transmission.", + "Format JSON with sorted keys and default 2 space indentation." + ] + }, + "tags": [ + "json", + "formatting", + "devops", + "data-cleanup", + "code-quality", + "debugging" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"name\\\":\\\"app\\\",\\\"version\\\":\\\"1.0\\\",\\\"components\\\":[\\\"web\\\", \\\"db\\\"]}\",\"indentation\":4,\"sortKeys\":false,\"compact\":false}", + "description": "Format a typical JSON string with 4 spaces indentation for readability." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"z\\\":1,\\\"a\\\":2,\\\"m\\\":3}\",\"indentation\":2,\"sortKeys\":true,\"compact\":false}", + "description": "Format JSON with object keys sorted alphabetically." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"debug\\\":true,\\\"timeout\\\":30}\",\"compact\":true}", + "description": "Compact JSON output with no spacing or indentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "devops.buildService", + "description": "Builds and deploys a scalable cloud service based on the provided configuration. Accepts service definition including source code repository URL, infrastructure setup details, and deployment environment. Automates the build, containerization, and infrastructure provisioning steps, then deploys the service and returns deployment status and endpoints.", + "category": "devops", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name of the service to build and deploy.", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryUrl", + "type": "string", + "description": "Git repository URL containing the service source code.", + "required": true, + "defaultValue": "" + }, + { + "name": "branch", + "type": "string", + "description": "Git branch to build from. Defaults to 'main'.", + "required": false, + "defaultValue": "main" + }, + { + "name": "dockerfilePath", + "type": "string", + "description": "Relative path to the Dockerfile in the repository. Defaults to root Dockerfile.", + "required": false, + "defaultValue": "./Dockerfile" + }, + { + "name": "infrastructureConfig", + "type": "object", + "description": "Infrastructure configuration object specifying cloud provider, resource sizes, scaling policies, and network settings.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Target environment for deployment, e.g., 'staging', 'production'.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Flag to enable auto-scaling for the deployed service. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set in the deployed service.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing deploymentId, status (e.g., 'success', 'failure'), serviceEndpoint URL if deployed successfully, and logs from build and deployment processes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the process of building a cloud-based microservice from source code, provisioning necessary infrastructure, deploying it, and retrieving deployment results or errors for analysis or further orchestration.", + "limitations": "This tool does not support multi-region deployments, complex blue-green or canary deployment strategies directly, nor does it handle manual approval gates or integrations with third-party CI/CD pipelines out of the box.", + "examples": [ + "Build and deploy a new service from the main branch into the staging environment with default scaling.", + "Deploy a service with custom environment variables and specific Dockerfile for production.", + "Build a service using a non-default git branch and enable auto-scaling disabled." + ] + }, + "tags": [ + "devops", + "deployment", + "build", + "automation", + "cloud", + "infrastructure", + "service" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"user-auth-service\",\"repositoryUrl\":\"https://github.com/org/user-auth\",\"branch\":\"main\",\"dockerfilePath\":\"./Dockerfile\",\"infrastructureConfig\":{\"cloudProvider\":\"aws\",\"instanceType\":\"t3.medium\",\"replicaCount\":2,\"autoScalingPolicy\":{\"minReplicas\":2,\"maxReplicas\":5}},\"deploymentEnvironment\":\"staging\",\"enableAutoScaling\":true,\"environmentVariables\":{\"JWT_SECRET\":\"s3cr3t\"}}", + "description": "Build and deploy the user authentication service from AWS with auto-scaling enabled in the staging environment." + }, + { + "inputJson": "{\"serviceName\":\"payment-gateway\",\"repositoryUrl\":\"https://gitlab.com/org/payment\",\"branch\":\"release\",\"dockerfilePath\":\"/deploy/Dockerfile.prod\",\"infrastructureConfig\":{\"cloudProvider\":\"gcp\",\"machineType\":\"n1-standard-1\",\"replicaCount\":3},\"deploymentEnvironment\":\"production\",\"enableAutoScaling\":false,\"environmentVariables\":{\"PAYMENT_API_KEY\":\"apikey123\"}}", + "description": "Deploy payment gateway service from the release branch with a custom Dockerfile path, on Google Cloud without auto-scaling to production." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "devops.buildConfig", + "description": "Generates a deployment or build configuration file (e.g., YAML or JSON) for CI/CD pipelines or infrastructure automation based on provided project parameters and environment settings. Accepts input describing project type, environment variables, dependencies, and build steps and outputs a ready-to-use configuration file string.", + "category": "devops", + "parameters": [ + { + "name": "projectType", + "type": "string", + "description": "Type of project for which to build the config, such as 'nodejs', 'python', or 'docker'. Influences template selection and build steps.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Target deployment environment like 'development', 'staging', or 'production' which affects environment-specific settings in the config.", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of external tools or packages (e.g., databases, services) the project depends on to include relevant setup in the config.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "buildSteps", + "type": "array", + "description": "An ordered list of commands or script actions to execute during the build phase, such as 'npm install', 'pytest', or 'docker build'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to inject into the build or runtime environment.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated configuration, e.g., 'yaml' or 'json'. Defaults to 'yaml'.", + "required": false, + "defaultValue": "yaml" + }, + { + "name": "includeNotifications", + "type": "boolean", + "description": "Whether to add notification hooks (e.g., Slack messages) to the configuration upon build success or failure.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the configuration file content as a string and the format used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate automated CI/CD or deployment config files tailored to specific project types and environments, reducing manual setup and ensuring consistent pipeline configurations.", + "limitations": "Cannot validate the correctness or syntax of user-provided build steps or dependency names; it builds configuration from given data but does not execute or test it.", + "examples": [ + "Create a build config for a Node.js app to deploy in production with Docker dependencies and notifications enabled.", + "Generate a CI config in JSON for Python project in staging with environment variables and custom build steps.", + "Build a simple deployment config for a development environment of a Go project with no dependencies and no notifications." + ] + }, + "tags": [ + "devops", + "build", + "configuration", + "ci-cd", + "automation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"projectType\":\"nodejs\",\"environment\":\"production\",\"dependencies\":[\"docker\"],\"buildSteps\":[\"npm install\",\"npm test\",\"docker build -t myapp .\"],\"environmentVariables\":{\"NODE_ENV\":\"production\"},\"outputFormat\":\"yaml\",\"includeNotifications\":true}", + "description": "Build a YAML config for production Node.js project with Docker and notifications." + }, + { + "inputJson": "{\"projectType\":\"python\",\"environment\":\"staging\",\"dependencies\":[\"postgresql\"],\"buildSteps\":[\"pip install -r requirements.txt\",\"pytest\"],\"environmentVariables\":{\"DB_HOST\":\"localhost\"},\"outputFormat\":\"json\",\"includeNotifications\":false}", + "description": "Generate a JSON CI config for a Python staging project with PostgreSQL dependency." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "devops.buildModule", + "description": "Builds a software module by compiling source code and packaging it according to specified build configuration. Accepts source code repository URL or local path, build configuration file path, and environment options. Produces a build artifact such as a compiled binary or package with build logs and status.", + "category": "devops", + "parameters": [ + { + "name": "sourcePath", + "type": "string", + "description": "Local filesystem path or Git repository URL pointing to the module's source code.", + "required": true, + "defaultValue": "" + }, + { + "name": "buildConfigPath", + "type": "string", + "description": "File path to the build configuration (e.g., a YAML or JSON file specifying build steps and environment).", + "required": false, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "Target environment or platform for the build, e.g., 'linux-x64', 'windows-x86'.", + "required": false, + "defaultValue": "" + }, + { + "name": "buildArgs", + "type": "object", + "description": "Optional key-value pairs to override or supplement build configuration parameters.", + "required": false, + "defaultValue": "" + }, + { + "name": "cleanBuild", + "type": "boolean", + "description": "Whether to perform a clean build by removing previous artifacts before building.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to allow the build process before aborting.", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "BuildResult object containing status ('success' or 'failure'), path or URL to the build artifact if successful, and build logs detailing compilation output and errors." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate building a software module from source with customized build configurations in a DevOps pipeline or continuous integration environment. It helps automate compiling, packaging, and producing deployable artifacts from code repositories.", + "limitations": "Does not perform unit tests or integration testing of the built module; it also cannot deploy the artifact to runtime environments or package repositories by itself.", + "examples": [ + "Build the latest commit of a GitHub repo using default config", + "Build a module with a custom build config and clean environment", + "Build a software module targeting Windows x86 environment with build argument overrides" + ] + }, + "tags": [ + "build", + "devops", + "automation", + "ci", + "continuous integration", + "compilation", + "packaging", + "software module" + ], + "examples": [ + { + "inputJson": "{\"sourcePath\":\"https://github.com/example/project.git\",\"buildConfigPath\":\"build/build.yml\",\"targetEnvironment\":\"linux-x64\",\"buildArgs\":{\"optimize\":\"true\"},\"cleanBuild\":true}", + "description": "Build from Git repo with a specific build config on Linux x64 platform, cleaning previous output." + }, + { + "inputJson": "{\"sourcePath\":\"./local-modules/mymodule\",\"targetEnvironment\":\"windows-x86\",\"timeoutSeconds\":300}", + "description": "Build a local module source directory targeting Windows x86 platform with 5-minute timeout." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "devops.generateKPI", + "description": "Generates key performance indicators (KPIs) for DevOps pipelines and infrastructure based on input data such as pipeline logs, deployment metrics, and monitoring statistics. Processes input metrics to compute standardized KPIs like deployment frequency, lead time, change failure rate, and mean time to recovery, outputting a structured KPI report suitable for dashboards and analytics.", + "category": "devops", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured input data containing logs, deployment records, and monitoring metrics to analyze for KPI generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiList", + "type": "array", + "description": "Array of KPI names to generate; e.g., ['deploymentFrequency','leadTime','changeFailureRate','MTTR']. If empty or omitted, generates all standard KPIs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object defining the time range for the KPI calculation with 'start' and 'end' ISO 8601 datetime strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' (default) or 'csv'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing calculated KPI values keyed by KPI name, including timestamps and metadata suitable for integration into DevOps dashboards or analytics platforms." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze DevOps performance metrics to evaluate pipeline efficiency, deployment stability, and recovery speed. It helps to automate KPI extraction from raw operational data to support continuous improvement and reporting.", + "limitations": "Does not ingest raw logs directly; expects parsed and structured input data. Cannot predict future KPIs or handle non-DevOps metrics. Limited to standard DevOps KPIs defined in kpiList.", + "examples": [ + "Generate KPIs for last month's deployment data including deployment frequency and mean time to recovery.", + "Produce a KPI report in CSV format for specified deployment metrics over the past week.", + "Calculate all standard DevOps KPIs for current quarter to feed into performance monitoring dashboard." + ] + }, + "tags": [ + "devops", + "kpi", + "analytics", + "monitoring", + "continuous-integration", + "deployment", + "performance", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"deployments\":[{\"id\":\"d1\",\"timestamp\":\"2024-04-01T10:00:00Z\",\"status\":\"success\"},{\"id\":\"d2\",\"timestamp\":\"2024-04-03T14:00:00Z\",\"status\":\"failure\"}],\"incidents\":[{\"id\":\"i1\",\"start\":\"2024-04-03T14:05:00Z\",\"end\":\"2024-04-03T15:00:00Z\"}],\"pipelineRuns\":[{\"id\":\"p1\",\"start\":\"2024-04-01T09:50:00Z\",\"end\":\"2024-04-01T10:05:00Z\"}]},\"kpiList\":[\"deploymentFrequency\",\"MTTR\"],\"timeRange\":{\"start\":\"2024-04-01T00:00:00Z\",\"end\":\"2024-04-07T23:59:59Z\"},\"outputFormat\":\"json\"}", + "description": "Generate deployment frequency and mean time to recovery KPIs from deployment and incident data for the first week of April 2024 in JSON format." + }, + { + "inputJson": "{\"inputData\":{\"deployments\":[{\"id\":\"d10\",\"timestamp\":\"2024-05-01T08:00:00Z\",\"status\":\"success\"}],\"pipelineRuns\":[{\"id\":\"p10\",\"start\":\"2024-05-01T07:50:00Z\",\"end\":\"2024-05-01T08:15:00Z\"}]},\"kpiList\":[],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"outputFormat\":\"csv\"}", + "description": "Generate all standard KPIs for May 2024 deployments and pipeline runs and output the result as CSV." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "devops.createInstance", + "description": "Creates a new infrastructure instance in the specified cloud environment based on provided configuration parameters. Inputs include cloud provider, instance type, region, operating system, and optional startup scripts. The tool provisions the instance and returns details like instance ID, IP address, status, and URL.", + "category": "devops", + "parameters": [ + { + "name": "cloudProvider", + "type": "string", + "description": "The cloud service provider to create the instance on (e.g., AWS, Azure, GCP).", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "The type or size of the instance to create (e.g., t2.micro, n1-standard-1).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "The geographical region or availability zone where the instance should be deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "The operating system image to use for the instance (e.g., Ubuntu 20.04, Windows Server 2019).", + "required": true, + "defaultValue": "" + }, + { + "name": "startupScript", + "type": "string", + "description": "Optional shell script or commands to run on instance startup.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "object", + "description": "Optional key-value pairs to tag the instance with metadata.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "autoAssignPublicIp", + "type": "boolean", + "description": "Whether to automatically assign a public IP address to the instance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns details of the provisioned instance including instance ID, IP addresses, status, and accessible URLs if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically provision and configure a new compute instance in a cloud environment as part of deployment, testing, or environment setup workflows. It supports configuration of instance parameters and automates instance creation, returning all relevant connection details.", + "limitations": "This tool does not manage instance lifecycle beyond initial creation (no stopping, starting, or termination). It depends on valid credentials configured in the environment and does not validate the availability of requested instance types or regions before creation.", + "examples": [ + "Create a new AWS EC2 t2.micro instance in us-east-1 region running Ubuntu 20.04 with a startup script to install nginx.", + "Provision a GCP instance type n1-standard-1 in europe-west1 with Windows Server and no public IP assigned.", + "Launch an Azure VM with tags for environment and owner, auto assigning a public IP." + ] + }, + "tags": [ + "cloud", + "infrastructure", + "deployment", + "automation", + "instance", + "provisioning", + "devops", + "compute" + ], + "examples": [ + { + "inputJson": "{\"cloudProvider\":\"AWS\",\"instanceType\":\"t2.micro\",\"region\":\"us-east-1\",\"operatingSystem\":\"Ubuntu 20.04\",\"startupScript\":\"#!/bin/bash\\napt-get update && apt-get install -y nginx\",\"tags\":{\"environment\":\"dev\",\"project\":\"website\"},\"autoAssignPublicIp\":true}", + "description": "Create an AWS micro instance in the US East region with Ubuntu, automatic nginx install, and tagged metadata." + }, + { + "inputJson": "{\"cloudProvider\":\"GCP\",\"instanceType\":\"n1-standard-1\",\"region\":\"europe-west1\",\"operatingSystem\":\"Windows Server 2019\",\"autoAssignPublicIp\":false}", + "description": "Provision a GCP Windows server instance in Europe without a public IP." + }, + { + "inputJson": "{\"cloudProvider\":\"Azure\",\"instanceType\":\"Standard_B1s\",\"region\":\"eastus\",\"operatingSystem\":\"Ubuntu 20.04\",\"tags\":{\"owner\":\"teamA\",\"purpose\":\"testing\"}}", + "description": "Launch an Azure Ubuntu instance in East US with tags but default public IP assignment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "devops.createKPI", + "description": "Generates a customized Key Performance Indicator (KPI) metric definition based on deployment and infrastructure data inputs. Accepts configuration parameters detailing data sources, aggregation methods, target environments, and alert thresholds. Produces a structured KPI object ready for integration into monitoring dashboards or CI/CD pipelines.", + "category": "devops", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The unique name for the KPI to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "Array of strings representing the data sources to aggregate (e.g., logs, deployment metrics).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "The method to aggregate data (e.g., average, percentile, sum).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "The environment (e.g., production, staging) where the KPI will be monitored.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertThreshold", + "type": "number", + "description": "Numeric threshold at which alerts should be triggered.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes over which the KPI is calculated.", + "required": false, + "defaultValue": "60" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag to enable or disable the KPI monitoring.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created KPI, including its configuration, unique identifier, status, and metadata for use in monitoring or deployment tools." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define and generate tailored KPIs based on deployment, infrastructure, or CI/CD metric inputs to facilitate real-time monitoring and alerting in devops workflows. It enables automated KPI setup for dashboards or alert systems.", + "limitations": "This tool does not retrieve or process raw metric data itself, nor does it evaluate historical KPI performance; it only creates KPI configurations based on provided parameters.", + "examples": [ + "Create a KPI to monitor average deployment duration in the production environment with alerts if exceeding 10 minutes.", + "Generate a KPI for error rate percentage across staging deployments using logs and metric aggregation.", + "Create a KPI for total number of failed deployment jobs over the last hour with threshold alerting enabled." + ] + }, + "tags": [ + "devops", + "KPI", + "monitoring", + "deployment", + "CI/CD", + "automation" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"DeploymentDurationAvg\",\"dataSources\":[\"deployment_metrics\"],\"aggregationMethod\":\"average\",\"targetEnvironment\":\"production\",\"alertThreshold\":10,\"timeWindowMinutes\":30,\"enabled\":true}", + "description": "Create a KPI to monitor the average duration of deployments in production, triggering alerts if average duration exceeds 10 minutes over a 30 minute window." + }, + { + "inputJson": "{\"kpiName\":\"ErrorRatePercentage\",\"dataSources\":[\"logs\",\"deployment_metrics\"],\"aggregationMethod\":\"percentile\",\"targetEnvironment\":\"staging\",\"alertThreshold\":5,\"timeWindowMinutes\":60,\"enabled\":true}", + "description": "Generate a KPI for error rate percentage in staging environment aggregating logs and deployment metrics, alerting if errors exceed 5% over an hour." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "frontend-development.analyzeDeal", + "description": "Analyzes a business deal object from the frontend perspective by evaluating its key attributes such as value, risk factors, deadlines, involved parties, and status. It processes input deal details to provide a structured report with risk assessment, priority recommendation, and progress summary to aid user decision making in UI workflows.", + "category": "frontend-development", + "parameters": [ + { + "name": "dealData", + "type": "object", + "description": "The deal object containing information like value, dates, parties, and current status to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "currentDate", + "type": "string", + "description": "Optional current date in ISO format to compare against deal deadlines; defaults to today if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRiskAnalysis", + "type": "boolean", + "description": "Flag to indicate if risk factors should be evaluated and included in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "priorityThreshold", + "type": "number", + "description": "A numeric value threshold to determine if the deal is high priority based on its value; default is 100000.", + "required": false, + "defaultValue": "100000" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing risk assessment, priority flag, days until deadline, and summary metrics for UI display and decision support." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze frontend-received deal objects to produce actionable insights like risk levels, deadlines status, and priority evaluation, aiding in dynamic interface updates or user decision workflows.", + "limitations": "This tool does not perform backend validation or update deal status; it only analyzes provided deal data from the frontend perspective.", + "examples": [ + "Analyze a deal object to assess if it is high risk and approaching deadline.", + "Provide a priority recommendation based on deal value and days left until closing.", + "Generate a summary report for a deal with missing deadline to highlight incomplete data." + ] + }, + "tags": [ + "frontend-development", + "deal-analysis", + "risk-assessment", + "priority-evaluation", + "business", + "UI-insights" + ], + "examples": [ + { + "inputJson": "{\"dealData\":{\"value\":150000,\"startDate\":\"2024-05-01\",\"endDate\":\"2024-06-15\",\"parties\":[\"Client A\",\"Vendor B\"],\"status\":\"open\"},\"currentDate\":\"2024-06-01\",\"includeRiskAnalysis\":true,\"priorityThreshold\":100000}", + "description": "Analyze a high-value open deal nearing the deadline with risk analysis enabled." + }, + { + "inputJson": "{\"dealData\":{\"value\":50000,\"startDate\":\"2024-04-01\",\"endDate\":\"2024-12-31\",\"parties\":[\"Client X\"],\"status\":\"negotiation\"},\"includeRiskAnalysis\":false}", + "description": "Analyze a mid-value deal with late deadline, risk analysis disabled, using default current date and priority threshold." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "frontend-development.downloadCSV", + "description": "Enables frontend applications to generate and trigger the download of CSV files directly within the browser. Accepts an array of objects representing tabular data, converts them into CSV format with configurable delimiters and file name, and initiates a client-side download without server interaction.", + "category": "frontend-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing the rows to be converted into CSV format. Each object corresponds to one row.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired name of the downloaded CSV file, including the .csv extension.", + "required": false, + "defaultValue": "\"data.csv\"" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate fields in the CSV file, defaulting to comma (,).", + "required": false, + "defaultValue": "\",\"" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Determines whether to include the header row with object keys as column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteStrings", + "type": "boolean", + "description": "Whether to wrap string values in quotes to handle commas or newline characters within fields.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a boolean 'success' indicating if download was triggered, and an optional 'error' message if failure occurred." + }, + "aiAgent": { + "useCase": "Use this tool when a frontend app needs to allow users to export displayed or processed data into CSV files for offline use, reporting, or sharing, without relying on backend services. It supports customization of file naming, delimiters, headers, and string quoting to accommodate different CSV standards.", + "limitations": "Cannot handle extremely large datasets that cause browser memory issues. Does not provide server-side storage or remote CSV generation.", + "examples": [ + "Download user list as CSV file named 'users.csv' including headers.", + "Export filtered product data with semicolon delimiters and no string quotes.", + "Generate a CSV file from an array of simple JSON objects with default settings." + ] + }, + "tags": [ + "frontend", + "csv", + "download", + "export", + "data", + "client-side", + "file" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"email\":\"alice@example.com\"},{\"name\":\"Bob\",\"age\":25,\"email\":\"bob@example.com\"}],\"fileName\":\"users.csv\",\"delimiter\":\",\",\"includeHeaders\":true,\"quoteStrings\":true}", + "description": "Download an array of user objects as a CSV file named \"users.csv\" with headers and quoted strings." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Screwdriver\",\"price\":12.50,\"inStock\":true},{\"product\":\"Hammer\",\"price\":15.00,\"inStock\":false}],\"fileName\":\"products.csv\",\"delimiter\":\";\",\"includeHeaders\":true,\"quoteStrings\":false}", + "description": "Export product data using semicolon delimiter and without quotation marks around strings." + }, + { + "inputJson": "{\"data\":[{\"city\":\"New York\",\"population\":8400000},{\"city\":\"Los Angeles\",\"population\":4000000}],\"fileName\":\"cities.csv\"}", + "description": "Generate a simple CSV download of city populations with default settings." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "frontend-development.draftText", + "description": "Generates draft text content for frontend UI elements based on input prompts, style preferences, and context. Accepts seed text or keywords, desired tone and length, and outputs a text draft suitable for integration in user interfaces such as placeholders, tooltips, or content sections.", + "category": "frontend-development", + "parameters": [ + { + "name": "seedText", + "type": "string", + "description": "Initial text or keywords to guide the text generation.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the generated text (e.g., formal, casual, friendly).", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated text in characters.", + "required": false, + "defaultValue": "150" + }, + { + "name": "contextType", + "type": "string", + "description": "The UI context where the text will be used (e.g., tooltip, buttonLabel, placeholder).", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the generated text (e.g., en, es, fr).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted text content, its tone, and length details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate draft textual content for frontend interfaces to improve user experience by providing contextual, stylistically appropriate placeholders, labels, or help text based on minimal input. It helps streamline UI content creation during design or prototyping phases.", + "limitations": "Cannot generate highly technical or domain-specific text without adequate seed input; quality depends on input specificity; does not localize cultural nuances beyond language code.", + "examples": [ + "Generate a friendly tooltip text explaining a save button.", + "Draft placeholder text for a search input field with casual tone.", + "Create a formal error message for invalid user input in a form." + ] + }, + "tags": [ + "text generation", + "UI content", + "frontend", + "drafting", + "UX writing", + "placeholders", + "tooltips" + ], + "examples": [ + { + "inputJson": "{\"seedText\":\"save button\",\"tone\":\"friendly\",\"maxLength\":80,\"contextType\":\"tooltip\",\"language\":\"en\"}", + "description": "Draft a friendly tooltip text for a save button." + }, + { + "inputJson": "{\"seedText\":\"search input\",\"tone\":\"casual\",\"maxLength\":100,\"contextType\":\"placeholder\",\"language\":\"en\"}", + "description": "Create casual placeholder text for a search input field." + }, + { + "inputJson": "{\"seedText\":\"invalid form input\",\"tone\":\"formal\",\"maxLength\":120,\"contextType\":\"errorMessage\",\"language\":\"en\"}", + "description": "Generate a formal error message for invalid form input." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "frontend-development.generateHeading", + "description": "Generates HTML code for a heading element based on the provided content, heading level, and optional styling. Accepts text content, desired heading level (h1 to h6), optional CSS classes and inline styles, and returns a string with the corresponding HTML heading tag ready to use in front-end interfaces.", + "category": "frontend-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content to be placed inside the heading element.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level from 1 to 6 indicating h1 through h6 tags.", + "required": true, + "defaultValue": "1" + }, + { + "name": "cssClasses", + "type": "array", + "description": "Optional list of CSS class names to add to the heading element for styling.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "inlineStyles", + "type": "string", + "description": "Optional inline CSS styles to apply directly to the heading element.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A string containing the complete HTML markup for the heading element with specified text, level, classes, and styles." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to dynamically create semantic heading elements for web pages or applications, ensuring correct levels and optional styling for UI rendering. It simplifies generating consistent and accessible headings from user content or structured data.", + "limitations": "Does not validate CSS class names or styles; it does not sanitize text input so agents should ensure content safety to prevent XSS. Also, it only generates basic heading tags and does not handle complex nested markup or localization.", + "examples": [ + "Generate a main page title with 'Welcome to Our Site' as an h1 heading.", + "Create a subsection heading 'Features' as h2 with class 'section-title'.", + "Produce a heading with custom inline style color blue for 'Contact Us' at h3 level." + ] + }, + "tags": [ + "frontend", + "html", + "heading", + "ui", + "component-generation", + "web", + "markup" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to Our Site\",\"level\":1,\"cssClasses\":[],\"inlineStyles\":\"\"}", + "description": "Generate a simple main heading h1 with plain text." + }, + { + "inputJson": "{\"text\":\"Features\",\"level\":2,\"cssClasses\":[\"section-title\"],\"inlineStyles\":\"\"}", + "description": "Generate an h2 heading with a CSS class for styling subsections." + }, + { + "inputJson": "{\"text\":\"Contact Us\",\"level\":3,\"cssClasses\":[],\"inlineStyles\":\"color: blue; font-weight: bold;\"}", + "description": "Generate an h3 heading with inline style to color the text blue and make it bold." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "backend-development.analyzeQuote", + "description": "Analyzes a given textual quote by performing sentiment analysis, detecting key themes, and assessing language complexity. The tool accepts a quote string and optional parameters to customize analysis depth and language. It returns a structured analysis including sentiment score, key topics, and readability metrics.", + "category": "backend-development", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The textual quote to analyze for sentiment, themes, and complexity.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "ISO code of the language of the quote for accurate linguistic analysis (default is 'en').", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "Whether to perform an in-depth analysis including multiple theme extraction and complexity metrics.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentimentScore (number), detectedThemes (array of strings), readabilityScore (number), and languageDetected (string)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the emotional tone, main topics, and language complexity of a textual quote to support content moderation, sentiment-driven decisions, or content summarization. It helps when processing user-generated content or analyzing literature excerpts.", + "limitations": "This tool is optimized for short quotes and may not perform well on very long or conversational inputs. It only supports a limited set of languages and does not capture sarcasm or nuanced irony effectively.", + "examples": [ + "Analyze sentiment and themes of 'The only limit to our realization of tomorrow is our doubts of today.'", + "Assess readability and sentiment of quotes in Spanish by setting language parameter to 'es'.", + "Perform detailed analysis on motivational quotes to extract more themes and complexity scores." + ] + }, + "tags": [ + "analysis", + "text", + "sentiment", + "themes", + "readability", + "quotes", + "language" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The greatest glory in living lies not in never falling, but in rising every time we fall.\",\"language\":\"en\",\"detailedAnalysis\":true}", + "description": "Analyze a motivational quote in English with detailed analysis enabled." + }, + { + "inputJson": "{\"quoteText\":\"La vida es un sueño y los sueños, sueños son.\",\"language\":\"es\",\"detailedAnalysis\":false}", + "description": "Analyze a Spanish quote with basic analysis." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "backend-development.renderSentence", + "description": "This tool accepts an input sentence template with placeholder variables and an object mapping variables to values. It processes the template by replacing the placeholders with provided values, rendering a complete, coherent sentence. The output is the fully rendered sentence as a string.", + "category": "backend-development", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "The sentence template containing placeholders wrapped in double curly braces (e.g., 'Hello, {{name}}!').", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs where keys correspond to placeholder names in the template and values are the replacements.", + "required": true, + "defaultValue": "" + }, + { + "name": "escapeHTML", + "type": "boolean", + "description": "If true, escape HTML characters in variable values to prevent injection when rendering for web.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered sentence as a single string field 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate sentences or messages based on templates with variable data, such as personalized user messages or server response strings. It is ideal when the input sentence contains placeholders that must be replaced with real-time values supplied as variables.", + "limitations": "The tool does not evaluate expressions or perform complex logic inside placeholders, supporting only direct substitution. It cannot parse or validate templates for syntax errors beyond missing variables.", + "examples": [ + "Render a greeting sentence with a user name: template='Hello, {{name}}!', variables={name: 'Alice'}.", + "Generate status messages based on user input, replacing placeholders like '{{status}}' with actual status values.", + "Render sentences safely for web responses by enabling HTML escaping to avoid XSS vulnerabilities." + ] + }, + "tags": [ + "template", + "rendering", + "string-substitution", + "dynamic-content", + "backend", + "message-generation", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"template\":\"Hello, {{name}}! Today is {{day}}.\",\"variables\":{\"name\":\"John\",\"day\":\"Monday\"},\"escapeHTML\":false}", + "description": "Render a greeting sentence with name and day placeholders replaced." + }, + { + "inputJson": "{\"template\":\"Warning: {{message}}\",\"variables\":{\"message\":\"\"},\"escapeHTML\":true}", + "description": "Render a sentence with HTML escaping enabled to prevent injection." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "backend-development.renderParagraph", + "description": "Renders a formatted HTML paragraph string from input text content with optional styling such as CSS classes, inline styles, and text alignment. Accepts raw text and options, processes formatting, and outputs a valid HTML paragraph element as a string.", + "category": "backend-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to be enclosed and rendered as a paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "cssClasses", + "type": "array", + "description": "Optional list of CSS class names to add to the paragraph element for styling.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "inlineStyles", + "type": "object", + "description": "Optional object specifying CSS style properties and their values to apply inline.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "textAlign", + "type": "string", + "description": "Optional text alignment value ('left', 'right', 'center', 'justify') to set the paragraph's style.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "The resulting HTML string representing the properly formatted paragraph element." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert plain text content into a styled HTML paragraph element on the backend, for example when dynamically generating server-side HTML pages or email templates that include paragraphs with custom formatting. This helps ensure consistent paragraph HTML output from raw text inputs.", + "limitations": "This tool does not sanitize input text for security (e.g., it does not prevent XSS). It handles only one paragraph at a time and does not parse markdown or complex rich text.", + "examples": [ + "Render a paragraph with center alignment and two CSS classes.", + "Render a paragraph with inline styles for font color and size.", + "Render a plain paragraph without any styling." + ] + }, + "tags": [ + "backend", + "HTML", + "rendering", + "paragraph", + "formatting", + "web", + "server-side" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello, world! This is a sample paragraph.\",\"cssClasses\":[\"intro\",\"highlight\"],\"inlineStyles\":{\"color\":\"blue\",\"fontWeight\":\"bold\"},\"textAlign\":\"center\"}", + "description": "Render a paragraph with center alignment, blue bold text, and two CSS classes." + }, + { + "inputJson": "{\"text\":\"Another paragraph here.\",\"cssClasses\":[],\"inlineStyles\":{},\"textAlign\":\"left\"}", + "description": "Render a plain left-aligned paragraph without additional styling." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "backend-development.formatComponent", + "description": "Formats a given backend component code snippet to adhere to a specified coding style, indentation, and optional code conventions. It accepts raw component source code as input and outputs the formatted, clean, and consistent code string ready for integration or deployment.", + "category": "backend-development", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw source code of the backend component to be formatted. Expected to be a complete or partial component code block.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the source code (e.g., 'javascript', 'typescript', 'python'). Determines syntax rules applied during formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces to use for indentation (commonly 2 or 4). Controls the visual indentation level in formatted code.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation. If true, overrides indentationSize.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length before code line wrapping occurs. Helps maintain code readability standards.", + "required": false, + "defaultValue": "80" + }, + { + "name": "enforceSemicolons", + "type": "boolean", + "description": "For languages like JavaScript/TypeScript, whether to enforce semicolons at statement ends.", + "required": false, + "defaultValue": "true" + }, + { + "name": "newlineStyle", + "type": "string", + "description": "Line break style to use in output ('LF' for Unix-style, 'CRLF' for Windows-style).", + "required": false, + "defaultValue": "LF" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted component code as a string and metadata about formatting." + }, + "aiAgent": { + "useCase": "Use this tool to ensure backend component code snippets conform to consistent styling and formatting standards before integration, review, or deployment. Ideal when handling raw code fragments from various sources or user input that require normalization to project coding guidelines.", + "limitations": "This tool formats code but does not perform syntax error correction, semantic analysis, or code refactoring. It assumes the provided code is syntactically valid for the specified language.", + "examples": [ + "Format a raw JavaScript backend component with 2-space indentation and semicolons enforced.", + "Format a Python backend module with 4 spaces indentation and LF newlines.", + "Format a TypeScript component using tabs for indentation and max line length of 100." + ] + }, + "tags": [ + "code-formatting", + "backend", + "component", + "javascript", + "typescript", + "python", + "style", + "linting" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function add(a,b){return a+b}\",\"language\":\"javascript\",\"indentationSize\":2,\"useTabs\":false,\"maxLineLength\":80,\"enforceSemicolons\":true,\"newlineStyle\":\"LF\"}", + "description": "Formats a simple JavaScript function to use 2 spaces indentation and enforces semicolons." + }, + { + "inputJson": "{\"sourceCode\":\"def add(a,b):\\n return a+b\",\"language\":\"python\",\"indentationSize\":4,\"useTabs\":false,\"maxLineLength\":80,\"enforceSemicolons\":false,\"newlineStyle\":\"LF\"}", + "description": "Formats a Python function ensuring 4 space indentation and LF line endings." + }, + { + "inputJson": "{\"sourceCode\":\"export const add=(a,b)=>a+b\",\"language\":\"typescript\",\"indentationSize\":0,\"useTabs\":true,\"maxLineLength\":100,\"enforceSemicolons\":true,\"newlineStyle\":\"CRLF\"}", + "description": "Formats a TypeScript arrow function component using tabs for indentation, max line length 100, and CRLF newlines." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "backend-development.formatTable", + "description": "Formats raw tabular data provided as an array of objects or arrays into a well-structured table string with customizable options such as column alignment, padding, and styles. Accepts input data and returns a formatted table string suitable for console display, logs, or text-based reports.", + "category": "backend-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "The raw table data to format, as an array of objects or arrays representing rows. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnHeaders", + "type": "array", + "description": "Optional array of strings specifying column headers. If omitted and data is array of objects, keys from the first object are used.", + "required": false, + "defaultValue": "" + }, + { + "name": "alignments", + "type": "array", + "description": "Array specifying alignment per column: 'left', 'right', or 'center'. Defaults to left alignment.", + "required": false, + "defaultValue": "left" + }, + { + "name": "padding", + "type": "number", + "description": "Number of spaces to pad on each side of a cell. Defaults to 1.", + "required": false, + "defaultValue": "1" + }, + { + "name": "borderStyle", + "type": "string", + "description": "Style of the table borders, e.g., 'ascii', 'unicode', or 'none'. Defaults to 'ascii'.", + "required": false, + "defaultValue": "ascii" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include the column header row in the output. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "A string representing the formatted table with borders, aligned columns, and optional header row, ready for display or output." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to convert raw table data structures into a nicely formatted, human-readable table string in backend applications, logs, reports, or console outputs. It is ideal when data comes as JSON-like arrays or objects and must be displayed cleanly with alignment and styling options.", + "limitations": "This tool does not generate tables in graphical or HTML formats; it is limited to plain-text table formatting. It does not support automatic data type formatting beyond string conversion.", + "examples": [ + "Format a JSON array of objects with default settings.", + "Format a table with custom column alignments and no borders.", + "Format data without headers and with increased padding." + ] + }, + "tags": [ + "backend", + "formatting", + "table", + "logging", + "console", + "text-output" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"Name\":\"Alice\",\"Age\":30,\"City\":\"New York\"},{\"Name\":\"Bob\",\"Age\":25,\"City\":\"Los Angeles\"}],\"includeHeader\":true}", + "description": "Format a simple array of objects with headers in default ascii table style." + }, + { + "inputJson": "{\"data\":[[\"Alice\",30,\"New York\"],[\"Bob\",25,\"Los Angeles\"]],\"columnHeaders\":[\"Name\",\"Age\",\"City\"],\"alignments\":[\"left\",\"right\",\"center\"],\"borderStyle\":\"unicode\"}", + "description": "Format array of arrays with custom column headers, alignment and unicode borders." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "backend-development.draftSummary", + "description": "Generates a concise summary from provided raw textual documents such as logs, API specifications, or technical notes. It processes the input text to extract key points and outputs a structured summary useful for quick understanding or documentation purposes.", + "category": "backend-development", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "Raw text content of the document to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired length of the summary in sentences.", + "required": false, + "defaultValue": "5" + }, + { + "name": "language", + "type": "string", + "description": "Language of the input document text. Defaults to 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyTerms", + "type": "boolean", + "description": "Whether to extract and include key terms and phrases in the summary output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary string, optionally a list of key terms if requested, and metadata such as originalLength and summaryLength." + }, + "aiAgent": { + "useCase": "This tool is ideal for backend development contexts where lengthy technical documents, API specs, logs, or design notes need to be quickly summarized for review or documentation. It helps agents reduce large texts into manageable summaries to accelerate understanding and reporting.", + "limitations": "The tool summarizes text based on the input and may not always capture nuanced context or highly specialized content accurately. It does not replace expert technical review and is language-dependent with varying effectiveness by language.", + "examples": [ + "Please create a 3-sentence summary of this API documentation.", + "Summarize the error log report focusing on key issues.", + "Generate a brief technical summary highlighting endpoints described in this backend design note." + ] + }, + "tags": [ + "summary", + "backend", + "documentation", + "text-processing", + "API", + "logs" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"This backend API offers endpoints for user authentication, data retrieval, and logging. It enforces OAuth2 security, uses JSON for data interchange, and handles rate limiting with exponential backoff. The service is scalable, fault tolerant, and integrates with third-party analytics.\",\"summaryLength\":4,\"language\":\"en\",\"includeKeyTerms\":true}", + "description": "Summarize an API specification document emphasizing key features and terms." + }, + { + "inputJson": "{\"documentText\":\"Error report from service: timeout on database connection at 14:35 UTC. Several requests returned 500 errors between 15:00 and 15:10 due to resource exhaustion. Recovery procedures triggered automatically and system back to normal.\",\"summaryLength\":3}", + "description": "Summarize backend error logs to highlight incidents and resolutions." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "backend-development.formatArticle", + "description": "Formats a raw article text into a structured HTML or Markdown representation. Accepts article content with optional metadata like title, author, and date. Processes headings, paragraphs, lists, and basic formatting marks. Outputs formatted article content in the chosen output format for rendering or publishing.", + "category": "backend-development", + "parameters": [ + { + "name": "articleContent", + "type": "string", + "description": "The raw text content of the article to format, including paragraphs and inline formatting marks.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title of the article to include as a header.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to display with the article metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "publishDate", + "type": "string", + "description": "Optional publish date in ISO 8601 format to include in the article metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the formatted article. Supported values: 'html', 'markdown'.", + "required": true, + "defaultValue": "html" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata (title, author, date) in the output. Defaults to true if metadata fields are provided.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article string under 'formattedContent'. Contains the fully formatted article in the specified format." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw article text with optional metadata and need it converted into a clean, well-structured HTML or Markdown format for web display, email, or publishing workflows. Ideal for content management systems or automated publishing pipelines.", + "limitations": "Does not perform advanced content analysis like SEO optimization, image insertion, or multimedia embedding. Only supports basic formatting: headers, paragraphs, bold, italics, lists, and metadata insertion. Complex layouts or interactive elements are not supported.", + "examples": [ + "Format a plain article text to HTML with title and author metadata included.", + "Convert an article with markdown-like inline markers to HTML for website display.", + "Generate markdown-formatted article from raw content without metadata for Git-based publishing." + ] + }, + "tags": [ + "backend-development", + "formatting", + "article", + "content-management", + "html", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"articleContent\":\"Introduction\\nThis is the first paragraph.\\n* Item 1\\n* Item 2\\nConclusion\\nThis is the end.\",\"title\":\"Sample Article\",\"author\":\"Jane Doe\",\"publishDate\":\"2024-04-20\",\"outputFormat\":\"html\",\"includeMetadata\":true}", + "description": "Format an article with title, author, and date metadata into HTML including headings and lists." + }, + { + "inputJson": "{\"articleContent\":\"# Main Heading\\nSome *emphasized* and **bold** text here.\",\"outputFormat\":\"markdown\",\"includeMetadata\":false}", + "description": "Convert raw content with inline markdown markers into markdown format without metadata." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "backend-development.draftSentence", + "description": "Generates a clear, concise English sentence based on a provided technical context and purpose suited for backend development documentation, comments, or communication. Accepts a context description and a goal or intent, returns a well-formed sentence that effectively conveys the specified information.", + "category": "backend-development", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "A brief technical background or scenario related to backend development that the sentence should refer to.", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "The specific intent or objective of the sentence, such as explaining, warning, or summarizing technical details.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the sentence: e.g., formal, informal, instructional, or neutral.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeCodeReference", + "type": "boolean", + "description": "Whether to include a generic reference to code elements like functions or endpoints in the sentence.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted sentence as a string under the key 'sentence'. This sentence is syntactically correct, contextually relevant, and matches the requested purpose and tone." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate clear and context-aware sentences for backend development environments, such as generating documentation sentences, commit message explanations, inline comment drafts, or descriptive logs. It helps automate the creation of natural language explanations based on technical input.", + "limitations": "The tool cannot generate lengthy paragraphs or detailed multi-sentence explanations; its output is limited to a single, coherent sentence. It also does not generate code itself or replace in-depth technical documentation.", + "examples": [ + "Generate a warning sentence about potential null reference exceptions in a function.", + "Create an instructional sentence describing API endpoint behavior in a formal tone.", + "Draft a neutral summary sentence about a recent bug fix affecting database queries." + ] + }, + "tags": [ + "sentence-generation", + "backend-development", + "documentation", + "comment-generation", + "natural-language" + ], + "examples": [ + { + "inputJson": "{\"context\":\"handling user authentication in a REST API\",\"purpose\":\"instructional\",\"tone\":\"formal\",\"includeCodeReference\":true}", + "description": "Draft a formal instructional sentence about user authentication in a REST API including a code reference." + }, + { + "inputJson": "{\"context\":\"database connection timeout errors\",\"purpose\":\"warning\",\"tone\":\"neutral\",\"includeCodeReference\":false}", + "description": "Draft a neutral warning sentence about database connection timeouts without referencing code elements." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "backend-development.draftParagraph", + "description": "This tool generates a coherent, content-specific paragraph for backend development documentation or code comments. It accepts parameters like the main topic, desired tone, length, and technical complexity, then outputs a well-structured paragraph suitable for inclusion in technical docs or API descriptions.", + "category": "backend-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the paragraph to draft, such as a specific backend concept or function.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the paragraph text (e.g., formal, casual, explanatory) to match the documentation style.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the paragraph in sentences.", + "required": false, + "defaultValue": "4" + }, + { + "name": "complexity", + "type": "string", + "description": "Technical complexity level for the language used: beginner, intermediate, advanced.", + "required": false, + "defaultValue": "intermediate" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "If true, the paragraph will include example snippets or analogies relevant to the topic.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted paragraph string under the 'paragraph' key, representing the generated content." + }, + "aiAgent": { + "useCase": "Use this tool to generate clear, concise explanatory text for backend development concepts when creating technical documentation, API references, or inline code comments, especially when needing consistent tone and appropriate technical detail.", + "limitations": "The tool does not generate complete documents or replace expert-written documentation. It may produce generic paragraphs lacking in-depth context or examples if parameters are not specified precisely.", + "examples": [ + "Draft a formal paragraph about RESTful API design for intermediate developers.", + "Create a casual explanation paragraph about database indexing including examples.", + "Generate a beginner-friendly paragraph explaining middleware functions with moderate length." + ] + }, + "tags": [ + "backend", + "documentation", + "paragraph-generation", + "technical-writing", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"REST API endpoint design\",\"tone\":\"formal\",\"length\":5,\"complexity\":\"intermediate\",\"includeExamples\":true}", + "description": "Generate a formal, moderately technical paragraph about REST API endpoint design including examples." + }, + { + "inputJson": "{\"topic\":\"database connection pooling\",\"tone\":\"explanatory\",\"length\":4,\"complexity\":\"beginner\",\"includeExamples\":false}", + "description": "Create a beginner-level explanatory paragraph about database connection pooling without examples." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "backend-development.composeArticle", + "description": "This tool accepts structured input including a title, author details, sections with headings and content, and optional metadata. It composes a well-formatted article as a serialized HTML string or Markdown document, applying basic formatting rules. The output can be used directly in web content or documentation systems.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the article to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "object", + "description": "An object containing author information such as name and optionally email and bio.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sections", + "type": "array", + "description": "An array of article sections, each with a heading and content text. Sections are composed sequentially.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags or keywords related to the article for metadata purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output article, e.g., 'html' or 'markdown'. Defaults to 'html'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include author and tags metadata in the output. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed article as a string under 'articleContent', and its format under 'format'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured article from given components such as title, author info, and multiple sections. Ideal for backend systems that programmatically produce blog posts, technical documentation, or news articles in consistent formats.", + "limitations": "This tool composes basic HTML or Markdown output; it does not support advanced styling, multimedia embedding, or automated fact-checking. It requires well-structured input and does not perform natural language generation of content itself.", + "examples": [ + "Compose a technical documentation article with multiple sections and author metadata.", + "Generate a blog post in Markdown format with title and tags but no author information.", + "Create a simple HTML article with just a title and one section, excluding metadata." + ] + }, + "tags": [ + "backend-development", + "article", + "compose", + "content-generation", + "html", + "markdown", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Introduction to Serverless Architecture\",\"author\":{\"name\":\"Jane Smith\",\"email\":\"jane@example.com\"},\"sections\":[{\"heading\":\"What is Serverless?\",\"content\":\"Serverless architecture allows developers to build and run applications without managing servers.\"},{\"heading\":\"Benefits\",\"content\":\"It offers scalability, cost efficiency, and reduced operational complexity.\"}],\"tags\":[\"serverless\",\"cloud\",\"architecture\"],\"outputFormat\":\"html\",\"includeMetadata\":true}", + "description": "Compose a multi-section technical article in HTML with author and tags included." + }, + { + "inputJson": "{\"title\":\"Top 5 JavaScript Frameworks\",\"sections\":[{\"heading\":\"React\",\"content\":\"A popular library for building user interfaces.\"},{\"heading\":\"Vue.js\",\"content\":\"An approachable, versatile framework.\"}],\"outputFormat\":\"markdown\",\"includeMetadata\":false}", + "description": "Compose a brief article in Markdown format without author or tags metadata." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "backend-development.composeComment", + "description": "This tool generates a well-structured, context-appropriate comment string for server-side application code. It accepts inputs such as the programming language, the functionality description, the comment style (e.g., single-line, multi-line), and optional tags or author attribution. It processes these to produce a formatted comment block suitable for insertion in the codebase.", + "category": "backend-development", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language of the code to comment (e.g., 'JavaScript', 'Python'). This influences comment syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionalityDescription", + "type": "string", + "description": "A clear text describing what the code or function does, to be used as the comment content.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentStyle", + "type": "string", + "description": "The style of comment to generate, such as 'single-line', 'multi-line', or 'docstring' where applicable.", + "required": false, + "defaultValue": "single-line" + }, + { + "name": "includeAuthor", + "type": "boolean", + "description": "Whether to include an author attribution line in the comment block.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author for attribution if includeAuthor is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDate", + "type": "boolean", + "description": "Whether to include the current date in the comment block.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted comment text ready for code insertion, preserving correct syntax for the specified language and style." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, idiomatic comments for backend code segments during code generation, documentation, or code review automation. It helps ensure comments follow language-specific conventions and project style. Avoids manual formatting or potential syntax errors in comments.", + "limitations": "This tool doesn't validate the underlying code logic or correctness of the functionality description. It also does not integrate with external documentation systems directly or handle internationalization of comments.", + "examples": [ + "Generate a multi-line JavaScript comment describing a function that processes user authentication, including author and date.", + "Create a Python docstring for a method that fetches data from a database.", + "Produce a single-line comment in Go summarizing error handling logic without author attribution." + ] + }, + "tags": [ + "backend", + "comment-generation", + "code-documentation", + "server-side", + "programming", + "automation" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"functionalityDescription\":\"Handles user login by validating credentials against the database.\",\"commentStyle\":\"multi-line\",\"includeAuthor\":true,\"authorName\":\"Jane Doe\",\"includeDate\":true}", + "description": "Generate a multi-line JavaScript comment describing user login function with author and date." + }, + { + "inputJson": "{\"programmingLanguage\":\"Python\",\"functionalityDescription\":\"Retrieves all active users from the database.\",\"commentStyle\":\"docstring\",\"includeAuthor\":false,\"authorName\":\"\",\"includeDate\":false}", + "description": "Create a Python docstring for fetching active users without author and date." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "backend-development.generateReadme", + "description": "Generates a comprehensive README.md file for a backend development project based on provided project metadata, features, setup instructions, and usage examples. Accepts structured inputs describing the project and outputs a formatted Markdown string suitable as a README document.", + "category": "backend-development", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the backend project for the README title and references.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief description of the project's purpose and functionality.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions to install and set up the project environment.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "An array of string examples demonstrating how to run or interact with the project or its API.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "features", + "type": "array", + "description": "List of key features or capabilities provided by the backend project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "apiEndpoints", + "type": "array", + "description": "An array of objects each describing an API endpoint with path, method, and brief description.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contributingGuidelines", + "type": "string", + "description": "Guidelines for developers interested in contributing to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "The license type under which the project is released (e.g., MIT, Apache 2.0).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a Markdown-formatted string, keyed by \"readmeContent\"." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to quickly create or update a README file for a backend project based on structured project info. It helps automate documentation generation without manually formatting Markdown, ensuring consistent style and completeness.", + "limitations": "The tool generates README content based on input text and arrays but cannot validate project correctness or dynamically analyze project code or dependencies. Complex diagrams or screenshots are not included.", + "examples": [ + "Generate README for a new REST API with installation and usage.", + "Produce a README that lists API endpoints and contributing guidelines.", + "Create a simple README with project description and license info only." + ] + }, + "tags": [ + "documentation", + "backend", + "readme", + "markdown", + "automation", + "project-setup" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"UserAPI\",\"projectDescription\":\"A RESTful API for user management.\",\"installationInstructions\":\"Run npm install and then npm start.\",\"usageExamples\":[\"GET /users fetches all users\",\"POST /users creates a new user\"],\"features\":[\"User CRUD operations\",\"JWT authentication\",\"Role-based access control\"],\"apiEndpoints\":[{\"path\":\"/users\",\"method\":\"GET\",\"description\":\"Retrieve list of users\"},{\"path\":\"/users\",\"method\":\"POST\",\"description\":\"Create a new user\"}],\"contributingGuidelines\":\"Please fork the repo and submit a pull request.\",\"license\":\"MIT\"}", + "description": "Generate a full README for a user management API project with installation, features, API endpoints, usage examples, contributing, and license." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "backend-development.generateGraph", + "description": "Generates customizable data graphs (e.g., bar, line, pie charts) based on input datasets and configuration options, producing graph images or SVG markup ready for integration in backend-generated reports or APIs.", + "category": "backend-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data objects representing the dataset to visualize, each object typically containing relevant keys like labels and values.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "The type of graph to generate, such as 'bar', 'line', 'pie', or 'scatter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "The width of the resulting graph image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "The height of the resulting graph image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "title", + "type": "string", + "description": "An optional title to display on the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "Optional array of label strings for the data points or categories.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format: 'png', 'jpeg', or 'svg'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated graph as a base64-encoded string along with metadata like format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when backend services need to dynamically create visual data representations such as charts or graphs for reports, dashboards, or API responses without relying on client-side rendering. It enables generating images or SVG markup for direct inclusion or further processing.", + "limitations": "Does not support highly complex or interactive graphs such as 3D charts or real-time animations. Limited to standard 2D chart types specified.", + "examples": [ + "Generate a bar chart from sales data for a monthly report.", + "Create an SVG pie chart showing user demographic percentages.", + "Produce a line graph image illustrating stock prices over time." + ] + }, + "tags": [ + "backend", + "graph-generation", + "data-visualization", + "chart", + "image-generation" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"label\":\"Jan\",\"value\":30},{\"label\":\"Feb\",\"value\":45},{\"label\":\"Mar\",\"value\":20}],\"graphType\":\"bar\",\"width\":600,\"height\":400,\"title\":\"Quarterly Sales\",\"labels\":[\"Jan\",\"Feb\",\"Mar\"],\"outputFormat\":\"png\"}", + "description": "Generate a bar chart PNG image depicting sales data for three months with specified dimensions and a title." + }, + { + "inputJson": "{\"data\":[{\"category\":\"A\",\"value\":40},{\"category\":\"B\",\"value\":60}],\"graphType\":\"pie\",\"width\":500,\"height\":500,\"title\":\"Category Distribution\",\"outputFormat\":\"svg\"}", + "description": "Create an SVG pie chart to visualize category distribution percentages with a title and square dimensions." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "backend-development.generateMarkdown", + "description": "Generates well-structured Markdown documents based on provided content sections and formatting options. Accepts inputs such as title, sections with headings and paragraphs, optional lists, and code snippets. Processes these inputs to produce comprehensive Markdown-formatted text suitable for documentation, READMEs, or reports.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the Markdown document, rendered as a top-level heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of section objects, each containing a heading and content arrays of paragraphs, lists, or code blocks.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Flag indicating whether to automatically generate a table of contents based on section headings.", + "required": false, + "defaultValue": "false" + }, + { + "name": "codeLanguage", + "type": "string", + "description": "Programming language to specify in fenced code blocks for syntax highlighting, e.g., 'js', 'python'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown document as a string property 'markdown'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate formatted Markdown documentation or reports from structured content, such as API docs, README files, or developer guides, preserving sections, lists, and code examples in a clean format.", + "limitations": "Cannot interpret or convert arbitrary unstructured text into Markdown intelligently; requires content in structured format with explicit headings and sections; does not support complex Markdown extensions like embedded HTML or interactive elements.", + "examples": [ + "Generate a README Markdown file with multiple sections including installation, usage, and contributing guidelines.", + "Create Markdown documentation with code samples in specific programming language highlighting.", + "Produce a report in Markdown format with table of contents and nested lists." + ] + }, + "tags": [ + "markdown", + "documentation", + "text-generation", + "backend-development", + "formatting", + "code-samples" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Awesome Project README\",\"sections\":[{\"heading\":\"Introduction\",\"content\":[{\"type\":\"paragraph\",\"text\":\"This project provides an awesome feature\"}]},{\"heading\":\"Installation\",\"content\":[{\"type\":\"paragraph\",\"text\":\"Follow these steps to install.\"},{\"type\":\"list\",\"items\":[\"Download the package\",\"Run the installer\",\"Configure settings\"]}]},{\"heading\":\"Usage\",\"content\":[{\"type\":\"paragraph\",\"text\":\"Here is how to use the project.\"},{\"type\":\"code\",\"code\":\"npm start\",\"language\":\"\"}]}],\"includeTableOfContents\":true,\"codeLanguage\":\"bash\"}", + "description": "Generate a README with introduction, installation steps as list, usage with a bash code snippet, and an auto-generated table of contents." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "backend-development.createChannel", + "description": "Creates a new communication channel on the backend system with specified attributes such as name, type (e.g., public, private), description, and access permissions. Processes input parameters to configure the channel and returns the channel's metadata including unique identifier and creation timestamp.", + "category": "backend-development", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "The unique name for the communication channel to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of the channel indicating its accessibility, e.g., 'public' or 'private'.", + "required": true, + "defaultValue": "public" + }, + { + "name": "description", + "type": "string", + "description": "A brief description explaining the purpose or usage of the channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "permissions", + "type": "object", + "description": "An object defining access permissions, specifying roles or user groups that can read, write or manage the channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata as key-value pairs to tag or categorize the channel.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the channel ID, name, type, description, assigned permissions, metadata, and the ISO 8601 timestamp of creation." + }, + "aiAgent": { + "useCase": "Use this tool when backend services need to programmatically establish distinct communication pathways, such as chat rooms, notification feeds, or collaboration channels, configuring their access and properties.", + "limitations": "This tool does not handle client-side subscription logic or real-time message delivery; it only creates channel definitions on the backend.", + "examples": [ + "Create a private channel named 'engineering-discussions' with read access for the engineering team.", + "Create a public channel 'general-announcements' with no special permissions.", + "Create a channel with custom metadata tags for audit purposes." + ] + }, + "tags": [ + "backend", + "communication", + "channel", + "create", + "permissions", + "api" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"engineering-discussions\",\"channelType\":\"private\",\"description\":\"Channel for engineering team discussions\",\"permissions\":{\"read\":[\"engineering-team\"],\"write\":[\"engineering-team\"]}}", + "description": "Create a private channel 'engineering-discussions' with access restricted to the engineering team." + }, + { + "inputJson": "{\"channelName\":\"general-announcements\",\"channelType\":\"public\",\"description\":\"Company-wide announcement channel\"}", + "description": "Create a public channel for company-wide announcements with default permissions." + }, + { + "inputJson": "{\"channelName\":\"audit-log\",\"channelType\":\"private\",\"description\":\"Audit log channel\",\"permissions\":{\"read\":[\"audit-team\"]},\"metadata\":{\"compliance\":\"true\",\"region\":\"us-east\"}}", + "description": "Create a private audit log channel with metadata tags for compliance and region." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "backend-development.createDiagram", + "description": "Creates a backend architecture diagram from structured input describing services, databases, APIs, and connections. Processes JSON or object input defining components and relationships, then outputs a visual diagram representation in SVG or PNG format to help visualize server-side system structure.", + "category": "backend-development", + "parameters": [ + { + "name": "components", + "type": "array", + "description": "Array of component objects to include in the diagram; each defines a service, database, or API with a unique id, type, and label.", + "required": true, + "defaultValue": "" + }, + { + "name": "connections", + "type": "array", + "description": "Array of connection objects specifying relationships between components by referencing their ids and describing the connection type and direction.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format for the diagram, such as 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "includeLabels", + "type": "boolean", + "description": "Whether to include labels on components and connections in the diagram.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme for the diagram, e.g., 'light' or 'dark'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "layoutAlgorithm", + "type": "string", + "description": "Algorithm to use for layout of components, e.g., 'hierarchical' or 'force-directed'.", + "required": false, + "defaultValue": "hierarchical" + } + ], + "returns": { + "type": "object", + "description": "Object containing an imageData field with base64-encoded image string and a mimeType indicating the image format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate visual diagrams of backend system architectures automatically from structured descriptions of components and their connections, aiding developers and architects in understanding, documenting, and communicating server-side designs.", + "limitations": "This tool generates static diagrams only and does not support interactive editing or real-time collaboration. It requires well-structured input data with all necessary component and connection details specified.", + "examples": [ + "Create a diagram showing a microservices architecture with services and databases.", + "Generate a visual map of API endpoints connected to backend services and data stores.", + "Produce a hierarchical diagram of the backend components for documentation purposes." + ] + }, + "tags": [ + "backend", + "diagram", + "visualization", + "architecture", + "API", + "services", + "databases" + ], + "examples": [ + { + "inputJson": "{\"components\":[{\"id\":\"svc1\",\"type\":\"service\",\"label\":\"User Service\"},{\"id\":\"db1\",\"type\":\"database\",\"label\":\"User DB\"},{\"id\":\"api1\",\"type\":\"api\",\"label\":\"Auth API\"}],\"connections\":[{\"from\":\"api1\",\"to\":\"svc1\",\"type\":\"calls\",\"direction\":\"uni\"},{\"from\":\"svc1\",\"to\":\"db1\",\"type\":\"reads/writes\",\"direction\":\"uni\"}],\"outputFormat\":\"svg\",\"includeLabels\":true,\"theme\":\"light\",\"layoutAlgorithm\":\"hierarchical\"}", + "description": "Input describing a simple backend with an Auth API calling a User Service which reads/writes to a User Database, outputting an SVG diagram with labels." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "backend-development.createReadme", + "description": "Generates a comprehensive README.md file content for a backend project by accepting project metadata, lists of features, setup instructions, usage examples, and other relevant details. Processes these inputs to produce a well-structured markdown document suitable for project documentation.", + "category": "backend-development", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the backend project to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description summarizing the purpose and functionality of the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions for installing or setting up the project environment.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "string", + "description": "Code snippets or command examples demonstrating how to use the project or API.", + "required": false, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "A list of key features or functionalities included in the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contributingGuidelines", + "type": "string", + "description": "Guidelines for contributing to the project such as coding standards or pull request process.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "Type of license governing the project usage (e.g., MIT, Apache 2.0).", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Contact information for maintainers or support, such as email or social links.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a markdown-formatted string under the 'readmeContent' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate or update a backend project's README documentation based on structured input data. It is ideal for creating standardized project documentation to improve clarity and onboarding for developers.", + "limitations": "This tool generates README content based on provided inputs but cannot fetch project-specific data automatically. It does not handle complex formatting beyond standard markdown and cannot validate the accuracy of technical instructions.", + "examples": [ + "Generate a README for a Node.js REST API including features and installation steps.", + "Create a comprehensive README providing usage examples and contribution guidelines for a backend microservice.", + "Produce a simple README with project description and contact info for support queries." + ] + }, + "tags": [ + "backend", + "documentation", + "readme", + "markdown", + "project-setup", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"AwesomeBackendAPI\",\"description\":\"A RESTful API to manage user data and authentication.\",\"installationInstructions\":\"1. Clone the repo\\n2. Run npm install\\n3. Start with npm start\",\"usageExamples\":\"curl -X GET https://api.example.com/users\",\"features\":[\"User authentication\",\"Data CRUD operations\",\"JWT based security\"],\"contributingGuidelines\":\"Please fork the repo, create a feature branch, and submit pull requests.\",\"license\":\"MIT\",\"contactInfo\":\"devteam@example.com\"}", + "description": "Generates a full README file for a typical backend API project including setup, usage, and contact info." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "backend-development.createMarkdown", + "description": "Generates a Markdown-formatted document from structured input including title, headings, paragraphs, lists, and code blocks. Accepts an object defining content sections and converts it into a well-structured Markdown string ready for documentation, README files, or reports.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the Markdown document, rendered as an H1 header.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of section objects describing subsections, paragraphs, lists, and code blocks in order.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with a single Markdown string representing the entire formatted document." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured content data such as titles, paragraphs, lists, and code snippets and want to produce a clean, standards-compliant Markdown document for documentation, README files, or notes. It simplifies content generation avoiding manual Markdown formatting.", + "limitations": "Does not support advanced Markdown extensions like tables, footnotes, or embedded HTML. Does not perform content validation or syntax highlighting beyond raw code fencing.", + "examples": [ + "Create a README file with project title, description paragraph, and usage code snippet.", + "Generate a Markdown report with multiple sections including bullet lists and code blocks.", + "Produce documentation from a content object with nested subsections and paragraphs." + ] + }, + "tags": [ + "backend-development", + "markdown", + "document-generation", + "documentation", + "code-blocks", + "lists", + "text-formatting" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Project README\",\"sections\":[{\"heading\":\"Introduction\",\"paragraphs\":[\"This project demonstrates backend API design.\"],\"lists\":[{\"type\":\"unordered\",\"items\":[\"Uses Node.js\",\"Implements REST API\"]}],\"codeBlocks\":[{\"language\":\"javascript\",\"code\":\"console.log('Hello World');\"}]}]}", + "description": "Generate a README file with a title, introduction section, bullet list, and JavaScript code block." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "backend-development.createDependency", + "description": "This tool accepts specifications for a project dependency including package name, version, and type of dependency. It generates a structured dependency object suitable for inclusion in package manifest files like package.json or requirements.txt, facilitating automated management and inclusion of dependencies in backend projects.", + "category": "backend-development", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "Name of the dependency package to be added, e.g., 'express'", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version or version range of the package, e.g., '^4.17.1'", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyType", + "type": "string", + "description": "Type of dependency such as 'dependencies', 'devDependencies', 'peerDependencies'", + "required": false, + "defaultValue": "dependencies" + }, + { + "name": "registry", + "type": "string", + "description": "Optional package registry URL or source to pull the dependency from", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured object representing the dependency entry, including package name, version, and dependency type, ready for integration into project manifest files." + }, + "aiAgent": { + "useCase": "Use this tool when automating backend project setup or dependency management, to generate precise dependency definitions that can be inserted into configuration files. It helps maintain consistent dependency versions and categorization (runtime vs dev).", + "limitations": "This tool does not resolve or install dependencies, nor validate that versions are valid or available in the registry. It only formats the dependency specification.", + "examples": [ + "Add express version ^4.17.1 as a runtime dependency", + "Add jest version ^29.0.0 as a devDependency", + "Create a dependency entry for a custom package from a private registry" + ] + }, + "tags": [ + "backend", + "dependency", + "package-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"express\",\"version\":\"^4.17.1\",\"dependencyType\":\"dependencies\"}", + "description": "Add express as a runtime dependency with version ^4.17.1" + }, + { + "inputJson": "{\"packageName\":\"jest\",\"version\":\"^29.0.0\",\"dependencyType\":\"devDependencies\"}", + "description": "Add jest testing framework as a dev dependency" + }, + { + "inputJson": "{\"packageName\":\"my-private-lib\",\"version\":\"1.2.3\",\"dependencyType\":\"dependencies\",\"registry\":\"https://my-registry.example.com\"}", + "description": "Add a private package from custom registry as runtime dependency" + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "backend-development.createTemplate", + "description": "Creates a server-side code template for various backend components such as API endpoints, database models, or middleware. Accepts template type, language, and optional configuration to generate reusable, boilerplate code files that accelerate backend development.", + "category": "backend-development", + "parameters": [ + { + "name": "templateType", + "type": "string", + "description": "Type of backend template to create (e.g., 'API Endpoint', 'Model', 'Middleware')", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the template code (e.g., 'NodeJS', 'Python', 'Java')", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to generate accompanying test files for the template", + "required": false, + "defaultValue": "false" + }, + { + "name": "useDatabase", + "type": "boolean", + "description": "Include database integration code if applicable to the template type", + "required": false, + "defaultValue": "false" + }, + { + "name": "configOptions", + "type": "object", + "description": "Additional optional settings specific to the template type (e.g., HTTP methods for API)", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template file content keyed by filename, enabling immediate use or customization." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to bootstrap backend components quickly by generating standardized, ready-to-use code templates for API endpoints, database models, or middleware in a specified programming language and configuration. It helps accelerate backend project setup and reduce manual boilerplate coding.", + "limitations": "This tool does not execute or test the generated code; it only provides static template files. It cannot customize templates beyond the provided configuration options or adapt to proprietary frameworks without user input.", + "examples": [ + "Create a NodeJS API endpoint template with tests included.", + "Generate a Python database model template without tests.", + "Produce middleware code in Java without database integration." + ] + }, + "tags": [ + "backend", + "template", + "code generation", + "API", + "model", + "middleware" + ], + "examples": [ + { + "inputJson": "{\"templateType\":\"API Endpoint\",\"language\":\"NodeJS\",\"includeTests\":true,\"useDatabase\":false,\"configOptions\":{\"httpMethods\":[\"GET\",\"POST\"]}}", + "description": "Generate a NodeJS API endpoint template supporting GET and POST methods with test files." + }, + { + "inputJson": "{\"templateType\":\"Model\",\"language\":\"Python\",\"includeTests\":false,\"useDatabase\":true,\"configOptions\":{\"orm\":\"SQLAlchemy\"}}", + "description": "Create a Python database model template using SQLAlchemy ORM without tests." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "backend-development.createBlogPost", + "description": "Creates a new blog post entry by accepting input parameters such as title, content, author, tags, and publication status. It processes these inputs to structure and validate the blog post data, then outputs a blog post object including a unique ID, timestamps, and the provided details.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The main body content of the blog post in markdown or HTML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "The name or identifier of the author creating the blog post.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "An array of tag strings categorizing the blog post for indexing and search.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isPublished", + "type": "boolean", + "description": "Indicates if the blog post should be marked as published immediately upon creation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summary", + "type": "string", + "description": "A brief summary or excerpt of the blog post, used for previews or listings.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object representing the created blog post, including generated fields like unique ID, created and updated timestamps, and the input data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create new blog posts in a backend CMS or blog platform as part of content automation, managing dynamic posts, or publishing workflows.", + "limitations": "This tool does not handle image uploads, formatting beyond basic HTML/markdown checking, or advanced SEO optimizations. It assumes input content is already sanitized and valid.", + "examples": [ + "Create a new blog post titled 'Introduction to Node.js' with content, author 'Jane Doe', tags ['nodejs', 'backend'], immediately published.", + "Generate a draft blog post with title 'Upcoming Features', authored by 'John Smith', no tags, and not published yet.", + "Create a blog post including a summary and multiple tags for categorization." + ] + }, + "tags": [ + "backend-development", + "create", + "blog", + "content-management", + "API", + "post-creation", + "cms" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Getting Started with Express.js\",\"content\":\"Express.js is a minimal and flexible Node.js web application framework...\",\"author\":\"Alice Johnson\",\"tags\":[\"nodejs\",\"express\",\"webdev\"],\"isPublished\":true,\"summary\":\"An introduction to building web servers with Express.js.\"}", + "description": "Create a published blog post with a detailed summary and multiple tags." + }, + { + "inputJson": "{\"title\":\"Technical Roadmap 2024\",\"content\":\"Our platform updates planned for 2024 include scalability improvements...\",\"author\":\"Bob Lee\",\"tags\":[],\"isPublished\":false,\"summary\":\"\"}", + "description": "Save a draft blog post without tags or summary." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "backend-development.createProposal", + "description": "Generates a structured project proposal document based on input parameters including project title, summary, objectives, deliverables, timeline, and budget. Processes the inputs to create a well-formatted JSON proposal output suitable for project planning and review.", + "category": "backend-development", + "parameters": [ + { + "name": "projectTitle", + "type": "string", + "description": "The title of the project proposal.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectSummary", + "type": "string", + "description": "A brief summary describing the purpose and scope of the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "objectives", + "type": "array", + "description": "An array of key objectives the project aims to achieve.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "deliverables", + "type": "array", + "description": "An array listing the expected deliverables or outputs of the project.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "timeline", + "type": "object", + "description": "An object specifying start and end dates of the project timeline in ISO date string format, e.g., {\"startDate\": \"YYYY-MM-DD\",\"endDate\": \"YYYY-MM-DD\"}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "budget", + "type": "number", + "description": "Estimated budget in USD allocated for the project.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the structured project proposal with all input fields organized, including automatically calculated duration in days if timeline is provided." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate a consistent, structured project proposal document from user-provided project details to facilitate planning, documentation, or submission processes. It helps standardize project proposals by assembling key information into a clear format.", + "limitations": "Does not generate detailed technical or financial analysis beyond provided inputs. Timeline dates must be valid ISO strings for duration calculation. Does not create formatted PDFs or textual documents, only structured JSON output.", + "examples": [ + "Create a project proposal for developing a mobile app with objectives and deliverables, timeline from 2024-07-01 to 2024-12-31, budget $150000.", + "Generate a summary project proposal with just title, summary, objectives, and deliverables, no timeline or budget.", + "Produce a project proposal focusing on software upgrade with clear objectives and an estimated budget but without timeline." + ] + }, + "tags": [ + "backend", + "proposal", + "project management", + "document generation", + "planning" + ], + "examples": [ + { + "inputJson": "{\"projectTitle\":\"Mobile Banking App Development\",\"projectSummary\":\"Develop a secure and user-friendly mobile banking application.\",\"objectives\":[\"Enhance user experience\",\"Implement multi-factor authentication\",\"Ensure 99.9% uptime\"],\"deliverables\":[\"Android and iOS apps\",\"Security audit report\",\"User manual\"],\"timeline\":{\"startDate\":\"2024-07-01\",\"endDate\":\"2024-12-31\"},\"budget\":150000}", + "description": "Full proposal with timeline and budget for a banking app project." + }, + { + "inputJson": "{\"projectTitle\":\"Website Redesign\",\"projectSummary\":\"Redesign corporate website for better accessibility and responsiveness.\",\"objectives\":[\"Improve UI/UX\",\"Increase mobile traffic\",\"Reduce bounce rate\"],\"deliverables\":[\"New homepage layout\",\"Mobile optimized pages\",\"Accessibility compliance report\"]}", + "description": "Basic proposal without timeline and budget." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "web-development.analyzeSentence", + "description": "Analyzes a single sentence string to provide linguistic insights including grammatical structure, sentiment score, keyword extraction, and readability metrics. Accepts plain text input and returns detailed analysis information useful for SEO optimization, content quality assessment, and user engagement improvements.", + "category": "web-development", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The sentence text to analyze for linguistic and content features.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) to use for parsing and analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Flag to include sentiment analysis results in output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeReadability", + "type": "boolean", + "description": "Flag to include readability metrics like Flesch–Kincaid score in output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Flag to perform keyword extraction from the sentence text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the grammatical parse tree, sentiment score and label, extracted keywords, and readability scores for the input sentence." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze the linguistic and semantic properties of a sentence in web content, such as for SEO tuning, quality assessment, or user experience improvement. It helps AI agents evaluate sentence structure, sentiment, keyword relevance, and readability to guide content adjustments.", + "limitations": "This tool analyzes one sentence at a time and may have reduced accuracy with idiomatic, highly informal, or domain-specific language. It does not provide full document analysis or context beyond the single sentence.", + "examples": [ + "Analyze the sentence 'Our new product launch was a huge success!' for sentiment and keywords.", + "Check readability and grammatical structure of the sentence 'Despite the rain, the event continued as planned.'", + "Extract keywords and sentiment from 'I am thrilled with the quick customer support provided.'" + ] + }, + "tags": [ + "analysis", + "linguistics", + "seo", + "content-quality", + "sentiment-analysis", + "readability" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"The quick brown fox jumps over the lazy dog.\"}", + "description": "Basic English pangram sentence analysis with default options." + }, + { + "inputJson": "{\"sentence\":\"I had a terrible experience with the customer service.\", \"includeSentiment\":true, \"extractKeywords\":true}", + "description": "Analyzing a negative sentiment sentence including keyword extraction." + }, + { + "inputJson": "{\"sentence\":\"Understanding syntax and semantics is essential for natural language processing.\", \"includeReadability\":true}", + "description": "Assessing readability and grammatical features for an educational sentence." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "web-development.analyzeMetric", + "description": "Analyzes a specified website performance or user behavior metric based on input data or live URLs. The tool accepts metric type, data source (either raw analytics data or a URL to fetch data from), and optional filters. It processes the data to compute statistics such as averages, trends, and anomalies, then outputs a detailed report summarizing the metric's status and insights.", + "category": "web-development", + "parameters": [ + { + "name": "metricType", + "type": "string", + "description": "The name of the metric to analyze (e.g., 'pageLoadTime', 'bounceRate', 'conversionRate').", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "object", + "description": "Data input object. Either provide 'rawData' as an array of data points or 'url' string to fetch live data. At least one must be provided.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to apply on the data, such as date range, user segments, or device types.", + "required": false, + "defaultValue": "" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for analysis output (e.g., 'daily', 'weekly', 'monthly'). If not specified, summarize overall metric.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeAnomalies", + "type": "boolean", + "description": "Whether to detect and highlight anomalies in the metric data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object containing overall statistics, time series data per granularity interval, detected anomalies if any, and textual insights or recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing detailed analytics on specific website metrics from either raw data or live URL sources. It helps in understanding performance trends, spotting issues, and making data-driven decisions to improve website user experience and conversion.", + "limitations": "This tool relies on input data accuracy. It cannot fetch data from arbitrary URLs unless they provide accessible analytics data in compatible formats. It does not itself collect raw logs but analyzes provided data only.", + "examples": [ + "Analyze daily average page load time for the past month from raw log data.", + "Identify anomalies in bounce rate trends using live Google Analytics URL data.", + "Generate a weekly report on conversion rate filtered by mobile users." + ] + }, + "tags": [ + "analytics", + "web-development", + "metric-analysis", + "performance", + "user-behavior", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"metricType\":\"pageLoadTime\",\"dataSource\":{\"rawData\":[5.2,4.7,5.5,6.0,4.8]},\"filters\":{\"dateRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-01-07\"}},\"granularity\":\"daily\",\"includeAnomalies\":true}", + "description": "Analyze daily page load times over one week from raw data, including anomaly detection." + }, + { + "inputJson": "{\"metricType\":\"bounceRate\",\"dataSource\":{\"url\":\"https://api.analytics.example.com/site123/bouncerate\"},\"filters\":{\"device\":\"mobile\"},\"granularity\":\"weekly\",\"includeAnomalies\":false}", + "description": "Generate weekly bounce rate report for mobile users from data fetched via URL, without anomaly detection." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "web-development.analyzeParagraph", + "description": "Analyzes a given paragraph of text from a web page to provide insights such as readability score, keyword density, sentiment, and grammatical issues. Accepts raw paragraph text as input and outputs a comprehensive analysis report highlighting content quality and SEO-related metrics.", + "category": "web-development", + "parameters": [ + { + "name": "paragraphText", + "type": "string", + "description": "The raw paragraph text to be analyzed for content quality and SEO metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the paragraph text for accurate analysis, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis in the results.", + "required": false, + "defaultValue": "true" + }, + { + "name": "keywords", + "type": "array", + "description": "Optional list of keywords to specifically check for their density in the paragraph.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including readability score (Flesch-Kincaid), keyword density map, detected grammar issues, and optional sentiment rating." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate the quality, SEO effectiveness, and tone of textual content on web pages. It helps determine how readable the paragraph is, what keywords are emphasized, and whether the sentiment aligns with content goals.", + "limitations": "Does not perform full document or multi-paragraph context analysis. Limited by language support. Cannot verify factual accuracy of content or provide content rewriting suggestions.", + "examples": [ + "Analyze paragraph for readability and keyword presence in web page content.", + "Check sentiment and grammar issues in a promotional paragraph.", + "Evaluate SEO effectiveness of a paragraph referencing specific keywords." + ] + }, + "tags": [ + "web", + "content-analysis", + "SEO", + "readability", + "sentiment-analysis", + "grammar" + ], + "examples": [ + { + "inputJson": "{\"paragraphText\":\"Our innovative platform streamlines your workflow by integrating multiple tools into one seamless experience. Discover efficiency like never before.\",\"language\":\"en\",\"includeSentiment\":true,\"keywords\":[\"workflow\",\"efficiency\"]}", + "description": "Analyzing a marketing paragraph for readability, sentiment, and keyword density." + }, + { + "inputJson": "{\"paragraphText\":\"The quick brown fox jumps over the lazy dog.\",\"includeSentiment\":false}", + "description": "Basic readability and grammar check without sentiment analysis." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-development.analyzeCSV", + "description": "Analyzes CSV data provided as a string or file input to extract structural statistics including row and column counts, data type inference per column, missing value counts, and summary statistics for numeric data. Outputs a detailed report object summarizing these analyses, aiding web developers in validating and understanding CSV datasets for web applications.", + "category": "web-development", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "CSV formatted string data to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the CSV data includes a header row for column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used as the delimiter in the CSV data.", + "required": false, + "defaultValue": "," + }, + { + "name": "maxSampleSize", + "type": "number", + "description": "Maximum number of rows to sample for analysis to limit processing time.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "inferDataTypes", + "type": "boolean", + "description": "Whether to infer data types for each column based on sample data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including rowCount, columnCount, columnNames, dataTypes (inferred), missingValues per column, and summaryStatistics for numeric columns (min, max, mean, median, stdDev)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to validate, preview, or understand the structure and data quality of CSV files in web development projects. It helps detect missing data, confirm expected columns, and obtain quick statistics for rendering data-driven interfaces or performing further processing.", + "limitations": "This tool analyzes CSV format only, it does not handle other file types or complex embedded CSV data. Data type inference is approximate and based on sample data, which may not reflect entire dataset nuances.", + "examples": [ + "Analyze a CSV string to get column names and data types before rendering a data table.", + "Check missing values and numeric distributions in CSV user-uploaded data for a web app.", + "Validate CSV structure by verifying row and column counts and summarizing key statistics." + ] + }, + "tags": [ + "csv", + "analysis", + "data-validation", + "web-development", + "data-quality", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"name,age,score\\nAlice,30,85\\nBob,25,90\\nCharlie,,78\",\"hasHeader\":true,\"delimiter\":\",\",\"maxSampleSize\":100,\"inferDataTypes\":true}", + "description": "Analyze a CSV string with three rows and three columns, one with a missing age value." + }, + { + "inputJson": "{\"csvData\":\"id|product|price\\n1|Notebook|10.5\\n2|Pen|1.25\\n3|Eraser|0.75\",\"hasHeader\":true,\"delimiter\":\"|\",\"inferDataTypes\":true}", + "description": "Analyze pipe-delimited CSV data with product price info to infer numeric and string columns." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "web-development.draftEmail", + "description": "Generates a professional draft email based on input parameters including recipient details, subject, context, and tone. It processes the input to compose a structured email message body and returns a complete email draft ready for sending or further editing.", + "category": "web-development", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the email recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient, used for header formation and validation.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email to set the email topic or purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyContext", + "type": "string", + "description": "Background information or key points that need to be conveyed in the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone style of the email, e.g., formal, informal, friendly, persuasive, to match the communication context.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the sender to include in the email closing or signature.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Flag whether to append a signature block with sender name at the end of the email.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email components: subject, recipient, and full draft text." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate well-structured, context-aware email drafts for web applications or automated communication workflows, ensuring personalized and professional messaging based on specified inputs.", + "limitations": "The tool does not send emails or handle attachments, nor can it access external platform data to tailor content beyond provided input.", + "examples": [ + "Draft an email to a client named John Doe about the project update with a formal tone.", + "Generate a friendly invitation email to a colleague for a meeting.", + "Create a persuasive follow-up email to a customer with details of new offers." + ] + }, + "tags": [ + "email", + "draft", + "communication", + "web-development", + "automation", + "customer-support" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"John Doe\",\"recipientEmail\":\"john.doe@example.com\",\"subject\":\"Project Update\",\"bodyContext\":\"We have completed phase one of the project and are on track for delivery next month.\",\"tone\":\"formal\",\"senderName\":\"Alice Smith\",\"includeSignature\":true}", + "description": "Draft a formal project update email to a client including a signature." + }, + { + "inputJson": "{\"recipientName\":\"Julie\",\"recipientEmail\":\"julie@example.com\",\"subject\":\"Team Lunch Invitation\",\"bodyContext\":\"Join us for a team lunch this Friday at noon.\",\"tone\":\"friendly\",\"senderName\":\"Mark\",\"includeSignature\":false}", + "description": "Create an informal lunch invitation email without signature." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "web-development.generateParagraph", + "description": "Generates a coherent paragraph of text suitable for webpages based on a given topic keyword or phrase. It accepts parameters to control paragraph length, style, and tone, and outputs a well-structured paragraph string formatted for easy insertion into HTML or content management systems.", + "category": "web-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or keyword phrase to base the paragraph content on.", + "required": true, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate number of sentences in the generated paragraph.", + "required": false, + "defaultValue": "5" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the paragraph, e.g., formal, casual, friendly, professional.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeHtml", + "type": "boolean", + "description": "Whether to format the paragraph output with HTML paragraph tags.", + "required": false, + "defaultValue": "false" + }, + { + "name": "audience", + "type": "string", + "description": "Intended audience for the paragraph, influencing word choice and complexity, e.g., general, technical, children.", + "required": false, + "defaultValue": "general" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'paragraph' with the generated text, optionally HTML formatted." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate meaningful, readable paragraph content for website sections such as about pages, product descriptions, blog introductions, or informational blocks, based on a specific topic and style preferences. It helps automate content creation for web development and content management tasks.", + "limitations": "This tool cannot guarantee production of 100% original or perfectly accurate factual content. It also cannot replace human editing for SEO optimization or stylistic consistency beyond basic tone adjustments.", + "examples": [ + "Generate a friendly paragraph about sustainable gardening for a general audience, 4 sentences, with HTML tags.", + "Create a formal technical paragraph explaining cloud computing basics, 6 sentences, without HTML.", + "Produce a casual short paragraph on coffee culture for social media, 3 sentences, with HTML tags." + ] + }, + "tags": [ + "content generation", + "web development", + "paragraph", + "text generation", + "html formatting", + "tone control" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"sustainable gardening\",\"length\":4,\"tone\":\"friendly\",\"includeHtml\":true,\"audience\":\"general\"}", + "description": "Generating a friendly 4 sentence paragraph about sustainable gardening with HTML tags for a general audience." + }, + { + "inputJson": "{\"topic\":\"cloud computing basics\",\"length\":6,\"tone\":\"formal\",\"includeHtml\":false,\"audience\":\"technical\"}", + "description": "Generating a formal 6 sentence paragraph explaining cloud computing basics without HTML formatting for a technical audience." + }, + { + "inputJson": "{\"topic\":\"coffee culture\",\"length\":3,\"tone\":\"casual\",\"includeHtml\":true,\"audience\":\"general\"}", + "description": "Generating a casual 3 sentence paragraph about coffee culture with HTML tags for social media content." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-development.generateSummary", + "description": "Generates a concise summary of a website or webpage based on provided HTML content or URL. Processes raw HTML or fetches content from a URL, extracts key textual information, and returns a readable summary highlighting main points and topics.", + "category": "web-development", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to summarize. If provided, the tool fetches and processes the content from this URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content of a webpage to summarize. Used if URL is not provided or to summarize custom HTML fragments.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary in characters. Limits summary size for concise output.", + "required": false, + "defaultValue": "300" + }, + { + "name": "includeHeadings", + "type": "boolean", + "description": "Whether to include webpage headings (like

,

) in the summary to preserve structure.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text, the source processed (URL or direct HTML), and metadata like summary length." + }, + "aiAgent": { + "useCase": "Use this tool when you need a quick, readable summary of webpage content to present to users, generate previews, or assist in content curation. It works for both URL inputs or raw HTML strings where content may come from dynamic or offline sources.", + "limitations": "This tool cannot fully understand multimedia content (images, videos) or deeply interpret JavaScript-rendered dynamic content without pre-rendered HTML. Summaries may lack nuance of detailed web pages and may miss some contextual info.", + "examples": [ + "Summarize the main points of https://example.com/article on climate change.", + "Generate a summary for given HTML content of a product webpage to produce meta descriptions.", + "Create a 150-character summary including headings for a blog post fetched by URL." + ] + }, + "tags": [ + "web", + "summary", + "html", + "content-analysis", + "website-preview", + "content-extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/article\"}", + "description": "Generate a summary from the public article page provided by URL." + }, + { + "inputJson": "{\"htmlContent\":\"

Title

This is the content paragraph.

\",\"includeHeadings\":true}", + "description": "Summarize a given raw HTML snippet including headings." + }, + { + "inputJson": "{\"url\":\"https://example.com/blog/post\",\"maxSummaryLength\":150}", + "description": "Produce a concise 150-character summary for a blog post URL." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "automation-frameworks.downloadDataset", + "description": "Downloads datasets from specified public or private data repositories. Accepts repository URL, dataset identifier, optional authentication, and output format. Processes request by connecting to the repository, authenticating if needed, and downloading the dataset in the desired format, saving it locally or returning a path.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the data repository where the dataset is hosted, e.g., a public data portal or cloud storage endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetId", + "type": "string", + "description": "Unique identifier or path of the dataset within the repository, used to locate the dataset to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the dataset file, e.g., CSV, JSON, Parquet. Converts dataset if supported.", + "required": false, + "defaultValue": "original" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional authentication token or API key if the repository requires secure access.", + "required": false, + "defaultValue": "" + }, + { + "name": "downloadPath", + "type": "string", + "description": "Local file system path where to save the downloaded dataset file. If empty, returns data as a buffer or stream.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing download status, local file path if saved, original dataset metadata, and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when an automation workflow requires retrieving datasets from external repositories for processing or analysis, especially when needing to download and store data locally with optional format conversion and authentication.", + "limitations": "Cannot download datasets from repositories that do not support programmatic access or that require interactive sessions. Format conversion is limited to common dataset formats only.", + "examples": [ + "Download dataset 12345 from public repository at example.com and save as CSV locally.", + "Fetch private dataset with authentication token and get file path output.", + "Download dataset in original format but return data as a stream without saving." + ] + }, + "tags": [ + "automation", + "dataset", + "download", + "data-retrieval", + "workflow", + "data-format", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://data.example.com\",\"datasetId\":\"sales/2023/q1\",\"outputFormat\":\"CSV\",\"authenticationToken\":\"\",\"downloadPath\":\"/tmp/q1_sales.csv\"}", + "description": "Download Q1 sales dataset from public example.com repo, convert to CSV, and save locally." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://private.repo.com\",\"datasetId\":\"projectX/metrics\",\"outputFormat\":\"original\",\"authenticationToken\":\"abc123token\",\"downloadPath\":\"\"}", + "description": "Download private projectX metrics dataset using token, keep original format and return data stream." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "automation-frameworks.buildBranch", + "description": "This tool automates the creation of a new branch in a specified git repository. It accepts repository details, base branch, new branch name, and optional commit SHA as inputs, performs git operations to create and optionally check out the branch, and returns the branch creation status with relevant metadata.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the git repository where the branch will be created", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The existing branch name to base the new branch on", + "required": true, + "defaultValue": "main" + }, + { + "name": "newBranchName", + "type": "string", + "description": "Name of the new branch to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "commitSha", + "type": "string", + "description": "Specific commit SHA to base the new branch on; overrides baseBranch if provided", + "required": false, + "defaultValue": "" + }, + { + "name": "checkout", + "type": "boolean", + "description": "Whether to check out the new branch locally after creation", + "required": false, + "defaultValue": "false" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Authentication token for accessing private repositories if needed", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object describing the result of branch creation including status, branch info and any error messages" + }, + "aiAgent": { + "useCase": "Use this tool when automating software development workflows that require dynamic branch creation in git repositories. For example, an AI agent managing CI/CD pipelines or feature deployments can invoke this to create feature or bugfix branches programmatically without manual git commands.", + "limitations": "This tool does not perform merges, resolve conflicts, or push branches to remote if not configured. It requires correct repository access rights and valid parameters. It assumes git CLI or equivalent APIs are available for execution.", + "examples": [ + "Create a feature branch named 'feature/login-improvements' off 'develop' branch in given repo.", + "Create a hotfix branch from specific commit SHA for emergency patching.", + "Create and check out a new branch 'experiment-xyz' from main branch locally." + ] + }, + "tags": [ + "automation", + "git", + "branch-management", + "devops", + "ci-cd", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"baseBranch\":\"develop\",\"newBranchName\":\"feature/login-improvements\",\"checkout\":false}", + "description": "Create a new branch 'feature/login-improvements' based on 'develop' branch without checking out." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"commitSha\":\"a1b2c3d4e5f6g7h8i9j0\",\"newBranchName\":\"hotfix/urgent-fix\",\"checkout\":true}", + "description": "Create and check out a hotfix branch from a specific commit SHA." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"baseBranch\":\"main\",\"newBranchName\":\"experiment-xyz\",\"checkout\":true}", + "description": "Create and check out a new experimental branch from main branch." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "text-analysis.draftDocument", + "description": "This tool accepts user prompts and optional context to draft well-structured textual documents such as reports, summaries, emails, or proposals. It processes input by applying natural language generation techniques tailored to the specified document type, tone, and length constraints. The output is a coherent and formatted text document draft matching user requirements.", + "category": "text-analysis", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Specifies the type of document to draft (e.g., report, email, summary, proposal).", + "required": true, + "defaultValue": "" + }, + { + "name": "prompt", + "type": "string", + "description": "The main input or subject matter based on which the document will be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the drafted document (e.g., formal, informal, persuasive, neutral).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the document in number of words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "context", + "type": "string", + "description": "Optional additional context or background information to be incorporated in the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document text and metadata including word count and document type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a structured textual document based on a user prompt and desired specifications, such as creating reports, emails, summaries, or proposals automatically. It helps produce coherent, contextually relevant drafts quickly for review and refinement.", + "limitations": "The tool cannot guarantee perfectly accurate or domain-specific expert content and may require human review and editing. It does not perform fact-checking or data extraction from external sources.", + "examples": [ + "Draft a formal email apologizing for a delayed project update.", + "Generate a concise summary report about the last quarter sales performance.", + "Create a persuasive proposal text for a new marketing campaign." + ] + }, + "tags": [ + "text-generation", + "document-creation", + "natural-language-processing", + "content-drafting", + "writing-assistant" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"email\",\"prompt\":\"Inform the client about the project delay due to unforeseen circumstances.\",\"tone\":\"formal\",\"length\":200}", + "description": "Draft a formal email notifying a client about a project delay." + }, + { + "inputJson": "{\"documentType\":\"summary\",\"prompt\":\"Summarize the main points discussed in the recent team meeting.\",\"tone\":\"neutral\",\"length\":150}", + "description": "Create a neutral toned summary of a team meeting." + }, + { + "inputJson": "{\"documentType\":\"proposal\",\"prompt\":\"Write a proposal for a new remote work policy to improve employee flexibility.\",\"tone\":\"persuasive\",\"length\":600}", + "description": "Generate a persuasive proposal document for implementing a remote work policy." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "text-analysis.draftEmail", + "description": "Generates a professional email draft based on the provided subject, recipient details, and purpose. Accepts inputs such as recipient name, email subject, email purpose, tone, and optional key points to include. Outputs a well-structured email draft ready for review or sending.", + "category": "text-analysis", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the email recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient; used to confirm email relevance but not included in the draft text.", + "required": false, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email to set context for the content.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailPurpose", + "type": "string", + "description": "Primary purpose of the email, e.g., request, follow-up, invitation, or information sharing.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email, such as formal, casual, friendly, or persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Array of concise key discussion points or items to include in the email body.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the complete email draft including salutation, body paragraphs, and closing remarks structured as a single string with markup for clarity." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a professional and contextually appropriate email draft from minimal input about the recipient and the email's purpose. It assists in automating routine communication drafts, ensuring tone and content align with user goals.", + "limitations": "This tool does not send emails or manage email delivery. It cannot access external data about recipients beyond provided inputs, and may not perfectly capture very complex or highly specialized email content without detailed instructions.", + "examples": [ + "Draft a follow-up email to a client named Sarah Williams after a project meeting with a friendly tone.", + "Generate a formal invitation email for a company event addressed to multiple recipients, including key points about date, location, and RSVP instructions.", + "Create a persuasive email to request budget approval from the finance department head." + ] + }, + "tags": [ + "text-analysis", + "email", + "drafting", + "communication", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"John Doe\",\"recipientEmail\":\"john.doe@example.com\",\"subject\":\"Project Update Meeting\",\"emailPurpose\":\"to provide status updates and schedule next steps\",\"tone\":\"formal\",\"keyPoints\":[\"Current progress: 75% complete\",\"Issues faced: delayed deliveries\",\"Next steps: finalize design, start testing\"]}", + "description": "Draft a formal project update email to John Doe summarizing progress, issues, and next steps." + }, + { + "inputJson": "{\"recipientName\":\"Emily\",\"subject\":\"Invitation to Tech Conference 2024\",\"emailPurpose\":\"inviting to attend our annual tech conference\",\"tone\":\"friendly\",\"keyPoints\":[\"Date: March 15-17, 2024\",\"Location: Downtown Convention Center\",\"RSVP by Feb 28\"]}", + "description": "Create a friendly invitation email to Emily about an upcoming tech conference with key details." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "text-analysis.formatFunction", + "description": "This tool accepts raw source code of a single function in languages like JavaScript, Python, or Java. It parses and reformats the code to apply consistent indentation, spacing, and line breaks to improve readability and adherence to common style guidelines. It outputs the formatted function source code as a string.", + "category": "text-analysis", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw source code of the function to be formatted. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code (e.g., 'javascript', 'python', 'java'). Helps select appropriate formatting rules. Defaults to 'javascript'.", + "required": false, + "defaultValue": "\"javascript\"" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation. Defaults to 4.", + "required": false, + "defaultValue": "4" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to indent with tabs instead of spaces. Defaults to false (use spaces).", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length before wrapping code lines. Defaults to 80.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code as a string under 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or poorly formatted source code of a function that needs to be cleaned up for readability, style consistency, or adherence to formatting conventions. Ideal for preparing code snippets for documentation, code reviews, or user display.", + "limitations": "It formats a single function's source code only, not entire files or multiple functions at once. Complex formatting or style customizations beyond indentation, spacing, and line breaks are not supported. It may not handle syntactically invalid code well.", + "examples": [ + "Format a messy JavaScript function to have consistent indentation and spacing.", + "Reformat a raw Python function snippet to improve readability before including in documentation.", + "Apply standard Java code indentation rules to a single method's source code." + ] + }, + "tags": [ + "formatting", + "code", + "function", + "source-code", + "style", + "text-analysis", + "programming" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function add(a,b){return a+b;}\",\"language\":\"javascript\",\"indentSize\":2,\"useTabs\":false,\"maxLineLength\":80}", + "description": "Format a simple JavaScript function with 2-space indentation." + }, + { + "inputJson": "{\"code\":\"def sum(a,b):\\n return a+b\",\"language\":\"python\",\"indentSize\":4,\"useTabs\":false,\"maxLineLength\":80}", + "description": "Format a Python function maintaining default 4-space indentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "text-analysis.generateSummary", + "description": "Generates a concise and coherent summary from input text documents. Accepts raw text or an array of text strings, processes the content to extract key points and themes using natural language understanding techniques, and produces a short textual summary highlighting the main ideas.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The primary text content to summarize, or a JSON stringified array of multiple text blocks.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum desired length of the summary in number of characters; if omitted, defaults to 300 characters.", + "required": false, + "defaultValue": "300" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the input text (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeySentences", + "type": "boolean", + "description": "Whether the summary should include key representative sentences extracted verbatim from the input text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summaryType", + "type": "string", + "description": "Type of summary to generate: 'extractive' (select sentences from text) or 'abstractive' (rephrase content).", + "required": false, + "defaultValue": "abstractive" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and metadata such as the original input length and summary length." + }, + "aiAgent": { + "useCase": "Use this tool when a concise overview of large documents or multiple texts is needed to quickly grasp essential information without reading full content. Useful for summarizing articles, reports, or emails to save time and improve understanding.", + "limitations": "Does not guarantee perfect accuracy or context preservation for highly technical or ambiguous texts. Quality depends on input clarity and length constraints.", + "examples": [ + "Summarize this 2000-word research article into a brief paragraph.", + "Generate a summary highlighting main points from these meeting notes.", + "Provide a short abstract of this report including key sentences." + ] + }, + "tags": [ + "text analysis", + "summarization", + "NLP", + "document processing", + "abstractive summary", + "extractive summary" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Recent studies in climate science indicate a sharp rise in global temperatures over the past decade, with significant impacts on polar ice melt and weather patterns.\",\"maxLength\":150}", + "description": "Summarize a single short paragraph about climate science." + }, + { + "inputJson": "{\"inputText\":\"[\\\"The quarterly financial report shows an increase in revenue by 15% compared to last year.\", \"Expenses grew moderately but remain within budget limits.\"]\",\"summaryType\":\"extractive\",\"includeKeySentences\":true}", + "description": "Generate an extractive summary with key sentences from multiple financial report items." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "text-analysis.createParagraph", + "description": "Generates a coherent, contextually relevant paragraph based on a given topic or seed text, tone, and desired length. Accepts text prompts and style preferences, then produces a natural language paragraph suitable for articles, reports, or creative writing.", + "category": "text-analysis", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme the paragraph should cover.", + "required": true, + "defaultValue": "" + }, + { + "name": "seedText", + "type": "string", + "description": "Optional starter text to guide the paragraph content and style.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Defines the writing tone such as formal, casual, persuasive, or informative.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate target length of the paragraph in number of sentences or lines.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include illustrative examples or anecdotes in the paragraph.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text in a natural, coherent format suitable for direct use or further editing." + }, + "aiAgent": { + "useCase": "Use this tool when generating original, focused paragraphs for reports, essays, articles, or creative content based on a topic or initial prompt. It helps in expanding ideas into readable, fluent paragraphs matching desired tone and length.", + "limitations": "Cannot guarantee factual accuracy or up-to-date information; quality depends on input quality. Not for generating multi-paragraph documents or complex structured compositions.", + "examples": [ + "Write a persuasive paragraph about electric vehicles.", + "Create a formal paragraph discussing climate change impacts.", + "Generate an informative paragraph about the benefits of meditation with examples." + ] + }, + "tags": [ + "text generation", + "paragraph creation", + "natural language processing", + "content generation", + "writing assistant" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"renewable energy\",\"tone\":\"informative\",\"length\":4}", + "description": "Generate a concise informative paragraph about renewable energy." + }, + { + "inputJson": "{\"topic\":\"importance of cybersecurity\",\"seedText\":\"In today’s digital age,\",\"tone\":\"formal\",\"length\":5}", + "description": "Create a formal paragraph starting with given seed text about cybersecurity." + }, + { + "inputJson": "{\"topic\":\"healthy eating habits\",\"tone\":\"casual\",\"includeExamples\":true}", + "description": "Produce a casual tone paragraph about healthy eating including examples." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "text-analysis.createEvent", + "description": "Creates a structured event object from a block of text by analyzing and extracting relevant entities such as date, time, location, participants, and summary. Accepts raw event description as input, performs natural language processing and entity recognition, and outputs a JSON event object suitable for calendar or analytics integration.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "Raw text describing the event, including details like date, time, location, and participants.", + "required": true, + "defaultValue": "" + }, + { + "name": "timezone", + "type": "string", + "description": "The timezone to interpret dates and times in the text, e.g., 'America/New_York'.", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "includeParticipants", + "type": "boolean", + "description": "Whether to attempt to extract participant names from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text to improve entity extraction, e.g., 'en'.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the parsed event with fields like startDateTime, endDateTime, location, participants, and description summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to transform an unstructured textual event description into a standardized event data object for calendar creation, scheduling, or event analytics. It helps in extracting key details like time, place, and attendees automatically from natural language inputs.", + "limitations": "This tool may not perfectly parse highly ambiguous or incomplete event descriptions, and is less effective with informal or very short texts lacking clear event details. Timezone disambiguation relies on provided or default timezone and may need manual adjustment.", + "examples": [ + "Create an event object from the email text describing a meeting next Monday at 3 PM in New York with John and Lisa.", + "Extract event details from a chat message informing about a team lunch on Friday noon.", + "Parse a conference announcement text to create a calendar event with location and dates." + ] + }, + "tags": [ + "text-analysis", + "event-extraction", + "nlp", + "calendar-integration", + "entity-recognition" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Team meeting scheduled for March 15, 2024, at 2:00 PM in Conference Room A with Alice, Bob, and Charlie.\",\"timezone\":\"America/New_York\"}", + "description": "Extracts structured event from formal meeting description including date, time, location, and participants." + }, + { + "inputJson": "{\"text\":\"Lunch with Sarah next Friday at noon downtown.\",\"timezone\":\"America/Los_Angeles\"}", + "description": "Parses informal event description mentioning date, time, and location for event scheduling." + }, + { + "inputJson": "{\"text\":\"Annual conference will be held on July 10-12, 2024, at the Grand Hotel.\",\"language\":\"en\"}", + "description": "Creates event object from multi-day event announcement with location and dates." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "text-analysis.createInvoice", + "description": "Generates a detailed invoice document based on provided client information, list of purchased items or services, pricing, and payment terms. Accepts structured input including customer details and line items, processes them to calculate totals and taxes, and outputs a formatted invoice as JSON or plain text suitable for billing and record keeping.", + "category": "text-analysis", + "parameters": [ + { + "name": "clientInfo", + "type": "object", + "description": "An object with client details such as name, address, contact info, and tax ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "An array of line items each including description, quantity, unit price, and optional tax rate.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier for the invoice for reference and tracking.", + "required": false, + "defaultValue": "" + }, + { + "name": "issueDate", + "type": "string", + "description": "Date when the invoice is issued, in ISO 8601 format (e.g., 2023-01-30).", + "required": false, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date in ISO 8601 format, indicating when payment is expected.", + "required": false, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Terms and conditions related to payment (e.g., 'Net 30 days').", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for all monetary values (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeTaxes", + "type": "boolean", + "description": "Flag whether to calculate and include taxes based on item tax rates.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output invoice document: 'json' for structured data or 'text' for human readable string.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Returns the generated invoice either as a JSON object with full details and calculations or as a formatted plain text string depending on requested output format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a complete invoice document from structured order or service data, including client details and pricing. It is ideal for automating billing processes, generating records, or preparing invoices for emailing or printing.", + "limitations": "This tool does not perform payment processing or validation of client financial information. It also does not generate PDF or graphical invoice templates; output is limited to JSON data or plain text formats.", + "examples": [ + "Create an invoice for a client who purchased three items with different tax rates.", + "Generate an invoice in plain text for a service provider including payment terms and due date.", + "Produce a JSON invoice including itemized taxes and a unique invoice number." + ] + }, + "tags": [ + "text-analysis", + "document-generation", + "invoice", + "billing", + "finance", + "automation" + ], + "examples": [ + { + "inputJson": "{\"clientInfo\":{\"name\":\"Acme Corp\",\"address\":\"123 Elm St, Springfield, IL\",\"contact\":\"billing@acme.com\",\"taxId\":\"98-7654321\"},\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":9.99,\"taxRate\":0.07},{\"description\":\"Widget B\",\"quantity\":5,\"unitPrice\":19.99,\"taxRate\":0.07}],\"invoiceNumber\":\"INV-1001\",\"issueDate\":\"2024-04-15\",\"dueDate\":\"2024-05-15\",\"paymentTerms\":\"Net 30\",\"currency\":\"USD\",\"includeTaxes\":true,\"outputFormat\":\"json\"}", + "description": "Generate a JSON formatted invoice for a client with two products, including tax calculation." + }, + { + "inputJson": "{\"clientInfo\":{\"name\":\"Jane Doe Consulting\",\"address\":\"456 Oak Ave, Metropolis, NY\",\"contact\":\"jane@consulting.com\"},\"items\":[{\"description\":\"Consulting Service\",\"quantity\":15,\"unitPrice\":75}],\"invoiceNumber\":\"CONS-2024-07\",\"issueDate\":\"2024-06-01\",\"dueDate\":\"2024-06-30\",\"paymentTerms\":\"Due on receipt\",\"currency\":\"USD\",\"includeTaxes\":false,\"outputFormat\":\"text\"}", + "description": "Create a plain text invoice for consulting services, excluding taxes, with payment due on receipt." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "text-analysis.createSummary", + "description": "This tool accepts a text document or multiple paragraphs as input and generates a concise summary capturing the main ideas and key points. It processes natural language text using advanced NLP techniques to produce a shorter, coherent summary that retains essential information, suitable for quick understanding or review.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The full text content to summarize, can be a paragraph or multiple paragraphs.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words for the summary output. If not specified, defaults to 100 words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "minLength", + "type": "number", + "description": "Minimum number of words for the summary output. Controls summary length floor.", + "required": false, + "defaultValue": "30" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text to handle language-specific processing. Defaults to English ('en').", + "required": false, + "defaultValue": "en" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "Optional list of keywords to emphasize in the summary, guiding the tool to highlight related content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "If true, include brief highlights or bullet points summarizing key facts along with the main summary text.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and optional highlights." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to distill large bodies of text or documents into concise summaries that preserve core meaning and key details. Ideal for speeding comprehension of articles, reports, emails, or long messages. It helps users quickly grasp content without reading the full text.", + "limitations": "The summary may omit nuanced details and context. It is not suitable for creating exhaustive abstracts or technical summaries requiring domain expertise. Quality depends on input text clarity and language support.", + "examples": [ + "Summarize a research paper abstract to a 50-word brief.", + "Generate a summary of a user-submitted news article highlighting main events.", + "Create bullet point highlights focusing on specific keywords in a business report." + ] + }, + "tags": [ + "summary", + "text-processing", + "natural-language", + "document", + "nlp", + "concise", + "review" + ], + "examples": [ + { + "inputJson": "{\"text\":\"The city council met to discuss new policies on transportation infrastructure improvements aimed at reducing traffic congestion and promoting sustainable transit options. The meeting highlighted several key projects, including bike lane expansions and electric bus deployments.\",\"maxLength\":50,\"includeHighlights\":true}", + "description": "Summarize a city council report discussing transportation projects, including bullet highlights." + }, + { + "inputJson": "{\"text\":\"Artificial intelligence is transforming many industries by automating routine tasks and enabling new forms of data analysis. Businesses leveraging AI can improve efficiency and innovate rapidly.\",\"maxLength\":40}", + "description": "Generate a brief summary of AI impact in business contexts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "api-integration.analyzeSentence", + "description": "Analyzes a sentence by detecting its language, sentiment (positive, neutral, negative), and extracting key entities such as people, places, and organizations. Accepts a text sentence as input and returns a structured summary with language code, sentiment score, and a list of recognized entities with types and positions.", + "category": "api-integration", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The input sentence text to analyze for language, sentiment, and entities.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to extract named entities from the sentence. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze the sentence sentiment. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "languageHint", + "type": "string", + "description": "Optional ISO language code hint to assist language detection (e.g., 'en', 'fr').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected language (ISO code), sentiment (label and score), and an array of extracted entities (type, text, start and end indices)." + }, + "aiAgent": { + "useCase": "Use this tool when you need comprehensive analysis of individual sentences for content understanding, such as social media monitoring, customer feedback analysis, or conversational AI applications. It helps extract key meaning components, detect sentiment polarity, and identify important named entities to inform downstream decision-making or summarization.", + "limitations": "Cannot perform deep semantic parsing or context-aware disambiguation beyond the single sentence. Accuracy depends on the quality of underlying language and NLP models; ambiguous sentences may yield imperfect sentiment or entity detection.", + "examples": [ + "Analyze this customer review sentence for sentiment and entities: 'John from Seattle loved the new product!'.", + "Detect language and sentiment of a French sentence.", + "Extract entities only from the sentence: 'Amazon is expanding its headquarters in New York.'" + ] + }, + "tags": [ + "api-integration", + "text-analysis", + "nlp", + "sentiment-analysis", + "entity-recognition", + "language-detection" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"Barack Obama was born in Hawaii.\"}", + "description": "Analyze a sentence mentioning a famous person and place to extract entities and detect language and sentiment." + }, + { + "inputJson": "{\"sentence\":\"C'est une belle journée.\", \"languageHint\":\"fr\"}", + "description": "Analyze a French sentence with a language hint to detect language and sentiment." + }, + { + "inputJson": "{\"sentence\":\"The meeting was unproductive.\", \"includeEntities\":false}", + "description": "Analyze sentiment only without extracting entities from a negative sentiment sentence." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "api-integration.buildCommit", + "description": "Builds a commit object for a version control system API by accepting commit metadata such as author details, commit message, parent commit SHA, and tree SHA. Processes these inputs to construct a structured commit payload ready for submission to code hosting APIs like GitHub or GitLab, outputting a commit object with a generated SHA identifier.", + "category": "api-integration", + "parameters": [ + { + "name": "repository", + "type": "string", + "description": "The repository identifier, typically in 'owner/repo' format, where the commit will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "treeSha", + "type": "string", + "description": "The SHA hash of the tree object this commit points to, representing the state of the file hierarchy.", + "required": true, + "defaultValue": "" + }, + { + "name": "parentShas", + "type": "array", + "description": "An array of parent commit SHA strings for this commit, supporting merges when multiple parents are provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authorName", + "type": "string", + "description": "The name of the commit author.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "The email address of the commit author.", + "required": true, + "defaultValue": "" + }, + { + "name": "committerName", + "type": "string", + "description": "The name of the committer, if different from the author. If not provided, defaults to authorName.", + "required": false, + "defaultValue": "" + }, + { + "name": "committerEmail", + "type": "string", + "description": "The email of the committer, if different from the author. Defaults to authorEmail if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "The commit message describing the changes introduced by this commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitTimestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of the commit. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created commit, including its SHA, commit message, author and committer info, parent SHAs, tree SHA, and commit timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create or prepare a commit object for a git repository via API integration, including setting metadata such as author, committer, message, and tree reference before pushing. Ideal for automating commit workflows or building custom version control operations.", + "limitations": "This tool only builds the commit object and does not push or apply the commit to the repository. It depends on correct input SHAs and repository IDs; authentication and actual commit creation via remote API calls must be handled separately.", + "examples": [ + "Create a commit object for a repo with a new commit message and author info.", + "Build a commit with multiple parent commits to represent a merge commit.", + "Generate a commit structure with specific committer details differing from the author." + ] + }, + "tags": [ + "api-integration", + "git", + "commit", + "version-control", + "code-management", + "automation", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"repository\":\"octocat/Hello-World\",\"treeSha\":\"f49cfc1e6b7c2e6defa9f3cbb2222d15a4d1e5b5\",\"parentShas\":[\"7d1b31e74ee336d15cbd21741bc88a537ed063a0\"],\"authorName\":\"Alice Johnson\",\"authorEmail\":\"alice@example.com\",\"commitMessage\":\"Fix typo in README.md\"}", + "description": "Create a basic commit object pointing to a tree SHA with one parent commit and author info." + }, + { + "inputJson": "{\"repository\":\"octocat/Hello-World\",\"treeSha\":\"a12bc34de56f7890a12b3c4d5e6f7890abcdef12\",\"parentShas\":[\"c1d2e3f4a5b6c7d8e9f0a1b2c3d4e5f67890abcd\",\"1234567890abcdef1234567890abcdef12345678\"],\"authorName\":\"Bob Smith\",\"authorEmail\":\"bob.smith@example.com\",\"committerName\":\"CI Bot\",\"committerEmail\":\"ci@example.com\",\"commitMessage\":\"Merge branch 'feature-xyz' into 'main'\",\"commitTimestamp\":\"2024-06-01T12:00:00Z\"}", + "description": "Build a merge commit with two parents, with different committer info and explicit commit timestamp." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "api-integration.formatFunction", + "description": "Formats a given raw JavaScript or TypeScript function code string into a standardized, readable style according to specified formatting options. Accepts a code string and optional style rules, processes indentation, spacing, and line breaks, and returns the formatted function code as a string.", + "category": "api-integration", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw function code to format as a string, including function signature and body.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code; supports 'js' for JavaScript or 'ts' for TypeScript for proper parsing.", + "required": false, + "defaultValue": "js" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use per indentation level in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs for indentation instead of spaces.", + "required": false, + "defaultValue": "false" + }, + { + "name": "braceStyle", + "type": "string", + "description": "Style of braces placement; options are '1tbs' (one true brace style), 'allman', or 'stroustrup'.", + "required": false, + "defaultValue": "1tbs" + }, + { + "name": "semiColons", + "type": "boolean", + "description": "Whether to add semicolons at the end of statements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length before attempting to wrap lines for readability.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code string under the 'formattedCode' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate, clean up, or standardize JavaScript or TypeScript function code snippets before further processing, review, or integration. It ensures consistent coding style for better readability and reduces syntax formatting errors.", + "limitations": "This tool formats only strings containing single function definitions. It does not validate logic correctness, handle multiple functions in one string, or format entire files or unrelated code snippets.", + "examples": [ + "Format raw JS function code with default options.", + "Format a TypeScript function using tabs and Allman braces style.", + "Format JavaScript code with a max line length of 100 and no semicolons." + ] + }, + "tags": [ + "api-integration", + "formatting", + "code", + "javascript", + "typescript", + "function", + "style" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function greet(name){console.log('Hello, '+name);} \\n\",\"language\":\"js\"}", + "description": "Format a basic JavaScript function with default options." + }, + { + "inputJson": "{\"code\":\"function add(a: number, b: number): number{return a+b;}\",\"language\":\"ts\",\"indentSize\":4,\"useTabs\":true,\"braceStyle\":\"allman\"}", + "description": "Format a TypeScript function using tabs for indentation and Allman brace style." + }, + { + "inputJson": "{\"code\":\"const multiply=(x,y)=>{return x*y}\",\"semiColons\":false,\"maxLineLength\":100}", + "description": "Format a JavaScript arrow function without semicolons and with a longer allowed line length." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "api-integration.createEvent", + "description": "Creates a new analytics event by sending structured event data to a specified API endpoint. Accepts event name, properties, user identifiers, and timestamps, processes these to build a valid API request, and returns the API response confirming event creation or providing error details.", + "category": "api-integration", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The name of the event to create, e.g., 'page_view' or 'purchase'.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventProperties", + "type": "object", + "description": "A key-value map of properties describing the event context, such as product ID or page URL.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user associated with the event.", + "required": false, + "defaultValue": "" + }, + { + "name": "anonymousId", + "type": "string", + "description": "Anonymous identifier when userId is not available.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp of when the event occurred. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "URL of the analytics API endpoint to receive the event.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiKey", + "type": "string", + "description": "Secret or public API key/token used for authenticating to the API.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "API response object indicating success status, event ID if created, or error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically record user interaction events into analytics platforms by integrating with their HTTP APIs. Enables real-time event tracking, user behavior analysis, and funnel monitoring within automated workflows.", + "limitations": "This tool assumes the target API accepts JSON formatted event data and uses a key/token for authentication. It does not handle batch event uploads or retries on network failure. It cannot validate event schema beyond basic types.", + "examples": [ + "Create a 'signup' event with userId and user traits.", + "Send a 'purchase' event including product details, timestamp, and anonymousId.", + "Submit 'page_view' event with URL and referrer properties to a custom analytics API." + ] + }, + "tags": [ + "api", + "analytics", + "event", + "tracking", + "integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"signup\",\"eventProperties\":{\"plan\":\"premium\",\"referrer\":\"ad_campaign\"},\"userId\":\"user_1234\",\"apiEndpoint\":\"https://analytics.example.com/events\",\"apiKey\":\"abcd1234\"}", + "description": "Create a signup event for user user_1234 with plan and referrer details." + }, + { + "inputJson": "{\"eventName\":\"purchase\",\"eventProperties\":{\"productId\":\"sku_456\",\"price\":19.99},\"anonymousId\":\"anon_xyz\",\"timestamp\":\"2024-05-01T14:30:00Z\",\"apiEndpoint\":\"https://analytics.example.com/events\",\"apiKey\":\"abcd1234\"}", + "description": "Send purchase event with product details and anonymous user ID at a specific time." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "api-integration.createNotification", + "description": "Creates and sends a customizable notification through specified communication channels (e.g., email, SMS, push). Accepts inputs like recipient details, message content, notification type, and delivery options. Processes content formatting and routing, then outputs a confirmation with status and message ID.", + "category": "api-integration", + "parameters": [ + { + "name": "recipient", + "type": "object", + "description": "Recipient details including contact info such as email address or phone number.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The notification message content to be sent to the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to send (e.g., email, sms, push).", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for notifications that support it (e.g., email).", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification (e.g., normal, high).", + "required": false, + "defaultValue": "normal" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 datetime to schedule notification delivery in future.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata or custom tags to associate with the notification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing notificationId, status (e.g., sent, scheduled, failed), and optional error message if sending failed." + }, + "aiAgent": { + "useCase": "Use when needing to send automated or user-triggered notifications through various channels, such as alerts, reminders, or confirmations. Helps automate communication workflows by specifying message details and delivery preferences.", + "limitations": "Cannot guarantee message delivery due to external channel constraints; does not handle complex multi-channel orchestration beyond single notification requests.", + "examples": [ + "Send a reminder email to a user about an upcoming appointment.", + "Notify a customer via SMS about a shipment delivery status.", + "Create a scheduled push notification for a mobile app update alert." + ] + }, + "tags": [ + "notification", + "messaging", + "api-integration", + "communication", + "alert", + "reminder", + "scheduler" + ], + "examples": [ + { + "inputJson": "{\"recipient\":{\"email\":\"user@example.com\"},\"message\":\"Your appointment is tomorrow at 10 AM.\",\"notificationType\":\"email\",\"subject\":\"Appointment Reminder\",\"priority\":\"high\"}", + "description": "Send a high priority email reminder about appointment." + }, + { + "inputJson": "{\"recipient\":{\"phoneNumber\":\"+1234567890\"},\"message\":\"Your package has been shipped.\",\"notificationType\":\"sms\"}", + "description": "Send an SMS notification about package shipment." + }, + { + "inputJson": "{\"recipient\":{\"deviceToken\":\"abc123token\"},\"message\":\"Update available! Please restart the app.\",\"notificationType\":\"push\",\"scheduleTime\":\"2024-07-01T09:00:00Z\"}", + "description": "Schedule a push notification for a mobile app update alert." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "api-integration.createCSV", + "description": "Generates a CSV string from structured data input. Accepts an array of objects representing rows with key-value pairs as columns. Converts the data into properly escaped CSV format, optionally including headers. Returns the CSV content as a string for saving or transmitting.", + "category": "api-integration", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects where each object represents a row with key-value pairs for columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include a header row with column names derived from the keys of the first data object.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate columns in the CSV output, typically a comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character used to quote fields containing special characters, usually a double quote.", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineEnding", + "type": "string", + "description": "String used to separate lines, usually '\\n' or '\\r\\n'.", + "required": false, + "defaultValue": "\\n" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV string as the 'csv' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert JSON or array of object data into CSV format for easy export, data exchange, or integration with systems that consume CSV. Useful in API orchestration where structured data is transformed into CSV format before transmission or storage.", + "limitations": "Does not support nested objects or arrays within fields; all values should be primitives or convertible to strings. Does not handle streaming large datasets efficiently; best for moderate-sized arrays.", + "examples": [ + "Convert an array of user data objects to CSV for download.", + "Generate CSV report data with custom delimiter and without headers." + ] + }, + "tags": [ + "api-integration", + "csv", + "data-conversion", + "export", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"includeHeaders\":true}", + "description": "Convert user info array to CSV with headers." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Book\",\"price\":12.5},{\"product\":\"Pen\",\"price\":1.2}],\"includeHeaders\":false,\"delimiter\":\";\"}", + "description": "Create CSV from product data without headers and with semicolon delimiter." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "api-integration.createEndpoint", + "description": "Creates a new API endpoint configuration by accepting parameters such as HTTP method, URL path, authentication settings, request and response schemas. The tool processes these inputs and generates a structured endpoint definition object suitable for integration or deployment in API gateways or backend services.", + "category": "api-integration", + "parameters": [ + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for the endpoint, e.g., GET, POST, PUT, DELETE.", + "required": true, + "defaultValue": "" + }, + { + "name": "path", + "type": "string", + "description": "URL path for the endpoint, starting with '/'.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationType", + "type": "string", + "description": "Type of authentication required, e.g., 'none', 'apiKey', 'oauth2'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "requestSchema", + "type": "object", + "description": "JSON schema defining the expected request body structure. Required only if the method supports a body (POST, PUT, PATCH).", + "required": false, + "defaultValue": "" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON schema describing the structure of the response returned by the endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for endpoint requests before responding with an error.", + "required": false, + "defaultValue": "30" + }, + { + "name": "enableCORS", + "type": "boolean", + "description": "Flag indicating whether Cross-Origin Resource Sharing is enabled for the endpoint.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured object representing the configured API endpoint, including method, path, auth settings, and schemas, ready for use in API gateway or backend integration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically define or register new API endpoints in a standardized format. It helps in scenarios where an AI agent orchestrates or automates API creation by generating endpoint definitions with appropriate methods, paths, authentication, and data schemas.", + "limitations": "This tool does not deploy the endpoint or implement backend logic. It only creates the configuration object defining the endpoint properties.", + "examples": [ + "Create a POST endpoint for user registration with OAuth2 authentication and JSON request/response schemas.", + "Define a simple public GET endpoint at '/status' without authentication that returns a health check JSON.", + "Create a PUT endpoint with API key required and a request schema for updating user profiles." + ] + }, + "tags": [ + "api", + "endpoint", + "automation", + "integration", + "configuration", + "http", + "schema" + ], + "examples": [ + { + "inputJson": "{\"httpMethod\":\"POST\",\"path\":\"/users/register\",\"authenticationType\":\"oauth2\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"email\":{\"type\":\"string\"},\"password\":{\"type\":\"string\"}},\"required\":[\"email\",\"password\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"userId\":{\"type\":\"string\"},\"createdAt\":{\"type\":\"string\"}}},\"timeoutSeconds\":60,\"enableCORS\":true}", + "description": "Creating a POST user registration endpoint with OAuth2 auth, request and response JSON schemas, 60s timeout, and CORS enabled." + }, + { + "inputJson": "{\"httpMethod\":\"GET\",\"path\":\"/status\",\"authenticationType\":\"none\",\"responseSchema\":{\"type\":\"object\",\"properties\":{\"status\":{\"type\":\"string\"}}},\"enableCORS\":false}", + "description": "Defining a public GET status endpoint with no authentication and a simple response schema." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "api-integration.createSummary", + "description": "This tool accepts raw textual content from various document sources via API integration, processes it using natural language processing techniques to extract key points, and generates a coherent and concise summary. It outputs a summary text that captures the main ideas, enabling easier information consumption and review.", + "category": "api-integration", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text content of the document to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the summary in number of characters or words (depending on implementation).", + "required": false, + "defaultValue": "300" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input document to optimize processing and ensure summary relevance.", + "required": false, + "defaultValue": "en" + }, + { + "name": "summaryType", + "type": "string", + "description": "Type of summary desired, such as 'extractive' or 'abstractive'.", + "required": false, + "defaultValue": "abstractive" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "Whether to include highlighted key sentences from the original document in the output summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and optional highlights." + }, + "aiAgent": { + "useCase": "Use this tool when an application or user needs a concise summary of lengthy text data from integrated API sources such as articles, reports, or documents. It helps reduce information overload by extracting essential points and presenting a brief, readable synopsis. Ideal for knowledge management, reporting, or content previews.", + "limitations": "Cannot guarantee perfect accuracy or completeness of summaries, especially on highly technical or ambiguous texts. It may miss subtle nuances or omit significant details not well represented in the text. Not suitable for legal or medical documents requiring expert validation.", + "examples": [ + "Summarize a long news article fetched via an API for quick reading.", + "Generate a brief summary of customer feedback responses collected from multiple platforms.", + "Create an executive summary of a lengthy project report retrieved from cloud storage." + ] + }, + "tags": [ + "api", + "summary", + "text-processing", + "nlp", + "document", + "integration", + "abstractive", + "extractive" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Artificial intelligence (AI) is a branch of computer science focused on building smart machines capable of performing tasks that typically require human intelligence. AI applications include expert systems, natural language processing, speech recognition, computer vision, and robotics.\",\"maxSummaryLength\":150,\"language\":\"en\",\"summaryType\":\"abstractive\",\"includeHighlights\":false}", + "description": "Summarize a short informational text about artificial intelligence to generate a concise overview." + }, + { + "inputJson": "{\"documentText\":\"[Long customer feedback data text from multiple API sources concatenated]\",\"maxSummaryLength\":200,\"language\":\"en\",\"summaryType\":\"extractive\",\"includeHighlights\":true}", + "description": "Generate an extractive summary with highlights of key sentences for a large set of customer feedback." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "api-integration.createInvoice", + "description": "Creates a new invoice by accepting invoice details such as customer information, line items, billing terms, and tax details. Processes the input to generate a structured invoice record and returns the invoice ID along with a summary of the created invoice.", + "category": "api-integration", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier of the customer to bill.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineItems", + "type": "array", + "description": "List of items or services to invoice, each with description, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date when the invoice is issued, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for invoice amounts, e.g., USD or EUR.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "taxPercent", + "type": "number", + "description": "Applicable tax percentage to apply on the subtotal.", + "required": false, + "defaultValue": "0" + }, + { + "name": "notes", + "type": "string", + "description": "Optional additional notes to include on the invoice.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the invoiceId, a summary including total amount, and confirmation status of creation." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to generate a new invoice record in an integrated accounting or invoicing system by providing necessary billing details and line items. It helps automate invoice creation workflows and integrates billing data.", + "limitations": "This tool does not handle payment processing, customer creation, or invoice modification after creation. It assumes valid and complete input data is provided.", + "examples": [ + "Create an invoice for customer 12345 with 3 line items and 10% tax.", + "Generate an invoice dated today with payment due in 30 days for services rendered.", + "Create a USD invoice with specific notes included for the client." + ] + }, + "tags": [ + "api", + "invoice", + "billing", + "finance", + "integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"cust-001\",\"lineItems\":[{\"description\":\"Consulting services\",\"quantity\":10,\"unitPrice\":150},{\"description\":\"Software license\",\"quantity\":1,\"unitPrice\":1200}],\"invoiceDate\":\"2024-06-15\",\"dueDate\":\"2024-07-15\",\"currency\":\"USD\",\"taxPercent\":10,\"notes\":\"Thank you for your business.\"}", + "description": "Create a detailed invoice for a consulting engagement with applicable tax and notes." + }, + { + "inputJson": "{\"customerId\":\"cust-999\",\"lineItems\":[{\"description\":\"Annual maintenance plan\",\"quantity\":1,\"unitPrice\":500}],\"currency\":\"EUR\",\"taxPercent\":20}", + "description": "Create a single-item EUR invoice applying 20% VAT tax without specific dates." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "agent-management.formatContract", + "description": "Formats legal contract documents by applying specified style guidelines such as font, spacing, and section numbering to an input contract text, producing a clean, standardized formatted contract document in either plain text or PDF format.", + "category": "agent-management", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "The raw contract text content to be formatted, including clauses and sections.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "object", + "description": "Object specifying style settings such as fontFamily, fontSize, lineSpacing, and sectionNumbering style.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted contract, e.g., 'text' or 'pdf'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents based on contract sections.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the contract for locale-specific formatting (e.g., 'en', 'fr').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract content as a string, along with metadata such as format and page count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce standardized, professionally formatted legal contract documents from raw text inputs, ensuring consistent styling and structure for review or presentation.", + "limitations": "Cannot interpret or validate legal content meaning; focuses solely on formatting. Complex formatting beyond basic style guides may not be supported.", + "examples": [ + "Format this contract text into a PDF with Arial font, 12pt, and numbered sections.", + "Generate a clean formatted version of the given contract text with a table of contents included.", + "Convert this raw contract text to a plain text file applying double line spacing and Times New Roman font." + ] + }, + "tags": [ + "legal", + "document", + "formatting", + "contract", + "style", + "pdf", + "text" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"Section 1: Agreement\\nThis Agreement is made between...\",\"styleGuide\":{\"fontFamily\":\"Arial\",\"fontSize\":12,\"lineSpacing\":1.5,\"sectionNumbering\":\"numeric\"},\"outputFormat\":\"pdf\",\"includeTableOfContents\":true,\"language\":\"en\"}", + "description": "Format a contract text with Arial font, 12pt size, 1.5 line spacing, numeric section numbering, include TOC, output as PDF." + }, + { + "inputJson": "{\"contractText\":\"Clause A: Confidentiality\\nThe parties agree...\",\"styleGuide\":{\"fontFamily\":\"Times New Roman\",\"fontSize\":11,\"lineSpacing\":2.0},\"outputFormat\":\"text\",\"includeTableOfContents\":false,\"language\":\"en\"}", + "description": "Format contract clauses to plain text with Times New Roman font, 11pt, double spaced, no TOC." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "agent-management.generateArticle", + "description": "Generates a detailed article based on a given topic or summary by leveraging AI-powered natural language processing. Accepts parameters for topic, desired length, style, and target audience to produce coherent, structured, and informative articles as output.", + "category": "agent-management", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the article to be generated. Required to focus the content.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "Optional brief summary or bullet points to guide the article content and structure.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the article in number of words. Helps adjust detail level and depth.", + "required": false, + "defaultValue": "500" + }, + { + "name": "style", + "type": "string", + "description": "Writing style or tone of the article (e.g., formal, casual, technical, persuasive).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Defines the intended reader group to tailor the language and complexity (e.g., general public, experts, students).", + "required": false, + "defaultValue": "general public" + }, + { + "name": "includeReferences", + "type": "boolean", + "description": "Whether the article should include references or citations where applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text and metadata such as length and style." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automatically generate full-length articles or comprehensive documents on a specific topic based on minimal input, ideal for content creation, briefing reports, or knowledge bases.", + "limitations": "Cannot guarantee factual accuracy or cite real-time data unless references are specifically included. May produce generic or repetitive content for very narrow topics.", + "examples": [ + "Generate an article about renewable energy advantages.", + "Create a 1000-word technical article on machine learning applications for students.", + "Write a casual style article on the benefits of meditation for general readers." + ] + }, + "tags": [ + "article generation", + "content creation", + "AI writing", + "document generation", + "natural language processing", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of electric vehicles\",\"length\":700,\"style\":\"formal\",\"targetAudience\":\"general public\",\"includeReferences\":true}", + "description": "Generate a 700-word formal article aimed at the general public about the benefits of electric vehicles, including references." + }, + { + "inputJson": "{\"topic\":\"Deep learning in medical imaging\",\"summary\":\"Explain how deep learning improves diagnosis accuracy\",\"length\":1000,\"style\":\"technical\",\"targetAudience\":\"experts\",\"includeReferences\":true}", + "description": "Create a 1000-word technical article for experts on deep learning applications in medical imaging with citations." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "prompt-engineering.sendMessage", + "description": "This tool sends a crafted prompt message to a specified AI model or chat API endpoint. It accepts the message text, target model identifier, and optional context or conversation history, then transmits this information, returning the AI's response message and metadata about the interaction.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The prompt or message text to send to the AI model.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelId", + "type": "string", + "description": "Identifier of the target AI model or chat endpoint to receive the message (e.g., 'gpt-4', 'chat-bot-v1').", + "required": true, + "defaultValue": "" + }, + { + "name": "conversationContext", + "type": "array", + "description": "Optional array of previous message objects to provide conversation history context. Each object should have 'role' and 'content' fields.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxTokens", + "type": "number", + "description": "Maximum number of tokens to generate in the response. Helps control response length.", + "required": false, + "defaultValue": "512" + }, + { + "name": "temperature", + "type": "number", + "description": "Sampling temperature for response generation, controlling randomness (0.0-1.0).", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object containing the AI's response message, including text content, token usage, and response metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically send a prompt message to an AI language model or chat-based API to obtain a text response, including scenarios of multi-turn conversations or dynamic prompt testing.", + "limitations": "This tool does not perform prompt crafting or optimization by itself; it only sends messages to given AI endpoints and returns responses. It cannot validate message content or handle non-text modalities.", + "examples": [ + "Send a customer support prompt to GPT-4 to get an answer.", + "Continue a multi-turn chat conversation by sending the updated conversation context.", + "Test different prompts on various AI models to compare responses." + ] + }, + "tags": [ + "prompt", + "message", + "AI", + "chat", + "language-model", + "conversational", + "API" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Hello, how can I improve my writing skills?\",\"modelId\":\"gpt-4\",\"conversationContext\":[],\"maxTokens\":200,\"temperature\":0.5}", + "description": "Sending a single prompt message to GPT-4 asking for writing skill improvement advice." + }, + { + "inputJson": "{\"messageText\":\"Thanks! Can you give me an example exercise?\",\"modelId\":\"chat-bot-v1\",\"conversationContext\":[{\"role\":\"user\",\"content\":\"Hello, how can I improve my writing skills?\"},{\"role\":\"assistant\",\"content\":\"Practice daily and read more books.\"}],\"maxTokens\":150,\"temperature\":0.7}", + "description": "Continuing a chat conversation by providing previous messages as context for a coherent reply." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "prompt-engineering.formatFunction", + "description": "Formats a given code function string according to specified style conventions such as indentation, brace style, and line width. Accepts raw function code as input and produces a cleaned, consistently formatted function code string as output, improving readability and maintainability.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "Raw source code of the function to format, as a single string.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the function code (e.g., 'javascript', 'python'), used to apply language-specific formatting rules.", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "indentStyle", + "type": "string", + "description": "Indentation style to use, such as 'spaces' or 'tabs'.", + "required": false, + "defaultValue": "spaces" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces or tabs per indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "braceStyle", + "type": "string", + "description": "Brace style to apply for block openings, e.g., '1tbs', 'allman', or 'stroustrup'.", + "required": false, + "defaultValue": "1tbs" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length to wrap lines appropriately for readability.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code string under the 'formattedCode' key." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to standardize or beautify function code, making it easier to read, review, or further process as part of prompt engineering or code generation tasks. It helps enforce consistent style conventions automatically, especially when working across multiple languages or formatting preferences.", + "limitations": "Does not perform syntax validation or fixes beyond formatting. It assumes the input is valid code in the specified language. It may not support all programming languages or complex language-specific formatting nuances.", + "examples": [ + "Format a JavaScript function with spaces and 2-space indentation.", + "Format a Python function using tabs and Allman brace style (for languages that support braces).", + "Format a function to wrap lines longer than 100 characters." + ] + }, + "tags": [ + "formatting", + "code", + "function", + "style", + "prompt-engineering", + "beautify" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"function add(a,b){return a+b;}\",\"language\":\"javascript\",\"indentStyle\":\"spaces\",\"indentSize\":2,\"braceStyle\":\"1tbs\",\"maxLineLength\":80}", + "description": "Format a simple JavaScript function using 2 spaces indentation and 1TBS brace style." + }, + { + "inputJson": "{\"functionCode\":\"def add(a,b):\\n return a+b\",\"language\":\"python\",\"indentStyle\":\"spaces\",\"indentSize\":4,\"maxLineLength\":80}", + "description": "Format a Python function with 4 spaces indentation and default brace style." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "model-management.analyzeOpportunity", + "description": "Analyzes a potential business opportunity for AI model development and deployment by evaluating market data, resource requirements, and expected ROI. It accepts inputs such as opportunity description, market size, competition metrics, and resource constraints, then outputs a detailed analysis report including risk assessment, feasibility score, and recommendations.", + "category": "model-management", + "parameters": [ + { + "name": "opportunityDescription", + "type": "string", + "description": "Detailed description of the business opportunity to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "marketSizeEstimate", + "type": "number", + "description": "Estimated size of the target market in monetary terms (e.g., USD)", + "required": true, + "defaultValue": "" + }, + { + "name": "competitionLevel", + "type": "string", + "description": "Level of competition in the market segment (e.g., 'low', 'medium', 'high')", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceAvailability", + "type": "object", + "description": "Available internal resources for the project, including team size, budget, and infrastructure", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedROI", + "type": "number", + "description": "Expected return on investment percentage", + "required": false, + "defaultValue": "0" + }, + { + "name": "timeFrameMonths", + "type": "number", + "description": "Time frame in months to achieve ROI and market entry", + "required": false, + "defaultValue": "12" + } + ], + "returns": { + "type": "object", + "description": "A structured report containing feasibility score, risk factors, recommended actions, and summary insights" + }, + "aiAgent": { + "useCase": "Use this tool when evaluating new AI product or project ideas to assess their market viability, resource fit, and risks before committing to development. It helps prioritize opportunities based on quantitative and qualitative analysis.", + "limitations": "Does not provide precise financial forecasts or replace detailed market studies. Relies on input accuracy and may not capture external market disruptions.", + "examples": [ + "Analyze a new AI-powered customer support chatbot opportunity with medium competition and limited resources", + "Evaluate if developing an AI-based medical imaging tool with high competition but large market size is viable within a 18-month timeframe" + ] + }, + "tags": [ + "analysis", + "business", + "opportunity", + "model-management", + "feasibility", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"opportunityDescription\":\"Develop AI-driven chatbot for e-commerce customer support\",\"marketSizeEstimate\":50000000,\"competitionLevel\":\"medium\",\"resourceAvailability\":{\"teamSize\":5,\"budget\":200000,\"infrastructure\":\"cloud\"},\"expectedROI\":15,\"timeFrameMonths\":12}", + "description": "Evaluating a chatbot AI opportunity with moderate competition and limited resources" + }, + { + "inputJson": "{\"opportunityDescription\":\"AI diagnostic tool for radiology scans\",\"marketSizeEstimate\":200000000,\"competitionLevel\":\"high\",\"resourceAvailability\":{\"teamSize\":10,\"budget\":1000000,\"infrastructure\":\"on-premise\"},\"expectedROI\":25,\"timeFrameMonths\":24}", + "description": "Analyzing a competitive but high-value AI healthcare product opportunity" + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "model-management.analyzeTable", + "description": "Analyzes tabular datasets to extract key statistical summaries, identify data distributions, detect missing values, and highlight potential outliers. Accepts structured table data (e.g., CSV or JSON array of records) and returns a detailed report including column-wise statistics and data quality metrics, aiding data understanding for model training and evaluation.", + "category": "model-management", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "An array of objects representing the tabular dataset rows, with keys as column names. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnsToAnalyze", + "type": "array", + "description": "Optional list of column names to limit the analysis; if not provided, all columns are analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCorrelations", + "type": "boolean", + "description": "Whether to calculate pairwise correlation coefficients between numeric columns. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "missingValueStrategy", + "type": "string", + "description": "Strategy to handle missing values during analysis: 'ignore' (default), 'count', or 'impute'.", + "required": false, + "defaultValue": "ignore" + }, + { + "name": "outlierDetectionMethod", + "type": "string", + "description": "Method used to detect outliers: 'iqr' (Interquartile Range, default) or 'zscore'.", + "required": false, + "defaultValue": "iqr" + }, + { + "name": "maxUniqueValuesForCategorical", + "type": "number", + "description": "Maximum number of unique values to treat a column as categorical for summary. Defaults to 50.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "Comprehensive report object containing summaries per column such as count, mean, median, mode, std deviation, missing value counts, outliers list; plus pairwise correlations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing an in-depth statistical and data quality analysis of tabular datasets before training or deploying AI models. It helps reveal data distributions, identify issues like missing or anomalous data, and provides summary statistics to guide feature engineering and model building.", + "limitations": "Does not perform data cleaning, model training, or visualization. Large datasets may require substantial memory and processing time. Correlation analysis is limited to numeric columns only.", + "examples": [ + "Analyze a tabular dataset to understand its statistical properties and check for missing values.", + "Determine outlier rows in sensor readings stored in JSON array format before model training.", + "Get correlation metrics between numeric features to assist in feature selection." + ] + }, + "tags": [ + "analysis", + "model-data", + "statistics", + "data-quality", + "tabular-data", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"age\":30,\"income\":50000,\"gender\":\"M\"},{\"age\":25,\"income\":48000,\"gender\":\"F\"},{\"age\":40,\"income\":62000,\"gender\":\"F\"},{\"age\":null,\"income\":52000,\"gender\":\"M\"}],\"includeCorrelations\":true}", + "description": "Analyze demographic data with incomes and genders, including correlation between numeric columns." + }, + { + "inputJson": "{\"tableData\":[{\"temperature\":22.5,\"humidity\":30},{\"temperature\":null,\"humidity\":35},{\"temperature\":20.1,\"humidity\":28}],\"missingValueStrategy\":\"count\",\"outlierDetectionMethod\":\"zscore\"}", + "description": "Analyze environmental sensor data counting missing values and detecting outliers using z-score method." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "model-management.formatJSON", + "description": "Formats JSON strings related to AI models and configurations for improved readability or compactness. Accepts raw JSON string input and outputs a formatted JSON string with customizable indentation and sorting options.", + "category": "model-management", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "The raw JSON string representing model configurations or metadata that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted JSON output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Flag to enable sorting of JSON object keys alphabetically in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "compact", + "type": "boolean", + "description": "If true, outputs compact JSON without spaces or newlines, ignoring indentation and sorting.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string under 'formattedJson' key, preserving valid JSON structure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ensure JSON configurations, model parameters, or metadata are human-readable or standardized before deployment, storage, or logging. It is helpful for validating format consistency or transforming compact JSON into pretty-printed form and vice versa.", + "limitations": "This tool only formats JSON strings; it does not validate schema correctness or semantic integrity of JSON content, nor does it parse JSON into objects beyond formatting purposes.", + "examples": [ + "Format a raw JSON string of model metadata with 4 spaces indentation for better readability.", + "Convert a pretty-printed JSON to compact form for efficient storage or transmission.", + "Sort JSON keys alphabetically to maintain consistent formatting in configuration files." + ] + }, + "tags": [ + "formatting", + "json", + "model-management", + "configuration", + "readability", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"modelName\\\":\\\"GPT-4\\\",\\\"version\\\":1,\\\"parameters\\\":{\\\"layers\\\":96,\\\"units\\\":12288}}\",\"indentation\":4,\"sortKeys\":true,\"compact\":false", + "description": "Pretty-print model configuration JSON with 4 spaces indentation and keys sorted alphabetically." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"version\\\":1,\\\"parameters\\\":{\\\"units\\\":12288,\\\"layers\\\":96},\\\"modelName\\\":\\\"GPT-4\\\"}\",\"compact\":true}", + "description": "Compact the same JSON string by removing all unnecessary whitespace." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "model-management.composeText", + "description": "This tool generates coherent and contextually relevant text by composing multiple input prompts and optional context metadata. It accepts an array of prompt strings, optional style and length parameters, and produces composed text output that can be used for content generation, summarization, or creative writing tasks.", + "category": "model-management", + "parameters": [ + { + "name": "prompts", + "type": "array", + "description": "An array of text prompts or partial inputs to be composed into a single output text.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextMetadata", + "type": "object", + "description": "Optional metadata to guide text composition, such as topic, tone, or target audience.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the composed text output in tokens or words. Controls output size.", + "required": false, + "defaultValue": "500" + }, + { + "name": "style", + "type": "string", + "description": "Optional writing style to apply to the composed text, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "" + }, + { + "name": "temperature", + "type": "number", + "description": "Controls randomness in text generation; higher values produce more creative outputs.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed text output as a single string and metadata about the generation process." + }, + "aiAgent": { + "useCase": "Use this tool when multiple text prompts must be combined into a cohesive passage, such as generating reports, articles, or creative writing where several inputs contribute to the final output. It supports refinements via style, length, and contextual metadata to customize output tone and detail.", + "limitations": "This tool cannot verify factual accuracy or generate guaranteed error-free text. It may produce plausible-sounding but incorrect or biased content. Complex domain-specific synthesis may require specialized models outside this generic composer.", + "examples": [ + "Compose a summary from these bullet points.", + "Generate a formal email combining these content snippets.", + "Create a short story combining these thematic prompts." + ] + }, + "tags": [ + "text-generation", + "composition", + "content-creation", + "model-management", + "writing", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"prompts\":[\"Market trends indicate a rise in AI adoption.\",\"Customer feedback highlights usability concerns.\"],\"contextMetadata\":{\"topic\":\"AI technology adoption\",\"tone\":\"professional\"},\"maxLength\":150,\"style\":\"formal\",\"temperature\":0.5}", + "description": "Compose a formal professional summary combining market trends and customer feedback about AI adoption." + }, + { + "inputJson": "{\"prompts\":[\"Once upon a time in a distant galaxy\", \"a brave explorer set out on a quest.\"],\"style\":\"creative\",\"temperature\":0.9}", + "description": "Generate a creative story text by composing two narrative prompts with a high creativity setting." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "model-management.draftReport", + "description": "Generates a detailed model evaluation report by analyzing input model metadata, performance metrics, and training logs. Produces a structured document summarizing model architecture, training parameters, evaluation results, and recommendations for deployment or improvement.", + "category": "model-management", + "parameters": [ + { + "name": "modelMetadata", + "type": "object", + "description": "Metadata of the AI model including architecture details and version info.", + "required": true, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Quantitative evaluation results such as accuracy, loss, precision, recall, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "trainingLogs", + "type": "string", + "description": "Optional logs or textual summaries from the model training process.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output format of the report document (e.g., pdf, markdown, html).", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include deployment and improvement recommendations in the report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured report document containing summarized model details, evaluation analysis, and optionally recommendations, formatted as specified." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a comprehensive evaluation report about a trained model's performance and training process, helping stakeholders understand model quality and deployment readiness. This is useful during model validation, audit, or documentation phases.", + "limitations": "This tool does not perform model training or evaluation itself; it requires supplied metadata and metrics. It cannot interpret raw model weights or logs without structured input.", + "examples": [ + "Draft a PDF report summarizing the latest model's architecture, evaluation metrics, and training logs including recommendations.", + "Generate a markdown report for version 2.0 of the model excluding recommendations.", + "Produce an HTML model report including training log details." + ] + }, + "tags": [ + "model", + "report", + "evaluation", + "documentation", + "performance", + "mlops", + "training" + ], + "examples": [ + { + "inputJson": "{\"modelMetadata\":{\"name\":\"ResNet50\",\"version\":\"1.0\",\"layers\":50,\"parameters\":25557032},\"performanceMetrics\":{\"accuracy\":0.932,\"loss\":0.23,\"precision\":0.91,\"recall\":0.89},\"trainingLogs\":\"Training completed in 12 hours with early stopping.\",\"reportFormat\":\"pdf\",\"includeRecommendations\":true}", + "description": "Generate a detailed PDF report including metrics and training log for ResNet50 model version 1.0." + }, + { + "inputJson": "{\"modelMetadata\":{\"name\":\"TransformerXL\",\"version\":\"2.1\",\"parameters\":151000000},\"performanceMetrics\":{\"accuracy\":0.87,\"loss\":0.45},\"reportFormat\":\"markdown\",\"includeRecommendations\":false}", + "description": "Create a markdown report without recommendations summarizing TransformerXL model version 2.1 key metrics." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "model-management.createDashboard", + "description": "Creates a customizable AI model monitoring dashboard by accepting configuration inputs such as model IDs, metric types, refresh interval, and display format. Processes these inputs to aggregate and visualize model performance metrics over time, enabling stakeholders to review model health and analytics in a consolidated dashboard view. Outputs a dashboard configuration object and URL for access.", + "category": "model-management", + "parameters": [ + { + "name": "modelIds", + "type": "array", + "description": "List of AI model identifiers to include in the dashboard for monitoring", + "required": true, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "array", + "description": "Array of metric names (e.g., accuracy, latency) to display for each model", + "required": true, + "defaultValue": "[]" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Time in seconds between automatic dashboard data refreshes", + "required": false, + "defaultValue": "300" + }, + { + "name": "dashboardName", + "type": "string", + "description": "User-defined name for the dashboard", + "required": false, + "defaultValue": "\"Model Performance Dashboard\"" + }, + { + "name": "displayStyle", + "type": "string", + "description": "Visual presentation style for the dashboard, e.g., 'summary', 'detailed', or 'graphical'", + "required": false, + "defaultValue": "\"graphical\"" + }, + { + "name": "includeAlerts", + "type": "boolean", + "description": "Whether to include alert panels for threshold breaches in metrics", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing dashboardId (string), dashboardUrl (string), and a summary of configured monitoring settings." + }, + "aiAgent": { + "useCase": "Use this tool to rapidly create a centralized dashboard for monitoring various AI models' performance metrics and status in real time or historical context. Ideal when configuring monitoring setups for one or more deployed models to assess quality, detect anomalies, or report metrics to stakeholders.", + "limitations": "The tool does not support creating dashboards for models without accessible metric data or integrating with external BI platforms beyond its native interface.", + "examples": [ + "Create a dashboard monitoring model A and model B's accuracy and latency every 5 minutes in graphical style.", + "Build a summary-style dashboard for multiple models focusing on error rates with alerts enabled.", + "Generate a detailed dashboard named 'Project X Model Insights' refreshing every 10 minutes for deployment review." + ] + }, + "tags": [ + "model-monitoring", + "dashboard", + "analytics", + "AI-models", + "performance", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"modelIds\":[\"modelA\",\"modelB\"],\"metrics\":[\"accuracy\",\"latency\"],\"refreshInterval\":300,\"dashboardName\":\"Baseline Models\",\"displayStyle\":\"graphical\",\"includeAlerts\":true}", + "description": "Dashboard setup monitoring accuracy and latency for modelA and modelB, refreshing every 5 minutes with alerts." + }, + { + "inputJson": "{\"modelIds\":[\"modelX\"],\"metrics\":[\"errorRate\"],\"refreshInterval\":600,\"dashboardName\":\"Project X Model Insights\",\"displayStyle\":\"detailed\",\"includeAlerts\":false}", + "description": "Detailed single-model dashboard without alerts, refreshing every 10 minutes." + }, + { + "inputJson": "{\"modelIds\":[\"model1\",\"model2\",\"model3\"],\"metrics\":[\"precision\",\"recall\"],\"refreshInterval\":120,\"dashboardName\":\"Multi-Model Summary\",\"displayStyle\":\"summary\",\"includeAlerts\":true}", + "description": "Summary dashboard showing precision and recall for three models with alert panels enabled and 2-minute refresh." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "embedding-generation.composeEmail", + "description": "Generates an embedding vector representation for the content of an email composed from given structured inputs. Accepts subject, body text, recipients, and optional tags, then processes and returns a numerical vector embedding capturing semantic features of the composed email.", + "category": "embedding-generation", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to be embedded.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main textual content of the email to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "toRecipients", + "type": "array", + "description": "List of main recipient email addresses (strings). Used optionally to enhance context.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "List of CC recipient email addresses (strings). Optional context for embedding.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccRecipients", + "type": "array", + "description": "List of BCC recipient email addresses (strings). Included as optional context.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or keywords related to the email content to refine the embedding context.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a single field 'embedding' which is an array of numbers representing the vector embedding of the email content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a vector embedding summarizing the semantic content of an email composed from its components, to enable similarity search, clustering, or automated classification of emails in an embedding space.", + "limitations": "This tool does not generate natural language email text; it only produces vector embeddings from provided text. It cannot infer missing email parts or write email content.", + "examples": [ + "Generate a semantic vector embedding for a composed email given its subject, body, and recipients to find similar past emails.", + "Create embeddings from new composed emails to cluster and organize them based on content similarity.", + "Embed draft emails to recommend relevant actions or categorize by topic using pretrained vector embeddings." + ] + }, + "tags": [ + "embedding", + "email", + "text-representation", + "communication", + "semantic-vector", + "vectorization", + "email-processing" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Meeting agenda update\",\"body\":\"Please find the updated agenda for tomorrow's meeting attached.\",\"toRecipients\":[\"alice@example.com\"],\"ccRecipients\":[\"bob@example.com\"],\"bccRecipients\":[],\"tags\":[\"meeting\",\"agenda\"]}", + "description": "Embed a composed email about a meeting agenda update including recipients and tags." + }, + { + "inputJson": "{\"subject\":\"Invoice reminder\",\"body\":\"Dear customer, this is a reminder that your invoice #1234 is due next week.\",\"toRecipients\":[\"client@example.com\"],\"ccRecipients\":[],\"bccRecipients\":[],\"tags\":[\"invoice\",\"payment\"]}", + "description": "Create embedding for a payment reminder email to a client with relevant tags." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "file-operations.createReport", + "description": "Creates a structured report document from provided data inputs. Accepts data as JSON or CSV strings, applies optional formatting options, and outputs a report in PDF, DOCX, or HTML format. Supports adding titles, headers, footers, and basic styling for professional reporting needs.", + "category": "file-operations", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "The raw data to include in the report, formatted as JSON or CSV string.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the inputData: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title text to display at the top of the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired report output format, e.g. 'pdf', 'docx', or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include a header section in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeFooter", + "type": "boolean", + "description": "Whether to include a footer section in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "pageSize", + "type": "string", + "description": "Page size for the report output, e.g. 'A4', 'Letter'.", + "required": false, + "defaultValue": "A4" + }, + { + "name": "customStyles", + "type": "object", + "description": "Optional styling settings such as fonts, colors, and spacing as key-value pairs.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64-encoded string of the generated report file, the file name with extension, and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate formatted reports from structured data inputs for sharing, presentation, or archival purposes. Ideal for summarizing tabular or JSON data into professional documents in common formats like PDF and DOCX.", + "limitations": "Does not perform complex data analysis or dynamic chart generation. Styling and formatting are basic and designed for clarity, not high design customization.", + "examples": [ + "Create a PDF sales report from JSON data with a title and default styling.", + "Generate an HTML report from CSV input, including header and footer.", + "Produce a DOCX report with custom font styles and letter-size pages." + ] + }, + "tags": [ + "file", + "report", + "document", + "generate", + "pdf", + "docx", + "html", + "data" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"name\\\":\\\"Alice\\\",\\\"score\\\":93},{\\\"name\\\":\\\"Bob\\\",\\\"score\\\":87}]\",\"inputFormat\":\"json\",\"reportTitle\":\"Exam Results\",\"outputFormat\":\"pdf\",\"includeHeader\":true,\"includeFooter\":true,\"pageSize\":\"A4\",\"customStyles\":{}}", + "description": "Generate a PDF report titled 'Exam Results' from JSON array data." + }, + { + "inputJson": "{\"inputData\":\"name,score\\nAlice,93\\nBob,87\",\"inputFormat\":\"csv\",\"reportTitle\":\"CSV Report\",\"outputFormat\":\"html\",\"includeHeader\":true,\"includeFooter\":false,\"pageSize\":\"Letter\",\"customStyles\":{\"fontFamily\":\"Arial\"}}", + "description": "Create an HTML report from CSV data with custom font and header only." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "file-operations.createFunction", + "description": "Creates a new programming function file based on specified parameters such as function name, language, parameters, and function body content. Outputs a text file with valid function code ready for use or further editing.", + "category": "file-operations", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The name of the function to create, used as the function identifier and file base name.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the function to generate (e.g., 'javascript', 'python', 'typescript').", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "An array of parameter names (strings) that the function accepts.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "functionBody", + "type": "string", + "description": "The code to include inside the function body, defining its behavior.", + "required": true, + "defaultValue": "" + }, + { + "name": "exportFunction", + "type": "boolean", + "description": "Whether to export the function (if language supports export syntax) from the module/file.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the filename and the full content of the function code as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a new standalone function in a specific programming language, allowing dynamic creation of reusable code from specifications or prompts. It is ideal for scaffolding functions based on input signature and logic.", + "limitations": "This tool generates the function text but does not compile, execute, or validate the function code. It cannot infer complex logic from vague descriptions and requires explicit function body code.", + "examples": [ + "Create a Python function named 'add' that takes parameters 'a' and 'b' and returns their sum.", + "Generate a JavaScript function called 'greet' accepting 'name' that returns a greeting string.", + "Produce a TypeScript exported function 'multiply' with parameters 'x', 'y' returning the product." + ] + }, + "tags": [ + "code-generation", + "file-creation", + "function", + "programming", + "automation", + "source-code" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"add\",\"language\":\"python\",\"parameters\":[\"a\",\"b\"],\"functionBody\":\"return a + b\",\"exportFunction\":false}", + "description": "Generate a simple Python add function with two parameters that returns their sum." + }, + { + "inputJson": "{\"functionName\":\"greet\",\"language\":\"javascript\",\"parameters\":[\"name\"],\"functionBody\":\"return `Hello, ${name}!`;\",\"exportFunction\":true}", + "description": "Create an exported JavaScript greet function that returns a personalized string." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "audio-processing.generateCode", + "description": "Generates source code snippets to perform audio processing tasks based on natural language descriptions. Accepts parameters specifying the target programming language, desired audio effect or analysis, and code complexity level. Produces ready-to-use code samples that implement audio processing functionality such as filtering, synthesis, or feature extraction.", + "category": "audio-processing", + "parameters": [ + { + "name": "description", + "type": "string", + "description": "A natural language description of the desired audio processing functionality to implement (e.g., 'apply a low-pass filter to audio input').", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Target programming language for the generated code (e.g., 'Python', 'JavaScript').", + "required": true, + "defaultValue": "Python" + }, + { + "name": "complexityLevel", + "type": "string", + "description": "Desired complexity level of the generated code: 'basic' for simple examples, 'advanced' for production-ready or optimized implementations.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "libraryPreference", + "type": "string", + "description": "Preferred audio processing library or framework to use if applicable (e.g., 'librosa', 'pydub', or empty for no preference).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code as a string, the language used, and optional notes about dependencies or usage instructions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate practical example code snippets for audio processing tasks in a specific programming language based on a description of the audio effect or analysis required. Ideal for developers or learners seeking programmatic implementations of audio operations.", + "limitations": "The tool cannot execute or test the generated code, nor guarantee compatibility with all versions of the requested libraries. Complex custom audio algorithms beyond common patterns might not produce accurate code.", + "examples": [ + "Generate Python code that performs speech detection using the librosa library.", + "Create a JavaScript snippet applying a reverb effect on an audio buffer.", + "Produce a basic Python example to extract MFCC features from an audio file." + ] + }, + "tags": [ + "audio-processing", + "code-generation", + "programming", + "audio-effects", + "machine-learning", + "audio-analysis" + ], + "examples": [ + { + "inputJson": "{\"description\":\"apply a low-pass filter to an audio signal\",\"language\":\"Python\",\"complexityLevel\":\"basic\",\"libraryPreference\":\"librosa\"}", + "description": "Generate simple Python code using librosa to apply a low-pass filter to audio input." + }, + { + "inputJson": "{\"description\":\"extract MFCC features from an audio clip\",\"language\":\"Python\",\"complexityLevel\":\"advanced\",\"libraryPreference\":\"\"}", + "description": "Generate advanced Python code for extracting MFCC features from audio without specifying a library preference." + }, + { + "inputJson": "{\"description\":\"add a reverb effect to an audio buffer\",\"language\":\"JavaScript\",\"complexityLevel\":\"basic\",\"libraryPreference\":\"\"}", + "description": "Generate a JavaScript snippet applying reverb effect to an audio buffer." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "image-processing.createFunction", + "description": "Creates a custom image processing function based on user-defined operations and parameters. The tool accepts a specification of image manipulations such as filters, color adjustments, and transformations, then generates executable code implementing the function. Outputs the function code as a string for integration or further use.", + "category": "image-processing", + "parameters": [ + { + "name": "operations", + "type": "array", + "description": "A list of image processing operations to apply, each specifying type, parameters, and order. Supported operations include filters, transforms, color adjustments, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionName", + "type": "string", + "description": "The desired name of the generated function. If empty, a default name is assigned.", + "required": false, + "defaultValue": "\"processImage\"" + }, + { + "name": "language", + "type": "string", + "description": "The programming language for the function code output, e.g., 'JavaScript', 'Python'.", + "required": false, + "defaultValue": "\"JavaScript\"" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code for better readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function code string and metadata such as language and applied operations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to dynamically create custom image processing functions programmatically based on specific operation sequences and parameters, allowing AI agents to automate image manipulation code generation without manual coding.", + "limitations": "Cannot execute or test the generated function code; assumes input operations are valid and supported; does not handle image input/output directly, only code generation.", + "examples": [ + "Create a JS function to apply grayscale and blur filters to an image.", + "Generate a Python function named 'enhanceContrast' to increase image contrast.", + "Produce a JavaScript function with comments applying rotate and resize transformations." + ] + }, + "tags": [ + "image-processing", + "code-generation", + "function-creation", + "filters", + "transformations", + "color-adjustment" + ], + "examples": [ + { + "inputJson": "{\"operations\":[{\"type\":\"grayscale\"},{\"type\":\"blur\",\"radius\":5}],\"functionName\":\"applyEffects\",\"language\":\"JavaScript\",\"includeComments\":true}", + "description": "Generate a JS function 'applyEffects' applying grayscale and blur with radius 5." + }, + { + "inputJson": "{\"operations\":[{\"type\":\"rotate\",\"angle\":90},{\"type\":\"resize\",\"width\":200,\"height\":100}],\"functionName\":\"transformImage\",\"language\":\"Python\",\"includeComments\":false}", + "description": "Create a Python function 'transformImage' to rotate 90 degrees and resize to 200x100 without comments." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "notifications.analyzeAccount", + "description": "Analyzes notification account data to identify patterns, delivery performance, usage statistics, and potential issues. It accepts account identifier and optional filters, processes historical and real-time notification metadata, and outputs a detailed report summarizing activity trends, success/failure rates, anomaly detection, and recommendations for optimization.", + "category": "notifications", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the notification account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 date to specify analysis start time; defaults to 30 days before endDate if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 date for analysis end time; defaults to current date/time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationTypes", + "type": "array", + "description": "Filter to include only specified notification types (e.g., email, SMS, push).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeFailedOnly", + "type": "boolean", + "description": "If true, limit analysis to only failed notifications to identify problems.", + "required": false, + "defaultValue": "false" + }, + { + "name": "aggregationInterval", + "type": "string", + "description": "Time interval to aggregate results, e.g., 'daily', 'weekly', or 'monthly'. Defaults to 'daily'.", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "Detailed analytics report including summary statistics, trend graphs data, failure analysis, peak usage periods, and improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide insights on the performance and usage patterns of a notifications account, such as reviewing delivery success rates, finding spikes in notification volume, or diagnosing recurring failures. It is especially useful for support, account management, or operational optimization tasks.", + "limitations": "This tool does not modify account settings, send notifications directly, or provide real-time alerting. It only analyzes historical and current notification data within given filters and intervals.", + "examples": [ + "Analyze notification delivery performance for account 'acc123' over the last month.", + "Generate a report of failed email notifications for account 'acc123' between 2024-01-01 and 2024-01-31.", + "Summarize weekly push notification volumes for account 'acc123', showing trends and peak days." + ] + }, + "tags": [ + "notifications", + "analysis", + "account", + "reporting", + "performance", + "failure-detection" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"acc123\"}", + "description": "Basic analysis for account 'acc123' using default parameters (last 30 days, all notification types)." + }, + { + "inputJson": "{\"accountId\":\"acc123\",\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\",\"notificationTypes\":[\"email\"],\"includeFailedOnly\":true}", + "description": "Analyze failed email notifications for 'acc123' during May 2024." + }, + { + "inputJson": "{\"accountId\":\"acc123\",\"aggregationInterval\":\"weekly\"}", + "description": "Weekly aggregated trend report for 'acc123' across all notification types for the last 30 days." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "notifications.composeEmail", + "description": "Composes an email message based on specified recipient addresses, subject, body content, and optional metadata like CC, BCC, and attachments. Returns a structured email object ready for sending or further processing.", + "category": "notifications", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of primary recipient email addresses to send the email to.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email, supports plain text or HTML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of email addresses to be carbon copied on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of email addresses to be blind carbon copied on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating if the body content is HTML (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments, each with filename and base64 encoded content.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A structured email object including all headers, body, and attachments ready to be sent or stored." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a well-formed email message with all relevant fields (to, cc, bcc, subject, content, attachments) ready for sending via an email client or service. It helps in composing emails from dynamic content and multiple recipients.", + "limitations": "This tool only composes the email message structure and does not send the email or manage email delivery. It cannot validate email address correctness beyond format checks or handle scheduling or mailbox management.", + "examples": [ + "Compose an email to a team updating them on project status with HTML content and an attachment.", + "Create a plain text email to notify a user about password reset instructions.", + "Generate an email with CC and BCC recipients for event invitations." + ] + }, + "tags": [ + "notifications", + "email", + "compose", + "communication", + "automated messages", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Meeting Reminder\",\"body\":\"Just a reminder about our meeting tomorrow at 10 AM.\",\"isHtml\":false}", + "description": "Simple plain text email to one recipient reminding about a meeting." + }, + { + "inputJson": "{\"to\":[\"team@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Project Update\",\"body\":\"

Project Status

The project is on track for delivery.

\",\"isHtml\":true}", + "description": "HTML email to team with CC to manager including project status update." + }, + { + "inputJson": "{\"to\":[\"invitee@example.com\"],\"bcc\":[\"organizer@example.com\"],\"subject\":\"You’re Invited!\",\"body\":\"Please find the invitation attached.\",\"isHtml\":false,\"attachments\":[{\"filename\":\"invitation.pdf\",\"content\":\"JVBERi0xLjQKJcfs...\"}]}", + "description": "Plain text invitation email with a PDF attachment and a BCC to the organizer." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "notifications.generateText", + "description": "Generates text content for notifications based on specified parameters including audience type, event type, urgency level, and preferred language. Accepts structured input and produces a customized notification message text suitable for alert or update purposes.", + "category": "notifications", + "parameters": [ + { + "name": "audienceType", + "type": "string", + "description": "Type of the notification audience, e.g., 'customer', 'employee', 'admin'. Affects tone and content of generated text.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of event triggering the notification, e.g., 'passwordReset', 'systemAlert', 'promotion'. Influences the message focus.", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency of the notification: 'low', 'medium', or 'high'. Modifies the language to reflect urgency accordingly.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "language", + "type": "string", + "description": "Preferred language code for the notification text, e.g., 'en', 'es', 'fr'. Controls output language.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeActionCall", + "type": "boolean", + "description": "Whether to include a call-to-action phrase in the notification text, e.g., 'Click here to reset'.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated notification text under the key 'notificationText', ready for display or sending." + }, + "aiAgent": { + "useCase": "This tool should be used by AI agents tasked with creating clear, context-sensitive notification messages for various audiences and events. It is ideal when a dynamically generated, natural language notification is required for alerting users, customers, or staff in multiple languages and urgency levels.", + "limitations": "The tool does not send notifications; it only generates the text content. It cannot forecast user reactions or guarantee legal compliance.", + "examples": [ + "Generate a high urgency system alert notification for employees in English with an action call.", + "Create a promotional notification text for customers in Spanish, medium urgency, without a call to action.", + "Generate a password reset notification for admins in French, low urgency, including an action call." + ] + }, + "tags": [ + "notification", + "text generation", + "alert", + "multilingual", + "custom messaging", + "urgency" + ], + "examples": [ + { + "inputJson": "{\"audienceType\":\"customer\",\"eventType\":\"promotion\",\"urgencyLevel\":\"low\",\"language\":\"en\",\"includeActionCall\":true}", + "description": "Generate a low urgency promotional notification for customers in English with a call to action." + }, + { + "inputJson": "{\"audienceType\":\"employee\",\"eventType\":\"systemAlert\",\"urgencyLevel\":\"high\",\"language\":\"en\",\"includeActionCall\":true}", + "description": "Generate a high urgency system alert notification for employees in English including a call to action." + }, + { + "inputJson": "{\"audienceType\":\"admin\",\"eventType\":\"passwordReset\",\"urgencyLevel\":\"medium\",\"language\":\"fr\",\"includeActionCall\":true}", + "description": "Generate a medium urgency password reset notification for admins in French including a call to action." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "messaging.analyzeMessage", + "description": "Analyzes a chat or message text to extract insights such as sentiment, toxicity, key topics, intent, and language. Accepts a string message and options for analysis types, then processes the text using NLP techniques and returns a detailed analysis report summarizing detected attributes and scores.", + "category": "messaging", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The message content to analyze for sentiment, intent, and other attributes.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze and include sentiment score and label.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeToxicity", + "type": "boolean", + "description": "Whether to evaluate and include toxicity levels in the analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeTopics", + "type": "boolean", + "description": "Whether to extract and include key topics and keywords from the message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeIntent", + "type": "boolean", + "description": "Whether to detect and report the intent of the message.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) of the message to assist accurate analysis.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object including fields such as sentiment (score and label), toxicity score (if requested), extracted topics, detected intent, and a summary string describing the message analysis." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing individual chat messages or user communications to understand emotional tone, detect harmful content, summarize key topics, or infer user intent. It supports moderation, user sentiment tracking, conversation summarization, and intent classification in messaging platforms.", + "limitations": "This tool does not provide full conversation context analysis, cannot replace comprehensive moderation systems alone, and may have reduced accuracy on very short, slang-heavy, or ambiguous messages.", + "examples": [ + "Analyze the sentiment and toxicity of a user message to detect potential abuse.", + "Extract key topics and intent from a customer support chat message to help route the request appropriately.", + "Determine if a message is positive, neutral, or negative to inform user mood tracking." + ] + }, + "tags": [ + "messaging", + "analysis", + "sentiment", + "toxicity", + "intent", + "topics", + "NLP", + "chat" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"I'm really unhappy with the delay in service. Can someone help?\",\"includeSentiment\":true,\"includeToxicity\":false,\"includeTopics\":true,\"includeIntent\":true,\"language\":\"en\"}", + "description": "Analyze a customer complaint message for sentiment, key topics, and intent detection." + }, + { + "inputJson": "{\"messageText\":\"Congrats on the new project! Looking forward to working together.\",\"includeSentiment\":true,\"includeToxicity\":false,\"includeTopics\":true,\"includeIntent\":false,\"language\":\"en\"}", + "description": "Analyze a positive, congratulatory message to identify sentiment and key topics." + }, + { + "inputJson": "{\"messageText\":\"You all are awful and incompetent!\",\"includeSentiment\":true,\"includeToxicity\":true,\"includeTopics\":false,\"includeIntent\":false,\"language\":\"en\"}", + "description": "Analyze a hostile message including toxicity detection to flag abusive language." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "messaging.formatEmail", + "description": "This tool formats email content according to specified parameters including subject, sender, recipients, body text, and optional attachments. It accepts inputs like subject line, from and to addresses, plain or HTML body content, and a list of attachments, then produces a structured email object ready for sending or further processing.", + "category": "messaging", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "fromAddress", + "type": "string", + "description": "The sender's email address.", + "required": true, + "defaultValue": "" + }, + { + "name": "toAddresses", + "type": "array", + "description": "List of recipient email addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccAddresses", + "type": "array", + "description": "List of CC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccAddresses", + "type": "array", + "description": "List of BCC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bodyText", + "type": "string", + "description": "The plain text version of the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "The HTML version of the email body, if any.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects, each with filename and content (base64 or URL).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "charset", + "type": "string", + "description": "Character set encoding of the email content, e.g., UTF-8.", + "required": false, + "defaultValue": "UTF-8" + } + ], + "returns": { + "type": "object", + "description": "A structured email object containing all input fields validated and organized for delivery or integration with email sending services." + }, + "aiAgent": { + "useCase": "Use this tool whenever an AI agent needs to programmatically construct a complete email structure, ensuring proper formatting of headers, recipients, body types (text and/or HTML), and attachments before sending or saving drafts. Especially useful when assembling emails from dynamic content or user inputs.", + "limitations": "This tool does not send or transmit emails; it only formats the email content. It cannot validate email address syntax beyond basic string checks nor handle delivery status or server responses.", + "examples": [ + "Format an email with subject, sender and multiple recipients with both plain text and HTML body.", + "Add attachments like PDFs or images encoded in base64 to the formatted email.", + "Format a copied email draft into a structured object for integration in an email client." + ] + }, + "tags": [ + "messaging", + "email", + "formatting", + "communication", + "attachments", + "html", + "automation" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Project Update\",\"fromAddress\":\"manager@example.com\",\"toAddresses\":[\"team@example.com\",\"lead@example.com\"],\"ccAddresses\":[\"hr@example.com\"],\"bodyText\":\"Please find the update on the project timeline.\",\"bodyHtml\":\"

Please find the update on the project timeline.

\",\"attachments\":[{\"filename\":\"timeline.pdf\",\"content\":\"base64encodedstringhere\"}]}", + "description": "Format an email with subject, multiple recipients, CC, plain text and HTML body, and one PDF attachment." + }, + { + "inputJson": "{\"subject\":\"Meeting Reminder\",\"fromAddress\":\"noreply@company.com\",\"toAddresses\":[\"employee@example.com\"],\"bodyText\":\"This is a reminder for your meeting scheduled tomorrow at 10 AM.\"}", + "description": "Format a simple email reminder with plain text body and single recipient." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "messaging.createText", + "description": "Creates a formatted text message for real-time messaging applications. Accepts plain text input and optional formatting parameters such as markdown support, emoji inclusion, and verbosity level. Outputs a structured message object ready for sending or further processing in chat integrations.", + "category": "messaging", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The main textual content of the message to create, in plain text.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableMarkdown", + "type": "boolean", + "description": "Whether to parse and apply basic markdown formatting to the text content (e.g., bold, italics).", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeEmojis", + "type": "boolean", + "description": "Whether to parse emoji codes in the text and convert them to Unicode emojis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the message; text will be truncated if exceeded.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "verbosityLevel", + "type": "string", + "description": "Level of detail for the message, such as 'short', 'normal', or 'detailed'. Affects message length and style.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created message, including formatted text and metadata such as length and formatting flags." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a chat-ready text message from raw or lightly formatted input, especially when preparing messages for messaging platforms supporting markdown and emoji. It helps standardize and format messages before sending.", + "limitations": "Does not support rich media content such as images or videos. Limited to text formatting and emoji parsing only.", + "examples": [ + "Create a text message with markdown enabled and emojis included.", + "Generate a brief chat message truncated to 200 characters.", + "Produce a detailed text message without markdown formatting." + ] + }, + "tags": [ + "messaging", + "text", + "chat", + "formatting", + "markdown", + "emoji", + "messageCreation" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Hello, team! Please review the *project update* attached.\",\"enableMarkdown\":true,\"includeEmojis\":true,\"maxLength\":500,\"verbosityLevel\":\"normal\"}", + "description": "Create a normal verbosity message with markdown formatting and emojis included." + }, + { + "inputJson": "{\"textContent\":\"Reminder: submit your timesheets.\",\"enableMarkdown\":false,\"includeEmojis\":false,\"maxLength\":100,\"verbosityLevel\":\"short\"}", + "description": "Create a short, plain text reminder message without markdown or emojis." + }, + { + "inputJson": "{\"textContent\":\"Detailed meeting summary: topics discussed, decisions made, and next steps.\",\"enableMarkdown\":true,\"includeEmojis\":false,\"maxLength\":1000,\"verbosityLevel\":\"detailed\"}", + "description": "Generate a longer, detailed message with markdown formatting but no emojis." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "email-communication.draftDocument", + "description": "Generates a professional email draft document based on provided subject, recipient info, and message details. Accepts inputs like recipient name, email subject, purpose, tone, and key points to include. Outputs a formatted email draft text suitable for review or sending.", + "category": "email-communication", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "The recipient's full name to personalize the email", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "The recipient's email address for contextual relevance", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The main subject line of the email", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "Brief description of the email's purpose or reason", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of key points or topics to cover in the email body", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the email (e.g., formal, casual, persuasive)", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a signature block at the end", + "required": false, + "defaultValue": "true" + }, + { + "name": "signatureName", + "type": "string", + "description": "Name to use in the signature if included", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email draft text and metadata" + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to create an initial email draft tailored to a particular recipient, purpose, and style. It helps automate personalized email drafting for outreach, follow-up, or information sharing scenarios, ensuring professionalism while saving user time.", + "limitations": "The tool does not send emails or manage inboxes; it only generates draft content. It cannot verify recipient email validity or adhere to specific compliance beyond tone guidance.", + "examples": [ + "Draft an email to a client introducing a new product in a professional tone.", + "Generate a follow-up email draft to a partner including key meeting points.", + "Create a casual inquiry email draft to a colleague asking for status update." + ] + }, + "tags": [ + "email", + "drafting", + "automation", + "communication", + "document", + "personalization", + "professional" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Jane Smith\",\"recipientEmail\":\"jane.smith@example.com\",\"subject\":\"Introductory Meeting Follow-up\",\"purpose\":\"Thank Jane for meeting and summarize key takeaways\",\"keyPoints\":[\"Thank you for your time\",\"Discussed potential collaboration\",\"Next steps scheduling\"],\"tone\":\"formal\",\"includeSignature\":true,\"signatureName\":\"John Doe\"}", + "description": "Draft a formal follow-up email to a business contact after a meeting." + }, + { + "inputJson": "{\"recipientName\":\"Tom\",\"recipientEmail\":\"tom@example.com\",\"subject\":\"Weekly Update\",\"purpose\":\"Provide weekly project status update\",\"keyPoints\":[\"Completed tasks\",\"Pending issues\",\"Request for feedback\"],\"tone\":\"casual\",\"includeSignature\":false,\"signatureName\":\"\"}", + "description": "Generate a casual weekly update email draft without signature." + }, + { + "inputJson": "{\"recipientName\":\"Dr. Lee\",\"recipientEmail\":\"dr.lee@university.edu\",\"subject\":\"Research Collaboration Opportunity\",\"purpose\":\"Propose joint research project and request meeting\",\"keyPoints\":[\"Project overview\",\"Mutual benefits\",\"Proposed timeline\"],\"tone\":\"formal\",\"includeSignature\":true,\"signatureName\":\"Alex Morgan\"}", + "description": "Create a professional email proposing a research collaboration with a formal tone and signature." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "email-communication.createOrder", + "description": "Creates a detailed email order message to be sent to customers or suppliers by processing order data inputs. Accepts order details including recipient email, product list, quantities, prices, and optional message template and shipping info; constructs a formatted email content string summarizing the order for communication purposes.", + "category": "email-communication", + "parameters": [ + { + "name": "recipientEmail", + "type": "string", + "description": "The email address of the primary recipient who will receive the order email.", + "required": true, + "defaultValue": "" + }, + { + "name": "orderId", + "type": "string", + "description": "Unique identifier for the order being communicated.", + "required": true, + "defaultValue": "" + }, + { + "name": "products", + "type": "array", + "description": "An array of products, each as an object with name (string), quantity (number), and unitPrice (number), representing the items in the order.", + "required": true, + "defaultValue": "" + }, + { + "name": "shippingAddress", + "type": "object", + "description": "The shipping address details including fields: recipientName, street, city, state, postalCode, and country, used to inform delivery info in the email.", + "required": false, + "defaultValue": "" + }, + { + "name": "orderDate", + "type": "string", + "description": "Date string indicating when the order was placed (e.g., ISO 8601 format).", + "required": false, + "defaultValue": "" + }, + { + "name": "customMessage", + "type": "string", + "description": "Optional personalized message to include in the email body for the recipient.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (e.g., USD, EUR) used for price display in the email, defaulting to USD.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated subject line and body text for the order email message, ready for sending through an email client or service." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a well-formatted email content representing an order summary for customers or suppliers based on structured order data. It simplifies composing the order message including product details, pricing, and shipping info to streamline email communications in e-commerce or procurement workflows.", + "limitations": "This tool only creates the email content and subject. It does not send emails, manage email delivery status, or handle replies/confirmations.", + "examples": [ + "Create an order confirmation email to send to a customer including product and shipping details.", + "Generate an order request email to a supplier with a list of requested goods and quantities.", + "Produce a summary email for internal stakeholders detailing a recent purchase order." + ] + }, + "tags": [ + "email", + "order", + "ecommerce", + "communication", + "automation", + "business", + "message-generation" + ], + "examples": [ + { + "inputJson": "{\"recipientEmail\":\"customer@example.com\",\"orderId\":\"ORD123456\",\"products\":[{\"name\":\"Widget A\",\"quantity\":3,\"unitPrice\":19.99},{\"name\":\"Gadget B\",\"quantity\":2,\"unitPrice\":29.5}],\"shippingAddress\":{\"recipientName\":\"John Doe\",\"street\":\"123 Elm St\",\"city\":\"Springfield\",\"state\":\"IL\",\"postalCode\":\"62704\",\"country\":\"USA\"},\"orderDate\":\"2024-06-01T10:00:00Z\",\"customMessage\":\"Thank you for your purchase!\",\"currency\":\"USD\"}", + "description": "Generate a customer order confirmation email with product list, quantities, prices, shipping address, and a thank you note." + }, + { + "inputJson": "{\"recipientEmail\":\"supplier@vendor.com\",\"orderId\":\"PO78910\",\"products\":[{\"name\":\"Component X\",\"quantity\":100,\"unitPrice\":5.0}],\"currency\":\"EUR\"}", + "description": "Create an order request email to a supplier for 100 units of Component X, prices in EUR." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "email-communication.createAlert", + "description": "Creates and sends a security alert email based on specified triggers, recipients, and alert content. Accepts parameters defining the alert subject, message body, recipient list, severity level, and optional attachments. Processes the input to format the alert email and initiates sending via configured email infrastructure. Returns a status confirmation including alert ID and sending result.", + "category": "email-communication", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "Subject line for the alert email", + "required": true, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content of the alert email, supporting plain text or HTML", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of email addresses (strings) to receive the alert", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the alert, e.g., 'low', 'medium', 'high', or 'critical'", + "required": false, + "defaultValue": "medium" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of file objects (with name and content) to attach to the email", + "required": false, + "defaultValue": "" + }, + { + "name": "sendImmediately", + "type": "boolean", + "description": "Flag indicating whether to send the alert immediately or schedule for later", + "required": false, + "defaultValue": "true" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "ISO 8601 datetime string for scheduled sending; used if sendImmediately is false", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the alertId (unique identifier), status (e.g., 'sent', 'scheduled'), and message describing the sending outcome" + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically create and dispatch security alert emails triggered by monitoring systems or manual requests. It helps communicate timely security incidents or warning notices to designated personnel with appropriate severity and attachments. Ideal for alert automation and rapid notification workflows.", + "limitations": "Does not handle email server configuration or authentication; requires underlying email infrastructure to be set up. Cannot analyze alerts or detect security issues, only formats and sends alert emails.", + "examples": [ + "Create and send a critical security breach alert to the security team immediately.", + "Schedule a medium severity alert email for the admin team with a log file attachment.", + "Send a low severity alert with customizable HTML content to multiple recipients." + ] + }, + "tags": [ + "email", + "security", + "alert", + "automation", + "notification", + "email-sending" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Critical Security Breach Detected\",\"messageBody\":\"A critical breach was detected in the network. Immediate action required.\",\"recipients\":[\"security@company.com\",\"admin@company.com\"],\"severity\":\"critical\",\"sendImmediately\":true}", + "description": "Send an immediate critical alert email to security and admin teams." + }, + { + "inputJson": "{\"subject\":\"Scheduled Security Alert\",\"messageBody\":\"This is a scheduled reminder of the weekly security audit.\",\"recipients\":[\"audit@company.com\"],\"severity\":\"medium\",\"sendImmediately\":false,\"scheduledTime\":\"2024-07-01T09:00:00Z\"}", + "description": "Schedule an alert email for future delivery to the audit team." + }, + { + "inputJson": "{\"subject\":\"Low Severity Alert\",\"messageBody\":\"Routine check completed with no issues.\",\"recipients\":[\"support@company.com\"],\"severity\":\"low\",\"attachments\":[{\"name\":\"report.pdf\",\"content\":\"\"}],\"sendImmediately\":true}", + "description": "Send a low severity alert immediately with an attached report." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "infrastructure-management.draftEmail", + "description": "This tool drafts professional emails related to infrastructure management tasks. It accepts input parameters including the subject, recipient details, context about the infrastructure issue or update, and tone preference. It processes these inputs to generate a clear, concise, and contextually appropriate email draft ready for review and sending.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "The name of the email recipient, used for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "The email address of the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Detailed information about the infrastructure update, issue, or request to include in the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the email (e.g., formal, informal, urgent).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Flag indicating whether to include action items or next steps in the email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "Optional list of additional recipient email addresses to CC.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted email subject, body text, and optionally formatted recipients lists for 'to' and 'cc'." + }, + "aiAgent": { + "useCase": "Use this tool when automating communication tasks about infrastructure changes, status updates, or incidents. Ideal for situations requiring clear and professional correspondence with teams, stakeholders, or clients regarding technical infrastructure management.", + "limitations": "This tool does not send emails or handle sensitive data directly; it only drafts textual emails. It cannot access external systems or email directories to verify addresses or fetch real-time infrastructure data.", + "examples": [ + "Draft a formal email to the cloud operations team updating them on a scheduled maintenance window.", + "Create an urgent email notifying the network team of detected outages and inviting immediate attention.", + "Generate a soft reminder email to stakeholders about upcoming infrastructure upgrades with requested approvals." + ] + }, + "tags": [ + "infrastructure", + "email", + "communication", + "automation", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Alice Johnson\",\"recipientEmail\":\"alice.johnson@example.com\",\"subject\":\"Scheduled Maintenance Notification\",\"context\":\"We will perform scheduled maintenance on the primary database server on June 15th between 2 AM and 4 AM UTC. During this period, the database services will be temporarily unavailable. Please plan your operations accordingly.\",\"tone\":\"formal\",\"includeActionItems\":true,\"ccRecipients\":[\"bob.smith@example.com\"]}", + "description": "Formal maintenance notification email to the database operations team with CC to the support manager." + }, + { + "inputJson": "{\"recipientName\":\"DevOps Team\",\"recipientEmail\":\"devops@example.com\",\"subject\":\"Immediate Action Required: Network Outage Detected\",\"context\":\"A critical network outage has been detected affecting multiple data centers. Immediate troubleshooting is required to identify and resolve the root cause.\",\"tone\":\"urgent\",\"includeActionItems\":true,\"ccRecipients\":[]}", + "description": "Urgent notification email to DevOps about a network outage requiring immediate response." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "infrastructure-management.buildServer", + "description": "This tool provisions and configures a new server instance based on specified parameters such as server type, CPU, memory, storage, operating system, and networking options. It accepts an infrastructure profile and setup preferences to automate server creation and returns details of the deployed server including its ID, IP address, and status.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type or flavor of the server (e.g. 't2.medium', 'm5.large') to specify CPU and memory configurations.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server (e.g. 'ubuntu-20.04', 'windows-server-2019').", + "required": true, + "defaultValue": "" + }, + { + "name": "storageGB", + "type": "number", + "description": "Amount of storage in gigabytes to allocate to the server's primary disk.", + "required": false, + "defaultValue": "50" + }, + { + "name": "networkId", + "type": "string", + "description": "Identifier of the network or VPC where the server will be deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "sshKeyName", + "type": "string", + "description": "Name of the SSH key to set up for secure access to the server.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoStart", + "type": "boolean", + "description": "Whether to start the server automatically after build completion.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs of tags to assign to the server resource for management and billing.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server's unique identifier, public and private IP addresses, current status (e.g. 'running', 'stopped'), and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically spin up a new server in a cloud or virtualized environment with custom configurations as part of infrastructure automation, scaling, or deployment workflows. Ideal for DevOps automation, cloud provisioning, or dynamic infrastructure management.", + "limitations": "This tool does not handle complex multi-server orchestration or configuration management beyond initial setup. It assumes provided network IDs and SSH keys are valid and available. Server image and flavor options depend on target infrastructure provider capabilities.", + "examples": [ + "Create a new Ubuntu server with 4 CPUs, 16GB memory, and 100GB storage in a specific VPC.", + "Provision a Windows server instance with a given SSH key and tags for environment identification.", + "Build a server configured to auto-start on deployment with specified network and key settings." + ] + }, + "tags": [ + "infrastructure", + "server", + "provisioning", + "cloud", + "automation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"m5.large\",\"operatingSystem\":\"ubuntu-20.04\",\"storageGB\":100,\"networkId\":\"vpc-12345\",\"sshKeyName\":\"prod-key\",\"autoStart\":true,\"tags\":{\"environment\":\"production\",\"project\":\"webapp\"}}", + "description": "Provision a production Ubuntu server with specified sizing, network, SSH key, and tags." + }, + { + "inputJson": "{\"serverType\":\"t3.medium\",\"operatingSystem\":\"windows-server-2019\",\"networkId\":\"vpc-67890\",\"autoStart\":false}", + "description": "Deploy a Windows server without auto-start in a given VPC, default storage size, no SSH key." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "infrastructure-management.buildCommit", + "description": "Builds a commit object representing changes to infrastructure-as-code files, taking inputs like commit message, author info, branch, and file changes. Processes these inputs to compose a structured commit with diffs and metadata, outputting the commit id, status, and summary for integration with infrastructure management workflows.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "The message describing the commit purpose and changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author making the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email of the author making the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "branch", + "type": "string", + "description": "Target branch for the commit.", + "required": true, + "defaultValue": "main" + }, + { + "name": "fileChanges", + "type": "array", + "description": "Array of objects describing file changes; each must include file path, change type (added, modified, deleted), and content when applicable.", + "required": true, + "defaultValue": "" + }, + { + "name": "parentCommitId", + "type": "string", + "description": "The ID of the parent commit, if applicable, to maintain history linkage.", + "required": false, + "defaultValue": "" + }, + { + "name": "signCommit", + "type": "boolean", + "description": "Flag indicating whether to cryptographically sign the commit for authenticity.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing commitId (string), status (success/failure), summary (text description), and optional error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create a commit in an infrastructure-as-code repository, such as automating deployment changes or updating configuration files. It bundles file diffs and metadata into a structured commit for version control integration.", + "limitations": "This tool does not push commits to remote repositories nor handle merge conflicts. It only constructs commit objects locally; actual repository operations must be performed by separate tools.", + "examples": [ + "Create a commit on branch 'feature-xyz' adding a new Terraform file to deploy a database cluster", + "Build a signed commit updating Kubernetes manifests on branch 'prod' with precise author info", + "Generate a commit deleting deprecated config files on branch 'staging' without signing" + ] + }, + "tags": [ + "infrastructure", + "commit", + "version-control", + "automation", + "code-management" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Add Terraform module for VPC setup\",\"authorName\":\"Alice Dev\",\"authorEmail\":\"alice@example.com\",\"branch\":\"main\",\"fileChanges\":[{\"filePath\":\"modules/vpc/main.tf\",\"changeType\":\"added\",\"content\":\"resource \\\"aws_vpc\\\" \\\"main\\\" { cidr_block = \\\"10.0.0.0/16\\\" }\"}],\"signCommit\":true}", + "description": "Adding a new Terraform module file for VPC setup on main branch with commit signing enabled." + }, + { + "inputJson": "{\"commitMessage\":\"Update Kubernetes deployment replicas\",\"authorName\":\"Bob Ops\",\"authorEmail\":\"bob@example.com\",\"branch\":\"prod\",\"fileChanges\":[{\"filePath\":\"deployments/backend.yaml\",\"changeType\":\"modified\",\"content\":\"replicas: 5\"}]}", + "description": "Modifying an existing Kubernetes deployment to scale replicas in the production branch." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "infrastructure-management.buildTest", + "description": "This tool accepts configuration and code parameters to programmatically generate and build automated test scripts for infrastructure components such as cloud deployments, configurations, and physical servers. It processes input definitions of infrastructure elements and outputs a ready-to-execute test suite validating desired properties like connectivity, performance, and compliance.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "testName", + "type": "string", + "description": "Name of the test suite to build", + "required": true, + "defaultValue": "" + }, + { + "name": "infrastructureType", + "type": "string", + "description": "Type of infrastructure (e.g., 'cloud', 'physical', 'hybrid') to target in the test", + "required": true, + "defaultValue": "" + }, + { + "name": "components", + "type": "array", + "description": "List of infrastructure components (e.g., servers, services) with their configurations to include in the test", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Testing framework to use for generated tests (e.g., 'pytest', 'robotframework')", + "required": false, + "defaultValue": "pytest" + }, + { + "name": "testCases", + "type": "array", + "description": "Array specifying desired test cases and validations, such as connectivity checks, load tests, and compliance verifications", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output test files format or language (e.g., 'python', 'bash')", + "required": false, + "defaultValue": "python" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test suite code as strings keyed by filename, and a summary of the test coverage and validations included" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create automated test suites based on infrastructure configurations or deployment definitions to validate infrastructure integrity and performance automatically. Ideal for continuous integration pipelines and automated validation workflows in infrastructure management.", + "limitations": "This tool does not execute the tests nor interact with live infrastructure. It generates test code but requires separate test execution environments and runtime context. It cannot infer unknown infrastructure components without defined input.", + "examples": [ + "Generate connectivity and performance tests for a cloud deployment with multiple services", + "Create compliance validation tests for physical servers’ configurations", + "Build load testing scripts targeting hybrid cloud infrastructure components" + ] + }, + "tags": [ + "infrastructure", + "testing", + "automation", + "cloud", + "physical", + "validation" + ], + "examples": [ + { + "inputJson": "{\"testName\":\"CloudDeploymentTest\",\"infrastructureType\":\"cloud\",\"components\":[{\"name\":\"web-server\",\"ip\":\"10.0.0.10\"},{\"name\":\"db-server\",\"ip\":\"10.0.0.11\"}],\"testFramework\":\"pytest\",\"testCases\":[{\"type\":\"connectivity\",\"target\":\"web-server\"},{\"type\":\"performance\",\"target\":\"db-server\"}],\"outputFormat\":\"python\"}", + "description": "Build a Python pytest suite to test connectivity and performance on cloud web and DB servers." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "infrastructure-management.generateParagraph", + "description": "Generates a concise, informative paragraph describing a specific infrastructure component or concept based on provided keywords and context. Accepts keywords, optional detail level, and infrastructure type to produce tailored explanatory text useful for documentation, reports, or operational manuals.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of keywords or phrases related to the infrastructure component or concept to include in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "infrastructureType", + "type": "string", + "description": "Type of infrastructure relevant to the content, e.g., cloud, network, physical, or general. Helps contextualize the generated paragraph.", + "required": false, + "defaultValue": "general" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Desired granularity of the paragraph content. Options include 'summary', 'detailed', or 'technical'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the paragraph, such as 'engineers', 'managers', or 'general users' to adjust complexity and terminology.", + "required": false, + "defaultValue": "engineers" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph as a string under the key 'paragraph'." + }, + "aiAgent": { + "useCase": "Use when needing to programmatically generate human-readable descriptive paragraphs for infrastructure components or concepts to support documentation, onboarding, or reporting within infrastructure management contexts. It helps automate content creation based on specified keywords and context parameters.", + "limitations": "Cannot verify technical accuracy or replace expert review. May produce generic or incomplete paragraphs if keywords or context are insufficient.", + "examples": [ + "Generate a summary paragraph explaining cloud load balancers for engineers.", + "Create a detailed paragraph describing physical server rack cooling methods for managers.", + "Produce a technical description of network segmentation based on given keywords." + ] + }, + "tags": [ + "infrastructure", + "documentation", + "content-generation", + "cloud", + "network", + "physical", + "automation" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"load balancer\",\"cloud\",\"high availability\"],\"infrastructureType\":\"cloud\",\"detailLevel\":\"summary\",\"targetAudience\":\"engineers\"}", + "description": "Generate a summary paragraph describing cloud load balancers focusing on high availability for engineers." + }, + { + "inputJson": "{\"keywords\":[\"server rack\",\"cooling\",\"air flow\"],\"infrastructureType\":\"physical\",\"detailLevel\":\"detailed\",\"targetAudience\":\"managers\"}", + "description": "Produce a detailed paragraph about server rack cooling and air flow directed at management." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "infrastructure-management.createService", + "description": "Creates a new infrastructure service within a cloud or on-premises environment. Accepts parameters specifying service type, configuration details, resource allocations, and optional tags. Provisions the service accordingly, returning deployment status and service identifiers.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "Name identifier for the new service to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceType", + "type": "string", + "description": "Type of service to create (e.g., web-server, database, cache).", + "required": true, + "defaultValue": "" + }, + { + "name": "configuration", + "type": "object", + "description": "JSON object specifying service-specific configuration parameters such as version, environment variables, and custom settings.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "resourceAllocation", + "type": "object", + "description": "Object defining resource limits and requests, such as CPU cores, memory in MB, and storage size in GB.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region or datacenter location where to deploy the service.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags to assign to the service for categorization and management purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "autoScale", + "type": "boolean", + "description": "Flag indicating whether to enable autoscaling based on load.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the created service, including unique service ID, deployment status, and any error messages if creation failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a new infrastructure service, specifying type, configuration, and resource needs for automated environment setup and deployment orchestration.", + "limitations": "This tool does not handle the decommissioning or update of existing services. It also cannot configure services beyond initial provisioning parameters.", + "examples": [ + "Create a web-server service with 2 CPU cores and 4GB RAM in us-east region.", + "Deploy a database instance configured with version 12.5 and tags ['production','db'], enabling auto scaling.", + "Provision a caching layer service named 'app-cache' with specific environment variables and resource limits." + ] + }, + "tags": [ + "infrastructure", + "service", + "create", + "provisioning", + "cloud", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"web-app-01\",\"serviceType\":\"web-server\",\"configuration\":{\"version\":\"1.18\",\"env\":{\"NODE_ENV\":\"production\"}},\"resourceAllocation\":{\"cpuCores\":2,\"memoryMb\":4096},\"region\":\"us-east-1\",\"tags\":[\"frontend\",\"production\"],\"autoScale\":true}", + "description": "Create a web server service named 'web-app-01' in the US East region with 2 CPU cores, 4GB RAM, environment variable set, and autoscaling enabled." + }, + { + "inputJson": "{\"serviceName\":\"db-primary\",\"serviceType\":\"database\",\"configuration\":{\"dbVersion\":\"12.5\"},\"resourceAllocation\":{\"cpuCores\":4,\"memoryMb\":8192,\"storageGb\":100},\"region\":\"eu-west-2\",\"tags\":[\"production\",\"primary-db\"],\"autoScale\":false}", + "description": "Provision a primary database instance with specific version, 4 CPU cores, 8GB RAM, 100GB storage in EU West region without autoscaling." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "infrastructure-management.createContainer", + "description": "Creates and deploys a new container instance in a specified cloud or on-premises infrastructure. Accepts container image details, resource constraints, networking settings, and environment variables as input, then provisions the container accordingly. Returns deployment metadata including container ID, status, and endpoint information.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "containerImage", + "type": "string", + "description": "The container image name and tag to deploy (e.g., nginx:latest).", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuLimit", + "type": "number", + "description": "Maximum CPU units allocated to the container (e.g., 0.5 for half CPU).", + "required": false, + "defaultValue": "1" + }, + { + "name": "memoryLimitMb", + "type": "number", + "description": "Maximum memory in megabytes allocated to the container.", + "required": false, + "defaultValue": "512" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set inside the container.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "portMappings", + "type": "array", + "description": "List of port mappings to expose, each element an object with containerPort and hostPort.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "networkMode", + "type": "string", + "description": "Network mode for the container (e.g., bridge, host, none).", + "required": false, + "defaultValue": "bridge" + }, + { + "name": "restartPolicy", + "type": "string", + "description": "Container restart policy (no, on-failure, always, unless-stopped).", + "required": false, + "defaultValue": "always" + }, + { + "name": "labels", + "type": "object", + "description": "Optional metadata labels to apply to the container for identification or management.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Deployment result including container ID, current status, assigned ports, and potential errors." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically launch containerized applications within infrastructure environments. Suitable for automating deployments, scaling services, or initializing test environments with specific configurations.", + "limitations": "This tool does not handle the orchestration of multi-container applications or management of container lifecycles beyond creation. It assumes the infrastructure environment is pre-configured and accessible.", + "examples": [ + "Deploy a web server container running nginx with 0.5 CPU and 256MB RAM, exposing port 80.", + "Create a container using a custom app image with specific environment variables and restart policy set to 'on-failure'.", + "Launch a container with host networking mode and custom port mappings." + ] + }, + "tags": [ + "infrastructure", + "container", + "deployment", + "cloud", + "automation" + ], + "examples": [ + { + "inputJson": "{\"containerImage\":\"nginx:latest\",\"cpuLimit\":0.5,\"memoryLimitMb\":256,\"portMappings\":[{\"containerPort\":80,\"hostPort\":8080}],\"environmentVariables\":{},\"networkMode\":\"bridge\",\"restartPolicy\":\"always\",\"labels\":{\"app\":\"webserver\"}}", + "description": "Deploy an nginx web server container with limited CPU and memory, exposing container port 80 to host port 8080." + }, + { + "inputJson": "{\"containerImage\":\"myorg/customapp:v2\",\"cpuLimit\":1,\"memoryLimitMb\":1024,\"environmentVariables\":{\"ENV\":\"production\",\"DEBUG\":\"false\"},\"restartPolicy\":\"on-failure\"}", + "description": "Create a custom application container with environment variables and a restart policy to retry on failure." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "infrastructure-management.createInvoice", + "description": "Creates a detailed invoice document for cloud or physical infrastructure services. Accepts client and service details including usage metrics, pricing, taxes, and payment terms; processes them to generate a structured invoice with line items, totals, and formatted output ready for billing.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "clientId", + "type": "string", + "description": "Unique identifier for the client to whom the invoice is issued", + "required": true, + "defaultValue": "" + }, + { + "name": "billingPeriodStart", + "type": "string", + "description": "Start date of the billing period in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "billingPeriodEnd", + "type": "string", + "description": "End date of the billing period in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceItems", + "type": "array", + "description": "List of service items including description, quantity, unitPrice, and optionally usage metrics", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a decimal (e.g., 0.07 for 7%)", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code ISO 4217 format for the invoice amounts (e.g., USD, EUR)", + "required": false, + "defaultValue": "USD" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Payment terms description (e.g., Net 30, Due on receipt)", + "required": false, + "defaultValue": "Net 30" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date the invoice is issued in ISO 8601 format (YYYY-MM-DD)", + "required": false, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or comments to include on the invoice", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An invoice object with generated invoiceId, clientId, invoiceDate, billing period, line items with calculated totals, tax amounts, total due, currency, payment terms, and any notes" + }, + "aiAgent": { + "useCase": "Use this tool when generating invoices for infrastructure-related services or resource usage for clients, such as cloud compute, storage, networking, or physical hardware rentals. It helps automate billing document creation from service data and pricing details.", + "limitations": "This tool does not handle payment processing or client account management. It cannot fetch client data or service usage autonomously; all necessary input must be provided. It does not produce formatted PDFs but returns structured invoice data.", + "examples": [ + "Create an invoice for client ID 'C1234' for the usage period March 1-31, 2024 including compute and storage charges with a 10% tax rate in USD.", + "Generate an invoice with payment terms 'Due on receipt' and include notes about a service discount.", + "Produce an invoice with multiple service line items including quantity and unit price for billing." + ] + }, + "tags": [ + "infrastructure", + "billing", + "invoice", + "cloud", + "physical", + "document", + "automation", + "finance" + ], + "examples": [ + { + "inputJson": "{\"clientId\": \"C1234\", \"billingPeriodStart\": \"2024-03-01\", \"billingPeriodEnd\": \"2024-03-31\", \"serviceItems\": [{\"description\": \"Cloud Compute Hours\", \"quantity\": 120, \"unitPrice\": 0.15}, {\"description\": \"Storage GB-Month\", \"quantity\": 500, \"unitPrice\": 0.05}], \"taxRate\": 0.1, \"currency\": \"USD\", \"paymentTerms\": \"Net 30\", \"invoiceDate\": \"2024-04-01\", \"notes\": \"Thank you for your business.\"}", + "description": "Invoice for client C1234 for March 2024 cloud compute and storage usage with 10% tax." + }, + { + "inputJson": "{\"clientId\": \"C5678\", \"billingPeriodStart\": \"2024-05-01\", \"billingPeriodEnd\": \"2024-05-15\", \"serviceItems\": [{\"description\": \"Physical Server Rental\", \"quantity\": 15, \"unitPrice\": 25}], \"taxRate\": 0, \"currency\": \"EUR\", \"paymentTerms\": \"Due on receipt\", \"invoiceDate\": \"2024-05-16\", \"notes\": \"Please pay promptly.\"}", + "description": "Invoice for physical server rental for first half of May 2024 with no tax in EUR currency." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "infrastructure-management.createModule", + "description": "Creates a reusable infrastructure module by accepting configuration inputs such as resource definitions, variables, and outputs. The tool processes these inputs to generate a standardized module template file suitable for managing cloud or physical infrastructure as code, enabling infrastructure reuse and versioning.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name identifier for the infrastructure module to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceDefinitions", + "type": "array", + "description": "An array of objects defining the resources, including type and configuration parameters, to be included in the module.", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs of variable names and their default values or types used within the module for parameterization.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputs", + "type": "object", + "description": "Key-value pairs defining outputs of the module, specifying output names and the expressions or attributes to expose.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "moduleDescription", + "type": "string", + "description": "A brief textual description of the purpose or functionality of the module.", + "required": false, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "The version tag or number for the module to enable versioning and tracking.", + "required": false, + "defaultValue": "1.0.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated module template file content as a string and metadata including the module name and version." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the creation of modular, reusable infrastructure-as-code components to accelerate deployment pipelines and enforce organization-wide standards. It helps AI agents generate standardized modules from resource specifications without manual coding.", + "limitations": "This tool does not validate the correctness of resource configurations against specific cloud provider schemas or guarantee syntactic correctness beyond template generation.", + "examples": [ + "Create a module named 'webServer' with resources for EC2 instances and security groups.", + "Generate a Terraform module for a database cluster including variables for node count and outputs for connection strings.", + "Produce a reusable infrastructure module from given resource definitions with version tagging." + ] + }, + "tags": [ + "infrastructure", + "module", + "automation", + "infrastructure-as-code", + "cloud", + "template-generation", + "devops" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"webServer\",\"resourceDefinitions\":[{\"type\":\"aws_instance\",\"name\":\"web\",\"properties\":{\"ami\":\"ami-123456\",\"instance_type\":\"t2.micro\"}},{\"type\":\"aws_security_group\",\"name\":\"web_sg\",\"properties\":{\"ingress\":[{\"protocol\":\"tcp\",\"from_port\":80,\"to_port\":80,\"cidr_blocks\":[\"0.0.0.0/0\"]}]}}],\"variables\":{\"instance_count\":\"number\"},\"outputs\":{\"instance_ids\":\"aws_instance.web.*.id\"},\"moduleDescription\":\"A module for deploying web servers with security group.\",\"version\":\"1.2.0\"}", + "description": "Create a module named 'webServer' with EC2 instance and security group resources, with variables and outputs, version 1.2.0." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "monitoring.composeReport", + "description": "Generates a comprehensive monitoring report by aggregating and analyzing system and application performance data from given sources over a specified time range. Accepts input data sources and parameters, processes metrics and logs, then outputs a structured report summarizing key performance indicators, trends, anomalies, and recommendations.", + "category": "monitoring", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of monitoring data source identifiers (e.g., metric servers, log aggregators) to include in the report", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "Start timestamp (ISO 8601) for the data range in the report", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End timestamp (ISO 8601) for the data range in the report", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the generated report, e.g., pdf, html, json", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include performance improvement recommendations in the report", + "required": false, + "defaultValue": "true" + }, + { + "name": "aggregateBy", + "type": "string", + "description": "Granularity level for data aggregation: e.g., hourly, daily, weekly", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "Structured report containing summary metrics, detailed analysis per data source, detected anomalies, performance trends, and optional recommendations, serialized in the chosen report format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a periodic or on-demand monitoring report combining multiple sources of system and application performance data for assessment, decision-making, or auditing. It supports flexible time ranges, data aggregation, and output format options to tailor reports for different stakeholders.", + "limitations": "This tool does not collect raw monitoring data itself; it requires pre-existing accessible data sources. It also does not perform real-time alerting or live monitoring, focusing instead on retrospective report composition.", + "examples": [ + "Generate a daily performance report for the last week from CPU, memory, and application logs in PDF format.", + "Create an HTML report including anomaly detection and recommendations for the past 24 hours from specified monitoring servers.", + "Produce a JSON formatted weekly summary report aggregated by day for network and database performance metrics." + ] + }, + "tags": [ + "monitoring", + "reporting", + "performance", + "aggregation", + "analysis", + "system", + "application", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[\"cpuMetrics\",\"appLogs\"],\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T23:59:59Z\",\"reportFormat\":\"pdf\",\"includeRecommendations\":true,\"aggregateBy\":\"daily\"}", + "description": "Compose a detailed PDF report covering CPU and application log data over one week, aggregated daily, with recommendations." + }, + { + "inputJson": "{\"dataSources\":[\"networkStats\",\"dbMetrics\"],\"startTime\":\"2024-06-10T00:00:00Z\",\"endTime\":\"2024-06-10T23:59:59Z\",\"reportFormat\":\"html\",\"includeRecommendations\":false,\"aggregateBy\":\"hourly\"}", + "description": "Generate an HTML report for network and database metrics on a specific day, aggregated hourly, excluding recommendations." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "monitoring.renderDocument", + "description": "This tool accepts structured performance monitoring data along with a template specification and renders a formatted document report. It processes input such as JSON performance metrics and custom templates to produce documents in formats like PDF or HTML, summarizing system and application monitoring results.", + "category": "monitoring", + "parameters": [ + { + "name": "performanceData", + "type": "object", + "description": "Structured JSON object containing system or application performance metrics to be included in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "Template identifier or string that defines the layout and style of the document report.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format, e.g., 'pdf', 'html', or 'docx'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag indicating whether to include graphical charts representing performance data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the rendered document report.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to include in the document metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered document as a base64 encoded string and its MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a professional, formatted performance monitoring report document from raw monitoring data and user-defined templates. Helpful for sharing or archiving performance summaries in portable formats like PDF or HTML.", + "limitations": "This tool does not perform data collection or analysis, only renders provided data into documents. It cannot dynamically fetch monitoring data or generate templates internally.", + "examples": [ + "Render a PDF report summarizing CPU and memory usage for last week using a corporate template.", + "Generate an HTML performance summary including charts for application response times.", + "Create a DOCX document report titled 'Monthly Server Metrics' authored by 'Operations Team'." + ] + }, + "tags": [ + "monitoring", + "rendering", + "reporting", + "performance", + "document", + "pdf", + "html", + "charts" + ], + "examples": [ + { + "inputJson": "{\"performanceData\":{\"cpuUsage\":75.4,\"memoryUsage\":62.1,\"uptime\":123456},\"template\":\"corporateTemplate\",\"outputFormat\":\"pdf\",\"includeCharts\":true,\"title\":\"Weekly Performance Report\",\"author\":\"SysOps Team\"}", + "description": "Render a PDF report from monitoring data with charts using a corporate template and custom title/author." + }, + { + "inputJson": "{\"performanceData\":{\"responseTimes\":{\"avg\":180,\"p95\":300}},\"template\":\"simpleSummary\",\"outputFormat\":\"html\",\"includeCharts\":false}", + "description": "Generate a simple HTML document summarizing application response times without charts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "monitoring.createAlert", + "description": "Creates a monitoring alert for system or application performance metrics based on specified conditions. Accepts inputs defining the alert name, monitored metric, threshold values, comparison operators, evaluation period, notification channels, and severity level. Processes these inputs to configure and register an alert that triggers notifications when conditions are met, returning alert configuration details including a unique alert ID.", + "category": "monitoring", + "parameters": [ + { + "name": "alertName", + "type": "string", + "description": "The user-friendly name for the alert to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "The name or identifier of the system or application metric to monitor (e.g., CPU usage, memory consumption).", + "required": true, + "defaultValue": "" + }, + { + "name": "threshold", + "type": "number", + "description": "The numeric threshold value which, when crossed, triggers the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "comparisonOperator", + "type": "string", + "description": "The operator to compare the metric against the threshold (e.g., '>', '<', '>=', '<=').", + "required": true, + "defaultValue": ">" + }, + { + "name": "evaluationPeriod", + "type": "number", + "description": "The duration in seconds during which the metric must satisfy the condition to trigger alert, preventing short spikes from triggering alerts.", + "required": true, + "defaultValue": "300" + }, + { + "name": "notificationChannels", + "type": "array", + "description": "List of notification channel identifiers (e.g., emails, SMS, webhook URLs) to send alerts to upon trigger.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "severity", + "type": "string", + "description": "The severity level of the alert such as 'info', 'warning', 'critical'.", + "required": false, + "defaultValue": "warning" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing details of the created alert including alertId, alertName, metric, threshold, condition, evaluationPeriod, notificationChannels, severity and creationTimestamp." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create monitoring alerts in environments where performance metrics need to be tracked and notifications dispatched upon threshold breaches. Ideal for automated monitoring configuration, dynamic alert adjustments, or provisioning alerts in new deployments.", + "limitations": "This tool does not perform actual metric collection or alert evaluation; it solely configures alert definitions. It also does not guarantee notification delivery as that depends on external channels.", + "examples": [ + "Create an alert when CPU usage exceeds 80% for more than 5 minutes, notify the operations team.", + "Set up a critical alert for memory usage above 90% with SMS and email notifications.", + "Add a warning alert for disk space below 10% with email notification only." + ] + }, + "tags": [ + "monitoring", + "alerting", + "performance", + "automation", + "notification", + "system", + "application" + ], + "examples": [ + { + "inputJson": "{\"alertName\":\"High CPU Usage\",\"metric\":\"cpuUsage\",\"threshold\":80,\"comparisonOperator\":\">\",\"evaluationPeriod\":300,\"notificationChannels\":[\"ops-team@example.com\",\"sms:+1234567890\"],\"severity\":\"critical\"}", + "description": "Create an alert for CPU usage exceeding 80% sustained for 5 minutes with critical severity and notify by email and SMS." + }, + { + "inputJson": "{\"alertName\":\"Low Disk Space\",\"metric\":\"diskFreePercent\",\"threshold\":10,\"comparisonOperator\":\"<\",\"evaluationPeriod\":600,\"notificationChannels\":[\"admin@example.com\"],\"severity\":\"warning\"}", + "description": "Create a warning alert for disk free space below 10% for 10 minutes, notifying admins by email only." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "monitoring.createConfig", + "description": "This tool generates a monitoring configuration file based on provided parameters such as monitored services, metrics, alert rules, and notification settings. It accepts input detailing these aspects, processes them to build a valid structured configuration (e.g., YAML or JSON), and outputs the ready-to-use config content as a string.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoredServices", + "type": "array", + "description": "List of service names or identifiers to be monitored, e.g., ['web-server', 'database'].", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Array of metric names to track for each service, e.g., ['cpu_usage', 'memory_usage'].", + "required": true, + "defaultValue": "" + }, + { + "name": "alertRules", + "type": "array", + "description": "List of alert rule objects defining conditions, thresholds, and severities for triggering alerts.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notificationChannels", + "type": "array", + "description": "List of notification channel configurations (e.g., email addresses, webhook URLs) to send alerts to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "configFormat", + "type": "string", + "description": "Desired output format of the configuration file, such as 'yaml' or 'json'.", + "required": false, + "defaultValue": "yaml" + }, + { + "name": "includeDefaults", + "type": "boolean", + "description": "Whether to include default monitoring settings and thresholds in the configuration.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing two fields: 'configContent' with the generated configuration file content as a string, and 'format' indicating the configuration file format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or update monitoring configuration files programmatically based on dynamic service and metric specifications, including alerting settings. It aids in automating deployment and updates of monitoring setups across environments.", + "limitations": "This tool generates configuration content but does not validate against all monitoring system schemas or deploy the configuration to monitoring infrastructure.", + "examples": [ + "Generate a monitoring config for webserver and database tracking CPU and memory with alert rules for high usage.", + "Create a JSON format config with custom notification channels for a microservices environment.", + "Produce a config with default settings included for common metrics monitoring." + ] + }, + "tags": [ + "monitoring", + "configuration", + "automation", + "alerting", + "metrics", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"monitoredServices\":[\"web-server\",\"database\"],\"metrics\":[\"cpu_usage\",\"memory_usage\"],\"alertRules\":[{\"metric\":\"cpu_usage\",\"threshold\":80,\"duration\":\"5m\",\"severity\":\"critical\"}],\"notificationChannels\":[{\"type\":\"email\",\"address\":\"ops@example.com\"}],\"configFormat\":\"yaml\",\"includeDefaults\":true}", + "description": "Generate YAML config to monitor CPU and memory for web-server and database, with a critical alert for CPU usage over 80%, sending alerts by email." + }, + { + "inputJson": "{\"monitoredServices\":[\"auth-service\"],\"metrics\":[\"request_latency\"],\"alertRules\":[],\"notificationChannels\":[],\"configFormat\":\"json\",\"includeDefaults\":false}", + "description": "Generate JSON config monitoring request latency of auth-service without alert rules or notifications, excluding default settings." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "compliance-management.uploadDocument", + "description": "Uploads a compliance-related document to the management system. Accepts document file data and metadata, validates required input, processes storage, and returns confirmation and document ID for tracking within compliance workflows.", + "category": "compliance-management", + "parameters": [ + { + "name": "documentName", + "type": "string", + "description": "The name/title of the compliance document being uploaded", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type/category of the compliance document (e.g., Policy, Audit Report)", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "Base64-encoded content of the document file to be uploaded", + "required": true, + "defaultValue": "" + }, + { + "name": "uploadedBy", + "type": "string", + "description": "Username or identifier of the user uploading the document", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags or keywords associated with the document for easier searching", + "required": false, + "defaultValue": "[]" + }, + { + "name": "confidential", + "type": "boolean", + "description": "Indicates if the document contains confidential information requiring restricted access", + "required": false, + "defaultValue": "false" + }, + { + "name": "uploadTimestamp", + "type": "string", + "description": "ISO8601 formatted timestamp of when the document is uploaded; if empty, server sets current time", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Confirmation data including unique document ID, status message, and metadata about the upload" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to help a user upload documents related to regulatory compliance, including policies, audit reports, or certifications, ensuring proper metadata is attached for easy retrieval and auditing. It supports file content encoding and metadata tagging for comprehensive document management workflows.", + "limitations": "This tool does not perform content validation against specific compliance regulations, nor does it parse or analyze the document’s internal content for policy adherence.", + "examples": [ + "Upload a company's updated privacy policy document with confidential tag included.", + "Submit an audit report file with relevant document type and uploader information.", + "Add ISO certification documents tagged under multiple compliance categories for system archival." + ] + }, + "tags": [ + "compliance", + "document", + "upload", + "file-management", + "regulatory", + "policy" + ], + "examples": [ + { + "inputJson": "{\"documentName\":\"Data Privacy Policy\",\"documentType\":\"Policy\",\"fileContentBase64\":\"VGhpcyBpcyBhIHRlc3QgZmlsZSBjb250ZW50Lg==\",\"uploadedBy\":\"jdoe\",\"tags\":[\"privacy\",\"data\",\"policy\"],\"confidential\":true}", + "description": "Uploading a confidential data privacy policy document with specific tags and uploader ID." + }, + { + "inputJson": "{\"documentName\":\"2023 Q1 Audit Report\",\"documentType\":\"Audit Report\",\"fileContentBase64\":\"QXVkaXQgcmVwb3J0IGNvbnRlbnQgdGVzdCBmaWxlLg==\",\"uploadedBy\":\"audit_team\"}", + "description": "Uploading a quarterly audit report document with uploader information but no tags or confidentiality." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "compliance-management.createText", + "description": "Creates compliance-related text documents based on provided regulatory topics, jurisdiction, and document type. Accepts inputs such as compliance area, jurisdiction, purpose, and tone, and generates clear, formatted text that addresses specified compliance requirements, aiding regulatory adherence and documentation preparation.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceArea", + "type": "string", + "description": "The specific area of compliance to address (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The legal jurisdiction or region (e.g., EU, US, California) for regulation applicability.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of compliance document to generate (e.g., policy, guideline, summary).", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "The intended purpose or context of the document (e.g., internal training, external audit).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the generated text (e.g., formal, concise, explanatory).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "additionalContext", + "type": "string", + "description": "Any additional context or specifications to tailor the compliance text output.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated compliance text document, including title, body text, and metadata such as compliance area, jurisdiction, and document type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate compliance-related textual content customized for specific regulatory areas and jurisdictions. It helps automate the creation of policies, guidelines, or summaries for compliance management, ensuring documents align with requested compliance requirements and tones.", + "limitations": "The tool cannot provide legally binding advice or certify regulatory compliance; it generates informative text based on input parameters and does not replace professional legal consultation.", + "examples": [ + "Create a GDPR compliance policy document for the EU jurisdiction with a formal tone.", + "Generate a HIPAA guideline summary for internal training use in the US healthcare sector.", + "Produce a California privacy regulation compliance overview with an explanatory tone for external audit purposes." + ] + }, + "tags": [ + "compliance", + "text-generation", + "policy", + "regulatory", + "documentation", + "legal", + "automation" + ], + "examples": [ + { + "inputJson": "{\"complianceArea\":\"GDPR\",\"jurisdiction\":\"EU\",\"documentType\":\"policy\",\"purpose\":\"internal training\",\"tone\":\"formal\",\"additionalContext\":\"focus on data protection measures\"}", + "description": "Generating a formal GDPR compliance policy document for internal training with emphasis on data protection." + }, + { + "inputJson": "{\"complianceArea\":\"HIPAA\",\"jurisdiction\":\"US\",\"documentType\":\"guideline\",\"purpose\":\"external audit\",\"tone\":\"concise\",\"additionalContext\":\"highlight patient data security protocols\"}", + "description": "Creating a concise HIPAA guideline document aimed at external audits focused on patient data security protocols." + }, + { + "inputJson": "{\"complianceArea\":\"CCPA\",\"jurisdiction\":\"California\",\"documentType\":\"summary\",\"purpose\":\"compliance overview\",\"tone\":\"explanatory\",\"additionalContext\":\"include recent amendments\"}", + "description": "Producing an explanatory summary of California Consumer Privacy Act compliance including recent amendments for overview purposes." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "security-tools.analyzeLink", + "description": "This tool accepts a URL as input and performs an in-depth security analysis of the link. It checks for URL safety, phishing characteristics, malware hosting, SSL certificate validity, and other common web threats. The output is a detailed report indicating potential risks, suspicious patterns, and security status to help users decide if the link is safe to access.", + "category": "security-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL string of the link to analyze for security risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkMalware", + "type": "boolean", + "description": "Whether to check the link against known malware databases (can increase analysis time).", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkPhishing", + "type": "boolean", + "description": "Whether to scan for phishing indicators in the URL and webpage content (if accessible).", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum amount of time in seconds to wait for network responses during analysis.", + "required": false, + "defaultValue": "10" + }, + { + "name": "checkSslCertificate", + "type": "boolean", + "description": "Verify SSL/TLS certificate validity and expiry if the link uses HTTPS.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the security analysis results including risk scores, detected issues, and recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent encounters a URL and needs to assess its security before user interaction, to prevent phishing, malware, or other web-based threats. It is useful in email scanning, chat moderation, or automated alert systems.", + "limitations": "This tool cannot guarantee absolute safety as new or unknown threats might not be detected; it may also produce false positives or negatives depending on heuristic analyses and external databases.", + "examples": [ + "Analyze if a given URL is a phishing site.", + "Check if a shared link in a message hosts malware.", + "Verify the SSL certificate and safety of a URL before clicking." + ] + }, + "tags": [ + "security", + "link analysis", + "phishing detection", + "malware scan", + "url safety", + "ssl verification" + ], + "examples": [ + { + "inputJson": "{\"url\":\"http://example.com/login\"}", + "description": "Basic analysis of a simple HTTP URL to check for common security issues." + }, + { + "inputJson": "{\"url\":\"https://securebank.com\",\"checkMalware\":true,\"checkPhishing\":true,\"timeoutSeconds\":15}", + "description": "Comprehensive scan of a banking site URL including malware and phishing checks with extended timeout." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "security-tools.analyzePayment", + "description": "Analyzes payment transaction data to detect potential security risks such as fraud indicators, anomalies, and compliance violations. Accepts structured payment details, performs pattern and anomaly detection using heuristics and ML models, and outputs a detailed risk assessment report with risk scores and flagged issues.", + "category": "security-tools", + "parameters": [ + { + "name": "paymentData", + "type": "object", + "description": "Structured JSON object representing the payment transaction details, including payer, payee, amounts, timestamps, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "fraudDetectionEnabled", + "type": "boolean", + "description": "Flag to enable or disable fraud pattern detection analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "anomalyDetectionEnabled", + "type": "boolean", + "description": "Flag to enable or disable anomaly detection in payment behavior and metadata.", + "required": false, + "defaultValue": "true" + }, + { + "name": "complianceCheckEnabled", + "type": "boolean", + "description": "Flag to enable or disable compliance rule checks on payment data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "Numeric threshold (0-100) above which payments will be flagged as high risk.", + "required": false, + "defaultValue": "75" + }, + { + "name": "customRules", + "type": "array", + "description": "Optional array of custom compliance or risk evaluation rules to apply during analysis.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A risk assessment report containing an overall risk score, detailed findings per category (fraud, anomaly, compliance), and flagged suspicious attributes with explanations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate payment transactions for security concerns, such as detecting fraud, unusual activity, or regulatory compliance issues before processing or for audit purposes.", + "limitations": "This tool does not process raw unstructured data such as images or unformatted text invoices. It cannot guarantee fraud detection, only risk scoring based on known patterns and rules.", + "examples": [ + "Analyze payment transaction for fraud risk and compliance before approval.", + "Check a batch of payment records for anomalies and generate a risk report.", + "Verify if a payment meets regulatory compliance and identify suspicious fields." + ] + }, + "tags": [ + "security", + "payment", + "fraudDetection", + "anomalyDetection", + "compliance", + "riskAssessment", + "transactionAnalysis" + ], + "examples": [ + { + "inputJson": "{\"paymentData\":{\"transactionId\":\"TX123456789\",\"payer\":{\"name\":\"Alice Smith\",\"account\":\"AC987654321\"},\"payee\":{\"name\":\"Bob's Electronics\",\"account\":\"AC123456789\"},\"amount\":2500.0,\"currency\":\"USD\",\"timestamp\":\"2024-05-20T13:45:00Z\",\"method\":\"credit_card\",\"metadata\":{\"ipAddress\":\"192.168.0.15\",\"deviceId\":\"device123\"}},\"fraudDetectionEnabled\":true,\"anomalyDetectionEnabled\":true,\"complianceCheckEnabled\":true,\"riskThreshold\":70}", + "description": "Analyze a single credit card payment transaction for fraud, anomalies, and compliance risks with default detection flags enabled and a risk threshold of 70." + }, + { + "inputJson": "{\"paymentData\":{\"transactionId\":\"TX987654321\",\"payer\":{\"name\":\"Charlie Brown\",\"account\":\"AC222333444\"},\"payee\":{\"name\":\"Global Importers\",\"account\":\"AC555666777\"},\"amount\":150000.0,\"currency\":\"EUR\",\"timestamp\":\"2024-05-18T08:30:00Z\",\"method\":\"wire_transfer\",\"metadata\":{\"ipAddress\":\"10.0.0.8\",\"deviceId\":\"device789\"}},\"fraudDetectionEnabled\":true,\"anomalyDetectionEnabled\":false,\"complianceCheckEnabled\":true,\"riskThreshold\":80,\"customRules\":[{\"ruleId\":\"AML1\",\"description\":\"Flag transactions >100000 EUR\",\"condition\":\"amount > 100000 && currency == 'EUR'\"}]}", + "description": "Analyze a high-value wire transfer payment with custom compliance rules, disabling anomaly detection but keeping fraud and compliance checks." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "security-tools.analyzeRisk", + "description": "Analyzes security risks based on provided system components, threat vectors, and existing controls. Accepts details about assets, vulnerabilities, and potential threats as input, processes them to evaluate risk levels (low, medium, high), and outputs a structured risk assessment report including recommendations for mitigation.", + "category": "security-tools", + "parameters": [ + { + "name": "assets", + "type": "array", + "description": "List of critical assets or components of the system to analyze risk for, each with identifier and type.", + "required": true, + "defaultValue": "" + }, + { + "name": "vulnerabilities", + "type": "array", + "description": "Known vulnerabilities with severity scores relevant to the assets, including CVE references if available.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatVectors", + "type": "array", + "description": "Descriptions of potential threat vectors or attack methods that could target the assets.", + "required": true, + "defaultValue": "" + }, + { + "name": "existingControls", + "type": "array", + "description": "List of existing security controls and mitigations currently implemented in the environment.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "assessmentDate", + "type": "string", + "description": "Date of the assessment in ISO 8601 format, defaults to current date if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured risk assessment report including risk levels per asset, risk factors, likelihood, impact ratings, and suggested mitigations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assist in evaluating the security risks of specific system components by integrating details about assets, vulnerabilities, and threat vectors. It helps to quantify risk levels and recommend prioritized mitigation steps to enhance security posture.", + "limitations": "Does not perform real-time vulnerability scanning or penetration testing; it relies on user-provided data. It cannot guarantee absolute risk elimination and should be complemented with manual expert review.", + "examples": [ + "Analyze the risk of our web application including known CVEs and current firewall protections.", + "Evaluate risks related to the new cloud infrastructure assets incorporating potential insider threats.", + "Provide a risk assessment report for IoT devices in our network given their reported vulnerabilities." + ] + }, + "tags": [ + "security", + "risk-analysis", + "vulnerability", + "threat-modeling", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"assets\":[{\"id\":\"web-server-1\",\"type\":\"web-server\"},{\"id\":\"db-01\",\"type\":\"database\"}],\"vulnerabilities\":[{\"cve\":\"CVE-2021-44228\",\"severity\":9.8,\"assetId\":\"web-server-1\"}],\"threatVectors\":[\"remote code execution via crafted log messages\"],\"existingControls\":[\"WAF\",\"network segmentation\"]}", + "description": "Risk analysis for a web server and database with a known critical vuln and existing protections" + }, + { + "inputJson": "{\"assets\":[{\"id\":\"iot-thermostat-23\",\"type\":\"IoT-device\"}],\"vulnerabilities\":[{\"id\":\"vuln-001\",\"severity\":7.5,\"description\":\"default credentials\"}],\"threatVectors\":[\"unauthorized remote access\"],\"existingControls\":[]}", + "description": "Assess risk of an IoT device with default credentials as vulnerability and no existing controls" + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "security-tools.sendAlert", + "description": "Sends a security alert notification to specified recipients. Accepts alert details including severity, message, and affected systems, and delivers the alert through configured channels such as email, SMS, or webhook, providing delivery status as output.", + "category": "security-tools", + "parameters": [ + { + "name": "alertTitle", + "type": "string", + "description": "The concise title or summary of the alert message.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertMessage", + "type": "string", + "description": "Detailed description of the security issue or incident triggering the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Alert severity classification (e.g., low, medium, high, critical) indicating urgency.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient contact points such as email addresses or phone numbers.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of communication channels to use for sending the alert (e.g., email, sms, webhook).", + "required": false, + "defaultValue": "[\"email\"]" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "Optional list of affected system names or identifiers relevant to the alert context.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional key-value information to attach with the alert for context.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns the status of alert delivery including each channel's success or failure and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when a security event or anomaly requires notifying relevant personnel or systems promptly. It helps automate alert dissemination with context and severity over multiple channels for timely incident response.", + "limitations": "This tool does not assess or detect security events; it only sends alerts when provided with complete alert information. It cannot guarantee delivery due to external system failures or incorrect recipient data.", + "examples": [ + "Send a critical alert about a detected intrusion to the security team via email and SMS.", + "Notify system admins of a medium severity vulnerability found in the web server with affected systems listed.", + "Dispatch a high severity alert including metadata to a webhook for automated processing." + ] + }, + "tags": [ + "security", + "alerting", + "notification", + "incident-response", + "email", + "sms", + "webhook" + ], + "examples": [ + { + "inputJson": "{\"alertTitle\":\"Unauthorized Access Detected\",\"alertMessage\":\"Multiple failed login attempts detected on the admin panel.\",\"severityLevel\":\"high\",\"recipients\":[\"security-team@example.com\",\"+15551234567\"],\"channels\":[\"email\",\"sms\"],\"affectedSystems\":[\"AdminPanel\"],\"metadata\":{\"ipAddress\":\"203.0.113.42\"}}", + "description": "Send a high severity alert about unauthorized access attempts to email and SMS recipients." + }, + { + "inputJson": "{\"alertTitle\":\"Web Server Vulnerability\",\"alertMessage\":\"A medium severity vulnerability was found in Apache server version 2.4.46.\",\"severityLevel\":\"medium\",\"recipients\":[\"sysadmin@example.com\"],\"channels\":[\"email\"],\"affectedSystems\":[\"WebServer1\"],\"metadata\":{}}", + "description": "Email a medium severity vulnerability alert to system administrators with details on affected server." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "security-tools.formatContract", + "description": "Formats legal or technical contract text to standardized structures by applying consistent indentation, section numbering, clause formatting, and style rules. Accepts raw contract text and configuration options, and outputs a clean, well-structured formatted contract document as a string.", + "category": "security-tools", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "Raw text of the contract to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Name of the style guide to apply for formatting (e.g., 'APA', 'CustomCompanyGuide').", + "required": false, + "defaultValue": "StandardLegal" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted contract.", + "required": false, + "defaultValue": "4" + }, + { + "name": "numberSections", + "type": "boolean", + "description": "Whether to apply automatic numbering to contract sections and clauses.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width before wrapping text in the contract formatting.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted contract as a string under 'formattedContract' key." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to assist in preparing, reviewing, or standardizing contract documents by generating consistently formatted outputs from raw or variably styled input texts. It ensures readability and compliance with a desired formatting style, facilitating contract analysis, presentation, or further processing.", + "limitations": "This tool does not interpret legal meaning, validate contract terms, or replace human review by legal professionals. It focuses solely on text formatting, not on content correctness or legal enforceability.", + "examples": [ + "Format this raw contract text according to the company's standard legal formatting style.", + "Indent the provided contract text using 2 spaces and do not number sections.", + "Reformat the contract text to a maximum line width of 100 characters and apply APA style guide formatting." + ] + }, + "tags": [ + "security-tools", + "formatting", + "contract", + "document-standardization", + "legal-documents" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This Agreement is made on the date of execution. The Parties agree as follows: First, the Seller will deliver goods. Second, the Buyer will remit payment.\",\"styleGuide\":\"StandardLegal\",\"indentationSpaces\":4,\"numberSections\":true,\"lineWidth\":80}", + "description": "Format a simple contract with default style guide, 4 spaces indentation, with section numbering, and 80 characters line width." + }, + { + "inputJson": "{\"contractText\":\"Confidentiality Clause: The Recipient shall hold all information...\",\"indentationSpaces\":2,\"numberSections\":false}", + "description": "Format a confidentiality clause snippet with 2-space indentation and no automatic numbering." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "security-tools.composeMessage", + "description": "This tool accepts message parameters including recipient info, message content, and security preferences to create a securely composed communication message. It processes inputs to format the message, optionally encrypt, digitally sign, and append metadata for integrity and confidentiality. The output is a fully formatted secure message ready for transmission.", + "category": "security-tools", + "parameters": [ + { + "name": "recipient", + "type": "object", + "description": "Recipient details including email or user ID and optional public key for encryption", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject or title of the message", + "required": false, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the message", + "required": true, + "defaultValue": "" + }, + { + "name": "encrypt", + "type": "boolean", + "description": "Flag indicating whether to encrypt the message", + "required": false, + "defaultValue": "false" + }, + { + "name": "sign", + "type": "boolean", + "description": "Flag indicating whether to digitally sign the message", + "required": false, + "defaultValue": "false" + }, + { + "name": "senderPrivateKey", + "type": "string", + "description": "Sender's private key used for signing; required if sign=true", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata or headers to attach to the message", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Securely composed message object including formatted content, encryption/signature status, and metadata" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assemble a secure communication message that may require encryption and/or digital signing before sending to a recipient, ensuring confidentiality and authenticity of the content.", + "limitations": "This tool does not transmit messages; it only composes secure message objects. It requires valid cryptographic keys externally provided. It cannot generate keys or manage key distribution.", + "examples": [ + "Compose a signed and encrypted message to user Alice with a specific body text.", + "Create a plain message to an internal user without encryption or signature.", + "Add custom metadata and encrypt the message before composing it." + ] + }, + "tags": [ + "security", + "messaging", + "encryption", + "digital-signature", + "communication", + "secure-message" + ], + "examples": [ + { + "inputJson": "{\"recipient\":{\"email\":\"alice@example.com\",\"publicKey\":\"BASE64ENCODEDPUBLICKEY==\"},\"subject\":\"Meeting Update\",\"body\":\"Please find the updated meeting agenda attached.\",\"encrypt\":true,\"sign\":true,\"senderPrivateKey\":\"BASE64ENCODEDPRIVATEKEY==\",\"metadata\":{\"priority\":\"high\"}}", + "description": "Compose a signed and encrypted message to recipient Alice with high priority metadata." + }, + { + "inputJson": "{\"recipient\":{\"userId\":\"bob123\"},\"body\":\"Hello Bob, your report is due tomorrow.\",\"encrypt\":false,\"sign\":false}", + "description": "Compose a simple unencrypted, unsigned message to internal user Bob." + }, + { + "inputJson": "{\"recipient\":{\"email\":\"carol@example.com\",\"publicKey\":\"BASE64ENCODEDPUBLICKEY==\"},\"body\":\"Confidential: Please review the attached document.\",\"encrypt\":true,\"sign\":false,\"metadata\":{\"confidential\":\"true\"}}", + "description": "Compose an encrypted message to Carol with confidentiality metadata but without a signature." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "security-tools.buildConfig", + "description": "This tool generates a security configuration file for an application or infrastructure component. It accepts inputs specifying security requirements such as allowed IP ranges, required authentication methods, encryption standards, and audit logging preferences. It processes these inputs to build a structured configuration object or file snippet ready to be integrated into deployment pipelines or security management systems.", + "category": "security-tools", + "parameters": [ + { + "name": "allowedIpRanges", + "type": "array", + "description": "List of IP address ranges (CIDR notation) allowed to access the system.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "The authentication method to configure (e.g., 'OAuth2', 'SAML', 'APIKey','None').", + "required": true, + "defaultValue": "" + }, + { + "name": "encryptionLevel", + "type": "string", + "description": "The encryption standard to use (e.g., 'AES256', 'RSA2048', 'None').", + "required": true, + "defaultValue": "AES256" + }, + { + "name": "enableAuditLogging", + "type": "boolean", + "description": "Flag to enable or disable audit logging of security events.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLoginAttempts", + "type": "number", + "description": "Maximum number of allowed failed login attempts before lockout.", + "required": false, + "defaultValue": "5" + }, + { + "name": "passwordPolicy", + "type": "object", + "description": "Object specifying password policy parameters such as minimum length, complexity requirements, and expiry days.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "allowedProtocols", + "type": "array", + "description": "List of allowed network protocols (e.g., ['TLS1.2','TLS1.3']).", + "required": false, + "defaultValue": "[\"TLS1.2\",\"TLS1.3\"]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full security configuration as JSON, including all specified parameters structured according to security best practices, ready for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create or update security configuration files for applications or infrastructure components, ensuring consistent, automated application of security policies across environments.", + "limitations": "This tool generates configuration based on inputs but does not validate them against actual environment constraints or perform deployment; integration and deployment are separate processes.", + "examples": [ + "Generate a security config with OAuth2 authentication, AES256 encryption, and audit logging enabled.", + "Create a config allowing only specific IP ranges with API key authentication and a strict password policy.", + "Build a security config disabling audit logging but requiring TLS 1.3 protocol and setting maximum login attempts to 3." + ] + }, + "tags": [ + "security", + "configuration", + "automation", + "infrastructure", + "policy" + ], + "examples": [ + { + "inputJson": "{\"allowedIpRanges\":[\"192.168.1.0/24\",\"10.0.0.0/16\"],\"authenticationMethod\":\"OAuth2\",\"encryptionLevel\":\"AES256\",\"enableAuditLogging\":true,\"maxLoginAttempts\":5,\"passwordPolicy\":{\"minLength\":12,\"requireSpecialChars\":true,\"expiryDays\":90},\"allowedProtocols\":[\"TLS1.2\",\"TLS1.3\"]}", + "description": "Generate a comprehensive security config with OAuth2, AES256, audit logging, IP restrictions, and strict password policy." + }, + { + "inputJson": "{\"authenticationMethod\":\"APIKey\",\"encryptionLevel\":\"RSA2048\",\"enableAuditLogging\":false,\"maxLoginAttempts\":3,\"allowedProtocols\":[\"TLS1.3\"]}", + "description": "Create a config for API key authentication with RSA encryption, audit logging disabled, strict login attempts and TLS 1.3 only." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "security-tools.createKPI", + "description": "This tool creates security-focused Key Performance Indicators (KPIs) by accepting configuration parameters such as name, description, calculation formula, data sources, and target thresholds. It processes these inputs to generate a structured KPI object that can be used for monitoring and reporting security metrics effectively.", + "category": "security-tools", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The name of the KPI to create, which identifies it clearly within reports and dashboards.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed explanation of what the KPI measures and its significance.", + "required": false, + "defaultValue": "" + }, + { + "name": "calculationFormula", + "type": "string", + "description": "The formula or method used to compute the KPI value from raw security data.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "An array of identifiers representing data sources or metrics used as inputs to the KPI calculation.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetThreshold", + "type": "number", + "description": "The desired or acceptable value threshold for the KPI to indicate healthy security posture.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationFrequency", + "type": "string", + "description": "The frequency at which KPI is calculated and aggregated, e.g., hourly, daily, weekly.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "alertOnThresholdBreach", + "type": "boolean", + "description": "Flag to indicate whether to trigger alerts if KPI value crosses the target threshold.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured KPI object including id, name, description, formula, data sources, threshold details, and metadata for monitoring use." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define and formalize security KPIs for monitoring application and infrastructure security posture. It helps automate and standardize metric definitions critical for security reporting and alerting systems.", + "limitations": "Does not perform the actual data collection, validation, or real-time calculation of KPIs. It only defines and creates configuration objects representing KPIs.", + "examples": [ + "Create a KPI named 'Failed Login Attempts Rate' with formula counting failed logins per day from authentication logs, setting alert if exceeding 100 attempts.", + "Define a KPI measuring 'Patch Compliance Percentage' calculated weekly from asset management data with a target threshold of 95%." + ] + }, + "tags": [ + "security", + "KPI", + "metrics", + "monitoring", + "analytics", + "reporting", + "thresholds", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"Failed Login Attempts Rate\",\"description\":\"Counts number of failed login attempts per day to detect potential brute force attacks.\",\"calculationFormula\":\"count(failed_login_events)\",\"dataSources\":[\"auth_logs\"],\"targetThreshold\":100,\"aggregationFrequency\":\"daily\",\"alertOnThresholdBreach\":true}", + "description": "Create KPI measuring daily failed login attempts with alert threshold at 100." + }, + { + "inputJson": "{\"kpiName\":\"Patch Compliance Percentage\",\"description\":\"Percentage of devices with latest security patches applied.\",\"calculationFormula\":\"(patched_devices / total_devices) * 100\",\"dataSources\":[\"asset_management\"],\"targetThreshold\":95,\"aggregationFrequency\":\"weekly\",\"alertOnThresholdBreach\":true}", + "description": "Create KPI for weekly patch compliance to ensure minimum 95% coverage." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "security-tools.createRisk", + "description": "Creates a structured security risk profile based on input parameters describing system assets, threat scenarios, vulnerabilities, and potential impacts. Processes inputs to compute likelihood, impact, and risk level, returning a comprehensive risk object for use in risk management and mitigation planning.", + "category": "security-tools", + "parameters": [ + { + "name": "assetName", + "type": "string", + "description": "Name of the asset under assessment", + "required": true, + "defaultValue": "" + }, + { + "name": "assetType", + "type": "string", + "description": "Type/category of the asset (e.g., application, database, infrastructure)", + "required": true, + "defaultValue": "" + }, + { + "name": "threatScenario", + "type": "string", + "description": "Description of the threat or attacker scenario considered", + "required": true, + "defaultValue": "" + }, + { + "name": "vulnerabilities", + "type": "array", + "description": "List of known vulnerabilities affecting the asset", + "required": false, + "defaultValue": "[]" + }, + { + "name": "impactDescription", + "type": "string", + "description": "Description of potential impacts if the risk is realized", + "required": true, + "defaultValue": "" + }, + { + "name": "likelihoodScore", + "type": "number", + "description": "Numerical score (0-10) representing the likelihood of risk occurrence", + "required": true, + "defaultValue": "" + }, + { + "name": "impactScore", + "type": "number", + "description": "Numerical score (0-10) representing the severity of the impact", + "required": true, + "defaultValue": "" + }, + { + "name": "riskOwner", + "type": "string", + "description": "Person or team responsible for managing the risk", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Risk profile object containing asset info, threat scenario, vulnerabilities, scores for likelihood, impact, computed risk level, and recommended mitigation status" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess or document a security risk by combining qualitative and quantitative input about an asset and its threats to produce a formal risk entity useful for security management workflows.", + "limitations": "This tool does not automatically discover vulnerabilities or assess threats; it requires user-provided inputs. It also does not recommend specific mitigations beyond indicating risk level.", + "examples": [ + "Create a risk profile for a web application with SQL injection vulnerability, describing potential data breach impact.", + "Assess risk for cloud infrastructure exposed to DDoS attack with estimated likelihood and impact scores.", + "Document security risk for IoT device susceptible to firmware tampering with corresponding threat and impact descriptions." + ] + }, + "tags": [ + "security", + "risk management", + "risk assessment", + "threat modeling", + "vulnerability" + ], + "examples": [ + { + "inputJson": "{\"assetName\":\"Customer Web Portal\",\"assetType\":\"application\",\"threatScenario\":\"SQL Injection attack via user input fields\",\"vulnerabilities\":[\"CWE-89\"],\"impactDescription\":\"Unauthorized data exfiltration and data integrity loss.\",\"likelihoodScore\":7,\"impactScore\":8,\"riskOwner\":\"Web Security Team\"}", + "description": "Creating a risk profile for a customer web portal vulnerable to SQL injection, analyzing impact and likelihood." + }, + { + "inputJson": "{\"assetName\":\"Corporate Database Server\",\"assetType\":\"database\",\"threatScenario\":\"Ransomware attack encrypting production data\",\"vulnerabilities\":[\"Unpatched OS\",\"Weak access control\"],\"impactDescription\":\"Loss of data availability causing operational disruption.\",\"likelihoodScore\":6,\"impactScore\":9,\"riskOwner\":\"IT Security\"}", + "description": "Assessing ransomware risk on corporate database with known system weaknesses." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "security-tools.createTable", + "description": "Creates a security-focused data table to organize and track security-related items such as vulnerabilities, audit logs, or incident reports. Accepts column definitions and row data, validates input types, and outputs a structured table object suitable for security analysis and reporting.", + "category": "security-tools", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "The name identifier for the security table to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "An array of objects defining column names and data types (e.g., {name: 'vulnerabilityId', type: 'string'}).", + "required": true, + "defaultValue": "" + }, + { + "name": "rows", + "type": "array", + "description": "An array of objects representing the rows of data, where each object keys correspond to column names.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "primaryKey", + "type": "string", + "description": "The column name that acts as the primary key for unique row identification.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description of the table's purpose or contents.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created security table, including metadata and structured data for further processing or querying." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create and initialize a structured table for organizing security-related data such as vulnerability tracking, audit trails, or compliance reports. It serves to standardize security data capture for analytics or dashboarding.", + "limitations": "This tool creates the table structure and initial data but does not enforce complex relational constraints or perform real-time security analytics. It is not a database engine and does not persist data beyond the returned object.", + "examples": [ + "Create a table named 'VulnerabilityTracker' with columns for 'vulnerabilityId' (string), 'severity' (string), and 'discoveredDate' (string), inserting initial vulnerability data.", + "Generate a table to log incident reports with columns for 'incidentId', 'description', 'resolved' (boolean), and 'resolutionDate'.", + "Create an empty audit log table with columns 'logId', 'timestamp', 'action', and 'userId' for subsequent data insertion." + ] + }, + "tags": [ + "security", + "table", + "data-organization", + "vulnerability-tracking", + "incident-logging", + "audit" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"VulnerabilityTracker\",\"columns\":[{\"name\":\"vulnerabilityId\",\"type\":\"string\"},{\"name\":\"severity\",\"type\":\"string\"},{\"name\":\"discoveredDate\",\"type\":\"string\"}],\"rows\":[{\"vulnerabilityId\":\"VULN-2024-001\",\"severity\":\"high\",\"discoveredDate\":\"2024-05-15\"},{\"vulnerabilityId\":\"VULN-2024-002\",\"severity\":\"medium\",\"discoveredDate\":\"2024-05-16\"}],\"primaryKey\":\"vulnerabilityId\",\"description\":\"Tracks discovered vulnerabilities with severity and identification.\"}", + "description": "Create a vulnerability tracking table with three columns and two initial rows of data." + }, + { + "inputJson": "{\"tableName\":\"IncidentLog\",\"columns\":[{\"name\":\"incidentId\",\"type\":\"string\"},{\"name\":\"description\",\"type\":\"string\"},{\"name\":\"resolved\",\"type\":\"boolean\"},{\"name\":\"resolutionDate\",\"type\":\"string\"}],\"rows\":[{\"incidentId\":\"INC-1001\",\"description\":\"Unauthorized access detected\",\"resolved\":false,\"resolutionDate\":\"\"}],\"primaryKey\":\"incidentId\",\"description\":\"Log of security incidents for resolution tracking.\"}", + "description": "Create an incident log table that tracks incident resolution status and details." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "security-tools.createArticle", + "description": "Generates a structured security article based on provided topics, target audience, and formatting preferences. It processes input keywords and context to create detailed, readable content suitable for documentation or educational purposes. The output is a formatted article text with sections, headings, and security best practices.", + "category": "security-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the security article to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "topics", + "type": "array", + "description": "List of key security topics or keywords to cover in the article.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers, such as developers, security professionals, or general users.", + "required": false, + "defaultValue": "General audience" + }, + { + "name": "format", + "type": "string", + "description": "Preferred output format for the article, e.g., Markdown, HTML, or plain text.", + "required": false, + "defaultValue": "Markdown" + }, + { + "name": "includeBestPractices", + "type": "boolean", + "description": "Whether to include recommended security best practices in the article.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum word count limit for the generated article to control length.", + "required": false, + "defaultValue": "1500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article in the requested format and a summary of topics covered." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate comprehensive security-focused articles or documentation on specific topics, targeted to an audience with variable security knowledge, to support education, compliance, or internal communication.", + "limitations": "This tool does not perform live security audits or provide real-time vulnerability detection; it focuses solely on content creation based on provided input topics and parameters.", + "examples": [ + "Create a security article about 'SQL Injection and Preventive Measures' for software developers in Markdown format.", + "Generate documentation on 'Cloud Security Best Practices' targeting IT administrators in plain text.", + "Write a brief overview on 'Phishing Attacks' for general users including recommended action steps." + ] + }, + "tags": [ + "security", + "documentation", + "article", + "content-generation", + "education", + "best-practices" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Understanding SQL Injection\",\"topics\":[\"SQL Injection\",\"input validation\",\"database security\"],\"targetAudience\":\"software developers\",\"format\":\"Markdown\",\"includeBestPractices\":true,\"maxLength\":1200}", + "description": "Generate a Markdown formatted article about SQL Injection for software developers including best practices." + }, + { + "inputJson": "{\"title\":\"Cloud Security Essentials\",\"topics\":[\"cloud security\",\"data encryption\",\"access control\"],\"targetAudience\":\"IT administrators\",\"format\":\"plain text\",\"includeBestPractices\":true,\"maxLength\":1000}", + "description": "Create a plain text article on cloud security essentials for IT administrators." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "customer-support.analyzeParagraph", + "description": "Analyzes a customer support text paragraph to identify sentiment, key issues, and suggested response topics. Accepts raw paragraph text and optional language setting, then processes linguistic and sentiment cues to output a structured summary with sentiment classification, detected issues or intents, and recommended response focuses.", + "category": "customer-support", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The customer support paragraph text to analyze for sentiment and issues.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Optional language code of the input text (e.g., 'en' for English). Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Flag indicating whether to include extracted keywords in the output summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis result object containing sentiment (positive, negative, neutral), key detected issues or intents as an array of strings, optional keywords if requested, and a summary suggestion for customer support response focus." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents needing to extract actionable insights from customer messages, such as determining sentiment to prioritize responses, identifying common complaint or inquiry themes, and generating topics to tailor human or automated replies effectively. It supports multi-language inputs and enhances workflows in customer support ticket triaging and analytics.", + "limitations": "The tool cannot replace full-scale natural language understanding or context-aware dialogue management. It does not handle multi-turn conversations or verify factual accuracy of the detected issues. It performs best on single-paragraph inputs and may have reduced accuracy with heavily informal or corrupted text.", + "examples": [ + "Analyze the sentiment and main concerns in this customer email paragraph.", + "Extract key issues and suggest response focus for a support message in Spanish.", + "Provide sentiment classification and keywords from this user complaint text." + ] + }, + "tags": [ + "customer-support", + "text-analysis", + "sentiment-analysis", + "issue-detection", + "response-suggestion" + ], + "examples": [ + { + "inputJson": "{\"text\":\"I have been waiting for a refund for over two weeks now and have received no updates. This is very frustrating!\",\"language\":\"en\",\"includeKeywords\":true}", + "description": "Analyze an English customer complaint paragraph with keywords included." + }, + { + "inputJson": "{\"text\":\"Mi pedido llegó roto y no sé qué hacer, necesito ayuda urgente.\",\"language\":\"es\",\"includeKeywords\":false}", + "description": "Analyze a Spanish customer complaint paragraph without keywords." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "customer-support.createSentence", + "description": "Generates a clear, polite customer support sentence based on given context, intent, and tone. Accepts input parameters describing the situation, desired action, and preferred communication style, and outputs a fully composed sentence suitable for customer service interactions.", + "category": "customer-support", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "Description of the customer support scenario or issue context to address.", + "required": true, + "defaultValue": "" + }, + { + "name": "intent", + "type": "string", + "description": "The primary purpose of the sentence, such as apologizing, providing information, requesting action, or confirming resolution.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the sentence, e.g., formal, friendly, empathetic, or neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "customerType", + "type": "string", + "description": "Type of customer (e.g., new, returning, VIP) to tailor formality or personalization level.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call to action or next step in the sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated customer support sentence as a string under the key 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to compose a coherent and contextually appropriate sentence for customer support communications, tailored by scenario and desired tone. This helps automate or assist in crafting responses that are consistent with company voice and customer expectations.", + "limitations": "This tool generates single sentences only; it cannot create multi-sentence replies or full conversations. It also does not validate factual correctness or replace human judgment for complex or sensitive issues.", + "examples": [ + "Generate an apologetic sentence for a delayed shipment issue with empathetic tone.", + "Create a sentence providing troubleshooting instructions in a friendly tone.", + "Compose a formal confirmation sentence for issue resolution for a VIP customer." + ] + }, + "tags": [ + "customer-support", + "text-generation", + "communication", + "customer-service", + "sentence-composition" + ], + "examples": [ + { + "inputJson": "{\"context\":\"customer reports delayed shipment\",\"intent\":\"apologize\",\"tone\":\"empathetic\",\"includeCallToAction\":true}", + "description": "Generate a polite apology for a customer whose shipment is delayed, including a next step." + }, + { + "inputJson": "{\"context\":\"customer needs password reset instructions\",\"intent\":\"provide information\",\"tone\":\"friendly\"}", + "description": "Create a friendly sentence giving instructions to reset password." + }, + { + "inputJson": "{\"context\":\"issue resolved successfully\",\"intent\":\"confirm resolution\",\"tone\":\"formal\",\"customerType\":\"VIP\"}", + "description": "Generate a formal sentence confirming resolution for a VIP customer." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Sentence", + "context": null + } + }, + { + "name": "customer-support.createParagraph", + "description": "Creates a well-structured paragraph for customer support communications based on the provided topic, tone, and important points. Accepts inputs to tailor the message style and content focus, and outputs a coherent, context-appropriate paragraph ready for use in support replies or documentation.", + "category": "customer-support", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or issue to address in the paragraph (e.g., 'refund policy', 'account verification').", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the paragraph, such as 'formal', 'friendly', 'empathetic', or 'professional'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of important points or information to include in the paragraph for clarity and completeness.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'es') to write the paragraph in, supporting multilingual needs.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph string ready to use in customer support interactions." + }, + "aiAgent": { + "useCase": "Use this tool when generating concise, customer-facing paragraph responses or explanations within support tickets, FAQs, or chat interactions to ensure consistent tone and coverage of essential information. It helps avoid repetitive manual writing and ensures clarity with dynamic input points.", + "limitations": "The tool cannot handle complex multi-paragraph documents or interactive dialogues, and may lack deep personalized context without sufficient detailed inputs.", + "examples": [ + "Generate a friendly paragraph explaining the refund policy highlighting key deadlines and conditions.", + "Create a formal paragraph to inform customers about security verification steps in account recovery.", + "Write an empathetic message addressing a delayed shipment issue with apology and next steps." + ] + }, + "tags": [ + "customer-support", + "content-generation", + "text-creation", + "customer-communication", + "paragraph-writing" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"refund policy\",\"tone\":\"friendly\",\"keyPoints\":[\"refund requests must be made within 30 days\",\"items must be in original condition\",\"refund processed within 5 business days\"]}", + "description": "Generate a friendly paragraph explaining the refund policy including deadlines and conditions." + }, + { + "inputJson": "{\"topic\":\"account verification\",\"tone\":\"formal\",\"keyPoints\":[\"two-step verification required\",\"provide valid ID proof\",\"contact support if issues\"]}", + "description": "Create a formal paragraph about the security verification steps customers must follow for account recovery." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "customer-support.createNotification", + "description": "Creates a customer support notification message to be sent to users or support agents. Accepts inputs such as notification type, message content, recipient info, and delivery method. Processes these inputs to format and queue the notification for delivery. Returns the notification ID and status confirmation.", + "category": "customer-support", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to create (e.g. 'ticketUpdate', 'systemAlert', 'newMessage').", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The text content of the notification message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientIds", + "type": "array", + "description": "List of recipient user IDs to whom the notification will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliveryMethod", + "type": "string", + "description": "Method of delivery for the notification (e.g. 'email', 'sms', 'inApp').", + "required": false, + "defaultValue": "inApp" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification (e.g. 'low', 'normal', 'high').", + "required": false, + "defaultValue": "normal" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "Optional ISO 8601 datetime string to schedule the notification for future delivery.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique notification ID and current status of the notification processing." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create and dispatch notifications related to customer support activities such as ticket updates, alerts, or reminders. It helps keep customers and agents informed via preferred communication channels.", + "limitations": "Does not handle actual delivery mechanics or retries beyond initial queueing. It also does not verify recipient contact details or perform content moderation.", + "examples": [ + "Create a high priority alert notification for multiple recipients via email about a system outage.", + "Send an in-app message to a single user about their ticket status update.", + "Schedule a low priority SMS reminder for customers about upcoming support appointments." + ] + }, + "tags": [ + "customer support", + "notifications", + "messaging", + "alerts", + "in-app", + "email", + "sms" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"ticketUpdate\",\"messageContent\":\"Your support ticket #12345 has been updated.\",\"recipientIds\":[\"user_001\"],\"deliveryMethod\":\"email\",\"priority\":\"normal\"}", + "description": "Send an email notification to a user about a ticket update." + }, + { + "inputJson": "{\"notificationType\":\"systemAlert\",\"messageContent\":\"Scheduled maintenance will occur at midnight.\",\"recipientIds\":[\"agent_101\",\"agent_102\"],\"deliveryMethod\":\"inApp\",\"priority\":\"high\"}", + "description": "Create a high priority in-app alert for support agents about system maintenance." + }, + { + "inputJson": "{\"notificationType\":\"reminder\",\"messageContent\":\"Don't forget your support session tomorrow.\",\"recipientIds\":[\"user_007\"],\"deliveryMethod\":\"sms\",\"priority\":\"low\",\"scheduledTime\":\"2024-07-01T10:00:00Z\"}", + "description": "Schedule an SMS reminder notification for a customer support appointment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "customer-support.createLead", + "description": "This tool accepts lead information including contact details, source, and qualification data to create a new customer lead record in the CRM system. It processes the input to validate essential fields, assigns lead scoring if specified, and outputs the unique lead ID along with confirmation and summary of stored data.", + "category": "customer-support", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "The first name of the lead contact", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "The last name of the lead contact", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Primary email address of the lead", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Contact phone number for the lead", + "required": false, + "defaultValue": "" + }, + { + "name": "companyName", + "type": "string", + "description": "Name of the company the lead represents", + "required": false, + "defaultValue": "" + }, + { + "name": "leadSource", + "type": "string", + "description": "Source from where the lead was acquired (e.g., website, event, referral)", + "required": false, + "defaultValue": "" + }, + { + "name": "leadScore", + "type": "number", + "description": "Numerical score representing lead quality or potential", + "required": false, + "defaultValue": "0" + }, + { + "name": "interestedProducts", + "type": "array", + "description": "List of product or service names the lead is interested in", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or comments about the lead", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique lead identifier, a success confirmation, and a summary of the saved lead data" + }, + "aiAgent": { + "useCase": "Use this tool when new potential customers need to be added to the CRM to enable tracking and follow-up by the sales or customer support teams. It ensures structured creation of lead records including essential contact and qualification details.", + "limitations": "This tool does not validate the authenticity of contact information beyond basic format checks, nor does it handle updating existing leads or duplicate detection.", + "examples": [ + "Create a new lead with full contact details and interest information.", + "Add a lead using minimal required fields such as name and email only.", + "Create a lead sourced from a marketing event with lead score and product interests." + ] + }, + "tags": [ + "customer-support", + "lead-management", + "crm", + "sales", + "customer-data", + "creation" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"+1234567890\",\"companyName\":\"ExampleCorp\",\"leadSource\":\"Website\",\"leadScore\":75,\"interestedProducts\":[\"ProductA\",\"ProductB\"],\"notes\":\"Interested in pricing details.\"}", + "description": "Create a lead with full contact info, source, score, and product interest." + }, + { + "inputJson": "{\"firstName\":\"John\",\"lastName\":\"Smith\",\"email\":\"john.smith@example.com\"}", + "description": "Create a lead using only required fields: first name, last name, and email." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "marketing-automation.generateEvent", + "description": "Generates a marketing event object representing a user interaction or campaign trigger. Accepts inputs like event type, timestamp, user identifiers, campaign details, and metadata. Outputs a structured event record for analytics or automation ingestion.", + "category": "marketing-automation", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of marketing event (e.g., click, impression, conversion)", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp of when the event occurred", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user associated with the event", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier of marketing campaign related to the event", + "required": false, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Marketing channel through which event was triggered (e.g., email, social, web)", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional event-specific attributes as key-value pairs", + "required": false, + "defaultValue": "{}" + }, + { + "name": "value", + "type": "number", + "description": "Monetary value attributed to the event (e.g., purchase amount), optional", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured event object containing all input fields plus a generated unique eventId" + }, + "aiAgent": { + "useCase": "Use this tool to programmatically create standardized marketing event records capturing key details such as event type, time, user and campaign info, and optional metadata. This facilitates consistent event tracking and analytics pipelines across campaigns and channels.", + "limitations": "This tool only generates event data objects; it does not send, store, or analyze events. Integration with event streaming or storage systems must be done separately.", + "examples": [ + "Generate a 'click' event from a user on an email campaign.", + "Create a conversion event with purchase value and user ID for web channel.", + "Record an impression event with timestamp and campaign details" + ] + }, + "tags": [ + "marketing", + "automation", + "event", + "analytics", + "campaign", + "tracking", + "user-interaction" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"click\",\"timestamp\":\"2024-05-01T12:34:56Z\",\"userId\":\"user123\",\"campaignId\":\"camp789\",\"channel\":\"email\",\"metadata\":{\"buttonId\":\"signup\"}}", + "description": "Generate a click event from a user on an email campaign with additional metadata for button clicked." + }, + { + "inputJson": "{\"eventType\":\"conversion\",\"timestamp\":\"2024-05-02T15:00:00Z\",\"userId\":\"user456\",\"campaignId\":\"camp101\",\"channel\":\"web\",\"value\":99.99}", + "description": "Create a conversion event representing a purchase with monetary value on web channel." + }, + { + "inputJson": "{\"eventType\":\"impression\",\"timestamp\":\"2024-05-03T10:00:00Z\",\"campaignId\":\"camp300\",\"channel\":\"social\"}", + "description": "Record an impression event for a social media campaign without user identification." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "marketing-automation.createEvent", + "description": "Creates a marketing analytics event based on input parameters such as event name, type, timestamp, user identifiers, and additional properties. Processes and validates input to produce a structured event object ready for tracking or integration with analytics platforms.", + "category": "marketing-automation", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "Name of the marketing event to create, e.g., 'signup' or 'adClick'.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Category or type of the event, such as 'click', 'impression', 'conversion'.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the event occurred. Defaults to current time if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user who triggered the event. Optional but recommended for user-level analytics.", + "required": false, + "defaultValue": "" + }, + { + "name": "sessionId", + "type": "string", + "description": "Unique session identifier to link events within a user session.", + "required": false, + "defaultValue": "" + }, + { + "name": "properties", + "type": "object", + "description": "Additional key-value pairs with custom metadata related to the event, e.g., { adCampaign: 'summer_sale', device: 'mobile' }.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A structured event object including all inputs normalized, with added server timestamp if not provided, ready for ingestion by analytics systems." + }, + "aiAgent": { + "useCase": "Use this tool when generating trackable marketing events for analytics platforms, including custom campaigns, user interactions, or conversion tracking. Ideal for converting loosely structured event data into structured format required by marketing automation tools.", + "limitations": "This tool does not send or store events; it only creates structured event objects. It does not validate user identity beyond format nor integrates directly with external analytics APIs.", + "examples": [ + "Create an event for a user signing up on a website.", + "Generate a click event for an ad banner with custom campaign properties.", + "Create a conversion event capturing a purchase with order details." + ] + }, + "tags": [ + "marketing", + "automation", + "analytics", + "eventTracking", + "campaign", + "userBehavior" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"signup\",\"eventType\":\"conversion\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"userId\":\"user_12345\",\"properties\":{\"plan\":\"premium\"}}", + "description": "Create a signup conversion event with a specified timestamp and user plan property." + }, + { + "inputJson": "{\"eventName\":\"adClick\",\"eventType\":\"click\",\"userId\":\"user_67890\",\"sessionId\":\"sess_abc123\",\"properties\":{\"adCampaign\":\"spring_sale\",\"device\":\"mobile\"}}", + "description": "Generate an ad click event linked to a user session with campaign and device info." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "finance-tools.createReport", + "description": "Generates a comprehensive financial report based on provided transaction data and parameters. Accepts input data such as transactions, report type, date range, and formatting options. Processes and aggregates financial data, calculates key metrics, and outputs a structured report document (JSON or PDF metadata) summarizing financial status and performance.", + "category": "finance-tools", + "parameters": [ + { + "name": "transactions", + "type": "array", + "description": "Array of transaction objects including date, amount, category, and description to be analyzed in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of financial report to generate (e.g., 'incomeStatement', 'balanceSheet', 'cashFlow').", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) to filter transactions for the report period.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) to filter transactions for the report period.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) in which to display monetary values.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include charts and graphical summaries in the report output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the report: 'json' for structured data or 'pdf' for a document format.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the detailed financial report including summary metrics, categorized transaction aggregates, and optional chart data or PDF document metadata depending on parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a structured financial report summarizing transactions over a specified period for accounting, review, or presentation purposes. Ideal for generating income statements, balance sheets, or cash flow reports automatically from raw financial data.", + "limitations": "This tool does not perform auditing or verify transaction authenticity. It assumes input data correctness and does not offer tax-specific calculations or advanced financial forecasting.", + "examples": [ + "Generate an income statement report from last quarter's transactions in USD, output as PDF including charts.", + "Create a cash flow report between two dates and receive it as JSON for further processing.", + "Produce a balance sheet summarizing assets and liabilities from a year's transaction data." + ] + }, + "tags": [ + "finance", + "reporting", + "financial-report", + "accounting", + "document-generation", + "data-aggregation" + ], + "examples": [ + { + "inputJson": "{\"transactions\":[{\"date\":\"2024-01-15\",\"amount\":-500,\"category\":\"Office Supplies\",\"description\":\"Printer ink\"},{\"date\":\"2024-01-20\",\"amount\":2000,\"category\":\"Sales\",\"description\":\"Client payment\"}],\"reportType\":\"incomeStatement\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"currency\":\"USD\",\"includeCharts\":true,\"outputFormat\":\"pdf\"}", + "description": "Generate a PDF income statement for Q1 2024 with charts included." + }, + { + "inputJson": "{\"transactions\":[{\"date\":\"2024-02-10\",\"amount\":10000,\"category\":\"Investment\",\"description\":\"Capital injection\"},{\"date\":\"2024-02-15\",\"amount\":-1500,\"category\":\"Equipment\",\"description\":\"New laptop\"}],\"reportType\":\"balanceSheet\",\"currency\":\"USD\",\"outputFormat\":\"json\"}", + "description": "Create a JSON balance sheet report from investments and expenses in February 2024 without charts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "finance-tools.createFunction", + "description": "Creates a customizable financial calculation function based on user-defined parameters such as inputs, operations, and output formatting. Accepts details about financial metrics and returns executable JavaScript code that performs the specified financial calculation, enabling dynamic computation in financial management contexts.", + "category": "finance-tools", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The name to assign to the created function for identification and reuse.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputParameters", + "type": "array", + "description": "An array of parameter names (strings) that the function will accept as inputs for the calculation.", + "required": true, + "defaultValue": "" + }, + { + "name": "calculationExpression", + "type": "string", + "description": "A valid JavaScript expression as a string that defines how to compute the output using the input parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "returnType", + "type": "string", + "description": "Specifies the data type of the function's return value, such as 'number' or 'string'.", + "required": false, + "defaultValue": "number" + }, + { + "name": "documentation", + "type": "string", + "description": "Optional documentation string describing the purpose and usage of the generated function.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function as a string of JavaScript code and optionally the documentation string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate tailored financial calculation functions dynamically based on user input or evolving financial formulas, enabling customized computation logic for budgeting, investment analysis, or accounting tasks. It helps automate creation of reusable and parameterized financial functions without manual coding.", + "limitations": "This tool does not validate semantic correctness of the calculation expression beyond syntax. It does not execute the function or handle runtime errors; generated code must be tested and integrated appropriately.", + "examples": [ + "Create a function named 'calculateROI' that takes 'gain' and 'cost' as inputs and returns (gain - cost)/cost.", + "Define a function 'monthlyPayment' with inputs 'principal', 'rate', and 'months' that calculates loan payment based on the formula.", + "Generate a simple summation function 'totalAssets' accepting 'cash', 'inventory', and 'receivables'." + ] + }, + "tags": [ + "finance", + "function-generation", + "dynamic-calculation", + "financial-modeling", + "javascript", + "automation" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"calculateROI\",\"inputParameters\":[\"gain\",\"cost\"],\"calculationExpression\":\"(gain - cost) / cost\",\"returnType\":\"number\",\"documentation\":\"Calculates Return on Investment.\"}", + "description": "Generate a ROI calculation function that computes investment return based on gain and cost." + }, + { + "inputJson": "{\"functionName\":\"monthlyPayment\",\"inputParameters\":[\"principal\",\"rate\",\"months\"],\"calculationExpression\":\"(principal * rate) / (1 - Math.pow(1 + rate, -months))\",\"returnType\":\"number\",\"documentation\":\"Computes monthly loan payment using amortization formula.\"}", + "description": "Create a loan payment function that calculates monthly payments given principal, interest rate, and duration." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "human-resources.createEmail", + "description": "Generates a professional email template for human resources communications such as recruitment, onboarding, or employee notifications. Accepts input parameters like recipient role, purpose, tone, and key message points, then outputs a formatted email subject and body text suitable for HR purposes.", + "category": "human-resources", + "parameters": [ + { + "name": "recipientRole", + "type": "string", + "description": "Role or position of the email recipient (e.g., 'Job Applicant', 'New Hire', 'Employee')", + "required": true, + "defaultValue": "" + }, + { + "name": "emailPurpose", + "type": "string", + "description": "The main purpose of the email (e.g., 'Interview Invitation', 'Onboarding Instructions', 'Policy Update')", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email (e.g., 'Formal', 'Friendly', 'Neutral')", + "required": false, + "defaultValue": "Formal" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of key message points or information to include in the email body", + "required": false, + "defaultValue": "[]" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the sender or HR representative", + "required": false, + "defaultValue": "" + }, + { + "name": "senderTitle", + "type": "string", + "description": "Job title of the sender", + "required": false, + "defaultValue": "" + }, + { + "name": "companyName", + "type": "string", + "description": "Name of the company or organization sending the email", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted email subject and body text string ready for sending or further customization." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate professional and contextually appropriate HR emails aimed at various recipients to streamline communication processes such as recruitment invitations, onboarding instructions, or employee updates. It helps maintain consistency in tone and content relevance for HR communications.", + "limitations": "This tool generates email templates based on input parameters but does not send emails or handle personalization beyond the given parameters. It may not capture very specific organizational jargon or legal disclaimers unless provided in keyPoints.", + "examples": [ + "Generate an interview invitation email for a job applicant with a formal tone and details on interview date and location.", + "Create an onboarding welcome email for a new hire, friendly in tone, including information about their start date and required documents.", + "Prepare a policy update notification email to employees with neutral tone and key points summarizing changes." + ] + }, + "tags": [ + "email", + "human-resources", + "recruitment", + "onboarding", + "communication", + "template", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientRole\":\"Job Applicant\",\"emailPurpose\":\"Interview Invitation\",\"tone\":\"Formal\",\"keyPoints\":[\"Interview scheduled for March 15th at 10 AM\",\"Location: Company HQ, Room 305\",\"Please bring a valid ID and resume\"],\"senderName\":\"Jane Smith\",\"senderTitle\":\"HR Manager\",\"companyName\":\"Tech Solutions Inc.\"}", + "description": "Formal interview invitation email to a job applicant with specified interview details." + }, + { + "inputJson": "{\"recipientRole\":\"New Hire\",\"emailPurpose\":\"Onboarding Instructions\",\"tone\":\"Friendly\",\"keyPoints\":[\"Welcome to the team!\",\"Your start date is April 1st\",\"Please complete the attached forms before your first day.\"],\"senderName\":\"Tom Lee\",\"senderTitle\":\"HR Coordinator\",\"companyName\":\"Innovatech\"}", + "description": "Friendly onboarding welcome email with instructions for a new employee." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "human-resources.createDocument", + "description": "Creates an HR-related document such as offer letters, employment contracts, or termination notices by accepting template type, employee details, and custom content. Generates a formatted document output suitable for review, download, or further processing.", + "category": "human-resources", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of HR document to create, e.g., 'offerLetter', 'employmentContract', or 'terminationNotice'.", + "required": true, + "defaultValue": "" + }, + { + "name": "employeeData", + "type": "object", + "description": "Employee details to populate in the document such as name, job title, start date, salary, and other personalized fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "customContent", + "type": "string", + "description": "Optional custom text or clauses to add to the document for special terms or notes.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated document, e.g. 'pdf', 'docx', or 'txt'.", + "required": false, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated document encoded as a base64 string along with metadata such as filename, document type, and format." + }, + "aiAgent": { + "useCase": "Use this tool when an automated system or assistant needs to create standardized HR documents personalized for specific employees, facilitating faster onboarding, contracts, or separation agreements without manual drafting.", + "limitations": "Cannot perform legal validation or approval workflows; it only generates the document text and formatting based on inputs.", + "examples": [ + "Create an offer letter document for a new hire John Doe starting as Software Engineer.", + "Generate an employment contract for employee Jane Smith including a custom confidentiality clause.", + "Produce a termination notice for an employee with relevant termination details." + ] + }, + "tags": [ + "human-resources", + "document-creation", + "hr-documents", + "employee-management", + "automation", + "contract-generation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"offerLetter\",\"employeeData\":{\"name\":\"John Doe\",\"jobTitle\":\"Software Engineer\",\"startDate\":\"2024-07-01\",\"salary\":\"90000\"},\"customContent\":\"This offer is contingent upon background check.\",\"outputFormat\":\"pdf\"}", + "description": "Generate a PDF offer letter for John Doe with basic employment details and a custom background check clause." + }, + { + "inputJson": "{\"documentType\":\"employmentContract\",\"employeeData\":{\"name\":\"Jane Smith\",\"jobTitle\":\"Product Manager\",\"startDate\":\"2024-08-15\",\"salary\":\"110000\"},\"customContent\":\"Includes additional NDA terms.\",\"outputFormat\":\"docx\"}", + "description": "Create a DOCX employment contract for Jane Smith including additional NDA clauses." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "copywriting.sendEmail", + "description": "Sends a marketing or promotional email to a specified recipient list. Accepts recipient addresses, subject, body content (HTML or text), and optional attachments, then dispatches the email using configured SMTP or email API services. Returns delivery status and message IDs for tracking.", + "category": "copywriting", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "An array of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "The HTML content of the email body, used to format visual email content.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Plain text version of the email body, used if HTML is not supported or preferred.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "The sender's email address shown in the 'From' field.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects with file name and data or URLs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "cc", + "type": "array", + "description": "Optional array of email addresses to be CC'd on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional array of email addresses to be BCC'd on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyTo", + "type": "string", + "description": "Optional Reply-To email address for recipient responses.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object indicating if the email was sent successfully, including status, message IDs, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to send marketing, promotional, or transactional emails to targeted recipients, utilizing formatted HTML content or plain text, optionally with attachments or CC/BCC fields. Useful for automated campaign dispatch, customer follow-ups, or subscription notifications.", + "limitations": "This tool does not design or generate email content and relies on preformatted input. It cannot guarantee inbox delivery or handle very large recipient lists that require specialized bulk email services.", + "examples": [ + "Send a promotional newsletter to a list of customers.", + "Dispatch a follow-up email with attachment after a webinar.", + "Send a transactional confirmation email with custom reply-to address." + ] + }, + "tags": [ + "email", + "marketing", + "promotional", + "communication", + "send", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"user@example.com\"],\"subject\":\"Summer Sale Just For You!\",\"bodyHtml\":\"

Don't miss 50% off!

Exclusive deals inside.

\",\"senderEmail\":\"newsletter@shop.com\"}", + "description": "Send a simple HTML promotional email to one customer." + }, + { + "inputJson": "{\"recipients\":[\"client1@example.com\",\"client2@example.com\"],\"subject\":\"Webinar Follow-up\",\"bodyText\":\"Thank you for attending our webinar. Attached is the slide deck.\",\"senderEmail\":\"events@company.com\",\"attachments\":[{\"fileName\":\"slides.pdf\",\"data\":\"base64encodedpdf\"}]}", + "description": "Send a plain text follow-up email with PDF attachment to multiple recipients." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "copywriting.buildCode", + "description": "This tool generates well-structured, commented programming code snippets based on user-provided functional specifications. It accepts a target programming language, a description of the desired functionality, and optional style preferences. The output is clean, executable code tailored to the provided instructions, ready for integration or review.", + "category": "copywriting", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "The target programming language for the code output, e.g., Python, JavaScript, Java, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionalityDescription", + "type": "string", + "description": "A detailed description of what functionality the code should implement or demonstrate.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Optional coding style or conventions to follow, such as indentation style or naming conventions.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments within the generated code for clarity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "codeComplexityLevel", + "type": "string", + "description": "Desired complexity level for the code such as 'basic', 'intermediate', or 'advanced'.", + "required": false, + "defaultValue": "basic" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code string and metadata such as language and any stylistic notes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate executable programming code from natural language descriptions, enabling fast prototyping, demonstrations, or educational explanations. It's useful when code must be tailored to particular languages or styles and for automating initial code draft creation.", + "limitations": "This tool does not validate code correctness beyond synthesis, nor does it guarantee optimal performance or security compliance. It cannot replace full programming or debugging processes and may produce syntactically correct but logically incomplete code in complex scenarios.", + "examples": [ + "Generate a Python function to sort a list of integers.", + "Create a JavaScript snippet for validating email input on a form.", + "Build a Java method that calculates factorial recursively with comments." + ] + }, + "tags": [ + "code generation", + "programming", + "copywriting", + "automation", + "developer tools", + "code snippets" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"Python\",\"functionalityDescription\":\"Sort a list of integers in ascending order.\",\"codeStyle\":\"PEP8\",\"includeComments\":true,\"codeComplexityLevel\":\"basic\"}", + "description": "Generate a basic Python sorted function with comments following PEP8 style." + }, + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"functionalityDescription\":\"Validate if a string is a properly formatted email address.\",\"codeStyle\":\"camelCase variables\",\"includeComments\":false,\"codeComplexityLevel\":\"intermediate\"}", + "description": "Create a JavaScript function without comments that validates email format using regex." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "content-creation.buildCommit", + "description": "Constructs a detailed commit object for version control systems by accepting commit message, author info, changed files list, and optional metadata. Processes inputs to build a structured commit representation including timestamp and unique ID. Returns a commit object ready for submission to a repository.", + "category": "content-creation", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "The message describing the changes included in the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the commit author.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the commit author.", + "required": true, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "An array of objects describing changed files; each object includes file path and change type (added, modified, deleted).", + "required": true, + "defaultValue": "" + }, + { + "name": "parentCommitHash", + "type": "string", + "description": "The hash of the parent commit for linking in history. Optional if this is the first commit.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp for the commit time. Defaults to current time if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs to include additional commit metadata (e.g., ticket IDs, review status).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured commit object containing id, message, author info, changed files, timestamp, parent hash, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build a commit object incorporating descriptive commit messages, author information, and a list of changed files before submitting to a version control system. It is useful for automation scripts, bots generating commits, or interfacing with git-like repositories without a native client.", + "limitations": "This tool does not perform the actual commit operation to a repository. It does not validate file contents or enforce commit policies. It does not generate diffs or patch data.", + "examples": [ + "Create a commit with message 'Fix login bug', author 'Alice', modified two files, with current timestamp.", + "Build a commit referencing a parent commit hash and including metadata for tracking a Jira ticket.", + "Generate an initial commit with author details and no parent hash." + ] + }, + "tags": [ + "content-creation", + "version-control", + "commit", + "automation", + "code-management" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Fix issue #123 by updating authentication logic\",\"authorName\":\"Alice Johnson\",\"authorEmail\":\"alice.johnson@example.com\",\"changedFiles\":[{\"filePath\":\"auth/login.js\",\"changeType\":\"modified\"},{\"filePath\":\"auth/utils.js\",\"changeType\":\"added\"}],\"timestamp\":\"2024-05-01T14:30:00Z\"}", + "description": "Build a commit for bug fix with two changed files and specified timestamp." + }, + { + "inputJson": "{\"commitMessage\":\"Initial commit\",\"authorName\":\"Bob Smith\",\"authorEmail\":\"bob.smith@example.com\",\"changedFiles\":[{\"filePath\":\"README.md\",\"changeType\":\"added\"}],\"parentCommitHash\":\"\",\"metadata\":{\"ticket\":\"PROJ-1\"}}", + "description": "Create an initial commit with metadata for referencing a project ticket." + }, + { + "inputJson": "{\"commitMessage\":\"Refactor backend code\",\"authorName\":\"Carol Lee\",\"authorEmail\":\"carol.lee@example.com\",\"changedFiles\":[{\"filePath\":\"server/index.js\",\"changeType\":\"modified\"},{\"filePath\":\"server/db.js\",\"changeType\":\"modified\"}],\"parentCommitHash\":\"abc123def4567890\"}", + "description": "Create a commit referencing a parent commit with multiple modified files." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "documentation-tools.analyzeComment", + "description": "Analyzes a given comment text to detect tone, sentiment, key topics, and potential action items within technical or project documentation discussions. Accepts raw comment strings, performs NLP analysis, and outputs structured insights to help maintain clarity and relevance in documentation communication.", + "category": "documentation-tools", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw text content of the comment to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code for the comment text (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "detectSentiment", + "type": "boolean", + "description": "Flag to enable sentiment analysis of the comment text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectTopics", + "type": "boolean", + "description": "Flag to enable detection of key topics within the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractActionItems", + "type": "boolean", + "description": "Flag to enable extraction of potential action items mentioned in the comment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analyzed results including overall sentiment, detected topics as keywords, categorized tone, and extracted action items if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand and extract meaningful insights from comments in code reviews, project documentation discussions, or collaborative notes to improve clarity, identify issues, or summarize stakeholder intentions.", + "limitations": "The tool cannot fully understand highly context-dependent or ambiguous comments without additional domain information. It is not designed for non-text comment formats such as audio or video.", + "examples": [ + "Analyze the tone and key topics of a code review comment to check for concerns or suggestions.", + "Extract action items from project discussion comments for task tracking.", + "Determine the sentiment of user feedback comments on documentation pages." + ] + }, + "tags": [ + "documentation", + "comment-analysis", + "sentiment-analysis", + "topic-detection", + "action-items", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I think this function needs better error handling and clear comments. We should add tests for edge cases.\",\"language\":\"en\",\"detectSentiment\":true,\"detectTopics\":true,\"extractActionItems\":true}", + "description": "Analyze a comment suggesting improvements and test additions with sentiment and action item extraction." + }, + { + "inputJson": "{\"commentText\":\"Looks good to me! No issues found.\",\"language\":\"en\",\"detectSentiment\":true,\"detectTopics\":true,\"extractActionItems\":false}", + "description": "Analyze positive feedback comment focusing on sentiment and topic detection only." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "documentation-tools.sendNotification", + "description": "Sends a notification message related to documentation updates to specified recipients via email or webhook. It accepts parameters including message content, subject, recipient list, delivery method, and optional metadata. Processes inputs by formatting the notification and dispatching it, returning a status report for each recipient indicating success or failure.", + "category": "documentation-tools", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject or title of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The main content body of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient addresses (emails or webhook URLs) to send the notification.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "deliveryMethod", + "type": "string", + "description": "Method of notification delivery: 'email' or 'webhook'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional information to include with the notification, such as document version or change summary.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification (e.g., 'normal', 'high').", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of results for each recipient, indicating whether the notification was sent successfully, with optional error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to inform team members or stakeholders about updates, changes, or alerts related to documentation. It enables automated dispatch of notifications through common channels such as email or webhooks, ensuring timely communication about document state or action items.", + "limitations": "Does not support SMS or push notification channels directly; requires valid and reachable recipient addresses; delivery reliability depends on external service availability and network conditions.", + "examples": [ + "Send an email notification to the documentation team about a new API specification update.", + "Dispatch a webhook notification to a continuous integration system when a changelog document is updated.", + "Notify a list of stakeholders via email regarding a documentation review schedule." + ] + }, + "tags": [ + "notification", + "documentation", + "communication", + "email", + "webhook", + "update", + "alert" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"API Doc Updated\",\"message\":\"The API specification document v2.1 has been published.\",\"recipients\":[\"dev-team@example.com\"],\"deliveryMethod\":\"email\"}", + "description": "Send an email notification about an API documentation update to the development team." + }, + { + "inputJson": "{\"subject\":\"Changelog Update\",\"message\":\"A new changelog entry for release 5.4 is available.\",\"recipients\":[\"https://ci.example.com/webhook\"],\"deliveryMethod\":\"webhook\",\"metadata\":{\"document\":\"changelog.md\",\"version\":\"5.4\"}}", + "description": "Send a webhook notification to a CI system after changelog document update." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "documentation-tools.buildEndpoint", + "description": "This tool generates detailed API endpoint documentation from structured input describing the endpoint's HTTP method, URL, parameters, request and response schemas, and descriptions. It processes the input to produce clean, formatted endpoint documentation suitable for API docs.", + "category": "documentation-tools", + "parameters": [ + { + "name": "endpointName", + "type": "string", + "description": "The unique name or identifier for the API endpoint, used as a title in the documentation.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method (GET, POST, PUT, DELETE, etc.) used by the endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "path", + "type": "string", + "description": "The URL path of the endpoint, including any path parameters, e.g., /users/{id}.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief explanation of what the endpoint does or its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "queryParameters", + "type": "array", + "description": "Array of objects describing query parameters, each with name, type, and description.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "requestBody", + "type": "object", + "description": "JSON schema or example describing the structure of the request body if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "responseBody", + "type": "object", + "description": "JSON schema or example describing the structure of the expected response body.", + "required": false, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Indicates if authentication is required to access this endpoint.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags to categorize the endpoint, e.g., ['User','Admin'].", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted documentation text for the API endpoint, structured for easy rendering in docs." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured data about an API endpoint's method, path, parameters, and schemas and want to generate consistent, human-readable documentation for integration into API reference documents or developer portals. It helps automate accurate and detailed endpoint docs.", + "limitations": "This tool cannot validate the correctness of the endpoint data or generate code implementations; it only formats and generates documentation text from the provided input.", + "examples": [ + "Generate documentation for a POST /login endpoint with username and password in the request body.", + "Create docs for a GET /users/{id} endpoint returning user profile details.", + "Document a DELETE /items/{itemId} endpoint requiring authentication." + ] + }, + "tags": [ + "documentation", + "API", + "endpoint", + "build", + "automation", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"endpointName\":\"Create User\",\"httpMethod\":\"POST\",\"path\":\"/users\",\"description\":\"Creates a new user in the system.\",\"queryParameters\":[],\"requestBody\":{\"username\":\"string\",\"email\":\"string\",\"password\":\"string\"},\"responseBody\":{\"id\":\"number\",\"username\":\"string\",\"email\":\"string\"},\"authenticationRequired\":true,\"tags\":[\"User\",\"Admin\"]}", + "description": "Generate documentation for a POST /users endpoint requiring authentication that creates a new user." + }, + { + "inputJson": "{\"endpointName\":\"Get User Details\",\"httpMethod\":\"GET\",\"path\":\"/users/{id}\",\"description\":\"Retrieves details for a user by ID.\",\"queryParameters\":[{\"name\":\"verbose\",\"type\":\"boolean\",\"description\":\"Return extended user info.\"}],\"requestBody\":null,\"responseBody\":{\"id\":\"number\",\"username\":\"string\",\"email\":\"string\",\"createdAt\":\"string\"},\"authenticationRequired\":true,\"tags\":[\"User\"]}", + "description": "Generate documentation for a GET /users/{id} endpoint with optional query parameter 'verbose'." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "data-analytics.formatFunction", + "description": "Formats a JavaScript or TypeScript function code snippet according to specified style rules. Accepts raw function code as a string and formatting options (like indentation, max line length). Outputs the function code string reformatted for improved readability and consistency.", + "category": "data-analytics", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "Raw string of the JavaScript/TypeScript function code to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed length of each line before wrapping.", + "required": false, + "defaultValue": "80" + }, + { + "name": "semi", + "type": "boolean", + "description": "Whether to add semicolons at the end of statements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "singleQuote", + "type": "boolean", + "description": "Use single quotes for strings instead of double quotes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted function code string under 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or inconsistently formatted JavaScript/TypeScript function code and need it reformatted to conform with style conventions for readability and maintainability. Useful in code synthesis, refactoring, or preparing snippets for documentation or display.", + "limitations": "Does not parse or validate function semantics or correctness; strictly formats code style. Complex or incomplete syntax may cause formatting errors. Does not perform linting or comprehensive code analysis.", + "examples": [ + "Format a raw JS function with 4-space indentation and semicolons.", + "Convert a TypeScript function to use tabs and single quotes.", + "Wrap long lines in a function code snippet to max 100 characters." + ] + }, + "tags": [ + "formatting", + "function", + "javascript", + "typescript", + "code-style", + "data-analytics" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"function add(a,b){return a+b}\",\"indentSize\":4,\"useTabs\":false,\"maxLineLength\":80,\"semi\":true,\"singleQuote\":true}", + "description": "Format a simple add function with 4 spaces indentation and semicolons." + }, + { + "inputJson": "{\"functionCode\":\"const greet=(name)=>{console.log(\\\"Hello, \\\"+name)};\",\"indentSize\":2,\"useTabs\":true,\"maxLineLength\":80,\"semi\":false,\"singleQuote\":true}", + "description": "Format an arrow function with tabs indentation and no semicolons." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "data-analytics.composeReport", + "description": "Generates a comprehensive analytical report by processing input datasets, applying specified data transformations and visualizations, and compiling the results into a structured document output such as PDF or HTML. Accepts raw or preprocessed data and optional configuration for report sections and styling.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "Array of data objects or records to be analyzed and included in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title of the report to be displayed on the cover page or header.", + "required": false, + "defaultValue": "\"Data Analytics Report\"" + }, + { + "name": "sections", + "type": "array", + "description": "List of sections to include in the report, each defining data subset, metrics, visualizations, and textual insights.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated report output. Supported formats include PDF and HTML.", + "required": false, + "defaultValue": "\"PDF\"" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate and include an executive summary with key insights.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Visual style theme for report styling, e.g., 'light', 'dark', or custom themes.", + "required": false, + "defaultValue": "\"light\"" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the report author or organization to include in the footer or metadata.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content as a base64 encoded string, the MIME type indicating format, and a summary of sections included." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate detailed, customized data analytics reports that combine raw data, statistical summaries, visualizations, and narrative insights into a single coherent document for stakeholders or clients. Ideal for automating repetitive report generation from standard datasets with flexible section composition.", + "limitations": "This tool does not perform raw data cleansing or complex statistical modeling beyond basic transformations specified in sections. It cannot interpret ambiguous data or perform advanced natural language summaries without user input.", + "examples": [ + "Create a quarterly sales analytics report with charts and key KPIs in PDF format.", + "Generate an HTML report summarizing customer feedback data including sentiment analysis section.", + "Produce a sales forecast report with executive summary and customized styling theme." + ] + }, + "tags": [ + "data-analytics", + "report-generation", + "visualization", + "summary", + "pdf", + "html" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"region\":\"North\",\"sales\":120000,\"date\":\"2024-01-31\"},{\"region\":\"South\",\"sales\":95000,\"date\":\"2024-01-31\"}],\"reportTitle\":\"Q1 Regional Sales Report\",\"sections\":[{\"title\":\"Sales Overview\",\"metrics\":[\"totalSales\"],\"charts\":[{\"type\":\"bar\",\"x\":\"region\",\"y\":\"sales\"}],\"textSummary\":\"Overview of regional sales performance.\"}],\"outputFormat\":\"PDF\",\"includeSummary\":true,\"theme\":\"light\",\"authorName\":\"Data Team\"}", + "description": "Generate a PDF sales report for Q1 with bar charts by region and an executive summary." + }, + { + "inputJson": "{\"inputData\":[{\"category\":\"Electronics\",\"rating\":4.5,\"comments\":45},{\"category\":\"Books\",\"rating\":4.8,\"comments\":120}],\"sections\":[{\"title\":\"Customer Ratings\",\"metrics\":[\"averageRating\"],\"charts\":[{\"type\":\"pie\",\"field\":\"category\"}],\"textSummary\":\"Customer ratings breakdown by product category.\"}],\"outputFormat\":\"HTML\",\"includeSummary\":false,\"theme\":\"dark\",\"authorName\":\"Market Research\"}", + "description": "Create an HTML report on customer ratings by category with pie charts but no summary, styled dark." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "data-analytics.formatReport", + "description": "Formats raw analytical data and statistical insights into a well-structured, visually enhanced report document. Accepts input data objects or JSON arrays representing metrics and analyses, applies templated layouts with charts and tables, and outputs a formatted report in PDF, HTML, or Markdown formats for easy sharing and presentation.", + "category": "data-analytics", + "parameters": [ + { + "name": "rawData", + "type": "object", + "description": "Input structured data or JSON object containing the analytics results and metrics to be included in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTemplate", + "type": "string", + "description": "The identifier or path of the template to use that defines the report layout, styling, and sections.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the final report document such as 'pdf', 'html', or 'md' (Markdown).", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag to include visual charts generated from the data within the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Custom title text to use at the top of the report.", + "required": false, + "defaultValue": "Analytics Report" + }, + { + "name": "author", + "type": "string", + "description": "Name of the report author to display in the report metadata or header.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format string to display dates consistently within the report, e.g. 'YYYY-MM-DD'.", + "required": false, + "defaultValue": "YYYY-MM-DD" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report file content as a base64 string, its file name, and the MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when raw analytical data from sources such as datasets or API responses need to be converted into human-readable and professional reports for presentation or sharing with stakeholders. Ideal for creating consistent reports including tables, summary statistics, and charts in multiple output formats.", + "limitations": "Cannot interpret or generate analytical insights; expects preprocessed analytical data as input. Does not perform data analysis or cleaning itself, only formatting into reports.", + "examples": [ + "Generate a PDF report with charts from monthly sales data.", + "Produce an HTML report summarizing user engagement metrics using a custom template.", + "Create a Markdown report of key performance indicators with a specified date format." + ] + }, + "tags": [ + "data-analytics", + "reporting", + "formatting", + "visualization", + "pdf", + "html", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"rawData\":{\"metrics\":[{\"name\":\"Total Sales\",\"value\":120000},{\"name\":\"Average Session Duration\",\"value\":300}]},\"reportTemplate\":\"modern\",\"outputFormat\":\"pdf\",\"includeCharts\":true,\"title\":\"Monthly Sales Report\",\"author\":\"Alice\",\"dateFormat\":\"YYYY-MM-DD\"}", + "description": "Format sales metrics into a modern PDF report with charts and custom title/author." + }, + { + "inputJson": "{\"rawData\":{\"userStats\":[{\"metric\":\"Active Users\",\"count\":1500},{\"metric\":\"New Signups\",\"count\":300}]},\"outputFormat\":\"html\",\"includeCharts\":false,\"title\":\"User Engagement Report\"}", + "description": "Generate a simple HTML report from user engagement stats without charts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "data-analytics.createEvent", + "description": "Creates a structured analytics event record from user-provided event details, including event name, timestamp, user identifiers, and additional metadata. The tool validates and formats these inputs into a standardized event object suitable for downstream analytics processing or storage.", + "category": "data-analytics", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The name of the event to be recorded, e.g., 'page_view' or 'purchase'.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string representing the event occurrence time. Defaults to current time if omitted.", + "required": false, + "defaultValue": "current_timestamp" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user associated with the event.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionId", + "type": "string", + "description": "Identifier representing the user’s session in which the event happened.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional key-value pairs with contextual event data, e.g., page URL, product details.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "eventProperties", + "type": "object", + "description": "Optional structured properties specific to the event, e.g., {'productId': '1234', 'price':100}.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the fully constructed and validated event, including all provided details and a standardized schema for analytics ingestion." + }, + "aiAgent": { + "useCase": "Use this tool when needing to formulate a clear, standardized event record from raw inputs, ensuring consistent formatting for data analytics workflows, tracking user behavior, or feeding event pipelines.", + "limitations": "Does not send or store events; only constructs the event object. Does not infer missing data beyond timestamp defaulting or validate specific event business logic beyond structural correctness.", + "examples": [ + "Create a purchase event with user, session, timestamp, and detailed product info.", + "Generate a page_view event with minimal metadata including userId and current timestamp.", + "Form a custom event with dynamic metadata and arbitrary event properties." + ] + }, + "tags": [ + "data", + "analytics", + "event", + "tracking", + "user-behavior", + "event-creation" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"purchase\",\"timestamp\":\"2024-05-01T10:15:30Z\",\"userId\":\"user_123\",\"sessionId\":\"sess_456\",\"metadata\":{\"pageUrl\":\"https://shop.example.com/product/1234\"},\"eventProperties\":{\"productId\":\"1234\",\"price\":49.99}}", + "description": "Create a purchase event with product details and user session info." + }, + { + "inputJson": "{\"eventName\":\"page_view\",\"userId\":\"user_789\"}", + "description": "Create a page view event with current timestamp and minimal details." + }, + { + "inputJson": "{\"eventName\":\"custom_action\",\"userId\":\"user_999\",\"metadata\":{\"buttonColor\":\"red\"},\"eventProperties\":{\"actionType\":\"click\",\"label\":\"signup_button\"}}", + "description": "Create a custom event with metadata and properties describing a button click." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "data-analytics.createEndpoint", + "description": "This tool creates a REST API endpoint for data analytics applications. It accepts configuration inputs such as endpoint path, HTTP method, data processing logic in code form, and optional authentication settings. It outputs a deployable endpoint configuration object ready for integration in a backend service.", + "category": "data-analytics", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path at which the endpoint will be accessible, e.g., '/analytics/data'.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method for the endpoint, e.g., GET, POST, PUT, DELETE.", + "required": true, + "defaultValue": "GET" + }, + { + "name": "processingCode", + "type": "string", + "description": "JavaScript code snippet that defines how to process the incoming request data and produce a response. Should be safe and self-contained.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires authentication to access.", + "required": false, + "defaultValue": "false" + }, + { + "name": "responseType", + "type": "string", + "description": "The content type of the response, such as 'application/json' or 'text/csv'.", + "required": false, + "defaultValue": "application/json" + } + ], + "returns": { + "type": "object", + "description": "An object with the full endpoint configuration, including the path, method, processing logic, authentication flag, and response metadata, ready for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate and configure backend API endpoints that handle data analytics tasks, such as aggregating data, filtering analytics results, or computing metrics dynamically. It is ideal for automating endpoint creation in systems requiring quick data insights delivery over HTTP.", + "limitations": "This tool does not deploy the endpoint to a live server; it only generates configuration code and metadata. It also does not validate the processing code for security risks or runtime errors.", + "examples": [ + "Create an analytics endpoint at '/reports/daily' using POST that computes sales totals, requiring authentication.", + "Generate a GET endpoint '/stats/user' that returns user activity summary as JSON without authentication." + ] + }, + "tags": [ + "data-analytics", + "endpoint", + "API", + "REST", + "code-generation", + "backend", + "automation" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/analytics/summarize\",\"httpMethod\":\"POST\",\"processingCode\":\"const body = JSON.parse(request.body); return { summary: body.data.reduce((a,b) => a + b, 0) };\",\"authenticationRequired\":true,\"responseType\":\"application/json\"}", + "description": "Creates a POST endpoint '/analytics/summarize' that sums an array of numbers sent in the request body, requires authentication, and returns JSON." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "data-transformation.composeDocument", + "description": "This tool accepts an array of content blocks, each with text, formatting, and optional metadata, then composes them into a structured document output in specified format (e.g., JSON, HTML, Markdown). It processes ordering, applies styles, and merges elements to create a cohesive document representation.", + "category": "data-transformation", + "parameters": [ + { + "name": "contentBlocks", + "type": "array", + "description": "An array of content block objects defining the document parts such as paragraphs, headings, images, or lists, each with relevant attributes.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output document format, e.g., 'json', 'html', or 'markdown'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to embed metadata like authorship or timestamps in the output document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Optional title to include at the start of the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed document in the specified format as a string and relevant metadata, such as length and format type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically assemble structured documents from multiple discrete content elements, applying formatting and producing a final document in various common formats for display or storage.", + "limitations": "Does not perform deep natural language understanding or generate content; it expects input content blocks to be pre-defined and focuses solely on composition and formatting.", + "examples": [ + "Compose a markdown document from multiple text and heading blocks.", + "Generate a JSON representation of an article composed of paragraphs, images, and lists.", + "Create an HTML document from input content blocks with embedded metadata." + ] + }, + "tags": [ + "document", + "composition", + "formatting", + "data-transformation", + "markdown", + "html", + "json" + ], + "examples": [ + { + "inputJson": "{\"contentBlocks\":[{\"type\":\"heading\",\"level\":1,\"text\":\"Monthly Report\"},{\"type\":\"paragraph\",\"text\":\"This is the summary of the report.\"},{\"type\":\"list\",\"style\":\"bullet\",\"items\":[\"Revenue increased\",\"Customer base expanded\"]}],\"outputFormat\":\"markdown\",\"includeMetadata\":true,\"documentTitle\":\"Monthly Report\"}", + "description": "Compose a markdown document containing a heading, paragraph, and bullet list with metadata included." + }, + { + "inputJson": "{\"contentBlocks\":[{\"type\":\"paragraph\",\"text\":\"Introduction to the project.\"},{\"type\":\"image\",\"url\":\"https://example.com/image.png\",\"altText\":\"Project image\"}],\"outputFormat\":\"html\",\"includeMetadata\":false,\"documentTitle\":\"Project Overview\"}", + "description": "Create an HTML document with text and an image without metadata." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "data-validation.analyzeText", + "description": "Analyzes input text to assess quality aspects such as spelling accuracy, grammar correctness, readability score, sentiment polarity, and keyword density. Accepts raw text and optional parameters to focus analysis. Produces a detailed report with metrics and identified issues.", + "category": "data-validation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to be analyzed for quality and characteristics.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkSpelling", + "type": "boolean", + "description": "Enable spelling error detection within the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkGrammar", + "type": "boolean", + "description": "Enable grammar error detection within the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Perform sentiment analysis to indicate positive, negative, or neutral tone.", + "required": false, + "defaultValue": "false" + }, + { + "name": "keywords", + "type": "array", + "description": "Optional list of keywords to evaluate their frequency and density in the text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') to tailor analysis to the text's language.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including spelling errors count, grammar issues list, readability score, sentiment label and score, and keyword density report." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the quality, clarity, and tone of a text input, such as reviewing user submissions, assessing document quality, or extracting writing metrics for editorial purposes.", + "limitations": "This tool does not correct errors or rewrite text; it only identifies issues and provides analysis. It may not fully understand highly domain-specific or poetic language nuances.", + "examples": [ + "Analyze this blog post's text for grammar and readability.", + "Check the sentiment and keyword density in a customer review.", + "Evaluate a document for spelling mistakes and language correctness." + ] + }, + "tags": [ + "text analysis", + "data validation", + "quality check", + "sentiment analysis", + "readability", + "spelling", + "grammar" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This sentence has a speling error.\",\"checkSpelling\":true,\"checkGrammar\":true}", + "description": "Analyze text with an intentional spelling error to identify it." + }, + { + "inputJson": "{\"text\":\"I love this product! It's fantastic and well-made.\",\"analyzeSentiment\":true}", + "description": "Perform sentiment analysis on a positive product review." + }, + { + "inputJson": "{\"text\":\"The quick brown fox jumps over the lazy dog.\",\"keywords\":[\"fox\",\"dog\"]}", + "description": "Evaluate keyword density for specific words in a well-known sentence." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "data-validation.formatCode", + "description": "This tool accepts source code as input in various programming languages, formats the code according to specified style guidelines or predefined configurations, and outputs the well-formatted, standardized code string. It helps maintain code consistency and readability by applying indentation, spacing, and line-break rules.", + "category": "data-validation", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The source code text that needs to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the source code (e.g., 'javascript', 'python', 'java').", + "required": true, + "defaultValue": "" + }, + { + "name": "styleConfig", + "type": "object", + "description": "Optional formatting style configuration specifying indentation size, max line length, and other formatting rules.", + "required": false, + "defaultValue": "" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs for indentation instead of spaces.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length before wrapping occurs; if zero or not set, default style is used.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string and any warnings if formatting could not be fully applied." + }, + "aiAgent": { + "useCase": "Use this tool when validating and cleaning source code input before further processing, to ensure that code conforms to style guidelines and is easier to analyze or display. It is particularly helpful for automated pipelines requiring consistent code style or for presenting code snippets in standardized formats.", + "limitations": "This tool does not perform code linting or correctness checking. It cannot fix semantic errors, only syntactic style formatting. Complex or unsupported languages may have limited formatting capabilities.", + "examples": [ + "Format a JavaScript function to use 2-space indentation and wrap lines at 80 characters.", + "Format a Python script with standard PEP8 indentation and spacing rules.", + "Format a Java file with tabs for indentation and a maximum line length of 100 characters." + ] + }, + "tags": [ + "formatting", + "code-style", + "source-code", + "validation", + "cleaning", + "programming-language" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function test() {console.log('hello world');}\",\"language\":\"javascript\",\"styleConfig\":{\"indentSize\":2},\"useTabs\":false,\"maxLineLength\":80}", + "description": "Format a simple JavaScript function with 2-space indentation and max line length 80." + }, + { + "inputJson": "{\"code\":\"def hello():\\n print('Hello world')\\n\",\"language\":\"python\",\"styleConfig\":{},\"useTabs\":false}", + "description": "Format a Python function with default style config (PEP8 style expected)." + }, + { + "inputJson": "{\"code\":\"public class Test{public static void main(String[] args){System.out.println(\\\"Hello\\\");}}\",\"language\":\"java\",\"useTabs\":true,\"maxLineLength\":100}", + "description": "Format Java code using tabs for indentation and a max line length of 100 characters." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "data-validation.generateWord", + "description": "Generates a single word string based on specified language, part of speech, and optional length constraints. Accepts parameters defining language code, desired part of speech (noun, verb, adjective, etc.), and minimum and maximum length for the word. Outputs a valid word string matching the criteria or an empty string if no suitable word is found.", + "category": "data-validation", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "The language code (ISO 639-1) for the generated word (e.g., 'en' for English).", + "required": true, + "defaultValue": "\"en\"" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "The grammatical part of speech for the word to generate (e.g., noun, verb, adjective).", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "minLength", + "type": "number", + "description": "Minimum length of the generated word, inclusive.", + "required": false, + "defaultValue": "1" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word, inclusive.", + "required": false, + "defaultValue": "20" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "Whether to capitalize the first letter of the generated word.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word as a string. Returns an empty string if no word matches criteria, with the field 'word'." + }, + "aiAgent": { + "useCase": "Use this tool when you need a valid word generated dynamically for data validation tests, such as testing input fields, language processing pipelines, or generating sample text data that must conform to specific linguistic properties. Ideal for quickly producing example words that meet language and part of speech constraints.", + "limitations": "This tool generates single words only, not phrases or sentences. It depends on internal lexical data which may not cover rare or highly specialized vocabulary. It does not guarantee semantic appropriateness beyond part of speech filtering.", + "examples": [ + "Generate a noun in English between 3 and 8 letters.", + "Generate a capitalized adjective in Spanish.", + "Generate any verb in English with no length constraints." + ] + }, + "tags": [ + "data-validation", + "word-generation", + "linguistics", + "language", + "part-of-speech", + "text-data" + ], + "examples": [ + { + "inputJson": "{\"language\":\"en\",\"partOfSpeech\":\"noun\",\"minLength\":3,\"maxLength\":8,\"capitalize\":false}", + "description": "Generate an English noun between 3 and 8 letters, lowercase." + }, + { + "inputJson": "{\"language\":\"es\",\"partOfSpeech\":\"adjective\",\"capitalize\":true}", + "description": "Generate a capitalized Spanish adjective with default length constraints." + }, + { + "inputJson": "{\"language\":\"en\",\"partOfSpeech\":\"verb\"}", + "description": "Generate any English verb with default length constraints, lowercase." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "data-validation.generateJSON", + "description": "Generates synthetic JSON data objects based on a user-defined schema to facilitate data validation and testing. Accepts a schema defining fields, types, and value constraints, then produces an array of JSON objects conforming to these specifications, supporting realistic test data generation.", + "category": "data-validation", + "parameters": [ + { + "name": "schema", + "type": "object", + "description": "An object defining the structure of JSON objects to generate, including field names, data types (string, number, boolean, array, object), and optional constraints (e.g., min, max, regex).", + "required": true, + "defaultValue": "" + }, + { + "name": "count", + "type": "number", + "description": "Number of JSON objects to generate according to the schema.", + "required": true, + "defaultValue": "1" + }, + { + "name": "includeNulls", + "type": "boolean", + "description": "Whether to randomly include null values for fields when allowed by the schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "seed", + "type": "number", + "description": "Optional seed for random data generation to ensure reproducibility of generated data.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "array", + "description": "An array of generated JSON objects matching the specified schema and constraints, suitable for validation and testing purposes." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create realistic yet synthetic JSON data samples for validating data ingestion pipelines, testing APIs, or verifying data processing workflows. It helps generate predictable, structured test data based on dynamic schema input, supporting robust QA and integration testing.", + "limitations": "This tool does not generate meaningful semantic content beyond schema constraints; it cannot infer domain-specific logic or complex data interdependencies beyond basic constraint rules.", + "examples": [ + "Generate 100 JSON user profiles with name, age, and email fields defined in the schema.", + "Create 10 sample order objects including nested address and product arrays to test an ecommerce API.", + "Produce 50 JSON objects with boolean flags and optional nullable fields for feature flag testing." + ] + }, + "tags": [ + "data-validation", + "json", + "test-data-generation", + "synthetic-data", + "schema-driven", + "data-quality", + "testing" + ], + "examples": [ + { + "inputJson": "{\"schema\":{\"name\":{\"type\":\"string\",\"regex\":\"^[A-Za-z]{3,10}$\"},\"age\":{\"type\":\"number\",\"min\":18,\"max\":99},\"email\":{\"type\":\"string\",\"regex\":\"^[\\w.-]+@[\\w.-]+\\\\.com$\"}},\"count\":5}", + "description": "Generate 5 JSON objects with name (3-10 letters), age between 18 and 99, and email matching a simple pattern." + }, + { + "inputJson": "{\"schema\":{\"id\":{\"type\":\"string\",\"regex\":\"^ID\\\\d{4}$\"},\"active\":{\"type\":\"boolean\"}},\"count\":3,\"includeNulls\":true}", + "description": "Generate 3 JSON objects with an ID string formatted 'ID' plus 4 digits, and an active boolean with possible null values." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "data-validation.createAPI", + "description": "Creates a RESTful API endpoint that validates incoming JSON data against a defined JSON schema. Accepts a JSON schema and configuration options, then generates API code that processes requests, validates payloads, and returns validation results or error messages. Output includes the API source code as a string.", + "category": "data-validation", + "parameters": [ + { + "name": "jsonSchema", + "type": "object", + "description": "The JSON schema object defining the validation rules for incoming data.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "The URL path for the API endpoint (e.g., '/validate').", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to listen for, e.g., 'POST', 'PUT'.", + "required": false, + "defaultValue": "\"POST\"" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language for the generated API code (e.g., 'NodeJS', 'Python').", + "required": false, + "defaultValue": "\"NodeJS\"" + }, + { + "name": "framework", + "type": "string", + "description": "Web framework to use for generating the API (e.g., 'Express' for NodeJS, 'Flask' for Python).", + "required": false, + "defaultValue": "\"Express\"" + }, + { + "name": "requireAuthentication", + "type": "boolean", + "description": "Flag indicating whether the generated API requires an authentication token header.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API source code as a string and metadata such as language and framework used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly scaffold a validation API endpoint from a JSON schema to enforce data integrity in applications or services. Ideal for backend services requiring standardized input validation without manual coding. It automates API code generation for easy integration and testing.", + "limitations": "Does not deploy or host the generated API; does not support advanced schema features like conditional schemas or custom validation functions; limited to basic authentication inclusion; supports only a few languages and frameworks.", + "examples": [ + "Create an API in NodeJS with Express that validates user registration payloads against a user schema.", + "Generate a POST endpoint in Python Flask that validates order submission JSON data.", + "Create a secured validation API endpoint requiring authentication token for financial transaction inputs." + ] + }, + "tags": [ + "data-validation", + "API", + "code-generation", + "JSON-schema", + "backend", + "automation" + ], + "examples": [ + { + "inputJson": "{\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"username\":{\"type\":\"string\"},\"password\":{\"type\":\"string\"}},\"required\":[\"username\",\"password\"]},\"apiEndpoint\":\"/validateUser\",\"httpMethod\":\"POST\",\"programmingLanguage\":\"NodeJS\",\"framework\":\"Express\",\"requireAuthentication\":false}", + "description": "Generate a NodeJS Express POST API '/validateUser' that validates username and password fields." + }, + { + "inputJson": "{\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"orderId\":{\"type\":\"string\"},\"amount\":{\"type\":\"number\"}},\"required\":[\"orderId\",\"amount\"]},\"apiEndpoint\":\"/validateOrder\",\"httpMethod\":\"POST\",\"programmingLanguage\":\"Python\",\"framework\":\"Flask\",\"requireAuthentication\":true}", + "description": "Generate a secured Python Flask API POST endpoint '/validateOrder' validating orderId and amount." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "etl-processes.uploadReport", + "description": "Uploads a structured report file (e.g., PDF, DOCX, or JSON) to a specified data repository or server for storage and further ETL processing. Accepts file data and metadata, validates formats and authentication, then stores the report and returns upload status and storage location.", + "category": "etl-processes", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded content of the report file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the report file including extension (e.g., report.pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the report file (e.g., application/pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Target path or folder in the repository where the report will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata about the report, such as author, date, or tags.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite a report if one with the same name exists at the destination.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key required to authorize the upload operation.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "The result object indicating success or failure of the upload, including a message and the URL/location of the stored report if successful." + }, + "aiAgent": { + "useCase": "Use this tool when needing to upload structured or semi-structured reports as part of an ETL pipeline to a data storage or management system. It facilitates incorporation of document data into the ETL process by managing transfer, validation, and storage of report files with metadata and access control.", + "limitations": "Does not parse or analyze the report content; only uploads and stores files. Not designed for streaming large files or direct editing of report contents.", + "examples": [ + "Upload a monthly sales report PDF to the reports repository, providing authentication and metadata.", + "Overwrite an existing JSON report file in a subfolder with updated data.", + "Upload a DOCX project summary report with author metadata and save it under a secure folder path." + ] + }, + "tags": [ + "upload", + "report", + "etl", + "file-storage", + "document-management", + "data-pipeline" + ], + "examples": [ + { + "inputJson": "{\"fileContent\":\"JVBERi0xLjQKJcfs...\",\"fileName\":\"monthly-sales.pdf\",\"fileType\":\"application/pdf\",\"destinationPath\":\"/reports/2024/monthly/\",\"metadata\":{\"author\":\"Jane Doe\",\"department\":\"Sales\"},\"overwriteExisting\":false,\"authToken\":\"eyJhbGciOiJI...\"}", + "description": "Uploading a PDF monthly sales report with metadata to the designated monthly reports folder." + }, + { + "inputJson": "{\"fileContent\":\"UEsDBBQABgAIAAAAIQC...\",\"fileName\":\"project-summary.docx\",\"fileType\":\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\"destinationPath\":\"/projects/summary/\",\"metadata\":{\"author\":\"John Smith\",\"tags\":[\"summary\",\"project\"]},\"overwriteExisting\":true,\"authToken\":\"eyJhbGciOiJI...\"}", + "description": "Overwriting an existing DOCX project summary report with new content and metadata." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "etl-processes.formatReport", + "description": "Formats a structured report data object into a well-organized, human-readable document in various formats such as PDF, HTML, or plain text. It accepts raw report content and layout options, applies formatting rules like headers, footers, tables, and styling, then outputs the formatted report as a string or binary data for further use or distribution.", + "category": "etl-processes", + "parameters": [ + { + "name": "reportData", + "type": "object", + "description": "The raw report content including sections, tables, texts, and metadata to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "The output format of the report, e.g., 'pdf', 'html', or 'text'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents in the formatted report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "pageSize", + "type": "string", + "description": "The page size for the output document, e.g., 'A4', 'Letter'. Applicable mainly for PDF format.", + "required": false, + "defaultValue": "A4" + }, + { + "name": "includePageNumbers", + "type": "boolean", + "description": "Whether to add page numbers to each page in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "styleOptions", + "type": "object", + "description": "An object describing styling preferences like fonts, colors, and margins for report formatting.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report output, including a base64 encoded string for binary formats or raw string for plaintext." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to convert raw structured report data into polished, presentation-ready documents in various formats for distribution, printing, or archiving. It is particularly useful for automating report generation after data extraction and analysis stages.", + "limitations": "This tool does not generate report content or perform data analysis. It formats existing report data but cannot correct content errors or create data visualizations beyond basic table rendering.", + "examples": [ + "Format quarterly sales report data into a styled PDF with page numbers.", + "Generate an HTML report including a table of contents from structured input data.", + "Produce a plain text summary report without page numbers." + ] + }, + "tags": [ + "etl", + "report", + "formatting", + "pdf", + "html", + "document", + "automation" + ], + "examples": [ + { + "inputJson": "{\"reportData\":{\"title\":\"Quarterly Sales\",\"sections\":[{\"header\":\"Q1 Summary\",\"content\":\"Sales increased by 10% compared to last quarter.\"}]},\"formatType\":\"pdf\",\"includeTableOfContents\":true,\"pageSize\":\"Letter\",\"includePageNumbers\":true,\"styleOptions\":{\"font\":\"Arial\",\"fontSize\":12}}", + "description": "Format a quarterly sales report into a Letter-sized PDF with table of contents and page numbers using Arial font." + }, + { + "inputJson": "{\"reportData\":{\"title\":\"System Logs\",\"sections\":[{\"header\":\"Errors\",\"content\":\"No errors found during the scan.\"}]},\"formatType\":\"html\",\"includeTableOfContents\":false,\"includePageNumbers\":false}", + "description": "Generate an HTML report for system logs without table of contents and page numbers." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "etl-processes.generateEvent", + "description": "Generates a structured analytics event record from raw input data. Accepts event metadata such as event type, user identifiers, properties, and timestamps, processes them to create a consistent event object, and outputs the event in a format ready for downstream analytics ingestion or storage.", + "category": "etl-processes", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "The type or name of the event to generate (e.g., 'page_view', 'purchase').", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user performing the event.", + "required": false, + "defaultValue": "" + }, + { + "name": "sessionId", + "type": "string", + "description": "Identifier for the user's session to group events.", + "required": false, + "defaultValue": "" + }, + { + "name": "eventProperties", + "type": "object", + "description": "A key-value map of additional properties related to the event (e.g., productId, pageUrl).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp representing when the event occurred. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "anonymizeUser", + "type": "boolean", + "description": "If true, the userId will be removed/anonymized in the output event.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured event object including sanitized eventType, timestamp, user/session identifiers as applicable, and event properties, ready for ingestion." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate consistent, structured analytics event data from various input sources. Especially useful in ETL pipelines to standardize event formats before loading into data warehouses or analytics systems.", + "limitations": "Does not validate event property schemas beyond basic JSON structure; does not enrich events with external data or complex transformations; timestamps default to current time if none provided but depend on correct formatting if supplied.", + "examples": [ + "Generate an event record for a user purchase with product details and user identifiers.", + "Create a page view event anonymizing user info for privacy compliance.", + "Standardize raw click event data into a uniform event structure for analytics ingestion." + ] + }, + "tags": [ + "etl", + "event", + "analytics", + "data-transformation", + "tracking", + "ingestion" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"purchase\",\"userId\":\"user123\",\"sessionId\":\"sess456\",\"eventProperties\":{\"productId\":\"prod789\",\"price\":29.99},\"timestamp\":\"2024-06-01T12:34:56Z\",\"anonymizeUser\":false}", + "description": "Generate a purchase event recording product ID, price, user and session IDs with a specified timestamp." + }, + { + "inputJson": "{\"eventType\":\"page_view\",\"userId\":\"user123\",\"eventProperties\":{\"pageUrl\":\"https://example.com/home\"},\"anonymizeUser\":true}", + "description": "Generate a page view event with anonymized user ID and current timestamp." + }, + { + "inputJson": "{\"eventType\":\"click\",\"eventProperties\":{\"buttonId\":\"signup-btn\"}}", + "description": "Generate a click event with minimal data, defaulting timestamp to current time and no user/session info." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "etl-processes.generateCSV", + "description": "Generates a CSV-formatted string from a given array of objects or array of arrays. Accepts input data as JSON objects or arrays, applies optional custom headers and delimiter, and outputs a valid CSV string ready for saving or transmission.", + "category": "etl-processes", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Input data to convert into CSV format. Can be an array of objects (keys become headers) or array of arrays (rows).", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "array", + "description": "Optional array of strings specifying CSV column headers. If omitted and data is array of objects, keys from first object are used.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to separate CSV columns. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include headers as the first row in CSV output. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character used to quote values that contain delimiters or special characters. Defaults to double quote (\").", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineEnding", + "type": "string", + "description": "String used to terminate each CSV line. Defaults to standard CRLF (\\r\\n).", + "required": false, + "defaultValue": "\\r\\n" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV string under 'csvContent' key." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to convert structured JSON data (arrays of objects or arrays) into a CSV formatted string for data export, reporting, or integration. It enables agents to serialize structured data efficiently with control over CSV format details like delimiters and headers.", + "limitations": "This tool does not perform any data validation or normalization beyond CSV formatting. It cannot convert nested or complex data types automatically. It does not write to files, only returns CSV as string.", + "examples": [ + "Generate CSV from an array of user objects with default settings.", + "Generate CSV from array of arrays with a semicolon delimiter.", + "Export data with custom headers and disable headers row in output." + ] + }, + "tags": [ + "etl", + "csv", + "data-export", + "data-transformation", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}]}", + "description": "Generate CSV from an array of objects using keys as headers." + }, + { + "inputJson": "{\"data\":[[\"name\",\"age\",\"city\"],[\"Charlie\",22,\"Chicago\"],[\"Diana\",28,\"Boston\"]],\"delimiter\":\";\"}", + "description": "Generate CSV from array of arrays with semicolon delimiter." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Book\",\"price\":12.99},{\"product\":\"Pen\",\"price\":1.5}],\"headers\":[\"productName\",\"productPrice\"],\"includeHeaders\":false}", + "description": "Generate CSV from objects with custom headers and omit headers row." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "etl-processes.createService", + "description": "Creates a new ETL (Extract, Transform, Load) service configuration to automate data workflows. Accepts input parameters defining source and destination data systems, transformation rules, schedule settings, and service metadata. Processes these inputs to generate a deployable ETL service definition that orchestrates data extraction, transformation, and loading tasks.", + "category": "etl-processes", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "Unique name for the ETL service to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration object defining the data source connection and extraction parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationConfig", + "type": "object", + "description": "Configuration object specifying the target data system and loading options.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationRules", + "type": "array", + "description": "Array of transformation rule objects defining how to modify or map the extracted data before loading.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "scheduleCron", + "type": "string", + "description": "Cron expression defining the execution schedule for the ETL service.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging for the ETL service runs.", + "required": false, + "defaultValue": "false" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration for retry attempts and intervals on ETL task failures.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created ETL service ID, configuration summary, and deployment status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of data integration services that move and transform data between systems on a scheduled or triggered basis. This applies to automating data pipeline setup for analytics, reporting, or migration tasks where reusable ETL definitions are required.", + "limitations": "This tool does not perform the actual data extraction or loading; it only generates the service configuration. Actual runtime execution depends on the ETL infrastructure outside the scope of this tool. Complex transformations requiring custom scripting may need additional tooling.", + "examples": [ + "Create an ETL service to extract sales data from an SQL database, transform currency fields, and load into a data warehouse every night at 2 AM.", + "Create a service to move JSON logs from cloud storage, flatten nested fields, and load into a NoSQL database with retry on failure.", + "Set up a monthly ETL job importing user data from REST API endpoints into a reporting database with detailed success/failure logging enabled." + ] + }, + "tags": [ + "etl", + "service", + "automation", + "data-integration", + "workflow", + "scheduling", + "transformation" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"dailySalesImport\",\"sourceConfig\":{\"type\":\"sql\",\"connectionString\":\"Server=myServer;Database=sales;User Id=admin;Password=password;\",\"query\":\"SELECT * FROM daily_sales\"},\"destinationConfig\":{\"type\":\"dataWarehouse\",\"connectionString\":\"Server=dwServer;Database=analytics;User Id=dwadmin;Password=dwpass;\"},\"transformationRules\":[{\"field\":\"sales_amount\",\"operation\":\"currencyConversion\",\"params\":{\"from\":\"USD\",\"to\":\"EUR\"}}],\"scheduleCron\":\"0 2 * * *\",\"enableLogging\":true}", + "description": "Create a daily ETL service to import and convert sales data from SQL DB to data warehouse with logging enabled." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "etl-processes.createLead", + "description": "Creates a new sales lead record by extracting provided lead information, validating and transforming necessary fields, and loading the transformed data into the CRM system. Accepts input details such as name, contact info, company, and lead source, then outputs a confirmation with lead ID and status.", + "category": "etl-processes", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "First name of the lead contact person", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "Last name of the lead contact person", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address of the lead; must be valid format", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Phone number of the lead, optional but recommended", + "required": false, + "defaultValue": "" + }, + { + "name": "companyName", + "type": "string", + "description": "Name of the lead's company or organization", + "required": false, + "defaultValue": "" + }, + { + "name": "leadSource", + "type": "string", + "description": "Origin of the lead such as referral, web, event, etc.", + "required": false, + "defaultValue": "web" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags or categories to classify the lead", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the lead, e.g. High, Medium, Low", + "required": false, + "defaultValue": "Medium" + } + ], + "returns": { + "type": "object", + "description": "Object containing the newly created lead ID, status, and a message confirming lead creation" + }, + "aiAgent": { + "useCase": "Use this tool when user requests to create or register a new sales lead by supplying personal and business details. It automates the ETL process for new leads to be entered into CRM systems ensuring data validation, transformation, and successful persistence.", + "limitations": "This tool does not handle updating or deleting existing leads. It requires valid and non-empty essential fields like firstName, lastName, and email; it does not validate phone numbers beyond format check.", + "examples": [ + "Create a new lead with full contact info from a trade show", + "Add a lead coming from an email campaign with company details", + "Register a lead quickly using only the minimal required fields" + ] + }, + "tags": [ + "etl", + "lead management", + "crm", + "data ingestion", + "sales automation" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"+1234567890\",\"companyName\":\"Acme Corp\",\"leadSource\":\"trade show\",\"tags\":[\"VIP\",\"north region\"],\"priority\":\"High\"}", + "description": "Create a high priority lead from a trade show event with full contact information." + }, + { + "inputJson": "{\"firstName\":\"John\",\"lastName\":\"Smith\",\"email\":\"john.smith@example.com\"}", + "description": "Create a basic lead with only the required fields for quick registration." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "etl-processes.createCSV", + "description": "Creates a CSV file from structured data provided as an array of objects or arrays. Accepts data input along with optional parameters for delimiter, header inclusion, and quotation style. Processes the input to generate a CSV-formatted string, optionally writing it to a specified file path, and returns the CSV content as a string.", + "category": "etl-processes", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects or arrays representing the rows of the CSV data. Each object key or array index corresponds to a column.", + "required": true, + "defaultValue": "" + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the CSV should include a header row derived from object keys or array indexes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character used to separate values in the CSV (e.g., ',', ';', '\\t').", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character used to quote fields, typically double quotes (\") or single quotes (').", + "required": false, + "defaultValue": "\"" + }, + { + "name": "filePath", + "type": "string", + "description": "Optional file system path to save the generated CSV file. If empty, CSV is not saved to disk.", + "required": false, + "defaultValue": "" + }, + { + "name": "encoding", + "type": "string", + "description": "Character encoding to use when saving the CSV file (e.g., 'utf-8').", + "required": false, + "defaultValue": "utf-8" + }, + { + "name": "includeBOM", + "type": "boolean", + "description": "Whether to include a BOM (byte order mark) at the start of the file to aid compatibility.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the full CSV string as 'csvContent' and, if filePath is provided, a confirmation of file write success as 'fileWritten' boolean." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured JSON-like data into CSV format for data export, reporting, or feeding into systems expecting CSV input. It is suitable when controlling CSV format details such as delimiter or quote characters is necessary, and optional automatic file writing is desired.", + "limitations": "This tool does not handle extremely large datasets that require streaming due to memory constraints. It also does not infer complex nested data structures beyond flat objects or arrays.", + "examples": [ + "Create a CSV from an array of objects with default comma delimiter and header row.", + "Create a tab-separated CSV file saved to disk without headers.", + "Generate a CSV string with semicolon delimiters and quoted fields, without saving a file." + ] + }, + "tags": [ + "etl", + "csv", + "data-format", + "export", + "file-generation" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"NYC\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"LA\"}],\"hasHeader\":true,\"delimiter\":\",\",\"quoteChar\":\"\\\"\",\"filePath\":\"\",\"encoding\":\"utf-8\",\"includeBOM\":false}", + "description": "Convert array of objects to CSV string with header and default comma delimiter, no file output." + }, + { + "inputJson": "{\"data\":[[\"name\",\"age\",\"score\"],[\"Tom\",22,88],[\"Sue\",28,92]],\"hasHeader\":false,\"delimiter\":\"\\t\",\"quoteChar\":\"\\\"\",\"filePath\":\"./output.tsv\",\"encoding\":\"utf-8\",\"includeBOM\":true}", + "description": "Create a TSV file from array of arrays data without header auto-generation, file saved with UTF-8 and BOM." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Pen\",\"price\":1.25},{\"product\":\"Notebook\",\"price\":2.5}],\"hasHeader\":true,\"delimiter\":\";\",\"quoteChar\":\"'\",\"filePath\":\"\",\"encoding\":\"utf-8\",\"includeBOM\":false}", + "description": "Generate a semicolon-delimited CSV string with single quotes around fields, no file saved." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "testing-automation.formatDocument", + "description": "This tool accepts source code or text documents and formats them according to specified style guidelines or formatting rules. It processes the input document, applies formatting such as indentation, line breaks, spacing, and ordering, then outputs the reformatted document text. It supports multiple programming languages and document types based on provided language and style parameters.", + "category": "testing-automation", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The raw text content of the document or source code to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming or document language identifier (e.g., 'javascript', 'python', 'markdown') to determine the formatting rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Identifies which style guide or formatting preset to apply (e.g., 'google', 'pep8', 'default').", + "required": false, + "defaultValue": "default" + }, + { + "name": "tabSize", + "type": "number", + "description": "Number of spaces per indentation level. Used when formatting indentation.", + "required": false, + "defaultValue": "4" + }, + { + "name": "insertFinalNewline", + "type": "boolean", + "description": "Whether to ensure the formatted document ends with a newline character.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Preferred maximum line length before wrapping or breaking lines, if applicable.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted document as a string and metadata such as formatting success status and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to normalize or beautify source code or text documents automatically during testing pipelines, code reviews, or pre-commit hooks to ensure consistent formatting across a project. Suitable for preparing documents for automated quality checks or version control commits.", + "limitations": "Cannot fix semantic errors or rewrite code logic. It only reformats the structure and appearance of the document text. Language support depends on implemented formatting rules. May not support very obscure or custom languages or styles fully.", + "examples": [ + "Format this JavaScript file content following the Google JavaScript style guide with 2 spaces per tab.", + "Reformat the Python script to comply with PEP8 style and ensure lines are wrapped at 79 characters.", + "Format the provided Markdown document text with default indentation and add a trailing newline." + ] + }, + "tags": [ + "formatting", + "automation", + "testing", + "code-quality", + "style", + "source-code" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"function test( ){console.log( 'Hello world' );}\",\"language\":\"javascript\",\"styleGuide\":\"google\",\"tabSize\":2,\"insertFinalNewline\":true,\"maxLineLength\":80}", + "description": "Format a Javascript function using Google style guide with 2-space indent." + }, + { + "inputJson": "{\"documentContent\":\"def foo():\\n print('bar')\",\"language\":\"python\",\"styleGuide\":\"pep8\",\"tabSize\":4,\"insertFinalNewline\":true,\"maxLineLength\":79}", + "description": "Format a Python snippet according to PEP8 style with 4 spaces indentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "testing-automation.formatCode", + "description": "Formats source code according to specified style guidelines to improve readability and maintain consistency. Accepts raw code as input along with language and style preferences. Returns the code formatted according to the given rules or standard conventions if none specified.", + "category": "testing-automation", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "Source code text to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code (e.g., 'javascript', 'python') to apply appropriate formatting rules", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Optional style guide to apply (e.g., 'Google', 'PEP8', 'Airbnb'). If empty, default style for the language is used", + "required": false, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation", + "required": false, + "defaultValue": "4" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tab characters for indentation instead of spaces", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line; lines will be wrapped accordingly", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted code string and metadata about the formatting process, including whether any errors occurred." + }, + "aiAgent": { + "useCase": "Use this tool whenever source code needs to be automatically formatted to improve readability, adhere to coding standards, or normalize style before automated testing or code reviews. It helps maintain uniform code style across different languages and projects by applying language-specific formatting rules and customizable style guides.", + "limitations": "This tool does not perform syntax checking or code linting beyond formatting. It cannot fix semantic errors or enforce complex custom linting rules beyond standard style guide formatting.", + "examples": [ + "Format a messy JavaScript snippet according to the Airbnb style guide.", + "Reformat Python code using PEP8 conventions with 2 space indents.", + "Wrap lines in Java source code to 100 characters using tabs for indentation." + ] + }, + "tags": [ + "formatting", + "code-style", + "testing-automation", + "code-quality", + "automation", + "linting" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function test(){console.log('hello');}\",\"language\":\"javascript\",\"styleGuide\":\"Airbnb\",\"indentSize\":2,\"useTabs\":false,\"maxLineLength\":80}", + "description": "Format JavaScript code using Airbnb style with 2 spaces indentation and 80 character line length limit." + }, + { + "inputJson": "{\"code\":\"def example():\\n print(\\\"hello world\\\")\",\"language\":\"python\",\"styleGuide\":\"PEP8\",\"indentSize\":4,\"useTabs\":false,\"maxLineLength\":79}", + "description": "Format Python code according to PEP8 with 4 space indentation and standard line length." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "testing-automation.composeDocument", + "description": "Composes a structured test document by integrating provided test case specifications, setup instructions, and expected outcomes. Accepts arrays of test cases and configuration details, then generates a formatted document in Markdown or HTML summarizing all elements for automated testing documentation purposes.", + "category": "testing-automation", + "parameters": [ + { + "name": "testCases", + "type": "array", + "description": "Array of test case objects, each with title, description, steps, and expected results", + "required": true, + "defaultValue": "" + }, + { + "name": "setupInstructions", + "type": "string", + "description": "Instructions or prerequisite steps required before executing the test cases", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format, either 'markdown' or 'html'", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an overall summary section in the generated document", + "required": false, + "defaultValue": "true" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Title of the test document; appears as heading", + "required": false, + "defaultValue": "Test Document" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed document content as a string and its format type" + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to generate human-readable testing documentation automatically from raw test case data during software development or QA automation. It streamlines composing consistent test specification documents compatible with CI/CD pipelines or manual review.", + "limitations": "Cannot execute or validate test cases; focuses solely on formatting and composing textual test documentation based on provided inputs.", + "examples": [ + "Generate a Markdown test document from a list of functional test cases for a web application.", + "Create an HTML formatted test spec document including setup instructions for the QA team.", + "Compose a test document summary for integration tests with clear expected results sections." + ] + }, + "tags": [ + "testing", + "automation", + "document-generation", + "test-specification", + "QA" + ], + "examples": [ + { + "inputJson": "{\"testCases\":[{\"title\":\"Login Functionality\",\"description\":\"Verify login with valid credentials.\",\"steps\":[\"Navigate to login page\",\"Enter valid username and password\",\"Click login button\"],\"expectedResults\":\"User is redirected to dashboard.\"}],\"setupInstructions\":\"Ensure test environment is running and database has valid user records.\",\"outputFormat\":\"markdown\",\"includeSummary\":true,\"documentTitle\":\"User Login Tests\"}", + "description": "Compose a Markdown document for user login test cases including setup instructions and summary." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "testing-automation.createText", + "description": "Generates test input text based on specified criteria for automated software testing. Accepts parameters defining length, character sets, patterns, or randomness, then produces text strings suitable to simulate user input or test data within testing frameworks.", + "category": "testing-automation", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Desired length of the generated text string.", + "required": true, + "defaultValue": "100" + }, + { + "name": "includeUppercase", + "type": "boolean", + "description": "Whether to include uppercase letters in the generated text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeLowercase", + "type": "boolean", + "description": "Whether to include lowercase letters in the generated text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDigits", + "type": "boolean", + "description": "Whether to include numeric digits in the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSpecialChars", + "type": "boolean", + "description": "Whether to include special characters in the text (e.g., !@#$%).", + "required": false, + "defaultValue": "false" + }, + { + "name": "pattern", + "type": "string", + "description": "Optional regex pattern that generated text should match. Overrides character set options if provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text string under the 'text' property." + }, + "aiAgent": { + "useCase": "Use this tool when automated tests require generated string inputs matching specific patterns or character compositions, such as simulating user inputs, testing form validations, or stress-testing text handling functions.", + "limitations": "Cannot guarantee matching highly complex regex patterns perfectly; pattern support is simplified. Not suitable for generating semantically meaningful or linguistically correct text.", + "examples": [ + "Generate a 50-character alphanumeric string with special characters.", + "Produce a 10-character string containing only digits.", + "Create a text string matching the regex pattern '^AB\\d{3}XYZ$'." + ] + }, + "tags": [ + "testing", + "automation", + "text-generation", + "input-simulation", + "test-data" + ], + "examples": [ + { + "inputJson": "{\"length\":50,\"includeUppercase\":true,\"includeLowercase\":true,\"includeDigits\":true,\"includeSpecialChars\":true}", + "description": "Generate a 50-character string including uppercase, lowercase, digits, and special characters." + }, + { + "inputJson": "{\"length\":10,\"includeUppercase\":false,\"includeLowercase\":false,\"includeDigits\":true,\"includeSpecialChars\":false}", + "description": "Generate a 10-digit numeric string only." + }, + { + "inputJson": "{\"length\":8,\"pattern\":\"^AB\\\\d{3}XY$\"}", + "description": "Generate a string that starts with 'AB', followed by exactly 3 digits, then 'XY'." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "testing-automation.createTest", + "description": "Creates an automated test script for software applications based on user-defined parameters such as test type, target platform, and test steps. Accepts details about the test scenario and outputs structured test code or script ready for integration with test frameworks.", + "category": "testing-automation", + "parameters": [ + { + "name": "testType", + "type": "string", + "description": "Type of the test to create, e.g., unit, integration, end-to-end, performance, accessibility.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "The platform or environment to test on, e.g., web, android, ios, backend API.", + "required": true, + "defaultValue": "" + }, + { + "name": "testSteps", + "type": "array", + "description": "An ordered list of test steps detailing actions, inputs, and expected outcomes.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Desired programming or scripting language for the generated test code, e.g., JavaScript, Python, Java.", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "framework", + "type": "string", + "description": "Testing framework to generate test code compatible with, e.g., Jest, Cypress, Selenium.", + "required": false, + "defaultValue": "Jest" + }, + { + "name": "includeSetupTeardown", + "type": "boolean", + "description": "Whether to include setup and teardown methods in the test code for initializing and cleaning test states.", + "required": false, + "defaultValue": "true" + }, + { + "name": "testName", + "type": "string", + "description": "A descriptive name for the test case to include in the generated code.", + "required": false, + "defaultValue": "\"Generated Test\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string and metadata about the generated test such as language and framework." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate automated test scripts from structured test scenario descriptions, allowing quick creation of tests for continuous integration, development workflows, or quality assurance processes without manually writing code.", + "limitations": "This tool cannot run or execute the generated test code, validate its correctness against actual applications, or handle complex adaptive test logic beyond the inputs provided. It generates code templates but does not interact with live environments.", + "examples": [ + "Create a unit test for a login function on a web platform using Jest in JavaScript.", + "Generate an end-to-end test for an ecommerce checkout flow targeting a web platform with Cypress.", + "Produce an integration test for a backend API endpoint in Python using pytest." + ] + }, + "tags": [ + "testing", + "automation", + "test-generation", + "code-generation", + "software-testing", + "automated-tests", + "QA" + ], + "examples": [ + { + "inputJson": "{\"testType\":\"unit\",\"targetPlatform\":\"web\",\"testSteps\":[{\"action\":\"call function\",\"functionName\":\"login\",\"inputs\":{\"username\":\"testuser\",\"password\":\"pass123\"},\"expectedOutcome\":\"returns true\"}],\"programmingLanguage\":\"JavaScript\",\"framework\":\"Jest\",\"includeSetupTeardown\":true,\"testName\":\"Login Function Unit Test\"}", + "description": "Generate a unit test in JavaScript using Jest for a login function on a web platform." + }, + { + "inputJson": "{\"testType\":\"end-to-end\",\"targetPlatform\":\"web\",\"testSteps\":[{\"action\":\"navigate\",\"url\":\"https://example.com/login\"},{\"action\":\"input\",\"selector\":\"#username\",\"value\":\"user1\"},{\"action\":\"input\",\"selector\":\"#password\",\"value\":\"pass1\"},{\"action\":\"click\",\"selector\":\"#submit\"},{\"action\":\"expect\",\"selector\":\".welcome-message\",\"valueContains\":\"Welcome user1\"}],\"programmingLanguage\":\"JavaScript\",\"framework\":\"Cypress\",\"includeSetupTeardown\":true,\"testName\":\"User Login E2E Test\"}", + "description": "Create an end-to-end test scenario in Cypress for user login flow on a web platform." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "devops.uploadReport", + "description": "Uploads a report file to a specified remote storage or reporting server. Accepts a report file path or raw content, validates file type (e.g., PDF, HTML), and uploads it to the target destination (S3 bucket, FTP server, or API endpoint). Returns upload status and file URL on success.", + "category": "devops", + "parameters": [ + { + "name": "reportPath", + "type": "string", + "description": "Local file system path to the report file to upload (e.g., /tmp/report.pdf). Either reportPath or reportContent is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportContent", + "type": "string", + "description": "Raw content of the report as a string (e.g., base64-encoded or plain text). Used if reportPath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "File type/extension of the report (e.g., pdf, html, txt). Used for validation and setting correct metadata.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "destinationType", + "type": "string", + "description": "The type of the upload destination: 's3', 'ftp', or 'api'.", + "required": true, + "defaultValue": "s3" + }, + { + "name": "destinationConfig", + "type": "object", + "description": "Configuration object with connection credentials and parameters depending on destinationType, e.g. bucket name for S3, URL and credentials for API or FTP.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite an existing report with the same name at the destination.", + "required": false, + "defaultValue": "false" + }, + { + "name": "archiveOlder", + "type": "boolean", + "description": "If true, archives or moves older reports before uploading the new one (behavior depends on destination).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "UploadResult containing success status, uploaded file URL if successful, and error message if any error occurred." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload build or test reports, or any generated documents, to a remote storage location such as cloud storage, FTP servers, or REST API endpoints for centralized access or further processing.", + "limitations": "This tool does not generate reports or modify their content; it only uploads reports in supported file formats. It cannot validate report content semantic correctness or parse report data.", + "examples": [ + "Upload a test coverage PDF report to an AWS S3 bucket after CI build.", + "Upload HTML build report content directly via API endpoint without a local file.", + "Upload a log report to FTP server and archive previous reports before uploading." + ] + }, + "tags": [ + "upload", + "report", + "devops", + "deployment", + "ci", + "infrastructure", + "automation" + ], + "examples": [ + { + "inputJson": "{\"reportPath\":\"/tmp/coverage-report.pdf\",\"fileType\":\"pdf\",\"destinationType\":\"s3\",\"destinationConfig\":{\"bucketName\":\"ci-reports\",\"region\":\"us-east-1\",\"accessKeyId\":\"AKIA...\",\"secretAccessKey\":\"...\"},\"overwrite\":true}", + "description": "Upload a local PDF coverage report file to an AWS S3 bucket, allowing overwrite." + }, + { + "inputJson": "{\"reportContent\":\"Build Report\",\"fileType\":\"html\",\"destinationType\":\"api\",\"destinationConfig\":{\"endpointUrl\":\"https://reports.example.com/upload\",\"apiKey\":\"abcd1234\"},\"overwrite\":false}", + "description": "Upload build report HTML content directly to a reporting server via REST API." + }, + { + "inputJson": "{\"reportPath\":\"/var/logs/test-report.txt\",\"fileType\":\"txt\",\"destinationType\":\"ftp\",\"destinationConfig\":{\"host\":\"ftp.example.com\",\"username\":\"user\",\"password\":\"pass\",\"remotePath\":\"/reports/\"},\"archiveOlder\":true}", + "description": "Upload a text test report to FTP server, archiving older reports first." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "devops.buildCommit", + "description": "Builds and creates a code commit in a specified Git repository by applying staged changes with a commit message, author details, and optional branch selection. Accepts repository path or URL, commit message, author info, and branch name to produce a commit hash confirming successful commit creation.", + "category": "devops", + "parameters": [ + { + "name": "repositoryPath", + "type": "string", + "description": "Local file path or clone URL of the Git repository where the commit will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Message describing the commit content and purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the commit author to record in the commit metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the commit author for the commit metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Target branch name where the commit should be applied. Defaults to current branch if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "signCommit", + "type": "boolean", + "description": "Flag indicating whether the commit should be GPG signed if signing is configured.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the commitHash string representing the unique SHA identifier of the created commit, and a success boolean indicating operation result." + }, + "aiAgent": { + "useCase": "Use this tool when automating code deployment pipelines, continuous integration workflows, or scripts that require programmatic creation of commits with controlled metadata and branch targeting. Ideal for bots or agents orchestrating code updates to repositories.", + "limitations": "Does not stage new changes; expects that the repository has staged changes ready to commit. Cannot handle merge conflicts or perform pushes to remote repositories. Requires access to the local repository or a cloned repository workspace.", + "examples": [ + "Create a commit in a local repository with author info and message on the develop branch.", + "Commit staged changes in a CI pipeline and retrieve the new commit hash without branch specification.", + "Create a signed commit for verification using provided author details and commit message." + ] + }, + "tags": [ + "devops", + "build", + "commit", + "git", + "automation", + "ci", + "continuous integration" + ], + "examples": [ + { + "inputJson": "{\"repositoryPath\":\"/home/user/projects/myrepo\",\"commitMessage\":\"Fix bug in authentication flow\",\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane.doe@example.com\",\"branchName\":\"feature/auth-fix\",\"signCommit\":false}", + "description": "Create a commit with a specific message and author on the 'feature/auth-fix' branch in a local repository." + }, + { + "inputJson": "{\"repositoryPath\":\"/repo\",\"commitMessage\":\"Update README with contribution guidelines\",\"authorName\":\"CI Bot\",\"authorEmail\":\"ci-bot@example.com\",\"branchName\":\"\",\"signCommit\":false}", + "description": "Create a commit on the current branch in a local repository without signing." + }, + { + "inputJson": "{\"repositoryPath\":\"/repo\",\"commitMessage\":\"Secure API keys storage\",\"authorName\":\"DevOps Engineer\",\"authorEmail\":\"devops@example.com\",\"branchName\":\"security-updates\",\"signCommit\":true}", + "description": "Create a signed commit on the 'security-updates' branch with author details." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "devops.createContainer", + "description": "Creates and deploys a new container instance based on provided configuration parameters such as image name, resource limits, environment variables, and network settings. Accepts container specification inputs, provisions the container on the target infrastructure, and returns deployment details including container ID, status, and access endpoints.", + "category": "devops", + "parameters": [ + { + "name": "imageName", + "type": "string", + "description": "The name of the container image to deploy, including tag if applicable (e.g., 'nginx:latest').", + "required": true, + "defaultValue": "" + }, + { + "name": "containerName", + "type": "string", + "description": "An optional unique name to assign to the container instance.", + "required": false, + "defaultValue": "" + }, + { + "name": "cpuLimit", + "type": "number", + "description": "The maximum number of CPU units allocated to the container (e.g., 2 for 2 cores).", + "required": false, + "defaultValue": "1" + }, + { + "name": "memoryLimitMB", + "type": "number", + "description": "The maximum amount of memory in megabytes allocated to the container.", + "required": false, + "defaultValue": "512" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set inside the container.", + "required": false, + "defaultValue": "" + }, + { + "name": "portMappings", + "type": "array", + "description": "List of port mappings, each mapping host port to container port (e.g., [{\"hostPort\":80,\"containerPort\":8080}]).", + "required": false, + "defaultValue": "" + }, + { + "name": "networkMode", + "type": "string", + "description": "Network mode for the container such as 'bridge', 'host', or a user-defined network.", + "required": false, + "defaultValue": "bridge" + }, + { + "name": "restartPolicy", + "type": "string", + "description": "Container restart policy (e.g., 'no', 'on-failure', 'always').", + "required": false, + "defaultValue": "no" + }, + { + "name": "command", + "type": "array", + "description": "Override the default command to run in the container as a list of strings.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing containerId, status ('created', 'running', or 'failed'), start time, and network access info (e.g., IP address and mapped ports)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the deployment of containerized applications by specifying custom runtime configurations. Suitable for continuous integration pipelines, dynamic infrastructure scaling, or on-demand container provisioning.", + "limitations": "This tool cannot manage clusters, orchestrate multiple containers, or configure complex multi-service networks; it focuses exclusively on creating single container instances per invocation.", + "examples": [ + "Deploy a web server container with custom environment variables and port mapping.", + "Create a resource-limited container from a specific image with a restart policy.", + "Launch a container overriding the default command with specified network settings." + ] + }, + "tags": [ + "devops", + "container", + "deployment", + "automation", + "infrastructure", + "runtime-management" + ], + "examples": [ + { + "inputJson": "{\"imageName\":\"nginx:latest\",\"containerName\":\"webserver01\",\"cpuLimit\":2,\"memoryLimitMB\":1024,\"environmentVariables\":{\"ENV\":\"production\"},\"portMappings\":[{\"hostPort\":8080,\"containerPort\":80}],\"networkMode\":\"bridge\",\"restartPolicy\":\"always\"}", + "description": "Deploy an nginx web server container named 'webserver01' with 2 CPUs, 1GB RAM, exposing container port 80 on host port 8080 and automatic restart." + }, + { + "inputJson": "{\"imageName\":\"python:3.9-slim\",\"command\":[\"python\",\"app.py\"],\"memoryLimitMB\":256}", + "description": "Create a lightweight Python container running 'app.py' with 256MB memory limit and default network settings." + }, + { + "inputJson": "{\"imageName\":\"redis:6-alpine\",\"restartPolicy\":\"on-failure\"}", + "description": "Deploy a Redis container from the alpine image which restarts only on failure using default resources and network." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "devops.createKey", + "description": "Generates a cryptographic key pair for deployment or infrastructure automation purposes. Accepts key type and size preferences, optional passphrase, and returns the public and private keys in PEM format suitable for secure authentication or encryption tasks.", + "category": "devops", + "parameters": [ + { + "name": "keyType", + "type": "string", + "description": "Type of key to generate (e.g., RSA, ECDSA, Ed25519).", + "required": true, + "defaultValue": "" + }, + { + "name": "keySize", + "type": "number", + "description": "Key size in bits for applicable key types (e.g., 2048 for RSA). Ignored for types with fixed size like Ed25519.", + "required": false, + "defaultValue": "2048" + }, + { + "name": "passphrase", + "type": "string", + "description": "Optional passphrase to encrypt the private key for additional security.", + "required": false, + "defaultValue": "" + }, + { + "name": "comment", + "type": "string", + "description": "Optional comment or label to associate with the key pair.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated public and private keys in PEM format, with indication if the private key is encrypted." + }, + "aiAgent": { + "useCase": "Use when you need to programmatically generate secure cryptographic keys for infrastructure automation, continuous deployment, or authentication, allowing agents to provision keys without manual intervention.", + "limitations": "Does not handle key storage or deployment; keys are returned as strings and must be securely stored by the user or subsequent tools. Does not generate keys for deprecated or unsupported algorithms.", + "examples": [ + "Create an RSA 4096-bit key pair without passphrase.", + "Generate an Ed25519 key pair for SSH authentication with a passphrase.", + "Produce an ECDSA key pair with a custom comment label." + ] + }, + "tags": [ + "key generation", + "cryptography", + "deployment", + "security", + "infrastructure", + "automation", + "devops" + ], + "examples": [ + { + "inputJson": "{\"keyType\":\"RSA\",\"keySize\":4096,\"passphrase\":\"\",\"comment\":\"Deployment key for app server\"}", + "description": "Generate a strong RSA 4096-bit key pair without passphrase for deployment use." + }, + { + "inputJson": "{\"keyType\":\"Ed25519\",\"passphrase\":\"s3cretPass\",\"comment\":\"SSH key for CI/CD pipeline\"}", + "description": "Generate Ed25519 key pair with passphrase for secure SSH authentication in CI/CD." + }, + { + "inputJson": "{\"keyType\":\"ECDSA\",\"keySize\":256,\"comment\":\"Monitor key\"}", + "description": "Produce an ECDSA 256-bit key pair with a descriptive comment, no passphrase." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "devops.createPullRequest", + "description": "Creates a pull request on a specified repository platform (e.g., GitHub, GitLab) from a source branch to a target branch. Accepts repository details, branches, title, body, and optional reviewers or assignees. Returns details of the created pull request including URL and ID.", + "category": "devops", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the repository where the pull request will be created, including protocol (e.g., https://github.com/user/repo)", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceBranch", + "type": "string", + "description": "Name of the branch containing the changes to be merged", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "Name of the branch into which the changes will be merged", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the pull request", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Detailed description of the pull request, explaining the changes and purpose", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of usernames or IDs of users requested to review the pull request", + "required": false, + "defaultValue": "[]" + }, + { + "name": "assignees", + "type": "array", + "description": "List of usernames or IDs of users assigned to the pull request", + "required": false, + "defaultValue": "[]" + }, + { + "name": "accessToken", + "type": "string", + "description": "Authentication token with permissions to create pull requests on the target repository", + "required": true, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "Repository hosting platform identifier (e.g., 'github', 'gitlab') to select appropriate API", + "required": false, + "defaultValue": "github" + } + ], + "returns": { + "type": "object", + "description": "An object containing the pull request's unique ID, title, URL link, current status (e.g., open, merged), and creation timestamp." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to automate or assist in software development workflows involving code review and merging. For example, after generating or modifying code, the agent can create a pull request programmatically to initiate review and integration processes, streamlining continuous integration and delivery pipelines.", + "limitations": "This tool does not handle merge conflicts or branch creation; it requires that the source branch exists and is pushed to the remote repository. It also depends on valid access tokens and platform API availability. The tool does not perform code analysis or verify branch status prior to PR creation.", + "examples": [ + "Create a pull request from 'feature/login' to 'develop' on GitHub with title 'Add login feature' and assign reviewers.", + "Open a merge request from branch 'bugfix/ui-fix' to 'master' on GitLab with detailed description and request specific assignees.", + "Generate a pull request without specifying reviewers on a private repo with authentication token." + ] + }, + "tags": [ + "devops", + "pull-request", + "code-review", + "automation", + "continuous-integration", + "repository" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo\",\"sourceBranch\":\"feature/api-endpoint\",\"targetBranch\":\"main\",\"title\":\"Add new API endpoint\",\"body\":\"Implements the new data retrieval API endpoint for the reports module.\",\"reviewers\":[\"alice\",\"bob\"],\"assignees\":[\"carol\"],\"accessToken\":\"ghp_exampletoken123\",\"platform\":\"github\"}", + "description": "Create a GitHub pull request from 'feature/api-endpoint' to 'main' with reviewers and assignees specified." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/company/project\",\"sourceBranch\":\"fix/login-error\",\"targetBranch\":\"master\",\"title\":\"Fix login error handling\",\"body\":\"Fixes the null pointer exception in login logic and improves error responses.\",\"reviewers\":[],\"assignees\":[],\"accessToken\":\"glpat_exampletoken456\",\"platform\":\"gitlab\"}", + "description": "Create a GitLab merge request from 'fix/login-error' to 'master' without requesting reviewers or assignees." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "devops.createModule", + "description": "Creates a deployable infrastructure automation module by generating code templates and configuration files for specified environments. Accepts parameters defining the module name, target cloud provider, infrastructure components, and optional CI/CD integration settings. Outputs structured module directory content ready for versioning and deployment pipelines.", + "category": "devops", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "Name of the infrastructure automation module to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "cloudProvider", + "type": "string", + "description": "Target cloud provider for which the module is intended (e.g., AWS, Azure, GCP).", + "required": true, + "defaultValue": "" + }, + { + "name": "infrastructureComponents", + "type": "array", + "description": "List of infrastructure components to include in the module (e.g., ['VPC','EC2','RDS']).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "ciCdIntegration", + "type": "boolean", + "description": "Whether to include continuous integration/continuous deployment pipeline configurations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Preferred programming or configuration language for the module code (e.g., Terraform, CloudFormation, Pulumi).", + "required": false, + "defaultValue": "Terraform" + } + ], + "returns": { + "type": "object", + "description": "An object containing the directory structure and file contents of the generated infrastructure module, including code templates and configuration files." + }, + "aiAgent": { + "useCase": "Use this tool when needing to bootstrap a new infrastructure automation module targeting specific cloud providers with predefined components and optional CI/CD pipelines, enabling accelerated and consistent DevOps deployments.", + "limitations": "This tool does not deploy the module or validate cloud-specific syntax beyond template generation. It requires user review and integration into existing pipelines.", + "examples": [ + "Create a Terraform module named 'webAppModule' for AWS with networking and compute components.", + "Generate a CloudFormation module for Azure including database and storage services with CI/CD integration enabled." + ] + }, + "tags": [ + "devops", + "infrastructure", + "automation", + "cloud", + "module", + "ci/cd", + "terraform", + "cloudformation" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"coreInfraModule\",\"cloudProvider\":\"AWS\",\"infrastructureComponents\":[\"VPC\",\"EC2\",\"RDS\"],\"ciCdIntegration\":true,\"programmingLanguage\":\"Terraform\"}", + "description": "Create a Terraform AWS module including VPC, EC2, and RDS with CI/CD integration." + }, + { + "inputJson": "{\"moduleName\":\"dataPipeline\",\"cloudProvider\":\"GCP\",\"infrastructureComponents\":[\"ComputeEngine\",\"CloudSQL\"],\"ciCdIntegration\":false,\"programmingLanguage\":\"Pulumi\"}", + "description": "Generate a Pulumi GCP module for Compute Engine and Cloud SQL without CI/CD." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "frontend-development.uploadImage", + "description": "Uploads an image file from the client side to a specified server endpoint, optionally resizing or compressing the image before sending. Accepts image files in common formats, processes transformations if requested, and returns upload status along with URL of the stored image if successful.", + "category": "frontend-development", + "parameters": [ + { + "name": "file", + "type": "object", + "description": "The image file object to upload, typically obtained from a file input or drag-and-drop event.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointUrl", + "type": "string", + "description": "The server URL where the image should be uploaded via POST request.", + "required": true, + "defaultValue": "" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Optional width to resize the image to before upload; maintains aspect ratio if set.", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Optional height to resize the image to before upload; maintains aspect ratio if set.", + "required": false, + "defaultValue": "" + }, + { + "name": "compressQuality", + "type": "number", + "description": "Compression quality factor between 0 and 1 to reduce image file size before upload (only for JPEG/WEBP).", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include original image metadata (EXIF) in the uploaded file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "headers", + "type": "object", + "description": "Additional HTTP headers as key-value pairs to include in the upload request (e.g., authorization tokens).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status (success or failure), a message, and on success the URL location of the uploaded image." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload user-selected or generated image files from a web client to a backend service, optionally performing client-side image processing such as resizing and compression to optimize upload speed and resource usage. Typical scenarios include profile picture uploads, gallery additions, or image-based form submissions.", + "limitations": "This tool cannot securely authenticate the user by itself; authentication must be handled and tokens provided via headers. It does not support multipart uploads for very large files or resume failed uploads automatically.", + "examples": [ + "Upload a user-selected profile photo to the server with a maximum width of 800px, compressing it moderately to reduce data usage.", + "Send a full quality image with metadata preserved to a cloud image hosting endpoint, including an authorization header.", + "Quickly upload a small image without resizing or compression to a test HTTP endpoint for validation." + ] + }, + "tags": [ + "image", + "upload", + "frontend", + "client-side", + "resize", + "compression" + ], + "examples": [ + { + "inputJson": "{\"file\": {\"name\": \"avatar.png\", \"type\": \"image/png\", \"size\": 204800}, \"endpointUrl\": \"https://api.example.com/upload\", \"resizeWidth\": 800, \"compressQuality\": 0.7}", + "description": "Upload a PNG avatar image resized to 800px width and compressed to 70% quality." + }, + { + "inputJson": "{\"file\": {\"name\": \"photo.jpg\", \"type\": \"image/jpeg\", \"size\": 1024000}, \"endpointUrl\": \"https://images.example.com/upload\", \"includeMetadata\": true, \"headers\": {\"Authorization\": \"Bearer abc123\"}}", + "description": "Upload a JPEG photo including metadata with authentication header for authorization." + }, + { + "inputJson": "{\"file\": {\"name\": \"icon.svg\", \"type\": \"image/svg+xml\", \"size\": 10240}, \"endpointUrl\": \"https://upload.example.net/images\"}", + "description": "Upload an SVG file without resizing or compression to a test endpoint." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "frontend-development.generateLink", + "description": "Generates an HTML anchor (<a>) tag string based on specified input parameters including URL, link text, target behavior, CSS classes, and additional attributes. It processes inputs to produce a fully-formed link element string ready for integration into frontend code.", + "category": "frontend-development", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The destination URL for the hyperlink.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkText", + "type": "string", + "description": "The display text or inner HTML content of the link.", + "required": true, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Determines whether the link opens in a new browser tab (true adds target=\"_blank\" and rel=\"noopener noreferrer\").", + "required": false, + "defaultValue": "false" + }, + { + "name": "cssClasses", + "type": "string", + "description": "A space-separated list of CSS class names to apply to the anchor tag.", + "required": false, + "defaultValue": "" + }, + { + "name": "attributes", + "type": "object", + "description": "Additional arbitrary HTML attributes to add to the anchor tag as key-value pairs.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "string", + "description": "A string of the fully constructed HTML anchor (<a>) tag with all provided options applied." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate or sanitize hyperlink HTML elements in frontend development scenarios, ensuring proper attribute handling like opening links in new tabs or adding custom CSS classes and attributes programmatically.", + "limitations": "This tool generates simple anchor tags and does not perform URL validation or advanced security checks beyond adding standard 'rel' attributes for new tab links. It does not create complex nested HTML or handle event listeners.", + "examples": [ + "Generate a link to https://example.com with text 'Visit Example' that opens in a new tab with a specific CSS class.", + "Produce a simple link with no extra attributes to 'https://openai.com' with text 'OpenAI Homepage'.", + "Create a link with custom data attributes and aria-labels for accessibility." + ] + }, + "tags": [ + "frontend", + "html", + "link", + "ui", + "component", + "generate" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"linkText\":\"Visit Example\",\"openInNewTab\":true,\"cssClasses\":\"btn btn-primary\",\"attributes\":{\"aria-label\":\"Example Link\"}}", + "description": "Generate a link that opens in a new tab with button styling and an aria-label attribute." + }, + { + "inputJson": "{\"url\":\"/home\",\"linkText\":\"Home\",\"openInNewTab\":false,\"cssClasses\":\"nav-link\",\"attributes\":{}}", + "description": "Generate a simple internal navigation link with a CSS class." + }, + { + "inputJson": "{\"url\":\"mailto:support@example.com\",\"linkText\":\"Contact Support\",\"openInNewTab\":false,\"cssClasses\":\"\",\"attributes\":{\"target\":\"_self\"}}", + "description": "Generate a mailto link with explicit target attribute." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "backend-development.analyzeHeading", + "description": "Analyzes heading elements from provided HTML or markdown content to extract semantic information, heading hierarchy, and potential accessibility issues. Accepts raw content string and heading level filters, outputs structured data about headings including their text, level, position, and recommendations.", + "category": "backend-development", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "HTML or markdown content string containing heading elements to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of the input content: 'html' or 'markdown'", + "required": true, + "defaultValue": "html" + }, + { + "name": "minHeadingLevel", + "type": "number", + "description": "Minimum heading level (1-6) to include in analysis", + "required": false, + "defaultValue": "1" + }, + { + "name": "maxHeadingLevel", + "type": "number", + "description": "Maximum heading level (1-6) to include in analysis", + "required": false, + "defaultValue": "6" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to perform accessibility-related checks such as skipped heading levels or missing top-level heading", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing an array of headings with their text, level, and position, plus an accessibility report with warnings if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and analyze heading structure from server-side HTML or markdown content for SEO, accessibility validation, or content structuring purposes. Useful for generating reports on document semantic structure or detecting heading hierarchy issues programmatically.", + "limitations": "Does not modify content or fix issues automatically. Only analyzes headings present in the input content string; dynamic content or scripts-generated headings are not considered.", + "examples": [ + "Analyze all headings in an HTML page to get their levels and text for building a table of contents.", + "Check a markdown document for any skipped heading levels or missing top-level headings for accessibility reviews.", + "Extract only h2 to h4 headings from HTML content to summarize sections." + ] + }, + "tags": [ + "analysis", + "backend", + "seo", + "accessibility", + "content-structure", + "html", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"content\":\"

Main Title

Intro paragraph.

Subsection

Sub-subsection

\",\"contentType\":\"html\",\"minHeadingLevel\":1,\"maxHeadingLevel\":3,\"checkAccessibility\":true}", + "description": "Analyzing HTML with h1, h2, h3 headings to extract their structure and check accessibility." + }, + { + "inputJson": "{\"content\":\"# Title\\nSome text\\n### Skipped heading\\n## Back up heading\",\"contentType\":\"markdown\",\"minHeadingLevel\":1,\"maxHeadingLevel\":3,\"checkAccessibility\":true}", + "description": "Analyze markdown content with out-of-order headings to detect skipped levels." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "backend-development.analyzeThreat", + "description": "Analyzes potential security threats based on server logs, threat intelligence data, and system configurations. Accepts log files or structured event data, evaluates patterns against known threat signatures and heuristics, and produces a detailed report categorizing the threat level, possible attacker methods, and recommendations for mitigation.", + "category": "backend-development", + "parameters": [ + { + "name": "logData", + "type": "string", + "description": "Raw server log data or JSON-formatted event logs to be analyzed for threats.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatIntelligenceFeeds", + "type": "array", + "description": "Array of URLs or identifiers for threat intelligence feeds used to cross-reference indicators of compromise.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "systemConfig", + "type": "object", + "description": "Current system and network configuration details that help contextualize the analysis, such as firewall rules and open ports.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: 'basic', 'intermediate', or 'advanced' determining thoroughness and runtime.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object with start and end ISO 8601 timestamps to limit which log entries are analyzed.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeMitigationRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations for threat mitigation in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured threat analysis report including threat level classification, identified threat types, matched indicators, timestamps, and mitigation recommendations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess the security posture of a backend system by analyzing available logs and configurations for signs of compromise or ongoing attacks. Particularly useful for incident response, continuous security monitoring, and evaluating suspicious activities against known threats.", + "limitations": "Cannot guarantee detection of zero-day or highly obfuscated attacks. Accuracy depends on quality and completeness of input data and threat intelligence feeds. Not a replacement for manual security audits or penetration testing.", + "examples": [ + "Analyze server logs from the past 24 hours to identify any suspicious SSH login attempts.", + "Evaluate the web application firewall logs and system config to detect web-based threat patterns.", + "Generate a threat analysis report including recommendations based on recent access logs and multiple threat intelligence sources." + ] + }, + "tags": [ + "security", + "threat-analysis", + "backend", + "log-analysis", + "incident-response", + "cybersecurity" + ], + "examples": [ + { + "inputJson": "{\"logData\":\"\",\"timeRange\":{\"start\":\"2024-06-01T00:00:00Z\",\"end\":\"2024-06-01T23:59:59Z\"},\"includeMitigationRecommendations\":true}", + "description": "Analyze all server logs from June 1, 2024, producing a report with mitigation advice." + }, + { + "inputJson": "{\"logData\":\"\",\"threatIntelligenceFeeds\":[\"https://example.com/cti-feed.json\"],\"analysisDepth\":\"advanced\"}", + "description": "Perform a deep analysis on application logs using a threat intelligence feed to identify advanced threats." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "backend-development.analyzeIncident", + "description": "Analyzes a security or operational incident by processing provided incident details, logs, and metadata to identify root causes, impacted systems, and recommend remediation steps. Outputs a structured incident analysis report summarizing findings and suggested actions.", + "category": "backend-development", + "parameters": [ + { + "name": "incidentId", + "type": "string", + "description": "Unique identifier of the incident to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "incidentDetails", + "type": "object", + "description": "Detailed description and context of the incident, including timestamps, involved entities, and reported symptoms.", + "required": true, + "defaultValue": "" + }, + { + "name": "logFiles", + "type": "array", + "description": "Array of log file contents or paths related to the incident for deeper analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeRemediation", + "type": "boolean", + "description": "Flag indicating whether to include recommended remediation steps in the analysis output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Sensitivity level of the incident data (e.g., low, medium, high) to tailor analysis depth and confidentiality.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "Structured report including root cause summary, impacted components, timeline of events, severity assessment, and recommended remediation actions if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when detailed analysis of a backend or security incident is required to quickly understand root causes, affected systems, and remediation guidance based on logs and incident data. Helps automate incident response by formalizing analysis.", + "limitations": "The tool relies on provided incident data quality and may not identify unknown attack vectors or zero-day exploits without sufficient input logs or context. It does not replace expert human analysis for complex incidents.", + "examples": [ + "Analyze an incident with ID 'INC12345', including logs and request remediation steps.", + "Analyze incident details for system outage to determine root cause and summarize timeline.", + "Review security breach incident details and logs to generate actionable remediation recommendations." + ] + }, + "tags": [ + "backend", + "security", + "incident-analysis", + "root-cause", + "remediation", + "logs", + "automation" + ], + "examples": [ + { + "inputJson": "{\"incidentId\":\"INC001\",\"incidentDetails\":{\"description\":\"Unauthorized data access detected\",\"timestamp\":\"2024-05-01T14:22:00Z\",\"reportedBy\":\"monitoring-system\",\"affectedSystems\":[\"db-server-1\",\"auth-service\"]},\"logFiles\":[\"...logs snippet...\",\"...another logs snippet...\"],\"includeRemediation\":true,\"sensitivityLevel\":\"high\"}", + "description": "Analyzing a high-sensitivity security incident of unauthorized data access with supporting logs, requesting remediation guidance." + }, + { + "inputJson": "{\"incidentId\":\"INC002\",\"incidentDetails\":{\"description\":\"API timeout errors impacting users\",\"timestamp\":\"2024-04-28T11:10:00Z\",\"reportedBy\":\"user-reports\",\"affectedSystems\":[\"api-gateway\"]},\"includeRemediation\":false}", + "description": "Analyzing an incident of API timeout errors without remediation steps requested." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "backend-development.formatParagraph", + "description": "Formats a given text paragraph according to specified style options such as line width, indentation, and text alignment. Accepts a raw text string and formatting parameters, then outputs the formatted paragraph as a string suitable for server-side text processing and display.", + "category": "backend-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text input that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineWidth", + "type": "number", + "description": "Maximum number of characters per line after formatting; lines will wrap accordingly.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to indent each line of the paragraph.", + "required": false, + "defaultValue": "0" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "preserveLineBreaks", + "type": "boolean", + "description": "Whether to preserve existing line breaks within the paragraph.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "The formatted paragraph as a single string respecting the given style parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically format paragraph text for server-side content processing, such as generating consistent readable text output for APIs, logs, or documentation with controlled line widths and alignment.", + "limitations": "Does not perform natural language processing or grammar correction; only formats text layout. Cannot handle markup or HTML formatting.", + "examples": [ + "Format a paragraph with max line width of 60 characters and center alignment.", + "Indent a paragraph by 4 spaces and justify the text.", + "Preserve existing line breaks while formatting with a max width of 50 characters." + ] + }, + "tags": [ + "backend", + "text-formatting", + "paragraph", + "string-processing", + "API", + "server-side" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph that needs to be formatted neatly by wrapping lines and aligning text appropriately according to the specified options.\",\"maxLineWidth\":60,\"indentation\":2,\"alignment\":\"justify\",\"preserveLineBreaks\":false}", + "description": "Format text with 60 char max width, 2-space indent, and justify alignment." + }, + { + "inputJson": "{\"text\":\"Another example paragraph to demonstrate left alignment with no indentation and default line width.\",\"alignment\":\"left\"}", + "description": "Format paragraph with default 80 char width, left aligned, no indentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "backend-development.draftText", + "description": "Generates draft text content based on provided topic, key points, and desired tone. Accepts inputs such as main subject, bullet points to include, tone style, and target audience, then produces coherent, contextually relevant draft text suitable for backend service documentation, API descriptions, or user notifications.", + "category": "backend-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or title to generate the draft text about.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of important points or subtopics to include in the draft text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the draft text, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended readers of the draft text such as developers, end users, or stakeholders.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated draft text in words.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "Result object containing the generated draft text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically create initial textual content for backend system components such as API documentation, user messages, or notification templates from a given topic and essential points. It helps speed up content creation and ensures consistency in tone and style.", + "limitations": "The tool generates draft text but does not guarantee technical accuracy or complete correctness. It may not replace expert-written detailed documents and can lack specific domain knowledge.", + "examples": [ + "Draft a notification message to alert users about scheduled maintenance.", + "Generate API endpoint documentation text for a new feature including given parameters.", + "Create an introduction paragraph for backend service overview aimed at technical stakeholders." + ] + }, + "tags": [ + "text generation", + "content drafting", + "backend documentation", + "API description", + "notification templates" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Scheduled Maintenance Notification\",\"keyPoints\":[\"Date and time of maintenance\",\"Expected downtime duration\",\"Services affected\",\"User actions required\"],\"tone\":\"formal\",\"targetAudience\":\"end users\",\"maxLength\":200}", + "description": "Draft a formal notification for end users about scheduled backend maintenance including key details." + }, + { + "inputJson": "{\"topic\":\"User Authentication API\",\"keyPoints\":[\"Endpoint URL\",\"HTTP methods\",\"Required headers\",\"Response formats\"],\"tone\":\"technical\",\"targetAudience\":\"developers\",\"maxLength\":300}", + "description": "Generate technical API documentation draft describing user authentication endpoints for backend developers." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "backend-development.generateReference", + "description": "Generates a structured reference documentation snippet for backend API endpoints or server-side modules. Accepts input describing the endpoint or module details including parameters, request and response formats, and authentication. Produces a formatted, human-readable reference section that can be integrated into developer docs.", + "category": "backend-development", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "Name of the backend module or API endpoint to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief description of the module or endpoint functionality.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method if the reference is for an API endpoint (GET, POST, etc.).", + "required": false, + "defaultValue": "GET" + }, + { + "name": "path", + "type": "string", + "description": "The URL path for the API endpoint (e.g., /users/{id}). Required if httpMethod is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "List of input parameters with name, type, and description for the endpoint or module inputs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "requestBody", + "type": "object", + "description": "Schema defining the shape of the request body if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "responseBody", + "type": "object", + "description": "Schema describing the structure of the expected response body.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Indicates whether the endpoint requires authentication.", + "required": false, + "defaultValue": "false" + }, + { + "name": "examples", + "type": "array", + "description": "An array of example usages with request and response samples.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted reference documentation as a string, including all relevant details in a standardized structure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate clear, consistent reference documentation snippets for backend API endpoints or server-side modules based on structured input definitions. Ideal for automating developer documentation and ensuring standardized references.", + "limitations": "Does not validate endpoint logic or correctness, only formats documentation based on input data. Not intended to generate full API specifications or replace dedicated API documentation tools.", + "examples": [ + "Generate reference doc for GET /users/{id} endpoint with parameters and response schema.", + "Create module reference for authenticationManager module describing its methods and usage.", + "Produce example-rich reference documentation snippet including request and response samples." + ] + }, + "tags": [ + "documentation", + "backend", + "API", + "reference", + "developer-docs", + "server", + "automation" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"UserController\",\"description\":\"Handles user retrieval and updates.\",\"httpMethod\":\"GET\",\"path\":\"/users/{id}\",\"parameters\":[{\"name\":\"id\",\"type\":\"string\",\"description\":\"Unique identifier of the user.\"}],\"responseBody\":{\"id\":\"string\",\"name\":\"string\",\"email\":\"string\"},\"authenticationRequired\":true,\"examples\":[{\"request\":{\"pathParam\":\"123\"},\"response\":{\"id\":\"123\",\"name\":\"Jane Doe\",\"email\":\"jane@example.com\"}}]}", + "description": "Generate a reference doc snippet for a GET endpoint to fetch user details by ID, including input path parameter and JSON response." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "backend-development.composeSummary", + "description": "Takes a detailed technical document or API specification as input, analyzes its key points and structures, and produces a concise, clear summary highlighting important features, endpoints, or components. Useful for generating readable overviews of backend systems or APIs.", + "category": "backend-development", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The full technical document or API specification text to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired length of the summary in number of sentences or paragraphs.", + "required": false, + "defaultValue": "5" + }, + { + "name": "focusAreas", + "type": "array", + "description": "Specific topics or sections to prioritize in the summary, e.g., 'authentication', 'endpoints', 'data models'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example usages or code snippets in the summary if available.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary string and optionally included example snippets." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate an understandable summary from complex backend documentation or API specs. It helps provide concise insights into the backend structure, important components, or endpoints, aiding developers, managers, or API users who require a brief yet informative overview.", + "limitations": "This tool cannot replace detailed technical reading and may omit nuanced implementation details. It does not verify accuracy or provide deep technical analysis beyond summarization.", + "examples": [ + "Summarize a lengthy API specification document to extract key endpoints and authentication methods.", + "Generate a summary highlighting the data models and validation rules of a backend service.", + "Create a brief overview of a complex backend module focusing on error handling and logging mechanisms." + ] + }, + "tags": [ + "backend", + "summary", + "documentation", + "API", + "technical writing", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"The backend system exposes RESTful endpoints for user management including registration, login, and profile updates. Authentication is handled via JWT tokens with refresh capabilities. Data models include User, Role, and Permission with enforced validation rules. Error handling uses consistent HTTP codes with detailed messages.\",\"summaryLength\":3,\"focusAreas\":[\"authentication\",\"endpoints\"],\"includeExamples\":false}", + "description": "Summarize a backend API doc focusing on authentication and endpoint overview, returning a concise summary." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "backend-development.generateHTML", + "description": "Generates an HTML document string based on provided structure and content parameters. Accepts inputs defining the page title, metadata, stylesheet URLs, scripts, and body content in HTML or text form. Outputs a complete, well-formed HTML5 string suitable for serving in web responses or saving as a file.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the HTML document used in the tag.", + "required": true, + "defaultValue": "\"Untitled Page\"" + }, + { + "name": "metaTags", + "type": "array", + "description": "Array of meta tag objects to include in the <head> section, each with 'name' and 'content' fields.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "stylesheetUrls", + "type": "array", + "description": "List of URLs to CSS stylesheets to link in the <head> section.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "scriptUrls", + "type": "array", + "description": "List of URLs to JavaScript files to include before the closing </body> tag.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bodyContent", + "type": "string", + "description": "The raw HTML or text content to insert inside the <body> tag.", + "required": true, + "defaultValue": "\"\"" + }, + { + "name": "language", + "type": "string", + "description": "Language attribute for the <html> tag (e.g., 'en').", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeDoctype", + "type": "boolean", + "description": "Whether to include the HTML5 doctype declaration at the top.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete HTML document string under the 'html' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically assemble a complete HTML document combining configurable titles, metadata, stylesheets, scripts, and raw body content, such as when generating dynamic webpages or templates.", + "limitations": "This tool generates basic HTML structure but does not validate complex scripts or CSS content. It does not perform JavaScript or CSS generation or advanced templating logic beyond string composition.", + "examples": [ + "Generate a basic webpage with a title, a stylesheet link, and simple body content.", + "Create a multi-language page with specific meta tags and external scripts included.", + "Produce a minimal HTML snippet with no doctype for embedding in other documents." + ] + }, + "tags": [ + "backend", + "html", + "webpage", + "template", + "generate", + "server-side" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Welcome Page\",\"metaTags\":[{\"name\":\"description\",\"content\":\"Welcome to our site\"}],\"stylesheetUrls\":[\"https://cdn.example.com/styles.css\"],\"scriptUrls\":[\"https://cdn.example.com/app.js\"],\"bodyContent\":\"<h1>Hello, World!</h1><p>This is a sample page.</p>\",\"language\":\"en\",\"includeDoctype\":true}", + "description": "Generate a full HTML page with descriptive meta tags, linked stylesheet, script, and simple body content." + }, + { + "inputJson": "{\"title\":\"Minimal Page\",\"bodyContent\":\"<p>Content only</p>\",\"includeDoctype\":false}", + "description": "Generate a minimal HTML snippet without doctype and default language 'en'." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "backend-development.generateHeading", + "description": "Generates an HTML heading element string based on input text and specified heading level. Accepts the heading text and an optional level (1-6), then returns a string with the appropriately formatted HTML heading tag.", + "category": "backend-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content to include inside the heading element.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "The heading level from 1 to 6, corresponding to HTML tags h1 through h6.", + "required": false, + "defaultValue": "1" + }, + { + "name": "className", + "type": "string", + "description": "Optional CSS class name to add to the heading tag for styling purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A string of HTML representing the heading element with the specified level, text content, and optional CSS class." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate HTML heading tags in backend-generated content or API responses, ensuring valid semantic HTML with flexible heading levels and styling classes. It's ideal for serverside rendering scenarios or automated content generation workflows.", + "limitations": "This tool only generates static HTML strings for headings; it does not sanitize input text for HTML injection or support advanced heading attributes like IDs, ARIA roles, or inline styles.", + "examples": [ + "Generate a level 2 heading with text 'Welcome to My Site'.", + "Create a level 4 heading with text 'Section Overview' and a CSS class 'section-title'.", + "Produce a default level 1 heading for 'Main Title' without additional classes." + ] + }, + "tags": [ + "backend-development", + "html", + "heading", + "generate", + "templating", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to My Site\",\"level\":2}", + "description": "Generate a level 2 HTML heading with the given text." + }, + { + "inputJson": "{\"text\":\"Section Overview\",\"level\":4,\"className\":\"section-title\"}", + "description": "Generate a level 4 heading with a CSS class for styling." + }, + { + "inputJson": "{\"text\":\"Main Title\"}", + "description": "Generate a default level 1 heading with given text and no class." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "backend-development.createHeading", + "description": "Generates an HTML heading element string based on the provided level, text content, and optional styling classes. Accepts heading level (1-6), text for the heading, and optional list of CSS class names to apply. Returns a string containing the complete HTML heading tag that can be embedded in server-generated HTML templates or API responses.", + "category": "backend-development", + "parameters": [ + { + "name": "level", + "type": "number", + "description": "The heading level to create, between 1 and 6 inclusive.", + "required": true, + "defaultValue": "" + }, + { + "name": "text", + "type": "string", + "description": "The text content to be displayed inside the heading tag.", + "required": true, + "defaultValue": "" + }, + { + "name": "classNames", + "type": "array", + "description": "An optional array of CSS class names to add to the heading element for styling purposes.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML heading string as 'htmlString'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically create correctly formatted HTML heading elements on the backend. It is useful for server-side rendering of web pages, APIs that generate HTML snippets, or for transforming text data into structured heading tags programmatically. It ensures that the heading level is valid and optionally allows adding CSS classes for styling.", + "limitations": "This tool only creates simple heading tags and does not sanitize text content to prevent injection. It does not support nested elements or other attributes beyond class names.", + "examples": [ + "Create a level 2 heading with text 'Welcome to My Site' and CSS classes ['main-title','highlight'].", + "Generate a level 4 heading with text 'Section 1' without any CSS classes.", + "Produce a level 1 heading titled 'Home Page' with class 'header'." + ] + }, + "tags": [ + "backend", + "html", + "heading", + "web", + "server-side", + "templating" + ], + "examples": [ + { + "inputJson": "{\"level\":2,\"text\":\"Welcome to My Site\",\"classNames\":[\"main-title\",\"highlight\"]}", + "description": "Create an H2 heading with text and multiple classes." + }, + { + "inputJson": "{\"level\":4,\"text\":\"Section 1\",\"classNames\":[]}", + "description": "Create an H4 heading with text but no classes." + }, + { + "inputJson": "{\"level\":1,\"text\":\"Home Page\",\"classNames\":[\"header\"]}", + "description": "Create an H1 heading with one class." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "backend-development.createQueue", + "description": "Creates a message queue with specified configuration parameters for use in backend server applications. Accepts inputs such as queue name, durability settings, maximum message size, and optional dead-letter queue parameters. Outputs confirmation of queue creation along with configuration details including the unique queue identifier and status.", + "category": "backend-development", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The desired name for the queue to be created. Must be unique within the messaging system.", + "required": true, + "defaultValue": "" + }, + { + "name": "durable", + "type": "boolean", + "description": "Indicates whether the queue should survive broker restarts (persisted).", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSizeMB", + "type": "number", + "description": "Maximum size of the queue in megabytes before rejecting new messages.", + "required": false, + "defaultValue": "100" + }, + { + "name": "maxLengthMessages", + "type": "number", + "description": "Maximum number of messages the queue can hold. Additional messages will be rejected or overflowed.", + "required": false, + "defaultValue": "10000" + }, + { + "name": "deadLetterQueueName", + "type": "string", + "description": "Optional name of a dead-letter queue to route messages that cannot be delivered or processed.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoDelete", + "type": "boolean", + "description": "If true, the queue will be deleted automatically when no longer used.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the queue ID, name, configuration details, and creation status confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and configure a message queue in backend infrastructure, ensuring it meets specific durability, sizing, and message routing requirements essential for scalable, reliable asynchronous processing.", + "limitations": "This tool does not handle the actual message publishing or consumption, nor does it manage the lifecycle beyond initial creation (such as updates or deletions). It assumes the underlying message broker supports the specified features.", + "examples": [ + "Create a durable queue named 'orderProcessing' with max size 500MB and dead-letter queue 'orderDLQ'.", + "Create a temporary auto-delete queue named 'tempNotifications'.", + "Create a queue 'userSignup' with default settings and no dead-letter queue." + ] + }, + "tags": [ + "backend", + "queue", + "infrastructure", + "message-queue", + "create", + "server", + "asynchronous", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"orderProcessing\",\"durable\":true,\"maxSizeMB\":500,\"maxLengthMessages\":50000,\"deadLetterQueueName\":\"orderDLQ\",\"autoDelete\":false}", + "description": "Create a durable order processing queue with a large max size and a dead-letter queue." + }, + { + "inputJson": "{\"queueName\":\"tempNotifications\",\"durable\":false,\"autoDelete\":true}", + "description": "Create a non-durable, auto-delete queue for temporary notifications." + }, + { + "inputJson": "{\"queueName\":\"userSignup\"}", + "description": "Create a queue named userSignup with default durability, size, and no dead-letter queue." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "backend-development.createIncident", + "description": "Creates a new security incident record for backend systems by accepting details such as incident type, description, severity, and affected components. Processes the input to validate and store the incident in a centralized incident management system, returning a confirmation with a unique incident ID and status.", + "category": "backend-development", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "Category or type of the security incident (e.g., 'Unauthorized Access', 'Data Breach').", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the incident including what happened and potential impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the incident, such as 'Low', 'Medium', 'High', or 'Critical'.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of backend components or services affected by the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectedAt", + "type": "string", + "description": "Timestamp indicating when the incident was detected, in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Identifier or name of the individual or system reporting the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or keywords to categorize or label the incident for searchability.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Object containing confirmation of the incident creation with a unique incident ID, creation timestamp, and current status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or is informed of a security issue affecting backend infrastructure and needs to formally log it into the incident management system with relevant metadata for further tracking and resolution.", + "limitations": "This tool does not perform incident response actions or mitigation measures; it only logs incidents. It also does not automatically update or close incidents once created.", + "examples": [ + "Create a new incident for a detected data breach affecting the database cluster.", + "Log an unauthorized access incident detected by the monitoring system.", + "Report a denial-of-service attack impacting web backend services." + ] + }, + "tags": [ + "incident management", + "security", + "backend", + "logging", + "automation", + "security incident" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"Unauthorized Access\",\"description\":\"An attacker gained access to the admin panel using stolen credentials.\",\"severity\":\"High\",\"affectedComponents\":[\"Admin Panel\",\"User Auth Service\"],\"detectedAt\":\"2024-06-01T15:30:00Z\",\"reportedBy\":\"IDS System\",\"tags\":[\"critical\",\"breach\"]}", + "description": "Create a high severity incident of unauthorized access detected by the IDS system affecting admin panel and auth service." + }, + { + "inputJson": "{\"incidentType\":\"Data Breach\",\"description\":\"Sensitive user data was extracted by malware.\",\"severity\":\"Critical\",\"affectedComponents\":[\"User Database\"],\"detectedAt\":\"2024-06-02T11:00:00Z\",\"reportedBy\":\"Security Team\",\"tags\":[\"data breach\"]}", + "description": "Log a critical data breach incident reported by the security team involving user database." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "backend-development.createDeal", + "description": "Creates a new business deal record in a backend system. Accepts deal details such as title, description, value, currency, involved parties, status, and optional custom metadata. Processes input by validating and storing the deal, returning a unique deal ID along with confirmation and summary of the saved deal.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the deal to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the deal.", + "required": false, + "defaultValue": "" + }, + { + "name": "value", + "type": "number", + "description": "The monetary value of the deal (positive number).", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (e.g., USD, EUR) for the deal value.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "partyA", + "type": "string", + "description": "Identifier or name for the first party involved in the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "partyB", + "type": "string", + "description": "Identifier or name for the second party involved in the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current status of the deal such as 'pending', 'active', 'closed'.", + "required": false, + "defaultValue": "pending" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional key-value metadata related to the deal.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique dealId generated, confirmation status, and a summary of the saved deal details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to create or register new business deals in a backend system, ensuring all required information is captured and stored properly. Ideal for CRM automation, contract management, or sales pipelines where structured deal records are necessary.", + "limitations": "This tool does not perform complex deal validations like regulatory compliance or automated negotiation; it only records deal data as provided.", + "examples": [ + "Create a new sales deal between company A and company B with a value of $10,000 USD.", + "Register a partnership agreement deal with detailed metadata indicating contract terms.", + "Start a pending deal record between two clients without specifying description or metadata." + ] + }, + "tags": [ + "backend", + "business", + "deal", + "create", + "crm", + "sales" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Q2 Enterprise Software License\",\"description\":\"License deal for enterprise software covering 500 users.\",\"value\":150000,\"currency\":\"USD\",\"partyA\":\"Enterprise Corp\",\"partyB\":\"Software Maker Inc.\",\"status\":\"pending\",\"metadata\":{\"contractLength\":\"12 months\",\"renewalOption\":true}}", + "description": "Creating a high-value software license deal with metadata including contract length and renewal option." + }, + { + "inputJson": "{\"title\":\"Marketing Collaboration Agreement\",\"partyA\":\"Marketing Co.\",\"partyB\":\"Retail Partner LLC\",\"status\":\"active\"}", + "description": "Creating an active collaboration agreement with minimal details for a marketing campaign." + }, + { + "inputJson": "{\"title\":\"Consulting Services Deal\",\"description\":\"Annual consulting services contract.\",\"value\":50000,\"currency\":\"EUR\",\"partyA\":\"Tech Consulting GmbH\",\"partyB\":\"Client XYZ\",\"metadata\":{\"serviceLevel\":\"premium\"}}", + "description": "Registering a consulting deal with value in EUR and extra metadata about the service level." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "backend-development.createResume", + "description": "Generates a professional resume document in various formats based on structured input data. Accepts personal information, work experience, education, skills, and optional sections to create a formatted resume ready for download or further editing.", + "category": "backend-development", + "parameters": [ + { + "name": "personalInfo", + "type": "object", + "description": "An object containing personal details such as name, email, phone, and address.", + "required": true, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "An array of work experience entries, each with company, role, start date, end date, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "An array of education entries including institution, degree, field of study, start date, and end date.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "A list of skills or competencies to highlight on the resume.", + "required": true, + "defaultValue": "" + }, + { + "name": "certifications", + "type": "array", + "description": "Optional list of certifications or licenses with names and issuance dates.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output file format of the resume document, e.g., pdf, docx, or txt.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a professional summary section if provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summary", + "type": "string", + "description": "A brief professional summary or objective to include at the start of the resume.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated resume document as a base64-encoded string along with the specified file format and suggested filename." + }, + "aiAgent": { + "useCase": "Use this tool when a detailed, formatted resume document is needed programmatically from structured user career data, such as in job application platforms or career management services. It automates the creation of professional resumes in multiple formats to reduce manual formatting effort.", + "limitations": "This tool does not evaluate or optimize the quality of content; it only formats provided data into a resume layout. It cannot generate content or suggest improvements.", + "examples": [ + "Create a PDF resume from user profile data including work and education history.", + "Generate a DOCX resume file including certifications and a professional summary.", + "Produce a plain text version of a resume for simple email applications." + ] + }, + "tags": [ + "resume", + "document-generation", + "backend", + "career", + "pdf", + "docx", + "automation" + ], + "examples": [ + { + "inputJson": "{\"personalInfo\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phone\":\"555-123-4567\",\"address\":\"123 Main St, Springfield, USA\"},\"workExperience\":[{\"company\":\"TechCorp\",\"role\":\"Software Engineer\",\"startDate\":\"2018-06\",\"endDate\":\"2022-08\",\"description\":\"Developed scalable web applications and APIs.\"},{\"company\":\"Web Solutions\",\"role\":\"Junior Developer\",\"startDate\":\"2016-01\",\"endDate\":\"2018-05\",\"description\":\"Assisted with frontend development and testing.\"}],\"education\":[{\"institution\":\"State University\",\"degree\":\"BSc Computer Science\",\"fieldOfStudy\":\"Computer Science\",\"startDate\":\"2012-09\",\"endDate\":\"2016-06\"}],\"skills\":[\"JavaScript\",\"Node.js\",\"React\",\"Docker\"],\"certifications\":[{\"name\":\"AWS Certified Developer\",\"date\":\"2021-10\"}],\"format\":\"pdf\",\"includeSummary\":true,\"summary\":\"Experienced software engineer with a passion for scalable backend systems.\"}", + "description": "Create a PDF resume with full profile data including summary and certifications." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "backend-development.createSpec", + "description": "Generates a detailed API specification document based on provided endpoint definitions, request and response schemas, authentication methods, and metadata. Accepts structured inputs describing REST or GraphQL endpoints and outputs a comprehensive spec in JSON or YAML format compatible with OpenAPI 3.0 or GraphQL SDL standards.", + "category": "backend-development", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The name of the API for which the specification document is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version identifier for the API spec document (e.g., '1.0.0').", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "description", + "type": "string", + "description": "A short description or summary of the API.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "endpoints", + "type": "array", + "description": "An array of endpoint objects each describing a single API operation, including HTTP method, path, parameters, and response schemas.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Details about the supported authentication schemes, e.g., API keys, OAuth2 flows.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired specification format output, e.g., 'openapijson', 'openapiyaml', 'graphqlsdl'.", + "required": false, + "defaultValue": "\"openapijson\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the complete API specification document as a string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or update a machine-readable API specification document from structured input describing API endpoints and metadata. This enables automated validation, documentation generation, or SDK generation workflows for backend APIs.", + "limitations": "This tool does not implement semantic validation of Swagger or GraphQL beyond structural assembly. It does not interact with live APIs to fetch or infer schemas; it requires accurate manual input. Does not generate human-friendly prose documentation beyond the provided descriptions.", + "examples": [ + "Create an OpenAPI 3.0 JSON spec for a RESTful user management API with POST /users and GET /users/{id} endpoints.", + "Generate a GraphQL SDL specification document from given type and query definitions.", + "Update an existing API spec to version 2.0 with added OAuth2 authentication details." + ] + }, + "tags": [ + "backend", + "API", + "specification", + "OpenAPI", + "GraphQL", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"User Management API\",\"version\":\"1.0.0\",\"description\":\"API for managing user accounts.\",\"endpoints\":[{\"path\":\"/users\",\"method\":\"POST\",\"summary\":\"Create a new user\",\"parameters\":[{\"name\":\"body\",\"in\":\"body\",\"required\":true,\"schema\":{\"type\":\"object\",\"properties\":{\"username\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}}}}],\"responses\":{\"201\":{\"description\":\"User created successfully\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"username\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}}}}}}}}],\"authentication\":{\"type\":\"apiKey\",\"in\":\"header\",\"name\":\"X-API-KEY\"},\"outputFormat\":\"openapijson\"}", + "description": "Generate an OpenAPI 3.0 JSON document for a simple user creation API with API key authentication." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "web-development.analyzeAccount", + "description": "Analyzes a web application user account by evaluating input metrics such as login activity, account settings, and usage patterns to generate a comprehensive report highlighting account health, potential security vulnerabilities, and optimization recommendations.", + "category": "web-development", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "The unique identifier of the user account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSecurityAnalysis", + "type": "boolean", + "description": "Whether to include security vulnerability assessment in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeRangeDays", + "type": "number", + "description": "Number of past days to consider for usage and activity data analysis.", + "required": false, + "defaultValue": "30" + }, + { + "name": "detailedReport", + "type": "boolean", + "description": "Whether to generate a detailed report including granular metrics and recommendations.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the account analysis report including summary metrics, security findings, usage patterns, and optimization suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when you want to analyze user accounts of a web application to understand their activity, security posture, and overall health to improve user management or detect issues. It's applicable in scenarios such as account audits, security reviews, and optimizing account configurations.", + "limitations": "This tool requires valid and accessible account data inputs and does not perform any real-time monitoring or direct remediation actions. It cannot analyze accounts outside of the supported web application context.", + "examples": [ + "Analyze a specific user account for potential security risks and usage anomalies over the past month.", + "Generate a detailed report on a user account's activity and settings to identify optimization opportunities.", + "Quickly assess an account's general health without deep security analysis for summary dashboards." + ] + }, + "tags": [ + "analysis", + "account", + "web-development", + "security", + "usage", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"user12345\",\"includeSecurityAnalysis\":true,\"timeRangeDays\":30,\"detailedReport\":true}", + "description": "Analyze user12345 account over the last 30 days with full security and detailed metrics." + }, + { + "inputJson": "{\"accountId\":\"guest6789\",\"includeSecurityAnalysis\":false,\"timeRangeDays\":7}", + "description": "Quick 7-day usage analysis for guest6789 account without security checks." + }, + { + "inputJson": "{\"accountId\":\"admin001\",\"detailedReport\":true}", + "description": "Detailed report for admin001 account using default time range and including security analysis." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeAlert", + "description": "Analyzes security alert data provided as input, processes alert attributes such as severity, source, and type, correlates with known threat intelligence and past incident patterns, and outputs an analysis report including threat level, probable impact, and recommended actions.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "alertData", + "type": "object", + "description": "A structured object containing alert details such as timestamp, severity, source IP, destination IP, alert type, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatIntelligenceSources", + "type": "array", + "description": "An optional list of external threat intelligence sources (URLs or API endpoints) to enrich analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "correlationWindow", + "type": "number", + "description": "Time window in minutes to correlate the alert with previous alerts for pattern detection.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "When true, include security recommendations based on the analysis results.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including evaluated threatLevel (low, medium, high), impactSummary, correlatedAlerts (list), and recommendedActions (list of strings)." + }, + "aiAgent": { + "useCase": "Use this tool when receiving raw or structured security alerts that need automated evaluation to determine threat significance, identify correlations with past incidents, and suggest mitigation steps. Ideal for security automation workflows to prioritize alerts and reduce manual triage workload.", + "limitations": "Cannot replace a human security analyst's comprehensive investigation; dependent on data quality and available threat intelligence; does not perform real-time alert collection, only analysis of supplied alert data.", + "examples": [ + "Analyze this suspicious alert to determine its severity and recommended actions.", + "Correlate this network intrusion alert with past alerts in the last hour and evaluate the risk.", + "Provide an analysis report on this phishing alert with suggested next steps." + ] + }, + "tags": [ + "security", + "automation", + "alert-analysis", + "threat-intelligence", + "incident-response", + "correlation", + "recommendation" + ], + "examples": [ + { + "inputJson": "{\"alertData\":{\"timestamp\":\"2024-06-15T14:30:00Z\",\"severity\":\"high\",\"sourceIP\":\"192.168.1.100\",\"destinationIP\":\"10.0.0.5\",\"alertType\":\"network intrusion\",\"description\":\"Detected unusual traffic pattern from internal host.\"},\"threatIntelligenceSources\":[\"https://threatintel.example.com/api\"],\"correlationWindow\":120,\"includeRecommendations\":true}", + "description": "Analyze a high-severity network intrusion alert with threat intel enrichment and 2-hour correlation window." + }, + { + "inputJson": "{\"alertData\":{\"timestamp\":\"2024-06-15T09:15:00Z\",\"severity\":\"medium\",\"sourceIP\":\"203.0.113.10\",\"destinationIP\":\"10.0.0.8\",\"alertType\":\"phishing email\",\"description\":\"Suspicious email detected containing a malicious attachment.\"},\"includeRecommendations\":false}", + "description": "Analyze a medium-severity phishing alert without recommendations, using default correlation window and no threat intel sources." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "automation-frameworks.generateSentence", + "description": "Generates a coherent sentence based on specified parameters, including desired length, tone, and keywords. This tool accepts parameters that guide sentence construction, processes them using a natural language generation model, and outputs a generated sentence string that fits the input criteria.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Desired length of the sentence in words, from 3 to 50.", + "required": false, + "defaultValue": "15" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the sentence, e.g., formal, casual, optimistic, neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords that should be included in the sentence if possible.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the sentence generation, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "avoidNegative", + "type": "boolean", + "description": "Indicates whether to avoid negative or pessimistic expressions in the sentence.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence string under the key 'sentence'." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to generate natural language sentences for automation workflows, such as creating sample messages, notifications, or example text content where parameters like tone and keyword inclusion matter. It's ideal for automating content generation within scripts or for testing purposes where adjustable sentence features are required.", + "limitations": "The tool cannot produce highly specialized or technical sentences requiring domain knowledge beyond general language generation, nor can it ensure perfectly fluent or factually accurate sentences in all contexts.", + "examples": [ + "Generate a formal sentence of about 10 words including the keyword 'performance'.", + "Create a casual, optimistic sentence of length 20 with the keywords ['team', 'success'].", + "Produce a neutral tone sentence avoiding negative words, about 15 words long." + ] + }, + "tags": [ + "automation", + "text-generation", + "sentence", + "NLG", + "content-creation", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"length\":12,\"tone\":\"formal\",\"keywords\":[\"performance\"]}", + "description": "Generate a formal sentence approximately 12 words long including the keyword 'performance'." + }, + { + "inputJson": "{\"length\":20,\"tone\":\"casual\",\"keywords\":[\"team\",\"success\"],\"avoidNegative\":true}", + "description": "Create a casual, optimistic sentence of length 20 including keywords 'team' and 'success', avoiding negative phrasing." + }, + { + "inputJson": "{\"length\":15,\"tone\":\"neutral\"}", + "description": "Produce a neutral tone sentence about 15 words long without mandatory keywords." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "automation-frameworks.createContainer", + "description": "Creates a new container instance within a specified container orchestration platform (e.g., Docker, Kubernetes). Accepts platform type, container image, resource limits, environment variables, and networking settings, then provisions the container and returns its status and connection details.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "The container orchestration platform to use (e.g., 'docker', 'kubernetes').", + "required": true, + "defaultValue": "" + }, + { + "name": "image", + "type": "string", + "description": "The container image name or ID to deploy (e.g., 'nginx:latest').", + "required": true, + "defaultValue": "" + }, + { + "name": "containerName", + "type": "string", + "description": "The desired name for the new container instance.", + "required": false, + "defaultValue": "" + }, + { + "name": "cpuLimit", + "type": "number", + "description": "Maximum CPU resources allocated to the container in cores (e.g., 0.5 for half core).", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "memoryLimit", + "type": "string", + "description": "Maximum memory allocated to the container (e.g., '512Mi', '2Gi').", + "required": false, + "defaultValue": "512Mi" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs for environment variables set inside the container.", + "required": false, + "defaultValue": "" + }, + { + "name": "ports", + "type": "array", + "description": "List of port mappings from host to container in the format [{'hostPort':80,'containerPort':80}].", + "required": false, + "defaultValue": "" + }, + { + "name": "networkMode", + "type": "string", + "description": "Networking mode or namespace to use (e.g., 'bridge', 'host' in Docker).", + "required": false, + "defaultValue": "bridge" + }, + { + "name": "restartPolicy", + "type": "string", + "description": "Container restart policy (e.g., 'no', 'on-failure', 'always').", + "required": false, + "defaultValue": "no" + } + ], + "returns": { + "type": "object", + "description": "An object containing the container ID, status (running, created, error), and connection info such as IP and mapped ports." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate deployment of containerized applications for testing, development, or dynamic scaling by creating containers with specified configurations on docker or Kubernetes platforms. It helps launch, configure, and track container instances programmatically.", + "limitations": "Does not handle complex multi-container orchestration (use the full orchestration framework for that), nor manage container lifecycle beyond initial creation. Platform-specific features beyond common parameters are not supported.", + "examples": [ + "Create a single docker container running nginx with 0.5 CPU core and 512Mi memory", + "Provision a Kubernetes pod with an environment variable and port mapping", + "Deploy a container named 'app-test' with restart policy 'always' and host network mode" + ] + }, + "tags": [ + "automation", + "container", + "deploy", + "docker", + "kubernetes", + "orchestration", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"docker\",\"image\":\"nginx:latest\",\"containerName\":\"web-server\",\"cpuLimit\":0.5,\"memoryLimit\":\"512Mi\",\"environmentVariables\":{\"ENV\":\"production\"},\"ports\":[{\"hostPort\":8080,\"containerPort\":80}],\"networkMode\":\"bridge\",\"restartPolicy\":\"no\"}", + "description": "Deploy a Docker nginx container named 'web-server' with 0.5 CPU and 512Mi memory, exposing container port 80 on host port 8080." + }, + { + "inputJson": "{\"platform\":\"kubernetes\",\"image\":\"redis:6-alpine\",\"containerName\":\"cache\",\"cpuLimit\":0.2,\"memoryLimit\":\"256Mi\",\"environmentVariables\":{\"LOG_LEVEL\":\"debug\"},\"ports\":[{\"hostPort\":6379,\"containerPort\":6379}],\"networkMode\":\"\",\"restartPolicy\":\"Always\"}", + "description": "Create a Kubernetes container instance running Redis with debug log level, low resource limits, opening default Redis port." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "automation-frameworks.createBranch", + "description": "This tool automates the creation of a new branch in a version control repository. It accepts inputs such as the repository URL, target commit hash or branch, new branch name, and optional authentication credentials. It performs validation, creates the branch in the remote repository, and returns details about the created branch including its reference and confirmation of success.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the git repository where the branch will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "newBranchName", + "type": "string", + "description": "The name of the new branch to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceRef", + "type": "string", + "description": "The source commit hash or existing branch name the new branch will be based on. Defaults to the repository's default branch if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token (e.g., OAuth, personal access token) to access private repositories.", + "required": false, + "defaultValue": "" + }, + { + "name": "force", + "type": "boolean", + "description": "Whether to force branch creation if the branch already exists, overwriting it.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the new branch reference details and operation status, including branchName, commitHash, repositoryUrl, and success flag." + }, + "aiAgent": { + "useCase": "Use this tool when automating version control workflows requiring programmatic branch creation, such as feature branching, hotfixes, or automated integration pipelines. It facilitates continuous integration/deployment by enabling agents to create branches dynamically.", + "limitations": "Does not support non-git version control systems. Does not manage pull requests or branch protection rules. Requires proper authentication tokens for private repositories; cannot generate or renew these tokens automatically.", + "examples": [ + "Create a new branch 'feature-xyz' from the latest main branch in a public repo.", + "Create a hotfix branch from a specific commit hash in a private repo using an auth token.", + "Force overwrite an existing branch with updated changes for CI purposes." + ] + }, + "tags": [ + "automation", + "git", + "version-control", + "branching", + "devops", + "ci-cd", + "repository-management" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"newBranchName\":\"feature-login\",\"sourceRef\":\"main\",\"authToken\":\"\",\"force\":false}", + "description": "Create a feature branch 'feature-login' from main branch in a public repository." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/private-repo.git\",\"newBranchName\":\"hotfix-urgent\",\"sourceRef\":\"a1b2c3d4e5f6g7h8i9j0\",\"authToken\":\"ghp_XXXXXXXXXXXXXXXXXXXX\",\"force\":false}", + "description": "Create a hotfix branch from a specific commit in a private repository with authentication." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"newBranchName\":\"release-candidate\",\"sourceRef\":\"develop\",\"authToken\":\"\",\"force\":true}", + "description": "Force create or overwrite the 'release-candidate' branch from develop branch." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "statistics-tools.generateDocument", + "description": "Generates a comprehensive statistical analysis report document based on input dataset and analysis parameters. Accepts raw data and specified statistical methods, performs computations such as descriptive statistics, hypothesis testing, and regression modeling, then produces a structured document (PDF or DOCX) summarizing results with charts and interpretation.", + "category": "statistics-tools", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "Input dataset as an array of objects or arrays representing rows of data for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisMethods", + "type": "array", + "description": "List of statistical methods to apply, e.g., ['descriptive', 'anova', 'regression'].", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "Output document format. Supported values: 'pdf' or 'docx'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "title", + "type": "string", + "description": "Title of the generated report document.", + "required": false, + "defaultValue": "Statistical Analysis Report" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include visual charts (histograms, scatter plots) in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "significanceLevel", + "type": "number", + "description": "Alpha level to use for hypothesis testing (e.g., 0.05).", + "required": false, + "defaultValue": "0.05" + }, + { + "name": "notes", + "type": "string", + "description": "Optional user notes or comments to add to the end of the report.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the binary document file as base64 and metadata such as filename and content type. Example: { filename: 'report.pdf', contentType: 'application/pdf', contentBase64: '...' }" + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate detailed statistical analysis reports from raw data inputs. Ideal when users need quick, documented insights with supporting statistics and visualizations for presentations, publications, or review.", + "limitations": "This tool does not perform raw data cleaning or transformation; input data should be preprocessed. It supports common statistical methods but not specialized or highly customized analyses. Large datasets may increase processing time.", + "examples": [ + "Generate a PDF report with descriptive statistics and regression analysis for experimental data.", + "Create a DOCX report including ANOVA and hypothesis test results with charts.", + "Produce a summary report without charts and with user notes appended." + ] + }, + "tags": [ + "statistics", + "reporting", + "document", + "analysis", + "pdf", + "docx", + "data-science" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"age\":30,\"score\":88},{\"age\":25,\"score\":95},{\"age\":40,\"score\":78}],\"analysisMethods\":[\"descriptive\",\"regression\"],\"documentFormat\":\"pdf\",\"title\":\"Test Score Analysis\",\"includeCharts\":true,\"significanceLevel\":0.05,\"notes\":\"Data collected from Q1 survey.\"}", + "description": "Generate a PDF report analyzing test scores using descriptive and regression methods with charts and additional notes." + }, + { + "inputJson": "{\"dataset\":[{\"group\":\"A\",\"value\":5},{\"group\":\"B\",\"value\":7},{\"group\":\"A\",\"value\":6},{\"group\":\"B\",\"value\":8}],\"analysisMethods\":[\"anova\"],\"documentFormat\":\"docx\",\"title\":\"Group Value Comparison\",\"includeCharts\":false,\"significanceLevel\":0.01}", + "description": "Create a DOCX report performing ANOVA to compare two groups without charts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "automation-frameworks.createSummary", + "description": "Takes a body of text or document content as input and generates a concise summary highlighting the main points and key information. This tool supports plain text or markdown inputs and outputs a shortened text summary to facilitate quick understanding and review.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The full text or document content that needs to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary in characters. Defaults to 500.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the content (e.g., 'en' for English) to optimize summarization accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeBulletPoints", + "type": "boolean", + "description": "Whether to format the summary with bullet points for clarity. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a brief, readable summary from lengthy text documents, reports, or articles to help users quickly grasp critical information without reading the full content. It is useful in automating content review workflows, generating executive summaries, or extracting key points for reporting.", + "limitations": "The summary may lose nuanced or detailed information; it is designed for high-level overviews and not for detailed analysis. It requires reasonably well-formed input text; very short or highly technical text may produce less useful results.", + "examples": [ + "Create a summary from a 5-page project status report to provide a quick update to stakeholders.", + "Summarize meeting notes to highlight action items and decisions.", + "Generate a brief abstract for a long-form article for newsletter inclusion." + ] + }, + "tags": [ + "automation", + "summary", + "text-processing", + "document", + "workflow", + "content" + ], + "examples": [ + { + "inputJson": "{\"content\":\"This quarterly sales report shows a steady increase in revenue driven by the new product line, significant growth in online sales channels, and expansion into new markets. Challenges include supply chain delays and increased operational costs, which are being addressed through strategic partnerships and process improvements.\",\"maxSummaryLength\":300,\"includeBulletPoints\":true}", + "description": "Summarize a quarterly sales report highlighting key achievements and challenges with bullet points." + }, + { + "inputJson": "{\"content\":\"During the meeting, the team decided to prioritize feature development for the upcoming release cycle. Key action items include finalizing the UI mockups by next week, initiating backend integration, and scheduling user testing sessions.\",\"maxSummaryLength\":200}", + "description": "Create a brief summary of meeting notes focusing on decisions and action items." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "text-analysis.composeEmail", + "description": "This tool composes a professional email based on the provided recipient details, subject, key points, tone, and style preferences. It processes these inputs using natural language generation to produce a coherent, contextually appropriate email body, returning a complete email text ready for sending or further editing.", + "category": "text-analysis", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the email recipient, used for personalization at greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to define the email topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of main points or messages to include in the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the email such as formal, informal, friendly, or professional.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "style", + "type": "string", + "description": "Writing style preference, e.g., concise, detailed, persuasive.", + "required": false, + "defaultValue": "concise" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a signature block with sender's information at the end.", + "required": false, + "defaultValue": "true" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the sender to use in greeting and signature if included.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email with subject and body text ready for use." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate complete, coherent, and purpose-driven emails quickly from structured input parameters such as recipient, subject, key message points, and style preferences. It helps automate email drafting for business, customer communication, or personal correspondence while ensuring appropriate tone and style.", + "limitations": "This tool cannot verify recipient contact authenticity, handle attachments, or respond to email replies. It generates text based solely on input parameters and does not interact with email clients.", + "examples": [ + "Compose a formal email to a client summarizing the project status and next steps.", + "Generate a friendly invitation email with key event details for team members.", + "Create a concise professional apology email for a delayed response." + ] + }, + "tags": [ + "email", + "composition", + "text-analysis", + "natural-language-generation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Jane Smith\",\"subject\":\"Project Update\",\"keyPoints\":[\"The project is 75% complete\",\"Expected delivery by June 30\",\"Next review meeting on June 15\"],\"tone\":\"formal\",\"style\":\"concise\",\"includeSignature\":true,\"senderName\":\"John Doe\"}", + "description": "Formal project update email to a client named Jane Smith with key status points and a signature." + }, + { + "inputJson": "{\"recipientName\":\"Mike\",\"subject\":\"Team Lunch Invitation\",\"keyPoints\":[\"Join us for lunch on Friday at 12pm\",\"Location is the new Italian restaurant downtown\"],\"tone\":\"friendly\",\"style\":\"detailed\",\"includeSignature\":false,\"senderName\":\"\"}", + "description": "Friendly invitation email for team lunch with event details and no signature." + }, + { + "inputJson": "{\"recipientName\":\"Customer Support\",\"subject\":\"Apology for Delayed Response\",\"keyPoints\":[\"Apologize for delayed reply\",\"Issue has been escalated to technical team\",\"Will update within 24 hours\"],\"tone\":\"professional\",\"style\":\"concise\",\"includeSignature\":true,\"senderName\":\"Support Team\"}", + "description": "Professional apology email with brief explanation and signature from support team." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "text-analysis.buildFunction", + "description": "This tool generates a code function based on a textual description of desired functionality. It accepts natural language input describing what the function should do, optional parameters such as programming language and function name, and outputs the source code implementing the specification in the chosen language.", + "category": "text-analysis", + "parameters": [ + { + "name": "functionDescription", + "type": "string", + "description": "A natural language description detailing the functionality the desired function should perform.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated function code, e.g., 'Python', 'JavaScript'.", + "required": false, + "defaultValue": "Python" + }, + { + "name": "functionName", + "type": "string", + "description": "Optional name for the generated function. If not provided, a suitable name will be inferred.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments inside the generated function code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function's source code as a string, including the function signature, body, and optional comments." + }, + "aiAgent": { + "useCase": "AI agents can use this tool when they need to dynamically create code functions from natural language specifications, for example, to assist developers by automating function scaffolding, prototyping, or generating utility functions based on user requests or documentation.", + "limitations": "This tool cannot guarantee optimized or production-ready code; it may not handle complex or ambiguous descriptions well and has limited support to error-check or test the generated code.", + "examples": [ + "Generate a Python function named 'calculateSum' that takes a list of numbers and returns their sum.", + "Create a JavaScript function that checks if a string is a palindrome, including comments explaining each step.", + "Build a function that converts Celsius to Fahrenheit, no specific name provided, default language Python." + ] + }, + "tags": [ + "code-generation", + "function-creation", + "natural-language-processing", + "programming", + "automation" + ], + "examples": [ + { + "inputJson": "{\"functionDescription\":\"Create a function that takes a list of numbers and returns their sum.\",\"programmingLanguage\":\"Python\",\"functionName\":\"calculateSum\",\"includeComments\":true}", + "description": "Generate a Python summation function named calculateSum with comments." + }, + { + "inputJson": "{\"functionDescription\":\"Determine if a given string is a palindrome.\",\"programmingLanguage\":\"JavaScript\",\"functionName\":\"isPalindrome\",\"includeComments\":true}", + "description": "Produce a JavaScript function named isPalindrome that checks palindromes with explanatory comments." + }, + { + "inputJson": "{\"functionDescription\":\"Convert temperature in Celsius to Fahrenheit.\",\"programmingLanguage\":\"Python\",\"functionName\":\"\",\"includeComments\":false}", + "description": "Generate a Python function to convert Celsius to Fahrenheit, unnamed with no comments." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "text-analysis.composeDocument", + "description": "This tool accepts structured input including a document title, sections with headings and content, and optional style guidelines. It composes a coherent, well-formatted text document by organizing the sections, ensuring logical flow and readability. The output is a complete text document string ready for use or further processing.", + "category": "text-analysis", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the document to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of objects each containing a 'heading' (string) and 'content' (string), representing the document sections and their respective texts.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuidelines", + "type": "object", + "description": "Optional style guidelines including tone (e.g., formal, informal), formatting preferences (bullets, numbering), and length constraints.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed document as a single formatted string under the 'documentText' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a multi-section document from structured input, such as reports, articles, or summaries, ensuring good organization, clarity, and adherence to style instructions.", + "limitations": "The tool does not generate original section content; it only organizes and formats provided input. It cannot perform content fact-checking or creative writing beyond the input provided.", + "examples": [ + "Compose a project update document with a title and three sections: summary, progress, next steps.", + "Generate a formal report with specified headings and content following strict style guidelines.", + "Assemble a multi-part article with given headings and detailed content for each section." + ] + }, + "tags": [ + "text-analysis", + "document-composition", + "natural-language-processing", + "report-generation", + "formatting", + "document-assembly" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Quarterly Business Review\",\"sections\":[{\"heading\":\"Executive Summary\",\"content\":\"This quarter showed significant growth in sales.\"},{\"heading\":\"Financial Analysis\",\"content\":\"Revenue increased by 15% compared to the previous quarter.\"},{\"heading\":\"Action Items\",\"content\":\"Focus on expanding marketing efforts in new regions.\"}],\"styleGuidelines\":{\"tone\":\"formal\",\"formatting\":\"numbered sections\"}}", + "description": "Input to create a formal business review document with numbered sections." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "text-analysis.createWord", + "description": "Generates a new word based on specified linguistic roots, prefixes, suffixes, or phonetic patterns. Accepts inputs such as base word fragments, desired word length, language constraints, and parts of speech, then constructs a plausible word combining these elements. Outputs the generated word string along with metadata about its components.", + "category": "text-analysis", + "parameters": [ + { + "name": "baseFragments", + "type": "array", + "description": "Array of string fragments or root words to combine when creating the new word.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "prefixes", + "type": "array", + "description": "Array of string prefixes to optionally prepend to the generated word.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "suffixes", + "type": "array", + "description": "Array of string suffixes to optionally append to the generated word.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetLength", + "type": "number", + "description": "Desired approximate length of the generated word; the tool will try to meet this length if possible.", + "required": false, + "defaultValue": "" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "Intended part of speech for the generated word, e.g., noun, verb, adjective to guide formation.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language or linguistic family to influence phonetic and morphological rules, e.g., 'English', 'Latin'.", + "required": false, + "defaultValue": "English" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word string and details of how it was formed including used fragments and affixes." + }, + "aiAgent": { + "useCase": "This tool is valuable when creating new, plausible words for creative writing, branding, fictional languages, or linguistic research. AI agents can use it to generate novel terms fitting specified linguistic patterns or semantic constraints.", + "limitations": "It cannot guarantee meaningfulness or dictionary-valid words; the output may not be recognized by users as standard vocabulary. It also does not perform semantic validation or ensure usability in real languages.", + "examples": [ + "Generate a new English noun word combining 'tech' and 'logic' with suffix 'al'.", + "Create a short adjective word using latin roots 'lux' (light) with prefix 'in-' meaning not.", + "Form a new verb approximately 7 letters long using fragments 'run' and 'nov'." + ] + }, + "tags": [ + "word-generation", + "creative-writing", + "linguistics", + "natural-language", + "naming", + "morphology" + ], + "examples": [ + { + "inputJson": "{\"baseFragments\":[\"tech\",\"logic\"],\"suffixes\":[\"al\"],\"partOfSpeech\":\"noun\",\"language\":\"English\"}", + "description": "Generate a noun combining 'tech' and 'logic' with suffix 'al' to create a technical-sounding word." + }, + { + "inputJson": "{\"baseFragments\":[\"lux\"],\"prefixes\":[\"in-\"],\"partOfSpeech\":\"adjective\",\"language\":\"Latin\"}", + "description": "Create an adjective with Latin root 'lux' (light) prefixed by 'in-' to mean 'not light' or dark." + }, + { + "inputJson": "{\"baseFragments\":[\"run\",\"nov\"],\"targetLength\":7,\"partOfSpeech\":\"verb\",\"language\":\"English\"}", + "description": "Form a new English verb about 7 letters long combining 'run' and 'nov' fragments." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "text-analysis.createText", + "description": "Generates coherent and contextually relevant natural language text based on a given prompt or set of parameters. It accepts input prompts, tone, style, length, and topic constraints, then produces original text output suitable for content creation, summaries, or creative writing tasks.", + "category": "text-analysis", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "Initial input text or idea to base the generated content on.", + "required": true, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the generated text in number of words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or mood of the generated text, e.g., formal, casual, professional, humorous.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "style", + "type": "string", + "description": "Writing style to emulate, such as narrative, descriptive, persuasive, or informative.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "topic", + "type": "string", + "description": "Specific topic or subject that the generated text should focus on.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Target language for the generated text (e.g., en, es, fr).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text string with metadata" + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate original, relevant, and stylistically tailored natural language content from a prompt or topic for applications like content creation, automated summaries, personalized messages, or creative writing. It helps bypass writer's block or produce bulk text efficiently.", + "limitations": "Cannot guarantee factual accuracy or creativity beyond the model's knowledge cutoff and training data. May generate generic or repetitive content if parameters are vague or too broad.", + "examples": [ + "Create a professional email draft to respond to a customer complaint.", + "Generate a casual blog post introduction about sustainable living.", + "Write a persuasive product description for a new smartphone." + ] + }, + "tags": [ + "text generation", + "natural language", + "content creation", + "writing assistant", + "NLP", + "creative writing" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"Write a summary of the book '1984' by George Orwell.\",\"length\":150,\"tone\":\"informative\",\"style\":\"summary\",\"topic\":\"1984 book summary\",\"language\":\"en\"}", + "description": "Generate a concise, informative summary of the book '1984'." + }, + { + "inputJson": "{\"prompt\":\"A friendly greeting message for new users of a fitness app.\",\"length\":50,\"tone\":\"casual\",\"style\":\"informative\",\"language\":\"en\"}", + "description": "Create a welcoming and friendly greeting message tailored for new fitness app users." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "text-analysis.createIssue", + "description": "Generates a structured software issue report from natural language input describing the problem, including optional context such as code snippets, error messages, and severity. Processes free text to extract key information and outputs a standardized issue object suitable for tracking and triage.", + "category": "text-analysis", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "A concise, clear title summarizing the issue (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed natural language description of the issue (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the issue (e.g., 'low', 'medium', 'high', 'critical') (optional)", + "required": false, + "defaultValue": "medium" + }, + { + "name": "codeSnippet", + "type": "string", + "description": "Optional snippet of code related to the issue (optional)", + "required": false, + "defaultValue": "" + }, + { + "name": "errorMessage", + "type": "string", + "description": "Optional error message text if available (optional)", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags or keywords to categorize the issue (optional)", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created issue with fields: id (string unique identifier), title, description, severity, codeSnippet, errorMessage, tags, createdAt (timestamp)" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert free-form textual problem descriptions from users or logs into a structured issue format for bug tracking systems or project management tools. It is especially useful for interpreting natural language inputs and augmenting them with contextual data like code snippets or error messages to create actionable issue reports.", + "limitations": "This tool does not automatically fix issues or perform code analysis. It relies on the quality of input text for accurate extraction and does not assign issue ownership or link to version control.", + "examples": [ + "Create an issue from a user description with error message and severity.", + "Generate a bug report from a developer's explanation and code snippet.", + "Summarize a customer's problem report into a structured issue with tags." + ] + }, + "tags": [ + "issue", + "bug-report", + "text-analysis", + "nlp", + "code", + "software-development" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Null pointer exception in payment processing\",\"description\":\"When attempting to process payment, the application crashes with a null pointer exception. Steps to reproduce: enter card details and submit. The error message displayed is 'NullReferenceException at PaymentProcessor.cs line 45'.\",\"severity\":\"high\",\"codeSnippet\":\"public void ProcessPayment(Card card) { var amount = card.Amount; // line 45 if(card == null) throw new NullReferenceException(); }\",\"errorMessage\":\"NullReferenceException at PaymentProcessor.cs line 45\",\"tags\":[\"bug\",\"payment\",\"crash\"]}", + "description": "Create a detailed issue report from a developer's bug description including code and error." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "api-integration.downloadDocument", + "description": "Downloads a document from a specified API endpoint using provided authentication and query parameters. Accepts the document URL, authentication credentials, optional query parameters, and headers. Processes the API request and returns the document content along with metadata such as filename and content type.", + "category": "api-integration", + "parameters": [ + { + "name": "documentUrl", + "type": "string", + "description": "The full URL of the API endpoint to download the document from.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key required to authorize the request.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryParams", + "type": "object", + "description": "Optional key-value pairs for URL query parameters to customize the request.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "headers", + "type": "object", + "description": "Optional additional HTTP headers to include in the request.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for the download request before failure.", + "required": false, + "defaultValue": "30" + }, + { + "name": "saveToFile", + "type": "boolean", + "description": "Whether to save the downloaded document as a file to local storage.", + "required": false, + "defaultValue": "false" + }, + { + "name": "filePath", + "type": "string", + "description": "If saveToFile is true, the full file path to save the document to.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the document's binary content (base64 encoded), filename, MIME content type, HTTP status code, and a success flag." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve documents from external APIs that require authentication and optional query customization. It helps automate data extraction from secured or parameterized API endpoints, returning structured content and metadata for further processing or storage.", + "limitations": "This tool does not handle document format conversions, offline file system operations beyond saving, or parsing document contents. It requires a valid API endpoint and valid authentication credentials.", + "examples": [ + "Download a PDF invoice from a billing API using a bearer token.", + "Retrieve a JSON report document from a REST endpoint with query filters.", + "Fetch an image file from an authenticated API and save it locally." + ] + }, + "tags": [ + "api", + "download", + "document", + "authentication", + "http", + "integration" + ], + "examples": [ + { + "inputJson": "{\n \"documentUrl\": \"https://api.example.com/v1/docs/12345/download\",\n \"authToken\": \"Bearer abcdef1234567890\",\n \"queryParams\": {},\n \"headers\": {\"Accept\": \"application/pdf\"},\n \"timeoutSeconds\": 60,\n \"saveToFile\": true,\n \"filePath\": \"/tmp/invoice_12345.pdf\"\n}", + "description": "Download a PDF invoice document with a bearer token, saving it to local path." + }, + { + "inputJson": "{\n \"documentUrl\": \"https://reports.example.com/api/report\",\n \"authToken\": \"ApiKey xyz987654\",\n \"queryParams\": {\"date\": \"2024-06-01\", \"format\": \"json\"},\n \"headers\": {},\n \"timeoutSeconds\": 30,\n \"saveToFile\": false,\n \"filePath\": \"\"\n}", + "description": "Retrieve a JSON formatted report for a specific date without saving to disk." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "api-integration.createAPI", + "description": "Creates a new RESTful API configuration by accepting endpoint definitions, HTTP methods, request/response schemas, authentication, and other settings; it then generates an API specification and optionally deploys it to a target environment, returning a summary and access details.", + "category": "api-integration", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The name of the API to create, used for identification and documentation.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "The version number or identifier of the API, e.g., 'v1'.", + "required": false, + "defaultValue": "\"v1\"" + }, + { + "name": "basePath", + "type": "string", + "description": "The base URL path prefix for the API endpoints, e.g., '/api'.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "An array of endpoint definitions, each including path, HTTP method, request/response schema, and descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Authentication configuration object specifying the auth type and credentials or tokens.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "deploy", + "type": "boolean", + "description": "Flag indicating whether to deploy the API automatically after creation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "The target environment for deployment like 'staging' or 'production'.", + "required": false, + "defaultValue": "\"staging\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the created API's unique identifier, summarized configuration, deployment status, and access URLs if deployed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and optionally deploy new RESTful APIs by specifying endpoints, request methods, data schemas, and authentication, enabling integration platforms or dev automation pipelines to generate APIs without manual coding. It is ideal for dynamic API generation based on user requirements or metadata.", + "limitations": "This tool does not handle API runtime execution, scaling, or monitoring. It cannot create non-RESTful APIs or automatically generate backend logic for endpoints beyond the specification.", + "examples": [ + "Create a versioned API named 'InventoryService' with CRUD endpoints for inventory items.", + "Create a simple API with authentication for accessing user profile data.", + "Automatically deploy a new payment processing API to the production environment with specified endpoints." + ] + }, + "tags": [ + "api", + "integration", + "automation", + "deployment", + "rest", + "configuration", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"InventoryService\",\"version\":\"v1\",\"basePath\":\"/inventory\",\"endpoints\":[{\"path\":\"/items\",\"method\":\"GET\",\"requestSchema\":{},\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"quantity\":{\"type\":\"number\"}}}},\"description\":\"List all inventory items\"},{\"path\":\"/items\",\"method\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"quantity\":{\"type\":\"number\"}},\"required\":[\"name\",\"quantity\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"}}},\"description\":\"Create a new inventory item\"}],\"authentication\":{\"type\":\"apiKey\",\"in\":\"header\",\"name\":\"X-API-Key\"},\"deploy\":true,\"targetEnvironment\":\"staging\"}", + "description": "Defines a versioned InventoryService API with GET and POST endpoints for items, includes API key authentication, and deploys to staging." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "agent-management.analyzeLead", + "description": "Analyzes a business lead profile by assessing attributes such as contact information, company data, engagement level, and potential deal size. Processes structured lead data to produce a detailed analysis report indicating lead quality, sales readiness, and recommended next steps for engagement.", + "category": "agent-management", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "Structured object containing lead details including contact info, company profile, interaction history, and any sales notes.", + "required": true, + "defaultValue": "" + }, + { + "name": "engagementThreshold", + "type": "number", + "description": "Minimum engagement score to consider a lead sales-ready (range 0-100).", + "required": false, + "defaultValue": "70" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include personalized next step recommendations based on lead analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "priorityRegions", + "type": "array", + "description": "List of geographic regions to prioritize in assessing market potential for the lead's company.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing the lead score, readiness status, potential deal size estimate, and optionally recommendations for sales follow-up." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate potential sales leads to prioritize outreach efforts by assessing lead quality and readiness based on multiple business and engagement factors. Suitable for CRM optimizations and automated sales workflows.", + "limitations": "This tool cannot access or update live CRM databases; accuracy depends on completeness of input lead data. It does not perform direct contact or outreach actions.", + "examples": [ + "Analyze this lead's potential based on their company size and recent engagement.", + "Evaluate if this lead is ready for a sales call and suggest next steps.", + "Score multiple leads to prioritize high-value opportunities." + ] + }, + "tags": [ + "lead analysis", + "sales", + "crm", + "business intelligence", + "agent management" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"contactName\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"companyName\":\"Tech Innovators Inc.\",\"industry\":\"Software\",\"companySize\":250,\"lastEngagementScore\":85,\"notes\":\"Interested in enterprise solution\"},\"engagementThreshold\":75,\"includeRecommendations\":true,\"priorityRegions\":[\"North America\"]}", + "description": "Analyzing a technology sector lead with high engagement score and relevant company size, requesting recommendations for next sales steps." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "agent-management.generateSummary", + "description": "Generates a concise summary from a provided document or text input. Accepts raw text or document content in string format, processes it to extract key points and themes, and outputs a well-structured summary that highlights main ideas while preserving context.", + "category": "agent-management", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text content of the document to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the summary in characters; if omitted, a default length is used.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text (e.g., 'en' for English); influences summary quality.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "Whether to include key bullet points as highlights in addition to summary paragraphs.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the summary text and optionally an array of highlight points if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing a quick concise overview of lengthy documents, reports, or articles to aid rapid understanding or decision-making. Ideal for agents that handle information synthesis or briefings.", + "limitations": "Cannot generate summaries for non-text content such as raw images or audio. Output quality may vary with very short or highly technical texts.", + "examples": [ + "Summarize a 10-page project report to highlight key outcomes.", + "Generate a brief synopsis of a long article to share with stakeholders.", + "Produce main bullet points from meeting notes for quick review." + ] + }, + "tags": [ + "summary", + "document", + "text-processing", + "agent-management", + "information-synthesis" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"This document outlines the project objectives, timelines, and resource allocations. The primary goal is to enhance system performance by 20%. Key milestones include feature development, testing phases, and deployment within six months.\",\"maxSummaryLength\":300,\"includeHighlights\":true}", + "description": "Summarize a project overview document highlighting goals and milestones." + }, + { + "inputJson": "{\"documentText\":\"Recent quarterly financial results show a 5% increase in revenue while operating expenses decreased by 3%. Strategic investments in marketing contributed to better customer acquisition.\",\"maxSummaryLength\":200}", + "description": "Generate a brief financial summary focusing on recent quarterly performance." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "prompt-engineering.uploadDocument", + "description": "Uploads a document to a prompt engineering system to be used as context or reference for AI prompt crafting. Accepts document content or file URL, assigns metadata such as document name and type, and returns a confirmation with document ID and status.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The full text content of the document to upload. Required if fileUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileUrl", + "type": "string", + "description": "URL to the document file to be fetched and uploaded. Required if documentContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentName", + "type": "string", + "description": "A user-defined name or title for the document for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "The type or format of the document (e.g., 'text', 'pdf', 'markdown').", + "required": false, + "defaultValue": "text" + }, + { + "name": "tags", + "type": "array", + "description": "An array of strings serving as tags or categories for grouping or searching the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing document with the same name if found.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique document ID, upload status, and message describing the result of the upload." + }, + "aiAgent": { + "useCase": "Use this tool when needing to add external textual documents to the AI prompt environment for informed prompt crafting, context incorporation, or reference during generation tasks. Ideal for feeding manuals, knowledge bases, or reference texts to enhance AI understanding.", + "limitations": "This tool does not analyze document content or perform any transformation beyond uploading. It requires either direct text or accessible file URLs. Does not support binary file uploads directly. Overwrite is limited to documents with matching names.", + "examples": [ + "Upload a product manual document text to be used as context in prompt construction.", + "Add a PDF knowledge base via URL for AI to reference when generating answers.", + "Update an existing specification document by overwriting its previous version." + ] + }, + "tags": [ + "upload", + "document", + "prompt-engineering", + "context", + "reference", + "AI", + "text" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"This is a troubleshooting guide for the X100 printer.\",\"documentName\":\"X100 Printer Manual\",\"documentType\":\"text\",\"tags\":[\"printer\",\"manual\",\"troubleshooting\"],\"overwriteExisting\":false}", + "description": "Upload a plain text troubleshooting guide document with tags." + }, + { + "inputJson": "{\"fileUrl\":\"https://example.com/docs/api-reference.pdf\",\"documentName\":\"API Reference\",\"documentType\":\"pdf\",\"tags\":[\"api\",\"reference\"],\"overwriteExisting\":false}", + "description": "Upload a PDF document from a file URL for API reference." + }, + { + "inputJson": "{\"documentContent\":\"Updated spec for project timeline.\",\"documentName\":\"Project Timeline Spec\",\"documentType\":\"text\",\"tags\":[\"specification\",\"project\"],\"overwriteExisting\":true}", + "description": "Overwrite an existing document named 'Project Timeline Spec' with new content." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "prompt-engineering.buildFunction", + "description": "This tool accepts a natural language description of a desired AI prompt function, analyzes the intent and parameters, and generates a reusable JavaScript function that encapsulates the prompt construction logic. It processes input parameters and outputs well-structured, customizable prompt functions to integrate into prompt engineering workflows.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name of the JavaScript function to generate, following camelCase conventions.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Natural language description detailing what the prompt function should do.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputParameters", + "type": "array", + "description": "An array of objects describing each input parameter's name and type for the generated function.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "returnType", + "type": "string", + "description": "Expected return type of the function, typically 'string' for prompt output.", + "required": false, + "defaultValue": "string" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated function code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript function code as a string under 'code' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to formalize prompt crafting into reusable code functions for dynamic prompt generation in applications or AI workflows, enabling parameterized prompt templates. It helps automate prompt engineering by generating clean, maintainable functions from natural language intent descriptions.", + "limitations": "It cannot generate executable code for prompt APIs beyond string-based prompt construction or understand very ambiguous or incomplete descriptions. It assumes JavaScript output and does not test the generated code in runtime environments.", + "examples": [ + "Generate a function named 'createSummaryPrompt' that accepts 'text' and 'length' and returns a summary prompt string.", + "Build a prompt function named 'generateQueryPrompt' taking a 'query' and 'filters' to create a refined search prompt.", + "Create a prompt function 'composeEmail' with parameters 'recipientName' and 'topic' that returns a personalized email prompt." + ] + }, + "tags": [ + "prompt-engineering", + "code-generation", + "javascript", + "function-builder", + "ai-prompt", + "automation" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"createSummaryPrompt\",\"description\":\"Generates a prompt to summarize given text to a specified length.\",\"inputParameters\":[{\"name\":\"text\",\"type\":\"string\"},{\"name\":\"length\",\"type\":\"number\"}],\"returnType\":\"string\",\"includeComments\":true}", + "description": "Build function to summarize text with specified length" + }, + { + "inputJson": "{\"functionName\":\"generateQueryPrompt\",\"description\":\"Constructs a search query prompt incorporating user query and optional filters.\",\"inputParameters\":[{\"name\":\"query\",\"type\":\"string\"},{\"name\":\"filters\",\"type\":\"object\"}],\"returnType\":\"string\",\"includeComments\":false}", + "description": "Generate search query prompt function" + }, + { + "inputJson": "{\"functionName\":\"composeEmail\",\"description\":\"Creates an email prompt personalized with recipient name and topic.\",\"inputParameters\":[{\"name\":\"recipientName\",\"type\":\"string\"},{\"name\":\"topic\",\"type\":\"string\"}],\"returnType\":\"string\",\"includeComments\":true}", + "description": "Generate personalized email prompt function" + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "model-management.analyzeMetric", + "description": "Analyzes a specified performance metric of a trained AI model on a given dataset by computing statistical summaries, trends, and comparisons over time or between different model versions. Accepts model identifier, metric type, dataset, and optional filters, outputting detailed analytic results to support performance evaluation and monitoring.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to analyze metrics for.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricName", + "type": "string", + "description": "Name of the performance metric to analyze (e.g., accuracy, precision, loss).", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetId", + "type": "string", + "description": "Identifier of the dataset on which the metric was evaluated.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional start and end timestamps to filter metric data for time-based analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "compareModelIds", + "type": "array", + "description": "Optional array of other model IDs to compare the metric against.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "granularity", + "type": "string", + "description": "Aggregation level for metric analysis such as 'daily', 'weekly', or 'monthly'.", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics (mean, median, variance), trend analysis, and comparison charts or tables of the selected metric over the specified parameters." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating a specific model's performance using a particular metric on a dataset, especially for monitoring changes over time or comparing multiple model versions. Ideal for assessing model quality, detecting performance degradation, or reporting analytics in deployment pipelines.", + "limitations": "Does not retrain models or interpret causal reasons behind metric changes. Requires prior availability of metric data from evaluations; it cannot generate raw predictions or metrics from scratch.", + "examples": [ + "Analyze the accuracy trend of model ID 'model123' on the 'validationSet' dataset over the last month.", + "Compare the precision metric of model 'model123' vs 'model456' on the 'testSet' dataset.", + "Get a weekly summary of the loss metric for model 'model789' on dataset 'productionRollout'." + ] + }, + "tags": [ + "model-management", + "performance-analysis", + "metric-analysis", + "evaluation", + "AI-model", + "analytics", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model123\",\"metricName\":\"accuracy\",\"datasetId\":\"validationSet\",\"timeRange\":{\"start\":\"2024-01-01T00:00:00Z\",\"end\":\"2024-01-31T23:59:59Z\"},\"granularity\":\"daily\"}", + "description": "Analyze daily accuracy metric of model123 on the validationSet dataset during January 2024." + }, + { + "inputJson": "{\"modelId\":\"model123\",\"metricName\":\"precision\",\"datasetId\":\"testSet\",\"compareModelIds\":[\"model456\",\"model789\"],\"granularity\":\"weekly\"}", + "description": "Compare weekly precision metric of three models on the testSet dataset." + }, + { + "inputJson": "{\"modelId\":\"model789\",\"metricName\":\"loss\",\"datasetId\":\"productionRollout\",\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-15T23:59:59Z\"}}", + "description": "Get half-month loss metric summary for model789 on the production rollout dataset." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "model-management.draftEmail", + "description": "This tool accepts inputs describing the email purpose, recipient details, key points to include, tone, and optional signature. It processes these inputs to generate a coherent, professional draft email text suitable for business or technical communication. The output is a formatted email string ready for review or sending.", + "category": "model-management", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the email recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient; used for addressing or context.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "Brief description of the email purpose or intent (e.g., meeting request, update, follow-up).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of main points or information that must be included in the email body.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email such as formal, casual, persuasive, or neutral.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "signature", + "type": "string", + "description": "Optional sender's signature line or closing remarks.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the complete drafted email text with subject, greeting, body, and signature formatted as a string under the 'emailText' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a professional and contextually appropriate draft email based on structured input about recipients, purpose, and message details. It helps automate routine communication drafting to enhance productivity and maintain tone consistency.", + "limitations": "This tool cannot send emails or handle attachments. It generates text only and cannot verify the correctness of contact information or ensure compliance with specific organizational policies.", + "examples": [ + "Draft an email to a client summarizing the project status and next steps with a formal tone.", + "Create a casual follow-up email to a colleague to remind about an upcoming deadline.", + "Generate a persuasive email inviting stakeholders to an important meeting with key agenda points." + ] + }, + "tags": [ + "email", + "drafting", + "communication", + "business", + "automation", + "model-management" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Alice Johnson\",\"recipientEmail\":\"alice.johnson@example.com\",\"subject\":\"Project Update and Next Steps\",\"purpose\":\"Provide status update and outline next steps for the project\",\"keyPoints\":[\"Project is 75% complete\",\"Testing phase starts next week\",\"Need client feedback on deliverables\"],\"tone\":\"formal\",\"signature\":\"Best regards, John Smith\"}", + "description": "Draft a formal project update email to a client with key project milestones and requests for feedback." + }, + { + "inputJson": "{\"recipientName\":\"Bob\",\"recipientEmail\":\"bob@example.com\",\"subject\":\"Reminder: Report Submission\",\"purpose\":\"Gently remind about upcoming report submission deadline\",\"keyPoints\":[\"Deadline is Friday\",\"Please send the draft by Wednesday for review\"],\"tone\":\"casual\",\"signature\":\"Thanks, Sarah\"}", + "description": "Create a casual reminder email to a coworker about an approaching deadline and draft submission." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "model-management.draftDocument", + "description": "This tool generates a structured draft document for AI model management purposes based on user inputs such as model type, purpose, specifications, and deployment considerations. It produces a detailed text document draft that outlines the model's overview, architecture, training procedure, evaluation metrics, and deployment plan.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name or identifier of the AI model to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "Type or category of the AI model (e.g., classification, regression, NLP, vision).", + "required": true, + "defaultValue": "" + }, + { + "name": "modelPurpose", + "type": "string", + "description": "The primary purpose or application domain of the model (e.g., fraud detection, image recognition).", + "required": true, + "defaultValue": "" + }, + { + "name": "architectureDetails", + "type": "string", + "description": "A description of the model architecture including key components and layers.", + "required": false, + "defaultValue": "" + }, + { + "name": "trainingDataDescription", + "type": "string", + "description": "Details about the training dataset including source, size, and preprocessing steps.", + "required": false, + "defaultValue": "" + }, + { + "name": "evaluationMetrics", + "type": "array", + "description": "List of evaluation metrics used to assess model performance (e.g., accuracy, F1 score).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deploymentStrategy", + "type": "string", + "description": "Description of how the model will be deployed in production environments.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any additional information or considerations to include in the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a complete draft of the model management document as a string under the key 'documentDraft'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a comprehensive draft document outlining an AI model's specifications, training, evaluation, and deployment plan to aid in documentation, compliance, or knowledge transfer processes.", + "limitations": "This tool generates a draft text document and does not perform validation of the model specifications or guarantee compliance with industry regulations. It relies on the input quality and completeness.", + "examples": [ + "Generate a draft document for a convolutional neural network model used for medical image classification.", + "Create a draft document describing a fraud detection model including training data and deployment strategy.", + "Draft a document for an NLP sentiment analysis model focusing on architecture and evaluation metrics." + ] + }, + "tags": [ + "model management", + "documentation", + "drafting", + "AI model", + "deployment", + "training", + "evaluation" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"MedImgCNN\",\"modelType\":\"CNN\",\"modelPurpose\":\"Medical image classification\",\"architectureDetails\":\"3 convolutional layers followed by 2 dense layers\",\"trainingDataDescription\":\"Dataset of 50,000 labeled X-ray images with preprocessing including normalization and augmentation\",\"evaluationMetrics\":[\"accuracy\",\"recall\"],\"deploymentStrategy\":\"Deployed as a REST API on AWS Lambda\",\"additionalNotes\":\"Model retraining every 6 months.\"}", + "description": "Draft document for a CNN model used in medical imaging including all key sections." + }, + { + "inputJson": "{\"modelName\":\"FraudDetectV2\",\"modelType\":\"Random Forest\",\"modelPurpose\":\"Credit card fraud detection\",\"architectureDetails\":\"Ensemble of 100 decision trees\",\"trainingDataDescription\":\"Transaction dataset with 1 million records, balanced classes\",\"evaluationMetrics\":[\"precision\",\"recall\",\"F1 score\"],\"deploymentStrategy\":\"Real-time processing integrated with payment gateway\",\"additionalNotes\":\"Includes feature importance analysis.\"}", + "description": "Generate document draft for a fraud detection model with emphasis on deployment and evaluation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "model-management.generateParagraph", + "description": "Generates a coherent paragraph of text based on a given prompt, desired length, and optional tone. Accepts a text prompt and parameters to control style and length, then uses a text generation model to produce a relevant paragraph as output.", + "category": "model-management", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "Initial text prompt to base the paragraph generation on.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words in the generated paragraph.", + "required": false, + "defaultValue": "100" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the paragraph, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "includeKeywords", + "type": "array", + "description": "Optional list of keywords to try to include in the paragraph to emphasize relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "temperature", + "type": "number", + "description": "Controls randomness of generation; 0 is most deterministic, 1 is more creative.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a paragraph of text related to a specific topic or prompt for applications such as report summaries, content generation, or example text. This can assist in automating content creation workflows that require coherent and contextually relevant paragraphs.", + "limitations": "The tool cannot guarantee factual accuracy or original thought. It may generate irrelevant or off-topic content if the prompt is vague or if contradictory parameters are provided.", + "examples": [ + "Generate a formal paragraph about the importance of cybersecurity.", + "Create a casual paragraph describing benefits of electric vehicles including keywords 'environment' and 'efficiency'.", + "Produce a technical paragraph on AI model deployment with maximum 80 words." + ] + }, + "tags": [ + "text-generation", + "content-creation", + "paragraph", + "AI-model", + "writing" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"The impact of climate change on agriculture\",\"maxLength\":80,\"tone\":\"formal\",\"includeKeywords\":[\"sustainability\",\"crop yield\"],\"temperature\":0.6}", + "description": "Generate a formal paragraph about climate change impacts on agriculture including sustainability and crop yield keywords." + }, + { + "inputJson": "{\"prompt\":\"How to prepare for a job interview\",\"maxLength\":100,\"tone\":\"casual\",\"includeKeywords\":[],\"temperature\":0.8}", + "description": "Generate a casual paragraph giving tips on job interview preparation." + }, + { + "inputJson": "{\"prompt\":\"Explain the concept of neural networks\",\"maxLength\":90,\"tone\":\"technical\",\"includeKeywords\":[\"layers\",\"weights\"],\"temperature\":0.5}", + "description": "Generate a technical paragraph explaining neural networks with emphasis on layers and weights." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "model-management.generateSentence", + "description": "Generates a coherent and contextually relevant sentence based on specified input parameters, such as desired length, tone, and topic keywords. Accepts optional parameters to tailor sentence style and complexity, then outputs a single generated sentence string ready for use in AI model testing or content creation.", + "category": "model-management", + "parameters": [ + { + "name": "topicKeywords", + "type": "array", + "description": "List of keywords or phrases to be incorporated into the generated sentence to guide content focus.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Specifies the tone of the sentence, e.g., formal, informal, humorous, or neutral, affecting style and word choice.", + "required": false, + "defaultValue": "\"neutral\"" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the sentence in words. The tool will aim to generate a sentence close to this length.", + "required": false, + "defaultValue": "20" + }, + { + "name": "complexity", + "type": "string", + "description": "Controls the sentence complexity, e.g., simple, moderate, or complex sentence structures.", + "required": false, + "defaultValue": "\"moderate\"" + }, + { + "name": "language", + "type": "string", + "description": "The language in which to generate the sentence, specified by ISO language codes (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence as a string." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to create realistic sentences with customizable attributes for testing, training, or content generation. It helps produce sentences tailored by tone, length, topic keywords, or complexity to fit specific scenarios or datasets.", + "limitations": "It cannot generate multiple sentences or paragraphs in a single call, nor does it provide highly nuanced emotional subtleties beyond preset tone categories. It is limited to single sentences and may not accurately reflect complex semantic nuances for very specialized domains.", + "examples": [ + "Generate a humorous sentence about technology around 15 words.", + "Create a formal sentence using the keywords 'finance' and 'investment' approximately 25 words long.", + "Produce a simple, neutral sentence in Spanish about travel with length near 10 words." + ] + }, + "tags": [ + "generation", + "sentence", + "language-model", + "content-creation", + "text-generation", + "customization" + ], + "examples": [ + { + "inputJson": "{\"topicKeywords\":[\"technology\",\"innovation\"],\"tone\":\"humorous\",\"length\":15,\"complexity\":\"moderate\",\"language\":\"en\"}", + "description": "Generate a humorous sentence about technology with approximately 15 words." + }, + { + "inputJson": "{\"topicKeywords\":[\"finance\",\"investment\"],\"tone\":\"formal\",\"length\":25,\"complexity\":\"complex\",\"language\":\"en\"}", + "description": "Generate a formal and complex sentence involving finance and investment with about 25 words." + }, + { + "inputJson": "{\"topicKeywords\":[\"viaje\"],\"tone\":\"neutral\",\"length\":10,\"complexity\":\"simple\",\"language\":\"es\"}", + "description": "Generate a simple neutral sentence in Spanish about travel with around 10 words." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "model-management.generateSummary", + "description": "Generates a concise, coherent summary of a document based on provided text input. Accepts raw document text or extracted content, processes it using natural language understanding techniques to produce a shorter version that retains key information, suitable for quick review or metadata generation.", + "category": "model-management", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The raw text content of the document to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "The maximum length of the summary in number of words or characters, depending on the summarization mode.", + "required": false, + "defaultValue": "200" + }, + { + "name": "summaryType", + "type": "string", + "description": "Type of summarization to perform: 'extractive' (select sentences from original) or 'abstractive' (generate new text).", + "required": false, + "defaultValue": "abstractive" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input document text (e.g., 'en' for English) to optimize processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to extract and return key phrases or keywords alongside the summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary text and optionally key phrases or other metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to create a readable and concise summary from large document texts to facilitate understanding or generate abstracts for reports, databases, or user interfaces. It is useful for streamlining information consumption or metadata creation.", + "limitations": "The tool cannot interpret images, tables, or non-text content within documents. Very short texts might produce trivial summaries. Summary quality depends on input clarity and summarization type selected.", + "examples": [ + "Generate a brief summary of a legal contract to highlight main obligations.", + "Create an executive summary for a technical report in English, limited to 150 words.", + "Extract key phrases and a summary from a research article for indexing." + ] + }, + "tags": [ + "summarization", + "document", + "NLP", + "text-processing", + "metadata", + "model-management" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"The Q3 financial report shows significant growth in revenue with a 15% increase over the previous quarter, driven primarily by the new product launch...\",\"maxSummaryLength\":100,\"summaryType\":\"abstractive\",\"language\":\"en\",\"includeKeyPhrases\":true}", + "description": "Summarize a quarterly financial report to produce a concise overview with key phrases." + }, + { + "inputJson": "{\"documentText\":\"In this study, we explore the effects of climate change on ocean temperatures and marine biodiversity. Our results indicate a steady increase in surface temperatures...\",\"maxSummaryLength\":150,\"summaryType\":\"extractive\",\"language\":\"en\",\"includeKeyPhrases\":false}", + "description": "Create an extractive summary of a scientific article in English." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "model-management.createParagraph", + "description": "Generates a coherent paragraph of text based on a given prompt, tone, and desired length. The tool accepts text input parameters defining the topic or seed content, the intended style or tone, and a target word count. It processes these inputs using a language model to produce a natural language paragraph suitable for content generation, documentation, or creative writing tasks.", + "category": "model-management", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "Initial text or topic seed to base the paragraph content on.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Style or tone of the paragraph, e.g., formal, casual, informative, persuasive.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words in the generated paragraph.", + "required": false, + "defaultValue": "100" + }, + { + "name": "temperature", + "type": "number", + "description": "Sampling temperature for text generation; controls creativity (0.0-1.0).", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated paragraph as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a paragraph of coherent, contextually relevant text from a brief prompt, maintaining a specified tone and length. Useful in scenarios such as drafting content for documentation, marketing materials, or writing assistance.", + "limitations": "Cannot guarantee factual accuracy or originality; may produce generic or repetitive content. Paragraph length is approximate. Does not perform detailed topic research or fact verification.", + "examples": [ + "Generate a formal paragraph about the importance of data privacy.", + "Create a casual paragraph summarizing the features of a new product.", + "Write an informative paragraph explaining the basics of machine learning." + ] + }, + "tags": [ + "generation", + "text", + "paragraph", + "content creation", + "NLP", + "writing assistance" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"The impact of climate change on agriculture\",\"tone\":\"informative\",\"maxLength\":80,\"temperature\":0.6}", + "description": "Generate an informative paragraph about climate change effects on farming." + }, + { + "inputJson": "{\"prompt\":\"Launching our new smartphone model\",\"tone\":\"persuasive\",\"maxLength\":100,\"temperature\":0.8}", + "description": "Create a persuasive paragraph promoting a new phone." + }, + { + "inputJson": "{\"prompt\":\"Benefits of mindfulness meditation\",\"tone\":\"casual\",\"maxLength\":70,\"temperature\":0.7}", + "description": "Generate a casual paragraph about mindfulness meditation benefits." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "model-management.createSummary", + "description": "This tool accepts raw document text or a document object as input and generates a concise, coherent summary capturing the key points. It uses NLP techniques optimized for document content to produce a readable summary string, suitable for quick content review or integration into downstream AI model pipelines.", + "category": "model-management", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "Raw text content of the document to summarize.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentObject", + "type": "object", + "description": "Structured document input with metadata and text fields (e.g., {title, content}). If provided, text is extracted internally for summarization.", + "required": false, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate maximum number of sentences desired in the summary.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) of the input document to guide summarization.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "If true, include extracted key phrases alongside the summary in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the summary text and optionally key phrases extracted from the document. Structure: {summary: string, keyPhrases?: array of strings}" + }, + "aiAgent": { + "useCase": "Use this tool when you have extensive document content that needs condensing for faster human reading or subsequent AI processing, e.g., generating executive summaries from reports, legal documents, research papers, or long articles. It allows quick content understanding without reading full text.", + "limitations": "The tool may not capture all nuanced details; it assumes input is reasonably coherent text. It does not perform in-depth semantic analysis or fact-checking. Extremely short or highly technical texts may not summarize effectively.", + "examples": [ + "Generate a 3-sentence summary from a lengthy annual report document.", + "Create a summary and extract key phrases from research paper content for indexing.", + "Summarize a user manual text in Spanish with 5 sentences." + ] + }, + "tags": [ + "summarization", + "document", + "nlp", + "text-processing", + "model-management", + "content", + "ai" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"In this annual report, we detail the company performance in 2023, highlighting revenue growth of 15%, expansion into three new markets, and the successful launch of two new product lines. Challenges included supply chain disruptions and increased competition in Europe. Our sustainability initiatives reduced carbon footprint by 20%.\"}", + "description": "Summarize a business annual report text to key points." + }, + { + "inputJson": "{\"documentObject\":{\"title\":\"Advances in Renewable Energy\",\"author\":\"Dr. Smith\",\"content\":\"Renewable energy technologies have seen significant improvements in efficiency and cost-effectiveness over the last decade...\"},\"summaryLength\":4,\"includeKeyPhrases\":true}", + "description": "Summarize an academic paper excerpt and include key phrases." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "file-operations.generateDocument", + "description": "Generates a text-based document file (such as .txt, .md, or .html) from provided content and formatting options. Accepts input content as a string or array of strings, applies optional title, footer, and basic formatting, and outputs the completed document as a base64-encoded string along with metadata like file name and mime type.", + "category": "file-operations", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "Main textual content of the document to be included; supports plain text or simple markdown.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the output document file including extension (e.g., 'report.md', 'notes.txt').", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to appear at the top of the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "footer", + "type": "string", + "description": "Optional footer text to append at the end of the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output document format specifying flavor or markup (allowed: 'txt', 'md', 'html'). Defaults to 'txt'.", + "required": false, + "defaultValue": "txt" + }, + { + "name": "includeDate", + "type": "boolean", + "description": "If true, inserts the current date below the title or at the top if no title is provided.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the base64-encoded document content, the file name, and the MIME type corresponding to the document format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a new textual document file from raw content inputs, optionally formatted with title, footer, and simple markup format, suitable for saving or transmission as a standalone file.", + "limitations": "This tool does not support complex formatting, images, or advanced document types like PDFs or Word documents. It only outputs basic text-based formats and does not edit existing documents.", + "examples": [ + "Generate a markdown README file from provided project description and section headings.", + "Create a plain text log file with a header title and appended timestamp footer.", + "Produce a small HTML snippet document with a title and content for email or webpage embedding." + ] + }, + "tags": [ + "file", + "document", + "generate", + "text", + "markdown", + "html", + "plain-text" + ], + "examples": [ + { + "inputJson": "{\"content\":\"# Project Documentation\\nThis project is designed to demonstrate document generation.\",\"fileName\":\"README.md\",\"title\":\"Project Documentation\",\"format\":\"md\",\"includeDate\":true}", + "description": "Generate a markdown README file with a title and current date included." + }, + { + "inputJson": "{\"content\":\"Error Log Entry 2024/06/01:\\nSystem rebooted unexpectedly.\",\"fileName\":\"error_log.txt\",\"format\":\"txt\",\"footer\":\"End of Log\"}", + "description": "Create a plain text error log file with footer appended." + }, + { + "inputJson": "{\"content\":\"<p>Welcome to our site!</p>\",\"fileName\":\"welcome.html\",\"format\":\"html\",\"title\":\"Welcome Email\"}", + "description": "Produce a simple HTML document with a title and paragraph content." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "file-operations.createFile", + "description": "Creates a new file at a specified path with given content and optional encoding. Accepts file path, content as a string, encoding type (e.g., utf-8, ascii), and an overwrite flag. Outputs confirmation of creation and full file metadata including size and timestamps.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The complete path where the new file will be created, including filename and extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The text content to write into the new file.", + "required": true, + "defaultValue": "" + }, + { + "name": "encoding", + "type": "string", + "description": "The text encoding to use for the file content; defaults to utf-8.", + "required": false, + "defaultValue": "utf-8" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists at the path.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of creation, the absolute file path, file size in bytes, creation and modification timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when the agent needs to create new text files programmatically, such as saving logs, generating reports, or exporting data. It ensures controlled creation with options to set encoding and avoid overwriting existing files unless explicitly allowed.", + "limitations": "Cannot create files with non-text binary content without encoding translation. Does not support directory creation; the target directory must exist beforehand.", + "examples": [ + "Create a log file at /var/logs/app.log with UTF-8 encoding and allow overwriting.", + "Generate a new text report at C:/reports/daily.txt without overwriting if it exists.", + "Create a configuration file at ./config/settings.json with UTF-8 encoding." + ] + }, + "tags": [ + "file", + "create", + "text", + "encoding", + "filesystem", + "write", + "file management" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/tmp/example.txt\",\"content\":\"Hello, world!\",\"encoding\":\"utf-8\",\"overwrite\":true}", + "description": "Create a UTF-8 encoded text file at /tmp/example.txt with content 'Hello, world!' and overwrite if the file exists." + }, + { + "inputJson": "{\"filePath\":\"C:/Users/Public/report.txt\",\"content\":\"Report generated on 2024-06-15\",\"overwrite\":false}", + "description": "Create a report.txt file at given Windows path without overwriting if it already exists, using default UTF-8 encoding." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "file-operations.createCode", + "description": "Generates a source code file with specified programming language, code content, and optional file name and directory. Accepts code text and language, then writes a properly formatted code file at the given or default location.", + "category": "file-operations", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Programming language of the code to create, e.g., 'python','javascript'. Determines file extension and formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeContent", + "type": "string", + "description": "The full source code text content to be saved in the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional file name without extension. If omitted, a default name 'newCodeFile' will be used.", + "required": false, + "defaultValue": "newCodeFile" + }, + { + "name": "directoryPath", + "type": "string", + "description": "Optional path to directory where the file will be created. Defaults to current working directory.", + "required": false, + "defaultValue": "." + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite an existing file with the same name. Defaults to false to prevent accidental overwrites.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Information about the created file including full file path and success status" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or save source code programmatically in a specified language and location, such as scaffolding code snippets, generating example files, or storing dynamically created code for further use.", + "limitations": "This tool cannot execute or validate code correctness; it only creates the file with given content. It does not support complex project structures or multiple files in one call.", + "examples": [ + "Create a Python script file named 'helloWorld.py' with a hello world function.", + "Generate a JavaScript file in a subdirectory without overwriting if it exists.", + "Save a snippet of Java code into default directory using default file name." + ] + }, + "tags": [ + "file", + "create", + "code", + "source", + "programming", + "save", + "generate" + ], + "examples": [ + { + "inputJson": "{\"language\":\"python\",\"codeContent\":\"def greet():\\n print('Hello, world!')\",\"fileName\":\"helloWorld\",\"directoryPath\":\"./scripts\",\"overwrite\":false}", + "description": "Create a Python code file 'helloWorld.py' in './scripts' directory with a simple greet function." + }, + { + "inputJson": "{\"language\":\"javascript\",\"codeContent\":\"console.log('Testing file creation');\",\"fileName\":\"test\",\"directoryPath\":\"\",\"overwrite\":true}", + "description": "Create or overwrite 'test.js' in current directory with a console log statement." + }, + { + "inputJson": "{\"language\":\"java\",\"codeContent\":\"public class Example { public static void main(String[] args) { System.out.println(\\\"Example\\\"); } }\",\"fileName\":\"\",\"directoryPath\":\"./src\",\"overwrite\":false}", + "description": "Create a Java file with default name in './src' directory containing a simple Example class." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "email-communication.analyzeMessage", + "description": "Analyzes an email message provided as input to extract key information such as sentiment, intent, language, spam likelihood, and important entities. The tool accepts raw email text and provides a structured analysis summary including tone and probable categories to enable informed responses or automated workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "emailText", + "type": "string", + "description": "The full raw content of the email message to analyze, including subject and body.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSpamScore", + "type": "boolean", + "description": "Whether to calculate and include a spam likelihood score in the analysis output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "languageHint", + "type": "string", + "description": "Optional hint for the language of the email text to improve analysis accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analyzed email attributes: detected language, overall sentiment score and label, identified intent categories, spam likelihood score, and any extracted key entities or topics." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to understand the content and characteristics of an incoming email message to determine appropriate handling, such as routing, automated replies, prioritization, or spam filtering. It enables nuanced comprehension of the message beyond keyword matching.", + "limitations": "The tool cannot perfectly interpret highly ambiguous, sarcastic, or very context-dependent messages. It also does not provide full email parsing (e.g., headers) or advanced attachments analysis.", + "examples": [ + "Analyze the sentiment and intent of this email before deciding on a reply.", + "Detect if an email is likely spam and extract main topics for workflow automation.", + "Identify the language and main emotion conveyed in the customer support request email." + ] + }, + "tags": [ + "email", + "analysis", + "sentiment", + "spam-detection", + "intent-recognition", + "language-detection", + "automation" + ], + "examples": [ + { + "inputJson": "{\"emailText\":\"Subject: Meeting rescheduled to Monday\\nHi team,\\nThe meeting originally planned for Friday has been moved to Monday at 10 AM. Please update your calendars accordingly. Thanks!\",\"includeSpamScore\":true}", + "description": "A typical internal meeting rescheduling email to analyze tone and urgency." + }, + { + "inputJson": "{\"emailText\":\"Hello, I received a defective product and want a refund. Please advise how to proceed.\",\"includeSpamScore\":false}", + "description": "Customer complaint email to assess sentiment and extract key intent for support routing." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "email-communication.formatEmail", + "description": "Formats an email message by combining subject, body content, sender and recipient details, and optional attachments into a structured email object suitable for sending or preview. Accepts plain text or HTML body input and outputs a well-structured email format with headers and content.", + "category": "email-communication", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content of the email; can include plain text or HTML markup.", + "required": true, + "defaultValue": "" + }, + { + "name": "sender", + "type": "string", + "description": "The email address or display name and address of the sender.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of CC (carbon copy) email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of BCC (blind carbon copy) email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Whether the body content is HTML formatted (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects; each containing filename and content or a URL.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A structured email object including headers (subject, sender, recipients, cc, bcc), body content formatted properly according to isHtml flag, and an attachments array." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare an email message for sending or preview by formatting raw input components like subject, body, sender, recipients, and attachments into a standardized structured email object suitable for downstream processing or transmission.", + "limitations": "This tool does not send emails, validate email address syntax extensively, or encrypt content. It only formats and structures the email data.", + "examples": [ + "Format an email with plain text body for a project update.", + "Create an HTML formatted marketing email with multiple recipients and attachments.", + "Prepare a copy of an email with CC and BCC recipients included." + ] + }, + "tags": [ + "email", + "formatting", + "communication", + "automation", + "message", + "html", + "attachments" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Meeting Reminder\",\"body\":\"Please be reminded that the project kickoff meeting is tomorrow at 10 AM.\",\"sender\":\"project.manager@example.com\",\"recipients\":[\"team.member1@example.com\",\"team.member2@example.com\"],\"cc\":[\"pm.assistant@example.com\"],\"bcc\":[],\"isHtml\":false,\"attachments\":[]}", + "description": "Formatting a plain text email reminder with one CC recipient and no attachments." + }, + { + "inputJson": "{\"subject\":\"Monthly Newsletter\",\"body\":\"<h1>Latest Updates</h1><p>Check out our new product features!</p>\",\"sender\":\"newsletter@example.com\",\"recipients\":[\"subscriber1@example.com\",\"subscriber2@example.com\"],\"cc\":[],\"bcc\":[\"audit@example.com\"],\"isHtml\":true,\"attachments\":[{\"filename\":\"brochure.pdf\",\"content\":\"base64encodedstringhere\"}]}", + "description": "Formatting an HTML newsletter email with BCC and one PDF attachment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "email-communication.formatCode", + "description": "This tool accepts a string containing code snippets intended for inclusion in email templates. It formats and highlights the code according to the specified programming language and style preferences to ensure the code displays clearly and attractively within email content. The output is a properly formatted HTML string ready for email embedding.", + "category": "email-communication", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw code snippet as a string that needs to be formatted for email display.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the code snippet to apply appropriate syntax highlighting (e.g., 'javascript', 'python').", + "required": true, + "defaultValue": "" + }, + { + "name": "theme", + "type": "string", + "description": "Color theme for syntax highlighting, such as 'light' or 'dark'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "lineNumbers", + "type": "boolean", + "description": "Whether to include line numbers alongside the formatted code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "inlineStyles", + "type": "boolean", + "description": "Use inline CSS styles for email client compatibility (true) or external classes (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "wrapLines", + "type": "boolean", + "description": "Whether to wrap long lines to avoid horizontal scrolling in email clients.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the HTML string of the formatted and syntax-highlighted code suitable for embedding in email templates." + }, + "aiAgent": { + "useCase": "Use this tool when you need to embed programming code snippets in email templates or communications, ensuring the code is properly formatted, readable, and visually distinct with syntax highlighting, compatible with common email clients.", + "limitations": "This tool formats and highlights code for HTML email contexts but does not execute or validate the code itself. Some complex styles or very large code blocks may not render perfectly on all email clients.", + "examples": [ + "Format a JavaScript snippet with dark theme and line numbers for an email newsletter.", + "Format a Python code block with light theme and no line numbers for an instructional email.", + "Format HTML code snippet with inline styles to ensure compatibility in diverse email clients." + ] + }, + "tags": [ + "email", + "code", + "formatting", + "syntax-highlighting", + "template", + "automation" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function greet() {\\n console.log('Hello, world!');\\n}\",\"language\":\"javascript\",\"theme\":\"dark\",\"lineNumbers\":true,\"inlineStyles\":true,\"wrapLines\":true}", + "description": "Format a JavaScript function snippet for an email with dark theme, line numbers, inline styles, and line wrapping enabled." + }, + { + "inputJson": "{\"code\":\"def add(a, b):\\n return a + b\",\"language\":\"python\",\"theme\":\"light\",\"lineNumbers\":false,\"inlineStyles\":true,\"wrapLines\":true}", + "description": "Format a simple Python function snippet for embedding in an email with a light theme and no line numbers." + }, + { + "inputJson": "{\"code\":\"<div>Example</div>\",\"language\":\"html\",\"theme\":\"light\",\"lineNumbers\":false,\"inlineStyles\":true,\"wrapLines\":false}", + "description": "Format a simple HTML snippet for email with inline styles and no line wrapping." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "email-communication.composeEmail", + "description": "This tool composes a complete email message based on specified inputs such as recipients, subject, body content, and optional attachments or formatting. It accepts sender and recipient info, email subject, plain or HTML body text, optional CC and BCC addresses, and attachments. It outputs a structured email object ready for sending through an SMTP service or email API.", + "category": "email-communication", + "parameters": [ + { + "name": "sender", + "type": "string", + "description": "The sender's email address (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "toRecipients", + "type": "array", + "description": "List of primary recipient email addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "List of CC recipient email addresses (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccRecipients", + "type": "array", + "description": "List of BCC recipient email addresses (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content of the email, can include plain text or HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates if the body is HTML formatted (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments to include, each specified as an object with filename and base64 content.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An email object containing all input fields structured properly and ready for sending through an email service." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a fully structured email message from given sender, recipients, subject, body, and optional attachments. It helps automate email creation in workflows requiring dynamic message composition before sending.", + "limitations": "This tool does not send emails; it only composes and returns the structured email data. It does not validate email addresses or handle encoding of attachments beyond basic structuring.", + "examples": [ + "Compose an email with a subject, plain text body, sender, single recipient, and no attachments.", + "Create an HTML formatted email including CC and BCC recipients plus multiple attachments.", + "Generate an email with multiple 'To' recipients and verify the structure is correct for sending." + ] + }, + "tags": [ + "email", + "compose", + "automation", + "communication", + "message", + "sender", + "recipient" + ], + "examples": [ + { + "inputJson": "{\"sender\":\"alice@example.com\",\"toRecipients\":[\"bob@example.com\"],\"subject\":\"Meeting Update\",\"body\":\"Hello Bob, the meeting is rescheduled to 3 PM.\",\"isHtml\":false}", + "description": "Compose a simple plain text email from Alice to Bob with a meeting update." + }, + { + "inputJson": "{\"sender\":\"marketing@company.com\",\"toRecipients\":[\"client1@example.com\",\"client2@example.com\"],\"ccRecipients\":[\"manager@example.com\"],\"bccRecipients\":[\"audit@example.com\"],\"subject\":\"Newsletter April\",\"body\":\"<h1>April Newsletter</h1><p>Check our updates!</p>\",\"isHtml\":true,\"attachments\":[{\"filename\":\"newsletter.pdf\",\"content\":\"JVBERi0xLjQKJcfs...\"}]}", + "description": "Compose an HTML email newsletter to multiple clients with CC, BCC, and a PDF attachment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "email-communication.buildFunction", + "description": "Constructs a customizable JavaScript function for sending automated emails based on provided parameters including SMTP settings, recipient details, email content, and optional scheduling. The tool outputs source code for seamless integration into email automation workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The desired name for the generated JavaScript function.", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpSettings", + "type": "object", + "description": "SMTP configuration object containing host, port, user, and password for email sending.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "Array of recipient email addresses to whom the email will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The HTML or plain text content of the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "useHtml", + "type": "boolean", + "description": "Flag indicating whether the body content is HTML (true) or plain text (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule the email sending time. If empty, sends immediately.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript function source code as a string under 'code' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate JavaScript functions for sending automated emails with customizable SMTP credentials, recipients, and email content. Particularly useful for integrating programmatic email sending capabilities in larger automation scripts or applications without manually writing boilerplate code.", + "limitations": "The tool does not validate SMTP credentials or send emails itself; testing and verification must be performed in the target environment. It does not support rich templating engines or attachments.", + "examples": [ + "Create a function named 'sendWelcomeEmail' that sends a welcome email with HTML content to a list of users immediately.", + "Generate a function 'scheduleReportEmail' that sends a plain text report email to multiple recipients at a specified future time using given SMTP settings." + ] + }, + "tags": [ + "email", + "automation", + "JavaScript", + "function generation", + "SMTP", + "email sending" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"sendWelcomeEmail\",\"smtpSettings\":{\"host\":\"smtp.example.com\",\"port\":587,\"user\":\"user@example.com\",\"password\":\"password123\"},\"recipients\":[\"alice@example.com\",\"bob@example.com\"],\"subject\":\"Welcome!\",\"body\":\"<h1>Hello, welcome to our service.</h1>\",\"useHtml\":true,\"scheduleTime\":\"\"}", + "description": "Generate a function named 'sendWelcomeEmail' that sends an HTML welcome email immediately to two recipients using specified SMTP credentials." + }, + { + "inputJson": "{\"functionName\":\"scheduleReportEmail\",\"smtpSettings\":{\"host\":\"smtp.mailserver.com\",\"port\":465,\"user\":\"reports@company.com\",\"password\":\"securepwd\"},\"recipients\":[\"team@company.com\"],\"subject\":\"Monthly Report\",\"body\":\"Please find the monthly report attached.\",\"useHtml\":false,\"scheduleTime\":\"2024-07-01T09:00:00Z\"}", + "description": "Build a function 'scheduleReportEmail' that sends a plain text email with monthly report notice to team members at a scheduled future time using secure SMTP settings." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "email-communication.createJSON", + "description": "Generates a JSON representation of an email message based on provided components such as sender, recipients, subject, body, attachments, and metadata. Accepts structured inputs and outputs a standardized JSON object suitable for email automation and storage.", + "category": "email-communication", + "parameters": [ + { + "name": "from", + "type": "string", + "description": "Sender email address, used as the 'From' field in the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses for the 'To' field.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses for the carbon copy 'CC' field, optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses for the blind carbon copy 'BCC' field, optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content/body of the email, can be plain text or HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyType", + "type": "string", + "description": "Format of the email body content: 'plain' or 'html'.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects, each containing filename and file data as base64 string, optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata as key-value pairs to include with the email JSON, optional.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the full email message, including specified headers, body, attachments, and metadata, formatted for downstream processing or dispatch." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a standardized JSON representation of an email message for automation, templating, storing drafts, or preparing messages for sending via an email API. It consolidates all essential email components into a structured format.", + "limitations": "This tool only formats email data into JSON and does not send emails, validate email addresses, or handle email delivery status.", + "examples": [ + "Create a JSON email draft with basic fields: from, to, subject, and plain text body.", + "Generate an email JSON including CC, BCC, HTML body, and attachments encoded as base64.", + "Add custom metadata to the email JSON to store campaign or tracking info." + ] + }, + "tags": [ + "email", + "communication", + "json", + "automation", + "message-formatting", + "attachments", + "templating" + ], + "examples": [ + { + "inputJson": "{\"from\":\"sender@example.com\",\"to\":[\"recipient@example.com\"],\"subject\":\"Meeting Reminder\",\"body\":\"Don't forget our meeting at 10am.\",\"bodyType\":\"plain\"}", + "description": "Basic email JSON with sender, one recipient, subject, and plain text body." + }, + { + "inputJson": "{\"from\":\"noreply@company.com\",\"to\":[\"user1@example.com\",\"user2@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[],\"subject\":\"Monthly Report\",\"body\":\"<h1>Report attached</h1>\",\"bodyType\":\"html\",\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"JVBERi0xLjUKJcfs...\"}]}", + "description": "HTML email with multiple recipients, CC, and a PDF attachment encoded in base64." + }, + { + "inputJson": "{\"from\":\"marketing@brand.com\",\"to\":[\"client@example.com\"],\"subject\":\"Exclusive Offer\",\"body\":\"Check out our special discount!\",\"metadata\":{\"campaignId\":\"12345\",\"trackingEnabled\":true}}", + "description": "Email JSON including metadata fields for tracking and campaign identification." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "email-communication.createMessage", + "description": "Creates a structured email message object based on input parameters such as recipients, subject line, body content (plain text and/or HTML), attachments, and optional metadata like CC, BCC, and reply-to addresses. It outputs a message object ready for sending or further processing by email sending services.", + "category": "email-communication", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "A list of primary recipient email addresses. Must be valid email strings.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of carbon copy recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of blind carbon copy recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Plain text version of the email body content.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "HTML version of the email body content; if provided, email clients will prefer this format.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachments where each item contains filename, content (base64 or raw string), and optional content type.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyTo", + "type": "string", + "description": "Optional reply-to email address if different from the sender's address.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An email message object containing structured headers, body content in text and/or HTML format, recipient lists, attachments, and metadata ready for sending or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically construct a complete email message with recipients, subject, multiple body formats, and optional attachments or metadata before sending via an email service. It supports building messages for transactional emails, marketing campaigns, or automated notifications.", + "limitations": "Does not actually send the email; it only constructs the message object. Does not validate email addresses beyond basic format checks or handle sending failures.", + "examples": [ + "Create an email to multiple recipients with HTML content and an attachment.", + "Generate a plain text notification email with CC and BCC addresses specified.", + "Build a reply email setting a custom reply-to address." + ] + }, + "tags": [ + "email", + "message", + "create", + "compose", + "communication", + "automation", + "smtp", + "notifications" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"alice@example.com\",\"bob@example.com\"],\"subject\":\"Meeting Reminder\",\"bodyText\":\"Dear all, please be reminded of the meeting tomorrow at 10am.\",\"bodyHtml\":\"<p>Dear all,</p><p>Please be reminded of the <strong>meeting tomorrow at 10am</strong>.</p>\",\"attachments\":[{\"filename\":\"agenda.pdf\",\"content\":\"JVBERi0xLjQKJdP0zOEKMSAwIG9iago8PAovVGl0bGUgKP7/\"}]}", + "description": "Create an email message with multiple recipients, a subject, both text and HTML body content, and a PDF attachment." + }, + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Password Reset\",\"bodyText\":\"Click the link to reset your password.\",\"replyTo\":\"support@example.com\"}", + "description": "Generate a password reset email including a reply-to address for support." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeAccount", + "description": "Analyzes a cloud infrastructure account by collecting and examining resource usage, security configurations, cost metrics, and compliance status. It accepts an account identifier and optional filters, performs data aggregation and rule-based analysis, and returns a comprehensive report highlighting optimization opportunities, security risks, and compliance gaps.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the cloud infrastructure account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeCostAnalysis", + "type": "boolean", + "description": "Flag to include cost and billing data in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSecurityAssessment", + "type": "boolean", + "description": "Flag to include security configurations and vulnerability assessment in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeComplianceCheck", + "type": "boolean", + "description": "Flag indicating whether to perform compliance checks against specified standards.", + "required": false, + "defaultValue": "true" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards to check against, e.g., ['PCI-DSS','SOC2']. Required if includeComplianceCheck is true.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeRangeDays", + "type": "number", + "description": "Number of past days to consider data for usage, cost, and security trends analysis.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized analytics including resource utilization metrics, cost breakdowns, identified security issues, compliance status per standard, and recommendations for optimization or remediation." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to audit or analyze a cloud infrastructure account to produce an integrated report on resource efficiency, cost management, security posture, and compliance adherence. It aids in proactive infrastructure management and risk mitigation by combining multiple analysis domains into one comprehensive result.", + "limitations": "The tool depends on access permissions and data availability from cloud providers. It cannot make changes to the account or fix detected issues, only report them. Real-time data analysis is limited by the underlying APIs and may not reflect instant state changes.", + "examples": [ + "Generate a security and cost analysis report for account 'acc-1234' over the last 60 days.", + "Check compliance of account 'prod-account' against PCI-DSS and SOC2 standards.", + "Provide an overview of resource utilization and potential security risks for 'dev-account' including cost metrics." + ] + }, + "tags": [ + "analysis", + "infrastructure", + "cloud", + "account", + "cost", + "security", + "compliance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"acc-1234\",\"includeCostAnalysis\":true,\"includeSecurityAssessment\":true,\"includeComplianceCheck\":true,\"complianceStandards\":[\"PCI-DSS\"],\"timeRangeDays\":60}", + "description": "Analyze cloud account 'acc-1234' for cost, security, and PCI-DSS compliance over the past 60 days." + }, + { + "inputJson": "{\"accountId\":\"prod-account\",\"includeCostAnalysis\":false,\"includeSecurityAssessment\":true,\"includeComplianceCheck\":true,\"complianceStandards\":[\"SOC2\",\"ISO27001\"],\"timeRangeDays\":30}", + "description": "Perform security and compliance checks against SOC2 and ISO27001 for production account over last 30 days without cost data." + }, + { + "inputJson": "{\"accountId\":\"dev-account\",\"includeCostAnalysis\":true,\"includeSecurityAssessment\":false,\"includeComplianceCheck\":false,\"timeRangeDays\":15}", + "description": "Get cost and usage overview for development account over the past 15 days without security or compliance analysis." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "infrastructure-management.downloadCode", + "description": "Downloads code repositories or files from specified cloud or version control infrastructure. Accepts repository URL or file path, optional authentication credentials, branch or tag specifications, and downloads code content to a local or specified destination path. Outputs download status, file paths, and error messages if any.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the code repository or file location to download. Supports Git URLs and HTTP(S) file links.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local path where the downloaded code or files will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or personal access token for private repositories if required.", + "required": false, + "defaultValue": "" + }, + { + "name": "branch", + "type": "string", + "description": "Specific branch, tag, or commit hash to download from the repository. Defaults to the repository default branch if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSubmodules", + "type": "boolean", + "description": "Whether to include git submodules when downloading repositories. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "shallowClone", + "type": "boolean", + "description": "Whether to perform a shallow clone (limited history) to speed up download and reduce data. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the download process, absolute paths of downloaded files or directories, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically download code repositories or specific files from cloud version control systems or infrastructure for deployment automation, testing, or analysis. It supports private repositories with authentication and selective branch retrieval. It is valuable when integrating code fetching in infrastructure pipelines or management scripts.", + "limitations": "This tool cannot perform repository modifications like commits or pushes. It does not handle repository creation or detailed version control operations beyond downloading. Large repositories may require sufficient local storage and bandwidth.", + "examples": [ + "Download the main branch of a GitHub repository to a local build environment.", + "Fetch a private repository's specific feature branch using a provided access token.", + "Download code files from a public HTTP file server to a temporary directory for analysis." + ] + }, + "tags": [ + "infrastructure", + "download", + "code", + "version-control", + "repository", + "automation", + "cloud" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo.git\",\"destinationPath\":\"/tmp/repo\",\"branch\":\"main\",\"includeSubmodules\":false,\"shallowClone\":true}", + "description": "Download the main branch of a public GitHub repository to /tmp/repo with shallow clone and no submodules." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/private-repo.git\",\"destinationPath\":\"/var/repos/private-repo\",\"authToken\":\"ghp_exampletoken123\",\"branch\":\"develop\",\"includeSubmodules\":true,\"shallowClone\":false}", + "description": "Download the 'develop' branch of a private repository with an authentication token, including submodules, with full history." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://files.example.com/project.zip\",\"destinationPath\":\"/data/projects/project.zip\"}", + "description": "Download a code archive file from an HTTP URL to a local directory." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "infrastructure-management.downloadDocument", + "description": "Downloads specified infrastructure management documents such as architecture diagrams, compliance reports, or configuration files from a cloud service or internal document storage. Inputs include document ID or name, authentication credentials, and optional format. Outputs the document content or a download link.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "documentId", + "type": "string", + "description": "Unique identifier of the document to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentName", + "type": "string", + "description": "Name of the document to download if ID is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired format for the downloaded document (e.g., pdf, docx, json).", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Authentication token or API key to authorize document download.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include document metadata with the download.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the document content as a base64 string along with metadata if requested. If download fails, returns error details." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to retrieve specific infrastructure-related documents securely from managed cloud or internal repositories to view or process configuration details, compliance reports, or architecture documents.", + "limitations": "Cannot download documents from unsupported external systems or without proper authentication. Does not convert document content beyond specified formats.", + "examples": [ + "Download the architecture diagram with ID 'arch-12345' as a PDF.", + "Fetch compliance report named 'PCI_DSS_Audit_2024' including metadata.", + "Get configuration file in JSON format with necessary access token." + ] + }, + "tags": [ + "infrastructure", + "document", + "download", + "cloud", + "compliance", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"documentId\":\"arch-12345\",\"format\":\"pdf\",\"authenticationToken\":\"token_abc123\"}", + "description": "Download a specific architecture diagram in PDF format with authentication." + }, + { + "inputJson": "{\"documentName\":\"PCI_DSS_Audit_2024\",\"includeMetadata\":true,\"authenticationToken\":\"token_xyz789\"}", + "description": "Fetch compliance audit report by name including metadata with a valid token." + }, + { + "inputJson": "{\"documentId\":\"config-9876\",\"format\":\"json\",\"authenticationToken\":\"token_def456\"}", + "description": "Retrieve configuration file in JSON format using its ID and access token." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "infrastructure-management.buildFunction", + "description": "This tool automates the creation and deployment of serverless functions in cloud environments. It accepts configuration details including runtime, trigger events, environment variables, and source code repository. It builds, packages, and deploys the function, returning deployment status and endpoint information.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name identifier for the function to be built and deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "runtime", + "type": "string", + "description": "The runtime environment for the function (e.g., nodejs14.x, python3.9).", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerType", + "type": "string", + "description": "Event source or trigger for the function such as HTTP, S3, or scheduled cron.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceRepository", + "type": "string", + "description": "URL or path to the source code repository for the function's codebase.", + "required": true, + "defaultValue": "" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set in the function runtime.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "memorySize", + "type": "number", + "description": "Amount of memory (in MB) allocated to the function.", + "required": false, + "defaultValue": "128" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum execution time (seconds) before the function times out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "deploymentRegion", + "type": "string", + "description": "Cloud region to deploy the function in (e.g., us-east-1).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Deployment response including status, function ARN or URL, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate building and deploying serverless cloud functions to support scalable event-driven applications. It streamlines setup by configuring runtime, triggers, environment, and deployment without manual cloud console interaction.", + "limitations": "Does not manage infrastructure beyond serverless function deployment (e.g., no VPC setup). Cannot create source code, only deploys given repository code. Limited to supported cloud provider runtimes and regions.", + "examples": [ + "Build a Node.js serverless function triggered by HTTP events with custom environment variables.", + "Deploy a Python function with a S3 bucket trigger in the us-west-2 region.", + "Create a scheduled function running every 5 minutes with 256MB memory allocation." + ] + }, + "tags": [ + "infrastructure-management", + "serverless", + "cloud", + "deployment", + "function", + "automation" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"imageProcessor\",\"runtime\":\"nodejs14.x\",\"triggerType\":\"http\",\"sourceRepository\":\"https://github.com/example/image-processor.git\",\"environmentVariables\":{\"LOG_LEVEL\":\"debug\"},\"memorySize\":256,\"timeoutSeconds\":60,\"deploymentRegion\":\"us-east-1\"}", + "description": "Deploy a Node.js HTTP-triggered image processing function with custom environment variables and increased memory." + }, + { + "inputJson": "{\"functionName\":\"dataIngestor\",\"runtime\":\"python3.9\",\"triggerType\":\"s3\",\"sourceRepository\":\"https://gitlab.com/org/data-ingestor.git\",\"environmentVariables\":{},\"memorySize\":128,\"timeoutSeconds\":30,\"deploymentRegion\":\"eu-central-1\"}", + "description": "Deploy a Python function triggered by S3 events in the EU Central region with default memory and timeout." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "infrastructure-management.generateText", + "description": "Generates customized infrastructure-related textual content based on provided input parameters. Accepts infrastructure type, purpose, and key points, then composes detailed documentation, deployment notes, or overview summaries useful for cloud or physical infrastructure management. Outputs coherent, professional text tailored to specified infrastructure scenarios.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureType", + "type": "string", + "description": "Type of infrastructure (e.g., cloud, physical, hybrid) for which the text will be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentPurpose", + "type": "string", + "description": "Intended use or purpose of the generated text (e.g., deployment guide, architecture overview, maintenance notes).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of key points or topics to include in the generated text, highlighting important details or considerations.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience (e.g., system administrators, developers, management) to adjust tone and complexity.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the generated text in words.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text content under 'text' field as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate clear, concise, and tailored textual content related to cloud, physical, or hybrid infrastructure scenarios. Ideal for creating documentation, deployment notes, or overviews automatically based on structured inputs. Helps automate communication and documentation tasks in infrastructure management.", + "limitations": "This tool cannot verify technical accuracy or replace expert-generated infrastructure documentation. It does not generate executable scripts or code, only descriptive text content.", + "examples": [ + "Generate a deployment overview for a hybrid infrastructure targeting system administrators.", + "Create maintenance notes summarizing key points for a physical data center for management.", + "Produce an architecture overview document for cloud infrastructure components." + ] + }, + "tags": [ + "infrastructure", + "documentation", + "text-generation", + "cloud", + "physical", + "automation" + ], + "examples": [ + { + "inputJson": "{\"infrastructureType\":\"cloud\",\"documentPurpose\":\"architecture overview\",\"keyPoints\":[\"scalability\",\"security considerations\",\"cost optimization\"],\"targetAudience\":\"system architects\",\"length\":300}", + "description": "Generate a 300-word architecture overview text for cloud infrastructure focusing on scalability, security, and cost optimization aimed at system architects." + }, + { + "inputJson": "{\"infrastructureType\":\"physical\",\"documentPurpose\":\"maintenance notes\",\"keyPoints\":[\"hardware checks\",\"cooling system\",\"backup power\"],\"targetAudience\":\"operations team\",\"length\":200}", + "description": "Create 200-word maintenance notes for physical infrastructure covering hardware checks, cooling system, and backup power for operations team." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "infrastructure-management.createServer", + "description": "Creates a new virtual or physical server instance based on specified parameters such as server type, CPU cores, memory, storage, operating system, and network settings. Accepts configuration details and provisioning options as input, performs server allocation and setup, and returns the server's metadata including ID, status, IP address, and access credentials.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "The type of server to create, e.g., virtual machine, bare metal, container host.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate to the server.", + "required": true, + "defaultValue": "2" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes for the server.", + "required": true, + "defaultValue": "4" + }, + { + "name": "storageGB", + "type": "number", + "description": "Storage size in gigabytes for the server's primary disk.", + "required": true, + "defaultValue": "50" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system image to install, e.g., Ubuntu 22.04, Windows Server 2019.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkSettings", + "type": "object", + "description": "Configuration object for network settings such as VPC ID, subnet, and public IP allocation.", + "required": false, + "defaultValue": "" + }, + { + "name": "serverName", + "type": "string", + "description": "Optional friendly name for the server instance.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoStart", + "type": "boolean", + "description": "Whether to start the server automatically after creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the newly created server's unique identifier, current status, assigned IP addresses, and access credentials or keys." + }, + "aiAgent": { + "useCase": "Use this tool when provisioning new server instances in cloud or hybrid environments is needed, including specification of hardware resources, OS, and network configurations. Ideal for automating infrastructure deployment and scaling operations.", + "limitations": "This tool does not perform post-deployment software installation or configuration management. It cannot guarantee immediate availability under resource constraints.", + "examples": [ + "Create a Linux VM with 4 CPUs, 8GB RAM, and 100GB storage in subnet xyz.", + "Provision a bare metal server with Windows Server, 16 CPUs, and 256GB memory for a database workload.", + "Set up a container host with 2 CPUs and 4GB RAM and assign a public IP." + ] + }, + "tags": [ + "infrastructure", + "server provisioning", + "cloud", + "virtual machine", + "bare metal", + "automation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"virtual machine\",\"cpuCores\":4,\"memoryGB\":8,\"storageGB\":100,\"operatingSystem\":\"Ubuntu 22.04\",\"networkSettings\":{\"vpcId\":\"vpc-123456\",\"subnetId\":\"subnet-abc123\",\"assignPublicIp\":true},\"serverName\":\"web-server-01\",\"autoStart\":true}", + "description": "Provision a Linux VM with moderate resources and public IP in a specific subnet." + }, + { + "inputJson": "{\"serverType\":\"bare metal\",\"cpuCores\":16,\"memoryGB\":256,\"storageGB\":2000,\"operatingSystem\":\"Windows Server 2019\",\"autoStart\":false}", + "description": "Create a high-performance bare metal server with Windows for a database application." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "infrastructure-management.createDataset", + "description": "Creates a structured dataset by aggregating and normalizing infrastructure metrics and logs from specified cloud and physical environments. Accepts input parameters defining data sources, timeframe, and filtering options, then processes the collected data into a consistent dataset format for analysis or reporting.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of infrastructure data sources (e.g., servers, cloud accounts, monitoring tools) to collect metrics and logs from.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start timestamp to specify beginning of data collection period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end timestamp to specify end of data collection period.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Specific performance metrics or log types to include (e.g., CPU usage, memory, error logs). If empty, all available data is collected.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "normalize", + "type": "boolean", + "description": "If true, normalize data values and timestamps for consistency across sources.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the dataset (e.g., 'JSON', 'CSV').", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing the compiled dataset with metadata including source info, timeframe, and data schema, formatted per the requested outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when you need to consolidate and standardize diverse infrastructure monitoring data from multiple sources for analysis, reporting, or machine learning workflows. It is ideal for preparing unified datasets reflecting system state across clouds and physical servers over defined timeframes.", + "limitations": "This tool does not perform in-depth data analysis or visualization; it only aggregates and normalizes raw infrastructure data. It also depends on available data access permissions and may not support all custom metrics without prior integration.", + "examples": [ + "Create a dataset of CPU and memory usage from AWS and on-prem servers for last week.", + "Aggregate error logs from specific physical servers and cloud services between two dates, output as CSV.", + "Generate a normalized JSON dataset including network and storage metrics from multiple infrastructure data sources for an ML model input." + ] + }, + "tags": [ + "infrastructure", + "dataset", + "data-aggregation", + "monitoring", + "cloud", + "physical-servers", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[\"aws-account-123\",\"onprem-server-01\"],\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T23:59:59Z\",\"metrics\":[\"cpuUsage\",\"memoryUsage\"],\"normalize\":true,\"outputFormat\":\"JSON\"}", + "description": "Collect CPU and memory metrics from AWS and on-prem servers for the first week of May, normalized and output as JSON." + }, + { + "inputJson": "{\"dataSources\":[\"datacenter-rack15\"],\"startTime\":\"2024-06-10T00:00:00Z\",\"endTime\":\"2024-06-10T23:59:59Z\",\"metrics\":[\"errorLogs\"],\"normalize\":false,\"outputFormat\":\"CSV\"}", + "description": "Aggregate error logs from one datacenter rack for a single day, without normalization, output as CSV." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "infrastructure-management.createAPI", + "description": "Creates a RESTful API endpoint configuration for managing cloud or physical infrastructure components. Accepts input parameters defining endpoint paths, HTTP methods, expected request/response schemas, and authentication methods. Processes to generate API specifications and deployment-ready configurations. Outputs structured API definition JSON suitable for deployment or documentation.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The unique name identifying the API to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "List of endpoint objects defining path, HTTP method, request and response schemas, and authentication requirements.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version string of the API specification, e.g., 'v1'.", + "required": false, + "defaultValue": "\"v1\"" + }, + { + "name": "authentication", + "type": "object", + "description": "Object specifying the authentication type and configuration for the API, e.g., API keys, OAuth2.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "description", + "type": "string", + "description": "Brief textual description of the API's purpose and capabilities.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured object containing the full API specification including name, version, endpoints with paths, methods and schemas, and authentication details, ready for deployment or export." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of standardized, versioned API endpoints for managing infrastructure components via a RESTful interface. Ideal for orchestrating infrastructure management tasks, integrating with cloud services, or generating API specs from parameterized input.", + "limitations": "This tool does not deploy the API or implement backend logic. It only generates configuration/specification objects. Deployment and runtime environment setup must be handled separately.", + "examples": [ + "Create a REST API named 'infraManager' with endpoints to create and list virtual machines that require API key authentication.", + "Generate an API version 'v2' with endpoints for monitoring server status using GET methods without authentication.", + "Set up an API for physical device inventory management with POST and GET endpoints, including JSON schemas for requests and responses." + ] + }, + "tags": [ + "infrastructure", + "API", + "create", + "REST", + "cloud", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"infraManager\",\"version\":\"v1\",\"description\":\"API to manage cloud VMs\",\"authentication\":{\"type\":\"apiKey\"},\"endpoints\":[{\"path\":\"/vms\",\"method\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"size\":{\"type\":\"string\"}},\"required\":[\"name\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"status\":{\"type\":\"string\"}}},\"authenticationRequired\":true},{\"path\":\"/vms\",\"method\":\"GET\",\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"status\":{\"type\":\"string\"}}}},\"authenticationRequired\":true}]}", + "description": "Create a VM management API with POST and GET endpoints secured by API key." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "infrastructure-management.createContract", + "description": "Creates a standardized contract document for cloud or physical infrastructure services. Accepts details like parties involved, contract terms, service descriptions, duration, and pricing, and produces a structured contract document in JSON format suitable for review or further processing.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "partyAName", + "type": "string", + "description": "Full legal name of the first party in the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "partyBName", + "type": "string", + "description": "Full legal name of the second party in the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceDescription", + "type": "string", + "description": "Detailed description of the infrastructure services covered by the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "contractStartDate", + "type": "string", + "description": "Start date of the contract in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "contractEndDate", + "type": "string", + "description": "End date of the contract in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Description of payment terms, such as billing frequency and amounts", + "required": true, + "defaultValue": "" + }, + { + "name": "terminationClauses", + "type": "string", + "description": "Terms and conditions under which the contract may be terminated", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalClauses", + "type": "array", + "description": "Additional special conditions or clauses to include in the contract", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A contract document object containing all provided information formatted for legal and operational use" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a legally structured contract document for cloud or physical infrastructure management engagements, including service provisioning, support, or maintenance agreements. Ideal for automating contract drafts based on user inputs to expedite legal and operational workflows.", + "limitations": "This tool generates contract documents based on provided inputs but does not perform legal validation, negotiation, or enforceability checks. Final legal review is required by qualified professionals.", + "examples": [ + "Create a contract between 'Cloud Provider Inc.' and 'Acme Corp.' for managed cloud services starting 2024-07-01 with monthly billing.", + "Draft a service contract between 'Data Center Ops' and 'Retail Corp' covering server maintenance from 2024-08-01 to 2025-07-31 including payment terms and termination clauses.", + "Generate a contract for physical infrastructure installation between 'BuildTech Ltd.' and 'Enterprise Solutions' with additional clauses for SLA and penalties." + ] + }, + "tags": [ + "infrastructure", + "contract", + "document", + "legal", + "automation", + "service agreement" + ], + "examples": [ + { + "inputJson": "{\"partyAName\":\"Cloud Provider Inc.\",\"partyBName\":\"Acme Corp.\",\"serviceDescription\":\"Managed cloud infrastructure services including monitoring and backups.\",\"contractStartDate\":\"2024-07-01\",\"contractEndDate\":\"2025-06-30\",\"paymentTerms\":\"Monthly payments of $5000 due on the first of each month.\",\"terminationClauses\":\"Either party may terminate with 30 days written notice.\",\"additionalClauses\":[\"Service level agreement with 99.9% uptime guarantee\"]}", + "description": "Creating a service contract for managed cloud infrastructure between two companies with standard terms and SLA clause." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "monitoring.analyzeMessage", + "description": "This tool accepts a batch of communication messages as input in JSON format, analyzing them to detect patterns such as sentiment, frequency, peak times, and potential anomalies in message traffic. It outputs a structured report summarizing these insights including sentiment distribution, message count trends, and flagged irregularities.", + "category": "monitoring", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of message objects to analyze, each containing at least a timestamp and text content.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range filter with 'start' and 'end' ISO8601 timestamp strings to limit analysis within a specific period.", + "required": false, + "defaultValue": "" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Flag to enable or disable sentiment analysis of message contents.", + "required": false, + "defaultValue": "true" + }, + { + "name": "anomalyThreshold", + "type": "number", + "description": "Threshold value (0-1) to define sensitivity for detecting anomalies in message volume or patterns.", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "groupBy", + "type": "string", + "description": "Criteria to group messages for summarized analysis, e.g., 'senderId', 'channelId', or 'none'.", + "required": false, + "defaultValue": "none" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing sentiment overview, message frequency trends over time, grouping summaries if applied, and any detected anomalies flagged with relevant detail." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring communication systems to understand message flow characteristics, detect unusual activity, and gain insights into sentiment trends over time. It assists in preventive monitoring and sentiment-driven analysis in messaging platforms or internal communications.", + "limitations": "The tool analyzes text-based messages and time metadata only and cannot interpret multimedia content or context beyond textual data. Its anomaly detection is based on statistical thresholds and may require tuning for specific environments.", + "examples": [ + "Analyze message sentiment and frequency trends over the past week from a chat application.", + "Identify anomalies in message traffic grouped by sender within a one-day timeframe.", + "Generate a report summarizing message volume without sentiment analysis for a specific channel." + ] + }, + "tags": [ + "monitoring", + "analysis", + "message", + "sentiment", + "anomaly-detection", + "communication", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"text\":\"Hello, how are you?\",\"senderId\":\"user1\"},{\"timestamp\":\"2024-05-01T10:05:00Z\",\"text\":\"Everything is fine, thanks!\",\"senderId\":\"user2\"}],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"sentimentAnalysis\":true,\"anomalyThreshold\":0.75,\"groupBy\":\"none\"}", + "description": "Analyze a small set of messages with sentiment enabled, limited to a one-week time range." + }, + { + "inputJson": "{\"messages\":[{\"timestamp\":\"2024-06-10T12:00:00Z\",\"text\":\"Server is down!\",\"senderId\":\"user1\"},{\"timestamp\":\"2024-06-10T12:01:00Z\",\"text\":\"Fixing it now.\",\"senderId\":\"user2\"}],\"sentimentAnalysis\":true,\"groupBy\":\"senderId\"}", + "description": "Detect message patterns and sentiment grouped by sender from a brief conversation indicating a system issue." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "monitoring.composeDocument", + "description": "This tool accepts structured monitoring data inputs including metrics, logs, and events, then composes a comprehensive monitoring report document. It processes input parameters such as time range, included data types, and format preferences to generate an organized document summarizing system/application performance and issues. The output is a formatted report document (e.g., PDF, Markdown, HTML) ready for review or sharing.", + "category": "monitoring", + "parameters": [ + { + "name": "startTime", + "type": "string", + "description": "Start timestamp for the monitoring data to include in ISO 8601 format, e.g., '2024-01-01T00:00:00Z'.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End timestamp for the monitoring data to include in ISO 8601 format, e.g., '2024-01-02T00:00:00Z'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataTypes", + "type": "array", + "description": "List of monitoring data types to include in the document e.g., ['metrics', 'logs', 'events'].", + "required": true, + "defaultValue": "[\"metrics\",\"logs\"]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format, such as 'pdf', 'markdown', or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "title", + "type": "string", + "description": "Title to use for the monitoring report document.", + "required": false, + "defaultValue": "Monitoring Report" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag to include generated charts/graphs for key metrics in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detailsLevel", + "type": "string", + "description": "Level of detail for included data sections: 'summary', 'detailed', or 'full logs'.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed document content encoded (e.g., base64 string), metadata such as format, page count, and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when a comprehensive monitoring report needs to be generated from collected system or application monitoring data within a specific timeframe. Ideal for generating automated performance and issue summary documents for stakeholders or for archival purposes.", + "limitations": "Does not perform real-time data collection; relies on provided input data. Cannot generate deeply customized narrative analysis beyond templated summaries. No direct integration with alerting or remediation actions.", + "examples": [ + "Generate a PDF report of metrics and logs from last 24 hours including charts and summary.", + "Create an HTML monitoring report document focusing on events only with full log details.", + "Produce a Markdown report summarizing key performance metrics in the last week without charts." + ] + }, + "tags": [ + "monitoring", + "reporting", + "document", + "performance", + "metrics", + "logs", + "automation" + ], + "examples": [ + { + "inputJson": "{\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-01T23:59:59Z\",\"dataTypes\":[\"metrics\",\"logs\"],\"includeSummary\":true,\"outputFormat\":\"pdf\",\"title\":\"April 1 System Monitoring Report\",\"includeCharts\":true,\"detailsLevel\":\"summary\"}", + "description": "Generate a PDF monitoring report for April 1st including metrics and logs with summary and charts." + }, + { + "inputJson": "{\"startTime\":\"2024-03-25T00:00:00Z\",\"endTime\":\"2024-03-31T23:59:59Z\",\"dataTypes\":[\"events\"],\"includeSummary\":false,\"outputFormat\":\"html\",\"title\":\"Weekly Events Report\",\"includeCharts\":false,\"detailsLevel\":\"full logs\"}", + "description": "Create an HTML events-only report for the last week with full log details but no summary or charts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "monitoring.generateJSON", + "description": "Generates a JSON-formatted system or application performance report based on input metrics and parameters. Accepts performance data (e.g., CPU, memory usage), time range, and optional filters, then processes and organizes this information into a structured JSON output suitable for monitoring dashboards or further analysis.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of performance metrics to include such as ['cpuUsage', 'memoryUsage', 'latency'].", + "required": true, + "defaultValue": "[]" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start timestamp to define the beginning of the reporting period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end timestamp to define the ending of the reporting period.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional key-value pairs to filter data (e.g., { 'host': 'server01', 'region': 'us-east' }).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a summary section with aggregate statistics for the performance metrics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "granularity", + "type": "string", + "description": "The resolution of the data points, e.g., 'minute', 'hour', or 'day'.", + "required": false, + "defaultValue": "minute" + } + ], + "returns": { + "type": "object", + "description": "JSON object containing time-series performance data matching the requested metrics and filters, optionally including summaries and metadata about the report." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate structured JSON reports from raw or aggregated monitoring data within specified time frames and metric selections. Ideal for preparing data for visualization or further automated analysis in monitoring and alerting pipelines.", + "limitations": "Does not collect raw data itself; requires input data for processing. Does not perform predictive analysis or alerting logic. The tool outputs structured JSON but does not visualize or send data to endpoint systems.", + "examples": [ + "Generate CPU and memory usage report for the last 24 hours for host 'server01'.", + "Create a JSON report of latency metrics for a specific region between two dates.", + "Produce a summary-inclusive performance JSON report with hourly granularity." + ] + }, + "tags": [ + "monitoring", + "performance", + "reporting", + "json", + "metrics", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"cpuUsage\",\"memoryUsage\"],\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-02T00:00:00Z\",\"filters\":{\"host\":\"server01\"},\"includeSummary\":true,\"granularity\":\"hour\"}", + "description": "Generate an hourly CPU and memory usage report for server01 from June 1 to June 2, including summary statistics." + }, + { + "inputJson": "{\"metrics\":[\"latency\"],\"startTime\":\"2024-05-25T10:00:00Z\",\"endTime\":\"2024-05-25T16:00:00Z\",\"filters\":{\"region\":\"us-west\"},\"includeSummary\":false,\"granularity\":\"minute\"}", + "description": "Create a minute-resolution JSON report of latency metric in the US-West region for a 6-hour time window." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "monitoring.createJSON", + "description": "Generates a structured JSON report from raw performance metrics input. Accepts metrics data, timestamps, and optional metadata, then formats and summarizes them into a standardized JSON output suitable for monitoring dashboards or storage.", + "category": "monitoring", + "parameters": [ + { + "name": "metricsData", + "type": "object", + "description": "An object containing key-value pairs of performance metrics (e.g., CPU usage, memory usage).", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp marking the start of the metrics collection period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp marking the end of the metrics collection period.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "If true, includes a summary section with min, max, and average values for each metric.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional object containing additional metadata such as host info or application ID to include in the report.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A JSON object structured report containing the input metrics, timestamps, optional metadata, and, if requested, statistical summaries." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw performance metrics data and need to produce a well-structured JSON report for monitoring, alerting, or dashboard visualization. It helps format and enrich metrics data with timing and optional metadata consistently.", + "limitations": "This tool does not collect metrics by itself; it requires pre-collected data input. It does not perform deep analytics beyond basic summary statistics.", + "examples": [ + "Create a JSON report from CPU and memory usage metrics collected between two timestamps including summary statistics.", + "Generate a JSON monitoring report with server metadata for later import into a monitoring dashboard.", + "Produce a metrics JSON payload without summary statistics for real-time streaming." + ] + }, + "tags": [ + "monitoring", + "json", + "metrics", + "reporting", + "performance", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":{\"cpuUsage\":75,\"memoryUsage\":6320},\"startTime\":\"2024-06-01T08:00:00Z\",\"endTime\":\"2024-06-01T08:05:00Z\",\"includeSummary\":true,\"metadata\":{\"host\":\"server01\",\"app\":\"backend\"}}", + "description": "Generate a JSON report for CPU and memory usage including summary and metadata." + }, + { + "inputJson": "{\"metricsData\":{\"responseTime\":120,\"errorRate\":0.02},\"startTime\":\"2024-06-01T12:00:00Z\",\"endTime\":\"2024-06-01T12:10:00Z\",\"includeSummary\":false}", + "description": "Create a JSON metrics report without summary for response time and error rate." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "security-tools.analyzeNotification", + "description": "Analyzes notification messages to detect potential security risks such as phishing attempts, malicious links, or suspicious sender information. Accepts notification content and metadata, performs threat assessment using pattern recognition and heuristics, and outputs a detailed risk analysis report including risk level and identified issues.", + "category": "security-tools", + "parameters": [ + { + "name": "notificationContent", + "type": "string", + "description": "The full text content of the notification message to analyze for security threats.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier or address of the notification sender, used to assess sender reputation and legitimacy.", + "required": false, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "The platform or channel from which the notification originated (e.g., email, SMS, app), influencing analysis context.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeLinkAnalysis", + "type": "boolean", + "description": "Whether to perform analysis on links contained within the notification content to identify malicious URLs.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLinksToAnalyze", + "type": "number", + "description": "Maximum number of links to analyze within the notification to optimize performance.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A structured report containing overall risk assessment, detected threat categories, suspicious elements info, and recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when assessing the security and authenticity of notifications (e.g., emails, SMS, app alerts) to identify phishing or malicious content before user exposure. It's ideal for automated monitoring systems, security bots, or AI agents working in threat detection and response workflows.", + "limitations": "This tool cannot guarantee detection of all threats as some malicious content may use unknown or highly sophisticated evasion techniques. It does not perform real-time blocking or user notification. Accuracy depends on input quality and available threat intelligence.", + "examples": [ + "Analyze the security risk of an SMS notification about a package delivery with embedded links.", + "Check if a transactional email notification contains phishing indicators.", + "Evaluate app push notification content for potential security threats before displaying to users." + ] + }, + "tags": [ + "security", + "notification", + "phishing", + "risk analysis", + "threat detection", + "malicious link", + "communication" + ], + "examples": [ + { + "inputJson": "{\"notificationContent\":\"Your account has been suspended. Click http://fake-bank-login.com to verify immediately!\",\"senderId\":\"support@bank.com\",\"platform\":\"email\",\"includeLinkAnalysis\":true,\"maxLinksToAnalyze\":3}", + "description": "Analyze a suspicious email notification with a link potentially leading to a phishing site." + }, + { + "inputJson": "{\"notificationContent\":\"Package delivered to your door. Track at http://tracking-service.com/12345\",\"platform\":\"sms\",\"includeLinkAnalysis\":true}", + "description": "Evaluate SMS notification with delivery tracking link for security risks." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "security-tools.uploadReport", + "description": "Uploads a security report document to a centralized secure repository. Accepts report content, metadata like report type and author, and optional tags. Validates inputs and stores the report securely, returning a unique report ID, upload timestamp, and status confirmation.", + "category": "security-tools", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The full content of the security report to upload, as a string (e.g., text, JSON, or XML format).", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of the security report (e.g., vulnerability scan, audit report, compliance check).", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name or identifier of the report author or originating system.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of string tags to categorize the report for searching or filtering.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "confidential", + "type": "boolean", + "description": "Flag indicating if the report is confidential and requires restricted access.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique report ID, upload timestamp in ISO 8601 format, and upload status message." + }, + "aiAgent": { + "useCase": "Use this tool when you have a security-related report document that needs to be securely stored and cataloged for compliance, audit, or tracking purposes. It is ideal for automated workflows that generate vulnerability scans or audit summaries requiring centralized archival with metadata.", + "limitations": "This tool does not analyze or interpret report content, nor does it perform report generation. It only uploads and stores the given report content securely.", + "examples": [ + "Upload a vulnerability scan report from automated security tool", + "Store an audit compliance report authored by security team", + "Save a penetration test summary report with tags and confidentiality flag" + ] + }, + "tags": [ + "security", + "upload", + "report", + "compliance", + "audit", + "document", + "storage" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"{\\\"scanSummary\\\":\\\"No critical vulnerabilities found\\\"}\",\"reportType\":\"vulnerability scan\",\"author\":\"AutomatedScanner01\",\"tags\":[\"monthly\",\"scan\"],\"confidential\":true}", + "description": "Uploading a JSON formatted vulnerability scan report marked confidential with tags." + }, + { + "inputJson": "{\"reportContent\":\"Audit completed on 2024-05-15, all compliance checks passed.\",\"reportType\":\"audit report\",\"author\":\"SecurityTeamLead\",\"tags\":[],\"confidential\":false}", + "description": "Uploading a plain text audit report authored by team lead without tags and not confidential." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "security-tools.composeReport", + "description": "Generates a comprehensive security report by aggregating and analyzing input vulnerability scan data, system logs, and compliance checklist results. The tool processes the input data and outputs a formatted report in PDF or Markdown summarizing identified issues, severity levels, and recommended mitigation steps.", + "category": "security-tools", + "parameters": [ + { + "name": "vulnerabilityData", + "type": "array", + "description": "An array of vulnerability scan results, each including vulnerability id, description, severity, and affected components.", + "required": true, + "defaultValue": "" + }, + { + "name": "systemLogs", + "type": "array", + "description": "An optional array of system log entries relevant to security events for further analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "complianceResults", + "type": "object", + "description": "An optional object containing compliance checklist results, mapping requirement IDs to pass/fail and comments.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Output format of the generated report. Supported values are 'pdf' and 'markdown'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include remediation recommendations in the report summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Custom title for the security report.", + "required": false, + "defaultValue": "Security Assessment Report" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report content as a base64-encoded string and metadata including format and summary statistics." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to compile diverse security-related inputs (e.g., vulnerability scans, logs, compliance data) into a cohesive report for stakeholders or security teams, facilitating decision-making and remediation prioritization.", + "limitations": "It does not perform vulnerability scanning or log collection itself; all input data must be pre-processed and validated. It also does not replace detailed forensic or manual security analysis.", + "examples": [ + "Create a markdown security report from the latest vulnerability scans and compliance results.", + "Generate a PDF report including system logs and recommendations for the last assessment.", + "Compose a security report titled 'Q2 Security Review' without recommendations." + ] + }, + "tags": [ + "security", + "reporting", + "vulnerabilities", + "compliance", + "log analysis", + "pdf", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityData\":[{\"id\":\"VULN-1234\",\"description\":\"SQL Injection in login form.\",\"severity\":\"High\",\"affectedComponent\":\"WebApp\"}],\"systemLogs\":[{\"timestamp\":\"2024-04-01T12:00:00Z\",\"event\":\"Unauthorized login attempt\"}],\"complianceResults\":{\"PCI-DSS-1\":{\"status\":\"fail\",\"comment\":\"Missing encryption on data storage\"}},\"reportFormat\":\"markdown\",\"includeRecommendations\":true,\"reportTitle\":\"April Security Report\"}", + "description": "Generate a markdown report from vulnerabilities, logs, and compliance results with recommendations and custom title." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "security-tools.buildServer", + "description": "Builds a secured virtual server environment based on provided configurations. Accepts specifications for server type, operating system, security hardening options, network setup, and access controls. Processes these inputs to provision and configure the server with firewalls, user roles, and encryption policies. Outputs a summary of the built server's configuration and access details.", + "category": "security-tools", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of the server to build, e.g., 'web', 'database', 'application'.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server, e.g., 'Ubuntu 22.04', 'CentOS 8'.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableFirewall", + "type": "boolean", + "description": "Whether to enable and configure the firewall for the server.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sshAccessUsers", + "type": "array", + "description": "List of user names allowed SSH access to the server.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installSecurityUpdates", + "type": "boolean", + "description": "Whether to automatically apply latest security updates after build.", + "required": false, + "defaultValue": "true" + }, + { + "name": "networkConfiguration", + "type": "object", + "description": "Network parameters including VPC, subnet, and public IP assignment.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableDiskEncryption", + "type": "boolean", + "description": "Flag to enable full disk encryption on the server.", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalHardening", + "type": "array", + "description": "List of additional security hardening steps to apply like 'fail2ban', 'selinux'.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing serverId, IP address, configuration summary, security settings applied, and credential/access info." + }, + "aiAgent": { + "useCase": "This tool is used to programmatically create secure server instances with predefined configurations for environments that demand stringent security controls. Ideal for automating infrastructure deployment where security policies like firewalls, user access restrictions, and encryption need to be enforced from the start.", + "limitations": "Does not handle physical hardware provisioning or bare-metal servers; limited to virtualized/cloud environments. Does not install business applications or custom software beyond security tools.", + "examples": [ + "Build a secure Ubuntu web server with firewall enabled and SSH only for admin users.", + "Create a database server running CentOS with disk encryption and automatic security updates.", + "Provision an application server with additional fail2ban hardening and defined network settings." + ] + }, + "tags": [ + "security", + "server", + "infrastructure", + "provisioning", + "automation", + "hardening" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"web\",\"operatingSystem\":\"Ubuntu 22.04\",\"enableFirewall\":true,\"sshAccessUsers\":[\"admin\",\"devops\"],\"installSecurityUpdates\":true,\"networkConfiguration\":{\"vpc\":\"vpc-1234\",\"subnet\":\"subnet-5678\",\"assignPublicIp\":true},\"enableDiskEncryption\":false,\"additionalHardening\":[\"fail2ban\"]}", + "description": "Build a secure Ubuntu web server with firewall, SSH access for admin and devops users, public IP, fail2ban enabled." + }, + { + "inputJson": "{\"serverType\":\"database\",\"operatingSystem\":\"CentOS 8\",\"enableFirewall\":true,\"sshAccessUsers\":[\"dbadmin\"],\"installSecurityUpdates\":true,\"enableDiskEncryption\":true,\"additionalHardening\":[]}", + "description": "Create a CentOS database server with firewall, full disk encryption, and SSH access restricted to dbadmin." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "security-tools.generateSummary", + "description": "Generates a concise, clear summary of security-related documents such as vulnerability reports, audit logs, or compliance documents. Accepts raw text or structured JSON input and extracts key insights, risks, and recommendations into an easy-to-understand summary report.", + "category": "security-tools", + "parameters": [ + { + "name": "inputDocument", + "type": "string", + "description": "The raw text content or JSON string of the security document to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input document: 'text' for raw text, 'json' for structured JSON input.", + "required": true, + "defaultValue": "text" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate length of the summary in number of sentences or key points.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations in the summary output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input document and the summary output, default is 'en' (English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summarized key points, risks identified, and optional recommendations based on the input document." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents needing to quickly digest lengthy or complex security documents such as vulnerability assessments, audit findings, or incident reports. It helps extract and present critical security insights efficiently for decision-making or reporting.", + "limitations": "The tool may not accurately interpret documents with highly specialized jargon without sufficient context. It does not perform original security analysis but summarizes provided content. Summaries depend on input quality and may omit less prominent details.", + "examples": [ + "Summarize a vulnerability report to extract main risks and suggested mitigations.", + "Generate an executive summary from an audit log detailing security events for review.", + "Create a compliance document summary highlighting non-conformities and recommendations." + ] + }, + "tags": [ + "security", + "summary", + "documentation", + "vulnerability", + "audit", + "compliance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"inputDocument\":\"The recent security audit revealed several critical vulnerabilities including outdated software components and improper access controls. Immediate patching is recommended along with a review of user permissions.\",\"inputFormat\":\"text\",\"summaryLength\":3,\"includeRecommendations\":true,\"language\":\"en\"}", + "description": "Summarize a text-based security audit report highlighting vulnerabilities and recommendations." + }, + { + "inputJson": "{\"inputDocument\":\"{\\\"findings\\\":[{\\\"id\\\":1,\\\"description\\\":\\\"Outdated SSL protocols detected\\\",\\\"severity\\\":\\\"high\\\"},{\\\"id\\\":2,\\\"description\\\":\\\"Weak password policies\\\",\\\"severity\\\":\\\"medium\\\"}]}\",\"inputFormat\":\"json\",\"summaryLength\":4,\"includeRecommendations\":true,\"language\":\"en\"}", + "description": "Generate a summary from a structured JSON vulnerability report including key findings and recommendations." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "security-tools.createKey", + "description": "Generates a cryptographic key based on specified parameters such as key type, length, and usage. Accepts inputs defining the algorithm (e.g., RSA, AES), key size, and whether the key is symmetric or asymmetric. Outputs the generated key material securely encoded, along with metadata including key ID and algorithm details.", + "category": "security-tools", + "parameters": [ + { + "name": "algorithm", + "type": "string", + "description": "The cryptographic algorithm for the key (e.g., RSA, AES, EC).", + "required": true, + "defaultValue": "" + }, + { + "name": "keySize", + "type": "number", + "description": "Key length in bits (e.g., 2048 for RSA, 256 for AES).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyUsage", + "type": "array", + "description": "Intended uses of the key such as ['encrypt','decrypt','sign','verify'].", + "required": false, + "defaultValue": "[\"encrypt\",\"decrypt\"]" + }, + { + "name": "isSymmetric", + "type": "boolean", + "description": "Whether to generate a symmetric key (true) or an asymmetric key pair (false).", + "required": true, + "defaultValue": "true" + }, + { + "name": "keyId", + "type": "string", + "description": "Optional user-defined identifier for the key.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated key material (for symmetric keys) or key pair components (for asymmetric keys), encoded in base64 or PEM format, along with algorithm info and key ID." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate cryptographic keys for use in encryption, signing, or other security operations within your application or infrastructure. It supports both symmetric and asymmetric keys with customizable properties to fit diverse security requirements.", + "limitations": "This tool does not store keys securely; it only generates keys. Proper secure storage and lifecycle management must be handled separately. It also does not perform key rotation or revocation.", + "examples": [ + "Generate an AES 256-bit symmetric encryption key.", + "Create an RSA 2048-bit key pair for digital signatures.", + "Produce an EC key pair using ECDSA with 256-bit curve for signing." + ] + }, + "tags": [ + "cryptography", + "key generation", + "security", + "encryption", + "asymmetric", + "symmetric" + ], + "examples": [ + { + "inputJson": "{\"algorithm\":\"AES\",\"keySize\":256,\"keyUsage\":[\"encrypt\",\"decrypt\"],\"isSymmetric\":true}", + "description": "Generate a 256-bit AES symmetric key for encryption and decryption." + }, + { + "inputJson": "{\"algorithm\":\"RSA\",\"keySize\":2048,\"keyUsage\":[\"sign\",\"verify\"],\"isSymmetric\":false,\"keyId\":\"user-signing-key-01\"}", + "description": "Create an RSA 2048-bit asymmetric key pair for signing and verification with a specific key ID." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "security-tools.createModule", + "description": "Generates a customizable security module for web applications based on specified features such as authentication, authorization, input validation, and logging. Accepts configuration parameters defining the module's security features and returns code files and documentation to integrate into existing projects.", + "category": "security-tools", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "Name of the security module to be created, used for code namespaces and filenames.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of security features to include such as 'authentication', 'authorization', 'inputValidation', 'logging', 'encryption'.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the generated module (e.g., 'JavaScript', 'Python', 'Java').", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "frameworkCompatibility", + "type": "string", + "description": "Target framework for integration compatibility (e.g., 'Express', 'Django', 'Spring') or empty for none.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to include unit and integration test code for the module features.", + "required": false, + "defaultValue": "true" + }, + { + "name": "documentationFormat", + "type": "string", + "description": "Format of generated documentation, e.g., 'Markdown', 'HTML'.", + "required": false, + "defaultValue": "Markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated source code files as key-value pairs, documentation content, and optionally test code files to integrate a security module based on the provided specifications." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a modular security component tailored to specific security aspects for web applications, including authentication and authorization features, input validation, logging, and encryption. Ideal for automating boilerplate security code generation for faster development and consistent security practices.", + "limitations": "This tool does not perform security vulnerability scanning, auditing, or real-time threat detection. It generates code templates and modules but does not deploy or integrate them automatically. Requires manual review and integration into projects.", + "examples": [ + "Create a security module named 'UserAuth' in JavaScript with authentication, authorization, and logging features compatible with Express.", + "Generate a Python security module for input validation and encryption, including test cases, without framework integration.", + "Build a Java security module named 'SecureAccess' with authorization and logging features for Spring framework, documenting in HTML." + ] + }, + "tags": [ + "security", + "module", + "code generation", + "authentication", + "authorization", + "input validation", + "logging", + "encryption" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"UserAuth\",\"features\":[\"authentication\",\"authorization\",\"logging\"],\"language\":\"JavaScript\",\"frameworkCompatibility\":\"Express\",\"includeTests\":true,\"documentationFormat\":\"Markdown\"}", + "description": "Create a JavaScript security module named UserAuth with authentication and authorization compatible with Express, including tests and Markdown docs." + }, + { + "inputJson": "{\"moduleName\":\"DataProtection\",\"features\":[\"inputValidation\",\"encryption\"],\"language\":\"Python\",\"frameworkCompatibility\":\"\",\"includeTests\":false,\"documentationFormat\":\"Markdown\"}", + "description": "Generate a Python security module named DataProtection focusing on input validation and encryption without framework coupling or tests." + }, + { + "inputJson": "{\"moduleName\":\"SecureAccess\",\"features\":[\"authorization\",\"logging\"],\"language\":\"Java\",\"frameworkCompatibility\":\"Spring\",\"includeTests\":true,\"documentationFormat\":\"HTML\"}", + "description": "Build a Java security module SecureAccess including authorization and logging for Spring, with tests and HTML format documentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "security-tools.createInvoice", + "description": "This tool generates a secure, tamper-evident invoice document based on provided invoice details and client information. It accepts detailed input including items, prices, taxes, and client data; then produces a signed invoice PDF or JSON that includes a digital signature ensuring document integrity and authenticity.", + "category": "security-tools", + "parameters": [ + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier for the invoice to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientName", + "type": "string", + "description": "Name of the client to whom the invoice is issued.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientEmail", + "type": "string", + "description": "Email address of the client for sending or record purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of items or services billed; each entry includes description, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a decimal (e.g., 0.07 for 7% tax).", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) for the invoice amounts, e.g., USD, EUR.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date for the invoice payment in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "signInvoice", + "type": "boolean", + "description": "Flag indicating whether to digitally sign the invoice to ensure security and authenticity.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured response with invoice data including a secure digital signature and invoice document in PDF or JSON format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate verified, tamper-evident invoices that ensure document integrity and authenticity, particularly for billing in secure environments or regulated industries. Suitable for workflows requiring digital signing of financial documents to prevent fraud.", + "limitations": "This tool does not process payments, validate financial regulations by jurisdiction, or handle complex tax scenarios like multiple tax jurisdictions or exemptions.", + "examples": [ + "Create a signed invoice for client Acme Corp including 3 items and 7% tax.", + "Generate an invoice in EUR currency without digital signature for a consulting service.", + "Produce an invoice with due date 30 days from issue date and include client email for delivery." + ] + }, + "tags": [ + "invoice", + "security", + "document-generation", + "digital-signature", + "billing", + "finance" + ], + "examples": [ + { + "inputJson": "{\"invoiceNumber\":\"INV-2024-0001\",\"clientName\":\"Acme Corporation\",\"clientEmail\":\"billing@acme.com\",\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":150},{\"description\":\"Software License\",\"quantity\":1,\"unitPrice\":1200}],\"taxRate\":0.07,\"currency\":\"USD\",\"dueDate\":\"2024-07-31\",\"signInvoice\":true}", + "description": "Generate a secure, signed invoice for Acme Corporation including consulting and software license items with 7% tax." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "customer-support.analyzeText", + "description": "Analyzes customer support text input such as chat transcripts, emails, or feedback messages to extract key insights including sentiment analysis, intent classification, and topic detection. Returns structured analytics data to help improve service quality and understand customer needs.", + "category": "customer-support", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw customer support text content to analyze, such as a chat log, email, or feedback message.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text to tailor analysis models for accurate results (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis to determine the emotional tone of the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectIntent", + "type": "boolean", + "description": "Whether to classify the customer's intent or request from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractTopics", + "type": "boolean", + "description": "Whether to identify and extract key topics or themes discussed in the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to extract named entities like product names, locations, or dates mentioned in the text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "verbose", + "type": "boolean", + "description": "Return detailed analysis metadata and confidence scores for each detected element.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object including sentiment score, intent label, list of detected topics, extracted entities if requested, and confidence scores or metadata depending on verbosity settings." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing raw customer communication text to automatically summarize sentiment, detect what the customer is asking for, and identify relevant topics or entities. Useful for improving customer service response, routing tickets, and extracting actionable insights from unstructured customer feedback.", + "limitations": "Does not perform real-time interactive conversation analysis or multi-turn dialogue understanding; analysis is limited to the single text input provided. May require additional customization for niche domain-specific terms or multilingual contexts.", + "examples": [ + "Analyze a customer support email to identify their sentiment and intent.", + "Process chat transcript text to extract key topics and customer frustration level.", + "Summarize feedback messages to categorize topics and detect overall satisfaction." + ] + }, + "tags": [ + "customer-support", + "text-analysis", + "sentiment-analysis", + "intent-detection", + "topic-extraction" + ], + "examples": [ + { + "inputJson": "{\"text\":\"I'm very disappointed with my recent order. The product arrived late and damaged.\",\"language\":\"en\",\"analyzeSentiment\":true,\"detectIntent\":true,\"extractTopics\":true}", + "description": "Analyze a customer email complaining about product issues to extract sentiment, intent, and topics." + }, + { + "inputJson": "{\"text\":\"Can you help me reset my password? I can't access my account.\",\"analyzeSentiment\":true,\"detectIntent\":true}", + "description": "Analyze a support chat message to detect customer intent and sentiment for proper ticket handling." + }, + { + "inputJson": "{\"text\":\"Loved the quick support on my last issue! Great job.\",\"analyzeSentiment\":true,\"extractTopics\":true}", + "description": "Analyze positive customer feedback to identify sentiment and main topics mentioned." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "customer-support.analyzeMessage", + "description": "Analyzes a customer support message text to identify its sentiment, intent, and key topics. Accepts raw message text and language code as input; performs natural language processing to provide structured insights including emotional tone, primary customer intent categories, and important keywords or phrases for further handling or routing.", + "category": "customer-support", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The raw text content of the customer message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "languageCode", + "type": "string", + "description": "ISO language code of the message text, for accurate language processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including sentiment (positive, neutral, negative), detected intent categories, and extracted key topics or keywords that summarize the customer message content." + }, + "aiAgent": { + "useCase": "Use this tool when handling incoming customer service messages to automatically assess emotional tone, understand customer intent, and extract key topics. This enables prioritizing urgent or negative messages, routing requests to appropriate departments, and generating summary insights for faster response.", + "limitations": "The tool cannot replace full comprehension of nuance or sarcasm; it may misclassify ambiguous intents or complex multi-topic messages; it requires reasonably well-formed text and may not perform well on highly ungrammatical inputs.", + "examples": [ + "Analyze the customer's message to see if they are frustrated and what they are requesting.", + "Identify the main issue and emotional tone in this support chat log text.", + "Extract keywords and intent from the customer's email to automate routing." + ] + }, + "tags": [ + "customer-support", + "analysis", + "sentiment-analysis", + "intent-detection", + "text-processing", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"I am really unhappy with the delay in shipping my order. When will it arrive?\",\"languageCode\":\"en\"}", + "description": "Analyzing an unhappy customer message about delivery delay to detect negative sentiment, shipping delay intent, and key topics like 'delay' and 'order'." + }, + { + "inputJson": "{\"messageText\":\"Could you please help me reset my account password? I forgot it.\",\"languageCode\":\"en\"}", + "description": "Analyzing a password reset request to detect intent for account assistance and extract keywords like 'reset', 'account password'." + }, + { + "inputJson": "{\"messageText\":\"Merci pour votre aide, tout est parfait!\",\"languageCode\":\"fr\"}", + "description": "Analyzing a French message expressing satisfaction to detect positive sentiment and gratitude intent." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "customer-support.createWord", + "description": "Creates a new glossary word or term entry for customer support documentation, accepting the word text, definition, category, and optional tags. It processes the input by validating and formatting the word details, then outputs a standardized word object reflecting the glossary entry suitable for internal docs or knowledge bases.", + "category": "customer-support", + "parameters": [ + { + "name": "wordText", + "type": "string", + "description": "The word or term to be created in the glossary", + "required": true, + "defaultValue": "" + }, + { + "name": "definition", + "type": "string", + "description": "A clear, concise definition for the word or term", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "Category or domain the word belongs to, e.g., 'billing', 'technical'", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags related to the word for easier search and classification", + "required": false, + "defaultValue": "[]" + }, + { + "name": "createdBy", + "type": "string", + "description": "Identifier or name of the user or system creating the word entry", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created glossary word entry including id, word text, definition, category, tags, and metadata such as creation timestamp and creator" + }, + "aiAgent": { + "useCase": "Use this tool to add new customer support terminology or jargon into the internal glossary or knowledge base to ensure consistent usage and understanding among support agents and documentation. Useful when evolving product terms or capturing newly coined phrases.", + "limitations": "This tool does not validate the accuracy of definitions or enforce style guidelines; it only creates a structured glossary entry.", + "examples": [ + "Create a glossary word for 'Chargeback' with definition related to billing disputes.", + "Add a new term 'Multi-factor Authentication' with a technical definition to the security category.", + "Insert the term 'ETA' as an abbreviation for 'Estimated Time of Arrival' with appropriate tags." + ] + }, + "tags": [ + "customer-support", + "glossary", + "content-creation", + "knowledge-base", + "terminology" + ], + "examples": [ + { + "inputJson": "{\"wordText\":\"Chargeback\",\"definition\":\"A demand by a credit-card provider for a retailer to make good the loss on a fraudulent or disputed transaction.\",\"category\":\"billing\",\"tags\":[\"finance\",\"payment\"],\"createdBy\":\"system\"}", + "description": "Creates a glossary entry for the term Chargeback in the billing category." + }, + { + "inputJson": "{\"wordText\":\"Multi-factor Authentication\",\"definition\":\"A security system that requires more than one method of authentication from independent categories of credentials to verify the user's identity.\",\"category\":\"security\",\"tags\":[\"authentication\",\"security\"],\"createdBy\":\"admin_user\"}", + "description": "Adds a security-related technical glossary term for MFA." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "customer-support.createText", + "description": "Generates customized customer support text messages based on input parameters such as issue type, customer sentiment, and desired tone. The tool processes these inputs to create clear, empathetic, and context-appropriate replies useful for email, chat, or SMS support channels.", + "category": "customer-support", + "parameters": [ + { + "name": "issueType", + "type": "string", + "description": "The category or type of the customer's issue (e.g., billing, technical, account).", + "required": true, + "defaultValue": "" + }, + { + "name": "customerSentiment", + "type": "string", + "description": "The perceived sentiment or emotion of the customer, such as 'frustrated', 'neutral', or 'happy'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "desiredTone", + "type": "string", + "description": "The tone in which the reply should be written, e.g., 'formal', 'friendly', 'empathetic'.", + "required": false, + "defaultValue": "empathetic" + }, + { + "name": "language", + "type": "string", + "description": "The language for the generated text (e.g., 'en' for English, 'es' for Spanish).", + "required": false, + "defaultValue": "en" + }, + { + "name": "additionalContext", + "type": "string", + "description": "Any extra context or details relevant to the customer's situation to personalize the response.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated response in characters.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated support text message as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate empathetic and context-aware customer support messages tailored to specific issue types and customer sentiments. Ideal for creating draft replies for support agents or automating responses in multi-channel help desks.", + "limitations": "This tool cannot replace complex case-specific troubleshooting or provide legally binding information. It depends on accurate input parameters and may not capture all nuances of unique customer scenarios.", + "examples": [ + "Generate a friendly response to a billing issue where the customer is frustrated.", + "Create a formal text to respond to a technical inquiry in Spanish.", + "Produce an empathetic message addressing account access issues with extra context about recent service outages." + ] + }, + "tags": [ + "customer-support", + "text-generation", + "customer-service", + "response-automation", + "multilingual", + "tone-adaptive", + "support-messages" + ], + "examples": [ + { + "inputJson": "{\"issueType\":\"billing\",\"customerSentiment\":\"frustrated\",\"desiredTone\":\"friendly\",\"language\":\"en\",\"additionalContext\":\"Customer reports being overcharged for last month.\",\"maxLength\":300}", + "description": "Generate a friendly English response to a billing issue where the customer is frustrated and mentioned overcharge." + }, + { + "inputJson": "{\"issueType\":\"technical\",\"customerSentiment\":\"neutral\",\"desiredTone\":\"formal\",\"language\":\"es\",\"additionalContext\":\"No internet connection since yesterday.\",\"maxLength\":400}", + "description": "Create a formal Spanish reply for a technical issue about internet outage." + }, + { + "inputJson": "{\"issueType\":\"account\",\"customerSentiment\":\"happy\",\"desiredTone\":\"empathetic\",\"language\":\"en\",\"additionalContext\":\"Customer recently changed phone number.\",\"maxLength\":250}", + "description": "Produce an empathetic English message regarding account access issues involving a recent phone number change." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "customer-support.createImage", + "description": "Generates customized support images such as tutorials, step-by-step guides, or error explanation graphics based on input text descriptions, preferred style, and dimensions. It processes textual prompts and outputs image files suitable for embedding in customer service portals or help documentation.", + "category": "customer-support", + "parameters": [ + { + "name": "descriptionText", + "type": "string", + "description": "Detailed textual description of the image content or scenario to be illustrated, guiding the image generation process.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageStyle", + "type": "string", + "description": "Preferred visual style of the generated image, e.g., 'cartoon', 'realistic', 'minimalist'.", + "required": false, + "defaultValue": "minimalist" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "includeTextOverlay", + "type": "boolean", + "description": "Whether to include text annotations or labels directly on the image to clarify steps or errors.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., en, es) to use for any textual elements in the image overlays.", + "required": false, + "defaultValue": "en" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Output image file format, such as 'png', 'jpg', or 'svg'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated image as a Base64 encoded string, its width, height, and file format for embedding or download." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create visual aids tailored to customer support scenarios, such as instructional images, error resolution diagrams, or product usage visuals, derived from textual guidance. It is particularly useful for generating dynamic images on-demand that complement textual explanations.", + "limitations": "The tool cannot generate highly complex photographic images or intricate designs requiring professional graphic design software. It is limited to generating images based on descriptive prompts and cannot replace specialized graphic design services.", + "examples": [ + "Create an image showing how to reset a password with step numbers and icons.", + "Generate a minimalist diagram explaining common error messages in the app with callouts.", + "Make an instructional cartoon-style image that illustrates how to install a printer driver." + ] + }, + "tags": [ + "customer-support", + "image-generation", + "visual-aid", + "tutorial", + "helpdesk", + "graphics" + ], + "examples": [ + { + "inputJson": "{\"descriptionText\":\"Step-by-step guide to reset a forgotten password, showing keyboard and reset button.\",\"imageStyle\":\"minimalist\",\"width\":800,\"height\":600,\"includeTextOverlay\":true,\"language\":\"en\",\"fileFormat\":\"png\"}", + "description": "Generate a minimalist step-by-step password reset guide image with text annotations." + }, + { + "inputJson": "{\"descriptionText\":\"Diagram showing common network error messages with explanations.\",\"imageStyle\":\"realistic\",\"width\":1024,\"height\":768,\"includeTextOverlay\":true,\"language\":\"en\",\"fileFormat\":\"jpg\"}", + "description": "Create a realistic diagram explaining network error messages for support documentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "customer-support.createIssue", + "description": "Creates a new customer support issue ticket based on provided details such as customer ID, issue title, description, priority, and optional metadata. Processes inputs to generate a structured issue record, assigning default status and optionally linking to related product or order IDs. Returns the new issue ID and confirmation details.", + "category": "customer-support", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier for the customer reporting the issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Brief summary or title of the issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the customer's issue or request.", + "required": true, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Urgency level of the issue; e.g., low, medium, high, critical.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "relatedProductId", + "type": "string", + "description": "Optional product identifier related to the issue if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "relatedOrderId", + "type": "string", + "description": "Optional order identifier related to the issue if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags to categorize or label the issue (e.g., \"billing\", \"technical\").", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment URLs or file references supporting the issue.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the new issue's unique ID, status confirming creation, and a timestamp of creation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a new support ticket to formally track and manage a customer's problem or request, capturing relevant customer info, issue details, and contextual metadata to facilitate resolution and follow-up within a helpdesk environment.", + "limitations": "This tool does not update existing issues or provide solutions; it only creates new issue records. It does not perform validation beyond required fields or prioritize issues automatically beyond setting an initial priority level.", + "examples": [ + "Create a new issue for a customer reporting a login failure with high priority.", + "Log a billing question related to a specific order with supplemental attachments.", + "Register a general support inquiry without linking to a product or order." + ] + }, + "tags": [ + "customer-support", + "issue-tracking", + "ticket-creation", + "helpdesk", + "service", + "support", + "customer-service" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"cust12345\",\"title\":\"Cannot log in to account\",\"description\":\"Customer reports receiving an 'Invalid credentials' error despite correct password.\",\"priority\":\"high\",\"relatedProductId\":\"prod6789\",\"tags\":[\"login\",\"authentication\"]}", + "description": "Creating a high priority login issue for a specific product with tags." + }, + { + "inputJson": "{\"customerId\":\"cust54321\",\"title\":\"Billing discrepancy on last invoice\",\"description\":\"Customer notes an unexpected charge on invoice #INV-9999.\",\"priority\":\"medium\",\"relatedOrderId\":\"order1122\",\"attachments\":[\"https://example.com/invoice_INV-9999.pdf\"],\"tags\":[\"billing\",\"invoice\"]}", + "description": "Logging a billing issue related to a particular order with attachment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "customer-support.createContract", + "description": "Creates a customer service contract document based on specified client details, service terms, pricing, and duration. Accepts input parameters to customize contract clauses and outputs a finalized contract text suitable for review or digital signing.", + "category": "customer-support", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full legal name of the client or customer for whom the contract is being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceDescription", + "type": "string", + "description": "A detailed description of the services to be provided under the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractStartDate", + "type": "string", + "description": "Start date of the contract in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "contractEndDate", + "type": "string", + "description": "End date of the contract in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Description of payment terms, including pricing, billing frequency, and payment methods.", + "required": true, + "defaultValue": "" + }, + { + "name": "terminationClause", + "type": "string", + "description": "Text of termination clause specifying conditions for contract termination.", + "required": false, + "defaultValue": "Either party may terminate with 30 days written notice." + }, + { + "name": "includeConfidentialityClause", + "type": "boolean", + "description": "Whether to include a standard confidentiality clause in the contract.", + "required": false, + "defaultValue": "true" + }, + { + "name": "specialConditions", + "type": "array", + "description": "An array of strings specifying any special conditions or clauses to include in the contract.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the finalized contract text and a summary metadata including client name and contract duration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a tailored customer service contract based on client-specific parameters, service scope, and payment details to automate and standardize contract creation, especially in a help desk or customer support context.", + "limitations": "This tool does not perform legal validation or ensure compliance with jurisdiction-specific laws. The generated contract should be reviewed by legal professionals before signing.", + "examples": [ + "Create a new service contract for a client starting next month with monthly payments and a confidentiality clause.", + "Generate a customer support agreement for a three-month trial period without special conditions.", + "Produce a contract including custom termination terms and special service level agreements." + ] + }, + "tags": [ + "contract", + "customer-support", + "document-generation", + "service-agreement" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"serviceDescription\":\"Premium IT support services covering 24/7 help desk and onsite troubleshooting.\",\"contractStartDate\":\"2024-07-01\",\"contractEndDate\":\"2025-06-30\",\"paymentTerms\":\"Monthly payments of $5000 due on the 1st of each month.\",\"terminationClause\":\"Either party may terminate with 60 days written notice.\",\"includeConfidentialityClause\":true,\"specialConditions\":[\"Service Level Agreement with 99.9% uptime guarantee\"]}", + "description": "Create a one-year premium IT support contract with a custom termination notice and SLA clause." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "marketing-automation.composeDocument", + "description": "Generates a tailored marketing document such as proposals, campaign briefs, or newsletters by accepting input parameters detailing the target audience, campaign goals, tone, and content sections. It processes these inputs to compose a professional, coherent document in the requested format (e.g. plain text, HTML).", + "category": "marketing-automation", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of marketing document to compose, e.g., 'proposal', 'newsletter', or 'campaignBrief'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended recipients or customer segment for the marketing document.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignGoals", + "type": "string", + "description": "Key objectives or messages that the marketing campaign aims to communicate.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the document, such as 'formal', 'casual', 'persuasive', or 'informative'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "contentSections", + "type": "array", + "description": "Array of objects defining section titles and main points to include in those sections. Each object contains 'title' (string) and 'points' (array of strings).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the generated document, e.g. 'plainText', 'HTML', or 'markdown'.", + "required": false, + "defaultValue": "plainText" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed marketing document text in the requested format under the 'documentContent' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate structured marketing documents customized to specific campaigns, audiences, and objectives, saving time and ensuring consistency in tone and content. It's ideal for creating proposals, briefs, or newsletters with clear sections and messaging.", + "limitations": "Cannot access or analyze external data sources; relies solely on user-provided inputs. It does not perform detailed graphic layout or include images, focusing on textual content composition only.", + "examples": [ + "Compose a campaign proposal for a new eco-friendly product targeting millennials with a persuasive tone.", + "Generate a monthly newsletter outline for loyal customers highlighting upcoming sales and promotions, using a casual tone.", + "Create a formal campaign brief describing goals and key messages for an email marketing campaign targeting small business owners." + ] + }, + "tags": [ + "marketing", + "automation", + "document", + "composition", + "campaign", + "proposal", + "newsletter" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"proposal\",\"targetAudience\":\"millennial consumers interested in sustainability\",\"campaignGoals\":\"introduce new eco-friendly product line highlighting environmental benefits and affordability\",\"tone\":\"persuasive\",\"contentSections\":[{\"title\":\"Introduction\",\"points\":[\"Product overview\",\"Sustainability mission\"]},{\"title\":\"Benefits\",\"points\":[\"Eco-friendly materials\",\"Competitive pricing\"]},{\"title\":\"Call to Action\",\"points\":[\"Visit website\",\"Sign up for updates\"]}],\"outputFormat\":\"plainText\"}", + "description": "Compose a persuasive marketing proposal document targeting millennials for an eco-friendly product launch." + }, + { + "inputJson": "{\"documentType\":\"newsletter\",\"targetAudience\":\"existing loyal customers\",\"campaignGoals\":\"inform about upcoming seasonal sales and exclusive promotions\",\"tone\":\"casual\",\"contentSections\":[{\"title\":\"Upcoming Sales\",\"points\":[\"Black Friday savings\",\"Holiday discounts\"]},{\"title\":\"Exclusive Offers\",\"points\":[\"Early access for members\",\"Bonus gifts\"]}],\"outputFormat\":\"HTML\"}", + "description": "Generate a casual-style newsletter for loyal customers with information about sales and exclusive offers." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "marketing-automation.createText", + "description": "Generates marketing text content based on the campaign objective, target audience, tone, and additional style preferences. Accepts inputs like campaign goal, audience description, desired tone, and optional keywords. Produces tailored text suitable for ads, emails, social media posts, or landing pages to automate marketing content creation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignObjective", + "type": "string", + "description": "The main goal of the marketing content (e.g., brand awareness, lead generation, product promotion).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience including demographics, interests, or behaviors.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the generated text (e.g., formal, casual, enthusiastic, professional).", + "required": false, + "defaultValue": "casual" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of marketing content to generate such as ad copy, email, social post, or landing page text.", + "required": false, + "defaultValue": "ad copy" + }, + { + "name": "keywords", + "type": "array", + "description": "Optional list of keywords or phrases to incorporate in the generated text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated text in characters.", + "required": false, + "defaultValue": "300" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call-to-action phrase to include at the end of the text.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing text content as a string and metadata about the generation (e.g., content length)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create customized marketing text content automatically from structured campaign inputs. It helps rapidly produce relevant and engaging copy that aligns with campaign goals and audience profiles, facilitating scalable marketing efforts without manual writing.", + "limitations": "The tool generates text based on input prompts but may not capture deep brand nuances or complex strategies. It cannot replace human review and editing for brand voice consistency or legal compliance.", + "examples": [ + "Create email content for a professional product launch aimed at IT managers with a formal tone.", + "Generate social media ad copy targeting millennials interested in fitness using an enthusiastic tone and including specified keywords.", + "Produce landing page header text for a lead generation campaign focused on small business owners with a casual tone and a clear call to action." + ] + }, + "tags": [ + "marketing", + "content-generation", + "automation", + "text-generation", + "advertising", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"campaignObjective\":\"lead generation\",\"targetAudience\":\"small business owners aged 30-50 interested in tech solutions\",\"tone\":\"professional\",\"contentType\":\"email\",\"keywords\":[\"free trial\",\"easy setup\"],\"maxLength\":250,\"callToAction\":\"Sign up now\"}", + "description": "Generate a professional email for lead generation targeting small business owners promoting a free trial with a clear call to action." + }, + { + "inputJson": "{\"campaignObjective\":\"brand awareness\",\"targetAudience\":\"millennials interested in eco-friendly products\",\"tone\":\"enthusiastic\",\"contentType\":\"social post\",\"keywords\":[\"sustainable\",\"green\"],\"maxLength\":150,\"callToAction\":\"Join us today!\"}", + "description": "Create an enthusiastic social media post for brand awareness aiming at millennials promoting sustainable product benefits." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "marketing-automation.createMessage", + "description": "Creates a marketing message draft based on provided campaign details, target audience, and communication goals. Accepts input parameters defining message type, tone, key points, and call-to-action, then outputs a formatted message ready for review or deployment within marketing campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "Name of the marketing campaign this message belongs to.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description or segment identifier of the intended message recipients.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageType", + "type": "string", + "description": "Type of message to create, e.g., email, SMS, social media post.", + "required": true, + "defaultValue": "email" + }, + { + "name": "tone", + "type": "string", + "description": "Tone/style of the message, e.g., formal, casual, enthusiastic.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Array of key points or benefits to highlight in the message (each a string).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "callToAction", + "type": "string", + "description": "The main call-to-action to include in the message, e.g., 'Buy now', 'Sign up today'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includePersonalization", + "type": "boolean", + "description": "Whether to include personalization placeholders (e.g., recipient's name).", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of the message content in characters; 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated message text, metadata including message type, and a summary of included elements." + }, + "aiAgent": { + "useCase": "This tool is ideal for automating the creation of marketing messages tailored to specific campaigns and audiences, helping to speed up content production in email marketing, SMS campaigns, or social media. It assists AI agents in generating draft messages that follow campaign themes, desired tone, and calls to action.", + "limitations": "It cannot send messages or perform A/B testing. The generated content requires human review for compliance and final edits. It does not generate images or multimedia content.", + "examples": [ + "Create an email message for a holiday sale campaign targeting previous customers with a casual tone and 'Shop now' call-to-action.", + "Generate a short SMS message for a new product launch aimed at tech enthusiasts highlighting features and a signup CTA.", + "Draft a social media post with an enthusiastic tone promoting a webinar registration with personalization enabled." + ] + }, + "tags": [ + "marketing", + "automation", + "message", + "campaign", + "email", + "sms", + "social media", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Holiday Sale 2024\",\"targetAudience\":\"loyal_customers\",\"messageType\":\"email\",\"tone\":\"casual\",\"keyPoints\":[\"Up to 50% off\",\"Free shipping on orders over $50\"],\"callToAction\":\"Shop now\",\"includePersonalization\":true,\"maxLength\":500}", + "description": "Create a casual email message for loyal customers promoting a holiday sale with personalization and a shop now CTA." + }, + { + "inputJson": "{\"campaignName\":\"Product Launch\",\"targetAudience\":\"tech_enthusiasts\",\"messageType\":\"sms\",\"tone\":\"formal\",\"keyPoints\":[\"New AI-powered features\",\"Limited-time offer\"],\"callToAction\":\"Sign up today\",\"includePersonalization\":false,\"maxLength\":160}", + "description": "Generate a formal SMS message announcing new product features and a signup call-to-action for tech enthusiasts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "finance-tools.generateDocument", + "description": "Generates a financial document such as invoice, expense report, or financial statement based on provided data. Accepts document type, configurable fields (e.g., client info, line items, dates, amounts), and outputs a structured PDF or text document ready for use or distribution.", + "category": "finance-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of financial document to generate (e.g., invoice, expenseReport, financialStatement).", + "required": true, + "defaultValue": "\"\"" + }, + { + "name": "data", + "type": "object", + "description": "Structured data specific to the document type (e.g., items, amounts, dates, client details).", + "required": true, + "defaultValue": "{}" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) to display amounts in the document.", + "required": false, + "defaultValue": "\"USD\"" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section in the generated document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format string to use for dates in the document (e.g., MM/DD/YYYY).", + "required": false, + "defaultValue": "\"MM/DD/YYYY\"" + } + ], + "returns": { + "type": "object", + "description": "Contains the document content as a base64-encoded PDF string and a human-readable summary of the generated document." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate formal financial documents based on structured data inputs. Ideal for automating invoicing, expense reporting, and financial statement generation within financial management workflows. It ensures consistent format and reduces manual document preparation.", + "limitations": "Cannot process unstructured data or generate complex multi-section reports without explicit structured input. Does not perform financial calculations beyond those provided in inputs.", + "examples": [ + "Generate an invoice PDF for client ABC including purchased items and their prices.", + "Create an expense report document from a list of expenses with dates and amounts.", + "Produce a financial statement summarizing quarterly revenues and expenses in a formatted report." + ] + }, + "tags": [ + "finance", + "document generation", + "invoice", + "expense report", + "financial statement", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"invoice\",\"data\":{\"clientName\":\"Acme Corp\",\"invoiceNumber\":\"INV-1001\",\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":9.99},{\"description\":\"Widget B\",\"quantity\":5,\"unitPrice\":19.99}],\"issueDate\":\"2024-05-01\",\"dueDate\":\"2024-05-15\"},\"currency\":\"USD\",\"includeSummary\":true,\"dateFormat\":\"MM/DD/YYYY\"}", + "description": "Generate an invoice for client Acme Corp with two line items and specified dates." + }, + { + "inputJson": "{\"documentType\":\"expenseReport\",\"data\":{\"employeeName\":\"John Doe\",\"expenses\":[{\"date\":\"2024-04-20\",\"category\":\"Travel\",\"amount\":350.75},{\"date\":\"2024-04-22\",\"category\":\"Meals\",\"amount\":45.60}],\"reportPeriod\":\"April 2024\"},\"currency\":\"USD\",\"includeSummary\":true,\"dateFormat\":\"MM/DD/YYYY\"}", + "description": "Generate an expense report for John Doe with travel and meal expenses for April 2024." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "translation.createEmail", + "description": "This tool generates a professionally structured email in a target language based on user-provided key points, tone preferences, and recipient context. It accepts input text or bullet points in the source language, translates and composes them into a coherent email, and outputs the complete email content in the desired language.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "Language code of the input text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Language code for the email output translation (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "emailPurpose", + "type": "string", + "description": "Brief description of the email's purpose or subject to guide tone and style (e.g., 'request meeting','customer inquiry').", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of key sentences or bullet points in source language to be included in the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the email such as formal, informal, persuasive, or friendly.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "recipientContext", + "type": "string", + "description": "Additional context about the recipient or relationship to help personalize the email (e.g., 'new client', 'longtime partner').", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a formal signature placeholder at the end of the email.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully generated email text in the target language as a string under 'emailBody'." + }, + "aiAgent": { + "useCase": "Use when the agent needs to draft a clear, contextually appropriate email in a different language, transforming raw notes or points into polished communication. Ideal for cross-language professional or personal email creation with controlled tone and recipient consideration.", + "limitations": "Does not verify factual accuracy or recipient-specific sensitive contexts. Quality depends on clarity of input key points. Signature content is a placeholder and must be customized manually.", + "examples": [ + "Create a formal email in German requesting a reschedule for a meeting based on listed points.", + "Generate a friendly thank-you email in Spanish for a customer following a purchase.", + "Compose an informal reminder email in Japanese highlighting key deadlines for a colleague." + ] + }, + "tags": [ + "translation", + "email", + "communication", + "multilingual", + "business", + "automation", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"emailPurpose\":\"request meeting\",\"keyPoints\":[\"I hope you are well.\",\"I would like to schedule a meeting next week.\",\"Please let me know your availability.\"],\"tone\":\"formal\",\"recipientContext\":\"new client\",\"includeSignature\":true}", + "description": "Generate a formal French email to a new client requesting a meeting based on three key points." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"emailPurpose\":\"thank you note\",\"keyPoints\":[\"Thank you for your recent purchase.\",\"We appreciate your business.\",\"Please contact us if you have any questions.\"],\"tone\":\"friendly\",\"recipientContext\":\"customer\",\"includeSignature\":false}", + "description": "Create a friendly Spanish thank-you email for a customer without a signature." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "translation.createCode", + "description": "This tool accepts source code snippets in one programming language along with a target programming language, and produces an equivalent code snippet translated into the target language. It supports multiple programming languages and preserves logic and structure as much as possible during translation.", + "category": "translation", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The code snippet in the original programming language to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language of the input source code (e.g., 'Python', 'JavaScript').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The programming language to translate the source code into (e.g., 'Java', 'C++').", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveComments", + "type": "boolean", + "description": "Whether to try to preserve comments from the source code in the translated code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "optimizeForReadability", + "type": "boolean", + "description": "If true, format the translated code with emphasis on readability and idiomatic style of the target language.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated code snippet and metadata such as success status and any warnings or notes from the translation process." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate equivalent source code in a different programming language, for tasks such as code migration, interoperability, or learning purposes. It is helpful to quickly produce functional code in the target language given a source example.", + "limitations": "The tool cannot guarantee 100% semantic equivalence or handle very complex or library-dependent code perfectly. It may not translate proprietary or domain-specific languages accurately. Comments and formatting preservation may be imperfect.", + "examples": [ + "Translate a Python function to JavaScript.", + "Convert a JavaScript sorting algorithm snippet into Python.", + "Generate C# code from a given Java method." + ] + }, + "tags": [ + "translation", + "code", + "programming", + "sourceCode", + "languageConversion", + "codeGeneration" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"def greet(name):\\n return 'Hello, ' + name\",\"sourceLanguage\":\"Python\",\"targetLanguage\":\"JavaScript\",\"preserveComments\":true,\"optimizeForReadability\":true}", + "description": "Translate a simple Python greeting function to JavaScript." + }, + { + "inputJson": "{\"sourceCode\":\"function sum(arr) { let total = 0; for(let i=0; i<arr.length; i++){ total += arr[i]; } return total; }\",\"sourceLanguage\":\"JavaScript\",\"targetLanguage\":\"Python\",\"preserveComments\":true,\"optimizeForReadability\":true}", + "description": "Convert a JavaScript sum function to Python." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "content-creation.analyzeWord", + "description": "Analyzes a given word to provide linguistic details such as its part of speech, synonyms, definitions, syllable count, and etymology. Accepts a single word as input and outputs a structured analysis useful for content creation, writing assistance, or linguistic research.", + "category": "content-creation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word to be analyzed for linguistic properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSynonyms", + "type": "boolean", + "description": "Whether to include a list of synonyms in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDefinitions", + "type": "boolean", + "description": "Whether to include definitions of the word in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSyllableCount", + "type": "boolean", + "description": "Whether to include the count of syllables in the word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEtymology", + "type": "boolean", + "description": "Whether to include the etymology (word origin) information.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analyzed data about the word, including part of speech, synonyms, definitions, syllable count, and etymology if requested." + }, + "aiAgent": { + "useCase": "Use this tool when linguistic analysis of a specific word is needed to support content creation tasks, such as enriching text with synonyms, verifying word usage by part of speech, or investigating word origins. It is valuable for writing assistants, editors, educational content creators, and language research.", + "limitations": "This tool analyzes one word at a time and cannot process phrases, sentences, or ambiguous inputs without context. It relies on standard dictionaries, so very new slang or specialized jargon may have incomplete data.", + "examples": [ + "Analyze the synonyms and definitions of the word 'innovate'.", + "Get the syllable count and part of speech for the word 'run'.", + "Find the etymology and basic linguistic details of the word 'philosophy'." + ] + }, + "tags": [ + "linguistics", + "word-analysis", + "content-creation", + "writing", + "education", + "language", + "vocabulary" + ], + "examples": [ + { + "inputJson": "{\"word\":\"innovate\",\"includeSynonyms\":true,\"includeDefinitions\":true,\"includeSyllableCount\":true,\"includeEtymology\":false}", + "description": "Analyzing 'innovate' with synonyms, definitions, and syllable count." + }, + { + "inputJson": "{\"word\":\"run\",\"includeSynonyms\":false,\"includeDefinitions\":false,\"includeSyllableCount\":true,\"includeEtymology\":false}", + "description": "Getting syllable count and part of speech for the word 'run'." + }, + { + "inputJson": "{\"word\":\"philosophy\",\"includeSynonyms\":false,\"includeDefinitions\":true,\"includeSyllableCount\":true,\"includeEtymology\":true}", + "description": "Analyzing 'philosophy' including etymology and definitions." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "copywriting.analyzeDocument", + "description": "Analyzes a marketing or promotional document by evaluating tone, style, engagement level, clarity, and SEO optimization. Accepts raw document text input and returns a detailed report highlighting strengths, weaknesses, readability scores, tone consistency, and keyword usage suggestions to optimize marketing impact.", + "category": "copywriting", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text content of the marketing or promotional document to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the document for accurate analysis and tone detection (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "seoKeywords", + "type": "array", + "description": "An optional list of target SEO keywords to check for relevancy and usage frequency in the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tonePreferences", + "type": "array", + "description": "Preferred tones to check consistency against (e.g., ['professional','friendly','urgent']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "If true, provide a more granular section-by-section analysis of the document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured report including overall readability score, tone analysis, keyword usage statistics, clarity feedback, and actionable suggestions for improving marketing impact." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to review, critique, or improve marketing and promotional documents by analyzing writing effectiveness, tone suitability, SEO alignment, and engagement potential. It helps refine copy to better capture audience attention and drive conversions.", + "limitations": "This tool cannot rewrite or generate new content. It analyzes existing text only and provides suggestions but does not guarantee marketing success due to factors beyond text quality like targeting or product fit.", + "examples": [ + "Analyze this product launch email for tone consistency and keyword usage.", + "Evaluate the SEO effectiveness of this promotional blog post given the provided target keywords.", + "Provide readability and engagement feedback for this advertisement script with a friendly tone preference." + ] + }, + "tags": [ + "copywriting", + "analysis", + "marketing", + "SEO", + "tone-analysis", + "readability", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Introducing our new eco-friendly water bottle! Made from sustainable materials to keep you hydrated and help the planet.\",\"language\":\"en\",\"seoKeywords\":[\"eco-friendly\",\"sustainable water bottle\"],\"tonePreferences\":[\"friendly\"],\"detailedAnalysis\":true}", + "description": "Analyzing a short promotional product description for tone, SEO keyword presence, and engagement." + }, + { + "inputJson": "{\"documentText\":\"Our revolutionary software solution increases productivity by 50%, reduces costs, and streamlines workflow.\",\"seoKeywords\":[\"productivity software\",\"cost reduction\"],\"tonePreferences\":[\"professional\"],\"detailedAnalysis\":false}", + "description": "Evaluating a professional marketing paragraph for keyword optimization and tone consistency." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "content-creation.uploadDocument", + "description": "Uploads a document file to a specified storage location or content management system. Accepts document content (as base64 or URL), metadata like title and tags, and optional destination folder. Processes file upload and returns confirmation including document ID and access URL.", + "category": "content-creation", + "parameters": [ + { + "name": "documentName", + "type": "string", + "description": "The name of the document to upload, including extension (e.g., example.pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "contentBase64", + "type": "string", + "description": "Base64 encoded content of the document file to upload. Required if contentUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentUrl", + "type": "string", + "description": "URL pointing to the document to upload. Provide either this or contentBase64.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "An object containing optional metadata such as title, description, tags (array of strings).", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationFolder", + "type": "string", + "description": "Optional folder or path where the document should be stored. If omitted, defaults to root or default location.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, overwrite an existing document with the same name in the destination.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object confirming upload status with document ID, stored path, and a public or access URL if available." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload or save digital documents like PDFs, Word files, or images to a document management system or cloud storage. Especially useful when the agent is generating, modifying, or receiving document files and must persist them for later retrieval or sharing.", + "limitations": "This tool does not handle document content analysis, OCR, or format conversion. It only uploads the document as-is to the target destination. Large files may be subject to upload limits imposed by the backend storage.", + "examples": [ + "Upload a user-generated PDF to their project folder with metadata tags.", + "Store a scanned invoice document by URL into the archive system.", + "Overwrite an existing policy document with an updated version specifying the overwrite flag." + ] + }, + "tags": [ + "upload", + "document", + "file-management", + "content-storage", + "cloud", + "cms" + ], + "examples": [ + { + "inputJson": "{\"documentName\":\"project-proposal.pdf\",\"contentBase64\":\"JVBERi0xLjQKJcfs...\",\"metadata\":{\"title\":\"Project Proposal\",\"tags\":[\"proposal\",\"project\",\"Q2\"]},\"destinationFolder\":\"/projects/Q2/\",\"overwriteExisting\":false}", + "description": "Upload a base64 encoded PDF with metadata to a specific project folder without overwriting." + }, + { + "inputJson": "{\"documentName\":\"invoice_2023_05.jpg\",\"contentUrl\":\"https://example.com/invoice_2023_05.jpg\",\"metadata\":{\"title\":\"May Invoice\",\"tags\":[\"invoice\",\"finance\"]},\"destinationFolder\":\"/invoices/2023/05\",\"overwriteExisting\":false}", + "description": "Upload a document from a public URL to a finance invoice folder with descriptive metadata." + }, + { + "inputJson": "{\"documentName\":\"company-policy.docx\",\"contentBase64\":\"UEsDBBQABgAIA...\",\"destinationFolder\":\"/policies/\",\"overwriteExisting\":true}", + "description": "Overwrite an existing company policy document with a new Word document by uploading base64 content." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "documentation-tools.buildAPI", + "description": "Generates comprehensive API documentation from given source code files or structured API definitions. Accepts source code in multiple languages or OpenAPI/Swagger specs, parses endpoints, parameters, and models, then produces formatted markdown or HTML API docs suitable for developer portals.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sourceInput", + "type": "string", + "description": "String input representing source code content or API spec (e.g., OpenAPI JSON/YAML).", + "required": true, + "defaultValue": "" + }, + { + "name": "inputType", + "type": "string", + "description": "Type of the source input: 'openapi', 'swagger', 'typescript', 'python', or 'java'.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for documentation: 'markdown' or 'html'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example request/response snippets in the documentation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme for HTML output, e.g., 'light' or 'dark'. Only applies if outputFormat is 'html'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Title to appear in the generated documentation header.", + "required": false, + "defaultValue": "API Documentation" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated documentation content and meta information. Includes 'content' string with documentation text, 'format' indicating output format, and 'summary' text describing number of endpoints documented." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create or update developer API documentation automatically from source code or API specs, facilitating better API discoverability and developer adoption. It helps transform raw code or specs into readable, structured documentation with examples.", + "limitations": "Cannot generate documentation for undocumented or poorly structured source code. Complex custom code annotations might not be fully parsed. Does not deploy or host documentation, only generates content.", + "examples": [ + "Generate HTML API docs from OpenAPI YAML to embed in developer portal.", + "Build markdown-format API docs from TypeScript REST controllers with example payloads.", + "Create basic docs from Swagger JSON spec including endpoint descriptions and parameters." + ] + }, + "tags": [ + "documentation", + "api", + "generate", + "markdown", + "html", + "openapi", + "swagger" + ], + "examples": [ + { + "inputJson": "{\"sourceInput\":\"openapi: 3.0.0\\ninfo:\\n title: Sample API\\n version: '1.0'\\npaths:\\n /users:\\n get:\\n summary: Returns a list of users\\n responses:\\n '200':\\n description: A JSON array of user names\",\"inputType\":\"openapi\",\"outputFormat\":\"markdown\",\"includeExamples\":true,\"theme\":\"\",\"documentTitle\":\"Sample API Docs\"}", + "description": "Generating markdown API docs from a simple OpenAPI YAML specification including endpoint summary and response." + }, + { + "inputJson": "{\"sourceInput\":\"public class UserController {\\n @GetMapping(\\\"/users\\\")\\n public List<String> getUsers() { return List.of(\\\"Alice\\\", \\\"Bob\\\"); }\\n}\",\"inputType\":\"java\",\"outputFormat\":\"html\",\"includeExamples\":true,\"theme\":\"dark\",\"documentTitle\":\"User API\"}", + "description": "Building HTML API documentation from Java Spring controller source code with example enablement and dark theme." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "data-analytics.composeDocument", + "description": "Composes a structured analytical document by integrating data insights, visualizations, and narrative summaries. It accepts raw data inputs and user-defined focus areas, processes key metrics and trends, generates charts or tables as needed, and outputs a formatted report suitable for presentations or decision-making.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data objects or records to analyze and include in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTitle", + "type": "string", + "description": "The title of the analytical document to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "sectionHeadings", + "type": "array", + "description": "An ordered list of section headings to organize the document content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "highlightMetrics", + "type": "array", + "description": "Specific metrics or KPIs to emphasize in the document narrative and visualizations.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to generate and embed visual charts/tables in the document (true) or plain text only (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the document, e.g., 'pdf', 'docx', or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the narrative text in the document.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Object containing the composed document content, format metadata, and a URL or base64 string for download or display." + }, + "aiAgent": { + "useCase": "Use this tool when a comprehensive, narrative-driven document integrating analytical data, key metrics, and visualizations is needed for reports, presentations, or executive summaries. It is ideal for transforming raw data into a structured, easy-to-consume format that highlights actionable insights.", + "limitations": "This tool does not perform deep statistical analysis or complex model training; it assumes input data is pre-processed and clean. It also does not support interactive dashboards but static document outputs only.", + "examples": [ + "Compose a quarterly sales performance report highlighting sales volume and customer acquisition metrics.", + "Generate a marketing analysis document using the last 12 months of campaign data with charts included.", + "Create an executive summary report in Spanish focusing on website traffic and conversion rate KPIs." + ] + }, + "tags": [ + "data-analytics", + "document-composition", + "report-generation", + "data-insights", + "visualization", + "narrative-summary" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"January\",\"sales\":12000,\"customers\":150},{\"month\":\"February\",\"sales\":15000,\"customers\":180}],\"documentTitle\":\"Q1 Sales Report\",\"sectionHeadings\":[\"Overview\",\"Sales Trends\",\"Customer Growth\"],\"highlightMetrics\":[\"sales\",\"customers\"],\"includeVisualizations\":true,\"outputFormat\":\"pdf\",\"language\":\"en\"}", + "description": "Composes a quarterly sales report highlighting monthly sales and customer growth with visual charts included." + }, + { + "inputJson": "{\"data\":[{\"campaign\":\"Email Blast\",\"clicks\":3000,\"conversions\":150},{\"campaign\":\"Social Ads\",\"clicks\":4500,\"conversions\":200}],\"documentTitle\":\"Marketing Campaign Analysis\",\"sectionHeadings\":[\"Campaign Performance\",\"Conversion Analysis\"],\"highlightMetrics\":[\"clicks\",\"conversions\"],\"includeVisualizations\":true,\"outputFormat\":\"docx\",\"language\":\"en\"}", + "description": "Creates a marketing campaign analysis document with emphasis on clicks and conversions including tables and charts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "data-analytics.formatDocument", + "description": "Formats a structured document containing textual data and analytics results into a visually organized and styled output format such as HTML or Markdown. It accepts input data including sections, text blocks, tables, and charts, applies formatting rules, and returns a fully formatted document string suited for reporting or presentation.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The structured document data to format, including sections, paragraphs, tables, and charts.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the formatted document (e.g., 'html', 'markdown').", + "required": true, + "defaultValue": "html" + }, + { + "name": "styleTemplate", + "type": "string", + "description": "Optional style or template name to apply predefined styling and layout rules.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents based on document sections.", + "required": false, + "defaultValue": "false" + }, + { + "name": "compressOutput", + "type": "boolean", + "description": "Whether to minify or compress the output document string for smaller size.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document as a string and metadata about formatting success." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured data representing a document with text, tables, and charts that needs converting into a polished, styled report format such as HTML or Markdown for presentation, sharing, or exporting. It supports customizable styling and optional table of contents generation to enhance readability and professionalism.", + "limitations": "Cannot convert unstructured raw text into structured documents; does not generate charts or analytics results from raw data, only formats already prepared document content. Styling options are limited to predefined templates.", + "examples": [ + "Format a JSON document object into styled HTML with a table of contents for a presentation report.", + "Convert analytics output structured as a document object into Markdown format for inclusion in a GitHub README.", + "Generate a compressed HTML report document from structured input data applying a corporate style template." + ] + }, + "tags": [ + "formatting", + "document", + "data-analytics", + "reporting", + "presentation", + "HTML", + "Markdown" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"title\":\"Sales Report\",\"sections\":[{\"heading\":\"Q1 Results\",\"content\":[{\"type\":\"paragraph\",\"text\":\"Sales increased by 15% compared to last year.\"},{\"type\":\"table\",\"headers\":[\"Product\",\"Sales\"],\"rows\":[[\"Product A\",\"1000\"],[\"Product B\",\"1500\"]]}]}]},\"outputFormat\":\"html\",\"includeTableOfContents\":true}", + "description": "Format a sales report document with sections and a table into HTML including a table of contents." + }, + { + "inputJson": "{\"inputData\":{\"title\":\"Analysis Summary\",\"sections\":[{\"heading\":\"Findings\",\"content\":[{\"type\":\"paragraph\",\"text\":\"Data shows a positive trend in engagement.\"}]}]},\"outputFormat\":\"markdown\",\"styleTemplate\":\"simple\"}", + "description": "Convert an analysis summary document into simple styled Markdown format for sharing." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "data-analytics.createWord", + "description": "Generates a single meaningful word based on specified criteria such as desired word length, part of speech, and thematic category. Accepts parameters defining these constraints and returns a word matching the criteria, useful for naming, brainstorming, or content generation tasks.", + "category": "data-analytics", + "parameters": [ + { + "name": "minLength", + "type": "number", + "description": "Minimum number of characters the generated word should have.", + "required": false, + "defaultValue": "3" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of characters the generated word should have.", + "required": false, + "defaultValue": "10" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "Desired part of speech for the generated word (e.g., noun, adjective, verb).", + "required": false, + "defaultValue": "" + }, + { + "name": "theme", + "type": "string", + "description": "The thematic category or subject area to influence word selection (e.g., technology, nature).", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code to generate the word in (e.g., en for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word string and its metadata such as length, part of speech, and theme." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a single word constrained by length, part of speech, or theme for applications like naming, creative writing prompts, or metadata tagging. It helps produce contextually relevant words quickly when specific word characteristics are required.", + "limitations": "This tool generates single words and does not create phrases or sentences. It may not provide uncommon or highly specialized vocabulary outside general thematic categories.", + "examples": [ + "Generate a technology-related noun with 5 to 8 letters.", + "Create a short adjective (3-5 letters) with a nature theme.", + "Generate a verb in English with maximum length of 7 characters." + ] + }, + "tags": [ + "generate", + "word", + "text", + "creative", + "naming", + "partOfSpeech", + "theme" + ], + "examples": [ + { + "inputJson": "{\"minLength\":5,\"maxLength\":8,\"partOfSpeech\":\"noun\",\"theme\":\"technology\",\"language\":\"en\"}", + "description": "Generate a technology-related noun with length between 5 and 8 letters." + }, + { + "inputJson": "{\"minLength\":3,\"maxLength\":5,\"partOfSpeech\":\"adjective\",\"theme\":\"nature\",\"language\":\"en\"}", + "description": "Create a short adjective related to nature between 3 and 5 letters long." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "data-validation.createCustomer", + "description": "Validates and creates a new customer record using provided customer details such as name, email, phone, and address. It checks for completeness, format correctness (e.g., valid email), and business rules compliance, then returns a success status with a customer ID or detailed error messages for correction.", + "category": "data-validation", + "parameters": [ + { + "name": "customerName", + "type": "string", + "description": "Full name of the customer. Required for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Customer's email address. Must be a valid email format.", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Contact phone number for the customer. Optional but if provided must follow standard phone formatting.", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Physical address of the customer with fields: street, city, state, zipCode, and country.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional information related to the customer such as preferred contact method or customer category.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object indicating success or failure. Includes a unique customerId when successful or detailed validation errors otherwise." + }, + "aiAgent": { + "useCase": "Use this tool when needing to verify and create valid customer records in a system, ensuring data completeness and adherence to standard formats before insertion into databases or CRMs. It helps prevent corrupt or incomplete customer data creation.", + "limitations": "Does not perform duplicate detection beyond basic email format checks. Does not connect to external contact validation services. Business rule validations should be predefined in the system using this tool.", + "examples": [ + "Create a new customer with full address and contact details to add to CRM.", + "Validate customer info from a web form prior to database insertion.", + "Check and create a customer record ensuring mandatory fields and correct email format." + ] + }, + "tags": [ + "validation", + "customer", + "data-quality", + "create", + "business", + "contact-management" + ], + "examples": [ + { + "inputJson": "{\"customerName\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"+15555550123\",\"address\":{\"street\":\"123 Maple Ave\",\"city\":\"Anytown\",\"state\":\"CA\",\"zipCode\":\"90210\",\"country\":\"USA\"},\"metadata\":{\"preferredContactMethod\":\"email\"}}", + "description": "Create a validated customer record with full contact and address info." + }, + { + "inputJson": "{\"customerName\":\"\",\"email\":\"invalid-email\",\"address\":{\"street\":\"\",\"city\":\"\",\"state\":\"\",\"zipCode\":\"\",\"country\":\"\"}}", + "description": "Fails validation due to missing name, invalid email, and empty address fields." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "etl-processes.generateDataset", + "description": "Generates a synthetic dataset based on specified schema definitions, data distributions, and record counts. Accepts a data schema and generation options, and produces a structured dataset in formats like JSON or CSV for use in testing, simulations, or development.", + "category": "etl-processes", + "parameters": [ + { + "name": "schema", + "type": "object", + "description": "Defines the dataset's structure including field names, data types, and constraints (e.g., min/max, categories). Required to guide data generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "recordCount", + "type": "number", + "description": "Number of data records to generate. Must be a positive integer.", + "required": true, + "defaultValue": "1000" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated dataset output. Supported values include 'json' and 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "randomSeed", + "type": "number", + "description": "Optional seed for random number generation to produce reproducible datasets.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "If true and output format is CSV, includes header row with field names.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dataset as a string in requested format and metadata including schema and record count." + }, + "aiAgent": { + "useCase": "Use this tool when synthetic datasets are needed for testing, development, or data processing simulations where real data is unavailable or unsuitable. It allows generation of customizable datasets matching user-defined schemas and distributions to validate data pipelines or analytics.", + "limitations": "Cannot generate datasets with complex relational integrity between multiple tables; limited to single flat datasets. Does not synthesize truly complex natural language or image data beyond simple text or numeric values.", + "examples": [ + "Generate a dataset with 500 records including fields for name (string), age (integer), and signup date (date) in CSV format.", + "Create a JSON dataset of 1000 sensor readings with timestamp and temperature fields using a fixed random seed.", + "Produce a test dataset for a customer database schema using category distributions for gender and state fields." + ] + }, + "tags": [ + "data-generation", + "synthetic-data", + "dataset", + "testing", + "etl", + "simulation" + ], + "examples": [ + { + "inputJson": "{\"schema\":{\"fields\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"age\",\"type\":\"number\",\"min\":18,\"max\":80},{\"name\":\"signupDate\",\"type\":\"string\",\"format\":\"date\"}]},\"recordCount\":3,\"outputFormat\":\"json\",\"randomSeed\":42,\"includeHeaders\":true}", + "description": "Generate 3 records of user data with fields for name, age, and signup date in JSON format." + }, + { + "inputJson": "{\"schema\":{\"fields\":[{\"name\":\"sensorId\",\"type\":\"string\"},{\"name\":\"temperature\",\"type\":\"number\",\"min\":-20,\"max\":50}]},\"recordCount\":5,\"outputFormat\":\"csv\",\"includeHeaders\":true}", + "description": "Generate 5 records of sensor temperature data in CSV format with header included." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "database-management.composeReport", + "description": "Generates a comprehensive database report by querying specified tables with filters and aggregations. Accepts database connection info, tables, fields, filters, and output format. Produces a structured report summarizing data insights, including statistics and formatted export (JSON, CSV, PDF).", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string to establish access (e.g., JDBC or URI)", + "required": true, + "defaultValue": "" + }, + { + "name": "tables", + "type": "array", + "description": "List of table names to include in the report", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "List of fields/columns to select from each table", + "required": false, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Filter conditions as key-value pairs to apply (e.g., {status: 'active'})", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregations", + "type": "object", + "description": "Aggregation functions to apply (e.g., count, sum) mapped to fields", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "array", + "description": "List of fields to group the aggregation by", + "required": false, + "defaultValue": "" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of records to retrieve", + "required": false, + "defaultValue": "100" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the report output (e.g., 'JSON', 'CSV', 'PDF')", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "Report object containing queried data, aggregations, and metadata formatted as requested" + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate detailed reports from one or more database tables by applying filters, selecting specific fields, performing aggregations, and outputting in common formats. Enables summarization of data insights for decision-making, audits, or data analysis tasks.", + "limitations": "Cannot execute complex multi-join queries beyond basic table selection and groupings. Performance depends on the datasource and connection stability. Does not provide real-time streaming reports.", + "examples": [ + "Create a sales summary report summarizing total sales per region filtered by date range.", + "Generate a user activity report including counts of logins by user roles.", + "Produce a CSV export of recent orders with customer details filtered to active customers only." + ] + }, + "tags": [ + "database", + "reporting", + "aggregation", + "query", + "data-analysis", + "export" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"postgresql://user:pass@host:5432/dbname\",\"tables\":[\"orders\"],\"fields\":[\"order_id\",\"customer_id\",\"order_total\"],\"filters\":{\"order_status\":\"completed\"},\"aggregations\":{\"sum_order_total\":\"order_total\"},\"groupBy\":[\"customer_id\"],\"limit\":50,\"outputFormat\":\"JSON\"}", + "description": "Generate JSON report of total completed order amounts grouped by customer from orders table." + }, + { + "inputJson": "{\"connectionString\":\"mysql://user:pass@host:3306/salesdb\",\"tables\":[\"sales\"],\"fields\":[\"region\",\"sales_amount\"],\"aggregations\":{\"count_sales\":\"sales_amount\"},\"groupBy\":[\"region\"],\"outputFormat\":\"CSV\"}", + "description": "Create a CSV report counting sales entries grouped by region." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "devops.analyzeDataset", + "description": "This tool accepts dataset files (CSV or JSON) related to deployment logs, build times, or infrastructure metrics, analyzes them using statistical methods and anomaly detection to uncover patterns, trends, or performance issues, and outputs a structured report summarizing key insights, anomalies, and recommendations for DevOps optimization.", + "category": "devops", + "parameters": [ + { + "name": "datasetFilePath", + "type": "string", + "description": "File path or URL to the dataset file (CSV or JSON) for analysis", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type of the dataset file: 'csv' or 'json'", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform: 'performanceTrend', 'anomalyDetection', or 'summaryStats'", + "required": false, + "defaultValue": "summaryStats" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with keys 'startDate' and 'endDate' in ISO format to analyze data within a timeframe", + "required": false, + "defaultValue": "" + }, + { + "name": "sensitivityLevel", + "type": "number", + "description": "Anomaly detection sensitivity level (1-10), where 10 is most sensitive", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to include visualization URLs or image references in the output report", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured analysis report containing summary statistics, identified anomalies, trend insights, and optionally visualization references relevant to DevOps dataset analysis" + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze operational datasets from deployment pipelines, infrastructure monitoring, or build logs to derive actionable insights, detect unexpected behaviors, or understand performance trends for continuous improvement in DevOps workflows.", + "limitations": "This tool cannot modify datasets or fix issues. It focuses on analysis and does not process unstructured text logs or non-tabular data formats.", + "examples": [ + "Analyze a JSON dataset of deployment times to detect any delay anomalies", + "Provide summary statistics for a CSV log of infrastructure metrics over the last month", + "Generate a performance trend report from build logs filtered by date" + ] + }, + "tags": [ + "devops", + "dataset", + "analysis", + "performance", + "anomaly detection", + "infrastructure", + "automation" + ], + "examples": [ + { + "inputJson": "{\"datasetFilePath\":\"/data/build_logs.csv\",\"fileType\":\"csv\",\"analysisType\":\"performanceTrend\",\"dateRange\":{\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\"},\"sensitivityLevel\":7,\"includeVisualizations\":true}", + "description": "Analyze build logs CSV file from March 2024 to find performance trends with moderate anomaly sensitivity and include visualizations." + }, + { + "inputJson": "{\"datasetFilePath\":\"https://example.com/deployment_metrics.json\",\"fileType\":\"json\",\"analysisType\":\"anomalyDetection\",\"includeVisualizations\":false}", + "description": "Perform anomaly detection on deployment metrics dataset provided as JSON from a URL without visualizations." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "devops.downloadFile", + "description": "Downloads a file from a specified URL or remote server to a local destination path. Accepts input parameters such as the file URL, local destination path, optional HTTP headers for authentication, and a timeout duration. It performs an HTTP(S) GET request (or SFTP as specified) and writes the file content locally, returning the success status and file size if downloaded successfully.", + "category": "devops", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL or remote path of the file to download. Supports HTTP, HTTPS, or SFTP URLs.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local filesystem path where the downloaded file will be saved, including filename.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpHeaders", + "type": "object", + "description": "Optional HTTP headers (e.g., Authorization) sent with the download request. Ignored for SFTP.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download to complete before aborting. Defaults to 60 seconds.", + "required": false, + "defaultValue": "60" + }, + { + "name": "useSftp", + "type": "boolean", + "description": "If true, uses SFTP protocol for downloading instead of HTTP(S). If true, sourceUrl must be a valid SFTP URL.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object indicating whether the download was successful, the local file path, and size in bytes if successful, or an error message." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically retrieve files from remote HTTP(S) or SFTP sources during build, deployment, or infrastructure automation tasks. It helps download configuration files, artifacts, or scripts reliably to specified local paths with optional authentication.", + "limitations": "Cannot perform partial downloads or resume interrupted transfers. Limited to HTTP(S) GET method or basic SFTP downloads. Does not verify file integrity or handle complex authentication beyond HTTP headers or SFTP URL credentials.", + "examples": [ + "Download a public file from a HTTP URL to a local path.", + "Download a protected file from HTTPS with Authorization header.", + "Download a file from a SFTP server using SFTP URL format." + ] + }, + "tags": [ + "download", + "file", + "http", + "sftp", + "devops", + "automation", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/releases/latest.zip\",\"destinationPath\":\"/tmp/latest.zip\"}", + "description": "Download the latest release archive from a public HTTPS URL to a temporary directory." + }, + { + "inputJson": "{\"sourceUrl\":\"https://private.example.com/config.yaml\",\"destinationPath\":\"/etc/config.yaml\",\"httpHeaders\":{\"Authorization\":\"Bearer abc123\"}}", + "description": "Download a protected configuration file over HTTPS with an authorization bearer token." + }, + { + "inputJson": "{\"sourceUrl\":\"sftp://user:password@example-sftp.com/home/user/script.sh\",\"destinationPath\":\"/usr/local/bin/script.sh\",\"useSftp\":true}", + "description": "Download a script file from an SFTP server using embedded credentials in the SFTP URL." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "devops.uploadDocument", + "description": "Uploads a document file to a specified remote server or cloud storage as part of deployment or configuration management workflows. Accepts document files in common formats (e.g., PDF, DOCX, TXT), authenticates with the destination using provided credentials, optionally sets access permissions, and returns a confirmation including the storage URL and upload status.", + "category": "devops", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local filesystem path to the document to upload (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "URL or endpoint of the remote server or cloud storage to upload the document to (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key used to authorize the upload request (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "accessPermissions", + "type": "string", + "description": "Optional access level or permission setting for the uploaded document, e.g., 'private', 'public', or specific roles (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs containing metadata to associate with the document (optional).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status ('success' or 'failure'), a message with details, and the URL to access the uploaded document if successful." + }, + "aiAgent": { + "useCase": "This tool should be used when there is a need to programmatically upload documents as part of automated deployment pipelines, configuration documentation, or infrastructure setup processes. It is suitable for scenarios where documents must be versioned, stored remotely, or shared securely within devops environments.", + "limitations": "This tool cannot modify the document contents prior to upload. It does not handle document conversion or complex permission management beyond basic access permission strings.", + "examples": [ + "Upload the latest architecture design PDF to the secure cloud storage endpoint with read-only access.", + "Upload a configuration changelog TXT file to the internal documentation server using the provided API key.", + "Store a project specification DOCX file to a remote endpoint with custom metadata for version and author." + ] + }, + "tags": [ + "devops", + "upload", + "document", + "deployment", + "automation", + "cloud-storage", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/home/user/docs/design.pdf\",\"destinationUrl\":\"https://storage.example.com/uploads\",\"authToken\":\"abcd1234token\",\"accessPermissions\":\"private\",\"metadata\":{\"version\":\"1.2\",\"author\":\"devops-team\"}}", + "description": "Upload a PDF design document to private cloud storage with metadata." + }, + { + "inputJson": "{\"filePath\":\"./changelog.txt\",\"destinationUrl\":\"https://docs.internal.company/api/upload\",\"authToken\":\"token123\",\"accessPermissions\":\"public\"}", + "description": "Upload a changelog text file to internal documentation server with public access." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "devops.formatCode", + "description": "This tool accepts source code in various programming languages and formats it according to specified style guidelines or configurations. It processes the raw code input to produce a consistently styled, clean, and readable code snippet, optionally supporting specific language and style presets.", + "category": "devops", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The source code text that needs to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the source code (e.g., 'javascript', 'python', 'java').", + "required": false, + "defaultValue": "" + }, + { + "name": "styleConfig", + "type": "object", + "description": "An optional object defining style rules or configuration (like indent size, max line length).", + "required": false, + "defaultValue": "" + }, + { + "name": "useDefaultConfig", + "type": "boolean", + "description": "If true, uses default formatting settings when styleConfig is not provided.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string, and optionally any errors or warnings produced during formatting." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize source code format for better readability, maintainability, or to comply with team or industry style standards. It is useful for code review preparation, automated formatting in CI/CD pipelines, and improving code quality before deployment.", + "limitations": "This tool only formats code stylistically; it does not perform syntax checking beyond what is necessary for formatting. It may not fully support all language-specific nuances or extremely rare coding styles. Semantic errors or logical bugs are not detected or fixed.", + "examples": [ + "Format unformatted JavaScript code for consistent indentation and style.", + "Apply project-specific style rules to Python source code before committing.", + "Auto-format Java code using default settings for clean source presentation." + ] + }, + "tags": [ + "formatting", + "code", + "devops", + "style", + "automation", + "continuous-integration" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function foo(){console.log( 'hello' );}\",\"language\":\"javascript\",\"styleConfig\":{\"indentSize\":2}}", + "description": "Format compact JavaScript code with 2-space indentation." + }, + { + "inputJson": "{\"code\":\"def foo():\\n print( 'hello' )\\n\",\"language\":\"python\",\"useDefaultConfig\":true}", + "description": "Format Python code using default style guidelines." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "devops.generateText", + "description": "Generates customizable text content based on specified templates and variables, designed to create automated messages, deployment notes, or configuration descriptions for DevOps workflows. Accepts template strings with placeholders and variable mappings, producing fully rendered text outputs.", + "category": "devops", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "The template string containing placeholders for variables to be replaced in the output text.", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "A key-value map of variable names and their values to substitute into the template placeholders.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code for the generated text, enabling localization support (e.g., 'en', 'fr').", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of the generated text output to truncate if necessary.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text string after template rendering and variable substitution, plus metadata such as length." + }, + "aiAgent": { + "useCase": "Use this tool when you need automated generation of descriptive or templated text in DevOps pipelines or documentation, such as release notes, deployment summaries, or alert messages that require dynamic insertion of environment variables or parameters.", + "limitations": "This tool cannot generate natural language text beyond templated substitutions; it does not perform AI-based content creation or contextual text understanding.", + "examples": [ + "Generate deployment notification with environment and version variables.", + "Create standardized error message text for alerts using given variables.", + "Produce changelog entries by substituting release info into a changelog template." + ] + }, + "tags": [ + "devops", + "text generation", + "templating", + "automation", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"template\":\"Deployment completed in environment: {{environment}} with version: {{version}}.\",\"variables\":{\"environment\":\"production\",\"version\":\"1.4.2\"},\"language\":\"en\"}", + "description": "Generate a deployment completion message for production with version." + }, + { + "inputJson": "{\"template\":\"Alert: Service {{serviceName}} is down on host {{host}}.\",\"variables\":{\"serviceName\":\"api-server\",\"host\":\"host123\"}}", + "description": "Generate alert message when a specified service is detected down." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "devops.createAccount", + "description": "Creates a new user account in the DevOps system by accepting essential details such as username, email, role, and optional metadata. It validates inputs, assigns permissions based on the role, and returns confirmation with account ID and status.", + "category": "devops", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "Unique username identifier for the account to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address associated with the user account.", + "required": true, + "defaultValue": "" + }, + { + "name": "role", + "type": "string", + "description": "Role assigned to the account which defines permissions (e.g., admin, developer, viewer).", + "required": true, + "defaultValue": "" + }, + { + "name": "fullName", + "type": "string", + "description": "Optional full name of the user.", + "required": false, + "defaultValue": "" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag indicating if the account should be enabled immediately after creation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional free-form key-value pairs for additional account information such as department or location.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the new account's unique ID, creation status, and a message indicating success or the details of any failure." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create user accounts within a DevOps infrastructure or CI/CD environment, ensuring proper role-based access and metadata assignment with automated account provisioning.", + "limitations": "This tool does not handle password setting, password policies, or multi-factor authentication configuration. It also does not perform email verification or notification dispatch.", + "examples": [ + "Create a developer account with email and metadata", + "Create and enable an admin account immediately", + "Create a user account without enabling it initially" + ] + }, + "tags": [ + "devops", + "account management", + "user provisioning", + "automation", + "access control", + "role management" + ], + "examples": [ + { + "inputJson": "{\"username\":\"jdoe\",\"email\":\"jdoe@example.com\",\"role\":\"developer\",\"fullName\":\"John Doe\",\"enabled\":true,\"metadata\":{\"department\":\"engineering\",\"location\":\"NYC\"}}", + "description": "Creating an enabled developer account for John Doe with department and location metadata." + }, + { + "inputJson": "{\"username\":\"asmith\",\"email\":\"asmith@example.com\",\"role\":\"admin\",\"enabled\":true}", + "description": "Creating and enabling a new admin account without additional metadata." + }, + { + "inputJson": "{\"username\":\"mjones\",\"email\":\"mjones@example.com\",\"role\":\"viewer\",\"enabled\":false}", + "description": "Creating a viewer account that is disabled initially for later activation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "devops.createImage", + "description": "Creates a container image based on user-provided Dockerfile content or configuration. Accepts raw Dockerfile text or a build context path, processes the build instructions, and outputs an image identifier with build logs and status information for use in deployment pipelines.", + "category": "devops", + "parameters": [ + { + "name": "dockerfileContent", + "type": "string", + "description": "The raw text content of the Dockerfile to build the container image from.", + "required": false, + "defaultValue": "" + }, + { + "name": "buildContextPath", + "type": "string", + "description": "The filesystem path or URL to the build context directory containing the Dockerfile and related files.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageName", + "type": "string", + "description": "The desired name (including tag) for the resulting container image, e.g., 'myapp:latest'.", + "required": true, + "defaultValue": "" + }, + { + "name": "noCache", + "type": "boolean", + "description": "Whether to build the image without using cache to ensure a fresh build.", + "required": false, + "defaultValue": "false" + }, + { + "name": "pullBaseImage", + "type": "boolean", + "description": "Whether to always attempt to pull the latest base image before building.", + "required": false, + "defaultValue": "true" + }, + { + "name": "buildArgs", + "type": "object", + "description": "Key-value pairs of build-time variables to pass to the Docker build process.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum number of seconds to allow the build process before aborting.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the final image identifier (name and digest), build logs, and success status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate building container images from given Dockerfile content or build contexts to integrate with CI/CD workflows or container deployment processes. It is suited for scenarios where infrastructure automation requires programmatic image creation and feedback on build status.", + "limitations": "This tool cannot build images without sufficient build context or Dockerfile instructions. It does not push images to remote registries; pushing must be handled separately. It also assumes Docker-compatible build environments are available.", + "examples": [ + "Build an image named 'webapp:latest' from provided Dockerfile content with no-cache.", + "Create an image 'dbservice:v1.0' using a local build context directory and passing build arguments for environment variables.", + "Build an image 'analytics:dev' with a 10-minute timeout and always pull the latest base image." + ] + }, + "tags": [ + "devops", + "container", + "build", + "docker", + "CI/CD", + "automation", + "image" + ], + "examples": [ + { + "inputJson": "{\"dockerfileContent\":\"FROM node:16-alpine\\nWORKDIR /app\\nCOPY package.json .\\nRUN npm install\\nCOPY . .\\nCMD [\\\"node\\\", \\\"index.js\\\"]\",\"imageName\":\"nodeapp:1.0\",\"noCache\":true}", + "description": "Build a Node.js application image from inline Dockerfile content using no cache." + }, + { + "inputJson": "{\"buildContextPath\":\"./microservice\",\"imageName\":\"microservice:stable\",\"pullBaseImage\":true,\"buildArgs\":{\"API_URL\":\"https://api.example.com\"}}", + "description": "Build image from a local directory with build arguments and always pull base image." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "devops.createCommit", + "description": "Creates a new commit in a git repository by adding specified changes, author information, and commit message. It accepts the repository path, files to update or add, the commit message, and author details, performs the commit operation, and returns the commit hash and status.", + "category": "devops", + "parameters": [ + { + "name": "repositoryPath", + "type": "string", + "description": "File system path to the local git repository where the commit will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "files", + "type": "object", + "description": "A dictionary/object with file paths as keys and their new content as values to be staged for commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "The message describing the changes included in the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the commit author that will appear in git history.", + "required": false, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email of the commit author that will appear in git history.", + "required": false, + "defaultValue": "" + }, + { + "name": "branch", + "type": "string", + "description": "The git branch where the commit should be created; defaults to the current branch if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the commitHash (SHA string) and status ('success' or error message) indicating the result of the commit operation." + }, + "aiAgent": { + "useCase": "Use this tool when an automated system or AI agent needs to programmatically create a git commit in a local repository, for example during CI/CD pipeline automation, code generation tasks, or automated patching of a codebase. It is helpful when changes must be recorded with proper commit metadata.", + "limitations": "This tool does not handle pushing commits to remote repositories or resolving merge conflicts. It assumes the repository is valid and accessible locally, and user has write permission.", + "examples": [ + "Create a commit adding two new files with appropriate author info and message.", + "Amend a local git repository with a single file update and a descriptive commit message.", + "Commit changes on a specified branch rather than the default current branch." + ] + }, + "tags": [ + "devops", + "git", + "commit", + "automation", + "versionControl", + "ci/cd" + ], + "examples": [ + { + "inputJson": "{\"repositoryPath\":\"/home/user/myrepo\",\"files\":{\"src/app.js\":\"console.log(\\\"Hello World\\\");\"},\"commitMessage\":\"Add hello world logging\",\"authorName\":\"Alice\",\"authorEmail\":\"alice@example.com\"}", + "description": "Create a commit adding one file with a simple message and author info." + }, + { + "inputJson": "{\"repositoryPath\":\"/repo/project\",\"files\":{\"README.md\":\"# Project Updated\"},\"commitMessage\":\"Update README\",\"branch\":\"develop\"}", + "description": "Create a commit updating the README on a specific branch without author info." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "devops.createAPI", + "description": "Creates a RESTful API service scaffold based on specified configuration. Accepts API endpoint definitions, HTTP methods, data models, and authentication schemes as input. Generates boilerplate code in the chosen programming language with routing, validation, and basic security setup. Outputs the complete API project structure ready for deployment or further development.", + "category": "devops", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "Name identifier for the API service (e.g., \"UserManagementAPI\").", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language/framework to generate the API in (e.g., \"NodeJS\", \"Python-Flask\").", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "Array of endpoint definitions including path, HTTP method, expected parameters, and response schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Authentication scheme configuration such as type (e.g., \"JWT\", \"OAuth2\") and options.", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseIntegration", + "type": "object", + "description": "Database connection and model mapping details (optional). Includes DB type, credentials, and schema mapping.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeValidation", + "type": "boolean", + "description": "Flag to include input validation middleware for endpoints.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated project output: \"zip\" archive or \"folder\" structure representation.", + "required": false, + "defaultValue": "zip" + } + ], + "returns": { + "type": "object", + "description": "Generated API project structure including source files, configuration, and documentation in specified output format." + }, + "aiAgent": { + "useCase": "Use this tool when an automated generation of a baseline API service is needed from high-level specifications. It helps in jumpstarting backend development with consistent structure, routing, validation, and security boilerplate, saving manual coding effort.", + "limitations": "Cannot fully implement business logic customization or complex multi-service architectures. Generated code is a scaffold requiring developer refinement. Database integration setup is basic and may need extensions for complex schemas.", + "examples": [ + "Create a NodeJS REST API named 'InventoryAPI' with CRUD endpoints for products, JWT authentication, and MongoDB integration.", + "Generate a Python Flask API scaffold with public GET endpoints and no authentication.", + "Produce a ZIP archive of a simple API service with input validation enabled for REST endpoints managing user data." + ] + }, + "tags": [ + "devops", + "api", + "automation", + "code-generation", + "rest", + "backend", + "scaffolding" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"InventoryAPI\",\"language\":\"NodeJS\",\"endpoints\":[{\"path\":\"/products\",\"method\":\"GET\",\"parameters\":[],\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"}}}}},{\"path\":\"/products\",\"method\":\"POST\",\"parameters\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"price\",\"type\":\"number\"}],\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"}}}}],\"authentication\":{\"type\":\"JWT\",\"secretKey\":\"supersecret\"},\"databaseIntegration\":{\"type\":\"MongoDB\",\"connectionString\":\"mongodb://localhost:27017/inventory\"},\"includeValidation\":true,\"outputFormat\":\"zip\"}", + "description": "Generate a NodeJS API called 'InventoryAPI' with GET and POST /products endpoints, JWT auth, MongoDB integration, and input validation, outputting a ZIP archive." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "devops.createContract", + "description": "Creates a standardized contract document for DevOps projects based on input parameters such as parties involved, scope, deliverables, timelines, payment terms, and compliance requirements. Processes inputs to generate a formatted contract text or PDF output ready for review and signature.", + "category": "devops", + "parameters": [ + { + "name": "partyA", + "type": "string", + "description": "Name of the first party in the contract (e.g., client or service provider).", + "required": true, + "defaultValue": "" + }, + { + "name": "partyB", + "type": "string", + "description": "Name of the second party in the contract (e.g., client or service provider).", + "required": true, + "defaultValue": "" + }, + { + "name": "projectScope", + "type": "string", + "description": "Detailed description of the project scope covered by the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliverables", + "type": "array", + "description": "List of key deliverables expected from the agreement.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Project start date (ISO 8601 format, e.g., 2024-07-01).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Project end date or contract expiration date (ISO 8601 format).", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Description of payment terms, milestones, and conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "confidentiality", + "type": "boolean", + "description": "Whether to include a confidentiality clause in the contract.", + "required": false, + "defaultValue": "true" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction governing the contract (e.g., state or country).", + "required": false, + "defaultValue": "United States" + }, + { + "name": "format", + "type": "string", + "description": "Output document format, either 'text' or 'pdf'.", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract document content as a string and metadata such as format and contract summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to draft a legally structured contract for DevOps-related services or projects, ensuring all key elements like parties, scope, deliverables, timelines, and payment terms are included consistently. It helps automate contract creation for infrastructure, deployment, or service agreements, reducing manual work and errors.", + "limitations": "This tool does not provide legal advice, cannot customize clauses beyond predefined templates, and should not replace review by a qualified legal professional.", + "examples": [ + "Create a contract between a cloud service provider and client specifying project milestones and confidentiality.", + "Generate a PDF contract for a DevOps consultancy engagement including payment milestones.", + "Draft a simple text contract covering deployment services with specified start and end dates." + ] + }, + "tags": [ + "devops", + "contract", + "automation", + "document-generation", + "legal", + "service-agreement", + "infrastructure", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"partyA\":\"Acme Cloud Services\",\"partyB\":\"Tech Innovations LLC\",\"projectScope\":\"Setup and maintain CI/CD pipelines for microservices deployment.\",\"deliverables\":[\"CI/CD pipeline setup\",\"Documentation\",\"Quarterly maintenance reports\"],\"startDate\":\"2024-07-01\",\"endDate\":\"2025-06-30\",\"paymentTerms\":\"$10,000 upfront, $2,500 monthly\",\"confidentiality\":true,\"jurisdiction\":\"California, USA\",\"format\":\"pdf\"}", + "description": "Generate a PDF contract for cloud services with specified scope, deliverables, payment, and confidentiality." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "frontend-development.generateParagraph", + "description": "Generates a realistic, contextually appropriate HTML paragraph element based on input text content and formatting preferences. Accepts raw text or markdown, processes optional styling and formatting instructions, and outputs a semantic paragraph string suitable for immediate use in front-end development.", + "category": "frontend-development", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The main textual content to be included within the paragraph element.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Content format of the input text; supports 'plain' for raw text or 'markdown' for markdown syntax to be converted to HTML inside the paragraph.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "classNames", + "type": "array", + "description": "Array of CSS class names to apply to the paragraph element for styling purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "id", + "type": "string", + "description": "Optional id attribute for the paragraph element to uniquely identify it in the DOM.", + "required": false, + "defaultValue": "" + }, + { + "name": "inlineStyles", + "type": "object", + "description": "Object representing CSS property-value pairs to be applied as inline styles on the paragraph element.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "Flag indicating whether HTML special characters in the textContent should be escaped to prevent HTML injection (applicable when format is 'plain').", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "A valid HTML paragraph string with applied content, classes, ids, and inline styles ready for insertion into frontend UI code." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create HTML paragraph blocks dynamically based on varied text input and styling needs in web front-end development tasks. It helps convert raw or simple markdown text into safe, styled paragraph elements for seamless UI integration.", + "limitations": "Does not support nested complex HTML structures beyond paragraph level or advanced markdown beyond simple inline formatting. It is not a full HTML or markdown editor, and does not validate CSS styles, which must be valid CSS strings.", + "examples": [ + "Create a styled paragraph with markdown content describing a product feature.", + "Generate a simple paragraph with plain text and a unique id attribute.", + "Produce a paragraph with multiple CSS classes and inline styles from raw text input." + ] + }, + "tags": [ + "frontend", + "html", + "paragraph", + "text", + "ui-generation", + "markup", + "styling" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"This is a **bold** statement.\",\"format\":\"markdown\",\"classNames\":[\"highlight\",\"intro\"],\"id\":\"p1\",\"inlineStyles\":{\"color\":\"blue\",\"fontWeight\":\"700\"},\"escapeHtml\":true}", + "description": "Generate an HTML paragraph from markdown bold text, with two CSS classes, an id, and inline styles for color and font weight." + }, + { + "inputJson": "{\"textContent\":\"Welcome to the site!\",\"format\":\"plain\",\"classNames\":[],\"id\":\"welcome\",\"inlineStyles\":{},\"escapeHtml\":true}", + "description": "Create a simple paragraph with plain text, an id, no classes or styles." + }, + { + "inputJson": "{\"textContent\":\"Special characters <, > and & should be escaped.\",\"format\":\"plain\",\"classNames\":[\"notice\"],\"id\":\"\",\"inlineStyles\":{\"backgroundColor\":\"yellow\"},\"escapeHtml\":true}", + "description": "Generate a paragraph from plain text containing HTML special characters correctly escaped, with a CSS class and yellow background." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "frontend-development.generateSentence", + "description": "Generates a natural language sentence based on specified content type and complexity suitable for frontend UI messages or content placeholders. Accepts parameters defining tone, length, and contextual keywords, then produces a coherent, grammatically correct sentence string for user interface display or testing.", + "category": "frontend-development", + "parameters": [ + { + "name": "tone", + "type": "string", + "description": "The tone or style of the generated sentence such as formal, casual, friendly, or professional.", + "required": false, + "defaultValue": "\"neutral\"" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the sentence in words; adjusts verbosity accordingly.", + "required": false, + "defaultValue": "15" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords or key phrases to include or emphasize in the generated sentence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'es') to generate the sentence in.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "contextType", + "type": "string", + "description": "Context or category for the sentence such as 'notification', 'error message', 'instruction', or 'placeholder'.", + "required": false, + "defaultValue": "\"general\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence string and metadata including length and tone." + }, + "aiAgent": { + "useCase": "Use this tool when a UI or frontend development workflow requires dynamically generated sample or real text suited to specific contexts like notifications, instructions, or placeholders to enhance UX or for testing interface layouts and content adaptation.", + "limitations": "The tool does not provide multi-sentence paragraphs or long-form content. It cannot guarantee domain-specific jargon or exact company terminology without provided keywords or context.", + "examples": [ + "Generate a friendly notification sentence using keywords ['update', 'profile']", + "Create a formal error message about login failure", + "Produce a short placeholder text for a search bar in Spanish" + ] + }, + "tags": [ + "frontend", + "content-generation", + "natural-language", + "ui-text", + "sentence-generation", + "placeholder-text" + ], + "examples": [ + { + "inputJson": "{\"tone\":\"friendly\",\"length\":12,\"keywords\":[\"update\",\"profile\"],\"contextType\":\"notification\"}", + "description": "Generate a friendly, about 12 words notification containing keywords 'update' and 'profile'." + }, + { + "inputJson": "{\"tone\":\"formal\",\"length\":15,\"keywords\":[\"login\",\"failed\"],\"contextType\":\"error message\"}", + "description": "Generate a formal error message stating a login failed." + }, + { + "inputJson": "{\"tone\":\"neutral\",\"length\":6,\"keywords\":[],\"language\":\"es\",\"contextType\":\"placeholder\"}", + "description": "Generate a short neutral placeholder text in Spanish." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "backend-development.analyzeKPI", + "description": "This tool accepts key performance indicator (KPI) data as input, including metric values over time, targets, and context parameters. It performs statistical analysis such as trend detection, variance, and target achievement evaluation. The output is a detailed report with insights, anomaly flags, and growth or decline assessments to inform backend performance optimization and decision-making.", + "category": "backend-development", + "parameters": [ + { + "name": "kpiData", + "type": "array", + "description": "An array of objects representing KPI records, each including a timestamp and metric value. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetValue", + "type": "number", + "description": "The target metric value KPI should reach or maintain. Used to assess target achievement. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "timePeriod", + "type": "string", + "description": "The time range over which to analyze KPIs, e.g., 'last_30_days', 'Q1_2024'. Optional; defaults to entire dataset if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "minimumDataPoints", + "type": "number", + "description": "Minimum number of KPI data points required to perform a valid analysis. Defaults to 5.", + "required": false, + "defaultValue": "5" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to perform anomaly detection on the KPI data. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including trend (positive, negative, stable), variance statistics, target achievement status, anomalies detected, and summary insights." + }, + "aiAgent": { + "useCase": "Use this tool when backend systems need detailed performance analysis from KPI data to track progress against targets, detect anomalies, and understand trends over specified periods. It supports decisions on scaling, optimization, or intervention based on quantified metrics.", + "limitations": "This tool analyzes KPI data only and does not interpret qualitative factors or external influences. It assumes clean, time-series KPI input and does not handle raw log files or databases directly.", + "examples": [ + "Analyze backend API response time KPIs over last month to check if performance targets were met.", + "Evaluate daily user signup KPIs to detect any sudden drop-offs or spikes.", + "Assess server uptime percentage KPIs for the last quarter to report stability trends." + ] + }, + "tags": [ + "backend", + "analytics", + "KPI", + "performance-analysis", + "statistics", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"kpiData\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"value\":95},{\"timestamp\":\"2024-04-02T00:00:00Z\",\"value\":97},{\"timestamp\":\"2024-04-03T00:00:00Z\",\"value\":92},{\"timestamp\":\"2024-04-04T00:00:00Z\",\"value\":90},{\"timestamp\":\"2024-04-05T00:00:00Z\",\"value\":85}],\"targetValue\":90,\"timePeriod\":\"last_5_days\",\"minimumDataPoints\":5,\"detectAnomalies\":true}", + "description": "Analyze five days of API uptime KPI data against a target of 90% to evaluate performance and detect anomalies." + }, + { + "inputJson": "{\"kpiData\":[{\"timestamp\":\"2024-03-01T00:00:00Z\",\"value\":120},{\"timestamp\":\"2024-03-15T00:00:00Z\",\"value\":130},{\"timestamp\":\"2024-04-01T00:00:00Z\",\"value\":125}],\"targetValue\":130,\"timePeriod\":\"Q1_2024\",\"minimumDataPoints\":3,\"detectAnomalies\":false}", + "description": "Analyze quarterly user signups KPI with fewer data points and without anomaly detection." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "frontend-development.generateCSV", + "description": "Generates a CSV string from a given array of objects representing tabular data. Accepts input data and optional configuration parameters like custom delimiters, inclusion of header row, and encoding. Produces a CSV formatted string ready for download or further client-side processing.", + "category": "frontend-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects where each object represents a row with key-value pairs as columns. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include the object keys as the first CSV header row. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate values in the CSV. Default is comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "lineTerminator", + "type": "string", + "description": "String used to terminate lines in the CSV, e.g., \\r\\n or \\n. Default is \\r\\n.", + "required": false, + "defaultValue": "\r\n" + }, + { + "name": "quoteValues", + "type": "boolean", + "description": "Whether to wrap each value in double quotes to escape delimiters inside data. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "encoding", + "type": "string", + "description": "Text encoding of the output CSV string, such as UTF-8 or ASCII. Default is UTF-8.", + "required": false, + "defaultValue": "UTF-8" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV string under 'csvString' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured frontend data (usually in JSON object array form) into a CSV formatted string for generating downloadable reports, exporting datasets, or feeding CSV input into other client-side integrations. It handles common CSV formatting details like delimiters, headers, and quoting.", + "limitations": "This tool does not save files to disk or handle server-side CSV generation. It only produces CSV strings from client-side data. It cannot infer data types or sanitize data beyond simple quoting and escaping.", + "examples": [ + "Generate a CSV string from an array of user objects for export.", + "Create a CSV string with tab delimiter and no headers from sales data.", + "Produce a CSV string encoded in ASCII with newline line terminators." + ] + }, + "tags": [ + "frontend", + "csv", + "data-export", + "string-generation", + "utility" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"includeHeaders\":true}", + "description": "Generate CSV from array of user objects including headers with default settings." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Widget\",\"price\":9.99},{\"product\":\"Gadget\",\"price\":14.99}],\"includeHeaders\":false,\"delimiter\":\"\\t\"}", + "description": "Generate tab-delimited CSV from product data without headers." + }, + { + "inputJson": "{\"data\":[{\"item\":\"Pen\",\"quantity\":10},{\"item\":\"Notebook\",\"quantity\":5}],\"encoding\":\"ASCII\",\"lineTerminator\":\"\\n\"}", + "description": "Generate CSV string encoded as ASCII with Unix style line terminators." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "backend-development.analyzeDashboard", + "description": "Analyzes server-side dashboard analytics data by accepting input metrics, time ranges, and filter criteria. It processes usage data, error rates, and performance metrics to produce actionable insights, including summary statistics, trend analysis, and anomaly detection reports for backend application dashboards.", + "category": "backend-development", + "parameters": [ + { + "name": "dashboardId", + "type": "string", + "description": "Unique identifier of the dashboard to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp indicating the start of the analysis period", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 timestamp indicating the end of the analysis period", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names to analyze, such as ['requestCount', 'errorRate', 'responseTime']", + "required": false, + "defaultValue": "[]" + }, + { + "name": "filters", + "type": "object", + "description": "Optional key-value pairs to filter the analysis, such as {'region': 'us-east-1', 'instanceType': 't2.micro'}", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeAnomalies", + "type": "boolean", + "description": "Whether to include anomaly detection in the analysis output", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics, trend data, anomaly reports, and metric breakdowns for the requested dashboard and time period" + }, + "aiAgent": { + "useCase": "Use this tool when you need detailed analytic insights about a backend application dashboard’s performance and usage metrics over a specified time period, helping to identify trends, anomalies, and key statistics for operational monitoring and decision making.", + "limitations": "This tool does not collect raw telemetry data itself and depends on existing data sources linked to the dashboard. It cannot analyze data outside the selected metrics or apply predictive modeling beyond anomaly detection.", + "examples": [ + "Analyze backend dashboard 'dash123' metrics from 2024-01-01 to 2024-01-31 with anomaly detection.", + "Provide error rate trends and usage summaries for the dashboard 'prodDashboard' filtering by region 'eu-west-1'.", + "Get response time and request count analytics for dashboard 'myAppDashboard' without anomaly reports." + ] + }, + "tags": [ + "analysis", + "dashboard", + "backend", + "metrics", + "performance", + "monitoring", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"dashboardId\": \"dash123\", \"startTime\": \"2024-03-01T00:00:00Z\", \"endTime\": \"2024-03-07T23:59:59Z\", \"metrics\": [\"requestCount\", \"errorRate\"], \"filters\": {\"region\": \"us-east-1\"}, \"includeAnomalies\": true}", + "description": "Analyze request count and error rate for dashboard 'dash123' over one week in the US East region, including anomaly detection." + }, + { + "inputJson": "{\"dashboardId\": \"prodDashboard\", \"startTime\": \"2024-02-01T00:00:00Z\", \"endTime\": \"2024-02-28T23:59:59Z\", \"metrics\": [\"responseTime\"], \"filters\": {}, \"includeAnomalies\": false}", + "description": "Analyze response time trends for 'prodDashboard' for February 2024 without anomaly reporting." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "backend-development.uploadJSON", + "description": "Uploads structured JSON data to a specified backend API endpoint or database service. Accepts JSON string or object, validates syntax, optionally applies authentication headers, and sends the data via HTTP POST or PUT request. Returns success status and server response data or error details.", + "category": "backend-development", + "parameters": [ + { + "name": "jsonData", + "type": "object", + "description": "The JSON data object to upload to the backend service.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointUrl", + "type": "string", + "description": "The API endpoint URL where the JSON data will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to use for upload. Commonly POST or PUT.", + "required": false, + "defaultValue": "POST" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional bearer token for authorization header if API requires authentication.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for the HTTP request before considering it failed.", + "required": false, + "defaultValue": "30" + }, + { + "name": "validateBeforeUpload", + "type": "boolean", + "description": "Flag to perform JSON schema validation before uploading if schema provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "jsonSchema", + "type": "object", + "description": "Optional JSON schema object to validate jsonData before upload if validateBeforeUpload is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status and server response or error information." + }, + "aiAgent": { + "useCase": "Use this tool when you need to send JSON formatted data from an AI agent to a backend service for storage, processing, or integration, supporting optional authentication and validation before upload. It helps automate backend data ingestion tasks.", + "limitations": "This tool does not handle complex multipart uploads or binary data. It requires a reachable HTTP API endpoint. It does not provide advanced conflict resolution or retries beyond basic HTTP error returns.", + "examples": [ + "Upload user profile data JSON to a REST API with authentication.", + "Send configuration settings as JSON to a backend server endpoint for updating system state.", + "Validate and upload JSON payload to a cloud service API using HTTP POST." + ] + }, + "tags": [ + "upload", + "json", + "backend", + "api", + "http", + "authentication", + "validation" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":{\"userId\":123,\"settings\":{\"theme\":\"dark\",\"notifications\":true}},\"endpointUrl\":\"https://api.example.com/user/settings\",\"httpMethod\":\"POST\",\"authToken\":\"Bearer abc123token\",\"timeoutSeconds\":15,\"validateBeforeUpload\":false}", + "description": "Upload user settings JSON data to a secured backend endpoint using POST with authentication." + }, + { + "inputJson": "{\"jsonData\":{\"productId\":\"XYZ\",\"price\":19.99,\"stock\":100},\"endpointUrl\":\"https://inventory.example.com/api/products/xyz\",\"httpMethod\":\"PUT\",\"validateBeforeUpload\":true,\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"productId\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"},\"stock\":{\"type\":\"number\"}},\"required\":[\"productId\",\"price\",\"stock\"]}}", + "description": "Validate and update product information JSON using PUT method on inventory API." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "backend-development.uploadImage", + "description": "Uploads an image file to a specified backend server or cloud storage, accepting image data or URL, processing optional resizing and format conversion, and returns metadata including the accessible URL and storage info.", + "category": "backend-development", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or URL string for the image to upload", + "required": true, + "defaultValue": "" + }, + { + "name": "targetStorage", + "type": "string", + "description": "Destination storage identifier, e.g., 'aws-s3', 'gcp-storage', or 'local'", + "required": true, + "defaultValue": "" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Optional width in pixels to resize the image; maintains aspect ratio if height not set", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Optional height in pixels to resize the image; maintains aspect ratio if width not set", + "required": false, + "defaultValue": "" + }, + { + "name": "convertFormat", + "type": "string", + "description": "Optional output image format to convert to, e.g., 'jpeg', 'png', 'webp'", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, overwrite the file if it already exists at the destination", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs of metadata to associate with the uploaded image", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with image URL, storage location identifier, original and processed image sizes, and any error messages" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload image files to backend or cloud storage as part of a server-side workflow, including optional image resizing or format conversion. This supports scenarios like saving user uploads, processing images before serving, or managing media assets programmatically.", + "limitations": "Does not handle advanced image editing beyond resizing and format conversion; does not perform virus scanning on images; dependent on target storage service availability and credentials.", + "examples": [ + "Upload a user profile picture as a base64 string to AWS S3 with resizing to 256x256", + "Convert and upload an image from a URL to local server storage as a PNG file without resizing", + "Upload multiple metadata fields with an image upload to cloud storage" + ] + }, + "tags": [ + "backend", + "image", + "upload", + "media", + "storage", + "image-processing" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"targetStorage\":\"aws-s3\",\"resizeWidth\":256,\"resizeHeight\":256,\"convertFormat\":\"jpeg\",\"overwriteExisting\":true}", + "description": "Upload a base64 image to AWS S3, resize to 256x256, convert to JPEG, and overwrite if exists." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/image.jpg\",\"targetStorage\":\"local\",\"overwriteExisting\":false}", + "description": "Upload an image by URL to local server storage without resizing or format change." + }, + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"targetStorage\":\"gcp-storage\",\"metadata\":{\"author\":\"AI Agent\",\"category\":\"profile-pics\"}}", + "description": "Upload a base64 image to Google Cloud Storage with custom metadata tags." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "backend-development.formatText", + "description": "This tool accepts a raw text string as input and formats it according to specified options such as line width, indentation style, and text casing. It processes the text by wrapping lines to the desired width, applying indentation spaces or tabs, and converting the text to uppercase, lowercase, or title case as requested. The output is a well-formatted, human-readable string optimized for backend system logs or API responses.", + "category": "backend-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text string to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line length to wrap text (minimum 20)", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentationType", + "type": "string", + "description": "Type of indentation to apply: 'spaces' or 'tabs'", + "required": false, + "defaultValue": "spaces" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces or tabs to indent each line (minimum 0)", + "required": false, + "defaultValue": "4" + }, + { + "name": "textCase", + "type": "string", + "description": "Text casing style: 'none', 'uppercase', 'lowercase', or 'titlecase'", + "required": false, + "defaultValue": "none" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted text string under the key 'formattedText'" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare text output that conforms to specific formatting standards for backend logging, debugging, or API response bodies. It is especially useful for enforcing consistent indentation and line width limits or applying uniform text casing to improve readability in server-side applications.", + "limitations": "This tool does not perform natural language corrections, semantic analysis, or translation. It only formats plain text; it cannot parse markup languages like HTML or Markdown, nor does it support rich text formatting.", + "examples": [ + "Format raw log messages with 100 character line width, using tabs for indentation, and uppercase text.", + "Convert error descriptions to title case and indent with 2 spaces without line wrapping.", + "Wrap paragraphs to 60 characters and convert all text to lowercase using 4 spaces indentation." + ] + }, + "tags": [ + "text", + "formatting", + "backend", + "logging", + "indentation", + "line-wrapping", + "case-conversion" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Error: Invalid user input detected at line 42. Please check the submitted data.\",\"lineWidth\":50,\"indentationType\":\"spaces\",\"indentationSize\":2,\"textCase\":\"uppercase\"}", + "description": "Format error message with max 50 chars per line, 2 spaces indentation, and convert text to uppercase." + }, + { + "inputJson": "{\"text\":\"this is a sample message.\",\"lineWidth\":80,\"indentationType\":\"tabs\",\"indentationSize\":1,\"textCase\":\"titlecase\"}", + "description": "Format a short sentence using tabs for indentation and title casing without line wrapping." + }, + { + "inputJson": "{\"text\":\"WARNING: Low disk space. Please free up some space to prevent data loss.\",\"lineWidth\":60,\"indentationType\":\"spaces\",\"indentationSize\":4,\"textCase\":\"lowercase\"}", + "description": "Wrap warning message to 60 characters, indent by 4 spaces, and convert to lowercase." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "backend-development.composeMessage", + "description": "This tool creates structured message objects for backend applications by accepting inputs such as recipient info, subject, body text, and optional metadata. It processes these inputs to produce a consistent message object ready for sending, storing, or further processing in server-side workflows.", + "category": "backend-development", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "The email address or identifier of the message recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content of the message body, supporting plain text or simple markup.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachment objects (e.g., filenames or URLs) to include with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional message data such as priority, tags, or custom headers.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating if the body content is HTML formatted.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured message object containing all inputs organized consistently for downstream backend processing or transport." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate standardized message objects for backend workflows such as sending emails, notifications, or logging communications. It ensures consistent structure and supports optional attachments and metadata for richer messages.", + "limitations": "This tool does not handle the actual transmission or delivery of messages, only composition into a structured format.", + "examples": [ + "Compose an email message to user@example.com with a welcome subject and body.", + "Create a notification message with priority metadata and an HTML body.", + "Generate a message object including attachments and custom tags for audit logging." + ] + }, + "tags": [ + "backend", + "message", + "compose", + "email", + "notification", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"user@example.com\",\"subject\":\"Welcome to Our Service\",\"body\":\"Hello! We're glad to have you.\",\"isHtml\":false}", + "description": "Compose a simple welcome text message to a user." + }, + { + "inputJson": "{\"recipient\":\"admin@domain.com\",\"subject\":\"Server Alert\",\"body\":\"<p>High CPU usage detected.</p>\",\"isHtml\":true,\"metadata\":{\"priority\":\"high\",\"category\":\"alert\"}}", + "description": "Compose an HTML alert message with priority metadata for administration." + }, + { + "inputJson": "{\"recipient\":\"client@business.org\",\"subject\":\"Meeting Notes\",\"body\":\"Please find attached the notes.\",\"attachments\":[{\"filename\":\"notes.pdf\",\"url\":\"https://fileserver/notes.pdf\"}]}", + "description": "Compose a message with an attachment link to share meeting notes." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "backend-development.generateLink", + "description": "Generates a customized URL link for backend applications based on the given base URL, query parameters, and optional URL path segments. Processes inputs to correctly encode and assemble a valid HTTP or HTTPS link that can be used in API endpoints, redirects or resource references.", + "category": "backend-development", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL or domain to start the link from, e.g., 'https://example.com'. Must include protocol.", + "required": true, + "defaultValue": "" + }, + { + "name": "pathSegments", + "type": "array", + "description": "Optional array of path segments (strings) to append to the base URL, e.g., ['api', 'v1', 'users']. These are URI-encoded.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "queryParams", + "type": "object", + "description": "An optional object representing URL query parameters as key-value pairs to be appended to the link. Values will be encoded accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "useHttps", + "type": "boolean", + "description": "Whether to enforce HTTPS protocol in the generated link. If false, will keep the protocol from the base URL.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full assembled URL string in the 'url' property." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to programmatically construct valid URLs in backend systems, such as constructing API endpoint references, redirect URLs, or resource links with dynamic path and query parameters. This ensures proper URL encoding and assembly, reducing errors.", + "limitations": "This tool does not validate if the generated link resolves or is reachable, nor does it handle URL fragment identifiers (#). It only assembles URLs syntactically correctly based on inputs.", + "examples": [ + "Generate a user profile API endpoint link with user ID as path segment and include a query parameter for detail level.", + "Construct a redirect link enforcing HTTPS while preserving base domain and adding query filters." + ] + }, + "tags": [ + "URL", + "link generation", + "backend", + "API", + "HTTP", + "query parameters", + "path segments" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"http://example.com\",\"pathSegments\":[\"api\",\"v1\",\"users\",\"123\"],\"queryParams\":{\"active\":\"true\",\"sort\":\"name\"},\"useHttps\":true}", + "description": "Generate an HTTPS API user detail link with query parameters." + }, + { + "inputJson": "{\"baseUrl\":\"https://service.domain.com\",\"pathSegments\":[\"files\",\"download\"],\"queryParams\":{\"fileId\":\"a1b2c3\"},\"useHttps\":true}", + "description": "Generate a secure download link with fileId parameter." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "backend-development.createComment", + "description": "Creates a new comment associated with a specified resource within a backend system. Accepts inputs including resource type, resource ID, author information, and comment text. Validates inputs and stores the comment, returning a structured response with comment metadata and storage confirmation.", + "category": "backend-development", + "parameters": [ + { + "name": "resourceType", + "type": "string", + "description": "Type or category of the resource the comment is associated with (e.g., 'post', 'ticket').", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceId", + "type": "string", + "description": "Unique identifier of the resource to which the comment is attached.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier of the user creating the comment; used for tracking and attribution.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Display name of the comment author; can be used in the UI for attribution.", + "required": false, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The textual content of the comment to store.", + "required": true, + "defaultValue": "" + }, + { + "name": "parentCommentId", + "type": "string", + "description": "If replying to another comment, the ID of the parent comment. Leave empty for top-level comments.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata for the comment (e.g., tags, flags).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the stored comment's unique ID, timestamp, status, and associated metadata, confirming successful creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically add or submit a comment to a resource in a backend system, such as posting user feedback, notes on tickets, or discussion on content items. It facilitates structured creation of comments with proper attribution and contextual linkage to resources.", + "limitations": "This tool does not perform content moderation, sentiment analysis, or real-time notification dispatch; these should be handled by separate systems or toolchains.", + "examples": [ + "Create a comment replying to a helpdesk ticket with author info and text.", + "Add a top-level comment to a blog post with user ID and message.", + "Append a support note to a project task with optional metadata tags." + ] + }, + "tags": [ + "backend", + "comments", + "API", + "resource-management", + "discussion", + "user-interaction" + ], + "examples": [ + { + "inputJson": "{\"resourceType\":\"post\",\"resourceId\":\"abc123\",\"authorId\":\"user789\",\"authorName\":\"Alice\",\"commentText\":\"Great post, thanks for sharing!\"}", + "description": "Adding a top-level comment expressing appreciation on a blog post." + }, + { + "inputJson": "{\"resourceType\":\"ticket\",\"resourceId\":\"ticket456\",\"authorId\":\"tech234\",\"commentText\":\"Investigating the issue; will update soon.\",\"parentCommentId\":\"cmt001\"}", + "description": "Adding a reply comment to an existing helpdesk ticket comment thread." + }, + { + "inputJson": "{\"resourceType\":\"task\",\"resourceId\":\"task999\",\"authorId\":\"user555\",\"commentText\":\"Completed initial tests.\",\"metadata\":{\"priority\":\"high\",\"status\":\"review\"}}", + "description": "Appending a comment to a project task with metadata tagging its priority and status." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "backend-development.createLink", + "description": "Generates a fully formatted HTTP link based on input parameters such as base URL, path segments, query parameters, and optional fragment. Accepts strings and objects for flexible URL construction and outputs a valid, encoded URL string ready for API requests or web navigation.", + "category": "backend-development", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL domain (e.g., 'https://example.com') to start the link with, required to form a valid URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "pathSegments", + "type": "array", + "description": "An array of strings representing path segments to be appended to the base URL, joined by slashes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "queryParams", + "type": "object", + "description": "An object representing key-value pairs for query parameters to be appended after a '?', properly URL-encoded.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "fragment", + "type": "string", + "description": "Optional URL fragment (hash) to append at the end of the URL, e.g., 'section1'.", + "required": false, + "defaultValue": "" + }, + { + "name": "useHttps", + "type": "boolean", + "description": "Flag to enforce HTTPS protocol. If the base URL does not specify protocol or uses HTTP, it will be replaced to HTTPS if true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object with a single field 'url' containing the complete, encoded URL string combining all inputs." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically construct valid HTTP(S) URLs from separate parts such as domain, path, query parameters, and optional fragments to consume APIs, generate links dynamically, or facilitate navigation in server-side applications.", + "limitations": "Does not validate that the baseUrl is reachable or that query parameter values conform to specific API schemas. It does not support authentication tokens or perform network requests itself.", + "examples": [ + "Create a URL for API endpoint with query filters.", + "Build a user profile link with path and section anchor.", + "Generate a search URL with multiple parameters." + ] + }, + "tags": [ + "backend", + "url", + "link", + "http", + "api", + "web", + "utility" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://api.example.com\",\"pathSegments\":[\"v1\",\"users\"],\"queryParams\":{\"id\":\"123\",\"active\":\"true\"},\"fragment\":\"details\",\"useHttps\":true}", + "description": "Creates a user details API link with query params and fragment." + }, + { + "inputJson": "{\"baseUrl\":\"http://example.com\",\"pathSegments\":[\"about\",\"team\"],\"queryParams\":{},\"fragment\":\"\",\"useHttps\":true}", + "description": "Forces HTTPS and creates a team page link." + }, + { + "inputJson": "{\"baseUrl\":\"https://search.example.com\",\"pathSegments\":[],\"queryParams\":{\"q\":\"openai\",\"page\":\"2\"},\"fragment\":\"results\",\"useHttps\":true}", + "description": "Creates a search URL with query and fragment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "backend-development.generateArticle", + "description": "Generates a detailed, structured article based on a provided topic and optional style parameters. Accepts inputs such as the main topic, subtopics, desired article length, and tone; processes this information to produce a well-organized, coherent article suitable for blogs, documentation, or educational content. Returns the article text along with key metadata.", + "category": "backend-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Primary subject or theme to generate the article about.", + "required": true, + "defaultValue": "" + }, + { + "name": "subtopics", + "type": "array", + "description": "Optional list of subtopics or points to include in the article for more detailed coverage.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "number", + "description": "Desired approximate length of the article in words; influences detail level.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone or style of the article such as formal, casual, technical, or persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeReferences", + "type": "boolean", + "description": "Whether to include references or citations for factual information when applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text along with metadata like word count and sections." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate comprehensive, coherent articles on specified topics, particularly for blog content, technical documentation, or educational materials. It helps automate writing tasks where structured, readable content is required according to specified style and depth.", + "limitations": "The generated articles might not always reflect the latest information or highly specialized expert knowledge. It cannot replace human expert review for accuracy-sensitive contexts. It may also produce repetitive or generic content if inputs are vague or overly broad.", + "examples": [ + "Generate a 1500-word technical article on blockchain technology with formal tone and including references.", + "Create a casual, 800-word article about sustainable living with specified subtopics like recycling and energy saving.", + "Produce a 1200-word persuasive article on the benefits of remote work without references." + ] + }, + "tags": [ + "article generation", + "content creation", + "backend", + "documentation", + "blog writing", + "AI writing", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Artificial Intelligence in Healthcare\",\"subtopics\":[\"applications\",\"benefits\",\"challenges\"],\"length\":1200,\"tone\":\"formal\",\"includeReferences\":true}", + "description": "Generate a formal 1200-word article about AI in healthcare covering applications, benefits, and challenges with references." + }, + { + "inputJson": "{\"topic\":\"Travel Tips for Japan\",\"length\":800,\"tone\":\"casual\"}", + "description": "Create a casual, 800-word travel tips article about Japan without specified subtopics or references." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "backend-development.createQuery", + "description": "Generates a parameterized database query string and corresponding parameters object based on provided specifications, including table name, selected fields, conditions, sorting, pagination, and query type (SELECT, INSERT, UPDATE, DELETE). Inputs specify query components, output is a safe query string and parameters for use in backend database operations.", + "category": "backend-development", + "parameters": [ + { + "name": "queryType", + "type": "string", + "description": "Type of SQL query to generate: SELECT, INSERT, UPDATE, or DELETE.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table to query.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "Array of field names to select or modify. For SELECT, these are columns to retrieve; for INSERT/UPDATE, these are columns to write to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "conditions", + "type": "object", + "description": "Object representing WHERE clause conditions, where keys are field names and values are matching criteria. Supports simple equality matching.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field name to sort results by (applicable for SELECT queries).", + "required": false, + "defaultValue": "" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Sort order: ASC or DESC (applicable for SELECT queries).", + "required": false, + "defaultValue": "ASC" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of records to return (applicable for SELECT queries).", + "required": false, + "defaultValue": "" + }, + { + "name": "offset", + "type": "number", + "description": "Number of records to skip before starting to return records (applicable for SELECT queries).", + "required": false, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Object with key-value pairs for columns and values to insert or update (required for INSERT and UPDATE queries).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'queryString' with the parameterized SQL query string and 'parameters' array with corresponding parameter values for safe query execution." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to dynamically generate safe and parameterized SQL queries for various operations (SELECT, INSERT, UPDATE, DELETE) based on user input or application logic, avoiding manual string concatenation and reducing SQL injection risks.", + "limitations": "This tool does not support complex query features such as JOINs, subqueries, advanced condition operators (e.g., IN, BETWEEN), or database-specific SQL dialect peculiarities. It handles basic queries with simple WHERE conditions only.", + "examples": [ + "Create a SELECT query to get 'id' and 'name' from 'users' table where 'status'='active', sort by 'created_at' descending, limit 10.", + "Generate an INSERT query to add a new user with fields 'name', 'email', and 'age'.", + "Build an UPDATE query to set 'status'='inactive' for user with id=123." + ] + }, + "tags": [ + "backend", + "database", + "query", + "SQL", + "parameterized", + "select", + "insert", + "update", + "delete" + ], + "examples": [ + { + "inputJson": "{\"queryType\":\"SELECT\",\"tableName\":\"users\",\"fields\":[\"id\",\"name\"],\"conditions\":{\"status\":\"active\"},\"sortBy\":\"created_at\",\"sortOrder\":\"DESC\",\"limit\":10}", + "description": "Generate a SELECT query to retrieve id and name from users where status is active, sorted by created_at descending, limit 10." + }, + { + "inputJson": "{\"queryType\":\"INSERT\",\"tableName\":\"users\",\"data\":{\"name\":\"John Doe\",\"email\":\"john@example.com\",\"age\":30}}", + "description": "Create an INSERT query to add a new user with name, email, and age." + }, + { + "inputJson": "{\"queryType\":\"UPDATE\",\"tableName\":\"users\",\"data\":{\"status\":\"inactive\"},\"conditions\":{\"id\":123}}", + "description": "Build an UPDATE query to set status to inactive for user with id 123." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "backend-development.createVideo", + "description": "Creates a customizable video file by combining provided media assets such as images, video clips, text overlays, and background audio. Accepts input parameters to set video resolution, format, frame rate, and duration, then processes and merges the media to output a finalized video file URL or binary.", + "category": "backend-development", + "parameters": [ + { + "name": "videoResolution", + "type": "string", + "description": "The desired resolution for the output video, e.g. '1920x1080'.", + "required": true, + "defaultValue": "1920x1080" + }, + { + "name": "videoFormat", + "type": "string", + "description": "The format of the output video file, e.g. 'mp4', 'webm', 'mov'.", + "required": true, + "defaultValue": "mp4" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frame rate of the output video in frames per second.", + "required": false, + "defaultValue": "30" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "Total duration of the video in seconds. If input media is shorter, loops or pads to this length.", + "required": true, + "defaultValue": "" + }, + { + "name": "mediaAssets", + "type": "array", + "description": "Array of media objects (images, video clips, text overlays, audio) with properties defining start time, duration, type, and content/source.", + "required": true, + "defaultValue": "" + }, + { + "name": "backgroundAudio", + "type": "string", + "description": "Optional URL or identifier of background audio track to include in the video.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputStorage", + "type": "object", + "description": "Optional configuration details for storing the output video (e.g., cloud storage info, folder path).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing the URL or storage location of the created video file and metadata such as file size, duration, and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate videos by composing various media elements (images, clips, text, audio) with specific technical settings like resolution and frame rate. It is suited for backend applications automating video creation for marketing, tutorials, or content generation.", + "limitations": "Does not perform advanced video editing effects like transitions or color grading. Input media must be pre-formatted and compatible. Real-time streaming or live video generation is not supported.", + "examples": [ + "Create a 30-second 1080p MP4 video from provided images and text overlays with background music.", + "Generate a video clip by stitching multiple short video segments into a single file with consistent frame rate and resolution.", + "Produce an instructional video by embedding text captions on top of video content and exporting as a web-friendly format." + ] + }, + "tags": [ + "video", + "media-processing", + "backend", + "video-generation", + "automation", + "multimedia" + ], + "examples": [ + { + "inputJson": "{\"videoResolution\":\"1280x720\",\"videoFormat\":\"mp4\",\"frameRate\":24,\"durationSeconds\":60,\"mediaAssets\":[{\"type\":\"image\",\"source\":\"https://example.com/image1.jpg\",\"startTime\":0,\"duration\":30},{\"type\":\"text\",\"content\":\"Welcome to our service!\",\"startTime\":5,\"duration\":10}],\"backgroundAudio\":\"https://example.com/audio.mp3\"}", + "description": "Creates a 60 seconds 720p MP4 video combining an image and a text overlay with background music." + }, + { + "inputJson": "{\"videoResolution\":\"1920x1080\",\"videoFormat\":\"webm\",\"durationSeconds\":120,\"mediaAssets\":[{\"type\":\"video\",\"source\":\"https://example.com/clip1.mp4\",\"startTime\":0,\"duration\":60},{\"type\":\"video\",\"source\":\"https://example.com/clip2.mp4\",\"startTime\":60,\"duration\":60}]}", + "description": "Combines two 1-minute video clips back-to-back into a 2-minute 1080p WebM video file." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "backend-development.createArticle", + "description": "Creates a new article in the backend system by accepting details such as title, content, author ID, tags, and publication status. Processes this input to store a fully structured article entity and returns the saved article data including its unique identifier and timestamps.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the article to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The main body content of the article, supports text and HTML formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Unique identifier of the author creating the article.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of keywords or categories associated with the article for better classification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isPublished", + "type": "boolean", + "description": "Flag indicating whether the article should be immediately published or saved as a draft.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summary", + "type": "string", + "description": "Optional brief summary or excerpt of the article content.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the newly created article's unique ID, title, content, authorId, tags, publication status, summary, createdAt, updatedAt timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and store articles in a backend content management system, for example, during CMS automation, content ingestion pipelines, or API-driven publishing workflows. It ensures structured input is processed and stored, returning a full article record with metadata.", + "limitations": "This tool does not perform content validation beyond required fields, such as grammar or plagiarism checking, nor does it handle multimedia attachments or rich media embedding.", + "examples": [ + "Create a new blog post titled 'AI in Healthcare' with tags 'AI','healthcare', authored by user123, and publish immediately.", + "Save a draft article about 'Serverless Architecture Best Practices' by author456 with no tags and include a summary.", + "Create a news update article with minimal content and mark it as unpublished for later review." + ] + }, + "tags": [ + "backend", + "article", + "content-management", + "create", + "api", + "cms" + ], + "examples": [ + { + "inputJson": "{\"title\":\"The Future of AI\",\"content\":\"AI is transforming industries worldwide.\",\"authorId\":\"author001\",\"tags\":[\"AI\",\"technology\"],\"isPublished\":true,\"summary\":\"A brief overview of AI advancements.\"}", + "description": "Creating and publishing a new article with tags and a summary." + }, + { + "inputJson": "{\"title\":\"Weekly Update\",\"content\":\"This week we focused on backend optimization.\",\"authorId\":\"author002\",\"isPublished\":false}", + "description": "Saving a draft article without tags or summary." + }, + { + "inputJson": "{\"title\":\"Cloud Security Tips\",\"content\":\"Implement multi-factor authentication and encryption.\",\"authorId\":\"author789\",\"tags\":[\"security\",\"cloud\"],\"isPublished\":true}", + "description": "Publishing a security tips article with relevant tags." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "web-development.sendEmail", + "description": "Sends an email message through an SMTP server. Accepts parameters such as recipient addresses, sender address, subject, body content (plain text or HTML), and optional attachments. Processes the inputs to format and dispatch the email, returning success status and message ID or error details.", + "category": "web-development", + "parameters": [ + { + "name": "smtpHost", + "type": "string", + "description": "The hostname or IP address of the SMTP server to connect to.", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpPort", + "type": "number", + "description": "The port number of the SMTP server (commonly 25, 465, or 587).", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpUsername", + "type": "string", + "description": "Username for SMTP authentication if required.", + "required": false, + "defaultValue": "" + }, + { + "name": "smtpPassword", + "type": "string", + "description": "Password for SMTP authentication if required.", + "required": false, + "defaultValue": "" + }, + { + "name": "from", + "type": "string", + "description": "Email address that appears as the sender.", + "required": true, + "defaultValue": "" + }, + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of carbon copy email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of blind carbon copy email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Plain text version of the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "HTML version of the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachments, each object including filename and base64-encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "useSSL", + "type": "boolean", + "description": "Whether to use SSL/TLS when connecting to the SMTP server.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing whether the send was successful; if successful, includes a message ID, otherwise an error message." + }, + "aiAgent": { + "useCase": "Use this tool when a system or application needs to programmatically send emails, such as notifications, password resets, marketing emails, or alerts. It enables automated communication via SMTP compliant mail servers and supports attachments and rich text formatting.", + "limitations": "This tool does not handle email queueing, retries on failure, or advanced spam filtering. It requires valid SMTP credentials and network access to the mail server. It does not generate email content automatically.", + "examples": [ + "Send a password reset email to a user.", + "Send a marketing newsletter with an HTML template and embedded images.", + "Send an alert to multiple recipients with attachments from a monitoring system." + ] + }, + "tags": [ + "email", + "smtp", + "communication", + "notification", + "web", + "automation", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"smtpHost\":\"smtp.example.com\",\"smtpPort\":587,\"smtpUsername\":\"user@example.com\",\"smtpPassword\":\"password123\",\"from\":\"no-reply@example.com\",\"to\":[\"user1@example.com\"],\"subject\":\"Welcome!\",\"bodyText\":\"Welcome to our service.\",\"useSSL\":true}", + "description": "Send a simple welcome email to a single recipient using SMTP authentication over TLS." + }, + { + "inputJson": "{\"smtpHost\":\"smtp.mailserver.com\",\"smtpPort\":465,\"smtpUsername\":\"mailer\",\"smtpPassword\":\"secret\",\"from\":\"news@company.com\",\"to\":[\"customer@example.com\"],\"cc\":[\"manager@company.com\"],\"subject\":\"Monthly Newsletter\",\"bodyHtml\":\"<h1>Our News</h1><p>Check out our updates.</p>\",\"attachments\":[{\"filename\":\"promo.pdf\",\"content\":\"<base64 encoded content>\"}],\"useSSL\":true}", + "description": "Send a marketing newsletter with HTML content, CC recipients, and a PDF attachment securely over SSL." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "automation-frameworks.uploadDocument", + "description": "Uploads a document file to a specified remote storage or document management system. Accepts document content as a file path or base64 string, processes the data for upload, and returns upload status along with document metadata including accessible URL and document ID.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path to the document file to upload. Required if fileBase64 is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileBase64", + "type": "string", + "description": "Base64 encoded string of the document content. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentName", + "type": "string", + "description": "Name to assign to the uploaded document, to identify it in the system.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationFolder", + "type": "string", + "description": "Path or identifier of the folder in the remote storage where the document will be uploaded.", + "required": false, + "defaultValue": "root" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing document with the same name in the destination folder.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value metadata to associate with the document (e.g., tags, description).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Upload result containing success status, message, document ID, and access URL or error details." + }, + "aiAgent": { + "useCase": "Use this tool when an automation task or workflow requires programmatically uploading documents to a remote storage or content management system, such as saving reports, logs, or user documents. It supports flexible input formats and metadata annotation.", + "limitations": "This tool does not handle document conversion, scanning, or OCR. It requires valid authentication and permissions for the target remote storage. Large files may require chunked uploads which are not supported in this implementation.", + "examples": [ + "Upload a PDF report from local file path to corporate document repository.", + "Upload a base64 encoded image document to a cloud folder with metadata tags.", + "Overwrite an existing document with updated content under the same name in the destination folder." + ] + }, + "tags": [ + "automation", + "document management", + "upload", + "file handling", + "workflow", + "content management" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/reports/financial-summary.pdf\",\"documentName\":\"Q1 Financial Summary.pdf\",\"destinationFolder\":\"finance/reports\",\"overwriteExisting\":false}", + "description": "Upload a PDF report from a local file path to the finance reports folder without overwriting existing documents." + }, + { + "inputJson": "{\"fileBase64\":\"JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNDU4Pj5zdHJlYW0KeJxt0DFMgzAMhuF7vT1XU4WHKT9GnK0onR7pQUzTkllM455N9CQ6LNzvPzsz7bpi5kEUIYZ4sGSSY2Asg4SuATrpQScuMivx7W4BMRRQOyglrRMH14nGC3kOQbOjc+igg2UrfY2oDrqJZHL7THrxvpsRxFPzfLdS+XJ2Na8kquLE2N3nX7lVy9BRS3lgKrJs/BkN4TgUP1kF2avYx+AGnJFHUwplZm9yZgplbmRzdHJlYW0KZW5kb2JqCnhyZWYKMCA3CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAwMDExMSAwMDAwMCBuIAowMDAwMDAwMTQ4IDAwMDAwIG4gCjAwMDAwMDAyMDcgMDAwMDAgbiAKMDAwMDAwMDMwMSAwMDAwMCBuIAowMDAwMDAwNDY3IDAwMDAwIG4gCnRyYWlsZXIKPDwvU2l6ZSA3L1Jvb3QgMSAwIFIvSW5mbyA2IDAgUi9JRCBbPDE0YmU0N2EyZDQ1ZDVmNjZmNmQ3YTcyNGViNmEyNDRkPjw8MTRiZTQ3YTJkNDVkNWY2NmY2ZDdhNzI0ZWI2YTI0NGQ+XT4+CnN0YXJ0eHJlZgowCjU1NgolJUVPRgo=\",\"documentName\":\"imageDoc.jpg\",\"destinationFolder\":\"images/uploads\",\"overwriteExisting\":true,\"metadata\":{\"tag\":\"profile\",\"description\":\"User profile picture\"}}", + "description": "Upload an image document provided as a base64 string to images/uploads folder, overwriting existing and assigning metadata." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "automation-frameworks.generateText", + "description": "Generates customized text content based on specified templates and dynamic variables. Accepts a text template with placeholders, a mapping of variables to replace, and optional formatting settings. Outputs the final generated text string with all placeholders rendered accordingly.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "The text template containing placeholders indicated by braces, e.g., 'Hello, {name}!'", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "An object mapping placeholder names to their replacement string values. E.g., {\"name\": \"Alice\"}", + "required": true, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Optional formatting options like uppercase, lowercase, or capitalize for the entire output text.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single property 'generatedText' containing the final rendered string after variable substitution and formatting." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate customized text outputs in automation workflows, such as emails, reports, notifications, or documentation, by providing templates and dynamic content. It helps automate repetitive text generation tasks with variable input.", + "limitations": "Does not perform natural language generation or correct grammar; only replaces given placeholders. Complex conditional logic or iterative content generation is not supported.", + "examples": [ + "Generate a greeting email body with recipient name and date.", + "Create a report summary with inserted metrics and percentages.", + "Produce a notification message with dynamic user and event details." + ] + }, + "tags": [ + "automation", + "text-generation", + "templating", + "workflow", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"template\":\"Hello, {firstName} {lastName}! Your appointment is on {date}.\",\"variables\":{\"firstName\":\"John\",\"lastName\":\"Doe\",\"date\":\"2024-07-01\"},\"formattingOptions\":{\"uppercase\":false}}", + "description": "Generate a personalized appointment reminder with the recipient's full name and date." + }, + { + "inputJson": "{\"template\":\"Warning: {device} has reached {threshold}% CPU usage.\",\"variables\":{\"device\":\"Server42\",\"threshold\":\"95\"},\"formattingOptions\":{\"uppercase\":true}}", + "description": "Create an uppercase alert message for system monitoring notifications." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "automation-frameworks.createTest", + "description": "Generates automated test scripts based on specified parameters including test framework, language, test type, and target functionalities. Accepts inputs defining the test context and outputs ready-to-run test code snippets or files according to chosen conventions and best practices.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "testName", + "type": "string", + "description": "The unique name or identifier for the test case to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The testing framework to use (e.g., Jest, Mocha, PyTest, Selenium).", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language of the test code to generate (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "The category of test to create, such as unit, integration, e2e (end-to-end), or functional test.", + "required": true, + "defaultValue": "" + }, + { + "name": "testDescription", + "type": "string", + "description": "A brief description of the intended behavior or features the test should validate.", + "required": false, + "defaultValue": "" + }, + { + "name": "testSteps", + "type": "array", + "description": "An ordered list of steps or actions that the test should perform, expressed as simple descriptive strings.", + "required": true, + "defaultValue": "" + }, + { + "name": "assertions", + "type": "array", + "description": "A list of expected conditions or outcomes that the test should verify, each as a string assertion statement.", + "required": true, + "defaultValue": "" + }, + { + "name": "setupCode", + "type": "string", + "description": "Optional code to run before the test steps, such as initializing environment or mocks.", + "required": false, + "defaultValue": "" + }, + { + "name": "teardownCode", + "type": "string", + "description": "Optional code to run after the test completes, for cleanup purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format in which to return the generated test code (e.g., 'string' for raw code, 'file' for file path).", + "required": false, + "defaultValue": "string" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test script/code and optionally metadata such as filename or code snippets." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of standardized test cases for software projects. It helps rapidly produce boilerplate test code for common frameworks and languages based on a structured description of what to test, facilitating test coverage and continuous integration workflows.", + "limitations": "Does not execute or validate generated tests. It may not fully capture complex test logic or dynamic environments without additional manual refinement. It cannot generate tests for proprietary or highly domain-specific frameworks not listed in its configuration.", + "examples": [ + "Create a Jest unit test in JavaScript for a function that adds two numbers.", + "Generate a PyTest integration test in Python verifying user login flow steps.", + "Produce a Selenium end-to-end test script in Java checking website navigation and page content." + ] + }, + "tags": [ + "automation", + "testing", + "test-creation", + "code-generation", + "QA", + "software-testing", + "CI-CD" + ], + "examples": [ + { + "inputJson": "{\"testName\":\"addFunctionTest\",\"testFramework\":\"Jest\",\"programmingLanguage\":\"JavaScript\",\"testType\":\"unit\",\"testDescription\":\"Test addition function for correct output\",\"testSteps\":[\"call add(2,3)\"],\"assertions\":[\"result equals 5\"],\"setupCode\":\"const add = require('./add');\",\"teardownCode\":\"\",\"outputFormat\":\"string\"}", + "description": "Generate a Jest JavaScript unit test to verify an add function returns correct sum." + }, + { + "inputJson": "{\"testName\":\"userLoginFlow\",\"testFramework\":\"PyTest\",\"programmingLanguage\":\"Python\",\"testType\":\"integration\",\"testDescription\":\"Verify user can login with valid credentials\",\"testSteps\":[\"navigate to login page\",\"enter username and password\",\"submit login form\"],\"assertions\":[\"login successful message displayed\"],\"setupCode\":\"import requests\",\"teardownCode\":\"\",\"outputFormat\":\"string\"}", + "description": "Create a PyTest integration test for user login workflow with given steps and assertions." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "api-integration.createReport", + "description": "Creates a detailed report document by aggregating and processing data from specified APIs. Accepts input parameters defining data sources, filters, report format, and layout options. Outputs a structured report in formats like PDF, DOCX, or JSON, ready for distribution or archiving.", + "category": "api-integration", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of API endpoints or identifiers to fetch data from for the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs defining filtering criteria to refine the data fetched from the APIs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output format of the report (e.g., PDF, DOCX, JSON).", + "required": true, + "defaultValue": "PDF" + }, + { + "name": "title", + "type": "string", + "description": "Title to display on the report cover page or header.", + "required": false, + "defaultValue": "Annual Report" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "layoutOptions", + "type": "object", + "description": "Layout configuration details like page orientation, font styles, and section order.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report content in the chosen format as a base64-encoded string and metadata including report title, creation timestamp, and data sources used." + }, + "aiAgent": { + "useCase": "Use when an integrated report needs to be created by fetching and compiling data from multiple APIs, applying filters, and formatting it into a professional document format for presentation, distribution, or record-keeping.", + "limitations": "Does not perform data validation or quality checks on input APIs; requires accessible and authorized API endpoints. Complex custom report designs may require additional post-processing outside the tool.", + "examples": [ + "Generate a PDF sales report from the sales and marketing APIs filtered by region Q1 2024.", + "Create a DOCX report summarizing product inventory status using warehouse and ERP system APIs.", + "Build a JSON format technical audit report combining security and compliance API data." + ] + }, + "tags": [ + "api-integration", + "report-generation", + "document", + "automation", + "data-aggregation", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"dataSources\": [\"https://api.company.com/sales\", \"https://api.company.com/marketing\"], \"filters\": {\"region\": \"EMEA\", \"quarter\": \"Q1\"}, \"reportFormat\": \"PDF\", \"title\": \"Q1 EMEA Sales Report\", \"includeSummary\": true, \"layoutOptions\": {\"pageOrientation\": \"portrait\", \"font\": \"Arial\"}}", + "description": "Create a PDF report titled 'Q1 EMEA Sales Report' by aggregating sales and marketing data filtered for the EMEA region and Q1 quarter, including summary, with defined layout options." + }, + { + "inputJson": "{\"dataSources\": [\"https://api.warehouse.com/inventory\"], \"reportFormat\": \"DOCX\", \"title\": \"Inventory Status Report\", \"includeSummary\": false}", + "description": "Generate a DOCX report on current inventory status, pulling data from the warehouse inventory API without summary section." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "api-integration.createFunction", + "description": "Creates a new serverless or API function by defining its configuration parameters, code content, and deployment options. Accepts inputs like function name, runtime environment, source code, triggers, and environment variables. Processes these inputs to set up the function in a target platform and returns a deployment status with function details.", + "category": "api-integration", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The unique name to assign to the new function.", + "required": true, + "defaultValue": "" + }, + { + "name": "runtime", + "type": "string", + "description": "The runtime environment for the function, e.g., 'nodejs14', 'python3.9'.", + "required": true, + "defaultValue": "" + }, + { + "name": "code", + "type": "string", + "description": "The source code of the function as a string or base64-encoded content.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "List of event triggers (e.g., HTTP endpoints, cron schedules) that activate the function.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs defining environment variables available to the function at runtime.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum execution time for the function in seconds before termination.", + "required": false, + "defaultValue": "60" + }, + { + "name": "memoryMB", + "type": "number", + "description": "Amount of memory allocated to the function in megabytes.", + "required": false, + "defaultValue": "256" + }, + { + "name": "description", + "type": "string", + "description": "A text description explaining the purpose of the function.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing deployment status, unique function identifier, endpoint URLs (if applicable), and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool to automate the creation and deployment of serverless or API functions within various cloud or custom platforms by specifying all necessary code and configuration details in a single operation. Ideal when integrating multiple APIs or serverless workflows.", + "limitations": "Does not support complex multi-function workflows or dependency chaining. Cannot edit or update existing functions, only create new ones. Execution environments and triggers supported depend on the target platform capabilities.", + "examples": [ + "Create a Node.js HTTP API function named 'getUser' that responds to GET requests.", + "Deploy a Python scheduled function triggered every hour with specific environment variables.", + "Create a memory-optimized function with a 120-second timeout to process data asynchronously." + ] + }, + "tags": [ + "api", + "serverless", + "function", + "deployment", + "automation", + "cloud", + "integration" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"helloWorld\",\"runtime\":\"nodejs14\",\"code\":\"exports.handler = async () => { return { statusCode: 200, body: 'Hello World' }; };\",\"triggers\":[{\"type\":\"http\",\"method\":\"GET\",\"path\":\"/hello\"}],\"environmentVariables\":{\"GREETING\":\"Hello World\"},\"timeoutSeconds\":30,\"memoryMB\":128,\"description\":\"Simple HTTP hello world function.\"}", + "description": "Creates a basic Node.js HTTP function returning a hello message." + }, + { + "inputJson": "{\"functionName\":\"dailyCleanup\",\"runtime\":\"python3.9\",\"code\":\"def handler(event, context):\\n print('Cleanup task executed')\",\"triggers\":[{\"type\":\"cron\",\"schedule\":\"0 0 * * *\"}],\"environmentVariables\":{},\"timeoutSeconds\":60,\"memoryMB\":512,\"description\":\"Scheduled daily cleanup function.\"}", + "description": "Creates a Python function triggered daily by a cron schedule for cleanup tasks." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "agent-management.analyzeAccount", + "description": "Analyzes a specified AI agent account by evaluating usage patterns, configuration settings, error logs, and performance metrics over a given period. Accepts an account identifier and optional date range, processes account data to identify anomalies, inefficiencies, and optimization opportunities, and returns a comprehensive diagnostic report summarizing the account's operational health.", + "category": "agent-management", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the AI agent account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted string indicating the start date for analysis period (inclusive).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted string indicating the end date for analysis period (inclusive).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeErrorLogs", + "type": "boolean", + "description": "Whether to include detailed error logs in the analysis report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "performanceMetrics", + "type": "array", + "description": "List of specific performance metrics to include in the analysis (e.g., ['responseTime', 'throughput']). If empty or omitted, uses all available metrics.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report object including usage statistics, performance summaries, detected anomalies, error log excerpts (if requested), configuration inconsistencies, and suggested optimizations." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating an AI agent account's operational status to identify issues, optimize performance, or prepare reports on usage and health. Especially useful for periodic audits or troubleshooting unexpected behaviors in deployed agents.", + "limitations": "Does not modify any account settings or perform automated fixes. Analysis depends on the availability and completeness of account data and logs. Real-time monitoring is not supported.", + "examples": [ + "Analyze the account 'agent123' logs and performance metrics for the last month including error details.", + "Provide a summary report of usage statistics for account 'agentXYZ' without error logs.", + "Evaluate the 'marketingBot' account's performance focusing on response time and throughput metrics." + ] + }, + "tags": [ + "analysis", + "agent-management", + "account", + "performance", + "diagnostics", + "optimization", + "logging" + ], + "examples": [ + { + "inputJson": "{\"accountId\": \"agent123\", \"startDate\": \"2024-05-01\", \"endDate\": \"2024-05-31\", \"includeErrorLogs\": true, \"performanceMetrics\": [\"responseTime\", \"throughput\"]}", + "description": "Analyze the agent account with ID 'agent123' for May 2024, including error logs and focusing on response time and throughput metrics." + }, + { + "inputJson": "{\"accountId\": \"agentXYZ\", \"includeErrorLogs\": false}", + "description": "Analyze the latest available data for account 'agentXYZ' without including error logs." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "agent-management.generateWord", + "description": "Generates a random or themed word based on provided criteria such as word length, starting letter, language, and category. Useful for naming agents, bots, or creating content prompts. Accepts customizable parameters to tailor word generation to agent needs, outputting one suitable word string.", + "category": "agent-management", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'es') to generate the word in.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "minLength", + "type": "number", + "description": "Minimum length of the generated word.", + "required": false, + "defaultValue": "3" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word.", + "required": false, + "defaultValue": "10" + }, + { + "name": "startsWith", + "type": "string", + "description": "Optional starting letter(s) the generated word should begin with.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "category", + "type": "string", + "description": "Optional category or theme to base the word on (e.g., 'technology', 'nature').", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "Whether the generated word should be capitalized (e.g., for proper names).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word as a string and metadata about the generation parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent requires a single, contextually relevant word for naming, labeling, or creative content generation. It helps provide words tailored by language, length, or theme to fit agent creation or content needs.", + "limitations": "Cannot guarantee the word is unique or always meaningful; depending on parameters, results may be generic or common words. It does not generate multiple words or phrase; limited to single words only.", + "examples": [ + "Generate a technology-related word starting with 'a' for naming a bot.", + "Create a random English word between 5 and 8 letters long.", + "Produce a nature-themed word capitalized for an agent name." + ] + }, + "tags": [ + "agent-management", + "word-generation", + "naming", + "content-generation", + "language" + ], + "examples": [ + { + "inputJson": "{\"language\":\"en\",\"minLength\":5,\"maxLength\":8,\"startsWith\":\"a\",\"category\":\"technology\",\"capitalize\":true}", + "description": "Generate a capitalized English technology-related word starting with 'a' between 5 and 8 letters long." + }, + { + "inputJson": "{\"language\":\"en\",\"minLength\":3,\"maxLength\":6,\"capitalize\":false}", + "description": "Generate a random English word between 3 and 6 letters long." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "model-management.analyzeDataset", + "description": "Analyzes a given dataset to provide detailed statistics and insights including data types, missing values, distributions, correlations, and potential data quality issues. Accepts datasets in CSV or JSON format with optional specifications about target variables or grouping columns. Produces a structured summary report with descriptive statistics and recommendations for preprocessing.", + "category": "model-management", + "parameters": [ + { + "name": "dataset", + "type": "string", + "description": "The dataset content as a CSV or JSON string input for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input dataset: 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "targetColumn", + "type": "string", + "description": "Optional name of the target variable column to analyze separately.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByColumns", + "type": "array", + "description": "Optional array of column names to group data by for subgroup analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCorrelations", + "type": "boolean", + "description": "Whether to compute pairwise correlations between numeric features.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSamples", + "type": "number", + "description": "Maximum number of data rows to analyze for efficiency (0 means all).", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics, data quality issues, feature distributions, correlations (if requested), and preprocessing recommendations." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs a comprehensive overview of a dataset prior to model training or data preprocessing. It helps identify data quality issues, understand feature distributions, and find correlations which impact model feature engineering and selection.", + "limitations": "The tool does not perform data cleaning or transformations. It analyzes only the provided dataset without external context and may be limited by large dataset size despite sampling.", + "examples": [ + "Analyze a CSV dataset to identify missing values and data types before model training.", + "Assess correlations and distributions in a JSON dataset grouped by category.", + "Generate a detailed data report with target variable insights for feature engineering." + ] + }, + "tags": [ + "analysis", + "dataset", + "data-quality", + "statistics", + "model-preparation", + "insights" + ], + "examples": [ + { + "inputJson": "{\"dataset\":\"col1,col2,target\\n1,5,A\\n2,6,B\\n3,,A\\n4,8,B\",\"dataFormat\":\"csv\",\"targetColumn\":\"target\",\"includeCorrelations\":true,\"maxSamples\":1000}", + "description": "Analyze a small CSV dataset with a target column and compute correlations." + }, + { + "inputJson": "{\"dataset\":\"[{\\\"feature1\\\":10, \\\"feature2\\\":100, \\\"group\\\":\\\"A\\\"},{\\\"feature1\\\":15, \\\"feature2\\\":110, \\\"group\\\":\\\"B\\\"}]\",\"dataFormat\":\"json\",\"groupByColumns\":[\"group\"],\"includeCorrelations\":false}", + "description": "Analyze a JSON dataset grouped by 'group' column without computing correlations." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "model-management.analyzeMessage", + "description": "Analyzes textual message inputs using AI models to extract sentiment, intent, key entities, and summarize content. Accepts raw message text and optional model configuration, processes linguistic and semantic features, and returns structured analysis including sentiment score, identified entities, detected user intent, and a concise summary.", + "category": "model-management", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The raw text content of the message to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') of the message for accurate analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "modelVersion", + "type": "string", + "description": "Specific version of the AI model to use for analysis, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "extractSentiment", + "type": "boolean", + "description": "Flag to enable sentiment analysis extraction.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractEntities", + "type": "boolean", + "description": "Flag to enable named entity extraction from the message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractIntent", + "type": "boolean", + "description": "Flag to enable intent detection within the message text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "generateSummary", + "type": "boolean", + "description": "Flag indicating whether to generate a concise summary of the message content.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including sentiment (score and label), entities (array with type and text), detected intent with confidence, and optionally a summary string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the emotional tone, main subjects, user intent, or a brief overview of message text to support automated workflows, customer support, chatbot understanding, or content categorization.", + "limitations": "This tool analyzes text only and cannot process non-textual message contents such as images or voice. It may have reduced accuracy on slang, ambiguous, or very short messages.", + "examples": [ + "Analyze customer support messages to detect urgency and route appropriately.", + "Summarize user feedback messages to identify common themes.", + "Detect user intent in chatbot conversations for context-aware replies." + ] + }, + "tags": [ + "analysis", + "nlp", + "sentiment", + "intent", + "entity extraction", + "message processing", + "text summarization" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"I'm so frustrated with the slow response time from your support team!\", \"language\":\"en\", \"extractSentiment\":true, \"extractEntities\":true, \"extractIntent\":true, \"generateSummary\":true}", + "description": "Analyze a customer complaint message for sentiment, entities, intent, and provide a summary." + }, + { + "inputJson": "{\"messageText\":\"Schedule a meeting with the sales team next Wednesday morning.\", \"extractIntent\":true, \"extractEntities\":true}", + "description": "Identify intent and important entities in a scheduling request message." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "model-management.createImage", + "description": "Creates a new AI-generated image based on textual prompts and optional style parameters. Accepts a text prompt describing the desired image, optional style settings such as image resolution, color scheme, and artistic style, and returns a URL or base64-encoded string representing the generated image suitable for further use or display.", + "category": "model-management", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "A detailed textual description of the image to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "resolution", + "type": "string", + "description": "The desired resolution of the output image, e.g., '512x512'.", + "required": false, + "defaultValue": "512x512" + }, + { + "name": "style", + "type": "string", + "description": "Artistic style to apply to the image, such as 'realistic', 'cartoon', or 'abstract'.", + "required": false, + "defaultValue": "realistic" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Preferred color scheme, for example 'vibrant', 'pastel', or 'monochrome'.", + "required": false, + "defaultValue": "vibrant" + }, + { + "name": "seed", + "type": "number", + "description": "Optional random seed number for reproducibility of the generated image.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated image data including an accessible URL or a base64 string, the image resolution, and metadata about the generation." + }, + "aiAgent": { + "useCase": "Use this tool when you want to generate images automatically from textual prompts for creative projects, prototyping, digital content creation, or visual assistance tasks. It is suitable for generating diverse images with configurable styles and resolutions, assisting in rapid visual content development or experimentation.", + "limitations": "This tool cannot generate images from inputs other than textual prompts. It may not produce results matching highly specific or abstract concepts perfectly. It does not edit existing images, only creates new images from descriptions.", + "examples": [ + "Generate a realistic portrait of a medieval knight wearing a silver helmet.", + "Create a vibrant cartoon-style image of a futuristic city skyline.", + "Produce an abstract pastel-colored image inspired by ocean waves." + ] + }, + "tags": [ + "image generation", + "AI art", + "text-to-image", + "model deployment", + "creative tools", + "digital content" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"A futuristic robot standing in a neon-lit cityscape at night\",\"resolution\":\"1024x1024\",\"style\":\"realistic\",\"colorScheme\":\"vibrant\",\"seed\":42}", + "description": "Generates a vibrant realistic image of a robot in a neon city at 1024x1024 resolution." + }, + { + "inputJson": "{\"prompt\":\"Cute cartoon cat wearing a wizard hat\",\"style\":\"cartoon\",\"colorScheme\":\"pastel\"}", + "description": "Creates a pastel-colored cartoon-style image of a cat dressed as a wizard at default resolution." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "model-management.createAccount", + "description": "Creates a new user account within the AI model management system, accepting inputs like user details and account roles, then processes validation and stores the account data securely, returning the created account identifier and status.", + "category": "model-management", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "Unique username for the new account, required for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address associated with the account for notifications and recovery.", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Secure password for account authentication, must meet security policies.", + "required": true, + "defaultValue": "" + }, + { + "name": "roles", + "type": "array", + "description": "Array of strings specifying roles assigned to the account (e.g., admin, user).", + "required": false, + "defaultValue": "[\"user\"]" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag indicating if the account should be active immediately after creation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with additional user information (e.g., department).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the new account ID, username, assigned roles, creation timestamp, and status message." + }, + "aiAgent": { + "useCase": "Use this tool when a new user needs to be registered in the AI model management platform, requiring validated user credentials and role assignments before model access is granted.", + "limitations": "This tool does not handle password strength enforcement beyond basic validation, nor does it send verification emails or handle multi-factor authentication setup.", + "examples": [ + "Create a new admin account for the ML operations team with immediate activation.", + "Register a user with standard \"user\" role and add metadata including their department.", + "Create an inactive account pending email verification before activation." + ] + }, + "tags": [ + "account", + "user-management", + "model-management", + "create", + "security", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"username\":\"jdoe\",\"email\":\"jdoe@example.com\",\"password\":\"S3cur3Pa$$w0rd\",\"roles\":[\"admin\"],\"isActive\":true,\"metadata\":{\"department\":\"ml-ops\"}}", + "description": "Create an active admin account for user 'jdoe' with additional metadata." + }, + { + "inputJson": "{\"username\":\"asmith\",\"email\":\"asmith@example.com\",\"password\":\"defaultPass123\",\"roles\":[\"user\"],\"isActive\":false}", + "description": "Create an inactive standard user account awaiting activation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "model-management.createDataset", + "description": "Creates a structured dataset from raw data inputs for AI model training and evaluation. Accepts raw data sources (files or URLs), applies optional preprocessing (filtering, normalization), and outputs a dataset object with metadata and sample references ready for model consumption.", + "category": "model-management", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "A unique, human-readable name identifying the dataset to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "rawDataSources", + "type": "array", + "description": "List of raw data inputs as file paths or URLs to include in the dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the raw data (e.g., CSV, JSON, image-folder) to properly parse inputs.", + "required": true, + "defaultValue": "" + }, + { + "name": "preprocessingSteps", + "type": "array", + "description": "Optional list of preprocessing operations to apply, such as filtering, normalization, or augmentation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetVariable", + "type": "string", + "description": "Name of the target/output variable in the dataset for supervised learning scenarios.", + "required": false, + "defaultValue": "" + }, + { + "name": "validationSplit", + "type": "number", + "description": "Fraction of data to set aside for validation (0 to 1), default is 0.2.", + "required": false, + "defaultValue": "0.2" + }, + { + "name": "randomSeed", + "type": "number", + "description": "Seed value for random operations like shuffling or splitting to ensure reproducibility.", + "required": false, + "defaultValue": "42" + } + ], + "returns": { + "type": "object", + "description": "An object describing the created dataset including its name, sample count, feature schema, and preprocessing summary." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw data from one or multiple sources and need to create a clean, standardized dataset for training or evaluating AI models. It handles parsing, optional preprocessing, target assignment, and splits data for validation, streamlining dataset creation workflows.", + "limitations": "Does not support real-time data streaming inputs or complex multi-modal dataset assembly beyond basic file and URL sourcing. Advanced preprocessing beyond basic steps may require external tools.", + "examples": [ + "Create a dataset named 'CustomerChurn' from multiple CSV files with normalization and a defined target variable.", + "Generate an image dataset from a folder of images, split 10% for validation, and apply augmentation preprocessing.", + "Assemble a dataset from JSON URLs with no preprocessing and default validation split." + ] + }, + "tags": [ + "dataset", + "creation", + "model-training", + "preprocessing", + "data-management" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"CustomerChurn\",\"rawDataSources\":[\"/data/churn_jan.csv\",\"/data/churn_feb.csv\"],\"dataFormat\":\"CSV\",\"preprocessingSteps\":[\"normalize\",\"filterOutliers\"],\"targetVariable\":\"churn\",\"validationSplit\":0.2,\"randomSeed\":1234}", + "description": "Creating a tabular dataset for customer churn prediction from two CSV files with normalization and outlier filtering, using a 20% validation split." + }, + { + "inputJson": "{\"datasetName\":\"CatsVsDogs\",\"rawDataSources\":[\"/images/cats_vs_dogs/\"],\"dataFormat\":\"image-folder\",\"preprocessingSteps\":[\"resize\",\"augment\"],\"validationSplit\":0.1}", + "description": "Constructing an image classification dataset from a folder with resizing and augmentation, reserving 10% for validation." + }, + { + "inputJson": "{\"datasetName\":\"WebLogs\",\"rawDataSources\":[\"https://data.example.com/weblogs.json\"],\"dataFormat\":\"JSON\",\"preprocessingSteps\":[],\"validationSplit\":0.25}", + "description": "Creating a dataset from a JSON web log URL without preprocessing, setting aside 25% for validation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "model-management.createIssue", + "description": "Creates a new issue in the AI model management system to track bugs, feature requests, or tasks related to AI models. Accepts issue title, description, priority, type, and related model ID as inputs. Outputs issue ID and confirmation status upon creation.", + "category": "model-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Short, descriptive title of the issue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the issue or request to help developers understand the context.", + "required": true, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the issue, e.g., Low, Medium, High, Critical.", + "required": false, + "defaultValue": "Medium" + }, + { + "name": "issueType", + "type": "string", + "description": "Type of issue to categorize it, e.g., Bug, Feature Request, Task.", + "required": true, + "defaultValue": "Bug" + }, + { + "name": "relatedModelId", + "type": "string", + "description": "Identifier of the AI model related to this issue, if applicable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique issueId assigned by the system and a status message indicating success or failure of issue creation." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when they need to log new issues during AI model lifecycle management, such as detecting a defect during testing, requesting a new feature, or recording maintenance tasks associated with AI models. It helps in organizing and tracking work items efficiently.", + "limitations": "This tool does not perform issue prioritization automatically or integrate with external issue trackers. It only creates issues in the internal AI model management system.", + "examples": [ + "Create a high priority bug issue for model ID '1234' due to model accuracy drop.", + "Log a feature request to add support for TPU accelerators.", + "Report a medium priority task to update model training datasets." + ] + }, + "tags": [ + "issue", + "model-management", + "bug-tracking", + "task-management", + "feature-request", + "AI-models" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Model accuracy decreased after update\",\"description\":\"After the latest retraining, the model accuracy dropped by 5%, need investigation.\",\"priority\":\"High\",\"issueType\":\"Bug\",\"relatedModelId\":\"model_9876\"}", + "description": "Creating a high priority bug issue related to a specific AI model's accuracy regression." + }, + { + "inputJson": "{\"title\":\"Add support for TPU acceleration\",\"description\":\"Request to enable training on TPU hardware to speed up processes.\",\"issueType\":\"Feature Request\"}", + "description": "Logging a feature request to enhance training infrastructure for AI models." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "model-management.createCommit", + "description": "Creates a new commit in the version control system integrated with the AI model management platform. Accepts the target branch name, a commit message, and optionally a list of changed files or metadata. Processes these inputs to create a commit record and returns the commit ID, timestamp, and status.", + "category": "model-management", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "The name of the branch to commit to (e.g., 'main', 'dev').", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "A descriptive message explaining the purpose of the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "Optional list of file paths that have been changed and should be included in the commit.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authorName", + "type": "string", + "description": "Optional name of the author making the commit.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with additional metadata about the commit (e.g., ticket IDs, tags).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the commit ID (hash), timestamp of commit creation, branch committed to, and commit status (success or failure with error details)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create a commit record during model training iterations, updates to model code, configuration changes, or other version-controlled modifications within the AI model lifecycle management platform. This ensures changes are versioned and traceable in the model management repository.", + "limitations": "This tool does not perform merge operations or resolve conflicts; it only creates commits. It assumes the underlying repository and branch exist and are accessible. It cannot revert commits or manage branch creation.", + "examples": [ + "Create a commit on the 'main' branch with message 'Updated model hyperparameters' including changed files ['config.yaml','train.py'].", + "Commit a change on 'dev' branch with a descriptive message and metadata containing a ticket ID.", + "Create a commit with author name specified for audit tracking without specifying changed files explicitly." + ] + }, + "tags": [ + "version-control", + "commit", + "model-management", + "git", + "repository", + "devops", + "automation" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"main\",\"commitMessage\":\"Add new feature extractor module\",\"changedFiles\":[\"feature_extractor.py\",\"README.md\"],\"authorName\":\"Jane Doe\",\"metadata\":{\"ticketId\":\"ML-1234\"}}", + "description": "Commit adding a new feature extractor on main branch with related files and a ticket reference." + }, + { + "inputJson": "{\"branchName\":\"dev\",\"commitMessage\":\"Fix bug in training loop\",\"changedFiles\":[\"train.py\"],\"authorName\":\"John Smith\"}", + "description": "Commit a bug fix in the training loop on the dev branch, specifying the author." + }, + { + "inputJson": "{\"branchName\":\"experiment\",\"commitMessage\":\"Initial commit for experiment branch\"}", + "description": "Create an initial commit on a new experiment branch without changed files or metadata." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "model-management.createAPI", + "description": "Creates a RESTful API endpoint to serve a deployed AI model. Accepts model identifier, API specifications like routes and methods, authentication options, and scaling preferences. Outputs the endpoint URL, status, and deployment details for integration into applications.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to be exposed via the API.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for the API endpoint, e.g., GET, POST.", + "required": true, + "defaultValue": "POST" + }, + { + "name": "endpointPath", + "type": "string", + "description": "URL path at which the API will be accessible, e.g., /predict.", + "required": true, + "defaultValue": "/predict" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether to enable authentication for API access.", + "required": false, + "defaultValue": "true" + }, + { + "name": "rateLimitPerMinute", + "type": "number", + "description": "Maximum number of API calls allowed per minute to prevent abuse.", + "required": false, + "defaultValue": "60" + }, + { + "name": "scalingOptions", + "type": "object", + "description": "Configuration object defining autoscaling parameters such as min and max number of replicas.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing API deployment status, access URL, and metadata such as authentication method and rate limiting." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically create and deploy an API endpoint that serves predictions from a specified AI model. It is ideal for integrating AI models into production systems where RESTful access and controlled usage are required.", + "limitations": "This tool does not train models or validate model correctness; it only exposes already deployed models as APIs. It assumes the modelId corresponds to a valid deployed model accessible in the environment.", + "examples": [ + "Create a POST /predict endpoint for modelId 'abc123' with authentication and rate limiting of 100 calls per minute.", + "Deploy an API endpoint GET /classify without authentication for model 'xyz789'.", + "Set up an autoscaling API endpoint with minimum 2 and maximum 10 replicas for model 'model456'." + ] + }, + "tags": [ + "model-management", + "api", + "deployment", + "rest", + "scaling", + "authentication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"httpMethod\":\"POST\",\"endpointPath\":\"/predict\",\"authenticationRequired\":true,\"rateLimitPerMinute\":100,\"scalingOptions\":{\"minReplicas\":2,\"maxReplicas\":8}}", + "description": "Create a secured POST /predict API for model 'abc123' with rate limiting and autoscaling between 2 and 8 replicas." + }, + { + "inputJson": "{\"modelId\":\"xyz789\",\"httpMethod\":\"GET\",\"endpointPath\":\"/classify\",\"authenticationRequired\":false}", + "description": "Deploy an open-access GET /classify API endpoint for model 'xyz789' with default scaling and rate limits." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "messaging.createEmail", + "description": "Creates a structured email message using provided recipients, subject, body content, attachments, and optional metadata. Accepts inputs for 'to', 'cc', 'bcc' addresses, plain text or HTML body, and attachments as base64 strings. Outputs a complete email object ready for sending through an SMTP or email API client.", + "category": "messaging", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of primary recipient email addresses for the email. Must be valid emails. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of carbon copy recipient email addresses. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of blind carbon copy recipient email addresses. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyPlain", + "type": "string", + "description": "Plain text version of the email body. At least one of bodyPlain or bodyHtml is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "HTML version of the email body for rich formatting. Optional but recommended for styled emails.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects containing filename and base64 encoded content. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "from", + "type": "string", + "description": "The sender's email address. Optional, defaults to configured default sender.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An email message object containing all fields formatted to be used with standard email sending protocols or APIs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate a complete and well-structured email message object for sending via an email server or API. Useful for customer support replies, notification generation, or automated outreach that require proper addressing, subject, body content, and optional attachments.", + "limitations": "This tool does not send the email; sending must be handled by a separate SMTP or email service integration. It also does not validate email deliverability or handle inline images beyond base64-encoded attachments.", + "examples": [ + "Generate an email to multiple recipients with both plain text and HTML body to notify about a scheduled maintenance.", + "Create an email with attachments sent to a client with a billing update.", + "Draft a simple email without attachments for a password reset confirmation." + ] + }, + "tags": [ + "messaging", + "email", + "create", + "communication", + "notifications", + "attachments" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Welcome to Our Service!\",\"bodyPlain\":\"Hello User,\\nThank you for signing up.\",\"bodyHtml\":\"<p>Hello User,</p><p>Thank you for signing up.</p>\"}", + "description": "Create a basic welcome email with both plain text and HTML body." + }, + { + "inputJson": "{\"to\":[\"client@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Invoice Attached\",\"bodyPlain\":\"Dear Client,\\nPlease find the invoice attached.\",\"attachments\":[{\"filename\":\"invoice.pdf\",\"content\":\"JVBERi0xLjQKJcfs...\"}]}", + "description": "Email to client with an invoice PDF attached and a CC to manager." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "email-communication.generateReport", + "description": "Generates a comprehensive email campaign report based on provided email sending data and metrics. Accepts filters like date range, campaign IDs, and metrics selection, processes email sending logs and engagement data, and produces a structured report summarizing delivery rates, open rates, click-through rates, bounce statistics, and unsubscribe counts.", + "category": "email-communication", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "Start date for the report in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the report in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignIds", + "type": "array", + "description": "List of campaign IDs to include in the report. If empty or omitted, includes all campaigns.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "array", + "description": "Array of metrics to include in the report, e.g., [\"deliveryRate\", \"openRate\", \"clickRate\", \"bounceRate\", \"unsubscribeCount\"].", + "required": false, + "defaultValue": "[\"deliveryRate\",\"openRate\",\"clickRate\",\"bounceRate\",\"unsubscribeCount\"]" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional grouping of report data such as 'daily', 'weekly', or 'campaign'.", + "required": false, + "defaultValue": "campaign" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated email campaign statistics, including totals and percentages for each selected metric, optionally grouped by the specified parameter." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate detailed performance reports for email campaigns over a specified time period. It helps summarize key engagement metrics quickly to support analytics, decision-making, or automated reporting.", + "limitations": "This tool cannot send emails or access real-time data streams; it relies on historical records and predefined metrics. It does not perform predictive analysis or handle data outside the specified campaign scope.", + "examples": [ + "Generate a weekly report on open and click rates for campaign IDs 123 and 456 between 2024-01-01 and 2024-01-07.", + "Create a monthly comprehensive report covering all email campaigns in February 2024 grouped by campaign.", + "Produce a daily summary of bounce and unsubscribe rates for campaign 789 from 2024-05-01 to 2024-05-05." + ] + }, + "tags": [ + "email", + "reporting", + "campaign", + "metrics", + "analytics", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"campaignIds\":[101,102],\"metrics\":[\"openRate\",\"clickRate\"],\"groupBy\":\"daily\"}", + "description": "Generate daily open and click rate metrics for campaigns 101 and 102 in January 2024." + }, + { + "inputJson": "{\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"campaignIds\":[],\"metrics\":[\"deliveryRate\",\"bounceRate\",\"unsubscribeCount\"],\"groupBy\":\"campaign\"}", + "description": "Generate delivery, bounce, and unsubscribe statistics for all campaigns in March 2024 by campaign." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "infrastructure-management.createReport", + "description": "Generates a comprehensive infrastructure report based on input parameters such as time range, resource types, and regions. The tool collects data from cloud or physical infrastructure monitoring services, processes metrics and logs, and outputs a structured document summarizing infrastructure health, performance, and alerts.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "startTime", + "type": "string", + "description": "ISO8601 UTC timestamp to define the start of the reporting period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO8601 UTC timestamp to define the end of the reporting period.", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceTypes", + "type": "array", + "description": "Array of resource type strings to include in the report (e.g., ['VM','Database','LoadBalancer']). If empty or omitted, all types are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "regions", + "type": "array", + "description": "Array of region identifiers to filter the report data. If empty or omitted, includes all regions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includePerformanceMetrics", + "type": "boolean", + "description": "Whether to include detailed performance metrics in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeAlerts", + "type": "boolean", + "description": "Whether to include recorded alerts and incidents in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated report document, e.g., 'pdf', 'html', or 'json'.", + "required": false, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report's metadata and the report content encoded as a base64 string or raw JSON depending on format. Contains fields for reportType, generatedAt timestamp, and reportData." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents automating infrastructure health checks, compliance reporting, or operational reviews. It helps generate snapshot reports on resource status, performance trends, and incidents over a specified timeframe and scope, enabling informed decision making or automated escalation.", + "limitations": "Does not perform real-time monitoring or alert detection; relies on historical collected data accessible to the agent's permissions. Does not modify infrastructure or resolve incidents, only reports.", + "examples": [ + "Create a weekly PDF report for all VMs and databases in the us-east-1 region including performance metrics and alerts.", + "Generate an HTML report for the last 24 hours covering all resource types and all regions without alerts.", + "Produce a JSON report summarizing load balancer performance metrics from the past month, excluding alerts." + ] + }, + "tags": [ + "infrastructure", + "reporting", + "cloud", + "monitoring", + "performance", + "alerts", + "automation" + ], + "examples": [ + { + "inputJson": "{\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T23:59:59Z\",\"resourceTypes\":[\"VM\",\"Database\"],\"regions\":[\"us-east-1\"],\"includePerformanceMetrics\":true,\"includeAlerts\":true,\"outputFormat\":\"pdf\"}", + "description": "Generate a PDF report for VMs and Databases in us-east-1 region for one week with metrics and alerts included." + }, + { + "inputJson": "{\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-01T23:59:59Z\",\"resourceTypes\":[],\"regions\":[],\"includePerformanceMetrics\":true,\"includeAlerts\":false,\"outputFormat\":\"html\"}", + "description": "Create an HTML report for all resources across all regions for one day including performance metrics but excluding alerts." + }, + { + "inputJson": "{\"startTime\":\"2024-05-15T00:00:00Z\",\"endTime\":\"2024-05-31T23:59:59Z\",\"resourceTypes\":[\"LoadBalancer\"],\"regions\":[\"eu-central-1\"],\"includePerformanceMetrics\":true,\"includeAlerts\":false,\"outputFormat\":\"json\"}", + "description": "Produce a JSON report of load balancer performance in eu-central-1 for the second half of May, excluding any alerts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "security-tools.analyzeAccount", + "description": "This tool analyzes the security posture of a user or service account by examining its permissions, recent activities, and compliance with defined security policies. It accepts account identifiers and optional scope parameters, processes logs and configuration data, and returns a detailed report highlighting vulnerabilities, risky permissions, anomalous behaviors, and policy violations.", + "category": "security-tools", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the account to analyze (e.g., user ID or service account name).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeActivityLogs", + "type": "boolean", + "description": "Whether to include recent activity logs in the analysis to detect anomalies.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeRangeDays", + "type": "number", + "description": "Number of past days to consider for activity and compliance analysis.", + "required": false, + "defaultValue": "30" + }, + { + "name": "policySet", + "type": "array", + "description": "List of security policy identifiers to evaluate the account against.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "permissionThresholdLevel", + "type": "string", + "description": "Risk level threshold for highlighting permissions (e.g., 'high', 'medium', 'low').", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including identified vulnerabilities, risky permissions, anomalous activities, compliance status, and actionable recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to assess the security risks associated with a specific account in an organization or system. It is ideal for detecting excessive permissions, suspicious login patterns, or compliance gaps to prevent potential breaches or misuse.", + "limitations": "This tool cannot remediate issues automatically; it provides analysis and recommendations only. It requires valid access to audit logs and permission data. It may not detect all novel or zero-day threats without updated policies and data.", + "examples": [ + "Analyze the security posture of user account 'john.doe' over the last 60 days including activity logs.", + "Assess if service account 'svc_backup' complies with the latest internal security policies.", + "Identify any high-risk permissions assigned to account ID 'user12345'." + ] + }, + "tags": [ + "security", + "account", + "analysis", + "permissions", + "anomaly-detection", + "compliance", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"john.doe\",\"includeActivityLogs\":true,\"timeRangeDays\":60}", + "description": "Analyze user 'john.doe' activity and permissions over last 60 days." + }, + { + "inputJson": "{\"accountId\":\"svc_backup\",\"policySet\":[\"policy_001\",\"policy_002\"],\"permissionThresholdLevel\":\"high\"}", + "description": "Evaluate 'svc_backup' service account against specified policies, focusing on high-risk permissions." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "security-tools.downloadFile", + "description": "Downloads a file from a specified URL with optional authentication and validation. Accepts parameters such as URL, destination path, HTTP headers, authentication tokens, and checksum for file integrity verification. The tool fetches the file, saves it locally, and returns status and metadata about the download operation.", + "category": "security-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The HTTPS URL of the file to download (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local file system path where the downloaded file will be saved (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "httpHeaders", + "type": "object", + "description": "Optional HTTP headers to include in the request, as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional bearer token for authenticated downloads.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for download before timing out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "verifyChecksum", + "type": "boolean", + "description": "Whether to verify the file integrity using checksum if provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "checksumValue", + "type": "string", + "description": "The expected checksum (e.g., SHA256) to verify against the downloaded file.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status, downloaded file path, file size in bytes, checksum of the downloaded file, and an optional error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to securely download files as part of automation or deployment pipelines, especially when files require authentication or integrity verification. Ideal for fetching configuration files, binaries, or patches in secure environments.", + "limitations": "Does not support FTP or non-HTTP protocols. Cannot handle resumable or chunked downloads. Checksum verification supports only basic string matching; actual checksum calculation depends on implementation.", + "examples": [ + "Download a public file from HTTPS URL to local path.", + "Download a file requiring Bearer token authentication.", + "Download a file and verify its SHA256 checksum." + ] + }, + "tags": [ + "download", + "security", + "file", + "https", + "authentication", + "checksum" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/file.zip\",\"destinationPath\":\"/tmp/file.zip\",\"httpHeaders\":{},\"authToken\":\"\",\"timeoutSeconds\":30,\"verifyChecksum\":false,\"checksumValue\":\"\"}", + "description": "Download a public file without authentication or checksum verification." + }, + { + "inputJson": "{\"url\":\"https://secure.example.com/data.json\",\"destinationPath\":\"/var/data/data.json\",\"httpHeaders\":{\"Accept\":\"application/json\"},\"authToken\":\"Bearer abcdef12345\",\"timeoutSeconds\":60,\"verifyChecksum\":false,\"checksumValue\":\"\"}", + "description": "Download a JSON file with Bearer token authentication and custom headers." + }, + { + "inputJson": "{\"url\":\"https://downloads.example.com/app.tar.gz\",\"destinationPath\":\"/apps/app.tar.gz\",\"httpHeaders\":{},\"authToken\":\"\",\"timeoutSeconds\":120,\"verifyChecksum\":true,\"checksumValue\":\"a3b8c9d4e5f67890123456789abcdef1234567890abcdef1234567890abcdef\"}", + "description": "Download a file and verify its SHA256 checksum for integrity." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "security-tools.analyzeText", + "description": "Analyzes input text to identify potential security risks by detecting sensitive information exposure, malicious content patterns, and code injection attempts. Accepts plain text input, scans for vulnerabilities or security concerns, and outputs a detailed report with findings and risk levels.", + "category": "security-tools", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input text content to be analyzed for security risks and vulnerabilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "scanForSensitiveData", + "type": "boolean", + "description": "When true, scans the text for sensitive data like passwords, API keys, or personal info.", + "required": false, + "defaultValue": "true" + }, + { + "name": "scanForMaliciousPatterns", + "type": "boolean", + "description": "When true, detects code injection patterns, phishing links, or malicious payloads.", + "required": false, + "defaultValue": "true" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "Minimum risk level (0-10) to include in the output report; lower values report more issues.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of findings, each detailing the risk type, description, location in text, and assigned risk level from 0 (safe) to 10 (critical). Also includes an overall risk summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically review text input (e.g., logs, messages, code snippets) for security concerns such as leakage of sensitive information or malicious code patterns, helping prioritize security response and compliance checks.", + "limitations": "Cannot guarantee detection of all possible security risks; deep context understanding is limited and it may produce false positives or negatives. Does not remediate issues, only reports findings.", + "examples": [ + "Analyze a customer's email for exposed password strings.", + "Scan incoming chat messages for possible phishing attempts.", + "Check a code snippet inserted by a user for potential injection risks." + ] + }, + "tags": [ + "security", + "text analysis", + "sensitive data detection", + "code injection", + "risk assessment", + "malicious content" + ], + "examples": [ + { + "inputJson": "{\"text\":\"User password is 'Secret123' and API key abcdef123456\"}", + "description": "Detect exposed passwords and API keys in text" + }, + { + "inputJson": "{\"text\":\"<script>alert('XSS')</script> Potential cross-site scripting attempt.\"}", + "description": "Detect malicious script injection patterns" + }, + { + "inputJson": "{\"text\":\"Please send me your bank account password immediately!\"}", + "description": "Flag social engineering phishing attempts in text" + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "security-tools.downloadCode", + "description": "Downloads source code files securely from a specified remote repository URL. Accepts repository details and authentication parameters, validates access, fetches requested code files or directories, and outputs the code archive or file list with metadata for further security analysis or deployment.", + "category": "security-tools", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The HTTPS or SSH URL of the remote code repository to download from.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchOrTag", + "type": "string", + "description": "The branch or tag name to download the code from. Defaults to repository default branch if not specified.", + "required": false, + "defaultValue": "main" + }, + { + "name": "filePaths", + "type": "array", + "description": "An optional list of file or directory paths within the repository to download. Downloads entire repository if empty.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional personal access token or credentials encoded string for private repository authentication.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSubmodules", + "type": "boolean", + "description": "Whether to recursively download git submodules if they exist.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the downloaded code output: 'zip' archive or 'tar' archive.", + "required": false, + "defaultValue": "zip" + } + ], + "returns": { + "type": "object", + "description": "Returns the download result containing a binary archive of the requested code files along with metadata including repository info, branch/tag, file listing, and integrity hash." + }, + "aiAgent": { + "useCase": "Use this tool whenever an AI agent needs to retrieve source code securely from a version-controlled repository for security assessment, staging, or deployment automation. It supports private and public repositories and selective file downloads, ensuring controlled and authenticated access.", + "limitations": "The tool cannot run code, perform vulnerability analysis, or handle repositories requiring interactive multi-factor authentication beyond token-based methods.", + "examples": [ + "Download the latest code from the main branch of a public GitHub repository.", + "Download specific directories from a private repository using an authentication token.", + "Fetch entire repository code as a zip archive including git submodules." + ] + }, + "tags": [ + "download", + "code", + "repository", + "security", + "fetch", + "git", + "source" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"branchOrTag\":\"develop\",\"filePaths\":[\"src\",\"README.md\"],\"authenticationToken\":\"\",\"includeSubmodules\":false,\"outputFormat\":\"zip\"}", + "description": "Download the 'src' directory and 'README.md' file from the 'develop' branch of a public GitHub repository as a zip archive." + }, + { + "inputJson": "{\"repositoryUrl\":\"git@github.com:example/private-repo.git\",\"branchOrTag\":\"release-v1.0\",\"filePaths\":[],\"authenticationToken\":\"ghp_abc123token\",\"includeSubmodules\":true,\"outputFormat\":\"tar\"}", + "description": "Download the entire 'release-v1.0' tagged code from a private repository including submodules, authenticating with a personal access token, output as tar archive." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "security-tools.uploadFile", + "description": "Uploads a file to a secured storage location with optional encryption and virus scanning. The tool accepts file content, filename, and security preferences, processes the file by scanning for malware and applying encryption if requested, then returns a status report including a secure URL for accessing the uploaded file.", + "category": "security-tools", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "Base64 encoded content of the file to be uploaded", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the file including extension", + "required": true, + "defaultValue": "" + }, + { + "name": "encrypt", + "type": "boolean", + "description": "Whether to encrypt the file before storage", + "required": false, + "defaultValue": "false" + }, + { + "name": "scanForViruses", + "type": "boolean", + "description": "Whether to perform a virus scan on the uploaded file", + "required": false, + "defaultValue": "true" + }, + { + "name": "accessPermissions", + "type": "string", + "description": "Access level assigned to the file (e.g., 'private', 'public', 'restricted')", + "required": false, + "defaultValue": "private" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata to associate with the file", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, secure file URL, and scan and encryption results" + }, + "aiAgent": { + "useCase": "Use this tool when you need to securely upload files into a protected environment, ensuring that files are checked for malware and optionally encrypted before storage. Ideal for applications requiring file uploads with security and access management functionalities.", + "limitations": "This tool does not handle large file chunked uploads explicitly, nor does it provide detailed virus scanning report details beyond pass/fail status. It relies on underlying storage infrastructure for durability and access control enforcement.", + "examples": [ + "Upload a user profile picture with encryption enabled and private access.", + "Upload a document without encryption but require a virus scan and make it publicly accessible.", + "Upload a log file with metadata indicating source system and restrict access to internal users only." + ] + }, + "tags": [ + "upload", + "file", + "security", + "encryption", + "virus-scan", + "access-control", + "storage" + ], + "examples": [ + { + "inputJson": "{\"fileContent\":\"VGhpcyBpcyBhIHRlc3QgZmlsZSBjb250ZW50Lg==\",\"fileName\":\"test.txt\",\"encrypt\":true,\"scanForViruses\":true,\"accessPermissions\":\"private\",\"metadata\":{\"uploadedBy\":\"user123\",\"purpose\":\"test upload\"}}", + "description": "Upload a text file with encryption and virus scanning enabled, private access, including metadata." + }, + { + "inputJson": "{\"fileContent\":\"c29tZSBiaW5hcnkgZGF0YQ==\",\"fileName\":\"image.jpg\",\"encrypt\":false,\"scanForViruses\":true,\"accessPermissions\":\"public\"}", + "description": "Upload an image file with virus scanning enabled but no encryption, accessible publicly." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "security-tools.formatCode", + "description": "Formats source code snippets with customizable style options to improve readability and maintain coding standards. Accepts raw code and optional language and style preferences, and returns formatted code adhering to specified or default formatting rules.", + "category": "security-tools", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "Raw source code text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code to apply appropriate syntax formatting (e.g., 'javascript', 'python').", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Name of the style guide to apply (e.g., 'Google', 'PEP8', 'Airbnb'). If empty, a default formatting style is used.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "tabWidth", + "type": "number", + "description": "Number of spaces per indentation level.", + "required": false, + "defaultValue": "4" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs for indentation instead of spaces.", + "required": false, + "defaultValue": "false" + }, + { + "name": "semiColons", + "type": "boolean", + "description": "For applicable languages, whether to end statements with semicolons.", + "required": false, + "defaultValue": "true" + }, + { + "name": "printWidth", + "type": "number", + "description": "Maximum line length before code is wrapped to the next line.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string and optionally errors if formatting failed." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw source code that needs to be automatically reformatted to improve readability, maintainability, or enforce style guidelines before integration, review, or deployment. It helps standardize code appearance across teams and reduces style-related issues.", + "limitations": "This tool cannot detect or fix semantic code errors or security vulnerabilities. It only reformats code style, relying on the correctness of the input code and cannot support unsupported or unknown languages.", + "examples": [ + "Format a JavaScript snippet to Airbnb style guide conventions.", + "Reformat Python code using PEP8 with 2-space indentation.", + "Apply default styling to a raw HTML snippet without specifying a style guide." + ] + }, + "tags": [ + "formatting", + "code", + "security", + "style", + "code-quality", + "code-style" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function foo(){console.log('bar')}\",\"language\":\"javascript\",\"styleGuide\":\"Airbnb\",\"tabWidth\":2,\"useTabs\":false,\"semiColons\":true,\"printWidth\":80}", + "description": "Format JS function according to Airbnb style with 2 spaces indentation." + }, + { + "inputJson": "{\"code\":\"def my_function():\\nprint(\\\"Hello World\\\")\",\"language\":\"python\",\"styleGuide\":\"PEP8\",\"tabWidth\":4,\"useTabs\":false}", + "description": "Format Python function to PEP8 style with 4 space indentation." + }, + { + "inputJson": "{\"code\":\"<html><body><h1>Title</h1></body></html>\",\"language\":\"html\"}", + "description": "Format basic HTML code snippet without specific style guide." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "security-tools.formatEmail", + "description": "Formats and sanitizes email content to comply with security best practices. It accepts raw email body text along with optional headers and formats the email by escaping HTML characters, removing potentially malicious scripts, optionally enforcing plain text formatting, and standardizing header fields. The output is a securely formatted email object ready for safe sending or storage.", + "category": "security-tools", + "parameters": [ + { + "name": "emailBody", + "type": "string", + "description": "The raw content of the email body that needs to be formatted and sanitized.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional email headers (e.g., From, To, Subject) to format and standardize.", + "required": false, + "defaultValue": "" + }, + { + "name": "enforcePlainText", + "type": "boolean", + "description": "If true, converts all email content to plain text, stripping HTML tags to enhance security.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sanitizeScripts", + "type": "boolean", + "description": "If true, removes or neutralizes all script tags and event handlers to prevent XSS attacks in email content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxContentLength", + "type": "number", + "description": "Maximum allowed length for the email body content; longer content will be truncated to this length.", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "The sanitized and formatted email object, including cleaned headers and safe, optionally plain-text email body content." + }, + "aiAgent": { + "useCase": "Use this tool when preparing emails for sending or storage to ensure the content is secure against injection attacks and formatted according to security standards. It is especially useful when handling user-generated email content or templated emails where HTML and scripts may be present, to prevent script-based vulnerabilities.", + "limitations": "Does not perform spam filtering, content validation against legal policies, or handle email transport protocols. It focuses solely on formatting and sanitizing the content for security.", + "examples": [ + "Format a user-generated HTML email for safe sending by removing scripts and enforcing plain text.", + "Sanitize email body and standardize headers for logging purposes in a security-conscious system.", + "Truncate overly long email contents while preserving safe formatting for notifications." + ] + }, + "tags": [ + "security", + "email", + "formatting", + "sanitization", + "XSS", + "content-safety", + "emailHeaders" + ], + "examples": [ + { + "inputJson": "{\"emailBody\":\"<h1>Welcome!</h1><script>alert('xss')</script>\",\"headers\":{\"From\":\"user@example.com\",\"To\":\"recipient@example.com\",\"Subject\":\"Test\"},\"enforcePlainText\":true}", + "description": "Convert HTML email with malicious script to safe plain text format, removing scripts and standardizing headers." + }, + { + "inputJson": "{\"emailBody\":\"<p>Hello, check this out!<img src='image.jpg' onerror='alert(1)'></p>\",\"headers\":{\"Subject\":\"Hello\"},\"sanitizeScripts\":true}", + "description": "Sanitize HTML email content by removing event handlers and scripts while keeping HTML tags intact." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "security-tools.buildFunction", + "description": "This tool generates secure, parameterized functions in JavaScript for common security-sensitive operations such as input validation, encryption, decryption, hashing, or access control. It accepts a function type and configuration options, then outputs vetted code snippets ready to integrate with secure applications.", + "category": "security-tools", + "parameters": [ + { + "name": "functionType", + "type": "string", + "description": "Type of security function to build (e.g., 'hashing', 'encryption', 'inputValidation').", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the output function code (e.g., 'JavaScript', 'Python').", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "configOptions", + "type": "object", + "description": "Configuration options specific to the function type, such as hash algorithm or encryption key.", + "required": false, + "defaultValue": "" + }, + { + "name": "useAsync", + "type": "boolean", + "description": "Whether to generate the function as asynchronous (useful for crypto operations).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function code as a string, and metadata including function name, description, and any dependencies." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate secure and standardized function code snippets for common security tasks such as encryption, hashing, or input validation, especially useful to quickly scaffold a secure function in your application codebase.", + "limitations": "The tool generates code for common, predefined security function types; it cannot create custom complex security protocols or audit existing code for vulnerabilities.", + "examples": [ + "Generate a JavaScript hashing function using SHA-256.", + "Build an asynchronous encryption function in JavaScript with AES-256.", + "Create a synchronous input validation function for email addresses in JavaScript." + ] + }, + "tags": [ + "security", + "code-generation", + "function-builder", + "encryption", + "hashing", + "validation" + ], + "examples": [ + { + "inputJson": "{\"functionType\":\"hashing\",\"language\":\"JavaScript\",\"configOptions\":{\"algorithm\":\"sha256\"},\"useAsync\":false}", + "description": "Generate a synchronous JavaScript function for SHA-256 hashing." + }, + { + "inputJson": "{\"functionType\":\"encryption\",\"language\":\"JavaScript\",\"configOptions\":{\"algorithm\":\"aes-256-cbc\",\"key\":\"your-256-bit-secret\"},\"useAsync\":true}", + "description": "Generate an asynchronous JavaScript AES-256-CBC encryption function." + }, + { + "inputJson": "{\"functionType\":\"inputValidation\",\"language\":\"JavaScript\",\"configOptions\":{\"validationType\":\"email\"},\"useAsync\":false}", + "description": "Generate a synchronous JavaScript function for validating email addresses." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "security-tools.generateWord", + "description": "Generates a secure, random word suitable for use in passwords, passphrases, or security tokens. Accepts parameters to specify desired length, character sets (letters, digits, symbols), and complexity requirements. Outputs a random word string that meets the specified security criteria.", + "category": "security-tools", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Desired length of the generated word, must be between 4 and 64 characters.", + "required": true, + "defaultValue": "12" + }, + { + "name": "includeUppercase", + "type": "boolean", + "description": "Whether to include uppercase letters in the generated word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDigits", + "type": "boolean", + "description": "Whether to include numeric digits in the generated word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSymbols", + "type": "boolean", + "description": "Whether to include symbols/special characters in the generated word.", + "required": false, + "defaultValue": "false" + }, + { + "name": "mustStartWithLetter", + "type": "boolean", + "description": "If true, the word will always start with a letter to improve usability while maintaining security.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Contains the randomly generated secure word as a string." + }, + "aiAgent": { + "useCase": "Use this tool when generating strong, human-readable secure words or tokens for authentication, password creation, or cryptographic keys that require customizable complexity and length. It helps prevent weak or guessable passwords by ensuring randomness and complexity parameters.", + "limitations": "This tool generates single words only, not multi-word passphrases. It does not assess the semantic meaning or dictionary presence of the word, so some generated words may unintentionally form dictionary words or nonsensical strings.", + "examples": [ + "Generate a 16-character secure password including uppercase, digits and symbols.", + "Create a 10-character word starting with a letter and including digits but no symbols.", + "Generate a 12-character secure token with letters and digits only." + ] + }, + "tags": [ + "security", + "password", + "token", + "random", + "word", + "generation", + "credentials" + ], + "examples": [ + { + "inputJson": "{\"length\":16,\"includeUppercase\":true,\"includeDigits\":true,\"includeSymbols\":true,\"mustStartWithLetter\":true}", + "description": "Generate a 16-character secure password including uppercase letters, digits, and symbols." + }, + { + "inputJson": "{\"length\":10,\"includeUppercase\":true,\"includeDigits\":true,\"includeSymbols\":false,\"mustStartWithLetter\":true}", + "description": "Generate a 10-character word starting with a letter, including digits but no symbols." + }, + { + "inputJson": "{\"length\":12,\"includeUppercase\":true,\"includeDigits\":false,\"includeSymbols\":false,\"mustStartWithLetter\":true}", + "description": "Generate a 12-character secure word with letters only, starting with a letter." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "security-tools.generateTest", + "description": "Generates automated security test scripts based on specified input parameters such as target application type, security focus area (e.g., authentication, input validation), and testing framework. It outputs ready-to-run test code snippets or full test files to aid developers in automating security testing and improving code robustness.", + "category": "security-tools", + "parameters": [ + { + "name": "applicationType", + "type": "string", + "description": "The type of target application (e.g., web, API, mobile) to tailor the security test accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFocus", + "type": "string", + "description": "The specific security aspect to test, such as 'authentication', 'authorization', 'inputValidation', or 'sessionManagement'.", + "required": true, + "defaultValue": "" + }, + { + "name": "testingFramework", + "type": "string", + "description": "The preferred testing framework or language (e.g., Jest, Mocha, Pytest) for generating the test code.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeExploitPayloads", + "type": "boolean", + "description": "Whether to include simulated exploit payloads to test vulnerability handling.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated test code output, e.g., 'codeSnippet' or 'fullTestFile'.", + "required": false, + "defaultValue": "codeSnippet" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test script code as a string, plus metadata about the test such as language and test focus." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assist developers or security engineers by auto-generating practical security test code for various application types and security aspects. It helps automate creation of security test cases, accelerating vulnerability detection in software development lifecycle.", + "limitations": "Cannot fully replace expert security audits or perform dynamic runtime security testing; limited to generating static test scripts based on input parameters. Generated tests may require manual review and environment setup.", + "examples": [ + "Generate a Jest test code snippet to test authentication security in a web application, including exploit payloads.", + "Create a full Pytest file focusing on input validation testing for an API application without exploit payloads." + ] + }, + "tags": [ + "security", + "test-generation", + "automation", + "code", + "security-testing", + "devsecops" + ], + "examples": [ + { + "inputJson": "{\"applicationType\":\"web\",\"testFocus\":\"authentication\",\"testingFramework\":\"Jest\",\"includeExploitPayloads\":true,\"outputFormat\":\"codeSnippet\"}", + "description": "Generate a Jest test code snippet for authentication security tests with exploit payloads for a web application." + }, + { + "inputJson": "{\"applicationType\":\"API\",\"testFocus\":\"inputValidation\",\"testingFramework\":\"Pytest\",\"includeExploitPayloads\":false,\"outputFormat\":\"fullTestFile\"}", + "description": "Generate a full Pytest test file focusing on input validation for an API application without exploit payloads." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "security-tools.createAccount", + "description": "Creates a secure user account by accepting details such as username, password, roles, and optional metadata. The tool validates input, hashes the password securely, assigns roles, and outputs a structured account object with a unique identifier and creation timestamp, ready for storage or further processing.", + "category": "security-tools", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "Unique username for the new account", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Plain text password to be securely hashed and stored", + "required": true, + "defaultValue": "" + }, + { + "name": "roles", + "type": "array", + "description": "Array of roles assigned to the user account", + "required": false, + "defaultValue": "[\"user\"]" + }, + { + "name": "email", + "type": "string", + "description": "Optional email address associated with the account", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional key-value data to store with the account", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created account's unique ID, username, hashed password, assigned roles, email if provided, metadata, and created timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create secure user accounts with proper password hashing and role assignment, ensuring standardized account records for authentication and authorization in applications or systems.", + "limitations": "Does not handle sending confirmation emails or multifactor authentication setup; assumes password meets security policies enforced elsewhere.", + "examples": [ + "Create a new user account with username, password, and default user role.", + "Create an admin account by specifying multiple roles and including metadata.", + "Add an email address and custom metadata when creating an account." + ] + }, + "tags": [ + "security", + "account-management", + "user-creation", + "authentication", + "authorization" + ], + "examples": [ + { + "inputJson": "{\"username\":\"jdoe\",\"password\":\"S3cur3Pass!\",\"roles\":[\"user\"]}", + "description": "Basic user account creation with default role." + }, + { + "inputJson": "{\"username\":\"admin01\",\"password\":\"Adm1nPass!\",\"roles\":[\"admin\",\"user\"],\"email\":\"admin@example.com\"}", + "description": "Admin account creation with multiple roles and email." + }, + { + "inputJson": "{\"username\":\"alice\",\"password\":\"AlicePass123\",\"metadata\":{\"department\":\"sales\",\"location\":\"NYC\"}}", + "description": "User account with additional metadata fields." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "security-tools.createCommit", + "description": "Creates a secure and properly formatted Git commit with optional signing. It accepts details like commit message, author info, branch target, files to include, and GPG signing options. The tool processes these inputs to generate a commit object or error feedback, ensuring best practices in code versioning and security.", + "category": "security-tools", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "The descriptive message explaining the commit changes, recommended to follow conventional commits.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "The full name of the author making the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "The email address of the author, used in commit metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The target branch where the commit will be applied; defaults to the current branch if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "filesChanged", + "type": "array", + "description": "List of file paths to include in the commit; supports new, modified, and deleted files.", + "required": true, + "defaultValue": "" + }, + { + "name": "signCommit", + "type": "boolean", + "description": "Indicates if the commit should be signed using a GPG key.", + "required": false, + "defaultValue": "false" + }, + { + "name": "gpgKeyId", + "type": "string", + "description": "The identifier of the GPG key to sign the commit with; required if signCommit is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the commit hash, summary, and status information indicating success or details of failure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to perform automated, secure commits to a code repository with proper metadata, including author info and optional signing, ensuring codebase integrity and traceability.", + "limitations": "This tool does not handle pushing commits to remote repositories or resolving merge conflicts; it assumes that file changes are already staged and does not validate file contents beyond their paths.", + "examples": [ + "Create a commit with message, author details, on main branch including changed files without signing.", + "Create a signed commit on feature-branch using specified GPG key for secure audit-proof commits.", + "Generate a commit on default branch with a conventional commit message for automated changelog generation." + ] + }, + "tags": [ + "security", + "git", + "commit", + "version-control", + "signing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"fix: resolve race condition in auth module\",\"authorName\":\"Alex Johnson\",\"authorEmail\":\"alex.johnson@example.com\",\"branchName\":\"main\",\"filesChanged\":[\"src/auth.js\",\"tests/auth.test.js\"],\"signCommit\":false,\"gpgKeyId\":\"\"}", + "description": "Create a standard commit on main branch with multiple file changes and no signing." + }, + { + "inputJson": "{\"commitMessage\":\"feat: add multi-factor authentication support\",\"authorName\":\"Maria Gomez\",\"authorEmail\":\"maria.gomez@example.com\",\"branchName\":\"feature/mfa\",\"filesChanged\":[\"src/mfa.js\",\"config/security.yaml\"],\"signCommit\":true,\"gpgKeyId\":\"ABC123DEF456\"}", + "description": "Create a signed commit on feature branch implementing multi-factor authentication." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "customer-support.createCustomer", + "description": "Creates a new customer profile in the customer support system. Accepts customer details such as name, email, phone, address, and optional metadata. Validates input, stores the customer record, and returns a summary including a unique customer ID and confirmation of successful creation.", + "category": "customer-support", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "Customer's first name", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "Customer's last name", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Customer's email address, used for contact and identification", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Customer's phone number, formatted with country code", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Customer's address details including street, city, state, postal code, and country", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs of additional customer attributes or tags", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns the new customer's unique identifier, creation timestamp, and a status message indicating success or error details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to register or onboard a new customer within the customer support platform, such as when a customer first contacts support or is added manually by agents. It ensures customer data is captured in the system for tracking inquiries and service records.", + "limitations": "It does not handle updating existing customers or deleting records. Validation is limited to format and required fields; deeper verification (e.g., email confirmation) must be done separately.", + "examples": [ + "Create a new customer profile with basic contact info to initiate a support ticket.", + "Add optional address details when registering a customer for personalized service.", + "Include additional metadata like customer preferences or account type when creating the profile." + ] + }, + "tags": [ + "customer-support", + "create", + "customer-management", + "onboarding", + "crm" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\"}", + "description": "Basic customer creation with mandatory fields only." + }, + { + "inputJson": "{\"firstName\":\"Mark\",\"lastName\":\"Smith\",\"email\":\"mark.smith@example.com\",\"phoneNumber\":\"+1234567890\",\"address\":{\"street\":\"123 Elm St\",\"city\":\"Somewhere\",\"state\":\"CA\",\"postalCode\":\"90210\",\"country\":\"USA\"}}", + "description": "Customer creation including phone number and full address." + }, + { + "inputJson": "{\"firstName\":\"Lucy\",\"lastName\":\"Jones\",\"email\":\"lucy.jones@example.com\",\"metadata\":{\"loyaltyTier\":\"Gold\",\"preferredContact\":\"email\"}}", + "description": "Customer profile with additional metadata for personalized service." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "documentation-tools.analyzeWord", + "description": "Analyzes a single word within documentation content to extract linguistic and contextual properties. Accepts a word string and optional context text to determine parts of speech, frequency, readability impact, and suggested synonyms. Outputs a detailed analysis object useful for refining documentation clarity and consistency.", + "category": "documentation-tools", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single word text to analyze within documentation.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextText", + "type": "string", + "description": "Optional surrounding text to provide context for analysis (e.g., sentence or paragraph).", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the text (e.g., 'en' for English) to adapt analysis accordingly.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSynonyms", + "type": "boolean", + "description": "Whether to return suggested synonyms for the word to improve clarity or variation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing linguistic properties such as part of speech, usage frequency, readability impact score, and optional synonyms array." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate or improve individual word usage within documentation, such as checking if a word is appropriate, frequently used, or impacts readability, along with getting synonym suggestions for variety or clarity.", + "limitations": "This tool analyzes only a single word and its immediate context, and does not replace full document semantic analysis or style guideline enforcement.", + "examples": [ + "Analyze the word 'optimize' in a software documentation paragraph.", + "Check the part of speech and synonyms for 'performance' in English documentation.", + "Determine if 'utilize' negatively affects readability in given technical text." + ] + }, + "tags": [ + "documentation", + "analysis", + "word", + "linguistics", + "clarity", + "synonyms", + "readability" + ], + "examples": [ + { + "inputJson": "{\"word\":\"optimize\",\"contextText\":\"To optimize your code for better performance, consider refactoring critical functions.\",\"language\":\"en\",\"includeSynonyms\":true}", + "description": "Analyzes the word 'optimize' in a sample sentence to determine its part of speech and provide synonyms." + }, + { + "inputJson": "{\"word\":\"performance\",\"contextText\":\"Performance metrics are crucial for monitoring software health.\",\"language\":\"en\",\"includeSynonyms\":false}", + "description": "Analyzes the word 'performance' with context but without requesting synonyms." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "documentation-tools.uploadDocument", + "description": "Uploads a document file to a documentation management system. Accepts inputs such as document content (file path or base64), document metadata (title, author, tags), and destination folder. Processes the upload by validating inputs and storing the document, returning a confirmation including document ID and upload status.", + "category": "documentation-tools", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "Path to the document file or base64 encoded content to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title of the document, used for identification and display.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the author or uploader of the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords associated with the document for categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "destinationFolder", + "type": "string", + "description": "The target folder or path within the documentation system where the document should be uploaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating if an existing document with the same title should be overwritten.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object confirming the upload operation containing the new document's unique ID, status message, and any errors encountered." + }, + "aiAgent": { + "useCase": "This tool should be used whenever an AI agent needs to programmatically upload or update documentation files in a managed documentation repository or platform. It is ideal for automating documentation publishing, batch uploads of multiple files, or updating existing files while preserving metadata.", + "limitations": "Does not handle document editing or parsing of document content. It assumes input documents are valid and supported file types. Does not manage version history beyond overwrite flag.", + "examples": [ + "Upload a new user manual PDF to the 'Products' documentation folder with tags 'manual', 'productX'.", + "Update an existing specification document by overwriting it with a newer version and logging the new author.", + "Upload multiple markdown files for release notes, setting author and categorizing by tags." + ] + }, + "tags": [ + "upload", + "documentation", + "file-management", + "metadata", + "automation", + "document-management" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"/path/to/user-manual.pdf\",\"title\":\"User Manual Product X\",\"author\":\"Jane Doe\",\"tags\":[\"manual\",\"productX\"],\"destinationFolder\":\"/Products/Manuals/\",\"overwriteExisting\":false}", + "description": "Upload a new user manual PDF with relevant tags and author information to the product manuals folder." + }, + { + "inputJson": "{\"documentContent\":\"/path/to/specification_v2.docx\",\"title\":\"API Specification\",\"author\":\"John Smith\",\"tags\":[\"api\",\"specification\"],\"destinationFolder\":\"/Specs/\",\"overwriteExisting\":true}", + "description": "Overwrite an existing API specification document with a new version and update the author." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "documentation-tools.buildFunction", + "description": "This tool generates detailed documentation for a single function based on provided function signature, description, parameters, and optionally examples. It processes these inputs to produce a structured, well-formatted documentation snippet suitable for codebases and API docs.", + "category": "documentation-tools", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The name of the function to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionDescription", + "type": "string", + "description": "A clear, concise description summarizing the function's purpose and behavior.", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "An array of parameter objects each with name, type, and description for the function arguments.", + "required": true, + "defaultValue": "" + }, + { + "name": "returnType", + "type": "string", + "description": "The data type or description of the function's return value.", + "required": true, + "defaultValue": "" + }, + { + "name": "returnDescription", + "type": "string", + "description": "A brief explanation of what the function returns.", + "required": false, + "defaultValue": "" + }, + { + "name": "examples", + "type": "array", + "description": "Optional array of usage example objects including code snippets and explanations.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function documentation as a string suitable for embedding in documentation files or code comments, plus optional metadata like markdown format." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to automatically generate comprehensive and standardized documentation for code functions from partial information. It helps programmers maintain clear docs, improve onboardings, and increase codebase comprehensibility.", + "limitations": "It cannot reverse-engineer undocumented function behavior or verify code correctness; relies entirely on provided inputs for accuracy.", + "examples": [ + "Generate documentation for a utility function that formats dates.", + "Create doc for a function with multiple parameters and a return value.", + "Build documentation snippet for API endpoint handler function." + ] + }, + "tags": [ + "documentation", + "function", + "code-docs", + "developer-tools", + "automation" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"calculateSum\",\"functionDescription\":\"Calculates the sum of two numbers.\",\"parameters\":[{\"name\":\"a\",\"type\":\"number\",\"description\":\"First number to add.\"},{\"name\":\"b\",\"type\":\"number\",\"description\":\"Second number to add.\"}],\"returnType\":\"number\",\"returnDescription\":\"The sum of the two input numbers.\",\"examples\":[{\"code\":\"calculateSum(2, 3)\",\"description\":\"Returns 5\"}]}", + "description": "Document a simple addition function with two parameters and a numeric return." + }, + { + "inputJson": "{\"functionName\":\"fetchUserData\",\"functionDescription\":\"Fetches user data based on user ID asynchronously.\",\"parameters\":[{\"name\":\"userId\",\"type\":\"string\",\"description\":\"Unique identifier of the user.\"}],\"returnType\":\"Promise<object>\",\"returnDescription\":\"A promise that resolves with the user data object.\",\"examples\":[{\"code\":\"fetchUserData('abc123').then(data => console.log(data))\",\"description\":\"Logs user data for user with ID 'abc123'.\"}]}", + "description": "Document an async function fetching user data by ID, returning a Promise resolving with an object." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "data-transformation.createCode", + "description": "Generates source code snippets based on specified input data structures, programming language, and code pattern preferences. Accepts structured data definitions or sample inputs, processes them to create relevant code such as class definitions, data parsers, or serializers, and outputs the generated code as text in the requested programming language.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured data or schema defining the data elements and types to be used as the basis for code generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Target programming language for the generated code (e.g., JavaScript, Python, Java, C#).", + "required": true, + "defaultValue": "" + }, + { + "name": "codePattern", + "type": "string", + "description": "Type of code to generate, such as 'class', 'function', 'parser', 'serializer', or 'dataModel'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code for clarity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "namingConvention", + "type": "string", + "description": "Preferred naming convention for identifiers: camelCase, PascalCase, snake_case, etc.", + "required": false, + "defaultValue": "camelCase" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for code indentation to format the output code accordingly.", + "required": false, + "defaultValue": "4" + } + ], + "returns": { + "type": "object", + "description": "The generated source code as a string along with metadata including language and code type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate code components from defined data structures, such as creating class models from JSON schema, generating serializer functions, or producing example functions in a specified language. It is especially useful for rapid prototyping or scaffold code generation based on data definitions.", + "limitations": "Cannot generate complex business logic or algorithmic code beyond the specified patterns; code may require manual refinement for optimization or integration; supports only preset languages and code patterns.", + "examples": [ + "Generate a Python data class from a JSON schema describing user data.", + "Create a JavaScript function to serialize an object into a URL query string.", + "Produce C# class definitions from a structured data model for database entities." + ] + }, + "tags": [ + "code generation", + "data transformation", + "programming", + "scaffolding", + "serialization", + "parsing" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"fields\":[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"name\",\"type\":\"string\"}]},\"language\":\"Python\",\"codePattern\":\"class\",\"includeComments\":true,\"namingConvention\":\"snake_case\",\"indentationSpaces\":4}", + "description": "Generate a Python class with snake_case naming and comments from given field data." + }, + { + "inputJson": "{\"inputData\":{\"fields\":[{\"name\":\"userId\",\"type\":\"int\"},{\"name\":\"email\",\"type\":\"string\"}]},\"language\":\"JavaScript\",\"codePattern\":\"serializer\",\"includeComments\":false,\"namingConvention\":\"camelCase\",\"indentationSpaces\":2}", + "description": "Create a JavaScript serializer function without comments that converts the object to JSON." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "data-transformation.createDocument", + "description": "Creates a formatted document file (PDF, DOCX, or TXT) from structured content input. Accepts content as plain text or structured data, applies optional styling and metadata, and outputs a downloadable document file encoded as base64.", + "category": "data-transformation", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main textual content or structured content in simple markup (e.g., markdown) to include in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The format of the output document file. Supported values: 'pdf', 'docx', 'txt'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to set in the document metadata and as heading inside the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to set in the document metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "styles", + "type": "object", + "description": "Optional styles such as font name, size, and color given as keys (fontName, fontSize, fontColor).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "If true and format supports it, include a table of contents based on headings in the content.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated document file encoded as base64 string along with MIME type and suggested file name." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a formatted document file from text or structured content for download, sharing, or archiving in PDF, DOCX, or plain text formats. Useful for reports, letters, summaries, or any content that benefits from conversion into common document formats.", + "limitations": "This tool does not support complex multimedia content such as embedded videos or advanced interactive elements. Styling options are basic and do not cover full feature sets of document editors.", + "examples": [ + "Generate a PDF report from a markdown summary.", + "Create a DOCX letter document with author metadata.", + "Produce a plain text file from raw textual notes." + ] + }, + "tags": [ + "document", + "creation", + "formatting", + "pdf", + "docx", + "text", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"content\":\"# Report\\nThis is the summary of Q1 results.\",\"format\":\"pdf\",\"title\":\"Q1 Report\",\"author\":\"Jane Doe\",\"styles\":{\"fontName\":\"Arial\",\"fontSize\":12,\"fontColor\":\"#000000\"},\"includeTableOfContents\":true}", + "description": "Create a styled PDF report document with title, author, and table of contents from markdown content." + }, + { + "inputJson": "{\"content\":\"Dear Customer,\\nThank you for your purchase.\",\"format\":\"docx\",\"title\":\"Thank You Letter\",\"author\":\"Sales Team\",\"styles\":{\"fontName\":\"Times New Roman\",\"fontSize\":14},\"includeTableOfContents\":false}", + "description": "Generate a DOCX letter document with author metadata and specific font styles." + }, + { + "inputJson": "{\"content\":\"Meeting notes:\\n- Discuss project timeline\\n- Assign tasks\",\"format\":\"txt\"}", + "description": "Produce a plain text file of meeting notes without additional formatting." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "etl-processes.sendEmail", + "description": "Sends an email with specified recipients, subject, body content, and optional attachments. Accepts structured input including sender, multiple recipients, CC, BCC, plain text and HTML content, and attachments as file data or URLs. Processes and sends the email using configured SMTP or API, returning status and message ID if successful.", + "category": "etl-processes", + "parameters": [ + { + "name": "from", + "type": "string", + "description": "Sender email address.", + "required": true, + "defaultValue": "" + }, + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of CC (carbon copy) recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of BCC (blind carbon copy) recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "The email subject line.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Plain text content of the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "HTML content of the email body, if any.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects, each including filename and base64 or URL data.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, message ID if sent, and error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an automated workflow requires sending notification or transactional emails after extracting or transforming data, such as sending report results, alerts, or confirmations. It can handle multiple recipients, attachments, and HTML email content.", + "limitations": "Cannot validate email addresses format beyond basic checks, nor guarantee delivery as that depends on external SMTP or email service providers. Does not support inline images or advanced email templates with variable substitution.", + "examples": [ + "Send a summary report email to a team with attached PDF.", + "Send a password reset email with HTML formatting to a single recipient.", + "Send notification emails in bulk with different CC and BCC recipients." + ] + }, + "tags": [ + "email", + "communication", + "notification", + "transactional", + "attachments", + "HTML" + ], + "examples": [ + { + "inputJson": "{\"from\":\"no-reply@example.com\",\"to\":[\"user1@example.com\",\"user2@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[],\"subject\":\"Monthly Report\",\"bodyText\":\"Please find the monthly report attached.\",\"bodyHtml\":\"<p>Please find the <strong>monthly report</strong> attached.</p>\",\"attachments\":[{\"filename\":\"report.pdf\",\"data\":\"base64EncodedContentHere\"}]}", + "description": "Send a monthly report email to team members with a PDF attachment and CC the manager." + }, + { + "inputJson": "{\"from\":\"support@example.com\",\"to\":[\"customer@example.com\"],\"cc\":[],\"bcc\":[],\"subject\":\"Password Reset Request\",\"bodyText\":\"Click the link to reset your password.\",\"bodyHtml\":\"<p>Click <a href='https://example.com/reset'>here</a> to reset your password.</p>\",\"attachments\":[]}", + "description": "Send a password reset email in both plain text and HTML format to a customer." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "database-management.createMessage", + "description": "Creates a new message record in a database messaging table. Accepts input parameters including sender, recipient, subject, body content, timestamp, and optional metadata. Validates inputs and inserts a structured message entry into the database, returning the created message ID and confirmation status.", + "category": "database-management", + "parameters": [ + { + "name": "senderId", + "type": "string", + "description": "Unique identifier of the message sender", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the message recipient", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the message", + "required": false, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the message", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the message was created", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data for message (e.g., priority, tags)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the new message's unique ID, success status, and an optional error message" + }, + "aiAgent": { + "useCase": "Use this tool when you need to add a new message entry into a messaging system's database as part of communication workflows, such as sending notifications, storing user messages, or logging communications. It ensures message data is properly structured and inserted with validation.", + "limitations": "Does not handle actual message delivery or transport. Assumes the database connection is managed externally. Does not process message encryption or content moderation.", + "examples": [ + "Create a message from user123 to user456 with a subject and text body.", + "Insert a system-generated notification message without a subject.", + "Add a message including metadata tags for priority and read status." + ] + }, + "tags": [ + "database", + "message", + "creation", + "communication", + "record", + "insert" + ], + "examples": [ + { + "inputJson": "{\"senderId\":\"user123\",\"recipientId\":\"user456\",\"subject\":\"Meeting reminder\",\"body\":\"Don't forget our meeting at 3 PM.\",\"timestamp\":\"2024-06-01T14:00:00Z\"}", + "description": "Create a standard user-to-user message with subject and timestamp." + }, + { + "inputJson": "{\"senderId\":\"system\",\"recipientId\":\"user789\",\"body\":\"Your password will expire soon.\"}", + "description": "Create a system notification message without a subject or timestamp." + }, + { + "inputJson": "{\"senderId\":\"user321\",\"recipientId\":\"user654\",\"subject\":\"Project Update\",\"body\":\"The project deadline is extended.\",\"metadata\":{\"priority\":\"high\",\"tags\":[\"project\",\"deadline\"]}}", + "description": "Insert a message containing additional metadata for priority and tags." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "testing-automation.generateCode", + "description": "Generates automated test code snippets based on provided testing framework, target programming language, and test cases descriptions. Accepts structured inputs describing test scenarios, and outputs ready-to-use code for automated testing frameworks like Jest, Selenium, or PyTest.", + "category": "testing-automation", + "parameters": [ + { + "name": "framework", + "type": "string", + "description": "The testing framework to generate code for (e.g., Jest, Selenium, PyTest).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language for the generated code (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "testCases", + "type": "array", + "description": "An array of test case objects describing the name, steps, inputs, and expected outputs for each test.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSetupTeardown", + "type": "boolean", + "description": "Whether to include setup and teardown code blocks in the generated test code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "testType", + "type": "string", + "description": "The type of test to generate (e.g., unit, integration, end-to-end).", + "required": false, + "defaultValue": "unit" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string, the language, and any warnings or notes about the generated code." + }, + "aiAgent": { + "useCase": "Use this tool when needing automated generation of test code to accelerate software testing workflows. Particularly useful for creating skeleton tests from descriptions or converting test scenarios into executable code in various languages and frameworks.", + "limitations": "Cannot generate complex, fully functional tests requiring real environment or mock interaction setup beyond initial setup/teardown. May produce basic code that requires manual refinement and integration.", + "examples": [ + "Generate Jest unit test code in JavaScript for a set of function test cases.", + "Create Selenium test scripts in Java for web UI test steps.", + "Generate PyTest integration tests in Python for API endpoint validation." + ] + }, + "tags": [ + "testing", + "automation", + "code-generation", + "test-code", + "unit-test", + "integration-test", + "end-to-end-test" + ], + "examples": [ + { + "inputJson": "{\"framework\":\"Jest\",\"language\":\"JavaScript\",\"testCases\":[{\"name\":\"adds two numbers\",\"steps\":[{\"action\":\"callFunction\",\"functionName\":\"add\",\"inputs\":[1,2],\"expectedOutput\":3}]}],\"includeSetupTeardown\":true}", + "description": "Generate a Jest JavaScript test for a simple add function including setup and teardown." + }, + { + "inputJson": "{\"framework\":\"Selenium\",\"language\":\"Java\",\"testCases\":[{\"name\":\"login test\",\"steps\":[{\"action\":\"navigate\",\"url\":\"http://example.com/login\"},{\"action\":\"inputText\",\"elementId\":\"username\",\"value\":\"testuser\"},{\"action\":\"inputText\",\"elementId\":\"password\",\"value\":\"password123\"},{\"action\":\"click\",\"elementId\":\"submit\"},{\"action\":\"assertUrl\",\"expectedUrl\":\"http://example.com/dashboard\"}]}],\"includeSetupTeardown\":false}", + "description": "Generate Selenium Java code for a login test scenario without setup and teardown code." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "frontend-development.analyzeMessage", + "description": "Analyzes a textual message used in client-side interfaces to extract key metadata such as sentiment, language, keyword frequency, and readability score. Accepts the message text and optional analysis parameters, then returns a structured summary useful for UI improvements and user engagement assessment.", + "category": "frontend-development", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The raw text message content to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectLanguage", + "type": "boolean", + "description": "Flag to detect the language of the message text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Flag to perform sentiment analysis (positive, neutral, negative) on the message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Flag to extract the most frequent or important keywords from the message text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxKeywords", + "type": "number", + "description": "Maximum number of keywords to extract from the message.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis results: detected language code, sentiment classification with score, list of keywords with frequency counts, and readability score." + }, + "aiAgent": { + "useCase": "This tool is ideal for frontend AI agents that need to understand user-generated or system-generated messages to improve interface responsiveness, personalize content, moderate communication, or optimize message presentation based on sentiment and content complexity. It helps in tailoring UI/UX dynamically.", + "limitations": "Does not perform deep semantic understanding or context beyond the text; cannot handle multimedia content or very short single-word messages with meaningful analysis.", + "examples": [ + "Analyze the sentiment and keywords of user feedback messages for dashboard display.", + "Detect message language and readability to adapt UI prompts dynamically.", + "Summarize and extract key topics from chat messages in a real-time app." + ] + }, + "tags": [ + "analysis", + "frontend", + "message", + "sentiment", + "language-detection", + "keyword-extraction", + "readability" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"I really love the new interface update! It’s intuitive and much faster.\",\"detectLanguage\":true,\"analyzeSentiment\":true,\"extractKeywords\":true,\"maxKeywords\":3}", + "description": "Analyze a positive user feedback message for sentiment, language, and keywords." + }, + { + "inputJson": "{\"messageText\":\"Urgent: system error at endpoint 404, please fix asap.\",\"detectLanguage\":true,\"analyzeSentiment\":true,\"extractKeywords\":true,\"maxKeywords\":4}", + "description": "Analyze an urgent error message to capture sentiment and important keywords for alerting." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "backend-development.analyzeEvent", + "description": "Analyzes event data from backend systems by processing event logs or structured event input to extract metrics such as event frequency, user engagement, error rates, and temporal trends. Accepts event arrays or log file inputs, performs statistical and time-series analysis, and outputs summarized analytics and visualizable insights.", + "category": "backend-development", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "An array of event objects, each containing event metadata such as type, timestamp, userId, and attributes to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object specifying the analysis time window with 'start' and 'end' ISO 8601 date strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "eventTypes", + "type": "array", + "description": "Optional list of event type strings to filter specific events for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregateBy", + "type": "string", + "description": "Metric to aggregate events by, e.g., 'hour', 'day', 'userId' for grouping the analytics output.", + "required": false, + "defaultValue": "day" + }, + { + "name": "includeErrorAnalysis", + "type": "boolean", + "description": "Whether to include error rate analysis based on event types labeled as errors.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics including total events count, frequencies per aggregation unit, user engagement metrics, error rates if requested, and temporal trends suitable for visualization." + }, + "aiAgent": { + "useCase": "Use this tool when backend systems generate event logs or streams and there is a need to extract meaningful analytics such as usage patterns, frequency distributions, and error occurrences. It helps summarize large event datasets into actionable insights for monitoring and optimization.", + "limitations": "This tool does not perform real-time event streaming analysis nor does it handle unstructured logs that require complex parsing beyond JSON or structured events. It also does not predict future trends beyond summarizing historical data.", + "examples": [ + "Analyze user activity events for the last week aggregated by day.", + "Calculate error rates for failed payment events within a given time range.", + "Generate event frequency trends filtered by a list of event types over the past month." + ] + }, + "tags": [ + "backend", + "analytics", + "event-analysis", + "data-processing", + "monitoring", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"type\":\"login\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"userId\":\"user123\"},{\"type\":\"purchase\",\"timestamp\":\"2024-06-01T10:05:00Z\",\"userId\":\"user123\"},{\"type\":\"logout\",\"timestamp\":\"2024-06-01T10:30:00Z\",\"userId\":\"user123\"}],\"timeRange\":{\"start\":\"2024-06-01T00:00:00Z\",\"end\":\"2024-06-02T00:00:00Z\"},\"aggregateBy\":\"hour\",\"includeErrorAnalysis\":false}", + "description": "Analyze user login, purchase, and logout events aggregated by hour for one day." + }, + { + "inputJson": "{\"eventData\":[{\"type\":\"payment_failed\",\"timestamp\":\"2024-06-01T11:00:00Z\",\"userId\":\"user456\"},{\"type\":\"payment_failed\",\"timestamp\":\"2024-06-01T12:00:00Z\",\"userId\":\"user789\"}],\"eventTypes\":[\"payment_failed\"],\"includeErrorAnalysis\":true}", + "description": "Calculate error analysis for payment failure events filtering only 'payment_failed' events." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "backend-development.analyzeNotification", + "description": "Analyzes server-side notification payloads to assess content structure, user targeting, delivery metadata, and engagement potential. Accepts notification JSON objects and optional context parameters; processes to identify key elements such as notification type, priority, audience segments, and action triggers; outputs structured analysis report to guide notification optimization and debugging.", + "category": "backend-development", + "parameters": [ + { + "name": "notificationPayload", + "type": "object", + "description": "The complete JSON object representing the notification data to be analyzed, including message, metadata, and targeting info.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "object", + "description": "Optional contextual information about the environment or platform where notification will be delivered (e.g., mobile, web).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeEngagementMetrics", + "type": "boolean", + "description": "Flag indicating whether to include estimated engagement and performance metrics based on historical data if available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "priorityThreshold", + "type": "number", + "description": "Numeric threshold to determine if the notification priority is considered high; used for classification in the output.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object containing: type classification, priority level, target audience details, validation status, flags for missing critical fields, and estimated engagement metrics if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically evaluate and verify the composition and targeting parameters of backend notification payloads before dispatch to improve delivery success and engagement outcomes. It is useful for debugging notification formats, ensuring compliance with platform requirements, and optimizing targeting logic.", + "limitations": "This tool does not send notifications or provide real-time delivery tracking. It cannot predict exact user responses, only estimates based on static analysis and historical norms. It requires a well-formed notification object as input; malformed inputs may yield incomplete analysis.", + "examples": [ + "Analyze notification JSON for structural completeness and audience segmentation before dispatching.", + "Evaluate priority and urgency markers within notification payloads to determine if they meet business rules.", + "Check for missing required fields in notifications like title or action URL to prevent downstream errors." + ] + }, + "tags": [ + "backend", + "notification", + "analysis", + "validation", + "engagement", + "targeting" + ], + "examples": [ + { + "inputJson": "{\"notificationPayload\":{\"title\":\"Update Available\",\"body\":\"A new app version is ready to install.\",\"priority\":7,\"targetAudience\":{\"segment\":\"betaTesters\"}},\"includeEngagementMetrics\":true}", + "description": "Analyze a notification targeting beta testers with high priority and request engagement metrics." + }, + { + "inputJson": "{\"notificationPayload\":{\"title\":\"Welcome\",\"body\":\"Thanks for joining us!\",\"priority\":3,\"targetAudience\":{\"segment\":\"allUsers\"},\"actionUrl\":\"https://app.example.com/welcome\"}}", + "description": "Analyze a standard welcome notification sent to all users, checking fields and priority classification." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "backend-development.downloadReport", + "description": "This tool enables downloading server-generated reports from a backend system. It accepts the reportId (required), optional format (like PDF or CSV), and an authorization token to validate access. It processes the request by retrieving the report data and converting it to the specified format before returning a downloadable file link or base64 string.", + "category": "backend-development", + "parameters": [ + { + "name": "reportId", + "type": "string", + "description": "Unique identifier of the report to download", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired report format: PDF, CSV, or JSON. Defaults to PDF if unspecified.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "authToken", + "type": "string", + "description": "Authorization token for validating access to the report", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata about the report in the output", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a downloadUrl for the report file or a base64 encoded string of the report, along with report metadata if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve a generated backend report to allow user download or further automated processing. Applicable in scenarios requiring access control and format conversion of reports generated by server-side applications.", + "limitations": "Cannot generate reports itself, only downloads already generated reports. Requires valid authorization tokens. Does not perform report data analysis or modification.", + "examples": [ + "Download the sales summary report with ID 12345 as a CSV file.", + "Get the financial report in PDF format, including metadata, for authorized access.", + "Retrieve the user activity report with a specific auth token and default format." + ] + }, + "tags": [ + "backend", + "download", + "report", + "file", + "API", + "server", + "document" + ], + "examples": [ + { + "inputJson": "{\"reportId\":\"rep123\",\"format\":\"PDF\",\"authToken\":\"token_xyz\",\"includeMetadata\":true}", + "description": "Download a PDF report including metadata with authorization." + }, + { + "inputJson": "{\"reportId\":\"sales2023\",\"format\":\"CSV\",\"authToken\":\"auth_abcd\",\"includeMetadata\":false}", + "description": "Download a sales report in CSV format without metadata." + }, + { + "inputJson": "{\"reportId\":\"userActivity\",\"authToken\":\"tok_5678\"}", + "description": "Download a user activity report in default PDF format with authorization." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "backend-development.renderDocument", + "description": "Renders a document from a specified template and data, producing an HTML or PDF output. Accepts a template identifier, input data as JSON, and rendering options such as output format and styling preferences. Outputs the rendered document as a base64 encoded string and metadata.", + "category": "backend-development", + "parameters": [ + { + "name": "templateId", + "type": "string", + "description": "Identifier of the document template to use for rendering", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "JSON object containing the data to populate the template", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the rendered document output (e.g., 'html', 'pdf')", + "required": true, + "defaultValue": "html" + }, + { + "name": "styles", + "type": "object", + "description": "Optional styling options like CSS or layout overrides for rendering", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as page count or generation timestamp in output", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64 encoded rendered document and optional metadata such as page count, content type, and generation timestamp" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a dynamic document for backend applications such as invoices, reports, or letters by populating a template with provided data, then producing an output suitable for client consumption or storage. It is ideal for automated document workflows and server-side document generation.", + "limitations": "This tool cannot generate templates or design layouts by itself; templates must be predefined and accessible. It does not support interactive or real-time editing of documents and does not handle document storage, only rendering.", + "examples": [ + "Render an invoice document as PDF from order data using invoice template 'inv_2024'.", + "Generate an HTML report document based on analytics data with custom CSS styles.", + "Produce a letter document in HTML format including metadata about generation time." + ] + }, + "tags": [ + "backend", + "document", + "rendering", + "template", + "pdf", + "html", + "automation" + ], + "examples": [ + { + "inputJson": "{\"templateId\":\"invoice_2024\",\"data\":{\"customerName\":\"John Doe\",\"items\":[{\"name\":\"Widget\",\"quantity\":3,\"price\":9.99}],\"total\":29.97},\"outputFormat\":\"pdf\",\"includeMetadata\":true}", + "description": "Render an invoice as PDF for a customer order including metadata about the document." + }, + { + "inputJson": "{\"templateId\":\"report_summary\",\"data\":{\"title\":\"Q2 Sales\",\"summary\":\"Sales increased by 15% compared to Q1.\"},\"outputFormat\":\"html\",\"styles\":{\"css\":\"body { font-family: Arial; color: #333; }\"}}", + "description": "Generate a styled HTML report document from summary data using a report template." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "backend-development.formatFunction", + "description": "Formats JavaScript or TypeScript function code according to specified styling rules or style presets. Accepts unformatted or poorly formatted function source code as input and outputs a clean, consistently styled function string ready for use in backend projects.", + "category": "backend-development", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw source code of the function to format, including the full function signature and body.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the function source code, e.g., 'javascript' or 'typescript'.", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "stylePreset", + "type": "string", + "description": "Optional predefined style preset to apply, such as 'prettier', 'google', or 'airbnb'.", + "required": false, + "defaultValue": "prettier" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted code.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useSemicolons", + "type": "boolean", + "description": "Whether to end statements with semicolons in the formatted output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length; longer lines will be wrapped appropriately.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code as a string under the property 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean, standardize, or prettify backend JavaScript/TypeScript function code submitted by users or generated programmatically. It helps ensure consistent code style, readability, and adherence to project or team formatting conventions.", + "limitations": "This tool does not perform code parsing beyond formatting and cannot fix syntax errors or refactor logic. It only formats a single function at a time and does not handle full modules or scripts.", + "examples": [ + "Format a raw JavaScript function string with a Prettier style preset.", + "Format a TypeScript arrow function with 4-space indentation and no semicolons.", + "Apply Google style formatting to a given backend function code snippet." + ] + }, + "tags": [ + "formatting", + "backend", + "code-style", + "javascript", + "typescript", + "function", + "code-cleanup" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function hello(name){console.log('Hello, '+name)}\",\"language\":\"javascript\",\"stylePreset\":\"prettier\",\"indentSize\":2,\"useSemicolons\":true,\"maxLineLength\":80}", + "description": "Format a simple JavaScript function with standard Prettier style and default options." + }, + { + "inputJson": "{\"sourceCode\":\"const add = (a:number,b:number):number =>{return a+b}\",\"language\":\"typescript\",\"indentSize\":4,\"useSemicolons\":false}", + "description": "Format a TypeScript arrow function with 4 spaces indentation and without semicolons." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "backend-development.draftEmail", + "description": "Generates a professional email draft based on provided context, recipient details, and message intent. Accepts inputs such as recipient name, email subject, message body points, and preferred tone. Processes these inputs to create a coherent, appropriately formatted email text suitable for server-side email automation or review.", + "category": "backend-development", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "The name of the email recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "messagePoints", + "type": "array", + "description": "An array of key bullet points or topics to include in the email body.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the email, e.g., formal, casual, friendly.", + "required": false, + "defaultValue": "\"formal\"" + }, + { + "name": "closingRemark", + "type": "string", + "description": "Optional closing sentence or phrase for the email (e.g., Thank you, Regards).", + "required": false, + "defaultValue": "\"Best regards\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete drafted email text with subject, greeting, body paragraphs, and closing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate professional or business email drafts automatically based on brief user instructions or data. It is ideal for preparing initial email content for client communication, team updates, or notifications that can then be reviewed or sent by backend systems.", + "limitations": "This tool cannot send emails, handle interactive email threads, or ensure perfect context for complex conversations. It generates a single draft based on input parameters without email metadata like attachments or inline images.", + "examples": [ + "Draft a polite reminder email to a client about the upcoming meeting.", + "Create a formal update email summarizing project milestones for the team.", + "Generate a friendly welcome email for a new user with key onboarding points." + ] + }, + "tags": [ + "email", + "backend", + "automation", + "communication", + "drafting", + "business" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Sarah\",\"subject\":\"Project Status Update\",\"messagePoints\":[\"Completed initial design phase\",\"Started development sprint 1\",\"Testing scheduled for next week\"],\"tone\":\"formal\",\"closingRemark\":\"Sincerely\"}", + "description": "Formal project update email to a recipient named Sarah outlining progress milestones." + }, + { + "inputJson": "{\"recipientName\":\"John\",\"subject\":\"Welcome to the team!\",\"messagePoints\":[\"Orientation starts Monday\",\"Your mentor is Lisa\",\"We have a welcome lunch on Tuesday\"],\"tone\":\"friendly\",\"closingRemark\":\"Cheers\"}", + "description": "Friendly welcome email for a new team member with onboarding key points." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "backend-development.generateParagraph", + "description": "Generates a coherent paragraph of text based on given topic keywords, desired length, and optional writing style. Accepts an array of keywords to anchor content, a number indicating paragraph length in sentences, and optionally a style such as 'formal' or 'conversational'. Outputs a string containing the generated paragraph suitable for backend content generation or API responses.", + "category": "backend-development", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "An array of strings representing the main topics or keywords for the paragraph content.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "sentenceCount", + "type": "number", + "description": "The desired number of sentences the generated paragraph should contain.", + "required": true, + "defaultValue": "5" + }, + { + "name": "style", + "type": "string", + "description": "Optional writing style to influence tone and formality, e.g., 'formal', 'friendly', or 'technical'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph as a single string under the key 'paragraph'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate meaningful paragraph text based on specific keywords or topics for backend content, documentation snippets, or dynamic text generation in applications. It helps produce readable paragraph text of specified length and style.", + "limitations": "The tool may not generate perfectly factual or contextually accurate content; it should not be relied on for critical information or creative writing requiring deep insight.", + "examples": [ + "Generate a 4-sentence paragraph about 'cloud computing' and 'scalability' in a formal style.", + "Create a friendly 6-sentence paragraph covering 'API development' and 'security'." + ] + }, + "tags": [ + "backend", + "text-generation", + "content-creation", + "paragraph", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"cloud computing\",\"scalability\"],\"sentenceCount\":4,\"style\":\"formal\"}", + "description": "Generate a formal 4-sentence paragraph about cloud computing and scalability." + }, + { + "inputJson": "{\"keywords\":[\"API development\",\"security\"],\"sentenceCount\":6,\"style\":\"friendly\"}", + "description": "Generate a friendly 6-sentence paragraph about API development and security." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "backend-development.createParagraph", + "description": "Generates a formatted paragraph of text for backend applications based on given content, style, and formatting options. Accepts raw string or array of sentences, optionally applies HTML or Markdown formatting, and returns a clean, structured paragraph string ready for rendering or storage.", + "category": "backend-development", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main textual content or a brief passage to include in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format for the paragraph text: plain, html, or markdown.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length to limit the paragraph content; truncates if exceeded.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeLineBreaks", + "type": "boolean", + "description": "Whether to include line breaks in the paragraph for readability in formats like Markdown or HTML.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph text as a string under 'paragraph' key." + }, + "aiAgent": { + "useCase": "Use this tool when generating text content paragraphs for server-side rendering, API responses, email bodies, or content pre-processing where controlled formatting and length are needed. It is ideal for dynamically creating descriptive or explanatory paragraphs based on input content.", + "limitations": "This tool does not generate or infer content; it only formats and trims given text. It does not handle complex text transformations, translations, or semantic rewriting.", + "examples": [ + "Create a markdown formatted paragraph summarizing user instructions.", + "Generate a plain text paragraph limited to 200 characters for a notification message.", + "Produce an HTML paragraph with line breaks included for email content." + ] + }, + "tags": [ + "backend", + "content-generation", + "text-formatting", + "api", + "server-side", + "paragraph", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"content\":\"This backend API provides robust and secure data interactions.\",\"format\":\"plain\",\"maxLength\":100,\"includeLineBreaks\":false}", + "description": "Generate a plain text paragraph under 100 characters without line breaks." + }, + { + "inputJson": "{\"content\":\"Use the API to fetch, update, and delete data effectively.\",\"format\":\"markdown\",\"maxLength\":150,\"includeLineBreaks\":true}", + "description": "Generate a markdown formatted paragraph with line breaks." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "backend-development.createContainer", + "description": "Creates and deploys a new container instance in a specified container orchestration environment (e.g., Docker, Kubernetes). Accepts configuration details such as image name, resource limits, environment variables, and network settings, then provisions and initializes the container accordingly. Returns the container ID, status, and endpoint information upon successful creation.", + "category": "backend-development", + "parameters": [ + { + "name": "imageName", + "type": "string", + "description": "Docker image name with optional tag to deploy inside the container (e.g., 'nginx:latest').", + "required": true, + "defaultValue": "" + }, + { + "name": "containerName", + "type": "string", + "description": "A user-defined name to assign to the new container instance for identification.", + "required": false, + "defaultValue": "" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set inside the container.", + "required": false, + "defaultValue": "" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Resource constraints including CPU and memory limits (e.g., {cpu: '0.5', memory: '256Mi'}).", + "required": false, + "defaultValue": "" + }, + { + "name": "networkSettings", + "type": "object", + "description": "Network configuration for the container, such as exposed ports and network mode.", + "required": false, + "defaultValue": "" + }, + { + "name": "restartPolicy", + "type": "string", + "description": "Container restart policy (e.g., 'always', 'on-failure', 'no').", + "required": false, + "defaultValue": "no" + }, + { + "name": "orchestrationPlatform", + "type": "string", + "description": "Target container orchestration platform to deploy the container (e.g., 'docker', 'kubernetes').", + "required": true, + "defaultValue": "docker" + } + ], + "returns": { + "type": "object", + "description": "Details about the created container including unique container ID, status (e.g., running), and connection endpoints if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate the deployment of containerized applications by specifying container configurations programmatically. It helps in provisioning containers on platforms like Docker or Kubernetes as part of backend workflows or infrastructure automation scripts.", + "limitations": "Does not manage container lifecycle beyond creation (e.g., no updates, scaling, or deletion). Limited to supported orchestration platforms; complex cluster configurations or service mesh setups are out of scope.", + "examples": [ + "Create a new Docker container running 'nginx:latest' exposing port 80.", + "Deploy a Kubernetes pod with environment variables and resource limits.", + "Instantiate a container with a specific restart policy and custom network settings." + ] + }, + "tags": [ + "container", + "deployment", + "backend", + "infrastructure", + "docker", + "kubernetes" + ], + "examples": [ + { + "inputJson": "{\"imageName\":\"nginx:latest\",\"containerName\":\"web-server\",\"environmentVariables\":{\"ENV\":\"production\"},\"resourceLimits\":{\"cpu\":\"0.5\",\"memory\":\"256Mi\"},\"networkSettings\":{\"ports\":[{\"containerPort\":80,\"hostPort\":8080}]},\"restartPolicy\":\"always\",\"orchestrationPlatform\":\"docker\"}", + "description": "Create a Docker container named 'web-server' running nginx with environment variables, resource limits, port mapping, and restart policy." + }, + { + "inputJson": "{\"imageName\":\"postgres:13\",\"containerName\":\"db-instance\",\"environmentVariables\":{\"POSTGRES_PASSWORD\":\"secret\"},\"resourceLimits\":{\"cpu\":\"1\",\"memory\":\"1Gi\"},\"orchestrationPlatform\":\"kubernetes\"}", + "description": "Deploy a PostgreSQL database pod in Kubernetes with password environment variable and resource limits." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "backend-development.createLead", + "description": "Creates a new business lead entry in the backend system by accepting detailed lead information such as contact details, source, status, and optional metadata. Processes the input to validate and store the lead record, returning a confirmation with the created lead ID and timestamp.", + "category": "backend-development", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "First name of the lead contact person", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "Last name of the lead contact person", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address of the lead for contact", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Phone number of the lead contact, optional but recommended", + "required": false, + "defaultValue": "" + }, + { + "name": "company", + "type": "string", + "description": "Company name associated with the lead, if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "leadSource", + "type": "string", + "description": "Origin or source of the lead, e.g., referral, website, event", + "required": false, + "defaultValue": "website" + }, + { + "name": "status", + "type": "string", + "description": "Current status of the lead, e.g., new, contacted, qualified", + "required": false, + "defaultValue": "new" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional structured data related to the lead for custom processing", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of lead creation, including a unique lead ID, creation timestamp, and status message" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add new lead information into a CRM or sales backend system. It facilitates capturing essential contact and status details to support lead management workflows. Ideal when automating lead intake or integrating with external data sources.", + "limitations": "This tool does not perform detailed validation of emails or phone numbers beyond basic formatting, nor does it handle duplicate detection or lead enrichment—it focuses solely on creating a new lead record.", + "examples": [ + "Create a lead with full contact info and specify source as 'referral'", + "Add a new lead with only name and email, defaulting other values", + "Update CRM system by creating new leads from scraped web data" + ] + }, + "tags": [ + "backend", + "lead-management", + "crm", + "sales", + "business" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"+1234567890\",\"company\":\"Acme Inc.\",\"leadSource\":\"referral\",\"status\":\"new\",\"metadata\":{\"campaign\":\"spring_sale\"}}", + "description": "Create a new lead with full contact info, marked as referral source and tagged with campaign metadata" + }, + { + "inputJson": "{\"firstName\":\"John\",\"lastName\":\"Smith\",\"email\":\"john.smith@example.com\"}", + "description": "Create a minimal lead record with required fields only, defaulting status to 'new' and leadSource to 'website'." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "backend-development.createKey", + "description": "Generates a cryptographic key for backend applications. Accepts parameters to specify key type (symmetric or asymmetric), key size, and usage purpose. Produces a securely generated key in base64 format along with metadata describing its algorithm and usage, suitable for encryption, signing, or authentication.", + "category": "backend-development", + "parameters": [ + { + "name": "keyType", + "type": "string", + "description": "Specifies the type of key to generate: 'symmetric' or 'asymmetric'.", + "required": true, + "defaultValue": "symmetric" + }, + { + "name": "algorithm", + "type": "string", + "description": "Specifies the cryptographic algorithm to use, e.g., 'AES', 'RSA', 'ECDSA'.", + "required": true, + "defaultValue": "AES" + }, + { + "name": "keySize", + "type": "number", + "description": "Size of the key in bits; typical sizes depend on algorithm (e.g., 256 for AES, 2048 for RSA).", + "required": false, + "defaultValue": "256" + }, + { + "name": "usage", + "type": "array", + "description": "List of intended key usages such as ['encrypt', 'decrypt', 'sign', 'verify'].", + "required": false, + "defaultValue": "[\"encrypt\"]" + }, + { + "name": "extractable", + "type": "boolean", + "description": "Indicates if the key material can be extracted from the generated key object.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64-encoded key material, algorithm details, usage array, and a unique key identifier." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create secure cryptographic keys to be used in backend systems for encryption, digital signatures, or token generation. It supports both symmetric and asymmetric key generation with adjustable algorithms and key sizes to meet security policies and standards.", + "limitations": "This tool does not store or manage keys beyond initial generation, nor does it integrate with hardware security modules (HSMs). It also does not perform key lifecycle management such as rotation or revocation.", + "examples": [ + "Generate a 256-bit AES symmetric key for encryption and decryption.", + "Create a 2048-bit RSA key pair for digital signing and verification.", + "Produce an ECDSA key with extractable private key for authentication." + ] + }, + "tags": [ + "backend", + "security", + "cryptography", + "key-generation", + "encryption", + "asymmetric", + "symmetric" + ], + "examples": [ + { + "inputJson": "{\"keyType\":\"symmetric\",\"algorithm\":\"AES\",\"keySize\":256,\"usage\":[\"encrypt\",\"decrypt\"],\"extractable\":false}", + "description": "Generate a symmetric AES key of 256 bits for encryption and decryption, non-extractable." + }, + { + "inputJson": "{\"keyType\":\"asymmetric\",\"algorithm\":\"RSA\",\"keySize\":2048,\"usage\":[\"sign\",\"verify\"],\"extractable\":true}", + "description": "Create an RSA 2048-bit key pair for signing and verification, extractable key material." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "backend-development.createBranch", + "description": "Creates a new Git branch in a specified repository based on an optional source branch or commit SHA. Accepts repository URL or local path, branch name, and optional start point, performs branch creation via Git commands or API, and returns success status and branch details.", + "category": "backend-development", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL or local file path of the Git repository where the branch will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name of the new branch to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "startPoint", + "type": "string", + "description": "The source branch or commit SHA to start the new branch from; defaults to the repository's default branch if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "forceCreate", + "type": "boolean", + "description": "Whether to forcibly create the branch, overwriting if it already exists. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status, branch name, start point used, and message with details or error information." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to manage source code repositories by creating new Git branches, such as for feature development, bug fixes, or release preparation. It is helpful when automating repository operations to ensure proper branching workflows and to streamline continuous integration processes.", + "limitations": "This tool does not handle repository cloning or authentication mechanisms directly; it assumes access permissions and repository availability are managed separately. It cannot create branches in non-Git repositories or perform advanced Git operations like rebasing or merging.", + "examples": [ + "Create a new branch named 'feature/login' in the repository 'https://github.com/example/project.git' starting from 'develop'.", + "Create a branch 'hotfix/urgent' starting from commit SHA 'a1b2c3d4' in local repo '/repos/project' with force overwrite enabled.", + "Create a branch 'test-branch' in repo '/repos/project' without specifying start point, using default branch." + ] + }, + "tags": [ + "git", + "branching", + "version-control", + "repository-management", + "backend-development" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"branchName\":\"feature/login\",\"startPoint\":\"develop\",\"forceCreate\":false}", + "description": "Create 'feature/login' branch from 'develop' branch on remote repository." + }, + { + "inputJson": "{\"repositoryUrl\":\"/repos/project\",\"branchName\":\"hotfix/urgent\",\"startPoint\":\"a1b2c3d4\",\"forceCreate\":true}", + "description": "Force create 'hotfix/urgent' branch from specific commit SHA locally." + }, + { + "inputJson": "{\"repositoryUrl\":\"/repos/project\",\"branchName\":\"test-branch\"}", + "description": "Create 'test-branch' from default branch in local repository, no start point specified." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "backend-development.createAlert", + "description": "Creates a security alert in the backend system based on specified conditions and metadata. Accepts parameters defining alert type, severity, description, and optional triggers. Processes inputs to store and return an alert object with unique ID and timestamp for monitoring and incident response.", + "category": "backend-development", + "parameters": [ + { + "name": "alertType", + "type": "string", + "description": "Type/category of the security alert (e.g., 'intrusion', 'malware', 'unauthorizedAccess').", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the alert (e.g., 'low', 'medium', 'high', 'critical').", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed message describing the alert event.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerConditions", + "type": "object", + "description": "An optional object defining event or condition data that triggered the alert (e.g., IP address, event logs).", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted string representing when the alert was generated. Defaults to current server time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "acknowledged", + "type": "boolean", + "description": "Flag indicating whether the alert has been acknowledged by a user or system. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "The created alert object containing alert ID, type, severity, description, trigger details, timestamp, and acknowledgement status." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically create security alerts within backend applications or monitoring systems when suspicious or malicious activities are detected. It helps automate alert creation with standardized properties for further processing or incident management.", + "limitations": "This tool does not analyze data to detect security incidents; it only creates alerts from provided structured inputs. Automated detection or correlation must be handled externally.", + "examples": [ + "Create a high severity intrusion alert when an unauthorized login attempt is detected.", + "Generate a malware detection alert with detailed event logs as trigger conditions.", + "Mark an alert acknowledged once a security analyst reviews it." + ] + }, + "tags": [ + "backend", + "security", + "alert", + "monitoring", + "incident-response", + "automation" + ], + "examples": [ + { + "inputJson": "{\"alertType\":\"intrusion\",\"severity\":\"high\",\"description\":\"Multiple failed login attempts detected from IP 192.168.1.100.\",\"triggerConditions\":{\"sourceIP\":\"192.168.1.100\",\"failedAttempts\":5}}", + "description": "Create a high severity intrusion alert for failed login attempts with triggering IP and attempt count." + }, + { + "inputJson": "{\"alertType\":\"malware\",\"severity\":\"critical\",\"description\":\"Ransomware signature detected on server node 57.\",\"timestamp\":\"2024-06-10T14:32:00Z\"}", + "description": "Create a critical malware alert with a fixed detection timestamp." + }, + { + "inputJson": "{\"alertType\":\"unauthorizedAccess\",\"severity\":\"medium\",\"description\":\"User accessed restricted directory outside business hours.\",\"acknowledged\":true}", + "description": "Create a medium severity unauthorized access alert and mark it acknowledged immediately." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "backend-development.createCSV", + "description": "Generates a CSV string from an array of objects by extracting specified fields as columns. Accepts an array of data objects and optional configurations such as column order, delimiter, and header inclusion, then outputs a CSV formatted string that can be saved or sent as a response.", + "category": "backend-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing the rows to convert to CSV. Each object is a row with key-value pairs for columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Optional array specifying the order and subset of object keys to include as CSV columns. Defaults to all keys in the first object.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character to delimit columns, e.g., comma ',' or semicolon ';'. Defaults to a comma.", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include a header row with column names in the CSV output. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteAllFields", + "type": "boolean", + "description": "Whether to quote all fields in the CSV, or only those containing special characters. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV string under the 'csv' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured JSON data into CSV format for export, reporting, or integration with systems that consume CSV. It supports customizing columns, delimiters, and header inclusion to fit various CSV standards.", + "limitations": "Cannot handle nested objects or arrays within data entries; all values should be primitive types or strings. No automatic UTF-8 byte order marks or encoding options provided.", + "examples": [ + "Generate CSV from a list of user objects including only name and email.", + "Create a semicolon-delimited CSV with no header from provided transaction data.", + "Transform a JSON array to CSV quoting all fields for stricter CSV parsing." + ] + }, + "tags": [ + "backend", + "csv", + "data-export", + "formatting", + "api", + "utility" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"email\":\"alice@example.com\",\"age\":30},{\"name\":\"Bob\",\"email\":\"bob@example.com\",\"age\":25}],\"columns\":[\"name\",\"email\"],\"delimiter\":\",\",\"includeHeaders\":true,\"quoteAllFields\":false}", + "description": "Create a CSV with only the name and email columns with headers and commas as delimiters." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Book\",\"price\":10.5},{\"product\":\"Pen\",\"price\":1.2}],\"delimiter\":\";\",\"includeHeaders\":false}", + "description": "Generate a semicolon-delimited CSV without headers from product data." + }, + { + "inputJson": "{\"data\":[{\"city\":\"New York\",\"state\":\"NY\"},{\"city\":\"Los Angeles\",\"state\":\"CA\"}],\"quoteAllFields\":true}", + "description": "Create a CSV quoting all fields for city and state columns." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "backend-development.createInvoice", + "description": "Creates a detailed invoice document based on client data, purchased items, pricing, and tax information. Accepts client information, a list of items with quantities and prices, optional tax rates and discounts, then calculates totals and returns a structured invoice ready for storage or further processing.", + "category": "backend-development", + "parameters": [ + { + "name": "clientInfo", + "type": "object", + "description": "An object containing client details such as name, address, and contact information required for the invoice header.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "An array of objects, each representing an item with properties: description (string), quantity (number), unitPrice (number). These items form the invoice body.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "The percentage tax rate to apply to the subtotal (e.g., 10.5 for 10.5%).", + "required": false, + "defaultValue": "0" + }, + { + "name": "discount", + "type": "number", + "description": "Optional discount amount subtracted from the subtotal before tax. Represented as an absolute currency value.", + "required": false, + "defaultValue": "0" + }, + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier for the invoice, used for tracking and reference. If not provided, an auto-generated ID is assigned.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) used for all monetary values in the invoice.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date of the invoice in YYYY-MM-DD format indicating when payment is expected.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a detailed invoice object including client info, items with line totals, subtotal, tax amount, discount, total due, invoice number, currency, and optionally due date." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate a financial invoice document summarizing a transaction with client and item details. It is useful in backend systems for e-commerce, billing, or accounting where automated invoice creation and calculation of totals and taxes are required.", + "limitations": "This tool does not handle payment processing, invoice delivery (email or print), or legal compliance validations which may vary by jurisdiction. It also assumes that inputs are validated and correctly formatted.", + "examples": [ + "Create an invoice for client John Doe with 3 items, 10% tax, and $15 discount.", + "Generate an invoice with no discount for a client with multiple product lines and specify a due date.", + "Produce an invoice in EUR currency format with auto-generated invoice number." + ] + }, + "tags": [ + "invoice", + "billing", + "backend", + "financial-document", + "tax-calculation", + "document-creation" + ], + "examples": [ + { + "inputJson": "{\"clientInfo\":{\"name\":\"John Doe\",\"address\":\"123 Elm St, Springfield\"},\"items\":[{\"description\":\"Web Hosting\",\"quantity\":1,\"unitPrice\":100},{\"description\":\"SSL Certificate\",\"quantity\":2,\"unitPrice\":50}],\"taxRate\":10,\"discount\":15,\"invoiceNumber\":\"INV-1001\",\"currency\":\"USD\",\"dueDate\":\"2024-07-15\"}", + "description": "Invoice for John Doe with two items, 10% tax, $15 discount, specified invoice number and due date." + }, + { + "inputJson": "{\"clientInfo\":{\"name\":\"Acme Corp\",\"address\":\"456 Oak Ave, Metropolis\"},\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":120}],\"taxRate\":0,\"discount\":0,\"invoiceNumber\":\"\",\"currency\":\"EUR\"}", + "description": "Invoice generated for Acme Corp with consulting items, no tax, no discount, auto-generated invoice number, and Euro currency." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "web-development.analyzeDocument", + "description": "Analyzes the structural and semantic content of an HTML or web document input. Accepts raw HTML or URL to fetch the document, then parses it to extract metadata, detect accessibility issues, measure SEO factors, and identify broken links. Outputs a detailed report with recommendations for improving web document quality.", + "category": "web-development", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content of the document to analyze. Required if url is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL of the web document to fetch and analyze. Required if htmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to perform accessibility checks against common standards like WCAG. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkSEO", + "type": "boolean", + "description": "Whether to analyze SEO factors such as meta tags, headings, and alt attributes. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkBrokenLinks", + "type": "boolean", + "description": "Whether to find and report any broken links within the document. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth of internal links to follow and analyze for broken links. Default is 1 (only current page).", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing metadata summary, detected accessibility issues, SEO evaluation scores, and list of broken or problematic links found in the document." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to evaluate the quality and compliance of a web document, for example to generate optimization suggestions, audit accessibility, improve SEO, or verify link integrity before publishing or during maintenance.", + "limitations": "This tool does not render JavaScript-heavy content or dynamically generated pages fully. It also does not perform security vulnerability scanning or content plagiarism detection.", + "examples": [ + "Analyze the accessibility and SEO of the home page by URL.", + "Check an HTML snippet for broken links and metadata completeness.", + "Fetch a web document and produce a comprehensive report to improvise SEO and accessibility." + ] + }, + "tags": [ + "web", + "analysis", + "seo", + "accessibility", + "html", + "document", + "link-check" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"checkAccessibility\":true,\"checkSEO\":true,\"checkBrokenLinks\":true}", + "description": "Analyze SEO, accessibility, and broken links for the web page https://example.com" + }, + { + "inputJson": "{\"htmlContent\":\"<html><head><title>TestBroken Link\",\"checkAccessibility\":false,\"checkSEO\":true,\"checkBrokenLinks\":true}", + "description": "Analyze a small HTML snippet focusing on SEO and broken links without accessibility checks" + }, + { + "inputJson": "{\"url\":\"https://example.com\",\"maxDepth\":2,\"checkAccessibility\":true,\"checkSEO\":false,\"checkBrokenLinks\":true}", + "description": "Analyze the web page and follow internal links up to depth 2 to check broken links and accessibility, skipping SEO checks" + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "text-analysis.generateCode", + "description": "Generates source code snippets based on natural language descriptions. Accepts a programming language, desired functionality description, and optional style preferences, then produces syntactically correct and contextually relevant code snippets in the requested language.", + "category": "text-analysis", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Programming language for the generated code (e.g., 'Python', 'JavaScript').", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Natural language description of the desired code functionality or behavior.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Preferred coding style or conventions (e.g., 'PEP8', 'functional', 'object-oriented').", + "required": false, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Flag to include explanatory comments in the generated code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "complexityLevel", + "type": "string", + "description": "Desired code complexity: 'simple', 'moderate', or 'advanced'.", + "required": false, + "defaultValue": "simple" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string along with metadata such as language and style used." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to convert user intents or specifications into executable code, facilitating rapid prototyping, example generation, or automating coding tasks across various programming languages and styles.", + "limitations": "Cannot guarantee fully optimized or production-ready code; generated snippets may require review and testing as they may not cover all edge cases or complex system integrations.", + "examples": [ + "Generate a Python function that calculates factorial recursively.", + "Create a JavaScript snippet to debounce a button click event.", + "Write a simple class in Java implementing a queue data structure." + ] + }, + "tags": [ + "code", + "generation", + "programming", + "text-to-code", + "AI-assistant" + ], + "examples": [ + { + "inputJson": "{\"language\":\"Python\",\"description\":\"Function to check if a string is a palindrome.\",\"codeStyle\":\"PEP8\",\"includeComments\":true,\"complexityLevel\":\"simple\"}", + "description": "Generate a Python function with comments that checks palindromes, following PEP8 style." + }, + { + "inputJson": "{\"language\":\"JavaScript\",\"description\":\"Implement a function to throttle a scrolling event.\",\"includeComments\":false,\"complexityLevel\":\"moderate\"}", + "description": "Generate JavaScript code for throttling without comments at moderate complexity." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "text-analysis.createEmail", + "description": "Generates a professionally structured email based on user-provided parameters such as recipient, subject, tone, and message body. It processes input text and stylistic preferences to produce a crafted email draft suitable for various communication contexts.", + "category": "text-analysis", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "The name of the email recipient, used for personalization in the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "The email address of the recipient, included in the email header.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to summarize its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content body text expressing the user's message or request.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email, such as formal, informal, friendly, or professional.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the email sender used for the closing signature.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeGreeting", + "type": "boolean", + "description": "Whether to include a greeting line at the beginning of the email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to include a signature line with sender's name at the end of the email.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full formatted email text with headers, greeting, body, and closing signature." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically create a clear, polite, and appropriately toned email based on given input parameters such as recipient details, subject, and message content. It helps generate draft emails for professional or personal communication without manual formatting.", + "limitations": "This tool does not send emails or handle real email transmission. It cannot handle multi-threaded conversations or parse attachments. It relies on user input to accurately describe the intended message content and tone.", + "examples": [ + "Create a formal email requesting a meeting with a client named Jane Doe.", + "Generate a friendly reminder email to a colleague named John for a project deadline.", + "Compose a professional follow-up email to a job interviewer thanking them for their time." + ] + }, + "tags": [ + "email", + "text-generation", + "communication", + "natural-language-processing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Jane Doe\",\"recipientEmail\":\"jane.doe@example.com\",\"subject\":\"Meeting Request\",\"body\":\"I would like to schedule a meeting to discuss the upcoming project and next steps.\",\"tone\":\"formal\",\"senderName\":\"Alice Smith\",\"includeGreeting\":true,\"includeSignature\":true}", + "description": "Generate a formal meeting request email to Jane Doe." + }, + { + "inputJson": "{\"recipientName\":\"John\",\"recipientEmail\":\"john@example.com\",\"subject\":\"Project Deadline Reminder\",\"body\":\"Just a quick reminder that the project deadline is next Friday. Please let me know if you need any assistance.\",\"tone\":\"friendly\",\"senderName\":\"Mike Johnson\",\"includeGreeting\":true,\"includeSignature\":true}", + "description": "Create a friendly reminder email about a deadline to John." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "api-integration.createCode", + "description": "Generates customizable code snippets for API integration based on user specifications including target language, API endpoint details, authentication method, and request type. It outputs ready-to-use code that performs the requested API call with appropriate headers and parameters.", + "category": "api-integration", + "parameters": [ + { + "name": "targetLanguage", + "type": "string", + "description": "Programming language for the generated code (e.g., 'python', 'javascript', 'java')", + "required": true, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "URL of the API endpoint to integrate with", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to use (e.g., GET, POST, PUT, DELETE)", + "required": true, + "defaultValue": "GET" + }, + { + "name": "authenticationType", + "type": "string", + "description": "Type of authentication used by the API (e.g., 'none', 'apiKey', 'oauth2')", + "required": false, + "defaultValue": "none" + }, + { + "name": "authDetails", + "type": "object", + "description": "Key-value pairs for authentication details such as API key or OAuth tokens", + "required": false, + "defaultValue": "" + }, + { + "name": "requestHeaders", + "type": "object", + "description": "Additional HTTP headers to include in the request", + "required": false, + "defaultValue": "" + }, + { + "name": "requestBody", + "type": "object", + "description": "Payload data to include in the request body for POST/PUT methods", + "required": false, + "defaultValue": "" + }, + { + "name": "queryParams", + "type": "object", + "description": "Key-value pairs for URL query parameters", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and metadata including language and a brief summary" + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to generate code snippets to programmatically connect to external APIs based on user input. It facilitates rapid prototyping or integration by producing ready-to-run examples in common programming languages with appropriate authentication and request details.", + "limitations": "It does not execute the code or verify the API endpoint's availability. The tool generates generic code templates that might require adjustments for specific API quirks or complex authentication flows.", + "examples": [ + "Generate Python code to GET a public REST API with no authentication.", + "Create JavaScript code to POST data to an API with an API key header.", + "Produce Java code to connect using OAuth2 and send a PUT request with JSON payload." + ] + }, + "tags": [ + "api", + "code generation", + "integration", + "automation", + "HTTP", + "sdk" + ], + "examples": [ + { + "inputJson": "{\"targetLanguage\":\"python\",\"apiEndpoint\":\"https://api.example.com/v1/data\",\"httpMethod\":\"GET\",\"authenticationType\":\"none\"}", + "description": "Generate Python code to perform a GET request to a public API with no authentication." + }, + { + "inputJson": "{\"targetLanguage\":\"javascript\",\"apiEndpoint\":\"https://api.example.com/v1/update\",\"httpMethod\":\"POST\",\"authenticationType\":\"apiKey\",\"authDetails\":{\"apiKey\":\"123abc\"},\"requestHeaders\":{\"Content-Type\":\"application/json\"},\"requestBody\":{\"field\":\"value\"}}", + "description": "Generate JavaScript code to POST JSON data to an API requiring an API key in headers." + }, + { + "inputJson": "{\"targetLanguage\":\"java\",\"apiEndpoint\":\"https://api.example.com/v1/resource\",\"httpMethod\":\"PUT\",\"authenticationType\":\"oauth2\",\"authDetails\":{\"accessToken\":\"token123\"},\"requestBody\":{\"data\":\"example\"}}", + "description": "Generate Java code to send a PUT request with OAuth2 bearer token authentication and JSON body." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "agent-management.generateReport", + "description": "Generates a comprehensive report summarizing the activities, status, and performance metrics of AI agents based on specified criteria, time range, and report type. Accepts filters and formatting options, processes the agent data accordingly, and outputs a structured report document in JSON format.", + "category": "agent-management", + "parameters": [ + { + "name": "agentIds", + "type": "array", + "description": "List of agent identifiers to include in the report. If empty, includes all agents.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) of the reporting period. If omitted, no lower bound is applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) of the reporting period. If omitted, no upper bound is applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of report to generate, e.g., 'performance', 'activity', or 'errorSummary'. Determines the report content and layout.", + "required": true, + "defaultValue": "performance" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed logs and events in the report. May increase report size.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the report - currently only 'json' supported.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A report document object containing metadata, summary statistics, and optionally detailed agent data matching the input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent or system administrator needs to generate summarized reports on AI agents' operational status, activity logs, or performance metrics over a specified time period to monitor, audit, or analyze agent behavior and outcomes.", + "limitations": "Currently supports JSON output format only and depends on accurate input data being present in the agent management system. Cannot generate graphical reports or export to other file types.", + "examples": [ + "Generate a performance report for agents A1 and A2 covering the last week with detailed logs included.", + "Create an activity report for all agents for the current month without detailed logs.", + "Produce an error summary report for agent A3 from the past day." + ] + }, + "tags": [ + "agent-management", + "reporting", + "performance", + "activity", + "monitoring", + "summary" + ], + "examples": [ + { + "inputJson": "{\"agentIds\":[\"agent1\",\"agent2\"],\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-07T23:59:59Z\",\"reportType\":\"performance\",\"includeDetails\":true,\"outputFormat\":\"json\"}", + "description": "Generate a detailed performance report for agent1 and agent2 for the first week of May 2024." + }, + { + "inputJson": "{\"agentIds\":[],\"startDate\":\"2024-06-01T00:00:00Z\",\"endDate\":\"2024-06-30T23:59:59Z\",\"reportType\":\"activity\",\"includeDetails\":false}", + "description": "Generate an activity summary report for all agents for June 2024, excluding detailed logs." + }, + { + "inputJson": "{\"agentIds\":[\"agent3\"],\"startDate\":\"2024-06-16T00:00:00Z\",\"endDate\":\"2024-06-16T23:59:59Z\",\"reportType\":\"errorSummary\"}", + "description": "Create an error summary report for agent3 for June 16, 2024." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "prompt-engineering.generateCode", + "description": "Generates code snippets based on a natural language prompt or detailed instructions. Accepts input specifying the desired programming language, functionality description, and optional style preferences. Produces syntactically correct code tailored to the input specifications, suitable for integration or further refinement.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Target programming language for the generated code (e.g., Python, JavaScript, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "functionalityDescription", + "type": "string", + "description": "Natural language description detailing the desired code functionality or behavior.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Optional coding style or standards preferences (e.g., PEP8, Google style).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Flag to determine whether the generated code should include explanatory comments.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLines", + "type": "number", + "description": "Maximum number of lines of code to generate to limit output size.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string and metadata such as language and line count." + }, + "aiAgent": { + "useCase": "Use this tool when needing to rapidly generate boilerplate or specific functionality code snippets guided by natural language inputs. Ideal for prototyping, automating repetitive coding tasks, or assisting developers unfamiliar with a language syntax.", + "limitations": "The generated code may require validation, testing, or modifications to fit specific application contexts or performance requirements; this tool does not guarantee production-ready code.", + "examples": [ + "Generate Python code to sort a list of numbers.", + "Create a JavaScript function that validates email addresses.", + "Produce Java code implementing a simple calculator supporting addition and subtraction." + ] + }, + "tags": [ + "code generation", + "prompt engineering", + "programming", + "developer tools", + "automation" + ], + "examples": [ + { + "inputJson": "{\"language\":\"Python\",\"functionalityDescription\":\"Sort a list of integers in ascending order using quicksort algorithm.\",\"codeStyle\":\"PEP8\",\"includeComments\":true,\"maxLines\":30}", + "description": "Generate a Python function implementing quicksort with comments following PEP8 style." + }, + { + "inputJson": "{\"language\":\"JavaScript\",\"functionalityDescription\":\"Function to check if a given string is a palindrome, case insensitive.\",\"includeComments\":false,\"maxLines\":20}", + "description": "Generate concise JavaScript code to determine whether a string is a palindrome without comments." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "prompt-engineering.generateDocument", + "description": "Generates a structured document based on a user's input prompt and specified document type. It transforms natural language descriptions into formatted text content, tailored with options for style, length, and key points. Outputs a text document suitable for reports, articles, or proposals.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "The natural language prompt describing the desired document content and purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of document to generate, e.g., report, article, proposal, summary.", + "required": true, + "defaultValue": "article" + }, + { + "name": "style", + "type": "string", + "description": "Optional writing style or tone, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated document in tokens or approximate words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Optional list of main points or topics to emphasize within the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeReferences", + "type": "boolean", + "description": "Flag indicating whether to generate references or citations if applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document text and metadata such as type, style, and word count." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to convert a conceptual or thematic prompt into a coherent, structured document format. Suitable for drafting reports, articles, proposals, or summaries from brief instructions or topics. It helps automate document creation based on user intent and content guidelines.", + "limitations": "Cannot replace human expertise or in-depth domain research; the generated document may need editing for accuracy, factuality, or compliance. Style and length constraints approximate and not precise. Not suited for generating documents with highly confidential or sensitive data.", + "examples": [ + "Generate a formal report summarizing project outcomes from key milestones.", + "Create a casual blog article on AI advancements highlighting recent trends.", + "Produce a technical proposal with key focus areas and supporting references." + ] + }, + "tags": [ + "prompt engineering", + "document generation", + "text generation", + "writing assistant", + "content creation", + "AI-generated documents" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"Summarize the key milestones achieved in the Q1 marketing campaign.\",\"documentType\":\"report\",\"style\":\"formal\",\"maxLength\":400,\"keyPoints\":[\"campaign reach\",\"lead conversion\",\"ROI\"],\"includeReferences\":false}", + "description": "Generate a formal report summarizing key marketing milestones with emphasis on specific metrics." + }, + { + "inputJson": "{\"prompt\":\"Explain the latest AI research trends for a general audience.\",\"documentType\":\"article\",\"style\":\"casual\",\"maxLength\":600,\"keyPoints\":[\"transformers\",\"large language models\",\"ethical concerns\"],\"includeReferences\":false}", + "description": "Create a casual article for a broad readership about recent AI research highlights." + }, + { + "inputJson": "{\"prompt\":\"Draft a business proposal for launching a new eco-friendly product line.\",\"documentType\":\"proposal\",\"style\":\"professional\",\"maxLength\":800,\"keyPoints\":[\"market analysis\",\"product benefits\",\"cost estimates\"],\"includeReferences\":true}", + "description": "Produce a professional proposal document focusing on market and product details including references." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "email-communication.createCode", + "description": "Generates customized email sending automation code snippets based on user-defined parameters such as email content, recipients, scheduling, and preferred programming language. Outputs ready-to-use scripts compatible with popular email APIs and SMTP protocols.", + "category": "email-communication", + "parameters": [ + { + "name": "emailSubject", + "type": "string", + "description": "The subject line of the email to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailBody", + "type": "string", + "description": "The main content/body of the email, supports basic HTML formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "An array of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "sendSchedule", + "type": "string", + "description": "Cron or ISO 8601 formatted date/time string specifying when to send the email. If empty, sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Preferred programming language for the generated code, e.g., 'python', 'javascript', or 'php'.", + "required": true, + "defaultValue": "python" + }, + { + "name": "useHtml", + "type": "boolean", + "description": "Flag indicating if the email body includes HTML formatting and should be sent as HTML email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeAttachments", + "type": "boolean", + "description": "Specifies if the generated code template should include support for adding attachments.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a code snippet string and metadata describing the programming language and email API used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate customized code snippets or scripts for automating email sending tasks, fitting diverse environments and email service providers. Helpful for developers automating email notifications, marketing campaigns, or transactional emails without writing boilerplate integration code from scratch.", + "limitations": "Does not execute or deploy the generated code; user must integrate and run the code within their own development environment. It cannot validate recipient email addresses or handle complex email list management policies.", + "examples": [ + "Generate a Python script to send a marketing email with HTML content to multiple recipients immediately.", + "Create a JavaScript code snippet that schedules an email with plain text content for future sending using SMTP.", + "Produce a PHP example script supporting attachments to send a transactional email through an API." + ] + }, + "tags": [ + "email", + "automation", + "code-generation", + "SMTP", + "API", + "scripting", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"emailSubject\":\"Welcome to Our Service\",\"emailBody\":\"

Hello! Thank you for joining.

\",\"recipientList\":[\"user1@example.com\",\"user2@example.com\"],\"sendSchedule\":\"\",\"programmingLanguage\":\"python\",\"useHtml\":true,\"includeAttachments\":false}", + "description": "Generate Python code to send an immediate HTML welcome email to multiple recipients." + }, + { + "inputJson": "{\"emailSubject\":\"Monthly Report Reminder\",\"emailBody\":\"Please find the attached monthly report.\",\"recipientList\":[\"manager@example.com\"],\"sendSchedule\":\"2024-07-01T09:00:00Z\",\"programmingLanguage\":\"php\",\"useHtml\":false,\"includeAttachments\":true}", + "description": "Generate PHP code that schedules a plain text email with attachments to be sent on July 1, 2024." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "email-communication.createEmail", + "description": "Creates a structured email message with customizable recipients, subject, body, attachments, and metadata. Accepts inputs like to, cc, bcc addresses, subject line, plaintext and HTML content, attachments data, headers, and priority. Outputs a complete email object ready for sending or further processing.", + "category": "email-communication", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of primary recipient email addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of carbon copy recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of blind carbon copy recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyPlainText", + "type": "string", + "description": "Plaintext version of the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyHtml", + "type": "string", + "description": "HTML version of the email body for rich formatting.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachments where each contains filename and base64 encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "headers", + "type": "object", + "description": "Optional additional email headers as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "priority", + "type": "string", + "description": "Email priority level: low, normal, or high.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An email object containing all specified fields and structured for sending via SMTP or an email API." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically construct an email with multiple recipients, optional attachments, and customized headers before sending it or processing further. Ideal for automating email generation in workflows, notifications, or campaigns.", + "limitations": "This tool does not send emails on its own; it only creates the email object. It does not validate recipient addresses or encode attachments beyond base64 input format.", + "examples": [ + "Create an email to team members with subject and plain text body.", + "Create an email with HTML content and multiple attachments.", + "Create an email with custom headers like reply-to or priority set to high." + ] + }, + "tags": [ + "email", + "create", + "communication", + "automation", + "message", + "attachments", + "headers" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Meeting Reminder\",\"bodyPlainText\":\"Don't forget the meeting at 10 AM.\",\"priority\":\"high\"}", + "description": "Simple email with single recipient, subject, plain text body, and high priority." + }, + { + "inputJson": "{\"to\":[\"user1@example.com\",\"user2@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Weekly Report\",\"bodyHtml\":\"

Weekly Report

Please find attached.

\",\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"JVBERi0xLjQKJ...\"}]}", + "description": "Email to multiple recipients with CC, HTML body, and a PDF attachment." + }, + { + "inputJson": "{\"to\":[\"client@example.com\"],\"subject\":\"Welcome!\",\"bodyPlainText\":\"Welcome to our service.\",\"headers\":{\"Reply-To\":\"support@example.com\"}}", + "description": "Email with custom Reply-To header set." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "infrastructure-management.createCode", + "description": "This tool generates infrastructure automation code snippets based on user specifications. It accepts input parameters such as the target cloud provider, infrastructure components to create (e.g., virtual machines, storage buckets), desired programming or configuration language (e.g., Terraform, CloudFormation, Ansible), and customization options. It processes these inputs to produce ready-to-use code templates that can be used to provision and manage infrastructure resources consistently.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "cloudProvider", + "type": "string", + "description": "Target cloud platform for infrastructure code (e.g., aws, azure, gcp).", + "required": true, + "defaultValue": "" + }, + { + "name": "infrastructureComponents", + "type": "array", + "description": "List of infrastructure components to include (e.g., ['vm','database','loadBalancer']).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Preferred code or configuration language for output (e.g., terraform, cloudformation, ansible).", + "required": true, + "defaultValue": "" + }, + { + "name": "componentSpecifications", + "type": "object", + "description": "Optional detailed settings or parameters for each infrastructure component.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "region", + "type": "string", + "description": "Cloud region to target resources in (e.g., us-east-1).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and metadata including language and included components." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to quickly produce automation code to provision infrastructure resources in a specified cloud environment. It helps bridge the gap between infrastructure requirements and runnable code templates, enabling automated deployment and management workflows.", + "limitations": "This tool cannot validate the complete correctness or deployment readiness of the generated code. It does not execute or apply infrastructure and may not cover every edge case or proprietary resource configuration.", + "examples": [ + "Generate Terraform code to create a VM and database on AWS in us-east-1.", + "Produce Ansible playbooks for deploying a load balancer and storage bucket on GCP.", + "Create CloudFormation templates for a VM scale set with customized instance types on Azure." + ] + }, + "tags": [ + "infrastructure", + "automation", + "code-generation", + "cloud", + "provisioning", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"cloudProvider\":\"aws\",\"infrastructureComponents\":[\"vm\",\"database\"],\"language\":\"terraform\",\"componentSpecifications\":{\"vm\":{\"instanceType\":\"t3.micro\",\"count\":2},\"database\":{\"engine\":\"postgres\",\"version\":\"13\"}},\"region\":\"us-east-1\"}", + "description": "Generate Terraform code to provision two t3.micro AWS EC2 instances and a PostgreSQL 13 database in us-east-1." + }, + { + "inputJson": "{\"cloudProvider\":\"gcp\",\"infrastructureComponents\":[\"loadBalancer\",\"storageBucket\"],\"language\":\"ansible\",\"componentSpecifications\":{\"loadBalancer\":{\"type\":\"external\"},\"storageBucket\":{\"versioning\":true}},\"region\":\"us-central1\"}", + "description": "Produce Ansible playbook code for an external load balancer and a versioned storage bucket on GCP in us-central1." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "infrastructure-management.createDocument", + "description": "Creates a structured infrastructure documentation file based on provided parameters such as infrastructure type, components list, configuration details, and version. It processes inputs to generate a comprehensive document in Markdown or JSON format summarizing the setup, intended for configuration tracking and auditing.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "documentName", + "type": "string", + "description": "The title or name of the infrastructure document to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "infrastructureType", + "type": "string", + "description": "Type of infrastructure (e.g., cloud, on-premises, hybrid) being documented.", + "required": true, + "defaultValue": "" + }, + { + "name": "components", + "type": "array", + "description": "List of infrastructure components to include in the document, each with details like name, type, and configuration.", + "required": true, + "defaultValue": "" + }, + { + "name": "configurationDetails", + "type": "object", + "description": "Key-value pairs encapsulating configuration settings relevant to the infrastructure components.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "format", + "type": "string", + "description": "Output document format, such as 'markdown' or 'json'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "version", + "type": "string", + "description": "Version string or number to label the document version.", + "required": false, + "defaultValue": "1.0.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated infrastructure document content as a string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create detailed documentation for a cloud or on-premises infrastructure setup including component inventories and configurations to support management, audit, or compliance processes.", + "limitations": "Cannot automatically discover infrastructure components; requires explicit input data. Does not handle non-structured narrative writing beyond structured data-to-document conversion.", + "examples": [ + "Create a document for AWS cloud infrastructure listing EC2 instances and S3 buckets with their configuration.", + "Generate a documentation file for on-premises server infrastructure including hardware specs and network settings.", + "Produce a JSON-formatted infrastructure overview document for a hybrid environment detailing cloud and local resources." + ] + }, + "tags": [ + "documentation", + "infrastructure", + "cloud", + "on-premises", + "configuration", + "markdown", + "json" + ], + "examples": [ + { + "inputJson": "{\"documentName\":\"AWS Infrastructure Overview\",\"infrastructureType\":\"cloud\",\"components\":[{\"name\":\"EC2 Instance 1\",\"type\":\"EC2\",\"configuration\":{\"instanceType\":\"t3.medium\",\"region\":\"us-west-2\"}},{\"name\":\"S3 Bucket 1\",\"type\":\"S3\",\"configuration\":{\"storageClass\":\"STANDARD\",\"versioning\":true}}],\"format\":\"markdown\",\"version\":\"1.2.0\"}", + "description": "Create a markdown document summarizing AWS EC2 and S3 setup with version 1.2.0." + }, + { + "inputJson": "{\"documentName\":\"OnPrem Data Center\",\"infrastructureType\":\"on-premises\",\"components\":[{\"name\":\"Server Rack 12\",\"type\":\"hardware\",\"configuration\":{\"cpu\":\"Intel Xeon\",\"ram\":\"256GB\"}},{\"name\":\"Core Switch 5\",\"type\":\"network\",\"configuration\":{\"model\":\"Cisco 9300\",\"firmwareVersion\":\"16.9.5\"}}],\"format\":\"json\"}", + "description": "Generate a JSON document capturing key components in an on-prem data center." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "security-tools.analyzeReport", + "description": "Analyzes security reports provided as text or JSON to identify critical vulnerabilities, summarize risks, and prioritize remediation actions. Accepts raw security assessment reports, processes their content using pattern recognition and risk scoring, and outputs a structured summary highlighting key issues and recommended next steps.", + "category": "security-tools", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "Raw security report content as plain text or a JSON string representing the security findings.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the input report content (e.g., 'text', 'json'). Determines parsing method.", + "required": true, + "defaultValue": "text" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level of issues to include in the output summary (e.g., 'low', 'medium', 'high', 'critical').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to append remediation recommendations for identified vulnerabilities in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured analysis report object containing categorized vulnerabilities, severity counts, and optional remediation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives a raw security vulnerability report and needs to extract actionable insights. It helps distill large reports into focused summaries suitable for decision-making and prioritizing fixes.", + "limitations": "This tool cannot perform live vulnerability scanning or access external systems. It depends on the input report accuracy and format; unstructured or incomplete reports may reduce quality of analysis.", + "examples": [ + "Summarize the security vulnerabilities from this JSON scan report highlighting critical issues.", + "Analyze the penetration test report text and list high severity findings with suggested fixes.", + "Extract key risks from this security assessment report with severity above medium." + ] + }, + "tags": [ + "security", + "analysis", + "report", + "vulnerabilities", + "risk", + "summary" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"{\\\"vulnerabilities\\\":[{\\\"id\\\":\\\"CVE-2021-1234\\\",\\\"severity\\\":\\\"high\\\",\\\"description\\\":\\\"Remote code execution flaw in XYZ component.\\\"}]}','reportFormat':'json','severityThreshold':'high','includeRecommendations':true}", + "description": "Analyzes a JSON formatted security scan report focusing on high severity vulnerabilities, including remediation suggestions." + }, + { + "inputJson": "{\"reportContent\":\"Scan report: multiple outdated libraries found with known exploits. SQL injection detected in login endpoint.\",\"reportFormat\":\"text\",\"severityThreshold\":\"medium\",\"includeRecommendations\":true}", + "description": "Processes a plain text security scan report extracting vulnerabilities at medium severity or higher with recommendations." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "customer-support.analyzeDocument", + "description": "This tool accepts customer support documents—such as transcripts, emails, or chat logs—and analyzes them to identify customer sentiment, key topics, and common issues. It produces a structured summary highlighting sentiment scores, frequently mentioned topics, and potential areas for support improvement.", + "category": "customer-support", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text content of the customer support document to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "The type of document being analyzed (e.g., 'email', 'chat', 'transcript').", + "required": false, + "defaultValue": "chat" + }, + { + "name": "language", + "type": "string", + "description": "The language of the document content, used for accurate sentiment and topic analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the document text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopicExtraction", + "type": "boolean", + "description": "Whether to extract key topics or issues mentioned in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of key topics/items to extract from the document.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An analysis summary including overall sentiment score, identified key topics or issues, and a confidence level for the insights provided." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically evaluate customer service documents to understand customer sentiment, identify recurring issues, or gather insights for improving support processes. It aids in summarizing large volumes of support communications effectively.", + "limitations": "Cannot replace detailed human qualitative analysis. May be less accurate on very short texts or documents with ambiguous language or mixed languages. Does not provide personalized response generation.", + "examples": [ + "Analyze this customer email to assess overall satisfaction and identify main complaint topics.", + "Process a chat transcript to extract common issues and sentiment trends.", + "Evaluate a collection of support tickets to summarize recurring problems and customer moods." + ] + }, + "tags": [ + "customer-support", + "document-analysis", + "sentiment-analysis", + "topic-extraction", + "support-insights", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Hi, I am unhappy with the recent update to the app. It crashes frequently and causes data loss.\",\"documentType\":\"email\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"includeTopicExtraction\":true,\"maxTopics\":3}", + "description": "Analyze a customer email with complaints about an app update, extracting sentiment and key issues." + }, + { + "inputJson": "{\"documentText\":\"Hello, I need help with my order #12345, it hasn’t shipped yet.\",\"documentType\":\"chat\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"includeTopicExtraction\":true,\"maxTopics\":2}", + "description": "Analyze a chat message requesting order status to identify urgency and relevant topics." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "content-creation.analyzeDocument", + "description": "Analyzes the provided digital document text to extract key information such as topic summary, keyword frequency, sentiment analysis, and readability score. Accepts raw text or document content as input and returns a structured analysis report outlining document characteristics and content insights.", + "category": "content-creation", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text content of the document to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the document text, e.g., 'en' for English, used to tailor analysis appropriately.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the text to determine overall emotional tone.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and return the most frequent and relevant keywords from the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxKeywordCount", + "type": "number", + "description": "Maximum number of keywords to return in the analysis report.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "A structured report object containing a summary of the document, sentiment results, list of keywords with frequencies, and readability metrics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand, summarize, or extract analytics from textual documents for decision making, content auditing, or metadata generation. It helps when parsing unstructured document content to get meaningful insights quickly.", + "limitations": "Cannot interpret document layout or images, does not perform deep domain-specific semantic analysis, and may have reduced accuracy on highly technical or mixed-language documents.", + "examples": [ + "Analyze the sentiment and keywords of this project proposal document.", + "Summarize and extract main topics from a user manual text.", + "Provide readability scores and keyword frequency for a blog post content." + ] + }, + "tags": [ + "content analysis", + "text analytics", + "document summarization", + "sentiment analysis", + "keyword extraction", + "readability" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"This report outlines the quarterly sales figures and market trends observed in Q2 2024. The data indicates a positive growth trajectory for our key products, with customer satisfaction ratings improving consistently.\",\"includeSentiment\":true,\"includeKeywords\":true}", + "description": "Analyze a business report text to extract summary, sentiment, and keywords." + }, + { + "inputJson": "{\"documentText\":\"In this user guide, you'll learn how to install and configure the software for optimal performance. Follow each step carefully to ensure a smooth setup process.\",\"language\":\"en\",\"includeSentiment\":false}", + "description": "Analyze a user guide document focusing on keywords and readability without sentiment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "etl-processes.createFile", + "description": "Creates a file with specified content and format as part of an ETL process. Accepts input data as a string or structured object, formats or transforms it based on the specified file type, and writes it to a file with the given filename and path. Supports common text and data file formats such as CSV, JSON, and TXT.", + "category": "etl-processes", + "parameters": [ + { + "name": "filename", + "type": "string", + "description": "Name of the file to create, including extension (e.g., data.csv).", + "required": true, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Directory path where the file will be created. Defaults to current working directory if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Raw content to write into the file. Can be raw text or serialized data.", + "required": false, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Structured data to be transformed into the specified file format (ignored if content is provided).", + "required": false, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Format of file to generate; supported types include 'csv', 'json', 'txt'. Determines how data input is transformed and saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists. Defaults to false to prevent unintentional data loss.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object containing filePath and success status, or error message if failure occurs." + }, + "aiAgent": { + "useCase": "Use this tool when you need to export or save processed data or text into a physical file during ETL workflows. It supports creating files in common data exchange formats to enable downstream data loading or sharing.", + "limitations": "Does not support generating binary file formats or very large files that require streaming. Content must be serializable to the specified file type. No built-in validation of data correctness beyond format transformation.", + "examples": [ + "Create a CSV file from an array of data rows.", + "Save a JSON object as a .json file.", + "Write raw text content into a .txt file." + ] + }, + "tags": [ + "file", + "etl", + "create", + "export", + "data-format", + "csv", + "json", + "txt" + ], + "examples": [ + { + "inputJson": "{\"filename\":\"report.csv\",\"filePath\":\"/tmp\",\"data\":{\"headers\":[\"id\",\"value\"],\"rows\":[[1,10],[2,20]]},\"fileType\":\"csv\",\"overwrite\":true}", + "description": "Create or overwrite a CSV file named report.csv with tabular data in the /tmp directory." + }, + { + "inputJson": "{\"filename\":\"config.json\",\"content\":\"{\\\"env\\\":\\\"prod\\\",\\\"version\\\":1.2}\",\"fileType\":\"json\",\"overwrite\":false}", + "description": "Create a JSON file named config.json with provided raw JSON content in the current directory, do not overwrite if exists." + }, + { + "inputJson": "{\"filename\":\"notes.txt\",\"content\":\"Meeting notes:\\n- Discuss roadmap\\n- Assign tasks\",\"fileType\":\"txt\"}", + "description": "Create a text file named notes.txt containing meeting notes as plain text." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "etl-processes.generateDocument", + "description": "This tool accepts structured data inputs along with configuration parameters to extract relevant information, transform it as per rules, and generate a formatted document such as a report, summary, or export file (PDF, DOCX, HTML). It processes source data and outputs a ready-to-use document for review or distribution.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured input data to be extracted and transformed into the document content, must follow the specified schema or format.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateType", + "type": "string", + "description": "The document template format to use for generation, e.g., 'report', 'summary', 'invoice'.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the output file format such as 'pdf', 'docx', or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag indicating whether to generate and embed charts or graphs based on input data if applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the generated document text, e.g., 'en', 'fr', 'de'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata like author, title, date to be included in the document properties.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document content as a base64 encoded string, the filename, and the MIME type for further processing or download." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform structured ETL data inputs into formal, well-formatted documents suitable for reports, summaries, or exports in popular document formats. It handles data extraction, formatting, and export to facilitate document automation within data pipelines.", + "limitations": "Cannot perform arbitrary unstructured text generation or advanced natural language summarization beyond structured template usage. Limited by input data schema compatibility and currently supports only specified output formats.", + "examples": [ + "Generate a monthly sales report PDF from processed sales data.", + "Create an invoice document in DOCX format based on extracted order details.", + "Produce an HTML summary document including charts from ETL processed metrics." + ] + }, + "tags": [ + "etl", + "document generation", + "reporting", + "data export", + "automation", + "pdf", + "docx", + "html" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"sales\":[{\"region\":\"North\",\"amount\":12000},{\"region\":\"South\",\"amount\":15000}]},\"templateType\":\"report\",\"outputFormat\":\"pdf\",\"includeCharts\":true,\"language\":\"en\",\"metadata\":{\"author\":\"John Doe\",\"title\":\"Monthly Sales Report\"}}", + "description": "Generate a PDF sales report with charts from sales data including author metadata." + }, + { + "inputJson": "{\"inputData\":{\"orders\":[{\"id\":101,\"product\":\"Book\",\"quantity\":2,\"price\":15}]},\"templateType\":\"invoice\",\"outputFormat\":\"docx\",\"includeCharts\":false}", + "description": "Create a DOCX invoice document from extracted order data without charts." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.createReport", + "description": "Generates a structured report from a specified database by executing a given SQL query or using table names and filters. Accepts parameters like database connection info, query or tables, filters, report format, and outputs a formatted report document (PDF, CSV, or JSON) summarizing the requested data.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string or URI to access the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "sqlQuery", + "type": "string", + "description": "Custom SQL query to fetch data for the report. If provided, tables and filters are ignored.", + "required": false, + "defaultValue": "" + }, + { + "name": "tables", + "type": "array", + "description": "List of table names to include in the report when sqlQuery is not given.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs specifying filters to apply on tables data, e.g., {\"status\":\"active\"}. Ignored if sqlQuery is provided.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the output report. Supported: 'pdf', 'csv', 'json'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include the generation timestamp in the report header.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated report's binary content as base64 string and metadata like file name and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool to produce readable, shareable reports directly from database data, either by specifying exact SQL queries or by selecting tables and filters. Useful for automatically generating periodic reports, auditing data snapshots, or providing formatted exports for analysis.", + "limitations": "Cannot perform complex report layout design beyond basic formatting. Relies on valid database connectivity and query correctness. Does not handle database schema migrations or live data visualizations (charts).", + "examples": [ + "Generate a PDF report from the 'users' and 'transactions' tables filtering only active users.", + "Create a CSV report by running a custom SQL query summarizing monthly sales.", + "Produce a JSON report with customer data including a timestamp." + ] + }, + "tags": [ + "database", + "reporting", + "SQL", + "data-export", + "pdf", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"tables\":[\"users\",\"orders\"],\"filters\":{\"status\":\"active\"},\"reportFormat\":\"pdf\",\"includeTimestamp\":true}", + "description": "Generate a PDF report from 'users' and 'orders' tables with only active records including timestamp." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"sqlQuery\":\"SELECT category, SUM(amount) as totalSales FROM sales WHERE sale_date >= '2024-01-01' GROUP BY category\",\"reportFormat\":\"csv\",\"includeTimestamp\":false}", + "description": "Run custom SQL to get sales summary per category since 2024, output as CSV without timestamp." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"tables\":[\"customers\"],\"reportFormat\":\"json\",\"includeTimestamp\":true}", + "description": "Create a JSON report including all customers and add a report generation timestamp." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "backend-development.analyzeJSON", + "description": "This tool accepts a JSON string input and performs structural analysis, including validation against JSON syntax, identification of data types for each field, detection of common anomalies such as missing fields or null values, and summary statistics for numeric data. It outputs a detailed report outlining structure correctness, type distribution, potential issues, and aggregated insights on the JSON content.", + "category": "backend-development", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "The JSON string to analyze for structure and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Flag indicating whether to validate the JSON against a provided schema if available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schema", + "type": "object", + "description": "An optional JSON Schema object to validate the input JSON against.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeStatistics", + "type": "boolean", + "description": "Whether to include statistical summaries (min, max, average) for numeric fields found in the JSON.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to detect anomalies like missing required fields or unexpected nulls in the JSON structure.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including validation results, field types, anomalies detected, and statistics about numeric data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to verify the correctness and structure of JSON data within backend systems, to quickly identify errors, schema mismatches, or to gain insights on the data distribution and anomalies present. It supports tasks like data validation, debugging JSON payloads, and automated JSON quality assurance.", + "limitations": "This tool does not transform or correct JSON data; it only analyzes and reports on structure and content. It also relies on schema validity if schema validation is enabled and does not handle extremely large JSON payloads efficiently.", + "examples": [ + "Analyze a JSON response from an API to check for missing fields and data types.", + "Validate user-submitted JSON data against a predefined schema for correctness.", + "Generate statistics for numeric values in a JSON dataset to understand data distribution." + ] + }, + "tags": [ + "json", + "analysis", + "validation", + "backend", + "data-quality", + "schema", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"users\\\":[{\\\"id\\\":1,\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30},{\\\"id\\\":2,\\\"name\\\":\\\"Bob\\\",\\\"age\\\":null}]}\"", + "description": "Analyze a JSON object with an array of user records, checking for types and presence of null values." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"product\\\":\\\"Widget\\\", \\\"price\\\":19.99, \\\"stock\\\":100}\",\"includeStatistics\":true}", + "description": "Analyze a JSON object containing product details to derive statistics on numeric values." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "backend-development.analyzeText", + "description": "Analyzes input text by performing sentiment analysis, keyword extraction, and language detection. Accepts plain text as input, processes it using NLP techniques, and outputs detailed insights including sentiment score, key topics, and detected language.", + "category": "backend-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "languages", + "type": "array", + "description": "An optional list of languages to consider for detection to improve accuracy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Flag to enable keyword extraction from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Flag to enable sentiment analysis of the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxKeywords", + "type": "number", + "description": "Maximum number of keywords to extract from the text.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including sentiment score (range -1 to 1), extracted keywords array, and detected language code." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract actionable insights from textual data in server-side applications, such as user reviews, support tickets, or feedback, to inform business decisions or automate workflows.", + "limitations": "Does not perform deep semantic analysis or context-aware interpretation beyond basic NLP techniques; accuracy can vary based on input language and quality.", + "examples": [ + "Analyze sentiment and keywords of a customer review text.", + "Detect language and extract main topics from a support ticket.", + "Summarize key points by extracting keywords from user feedback." + ] + }, + "tags": [ + "text-analysis", + "nlp", + "sentiment", + "keyword-extraction", + "language-detection", + "backend", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"text\":\"I really love the new update on your app! The interface is so much better and easier to use.\",\"extractKeywords\":true,\"analyzeSentiment\":true,\"maxKeywords\":5}", + "description": "Analyze positive feedback text to get sentiment and main keywords." + }, + { + "inputJson": "{\"text\":\"Le produit ne fonctionne pas comme attendu.\",\"languages\":[\"fr\",\"en\"],\"analyzeSentiment\":true}", + "description": "Analyze French text to detect language and sentiment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "backend-development.uploadDocument", + "description": "Uploads a document file to a backend server, accepting inputs such as file content or path, document metadata (title, description, tags), and target storage location. It processes the file by validating format, storing securely, and indexing metadata, then responds with a unique document ID, storage URL, and upload status.", + "category": "backend-development", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded string of the document file content to upload. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local or accessible server path to the document file to upload. Required if fileContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the document for identification and indexing purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief description or summary of the document's content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags for categorizing and searching the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "storageLocation", + "type": "string", + "description": "Destination storage identifier or path where the document should be uploaded, e.g., a S3 bucket or database key prefix.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Flag indicating whether to overwrite an existing document with the same title at the storage location.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload result, including documentId (unique identifier), storageUrl (direct access URL), and status message." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload documents (PDFs, Word files, images, etc.) to a backend server or cloud storage with metadata for cataloging. It facilitates automated ingestion pipelines, document management systems, or content hosting backends.", + "limitations": "This tool does not perform document content analysis, OCR, or format conversion. It requires the document content or valid file path to be accessible at runtime. It does not handle user authentication or authorization.", + "examples": [ + "Upload a contract PDF with title and tags to the 'legal-documents' storage bucket.", + "Upload an image file by providing base64 content and set overwrite to true to replace an existing file.", + "Upload a research paper document specifying description and multiple category tags." + ] + }, + "tags": [ + "upload", + "backend", + "document", + "file-storage", + "api", + "document-management", + "server" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/tmp/report.pdf\",\"title\":\"Monthly Report\",\"description\":\"Sales data for April\",\"tags\":[\"sales\",\"report\",\"2024\"],\"storageLocation\":\"s3://company-docs/reports/2024/\",\"overwrite\":false}", + "description": "Upload a PDF report file from a local path to an S3 bucket with metadata and no overwrite." + }, + { + "inputJson": "{\"fileContent\":\"VGhpcyBpcyBhIHRlc3QgZG9jdW1lbnQgY29udGVudC4=\",\"title\":\"Test Document\",\"tags\":[\"test\"],\"storageLocation\":\"database/docs\",\"overwrite\":true}", + "description": "Upload a base64 encoded document content to database storage, allowing overwrite." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "backend-development.uploadFile", + "description": "Uploads a file to a backend server or cloud storage. Accepts file content or path along with metadata and optional authentication details. Processes the data by storing it securely and returns a direct access URL and file metadata upon successful upload.", + "category": "backend-development", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the file including extension to be saved as on the server or storage.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Base64 encoded content of the file to be uploaded. Either this or filePath is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local system path of the file to upload. Either this or fileContent is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "MIME type of the file, e.g., image/png, application/pdf, used for storage metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationFolder", + "type": "string", + "description": "Optional folder or bucket path on the server or cloud storage where the file will be placed.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "If true, overwrite existing file with the same name and path; otherwise, upload will fail if file exists.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token for accessing the backend upload API or cloud storage service.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing URL to access the uploaded file, metadata like size and upload timestamp, and status message." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload files such as images, documents, or media to a server or cloud storage as part of backend processing or API integration workflows. Useful for handling user uploads, backups, or asset management.", + "limitations": "This tool does not handle file validation or scanning for viruses; it assumes input files are safe. It does not perform chunked uploads for very large files beyond server capability, so extremely large files may require specialized handling.", + "examples": [ + "Upload a user profile picture from base64 content with authentication.", + "Upload a document from a file path to a specific folder without overwriting.", + "Upload an image to a public folder with MIME type specified." + ] + }, + "tags": [ + "upload", + "file", + "backend", + "storage", + "cloud", + "media", + "api" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"example.png\",\"fileContent\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"contentType\":\"image/png\",\"destinationFolder\":\"images/avatars\",\"authToken\":\"eyJhbGciOiJIUzI1...\"}", + "description": "Upload an image file from base64 content to the avatars folder with auth token." + }, + { + "inputJson": "{\"fileName\":\"report.pdf\",\"filePath\":\"/local/path/report.pdf\",\"destinationFolder\":\"documents/reports\",\"overwrite\":true}", + "description": "Upload a PDF document from local path to reports folder, allowing overwrite if it exists." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "backend-development.uploadCode", + "description": "Uploads code files or project archives to a remote repository or deployment server. Accepts single or multiple files, or compressed archives, processes authentication and target paths, and returns upload status and metadata about the stored code.", + "category": "backend-development", + "parameters": [ + { + "name": "files", + "type": "array", + "description": "An array of code files or archive binaries to upload, each represented as an object with filename and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetPath", + "type": "string", + "description": "The directory or repository path where the code should be uploaded or deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or key for the remote server or repository access.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite existing files at the target location.", + "required": false, + "defaultValue": "false" + }, + { + "name": "repositoryType", + "type": "string", + "description": "Type of target repository or server (e.g., 'git', 'ftp', 'sftp', 'http').", + "required": false, + "defaultValue": "git" + } + ], + "returns": { + "type": "object", + "description": "Result object including success status, list of uploaded file paths, and any error messages encountered during upload." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload code files or archives to a remote server or code repository during deployment or code synchronization. It helps automate pushing code assets over authenticated channels to specified paths or repositories.", + "limitations": "This tool does not perform code compilation, testing, or validation; it only uploads files. It also cannot resolve merge conflicts or repository branching logic beyond simple upload.", + "examples": [ + "Upload a zipped project archive to a deployment folder using FTP with credentials.", + "Push multiple updated code files to a Git remote repository folder using an access token.", + "Upload single code file to an SFTP server directory, optionally overwriting existing file." + ] + }, + "tags": [ + "backend", + "upload", + "code", + "deployment", + "repository", + "automation" + ], + "examples": [ + { + "inputJson": "{\"files\":[{\"filename\":\"app.js\",\"content\":\"console.log('hello world');\"}],\"targetPath\":\"/var/www/project\",\"authToken\":\"abcd1234token\",\"overwriteExisting\":true,\"repositoryType\":\"sftp\"}", + "description": "Upload a single JavaScript file to an SFTP server directory with overwrite permission." + }, + { + "inputJson": "{\"files\":[{\"filename\":\"project.zip\",\"content\":\"UEsDBBQAAAAIAAeLbVQAAAAAAAAAAAAAAAAJAAQATWV0YS9fcmVhZC5tZXRhVVQJAAPewpJbg7CKW1eAsAAQT1AQAABBQAAAAtjb25maWcuYyZjYyZmMHJlcG9zaXRvcnkKUEsBAhQAFAAAAAgAB4ttVAAAAAAAAAAAAAAAAAAkABAAAAAAAAAAAAAAAAAAAARGF0YS9fcmVhZC5tZXRhVVQFAAPewpJbb1BLBQYAAAAAAQABADwAAAB6AAAAAAA=\"}],\"targetPath\":\"/repos/project\",\"authToken\":\"gitTokenXYZ\",\"overwriteExisting\":false,\"repositoryType\":\"git\"}", + "description": "Upload a zipped project archive to a Git repository folder without overwriting existing files." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "backend-development.formatDocument", + "description": "Formats server-side document data such as JSON, XML, or HTML strings for improved readability and consistency by applying configurable indentation, line breaks, and style rules. Accepts raw document strings as input and outputs the formatted document string.", + "category": "backend-development", + "parameters": [ + { + "name": "documentString", + "type": "string", + "description": "The raw document content as a string to be formatted (e.g., JSON, XML, or HTML string).", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of the document provided: 'json', 'xml', or 'html'. Determines the formatting rules applied.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "selfClosingTagsOnNewLine", + "type": "boolean", + "description": "For HTML documents, whether self-closing tags should start on a new line.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sortJsonKeys", + "type": "boolean", + "description": "For JSON documents, whether to sort object keys alphabetically.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document string under 'formattedDocument' and the document type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare or clean server-side document strings (JSON, XML, HTML) for consistent storage, logging, display, or transmission by applying standard formatting and style rules to improve readability and reduce parsing errors.", + "limitations": "This tool only formats document strings based on common formatting conventions and does not validate syntactic correctness beyond basic parsing. It cannot convert between document types or fix semantic errors.", + "examples": [ + "Format a raw JSON string with 4-space indentation and sorted keys for API responses.", + "Beautify a minified HTML template string with tabs for indentation before rendering on server.", + "Pretty-print an XML configuration string with 2-space indentation for easier debugging." + ] + }, + "tags": [ + "formatting", + "document", + "backend-development", + "json", + "xml", + "html", + "pretty-print" + ], + "examples": [ + { + "inputJson": "{\"documentString\":\"{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30,\\\"hobbies\\\":[\\\"reading\\\",\\\"gaming\\\"]}\",\"documentType\":\"json\",\"indentationSpaces\":4,\"sortJsonKeys\":true}", + "description": "Formats a JSON string with 4 spaces indentation and sorted keys." + }, + { + "inputJson": "{\"documentString\":\"

Hello World

\",\"documentType\":\"html\",\"useTabs\":true,\"selfClosingTagsOnNewLine\":true}", + "description": "Formats an HTML string using tabs for indentation and places self-closing tags on new lines." + }, + { + "inputJson": "{\"documentString\":\"value\",\"documentType\":\"xml\",\"indentationSpaces\":2}", + "description": "Formats a simple XML string with 2 spaces indentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "backend-development.formatCode", + "description": "Formats source code according to specified style rules. Accepts raw code as input along with optional parameters such as programming language, indentation style, tab width, and whether to use tabs or spaces. Outputs the formatted code as a string, improving readability and consistency for backend development projects.", + "category": "backend-development", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The source code to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the source code to determine appropriate formatting rules (e.g., 'javascript', 'python').", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "indentStyle", + "type": "string", + "description": "Indentation style to use: 'space' or 'tab'.", + "required": false, + "defaultValue": "space" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces or tabs per indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length before wrapping code (0 means no limit).", + "required": false, + "defaultValue": "80" + }, + { + "name": "insertFinalNewline", + "type": "boolean", + "description": "Whether to ensure the formatted code ends with a newline character.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimTrailingWhitespace", + "type": "boolean", + "description": "Whether to remove trailing whitespace at the end of lines.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string under the 'formattedCode' property." + }, + "aiAgent": { + "useCase": "This tool should be used when backend code needs consistent and clean formatting according to coding standards, improving readability and reducing diffs caused by inconsistent styles. It can be invoked when receiving unformatted or mixed-style code that needs to be standardized before deployment or review.", + "limitations": "It cannot fix syntactical code errors or refactor code logic. Formatting is based on common style rules but may not cover all edge cases or custom styles without configuration.", + "examples": [ + "Format unformatted JavaScript code with 2 spaces indentation.", + "Format Python code using tabs instead of spaces for indentation.", + "Ensure code lines do not exceed 80 characters by wrapping where appropriate." + ] + }, + "tags": [ + "backend-development", + "code", + "formatting", + "styles", + "source-code", + "linting", + "clean-code" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function example(){console.log('Hello, world!');}\",\"language\":\"javascript\",\"indentStyle\":\"space\",\"indentSize\":2}", + "description": "Format simple JavaScript function with 2 spaces indentation." + }, + { + "inputJson": "{\"code\":\"def func():\\n print('Hello')\",\"language\":\"python\",\"indentStyle\":\"tab\",\"indentSize\":1}", + "description": "Format Python code to use tab indentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "backend-development.composeDocument", + "description": "This tool accepts structured content including sections and metadata to compose a well-formatted backend-related document such as API specifications, technical design documents, or developer guides. It processes input JSON describing document structure and outputs a formatted markdown or HTML document string ready for consumption or further processing.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the document to be composed", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the document author or creator", + "required": false, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of section objects each containing a heading and content in markdown or plain text", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output document, e.g., 'markdown' or 'html'", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate a table of contents at the start of the document", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata such as version, date, or tags to include in the document header", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted document as a string and the MIME type indicating output format" + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create backend development documents such as API documentation, technical specs, or developer guides from structured content inputs. It helps automate document generation workflows or API responses needing formatted textual outputs.", + "limitations": "Does not perform advanced natural language generation or content compliance checking; input content must be pre-written or automatically generated separately.", + "examples": [ + "Generate an API specification markdown document from endpoint details.", + "Create a technical design HTML document with sections for architecture and database schema.", + "Produce a developer onboarding guide with metadata including version and author." + ] + }, + "tags": [ + "backend", + "documentation", + "compose", + "API", + "technical-spec", + "markdown", + "html" + ], + "examples": [ + { + "inputJson": "{\"title\":\"API Specification\",\"author\":\"Alice\",\"sections\":[{\"heading\":\"Introduction\",\"content\":\"This API allows managing user resources.\"},{\"heading\":\"Endpoints\",\"content\":\"- GET /users\\n- POST /users\"}],\"outputFormat\":\"markdown\",\"includeTableOfContents\":true}", + "description": "Compose a markdown API specification document with title and two sections." + }, + { + "inputJson": "{\"title\":\"Tech Design Doc\",\"author\":\"Bob\",\"sections\":[{\"heading\":\"Overview\",\"content\":\"System layout and architecture.\"},{\"heading\":\"Database\",\"content\":\"Schema description and ER diagram.\"}],\"outputFormat\":\"html\",\"includeTableOfContents\":false}", + "description": "Generate an HTML technical design document without a table of contents." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "backend-development.generateText", + "description": "Generates text content based on a prompt and configurable options, supporting styles like casual, professional, or technical. Accepts input parameters such as prompt, maxLength, tone, and language, then produces coherent, contextually relevant text output.", + "category": "backend-development", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "The initial text or idea to base the generation on", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated text in characters", + "required": false, + "defaultValue": "500" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the generated text, e.g., casual, professional, technical", + "required": false, + "defaultValue": "professional" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the generated text, e.g., en, es, fr", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include illustrative examples in the output text", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text string under the 'text' key." + }, + "aiAgent": { + "useCase": "Use this tool when a backend service requires dynamically created text content based on specific prompts, including generating documentation snippets, automated messages, or content for APIs. It helps automate content generation with controllable style, length, and language.", + "limitations": "This tool does not provide real-time interactive conversations or context-aware multi-turn dialogue. It may not preserve specific factual accuracy or latest data unless incorporated explicitly in the prompt or context.", + "examples": [ + "Generate a professional summary for an API endpoint.", + "Create a casual greeting message for new users.", + "Produce a technical explanation for a development concept in Spanish." + ] + }, + "tags": [ + "text-generation", + "content-creation", + "api", + "backend", + "automation", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"Write a professional introduction for a REST API documentation.\",\"maxLength\":300,\"tone\":\"professional\",\"language\":\"en\",\"includeExamples\":false}", + "description": "Generates a concise, professional introduction text suitable for REST API docs." + }, + { + "inputJson": "{\"prompt\":\"Explain JWT authentication in casual tone.\",\"maxLength\":200,\"tone\":\"casual\",\"language\":\"en\",\"includeExamples\":true}", + "description": "Generates an easy-to-understand, casual explanation about JWT authentication including examples." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "backend-development.generateTest", + "description": "Generates unit test code for backend functions or endpoints. Accepts input source code or function signature along with target test framework preferences. Outputs ready-to-use test code snippets covering typical cases, including setup, execution, assertions, and teardown.", + "category": "backend-development", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "Source code of the backend function or API endpoint to generate tests for; can be a function body or signature. Required to understand what to test.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The test framework to generate code for (e.g., Jest, Mocha, Jasmine). Helps tailor syntax and structure of tests.", + "required": true, + "defaultValue": "Jest" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the source code (e.g., JavaScript, TypeScript, Python). Determines syntax style for generated tests.", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to include tests for edge cases such as invalid inputs and error handling.", + "required": false, + "defaultValue": "true" + }, + { + "name": "mockDependencies", + "type": "boolean", + "description": "Flag to generate mocks or stubs for external dependencies or services used by the function.", + "required": false, + "defaultValue": "true" + }, + { + "name": "testNamePrefix", + "type": "string", + "description": "Optional prefix to prepend to generated test names for clarity or organization.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string and metadata such as the test framework used and coverage notes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate comprehensive unit test code for backend functions or API endpoints to speed up development and ensure consistent test coverage. Ideal when provided with source code or function signature and desired test framework/language.", + "limitations": "Does not analyze complex business logic deeply to ensure complete coverage; generated tests cover typical and edge cases based mostly on input signatures and common patterns. May require manual refinement for highly complex or asynchronous behaviors.", + "examples": [ + "Generate Jest unit tests for a JavaScript function handling user login.", + "Generate Mocha tests for a TypeScript API endpoint verifying error handling.", + "Generate Python unittest tests for a backend function with mocks for external services." + ] + }, + "tags": [ + "backend", + "testing", + "unit-test", + "code-generation", + "automation", + "api", + "javascript", + "typescript" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function add(a, b) { return a + b; }\",\"testFramework\":\"Jest\",\"language\":\"JavaScript\",\"includeEdgeCases\":true,\"mockDependencies\":false,\"testNamePrefix\":\"math\"}", + "description": "Generate Jest test code for a simple add function with edge case tests included, no mocks." + }, + { + "inputJson": "{\"sourceCode\":\"async function getUser(id) { return await db.findUser(id); }\",\"testFramework\":\"Mocha\",\"language\":\"JavaScript\",\"includeEdgeCases\":true,\"mockDependencies\":true,\"testNamePrefix\":\"userAPI\"}", + "description": "Generate Mocha tests for an asynchronous getUser function, including mocks for the database dependency." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "backend-development.createText", + "description": "Generates customized plain text content based on input parameters including templates, variables, and formatting options. Accepts a template string with placeholders and a dictionary of variables to replace them, producing formatted text output suitable for backend processes like automated emails or reports.", + "category": "backend-development", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "Template string containing placeholders like {{variableName}} to be replaced with actual values.", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs to replace placeholders in the template with specific values.", + "required": true, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Optional formatting settings such as line endings, indentation, or text case conversions.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resulting generated text as a single string under the property 'text'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate plain text documents or messages on the backend, such as generating emails, logs, notifications, or reports, where variable substitution and optional formatting is required.", + "limitations": "Cannot generate multimedia content or perform complex natural language generation beyond text substitution and simple formatting. It requires pre-defined templates and variables supplied by the user.", + "examples": [ + "Generate a personalized welcome email by filling in user details in a template.", + "Create a formatted log entry by inserting dynamic values into a log message template.", + "Produce a report summary by substituting metrics into a predefined text structure." + ] + }, + "tags": [ + "text-generation", + "template-processing", + "backend", + "automation", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"template\":\"Hello {{firstName}} {{lastName}}, your order {{orderId}} has been shipped.\",\"variables\":{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"orderId\":\"12345\"},\"formattingOptions\":{\"lineEnding\":\"\\n\"}}", + "description": "Generate a shipping notification email with customer and order data." + }, + { + "inputJson": "{\"template\":\"Report Summary:\\nTotal Sales: {{totalSales}}\\nNew Customers: {{newCustomers}}\",\"variables\":{\"totalSales\":\"$10,000\",\"newCustomers\":\"25\"},\"formattingOptions\":{\"lineEnding\":\"\\n\"}}", + "description": "Create a sales report summary with metrics inserted into the template." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "backend-development.createMessage", + "description": "Creates a structured message object for server-side applications, accepting inputs like sender ID, recipient ID, subject, and body text, optionally with attachments and metadata. Processes inputs to produce a standardized message object suitable for storage, transmission, or further processing.", + "category": "backend-development", + "parameters": [ + { + "name": "senderId", + "type": "string", + "description": "Unique identifier of the message sender", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the message recipient", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject or title of the message", + "required": false, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the message", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachment objects, each containing filename and data", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata object for additional message attributes like timestamps, tags, or priority", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A message object containing senderId, recipientId, subject, body, attachments array, metadata object, and a generated messageId with creation timestamp" + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build a validated message object within backend systems, such as messaging platforms, notifications, or email services. Ideal for assembling message data before saving to databases or sending over network APIs.", + "limitations": "This tool does not handle message delivery, encryption, or validation of recipient existence. It also does not manage large file attachments or streaming data.", + "examples": [ + "Create a message from user A to user B with subject 'Hello' and some text body.", + "Generate an internal notification message with metadata tags indicating urgency.", + "Create a message including a list of attachments with file names and content." + ] + }, + "tags": [ + "backend", + "message", + "create", + "communication", + "api", + "notification", + "server" + ], + "examples": [ + { + "inputJson": "{\"senderId\":\"user123\",\"recipientId\":\"user456\",\"subject\":\"Meeting Reminder\",\"body\":\"Don't forget the meeting at 10 AM.\",\"attachments\":[],\"metadata\":{\"priority\":\"high\",\"timestamp\":\"2024-06-01T08:00:00Z\"}}", + "description": "Message with sender, recipient, subject, body, no attachments, and metadata with priority and timestamp." + }, + { + "inputJson": "{\"senderId\":\"system\",\"recipientId\":\"user789\",\"subject\":\"Account Update\",\"body\":\"Your password has been changed.\",\"attachments\":[],\"metadata\":{}}", + "description": "System-generated message notifying user about account changes, with empty metadata." + }, + { + "inputJson": "{\"senderId\":\"user111\",\"recipientId\":\"user222\",\"subject\":\"Photos\",\"body\":\"Here are the photos from the trip.\",\"attachments\":[{\"filename\":\"beach.png\",\"data\":\"base64encodedstring\"}],\"metadata\":{\"album\":\"summer2024\"}}", + "description": "User sending a message with one photo attachment and metadata specifying album name." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "backend-development.createJSON", + "description": "Generates a JSON object string from provided key-value pairs and optional formatting options. Accepts an array of entries defining keys and their corresponding values which can be strings, numbers, booleans, arrays, or nested objects. Supports pretty-printing with configurable indentation and can exclude undefined or null values if specified. Produces a valid JSON string output ready for use in APIs or data storage.", + "category": "backend-development", + "parameters": [ + { + "name": "entries", + "type": "array", + "description": "Array of objects representing the key-value pairs included in the JSON output. Each entry should have a 'key' (string) and a 'value' which can be any JSON-compatible type (string, number, boolean, array, object).", + "required": true, + "defaultValue": "" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Whether to output the JSON string in a human-readable, indented format.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation if prettyPrint is true. Ignored otherwise.", + "required": false, + "defaultValue": "2" + }, + { + "name": "excludeNull", + "type": "boolean", + "description": "If true, entries with null or undefined values are excluded from the output JSON object.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'jsonString' which is the generated JSON string based on the input parameters and entries." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically construct a JSON object string from dynamic key-value data in backend development, such as preparing payloads for APIs, configuration files, or data exchange formats. It simplifies JSON creation by accepting structured input and handling serialization with optional formatting.", + "limitations": "This tool does not validate the semantic correctness of the keys or values beyond JSON compatibility. It does not support JSON schema validation or enforce specific data types beyond those supported by JSON.", + "examples": [ + "Create a JSON string from multiple key-value pairs with pretty printing enabled.", + "Generate a compact JSON string excluding keys with null values.", + "Construct nested JSON objects by providing object-type values within entries." + ] + }, + "tags": [ + "backend-development", + "json", + "serialization", + "data-format", + "api", + "configuration", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"entries\": [{\"key\": \"name\", \"value\": \"Alice\"}, {\"key\": \"age\", \"value\": 30}, {\"key\": \"active\", \"value\": true}], \"prettyPrint\": true, \"indentation\": 4, \"excludeNull\": false}", + "description": "Create a pretty-printed JSON string with name, age, and active status keys." + }, + { + "inputJson": "{\"entries\": [{\"key\": \"title\", \"value\": \"Book\"}, {\"key\": \"author\", \"value\": null}, {\"key\": \"pages\", \"value\": 250}], \"prettyPrint\": false, \"excludeNull\": true}", + "description": "Generate a compact JSON string excluding the author key because its value is null." + }, + { + "inputJson": "{\"entries\": [{\"key\": \"user\", \"value\": {\"id\": 101, \"roles\": [\"admin\", \"user\"]}}], \"prettyPrint\": true}", + "description": "Create a JSON string with a nested object for user details, pretty printed with default indentation." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "backend-development.createAPI", + "description": "Creates a RESTful API scaffold based on provided schema and configuration. Accepts input defining endpoints, HTTP methods, request and response schemas, authentication, and database integration preferences. Outputs generated API code in Node.js Express framework along with configuration files and documentation stub.", + "category": "backend-development", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The name of the API project to create, used for folder naming and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "An array of endpoint objects defining path, HTTP method, request and response schemas.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Configuration for authentication method (e.g., JWT, OAuth) including enabling flag and options.", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseIntegration", + "type": "object", + "description": "Settings for database connection including type (e.g., MongoDB, MySQL), connection string, and ORM preferences.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language/framework for the API scaffold. Currently supports 'Node.js' (Express).", + "required": false, + "defaultValue": "Node.js" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to generate basic test stubs for the API endpoints.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated output, either 'zip' for packaged files or 'folder' for raw files.", + "required": false, + "defaultValue": "zip" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated API source code files, project configuration files, and readme documentation as strings or packaged archive." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a RESTful API backend scaffold based on a clear specification of endpoints, data schemas, and integrations. Ideal for automating initial backend setup to speed up development workflows or prototyping.", + "limitations": "Currently only supports Node.js Express framework. Does not implement complex business logic, UI, or advanced deployment configuration. Schema validation limited to JSON Schema format.", + "examples": [ + "Generate a simple user management API with CRUD endpoints, JWT authentication, and MongoDB integration.", + "Create an e-commerce product catalog API with public read endpoints and admin protected write endpoints, including basic test scaffolds.", + "Build a todo list API with REST endpoints, no authentication, and SQLite support." + ] + }, + "tags": [ + "backend", + "API", + "REST", + "code-generation", + "Node.js", + "Express", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"UserManagement\",\"endpoints\":[{\"path\":\"/users\",\"method\":\"GET\",\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}}}}},{\"path\":\"/users\",\"method\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"},\"password\":{\"type\":\"string\"}}},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"}}}}}],\"authentication\":{\"type\":\"JWT\",\"enabled\":true},\"databaseIntegration\":{\"type\":\"MongoDB\",\"connectionString\":\"mongodb://localhost:27017/usersdb\"},\"language\":\"Node.js\",\"includeTests\":true,\"outputFormat\":\"zip\"}", + "description": "Generate a User Management API with CRUD endpoints, JWT auth, and MongoDB." + }, + { + "inputJson": "{\"apiName\":\"ProductCatalog\",\"endpoints\":[{\"path\":\"/products\",\"method\":\"GET\",\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"title\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"}}}}},{\"path\":\"/products\",\"method\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"title\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"}}},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"}}}}}],\"authentication\":{\"type\":\"OAuth2\",\"enabled\":true,\"provider\":\"Google\"},\"databaseIntegration\":{\"type\":\"MySQL\",\"connectionString\":\"mysql://root:pass@localhost:3306/productdb\"},\"language\":\"Node.js\",\"includeTests\":false,\"outputFormat\":\"folder\"}", + "description": "Create a Product Catalog API with Google OAuth2 authentication and MySQL." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "backend-development.createCommit", + "description": "Creates a new Git commit in a specified repository with given file changes, author details, and commit message. It processes inputs for repository path, staged file modifications, author identity, commit message, and optional branch, then executes the commit operation. Returns commit metadata including hash, message, author, and timestamp.", + "category": "backend-development", + "parameters": [ + { + "name": "repositoryPath", + "type": "string", + "description": "File system path to the local Git repository where the commit will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "The commit message describing the changes being recorded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the commit author to be set in the commit metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email of the commit author to be set in the commit metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "files", + "type": "array", + "description": "List of objects each representing a file change with 'filePath' and 'content' to be added or updated in the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Optional branch name on which the commit should be made; defaults to current branch if not specified.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the commit hash, commit message, author name/email, timestamp, and branch name where the commit was created." + }, + "aiAgent": { + "useCase": "Use this tool when automating code versioning tasks in CI/CD pipelines, code management bots, or developer assistants that need to programmatically create commits with specified file edits and author information in a Git repository.", + "limitations": "This tool does not handle pushing commits to remote repositories, resolving merge conflicts, or creating branches. It requires the repository to exist locally and assumes proper Git environment setup.", + "examples": [ + "Create a commit adding a new README file with author details on the master branch.", + "Commit updated source code files with a detailed message and author info without specifying a branch.", + "Make a commit on a feature branch including multiple file changes authored by a specific developer." + ] + }, + "tags": [ + "git", + "commit", + "version-control", + "backend", + "automation", + "code-management" + ], + "examples": [ + { + "inputJson": "{\"repositoryPath\":\"/repos/myapp\",\"commitMessage\":\"Add login feature implementation\",\"authorName\":\"Alice Smith\",\"authorEmail\":\"alice@example.com\",\"files\":[{\"filePath\":\"src/login.js\",\"content\":\"console.log('login implemented');\"}],\"branchName\":\"feature/login\"}", + "description": "Create a commit on 'feature/login' branch adding a new login.js file with Alice's author info and commit message." + }, + { + "inputJson": "{\"repositoryPath\":\"/repos/myapp\",\"commitMessage\":\"Fix typo in README\",\"authorName\":\"Bob Jones\",\"authorEmail\":\"bob@example.com\",\"files\":[{\"filePath\":\"README.md\",\"content\":\"# MyApp - fixed typo\"}],\"branchName\":\"\"}", + "description": "Commit an updated README.md on the current branch with Bob's author info and commit message." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "backend-development.createContract", + "description": "Creates a legally structured contract document based on provided contract type, involved parties, terms, and other customizable clauses. It processes the input parameters to generate a formatted contract text output that can be used for agreements between entities or individuals.", + "category": "backend-development", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "Type of contract to create, e.g., 'non-disclosure', 'service agreement', 'employment'.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "Array of party objects involved in the contract, each including name and role fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The contract's starting date in ISO YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + }, + { + "name": "terminationDate", + "type": "string", + "description": "The contract's termination date or conditions, if applicable, in ISO YYYY-MM-DD format or descriptive text.", + "required": false, + "defaultValue": "" + }, + { + "name": "terms", + "type": "array", + "description": "Array of strings describing the key terms and conditions to include in the contract.", + "required": false, + "defaultValue": "" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction under which the contract is governed, e.g., 'California, USA'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSignatureBlock", + "type": "boolean", + "description": "Whether to append a signature block section for parties to sign the contract.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract text with sections based on input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a structured, legally sound contract template for agreements based on specified parties, contract type, and terms. Ideal for automating contract document creation in backend systems managing legal or transactional workflows.", + "limitations": "This tool cannot provide legal advice or guarantee compliance with local laws. It generates contract templates which should be reviewed by legal professionals before use.", + "examples": [ + "Create a non-disclosure agreement between two companies effective from 2024-01-01 with standard confidentiality terms.", + "Generate an employment contract for a new hire including salary and termination clauses.", + "Produce a service agreement contract with defined start and end dates and governing law specified." + ] + }, + "tags": [ + "contract", + "document-generation", + "legal", + "backend", + "automation" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"non-disclosure\",\"parties\":[{\"name\":\"Alpha Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Beta LLC\",\"role\":\"Receiving Party\"}],\"effectiveDate\":\"2024-06-01\",\"terms\":[\"Confidentiality obligation\",\"No disclosure to third parties\"],\"governingLaw\":\"New York, USA\",\"includeSignatureBlock\":true}", + "description": "Generate a standard NDA contract between two companies with confidentiality terms and signature block." + }, + { + "inputJson": "{\"contractType\":\"employment\",\"parties\":[{\"name\":\"Alice Smith\",\"role\":\"Employee\"},{\"name\":\"Tech Solutions Ltd\",\"role\":\"Employer\"}],\"effectiveDate\":\"2024-07-01\",\"terminationDate\":\"2025-07-01\",\"terms\":[\"Full-time position\",\"Annual leave of 20 days\"],\"governingLaw\":\"California, USA\",\"includeSignatureBlock\":true}", + "description": "Create an employment contract effective for one year including vacation and position details." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "automation-frameworks.createEmail", + "description": "Creates an email message based on specified parameters including recipients, subject, body content, attachments, and optional formatting. Accepts inputs to define email structure and outputs a structured email object ready for sending via an email client or service.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of primary recipient email addresses. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of CC recipient email addresses. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of BCC recipient email addresses. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email message in plain text or HTML. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Whether the body content is HTML formatted. Optional; defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachments, each described by filename and base64-encoded content. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyTo", + "type": "string", + "description": "Reply-to email address. Optional.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An EmailMessage object containing all fields needed to send or preview the email, including to, cc, bcc, subject, body, html flag, attachments, and replyTo." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically prepare a complete email for sending or review, allowing dynamic specification of recipients, subject, content, and attachments. Useful in automation workflows that involve sending notifications, alerts, or customized messages.", + "limitations": "This tool only creates the email structure; it does not send the email. Handling actual sending, delivery status, or mailbox management must be performed by other tools or services.", + "examples": [ + ":" + ] + }, + "tags": [ + "automation", + "email", + "communication", + "message creation", + "workflow", + "notifications" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Meeting Reminder\",\"body\":\"Don't forget our meeting at 3pm.\",\"isHtml\":false}", + "description": "Create a simple plain text email reminder to a single recipient." + }, + { + "inputJson": "{\"to\":[\"devteam@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Release Notes\",\"body\":\"

Release v2.3

Features and fixes...

\",\"isHtml\":true,\"attachments\":[{\"filename\":\"notes.pdf\",\"content\":\"base64encodedstringhere\"}]}", + "description": "Create an HTML formatted email with cc and an attachment." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "documentation-tools.analyzeDocument", + "description": "Analyzes a submitted document to evaluate its structure, grammar, readability, and consistency. Accepts textual content or document files, processes linguistic and formatting aspects, and outputs a comprehensive report highlighting issues and suggestions for improvements.", + "category": "documentation-tools", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The full text content of the document to analyze. Required if documentFile is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentFile", + "type": "string", + "description": "Path or URL to the document file to analyze (supports .txt, .md, .docx). Required if documentContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "analyzeGrammar", + "type": "boolean", + "description": "Whether to perform grammar and spelling checks in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeReadability", + "type": "boolean", + "description": "Whether to analyze readability metrics such as Flesch-Kincaid scores.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeStructure", + "type": "boolean", + "description": "Whether to evaluate the document's structural elements like headings, paragraphs, and lists.", + "required": false, + "defaultValue": "true" + }, + { + "name": "suggestImprovements", + "type": "boolean", + "description": "Whether to include suggestions and tips for improving the document in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report including sections on grammar errors, readability scores, structural evaluation, and improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when you need an in-depth, automated assessment of a document's quality, including grammar, readability, and structure, to help improve clarity and professionalism in documentation or written content.", + "limitations": "This tool does not perform content fact-checking, cannot edit documents automatically, and may not fully interpret domain-specific jargon or idiomatic expressions.", + "examples": [ + "Analyze the grammar and readability of a project requirements document.", + "Provide a report on the structural consistency and potential improvements for the user manual text.", + "Check the uploaded README.md file for grammar errors and offer suggestions to enhance clarity." + ] + }, + "tags": [ + "documentation", + "analysis", + "grammar-check", + "readability", + "structure", + "reporting", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"This is a smple document. It have some bad grammar and poor structuring.\",\"analyzeGrammar\":true,\"analyzeReadability\":true,\"analyzeStructure\":true,\"suggestImprovements\":true}", + "description": "Analyze grammar, readability, and structure of a short plain text document with errors." + }, + { + "inputJson": "{\"documentFile\":\"https://example.com/docs/user-guide.md\",\"analyzeGrammar\":true,\"analyzeReadability\":false,\"analyzeStructure\":true,\"suggestImprovements\":true}", + "description": "Analyze grammar and structure of a Markdown user guide accessed via URL, skipping readability metrics." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "backend-development.generateCode", + "description": "Generates backend server-side code based on specified programming language, framework, and feature requirements. Accepts inputs detailing the desired API endpoints, data models, and authentication mechanisms, then produces scaffolded code files to accelerate backend development.", + "category": "backend-development", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "The programming language for the generated backend code (e.g., 'Node.js', 'Python').", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The backend framework to use (e.g., 'Express', 'Django').", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of features to include in the backend (e.g., ['REST API', 'JWT Authentication', 'ORM integration']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dataModels", + "type": "object", + "description": "Definitions of data models with field names and types to generate data schemas and ORM models.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "apiEndpoints", + "type": "array", + "description": "List of API endpoint specifications including method, path, and expected input/output for route generation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to generate corresponding unit or integration test code.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated code files as key-value pairs where keys are filenames and values are file content strings." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly scaffold backend code for APIs or server applications based on specific languages, frameworks, and requirements without manually writing boilerplate code. It accelerates initial project setup and prototyping.", + "limitations": "Cannot generate highly customized business logic beyond predefined features; does not replace human review or domain-specific optimizations.", + "examples": [ + "Generate a Node.js Express backend with REST API and JWT authentication.", + "Create a Python Django backend with data models for user and product management.", + "Produce backend code with ORM integration and API endpoints for a basic blog platform." + ] + }, + "tags": [ + "backend", + "code-generation", + "API", + "server", + "framework", + "scaffold" + ], + "examples": [ + { + "inputJson": "{\"language\":\"Node.js\",\"framework\":\"Express\",\"features\":[\"REST API\",\"JWT Authentication\"],\"dataModels\":{\"User\":{\"id\":\"string\",\"email\":\"string\",\"password\":\"string\"}},\"apiEndpoints\":[{\"method\":\"POST\",\"path\":\"/login\",\"input\":{\"email\":\"string\",\"password\":\"string\"},\"output\":{\"token\":\"string\"}}],\"includeTests\":true}", + "description": "Generate Node.js Express backend with user model, authentication, login endpoint, and tests." + }, + { + "inputJson": "{\"language\":\"Python\",\"framework\":\"Django\",\"features\":[\"ORM Integration\"],\"dataModels\":{\"Product\":{\"id\":\"integer\",\"name\":\"string\",\"price\":\"float\"}},\"apiEndpoints\":[],\"includeTests\":false}", + "description": "Generate Django backend with Product model and ORM integration without endpoints or tests." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "backend-development.createCustomer", + "description": "Creates a new customer record in the backend system using provided customer details such as name, email, and optional metadata. Processes the input by validating and storing the customer data, then outputs a confirmation with the new customer's unique ID and creation timestamp.", + "category": "backend-development", + "parameters": [ + { + "name": "name", + "type": "string", + "description": "Full name of the customer to create", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address of the customer; must be unique", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Optional phone number of the customer", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Optional address details including street, city, state, and postalCode", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional key-value pairs for custom customer attributes", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object confirming creation with fields: customerId (string), createdAt (ISO timestamp), and optionally the stored customer data" + }, + "aiAgent": { + "useCase": "Use this tool when needing to add a new customer to the backend database or CRM system, especially when you have structured customer data and require a definitive unique identifier returned for subsequent operations. Common in onboarding workflows or user registration processes.", + "limitations": "Does not handle authentication, validation beyond basic format checks, or duplicate email resolution logic; if duplicate emails exist, the backend system must handle conflicts.", + "examples": [ + "Create a new customer with name, email, and phone number.", + "Add a customer with full address info and custom metadata tags.", + "Generate a new customer record with minimal required fields (name and email)." + ] + }, + "tags": [ + "backend", + "customer", + "create", + "api", + "database", + "crm" + ], + "examples": [ + { + "inputJson": "{\"name\":\"Alice Johnson\",\"email\":\"alice.johnson@example.com\",\"phoneNumber\":\"+1234567890\"}", + "description": "Creating a basic customer with name, email, and phone number." + }, + { + "inputJson": "{\"name\":\"Bob Lee\",\"email\":\"bob.lee@example.com\",\"address\":{\"street\":\"123 Main St\",\"city\":\"Springfield\",\"state\":\"IL\",\"postalCode\":\"62704\"},\"metadata\":{\"loyaltyTier\":\"gold\"}}", + "description": "Creating a customer with full address and custom metadata." + }, + { + "inputJson": "{\"name\":\"Charlie Smith\",\"email\":\"charlie.smith@example.com\"}", + "description": "Creating a customer record with only required fields." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "backend-development.generateDocument", + "description": "Generates well-structured documents such as API reference, technical specs, or design documents from structured input. Accepts input data describing document sections, content, and format preferences, then produces formatted document output (e.g., Markdown, HTML, or JSON) ready for use in backend development documentation.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of sections, each including a heading and content to populate the document body.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired output format, such as 'markdown', 'html', or 'json'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents at the beginning.", + "required": false, + "defaultValue": "true" + }, + { + "name": "author", + "type": "string", + "description": "Name of the document author to include in metadata or header.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the formatted document content as a string and metadata about the document (format and word count)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate backend-related technical documentation from structured data inputs, such as API definitions or design outlines, to automate producing consistent and readable docs in preferred formats.", + "limitations": "Cannot interpret unstructured or ambiguous natural language inputs into documents; requires structured input representing document parts. Does not perform spelling or grammar checking on content.", + "examples": [ + "Generate an API reference document in Markdown from given endpoint descriptions.", + "Create a design specification document in HTML including a table of contents.", + "Produce a JSON formatted document structure from input sections for further processing." + ] + }, + "tags": [ + "backend", + "documentation", + "generate", + "api", + "devtools" + ], + "examples": [ + { + "inputJson": "{\"title\":\"User Management API\",\"sections\":[{\"heading\":\"Introduction\",\"content\":\"This API manages user data.\"},{\"heading\":\"Endpoints\",\"content\":\"GET /users, POST /users\"}],\"format\":\"markdown\",\"includeTableOfContents\":true,\"author\":\"DevTeam\"}", + "description": "Generate a markdown API reference document for a user management API with TOC and author." + }, + { + "inputJson": "{\"title\":\"Backend Design Spec\",\"sections\":[{\"heading\":\"Overview\",\"content\":\"System components and their interactions.\"},{\"heading\":\"Database Schema\",\"content\":\"Details of database tables and relations.\"}],\"format\":\"html\",\"includeTableOfContents\":false,\"author\":\"Architect\"}", + "description": "Create an HTML design specification document without TOC from given sections." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "backendDevelopment.createFunction", + "description": "Creates a server-side JavaScript function based on given specifications such as function name, parameters, return type, and the desired logic description. The tool outputs fully formatted and syntactically correct JavaScript function code suitable for integration in backend applications.", + "category": "backendDevelopment", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The name of the function to be created. Must be a valid JavaScript identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "An array of parameter names (strings) that the function will accept.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "returnType", + "type": "string", + "description": "The expected return type of the function, e.g., 'string', 'number', 'object'. This is for documentation and output formatting purposes.", + "required": false, + "defaultValue": "void" + }, + { + "name": "logicDescription", + "type": "string", + "description": "A natural language description of the logic or behavior that the function should implement.", + "required": true, + "defaultValue": "" + }, + { + "name": "asyncFunction", + "type": "boolean", + "description": "Whether the function should be declared as asynchronous (async).", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include comments describing the function parameters and behavior in the output code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function code as a JavaScript string under 'functionCode', and metadata including functionName and parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate backend JavaScript functions to implement specific business logic, API handlers, or utility methods. Particularly useful for automating boilerplate code creation based on a description of logic, thereby speeding up backend development workflows.", + "limitations": "This tool cannot generate complex multi-file modules, handle external dependencies automatically, or guarantee runtime correctness beyond syntax and logic description compliance. It also cannot replace comprehensive unit testing or code review.", + "examples": [ + "Create an async function 'getUserData' accepting 'userId' that fetches user information from a database and returns it as an object.", + "Create a function 'calculateSum' that takes an array of numbers and returns their sum.", + "Generate a synchronous function 'formatDate' accepting a Date object and returning a formatted string representation." + ] + }, + "tags": [ + "backend", + "code-generation", + "javascript", + "function", + "automation", + "server-side" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"getUserData\",\"parameters\":[\"userId\"],\"returnType\":\"object\",\"logicDescription\":\"Fetch user data from the database using the userId and return the data as an object.\",\"asyncFunction\":true,\"includeComments\":true}", + "description": "Generate an async function to fetch user data by userId from a database." + }, + { + "inputJson": "{\"functionName\":\"calculateSum\",\"parameters\":[\"numbers\"],\"returnType\":\"number\",\"logicDescription\":\"Calculate the sum of an array of numbers passed as the parameter.\",\"asyncFunction\":false,\"includeComments\":true}", + "description": "Create a synchronous function that sums array elements." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "backend-development.createFile", + "description": "Creates a new file with specified content on the server-side file system. Accepts file path, content as string or base64, and optional encoding. Ensures directories exist if requested, and returns the absolute path and success status.", + "category": "backend-development", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Relative or absolute path where the file will be created. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Content to write into the file. Can be plain text or base64 encoded string. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "encoding", + "type": "string", + "description": "Encoding format of the content: 'utf8', 'base64', etc. Used to decode or write content properly. Default is 'utf8'.", + "required": false, + "defaultValue": "utf8" + }, + { + "name": "createDirectories", + "type": "boolean", + "description": "If true, any missing directories in the file path will be created automatically. Default is false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "If true, overwrites the file if it already exists; otherwise, operation will fail if file exists. Default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object containing absolute file path, success boolean, and error message if any." + }, + "aiAgent": { + "useCase": "Use this tool when a server-side application or agent needs to programmatically create files with specific content, such as generating configuration files, saving user uploads, or writing logs or data exports. It handles file paths, content encoding, and optionally ensures directory creation to prevent errors.", + "limitations": "This tool cannot handle advanced file locking mechanisms or simultaneous multi-user write conflicts. It does not validate content security or sanitize file paths to prevent directory traversal attacks; these must be handled by the caller.", + "examples": [ + "Create a text file with a given string content at a relative path.", + "Save an image file provided as base64-encoded content into a specified folder, creating the folder if needed.", + "Attempt to create a file but fail if it already exists to avoid overwriting." + ] + }, + "tags": [ + "file management", + "server", + "file creation", + "backend", + "filesystem", + "content writing" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"./logs/server.log\",\"content\":\"Server started successfully.\",\"encoding\":\"utf8\",\"createDirectories\":true,\"overwrite\":true}", + "description": "Create or overwrite a log file with UTF-8 text content, ensuring the logs directory exists." + }, + { + "inputJson": "{\"filePath\":\"/var/www/uploads/image.png\",\"content\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"encoding\":\"base64\",\"createDirectories\":true,\"overwrite\":false}", + "description": "Create an image file for upload using base64 encoded content, creating directories if missing, but do not overwrite existing file." + } + ], + "qualityScore": 0.95, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "security-tools.formatXML", + "description": "Formats and pretty-prints an input XML string to improve readability and consistency. Accepts raw XML text and outputs a well-indented, cleanly formatted XML string with optional indentation and linebreak style settings.", + "category": "security-tools", + "parameters": [ + { + "name": "xmlString", + "type": "string", + "description": "The raw XML string input to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for each indentation level in the output XML.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation. Overrides indentationSpaces if true.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineBreakStyle", + "type": "string", + "description": "The style of line breaks to use in output, e.g., 'LF' for \\n or 'CRLF' for \\r\\n.", + "required": false, + "defaultValue": "LF" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted XML string under the key 'formattedXML', preserving XML content but with standardized and improved formatting for readability." + }, + "aiAgent": { + "useCase": "Use this tool when needing to improve the readability, consistency, or presentation of XML content, such as preparing configuration files, logs, or data interchange formats for review, debugging, or display. It helps ensure XML adheres to a clean, human-friendly layout with proper indentation and line breaks.", + "limitations": "This tool only formats well-formed XML. It does not validate against schemas, nor does it fix syntactic errors or beautify malformed XML. It does not alter XML content or structure, only whitespace and indentation.", + "examples": [ + "Format this compact, minified XML string for easier reading.", + "Reformat XML logs with tabs for indentation instead of spaces.", + "Adjust XML configuration files to use CRLF line breaks and 4 spaces indentation." + ] + }, + "tags": [ + "formatting", + "xml", + "security", + "configuration management", + "pretty-print" + ], + "examples": [ + { + "inputJson": "{\"xmlString\":\"valuetext\",\"indentationSpaces\":4,\"useTabs\":false,\"lineBreakStyle\":\"LF\"}", + "description": "Format simple XML with 4 spaces indentation and LF line breaks." + }, + { + "inputJson": "{\"xmlString\":\"AB\",\"useTabs\":true}", + "description": "Format XML using tabs for indentation instead of spaces." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "format", + "object": "XML", + "context": null + } + }, + { + "name": "data-analytics.createVulnerability", + "description": "Analyzes input security data such as logs, code snippets, or dependency manifests to identify and create detailed vulnerability reports. Processes identify weaknesses by correlating inputs against known vulnerability patterns and risk factors, outputting structured vulnerability objects including severity, affected components, and remediation suggestions.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw security-related data (code snippets, logs, manifests) to analyze for vulnerabilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data, e.g., 'code', 'log', 'dependencyManifest'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRemediation", + "type": "boolean", + "description": "Whether to include remediation recommendations in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum vulnerability severity to report (e.g., 'low', 'medium', 'high', 'critical').", + "required": false, + "defaultValue": "low" + }, + { + "name": "scanDepth", + "type": "number", + "description": "Depth level for recursive scans in nested structures, if applicable.", + "required": false, + "defaultValue": "3" + }, + { + "name": "enableHeuristics", + "type": "boolean", + "description": "Enable heuristic analysis to detect zero-day or unknown vulnerabilities.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured vulnerability report object containing an array of vulnerability entries, each with id, description, severity, affected components, detectedAt, and optional remediation steps." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw security-related data such as source code snippets, system logs, or dependency manifests and you want to generate a structured vulnerability report to understand potential risks and required fixes. Ideal for automating vulnerability detection and prioritization in CI/CD pipelines or security audits.", + "limitations": "This tool cannot perform actual exploit testing or penetration testing. It relies on static analysis and known patterns and may miss novel vulnerabilities despite heuristic mode. It is not a replacement for comprehensive security audits or runtime security monitoring.", + "examples": [ + "Find vulnerabilities in a given code snippet and provide remediation steps.", + "Analyze my project's dependency manifest to detect any known vulnerable packages above medium severity.", + "Scan system logs to identify security events that can indicate vulnerabilities but exclude low severity issues." + ] + }, + "tags": [ + "security", + "vulnerability", + "analysis", + "reporting", + "risk-assessment", + "static-analysis", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"function authenticate(user) { if(user.password == '1234') { return true; }}\",\"dataFormat\":\"code\",\"includeRemediation\":true,\"severityThreshold\":\"low\"}", + "description": "Analyze a simple JavaScript function for potential vulnerabilities and include remediation." + }, + { + "inputJson": "{\"inputData\":\"{ \\\"dependencies\\\": { \\\"lodash\\\": \\\"4.17.10\\\" }}\",\"dataFormat\":\"dependencyManifest\",\"includeRemediation\":true,\"severityThreshold\":\"medium\"}", + "description": "Check a dependency manifest JSON for known vulnerabilities with severity medium or higher." + }, + { + "inputJson": "{\"inputData\":\"[2024-05-01T12:00:00Z] Failed login for user admin from IP 192.168.1.100\",\"dataFormat\":\"log\",\"includeRemediation\":false,\"severityThreshold\":\"high\"}", + "description": "Analyze a system log entry to detect high severity security issues without remediation suggestions." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "prompt-engineering.buildModule", + "description": "Builds a reusable prompt engineering module by accepting base prompt templates, variable placeholders, conditional logic, and optional reusable components. It outputs a structured module object containing final prompt construction logic and metadata for integration into larger AI prompt workflows.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "basePrompt", + "type": "string", + "description": "The base prompt template with placeholders for dynamic content.", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs defining variable names and their descriptions or default values to substitute within the prompt.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditionalLogic", + "type": "string", + "description": "Optional conditional statements or rules to dynamically modify the prompt based on variable values or context.", + "required": false, + "defaultValue": "" + }, + { + "name": "reusableComponents", + "type": "array", + "description": "Optional array of reusable prompt fragments or modules to include as part of the final prompt module.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "moduleName", + "type": "string", + "description": "A descriptive name for the prompt module, useful for cataloging and reuse.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed prompt module including prompt text, variable mappings, conditional logic parsed, component references, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build complex, modular prompt templates with variables and conditional logic for integration with AI models. Ideal to automate prompt crafting workflows and to compose reusable prompt components for consistent AI interactions.", + "limitations": "Cannot execute the prompt or interact directly with AI models; it only builds the prompt module structure. Complex conditional logic needs to be well-defined in accepted syntax. Does not validate prompt effectiveness or AI response quality.", + "examples": [ + "Create a prompt module for a trivia game with question and difficulty variables.", + "Build a customer support prompt template with optional context inserts.", + "Generate a reusable module for creative writing prompts with genre placeholders." + ] + }, + "tags": [ + "prompt-engineering", + "module-building", + "templates", + "AI-integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"basePrompt\":\"Answer the following question: {{question}}.\",\"variables\":{\"question\":\"User provided question text\"},\"conditionalLogic\":\"\",\"reusableComponents\":[],\"moduleName\":\"TriviaQA_Module\"}", + "description": "Builds a simple trivia question answering prompt module with one variable placeholder." + }, + { + "inputJson": "{\"basePrompt\":\"{{greeting}}, how can I assist you today?\",\"variables\":{\"greeting\":\"Dynamic greeting based on time of day\"},\"conditionalLogic\":\"if (timeOfDay == 'morning') greeting = 'Good morning'; else if (timeOfDay == 'evening') greeting = 'Good evening'; else greeting = 'Hello';\",\"reusableComponents\":[],\"moduleName\":\"CustomerSupportGreeting\"}", + "description": "Creates a customer support greeting prompt module with conditional greeting based on time." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "model-management.buildComponent", + "description": "This tool assists in building modular components for AI model pipelines. It accepts component specifications including architecture details, dependencies, and configuration parameters; processes these inputs to generate reusable, deployable code components suitable for inclusion in AI workflows; and outputs the generated component code along with metadata for integration and version tracking.", + "category": "model-management", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The unique name identifier for the component being built", + "required": true, + "defaultValue": "" + }, + { + "name": "architecture", + "type": "object", + "description": "An object detailing the architecture specifications, such as layer types and sequence, for the component", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencies", + "type": "array", + "description": "A list of external libraries or modules the component depends on", + "required": false, + "defaultValue": "[]" + }, + { + "name": "configParameters", + "type": "object", + "description": "Configuration parameters specific to the component's behavior or training settings", + "required": false, + "defaultValue": "{}" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Programming language for the generated component code (e.g., Python, JavaScript)", + "required": false, + "defaultValue": "\"Python\"" + }, + { + "name": "version", + "type": "string", + "description": "Optional version tag for the component", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated component's source code as a string, metadata including component name, version, timestamps, and dependency information." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate or update a modular, reusable component for inclusion in an AI model pipeline or system. It is ideal for automating component creation from structured architecture definitions and streamlining code integration in complex AI projects.", + "limitations": "The tool does not perform model training or validation itself; it only generates component code. It requires well-structured input specifications, and may not handle highly specialized or novel model architectures without manual refinement.", + "examples": [ + "Create a convolutional neural network feature extractor component in Python with specific layer configuration.", + "Generate a reusable transformer encoder component with given dependency libraries for inclusion in a multilingual NLP pipeline.", + "Build a data preprocessing module with configurable parameters in JavaScript for an AI deployment workflow." + ] + }, + "tags": [ + "model-management", + "component-generation", + "code-generation", + "AI-pipelines", + "modular", + "automated-building" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"FeatureExtractorCNN\",\"architecture\":{\"layers\":[{\"type\":\"Conv2D\",\"filters\":32,\"kernelSize\":3,\"activation\":\"relu\"},{\"type\":\"MaxPool2D\",\"poolSize\":2}],\"inputShape\":[64,64,3]},\"dependencies\":[\"tensorflow\"],\"configParameters\":{\"dropoutRate\":0.5},\"targetLanguage\":\"Python\",\"version\":\"1.0.0\"}", + "description": "Build a CNN feature extractor component in Python with TensorFlow dependency." + }, + { + "inputJson": "{\"componentName\":\"TransformerEncoder\",\"architecture\":{\"layers\":[{\"type\":\"MultiHeadAttention\",\"heads\":8,\"keyDim\":64},{\"type\":\"LayerNormalization\"}],\"inputShape\":[null,512]},\"dependencies\":[\"tensorflow\",\"numpy\"],\"configParameters\":{\"numLayers\":6},\"targetLanguage\":\"Python\",\"version\":\"2.1.3\"}", + "description": "Generate a transformer encoder component in Python with TensorFlow and NumPy dependencies, configured for 6 layers." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeOpportunity", + "description": "Analyzes potential infrastructure investment or scaling opportunities by evaluating current resource usage, projected demand, and cost-performance trade-offs. Accepts input parameters detailing existing infrastructure metrics and proposed enhancements, and returns a detailed report on feasibility, ROI, risks, and recommendations.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "currentResourceMetrics", + "type": "object", + "description": "An object containing current infrastructure metrics such as CPU, memory usage, network bandwidth, and storage utilization.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectedDemand", + "type": "object", + "description": "Projected future demand parameters including anticipated growth rate, peak usage, and new feature load.", + "required": true, + "defaultValue": "" + }, + { + "name": "costEstimates", + "type": "object", + "description": "Cost estimates for proposed infrastructure options including capital and operational expenses.", + "required": true, + "defaultValue": "" + }, + { + "name": "scalingOptions", + "type": "array", + "description": "List of possible scaling strategies or infrastructure changes to evaluate, e.g., cloud provider changes, hardware upgrades.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeHorizonMonths", + "type": "number", + "description": "Time horizon in months over which to analyze the opportunity for ROI and risk assessment.", + "required": false, + "defaultValue": "12" + }, + { + "name": "riskTolerance", + "type": "string", + "description": "Risk tolerance level for the analysis: 'low', 'medium', or 'high'. Determines sensitivity of risk assessment and recommendations.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including feasibility (boolean), expected ROI percentage, risk assessment summary, and recommended actions for infrastructure investment or scaling." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating whether to invest in upgrading, expanding, or changing infrastructure resources based on current metrics and future growth forecasts. It assists in making data-driven decisions about cost efficiency, risk, and resource allocation in infrastructure management.", + "limitations": "This tool does not perform real-time monitoring or automated provisioning. It relies on accurate and timely input data; poor input quality may reduce reliability of the output. It does not replace detailed financial audits or specialized risk management evaluations.", + "examples": [ + "Analyze infrastructure scaling opportunities given current usage metrics and growth projections.", + "Evaluate cost and risk implications of moving from on-premises to cloud infrastructure.", + "Assess feasibility and ROI for upgrading storage capacity in a data center." + ] + }, + "tags": [ + "analysis", + "infrastructure", + "scaling", + "costEstimation", + "riskAssessment", + "resourceManagement" + ], + "examples": [ + { + "inputJson": "{\"currentResourceMetrics\":{\"cpuUsagePercent\":65,\"memoryUsageGB\":128,\"networkBandwidthMbps\":500,\"storageTB\":50},\"projectedDemand\":{\"growthRatePercentPerMonth\":15,\"peakConcurrentUsers\":2000},\"costEstimates\":{\"capitalExpenseUSD\":200000,\"operationalExpenseUSDPerMonth\":5000},\"scalingOptions\":[\"addServers\",\"moveToCloud\"],\"timeHorizonMonths\":18,\"riskTolerance\":\"medium\"}", + "description": "Analyzing scaling opportunity for a company expecting 15% monthly growth over next 18 months to decide on adding servers or moving to cloud." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "infrastructure-management.buildModule", + "description": "Builds a deployable infrastructure module package based on given configuration inputs. Accepts parameters describing infrastructure components such as compute instances, networking, storage, and configuration scripts. Processes these inputs to generate a ready-to-deploy module configuration file (e.g., Terraform module) with all resources defined, dependencies resolved, and outputs ready for integration or deployment pipelines.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name identifier for the infrastructure module to build.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version tag or semantic version number for the module packaging.", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "components", + "type": "array", + "description": "An array defining infrastructure components (compute, network, storage, etc.) each with their configuration objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "provider", + "type": "string", + "description": "The cloud provider or infrastructure platform this module targets (e.g., aws, azure, gcp).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Flag indicating whether to generate module test scripts as part of the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The output module format to generate (e.g., terraform, cloudformation, pulumi).", + "required": false, + "defaultValue": "\"terraform\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the module package metadata and a string representing the full module configuration code ready for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate standardized, ready-to-deploy infrastructure modules for cloud or on-premise resources based on detailed component specifications. Ideal for automating infrastructure-as-code module preparation to enable consistent deployments and integration into CI/CD pipelines.", + "limitations": "This tool does not currently validate the runtime environment compatibility, nor does it manage state or perform actual deployments. It only builds the module configuration files based on provided inputs.", + "examples": [ + "Build a Terraform AWS VPC module with specific subnets and routing components.", + "Generate an Azure compute module versioned 2.1.0 including test scripts.", + "Create a GCP storage module with standard bucket policies without tests." + ] + }, + "tags": [ + "infrastructure", + "module", + "build", + "IaC", + "automation", + "cloud", + "terraform" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"vpcModule\",\"version\":\"1.0.0\",\"components\":[{\"type\":\"vpc\",\"cidr\":\"10.0.0.0/16\"},{\"type\":\"subnet\",\"cidr\":\"10.0.1.0/24\",\"availabilityZone\":\"us-east-1a\"}],\"provider\":\"aws\",\"includeTests\":false,\"outputFormat\":\"terraform\"}", + "description": "Build a Terraform AWS VPC module with subnets, no tests" + }, + { + "inputJson": "{\"moduleName\":\"computeModule\",\"version\":\"2.1.0\",\"components\":[{\"type\":\"vm\",\"instanceType\":\"Standard_D2s_v3\",\"os\":\"ubuntu\"}],\"provider\":\"azure\",\"includeTests\":true,\"outputFormat\":\"terraform\"}", + "description": "Generate an Azure compute module including test scripts" + }, + { + "inputJson": "{\"moduleName\":\"storageModule\",\"version\":\"1.0.0\",\"components\":[{\"type\":\"bucket\",\"location\":\"us-central1\",\"accessControl\":\"private\"}],\"provider\":\"gcp\",\"includeTests\":false,\"outputFormat\":\"terraform\"}", + "description": "Create GCP storage module without tests" + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "data-analytics.createDashboard", + "description": "Creates an interactive data dashboard by accepting datasets and configuration parameters including selected metrics, visualization types, and layout preferences. Processes the input data to generate visual charts and tables, producing a dashboard JSON object that can be rendered or exported for business intelligence and reporting purposes.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing the dataset to visualize, where each object corresponds to a data record.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of strings specifying the metrics or key fields to be visualized on the dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "Array of strings defining the types of visualizations to use, e.g., 'barChart', 'lineGraph', 'pieChart', 'table'.", + "required": true, + "defaultValue": "" + }, + { + "name": "layout", + "type": "object", + "description": "Configuration object defining the dashboard layout such as grid dimensions, widget positions, and size.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the dashboard.", + "required": false, + "defaultValue": "\"Untitled Dashboard\"" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filtering criteria to apply to the dataset before visualization.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "theme", + "type": "string", + "description": "Optional theme name (e.g., 'light', 'dark') to style the dashboard appearance.", + "required": false, + "defaultValue": "\"light\"" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the full dashboard configuration including data sources, visualizations, layout, and metadata ready for rendering or export." + }, + "aiAgent": { + "useCase": "Use this tool when a user wants to generate a comprehensive interactive data dashboard by selecting datasets, choosing specific metrics, visualization formats, and optionally customizing layout and styling. Ideal for business intelligence, monitoring KPIs, and summarizing complex data insights visually.", + "limitations": "This tool does not perform complex data transformation or cleaning; input data must be preprocessed. It also does not render the dashboard visually but produces the configuration object for rendering by compatible front-end tools.", + "examples": [ + "Create a sales performance dashboard for monthly revenue and units sold using bar and line charts with a two-column layout.", + "Generate a marketing campaign dashboard showing conversion rates and click-through rates with pie charts and tables, applying filters for the last quarter.", + "Build an operational metrics dashboard including uptime and error rates with line graphs, using a dark theme and grid layout." + ] + }, + "tags": [ + "dashboard", + "data-analytics", + "visualization", + "business-intelligence", + "interactive", + "metrics", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"January\",\"revenue\":100000,\"unitsSold\":500},{\"month\":\"February\",\"revenue\":120000,\"unitsSold\":600}],\"metrics\":[\"revenue\",\"unitsSold\"],\"visualizationTypes\":[\"barChart\",\"lineGraph\"],\"layout\":{\"columns\":2,\"rows\":1},\"title\":\"Monthly Sales Dashboard\"}", + "description": "Creates a dashboard with bar and line charts visualizing revenue and units sold per month in a two-column layout." + }, + { + "inputJson": "{\"data\":[{\"campaign\":\"Campaign A\",\"clickThroughRate\":0.12,\"conversionRate\":0.04},{\"campaign\":\"Campaign B\",\"clickThroughRate\":0.09,\"conversionRate\":0.03}],\"metrics\":[\"clickThroughRate\",\"conversionRate\"],\"visualizationTypes\":[\"pieChart\",\"table\"],\"filters\":{\"dateRange\":\"lastQuarter\"},\"title\":\"Marketing Campaign Metrics\"}", + "description": "Generates a marketing dashboard showing click-through and conversion rates with pie charts and tables, filtered by last quarter data." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "etl-processes.uploadDataset", + "description": "Uploads a dataset file to a specified storage location, optionally validating and transforming the data format before storage. Accepts file content or path, target storage details, and transformation options, returning an upload status and metadata about the stored dataset.", + "category": "etl-processes", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "The name to assign to the dataset when stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local path or URL to the dataset file to upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Raw dataset file content as a string. Used if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "storageType", + "type": "string", + "description": "Type of storage to upload to, e.g., 's3', 'azureBlob', 'localFileSystem'.", + "required": true, + "defaultValue": "s3" + }, + { + "name": "storageConfig", + "type": "object", + "description": "Object containing configuration details for the target storage, such as credentials and bucket/container name.", + "required": true, + "defaultValue": "{}" + }, + { + "name": "transformations", + "type": "array", + "description": "List of transformations to apply to the dataset prior to upload, e.g., format conversions or field filtering.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the dataset against a predefined schema before uploading.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "Schema to validate the dataset against if validateSchema is true.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the upload (success or failure), a message, and metadata including dataset ID, storage path, and size in bytes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ingest datasets from various sources into centralized storage systems for further processing or analysis. It handles uploading raw or transformed datasets to cloud or local storage with optional validation. Ideal for ETL pipeline automation where manual uploading is impractical.", + "limitations": "This tool does not perform complex data cleaning, advanced validation beyond simple schema checks, or data deduplication. It requires either file path or content and cannot generate dataset content by itself.", + "examples": [ + "Upload this CSV dataset to our S3 bucket with minimal transformation.", + "Send the JSON data file located at given URL to Azure Blob Storage validating against schema.", + "Store the raw log file contents to local filesystem without transformation." + ] + }, + "tags": [ + "etl", + "dataset", + "upload", + "storage", + "data-integration", + "validation", + "transformation" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"sales_data_2024_q2\",\"filePath\":\"/data/quarter2_sales.csv\",\"storageType\":\"s3\",\"storageConfig\":{\"bucketName\":\"company-data\",\"region\":\"us-west-2\",\"accessKeyId\":\"AKIA...\",\"secretAccessKey\":\"****\"},\"transformations\":[{\"type\":\"csvToParquet\"}],\"validateSchema\":true,\"schemaDefinition\":{\"type\":\"object\",\"properties\":{\"date\":{\"type\":\"string\"},\"sales\":{\"type\":\"number\"}},\"required\":[\"date\",\"sales\"]}}", + "description": "Upload a CSV sales dataset located locally, convert it to Parquet, validate with a schema, and store it in specified S3 bucket." + }, + { + "inputJson": "{\"datasetName\":\"user_events\",\"fileContent\":\"[{\\\"event\\\":\\\"click\\\",\\\"timestamp\\\":\\\"2024-06-01T12:00:00Z\\\"}]\",\"storageType\":\"azureBlob\",\"storageConfig\":{\"containerName\":\"events\",\"connectionString\":\"DefaultEndpointsProtocol=https;AccountName=...\"},\"validateSchema\":false}", + "description": "Upload a small JSON dataset provided directly as content to Azure Blob Storage without schema validation." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "database-management.createIncident", + "description": "Creates a new security incident record in the incident management database. Accepts details such as incident type, description, severity, affected systems, timestamps, and status. The tool validates inputs and stores the incident entry, returning the unique incident ID and creation metadata.", + "category": "database-management", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "Type/category of the security incident, e.g., Malware, Phishing, Unauthorized Access.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the incident including what was detected and its impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the incident (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected systems or assets identified by hostname or IP address.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectedAt", + "type": "string", + "description": "Timestamp when the incident was detected in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Identifier or name of the person or system reporting the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Initial status of the incident (e.g., New, In Progress, Resolved). Defaults to 'New'.", + "required": false, + "defaultValue": "New" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique incident ID, timestamps for creation, and confirmation status of the record creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or is instructed to log a new security incident into a managed database for tracking and investigation. This is crucial for incident lifecycle management, reporting, and audit trails in cybersecurity operations.", + "limitations": "This tool does not perform incident analysis, correlation with other incidents, or automated response actions. It only records the incident information as provided.", + "examples": [ + "Create a high severity malware incident affecting 3 hosts.", + "Log a phishing incident reported by user with a detailed description.", + "Record an unauthorized access incident detected at a specific timestamp with intermediate status." + ] + }, + "tags": [ + "database", + "incident-management", + "security", + "logging", + "cybersecurity", + "record-creation" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"Malware\",\"description\":\"Detected ransomware encrypting multiple files.\",\"severity\":\"Critical\",\"affectedSystems\":[\"192.168.1.10\",\"192.168.1.11\"],\"detectedAt\":\"2024-05-01T14:23:00Z\",\"reportedBy\":\"antivirusSystem\",\"status\":\"New\"}", + "description": "Create critical malware incident affecting two systems, with detection timestamp and reporter info." + }, + { + "inputJson": "{\"incidentType\":\"Phishing\",\"description\":\"User reported suspicious email with malicious link.\",\"severity\":\"Medium\",\"reportedBy\":\"john.doe@example.com\"}", + "description": "Log medium severity phishing incident reported by a user, no affected systems specified." + }, + { + "inputJson": "{\"incidentType\":\"Unauthorized Access\",\"description\":\"Unrecognized login detected from foreign IP.\",\"severity\":\"High\",\"detectedAt\":\"2024-06-10T08:15:30Z\",\"status\":\"In Progress\"}", + "description": "Record high severity unauthorized access incident with specific detection time and current progress status." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "frontend-development.analyzeThreat", + "description": "Analyzes frontend web application code or runtime environment inputs for potential security threats and vulnerabilities. Accepts source code snippets, configuration settings, or live DOM snapshots, then detects issues such as XSS risks, insecure API usage, or unsafe dependencies. Outputs a detailed threat analysis report outlining identified risks and remediation recommendations.", + "category": "frontend-development", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "Frontend source code or script snippet to analyze for security threats.", + "required": false, + "defaultValue": "" + }, + { + "name": "configSettings", + "type": "object", + "description": "Frontend configuration settings affecting security (e.g., CSP, CORS policies).", + "required": false, + "defaultValue": "" + }, + { + "name": "domSnapshot", + "type": "string", + "description": "Serialized DOM snapshot or HTML markup for runtime security threat analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "scanDepth", + "type": "number", + "description": "Level of depth for the analysis, from 1 (basic scans) up to 5 (deep code and dependency analysis).", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Whether to analyze external dependencies and libraries for vulnerabilities.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the output report (e.g., 'json', 'text').", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Structured security threat analysis report containing detected vulnerabilities, severity levels, affected components, and recommended mitigations." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing frontend codebases, configurations, or runtime snapshots to proactively identify security vulnerabilities like Cross-Site Scripting, unsafe API usage, or insecure dependencies. It helps understand the threat landscape specific to the client-side environment and guides remediation efforts.", + "limitations": "Cannot detect server-side security vulnerabilities or guarantee 100% coverage of all potential frontend threats. Effectiveness depends on provided inputs and scan depth settings.", + "examples": [ + "Analyze this React component code for security threats.", + "Evaluate the frontend CSP and CORS configurations for vulnerabilities.", + "Scan the runtime DOM snapshot to detect potential XSS attack vectors." + ] + }, + "tags": [ + "security", + "frontend", + "threat-analysis", + "vulnerability", + "code-scan", + "web-app" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"const userInput = document.getElementById('input').value; eval(userInput);\",\"scanDepth\":4,\"includeDependencies\":true,\"reportFormat\":\"json\"}", + "description": "Analyze a code snippet containing potentially unsafe use of eval with user input." + }, + { + "inputJson": "{\"configSettings\":{\"contentSecurityPolicy\":\"default-src 'self'; script-src 'self' 'unsafe-inline'\"},\"reportFormat\":\"text\"}", + "description": "Evaluate frontend security configuration focusing on Content Security Policy weaknesses." + }, + { + "inputJson": "{\"domSnapshot\":\"
Click me
\",\"scanDepth\":2}", + "description": "Analyze a DOM snippet for inline event handlers that may cause security issues such as XSS." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "backend-development.createCache", + "description": "Creates a configurable in-memory cache instance for backend applications. Accepts parameters defining cache size, expiration policy, eviction strategy, and persistence options. Returns a cache object interface supporting get, set, delete, and clear operations for efficient data retrieval and storage.", + "category": "backend-development", + "parameters": [ + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of entries that the cache can hold before eviction occurs.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultTTL", + "type": "number", + "description": "Default time-to-live (TTL) in seconds for cached entries before they expire. Set to 0 for no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "evictionPolicy", + "type": "string", + "description": "Eviction strategy used when the cache exceeds maxSize. Common strategies include 'LRU' (Least Recently Used), 'FIFO' (First In First Out), and 'LFU' (Least Frequently Used).", + "required": false, + "defaultValue": "LRU" + }, + { + "name": "persistToDisk", + "type": "boolean", + "description": "Whether to persist the cache contents to disk for durability across application restarts.", + "required": false, + "defaultValue": "false" + }, + { + "name": "persistencePath", + "type": "string", + "description": "Filesystem path to save the persisted cache when persistToDisk is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object exposing cache methods: get(key), set(key, value, ttl), delete(key), and clear(). Each method manages cache entries according to the configured policies." + }, + "aiAgent": { + "useCase": "Use this tool when you want to create a backend cache to improve performance by reducing expensive or frequent data fetching operations. Suitable for REST API servers, microservices, or any server-side environment where in-memory caching can reduce latency. Supports configuring size limits, expiration, and persistence.", + "limitations": "Does not provide distributed caching capabilities across multiple servers. Persistence is limited to local disk and may not be suitable for high-availability clustering scenarios.", + "examples": [ + "Create an in-memory cache with 1000 max entries, 60 seconds TTL, and LRU eviction.", + "Create a cache that persists to disk at '/tmp/cache.dat' with unlimited size and no expiration.", + "Create a small cache with FIFO eviction policy and no persistence." + ] + }, + "tags": [ + "cache", + "backend", + "performance", + "in-memory", + "eviction", + "persistence", + "TTL" + ], + "examples": [ + { + "inputJson": "{\"maxSize\":1000,\"defaultTTL\":60,\"evictionPolicy\":\"LRU\",\"persistToDisk\":false}", + "description": "Create an LRU cache with max 1000 entries and 60 seconds default TTL, no disk persistence." + }, + { + "inputJson": "{\"maxSize\":0,\"defaultTTL\":0,\"evictionPolicy\":\"FIFO\",\"persistToDisk\":true,\"persistencePath\":\"/tmp/cache.dat\"}", + "description": "Create an unlimited size cache with no expiration, FIFO eviction logic (ignored with unlimited size), persisting to local disk at /tmp/cache.dat." + }, + { + "inputJson": "{\"maxSize\":100,\"defaultTTL\":30,\"evictionPolicy\":\"FIFO\",\"persistToDisk\":false}", + "description": "Create a small FIFO cache with 100 entries max and 30 seconds TTL without persistence." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "infrastructure-management.createEvent", + "description": "Creates a new infrastructure event record for monitoring and analytics purposes. Accepts event metadata such as event type, severity, timestamp, source, and detailed message. Processes the input by validating and storing the event in the event management system, returning a confirmation with event ID and status.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of the event (e.g., ERROR, WARNING, INFO).", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the event (e.g., CRITICAL, MAJOR, MINOR, INFO).", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp when the event occurred.", + "required": true, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Origin source of the event, such as hostname, service name, or component identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Detailed descriptive message explaining the event.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional key-value metadata related to the event.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique event ID assigned to the created event and a status indicator confirming creation success or failure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent monitors cloud or physical infrastructure and needs to record events into a centralized analytics or incident management system for tracking, alerting, and analysis.", + "limitations": "This tool does not perform event correlation, alerting, or automatic remediation; it only creates and stores event records.", + "examples": [ + "Create a CRITICAL error event from server01 reporting disk failure.", + "Log an INFO-level event indicating successful backup completion.", + "Record a WARNING event for high CPU usage on serviceX." + ] + }, + "tags": [ + "infrastructure", + "event", + "logging", + "analytics", + "monitoring", + "incident-management", + "cloud", + "physical" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"ERROR\",\"severity\":\"CRITICAL\",\"timestamp\":\"2024-06-15T13:45:30Z\",\"source\":\"server01\",\"message\":\"Disk failure detected on /dev/sda1.\",\"metadata\":{\"diskId\":\"sda1\",\"errorCode\":\"EIO\"}}", + "description": "Logging a critical disk failure event from server01." + }, + { + "inputJson": "{\"eventType\":\"INFO\",\"severity\":\"INFO\",\"timestamp\":\"2024-06-15T14:00:00Z\",\"source\":\"backupService\",\"message\":\"Backup completed successfully.\",\"metadata\":{\"backupId\":\"bk-20240615-1400\"}}", + "description": "Recording an informational event indicating backup completion." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "monitoring.analyzeMetric", + "description": "Analyzes time series metric data to identify trends, anomalies, and performance insights. Accepts inputs such as metric name, time range, and optional threshold parameters. Processes the data through statistical analysis and anomaly detection algorithms, then outputs a detailed report including trend lines, detected anomalies, and summary statistics.", + "category": "monitoring", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The name of the metric to analyze, e.g., CPU usage or request latency.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "Start time for analysis in ISO 8601 format, e.g., '2024-01-01T00:00:00Z'.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End time for analysis in ISO 8601 format, e.g., '2024-01-07T23:59:59Z'.", + "required": true, + "defaultValue": "" + }, + { + "name": "granularity", + "type": "string", + "description": "Sampling interval for the metric data (e.g., '1m', '5m', '1h').", + "required": false, + "defaultValue": "5m" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional object defining thresholds for anomaly detection, e.g., {\"upper\":80, \"lower\":20}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeForecast", + "type": "boolean", + "description": "Whether to include forecasted metric trends based on historical data.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analyzed metric report with trend summaries, anomaly detections, statistics, and optional forecast data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand metric behavior over a specified time range for performance monitoring, capacity planning, or incident investigation. It helps identify unusual patterns and provides actionable insights from raw metric data.", + "limitations": "Does not collect raw metric data; requires pre-existing metric storage. Does not replace specialized forecasting models but provides basic extrapolations.", + "examples": [ + "Analyze CPU usage metric for last week to detect performance degradations.", + "Identify anomalies in application request latency over the past 24 hours with thresholds.", + "Generate forecast of memory usage trend for the next day based on historical data." + ] + }, + "tags": [ + "monitoring", + "analysis", + "metrics", + "anomaly-detection", + "performance", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"cpu_usage\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-07T23:59:59Z\",\"granularity\":\"1h\",\"thresholds\":{\"upper\":85},\"includeForecast\":true}", + "description": "Analyze CPU usage for the first week of April 2024 with hourly granularity, flagging usage above 85% and including forecast." + }, + { + "inputJson": "{\"metricName\":\"request_latency\",\"startTime\":\"2024-06-10T00:00:00Z\",\"endTime\":\"2024-06-10T23:59:59Z\",\"granularity\":\"5m\",\"thresholds\":{\"upper\":500},\"includeForecast\":false}", + "description": "Detect anomalies in request latency on June 10, 2024, in 5-minute blocks with an upper threshold of 500 ms, no forecast." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "security-tools.draftReport", + "description": "This tool accepts security scan results, incident details, or audit data as input and drafts a comprehensive security report. It processes the input to identify key findings, summarize risks, and recommend mitigation steps, generating a structured report suitable for stakeholders and compliance purposes.", + "category": "security-tools", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "Type of security report to draft, e.g., 'vulnerabilityAssessment', 'incidentReport', or 'complianceAudit'.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputData", + "type": "object", + "description": "Structured security data including scan results, incident logs, or audit details to base the report on.", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Intended audience for the report, such as 'technical', 'management', or 'executive'.", + "required": false, + "defaultValue": "technical" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include recommended actions and mitigations in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the report, e.g., 'markdown', 'html', or 'text'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted report text in the requested format and metadata such as sections and summary highlights." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a well-structured security report from raw security data to communicate findings and recommendations to various stakeholders, saving time and ensuring clarity.", + "limitations": "The tool depends on the quality and completeness of the input security data; it cannot verify data accuracy or context beyond what is provided. It does not replace expert security analysis.", + "examples": [ + "Draft a vulnerability assessment report from recent scan results for management.", + "Generate an incident report summarizing security breach details for the executive team.", + "Create a compliance audit summary including recommended remediation steps." + ] + }, + "tags": [ + "security", + "reporting", + "automation", + "risk-management", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"vulnerabilityAssessment\",\"inputData\":{\"scanDate\":\"2024-05-01\",\"vulnerabilities\":[{\"id\":\"CVE-2023-12345\",\"severity\":\"high\",\"description\":\"SQL injection vulnerability in login module.\"},{\"id\":\"CVE-2024-67890\",\"severity\":\"medium\",\"description\":\"Outdated TLS version supported.\"}]},\"audience\":\"management\",\"includeRecommendations\":true,\"format\":\"markdown\"}", + "description": "Generate a vulnerability assessment report in markdown format targeting management audience." + }, + { + "inputJson": "{\"reportType\":\"incidentReport\",\"inputData\":{\"incidentId\":\"INC-20240512-001\",\"description\":\"Unauthorized access detected on server\",\"discoveryDate\":\"2024-05-12\",\"impact\":\"Sensitive data accessed\",\"resolution\":\"Access revoked, credentials reset\"},\"audience\":\"technical\",\"includeRecommendations\":false,\"format\":\"text\"}", + "description": "Draft a technical incident report without recommendations in plain text." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "testing-automation.createAPI", + "description": "Creates an automated test API endpoint based on provided API specifications and test scenarios. Accepts a JSON or YAML OpenAPI/Swagger specification along with optional test cases to generate a mock or stub API for automated testing. Returns the URL and configuration details of the created test API environment.", + "category": "testing-automation", + "parameters": [ + { + "name": "apiSpec", + "type": "string", + "description": "API specification document in OpenAPI/Swagger format (JSON or YAML) defining endpoints and schemas.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Target environment for deployment of the test API, e.g., 'mock', 'stub', or 'local'.", + "required": false, + "defaultValue": "mock" + }, + { + "name": "testScenarios", + "type": "array", + "description": "Optional array of test scenario objects defining request inputs and expected responses to validate the API behavior.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authentication", + "type": "object", + "description": "Authentication configuration to secure the test API endpoints, such as API keys or OAuth tokens.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for API responses during automated testing (default 30 seconds).", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Object containing details of the created test API, including the endpoint URL, environment info, and usage instructions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate a mock or stub API for automated testing workflows based on a formal API specification. Ideal for testing frontend integration, CI pipelines, or validation against expected scenarios without requiring backend implementation.", + "limitations": "This tool cannot implement full backend logic or stateful APIs; it provides simulated responses based on specifications and scenarios. It does not replace full end-to-end integration testing with real backends.", + "examples": [ + "Create a mock API for a payment processing API to test frontend interactions.", + "Generate a stub API endpoint with predefined responses for automated regression tests.", + "Deploy a local test API server based on OpenAPI spec with authentication for integration testing." + ] + }, + "tags": [ + "testing", + "automation", + "API", + "mock", + "stub", + "OpenAPI", + "integration" + ], + "examples": [ + { + "inputJson": "{\"apiSpec\": \"{\\\"openapi\\\": \\\"3.0.0\\\", \\\"info\\\": {\\\"title\\\": \\\"Sample API\\\", \\\"version\\\": \\\"1.0.0\\\"}, \\\"paths\\\": {\\\"/users\\\": {\\\"get\\\": {\\\"responses\\\": {\\\"200\\\": {\\\"description\\\": \\\"A list of users\\\", \\\"content\\\": {\\\"application/json\\\": {\\\"schema\\\": {\\\"type\\\": \\\"array\\\", \\\"items\\\": {\\\"type\\\": \\\"string\\\"}}}}}}}}}}\", \"environment\": \"mock\", \"testScenarios\": [{\"path\": \"/users\", \"method\": \"GET\", \"expectedResponse\": [{\"id\": \"user1\"}, {\"id\": \"user2\"}]}], \"timeoutSeconds\": 20}", + "description": "Create a mock API from a simple OpenAPI spec returning a fixed user list for GET /users with a 20 second timeout." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "web-development.generateWord", + "description": "Generates a realistic or thematic word suitable for web content, based on specified language, style, and optional length constraints. Accepts parameters defining the desired language, word style (e.g., technical, casual), minimum and maximum length, and returns a word string that fits these criteria for use in website text or placeholder content.", + "category": "web-development", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') to generate a word appropriate to the specified language", + "required": true, + "defaultValue": "en" + }, + { + "name": "style", + "type": "string", + "description": "Defines the style or category of the word such as 'technical', 'casual', 'formal', or 'random'", + "required": false, + "defaultValue": "random" + }, + { + "name": "minLength", + "type": "number", + "description": "Minimum length of the generated word in characters", + "required": false, + "defaultValue": "3" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word in characters", + "required": false, + "defaultValue": "12" + }, + { + "name": "includeHyphenated", + "type": "boolean", + "description": "Whether to allow hyphenated words in the output", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word string and metadata about the generation parameters" + }, + "aiAgent": { + "useCase": "Use this tool when dynamically generating natural looking single words for website content, placeholders, or test data, especially when words must conform to language and style requirements. It helps create realistic textual content that fits design or domain needs without manual word selection.", + "limitations": "Cannot generate multi-word phrases or sentences; does not guarantee dictionary word validity in obscure or highly specialized vocabularies; limited to single words per invocation.", + "examples": [ + "Generate a casual English word between 5 and 8 characters.", + "Generate a technical term in English up to 10 characters.", + "Generate a formal French word without hyphenation." + ] + }, + "tags": [ + "word-generation", + "language", + "content-creation", + "web-development", + "text", + "placeholder" + ], + "examples": [ + { + "inputJson": "{\"language\":\"en\",\"style\":\"casual\",\"minLength\":5,\"maxLength\":8,\"includeHyphenated\":false}", + "description": "Generate a casual English word from 5 to 8 characters." + }, + { + "inputJson": "{\"language\":\"en\",\"style\":\"technical\",\"minLength\":3,\"maxLength\":10}", + "description": "Generate a technical English word up to 10 characters." + }, + { + "inputJson": "{\"language\":\"fr\",\"style\":\"formal\",\"minLength\":4,\"maxLength\":12,\"includeHyphenated\":false}", + "description": "Generate a formal French word between 4 and 12 characters with no hyphenation." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "text-analysis.uploadDocument", + "description": "Uploads a text document for further natural language processing analysis. Accepts document content as raw text or encoded base64, with optional metadata such as title and language. Processes and stores the text for downstream NLP tasks and returns a confirmation with assigned document ID and metadata summary.", + "category": "text-analysis", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The raw text content of the document to upload. Required if base64Content is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "base64Content", + "type": "string", + "description": "Base64-encoded content of the document. Required if content is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title or name of the document for reference.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the document, e.g., 'en' for English. Helps in downstream processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with additional info about the document (author, date, tags).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique document ID, title, language, and size (character count) of the uploaded document." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to store raw or encoded text documents for natural language processing workflows, such as sentiment analysis, summarization, or entity recognition, ensuring the document is accessible and identifiable for further analysis.", + "limitations": "This tool only uploads and stores document text; it does not perform any analysis, parsing, or extraction itself. It requires either raw text or base64-encoded content but cannot process binary files directly.", + "examples": [ + "Upload a plain text document with English content and a title for tracking.", + "Upload document content encoded in base64 with metadata including author and date.", + "Store text documents for later NLP processing such as entity extraction or summarization." + ] + }, + "tags": [ + "text", + "upload", + "document", + "NLP", + "storage", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"content\":\"This is an example document text for uploading.\",\"title\":\"Example Doc\",\"language\":\"en\"}", + "description": "Uploading a simple plain text document with title and language." + }, + { + "inputJson": "{\"base64Content\":\"VGhpcyBpcyBhbiBleGFtcGxlIGJhc2U2NCBlbmNvZGVkIGRvY3VtZW50Lg==\",\"metadata\":{\"author\":\"John Doe\",\"date\":\"2024-06-01\"}}", + "description": "Uploading a base64 encoded document with metadata about author and date." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "email-communication.uploadFile", + "description": "Uploads a file attachment to be included in an outgoing email campaign or message. Accepts file content and metadata, validates file type and size, and returns a URL or identifier to reference the uploaded file in email templates or API calls for email sending.", + "category": "email-communication", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the file including extension (e.g., 'report.pdf').", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "The base64-encoded content of the file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "mimeType", + "type": "string", + "description": "The MIME type of the file (e.g., 'application/pdf').", + "required": true, + "defaultValue": "" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed file size in megabytes. Files larger than this value will be rejected.", + "required": false, + "defaultValue": "10" + }, + { + "name": "folderPath", + "type": "string", + "description": "Optional folder path or category to store the file under for organizational purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with fileId, fileUrl, and metadata (fileName, mimeType, sizeBytes). This allows referencing the uploaded file in subsequent email sending operations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to attach or embed files in an email communication by uploading those files to a managed storage and obtaining a reference. Common scenarios include adding PDFs, images, or documents in marketing emails or transactional messages.", + "limitations": "This tool does not send email itself, only uploads and stores files for attachment or embedding. It requires base64 encoded file contents, which may be large for big files, so streaming upload or chunking is not supported.", + "examples": [ + "Upload a product brochure PDF to attach in an email campaign.", + "Upload a user profile image to embed in a transactional email.", + "Upload a CSV file for bulk email personalization data (as an attachment)." + ] + }, + "tags": [ + "email", + "file", + "upload", + "attachment", + "base64", + "email-attachment", + "communication" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"brochure.pdf\",\"fileContentBase64\":\"JVBERi0xLjQKJc...\",\"mimeType\":\"application/pdf\",\"maxFileSizeMB\":5,\"folderPath\":\"marketing/brochures\"}", + "description": "Upload a PDF brochure to the marketing brochures folder to use as email attachment." + }, + { + "inputJson": "{\"fileName\":\"user-photo.png\",\"fileContentBase64\":\"iVBORw0KGgoAAAANSUhEUg...\",\"mimeType\":\"image/png\",\"maxFileSizeMB\":2,\"folderPath\":\"user-images\"}", + "description": "Upload a PNG user photo for embedding in a transactional email." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "notifications.createEmail", + "description": "This tool creates an email message based on inputs including recipients, subject, body content, attachments, and optional metadata such as CC, BCC, and priority. It processes the inputs to assemble a properly structured email object ready for sending or further handling.", + "category": "notifications", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of primary recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content of the email, can be plain text or HTML formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses to be CC'd on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses to be BCC'd on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachments, each defined by an object with filename and content (base64 encoded).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the email message, e.g., 'normal', 'high', or 'low'.", + "required": false, + "defaultValue": "\"normal\"" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates whether the body content is in HTML format.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured email object containing all the assembled fields ready to be sent by an email client or service." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare an email message programmatically based on user instructions or automation scenarios, such as sending notifications, invitations, or alerts. It simplifies email assembly, ensuring correct structure and optional features like attachments or priority are handled.", + "limitations": "This tool only constructs the email message object; it does not send the email or manage SMTP protocols, authentication, or delivery status tracking.", + "examples": [ + "Create an email to notify a user of a password reset.", + "Prepare an invitation email with HTML content and an attached calendar file.", + "Generate a high-priority alert email with multiple recipients and BCC." + ] + }, + "tags": [ + "notifications", + "email", + "communication", + "message creation", + "automation", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Password Reset Notification\",\"body\":\"Your password has been successfully reset.\",\"isHtml\":false}", + "description": "Simple password reset notification email in plain text format to one recipient." + }, + { + "inputJson": "{\"to\":[\"team@example.com\"],\"subject\":\"Meeting Invitation\",\"body\":\"

Please join us for the quarterly meeting.

\",\"isHtml\":true,\"attachments\":[{\"filename\":\"agenda.pdf\",\"content\":\"Base64EncodedContentHere\"}]}", + "description": "HTML email inviting a team to a meeting with a PDF agenda attached." + }, + { + "inputJson": "{\"to\":[\"user1@example.com\",\"user2@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[\"audit@example.com\"],\"subject\":\"System Alert: High CPU Usage\",\"body\":\"System CPU usage has exceeded 90%.\",\"priority\":\"high\",\"isHtml\":false}", + "description": "High priority alert email sent to multiple recipients, CC and BCC included." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "backend-development.analyzeAlert", + "description": "This tool accepts security alert data as input, analyzes various aspects such as alert type, severity, source, and associated event logs, and outputs a structured analysis report including threat classification, risk level, and recommended actions for remediation or escalation.", + "category": "backend-development", + "parameters": [ + { + "name": "alertData", + "type": "object", + "description": "The JSON object representing the alert details, including type, source, timestamp, and event logs.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEventLogs", + "type": "boolean", + "description": "Whether to include detailed event logs analysis in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRecommendations", + "type": "number", + "description": "Maximum number of remediation or escalation recommendations to provide.", + "required": false, + "defaultValue": "3" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis depth: 'basic', 'detailed', or 'full'. Determines the thoroughness of investigation on alert and logs.", + "required": false, + "defaultValue": "basic" + } + ], + "returns": { + "type": "object", + "description": "An object containing the alert analysis report with fields like threatClassification, riskLevel, summary, and remediationRecommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw security alert data from backend services or monitoring systems and need a structured, actionable analysis that categorizes the alert, assesses risk, and suggests steps to mitigate or escalate incidents. It helps automate understanding and contextualizing alerts to improve incident response workflows.", + "limitations": "This tool does not perform real-time alert detection or data collection. It relies on provided alert data and cannot analyze alerts without sufficient information. It also does not replace deep forensic investigations or integrate with external threat intelligence automatically.", + "examples": [ + "Analyze a high-severity intrusion alert with associated event logs to get classification and remediation steps.", + "Provide a summarized risk assessment of an alert, focusing on low-level details only.", + "Generate up to 5 recommended actions for a suspicious login alert with full analysis." + ] + }, + "tags": [ + "backend", + "security", + "alert-analysis", + "threat-classification", + "risk-assessment", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"alertData\":{\"type\":\"IntrusionAttempt\",\"sourceIP\":\"192.168.1.25\",\"timestamp\":\"2024-05-01T13:42:00Z\",\"severity\":\"high\",\"eventLogs\":[{\"eventType\":\"FailedLogin\",\"timestamp\":\"2024-05-01T13:40:01Z\",\"username\":\"admin\"},{\"eventType\":\"PortScan\",\"timestamp\":\"2024-05-01T13:41:59Z\",\"ports\":[22,80,443]}]},\"includeEventLogs\":true,\"maxRecommendations\":3,\"analysisDepth\":\"detailed\"}", + "description": "Detailed analysis of a high severity intrusion attempt alert including event logs with up to three remediation recommendations." + }, + { + "inputJson": "{\"alertData\":{\"type\":\"SuspiciousLogin\",\"sourceIP\":\"10.0.0.128\",\"timestamp\":\"2024-05-02T09:15:30Z\",\"severity\":\"medium\",\"eventLogs\":[]},\"includeEventLogs\":false,\"maxRecommendations\":2,\"analysisDepth\":\"basic\"}", + "description": "Basic analysis of a suspicious login alert excluding event logs with two recommended actions." + } + ], + "qualityScore": 0.94, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "statistics-tools.createVariable", + "description": "Creates a new statistical variable definition from raw data or existing variables. Accepts input data arrays or references, applies specified transformation or formula, and outputs a variable object with metadata for statistical analysis or modeling.", + "category": "statistics-tools", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "Name to assign to the new variable.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputData", + "type": "array", + "description": "Array of numerical or categorical data values used as input to create the variable.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformation", + "type": "string", + "description": "Mathematical or statistical operation to apply, such as 'log', 'sqrt', 'standardize', 'difference', 'categorize'.", + "required": false, + "defaultValue": "" + }, + { + "name": "formula", + "type": "string", + "description": "Custom formula as a string to compute variable values from input data (e.g., 'x * 2 + 1'). Overrides transformation if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "missingValueStrategy", + "type": "string", + "description": "Method to handle missing values: 'omit', 'zeroImpute', 'meanImpute', or 'none'.", + "required": false, + "defaultValue": "omit" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata for the variable such as description, units, or category labels.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created variable including its name, computed values array, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a new statistical variable from raw data or other variables. This includes tasks like transforming data distributions, creating derived features for modeling, or standardizing inputs. It is designed to support data preprocessing steps in statistical analysis pipelines.", + "limitations": "The tool does not perform complex multi-variable interactions without explicit formula input. It cannot validate domain-specific correctness of transformations or infer relationships automatically.", + "examples": [ + "Create a variable named 'logIncome' by applying a log transformation to income data.", + "Generate a new variable 'ageGroup' by categorizing age data into bins.", + "Create 'adjustedScore' using a custom formula to scale raw scores." + ] + }, + "tags": [ + "statistics", + "variable", + "data-transform", + "feature-engineering", + "preprocessing", + "modeling" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"logIncome\",\"inputData\":[1000,5000,10000,20000],\"transformation\":\"log\",\"missingValueStrategy\":\"omit\"}", + "description": "Create a new variable 'logIncome' by applying a logarithmic transformation to income data." + }, + { + "inputJson": "{\"variableName\":\"ageGroup\",\"inputData\":[23,45,34,65,12],\"transformation\":\"categorize\",\"metadata\":{\"categories\":[\"Child\",\"Adult\",\"Senior\"]},\"missingValueStrategy\":\"omit\"}", + "description": "Generate 'ageGroup' variable by categorizing age into groups." + }, + { + "inputJson": "{\"variableName\":\"adjustedScore\",\"inputData\":[50,65,85,90],\"formula\":\"x * 1.2 + 5\"}", + "description": "Create 'adjustedScore' variable using a custom formula to adjust scores." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "infrastructure-management.createReadme", + "description": "Generates a comprehensive README document for infrastructure projects by accepting project metadata, architecture details, setup instructions, usage guidelines, and troubleshooting tips. Outputs a structured markdown README file content ready for documentation repositories.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the infrastructure project for which the README is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief summary explaining the purpose and scope of the infrastructure project.", + "required": true, + "defaultValue": "" + }, + { + "name": "architectureOverview", + "type": "string", + "description": "Detailed description of the system architecture including components, services, and cloud/physical resources.", + "required": false, + "defaultValue": "" + }, + { + "name": "setupInstructions", + "type": "string", + "description": "Step-by-step installation and configuration instructions to deploy the infrastructure.", + "required": true, + "defaultValue": "" + }, + { + "name": "usageGuidelines", + "type": "string", + "description": "Information on how to utilize or manage the infrastructure once set up, including commands or scripts.", + "required": false, + "defaultValue": "" + }, + { + "name": "troubleshootingTips", + "type": "string", + "description": "Common issues and recommended solutions or debugging steps for the infrastructure project.", + "required": false, + "defaultValue": "" + }, + { + "name": "contributingGuidelines", + "type": "string", + "description": "Instructions for external contributors on how to contribute to the infrastructure project.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInformation", + "type": "string", + "description": "Contact details for maintainers or teams responsible for the infrastructure project.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README as a markdown formatted string under the key 'readmeContent'." + }, + "aiAgent": { + "useCase": "Use this tool when creating or updating infrastructure project documentation to provide clear, standardized, and informative README files that facilitate onboarding and maintenance. It helps automate README generation from structured inputs describing project details, architecture, setup, usage, and support information.", + "limitations": "This tool cannot validate the correctness of technical content or dynamically gather information. It requires comprehensive and accurate input from users to produce meaningful documentation.", + "examples": [ + "Create a README for a new cloud-based microservices infrastructure.", + "Generate documentation for physical data center setup and deployment steps.", + "Update the README to include troubleshooting and contact info for an existing infrastructure project." + ] + }, + "tags": [ + "documentation", + "infrastructure", + "readme", + "automation", + "cloud", + "setup", + "troubleshooting" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Acme Cloud Platform\",\"projectDescription\":\"Infrastructure for scalable cloud hosting of microservices.\",\"architectureOverview\":\"Uses Kubernetes clusters with auto-scaling, managed databases, and load balancers.\",\"setupInstructions\":\"1. Provision cloud resources. 2. Deploy Kubernetes cluster. 3. Configure databases.\",\"usageGuidelines\":\"Use 'kubectl' to manage workloads and monitor metrics via dashboard.\",\"troubleshootingTips\":\"Check pod logs for errors; ensure network policies allow traffic.\",\"contributingGuidelines\":\"Fork repository, submit pull requests with clear descriptions.\",\"contactInformation\":\"infra-team@acme.com\"}", + "description": "Generate a full README for a cloud platform infrastructure project with detailed sections." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "monitoring.formatArticle", + "description": "Formats a monitoring-related article or report for better readability and presentation. Accepts raw article text along with optional metadata such as timestamp and severity, and applies formatting styles including headings, code blocks, and highlights. Outputs a well-structured article string in Markdown or HTML format suitable for documentation or dashboards.", + "category": "monitoring", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The unformatted article or report text that needs styling and structuring.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "The output format type, such as 'markdown' or 'html'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to prepend the article with a formatted timestamp if available in metadata.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityHighlighting", + "type": "boolean", + "description": "If true, applies special formatting to severity keywords (e.g., ERROR, WARNING) to visually emphasize them.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata object containing article properties like 'timestamp' (ISO string), 'author', and 'reportType'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing 'formattedArticle' as a string with the fully formatted article text, and 'formatType' indicating the output format used." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to present raw monitoring logs, incident reports, or performance articles in a human-friendly format for technical documentation, dashboards, or alert messages. This tool helps standardize formatting to improve clarity and usability of monitoring documentation.", + "limitations": "This tool does not analyze or interpret monitoring data content semantically; it only formats based on text patterns and metadata. It cannot fill missing information or validate monitoring data correctness.", + "examples": [ + "Format a raw incident report into Markdown with severity highlighting and timestamp.", + "Convert a monitoring article to HTML format to embed in a web dashboard.", + "Format plain text monitoring notes with minimal styling in Markdown." + ] + }, + "tags": [ + "formatting", + "monitoring", + "documentation", + "reporting", + "markdown", + "html", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"System latency observed at 150ms exceeding threshold. ERROR at module ABC.\",\"formatType\":\"markdown\",\"includeTimestamp\":true,\"severityHighlighting\":true,\"metadata\":{\"timestamp\":\"2024-06-15T08:30:00Z\",\"author\":\"ops-team\",\"reportType\":\"latency-alert\"}}", + "description": "Formats a short latency alert in Markdown including timestamp and severity highlights." + }, + { + "inputJson": "{\"rawText\":\"CPU utilization report:\\nAverage: 75%\\nPeak: 95% at 2024-06-15 14:00\\nNo critical errors detected.\",\"formatType\":\"html\",\"includeTimestamp\":false,\"severityHighlighting\":false,\"metadata\":{\"author\":\"sysadmin\"}}", + "description": "Formats a CPU utilization report as HTML without timestamp or severity highlighting." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "compliance-management.composeNotification", + "description": "This tool generates a compliance-related notification message based on input parameters such as notification type, target audience, regulatory references, and key message details. It processes these inputs to compose a formatted notification suitable for internal distribution or external communication to ensure regulatory and policy compliance awareness.", + "category": "compliance-management", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to compose (e.g., policy update, compliance alert, regulatory change)", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended recipients of the notification (e.g., employees, management, vendors)", + "required": true, + "defaultValue": "" + }, + { + "name": "regulationReferences", + "type": "array", + "description": "List of relevant regulations, standards, or policies to include in the notification", + "required": false, + "defaultValue": "[]" + }, + { + "name": "messageDetails", + "type": "string", + "description": "Key details or summary of the compliance issue or update to include in the notification message", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency level of the notification (e.g., low, medium, high)", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Whether to include specific action items or steps for recipients to follow", + "required": false, + "defaultValue": "true" + }, + { + "name": "senderName", + "type": "string", + "description": "Name or title of the person or department sending the notification", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the notification content (e.g., en, es)", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Structured notification with composed subject line and message body ready for distribution" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, effective compliance notifications tailored to a specific audience, incorporating relevant regulatory references and urgency context to ensure timely and compliant communication within an organization.", + "limitations": "Does not send notifications; only composes message content. Not designed for multilingual translations beyond provided language codes. Does not verify legal accuracy of regulatory references.", + "examples": [ + "Compose a high urgency compliance alert for all employees regarding the new data privacy regulation effective next month.", + "Generate a policy update notification for management summarizing changes to workplace safety protocols.", + "Create a compliance reminder for vendors about the latest contract requirements with action items." + ] + }, + "tags": [ + "compliance", + "notification", + "communication", + "regulatory", + "policy", + "alert", + "messageComposition" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"compliance alert\",\"targetAudience\":\"employees\",\"regulationReferences\":[\"GDPR Article 5\",\"Company Data Policy\"],\"messageDetails\":\"New data handling procedures effective from next Monday.\",\"urgencyLevel\":\"high\",\"includeActionItems\":true,\"senderName\":\"Compliance Department\",\"language\":\"en\"}", + "description": "High urgency data privacy compliance alert for all employees with relevant regulation references and action steps." + }, + { + "inputJson": "{\"notificationType\":\"policy update\",\"targetAudience\":\"management\",\"messageDetails\":\"Updates to remote work policies reflecting latest health guidelines.\",\"urgencyLevel\":\"medium\",\"includeActionItems\":false,\"senderName\":\"HR Team\",\"language\":\"en\"}", + "description": "Medium urgency policy update notification for management about remote work guidelines without action items." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "compliance-management.createSpec", + "description": "Creates a comprehensive compliance specification document based on input parameters such as regulatory frameworks, industry standards, and organizational policies. Processes inputs to generate a structured spec outlining compliance requirements, controls, and procedures, outputting a JSON or PDF ready for audits and implementation.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulatoryFrameworks", + "type": "array", + "description": "List of regulatory frameworks (e.g., GDPR, HIPAA) to include in the compliance spec.", + "required": true, + "defaultValue": "" + }, + { + "name": "industryStandards", + "type": "array", + "description": "Relevant industry standards (e.g., ISO 27001, NIST) to incorporate.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "organizationalPolicies", + "type": "array", + "description": "Custom organizational policies and procedures to be integrated into the spec.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeControls", + "type": "boolean", + "description": "Flag to indicate whether to include detailed control descriptions for each requirement.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the specification document, e.g., 'JSON' or 'PDF'.", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "specTitle", + "type": "string", + "description": "Title of the compliance specification document.", + "required": false, + "defaultValue": "Compliance Specification Document" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Effective date of the compliance requirements, in ISO 8601 format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full compliance specification document in the requested format, including metadata and detailed requirements." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate detailed compliance specification documents that integrate multiple regulatory and policy sources, assisting compliance officers, auditors, and risk managers in preparing for audits or policy implementation.", + "limitations": "Does not validate the accuracy of external regulatory or standard updates; assumes input frameworks and policies are current and accurate. Does not automate compliance assessment or monitoring.", + "examples": [ + "Generate a GDPR and HIPAA compliance specification including organizational policies.", + "Create a compliance specification document in PDF format for ISO 27001.", + "Produce a JSON spec defining controls and requirements based on specified regulatory frameworks." + ] + }, + "tags": [ + "compliance", + "regulatory", + "specification", + "document", + "standards", + "policy", + "audit" + ], + "examples": [ + { + "inputJson": "{\"regulatoryFrameworks\":[\"GDPR\",\"HIPAA\"],\"includeControls\":true,\"outputFormat\":\"JSON\",\"specTitle\":\"Healthcare Compliance Spec\",\"effectiveDate\":\"2024-01-01\"}", + "description": "Create a detailed compliance specification integrating GDPR and HIPAA frameworks for healthcare, output in JSON." + }, + { + "inputJson": "{\"regulatoryFrameworks\":[\"ISO 27001\"],\"industryStandards\":[\"NIST\"],\"includeControls\":false,\"outputFormat\":\"PDF\",\"specTitle\":\"Information Security Compliance\",\"effectiveDate\":\"2024-06-01\"}", + "description": "Generate a PDF specification document for information security compliance combining ISO 27001 and NIST standards without control details." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "sales-automation.composeSummary", + "description": "This tool accepts detailed sales interaction data, including meeting notes, lead information, and follow-up actions, and composes a concise, structured sales summary document. It processes raw input to generate clear summaries that highlight key points, customer needs, decisions made, and next steps for sales teams to review or share.", + "category": "sales-automation", + "parameters": [ + { + "name": "meetingNotes", + "type": "string", + "description": "Detailed notes or transcript of the sales meeting or call.", + "required": true, + "defaultValue": "" + }, + { + "name": "leadInfo", + "type": "object", + "description": "Structured information about the lead such as name, company, industry, and contact details.", + "required": true, + "defaultValue": "" + }, + { + "name": "followUpActions", + "type": "array", + "description": "List of agreed follow-up actions or tasks after the interaction.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired approximate length of the summary in sentences.", + "required": false, + "defaultValue": "5" + }, + { + "name": "highlightKeyPoints", + "type": "boolean", + "description": "Whether to emphasize key decisions, challenges, and customer needs in the summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a structured sales summary text and metadata such as word count and summary generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a clear, concise summary from detailed sales conversation data to assist sales teams in tracking customer interactions, preparing follow-ups, or sharing insights internally. Ideal for transforming raw notes or transcripts into actionable documents.", + "limitations": "Cannot generate summary if input notes are too sparse or lack substantive content. Not intended to replace full CRM record keeping or generate legal agreements.", + "examples": [ + "Generate a summary from a recent sales call transcript highlighting main customer pain points.", + "Create a follow-up summary document combining lead data and meeting notes to send to internal stakeholders.", + "Summarize key outcomes and next steps from a discovery call with a potential client." + ] + }, + "tags": [ + "sales", + "automation", + "summary", + "leadManagement", + "documentGeneration", + "salesNotes" + ], + "examples": [ + { + "inputJson": "{\"meetingNotes\":\"Discussed product features and pricing models. Client expressed interest in premium plan and requested case studies.\",\"leadInfo\":{\"name\":\"John Doe\",\"company\":\"Acme Corp\",\"industry\":\"Manufacturing\",\"contactEmail\":\"john.doe@acmecorp.com\"},\"followUpActions\":[\"Send case studies\",\"Schedule product demo\"],\"summaryLength\":5,\"highlightKeyPoints\":true}", + "description": "Generate a 5-sentence sales summary emphasizing key discussion points and follow-ups for a lead named John Doe." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "finance-tools.generateKPI", + "description": "Generates key performance indicators (KPIs) from financial data provided as input. The tool accepts financial records such as revenues, expenses, and other accounting entries, processes them based on specified KPI definitions and time periods, and outputs calculated KPI metrics like gross profit margin, current ratio, and return on equity in a structured format.", + "category": "finance-tools", + "parameters": [ + { + "name": "financialData", + "type": "array", + "description": "An array of financial records including revenues, expenses, assets, liabilities, etc., each as an object with relevant fields like amount, date, and category.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiDefinitions", + "type": "array", + "description": "List of KPIs to calculate, each defined by a unique name and a formula or standard computation method (e.g., 'grossProfitMargin' calculated as (Revenue - COGS) / Revenue).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) for the data range over which KPIs will be calculated.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) for the data range over which KPIs will be calculated.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) for financial values to ensure correct unit interpretation.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Flag to indicate if trend analysis over multiple periods should be included for each KPI.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing calculated KPI values with keys matching requested KPI names, each value includes current period KPI value and optional trend data if requested." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents assisting users with financial analysis by automatically computing requested KPIs from raw financial data across specified periods, helping in performance evaluation, decision-making, and reporting.", + "limitations": "The tool does not validate the financial data's accounting correctness or completeness; it assumes input data is clean and standardized. It cannot perform forecasts or interpret qualitative financial context.", + "examples": [ + "Calculate gross profit margin and current ratio for Q1 2024 from provided financial transactions.", + "Generate return on equity KPI using last fiscal year's asset and equity balances.", + "Provide KPIs including cash flow margin and debt to equity ratio with trend analysis over the past 12 months." + ] + }, + "tags": [ + "finance", + "KPI", + "analytics", + "financial-metrics", + "reporting", + "performance", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"financialData\":[{\"category\":\"Revenue\",\"amount\":100000,\"date\":\"2024-03-31\"},{\"category\":\"COGS\",\"amount\":60000,\"date\":\"2024-03-31\"},{\"category\":\"CurrentAssets\",\"amount\":50000,\"date\":\"2024-03-31\"},{\"category\":\"CurrentLiabilities\",\"amount\":30000,\"date\":\"2024-03-31\"}],\"kpiDefinitions\":[\"grossProfitMargin\",\"currentRatio\"],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"currency\":\"USD\",\"includeTrendAnalysis\":false}", + "description": "Calculate the gross profit margin and current ratio KPIs for Q1 2024 using provided financial records." + }, + { + "inputJson": "{\"financialData\":[{\"category\":\"Equity\",\"amount\":150000,\"date\":\"2023-12-31\"},{\"category\":\"NetIncome\",\"amount\":45000,\"date\":\"2023-12-31\"},{\"category\":\"Assets\",\"amount\":300000,\"date\":\"2023-12-31\"}],\"kpiDefinitions\":[\"returnOnEquity\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\",\"currency\":\"USD\",\"includeTrendAnalysis\":true}", + "description": "Generate return on equity KPI for the fiscal year 2023 with trend analysis." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "backend-development.renderReference", + "description": "Renders a structured reference content block from supplied bibliographic data. Accepts input as an object containing fields such as author(s), title, publication, year, and URL. Processes the data to output a properly formatted reference string in a chosen citation style (APA, MLA, Chicago) suitable for embedding in backend-generated documents or APIs.", + "category": "backend-development", + "parameters": [ + { + "name": "referenceData", + "type": "object", + "description": "An object containing bibliographic details like authors, title, publication, year, and URL to be formatted as a reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style to use for formatting the reference. Supported styles include 'APA', 'MLA', and 'Chicago'.", + "required": false, + "defaultValue": "\"APA\"" + }, + { + "name": "includeUrl", + "type": "boolean", + "description": "Whether to include URL in the rendered reference if provided in referenceData.", + "required": false, + "defaultValue": "true" + }, + { + "name": "useFullNames", + "type": "boolean", + "description": "If true, renders authors' full names; otherwise, uses initials where applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'formattedReference' with the fully formatted reference string ready for use in documents or API responses." + }, + "aiAgent": { + "useCase": "Use this tool when your backend system needs to generate bibliographic references dynamically from raw data, such as for academic papers, reports, or documentation sites. It is useful for APIs serving formatted references or generating citation lists in multiple common styles.", + "limitations": "This tool does not verify the accuracy or completeness of bibliographic data provided. It supports only common citation styles (APA, MLA, Chicago) and a limited set of reference types. It cannot generate references from unstructured text or scan documents.", + "examples": [ + "Generate an APA reference string for a journal article from given metadata.", + "Format a list of references in MLA style for website inclusion.", + "Create a Chicago-style citation including URL for an online publication." + ] + }, + "tags": [ + "backend", + "rendering", + "reference", + "citation", + "bibliography", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"referenceData\":{\"authors\":[\"Jane Doe\",\"John Smith\"],\"title\":\"The Future of AI\",\"publication\":\"AI Journal\",\"year\":2023,\"url\":\"https://example.com/future-ai\"},\"citationStyle\":\"APA\",\"includeUrl\":true,\"useFullNames\":true}", + "description": "Render a full APA style reference including URL with authors' full names." + }, + { + "inputJson": "{\"referenceData\":{\"authors\":[\"Doe, J.\"],\"title\":\"Understanding APIs\",\"publication\":\"Tech Monthly\",\"year\":2021},\"citationStyle\":\"MLA\",\"includeUrl\":false,\"useFullNames\":false}", + "description": "Generate an MLA style reference without including a URL, using initials." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "render", + "object": "Reference", + "context": null + } + }, + { + "name": "web-development.generateHeading", + "description": "Generates an HTML heading element (h1-h6) based on input text, level, and optional styling or attributes. Accepts text content for the heading, the heading level (1 to 6), and optional CSS classes and inline styles. Outputs a complete HTML string representing the heading.", + "category": "web-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content to be placed inside the heading element.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level from 1 to 6, corresponding to HTML tags h1 through h6.", + "required": false, + "defaultValue": "1" + }, + { + "name": "classNames", + "type": "string", + "description": "Optional CSS class names to add to the heading element, separated by spaces.", + "required": false, + "defaultValue": "" + }, + { + "name": "inlineStyles", + "type": "string", + "description": "Optional CSS inline styles to add to the heading element, e.g. 'color: red; font-weight: bold;'.", + "required": false, + "defaultValue": "" + }, + { + "name": "id", + "type": "string", + "description": "Optional id attribute for the heading element for linking or styling.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full HTML markup string for the heading element." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate HTML heading elements with customizable content, heading level, and optional styling or classes. Ideal during automated webpage content creation or templating where semantic headings are required for accessibility and SEO.", + "limitations": "Cannot generate heading content beyond plain text (e.g., no embedded inline HTML). Does not handle localization or text transformations like capitalization or markdown parsing.", + "examples": [ + "Generate an h2 heading with the text 'Welcome to My Site'.", + "Create an h3 heading with the text 'Chapter 1', with CSS class 'chapter-title' and red text color.", + "Generate a level 4 heading with an id of 'section4' and inline style to italicize the text." + ] + }, + "tags": [ + "web", + "html", + "heading", + "generate", + "frontend", + "templating" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to My Site\",\"level\":2}", + "description": "Generate a level 2 heading with provided text." + }, + { + "inputJson": "{\"text\":\"Chapter 1\",\"level\":3,\"classNames\":\"chapter-title\",\"inlineStyles\":\"color: red;\"}", + "description": "Generate a red colored h3 heading with a specific CSS class." + }, + { + "inputJson": "{\"text\":\"Section 4\",\"level\":4,\"id\":\"section4\",\"inlineStyles\":\"font-style: italic;\"}", + "description": "Generate an italicized h4 heading with a unique id attribute." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "statistics-tools.generateParagraph", + "description": "Generates a coherent, descriptive paragraph summarizing statistical analysis results. Accepts input statistics such as mean, median, variance, sample size, and optional context keywords. Produces a natural language paragraph that interprets and explains the statistics in an accessible way for reports or presentations.", + "category": "statistics-tools", + "parameters": [ + { + "name": "statistics", + "type": "object", + "description": "An object containing key statistical measures with numeric values, such as mean, median, variance, standard deviation, sampleSize. Required keys depend on context but at least mean and sampleSize must be present.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextKeywords", + "type": "array", + "description": "An optional array of strings providing additional contextual keywords or phrases related to the dataset or analysis focus, to tailor the paragraph accordingly.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeInterpretation", + "type": "boolean", + "description": "Whether to include interpretation of the statistics (e.g., what the mean implies) in the paragraph or just state the raw values.", + "required": false, + "defaultValue": "true" + }, + { + "name": "audienceLevel", + "type": "string", + "description": "Intended audience understanding level: 'layman', 'student', or 'expert'. Determines vocabulary and explanation depth.", + "required": false, + "defaultValue": "layman" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph under the property 'paragraph', which explains the statistical results in a readable text format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw statistical values into human-readable descriptive text for summaries, reports, or presentations. Ideal when automating report generation or supporting non-expert understanding of numerical data.", + "limitations": "Does not perform statistical calculations itself; expects input statistics to be accurate and precomputed. Not intended for advanced inferential analysis explanations or complex statistical modeling interpretations.", + "examples": [ + "Generate a paragraph summarizing mean = 75, sampleSize = 100, with layman audience.", + "Create a report paragraph interpreting a variance of 12.3 and median of 70 for an expert audience.", + "Produce a descriptive paragraph with context keywords about 'sales data' and 'Q1 performance', including an interpretation." + ] + }, + "tags": [ + "statistics", + "text-generation", + "reporting", + "data-summary", + "explanation" + ], + "examples": [ + { + "inputJson": "{\"statistics\":{\"mean\":75,\"sampleSize\":100,\"variance\":12.3},\"contextKeywords\":[\"sales\",\"Q1\"],\"includeInterpretation\":true,\"audienceLevel\":\"layman\"}", + "description": "Generate a layman-level paragraph summarizing sales data statistics for Q1." + }, + { + "inputJson": "{\"statistics\":{\"mean\":82,\"median\":80,\"sampleSize\":50},\"contextKeywords\":[],\"includeInterpretation\":false,\"audienceLevel\":\"student\"}", + "description": "Generate a student-level paragraph that states mean and median without interpretation." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "security-tools.createBlogPost", + "description": "Generates a comprehensive blog post on security topics based on given input parameters including topic, target audience, tone, and length. It processes the input to create structured, informative, and engaging content optimized for security professionals or general readers, outputting the complete blog post text and metadata.", + "category": "security-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or theme of the blog post.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended readers of the blog post (e.g., beginners, professionals, executives).", + "required": false, + "defaultValue": "general readers" + }, + { + "name": "tone", + "type": "string", + "description": "Writing style or tone to use in the blog post (e.g., formal, conversational, technical).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the blog post in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include practical examples or case studies in the post.", + "required": false, + "defaultValue": "true" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords to emphasize within the blog post for SEO optimization.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post's full text and metadata including the title, summary, word count, and tags." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce well-structured and informative blog content on security-related topics tailored to a specified audience and style. Helps in automating content creation for websites, newsletters, or educational materials focused on cybersecurity.", + "limitations": "This tool cannot replace expert human review for factual accuracy or nuanced technical advice. It may generate generic content that needs refinement to match brand voice or updated information.", + "examples": [ + "Create a formal 1200-word blog post on 'Zero Trust Security' for IT professionals.", + "Generate a conversational style blog post about 'Phishing Attack Prevention' aimed at general readers with practical examples.", + "Write a brief 800-word blog emphasizing 'Cloud Security Best Practices' with SEO keywords provided." + ] + }, + "tags": [ + "security", + "blogPost", + "contentCreation", + "cybersecurity", + "writing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Zero Trust Architecture\",\"targetAudience\":\"IT professionals\",\"tone\":\"formal\",\"length\":1200,\"includeExamples\":true,\"keywords\":[\"Zero Trust\",\"cybersecurity\",\"network security\"]}", + "description": "Generate a formal and detailed blog post about Zero Trust Architecture targeting IT professionals." + }, + { + "inputJson": "{\"topic\":\"Phishing Attack Prevention\",\"targetAudience\":\"general readers\",\"tone\":\"conversational\",\"length\":800,\"includeExamples\":true,\"keywords\":[\"phishing\",\"email security\"]}", + "description": "Create an engaging, easy-to-understand blog post on phishing prevention for a general audience including examples." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "marketing-automation.createHeading", + "description": "Generates an effective marketing campaign heading based on inputs such as target audience, campaign theme, tone, and keywords. Processes these parameters to produce a concise, engaging headline optimized for digital marketing materials.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignTheme", + "type": "string", + "description": "The main theme or topic of the marketing campaign (e.g., new product launch, holiday sale).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the campaign (e.g., millennials, small business owners).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the heading, such as casual, professional, playful, or urgent.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "keywords", + "type": "array", + "description": "Array of keywords to include or emphasize in the heading to enhance relevance and SEO.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the heading in characters to ensure fit within marketing channels.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading text and metadata such as length and confidence score." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically create engaging, targeted marketing campaign headings from key details provided by users or campaign data, facilitating quick campaign setup and A/B testing of headlines.", + "limitations": "This tool cannot generate full marketing content beyond the heading or guarantee effectiveness without human review. It may have limited context understanding for highly specialized niches.", + "examples": [ + "Generate a catchy heading for a summer sale targeting college students with a playful tone.", + "Create a professional headline for a new SaaS product aimed at small businesses using important keywords.", + "Produce a brief urgent sale heading for an email campaign focused on last-minute deals." + ] + }, + "tags": [ + "marketing", + "automation", + "content-creation", + "headlines", + "campaigns", + "seo", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"campaignTheme\":\"Back to School Sale\",\"targetAudience\":\"college students\",\"tone\":\"playful\",\"keywords\":[\"discount\",\"gear\"],\"maxLength\":50}", + "description": "Create a playful heading promoting a back-to-school sale targeting college students that includes keywords discount and gear." + }, + { + "inputJson": "{\"campaignTheme\":\"New Software Launch\",\"targetAudience\":\"small business owners\",\"tone\":\"professional\",\"keywords\":[\"efficiency\",\"cloud\"],\"maxLength\":60}", + "description": "Generate a professional heading for launching a new software product to small business owners emphasizing efficiency and cloud." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "automation-frameworks.draftText", + "description": "This tool generates a draft text document based on provided instructions, tone, style, and optional key points. It accepts input parameters defining the content topic, desired tone (e.g., formal, casual), style, length, and key bullet points to include. The tool outputs a coherent, structured draft text suitable for editing and use in automation workflows.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or theme of the text to be drafted", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the text, such as formal, informal, friendly, or professional", + "required": false, + "defaultValue": "formal" + }, + { + "name": "style", + "type": "string", + "description": "Writing style preference, e.g., narrative, persuasive, descriptive, or concise", + "required": false, + "defaultValue": "concise" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the draft text in words", + "required": false, + "defaultValue": "300" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of bullet points or key information to be included in the draft text", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete draft text with structure and coherence" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate initial draft text content quickly based on specified topics and style preferences, for automating content creation workflows such as email drafts, reports, summaries, or marketing copy. It aids in accelerating the drafting phase before human editing.", + "limitations": "It cannot perfectly replace detailed creative writing or deep expert knowledge writing. The generated draft might require refinement for accuracy, style nuances, and context relevance.", + "examples": [ + "Draft a formal introduction text about renewable energy benefits.", + "Generate a concise, friendly email draft inviting clients to a webinar.", + "Create a persuasive product description text based on provided features." + ] + }, + "tags": [ + "automation", + "drafting", + "text-generation", + "content-creation", + "workflow", + "writing", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work\",\"tone\":\"informal\",\"style\":\"concise\",\"length\":200,\"keyPoints\":[\"flexible schedule\",\"increase productivity\",\"reduce commute time\"]}", + "description": "Draft a short, informal text about the benefits of remote work focusing on flexibility, productivity, and commute reduction." + }, + { + "inputJson": "{\"topic\":\"Quarterly sales report summary\",\"tone\":\"formal\",\"style\":\"descriptive\",\"length\":350}", + "description": "Generate a formal summary text for a quarterly sales report without specific bullet points." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeTable", + "description": "Analyzes a tabular data prompt to identify missing context, ambiguities, and optimization opportunities for AI prompt crafting. Accepts a table as input along with optional metadata, processes structure and content to highlight improvement areas, and outputs actionable recommendations to refine prompt clarity and effectiveness.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "Array of objects representing rows in the table to analyze. Each object maps column names to cell values.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnDescriptions", + "type": "object", + "description": "Optional descriptions or explanations for each column to provide context for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAiModel", + "type": "string", + "description": "Identifier or name of the AI model for which the prompt is being optimized, influencing suggestions based on model capabilities.", + "required": false, + "defaultValue": "" + }, + { + "name": "optimizeForClarity", + "type": "boolean", + "description": "Flag to prioritize suggestions that improve clarity and reduce ambiguity in the prompt.", + "required": false, + "defaultValue": "true" + }, + { + "name": "optimizeForCompleteness", + "type": "boolean", + "description": "Flag to prioritize suggestions that address missing information or context in the prompt.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing identified issues in the table prompt, categorized improvement suggestions, and a summary score indicating prompt quality based on clarity, completeness, and AI model alignment." + }, + "aiAgent": { + "useCase": "Use this tool when preparing or refining prompts that include tabular data for AI models. It helps identify unclear instructions, missing context, or ambiguous columns that could reduce output quality, enabling targeted prompt engineering improvements.", + "limitations": "This tool does not modify the table data or generate replacement prompts; it only provides analysis and recommendations. It also cannot guarantee performance improvements for all AI models due to varying model behaviors.", + "examples": [ + "Analyze a sales data table prompt to improve clarity before querying a forecasting AI.", + "Evaluate a tabular input prompt to detect missing context before integrating with an NLP model.", + "Review a complex multi-column table to identify ambiguities for prompt refinement." + ] + }, + "tags": [ + "prompt-engineering", + "table-analysis", + "clarity", + "optimization", + "AI-model", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"Product\":\"Widget A\",\"Sales\":100,\"Region\":\"North\"},{\"Product\":\"Widget B\",\"Sales\":150,\"Region\":\"South\"}],\"columnDescriptions\":{\"Product\":\"Name of the product\",\"Sales\":\"Number of units sold\",\"Region\":\"Sales region\"},\"targetAiModel\":\"gpt-4\",\"optimizeForClarity\":true,\"optimizeForCompleteness\":true}", + "description": "Analyze a simple sales data table with column descriptions focused on maximizing clarity and completeness for GPT-4 prompt optimization." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "prompt-engineering.buildConfig", + "description": "Creates a comprehensive prompt configuration object based on provided instructions, parameters, and optional context to optimize AI prompt generation. Accepts base prompt text, adjustable settings (like temperature and max tokens), and user-defined context variables, and produces a structured JSON config ready for prompt-based AI API calls.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "basePrompt", + "type": "string", + "description": "The main prompt text or template to be used for the AI model, possibly including placeholders for variables.", + "required": true, + "defaultValue": "" + }, + { + "name": "temperature", + "type": "number", + "description": "Controls the randomness of the output; a value between 0 and 1, where lower is more deterministic.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "maxTokens", + "type": "number", + "description": "Maximum number of tokens allowed in the generated completion output; helps limit the response length.", + "required": false, + "defaultValue": "150" + }, + { + "name": "contextVariables", + "type": "object", + "description": "Key-value pairs representing additional context or variables to replace placeholders in the base prompt, enhancing prompt customization.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "stopSequences", + "type": "array", + "description": "An array of strings where the model will stop generating further tokens once any is encountered in the output.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "userInstructions", + "type": "string", + "description": "Optional additional instructions to include within the prompt config to guide the AI's behavior beyond the base prompt.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the fully assembled prompt configuration including the formatted prompt, parameters for model generation, and any context merged." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically construct a detailed prompt configuration object combining a base prompt template with dynamic context variables and generation parameters for an AI language model. It helps automate prompt preparation for various use cases like content generation, summarization, or conversational AI.", + "limitations": "This tool does not execute the prompt against an AI model; it only constructs the configuration object. It cannot validate the semantic correctness or effectiveness of the prompt content itself.", + "examples": [ + "Build a prompt config to generate a creative story about a dragon using temperature 0.8 and maxTokens 200.", + "Create a summarization prompt config with stop sequences to halt generation after a paragraph.", + "Generate a prompt config with user instructions to answer questions politely and use supplied context variables." + ] + }, + "tags": [ + "prompt-engineering", + "configuration", + "AI-models", + "prompt-generation", + "automation", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"basePrompt\":\"Write a short story about a ${creature} in a ${setting}.\",\"temperature\":0.8,\"maxTokens\":200,\"contextVariables\":{\"creature\":\"dragon\",\"setting\":\"mystical forest\"}}", + "description": "Build a prompt config for a creative story about a dragon in a mystical forest with higher randomness and output length limit." + }, + { + "inputJson": "{\"basePrompt\":\"Summarize the following article:\",\"temperature\":0.3,\"maxTokens\":100,\"stopSequences\":[\"\\n\"],\"contextVariables\":{},\"userInstructions\":\"Be concise and accurate.\"}", + "description": "Create a configuration for a concise article summary with low randomness and stop sequence on newline." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "file-operations.createJSON", + "description": "Creates a JSON file with specified content at a given file path. Accepts an object representing the JSON data and writes it formatted with optional indentation to a file. Returns a success confirmation or error details.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Path including filename where the JSON file will be created or overwritten.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "object", + "description": "The JSON-compatible object that will be serialized and saved to the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces used for JSON pretty-print formatting. Set to 0 for compact output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists. If false and file exists, returns an error.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status and message. Includes error details on failure." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate or update a JSON file on disk with specific structured content. It is useful for configuration generation, data export, or creating input files for other systems requiring JSON format.", + "limitations": "Cannot handle serialization of non-JSON-compatible data types such as functions or circular references. Does not manage complex file system permissions or directory creation.", + "examples": [ + "Create a settings file 'config.json' with default options object.", + "Generate a JSON data export at path with 4-space indentation.", + "Attempt to create a JSON file only if it does not already exist, else error out." + ] + }, + "tags": [ + "file", + "json", + "create", + "write", + "serialization", + "configuration", + "export" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"./data/settings.json\",\"content\":{\"theme\":\"dark\",\"version\":1.3,\"features\": [\"login\",\"sync\"]},\"indentation\":2,\"overwrite\":true}", + "description": "Create or overwrite settings.json file with a JSON object containing theme, version, and features, pretty printed with 2 spaces." + }, + { + "inputJson": "{\"filePath\":\"output/data.json\",\"content\":{\"users\":[],\"count\":0},\"indentation\":0,\"overwrite\":false}", + "description": "Create a compact JSON file without indentation, but only if 'data.json' does not already exist." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "video-processing.createFunction", + "description": "This tool generates JavaScript video processing functions based on specified operations such as filters, transformations, or analysis steps. It accepts an array of processing steps with parameters, producing a ready-to-use function code snippet that applies these steps to video frames input in real-time or batch processing environments.", + "category": "video-processing", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name of the generated JavaScript function", + "required": true, + "defaultValue": "" + }, + { + "name": "processingSteps", + "type": "array", + "description": "Array of processing step objects each specifying an operation type and its parameters", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output data format, e.g., 'canvas', 'ImageData', or 'videoFrame'", + "required": false, + "defaultValue": "canvas" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments within the generated code", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated function code as a string and a summary of included processing steps." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate customizable JavaScript functions for manipulating or analyzing video frames according to user-defined processing sequences. Ideal when automated generation of video editing or processing code snippets is required for integration in web-based or Node.js video apps.", + "limitations": "This tool does not execute or validate the generated function logic beyond syntax generation. It cannot handle complex video container formats or codec-level processing. It generates code but does not perform actual video processing.", + "examples": [ + "Generate a video filter function applying grayscale and blur effects.", + "Create a function to detect motion between frames and highlight changed areas.", + "Produce a video processing function that crops and resizes video frames for thumbnails." + ] + }, + "tags": [ + "video", + "processing", + "function-generation", + "javascript", + "code-generation", + "filters", + "transformations" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"applyEffects\",\"processingSteps\":[{\"operation\":\"grayscale\"},{\"operation\":\"blur\",\"radius\":5}],\"outputFormat\":\"canvas\",\"includeComments\":true}", + "description": "Generate a function named applyEffects that first converts video frames to grayscale, then applies a blur with radius 5, outputting to a canvas element." + }, + { + "inputJson": "{\"functionName\":\"motionHighlight\",\"processingSteps\":[{\"operation\":\"motionDetection\",\"threshold\":20},{\"operation\":\"highlightChanges\",\"color\":\"red\"}],\"includeComments\":false}", + "description": "Create a function motionHighlight that detects motion using a threshold of 20 and highlights changed areas in red without comments." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "messaging.analyzeSentence", + "description": "This tool analyzes a given text sentence used in messaging contexts. It accepts a sentence string as input, processes it to extract key linguistic features such as sentiment, intent, and named entities, and returns a structured analysis report that can help understand the sentence's meaning and emotional tone.", + "category": "messaging", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The text sentence to analyze. Must be a complete or partial message in a conversational context.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the sentence for accurate analysis (e.g., 'en' for English). Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis results (positive, neutral, negative).", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeIntent", + "type": "boolean", + "description": "Whether to detect and include the intent behind the sentence (e.g., question, command).", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to extract named entities such as people, locations, dates, and organizations.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis results including sentiment score and label, detected intents with confidence scores, and a list of named entities identified in the sentence." + }, + "aiAgent": { + "useCase": "This tool is useful for AI agents that need to understand the meaning and tone of user messages in real-time chat or messaging environments. It helps in determining user intentions, emotional states, and important content elements to adapt responses, escalate issues, or trigger actions accordingly.", + "limitations": "This tool cannot fully comprehend complex sarcasm, idioms, or context-dependent nuances beyond the given sentence. It may not perform accurately for unsupported languages or very short text fragments.", + "examples": [ + "Analyze the sentiment and intent of the user message \"Can you help me reset my password?\"", + "Extract named entities and sentiment from a customer complaint message.", + "Determine if the sentence \"Let's meet tomorrow at the office.\" is a command or suggestion, and identify any entities." + ] + }, + "tags": [ + "analysis", + "messaging", + "sentiment", + "intent", + "namedEntities", + "naturalLanguageProcessing" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"I love how fast the service was!\"}", + "description": "Analyzing a positive feedback sentence for sentiment and intent." + }, + { + "inputJson": "{\"sentence\":\"Please schedule a meeting with John tomorrow.\",\"includeEntities\":true}", + "description": "Extracting intent and named entities to understand a scheduling request." + }, + { + "inputJson": "{\"sentence\":\"What time does the store close?\",\"includeSentiment\":false}", + "description": "Detecting that the sentence is a question without analyzing sentiment." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "messaging.createSummary", + "description": "Generates a concise summary of chat or messaging conversation history provided as input. Accepts raw message data including messages, senders, and timestamps to produce a clear, structured summary highlighting key points and topics discussed.", + "category": "messaging", + "parameters": [ + { + "name": "conversationId", + "type": "string", + "description": "Unique identifier for the conversation to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "Array of message objects containing text, sender, and timestamp to process for summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the summary in characters to limit output size.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Flag to extract and emphasize action items from the conversation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') for summary output language.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated summary text and optionally extracted action items if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide a concise recap of a conversation, such as for meeting follow-ups, customer support chat logs, or project discussions, enabling faster understanding without reading full transcripts.", + "limitations": "Cannot guarantee accuracy for heavily jargon-filled or ambiguous conversations; summaries depend on message clarity and length and might omit some details or nuance.", + "examples": [ + "Summarize customer support chat from last session highlighting issues and resolutions.", + "Create a brief summary of a multi-day project chat including key decisions.", + "Generate an action-item focused recap of a team discussion for task assignment." + ] + }, + "tags": [ + "messaging", + "summary", + "chat", + "conversation", + "recap", + "actionItems", + "real-time" + ], + "examples": [ + { + "inputJson": "{\"conversationId\":\"conv12345\",\"messages\":[{\"sender\":\"Alice\",\"text\":\"We need to finalize the report by Friday.\",\"timestamp\":\"2024-06-01T10:00:00Z\"},{\"sender\":\"Bob\",\"text\":\"I'll draft the introduction today.\",\"timestamp\":\"2024-06-01T10:05:00Z\"},{\"sender\":\"Alice\",\"text\":\"Great, I'll handle the conclusion.\",\"timestamp\":\"2024-06-01T10:10:00Z\"}],\"maxSummaryLength\":300,\"includeActionItems\":true,\"language\":\"en\"}", + "description": "Summarize a short project conversation and highlight action items." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "email-communication.downloadDataset", + "description": "Downloads a dataset of email campaign metrics from a specified email service provider account for analysis. Accepts account credentials and date range filters, connects to the provider's API, retrieves email sending statistics such as open rates, click rates, bounces, and deliveries, and returns the structured dataset in CSV or JSON format.", + "category": "email-communication", + "parameters": [ + { + "name": "serviceProvider", + "type": "string", + "description": "The email service provider to download data from, e.g., Mailchimp, SendGrid, or Constant Contact.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiKey", + "type": "string", + "description": "The API key or token to authenticate with the email service provider.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date (inclusive) for the dataset in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date (inclusive) for the dataset in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Optional specific campaign identifier to download data for a single campaign.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The format of the downloaded dataset, either 'csv' or 'json'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the download, dataset content as a string in requested format, and metadata (row count, fields)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically extract detailed email campaign data from a supported provider for further analysis or reporting, such as fetching performance metrics between specified dates or for specific campaigns. It automates data retrieval without manual export downloads.", + "limitations": "Supports data retrieval only from specified email service providers with available APIs. Cannot access historical data older than the provider's retention policy or data outside specified date ranges. Does not perform data cleaning or analysis beyond retrieval.", + "examples": [ + "Download the click and open rates for Mailchimp campaigns sent between 2023-01-01 and 2023-01-31.", + "Get JSON formatted email metrics for a single SendGrid campaign with ID 'abc123' for February 2024.", + "Fetch all email delivery statistics from Constant Contact for the last 7 days in CSV format." + ] + }, + "tags": [ + "email", + "data", + "download", + "analytics", + "campaign", + "automation", + "API" + ], + "examples": [ + { + "inputJson": "{\"serviceProvider\":\"Mailchimp\",\"apiKey\":\"abcdef123456\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-01-31\",\"format\":\"csv\"}", + "description": "Download Mailchimp email campaign data for January 2023 in CSV format." + }, + { + "inputJson": "{\"serviceProvider\":\"SendGrid\",\"apiKey\":\"sg.xxxxxx\",\"startDate\":\"2024-02-01\",\"endDate\":\"2024-02-28\",\"campaignId\":\"abc123\",\"format\":\"json\"}", + "description": "Download JSON data for a specific SendGrid campaign in February 2024." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "infrastructure-management.generateDashboard", + "description": "Generates a comprehensive infrastructure monitoring dashboard by aggregating metrics and logs from specified cloud or physical resources. Accepts input parameters to filter resources, select metric types, and define the dashboard layout. Produces a JSON schema representing the dashboard configuration ready for rendering in visualization tools.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "resourceIds", + "type": "array", + "description": "List of resource identifiers (e.g., VM IDs, container IDs, server names) to include in the dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricTypes", + "type": "array", + "description": "Specific metrics to display (e.g., CPU usage, memory consumption, network throughput).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "string", + "description": "Time range for metrics aggregation, specified in ISO 8601 duration or range format (e.g., 'PT1H' for last 1 hour).", + "required": false, + "defaultValue": "PT1H" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Dashboard auto-refresh interval in seconds.", + "required": false, + "defaultValue": "60" + }, + { + "name": "layout", + "type": "string", + "description": "Preferred dashboard layout style (e.g., 'grid', 'list').", + "required": false, + "defaultValue": "grid" + }, + { + "name": "includeLogs", + "type": "boolean", + "description": "Whether to include recent log snippets alongside metrics in the dashboard.", + "required": false, + "defaultValue": "false" + }, + { + "name": "alertThresholds", + "type": "object", + "description": "Optional key-value pairs defining alert thresholds per metric for highlighting (e.g., {\"CPUUsage\": 80}).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the dashboard configuration including widgets, metrics, logs, layout, and refresh settings for visualization rendering." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a customized infrastructure monitoring dashboard to visualize real-time and historical metrics and logs from specified cloud or physical infrastructure components. Ideal for integrating into automated monitoring setups or providing operators with quick insights across multiple resources.", + "limitations": "This tool does not connect to live data sources or fetch metrics/logs itself; it only generates the dashboard configuration based on inputs. Actual data integration and rendering must be handled by external visualization platforms.", + "examples": [ + "Generate a dashboard for a set of AWS EC2 instances and Kubernetes pods showing CPU, memory, and network metrics over the last hour.", + "Create a grid layout dashboard for physical servers with alerts set for CPU usage above 75%.", + "Produce a dashboard including recent logs alongside metrics refreshed every 30 seconds for critical infrastructure components." + ] + }, + "tags": [ + "infrastructure", + "dashboard", + "monitoring", + "metrics", + "logs", + "visualization", + "cloud", + "physical" + ], + "examples": [ + { + "inputJson": "{\"resourceIds\":[\"server-123\",\"container-abc\"],\"metricTypes\":[\"CPUUsage\",\"MemoryUsage\"],\"timeRange\":\"PT2H\",\"refreshInterval\":60,\"layout\":\"grid\",\"includeLogs\":true,\"alertThresholds\":{\"CPUUsage\":80}}", + "description": "Dashboard for specific server and container showing CPU and memory usage over the last 2 hours with logs and CPU alert above 80%." + }, + { + "inputJson": "{\"resourceIds\":[\"vm-001\",\"vm-002\"],\"metricTypes\":[\"NetworkThroughput\"],\"refreshInterval\":120,\"layout\":\"list\",\"includeLogs\":false}", + "description": "List layout dashboard for virtual machines showing network throughput, refreshed every 2 minutes without logs." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "security-tools.analyzeThreat", + "description": "Analyzes a given security threat description or artifact to identify its type, severity, potential impact, and suggested mitigations. Accepts threat details or indicators of compromise, performs analysis using known threat intelligence and heuristics, and outputs a structured threat report with risk assessment and recommended responses.", + "category": "security-tools", + "parameters": [ + { + "name": "threatDescription", + "type": "string", + "description": "A detailed textual description of the security threat or incident to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "indicatorsOfCompromise", + "type": "array", + "description": "An optional array of indicators such as IPs, hashes, domains related to the threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level to report ('low', 'medium', 'high', 'critical').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include suggested mitigation strategies in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive threat analysis report including threat classification, severity rating, potential impact assessment, confidence score, and optionally mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to assess and understand the nature and risk level of a described or observed security threat. It helps prioritize and guide incident response by providing structured insights and mitigation advice based on threat intelligence.", + "limitations": "Cannot detect unknown or zero-day threats without prior intelligence. Does not perform real-time threat hunting or active scanning. Accuracy depends on quality of input data and current threat intelligence.", + "examples": [ + "Analyze this malware description and provide risk level and mitigation.", + "Evaluate provided IP and file hash indicators for potential threats.", + "Determine severity of a reported phishing attack with suggested responses." + ] + }, + "tags": [ + "analysis", + "security", + "threat-intelligence", + "risk-assessment", + "incident-response", + "mitigation" + ], + "examples": [ + { + "inputJson": "{\"threatDescription\":\"Ransomware encrypts critical system files and demands a Bitcoin ransom.\",\"severityThreshold\":\"high\",\"includeMitigation\":true}", + "description": "Analyze a ransomware threat description with high severity threshold and request mitigation suggestions." + }, + { + "inputJson": "{\"indicatorsOfCompromise\":[\"192.168.1.100\",\"abcdef1234567890abcdef1234567890\"],\"includeMitigation\":false}", + "description": "Analyze indicators of compromise including IP and file hash without mitigation advice." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "copywriting.buildFunction", + "description": "Generates a well-structured programming function text snippet based on descriptive input specifying its purpose, parameters, language, and style. Accepts input details about the desired function and produces clean, commented code suitable for inclusion in software projects.", + "category": "copywriting", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name of the function to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief description of what the function does", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "List of parameter names and their brief descriptions for the function", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the function code (e.g., JavaScript, Python, Java)", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "returnType", + "type": "string", + "description": "Expected return type or value of the function", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Coding style preference (e.g., concise, verbose, inline comments)", + "required": false, + "defaultValue": "concise" + } + ], + "returns": { + "type": "object", + "description": "An object containing the function code as a string, optionally with metadata about parameters and usage" + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate executable, cleanly formatted function code snippets based on a high-level description, for inclusion in software documentation, tutorials, or codebases. It helps automate writing boilerplate or utility functions in various programming languages.", + "limitations": "It cannot test or validate runtime behavior of generated code. Complex algorithm implementation beyond simple function templates may be limited.", + "examples": [ + "Generate a JavaScript function named 'add' that sums two numbers.", + "Create a Python function 'greet' that takes a name and returns a greeting string.", + "Build a Java method 'calculateArea' that calculates the area of a rectangle with width and height parameters." + ] + }, + "tags": [ + "copywriting", + "code generation", + "function", + "programming", + "automation", + "code snippet" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"add\",\"description\":\"Sums two numbers and returns the result.\",\"parameters\":[{\"name\":\"a\",\"description\":\"First number.\"},{\"name\":\"b\",\"description\":\"Second number.\"}],\"language\":\"JavaScript\",\"returnType\":\"number\",\"style\":\"concise\"}", + "description": "Generate a JavaScript add function with two numeric parameters." + }, + { + "inputJson": "{\"functionName\":\"greet\",\"description\":\"Returns a greeting message for a given user name.\",\"parameters\":[{\"name\":\"name\",\"description\":\"Name of the user.\"}],\"language\":\"Python\",\"returnType\":\"string\",\"style\":\"verbose\"}", + "description": "Create a verbose Python greet function." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "documentation-tools.buildQuery", + "description": "Generates a well-structured search query string for documentation search engines or databases, based on provided keywords, filters, and logical operators. Accepts arrays of keywords and filter objects, combines them logically, and outputs a formatted query string suitable for advanced documentation retrieval.", + "category": "documentation-tools", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of keywords to include in the search query for matching documentation content.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "filters", + "type": "array", + "description": "Optional filters as objects with field, operator, and value to narrow down search results (e.g., {field:'author', operator:'eq', value:'John'}).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "logicalOperator", + "type": "string", + "description": "Logical operator to combine keywords and filters, can be 'AND' or 'OR'.", + "required": false, + "defaultValue": "AND" + }, + { + "name": "includeSynonyms", + "type": "boolean", + "description": "Whether to automatically include common synonyms of keywords to broaden the search.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxQueryLength", + "type": "number", + "description": "Maximum allowed length for the generated query string; the query will be truncated if needed.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string ready to be used for querying a documentation system or search engine." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create complex search queries to retrieve relevant sections of documentation based on multiple criteria like keywords and metadata filters. It helps agents generate syntactically correct and optimized queries to improve search accuracy.", + "limitations": "Does not execute the query or access documentation data itself; it only constructs query strings. It cannot interpret semantics beyond keyword matching or filter logic provided by the user.", + "examples": [ + "Create a query for documentation containing keywords 'API' and 'authentication' with filter on version='v2.0'", + "Build a search query including synonyms for 'error' and filters for author='Jane Doe'", + "Generate a query combining keywords with OR logic and limiting query length to 200 characters" + ] + }, + "tags": [ + "documentation", + "search", + "query-building", + "filters", + "keywords", + "documentation-tools" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"API\",\"authentication\"],\"filters\":[{\"field\":\"version\",\"operator\":\"eq\",\"value\":\"v2.0\"}],\"logicalOperator\":\"AND\",\"includeSynonyms\":false}", + "description": "Build query with keywords 'API' and 'authentication' and filter for version equal to 'v2.0'." + }, + { + "inputJson": "{\"keywords\":[\"error\"],\"filters\":[{\"field\":\"author\",\"operator\":\"eq\",\"value\":\"Jane Doe\"}],\"logicalOperator\":\"AND\",\"includeSynonyms\":true}", + "description": "Build query with keyword 'error', include synonyms, filter author equals 'Jane Doe'." + }, + { + "inputJson": "{\"keywords\":[\"logging\",\"debugging\"],\"filters\":[],\"logicalOperator\":\"OR\",\"includeSynonyms\":false,\"maxQueryLength\":200}", + "description": "Build query with keywords 'logging' or 'debugging', no filters, and max length 200." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "database-management.downloadCSV", + "description": "This tool connects to a specified relational database, executes a provided SQL query, and downloads the resulting dataset as a CSV file. It accepts inputs such as connection details, the query, and optional CSV formatting options, then outputs a CSV-formatted string with the query result data.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string including credentials and host info needed to connect to the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "sqlQuery", + "type": "string", + "description": "The SQL query to execute against the connected database. Must be a SELECT statement.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "The delimiter character used to separate CSV fields. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers as the first line of the CSV output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the query to execute before timing out.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV data as a string and metadata about the query result, including row count and success status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract data from a relational database by executing a SQL SELECT query and obtain the output as a CSV-formatted string for further processing, reporting, or download. Ideal for automating data export workflows where CSV is the target format.", + "limitations": "This tool cannot modify database schema or perform non-SELECT queries. It depends on the database being accessible with correct credentials. It does not parse or validate query results beyond CSV conversion.", + "examples": [ + "Download sales data for Q1 from the sales database as CSV.", + "Export a list of active users filtered by join date to CSV format.", + "Retrieve inventory data for analysis saved as CSV." + ] + }, + "tags": [ + "database", + "CSV", + "export", + "SQL", + "data extraction", + "query", + "relational database" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=127.0.0.1;Database=SalesDB;User Id=admin;Password=pass123;\",\"sqlQuery\":\"SELECT * FROM quarterly_sales WHERE quarter='Q1'\",\"delimiter\":\",\",\"includeHeaders\":true,\"timeoutSeconds\":20}", + "description": "Downloading Q1 quarterly sales data from SalesDB as CSV with headers." + }, + { + "inputJson": "{\"connectionString\":\"Server=db.example.com;Database=Users;User Id=reader;Password=readpass;\",\"sqlQuery\":\"SELECT id, username, email FROM users WHERE status='active'\",\"delimiter\":\";\",\"includeHeaders\":false,\"timeoutSeconds\":15}", + "description": "Export active users list from remote Users database as a semicolon-delimited CSV without headers." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "database-management.composeSummary", + "description": "Generates a concise textual summary of database query results or entire tables by analyzing provided data records. Accepts JSON array inputs representing rows, optionally filtered or aggregated, and produces a human-readable summary highlighting key statistics, data distributions, and notable patterns.", + "category": "database-management", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing database rows to summarize (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary in characters.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeStatistics", + "type": "boolean", + "description": "Whether to include basic statistics such as counts, averages, and unique values.", + "required": false, + "defaultValue": "true" + }, + { + "name": "highlightFields", + "type": "array", + "description": "List of field names to emphasize or focus on in the summary.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output summary text (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a concise textual summary and optionally the fields involved." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or processed database query results and need a clear, concise textual overview describing key insights, trends, or statistics to aid decision-making or reporting. It helps convert complex data arrays into readable summaries.", + "limitations": "This tool does not perform new database queries, advanced statistical analysis, or generate visualization charts. It works only on provided data snapshots and focuses on textual summarization.", + "examples": [ + "Generate a summary of the last month's sales data highlighting total revenue and average order size.", + "Provide a brief overview of customer demographics including counts and common locations.", + "Summarize filtered search results focusing on key attributes and notable data points." + ] + }, + "tags": [ + "database", + "summary", + "data-analysis", + "reporting", + "text-generation", + "query-results" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"id\":1,\"sales\":200,\"region\":\"North\"},{\"id\":2,\"sales\":150,\"region\":\"South\"},{\"id\":3,\"sales\":300,\"region\":\"North\"}],\"maxSummaryLength\":300,\"includeStatistics\":true,\"highlightFields\":[\"sales\",\"region\"],\"language\":\"en\"}", + "description": "Summarize sales data with focus on sales and region including statistics." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "database-management.createThreat", + "description": "This tool accepts detailed parameters describing a security threat and creates a structured threat entry in the database. It processes the threat name, type, severity, description, impacted assets, and mitigation steps, and outputs a confirmation with the unique threat ID and stored details for audit and tracking.", + "category": "database-management", + "parameters": [ + { + "name": "threatName", + "type": "string", + "description": "Name or title of the security threat to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatType", + "type": "string", + "description": "Category or type of threat, e.g., malware, phishing, insider threat.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity or risk level of the threat, e.g., low, medium, high, critical.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the threat, including characteristics and behavior.", + "required": false, + "defaultValue": "" + }, + { + "name": "impactedAssets", + "type": "array", + "description": "List of assets such as systems, applications, or data impacted by the threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mitigationSteps", + "type": "array", + "description": "Recommended mitigation or remediation steps to address the threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Identifier or name of person/system reporting the threat.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object confirming threat creation containing a unique threatId, the stored threat details, and timestamps for creation and last update." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add a new security threat record into a threat intelligence or security management database, ensuring consistent structured data capture for analysis or incident response. This is particularly useful when processing inputs from threat detection systems or user reports to formalize them as records.", + "limitations": "This tool only creates and stores threat records; it does not validate the accuracy of severity levels or automatically analyze threats. It also does not update existing threats or manage relationships between threats beyond asset listing.", + "examples": [ + "Create a new critical phishing threat affecting email servers with mitigation advice.", + "Add a new malware threat with medium severity impacting multiple application servers.", + "Record an insider threat incident with detailed description and impacted databases." + ] + }, + "tags": [ + "database", + "security", + "threat", + "create", + "incident-management", + "cybersecurity", + "risk-management" + ], + "examples": [ + { + "inputJson": "{\"threatName\":\"Phishing Attack via Email\",\"threatType\":\"Phishing\",\"severityLevel\":\"High\",\"description\":\"A new phishing campaign targeting corporate email users with malicious links.\",\"impactedAssets\":[\"Email Server\",\"User Workstations\"],\"mitigationSteps\":[\"Block sender domains\",\"Increase email filtering rules\",\"User awareness training\"],\"reportedBy\":\"Security Team\"}", + "description": "Creating a high severity phishing threat targeting email systems." + }, + { + "inputJson": "{\"threatName\":\"Ransomware Malware Detected\",\"threatType\":\"Malware\",\"severityLevel\":\"Critical\",\"description\":\"A newly detected ransomware variant encrypting critical files on application servers.\",\"impactedAssets\":[\"Application Servers\"],\"mitigationSteps\":[\"Isolate infected machines\",\"Restore from backups\",\"Update antivirus signatures\"],\"reportedBy\":\"Automated Threat Detection\"}", + "description": "Adding a critical malware threat with detailed mitigation steps." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "backend-development.createQuote", + "description": "Creates a customizable quote object containing the quote text, author, and optional metadata such as tags and source URL. Accepts inputs to specify quote content, author name, relevant tags for categorization, and a source link if applicable. Outputs a structured JSON object representing the quote suitable for storage or display.", + "category": "backend-development", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The main text content of the quote to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "The name of the author of the quote.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "An array of strings representing categories or keywords associated with the quote.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "A URL string pointing to the original source or context where the quote was found or published.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured object representing the created quote with fields: id (unique quote identifier), text (quote text), author (author name), tags (array of tags), sourceUrl (URL string), and createdAt (ISO timestamp)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate or store a structured quote entry in server-side applications, APIs, or databases where quotes are managed, displayed, or categorized. Useful for content creation services, quotation APIs, or knowledge bases with quote collections.", + "limitations": "This tool does not verify quote authenticity or perform text analysis such as sentiment or language detection. It generates the structured representation but does not index or distribute quotes beyond basic metadata.", + "examples": [ + "Create a motivational quote by Nelson Mandela with tags 'inspiration' and 'leadership'.", + "Add a famous quote from Albert Einstein with a source URL to the quote's publication.", + "Generate a simple anonymous quote without tags or source for a quotes database." + ] + }, + "tags": [ + "backend", + "quote", + "content-management", + "api", + "data-creation", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"authorName\":\"Franklin D. Roosevelt\",\"tags\":[\"inspirational\",\"future\"],\"sourceUrl\":\"\"}", + "description": "Create an inspirational quote by Franklin D. Roosevelt without a source URL." + }, + { + "inputJson": "{\"quoteText\":\"Imagination is more important than knowledge.\",\"authorName\":\"Albert Einstein\",\"tags\":[\"knowledge\",\"imagination\"],\"sourceUrl\":\"https://www.example.com/einstein-quotes\"}", + "description": "Create a quote by Albert Einstein including tags and a source URL." + }, + { + "inputJson": "{\"quoteText\":\"To be, or not to be, that is the question.\",\"authorName\":\"William Shakespeare\",\"tags\":[],\"sourceUrl\":\"\"}", + "description": "Create a classic Shakespeare quote with no tags or source URL specified." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "backend-development.createVulnerability", + "description": "This tool accepts detailed parameters describing a potential security flaw in a backend system and creates a structured vulnerability record. It processes inputs such as vulnerability title, description, severity, affected components, and remediation steps, then outputs a consistent vulnerability object useful for tracking and security management.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "A concise, clear name for the vulnerability.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the vulnerability including how it occurs and its impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the vulnerability (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of backend system components, services, or APIs impacted by the vulnerability.", + "required": true, + "defaultValue": "" + }, + { + "name": "discoveredBy", + "type": "string", + "description": "Name or identifier of the person or system who discovered the vulnerability.", + "required": false, + "defaultValue": "" + }, + { + "name": "discoveryDate", + "type": "string", + "description": "Date when the vulnerability was found, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "remediationSteps", + "type": "string", + "description": "Recommended steps or procedures to fix or mitigate the vulnerability.", + "required": false, + "defaultValue": "" + }, + { + "name": "isConfirmed", + "type": "boolean", + "description": "Indicates whether the vulnerability has been verified and confirmed.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created vulnerability record containing all submitted details along with a unique vulnerability ID and status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to formally create and document a new backend vulnerability with standardized details for tracking, reporting, or integration into security management workflows. Ideal when consolidating security findings into a structured database or performing automated vulnerability intake.", + "limitations": "This tool does not perform vulnerability detection or scanning; it only creates structured records from provided data. It cannot validate the accuracy or existence of the vulnerability described.", + "examples": [ + "Create a vulnerability record for SQL injection found in a user authentication API with high severity.", + "Add a newly discovered Cross-Site Scripting (XSS) vulnerability affecting the comment posting service and suggest remediation.", + "Document a confirmed data exposure vulnerability impacting backend database credentials with critical severity." + ] + }, + "tags": [ + "backend", + "security", + "vulnerability", + "management", + "tracking", + "remediation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"SQL Injection in User API\",\"description\":\"User authentication API fails to sanitize inputs allowing SQL injection that can expose user data.\",\"severity\":\"High\",\"affectedComponents\":[\"User Authentication API\",\"Database Layer\"],\"discoveredBy\":\"Security Scanner 3.0\",\"discoveryDate\":\"2024-05-15\",\"remediationSteps\":\"Implement parameterized queries and input validation.\",\"isConfirmed\":true}", + "description": "Create a high severity SQL injection vulnerability affecting user authentication API." + }, + { + "inputJson": "{\"title\":\"Reflected XSS Vulnerability\",\"description\":\"Comment posting service reflects input without proper encoding leading to cross-site scripting attacks.\",\"severity\":\"Medium\",\"affectedComponents\":[\"Comment Posting Service\"],\"discoveredBy\":\"QA Analyst\",\"discoveryDate\":\"2024-06-01\",\"remediationSteps\":\"Encode output and sanitize input fields.\",\"isConfirmed\":false}", + "description": "Document a medium severity XSS vulnerability discovered by QA." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "text-analysis.composeReport", + "description": "Generates a structured, professional report based on provided textual data or notes. Accepts input as raw text or bullet points, processes key information extraction, organizes content into sections such as introduction, body, and conclusion, and outputs a formatted report in plain text or markdown suitable for business, academic, or technical contexts.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw textual data or notes from which to generate the report, including paragraphs or bullet points.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title of the generated report to appear as heading.", + "required": false, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "Array of section names to structure the report (e.g., Introduction, Analysis, Conclusion). If empty, a default structure is used.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report, choices are 'plain' or 'markdown'.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated report in number of words. If 0, no limit is applied.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section at the start of the report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report text and metadata such as title and sections." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to convert unstructured notes or raw textual data into a readable, organized report tailored for business, academic, or technical needs. Ideal for summarizing findings, creating briefing documents, or formalizing meeting notes. It produces well-structured documents that improve information clarity and presentation.", + "limitations": "The tool does not perform domain-specific expert analysis and may not replace human editing for accuracy or contextual insight. It also does not generate graphical content or handle multilingual input beyond English well.", + "examples": [ + "Generate a technical report from raw sensor data notes.", + "Create a business briefing report from meeting bullet points.", + "Compose an academic summary report from research observations." + ] + }, + "tags": [ + "text-analysis", + "report-generation", + "document-composition", + "natural-language-processing", + "business", + "academic", + "technical" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"- Project overview: development of new AI model.\\n- Key milestones achieved.\\n- Challenges encountered and solutions.\",\"reportTitle\":\"AI Development Project Report\",\"sections\":[\"Introduction\",\"Progress\",\"Challenges\",\"Conclusion\"],\"outputFormat\":\"markdown\",\"maxLength\":500,\"includeSummary\":true}", + "description": "Generate a structured markdown report from bullet point project notes including an executive summary." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "notifications.analyzeMessage", + "description": "Analyzes the content and metadata of an input message string to extract sentiment, detect potential issues (like urgency or spam), and categorize the message type. Returns a structured summary including sentiment score, flagged keywords, urgency level, and suggested actions to assist in handling communications effectively.", + "category": "notifications", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The textual content of the message to analyze, including subject and body if applicable.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageType", + "type": "string", + "description": "Optional message type indicator such as 'email', 'sms', or 'chat' to guide analysis context.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') of the message to improve analysis accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to indicate whether metadata (e.g., timestamps, sender info) is included and should be analyzed.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing sentiment score, detected keywords, urgency rating, potential spam indicator, message category, and suggested handling actions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the tone, urgency, and category of a communication message to prioritize responses, flag issues, or automate workflows based on message content. Especially useful for triaging support tickets, alerts, or filtering spam messages.", + "limitations": "Cannot fully guarantee context understanding in highly technical or domain-specific jargon; may misclassify messages without sufficient textual content or with ambiguous phrasing.", + "examples": [ + "Analyze sentiment and urgency of an incoming customer support email.", + "Detect if an SMS contains urgent information requiring immediate escalation.", + "Categorize chat messages to prioritize conversational workflows." + ] + }, + "tags": [ + "analysis", + "notifications", + "sentiment", + "message processing", + "urgent detection" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Hi team, please review the attached report by EOD. It's urgent.\",\"messageType\":\"email\",\"language\":\"en\"}", + "description": "Analyze an urgent work email message for sentiment and urgency." + }, + { + "inputJson": "{\"messageText\":\"Win a free prize now!!! Click here.\",\"messageType\":\"sms\",\"language\":\"en\"}", + "description": "Analyze an SMS message for spam detection and categorization." + }, + { + "inputJson": "{\"messageText\":\"Are we still on for the meeting tomorrow?\",\"messageType\":\"chat\",\"language\":\"en\",\"includeMetadata\":true}", + "description": "Analyze a chat message including metadata to assess tone and intent." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "infrastructure-management.buildDatabase", + "description": "Builds a new database instance on a specified cloud or on-premises infrastructure. Accepts inputs such as database type (SQL/NoSQL), version, storage size and backup preferences. Provisions the database with the desired configuration, initializing it and returning connection details and status.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database to build, e.g., 'PostgreSQL', 'MongoDB', 'MySQL'.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Specific version of the database software to deploy. If empty, uses latest stable.", + "required": false, + "defaultValue": "" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "Allocated storage in gigabytes for the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "Type or size of the instance to host the database, e.g., 'db.t3.medium'.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "backupEnabled", + "type": "boolean", + "description": "Whether automated backups are enabled for the database instance.", + "required": false, + "defaultValue": "true" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region or data center location to deploy the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "highAvailability", + "type": "boolean", + "description": "If true, provisions the database with high availability configuration (e.g., multi-AZ).", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to tag the database instances for identification and billing.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns the database instance details including endpoint, port, status, and metadata indicating successful creation or errors." + }, + "aiAgent": { + "useCase": "Use this tool when an AI system needs to provision a new database instance as part of cloud infrastructure setup or migration processes. Ideal for automated environment creation, testing, or scaling databases based on user or system requirements.", + "limitations": "Does not manage database schema, users, or in-database data; does not handle detailed network/security group configuration beyond basic provisioning; assumes credentials and permissions for infrastructure provisioning are set up externally.", + "examples": [ + "Create a PostgreSQL 13 database with 50GB storage in us-east-1 with backups enabled.", + "Provision a MongoDB instance with default version, 100GB storage, in Europe West region, no high availability.", + "Build a MySQL database instance tagged with project 'analytics' and environment 'production'." + ] + }, + "tags": [ + "database", + "infrastructure", + "provisioning", + "cloud", + "automation", + "build", + "management" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"version\":\"13\",\"storageSizeGB\":50,\"instanceType\":\"db.t3.medium\",\"backupEnabled\":true,\"region\":\"us-east-1\",\"highAvailability\":false,\"tags\":{\"project\":\"dev\",\"env\":\"testing\"}}", + "description": "Provision a PostgreSQL version 13 database instance in US East region with 50GB storage, backups enabled, and basic instance type." + }, + { + "inputJson": "{\"databaseType\":\"MongoDB\",\"storageSizeGB\":100,\"region\":\"eu-west-1\",\"backupEnabled\":false,\"highAvailability\":true}", + "description": "Create a high availability MongoDB database with 100GB storage in Europe West, without backups." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "customer-support.analyzeEvent", + "description": "Analyzes customer support event data such as ticket submissions, chat interactions, or call records to identify trends, peak times, and common issues. Accepts event logs filtered by time range, event type, and other criteria, processes them to extract key metrics and patterns, and outputs a summary report with insights and statistics.", + "category": "customer-support", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of support event to analyze, e.g., 'ticket', 'chat', 'call'. Filters events accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 format date string marking start of analysis period (e.g., '2024-01-01T00:00:00Z').", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 format date string marking end of analysis period (e.g., '2024-01-31T23:59:59Z').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeResolved", + "type": "boolean", + "description": "Whether to include resolved events in the analysis. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "priorityLevels", + "type": "array", + "description": "Filter events by priority levels, e.g., ['high', 'medium']. If empty or omitted, all priorities included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "groupBy", + "type": "string", + "description": "Dimension to group analytics by, e.g., 'hour', 'day', 'agent', 'issueCategory'. Defaults to 'day'.", + "required": false, + "defaultValue": "day" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized analytics including total event count, trend data over time intervals, common issues breakdown, average resolution time, and peak support load periods." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze customer support event data over a specific timeframe to understand workload trends, identify common problem types, assess support team performance, or detect periods of high customer activity. It's valuable for generating reports to improve support efficiency and customer satisfaction.", + "limitations": "This tool does not access or analyze unstructured conversation content in detail (e.g., sentiment analysis) and requires structured event logs with necessary metadata. It cannot predict future trends, only analyze past data.", + "examples": [ + "Analyze the number of chat support events last month grouped by day.", + "Provide trend analysis of high priority tickets resolved in the last week.", + "Summarize call support event volume and average resolution times over Q1 2024." + ] + }, + "tags": [ + "analytics", + "customer-support", + "event-analysis", + "support-trends", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"ticket\",\"startDate\":\"2024-04-01T00:00:00Z\",\"endDate\":\"2024-04-30T23:59:59Z\",\"includeResolved\":true,\"priorityLevels\":[\"high\",\"medium\"],\"groupBy\":\"day\"}", + "description": "Analyze daily ticket event counts and trends for April 2024 including high and medium priority tickets that are resolved or unresolved." + }, + { + "inputJson": "{\"eventType\":\"chat\",\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-07T23:59:59Z\",\"includeResolved\":false,\"priorityLevels\":[],\"groupBy\":\"hour\"}", + "description": "Analyze hourly chat event volume during the first week of May 2024, including only unresolved chats, any priority." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "customer-support.analyzeAlert", + "description": "Analyzes customer support security alerts by processing alert data such as alert type, timestamp, customer information, and message content. It identifies the severity, potential impact, and suggests mitigation steps. The output includes a detailed analysis report highlighting key findings and recommended actions to improve response effectiveness.", + "category": "customer-support", + "parameters": [ + { + "name": "alertData", + "type": "object", + "description": "Structured data containing alert details such as type, timestamp, customer ID, and message content.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include mitigation and response recommendations in the analysis output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level ('low', 'medium', 'high') alerts to analyze; alerts below this level will be ignored.", + "required": false, + "defaultValue": "low" + }, + { + "name": "historicalContextDays", + "type": "number", + "description": "Number of past days of alert history to consider for context and trend analysis.", + "required": false, + "defaultValue": "7" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including alert severity classification, impact assessment, detected patterns or anomalies, and optionally recommended actions for security response teams." + }, + "aiAgent": { + "useCase": "Use this tool when processing customer support security alerts to prioritize issues, assess risks, and guide timely mitigations, especially when multiple alerts or complex patterns occur. It helps in automating security incident triage in customer support environments.", + "limitations": "Cannot replace expert human judgement in complex incident investigations; relies on quality and completeness of provided alert data. May not detect novel or highly sophisticated attack vectors without training updates.", + "examples": [ + "Analyze a high-severity alert about repeated failed login attempts from a customer account.", + "Evaluate recent phishing alert messages flagged in customer support tickets.", + "Generate a report prioritizing alerts from the last week to optimize incident response efforts." + ] + }, + "tags": [ + "customer-support", + "alert-analysis", + "security", + "incident-response", + "triage" + ], + "examples": [ + { + "inputJson": "{\"alertData\":{\"type\":\"failed-login\",\"timestamp\":\"2024-06-01T10:15:30Z\",\"customerId\":\"C12345\",\"message\":\"Multiple failed login attempts detected.\"},\"includeRecommendations\":true,\"severityThreshold\":\"medium\",\"historicalContextDays\":5}", + "description": "Analyze a medium or higher severity failed login alert to identify potential account compromise risks and suggest mitigation." + }, + { + "inputJson": "{\"alertData\":{\"type\":\"phishing-message\",\"timestamp\":\"2024-06-02T09:00:00Z\",\"customerId\":\"C67890\",\"message\":\"Customer reported suspicious email with malicious link.\"},\"includeRecommendations\":true,\"severityThreshold\":\"low\",\"historicalContextDays\":14}", + "description": "Analyze a phishing alert message including historical context for detection trends and appropriate response recommendations." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "marketing-automation.createParagraph", + "description": "Generates a persuasive marketing paragraph based on the provided campaign goal, target audience, and key selling points. Accepts textual inputs describing the marketing context and outputs a coherent, engaging paragraph suitable for use in emails, landing pages, or advertisements.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignGoal", + "type": "string", + "description": "The primary goal or objective of the marketing campaign (e.g., increase sign-ups, boost brand awareness).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target customer segment, including demographics and interests.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of key features or benefits to highlight in the paragraph.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone style of the paragraph, such as 'friendly', 'professional', or 'urgent'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum desired length of the paragraph in words.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing paragraph text." + }, + "aiAgent": { + "useCase": "Use this tool to create targeted, engaging marketing content paragraphs quickly based on clear campaign inputs, saving time on copywriting and ensuring messaging aligns with campaign goals and audience.", + "limitations": "Cannot guarantee marketing effectiveness or compliance; generated text might require human review and editing for accuracy and appropriateness.", + "examples": [ + "Create a paragraph for a campaign aiming to increase app downloads targeting millennials highlighting ease of use and exclusivity with a friendly tone.", + "Generate a professional tone paragraph to promote a new B2B SaaS platform focusing on security and scalability for IT managers." + ] + }, + "tags": [ + "marketing", + "content-generation", + "copywriting", + "automation", + "paragraph", + "campaign", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"campaignGoal\":\"Increase newsletter sign-ups\",\"targetAudience\":\"Young professionals aged 25-35 interested in productivity tools\",\"keyPoints\":[\"Easy integration\",\"Free trial\",\"Expert tips\"],\"tone\":\"friendly\",\"maxLength\":80}", + "description": "Generating a friendly paragraph to encourage newsletter sign-ups emphasizing ease and free trial." + }, + { + "inputJson": "{\"campaignGoal\":\"Promote summer sale\",\"targetAudience\":\"Budget-conscious shoppers\",\"keyPoints\":[\"Up to 50% off\",\"Limited time offer\",\"Wide selection\"],\"tone\":\"urgent\",\"maxLength\":100}", + "description": "Creating an urgent tone paragraph to drive immediate action for a seasonal sale." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "content-creation.analyzeLead", + "description": "Analyzes sales lead data to evaluate lead quality and prioritization. Accepts lead details such as contact info, company size, industry, engagement history, and lead source. Processes input to score lead potential and provide actionable insights for sales focus. Outputs a structured report including lead score, risk factors, and recommendations.", + "category": "content-creation", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "Comprehensive lead information including contact, company profile, engagement metrics, and source. Required fields: name (string), email (string), companySize (number), industry (string), engagementHistory (array of interaction objects), leadSource (string).", + "required": true, + "defaultValue": "" + }, + { + "name": "scoringModel", + "type": "string", + "description": "The lead scoring model to use, e.g., 'standard', 'custom', or 'industrySpecific'. Determines how lead potential is evaluated.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include specific sales recommendations and next steps in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRecommendations", + "type": "number", + "description": "Maximum number of recommendations to provide if includeRecommendations is true. Limits output size.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing leadScore (number 0-100), riskFactors (array of strings), leadDetails (input summary), and optional recommendations (array of strings) if requested." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating and prioritizing leads in sales or marketing workflows. Ideal for agents needing quantitative lead scoring plus qualitative insights from raw lead data to recommend next steps or flag potential issues.", + "limitations": "Cannot create or modify leads, does not replace human judgment especially for complex customer contexts, dependent on quality and completeness of input data.", + "examples": [ + "Analyze a lead with engagement history to determine sales priority and suggest next steps.", + "Evaluate multiple lead profiles using different scoring models to compare potential.", + "Provide risk warnings and action items based on historical interaction patterns." + ] + }, + "tags": [ + "content-analysis", + "lead-scoring", + "sales", + "marketing", + "crm", + "business-intelligence", + "prioritization" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\",\"companySize\":250,\"industry\":\"Technology\",\"engagementHistory\":[{\"type\":\"email_open\",\"date\":\"2024-05-01\"},{\"type\":\"webinar_attendance\",\"date\":\"2024-05-05\"}],\"leadSource\":\"Organic Search\"},\"scoringModel\":\"standard\",\"includeRecommendations\":true,\"maxRecommendations\":3}", + "description": "Analyze a technology lead from organic search with engagement history to score and get action priorities." + }, + { + "inputJson": "{\"leadData\":{\"name\":\"Bob Johnson\",\"email\":\"bob.johnson@enterprise.org\",\"companySize\":1500,\"industry\":\"Healthcare\",\"engagementHistory\":[{\"type\":\"call\",\"date\":\"2024-04-20\"}],\"leadSource\":\"Referral\"},\"scoringModel\":\"industrySpecific\",\"includeRecommendations\":false}", + "description": "Score a large healthcare industry lead using an industry-specific model without recommendations." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "documentation-tools.analyzeKPI", + "description": "This tool analyzes Key Performance Indicators (KPIs) related to documentation projects. It accepts KPI data inputs such as metrics over time, target values, and contextual tags. It processes the data to identify trends, performance gaps, and correlation to documentation quality or team productivity. The output includes a summary report highlighting insights, alerts on critical KPIs, and visualizable data points for performance tracking.", + "category": "documentation-tools", + "parameters": [ + { + "name": "kpiData", + "type": "array", + "description": "An array of KPI entries containing metric name, value, timestamp, and optional tags for contextual grouping. Each entry should be an object with keys: metricName (string), value (number), timestamp (ISO string), and tags (array of strings).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrameStart", + "type": "string", + "description": "The ISO 8601 timestamp marking the start time of the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeFrameEnd", + "type": "string", + "description": "The ISO 8601 timestamp marking the end time of the analysis period. If empty, considers up to the latest data point.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetValues", + "type": "object", + "description": "An object mapping metric names to their target threshold values to evaluate performance against goals.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Whether to perform trend analysis on the KPI metrics over the selected time frame.", + "required": false, + "defaultValue": "true" + }, + { + "name": "alertThreshold", + "type": "number", + "description": "A threshold (e.g., percentage deviation) to trigger alerts on significant KPI deviations from target values.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object including overall summary, an array of KPI insights with trend data, alert flags for metrics exceeding thresholds, and optionally visual data representing KPI performance." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate documentation-related performance metrics such as page completion rates, review cycle times, user engagement scores, or content accuracy metrics over time. It helps monitor if documentation efforts meet predefined targets and highlights areas requiring attention or improvement.", + "limitations": "This tool does not generate KPIs from raw data or unstructured sources, nor does it perform root cause analysis beyond correlation identification. It requires structured KPI input and cannot replace detailed human evaluation for complex qualitative factors.", + "examples": [ + "Analyze the documentation review cycle time and page completion KPIs for the past quarter to identify any performance drops.", + "Check if content accuracy and user feedback scores meet their target thresholds in the last six months, highlighting trends and alerts.", + "Provide a summary of documentation production KPIs with trend and deviation analysis between given start and end dates." + ] + }, + "tags": [ + "documentation", + "KPI", + "analytics", + "performance", + "reporting", + "trend analysis" + ], + "examples": [ + { + "inputJson": "{\"kpiData\":[{\"metricName\":\"reviewCycleTime\",\"value\":5,\"timestamp\":\"2024-01-10T00:00:00Z\",\"tags\":[\"technical\"]},{\"metricName\":\"reviewCycleTime\",\"value\":7,\"timestamp\":\"2024-02-10T00:00:00Z\",\"tags\":[\"technical\"]},{\"metricName\":\"pageCompletionRate\",\"value\":90,\"timestamp\":\"2024-01-15T00:00:00Z\",\"tags\":[\"userManual\"]},{\"metricName\":\"pageCompletionRate\",\"value\":85,\"timestamp\":\"2024-02-15T00:00:00Z\",\"tags\":[\"userManual\"]}],\"timeFrameStart\":\"2024-01-01T00:00:00Z\",\"timeFrameEnd\":\"2024-03-01T00:00:00Z\",\"targetValues\":{\"reviewCycleTime\":6,\"pageCompletionRate\":88},\"includeTrendAnalysis\":true,\"alertThreshold\":10}", + "description": "Analyze review cycle time and page completion rate KPIs against targets over two months with trend and alert evaluation." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "data-transformation.createAPI", + "description": "This tool generates a ready-to-use RESTful API server scaffold based on a provided data model schema in JSON format. It processes the input schema to create CRUD endpoint code with specified frameworks, outputting fully configured source code files for quick deployment or prototyping.", + "category": "data-transformation", + "parameters": [ + { + "name": "dataModelSchema", + "type": "object", + "description": "A JSON object defining the data models, their fields, types, and relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The web framework to generate the API in (e.g., Express, Fastify, Flask).", + "required": true, + "defaultValue": "express" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the generated API code (e.g., JavaScript, TypeScript, Python).", + "required": true, + "defaultValue": "javascript" + }, + { + "name": "includeAuthentication", + "type": "boolean", + "description": "Whether to include basic authentication middleware setup.", + "required": false, + "defaultValue": "false" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database to connect to (e.g., MongoDB, PostgreSQL, SQLite).", + "required": true, + "defaultValue": "mongodb" + }, + { + "name": "outputStructure", + "type": "string", + "description": "Format of the output: a zip archive or a file tree JSON object.", + "required": false, + "defaultValue": "zip" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API source code as either a binary zip archive (base64 encoded) or a JSON file tree structure, depending on outputStructure parameter." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly scaffold a RESTful API server backend from a structured data model schema for prototyping, testing, or accelerating development without writing boilerplate code manually. Ideal for backend service generation and rapid API design.", + "limitations": "This tool does not generate complex business logic beyond basic CRUD operations. It does not handle frontend code, advanced validation rules, or deployment scripts. Customization after generation is necessary for production readiness.", + "examples": [ + "Generate an ExpressJS REST API in JavaScript with MongoDB from a user and product schema.", + "Create a Flask Python API with PostgreSQL backend and basic authentication for an inventory system.", + "Produce a TypeScript Fastify API scaffold without authentication, output as JSON file tree." + ] + }, + "tags": [ + "api", + "code-generation", + "backend", + "rest", + "crud", + "scaffold", + "data-model" + ], + "examples": [ + { + "inputJson": "{\"dataModelSchema\":{\"User\":{\"id\":\"string\",\"name\":\"string\",\"email\":\"string\",\"createdAt\":\"date\"},\"Product\":{\"id\":\"string\",\"title\":\"string\",\"price\":\"number\",\"inStock\":\"boolean\"}},\"framework\":\"express\",\"language\":\"javascript\",\"includeAuthentication\":true,\"databaseType\":\"mongodb\",\"outputStructure\":\"zip\"}", + "description": "Generate an Express.js API in JavaScript with MongoDB, including authentication, for User and Product models." + }, + { + "inputJson": "{\"dataModelSchema\":{\"Item\":{\"itemId\":\"string\",\"description\":\"string\",\"quantity\":\"number\"}},\"framework\":\"flask\",\"language\":\"python\",\"includeAuthentication\":false,\"databaseType\":\"postgresql\",\"outputStructure\":\"zip\"}", + "description": "Create a Flask API in Python without authentication for an Item model with PostgreSQL backend." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "data-validation.createContract", + "description": "Creates a legally structured contract document based on input parameters describing parties, terms, obligations, and conditions. Processes the input data to generate a formatted contract text, verifying required fields and ensuring compliance with basic contract validity aspects. Outputs the contract as a structured text or document object suitable for review or further processing.", + "category": "data-validation", + "parameters": [ + { + "name": "partyA", + "type": "string", + "description": "Name and details of the first party involved in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "partyB", + "type": "string", + "description": "Name and details of the second party involved in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Start date of the contract in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "durationMonths", + "type": "number", + "description": "Duration of the contract in months.", + "required": true, + "defaultValue": "" + }, + { + "name": "terms", + "type": "array", + "description": "List of key contractual terms, obligations, or clauses as strings.", + "required": true, + "defaultValue": "" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction governing the contract laws (e.g., 'California, USA').", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeConfidentialityClause", + "type": "boolean", + "description": "Flag to include a standard confidentiality clause in the contract.", + "required": false, + "defaultValue": "false" + }, + { + "name": "contractName", + "type": "string", + "description": "Optional custom title or name of the contract document.", + "required": false, + "defaultValue": "\"Standard Contract\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with structured contract content, including metadata and formatted text suitable for document generation or preview." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a contract document based on structured input about parties, terms, and conditions, ensuring the output is correctly formatted and includes necessary legal clauses. Suitable for draft contract creation automation or contract template filling with given parameters.", + "limitations": "This tool cannot provide legal advice or ensure enforceability. It generates basic contract texts from input data but does not replace professional legal review or handle complex custom clauses beyond provided parameters.", + "examples": [ + "Create an agreement between two companies outlining service terms for 12 months, including confidentiality.", + "Generate a sales contract for goods exchange effective from a specific date with specified obligations.", + "Draft a consulting contract between a client and provider with custom duration and governing law." + ] + }, + "tags": [ + "data-validation", + "contract", + "document-generation", + "legal", + "automation" + ], + "examples": [ + { + "inputJson": "{\"partyA\":\"Acme Corp\",\"partyB\":\"Beta LLC\",\"effectiveDate\":\"2024-07-01\",\"durationMonths\":12,\"terms\":[\"Payment due within 30 days of invoice\",\"Delivery of goods as per specification\",\"Liability limited to contract value\"],\"governingLaw\":\"New York, USA\",\"includeConfidentialityClause\":true,\"contractName\":\"Service Agreement\"}", + "description": "Create a 12-month service agreement contract between Acme Corp and Beta LLC effective from July 1, 2024, including confidentiality and specific terms." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "etl-processes.analyzeSentence", + "description": "Analyzes an input sentence to extract linguistic features such as sentiment, key entities, parts of speech, and overall syntactic structure. Accepts raw text and returns a structured analysis useful for downstream data processing or insights.", + "category": "etl-processes", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The input sentence text to analyze for linguistic features.", + "required": true, + "defaultValue": "" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Flag to determine whether to perform sentiment analysis on the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractEntities", + "type": "boolean", + "description": "Flag to enable extraction of named entities within the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSyntax", + "type": "boolean", + "description": "Flag to include syntactic parsing details such as parts of speech and dependency parsing.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment score, a list of named entities, parts of speech tags, and syntactic parse tree representation." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to derive structured linguistic information from textual data within an ETL pipeline, such as sentiment to gauge user feedback, or entity extraction for categorization and indexing. This supports advanced text processing workflows requiring enriched semantic data.", + "limitations": "This tool does not generate summaries or translations, nor does it handle multilingual input beyond supported languages. It is designed for single sentence analysis and may not perform optimally on very long or complex sentence structures.", + "examples": [ + "Analyze the sentiment and entities in a customer feedback sentence.", + "Extract parts of speech and named entities from a product review sentence.", + "Obtain syntactic structure and sentiment score from social media post text." + ] + }, + "tags": [ + "etl", + "text-analysis", + "sentiment-analysis", + "entity-extraction", + "syntactic-parsing", + "nlp", + "sentence-processing" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"The quick brown fox jumps over the lazy dog.\",\"analyzeSentiment\":true,\"extractEntities\":true,\"includeSyntax\":true}", + "description": "Analyze a simple English sentence with all analysis features enabled." + }, + { + "inputJson": "{\"sentence\":\"Customer service was outstanding and prompt.\",\"analyzeSentiment\":true,\"extractEntities\":false,\"includeSyntax\":true}", + "description": "Analyze sentiment and syntax but skip entity extraction for a feedback sentence." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "etl-processes.formatFunction", + "description": "This tool accepts a JavaScript or TypeScript function as a string input and applies formatting rules for code style consistency, such as indentation and spacing, based on specified style guidelines or presets. It outputs the formatted function code as a string, making it cleaner and easier to read or integrate into ETL pipelines or codebases.", + "category": "etl-processes", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "The raw function code to be formatted in JavaScript or TypeScript syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the function code, e.g., 'javascript' or 'typescript'.", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation. Typically 2 or 4.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "semicolons", + "type": "boolean", + "description": "Whether to add semicolons at the end of statements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "printWidth", + "type": "number", + "description": "Maximum line length before code is wrapped.", + "required": false, + "defaultValue": "80" + }, + { + "name": "bracketSpacing", + "type": "boolean", + "description": "Whether to add spaces between brackets in object literals, e.g. { foo: bar } vs {foo: bar}.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code as a string under the key 'formattedFunction'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to standardize the formatting of a JavaScript or TypeScript function—especially when ingesting raw or unformatted code—to ensure consistency, readability, and easier integration or analysis in ETL workflows or code transformation pipelines.", + "limitations": "This tool only formats single function snippets and does not perform syntax validation, error correction, or code execution. It assumes input is syntactically correct. It also does not refactor or optimize code logic.", + "examples": [ + "Format a raw JavaScript function from an ETL data extraction step to conform to project coding standards.", + "Reformat a user-provided transformation function in TypeScript, adjusting indentation and semicolon usage with specified settings.", + "Standardize formatting of a function snippet before embedding it in an automated ETL script." + ] + }, + "tags": [ + "formatting", + "code", + "javascript", + "typescript", + "etl", + "function", + "code-style" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"function add(a,b){return a+b}\",\"language\":\"javascript\",\"indentSize\":2,\"useTabs\":false,\"semicolons\":true,\"printWidth\":80,\"bracketSpacing\":true}", + "description": "Format a simple JavaScript function with 2-space indentation, using spaces and semicolons." + }, + { + "inputJson": "{\"functionCode\":\"const multiply=(x,y)=>{return x*y}\",\"language\":\"typescript\",\"indentSize\":4,\"useTabs\":true,\"semicolons\":false,\"printWidth\":100,\"bracketSpacing\":false}", + "description": "Format a TypeScript arrow function with tabs for indentation, no semicolons, no bracket spacing." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "database-management.buildModule", + "description": "Builds a configurable database module code for managing connections, queries, and transactions. Accepts database type, connection parameters, and desired features as input, then generates module code in the specified programming language that can be integrated into applications to interact with the database efficiently.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database for which to build the module, e.g., 'mysql', 'postgresql', 'mongodb'.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionConfig", + "type": "object", + "description": "An object detailing the connection parameters such as host, port, user, password, and database name.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeFeatures", + "type": "array", + "description": "Array of strings specifying optional features to include, e.g., ['pooling', 'transactions', 'logging'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the generated module code, e.g., 'javascript', 'python'.", + "required": true, + "defaultValue": "javascript" + }, + { + "name": "moduleName", + "type": "string", + "description": "Name to assign to the generated module.", + "required": false, + "defaultValue": "databaseModule" + }, + { + "name": "useORM", + "type": "boolean", + "description": "Whether to use an Object-Relational Mapping tool in the generated module if supported.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code as a string under 'code' and metadata such as language and moduleName." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate custom, ready-to-use database interaction module code for various programming languages and database types, especially to automate boilerplate code generation in project scaffolding or rapid prototyping.", + "limitations": "Cannot execute or test the generated code; cannot handle database-specific advanced configurations beyond standard connection and feature options; code quality depends on the database type and features supported by the tool.", + "examples": [ + "Generate a JavaScript module for a PostgreSQL database with connection pooling and transaction support.", + "Create a Python database module for MySQL including logging but without ORM.", + "Produce a MongoDB module in JavaScript without optional features, default module name." + ] + }, + "tags": [ + "database", + "code-generation", + "module", + "automation", + "query", + "connection" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"postgresql\",\"connectionConfig\":{\"host\":\"localhost\",\"port\":5432,\"user\":\"admin\",\"password\":\"secret\",\"database\":\"testdb\"},\"includeFeatures\":[\"pooling\",\"transactions\"],\"language\":\"javascript\",\"moduleName\":\"pgModule\",\"useORM\":false}", + "description": "Generate a JavaScript PostgreSQL module with pooling and transaction support." + }, + { + "inputJson": "{\"databaseType\":\"mysql\",\"connectionConfig\":{\"host\":\"127.0.0.1\",\"port\":3306,\"user\":\"root\",\"password\":\"rootpass\",\"database\":\"prod\"},\"includeFeatures\":[\"logging\"],\"language\":\"python\",\"moduleName\":\"mysqlClient\",\"useORM\":false}", + "description": "Create a Python MySQL module including logging feature without ORM." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "testing-automation.buildFunction", + "description": "Generates a JavaScript test function template based on provided function signature and testing preferences. Accepts input describing the function's name, parameters, and return type, plus test case details. Outputs a fully formed test function code snippet ready for integration into automated testing suites.", + "category": "testing-automation", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name of the function to generate tests for", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "Array describing each parameter with name and type for the test function", + "required": true, + "defaultValue": "" + }, + { + "name": "returnType", + "type": "string", + "description": "Expected return type of the function (e.g., string, number)", + "required": true, + "defaultValue": "" + }, + { + "name": "testCases", + "type": "array", + "description": "List of test case objects with input values and expected output", + "required": true, + "defaultValue": "" + }, + { + "name": "testingFramework", + "type": "string", + "description": "Name of the testing framework to format the output test function (e.g., Jest, Mocha)", + "required": false, + "defaultValue": "Jest" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to automatically generate edge case tests based on parameters", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test function code as a string and metadata about test coverage suggestions" + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate structured and idiomatic test functions for JavaScript applications given a function signature and desired test cases. It helps automate writing boilerplate for automated testing frameworks and speeds up test development.", + "limitations": "This tool does not execute the generated test function or verify the correctness of test logic. It assumes inputs are valid and does not generate tests for asynchronous functions or complex parameter types beyond basic primitives. Custom test logic must be refined by a developer.", + "examples": [ + "Generate a Jest test function for 'add' function with two numeric parameters and expected numeric result.", + "Create Mocha tests for a 'capitalize' function that takes a string and returns a string with the first letter capitalized.", + "Build tests including edge cases for a 'divide' function with numerator and denominator parameters, checking divide-by-zero cases." + ] + }, + "tags": [ + "testing", + "automation", + "function", + "code-generation", + "javascript", + "test-automation" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"add\",\"parameters\":[{\"name\":\"a\",\"type\":\"number\"},{\"name\":\"b\",\"type\":\"number\"}],\"returnType\":\"number\",\"testCases\":[{\"inputs\":{\"a\":1,\"b\":2},\"expected\":3},{\"inputs\":{\"a\":-1,\"b\":-1},\"expected\":-2}],\"testingFramework\":\"Jest\",\"includeEdgeCases\":true}", + "description": "Generate Jest test function for simple add function with basic and edge cases." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "testing-automation.generateText", + "description": "Generates automated test input text based on specified criteria such as length, character set, and complexity to be used for software testing scenarios like input validation, form filling, and stress testing.", + "category": "testing-automation", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Desired length of the generated text string.", + "required": true, + "defaultValue": "100" + }, + { + "name": "characterSet", + "type": "string", + "description": "Which character set to use: 'alphanumeric', 'numeric', 'alphabetic', or 'custom'.", + "required": false, + "defaultValue": "alphanumeric" + }, + { + "name": "customCharacters", + "type": "string", + "description": "Custom string of characters to use if characterSet is 'custom'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeWhitespace", + "type": "boolean", + "description": "Whether to include whitespace characters in the generated text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "complexity", + "type": "string", + "description": "Defines text complexity level: 'simple', 'medium', or 'complex' affecting character variety and randomness.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text string suitable for automated input testing." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate realistic or randomized text inputs for automated software testing, such as for checking input validation, form fields, text processing, or boundary testing. It assists in simulating user input of specific formats and complexity.", + "limitations": "Cannot generate semantically meaningful or context-aware sentences; text is randomized based on parameters without language understanding.", + "examples": [ + "Generate a 50-character alphanumeric string with whitespace included.", + "Create a 200-character numeric-only string.", + "Produce a 100-character custom charset text from a specified set of symbols." + ] + }, + "tags": [ + "testing", + "automation", + "text-generation", + "input-testing", + "software-testing", + "test-data" + ], + "examples": [ + { + "inputJson": "{\"length\":50,\"characterSet\":\"alphanumeric\",\"includeWhitespace\":true}", + "description": "Generates a 50-character alphanumeric string including whitespace." + }, + { + "inputJson": "{\"length\":200,\"characterSet\":\"numeric\"}", + "description": "Generates a numeric-only string of length 200 for numeric input testing." + }, + { + "inputJson": "{\"length\":100,\"characterSet\":\"custom\",\"customCharacters\":\"@#$%&*\"}", + "description": "Generates a 100-character string using only the custom set of special symbols for security or input edge case testing." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "devops.createMetric", + "description": "Creates a custom monitoring metric for DevOps analytics by accepting metric name, description, data source, aggregation method, and optional tags. It processes these inputs to register a new metric in the monitoring system and returns confirmation with metric ID and details.", + "category": "devops", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The unique human-readable name identifying the metric to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description of what the metric represents.", + "required": false, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "string", + "description": "The source of data for the metric, such as a log stream, API endpoint, or database connection string.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate raw data (e.g., sum, average, max, min) to compute the metric value.", + "required": true, + "defaultValue": "average" + }, + { + "name": "refreshIntervalSeconds", + "type": "number", + "description": "How frequently the metric should be updated in seconds.", + "required": false, + "defaultValue": "60" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags to categorize or filter the metric.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag to enable or disable the metric upon creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of metric creation including metric ID, name, and setup details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define and register new custom metrics for monitoring infrastructure, applications, or deployment pipelines to enable automated data collection and analytics. Useful in CI/CD monitoring setups, performance tracking, or alerting configurations.", + "limitations": "This tool does not collect or store metric data itself; it only registers the metric configuration. It cannot modify existing metrics or define complex event-driven metrics beyond aggregation.", + "examples": [ + "Create a CPU utilization metric aggregating average over server logs refreshed every minute.", + "Define a metric for error rate summing error counts from a log source with tags for frontend/backend.", + "Register a deployment duration metric using max aggregation refreshed every 30 seconds with enabled false initially." + ] + }, + "tags": [ + "devops", + "monitoring", + "metrics", + "analytics", + "automation" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"cpuUtilization\",\"description\":\"Average CPU usage percentage\",\"dataSource\":\"serverLogsStream\",\"aggregationMethod\":\"average\",\"refreshIntervalSeconds\":60,\"tags\":[\"infrastructure\",\"performance\"],\"enabled\":true}", + "description": "Creating an average CPU utilization metric from a log stream with a one-minute refresh interval." + }, + { + "inputJson": "{\"metricName\":\"errorRate\",\"description\":\"Sum of error counts from frontend logs\",\"dataSource\":\"frontendErrorLogs\",\"aggregationMethod\":\"sum\",\"tags\":[\"frontend\",\"errors\"]}", + "description": "Defining an error rate metric summing error events tagged as frontend errors." + }, + { + "inputJson": "{\"metricName\":\"deploymentDuration\",\"description\":\"Max deployment time in seconds\",\"dataSource\":\"deployPipelineAPI\",\"aggregationMethod\":\"max\",\"refreshIntervalSeconds\":30,\"enabled\":false}", + "description": "Registering a deployment duration metric using max aggregation updated every 30 seconds, initially disabled." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "frontend-development.analyzeKPI", + "description": "Analyzes key performance indicators (KPIs) from frontend application usage data to identify trends, anomalies, and performance bottlenecks. Accepts raw user interaction and metric logs, filters and aggregates based on specified criteria, and outputs a structured report summarizing KPI statuses and suggestions for optimization.", + "category": "frontend-development", + "parameters": [ + { + "name": "kpiMetrics", + "type": "array", + "description": "List of KPI metric names to analyze (e.g., 'pageLoadTime', 'clickThroughRate').", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Start and end timestamps (ISO 8601 strings) defining the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to narrow down the data (e.g., user segments, device types).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "thresholds", + "type": "object", + "description": "Performance thresholds or SLA targets for KPIs to detect violations.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for aggregation (e.g., 'hourly', 'daily', 'weekly').", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "Structured report including KPI values over time, detected anomalies, trend analysis, and recommendations for frontend performance improvements." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw frontend KPIs or user metrics data and need a detailed analysis that includes trend detection, anomaly identification, and performance assessment to inform frontend optimization strategies. It helps convert large volumes of metric data into actionable insights.", + "limitations": "Does not collect raw data itself; requires formatted KPI data input. Limited to analysis of given KPIs and time ranges; does not predict future values or perform deep root cause analysis beyond detected anomalies.", + "examples": [ + "Analyze page load times and click-through rates over the last week for mobile users.", + "Report anomalies in user engagement KPIs filtered by device type Android within a specified date range.", + "Provide a daily summary of frontend performance KPIs with alerts for thresholds breaches." + ] + }, + "tags": [ + "frontend", + "KPI", + "analytics", + "performance", + "user-experience", + "data-analysis", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"kpiMetrics\":[\"pageLoadTime\",\"clickThroughRate\"],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"filters\":{\"deviceType\":\"mobile\"},\"thresholds\":{\"pageLoadTime\":3000},\"granularity\":\"daily\"}", + "description": "Analyze daily page load times and click-through rates for mobile devices in the first week of May 2024, highlighting page load times over 3000 ms as problematic." + }, + { + "inputJson": "{\"kpiMetrics\":[\"userSessionDuration\",\"bounceRate\"],\"timeRange\":{\"start\":\"2024-04-01T00:00:00Z\",\"end\":\"2024-04-30T23:59:59Z\"},\"filters\":{},\"thresholds\":{},\"granularity\":\"weekly\"}", + "description": "Weekly analysis of average session durations and bounce rate for April 2024 across all users, to assess engagement trends." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "frontend-development.analyzeRisk", + "description": "Analyzes frontend code and configuration to identify potential security risks such as XSS, CSRF, insecure dependencies, and misconfigurations. Accepts source code files or repository URLs as input, performs static analysis and dependency checks, and outputs a structured report highlighting issues with severity and remediation suggestions.", + "category": "frontend-development", + "parameters": [ + { + "name": "sourceCode", + "type": "object", + "description": "Frontend source code files mapped as filename to source content, or empty if repoUrl is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "repoUrl", + "type": "string", + "description": "URL of the code repository to analyze; if provided, sourceCode can be empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDependenciesCheck", + "type": "boolean", + "description": "Whether to scan for vulnerable dependencies in package manifests (e.g., package.json).", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level of risks to include in the report (low, medium, high).", + "required": false, + "defaultValue": "low" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report; options are 'json' or 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A risk analysis report listing identified security risks with details including id, description, severity, location, and remediation advice." + }, + "aiAgent": { + "useCase": "Use this tool when you need to assess the security posture of frontend codebases to preemptively identify vulnerabilities and misconfigurations that could be exploited. It is helpful for generating actionable security reports from code or repositories during development, audit, or CI/CD pipelines.", + "limitations": "Cannot execute dynamic or runtime code analysis; primarily static analysis. May not detect all zero-day or environment-specific vulnerabilities. Does not fix issues automatically; only reports findings.", + "examples": [ + "Analyze the security risks in my latest React frontend repo at https://github.com/example/react-app.", + "Check for XSS and dependency vulnerabilities in this submitted frontend code archive.", + "Generate a JSON report of all high severity frontend security vulnerabilities in my project." + ] + }, + "tags": [ + "security", + "frontend", + "risk-analysis", + "static-analysis", + "vulnerabilities" + ], + "examples": [ + { + "inputJson": "{\"repoUrl\":\"https://github.com/example/frontend-app\",\"includeDependenciesCheck\":true,\"severityThreshold\":\"medium\",\"outputFormat\":\"json\"}", + "description": "Scan a frontend repository URL including dependencies and output a JSON report of medium or higher severity risks." + }, + { + "inputJson": "{\"sourceCode\":{\"index.html\":\"\",\"app.js\":\"fetch('http://example.com')\"},\"includeDependenciesCheck\":false,\"severityThreshold\":\"low\",\"outputFormat\":\"text\"}", + "description": "Analyze given frontend source files for all severity risks without checking dependencies and output a human-readable text report." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "backend-development.createSecret", + "description": "This tool generates a securely stored secret for backend applications. It accepts parameters defining the secret's name, value (optionally autogenerated), encryption method, expiration, and metadata tags. The tool creates and stores the secret encrypted, returning the secret's ID, creation timestamp, and status, enabling secure handling of sensitive credentials and tokens in server-side environments.", + "category": "backend-development", + "parameters": [ + { + "name": "secretName", + "type": "string", + "description": "The unique name identifying the secret to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "secretValue", + "type": "string", + "description": "The actual secret data to store; if empty, an autogenerated strong random value will be created.", + "required": false, + "defaultValue": "" + }, + { + "name": "encryptionAlgorithm", + "type": "string", + "description": "The encryption algorithm used to secure the secret, e.g., AES-256-GCM.", + "required": false, + "defaultValue": "AES-256-GCM" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Number of seconds after which the secret expires and is no longer valid; 0 means no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "metadataTags", + "type": "object", + "description": "Optional key-value pairs to add context or categorize the secret.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the stored secret's unique ID, name, encrypted value (or a reference), creation timestamp, expiration timestamp if set, and current status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create and store secrets such as API keys, tokens, passwords, or certificates securely in backend systems. It supports options for automatic secret generation and encryption configurations, suitable for managing sensitive application credentials in automated workflows or deployment pipelines.", + "limitations": "This tool does not manage secret rotation, retrieval, or access control policies; it only creates and stores a single secret instance. Integration with a full-featured secret management system is required for advanced lifecycle and access management.", + "examples": [ + "Create a new API key secret with a specified name and autogenerated strong random value.", + "Create a password secret with a specified value and expiration of 7 days.", + "Create a confidential token encrypted with the default algorithm including metadata tags for environment and project." + ] + }, + "tags": [ + "backend", + "security", + "secret-management", + "encryption", + "credential-storage", + "automation" + ], + "examples": [ + { + "inputJson": "{\"secretName\":\"apiKeyServiceA\",\"secretValue\":\"\",\"encryptionAlgorithm\":\"AES-256-GCM\",\"expirationSeconds\":0,\"metadataTags\":{\"environment\":\"production\",\"service\":\"serviceA\"}}", + "description": "Create a production API key secret for serviceA with autogenerated random secret value and default encryption." + }, + { + "inputJson": "{\"secretName\":\"dbPassword\",\"secretValue\":\"S3cureP@ssw0rd!\",\"encryptionAlgorithm\":\"AES-256-GCM\",\"expirationSeconds\":604800,\"metadataTags\":{\"environment\":\"staging\"}}", + "description": "Create a database password secret with specified value for staging environment expiring in 7 days." + }, + { + "inputJson": "{\"secretName\":\"jwtSigningKey\",\"secretValue\":\"\",\"encryptionAlgorithm\":\"AES-256-GCM\",\"expirationSeconds\":0,\"metadataTags\":{\"project\":\"auth-service\",\"type\":\"signing-key\"}}", + "description": "Create an autogenerated JWT signing key secret with metadata for the auth-service project." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "backend-development.createThreat", + "description": "Creates a structured threat object for security risk management by accepting details such as threat name, description, severity, likelihood, affected components, and mitigation steps. Processes these inputs and outputs a standardized threat entity for use in backend security systems or risk assessment tools.", + "category": "backend-development", + "parameters": [ + { + "name": "threatName", + "type": "string", + "description": "Name of the security threat to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description explaining the nature of the threat.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the threat; typical values are 'Low', 'Medium', 'High', or 'Critical'.", + "required": true, + "defaultValue": "Medium" + }, + { + "name": "likelihood", + "type": "string", + "description": "Estimated likelihood of the threat materializing; values like 'Unlikely', 'Possible', 'Likely', or 'Very Likely'.", + "required": false, + "defaultValue": "Possible" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of affected system components or modules vulnerable to this threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mitigationSteps", + "type": "array", + "description": "Recommended countermeasures or mitigation actions to reduce or eliminate the threat impact.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectedBy", + "type": "string", + "description": "Source or method by which the threat was identified, e.g., 'Penetration Test', 'Automated Scanner', 'Manual Review'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A standardized threat object including id, name, description, severity, likelihood, affected components, mitigation steps, and detection source." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to define or log a new security threat in backend systems, including risk assessment contexts or during automated vulnerability management workflows. It supports systematic creation of threat records for documentation or further analysis.", + "limitations": "This tool does not perform threat detection or analysis automatically; it only creates a structured representation from given input data. It does not validate threat data against external databases.", + "examples": [ + "Create a threat named 'SQL Injection' with high severity affecting database modules and mitigation via input sanitation.", + "Record a medium likelihood brute force threat detected by automated scanners affecting authentication services.", + "Log a critical severity data leakage threat with detailed mitigation steps following a security audit." + ] + }, + "tags": [ + "security", + "threat", + "risk-management", + "backend", + "vulnerability", + "mitigation" + ], + "examples": [ + { + "inputJson": "{\"threatName\":\"SQL Injection\",\"description\":\"Injection of malicious SQL commands into input fields to manipulate database queries.\",\"severity\":\"High\",\"likelihood\":\"Likely\",\"affectedComponents\":[\"User Authentication\",\"Data Access Layer\"],\"mitigationSteps\":[\"Use prepared statements\",\"Validate and sanitize inputs\"],\"detectedBy\":\"Penetration Test\"}", + "description": "Create a high severity SQL Injection threat affecting authentication and data layers with mitigation." + }, + { + "inputJson": "{\"threatName\":\"Brute Force Attack\",\"description\":\"Repeated attempts to guess user passwords to gain unauthorized access.\",\"severity\":\"Medium\",\"likelihood\":\"Possible\",\"affectedComponents\":[\"Login Service\"],\"mitigationSteps\":[\"Implement account lockout\",\"Use CAPTCHA challenge\"],\"detectedBy\":\"Automated Scanner\"}", + "description": "Define a medium severity brute force attack threat detected by automated tools." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeSentence", + "description": "Analyzes a given sentence to extract linguistic features including sentiment, named entities, part-of-speech tags, and key phrases. Accepts a text string as input and returns a structured analysis object summarizing these elements to facilitate automation workflows involving text understanding.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The sentence text to analyze for linguistic features and sentiment.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input sentence for accurate linguistic processing (ISO 639-1 code).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to extract named entities from the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includePOS", + "type": "boolean", + "description": "Whether to include part-of-speech tagging results.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to extract key phrases or significant noun phrases from the sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentence sentiment score, list of named entities with types, part-of-speech tags for each word, and extracted key phrases." + }, + "aiAgent": { + "useCase": "Use this tool in automation scenarios requiring understanding of text sentences for decision-making, categorization, or enrichment tasks. For example, it helps in automating content moderation, customer sentiment tracking, or organizing textual input before workflow branching.", + "limitations": "This tool analyzes individual sentences only; it does not perform multi-sentence discourse analysis or full document summarization. Accuracy depends on language support and quality of linguistic models for the specified language.", + "examples": [ + "Analyze customer feedback sentence sentiment and key topics.", + "Extract named entities and POS tags from a user message to guide response generation.", + "Get sentiment and phrases from a single sentence to automate categorization in a workflow." + ] + }, + "tags": [ + "text analysis", + "natural language processing", + "automation", + "sentiment analysis", + "entity recognition", + "POS tagging", + "key phrase extraction" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"The project deadline is next Friday and we need to finalize the report.\",\"language\":\"en\",\"includeSentiment\":true,\"includeEntities\":true,\"includePOS\":true,\"includeKeyPhrases\":true}", + "description": "Analyze a project-related sentence to extract deadlines, sentiment, and key information." + }, + { + "inputJson": "{\"sentence\":\"Apple released its latest iPhone with amazing camera features.\",\"language\":\"en\",\"includeSentiment\":true,\"includeEntities\":true,\"includePOS\":true,\"includeKeyPhrases\":true}", + "description": "Extract named entities and sentiment from a product announcement sentence." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "api-integration.createMessage", + "description": "Creates and sends a message through a specified communication API. Accepts details like recipient info, message content, message type, and optional scheduling parameters. Processes the input by formatting and delivering the message via the chosen API endpoint. Returns message status and metadata confirming acceptance or failure.", + "category": "api-integration", + "parameters": [ + { + "name": "apiProvider", + "type": "string", + "description": "The API provider to use for sending the message (e.g., Twilio, SendGrid).", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "The destination address or identifier for the message (phone number, email, user ID).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The main content or body of the message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageType", + "type": "string", + "description": "Type of message being sent, e.g., 'sms', 'email', 'chat'.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for email messages; ignored for others.", + "required": false, + "defaultValue": "" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "ISO 8601 datetime indicating when to send the message; sends immediately if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of URLs or base64 strings representing attachments to include with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Key-value pairs for additional context or tracking information to attach to the message request.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing details about the message delivery result including status, message ID, timestamp, and any error info." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically send messages via external communication APIs, such as sending SMS alerts, transactional emails, or chat notifications. It is suitable for scheduling message delivery, attaching files, and supporting multiple message types through configured providers.", + "limitations": "Does not include message content generation or validation; assumes valid input. Provider API credentials and setup are managed externally. Cannot guarantee message delivery beyond provider acceptance.", + "examples": [ + "Send an SMS alert to a user about account activity.", + "Schedule an email newsletter to a subscriber list.", + "Send a chat message with attachment to a support user channel." + ] + }, + "tags": [ + "api", + "messaging", + "communication", + "notification", + "sms", + "email", + "chat", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiProvider\":\"Twilio\",\"recipient\":\"+1234567890\",\"messageContent\":\"Your verification code is 123456.\",\"messageType\":\"sms\"}", + "description": "Send an SMS verification code to a phone number." + }, + { + "inputJson": "{\"apiProvider\":\"SendGrid\",\"recipient\":\"user@example.com\",\"messageContent\":\"Welcome to our service!\",\"messageType\":\"email\",\"subject\":\"Welcome!\"}", + "description": "Send a welcome email to a new user." + }, + { + "inputJson": "{\"apiProvider\":\"Slack\",\"recipient\":\"U12345\",\"messageContent\":\"New support ticket created.\",\"messageType\":\"chat\",\"attachments\":[\"https://example.com/ticket.pdf\"]}", + "description": "Send a chat message with attachment to a Slack user for support notification." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "api-integration.createJSON", + "description": "Creates a customized JSON object by merging provided base data with optional override fields and supports conditional inclusion of fields based on simple logic. Accepts an initial JSON object or string, applies specified overrides, and outputs a new JSON object ready for API payloads or configurations.", + "category": "api-integration", + "parameters": [ + { + "name": "baseData", + "type": "object", + "description": "The initial JSON object to be used as the base for creation. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "overrides", + "type": "object", + "description": "Key-value pairs to override or add to the base JSON object. Optional.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "conditionalFields", + "type": "array", + "description": "Array of conditions to include fields only if specified criteria are met. Each condition has a field name, a condition expression as a string, and a value to insert if true. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "If true, output JSON string will be formatted with indentation for readability. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "The resulting JSON object after applying overrides and conditional logic. If prettyPrint is true, also provides the JSON string representation with formatting." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically construct or modify JSON objects by combining base data with dynamic overrides and conditional fields, such as preparing API request bodies or configuring data with optional parameters. It simplifies JSON creation without manual string manipulation.", + "limitations": "Does not support complex conditional expressions or nested logic beyond simple condition strings. Does not validate field types beyond basic merging. Not designed for very large JSON data processing.", + "examples": [ + "Create a JSON payload based on a template object adding a user role field only if the user is admin.", + "Generate configuration JSON with default values overridden by environment-specific settings.", + "Construct API request body including optional filters only if specified in input." + ] + }, + "tags": [ + "api", + "json", + "creation", + "data-manipulation", + "configuration", + "payload", + "merge" + ], + "examples": [ + { + "inputJson": "{\"baseData\":{\"name\":\"John\",\"age\":30,\"active\":true},\"overrides\":{\"age\":31,\"role\":\"admin\"},\"conditionalFields\":[{\"field\":\"discount\",\"condition\":\"userIsPremium\",\"value\":true}],\"prettyPrint\":true}", + "description": "Create a JSON object from baseData, override age and add role, add discount field if condition met, output pretty JSON string." + }, + { + "inputJson": "{\"baseData\":{\"service\":\"email\",\"enabled\":false},\"overrides\":{\"enabled\":true},\"conditionalFields\":[],\"prettyPrint\":false}", + "description": "Toggle service enabled true by override, no conditional fields, output compact JSON object." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "prompt-engineering.formatCode", + "description": "This tool accepts raw programming code as input along with a specified programming language and optional formatting style preferences. It uses language-specific parsing and formatting rules to produce neatly formatted, readable code output that adheres to common style conventions or custom user settings, improving code clarity and presentation.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw source code text to be formatted, including any programming language syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the input code to apply appropriate formatting rules (e.g., python, javascript, java).", + "required": true, + "defaultValue": "" + }, + { + "name": "styleRules", + "type": "object", + "description": "Optional object specifying formatting preferences such as indentation size, max line length, brace style, etc.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string and optionally a report on formatting issues encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce or improve the readability of source code snippets generated or provided by users, ensuring code output adheres to language conventions or project-specific style guidelines. This helps in generating higher quality, presentable code suitable for sharing or further development.", + "limitations": "The tool formats code based on known language rules but cannot guarantee correctness or semantic validation. It does not perform code linting or fix logical errors and might not support obscure or domain-specific languages fully.", + "examples": [ + "Format a given JavaScript function according to Google's JS style guide.", + "Clean up and reindent messy Python script submitted by user.", + "Apply custom style settings to Java code snippet to match project conventions." + ] + }, + "tags": [ + "formatting", + "code", + "programming", + "style", + "prompt-engineering" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function test( ){console.log('hello');}\",\"language\":\"javascript\",\"styleRules\":{\"indentSize\":2}}", + "description": "Format a simple JavaScript function with 2-space indentation." + }, + { + "inputJson": "{\"code\":\"def foo():\\n print('bar')\",\"language\":\"python\"}", + "description": "Format a basic Python function using default style rules." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "model-management.uploadReport", + "description": "Uploads a model training or evaluation report document to the model management system. Accepts the report file (PDF, DOCX) and metadata (model ID, report type). Stores the document linked to the specified model, providing a confirmation and a document reference ID as output.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model this report is associated with.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of report being uploaded, e.g., 'training', 'evaluation', or 'summary'.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFilePath", + "type": "string", + "description": "Path or URL to the report file to upload (supports PDF or DOCX files).", + "required": true, + "defaultValue": "" + }, + { + "name": "uploadedBy", + "type": "string", + "description": "Name or ID of the user uploading the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional brief description or summary of the report contents.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Response object containing confirmation of upload and reference details for the stored report." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically submit a training or evaluation report document for a specific machine learning model to the central model management repository. This facilitates record-keeping, auditing, and sharing of key model documentation with team members or stakeholders.", + "limitations": "This tool cannot parse or interpret the report contents, only uploads the document and metadata. It requires the report file to exist and be accessible at the provided path or URL.", + "examples": [ + "Upload a training report PDF for model ID 'model_123'.", + "Submit an evaluation DOCX summary for model 'nlp_v2'.", + "Add a descriptive report document uploaded by 'Alice' for model 'vision_alpha'." + ] + }, + "tags": [ + "model-management", + "document-upload", + "report", + "training", + "evaluation", + "ai-model" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model_123\",\"reportType\":\"training\",\"reportFilePath\":\"/files/reports/model_123_training_report.pdf\",\"uploadedBy\":\"alice\",\"description\":\"Initial training results for version 1.\"}", + "description": "Upload a training report PDF file for model_123 uploaded by Alice." + }, + { + "inputJson": "{\"modelId\":\"nlp_v2\",\"reportType\":\"evaluation\",\"reportFilePath\":\"https://example.com/docs/nlp_v2_eval.docx\",\"uploadedBy\":\"bob\"}", + "description": "Submit an evaluation report DOCX from a remote URL for the NLP model version 2." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "model-management.createMetric", + "description": "Creates a custom performance metric definition for monitoring and evaluating AI models. Accepts a name, description, formula, and evaluation criteria, then registers the metric for use during model training and deployment to track specific aspects of model quality.", + "category": "model-management", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "Unique name identifier for the metric to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of what the metric measures and its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "formula", + "type": "string", + "description": "Mathematical or logical expression defining how to compute the metric from model predictions and labels.", + "required": true, + "defaultValue": "" + }, + { + "name": "evaluationType", + "type": "string", + "description": "Type of evaluation such as 'error', 'accuracy', 'precision', 'recall', or custom.", + "required": true, + "defaultValue": "accuracy" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional object defining value thresholds for acceptable, warning, and critical performance levels.", + "required": false, + "defaultValue": "" + }, + { + "name": "applicableModelTypes", + "type": "array", + "description": "List of model types (e.g., classification, regression) for which this metric is valid.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns the created metric metadata including its unique ID, name, description, formula, and applicability details." + }, + "aiAgent": { + "useCase": "Use this tool when defining new custom metrics tailored to specific AI model evaluation needs during training or monitoring phases. Useful for tracking specialized performance aspects not covered by standard metrics.", + "limitations": "Cannot compute metric values for data; only defines metric metadata and registration. Actual metric computation requires separate evaluation tools.", + "examples": [ + "Create a metric 'F1Score' to evaluate classification balance between precision and recall.", + "Define a custom metric for regression error normalized by value range.", + "Register a thresholded accuracy metric specifying acceptable performance cutoff values." + ] + }, + "tags": [ + "model", + "metric", + "performance", + "evaluation", + "training", + "monitoring", + "custom" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"F1Score\",\"description\":\"Harmonic mean of precision and recall.\",\"formula\":\"2 * (precision * recall) / (precision + recall)\",\"evaluationType\":\"custom\",\"thresholds\":{\"acceptable\":0.8,\"warning\":0.6,\"critical\":0.4},\"applicableModelTypes\":[\"classification\"]}", + "description": "Define F1 Score metric for classification models with thresholds." + }, + { + "inputJson": "{\"metricName\":\"NormalizedMAE\",\"description\":\"Mean Absolute Error normalized by target range.\",\"formula\":\"MAE / (max_target - min_target)\",\"evaluationType\":\"error\",\"applicableModelTypes\":[\"regression\"]}", + "description": "Create a normalized error metric for regression models without thresholds." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "model-management.createKey", + "description": "Generates a new cryptographic key for AI model management purposes. Accepts key type and size as input, optionally associates usage metadata, and outputs the generated key in secure format along with its metadata for storage or further use in authentication or encryption workflows.", + "category": "model-management", + "parameters": [ + { + "name": "keyType", + "type": "string", + "description": "The type of key to generate, e.g., 'RSA', 'ECDSA', or 'AES'.", + "required": true, + "defaultValue": "" + }, + { + "name": "keySize", + "type": "number", + "description": "The size of the key in bits (e.g., 2048 for RSA).", + "required": true, + "defaultValue": "" + }, + { + "name": "usage", + "type": "string", + "description": "Intended usage of the key, such as 'signing', 'encryption', or 'authentication'.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyLabel", + "type": "string", + "description": "An optional human-readable label or identifier for the key.", + "required": false, + "defaultValue": "" + }, + { + "name": "exportable", + "type": "boolean", + "description": "Whether the key material can be exported after creation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated key material (e.g., PEM or base64 encoded), metadata including type, size, usage, label, and a unique key ID for reference." + }, + "aiAgent": { + "useCase": "Use when an AI agent or model management system requires a secure cryptographic key generation for protecting model data, signing models, or encrypting sensitive information within a model lifecycle. This tool helps initialize key material with specified cryptographic standards to ensure proper security.", + "limitations": "This tool does not handle key storage, rotation, or revocation policies; it only generates a new key with specified parameters. It also does not perform actual cryptographic operations beyond key creation.", + "examples": [ + "Create a 2048-bit RSA key for signing models labeled 'model-signing-key'.", + "Generate an AES 256-bit key for encrypting model checkpoints, exportable for backup.", + "Create an ECDSA key of 256 bits intended for authentication usage." + ] + }, + "tags": [ + "cryptography", + "key-generation", + "security", + "model-management", + "encryption", + "signing" + ], + "examples": [ + { + "inputJson": "{\"keyType\":\"RSA\",\"keySize\":2048,\"usage\":\"signing\",\"keyLabel\":\"model-signing-key\",\"exportable\":false}", + "description": "Generate a non-exportable 2048-bit RSA key to be used for signing AI models" + }, + { + "inputJson": "{\"keyType\":\"AES\",\"keySize\":256,\"usage\":\"encryption\",\"keyLabel\":\"checkpoint-encrypt\",\"exportable\":true}", + "description": "Create an exportable 256-bit AES key for encrypting model checkpoints" + }, + { + "inputJson": "{\"keyType\":\"ECDSA\",\"keySize\":256,\"usage\":\"authentication\",\"keyLabel\":\"auth-key\"}", + "description": "Generate a 256-bit ECDSA key intended for authentication purposes" + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "security-tools.generateSentence", + "description": "Generates a syntactically correct and semantically coherent English security-related sentence based on input parameters. Accepts parameters specifying the security topic, tone, and complexity level, processes these to construct a relevant informational or advisory sentence. Outputs a string containing the generated security sentence suitable for communication or documentation.", + "category": "security-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The specific security domain or topic for the sentence generation, e.g., 'data encryption', 'phishing awareness' or 'network intrusion detection'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the generated sentence, such as 'formal', 'informal', 'technical', or 'educational'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "complexityLevel", + "type": "string", + "description": "The complexity level of the sentence to generate: 'basic', 'intermediate', or 'advanced'.", + "required": false, + "defaultValue": "intermediate" + }, + { + "name": "includeActionableAdvice", + "type": "boolean", + "description": "Whether the sentence should include actionable security advice or recommendations.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single generated security sentence string under the key 'sentence'. The sentence is coherent, contextually relevant to the input topic and tone, and suitable for use in security documentation or communication." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce clear, contextually appropriate, and readable sentences related to cybersecurity topics for explanations, documentation, alerts, or training content. It aids AI agents in generating human-like security advisories, summaries, or educational statements based on specific parameters.", + "limitations": "This tool only generates single sentences specific to security topics and cannot create multi-sentence paragraphs or detailed reports. It also does not validate the factual accuracy or the latest standards beyond general security knowledge.", + "examples": [ + "Generate a formal sentence on phishing awareness with actionable advice at a basic complexity level.", + "Create an advanced complexity security sentence about network intrusion detection in a technical tone.", + "Produce an informal, educational sentence about data encryption without actionable advice." + ] + }, + "tags": [ + "security", + "sentence generation", + "documentation", + "education", + "cybersecurity", + "communication" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"data encryption\",\"tone\":\"formal\",\"complexityLevel\":\"intermediate\",\"includeActionableAdvice\":true}", + "description": "Generate a formal, intermediate-level sentence about data encryption that includes actionable advice." + }, + { + "inputJson": "{\"topic\":\"phishing awareness\",\"tone\":\"informal\",\"complexityLevel\":\"basic\",\"includeActionableAdvice\":true}", + "description": "Create an informal, basic sentence highlighting phishing awareness with recommended actions." + }, + { + "inputJson": "{\"topic\":\"network intrusion detection\",\"tone\":\"technical\",\"complexityLevel\":\"advanced\",\"includeActionableAdvice\":false}", + "description": "Generate an advanced complexity, technical tone sentence on network intrusion detection without advice." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "marketing-automation.createContract", + "description": "Generates a customized marketing contract document based on client details, campaign specifications, and legal templates. Accepts structured input including client info, campaign scope, payment terms, and deliverables to produce a clear, legally formatted contract suitable for signing or further review.", + "category": "marketing-automation", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name of the client or company receiving marketing services", + "required": true, + "defaultValue": "" + }, + { + "name": "clientContact", + "type": "string", + "description": "Primary contact email or phone number of the client", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignDescription", + "type": "string", + "description": "Brief description of the marketing campaign to be conducted", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Proposed start date of the marketing campaign in ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Proposed end date of the campaign in ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Details of payment structure, including amount, frequency, and method", + "required": true, + "defaultValue": "" + }, + { + "name": "deliverables", + "type": "array", + "description": "List of promised deliverables or milestones for the campaign", + "required": true, + "defaultValue": "[]" + }, + { + "name": "terminationClause", + "type": "string", + "description": "Optional terms describing termination conditions", + "required": false, + "defaultValue": "" + }, + { + "name": "legalJurisdiction", + "type": "string", + "description": "Jurisdiction applicable for the contract (e.g., state or country)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract as a formatted string and metadata such as creation date and involved parties" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate or assist in generating a legally formatted marketing services contract based on specified client and campaign parameters, ensuring consistency and reducing manual drafting effort.", + "limitations": "The tool does not provide legal advice and should not replace review by a qualified legal professional. It assumes input parameters are accurate and complete.", + "examples": [ + "Create a marketing contract for client ACME Corp for a social media campaign starting June 1, 2024, with specified payment terms and deliverables.", + "Generate a contract including termination clauses and applicable legal jurisdiction for a digital marketing project lasting 3 months.", + "Produce a contract draft based on client contact info, campaign description, and milestone deliverables for review." + ] + }, + "tags": [ + "marketing", + "automation", + "contract", + "document-generation", + "legal", + "campaign-management", + "client", + "payment" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"ACME Corporation\",\"clientContact\":\"contact@acme.com\",\"campaignDescription\":\"Social media marketing campaign for product launch\",\"startDate\":\"2024-06-01\",\"endDate\":\"2024-08-31\",\"paymentTerms\":\"$10,000 payable in two installments, 50% upfront, 50% on completion\",\"deliverables\":[\"Monthly campaign reports\",\"Social media posts: 20\",\"Advertising creatives: 5\"],\"terminationClause\":\"Either party may terminate with 30 days written notice.\",\"legalJurisdiction\":\"California, USA\"}", + "description": "Generate a full contract for ACME Corp for summer campaign with payment and termination clauses." + }, + { + "inputJson": "{\"clientName\":\"BrightTech Ltd.\",\"clientContact\":\"brad@brighttech.io\",\"campaignDescription\":\"Email marketing pilot program targeting new subscriptions\",\"startDate\":\"2024-07-15\",\"endDate\":\"2024-10-15\",\"paymentTerms\":\"$5,000 total, due in full after campaign start\",\"deliverables\":[\"Weekly email content\",\"Subscriber growth report\"],\"terminationClause\":\"\",\"legalJurisdiction\":\"\"}", + "description": "Create a contract for BrightTech's email marketing pilot with simplified payment and no termination clause." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "finance-tools.createDocument", + "description": "Creates a financial document such as an invoice, receipt, or expense report based on provided details. Accepts input parameters describing the document type, party information, line items with amounts, dates, and optional notes. Processes this data to format a clear, structured document output, which can be saved or exported as JSON or PDF metadata.", + "category": "finance-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of financial document to create, e.g., 'invoice', 'receipt', or 'expenseReport'.", + "required": true, + "defaultValue": "" + }, + { + "name": "issueDate", + "type": "string", + "description": "Date when the document is issued, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date for payment if applicable, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "partyDetails", + "type": "object", + "description": "Information about the counterparty including name, address, and contact.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineItems", + "type": "array", + "description": "Array of line items each containing description, quantity, unit price, and total amount.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for amounts, e.g., 'USD', 'EUR'.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "notes", + "type": "string", + "description": "Optional additional notes or terms to include in the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured document object containing all provided details formatted into a standard financial document layout, including calculated totals and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate financial documents such as invoices, receipts, or expense reports from structured input data to facilitate accounting and record keeping. It helps automate document creation with accurate formatting and calculations.", + "limitations": "This tool does not generate legally binding contracts or complex financial statements like balance sheets. It also does not export directly to PDF but provides structured data suitable for PDF generation by other tools.", + "examples": [ + "Create an invoice for a client with multiple products and payment due date.", + "Generate a receipt for a payment received with detailed item descriptions.", + "Produce an expense report summarizing multiple expenditures with date and notes." + ] + }, + "tags": [ + "finance", + "document", + "invoice", + "receipt", + "expenseReport", + "automation", + "financial management" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"invoice\",\"issueDate\":\"2024-05-01\",\"dueDate\":\"2024-05-31\",\"partyDetails\":{\"name\":\"Acme Corp\",\"address\":\"123 Business Rd, Suite 100\",\"contact\":\"billing@acmecorp.com\"},\"lineItems\":[{\"description\":\"Consulting services\",\"quantity\":10,\"unitPrice\":150,\"total\":1500},{\"description\":\"Software license\",\"quantity\":1,\"unitPrice\":500,\"total\":500}],\"currency\":\"USD\",\"notes\":\"Thank you for your business.\"}", + "description": "Creating a typical invoice document with multiple line items, party details, and a due date." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "content-creation.analyzeText", + "description": "This tool accepts a text string as input and performs comprehensive linguistic analysis, including sentiment detection, keyword extraction, readability scoring, and language identification. It outputs a structured summary capturing these analytics to support content evaluation and optimization.", + "category": "content-creation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to be analyzed for linguistic and sentiment characteristics.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis results in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and include keywords from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeReadability", + "type": "boolean", + "description": "Whether to calculate and include readability metrics for the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "languageHint", + "type": "string", + "description": "Optional hint specifying the language of the text to improve analysis accuracy (e.g., 'en', 'es').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results: detected language, sentiment score and label, array of keywords with relevance scores, and readability metrics including Flesch-Kincaid score and grade level." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the emotional tone, key themes, language, and readability level of a body of text to improve content quality, tailor messaging, or support sentiment-driven decisions. It is ideal for summarizing textual content analytics in social media, marketing, or editorial workflows.", + "limitations": "It does not perform deep semantic understanding or context-aware topic modeling beyond keywords. Sentiment accuracy depends on language and domain specificity and may not capture sarcasm or nuanced emotions.", + "examples": [ + "Analyze the sentiment and keywords in a customer review.", + "Determine readability and main topics of a blog post.", + "Identify the language and sentiment of a short social media comment." + ] + }, + "tags": [ + "text analysis", + "sentiment analysis", + "keyword extraction", + "readability", + "language detection", + "content evaluation", + "text analytics" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Our new product launch exceeded all expectations! Customers are thrilled and sales are up.\",\"includeSentiment\":true,\"includeKeywords\":true,\"includeReadability\":true}", + "description": "Analyze sentiment, keywords, and readability of a marketing announcement text." + }, + { + "inputJson": "{\"text\":\"Este documento está escrito en español y necesita análisis de tono.\",\"languageHint\":\"es\",\"includeSentiment\":true,\"includeKeywords\":false}", + "description": "Analyze sentiment in a Spanish language document with a language hint." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "content-creation.buildFunction", + "description": "Generates code for a programming function based on a natural language description, target programming language, and optional parameters. Processes the inputs to produce syntactically correct, functional source code for the described function.", + "category": "content-creation", + "parameters": [ + { + "name": "functionDescription", + "type": "string", + "description": "A clear, concise description of the function's purpose and behavior, provided in natural language.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The target programming language for the function code output (e.g., Python, JavaScript, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "A list of parameter objects defining each input parameter's name and type for the function; optional but recommended for accuracy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "returnType", + "type": "string", + "description": "The expected return type of the function, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include inline comments explaining code logic in the function output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "functionName", + "type": "string", + "description": "Optional name to assign to the generated function; if omitted, a generic name will be used.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code string for the function and its programming language." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate code for a function from a natural language specification, such as during code prototyping, automated code generation, or assisting developers in creating boilerplate functions in various programming languages.", + "limitations": "The tool does not guarantee fully optimized or bug-free code, and complex algorithms or ambiguous descriptions may result in incomplete or incorrect implementations. It does not execute or test the generated code.", + "examples": [ + "Generate a Python function to calculate factorial of a number.", + "Create a JavaScript function named 'sumArray' to return the sum of all elements in an array.", + "Build a Java function that checks if a string is a palindrome, including parameter and return types." + ] + }, + "tags": [ + "code-generation", + "function", + "programming", + "automation", + "developer-tools", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"functionDescription\":\"Calculate the factorial of a given integer.\",\"programmingLanguage\":\"Python\",\"parameters\":[{\"name\":\"n\",\"type\":\"int\"}],\"returnType\":\"int\",\"includeComments\":true,\"functionName\":\"factorial\"}", + "description": "Generate a Python function named 'factorial' that computes the factorial of an integer 'n', including comments." + }, + { + "inputJson": "{\"functionDescription\":\"Return true if a string is a palindrome.\",\"programmingLanguage\":\"JavaScript\",\"parameters\":[{\"name\":\"inputStr\",\"type\":\"string\"}],\"returnType\":\"boolean\",\"includeComments\":false,\"functionName\":\"isPalindrome\"}", + "description": "Create a JavaScript function 'isPalindrome' that determines whether the given string is a palindrome without inline comments." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "etl-processes.createDataset", + "description": "Creates a structured dataset by extracting data from specified sources, applying transformation rules such as filtering, mapping, or aggregation, and loading the processed data into a defined output format or storage. Accepts source configurations and transformation logic, outputs a dataset ready for analytics or further processing.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceType", + "type": "string", + "description": "Type of data source to extract from (e.g., 'csv', 'database', 'api')", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration details specific to the source type (e.g., file path for CSV, connection string for database)", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "List of transformation operations to apply (e.g., filter conditions, field mappings, aggregations) defined as objects", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the dataset (e.g., 'JSON', 'CSV', 'Parquet')", + "required": true, + "defaultValue": "JSON" + }, + { + "name": "outputDestination", + "type": "string", + "description": "Target location or service where the processed dataset will be saved (e.g., file path, database table)", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite data if output destination already exists", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object describing the created dataset, including metadata about source, transformation summary, output location, and success status" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of datasets by extracting raw data from configurable sources, transforming it by applying specified operations, and storing it in a structured format suitable for analytics or downstream processing. For example, preparing data for machine learning pipelines or business intelligence reporting.", + "limitations": "This tool cannot perform complex unstructured data inference or deep semantic transformations beyond defined transformation rules. It also does not handle live streaming data or maintain incremental update states by default.", + "examples": [ + "Create a dataset from a CSV file at a specified path, filter rows by a condition, output as JSON to a given directory.", + "Extract data from a SQL database table, map fields to new names, aggregate by sum over a group, save as Parquet file.", + "Load data from an API endpoint, apply a transformation script, and store results in a local database table." + ] + }, + "tags": [ + "etl", + "dataset", + "data-extraction", + "data-transformation", + "data-loading", + "automation", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"sourceType\":\"csv\",\"sourceConfig\":{\"filePath\":\"/data/sales.csv\"},\"transformations\":[{\"type\":\"filter\",\"condition\":\"region == 'North'\"},{\"type\":\"map\",\"fieldMappings\":{\"sales_amount\":\"amount\"}}],\"outputFormat\":\"JSON\",\"outputDestination\":\"/output/north_sales.json\",\"overwriteExisting\":true}", + "description": "Extract sales data from CSV, filter records where region is 'North', rename 'sales_amount' field, output as JSON file." + }, + { + "inputJson": "{\"sourceType\":\"database\",\"sourceConfig\":{\"connectionString\":\"Server=sql.example.com;Database=SalesDB;User Id=admin;Password=secret;\",\"query\":\"SELECT * FROM orders\"},\"transformations\":[{\"type\":\"aggregate\",\"groupBy\":[\"product_id\"],\"aggregations\":{\"total_quantity\":\"sum(quantity)\"}}],\"outputFormat\":\"Parquet\",\"outputDestination\":\"hdfs://warehouse/sales_agg.parquet\",\"overwriteExisting\":false}", + "description": "Extract all orders from SQL DB, aggregate total quantity per product, output as Parquet file in HDFS without overwriting existing." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "backend-development.analyzeOpportunity", + "description": "Analyzes business opportunities for backend development projects by evaluating factors such as market demand, technical feasibility, team expertise, and potential risks. Accepts a detailed opportunity profile and returns a comprehensive analysis with scoring and recommendations to assist decision-making.", + "category": "backend-development", + "parameters": [ + { + "name": "opportunityName", + "type": "string", + "description": "A descriptive name for the business opportunity to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "marketDemandScore", + "type": "number", + "description": "Numeric score (0-100) representing estimated market demand for the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "technicalComplexityScore", + "type": "number", + "description": "Numeric score (0-100) indicating the technical difficulty involved in implementing the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "teamExpertiseLevel", + "type": "number", + "description": "Numeric score (0-100) showing the team's expertise level relevant to the opportunity's technology stack.", + "required": true, + "defaultValue": "" + }, + { + "name": "estimatedDevelopmentTimeMonths", + "type": "number", + "description": "Estimated time to develop the backend solution, expressed in months.", + "required": false, + "defaultValue": "0" + }, + { + "name": "budgetEstimateUSD", + "type": "number", + "description": "Estimated budget required for development in USD.", + "required": false, + "defaultValue": "0" + }, + { + "name": "riskFactors", + "type": "array", + "description": "List of identified risk factors associated with the opportunity (e.g., regulatory, technical, market).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any supplementary notes or details relevant to the opportunity analysis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing opportunity viability scores, risk assessment summary, and calculated recommendations for prioritization and next steps." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating backend-related business opportunities during project planning or portfolio management. It helps synthesize diverse quantitative inputs into a structured analysis, guiding trade-offs between market potential, technical feasibility, and risk. Useful for product managers, technical leads, and business strategists.", + "limitations": "This tool cannot perform market research or generate raw data; it only analyzes provided numerical and textual inputs. It relies on accurate input scores and does not replace expert judgment or detailed feasibility studies.", + "examples": [ + "Analyze backend opportunity with marketDemandScore 85, technicalComplexityScore 40, teamExpertiseLevel 70.", + "Evaluate a new API platform development opportunity considering budget and risk factors.", + "Assess a legacy system upgrade project with estimated development time and team expertise provided." + ] + }, + "tags": [ + "backend", + "analysis", + "business", + "opportunity", + "feasibility", + "risk-assessment", + "technical-evaluation" + ], + "examples": [ + { + "inputJson": "{\"opportunityName\":\"Cloud Storage API Expansion\",\"marketDemandScore\":78,\"technicalComplexityScore\":65,\"teamExpertiseLevel\":80,\"estimatedDevelopmentTimeMonths\":6,\"budgetEstimateUSD\":120000,\"riskFactors\":[\"security compliance\",\"scalability\"],\"additionalNotes\":\"Focus on multi-region support.\"}", + "description": "Evaluates an opportunity to expand cloud storage APIs focusing on technical complexity, demand, and risks." + }, + { + "inputJson": "{\"opportunityName\":\"Legacy System Modernization\",\"marketDemandScore\":62,\"technicalComplexityScore\":85,\"teamExpertiseLevel\":50,\"estimatedDevelopmentTimeMonths\":12,\"budgetEstimateUSD\":250000,\"riskFactors\":[\"high complexity\",\"data migration risk\"]}", + "description": "Analyzes a modernization project for legacy backend systems with higher complexity and modest demand." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "backend-development.createRisk", + "description": "Creates a structured risk entry in a backend system by accepting details such as risk title, description, impact level, likelihood, mitigation strategies, and associated components. Processes these inputs to generate a consistent risk object with a calculated risk score and timestamps, returning the fully formed risk record for storage or further processing.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "A concise title summarizing the risk.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the risk, including causes and potential effects.", + "required": true, + "defaultValue": "" + }, + { + "name": "impactLevel", + "type": "string", + "description": "Severity of the risk impact (e.g., 'Low', 'Medium', 'High').", + "required": true, + "defaultValue": "" + }, + { + "name": "likelihood", + "type": "string", + "description": "Likelihood of the risk occurring (e.g., 'Rare', 'Possible', 'Likely').", + "required": true, + "defaultValue": "" + }, + { + "name": "mitigationStrategies", + "type": "array", + "description": "List of recommended actions or measures to reduce the risk.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "associatedComponents", + "type": "array", + "description": "System components or modules related to this risk.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectedDate", + "type": "string", + "description": "ISO 8601 date string representing when the risk was first detected.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A risk object containing all provided details, a generated unique risk ID, calculated risk score based on impact and likelihood, creation timestamp, and optional metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to document or log security or operational risks during backend development or system management. It structures and standardizes risk data for tracking, prioritization, and mitigation planning, facilitating risk management workflows.", + "limitations": "This tool does not assess or detect risks autonomously; it relies on input data provided by agents or users. It does not integrate directly with external risk databases or real-time monitoring systems.", + "examples": [ + "Create a new risk entry describing a potential data breach due to weak encryption in a specific backend component.", + "Log a risk related to service downtime caused by a known vulnerability with medium likelihood and high impact.", + "Record mitigation strategies for a risk identified during a security audit of the API service." + ] + }, + "tags": [ + "backend", + "risk-management", + "security", + "documentation", + "risk-assessment", + "mitigation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"API Rate Limiting Bypass\",\"description\":\"Potential for attackers to bypass API rate limiting, causing DoS.\",\"impactLevel\":\"High\",\"likelihood\":\"Possible\",\"mitigationStrategies\":[\"Implement stricter token validation\",\"Monitor unusual traffic patterns.\"],\"associatedComponents\":[\"API Gateway\",\"Authentication Service\"],\"detectedDate\":\"2024-06-01T09:30:00Z\"}", + "description": "Create a risk for a possible API rate limiting bypass affecting multiple backend components." + }, + { + "inputJson": "{\"title\":\"Outdated Library Vulnerability\",\"description\":\"Use of an outdated crypto library with known vulnerabilities.\",\"impactLevel\":\"Medium\",\"likelihood\":\"Likely\",\"mitigationStrategies\":[\"Update to latest library version.\"],\"associatedComponents\":[\"Encryption Module\"],\"detectedDate\":\"2024-05-20\"}", + "description": "Log a medium impact vulnerability found in an encryption module with proposed mitigation." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "automation-frameworks.uploadFile", + "description": "Uploads a file to a specified remote server or cloud storage service. Accepts file path or binary content along with destination details, then handles the transfer and returns the upload result including status, file URL, and metadata.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path of the file to upload. Required if fileContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Base64 encoded content of the file for direct upload. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "URL or endpoint of the remote server or cloud storage where the file will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authorization token or API key for authenticating the upload request.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Desired file name at the destination. If omitted, original file name or default will be used.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists at the destination. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the upload, the URL of the uploaded file if successful, and metadata such as file size and upload timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when automating file transfer workflows that require uploading files to remote servers or cloud storage systems, such as backup automation, deployment pipelines, or media management tasks. It is useful when file transfer must be integrated into larger automated processes, requiring authentication, naming control, and overwrite options.", + "limitations": "This tool requires a reachable destination URL and proper authentication credentials. It does not support complex resumable uploads or multipart upload protocols inherently. It does not perform file format validation or scanning for security threats.", + "examples": [ + "Upload a local image file to a cloud storage with authentication token.", + "Upload a dynamically generated report content as base64 string to a server endpoint.", + "Overwrite an existing log file on a remote server if present." + ] + }, + "tags": [ + "file upload", + "automation", + "cloud storage", + "file transfer", + "remote server", + "workflow automation" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/tmp/report.pdf\",\"destinationUrl\":\"https://cloudstorage.example.com/upload\",\"authToken\":\"abcd1234\",\"fileName\":\"monthly_report.pdf\",\"overwrite\":false}", + "description": "Upload a local PDF report to cloud storage with given auth token and specify file name." + }, + { + "inputJson": "{\"fileContent\":\"VGhpcyBpcyBhIHRlc3QgZmlsZSBjb250ZW50Lg==\",\"destinationUrl\":\"https://api.example.com/upload\",\"authToken\":\"tokenXYZ\",\"fileName\":\"testfile.txt\"}", + "description": "Upload a text file supplied as base64 encoded string to API endpoint with authentication." + }, + { + "inputJson": "{\"filePath\":\"/var/log/app.log\",\"destinationUrl\":\"https://backup.example.net/logs\",\"overwrite\":true}", + "description": "Upload local application log file to backup server overwriting existing file if any." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "infrastructure-management.generateReport", + "description": "Generates detailed infrastructure reports based on specified cloud or physical resource data. Accepts parameters including resource identifiers, date range, report type, and format. Processes monitoring logs, status metrics, and configuration data to produce summary and diagnostic reports in PDF or JSON formats.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "resourceIds", + "type": "array", + "description": "List of resource identifiers (IDs or names) to include in the report, such as server IDs or cloud instances.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date (ISO 8601) for the report data range.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date (ISO 8601) for the report data range.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of report to generate, e.g., 'summary', 'detailed', or 'performance'.", + "required": true, + "defaultValue": "summary" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated report output, can be 'PDF' or 'JSON'.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "includeLogs", + "type": "boolean", + "description": "Whether to include detailed logs and event records in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxEntries", + "type": "number", + "description": "Maximum number of log or metric entries to include, to limit report size.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report file data (base64-encoded if binary) and metadata such as report type, generated timestamp, and included resource IDs." + }, + "aiAgent": { + "useCase": "Use this tool when a comprehensive, time-bounded report summarizing infrastructure health, performance, or configuration is required for cloud or physical resources. It is suitable for operational review, compliance audits, or troubleshooting. The tool helps aggregate and format diverse monitoring data into an accessible document.", + "limitations": "Cannot fetch real-time streaming data; relies on historical logs and stored metrics for the given date range. Does not remotely modify infrastructure or perform remediation actions.", + "examples": [ + "Generate a summary report in PDF format for server IDs ['srv-123','srv-456'] for last month.", + "Create a detailed performance report in JSON including logs for a set of Kubernetes cluster nodes over the past week.", + "Produce a summary report excluding logs for multiple cloud instances with a maximum of 500 entries." + ] + }, + "tags": [ + "infrastructure", + "reporting", + "cloud", + "physical-resources", + "performance", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"resourceIds\":[\"vm-001\",\"db-007\"],\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-07T23:59:59Z\",\"reportType\":\"summary\",\"outputFormat\":\"PDF\",\"includeLogs\":false}", + "description": "Generate a weekly summary PDF report without detailed logs for two virtual machine and database resources." + }, + { + "inputJson": "{\"resourceIds\":[\"cluster-node-12\"],\"startDate\":\"2024-05-05T00:00:00Z\",\"endDate\":\"2024-05-06T23:59:59Z\",\"reportType\":\"detailed\",\"outputFormat\":\"JSON\",\"includeLogs\":true,\"maxEntries\":500}", + "description": "Generate a detailed JSON report including logs for a single cluster node over two days, limiting log entries to 500." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "content-creation.analyzeCustomer", + "description": "Analyzes customer data such as demographics, purchase history, and behavior patterns to generate insights including segmentation, lifetime value estimation, and churn prediction. Accepts customer records as input and produces a comprehensive analytical report.", + "category": "content-creation", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "An array of customer data objects containing demographics, transactions, and behavior metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "The type of analysis to perform: segmentation, lifetimeValue, churnPrediction, or summary.", + "required": true, + "defaultValue": "summary" + }, + { + "name": "segmentCount", + "type": "number", + "description": "Number of customer segments to generate if performing segmentation analysis.", + "required": false, + "defaultValue": "5" + }, + { + "name": "predictionPeriodMonths", + "type": "number", + "description": "Time period in months for churn prediction horizon.", + "required": false, + "defaultValue": "6" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to include charts and visualizations in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including insights based on chosen analysis type, such as customer segments, predicted churn scores, estimated lifetime values, and summary statistics, optionally with visualizations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate actionable insights from customer datasets to support marketing, sales, or product decisions. It helps identify customer groups, assess future value, and detect potential churn risks based on historic data.", + "limitations": "Cannot access or analyze real-time streaming data; quality depends on input data completeness and accuracy; churn predictions use statistical models and may not capture all behavioral nuances.", + "examples": [ + "Analyze customer purchase data to identify distinct customer segments for targeted marketing.", + "Estimate the lifetime value of customers using transaction history data.", + "Predict which customers are most likely to churn in the next 6 months based on their activity patterns." + ] + }, + "tags": [ + "customer", + "analysis", + "segmentation", + "lifetimeValue", + "churnPrediction", + "marketing", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"id\":1,\"age\":34,\"gender\":\"M\",\"transactions\":[{\"amount\":100,\"date\":\"2024-01-01\"}],\"lastActive\":\"2024-04-10\"},{\"id\":2,\"age\":29,\"gender\":\"F\",\"transactions\":[{\"amount\":50,\"date\":\"2024-03-15\"}],\"lastActive\":\"2024-04-05\"}],\"analysisType\":\"segmentation\",\"segmentCount\":3,\"includeVisualizations\":true}", + "description": "Segment customers into 3 groups based on demographics and transaction history." + }, + { + "inputJson": "{\"customerData\":[{\"id\":1,\"transactions\":[{\"amount\":100,\"date\":\"2024-01-01\"},{\"amount\":200,\"date\":\"2024-02-01\"}]},{\"id\":2,\"transactions\":[{\"amount\":50,\"date\":\"2024-03-15\"}]}],\"analysisType\":\"lifetimeValue\",\"includeVisualizations\":false}", + "description": "Estimate lifetime value of customers from their transactions without generating visual charts." + }, + { + "inputJson": "{\"customerData\":[{\"id\":1,\"lastActive\":\"2024-04-10\",\"activityScore\":75},{\"id\":2,\"lastActive\":\"2024-02-01\",\"activityScore\":20}],\"analysisType\":\"churnPrediction\",\"predictionPeriodMonths\":6}", + "description": "Predict the likelihood of customer churn within 6 months based on recent activity scores and last active date." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "devops.generateReport", + "description": "Generates comprehensive deployment and continuous integration reports by aggregating data from build pipelines, test suites, and deployment environments. Accepts input parameters defining the report scope, timeframe, and data sources, then processes logs and metrics to produce detailed summaries and exportable reports in JSON or PDF formats.", + "category": "devops", + "parameters": [ + { + "name": "startTime", + "type": "string", + "description": "The ISO 8601 start time to include data from (e.g., 2024-01-01T00:00:00Z).", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "The ISO 8601 end time to include data until (e.g., 2024-01-31T23:59:59Z).", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source identifiers to include, such as ['buildPipeline','testResults','deploymentLogs'].", + "required": true, + "defaultValue": "[\"buildPipeline\",\"testResults\",\"deploymentLogs\"]" + }, + { + "name": "includeFailedStepsOnly", + "type": "boolean", + "description": "If true, report includes only failed pipeline steps and errors for focused troubleshooting.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Report output format, either 'json' or 'pdf'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "aggregateBy", + "type": "string", + "description": "Optional dimension to aggregate data by, e.g. 'project', 'environment', or 'pipeline'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Indicates whether to include a high-level summary section in the report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content as a string, output format, and metadata such as generated timestamp and included data range." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate detailed reports on deployment and CI pipeline status, performance, and errors over specified time ranges and data sources. Ideal for status dashboards, audit logs, and team communications.", + "limitations": "This tool does not perform real-time monitoring or alerting. It cannot modify pipeline configurations or trigger deployments.", + "examples": [ + "Generate a PDF report for the last week covering build pipelines and deployment logs.", + "Create a JSON report including only failed test steps from the CI system for the past 24 hours.", + "Produce a summary report aggregated by project including all data sources for the previous month." + ] + }, + "tags": [ + "devops", + "reporting", + "CI/CD", + "deployment", + "automation", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-07T23:59:59Z\",\"dataSources\":[\"buildPipeline\",\"deploymentLogs\"],\"includeFailedStepsOnly\":false,\"outputFormat\":\"pdf\",\"aggregateBy\":\"environment\",\"includeSummary\":true}", + "description": "Generate a PDF report covering builds and deployments in the last week, aggregated by environment with a summary." + }, + { + "inputJson": "{\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-01T23:59:59Z\",\"dataSources\":[\"testResults\"],\"includeFailedStepsOnly\":true,\"outputFormat\":\"json\",\"aggregateBy\":\"pipeline\",\"includeSummary\":false}", + "description": "Generate a JSON report for one day showing only failed test steps aggregated by pipeline, no summary." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "backend-development.composeReport", + "description": "Composes a structured report document from provided raw data and configuration. Accepts inputs like report title, data sections with titles and content, optional summary, and formatting options. Processes the inputs to generate a complete report in JSON or Markdown format, ready for further use or exporting.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the report to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of report sections; each section is an object with 'sectionTitle' (string) and 'content' (string or array for paragraphs).", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "An optional executive summary or overview to include at the beginning of the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output format of the report, supports 'json' or 'markdown'.", + "required": false, + "defaultValue": "\"json\"" + }, + { + "name": "includeDate", + "type": "boolean", + "description": "Whether to include the current date automatically at the top of the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to display in the report metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed report in the specified format. Includes metadata such as title, author, date, and content sections formatted accordingly." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate structured reports from various data inputs, such as analytical summaries, project updates, or aggregated information, suitable for exporting or further processing. It helps automate the creation of readable and well-organized report documents based on structured content.", + "limitations": "This tool does not perform any data analysis or content summarization automatically; the input data and content must be prepared beforehand. It also does not generate complex visual elements like charts or graphs.", + "examples": [ + "Compose a project status report with title, three sections each with paragraphs, an executive summary, and output in markdown format.", + "Generate a JSON formatted report including author and current date with no summary.", + "Create a report with just a title and a single section content in JSON format." + ] + }, + "tags": [ + "backend", + "reporting", + "document-generation", + "automation", + "json", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Monthly Sales Report\",\"sections\":[{\"sectionTitle\":\"Executive Summary\",\"content\":\"Sales increased by 10% compared to last month.\"},{\"sectionTitle\":\"Regional Performance\",\"content\":[\"The North region showed the highest growth.\",\"The South region sales remained stable.\"]},{\"sectionTitle\":\"Recommendations\",\"content\":\"Focus on expanding product line in the North region.\"}],\"summary\":\"This report provides an overview of monthly sales performance.\",\"format\":\"markdown\",\"includeDate\":true,\"author\":\"Jane Doe\"}", + "description": "Generate a markdown report with multiple sections, summary, author, and current date included." + }, + { + "inputJson": "{\"title\":\"Server Health Check\",\"sections\":[{\"sectionTitle\":\"CPU Usage\",\"content\":\"Average CPU load is within normal parameters.\"},{\"sectionTitle\":\"Memory Usage\",\"content\":\"No memory leaks detected.\"}],\"format\":\"json\",\"includeDate\":false}", + "description": "Create a JSON report of server health without including the date." + }, + { + "inputJson": "{\"title\":\"Weekly Update\",\"sections\":[{\"sectionTitle\":\"Highlights\",\"content\":\"Team completed the migration task.\"}],\"format\":\"json\"}", + "description": "Generate a simple JSON report with title and one section only." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "backend-development.draftDocument", + "description": "This tool accepts input parameters describing the purpose, target audience, and key content points, then generates a structured draft document suitable for backend project requirements, technical design, or API specification. It processes descriptive inputs to produce organized and coherent document drafts in a specified format.", + "category": "backend-development", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of document to draft, e.g., 'technicalSpecification', 'apiDesign', or 'projectRequirements'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the document such as 'developers', 'project managers', or 'stakeholders'.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of key points or topics that must be included in the document draft.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired output format, e.g., 'markdown', 'plainText', or 'html'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include code or usage examples in the draft document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the drafted document as a formatted string and optionally metadata such as document type and summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a first draft of backend-related project documentation based on structured input. It helps quickly outline and structure technical design, API specs, or project requirements before detailed human review.", + "limitations": "This tool cannot generate fully accurate or final documentation without human editing. It does not replace domain expert review. Complex technical validation or dynamic content generation is out of scope.", + "examples": [ + "Draft a technical specification document for a new REST API targeting backend developers including authentication and error handling sections.", + "Generate a project requirements draft for stakeholders highlighting backend scalability and security considerations." + ] + }, + "tags": [ + "backend", + "documentation", + "drafting", + "technicalSpecification", + "apiDesign", + "projectRequirements" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"technicalSpecification\",\"targetAudience\":\"backend developers\",\"keyPoints\":[\"REST API endpoints\",\"authentication mechanism\",\"error handling strategy\"],\"format\":\"markdown\",\"includeExamples\":true}", + "description": "Generate a technical specification draft for a REST API aimed at backend developers including examples." + }, + { + "inputJson": "{\"documentType\":\"projectRequirements\",\"targetAudience\":\"project managers\",\"keyPoints\":[\"scalability\",\"security\",\"monitoring\"],\"format\":\"plainText\",\"includeExamples\":false}", + "description": "Create a plain text draft listing backend project requirements focused on scalability, security, and monitoring, aimed at project managers." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "web-development.generateDocument", + "description": "Generates a complete HTML document string based on provided content sections and styling options. Accepts a structured input defining title, meta tags, body content (including headings, paragraphs, lists, links, images), and CSS styles. Produces a valid, well-formed HTML5 document string ready for rendering or saving.", + "category": "web-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Title text for the HTML document's element.", + "required": true, + "defaultValue": "" + }, + { + "name": "metaTags", + "type": "array", + "description": "Array of meta tag objects with 'name' and 'content' to include in the document head.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bodyContent", + "type": "array", + "description": "Array of content block objects specifying type (e.g., 'heading', 'paragraph', 'list', 'image', 'link') and content details to include in the document body.", + "required": true, + "defaultValue": "" + }, + { + "name": "cssStyles", + "type": "string", + "description": "Optional CSS styles to embed inside a <style> tag in the document head.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'htmlDocument' which is a string of the generated full HTML5 document." + }, + "aiAgent": { + "useCase": "Use this tool to dynamically generate complete, structured HTML documents for websites or previews when given high-level content definitions. It is useful for automated page creation, templating engines, or generating static HTML outputs from structured input data.", + "limitations": "Cannot execute JavaScript or interactive behavior scripts. Does not perform content validation or SEO optimization beyond basic meta tags. Styling is limited to static CSS strings without processing.", + "examples": [ + "Generate a simple webpage with title, meta author, heading, paragraph and CSS styles.", + "Create an HTML document with multiple sections including images and links from structured content.", + "Produce a minimal valid HTML document when given empty bodyContent array." + ] + }, + "tags": [ + "web", + "html", + "document", + "generator", + "template", + "css", + "static-site" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Sample Page\",\"metaTags\":[{\"name\":\"author\",\"content\":\"John Doe\"}],\"bodyContent\":[{\"type\":\"heading\",\"level\":1,\"text\":\"Welcome to My Site\"},{\"type\":\"paragraph\",\"text\":\"This is a sample paragraph generated by the tool.\"},{\"type\":\"list\",\"ordered\":false,\"items\":[\"First item\",\"Second item\",\"Third item\"]}],\"cssStyles\":\"body { font-family: Arial, sans-serif; } h1 { color: blue; }\"}", + "description": "Generates an HTML page with a title, author meta tag, a heading, a paragraph, an unordered list, and embedded CSS styles for basic formatting." + }, + { + "inputJson": "{\"title\":\"Empty Body\",\"metaTags\":[],\"bodyContent\":[],\"cssStyles\":\"\"}", + "description": "Generates a minimal valid HTML document with no body content or styles, only a title in the head." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "api-integration.analyzeDocument", + "description": "Analyzes the content of a document provided in text or PDF format to extract key information such as entities, sentiments, keywords, and summaries. Accepts document content or a URL linking to the document, processes it with natural language understanding, and returns a structured analysis report.", + "category": "api-integration", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "Raw text content of the document to analyze. Either this or documentUrl must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentUrl", + "type": "string", + "description": "URL to the document to download and analyze. Supports HTTP/HTTPS links to text or PDF files. Either this or documentContent must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the document content for accurate analysis (e.g., 'en' for English). Default tries auto-detection.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "extractSummary", + "type": "boolean", + "description": "If true, extracts a brief summary of the document content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractEntities", + "type": "boolean", + "description": "If true, extracts named entities such as people, organizations, and locations.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "If true, identifies key keywords or phrases relevant to the document content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "If true, performs sentiment analysis on the document content, returning overall sentiment scores.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including summary, entities, keywords, sentiment scores, and any processing metadata." + }, + "aiAgent": { + "useCase": "This tool is ideal when agents need to understand, summarize, or extract key information from documents or web-hosted PDFs without manual reading. Useful for automating document processing, knowledge extraction, and decision support based on textual content.", + "limitations": "Cannot process scanned images or handwritten documents; quality depends on accuracy of OCR if applicable. Does not provide legal or domain-specific expert analysis. Requires accessible document URLs if documentContent is not supplied.", + "examples": [ + "Analyze a product manual PDF from a URL to extract key features and summary.", + "Analyze raw text content of a meeting transcript to identify main topics and sentiment.", + "Analyze a news article URL to extract named entities and general sentiment." + ] + }, + "tags": [ + "api-integration", + "document-analysis", + "NLP", + "text-processing", + "summarization", + "sentiment-analysis" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"OpenAI's GPT models have revolutionized natural language processing by enabling machines to understand and generate human-like text.\",\"extractSummary\":true,\"extractEntities\":true,\"analyzeSentiment\":true}", + "description": "Analyze a short paragraph of text to extract entities, summary, and sentiment." + }, + { + "inputJson": "{\"documentUrl\":\"https://www.example.com/sample-report.pdf\",\"extractSummary\":true,\"extractEntities\":true,\"extractKeywords\":true,\"analyzeSentiment\":false}", + "description": "Analyze a PDF report available via URL to extract summary, entities, and keywords without sentiment analysis." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "model-management.analyzeCustomer", + "description": "Analyzes customer data using AI models to identify purchase patterns, segmentation clusters, lifetime value predictions, and churn risks. Accepts customer demographic and transaction history data, processes it with statistical and machine learning techniques, and outputs insights and actionable metrics for business strategies.", + "category": "model-management", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "Array of customer records, where each record includes demographics, transaction history, and interaction logs as objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform: 'segmentation', 'lifetimeValue', 'churnPrediction', or 'purchasePatterns'.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelVersion", + "type": "string", + "description": "Version identifier of the AI model to use for the analysis, if multiple versions are available.", + "required": false, + "defaultValue": "latest" + }, + { + "name": "includeInteractiveReport", + "type": "boolean", + "description": "Whether to generate an interactive visualization report alongside raw analysis results.", + "required": false, + "defaultValue": "false" + }, + { + "name": "predictionHorizon", + "type": "number", + "description": "Number of future months to predict for churn or lifetime value analyses; ignored for other analysis types.", + "required": false, + "defaultValue": "6" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing insights relevant to the chosen analysis type, including statistical summaries, prediction scores, cluster assignments, and optionally visualization data." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to extract actionable insights from customer datasets to inform marketing, retention, or sales strategies. It supports segmentation discovery, churn risk identification, buying behavior analysis, and customer value prediction.", + "limitations": "Cannot operate without structured customer data; accuracy depends on data quality and model versions; does not perform data cleaning or raw data integration; predictions are probabilistic, not guarantees.", + "examples": [ + "Analyze customer churn risk over the next 3 months", + "Segment customers into distinct behavioral clusters", + "Predict customer lifetime value for planning marketing budget" + ] + }, + "tags": [ + "analysis", + "customer", + "machine-learning", + "segmentation", + "churn", + "lifetimeValue", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"id\":\"123\",\"age\":35,\"gender\":\"F\",\"transactions\":[{\"date\":\"2023-01-15\",\"amount\":120.5},{\"date\":\"2023-03-22\",\"amount\":75.0}],\"interactions\":[{\"type\":\"supportCall\",\"date\":\"2023-02-10\"}]},{\"id\":\"456\",\"age\":42,\"gender\":\"M\",\"transactions\":[{\"date\":\"2023-04-01\",\"amount\":45.0}],\"interactions\":[]}],\"analysisType\":\"segmentation\",\"includeInteractiveReport\":true}", + "description": "Perform customer segmentation with interactive report on a small dataset." + }, + { + "inputJson": "{\"customerData\":[{\"id\":\"789\",\"age\":29,\"gender\":\"M\",\"transactions\":[{\"date\":\"2023-05-10\",\"amount\":200.0},{\"date\":\"2023-06-12\",\"amount\":150.0}]}],\"analysisType\":\"churnPrediction\",\"predictionHorizon\":3}", + "description": "Predict churn risk within 3 months for a given customer dataset." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "monitoring.createEmail", + "description": "Creates a monitoring alert email based on performance metrics and incident information. Accepts inputs like alert subject, recipient list, monitored service name, incident details, metrics snapshots, and optional custom message. Generates a formatted email content ready to be sent for system or application monitoring alerts.", + "category": "monitoring", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "Subject line of the alert email.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses for the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceName", + "type": "string", + "description": "Name of the monitored service or system generating the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "incidentDetails", + "type": "string", + "description": "Description of the incident triggering the alert, including any relevant status.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricsSnapshot", + "type": "object", + "description": "Key-value pairs of relevant performance metrics at the time of alert, e.g., {\"cpuUsage\": 95, \"responseTimeMs\": 1200}.", + "required": false, + "defaultValue": "" + }, + { + "name": "customMessage", + "type": "string", + "description": "Optional additional message or instructions to include in the email body.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted email subject and body text, ready to be sent via email client or service." + }, + "aiAgent": { + "useCase": "Use this tool when generating system or application monitoring alert emails that summarize incidents with relevant metrics and details, helping notify stakeholders promptly. It is ideal for creating well-structured alert emails without manual formatting.", + "limitations": "This tool only creates the email content; it does not send emails or integrate with email delivery services. It also does not analyze metrics but formats what is provided.", + "examples": [ + "Create an alert email notifying the on-call team about a CPU usage spike.", + "Generate a detailed incident report email including response times and error rates.", + "Prepare a custom alert email with additional instructions for a service outage." + ] + }, + "tags": [ + "monitoring", + "alert", + "email", + "notification", + "system", + "incident", + "performance" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"High CPU Usage Alert\",\"recipients\":[\"ops-team@example.com\",\"admin@example.com\"],\"serviceName\":\"PaymentAPI\",\"incidentDetails\":\"CPU usage exceeded 90% for over 10 minutes.\",\"metricsSnapshot\":{\"cpuUsage\":93.5,\"memoryUsage\":78},\"customMessage\":\"Please investigate immediately to avoid service degradation.\"}", + "description": "Alert email for a CPU usage incident for the PaymentAPI service to ops team." + }, + { + "inputJson": "{\"subject\":\"Service Latency Spike\",\"recipients\":[\"dev-team@example.com\"],\"serviceName\":\"WebFrontend\",\"incidentDetails\":\"Response time exceeded threshold: average 1500 ms over past 5 min.\",\"metricsSnapshot\":{\"responseTimeMs\":1500,\"errorRatePercent\":2},\"customMessage\":\"Consider scaling up instances or checking backend dependencies.\"}", + "description": "Performance alert email about latency spike for WebFrontend service." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "database-management.analyzeReport", + "description": "This tool accepts a database query execution report as input, analyzes various performance metrics such as query duration, index usage, and execution plans, and produces a structured summary highlighting potential bottlenecks, optimization suggestions, and an overall health score for the query execution.", + "category": "database-management", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The raw textual or JSON-formatted database query execution report to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the input report content, e.g., 'json' or 'text'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeOptimizationTips", + "type": "boolean", + "description": "Whether to include detailed optimization suggestions in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSuggestions", + "type": "number", + "description": "Maximum number of optimization suggestions to include in the output.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing an analysis summary including performance metrics, identified bottlenecks, optimization suggestions, and a computed health score for the query report." + }, + "aiAgent": { + "useCase": "Use this tool when you have a database query execution report and need to automatically extract meaningful performance insights, identify inefficiencies, and obtain actionable recommendations to improve database query performance.", + "limitations": "Cannot execute or modify the database queries; only analyzes provided report data. May not fully understand proprietary or highly customized report formats.", + "examples": [ + "Analyze this JSON-formatted execution plan report and provide performance bottlenecks.", + "Given the raw text log of query execution stats, summarize key metrics and suggest improvements.", + "Review the indexed usage report and highlight areas where additional indexing could help." + ] + }, + "tags": [ + "database", + "analysis", + "performance", + "query", + "report", + "optimization", + "diagnostics" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"{\\\"queryId\\\":123, \\\"executionTimeMs\\\":250, \\\"indexUsed\\\":true, \\\"rowsExamined\\\":5000, \\\"planSummary\\\":\\\"Full scan with filter\\\"}\",\"reportFormat\":\"json\",\"includeOptimizationTips\":true,\"maxSuggestions\":3}", + "description": "Analyzing a JSON execution report to identify performance issues and optimization suggestions." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "agent-management.generateDocument", + "description": "Generates structured documents such as reports, project plans, or meeting summaries by accepting input parameters defining document type, content sections, formatting preferences, and optional templates. It processes these inputs to produce a formatted document output ready for review or distribution.", + "category": "agent-management", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of document to generate, e.g., 'report', 'projectPlan', or 'meetingSummary'.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentSections", + "type": "array", + "description": "Array of content sections to include in the document, each with title and body text.", + "required": true, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Optional formatting options such as font size, margins, header/footer inclusion, and style presets.", + "required": false, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Optional identifier of a predefined template to use for document layout and style.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to include a table of contents in the generated document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format, e.g., 'pdf', 'docx', or 'html'.", + "required": false, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the document content as a string or binary data, the output format used, and metadata including the document title and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate project reports, meeting summaries, or structured documents by specifying their content and formatting, enabling automated document creation and distribution.", + "limitations": "This tool cannot create highly complex documents requiring advanced layout editing beyond the scope of templates and simple formatting options. It also does not perform content validation or fact-checking beyond the input provided.", + "examples": [ + "Generate a weekly project status report with section titles and bullet points.", + "Create a meeting summary document from notes with optional table of contents.", + "Produce a project plan document using a predefined corporate template in DOCX format." + ] + }, + "tags": [ + "document generation", + "reporting", + "automation", + "template", + "project planning", + "meeting summary", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"report\",\"contentSections\":[{\"title\":\"Executive Summary\",\"body\":\"This quarter's progress shows significant improvements...\"},{\"title\":\"Milestones Achieved\",\"body\":\"Completed phases 1 and 2 on schedule with all deliverables.\"}],\"formattingOptions\":{\"fontSize\":12,\"includeHeader\":true},\"includeTableOfContents\":true,\"outputFormat\":\"pdf\"}", + "description": "Generate a PDF quarterly report with executive summary and milestones, including a table of contents and headers." + }, + { + "inputJson": "{\"documentType\":\"meetingSummary\",\"contentSections\":[{\"title\":\"Attendees\",\"body\":\"John, Alice, and Bob\"},{\"title\":\"Decisions\",\"body\":\"Approved budget increase, set next sprint goals.\"}],\"outputFormat\":\"docx\"}", + "description": "Create a DOCX meeting summary document listing attendees and decisions made." + } + ], + "qualityScore": 0.93, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "text-analysis.formatComponent", + "description": "Formats a code component description from natural language or semi-structured input into a standardized, readable text block suitable for documentation. Accepts component metadata like name, description, and attributes as input, and outputs a formatted text snippet that can be embedded in technical docs or code comments.", + "category": "text-analysis", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The name of the code component to format, e.g., class or function name.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentDescription", + "type": "string", + "description": "A detailed natural language description of the component's purpose and behavior.", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "An array of objects each describing a component parameter with name and description.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "returnDescription", + "type": "string", + "description": "Description of the return value of the component, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The desired output format style, e.g., 'markdown', 'plainText', or 'html'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'formattedText' which includes the formatted component description text ready for insertion in documentation or code comments." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw or loosely structured component descriptions into clean, consistent formatted text blocks for documentation, code comments, or developer guides, ensuring uniform style and clarity.", + "limitations": "This tool does not parse or validate source code syntax. It also does not generate code but only formats descriptive text. Complex nested parameter types may not be fully represented.", + "examples": [ + "Format a function description with parameters and return info for README.md.", + "Convert a component description into a plain-text doc block for inline code comments.", + "Generate an HTML snippet documenting a class and its methods based on input metadata." + ] + }, + "tags": [ + "text-processing", + "documentation", + "formatting", + "code", + "component", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"calculateSum\",\"componentDescription\":\"Computes the sum of two numbers.\",\"parameters\":[{\"name\":\"a\",\"description\":\"The first number.\"},{\"name\":\"b\",\"description\":\"The second number.\"}],\"returnDescription\":\"The sum of the two input numbers.\",\"style\":\"markdown\"}", + "description": "Formats a simple function description with two parameters and a return value in markdown style." + }, + { + "inputJson": "{\"componentName\":\"UserProfile\",\"componentDescription\":\"Represents a user's profile with basic info.\",\"parameters\":[{\"name\":\"username\",\"description\":\"The user's unique login name.\"},{\"name\":\"email\",\"description\":\"The user's email address.\"}],\"returnDescription\":\"\",\"style\":\"plainText\"}", + "description": "Formats a class component with properties in plain text style for inline documentation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "text-analysis.composeComment", + "description": "Generates a coherent and context-aware comment based on a provided text input and optional instructions. Accepts original text and parameters guiding tone, style, and length, then produces a fluent comment suitable for use in discussions, code reviews, or social media responses.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The original text or content the comment should be based on or respond to.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the comment, such as formal, informal, friendly, or professional.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum length of the generated comment in characters to ensure conciseness.", + "required": false, + "defaultValue": "280" + }, + { + "name": "includeQuestions", + "type": "boolean", + "description": "Whether to include questions in the comment to encourage engagement.", + "required": false, + "defaultValue": "false" + }, + { + "name": "style", + "type": "string", + "description": "Stylistic preference for the comment, e.g., concise, detailed, humorous.", + "required": false, + "defaultValue": "concise" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated comment string under the key 'comment'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a relevant, context-aware comment in response to given text, such as creating social media replies, code review remarks, or discussion inputs automatically. It helps speed up communication by creating tailored comments based on tone and style preferences.", + "limitations": "Cannot fully guarantee the comment's appropriateness for all contexts or replace human judgment for sensitive or nuanced conversations. May produce generic comments if input text lacks context.", + "examples": [ + "Generate a friendly comment replying to a user's question about benefits of a product.", + "Create a concise professional comment on a code snippet explaining a function.", + "Compose a detailed, informal comment engaging a social media post about environmental issues." + ] + }, + "tags": [ + "text generation", + "comment", + "natural language processing", + "communication", + "social media", + "code review", + "tone adjustment" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"I just updated the project documentation to include API rate limits.\",\"tone\":\"professional\",\"lengthLimit\":150,\"includeQuestions\":false,\"style\":\"concise\"}", + "description": "Generate a professional, concise comment acknowledging documentation update." + }, + { + "inputJson": "{\"inputText\":\"What's the best way to handle user authentication in this app?\",\"tone\":\"friendly\",\"lengthLimit\":200,\"includeQuestions\":true,\"style\":\"detailed\"}", + "description": "Create a friendly, detailed comment suggesting authentication methods including a question to engage." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "api-integration.analyzeVulnerability", + "description": "This tool accepts vulnerability data inputs such as CVE identifiers, software or system fingerprints, and vulnerability reports, and integrates with external security APIs to assess the threat level, exploitability, and impact. It processes the input by querying databases or services like NVD or proprietary APIs, and returns a detailed analysis including severity scores, descriptions, remediation suggestions, and affected components.", + "category": "api-integration", + "parameters": [ + { + "name": "vulnerabilityIds", + "type": "array", + "description": "List of vulnerability identifiers (e.g., CVE IDs) to analyze.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "softwareInfo", + "type": "object", + "description": "Details about the software or system including name, version, and platform to identify relevant vulnerabilities.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "rawReport", + "type": "string", + "description": "Raw vulnerability report data in JSON or text format to be parsed and analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "URL of the external vulnerability analysis API to connect to.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiKey", + "type": "string", + "description": "API key or token for authorization to access the external vulnerability analysis service.", + "required": true, + "defaultValue": "" + }, + { + "name": "detailedOutput", + "type": "boolean", + "description": "If true, returns verbose vulnerability analysis including remediation steps and references.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the vulnerability analysis results, including severity scores, affected components, risk impact, exploitability metrics, remediation suggestions, and any references to advisories or patches." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives input about known or suspected vulnerabilities and needs to gather authoritative risk assessment, severity information, and remediation guidance by integrating with external vulnerability or security APIs. This enables automated security posture evaluation and informed decision-making.", + "limitations": "This tool cannot fix vulnerabilities or guarantee coverage of all vulnerability data sources. It depends on the external API's data accuracy and availability. It does not perform real-time scanning or penetration testing.", + "examples": [ + "Analyze CVE-2021-44228 and CVE-2020-1472 for severity and remediation.", + "Given software name and version, identify relevant vulnerabilities and risk levels.", + "Parse a raw JSON vulnerability report and produce a summarized risk assessment." + ] + }, + "tags": [ + "api", + "security", + "vulnerability", + "analysis", + "integration", + "CVE", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityIds\":[\"CVE-2021-44228\",\"CVE-2020-1472\"],\"apiEndpoint\":\"https://securityapi.example.com/v1/vuln/analyze\",\"apiKey\":\"abcd1234\",\"detailedOutput\":true}", + "description": "Analyze two known CVE vulnerabilities with detailed output to get severity and remediation steps." + }, + { + "inputJson": "{\"softwareInfo\":{\"name\":\"OpenSSL\",\"version\":\"1.0.2g\",\"platform\":\"linux\"},\"apiEndpoint\":\"https://securityapi.example.com/v1/vuln/analyze\",\"apiKey\":\"apikey123\"}", + "description": "Identify vulnerabilities for a specific software component and get basic risk scores." + }, + { + "inputJson": "{\"rawReport\":\"{\\\"vulnerabilities\\\":[{\\\"id\\\":\\\"CVE-2019-0708\\\",\\\"status\\\":\\\"reported\\\"}]}\" ,\"apiEndpoint\":\"https://securityapi.example.com/v1/vuln/analyze\",\"apiKey\":\"apikey456\",\"detailedOutput\":false}", + "description": "Parse a raw vulnerability report JSON string and obtain a summarized risk assessment." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "api-integration.uploadTable", + "description": "Uploads a tabular dataset (CSV, JSON array, or Excel file) to a specified third-party API endpoint. Accepts table data and metadata, performs optional data format validation, converts if needed, and sends the data to the target API. Returns the API response including success status and any errors.", + "category": "api-integration", + "parameters": [ + { + "name": "apiUrl", + "type": "string", + "description": "The target API endpoint URL to receive the table upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authorization token (e.g., Bearer token) required by the API for authentication.", + "required": false, + "defaultValue": "" + }, + { + "name": "tableData", + "type": "string", + "description": "The table data to upload, provided as a CSV string, JSON array string, or base64 encoded Excel file content.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the tableData input. Supported values: 'csv', 'json', 'excel'.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalHeaders", + "type": "object", + "description": "Optional additional HTTP headers to include in the upload request as key-value pairs.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "If true, validates the table data against an optional provided schema before upload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schema", + "type": "object", + "description": "JSON schema describing expected table columns and types, used if validateSchema is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Response object including upload success boolean, status code from the API, response body parsed as JSON if possible, and errors if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload structured tabular data to external services or APIs, supporting common table data formats and handling authentication and validation as required. Helpful in data integration pipelines or automation workflows involving data export.", + "limitations": "This tool does not perform complex data transformations beyond format conversions and schema validation. Cannot handle APIs requiring complex multipart requests or streaming uploads.", + "examples": [ + "Upload sales data in CSV format to cloud analytics API with auth token.", + "Send JSON array of user records to a REST API endpoint without authentication.", + "Upload an Excel spreadsheet as base64 content to a data ingestion API with additional custom headers." + ] + }, + "tags": [ + "api", + "upload", + "table", + "integration", + "data-upload", + "csv", + "json", + "excel" + ], + "examples": [ + { + "inputJson": "{\"apiUrl\":\"https://api.example.com/upload\",\"authToken\":\"Bearer abc123\",\"tableData\":\"name,age\\nAlice,30\\nBob,25\",\"dataFormat\":\"csv\",\"validateSchema\":false}", + "description": "Upload a simple CSV string containing names and ages to an API endpoint requiring a Bearer token, without schema validation." + }, + { + "inputJson": "{\"apiUrl\":\"https://api.example.com/users\",\"tableData\":\"[{\\\"id\\\":1,\\\"name\\\":\\\"Alice\\\"},{\\\"id\\\":2,\\\"name\\\":\\\"Bob\\\"}]\",\"dataFormat\":\"json\",\"validateSchema\":true,\"schema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"number\"},\"name\":{\"type\":\"string\"}},\"required\":[\"id\",\"name\"]}}}", + "description": "Upload validated JSON array of user objects to an API endpoint without authentication token." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "api-integration.formatQuery", + "description": "Formats a query object or string into a properly escaped and encoded query string suitable for use in API URL parameters. Accepts input as an object or raw string, performs key-value serialization with encoding, and outputs a standardized query string to be appended to URLs.", + "category": "api-integration", + "parameters": [ + { + "name": "queryInput", + "type": "object", + "description": "The input query parameters as a key-value object to be formatted into a query string.", + "required": true, + "defaultValue": "" + }, + { + "name": "encodeURIComponent", + "type": "boolean", + "description": "Whether to encode the query components using encodeURIComponent to ensure URL safety.", + "required": false, + "defaultValue": "true" + }, + { + "name": "arrayFormat", + "type": "string", + "description": "Format to represent arrays in query strings: 'brackets' (key[]=value), 'indices' (key[0]=value), 'repeat' (key=value&key=value), or 'comma' (key=value1,value2).", + "required": false, + "defaultValue": "brackets" + }, + { + "name": "includeQuestionMark", + "type": "boolean", + "description": "Whether to prepend a '?' at the start of the output query string.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "A properly formatted and encoded query string, ready to be appended to API endpoint URLs." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to convert structured query parameters from an object form into a valid URL query string for making HTTP requests to APIs. This tool helps standardize parameters and encoding based on common web API conventions.", + "limitations": "Does not handle nested objects beyond one level or data validation of query parameter values; the input must be a flat object or shallow arrays. Complex nested structures require preprocessing.", + "examples": [ + "Format query params for a REST API endpoint.", + "Create query string from filters to send in GET request.", + "Convert user input object into encoded URL parameters." + ] + }, + "tags": [ + "api-integration", + "formatting", + "query-string", + "url-encoding", + "http", + "parameters", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"queryInput\":{\"search\":\"openAI\",\"page\":2,\"tags\":[\"ai\",\"nlp\"]},\"encodeURIComponent\":true,\"arrayFormat\":\"brackets\",\"includeQuestionMark\":true}", + "description": "Format a query object with string, number, and array parameters into a query string with brackets-style arrays and encoding." + }, + { + "inputJson": "{\"queryInput\":{\"filter\":\"active\",\"sort\":\"date\"},\"encodeURIComponent\":false,\"arrayFormat\":\"repeat\",\"includeQuestionMark\":false}", + "description": "Format a simple query object without encoding, repeating keys for array format, and without prepending '?'." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "api-integration.createAnomaly", + "description": "This tool accepts time-series or event data through API input along with configuration parameters specifying anomaly detection criteria. It processes the data using statistical and machine learning techniques to identify data points or patterns that significantly deviate from expected behavior. The output is a structured anomaly report including detected anomalies with timestamps, severity scores, and contextual metadata.", + "category": "api-integration", + "parameters": [ + { + "name": "dataSourceUrl", + "type": "string", + "description": "URL endpoint of the API providing the input data for anomaly detection, supporting JSON format.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeField", + "type": "string", + "description": "The name of the field in the input data representing the timestamp for each record.", + "required": true, + "defaultValue": "" + }, + { + "name": "valueField", + "type": "string", + "description": "The name of the field in the input data containing the numerical value to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionMethod", + "type": "string", + "description": "The anomaly detection algorithm to apply (e.g., 'statistical', 'machineLearning', 'threshold').", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "sensitivityThreshold", + "type": "number", + "description": "A numeric value (typically 0 to 1) controlling detection sensitivity; higher values detect more anomalies.", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Duration in minutes for sliding time window analysis, controlling context size for detection.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeContextData", + "type": "boolean", + "description": "Whether to include contextual metadata (e.g., neighboring data points, source metadata) in the anomaly report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an anomaly detection report object containing detected anomalies each with timestamp, anomaly score, and optional context." + }, + "aiAgent": { + "useCase": "Use this tool when integrating with monitoring or analytics platforms to automatically identify unusual patterns or outliers in time-series or event data accessed via APIs. It supports configuring detection sensitivity and method to adapt to various domains such as IT monitoring, finance, or IoT device logs.", + "limitations": "This tool requires reliable, structured input data with timestamp and numerical value fields accessible via API. It does not perform root cause analysis or predictive forecasting and may not handle unstructured data or detect context-specific anomalies without proper configuration.", + "examples": [ + "Detect unusual spikes in server CPU usage over the last 24 hours from cloud monitoring API.", + "Identify anomalous transaction amounts in financial data streamed from a payment processing API.", + "Find irregular sensor readings in IoT device telemetry received via REST API." + ] + }, + "tags": [ + "api", + "anomalyDetection", + "analytics", + "timeSeries", + "monitoring", + "machineLearning", + "dataIntegration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"dataSourceUrl\":\"https://api.monitoring.example.com/metrics/cpu_usage\",\"timeField\":\"timestamp\",\"valueField\":\"usage_percent\",\"detectionMethod\":\"statistical\",\"sensitivityThreshold\":0.8,\"timeWindowMinutes\":60,\"includeContextData\":true}", + "description": "Detect anomalies in CPU usage percentage from a monitoring API with statistical detection and moderate sensitivity." + }, + { + "inputJson": "{\"dataSourceUrl\":\"https://api.finance.example.com/transactions\",\"timeField\":\"transaction_time\",\"valueField\":\"amount\",\"detectionMethod\":\"threshold\",\"sensitivityThreshold\":0.9,\"timeWindowMinutes\":1440,\"includeContextData\":false}", + "description": "Identify anomalous transaction amounts in financial data using fixed threshold detection over a daily window without context data." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "model-management.composeReference", + "description": "This tool accepts metadata and model details as input and generates a comprehensive reference document summarizing AI model specifications, training methods, and deployment guidelines. It processes the provided information to output a structured, human-readable reference useful for documentation and collaboration.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name of the AI model being documented", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "The version identifier of the model", + "required": false, + "defaultValue": "\"1.0\"" + }, + { + "name": "trainingDataDescription", + "type": "string", + "description": "Description of the training data used, including dataset sources and characteristics", + "required": true, + "defaultValue": "" + }, + { + "name": "trainingProcedure", + "type": "string", + "description": "Details about model training methodology, including algorithms, hyperparameters, and epochs", + "required": true, + "defaultValue": "" + }, + { + "name": "architectureSummary", + "type": "string", + "description": "Summary of the model architecture and layers involved", + "required": true, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Key performance metrics such as accuracy, precision, recall, with metric names as keys and their values", + "required": false, + "defaultValue": "{}" + }, + { + "name": "deploymentInstructions", + "type": "string", + "description": "Guidelines and requirements for deploying the model in production environments", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any extra notes or disclaimers relevant to the model or its use", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed reference document as a formatted string, suitable for documentation or sharing" + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automatically create standardized, detailed reference documents for AI models based on user-provided details. It helps keep model documentation consistent and comprehensive for teams involved in development, deployment, or auditing.", + "limitations": "The tool cannot verify the accuracy of input data; it purely formats and composes the reference content from provided parameters. It does not generate the content from raw data or logs.", + "examples": [ + "Generate a reference document for a new image classification model including its training data and architecture.", + "Produce deployment guidelines and a summary reference for the latest version of a natural language processing model.", + "Compose a detailed model specification reference including performance metrics and training procedures." + ] + }, + "tags": [ + "model management", + "documentation", + "reference", + "AI model", + "training", + "deployment", + "metadata", + "composition" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"ImageClassifierX\",\"version\":\"2.1\",\"trainingDataDescription\":\"Dataset of annotated street images from urban areas.\",\"trainingProcedure\":\"Used convolutional neural networks with Adam optimizer, trained for 50 epochs.\",\"architectureSummary\":\"10-layer CNN with batch normalization and dropout.\",\"performanceMetrics\":{\"accuracy\":\"92%\",\"precision\":\"89%\"},\"deploymentInstructions\":\"Deploy on Kubernetes cluster with 2 GPUs.\",\"additionalNotes\":\"Model optimized for urban environment applications.\"}", + "description": "Compose a detailed reference for version 2.1 of an image classification model including dataset description and deployment instructions." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Reference", + "context": null + } + }, + { + "name": "model-management.createForecast", + "description": "Creates a business forecast model by training on historical business data such as sales, revenue, or customer metrics. Accepts time series or tabular data, parameters for model type and training options, and outputs a trained forecasting model with predictive insights and evaluation metrics.", + "category": "model-management", + "parameters": [ + { + "name": "historicalData", + "type": "array", + "description": "An array of historical data points, each including timestamp and value(s) relevant for forecasting (e.g., sales figures).", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "Type of forecasting model to create, such as 'ARIMA', 'Prophet', 'LSTM', or 'ExponentialSmoothing'.", + "required": true, + "defaultValue": "\"Prophet\"" + }, + { + "name": "forecastHorizon", + "type": "number", + "description": "Number of future time periods (e.g., days, weeks, months) to forecast.", + "required": true, + "defaultValue": "30" + }, + { + "name": "frequency", + "type": "string", + "description": "Frequency of the data points such as 'daily', 'weekly', or 'monthly'.", + "required": true, + "defaultValue": "\"daily\"" + }, + { + "name": "seasonalityMode", + "type": "string", + "description": "Seasonality mode for models supporting it; typically 'additive' or 'multiplicative'.", + "required": false, + "defaultValue": "\"additive\"" + }, + { + "name": "confidenceInterval", + "type": "number", + "description": "Confidence interval percentage for forecast uncertainty bounds (0-100).", + "required": false, + "defaultValue": "95" + }, + { + "name": "additionalRegressors", + "type": "object", + "description": "Optional additional regressors or features to improve forecast accuracy; keys are regressor names, values are historical arrays.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the trained forecast model metadata, forecasted values for the horizon, model evaluation metrics (e.g., MAE, RMSE), and optionally confidence intervals." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate future business metrics predictions (like sales, revenue, or demand) by creating a forecast model from historical data. It helps estimate future values with statistical or machine learning models tailored to the data frequency and seasonality.", + "limitations": "This tool requires sufficient historical data of consistent frequency and does not handle real-time streaming data. It is not designed for complex multi-variate forecasting without additional regressors and cannot replace domain expert analysis.", + "examples": [ + "Create a 3-month sales forecast using monthly sales data applying the Prophet model.", + "Train a forecasting model on daily website traffic data to predict next 30 days with confidence intervals.", + "Generate a revenue forecast using historical quarterly data and additive seasonality." + ] + }, + "tags": [ + "forecasting", + "business", + "model", + "time series", + "sales", + "prediction", + "training", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"historicalData\":[{\"timestamp\":\"2023-01-01\",\"value\":120},{\"timestamp\":\"2023-02-01\",\"value\":130},{\"timestamp\":\"2023-03-01\",\"value\":125}],\"modelType\":\"Prophet\",\"forecastHorizon\":3,\"frequency\":\"monthly\"}", + "description": "Create a 3-month business sales forecast from monthly data using the Prophet model." + }, + { + "inputJson": "{\"historicalData\":[{\"timestamp\":\"2024-03-01\",\"value\":450},{\"timestamp\":\"2024-03-02\",\"value\":470},{\"timestamp\":\"2024-03-03\",\"value\":490}],\"modelType\":\"ExponentialSmoothing\",\"forecastHorizon\":7,\"frequency\":\"daily\",\"confidenceInterval\":90}", + "description": "Train a daily visitor forecast model with Exponential Smoothing including 90% confidence intervals." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Forecast", + "context": null + } + }, + { + "name": "file-operations.analyzeTable", + "description": "Analyzes structured tabular data from files such as CSV, Excel, or JSON arrays representing tables. It computes summary statistics, detects missing or anomalous values, infers data types for columns, and generates an overview report highlighting key data characteristics and potential data quality issues.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Path or URI to the table data file to analyze (CSV, Excel, or JSON)", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Format of the input file: 'csv', 'excel', or 'json'", + "required": true, + "defaultValue": "" + }, + { + "name": "sheetName", + "type": "string", + "description": "Name of the sheet to analyze for Excel files; ignored otherwise", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character for CSV files if different from comma", + "required": false, + "defaultValue": "," + }, + { + "name": "inferDataTypes", + "type": "boolean", + "description": "Whether to infer and validate data types of columns", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkMissingValues", + "type": "boolean", + "description": "Whether to detect and summarize missing values in the table", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectOutliers", + "type": "boolean", + "description": "Whether to detect statistical outliers in numeric columns", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to read from the file for analysis; 0 means all", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing per-column statistics (count, mean, median, mode, min, max), data type inference, missing values summary, and flagged anomalies or outliers if detected." + }, + "aiAgent": { + "useCase": "Use this tool when you need a comprehensive automatic analysis of tabular file data to understand its structure, quality, and basic statistics before further processing or modeling. It assists in data exploration, preprocessing, and validation workflows, especially for CSV, Excel, or JSON table formats.", + "limitations": "This tool does not perform complex statistical modeling or visualizations, nor does it modify the input data. It is not suitable for unstructured or non-tabular file formats. Large files may be truncated by maxRows parameter.", + "examples": [ + "Analyze an Excel sheet named 'SalesData' to get column stats and detect missing values", + "Get summary statistics and infer data types for a CSV file with semicolon delimiter", + "Analyze a JSON file containing an array of records, ignoring outlier detection" + ] + }, + "tags": [ + "file", + "table", + "analysis", + "data-quality", + "csv", + "excel", + "json", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/sales.csv\",\"fileType\":\"csv\",\"delimiter\":\";\",\"inferDataTypes\":true,\"checkMissingValues\":true,\"detectOutliers\":true,\"maxRows\":1000}", + "description": "Analyze a CSV file with semicolon delimiter to infer types, check missing values, and detect outliers." + }, + { + "inputJson": "{\"filePath\":\"/data/financials.xlsx\",\"fileType\":\"excel\",\"sheetName\":\"Quarterly\",\"inferDataTypes\":true,\"checkMissingValues\":true,\"detectOutliers\":false}", + "description": "Analyze the 'Quarterly' sheet in an Excel workbook for data types and missing values without outlier detection." + }, + { + "inputJson": "{\"filePath\":\"/data/users.json\",\"fileType\":\"json\",\"inferDataTypes\":true,\"checkMissingValues\":true}", + "description": "Analyze a JSON file containing table data represented as an array of objects." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "file-operations.createComment", + "description": "Creates a textual comment associated with a specific file path or file identifier. Accepts input including the file path, comment text, author identifier, and optional metadata. Processes the inputs to generate a comment object linked to the file, which can be stored or returned for further use in file management workflows.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The path or unique identifier of the file to which the comment applies.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The actual text content of the comment to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier of the comment author, such as username or user ID.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying when the comment was made; if omitted, current time is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata related to the comment like tags or replyTo indicating comment threading.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created comment, including file path, text, author, timestamp, metadata, and a generated unique comment ID." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically add annotations or comments to files within a file management system, enabling better tracking of notes, reviews, or remarks related to specific files. It is suitable for automating documentation workflows, code review tools, or any system where comments are linked to files.", + "limitations": "This tool does not store comments persistently by itself; it only creates comment objects that must be saved using an external system. It also does not support editing or deleting comments once created, nor does it handle file existence verification.", + "examples": [ + "Add a review comment to the file '/docs/project-plan.md' by user 'alice' saying 'Needs update on timeline.'", + "Create a comment on file 'logs/error.log' with the text 'Check error frequency.' without specifying author.", + "Add a reply comment referencing another comment ID in metadata for the file '/src/app.js'." + ] + }, + "tags": [ + "file", + "comment", + "create", + "annotation", + "metadata", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/docs/readme.md\",\"commentText\":\"This section needs clarification.\",\"authorId\":\"user123\"}", + "description": "Create a comment with specified author on a documentation file." + }, + { + "inputJson": "{\"filePath\":\"/images/logo.png\",\"commentText\":\"Update logo to new branding.\",\"timestamp\":\"2024-06-01T10:00:00Z\"}", + "description": "Create a comment with a specified timestamp without author on an image file." + }, + { + "inputJson": "{\"filePath\":\"/src/main.py\",\"commentText\":\"Refactor this function.\",\"authorId\":\"dev007\",\"metadata\":{\"tags\":[\"refactor\",\"urgent\"]}}", + "description": "Create a comment with metadata tags on a source code file." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "audio-processing.createMetric", + "description": "This tool generates quantitative audio metrics from provided audio data. It accepts raw audio files or audio streams along with optional parameters specifying which audio properties to analyze (such as loudness, pitch, tempo, or signal-to-noise ratio). The tool processes the audio input, extracting requested metrics, and returns a structured report with numerical values and statistical summaries for each metric.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioInput", + "type": "string", + "description": "Required. The file path or URL to the audio file, or base64-encoded audio data string.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Optional. List of audio metrics to calculate, e.g., ['loudness', 'pitch', 'tempo', 'snr']. If empty or omitted, defaults to all available metrics.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Optional. Sampling rate in Hz to resample the audio for analysis; if omitted, original sample rate is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentDuration", + "type": "number", + "description": "Optional. Duration in seconds of audio segments to analyze separately (for time-based metrics). Defaults to entire audio length.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeStatSummary", + "type": "boolean", + "description": "Optional. Whether to include statistical summaries (mean, median, stddev) for metrics over segments. Default is true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the calculated audio metrics, each with their numeric values and optionally statistical summaries if segmentDuration > 0. Metrics include loudness (LUFS), pitch (Hz), tempo (BPM), and signal-to-noise ratio (dB), among others." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quantify audio characteristics for analysis, quality control, or feature extraction in music production, broadcasting, acoustic research, or audio content management. It helps AI agents provide actionable insights about audio files by extracting measurable properties suitable for reports or automated decision making.", + "limitations": "This tool does not perform audio editing or transformation; it only analyzes audio to compute metrics. It may not handle extremely noisy or corrupted audio files well and is limited to metrics explicitly supported. It does not provide semantic or transcription analysis.", + "examples": [ + "Calculate loudness and pitch metrics for a given music track URL.", + "Analyze tempo and signal-to-noise ratio over 10-second segments of a podcast audio file.", + "Generate a full audio metrics report from a base64-encoded audio string for quality assessment." + ] + }, + "tags": [ + "audio", + "metrics", + "analysis", + "signal-processing", + "music", + "broadcast", + "acoustics" + ], + "examples": [ + { + "inputJson": "{\"audioInput\":\"https://example.com/audio/song.mp3\",\"metrics\":[\"loudness\",\"pitch\"]}", + "description": "Calculate loudness and pitch metrics from an online music track." + }, + { + "inputJson": "{\"audioInput\":\"/local/path/podcast.wav\",\"metrics\":[\"tempo\",\"snr\"],\"segmentDuration\":10}", + "description": "Analyze tempo and signal-to-noise ratio in 10-second segments of a podcast audio file." + }, + { + "inputJson": "{\"audioInput\":\"data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEAgLsAAAB3AQACABAAZGF0YQAAAAA=\",\"metrics\":[],\"includeStatSummary\":false}", + "description": "Compute full set of metrics from a base64-encoded WAV audio string without statistical summaries." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "audio-processing.createNotification", + "description": "Creates an audio notification message using text-to-speech synthesis, based on provided text and optional audio parameters. It accepts input text and settings for voice, speed, pitch, and volume, then produces a synthesized audio clip in MP3 or WAV format suitable for playback in notification systems.", + "category": "audio-processing", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "Text content to be converted into audio notification speech.", + "required": true, + "defaultValue": "" + }, + { + "name": "voice", + "type": "string", + "description": "Voice profile or speaker identifier for the TTS engine (e.g., male, female, specific language accent).", + "required": false, + "defaultValue": "default" + }, + { + "name": "speed", + "type": "number", + "description": "Speech rate multiplier where 1.0 is normal speed; values less than 1 slow down, greater than 1 speed up speech.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "pitch", + "type": "number", + "description": "Pitch adjustment as a multiplier where 1.0 is default pitch, lower values make voice deeper, higher values higher-pitched.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "volume", + "type": "number", + "description": "Output volume level from 0.0 (mute) to 1.0 (max volume).", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "format", + "type": "string", + "description": "Audio output file format, typically 'mp3' or 'wav'.", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "language", + "type": "string", + "description": "Language code for voice synthesis to support correct pronunciation (e.g., 'en-US', 'fr-FR').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated audio file data encoded as a base64 string, the format of the file, and metadata such as duration in seconds." + }, + "aiAgent": { + "useCase": "This tool is appropriate for AI agents tasked with generating audio notifications for applications such as alert systems, reminders, or accessibility features. When a textual message must be conveyed via synthesized speech, this tool creates a ready-to-play audio clip customizable by voice characteristics and audio format.", + "limitations": "This tool cannot create notifications with background music or complex sound effects; it only synthesizes speech from text. It may have limited voice selections based on the underlying TTS engine capabilities, and requires clean input text for best results.", + "examples": [ + "Generate an audio alert saying 'Battery low, please charge your device' in a female voice, slow speed, in MP3 format.", + "Create a notification sound from text 'Meeting starts in 10 minutes' using default voice and pitch in WAV format.", + "Synthesize 'Your download is complete' with a male voice, normal speed and volume, language English US." + ] + }, + "tags": [ + "text-to-speech", + "audio-synthesis", + "notification", + "alert", + "voice", + "tts", + "audio-processing" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Battery low, please charge your device\",\"voice\":\"female\",\"speed\":0.8,\"format\":\"mp3\"}", + "description": "Generate a slow female voice MP3 notification for a battery alert." + }, + { + "inputJson": "{\"text\":\"Meeting starts in 10 minutes\",\"format\":\"wav\"}", + "description": "Create a WAV audio notification with default voice settings." + }, + { + "inputJson": "{\"text\":\"Your download is complete\",\"voice\":\"male\",\"language\":\"en-US\"}", + "description": "Synthesize a male voice notification for download completion with US English pronunciation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "image-processing.renderReport", + "description": "Generates a comprehensive image analysis report by processing input images to extract key features, statistics, and visual summaries. Accepts one or more images and parameters controlling analysis type and report format, producing a detailed, multi-page PDF or HTML report documenting findings and visualizations.", + "category": "image-processing", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "Array of image files encoded as base64 strings or image URLs to be analyzed and included in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform on images e.g., 'colorAnalysis', 'objectDetection', 'textureFeatures'.", + "required": true, + "defaultValue": "colorAnalysis" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to include graphs and annotated images in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Output report format, either 'pdf' or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "title", + "type": "string", + "description": "Custom title for the generated report.", + "required": false, + "defaultValue": "Image Analysis Report" + }, + { + "name": "author", + "type": "string", + "description": "Report author name to include in metadata and title page.", + "required": false, + "defaultValue": "" + }, + { + "name": "detailedMetrics", + "type": "boolean", + "description": "Include detailed numerical metrics and extended analysis in report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report data including a binary encoded file compatible with the requested format, its mime type, and summary metadata." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to generate a formal, shareable report from image data analysis. It automates extraction of meaningful image features and compiles these with visualizations into a coherent document, supporting decision-making or presentation needs.", + "limitations": "The tool depends on input image quality and does not perform advanced interpretative analysis beyond preset analysis types. It cannot edit or enhance images, only analyze and summarize them.", + "examples": [ + "Generate a PDF report analyzing color distributions and texture features from uploaded satellite images.", + "Create an HTML report including object detection results with annotated images from security camera footage.", + "Produce a detailed image analysis report titled 'Field Photos Overview' authored by 'Dr. Smith' in PDF format." + ] + }, + "tags": [ + "image-processing", + "report-generation", + "image-analysis", + "visualization", + "pdf", + "html", + "automation" + ], + "examples": [ + { + "inputJson": "{\"images\":[\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\"],\"analysisType\":\"colorAnalysis\",\"includeVisualizations\":true,\"reportFormat\":\"pdf\",\"title\":\"Monthly Color Analysis\",\"author\":\"Data Team\",\"detailedMetrics\":false}", + "description": "Generate a color analysis report with visualizations for one uploaded image in PDF format." + }, + { + "inputJson": "{\"images\":[\"https://example.com/image1.jpg\",\"https://example.com/image2.jpg\"],\"analysisType\":\"objectDetection\",\"includeVisualizations\":true,\"reportFormat\":\"html\",\"title\":\"Security Camera Analysis\",\"author\":\"Security Dept\",\"detailedMetrics\":true}", + "description": "Produce an HTML report with object detection results including annotated images for two remote images." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "notifications.createSchema", + "description": "Generates a JSON schema definition for notification payloads based on provided field specifications. Accepts an array of field definitions including name, type, and required status, and outputs a JSON schema that can be used for validating notification message formats.", + "category": "notifications", + "parameters": [ + { + "name": "fields", + "type": "array", + "description": "An array of field definitions specifying the name, data type, and whether each field is required in the notification schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaTitle", + "type": "string", + "description": "A human-readable title for the generated JSON schema representing the notification structure.", + "required": false, + "defaultValue": "\"NotificationPayload\"" + }, + { + "name": "schemaDescription", + "type": "string", + "description": "A descriptive text explaining the purpose or use of the notification schema.", + "required": false, + "defaultValue": "\"Schema for validating notification payloads.\"" + } + ], + "returns": { + "type": "object", + "description": "A valid JSON schema object representing the structure and validation rules for a notification payload as specified by the input fields." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create JSON schemas that define and validate the structure of notification messages or payloads for alerts, ensuring consistency and correctness before sending notifications.", + "limitations": "This tool only creates schema definitions from flat or simple nested field definitions; it does not generate schemas from complex conditional logic or deeply nested objects automatically.", + "examples": [ + "Create a schema for a notification with fields: title (string, required), message (string, required), timestamp (number, optional).", + "Generate a schema for user alert notifications including alertType (string), severity (string), and recipientEmail (string, required)." + ] + }, + "tags": [ + "notifications", + "schema", + "json-schema", + "validation", + "alerts", + "payload" + ], + "examples": [ + { + "inputJson": "{\"fields\":[{\"name\":\"title\",\"type\":\"string\",\"required\":true},{\"name\":\"message\",\"type\":\"string\",\"required\":true},{\"name\":\"timestamp\",\"type\":\"number\",\"required\":false}],\"schemaTitle\":\"AlertNotification\",\"schemaDescription\":\"Schema for alert notification payloads.\"}", + "description": "Create a JSON schema for an alert notification with title, message as required strings and optional timestamp as number." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "email-communication.formatLink", + "description": "This tool accepts a URL and optional display text, and formats it into an HTML anchor tag suitable for embedding in email content. It ensures the link is properly encoded and optionally adds attributes like target and rel for best email client compatibility, outputting HTML string for use in email templates.", + "category": "email-communication", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL to be linked in the email content, required for creating the anchor tag.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "Optional text displayed as the clickable link. If empty, the URL itself will be used as the display text.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Whether to add target=\"_blank\" attribute so the link opens in a new tab when clicked. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "addNofollow", + "type": "boolean", + "description": "Whether to add rel=\"nofollow\" attribute to the link for SEO or tracking purposes. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted HTML anchor tag string in the 'formattedHtml' property." + }, + "aiAgent": { + "useCase": "Use email-communication.formatLink when composing or automating email content that includes external URLs. This tool ensures that links are properly formatted in HTML for email clients, handling attributes like opening in new tabs and nofollow tags to comply with email best practices and deliverability.", + "limitations": "This tool does not validate the URL for safety or availability; it only formats given input into an anchor tag. It does not embed link tracking parameters or shorten URLs.", + "examples": [ + "Format a link with default display text (the URL itself).", + "Format a link with custom display text and open it in a new tab.", + "Format a link with nofollow attribute enabled to discourage SEO value passing." + ] + }, + "tags": [ + "email", + "formatting", + "link", + "html", + "template" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"Visit Example\",\"openInNewTab\":true,\"addNofollow\":false}", + "description": "Formats a link with custom text that opens in a new tab." + }, + { + "inputJson": "{\"url\":\"https://openai.com\",\"displayText\":\"\",\"openInNewTab\":false,\"addNofollow\":true}", + "description": "Formats a link showing URL as text with nofollow attribute." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "monitoring.analyzeChannel", + "description": "Analyzes communication channel performance by processing input metrics such as bandwidth usage, latency, error rates, and traffic patterns. It identifies anomalies, performance bottlenecks, and trends, then outputs a detailed report with metrics summary, alerts, and recommendations for optimization.", + "category": "monitoring", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Unique identifier of the communication channel to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names to analyze, e.g., ['latency','bandwidth','errorRate'].", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp indicating analysis start time.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 timestamp indicating analysis end time.", + "required": true, + "defaultValue": "" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional thresholds to flag alerts for specific metrics, e.g., {'latency': 200, 'errorRate': 0.05}.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include optimization recommendations in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics of the analyzed metrics, detected anomalies or violations of thresholds, and a textual report with insights and recommendations if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the performance and health of a specific communication channel by analyzing collected monitoring data. It helps detect issues like high latency, packet loss, or traffic surges, and provides actionable insights to improve channel reliability and efficiency.", + "limitations": "This tool requires pre-collected monitoring data for the specified channel and timeframe; it cannot retrieve raw traffic data itself. It does not analyze unstructured communication content or decrypt encrypted channels.", + "examples": [ + "Analyze bandwidth and latency issues for channel 'chan123' over the past 24 hours.", + "Check error rates exceeding 1% on communication channel 'chan42' in the last week.", + "Provide a performance summary and recommendations for channel 'voice001' for the last business day." + ] + }, + "tags": [ + "monitoring", + "performance", + "communication", + "analysis", + "network", + "channel", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"chan123\",\"metrics\":[\"latency\",\"bandwidth\"],\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-02T00:00:00Z\",\"thresholds\":{\"latency\":150},\"includeRecommendations\":true}", + "description": "Analyze latency and bandwidth for channel 'chan123' over a 24-hour period with latency alert threshold set at 150 ms, including recommendations." + }, + { + "inputJson": "{\"channelId\":\"voice001\",\"metrics\":[\"errorRate\"],\"startTime\":\"2024-05-25T08:00:00Z\",\"endTime\":\"2024-05-25T18:00:00Z\",\"includeRecommendations\":false}", + "description": "Check error rates on communication channel 'voice001' during working hours with no optimization recommendations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "security-tools.draftArticle", + "description": "Creates a detailed, coherent security-focused article draft based on provided topics, target audience, and key points. Accepts input parameters specifying article purpose, target audience expertise, topic outlines, and optional length constraints. Processes these inputs to generate clear, structured text that can be used as a foundation for security best practices, vulnerability awareness, or compliance documentation.", + "category": "security-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Primary topic or theme of the security article to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience's expertise level, e.g., beginners, IT professionals, executives.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of key points or subtopics to cover within the article.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the article, e.g., formal, conversational, technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "desiredLength", + "type": "number", + "description": "Approximate desired length of the article in words.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted article text and metadata such as word count." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate structured, informative content focused on security topics, suitable for training materials, blog posts, internal documentation, or awareness campaigns. It helps quickly produce drafts tailored to the audience's knowledge level and specific security themes.", + "limitations": "The tool does not fact-check or guarantee up-to-date security information. The draft may require expert review and editing to ensure accuracy and compliance with the latest standards.", + "examples": [ + "Draft an article on phishing threats for beginner IT staff highlighting detection and prevention.", + "Create a technical overview of zero-trust architecture for cybersecurity professionals including key components.", + "Generate a conversational piece about data privacy importance aimed at corporate executives, approx 800 words." + ] + }, + "tags": [ + "security", + "content-generation", + "documentation", + "article", + "writing", + "cybersecurity" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"phishing threats and prevention\",\"targetAudience\":\"beginner IT staff\",\"keyPoints\":[\"what is phishing\",\"common techniques\",\"signs of phishing emails\",\"best practices to prevent phishing\"],\"tone\":\"formal\",\"desiredLength\":800}", + "description": "Drafting an article about phishing aimed at beginner IT staff covering basics and prevention tips." + }, + { + "inputJson": "{\"topic\":\"zero-trust security architecture\",\"targetAudience\":\"cybersecurity professionals\",\"keyPoints\":[\"principles of zero-trust\",\"network segmentation\",\"continuous verification\",\"related technologies\"],\"tone\":\"technical\",\"desiredLength\":1200}", + "description": "Generating technical article on zero-trust security architecture for professionals with deep concepts." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Article", + "context": null + } + }, + { + "name": "security-tools.composeReference", + "description": "This tool accepts a collection of security-related documents, standards, or guidelines as input and composes a consolidated and well-structured security reference document. It processes multiple security references to produce a unified, organized output that can be used as a comprehensive security best practices guide or audit reference.", + "category": "security-tools", + "parameters": [ + { + "name": "inputDocuments", + "type": "array", + "description": "An array of security documents, standards, or guideline texts or URLs to be combined into the reference document.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the composed reference document, e.g. markdown, HTML, or PDF.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section highlighting key security concepts at the beginning of the composed reference.", + "required": false, + "defaultValue": "true" + }, + { + "name": "referenceTitle", + "type": "string", + "description": "Title of the composed reference document to be used in headings and metadata.", + "required": false, + "defaultValue": "Security Reference Guide" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the composed document, e.g. 'en' for English. Defaults to English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed security reference document content and metadata, including the formatted text and the format type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to merge multiple security policies, best practice documents, or standards into a single comprehensive reference guidance document, facilitating audits, training, or security program design. It helps unify dispersed security information into an accessible format.", + "limitations": "Cannot generate original security content beyond what is provided; it does not validate the technical accuracy or compliance of the input documents, and does not replace expert security consultation.", + "examples": [ + "Compose a consolidated security reference from NIST and ISO 27001 guidelines in markdown.", + "Generate a PDF reference guide combining internal security policies and OWASP best practices.", + "Create a summarized security reference document from multiple text files for training purposes." + ] + }, + "tags": [ + "security", + "reference", + "compose", + "documentation", + "guidelines", + "standards", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputDocuments\":[\"NIST Cybersecurity Framework summary text\",\"ISO 27001 controls overview text\"],\"outputFormat\":\"markdown\",\"includeSummary\":true,\"referenceTitle\":\"Consolidated Security Reference\",\"language\":\"en\"}", + "description": "Compose a markdown security reference combining NIST and ISO standards with a summary section." + }, + { + "inputJson": "{\"inputDocuments\":[\"Internal network security policy text\",\"OWASP Top 10 summary\"],\"outputFormat\":\"pdf\",\"includeSummary\":false,\"referenceTitle\":\"Company Security Reference\",\"language\":\"en\"}", + "description": "Generate a PDF security reference document from internal policies and OWASP guidelines without summary." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Reference", + "context": null + } + }, + { + "name": "customer-support.analyzeChannel", + "description": "Analyzes customer support communication channels by processing interaction logs or live conversation data to generate insights on channel performance, customer sentiment, common issues, and response effectiveness. Accepts inputs such as channel type, communication records, and analysis parameters, then outputs a detailed report with metrics and recommendations.", + "category": "customer-support", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel to analyze (e.g., chat, email, phone)", + "required": true, + "defaultValue": "" + }, + { + "name": "interactionData", + "type": "array", + "description": "Array of interaction records including messages, timestamps, and metadata", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range filter with 'startDate' and 'endDate' in ISO format to limit analysis", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag to enable customer sentiment analysis within interactions", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the interactions for proper processing and analysis", + "required": false, + "defaultValue": "en" + }, + { + "name": "summaryOnly", + "type": "boolean", + "description": "If true, returns a summarized report instead of detailed metrics", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing performance metrics (e.g., average response time, customer satisfaction score), sentiment summary, common issue categories, and improvement recommendations for the specified channel." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating or monitoring the effectiveness of a specific customer service channel to understand customer sentiment, identify recurring problems, and optimize support strategies. It helps in decision-making for resource allocation and training needs based on data-driven insights.", + "limitations": "This tool does not handle real-time conversation routing or live chat assistance. It requires structured interaction data and may have reduced accuracy for languages or slang not supported in its language processing modules.", + "examples": [ + "Analyze the customer support chat logs from the last month for sentiment trends and average response times.", + "Provide a summary report on email support channel interactions over the past quarter highlighting common complaints.", + "Evaluate phone support interactions to identify peak periods and customer satisfaction scores." + ] + }, + "tags": [ + "customer support", + "analysis", + "communication channel", + "sentiment analysis", + "performance metrics" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"chat\",\"interactionData\":[{\"message\":\"Hello, I have an issue with my order.\",\"timestamp\":\"2024-05-10T09:15:00Z\",\"agentId\":\"A123\"},{\"message\":\"I can help you with that! Can you provide your order number?\",\"timestamp\":\"2024-05-10T09:16:00Z\",\"agentId\":\"A123\"}],\"timeRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"},\"includeSentimentAnalysis\":true}", + "description": "Analyze all chat interactions during May 2024 including sentiment for customer messages." + }, + { + "inputJson": "{\"channelType\":\"email\",\"interactionData\":[{\"message\":\"My shipment is delayed, please update.\",\"timestamp\":\"2024-04-15T14:00:00Z\"},{\"message\":\"We apologize for the delay, your package will arrive soon.\",\"timestamp\":\"2024-04-15T14:30:00Z\"}],\"summaryOnly\":true}", + "description": "Get a summarized performance report for email support based on recent interaction data." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "customer-support.draftSentence", + "description": "Generates a clear and polite customer support sentence based on the provided context, intent, and tone. Accepts input details like issue description, requested action, and preferred tone, then produces a well-formed sentence suitable for customer communication.", + "category": "customer-support", + "parameters": [ + { + "name": "issueDescription", + "type": "string", + "description": "A brief description of the customer's issue or inquiry that the sentence addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "desiredAction", + "type": "string", + "description": "The action or response the customer support agent intends to communicate (e.g., apology, refund offer, troubleshooting step).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the sentence to be drafted, such as polite, empathetic, formal, or friendly.", + "required": false, + "defaultValue": "polite" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the sentence output, e.g., 'en' for English, 'es' for Spanish.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted support sentence as a string suitable for direct communication with the customer." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create or customize short, context-aware sentences for customer support communications, such as responses to customer inquiries, apologies, or guidance messages. Particularly useful for agents or automated systems that need to maintain politeness and clarity in customer interactions.", + "limitations": "The tool does not handle complex multi-sentence replies or long-form emails; it's designed for single, clear sentences. It also cannot fully replace human judgment for sensitive or complex customer service scenarios.", + "examples": [ + "Generate a polite sentence apologizing for delayed shipment.", + "Draft a friendly sentence offering troubleshooting steps for a login issue.", + "Create a formal sentence confirming receipt of a refund request." + ] + }, + "tags": [ + "customer support", + "communication", + "sentence drafting", + "politeness", + "tone", + "customer interaction" + ], + "examples": [ + { + "inputJson": "{\"issueDescription\":\"Customer reports delay in shipment\",\"desiredAction\":\"apologize and assure quick resolution\",\"tone\":\"empathetic\",\"language\":\"en\"}", + "description": "Draft an empathetic sentence apologizing for a delayed shipment and assuring quick resolution." + }, + { + "inputJson": "{\"issueDescription\":\"Customer forgot password\",\"desiredAction\":\"provide reset password instructions\",\"tone\":\"friendly\",\"language\":\"en\"}", + "description": "Create a friendly sentence guiding the customer on how to reset their password." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "customer-support.generateQuote", + "description": "Generates a detailed price quote for a customer based on specified product or service details, quantities, discounts, and customer information. Accepts input parameters describing the customer's needs and returns a formatted quote including itemized costs, total price, and validity period.", + "category": "customer-support", + "parameters": [ + { + "name": "customerName", + "type": "string", + "description": "Name of the customer or company requesting the quote.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of products or services to be quoted, each with fields: description (string), quantity (number), unitPrice (number).", + "required": true, + "defaultValue": "" + }, + { + "name": "discountPercent", + "type": "number", + "description": "Optional overall discount percentage to apply to the subtotal before tax.", + "required": false, + "defaultValue": "0" + }, + { + "name": "taxPercent", + "type": "number", + "description": "Applicable tax percentage to be added to the subtotal after discount.", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the quote (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the quote is valid from the generation date.", + "required": false, + "defaultValue": "30" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or terms to include in the quote document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured quote including customer information, itemized pricing details, subtotal, discounts, tax, total price, currency, generation date, expiration date, and optional notes." + }, + "aiAgent": { + "useCase": "Use this tool when a customer requests a price estimate based on specific products or services, quantities, and applicable discounts or taxes. It helps generate a professional, itemized quote for review or sending to the customer.", + "limitations": "This tool does not connect to live pricing databases or inventory systems, and cannot automatically apply complex pricing rules or promotions beyond the given discount percent input.", + "examples": [ + "Generate a quote for 10 units of Product A at $15 each, with 5% discount, 8% tax for customer 'Acme Corp'.", + "Create a quote including multiple service items with different prices and no discount.", + "Produce a quote in EUR for 5 items, valid for 15 days with additional notes about payment terms." + ] + }, + "tags": [ + "customer-support", + "quote-generation", + "pricing", + "sales", + "estimation" + ], + "examples": [ + { + "inputJson": "{\"customerName\":\"Acme Corp\",\"items\":[{\"description\":\"Product A\",\"quantity\":10,\"unitPrice\":15}],\"discountPercent\":5,\"taxPercent\":8,\"currency\":\"USD\",\"validityDays\":30,\"notes\":\"Thank you for your business.\"}", + "description": "Generate quote for Acme Corp with a single product, discount, tax, and notes." + }, + { + "inputJson": "{\"customerName\":\"Beta LLC\",\"items\":[{\"description\":\"Consulting Service\",\"quantity\":3,\"unitPrice\":200},{\"description\":\"Training Session\",\"quantity\":1,\"unitPrice\":500}],\"discountPercent\":0,\"taxPercent\":10,\"currency\":\"USD\",\"validityDays\":45,\"notes\":\"Please pay within 30 days.\"}", + "description": "Quote for multiple services with no discount and tax applied." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "customer-support.generateYAML", + "description": "Generates a YAML formatted document for customer support configurations or templates based on provided structured input. Accepts JSON or object specifying elements like FAQ entries, response templates, ticket categories, and outputs a valid YAML string representing the configuration for use in help desks or chatbot systems.", + "category": "customer-support", + "parameters": [ + { + "name": "configData", + "type": "object", + "description": "Structured object containing customer support configuration data such as FAQs, templates, and categories to be converted into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include descriptive comments in the generated YAML to explain sections and entries.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the generated YAML. Typical values are 2 or 4.", + "required": false, + "defaultValue": "2" + }, + { + "name": "version", + "type": "string", + "description": "Optional version or schema identifier to include in the YAML metadata section.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'yamlString' which holds the YAML representation of the provided customer support configuration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to output or transform customer support related configuration data—such as FAQs, response templates, or ticket category definitions—into a clean, readable YAML format suitable for integration with help desk software or chatbot engines. It assists with converting structured JSON or objects into YAML for deployment or sharing.", + "limitations": "This tool does not validate the semantic correctness of the customer support content beyond structure conversion, nor does it merge configurations or handle conflicts in input data. It only converts given structured input into YAML format.", + "examples": [ + "Generate a YAML config from a list of FAQs and canned response templates for onboarding support.", + "Convert a structured ticket routing configuration into YAML for help desk ingestion.", + "Output a customer support knowledge base config as YAML for configuration file deployment." + ] + }, + "tags": [ + "customer-support", + "yaml", + "configuration", + "template-generation", + "faq", + "helpdesk", + "chatbot" + ], + "examples": [ + { + "inputJson": "{\"configData\":{\"faqs\":[{\"question\":\"How to reset password?\",\"answer\":\"Click 'Forgot password' on login page.\"},{\"question\":\"What are your support hours?\",\"answer\":\"Support is available 9am-5pm EST.\"}],\"templates\":{\"greeting\":\"Hello! How can I assist you today?\",\"closing\":\"Thank you for contacting support.\"},\"ticketCategories\":[\"billing\",\"technical\",\"general\"]},\"includeComments\":true,\"indentationSpaces\":2,\"version\":\"1.0\"}", + "description": "Generate YAML for a typical customer support FAQ and templates including comments and indentation of 2 spaces, including a version tag." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "marketing-automation.formatLink", + "description": "Formats marketing URLs by appending UTM parameters and optionally shortening the link. Accepts a base URL and campaign details, processes query parameters to generate a fully formed tracking URL, and returns either the full URL or a shortened version if requested.", + "category": "marketing-automation", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The original URL to be formatted and tagged with tracking parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "utmSource", + "type": "string", + "description": "The source parameter for UTM tracking, e.g., 'google', 'newsletter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "utmMedium", + "type": "string", + "description": "The medium parameter for UTM tracking, e.g., 'cpc', 'email'.", + "required": true, + "defaultValue": "" + }, + { + "name": "utmCampaign", + "type": "string", + "description": "The campaign name parameter for UTM tracking, e.g., 'spring_sale'.", + "required": true, + "defaultValue": "" + }, + { + "name": "utmTerm", + "type": "string", + "description": "Optional UTM term parameter for paid search keywords.", + "required": false, + "defaultValue": "" + }, + { + "name": "utmContent", + "type": "string", + "description": "Optional UTM content parameter used to differentiate ads or links.", + "required": false, + "defaultValue": "" + }, + { + "name": "shorten", + "type": "boolean", + "description": "If true, returns a shortened version of the formatted URL using a URL shortening service.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted URL and, if requested, the shortened URL as well." + }, + "aiAgent": { + "useCase": "Use this tool when generating marketing links for campaigns requiring tracking with standardized UTM parameters. Helps automate appending consistent tracking info to URLs for analytics. Also useful when shortened links are needed for cleaner display or social media.", + "limitations": "The tool cannot verify URL accessibility or domain validity. Shortening depends on external URL shortener availability and may fail if service is down or quota is exceeded.", + "examples": [ + "Generate a campaign URL with UTM parameters for an email blast.", + "Generate a shortened UTM-tracked link for social media.", + "Create a full tracking URL without shortening for Google Ads." + ] + }, + "tags": [ + "marketing", + "automation", + "link", + "utm", + "tracking", + "url", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://example.com/product\",\"utmSource\":\"newsletter\",\"utmMedium\":\"email\",\"utmCampaign\":\"summer_sale\",\"utmTerm\":\"\",\"utmContent\":\"button_click\",\"shorten\":false}", + "description": "Format a marketing URL with UTM parameters for an email newsletter campaign without shortening." + }, + { + "inputJson": "{\"baseUrl\":\"https://example.com/landing\",\"utmSource\":\"google\",\"utmMedium\":\"cpc\",\"utmCampaign\":\"launch2024\",\"utmTerm\":\"shoes\",\"utmContent\":\"ad1\",\"shorten\":true}", + "description": "Create a shortened tracking URL for a Google Ads campaign targeting shoes search terms." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "finance-tools.draftReport", + "description": "Generates a detailed financial report based on provided transaction data, date range, and report type. It processes accounting entries to summarize income, expenses, and key financial metrics, producing a structured report suitable for management review or accounting purposes.", + "category": "finance-tools", + "parameters": [ + { + "name": "transactions", + "type": "array", + "description": "List of financial transaction objects including date, amount, category, and description to be analyzed in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) of the reporting period covering transactions included in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) of the reporting period covering transactions included in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of financial report to generate. Options include 'incomeStatement', 'balanceSheet', or 'cashFlow'.", + "required": true, + "defaultValue": "incomeStatement" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed transaction breakdowns in the report output; otherwise summarizes totals only.", + "required": false, + "defaultValue": "false" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to display monetary values in the report.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "A structured financial report object including summary totals, categorized figures, and optionally detailed transaction lists, formatted according to the report type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate standardized financial reports from raw transaction data by specifying the reporting period and desired report type. It helps automate accounting summaries for management, auditing, or bookkeeping processes.", + "limitations": "This tool does not perform data validation beyond basic format checks and assumes input transactions are accurate. It does not replace detailed accounting software and does not produce legally certified financial statements.", + "examples": [ + "Generate an income statement for Q1 of 2024 including detailed transactions.", + "Draft a balance sheet for the fiscal year 2023 in EUR without detailed breakdowns.", + "Create a cash flow report for the month of May 2024 summarizing all cash movements." + ] + }, + "tags": [ + "finance", + "reporting", + "accounting", + "financial statement", + "automated report", + "transaction analysis" + ], + "examples": [ + { + "inputJson": "{\"transactions\":[{\"date\":\"2024-01-15\",\"amount\":5000,\"category\":\"Revenue\",\"description\":\"Product sales\"},{\"date\":\"2024-01-20\",\"amount\":-1500,\"category\":\"Expense\",\"description\":\"Office rent\"}],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"reportType\":\"incomeStatement\",\"includeDetails\":true,\"currency\":\"USD\"}", + "description": "Generate a detailed income statement report for Q1 2024 showing all transactions in USD." + }, + { + "inputJson": "{\"transactions\":[{\"date\":\"2023-12-31\",\"amount\":10000,\"category\":\"Assets\",\"description\":\"Cash balance\"},{\"date\":\"2023-12-31\",\"amount\":-3000,\"category\":\"Liabilities\",\"description\":\"Loan payable\"}],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\",\"reportType\":\"balanceSheet\",\"includeDetails\":false,\"currency\":\"EUR\"}", + "description": "Create a summarized balance sheet for fiscal year 2023 in EUR without detailed transactions." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "finance-tools.createLink", + "description": "Creates a secure, trackable hyperlink to financial documents or resources. Accepts input details such as target URL, access permissions, link expiration, and optional descriptive metadata. Processes these inputs to generate a unique, shareable link with embedded access controls. Outputs the URL and metadata for integration or distribution.", + "category": "finance-tools", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the financial document or resource to link.", + "required": true, + "defaultValue": "" + }, + { + "name": "accessPermissions", + "type": "string", + "description": "Access level for the link (e.g., 'read-only', 'edit', 'restricted').", + "required": true, + "defaultValue": "read-only" + }, + { + "name": "expirationDate", + "type": "string", + "description": "ISO 8601 formatted date when the link expires. If empty, the link does not expire.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description or label for the link.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyEmails", + "type": "array", + "description": "List of email addresses to notify when the link is created (optional).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created link URL and associated metadata including expiration and permissions." + }, + "aiAgent": { + "useCase": "Use this tool to generate secure, managed hyperlinks for sharing financial reports, invoices, or sensitive documents within a team or with external stakeholders. It ensures controlled access and optional expiration to maintain confidentiality and auditability.", + "limitations": "This tool does not host financial documents or validate the content of the URLs provided. It also does not handle user authentication beyond link access permissions.", + "examples": [ + "Create a read-only share link for Q1 financial report with expiration in 30 days.", + "Generate a link with edit permissions for a shared budget spreadsheet without expiration.", + "Create a secure link and notify finance team members by email upon link creation." + ] + }, + "tags": [ + "finance", + "link-generation", + "security", + "sharing", + "access-control", + "document-management" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://company.com/reports/Q1-financial.pdf\",\"accessPermissions\":\"read-only\",\"expirationDate\":\"2024-07-31T23:59:59Z\",\"description\":\"Q1 Financial Report\"}", + "description": "Create a read-only link to the Q1 financial report with expiration." + }, + { + "inputJson": "{\"targetUrl\":\"https://company.com/budget/2024-sheet\",\"accessPermissions\":\"edit\",\"expirationDate\":\"\",\"description\":\"2024 Budget Spreadsheet\"}", + "description": "Create an edit-permission link to budget spreadsheet without expiration." + }, + { + "inputJson": "{\"targetUrl\":\"https://company.com/invoices/INV-12345.pdf\",\"accessPermissions\":\"restricted\",\"expirationDate\":\"2024-06-30T23:59:59Z\",\"description\":\"Invoice 12345\",\"notifyEmails\":[\"finance-team@company.com\",\"auditor@company.com\"]}", + "description": "Create a restricted access link for an invoice and notify finance and auditor emails." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "translation.analyzeKPI", + "description": "This tool accepts translation project performance data such as translation speed, accuracy rates, cost per word, and client satisfaction scores. It performs analytical processing to identify key performance indicators (KPIs), trends, and bottlenecks in translation workflows. The output is a detailed report summarizing these KPIs with actionable insights to improve translation quality and efficiency.", + "category": "translation", + "parameters": [ + { + "name": "projectData", + "type": "object", + "description": "An object containing translation project metrics including speed, accuracy, cost, and customer feedback.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisPeriod", + "type": "string", + "description": "Timeframe for KPI analysis, e.g., 'last_month', 'Q1_2024'.", + "required": false, + "defaultValue": "last_month" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to include trend analysis over the specified period.", + "required": false, + "defaultValue": "true" + }, + { + "name": "kpiThresholds", + "type": "object", + "description": "Custom thresholds defining acceptable KPI values for alerts and recommendations.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured analytics report object summarizing key KPIs for translation projects with insights and recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to evaluate and monitor performance metrics related to translation projects, measuring aspects like speed, quality, and cost efficiency to optimize operational workflows and client satisfaction.", + "limitations": "This tool analyzes numerical and structured data related to translation KPIs but does not perform actual translation or language quality assessment of content itself.", + "examples": [ + "Analyze translation speed and accuracy KPIs for last quarter.", + "Generate KPI report including trends and recommendations for translation cost efficiency.", + "Evaluate translation project customer satisfaction scores against predefined thresholds." + ] + }, + "tags": [ + "translation", + "analytics", + "KPI", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"projectData\":{\"translationSpeedWph\":2000,\"accuracyPercent\":97,\"costPerWord\":0.12,\"clientSatisfactionScore\":4.5},\"analysisPeriod\":\"Q1_2024\",\"includeTrends\":true,\"kpiThresholds\":{\"accuracyPercent\":95,\"costPerWord\":0.15}}", + "description": "Analyzing translation project KPIs for Q1 2024 with custom accuracy and cost thresholds, including trend analysis." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "translation.renderReport", + "description": "Translates the textual content of a structured report document from a source language to a target language while preserving the original report format and layout. Accepts input as text with optional sections and outputs the translated report maintaining headings and sections.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The full textual content of the report to be translated, including headings and body text.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') of the original report text.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The desired language code into which the report should be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Whether to maintain the original report's formatting, such as headings and sections, in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeGlossary", + "type": "object", + "description": "An optional glossary object mapping terms to preferred translations to ensure consistency with domain-specific vocabulary.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated report text and a summary of translation metadata, including detected languages and formatting status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to translate complete report documents from one language to another while preserving their structure and formatting, such as financial reports, technical documents, or academic papers. It helps in multilingual contexts where accurate section-based translation is needed without losing the document's coherence and layout.", + "limitations": "This tool cannot translate embedded images, charts, or non-textual elements and relies on text input only. It may not perfectly preserve complex or highly customized formatting. Domain-specific jargon requires a supplied glossary for best accuracy.", + "examples": [ + "Translate a quarterly financial report from English to Spanish preserving the section headings.", + "Convert a technical research report from German to English with domain-specific term replacements.", + "Render a marketing report originally in French into Japanese, maintaining the original document's structure." + ] + }, + "tags": [ + "translation", + "report", + "document", + "structured-text", + "multilingual", + "format-preservation" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Executive Summary\\nThis quarter showed a 10% increase in revenue.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"preserveFormatting\":true}", + "description": "Translate a brief report section from English to French preserving formatting." + }, + { + "inputJson": "{\"sourceText\":\"Introduction\\nDie technische Analyse zeigt positive Trends.\",\"sourceLanguage\":\"de\",\"targetLanguage\":\"en\",\"includeGlossary\":{\"technische Analyse\":\"technical analysis\"}}", + "description": "Translate a German technical introduction to English with a glossary for domain terms." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "copywriting.formatDataset", + "description": "Formats a raw dataset of marketing or promotional text entries into a clean, stylistically consistent dataset suitable for copywriting use. Accepts input as an array of raw text objects and applies transformations like text normalization, tone adjustment, and keyword highlighting. Outputs a formatted dataset ready for marketing content creation.", + "category": "copywriting", + "parameters": [ + { + "name": "rawDataset", + "type": "array", + "description": "Array of raw text objects to format, each containing at minimum a 'text' property.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetTone", + "type": "string", + "description": "Desired tone style to apply, e.g., 'formal', 'casual', 'enthusiastic'.", + "required": false, + "defaultValue": "\"formal\"" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "List of keywords or phrases to emphasize in the text entries.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "normalizeWhitespace", + "type": "boolean", + "description": "Whether to normalize whitespace within the text entries.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length per text entry after formatting, truncating if necessary.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted dataset as an array of text entries with consistent style and applied formatting." + }, + "aiAgent": { + "useCase": "Use this tool to clean, unify, and enhance datasets of marketing copy or promotional text for further use in copywriting tasks, ad generation, or content refinement. It helps standardize tone and highlight key messages across a dataset.", + "limitations": "Cannot generate new creative text beyond formatting and minor tone adjustments; it does not perform complex rewriting or ideation.", + "examples": [ + "Format a raw marketing slogans dataset to a casual tone emphasizing specific product features.", + "Normalize a bulk dataset of promotional blurbs to ensure consistent length and style before publication.", + "Highlight brand-specific keywords across an input dataset and ensure all texts follow a formal tone." + ] + }, + "tags": [ + "copywriting", + "dataset", + "formatting", + "marketing", + "text normalization", + "tone adjustment" + ], + "examples": [ + { + "inputJson": "{\"rawDataset\":[{\"text\":\"buy our product now! limited time offer.\"},{\"text\":\"exclusive deal just for you.\"}],\"targetTone\":\"casual\",\"highlightKeywords\":[\"limited time offer\",\"exclusive deal\"],\"normalizeWhitespace\":true,\"maxLength\":100}", + "description": "Format a small dataset to a casual tone, emphasize key promotional phrases, normalize spacing, and limit length." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "copywriting.buildPullRequest", + "description": "Generates a detailed, well-structured pull request description optimized for clarity and persuasion. Accepts inputs like the code change summary, list of changed files, related issue references, and optional audience tone. Outputs a formatted pull request body suitable for GitHub or similar platforms.", + "category": "copywriting", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The concise title of the pull request summarizing the main change.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "A detailed explanation of what the pull request does, including context and motivation.", + "required": true, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of strings naming the files modified in this pull request.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "relatedIssues", + "type": "array", + "description": "References to relevant issue or ticket numbers, e.g., ['#123', 'JIRA-456'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author to personalize the pull request description.", + "required": false, + "defaultValue": "" + }, + { + "name": "audienceTone", + "type": "string", + "description": "Tone style for the pull request text (e.g., formal, casual, technical).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeTestingNotes", + "type": "boolean", + "description": "Whether to include a section describing testing performed for the changes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted pull request title and body string ready for submission." + }, + "aiAgent": { + "useCase": "Use this tool when preparing pull requests to ensure the descriptions are clear, comprehensive, and tailored to the intended audience, helping reviewers quickly understand the changes and relevant context. Ideal for automating or enhancing commit message quality in software development workflows.", + "limitations": "Does not generate code diffs or analyze the quality of code changes. Relies on user input for factual accuracy and completeness of descriptions.", + "examples": [ + "Generate a pull request description for fixing a login bug, referencing issue #452, listing changed files, and using a technical tone.", + "Create a casual style pull request message summarizing an added feature with author name included and testing notes.", + "Build a PR description without related issues or testing notes, focusing only on summary and changed files." + ] + }, + "tags": [ + "copywriting", + "software development", + "pull request", + "automation", + "documentation", + "developer tools" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Fix login button disabled state\",\"summary\":\"Corrects the disabled state logic on the login button causing it to remain disabled after failed attempts.\",\"changedFiles\":[\"src/components/LoginButton.js\",\"src/utils/validation.js\"],\"relatedIssues\":[\"#452\"],\"authorName\":\"Alice\",\"audienceTone\":\"technical\",\"includeTestingNotes\":true}", + "description": "Technical tone PR description for a bug fix with related issue and testing notes." + }, + { + "inputJson": "{\"title\":\"Add user profile preview feature\",\"summary\":\"Introduces a new hoverable user profile preview card in the sidebar navigation to improve user engagement.\",\"changedFiles\":[\"src/components/UserPreview.js\",\"src/styles/UserPreview.css\"],\"relatedIssues\":[],\"authorName\":\"Bob\",\"audienceTone\":\"casual\",\"includeTestingNotes\":false}", + "description": "Casual style PR description for a new feature without related issues or testing notes." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "content-creation.buildPackage", + "description": "This tool generates a fully structured code package based on user inputs such as package name, version, description, programming language, and dependencies. It creates essential files including a README, license, manifest (package.json or equivalent), and optionally source and test folders, returning a zip archive ready for distribution or further development.", + "category": "content-creation", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "The name of the package to create. Required to define the project namespace and folder.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "The initial version number for the package, adhering to semantic versioning.", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "description", + "type": "string", + "description": "A short description of the package's purpose or functionality.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "language", + "type": "string", + "description": "Programming language or ecosystem of the package (e.g., \"JavaScript\", \"Python\", \"Java\").", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencies", + "type": "object", + "description": "Key-value pairs mapping dependency names to their versions (e.g., {\"express\": \"^4.0.0\"}).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to include a basic test folder and sample test file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "licenseType", + "type": "string", + "description": "Type of license to include in the package (e.g., \"MIT\", \"Apache-2.0\", or empty for none).", + "required": false, + "defaultValue": "\"MIT\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated package as a base64 encoded zip archive string and metadata about the package including name, version, and file list." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate a ready-to-use code package scaffold for a specific project, configured with initial metadata, dependencies, and common files. It enables rapid project bootstrapping for developers or for automated code creation.", + "limitations": "Does not write actual application logic beyond sample test file; does not publish to any package registry; limited to common license types; dependency resolution is static (no deep version resolution or conflict checks).", + "examples": [ + "Create a new JavaScript npm package named 'my-lib' with Express dependency.", + "Build a Python package 'data-tools' version 0.1.0 with no dependencies and MIT license.", + "Generate a Java package scaffold including JUnit test folder and Apache-2.0 license." + ] + }, + "tags": [ + "package", + "code", + "scaffold", + "generator", + "library", + "project", + "bootstrap", + "development" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"my-lib\",\"version\":\"1.0.0\",\"description\":\"Utility library for data processing.\",\"language\":\"JavaScript\",\"dependencies\":{\"express\":\"^4.17.1\"},\"includeTests\":true,\"licenseType\":\"MIT\"}", + "description": "Create a JavaScript package called 'my-lib' with Express dependency, tests, and MIT license." + }, + { + "inputJson": "{\"packageName\":\"data-tools\",\"language\":\"Python\",\"includeTests\":false,\"licenseType\":\"MIT\"}", + "description": "Build a minimal Python package named 'data-tools' without tests and with MIT license." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "data-analytics.createExpense", + "description": "Creates a structured expense record from input data including amount, date, category, description, and optional metadata. Validates the input fields, normalizes date format, assigns unique expense ID, and outputs a standardized expense object for further analytics or record-keeping.", + "category": "data-analytics", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "The monetary value of the expense in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The ISO 4217 currency code for the expense amount, e.g., USD or EUR.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "date", + "type": "string", + "description": "The date when the expense occurred, in ISO 8601 format or common date string formats to be normalized.", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "Expense category such as Travel, Meals, Office Supplies, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief explanation or note describing the expense.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional details like project codes, vendor name, payment method.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the validated and normalized expense record with fields: expenseId (unique ID), amount, currency, date (ISO 8601), category, description, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a consistent, validated expense entity from raw input data, for purposes such as expense tracking, reporting, or integration with financial systems. It ensures the data is standardized and enriched with an ID for referencing.", + "limitations": "Does not perform complex currency conversions or tax calculations. Does not interface directly with external accounting systems; output is a single expense record only.", + "examples": [ + "Create a new travel expense for $450.75 USD on 2024-06-01 with description 'Flight to conference'.", + "Add an office supplies expense of 123.45 EUR dated June 2nd, 2024, category 'Office Supplies', including project code metadata.", + "Record a meal expense of 67 USD on 2024-05-30 with vendor details in metadata." + ] + }, + "tags": [ + "data-analytics", + "create", + "expense", + "finance", + "record-keeping", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"amount\":450.75,\"currency\":\"USD\",\"date\":\"2024-06-01\",\"category\":\"Travel\",\"description\":\"Flight to conference\",\"metadata\":{\"vendor\":\"Airline Co\"}}", + "description": "Create a travel expense record including amount, date, category, description, and vendor." + }, + { + "inputJson": "{\"amount\":123.45,\"currency\":\"EUR\",\"date\":\"June 2, 2024\",\"category\":\"Office Supplies\",\"description\":\"Printer ink and paper\",\"metadata\":{\"projectCode\":\"PRJ-1001\"}}", + "description": "Add an office supplies expense with localized date format and additional project code metadata." + }, + { + "inputJson": "{\"amount\":67,\"currency\":\"USD\",\"date\":\"2024-05-30\",\"category\":\"Meals\",\"description\":\"Team lunch\",\"metadata\":{\"paymentMethod\":\"Credit Card\"}}", + "description": "Record a meal expense with payment method detail in metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "data-analytics.createDiagram", + "description": "Creates a customizable data visualization diagram from structured data inputs. Accepts data as arrays or objects, processes data according to selected diagram type and options, and outputs a rendered diagram in SVG or PNG format suitable for reports or presentations.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Structured dataset to visualize, as an array of objects representing rows or records", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to create, e.g., 'bar', 'line', 'pie', 'scatter'", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title of the diagram for display purposes", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the x-axis if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the y-axis if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme to apply to the diagram for visual styling", + "required": false, + "defaultValue": "default" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output diagram file, e.g., 'svg' or 'png'", + "required": false, + "defaultValue": "svg" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output diagram in pixels", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output diagram in pixels", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "An object containing the diagram image as a base64-encoded string along with metadata including format, width, and height." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize structured data sets by generating common types of diagrams such as bar charts, line graphs, pie charts, or scatter plots, especially when a visual image output (SVG or PNG) is required for embedding in reports or presentations. It is suitable for exploratory data analysis or summary visualizations.", + "limitations": "Cannot process unstructured text or generate highly customized infographics beyond the supported diagram types and styling options. Large datasets may impact rendering performance. Does not support interactive diagrams, only static image outputs.", + "examples": [ + "Create a bar chart showing monthly sales from a dataset.", + "Generate a pie chart diagram of market share by company from data.", + "Produce a scatter plot diagram colored by category with axis labels for a dataset." + ] + }, + "tags": [ + "data visualization", + "diagram", + "chart", + "graph", + "analytics", + "reporting", + "svg", + "png" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":100},{\"month\":\"Feb\",\"sales\":150}],\"diagramType\":\"bar\",\"title\":\"Monthly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales\",\"colorScheme\":\"blue\",\"outputFormat\":\"svg\",\"width\":800,\"height\":600}", + "description": "Bar chart of monthly sales data with axis labels and blue color scheme." + }, + { + "inputJson": "{\"data\":[{\"category\":\"A\",\"value\":40},{\"category\":\"B\",\"value\":60}],\"diagramType\":\"pie\",\"title\":\"Market Share\",\"colorScheme\":\"pastel\",\"outputFormat\":\"png\",\"width\":600,\"height\":600}", + "description": "Pie chart showing market share by category with pastel colors as a PNG image." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "data-validation.createHeading", + "description": "Generates a validated heading string based on input parameters like text content, heading level, and optional formatting rules. Ensures the heading text meets length and character requirements and outputs a sanitized, properly formatted heading string suitable for document or UI use.", + "category": "data-validation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The main content of the heading to be created; must be a non-empty string.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level indicating the importance or hierarchy, typically an integer from 1 to 6.", + "required": true, + "defaultValue": "1" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the heading text; text longer than this will be truncated. Use 0 for no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "allowSpecialCharacters", + "type": "boolean", + "description": "Indicates whether special characters are allowed in the heading text. If false, special characters will be removed.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Determines whether leading and trailing whitespace should be trimmed from the text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string and metadata including the validated heading level and the final heading text." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create standardized and validated heading text for documents, web content, or UI elements ensuring hierarchical correctness, length constraints, and sanitized content. Particularly useful to enforce consistency and prevent invalid or malformed headings in generated content.", + "limitations": "This tool does not generate graphical or formatted headings beyond text validation and basic formatting; it cannot embed styling or semantic HTML tags beyond level indication.", + "examples": [ + "Create a level 2 heading from user input text ensuring no special characters and maximum length 50.", + "Generate a heading level 1 with preset short title text trimming whitespace.", + "Create a level 3 heading allowing special characters for a document section title." + ] + }, + "tags": [ + "data-validation", + "heading", + "text-formatting", + "content-quality", + "UI-text", + "document-processing" + ], + "examples": [ + { + "inputJson": "{\"text\":\" Welcome to the Site! \",\"level\":1,\"maxLength\":30,\"allowSpecialCharacters\":false,\"trimWhitespace\":true}", + "description": "Create a level 1 heading by trimming whitespace and removing special characters, limiting to 30 characters." + }, + { + "inputJson": "{\"text\":\"User's Guide: Chapter #3\",\"level\":3,\"maxLength\":0,\"allowSpecialCharacters\":true,\"trimWhitespace\":false}", + "description": "Create a level 3 heading with special characters allowed and no length limit, keeping whitespace intact." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "etl-processes.formatTable", + "description": "Formats tabular data supplied as an array of objects or array of arrays by applying transformations such as column renaming, reordering, filtering, padding, and cell value formatting, producing a consistently structured and optionally styled table output suitable for downstream processing or display.", + "category": "etl-processes", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "Input table data as an array of objects or array of arrays representing rows, required for formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnOrder", + "type": "array", + "description": "Optional array specifying the desired order of columns by name or index to reorder columns accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "columnRenameMap", + "type": "object", + "description": "Optional object mapping existing column names to new names to rename specified columns.", + "required": false, + "defaultValue": "" + }, + { + "name": "filterRows", + "type": "string", + "description": "Optional filter expression or code (e.g., JavaScript) to select rows to keep based on row data.", + "required": false, + "defaultValue": "" + }, + { + "name": "padColumns", + "type": "object", + "description": "Optional object specifying padding for columns, where keys are column names and values define padding rules (e.g., left/right padding and pad character).", + "required": false, + "defaultValue": "" + }, + { + "name": "cellFormatRules", + "type": "array", + "description": "Optional array of rules to format individual cell values, each rule defining target columns and a formatting function or pattern.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted table; options include 'arrayOfObjects' or 'arrayOfArrays'.", + "required": false, + "defaultValue": "arrayOfObjects" + } + ], + "returns": { + "type": "object", + "description": "The formatted table data matching the requested output format, reflecting all applied transforms such as renaming, filtering, and formatting." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to standardize or clean tabular data extracted from diverse sources before analysis, visualization, or export. It helps in reorganizing columns, renaming headers, filtering out irrelevant rows, and formatting cell contents consistently.", + "limitations": "Does not perform complex data validation, aggregation, or statistical transformations and requires input data to be well-structured as arrays of objects or arrays of arrays. Cannot interpret complex filter languages beyond simple provided code strings.", + "examples": [ + "Format a table by renaming columns and filtering out rows where 'status' is 'inactive'.", + "Reorder columns and pad numeric columns with leading zeros for alignment.", + "Convert a table of data to an array of arrays output format after applying cell-level formatting." + ] + }, + "tags": [ + "formatting", + "etl", + "table", + "data-cleaning", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"id\":1,\"name\":\"Alice\",\"status\":\"active\"},{\"id\":2,\"name\":\"Bob\",\"status\":\"inactive\"}],\"columnRenameMap\":{\"name\":\"fullName\"},\"filterRows\":\"row.status === 'active'\"}", + "description": "Rename 'name' to 'fullName' and filter out rows where 'status' is not 'active'." + }, + { + "inputJson": "{\"tableData\":[[101,\"John\",450],[102,\"Jane\",380]],\"columnOrder\":[2,0,1],\"padColumns\":{\"0\":{\"padChar\":\"0\",\"padSide\":\"left\",\"length\":5}}}", + "description": "Reorder columns moving the 3rd column first, pad first column with leading zeros to length 5." + }, + { + "inputJson": "{\"tableData\":[{\"product\":\"Apple\",\"price\":1.2},{\"product\":\"Banana\",\"price\":0.5}],\"cellFormatRules\":[{\"columns\":[\"price\"],\"format\":\"value => '$' + value.toFixed(2)\"}],\"outputFormat\":\"arrayOfArrays\"}", + "description": "Format price column cells as currency strings and output as array of arrays." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "database-management.formatXML", + "description": "Formats a raw or minified XML string into a human-readable, indented XML format. Accepts an XML string input and applies structured indentation and line breaks according to user-specified indentation style and size. Outputs the formatted, pretty-printed XML string for easier reading and debugging.", + "category": "database-management", + "parameters": [ + { + "name": "xmlInput", + "type": "string", + "description": "The raw XML string that needs formatting. This input must be a valid XML content.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces to use for each indentation level. Typical values are 2 or 4.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "If true, uses tab characters for indentation instead of spaces. Overrides indentationSize.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "The maximum line length before line wrapping elements or attributes. Use 0 for no wrapping.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted XML string under the property 'formattedXml', and an optional 'error' message if formatting failed." + }, + "aiAgent": { + "useCase": "Use this tool when you receive XML data that is minified or poorly formatted, and you want to present it in a readable, indented structure to improve human inspection, editing, or debugging. It is especially useful for database export data or configuration XML that requires clarity.", + "limitations": "Does not validate XML against schemas or DTDs; assumes input is well-formed XML. It does not convert or transform XML data, only formats existing content. Large XML files may take longer to format.", + "examples": [ + "Format a compact XML string into readable indented XML with 4 spaces per level.", + "Convert XML with tabs indentation instead of spaces for readability in certain editors.", + "Wrap attributes that exceed the max line length to improve readability." + ] + }, + "tags": [ + "formatting", + "xml", + "database", + "pretty-print", + "indenting", + "string-processing" + ], + "examples": [ + { + "inputJson": "{\"xmlInput\":\"<root><child attr=\\\"value\\\">Text</child><child>More</child></root>\",\"indentationSize\":4,\"useTabs\":false,\"maxLineLength\":80}", + "description": "Format a compact XML into readable form with 4 spaces indentation." + }, + { + "inputJson": "{\"xmlInput\":\"<root><child>Test</child></root>\",\"useTabs\":true}", + "description": "Format XML using tabs for indentation instead of spaces." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "XML", + "context": null + } + }, + { + "name": "database-management.createBudget", + "description": "Creates a new budget record in a database by accepting details such as budget name, total amount, period, and optional category tags. It validates inputs, stores the budget data, and returns the created budget ID along with a confirmation message.", + "category": "database-management", + "parameters": [ + { + "name": "budgetName", + "type": "string", + "description": "The name/title of the budget to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "totalAmount", + "type": "number", + "description": "The total monetary value allocated in the budget", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date of the budget period in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date of the budget period in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "categories", + "type": "array", + "description": "Optional list of category tags associated with this budget", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text about the budget", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique budget ID and a success confirmation message" + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and register a new budget record in a database system. This is useful in financial planning applications, budgeting software, or business management tools needing structured budget data storage. It helps automate budget setup with validation.", + "limitations": "Does not handle budget updates or deletions, nor does it enforce complex budget constraints like allocations per category beyond basic tagging.", + "examples": [ + "Create a marketing budget for Q3 with a total of $50,000 and categories 'Advertising' and 'Events'.", + "Add a new annual budget for IT expenses starting Jan 1st to Dec 31st with total $120,000.", + "Create a simple budget named 'Miscellaneous' with no categories and a total of $5,000." + ] + }, + "tags": [ + "database", + "budget", + "create", + "financial", + "management", + "planning" + ], + "examples": [ + { + "inputJson": "{\"budgetName\":\"Q3 Marketing Campaign\",\"totalAmount\":50000,\"startDate\":\"2024-07-01\",\"endDate\":\"2024-09-30\",\"categories\":[\"Advertising\",\"Events\"],\"description\":\"Budget for all marketing activities in Q3.\"}", + "description": "Create a budget for Q3 marketing activities with specified total and categories." + }, + { + "inputJson": "{\"budgetName\":\"IT Annual Budget\",\"totalAmount\":120000,\"startDate\":\"2024-01-01\",\"endDate\":\"2024-12-31\",\"categories\":[\"Hardware\",\"Software\"],\"description\":\"Annual IT expenses budget.\"}", + "description": "Create an annual budget for IT department with broad categories." + }, + { + "inputJson": "{\"budgetName\":\"Miscellaneous\",\"totalAmount\":5000,\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"categories\":[],\"description\":\"Small flexible budget for incidental expenses.\"}", + "description": "Create a simple short-term budget without categories." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Budget", + "context": null + } + }, + { + "name": "testing-automation.draftText", + "description": "This tool generates draft text content tailored for automated testing scenarios. It accepts input parameters such as context, tone, length, and style to produce relevant text snippets suitable for use as test data, simulated user input, or documentation placeholders. The output is a string containing the drafted text based on the specified requirements.", + "category": "testing-automation", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "Describes the context or subject matter for the drafted text to ensure relevance.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Specifies the tone or style of the text such as formal, casual, technical, or humorous.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Desired approximate length of the drafted text in words.", + "required": false, + "defaultValue": "50" + }, + { + "name": "includeSentences", + "type": "number", + "description": "Minimum number of sentences the drafted text should contain, overrides length if specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') to generate the draft text in a specific language.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted text string as generated based on the input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when automated test scripts or documentation require realistic, context-aware sample text to simulate user inputs, UI placeholders, or narrative content without manual writing. It helps quickly generate varied text for testing form inputs, UI rendering, or text handling logic.", + "limitations": "It does not perform semantic validation of text accuracy or domain-specific expert writing. The text generated is generic and may require review before use in critical contexts.", + "examples": [ + "Generate a casual drafted text about user registration error messages of about 40 words.", + "Draft a formal summary text describing a data processing module for use as placeholder documentation.", + "Create a short, humorous text snippet for a chatbot response simulation." + ] + }, + "tags": [ + "drafting", + "text-generation", + "testing", + "test-data", + "automation", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"context\":\"user registration error messages\",\"tone\":\"casual\",\"length\":40}", + "description": "Generate a casual drafted text about user registration error messages of about 40 words." + }, + { + "inputJson": "{\"context\":\"data processing module summary\",\"tone\":\"formal\",\"includeSentences\":3}", + "description": "Draft a formal summary text describing a data processing module for use as placeholder documentation with at least 3 sentences." + }, + { + "inputJson": "{\"context\":\"chatbot response\",\"tone\":\"humorous\",\"length\":30}", + "description": "Create a short, humorous text snippet for a chatbot response simulation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "testing-automation.createWorkflow", + "description": "Creates an automated testing workflow by accepting test definitions, triggers, and environment parameters, then generating a structured workflow configuration to orchestrate end-to-end test execution and reporting.", + "category": "testing-automation", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name of the testing workflow to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "testSteps", + "type": "array", + "description": "An ordered array of test step objects defining actions, assertions, and dependencies for the workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerType", + "type": "string", + "description": "Type of trigger for workflow execution, e.g., 'push', 'pull_request', 'schedule'.", + "required": false, + "defaultValue": "push" + }, + { + "name": "environment", + "type": "object", + "description": "Configuration object specifying environment variables and settings for test execution.", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationSettings", + "type": "object", + "description": "Settings defining notification channels and recipients for workflow results.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A generated workflow configuration object detailing the execution sequence, triggers, environment setup, and notifications for the automated test process." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create or modify automated testing workflows based on input scenarios, test steps, and execution parameters. It is useful for integrating testing with CI/CD pipelines by dynamically generating workflow definitions.", + "limitations": "This tool cannot execute the tests or validate test step correctness; it only creates the workflow definition. It does not support generating test scripts themselves or analyzing test results.", + "examples": [ + "Create a workflow triggered on pull request that runs unit and integration tests in a node environment with notifications to Slack.", + "Generate a scheduled nightly testing workflow that executes end-to-end UI tests with customized environment variables.", + "Build a workflow for running security tests on push events with email alerts on failure." + ] + }, + "tags": [ + "testing", + "automation", + "workflow", + "CI/CD", + "test-automation", + "pipeline" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"Nightly UI Tests\",\"testSteps\":[{\"name\":\"LaunchBrowser\",\"action\":\"start_browser\",\"params\":{\"browser\":\"chrome\"}},{\"name\":\"LoginTest\",\"action\":\"run_test\",\"params\":{\"testFile\":\"login.spec.js\"}},{\"name\":\"LogoutTest\",\"action\":\"run_test\",\"params\":{\"testFile\":\"logout.spec.js\"}}],\"triggerType\":\"schedule\",\"environment\":{\"NODE_ENV\":\"test\",\"BASE_URL\":\"https://staging.example.com\"},\"notificationSettings\":{\"channels\":[\"slack\"],\"recipients\":[\"qa-team@example.com\"]}}", + "description": "Creates a scheduled nightly testing workflow that launches Chrome browser and runs login and logout UI tests, with Slack notifications to QA team." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "devops.formatArticle", + "description": "Formats a technical article intended for devops documentation by parsing a markdown or plain text input and applying standardized formatting rules such as syntax highlighting for code blocks, consistent heading styles, and cleaning up whitespace. It outputs the article as a formatted markdown string ready for publishing or further processing.", + "category": "devops", + "parameters": [ + { + "name": "articleContent", + "type": "string", + "description": "The raw article content in markdown or plain text format to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The style guideline to apply for formatting, e.g., 'standard', 'github', or 'custom'.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "highlightCode", + "type": "boolean", + "description": "Whether to apply syntax highlighting to code blocks within the article.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length for paragraphs; lines will be wrapped accordingly.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article as a markdown string under 'formattedArticle'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize and clean technical devops articles before publishing or integration into deployment documents or wikis. It ensures consistency in formatting, code highlighting, and line wrapping, improving readability and professionalism in documentation.", + "limitations": "This tool focuses on formatting text and markdown only; it does not perform spell checking, grammar correction, or fact verification. It is not suitable for non-text media or complex document conversions.", + "examples": [ + "Format a raw Markdown article with standard style and code highlighting enabled.", + "Format a plain text devops article, disabling code highlighting, and using a custom style.", + "Wrap lines at 100 characters while formatting a deployment guide article." + ] + }, + "tags": [ + "formatting", + "devops", + "documentation", + "markdown", + "article", + "code-highlighting", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"articleContent\":\"# Deployment Guide\\nThis article explains the deployment steps.\\n```bash\\ndeploy.sh --env=prod\\n```\",\"formatStyle\":\"standard\",\"highlightCode\":true,\"maxLineLength\":80}", + "description": "Format a markdown article with code blocks using standard style and highlight code enabled." + }, + { + "inputJson": "{\"articleContent\":\"## Server Setup\\nFollow these steps:\\n1. Install Docker\\n2. Pull the image\\n3. Run the container\",\"formatStyle\":\"github\",\"highlightCode\":false,\"maxLineLength\":100}", + "description": "Format a markdown article without code highlighting, using GitHub style with 100 char wrap." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "devops.generateReadme", + "description": "Generates a comprehensive README.md file for a software project based on provided project metadata, features, setup instructions, usage examples, and contribution guidelines. Accepts structured input describing various sections and outputs a markdown formatted README file string.", + "category": "devops", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project to be included in the README title and introduction.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief summary describing the purpose and functionality of the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "A list of key features or highlights of the project to showcase capabilities.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step installation or setup instructions to help users get started with the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "string", + "description": "Code snippets or examples illustrating how to use the project effectively.", + "required": false, + "defaultValue": "" + }, + { + "name": "contributionGuidelines", + "type": "string", + "description": "Instructions or rules on how others can contribute to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "The license under which the project is released, typically shown in the README.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Contact details or links for support, feedback, or inquiries related to the project.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete README markdown content as a string, ready for saving or display, under the key 'readmeContent'. Contains sections like title, description, features, installation, usage, contribution, license, and contact if provided." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to automatically generate standardized and informative README documentation for a software project based on structured input data. It helps streamline project documentation during development or continuous integration.", + "limitations": "It cannot gather project information automatically from source code or repositories; the required inputs must be provided explicitly. It generates markdown text but does not validate markdown syntax or link correctness.", + "examples": [ + "Generate a README for a Node.js web server project including features and usage examples.", + "Create a README file with installation instructions, contribution guidelines, and license details for an open source library.", + "Produce a simple README with just project name and description for a prototype tool." + ] + }, + "tags": [ + "devops", + "documentation", + "readme", + "markdown", + "automation", + "project setup" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"AwesomeTool\",\"projectDescription\":\"A tool that automates database backups.\",\"features\":[\"Automatic scheduled backups\",\"Supports multiple databases\",\"Email notifications\"],\"installationInstructions\":\"1. Clone the repo\\n2. Run npm install\\n3. Configure your database credentials in config.json\",\"usageExamples\":\"node backup.js --run\",\"contributionGuidelines\":\"Please submit pull requests to the develop branch.\",\"license\":\"MIT\",\"contactInfo\":\"Email: support@awesometool.io\"}", + "description": "Generate a detailed README for an automated backup tool with features, installation, usage, contribution, license, and contact." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "devops.createCertificate", + "description": "Generates a TLS/SSL certificate with specified attributes for securing web servers and services. Accepts inputs such as common name, validity period, and key type; optionally creates a Certificate Signing Request (CSR) or self-signed certificate; outputs certificate data in PEM format along with private key if generated.", + "category": "devops", + "parameters": [ + { + "name": "commonName", + "type": "string", + "description": "The common name (CN) for the certificate, typically the domain name. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "altNames", + "type": "array", + "description": "Array of Subject Alternative Names (SANs) for the certificate (e.g., additional domain or IP names). Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the certificate should be valid. Default is 365 days.", + "required": false, + "defaultValue": "365" + }, + { + "name": "keyType", + "type": "string", + "description": "Type of key to generate: 'RSA' or 'ECDSA'. Default is 'RSA'.", + "required": false, + "defaultValue": "RSA" + }, + { + "name": "keySize", + "type": "number", + "description": "Size of the key in bits. For RSA, typically 2048 or 4096. For ECDSA, ignored. Default 2048.", + "required": false, + "defaultValue": "2048" + }, + { + "name": "isCA", + "type": "boolean", + "description": "Boolean indicating if the generated certificate should be a Certificate Authority (CA) certificate. Default false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "csrOnly", + "type": "boolean", + "description": "If true, only generates a Certificate Signing Request (CSR) and private key, not a signed certificate. Default false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "signingCert", + "type": "string", + "description": "PEM encoded certificate to sign with, if signing a leaf certificate. Optional; if omitted and csrOnly is false and isCA false, generates a self-signed certificate.", + "required": false, + "defaultValue": "" + }, + { + "name": "signingKey", + "type": "string", + "description": "PEM encoded private key corresponding to signingCert. Required if signingCert is provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing PEM encoded strings for the certificate (or CSR), private key, and if applicable, CA certificate chain." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate TLS/SSL certificates or CSRs for deployment automation and secure communication in infrastructure, including self-signed certificates or CA-signed requests.", + "limitations": "Does not handle certificate revocation, storage, or installation. Does not support all key types or encryption algorithms. Does not automate obtaining certificates from external CAs.", + "examples": [ + "Generate self-signed certificate for example.com valid 1 year", + "Generate CSR for domain with SANs to submit to external CA", + "Create CA certificate for internal signing" + ] + }, + "tags": [ + "certificate", + "tls", + "ssl", + "devops", + "security", + "automation", + "csr", + "self-signed" + ], + "examples": [ + { + "inputJson": "{\"commonName\":\"example.com\",\"altNames\":[\"www.example.com\",\"api.example.com\"],\"validityDays\":365,\"keyType\":\"RSA\",\"keySize\":2048,\"isCA\":false,\"csrOnly\":false}", + "description": "Generate a self-signed TLS certificate for example.com with SANs valid for one year." + }, + { + "inputJson": "{\"commonName\":\"internal-ca.local\",\"validityDays\":730,\"keyType\":\"ECDSA\",\"isCA\":true,\"csrOnly\":false}", + "description": "Generate an ECDSA CA certificate valid for two years, used for internal signing." + }, + { + "inputJson": "{\"commonName\":\"app.example.com\",\"altNames\":[\"app.example.com\"],\"csrOnly\":true}", + "description": "Generate a CSR and private key for app.example.com to submit to a public CA." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "devops.generateBlogPost", + "description": "Generates a detailed blog post related to DevOps topics such as deployment strategies, CI/CD pipelines, infrastructure automation, and best practices. Accepts inputs including topic keyword, target audience level, desired post length, and style preferences. Produces a structured blog post draft complete with headings, key points, and summary suitable for technical readers or general audiences.", + "category": "devops", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main topic or keyword for the blog post content, e.g., 'CI/CD pipelines' or 'infrastructure as code'.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceLevel", + "type": "string", + "description": "Target audience expertise level: 'beginner', 'intermediate', or 'expert'. This adjusts technical depth and terminology.", + "required": true, + "defaultValue": "" + }, + { + "name": "postLength", + "type": "number", + "description": "Approximate desired length of the blog post in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "style", + "type": "string", + "description": "Writing style or tone, e.g., 'informative', 'conversational', or 'formal'.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include practical examples or code snippets in the blog post.", + "required": false, + "defaultValue": "true" + }, + { + "name": "keywords", + "type": "array", + "description": "Additional keywords or phrases to emphasize within the blog post for SEO or topical relevance.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Structured output containing the blog post title, outline, full content, and metadata such as estimated reading time and recommended tags." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to autonomously create detailed, well-structured blog posts about DevOps topics to aid documentation, marketing content, or educational materials. Helpful for generating technical articles tailored to target audience expertise and specific subject matter focus.", + "limitations": "The tool cannot verify factual accuracy of complex technical content nor provide up-to-date state-of-art details beyond its training data. It does not access real-time external resources for content validation or personalized insights.", + "examples": [ + "Generate a 1500-word blog post about 'container orchestration' for intermediate DevOps engineers in an informative style including examples.", + "Create a beginner-friendly blog post on 'continuous integration' focusing on basic concepts and benefits, around 800 words.", + "Produce a formal technical article on 'infrastructure as code' targeting expert audience, about 1200 words, emphasizing advanced practices." + ] + }, + "tags": [ + "devops", + "blog", + "content-generation", + "documentation", + "ci/cd", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"CI/CD pipelines\",\"audienceLevel\":\"intermediate\",\"postLength\":1200,\"style\":\"informative\",\"includeExamples\":true,\"keywords\":[\"automation\",\"best practices\"]}", + "description": "Generate an informative 1200-word blog post on CI/CD pipelines targeting intermediate-level DevOps practitioners, including practical examples and emphasizing automation best practices." + }, + { + "inputJson": "{\"topic\":\"Infrastructure as Code\",\"audienceLevel\":\"expert\",\"postLength\":1500,\"style\":\"formal\",\"includeExamples\":false,\"keywords\":[]}", + "description": "Create a formal, detailed blog post of 1500 words about Infrastructure as Code for expert readers, focusing on advanced concepts without examples." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "devops.createVulnerability", + "description": "Creates a structured vulnerability report for a specified software component or system based on inputs describing the security issue. Accepts detailed vulnerability attributes including severity, affected components, description, and references. Processes inputs to generate a standardized vulnerability object suitable for integration into security management workflows.", + "category": "devops", + "parameters": [ + { + "name": "vulnerabilityId", + "type": "string", + "description": "Unique identifier for the vulnerability (e.g., CVE-YYYY-NNNN or internal ID).", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Concise summary title of the vulnerability.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the vulnerability, its impact, and affected components.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity rating of the vulnerability (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of software components, systems, or versions affected by the vulnerability.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "discoveredDate", + "type": "string", + "description": "Date when the vulnerability was discovered or reported (ISO 8601 format).", + "required": false, + "defaultValue": "" + }, + { + "name": "references", + "type": "array", + "description": "Array of URLs or documents that provide further information about the vulnerability.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isExploitable", + "type": "boolean", + "description": "Flag indicating if the vulnerability is currently known to be exploitable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A standardized vulnerability object containing all input details plus a generated timestamp and status field indicating report completeness." + }, + "aiAgent": { + "useCase": "Use this tool when you need to formalize and document a new or known vulnerability by creating a standardized record that can be consumed by security scanners, ticketing systems, or vulnerability management platforms. Ideal for automating vulnerability intake workflows and ensuring consistent data formatting.", + "limitations": "This tool does not perform vulnerability detection or scanning; it requires input vulnerability data. It also does not perform risk analysis or remediation suggestions.", + "examples": [ + "Create a vulnerability report for a newly found critical SQL injection in component X version 1.3.", + "Generate a standard vulnerability object for an outdated library with a known security flaw to integrate with tracking systems.", + "Record a Medium severity vulnerability affecting multiple microservices with references to the original security advisory." + ] + }, + "tags": [ + "devops", + "security", + "vulnerability", + "reporting", + "automation", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityId\":\"CVE-2024-12345\",\"title\":\"Remote Code Execution in WebApp XYZ\",\"description\":\"An RCE vulnerability allows attackers to execute arbitrary code remotely via unsanitized input in the login module.\",\"severity\":\"Critical\",\"affectedComponents\":[\"WebApp XYZ v2.1\",\"WebApp XYZ v2.2\"],\"discoveredDate\":\"2024-05-15\",\"references\":[\"https://security-advisories.example.com/CVE-2024-12345\"],\"isExploitable\":true}", + "description": "Create a detailed vulnerability report for a critical remote code execution vulnerability in WebApp XYZ versions 2.1 and 2.2." + }, + { + "inputJson": "{\"vulnerabilityId\":\"INT-0009\",\"title\":\"Outdated OpenSSL Library\",\"description\":\"Detected outdated OpenSSL library version 1.0.1 that is vulnerable to known risks.\",\"severity\":\"Medium\",\"affectedComponents\":[\"Backend Service A\"],\"discoveredDate\":\"2024-06-01\",\"references\":[],\"isExploitable\":false}", + "description": "Generate a vulnerability object for an outdated OpenSSL library used in a backend service with medium severity rating." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "devops.createReadme", + "description": "Generates a customized README.md file content for software projects based on provided project metadata, usage instructions, installation steps, contribution guidelines, and licensing information. Takes structured inputs to compose a clear, markdown-formatted documentation file text.", + "category": "devops", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The official name of the project to be documented.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief summary explaining what the project does and its key features.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions for installing the software or environment setup.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageInstructions", + "type": "string", + "description": "Examples or commands illustrating how to use the project once installed.", + "required": false, + "defaultValue": "" + }, + { + "name": "contributingGuidelines", + "type": "string", + "description": "Instructions and rules for contributing to the project, including code standards or processes.", + "required": false, + "defaultValue": "" + }, + { + "name": "licenseType", + "type": "string", + "description": "The project's open source license identifier or name to include in the README.", + "required": false, + "defaultValue": "MIT" + }, + { + "name": "includeBadges", + "type": "boolean", + "description": "Flag to include commonly used status badges (e.g., build status, coverage) at the top of the README.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'readmeContent' property with the full README markdown text as a string." + }, + "aiAgent": { + "useCase": "This tool should be used when automatically generating or updating project documentation files to ensure consistent and complete README.md files that help developers and users understand and use the project effectively. It aids continuous integration pipelines or project scaffolding tools where README generation is required.", + "limitations": "This tool generates static README content from provided inputs but does not fetch or infer dynamic project details such as API documentation or update badges from live services automatically.", + "examples": [ + "Create a README for a Python data analysis library with installation, usage, contribution, and MIT license included.", + "Generate a minimal README file for a small utility project with just name and description.", + "Produce a README including badges and detailed contributing instructions for an open-source CLI tool." + ] + }, + "tags": [ + "devops", + "documentation", + "readme", + "automation", + "project-setup", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"DataWizard\",\"projectDescription\":\"A Python library for intuitive data manipulation.\",\"installationInstructions\":\"pip install datawizard\",\"usageInstructions\":\"import datawizard\\n datawizard.transform(df)\",\"contributingGuidelines\":\"Please fork the repo, make changes, and submit a pull request.\",\"licenseType\":\"Apache-2.0\",\"includeBadges\":true}", + "description": "Full README generation with all sections and badges for a Python library." + }, + { + "inputJson": "{\"projectName\":\"QuickCLI\",\"projectDescription\":\"A simple command-line utility to parse logs.\",\"installationInstructions\":\"Download the binary from releases.\",\"usageInstructions\":\"quickcli --help\",\"contributingGuidelines\":\"\",\"licenseType\":\"MIT\",\"includeBadges\":false}", + "description": "README with essential information but no contribution guidelines or badges." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "backend-development.formatBlogPost", + "description": "Formats a raw blog post content by applying consistent styling, adding metadata, and structuring sections. Accepts input including title, author, tags, and raw content, then processes it to produce a well-structured HTML or Markdown formatted blog post output suitable for publishing or further processing.", + "category": "backend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Author's name to include in the blog post metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Raw main content of the blog post in plain text or minimal markdown.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords relevant to the blog post topic.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Desired output format: 'html' or 'markdown'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata (author, date, tags) in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "date", + "type": "string", + "description": "Publication date to include in metadata (ISO 8601 format). If omitted, current date is used.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted blog post content as a string, the output format used, and metadata if included." + }, + "aiAgent": { + "useCase": "Use when you need to convert raw blog post inputs into a consistent, well-formatted document ready for publishing on web platforms or blogs. Ideal for automating blog content pipelines to produce HTML or Markdown outputs with embedded metadata.", + "limitations": "Does not handle complex content conversion like embedded videos or interactive content; input expects mostly text and simple markdown. Does not publish or post the content, only formats it.", + "examples": [ + "Format a plain text blog post into HTML with metadata for publishing.", + "Convert a markdown-style draft into standardized markdown with front matter metadata.", + "Generate a clean HTML snippet from raw blog text including author and date tags." + ] + }, + "tags": [ + "backend", + "blog", + "formatting", + "content-management", + "html", + "markdown", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Introduction to AI\", \"author\":\"Jane Doe\", \"content\":\"AI is transforming the world.\\n\\nThis post explores key concepts.\", \"tags\":[\"AI\",\"technology\"], \"format\":\"html\", \"includeMetadata\":true, \"date\":\"2024-06-01\"}", + "description": "Format a simple AI blog post to HTML including metadata and tags." + }, + { + "inputJson": "{\"title\":\"Markdown Guide\", \"author\":\"John Smith\", \"content\":\"# Heading\\nThis is a markdown blog post.\", \"tags\":[\"markdown\",\"guide\"], \"format\":\"markdown\", \"includeMetadata\":false}", + "description": "Format a markdown blog post draft and output as markdown with no metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "BlogPost", + "context": null + } + }, + { + "name": "backend-development.createChangelog", + "description": "Generates a formatted changelog document from structured input describing versioned changes, including features, fixes, and updates. Accepts input as an array of release objects, processes the data to categorize changes, and outputs a markdown or plain text changelog string suitable for project documentation.", + "category": "backend-development", + "parameters": [ + { + "name": "releases", + "type": "array", + "description": "An array of release objects each containing version, date, and list of changes (features, fixes, etc.).", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated changelog document, e.g., 'markdown' or 'plaintext'.", + "required": false, + "defaultValue": "\"markdown\"" + }, + { + "name": "includeUnreleased", + "type": "boolean", + "description": "Whether to include an 'Unreleased' section for upcoming changes with no version number.", + "required": false, + "defaultValue": "false" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the changelog document, defaults to 'Changelog'.", + "required": false, + "defaultValue": "\"Changelog\"" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Optional date format string to format release dates in the changelog, e.g., 'YYYY-MM-DD'.", + "required": false, + "defaultValue": "\"YYYY-MM-DD\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the changelog as a string in the specified format under the key 'content'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or update a project changelog by consolidating versioned change data (features added, bugs fixed, etc.) into a standardized, human-readable changelog document for release notes, documentation, or repository files.", + "limitations": "Does not generate changes automatically from code diffs or commits; requires structured data input. Does not handle localization or extremely customized changelog formats out of the box.", + "examples": [ + "Create a markdown changelog from releases data for recent versions", + "Generate a plain text changelog including an unreleased section", + "Add a custom title and date format for changelog generation" + ] + }, + "tags": [ + "backend", + "documentation", + "release-management", + "versioning", + "changelog", + "automation" + ], + "examples": [ + { + "inputJson": "{\"releases\":[{\"version\":\"1.2.0\",\"date\":\"2024-05-10\",\"changes\":{\"added\":[\"Support for new authentication method\"],\"fixed\":[\"Login bug on mobile devices\"],\"changed\":[\"Updated dependency versions\"]}},{\"version\":\"1.1.0\",\"date\":\"2024-03-15\",\"changes\":{\"added\":[\"Initial feature set\"]}}],\"outputFormat\":\"markdown\",\"includeUnreleased\":false,\"title\":\"Project Changelog\",\"dateFormat\":\"YYYY-MM-DD\"}", + "description": "Generate a markdown changelog for two releases with features, fixes, and updates included." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Changelog", + "context": null + } + }, + { + "name": "web-development.generateReference", + "description": "Generates formatted reference sections or bibliographies for web content based on an input list of sources. Accepts source data including author, title, URL, publication date, and produces output in selected reference styles like APA, MLA or Chicago for seamless integration into web articles or documentation.", + "category": "web-development", + "parameters": [ + { + "name": "sources", + "type": "array", + "description": "List of source objects containing details like author, title, url, date, and optional fields for each reference entry.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Citation style to format references in (e.g., APA, MLA, Chicago).", + "required": true, + "defaultValue": "APA" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format, such as 'html' for embedding in web pages or 'markdown' for documentation.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeLinks", + "type": "boolean", + "description": "Whether to include clickable hyperlinks in output for source URLs.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortBy", + "type": "string", + "description": "Criteria to sort references by: style default, author, date, or none.", + "required": false, + "defaultValue": "style" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted reference section as a string with the selected output format, and metadata like total count of references." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate an accurate, properly formatted bibliography or reference section for web content, ensuring consistent citation formatting across different styles and output formats. It helps automate and standardize citation generation based on input source data from user or scraped content.", + "limitations": "Does not verify the accuracy or existence of source data; formatting is limited to common citation styles; does not generate references from unstructured text or perform citation extraction automatically.", + "examples": [ + "Generate an APA style reference list in HTML from array of source objects.", + "Create a markdown formatted MLA bibliography with clickable links.", + "Produce a Chicago style reference list sorted by publication date for a documentation page." + ] + }, + "tags": [ + "web", + "citation", + "reference", + "bibliography", + "formatting", + "APA", + "MLA", + "Chicago" + ], + "examples": [ + { + "inputJson": "{\"sources\":[{\"author\":\"Jane Doe\",\"title\":\"Modern Web Design\",\"url\":\"https://example.com/web-design\",\"date\":\"2021-09-15\"},{\"author\":\"John Smith\",\"title\":\"CSS Best Practices\",\"url\":\"https://css-tricks.com\",\"date\":\"2019-06-30\"}],\"style\":\"APA\",\"outputFormat\":\"html\",\"includeLinks\":true,\"sortBy\":\"author\"}", + "description": "Generate an APA formatted reference section as HTML, including clickable links, sorted by author." + }, + { + "inputJson": "{\"sources\":[{\"author\":\"Emily Taylor\",\"title\":\"Learning JavaScript\",\"url\":\"https://jslearn.com\",\"date\":\"2020-01-10\"}],\"style\":\"MLA\",\"outputFormat\":\"markdown\",\"includeLinks\":false}", + "description": "Create a single-source MLA styled bibliography in markdown without clickable links." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "web-development.generateXML", + "description": "Generates a well-formed XML document string from a given JavaScript object representing hierarchical data. Accepts an object structure with nested elements and attributes, applies optional formatting settings, and outputs a valid XML string suitable for web and data interchange purposes.", + "category": "web-development", + "parameters": [ + { + "name": "dataObject", + "type": "object", + "description": "The JavaScript object representing the XML structure, with keys as element names and values as element content or nested objects for child elements.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "The name of the root XML element to wrap the generated content in if not already specified in the dataObject.", + "required": false, + "defaultValue": "root" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "Whether to include the XML declaration header (e.g., <?xml version=\"1.0\" encoding=\"UTF-8\" ?>) at the start of the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indent", + "type": "string", + "description": "String used for indentation of nested elements for pretty-printing. Use empty string \"\" for no indentation (compact output).", + "required": false, + "defaultValue": " " + }, + { + "name": "attributePrefix", + "type": "string", + "description": "Prefix used in dataObject keys to denote XML attributes (e.g., \"@\" means keys starting with '@' represent attributes).", + "required": false, + "defaultValue": "@" + } + ], + "returns": { + "type": "string", + "description": "A string containing the generated, well-formed XML document based on the input data object and options." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured JavaScript objects into XML format for web services, configuration files, or data interchange where XML is required. It handles nested structures, attributes, and formatting options, enabling easy generation of XML from programmatic data.", + "limitations": "Does not validate the semantic correctness of XML content or enforce XML schema constraints. Input object must be properly structured to represent XML; circular references or unsupported data types may cause errors.", + "examples": [ + "Generate XML from a simple JS object with nested elements and attributes.", + "Convert data with a custom root element and without the XML declaration header.", + "Create compact XML output with no indentation and custom attribute prefix." + ] + }, + "tags": [ + "web-development", + "XML", + "data-formatting", + "serialization", + "web-services", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"dataObject\":{\"note\":{\"@date\":\"2024-06-20\",\"to\":\"Alice\",\"from\":\"Bob\",\"heading\":\"Reminder\",\"body\":\"Don't forget our meeting at 10 AM.\"}},\"rootElementName\":\"note\",\"includeDeclaration\":true,\"indent\":\" \",\"attributePrefix\":\"@\"}", + "description": "Generate XML for a note element with date attribute and child elements for content." + }, + { + "inputJson": "{\"dataObject\":{\"catalog\":{\"book\":{\"@id\":\"bk101\",\"author\":\"Gambardella, Matthew\",\"title\":\"XML Developer's Guide\"}}},\"rootElementName\":\"catalog\",\"includeDeclaration\":false,\"indent\":\"\",\"attributePrefix\":\"@\"}", + "description": "Generate compact XML representing a book catalog without declaration." + }, + { + "inputJson": "{\"dataObject\":{\"person\":{\"name\":\"John\",\"age\":30,\"city\":\"New York\"}},\"rootElementName\":\"persondata\",\"includeDeclaration\":true,\"indent\":\" \",\"attributePrefix\":\"attr_\"}", + "description": "Generate XML from a simple person object with custom root and attribute prefix (though none used here)." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "automation-frameworks.draftSummary", + "description": "This tool accepts a collection of text inputs such as meeting notes, reports, or documents and generates a concise, coherent summary. It processes the input by identifying key points, main ideas, and relevant details to output a distilled summary that captures the essence of the provided materials.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of text strings to be summarized. Each element can be a paragraph, note, or document section.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the summary in words or tokens to limit verbosity.", + "required": false, + "defaultValue": "200" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the input texts to optimize summarization model for correct linguistic processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to include a list of extracted key phrases or keywords along with the summary.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summaryStyle", + "type": "string", + "description": "Style of the summary output: options include 'concise', 'detailed', or 'bulletPoints'.", + "required": false, + "defaultValue": "concise" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the summary text and optionally key phrases if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the generation of readable summaries from multiple textual sources such as meeting transcripts, user feedback, or technical documents to save manual effort and improve information consolidation.", + "limitations": "The tool does not provide domain-specific analysis or interpret non-textual data. Summaries depend on input quality and may miss nuanced context or implicit meaning.", + "examples": [ + "Summarize a set of meeting notes from different sessions into a concise overview.", + "Create a bullet-point summary from a long technical report.", + "Generate a summary highlighting key phrases for user feedback data." + ] + }, + "tags": [ + "automation", + "summary", + "text-processing", + "natural-language", + "workflow", + "document", + "notes" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"The team discussed key project milestones and budget constraints.\",\"Client requested faster delivery timelines.\",\"Risks identified include resource shortages and technical debt.\"],\"maxSummaryLength\":100,\"language\":\"en\",\"includeKeyPhrases\":true,\"summaryStyle\":\"bulletPoints\"}", + "description": "Summarize multiple meeting notes with a bullet point style and include key phrases." + }, + { + "inputJson": "{\"texts\":[\"Our Q1 sales increased by 15% compared to last year.\",\"Marketing campaigns showed positive ROI.\",\"Areas for improvement: customer support and product delivery.\"],\"maxSummaryLength\":150,\"language\":\"en\",\"includeKeyPhrases\":false,\"summaryStyle\":\"concise\"}", + "description": "Generate a concise summary from quarterly sales report highlights without key phrases." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "automation-frameworks.draftParagraph", + "description": "Generates a coherent paragraph based on a given topic, style, and length. Accepts input parameters defining the subject, desired tone, and approximate word count, then constructs a natural language paragraph suitable for reports, emails, or documentation.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The subject or main idea that the paragraph should focus on.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The writing style or mood of the paragraph (e.g., formal, casual, persuasive).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate number of words the paragraph should contain.", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include examples to support the paragraph content.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph as a string under the 'paragraph' key." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate a concise and coherent paragraph for various automation contexts such as drafting emails, summaries, documentation sections, or reports, based on a specific topic and tone. It helps automate content creation in workflows requiring textual blocks of adjustable length and style.", + "limitations": "The tool does not generate complex multi-paragraph documents or handle highly specialized technical writing requiring expert knowledge. It may produce generic or surface-level content depending on the topic and parameters.", + "examples": [ + "Draft a formal paragraph about the benefits of automation in IT operations.", + "Create a casual paragraph describing the features of a new product.", + "Generate a persuasive paragraph encouraging users to adopt a new software tool." + ] + }, + "tags": [ + "content generation", + "automation", + "text drafting", + "paragraph", + "natural language" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of automation in IT operations\",\"tone\":\"formal\",\"wordCount\":120,\"includeExamples\":true}", + "description": "Generate a formal paragraph highlighting key advantages of IT automation with supporting examples." + }, + { + "inputJson": "{\"topic\":\"Features of the latest smartphone\",\"tone\":\"casual\",\"wordCount\":80,\"includeExamples\":false}", + "description": "Create a casual paragraph describing main features of a new smartphone product." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "automation-frameworks.createReadme", + "description": "Generates a well-structured README.md file for a project based on input parameters such as project name, description, installation instructions, usage examples, contribution guidelines, and license information. It processes these inputs to produce a comprehensive markdown document suitable for repositories.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project to include as the main title in the README.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A concise description explaining the purpose and features of the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step commands or guidance to install the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "string", + "description": "Example commands or code snippets demonstrating how to use the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "contributionGuidelines", + "type": "string", + "description": "Instructions for how others can contribute to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "licenseType", + "type": "string", + "description": "The license under which the project is released (e.g., MIT, Apache 2.0).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a markdown string with sections for title, description, installation, usage, contribution, and license." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to automate the creation of a standardized README.md file for software projects or automation scripts. It helps quickly produce consistent documentation from structured inputs, saving time and ensuring best practices in documentation.", + "limitations": "Does not generate content beyond provided inputs, such as code analysis or automatic feature descriptions. It requires accurate and sufficiently detailed input text to produce meaningful output.", + "examples": [ + "Create a README for a Node.js CLI tool with installation and usage instructions.", + "Generate README.md for a Python library including contribution guidelines and MIT license.", + "Produce a README for a web app project containing project description only." + ] + }, + "tags": [ + "documentation", + "automation", + "readme", + "markdown", + "project-setup", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Weather CLI\",\"projectDescription\":\"A command-line tool that fetches and displays current weather information.\",\"installationInstructions\":\"Run 'npm install -g weather-cli' to install.\",\"usageExamples\":\"weather-cli --city London\",\"contributionGuidelines\":\"Please fork the repo and submit pull requests.\",\"licenseType\":\"MIT\"}", + "description": "Generating a README for a simple Node.js CLI tool with full details." + }, + { + "inputJson": "{\"projectName\":\"DataPlotter\",\"projectDescription\":\"A Python library to create customizable plots from CSV data files.\",\"installationInstructions\":\"pip install dataplottter\",\"usageExamples\":\"import dataplottter\\ndataplot.plot(filename='data.csv')\",\"contributionGuidelines\":\"Contributions welcome via issues and pull requests.\",\"licenseType\":\"Apache 2.0\"}", + "description": "Create README for a Python plotting library including usage and contribution guidelines." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "automation-frameworks.createYAML", + "description": "Creates a YAML configuration string from structured input data. Accepts input as a JSON object or string representing nested configuration keys and values, formats it into properly indented YAML syntax, and outputs the YAML text. Supports options for indentation size and whether to use explicit document start markers.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The structured data representing configuration keys and values to convert into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the output YAML (usually 2 or 4).", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeDocumentStart", + "type": "boolean", + "description": "Whether to prepend the YAML output with the '---' document start marker.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted YAML string as 'yamlString'." + }, + "aiAgent": { + "useCase": "Use this tool when generating configuration files or automation scripts requiring YAML format from structured data within automation workflows. It enables seamless YAML creation from programmatically generated settings or input data without manual formatting.", + "limitations": "Cannot validate schema correctness of the YAML beyond syntax conversion. Does not handle custom YAML tags or anchors. Large deeply nested structures may impact formatting performance.", + "examples": [ + "Create a YAML config file from a JSON object representing CI/CD pipeline settings.", + "Generate a YAML deployment descriptor for a cloud service based on input parameters.", + "Convert a nested object of automation task definitions into YAML text to be saved or transmitted." + ] + }, + "tags": [ + "automation", + "YAML", + "configuration", + "formatting", + "data-conversion", + "devops" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"pipeline\":{\"stages\":[\"build\",\"test\",\"deploy\"]},\"environment\":\"production\"},\"indentation\":2,\"includeDocumentStart\":true}", + "description": "Generate a YAML string from a nested configuration object with 2-space indentation and document start marker." + }, + { + "inputJson": "{\"inputData\":{\"name\":\"BackupJob\",\"schedule\":\"0 2 * * *\",\"enabled\":true},\"indentation\":4,\"includeDocumentStart\":false}", + "description": "Create a YAML snippet for a scheduled backup job configuration with 4-space indentation without document start." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "statistics-tools.generateEvent", + "description": "Generates synthetic event data for analytics simulation and testing. Accepts parameters defining event characteristics such as event type, number of events, time range, attribute distributions, and outputs an array of event objects with timestamps and specified attributes. Useful for creating realistic datasets for statistical analysis and model validation.", + "category": "statistics-tools", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "The name or type of the event to generate (e.g., 'click', 'purchase').", + "required": true, + "defaultValue": "" + }, + { + "name": "numEvents", + "type": "number", + "description": "Total number of event records to generate.", + "required": true, + "defaultValue": "1000" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp for the start of event generation time window.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp for the end of event generation time window.", + "required": true, + "defaultValue": "" + }, + { + "name": "attributeDistributions", + "type": "object", + "description": "An object defining event attributes and their value distributions (e.g., {\"country\": [\"US\", \"FR\"], \"amount\": {\"min\": 10, \"max\": 100}}). Supports uniform or range-based generation.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "randomSeed", + "type": "number", + "description": "Optional seed for random number generator to produce reproducible event data.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "array", + "description": "An array of generated event objects each containing a timestamp, eventType, and additional attributes with values sampled according to specified distributions." + }, + "aiAgent": { + "useCase": "Use this tool to create realistic synthetic event datasets for testing analytics pipelines, validating statistical models, or simulating user behavior when real event data is unavailable or insufficient.", + "limitations": "Does not simulate complex causal interactions or dependent event sequences; attribute distributions are limited to basic uniform sampling or specified min-max ranges; temporal correlations between events are not modeled.", + "examples": [ + "Generate 500 purchase events between 2023-01-01 and 2023-01-31 with amount between 10 and 100 USD distributed uniformly.", + "Create 1000 click events over a 24-hour period across two countries: US and FR.", + "Produce 200 login events with timestamps spread evenly between two dates, no extra attributes." + ] + }, + "tags": [ + "generation", + "analytics", + "simulation", + "event-data", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"purchase\",\"numEvents\":500,\"startTime\":\"2023-01-01T00:00:00Z\",\"endTime\":\"2023-01-31T23:59:59Z\",\"attributeDistributions\":{\"amount\":{\"min\":10,\"max\":100}},\"randomSeed\":42}", + "description": "Generate 500 purchase events during January 2023 with amounts uniformly between 10 and 100." + }, + { + "inputJson": "{\"eventType\":\"click\",\"numEvents\":1000,\"startTime\":\"2023-06-01T00:00:00Z\",\"endTime\":\"2023-06-01T23:59:59Z\",\"attributeDistributions\":{\"country\":[\"US\",\"FR\"]}}", + "description": "Generate 1000 click events in one day distributed across US and FR countries." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "text-analysis.composeParagraph", + "description": "Generates a coherent and contextually relevant paragraph based on a given topic and optional style preferences. Accepts a topic string and parameters for tone and length, and produces a grammatically correct paragraph that aligns with the requested style and content focus.", + "category": "text-analysis", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The central subject or theme for the paragraph to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or mood of the paragraph, such as formal, informal, persuasive, or neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the paragraph in number of sentences; must be at least 1.", + "required": false, + "defaultValue": "5" + }, + { + "name": "keywords", + "type": "array", + "description": "An optional list of keywords to include or emphasize within the paragraph to guide content focus.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) for the paragraph composition.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed paragraph text as a string under the key 'paragraph'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a well-structured paragraph on a specified topic for applications like content creation, summarization, or messaging. It supports tone and length customization to fit different contexts, such as formal reports or casual communications.", + "limitations": "This tool cannot guarantee factual accuracy or domain-specific expert knowledge. It may produce generic content and should not be used for generating highly technical or sensitive information without external verification.", + "examples": [ + "Compose a formal paragraph about climate change.", + "Generate an informal short paragraph about weekend plans.", + "Create a persuasive paragraph emphasizing the importance of exercise." + ] + }, + "tags": [ + "text generation", + "paragraph composition", + "NLP", + "content creation", + "tone control", + "length customization", + "language" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"The benefits of renewable energy\",\"tone\":\"formal\",\"length\":6}", + "description": "Compose a formal paragraph discussing the advantages of renewable energy sources." + }, + { + "inputJson": "{\"topic\":\"Tips for effective time management\",\"tone\":\"informal\",\"length\":4,\"keywords\":[\"prioritize\",\"schedule\"]}", + "description": "Generate a short, informal paragraph with tips on how to manage time effectively, highlighting the keywords 'prioritize' and 'schedule'." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "text-analysis.generateSchema", + "description": "Generates a JSON schema representing the structure and data types of the provided text input. Accepts textual data (such as JSON-like strings, configuration snippets, or example data records), analyzes patterns and keys, and produces a machine-readable JSON schema outlining expected properties, types, and required fields.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw text input to analyze and generate the schema from. Can be JSON-like or any structured textual data.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootName", + "type": "string", + "description": "Optional name to assign to the root object in the generated schema.", + "required": false, + "defaultValue": "RootObject" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example values in the generated schema where possible.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth to analyze nested structures. Prevents overly deep recursion in complex inputs.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing a standard JSON schema for the analyzed input text structure, its properties, data types, required fields, and optionally examples." + }, + "aiAgent": { + "useCase": "Use when you have example textual data or JSON documents and want to generate a corresponding JSON Schema automatically to validate similar data or understand data shape. Ideal for dynamically inferring schemas from sample inputs for validation, documentation, or transformation pipelines.", + "limitations": "May not accurately infer schemas for highly unstructured or ambiguous text inputs. Assumes input is parseable into nested key-value or array structures. Complex semantics or context-dependent typing cannot be inferred.", + "examples": [ + "Generate JSON schema from a sample JSON response to use for validation.", + "Infer schema from configuration files or logs provided as text.", + "Create tentative schema from partial or example data samples for data ingestion workflows." + ] + }, + "tags": [ + "text-analysis", + "generate", + "schema", + "JSON Schema", + "data validation", + "NLP", + "parser" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"{\\\"name\\\": \\\"John\\\", \\\"age\\\": 30, \\\"isMember\\\": true}\",\"rootName\":\"User\",\"includeExamples\":\"true\",\"maxDepth\":\"3\"}", + "description": "Generate a JSON schema describing a simple user object with name, age, and membership status." + }, + { + "inputJson": "{\"inputText\":\"[{\\\"product\\\": \\\"Book\\\", \\\"price\\\": 12.99, \\\"categories\\\": [\\\"Education\\\", \\\"Literature\\\"]}]\",\"rootName\":\"ProductList\",\"includeExamples\":\"false\",\"maxDepth\":\"4\"}", + "description": "Infer a schema for an array of product objects with nested arrays for categories, excluding examples." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "text-analysis.createSecret", + "description": "Generates a secure secret phrase or password based on user-defined criteria such as length, complexity, inclusion of special characters, and optional custom word lists. Accepts parameters specifying security requirements and returns a randomly generated secret string suitable for authentication or encryption keys.", + "category": "text-analysis", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Desired length of the secret phrase or password. Must be between 8 and 128 characters.", + "required": true, + "defaultValue": "16" + }, + { + "name": "includeSpecialChars", + "type": "boolean", + "description": "Whether to include special characters (e.g., !@#$%) in the secret for added complexity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeNumbers", + "type": "boolean", + "description": "Whether to include numerical digits in the secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeLowercase", + "type": "boolean", + "description": "Whether to include lowercase letters in the secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeUppercase", + "type": "boolean", + "description": "Whether to include uppercase letters in the secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customWordList", + "type": "array", + "description": "Optional list of words to incorporate or base the secret phrase on, enhancing memorability.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secret string and metadata such as entropy estimation." + }, + "aiAgent": { + "useCase": "When a secure and user-configurable secret is needed for password creation, API keys, or encryption keys. This tool helps generate random secrets following specified security policies or customized with word lists to balance memorability and strength.", + "limitations": "Does not store secrets or verify their uniqueness; cannot enforce policy compliance beyond generation parameters; generated secrets should be secured by the user after creation.", + "examples": [ + "Generate a 24-character password with uppercase, lowercase, numbers, and special characters.", + "Create a 12-character secret containing only lowercase letters and numbers.", + "Generate a secret phrase incorporating words from a provided custom dictionary." + ] + }, + "tags": [ + "security", + "password-generation", + "secret-creation", + "randomness", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"length\":24,\"includeSpecialChars\":true,\"includeNumbers\":true,\"includeLowercase\":true,\"includeUppercase\":true,\"customWordList\":[]}", + "description": "Generate a strong 24-character password with all character types." + }, + { + "inputJson": "{\"length\":12,\"includeSpecialChars\":false,\"includeNumbers\":true,\"includeLowercase\":true,\"includeUppercase\":false,\"customWordList\":[]}", + "description": "Generate a 12-character password with lowercase and numbers only, no special chars or uppercase." + }, + { + "inputJson": "{\"length\":20,\"includeSpecialChars\":false,\"includeNumbers\":false,\"includeLowercase\":true,\"includeUppercase\":true,\"customWordList\":[\"sun\",\"river\",\"moon\"]}", + "description": "Generate a 20-character secret phrase using uppercase and lowercase letters and incorporating custom words." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "text-analysis.createSchema", + "description": "Generates a structured JSON schema definition from given sample text data or description to facilitate automated validation and parsing of similar texts. Accepts raw text examples or high-level descriptions and produces a machine-readable schema outlining expected fields, types, and constraints.", + "category": "text-analysis", + "parameters": [ + { + "name": "sampleTexts", + "type": "array", + "description": "An array of example text strings that represent the kind of data to be structured in the schema. At least one example is recommended.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fieldDescriptions", + "type": "object", + "description": "An object mapping field names to descriptions or example values to help define the schema fields explicitly.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "schemaType", + "type": "string", + "description": "Defines the output schema format, e.g., 'json-schema', 'avro', or 'custom'. Defaults to 'json-schema'.", + "required": false, + "defaultValue": "\"json-schema\"" + }, + { + "name": "includeOptionalFields", + "type": "boolean", + "description": "Whether to mark fields as optional when not present in all samples or descriptions. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum nesting depth for the schema to avoid overly complex definitions. Defaults to 3.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object representing the generated schema in the specified format, including field names, types, and optional constraints." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a structured schema from unstructured or semi-structured text data examples or descriptions for downstream processing, validation, or integration. Ideal for automating schema generation from raw text samples to improve NLP pipeline design or data ingestion workflows.", + "limitations": "Cannot perfectly infer semantic meaning or domain-specific constraints without sufficient examples or detailed descriptions. Generated schemas may require human refinement for complex data.", + "examples": [ + "Create a JSON schema from chat messages to validate message format.", + "Generate a schema describing log entry fields based on sample log lines.", + "Derive a simple JSON schema from key-value pairs described in a user note." + ] + }, + "tags": [ + "schema", + "text-analysis", + "json-schema", + "validation", + "nlp", + "data-structuring" + ], + "examples": [ + { + "inputJson": "{\"sampleTexts\":[\"Name: John Doe, Age: 30, Email: john@example.com\",\"Name: Jane Smith, Age: 25, Email: jane@domain.org\"],\"schemaType\":\"json-schema\"}", + "description": "Generate a JSON schema to validate user contact info fields from sample texts." + }, + { + "inputJson": "{\"fieldDescriptions\":{\"timestamp\":\"ISO 8601 datetime string\",\"level\":\"log severity level (e.g., info, error)\",\"message\":\"log message content\"},\"schemaType\":\"json-schema\",\"includeOptionalFields\":false}", + "description": "Create a precise JSON schema for log entries using explicit field descriptions." + }, + { + "inputJson": "{\"sampleTexts\":[\"title: Missing book, author: Unknown\"],\"maxDepth\":2}", + "description": "Infer a simple schema from a single sample text with limited nesting depth." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "api-integration.analyzeSession", + "description": "This tool accepts session data from web or mobile applications as input, analyzes user interactions, events, and performance metrics within the session, and produces a detailed analytics report summarizing user behavior patterns, key events, error occurrences, and session duration statistics.", + "category": "api-integration", + "parameters": [ + { + "name": "sessionData", + "type": "object", + "description": "Detailed session data including events, timestamps, user actions, and metadata for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "includePerformanceMetrics", + "type": "boolean", + "description": "Flag to include performance-related analytics such as load times and responsiveness.", + "required": false, + "defaultValue": "false" + }, + { + "name": "errorThreshold", + "type": "number", + "description": "The minimum number of error occurrences to highlight in the analysis report.", + "required": false, + "defaultValue": "1" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Optional parameter to focus the analysis on the most recent N minutes of the session.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analytical report object containing summarized session insights including user interaction statistics, event timelines, identified issues, and performance metrics." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract meaningful insights from raw session data collected from user interactions in web/mobile applications. It's ideal for diagnosing user behavior, identifying performance bottlenecks, or uncovering frequent errors during a session.", + "limitations": "This tool does not perform real-time session tracking or prediction. It requires complete session data as input and cannot infer missing data or correlate multiple sessions across users.", + "examples": [ + "Analyze the last user session to find any errors above threshold and summarize user clicks.", + "Provide a performance-focused analysis of a mobile app session including loading times and responsiveness.", + "Generate a session report highlighting key events and user navigation patterns within the last 15 minutes of the session." + ] + }, + "tags": [ + "api", + "session", + "analytics", + "user-behavior", + "performance", + "error-reporting" + ], + "examples": [ + { + "inputJson": "{\"sessionData\":{\"events\":[{\"type\":\"click\",\"timestamp\":1685005400000},{\"type\":\"error\",\"timestamp\":1685005440000,\"details\":\"Timeout error\"},{\"type\":\"navigate\",\"timestamp\":1685005460000}],\"userId\":\"user123\",\"sessionId\":\"sess789\"},\"includePerformanceMetrics\":true,\"errorThreshold\":1}", + "description": "Analyze a user session including performance metrics and highlight errors with at least 1 occurrence." + }, + { + "inputJson": "{\"sessionData\":{\"events\":[{\"type\":\"scroll\",\"timestamp\":1685005500000},{\"type\":\"click\",\"timestamp\":1685005530000}],\"userId\":\"user124\",\"sessionId\":\"sess790\"},\"includePerformanceMetrics\":false}", + "description": "Analyze a session focusing on user interactions without performance data." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "api-integration.generateXML", + "description": "Generates a well-formed XML string from provided structured data or JSON input. Accepts JSON objects or arrays, maps them to XML elements and attributes according to specified root element and optional namespace. Returns the serialized XML string suitable for API requests, configuration files, or data interchange.", + "category": "api-integration", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The structured input object or array to convert into XML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "The name of the root XML element to wrap the generated XML content.", + "required": true, + "defaultValue": "root" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "Whether to include the XML declaration (e.g., <?xml version=\"1.0\" encoding=\"UTF-8\"?>) at the start of output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "namespace", + "type": "string", + "description": "Optional XML namespace URI to include in the root element if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "attributeMapping", + "type": "object", + "description": "Optional mapping rules that define which keys in input data should be treated as XML attributes rather than child elements.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the serialized XML string under the key 'xmlString'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert JSON or structured data into XML format for integration with APIs, configuration generation, or systems requiring XML payloads. It simplifies building XML from complex nested data, ensuring valid syntax and optional namespace inclusion.", + "limitations": "Does not support XML schema validation or advanced features like processing instructions beyond the XML declaration. Attribute mapping is limited to simple key mappings, not XPath expressions.", + "examples": [ + "Generate XML from a JSON object representing a book catalog with root element 'catalog'.", + "Convert a nested order object to XML including attributes for metadata keys.", + "Create XML with namespace for sending to an external SOAP API." + ] + }, + "tags": [ + "api", + "xml", + "data-format", + "serialization", + "integration", + "json-to-xml" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"book\":[{\"title\":\"1984\",\"author\":\"George Orwell\"},{\"title\":\"Brave New World\",\"author\":\"Aldous Huxley\"}]},\"rootElementName\":\"catalog\"}", + "description": "Convert a JSON object containing a list of books into XML wrapped in <catalog>." + }, + { + "inputJson": "{\"data\":{\"orderId\":1234,\"items\":[{\"product\":\"Pen\",\"qty\":10},{\"product\":\"Notebook\",\"qty\":5}]},\"rootElementName\":\"order\",\"includeDeclaration\":false}", + "description": "Generate XML for an order without XML declaration, converting order info and items." + }, + { + "inputJson": "{\"data\":{\"@id\":\"ns1\",\"content\":\"Example\"},\"rootElementName\":\"message\",\"namespace\":\"http://example.com/ns\"}", + "description": "Create XML with a namespace URI and an attribute id in the root element." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "api-integration.createSpec", + "description": "This tool generates an API specification document based on provided API endpoint definitions, request/response schemas, authentication methods, and metadata. It accepts structured input describing the API's endpoints and produces a standardized API spec document (e.g., OpenAPI format) as output, suitable for documentation or API orchestration.", + "category": "api-integration", + "parameters": [ + { + "name": "apiTitle", + "type": "string", + "description": "The title or name of the API to include in the specification.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiVersion", + "type": "string", + "description": "The version of the API being specified.", + "required": true, + "defaultValue": "1.0.0" + }, + { + "name": "baseUrl", + "type": "string", + "description": "The base URL or server address for the API.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "A list of endpoint objects defining paths, HTTP methods, parameters, request bodies, and responses.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "An object describing the authentication scheme(s) used by the API, e.g., API keys, OAuth2.", + "required": false, + "defaultValue": "" + }, + { + "name": "info", + "type": "object", + "description": "Optional additional metadata about the API such as description, terms of service, contact, and license info.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API specification document as a string in a standardized format (e.g., OpenAPI JSON or YAML)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a formal API specification document given structured definitions of API endpoints and metadata. It helps agents automate documentation, client generation prep, or API validation setups by converting input definitions into a standard spec file.", + "limitations": "This tool does not validate the correctness or completeness of input API definitions, nor does it implement the API itself. It only creates specification documents based on the input provided.", + "examples": [ + "Generate an OpenAPI spec for a RESTful service managing user accounts.", + "Create API documentation specification for a microservice with multiple endpoints and OAuth2 authentication.", + "Produce a standardized API spec from endpoint, request, and response schema inputs for integration purposes." + ] + }, + "tags": [ + "api", + "integration", + "specification", + "OpenAPI", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiTitle\":\"User Management API\",\"apiVersion\":\"1.0.0\",\"baseUrl\":\"https://api.example.com/v1\",\"endpoints\":[{\"path\":\"/users\",\"method\":\"GET\",\"description\":\"List all users\",\"parameters\":[{\"name\":\"page\",\"in\":\"query\",\"required\":false,\"type\":\"integer\",\"description\":\"Page number for pagination\"}],\"responses\":{\"200\":{\"description\":\"A list of users\",\"content\":{\"application/json\":{\"schema\":{\"type\":\"array\",\"items\":{\"$ref\":\"#/components/schemas/User\"}}}}}}}],\"authentication\":{\"type\":\"apiKey\",\"in\":\"header\",\"name\":\"X-API-Key\"},\"info\":{\"description\":\"API for managing user accounts.\"}}", + "description": "Generate a basic OpenAPI specification document for a user management API with pagination and API key authentication." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "agent-management.formatLink", + "description": "Formats a raw URL string into a well-structured hyperlink suitable for display or embedding in agent-generated content. Accepts a URL and optional display text, applies validation and formatting rules, and outputs the formatted HTML link or markdown link based on parameters.", + "category": "agent-management", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The raw URL string that needs formatting into a hyperlink.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "Optional text to display instead of the raw URL. If omitted, the URL itself will be used as display text.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "The output format of the link, e.g., 'html' for HTML anchor tags or 'markdown' for markdown links.", + "required": false, + "defaultValue": "html" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Whether the link should open in a new browser tab when clicked (only applicable for HTML format).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted link string, the validated URL, and a success status indicator." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to present URLs in a user-friendly, clickable format within messages, reports, or interfaces. It standardizes link presentation by validating the URL, optionally customizing display text, and converting links to either HTML or markdown formats suitable for diverse contexts.", + "limitations": "Cannot validate the safety or content of the URL beyond basic syntax validation. Does not generate short URLs or perform URL shortening. Does not embed rich media previews or metadata.", + "examples": [ + "Format a raw URL to an HTML link opening in a new tab.", + "Convert a URL to markdown format with custom display text.", + "Validate and format a bare URL string with default display text." + ] + }, + "tags": [ + "agent", + "link", + "formatting", + "html", + "markdown", + "url", + "display", + "user-interface" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/docs\",\"displayText\":\"Example Docs\",\"formatType\":\"html\",\"openInNewTab\":true}", + "description": "Formats a URL into an HTML link with custom display text that opens in a new tab." + }, + { + "inputJson": "{\"url\":\"http://openai.com\",\"displayText\":\"OpenAI\",\"formatType\":\"markdown\"}", + "description": "Formats a URL into a markdown link using custom display text." + }, + { + "inputJson": "{\"url\":\"https://github.com\"}", + "description": "Formats a bare URL into an HTML link using the URL as display text." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "agent-management.draftInvoice", + "description": "This tool accepts detailed client and transaction data to generate a professional draft invoice document. It processes inputs like client information, list of purchased items or services with quantities and prices, invoice date and payment terms, then produces a structured invoice summary in JSON format, suitable for further processing or rendering into PDF or emails.", + "category": "agent-management", + "parameters": [ + { + "name": "clientInfo", + "type": "object", + "description": "Object containing client's billing details such as name, address, contact info.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "Array of objects each defining an individual item or service including description, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date of the invoice in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date for payment in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to denote amounts involved.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate percentage to calculate taxes on subtotal, e.g., 15 for 15%.", + "required": false, + "defaultValue": "0" + }, + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier for the invoice, helpful for tracking and reference.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON object representing the computed invoice details, including subtotal, tax amount, total, client info, itemized list, invoice and due dates, and invoice number." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a formal invoice draft from structured input like client details and transaction items. Ideal for automating billing processes in business workflows or generating invoice previews for user confirmation. It helps transform raw invoice data into a coherent, ready-to-use invoice structure.", + "limitations": "This tool does not generate formatted document files like PDFs or send the invoice automatically. It also does not handle payment processing or validate client data authenticity.", + "examples": [ + "Generate an invoice for client Acme Corp for three consultation services with a 10% tax rate and payment due in 30 days.", + "Draft an invoice with custom invoice number INV-2024-001, including two software licenses sold at different prices, with USD currency.", + "Create a zero-tax invoice dated today for a single product sale with full client billing information." + ] + }, + "tags": [ + "agent-management", + "drafting", + "invoice", + "billing", + "document-generation", + "financial", + "automation" + ], + "examples": [ + { + "inputJson": "{\"clientInfo\":{\"name\":\"Acme Corporation\",\"address\":\"123 Business Rd, Business City, BC 12345\",\"email\":\"billing@acmecorp.com\"},\"items\":[{\"description\":\"Consultation Service\",\"quantity\":3,\"unitPrice\":150}],\"invoiceDate\":\"2024-06-15\",\"dueDate\":\"2024-07-15\",\"currency\":\"USD\",\"taxRate\":10,\"invoiceNumber\":\"INV-2024-0001\"}", + "description": "Draft an invoice for Acme Corporation with 3 consultation services and a 10% tax rate, due in 30 days." + }, + { + "inputJson": "{\"clientInfo\":{\"name\":\"Beta LLC\",\"address\":\"456 Commerce St, Market Town, MT 67890\",\"email\":\"accounts@betallc.com\"},\"items\":[{\"description\":\"Software License A\",\"quantity\":1,\"unitPrice\":1200},{\"description\":\"Software License B\",\"quantity\":2,\"unitPrice\":950}],\"invoiceDate\":\"2024-06-01\",\"currency\":\"USD\",\"taxRate\":0,\"invoiceNumber\":\"BL-2024-100\"}", + "description": "Draft a tax-exempt invoice for Beta LLC, selling one license of product A and two licenses of product B." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "model-management.analyzeExpense", + "description": "Analyzes business expense data provided as transaction records or summary reports to identify spending patterns, detect anomalies, categorize expenses, and generate insights for cost optimization. Accepts structured expense data as JSON or CSV, processes it using statistical and ML models, and outputs summary reports and alerts in JSON format.", + "category": "model-management", + "parameters": [ + { + "name": "expenseData", + "type": "string", + "description": "Structured expense data as JSON or CSV string to analyze. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: 'json' or 'csv'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: 'basic', 'detailed', or 'custom'. Defaults to 'basic'.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "customCategories", + "type": "array", + "description": "Optional list of custom expense categories for tailored classification. Must be provided if analysisDepth is 'custom'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to perform anomaly detection on expense entries. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report: 'json' or 'csv'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A structured report summarizing total expenses by category and time period, detected anomalies with explanations, identified spending patterns, and actionable recommendations for expense optimization." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing business expense data for trends, unusual transactions, or to categorize costs to inform financial decision-making and optimize budget allocation. Ideal for finance teams or automated monitoring systems needing detailed expense insights from raw transactional data.", + "limitations": "Cannot access unformatted raw transaction logs without proper structuring. Not designed to provide tax advice or legal audit compliance verification.", + "examples": [ + "Analyze last quarter's company expenses from JSON data for overspending categories and anomalies.", + "Process CSV expense report with custom categories to generate detailed spending summary and identify irregular payments.", + "Detect anomalies and generate cost-saving recommendations from JSON daily expense transactions." + ] + }, + "tags": [ + "analysis", + "finance", + "expense", + "cost-optimization", + "anomaly-detection", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"expenseData\":\"[{\\\"date\\\":\\\"2024-04-01\\\",\\\"amount\\\":1500,\\\"category\\\":\\\"Travel\\\"},{\\\"date\\\":\\\"2024-04-05\\\",\\\"amount\\\":200,\\\"category\\\":\\\"Office Supplies\\\"}]\",\"dataFormat\":\"json\",\"analysisDepth\":\"basic\",\"detectAnomalies\":true}", + "description": "Basic expense analysis of JSON array with two transactions, checking anomalies." + }, + { + "inputJson": "{\"expenseData\":\"date,amount,category\\n2024-03-15,300,Marketing\\n2024-03-20,1200,Travel\",\"dataFormat\":\"csv\",\"analysisDepth\":\"detailed\",\"detectAnomalies\":true}", + "description": "Detailed analysis on CSV format monthly marketing and travel expenses, including anomaly detection." + }, + { + "inputJson": "{\"expenseData\":\"[{\\\"date\\\":\\\"2024-05-01\\\",\\\"amount\\\":500,\\\"category\\\":\\\"CustomCat1\\\"}]\",\"dataFormat\":\"json\",\"analysisDepth\":\"custom\",\"customCategories\":[\"CustomCat1\",\"CustomCat2\"],\"detectAnomalies\":false}", + "description": "Custom category expense analysis with anomaly detection disabled." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "model-management.analyzeVulnerability", + "description": "Analyzes AI model artifacts and configurations to detect potential vulnerabilities such as data leakage, insecure dependencies, or misconfigurations. Accepts model files, metadata, and optional security policies. Outputs a detailed vulnerability report with severity levels and remediation suggestions.", + "category": "model-management", + "parameters": [ + { + "name": "modelArtifactPath", + "type": "string", + "description": "File path or URI to the AI model artifact to analyze (e.g., saved model file or container image)", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata about the model including framework, version, and deployment environment", + "required": false, + "defaultValue": "" + }, + { + "name": "securityPolicies", + "type": "array", + "description": "Optional list of security policy identifiers or rulesets to guide vulnerability analysis", + "required": false, + "defaultValue": "" + }, + { + "name": "scanDependencies", + "type": "boolean", + "description": "Flag to enable scanning of model dependencies and packages for known vulnerabilities", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSeverityLevel", + "type": "string", + "description": "Filter to report vulnerabilities up to this severity level (e.g., low, medium, high, critical)", + "required": false, + "defaultValue": "critical" + } + ], + "returns": { + "type": "object", + "description": "Structured vulnerability report including issue identifiers, severity ratings, descriptions, and remediation guidance" + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess AI models for security weaknesses before deployment or during regular audits, to prevent compromise or data breaches due to model-related vulnerabilities.", + "limitations": "Does not perform runtime monitoring of models; analysis is limited to artifact and metadata static inspection and known vulnerability databases.", + "examples": [ + "Analyze the vulnerability of a new TensorFlow model before deployment.", + "Check an existing model artifact for dependency-related security issues.", + "Generate a vulnerability report for a model with custom security policies applied." + ] + }, + "tags": [ + "security", + "model-management", + "vulnerability", + "analysis", + "AI-models" + ], + "examples": [ + { + "inputJson": "{\"modelArtifactPath\":\"/models/resnet50/saved_model.pb\",\"metadata\":{\"framework\":\"TensorFlow\",\"version\":\"2.8\"},\"scanDependencies\":true}", + "description": "Analyze a TensorFlow model artifact with dependencies scanned for vulnerabilities." + }, + { + "inputJson": "{\"modelArtifactPath\":\"s3://bucket/models/my_model.pt\",\"securityPolicies\":[\"policyA\",\"policyB\"],\"maxSeverityLevel\":\"high\"}", + "description": "Scan a PyTorch model stored in cloud storage applying specific security policies and limiting reports to severity high or below." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "model-management.formatArticle", + "description": "This tool accepts a raw or partially formatted article text and applies structured formatting to enhance readability and consistency. It processes input by applying headings, subheadings, lists, and paragraph breaks according to specified style guidelines, and outputs the article text formatted in a clean, standardized layout suitable for publishing or further processing.", + "category": "model-management", + "parameters": [ + { + "name": "articleText", + "type": "string", + "description": "The unformatted or raw article text to be processed and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "The style guide to apply for formatting (e.g., APA, Chicago, custom).", + "required": false, + "defaultValue": "default" + }, + { + "name": "preserveInlineElements", + "type": "boolean", + "description": "Whether to preserve existing inline formatting elements like bold, italics, or links.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line for wrapping paragraphs; 0 means no wrapping.", + "required": false, + "defaultValue": "80" + }, + { + "name": "headingLevels", + "type": "array", + "description": "An ordered list defining markdown or HTML tags for heading levels, e.g., [\"h1\",\"h2\",\"h3\"].", + "required": false, + "defaultValue": "[\"h1\",\"h2\",\"h3\"]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article text as a string, ready for use or display." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or semi-structured article content that needs to be consistently formatted for clarity, readability, or compliance with a style guide before publishing or further NLP processing. It helps standardize document structure by applying headings, paragraphs, and lists based on content cues.", + "limitations": "Cannot perform content corrections such as grammar or fact-checking. It does not interpret complex semantic structures or generate content; it only formats provided text. It may not fully handle very complex nested formatting or non-textual media.", + "examples": [ + "Format this raw article text into a clean structure using APA style.", + "Apply consistent headings and paragraph breaks to the submitted blog article text.", + "Reformat an existing article preserving inline stylings but apply new wrapping and heading standards." + ] + }, + "tags": [ + "formatting", + "article", + "document", + "model-management", + "text-processing", + "style-guides", + "publishing" + ], + "examples": [ + { + "inputJson": "{\"articleText\":\"This is a sample article. It has sections. Section 1: Introduction. Section 2: Methods.\",\"styleGuide\":\"default\",\"preserveInlineElements\":true,\"maxLineLength\":80,\"headingLevels\":[\"h1\",\"h2\"]}", + "description": "Format a simple two-section article with default style and heading levels h1 and h2." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "model-management.generateTemplate", + "description": "Generates customizable deployment or training configuration templates for AI models based on user-specified parameters. Accepts inputs like model type, framework, deployment environment, and resource requirements, and outputs ready-to-use YAML or JSON template files to streamline model management processes.", + "category": "model-management", + "parameters": [ + { + "name": "templateType", + "type": "string", + "description": "Specifies the type of template to generate, e.g., 'deployment' or 'training'.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelFramework", + "type": "string", + "description": "Name of the ML framework used (e.g., TensorFlow, PyTorch) to tailor the template appropriately.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelName", + "type": "string", + "description": "Identifier for the AI model to insert into the template metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "The intended deployment environment, such as 'cloud', 'edge', or 'on-premises'.", + "required": false, + "defaultValue": "cloud" + }, + { + "name": "resourceSpecs", + "type": "object", + "description": "Resource specifications including CPU, GPU, memory, etc., to configure resource allocation in the template.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output template file, e.g., 'yaml' or 'json'.", + "required": false, + "defaultValue": "yaml" + }, + { + "name": "includeMonitoring", + "type": "boolean", + "description": "Whether to include monitoring and logging configuration sections in the template.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template as a string and metadata describing the template type and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI system or user needs to quickly generate standardized configuration templates for deploying or training machine learning models across different environments or frameworks. It simplifies setup by automating boilerplate creation tailored to specified parameters.", + "limitations": "This tool does not validate the generated templates against specific deployment platform constraints or guarantee runtime correctness of configurations. It also cannot generate templates for custom or niche frameworks not predefined in its logic.", + "examples": [ + "Generate a deployment template for a TensorFlow model targeting cloud environment with GPU resource specs.", + "Create a training template in JSON format for a PyTorch model including monitoring configs.", + "Produce an on-premises deployment template for a model with specific CPU and memory requirements without monitoring." + ] + }, + "tags": [ + "model-management", + "template-generation", + "deployment", + "training", + "configuration", + "ML-frameworks", + "automation" + ], + "examples": [ + { + "inputJson": "{\"templateType\":\"deployment\",\"modelFramework\":\"TensorFlow\",\"modelName\":\"image-classifier\",\"targetEnvironment\":\"cloud\",\"resourceSpecs\":{\"cpu\":\"4\",\"gpu\":\"1\",\"memory\":\"16Gi\"},\"outputFormat\":\"yaml\",\"includeMonitoring\":true}", + "description": "Generate a cloud deployment template in YAML for a TensorFlow image-classifier model with GPU and monitoring included." + }, + { + "inputJson": "{\"templateType\":\"training\",\"modelFramework\":\"PyTorch\",\"modelName\":\"text-generator\",\"outputFormat\":\"json\",\"includeMonitoring\":false}", + "description": "Generate a JSON training template for a PyTorch text-generator model without monitoring." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "model-management.createMarkdown", + "description": "This tool accepts structured information about an AI model such as model name, version, description, training dataset info, performance metrics, and deployment status. It processes this data to generate a well-formatted markdown document summarizing the model's key details for documentation or reporting purposes.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name of the AI model to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelVersion", + "type": "string", + "description": "The version identifier for the model, e.g., 'v1.0'.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "description", + "type": "string", + "description": "A brief textual summary describing the model's purpose and characteristics.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "trainingData", + "type": "object", + "description": "Information about the training dataset including name, size, and type.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Key metrics such as accuracy, precision, recall, etc., describing model performance.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "deploymentStatus", + "type": "string", + "description": "Current deployment stage of the model, e.g., 'development', 'production', or 'deprecated'.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeCodeExamples", + "type": "boolean", + "description": "Whether to include markdown sections showing usage code snippets.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'markdown' field which includes the generated markdown string representing the model's detailed documentation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce clear, standardized markdown documentation summarizing an AI model's metadata, performance, and deployment details. It is helpful for creating README files, model cards, or technical reports for stakeholders or developers.", + "limitations": "This tool focuses on generating static markdown summaries and does not validate correctness of input data or automate markdown publishing workflows.", + "examples": [ + "Generate a markdown document for a new image classification model including its accuracy and training dataset details.", + "Create a model card markdown for a recently deployed NLP model to share with the team.", + "Produce markdown documentation highlighting performance metrics and deployment status for a regression model." + ] + }, + "tags": [ + "model-management", + "documentation", + "markdown", + "model-card", + "reporting", + "performance" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"ImageClassifierX\",\"modelVersion\":\"v2.1\",\"description\":\"Convolutional neural network for image recognition.\",\"trainingData\":{\"name\":\"ImageNet\",\"size\":\"1.2M images\",\"type\":\"labeled images\"},\"performanceMetrics\":{\"accuracy\":\"92%\",\"precision\":\"90%\",\"recall\":\"88%\"},\"deploymentStatus\":\"production\",\"includeCodeExamples\":true}", + "description": "Generate complete markdown documentation for an image classification model with performance and usage code." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "image-processing.analyzeParagraph", + "description": "Analyzes an image containing a paragraph of text to extract and process the textual content. The tool accepts an image file or URL, performs OCR to recognize the paragraph text, then analyzes the text for key metrics such as word count, language detection, and sentiment. It returns the extracted paragraph along with detailed analysis results.", + "category": "image-processing", + "parameters": [ + { + "name": "imageSource", + "type": "string", + "description": "Path or URL to the image containing the paragraph to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectLanguage", + "type": "boolean", + "description": "Whether to detect the language of the extracted text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Whether to perform a sentiment analysis on the extracted paragraph.", + "required": false, + "defaultValue": "false" + }, + { + "name": "minConfidence", + "type": "number", + "description": "Minimum OCR confidence threshold (0-1) to accept extracted text.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted paragraph text, word count, language code (if detected), sentiment score (if analyzed), and OCR confidence score." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and analyze text content from an image of a paragraph for content understanding, indexing, or sentiment insights. Ideal for images of scanned documents, screenshots, or photos containing block text paragraphs where extraction and textual analysis are required.", + "limitations": "Cannot process images without clear paragraph structure or heavily distorted text; OCR accuracy may vary by image quality and language complexity. Does not support handwritten text analysis.", + "examples": [ + "Extract and analyze the paragraph from a photo of a printed page to determine word count and sentiment.", + "Process a screenshot containing a paragraph of text for language detection and text extraction.", + "Analyze the paragraph text in a document image to extract content and verify OCR confidence." + ] + }, + "tags": [ + "image-processing", + "OCR", + "text-analysis", + "paragraph", + "sentiment-analysis", + "language-detection" + ], + "examples": [ + { + "inputJson": "{\"imageSource\":\"https://example.com/images/paragraph1.png\",\"detectLanguage\":true,\"analyzeSentiment\":true,\"minConfidence\":0.8}", + "description": "Analyze an online image URL containing a paragraph for text extraction, language detection, and sentiment analysis." + }, + { + "inputJson": "{\"imageSource\":\"/local/path/to/paragraph_photo.jpg\",\"detectLanguage\":false,\"analyzeSentiment\":false,\"minConfidence\":0.7}", + "description": "Extract text from a local image file containing a paragraph without language or sentiment analysis, using default confidence threshold." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "notifications.generateLink", + "description": "Generates shareable URLs for notifications to direct recipients to specific resources or actions. Accepts parameters defining the destination path, query parameters, link expiration, and tracking options. Outputs a complete, encoded URL string ready for use in notifications or alerts.", + "category": "notifications", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL or domain where the link will point, e.g., https://example.com", + "required": true, + "defaultValue": "" + }, + { + "name": "path", + "type": "string", + "description": "The relative path on the domain to direct the user to, e.g., /reset-password", + "required": true, + "defaultValue": "" + }, + { + "name": "queryParams", + "type": "object", + "description": "Key-value pairs to be encoded as URL query parameters.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "expirationMinutes", + "type": "number", + "description": "Number of minutes after which the link expires and becomes invalid. 0 means no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeTracking", + "type": "boolean", + "description": "Flag whether to include tracking parameters (e.g., utm tags) for analytics purposes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "trackingParams", + "type": "object", + "description": "Key-value pairs for custom tracking parameters if includeTracking is true.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully constructed URL string and metadata such as expiration timestamp if applicable." + }, + "aiAgent": { + "useCase": "Use when generating URLs embedded in notification messages to provide recipients with direct access to targeted content or actions, including optional expiration and tracking support. Useful for password resets, event invitations, or promotional alerts needing analytics.", + "limitations": "Does not handle link validation beyond formatting; does not generate QR codes or short URLs; expiration enforcement must be implemented on server side.", + "examples": [ + "Generate a password reset link that expires in 60 minutes.", + "Create an event invitation link with campaign tracking parameters.", + "Generate a permanent link directing to a support ticket dashboard." + ] + }, + "tags": [ + "notifications", + "link generation", + "url builder", + "tracking", + "expiration", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://example.com\",\"path\":\"/reset-password\",\"queryParams\":{\"token\":\"abc123\"},\"expirationMinutes\":60,\"includeTracking\":true,\"trackingParams\":{\"utm_source\":\"email\",\"utm_campaign\":\"password_reset\"}}", + "description": "Generate a password reset link with a 60-minute expiration and tracking parameters." + }, + { + "inputJson": "{\"baseUrl\":\"https://events.example.com\",\"path\":\"/invite\",\"queryParams\":{\"eventId\":\"789\"},\"expirationMinutes\":0,\"includeTracking\":true,\"trackingParams\":{\"utm_source\":\"notification\",\"utm_medium\":\"app\"}}", + "description": "Create a permanent event invitation link with analytics tracking." + }, + { + "inputJson": "{\"baseUrl\":\"https://support.example.com\",\"path\":\"/dashboard\",\"queryParams\":{},\"expirationMinutes\":0,\"includeTracking\":false}", + "description": "Generate a permanent link to the support ticket dashboard with no tracking." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "messaging.generateKPI", + "description": "Generates key performance indicators (KPIs) from messaging platform data. Accepts inputs like message logs, user activity data, and time ranges; processes these to calculate metrics such as average response time, message volume, user engagement rates, and channel activity; outputs a structured report summarizing the computed KPIs for analysis and monitoring.", + "category": "messaging", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "The start date for the KPI calculation period in ISO 8601 format (e.g., 2024-01-01).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date for the KPI calculation period in ISO 8601 format (e.g., 2024-01-31).", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of messaging channel IDs or names to include in the KPI calculations. If empty, includes all channels.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "array", + "description": "Specific KPIs to calculate, such as ['messageVolume', 'averageResponseTime', 'activeUsers']. If empty, calculates all supported metrics.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "userFilter", + "type": "object", + "description": "Optional filters to include or exclude users based on attributes like role, activity, or groups.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeBots", + "type": "boolean", + "description": "Whether to include messages from bots in the KPI calculations.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing calculated KPI metrics, each with values and optionally detailed breakdowns by channel or time period." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce insights or performance reports about messaging system usage, such as evaluating engagement, responsiveness, or communication volume over a specific timeframe and across specified channels or user groups.", + "limitations": "This tool does not analyze message content sentiment or provide real-time streaming analytics; it requires historical data inputs and does not generate predictive analytics.", + "examples": [ + "Generate KPIs for all channels from January 1 to January 31, 2024.", + "Calculate average response time and message volume for support channels excluding bots.", + "Provide active user counts filtered by user roles for the last week." + ] + }, + "tags": [ + "messaging", + "analytics", + "KPI", + "reporting", + "performance", + "userEngagement" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"channels\":[\"general\",\"support\"],\"metrics\":[\"messageVolume\",\"averageResponseTime\"],\"includeBots\":false}", + "description": "Calculate message volume and average response time for 'general' and 'support' channels during March 2024, excluding bot messages." + }, + { + "inputJson": "{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-07\",\"metrics\":[\"activeUsers\"],\"userFilter\":{\"role\":\"admin\"}}", + "description": "Compute the number of active admin users across all channels for the first week of April 2024." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "email-communication.createReference", + "description": "This tool generates a standardized email reference content segment based on input parameters including project name, reference ID, summary, and optional detailed description. It outputs a formatted reference snippet suitable for inclusion in email bodies to provide recipients concise contextual information and links related to a project or task reference.", + "category": "email-communication", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the project or initiative related to the reference, used to contextualize the reference in the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceId", + "type": "string", + "description": "Unique identifier or code of the reference item, such as ticket number or document ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "Brief summary or title of the reference content to highlight key information.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description or notes about the reference to provide more context.", + "required": false, + "defaultValue": "" + }, + { + "name": "link", + "type": "string", + "description": "URL linking to additional resources or the referenced item for quick access.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Flag indicating if the current date/time should be appended to the reference for tracking when the snippet was created.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted email reference text string under 'referenceText' key, ready to embed in an email body." + }, + "aiAgent": { + "useCase": "Use this tool when generating email content that requires embedding formalized reference snippets, such as project updates or ticket follow-ups, to ensure consistency and clarity across communications.", + "limitations": "This tool does not send emails or manage email threads; it solely creates formatted reference text segments. It does not validate URLs or check project name consistency.", + "examples": [ + "Create an email reference snippet for ticket ID 12345 about 'Login Bug Fix' with a summary and link.", + "Generate reference content for a project update including a detailed description and timestamp.", + "Produce a reference snippet with only mandatory fields for quick insertion in emails." + ] + }, + "tags": [ + "email", + "reference", + "content-generation", + "project-management", + "automation", + "snippet" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Website Redesign\",\"referenceId\":\"WR-2023-015\",\"summary\":\"UI refresh completion\",\"description\":\"Final phase of UI update completed successfully.\",\"link\":\"https://projects.example.com/WR-2023-015\",\"includeTimestamp\":true}", + "description": "Create a detailed email reference for a project update with all fields including timestamp." + }, + { + "inputJson": "{\"projectName\":\"Customer Support\",\"referenceId\":\"CS-9988\",\"summary\":\"New helpdesk guidelines\",\"description\":\"\",\"link\":\"\",\"includeTimestamp\":false}", + "description": "Generate a simple reference snippet with mandatory fields only, no description, no link, no timestamp." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "email-communication.createReply", + "description": "Generates a reply email draft based on the original email content, including sender, subject, body, and optional reply preferences. Processes input to create a contextually relevant and appropriately formatted email reply text output suitable for sending or further editing.", + "category": "email-communication", + "parameters": [ + { + "name": "originalSender", + "type": "string", + "description": "Email address of the sender of the original email to which the reply is directed.", + "required": true, + "defaultValue": "" + }, + { + "name": "originalSubject", + "type": "string", + "description": "Subject line of the original email, used to generate an appropriate reply subject.", + "required": true, + "defaultValue": "" + }, + { + "name": "originalBody", + "type": "string", + "description": "The full body text of the original email that is being replied to.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyBody", + "type": "string", + "description": "Optional initial reply content or notes to include in the reply email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeOriginal", + "type": "boolean", + "description": "Whether to include the original email content quoted in the reply.", + "required": false, + "defaultValue": "true" + }, + { + "name": "signature", + "type": "string", + "description": "Optional user signature text to append at the bottom of the reply email.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the reply email draft, including the reply subject, recipient address, and the generated body content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to compose a context-aware reply email automatically, utilizing the original email's details and optional customized reply content or signature. It assists with quick response drafting in email automation workflows.", + "limitations": "This tool does not send emails; it only creates the reply draft text. It may not perfectly capture nuanced tone or complex context beyond the original email's content.", + "examples": [ + "Create a reply to an inquiry email with a polite acknowledgment and added info.", + "Generate a short reply including a custom signature and excluding the original quoted email.", + "Draft a reply body based on the original message content, maintaining the email thread subject format." + ] + }, + "tags": [ + "email", + "reply", + "automation", + "communication", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"originalSender\":\"alice@example.com\",\"originalSubject\":\"Meeting Schedule\",\"originalBody\":\"Hi, can we reschedule our meeting to Thursday?\",\"replyBody\":\"Hi Alice, Thursday works great for me.\",\"includeOriginal\":true,\"signature\":\"Best regards, Bob\"}", + "description": "Drafting a polite reply confirming new meeting date, including original email quoted and a signature." + }, + { + "inputJson": "{\"originalSender\":\"support@service.com\",\"originalSubject\":\"Issue with my account\",\"originalBody\":\"My account is locked and I need help.\",\"replyBody\":\"Dear Support Team, my account issue is still unresolved.\",\"includeOriginal\":false,\"signature\":\"\"}", + "description": "Reply to customer support without including original message content and no signature." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "infrastructure-management.downloadCSV", + "description": "Downloads CSV reports from infrastructure monitoring APIs or databases based on specified filters such as resource type, time range, and region. It fetches, processes relevant data, and outputs a CSV-formatted string for further analysis or storage.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "resourceType", + "type": "string", + "description": "Type of infrastructure resource to filter the report, e.g., servers, databases, or networks.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "Start timestamp (ISO 8601) for the data range to include in the CSV report.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End timestamp (ISO 8601) defining the upper bound of the data range.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region or data center to scope the report, e.g., us-east-1.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include CSV header row with column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of records to include in the CSV output. Useful for limiting large reports.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV content as a string and metadata such as record count and timestamp range." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically retrieve and download CSV reports of infrastructure resource usage or status filtered by resource type and time period for auditing, monitoring, or analytics purposes. It helps to extract structured CSV data from infrastructure systems efficiently.", + "limitations": "Does not generate real-time streaming data; limited to the backend data availability. It cannot modify or manipulate CSV content beyond filtering and limiting records.", + "examples": [ + "Download a CSV of server utilization metrics from last week in region us-east-1", + "Get network device status CSV from March 1 to March 15", + "Extract database error logs CSV with a maximum of 500 records" + ] + }, + "tags": [ + "infrastructure", + "download", + "CSV", + "reporting", + "monitoring", + "cloud", + "data", + "export" + ], + "examples": [ + { + "inputJson": "{\"resourceType\":\"servers\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T23:59:59Z\",\"region\":\"us-east-1\",\"includeHeaders\":true,\"maxRecords\":1000}", + "description": "Download a CSV report of server metrics in the us-east-1 region for the first week of May 2024." + }, + { + "inputJson": "{\"resourceType\":\"databases\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-30T23:59:59Z\",\"includeHeaders\":false}", + "description": "Retrieve a CSV file of database logs for April 2024 without CSV headers." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "compliance-management.draftReport", + "description": "Generates a comprehensive compliance report draft based on provided regulatory frameworks, organizational data, and audit findings. Accepts compliance standards, raw data inputs, and report preferences to produce a structured draft report highlighting compliance status, risks, and recommendations.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulatoryFrameworks", + "type": "array", + "description": "List of regulatory standards or frameworks to consider (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "" + }, + { + "name": "organizationData", + "type": "object", + "description": "Structured data about the organization’s compliance status, policies, and controls relevant to the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "auditFindings", + "type": "array", + "description": "Array of audit finding objects with details such as issue, severity, and remediation status.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportPeriod", + "type": "string", + "description": "Time period covered by the compliance report (e.g., 'Q1 2024').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include tailored recommendations for improving compliance in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output format of the draft report (e.g., 'markdown', 'pdf', 'html').", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the draft compliance report as a string under 'reportContent' and metadata including the covered frameworks and period." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a structured initial draft of a compliance report that synthesizes regulatory requirements, organizational compliance data, and audit results into a coherent document. It helps preview the compliance posture and highlight issues before finalizing.", + "limitations": "It cannot fully verify the accuracy of the underlying data or replace expert legal review. The draft may require manual refinement to ensure accuracy and compliance with jurisdictional nuances.", + "examples": [ + "Draft a GDPR compliance report for our Q1 2024 audit data including recommendations.", + "Generate a compliance report draft for HIPAA framework covering current policies and recent findings.", + "Create a markdown format compliance status report for ISO 27001 covering last year's audit period." + ] + }, + "tags": [ + "compliance", + "reporting", + "regulatory", + "audit", + "documentation", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"regulatoryFrameworks\":[\"GDPR\"],\"organizationData\":{\"policies\":\"Data protection policies established\",\"controls\":\"Encryption enabled\"},\"auditFindings\":[{\"issue\":\"Data inventory incomplete\",\"severity\":\"medium\",\"remediationStatus\":\"open\"}],\"reportPeriod\":\"Q1 2024\",\"includeRecommendations\":true,\"reportFormat\":\"markdown\"}", + "description": "Draft a GDPR compliance report for the first quarter of 2024 including audit findings and recommendations in markdown format." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "compliance-management.createArticle", + "description": "Creates a comprehensive compliance article document based on specified regulatory requirements, organizational policies, and target audience. Accepts inputs including title, content sections, regulatory references, and formatting preferences, then generates a structured compliance article ready for distribution or publication.", + "category": "compliance-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the compliance article. Required for identification and summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentSections", + "type": "array", + "description": "An array of content sections, each with heading and body text, outlining the article's main points and explanations.", + "required": true, + "defaultValue": "" + }, + { + "name": "regulatoryReferences", + "type": "array", + "description": "List of applicable regulations, laws, or policies that the article addresses or references.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended readership of the article, e.g., employees, management, or external partners, to tailor terminology and focus.", + "required": false, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Instructions on formatting such as font size, styles, or document structure preferences.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a summary section at the beginning of the article.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') to generate the article in a specific language.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns the completed compliance article document containing formatted text, sections, and references in a structured format suitable for export or integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate detailed compliance articles tailored to specific regulations and organizational policies, ensuring clarity and completeness for intended readers such as employees or auditors.", + "limitations": "This tool does not audit compliance or validate legal accuracy beyond the input provided. It cannot replace expert legal review or provide real-time regulatory updates.", + "examples": [ + "Create a compliance article for GDPR data handling policy aimed at all employees.", + "Generate an article summarizing new workplace safety regulations with references to OSHA guidelines.", + "Produce a compliance article in Spanish covering anti-bribery laws for international teams." + ] + }, + "tags": [ + "compliance", + "document", + "article", + "regulations", + "policy", + "creation", + "legal", + "management" + ], + "examples": [ + { + "inputJson": "{\"title\":\"GDPR Compliance Overview\",\"contentSections\":[{\"heading\":\"Introduction\",\"body\":\"This article outlines our organization's approach to GDPR compliance.\"},{\"heading\":\"Data Subject Rights\",\"body\":\"Employees must respect the rights of data subjects as described in GDPR.\"}],\"regulatoryReferences\":[\"GDPR Article 5\",\"GDPR Article 15\"],\"targetAudience\":\"employees\",\"formattingOptions\":{\"fontSize\":12,\"fontFamily\":\"Arial\"},\"includeSummary\":true,\"language\":\"en\"}", + "description": "Generate an article outlining GDPR compliance policies for employees including a summary and specified formatting." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "security-tools.draftSentence", + "description": "This tool drafts a secure, clear, and concise sentence related to security policies, alerts, or practices based on the given context and purpose. It accepts inputs on security topic, intended tone, and audience, then generates a sentence that can be used in documentation, alerts, or communication regarding security matters, ensuring clarity and relevance.", + "category": "security-tools", + "parameters": [ + { + "name": "securityTopic", + "type": "string", + "description": "The specific security topic or theme to address in the sentence, such as 'password policy' or 'phishing alert'.", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "Intended purpose of the sentence, e.g., 'inform', 'warn', or 'instruct' to tailor the sentence style.", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Target audience for the sentence, such as 'end users', 'developers', or 'management', to adjust complexity and tone.", + "required": false, + "defaultValue": "general users" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the sentence, e.g., 'formal', 'friendly', or 'urgent' to match communication style.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'sentence' with the drafted secure communication sentence." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a short, clear, and security-focused sentence for communication, alerting, or documentation purposes tailored to a specific topic, audience, and tone. It helps automate consistent security messaging.", + "limitations": "This tool does not generate full policy documents, detailed technical explanations, or complex multi-sentence content. It only drafts a single sentence and may not cover highly specialized jargon or legal language perfectly.", + "examples": [ + "Draft a friendly warning sentence about phishing attempts for end users.", + "Generate a formal instruction sentence for developers on input validation.", + "Create an urgent alert sentence for management about a recent security breach." + ] + }, + "tags": [ + "security", + "communication", + "sentence generation", + "policy", + "alerts", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"securityTopic\":\"password policy\",\"purpose\":\"inform\",\"audience\":\"end users\",\"tone\":\"formal\"}", + "description": "Generate an informative sentence about password policy for end users in a formal tone." + }, + { + "inputJson": "{\"securityTopic\":\"phishing alert\",\"purpose\":\"warn\",\"audience\":\"general users\",\"tone\":\"urgent\"}", + "description": "Generate an urgent warning sentence about phishing alerts for general users." + }, + { + "inputJson": "{\"securityTopic\":\"input validation\",\"purpose\":\"instruct\",\"audience\":\"developers\",\"tone\":\"formal\"}", + "description": "Generate a formal instruction sentence about input validation for developers." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "security-tools.generateReadme", + "description": "Generates a comprehensive README.md file for security-related projects based on provided project details, security features, installation, usage, and contribution guidelines. Accepts structured project data and outputs a markdown formatted README to facilitate clear security documentation.", + "category": "security-tools", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the security project or tool to be documented.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief description outlining the purpose and scope of the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "securityFeatures", + "type": "array", + "description": "An array of key security features or functionalities provided by the project.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step guidance on how to install or deploy the project components securely.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "Examples showcasing how to securely use or integrate the project features.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contributionGuidelines", + "type": "string", + "description": "Instructions for developers on how to contribute, including security standards and best practices.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "Type of license governing the use and distribution of the project, e.g., MIT, Apache 2.0.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A single field containing the complete README content in markdown format, ready for use in repositories." + }, + "aiAgent": { + "useCase": "This tool should be used when creating or updating security-focused project documentation to produce standardized, clear, and comprehensive README files that explain security features, usage, and contribution instructions, ensuring users and developers understand the security aspects.", + "limitations": "It cannot analyze or validate the security of the project code itself; it relies on user-provided input for content generation and does not replace manual review or detailed security audits.", + "examples": [ + "Generate a README for a firewall management tool including features and install steps.", + "Create a README for an encryption library with usage examples and contribution guidelines.", + "Produce a README for a security monitoring application emphasizing key security capabilities." + ] + }, + "tags": [ + "documentation", + "security", + "readme", + "generate", + "markdown", + "project", + "opensource" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"SecureShield Firewall\",\"projectDescription\":\"A firewall management system for network protection.\",\"securityFeatures\":[\"Intrusion detection\",\"Real-time alerting\",\"Customizable firewall rules\"],\"installationInstructions\":\"1. Clone the repo\\n2. Run npm install\\n3. Configure firewall rules in config.yaml\\n4. Start the service with npm start\",\"usageExamples\":[\"Start firewall: npm start\",\"Add rule: ./firewall-cli add-rule --port 80 --action block\"],\"contributionGuidelines\":\"Please submit pull requests following our coding standards. Run security tests before submitting.\",\"license\":\"MIT\"}", + "description": "Generate README for a firewall management project with detailed security features and instructions." + }, + { + "inputJson": "{\"projectName\":\"EncryptPlus\",\"projectDescription\":\"A library providing strong encryption and decryption functions.\",\"securityFeatures\":[\"AES-256 encryption\",\"Key management\",\"Secure random number generation\"],\"installationInstructions\":\"Install via pip: pip install encryptplus\",\"usageExamples\":[\"from encryptplus import encrypt, decrypt\\nencrypted = encrypt(data, key)\"],\"contributionGuidelines\":\"Contributions welcome. All code must pass encryption validation tests.\",\"license\":\"Apache 2.0\"}", + "description": "Generate README for an encryption library with usage examples and guidelines." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "security-tools.generateTemplate", + "description": "Generates customizable security policy templates based on input parameters such as policy type, environment, and compliance standards. Accepts details like policy scope and regulatory requirements, and produces structured, ready-to-adopt security policy documents tailored to specific organizational needs.", + "category": "security-tools", + "parameters": [ + { + "name": "policyType", + "type": "string", + "description": "Type of security policy to generate, e.g., access control, data protection, network security.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Target environment for the policy such as cloud, on-premise, or hybrid.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards to consider, e.g., GDPR, HIPAA, ISO27001.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "organizationName", + "type": "string", + "description": "Name of the organization for which the policy is drafted.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeGlossary", + "type": "boolean", + "description": "Whether to include a glossary section explaining security terms.", + "required": false, + "defaultValue": "false" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The date from which the policy becomes effective, in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated security policy document as a string and metadata including policy type and environment." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to assist in generating standardized security policy documents tailored to specific organizational environments and compliance requirements, helping streamline policy creation and ensuring consistency with best practices.", + "limitations": "The tool cannot validate existing policies for compliance or enforce policies; it only generates template documents. Custom legal review is recommended for final adoption.", + "examples": [ + "Generate an access control policy template for a cloud environment with GDPR compliance.", + "Create a data protection policy for an on-premise environment without any compliance standards.", + "Produce a network security policy including a glossary, effective from 2024-07-01, for Acme Corp." + ] + }, + "tags": [ + "security", + "template", + "policy", + "compliance", + "document generation", + "governance" + ], + "examples": [ + { + "inputJson": "{\"policyType\":\"access control\",\"environment\":\"cloud\",\"complianceStandards\":[\"GDPR\",\"ISO27001\"],\"organizationName\":\"Acme Inc.\",\"includeGlossary\":true,\"effectiveDate\":\"2024-07-01\"}", + "description": "Generate an access control policy template for cloud environments including GDPR and ISO27001 compliance for Acme Inc., with glossary and effective date." + }, + { + "inputJson": "{\"policyType\":\"data protection\",\"environment\":\"on-premise\",\"complianceStandards\":[],\"organizationName\":\"Beta Ltd.\",\"includeGlossary\":false,\"effectiveDate\":\"\"}", + "description": "Generate a data protection policy template for on-premise deployment for Beta Ltd. without compliance standards or glossary." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "security-tools.generateYAML", + "description": "Generates a YAML configuration file for security policies based on provided security settings, rules, and metadata. Accepts structured input defining security rules such as firewall, authentication, and encryption policies, then outputs a validated YAML string representing the configuration ready for deployment in security tools.", + "category": "security-tools", + "parameters": [ + { + "name": "securityPolicies", + "type": "object", + "description": "An object defining various security policies like firewall rules, authentication settings, and encryption parameters to include in the YAML configuration.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Flag to include descriptive comments explaining each section and rule in the generated YAML for readability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaVersion", + "type": "string", + "description": "Version identifier of the YAML configuration schema to ensure compatibility with target security systems.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "outputStyle", + "type": "string", + "description": "YAML formatting style, can be 'block' (default) or 'flow' style", + "required": false, + "defaultValue": "block" + } + ], + "returns": { + "type": "object", + "description": "An object containing the YAML string of the generated security configuration under the key 'yamlConfig', and an optional validation status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate security configuration files in YAML format for firewalls, access controls, and encryption rules from structured inputs. It helps automate and standardize security policy creation to be used in infrastructure or application security setups.", + "limitations": "This tool does not validate the semantic correctness of provided security policies beyond YAML syntax validity. It does not deploy or enforce the configurations, nor supports proprietary encrypted YAML formats.", + "examples": [ + "Generate a YAML config for firewall policy and auth rules from JSON definitions.", + "Produce a yaml for security scanning tool with comments included.", + "Export security group rules in yaml format for devops usage." + ] + }, + "tags": [ + "security", + "configuration", + "YAML", + "generate", + "policy", + "firewall", + "authentication", + "encryption" + ], + "examples": [ + { + "inputJson": "{\"securityPolicies\":{\"firewallRules\":[{\"port\":80,\"protocol\":\"tcp\",\"action\":\"allow\"},{\"port\":22,\"protocol\":\"tcp\",\"action\":\"deny\"}],\"authentication\":{\"method\":\"oauth2\",\"tokenExpiryMinutes\":60}},\"includeComments\":true,\"schemaVersion\":\"1.0\",\"outputStyle\":\"block\"}", + "description": "Generate YAML for firewall and OAuth2 authentication policies with comments included." + }, + { + "inputJson": "{\"securityPolicies\":{\"encryption\":{\"enabled\":true,\"algorithm\":\"AES-256\"}},\"includeComments\":false}", + "description": "Generate a YAML config for enabling AES-256 encryption without comments." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "security-tools.generateMarkdown", + "description": "Generates a comprehensive Markdown report summarizing security assessment results. Accepts an object with vulnerability findings, risk levels, remediation suggestions, and metadata; processes this to produce a well-structured Markdown document suitable for sharing with teams or stakeholders.", + "category": "security-tools", + "parameters": [ + { + "name": "assessmentTitle", + "type": "string", + "description": "Title of the security assessment report to appear as the main heading", + "required": true, + "defaultValue": "" + }, + { + "name": "assessmentDate", + "type": "string", + "description": "Date of the security assessment in ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "findings", + "type": "array", + "description": "Array of vulnerability finding objects each containing id, description, severity, and recommendation", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a summary section with total findings and risk breakdown", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFilename", + "type": "string", + "description": "Optional filename suggestion for the generated Markdown file (without extension)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the Markdown string representing the full security assessment report" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform structured security assessment data into a standardized, human-readable Markdown report for sharing with security teams, developers, and management. It helps create clear, concise documentation that captures findings, severity levels, and recommended remedies.", + "limitations": "This tool does not perform vulnerability detection or analysis; it only formats given findings into Markdown. It cannot generate diagrams or graphical content in the report.", + "examples": [ + "Generate a Markdown report from vulnerability scan data including severity and remediation.", + "Create a summary security report in Markdown format with given findings and date.", + "Produce a Markdown document for audit results suitable for emailing to stakeholders." + ] + }, + "tags": [ + "security", + "reporting", + "markdown", + "vulnerability", + "documentation", + "assessment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"assessmentTitle\":\"Web Application Security Assessment\",\"assessmentDate\":\"2024-05-01\",\"findings\":[{\"id\":\"VULN-001\",\"description\":\"SQL Injection vulnerability in login form.\",\"severity\":\"High\",\"recommendation\":\"Implement parameterized queries.\"},{\"id\":\"VULN-002\",\"description\":\"Outdated software version detected.\",\"severity\":\"Medium\",\"recommendation\":\"Update to latest secure version.\"}],\"includeSummary\":true,\"outputFilename\":\"WebAppSecurityReport\"}", + "description": "Generate a detailed Markdown report for a web application security assessment including two findings with severity and remediation recommendations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "legal-tools.createCustomer", + "description": "This tool creates and registers a new customer profile in a legal contract management system. It accepts customer details such as name, contact information, tax ID, and business type, validates required fields, and outputs a confirmation with customer ID and registration status.", + "category": "legal-tools", + "parameters": [ + { + "name": "customerName", + "type": "string", + "description": "Full legal name of the customer", + "required": true, + "defaultValue": "" + }, + { + "name": "contactEmail", + "type": "string", + "description": "Primary contact email address for the customer", + "required": true, + "defaultValue": "" + }, + { + "name": "contactPhone", + "type": "string", + "description": "Primary contact phone number for the customer", + "required": false, + "defaultValue": "" + }, + { + "name": "taxIdentificationNumber", + "type": "string", + "description": "Official tax ID or registration number of the customer", + "required": false, + "defaultValue": "" + }, + { + "name": "businessType", + "type": "string", + "description": "Type of business entity (e.g., LLC, corporation, sole proprietorship)", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Physical address of the customer including street, city, state, and postal code", + "required": false, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or special instructions related to the customer", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the customer ID assigned, registration status, and any validation errors encountered" + }, + "aiAgent": { + "useCase": "AI agents should use this tool when they need to onboard new customers into a contract or legal compliance system, ensuring that all mandatory customer details are properly collected and a unique customer profile is generated. It standardizes customer data entry and flags missing required fields.", + "limitations": "This tool does not handle updating existing customer records or validating the authenticity of legal or tax IDs. It also does not create legal contracts, only customer profiles within the system.", + "examples": [ + "Create a new customer profile with name, email, and tax ID to register them for contract tracking.", + "Add a customer to the system with their contact info and business type for compliance record keeping.", + "Register a new client with full address and notes in the legal management platform." + ] + }, + "tags": [ + "legal", + "customer", + "create", + "contract management", + "compliance", + "registration" + ], + "examples": [ + { + "inputJson": "{\"customerName\":\"Acme Corporation\",\"contactEmail\":\"contact@acme.com\",\"taxIdentificationNumber\":\"123456789\",\"businessType\":\"Corporation\",\"address\":{\"street\":\"123 Main St\",\"city\":\"Metropolis\",\"state\":\"NY\",\"postalCode\":\"10001\"},\"notes\":\"Preferred customer for expedited contract review.\"}", + "description": "Create a new corporation customer profile with full contact and address details." + }, + { + "inputJson": "{\"customerName\":\"John Doe\",\"contactEmail\":\"johndoe@example.com\"}", + "description": "Add an individual customer with only the name and email, using minimal required fields." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "customer-support.analyzeReply", + "description": "Analyzes a customer support reply message to assess sentiment, tone, clarity, and compliance with company guidelines. Accepts the reply text and optional context metadata, then returns a structured analysis report highlighting sentiment scores, tone classification, identified issues, and improvement suggestions.", + "category": "customer-support", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The text content of the customer support reply to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextMetadata", + "type": "object", + "description": "Optional contextual information such as ticket ID, customer profile, or product category relevant to the reply.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the reply text, e.g., 'en' for English. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "checkCompliance", + "type": "boolean", + "description": "Whether to evaluate the reply for compliance with predefined company policies and guidelines.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including sentiment score, tone classification, clarity rating, compliance status, detected issues, and improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the quality and compliance of a customer support reply, to ensure positive customer experience and adherence to company policies. It helps identify tone appropriateness, sentiment, clarity, and areas for improvement in communication.", + "limitations": "This tool cannot replace human judgment in complex or sensitive cases and may have limited accuracy on highly technical or domain-specific content.", + "examples": [ + "Analyze this customer reply for sentiment and tone.", + "Check if the reply complies with our support communication guidelines.", + "Evaluate clarity and suggest improvements for a customer message." + ] + }, + "tags": [ + "customer-support", + "analysis", + "sentiment-analysis", + "tone-detection", + "compliance", + "clarity", + "customer-reply" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thank you for reaching out! I'm sorry to hear about the issue. We are working on it and will update you shortly.\",\"language\":\"en\",\"checkCompliance\":true}", + "description": "A polite, empathetic reply needing analysis for tone, sentiment, and compliance." + }, + { + "inputJson": "{\"replyText\":\"Your problem is caused by user error. Read the manual next time.\",\"checkCompliance\":true}", + "description": "An aggressive customer reply that likely violates company communication policies." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "customer-support.analyzeIncident", + "description": "Analyzes security incident reports submitted by customers or support agents. Takes an incident report as input, processes details such as incident type, severity, affected systems, and timeline. Outputs a structured analysis including classification, prioritized risk assessment, potential causes, and recommended next steps for resolution or escalation.", + "category": "customer-support", + "parameters": [ + { + "name": "incidentReport", + "type": "string", + "description": "Full text or JSON string of the incident report describing the event details, symptoms, and context.", + "required": true, + "defaultValue": "" + }, + { + "name": "incidentType", + "type": "string", + "description": "Category of the incident such as 'phishing', 'malware', 'unauthorized access'. If not provided, the tool attempts classification automatically.", + "required": false, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "User-assigned severity level (e.g., low, medium, high). If missing, the tool estimates severity based on input data.", + "required": false, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected systems, devices, applications, or services in the incident. Helps tailor analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include detailed remediation and prevention recommendations in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report containing incident classification, severity assessment, timeline summary, possible root causes, and optionally, remediation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract actionable insights and risk evaluation from raw or semi-structured security incident reports received by customer support. It aids in understanding incident characteristics and guiding triage or escalation decisions.", + "limitations": "Does not replace detailed forensic or technical investigation. May not accurately classify incidents lacking sufficient detail or specialized domain knowledge.", + "examples": [ + "Analyze this phishing incident report to determine severity and next steps.", + "Classify and prioritize the suspected malware infection report from customer support.", + "Provide remediation recommendations for an unauthorized system access incident based on report details." + ] + }, + "tags": [ + "analysis", + "incident", + "security", + "customer-support", + "risk-assessment", + "triage" + ], + "examples": [ + { + "inputJson": "{\"incidentReport\":\"Customer reports multiple failed login attempts followed by account lockout, suspected brute force attack.\",\"incidentType\":\"unauthorized access\",\"severityLevel\":\"high\",\"affectedSystems\":[\"customer account system\"],\"includeRecommendations\":true}", + "description": "Analyzing a high severity unauthorized access incident involving brute force attempts." + }, + { + "inputJson": "{\"incidentReport\":\"User received suspicious email asking for credentials, possible phishing attempt.\",\"incidentType\":\"phishing\",\"includeRecommendations\":true}", + "description": "Analyzing a suspected phishing email incident to classify severity and suggest response steps." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "customer-support.buildComponent", + "description": "Builds a customizable user interface component for customer support platforms. Accepts configuration input describing component type, layout, and data binding. Processes these to generate reusable UI code and integration metadata, outputting the component code and configuration details for deployment.", + "category": "customer-support", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of the support component to build (e.g., chatWidget, ticketForm, FAQSection).", + "required": true, + "defaultValue": "" + }, + { + "name": "layoutConfig", + "type": "object", + "description": "Object defining layout options like dimensions, colors, and positioning of the component.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataBindings", + "type": "object", + "description": "Defines how the component binds to data sources like ticket APIs or user profiles.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeScripts", + "type": "boolean", + "description": "Whether to include necessary scripts and styles inline for standalone deployment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output code, e.g., 'React', 'Vue', or 'HTML'.", + "required": true, + "defaultValue": "React" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated component code as a string and a configuration summary outlining integration requirements." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate custom UI components for customer support systems based on dynamic specifications, enabling rapid development and deployment of support features like chat widgets or ticket forms.", + "limitations": "Does not handle backend logic or data storage; focuses solely on frontend UI component generation. Integration and deployment require external handling.", + "examples": [ + "Generate a React chatWidget component with a blue theme and bind it to the tickets API.", + "Create a simple FAQSection component in HTML format without inline scripts.", + "Build a ticketForm component configured for a minimalistic layout with user profile data bindings." + ] + }, + "tags": [ + "customer support", + "UI development", + "component generation", + "frontend", + "automation" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"chatWidget\",\"layoutConfig\":{\"width\":\"400px\",\"height\":\"600px\",\"themeColor\":\"#1a73e8\"},\"dataBindings\":{\"ticketAPI\":\"/api/tickets\"},\"includeScripts\":true,\"outputFormat\":\"React\"}", + "description": "Generate a React chat widget component with specified layout and data binding to tickets API." + }, + { + "inputJson": "{\"componentType\":\"FAQSection\",\"layoutConfig\":{\"fontSize\":\"14px\",\"backgroundColor\":\"#f9f9f9\"},\"includeScripts\":false,\"outputFormat\":\"HTML\"}", + "description": "Create a simple FAQ section component in HTML without scripts, styled with a light background." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "marketing-automation.formatInvoice", + "description": "Formats raw invoice data into a polished, professional invoice document in PDF or HTML format. Accepts invoice details (items, prices, customer info), applies branding and layout templates, and outputs a styled invoice ready for delivery or archiving.", + "category": "marketing-automation", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "Structured object containing invoice details such as items, quantities, prices, taxes, customer, and company info.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Identifier of the invoice template to use for styling and layout. If omitted, a default template is applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the formatted invoice output. Supported values: 'pdf', 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includePaymentDetails", + "type": "boolean", + "description": "Whether to include payment instructions and terms in the formatted invoice.", + "required": false, + "defaultValue": "true" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code to format dates, numbers, and currency according to regional standards (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64-encoded string of the formatted invoice file and its MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to convert raw, structured invoice data into a professional, standardized document format for sending to customers or storing. It streamlines the creation of consistent invoices with branding and legal details applied automatically.", + "limitations": "Cannot generate or extract invoice data; requires input to be pre-structured and validated. Does not send invoices or handle payment processing.", + "examples": [ + "Format a customer's raw invoice data into a branded PDF to email", + "Generate an HTML invoice for display on a website from backend data", + "Create an invoice formatted for a different locale with appropriate currency formatting" + ] + }, + "tags": [ + "marketing", + "automation", + "invoice", + "document-formatting", + "pdf", + "html", + "branding" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-1234\",\"date\":\"2024-06-01\",\"dueDate\":\"2024-06-15\",\"billTo\":{\"name\":\"Acme Corp\",\"address\":\"123 Example Rd\"},\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":150}],\"taxRate\":0.1,\"companyInfo\":{\"name\":\"MyCo\",\"logoUrl\":\"https://myco.com/logo.png\"}},\"templateId\":\"modern-blue\",\"outputFormat\":\"pdf\",\"includePaymentDetails\":true,\"locale\":\"en-US\"}", + "description": "Format a typical invoice with one item into a branded PDF with payment details included, using an English (US) locale for formatting." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "finance-tools.createService", + "description": "This tool enables the creation of a financial management service configuration by accepting parameters such as service name, type (e.g., accounting, payroll, invoicing), supported currencies, user access roles, and optional integrations (e.g., bank feeds, tax APIs). It processes these inputs to generate a comprehensive service setup object detailing configuration and access settings ready for deployment.", + "category": "finance-tools", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name identifier for the financial service being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceType", + "type": "string", + "description": "Type of financial service to create, such as 'accounting', 'payroll', 'invoicing'.", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedCurrencies", + "type": "array", + "description": "List of currency codes (ISO 4217) that the service will support for transactions and reports.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "userRoles", + "type": "object", + "description": "Mapping of user role names to their permission levels within the service (e.g., {'admin': 'full', 'viewer': 'read-only'}).", + "required": true, + "defaultValue": "{}" + }, + { + "name": "integrationAPIs", + "type": "array", + "description": "Optional list of external API integrations to link with the service, such as bank feeds or tax calculation services.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableAuditLog", + "type": "boolean", + "description": "Flag indicating whether audit logging of user actions and financial transactions is enabled.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the created service configuration, including serviceId, serviceName, serviceType, supportedCurrencies, userRoles, integrations, and auditLogEnabled status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically define and deploy a new financial service environment with specific parameters such as type, currency support, user roles, and integration connections. It helps set up standardized service configurations for accounting, payroll, or invoicing workflows in automation pipelines.", + "limitations": "This tool only configures service metadata and settings; it does not provision actual backend infrastructure or handle real transactional data processing.", + "examples": [ + "Create a payroll service supporting USD and EUR with admin and employee roles and integration to a tax API.", + "Create an invoicing service supporting multiple currencies with read-only viewer roles and no external integrations.", + "Set up an accounting service with audit logging enabled and integration to bank feed APIs." + ] + }, + "tags": [ + "finance", + "service", + "creation", + "configuration", + "accounting", + "payroll", + "invoicing", + "integration" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"GlobalPayroll\",\"serviceType\":\"payroll\",\"supportedCurrencies\":[\"USD\",\"EUR\"],\"userRoles\":{\"admin\":\"full\",\"employee\":\"limited\"},\"integrationAPIs\":[\"TaxAPI\"],\"enableAuditLog\":true}", + "description": "Creates a payroll financial service that supports USD and EUR currencies, with admin and employee role permissions, connected to an external tax API, and with audit logging enabled." + }, + { + "inputJson": "{\"serviceName\":\"QuickInvoice\",\"serviceType\":\"invoicing\",\"supportedCurrencies\":[\"USD\"],\"userRoles\":{\"admin\":\"full\",\"viewer\":\"read-only\"},\"integrationAPIs\":[],\"enableAuditLog\":false}", + "description": "Sets up a basic invoicing service supporting USD with full admin and read-only viewer roles, no external integrations, and audit logging disabled." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "finance-tools.createLead", + "description": "Creates a new sales lead record in the financial CRM system using provided contact and company details, lead source, and potential deal information. Validates inputs, assigns a unique lead ID, and returns the created lead with status and timestamps.", + "category": "finance-tools", + "parameters": [ + { + "name": "contactName", + "type": "string", + "description": "Full name of the primary contact person for the lead.", + "required": true, + "defaultValue": "" + }, + { + "name": "companyName", + "type": "string", + "description": "Name of the company or organization associated with the lead.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address of the lead contact. Used for communication.", + "required": false, + "defaultValue": "" + }, + { + "name": "phone", + "type": "string", + "description": "Phone number of the lead contact for calls or texts.", + "required": false, + "defaultValue": "" + }, + { + "name": "leadSource", + "type": "string", + "description": "Source from which the lead was acquired, e.g., referral, website, trade show.", + "required": false, + "defaultValue": "unknown" + }, + { + "name": "potentialValue", + "type": "number", + "description": "Estimated potential revenue value of the lead in USD.", + "required": false, + "defaultValue": "0" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or categories to classify the lead for filtering purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level assigned to the lead, e.g., high, medium, low.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object representing the newly created lead, including a unique lead ID, input details, creation timestamp, and initial status (e.g., new)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create and register a new sales lead record in the financial management or CRM system. Ideal for scenarios where a lead's contact info, company data, and potential deal value must be captured to enable sales tracking and follow-up.", + "limitations": "This tool does not validate the authenticity of leads or integrate with external data sources for lead enrichment. It also does not update existing leads or handle lead conversion processes.", + "examples": [ + "Create a new lead for a potential client named Jane Smith at Acme Corp with email and phone contacts.", + "Add a lead from a recent trade show with estimated deal value and tags for future segmentation.", + "Register a lead with minimal details, just contact and company name, defaulting other fields." + ] + }, + "tags": [ + "finance", + "crm", + "leadManagement", + "sales", + "create", + "business" + ], + "examples": [ + { + "inputJson": "{\"contactName\":\"Jane Smith\",\"companyName\":\"Acme Corp\",\"email\":\"jane.smith@acme.com\",\"phone\":\"555-1234\",\"leadSource\":\"trade show\",\"potentialValue\":50000,\"tags\":[\"enterprise\",\"priority-client\"],\"priority\":\"high\"}", + "description": "Create a high priority lead from trade show with estimated deal value" + }, + { + "inputJson": "{\"contactName\":\"John Doe\",\"companyName\":\"Startup Inc\"}", + "description": "Create a lead with minimal required fields, defaulting others" + }, + { + "inputJson": "{\"contactName\":\"Mary Johnson\",\"companyName\":\"Tech Solutions\",\"email\":\"mary.j@techsolutions.com\",\"leadSource\":\"website\",\"priority\":\"medium\"}", + "description": "Create a new lead from website inquiry with medium priority" + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "human-resources.analyzeText", + "description": "Analyzes text content such as job descriptions, employee feedback, or interview transcripts to extract insights including sentiment, keyword frequency, and thematic topics. Accepts raw textual input and returns structured analysis results to support HR decision-making and improve recruitment or employee engagement processes.", + "category": "human-resources", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to be analyzed, such as a job posting, employee survey comment, or interview transcript.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "List of analysis types to perform on the text, e.g., ['sentiment', 'keywords', 'topics'].", + "required": true, + "defaultValue": "[\"sentiment\",\"keywords\",\"topics\"]" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input text to improve analysis accuracy (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxKeywords", + "type": "number", + "description": "Maximum number of keywords to extract from the text.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Whether to include example sentences or text excerpts illustrating keywords or topics.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the results of the requested analyses: sentiment score and label, extracted keywords with frequency, identified thematic topics, and optionally example contexts." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract actionable insights from textual HR data such as understanding candidate sentiment from cover letters, summarizing employee feedback themes, or analyzing interview transcripts for patterns. It helps automate qualitative data analysis in human resources workflows.", + "limitations": "The tool does not perform comprehensive linguistic assessments such as grammar correction or deep semantic understanding beyond analyzed metrics. It may be less accurate for texts with slang, idioms, or mixed languages not specified in the language parameter.", + "examples": [ + "Analyze sentiment and keywords in a set of anonymous employee satisfaction survey comments.", + "Extract main topics from multiple job descriptions to identify common skills required.", + "Evaluate interview transcript excerpts for positive or negative candidate responses." + ] + }, + "tags": [ + "analysis", + "text", + "human-resources", + "sentiment", + "keywords", + "topics" + ], + "examples": [ + { + "inputJson": "{\"text\": \"Our company values innovation and teamwork. We seek a proactive software engineer with experience in Python and cloud technologies.\", \"analysisTypes\": [\"keywords\", \"topics\"], \"language\": \"en\", \"maxKeywords\": 5, \"includeContext\": true}", + "description": "Analyzes a job description to extract top keywords and main topics highlighting the skills and values sought." + }, + { + "inputJson": "{\"text\": \"I really enjoy the collaborative environment at my workplace, though sometimes the workload feels overwhelming.\", \"analysisTypes\": [\"sentiment\", \"keywords\"], \"language\": \"en\", \"maxKeywords\": 10, \"includeContext\": false}", + "description": "Performs sentiment analysis and keyword extraction on an employee feedback comment to understand morale and key concerns." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "translation.createModule", + "description": "Creates a customizable translation module in code form that can translate text between specified source and target languages. Accepts configuration parameters such as source language, target language, translation engine API key, and optional caching settings. Outputs source code for a ready-to-use translation module in the chosen programming language.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the source text to translate (e.g., 'en').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code to translate the text into (e.g., 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated translation module (e.g., 'Python', 'JavaScript').", + "required": true, + "defaultValue": "" + }, + { + "name": "translationEngineApiKey", + "type": "string", + "description": "API key or token for the translation engine service to be used (e.g., Google Translate API key).", + "required": true, + "defaultValue": "" + }, + { + "name": "enableCaching", + "type": "boolean", + "description": "Whether to enable caching of translation results to improve performance on repeated translations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "cacheExpirySeconds", + "type": "number", + "description": "Expiration time in seconds for cached translation entries if caching is enabled.", + "required": false, + "defaultValue": "3600" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code string of the translation module and metadata about the module, such as language and instructions for usage." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a reusable, self-contained translation code module configured for specific source and target languages and integrated with a translation service API. It helps automate creating code that can quickly be embedded into applications requiring language translation.", + "limitations": "This tool does not perform actual translation of text input; it only generates the code module. The generated module requires valid API keys and internet access to perform translations. It does not handle complex custom translation logic or offline translation capabilities.", + "examples": [ + "Generate a Python translation module to translate English to Spanish using Google Translate API.", + "Create a JavaScript module to translate French to Japanese with caching enabled for 2 hours.", + "Generate a Python module for translating German to Italian, without caching." + ] + }, + "tags": [ + "translation", + "code generation", + "module creation", + "language", + "API integration", + "development" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"programmingLanguage\":\"Python\",\"translationEngineApiKey\":\"AIzaSyD-ExampleKey\",\"enableCaching\":true,\"cacheExpirySeconds\":7200}", + "description": "Generate a Python translation module for English to Spanish translation with caching enabled for 2 hours." + }, + { + "inputJson": "{\"sourceLanguage\":\"fr\",\"targetLanguage\":\"ja\",\"programmingLanguage\":\"JavaScript\",\"translationEngineApiKey\":\"key-123456789\",\"enableCaching\":false}", + "description": "Create a JavaScript translation module to translate French to Japanese without caching." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "content-creation.buildComponent", + "description": "Generates reusable UI components based on specifications provided as input, including component type, properties, state management, and styling options. Outputs clean, ready-to-integrate code snippets in popular frameworks such as React, Vue, or Angular, facilitating rapid front-end development.", + "category": "content-creation", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The desired name for the component, used for naming functions and files.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The front-end framework in which to generate the component code (e.g., React, Vue, Angular).", + "required": true, + "defaultValue": "React" + }, + { + "name": "props", + "type": "object", + "description": "An object describing the properties the component should accept, including names and types.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "stateful", + "type": "boolean", + "description": "Whether the component should include internal state management logic.", + "required": false, + "defaultValue": "false" + }, + { + "name": "styles", + "type": "string", + "description": "Styling approach to include with the component code, e.g., CSS modules, styled-components, inline styles.", + "required": false, + "defaultValue": "CSS Modules" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Indicates if basic unit tests for the component should be generated along with the code.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the component source code, optional style snippets, and unit test code if requested." + }, + "aiAgent": { + "useCase": "This tool should be used when a developer or AI agent needs to quickly scaffold front-end UI components tailored to specific frameworks and customization requirements, to accelerate web or app development cycles.", + "limitations": "Cannot generate highly complex business logic or fully dynamic components with backend integration; focuses on UI code scaffolding only.", + "examples": [ + "Build a React button component accepting label and onClick props with inline styles.", + "Generate a stateful Vue input field component with scoped CSS modules styling and tests.", + "Create an Angular presentational card component receiving title and content properties." + ] + }, + "tags": [ + "ui", + "component", + "code-generation", + "frontend", + "react", + "vue", + "angular" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"MyButton\",\"framework\":\"React\",\"props\":{\"label\":\"string\",\"onClick\":\"function\"},\"stateful\":false,\"styles\":\"inline\",\"includeTests\":true}", + "description": "Generate a React stateless button component with label and onClick props, using inline styles and include unit tests." + }, + { + "inputJson": "{\"componentName\":\"CustomInput\",\"framework\":\"Vue\",\"props\":{\"value\":\"string\",\"placeholder\":\"string\"},\"stateful\":true,\"styles\":\"CSS Modules\",\"includeTests\":false}", + "description": "Create a stateful Vue input component with value and placeholder props, styled with CSS modules, without tests." + }, + { + "inputJson": "{\"componentName\":\"InfoCard\",\"framework\":\"Angular\",\"props\":{\"title\":\"string\",\"content\":\"string\"},\"stateful\":false,\"styles\":\"styled-components\",\"includeTests\":false}", + "description": "Build a simple Angular card component with title and content, styled with styled-components, no tests included." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "data-analytics.createHeading", + "description": "Generates formatted heading text based on specified content and style properties, used to visually structure sections in data reports or dashboards. Accepts input text and style options, processes formatting rules, and outputs a rich text heading object ready for rendering in analytic applications.", + "category": "data-analytics", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The heading text content to be displayed. Required for meaningful heading generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level to indicate hierarchy, analogous to HTML h1-h6 (values 1 to 6). Defines size and importance.", + "required": false, + "defaultValue": "1" + }, + { + "name": "textAlign", + "type": "string", + "description": "Text alignment within the heading area: 'left', 'center', or 'right'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "fontWeight", + "type": "string", + "description": "Font weight/style of the heading text, e.g., 'normal', 'bold', or numeric weight like '700'.", + "required": false, + "defaultValue": "bold" + }, + { + "name": "color", + "type": "string", + "description": "Text color as a hex code or color name to style the heading color.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "margin", + "type": "object", + "description": "Optional margin spacing around the heading, with keys top, right, bottom, left (numbers in pixels).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A formatted heading object including text, level, styles, and layout properties suitable for UI rendering or report generation." + }, + "aiAgent": { + "useCase": "Use this tool when constructing structured data reports or dashboards that require clear, styled headings to organize content visually and semantically, enhancing readability and navigation.", + "limitations": "This tool only creates single heading elements; it does not build full document structures, handle multilingual typography nuances, or perform accessibility checks.", + "examples": [ + "Create a main report title heading with large bold text centered.", + "Generate a subheading with level 3 aligned to the left in blue color.", + "Produce a heading with custom margins to separate it visually in a dashboard." + ] + }, + "tags": [ + "data", + "heading", + "text", + "formatting", + "visualization", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Sales Report Q1 2024\",\"level\":1,\"textAlign\":\"center\",\"fontWeight\":\"700\",\"color\":\"#2A73CC\"}", + "description": "Generate a primary centered heading for the sales report with bold blue text." + }, + { + "inputJson": "{\"text\":\"Revenue Breakdown\",\"level\":3,\"textAlign\":\"left\",\"color\":\"#333333\"}", + "description": "Create a secondary left aligned heading in dark gray for a revenue section." + }, + { + "inputJson": "{\"text\":\"User Demographics\",\"level\":2,\"margin\":{\"top\":10,\"bottom\":20},\"fontWeight\":\"normal\"}", + "description": "Produce a heading with vertical margins and normal font weight for demographics area." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "data-analytics.createResume", + "description": "This tool accepts structured personal and professional data as input, including education, work experience, skills, and contact details. It processes and formats this information into a well-organized, customizable resume document in PDF or DOCX format, suitable for job applications or professional profiles.", + "category": "data-analytics", + "parameters": [ + { + "name": "personalInfo", + "type": "object", + "description": "Basic personal information including name, email, phone, and address.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "List of educational qualifications with details such as institution, degree, start and end dates, and description.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "workExperience", + "type": "array", + "description": "List of previous job roles with company, title, dates, and responsibilities.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "skills", + "type": "array", + "description": "List of professional skills or competencies relevant to the applicant.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "summary", + "type": "string", + "description": "A brief professional summary or objective statement.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format, e.g., PDF or DOCX.", + "required": false, + "defaultValue": "\"PDF\"" + }, + { + "name": "designTemplate", + "type": "string", + "description": "Resume design template style to apply, e.g., modern, classic, simple.", + "required": false, + "defaultValue": "\"modern\"" + }, + { + "name": "includeSections", + "type": "array", + "description": "Specify which sections to include, e.g., education, workExperience, skills, summary.", + "required": false, + "defaultValue": "[\"education\",\"workExperience\",\"skills\",\"summary\"]" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64-encoded string of the formatted resume document and metadata such as file name and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured personal and career data and need to generate a professional resume document quickly in commonly used formats. Ideal for automating resume creation in job application processes or career management systems.", + "limitations": "It cannot assess the quality of the content or match resumes to specific job descriptions. The output format and design are limited to predefined templates and formats.", + "examples": [ + "Create a resume PDF using provided education, work history, and skills data.", + "Generate a DOCX resume with a classic design style including only skills and summary sections.", + "Produce a modern style resume in PDF format from fully detailed personal and career JSON input." + ] + }, + "tags": [ + "resume", + "document", + "data-analytics", + "job-application", + "pdf", + "docx" + ], + "examples": [ + { + "inputJson": "{\"personalInfo\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phone\":\"123-456-7890\",\"address\":\"123 Main St, Anytown, USA\"},\"education\":[{\"institution\":\"University A\",\"degree\":\"Bachelor of Science in Computer Science\",\"startDate\":\"2014-08\",\"endDate\":\"2018-05\",\"description\":\"Focused on software engineering and AI.\"}],\"workExperience\":[{\"company\":\"TechCorp\",\"title\":\"Software Engineer\",\"startDate\":\"2018-07\",\"endDate\":\"2022-03\",\"responsibilities\":\"Developed web applications using JavaScript and Python.\"}],\"skills\":[\"JavaScript\",\"Python\",\"Machine Learning\"],\"summary\":\"Experienced software engineer with a passion for building innovative applications.\",\"outputFormat\":\"PDF\",\"designTemplate\":\"modern\",\"includeSections\":[\"education\",\"workExperience\",\"skills\",\"summary\"]}", + "description": "Generate a modern style PDF resume including all standard professional sections for Jane Doe." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "data-transformation.formatText", + "description": "Formats input text according to various common styles such as uppercase, lowercase, title case, camelCase, snake_case, kebab-case, or custom capitalization rules. Accepts plain text input and outputs the formatted text string accordingly.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw text string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Specifies the formatting style to apply. Supported values: 'uppercase', 'lowercase', 'titleCase', 'camelCase', 'snake_case', 'kebab-case'.", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveWhitespace", + "type": "boolean", + "description": "If true, preserves the original whitespace in the input; otherwise whitespace may be normalized depending on format style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customSeparator", + "type": "string", + "description": "Custom separator character to use in place of default ones for snake_case or kebab-case formatting.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted text as a string property 'formattedText'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw or unformatted text into a specific casing style required for programming variables, user interface labels, readable titles, or standard text normalization. It helps standardize text data format across applications or prepare text for code generation or display.", + "limitations": "Does not handle complex natural language corrections, language-specific title casing exceptions, or mixed language input nuances.", + "examples": [ + "Format plain text to camelCase for programming variable usage.", + "Convert user input to uppercase for shouting detection or emphasis.", + "Generate snake_case keys from human-readable labels." + ] + }, + "tags": [ + "text", + "formatting", + "case-conversion", + "data-transformation", + "string-manipulation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"hello world example\",\"formatStyle\":\"camelCase\",\"preserveWhitespace\":false,\"customSeparator\":\"\"}", + "description": "Convert phrase to camelCase, useful for variable naming." + }, + { + "inputJson": "{\"inputText\":\"This is a TEST\",\"formatStyle\":\"lowercase\",\"preserveWhitespace\":true,\"customSeparator\":\"\"}", + "description": "Convert text to lowercase while preserving whitespace." + }, + { + "inputJson": "{\"inputText\":\"JSON key names\",\"formatStyle\":\"snake_case\",\"preserveWhitespace\":false,\"customSeparator\":\"_\"}", + "description": "Format text into snake_case typically used for JSON keys." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "database-management.formatTable", + "description": "Formats a database table's data into a readable string or structured format. Accepts table data as an array of objects or arrays, applies formatting options like alignment, padding, column width, and output style (plain text, markdown, HTML). Produces a formatted string representing the table for display or inclusion in reports.", + "category": "database-management", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "Array of objects or arrays representing the table rows; each element is a row of data.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnHeaders", + "type": "array", + "description": "Optional array specifying column headers; if omitted, headers are inferred from the first row's keys or indices.", + "required": false, + "defaultValue": "" + }, + { + "name": "alignment", + "type": "string", + "description": "Specifies text alignment in columns; options: 'left', 'right', 'center'. Applies to all columns uniformly.", + "required": false, + "defaultValue": "left" + }, + { + "name": "padding", + "type": "number", + "description": "Number of spaces to pad on each side of column content for readability.", + "required": false, + "defaultValue": "1" + }, + { + "name": "maxColumnWidth", + "type": "number", + "description": "Maximum width allowed per column; content longer than this will be truncated or wrapped based on options.", + "required": false, + "defaultValue": "30" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format style of the formatted table; options include 'plain', 'markdown', 'html'.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "truncateContent", + "type": "boolean", + "description": "Whether to truncate content exceeding maxColumnWidth (true) or wrap to new lines (false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property 'formattedTable' with the formatted table representation suitable for display." + }, + "aiAgent": { + "useCase": "Use this tool when needing to format raw table data into human-readable or structured text output. This is useful for generating display strings in logs, console outputs, reports, markdown documents, or HTML views. It supports varied input formats and alignment/formatting preferences.", + "limitations": "This tool does not connect to databases or query data. It only formats provided data arrays into string formats. It cannot handle extremely large tables efficiently, nor does it do advanced styling beyond alignment, padding, and basic markdown/HTML structure.", + "examples": [ + "Format a JSON array of objects into a markdown table for a report.", + "Generate a padded plain-text table aligned right for console display.", + "Create an HTML table from an array of arrays with specified column headers." + ] + }, + "tags": [ + "database", + "formatting", + "table", + "display", + "reporting", + "markdown", + "html", + "console" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"id\":1,\"name\":\"Alice\",\"age\":30},{\"id\":2,\"name\":\"Bob\",\"age\":25}],\"outputFormat\":\"markdown\"}", + "description": "Format a simple JSON array of objects as a Markdown table." + }, + { + "inputJson": "{\"tableData\":[[\"ID\",\"Name\",\"Score\"],[1,\"John\",88],[2,\"Jane\",92]],\"alignment\":\"center\",\"outputFormat\":\"plain\"}", + "description": "Format an array of arrays into a centered plain text table." + }, + { + "inputJson": "{\"tableData\":[{\"Product\":\"Pen\",\"Price\":1.2,\"Stock\":100},{\"Product\":\"Notebook\",\"Price\":2.5,\"Stock\":200}],\"columnHeaders\":[\"Product\",\"Price\",\"Stock\"],\"outputFormat\":\"html\"}", + "description": "Format product data with explicit column headers into an HTML table." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "testing-automation.downloadDataset", + "description": "Downloads specified test datasets from configured data repositories to support automated testing workflows. Accepts dataset identifier, source repository URL, optional version tag, and authentication credentials. Verifies dataset integrity after download and outputs local file path and metadata about the dataset version and size.", + "category": "testing-automation", + "parameters": [ + { + "name": "datasetId", + "type": "string", + "description": "Unique identifier or name of the dataset to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "Base URL of the repository or server hosting the dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "versionTag", + "type": "string", + "description": "Optional version or tag of the dataset to download. If omitted, latest version is fetched.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or API key if the source repository requires authorization.", + "required": false, + "defaultValue": "" + }, + { + "name": "verifyChecksum", + "type": "boolean", + "description": "Flag indicating whether to verify dataset integrity using checksum after download.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing local file path of the downloaded dataset, dataset metadata including version, size, and checksum validation status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the retrieval of specific test datasets from remote repositories to use in testing automation pipelines. It is suitable when datasets are versioned and stored centrally, and verification is required to ensure data integrity before testing.", + "limitations": "Cannot download datasets from sources requiring complex interactive authentication (like OAuth with redirects) or datasets larger than network or storage limits imposed by the client environment.", + "examples": [ + "Download the latest version of the 'customer-churn' dataset from our internal repo for regression testing.", + "Get version 'v2.1' of the 'image-classification' dataset from https://datasets.example.com using an API token.", + "Fetch the 'user-behavior' dataset without specifying a version, verify integrity after download." + ] + }, + "tags": [ + "download", + "dataset", + "test-data", + "automation", + "integrity-check" + ], + "examples": [ + { + "inputJson": "{\"datasetId\":\"customer-churn\",\"sourceUrl\":\"https://repo.testing.com/datasets\",\"versionTag\":\"v1.3\",\"authToken\":\"abc123token\",\"verifyChecksum\":true}", + "description": "Download specific version 'v1.3' of 'customer-churn' dataset from a private repository with authentication and checksum verification." + }, + { + "inputJson": "{\"datasetId\":\"image-classification\",\"sourceUrl\":\"https://public.datasets.org/images\",\"verifyChecksum\":false}", + "description": "Download latest version of public 'image-classification' dataset skipping checksum verification for speed." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "devops.formatSummary", + "description": "Formats a raw deployment or infrastructure summary text into a clear, structured, and standardized document format suitable for reports or reviews. Accepts unstructured summary text and optional style preferences, then outputs a formatted string with consistent headings, bullet points, and code blocks.", + "category": "devops", + "parameters": [ + { + "name": "summaryText", + "type": "string", + "description": "Raw input summary text that describes deployment details, changes, or infrastructure status. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Preferred formatting style, such as 'markdown', 'plaintext', or 'html'. Defaults to 'markdown'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to prepend a timestamp indicating when the summary was formatted. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length for wrapped text lines. Defaults to 80 characters.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'formattedSummary' with the fully formatted summary string according to the selected style." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw deployment or infrastructure summary texts that need to be presented in a clear, consistently formatted way for documentation, review, or reporting purposes. It ensures the summary is readable and standardized regardless of input format variability.", + "limitations": "Cannot generate new content or summarize lengthy logs; it only reformats existing summary text. Complex parsing or semantic understanding of input content is limited.", + "examples": [ + "Format my raw deployment summary into markdown for our internal docs.", + "Convert the infrastructure status notes into a clean plaintext summary with a timestamp.", + "Wrap and format the summary text in HTML for email delivery." + ] + }, + "tags": [ + "formatting", + "devops", + "documentation", + "summary", + "reporting", + "markdown", + "plaintext", + "html" + ], + "examples": [ + { + "inputJson": "{\"summaryText\":\"Deployment completed successfully. Services updated: auth, payments. No downtime detected. Rollback plan available.\",\"style\":\"markdown\",\"includeTimestamp\":true,\"maxLineLength\":80}", + "description": "Format a deployment summary into Markdown with timestamp and 80 char wrapped lines." + }, + { + "inputJson": "{\"summaryText\":\"Infra updated to v2.5. Security patches applied. Monitoring alerts stable.\",\"style\":\"plaintext\",\"includeTimestamp\":false,\"maxLineLength\":60}", + "description": "Format infrastructure update notes in plaintext style without timestamp, wrapping lines at 60 chars." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "devops.generateChart", + "description": "Generates deployment and infrastructure charts based on input metrics or configuration data. Accepts structured JSON data representing infrastructure status, deployment metrics, or CI/CD pipeline results, processes it to produce visual charts such as line, bar, or pie charts in SVG or PNG format for monitoring and reporting purposes.", + "category": "devops", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "Structured JSON object containing deployment or infrastructure metrics to visualize. Required fields depend on chart type.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate, e.g., 'line', 'bar', 'pie' to visualize the data appropriately.", + "required": true, + "defaultValue": "line" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the chart to display on top.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated chart in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated chart in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, supported formats are 'png' and 'svg'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Optional color scheme name or hex colors array for the chart.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated chart image as base64-encoded string and metadata including format, width, height, and title." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize deployment metrics, infrastructure monitoring data, or CI/CD pipeline statistics as charts for dashboards or reports. It helps to quickly generate portable and customizable charts directly from JSON metric data without manual plotting.", + "limitations": "This tool generates static charts only; it cannot produce interactive dashboards or real-time streaming visualizations. It requires well-structured input data compatible with the selected chart type. It does not perform data validation or correction.", + "examples": [ + "Generate a line chart showing deployment success rates over time.", + "Create a pie chart illustrating the distribution of active servers by region.", + "Produce a bar chart representing build durations from CI/CD pipeline logs." + ] + }, + "tags": [ + "devops", + "chart", + "visualization", + "deployment", + "monitoring", + "infrastructure", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"timestamps\":[\"2024-06-01\",\"2024-06-02\",\"2024-06-03\"],\"successRates\":[98,95,99]},\"chartType\":\"line\",\"title\":\"Deployment Success Rates\",\"width\":800,\"height\":400,\"outputFormat\":\"png\"}", + "description": "Generate a line chart displaying deployment success rates over three days with a PNG output of 800x400 pixels." + }, + { + "inputJson": "{\"data\":{\"regions\":[\"us-east\",\"eu-west\",\"ap-south\"],\"serverCounts\":[120,80,50]},\"chartType\":\"pie\",\"title\":\"Active Servers by Region\",\"outputFormat\":\"svg\"}", + "description": "Create a pie chart showing active server distribution across three regions with an SVG output." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "devops.createReference", + "description": "Creates and manages a deployment reference artifact that captures configuration details, environment metadata, and version info for infrastructure or application releases. Accepts inputs about the environment, versions, and metadata to produce a standardized JSON or YAML reference file that can be used for traceability and auditing.", + "category": "devops", + "parameters": [ + { + "name": "environmentName", + "type": "string", + "description": "Name of the deployment environment (e.g., production, staging).", + "required": true, + "defaultValue": "" + }, + { + "name": "appVersion", + "type": "string", + "description": "Version string of the application or service being deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "infrastructureVersion", + "type": "string", + "description": "Version or SHA identifier of the infrastructure code or template deployed.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional key-value metadata to include in the reference file such as deployer name, timestamp, or custom tags.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated reference file, either 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reference content as a string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a consistent, machine-readable deployment reference capturing the linkage between application versions, infrastructure versions, and the deployment environment. Ideal for CI/CD pipelines wanting to create audit-ready artifacts that record what versions and metadata were deployed where and when.", + "limitations": "Does not perform deployment, only generates reference artifacts. Does not validate actual deployment state or environment connectivity. Does not manage storage or distribution of generated references.", + "examples": [ + "Create a reference file for a production app release version 1.2.3 with infrastructure version abc123, including deployer info.", + "Generate a YAML deployment reference for staging environment without infrastructure version, adding custom metadata tags.", + "Produce a JSON reference artifact recording environment 'test', app version '0.9.0', and deployment timestamp." + ] + }, + "tags": [ + "devops", + "deployment", + "reference", + "audit", + "infrastructure", + "versioning", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"environmentName\":\"production\",\"appVersion\":\"1.2.3\",\"infrastructureVersion\":\"abc123\",\"metadata\":{\"deployer\":\"ci-bot\",\"timestamp\":\"2024-05-01T12:00:00Z\"},\"outputFormat\":\"json\"}", + "description": "Generate JSON reference for production deployment with app and infrastructure versions and metadata." + }, + { + "inputJson": "{\"environmentName\":\"staging\",\"appVersion\":\"2.0.0-beta\",\"outputFormat\":\"yaml\",\"metadata\":{\"deployer\":\"alice\",\"notes\":\"pre-release test\"}}", + "description": "Create YAML reference for staging environment with app version and deployer notes, no infra version." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "frontend-development.downloadTable", + "description": "Downloads a client-side HTML table's data into a specified file format such as CSV, JSON, or Excel. Accepts the table element or its ID, extracts and processes the table's rows and columns, and outputs a downloadable file with the chosen format and options like including headers or specifying filename.", + "category": "frontend-development", + "parameters": [ + { + "name": "tableId", + "type": "string", + "description": "The HTML id attribute of the table element to download data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired name of the downloaded file without extension.", + "required": false, + "defaultValue": "\"table_data\"" + }, + { + "name": "fileFormat", + "type": "string", + "description": "The output file format to download. Supported values: 'csv', 'json', 'xlsx'.", + "required": true, + "defaultValue": "\"csv\"" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include the table's header row in the output file.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter to use in CSV files (ignored for other formats).", + "required": false, + "defaultValue": "\",\"" + }, + { + "name": "sheetName", + "type": "string", + "description": "Worksheet name inside Excel files (only for 'xlsx' format).", + "required": false, + "defaultValue": "\"Sheet1\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing a URL or blob representing the downloadable file and metadata like filename and mime type." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically export HTML table data visible on the frontend into common data file formats for download by users, facilitating data export features in web applications or scripts.", + "limitations": "Cannot accurately capture complex table structures with merged cells or embedded interactive elements. Large tables may cause performance issues. Does not render styles or formatting beyond raw data.", + "examples": [ + "Download the sales data table with id 'monthlySales' as CSV including headers", + "Export the table with id 'userList' as an Excel file named 'Users_2024.xlsx'", + "Save the table with id 'inventory' as JSON without headers" + ] + }, + "tags": [ + "frontend", + "download", + "table", + "export", + "CSV", + "Excel", + "JSON", + "data" + ], + "examples": [ + { + "inputJson": "{\"tableId\":\"salesTable\",\"fileFormat\":\"csv\",\"includeHeaders\":true}", + "description": "Download the table with id 'salesTable' as a CSV file including headers." + }, + { + "inputJson": "{\"tableId\":\"inventoryTable\",\"fileFormat\":\"xlsx\",\"fileName\":\"Inventory_Export\",\"includeHeaders\":true,\"sheetName\":\"Inventory\"}", + "description": "Export the inventory table as an Excel file named 'Inventory_Export.xlsx' with a worksheet named 'Inventory'." + }, + { + "inputJson": "{\"tableId\":\"userTable\",\"fileFormat\":\"json\",\"includeHeaders\":false}", + "description": "Download user table with id 'userTable' as JSON data without headers." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "frontend-development.draftSentence", + "description": "This tool generates a well-formed, context-appropriate sentence suitable for use in frontend interfaces based on provided intent and style inputs. It accepts input parameters like intent, tone, length, and additional keywords to customize the sentence, and outputs a coherent string ready for UI integration.", + "category": "frontend-development", + "parameters": [ + { + "name": "intent", + "type": "string", + "description": "The purpose or message the sentence should convey, such as greeting, error explanation, or instruction.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired emotional style or voice of the sentence, e.g., friendly, formal, casual, or encouraging.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "length", + "type": "number", + "description": "Approximate word count for the generated sentence, guiding verbosity.", + "required": false, + "defaultValue": "15" + }, + { + "name": "keywords", + "type": "array", + "description": "An array of specific words or phrases to include in the sentence if possible.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action phrase when relevant, enhancing user engagement.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence string as 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to dynamically generate user-facing text content for frontend applications, such as button labels, alerts, or informative messages, customized by intent and tone to improve user experience.", + "limitations": "The tool cannot generate long paragraphs or complex multi-sentence texts, nor can it guarantee perfect grammar or context appropriateness beyond the input parameters.", + "examples": [ + "Draft a friendly greeting sentence welcoming users to the app.", + "Generate a formal error message explaining login failure.", + "Create a short encouraging instruction with the keyword 'upload'." + ] + }, + "tags": [ + "frontend", + "text-generation", + "ui-text", + "content-drafting", + "user-experience" + ], + "examples": [ + { + "inputJson": "{\"intent\":\"welcome message\",\"tone\":\"friendly\",\"length\":12}", + "description": "A warm, friendly welcome sentence for new users." + }, + { + "inputJson": "{\"intent\":\"error message\",\"tone\":\"formal\",\"length\":18,\"keywords\":[\"login\",\"failed\"]}", + "description": "A formal error notification about login failure, including specific keywords." + }, + { + "inputJson": "{\"intent\":\"instruction\",\"tone\":\"encouraging\",\"length\":15,\"includeCallToAction\":true}", + "description": "An encouraging instruction that ends with a call to action to motivate users." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "frontend-development.draftParagraph", + "description": "Generates a coherent, contextually appropriate paragraph of text based on a provided topic or theme. Accepts parameters to control tone, length, and style, then outputs a drafted paragraph suitable for use in user interface content, documentation, or sample text placeholders.", + "category": "frontend-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme to base the paragraph on.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the paragraph, such as formal, informal, friendly, or technical.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the paragraph in number of sentences (1-10).", + "required": false, + "defaultValue": "4" + }, + { + "name": "style", + "type": "string", + "description": "Writing style to apply, like descriptive, persuasive, informative, or narrative.", + "required": false, + "defaultValue": "informative" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted paragraph text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when generating new user-facing paragraph content is required, such as pre-filling UI text blocks, creating placeholder content during design, or drafting copy for frontend informational sections. It helps create contextually relevant paragraphs that match specified tones and styles.", + "limitations": "It cannot ensure factual accuracy or domain-specific technical correctness and is not a substitute for expert-written content. Tone and style controls are approximate and may require human review.", + "examples": [ + "Draft a friendly 3-sentence paragraph about cloud storage.", + "Generate a formal, informative paragraph of 5 sentences on software security.", + "Create a short, descriptive paragraph about responsive web design." + ] + }, + "tags": [ + "frontend", + "content-generation", + "paragraph", + "text-drafting", + "ui-content", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"benefits of responsive web design\",\"tone\":\"informal\",\"length\":3,\"style\":\"descriptive\"}", + "description": "Draft an informal, descriptive 3-sentence paragraph about the benefits of responsive web design." + }, + { + "inputJson": "{\"topic\":\"importance of data privacy\",\"tone\":\"formal\",\"length\":5,\"style\":\"informative\"}", + "description": "Generate a formal and informative paragraph of 5 sentences on the importance of data privacy." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "backend-development.formatSpec", + "description": "This tool accepts software specification documents in various common formats (e.g., JSON, YAML, Markdown) and formats them according to specified style guidelines or templates. It processes the input spec content to produce a cleanly formatted document string that adheres to conventions like indentation, ordering, naming, and comment styles, facilitating readability and consistency in backend development documentation.", + "category": "backend-development", + "parameters": [ + { + "name": "specContent", + "type": "string", + "description": "The raw specification document content as a string, which can be in JSON, YAML, or Markdown format.", + "required": true, + "defaultValue": "" + }, + { + "name": "specFormat", + "type": "string", + "description": "The format of the input spec content. Supported values: 'json', 'yaml', 'markdown'.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "object", + "description": "An optional object detailing style preferences such as indentation size, key ordering, comment style, or line width.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format for the formatted specification. Can be 'json', 'yaml', or 'markdown'. Defaults to the input format if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted specification document as a string under the key 'formattedSpec' along with metadata such as format type and any formatting warnings." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize or beautify a backend API or software specification document to improve readability, compliance with style guides, and maintain consistency across documentation artifacts during development or review cycles. It is especially useful for converting specs between formats while applying formatting rules.", + "limitations": "This tool does not validate the semantic correctness of the specification content nor does it perform deep schema validation; it focuses solely on formatting and style standardization. Complex custom formatting rules beyond basic style guides may not be supported.", + "examples": [ + "Format a JSON API spec string into a YAML file with 2-space indentation.", + "Convert a YAML backend config spec to Markdown format with standardized heading styles.", + "Apply consistent indentation and key ordering to a JSON spec document without changing its format." + ] + }, + "tags": [ + "formatting", + "specification", + "backend-development", + "documentation", + "yaml", + "json", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"specContent\":\"{\\n \\\"paths\\\": {\\n \\\"/users\\\": {\\n \\\"get\\\": {\\n \\\"summary\\\": \\\"List users\\\"\\n }\\n }\\n }\\n}\",\"specFormat\":\"json\",\"styleGuide\":{\"indentSize\":2,\"keyOrder\":[\"paths\",\"components\"]},\"outputFormat\":\"json\"}", + "description": "Format a JSON API specification with 2-space indentation and specified key order." + }, + { + "inputJson": "{\"specContent\":\"paths:\\n /users:\\n get:\\n summary: List users\\n\",\"specFormat\":\"yaml\",\"styleGuide\":{\"indentSize\":4},\"outputFormat\":\"markdown\"}", + "description": "Convert a simple YAML spec to Markdown format applying 4 spaces indentation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Spec", + "context": null + } + }, + { + "name": "backend-development.composeReply", + "description": "Composes a professional reply message based on provided conversation context and optional tone or formality settings. Accepts conversation history, key topics, and style preferences, and generates a coherent, contextually relevant textual reply suitable for backend communication workflows.", + "category": "backend-development", + "parameters": [ + { + "name": "conversationHistory", + "type": "array", + "description": "An array of previous message objects including sender and content to provide context for the reply.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the reply such as formal, casual, or neutral. Influences choice of words and style.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the reply message to control verbosity.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a predefined signature or closing statement at the end of the reply.", + "required": false, + "defaultValue": "false" + }, + { + "name": "keyTopics", + "type": "array", + "description": "List of key topics or points to address explicitly in the reply, ensuring important items are covered.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed reply text and metadata about tone and length." + }, + "aiAgent": { + "useCase": "Use this tool when generating context-aware reply messages in backend applications such as automated responders, helpdesk systems, or chatbots that require coherent, professional communication. It helps synthesize previous conversation data and additional parameters to formulate appropriate responses.", + "limitations": "Cannot understand or factor in real-time external data, emotions beyond tone presets, or generate highly specialized legal or medical advice without domain-specific training.", + "examples": [ + "Compose a formal reply to a customer complaint incorporating apology and next steps.", + "Generate a brief casual reply confirming appointment details from conversation history.", + "Create a neutral tone response addressing all key points raised in prior messages." + ] + }, + "tags": [ + "backend", + "communication", + "reply", + "message-composition", + "automation", + "customer-support" + ], + "examples": [ + { + "inputJson": "{\"conversationHistory\":[{\"sender\":\"customer\",\"content\":\"I am not happy with the delayed shipment.\"}],\"tone\":\"formal\",\"maxLength\":300,\"includeSignature\":true,\"keyTopics\":[\"apology\",\"next steps\"]}", + "description": "Compose a formal reply apologizing for shipment delay and offering next steps with signature." + }, + { + "inputJson": "{\"conversationHistory\":[{\"sender\":\"user\",\"content\":\"Can you confirm the meeting time tomorrow?\"}],\"tone\":\"casual\",\"maxLength\":150,\"includeSignature\":false}", + "description": "Generate a brief casual confirmation reply for meeting time without signature." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Reply", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeHeading", + "description": "Analyzes heading elements within a provided HTML or Markdown content string. It extracts headings, determines their levels, counts their occurrences, and evaluates their hierarchical structure to provide a summary useful for document structure analysis and workflow automation.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The raw HTML or Markdown content containing headings to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "Format of the content input, either 'html' or 'markdown'. Determines parsing method.", + "required": true, + "defaultValue": "html" + }, + { + "name": "maxHeadingLevel", + "type": "number", + "description": "Maximum heading level to consider in analysis (e.g., 6 for h1-h6).", + "required": false, + "defaultValue": "6" + }, + { + "name": "includeTextSummary", + "type": "boolean", + "description": "Whether to include a brief text summary of the heading structure in output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing heading counts by level, a list of headings with their levels and text, a boolean indicating if the heading hierarchy is properly nested, and optionally a plain-text summary of the heading structure." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically analyze the heading structure of HTML or Markdown documents in automation workflows, such as validating document outlines, generating summaries, or preparing content for structured processing.", + "limitations": "Does not parse or correct malformed HTML or Markdown beyond heading extraction. It does not handle nested heading content beyond level hierarchy checks.", + "examples": [ + "Analyze headings from a Markdown README file to validate proper structure.", + "Extract heading counts and levels from an HTML report to generate an outline summary.", + "Determine if heading levels in a blog post HTML comply with accessibility guidelines." + ] + }, + "tags": [ + "automation", + "content-analysis", + "heading", + "html", + "markdown", + "document-structure", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"content\":\"# Title\\n## Section 1\\n### Subsection 1.1\\n## Section 2\",\"contentType\":\"markdown\",\"maxHeadingLevel\":3,\"includeTextSummary\":true}", + "description": "Analyze a markdown string with levels 1 to 3 headings including text summary." + }, + { + "inputJson": "{\"content\":\"<h1>Main</h1><h2>Sub1</h2><h3>Subsub1</h3><h2>Sub2</h2>\",\"contentType\":\"html\",\"maxHeadingLevel\":6,\"includeTextSummary\":false}", + "description": "Analyze an HTML string with headings h1 to h3, without text summary." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "text-analysis.draftReport", + "description": "Generates a structured draft report based on provided textual content and optional metadata. Takes input text, report type, target audience, key points, and formatting preferences, then produces a coherent report draft with sections like introduction, body, conclusion, and recommendations tailored to the specified context.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw textual content or notes from which to generate the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of report to generate (e.g., 'summary', 'analysis', 'incident', 'progress').", + "required": false, + "defaultValue": "summary" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience of the report (e.g., 'management', 'technical team', 'clients'), affecting style and detail.", + "required": false, + "defaultValue": "management" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Array of key points or topics that should be emphasized or covered in the report.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include a recommendations section at the end of the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Approximate maximum length of the generated report in words.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete drafted report as a formatted string, and a summary abstract of the report." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI needs to convert unstructured or semi-structured textual input into a polished draft report suitable for various professional contexts. It is ideal for automating initial report generation from meeting notes, research findings, or incident logs, providing a starting point that reduces human effort in report writing.", + "limitations": "The tool may not always capture nuanced domain-specific details perfectly and does not handle real-time data inputs or visual chart generation. It also cannot replace expert human judgment in finalizing reports for critical contexts.", + "examples": [ + "Create a progress report draft from weekly team meeting notes for management.", + "Generate an incident analysis report with recommendations based on provided event logs.", + "Draft a client summary report emphasizing key deliverables from project documentation." + ] + }, + "tags": [ + "text-analysis", + "drafting", + "report-generation", + "nlp", + "document-automation", + "business", + "professional-writing" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"The project has achieved major milestones this quarter including deployment of the beta version and successful user testing.\",\"reportType\":\"progress\",\"targetAudience\":\"management\",\"keyPoints\":[\"milestones\",\"deployment\",\"user testing\"],\"includeRecommendations\":true,\"maxLength\":500}", + "description": "Generate a management progress report from project update notes including recommendations." + }, + { + "inputJson": "{\"inputText\":\"Server outage occurred due to power failure, impacting services from 2am to 5am.\",\"reportType\":\"incident\",\"targetAudience\":\"technical team\",\"keyPoints\":[\"server outage\",\"power failure\",\"service impact\"],\"includeRecommendations\":true,\"maxLength\":300}", + "description": "Create an incident report draft focused on technical details and recommendations after a service outage." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "text-analysis.generateDashboard", + "description": "Generates an interactive analytics dashboard summarizing insights from provided text data. Accepts raw text or structured text inputs, performs natural language processing to extract key metrics like topic distribution, sentiment trends, entity counts, and keyword frequency. Outputs a dashboard configuration JSON suitable for visualization frameworks to display comprehensive text analysis metrics.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw or preprocessed text data to analyze and generate insights from.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text, used for appropriate NLP models (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range filter with 'startDate' and 'endDate' ISO strings for time-series text data.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of topics to extract and display in the dashboard (e.g., 5 to 20).", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis metrics on the dashboard.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to extract and display named entities such as people, organizations, and locations.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated dashboard config; supports 'json' or 'html' for embedding.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A structured dashboard configuration object containing charts, metrics, and visual elements based on analyzed text data, suitable for rendering with common visualization libraries." + }, + "aiAgent": { + "useCase": "Use this tool when you want to transform large volumes of unstructured textual data into an insightful, interactive dashboard highlighting text analytics such as topic modeling, sentiment trends, entity recognition, and keyword frequency. Ideal for summarizing social media feedback, customer reviews, or any textual corpus to aid decision making.", + "limitations": "Does not support real-time streaming data visualization or customization beyond preset parameters. Requires sufficiently large input text to generate meaningful topic models and statistics. Language support may be limited to common NLP languages.", + "examples": [ + "Generate a dashboard summarizing customer feedback sentiment and key topics from product reviews in English.", + "Create a text analysis dashboard showing trending topics and entities in a collection of social media posts within the last month.", + "Produce an HTML dashboard highlighting keyword frequency and sentiment trends in user comments over a specified timeframe." + ] + }, + "tags": [ + "text-analysis", + "dashboard", + "NLP", + "sentiment-analysis", + "topic-modeling", + "visualization", + "entity-recognition" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"I love this product! The customer service is excellent and delivery was fast.\",\"language\":\"en\",\"includeSentiment\":true,\"maxTopics\":5}", + "description": "Generate dashboard from positive customer feedback highlighting sentiment and main topics." + }, + { + "inputJson": "{\"inputText\":\"The recent tweets about event were mostly critical, with many complaints about delays and organization.\",\"language\":\"en\",\"includeEntities\":true,\"timeRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-10\"},\"outputFormat\":\"json\"}", + "description": "Create dashboard analyzing Twitter text around an event with entity extraction and time filtering." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "api-integration.buildBranch", + "description": "Creates a new branch in a specified Git repository using provided branch name and base reference. Accepts repository identifier, branch name, and base commit or branch to build from. Returns confirmation with branch details or errors if operation fails.", + "category": "api-integration", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the Git repository where the branch will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name of the new branch to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseRef", + "type": "string", + "description": "Branch or commit SHA to base the new branch on (e.g., 'main' or specific commit SHA).", + "required": true, + "defaultValue": "main" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token for accessing the repository if it is private or requires authorization.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, created branch name, and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a new branch in a Git repository to automate workflows such as feature development, bug fixes, or environment setup. It is ideal when integrating version control operations into a larger automation or deployment pipeline.", + "limitations": "This tool cannot push commits, manage pull requests, or perform merge operations. It only creates branches based on an existing reference in the repository.", + "examples": [ + "Create a feature branch 'feature/login' from 'develop' in a private repo.", + "Build a hotfix branch 'hotfix/issue123' from the latest 'main'.", + "Create a branch 'release/v1.2' basing on a specific commit SHA." + ] + }, + "tags": [ + "git", + "branching", + "api-integration", + "repository", + "automation" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"branchName\":\"feature/new-ui\",\"baseRef\":\"develop\",\"authToken\":\"ghp_exampletoken123\"}", + "description": "Create a new branch 'feature/new-ui' based on 'develop' branch in a private GitHub repository." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/example/project.git\",\"branchName\":\"hotfix/urgent-fix\",\"baseRef\":\"main\"}", + "description": "Create a new branch 'hotfix/urgent-fix' starting from 'main' branch in a public GitLab repo without authentication." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "api-integration.generateLink", + "description": "Generates a customized URL link to integrate or redirect to third-party APIs or web services. Accepts parameters such as base URL, query parameters, path segments, and optional authentication tokens. Processes and encodes inputs to construct a properly formatted, sharable link string as output.", + "category": "api-integration", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL of the target API or web service endpoint to which the link will point.", + "required": true, + "defaultValue": "" + }, + { + "name": "pathSegments", + "type": "array", + "description": "An array of strings representing path segments to append to the base URL, forming a complete endpoint path.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "queryParams", + "type": "object", + "description": "Key-value pairs to include as query parameters in the URL, automatically encoded as needed.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeAuthToken", + "type": "boolean", + "description": "Flag indicating whether to append an authentication token as a query parameter if provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authTokenParamName", + "type": "string", + "description": "The name of the query parameter key to use for the authentication token when included.", + "required": false, + "defaultValue": "token" + }, + { + "name": "authToken", + "type": "string", + "description": "The authentication token string to include if includeAuthToken is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with a single field 'link' containing the fully constructed URL string that includes the base URL, appended path segments, query parameters, and optional auth token as applicable." + }, + "aiAgent": { + "useCase": "Use this tool when generating customized API or service links dynamically, combining base URLs with variable path components and queries, such as for redirecting users or invoking API endpoints with parameterization. Ideal for scenarios requiring careful URL construction that handles encoding and optional authentication tokens.", + "limitations": "Does not validate if the constructed URL points to an existing or accessible resource. Does not handle complex authentication methods beyond simple token query parameters.", + "examples": [ + "Generate a link to a weather API endpoint with location and units as query parameters.", + "Create a URL to a user profile endpoint appending userId as a path segment and including an auth token.", + "Construct a link to a third-party service with multiple path segments and no authentication token." + ] + }, + "tags": [ + "api", + "link-generation", + "url-construction", + "integration", + "authentication", + "web" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://api.weather.com/v3\",\"pathSegments\":[\"weather\",\"currentConditions\"],\"queryParams\":{\"geocode\":\"37.7749,-122.4194\",\"language\":\"en-US\",\"format\":\"json\"},\"includeAuthToken\":false,\"authTokenParamName\":\"\",\"authToken\":\"\"}", + "description": "Generate a weather API link with query parameters for location and format, no auth token." + }, + { + "inputJson": "{\"baseUrl\":\"https://api.example.com\",\"pathSegments\":[\"users\",\"12345\"],\"queryParams\":{},\"includeAuthToken\":true,\"authTokenParamName\":\"api_key\",\"authToken\":\"abcdef12345\"}", + "description": "Generate a user profile URL with a userId path segment and attach an API key as a query parameter." + }, + { + "inputJson": "{\"baseUrl\":\"https://service.example.net/api\",\"pathSegments\":[\"v1\",\"resources\",\"456\"],\"queryParams\":{\"verbose\":\"true\",\"type\":\"full\"},\"includeAuthToken\":false,\"authTokenParamName\":\"token\",\"authToken\":\"\"}", + "description": "Generate a full API resource link with multiple path segments and query parameters, no auth token included." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "agent-management.sendComment", + "description": "Sends a textual comment as part of a conversation or issue thread within an AI agent management or collaboration platform. Accepts parameters identifying the target entity (such as task ID or conversation ID), comment content, author identity, and optional metadata. Processes input to post the comment and returns confirmation and comment details.", + "category": "agent-management", + "parameters": [ + { + "name": "targetId", + "type": "string", + "description": "Unique identifier of the conversation, task, or issue to which the comment will be posted.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The textual content of the comment to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier of the user or agent sending the comment, for attribution purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "Optional ISO 8601 timestamp indicating when the comment was created; defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata associated with the comment such as tags or mentions.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details confirming successful posting of the comment including comment ID, confirmed content, timestamp, and target ID." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to participate in collaborative workflows by adding a comment to an existing conversation thread, task, or issue. It supports clarifying queries, providing status updates, or communicating decisions within agent management platforms.", + "limitations": "Does not support sending attachments, rich media content, or editing/deleting existing comments. Does not initiate new threads or conversations, only appends to existing ones.", + "examples": [ + "Please post a comment to task ID 12345 stating 'Deployment completed successfully.'", + "Add a note from user ID 'agent007' to conversation 'conv789' saying 'Reviewed the logs and found no issues.'", + "Send a comment tagged 'urgent' to issue 'ISSUE-42' saying 'Need immediate attention from the dev team.'" + ] + }, + "tags": [ + "comment", + "agent communication", + "collaboration", + "task management", + "conversation management" + ], + "examples": [ + { + "inputJson": "{\"targetId\":\"task-00123\",\"commentText\":\"All tests passed successfully.\",\"authorId\":\"agentAlpha\",\"timestamp\":\"2024-06-01T14:30:00Z\"}", + "description": "Send a success comment to a task with a specified timestamp and author." + }, + { + "inputJson": "{\"targetId\":\"conv-455\",\"commentText\":\"Can you clarify the requirements?\"}", + "description": "Post a clarifying question to an existing conversation without specifying author or timestamp." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "agent-management.formatParagraph", + "description": "Formats a given plain text paragraph according to specified style options such as indentation, line width, alignment, and bullet points. Accepts raw paragraph text and formatting preferences as input, processes the text formatting accordingly, and outputs the formatted paragraph as a string ready for inclusion in documentation or communication.", + "category": "agent-management", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to indent the first line of the paragraph.", + "required": false, + "defaultValue": "0" + }, + { + "name": "lineWidth", + "type": "number", + "description": "The maximum number of characters per line before wrapping occurs.", + "required": false, + "defaultValue": "80" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: 'left', 'right', or 'center'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "useBullets", + "type": "boolean", + "description": "Whether to format the paragraph as a bulleted list item.", + "required": false, + "defaultValue": "false" + }, + { + "name": "bulletCharacter", + "type": "string", + "description": "Character to use as the bullet if useBullets is true.", + "required": false, + "defaultValue": "•" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph string under 'formattedText' key." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to produce human-readable paragraph text with clean formatting controls such as indentation, line width limits, alignment, or list bulleting—especially useful in generating reports, structured messages, or documentation summaries.", + "limitations": "It does not perform complex text editing like grammar correction or semantic rephrasing; it only formats existing text. It handles simple paragraph formatting and does not support nested lists or advanced typographic features.", + "examples": [ + "Format a raw paragraph with indentation of 4 spaces and line width of 60 chars.", + "Create a bulleted paragraph with center alignment and custom bullet symbol '-'.", + "Format a paragraph with default left alignment and line width without indentation." + ] + }, + "tags": [ + "formatting", + "text", + "paragraph", + "agent-management", + "document", + "style" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph that should be formatted properly by the tool. It contains multiple sentences and needs to be wrapped and indented as specified.\",\"indentation\":4,\"lineWidth\":60,\"alignment\":\"left\",\"useBullets\":false,\"bulletCharacter\":\"•\"}", + "description": "Format a paragraph with 4 spaces indentation, 60 char line width, left aligned, no bullet." + }, + { + "inputJson": "{\"text\":\"List item example to be formatted as a bullet point with a custom bullet character.\",\"indentation\":2,\"lineWidth\":50,\"alignment\":\"center\",\"useBullets\":true,\"bulletCharacter\":\"-\"}", + "description": "Format a paragraph as a centered bulleted list item with '-' bullet and 2 spaces indentation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeLink", + "description": "Analyzes the content of a webpage given its URL to extract key elements relevant for prompt engineering, such as main topics, tone, style, and potential prompt examples. It accepts a valid link as input, processes the page content via NLP techniques, and returns a structured summary to aid in designing optimized AI prompts.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage whose content is to be analyzed for prompt engineering.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length (in characters) of the generated content summary to control verbosity.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to attempt extraction of example prompts or questions found in the link content.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary of the webpage content, identified main topics, tone analysis, and extracted prompt or question examples if available." + }, + "aiAgent": { + "useCase": "Use this tool when you have a URL with content relevant for creating or optimizing AI prompts and you need to quickly understand key themes, tone, and example prompts from that page to inform prompt construction or refinement.", + "limitations": "Cannot access pages behind authentication or dynamically rendered content that requires advanced browser automation. Analysis quality depends on the page language and content structure; minimal or very unstructured content may yield limited insights.", + "examples": [ + "Analyze the webpage at https://example.com/article to identify main topics and tone for crafting prompts.", + "Given a tutorial URL, summarize key instructional themes and extract example exercises for prompt design.", + "Review a blog post URL to find style and tone to adapt AI prompt responses accordingly." + ] + }, + "tags": [ + "prompt-engineering", + "content-analysis", + "NLP", + "link-analysis", + "webpage-summary", + "prompt-optimization" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/prompt-engineering-guide\",\"maxSummaryLength\":300,\"includeExamples\":true}", + "description": "Analyze a guide on prompt engineering to extract main topics, tone, and example prompts from the content." + }, + { + "inputJson": "{\"url\":\"https://news.example.com/tech-update\",\"includeExamples\":false}", + "description": "Summarize the main themes and tone of a tech news article without extracting example prompts." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "prompt-engineering.formatJSON", + "description": "Formats and beautifies a JSON string or object to produce readable, indented JSON output. Accepts raw JSON strings or JSON-compatible objects, applies indentation and optional key sorting, and returns the formatted JSON string for clearer prompt crafting or debugging.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "inputJSON", + "type": "string", + "description": "Raw JSON string or serialized JSON data to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces for indentation in the output JSON; defaults to 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort the JSON object keys alphabetically in the output. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "allowTrailingCommas", + "type": "boolean", + "description": "If true, tolerate and remove trailing commas in the input JSON before formatting. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string and metadata indicating success or formatting errors." + }, + "aiAgent": { + "useCase": "Use this tool when you need to improve the readability or style consistency of JSON data embedded in prompts or outputs. It helps in normalizing JSON formatting with configurable indentation and key order, useful for debugging, prompt engineering, or preparing JSON code snippets that require clean and consistent structure.", + "limitations": "Cannot fix invalid JSON syntax beyond removing trailing commas. If the input is not valid JSON after optional corrections, it will return a parsing error; it also does not validate the semantic correctness of JSON, only the formatting.", + "examples": [ + "Format a messy JSON string with 4-space indentation and sorted keys for clearer presentation.", + "Beautify compact JSON input to enhance readability in prompt components.", + "Remove trailing commas and reformat JSON to standard style for reliable AI prompt input." + ] + }, + "tags": [ + "prompt-engineering", + "json", + "formatting", + "beautify", + "code", + "readability" + ], + "examples": [ + { + "inputJson": "{\"inputJSON\":\"{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30,\\\"city\\\":\\\"New York\\\"}\",\"indentationSpaces\":4,\"sortKeys\":true,\"allowTrailingCommas\":false}", + "description": "Format a valid JSON string with 4 spaces indentation and sorted keys." + }, + { + "inputJson": "{\"inputJSON\":\"{\\\"fruits\\\": [\\\"apple\\\", \\\"banana\\\"],}\",\"indentationSpaces\":2,\"sortKeys\":false,\"allowTrailingCommas\":true}", + "description": "Format JSON with a trailing comma by allowing its removal and applying 2-space indentation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "model-management.analyzeTrend", + "description": "Analyzes performance and usage trends of AI models over specified time ranges. Accepts historical model metrics data, applies statistical and machine learning techniques to identify patterns, seasonality, and anomalous behaviors, and outputs a detailed trend report with insights and visualizations for model management.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 date string marking the start of the analysis period (e.g., '2023-01-01').", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 date string marking the end of the analysis period (e.g., '2023-06-01').", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Array of metric names to include in trend analysis (e.g., ['accuracy','latency','throughput']).", + "required": false, + "defaultValue": "[\"accuracy\"]" + }, + { + "name": "includeAnomalies", + "type": "boolean", + "description": "Whether to perform anomaly detection within the trend data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "aggregationInterval", + "type": "string", + "description": "Time interval for data aggregation. Supported values: 'hourly', 'daily', 'weekly', 'monthly'.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "visualizationType", + "type": "string", + "description": "Type of visualization to generate. Options: 'lineChart', 'barChart', 'heatmap'.", + "required": false, + "defaultValue": "lineChart" + } + ], + "returns": { + "type": "object", + "description": "Object containing summarized trend insights, detected anomalies (if requested), statistics per metric, and links or embedded visualizations to explore trends interactively." + }, + "aiAgent": { + "useCase": "Use this tool when needing to examine how an AI model's performance metrics evolve over time, to detect degradation, improvements, or unusual patterns. Ideal for model monitoring, lifecycle management, and performance tuning. The tool supports flexible date ranges, multiple metrics, and anomaly detection to give comprehensive trend insights.", + "limitations": "Does not retrain or update models; focuses solely on analysis of historical metric data. Requires that metrics data be available and standardized. Does not interpret model outputs beyond statistical trend analysis.", + "examples": [ + "Analyze accuracy and latency trends for model 'abc123' over the last quarter.", + "Detect anomalies in model throughput metrics for model 'modelX' between two dates.", + "Generate monthly aggregated latency trends visualization for model 'modelZ'." + ] + }, + "tags": [ + "model", + "trend analysis", + "monitoring", + "metrics", + "performance", + "anomaly detection", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"metrics\":[\"accuracy\",\"latency\"],\"includeAnomalies\":true,\"aggregationInterval\":\"daily\",\"visualizationType\":\"lineChart\"}", + "description": "Analyze daily accuracy and latency trends including anomalies for model abc123 over Q1 2023." + }, + { + "inputJson": "{\"modelId\":\"modelX\",\"startDate\":\"2023-05-01\",\"endDate\":\"2023-05-31\",\"metrics\":[\"throughput\"],\"includeAnomalies\":false,\"aggregationInterval\":\"hourly\",\"visualizationType\":\"barChart\"}", + "description": "Generate hourly aggregated throughput trends for modelX in May 2023." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "model-management.analyzeHeading", + "description": "Analyzes the heading content extracted from AI model documentation or training reports to identify key topics, assess clarity, and provide suggestions for improvement. Accepts heading text input and optional context, performs linguistic and semantic analysis, and returns insights including topic relevance scores and readability metrics.", + "category": "model-management", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The text content of the heading to analyze, as extracted from model documentation or reports.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextText", + "type": "string", + "description": "Optional additional text providing context around the heading to enhance analysis accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the heading text to guide linguistic analysis, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of key topics or suggestions to return.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including detected key topics with relevance scores, readability metrics (like Flesch-Kincaid score), and suggested improvements or clarifications for the heading." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to evaluate headings from AI model-related documents or reports for relevance, clarity, and quality to improve overall document understandability and ensure headings effectively summarize content sections.", + "limitations": "It does not rewrite or generate new headings but only offers analysis and suggestions. It may have reduced accuracy if the heading is too short or highly technical jargon is used.", + "examples": [ + "Analyze the heading text 'Model Performance Overview' to determine if it clearly reflects the section contents.", + "Evaluate the heading 'Training Dataset Details' with additional context from the document to identify key topics.", + "Provide readability metrics and improvement tips for the heading 'Optimization Techniques Applied in Model Training'." + ] + }, + "tags": [ + "analysis", + "model-management", + "documentation", + "heading", + "text-analysis", + "semantic", + "readability" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Model Performance Overview\",\"contextText\":\"This section discusses accuracy, recall, and precision metrics for recent model versions.\",\"language\":\"en\",\"maxResults\":3}", + "description": "Analyze a straightforward heading with context to extract key topics and readability." + }, + { + "inputJson": "{\"headingText\":\"Training Dataset Details\",\"language\":\"en\"}", + "description": "Analyze a heading without additional context to assess clarity and topic relevance." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "model-management.draftWord", + "description": "This tool generates a draft word or term based on given context, theme, or domain inputs. It accepts parameters describing the target usage, language constraints, and stylistic preferences, then processes these to produce a coherent, relevant word suggestion as output, assisting model developers and content creators in naming or terminology generation.", + "category": "model-management", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "Context or domain in which the word will be used (e.g., 'financial technology').", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the word output (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "wordLength", + "type": "number", + "description": "Preferred maximum length of the generated word.", + "required": false, + "defaultValue": "10" + }, + { + "name": "style", + "type": "string", + "description": "Stylistic tone of the word, such as 'formal', 'casual', or 'technical'.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeAffixes", + "type": "boolean", + "description": "Whether to include common prefixes or suffixes relevant to the context.", + "required": false, + "defaultValue": "false" + }, + { + "name": "avoidExistingWords", + "type": "boolean", + "description": "Whether to avoid generating existing dictionary words, preferring neologisms.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted word and metadata about its generation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create contextually relevant, unique words or terms for model features, product names, or technical concepts. It's especially useful in model management scenarios requiring naming consistency or creativity within a specific domain.", + "limitations": "This tool cannot guarantee trademark safety or cultural appropriateness of generated words. It does not create multi-word phrases or sentences, only single words or terms.", + "examples": [ + "Draft a formal word related to biotechnology for naming a new AI model feature.", + "Generate a casual term, maximum 8 characters, related to social media sentiment analysis.", + "Create a new word avoiding existing English terms, relevant to renewable energy." + ] + }, + "tags": [ + "word generation", + "naming", + "terminology", + "model management", + "AI content creation", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"context\":\"biotechnology\",\"language\":\"en\",\"wordLength\":8,\"style\":\"formal\",\"includeAffixes\":true,\"avoidExistingWords\":false}", + "description": "Generate a formal biotechnology-related word with affixes, max length 8." + }, + { + "inputJson": "{\"context\":\"social media\",\"language\":\"en\",\"wordLength\":6,\"style\":\"casual\",\"includeAffixes\":false,\"avoidExistingWords\":true}", + "description": "Create a short, casual neologism relevant to social media domain." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "model-management.generateHTML", + "description": "Generates customizable HTML reports summarizing AI model training metrics and configurations. Accepts model training logs or summary JSON input, processes data to create structured, styled HTML output, suitable for monitoring or documentation.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "Name of the AI model to include in the report header.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricsData", + "type": "object", + "description": "Structured JSON object containing training metrics (e.g., accuracy, loss) over epochs or steps.", + "required": true, + "defaultValue": "" + }, + { + "name": "configData", + "type": "object", + "description": "JSON object detailing model configuration parameters to display in the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeGraphs", + "type": "boolean", + "description": "Whether to include plotted graphs of metrics (e.g., line charts) in the HTML report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Visual styling theme for the report; options include 'light', 'dark', or 'custom'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "customCss", + "type": "string", + "description": "Optional custom CSS styles to apply if theme is set to 'custom'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string for the model report, ready to be saved or displayed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a comprehensive and visually structured HTML report summarizing model training results and configurations for review, sharing, or documentation purposes. It facilitates automated report generation from raw model metrics and settings.", + "limitations": "Does not generate interactive dynamic elements beyond static HTML and embedded graphs. Graph generation is limited to common chart types and depends on availability of proper metrics data.", + "examples": [ + "Generate an HTML report for model 'ImageClassifierV1' using training accuracy and loss metrics, including graphs with a dark theme.", + "Produce a model report with specified config parameters but no graphs, using a light theme.", + "Generate a report applying custom CSS stylings to match company's branding guidelines." + ] + }, + "tags": [ + "model-management", + "report-generation", + "HTML", + "training-metrics", + "visualization", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"ImageClassifierV1\",\"metricsData\":{\"accuracy\":[0.6,0.75,0.85,0.9],\"loss\":[0.8,0.5,0.3,0.2]},\"configData\":{\"learningRate\":0.001,\"batchSize\":32},\"includeGraphs\":true,\"theme\":\"dark\",\"customCss\":\"\"}", + "description": "Generate a dark-themed HTML report including graphs for model 'ImageClassifierV1' with provided metrics and config." + }, + { + "inputJson": "{\"modelName\":\"TextSentimentModel\",\"metricsData\":{\"accuracy\":[0.7,0.8,0.82],\"loss\":[0.6,0.4,0.35]},\"includeGraphs\":false,\"theme\":\"light\"}", + "description": "Generate a light-themed HTML report for 'TextSentimentModel' without graphs using minimal inputs." + }, + { + "inputJson": "{\"modelName\":\"RecommendationEngine\",\"metricsData\":{\"precision\":[0.5,0.55,0.6],\"recall\":[0.45,0.5,0.55]},\"includeGraphs\":true,\"theme\":\"custom\",\"customCss\":\"body { font-family: Arial; background-color: #fefefe; }\"}", + "description": "Generate a custom-themed HTML report including precision and recall graphs with user-defined CSS styles." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "model-management.createSchema", + "description": "Creates a structured schema definition for AI model inputs and outputs. Accepts schema name, version, and a detailed fields object describing each attribute's type, constraints, and optional metadata. Processes these inputs to generate a JSON Schema-compliant object for validating model data formats.", + "category": "model-management", + "parameters": [ + { + "name": "schemaName", + "type": "string", + "description": "The unique name identifier for the schema to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Semantic version string for the schema, e.g., '1.0.0'.", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "fields", + "type": "object", + "description": "An object defining fields of the schema; each key is a field name and the value specifies data type, required flag, and constraints.", + "required": true, + "defaultValue": "{}" + }, + { + "name": "description", + "type": "string", + "description": "Optional high-level text description of the schema's purpose and usage.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON Schema object representing the model's input/output data structure, compliant with Draft-07 standards typically used for validation and interface description." + }, + "aiAgent": { + "useCase": "Use this tool when you need to define or update the data schema for AI model training inputs or prediction outputs to ensure consistent data validation and interface contracts across systems.", + "limitations": "This tool creates schema definitions but does not validate data instances against the schema or enforce compliance at runtime; separate validation tools are needed for runtime data checks.", + "examples": [ + "Create a new schema named 'ImageClassificationInput' version '1.0.0' with fields for 'imageData' (string, base64), 'imageFormat' (string), and 'timestamp' (string, ISO date format).", + "Update a schema to add a required numeric 'confidenceThreshold' field for filtering model outputs.", + "Define a schema for model output with fields 'label' (string), 'probability' (number between 0 and 1), and 'metadata' (object, optional)." + ] + }, + "tags": [ + "model-management", + "schema-definition", + "data-validation", + "model-interface", + "json-schema" + ], + "examples": [ + { + "inputJson": "{\"schemaName\":\"ImageClassificationInput\",\"version\":\"1.0.0\",\"fields\":{\"imageData\":{\"type\":\"string\",\"required\":true,\"constraints\":{\"format\":\"base64\"}},\"imageFormat\":{\"type\":\"string\",\"required\":true,\"constraints\":{\"enum\":[\"jpeg\",\"png\",\"bmp\"]}},\"timestamp\":{\"type\":\"string\",\"required\":false,\"constraints\":{\"format\":\"date-time\"}}},\"description\":\"Schema for input data to image classification model.\"}", + "description": "Creating a schema for image classification model input with base64 image data, format, and timestamp." + }, + { + "inputJson": "{\"schemaName\":\"ModelOutputV2\",\"fields\":{\"label\":{\"type\":\"string\",\"required\":true},\"probability\":{\"type\":\"number\",\"required\":true,\"constraints\":{\"minimum\":0,\"maximum\":1}},\"metadata\":{\"type\":\"object\",\"required\":false}},\"description\":\"Output schema for classification model providing label, confidence, and optional metadata.\"}", + "description": "Defining output schema for a classification model including label, probability, and optional metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "image-processing.createImage", + "description": "This tool generates a synthetic image based on user-defined parameters such as dimensions, background color, shapes, and optional text overlays. It accepts specifications for image size, background, multiple geometric shapes with colors and positions, and text annotations, then outputs a base64-encoded PNG image string.", + "category": "image-processing", + "parameters": [ + { + "name": "width", + "type": "number", + "description": "The width of the generated image in pixels.", + "required": true, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "The height of the generated image in pixels.", + "required": true, + "defaultValue": "" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Hex code or color name for the image background. Defaults to white.", + "required": false, + "defaultValue": "\"#FFFFFF\"" + }, + { + "name": "shapes", + "type": "array", + "description": "Array of shape objects to draw on the image. Each shape specifies type, color, position, and size.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "textOverlays", + "type": "array", + "description": "Array of text overlay objects specifying text content, font size, color, and position.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the base64-encoded PNG image string and image metadata such as width and height." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create simple images composed of basic geometric shapes and text, such as placeholders, diagrams, or custom banner visuals without external image sources. It is ideal for dynamic image generation from structured parameters.", + "limitations": "This tool cannot generate photorealistic images, complex graphics, or perform image recognition. It is limited to geometric shapes and text overlays on a flat colored background.", + "examples": [ + "Create a 400x300 image with a blue background and a red circle in the center.", + "Generate a 200x200 white image with a green rectangle and the text 'Hello' in black.", + "Produce a 800x600 image with multiple shapes including circles and rectangles and text annotations." + ] + }, + "tags": [ + "image generation", + "graphics", + "shapes", + "text", + "png", + "synthetic image" + ], + "examples": [ + { + "inputJson": "{\"width\":400,\"height\":300,\"backgroundColor\":\"#0000FF\",\"shapes\":[{\"type\":\"circle\",\"color\":\"#FF0000\",\"centerX\":200,\"centerY\":150,\"radius\":50}],\"textOverlays\":[]}", + "description": "400x300 image with blue background and red circle centered." + }, + { + "inputJson": "{\"width\":200,\"height\":200,\"backgroundColor\":\"#FFFFFF\",\"shapes\":[{\"type\":\"rectangle\",\"color\":\"#00FF00\",\"x\":50,\"y\":50,\"width\":100,\"height\":50}],\"textOverlays\":[{\"text\":\"Hello\",\"fontSize\":20,\"color\":\"#000000\",\"x\":70,\"y\":120}]}", + "description": "200x200 white image with a green rectangle and black 'Hello' text." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "messaging.analyzeMetric", + "description": "Analyzes messaging system metrics by processing input data such as message counts, latency, and error rates over a specified time range. It computes key performance indicators like average throughput, error percentages, and latency percentiles, and returns a comprehensive report summarizing the communication system's performance and health.", + "category": "messaging", + "parameters": [ + { + "name": "metricType", + "type": "string", + "description": "Type of metric to analyze, e.g., 'messageCount', 'latency', or 'errorRate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "Start timestamp of the analysis period in ISO 8601 format (e.g., '2024-01-01T00:00:00Z').", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End timestamp of the analysis period in ISO 8601 format (e.g., '2024-01-02T00:00:00Z').", + "required": true, + "defaultValue": "" + }, + { + "name": "granularity", + "type": "string", + "description": "Aggregation interval for metrics, e.g., 'minute', 'hour', or 'day'.", + "required": false, + "defaultValue": "hour" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to narrow down data by attributes such as channel, user segment, or message type.", + "required": false, + "defaultValue": "" + }, + { + "name": "topN", + "type": "number", + "description": "Number of top results to return for ranking metrics, e.g., top 10 channels by message count.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Analysis report including summary statistics, time series aggregates, percentile distributions, and identified anomalies for the specified metric and timeframe." + }, + "aiAgent": { + "useCase": "Use this tool when you need detailed analytics on messaging system performance metrics over custom time ranges with filtering ability. It helps identify trends, bottlenecks, or issues by providing aggregated statistics and percentile-based insights.", + "limitations": "Does not perform raw data collection or real-time metric streaming; requires prepared metric data input. It cannot diagnose causes of anomalies beyond metric computation.", + "examples": [ + "Analyze message counts between two dates to understand traffic volume.", + "Calculate latency percentiles for messages over the past week filtered by user group.", + "Get error rate analysis filtered by message type and hourly granularity to monitor system reliability." + ] + }, + "tags": [ + "messaging", + "analytics", + "metrics", + "performance", + "real-time", + "monitoring", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"metricType\":\"messageCount\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-07T23:59:59Z\",\"granularity\":\"day\",\"filters\":{\"channel\":\"support\"},\"topN\":5}", + "description": "Analyze daily message counts in the 'support' channel over a week and return top 5 results." + }, + { + "inputJson": "{\"metricType\":\"latency\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-01T23:59:59Z\",\"granularity\":\"hour\"}", + "description": "Calculate hourly latency percentiles for messages on a given day." + }, + { + "inputJson": "{\"metricType\":\"errorRate\",\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-30T23:59:59Z\",\"filters\":{\"messageType\":\"sms\"}}", + "description": "Analyze monthly error rates filtered for SMS message types." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "messaging.formatFunction", + "description": "Formats a given function code snippet string to comply with messaging platform constraints and style guidelines. Accepts raw code as a string input and outputs a formatted string ready to be used in chat or messaging scenarios, including proper indentation, escaping, and optional syntax highlighting markup.", + "category": "messaging", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw function code as a string to be formatted for messaging display.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the function code to enable appropriate syntax formatting or highlighting.", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before wrapping or truncation occurs to maintain readability in messaging UI.", + "required": false, + "defaultValue": "80" + }, + { + "name": "addSyntaxHighlighting", + "type": "boolean", + "description": "Flag indicating whether to include messaging platform syntax highlighting markup (e.g., code block fences) around the formatted function code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "escapeSpecialCharacters", + "type": "boolean", + "description": "If true, escapes special characters in the code that might interfere with messaging formats (like backticks or markdown symbols).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code as a single string under 'formattedCode' key, suitable for direct insertion into chat messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to present or share source code functions clearly in real-time messaging platforms, ensuring correct formatting, readability, and syntax display. This helps maintain code structure integrity when sharing in chats, bot responses, or integration messages.", + "limitations": "Does not execute or analyze the code function; purely formats input text. Has limited language-specific formatting capabilities, primarily focusing on indentation and syntax highlighting markup insertion based on given language. May not perfectly format extremely complex or minified code.", + "examples": [ + "Format a JavaScript function for display in a Slack message with syntax highlighting.", + "Prepare a Python function snippet for a chat message without syntax highlighting and limit lines to 60 characters.", + "Escape special characters and wrap a code snippet in a Discord message code block." + ] + }, + "tags": [ + "messaging", + "formatting", + "code", + "function", + "syntax highlighting", + "chat integration" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function greet(name){return `Hello, ${name}!`;}\",\"language\":\"javascript\",\"maxLineLength\":80,\"addSyntaxHighlighting\":true,\"escapeSpecialCharacters\":true}", + "description": "Format a simple JavaScript function with syntax highlighting enabled" + }, + { + "inputJson": "{\"code\":\"def add(a,b):\\n return a+b\",\"language\":\"python\",\"maxLineLength\":60,\"addSyntaxHighlighting\":false,\"escapeSpecialCharacters\":true}", + "description": "Format a Python function snippet without syntax highlighting for a chat message" + }, + { + "inputJson": "{\"code\":\"let msg = `Hello, world!`\",\"language\":\"javascript\",\"maxLineLength\":80,\"addSyntaxHighlighting\":true,\"escapeSpecialCharacters\":true}", + "description": "Format JavaScript code with special characters, ensuring correct escaping and highlighting" + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "messaging.createService", + "description": "Creates and configures a new real-time messaging service infrastructure instance. Accepts parameters such as service name, messaging protocols (e.g., WebSocket, MQTT), supported features (presence, typing indicators), scaling options, and security settings. Processes inputs to provision the service and returns the service ID, status, and endpoints for integration.", + "category": "messaging", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "Unique name to identify the messaging service instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "protocols", + "type": "array", + "description": "List of real-time protocols to support, e.g., WebSocket, MQTT, SSE.", + "required": true, + "defaultValue": "[\"WebSocket\"]" + }, + { + "name": "features", + "type": "array", + "description": "Messaging features to enable such as presence, typing indicators, message history.", + "required": false, + "defaultValue": "[\"presence\"]" + }, + { + "name": "maxConcurrentUsers", + "type": "number", + "description": "Maximum number of concurrent users the service should support.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "enableEncryption", + "type": "boolean", + "description": "Whether to enable end-to-end encryption for message traffic.", + "required": false, + "defaultValue": "false" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the service should be hosted for latency optimization.", + "required": false, + "defaultValue": "us-east-1" + } + ], + "returns": { + "type": "object", + "description": "Details of the created messaging service including its unique ID, provisioning status, and connection endpoints." + }, + "aiAgent": { + "useCase": "Use this tool when needing to set up a dedicated real-time messaging backend infrastructure capable of handling chat communications with protocols and features configured as per application needs. Ideal for integration into apps requiring messaging, presence, and typing awareness.", + "limitations": "Does not handle message routing logic or client SDK implementations; only provisions and configures backend messaging infrastructure.", + "examples": [ + "Create a messaging service with WebSocket protocol supporting presence and typing indicators, max 5000 users.", + "Set up a secure messaging service enabling encryption in the EU region.", + "Provision a basic messaging backend with MQTT support and minimal features." + ] + }, + "tags": [ + "messaging", + "service", + "infrastructure", + "real-time", + "chat", + "provisioning", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"ChatServiceAlpha\",\"protocols\":[\"WebSocket\"],\"features\":[\"presence\",\"typingIndicators\"],\"maxConcurrentUsers\":5000,\"enableEncryption\":false,\"region\":\"us-west-2\"}", + "description": "Create a WebSocket based chat service supporting presence and typing indicators for up to 5000 users in the US West region." + }, + { + "inputJson": "{\"serviceName\":\"SecureMQTTService\",\"protocols\":[\"MQTT\"],\"features\":[\"presence\"],\"maxConcurrentUsers\":2000,\"enableEncryption\":true,\"region\":\"eu-central-1\"}", + "description": "Set up a secure MQTT messaging service with encryption enabled for the EU Central region supporting presence feature." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "email-communication.composeMessage", + "description": "This tool composes an email message using provided parameters such as recipient addresses, subject, body content, and optional attachments or formatting. It processes the input details to generate a structured email message object ready for sending via email clients or services.", + "category": "email-communication", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of carbon copy email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of blind carbon copy email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email message, supports plain text or simple HTML formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates whether the body content is formatted as HTML.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects, each including filename and base64-encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the email such as 'normal', 'high', or 'low'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "A structured email message object containing all fields as specified, ready to be used by email sending APIs or clients." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create or draft an email message by specifying recipients, subject, body, and optional attachments. Useful for automating email creation before dispatching through an email service or user review.", + "limitations": "This tool does not actually send the email; it only composes the message object. It also does not perform spam checks, personalization beyond direct input, or interact with email servers.", + "examples": [ + "Compose a notification email to a team with an attached report.", + "Draft a marketing email with HTML formatting and multiple recipients.", + "Create an internal memo email marked as high priority without attachments." + ] + }, + "tags": [ + "email", + "compose", + "automation", + "message", + "communication", + "attachment", + "html" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"cc\":[],\"bcc\":[],\"subject\":\"Meeting Reminder\",\"body\":\"Don't forget our meeting at 3 PM.\",\"isHtml\":false,\"attachments\":[],\"priority\":\"normal\"}", + "description": "Simple plain text email reminder with single recipient and no attachments." + }, + { + "inputJson": "{\"to\":[\"client@example.com\"],\"cc\":[\"support@example.com\"],\"bcc\":[],\"subject\":\"Project Update\",\"body\":\"<h1>Project Status</h1><p>The project is on schedule.</p>\",\"isHtml\":true,\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"JVBERi0xLjQKJc...\"}],\"priority\":\"high\"}", + "description": "HTML formatted email with CC, attachment, and high priority." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "email-communication.buildConfig", + "description": "Generates a complete email sending configuration JSON object based on provided SMTP settings, authentication details, default sender info, and optional encrypted credentials. Accepts input parameters such as SMTP host, port, security options, default from address and name, and returns a validated configuration object ready for integration in email sending services.", + "category": "email-communication", + "parameters": [ + { + "name": "smtpHost", + "type": "string", + "description": "The SMTP server host address to use for sending emails.", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpPort", + "type": "number", + "description": "The port number on the SMTP server to connect to.", + "required": true, + "defaultValue": "" + }, + { + "name": "useTLS", + "type": "boolean", + "description": "Whether to enable TLS (secure) connection to the SMTP server.", + "required": true, + "defaultValue": "true" + }, + { + "name": "username", + "type": "string", + "description": "The username credential for SMTP server authentication.", + "required": false, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "The password credential for SMTP server authentication (plain text).", + "required": false, + "defaultValue": "" + }, + { + "name": "encryptedPassword", + "type": "string", + "description": "An optional encrypted form of password if storing credentials securely.", + "required": false, + "defaultValue": "" + }, + { + "name": "defaultFromEmail", + "type": "string", + "description": "The default \"from\" email address included in emails sent using this config.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultFromName", + "type": "string", + "description": "The default \"from\" name to display in emails sent.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object representing a fully assembled and validated email sending configuration, including SMTP host, port, security setting, authentication credentials (if provided), and default sender information." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create or update email sending configurations for SMTP servers, especially in automation or deployment pipelines, ensuring consistent email client setup. This supports rapid configuration generation with required validation for integration into email automation services.", + "limitations": "This tool does not send emails, validate credentials against SMTP servers in real time, or encrypt/decrypt passwords. It only builds configuration objects based on provided parameters.", + "examples": [ + "Construct SMTP configuration with TLS enabled and default sender info.", + "Build config for SMTP server requiring authentication with username and password.", + "Generate email config using encrypted password instead of plain text." + ] + }, + "tags": [ + "email", + "configuration", + "smtp", + "automation", + "communication", + "email-sending" + ], + "examples": [ + { + "inputJson": "{\"smtpHost\":\"smtp.example.com\",\"smtpPort\":587,\"useTLS\":true,\"username\":\"user123\",\"password\":\"passw0rd!\",\"defaultFromEmail\":\"noreply@example.com\",\"defaultFromName\":\"Example Service\"}", + "description": "Build a config for smtp.example.com with authentication and TLS enabled, setting default sender email and name." + }, + { + "inputJson": "{\"smtpHost\":\"mail.company.org\",\"smtpPort\":25,\"useTLS\":false,\"defaultFromEmail\":\"support@company.org\"}", + "description": "Generate minimal config for an SMTP server with no authentication and no TLS, only specifying default from email." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "infrastructure-management.formatContract", + "description": "This tool accepts a contract document as input, analyzes its structure and content, and outputs a professionally formatted version adhering to industry-standard layout conventions for infrastructure agreements. It supports input in plain text or JSON format and outputs a formatted contract in either Markdown or PDF-ready HTML.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "contractContent", + "type": "string", + "description": "The raw content of the infrastructure contract document to format, can be plain text or JSON string with sections.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input contract content. Supported values are 'plainText' or 'json'.", + "required": true, + "defaultValue": "plainText" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the formatted contract output. Supported values are 'markdown' or 'html'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "includeTOC", + "type": "boolean", + "description": "Whether to include a table of contents in the formatted contract output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "companyName", + "type": "string", + "description": "Name of the company or entity associated with the contract, used for header/footer personalization.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract string in the requested output format, and metadata such as number of sections and word count." + }, + "aiAgent": { + "useCase": "Use infrastructure-management.formatContract when an AI agent is preparing or reviewing infrastructure-related contracts that require consistent, professional formatting for clarity and presentation before sharing or storing. It standardizes contract appearance across templates and input variations, useful for contracts related to cloud services, physical infrastructure agreements, or vendor engagements.", + "limitations": "This tool does not perform legal validation, clause content analysis, or contract negotiation. It only formats based on provided structure and content, so inaccurate or incomplete contract text will be formatted as-is.", + "examples": [ + "Format raw contract text for a cloud infrastructure service agreement into Markdown with a TOC.", + "Convert a JSON-structured contract document into HTML for PDF export, including company branding.", + "Reformat a vendor infrastructure contract from plain text to standardized layout without a table of contents." + ] + }, + "tags": [ + "formatting", + "infrastructure", + "contracts", + "legal-documents", + "document-processing" + ], + "examples": [ + { + "inputJson": "{\"contractContent\":\"This Contract is made between Company A and Company B.\\nSection 1: Scope\\nThis section describes scope...\\nSection 2: Payment\\nTerms ...\",\"inputFormat\":\"plainText\",\"outputFormat\":\"markdown\",\"includeTOC\":true,\"companyName\":\"TechCorp\"}", + "description": "Format a raw plain text infrastructure contract into Markdown with table of contents, personalized with company name." + }, + { + "inputJson": "{\"contractContent\":\"{\\\"title\\\":\\\"Infrastructure Service Agreement\\\",\\\"sections\\\":[{\\\"title\\\":\\\"Scope\\\",\\\"content\\\":\\\"Description...\\\"},{\\\"title\\\":\\\"Payment\\\",\\\"content\\\":\\\"Terms...\\\"}]}\",\"inputFormat\":\"json\",\"outputFormat\":\"html\",\"includeTOC\":false,\"companyName\":\"DataNet\"}", + "description": "Format a JSON-structured contract into clean HTML without TOC, inserting company branding." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "infrastructure-management.composeMessage", + "description": "Composes standardized communication messages for infrastructure management tasks, such as incident notifications, deployment updates, or maintenance alerts. Accepts structured inputs including message type, subject, recipients, and relevant details; produces a formatted message string ready for transmission or logging.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "messageType", + "type": "string", + "description": "Type of the message to compose, e.g., incident, deployment, maintenance.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line summarizing the message content.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as email addresses or team names.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "details", + "type": "object", + "description": "Key-value pairs of information to include in the message body, such as incident ID, timestamps, affected services.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to append the current timestamp to the message body.", + "required": false, + "defaultValue": "true" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message, e.g., low, normal, high.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "Object containing the composed message string and metadata including subject, recipients, and messageType." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to generate clear, structured communication related to infrastructure operations, such as notifying stakeholders about incidents, system updates, or scheduled maintenance. Helps ensure consistent messaging format and inclusion of relevant details for operational clarity and auditability.", + "limitations": "Cannot send or deliver messages; only composes the content. Does not handle multi-language localization or dynamic user preferences for message style.", + "examples": [ + "Compose an incident notification for a database outage including incident ID, affected service, and estimated recovery time.", + "Generate a maintenance alert message for the security team about scheduled downtime next week.", + "Create a deployment update message announcing successful deployment to production with details on new features." + ] + }, + "tags": [ + "infrastructure", + "communication", + "message", + "incident", + "maintenance", + "deployment", + "notification" + ], + "examples": [ + { + "inputJson": "{\"messageType\":\"incident\",\"subject\":\"Database Outage Alert\",\"recipients\":[\"devops@example.com\",\"db-team@example.com\"],\"details\":{\"incidentId\":\"INC123456\",\"service\":\"User Database\",\"startTime\":\"2024-06-10T15:00:00Z\",\"estimatedRecovery\":\"2024-06-10T17:00:00Z\"},\"includeTimestamp\":true,\"priority\":\"high\"}", + "description": "Compose a high-priority incident alert about a database outage for the devops and database teams, including relevant timestamps and incident ID." + }, + { + "inputJson": "{\"messageType\":\"maintenance\",\"subject\":\"Scheduled Maintenance Notification\",\"recipients\":[\"security-team@example.com\"],\"details\":{\"start\":\"2024-06-15T02:00:00Z\",\"end\":\"2024-06-15T04:00:00Z\",\"impact\":\"Potential brief service interruptions\"},\"includeTimestamp\":false,\"priority\":\"normal\"}", + "description": "Generate a notification for the security team about an upcoming scheduled maintenance window without timestamp appended." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "infrastructure-management.generateLink", + "description": "Generates a secure, time-limited URL for accessing or managing specific cloud or physical infrastructure resources. Inputs include resource identifier, expiration time, access level, and optional IP restrictions. The tool produces a URL string that enables authenticated access based on the specified constraints.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "resourceId", + "type": "string", + "description": "Unique identifier of the infrastructure resource to link to. Required to specify the target resource.", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Duration in seconds for which the generated link should remain valid. Helps enforce temporary access.", + "required": true, + "defaultValue": "3600" + }, + { + "name": "accessLevel", + "type": "string", + "description": "Defines the permission level granted by the link (e.g., 'read-only', 'admin'). Controls allowed operations through the link.", + "required": true, + "defaultValue": "read-only" + }, + { + "name": "allowedIpRanges", + "type": "array", + "description": "Optional list of IP CIDR blocks that restrict access to the generated link. Enhances security by limiting network access.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive note to annotate the purpose or context of the generated link.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secure URL string along with metadata like expiration timestamp and access level." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide temporary, secure access to specific infrastructure resources, such as servers, VMs, databases, or network devices, without sharing permanent credentials. It is ideal for facilitating controlled external or internal maintenance, audits, or monitoring.", + "limitations": "The tool cannot enforce access controls beyond the link expiration and IP restrictions included. It does not create or modify underlying resource permissions or perform actual resource management.", + "examples": [ + "Generate a read-only access link for server resource 'server-123' valid for 2 hours.", + "Create an admin access link to database resource 'db-prod-01' that expires in 30 minutes and limits access to a corporate IP range.", + "Produce a temporary management link for a network device with custom description and default expiration." + ] + }, + "tags": [ + "link-generation", + "infrastructure", + "security", + "access-control", + "temporary-access" + ], + "examples": [ + { + "inputJson": "{\"resourceId\":\"vm-456\",\"expirationSeconds\":7200,\"accessLevel\":\"read-only\",\"allowedIpRanges\":[\"192.168.1.0/24\"],\"description\":\"External audit access\"}", + "description": "Generate a read-only link valid for 2 hours restricted to a specific internal IP subnet for audit purposes." + }, + { + "inputJson": "{\"resourceId\":\"db-prod-01\",\"expirationSeconds\":1800,\"accessLevel\":\"admin\",\"allowedIpRanges\":[],\"description\":\"Emergency admin access\"}", + "description": "Generate an admin access link for database resource that expires in 30 minutes with no IP restrictions." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "monitoring.analyzeOpportunity", + "description": "This tool accepts business opportunity data and related monitoring metrics, analyzes performance impact, potential risks, and growth indicators, and produces a detailed report on opportunity viability and recommended actions to maximize value.", + "category": "monitoring", + "parameters": [ + { + "name": "opportunityData", + "type": "object", + "description": "Structured data describing the business opportunity including metrics like projected revenue, market segment, and timeline.", + "required": true, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "System and application performance data relevant to the opportunity such as user engagement, response times, and error rates.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskFactors", + "type": "array", + "description": "List of potential risks affecting the opportunity with severity and likelihood scores.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail for the analysis report, e.g., 'summary', 'detailed', or 'comprehensive'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "timeFrame", + "type": "string", + "description": "Date range for the monitoring data to analyze, formatted as ISO8601 interval e.g., '2023-01-01/2023-03-31'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing opportunity viability score, identified risks, performance impact assessment, growth recommendations, and summary insights." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating the feasibility and potential impact of a new or existing business opportunity through system and application monitoring data. It helps to quantify opportunity value, identify risks from operational metrics, and suggest actions to optimize performance and growth.", + "limitations": "It does not predict long-term market shifts or competitor actions not reflected in the input data. It relies on the quality and completeness of monitoring and opportunity inputs and may miss non-quantifiable factors.", + "examples": [ + "Analyze the quarterly performance impact of the new feature rollout on user retention opportunities.", + "Assess risks and growth potential of expanding into a new market segment based on current application metrics.", + "Generate a summary report of opportunity viability using latest monitoring data and identified risk factors." + ] + }, + "tags": [ + "monitoring", + "analysis", + "business", + "opportunity", + "performance", + "risk", + "growth" + ], + "examples": [ + { + "inputJson": "{\"opportunityData\":{\"projectedRevenue\":1000000,\"marketSegment\":\"enterprise\",\"timeline\":\"2024-Q3\"},\"performanceMetrics\":{\"userEngagement\":0.85,\"errorRate\":0.02,\"responseTimeMs\":300},\"riskFactors\":[{\"name\":\"systemDowntime\",\"severity\":\"high\",\"likelihood\":0.1},{\"name\":\"marketVolatility\",\"severity\":\"medium\",\"likelihood\":0.3}],\"analysisDepth\":\"detailed\",\"timeFrame\":\"2024-04-01/2024-06-30\"}", + "description": "Analyze detailed business opportunity with performance and risk metrics over Q2 2024 for enterprise market." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "monitoring.createCredential", + "description": "Creates a new credential for monitoring system access, accepting input parameters such as credential type, associated roles, expiration time, and metadata. It processes these inputs to generate a secure credential (e.g., API key or token) suitable for authenticating monitoring tools or users. Returns the credential details including ID, secret, expiration, and usage restrictions.", + "category": "monitoring", + "parameters": [ + { + "name": "credentialType", + "type": "string", + "description": "Type of credential to create, e.g., 'apiKey' or 'token'.", + "required": true, + "defaultValue": "" + }, + { + "name": "roles", + "type": "array", + "description": "List of roles or permissions associated with this credential.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "expirationHours", + "type": "number", + "description": "Number of hours after which the credential expires. Use 0 for no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata as key-value pairs to associate with the credential.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableTwoFactor", + "type": "boolean", + "description": "Whether to enable two-factor authentication for this credential.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Details of the created credential including credential ID, secret, expiration timestamp, and associated roles." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision secure access credentials for monitoring systems or applications. For example, generating API keys or tokens tied to specific roles and valid for a limited time enables controlled and auditable access to monitoring data or services.", + "limitations": "This tool does not handle credential revocation or audit logs. It is also not responsible for actual authentication enforcement, which must be implemented separately.", + "examples": [ + "Create an API key credential for monitoring with read-only role valid for 24 hours.", + "Generate a token credential with admin roles and no expiration.", + "Create a credential with two-factor authentication enabled and custom metadata." + ] + }, + "tags": [ + "monitoring", + "credential", + "security", + "access-control", + "authentication", + "api-key", + "token" + ], + "examples": [ + { + "inputJson": "{\"credentialType\":\"apiKey\",\"roles\":[\"monitoring.read\"],\"expirationHours\":24}", + "description": "Create an API key credential with read-only monitoring role that expires in 24 hours." + }, + { + "inputJson": "{\"credentialType\":\"token\",\"roles\":[\"admin\"],\"expirationHours\":0,\"enableTwoFactor\":true}", + "description": "Generate a non-expiring token credential with admin role and two-factor authentication enabled." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "monitoring.createComment", + "description": "Creates a comment associated with a specific monitoring alert or event. Accepts alert or event identifier, comment text, author information, and optional metadata. Returns confirmation with comment ID and timestamp for tracking discussion directly tied to system monitoring incidents.", + "category": "monitoring", + "parameters": [ + { + "name": "alertId", + "type": "string", + "description": "Unique identifier of the alert or event to comment on.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "Content of the comment to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name or identifier of the comment author.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata like tags or severity related to the comment.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the comment ID, timestamp of creation, and confirmation message." + }, + "aiAgent": { + "useCase": "Use this tool when adding contextual comments or notes to alerts or monitoring events to facilitate communication among team members or document observations during incident management.", + "limitations": "This tool does not analyze alert data or generate comments automatically; it only records provided comments linked to alerts.", + "examples": [ + "Add a note to alert 123 about the observed memory spike.", + "Create a comment by user 'ops_lead' on event 'evt-456' explaining troubleshooting steps taken." + ] + }, + "tags": [ + "monitoring", + "comment", + "alert", + "communication", + "incident management" + ], + "examples": [ + { + "inputJson": "{\"alertId\":\"alert-789\",\"commentText\":\"Investigated and found temporary CPU overload due to backup.\",\"author\":\"system_admin\",\"metadata\":{\"tags\":[\"investigation\",\"cpu\"]}}", + "description": "Adding an investigation note to a CPU overload alert." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "compliance-management.draftDocument", + "description": "This tool drafts compliance-related documents based on provided regulatory frameworks, business context, and specific compliance requirements. It accepts inputs like document type, applicable regulations, key points to include, and jurisdiction, then generates a tailored compliance document draft suitable for review and further refinement.", + "category": "compliance-management", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of compliance document to draft (e.g., policy, procedure, report).", + "required": true, + "defaultValue": "" + }, + { + "name": "regulatoryFrameworks", + "type": "array", + "description": "List of regulatory frameworks or standards relevant to the document (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "keyRequirements", + "type": "array", + "description": "Specific compliance requirements or points that must be addressed in the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction or region applicable to the compliance document (e.g., EU, US, California).", + "required": false, + "defaultValue": "" + }, + { + "name": "organizationalContext", + "type": "string", + "description": "Brief description of the organization's industry, size, or particular risks relevant to compliance.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted compliance document text and a summary outlining key compliance areas addressed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate initial drafts of compliance documents tailored to specific regulations and organizational contexts, to accelerate compliance documentation preparation and ensure relevant regulations are covered.", + "limitations": "The generated document is a draft and should be reviewed by a compliance expert for accuracy and completeness. This tool does not provide legal advice.", + "examples": [ + "Draft a GDPR data privacy policy for a midsize software company.", + "Create a HIPAA compliance procedure document specifying security controls.", + "Generate a compliance report draft addressing California consumer data protection requirements." + ] + }, + "tags": [ + "compliance", + "document", + "drafting", + "regulatory", + "policy", + "legal", + "management" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"policy\",\"regulatoryFrameworks\":[\"GDPR\"],\"keyRequirements\":[\"data subject rights\",\"data breach notification\"],\"jurisdiction\":\"EU\",\"organizationalContext\":\"midsize software firm\"}", + "description": "Draft a GDPR data privacy policy for a midsize software firm covering key requirements." + }, + { + "inputJson": "{\"documentType\":\"procedure\",\"regulatoryFrameworks\":[\"HIPAA\"],\"keyRequirements\":[\"access controls\",\"audit logging\"],\"jurisdiction\":\"US\"}", + "description": "Produce a HIPAA compliance procedure draft specifying security controls in the US jurisdiction." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "compliance-management.buildAPI", + "description": "Builds a customizable compliance API based on provided regulatory frameworks and organizational policies. Accepts input specifying compliance domains, rules, and data models; processes these to generate API endpoints for compliance checks and audit data retrieval; outputs usable API specification and endpoint code stubs.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceDomains", + "type": "array", + "description": "List of compliance areas (e.g., GDPR, HIPAA) to incorporate in the API.", + "required": true, + "defaultValue": "" + }, + { + "name": "policyDefinitions", + "type": "object", + "description": "Structured definitions of organizational policies and rules to enforce, including conditions and actions.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataModels", + "type": "object", + "description": "Schema definitions for data involved in compliance checks, e.g., user data, transaction records.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiBasePath", + "type": "string", + "description": "Base URI path for the API endpoints, e.g., '/api/compliance'.", + "required": false, + "defaultValue": "\"/api/compliance\"" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Specifies if API endpoints require authentication (e.g., OAuth2, API keys).", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputLanguage", + "type": "string", + "description": "Programming language/framework for generated code stubs (e.g., NodeJS, Python Flask).", + "required": false, + "defaultValue": "\"NodeJS\"" + }, + { + "name": "includeAuditEndpoints", + "type": "boolean", + "description": "Include endpoints to fetch audit logs and compliance reports.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API specification (e.g., OpenAPI format) and corresponding code stubs for implementation." + }, + "aiAgent": { + "useCase": "When a user wants to rapidly create an API interface enforcing multiple regulatory and internal compliance policies for use in applications or services, this tool generates the necessary APIs with validation, authentication, and reporting endpoints based on input domains and rules.", + "limitations": "This tool does not generate fully production-ready code; manual review and customization are required. It cannot interpret ambiguous or incomplete policy definitions automatically.", + "examples": [ + "Generate an API enforcing GDPR data subject rights and HIPAA patient privacy rules.", + "Create a compliance API with OAuth2 authentication and audit log retrieval endpoints.", + "Build an API that validates user transactions against AML policies." + ] + }, + "tags": [ + "compliance", + "API", + "regulatory", + "automation", + "policy-enforcement", + "development", + "audit" + ], + "examples": [ + { + "inputJson": "{\"complianceDomains\":[\"GDPR\",\"HIPAA\"],\"policyDefinitions\":{\"dataRetention\":{\"maxDays\":365}},\"dataModels\":{\"User\":{\"id\":\"string\",\"email\":\"string\",\"consentGiven\":\"boolean\"}},\"apiBasePath\":\"/api/compliance\",\"authenticationRequired\":true,\"outputLanguage\":\"NodeJS\",\"includeAuditEndpoints\":true}", + "description": "Builds a compliance API supporting GDPR and HIPAA rules with authentication and audit endpoints." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "security-tools.analyzeIncident", + "description": "Analyzes a reported security incident by examining provided logs, alerts, and metadata to identify key factors such as root cause, affected assets, and potential attack vectors. Produces a structured incident analysis report with findings, severity assessment, and recommended mitigation steps.", + "category": "security-tools", + "parameters": [ + { + "name": "incidentId", + "type": "string", + "description": "Unique identifier of the security incident to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "logData", + "type": "string", + "description": "Raw log data or event records relevant to the incident, in a text format.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertDetails", + "type": "object", + "description": "Structured alert information including time, source, and detection signature.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata about the environment, affected hosts, user accounts, and incident context.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis depth: 'basic', 'intermediate', or 'detailed'.", + "required": false, + "defaultValue": "basic" + } + ], + "returns": { + "type": "object", + "description": "Structured incident report including root cause analysis, affected assets, timelines, severity score, and recommended mitigation and prevention actions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to deeply analyze security incidents based on logs and alerts to produce a comprehensive report that helps security teams understand what happened, assess impact, and prioritize response. It assists in incident response and forensic workflows by providing structured insights from raw data.", + "limitations": "This tool cannot perform live system remediation, predict unknown zero-day exploits without existing log evidence, or replace expert human analysis in complex scenarios. It relies on the quality and completeness of input data for accurate analysis.", + "examples": [ + "Analyze recent incident logs to determine root cause and suggest mitigation.", + "Generate a detailed report from alert and log metadata for a suspected data breach.", + "Review incident logs with intermediate analysis depth to identify affected systems and severity." + ] + }, + "tags": [ + "security", + "incident analysis", + "forensics", + "log analysis", + "threat detection", + "incident response" + ], + "examples": [ + { + "inputJson": "{\"incidentId\":\"INC12345\",\"logData\":\"2024-06-01T10:15:00Z Failed login attempt from IP 192.168.1.100; 2024-06-01T10:16:00Z Multiple password resets requested\",\"alertDetails\":{\"alertId\":\"ALRT6789\",\"source\":\"IDS\",\"signature\":\"Brute force attempt\"},\"metadata\":{\"affectedHosts\":[\"host-1\",\"host-2\"],\"reportedBy\":\"SOC team\"},\"analysisDepth\":\"detailed\"}", + "description": "Detailed analysis of a brute force attack incident including logs, alerts and environmental metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "security-tools.composeParagraph", + "description": "Generates a clear, concise security-related paragraph based on user inputs such as topic, purpose, and style. It processes input keywords and adjusts tone for the intended security context, outputting a coherent paragraph suitable for reports, documentation, or communications.", + "category": "security-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main security subject or theme for the paragraph (e.g., 'data encryption', 'access control').", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "Intended use of the paragraph such as 'report', 'blog post', or 'security briefing'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the paragraph: options include 'formal', 'informative', or 'persuasive'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the paragraph in sentences (suggested range 3-7).", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated security-themed paragraph as a string." + }, + "aiAgent": { + "useCase": "Use when needing to create a professional, focused security paragraph tailored to a specific topic and audience, suitable for documentation, security reports, or communications. Helps quickly generate informative narrative blocks that align with security best practices and communication goals.", + "limitations": "Cannot generate highly technical detailed code or configurations; output is limited to text paragraphs and may require further editing for compliance or technical precision.", + "examples": [ + "Generate a formal paragraph about 'multi-factor authentication' for a security policy document.", + "Compose an informative paragraph explaining 'phishing attacks' for a security awareness newsletter.", + "Create a persuasive paragraph on the importance of 'regular software updates' for corporate compliance training." + ] + }, + "tags": [ + "security", + "composition", + "writing", + "content-generation", + "documentation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"data encryption\",\"purpose\":\"security report\",\"tone\":\"formal\",\"length\":5}", + "description": "Compose a formal paragraph on data encryption for inclusion in a security report." + }, + { + "inputJson": "{\"topic\":\"phishing awareness\",\"purpose\":\"newsletter\",\"tone\":\"informative\",\"length\":4}", + "description": "Generate an informative paragraph explaining phishing awareness for a company newsletter." + }, + { + "inputJson": "{\"topic\":\"password policies\",\"purpose\":\"security briefing\",\"tone\":\"persuasive\",\"length\":6}", + "description": "Create a persuasive paragraph on password policy importance for a security briefing." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "security-tools.composeNotification", + "description": "Composes a security-related notification message based on input parameters such as event type, severity, affected systems, and recommended actions. Accepts structured inputs and outputs a formatted notification string suitable for alerts, emails, or dashboards.", + "category": "security-tools", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of security event or alert (e.g., intrusion, malwareDetection)", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity level of the event (e.g., low, medium, high, critical)", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected systems or assets identifiers.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp of when the event occurred or was detected.", + "required": false, + "defaultValue": "" + }, + { + "name": "recommendedActions", + "type": "array", + "description": "List of recommended remediation or mitigation actions to include in the notification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a concise summary at the beginning of the notification.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code to use for the notification message (e.g., en, es). Defaults to English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification message string and metadata such as formatted severity label." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate clear, consistent, and context-aware security notifications for alerts, incident reporting, or communication to stakeholders. It standardizes message content based on inputs about the security event and tailors the output to severity and affected assets.", + "limitations": "Does not send or distribute the notification; only composes the message text. It also may not cover very specialized internal terminology or integrate directly with alerting platforms.", + "examples": [ + "Compose a notification for a critical malware detection affecting two servers, including recommended isolations steps.", + "Generate a medium severity intrusion detection alert summary without listing affected systems.", + "Create a notification in Spanish for a low severity phishing attempt with appropriate next steps." + ] + }, + "tags": [ + "security", + "notification", + "alert", + "incident", + "communication", + "message composition" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"ransomwareAttack\",\"severityLevel\":\"critical\",\"affectedSystems\":[\"server-12\",\"db-primary\"],\"timestamp\":\"2024-06-01T14:30:00Z\",\"recommendedActions\":[\"Isolate infected machines\",\"Notify incident response team\"],\"includeSummary\":true,\"language\":\"en\"}", + "description": "Compose a critical security alert notification about a ransomware attack affecting important systems, including remediation recommendations." + }, + { + "inputJson": "{\"eventType\":\"unauthorizedAccess\",\"severityLevel\":\"medium\",\"affectedSystems\":[],\"recommendedActions\":[\"Review access logs\",\"Reset compromised credentials\"],\"includeSummary\":false,\"language\":\"en\"}", + "description": "Create a medium severity notification alerting about unauthorized access attempts without specifying systems, skipping summary." + }, + { + "inputJson": "{\"eventType\":\"phishingAttempt\",\"severityLevel\":\"low\",\"affectedSystems\":[\"user-email-22\"],\"recommendedActions\":[\"Advise user to change password\"],\"includeSummary\":true,\"language\":\"es\"}", + "description": "Generate a low severity phishing attempt notification in Spanish, including a summary and recommended user actions." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "security-tools.generateSession", + "description": "Generates a secure session token with customizable length, expiration time, and optional metadata. Accepts parameters to specify the token length (in characters), session duration in minutes, and optional JSON object metadata to embed. Outputs a session token string alongside expiry timestamp and metadata to facilitate user session management in web and mobile applications.", + "category": "security-tools", + "parameters": [ + { + "name": "tokenLength", + "type": "number", + "description": "Length of the generated session token in characters, influencing token complexity and security.", + "required": false, + "defaultValue": "64" + }, + { + "name": "sessionDurationMinutes", + "type": "number", + "description": "Duration in minutes for which the session token remains valid before expiration.", + "required": false, + "defaultValue": "60" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional JSON object containing additional metadata (e.g., user roles or permissions) to associate with the session token.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated session token string, its ISO 8601 expiration timestamp, and the metadata object embedded or empty if none provided." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create secure session tokens for users in authentication flows, ensuring tokens have appropriate complexity, expiration, and optionally carry user-specific metadata. Ideal for managing user sessions in web or mobile apps with security best practices.", + "limitations": "This tool does not manage token storage, invalidation, or authentication verification. It only generates tokens and metadata; integration with a session store or authentication service is required to enforce session validity.", + "examples": [ + "Generate a 128 character session token valid for 30 minutes with metadata specifying user roles.", + "Create a default length session token with 60 minutes expiration without metadata.", + "Produce a 40 character token lasting 120 minutes embedding user permission flags as metadata." + ] + }, + "tags": [ + "session", + "security", + "token-generation", + "authentication", + "user-sessions", + "security-tools" + ], + "examples": [ + { + "inputJson": "{\"tokenLength\":128,\"sessionDurationMinutes\":30,\"metadata\":{\"userId\":\"abc123\",\"roles\":[\"admin\",\"editor\"]}}", + "description": "Generate a 128-character token valid for 30 minutes with user ID and roles metadata." + }, + { + "inputJson": "{\"tokenLength\":64,\"sessionDurationMinutes\":60}", + "description": "Generate a default 64-character token valid for 60 minutes without extra metadata." + }, + { + "inputJson": "{\"tokenLength\":40,\"sessionDurationMinutes\":120,\"metadata\":{\"permissions\":[\"read\",\"write\"]}}", + "description": "Generate a shorter 40-character token valid for 2 hours with permissions metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "security-tools.generateHTML", + "description": "Generates secure HTML content based on structured input defining elements and content while sanitizing inputs to prevent XSS and other injection attacks. Accepts an object describing the HTML structure, attributes, and text content, then produces well-formed, sanitized HTML string output that can be safely embedded in web pages.", + "category": "security-tools", + "parameters": [ + { + "name": "htmlStructure", + "type": "object", + "description": "An object representing the hierarchical structure of the HTML to generate, including tags, attributes, and children content.", + "required": true, + "defaultValue": "" + }, + { + "name": "sanitize", + "type": "boolean", + "description": "Whether to sanitize all text content and attributes to prevent injection vulnerabilities.", + "required": false, + "defaultValue": "true" + }, + { + "name": "inlineStylesAllowed", + "type": "boolean", + "description": "Whether inline styles in the HTML structure should be allowed or removed for security.", + "required": false, + "defaultValue": "false" + }, + { + "name": "selfClosingTags", + "type": "array", + "description": "List of tags to render as self-closing (e.g., img, br), defaults to common HTML5 void elements.", + "required": false, + "defaultValue": "[\"area\",\"base\",\"br\",\"col\",\"embed\",\"hr\",\"img\",\"input\",\"link\",\"meta\",\"param\",\"source\",\"track\",\"wbr\"]" + } + ], + "returns": { + "type": "string", + "description": "The resulting safe, sanitized HTML string generated according to the input structure." + }, + "aiAgent": { + "useCase": "Use this tool when needing to dynamically generate HTML content from structured data while ensuring that the output is secure against cross-site scripting (XSS) and injection attacks. Ideal for generating email templates, user-generated content previews, or dynamic UI elements safely in security-sensitive applications.", + "limitations": "This tool does not validate the semantic correctness of the HTML beyond well-formedness and sanitation; it does not render or visually test the output. It cannot generate CSS or JavaScript beyond inline styles specified in attributes, which can be optionally disallowed. Complex dynamic behaviors must be handled separately.", + "examples": [ + "Generate a secure HTML snippet for a user-submitted comment with basic formatting.", + "Create sanitized HTML from a JSON object describing a newsletter template.", + "Produce secure HTML blocks for embedding in admin dashboards from structured input." + ] + }, + "tags": [ + "generate", + "security", + "html", + "sanitize", + "xss-prevention", + "template" + ], + "examples": [ + { + "inputJson": "{\"htmlStructure\":{\"tag\":\"div\",\"attributes\":{\"class\":\"comment\"},\"children\":[{\"tag\":\"p\",\"children\":[\"Hello, this is a <b>user</b> comment!\"]}]},\"sanitize\":true}", + "description": "Generate a sanitized HTML div with a paragraph containing user text with potentially unsafe tags escaped." + }, + { + "inputJson": "{\"htmlStructure\":{\"tag\":\"img\",\"attributes\":{\"src\":\"https://example.com/image.jpg\",\"alt\":\"Example Image\"}},\"sanitize\":true}", + "description": "Generate a self-closing img tag with safe attributes." + }, + { + "inputJson": "{\"htmlStructure\":{\"tag\":\"ul\",\"children\":[{\"tag\":\"li\",\"children\":[\"Item 1\"]},{\"tag\":\"li\",\"children\":[\"Item 2\"]}]},\"inlineStylesAllowed\":false}", + "description": "Generate a list with two items disallowing inline styles for tighter security." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "security-tools.createReference", + "description": "Generates a verifiable security reference document summarizing security controls, software versions, compliance status, and audit trails. Accepts security data inputs and policies, processes and formats them into a standardized reference report for internal or external security review.", + "category": "security-tools", + "parameters": [ + { + "name": "securityControls", + "type": "array", + "description": "List of security controls implemented, each with description and status.", + "required": true, + "defaultValue": "" + }, + { + "name": "softwareComponents", + "type": "array", + "description": "List of software components with name, version, and patch status.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "Applicable compliance standards and whether they are met (e.g., ISO27001, SOC2).", + "required": true, + "defaultValue": "" + }, + { + "name": "auditLogs", + "type": "array", + "description": "Audit entries or summaries that evidence security events or control tests.", + "required": false, + "defaultValue": "" + }, + { + "name": "referenceFormat", + "type": "string", + "description": "Format of the output reference document: pdf, json, or markdown.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a high-level summary of security posture in the reference document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted security reference document as a string and metadata about the report generation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a standardized, verifiable security reference document combining multiple inputs like controls, compliance, and audits. Useful for security postures, internal documentation, or providing evidence to auditors or partners.", + "limitations": "This tool does not enforce or validate the accuracy of the provided security data or compliance claims. It generates formatted documents but does not perform full security assessments or dynamic data retrieval.", + "examples": [ + "Create a security reference demonstrating our ISO27001 compliance with recent audit logs.", + "Generate a JSON-formatted security reference report including all implemented controls and software patch levels.", + "Produce a PDF reference document summarizing security controls and compliance for external audit submission." + ] + }, + "tags": [ + "security", + "documentation", + "compliance", + "reporting", + "controls", + "audit", + "reference" + ], + "examples": [ + { + "inputJson": "{\"securityControls\":[{\"name\":\"Firewall\",\"status\":\"configured\"},{\"name\":\"Encryption\",\"status\":\"enabled\"}],\"softwareComponents\":[{\"name\":\"AppServer\",\"version\":\"1.4.2\",\"patched\":true}],\"complianceStandards\":[{\"standard\":\"ISO27001\",\"compliant\":true}],\"auditLogs\":[{\"date\":\"2024-01-10\",\"event\":\"control_test\",\"result\":\"pass\"}],\"referenceFormat\":\"json\",\"includeSummary\":true}", + "description": "Generate JSON security reference document including controls, software info, compliance status, and audit log summary." + }, + { + "inputJson": "{\"securityControls\":[{\"name\":\"Antivirus\",\"status\":\"up-to-date\"}],\"softwareComponents\":[{\"name\":\"Database\",\"version\":\"12.3.1\",\"patched\":false}],\"complianceStandards\":[{\"standard\":\"SOC2\",\"compliant\":false}],\"referenceFormat\":\"markdown\",\"includeSummary\":false}", + "description": "Create a markdown security reference report without a summary, highlighting some non-compliance." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "security-tools.createPackage", + "description": "Creates a secure software package by bundling specified source files with automated security configurations such as code signing, dependency vulnerability scanning, and packaging metadata. Accepts input parameters defining source paths, target runtime environments, and signing credentials, producing a signed and security-certified distributable package.", + "category": "security-tools", + "parameters": [ + { + "name": "sourcePaths", + "type": "array", + "description": "List of file or directory paths to include in the package source.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "packageName", + "type": "string", + "description": "Name of the software package to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version identifier for the package, e.g., semantic versioning string.", + "required": true, + "defaultValue": "" + }, + { + "name": "runtimeEnvironment", + "type": "string", + "description": "Target runtime environment, such as 'nodejs', 'python', or 'java'.", + "required": true, + "defaultValue": "" + }, + { + "name": "signingKey", + "type": "string", + "description": "Private key or reference to a key store used to digitally sign the package for integrity verification.", + "required": false, + "defaultValue": "" + }, + { + "name": "scanDependencies", + "type": "boolean", + "description": "Whether to perform an automated vulnerability scan on package dependencies.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputDirectory", + "type": "string", + "description": "Directory path where the created package file and metadata will be saved.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details about the created package including package path, signature status, and vulnerability scan report." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate secure packaging of software artifacts with integrated code signing and security checks before deployment or distribution. Particularly useful for build automation systems requiring packaged, signed, and vulnerability-verified deliverables.", + "limitations": "This tool does not perform comprehensive source code static analysis, nor does it replace full CI/CD security pipelines. It assumes provided signing keys are valid and accessible. It handles common runtimes but may not support specialized or custom environments.", + "examples": [ + "Create a signed Node.js package from the 'src' directory named 'myApp' with version '1.0.0'", + "Generate a Python package and perform dependency vulnerability scanning before deployment", + "Package Java source files into a secure signed package without signing key to test unsigned distribution." + ] + }, + "tags": [ + "security", + "package", + "code signing", + "vulnerability scan", + "software packaging", + "build automation" + ], + "examples": [ + { + "inputJson": "{\"sourcePaths\":[\"./src\",\"./lib\"],\"packageName\":\"myApp\",\"version\":\"1.0.0\",\"runtimeEnvironment\":\"nodejs\",\"signingKey\":\"/keys/private.pem\",\"scanDependencies\":true,\"outputDirectory\":\"./dist\"}", + "description": "Create a signed Node.js package including src and lib directories, version 1.0.0." + }, + { + "inputJson": "{\"sourcePaths\":[\"./app\"],\"packageName\":\"analyticsTool\",\"version\":\"2.5.1\",\"runtimeEnvironment\":\"python\",\"signingKey\":\"\",\"scanDependencies\":true,\"outputDirectory\":\"./build\"}", + "description": "Generate a Python package from app directory, scan dependencies, unsigned, output to build folder." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "security-tools.createPipeline", + "description": "This tool creates a customizable security pipeline for applications or infrastructure projects. It accepts configuration inputs defining stages and security checks, then generates an automated pipeline script or configuration output ready for integration with CI/CD systems to enforce security best practices throughout development and deployment.", + "category": "security-tools", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The name identifier for the security pipeline to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "stages", + "type": "array", + "description": "An ordered list of pipeline stages, e.g., ['scan', 'test', 'deploy'], defining the workflow steps.", + "required": true, + "defaultValue": "" + }, + { + "name": "securityChecks", + "type": "array", + "description": "List of security checks or tools to include in the pipeline, e.g., ['staticAnalysis', 'dependencyCheck', 'vulnerabilityScan'].", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Target environment for the pipeline, such as 'development', 'staging', or 'production'.", + "required": false, + "defaultValue": "development" + }, + { + "name": "notificationEmail", + "type": "string", + "description": "Email address to receive pipeline execution reports and alerts.", + "required": false, + "defaultValue": "" + }, + { + "name": "integrations", + "type": "object", + "description": "Key-value pairs specifying third-party integrations, e.g., CI system type and SCM info.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated pipeline script or configuration, a summary of configured stages and checks, and any warnings or errors encountered during creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate or update a security-focused automation pipeline for CI/CD processes. It is ideal for enforcing standardized security checks and integrating with deployment workflows to catch vulnerabilities early.", + "limitations": "This tool does not execute the generated pipeline or perform actual security scans; it only creates pipeline configurations. It also requires the user to specify valid security check names and compatible stages.", + "examples": [ + "Create a security pipeline named 'webAppPipeline' with stages scan, build, test, deploy and include checks for static analysis and vulnerability scanning.", + "Generate a pipeline targeting production environment with email notifications enabled.", + "Produce an integrated pipeline configuration for Jenkins environment including dependency checks." + ] + }, + "tags": [ + "security", + "pipeline", + "automation", + "CI/CD", + "devops", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"webAppPipeline\",\"stages\":[\"scan\",\"build\",\"test\",\"deploy\"],\"securityChecks\":[\"staticAnalysis\",\"vulnerabilityScan\"],\"environment\":\"production\",\"notificationEmail\":\"sec-team@example.com\",\"integrations\":{\"ciSystem\":\"Jenkins\",\"scm\":\"GitHub\"}}", + "description": "Create a production security pipeline with scan, build, test, deploy stages including static analysis and vulnerability scanning, configured for Jenkins and GitHub with email alerts." + }, + { + "inputJson": "{\"pipelineName\":\"devSecPipeline\",\"stages\":[\"lint\",\"test\",\"deploy\"],\"securityChecks\":[\"dependencyCheck\"],\"environment\":\"development\",\"notificationEmail\":\"devsec@example.com\"}", + "description": "Generate a development environment pipeline with lint, test, deploy stages and dependency checking enabled." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "customer-support.analyzeKPI", + "description": "Analyzes customer support KPIs based on input data such as ticket volumes, resolution times, customer satisfaction scores, and agent performance metrics. Processes the data to calculate trends, averages, benchmarks, and highlights areas needing improvement. Outputs a structured summary report with key insights and recommended focus areas.", + "category": "customer-support", + "parameters": [ + { + "name": "kpiData", + "type": "array", + "description": "An array of objects each representing KPI metrics for a given time period or team, including required fields like ticketVolume, resolutionTime, customerSatisfaction, and optional agentPerformance.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "object", + "description": "Defines the analysis period with startDate and endDate in ISO 8601 string format to filter the KPI data accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "compareToPreviousPeriod", + "type": "boolean", + "description": "If true, compares current KPIs with the previous equivalent time period to show trends and changes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional threshold values to flag KPIs as critical or acceptable. For example, maxResolutionTime or minCustomerSatisfactionScore.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object containing calculated averages, trend comparisons, KPI highlights, critical flags for thresholds exceeded, and recommendations to improve customer support performance." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate customer support performance metrics from raw KPI data to identify trends, bottlenecks, or areas for improvement. Ideal for generating management reports or informing operational decisions about support teams.", + "limitations": "Does not connect directly to live data sources; requires pre-aggregated KPI input. Provides analysis based solely on provided KPIs and thresholds, without predicting future customer behavior or sentiment.", + "examples": [ + "Analyze customer support KPI data over the last month to identify any declines in resolution speed or customer satisfaction.", + "Compare this quarter's support KPIs to the previous quarter to understand performance trends and flag concerning metrics.", + "Summarize customer support performance from various teams with thresholds to highlight critical issues." + ] + }, + "tags": [ + "customer-support", + "analytics", + "KPI", + "performance", + "reporting", + "trend-analysis" + ], + "examples": [ + { + "inputJson": "{\"kpiData\":[{\"date\":\"2024-04-01\",\"ticketVolume\":1200,\"resolutionTime\":4.5,\"customerSatisfaction\":87,\"agentPerformance\":75},{\"date\":\"2024-04-02\",\"ticketVolume\":1300,\"resolutionTime\":5,\"customerSatisfaction\":85,\"agentPerformance\":73}],\"timeFrame\":{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\"},\"compareToPreviousPeriod\":true,\"thresholds\":{\"maxResolutionTime\":5,\"minCustomerSatisfactionScore\":80}}", + "description": "Analyze April 2024 KPIs compared to March with thresholds for resolution time and satisfaction." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "customer-support.analyzeComment", + "description": "This tool accepts a customer comment string as input and analyzes its content to identify sentiment polarity (positive, negative, neutral), categorize the feedback type (e.g., complaint, praise, inquiry), and extract key topics mentioned. It outputs a structured analysis summary containing these insights to assist customer support triage and response prioritization.", + "category": "customer-support", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw text of the customer comment to analyze for sentiment, category, and topics.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the comment text to improve analysis accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to extract and return key phrases/topics from the comment text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment label (positive, negative, neutral), feedback category, and optionally extracted key phrases from the comment." + }, + "aiAgent": { + "useCase": "An AI agent should use this tool when needing to assess individual or batches of customer comments to gauge overall customer sentiment, identify common issues or praise points, and triage feedback by category for support team action.", + "limitations": "This tool cannot fully understand complex sarcasm or context-dependent meanings in comments, and the categorization is limited to predefined feedback types. It does not generate responses or handle multi-turn conversations.", + "examples": [ + "Analyze a single customer comment to determine if it is a complaint or praise and extract topics mentioned.", + "Process a batch of comments to summarize overall sentiment and highlight frequent issues.", + "Identify key topics customers mention frequently in support tickets for trend analysis." + ] + }, + "tags": [ + "customer support", + "sentiment analysis", + "feedback categorization", + "text analysis", + "customer feedback" + ], + "examples": [ + { + "inputJson": "{\"commentText\": \"I love the quick response time but the product quality could be better.\", \"language\": \"en\", \"includeKeyPhrases\": true}", + "description": "Analyzing a mixed sentiment comment with praise for support speed and complaint about quality." + }, + { + "inputJson": "{\"commentText\": \"The app crashes every time I open it, very frustrating!\", \"language\": \"en\", \"includeKeyPhrases\": true}", + "description": "Analyzing a negative comment reporting a recurring app crash issue." + }, + { + "inputJson": "{\"commentText\": \"Can you provide more details about the product warranty?\", \"language\": \"en\", \"includeKeyPhrases\": false}", + "description": "Analyzing an inquiry-type comment without extracting key phrases to identify category only." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "customer-support.uploadImage", + "description": "Uploads an image file from a customer to the support ticketing system. It accepts image data or URLs, processes image validation including type and size checks, and outputs a confirmation with the uploaded image URL and metadata for reference in customer support interactions.", + "category": "customer-support", + "parameters": [ + { + "name": "ticketId", + "type": "string", + "description": "The unique identifier of the support ticket to attach the image to.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string of the image file to be uploaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageUrl", + "type": "string", + "description": "A URL pointing to an image to be uploaded (used if imageData is not provided).", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Filename for the uploaded image, including extension (e.g., 'photo.png').", + "required": true, + "defaultValue": "" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed file size for upload in megabytes. Defaults to 5MB.", + "required": false, + "defaultValue": "5" + }, + { + "name": "allowedFormats", + "type": "array", + "description": "List of permissible image file formats (extensions). Defaults to ['jpg','jpeg','png','gif'].", + "required": false, + "defaultValue": "[\"jpg\",\"jpeg\",\"png\",\"gif\"]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object confirming upload success with image URL and metadata or error details if upload failed." + }, + "aiAgent": { + "useCase": "Use this tool when a customer or support agent needs to attach an image to a support ticket, such as screenshots, photos of damaged products, or proof of issues, enhancing the context and resolution process.", + "limitations": "Does not perform image content analysis or OCR. Upload depends on valid image data or accessible URL. Does not handle non-image file uploads.", + "examples": [ + "Upload a customer's screenshot of an error message for ticket #12345.", + "Attach a photo of a damaged product sent by the customer as part of ticket ABCD.", + "Upload an image from a provided URL to a customer's support case." + ] + }, + "tags": [ + "upload", + "image", + "customer-support", + "support-ticket", + "media", + "validation", + "attachment" + ], + "examples": [ + { + "inputJson": "{\"ticketId\":\"12345\",\"imageData\":\"iVBORw0KGgoAAAANS...\",\"fileName\":\"screenshot.png\"}", + "description": "Upload embedded base64 image data as screenshot.png to ticket 12345." + }, + { + "inputJson": "{\"ticketId\":\"ABCD\",\"imageUrl\":\"https://example.com/image.jpg\",\"fileName\":\"damaged_product.jpg\"}", + "description": "Upload image from a URL as damaged_product.jpg to ticket ABCD." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "marketing-automation.formatText", + "description": "Formats marketing text content to enhance readability and engagement. Accepts raw text input and applies specified formatting options such as capitalization style, line length wrapping, trimming whitespace, adding bullet lists, and converting to title or sentence case. Outputs the formatted text string ready for use in campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw marketing text content to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeStyle", + "type": "string", + "description": "Capitalization style to apply: 'none', 'uppercase', 'lowercase', 'titleCase', or 'sentenceCase'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length for wrapping text. Lines longer than this are broken with line breaks.", + "required": false, + "defaultValue": "80" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, trims leading and trailing whitespace from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "addBulletPoints", + "type": "boolean", + "description": "If true, converts each line into a bullet point by prefixing with '- '.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineEnding", + "type": "string", + "description": "Line ending style to use: '\\n' (Unix) or '\\r\\n' (Windows).", + "required": false, + "defaultValue": "\\n" + } + ], + "returns": { + "type": "string", + "description": "The processed marketing text after formatting according to the specified parameters." + }, + "aiAgent": { + "useCase": "Use this tool when preparing raw or unformatted marketing content for automated campaigns, newsletters, or social posts where consistent and attractive text formatting improves readability and user engagement. Helpful for standardizing message style before distribution.", + "limitations": "Cannot perform language translation, sentiment analysis, or content creation itself. Does not verify grammar or content accuracy.", + "examples": [ + "Format marketing content by converting all text to title case and adding bullet points for campaign emails.", + "Wrap marketing copy at 60 characters per line and trim extra spaces before sending.", + "Convert promotional text to sentence case and strip excess whitespace for social media posts." + ] + }, + "tags": [ + "text-formatting", + "marketing", + "content-prep", + "automation", + "campaigns", + "readability" + ], + "examples": [ + { + "inputJson": "{\"text\":\" huge SALE coming UP! don't miss OUT.\",\"capitalizeStyle\":\"titleCase\",\"trimWhitespace\":true}", + "description": "Convert raw text to title case and trim whitespace for better presentation." + }, + { + "inputJson": "{\"text\":\"Feature one\\nFeature two\\nFeature three\",\"addBulletPoints\":true,\"maxLineLength\":50}", + "description": "Add bullet points to each feature line with max line length wrapping." + }, + { + "inputJson": "{\"text\":\"this is a sentence. this is another.\",\"capitalizeStyle\":\"sentenceCase\"}", + "description": "Format text so that the first letter of each sentence is uppercase and the rest lowercase." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "marketing-automation.createComponent", + "description": "Creates a reusable marketing campaign UI component based on input configuration. Accepts parameters defining component type (e.g., banner, popup), content, style options, and behavior triggers. Processes these inputs to generate HTML/CSS/JS code for embedding in marketing automation platforms. Outputs a component code bundle ready for deployment.", + "category": "marketing-automation", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of marketing UI component to create, e.g., 'banner', 'popup', 'emailTemplate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentHtml", + "type": "string", + "description": "Inner HTML content of the component, including text and media elements.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleOptions", + "type": "object", + "description": "CSS style properties and values to apply to the component container and its elements.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "behaviorTriggers", + "type": "array", + "description": "List of event triggers defining component behavior, e.g., ['onPageLoad', 'onClick'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeScripts", + "type": "boolean", + "description": "Whether to include supporting JavaScript code for interactive behaviors (default true).", + "required": false, + "defaultValue": "true" + }, + { + "name": "componentId", + "type": "string", + "description": "Optional identifier to assign to the component's root element for integration purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated component code with keys 'html', 'css', 'js', and 'componentId' for integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to dynamically generate a customizable marketing UI component code snippet based on user-specified content, styles, and behaviors, for embedding in campaigns or automation workflows. It helps automate the creation of ready-to-use marketing elements without manual coding.", + "limitations": "This tool does not deploy or host the component, nor does it integrate with specific marketing automation platforms beyond providing code. It cannot generate complex animations or backend integrations.", + "examples": [ + "Create a popup component with custom HTML content and styling triggered on page load.", + "Generate a banner component with specific style parameters and no scripts included.", + "Produce an email template snippet with given HTML content and inline styles." + ] + }, + "tags": [ + "marketing", + "automation", + "component", + "UI", + "campaign", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"popup\",\"contentHtml\":\"<h1>Welcome!</h1><p>Subscribe to our newsletter.</p>\",\"styleOptions\":{\"backgroundColor\":\"#fff\",\"border\":\"1px solid #ccc\",\"padding\":\"20px\"},\"behaviorTriggers\":[\"onPageLoad\"],\"includeScripts\":true,\"componentId\":\"welcomePopup\"}", + "description": "Create a popup component with welcome message, styled with white background and border, triggered on page load, including interactive scripts." + }, + { + "inputJson": "{\"componentType\":\"banner\",\"contentHtml\":\"<h2>Summer Sale!</h2><p>Up to 50% off</p>\",\"styleOptions\":{\"backgroundColor\":\"#f8d7da\",\"color\":\"#721c24\",\"textAlign\":\"center\"},\"behaviorTriggers\":[],\"includeScripts\":false}", + "description": "Generate a simple banner component with summer sale message, styled with red background and centered text, without interactive scripts." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "sales-automation.analyzeMetric", + "description": "Analyzes specified sales performance metrics over a given time range and optional segmentation. Accepts metrics like conversion rate, average deal size, or lead response time, applies statistical analysis, trend detection, and comparison against targets, then outputs a structured summary with insights and recommendations.", + "category": "sales-automation", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "Name of the sales metric to analyze, e.g., 'conversionRate' or 'averageDealSize'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the analysis period in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the analysis period in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentBy", + "type": "string", + "description": "Optional dimension to segment data by, e.g., 'region', 'salesRep', or 'productCategory'.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetValue", + "type": "number", + "description": "Optional target value to compare the analyzed metric against for performance evaluation.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Flag to indicate whether trend and historical pattern analysis should be performed.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the metric summary, including average value, trend indication, performance against target, segmentation breakdown if applicable, and actionable insights." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to evaluate specific sales metrics over time to help optimize sales strategies, monitor KPI performance, or generate reports for sales teams or management. It assists in transforming raw metric data into meaningful analysis and actionable recommendations.", + "limitations": "Does not fetch raw sales data; requires that data be pre-aggregated or accessible. It cannot replace detailed predictive modeling or causal inference and works best when input data is clean and consistent.", + "examples": [ + "Analyze the conversion rate for Q1 2024 across different sales regions.", + "Evaluate average deal size from January to March 2024 compared to a target of $50,000.", + "Analyze lead response time for last month, including trend analysis to detect improvements." + ] + }, + "tags": [ + "sales", + "analytics", + "metrics", + "performance", + "automation", + "kpi", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"conversionRate\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"segmentBy\":\"region\",\"targetValue\":0.25,\"includeTrendAnalysis\":true}", + "description": "Analyze the conversion rate for Q1 2024 broken down by region with trend analysis comparing against a 25% target." + }, + { + "inputJson": "{\"metricName\":\"averageDealSize\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"targetValue\":50000,\"includeTrendAnalysis\":false}", + "description": "Evaluate average deal size for Q1 2024 compared to a $50,000 target without trend analysis." + }, + { + "inputJson": "{\"metricName\":\"leadResponseTime\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\",\"includeTrendAnalysis\":true}", + "description": "Analyze the lead response time for May 2024 including trend detection to observe improvements." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "sales-automation.analyzeLead", + "description": "Analyzes sales lead data to assess lead quality, engagement level, and prioritization score. Accepts lead information and interaction history, applies scoring models and heuristics, and outputs a detailed lead analysis report including qualification status and recommendations for next actions.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "Comprehensive lead profile including demographic, contact, and company details", + "required": true, + "defaultValue": "" + }, + { + "name": "interactionHistory", + "type": "array", + "description": "Array of past interactions such as emails, calls, meetings with timestamps and outcomes", + "required": false, + "defaultValue": "[]" + }, + { + "name": "scoringModel", + "type": "string", + "description": "Identifier for the lead scoring model to apply, e.g., 'default', 'enterprise','customX'", + "required": false, + "defaultValue": "default" + }, + { + "name": "currentPipelineStage", + "type": "string", + "description": "Current stage of the lead within the sales funnel, used to contextualize analysis", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A report object summarizing lead quality score, qualification status, risk factors, engagement metrics, and actionable sales recommendations" + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate and score a sales lead based on input lead data and prior interaction records to prioritize sales efforts and tailor follow-ups. It helps automate lead qualification and provides insights to guide sales strategies.", + "limitations": "Does not generate new leads or contacts. Its accuracy depends on the quality and completeness of provided data. It does not replace human judgment but complements it with data-driven scoring.", + "examples": [ + "Analyze a lead with provided contact details and interaction log to get qualification status.", + "Prioritize leads in a sales pipeline by scoring and recommending next steps.", + "Evaluate engagement levels using recent communications data to inform follow-up outreach." + ] + }, + "tags": [ + "sales", + "lead-scoring", + "automation", + "crm", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"name\":\"Jane Doe\",\"company\":\"TechCorp\",\"email\":\"jane.doe@techcorp.com\",\"industry\":\"Software\",\"annualRevenue\":5000000,\"location\":\"San Francisco\"},\"interactionHistory\":[{\"type\":\"email\",\"date\":\"2024-05-01\",\"outcome\":\"opened\"},{\"type\":\"call\",\"date\":\"2024-05-03\",\"outcome\":\"no answer\"}],\"scoringModel\":\"default\",\"currentPipelineStage\":\"contacted\"}", + "description": "Analyze a technology sector lead with basic demographic and interaction history to assess sales readiness and next steps." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "finance-tools.createCommit", + "description": "Creates a detailed commit log entry for financial management software repositories, capturing metadata about changes such as files modified, author details, timestamp, and a descriptive message. Accepts inputs including commit message, author info, changed files list, and optional tags; outputs a structured commit object ready for version control integration.", + "category": "finance-tools", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "A clear, concise message describing the changes made in this commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "The name of the author making the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "The email address of the commit author.", + "required": true, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of file paths changed in this commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitTimestamp", + "type": "string", + "description": "ISO 8601 datetime string representing when the commit was made.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or labels associated with this commit, e.g., 'bugfix', 'documentation'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created commit with fields: id (hash), message, author, email, timestamp, changedFiles array, and tags array." + }, + "aiAgent": { + "useCase": "Use this tool when generating structured commit entries programmatically during financial software development, ensuring all metadata related to code changes is captured accurately for auditing and version control purposes.", + "limitations": "This tool does not execute or push commits to any version control system, nor does it handle merge conflicts or repository state management.", + "examples": [ + "Create a commit when a financial report-generation module is updated.", + "Generate a commit log entry after fixing a calculation bug in accounting logic.", + "Add a commit describing documentation updates for financial compliance." + ] + }, + "tags": [ + "finance", + "commit", + "version-control", + "logging", + "code-management", + "software-development" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Fixed rounding error in tax calculation logic\",\"authorName\":\"Alice Johnson\",\"authorEmail\":\"alice.johnson@example.com\",\"changedFiles\":[\"src/taxCalculator.js\",\"tests/taxCalculator.test.js\"],\"commitTimestamp\":\"2024-06-15T12:30:00Z\",\"tags\":[\"bugfix\",\"tax\"]}", + "description": "Commit for a bugfix addressing rounding errors in tax calculations made by Alice Johnson with timestamp and tags." + }, + { + "inputJson": "{\"commitMessage\":\"Added export functionality for quarterly financial reports\",\"authorName\":\"Bob Lee\",\"authorEmail\":\"bob.lee@example.com\",\"changedFiles\":[\"src/reportExporter.js\",\"docs/exportGuide.md\"],\"tags\":[\"feature\",\"reports\"]}", + "description": "Commit documenting the addition of a new feature to export quarterly reports, without explicit timestamp." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "translation.buildFunction", + "description": "Generates a code function in the specified programming language that translates given text from a source language to a target language using a translation API or library. Accepts source text, source and target language codes, and optional parameters for the translation approach. Outputs the complete code snippet implementing the translation function.", + "category": "translation", + "parameters": [ + { + "name": "sourceLang", + "type": "string", + "description": "The language code of the input text, e.g., 'en' for English. Required for accurate translation.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLang", + "type": "string", + "description": "The language code to translate the text into, e.g., 'fr' for French. Required to define translation target.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionName", + "type": "string", + "description": "The desired name for the generated translation function in code. Defaults to 'translateText' if not provided.", + "required": false, + "defaultValue": "\"translateText\"" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated function, e.g., 'python', 'javascript'. Determines syntax and libraries used.", + "required": true, + "defaultValue": "" + }, + { + "name": "useApi", + "type": "boolean", + "description": "Whether to generate code using a specific translation API (true) or a placeholder/local dictionary (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "apiName", + "type": "string", + "description": "The name of the translation API to use if useApi=true, e.g., 'GoogleTranslate', 'MicrosoftTranslator'. Ignored if useApi=false.", + "required": false, + "defaultValue": "\"GoogleTranslate\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'code' string property with the complete source code of the translation function." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide developers with ready-to-use code snippets that perform automated translation between specified languages. It is helpful for building multilingual applications, chatbots, or localization tools where code to translate text programmatically is required.", + "limitations": "This tool does not execute or validate the generated code. It cannot guarantee that the APIs or libraries referenced are available or configured. It generates only basic translation functions and does not handle complex contexts, batch translations, or advanced error handling.", + "examples": [ + "Generate a Python function named 'translateToFrench' that translates English text to French using the Google Translate API.", + "Create a JavaScript code snippet for a function that translates Spanish text into German without using an external API (local placeholder).", + "Build a TypeScript async function to translate text from Japanese to English using Microsoft Translator API." + ] + }, + "tags": [ + "translation", + "code generation", + "function builder", + "programming", + "localization", + "API integration" + ], + "examples": [ + { + "inputJson": "{\"sourceLang\":\"en\",\"targetLang\":\"fr\",\"functionName\":\"translateToFrench\",\"programmingLanguage\":\"python\",\"useApi\":true,\"apiName\":\"GoogleTranslate\"}", + "description": "Generate a Python function named translateToFrench that translates English to French using Google Translate API." + }, + { + "inputJson": "{\"sourceLang\":\"es\",\"targetLang\":\"de\",\"functionName\":\"localTranslate\",\"programmingLanguage\":\"javascript\",\"useApi\":false}", + "description": "Generate a JavaScript function localTranslate that uses a placeholder dictionary to translate Spanish to German, without external API." + }, + { + "inputJson": "{\"sourceLang\":\"ja\",\"targetLang\":\"en\",\"functionName\":\"msTranslator\",\"programmingLanguage\":\"typescript\",\"useApi\":true,\"apiName\":\"MicrosoftTranslator\"}", + "description": "Generate a TypeScript async function named msTranslator to translate Japanese to English using Microsoft Translator API." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "translation.createCommit", + "description": "This tool creates a code commit message that accurately describes the translation changes made to a codebase. It accepts details about source and target languages, the files or modules translated, and a summary of translation scope. It generates a standardized commit message suitable for version control systems, improving clarity and consistency of translation commits.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The original language code of the content before translation (e.g., 'en').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code into which the content is translated (e.g., 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "filesTranslated", + "type": "array", + "description": "An array of file paths or module names that were translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "translationSummary", + "type": "string", + "description": "A brief summary describing the scope and nature of the translation work performed.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeIssueReference", + "type": "boolean", + "description": "Whether to include a related issue or ticket reference in the commit message.", + "required": false, + "defaultValue": "false" + }, + { + "name": "issueId", + "type": "string", + "description": "The identifier of the issue or ticket related to the translation work, if applicable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated commit message string under the 'commitMessage' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate clear, consistent commit messages that describe translation changes made in code repositories. It helps maintainers quickly understand the translation scope, languages involved, and affected files, improving version control and collaboration for multilingual projects.", + "limitations": "This tool does not perform the translation itself and does not analyze the content deeply to generate semantic summaries. It relies on user-provided input details to generate commit messages.", + "examples": [ + "Generate a commit message for Spanish to English translation of UI module files.", + "Create a commit message including an issue reference for German translation of documentation.", + "Produce a summary commit message for bulk translation updates from Japanese to Chinese." + ] + }, + "tags": [ + "translation", + "commit", + "versionControl", + "localization", + "multilingual", + "codeManagement" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"filesTranslated\":[\"src/components/Header.js\",\"src/locales/fr.json\"],\"translationSummary\":\"Translated UI headers and menu items to French\",\"includeIssueReference\":true,\"issueId\":\"TRANSLATE-123\"}", + "description": "Create a commit message for French translation of UI header component files with an issue reference." + }, + { + "inputJson": "{\"sourceLanguage\":\"ja\",\"targetLanguage\":\"zh\",\"filesTranslated\":[\"docs/installation_guide.md\"],\"translationSummary\":\"Translated installation guide to Simplified Chinese\",\"includeIssueReference\":false,\"issueId\":\"\"}", + "description": "Generate commit message for translation of a single documentation file from Japanese to Chinese without issue ID." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "documentation-tools.analyzeTrend", + "description": "Analyzes documentation usage and update trends over a specified time period by processing input metadata such as document edit timestamps, user access logs, and content versions. Outputs summary statistics and visualizable trend data showing activity levels, update frequency, and user engagement to help documentation teams identify evolving focus areas and maintenance needs.", + "category": "documentation-tools", + "parameters": [ + { + "name": "documentIds", + "type": "array", + "description": "Array of document identifiers to include in trend analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 date string marking the start of the analysis period (inclusive).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 date string marking the end of the analysis period (inclusive).", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names to calculate such as 'editCount', 'viewCount', 'uniqueUsers'.", + "required": false, + "defaultValue": "[\"editCount\",\"viewCount\"]" + }, + { + "name": "groupBy", + "type": "string", + "description": "Time granularity for trend grouping, e.g., 'daily', 'weekly', 'monthly'.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeInactiveDocuments", + "type": "boolean", + "description": "Whether to include documents with no activity in the output trend analysis.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing trend analytics data with time-series statistics for each metric, overall summary, and potentially visual metadata such as chart-ready datasets." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents that need to provide insights on how documentation content evolves over time. It helps identify which documents are frequently updated, which have declining user engagement, and patterns in the documentation lifecycle to support maintenance prioritization and resource allocation.", + "limitations": "Does not perform qualitative content analysis or generate natural language summaries. Requires accurate input metadata and does not infer causality behind trends.", + "examples": [ + "Analyze documentation editing trends for a set of product manual documents over the past quarter.", + "Evaluate user access patterns on API documentation monthly to detect changes in user engagement.", + "Generate weekly edit and view trends for all documents in a knowledge base to help prioritize content reviews." + ] + }, + "tags": [ + "documentation", + "analytics", + "trend-analysis", + "usage-metrics", + "content-management" + ], + "examples": [ + { + "inputJson": "{\"documentIds\":[\"doc123\",\"doc456\"],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"metrics\":[\"editCount\",\"viewCount\"],\"groupBy\":\"weekly\",\"includeInactiveDocuments\":false}", + "description": "Weekly trend analysis of edits and views for two documentation articles over the first quarter of 2024." + }, + { + "inputJson": "{\"documentIds\":[\"api-guide-2024\"],\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"metrics\":[\"uniqueUsers\"],\"groupBy\":\"daily\",\"includeInactiveDocuments\":true}", + "description": "Daily unique user trend for the April 2024 API guide including days with no activity." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "documentation-tools.analyzeThread", + "description": "This tool accepts a communication thread as input, which can include emails, chat logs, or forum posts. It analyzes the thread to extract key topics, sentiment trends, participant activity, and identifies unresolved questions or action items. The output is a structured summary report highlighting main discussion points and recommendations to improve thread clarity and follow-up.", + "category": "documentation-tools", + "parameters": [ + { + "name": "threadContent", + "type": "string", + "description": "The full text content of the communication thread to analyze, including all messages/comments.", + "required": true, + "defaultValue": "" + }, + { + "name": "threadType", + "type": "string", + "description": "Type of communication thread (e.g., 'email', 'chat', 'forum') to tailor analysis approach.", + "required": false, + "defaultValue": "chat" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the thread content, for accurate sentiment and topic analysis (e.g., 'en').", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the thread content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectActionItems", + "type": "boolean", + "description": "Flag to identify and extract pending action items or to-dos mentioned within the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length in characters for the generated summary report.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report object including topics identified, sentiment overview, participant activity summaries, unresolved questions, action items, and overall thread clarity score." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the key points and dynamics of a communication thread, such as lengthy emails or chat discussions, to quickly generate summaries, detect sentiment trends, identify action items, and highlight unresolved questions for efficient follow-up.", + "limitations": "This tool cannot replace human judgment in interpreting nuanced or sensitive conversation context. It may struggle with sarcasm or mixed languages, and accuracy depends on clear text input without heavy formatting or images.", + "examples": [ + "Analyze this email chain to summarize main topics and find pending action items.", + "Provide a sentiment overview and highlight unresolved questions in this forum discussion.", + "Summarize participant contributions and identify key decisions in this chat transcript." + ] + }, + "tags": [ + "analysis", + "communication", + "documentation", + "thread", + "summary", + "sentiment", + "actionItems" + ], + "examples": [ + { + "inputJson": "{\"threadContent\":\"Alice: Hi team, are we ready for the release next week?\\nBob: Almost, but we need to finalize the testing.\\nAlice: Any blockers in testing?\\nCharlie: Waiting on QA approval, hope to finish by Friday.\",\"threadType\":\"chat\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"detectActionItems\":true,\"maxSummaryLength\":800}", + "description": "Analyze a short chat thread about release readiness to identify topics, sentiment, and action items." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "data-analytics.composeText", + "description": "This tool generates coherent, context-relevant textual narratives from structured data inputs such as statistics, metrics, or summarized analytical results. It accepts raw data or summaries, synthesizes insights, and composes readable analytical text for reports, presentations, or dashboards.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured input data including metrics, statistics, or summarized results to be described in the text.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateStyle", + "type": "string", + "description": "Optional style or tone guide for the generated text, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the text output, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the output text in number of words.", + "required": false, + "defaultValue": "300" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to add a brief summary section at the start of the composed text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed text as a string and metadata such as word count and a confidence score for text relevance." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform numeric or structured analytical data into readable, natural language explanations or narratives. It is especially useful for generating data-driven reports, executive summaries, or descriptive captions in dashboards where contextualization of metrics enhances user understanding.", + "limitations": "The tool does not perform data validation or error correction. It cannot generate text without structured input data and may produce less coherent text if the input data is sparse or poorly formatted.", + "examples": [ + "Generate a formal report paragraph summarizing last quarter's sales data.", + "Create a casual style dashboard caption explaining monthly website traffic trends.", + "Produce a technical summary describing key performance indicators from the input metrics." + ] + }, + "tags": [ + "text-composition", + "data-analysis", + "report-generation", + "natural-language", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"totalSales\":120000,\"growthRate\":0.07,\"topRegion\":\"North America\"},\"templateStyle\":\"formal\",\"language\":\"en\",\"maxLength\":150,\"includeSummary\":true}", + "description": "Compose a formal analytical text summary highlighting overall sales performance and growth." + }, + { + "inputJson": "{\"inputData\":{\"userVisits\":23000,\"bounceRate\":0.35,\"avgSessionDuration\":300},\"templateStyle\":\"casual\",\"language\":\"en\",\"maxLength\":100,\"includeSummary\":false}", + "description": "Generate a casual text snippet describing website traffic behavior for a dashboard tooltip." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "data-analytics.createComment", + "description": "Creates a structured comment attached to a data analysis report or visualization, accepting input details such as author name, comment text, related data reference, and optional tags. It outputs a comment object with metadata for integration with analytics dashboards or reports.", + "category": "data-analytics", + "parameters": [ + { + "name": "authorName", + "type": "string", + "description": "Name of the comment author, used to attribute the comment.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The textual content of the comment explaining insights, questions, or observations.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedDataReference", + "type": "string", + "description": "Identifier or reference to the specific dataset, chart, or report this comment pertains to.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of strings tagging the comment with relevant keywords or categories.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp representing when the comment was created. Defaults to current time if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created comment with fields: id (unique identifier), authorName, commentText, relatedDataReference, tags, timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or add contextual comments to data visualizations or analytics reports, helping users to document insights, flag anomalies, or raise questions within the analytics environment.", + "limitations": "This tool does not analyze or interpret data automatically; it only creates comment entries based on provided inputs. It does not manage comment threading or user authentication.", + "examples": [ + "Add a comment by analyst 'Jane Doe' noting an unusual spike in sales on Q2 data.", + "Create a comment tagging a visualization 'Customer Churn Rate' with observations about recent trends.", + "Insert a comment with tags 'urgent' and 'review' for the dataset 'Monthly Budget Analysis'." + ] + }, + "tags": [ + "comment", + "data-analytics", + "reporting", + "feedback", + "annotation", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"authorName\":\"Jane Doe\",\"commentText\":\"Notable spike in Q2 sales, might need further investigation.\",\"relatedDataReference\":\"report-12345-chart-sales-q2\",\"tags\":[\"insight\",\"sales\"]}", + "description": "Create a comment from Jane Doe about a sales spike in Q2 referenced by a chart ID." + }, + { + "inputJson": "{\"authorName\":\"DataBot\",\"commentText\":\"Customer churn is decreasing steadily.\",\"relatedDataReference\":\"dashboard-customer-churn\",\"tags\":[\"trend\",\"positive\"]}", + "description": "Automated comment from DataBot noting a positive trend in customer churn dashboard." + }, + { + "inputJson": "{\"authorName\":\"Analyst Mike\",\"commentText\":\"Please review budget allocations for next quarter.\",\"relatedDataReference\":\"dataset-budget-q3\",\"tags\":[\"urgent\",\"review\"],\"timestamp\":\"2024-04-26T10:15:00Z\"}", + "description": "Analyst Mike adds a comment with urgency tag and specific timestamp for budget dataset review." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "data-transformation.createAlert", + "description": "Creates a structured security alert object from raw input parameters such as alert type, severity, description, and source information. Processes the inputs to format a standardized alert object suitable for security monitoring and incident response systems. Outputs a JSON object representing the alert with metadata and timestamps.", + "category": "data-transformation", + "parameters": [ + { + "name": "alertType", + "type": "string", + "description": "Type/category of the security alert, e.g., 'malware', 'phishing', 'intrusion'.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the alert; typical values are 'low', 'medium', 'high', or 'critical'.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed human-readable description of the security event triggering the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceIP", + "type": "string", + "description": "Optional IP address where the suspicious activity originated from.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationIP", + "type": "string", + "description": "Optional IP address that was targeted or affected by the suspicious activity.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the alert event occurred. Defaults to current time if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalData", + "type": "object", + "description": "Optional JSON object containing any extra metadata or context relevant to the alert.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A standardized alert object with fields such as id, alertType, severity, description, sourceIP, destinationIP, timestamp, additionalData, and generatedAt timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when converting raw security event details into a formatted alert object for downstream processing, logging, or forwarding to a security information and event management (SIEM) system. It is particularly useful when received metrics or logs need to be transformed into consistent alert formats for incident response automation.", + "limitations": "This tool does not validate the correctness of IP addresses or enforce schema for additionalData; it also does not enrich alert data or perform threat detection, only formats provided inputs into a structured alert.", + "examples": [ + "Create a high severity alert for detected malware from source IP 192.168.1.10 with detailed description", + "Generate a phishing alert with medium severity but no source or destination IP addresses", + "Convert given raw alert info with extra metadata fields into the standard alert structure" + ] + }, + "tags": [ + "data-transformation", + "security", + "alert-creation", + "incident-response", + "SIEM", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"alertType\":\"malware\",\"severity\":\"high\",\"description\":\"Detected malware communication to known bad domain\",\"sourceIP\":\"192.168.1.10\",\"destinationIP\":\"8.8.8.8\",\"timestamp\":\"2024-06-10T14:32:00Z\",\"additionalData\":{\"malwareName\":\"Trojan.XYZ\",\"fileHash\":\"abcdef1234567890\"}}", + "description": "Create a high severity malware alert including source, destination IPs and additional malware metadata." + }, + { + "inputJson": "{\"alertType\":\"phishing\",\"severity\":\"medium\",\"description\":\"Suspicious email link clicked by user\",\"timestamp\":\"2024-06-10T09:15:00Z\"}", + "description": "Generate a medium severity phishing alert with minimal information provided." + }, + { + "inputJson": "{\"alertType\":\"intrusion\",\"severity\":\"critical\",\"description\":\"Multiple failed login attempts detected\",\"sourceIP\":\"10.0.0.5\",\"additionalData\":{\"attempts\":10,\"username\":\"admin\"}}", + "description": "Create critical severity alert for intrusion attempt with extra metadata on login attempts and username." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "data-validation.renderDocument", + "description": "This tool accepts a structured data object representing a document (e.g., JSON or XML data). It validates the data structure against predefined schemas and renders a clean, human-readable document in HTML or PDF format. The output is a rendered document string (HTML) or base64-encoded PDF.", + "category": "data-validation", + "parameters": [ + { + "name": "documentData", + "type": "object", + "description": "Structured data object representing the document content to validate and render.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaName", + "type": "string", + "description": "Name or identifier of the schema to use for validating the input document data.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the rendered output. Supported values are 'html' for HTML string and 'pdf' for PDF base64 encoding.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeStyles", + "type": "boolean", + "description": "Whether to include default styling with the rendered document (applies to HTML output).", + "required": false, + "defaultValue": "true" + }, + { + "name": "pageSize", + "type": "string", + "description": "The page size for PDF output (e.g., 'A4', 'Letter'). Ignored if outputFormat is 'html'.", + "required": false, + "defaultValue": "A4" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered document content as a string. If PDF, content is base64 encoded. Includes validation report with errors or warnings if any." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured document data that needs both validation against a schema for data integrity and rendering into a clean, formatted output for user viewing or distribution. Useful in automated reporting, document generation from templates, or compliance checking before display.", + "limitations": "This tool does not perform OCR or extract text from scanned documents. It requires structured data input and predefined schemas; it cannot infer document structure dynamically.", + "examples": [ + "Render a validated invoice JSON into a styled HTML invoice document.", + "Validate a report data object and produce a PDF formatted document for distribution.", + "Generate a clean, readable contract document from input data conforming to a legal schema." + ] + }, + "tags": [ + "data-validation", + "document-rendering", + "schema-validation", + "html", + "pdf", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"documentData\":{\"invoiceNumber\":\"12345\",\"date\":\"2024-05-01\",\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"price\":9.99}]},\"schemaName\":\"invoiceSchema\",\"outputFormat\":\"html\",\"includeStyles\":true}", + "description": "Render an invoice document from JSON data into styled HTML after validating with the invoice schema." + }, + { + "inputJson": "{\"documentData\":{\"reportTitle\":\"Monthly Sales\",\"date\":\"2024-05-01\",\"summary\":\"Positive growth\"},\"schemaName\":\"salesReportSchema\",\"outputFormat\":\"pdf\",\"pageSize\":\"Letter\"}", + "description": "Validate and render a sales report document data into a PDF document formatted for Letter page size." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "data-validation.createParagraph", + "description": "Generates a well-structured paragraph from an array of sentences, validating sentence coherence and punctuation. The tool accepts an array of string sentences, checks for sentence completeness, proper punctuation, and combines them into a single paragraph string as output.", + "category": "data-validation", + "parameters": [ + { + "name": "sentences", + "type": "array", + "description": "An array of sentences (strings) to be combined into a paragraph. Each sentence should be a non-empty string.", + "required": true, + "defaultValue": "" + }, + { + "name": "ensurePunctuation", + "type": "boolean", + "description": "If true, the tool will add a period at the end of any sentence missing terminal punctuation before combining.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minSentenceLength", + "type": "number", + "description": "Minimum number of characters a sentence must have to be included in the paragraph; shorter sentences will be discarded.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the combined paragraph string and statistics about the validation process, including sentences included and discarded." + }, + "aiAgent": { + "useCase": "Use this tool when you have multiple individual sentences that need to be validated and combined into a coherent paragraph. It is especially useful to ensure each sentence is complete, properly punctuated, and meets minimum length requirements before constructing a readable paragraph for reports, content creation, or documentation.", + "limitations": "This tool does not perform deep semantic validation, grammar correction beyond punctuation, nor reorder sentences for optimal narrative flow. It assumes sentences are in the desired order and focuses on surface-level structural validation.", + "examples": [ + "Create a paragraph from a list of bullet point sentences, adding missing periods where needed.", + "Validate and merge an array of sentences ensuring minimum sentence length to exclude fragments.", + "Generate a paragraph string that is properly punctuated from user-provided partial sentences." + ] + }, + "tags": [ + "data-validation", + "text-processing", + "paragraph-generation", + "content-quality", + "sentence-validation" + ], + "examples": [ + { + "inputJson": "{\"sentences\":[\"This is the first sentence\",\"Here is another one\",\"Final sentence\"]}", + "description": "Create paragraph from three sentences missing punctuation at the end." + }, + { + "inputJson": "{\"sentences\":[\"Incomplete\",\"Is this complete?\",\"Yes, it is.\"],\"minSentenceLength\":8}", + "description": "Discard sentences shorter than 8 characters and combine the rest into a paragraph." + }, + { + "inputJson": "{\"sentences\":[\"Sentence one\",\"Sentence two.\",\"Sentence three\"],\"ensurePunctuation\":false}", + "description": "Combine sentences without adding any missing punctuation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "data-validation.createOrder", + "description": "Validates and processes input data to create a business order entity. Accepts order details including customer info, items, quantities, prices, and order metadata; verifies data integrity and completeness; outputs a structured Order object with validation status and errors if any.", + "category": "data-validation", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier of the customer placing the order", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "Array of order items, each containing productId (string), quantity (number), and unitPrice (number)", + "required": true, + "defaultValue": "" + }, + { + "name": "orderDate", + "type": "string", + "description": "ISO 8601 date string representing when the order was placed", + "required": true, + "defaultValue": "" + }, + { + "name": "shippingAddress", + "type": "object", + "description": "Object containing shipping address fields: street, city, postalCode, country", + "required": true, + "defaultValue": "" + }, + { + "name": "discountCode", + "type": "string", + "description": "Optional discount or promo code to apply to the order", + "required": false, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Payment method selected by customer, e.g., 'credit_card', 'paypal'", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a boolean 'isValid' indicating validation success, an array 'errors' listing validation errors if any, and an 'order' object with normalized and validated order data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to validate and standardize incoming order data before further processing or storage in business workflows, ensuring data integrity and capturing any inconsistencies or missing information.", + "limitations": "This tool validates and structures order data but does not process payments or check inventory availability. It relies on correct data types and basic business rules only.", + "examples": [ + "Create an order for customer 'C123' with two items including quantities and prices, verify all fields are valid.", + "Validate and create an order with a shipping address and optional discount code, reporting any missing required fields.", + "Check if the provided payment method and order date conform to expected formats and constraints." + ] + }, + "tags": [ + "validation", + "order", + "business", + "data-quality", + "ecommerce", + "input-processing" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"C12345\",\"items\":[{\"productId\":\"P987\",\"quantity\":2,\"unitPrice\":49.99},{\"productId\":\"P654\",\"quantity\":1,\"unitPrice\":19.99}],\"orderDate\":\"2024-06-10T14:30:00Z\",\"shippingAddress\":{\"street\":\"123 Example Lane\",\"city\":\"Anytown\",\"postalCode\":\"12345\",\"country\":\"USA\"},\"discountCode\":\"SUMMER2024\",\"paymentMethod\":\"credit_card\"}", + "description": "Valid order with multiple items, shipping address, discount code, and credit card payment." + }, + { + "inputJson": "{\"customerId\":\"C67890\",\"items\":[{\"productId\":\"P321\",\"quantity\":0,\"unitPrice\":15.00}],\"orderDate\":\"2024-06-09\",\"shippingAddress\":{\"street\":\"789 Sample Rd\",\"city\":\"Othertown\",\"postalCode\":\"67890\",\"country\":\"USA\"},\"paymentMethod\":\"paypal\"}", + "description": "Order with an item quantity set to zero, should trigger a validation error." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "data-validation.createModule", + "description": "Creates a reusable JavaScript module that validates data objects against customizable schema rules. Inputs include the schema definition with field rules, data types, required fields, and constraints. It outputs a validation module code string that can be imported to perform runtime data validations, ensuring data quality and integrity.", + "category": "data-validation", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name for the generated validation module. This will be used as the module's identifier and file name.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "An object defining the data schema with fields, expected types, required flags, and validation constraints (e.g., minLength, max, regex).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeErrorMessages", + "type": "boolean", + "description": "Flag to include detailed error messages in the validation module output for easier debugging.", + "required": false, + "defaultValue": "true" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "If true, the validation module rejects data with any extra fields not specified in the schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "exportType", + "type": "string", + "description": "Determines the export style of the module: 'commonjs' for module.exports or 'es6' for export default.", + "required": false, + "defaultValue": "es6" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript validation module code as a string, and metadata such as the module name and summary of schema rules." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate a JavaScript validation module tailored to specific data schema rules. Ideal for automating creation of robust, reusable data validators in development workflows, ensuring data integrity by enforcing field types, required fields, and constraints programmatically.", + "limitations": "This tool generates code for basic and common validation scenarios but doesn't handle deeply nested schemas with complex recursive rules or produce runtime optimized validation libraries. It cannot perform actual validation itself, only generate the validation module code.", + "examples": [ + "Create a module named 'UserValidator' that validates user objects with required name, email, and optional age fields with constraints.", + "Generate a validation module with strict mode enabled to reject objects containing unexpected fields.", + "Produce a commonjs style export module validating product data with detailed error messages." + ] + }, + "tags": [ + "data-validation", + "code-generation", + "javascript", + "schema-validation", + "module-generator" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"UserValidator\",\"schemaDefinition\":{\"name\":{\"type\":\"string\",\"required\":true},\"email\":{\"type\":\"string\",\"required\":true,\"pattern\":\"^[\\\\w.-]+@[\\\\w.-]+\\\\.\\\\w{2,}$\"},\"age\":{\"type\":\"number\",\"required\":false,\"min\":0}},\"includeErrorMessages\":true,\"strictMode\":false,\"exportType\":\"es6\"}", + "description": "Generate an ES6 validation module named 'UserValidator' for user data with required name and email (email pattern), optional non-negative age, including error messages and allowing extra fields." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "etl-processes.createComponent", + "description": "Creates a reusable ETL component definition that specifies extraction, transformation, and loading steps. Accepts a name for the component, data source details, transformation logic, and destination configurations as input, then outputs a structured JSON object representing the ETL component for integration into data pipelines.", + "category": "etl-processes", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The unique name identifying the ETL component to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration details for the data source, such as type, connection details, and query parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationSteps", + "type": "array", + "description": "An ordered list of transformation operations to apply to the data, each specified as an object detailing the transformation type and parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationConfig", + "type": "object", + "description": "Configuration for the target system where transformed data will be loaded, including type and connection settings.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentDescription", + "type": "string", + "description": "Optional human-readable description providing overview or purpose of the ETL component.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the complete ETL component definition, including name, source, transformations, and destination configurations, ready for use in pipeline orchestration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically define a consistent ETL component for data ingestion pipelines, specifying extraction sources, applying transformation logic, and defining data loading targets in a structured format for deployment or sharing.", + "limitations": "This tool does not execute the ETL process itself, validate connectivity to sources or destinations, or handle runtime error management for the ETL steps.", + "examples": [ + "Create an ETL component for pulling sales data from a SQL database, transforming date formats and aggregating totals, then loading into a data warehouse.", + "Define an ETL component that extracts JSON data from REST API, filters fields, and writes to a cloud storage bucket.", + "Build a reusable ETL component that reads CSV files from FTP, applies cleansing rules, and loads into a NoSQL database." + ] + }, + "tags": [ + "etl", + "component", + "create", + "data-pipeline", + "transformation", + "loading", + "extraction" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"salesDataIngestion\",\"sourceConfig\":{\"type\":\"sql\",\"connectionString\":\"Server=myServer;Database=sales;User Id=admin;Password=pass;\",\"query\":\"SELECT * FROM transactions WHERE transaction_date >= '2023-01-01'\"},\"transformationSteps\":[{\"type\":\"dateFormat\",\"params\":{\"field\":\"transaction_date\",\"format\":\"yyyy-MM-dd\"}},{\"type\":\"aggregate\",\"params\":{\"groupBy\":[\"customer_id\"],\"aggregations\":{\"sum\":\"amount\"}}}],\"destinationConfig\":{\"type\":\"dataWarehouse\",\"connectionString\":\"dw-conn-string\",\"tableName\":\"fact_sales\"},\"componentDescription\":\"Ingests sales transaction data, formats dates, aggregates amounts by customer, and loads into DW.\"}", + "description": "Define an ETL component to ingest and transform sales transaction data from SQL, then load to a data warehouse." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "database-management.analyzeReference", + "description": "Analyzes a database reference object or identifier by inspecting its schema, relationships, and metadata to provide detailed insights such as foreign key dependencies, referenced tables, and index usage. Accepts reference identifiers or objects as input, performs structural analysis, and outputs a comprehensive report on reference characteristics.", + "category": "database-management", + "parameters": [ + { + "name": "referenceId", + "type": "string", + "description": "Unique identifier of the database reference to analyze, e.g., foreign key constraint name or index name.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include detailed metadata such as creation date, owner, and permissions in the analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "depth", + "type": "number", + "description": "Level of recursive depth for analyzing indirect references or chained dependencies (1 = direct only).", + "required": false, + "defaultValue": "1" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of the database system (e.g., 'PostgreSQL', 'MySQL', 'Oracle') to tailor analysis to specific features.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "schemaName", + "type": "string", + "description": "Database schema name where the reference exists to narrow down the analysis scope.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing details about the reference's properties, linked tables, constraints, index usage, and optionally metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the structure and dependencies related to a specific reference element in a database, such as foreign key constraints, indexes, or other relational references, to assist in database optimization, integrity checks, or documentation generation.", + "limitations": "Cannot modify the database or fix issues; only provides analytical insights on existing references. Relies on correct and accessible reference identifiers and database connectivity.", + "examples": [ + "Analyze metadata and dependencies of a foreign key named 'fk_customer_order' in PostgreSQL.", + "Get a detailed report of the reference 'idx_user_email' including index usage for optimization review.", + "Examine all related chained references for a given foreign key up to depth 2 in a specified schema." + ] + }, + "tags": [ + "database", + "analysis", + "reference", + "schema", + "foreign-key", + "index" + ], + "examples": [ + { + "inputJson": "{\"referenceId\":\"fk_orders_customers\",\"includeMetadata\":true,\"depth\":1,\"databaseType\":\"PostgreSQL\",\"schemaName\":\"public\"}", + "description": "Analyze the foreign key 'fk_orders_customers' in PostgreSQL public schema including metadata." + }, + { + "inputJson": "{\"referenceId\":\"idx_email_unique\",\"includeMetadata\":false,\"depth\":1,\"databaseType\":\"MySQL\",\"schemaName\":\"users\"}", + "description": "Analyze the unique index 'idx_email_unique' on the 'users' schema in MySQL without extra metadata." + }, + { + "inputJson": "{\"referenceId\":\"fk_sales_region\",\"includeMetadata\":true,\"depth\":2,\"databaseType\":\"Oracle\",\"schemaName\":\"sales\"}", + "description": "Perform a detailed analysis including chained references to depth 2 for foreign key 'fk_sales_region' in Oracle sales schema." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "database-management.formatParagraph", + "description": "Formats a given text paragraph according to specified style parameters such as line width, indentation, text alignment, and line spacing. Accepts raw paragraph text and outputs a formatted string suitable for display or storage in database text fields.", + "category": "database-management", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum number of characters per line; text will wrap accordingly.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to indent the first line of the paragraph.", + "required": false, + "defaultValue": "0" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "lineSpacing", + "type": "number", + "description": "Number of blank lines to insert between lines for vertical spacing.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'formattedText' with the paragraph formatted according to the requested styles." + }, + "aiAgent": { + "useCase": "Use this tool when you need to display or store text paragraphs from database fields in a visually structured and readable format, abiding by style constraints like alignment, indentation, and maximum line length. Helpful for preparing text output for user interfaces, reports, or exporting formatted content.", + "limitations": "This tool does not perform semantic text analysis, grammar checking, or handle complex text features like hyphenation or embedded markup. It works best on plain text paragraphs.", + "examples": [ + "Format a database field's paragraph to 60 characters width with justified alignment.", + "Indent the first line of a stored paragraph by 4 spaces and center align the text.", + "Apply double line spacing to a database-stored paragraph for better readability in reports." + ] + }, + "tags": [ + "formatting", + "text-processing", + "database", + "paragraph", + "styling" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph to demonstrate how the formatting tool will wrap and indent the text properly.\",\"lineWidth\":50,\"indentation\":4,\"alignment\":\"justify\",\"lineSpacing\":1}", + "description": "Format paragraph with 50 char width, 4-space indent, justified text, and single line spacing." + }, + { + "inputJson": "{\"text\":\"Short paragraph.\",\"lineWidth\":30,\"indentation\":2,\"alignment\":\"center\",\"lineSpacing\":0}", + "description": "Center aligned short paragraph with 2-space indentation and no extra line spacing." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "database-management.draftWord", + "description": "This tool generates a concise, contextually appropriate word related to a specified database concept or query. It accepts parameters describing the subject area, intended use, and style, and returns a single word that can be used as a column name, table identifier, or keyword in database management scenarios.", + "category": "database-management", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "A brief description or theme related to the database subject for which the word is needed (e.g., 'customer data', 'sales metrics').", + "required": true, + "defaultValue": "" + }, + { + "name": "usage", + "type": "string", + "description": "The intended usage of the word, such as 'column name', 'table name', 'index label', or 'query keyword'.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Preferred style of the word, e.g., 'technical', 'descriptive', 'abbreviated', 'formal'.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language for the word output; defaults to English.", + "required": false, + "defaultValue": "english" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word in characters (to fit typical database naming constraints).", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word relevant to the database context and usage, as a string under the 'word' property." + }, + "aiAgent": { + "useCase": "Use this tool whenever a specific, concise database-related word is needed to label or identify database elements clearly and consistently, such as when naming new columns, tables, or indexes. It helps maintain semantic clarity and appropriate naming conventions in database design and querying.", + "limitations": "This tool generates single words rather than phrases or complex identifiers. It does not enforce database-specific naming rules beyond length, nor does it generate entire schema definitions or SQL statements.", + "examples": [ + "Draft a suitable column name word to represent 'customer purchase frequency'", + "Generate a concise table name word related to 'archived sales data'", + "Find an abbreviated keyword for indexing 'user login timestamp' in logs" + ] + }, + "tags": [ + "database", + "naming", + "word-generation", + "schema-design", + "labeling" + ], + "examples": [ + { + "inputJson": "{\"context\":\"customer purchase frequency\",\"usage\":\"column name\",\"style\":\"descriptive\",\"language\":\"english\",\"maxLength\":20}", + "description": "Generate a descriptive column name word related to how often a customer makes purchases." + }, + { + "inputJson": "{\"context\":\"archived sales data\",\"usage\":\"table name\",\"style\":\"abbreviated\",\"language\":\"english\",\"maxLength\":15}", + "description": "Create an abbreviated table name word for storing archived sales records." + }, + { + "inputJson": "{\"context\":\"user login timestamp\",\"usage\":\"index label\",\"style\":\"technical\",\"language\":\"english\",\"maxLength\":10}", + "description": "Generate a technical term for an index label that refers to the timestamp of user logins." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "devops.sendNotification", + "description": "Sends a notification message to specified recipients via chosen communication channels. Accepts parameters including message content, recipient identifiers, channel type (e.g., email, SMS, Slack), notification priority, and optional metadata. Processes input to dispatch messages and returns a status report confirming success or failure for each recipient and channel.", + "category": "devops", + "parameters": [ + { + "name": "message", + "type": "string", + "description": "The content of the notification message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as email addresses, phone numbers, or usernames depending on channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Communication channel to use for sending the notification, e.g., 'email', 'sms', or 'slack'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "priority", + "type": "string", + "description": "Notification priority level, e.g., 'low', 'normal', or 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional object containing additional key-value pairs to include in the notification payload or for downstream processing.", + "required": false, + "defaultValue": "" + }, + { + "name": "retryCount", + "type": "number", + "description": "Number of retry attempts on failure before reporting a failure status.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the delivery status for each recipient and channel, including success flags, error messages if any, and delivery timestamps." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically send notifications to devops team members or systems during deployments, alerts, or status updates. Ideal for integrating notifications into CI/CD pipelines, monitoring alerts, and incident response workflows.", + "limitations": "Cannot format complex message templates internally; expects fully composed message. Does not handle recipient validation or advanced scheduling. Channel integration depends on prior configuration and credentials outside this tool's scope.", + "examples": [ + "Send a high priority deployment alert via Slack to the dev team.", + "Send batch SMS notifications for system outage to on-call engineers.", + "Email a summary report to project managers with optional metadata included." + ] + }, + "tags": [ + "notification", + "communication", + "devops", + "alerts", + "automation", + "CI/CD" + ], + "examples": [ + { + "inputJson": "{\"message\":\"Deployment completed successfully.\",\"recipients\":[\"devteam@example.com\"],\"channel\":\"email\",\"priority\":\"high\",\"retryCount\":2}", + "description": "Send a high priority email notification about deployment completion to the dev team." + }, + { + "inputJson": "{\"message\":\"Server CPU usage exceeded threshold.\",\"recipients\":[\"+12345556789\"],\"channel\":\"sms\",\"priority\":\"high\"}", + "description": "Send an urgent SMS alert to an on-call engineer about server CPU usage." + }, + { + "inputJson": "{\"message\":\"Build #1024 failed. Check logs.\",\"recipients\":[\"@devops\"],\"channel\":\"slack\",\"metadata\":{\"buildId\":1024}}", + "description": "Send a Slack notification to the devops channel about build failure, including build ID metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "devops.buildEndpoint", + "description": "Generates and deploys a REST API endpoint based on provided specifications. Accepts endpoint configuration including URL path, HTTP methods, request parameters, authentication requirements, and backend logic. Builds the endpoint, integrates it with the backend service, and returns deployment status along with endpoint URL and test results.", + "category": "devops", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path for the endpoint (e.g., /user/login).", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethods", + "type": "array", + "description": "HTTP methods supported (e.g., [\"GET\", \"POST\"]).", + "required": true, + "defaultValue": "" + }, + { + "name": "requestSchema", + "type": "object", + "description": "JSON schema defining expected request body or query parameters.", + "required": false, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Specifies if the endpoint requires authentication.", + "required": false, + "defaultValue": "false" + }, + { + "name": "backendLogic", + "type": "string", + "description": "Code snippet or reference to backend function implementing endpoint logic.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Target environment for deployment (e.g., staging, production).", + "required": false, + "defaultValue": "staging" + } + ], + "returns": { + "type": "object", + "description": "An object containing deployment status, endpoint URL, and automated test results." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate, build, and deploy API endpoints based on given specifications including path, methods, and backend logic. Useful for automating backend service expansions, rapid prototyping, or continuous integration pipelines.", + "limitations": "This tool does not generate complete backend services from scratch. It requires provided backend logic or reference functions. It does not handle database migrations or infrastructure provisioning beyond endpoint deployment.", + "examples": [ + "Generate a POST /login endpoint with authentication and request schema for username and password.", + "Build a GET /products endpoint without authentication returning product listings.", + "Deploy a PUT /user/{id} endpoint with update logic for user profiles to production environment." + ] + }, + "tags": [ + "devops", + "build", + "endpoint", + "API", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/login\",\"httpMethods\":[\"POST\"],\"requestSchema\":{\"type\":\"object\",\"properties\":{\"username\":{\"type\":\"string\"},\"password\":{\"type\":\"string\"}},\"required\":[\"username\",\"password\"]},\"authenticationRequired\":true,\"backendLogic\":\"authService.loginUser(request.body)\",\"deploymentEnvironment\":\"staging\"}", + "description": "Create and deploy a POST /login endpoint with authentication and request body schema for username and password in the staging environment." + }, + { + "inputJson": "{\"endpointPath\":\"/products\",\"httpMethods\":[\"GET\"],\"authenticationRequired\":false,\"backendLogic\":\"productService.getAllProducts()\"}", + "description": "Build a GET /products endpoint without authentication to list all products." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "devops.createArticle", + "description": "Creates a structured article for DevOps topics based on provided title, keywords, target audience, and content outline. Processes inputs to generate a formatted article in markdown or HTML, suitable for documentation, blogs, or knowledge bases.", + "category": "devops", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the article to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of relevant keywords to include and emphasize in the article.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor the article's tone and complexity.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentOutline", + "type": "array", + "description": "An ordered list of section titles and optional bullet points to structure the article content.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the article, e.g., markdown or html.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeCodeSamples", + "type": "boolean", + "description": "Whether to include sample code snippets if applicable for concepts described.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full article text in the specified format along with metadata (e.g., word count)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate well-structured, domain-relevant articles or documentation about DevOps topics based on outlines and specific content points, optimized for various audiences and output formats. It automates content generation for blogs, documentation sites, and knowledge bases.", + "limitations": "Cannot generate entirely original research content or guarantee up-to-date accuracy beyond training data; content may need expert review and editing. It does not support multimedia embedding beyond text and code samples.", + "examples": [ + "Create a markdown article explaining CI/CD pipelines for junior developers using a given outline.", + "Generate HTML formatted documentation on infrastructure as code targeting system administrators.", + "Prepare a blog post with emphasized Kubernetes keywords and sample YAML configurations." + ] + }, + "tags": [ + "devops", + "documentation", + "article generation", + "content automation", + "markdown", + "html", + "knowledge base" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Continuous Integration and Deployment\",\"keywords\":[\"CI/CD\",\"automation\",\"DevOps\"],\"targetAudience\":\"junior developers\",\"contentOutline\":[{\"section\":\"Introduction\"},{\"section\":\"What is CI/CD?\"},{\"section\":\"Benefits\"},{\"section\":\"Tools and Best Practices\"}],\"format\":\"markdown\",\"includeCodeSamples\":true}", + "description": "Generate a markdown article about CI/CD for junior developers including code samples." + }, + { + "inputJson": "{\"title\":\"Infrastructure as Code Overview\",\"keywords\":[\"IaC\",\"Terraform\",\"automation\"],\"targetAudience\":\"system administrators\",\"contentOutline\":[{\"section\":\"Overview\"},{\"section\":\"Key Technologies\"},{\"section\":\"Use Cases\"}],\"format\":\"html\",\"includeCodeSamples\":false}", + "description": "Create an HTML article outlining Infrastructure as Code concepts targeted at sysadmins." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "frontend-development.analyzeThread", + "description": "Analyzes a communication thread from a frontend user interface by processing the sequence of messages and metadata. Accepts an array of message objects containing content, sender, timestamp, and metadata. Performs sentiment, keyword, and engagement analysis to output a comprehensive report highlighting overall sentiment trends, key topics discussed, message frequency, and active participants.", + "category": "frontend-development", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of message objects representing the communication thread to analyze, each with content, sender, timestamp, and optional metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the messages to identify emotional tone.", + "required": false, + "defaultValue": "true" + }, + { + "name": "keywordExtraction", + "type": "boolean", + "description": "Whether to extract and report key topics and keywords from the thread content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeFrameHours", + "type": "number", + "description": "Optional timeframe in hours to limit the analysis to recent messages. Use 0 for no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including sentiment summary, keyword list, message counts per user, temporal activity distribution, and overall engagement metrics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to extract insights from a user communication thread in a frontend chat or comment interface. It helps summarize conversation tone, identify main topics, and understand participant engagement to improve UX, moderation, or analytics.", + "limitations": "This tool cannot interpret media content like images or videos, nor can it fully understand sarcasm or highly context-dependent sarcasm. It requires well-structured message data and may not perform well with extremely sparse or noisy threads.", + "examples": [ + "Analyze sentiment and topics in a customer support chat thread from the last day.", + "Summarize key discussion points and active participants in a forum comment thread.", + "Get engagement metrics and emotional tone for a product feedback conversation thread." + ] + }, + "tags": [ + "frontend", + "analysis", + "communication", + "thread", + "sentiment", + "keywords", + "engagement", + "user-interface" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"content\":\"I love this new feature!\",\"sender\":\"user1\",\"timestamp\":\"2024-06-01T10:00:00Z\"},{\"content\":\"Thanks for the feedback!\",\"sender\":\"support\",\"timestamp\":\"2024-06-01T10:05:00Z\"},{\"content\":\"Could be improved in UI though.\",\"sender\":\"user2\",\"timestamp\":\"2024-06-01T10:10:00Z\"}]}", + "description": "Analyze a short customer support chat thread for sentiment and keywords." + }, + { + "inputJson": "{\"messages\":[{\"content\":\"What do you think about the update?\",\"sender\":\"user1\",\"timestamp\":\"2024-06-02T09:00:00Z\"},{\"content\":\"Not bad, but needs more color options.\",\"sender\":\"user2\",\"timestamp\":\"2024-06-02T09:05:00Z\"}]}", + "description": "Evaluate the sentiment and main topics in a product feedback discussion." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "frontend-development.analyzeTrend", + "description": "Analyzes frontend usage and design trends by processing usage statistics, user feedback, and design pattern prevalence from provided datasets. It identifies emerging UI/UX patterns, technology adoption rates, and user engagement metrics to produce actionable insights and visual summaries of current frontend development trends.", + "category": "frontend-development", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "Array of URLs or file paths pointing to datasets containing frontend usage stats, user feedback, or design pattern data to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Object specifying start and end dates to filter the data, e.g., {\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "trendCategories", + "type": "array", + "description": "List of specific frontend trend categories or technologies to focus the analysis on, e.g., ['React', 'dark mode', 'mobile-first'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the analysis report, options: 'summary', 'detailed', or 'visual' (graphs and charts).", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeBenchmarks", + "type": "boolean", + "description": "Whether to include benchmark comparisons against historical trend data for context.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed trend insights including main patterns found, statistical summaries, and optionally charts or visualized data depending on outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool to extract meaningful, data-driven insights from frontend usage and design trend datasets, aiding product managers, frontend developers, or UI/UX designers in understanding technology adoption, user preferences, and emerging patterns to inform strategy or design decisions.", + "limitations": "Cannot collect raw data itself; depends on provided datasets. Analysis quality is limited by data completeness and accuracy. Does not generate code or design prototypes, only analytical reports.", + "examples": [ + "Analyze frontend usage data from multiple sources to identify rising UI frameworks over the past year.", + "Generate a visual report highlighting trends in dark mode adoption and accessibility features since 2022.", + "Summarize user feedback patterns related to mobile-first design practices for the current quarter." + ] + }, + "tags": [ + "frontend", + "trend analysis", + "UI/UX", + "data analytics", + "design patterns", + "technology adoption" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[\"/data/usageStats.json\",\"/data/userFeedback.json\"],\"dateRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-06-30\"},\"trendCategories\":[\"React\",\"dark mode\"],\"outputFormat\":\"detailed\",\"includeBenchmarks\":true}", + "description": "Detailed analysis of React and dark mode trends in frontend usage from first half of 2023 with benchmark comparison." + }, + { + "inputJson": "{\"dataSources\":[\"https://example.com/frontendFeedback.csv\"],\"outputFormat\":\"visual\"}", + "description": "Create a visual report summarizing user feedback trends from online CSV data source." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "frontend-development.generateReference", + "description": "Generates a customizable front-end Reference component based on provided data structure and style options. Accepts input defining reference entries with titles, descriptions, links, and optional icons, then outputs a ready-to-use React component code snippet with specified styling and layout options.", + "category": "frontend-development", + "parameters": [ + { + "name": "referenceData", + "type": "array", + "description": "Array of reference entry objects, each containing title, description, url, and optional icon info to include in the reference list.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentName", + "type": "string", + "description": "Custom name for the generated React component to use in the output code.", + "required": false, + "defaultValue": "\"ReferenceComponent\"" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme or style preset for the component (e.g., 'light', 'dark', 'material').", + "required": false, + "defaultValue": "\"light\"" + }, + { + "name": "includeIcons", + "type": "boolean", + "description": "Flag to include icon display for each reference entry if icon info is available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "layout", + "type": "string", + "description": "Layout format of the reference list: 'list' or 'grid'.", + "required": false, + "defaultValue": "\"list\"" + }, + { + "name": "customCSS", + "type": "string", + "description": "Custom CSS styles to append or override default styles for the component.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated React component code as a string under 'code' and an optional CSS string under 'css' if custom styles are included." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a ready-to-integrate front-end reference or bibliography component based on supplied data entries. Ideal for dynamically generating documentation references, resource lists, or citation sections with customizable looks and consistent formatting in React applications.", + "limitations": "The tool does not generate backend data fetching code or manage state beyond static display. It assumes valid input data and minimal accessibility handling; further enhancements may be needed for full production use.", + "examples": [ + "Generate a Reference component named 'DocsReference' with a dark theme in grid layout including icons.", + "Create a simple light-themed Reference component for a list of API docs URLs without icons.", + "Produce a Reference component with custom CSS styling overriding default fonts and colors." + ] + }, + "tags": [ + "frontend", + "component", + "react", + "reference", + "documentation", + "ui", + "codegen" + ], + "examples": [ + { + "inputJson": "{\"referenceData\":[{\"title\":\"React Docs\",\"description\":\"Official React documentation.\",\"url\":\"https://reactjs.org\",\"icon\":\"react-icon\"},{\"title\":\"MDN Web Docs\",\"description\":\"Resources for web developers.\",\"url\":\"https://developer.mozilla.org\"}],\"componentName\":\"DocsReference\",\"theme\":\"dark\",\"includeIcons\":true,\"layout\":\"grid\",\"customCSS\":\"\"}", + "description": "Generate a dark theme Reference React component named 'DocsReference' displaying two entries in a grid layout with icons." + }, + { + "inputJson": "{\"referenceData\":[{\"title\":\"API Guide\",\"description\":\"Comprehensive guide to API usage.\",\"url\":\"https://api.example.com/doc\"}],\"componentName\":\"APIDocsRef\",\"theme\":\"light\",\"includeIcons\":false,\"layout\":\"list\",\"customCSS\":\"\"}", + "description": "Generate a light theme Reference component named 'APIDocsRef' listing a single API guide link without icons in a list layout." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "backend-development.analyzeVulnerability", + "description": "Analyzes a specified software vulnerability using provided vulnerability details and optional system context to assess its impact, exploitability, and suggest mitigation strategies. Inputs include vulnerability identifier or CVE data and environment parameters; output is a detailed analysis report summarizing risk factors and remediation advice.", + "category": "backend-development", + "parameters": [ + { + "name": "vulnerabilityId", + "type": "string", + "description": "Unique identifier of the vulnerability (e.g., CVE number or internal ID).", + "required": false, + "defaultValue": "" + }, + { + "name": "vulnerabilityDescription", + "type": "string", + "description": "Detailed text description or report of the vulnerability.", + "required": false, + "defaultValue": "" + }, + { + "name": "systemContext", + "type": "object", + "description": "Optional JSON object describing the target system environment, including operating system, software versions, and network configuration.", + "required": false, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level to focus analysis on (e.g., 'low', 'medium', 'high', 'critical').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Flag to include recommended mitigation strategies in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "AnalysisReport containing risk score, impact summary, exploitability assessment, and mitigation recommendations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate the risk and impact of known software vulnerabilities within a specific system context to guide security decisions and prioritize fixes. Ideal for developers, security engineers, and incident responders assessing vulnerability data for backend applications or infrastructure.", + "limitations": "Cannot detect unknown or zero-day vulnerabilities; depends on the quality and accuracy of input vulnerability data and system context; does not perform live scanning or penetration testing.", + "examples": [ + "Analyze risk of CVE-2021-44228 on a Linux server running Java 8", + "Assess the vulnerability description of a SQL injection flaw in a web app with specified software versions", + "Generate mitigation recommendations for a critical remote code execution vulnerability given system context" + ] + }, + "tags": [ + "security", + "vulnerability", + "analysis", + "backend", + "risk-assessment", + "mitigation" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityId\":\"CVE-2021-44228\",\"systemContext\":{\"os\":\"Linux\",\"javaVersion\":\"8u291\"},\"severityThreshold\":\"high\",\"includeMitigation\":true}", + "description": "Analyze the Log4j vulnerability CVE-2021-44228 on a Linux system running Java 8, focusing on high severity impact and mitigation steps." + }, + { + "inputJson": "{\"vulnerabilityDescription\":\"SQL injection vulnerability in user authentication module allowing unauthorized access.\",\"systemContext\":{\"appVersion\":\"2.3.4\",\"database\":\"MySQL 5.7\"},\"severityThreshold\":\"medium\",\"includeMitigation\":true}", + "description": "Assess a SQL injection vulnerability in a backend web app with specific software context to understand risk and fixes." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "backend-development.composeLink", + "description": "Constructs a fully qualified URL link by combining a base URL with optional path segments and query parameters, ensuring proper URL encoding and formatting. Accepts a base URL string, an array of path segments, and an object of query parameters, returning a valid, composable URL string.", + "category": "backend-development", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL to start composing the link from, e.g., https://example.com", + "required": true, + "defaultValue": "" + }, + { + "name": "pathSegments", + "type": "array", + "description": "An array of string path segments to append to the base URL in order", + "required": false, + "defaultValue": "[]" + }, + { + "name": "queryParams", + "type": "object", + "description": "An object representing query parameters as key-value pairs to append to the URL's query string", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTrailingSlash", + "type": "boolean", + "description": "Whether to include a trailing slash at the end of the URL path", + "required": false, + "defaultValue": "false" + }, + { + "name": "encodeComponents", + "type": "boolean", + "description": "Whether to URL-encode path segments and query parameter keys and values", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed URL string under the 'url' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate valid, composable URLs in backend applications, such as constructing API endpoints, document links, or external resource URLs from base URLs, dynamic path segments, and query parameters while handling correct URL encoding and formatting.", + "limitations": "Does not validate if the baseUrl is reachable or the final URL points to a valid resource. Does not support URL fragments (hashes) or authentication info in the URL. It only composes links syntactically.", + "examples": [ + "Compose a URL to access a user profile: baseUrl=https://api.example.com, pathSegments=[\"users\", \"123\"], queryParams={detail: \"full\"}", + "Generate a URL for search with multiple parameters: baseUrl=https://example.com/search, queryParams={q: \"AI tools\", page: \"2\"}", + "Create a URL with path segments that contain spaces and special characters needing encoding." + ] + }, + "tags": [ + "backend", + "url", + "link", + "compose", + "api", + "utility" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://api.example.com\",\"pathSegments\":[\"users\",\"123\",\"profile\"],\"queryParams\":{\"view\":\"full\",\"lang\":\"en\"},\"includeTrailingSlash\":false,\"encodeComponents\":true}", + "description": "Compose user profile URL with path segments and query parameters" + }, + { + "inputJson": "{\"baseUrl\":\"https://example.com/search\",\"queryParams\":{\"q\":\"AI tools\",\"page\":\"2\"},\"encodeComponents\":true}", + "description": "Create a search URL with query parameters only" + }, + { + "inputJson": "{\"baseUrl\":\"https://files.example.com\",\"pathSegments\":[\"folder name\",\"file name.txt\"],\"includeTrailingSlash\":false,\"encodeComponents\":true}", + "description": "Compose URL with path segments containing spaces needing encoding" + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "backend-development.createCertificate", + "description": "Generates a new X.509 SSL/TLS certificate and private key pair. Accepts input parameters for certificate subject details, validity duration, key type and size, and optional extensions. Produces PEM-encoded certificate and private key suitable for server security configurations.", + "category": "backend-development", + "parameters": [ + { + "name": "commonName", + "type": "string", + "description": "The common name (CN) for the certificate subject, typically a domain name or server identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "organization", + "type": "string", + "description": "Organization name (O) included in the certificate subject.", + "required": false, + "defaultValue": "" + }, + { + "name": "organizationalUnit", + "type": "string", + "description": "Organizational Unit (OU) included in the certificate subject.", + "required": false, + "defaultValue": "" + }, + { + "name": "country", + "type": "string", + "description": "Country code (C) for the certificate subject (2-letter ISO format).", + "required": false, + "defaultValue": "" + }, + { + "name": "state", + "type": "string", + "description": "State or province (ST) for the certificate subject.", + "required": false, + "defaultValue": "" + }, + { + "name": "locality", + "type": "string", + "description": "Locality or city (L) for the certificate subject.", + "required": false, + "defaultValue": "" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the certificate remains valid from the issue date.", + "required": true, + "defaultValue": "365" + }, + { + "name": "keyType", + "type": "string", + "description": "Type of the private key to generate, e.g., 'rsa' or 'ecdsa'.", + "required": true, + "defaultValue": "rsa" + }, + { + "name": "keySize", + "type": "number", + "description": "Key size in bits for the private key (e.g., 2048, 4096 for RSA).", + "required": true, + "defaultValue": "2048" + }, + { + "name": "extensions", + "type": "array", + "description": "Optional array of certificate extension objects, such as subjectAltName entries.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing PEM-encoded strings for the generated certificate and private key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate self-signed or CA-signed certificates for securing backend services, enabling SSL/TLS encryption, or creating test certificates. It helps automate certificate generation with customizable subject details, key properties, and validity periods.", + "limitations": "This tool generates certificates but does not provide CA signing beyond self-signed use cases. It does not manage certificate revocation or renewal processes.", + "examples": [ + "Create a self-signed certificate for 'example.com' valid for one year using a 2048-bit RSA key.", + "Generate a certificate with additional Subject Alternative Names (SANs) for multiple domains.", + "Produce an ECDSA certificate with specified subject details valid for 90 days." + ] + }, + "tags": [ + "security", + "certificate", + "ssl", + "tls", + "backend-development", + "cryptography", + "automation" + ], + "examples": [ + { + "inputJson": "{\"commonName\":\"example.com\",\"organization\":\"Example Corp\",\"organizationalUnit\":\"IT\",\"country\":\"US\",\"state\":\"California\",\"locality\":\"San Francisco\",\"validityDays\":365,\"keyType\":\"rsa\",\"keySize\":2048}", + "description": "Generate a standard one-year RSA SSL certificate for example.com with organization details." + }, + { + "inputJson": "{\"commonName\":\"api.example.com\",\"validityDays\":90,\"keyType\":\"ecdsa\",\"keySize\":256,\"extensions\":[{\"name\":\"subjectAltName\",\"values\":[\"DNS:api.example.com\",\"DNS:api.internal.example.com\"]}]}", + "description": "Create a 90-day ECDSA certificate with Subject Alternative Names for API subdomains." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "backend-development.createYAML", + "description": "Generates a YAML formatted string from a provided JavaScript object or JSON input. Accepts structured input data as an object or a JSON string and converts it into human-readable YAML syntax for configuration files or data exchange.", + "category": "backend-development", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured data object to be converted into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces used for indentation in the YAML output to improve readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeDocumentStart", + "type": "boolean", + "description": "Whether to include the YAML document start marker '---' at the beginning of the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width for folded style strings; lines will be wrapped accordingly. Set 0 for no wrapping.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "string", + "description": "A string containing the YAML representation of the input data, formatted according to parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce YAML configuration files or data serialization from JavaScript objects or JSON, especially for backend configuration, Kubernetes manifests, or any scenario requiring YAML output. It simplifies converting complex data structures to YAML strings with control over formatting.", + "limitations": "Does not perform validation of YAML schema or data semantics. Complex data types like functions or class instances are not serializable. Circular references will cause errors. Does not support custom YAML tags or anchors.", + "examples": [ + "Convert a JSON config object to YAML with 4-space indentation.", + "Generate simple YAML for a deployment manifest without document start marker.", + "Create YAML output with no line wrapping for easy parsing." + ] + }, + "tags": [ + "backend", + "yaml", + "serialization", + "configuration", + "api", + "data-format" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"server\":{\"host\":\"localhost\",\"port\":8080},\"database\":{\"user\":\"admin\",\"password\":\"secret\"}},\"indentation\":4,\"includeDocumentStart\":true,\"lineWidth\":80}", + "description": "Convert a server and database config object to YAML with 4-space indentation and include document start marker." + }, + { + "inputJson": "{\"inputData\":{\"appName\":\"MyApp\",\"version\":\"1.0.0\",\"features\":[\"logging\",\"security\",\"monitoring\"]},\"indentation\":2,\"includeDocumentStart\":false,\"lineWidth\":0}", + "description": "Generate a YAML string for an application descriptor without document start and no line wrapping." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeComment", + "description": "Analyzes textual comments to extract sentiment, detect key topics, and identify actionable items. Accepts raw comment text along with optional parameters controlling language and detail level. Produces a structured analysis report summarizing sentiment score, main themes, and suggested follow-up actions.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "Raw text of the comment to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the comment text (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze sentiment of the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopics", + "type": "boolean", + "description": "Whether to extract key topics discussed in the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Whether to identify actionable items mentioned in the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Level of detail in analysis report: 'summary' or 'detailed'.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis containing sentiment score, array of identified topics, and list of action items, optionally with detailed explanation depending on detailLevel." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to process user or team comments from communication platforms, extracting meaningful insights such as sentiment to gauge mood, topics for quick understanding, and actionable tasks for workflow automation.", + "limitations": "The tool cannot perfectly interpret sarcasm, highly idiomatic language, or comments heavily dependent on context outside provided text. Its topic extraction may miss niche domain-specific terms without prior training.", + "examples": [ + "Analyze a customer feedback comment to determine satisfaction and next steps.", + "Process developer comments in a project management tool to identify concerns and pending tasks.", + "Summarize user's textual input in chatbot logs to extract sentiment and required follow-ups." + ] + }, + "tags": [ + "automation", + "comment", + "sentiment-analysis", + "topic-extraction", + "action-items", + "NLP", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"The latest update broke several features and we need a fix urgently.\",\"language\":\"en\",\"includeSentiment\":true,\"includeTopics\":true,\"includeActionItems\":true,\"detailLevel\":\"summary\"}", + "description": "Analyze a critical developer comment highlighting bugs and urgent fix needed." + }, + { + "inputJson": "{\"commentText\":\"I love the new interface, but it could be faster in loading times.\",\"includeSentiment\":true,\"includeTopics\":true,\"includeActionItems\":false}", + "description": "Analyze customer praise with constructive feedback, without action items extraction." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "statistics-tools.generateReport", + "description": "Generates a comprehensive statistical analysis report based on provided numerical data and user-defined options. Accepts datasets and parameters specifying statistical tests, summary metrics, and visualization preferences. Produces a structured report including descriptive statistics, inferential test results, and graphical representations in a chosen format.", + "category": "statistics-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of numerical datasets or objects containing values to analyze, each dataset representing a variable or group.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output format for the report, e.g., 'pdf', 'html', or 'markdown'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeSummaryStatistics", + "type": "boolean", + "description": "Whether to include descriptive statistics such as mean, median, variance for each dataset.", + "required": false, + "defaultValue": "true" + }, + { + "name": "inferentialTests", + "type": "array", + "description": "List of inferential statistical tests to perform, e.g., ['t-test', 'anova', 'chi-square'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "significanceLevel", + "type": "number", + "description": "Alpha level to use for statistical tests, e.g., 0.05 for 5% significance threshold.", + "required": false, + "defaultValue": "0.05" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to generate visualizations like histograms, boxplots, or scatterplots in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "groupingVariable", + "type": "string", + "description": "Name of the variable to group data by for comparative statistics and visualizations, if applicable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content, including the formatted report as a base64 string or URL, a summary of performed analyses, and metadata about tests and visualizations included." + }, + "aiAgent": { + "useCase": "Use this tool when needing an automated, detailed statistical report generated from raw datasets that summarizes data characteristics, performs selected inferential tests, and optionally includes visualizations. Useful for researchers, analysts, or automated workflows needing formatted, shareable statistical summaries.", + "limitations": "Does not perform complex modeling (e.g., regression diagnostics, time series forecasting) or data cleaning. Input data must be preprocessed appropriately. Visualizations are basic and may not cover all specialized plots.", + "examples": [ + "Generate a PDF report with summary statistics and t-tests comparing two treatment groups.", + "Create an HTML report including descriptive statistics and ANOVA for multiple groups.", + "Produce a markdown report with visualizations and chi-square tests for categorical data." + ] + }, + "tags": [ + "statistics", + "reporting", + "analysis", + "inferential-tests", + "data-visualization", + "summary-statistics" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"group\":\"control\",\"values\":[5,7,6,8,5]},{\"group\":\"treatment\",\"values\":[7,9,8,10,9]}],\"reportFormat\":\"pdf\",\"includeSummaryStatistics\":true,\"inferentialTests\":[\"t-test\"],\"significanceLevel\":0.05,\"includeVisualizations\":true,\"groupingVariable\":\"group\"}", + "description": "Generate a PDF report comparing two groups with summary stats, t-test results, and visualizations." + }, + { + "inputJson": "{\"data\":[[23,45,67,89,34,23,45,67,89,34]],\"reportFormat\":\"html\",\"includeSummaryStatistics\":true,\"includeVisualizations\":true}", + "description": "Create an HTML report with descriptive statistics and visualizations for a single dataset." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "statistics-tools.buildCode", + "description": "Generates executable code snippets for statistical analysis based on user-defined data schemas and modeling specifications. Accepts input parameters defining data structure, statistical methods (e.g., regression, hypothesis tests), and output preferences, then produces ready-to-run code in Python or R for analysis workflows.", + "category": "statistics-tools", + "parameters": [ + { + "name": "dataSchema", + "type": "object", + "description": "Defines the data structure including variable names, types, and roles (e.g., predictor, response).", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Specifies the statistical analysis to perform, such as 'linearRegression', 'anova', or 'logisticRegression'.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Specifies the target programming language for the generated code, e.g., 'Python' or 'R'.", + "required": true, + "defaultValue": "Python" + }, + { + "name": "includeDataLoading", + "type": "boolean", + "description": "Determines whether to include sample code for loading data based on the data schema.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputType", + "type": "string", + "description": "Defines the format of output code: 'script' for standalone file or 'function' for reusable function.", + "required": false, + "defaultValue": "script" + }, + { + "name": "additionalPackages", + "type": "array", + "description": "List of additional statistical or utility packages to include in the generated code (e.g., ['scipy','matplotlib']).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string, the programming language used, and a summary of the analysis steps included." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate tailored code snippets for performing statistical analyses based on a given data schema and analysis type. It simplifies creating reproducible scripts or functions for data scientists and analysts without manual coding, supporting rapid development and prototyping.", + "limitations": "The tool generates code templates based on predefined analysis types and common statistical methods; it cannot handle highly custom or domain-specific models without additional user input. It does not run or validate the generated code and assumes the user has the necessary environment setup.", + "examples": [ + "Generate Python code for linear regression on a dataset with 'age' as predictor and 'income' as response.", + "Produce R code for an ANOVA analysis treating 'group' as a factor variable.", + "Create a reusable Python function for logistic regression including data loading steps." + ] + }, + "tags": [ + "code-generation", + "statistics", + "modeling", + "python", + "r", + "automation", + "data-science" + ], + "examples": [ + { + "inputJson": "{\"dataSchema\":{\"variables\":[{\"name\":\"age\",\"type\":\"numeric\",\"role\":\"predictor\"},{\"name\":\"income\",\"type\":\"numeric\",\"role\":\"response\"}]},\"analysisType\":\"linearRegression\",\"programmingLanguage\":\"Python\",\"includeDataLoading\":true,\"outputType\":\"script\",\"additionalPackages\":[\"matplotlib\"]}", + "description": "Generate Python script for linear regression with data loading and matplotlib included." + }, + { + "inputJson": "{\"dataSchema\":{\"variables\":[{\"name\":\"group\",\"type\":\"factor\",\"role\":\"predictor\"},{\"name\":\"score\",\"type\":\"numeric\",\"role\":\"response\"}]},\"analysisType\":\"anova\",\"programmingLanguage\":\"R\",\"includeDataLoading\":false,\"outputType\":\"function\",\"additionalPackages\":[]}", + "description": "Generate R function code for ANOVA analysis without data loading code." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "text-analysis.buildCommit", + "description": "This tool generates a structured commit message based on given code changes and context. It accepts inputs such as code diff or summary, related issue IDs, types of changes (e.g., fix, feature), and optional scopes. The tool processes this information to build a clear, standardized commit message following conventional commit style, enhancing consistency and clarity in version control history.", + "category": "text-analysis", + "parameters": [ + { + "name": "changeSummary", + "type": "string", + "description": "A brief natural language summary of the code change to be included in the commit message.", + "required": true, + "defaultValue": "" + }, + { + "name": "changeType", + "type": "string", + "description": "Type of the change (e.g., feat, fix, docs, style, refactor). Influences commit prefix according to conventional commits.", + "required": true, + "defaultValue": "" + }, + { + "name": "scope", + "type": "string", + "description": "Optional scope of the change, such as a feature or module name to provide context in the commit message.", + "required": false, + "defaultValue": "" + }, + { + "name": "issueIds", + "type": "array", + "description": "List of related issue or ticket IDs to reference in the commit message (e.g., ['#123', 'JIRA-456']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "breakingChange", + "type": "boolean", + "description": "Indicates if this commit introduces a breaking change. If true, appropriate notation is added in the commit message.", + "required": false, + "defaultValue": "false" + }, + { + "name": "detailedDescription", + "type": "string", + "description": "Optional extended description elaborating on the commit beyond the summary, for commit body.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full standardized commit message string under 'commitMessage' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a clear, conventional commit message from raw code change data or summaries, ensuring commit history consistency and useful metadata for developers and automation systems.", + "limitations": "Cannot analyze or generate code diffs itself; expects user-provided summaries and metadata. Does not interface with version control systems directly.", + "examples": [ + "Generate a commit message for a bug fix that resolves issue #42 in the login module.", + "Create a feature commit message with scope 'UI' and references to multiple Jira tickets.", + "Build a commit message including a breaking change note with detailed description." + ] + }, + "tags": [ + "text-analysis", + "commit", + "code-management", + "natural-language-processing", + "conventional-commit" + ], + "examples": [ + { + "inputJson": "{\"changeSummary\":\"Fix null pointer exception in user login flow\",\"changeType\":\"fix\",\"scope\":\"auth\",\"issueIds\":[\"#42\"],\"breakingChange\":false,\"detailedDescription\":\"Added null checks and improved error handling in login method.\"}", + "description": "Generate a fix commit message referencing an issue with scope and detailed description." + }, + { + "inputJson": "{\"changeSummary\":\"Add dark mode support\",\"changeType\":\"feat\",\"scope\":\"UI\",\"issueIds\":[\"JIRA-101\",\"JIRA-102\"],\"breakingChange\":false,\"detailedDescription\":\"Implemented toggle and styling for dark mode across app.\"}", + "description": "Create a feature commit message with multiple issue references and UI scope." + }, + { + "inputJson": "{\"changeSummary\":\"Update authentication protocol to OAuth2\",\"changeType\":\"refactor\",\"scope\":\"auth\",\"issueIds\":[],\"breakingChange\":true,\"detailedDescription\":\"Migrated all authentication flows to OAuth2, deprecated older methods.\"}", + "description": "Build a breaking change commit message with detailed explanation for refactor." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "text-analysis.createLead", + "description": "This tool analyzes unstructured text inputs such as emails, chat logs, or customer feedback to identify potential business leads. It extracts key contact information, company names, interests, and relevant context to create structured lead data for sales and marketing teams.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw unstructured text content to analyze for lead creation.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the input text to improve processing accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "minConfidenceScore", + "type": "number", + "description": "Minimum confidence score threshold (0 to 1) for extracted leads to be considered valid.", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Whether to include contextual snippets from the text along with the lead information.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of identified leads, each with extracted fields: name, email, phone, company, interest keywords, confidence score, and optional context snippets." + }, + "aiAgent": { + "useCase": "Use this tool when you have unstructured text data containing potential business contacts or sales opportunities that need to be converted into structured leads for CRM systems or sales workflows. Ideal for extracting leads from customer emails, inbound inquiries, or social media messages.", + "limitations": "This tool cannot verify the accuracy of the extracted contact information in real time or update existing lead records. It relies on the quality and clarity of the input text and may miss leads if key details are implicit or ambiguous.", + "examples": [ + "Identify potential sales leads from the latest customer support email thread.", + "Extract business lead information from a collection of meeting notes.", + "Create structured lead entries from scanned marketing event feedback forms." + ] + }, + "tags": [ + "text-analysis", + "lead-generation", + "natural-language-processing", + "sales", + "crm-integration" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Hello, I'm John Doe from ACME Corp. Interested in your software solutions. You can reach me at john.doe@acmecorp.com or call me at +1-555-123-4567.\",\"language\":\"en\",\"minConfidenceScore\":0.8,\"includeContext\":true}", + "description": "Extracts a lead from an email text containing contact details and interest in software solutions." + }, + { + "inputJson": "{\"inputText\":\"Please contact Maria Lopez at Tech Solutions. Phone: 555-987-6543. Looking for product demos and pricing info.\",\"language\":\"en\",\"minConfidenceScore\":0.7,\"includeContext\":false}", + "description": "Creates a lead for a potential product demo request from brief customer inquiry text." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "text-analysis.createAlert", + "description": "Creates a security alert by analyzing input text for potential threats, suspicious keywords, or anomaly patterns. Accepts raw text or structured log entries, processes with predefined or custom rules to detect security-related triggers, and outputs a structured alert object with severity, category, and flagged content details.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw text or log data to be analyzed for security threats or anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertRules", + "type": "array", + "description": "Array of alert rule objects defining keywords, patterns, or conditions to trigger an alert.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "alertSeverity", + "type": "string", + "description": "Default severity level assigned to triggered alerts (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "maxAlerts", + "type": "number", + "description": "Maximum number of alerts to generate from the input; excess detections are ignored.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Whether to include surrounding context passages from the input text in the alert output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured alert object containing alertId, detectedIssues array with descriptions, severity level, category tags, and optional context snippets from input text." + }, + "aiAgent": { + "useCase": "Use this tool when processing textual data such as logs, chat messages, or reports to automatically detect and flag possible security incidents, policy violations, or suspicious content requiring attention. It helps automate monitoring and early threat detection from unstructured or semi-structured text sources.", + "limitations": "This tool relies on predefined or configured rules and pattern matching; it cannot detect unknown threat types beyond those rules and does not perform in-depth forensic analysis or integrate with live threat intelligence feeds directly.", + "examples": [ + "Detect security alerts from server log messages using default rules.", + "Create alerts from chat transcripts looking for phishing-related keyword patterns.", + "Flag high severity alerts in cybersecurity incident reports by custom rule sets." + ] + }, + "tags": [ + "text-analysis", + "security", + "alert", + "NLP", + "threat-detection", + "log-analysis", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"User admin failed login 5 times at 10:02PM from IP 192.168.1.5\",\"alertSeverity\":\"high\"}", + "description": "Generate a high severity alert from a failed login attempt log message." + }, + { + "inputJson": "{\"inputText\":\"Detected suspicious email with phishing link and attachment.\",\"alertRules\":[{\"keyword\":\"phishing\"},{\"keyword\":\"attachment\"}],\"maxAlerts\":3}", + "description": "Create alerts based on phishing and attachment keywords from an email text." + }, + { + "inputJson": "{\"inputText\":\"Multiple access denied errors in system logs.\",\"includeContext\":false}", + "description": "Detect alerts from system logs denying access, omitting context in the output." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "text-analysis.createCSV", + "description": "Converts an array of text objects or arrays into a CSV-formatted string. Accepts data as a list of objects or arrays, applies optional delimiters and quoting, and outputs a clean CSV string ready for saving or further processing.", + "category": "text-analysis", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects or arrays representing rows of text data to convert into CSV format.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "array", + "description": "Optional array of strings specifying the column headers in order; if omitted and data items are objects, keys from first object are used.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate values in the CSV; commonly a comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteValues", + "type": "boolean", + "description": "Whether to wrap values in quotes, useful when values contain the delimiter or newlines.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineEnding", + "type": "string", + "description": "String to use as line separator, for example '\\n' or '\\r\\n'.", + "required": false, + "defaultValue": "\\n" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV content as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured text data in array or object form and need to create a correctly formatted CSV string for export, sharing, or further analysis. It helps transform natural language or tabular text data into CSV, handling quoting and delimiters.", + "limitations": "Does not parse or interpret text content beyond formatting into CSV; does not validate semantic correctness of input data.", + "examples": [ + "Create CSV from an array of sentence objects with headers", + "Convert a list of arrays representing tokenized text into CSV", + "Generate CSV from extracted text features with custom delimiter" + ] + }, + "tags": [ + "text-analysis", + "csv", + "export", + "formatting", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"sentence\":\"Hello world\",\"sentiment\":\"positive\"},{\"sentence\":\"Goodbye\",\"sentiment\":\"negative\"}],\"headers\":[\"sentence\",\"sentiment\"],\"delimiter\":\",\",\"quoteValues\":true,\"lineEnding\":\"\\n\"}", + "description": "Convert array of sentence objects with sentiment tag to CSV format with standard comma delimiter and quoted values." + }, + { + "inputJson": "{\"data\":[[\"word1\",\"NN\"],[\"word2\",\"VB\"]],\"headers\":[\"token\",\"pos_tag\"],\"delimiter\":\";\",\"quoteValues\":false,\"lineEnding\":\"\\n\"}", + "description": "Create CSV from array of arrays representing tokens and part-of-speech tags using semicolon delimiter without quotes." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "text-analysis.createModule", + "description": "Creates a customizable text analysis module based on specified NLP tasks and configurations. Accepts parameters defining the types of analyses (e.g., sentiment analysis, entity recognition), language, and output format. Produces a ready-to-use code module implementing the requested analyses suitable for integration in software projects.", + "category": "text-analysis", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name of the generated text analysis module.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) for text analysis processing.", + "required": true, + "defaultValue": "en" + }, + { + "name": "tasks", + "type": "array", + "description": "List of NLP tasks to include (e.g., ['sentimentAnalysis','entityRecognition','keywordExtraction']).", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the module output (e.g., 'json', 'xml', 'plaintext').", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeSampleCode", + "type": "boolean", + "description": "Whether to include sample usage code illustrating how to use the module.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated module code as a string and metadata about included tasks." + }, + "aiAgent": { + "useCase": "Use this tool to rapidly generate reusable text analysis code modules tailored to specific NLP tasks and languages, enabling faster prototyping or integration within larger applications. Ideal when an agent needs to produce modular, self-contained code components for text processing.", + "limitations": "This tool does not generate pre-trained models or train any machine learning systems; it only scaffolds code for existing standard analyses. It cannot guarantee the performance or accuracy of the included NLP methods, which depend on underlying libraries or APIs.", + "examples": [ + "Generate a module named 'ReviewAnalyzer' in English that includes sentiment analysis and entity recognition.", + "Create a text analysis module 'KeywordExtractor' focusing only on keyword extraction with output in plaintext.", + "Produce a multilingual module 'TextInsights' with sentiment analysis and keyword extraction, without sample code." + ] + }, + "tags": [ + "text-analysis", + "module-creation", + "NLP", + "code-generation", + "sentiment-analysis", + "entity-recognition", + "keyword-extraction" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"ReviewAnalyzer\",\"language\":\"en\",\"tasks\":[\"sentimentAnalysis\",\"entityRecognition\"],\"outputFormat\":\"json\",\"includeSampleCode\":true}", + "description": "Create an English module named 'ReviewAnalyzer' that does sentiment analysis and entity recognition with JSON output and sample usage code." + }, + { + "inputJson": "{\"moduleName\":\"KeywordExtractor\",\"language\":\"en\",\"tasks\":[\"keywordExtraction\"],\"outputFormat\":\"plaintext\",\"includeSampleCode\":true}", + "description": "Create a module 'KeywordExtractor' for English text that extracts keywords and outputs plain text, including sample usage." + }, + { + "inputJson": "{\"moduleName\":\"TextInsights\",\"language\":\"en\",\"tasks\":[\"sentimentAnalysis\",\"keywordExtraction\"],\"outputFormat\":\"json\",\"includeSampleCode\":false}", + "description": "Generate a module named 'TextInsights' for English that performs sentiment analysis and keyword extraction with JSON output, but no sample code included." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "api-integration.analyzeMetric", + "description": "This tool accepts API endpoint details and metric selection parameters to fetch and analyze analytics data from integrated APIs. It processes time series or aggregate metric data, applies filters and grouping, and returns structured analytic results including summaries, trends, and anomalies.", + "category": "api-integration", + "parameters": [ + { + "name": "apiEndpoint", + "type": "string", + "description": "The URL of the analytics API endpoint to query data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiKey", + "type": "string", + "description": "Authentication key or token required to access the analytics API.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricName", + "type": "string", + "description": "Name or identifier of the metric to analyze, e.g., 'user_sessions' or 'click_rate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start time for metric data query period, e.g., '2024-01-01T00:00:00Z'.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end time for metric data query period, e.g., '2024-01-07T23:59:59Z'.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional key-value pairs to filter the metric data, e.g., {'country':'US','device':'mobile'}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "groupBy", + "type": "array", + "description": "Optional list of dimensions to group data by, e.g., ['country','device_type'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable anomaly detection in the metric data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "aggregation", + "type": "string", + "description": "Aggregation function to apply over the data, e.g., 'sum', 'average', 'max'. Defaults to 'sum'.", + "required": false, + "defaultValue": "sum" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the analyzed metric data with summary statistics, time series arrays, grouped breakdowns and optionally detected anomalies." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to programmatically retrieve analytic metric data from APIs and perform automated analysis including filtering, grouping, aggregating, and anomaly detection to generate insights or prepare data for dashboards and reports.", + "limitations": "This tool requires the target analytics API to support metric querying and respond in a compatible format. It does not perform deep statistical modeling or predictive forecasting beyond basic anomaly detection.", + "examples": [ + "Analyze the daily active users metric for the past week grouped by device type from a specified analytics API.", + "Fetch and summarize the click-through rate metric between two dates with filter on region='EMEA'.", + "Detect anomalies in page view counts for the last 30 days grouped by country." + ] + }, + "tags": [ + "api-integration", + "metric-analysis", + "analytics", + "data-fetch", + "time-series", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"apiEndpoint\":\"https://api.exampleanalytics.com/metrics\",\"apiKey\":\"abcd1234token\",\"metricName\":\"user_sessions\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-07T23:59:59Z\",\"filters\":{\"device\":\"mobile\"},\"groupBy\":[\"country\"],\"detectAnomalies\":true,\"aggregation\":\"sum\"}", + "description": "Analyze user sessions metric from exampleanalytics API for last week, filtering mobile devices, grouping by country, with anomaly detection enabled." + }, + { + "inputJson": "{\"apiEndpoint\":\"https://metrics.company.com/api/data\",\"apiKey\":\"xyz987token\",\"metricName\":\"click_rate\",\"startTime\":\"2024-03-15T00:00:00Z\",\"endTime\":\"2024-03-21T23:59:59Z\",\"filters\":{\"region\":\"EMEA\"},\"groupBy\":[],\"detectAnomalies\":false,\"aggregation\":\"average\"}", + "description": "Fetch and average the click rate metric for a week, filtering region to EMEA, no grouping, no anomaly detection." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "api-integration.analyzeAlert", + "description": "This tool accepts security alert data as input, including alert type, severity, timestamps, source IPs, and related metadata. It processes this data to assess the alert's potential impact and relevance by correlating with threat intelligence and historical incident data, then outputs a detailed analysis report including risk score, suggested response actions, and classification.", + "category": "api-integration", + "parameters": [ + { + "name": "alertData", + "type": "object", + "description": "The security alert information containing details like type, severity, timestamps, source and destination IPs, and contextual metadata to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatIntelligenceSource", + "type": "string", + "description": "Optional URL or identifier for external threat intelligence feed to enhance alert analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "historicalIncidentsDB", + "type": "string", + "description": "Optional database or endpoint reference containing historical incident records to correlate alerts.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMitigationSuggestions", + "type": "boolean", + "description": "Flag to indicate whether the analysis should include recommended mitigation and response actions.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSeverityLevel", + "type": "string", + "description": "Optional filter to limit analysis to alerts up to this severity level (e.g., low, medium, high, critical).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including risk score, alert classification, root cause hypotheses, correlated indicators, and recommended next steps for mitigation or investigation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate incoming security alerts to prioritize, classify, and recommend responses based on enriched context and external threat intelligence. It helps automate alert triage and improves situational awareness in cybersecurity operations.", + "limitations": "The tool depends on the quality and availability of supplied alert data and external intelligence sources. It does not perform real-time intrusion prevention or guarantee detection of false positives.", + "examples": [ + "Analyze a suspected phishing alert with full metadata and retrieve suggested responses.", + "Evaluate critical alerts from IDS integrating with a threat intelligence feed to prioritize incident response.", + "Correlate unusual network traffic alerts with historical incident trends for root cause analysis." + ] + }, + "tags": [ + "api-integration", + "security-alert", + "analysis", + "cybersecurity", + "incident-response", + "threat-intelligence", + "alert-triage" + ], + "examples": [ + { + "inputJson": "{\"alertData\":{\"type\":\"suspicious_login\",\"severity\":\"high\",\"timestamp\":\"2024-05-01T13:45:30Z\",\"sourceIP\":\"192.168.1.45\",\"user\":\"jdoe\",\"metadata\":{\"failedAttempts\":5,\"geoLocation\":\"Russia\"}},\"threatIntelligenceSource\":\"https://api.threatintel.com/feed\",\"includeMitigationSuggestions\":true}", + "description": "Analyze a high severity suspicious login alert including source IP and user metadata with an external threat intelligence feed to get risk assessment and mitigation suggestions." + }, + { + "inputJson": "{\"alertData\":{\"type\":\"malware_detection\",\"severity\":\"critical\",\"timestamp\":\"2024-05-02T09:20:15Z\",\"sourceIP\":\"10.0.0.25\",\"destinationIP\":\"10.0.0.1\",\"metadata\":{\"fileHash\":\"abcd1234ef5678\",\"processName\":\"unknown.exe\"}},\"includeMitigationSuggestions\":false}", + "description": "Analyze a critical malware detection alert with relevant metadata but without mitigation suggestions, for classification and correlation only." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "api-integration.createParagraph", + "description": "Creates a coherent paragraph of text by integrating input content, tone, and context parameters, suitable for API-driven content generation or orchestration. Accepts base content, style preferences, and optionally topic keywords, then returns a cohesive paragraph string that can be used downstream or as final output.", + "category": "api-integration", + "parameters": [ + { + "name": "baseText", + "type": "string", + "description": "Primary content or seed text to base the paragraph on.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the paragraph such as formal, casual, or persuasive.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "topicKeywords", + "type": "array", + "description": "List of keywords that should be naturally incorporated into the paragraph.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the paragraph in characters.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) to generate the paragraph in.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated paragraph as a single coherent string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate a meaningful paragraph of text based on input content and style parameters, especially for API integrations that require dynamic content generation or seamless orchestration of textual data.", + "limitations": "Cannot create paragraphs without any meaningful or relevant base content or keywords; tone setting is limited to general styles and may not capture nuanced emotions; does not handle multi-paragraph or structured documents.", + "examples": [ + "Generate a promotional paragraph given a product description with a persuasive tone.", + "Create an informative paragraph on a technical topic including specified keywords in a formal tone.", + "Produce a casual summary paragraph from a brief note in English." + ] + }, + "tags": [ + "api-integration", + "text-generation", + "content-creation", + "paragraph", + "nlp", + "orchestration" + ], + "examples": [ + { + "inputJson": "{\"baseText\":\"Our new smartwatch features a high-resolution display, fitness tracking, and long battery life.\",\"tone\":\"persuasive\",\"topicKeywords\":[\"smartwatch\",\"fitness\",\"battery\"],\"maxLength\":300,\"language\":\"en\"}", + "description": "Generate a persuasive marketing paragraph about a new smartwatch including keywords." + }, + { + "inputJson": "{\"baseText\":\"Artificial intelligence is transforming many industries by enabling automation and data-driven decisions.\",\"tone\":\"formal\",\"topicKeywords\":[\"AI\",\"automation\"],\"maxLength\":400,\"language\":\"en\"}", + "description": "Create a formal informative paragraph on AI and automation including keywords." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "api-integration.createService", + "description": "Creates and configures a new API service instance based on provided specifications including service name, endpoints, authentication, and deployment options. Accepts detailed configuration input, processes it to establish the service infrastructure, and returns metadata about the created service such as ID, status, and endpoints.", + "category": "api-integration", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name for the new API service to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "A list of endpoint objects defining HTTP methods and paths that the service will expose.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Configuration object specifying the authentication method and credentials for the service.", + "required": false, + "defaultValue": "" + }, + { + "name": "deploymentRegion", + "type": "string", + "description": "The geographical region where the service is to be deployed for latency and compliance considerations.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "scalingOptions", + "type": "object", + "description": "Settings including autoscaling limits and concurrency configurations for service deployment.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable or disable logging of API requests and responses for the service.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional user-provided metadata tags to associate with the service for organizational purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object including the unique service identifier, current service status, configured endpoints, and deployment details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI system needs to programmatically set up a new API service with defined endpoints, security, and deployment parameters for integration within larger infrastructure. It supports automation of service creation workflows where manual setup would be inefficient.", + "limitations": "This tool cannot handle the underlying infrastructure provisioning beyond service configuration; it depends on existing deployment environments and does not manage runtime scaling beyond provided options.", + "examples": [ + "Create a REST API service named 'UserService' with GET and POST endpoints for user data, deploying in 'eu-west-1' region with OAuth2 authentication enabled.", + "Set up a lightweight notification API service with no authentication for internal use, deployed in default region, with logging disabled.", + "Provision an analytics API service with multiple endpoints protected by API key authentication, enabling autoscaling and detailed logging." + ] + }, + "tags": [ + "api", + "integration", + "service", + "deployment", + "automation", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"UserService\",\"endpoints\":[{\"method\":\"GET\",\"path\":\"/users\"},{\"method\":\"POST\",\"path\":\"/users\"}],\"authentication\":{\"type\":\"OAuth2\",\"credentials\":{\"clientId\":\"abc123\",\"clientSecret\":\"secret\"}},\"deploymentRegion\":\"eu-west-1\",\"enableLogging\":true}", + "description": "Creates a user management API service with GET and POST endpoints protected by OAuth2 in the Europe West region with logging enabled." + }, + { + "inputJson": "{\"serviceName\":\"NotificationAPI\",\"endpoints\":[{\"method\":\"POST\",\"path\":\"/notify\"}],\"enableLogging\":false}", + "description": "Creates a simple notification API service with a POST endpoint, without authentication and logging disabled, deployed in default region." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "agent-management.analyzePayment", + "description": "Analyzes payment transactions provided as input objects to detect anomalies, validate data consistency, calculate summary statistics, and classify payments by type. Outputs a detailed report including detected issues, aggregated totals, and categorized payment counts.", + "category": "agent-management", + "parameters": [ + { + "name": "payments", + "type": "array", + "description": "Array of payment transaction objects to analyze, each containing details like amount, date, method, and status.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include summary statistics such as total amount and average payment in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "anomalyThreshold", + "type": "number", + "description": "Threshold value to identify anomalies in payment amounts; payments exceeding this are flagged.", + "required": false, + "defaultValue": "10000" + }, + { + "name": "classificationRules", + "type": "object", + "description": "Optional custom rules to classify payments into types based on properties such as method or amount.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing lists of anomalies, data validation errors, summary statistics, and payment classifications." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to examine a batch of payment transactions to detect suspicious or incorrect payments, validate payment data integrity, and provide summarized insights or classifications for further decision-making or reporting.", + "limitations": "This tool cannot process payment transactions containing unstructured or missing essential data fields, nor does it connect to real-time payment gateways for live transaction analysis.", + "examples": [ + "Analyze a list of recent payments to find any that exceed $10,000 and summarize the results.", + "Check payment data consistency and classify payments into credit card, bank transfer, and cash categories.", + "Generate a report highlighting anomalies and total processed amount for a given payment batch." + ] + }, + "tags": [ + "analysis", + "payments", + "transaction", + "validation", + "anomaly-detection", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"payments\":[{\"id\":\"p1\",\"amount\":12000,\"date\":\"2024-05-15\",\"method\":\"credit_card\",\"status\":\"completed\"},{\"id\":\"p2\",\"amount\":200,\"date\":\"2024-05-14\",\"method\":\"paypal\",\"status\":\"completed\"},{\"id\":\"p3\",\"amount\":50,\"date\":\"2024-05-10\",\"method\":\"cash\",\"status\":\"pending\"}],\"includeSummary\":true,\"anomalyThreshold\":10000}", + "description": "Analyze payments detecting anomalies above $10,000 and include summary statistics." + }, + { + "inputJson": "{\"payments\":[{\"id\":\"p1\",\"amount\":45,\"date\":\"2024-05-12\",\"method\":\"bank_transfer\",\"status\":\"completed\"},{\"id\":\"p2\",\"amount\":60,\"date\":\"2024-05-13\",\"method\":\"credit_card\",\"status\":\"failed\"}],\"includeSummary\":false}", + "description": "Validate payment data and classify payments without summary stats." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "agent-management.uploadDataset", + "description": "Uploads a dataset file to an AI agent's management system. Accepts dataset content as a file or a URL, validates the format (CSV, JSON, XML), and stores it under a specified dataset name and optional metadata. Returns confirmation with dataset ID and upload status.", + "category": "agent-management", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "Unique name to identify the uploaded dataset within the agent's environment.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetFile", + "type": "string", + "description": "Base64 encoded content of the dataset file to upload. Required if datasetUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "datasetUrl", + "type": "string", + "description": "URL pointing to the dataset file to be fetched and uploaded. Required if datasetFile is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the dataset file; supported formats are CSV, JSON, and XML. Used for validation and parsing.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with metadata describing the dataset (e.g., source, description, tags).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing datasetId, uploadStatus (success or failure), and errorMessage if any." + }, + "aiAgent": { + "useCase": "Use this tool to upload or register new datasets for AI agents to utilize in training, analysis, or querying. It handles input from direct file content or external URLs, performs format validation, and stores the dataset with identifying metadata to manage multiple datasets per agent.", + "limitations": "This tool cannot preprocess or analyze dataset content beyond basic format validation. It does not support formats outside CSV, JSON, and XML, nor handles datasets exceeding size limits imposed by the system.", + "examples": [ + "Upload a CSV dataset file encoded in base64 to the agent with a unique name and metadata.", + "Provide a publicly accessible URL to a JSON dataset to fetch and upload it for agent use.", + "Attempt to upload an XML dataset specifying descriptive metadata for better cataloging within the agent." + ] + }, + "tags": [ + "upload", + "dataset", + "agent-management", + "file", + "data-import", + "AI-agent", + "csv", + "json", + "xml" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"customerRecords2024\",\"datasetFile\":\"base64EncodedCSVContent==\",\"fileFormat\":\"CSV\",\"metadata\":{\"source\":\"internal sales\",\"description\":\"Customer purchase records Q1 2024\"}}", + "description": "Uploading a base64-encoded CSV dataset file with metadata." + }, + { + "inputJson": "{\"datasetName\":\"weatherDataGlobal\",\"datasetUrl\":\"https://example.com/datasets/weather_global.json\",\"fileFormat\":\"JSON\",\"metadata\":{\"source\":\"NOAA\",\"description\":\"Global weather dataset 2023\"}}", + "description": "Uploading a dataset by specifying its URL in JSON format." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeAlert", + "description": "Analyzes AI-generated alert prompts to identify potential issues such as ambiguity, tone misalignment, insufficient context, or lack of clarity that could impair alert effectiveness. Accepts a text prompt describing a security alert, performs linguistic and contextual analysis, and returns a structured report with identified problems and suggestions for prompt improvements.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "alertPrompt", + "type": "string", + "description": "The alert text prompt to be analyzed for quality and effectiveness.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextualKeywords", + "type": "array", + "description": "Optional array of keywords relevant to the alert context to help refine analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeToneAnalysis", + "type": "boolean", + "description": "Whether to include tone and sentiment analysis in the report to check appropriateness.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSuggestionCount", + "type": "number", + "description": "Maximum number of improvement suggestions to return.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing detected issues, categorized problem descriptions, tone evaluation, and concrete suggestions for refining the alert prompt." + }, + "aiAgent": { + "useCase": "Use this tool when generating or refining AI security alert prompts to ensure they convey clear, unambiguous, and context-appropriate messages. It helps prevent poorly worded alerts that might confuse users or fail to prompt appropriate action.", + "limitations": "This tool analyzes prompt text for linguistic and contextual quality but does not validate security content accuracy or technical correctness of alerts.", + "examples": [ + "Analyze the alert prompt 'Possible breach detected in payment system' for clarity and tone.", + "Evaluate the alert prompt text for any ambiguity or missing context and suggest improvements.", + "Check the alert prompt 'Unauthorized access on server 5' for tone and provide up to 2 suggestions to improve effectiveness." + ] + }, + "tags": [ + "prompt-engineering", + "analysis", + "security", + "alert", + "text-analysis", + "tone-evaluation", + "improvement-suggestions" + ], + "examples": [ + { + "inputJson": "{\"alertPrompt\":\"Unusual login attempt detected on user account.\",\"contextualKeywords\":[\"login\",\"security\",\"attempt\"],\"includeToneAnalysis\":true,\"maxSuggestionCount\":3}", + "description": "Analyze a typical security alert prompt for clarity, context, and tone." + }, + { + "inputJson": "{\"alertPrompt\":\"Possible data exfiltration seen.\",\"contextualKeywords\":[],\"includeToneAnalysis\":false,\"maxSuggestionCount\":2}", + "description": "Analyze a concise alert prompt with no keywords and tone analysis disabled, returning up to 2 suggestions." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeOrder", + "description": "Analyzes a business order prompt to identify key order elements such as items, quantities, customer information, delivery instructions, and potential ambiguities or inconsistencies. Accepts a textual prompt describing an order, processes it for semantic structure, and returns a detailed analysis report outlining extracted data and issues found.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "orderPrompt", + "type": "string", + "description": "The textual prompt describing the business order to analyze. Required for processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeAmbiguities", + "type": "boolean", + "description": "Whether to include potential ambiguities or inconsistencies found in the order prompt in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language of the input prompt to better tailor the natural language understanding. Defaults to 'en' (English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted order details like items, quantities, customer info, delivery instructions, plus a list of detected ambiguities or warnings." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract structured order information from freeform business prompt text or to validate and clarify order details before passing to further processing or execution. It helps identify unclear parts or missing data in order prompts that could affect fulfillment.", + "limitations": "Cannot execute or modify orders; it only analyzes textual prompts for structure and clarity. May not fully understand highly unusual order formats or languages outside specified scope.", + "examples": [ + "Analyze a customer order input to extract items and detect missing quantities.", + "Check an order prompt for inconsistent delivery instructions or conflicting details.", + "Extract and summarize customer and order data from a conversational prompt for processing." + ] + }, + "tags": [ + "prompt-analysis", + "order-processing", + "natural-language", + "business", + "validation" + ], + "examples": [ + { + "inputJson": "{\"orderPrompt\":\"Customer John Doe wants to buy 3 blue t-shirts and 2 pairs of jeans. Deliver by Friday to 123 Elm St.\",\"includeAmbiguities\":true}", + "description": "Extracts items, quantities, customer name, address, and delivery date while checking for ambiguity." + }, + { + "inputJson": "{\"orderPrompt\":\"Please send me some towels and a bathrobe.\",\"includeAmbiguities\":true}", + "description": "Detects missing quantity info as an ambiguity in a vague order prompt." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Order", + "context": null + } + }, + { + "name": "prompt-engineering.buildAPI", + "description": "Constructs structured API specifications and example code snippets from natural language prompt descriptions. Accepts prompts describing desired AI API endpoints and their interactions, processes prompt intent, parameters, and response format, and outputs JSON API schema and sample integration code.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptDescription", + "type": "string", + "description": "Natural language description of the API to be built, including endpoint purpose, inputs, and desired outputs.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Programming language for output example code snippet (e.g., 'python', 'javascript').", + "required": false, + "defaultValue": "python" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to generate example usage code snippets demonstrating how to call the API.", + "required": false, + "defaultValue": "true" + }, + { + "name": "responseFormat", + "type": "string", + "description": "Preferred response data format in API spec, such as 'JSON', 'XML', or 'plain text'.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing an API specification JSON schema describing endpoints, parameters, and responses, plus optional example client code snippets demonstrating usage." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert a natural language prompt or intent into a detailed API specification, including method signatures, input parameters, and response formats, along with example client integration code in your preferred programming language. This aids in quickly scaffolding AI-powered APIs based on prompt descriptions.", + "limitations": "This tool does not execute or deploy the generated API. It generates specifications and example code but does not guarantee completeness or correctness without additional validation. It cannot infer highly complex domain-specific logic beyond the scope of the prompt text.", + "examples": [ + "Generate API spec and usage example for a text summarization endpoint that accepts raw text and returns a short summary in JSON format.", + "Build an AI chat API spec from a prompt describing a conversational assistant with user context and response history inputs.", + "Create API endpoints and sample client code in JavaScript for image captioning given an image URL, returning captions in plain text." + ] + }, + "tags": [ + "prompt-engineering", + "API", + "specification", + "code-generation", + "integration", + "AI", + "automation" + ], + "examples": [ + { + "inputJson": "{\"promptDescription\":\"Create an API endpoint for sentiment analysis that takes a text input and returns a sentiment label and confidence score.\", \"targetLanguage\":\"python\", \"includeExamples\":true, \"responseFormat\":\"JSON\"}", + "description": "Generating a sentiment analysis API spec with Python example code and JSON response." + }, + { + "inputJson": "{\"promptDescription\":\"Build an API specification for a chatbot that takes user messages and conversation history, returning AI-generated responses.\", \"targetLanguage\":\"javascript\", \"includeExamples\":true, \"responseFormat\":\"JSON\"}", + "description": "Creating a chatbot API specification with example JavaScript usage." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "prompt-engineering.buildTest", + "description": "Generates automated test cases to evaluate the effectiveness and correctness of AI prompt outputs. Accepts a prompt template and expected output characteristics, then builds structured test scenarios including input variations and expected results to facilitate prompt validation and improvement.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptTemplate", + "type": "string", + "description": "The AI prompt template text for which tests will be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedOutputCriteria", + "type": "object", + "description": "Defines the criteria or patterns that the expected AI response should meet (e.g., keywords, formats).", + "required": true, + "defaultValue": "" + }, + { + "name": "inputVariations", + "type": "array", + "description": "Optional list of variation strings to test different prompt inputs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "testCount", + "type": "number", + "description": "Number of test cases to generate, including variations and edge cases.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to include edge case inputs in the test set to evaluate robustness.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of generated test case objects, each specifying the input prompt variation and validation checks for the output." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create systematic test cases to verify that AI prompt outputs meet expected standards or correctness criteria, ensuring prompt quality and consistency in responses. It helps in automated prompt validation and optimization workflows.", + "limitations": "This tool cannot execute the AI models or validate output in real-time; it only generates test scenarios. It also cannot guarantee test completeness or cover all potential AI behaviors beyond defined criteria.", + "examples": [ + "Generate test cases for a customer support prompt expecting polite responses.", + "Create validation tests for prompts designed to summarize text accurately.", + "Build test scenarios including edge inputs to evaluate prompt robustness." + ] + }, + "tags": [ + "prompt-engineering", + "test-generation", + "automation", + "validation", + "AI", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"promptTemplate\":\"Generate a polite greeting for a customer.\",\"expectedOutputCriteria\":{\"containsKeywords\":[\"hello\",\"please\",\"thank you\"]},\"inputVariations\":[\"Generate a welcome message\",\"Create a friendly greeting\"],\"testCount\":3,\"includeEdgeCases\":true}", + "description": "Create 3 test cases for variations of a polite customer greeting prompt, including edge cases to ensure consistent politeness." + }, + { + "inputJson": "{\"promptTemplate\":\"Summarize the following article in one sentence.\",\"expectedOutputCriteria\":{\"format\":\"single_sentence\",\"maxLength\":30},\"inputVariations\":[],\"testCount\":2,\"includeEdgeCases\":false}", + "description": "Generate 2 test cases to validate summary prompts ensuring output is a single sentence under 30 words." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "model-management.analyzeComment", + "description": "Analyzes user or developer comments related to AI models to extract sentiment, intent, and key topics. Accepts a comment string and optional context metadata, then processes the text using natural language techniques to produce a structured analysis including sentiment score, detected intents, and important keywords or entities. Useful for understanding feedback or discussion surrounding model development or deployment.", + "category": "model-management", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw comment text to analyze for sentiment, intent, and key topics.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "object", + "description": "Optional context metadata about the comment, such as author role, timestamp, or model version referenced.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the comment text to help language-specific processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + } + ], + "returns": { + "type": "object", + "description": "An analysis result object containing overall sentiment score (-1 to 1), array of inferred intents, extracted keywords or entities, and summary text reflecting the comment's main points." + }, + "aiAgent": { + "useCase": "This tool is useful when managing AI model projects or deployments where user or developer comments need to be understood automatically. It aids in extracting sentiment trends, detecting intents like bug reports or feature requests, and highlighting important topics in free-text input to prioritize responses or actions.", + "limitations": "Cannot replace full human understanding; subtleties like sarcasm or complex domain-specific jargon may be incorrectly interpreted. Not a real-time conversational understanding tool but suited for batch or on-demand analysis.", + "examples": [ + "Analyze a user feedback comment about model accuracy degrading over time.", + "Extract intents and sentiment from developer comments on model training logs.", + "Summarize and identify key points from community forum discussions about model deployment issues." + ] + }, + "tags": [ + "analysis", + "nlp", + "sentiment-analysis", + "intent-detection", + "comment-processing", + "model-feedback", + "text-mining" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"The recent update really improved the model's accuracy, but I am concerned about slower inference times.\",\"context\":{\"authorRole\":\"user\",\"modelVersion\":\"v2.1\"},\"language\":\"en\"}", + "description": "Analyze user feedback comment highlighting positive and negative aspects about model update." + }, + { + "inputJson": "{\"commentText\":\"Found a bug causing data leakage during training, needs urgent fix.\",\"context\":{\"authorRole\":\"developer\",\"modelVersion\":\"v3.0\"},\"language\":\"en\"}", + "description": "Process developer comment reporting a critical bug and extract intent for issue tracking." + }, + { + "inputJson": "{\"commentText\":\"Can we add support for multilingual inputs in next release?\",\"context\":{\"authorRole\":\"product_manager\"},\"language\":\"en\"}", + "description": "Identify feature request intent from a product manager's comment about future model improvements." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "model-management.analyzePayment", + "description": "Analyzes payment transaction data using machine learning models to detect anomalies, predict payment failures, and assess risk scores. Accepts structured payment records as input and returns analysis results including anomaly flags, predicted failure probabilities, and risk assessments for each transaction.", + "category": "model-management", + "parameters": [ + { + "name": "paymentData", + "type": "array", + "description": "An array of payment transaction objects to be analyzed, each containing fields like amount, currency, timestamp, and payment method.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelVersion", + "type": "string", + "description": "Specifies the version of the payment analysis model to use. Defaults to the latest model if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag indicating whether to perform anomaly detection on payments. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "predictFailures", + "type": "boolean", + "description": "Flag indicating whether to predict payment failures. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeRiskScore", + "type": "boolean", + "description": "Flag indicating whether to include a risk score assessing payment risk level. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing an analysis array, where each element corresponds to a payment transaction with fields for anomaly detection result, failure probability, and risk score." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze a batch of payment transactions for irregularities, failure risk, or fraud detection using trained AI models. It assists in operational monitoring of payment streams and proactive risk management by producing actionable insights on payment health and reliability.", + "limitations": "The tool analyzes payments based on the data and trained models provided; it cannot guarantee detection of all fraud or payment issues and is not a substitute for comprehensive financial audits or manual reviews.", + "examples": [ + "Analyze payment batch to identify suspicious transactions", + "Predict failure probabilities for upcoming scheduled payments", + "Assess risk scores for credit card payments in recent data" + ] + }, + "tags": [ + "payment", + "analysis", + "machine learning", + "risk assessment", + "fraud detection", + "transaction monitoring" + ], + "examples": [ + { + "inputJson": "{\"paymentData\":[{\"transactionId\":\"tx1001\",\"amount\":150.00,\"currency\":\"USD\",\"timestamp\":\"2024-06-01T10:15:00Z\",\"paymentMethod\":\"credit_card\"},{\"transactionId\":\"tx1002\",\"amount\":2000.00,\"currency\":\"USD\",\"timestamp\":\"2024-06-01T11:45:00Z\",\"paymentMethod\":\"bank_transfer\"}],\"detectAnomalies\":true,\"predictFailures\":true,\"includeRiskScore\":true}", + "description": "Analyze two payment transactions to detect anomalies, predict failures, and return risk scores using default latest model." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "model-management.buildService", + "description": "This tool provisions and configures AI model serving infrastructure based on user specifications. It accepts inputs describing model details, deployment environment, resource requirements, and scaling policies. The tool builds a scalable, reliable model serving service and returns deployment status and endpoint information.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name or identifier of the AI model to be deployed for serving.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelVersion", + "type": "string", + "description": "Version tag of the model to deploy, enabling version control and rollback.", + "required": false, + "defaultValue": "latest" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Target environment for deployment, e.g., 'production', 'staging', or custom environment name.", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceConfig", + "type": "object", + "description": "Configuration object specifying compute resources (CPU, GPU, memory) to allocate for the service.", + "required": true, + "defaultValue": "" + }, + { + "name": "scalingPolicy", + "type": "object", + "description": "Scaling rules such as min/max instances, autoscaling triggers, and thresholds.", + "required": false, + "defaultValue": "" + }, + { + "name": "endpointConfig", + "type": "object", + "description": "Configuration details for the service endpoint, including protocols, authentication, and security settings.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable logging of model inference requests and responses for monitoring and debugging.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Deployment results including service status, endpoint URLs, resource allocations, and any error messages encountered during provisioning." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to deploy an AI model as a scalable and manageable service. It is suitable for creating production-grade endpoints based on user-specified resource and environment constraints to facilitate inference requests.", + "limitations": "This tool does not train or update model weights; it only handles deployment infrastructure. It cannot modify model internals or perform model evaluation.", + "examples": [ + "Deploy model Alpha v1.2 to production with 4 CPUs and GPU, autoscaling between 2-10 instances.", + "Build a staging environment service for model Beta with minimal resources for testing.", + "Create a secure endpoint with authentication for model Gamma's version latest, enabling detailed logging for debugging purposes." + ] + }, + "tags": [ + "deployment", + "model-serving", + "infrastructure", + "scalable", + "autoscaling", + "resource-management", + "endpoint", + "production" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"ImageClassifier\",\"modelVersion\":\"v1.0\",\"deploymentEnvironment\":\"production\",\"resourceConfig\":{\"cpu\":4,\"gpu\":1,\"memory\":\"16GB\"},\"scalingPolicy\":{\"minInstances\":2,\"maxInstances\":8,\"triggerMetric\":\"cpuUtilization\",\"threshold\":70},\"endpointConfig\":{\"protocol\":\"https\",\"authentication\":\"token\"},\"enableLogging\":true}", + "description": "Deploy ImageClassifier model version v1.0 to production with specified resource config, autoscaling enabled, secure HTTPS endpoint using token authentication, and logging turned on." + }, + { + "inputJson": "{\"modelName\":\"TextAnalyzer\",\"deploymentEnvironment\":\"staging\",\"resourceConfig\":{\"cpu\":2,\"memory\":\"8GB\"},\"enableLogging\":false}", + "description": "Build a staging deployment for TextAnalyzer model (default latest version) with modest compute resources and logging disabled for test purposes." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "model-management.buildConfig", + "description": "Generates a comprehensive configuration object for training, deploying, or managing AI models. Accepts model parameters, dataset info, training settings, and deployment preferences, then produces a fully structured config object suitable for use with ML pipelines or deployment frameworks.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name or identifier of the AI model to configure.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "Type of the model architecture, e.g., 'transformer', 'cnn', 'rnn'.", + "required": true, + "defaultValue": "" + }, + { + "name": "trainingParameters", + "type": "object", + "description": "Object containing training hyperparameters such as learning rate, batch size, epochs.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetInfo", + "type": "object", + "description": "Information about the dataset, including location, preprocessing steps, and dataset splits.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentSettings", + "type": "object", + "description": "Settings related to the model deployment such as target device, scaling options, and endpoint configuration.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable or disable logging of training and deployment metrics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "saveConfigPath", + "type": "string", + "description": "File path to save the generated config as a JSON file. If empty, config is returned only in-memory.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured configuration object containing all provided parameters organized for direct use in training or deployment workflows." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a complete and valid configuration for managing a machine learning model's lifecycle, including training parameters, dataset details, and deployment preferences. It helps automate model pipeline creation and reduces manual config errors.", + "limitations": "Does not perform the actual training or deployment; only generates configuration data. Does not validate model code compatibility or availability of datasets.", + "examples": [ + "Build a training config for a transformer model on an image dataset with specific hyperparameters.", + "Generate deployment configuration for a CNN model optimized for mobile devices.", + "Create a comprehensive config object including training and deployment settings with logging disabled." + ] + }, + "tags": [ + "model-management", + "configuration", + "training", + "deployment", + "automation", + "ML-pipelines" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"ImageClassifierV3\",\"modelType\":\"cnn\",\"trainingParameters\":{\"learningRate\":0.001,\"batchSize\":64,\"epochs\":30},\"datasetInfo\":{\"location\":\"s3://datasets/images\",\"preprocessing\":[\"resize\",\"normalize\"],\"splits\":{\"train\":0.7,\"val\":0.2,\"test\":0.1}},\"deploymentSettings\":{\"targetDevice\":\"mobile\",\"scaling\":\"auto\",\"endpoint\":\"https://model-host/api\"},\"enableLogging\":true,\"saveConfigPath\":\"configs/image_classifier_v3.json\"}", + "description": "Generate a config for training a CNN model on image dataset and prepare deployment settings for mobile devices, saving to a JSON file." + }, + { + "inputJson": "{\"modelName\":\"TextGenGpt\",\"modelType\":\"transformer\",\"trainingParameters\":{\"learningRate\":0.0001,\"batchSize\":16,\"epochs\":10},\"datasetInfo\":{\"location\":\"gs://text-datasets/gpt_corpus\",\"preprocessing\":[\"tokenize\",\"lowercase\"]},\"enableLogging\":false}", + "description": "Create a training config for a transformer model focused on text generation, without deployment settings and logging disabled." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "model-management.composeWord", + "description": "This tool generates a well-formed word based on specified language, part of speech, and optional semantic constraints. It accepts inputs defining desired word attributes and creates a realistic lexical item suitable for training or augmenting language models. Output is a generated word string.", + "category": "model-management", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Specifies the language for the generated word (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "Defines the word's grammatical category, such as noun, verb, adjective, or adverb.", + "required": true, + "defaultValue": "" + }, + { + "name": "semanticCategory", + "type": "string", + "description": "Optional semantic domain or category the word should belong to (e.g., 'technology', 'emotion').", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word to control word size.", + "required": false, + "defaultValue": "15" + }, + { + "name": "allowCompound", + "type": "boolean", + "description": "Indicates whether the generated word can be a compound word.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word as a string under the 'word' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate realistic new words or lexical tokens matching specific grammatical and semantic criteria, for example to augment training data, build synthetic lexicons, or test language models' vocabulary handling. It helps create words that fit desired linguistic roles and domains.", + "limitations": "Cannot guarantee that generated words exist in any dictionary or are semantically validated beyond algorithmic constraints. Does not generate phrases or multi-word expressions beyond simple compounding if enabled.", + "examples": [ + "Generate an English noun related to technology.", + "Create an adjective of max length 10 describing emotion.", + "Produce a verb allowing compound formation in English." + ] + }, + "tags": [ + "language", + "word-generation", + "lexical", + "model-training", + "NLP", + "synthetic-data" + ], + "examples": [ + { + "inputJson": "{\"language\":\"en\",\"partOfSpeech\":\"noun\",\"semanticCategory\":\"technology\",\"maxLength\":12,\"allowCompound\":true}", + "description": "Generate an English noun related to technology, allowing compound words up to length 12." + }, + { + "inputJson": "{\"language\":\"en\",\"partOfSpeech\":\"adjective\",\"semanticCategory\":\"emotion\",\"maxLength\":10,\"allowCompound\":false}", + "description": "Generate an English adjective relating to emotion, no compounds, max length 10." + }, + { + "inputJson": "{\"language\":\"es\",\"partOfSpeech\":\"verb\",\"semanticCategory\":\"\",\"maxLength\":15,\"allowCompound\":false}", + "description": "Generate a Spanish verb without semantic restrictions or compound words, max length 15." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "model-management.generateKPI", + "description": "Generates Key Performance Indicators (KPIs) for AI models based on training and deployment metrics. Accepts model metadata, training logs, and deployment data, analyzes relevant metrics against defined targets, and outputs a standardized KPI report summarizing model performance, resource usage, and accuracy trends.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model for which KPIs are generated", + "required": true, + "defaultValue": "" + }, + { + "name": "trainingMetrics", + "type": "object", + "description": "Contains aggregated training metrics such as accuracy, loss, training time, and convergence data", + "required": false, + "defaultValue": "" + }, + { + "name": "deploymentMetrics", + "type": "object", + "description": "Contains deployment related metrics including inference latency, throughput, error rates, and uptime", + "required": false, + "defaultValue": "" + }, + { + "name": "kpiTargets", + "type": "object", + "description": "Thresholds or goals for KPIs to evaluate model performance against, e.g., minimum accuracy or maximum latency", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range filter for metrics, with start and end timestamps in ISO 8601 format", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Flag indicating whether to include trend analysis over time in the KPI report", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "KPI report object containing summarized metrics, target comparisons, trend insights, and alert flags" + }, + "aiAgent": { + "useCase": "An AI agent should use this tool when it needs to evaluate or monitor an AI model's operational and training performance by generating KPIs that track effectiveness, efficiency, and reliability over time. It is useful for automated reporting, performance audits, or triggering alerts based on KPI deviations.", + "limitations": "This tool does not train or deploy models itself and does not analyze raw data directly. It requires prior collection and aggregation of relevant metrics. It also cannot interpret unstructured logs or raw telemetry without preprocessing.", + "examples": [ + "Generate KPIs for model ID 'model123' using latest training and deployment metrics to monitor accuracy and latency against SLA targets.", + "Produce a KPI report including trend analysis for the last quarter to assess model performance evolution over time.", + "Retrieve KPIs focused on latency and error rates for a deployed model to detect potential service degradation." + ] + }, + "tags": [ + "model-management", + "KPI", + "analytics", + "performance-monitoring", + "AI-models", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model123\",\"trainingMetrics\":{\"accuracy\":0.92,\"loss\":0.15,\"trainingTimeHours\":5},\"deploymentMetrics\":{\"latencyMs\":120,\"throughput\":1000,\"errorRate\":0.01},\"kpiTargets\":{\"minAccuracy\":0.9,\"maxLatencyMs\":150},\"timeRange\":{\"start\":\"2024-01-01T00:00:00Z\",\"end\":\"2024-03-31T23:59:59Z\"},\"includeTrendAnalysis\":true}", + "description": "Generate a KPI report for model123 evaluating training accuracy and deployment latency over Q1 2024 with trend analysis." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "model-management.generateLink", + "description": "Generates a secure, customizable URL link for accessing a deployed AI model endpoint. Accepts model identifier, version, and optional access parameters; processes authentication tokens and expiry settings; outputs a fully constructed, shareable URL to invoke the model API.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier for the AI model to generate a link for.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Specific model version for the generated link; defaults to latest if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "expirySeconds", + "type": "number", + "description": "Time in seconds before the generated link expires; if omitted, the link does not expire.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessToken", + "type": "string", + "description": "Optional authentication token to embed in the link for secure access.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetricsTracking", + "type": "boolean", + "description": "Flag indicating whether to enable metrics tracking via this link.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secure URL string and metadata about expiry and tracking." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to share or deploy a specific AI model endpoint with others, generating a secure and optionally time-limited URL for invoking predictions or inferences.", + "limitations": "This tool does not deploy or manage model hosting; it assumes the model is already deployed and accessible. It also cannot generate links for non-existent model IDs or unsupported versions.", + "examples": [ + "Generate a time-limited link for model 'abc123' version 'v2' with access token.", + "Create a permanent public link to the latest version of model 'def789' without metrics tracking.", + "Generate a metrics-enabled link for model 'xyz456' with 1 hour expiry." + ] + }, + "tags": [ + "model-management", + "deployment", + "access", + "link-generation", + "security" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"version\":\"v2\",\"expirySeconds\":3600,\"accessToken\":\"token123\",\"includeMetricsTracking\":true}", + "description": "Generate a secure URL link for model 'abc123', version 'v2', expiring in one hour, with authentication token and metrics tracking enabled." + }, + { + "inputJson": "{\"modelId\":\"def789\",\"includeMetricsTracking\":false}", + "description": "Generate a permanent link for the latest version of model 'def789' without metrics tracking or expiration." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "embedding-generation.analyzeAccount", + "description": "This tool accepts structured account data including textual descriptions, metadata, and transactional summaries. It generates semantic vector embeddings that represent the core characteristics and activities of the account. These embeddings can be used for advanced similarity analysis, clustering, recommendation, or anomaly detection in business intelligence and customer analytics.", + "category": "embedding-generation", + "parameters": [ + { + "name": "accountData", + "type": "object", + "description": "Structured JSON object representing all relevant account information such as name, description, metadata, and transactional summaries for embedding generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for vector generation. Defaults to a general-purpose semantic model optimized for business text.", + "required": false, + "defaultValue": "\"business-semantic-v1\"" + }, + { + "name": "includeTransactions", + "type": "boolean", + "description": "Whether to incorporate transactional data in embedding generation. If false, only static account info is used.", + "required": false, + "defaultValue": "true" + }, + { + "name": "transactionLimit", + "type": "number", + "description": "Maximum number of recent transactions to consider when including transactional data to limit processing time.", + "required": false, + "defaultValue": "100" + }, + { + "name": "normalizeText", + "type": "boolean", + "description": "Flag indicating if textual fields should be normalized (lowercase, punctuation removal) before embedding computation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated embedding vector as an array of floats, the embedding dimensionality, and metadata about the embedding generation process including model used and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need a dense vector representation of account-level data for tasks like similarity search among accounts, clustering accounts by behavior or description, or feeding account embeddings into downstream ML models. Ideal when raw account information is rich and structured, and semantic understanding is needed beyond keyword matching.", + "limitations": "Does not generate embeddings for unstructured data formats like images or audio associated with the account. Quality depends on the underlying embedding model and may require custom tuning for domain-specific terminology.", + "examples": [ + "Generate a vector embedding for an account profile including description and latest transactions.", + "Analyze multiple customer accounts by embedding their metadata for clustering similar customers.", + "Create embeddings of business accounts for a recommendation system to find similar accounts based on their transactional behavior and profile text." + ] + }, + "tags": [ + "embedding-generation", + "account-analysis", + "business-intelligence", + "customer-analytics", + "semantic-embedding" + ], + "examples": [ + { + "inputJson": "{\"accountData\":{\"accountId\":\"12345\",\"name\":\"Acme Corp.\",\"description\":\"Leading manufacturer of industrial hardware.\",\"metadata\":{\"industry\":\"manufacturing\",\"location\":\"USA\"},\"transactions\":[{\"id\":\"t1\",\"amount\":5000,\"type\":\"purchase\",\"date\":\"2024-05-01\"},{\"id\":\"t2\",\"amount\":7500,\"type\":\"purchase\",\"date\":\"2024-05-15\"}]},\"embeddingModel\":\"business-semantic-v1\",\"includeTransactions\":true,\"transactionLimit\":50,\"normalizeText\":true}", + "description": "Input includes a typical business account profile with metadata and recent transactions, specifying standard embedding model and including transactions." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "embedding-generation.uploadCode", + "description": "Uploads source code files or snippets in various programming languages, processes them to generate vector embeddings that capture the semantic content and structure of the code, and returns embedding metadata and identifiers for downstream semantic search, code analysis, or recommendation systems.", + "category": "embedding-generation", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The source code snippet or entire code file content to be embedded.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code, e.g., 'python', 'java', 'javascript'. Helps select proper tokenizer and embedding model.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional file name associated with the code, used for metadata and context.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The identifier of the embedding model to use for code, e.g., 'codebert', 'graphcodebert'. Selects the embedding algorithm.", + "required": false, + "defaultValue": "codebert" + }, + { + "name": "storeMetadata", + "type": "boolean", + "description": "Whether to store metadata such as language, fileName, and code stats along with the embedding.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique embedding ID, the embedding vector as a numeric array, and metadata including language and fileName." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert source code files or snippets into vector embeddings to enable semantic search, similarity detection, or code recommendation systems. It's suitable for individually uploading and embedding single code samples in various languages, providing metadata for enhanced context.", + "limitations": "This tool does not perform code syntax validation or error correction. It only processes code snippets individually and does not support batch uploads. Long code files might require splitting before embedding. The quality of embeddings depends on the chosen embedding model and may not capture deep semantic bugs or logic.", + "examples": [ + "Upload a Python code snippet to obtain its semantic embedding for code search.", + "Embed a JavaScript function from a project file to build a code recommendation index.", + "Generate embeddings for various source files by specifying their programming language." + ] + }, + "tags": [ + "embedding", + "code", + "upload", + "vector", + "semantic-search", + "code-analysis" + ], + "examples": [ + { + "inputJson": "{\"code\":\"def add(a, b):\\n return a + b\",\"language\":\"python\",\"fileName\":\"math_utils.py\"}", + "description": "Python utility function to add two numbers, uploaded for embedding generation." + }, + { + "inputJson": "{\"code\":\"function greet(name) { return `Hello, ${name}!`; }\",\"language\":\"javascript\"}", + "description": "JavaScript greeting function snippet uploaded to generate embedding for similarity search." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "email-communication.analyzeLead", + "description": "Analyzes a business lead's email interaction data and profile details to assess lead quality and engagement level. Accepts lead email address and optional interaction logs, then processes communication frequency, response sentiment, and profile completeness. Outputs a structured lead analysis report with scores and recommendations for follow-up actions.", + "category": "email-communication", + "parameters": [ + { + "name": "leadEmail", + "type": "string", + "description": "The email address of the lead to analyze for communication interactions and profile data.", + "required": true, + "defaultValue": "" + }, + { + "name": "interactionLogs", + "type": "array", + "description": "Optional list of email interaction records including metadata like dates, responses, and sentiments for detailed analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "profileData", + "type": "object", + "description": "Optional structured data containing known lead profile information such as company, role, and industry for richer analysis.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: 'basic' for summary scores, 'detailed' for deep behavior and sentiment metrics.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to generate actionable follow-up recommendations based on the analysis results.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive analysis report object containing lead engagement scores, interaction summaries, sentiment metrics, profile completeness, and optional follow-up recommendations." + }, + "aiAgent": { + "useCase": "Use this tool to evaluate and score leads from email communication data to prioritize sales outreach efforts effectively. Particularly helpful when automating lead qualification pipelines or when needing insight into lead responsiveness and engagement trends based on their email history and profile information.", + "limitations": "This tool relies on the quality and completeness of provided email interaction logs and profile data. It cannot access email data autonomously and does not predict future lead behavior beyond existing interaction patterns.", + "examples": [ + "Analyze a lead by email with given interaction logs to prioritize outreach.", + "Generate a detailed lead engagement report from email response history and profile info.", + "Get follow-up recommendations for a potential client based on past email conversations." + ] + }, + "tags": [ + "email", + "lead-analysis", + "sales", + "crm", + "engagement", + "automation", + "communication-analysis" + ], + "examples": [ + { + "inputJson": "{\"leadEmail\":\"jane.doe@example.com\"}", + "description": "Basic analysis using only the lead's email address with no additional interaction or profile data." + }, + { + "inputJson": "{\"leadEmail\":\"john.smith@clientco.com\",\"interactionLogs\":[{\"date\":\"2024-05-01T09:00:00Z\",\"type\":\"sent\",\"subject\":\"Intro to services\"},{\"date\":\"2024-05-02T11:30:00Z\",\"type\":\"received\",\"sentiment\":\"positive\",\"subject\":\"Re: Intro to services\"}],\"profileData\":{\"company\":\"ClientCo\",\"role\":\"CTO\",\"industry\":\"Technology\"},\"analysisDepth\":\"detailed\",\"includeRecommendations\":true}", + "description": "Detailed analysis using email interaction logs and profile data including sentiment analysis and generating follow-up recommendations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeMetric", + "description": "Analyzes a specified infrastructure performance metric by processing time-series data. Accepts metric data points and parameters defining analysis range, granularity, and aggregation method. Outputs statistical summaries and trend insights to assist in infrastructure monitoring and optimization.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The name of the infrastructure metric to analyze (e.g., CPUUsage, DiskIO).", + "required": true, + "defaultValue": "" + }, + { + "name": "dataPoints", + "type": "array", + "description": "An array of objects each containing a timestamp and value representing the metric over time.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp marking the start of analysis period (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp marking the end of analysis period (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate data points, e.g., average, max, min, sum, percentile.", + "required": false, + "defaultValue": "average" + }, + { + "name": "granularityMinutes", + "type": "number", + "description": "Time interval in minutes to bucket data points for aggregation (optional).", + "required": false, + "defaultValue": "5" + }, + { + "name": "trendDetection", + "type": "boolean", + "description": "Flag to enable detection of trends and anomalies in the data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated statistical results (mean, max, min, percentiles), detected anomalies if any, and trend analysis summaries over the specified period." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze time-series infrastructure metrics to identify performance patterns, detect anomalies, or summarize data over custom time ranges, assisting in capacity planning and operational alerting.", + "limitations": "Does not fetch metric data; requires pre-collected and formatted input. Analysis is limited by the quality and granularity of input data. Does not predict future metrics or perform root cause analysis of anomalies.", + "examples": [ + "Analyze CPUUsage metric data over the last 24 hours with 10-minute granularity using average aggregation.", + "Detect trends and anomalies in DiskIO metric for a custom date range.", + "Summarize networkLatency metric data using max aggregation without trend detection." + ] + }, + "tags": [ + "infrastructure", + "metrics", + "analysis", + "performance", + "monitoring", + "time-series", + "trend-detection" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"CPUUsage\",\"dataPoints\":[{\"timestamp\":\"2024-04-22T00:00:00Z\",\"value\":35},{\"timestamp\":\"2024-04-22T00:05:00Z\",\"value\":45},{\"timestamp\":\"2024-04-22T00:10:00Z\",\"value\":40}],\"startTime\":\"2024-04-22T00:00:00Z\",\"endTime\":\"2024-04-22T01:00:00Z\",\"aggregationMethod\":\"average\",\"granularityMinutes\":10,\"trendDetection\":true}", + "description": "Analyze average CPU usage from midnight to 1 AM with 10-minute buckets and trend detection enabled." + }, + { + "inputJson": "{\"metricName\":\"DiskIO\",\"dataPoints\":[{\"timestamp\":\"2024-04-20T10:00:00Z\",\"value\":120},{\"timestamp\":\"2024-04-20T10:10:00Z\",\"value\":110},{\"timestamp\":\"2024-04-20T10:20:00Z\",\"value\":130}],\"aggregationMethod\":\"max\",\"trendDetection\":true}", + "description": "Analyze DiskIO metric using maximum values for trend and anomaly detection over available data." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "infrastructure-management.sendMessage", + "description": "Sends a message to specified recipients via configured communication channels within an infrastructure environment. Accepts message content, recipient identifiers, channel preferences, and optional metadata. Processes formatting and dispatches the message, returning delivery status and any errors encountered.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The text or payload of the message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as user IDs, emails, or device IDs.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Preferred communication channel (e.g., 'email', 'sms', 'slack'); if omitted, uses default channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message such as 'normal', 'high', or 'low'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with extra info like tags, timestamps, or context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall success boolean, detailed per-recipient delivery status, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when infrastructure management involves sending notifications or alerts to specified users or systems, for example, alerting on server status, sending configuration updates, or dispatching operational messages through preferred communication channels.", + "limitations": "This tool does not handle message content creation or authentication/authorization. It relies on pre-configured channels and cannot queue or retry failed deliveries autonomously.", + "examples": [ + "Send an urgent alert message to on-call engineers via SMS.", + "Notify infrastructure team via Slack about deployment status.", + "Send an informational email to all administrators with maintenance details." + ] + }, + "tags": [ + "infrastructure", + "messaging", + "notification", + "communication", + "alert", + "incident-management" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"Server CPU usage exceeds threshold.\",\"recipients\":[\"user123\",\"user456\"],\"channel\":\"sms\",\"priority\":\"high\"}", + "description": "Send a high priority SMS alert to two users notifying a CPU threshold breach." + }, + { + "inputJson": "{\"messageContent\":\"The scheduled maintenance will start at 10 PM.\",\"recipients\":[\"infra-team@company.com\"],\"channel\":\"email\"}", + "description": "Send an email notification to the infrastructure team about scheduled maintenance." + }, + { + "inputJson": "{\"messageContent\":\"Deployment of version 2.1 succeeded.\",\"recipients\":[\"#devops-channel\"],\"channel\":\"slack\",\"metadata\":{\"deploymentId\":\"deploy_789\"}}", + "description": "Notify the DevOps Slack channel about successful deployment with metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "infrastructure-management.renderDocument", + "description": "Renders an infrastructure management document such as deployment plans, architecture diagrams, or operation manuals from structured input. Accepts JSON or YAML describing infrastructure components and configuration, processes templates or markdown, and outputs a formatted PDF or HTML document for review and distribution.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Structured data representing the infrastructure details, in JSON or YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the inputData: 'json' or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format, e.g., 'pdf' or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "templateName", + "type": "string", + "description": "Name of the rendering template to use (e.g., 'deploymentPlan', 'architectureDiagram').", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to include a table of contents in the rendered document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "pageSize", + "type": "string", + "description": "Page size for PDF output, e.g., 'A4', 'Letter'. Only applicable if outputFormat is 'pdf'.", + "required": false, + "defaultValue": "A4" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme to apply to the document (affects colors, fonts).", + "required": false, + "defaultValue": "standard" + } + ], + "returns": { + "type": "object", + "description": "Object containing the rendered document as a base64 encoded string and metadata about the output." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate finalized infrastructure-related documents (like deployment plans or operation manuals) from structured descriptions, suitable for sharing with stakeholders or teams. This automates document creation, ensuring consistency and speeding review cycles.", + "limitations": "The tool does not generate infrastructure diagrams from raw network/topology data automatically; input data must be pre-structured and formatted. It cannot perform complex graphical rendering beyond templated diagrams. It also requires correctly formatted input and recognizes only provided templates.", + "examples": [ + "Render infrastructure deployment plan from JSON input to PDF for team review.", + "Generate an HTML operation manual from YAML infrastructure config for internal wiki.", + "Create an architecture overview document with table of contents in PDF format from JSON data." + ] + }, + "tags": [ + "infrastructure", + "document-generation", + "rendering", + "PDF", + "HTML", + "templates", + "deployment-plan" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"{\\\"environment\\\":\\\"production\\\", \\\"services\\\": [{\\\"name\\\": \\\"web-app\\\", \\\"instances\\\": 3}], \\\"network\\\": {\\\"vpc\\\": \\\"vpc-12345\\\"}}\",\"inputFormat\":\"json\",\"outputFormat\":\"pdf\",\"templateName\":\"deploymentPlan\",\"includeTableOfContents\":true,\"pageSize\":\"A4\",\"theme\":\"standard\"}", + "description": "Render a deployment plan document in PDF format from JSON describing production environment infrastructure." + }, + { + "inputJson": "{\"inputData\":\"services:\\n - name: database\\n engine: postgres\\n version: 13\\n - name: cache\\n engine: redis\\n version: 6\",\"inputFormat\":\"yaml\",\"outputFormat\":\"html\",\"templateName\":\"operationManual\",\"includeTableOfContents\":false,\"theme\":\"dark\"}", + "description": "Generate an HTML operation manual from YAML defining services with a dark theme, without table of contents." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "infrastructure-management.createPullRequest", + "description": "Creates a pull request on a specified code repository branch with given title, description, and optional reviewers. Accepts repository info, branch names, and PR metadata. Processes inputs by interfacing with repository hosting APIs to create the PR. Outputs the created pull request URL and metadata.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "repositoryProvider", + "type": "string", + "description": "The code hosting service, e.g., GitHub, GitLab, Bitbucket.", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryOwner", + "type": "string", + "description": "Owner or organization of the repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryName", + "type": "string", + "description": "Name of the repository where the PR is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceBranch", + "type": "string", + "description": "Branch containing the changes to be merged.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "Branch into which the changes will be merged, e.g., main or master.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description or body of the pull request.", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of reviewer usernames to request review from.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "accessToken", + "type": "string", + "description": "Authentication token to authorize API calls to the repository provider.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details of the created pull request including URL and metadata, or error info if creation failed." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to programmatically create a pull request for infrastructure code changes or configurations, automating version control workflows and initiating code review processes.", + "limitations": "Cannot create PRs on private repositories without correct access permissions; does not handle merge conflicts or PR approval workflows.", + "examples": [ + "Create a pull request on GitHub for a new infrastructure deployment branch into main.", + "Open a PR on GitLab with description and assign specific reviewers for cloud config changes.", + "Generate a PR for Bitbucket with only title and source/target branches." + ] + }, + "tags": [ + "infrastructure-management", + "pull-request", + "version-control", + "automation", + "devops", + "repository", + "code-collaboration" + ], + "examples": [ + { + "inputJson": "{\"repositoryProvider\":\"GitHub\",\"repositoryOwner\":\"acmeCorp\",\"repositoryName\":\"infra-config\",\"sourceBranch\":\"feature/new-vpc\",\"targetBranch\":\"main\",\"title\":\"Add new VPC configuration\",\"description\":\"This PR adds the new VPC setup for staging environment.\",\"reviewers\":[\"jenkins-bot\",\"devops-lead\"],\"accessToken\":\"ghp_exampleToken123\"}", + "description": "Create a PR on GitHub repository acmeCorp/infra-config from feature/new-vpc into main with reviewers." + }, + { + "inputJson": "{\"repositoryProvider\":\"GitLab\",\"repositoryOwner\":\"cloud-team\",\"repositoryName\":\"terraform-scripts\",\"sourceBranch\":\"update-network\",\"targetBranch\":\"master\",\"title\":\"Update network modules\",\"description\":\"Updates to network modules for improved security.\",\"reviewers\":[],\"accessToken\":\"glpat-exampleToken456\"}", + "description": "Create a simple PR on GitLab without reviewers specified." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "infrastructure-management.createSummary", + "description": "Generates a comprehensive summary report of cloud or physical infrastructure based on provided configuration data, performance metrics, and incident logs. Accepts structured input objects detailing infrastructure components, analyzes key parameters, and produces a clear textual summary highlighting status, bottlenecks, usage trends, and recent events.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureData", + "type": "object", + "description": "Structured data describing components of the infrastructure including servers, network devices, storage, and services.", + "required": true, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Optional performance metrics such as CPU usage, memory consumption, network throughput over a specified period.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "incidentLogs", + "type": "array", + "description": "Optional list of recent incident or alert logs relevant to the infrastructure to include in the summary.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "summaryLevel", + "type": "string", + "description": "Level of detail for the summary output. Valid values are 'high', 'medium', or 'low'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include proactive recommendations for optimization or risk mitigation in the summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a textual summary string and optionally recommendations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a clear, human-readable summary report from detailed infrastructure data to assist in status reporting, decision making, or incident review without requiring manual analysis of raw data.", + "limitations": "It cannot replace real-time monitoring dashboards or provide detailed troubleshooting steps; does not perform automatic remediation or deep predictive analytics.", + "examples": [ + "Generate a medium-detail summary of our cloud infrastructure including recent incidents and performance data.", + "Create a high-level summary report focusing on server and network device status without recommendations.", + "Summarize the physical data center infrastructure and include optimization suggestions." + ] + }, + "tags": [ + "infrastructure", + "summary", + "reporting", + "cloud", + "physical", + "performance", + "incident" + ], + "examples": [ + { + "inputJson": "{\n \"infrastructureData\": {\n \"servers\": [{\"id\": \"srv01\", \"type\": \"web\", \"status\": \"active\"}],\n \"networkDevices\": [{\"id\": \"sw01\", \"type\": \"switch\", \"status\": \"active\"}]\n },\n \"performanceMetrics\": {\"cpuUsage\": 65, \"memoryUsage\": 70},\n \"incidentLogs\": [{\"id\": \"inc123\", \"severity\": \"high\", \"description\": \"Network latency spike\"}],\n \"summaryLevel\": \"medium\",\n \"includeRecommendations\": true\n}", + "description": "Generate a medium-detail summary report including infrastructure data, performance metrics, incident logs and proactive recommendations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "infrastructure-management.createConfig", + "description": "Creates a configuration file for cloud or physical infrastructure setup based on provided parameters. Accepts input such as environment type, resource specifications, network settings, and outputs a structured configuration file in JSON or YAML format suitable for deployment automation.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "environment", + "type": "string", + "description": "Target environment for the configuration, e.g., development, staging, production.", + "required": true, + "defaultValue": "\"production\"" + }, + { + "name": "resourceSpecs", + "type": "object", + "description": "Specifications for resources such as CPU, memory, storage sizes, and instance counts.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkSettings", + "type": "object", + "description": "Network configuration details like subnet IDs, security groups, and load balancer settings.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the configuration file, either 'json' or 'yaml'.", + "required": false, + "defaultValue": "\"yaml\"" + }, + { + "name": "includeMonitoring", + "type": "boolean", + "description": "Whether to include monitoring and logging components in the configuration.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated infrastructure configuration content string and its format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate infrastructure configuration files dynamically for deployment automation, supporting multiple environments and resource specifications to streamline provisioning processes.", + "limitations": "This tool generates configuration files but does not validate deployment feasibility or interact directly with cloud APIs; integration with deployment pipelines and validation tools is required.", + "examples": [ + "Create a prod environment config with specified CPU and memory, output in YAML.", + "Generate a dev config with minimal resources and no monitoring included in JSON format.", + "Produce a staging network config emphasizing custom subnet and security settings." + ] + }, + "tags": [ + "infrastructure", + "configuration", + "cloud", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"environment\":\"production\",\"resourceSpecs\":{\"cpu\":\"4vCPU\",\"memory\":\"16GB\",\"storage\":\"500GB\",\"instanceCount\":3},\"networkSettings\":{\"subnetId\":\"subnet-123abc\",\"securityGroups\":[\"sg-456def\"],\"loadBalancer\":true},\"outputFormat\":\"yaml\",\"includeMonitoring\":true}", + "description": "Generate a production environment config with specified resources, network setup, YAML output including monitoring." + }, + { + "inputJson": "{\"environment\":\"development\",\"resourceSpecs\":{\"cpu\":\"1vCPU\",\"memory\":\"2GB\",\"storage\":\"50GB\",\"instanceCount\":1},\"outputFormat\":\"json\",\"includeMonitoring\":false}", + "description": "Create a simple development environment configuration in JSON without monitoring." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "monitoring.createInvoice", + "description": "Generates a detailed invoice document based on provided monitoring service usage data, client information, and billing parameters. Processes input such as monitored resource statistics, pricing rates, and client details to produce a structured invoice including line items, totals, and payment terms in JSON format.", + "category": "monitoring", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "The full name of the client or organization to be invoiced.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientAddress", + "type": "string", + "description": "Mailing address of the client for invoice records.", + "required": false, + "defaultValue": "" + }, + { + "name": "servicePeriodStart", + "type": "string", + "description": "Start date of the monitoring service billing period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "servicePeriodEnd", + "type": "string", + "description": "End date of the monitoring service billing period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "usageData", + "type": "array", + "description": "An array of objects detailing individual monitored components, their usage metrics and units.", + "required": true, + "defaultValue": "" + }, + { + "name": "pricingRates", + "type": "object", + "description": "Object mapping resource types to their unit costs for billing calculation.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) used for invoice amounts.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Text describing payment terms and conditions for the invoice.", + "required": false, + "defaultValue": "Payment due within 30 days from invoice date." + } + ], + "returns": { + "type": "object", + "description": "Invoice document object including header info, line items with descriptions and costs, total amount due, currency, service period, and payment terms." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate client invoices for monitoring services based on usage statistics and configured pricing. This supports automating billing workflows by transforming monitored metrics into fully structured invoices suitable for record-keeping or dispatch.", + "limitations": "Does not handle invoice dispatch (e.g., email or postal sending) nor payment processing. Assumes usage data and pricing input are validated and finalized. Does not generate graphical or PDF output, only structured invoice data.", + "examples": [ + "Generate an invoice for client 'Acme Corp' covering monitoring usage between 2023-01-01 and 2023-01-31 with detailed usage and rate information.", + "Create a billing invoice in EUR for monitoring resource consumption during Q1 2024 including payment terms of net 15 days.", + "Produce an invoice JSON for monthly monitoring of cloud server metrics with unit prices and total cost calculation." + ] + }, + "tags": [ + "monitoring", + "billing", + "invoice", + "automation", + "usage-based", + "financial" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"clientAddress\":\"123 Industrial Way, Metropolis\",\"servicePeriodStart\":\"2023-01-01\",\"servicePeriodEnd\":\"2023-01-31\",\"usageData\":[{\"resourceType\":\"CPU Hours\",\"quantity\":150},{\"resourceType\":\"GB Memory\",\"quantity\":500}],\"pricingRates\":{\"CPU Hours\":0.25,\"GB Memory\":0.10},\"currency\":\"USD\",\"paymentTerms\":\"Payment due within 30 days.\"}", + "description": "Generate an invoice for Acme Corp with CPU and memory usage during January 2023, applying given unit prices in USD." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "compliance-management.analyzeMessage", + "description": "Analyzes a given communication message to identify potential compliance issues by scanning for regulatory keywords, inappropriate content, or policy violations. Accepts message text and optional metadata, performs linguistic and contextual analysis, and outputs a detailed compliance report with flagged issues and severity levels.", + "category": "compliance-management", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The full text content of the message to analyze for compliance risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageMetadata", + "type": "object", + "description": "Optional metadata about the message such as sender role, channel, timestamp, or message type to provide context for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "complianceFrameworks", + "type": "array", + "description": "List of compliance frameworks or regulations (e.g. GDPR, HIPAA, internal policies) to tailor the analysis accordingly.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "scanLevel", + "type": "string", + "description": "The thoroughness level of scanning: 'basic', 'detailed', or 'exhaustive'. Default is 'detailed'.", + "required": false, + "defaultValue": "detailed" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations for resolving identified compliance issues.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a compliance report listing detected issues with severity, relevance to frameworks, and optional recommendations." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to evaluate messages such as emails, chat logs, or communications to ensure they comply with legal or organizational policies. It helps identify risky language, potential data leaks, or policy breaches before messages are sent or archived.", + "limitations": "The tool cannot replace legal advice or interpret ambiguous compliance requirements. It is limited to text and contextual metadata provided and may not detect hidden or encrypted compliance risks.", + "examples": [ + "Analyze this customer support email for GDPR compliance risks.", + "Check the internal chat message for potential policy violations.", + "Review the outgoing marketing message for compliance with advertising standards." + ] + }, + "tags": [ + "compliance", + "message analysis", + "policy enforcement", + "regulatory", + "risk detection", + "communication" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Please send me the client's social security number via email.\",\"messageMetadata\":{\"senderRole\":\"employee\",\"channel\":\"email\"},\"complianceFrameworks\":[\"HIPAA\"],\"scanLevel\":\"detailed\",\"includeRecommendations\":true}", + "description": "Analyze an employee's email message for HIPAA compliance issues relating to personal health information." + }, + { + "inputJson": "{\"messageText\":\"Use this customer data only for marketing purposes.\",\"messageMetadata\":{\"senderRole\":\"marketing\",\"channel\":\"chat\"},\"complianceFrameworks\":[\"GDPR\"],\"scanLevel\":\"basic\",\"includeRecommendations\":false}", + "description": "Scan marketing chat message for GDPR compliance with limited scanning and no recommendations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "compliance-management.buildFunction", + "description": "This tool generates a customized compliance-checking function based on specified regulatory requirements and organizational policies. It accepts inputs defining rules, compliance criteria, and evaluation logic, then constructs executable code that can be integrated into software systems to automate compliance validation. The output is a function code string ready for deployment or further adaptation.", + "category": "compliance-management", + "parameters": [ + { + "name": "rules", + "type": "array", + "description": "An array of compliance rule objects defining conditions to check, including regulatory clauses and policy statements. Required for function construction.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The target programming language for the generated compliance function (e.g., 'JavaScript', 'Python').", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "functionName", + "type": "string", + "description": "The desired name for the generated compliance-checking function.", + "required": false, + "defaultValue": "checkCompliance" + }, + { + "name": "returnType", + "type": "string", + "description": "The type of value the function should return, such as 'boolean' for pass/fail or 'object' for detailed results.", + "required": false, + "defaultValue": "boolean" + }, + { + "name": "includeLogging", + "type": "boolean", + "description": "Flag indicating whether the generated function includes logging for rule evaluation steps.", + "required": false, + "defaultValue": "false" + }, + { + "name": "policyMetadata", + "type": "object", + "description": "Optional metadata about the policy context, such as policy version, effective dates, or relevant departments, to embed as comments or metadata in the code.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function code as a string and metadata about the function such as language and name. Example: { functionCode: string, language: string, functionName: string }." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate compliance validation by generating code that encapsulates specified regulatory and policy rules. Ideal for embedding compliance checks directly into applications or systems to ensure real-time adherence to standards. It helps to quickly produce customized validation logic without manual coding.", + "limitations": "This tool generates syntactically correct function code based on provided rules but does not verify the legal correctness or completeness of compliance rules. It also cannot execute the generated code or integrate it into existing systems automatically.", + "examples": [ + "Generate a JavaScript function named 'validateGDPRCompliance' that checks for data privacy rules according to GDPR articles supplied as rules.", + "Build a Python function returning detailed compliance report objects, including logs of rule evaluations for an internal corporate security policy.", + "Create a compliance-checking function without logging that returns a simple boolean indicating pass or fail for input HIPAA compliance rules." + ] + }, + "tags": [ + "compliance", + "code-generation", + "automation", + "regulatory", + "policy", + "function-builder" + ], + "examples": [ + { + "inputJson": "{\"rules\":[{\"id\":\"R1\",\"description\":\"User data must be encrypted\",\"condition\":\"data.encrypted === true\"},{\"id\":\"R2\",\"description\":\"Access logs must be retained for 6 months\",\"condition\":\"logs.retentionPeriod >= 180\"}],\"programmingLanguage\":\"JavaScript\",\"functionName\":\"validateCompliance\",\"returnType\":\"boolean\",\"includeLogging\":true,\"policyMetadata\":{\"policyName\":\"Data Security Policy\",\"version\":\"1.2\"}}", + "description": "Generate a JavaScript function named 'validateCompliance' that checks encryption and log retention rules with logging enabled, embedding policy metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "compliance-management.generateText", + "description": "Generates compliance-related textual content such as policies, reports, or audit summaries based on input parameters like compliance domain, regulatory requirements, and organizational context. Accepts structured input describing compliance needs and produces clear, professionally formatted compliance documentation text.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceDomain", + "type": "string", + "description": "The specific compliance area or regulation to address (e.g., GDPR, HIPAA, SOX).", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of text required such as policy, audit report, or compliance summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "organizationContext", + "type": "string", + "description": "Brief description of the organization or environment context to tailor the compliance text.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyRequirements", + "type": "array", + "description": "A list of key regulatory requirements or points to include in the generated text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output text (default is English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the generated text, e.g., formal, neutral, or simplified.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated compliance text as a string, with metadata including the compliance domain and document type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate tailored compliance documentation text such as policies or reports based on given regulatory domains and organizational context, especially to automate or assist compliance teams with initial drafts or summaries.", + "limitations": "This tool cannot replace domain expert legal advice, does not verify real-time regulation updates, and may generate generic content requiring expert review.", + "examples": [ + "Generate a GDPR privacy policy for a financial services company.", + "Create a HIPAA compliance audit summary focusing on data handling.", + "Produce a SOX compliance internal control report in formal tone." + ] + }, + "tags": [ + "compliance", + "text-generation", + "policy", + "audit", + "regulation" + ], + "examples": [ + { + "inputJson": "{\"complianceDomain\":\"GDPR\",\"documentType\":\"policy\",\"organizationContext\":\"A medium-sized e-commerce company based in EU\",\"keyRequirements\":[\"Data subject rights\",\"Data breach notification\"],\"language\":\"en\",\"tone\":\"formal\"}", + "description": "Generate a formal GDPR compliance policy tailored to a European e-commerce company focusing on data subject rights and breach notification." + }, + { + "inputJson": "{\"complianceDomain\":\"HIPAA\",\"documentType\":\"auditReport\",\"organizationContext\":\"Healthcare provider with electronic medical records system\",\"keyRequirements\":[\"Data access controls\",\"Audit trail integrity\"],\"language\":\"en\",\"tone\":\"neutral\"}", + "description": "Create a neutral tone audit report summarizing HIPAA compliance related to access controls and audit trails for a healthcare provider." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "compliance-management.createWord", + "description": "Creates a legal or compliance-related term definition for use in policy documents, contracts, or compliance manuals. Accepts a term name, definition text, jurisdiction, and optional context tags to produce a structured compliance word entry suitable for regulatory document integration.", + "category": "compliance-management", + "parameters": [ + { + "name": "term", + "type": "string", + "description": "The compliance or legal term to be defined.", + "required": true, + "defaultValue": "" + }, + { + "name": "definition", + "type": "string", + "description": "A clear, precise definition explaining the term in the compliance or legal context.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The specific legal jurisdiction or regulatory environment the term applies to (e.g., GDPR, HIPAA).", + "required": false, + "defaultValue": "" + }, + { + "name": "contextTags", + "type": "array", + "description": "Optional list of tags or categories providing additional context about the term (e.g., data privacy, financial regulation).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the structured compliance word including term, definition, jurisdiction, and context tags for use in compliance documentation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a standardized, accurately defined compliance term for inclusion in legal documents, policies, or training materials. It ensures consistent terminology aligned with relevant regulatory frameworks or company policies.", + "limitations": "This tool does not verify legal accuracy or jurisdictional compliance beyond input parameters; definitions should be reviewed by legal professionals. It cannot replace comprehensive legal advice or generate multiple terms at once.", + "examples": [ + "Create a GDPR-specific definition for 'Data Controller' that can be included in a privacy policy.", + "Generate a compliance word definition for 'Confidential Information' applicable to corporate policy.", + "Define 'HIPAA Compliance' clearly for inclusion in healthcare training documentation." + ] + }, + "tags": [ + "compliance", + "legal", + "terminology", + "policy", + "regulation", + "definition" + ], + "examples": [ + { + "inputJson": "{\"term\":\"Data Controller\",\"definition\":\"An entity that determines the purposes and means of processing personal data.\",\"jurisdiction\":\"GDPR\",\"contextTags\":[\"data privacy\",\"personal data\"]}", + "description": "Define 'Data Controller' for GDPR compliance documents." + }, + { + "inputJson": "{\"term\":\"Confidential Information\",\"definition\":\"Information that is proprietary or sensitive and must not be disclosed without authorization.\",\"jurisdiction\":\"\",\"contextTags\":[\"corporate policy\",\"information security\"]}", + "description": "Create a corporate policy definition for 'Confidential Information'." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "security-tools.analyzeKPI", + "description": "Analyzes security-related key performance indicators (KPIs) from provided event and metrics data. The tool accepts an array of KPI definitions and corresponding time-series security data, processes trends and anomalies, and produces a detailed report highlighting security posture, improvement areas, and potential risks.", + "category": "security-tools", + "parameters": [ + { + "name": "kpiDefinitions", + "type": "array", + "description": "An array of security KPI definitions to analyze. Each definition includes KPI name, calculation method, thresholds, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "securityMetrics", + "type": "array", + "description": "Time-series data points representing security events or measurements relevant to the KPIs, including timestamps and metric values.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisPeriod", + "type": "object", + "description": "The time window for the analysis with start and end timestamps in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "anomalyDetectionEnabled", + "type": "boolean", + "description": "Flag to enable detection of abnormal KPI patterns within the analysis period.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis report. Supported formats: 'json', 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing KPI trends, anomaly detections, threshold breaches, and recommendations for security posture improvements." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the performance and effectiveness of security controls over time by analyzing defined KPIs. It helps detect adverse trends and outliers in security metrics, enabling proactive risk mitigation and reporting.", + "limitations": "This tool does not collect raw security data and relies on accurate and complete input metrics. It does not replace expert security audits or detailed forensic analysis.", + "examples": [ + "Analyze security KPIs over the last month to identify any unusual activity spikes.", + "Evaluate firewall and intrusion detection KPIs in JSON format to generate a compliance report.", + "Detect anomalies in security event KPIs during a specified incident response timeframe." + ] + }, + "tags": [ + "security", + "analytics", + "KPI", + "metrics", + "anomaly-detection", + "risk-management", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"kpiDefinitions\":[{\"name\":\"FailedLoginRate\",\"calculationMethod\":\"count of failed login events per 1000 authentications\",\"thresholds\":{\"warning\":50,\"critical\":100},\"description\":\"Rate of failed logins\"}],\"securityMetrics\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"metricName\":\"FailedLoginRate\",\"value\":45},{\"timestamp\":\"2024-05-02T00:00:00Z\",\"metricName\":\"FailedLoginRate\",\"value\":120}],\"analysisPeriod\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-02T23:59:59Z\"},\"anomalyDetectionEnabled\":true,\"outputFormat\":\"json\"}", + "description": "Analyze failed login rate KPI over two days to detect threshold breaches and anomalies." + }, + { + "inputJson": "{\"kpiDefinitions\":[{\"name\":\"PatchCompliance\",\"calculationMethod\":\"percentage of systems with latest security patches applied\",\"thresholds\":{\"warning\":90,\"critical\":80},\"description\":\"System patch compliance level\"}],\"securityMetrics\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"metricName\":\"PatchCompliance\",\"value\":92},{\"timestamp\":\"2024-05-01T00:00:00Z\",\"metricName\":\"PatchCompliance\",\"value\":88}],\"analysisPeriod\":{\"start\":\"2024-04-01T00:00:00Z\",\"end\":\"2024-05-01T23:59:59Z\"},\"anomalyDetectionEnabled\":false,\"outputFormat\":\"text\"}", + "description": "Assess patch compliance KPI between April and May, without anomaly detection, output as text." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "security-tools.analyzeComment", + "description": "Analyzes security-related comments or code review remarks for potential security issues, sentiment, and relevance. Accepts raw comment text or collections of comments, evaluates language and context focusing on security aspects, and outputs categorizations, detected risks, and sentiment score for informed security decision-making.", + "category": "security-tools", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw text of the comment to analyze for security relevance and issues.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the comment (e.g., 'en' for English) to support accurate analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to analyze and include sentiment polarity of the comment text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "contextTags", + "type": "array", + "description": "List of tags describing the context or project area to improve analysis relevance (e.g., ['frontend','authentication']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxRiskLevel", + "type": "string", + "description": "Maximum risk level to report (e.g., 'low','medium','high'). Comments above this level are filtered out.", + "required": false, + "defaultValue": "high" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis results including detected security concerns, risk levels, sentiment scores, and classification labels." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate code review comments or developer remarks specifically for security-related content, identifying potential vulnerabilities or security risks articulated in natural language comments. Useful in automating the triage of security concerns from textual discussions.", + "limitations": "Cannot replace full security code scanning or audit; limited to analysis of comment text and detecting security-related language but not verifying actual code correctness or exploitability.", + "examples": [ + "Analyze this comment for security risks: 'We should sanitize this input to prevent SQL injection.'", + "Check sentiment and security relevance of developer remarks in code reviews.", + "Filter comments mentioning security concerns and classify their risk level." + ] + }, + "tags": [ + "security", + "comment-analysis", + "risk-assessment", + "sentiment-analysis", + "code-review" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"Potential SQL injection vulnerability if input is not sanitized properly.\"}", + "description": "A direct security vulnerability mention." + }, + { + "inputJson": "{\"commentText\":\"Looks good to me, but should we consider authentication on this endpoint?\"}", + "description": "Comment raising a security-related question." + }, + { + "inputJson": "{\"commentText\":\"This UI needs better styling.\", \"includeSentimentAnalysis\":true}", + "description": "Non-security comment included to check filtering and sentiment." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "security-tools.formatAPI", + "description": "Formats and normalizes API specification documents in OpenAPI or Swagger JSON/YAML formats. Accepts raw API specs as string input and outputs a clean, standardized version with consistent indentation, sorted keys, and validated structural elements to improve readability and integration in security workflows.", + "category": "security-tools", + "parameters": [ + { + "name": "apiSpecContent", + "type": "string", + "description": "Raw API specification content in JSON or YAML format that needs formatting and normalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format type of the input API specification. Supported values are 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort the keys alphabetically at each level for consistency and easy diffing.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "If set to true, performs schema validation against OpenAPI/Swagger standards and reports errors if present.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted API specification as a string and an optional array of validation error messages if validation was enabled and issues found." + }, + "aiAgent": { + "useCase": "Use this tool when you have API specification files for RESTful services that need uniform formatting and structure normalization to meet standards, improve readability, or prepare for security analysis and tooling integration. It is especially useful before committing specs to version control or feeding them into security scanners.", + "limitations": "This tool does not generate API specifications from scratch, nor does it fix semantic issues in API design except for schema validation errors. It is not intended for heavy transformation or merging of multiple specs.", + "examples": [ + "Format an OpenAPI JSON spec with 4 spaces indentation and output YAML format.", + "Validate and format Swagger YAML spec with default options.", + "Sort keys and format a JSON API spec to improve diff tracking." + ] + }, + "tags": [ + "security", + "api", + "formatting", + "openapi", + "swagger", + "validation", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"apiSpecContent\":\"{\\\"openapi\\\": \\\"3.0.0\\\", \\\"info\\\": {\\\"version\\\": \\\"1.0.0\\\", \\\"title\\\": \\\"Sample API\\\"}, \\\"paths\\\": {} }\",\"inputFormat\":\"json\",\"indentationSpaces\":2,\"sortKeys\":true,\"validateSchema\":true,\"outputFormat\":\"json\"}", + "description": "Formats a basic OpenAPI JSON spec with default formatting and validation enabled." + }, + { + "inputJson": "{\"apiSpecContent\":\"openapi: 3.0.0\\ninfo:\\n title: Sample API\\n version: 1.0.0\\npaths: {}\\n\",\"inputFormat\":\"yaml\",\"indentationSpaces\":4,\"sortKeys\":true,\"validateSchema\":true,\"outputFormat\":\"yaml\"}", + "description": "Formats an OpenAPI YAML spec with 4-space indentation and sorts keys." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "security-tools.composeWord", + "description": "Generates a secure, pronounceable password or passphrase word based on specified criteria. Accepts parameters defining length, complexity, character sets, and pronounceability heuristics to output a single strong word suitable for authentication and security uses.", + "category": "security-tools", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Desired length of the composed word (number of characters).", + "required": true, + "defaultValue": "12" + }, + { + "name": "includeUppercase", + "type": "boolean", + "description": "Whether to include uppercase letters in the composed word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeNumbers", + "type": "boolean", + "description": "Whether to include numeric digits in the composed word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSymbols", + "type": "boolean", + "description": "Whether to include special symbols in the composed word.", + "required": false, + "defaultValue": "false" + }, + { + "name": "pronounceable", + "type": "boolean", + "description": "Generate a word that is easier to pronounce by alternating consonants and vowels.", + "required": false, + "defaultValue": "true" + }, + { + "name": "allowedSymbols", + "type": "string", + "description": "A string of allowed symbol characters to choose from if includeSymbols is true.", + "required": false, + "defaultValue": "!@#$%^&*()" + }, + { + "name": "seed", + "type": "string", + "description": "Optional seed string for deterministic word generation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secure word as a single string." + }, + "aiAgent": { + "useCase": "Use this tool when an application or user needs to generate secure, memorable password words or passphrases that balance security with usability. Ideal for systems needing strong random keys or passwords that are easier to recall yet hard to guess or crack.", + "limitations": "This tool does not generate multi-word passphrases or full sentences. It also cannot guarantee compliance with specific password policies beyond the given parameters. It cannot generate words based on dictionary words or user-specific semantic meanings.", + "examples": [ + "Generate a 16-character secure password word including uppercase letters and numbers, no symbols, and pronounceable.", + "Create a 12-character random secure word with uppercase, numbers, and special symbols allowed.", + "Produce an 8-character pronounceable password word without numbers or symbols." + ] + }, + "tags": [ + "security", + "password", + "password-generator", + "compose", + "authentication", + "passphrase", + "secure-word" + ], + "examples": [ + { + "inputJson": "{\"length\":16,\"includeUppercase\":true,\"includeNumbers\":true,\"includeSymbols\":false,\"pronounceable\":true}", + "description": "Generate a 16-character pronounceable secure password word with uppercase and numbers, no symbols." + }, + { + "inputJson": "{\"length\":12,\"includeUppercase\":true,\"includeNumbers\":true,\"includeSymbols\":true,\"allowedSymbols\":\"!@#\",\"pronounceable\":false}", + "description": "Generate a 12-character secure random word including uppercase letters, numbers, and permitted symbols !@# without pronounceability." + }, + { + "inputJson": "{\"length\":8,\"includeUppercase\":false,\"includeNumbers\":false,\"includeSymbols\":false,\"pronounceable\":true}", + "description": "Generate an 8-character fully lowercase pronounceable word without digits or symbols." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "security-tools.generateLink", + "description": "Generates secure, time-limited, and optionally single-use access links for resources in secure applications. Accepts a target URL or resource identifier, expiration duration, and flags for one-time use and IP restrictions. Produces a signed URL with embedded security tokens ensuring controlled access.", + "category": "security-tools", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL or resource identifier for which to generate the secure access link.", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Duration in seconds after which the generated link expires. If 0 or omitted, the link does not expire.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "oneTimeUse", + "type": "boolean", + "description": "Whether the generated link should be valid for a single use only, invalidating after first use.", + "required": false, + "defaultValue": "false" + }, + { + "name": "allowedIpAddresses", + "type": "array", + "description": "List of IP addresses allowed to use the link. Empty array means no IP restrictions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "secretKey", + "type": "string", + "description": "Secret key used to sign the link to ensure authenticity and prevent tampering.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the signed secure link URL and the expiration timestamp (ISO 8601) or null if no expiration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to provide secured access links to sensitive resources where link expiry, usage limitations, and IP restrictions are required. Ideal for generating temporary download links, password reset URLs, or secure invitations in applications where controlled access is vital.", + "limitations": "This tool does not handle link delivery or management of link usage state; external infrastructure must track single-use enforcement. It cannot generate links without a known secret key or protect against active man-in-the-middle attacks on transmitted URLs.", + "examples": [ + "Generate a secure download link to example.com/file123 valid for 30 minutes and restricted to 2 IPs.", + "Create a one-time use password reset link expiring after 1 hour.", + "Generate a permanent (no expiration) secure invitation link without IP restrictions." + ] + }, + "tags": [ + "security", + "link generation", + "signed url", + "access control", + "temporary link", + "one-time use" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://secure.example.com/resource/abc123\",\"expirationSeconds\":1800,\"oneTimeUse\":true,\"allowedIpAddresses\":[\"203.0.113.5\",\"198.51.100.20\"],\"secretKey\":\"mysecretkey123\"}", + "description": "Generate a single-use link valid for 30 minutes, restricted to two IP addresses." + }, + { + "inputJson": "{\"targetUrl\":\"https://secure.example.com/reset-password/xyz789\",\"expirationSeconds\":3600,\"oneTimeUse\":true,\"allowedIpAddresses\":[],\"secretKey\":\"resetSecret456\"}", + "description": "Generate a one-time use password reset link valid for one hour with no IP restrictions." + }, + { + "inputJson": "{\"targetUrl\":\"https://secure.example.com/invite/party\",\"expirationSeconds\":0,\"oneTimeUse\":false,\"allowedIpAddresses\":[],\"secretKey\":\"inviteKey789\"}", + "description": "Create a permanent invitation link with no expiration and no usage or IP limitations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "security-tools.createCredential", + "description": "Generates a secure digital credential such as API keys, tokens, or certificates based on specified parameters including type, expiration, and associated metadata. Accepts inputs defining credential properties, creates a cryptographically secure credential, and returns details including the credential string and metadata for integration.", + "category": "security-tools", + "parameters": [ + { + "name": "credentialType", + "type": "string", + "description": "Type of credential to create, e.g., 'apiKey', 'token', 'certificate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Number of seconds until the credential expires. If 0, the credential does not expire.", + "required": false, + "defaultValue": "0" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional data to associate with the credential such as user ID, roles, or scopes.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Length in characters for credentials like API keys or tokens. Ignored for certificates.", + "required": false, + "defaultValue": "32" + }, + { + "name": "algorithm", + "type": "string", + "description": "Cryptographic algorithm to use for credential generation, e.g., 'HS256', 'RS256'. Relevant for tokens and certificates.", + "required": false, + "defaultValue": "HS256" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated credential string, expiration timestamp if applicable, type, and included metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an application or system requires generating secure credentials to authenticate or authorize users, services, or applications. Ideal for creating API keys, JWT tokens, or certificates dynamically with configurable security parameters.", + "limitations": "This tool does not manage credential storage or revocation. It does not handle user identity verification or credential lifecycle management beyond initial creation.", + "examples": [ + "Create a new API key for a service with a 24-hour expiration.", + "Generate a JWT token with specific user roles embedded in metadata.", + "Create a long-lived certificate credential for inter-service authentication." + ] + }, + "tags": [ + "security", + "credentials", + "apiKey", + "token", + "certificate", + "authentication", + "authorization", + "credentialGeneration" + ], + "examples": [ + { + "inputJson": "{\"credentialType\":\"apiKey\",\"expirationSeconds\":3600,\"metadata\":{\"userId\":\"user123\",\"scope\":\"read:messages\"},\"length\":40}", + "description": "Create a 40-character API key for user123 with read permissions and 1-hour expiration." + }, + { + "inputJson": "{\"credentialType\":\"token\",\"expirationSeconds\":86400,\"metadata\":{\"roles\":[\"admin\",\"editor\"]},\"algorithm\":\"HS512\"}", + "description": "Generate a JWT token with admin and editor roles, expiring in 24 hours, signed with HS512." + }, + { + "inputJson": "{\"credentialType\":\"certificate\",\"metadata\":{\"service\":\"paymentGateway\"}}", + "description": "Create a certificate credential associated with the paymentGateway service without expiration." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "security-tools.createQuery", + "description": "Creates a secure, parameterized SQL query template based on user-defined query parameters and security options. Accepts a base table name, fields to select, filters, sort orders, and options to prevent SQL injection. Outputs a query object with an SQL string and associated parameters ready for safe execution.", + "category": "security-tools", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "The name of the database table to query.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectFields", + "type": "array", + "description": "List of fields/columns to select from the table.", + "required": true, + "defaultValue": "[\"*\"]" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs representing column names and their filter values for the WHERE clause. Supports basic operations: equals, range, like.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sortOrders", + "type": "array", + "description": "An array of objects defining sorting, each with field and direction ('ASC' or 'DESC').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of records to return.", + "required": false, + "defaultValue": "100" + }, + { + "name": "offset", + "type": "number", + "description": "Number of records to skip for pagination.", + "required": false, + "defaultValue": "0" + }, + { + "name": "preventSqlInjection", + "type": "boolean", + "description": "Enforce parameterized query format to prevent SQL injection attacks.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed secure SQL query string and corresponding parameters for safe execution." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate SQL queries dynamically but securely for applications requiring safe database access. Ideal for AI agents automating backend query generation while avoiding injection vulnerabilities. It helps build queries from structured inputs with pagination, filtering, and sorting.", + "limitations": "This tool only creates query strings and parameters; it does not execute queries or validate semantic correctness of complex SQL features beyond basic SELECT statements. It assumes simple filter conditions and does not support nested queries or joins.", + "examples": [ + "Create a SELECT query for user data filtering by age between 18 and 30, sorted by last login descending.", + "Generate a query for retrieving product details limited to 50 records with name matching a pattern, offset by 100 records.", + "Build a secure parameterized query selecting specified fields from orders table with multiple filters and pagination." + ] + }, + "tags": [ + "security", + "sql", + "query", + "database", + "parameterized-query", + "sql-injection-prevention" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"users\",\"selectFields\":[\"id\",\"username\",\"email\"],\"filters\":{\"age\":{\"min\":18,\"max\":30}},\"sortOrders\":[{\"field\":\"last_login\",\"direction\":\"DESC\"}],\"limit\":20,\"offset\":0,\"preventSqlInjection\":true}", + "description": "Select id, username, email from users aged between 18 and 30, ordered by last login descending, limited to 20 results." + }, + { + "inputJson": "{\"tableName\":\"products\",\"selectFields\":[\"product_id\",\"name\",\"price\"],\"filters\":{\"name\":{\"like\":\"%Laptop%\"}},\"limit\":50,\"offset\":100,\"preventSqlInjection\":true}", + "description": "Retrieve product_id, name, price from products with name containing 'Laptop', limit 50 results, skip first 100." + }, + { + "inputJson": "{\"tableName\":\"orders\",\"selectFields\":[\"order_id\",\"user_id\",\"total\"],\"filters\":{\"status\":\"completed\",\"total\":{\"min\":100}},\"sortOrders\":[{\"field\":\"order_date\",\"direction\":\"ASC\"}],\"limit\":10,\"offset\":0,\"preventSqlInjection\":true}", + "description": "Get first 10 completed orders with total >= 100, sorted by order date ascending." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "customer-support.analyzeLead", + "description": "Analyzes customer lead data provided as input to evaluate lead quality, engagement level, and likelihood to convert. Accepts lead attributes such as contact info, interaction history, and demographic details, then uses scoring algorithms and predictive analytics to produce a lead score, segmentation category, and actionable insights to prioritize follow-up.", + "category": "customer-support", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "An object containing the lead's details including contact info, interaction history, demographics, and any available behavioral data.", + "required": true, + "defaultValue": "" + }, + { + "name": "scoringModel", + "type": "string", + "description": "Optional identifier of the scoring model or algorithm to use for analysis. Defaults to standard scoring if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSegmentation", + "type": "boolean", + "description": "Whether to include audience segmentation in the output based on lead characteristics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') for the output insights to support localization.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing the lead score (number), segmentation category (string), confidence level (number), and an array of actionable insights or recommendations for sales or marketing follow-up." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess the quality and priority of customer leads based on available data to help sales teams focus efforts on leads most likely to convert. It supports lead scoring, segmentation, and tailored recommendations.", + "limitations": "The tool cannot guarantee conversion but only provides predictive scores based on input data quality. It requires accurate and sufficient lead data to function effectively. It does not perform outreach or update lead records automatically.", + "examples": [ + "Analyze the given lead to determine their sales potential and suggest next steps.", + "Evaluate this lead's engagement and assign a priority score for follow-up.", + "Provide segmentation and conversion likelihood for the provided customer lead data." + ] + }, + "tags": [ + "customer support", + "lead analysis", + "sales", + "crm", + "lead scoring", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phone\":\"123-456-7890\",\"interactions\":[{\"type\":\"email_open\",\"date\":\"2024-05-01\"},{\"type\":\"web_visit\",\"page\":\"pricing\",\"date\":\"2024-05-03\"}],\"demographics\":{\"industry\":\"technology\",\"companySize\":150}},\"scoringModel\":\"standard\",\"includeSegmentation\":true,\"language\":\"en\"}", + "description": "Analyze a technology sector lead with email and web interaction history to assess conversion likelihood and generate segmentation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "customer-support.draftDocument", + "description": "This tool drafts customer support documents such as email responses, FAQs, or troubleshooting guides based on the provided customer query, issue description, and context. It processes input parameters to generate a clear, professional support document tailored to the customer's needs.", + "category": "customer-support", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of document to draft, e.g., 'email', 'FAQ', or 'troubleshooting guide'.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerQuery", + "type": "string", + "description": "The customer's question or issue description that the document will address.", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Name of the relevant product or service involved in the support request.", + "required": false, + "defaultValue": "" + }, + { + "name": "customerName", + "type": "string", + "description": "Name of the customer to personalize the document; optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSteps", + "type": "boolean", + "description": "Whether to include step-by-step instructions if applicable.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the document, e.g., 'formal', 'friendly', or 'concise'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "additionalContext", + "type": "string", + "description": "Any extra information that should be considered when drafting the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted document text and meta-information such as word count and document type." + }, + "aiAgent": { + "useCase": "Use this tool when a customer support AI needs to generate clear, context-aware documents like replies, FAQs, or guides responding to specific customer issues or queries. It helps automate creating professional support content tailored to user inputs and desired style.", + "limitations": "This tool cannot replace highly specialized technical writing or legal documents. It may not capture very complex cases without detailed input. It also does not send the document, only drafts it.", + "examples": [ + "Draft a friendly email response to a customer reporting login issues with our app.", + "Create a concise troubleshooting guide for resetting the device connected to product X.", + "Generate an FAQ entry addressing common questions about subscription cancellation." + ] + }, + "tags": [ + "customer-support", + "drafting", + "documentation", + "email-response", + "faq", + "troubleshooting" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"email\",\"customerQuery\":\"I can't log into my account despite entering the correct password.\",\"productName\":\"SuperApp\",\"customerName\":\"John\",\"includeSteps\":true,\"tone\":\"friendly\"}", + "description": "Draft a friendly email response helping John with his login issue in SuperApp including step-by-step guidance." + }, + { + "inputJson": "{\"documentType\":\"troubleshooting guide\",\"customerQuery\":\"Device not connecting to Wi-Fi.\",\"productName\":\"SmartSpeaker 3000\",\"includeSteps\":true,\"tone\":\"formal\"}", + "description": "Create a formal troubleshooting guide for connectivity issues with SmartSpeaker 3000 including detailed steps." + }, + { + "inputJson": "{\"documentType\":\"FAQ\",\"customerQuery\":\"How do I cancel my subscription?\",\"tone\":\"concise\"}", + "description": "Generate a concise FAQ entry explaining how users can cancel their subscription." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "customer-support.buildServer", + "description": "This tool provisions and configures a dedicated customer support server environment tailored for help desk operations. Users input server specifications such as hardware, operating system, support software stack, and network settings. The tool automates setup steps and returns a detailed deployment report including server status, IP address, installed software list, and access credentials.", + "category": "customer-support", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server to build (e.g., virtual, dedicated)", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate", + "required": true, + "defaultValue": "4" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in GB", + "required": true, + "defaultValue": "16" + }, + { + "name": "storageGB", + "type": "number", + "description": "Storage size in GB", + "required": true, + "defaultValue": "100" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install (e.g., Ubuntu 20.04, Windows Server 2019)", + "required": true, + "defaultValue": "" + }, + { + "name": "supportSoftwareStack", + "type": "array", + "description": "List of support software to install (e.g., ticketing system, live chat)", + "required": true, + "defaultValue": "[\"osTicket\",\"Zendesk\"]" + }, + { + "name": "networkConfiguration", + "type": "object", + "description": "Network settings including IP assignment, firewall rules, and ports to open", + "required": false, + "defaultValue": "" + }, + { + "name": "enableSSL", + "type": "boolean", + "description": "Whether to enable SSL/TLS for secure connections", + "required": false, + "defaultValue": "true" + }, + { + "name": "adminEmail", + "type": "string", + "description": "Email address for server administrator notifications", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing server build confirmation details including server ID, IP address, OS, installed software, network info, and admin credentials." + }, + "aiAgent": { + "useCase": "Use this tool when needing to provision a dedicated server environment specifically configured for customer support operations, including installation of relevant help desk software and network setup. It automates infrastructure deployment for support teams.", + "limitations": "This tool does not handle scaling existing servers or migrating data from old systems. It does not manage long-term server maintenance or backups.", + "examples": [ + "Set up a dedicated Linux server with osTicket and live chat software for customer support", + "Build a virtual Windows Server 2019 with Zendesk and configure network firewall rules", + "Provision a 16GB RAM customer support server with SSL enabled and notify admin@example.com upon completion" + ] + }, + "tags": [ + "customer support", + "server provisioning", + "help desk", + "infrastructure", + "automation", + "customer service" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"dedicated\",\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":500,\"operatingSystem\":\"Ubuntu 22.04\",\"supportSoftwareStack\":[\"osTicket\",\"LiveAgent\"],\"networkConfiguration\":{\"ipAssignment\":\"static\",\"firewallRules\":[{\"port\":443,\"protocol\":\"TCP\",\"action\":\"allow\"}]},\"enableSSL\":true,\"adminEmail\":\"admin@company.com\"}", + "description": "Provision a high-performance dedicated Ubuntu server with help desk software and custom firewall settings." + }, + { + "inputJson": "{\"serverType\":\"virtual\",\"cpuCores\":4,\"memoryGB\":16,\"storageGB\":200,\"operatingSystem\":\"Windows Server 2019\",\"supportSoftwareStack\":[\"Zendesk\"],\"enableSSL\":false,\"adminEmail\":\"support@company.com\"}", + "description": "Build a virtual Windows server with Zendesk installed, SSL disabled, and admin notifications configured." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "customer-support.generateParagraph", + "description": "Generates a clear, concise paragraph suitable for customer support communications. Accepts context about the issue, desired tone, and preferred language, then produces a professionally phrased paragraph that can be used to respond to customers, ensuring consistency and clarity in support messages.", + "category": "customer-support", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "Detailed information about the customer issue or topic to address in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the paragraph, such as 'formal', 'friendly', or 'empathetic'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "language", + "type": "string", + "description": "The language code for the output paragraph, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeNextSteps", + "type": "boolean", + "description": "Whether to include suggested next steps or solutions in the paragraph.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text and metadata such as word count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to craft or draft customer support responses based on a given issue context. Helpful for maintaining consistent tone and language style in customer communications, or when generating templated paragraphs that can be further customized.", + "limitations": "Cannot replace personalized, case-specific advice that requires deep understanding of customer history or sensitive company policies. May produce generic responses if context is too vague.", + "examples": [ + "Generate a friendly paragraph explaining a refund process based on the provided issue details.", + "Create an empathetic response paragraph regarding a delivery delay in Spanish.", + "Produce a formal summary paragraph clarifying troubleshooting steps for a software issue." + ] + }, + "tags": [ + "customer-support", + "text-generation", + "communication", + "response", + "paragraph", + "tone", + "multilingual" + ], + "examples": [ + { + "inputJson": "{\"context\":\"Customer reports inability to reset password via the online portal due to receiving no reset email.\",\"tone\":\"empathetic\",\"language\":\"en\",\"includeNextSteps\":true}", + "description": "Generate an empathetic paragraph addressing a password reset issue including next steps." + }, + { + "inputJson": "{\"context\":\"Customer asks about status of delayed order #12345.\",\"tone\":\"friendly\",\"language\":\"en\",\"includeNextSteps\":false}", + "description": "Create a friendly paragraph updating customer about delayed order status without suggesting next steps." + }, + { + "inputJson": "{\"context\":\"Customer complains about frequent app crashes after the latest update.\",\"tone\":\"formal\",\"language\":\"en\",\"includeNextSteps\":true}", + "description": "Produce a formal paragraph acknowledging the app issue and suggesting next steps for troubleshooting." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "customer-support.createMetric", + "description": "This tool creates a customized customer support metric by accepting parameters such as name, description, calculation formula, relevant data fields, and time aggregation. It processes these inputs to define a metric object that can be used for tracking support performance indicators and analytics.", + "category": "customer-support", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The unique name identifier for the customer support metric to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed explanation of what the metric measures and its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "formula", + "type": "string", + "description": "A calculation formula expressed as a string, defining how to compute the metric from support data fields (e.g., 'resolvedTickets / totalTickets').", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFields", + "type": "array", + "description": "An array of strings specifying which data fields from the support system are involved in the metric calculation.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "aggregationPeriod", + "type": "string", + "description": "The time interval used to aggregate the metric data (e.g., 'daily', 'weekly', 'monthly').", + "required": true, + "defaultValue": "daily" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional object defining threshold values for metric alerts, e.g., {\"warning\":0.8, \"critical\":0.5}.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created metric including its name, description, formula, data fields, aggregation period, and any alert thresholds defined." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to define and create new customer support metrics for monitoring support performance, such as ticket resolution rates, average response time, or customer satisfaction scores, tailored to specific business needs and datasets.", + "limitations": "This tool does not compute real-time metric values or retrieve historical data; it only defines and registers the metric specification for subsequent data processing or reporting.", + "examples": [ + "Create a metric named 'First Response Time' calculated as the average time between ticket creation and first agent response, aggregated daily.", + "Define a customer satisfaction score metric based on survey results fields with thresholds for alerts.", + "Set up a weekly ticket resolution rate metric using counts of resolved tickets and total tickets." + ] + }, + "tags": [ + "customer-support", + "analytics", + "metric-creation", + "performance", + "help-desk", + "custom-metrics" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"FirstResponseTime\",\"description\":\"Average time from ticket creation until first agent response.\",\"formula\":\"avg(firstResponseTimestamp - ticketCreationTimestamp)\",\"dataFields\":[\"firstResponseTimestamp\",\"ticketCreationTimestamp\"],\"aggregationPeriod\":\"daily\"}", + "description": "Creating a daily metric to measure average first response time for support tickets." + }, + { + "inputJson": "{\"metricName\":\"CustomerSatisfactionScore\",\"formula\":\"avg(surveyScore)\",\"dataFields\":[\"surveyScore\"],\"aggregationPeriod\":\"monthly\",\"thresholds\":{\"warning\":3.5,\"critical\":2.0},\"description\":\"Monthly average customer satisfaction based on survey scores.\"}", + "description": "Defining a monthly customer satisfaction score metric with alert thresholds for warning and critical low scores." + }, + { + "inputJson": "{\"metricName\":\"TicketResolutionRate\",\"formula\":\"resolvedTickets / totalTickets\",\"dataFields\":[\"resolvedTickets\",\"totalTickets\"],\"aggregationPeriod\":\"weekly\"}", + "description": "Weekly metric calculating the fraction of tickets resolved out of total tickets created." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "customer-support.createInvoice", + "description": "Creates a detailed invoice for customer billing based on provided customer information, list of purchased products or services, quantities, prices, tax rates, discounts, and payment terms. Outputs a structured invoice document with calculated totals and optionally formatted for printing or electronic delivery.", + "category": "customer-support", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier for the customer to associate the invoice with", + "required": true, + "defaultValue": "" + }, + { + "name": "lineItems", + "type": "array", + "description": "Array of invoice line items including product or service identifiers, descriptions, quantities, and unit prices", + "required": true, + "defaultValue": "" + }, + { + "name": "taxPercentage", + "type": "number", + "description": "The tax rate to apply to taxable items, expressed as a percentage (e.g., 7.5 for 7.5%)", + "required": true, + "defaultValue": "0" + }, + { + "name": "discountAmount", + "type": "number", + "description": "Total discount amount to deduct from the invoice subtotal, if any", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (ISO 4217) for the invoice amounts, e.g. USD, EUR", + "required": true, + "defaultValue": "USD" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Terms of payment such as 'Net 30' or 'Due on receipt' to include on the invoice", + "required": false, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "The date the invoice is issued (ISO 8601 date format)", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "The date payment is due (ISO 8601 date format)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created invoice including a unique invoice ID, calculated subtotal, tax amount, discount applied, total amount due, and a detailed breakdown of line items with amounts." + }, + "aiAgent": { + "useCase": "Use this tool when generating a new invoice for a customer after a sale or service completion, requiring a formal billing document that summarizes products or services provided, pricing, taxes, discounts, and payment terms. Ideal for automating billing workflows in customer support and finance.", + "limitations": "This tool does not process payments or track payment status. It assumes valid customer and product information are provided and does not validate data integrity beyond basic structure.", + "examples": [ + "Generate an invoice for customer ID 'CUST123' for 3 units of product 'PROD45' at $20 each, with 7.5% tax and 'Net 30' terms.", + "Create an invoice specifying a $10 discount and due date 30 days after invoice date for customer 'CUST789'.", + "Produce an invoice in EUR currency for multiple services with no discounts and immediate payment terms." + ] + }, + "tags": [ + "invoice", + "billing", + "customer-support", + "finance", + "document-generation", + "payments" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"CUST123\",\"lineItems\":[{\"productId\":\"PROD45\",\"description\":\"Wireless Mouse\",\"quantity\":3,\"unitPrice\":20.00}],\"taxPercentage\":7.5,\"discountAmount\":0,\"currency\":\"USD\",\"paymentTerms\":\"Net 30\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-07-01\"}", + "description": "Invoice for 3 wireless mice at $20 each, 7.5% tax, Net 30 payment terms." + }, + { + "inputJson": "{\"customerId\":\"CUST789\",\"lineItems\":[{\"productId\":\"SRV101\",\"description\":\"Consulting Service\",\"quantity\":5,\"unitPrice\":150.00}],\"taxPercentage\":0,\"discountAmount\":10,\"currency\":\"USD\",\"paymentTerms\":\"Due on receipt\",\"invoiceDate\":\"2024-06-10\",\"dueDate\":\"\"}", + "description": "Invoice for 5 consulting hours at $150 each with $10 discount and immediate payment due." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "marketing-automation.createLead", + "description": "Creates a new marketing lead record in the CRM system by accepting lead details such as name, contact info, source, and optional tags. Validates input fields, applies default values where missing, and outputs a structured lead object including a unique ID and creation timestamp.", + "category": "marketing-automation", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "Lead's first name to identify the contact.", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "Lead's last name to identify the contact.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Primary email address for the lead; used for communication.", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Optional phone number for direct contact.", + "required": false, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Origin of the lead, e.g., webinar, social media, referral.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or labels to categorize the lead.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "optInConsent", + "type": "boolean", + "description": "Indicates whether the lead has given consent to receive marketing communications.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created lead with unique ID, timestamps, and all provided and defaulted attributes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically add new leads into the marketing CRM system during automated intake or data import workflows. Helps standardize lead data capture and ensures necessary fields are present before creation.", + "limitations": "Does not validate emails against external services or enrich lead data beyond provided inputs. Cannot update existing leads or perform bulk imports in a single call.", + "examples": [ + "Create a new lead from website sign-up data with full contact info and source.", + "Add a lead from a social media campaign with minimal contact info and consent status.", + "Generate a lead entry tagging it as a 'VIP prospect' for targeted campaigns." + ] + }, + "tags": [ + "marketing", + "lead management", + "automation", + "CRM", + "data entry", + "contact capture" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"+1234567890\",\"source\":\"webinar\",\"tags\":[\"webinar2024\",\"potential-client\"],\"optInConsent\":true}", + "description": "Create a lead from webinar event sign-up with full contact details and tags." + }, + { + "inputJson": "{\"firstName\":\"Bob\",\"lastName\":\"Smith\",\"email\":\"bob.smith@example.com\",\"source\":\"social media\",\"tags\":[\"facebook-ad\"]}", + "description": "Create a lead from a social media ad with required fields and one tag." + }, + { + "inputJson": "{\"firstName\":\"Emily\",\"lastName\":\"Clark\",\"email\":\"emily.clark@example.com\",\"source\":\"referral\",\"optInConsent\":false}", + "description": "Create a lead from referral source without marketing consent." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "marketing-automation.createModule", + "description": "Creates a customizable marketing automation module based on the specified campaign type, target audience, messaging, and triggers. Accepts configuration parameters to generate a ready-to-deploy module that integrates with common marketing platforms, outputting the module code and deployment instructions.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign to automate (e.g., email, social media, SMS)", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "object", + "description": "Demographic and behavioral criteria defining the target audience segment for the campaign", + "required": true, + "defaultValue": "" + }, + { + "name": "messageTemplates", + "type": "array", + "description": "Array of message templates to use for the campaign, supporting personalization variables", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "List of event triggers that start or influence the automation flow (e.g., user signup, cart abandonment)", + "required": true, + "defaultValue": "" + }, + { + "name": "integrationPlatform", + "type": "string", + "description": "Marketing platform or CRM system to integrate the module with (e.g., Mailchimp, HubSpot)", + "required": false, + "defaultValue": "generic" + }, + { + "name": "scheduleSettings", + "type": "object", + "description": "Scheduling details including send times, frequency, and timezone", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing automation module's source code, configuration details, and deployment instructions." + }, + "aiAgent": { + "useCase": "Use this tool when designing and generating custom marketing automation modules tailored to specific campaign strategies and target audiences. It helps quickly produce ready-to-deploy modules integrated with popular marketing platforms, streamlining campaign launch and management.", + "limitations": "Does not execute or deploy the generated module; integration specifics might require manual adjustments for non-standard platforms.", + "examples": [ + "Create an email marketing automation module targeting new users with a welcome sequence triggered on signup.", + "Generate a social media automation module for retargeting users who abandoned their cart using personalized message templates.", + "Build an SMS marketing module automated by user inactivity periods, integrated with HubSpot." + ] + }, + "tags": [ + "marketing", + "automation", + "module", + "campaign", + "integration", + "email", + "social-media" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"targetAudience\":{\"ageRange\":[25,40],\"interests\":[\"fitness\",\"wellness\"]},\"messageTemplates\":[\"Hi {{firstName}}, check out our new fitness plans!\"],\"triggers\":[\"userSignup\"],\"integrationPlatform\":\"Mailchimp\",\"scheduleSettings\":{\"sendTime\":\"09:00\",\"frequency\":\"weekly\",\"timezone\":\"EST\"}}", + "description": "Create an email campaign module targeting fitness-interested users aged 25-40 with a welcome email triggered on signup integrated with Mailchimp." + }, + { + "inputJson": "{\"campaignType\":\"socialMedia\",\"targetAudience\":{\"location\":\"USA\",\"deviceType\":\"mobile\"},\"messageTemplates\":[\"Don't miss our exclusive offers!\"],\"triggers\":[\"cartAbandonment\"],\"integrationPlatform\":\"FacebookAds\"}", + "description": "Generate a social media retargeting module for mobile users in the USA who abandoned their shopping cart using Facebook Ads integration." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "sales-automation.createMessage", + "description": "Creates a customized sales message for outreach purposes based on lead information and campaign context. Accepts input parameters like recipient name, company, product details, and tone preferences to generate a personalized text message suitable for email or other communication channels.", + "category": "sales-automation", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the person to whom the message will be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientCompany", + "type": "string", + "description": "Company name of the recipient for contextual personalization", + "required": false, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Name of the product or service being promoted", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignContext", + "type": "string", + "description": "Brief description of the sales campaign or offer context to tailor the message content", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the message, e.g., formal, friendly, enthusiastic", + "required": false, + "defaultValue": "formal" + }, + { + "name": "callToAction", + "type": "string", + "description": "Call to action to include in the message, such as 'Schedule a demo' or 'Reply for details'", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the personalized sales message string ready for sending or further customization" + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate personalized sales outreach messages that incorporate specific lead data, campaign details, and tone preferences to increase engagement. Ideal for automating parts of the lead nurturing process by quickly producing customized communication drafts.", + "limitations": "Does not send messages or integrate with communication platforms. Does not validate contact information or legal compliance for messaging. Message quality depends on input accuracy and detail.", + "examples": [ + "Create a friendly introductory message for Sarah at TechCorp about the new CRM platform with a 'Schedule a demo' call to action.", + "Generate a formal sales email for a prospect named John in the financial sector promoting an exclusive offer with a encouraging call to action to reply for details." + ] + }, + "tags": [ + "sales", + "automation", + "message-generation", + "lead-management", + "personalization", + "outreach" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Alice Johnson\",\"recipientCompany\":\"Innovatech\",\"productName\":\"SmartAnalytics Pro\",\"campaignContext\":\"Q3 product launch with 20% discount\",\"tone\":\"friendly\",\"callToAction\":\"Book a free trial\"}", + "description": "Create a friendly, personalized message for Alice at Innovatech about SmartAnalytics Pro product launch with a trial booking CTA." + }, + { + "inputJson": "{\"recipientName\":\"Michael Smith\",\"productName\":\"CloudSafe Backup\",\"tone\":\"formal\",\"callToAction\":\"Contact us for a demo\"}", + "description": "Generate a formal outreach message for Michael about the CloudSafe Backup product including a demo contact call to action." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "human-resources.generateDocument", + "description": "Generates a customized HR document such as offer letters, contracts, or employee agreements by accepting a document type, employee details, and optional custom clauses. Produces a formatted document string ready for review or sending.", + "category": "human-resources", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of HR document to generate, e.g., 'offerLetter', 'contract', or 'nda'.", + "required": true, + "defaultValue": "" + }, + { + "name": "employeeName", + "type": "string", + "description": "Full name of the employee the document is about.", + "required": true, + "defaultValue": "" + }, + { + "name": "employeePosition", + "type": "string", + "description": "Position or job title of the employee relevant to the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Employment start date in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "salary", + "type": "number", + "description": "Annual salary amount to include, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "customClauses", + "type": "array", + "description": "Optional array of additional contract clauses as strings to be appended.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSignaturePlaceholder", + "type": "boolean", + "description": "Whether to include a placeholder section for signatures at the end of the document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document text and metadata such as document type and employee info." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate legally formatted HR documents like offer letters or employment contracts customized to employee data and company needs. It can save time by producing draft-ready documents that require minimal manual editing.", + "limitations": "Cannot provide legal advice or verify the legal compliance of generated clauses; custom clauses are inserted as-is without validation.", + "examples": [ + "Generate a standard offer letter for a software engineer starting on 2024-07-01 with a salary of $95,000.", + "Create a non-disclosure agreement document with custom clauses about data privacy.", + "Produce an employment contract including signature placeholders for a marketing manager." + ] + }, + "tags": [ + "hr", + "document", + "generation", + "offer letter", + "contract", + "employee", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"offerLetter\",\"employeeName\":\"Alice Johnson\",\"employeePosition\":\"Software Engineer\",\"startDate\":\"2024-07-01\",\"salary\":95000,\"customClauses\":[],\"includeSignaturePlaceholder\":true}", + "description": "Generate a standard offer letter for a Software Engineer named Alice Johnson starting July 1, 2024, with specified salary." + }, + { + "inputJson": "{\"documentType\":\"nda\",\"employeeName\":\"Bob Smith\",\"employeePosition\":\"Data Analyst\",\"customClauses\":[\"Employee must not disclose any client data.\",\"Agreement valid for 3 years from signing.\"],\"includeSignaturePlaceholder\":true}", + "description": "Generate an NDA document for Bob Smith with additional custom clauses and signature placeholders." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "content-creation.buildAPI", + "description": "Generates a fully functional RESTful API codebase based on provided data models, endpoints, request/response schemas, and authentication requirements. Accepts detailed API specification including models and desired features, processes this specification to produce server-side source code files in the chosen programming language and framework, and outputs a packaged archive of the scaffolded API implementation for immediate deployment or further development.", + "category": "content-creation", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The name identifier for the API project to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Target backend language for the API code (e.g., 'Node.js', 'Python', 'Java').", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Specific backend framework to use (e.g., 'Express', 'Django', 'Spring').", + "required": true, + "defaultValue": "" + }, + { + "name": "models", + "type": "array", + "description": "Array of data model definitions describing entities, fields, and types to generate schema and storage layers for.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "Array of endpoint definitions including method, path, input and output schemas, and associated models.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Configuration for API authentication methods, e.g., type (JWT, OAuth2), required scopes, token expiry.", + "required": false, + "defaultValue": "" + }, + { + "name": "database", + "type": "object", + "description": "Database configuration details like type (SQL/NoSQL), connection parameters, and ORM options.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API codebase archive download URL or base64 encoded archive data, along with metadata about the generation success and any warnings or errors encountered." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to quickly scaffold backend APIs based on explicit model and endpoint specifications, accelerating development by producing ready-to-run codebases suitable for iterative customization, testing, or deployment. Ideal for generating boilerplate API projects tailored to desired languages and frameworks from high-level specification.", + "limitations": "Cannot implement complex business logic beyond CRUD operations without further manual development. Does not support generating frontend code or infrastructure deployment scripts. Output depends on the completeness and correctness of input specifications.", + "examples": [ + "Generate a Node.js Express API for a user management system with JWT authentication.", + "Build a Python Django REST framework API for an e-commerce catalog with product and order models.", + "Create a Java Spring Boot API with OAuth2 secured endpoints for a customer support ticketing system." + ] + }, + "tags": [ + "api", + "code-generation", + "backend", + "scaffolding", + "rest", + "development" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"UserManagementAPI\",\"programmingLanguage\":\"Node.js\",\"framework\":\"Express\",\"models\":[{\"name\":\"User\",\"fields\":{\"id\":\"string\",\"name\":\"string\",\"email\":\"string\",\"password\":\"string\"}}],\"endpoints\":[{\"method\":\"POST\",\"path\":\"/users\",\"inputSchema\":{\"name\":\"string\",\"email\":\"string\",\"password\":\"string\"},\"outputSchema\":{\"id\":\"string\",\"name\":\"string\",\"email\":\"string\"}}],\"authentication\":{\"type\":\"JWT\",\"tokenExpiry\":\"1h\"}}", + "description": "Builds a Node.js Express-based REST API for user management with JWT auth." + }, + { + "inputJson": "{\"apiName\":\"ProductCatalogAPI\",\"programmingLanguage\":\"Python\",\"framework\":\"Django\",\"models\":[{\"name\":\"Product\",\"fields\":{\"id\":\"integer\",\"title\":\"string\",\"price\":\"float\",\"stock\":\"integer\"}}],\"endpoints\":[{\"method\":\"GET\",\"path\":\"/products\",\"outputSchema\":[{\"id\":\"integer\",\"title\":\"string\",\"price\":\"float\"}]}]}", + "description": "Generates a Python Django REST API for listing products in a catalog." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "content-creation.buildTest", + "description": "Generates executable test code based on provided function or module specifications. Accepts metadata such as function signatures, expected behavior, and test framework choice; builds unit test scripts accordingly and returns the test code as a string ready for integration.", + "category": "content-creation", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name of the function to generate tests for.", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "List of parameter names and types expected by the function.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedBehavior", + "type": "string", + "description": "Description of what the function is expected to do, used to define test cases.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Testing framework to use, e.g., Jest, Mocha, PyTest.", + "required": false, + "defaultValue": "Jest" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the test code (e.g., JavaScript, Python).", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to generate tests for common edge cases.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string and metadata like the language and framework used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to rapidly generate structured tests for a given function or module to validate its correctness within a specified test framework. It streamlines test writing based on described expected behavior and function signature, useful in test automation and code verification workflows.", + "limitations": "Cannot generate tests for complex UI components or integration tests requiring external dependencies or asynchronous environments beyond simple function calls. Relies on accurate input descriptions for effective test generation.", + "examples": [ + "Generate unit tests for a sorting function using Jest in JavaScript.", + "Create test scripts for a data processing function including edge cases using PyTest in Python." + ] + }, + "tags": [ + "test-generation", + "unit-testing", + "code-quality", + "automation", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"add\",\"parameters\":[{\"name\":\"a\",\"type\":\"number\"},{\"name\":\"b\",\"type\":\"number\"}],\"expectedBehavior\":\"Returns the sum of two numbers.\",\"testFramework\":\"Jest\",\"language\":\"JavaScript\",\"includeEdgeCases\":true}", + "description": "Generate Jest unit tests for a simple add function in JavaScript including edge cases." + }, + { + "inputJson": "{\"functionName\":\"filterAdults\",\"parameters\":[{\"name\":\"users\",\"type\":\"array\"}],\"expectedBehavior\":\"Filters users array to return only users with age >= 18.\",\"testFramework\":\"Mocha\",\"language\":\"JavaScript\",\"includeEdgeCases\":false}", + "description": "Build Mocha tests for a user filtering function that excludes underage users, without edge cases." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "documentation-tools.buildPullRequest", + "description": "Creates a structured pull request for documentation updates by accepting the target repository, branch, proposed changes in markdown or other doc formats, and pull request metadata. Processes the inputs to create a new branch or fork, commits the changes, and submits a pull request with a title and description. Returns details of the created pull request for integration or tracking.", + "category": "documentation-tools", + "parameters": [ + { + "name": "repository", + "type": "string", + "description": "The URL or identifier of the target repository where the documentation changes will be applied.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The base branch name from which to branch out for the pull request (e.g., 'main' or 'master').", + "required": true, + "defaultValue": "main" + }, + { + "name": "changes", + "type": "object", + "description": "An object representing the files to change, keys are file paths, and values are the new content strings for each file, usually in markdown or other documentation formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "prTitle", + "type": "string", + "description": "The title of the pull request summarizing the documentation changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "prDescription", + "type": "string", + "description": "A detailed description of the pull request explaining the purpose of the documentation updates.", + "required": false, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "The name to attribute as the author/committer of the changes in the pull request.", + "required": false, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "The email to use as the author/committer identity for the changes.", + "required": false, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "An array of labels to assign to the pull request, such as ['documentation', 'enhancement'].", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Details of the created pull request including pull request URL, number, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the process of submitting documentation changes as a pull request in a version-controlled repository. It handles branching, committing files, and generating a pull request with appropriate titles and descriptions, facilitating streamlined documentation updates in collaborative projects.", + "limitations": "This tool cannot review the quality or correctness of documentation content or resolve merge conflicts automatically. It relies on valid repository access and permissions to create branches and pull requests.", + "examples": [ + "Create a pull request to update the README.md with new installation instructions.", + "Submit documentation fixes spanning multiple markdown files in a new branch with a descriptive PR title and labels.", + "Automatically generate a pull request for API docs updated by parsing source code comments." + ] + }, + "tags": [ + "documentation", + "pull-request", + "automation", + "git", + "collaboration", + "docs-update" + ], + "examples": [ + { + "inputJson": "{\"repository\":\"https://github.com/example/project\",\"baseBranch\":\"main\",\"changes\":{\"docs/README.md\":\"# Project\\nUpdated installation instructions.\"},\"prTitle\":\"Update README with installation instructions\",\"prDescription\":\"This PR updates the README to include new detailed installation steps.\",\"authorName\":\"DocBot\",\"authorEmail\":\"docbot@example.com\",\"labels\":[\"documentation\"]}", + "description": "A pull request to update the README file with new installation instructions." + }, + { + "inputJson": "{\"repository\":\"https://github.com/example/project\",\"baseBranch\":\"develop\",\"changes\":{\"docs/CONTRIBUTING.md\":\"# Contribution Guidelines\\nPlease follow the updated code standards.\"},\"prTitle\":\"Revise contributing guidelines\",\"prDescription\":\"Improves contribution guidelines to enforce latest code style.\",\"labels\":[\"docs\",\"enhancement\"]}", + "description": "Submit documentation change to contributing guidelines with labels and description." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "documentation-tools.buildModule", + "description": "Builds comprehensive documentation modules from provided source code and metadata. Accepts source files, configuration options, and optional README or setup files. Processes code comments, annotations, and metadata to generate well-structured, navigable documentation modules in formats like HTML or Markdown.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sourceFiles", + "type": "array", + "description": "List of source code file paths or code snippets to extract documentation from.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output documentation format, e.g., 'html', 'markdown', or 'pdf'.", + "required": true, + "defaultValue": "html" + }, + { + "name": "includePrivate", + "type": "boolean", + "description": "Flag to include private/internal methods and properties in the documentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "moduleName", + "type": "string", + "description": "Name of the module to use as the documentation title and identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "configOptions", + "type": "object", + "description": "Additional configuration options such as theme, styling, and table of contents settings.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "readmeFile", + "type": "string", + "description": "Optional path to a README file to include as introductory content in the documentation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the documentation module with metadata and generated content. Includes 'moduleName', 'format', and 'content' where content is the generated documentation string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate structured, readable documentation modules from source code and associated files. It is ideal for preparing documentation bundles for software libraries, components, or modules, enabling easy distribution and integration into developer portals or repositories.", + "limitations": "This tool does not perform source code analysis beyond extracting comments and annotations. It cannot generate code or fix code errors. Styling is limited to provided configuration options and does not support arbitrary custom templates.", + "examples": [ + "Create detailed HTML documentation for a JavaScript library including private functions.", + "Generate a Markdown module documentation from Python source files with an attached README.", + "Build a PDF documentation module for a module named 'AuthLib' including configuration to customize the theme." + ] + }, + "tags": [ + "documentation", + "code", + "module", + "build", + "generate", + "source code", + "markdown", + "html" + ], + "examples": [ + { + "inputJson": "{\"sourceFiles\":[\"./src/auth.js\",\"./src/utils.js\"],\"outputFormat\":\"html\",\"includePrivate\":false,\"moduleName\":\"AuthModule\",\"configOptions\":{\"theme\":\"light\"},\"readmeFile\":\"./README.md\"}", + "description": "Build an HTML documentation module for AuthModule from source files excluding private items with a light theme." + }, + { + "inputJson": "{\"sourceFiles\":[\"./lib/parser.py\"],\"outputFormat\":\"markdown\",\"includePrivate\":true,\"moduleName\":\"ParserLib\",\"configOptions\":{},\"readmeFile\":\"\"}", + "description": "Generate Markdown documentation including private functions for a ParserLib module from Python source code." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "data-analytics.buildDatabase", + "description": "Creates a structured database from raw data sources to support efficient querying and analysis. Accepts inputs such as CSV files, JSON arrays, or other structured data, applies optional schema definitions and indexing, and outputs a fully built relational or NoSQL database instance for downstream analytics and visualizations.", + "category": "data-analytics", + "parameters": [ + { + "name": "sourceData", + "type": "array", + "description": "An array of objects representing the raw data records to be imported into the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database to build, e.g., 'relational' or 'nosql'.", + "required": true, + "defaultValue": "relational" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "Optional schema defining the structure, data types, and validation rules for the database tables or collections.", + "required": false, + "defaultValue": "" + }, + { + "name": "indexFields", + "type": "array", + "description": "List of field names to create indexes on for faster querying.", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseName", + "type": "string", + "description": "Name of the database to create.", + "required": false, + "defaultValue": "default_db" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing database with the same name if it exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Details about the created database instance including connection info, type, and status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw structured data into a properly indexed and schema-enforced database to enable efficient data analytics and querying operations. Suitable for initializing analytics infrastructure from new data sets or reconstructing databases after schema updates.", + "limitations": "Does not handle unstructured data such as images or text without prior preprocessing. Not designed for real-time streaming ingestion or complex ETL pipelines beyond initial data load.", + "examples": [ + "Build a relational database from a list of customer records including schema and indexes.", + "Create a NoSQL database for JSON log data with specified indexes on timestamp fields." + ] + }, + "tags": [ + "database", + "build", + "data-import", + "analytics", + "schema", + "indexing" + ], + "examples": [ + { + "inputJson": "{\"sourceData\":[{\"id\":1,\"name\":\"Alice\",\"age\":30},{\"id\":2,\"name\":\"Bob\",\"age\":25}],\"databaseType\":\"relational\",\"schemaDefinition\":{\"users\":{\"id\":\"integer\",\"name\":\"string\",\"age\":\"integer\"}},\"indexFields\":[\"id\"],\"databaseName\":\"userDB\",\"overwriteExisting\":true}", + "description": "Build a relational database named 'userDB' for user data with a specified schema and 'id' index, overwriting any existing database with the same name." + }, + { + "inputJson": "{\"sourceData\":[{\"timestamp\":\"2023-06-01T12:00:00Z\",\"event\":\"login\",\"userId\":123},{\"timestamp\":\"2023-06-01T12:05:00Z\",\"event\":\"logout\",\"userId\":123}],\"databaseType\":\"nosql\",\"indexFields\":[\"timestamp\"],\"databaseName\":\"eventLogs\"}", + "description": "Create a NoSQL database 'eventLogs' for storing event data with an index on timestamp field." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "data-analytics.generateSummary", + "description": "Generates a statistical and textual summary report from provided tabular or structured data. Accepts data in JSON array or CSV string format, computes key statistics, distributions, and optional textual insights, and outputs a comprehensive summary object suited for data analysis and reporting.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Input dataset as an array of records (objects) where each object represents a row with key-value pairs.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: 'json' for JSON array or 'csv' for CSV string. Default is 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "fields", + "type": "array", + "description": "Optional list of field names to include in the summary. If empty or omitted, all fields are summarized.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTextSummary", + "type": "boolean", + "description": "Whether to generate a natural language summary paragraph describing the key insights. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "numericSummaryStats", + "type": "array", + "description": "List of numeric statistics to compute per numeric field such as ['mean', 'median', 'min', 'max', 'stdDev']. Defaults to ['mean','median','min','max','stdDev'].", + "required": false, + "defaultValue": "[\"mean\",\"median\",\"min\",\"max\",\"stdDev\"]" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics for numeric and categorical fields, counts of missing values, and optionally a textual summary string describing key data insights." + }, + "aiAgent": { + "useCase": "Use this tool when you have tabular or structured data and need a quick, automated summary highlighting key statistics and insights, facilitating initial exploratory data analysis or reporting. It helps in generating concise reports without manual computation.", + "limitations": "This tool does not perform advanced data modeling, handle unstructured raw text data outside tabular format, or provide visualizations. It is limited to structured datasets with straightforward statistics and textual summaries.", + "examples": [ + "Generate a summary for sales data JSON to understand average sales and distribution.", + "Summarize user survey CSV file focusing only on specified demographic fields.", + "Create a textual overview describing main insights from time-series metrics in a JSON dataset." + ] + }, + "tags": [ + "data", + "analytics", + "summary", + "statistics", + "reporting", + "insights", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"age\":30,\"income\":70000},{\"age\":40,\"income\":80000},{\"age\":35,\"income\":75000}],\"dataFormat\":\"json\",\"fields\":[\"age\",\"income\"],\"includeTextSummary\":true}", + "description": "Generate summary statistics and textual insights from a small JSON dataset of age and income." + }, + { + "inputJson": "{\"data\":\"name,department,salary\\nAlice,Engineering,70000\\nBob,Marketing,65000\\nCharlie,Engineering,72000\",\"dataFormat\":\"csv\",\"fields\":[\"department\",\"salary\"],\"includeTextSummary\":false}", + "description": "Summarize only department and salary fields from CSV sales data, without a textual summary." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "data-analytics.generateEvent", + "description": "Generates synthetic event data for analytics purposes based on specified parameters such as event type, timestamp range, user demographics, and event properties. Produces an array of event objects suitable for testing, simulations, or augmenting datasets.", + "category": "data-analytics", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type or category name of the event to generate (e.g., 'click', 'purchase').", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date/time (ISO 8601 format) of event occurrence window.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date/time (ISO 8601 format) of event occurrence window.", + "required": true, + "defaultValue": "" + }, + { + "name": "numberOfEvents", + "type": "number", + "description": "Total number of events to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "userAttributes", + "type": "object", + "description": "Optional demographic attributes (age range, location, etc.) to simulate user profiles generating events.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "eventProperties", + "type": "object", + "description": "Optional additional properties for each event (e.g., product category, revenue).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "uniqueUsers", + "type": "number", + "description": "Approximate distinct number of users across generated events.", + "required": false, + "defaultValue": "0" + }, + { + "name": "seed", + "type": "number", + "description": "Random seed for reproducible event generation.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array 'events' where each event includes eventType, timestamp, userId, and any additional properties." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create realistic synthetic event datasets for testing analytics pipelines, visualizations, or machine learning models especially when real data is unavailable or incomplete. It helps simulate user interactions over time with customizable event properties.", + "limitations": "It cannot generate events based on real user behavior patterns without complex modeling. The tool produces synthetic data which may not reflect nuanced temporal or behavioral correlations.", + "examples": [ + "Generate 1000 'click' events between 2024-01-01 and 2024-01-07 representing anonymous users.", + "Create purchase events with revenue properties for simulation purposes.", + "Generate user activity events segmented by age group and location." + ] + }, + "tags": [ + "data-analytics", + "generate", + "event", + "simulation", + "synthetic-data", + "testing", + "user-behavior" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"click\",\"startDate\":\"2024-01-01T00:00:00Z\",\"endDate\":\"2024-01-07T23:59:59Z\",\"numberOfEvents\":1000}", + "description": "Generate 1000 click events over a one week period." + }, + { + "inputJson": "{\"eventType\":\"purchase\",\"startDate\":\"2024-02-01T00:00:00Z\",\"endDate\":\"2024-02-28T23:59:59Z\",\"numberOfEvents\":500,\"eventProperties\":{\"revenue\":{\"min\":5,\"max\":100}},\"uniqueUsers\":200}", + "description": "Generate 500 purchase events with random revenue values in February for an estimated 200 unique users." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "data-analytics.createSentence", + "description": "Creates a concise, data-driven sentence summarizing key insights from a dataset. Accepts an array of data points or summarized analytics as input, processes metrics and trends, and outputs a natural language sentence highlighting significant observations, suitable for reports or presentations.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSummary", + "type": "object", + "description": "An object containing summarized metrics or insights extracted from a dataset (e.g., averages, counts, trends).", + "required": true, + "defaultValue": "" + }, + { + "name": "focusMetric", + "type": "string", + "description": "The specific metric or data point to emphasize in the sentence (e.g., \"sales growth\").", + "required": false, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional contextual information to tailor the sentence (e.g., time period, region).", + "required": false, + "defaultValue": "" + }, + { + "name": "sentenceStyle", + "type": "string", + "description": "Style of the generated sentence: 'formal', 'casual', or 'technical'.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence as a string under the key 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when converting quantitative data summaries into clear, concise natural language statements for reports, presentations, or dashboards. It is helpful for automatically generating textual insights from analyzed data without manual writing.", + "limitations": "Cannot generate insights beyond the provided data summary; it depends entirely on the input data's quality and completeness. Does not perform raw data analysis itself, only sentence generation from given summaries.", + "examples": [ + "Generate a sentence summarizing the key sales growth trend for Q1 2024.", + "Create a data insight sentence focusing on customer churn rates in the last quarter with a casual tone.", + "Produce a technical-style sentence emphasizing average response time from the provided server logs summary." + ] + }, + "tags": [ + "data-analytics", + "natural-language-generation", + "summary", + "insights", + "reporting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"dataSummary\":{\"salesGrowth\":\"12% increase compared to last quarter\",\"totalSales\":1200000},\"focusMetric\":\"salesGrowth\",\"context\":\"Q1 2024\",\"sentenceStyle\":\"formal\"}", + "description": "Generate a formal sentence summarizing sales growth in Q1 2024." + }, + { + "inputJson": "{\"dataSummary\":{\"churnRate\":\"5% decrease from previous quarter\"},\"focusMetric\":\"churnRate\",\"sentenceStyle\":\"casual\"}", + "description": "Create a casual sentence highlighting reduced customer churn rates." + }, + { + "inputJson": "{\"dataSummary\":{\"avgResponseTime\":\"350ms\"},\"focusMetric\":\"avgResponseTime\",\"sentenceStyle\":\"technical\"}", + "description": "Produce a technical sentence about average server response time." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Sentence", + "context": null + } + }, + { + "name": "data-analytics.createService", + "description": "Creates a data analytics service infrastructure configured to perform specified data processing and visualization tasks. Accepts input parameters defining the data sources, processing pipelines, visualization preferences, and deployment environment. Produces a service endpoint URL along with configuration details ready for integration and use.", + "category": "data-analytics", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "Name identifier for the analytics service to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source definitions including type and access details (e.g., databases, APIs, files).", + "required": true, + "defaultValue": "" + }, + { + "name": "processingPipeline", + "type": "object", + "description": "Definition of data processing steps such as cleaning, transformation, and aggregation to apply.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationOptions", + "type": "object", + "description": "Configuration for visualizing processed data including chart types, dashboards, and refresh intervals.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Target environment where the service will be deployed, e.g., cloud provider or on-premises identifier.", + "required": false, + "defaultValue": "cloud" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "Authentication scheme for service access, e.g., token-based or OAuth.", + "required": false, + "defaultValue": "token" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to activate logging of service operations and data processing events.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the service endpoint URL, access credentials (if any), and the full configuration summary of the deployed service." + }, + "aiAgent": { + "useCase": "Use this tool when a user needs to automatically deploy a ready-to-use data analytics service tailored to specific data sources and analytical needs, including pipeline and visualization setup, without manual infrastructure configuration. Ideal for rapid prototyping or scalable production environments.", + "limitations": "Does not handle custom algorithm implementations beyond defined processing pipelines; assumes user provides valid data source credentials and processing configurations.", + "examples": [ + "Create a data analytics service for sales data from multiple databases with weekly refresh dashboards.", + "Deploy a visualization service connected to IoT sensor data streams with real-time charts.", + "Generate an analytics service to process and visualize social media metrics with OAuth authentication." + ] + }, + "tags": [ + "data-analytics", + "service-creation", + "infrastructure", + "visualization", + "data-processing", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"SalesInsight\",\"dataSources\":[{\"type\":\"database\",\"connectionString\":\"Server=myServer;Database=sales;User Id=usr;Password=pwd;\"}],\"processingPipeline\":{\"steps\":[{\"operation\":\"filter\",\"parameters\":{\"field\":\"region\",\"value\":\"EMEA\"}},{\"operation\":\"aggregate\",\"parameters\":{\"field\":\"revenue\",\"method\":\"sum\"}}]},\"visualizationOptions\":{\"dashboardType\":\"barChart\",\"refreshIntervalMinutes\":60},\"deploymentEnvironment\":\"cloud\",\"authenticationMethod\":\"token\",\"enableLogging\":true}", + "description": "Create a cloud-deployed analytics service named SalesInsight that processes sales data filtering by region and aggregating revenue, with bar chart visualizations updating every hour." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "data-analytics.createCSV", + "description": "Generates a CSV formatted string from structured data provided as an array of objects or arrays. Accepts optional parameters to specify column headers, delimiter character, and whether to include a header row. Produces a CSV string output suitable for saving to file or further data processing.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects or arrays representing rows of the table. Each object should have consistent keys representing columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnHeaders", + "type": "array", + "description": "Optional list of column headers to use as CSV columns. If not provided and data is array of objects, keys of the first object are used.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character to separate values in the CSV. Defaults to comma ','.", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include a header row with column names. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteValues", + "type": "boolean", + "description": "Whether to quote all values. If false, quotes added only when needed. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV string as 'csvString'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured JSON data into CSV format for export, reporting, or interoperability with spreadsheet or analysis software. It is ideal when input data is in arrays or objects and a quick CSV string output is required.", + "limitations": "This tool does not handle streaming large data sets or complex data transformations. It assumes relatively small-to-medium sized datasets that fit into memory.", + "examples": [ + "Convert an array of user records to CSV for reporting.", + "Generate CSV output from a JSON fetched from an API for download.", + "Create CSV with custom delimiter and without headers for specialized import scenarios." + ] + }, + "tags": [ + "data-creation", + "CSV", + "export", + "data-format", + "tabular", + "data-analytics" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"includeHeaders\":true}", + "description": "Generate CSV string with headers from array of objects representing user data." + }, + { + "inputJson": "{\"data\":[[\"John\",35],[\"Jane\",28],[\"Mike\",42]],\"columnHeaders\":[\"Name\",\"Age\"],\"delimiter\":\";\",\"includeHeaders\":true}", + "description": "Create CSV with semicolon delimiter and headers from array of arrays with specified column names." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Widget\",\"price\":9.99,\"inStock\":true},{\"product\":\"Gadget\",\"price\":12.5,\"inStock\":false}],\"includeHeaders\":false}", + "description": "Generate CSV without header row from objects representing product inventory." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "etl-processes.buildCommit", + "description": "Constructs a structured commit object for a version control system from raw inputs such as author info, commit message, changed files, and timestamp. Processes the inputs to generate a commit payload adhering to common VCS standards, ready for downstream processes or API submission.", + "category": "etl-processes", + "parameters": [ + { + "name": "authorName", + "type": "string", + "description": "Name of the person making the commit", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email of the commit author", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Descriptive message for the commit", + "required": true, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of changed files with their statuses (e.g., added, modified, deleted)", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the commit is made", + "required": false, + "defaultValue": "" + }, + { + "name": "commitHash", + "type": "string", + "description": "Optional commit hash if rebuilding an existing commit object", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured commit object containing author info, message, changed files, timestamp, and optional commit hash ready for use in version control workflows" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assemble commit data from disparate inputs into a structured commit object suitable for automation of version control operations such as commit creation, review preparation, or integration workflows. It standardizes and validates commit payload construction based on typical VCS requirements.", + "limitations": "Does not perform actual commit submission to version control systems or handle conflict resolution. It only builds the commit data structure, not the repository state or history.", + "examples": [ + "Build a commit object for changes made by Alice with a summary message and a list of modified files.", + "Create a commit object including author info and timestamp for logging purposes.", + "Generate a commit payload to later pass to a Git API for pushing changes." + ] + }, + "tags": [ + "etl", + "commit", + "version-control", + "build", + "automation", + "code-management" + ], + "examples": [ + { + "inputJson": "{\"authorName\":\"Alice Johnson\",\"authorEmail\":\"alice@example.com\",\"commitMessage\":\"Fix bug in authentication flow\",\"changedFiles\":[{\"filePath\":\"auth/login.js\",\"status\":\"modified\"},{\"filePath\":\"auth/utils.js\",\"status\":\"added\"}],\"timestamp\":\"2024-04-22T15:30:00Z\"}", + "description": "Build a commit object capturing a bug fix by Alice with added and modified files, including a timestamp." + }, + { + "inputJson": "{\"authorName\":\"Bob Smith\",\"authorEmail\":\"bob@example.com\",\"commitMessage\":\"Update README with new instructions\",\"changedFiles\":[{\"filePath\":\"README.md\",\"status\":\"modified\"}]}", + "description": "Create a simple commit object for a documentation update by Bob without providing a timestamp." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "etl-processes.buildAPI", + "description": "Builds a RESTful API endpoint from specified data sources and transformation rules. Accepts configuration including data source details, transformations, and endpoint specifications, processes to generate API code or deployment artifacts, and outputs a deployable API specification or source code package.", + "category": "etl-processes", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of data source configurations including type, connection info, and schema to extract data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "Ordered list of transformation steps to apply on extracted data including filtering, mapping and aggregation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "The URL path for the generated API endpoint (e.g., /users/data).", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for the API endpoint such as GET, POST, PUT, or DELETE.", + "required": true, + "defaultValue": "GET" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Flag to indicate whether the API endpoint requires authentication.", + "required": false, + "defaultValue": "false" + }, + { + "name": "responseFormat", + "type": "string", + "description": "Format of API response, e.g., JSON, XML.", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "outputLanguage", + "type": "string", + "description": "Programming language for output API code such as Node.js, Python Flask, or Java Spring.", + "required": false, + "defaultValue": "Node.js" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API source code files, deployment instructions, and endpoint testing details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to rapidly construct a custom API layer that exposes transformed data from diverse data sources. Ideal for building data-driven services or microservices from ETL pipelines, automating API code generation and deployment preparation based on configuration inputs.", + "limitations": "Does not handle runtime API hosting or direct data querying. Complex authentication schemes beyond simple flag are not supported. Real-time streaming API generation is out of scope.", + "examples": [ + "Generate a GET API endpoint at /sales/report to expose aggregated sales data from multiple databases with authentication.", + "Build a POST API endpoint to receive and validate incoming JSON payloads, transform and store into a NoSQL database.", + "Create a public GET API to expose filtered product catalog data from CSV and SQL sources in JSON format." + ] + }, + "tags": [ + "api", + "etl", + "code-generation", + "data-integration", + "automation", + "rest", + "endpoint" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[{\"type\":\"mysql\",\"connectionString\":\"mysql://user:pass@host/db\",\"schema\":\"sales\"}],\"transformations\":[{\"type\":\"filter\",\"condition\":\"date > '2024-01-01'\"},{\"type\":\"aggregate\",\"groupBy\":[\"region\"],\"metrics\":[{\"field\":\"amount\",\"operation\":\"sum\"}]}],\"apiEndpoint\":\"/sales/report\",\"httpMethod\":\"GET\",\"authenticationRequired\":true,\"responseFormat\":\"JSON\",\"outputLanguage\":\"Node.js\"}", + "description": "Build a secure GET API endpoint to provide an aggregated sales report filtered by date." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "database-management.analyzeComment", + "description": "This tool accepts a text comment from a database record and performs sentiment analysis, identifies key topics, and detects potential issues such as offensive language or placeholders. It processes input comment text and optional context metadata, returning structured insights useful for database content management and quality control.", + "category": "database-management", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The textual content of the comment to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the comment text (e.g., 'en' for English) to select appropriate NLP models.", + "required": false, + "defaultValue": "en" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Level of strictness for detecting offensive or problematic language (e.g., 'low', 'medium', 'high').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "contextMetadata", + "type": "object", + "description": "Optional metadata about the comment such as user role, creation date, or related record category that may influence analysis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing sentiment classification, identified topics, a flag for offensive or placeholder content, and confidence scores for each detected element." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze textual comments stored in databases to understand user sentiment, flag inappropriate content, or extract key thematic topics. It supports content moderation, quality assurance, and insights extraction from freeform comments tied to database records.", + "limitations": "This tool is designed for text comments only; it cannot analyze non-textual data or complex multimedia metadata. It may have reduced accuracy on extremely short or ambiguous comments and cannot fully understand sarcasm or highly idiomatic language.", + "examples": [ + "Analyze user feedback comment for sentiment and offensive content.", + "Identify key topics discussed in support ticket comments to categorize them.", + "Flag placeholder comments or spam entries within database logs." + ] + }, + "tags": [ + "analysis", + "database", + "comment", + "sentiment-analysis", + "content-moderation", + "NLP", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I love the new update! It really improves my workflow.\",\"language\":\"en\"}", + "description": "Positive user feedback comment analysis." + }, + { + "inputJson": "{\"commentText\":\"This is just a placeholder comment...\", \"sensitivityLevel\":\"high\"}", + "description": "Detect placeholder content and evaluate language sensitivity." + }, + { + "inputJson": "{\"commentText\":\"The server is down again, very frustrating!\", \"contextMetadata\":{\"userRole\":\"support_agent\"}}", + "description": "Identify negative sentiment and key topic (server downtime) from support comment." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "testing-automation.uploadFile", + "description": "Uploads a file to a specified endpoint or test environment as part of an automated testing workflow. Accepts local file path or binary content, processes the upload via HTTP or protocol defined by environment, and returns the upload status and any server response or error details.", + "category": "testing-automation", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path to the file to be uploaded. Required if fileContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Base64 encoded content of the file to upload. Used if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "The URL of the server or endpoint where the file will be uploaded. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method used for uploading the file, typically POST or PUT.", + "required": false, + "defaultValue": "POST" + }, + { + "name": "headers", + "type": "object", + "description": "Additional HTTP headers to include in the upload request, such as authorization tokens.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the upload operation before timing out.", + "required": false, + "defaultValue": "60" + }, + { + "name": "fieldName", + "type": "string", + "description": "Form field name for the file if the upload expects multipart/form-data. Defaults to 'file'.", + "required": false, + "defaultValue": "file" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status, HTTP status code, server response body, and error message if any." + }, + "aiAgent": { + "useCase": "Use this tool in automated testing scenarios where a file needs to be uploaded to a test server or application endpoint to validate upload functionality or trigger further processing. Applicable for integration tests or end-to-end tests involving file inputs.", + "limitations": "This tool does not perform file validation or preprocessing. It does not support complex authentication mechanisms beyond headers. File size limits depend on the remote server.", + "examples": [ + "Upload a test image file to the staging server for functional upload validation.", + "Send a generated report file to an API endpoint during automated regression testing.", + "Test file upload error handling by uploading an invalid or malformed file." + ] + }, + "tags": [ + "testing", + "automation", + "file", + "upload", + "http", + "integration-test" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/path/to/test-image.png\",\"destinationUrl\":\"https://staging.example.com/upload\",\"httpMethod\":\"POST\",\"headers\":{\"Authorization\":\"Bearer abc123\"},\"timeoutSeconds\":30}", + "description": "Uploading a PNG test image to staging environment with authorization header using POST." + }, + { + "inputJson": "{\"fileContent\":\"iVBORw0KGgoAAAANS...base64encoded...\",\"destinationUrl\":\"https://api.example.com/reports/upload\",\"httpMethod\":\"PUT\",\"fieldName\":\"report_file\"}", + "description": "Uploading a base64 encoded report file content as 'report_file' field using PUT method." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "devops.analyzeNotification", + "description": "Analyzes system or deployment notification messages to classify their type, severity, and likely cause. Accepts notification text and optional metadata (source, timestamp, category), performs NLP and pattern matching to identify critical alerts or warnings, and returns structured analysis including severity level, category, and suggested actions.", + "category": "devops", + "parameters": [ + { + "name": "notificationText", + "type": "string", + "description": "The raw text content of the notification message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "The origin of the notification (e.g., CI system, monitoring tool).", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp of when the notification was generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "categoryHints", + "type": "array", + "description": "Optional list of categories that the notification might belong to, to guide analysis.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the parsed notification classification with fields: severity (info, warning, critical), category (deployment, alert, error, status), probableCause (string), and recommendedActions (array of strings)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically interpret and classify incoming devops notifications to prioritize response actions or to automate incident management workflows. It helps agents understand the nature and urgency of alerts from diverse sources based on textual content and metadata.", + "limitations": "Cannot replace detailed root cause analysis or human judgment for complex notifications; relies on text patterns and metadata and may misclassify ambiguous messages.", + "examples": [ + "Analyze this deployment notification text for severity and suggested action.", + "Classify alert notification from monitoring tool and extract probable cause.", + "Interpret message from CI system and categorize its urgency." + ] + }, + "tags": [ + "devops", + "notification", + "analysis", + "alert", + "classification", + "monitoring", + "automation" + ], + "examples": [ + { + "inputJson": "{\"notificationText\":\"Deployment failed on server prod-01 due to timeout error.\",\"source\":\"CI/CD pipeline\",\"timestamp\":\"2024-05-10T15:23:00Z\"}", + "description": "Analyze a deployment failure notification message from CI/CD pipeline." + }, + { + "inputJson": "{\"notificationText\":\"CPU usage exceeded 90% on node db-02.\",\"source\":\"Monitoring System\"}", + "description": "Analyze a high resource usage alert from monitoring tool." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "devops.createConfig", + "description": "Generates configuration files for deployment or infrastructure automation based on input parameters such as environment variables, service definitions, and deployment targets. Accepts JSON or object input describing desired system settings and outputs configuration in formats like YAML, JSON, or properties files suitable for CI/CD pipelines or orchestration tools.", + "category": "devops", + "parameters": [ + { + "name": "environment", + "type": "string", + "description": "Target deployment environment (e.g., development, staging, production).", + "required": true, + "defaultValue": "" + }, + { + "name": "services", + "type": "array", + "description": "Array of service objects describing each service to configure including name, image, ports, and environment variables.", + "required": true, + "defaultValue": "" + }, + { + "name": "configFormat", + "type": "string", + "description": "Output configuration file format (e.g., yaml, json, properties).", + "required": true, + "defaultValue": "yaml" + }, + { + "name": "includeSecrets", + "type": "boolean", + "description": "Whether to include secret keys or credentials in the configuration output. Defaults to false for security.", + "required": false, + "defaultValue": "false" + }, + { + "name": "replicaCount", + "type": "number", + "description": "Number of replicas for scalable services, used in config generation where applicable.", + "required": false, + "defaultValue": "1" + }, + { + "name": "deploymentType", + "type": "string", + "description": "Type of deployment target (e.g., kubernetes, docker-compose, helm chart).", + "required": true, + "defaultValue": "kubernetes" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated configuration as a string and metadata including format and services configured." + }, + "aiAgent": { + "useCase": "Use this tool to automate creation of standard deployment or infrastructure configuration files based on user-supplied service definitions and environment settings. Useful for generating Kubernetes manifests, Docker Compose files, or Helm charts to integrate into DevOps pipelines.", + "limitations": "This tool does not validate the resulting configuration against specific platform schemas or perform deployment actions. It focuses on generating configurations from structured inputs only.", + "examples": [ + "Generate a Kubernetes deployment YAML for multiple services in a production environment.", + "Create a Docker Compose configuration file in YAML format including environment variables for each service.", + "Produce a JSON config with multiple microservices set for a staging deployment with two replicas each." + ] + }, + "tags": [ + "devops", + "configuration", + "deployment", + "automation", + "infrastructure", + "CI/CD" + ], + "examples": [ + { + "inputJson": "{\"environment\":\"production\",\"services\":[{\"name\":\"webapp\",\"image\":\"webapp:latest\",\"ports\":[80],\"env\":{\"LOG_LEVEL\":\"info\"}},{\"name\":\"db\",\"image\":\"postgres:13\",\"ports\":[5432],\"env\":{\"POSTGRES_PASSWORD\":\"secret\"}}],\"configFormat\":\"yaml\",\"includeSecrets\":false,\"replicaCount\":3,\"deploymentType\":\"kubernetes\"}", + "description": "Generate Kubernetes YAML config for a webapp and database with 3 replicas in production without including secrets." + }, + { + "inputJson": "{\"environment\":\"staging\",\"services\":[{\"name\":\"api\",\"image\":\"api:staging\",\"ports\":[8080],\"env\":{\"DEBUG\":\"true\"}}],\"configFormat\":\"json\",\"includeSecrets\":true,\"replicaCount\":2,\"deploymentType\":\"docker-compose\"}", + "description": "Create a JSON Docker Compose configuration for staging environment with secrets included and 2 replicas for the API service." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "devops.createSummary", + "description": "Generates a detailed summary report of a deployment or infrastructure change event. Accepts structured input describing changes, status, logs, and metrics, then consolidates this information into a readable summary highlighting key updates, issues, and next steps. Outputs a text summary suitable for stakeholder updates or documentation.", + "category": "devops", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of the event to summarize (e.g., deployment, rollback, update).", + "required": true, + "defaultValue": "" + }, + { + "name": "changeDetails", + "type": "object", + "description": "Structured object containing details of changes made, such as components updated, versions, configurations changed.", + "required": true, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Overall status of the event (e.g., success, failure, partial).", + "required": true, + "defaultValue": "" + }, + { + "name": "logs", + "type": "array", + "description": "Array of relevant log messages or excerpts related to the event.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "object", + "description": "Performance or health metrics collected during or after the event.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeNextSteps", + "type": "boolean", + "description": "Whether to include recommended next steps or follow-up actions in the summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text summary string under the 'summaryText' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a coherent, human-readable summary report for a continuous integration/deployment event or infrastructure automation change. It helps to consolidate technical details and status updates into a format suitable for internal or stakeholder communication.", + "limitations": "This tool does not perform raw log analysis or root cause diagnosis. It relies on structured, preprocessed inputs and cannot interpret unstructured data or replace expert engineering judgment.", + "examples": [ + "Summarize a deployment event highlighting changed components, success status, relevant logs, and recommending next steps.", + "Generate a rollback summary including failure causes and suggested fixes.", + "Create a status update summary for an infrastructure configuration change with health metrics included." + ] + }, + "tags": [ + "summary", + "report", + "devops", + "deployment", + "automation", + "status", + "logs" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"deployment\",\"changeDetails\":{\"service\":\"auth-api\",\"version\":\"v2.4.1\",\"configChanges\":[\"enableOAuth2\",\"setTimeout=30s\"]},\"status\":\"success\",\"logs\":[\"Deploy started at 10:00\",\"Health checks passed\",\"Deploy completed\"],\"metrics\":{\"cpuUsage\":\"30%\",\"responseTimeMs\":120},\"includeNextSteps\":true}", + "description": "Summarize a successful deployment of auth-api service including logs and performance metrics." + }, + { + "inputJson": "{\"eventType\":\"rollback\",\"changeDetails\":{\"service\":\"payment-gateway\",\"version\":\"v1.3.5\",\"rollbackReason\":\"Transaction errors detected\"},\"status\":\"failure\",\"logs\":[\"Error: Timeout in transactions\",\"Rollback initiated\",\"Rollback completed\"],\"includeNextSteps\":true}", + "description": "Generate a summary report of a failed deployment resulting in rollback with error logs and next steps." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "devops.createEndpoint", + "description": "Creates a new API or service endpoint for deployment in cloud or on-premises environments. Accepts parameters defining the endpoint's HTTP method, route path, authentication requirements, backend service target, and environment. It processes these inputs to configure the endpoint and returns the configuration status and details upon successful creation.", + "category": "devops", + "parameters": [ + { + "name": "endpointName", + "type": "string", + "description": "Unique name identifier for the endpoint to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for the endpoint such as GET, POST, PUT, DELETE.", + "required": true, + "defaultValue": "" + }, + { + "name": "routePath", + "type": "string", + "description": "URL path where the endpoint will be accessible, e.g. '/api/v1/resource'.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Flag to indicate if the endpoint requires user authentication.", + "required": false, + "defaultValue": "false" + }, + { + "name": "targetBackendService", + "type": "string", + "description": "The backend service or microservice to which the endpoint routing will forward requests.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Deployment environment such as 'development', 'staging', or 'production'.", + "required": false, + "defaultValue": "production" + }, + { + "name": "rateLimitPerMinute", + "type": "number", + "description": "Optional rate limit applied to the endpoint per minute to control traffic.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the endpointId (string), status (string) indicating success or failure, and message (string) with additional details or error info." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation and configuration of HTTP endpoints for APIs or microservices during deployment or infrastructure provisioning. It is useful for setting up routing, security, and backend integration without manual intervention.", + "limitations": "Does not configure the backend service logic itself, only the routing and configuration of the endpoint. Does not deploy serverless functions or manage API gateway provider specifics beyond generic configuration.", + "examples": [ + "Create a POST endpoint '/api/v1/orders' that requires authentication and forwards to the 'order-service' backend in production environment.", + "Set up a GET endpoint '/healthcheck' without authentication routed to 'monitoring-service' in staging environment.", + "Create a PUT endpoint '/api/v2/users' with rate limiting of 100 requests per minute targeting 'user-service' backend." + ] + }, + "tags": [ + "devops", + "endpoint", + "deployment", + "api", + "automation" + ], + "examples": [ + { + "inputJson": "{\"endpointName\":\"createOrder\",\"httpMethod\":\"POST\",\"routePath\":\"/api/v1/orders\",\"authenticationRequired\":true,\"targetBackendService\":\"order-service\",\"environment\":\"production\"}", + "description": "Creating a secured POST orders endpoint in production for order-service backend." + }, + { + "inputJson": "{\"endpointName\":\"healthCheck\",\"httpMethod\":\"GET\",\"routePath\":\"/healthcheck\",\"authenticationRequired\":false,\"targetBackendService\":\"monitoring-service\",\"environment\":\"staging\"}", + "description": "Setting up an open GET healthcheck endpoint in staging for monitoring-service." + }, + { + "inputJson": "{\"endpointName\":\"updateUser\",\"httpMethod\":\"PUT\",\"routePath\":\"/api/v2/users\",\"authenticationRequired\":true,\"targetBackendService\":\"user-service\",\"environment\":\"production\",\"rateLimitPerMinute\":100}", + "description": "Creating a secured PUT endpoint with rate limiting for user updates in production environment." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "frontend-development.analyzeLink", + "description": "This tool accepts a URL or a link object as input and analyzes its client-side characteristics. It extracts metadata such as link type (internal/external), target attribute, presence and validity of rel attributes (e.g., noopener, noreferrer), SEO attributes, and accessibility features. The output is a structured analysis report detailing potential issues or best practices for frontend link management.", + "category": "frontend-development", + "parameters": [ + { + "name": "link", + "type": "string", + "description": "The URL or HTML anchor element string to analyze for frontend characteristics.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "If true, analyze accessibility features like aria-labels or descriptive text for the link.", + "required": false, + "defaultValue": "true" + }, + { + "name": "baseDomain", + "type": "string", + "description": "Base domain to determine if a link is internal or external. If empty, no internal/external detection is performed.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateRelAttributes", + "type": "boolean", + "description": "If true, checks for security-relevant rel attributes on external links (e.g., noopener, noreferrer).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object including the analyzed details: isInternal (boolean), target (string or null), relAttributes (array of strings or empty), accessibilityCompliance (boolean), seoAttributes (object), warnings (array of strings) indicating any issues found." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically analyze and validate the properties of hyperlinks in frontend code or CMS content before deployment. It helps ensure links follow best practices for security, accessibility, and SEO, such as confirming correct usage of rel attributes on external links or proper labeling for screen readers.", + "limitations": "It cannot fetch or validate live server responses or HTTP status codes for links. It only analyzes the given input string or URL syntactically and contextually; dynamic link generation contexts are not analyzed.", + "examples": [ + "Analyze a link string to validate that external links have 'noopener noreferrer' rel attributes", + "Check accessibility attributes for a given anchor element string", + "Determine if a URL is internal based on a given base domain" + ] + }, + "tags": [ + "frontend", + "link", + "analysis", + "accessibility", + "SEO", + "security", + "validation" + ], + "examples": [ + { + "inputJson": "{\"link\":\"https://example.com/page\",\"checkAccessibility\":true,\"baseDomain\":\"example.com\",\"validateRelAttributes\":true}", + "description": "Analyzes an external link pointing to example.com verifying accessibility and security rel attributes." + }, + { + "inputJson": "{\"link\":\"<a href='https://external.com' target='_blank' rel='nofollow'>External</a>\",\"checkAccessibility\":true,\"baseDomain\":\"example.com\",\"validateRelAttributes\":true}", + "description": "Analyzes an HTML anchor element string for correct target and rel attributes as well as accessibility compliance." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "backend-development.renderText", + "description": "Renders input text content by applying templates, formatting, and optionally injecting context variables to produce a final processed string output suitable for API responses or file generation.", + "category": "backend-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to be rendered, which may include placeholders for variable substitution.", + "required": true, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "Optional template string with placeholders that define how the text should be integrated or formatted.", + "required": false, + "defaultValue": "" + }, + { + "name": "context", + "type": "object", + "description": "An object containing key-value pairs used to replace placeholders in the text or template.", + "required": false, + "defaultValue": "" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "Flag indicating whether to escape HTML special characters in the output to prevent injection issues.", + "required": false, + "defaultValue": "false" + }, + { + "name": "uppercase", + "type": "boolean", + "description": "Flag to convert the final rendered text to uppercase letters.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the final rendered text string under the 'renderedText' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate or render text content in server-side environments, such as preparing HTML or plain text responses by merging templates with variable data. It helps automate formatting and contextual text generation for APIs and backend services.", + "limitations": "This tool only performs text rendering and simple formatting; it does not handle complex template languages or execute code within templates.", + "examples": [ + "Render a greeting message by injecting user name into a template.", + "Convert a plain text note to uppercase after rendering.", + "Escape HTML tags in user input before including it in the output." + ] + }, + "tags": [ + "text", + "rendering", + "template", + "backend", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello, {{name}}! Welcome to {{site}}.\",\"template\":\"\",\"context\":{\"name\":\"Alice\",\"site\":\"Example.com\"},\"escapeHtml\":false,\"uppercase\":false}", + "description": "Render a greeting message by injecting user name and site into text." + }, + { + "inputJson": "{\"text\":\"some important MESSAGE.\",\"uppercase\":true}", + "description": "Convert text content to uppercase." + }, + { + "inputJson": "{\"text\":\"<script>alert('xss')</script>\",\"escapeHtml\":true}", + "description": "Escape HTML in text to prevent HTML injection." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "backend-development.formatSentence", + "description": "Formats an input sentence according to specified stylistic rules such as casing style, punctuation, and trimming. Accepts a raw string and outputs the formatted sentence as a string, enabling consistent sentence formatting for backend text processing tasks.", + "category": "backend-development", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The raw sentence string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeFirstLetter", + "type": "boolean", + "description": "Whether to capitalize only the first letter of the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "textCase", + "type": "string", + "description": "The case style to apply: 'lower', 'upper', 'title', or 'sentence'.", + "required": false, + "defaultValue": "sentence" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "forcePeriodEnding", + "type": "boolean", + "description": "Whether to ensure the sentence ends with a period punctuation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the formatted sentence string under 'formattedSentence' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically format sentences consistently for backend processing, such as generating human-readable logs, standardizing text outputs, or preparing text for display or further processing. Useful when different input sentences require uniform casing and punctuation.", + "limitations": "This tool does not perform language translation, grammar correction beyond simple capitalization and ending punctuation, or complex linguistic transformations.", + "examples": [ + "Format a user input sentence by capitalizing the first letter and ensuring it ends with a period.", + "Convert a sentence to title case without extra whitespace.", + "Trim whitespace and enforce lowercase on the sentence." + ] + }, + "tags": [ + "text-formatting", + "sentence", + "string-processing", + "backend", + "capitalization", + "punctuation" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\" hello world from the AI tool. \",\"capitalizeFirstLetter\":true,\"textCase\":\"sentence\",\"trimWhitespace\":true,\"forcePeriodEnding\":true}", + "description": "Trim whitespace, capitalize first letter, enforce period ending." + }, + { + "inputJson": "{\"sentence\":\"THIS IS AN IMPORTANT MESSAGE!\",\"capitalizeFirstLetter\":false,\"textCase\":\"lower\",\"trimWhitespace\":false,\"forcePeriodEnding\":false}", + "description": "Convert entire sentence to lowercase without trimming or adding punctuation." + }, + { + "inputJson": "{\"sentence\":\"welcome to the Developer's Guide\",\"capitalizeFirstLetter\":false,\"textCase\":\"title\",\"trimWhitespace\":true,\"forcePeriodEnding\":true}", + "description": "Format sentence in title case, trim whitespace, and enforce period ending." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "backend-development.formatSummary", + "description": "Formats a textual summary document for backend development contexts by applying structured templates, adjusting formatting styles, and optionally including metadata. Accepts raw summary text input and formatting preferences, outputs a consistently structured and styled summary document string.", + "category": "backend-development", + "parameters": [ + { + "name": "summaryText", + "type": "string", + "description": "The raw summary text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The style guideline to apply (e.g., 'markdown', 'html', 'plain').", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to prepend metadata section (author, date) to the summary.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "An object containing metadata fields such as author and date.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length to wrap the summary text at, for readability.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted summary document as a string under 'formattedSummary' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a standardized and well-formatted textual summary document in backend development projects, for documentation, reporting, or communicating key points clearly and consistently. It helps transform raw summary texts into polished outputs based on specified formatting styles and optional metadata.", + "limitations": "This tool cannot generate summaries from raw data — it assumes the summary text is already provided. It also does not support complex layout designs beyond common text formatting styles. Metadata inclusion is limited to basic fields.", + "examples": [ + "Format a backend service summary in markdown with author metadata.", + "Produce a plain text formatted summary without metadata for a deployment report.", + "Generate an HTML formatted summary with metadata and 100 character line wrapping." + ] + }, + "tags": [ + "backend", + "documentation", + "formatting", + "summary", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"summaryText\":\"This microservice handles user authentication and authorization. It ensures secure access control.\",\"formatStyle\":\"markdown\",\"includeMetadata\":true,\"metadata\":{\"author\":\"Jane Doe\",\"date\":\"2024-06-15\"},\"maxLineLength\":80}", + "description": "Format a backend service summary in markdown, including author and date metadata with default line wrapping." + }, + { + "inputJson": "{\"summaryText\":\"Deployment completed successfully with no errors.\",\"formatStyle\":\"plain\",\"includeMetadata\":false}", + "description": "Produce a plain text formatted short deployment summary without metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "backend-development.createAttachment", + "description": "This tool accepts binary or base64 encoded file data along with metadata such as filename, content type, and associated entity ID to create and store an attachment in the backend system. It processes the input by validating and saving the attachment, returning a unique attachment ID and URL for later retrieval.", + "category": "backend-development", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the file including extension (e.g., 'image.png').", + "required": true, + "defaultValue": "" + }, + { + "name": "fileData", + "type": "string", + "description": "The base64 encoded content of the file to be attached.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "The MIME type of the file (e.g., 'image/png', 'application/pdf').", + "required": true, + "defaultValue": "" + }, + { + "name": "associatedEntityId", + "type": "string", + "description": "Optional ID of the entity (e.g., user, product) this attachment is related to.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional text description or caption for the attachment.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPublic", + "type": "boolean", + "description": "Flag to indicate if the attachment should be publicly accessible or restricted.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing unique attachmentId, storageUrl for retrieval, and metadata confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to upload media or file attachments to a backend system as part of user content, product catalogs, or documentation management. The tool handles validation and storage, bridging frontend file uploads with backend persistence.", + "limitations": "Does not handle file conversion or virus scanning; expects valid base64 encoded data and correct MIME types. Does not provide complex permission or lifecycle management beyond basic public/private flag.", + "examples": [ + "Create a profile picture attachment for user ID 123 with a PNG image.", + "Upload a PDF invoice associated with an order ID as a private document.", + "Add a public product manual PDF attachment with descriptive text." + ] + }, + "tags": [ + "attachment", + "file-upload", + "backend", + "media", + "storage", + "API", + "create" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"profile.png\",\"fileData\":\"iVBORw0KGgoAAAANSUhEUgAAA...\",\"contentType\":\"image/png\",\"associatedEntityId\":\"user123\",\"description\":\"Profile picture\",\"isPublic\":false}", + "description": "Upload a profile photo for user123 that is private." + }, + { + "inputJson": "{\"fileName\":\"manual.pdf\",\"fileData\":\"JVBERi0xLjMKJcfs...\",\"contentType\":\"application/pdf\",\"associatedEntityId\":\"product789\",\"description\":\"User manual for product 789\",\"isPublic\":true}", + "description": "Add a publicly accessible user manual attachment to a product." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "web-development.analyzeText", + "description": "Analyzes input text from web content, performing linguistic and readability assessments, keyword extraction, and sentiment analysis, returning a structured summary of insights useful for improving website text quality and SEO optimization.", + "category": "web-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The web page text content to analyze, including any HTML tags if relevant.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input text, specified as a two-letter ISO code (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the text and include results.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and return keywords and key phrases from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxKeywords", + "type": "number", + "description": "Maximum number of keywords or key phrases to extract and return.", + "required": false, + "defaultValue": "10" + }, + { + "name": "readabilityThreshold", + "type": "number", + "description": "Threshold score for readability (e.g., Flesch reading ease) below which alerts will be raised.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including readability scores, detected language, sentiment summary if requested, list of extracted keywords, and overall text metrics such as word and sentence counts." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing website text content to improve clarity, SEO, and user engagement by assessing readability, extracting relevant keywords, and understanding sentiment conveyed. Ideal for content audits or optimization tasks.", + "limitations": "This tool does not provide grammar correction, style editing, or deep semantic understanding beyond keyword extraction and sentiment polarity. It cannot process binary data or media content.", + "examples": [ + "Analyze web page article text for readability and keywords to optimize SEO.", + "Evaluate customer feedback text on a website for overall sentiment and key topics.", + "Perform a language and readability assessment on blog post content before publishing." + ] + }, + "tags": [ + "analysis", + "text", + "SEO", + "readability", + "sentiment", + "keywords", + "web-content" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to our website! We offer the best quality products for all your needs. Contact us today.\",\"language\":\"en\",\"includeSentiment\":true,\"includeKeywords\":true,\"maxKeywords\":5,\"readabilityThreshold\":70}", + "description": "Analyzing a short marketing blurb to extract keywords, assess sentiment, and check readability." + }, + { + "inputJson": "{\"text\":\"Voici un article détaillé sur les tendances technologiques actuelles.\",\"language\":\"fr\",\"includeSentiment\":false,\"includeKeywords\":true,\"maxKeywords\":8,\"readabilityThreshold\":50}", + "description": "Analyzing French article text focusing on keyword extraction without sentiment analysis." + }, + { + "inputJson": "{\"text\":\"Customer feedback: \"I love the ease of use, but the shipping was delayed.\",\"language\":\"en\",\"includeSentiment\":true,\"includeKeywords\":false,\"maxKeywords\":0,\"readabilityThreshold\":60}", + "description": "Performing sentiment analysis on a customer feedback snippet without keyword extraction." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "automation-frameworks.buildTest", + "description": "Generates automated test code based on user specifications for applications including web, API, and unit testing. Accepts input parameters defining test type, target framework, code language, test scenarios, and expected outcomes, then outputs ready-to-run test scripts or test files to integrate into CI/CD pipelines.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "testType", + "type": "string", + "description": "Type of test to build (unit, integration, end-to-end, API)", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Testing framework to use (e.g., Jest, Mocha, Selenium, Cypress)", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the test code (e.g., JavaScript, Python, Java)", + "required": true, + "defaultValue": "" + }, + { + "name": "testScenarios", + "type": "array", + "description": "Array of objects describing test scenarios including inputs, expected outputs, and descriptions", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSetupTeardown", + "type": "boolean", + "description": "Whether to include setup and teardown code blocks in the test", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output test code file (e.g., .js, .py, .java)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing generated test code as a string and suggested filename for saving" + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate test code for various testing frameworks and languages based on specified scenarios and requirements, enabling rapid automated test creation to integrate with pipelines or manual review.", + "limitations": "Cannot actually execute tests or verify runtime behavior; test quality and coverage depend entirely on input testScenarios; does not support proprietary or less common test frameworks beyond configured options.", + "examples": [ + "Generate API endpoint tests in Jest/JavaScript for specified input/output pairs.", + "Build E2E Selenium tests in Java with setup and teardown for login workflows.", + "Create unit tests using Mocha for JavaScript functions with mock inputs." + ] + }, + "tags": [ + "automation", + "testing", + "code-generation", + "test-framework", + "CI/CD", + "software-development" + ], + "examples": [ + { + "inputJson": "{\"testType\":\"unit\",\"framework\":\"Jest\",\"language\":\"JavaScript\",\"testScenarios\":[{\"description\":\"adds two numbers\",\"input\":{\"a\":2,\"b\":3},\"expectedOutput\":5}],\"includeSetupTeardown\":false,\"outputFormat\":\".js\"}", + "description": "Generate a simple Jest unit test in JavaScript that tests an addition function without setup/teardown." + }, + { + "inputJson": "{\"testType\":\"end-to-end\",\"framework\":\"Selenium\",\"language\":\"Java\",\"testScenarios\":[{\"description\":\"login success\",\"input\":{\"username\":\"user\",\"password\":\"pass\"},\"expectedOutput\":\"dashboard\"}],\"includeSetupTeardown\":true,\"outputFormat\":\".java\"}", + "description": "Generate Selenium E2E test in Java with setup and teardown for a login scenario." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "automation-frameworks.buildServer", + "description": "Builds and provisions a server based on specified infrastructure parameters. Accepts configuration details such as server type, operating system image, CPU, memory, storage, and network settings. Performs automated setup and deployment using cloud provider APIs or infrastructure-as-code tools. Returns server status, endpoint details, and provisioning logs.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server to build, e.g., virtual machine, container, bare metal.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system image to use, e.g., Ubuntu 22.04, Windows Server 2019.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate to the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM memory in gigabytes.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageGB", + "type": "number", + "description": "Storage size in gigabytes allocated to the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration including subnet, security groups, and IP allocation details.", + "required": false, + "defaultValue": "" + }, + { + "name": "cloudProvider", + "type": "string", + "description": "Cloud provider to use for server provisioning, e.g., AWS, Azure, GCP, or on-premise.", + "required": true, + "defaultValue": "AWS" + }, + { + "name": "autoShutdown", + "type": "boolean", + "description": "Whether to enable automatic shutdown to save resources when inactive.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing serverId, provisioningStatus, serverEndpoint (IP or DNS), and provisioningLogs for debugging and auditing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation and provisioning of infrastructure servers as part of deployment pipelines or infrastructure management workflows. It helps programmatically build servers without manual intervention, speeding up iterative development and testing.", + "limitations": "This tool cannot configure server software beyond initial OS image selection or manage complex multi-server orchestration beyond single server provisioning.", + "examples": [ + "Build a Linux web server with 4 CPUs and 16GB RAM in AWS.", + "Provision a Windows Server 2019 with 8 CPUs and 32GB memory in Azure.", + "Create a test VM with Ubuntu 20.04 with minimal storage and enable auto shutdown." + ] + }, + "tags": [ + "automation", + "infrastructure", + "server", + "cloud-provisioning", + "devops", + "infrastructure-as-code" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"virtualMachine\",\"operatingSystem\":\"Ubuntu 22.04\",\"cpuCores\":4,\"memoryGB\":16,\"storageGB\":100,\"networkConfig\":{\"subnet\":\"subnet-12345\",\"securityGroups\":[\"sg-98765\"]},\"cloudProvider\":\"AWS\",\"autoShutdown\":true}", + "description": "Provision an AWS Ubuntu 22.04 VM with 4 CPU cores, 16GB RAM, 100GB storage, in a specific subnet and security group, with auto shutdown enabled." + }, + { + "inputJson": "{\"serverType\":\"virtualMachine\",\"operatingSystem\":\"Windows Server 2019\",\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":500,\"cloudProvider\":\"Azure\"}", + "description": "Create an Azure Windows Server 2019 VM with 8 CPUs, 32GB RAM, and 500GB storage without additional network config or auto shutdown." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "text-analysis.formatDocument", + "description": "Formats a given text document according to specified style guidelines, including font, font size, line spacing, margins, and alignment. Accepts raw text input and formatting preferences, processes and applies the formatting rules, and outputs the formatted document as a styled string or markup format.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw textual content of the document to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "The name of the font family to apply to the document text (e.g., Arial, Times New Roman).", + "required": false, + "defaultValue": "\"Times New Roman\"" + }, + { + "name": "fontSize", + "type": "number", + "description": "The size of the font in points to use throughout the document.", + "required": false, + "defaultValue": "12" + }, + { + "name": "lineSpacing", + "type": "number", + "description": "The line spacing multiplier to apply (e.g., 1.0 for single spacing, 1.5 for one-and-a-half).", + "required": false, + "defaultValue": "1" + }, + { + "name": "margin", + "type": "object", + "description": "An object specifying margins in inches with properties top, bottom, left, and right.", + "required": false, + "defaultValue": "{\"top\":1,\"bottom\":1,\"left\":1,\"right\":1}" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style, options include 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "formatOutput", + "type": "string", + "description": "The output format for the formatted document, e.g., 'plain', 'html', or 'markdown'.", + "required": false, + "defaultValue": "plain" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document as a string under 'formattedText', with applied styles as per input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a document with consistent and standardized formatting based on user preferences or style guides, for improved readability and presentation in reports, articles, or any textual output.", + "limitations": "This tool does not perform advanced layout features like pagination, table formatting, or embedded multimedia. It also does not edit or correct the content semantics or grammar.", + "examples": [ + "Format a plain text report to have 12pt Times New Roman font, 1.5 line spacing, 1 inch margins, and justified alignment output as HTML.", + "Apply 14pt Arial font with single line spacing and centered alignment to a textual article outputted as markdown.", + "Format user-provided text with default margins and left alignment in plain text format with 11pt font size." + ] + }, + "tags": [ + "formatting", + "document", + "text", + "style", + "layout", + "NLP", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample document. It contains multiple sentences.\",\"fontFamily\":\"Arial\",\"fontSize\":12,\"lineSpacing\":1.5,\"margin\":{\"top\":1,\"bottom\":1,\"left\":1,\"right\":1},\"alignment\":\"justify\",\"formatOutput\":\"html\"}", + "description": "Format a sample document with Arial font, 12pt, 1.5 line spacing, 1 inch margins, justified alignment and return HTML." + }, + { + "inputJson": "{\"text\":\"Another example with different settings.\",\"fontFamily\":\"Georgia\",\"fontSize\":14,\"lineSpacing\":1.0,\"margin\":{\"top\":0.5,\"bottom\":0.5,\"left\":0.75,\"right\":0.75},\"alignment\":\"center\",\"formatOutput\":\"markdown\"}", + "description": "Format the text with Georgia font, 14pt, single spacing, smaller margins, centered alignment, output as markdown." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "text-analysis.formatEmail", + "description": "Formats raw email text into a properly structured email format, organizing headers like To, From, Subject, Date, and body content. Accepts unstructured or loosely structured email content as input and outputs a neatly formatted email string suitable for display or sending.", + "category": "text-analysis", + "parameters": [ + { + "name": "rawEmailText", + "type": "string", + "description": "The unformatted or raw text of the email to be structured and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include standard email headers (To, From, Subject, Date) in the output format.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateFormat", + "type": "string", + "description": "The output format for the date header, using standard date format strings (e.g., 'YYYY-MM-DD HH:mm').", + "required": false, + "defaultValue": "YYYY-MM-DD HH:mm" + }, + { + "name": "lineLength", + "type": "number", + "description": "Maximum line length for wrapping the email body text for readability. Use 0 for no wrapping.", + "required": false, + "defaultValue": "72" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted email text as a string and structured headers extracted or set." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to transform loosely formatted or free-form email text into a conventionally formatted email, including appropriate headers and wrapped body text, suitable for display or further processing by email clients or systems.", + "limitations": "Does not validate email address correctness or handle advanced email features like attachments or HTML formatting. Assumes input is plain text and may not handle malformed headers robustly.", + "examples": [ + "Format a raw email string for consistent presentation with headers and wrapped lines.", + "Convert a user-typed email body plus metadata into a professional email format.", + "Generate an email format tailored with a custom date format and line wrapping." + ] + }, + "tags": [ + "email", + "formatting", + "text-processing", + "communication", + "natural-language" + ], + "examples": [ + { + "inputJson": "{\"rawEmailText\":\"To: alice@example.com\\nFrom: bob@example.com\\nSubject: Meeting notes\\nDate: 2024-06-15 09:30\\n\\nHi Alice,\\nHere are the meeting notes:\\n- Budget approved\\n- Deadline set to August\\nRegards,\\nBob\",\"includeHeaders\":true,\"dateFormat\":\"YYYY-MM-DD HH:mm\",\"lineLength\":72}", + "description": "Formats a raw email text with headers and wraps lines at 72 characters." + }, + { + "inputJson": "{\"rawEmailText\":\"Hey, can you send the report? Thanks!\",\"includeHeaders\":false,\"lineLength\":0}", + "description": "Formats only the email body text without headers and disables line wrapping." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "text-analysis.generateTest", + "description": "Generates a suite of unit tests for given programming code snippets, focusing on code correctness and logic validation. Accepts source code and optional parameters like programming language and testing framework, and outputs test code that can be executed to validate the input code's behavior.", + "category": "text-analysis", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The source code snippet to generate tests for.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the source code (e.g., 'python', 'javascript').", + "required": false, + "defaultValue": "python" + }, + { + "name": "testingFramework", + "type": "string", + "description": "The unit testing framework to generate tests for (e.g., 'unittest', 'pytest', 'jest').", + "required": false, + "defaultValue": "unittest" + }, + { + "name": "testCount", + "type": "number", + "description": "Number of test cases to generate.", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to include edge case tests.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string, including all test cases in the specified language and framework." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate unit tests to verify the correctness of programming code snippets in supported languages, helping validate logic with minimal manual test writing. Particularly useful for speeding up development or ensuring coverage on supplied code fragments.", + "limitations": "Cannot fully understand complex dependencies or external APIs. Generated tests may require manual adjustment for integration contexts or highly complex logic. Supports limited languages and testing frameworks only.", + "examples": [ + "Generate Python unittest tests for a sorting function.", + "Generate Jest tests for a JavaScript function validating email format.", + "Generate 5 test cases including edge cases for a calculator addition method in Python." + ] + }, + "tags": [ + "text-analysis", + "code-generation", + "unit-testing", + "test-generation", + "programming", + "nlp", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"def add(a, b):\\n return a + b\",\"language\":\"python\",\"testingFramework\":\"unittest\",\"testCount\":3,\"includeEdgeCases\":true}", + "description": "Generate Python unittest test cases for a simple addition function." + }, + { + "inputJson": "{\"sourceCode\":\"function isEmail(input) { return /@/.test(input); }\",\"language\":\"javascript\",\"testingFramework\":\"jest\",\"testCount\":2,\"includeEdgeCases\":false}", + "description": "Generate Jest test cases for a JavaScript email validation function." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "api-integration.uploadDocument", + "description": "Uploads a document file to a specified external API endpoint for storage or processing. Accepts file content as base64 string or URL, along with metadata like file name and document type. Returns the external API response, including document ID and status.", + "category": "api-integration", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the document file including extension (e.g., report.pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "Base64 encoded content of the document file. If provided, fileUrl should be empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileUrl", + "type": "string", + "description": "URL to the document file. Used if fileContentBase64 is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type or category of document (e.g., invoice, contract). Helps the API classify the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata key-value pairs to attach to the document upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "The full URL of the external API endpoint to upload the document to.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key for authorization with the external API.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Response object containing the upload status, document ID assigned by the external API, and any message or error returned." + }, + "aiAgent": { + "useCase": "When an AI agent needs to programmatically upload documents such as PDFs, images, or text files to a third-party API for storage, indexing, or further processing. Suitable for workflows automating document ingestion into external systems or cloud services.", + "limitations": "Does not handle direct file system access; requires content in base64 or accessible URL. Cannot validate file contents beyond basic metadata. Dependent on external API reliability and schema.", + "examples": [ + "Upload a contract PDF to the company's document management API with authentication token.", + "Submit an invoice image file given as base64 content to an accounting API endpoint.", + "Upload a document provided by URL with associated metadata for classification." + ] + }, + "tags": [ + "upload", + "document", + "api", + "integration", + "file", + "storage", + "automation" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"contract.pdf\",\"fileContentBase64\":\"JVBERi0xLjQKJcfs...\",\"documentType\":\"contract\",\"metadata\":{\"client\":\"ACME Corp\"},\"apiEndpoint\":\"https://api.example.com/upload\",\"authToken\":\"Bearer abcdef12345\"}", + "description": "Upload a base64-encoded PDF contract document to an external API with metadata and authorization." + }, + { + "inputJson": "{\"fileName\":\"invoice.jpg\",\"fileUrl\":\"https://example.com/invoice.jpg\",\"documentType\":\"invoice\",\"metadata\":{},\"apiEndpoint\":\"https://api.invoices.com/upload\",\"authToken\":\"apikey-67890\"}", + "description": "Upload an invoice image document accessible via URL to a remote API with API key authentication." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "api-integration.formatEmail", + "description": "Formats a structured email message for sending via APIs or SMTP clients. Accepts input parameters like sender, recipient(s), subject, plain text body, optional HTML body, CC and BCC lists, and attachments metadata. Processes and returns a properly structured, validated email object ready for API submission or transport library use.", + "category": "api-integration", + "parameters": [ + { + "name": "from", + "type": "string", + "description": "Email address of the sender. Must be a valid email format.", + "required": true, + "defaultValue": "" + }, + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses. Each must be valid.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "textBody", + "type": "string", + "description": "Plain text content of the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "htmlBody", + "type": "string", + "description": "Optional HTML content for the email body to create rich formatting.", + "required": false, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of CC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of BCC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment objects with properties like filename and content (base64 encoded or URL).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A structured email object including headers (from, to, cc, bcc), subject, content fields (text and optional HTML), and attachments array formatted according to email API standards." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and format emails that conform to typical API or SMTP client requirements. It validates structure, consolidates recipients, and supports rich text and attachments, enabling smooth handoff to email sending services.", + "limitations": "This tool does not send emails, manage authentication, or handle inline embedding of attachments. It also does not validate attachment content beyond basic formatting.", + "examples": [ + "Format an email with plain text and HTML body for an e-commerce order confirmation.", + "Create an email with multiple recipients, CC and BCC addresses, including attachments like invoices or brochures.", + "Prepare a basic text-only email for customer support communication." + ] + }, + "tags": [ + "email", + "formatting", + "api-integration", + "communication", + "messaging", + "attachments", + "html", + "smtp" + ], + "examples": [ + { + "inputJson": "{\"from\":\"sales@example.com\",\"to\":[\"customer1@example.com\",\"customer2@example.com\"],\"subject\":\"Your Order Confirmation\",\"textBody\":\"Thank you for your order. Your order number is 12345.\",\"htmlBody\":\"<p>Thank you for your <b>order</b>. Your order number is <i>12345</i>.</p>\",\"cc\":[\"salesmanager@example.com\"],\"bcc\":[],\"attachments\":[{\"filename\":\"invoice.pdf\",\"content\":\"base64encodedstringhere\"}]}", + "description": "Formatting an order confirmation email with multiple recipients, CC, HTML content, and a PDF attachment." + }, + { + "inputJson": "{\"from\":\"support@company.com\",\"to\":[\"user@example.com\"],\"subject\":\"Password Reset Instructions\",\"textBody\":\"Please click the link below to reset your password.\",\"htmlBody\":\"\",\"cc\":[],\"bcc\":[],\"attachments\":[]}", + "description": "Creating a simple text-only password reset email without attachments." + }, + { + "inputJson": "{\"from\":\"newsletter@service.com\",\"to\":[\"subscriber1@example.com\"],\"subject\":\"Monthly Newsletter\",\"textBody\":\"Here is our newsletter in plain text.\",\"htmlBody\":\"<h1>Monthly Newsletter</h1><p>Enjoy our latest updates!</p>\",\"cc\":[],\"bcc\":[\"manager@example.com\"],\"attachments\":[]}", + "description": "Formatting a newsletter email sent to one recipient with a BCC to manager, including both text and HTML content." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "api-integration.generateJSON", + "description": "Generates a structured JSON object based on a user-defined schema and input values. Accepts a schema describing keys and data types, along with optional data values, and outputs a validated JSON object ready for API consumption or data exchange.", + "category": "api-integration", + "parameters": [ + { + "name": "schema", + "type": "object", + "description": "Defines the structure, keys, and data types for the JSON to be generated. Required to ensure correct format.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputValues", + "type": "object", + "description": "Optional key-value pairs to populate the JSON fields defined in the schema.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeNullValues", + "type": "boolean", + "description": "Whether to include keys with null values if inputValues misses those keys. Defaults to false to omit nulls.", + "required": false, + "defaultValue": "false" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Outputs the JSON string with indentation for readability if true; otherwise, returns compact JSON.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object conforming to the provided schema and populated with the input values, serialized as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create JSON data structures from a predefined schema and optional input values for API requests, configuration files, or data transfer. It helps generate JSON reliably with correct keys and types according to user specifications.", + "limitations": "This tool does not perform deep validation against complex schema rules like unions or references beyond basic type enforcement. It cannot infer missing data without inputValues or generate dynamic content beyond input keys.", + "examples": [ + "Generate a JSON object for a user profile with fields name, age, and email, providing values for all three.", + "Create a JSON config with default values when inputValues omit some optional fields and includeNullValues is false.", + "Generate a pretty-printed JSON payload for an API request with nested objects as defined in the schema." + ] + }, + "tags": [ + "api-integration", + "json", + "data-generation", + "schema-validation", + "automation", + "data-serialization" + ], + "examples": [ + { + "inputJson": "{\"schema\":{\"name\":\"string\",\"age\":\"number\",\"email\":\"string\"},\"inputValues\":{\"name\":\"Alice\",\"age\":30,\"email\":\"alice@example.com\"},\"includeNullValues\":false,\"prettyPrint\":true}", + "description": "Generate a user profile JSON with all fields provided." + }, + { + "inputJson": "{\"schema\":{\"username\":\"string\",\"password\":\"string\",\"token\":\"string\"},\"inputValues\":{\"username\":\"user123\"},\"includeNullValues\":false,\"prettyPrint\":false}", + "description": "Generate login JSON but omit fields (password, token) not provided, without nulls, compact format." + }, + { + "inputJson": "{\"schema\":{\"configName\":\"string\",\"enabled\":\"boolean\",\"threshold\":\"number\"},\"inputValues\":{\"configName\":\"defaultConfig\"},\"includeNullValues\":true,\"prettyPrint\":true}", + "description": "Generate config JSON with missing values included as nulls, pretty printed." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeText", + "description": "Analyzes input text to provide detailed insights into prompt effectiveness, including clarity, intent, sentiment, keyword relevance, and potential ambiguity. Accepts plain text input and optional analysis scope options, returning a comprehensive report that helps optimize prompts for AI interactions.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input text or prompt to analyze for effectiveness and clarity.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) of the text for more accurate analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "analysisScope", + "type": "array", + "description": "List of specific aspects to analyze, such as ['clarity','intent','sentiment','keywords','ambiguity']. If empty or omitted, analyzes all.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An analysis report detailing multiple facets of the input text, such as clarity score, detected intent, sentiment polarity, key themes, and flagged ambiguities." + }, + "aiAgent": { + "useCase": "Use this tool when you need to assess the quality and clarity of prompts or textual inputs to improve AI response relevance and reduce misunderstanding. Ideal for prompt optimization workflows where feedback on language features and intent detection is required.", + "limitations": "Cannot generate or rewrite prompts; it only analyzes provided text. Sentiment and intent detection may be affected by very short or highly technical texts. Not suitable for real-time streaming text analysis.", + "examples": [ + "Analyze the clarity and sentiment of the prompt 'Explain quantum computing in simple terms.'", + "Evaluate keyword relevance and ambiguity in the user input 'Schedule a meeting with John next week.'", + "Check overall intent and possible misunderstandings in a customer support chatbot prompt." + ] + }, + "tags": [ + "prompt-engineering", + "text-analysis", + "nlp", + "sentiment-analysis", + "intent-detection", + "clarity-assessment" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Describe the process of photosynthesis clearly and simply.\",\"language\":\"en\",\"analysisScope\":[\"clarity\",\"intent\"]}", + "description": "Analyze clarity and intent of an educational prompt." + }, + { + "inputJson": "{\"text\":\"Book a flight to New York next Friday.\",\"analysisScope\":[\"keywords\",\"ambiguity\"]}", + "description": "Check keywords and potential ambiguities in a travel-related prompt input." + }, + { + "inputJson": "{\"text\":\"Give me a motivational quote.\",\"language\":\"en\"}", + "description": "General analysis covering all aspects of a simple motivational prompt." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "model-management.analyzeCSV", + "description": "Analyzes CSV datasets to generate comprehensive statistics and data quality insights relevant for AI model training. Accepts a CSV file or CSV content string, processes columns by detecting data types, missing values, distributions, and correlations, and outputs a detailed analysis report aiding dataset understanding and preparation for model building.", + "category": "model-management", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV data as a string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the CSV content includes a header row.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used as the delimiter in the CSV file, e.g., comma, tab.", + "required": false, + "defaultValue": "," + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to analyze for performance optimization; 0 means analyze all rows.", + "required": false, + "defaultValue": "0" + }, + { + "name": "detectCorrelations", + "type": "boolean", + "description": "Flag to include correlation analysis between numerical columns.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including data types per column, counts of missing/valid values, basic statistics (mean, median, std for numerics), value distributions, and optionally correlation matrix." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly understand the structure, quality, and statistical properties of a CSV dataset intended for AI model training or evaluation. It helps identify data issues, understand feature distributions, and assess feature relationships to improve preprocessing and model decisions.", + "limitations": "Does not perform advanced data cleaning or imputation. Cannot handle CSVs with complex nested structures or extremely large files without sampling. Correlation analysis is limited to numeric data only.", + "examples": [ + "Analyze the dataset provided in CSV format to check for missing values and understand data distributions.", + "Generate a summary report of a CSV file to prepare it for feature selection in a machine learning pipeline.", + "Assess correlations between features in a given CSV dataset to identify redundant variables." + ] + }, + "tags": [ + "analysis", + "csv", + "data-quality", + "feature-engineering", + "model-preparation", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"id,name,age,salary\\n1,Alice,30,70000\\n2,Bob,NaN,48000\\n3,Charlie,25,52000\",\"hasHeader\":true,\"delimiter\":\",\",\"maxRows\":0,\"detectCorrelations\":true}", + "description": "Analyze a simple employee dataset CSV with missing age value to report column data types, missing data, and correlations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "model-management.renderDocument", + "description": "Renders a comprehensive document summarizing AI model information, including architecture, training metrics, and deployment details. Accepts model metadata and configuration objects as input and produces a formatted document in HTML or PDF format suitable for sharing or archiving.", + "category": "model-management", + "parameters": [ + { + "name": "modelMetadata", + "type": "object", + "description": "An object containing metadata about the AI model, such as name, version, description, and authors.", + "required": true, + "defaultValue": "" + }, + { + "name": "trainingMetrics", + "type": "object", + "description": "An object containing training and evaluation metrics like accuracy, loss curves, and validation scores.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentInfo", + "type": "object", + "description": "Information about the deployment environment and configuration of the model.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "The format to render the document in, e.g., 'PDF' or 'HTML'.", + "required": true, + "defaultValue": "PDF" + }, + { + "name": "includeGraphs", + "type": "boolean", + "description": "Whether to include visual graphs such as loss curves and accuracy charts in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customSections", + "type": "array", + "description": "Optional array of additional text sections to include in the document for context or notes.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object with a base64-encoded string of the rendered document and the document MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when detailed documentation of an AI model's attributes, training outcomes, and deployment contexts needs to be compiled into a single, professionally formatted document for review, audit, or sharing purposes. This helps streamline reporting and supports transparent model governance.", + "limitations": "This tool does not perform any model evaluation or metric calculation; it only formats and renders provided data into documents. It also cannot generate content beyond supplied inputs or dynamically fetch missing model information.", + "examples": [ + "Generate a PDF report combining model details and training metrics for the latest model version.", + "Create an HTML document summarizing deployment info and accuracy graphs for an AI model.", + "Render a document that includes custom notes and metadata describing a trained neural network model." + ] + }, + "tags": [ + "model-management", + "documentation", + "rendering", + "AI-models", + "report-generation" + ], + "examples": [ + { + "inputJson": "{\"modelMetadata\":{\"name\":\"ImageClassifier\",\"version\":\"1.2\",\"description\":\"CNN model for image classification\",\"authors\":[\"Alice\",\"Bob\"]},\"trainingMetrics\":{\"accuracy\":0.95,\"loss\":0.1,\"validationAccuracy\":0.93},\"deploymentInfo\":{\"environment\":\"AWS SageMaker\",\"endpoint\":\"https://model.endpoint\"},\"documentFormat\":\"PDF\",\"includeGraphs\":true,\"customSections\":[\"This model is optimized for speed and accuracy.\"]}", + "description": "Render a PDF document summarizing model metadata, training accuracy and loss, deployment info, including graphs and custom notes." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "model-management.formatFunction", + "description": "This tool accepts a string containing AI model-related function code and reformats it for improved readability and style adherence. It processes the input code by applying consistent indentation, fixing spacing, and optionally converting code style conventions. The output is a formatted code string suitable for integration or presentation.", + "category": "model-management", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "The raw code of the model-related function to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code (e.g., 'python', 'javascript').", + "required": true, + "defaultValue": "python" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted code.", + "required": false, + "defaultValue": "4" + }, + { + "name": "convertToSingleQuotes", + "type": "boolean", + "description": "If true, converts all string literals to single quotes (applicable to supported languages).", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "The maximum line length to enforce with line wrapping. 0 means no wrapping.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the reformatted function code string under 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to cleanly present, store, or refactor AI model-related function code by applying consistent styling and formatting rules. It is especially useful for preprocessing functions before deployment, review, or documentation generation to improve code clarity and maintainability.", + "limitations": "Does not validate code semantics or correctness. It only reformats code syntax according to common style rules. Complex style customizations or language-specific linting rules might not be fully supported.", + "examples": [ + "Format a Python function that defines a neural network layer for better readability.", + "Convert JavaScript model utility functions to consistently use single quotes with 2-space indentation.", + "Wrap long lines in a TensorFlow operation function to comply with style guidelines." + ] + }, + "tags": [ + "code-formatting", + "model-management", + "function", + "code-style", + "AI-models", + "software-quality" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"def build_model(input_shape):\\n model=Sequential()\\n model.add(Dense(64,activation='relu',input_shape=input_shape))\\n model.add(Dense(10,activation='softmax'))\\n return model\",\"language\":\"python\",\"indentationSize\":4,\"convertToSingleQuotes\":true,\"maxLineLength\":80}", + "description": "Format a simple Python function defining a neural network model with single quotes and standard indentation." + }, + { + "inputJson": "{\"functionCode\":\"function predict(input) { return model.predict(input); }\",\"language\":\"javascript\",\"indentationSize\":2,\"convertToSingleQuotes\":false,\"maxLineLength\":0}", + "description": "Format a short JavaScript prediction function using 2 spaces for indentation without changing quote style." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "model-management.composeReport", + "description": "Generates a comprehensive report summarizing the training, evaluation, and deployment status of an AI model. Accepts model metadata, training metrics, evaluation results, deployment details, and optional custom notes. Produces a formatted text or JSON report consolidating key insights for stakeholders.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to report on.", + "required": true, + "defaultValue": "" + }, + { + "name": "trainingMetrics", + "type": "object", + "description": "Object containing training performance metrics (e.g., accuracy, loss over epochs).", + "required": true, + "defaultValue": "" + }, + { + "name": "evaluationResults", + "type": "object", + "description": "Evaluation metrics describing model performance on test datasets.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentStatus", + "type": "string", + "description": "Current deployment status of the model (e.g., 'deployed', 'pending', 'failed').", + "required": true, + "defaultValue": "" + }, + { + "name": "customNotes", + "type": "string", + "description": "Additional notes or observations to include in the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report, either 'text' for human-readable or 'json' structured output.", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report as a string field 'report' in the specified format along with a summary of key metrics." + }, + "aiAgent": { + "useCase": "Use this tool whenever a detailed summary of an AI model's lifecycle metrics and deployment status is required for review, documentation, or stakeholder communication. Useful after model training and before or after deployment to consolidate performance insights and operational notes.", + "limitations": "This tool does not perform the actual training or evaluation computations; it only formats and consolidates provided data into a report. It cannot access external databases or update deployment systems automatically.", + "examples": [ + "Generate a report for model ID 'abc123' with latest training and evaluation results in text format.", + "Create a JSON summary report highlighting deployment status and custom notes for a specific AI model.", + "Produce a detailed performance and deployment report including custom observations for stakeholder review." + ] + }, + "tags": [ + "model-management", + "reporting", + "summary", + "training", + "evaluation", + "deployment", + "AI models" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"modelX2024\",\"trainingMetrics\":{\"accuracy\":0.95,\"loss\":0.1},\"evaluationResults\":{\"precision\":0.93,\"recall\":0.91},\"deploymentStatus\":\"deployed\",\"customNotes\":\"Model stable after 3 months in production.\",\"outputFormat\":\"text\"}", + "description": "Generate a plain text report with training and evaluation metrics and deployment notes." + }, + { + "inputJson": "{\"modelId\":\"imgClassifierV2\",\"trainingMetrics\":{\"accuracy\":0.88,\"loss\":0.15},\"evaluationResults\":{\"f1Score\":0.85,\"auc\":0.9},\"deploymentStatus\":\"pending\",\"customNotes\":\"Awaiting approval for deployment.\",\"outputFormat\":\"json\"}", + "description": "Produce a structured JSON report outlining evaluation results and deployment status." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "model-management.buildDatabase", + "description": "Creates and configures a scalable database infrastructure tailored for AI model management. Accepts specifications such as database type, storage size, replication settings, and security options. Processes configuration and deploys the database. Returns status and connection details for integration and further management.", + "category": "model-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database to build, e.g., 'SQL', 'NoSQL', 'GraphDB'.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "Allocated storage size in gigabytes for the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "replicationEnabled", + "type": "boolean", + "description": "Whether to enable database replication for high availability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "replicaCount", + "type": "number", + "description": "Number of replicas for the database when replication is enabled.", + "required": false, + "defaultValue": "1" + }, + { + "name": "securityConfig", + "type": "object", + "description": "Security and access configurations including encryption and authentication settings.", + "required": false, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region where the database infrastructure should be deployed.", + "required": false, + "defaultValue": "us-east-1" + } + ], + "returns": { + "type": "object", + "description": "An object containing deployment status, database endpoint URL, connection credentials (secured), and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI management platform or pipeline needs to initialize a new database backend specifically for storing model metadata, training data indexes, or experimental logs under controlled configuration. Suitable when the agent needs to automate infrastructure setup with specific scaling, replication, or security requirements.", + "limitations": "This tool does not train or manage models themselves; it only sets up the underlying database infrastructure. It cannot migrate existing databases or perform schema design beyond basic setup.", + "examples": [ + "Build a SQL database with 100GB storage and replication enabled with 2 replicas in the Europe region.", + "Create a NoSQL database without replication for fast prototyping, with encrypted access configuration.", + "Deploy a graph database with default settings for tracking AI experiment lineage." + ] + }, + "tags": [ + "database", + "infrastructure", + "deployment", + "model-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"SQL\",\"storageSizeGB\":100,\"replicationEnabled\":true,\"replicaCount\":2,\"securityConfig\":{\"encryption\":\"AES-256\",\"authentication\":\"IAM-role\"},\"region\":\"eu-west-1\"}", + "description": "Build a robust SQL database with 100GB storage, replication with 2 replicas, encryption, and IAM-based authentication in the Europe West region." + }, + { + "inputJson": "{\"databaseType\":\"NoSQL\",\"storageSizeGB\":50,\"replicationEnabled\":false,\"securityConfig\":{\"encryption\":\"AES-128\"},\"region\":\"us-west-2\"}", + "description": "Deploy a NoSQL database with 50GB storage size, no replication, AES-128 encryption, in US West 2 region." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "model-management.buildServer", + "description": "Builds and provisions a machine learning model training and deployment server. Accepts configuration inputs such as server specifications, container runtime, GPU availability, and framework versions, then sets up the server environment with required dependencies and outputs the server status and connection details.", + "category": "model-management", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "Unique name identifier for the server to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate for the server instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes to provision for the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "gpuCount", + "type": "number", + "description": "Number of GPUs to attach to the server for accelerated training (0 if none).", + "required": false, + "defaultValue": "0" + }, + { + "name": "framework", + "type": "string", + "description": "Primary AI framework to install (e.g., TensorFlow, PyTorch).", + "required": true, + "defaultValue": "" + }, + { + "name": "containerRuntime", + "type": "string", + "description": "Container runtime environment to use (e.g., Docker, Podman).", + "required": false, + "defaultValue": "Docker" + }, + { + "name": "osType", + "type": "string", + "description": "Operating system type to install (e.g., Ubuntu 20.04, CentOS 8).", + "required": false, + "defaultValue": "Ubuntu 20.04" + }, + { + "name": "enableMonitoring", + "type": "boolean", + "description": "Flag to set up server monitoring tools and dashboards.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing server build status, IP address, ssh access details, installed frameworks, and monitoring endpoint (if enabled)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI project requires provisioning a dedicated server environment for model training or deployment with specific hardware and software configurations. It automates server setup, including resource allocation and framework installation, facilitating streamlined infrastructure readiness.", + "limitations": "This tool does not manage cloud provider account resources directly and cannot handle complex multi-node cluster orchestration beyond single server setup.", + "examples": [ + "Build a server named 'ml-server-01' with 8 CPU cores, 32GB RAM, 1 GPU, PyTorch framework, and monitoring enabled.", + "Set up a lightweight server with 4 CPU cores and TensorFlow on Ubuntu 20.04 without GPU.", + "Provision a Docker-based server with 16 CPU cores, 64GB RAM, and no GPUs for CPU-only model training." + ] + }, + "tags": [ + "model-management", + "server-provisioning", + "infrastructure", + "AI-training", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"ml-server-01\",\"cpuCores\":8,\"memoryGB\":32,\"gpuCount\":1,\"framework\":\"PyTorch\",\"containerRuntime\":\"Docker\",\"osType\":\"Ubuntu 20.04\",\"enableMonitoring\":true}", + "description": "Provision a high-performance AI server with GPU and monitoring enabled." + }, + { + "inputJson": "{\"serverName\":\"cpu-train-01\",\"cpuCores\":4,\"memoryGB\":16,\"gpuCount\":0,\"framework\":\"TensorFlow\",\"containerRuntime\":\"Docker\",\"osType\":\"Ubuntu 20.04\",\"enableMonitoring\":false}", + "description": "Set up a CPU-only training server with TensorFlow for smaller model experiments." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "model-management.createSentence", + "description": "Generates a coherent, grammatically correct sentence based on an optional input prompt or topic. Accepts parameters to specify style, length, and tone to create customized sentences for training datasets, text generation models, or content creation pipelines. Returns a generated sentence string.", + "category": "model-management", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "Optional starting phrase or topic to base the sentence on.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Desired length of the sentence in words. If unspecified, a default average length is used.", + "required": false, + "defaultValue": "15" + }, + { + "name": "style", + "type": "string", + "description": "Specifies the writing style, e.g., formal, casual, technical, or narrative.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the sentence such as neutral, positive, negative, or humorous.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) for sentence generation.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence string and metadata like the used parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate example sentences for training or testing language models, create sample outputs for NLP demos, or craft controlled text snippets with specific style, length, or tone requirements. It helps automate content creation when precise sentence-level generation is required.", + "limitations": "The tool generates single sentences only and cannot create longer coherent paragraphs or documents. It depends on language modeling capabilities but may not handle highly specialized domain jargon without prompt guidance. It does not guarantee factual accuracy or context consistency beyond sentence scope.", + "examples": [ + "Generate a formal sentence about renewable energy.", + "Create a casual, humorous sentence starting with 'Have you ever noticed...'", + "Produce a short, positive sentence in English with a technical style." + ] + }, + "tags": [ + "generation", + "nlp", + "text", + "sentence", + "content-creation", + "language-model", + "training-data" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"Artificial intelligence in healthcare\",\"length\":20,\"style\":\"formal\",\"tone\":\"neutral\",\"language\":\"en\"}", + "description": "Create a formal, neutral sentence about AI applications in healthcare with 20 words." + }, + { + "inputJson": "{\"prompt\":\"Have you ever noticed\",\"length\":15,\"style\":\"casual\",\"tone\":\"humorous\",\"language\":\"en\"}", + "description": "Generate a casual, humorous sentence starting with 'Have you ever noticed' containing about 15 words." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Sentence", + "context": null + } + }, + { + "name": "model-management.createConfig", + "description": "Creates a configuration object for training or deploying an AI model by accepting parameters such as model architecture, hyperparameters, dataset paths, and resource allocation details. Processes the inputs to produce a structured configuration file in JSON format suitable for downstream model management tasks.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name or identifier for the AI model to be configured.", + "required": true, + "defaultValue": "" + }, + { + "name": "architecture", + "type": "string", + "description": "The model architecture type, e.g., 'ResNet50', 'Transformer', 'BERT'.", + "required": true, + "defaultValue": "" + }, + { + "name": "hyperparameters", + "type": "object", + "description": "An object specifying key hyperparameters such as learning rate, batch size, number of epochs.", + "required": false, + "defaultValue": "" + }, + { + "name": "datasetPaths", + "type": "array", + "description": "List of file paths or URIs to training and validation datasets.", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceAllocation", + "type": "object", + "description": "Resource allocation settings, including number of GPUs, CPU cores, and memory limits.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputDirectory", + "type": "string", + "description": "The file system path where the generated configuration file will be saved.", + "required": false, + "defaultValue": "" + }, + { + "name": "configFormat", + "type": "string", + "description": "The output configuration file format, e.g., 'json' or 'yaml'. Default is 'json'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "JSON object representing the complete model configuration, ready for training or deployment workflows." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to programmatically generate or update standardized configuration files for AI model lifecycle tasks such as training or deployment, ensuring consistency and automation in model management pipelines.", + "limitations": "This tool does not validate the semantic correctness of model architectures or hyperparameters beyond structural formatting; domain-specific validation should be handled separately.", + "examples": [ + "Create a config for training a Transformer model with specified hyperparameters and dataset paths.", + "Generate a deployment config for a ResNet50 model specifying resource usage.", + "Update an existing config by changing the output directory and adding new datasets." + ] + }, + "tags": [ + "model management", + "configuration", + "AI model", + "training config", + "deployment config" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"textClassifier\",\"architecture\":\"BERT\",\"hyperparameters\":{\"learningRate\":0.0001,\"batchSize\":32,\"epochs\":10},\"datasetPaths\":[\"/data/train.csv\",\"/data/val.csv\"],\"resourceAllocation\":{\"gpus\":2,\"cpus\":4,\"memoryGb\":16},\"outputDirectory\":\"/configs/models\",\"configFormat\":\"json\"}", + "description": "Create a training configuration for a BERT text classification model with specific hyperparameters and resource constraints." + }, + { + "inputJson": "{\"modelName\":\"imageNetClassifier\",\"architecture\":\"ResNet50\",\"datasetPaths\":[\"/datasets/imagenet/train\",\"/datasets/imagenet/val\"],\"configFormat\":\"json\"}", + "description": "Generate a basic config file for training a ResNet50 on ImageNet data with default hyperparameters and no resource allocation specified." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "model-management.createEndpoint", + "description": "Creates and deploys a new AI model serving endpoint. Accepts model identifier and configuration settings, provisions the endpoint with specified resource allocation, and returns the endpoint URL and status for client integration.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the trained model to be deployed as an endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointName", + "type": "string", + "description": "Desired name for the new endpoint deployment.", + "required": true, + "defaultValue": "" + }, + { + "name": "computeResources", + "type": "object", + "description": "Configuration object specifying CPU, memory, and optionally GPU allocation for the endpoint.", + "required": false, + "defaultValue": "{\"cpu\":1,\"memoryGb\":2}" + }, + { + "name": "scalingPolicy", + "type": "object", + "description": "Scaling configuration defining minimum and maximum replicas and autoscaling thresholds.", + "required": false, + "defaultValue": "{\"minReplicas\":1,\"maxReplicas\":3}" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires authentication tokens for requests (true/false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the endpoint URL, deployment status, creation timestamp, and resource allocation details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically deploy a trained model for external or internal consumption, turning a model artifact into a live RESTful or gRPC endpoint with specified resources and scaling options. It is ideal for automating model deployment pipelines or integrating deployment steps in MLOps workflows.", + "limitations": "This tool does not handle model training or versioning; it requires a trained model ID already available. It cannot modify or update existing endpoints, only create new ones. Endpoint runtime environment choices are limited to predefined settings and cannot include custom runtime code.", + "examples": [ + "Create an endpoint for model 'xyz123' with 2 CPUs and 4GB RAM for production use.", + "Deploy a real-time inference endpoint named 'image-classifier-prod' with autoscaling between 2 to 5 replicas.", + "Set up a secured endpoint requiring authentication for the 'sentiment-analysis' model with default compute resources." + ] + }, + "tags": [ + "deployment", + "model-serving", + "AI", + "endpoint", + "MLOps", + "automation" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abcde12345\",\"endpointName\":\"recommendation-service\",\"computeResources\":{\"cpu\":2,\"memoryGb\":4},\"scalingPolicy\":{\"minReplicas\":2,\"maxReplicas\":4},\"authenticationRequired\":true}", + "description": "Deploys model abcde12345 as 'recommendation-service' endpoint with 2 CPUs, 4GB RAM, autoscaling between 2 and 4 replicas, and requires authentication." + }, + { + "inputJson": "{\"modelId\":\"xyz987\",\"endpointName\":\"fraud-detection\",\"authenticationRequired\":false}", + "description": "Creates a simple fraud-detection endpoint from model xyz987 with default resources and no authentication required." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "file-operations.createDocument", + "description": "Creates a new document file with specified content and format. Accepts input parameters defining document type (such as txt, md, or docx), title, body content, optional metadata, and encoding. Outputs a document file saved to the specified path or returns its binary data in base64 form if no path is given.", + "category": "file-operations", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "The format of the document to create, e.g., 'txt', 'md', 'docx'.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title or heading to include in the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyContent", + "type": "string", + "description": "The main textual content to include inside the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs to store document metadata such as author or creation date.", + "required": false, + "defaultValue": "" + }, + { + "name": "encoding", + "type": "string", + "description": "Text encoding to use when creating plain text documents, e.g., 'utf-8'.", + "required": false, + "defaultValue": "utf-8" + }, + { + "name": "filePath", + "type": "string", + "description": "Optional full file path to save the created document. If empty, document data is returned as base64.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with either 'filePath' confirming where the document was saved, or 'base64Data' containing the document contents encoded as a base64 string if no file path was provided." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate text-based document files in formats like plain text, markdown, or Word documents. It supports adding metadata and saving to a given path or retrieving the file data directly. Ideal for automating report creation, note generation, and templated documents.", + "limitations": "Does not support formats requiring complex formatting beyond basic plain text, markdown, and docx structures. Cannot embed images or handle spreadsheets. Requires valid file path if saving to disk.", + "examples": [ + "Create a markdown document report from a text summary.", + "Generate a plain text note file and get base64 content for upload.", + "Create a docx file with title, body, and author metadata saved at a path." + ] + }, + "tags": [ + "file", + "document", + "create", + "txt", + "md", + "docx", + "text", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"md\",\"title\":\"Meeting Notes\",\"bodyContent\":\"# Meeting Notes\\n- Discuss project timeline\\n- Assign tasks\",\"metadata\":{\"author\":\"Jane Doe\"},\"filePath\":\"/documents/meeting_notes.md\"}", + "description": "Creates a markdown file named meeting_notes.md containing notes from a meeting with author metadata." + }, + { + "inputJson": "{\"documentType\":\"txt\",\"bodyContent\":\"Simple notes content goes here.\",\"encoding\":\"utf-8\"}", + "description": "Generates a plain text document with specified content; returns base64 data since no file path provided." + }, + { + "inputJson": "{\"documentType\":\"docx\",\"title\":\"Project Proposal\",\"bodyContent\":\"This is the project proposal document.\",\"metadata\":{\"author\":\"John Smith\",\"dateCreated\":\"2024-06-20\"},\"filePath\":\"C:/projects/proposal.docx\"}", + "description": "Creates a Word document with title, body text, and metadata, and saves it to the specified Windows file path." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "notifications.createFunction", + "description": "Creates a customizable notification handler function in code that can be integrated into applications. Accepts parameters such as notification type, message template, delivery methods, and optional metadata. It processes these inputs to generate a reusable code function snippet that triggers notifications accordingly.", + "category": "notifications", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The name of the notification function to generate", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "The category of notification (e.g., 'email', 'sms', 'push')", + "required": true, + "defaultValue": "" + }, + { + "name": "messageTemplate", + "type": "string", + "description": "A template string for the notification message with placeholders for dynamic data", + "required": true, + "defaultValue": "" + }, + { + "name": "deliveryMethods", + "type": "array", + "description": "An array of delivery method identifiers to specify how notifications are sent", + "required": true, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata or configuration for the notification function (e.g., priority, retries)", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeErrorHandling", + "type": "boolean", + "description": "Whether the function includes internal error handling logic", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code string and a summary of the function" + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to automatically generate standardized notification handler functions for different platforms or delivery mechanisms. This tool helps create ready-to-use code that can be integrated into applications to send notifications based on specific templates and configurations. Useful in workflows involving automated alert systems, reminders, or messaging services.", + "limitations": "Does not execute or deploy the generated function; it only creates the code snippet. It does not support real-time customization beyond the initial parameters or integration with outside APIs beyond placeholder use.", + "examples": [ + "Create a function named 'sendWelcomeEmail' for email notifications with a welcome message template, delivered via SMTP.", + "Create a push notification function called 'alertUser' with a message template and specified delivery methods including push and SMS.", + "Generate a notification function with error handling disabled and custom metadata priority settings." + ] + }, + "tags": [ + "notification", + "function", + "code generation", + "messaging", + "alerts", + "automation" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"sendWelcomeEmail\",\"notificationType\":\"email\",\"messageTemplate\":\"Hello {{userName}}, welcome to our service!\",\"deliveryMethods\":[\"smtp\"],\"metadata\":{\"priority\":\"high\"},\"includeErrorHandling\":true}", + "description": "Generate a function to send welcome emails via SMTP with high priority and error handling." + }, + { + "inputJson": "{\"functionName\":\"alertUser\",\"notificationType\":\"push\",\"messageTemplate\":\"Alert: {{event}} detected.\",\"deliveryMethods\":[\"push\",\"sms\"],\"metadata\":{},\"includeErrorHandling\":true}", + "description": "Create a push notification function that also supports SMS delivery, with error handling." + }, + { + "inputJson": "{\"functionName\":\"notifyAdmin\",\"notificationType\":\"email\",\"messageTemplate\":\"Admin alert: {{issue}} occurred.\",\"deliveryMethods\":[\"smtp\"],\"metadata\":{\"priority\":\"urgent\",\"retries\":3},\"includeErrorHandling\":false}", + "description": "Generate an email notification function for admins with no internal error handling and retry logic." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "email-communication.uploadDocument", + "description": "Uploads a document file to be attached or embedded within an email campaign or automated email flow. Accepts document content in base64 encoding or as a URL link, processes file metadata, and returns a document ID and URL for referencing in subsequent email operations.", + "category": "email-communication", + "parameters": [ + { + "name": "documentName", + "type": "string", + "description": "The name of the document file including extension, e.g., 'brochure.pdf'.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentContentBase64", + "type": "string", + "description": "Base64 encoded string of the document content. Required if documentUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentUrl", + "type": "string", + "description": "Publicly accessible URL to fetch the document if base64 content is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "MIME type of the document, e.g., 'application/pdf', 'image/png'. If not provided, inferred from documentName extension.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text about the document for internal reference.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique document ID, accessible URL for the uploaded document, file name, and content type." + }, + "aiAgent": { + "useCase": "Use this tool when preparing email campaigns or automated emails that require attaching or embedding documents such as PDFs, images, or other file types. This tool enables uploading documents to the email service so they can be referenced or linked in emails sent to recipients.", + "limitations": "This tool only uploads and stores the document but does not send the email itself or validate document content beyond basic MIME type detection. It cannot process extremely large files beyond the platform's limit and does not convert document formats.", + "examples": [ + "Upload a PDF brochure to embed in a marketing email.", + "Upload a terms and conditions document to attach to a customer service email.", + "Upload an image file to include as a downloadable document in newsletters." + ] + }, + "tags": [ + "email", + "upload", + "document", + "attachment", + "email-campaign", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentName\":\"brochure.pdf\",\"documentContentBase64\":\"JVBERi0xLjQKJcfs...\",\"contentType\":\"application/pdf\",\"description\":\"2024 Spring brochure.\"}", + "description": "Uploading a PDF brochure by sending base64 encoded content along with document info." + }, + { + "inputJson": "{\"documentName\":\"terms.txt\",\"documentUrl\":\"https://example.com/terms.txt\",\"description\":\"Terms and conditions for service.\"}", + "description": "Uploading a terms text document via URL without sending base64 content." + }, + { + "inputJson": "{\"documentName\":\"promo-image.png\",\"documentContentBase64\":\"iVBORw0KGgoAAAANSUhEUg...\",\"contentType\":\"image/png\"}", + "description": "Uploading a PNG image document as base64 content with explicit content type." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "email-communication.formatDocument", + "description": "Formats a text document intended for email communication by applying specified styles and layout options. Accepts raw text or HTML content and returns a formatted HTML string optimized for email clients, including options such as font type, size, color, alignment, and adding headers or footers.", + "category": "email-communication", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main body text or HTML of the document to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentFormat", + "type": "string", + "description": "The format of the content input, either 'text' for plain text or 'html' for already formatted HTML.", + "required": true, + "defaultValue": "text" + }, + { + "name": "fontFamily", + "type": "string", + "description": "The font family to apply to the document content (e.g., Arial, Helvetica, Times New Roman).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "The font size in pixels to apply to the document content.", + "required": false, + "defaultValue": "14" + }, + { + "name": "fontColor", + "type": "string", + "description": "The font color in hex format (e.g., #000000 for black).", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "textAlign", + "type": "string", + "description": "The text alignment for the document content: left, center, right, or justify.", + "required": false, + "defaultValue": "left" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include a standard header at the top of the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "headerText", + "type": "string", + "description": "Text to include in the header if includeHeader is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFooter", + "type": "boolean", + "description": "Whether to include a standard footer at the bottom of the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "footerText", + "type": "string", + "description": "Text to include in the footer if includeFooter is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document as an HTML string suitable for embedding in emails." + }, + "aiAgent": { + "useCase": "Use this tool when you have email content in plain text or minimal markup format and need to produce a styled, email-client-compatible HTML document with consistent font, color, alignment, and optional header/footer sections. Ideal for preparing newsletters, notifications, or marketing emails with simple styling needs.", + "limitations": "This tool does not support advanced email templating features such as dynamic content blocks, interactive elements, or responsive multi-device layouts beyond basic font styling and headers/footers.", + "examples": [ + "Format a plain text email body with Arial font, 14px size, black color, and centered alignment including a header and footer.", + "Convert a minimal HTML snippet into a properly styled email document with custom font and color.", + "Produce a formatted email document from plain text with left alignment and no header or footer." + ] + }, + "tags": [ + "email", + "formatting", + "document", + "html", + "template", + "style" + ], + "examples": [ + { + "inputJson": "{\"content\":\"Hello customer,\\nThank you for your order.\",\"contentFormat\":\"text\",\"fontFamily\":\"Helvetica\",\"fontSize\":16,\"fontColor\":\"#333333\",\"textAlign\":\"center\",\"includeHeader\":true,\"headerText\":\"Company Newsletter\",\"includeFooter\":true,\"footerText\":\"© 2024 Company Inc.\"}", + "description": "Format a simple plain text email with Helvetica font, larger text, centered alignment, and add header and footer." + }, + { + "inputJson": "{\"content\":\"<p>Dear User,</p><p>Welcome to our service.</p>\",\"contentFormat\":\"html\",\"fontFamily\":\"Times New Roman\",\"fontSize\":14,\"fontColor\":\"#000000\",\"textAlign\":\"left\",\"includeHeader\":false,\"includeFooter\":false}", + "description": "Format a small HTML snippet with Times New Roman font, default size and color, no header/footer." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "infrastructure-management.uploadCode", + "description": "Uploads source code or deployment scripts to a specified cloud or physical infrastructure environment. Accepts code files or directories along with target environment details. Performs validation and transfers files securely, returning status of the upload and environment details.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "codePath", + "type": "string", + "description": "Local path to the code file or directory to upload", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "Identifier or URL of the target infrastructure environment where code should be uploaded", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Authentication token or credentials to authorize the upload operation", + "required": true, + "defaultValue": "" + }, + { + "name": "recursive", + "type": "boolean", + "description": "If true and the codePath is a directory, upload all nested files and folders recursively", + "required": false, + "defaultValue": "true" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, existing files at the destination will be overwritten", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time, in seconds, to wait for the upload operation before timing out", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing status, message, and details of the upload operation. Includes success boolean, number of files uploaded, and any error information." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload or deploy source code or scripts to a specific cloud or physical infrastructure environment, such as for automation or continuous integration/deployment workflows. It facilitates secure transfer along with validation and reporting of status.", + "limitations": "This tool does not build, compile, or test the code itself, nor does it manage the deployment lifecycle beyond uploading files. It also requires proper authentication and target environment configuration to function correctly.", + "examples": [ + "Upload a web application directory to a staging server", + "Push updated deployment scripts to cloud infrastructure", + "Transfer configuration files to physical servers" + ] + }, + "tags": [ + "infrastructure", + "upload", + "deployment", + "code", + "automation", + "cloud", + "physicalServers" + ], + "examples": [ + { + "inputJson": "{\"codePath\":\"./myApp\",\"targetEnvironment\":\"https://staging.examplecloud.com/api/upload\",\"authenticationToken\":\"abcdef123456\",\"recursive\":true,\"overwriteExisting\":true}", + "description": "Upload the entire 'myApp' directory recursively with overwrite to a staging cloud environment using provided auth token." + }, + { + "inputJson": "{\"codePath\":\"./deploy.sh\",\"targetEnvironment\":\"ssh://192.168.1.100/home/ops/scripts\",\"authenticationToken\":\"sshkey-7890\",\"recursive\":false}", + "description": "Upload a single deployment script file to the physical server via SSH authentication without overwriting by default." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "infrastructure-management.createCommit", + "description": "Creates a code commit in a specified repository within an infrastructure management context. Accepts details such as repository identifier, branch name, commit message, and a list of file changes (additions, modifications, deletions). Processes these to generate a new commit in the repository and returns the commit identifier and metadata.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "repositoryId", + "type": "string", + "description": "The unique identifier or URL of the repository where the commit will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The target branch name on which to apply the commit.", + "required": true, + "defaultValue": "\"main\"" + }, + { + "name": "commitMessage", + "type": "string", + "description": "The descriptive message explaining the purpose of the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "changes", + "type": "array", + "description": "An array of file change objects representing additions, modifications, or deletions. Each object includes filePath (string), changeType (string: 'add','modify','delete'), and content (string, required for add/modify).", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author making the commit.", + "required": false, + "defaultValue": "\"Infrastructure Automation\"" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the author making the commit.", + "required": false, + "defaultValue": "\"infra@automation.local\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing information about the created commit, including commitId (string), commitUrl (string), timestamp (ISO 8601 string), and branch (string)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate code commits to infrastructure repositories, such as updating configuration files, deployment scripts, or infrastructure as code templates programmatically. It handles creating commits with properly structured changes on specified branches, facilitating continuous infrastructure updates.", + "limitations": "This tool does not handle repository creation, branch protection policies, merge requests, or conflict resolution. It assumes that authorization and repository access permissions are managed externally.", + "examples": [ + "Create a commit to update the Terraform configuration on the 'dev' branch with new resource definitions.", + "Commit a deletion of deprecated config files to the 'main' branch with an explanatory message.", + "Add a new monitoring script file on the 'feature/monitoring' branch with detailed commit author info." + ] + }, + "tags": [ + "infrastructure", + "commit", + "code-management", + "automation", + "git", + "repository" + ], + "examples": [ + { + "inputJson": "{\"repositoryId\":\"git@github.com:example-org/infrastructure.git\",\"branchName\":\"main\",\"commitMessage\":\"Update network config to include new subnet\",\"changes\":[{\"filePath\":\"network/config.yaml\",\"changeType\":\"modify\",\"content\":\"subnets:\\n - name: subnet-1\\n cidr: 10.0.1.0/24\\n - name: subnet-2\\n cidr: 10.0.2.0/24\"}],\"authorName\":\"Infra Bot\",\"authorEmail\":\"infra-bot@example.com\"}", + "description": "Create a commit modifying the network configuration file on the main branch with an automated bot as author." + }, + { + "inputJson": "{\"repositoryId\":\"git@github.com:example-org/infrastructure.git\",\"branchName\":\"feature/new-monitoring\",\"commitMessage\":\"Add new monitoring script\",\"changes\":[{\"filePath\":\"scripts/monitoring.sh\",\"changeType\":\"add\",\"content\":\"#!/bin/bash\\necho \\\"Monitoring started\\\"\"}]}", + "description": "Add a new monitoring script file in a feature branch without specifying author info (defaults used)." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "monitoring.createImage", + "description": "Generates a visual heatmap image representing system or application performance metrics over time. Accepts time series data points or aggregated metrics as input, processes them to map values to colors, and produces a PNG or JPEG image file that highlights performance hotspots or trends for monitoring dashboards.", + "category": "monitoring", + "parameters": [ + { + "name": "metricsData", + "type": "array", + "description": "An array of objects representing timestamped performance metrics (e.g., CPU usage, memory) to visualize. Each object must have a timestamp and a value.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricName", + "type": "string", + "description": "Specifies which metric from the data to visualize (e.g., 'cpuUsage').", + "required": true, + "defaultValue": "" + }, + { + "name": "imageWidth", + "type": "number", + "description": "Width of the output image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "imageHeight", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme used for the heatmap (e.g., 'coolwarm', 'viridis').", + "required": false, + "defaultValue": "viridis" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object with 'start' and 'end' ISO 8601 timestamps to filter data range for visualization.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Image output format, options include 'png' or 'jpeg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Flag to include a legend indicating metric value color mapping in the image.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64-encoded heatmap image string and metadata such as image format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create visual summaries of time-series system or application performance data, enabling easier identification of trends, spikes, or bottlenecks in monitoring dashboards or reports. It's useful for converting raw metric data into an intuitive heatmap image for quick analysis.", + "limitations": "This tool does not analyze or interpret the metric data semantically; it only visualizes provided numeric metrics as heatmaps. It cannot generate diagnostic reports or alerts based on the data, nor handle real-time streaming visualizations without repeated invocations.", + "examples": [ + "Create a heatmap image of CPU utilization over the last 24 hours", + "Generate a JPEG heatmap showing memory usage spikes for a given time range", + "Produce a performance heatmap with a specific color scheme and include a legend" + ] + }, + "tags": [ + "monitoring", + "image", + "visualization", + "performance", + "heatmap", + "metrics", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"cpuUsage\":30},{\"timestamp\":\"2024-06-01T01:00:00Z\",\"cpuUsage\":50},{\"timestamp\":\"2024-06-01T02:00:00Z\",\"cpuUsage\":70}],\"metricName\":\"cpuUsage\",\"imageWidth\":1024,\"imageHeight\":512,\"colorScheme\":\"coolwarm\",\"outputFormat\":\"png\",\"includeLegend\":true}", + "description": "Generate a PNG heatmap image of CPU usage over 3 data points with the 'coolwarm' color scheme including a legend." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "compliance-management.generateReport", + "description": "Generates a comprehensive compliance report by analyzing provided regulatory standards, organization policies, and audit data. Accepts input parameters specifying the regulation type, reporting period, and compliance data. Outputs a structured report summarizing compliance status, violations, and remediation recommendations.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulationType", + "type": "string", + "description": "The specific regulatory framework to base the report on (e.g., GDPR, HIPAA, SOX)", + "required": true, + "defaultValue": "" + }, + { + "name": "reportingPeriod", + "type": "string", + "description": "The date range for the compliance data to be included in the report (ISO 8601 format, e.g. '2023-01-01 to 2023-12-31')", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceData", + "type": "object", + "description": "Structured data representing audit findings, compliance checks, and policy adherence relevant to the regulation", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include remediation recommendations in the output report", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Preferred format of the generated report (e.g., 'pdf', 'html', 'json')", + "required": false, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated compliance report including summary metrics, detailed findings, and recommendations, formatted as specified." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce formal compliance documentation that consolidates regulatory requirements, policy adherence, and audit results into a clear, actionable report. Suitable for regulatory reviews, internal audits, and compliance monitoring.", + "limitations": "This tool does not perform the compliance audit itself but relies on provided audit and compliance data. It also does not automatically update regulatory standards; the input must reflect current requirements.", + "examples": [ + "Generate a GDPR compliance report for the 2023 fiscal year including audit findings and recommendations in PDF format.", + "Create a HIPAA report covering Q1 2024 with detailed compliance data but exclude remediation recommendations.", + "Produce a SOX compliance summary for 2022-2023 in JSON format for integration with other governance tools." + ] + }, + "tags": [ + "compliance", + "reporting", + "regulatory", + "audit", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"regulationType\":\"GDPR\",\"reportingPeriod\":\"2023-01-01 to 2023-12-31\",\"complianceData\":{\"dataAccessLogs\":[],\"breachReports\":[],\"policyChecks\":[{\"id\":\"P01\",\"status\":\"pass\"},{\"id\":\"P02\",\"status\":\"fail\"}]},\"includeRecommendations\":true,\"outputFormat\":\"pdf\"}", + "description": "Generate a complete GDPR compliance report for calendar year 2023 with recommendations, output as PDF." + }, + { + "inputJson": "{\"regulationType\":\"HIPAA\",\"reportingPeriod\":\"2024-01-01 to 2024-03-31\",\"complianceData\":{\"auditResults\":{\"encryption\":true,\"accessControlFailures\":2}},\"includeRecommendations\":false,\"outputFormat\":\"html\"}", + "description": "Create a HIPAA compliance report for Q1 2024 with audit results but without recommendations, output as HTML." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "security-tools.draftDocument", + "description": "Creates a customized security document draft such as policies, procedures, or guidelines based on specified security topics, target audience, compliance frameworks, and detail level. It takes structured input outlining document purpose and generates a coherent, relevant textual draft to aid security teams in documentation tasks.", + "category": "security-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of security document to create (e.g., policy, procedure, guideline).", + "required": true, + "defaultValue": "" + }, + { + "name": "securityTopics", + "type": "array", + "description": "List of security topics or focus areas to cover in the document (e.g., access control, incident response).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience or readers of the document (e.g., IT staff, employees, management).", + "required": false, + "defaultValue": "" + }, + { + "name": "complianceFrameworks", + "type": "array", + "description": "List of compliance or regulatory frameworks to reference or align with (e.g., GDPR, HIPAA, ISO27001).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Level of detail for the draft (e.g., high-level overview, detailed instructions).", + "required": false, + "defaultValue": "high-level" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include practical examples or scenarios in the draft document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted security document text and metadata such as sections covered and compliance references." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate initial drafts of security documents to standardize and accelerate policy writing, compliance documentation, or procedure manuals tailored to organizational needs and compliance requirements.", + "limitations": "This tool generates draft content based on input parameters but does not guarantee legal compliance or replace expert review. It may lack organization-specific nuance or full accuracy for complex regulatory environments.", + "examples": [ + "Draft a security policy document focusing on access control and incident response for IT staff referencing GDPR with detailed level and examples.", + "Create a guideline document about data protection for all employees with a high-level overview and no examples." + ] + }, + "tags": [ + "security", + "documentation", + "policy", + "compliance", + "drafting", + "procedures" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"policy\",\"securityTopics\":[\"access control\",\"incident response\"],\"targetAudience\":\"IT staff\",\"complianceFrameworks\":[\"GDPR\"],\"detailLevel\":\"detailed\",\"includeExamples\":true}", + "description": "Drafting a detailed security policy for IT staff covering access control and incident response aligned with GDPR, including examples." + }, + { + "inputJson": "{\"documentType\":\"guideline\",\"securityTopics\":[\"data protection\"],\"targetAudience\":\"employees\",\"complianceFrameworks\":[],\"detailLevel\":\"high-level\",\"includeExamples\":false}", + "description": "Creating a high-level guideline document for all employees about data protection without examples." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "security-tools.createEvent", + "description": "Creates a security event record for analytics and monitoring systems. Accepts event details such as event type, source, severity, timestamp, and metadata. Processes the information to generate a standardized event object that can be logged, transmitted, or stored for further security analysis and incident response.", + "category": "security-tools", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type or category of the security event, e.g., 'login_failure', 'file_access', or 'malware_detected'.", + "required": true, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Origin of the event, such as system, application, IP address, or user ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the event, e.g., 'info', 'warning', 'critical'.", + "required": false, + "defaultValue": "info" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 UTC timestamp when the event occurred. If omitted, current time is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional details as key-value pairs related to the event for deeper context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Standardized security event object containing all provided details, normalized timestamp, and a unique event ID for tracking." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate structured security event records suitable for logging or monitoring. This is ideal for integrating diverse security data sources, triggering alerts, or feeding security analytics pipelines.", + "limitations": "This tool only creates the event record and does not perform event transmission, storage, correlation, or alerting by itself.", + "examples": [ + "Create a security event for a failed login attempt from IP 192.168.1.10 with high severity.", + "Record a malware detection event from endpoint system 'host123' with detailed metadata about the malware name.", + "Log an informational event about system startup completion with no additional metadata." + ] + }, + "tags": [ + "security", + "event", + "analytics", + "logging", + "monitoring", + "incident-response", + "data-collection" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"login_failure\",\"source\":\"192.168.1.10\",\"severity\":\"critical\",\"timestamp\":\"2024-06-01T12:00:00Z\",\"metadata\":{\"username\":\"jdoe\",\"attempts\":3}}", + "description": "Create a critical security event for a failed login attempt from IP 192.168.1.10 with username and attempts metadata." + }, + { + "inputJson": "{\"eventType\":\"malware_detected\",\"source\":\"host123\",\"severity\":\"warning\",\"metadata\":{\"malwareName\":\"Trojan.Generic\",\"filePath\":\"C:/temp/malicious.exe\"}}", + "description": "Record a warning malware detection event from endpoint host with details on malware name and file path." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "security-tools.createService", + "description": "Creates a new security-focused service within an infrastructure environment by accepting configuration parameters such as service name, type, security policies, and resource allocations. Processes these inputs to deploy a service with the specified security settings and returns deployment status and service metadata.", + "category": "security-tools", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name identifier for the new security service.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceType", + "type": "string", + "description": "The type of security service to create (e.g., firewall, IDS, VPN, auth).", + "required": true, + "defaultValue": "" + }, + { + "name": "securityPolicies", + "type": "array", + "description": "An array of security policy identifiers or policy objects to apply to the service.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "resourceConfig", + "type": "object", + "description": "Configuration object specifying the allocated resources like CPU, memory, and storage for the service.", + "required": false, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "The deployment environment for the service such as production, staging, or development.", + "required": false, + "defaultValue": "production" + }, + { + "name": "autoScalingEnabled", + "type": "boolean", + "description": "Flag that indicates whether auto-scaling should be enabled for the deployed service.", + "required": false, + "defaultValue": "false" + }, + { + "name": "networkSettings", + "type": "object", + "description": "Networking configuration such as subnet, IP range, and access controls for the service.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the serviceId, deploymentStatus, endpoint URL if applicable, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create and configure security services such as firewalls, authentication gateways, or intrusion detection systems within an infrastructure platform. It is helpful for automating secure infrastructure deployments and enforcing security policies at service creation time.", + "limitations": "This tool does not perform runtime security monitoring or vulnerability scanning after deployment. It also does not handle manual configuration validation beyond input parameter checks.", + "examples": [ + "Create a firewall service named 'corporate-firewall' with predefined firewall policies.", + "Deploy an authentication service with auto-scaling enabled in the production environment.", + "Set up an intrusion detection service with specific resource allocations and custom network settings." + ] + }, + "tags": [ + "security", + "service-creation", + "infrastructure", + "automation", + "firewall", + "auth-service" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"corporate-firewall\",\"serviceType\":\"firewall\",\"securityPolicies\":[\"default-deny\",\"allow-ssh\"],\"resourceConfig\":{\"cpu\":2,\"memory\":\"4GB\",\"storage\":\"20GB\"},\"environment\":\"production\",\"autoScalingEnabled\":false,\"networkSettings\":{\"subnet\":\"10.0.1.0/24\",\"accessControl\":\"internal-only\"}}", + "description": "Create a firewall service named 'corporate-firewall' in production with specific security policies and resource settings." + }, + { + "inputJson": "{\"serviceName\":\"auth-gateway\",\"serviceType\":\"auth\",\"securityPolicies\":[\"otp-enabled\",\"rate-limiting\"],\"autoScalingEnabled\":true}", + "description": "Deploy an authentication gateway service with OTP and rate limiting policies, enabling auto-scaling." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "security-tools.createNotification", + "description": "Generates a security notification message based on input parameters including severity, affected components, and recommended actions. Accepts details about the security event and outputs a structured notification ready for distribution within an organization or system.", + "category": "security-tools", + "parameters": [ + { + "name": "eventTitle", + "type": "string", + "description": "The title or headline summarizing the security event or issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity of the security issue (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of system components or assets affected by the security event.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the security event or issue.", + "required": false, + "defaultValue": "" + }, + { + "name": "recommendations", + "type": "array", + "description": "Recommended mitigation or remediation steps to address the security event.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string indicating when the event occurred or was detected.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyRoles", + "type": "array", + "description": "List of roles or teams to whom the notification should be addressed or prioritized.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured notification object with fields: title, severity, affectedSystems, description, recommendations, timestamp, and audience, conformed for security communication channels." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear and actionable security notifications based on detected or reported events, ensuring consistent communication of risks, affected systems, and recommended responses to designated security teams or stakeholders.", + "limitations": "This tool does not send notifications or integrate with messaging systems; it only creates the notification content. It also does not analyze events for threat intelligence or impact severity automatically; these inputs must be provided.", + "examples": [ + "Create a high severity notification for a detected ransomware attack affecting file servers with remediation steps.", + "Generate a medium severity alert for a phishing attempt detected against the email system, specifying the teams to notify.", + "Produce a low severity notification for a vulnerability found in a non-critical application with a patch recommendation." + ] + }, + "tags": [ + "security", + "notification", + "alert", + "incident", + "communication", + "remediation" + ], + "examples": [ + { + "inputJson": "{\"eventTitle\":\"Ransomware Attack Detected\",\"severityLevel\":\"critical\",\"affectedSystems\":[\"File Server 1\",\"File Server 2\"],\"description\":\"Detected encryption activity consistent with ransomware on file servers.\",\"recommendations\":[\"Isolate affected servers immediately\",\"Initiate incident response protocol\",\"Restore files from backup after containment\"],\"timestamp\":\"2024-06-01T15:30:00Z\",\"notifyRoles\":[\"Incident Response Team\",\"IT Security\"]}", + "description": "Critical security notification for ransomware affecting file servers including remediation guidance." + }, + { + "inputJson": "{\"eventTitle\":\"Phishing Attempt Identified\",\"severityLevel\":\"medium\",\"affectedSystems\":[\"Corporate Email System\"],\"description\":\"Suspicious email campaigns targeting employees detected.\",\"recommendations\":[\"Educate employees to recognize phishing\",\"Implement email filtering rules\"],\"timestamp\":\"2024-06-02T09:00:00Z\",\"notifyRoles\":[\"Security Awareness Team\",\"Help Desk\"]}", + "description": "Medium severity phishing alert targeting email system with preventative recommendations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "customer-support.uploadCode", + "description": "Uploads source code snippets or files to the customer support knowledge base. Accepts code content as text or file input along with metadata such as programming language, description, and tags. Processes the input by validating syntax and storing it securely. Returns a confirmation with a unique code ID and storage status.", + "category": "customer-support", + "parameters": [ + { + "name": "codeContent", + "type": "string", + "description": "The raw source code to upload as a string.", + "required": false, + "defaultValue": "" + }, + { + "name": "codeFilePath", + "type": "string", + "description": "Optional file path to the code file to upload. If provided, codeContent is ignored.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the code (e.g., JavaScript, Python) to help proper processing and indexing.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description or summary of what the code does or is used for.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords associated with the code for easier searching in the knowledge base.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite existing code entry if a duplicate is found (default false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation details including a unique identifier for the uploaded code and status message." + }, + "aiAgent": { + "useCase": "Use this tool when integrating new or updated code snippets into the customer support knowledge base for reuse in troubleshooting or code-sharing with customers. It helps keep support documentation up-to-date with executable code examples or patches.", + "limitations": "This tool does not execute, test, or debug code. It only uploads and stores code snippets. Large binary files or non-text code formats are not supported.", + "examples": [ + "Upload a Python script fixing a known issue with the product and tag it appropriately.", + "Add a JavaScript snippet demonstrating API usage to the support knowledge base with description and tags.", + "Overwrite an existing stored snippet of SQL query with an improved optimized version." + ] + }, + "tags": [ + "upload", + "code", + "customer-support", + "knowledge-base", + "snippet-management" + ], + "examples": [ + { + "inputJson": "{\"codeContent\":\"def fix_issue():\\n print('Issue fixed')\",\"language\":\"Python\",\"description\":\"Simple fix function for the known issue.\",\"tags\":[\"fix\",\"troubleshooting\"],\"overwriteExisting\":false}", + "description": "Upload a Python fix function snippet with description and tags." + }, + { + "inputJson": "{\"codeFilePath\":\"/path/to/js_api_example.js\",\"language\":\"JavaScript\",\"description\":\"Demonstrates API usage for customers.\",\"tags\":[\"API\",\"example\"],\"overwriteExisting\":false}", + "description": "Upload a JavaScript code file demonstrating API usage." + }, + { + "inputJson": "{\"codeContent\":\"SELECT * FROM customers WHERE active = 1;\",\"language\":\"SQL\",\"description\":\"Active customers query updated for performance.\",\"tags\":[\"SQL\",\"query\"],\"overwriteExisting\":true}", + "description": "Overwrite an existing SQL query snippet with a new optimized version." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "customer-support.generateText", + "description": "Generates customer support response text based on input parameters like customer query, tone, response type, and language. It processes the inputs to produce a tailored, clear, and contextually appropriate reply helpful for resolving customer issues or providing information.", + "category": "customer-support", + "parameters": [ + { + "name": "customerQuery", + "type": "string", + "description": "The customer's initial query or message requiring a support response.", + "required": true, + "defaultValue": "" + }, + { + "name": "responseTone", + "type": "string", + "description": "The desired tone for the response, e.g., polite, empathetic, formal, casual.", + "required": false, + "defaultValue": "polite" + }, + { + "name": "responseType", + "type": "string", + "description": "Type of response to generate, such as 'solution', 'acknowledgement', 'follow-up', or 'escalation'.", + "required": false, + "defaultValue": "solution" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') specifying the language of the generated text.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeNextSteps", + "type": "boolean", + "description": "Whether to include suggested next steps or instructions in the reply.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated support response text and metadata such as tone and language used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to compose a professional and context-aware customer support reply from a given customer query. Helpful for automating support ticket responses, chat assistance, or email replies, adapting tone and response type to the situation.", + "limitations": "The tool cannot handle complex troubleshooting or technical diagnostics by itself; it generates text based solely on input parameters without accessing external systems or real-time customer data.", + "examples": [ + "Generate a polite solution message for a customer complaining about delayed delivery in English.", + "Compose an empathetic acknowledgement reply in Spanish to a customer reporting a defective product.", + "Produce a formal escalation message advising next support steps in English." + ] + }, + "tags": [ + "customer-support", + "text-generation", + "response-composition", + "automation", + "multilingual", + "tone-adaptation" + ], + "examples": [ + { + "inputJson": "{\"customerQuery\":\"My order arrived late and I'm very disappointed.\",\"responseTone\":\"empathetic\",\"responseType\":\"solution\",\"language\":\"en\",\"includeNextSteps\":true}", + "description": "Generate an empathetic solution response in English to address a customer's complaint about late order delivery." + }, + { + "inputJson": "{\"customerQuery\":\"No puedo activar mi cuenta.\",\"responseTone\":\"polite\",\"responseType\":\"acknowledgement\",\"language\":\"es\",\"includeNextSteps\":false}", + "description": "Generate a polite acknowledgement reply in Spanish to a customer reporting they can't activate their account, without next steps." + }, + { + "inputJson": "{\"customerQuery\":\"The software crashes every time I try to open it.\",\"responseTone\":\"formal\",\"responseType\":\"escalation\",\"language\":\"en\",\"includeNextSteps\":true}", + "description": "Create a formal escalation message in English advising next steps for a customer reporting repeated software crashes." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "marketing-automation.createImage", + "description": "Generates customized marketing images based on provided text, style, and branding parameters. Accepts inputs like headline text, brand colors, image dimensions, and optional background images to produce web-ready promotional images in PNG format.", + "category": "marketing-automation", + "parameters": [ + { + "name": "headlineText", + "type": "string", + "description": "Primary marketing text to display prominently on the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "subheadlineText", + "type": "string", + "description": "Secondary text to complement the headline, smaller and less emphasized.", + "required": false, + "defaultValue": "" + }, + { + "name": "brandColors", + "type": "array", + "description": "Array of color hex codes used for backgrounds, text, and accents to match brand identity.", + "required": true, + "defaultValue": "[\"#000000\", \"#FFFFFF\"]" + }, + { + "name": "imageWidth", + "type": "number", + "description": "Width of the generated image in pixels.", + "required": false, + "defaultValue": "1200" + }, + { + "name": "imageHeight", + "type": "number", + "description": "Height of the generated image in pixels.", + "required": false, + "defaultValue": "628" + }, + { + "name": "backgroundImageUrl", + "type": "string", + "description": "Optional URL to a background image to incorporate behind text elements.", + "required": false, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family to use for text (e.g., Arial, Helvetica, custom fonts).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Image file format of output, such as PNG or JPEG.", + "required": false, + "defaultValue": "PNG" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64 encoded image string and metadata such as width, height, and format." + }, + "aiAgent": { + "useCase": "Use this tool when creating on-brand marketing images dynamically for campaigns, social media posts, or ads, where customized text and colors are required without manual graphic design intervention. It helps automate bulk image generation to maintain style consistency.", + "limitations": "Does not generate complex graphics or illustrations, limited to text overlay on solid or simple backgrounds. Not designed for photographic editing or creative image generation beyond basic marketing visuals.", + "examples": [ + "Create a promotional banner image with headline and brand colors for an email campaign.", + "Generate social media post images with different headlines and background photos dynamically.", + "Produce consistent branding images sized for Facebook ads with specific fonts and colors." + ] + }, + "tags": [ + "marketing", + "image-generation", + "automation", + "branding", + "social-media", + "ads" + ], + "examples": [ + { + "inputJson": "{\"headlineText\":\"Summer Sale Now On!\",\"subheadlineText\":\"Up to 50% off selected items\",\"brandColors\":[\"#FF5733\", \"#FFFFFF\"],\"imageWidth\":1200,\"imageHeight\":628,\"backgroundImageUrl\":\"https://example.com/background.jpg\",\"fontFamily\":\"Helvetica\",\"outputFormat\":\"PNG\"}", + "description": "Generate a vibrant sale promotion image with brand colors and a background photo sized for social media." + }, + { + "inputJson": "{\"headlineText\":\"Join Our Newsletter\",\"brandColors\":[\"#004080\", \"#FFFFFF\"],\"imageWidth\":800,\"imageHeight\":400,\"fontFamily\":\"Arial\",\"outputFormat\":\"PNG\"}", + "description": "Create a simple newsletter signup promotional image with brand colors and default background." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "documentation-tools.buildDatabase", + "description": "This tool generates a structured documentation database from various input sources such as Markdown files, API schemas, and code comments. It parses and organizes documentation content into a unified database schema, enabling efficient search, retrieval, and maintenance of documentation assets. The output is a JSON-based database representation ready for integration with documentation platforms.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sourcePaths", + "type": "array", + "description": "Array of file or directory paths containing documentation sources to be processed.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormats", + "type": "array", + "description": "List of input documentation formats to parse, e.g., ['markdown','openapi','jsdoc'].", + "required": true, + "defaultValue": "[\"markdown\"]" + }, + { + "name": "databaseSchema", + "type": "object", + "description": "Specification of the database schema to which documentation should conform. Includes table and field definitions.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includePrivate", + "type": "boolean", + "description": "Whether to include private or internal documentation elements in the output database.", + "required": false, + "defaultValue": "false" + }, + { + "name": "mergeExistingDatabase", + "type": "boolean", + "description": "Whether to merge results with an existing database snapshot provided in existingDatabase parameter.", + "required": false, + "defaultValue": "false" + }, + { + "name": "existingDatabase", + "type": "object", + "description": "Existing documentation database snapshot to merge with if mergeExistingDatabase is true.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output database, e.g., 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "The resulting documentation database structured according to the provided or default schema, containing parsed documentation entries, relations, and metadata in JSON or compatible format." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when they need to build or update a documentation database that consolidates multiple source types (markdown, API specs, code comments) into a structured format to enable search, queries, or further processing.", + "limitations": "This tool does not perform natural language summarization or content writing; it only parses and structures existing documentation. It cannot resolve conflicting documentation content automatically.", + "examples": [ + "Build a documentation database from a folder of Markdown files to enable search.", + "Generate a combined docs database from OpenAPI specs and JSDoc comments for API reference.", + "Update an existing documentation database by merging new Markdown source files without losing prior content." + ] + }, + "tags": [ + "documentation", + "database", + "build", + "parse", + "metadata", + "documentation-management", + "docdb" + ], + "examples": [ + { + "inputJson": "{\"sourcePaths\":[\"./docs\",\"./api-specs/openapi.yaml\"],\"inputFormats\":[\"markdown\",\"openapi\"],\"includePrivate\":false,\"outputFormat\":\"json\"}", + "description": "Build a documentation database from markdown docs directory and an OpenAPI spec file, excluding private docs." + }, + { + "inputJson": "{\"sourcePaths\":[\"./src\"],\"inputFormats\":[\"jsdoc\"],\"includePrivate\":true,\"mergeExistingDatabase\":true,\"existingDatabase\":{\"entries\":[]},\"outputFormat\":\"json\"}", + "description": "Merge new JSDoc comments from source code into an existing documentation database including private elements." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "data-analytics.createText", + "description": "This tool generates natural language text summaries or reports based on structured or unstructured data input. It accepts numerical data arrays, categorical labels, or JSON objects, analyzes key patterns or statistics, and produces coherent textual content that explains insights, trends, or anomalies discovered in the data, suitable for presentation or reporting purposes.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The data to be analyzed and summarized, provided as a JSON object with fields representing datasets, tables, or arrays (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryType", + "type": "string", + "description": "The style of text summary to generate, e.g., 'brief', 'detailed', or 'bulletPoints' (optional).", + "required": false, + "defaultValue": "brief" + }, + { + "name": "language", + "type": "string", + "description": "The language code for the output text, e.g., 'en' for English (optional).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include textual descriptions of charts or visual data representations in the summary (optional).", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated text in number of words or characters to control verbosity (optional).", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated textual summary in plain text and optionally metadata about key insights or data highlights." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured or semi-structured data and need a coherent, human-readable text summary or report describing the key insights, trends, or statistical findings within the data. Ideal for transforming complex data into accessible narratives for business reports, presentations, or dashboards.", + "limitations": "Cannot produce highly specialized domain-specific reports requiring expert knowledge beyond statistical or pattern analysis. It also does not generate graphical images, only textual descriptions of data patterns.", + "examples": [ + "Generate a brief summary of sales data showing monthly revenue trends.", + "Create a bullet point list highlighting key customer demographics from the survey data.", + "Provide a detailed textual report explaining anomalies detected in time-series sensor data." + ] + }, + "tags": [ + "data", + "text-generation", + "summary", + "reporting", + "analytics", + "natural-language", + "insights" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"sales\":[100,120,90,130,115],\"months\":[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\"]},\"summaryType\":\"brief\",\"language\":\"en\",\"includeCharts\":false,\"maxLength\":100}", + "description": "Generate a brief English summary of monthly sales data." + }, + { + "inputJson": "{\"inputData\":{\"survey\":{\"ageGroups\":{\"18-25\":40,\"26-35\":55,\"36-45\":30},\"preferences\":{\"productA\":70,\"productB\":45}},\"summaryType\":\"bulletPoints\",\"language\":\"en\",\"includeCharts\":false}", + "description": "Create bullet points summarizing customer demographics from survey data." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "data-analytics.createMessage", + "description": "Creates a data-driven message summarizing insights derived from provided datasets and analysis parameters. It accepts raw data inputs and configuration options to tailor the summary, producing a clear, concise textual message suitable for presentations or reports.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data objects with numerical or categorical attributes to analyze and summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "The type of analysis to perform on the data such as 'summaryStatistics', 'trendAnalysis', or 'correlation'.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Specific metrics or fields within the data to include in the message (e.g., ['mean','median','growthRate']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "audience", + "type": "string", + "description": "Intended audience for the message to adjust the tone and detail level, e.g., 'executive', 'technical', 'general'.", + "required": false, + "defaultValue": "general" + }, + { + "name": "messageLength", + "type": "number", + "description": "Approximate desired length of the message in words to ensure concise or detailed output (e.g., 100).", + "required": false, + "defaultValue": "150" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to append actionable recommendations based on analysis results in the message.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated message string and a summary metadata object with key insights extracted from the data." + }, + "aiAgent": { + "useCase": "Use this tool when generating insightful summaries or reports from complex datasets where a textual explanation is required to communicate key findings effectively to stakeholders. It helps convert raw data analysis into human-readable messages tailored by audience and detail level.", + "limitations": "Cannot replace full data visualization or detailed statistical reporting. Does not perform deep domain-specific analysis beyond predefined analysis types. Not designed for unstructured text data or multimedia inputs.", + "examples": [ + "Create a 100-word summary message of quarterly sales trends highlighting mean growth and key metrics for executives.", + "Generate a correlation analysis message including recommendations for improvements directed at a technical team.", + "Produce a brief general audience message summarizing customer satisfaction metrics with median and mode included." + ] + }, + "tags": [ + "data-analysis", + "message-generation", + "summary", + "reporting", + "insights" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":120,\"profit\":30},{\"month\":\"Feb\",\"sales\":150,\"profit\":35},{\"month\":\"Mar\",\"sales\":130,\"profit\":33}],\"analysisType\":\"summaryStatistics\",\"metrics\":[\"mean\",\"median\"],\"audience\":\"executive\",\"messageLength\":100,\"includeRecommendations\":true}", + "description": "Generate an executive summary message describing mean and median sales and profits with recommendations." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2024-01-01\",\"temperature\":22},{\"date\":\"2024-01-02\",\"temperature\":24},{\"date\":\"2024-01-03\",\"temperature\":21}],\"analysisType\":\"trendAnalysis\",\"audience\":\"general\",\"messageLength\":80,\"includeRecommendations\":false}", + "description": "Create a general audience message about recent temperature trend analysis." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "data-analytics.createJSON", + "description": "Generates a JSON object from structured input data by mapping fields and applying optional transformations. Accepts an array of records or key-value pairs and outputs a formatted JSON string for data analytics or visualization use cases.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing records or data points to convert into JSON.", + "required": true, + "defaultValue": "" + }, + { + "name": "fieldMappings", + "type": "object", + "description": "An optional mapping object defining how to rename fields from the input data to output JSON keys.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeFields", + "type": "array", + "description": "Optional list of field names to include in the output JSON. If empty or omitted, all fields are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludeFields", + "type": "array", + "description": "Optional list of field names to exclude from the output JSON, overrides includeFields if both provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "If true, output JSON will be formatted with indentation for readability.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "A JSON-formatted string representing the transformed and filtered data input." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured data arrays or records into a JSON format suitable for data analytics processing, storage, or visualization. It helps AI agents prepare data outputs in standardized JSON for APIs, configs, or front-end consumption.", + "limitations": "Cannot process unstructured or deeply nested data beyond first-level key mapping; complex transformations requiring scripting are not supported.", + "examples": [ + "Generate JSON report from tabular sales data with renamed fields for analytics.", + "Filter a large dataset to include only relevant fields and output well-formatted JSON.", + "Transform key names of a dataset and exclude sensitive fields when creating JSON export." + ] + }, + "tags": [ + "data", + "json", + "transform", + "mapping", + "filtering", + "formatting", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"fieldMappings\":{\"name\":\"fullName\",\"city\":\"location\"},\"includeFields\":[\"fullName\",\"location\"],\"prettyPrint\":true}", + "description": "Create a JSON export from a list of user records, renaming 'name' to 'fullName' and 'city' to 'location', including only these fields, with pretty printing." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Laptop\",\"price\":999,\"inventory\":100},{\"product\":\"Mouse\",\"price\":25,\"inventory\":500}],\"excludeFields\":[\"inventory\"],\"prettyPrint\":false}", + "description": "Generate compact JSON listing products and prices, excluding inventory data." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "etl-processes.composeEmail", + "description": "This tool takes structured email input data including sender, recipients, subject, body text, and optional attachments metadata. It processes the inputs by formatting headers and the body into a complete RFC-compliant email message string or raw MIME format. The output is a serialized email ready for sending or saving.", + "category": "etl-processes", + "parameters": [ + { + "name": "from", + "type": "string", + "description": "The email address of the sender.", + "required": true, + "defaultValue": "" + }, + { + "name": "to", + "type": "array", + "description": "Array of recipient email addresses.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "cc", + "type": "array", + "description": "Array of CC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Array of BCC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": false, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main textual content of the email (plain text or HTML).", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating if the body content is in HTML format.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects each with filename and base64 encoded content.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed raw email string ready to be sent or stored." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create a fully formatted email message from discrete data elements such as sender, recipients, subject, body, and attachments. It supports preparing emails for sending via SMTP or saving as a raw email file, ensuring correct headers and multipart formats if attachments are included.", + "limitations": "This tool does not send emails or validate email addresses format deeply. It also does not encrypt or sign emails and expects input content to be sanitized beforehand.", + "examples": [ + "Compose an email with one recipient and a plain text body.", + "Generate an email that includes HTML content and multiple recipients in To and CC.", + "Create an email with multiple attachments encoded in base64." + ] + }, + "tags": [ + "etl", + "email", + "compose", + "communication", + "formatting", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"from\":\"alice@example.com\",\"to\":[\"bob@example.com\"],\"cc\":[],\"bcc\":[],\"subject\":\"Meeting Reminder\",\"body\":\"Just a reminder about the meeting tomorrow at 10am.\",\"isHtml\":false,\"attachments\":[]}", + "description": "Compose a simple plain-text email from Alice to Bob with a subject and no attachments." + }, + { + "inputJson": "{\"from\":\"marketing@company.com\",\"to\":[\"client1@example.com\",\"client2@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[],\"subject\":\"Monthly Newsletter\",\"body\":\"<h1>Our Latest Updates</h1><p>Check out what's new this month!</p>\",\"isHtml\":true,\"attachments\":[]}", + "description": "Create an HTML formatted email newsletter sent to multiple recipients with CC." + }, + { + "inputJson": "{\"from\":\"john.doe@example.com\",\"to\":[\"jane.smith@example.com\"],\"cc\":[],\"bcc\":[],\"subject\":\"Project Files\",\"body\":\"Please find the project files attached.\",\"isHtml\":false,\"attachments\":[{\"filename\":\"design.pdf\",\"content\":\"JVBERi0xLjcKJcTl8uXrp/Og0MTGCjQgMCBvYmoKPDwvTGluZWFyaXplZCAxL0wgNDA0NjgvTyA2L0UgNzQwNTQvTiAxL1QgMzk3NzQvSCBbIDExNjMgODNdPj4KZW5kb2JqCjYgMCBvYmoKPDwvQ3JlYXRvciAoQWRvYmUgQWNyb2JhdCAxMC4xMy4xKS9Qcm9kdWNlcg...\"}]}", + "description": "Compose a plain-text email with one attachment encoded in base64." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "etl-processes.createTest", + "description": "Creates automated tests for ETL (Extract, Transform, Load) processes by accepting ETL flow configurations and test parameters. It generates code artifacts (such as unit or integration test scripts) that validate data extraction, transformation rules, and loading targets. Output includes test scripts and metadata validating ETL steps.", + "category": "etl-processes", + "parameters": [ + { + "name": "etlConfig", + "type": "object", + "description": "Configuration object describing the ETL pipeline steps, including source, transformation logic, and target schema. Required to understand what to test in the ETL process.", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of test to generate: 'unit', 'integration', or 'end-to-end'. Determines scope and depth of generated tests.", + "required": true, + "defaultValue": "unit" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Programming language for the generated test scripts, e.g., 'Python', 'JavaScript', 'Java'.", + "required": false, + "defaultValue": "Python" + }, + { + "name": "testFramework", + "type": "string", + "description": "Preferred testing framework to generate code for, e.g., 'pytest', 'Jest', 'JUnit'.", + "required": false, + "defaultValue": "pytest" + }, + { + "name": "includeMockData", + "type": "boolean", + "description": "Whether to include sample/mock data in the test scripts for simulating ETL inputs and outputs.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format to output the test code artifacts: 'files' (source code files) or 'archive' (compressed zip).", + "required": false, + "defaultValue": "files" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated test artifacts including code snippets, file names, and metadata describing the tests created." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate test scripts that verify ETL pipeline logic based on pipeline configurations. It is helpful to ensure reliability and correctness of data workflows without manual test coding.", + "limitations": "This tool cannot execute or validate the generated tests; it only produces test code. It assumes ETL configuration completeness and correctness. It does not handle real-time ETL monitoring or debugging.", + "examples": [ + "Generate unit tests for a simple ETL pipeline extracting from CSV and loading to a database.", + "Create integration tests with mock data for a complex ETL process with multiple transformations.", + "Produce Jest framework JavaScript tests for an ETL pipeline reading JSON inputs." + ] + }, + "tags": [ + "etl", + "testing", + "automation", + "code-generation", + "data-pipelines", + "validation" + ], + "examples": [ + { + "inputJson": "{\"etlConfig\":{\"source\":\"csv\",\"transformations\":[{\"type\":\"filter\",\"condition\":\"age > 18\"}],\"target\":\"database\"},\"testType\":\"unit\",\"targetLanguage\":\"Python\",\"testFramework\":\"pytest\",\"includeMockData\":true,\"outputFormat\":\"files\"}", + "description": "Generate unit tests in Python pytest framework for an ETL pipeline extracting CSV data, filtering age >18, and loading to a database, including mock data." + }, + { + "inputJson": "{\"etlConfig\":{\"source\":\"api\",\"transformations\":[{\"type\":\"map\",\"rule\":\"currency to USD\"}],\"target\":\"data_warehouse\"},\"testType\":\"integration\",\"targetLanguage\":\"Java\",\"testFramework\":\"JUnit\",\"includeMockData\":false,\"outputFormat\":\"archive\"}", + "description": "Create integration tests in Java using JUnit for ETL pulling from API, mapping currencies, and loading to a data warehouse, without mock data, output as archive." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "devops.downloadCode", + "description": "Downloads source code from a specified Git repository and branch or tag. Accepts the repository URL and reference details, optionally performs shallow cloning or full clone, and outputs the local path where the code is downloaded, enabling further build or deployment automation.", + "category": "devops", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "HTTPS or SSH URL of the Git repository to download code from", + "required": true, + "defaultValue": "" + }, + { + "name": "branchOrTag", + "type": "string", + "description": "Specific branch or tag name to checkout from the repository", + "required": false, + "defaultValue": "main" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local filesystem path where the code will be downloaded", + "required": false, + "defaultValue": "./" + }, + { + "name": "shallowClone", + "type": "boolean", + "description": "Whether to perform a shallow clone (clone only latest commit) to reduce download size", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSubmodules", + "type": "boolean", + "description": "Whether to initialize and fetch git submodules recursively", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the local path where the code is downloaded and status details of the operation" + }, + "aiAgent": { + "useCase": "Use this tool when automating infrastructure, continuous integration, or deployment workflows that require fetching the latest or specific code versions from a Git repository to a local or build agent environment. It helps in preparing the code base for building, testing, or deployment phases.", + "limitations": "This tool only supports Git repositories and cannot authenticate private repositories without preconfigured credentials. It does not perform code analysis or handle other version control systems like SVN or Mercurial.", + "examples": [ + "Download code from a public GitHub repo's main branch to the default local path with shallow clone.", + "Download code from a private Git SSH repo, branch 'develop', include submodules, into a specified directory.", + "Download full repository history of a tagged release 'v1.2.3' without submodules." + ] + }, + "tags": [ + "devops", + "download", + "git", + "code", + "repository", + "clone", + "automation" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo.git\",\"branchOrTag\":\"main\",\"destinationPath\":\"./code\",\"shallowClone\":true,\"includeSubmodules\":false}", + "description": "Download the main branch of a public GitHub repository with a shallow clone into './code' folder." + }, + { + "inputJson": "{\"repositoryUrl\":\"git@github.com:example/private-repo.git\",\"branchOrTag\":\"develop\",\"destinationPath\":\"/var/build/project\",\"shallowClone\":false,\"includeSubmodules\":true}", + "description": "Download the 'develop' branch from a private SSH Git repo fully with submodules into the specified build directory." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo.git\",\"branchOrTag\":\"v1.2.3\",\"destinationPath\":\"./release\",\"shallowClone\":false,\"includeSubmodules\":false}", + "description": "Download the 'v1.2.3' tagged release fully without submodules into the './release' folder." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "devops.downloadDocument", + "description": "Downloads a document file from a specified URL or cloud storage location to a local or remote destination. Supports authentication tokens and optional overwrite of existing files. Outputs status of the download operation including success or error details.", + "category": "devops", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The full URL or cloud storage path to the document to be downloaded, including protocol.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "The file path where the downloaded document will be saved locally or on a remote machine accessible by the tool.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional bearer token for authenticated access to the source URL when required.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite the file at the destinationPath if it already exists (true) or to skip download (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to attempt the download before aborting.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object reporting success status, downloaded file path on success, and error message on failure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to acquire documents from internet URLs or cloud storage as part of CI/CD pipelines or infrastructure automation tasks to ensure required configuration or documentation is locally available before deployment or analysis.", + "limitations": "This tool does not parse or interpret document content, nor does it support interactive authentication methods beyond bearer tokens. Large files may be limited by timeout constraints.", + "examples": [ + "Download a YAML configuration file from a secured cloud storage bucket to local disk.", + "Download a PDF deployment guide from a public URL, overwriting any existing file.", + "Attempt to download a script file with a timeout of 30 seconds." + ] + }, + "tags": [ + "devops", + "download", + "document", + "file", + "automation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/configs/app-config.yaml\",\"destinationPath\":\"/etc/myapp/app-config.yaml\",\"authenticationToken\":\"\",\"overwriteExisting\":true,\"timeoutSeconds\":120}", + "description": "Download a public YAML configuration file to local configuration directory, overwriting any existing file." + }, + { + "inputJson": "{\"sourceUrl\":\"https://cloudstorage.example.com/docs/deployment-guide.pdf\",\"destinationPath\":\"/tmp/deployment-guide.pdf\",\"authenticationToken\":\"Bearer abc123token\",\"overwriteExisting\":false}", + "description": "Download a PDF deployment guide from cloud storage using an authentication token, do not overwrite if the file exists." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "devops.createMessage", + "description": "Creates a structured deployment or incident message used in DevOps communication channels. Accepts inputs like messageType (e.g., deployment, incident), targetEnvironment, status, description, and optional metadata to compose a standardized message object. Outputs the formatted message ready for integration or dispatch in notifications and logs.", + "category": "devops", + "parameters": [ + { + "name": "messageType", + "type": "string", + "description": "Type of message to create, e.g. 'deployment', 'incident', or 'alert'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "Environment the message refers to, e.g., 'production', 'staging', or 'development'.", + "required": true, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current status related to the message, e.g., 'starting', 'completed', 'failed'.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the event or update to include in the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional key-value pairs with extra data to include in the message.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include the current timestamp in the message metadata.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted message with properties: messageType, targetEnvironment, status, description, metadata (including optional timestamp), and a composed message string ready for communication use." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate consistent, standardized messages about deployments, incidents, or infrastructure status for notifications, logs, or dashboards in DevOps workflows. It helps centralize message formatting respecting environment and status contexts.", + "limitations": "This tool does not send messages or integrate with messaging platforms itself; it only creates the message content object. It does not support complex natural language generation or multilingual output.", + "examples": [ + "Create a deployment message for production environment with status completed and a description summarizing the deployment results.", + "Generate an incident alert message for staging environment indicating failure and detailed error description.", + "Produce an informational message for development environment about starting a maintenance window with relevant metadata." + ] + }, + "tags": [ + "devops", + "message", + "communication", + "deployment", + "incident", + "automation" + ], + "examples": [ + { + "inputJson": "{\"messageType\":\"deployment\",\"targetEnvironment\":\"production\",\"status\":\"completed\",\"description\":\"Deployment of service X version 2.1 successful.\",\"includeTimestamp\":true}", + "description": "Create a deployment completion message for production with timestamp." + }, + { + "inputJson": "{\"messageType\":\"incident\",\"targetEnvironment\":\"staging\",\"status\":\"failed\",\"description\":\"Database connection errors detected during tests.\",\"metadata\":{\"errorCode\":\"DB_CONN_504\"}}", + "description": "Generate an incident message about a failure in staging with error code metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "frontend-development.analyzeParagraph", + "description": "Analyzes a given paragraph of text (such as UI content or description) to evaluate readability, keyword density, sentiment, and detect passive voice or complex sentences. It accepts a text string as input, processes various linguistic and stylistic metrics, and outputs a detailed analysis report to help improve frontend text clarity and UX.", + "category": "frontend-development", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The paragraph text to analyze for readability, sentiment, and style.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the text provided (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "readabilityThreshold", + "type": "number", + "description": "The minimum readability score threshold to flag complex paragraphs (0-100 scale).", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing readability score, sentiment (if requested), keyword density, counts of passive voice sentences, and flagged complex sentences." + }, + "aiAgent": { + "useCase": "Use this tool to analyze frontend paragraph content for improving user experience via clearer, more engaging text. It helps detect overly complex language, negative sentiment, or poor keyword focus, guiding text refinement in UI elements or content blocks.", + "limitations": "Does not translate text or deeply understand context beyond linguistic and stylistic metrics. May have reduced accuracy on very short or highly technical paragraphs.", + "examples": [ + "Analyze a UI help paragraph for readability and sentiment.", + "Check if marketing copy uses passive voice excessively.", + "Evaluate if a description has a positive or negative tone and flag complex sentences." + ] + }, + "tags": [ + "frontend", + "analysis", + "text", + "readability", + "sentiment", + "UI-content", + "user-experience" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Our platform is designed to streamline your workflow efficiently while maintaining high security standards.\",\"language\":\"en\",\"includeSentiment\":true,\"readabilityThreshold\":60}", + "description": "Analyze a moderately complex English paragraph for readability, keyword density, and sentiment." + }, + { + "inputJson": "{\"text\":\"This feature enables users to save their settings without hassle.\",\"includeSentiment\":false}", + "description": "Analyze a simple paragraph ignoring sentiment analysis and checking for passive voice and complexity." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "backend-development.analyzeRisk", + "description": "Analyzes the security risk level of a backend application based on provided configuration and code parameters. Accepts inputs like code snippets, dependency lists, environment variables, and known vulnerabilities, then evaluates potential security threats, outputting a detailed risk assessment report with severity scores and recommended mitigations.", + "category": "backend-development", + "parameters": [ + { + "name": "codeSnippets", + "type": "array", + "description": "List of code snippets or file contents to scan for security issues.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of application dependencies with version numbers to check for known vulnerabilities.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables that may impact security settings.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "knownVulnerabilitiesDatabase", + "type": "string", + "description": "URL or path to a vulnerabilities database to cross-check dependencies and code (e.g., CVE feeds).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeConfigFiles", + "type": "boolean", + "description": "Whether to analyze backend configuration files (e.g., server configs, .env) for risky settings.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "number", + "description": "Minimum severity score (0-10) for risks to be included in the final report.", + "required": false, + "defaultValue": "5" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the risk assessment report, e.g., json or text.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing a detailed risk assessment report including identified risks, severity scores, affected components, and recommended mitigation steps." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate the security posture of a backend application before deployment or as part of a security audit, especially to identify risks from dependencies, code patterns, and environment configurations. It helps prioritize security fixes by severity.", + "limitations": "Cannot execute code or guarantee to find all zero-day vulnerabilities. Effectiveness depends on the currency of the vulnerabilities database and completeness of input data.", + "examples": [ + "Analyze my Node.js backend dependencies for known security risks.", + "Scan backend configuration files and environment variables for risky settings.", + "Provide a detailed security risk report for my backend code snippets and dependencies." + ] + }, + "tags": [ + "security", + "risk-analysis", + "backend", + "vulnerabilities", + "code-analysis", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"codeSnippets\":[\"const userPassword = process.env.PASSWORD;\"],\"dependencies\":[{\"name\":\"express\",\"version\":\"4.17.1\"},{\"name\":\"lodash\",\"version\":\"4.17.20\"}],\"environmentVariables\":{\"PASSWORD\":\"supersecret\"},\"includeConfigFiles\":true,\"severityThreshold\":6,\"outputFormat\":\"json\"}", + "description": "Analyze code snippets and dependencies for high severity security risks including environment variable exposure." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "agent-management.composeEmail", + "description": "Composes a professional email based on provided recipient details, subject, body content, and optional formatting preferences. Accepts inputs for recipient addresses, subject line, message body, CC and BCC recipients, and signature options. Outputs a structured email object ready for sending or further processing.", + "category": "agent-management", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of primary recipient email addresses. Must include at least one email.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email, supports plain text or simple HTML formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses to be CC'd on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses to be BCC'd on the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "signature", + "type": "string", + "description": "Optional signature text to append at the end of the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating whether the body content is HTML formatted. Defaults to false (plain text).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully composed email components: recipients (to, cc, bcc), subject, body (formatted as specified), and signature appended if provided." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to draft professional emails automatically or semi-automatically based on user inputs or generated content. It handles assembling email components into a structured format suitable for sending or previewing. Useful for automated customer support, scheduling communications, or follow-up emails.", + "limitations": "This tool does not send emails; it only composes the email structure. It does not validate email addresses beyond basic formatting or check deliverability. Complex HTML formatting, attachments, or embedded media are not supported.", + "examples": [ + "Compose an email to a client confirming a meeting time with polite closing.", + "Draft a follow-up email to a job application with a brief message and signature.", + "Create a notification email to multiple team members with CC and BCC recipients." + ] + }, + "tags": [ + "email", + "composition", + "communication", + "agent-management", + "automation", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"client@example.com\"],\"subject\":\"Meeting Confirmation\",\"body\":\"Dear Client,\\n\\nI am writing to confirm our meeting scheduled for June 10th at 3 PM. Please let me know if you need to reschedule.\\n\\nBest regards,\\nJane Doe\",\"cc\":[],\"bcc\":[],\"signature\":\"Jane Doe\\nProject Manager\",\"isHtml\":false}", + "description": "Compose a plain text email to a client confirming a meeting with signature." + }, + { + "inputJson": "{\"to\":[\"applicant@example.com\"],\"subject\":\"Follow-Up on Job Application\",\"body\":\"Dear Applicant,\\n\\nThank you for your interest in the position. We will get back to you shortly with the next steps.\\n\\nBest,\",\"cc\":[],\"bcc\":[],\"signature\":\"HR Team\",\"isHtml\":false}", + "description": "Compose a follow-up email to a job applicant with a polite closing." + }, + { + "inputJson": "{\"to\":[\"teamlead@example.com\"],\"subject\":\"Monthly Report Reminder\",\"body\":\"Hello Team,\\nPlease submit your monthly reports by the end of this week.\",\"cc\":[\"manager@example.com\"],\"bcc\":[\"hr@example.com\"],\"signature\":\"Admin Bot\",\"isHtml\":false}", + "description": "Compose a notification email to a team with CC and BCC recipients included." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "model-management.downloadFile", + "description": "Downloads a file associated with a deployed AI model from a specified remote storage or model registry. Accepts model identifier and file type inputs, retrieves the file, and returns a binary or base64 encoded representation suitable for local storage or further processing.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "The unique identifier of the model whose file is to be downloaded. Required to specify which model's files to access.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type of file to download such as 'weights', 'config', 'tokenizer', or 'metadata'. Determines which specific file associated with the model to retrieve.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Optional model version tag or number to specify a particular version of the model files. Defaults to latest if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local path where the downloaded file should be stored. If empty, file is returned as base64 string in output.", + "required": false, + "defaultValue": "" + }, + { + "name": "asBase64", + "type": "boolean", + "description": "If true, returns the file content as a base64 encoded string instead of writing to local path. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file data either as base64 encoded string (if asBase64=true) or a confirmation message with file path if written locally. Includes success status and error message if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve model-related files such as weights or configuration from a model registry or remote storage for deployment, analysis, or transfer. It automates model file access for management workflows.", + "limitations": "Does not support downloading files unrelated to models or arbitrary cloud storage files outside the model management context. Cannot modify or upload files, only download existing ones.", + "examples": [ + "Download the latest weights file for model ID 'abc123' and save locally.", + "Retrieve the configuration file of model 'xyz789' version 'v2' as base64 string.", + "Fetch tokenizer files for a specified model without storing locally." + ] + }, + "tags": [ + "model-management", + "file-download", + "model-files", + "deployment", + "ai-models" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"fileType\":\"weights\",\"version\":\"\",\"destinationPath\":\"/models/abc123_weights.bin\",\"asBase64\":false}", + "description": "Download the latest weights file for model abc123 and save it locally at the specified path." + }, + { + "inputJson": "{\"modelId\":\"xyz789\",\"fileType\":\"config\",\"version\":\"v2\",\"destinationPath\":\"\",\"asBase64\":true}", + "description": "Retrieve the version v2 configuration file for model xyz789 and return as a base64 encoded string." + }, + { + "inputJson": "{\"modelId\":\"def456\",\"fileType\":\"tokenizer\",\"version\":\"\",\"destinationPath\":\"/tmp/tokenizer.json\",\"asBase64\":false}", + "description": "Download the tokenizer file for model def456 and save it locally to /tmp/tokenizer.json." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "model-management.formatCode", + "description": "Formats source code snippets used in AI model development projects to comply with standard style guidelines. It accepts raw code as input along with optional parameters specifying programming language and style preferences, and returns the properly formatted code output for consistent readability and maintenance.", + "category": "model-management", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw source code string to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the code (e.g., 'python', 'javascript') to apply appropriate formatting rules", + "required": false, + "defaultValue": "python" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Optional name of the style guide to follow (e.g., 'pep8' for Python, 'google' for JavaScript); defaults to common conventions if not specified", + "required": false, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width after formatting; helps wrap long lines according to style guidelines", + "required": false, + "defaultValue": "80" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to format indentation using tabs instead of spaces", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string and optional metadata such as any formatting errors or warnings" + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize or clean up source code associated with AI models or projects to improve readability, maintainability, or ensure compliance with coding standards before deployment or review. It's particularly useful for agents managing multiple model repositories, automating code style enforcement, or preparing code for documentation and collaboration.", + "limitations": "This tool does not perform syntax checking or semantic code analysis. It only formats code according to style rules, so it cannot fix bugs or verify code correctness.", + "examples": [ + "Format the Python training script to PEP8 standards.", + "Clean and format a JavaScript utility module using Google style guide.", + "Reformat a configuration code snippet with 100 character line width and tabs for indentation" + ] + }, + "tags": [ + "formatting", + "code", + "style", + "model-development", + "source-code", + "linting" + ], + "examples": [ + { + "inputJson": "{\"code\":\"def train_model(x,y):\\n return x+y\",\"language\":\"python\",\"styleGuide\":\"pep8\",\"lineWidth\":80,\"useTabs\":false}", + "description": "Format a small Python function to adhere to PEP8 style guidelines with default line width and spaces indentation." + }, + { + "inputJson": "{\"code\":\"function sum(a,b){return a+b;}\",\"language\":\"javascript\",\"styleGuide\":\"google\",\"lineWidth\":100,\"useTabs\":true}", + "description": "Format a JavaScript function using Google style and tabs indentation with a wider max line width." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "model-management.formatEmail", + "description": "Formats a draft email for communication related to AI model management. Accepts raw email content, recipient info, tone, and formatting preferences, then processes the text to produce a polished and clear email body ready for sending or further editing.", + "category": "model-management", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the email recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyContent", + "type": "string", + "description": "Raw textual content or draft of the email to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email (e.g., formal, informal, neutral).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a professional signature to the email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "signatureName", + "type": "string", + "description": "Name to use in the signature if included.", + "required": false, + "defaultValue": "" + }, + { + "name": "highlightPoints", + "type": "array", + "description": "List of key points to be emphasized or bulleted in the email body.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted email components: subject, body, and optionally signature appended." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to prepare clear, professional emails related to model training status updates, deployment notifications, or management communications. Helps automate formatting and ensure tone consistency. Suitable for drafting emails that need to be clear and polite, tailored to recipients.", + "limitations": "Cannot send emails; only formats text. Does not handle attachments or email client integrations. Tone adjustment is limited to predefined styles and may not capture all nuances.", + "examples": [ + "Format an update email for a project manager about recent model training results in a formal tone.", + "Create an informal reminder email for team members regarding model deployment deadlines.", + "Draft a technical clarification email with bullet points emphasizing key metrics." + ] + }, + "tags": [ + "email", + "formatting", + "model-management", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Dr. Smith\",\"subject\":\"Model Training Update\",\"bodyContent\":\"The model training has completed ahead of schedule with improved accuracy metrics.\",\"tone\":\"formal\",\"includeSignature\":true,\"signatureName\":\"Jane Doe, AI Team Lead\",\"highlightPoints\":[\"Training completed ahead of schedule\",\"Improved accuracy metrics\"]}", + "description": "Formal update email with highlights and signature." + }, + { + "inputJson": "{\"recipientName\":\"Team\",\"subject\":\"Reminder: Model Deployment Deadline\",\"bodyContent\":\"Please ensure all deployment tasks are completed by Friday.\",\"tone\":\"informal\",\"includeSignature\":false}", + "description": "Informal reminder email without signature." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "model-management.createContract", + "description": "Creates a legally structured contract document by accepting input parameters such as parties, terms, signatures, and effective dates. It processes these inputs to generate a finalized contract text suitable for review, execution, and record-keeping.", + "category": "model-management", + "parameters": [ + { + "name": "partyA", + "type": "string", + "description": "Full legal name of the first contracting party.", + "required": true, + "defaultValue": "" + }, + { + "name": "partyB", + "type": "string", + "description": "Full legal name of the second contracting party.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractTitle", + "type": "string", + "description": "Title or heading for the contract document.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "ISO format date string (YYYY-MM-DD) representing when the contract becomes effective.", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationDate", + "type": "string", + "description": "ISO format date string (YYYY-MM-DD) when the contract expires, or empty if indefinite.", + "required": false, + "defaultValue": "" + }, + { + "name": "contractTerms", + "type": "string", + "description": "Plain text or structured summary outlining the key terms and conditions of the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction under which the contract is governed (e.g., 'California, USA').", + "required": false, + "defaultValue": "" + }, + { + "name": "signatories", + "type": "array", + "description": "Array of objects representing each party's authorized signatory with their name and title.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract document text and metadata such as parties, dates, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a legally formatted contract document from structured input about parties, terms, dates, and signatories. It is useful in automating contract drafting, reducing manual legal document generation tasks, and standardizing contract content for review or electronic signing.", + "limitations": "This tool does not provide legal advice, verify legal compliance, or replace consultation with a qualified attorney. It generates draft contracts based on input but cannot validate enforceability or suitability for complex cases.", + "examples": [ + "Create a contract between Company A and Vendor B for IT services starting 2024-07-01 ending 2025-07-01, governed by New York law.", + "Draft a non-disclosure agreement titled 'NDA Confidentiality' between Alice Corp and Beta Ltd effective immediately with standard mutual terms.", + "Prepare a supply agreement with terms outlined for delivery, payment, and liability between Supplier X and Retailer Y, with specified signatories." + ] + }, + "tags": [ + "contract", + "legal-document", + "document-generation", + "model-management", + "automation", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"partyA\":\"Alpha Technologies Inc.\",\"partyB\":\"Beta Solutions LLC\",\"contractTitle\":\"Software Development Agreement\",\"effectiveDate\":\"2024-07-01\",\"expirationDate\":\"2025-07-01\",\"contractTerms\":\"Beta Solutions will develop custom software modules for Alpha Technologies as specified in the attached scope of work. Payments will be milestone-based.\",\"governingLaw\":\"California, USA\",\"signatories\":[{\"name\":\"John Doe\",\"title\":\"CEO\"},{\"name\":\"Jane Smith\",\"title\":\"Managing Director\"}]}", + "description": "Generate a software development contract between two companies with milestone payment terms and California law." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "email-communication.createCustomer", + "description": "Creates a new customer profile for email communication purposes by accepting essential customer information such as name, email address, and subscription preferences. It validates inputs, stores the data securely, and returns a confirmation with a unique customer ID and status.", + "category": "email-communication", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "The customer's first name for personalization and records.", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "The customer's last name for identification purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "The customer's email address used for sending communications.", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Optional contact phone number for multi-channel communication.", + "required": false, + "defaultValue": "" + }, + { + "name": "subscriptionPreferences", + "type": "object", + "description": "An object defining the customer's email subscription settings such as newsletter and promotional emails.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or labels to categorize or segment the customer for targeted email campaigns.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the newly created customer's unique ID, creation status, and optional error messages if creation failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically add a new customer record into the email communication system to enable personalized and targeted email campaigns. It ensures input validation and returns identifiers for future reference.", + "limitations": "This tool does not send emails or manage unsubscribes; it only creates and stores customer profiles.", + "examples": [ + "Create a customer profile with full name, email, and subscribe them to newsletters.", + "Add a new customer with tagging for segmentation in marketing campaigns.", + "Register a customer with minimal data: name and email only." + ] + }, + "tags": [ + "email", + "customer", + "create", + "profile", + "subscription", + "communication" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\",\"subscriptionPreferences\":{\"newsletter\":true,\"promotions\":false},\"tags\":[\"premium\",\"north-america\"]}", + "description": "Create a premium customer Jane Doe with newsletter subscription only." + }, + { + "inputJson": "{\"firstName\":\"John\",\"lastName\":\"Smith\",\"email\":\"john.smith@example.com\",\"phoneNumber\":\"+1234567890\",\"tags\":[\"trial\"]}", + "description": "Add John Smith with phone number and a trial tag for segmentation." + }, + { + "inputJson": "{\"firstName\":\"Emily\",\"lastName\":\"Clark\",\"email\":\"emily.clark@example.net\"}", + "description": "Register Emily Clark with required details only for basic communication." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "monitoring.analyzeReport", + "description": "This tool accepts a performance monitoring report in JSON or structured text format, analyzes key metrics such as CPU, memory usage, error rates, and response times, and produces a summarized analysis highlighting performance bottlenecks, anomalies, and trends. It outputs an object containing summaries, visualizable metric trends, and recommendations for improvement.", + "category": "monitoring", + "parameters": [ + { + "name": "reportData", + "type": "string", + "description": "The performance report data to analyze, provided as a JSON string or structured text (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the input report data (e.g., 'json', 'text'). Determines parsing rules (optional, defaults to 'json').", + "required": false, + "defaultValue": "json" + }, + { + "name": "metricsOfInterest", + "type": "array", + "description": "List of metric names to focus the analysis on, such as ['cpuUsage','errorRate']. If empty or omitted, analyze all available metrics (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object with 'start' and 'end' ISO8601 timestamps to restrict analysis to a time interval (optional).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summary statistics, detected anomalies, trend data, and actionable recommendations based on the input monitoring report." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw performance or system monitoring reports and need to extract actionable insights, detect bottlenecks, or summarize system health trends for decision making or alerting. It helps transform raw metric data into a human-readable analysis and recommendations.", + "limitations": "This tool cannot collect monitoring data itself or predict future performance beyond detected trends. It requires properly formatted input reports and may not interpret highly custom or proprietary report formats accurately.", + "examples": [ + "Analyze this JSON report data to detect any CPU or memory bottlenecks from the past 24 hours.", + "Summarize the key performance issues and anomalies found in the provided HTTP error rate report.", + "Identify trends and provide recommendations based on application response time metrics within a specific date range." + ] + }, + "tags": [ + "monitoring", + "performance", + "analysis", + "report", + "metrics", + "system health", + "anomaly detection" + ], + "examples": [ + { + "inputJson": "{\"reportData\":\"{\\\"cpuUsage\\\": [45, 55, 70, 85], \\\"memoryUsage\\\": [60, 65, 70, 75], \\\"errorRate\\\": [0.01, 0.05, 0.03, 0.1]}\",\"reportFormat\":\"json\",\"metricsOfInterest\":[\"cpuUsage\",\"memoryUsage\"]}", + "description": "Analyze CPU and memory usage metrics from a JSON-formatted monitoring report." + }, + { + "inputJson": "{\"reportData\":\"Timestamp: 2024-05-10T12:00:00Z - CPU 55%, Memory 65%\\nTimestamp: 2024-05-10T12:05:00Z - CPU 70%, Memory 67%\\n\",\"reportFormat\":\"text\",\"metricsOfInterest\":[],\"timeRange\":{\"start\":\"2024-05-10T12:00:00Z\",\"end\":\"2024-05-10T12:10:00Z\"}}", + "description": "Analyze a text-formatted monitoring report within a given time range focusing on all reported metrics." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "monitoring.analyzeCustomer", + "description": "Analyzes customer-related performance data by accepting customer interaction logs, transaction records, and engagement metrics. Processes this data to identify behavior patterns, churn risks, and satisfaction trends. Outputs detailed analytical reports and predictive insights to help improve customer experience and retention strategies.", + "category": "monitoring", + "parameters": [ + { + "name": "customerInteractionLogs", + "type": "array", + "description": "Array of objects representing individual customer interaction records including timestamps, channels, and outcomes.", + "required": true, + "defaultValue": "" + }, + { + "name": "transactionRecords", + "type": "array", + "description": "Array of customer transaction objects containing purchase details, amounts, and timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "engagementMetrics", + "type": "object", + "description": "Aggregate metrics related to customer engagement such as frequency of login, feature usage counts, and session duration averages.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisPeriodDays", + "type": "number", + "description": "Time period in days over which to analyze customer data. Defaults to 30 days if not specified.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includePredictiveAnalysis", + "type": "boolean", + "description": "Flag to include predictive models for churn and satisfaction forecasting in the analysis report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analytical report containing customer behavior patterns, segmentation details, churn risk scores, satisfaction trend graphs, and predictive insights if requested." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to assess and visualize customer performance metrics from raw interaction and transaction data, enabling data-driven decisions on customer experience improvements and retention strategies. It excels in generating actionable insights from complex customer behavior data.", + "limitations": "The tool cannot collect raw data directly and requires pre-processed input data. It does not perform real-time analysis and is limited to the quality and completeness of inputs provided.", + "examples": [ + "Generate a customer behavior analysis report for the last 60 days using interaction logs and transaction data.", + "Analyze customer churn risk and satisfaction trends based on provided engagement metrics and transaction histories.", + "Provide predictive insights about customers likely to reduce engagement in the next quarter based on the last 30 days data." + ] + }, + "tags": [ + "monitoring", + "customer analysis", + "behavior analytics", + "churn prediction", + "business intelligence", + "performance monitoring" + ], + "examples": [ + { + "inputJson": "{\"customerInteractionLogs\":[{\"timestamp\":\"2024-05-01T13:45:00Z\",\"channel\":\"email\",\"outcome\":\"opened\"},{\"timestamp\":\"2024-05-02T09:15:00Z\",\"channel\":\"web\",\"outcome\":\"purchase\"}],\"transactionRecords\":[{\"transactionId\":\"T1001\",\"amount\":120.50,\"timestamp\":\"2024-05-02T09:16:00Z\"}],\"engagementMetrics\":{\"averageSessionDuration\":15,\"loginFrequency\":5},\"analysisPeriodDays\":30,\"includePredictiveAnalysis\":true}", + "description": "Analyze customer interactions and transaction data from the past month including predictive churn risk." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "monitoring.generateReport", + "description": "Generates a comprehensive performance monitoring report based on specified systems, time range, and metrics. Accepts input parameters for selecting monitored systems, desired performance metrics, report time window, and output format. Processes collected monitoring data to produce detailed summaries and visualizations in PDF or JSON format.", + "category": "monitoring", + "parameters": [ + { + "name": "systems", + "type": "array", + "description": "List of system identifiers or names to include in the report.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "array", + "description": "List of performance metrics to report on (e.g., CPU usage, memory, network).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "startTime", + "type": "string", + "description": "Start timestamp (ISO 8601) of the time range to include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End timestamp (ISO 8601) of the time range to include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated report, either 'pdf' or 'json'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeVisuals", + "type": "boolean", + "description": "Whether to include charts and graphs in the report. Defaults to true for PDF reports.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the report. If not provided, a default title is generated.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the report content, metadata and optionally a binary encoded PDF or JSON report." + }, + "aiAgent": { + "useCase": "Use this tool when a detailed performance monitoring report, including metric summaries and optional visual charts, is needed for one or more monitored systems over a specific time range. Ideal for summarizing system health, uptime, and resource usage to support maintenance planning or incident review.", + "limitations": "This tool does not perform real-time monitoring or data collection; it requires that monitoring data has already been gathered and accessible. It cannot customize report layouts beyond provided options or analyze uncollected metrics.", + "examples": [ + "Generate a weekly CPU and memory usage report for server01 and server02 in PDF format including visuals.", + "Create a JSON report of network and disk IO metrics for all systems monitored between two specified timestamps.", + "Produce a report titled 'Monthly Performance Summary' for database servers highlighting latency and error rates without charts." + ] + }, + "tags": [ + "monitoring", + "reporting", + "performance", + "systems", + "metrics", + "pdf", + "json", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"systems\":[\"server01\",\"server02\"],\"metrics\":[\"cpuUsage\",\"memoryUsage\"],\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-07T23:59:59Z\",\"outputFormat\":\"pdf\",\"includeVisuals\":true}", + "description": "Generate a weekly CPU and memory usage report for two servers with visuals in PDF format." + }, + { + "inputJson": "{\"systems\":[\"all\"],\"metrics\":[\"networkIn\",\"networkOut\",\"diskIO\"],\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-01T23:59:59Z\",\"outputFormat\":\"json\"}", + "description": "Create a single-day JSON report of network and disk IO metrics across all systems." + }, + { + "inputJson": "{\"systems\":[\"db-server-01\"],\"metrics\":[\"latency\",\"errorRate\"],\"startTime\":\"2024-03-01T00:00:00Z\",\"endTime\":\"2024-03-31T23:59:59Z\",\"title\":\"Monthly Performance Summary\",\"includeVisuals\":false}", + "description": "Produce a monthly report for a database server focusing on latency and error rate without charts." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "monitoring.buildCode", + "description": "This tool accepts monitoring requirements and metrics definitions to generate code snippets in chosen programming languages that integrate performance and health metrics logging into applications. It processes input specifying metrics, logging frameworks, and output format, then produces ready-to-use code to embed monitoring into software systems.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of monitoring metrics to be implemented (e.g., CPU usage, response time). Each metric is a string identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language for the generated monitoring code (e.g., Python, Java, JavaScript).", + "required": true, + "defaultValue": "python" + }, + { + "name": "loggingFramework", + "type": "string", + "description": "Name of the logging or metrics framework to integrate (e.g., Prometheus, Log4j, Winston).", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated code output (e.g., snippet, fullFile).", + "required": false, + "defaultValue": "snippet" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated monitoring code as a string, including the specified metrics and integration details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to embed system or application monitoring code into software projects automatically. It helps quickly scaffold metric collection code in the preferred language and framework, accelerating observability setup.", + "limitations": "Does not generate full monitoring systems or dashboards; limited to code snippets or files for metric logging. Cannot automatically detect existing codebase or environment specifics requiring manual adaptation.", + "examples": [ + "Generate Python code snippets to monitor CPU and memory usage using Prometheus.", + "Create JavaScript monitoring code integrating with the Winston logging library for response time metrics.", + "Build Java code to log custom business metrics as per user input without comments." + ] + }, + "tags": [ + "monitoring", + "code generation", + "metrics", + "logging", + "performance", + "integration", + "observability" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"cpuUsage\",\"responseTime\"],\"programmingLanguage\":\"python\",\"loggingFramework\":\"Prometheus\",\"outputFormat\":\"snippet\",\"includeComments\":true}", + "description": "Generate Python snippet with Prometheus integration for CPU usage and response time monitoring including comments." + }, + { + "inputJson": "{\"metrics\":[\"requestCount\"],\"programmingLanguage\":\"javascript\",\"loggingFramework\":\"Winston\",\"outputFormat\":\"fullFile\",\"includeComments\":false}", + "description": "Generate full JavaScript file integrating Winston logging for counting requests without comments." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "security-tools.composeDocument", + "description": "Composes detailed security compliance or incident response documents based on structured input data such as findings, actions taken, and compliance requirements. Outputs a formatted document ready for distribution or record-keeping.", + "category": "security-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of security document to compose, e.g., 'incidentReport', 'complianceReport','auditSummary'.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Date of the document in ISO 8601 format. Defaults to current date if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the person or entity composing the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "findings", + "type": "array", + "description": "Array of findings or issues to include, each with details such as description, severity, and affected assets.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "actionsTaken", + "type": "array", + "description": "Array of actions taken in response to findings, with descriptions, dates, and responsible parties.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "complianceRequirements", + "type": "array", + "description": "List of compliance standards or requirements addressed in the document, e.g., ['PCI-DSS', 'ISO27001'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "format", + "type": "string", + "description": "Output document format: 'pdf', 'docx', or 'markdown'. Defaults to 'markdown'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "The composed document content and metadata, including the formatted text and optionally a binary file link, depending on requested format." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to generate structured security-related documents such as incident reports or compliance summaries automatically from raw input data, helping streamline security documentation workflows.", + "limitations": "The tool cannot verify input data accuracy or enforce legal compliance beyond formatting; it also does not perform document signing or secure storage.", + "examples": [ + "Compose an incident report document summarizing the recent security breach with findings and remediation steps.", + "Generate a compliance report covering PCI-DSS requirements with a summary of audit findings.", + "Create a markdown formatted audit summary with a list of detected vulnerabilities and actions taken." + ] + }, + "tags": [ + "security", + "document", + "composition", + "compliance", + "incident-report", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"incidentReport\",\"title\":\"Data Breach Incident Report\",\"date\":\"2024-05-15\",\"author\":\"Security Team\",\"findings\":[{\"description\":\"Unauthorized access detected in server A\",\"severity\":\"High\",\"affectedAssets\":[\"Server A\"]}],\"actionsTaken\":[{\"description\":\"Isolated server A from network\",\"date\":\"2024-05-15\",\"responsible\":\"IT Department\"}],\"includeSummary\":true,\"format\":\"markdown\"}", + "description": "Compose a markdown incident report document detailing a high severity unauthorized access incident and response." + }, + { + "inputJson": "{\"documentType\":\"complianceReport\",\"title\":\"Quarterly PCI-DSS Compliance Report\",\"author\":\"Compliance Officer\",\"complianceRequirements\":[\"PCI-DSS\"],\"findings\":[],\"actionsTaken\":[],\"includeSummary\":true,\"format\":\"pdf\"}", + "description": "Generate a PDF compliance report for PCI-DSS with summary and no specific findings or actions." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "security-tools.generateText", + "description": "Generates security-focused text content such as policy templates, secure coding guidelines, or incident response plans based on user input parameters specifying the type and details. Accepts input parameters for content type, length, and focus area, then produces customized, ready-to-use security documentation or advisory text.", + "category": "security-tools", + "parameters": [ + { + "name": "contentType", + "type": "string", + "description": "Type of security text to generate, e.g., 'policy', 'guideline', 'incidentResponsePlan'.", + "required": true, + "defaultValue": "" + }, + { + "name": "focusArea", + "type": "string", + "description": "Specific security domain to emphasize, such as 'data protection', 'access control', or 'network security'.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the output text, e.g., 'en' for English, 'es' for Spanish.", + "required": false, + "defaultValue": "en" + }, + { + "name": "lengthInWords", + "type": "number", + "description": "Approximate desired length of the generated text in words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include practical examples or scenarios in the generated text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated security text and associated metadata, including content type and length." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to provide users with tailored security documentation or educational content without manually drafting it. Useful for generating initial drafts of policies, guidelines, or incident plans customized by security focus area and length requirements.", + "limitations": "The generated content is textual guidance and not a substitute for expert legal or security review. It may not cover all jurisdiction-specific requirements or the latest standards.", + "examples": [ + "Generate a data protection policy template of about 1000 words focused on GDPR compliance.", + "Create secure coding guidelines emphasizing input validation with included examples.", + "Produce an incident response plan outline in Spanish for network security breaches." + ] + }, + "tags": [ + "security", + "text-generation", + "policy", + "guidelines", + "incident-response", + "documentation", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"contentType\":\"policy\",\"focusArea\":\"data protection\",\"language\":\"en\",\"lengthInWords\":1000,\"includeExamples\":true}", + "description": "Generate a comprehensive data protection policy template in English with examples, about 1000 words long." + }, + { + "inputJson": "{\"contentType\":\"guideline\",\"focusArea\":\"secure coding\",\"language\":\"en\",\"lengthInWords\":500,\"includeExamples\":true}", + "description": "Generate secure coding guidelines focusing on input validation with examples, about 500 words." + }, + { + "inputJson": "{\"contentType\":\"incidentResponsePlan\",\"focusArea\":\"network security\",\"language\":\"es\",\"lengthInWords\":700,\"includeExamples\":false}", + "description": "Produce an incident response plan for network security breaches in Spanish without examples, approximately 700 words." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "security-tools.createWord", + "description": "Generates a secure, strong password or passphrase word based on specified complexity and length parameters. Accepts inputs such as desired word length, inclusion of character types (uppercase, lowercase, digits, symbols), and outputs a randomly generated, cryptographically strong word suitable for use as a security credential component.", + "category": "security-tools", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "The desired length of the generated word (minimum 6).", + "required": true, + "defaultValue": "12" + }, + { + "name": "includeUppercase", + "type": "boolean", + "description": "Whether to include uppercase letters in the generated word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeLowercase", + "type": "boolean", + "description": "Whether to include lowercase letters in the generated word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDigits", + "type": "boolean", + "description": "Whether to include digits in the generated word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSymbols", + "type": "boolean", + "description": "Whether to include symbols (e.g., !@#$) in the generated word.", + "required": false, + "defaultValue": "false" + }, + { + "name": "excludeAmbiguousCharacters", + "type": "boolean", + "description": "Whether to exclude ambiguous characters such as 'O', '0', 'l', '1'.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secure word string and metadata about its complexity and length." + }, + "aiAgent": { + "useCase": "This tool is appropriate when an AI agent needs to generate a strong, random word or password component that meets specific security and complexity requirements, such as for user credentials, API keys, or cryptographic keys. It helps create secure, unpredictable words programmatically.", + "limitations": "Does not guarantee compliance with all possible password policies (e.g., specific dictionary restrictions or sequence rules). Does not store or transmit generated words securely; external measures needed.", + "examples": [ + "Generate a 16-character secure word including uppercase, lowercase, digits, and symbols.", + "Create a 10-character lowercase-only secure word excluding ambiguous characters.", + "Generate a 20-character secure passphrase word including digits and uppercase letters but no symbols." + ] + }, + "tags": [ + "security", + "password-generation", + "random", + "credential", + "word", + "complexity" + ], + "examples": [ + { + "inputJson": "{\"length\":16,\"includeUppercase\":true,\"includeLowercase\":true,\"includeDigits\":true,\"includeSymbols\":true,\"excludeAmbiguousCharacters\":true}", + "description": "Generate a 16-character secure word with uppercase, lowercase, digits, and symbols, excluding ambiguous characters." + }, + { + "inputJson": "{\"length\":10,\"includeUppercase\":false,\"includeLowercase\":true,\"includeDigits\":false,\"includeSymbols\":false,\"excludeAmbiguousCharacters\":true}", + "description": "Generate a 10-character lowercase-only secure word excluding ambiguous characters." + }, + { + "inputJson": "{\"length\":20,\"includeUppercase\":true,\"includeLowercase\":false,\"includeDigits\":true,\"includeSymbols\":false,\"excludeAmbiguousCharacters\":false}", + "description": "Generate a 20-character secure word with uppercase letters and digits, including ambiguous characters, no symbols." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "security-tools.createJSON", + "description": "Creates a secure JSON object for configuration or communication purposes by accepting input data and applying security-related processing such as encryption, signing, or adding integrity checks. Outputs a JSON string with embedded security features ready for secure storage or transmission.", + "category": "security-tools", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The raw data object to be secured and converted into JSON format.", + "required": true, + "defaultValue": "" + }, + { + "name": "encryptMethod", + "type": "string", + "description": "The encryption algorithm to use (e.g., AES, RSA). If empty, no encryption is applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "signData", + "type": "boolean", + "description": "Whether to digitally sign the JSON data to ensure authenticity.", + "required": false, + "defaultValue": "false" + }, + { + "name": "signingKey", + "type": "string", + "description": "The private key string used to sign the data; required if signData is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeIntegrityHash", + "type": "boolean", + "description": "Whether to include a cryptographic hash for data integrity verification.", + "required": false, + "defaultValue": "true" + }, + { + "name": "hashAlgorithm", + "type": "string", + "description": "The hashing algorithm used for integrity check (e.g., SHA-256).", + "required": false, + "defaultValue": "SHA-256" + } + ], + "returns": { + "type": "object", + "description": "An object containing the secure JSON string and metadata about applied protections, including encryption and signature details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce a JSON object that includes security features such as encryption, digital signatures, and integrity verification, especially for securely transmitting or storing sensitive configuration data or messages.", + "limitations": "This tool does not manage key generation or storage; keys must be provided externally. It does not perform schema validation or data sanitization.", + "examples": [ + "Create a JSON object for a secure API payload with AES encryption and a digital signature.", + "Generate a signed JSON configuration blob with SHA-256 hash for integrity verification.", + "Produce a plain JSON output with an integrity hash but without encryption or signing." + ] + }, + "tags": [ + "security", + "json", + "encryption", + "digital-signature", + "integrity", + "configuration", + "secure-transmission" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"username\":\"admin\",\"password\":\"p@ssw0rd\"},\"encryptMethod\":\"AES\",\"signData\":true,\"signingKey\":\"-----BEGIN PRIVATE KEY-----...\",\"includeIntegrityHash\":true,\"hashAlgorithm\":\"SHA-256\"}", + "description": "Create encrypted and signed JSON payload containing sensitive user credential data with integrity protection." + }, + { + "inputJson": "{\"data\":{\"configVersion\":3,\"settings\":{\"mode\":\"secure\",\"retry\":5}},\"encryptMethod\":\"\",\"signData\":false,\"includeIntegrityHash\":true}", + "description": "Create a plain JSON configuration object with integrity hash but no encryption or signature." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "sales-automation.analyzeDocument", + "description": "This tool accepts various sales-related documents such as proposals, contracts, or lead qualification forms in text or PDF format. It analyzes the document content to extract key sales insights like customer needs, deal value, decision timeline, and potential objections. The output is a structured summary to aid sales representatives in prioritizing and tailoring follow-ups.", + "category": "sales-automation", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "Text content of the sales document to analyze, either raw text or extracted text from PDF.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of sales document provided (e.g., 'proposal', 'contract', 'leadForm') to optimize analysis parameters.", + "required": false, + "defaultValue": "proposal" + }, + { + "name": "language", + "type": "string", + "description": "Language of the document content to process appropriately (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "extractObjections", + "type": "boolean", + "description": "Whether to specifically identify and highlight potential client objections within the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeConfidenceScores", + "type": "boolean", + "description": "Include confidence scores for each extracted insight to evaluate reliability.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured summary of the sales document with insights including key points, deal value estimate, timeline, objections, and confidence metrics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand or summarize the core sales information from documents such as proposals or contracts, enabling informed decision making, lead prioritization, or client engagement planning.", + "limitations": "The tool does not interpret handwritten or low-quality scanned documents and may not extract accurate insights from documents with incomplete or ambiguous information. It also does not replace legal review of contracts.", + "examples": [ + "Analyze the attached sales proposal to extract deal value and timeline for follow-up scheduling.", + "Summarize key objections from the contract document to prepare negotiation responses.", + "Review lead qualification form text to identify client needs and urgency level." + ] + }, + "tags": [ + "sales", + "automation", + "document analysis", + "lead management", + "proposal", + "contract", + "summary", + "AI" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"Dear Sales Team, We are interested in purchasing 100 units of product X with delivery in 6 weeks. Budget is approximately $50,000. Please provide detailed proposal.\",\"documentType\":\"leadForm\",\"language\":\"en\",\"extractObjections\":true,\"includeConfidenceScores\":true}", + "description": "Analyzing a lead qualification form to extract interest details, budget, and timeline." + }, + { + "inputJson": "{\"documentContent\":\"This contract outlines delivery of 500 units at $45 each with payment due in 30 days. Client may request adjustments due to market changes.\",\"documentType\":\"contract\",\"language\":\"en\",\"extractObjections\":true,\"includeConfidenceScores\":false}", + "description": "Summarizing a sales contract to identify financial terms and potential client objections." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "documentation-tools.analyzeMessage", + "description": "Analyzes a message string to extract key communication attributes such as sentiment, intent, clarity, and detect possible action items or requests. Accepts raw message text, optionally with language hints, and returns a structured analysis report highlighting sentiment score, detected intent category, clarity rating, and any identified tasks or follow-ups.", + "category": "documentation-tools", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The raw text content of the message to be analyzed, including emails, chat messages, or documentation comments.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Optional BCP-47 language code (e.g., 'en', 'fr') to assist analysis; defaults to English if not specified.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Whether to detect and extract specific action items or requests from the message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length in characters for a generated concise summary of the message content; 0 disables summary.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "An object containing message sentiment (positive, neutral, negative, score), detected intent category (informative, request, complaint, etc.), clarity rating (scale 0-1), optional summary text, and extracted action items array if any." + }, + "aiAgent": { + "useCase": "Use this tool when processing communication messages such as emails, chat logs, or documentation comments to gain automated insights about their tone, purpose, and clarity. Valuable for triaging incoming messages, summarizing communication, or detecting required follow-up actions.", + "limitations": "This tool only analyzes text content and may not fully interpret complex sarcasm, cultural context, or multi-lingual nuances beyond basic language hints. It does not execute actions or integrate with messaging platforms.", + "examples": [ + "Analyze the sentiment and intent of this customer support email.", + "Extract action items and summarize this engineering team chat message.", + "Evaluate clarity and tone of the project update message." + ] + }, + "tags": [ + "analysis", + "communication", + "documentation", + "sentiment", + "intent-detection", + "action-items" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Hi team, please review the attached document and provide feedback by Friday.\",\"language\":\"en\",\"includeActionItems\":true,\"maxSummaryLength\":100}", + "description": "Typical internal message requesting review with deadline" + }, + { + "inputJson": "{\"messageText\":\"I'm disappointed with the recent release; several bugs remain unresolved.\",\"language\":\"en\",\"includeActionItems\":false,\"maxSummaryLength\":0}", + "description": "Customer complaint message expressing dissatisfaction" + }, + { + "inputJson": "{\"messageText\":\"FYI: The deployment was successful. No issues encountered.\",\"language\":\"en\",\"includeActionItems\":true,\"maxSummaryLength\":50}", + "description": "Informative status update message" + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "etl-processes.createFunction", + "description": "Creates a customizable ETL processing function by accepting specifications for data extraction, transformation, and loading steps. Input includes source type, transformation operations, and target destination. Produces executable code or function logic to perform the defined ETL workflow programmatically.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceType", + "type": "string", + "description": "Type of data source to extract from, e.g., 'csv', 'json', 'database'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration details for connecting or reading the source, such as file paths, connection strings, or query parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "An array of transformation steps to apply on the extracted data, e.g., filtering, mapping, aggregation, with parameters for each step.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetType", + "type": "string", + "description": "Type of target storage or destination, e.g., 'database', 'file', 'api'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetConfig", + "type": "object", + "description": "Configuration details for loading data into the target, such as destination path, table name, or API endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionName", + "type": "string", + "description": "Name to assign to the generated ETL function.", + "required": false, + "defaultValue": "etlFunction" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language for the generated function code, e.g., 'javascript', 'python'.", + "required": false, + "defaultValue": "javascript" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated ETL function code as a string, the function name, and metadata describing the ETL steps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a reusable ETL function programmatically based on user-specified data extraction sources, transformation logic, and loading targets. It enables dynamic creation of data pipelines tailored to different sources and destinations without manual coding.", + "limitations": "This tool generates code templates and may not handle highly complex or proprietary data source APIs automatically; deeper customization or debugging might be required by a developer.", + "examples": [ + "Create an ETL function that extracts CSV data, filters rows with a condition, maps fields to a new format, and loads results into a SQL database.", + "Generate a Python ETL function that reads JSON from an API, transforms nested data to flat structure, then saves it to a local file." + ] + }, + "tags": [ + "etl", + "function generation", + "data pipeline", + "code", + "automation", + "transformation" + ], + "examples": [ + { + "inputJson": "{\"sourceType\":\"csv\",\"sourceConfig\":{\"path\":\"/data/input.csv\"},\"transformations\":[{\"type\":\"filter\",\"condition\":\"age > 18\"},{\"type\":\"map\",\"mapping\":{\"name\":\"fullName\",\"age\":\"userAge\"}}],\"targetType\":\"database\",\"targetConfig\":{\"connectionString\":\"Server=myServer;Database=myDb;User Id=myUser;Password=myPass;\",\"table\":\"users_adult\"},\"functionName\":\"processAdultUsers\",\"programmingLanguage\":\"javascript\"}", + "description": "Generate a JavaScript ETL function that reads a CSV, filters adults, maps fields, and loads into a database table." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "database-management.uploadCode", + "description": "Uploads and stores database related code snippets or scripts (e.g., SQL queries, stored procedures, migration scripts) into a database management system's code repository. Accepts code content, identifier, language, and metadata; validates and saves the code, returning a confirmation and stored code ID.", + "category": "database-management", + "parameters": [ + { + "name": "codeContent", + "type": "string", + "description": "The actual code or script content to be uploaded, e.g., SQL query or script text.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeIdentifier", + "type": "string", + "description": "A unique name or ID to identify the code snippet within the repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming or query language of the code snippet (e.g., SQL, PL/pgSQL, T-SQL).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description or comments about the code snippet for documentation purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags or keywords to classify and facilitate searching code snippets.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite existing code if codeIdentifier already exists in the repository.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object confirming upload success containing stored code ID, status, and message." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically store or update database-related code scripts in a centralized repository for version control, sharing, or later execution within database environments. It's ideal for managing SQL scripts, stored procedures, or migration code.", + "limitations": "This tool does not execute or validate code correctness beyond basic format validation. It only stores code; code deployment or execution must be handled separately.", + "examples": [ + "Upload a new SQL migration script with a descriptive identifier and tags.", + "Update an existing stored procedure script by overwriting previous code.", + "Add a snippet of PL/pgSQL function code with metadata for later use." + ] + }, + "tags": [ + "database", + "code-upload", + "SQL", + "scripts", + "repository", + "database-management", + "code-storage" + ], + "examples": [ + { + "inputJson": "{\"codeContent\":\"CREATE TABLE users (id INT PRIMARY KEY, name VARCHAR(50));\",\"codeIdentifier\":\"create_users_table\",\"language\":\"SQL\",\"description\":\"Script to create users table.\",\"tags\":[\"migration\",\"table\"],\"overwrite\":false}", + "description": "Upload a SQL script to create a users table with identifier 'create_users_table'." + }, + { + "inputJson": "{\"codeContent\":\"ALTER TABLE users ADD COLUMN email VARCHAR(100);\",\"codeIdentifier\":\"alter_users_add_email\",\"language\":\"SQL\",\"description\":\"Add email column to users table.\",\"tags\":[\"migration\",\"alter-table\"],\"overwrite\":false}", + "description": "Upload a SQL migration script to add a new column to the users table." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "database-management.createDataset", + "description": "Creates a new dataset in a specified database by defining its schema and optionally importing initial data. Accepts the database connection details, dataset name, schema definition (fields with types), and optional initial records in JSON format. Outputs confirmation of creation with dataset metadata and record counts if data imported.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string or URI to access the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetName", + "type": "string", + "description": "The name of the dataset (table or collection) to create in the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "Defines the dataset schema as a mapping of field names to data types (e.g., {\"id\":\"integer\",\"name\":\"string\"}).", + "required": true, + "defaultValue": "" + }, + { + "name": "initialData", + "type": "array", + "description": "Optional array of records to insert initially into the created dataset, each record as a JSON object matching the schema.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite an existing dataset with the same name if it exists. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing status ('success' or 'failure'), dataset metadata (name, schema), and number of records inserted if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to programmatically create a new dataset (e.g., a table or collection) in a database, especially when schema definition and optional data import are required as part of database setup or ETL processes.", + "limitations": "Cannot migrate or transform existing datasets; does not support advanced database features like indexing, triggers, or partitioning. Assumes valid connection string and sufficient user permissions.", + "examples": [ + "Create a user profile table with fields for id, name, and email.", + "Initialize a sales transactions dataset with predefined schema and import initial transaction records.", + "Create a new logging collection in a NoSQL database without initial data." + ] + }, + "tags": [ + "database", + "dataset", + "create", + "schema", + "data-import" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"postgresql://user:pass@host:5432/mydb\",\"datasetName\":\"users\",\"schemaDefinition\":{\"id\":\"integer\",\"name\":\"string\",\"email\":\"string\"},\"initialData\":[{\"id\":1,\"name\":\"Alice\",\"email\":\"alice@example.com\"}],\"overwriteExisting\":false}", + "description": "Create a 'users' table with id, name, and email fields and insert one initial record." + }, + { + "inputJson": "{\"databaseConnectionString\":\"mongodb://user:pass@host:27017/mydb\",\"datasetName\":\"logs\",\"schemaDefinition\":{\"timestamp\":\"date\",\"level\":\"string\",\"message\":\"string\"},\"initialData\":[],\"overwriteExisting\":false}", + "description": "Create a 'logs' collection in MongoDB with timestamp, level, and message fields without initial data." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "devops.sendEmail", + "description": "Sends an email message using specified SMTP settings or default system configuration. Accepts parameters such as recipients, subject, message body (text or HTML), attachments, and optional SMTP server details. Processes these inputs to dispatch the email and returns a success status along with message ID or error details if sending fails.", + "category": "devops", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses to send carbon copies (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses for blind carbon copies (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Content of the email message, supports plain text or HTML depending on isHtml flag.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating whether the body content is HTML (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects each containing filename and base64-encoded file content (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "smtpConfig", + "type": "object", + "description": "Optional SMTP server configuration including host, port, username, and password. If omitted, default system SMTP settings will be used.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result of email sending operation, including success status, message ID for tracking, and error details if any." + }, + "aiAgent": { + "useCase": "Use this tool when an automated system needs to send emails as part of deployment notifications, alerting, or general communication from a DevOps pipeline. Especially useful for sending build status reports, error alerts, or deployment summaries programmatically with customization on recipients and content format.", + "limitations": "Cannot verify email address validity before sending. Does not support interactive email templates beyond raw HTML/text. Relies on network and SMTP server availability; no built-in retries or queueing.", + "examples": [ + "Send a build failure alert to devops team with error log attached.", + "Notify stakeholders with deployment completion summary in HTML format.", + "Send daily status report with multiple recipients and CCs." + ] + }, + "tags": [ + "email", + "devops", + "notification", + "smtp", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"team@example.com\"],\"subject\":\"Deployment Successful\",\"body\":\"The latest build has been deployed successfully.\",\"isHtml\":false}", + "description": "Send a plain text notification email to the team confirming deployment." + }, + { + "inputJson": "{\"to\":[\"ops@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Build Failure Alert\",\"body\":\"<h1>Build Failed</h1><p>Check logs for details.</p>\",\"isHtml\":true}", + "description": "Send an HTML formatted alert email with a CC to the manager." + }, + { + "inputJson": "{\"to\":[\"dev@example.com\"],\"subject\":\"Daily Report\",\"body\":\"See attached report.\",\"attachments\":[{\"filename\":\"report.csv\",\"content\":\"U29tZSxjb21tYSxkYXRhCg==\"}]}", + "description": "Send daily report with CSV attachment to development team." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "devops.analyzeReport", + "description": "Analyzes deployment or infrastructure automation reports in JSON or text format to extract key metrics, identify errors, and summarize outcomes. Processes build logs, deployment status, or CI/CD pipeline summaries and outputs structured analysis highlighting successes, failures, and performance indicators.", + "category": "devops", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The raw content of the report as a string, in JSON, text, or log format.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the report content (e.g., 'json', 'text', 'log'). Helps tailor parsing logic.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a high-level summary of the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractErrorsOnly", + "type": "boolean", + "description": "If true, output only error and failure details, skipping successes and metrics.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxEntries", + "type": "number", + "description": "Maximum number of entries or records to analyze; helps limit processing large reports.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An analysis result object containing overall success status, counts of successes and failures, list of identified errors with details, performance metrics if available, and an optional textual summary." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to understand, summarize, or extract important information from deployment or infrastructure reports produced by CI/CD pipelines or automation tools. It helps automate monitoring by converting raw logs and reports into actionable insights about system health and issues.", + "limitations": "Cannot execute reports or access external systems; relies solely on the input report content provided. May have limited effectiveness on highly unstructured or novel report formats not described by the 'reportFormat' parameter.", + "examples": [ + "Analyze a JSON deployment report and summarize errors and performance.", + "Extract error details from a CI build log in text format.", + "Summarize success metrics from an infrastructure automation report." + ] + }, + "tags": [ + "devops", + "analysis", + "report", + "deployment", + "ci-cd", + "automation", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"{\\\"status\\\":\\\"failure\\\", \\\"errors\\\":[{\\\"code\\\":\\\"DEPLOY_ERR_01\\\", \\\"message\\\":\\\"Timeout connecting to server\\\"}], \\\"metrics\\\":{\\\"duration\\\":360, \\\"stepsPassed\\\":4, \\\"stepsFailed\\\":1}}\",\"reportFormat\":\"json\",\"includeSummary\":\"true\",\"extractErrorsOnly\":\"false\",\"maxEntries\":\"1000\"}", + "description": "Analyze a JSON deployment report with one failure and metrics, including a summary" + }, + { + "inputJson": "{\"reportContent\":\"Build started at 10:00\\nStep 1: Success\\nStep 2: Failure - missing dependency\\nStep 3: Success\",\"reportFormat\":\"text\",\"includeSummary\":\"true\",\"extractErrorsOnly\":\"true\",\"maxEntries\":\"100\"}", + "description": "Parse a text build log focusing only on errors" + }, + { + "inputJson": "{\"reportContent\":\"{\\\"status\\\":\\\"success\\\", \\\"metrics\\\":{\\\"totalTime\\\":120, \\\"testsPassed\\\":50, \\\"testsFailed\\\":0}}\",\"reportFormat\":\"json\",\"includeSummary\":\"true\",\"extractErrorsOnly\":\"false\",\"maxEntries\":\"500\"}", + "description": "Analyze a successful JSON report showing test metrics" + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "backend-development.analyzeMetric", + "description": "Analyzes server-side application metrics by accepting raw metric data and configuration parameters to perform statistical evaluation, trend detection, and anomaly identification. Outputs a structured report summarizing insights such as averages, growth rates, and potential issues detected within the metric data set.", + "category": "backend-development", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The name of the metric to analyze (e.g., responseTime, errorRate).", + "required": true, + "defaultValue": "" + }, + { + "name": "metricData", + "type": "array", + "description": "An array of numerical metric values collected over time for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeStamps", + "type": "array", + "description": "Corresponding timestamps for each metric data point in ISO 8601 string format. Must be same length as metricData.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisWindow", + "type": "number", + "description": "The size of the rolling window in number of data points to compute trends and anomalies (e.g., 10).", + "required": false, + "defaultValue": "10" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable anomaly detection in the metric data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trendAnalysis", + "type": "boolean", + "description": "Flag to enable trend analysis over the metric data time series.", + "required": false, + "defaultValue": "true" + }, + { + "name": "anomalyThreshold", + "type": "number", + "description": "Sensitivity threshold for anomaly detection (e.g., number of standard deviations from mean).", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing statistical summaries like mean, median, standard deviation, trend direction and slope, and detected anomalies with their timestamps and values." + }, + "aiAgent": { + "useCase": "Use this tool when needing to gain insights into backend application performance or health by analyzing time-series metric data. It is ideal for detecting performance regressions, resource spikes, error rate changes, or other operational anomalies from raw metrics collected by monitoring systems.", + "limitations": "This tool cannot ingest unstructured logs or non-numeric data, nor can it predict future values beyond the analyzed data window. It assumes properly timestamped, continuous metric data and does not handle missing data imputation.", + "examples": [ + "Analyze the server error rate metric over the last 24 hours to detect any anomalous spikes.", + "Evaluate the response time metric trends for the past 100 requests to identify performance degradation.", + "Generate a statistical summary and anomaly report for CPU utilization metrics collected every minute." + ] + }, + "tags": [ + "backend", + "metrics", + "analysis", + "monitoring", + "performance", + "anomaly-detection", + "trend-analysis" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"responseTime\",\"metricData\":[120,115,130,140,150,145,160,170,180,190,185,175],\"timeStamps\":[\"2024-04-01T00:00:00Z\",\"2024-04-01T00:01:00Z\",\"2024-04-01T00:02:00Z\",\"2024-04-01T00:03:00Z\",\"2024-04-01T00:04:00Z\",\"2024-04-01T00:05:00Z\",\"2024-04-01T00:06:00Z\",\"2024-04-01T00:07:00Z\",\"2024-04-01T00:08:00Z\",\"2024-04-01T00:09:00Z\",\"2024-04-01T00:10:00Z\",\"2024-04-01T00:11:00Z\"},\"analysisWindow\":5,\"detectAnomalies\":true,\"trendAnalysis\":true,\"anomalyThreshold\":2}", + "description": "Analyzing response time over 12 minutes with anomaly detection enabled to identify any irregular spikes." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "backend-development.analyzeParagraph", + "description": "Analyzes a given paragraph of text to extract meaningful insights such as sentiment, keyword frequency, readability score, and identifies main topics. Accepts raw paragraph input and optional language specification. Outputs structured analysis data useful for content evaluation and enhancement.", + "category": "backend-development", + "parameters": [ + { + "name": "paragraphText", + "type": "string", + "description": "Raw paragraph text content to analyze for sentiment, keywords, and readability.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the paragraph text for accurate linguistic analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and include keyword frequency in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the paragraph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeReadability", + "type": "boolean", + "description": "Whether to calculate readability metrics such as Flesch reading ease.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopics", + "type": "boolean", + "description": "Whether to identify main topics/themes present in the paragraph content.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including sentiment score, keyword frequencies, readability scores, and identified main topics if requested." + }, + "aiAgent": { + "useCase": "This tool should be used when a developer or automated system needs to comprehend the quality and contents of textual paragraphs for backend content processing, automated moderation, summarization, or content quality monitoring. It helps to programmatically assess text blocks for sentiment, key terms, reading difficulty, and topical subjects, facilitating informed decisions and enriching content pipelines.", + "limitations": "The tool does not perform full document analysis, only single paragraphs. It cannot replace human-level semantic understanding or context outside the paragraph. Language support may be limited to common languages. It does not generate summaries or translations.", + "examples": [ + "Analyze the sentiment and keywords in this user feedback paragraph.", + "Evaluate readability and identify topics from the marketing copy paragraph.", + "Extract keywords and check sentiment for a customer support response paragraph." + ] + }, + "tags": [ + "analysis", + "text", + "sentiment", + "keywords", + "readability", + "content-processing", + "backend", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"paragraphText\":\"The quick brown fox jumps over the lazy dog. This sentence is often used as a test phrase.\",\"language\":\"en\",\"includeKeywords\":true,\"includeSentiment\":true,\"includeReadability\":true,\"includeTopics\":true}", + "description": "Analyze a simple English paragraph for keywords, sentiment, readability score, and topics." + }, + { + "inputJson": "{\"paragraphText\":\"客户服务反馈表明用户满意度较高,但仍有部分用户反映响应时间较长。\",\"language\":\"zh\",\"includeKeywords\":true,\"includeSentiment\":true,\"includeReadability\":false,\"includeTopics\":true}", + "description": "Analyze a Chinese language customer feedback paragraph for sentiment, keywords, and topics." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "backend-development.uploadReport", + "description": "Uploads a report document to a specified backend server endpoint. Accepts the report content as a string or file buffer, associated metadata, and authentication credentials. Processes and sends the report securely, returning the server response including status and any generated report ID.", + "category": "backend-development", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The content of the report, encoded as a string (e.g., JSON, XML, or plain text).", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the report content, e.g., 'json', 'xml', 'pdf', or 'txt'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "metadata", + "type": "object", + "description": "Key-value pairs with metadata about the report, such as title, author, date.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "endpointUrl", + "type": "string", + "description": "URL of the backend server API endpoint to which the report will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key for authorizing the upload request.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing report if one with the same ID exists (if applicable).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing success status, server response message, and uploaded report ID if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically upload or submit report documents (in various formats) to a backend server for storage, processing, or distribution. It handles authorization, format specification, and metadata attachment, making it suitable for automating report submission workflows.", + "limitations": "This tool does not perform report content validation or format conversion. It assumes the backend endpoint handles report parsing and storage. Network errors or authentication failures need separate handling.", + "examples": [ + "Upload a JSON report with metadata to the secure backend API.", + "Submit a PDF report file to the server with an auth token, allowing overwrite.", + "Send a plain text report without authentication to a test endpoint." + ] + }, + "tags": [ + "upload", + "backend", + "report", + "api", + "document", + "server", + "storage" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"{\\\"summary\\\":\\\"Monthly sales report\\\",\\\"data\\\":[100,150,200]}\",\"reportFormat\":\"json\",\"metadata\":{\"title\":\"Sales Report March\",\"author\":\"Alice\",\"date\":\"2024-05-01\"},\"endpointUrl\":\"https://api.example.com/reports/upload\",\"authToken\":\"abcdef123456\",\"overwriteExisting\":true}", + "description": "Upload a JSON formatted sales report with metadata to a backend API endpoint with authentication and allow overwriting." + }, + { + "inputJson": "{\"reportContent\":\"%PDF-1.4\\n...binary pdf content...\",\"reportFormat\":\"pdf\",\"metadata\":{\"title\":\"Q1 Financial Report\",\"author\":\"Bob\"},\"endpointUrl\":\"https://reports.example.com/api/upload\",\"authToken\":\"token123\",\"overwriteExisting\":false}", + "description": "Upload a PDF financial report to a backend endpoint with authentication without overwriting existing reports." + }, + { + "inputJson": "{\"reportContent\":\"Plain text summary of project status.\",\"reportFormat\":\"txt\",\"metadata\":{},\"endpointUrl\":\"http://localhost:5000/upload-report\",\"authToken\":\"\",\"overwriteExisting\":false}", + "description": "Upload a plain text report to a local backend endpoint without authentication or overwriting." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "backend-development.createEvent", + "description": "Creates a new analytics event definition that can be tracked by backend services. Accepts event name, description, property schema, and metadata. Validates inputs and outputs a confirmation with event ID and summary of event properties.", + "category": "backend-development", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The unique name identifier for the analytics event to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A human-readable description of what the event represents.", + "required": false, + "defaultValue": "" + }, + { + "name": "properties", + "type": "object", + "description": "Key-value pairs describing the event properties, where keys are property names and values are data types (e.g., 'string', 'number', 'boolean').", + "required": false, + "defaultValue": "" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Indicates whether the event is currently active for tracking or not.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of string tags to categorize or label the event.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the event ID, event name, and a summary of properties confirming creation success." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically define and register a new analytics event within a backend system for tracking user behavior or system actions. It enables automating event schema management based on user or system requirements.", + "limitations": "This tool does not send or record event data in real-time; it only defines event metadata and schema for analytics systems. It cannot update or delete existing events.", + "examples": [ + "Create a user signup event with properties for method and referral source.", + "Define a purchase event with properties for itemId, price, and currency.", + "Add an error event with properties capturing errorCode and errorMessage." + ] + }, + "tags": [ + "backend", + "analytics", + "event", + "create", + "tracking", + "schema", + "API" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"user_signup\",\"description\":\"Tracks when a user completes sign up.\",\"properties\":{\"method\":\"string\",\"referralSource\":\"string\"},\"isActive\":true,\"tags\":[\"user\",\"signup\"]}", + "description": "Create an active user signup event with method and referral source properties." + }, + { + "inputJson": "{\"eventName\":\"purchase\",\"description\":\"Event to track item purchases.\",\"properties\":{\"itemId\":\"string\",\"price\":\"number\",\"currency\":\"string\"},\"isActive\":true,\"tags\":[\"commerce\",\"transaction\"]}", + "description": "Define a purchase event with detailed properties for items." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "backend-development.createService", + "description": "Creates a backend service scaffold based on specified parameters such as service name, framework, programming language, and optional database integration. It processes input configuration to generate the initial server-side application files and structure, outputting a summary of created components and setup details.", + "category": "backend-development", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The name identifier for the backend service to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The server-side framework to use (e.g., Express, Fastify, Koa).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the service (e.g., JavaScript, TypeScript).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDatabase", + "type": "boolean", + "description": "Whether to set up database connectivity scaffold (true to include).", + "required": false, + "defaultValue": "false" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database to integrate, if includeDatabase is true (e.g., MongoDB, PostgreSQL).", + "required": false, + "defaultValue": "" + }, + { + "name": "useDocker", + "type": "boolean", + "description": "Whether to include Docker configuration files for containerization.", + "required": false, + "defaultValue": "false" + }, + { + "name": "initializeGit", + "type": "boolean", + "description": "If true, initializes a git repository in the service directory.", + "required": false, + "defaultValue": "false" + }, + { + "name": "servicePort", + "type": "number", + "description": "Port number on which the service will listen (default depends on framework).", + "required": false, + "defaultValue": "3000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary of created service including file list, configuration details, and setup status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a new backend service scaffold quickly with customizable options for framework, language, database integration, and containerization, enabling fast project setup or prototyping.", + "limitations": "This tool does not implement business logic, complete API routes, or production-ready optimizations; it only creates the initial scaffold and basic configuration files.", + "examples": [ + "Create a new Express service in TypeScript with MongoDB integration and Docker support.", + "Generate a simple JavaScript Fastify service without a database, listening on port 8080.", + "Set up a Koa backend service scaffold with PostgreSQL and initialize git repository." + ] + }, + "tags": [ + "backend", + "service", + "scaffold", + "nodejs", + "api", + "database", + "docker", + "git" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"user-service\",\"framework\":\"Express\",\"language\":\"TypeScript\",\"includeDatabase\":true,\"databaseType\":\"MongoDB\",\"useDocker\":true,\"initializeGit\":true,\"servicePort\":4000}", + "description": "Create a TypeScript-based Express service named 'user-service' including MongoDB integration, Docker configuration, git initialization, listening on port 4000." + }, + { + "inputJson": "{\"serviceName\":\"analytics-api\",\"framework\":\"Fastify\",\"language\":\"JavaScript\",\"includeDatabase\":false,\"useDocker\":false,\"initializeGit\":false,\"servicePort\":8080}", + "description": "Generate a minimal JavaScript Fastify backend service without database, Docker, or git setup, listening on port 8080." + }, + { + "inputJson": "{\"serviceName\":\"payment-gateway\",\"framework\":\"Koa\",\"language\":\"JavaScript\",\"includeDatabase\":true,\"databaseType\":\"PostgreSQL\",\"useDocker\":false,\"initializeGit\":true,\"servicePort\":5000}", + "description": "Set up a JavaScript Koa service named 'payment-gateway' with PostgreSQL database support and git repository initialization, listening on port 5000." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "automation-frameworks.createFunction", + "description": "Generates a reusable function snippet based on given specifications including name, parameters, return type, and body description. Accepts detailed input about the function's signature and purpose, processes this information to create a syntactically valid JavaScript function as output.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The name of the function to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "List of parameter names for the function.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "returnType", + "type": "string", + "description": "The expected return type of the function (informational).", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A concise description of what the function should do.", + "required": true, + "defaultValue": "" + }, + { + "name": "isAsync", + "type": "boolean", + "description": "Indicates whether the function should be marked as asynchronous.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the function output; currently supports 'javascript'.", + "required": false, + "defaultValue": "javascript" + } + ], + "returns": { + "type": "object", + "description": "Provides the generated function code snippet in the specified language and a summary of the function's signature." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to automate the creation of code functions within scripts or automation workflows, particularly to quickly generate boilerplate or tailored function code based on descriptive requirements. It helps to speed up automation script construction by providing ready-to-use function implementations or templates.", + "limitations": "Currently supports generating only JavaScript functions and does not guarantee functional correctness beyond syntax. Complex logic or external dependencies must be manually reviewed and integrated.", + "examples": [ + "Create a simple sum function with two parameters returning their sum.", + "Generate an asynchronous function that fetches data from an API.", + "Create a function with no parameters that returns a static message." + ] + }, + "tags": [ + "automation", + "function-generation", + "code-snippet", + "javascript", + "scripting", + "boilerplate" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"sum\",\"parameters\":[\"a\",\"b\"],\"returnType\":\"number\",\"description\":\"Returns the sum of two numbers.\",\"isAsync\":false,\"language\":\"javascript\"}", + "description": "Create a synchronous JavaScript function named 'sum' with two parameters returning their sum." + }, + { + "inputJson": "{\"functionName\":\"fetchUserData\",\"parameters\":[\"userId\"],\"returnType\":\"Promise<object>\",\"description\":\"Asynchronously retrieves user data from database by userId.\",\"isAsync\":true,\"language\":\"javascript\"}", + "description": "Create an asynchronous JavaScript function named 'fetchUserData' to get user data by userId." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "text-analysis.generateDocument", + "description": "Generates a coherent, structured text document based on an input topic, style, and optional content guidelines. Accepts text parameters defining the subject, target audience, tone, length, and key points. Produces a text document draft suitable for reports, articles, or briefs.", + "category": "text-analysis", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the document to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended readership or audience for the document (e.g., general public, experts).", + "required": false, + "defaultValue": "general public" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of writing (e.g., formal, conversational, persuasive).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the document in words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of key points or bullet items that must be included in the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a brief summary section at the start of the document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document text and metadata, including the complete text as a string, word count, and optional summary if requested." + }, + "aiAgent": { + "useCase": "Use this tool to automatically create readable, structured documents from high-level input parameters, such as when generating reports, articles, or briefs on demand. It helps in scenarios where a quick draft is needed based on a topic and style directives without manual writing.", + "limitations": "The generated text may lack deep factual accuracy or domain expertise and may require human review. It cannot provide real-time data or citations. Very complex or highly technical documents might need additional specialized processing.", + "examples": [ + "Generate a 1000-word formal report on climate change impacts for experts including specified key points.", + "Create a short persuasive article on healthy eating targeted at teenagers in a conversational tone.", + "Produce a brief summary and full document about remote work trends for a general audience." + ] + }, + "tags": [ + "text-generation", + "document-creation", + "NLP", + "report-writing", + "content-generation", + "automated-writing" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of renewable energy\",\"targetAudience\":\"general public\",\"tone\":\"informative\",\"length\":600,\"keyPoints\":[\"Reduction in carbon emissions\",\"Job creation potential\",\"Energy independence\"],\"includeSummary\":true}", + "description": "Generate an informative 600-word document on renewable energy benefits including three key points and summary." + }, + { + "inputJson": "{\"topic\":\"Quarterly financial report\",\"targetAudience\":\"financial analysts\",\"tone\":\"formal\",\"length\":1200,\"keyPoints\":[\"Revenue growth\",\"Expense analysis\",\"Forecast\"],\"includeSummary\":false}", + "description": "Create a 1200-word formal quarterly financial report targeting analysts without summary." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "agent-management.analyzeCustomer", + "description": "Analyzes customer data to generate actionable insights by processing structured customer profile information, interaction history, and purchase patterns. Produces a detailed report highlighting customer segmentation, engagement scoring, churn risk, and personalized recommendations.", + "category": "agent-management", + "parameters": [ + { + "name": "customerData", + "type": "object", + "description": "Structured object containing customer profile attributes, interaction logs, and transaction history to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail for the analysis; options include 'basic', 'detailed', or 'comprehensive'.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to generate actionable recommendations based on analysis results.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timePeriodMonths", + "type": "number", + "description": "The number of recent months of data to consider for behavior and trend analysis.", + "required": false, + "defaultValue": "12" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including customer segmentation, engagement scores, churn risk level, key insights, and personalized recommendations if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate customers based on profile data and interactions to support marketing strategies, customer retention efforts, or personalized service recommendations. It's ideal for creating targeted campaigns or identifying at-risk customers.", + "limitations": "This tool does not predict exact future customer actions or sales; it only provides probabilistic insights based on historical data. It requires well-structured input data and does not perform data cleaning.", + "examples": [ + "Analyze customer data to segment them into behavioral groups for targeted marketing.", + "Assess recent purchase and interaction history to identify customers at high risk of churn.", + "Generate personalized product recommendations based on customer engagement and transaction patterns." + ] + }, + "tags": [ + "analysis", + "customer", + "marketing", + "retention", + "segmentation", + "recommendations", + "business" + ], + "examples": [ + { + "inputJson": "{\"customerData\":{\"id\":\"1234\",\"profile\":{\"age\":35,\"location\":\"NY\",\"membership\":\"gold\"},\"interactions\":[{\"date\":\"2023-12-01\",\"channel\":\"email\",\"response\":true}],\"transactions\":[{\"date\":\"2024-01-15\",\"amount\":150.75,\"category\":\"electronics\"}]},\"analysisDepth\":\"detailed\",\"includeRecommendations\":true,\"timePeriodMonths\":6}", + "description": "Perform a detailed analysis of a customer's profile, recent 6 months of interactions and transactions, including recommendations." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "model-management.createReport", + "description": "Generates a comprehensive report summarizing the training, evaluation, and deployment status of an AI model. Accepts input including model metadata, training metrics, evaluation results, and deployment details, then produces a structured document report useful for stakeholders and record keeping.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to generate the report for.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTrainingMetrics", + "type": "boolean", + "description": "Whether to include detailed training metrics in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEvaluationResults", + "type": "boolean", + "description": "Whether to include evaluation and validation results in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDeploymentDetails", + "type": "boolean", + "description": "Whether to include current deployment status and endpoint info in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output format of the report, e.g., 'PDF', 'HTML', or 'Markdown'.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "customNotes", + "type": "string", + "description": "Optional additional observations or notes to include in the report.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report content in the specified format (e.g., base64-encoded PDF), metadata including creation timestamp and model ID." + }, + "aiAgent": { + "useCase": "Use this tool when a comprehensive, standardized document summarizing an AI model's lifecycle is needed for review, audit, or stakeholder communication. It consolidates various aspects like training progress, evaluation metrics, and deployment status into a single report to facilitate understanding and documentation.", + "limitations": "The tool does not generate real-time streaming reports and relies on input data availability; it cannot train or evaluate models itself.", + "examples": [ + "Generate a PDF report for model ID 'abc123' including all details.", + "Create an HTML format report for model 'xyz789' without deployment details.", + "Produce a Markdown report for model 'model456' with custom notes about recent updates." + ] + }, + "tags": [ + "reporting", + "model-management", + "documentation", + "training", + "evaluation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"includeTrainingMetrics\":true,\"includeEvaluationResults\":true,\"includeDeploymentDetails\":true,\"reportFormat\":\"PDF\",\"customNotes\":\"Reviewed on 2024-04-21.\"}", + "description": "Full PDF report including training, evaluation, deployment details, and a custom note." + }, + { + "inputJson": "{\"modelId\":\"xyz789\",\"includeTrainingMetrics\":false,\"includeEvaluationResults\":true,\"includeDeploymentDetails\":false,\"reportFormat\":\"HTML\",\"customNotes\":\"\"}", + "description": "HTML report for evaluation results only, excluding training metrics and deployment info." + }, + { + "inputJson": "{\"modelId\":\"model456\",\"includeTrainingMetrics\":true,\"includeEvaluationResults\":false,\"includeDeploymentDetails\":true,\"reportFormat\":\"Markdown\",\"customNotes\":\"Pending final evaluation metrics.\"}", + "description": "Markdown report including training metrics and deployment details, with a note about pending evaluation." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "etl-processes.createEmail", + "description": "This tool accepts structured input including recipients, subject, body content, and optional attachments or metadata. It processes the inputs to construct a properly formatted email message object suitable for sending or storing. The output is a standardized email object comprising all necessary fields for email transmission or archival.", + "category": "etl-processes", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "Array of recipient email address strings; must have at least one recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional array of email addresses to carbon copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional array of email addresses to blind carbon copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email; can be plain text or HTML formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating whether the body is HTML formatted (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects; each should include filename and content (base64 encoded or link).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "headers", + "type": "object", + "description": "Optional additional email headers as key-value pairs, e.g. Reply-To.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an Email object containing all structured fields ready for email transmission or processing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to assemble a complete, structured email from raw components before sending or saving. It is ideal for ETL scenarios involving email generation from parsed or transformed data, ensuring consistent and valid email formatting.", + "limitations": "This tool does not handle the actual sending of emails, encryption, or retrieval of inbox messages. It only creates an email data structure.", + "examples": [ + "Create an email with multiple recipients, subject, and HTML body from parsed form data.", + "Generate an email object including attachments and custom headers for use with another sending service.", + "Prepare an email draft with CC and BCC fields based on input contact lists." + ] + }, + "tags": [ + "ETL", + "email", + "create", + "communication", + "message", + "automation" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Meeting Reminder\",\"body\":\"<p>Don't forget our meeting at 10am.</p>\",\"isHtml\":true}", + "description": "Create a simple HTML email with one recipient and subject." + }, + { + "inputJson": "{\"to\":[\"team@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Project Update\",\"body\":\"The project is on track.\",\"isHtml\":false,\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"base64encodedcontent\"}]}", + "description": "Create a plain text email with CC and a PDF attachment." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "devops.analyzeDocument", + "description": "Analyzes infrastructure-as-code or deployment-related documents (e.g., Terraform, Kubernetes YAML, Dockerfiles) to identify syntax issues, potential misconfigurations, security risks, and best practice violations. Input is a document's content as a string; output is a structured report detailing findings for remediation.", + "category": "devops", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The full text content of the infrastructure or deployment document to analyze (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of infrastructure or deployment document (e.g., 'terraform', 'kubernetes', 'dockerfile'). Affects analysis rules. (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "checkSecurityRisks", + "type": "boolean", + "description": "Whether to analyze the document for known security risks and vulnerabilities. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeBestPractices", + "type": "boolean", + "description": "If true, the analysis includes recommendations based on best practices for the document type. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxFindings", + "type": "number", + "description": "Maximum number of issues/findings to return in the report. Defaults to 50.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report including syntax errors, warnings, security risk findings, best practice recommendations, each with line numbers and descriptions." + }, + "aiAgent": { + "useCase": "Use this tool to evaluate infrastructure as code or deployment configuration documents before applying changes to prevent syntax errors, security vulnerabilities, and configuration issues that could impact system reliability and security. Ideal for automating review in continuous integration pipelines or as part of pull request checks.", + "limitations": "Does not execute or simulate the actual deployment environment; analysis may not cover all edge cases or environment-specific issues. It does not fix issues automatically; it only reports findings for manual review.", + "examples": [ + "Analyze a Kubernetes deployment YAML to find security misconfigurations and syntax errors.", + "Review a Terraform configuration file for best practices and potential risks.", + "Check a Dockerfile for deprecated instructions or security concerns." + ] + }, + "tags": [ + "analysis", + "devops", + "infrastructure-as-code", + "security", + "configuration", + "continuous-integration", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"resource \\\"aws_instance\\\" \\\"web\\\" { ami = \\\"ami-123456\\\" instance_type = \\\"t2.micro\\\" }\",\"documentType\":\"terraform\",\"checkSecurityRisks\":true,\"includeBestPractices\":true,\"maxFindings\":10}", + "description": "Analyze a simple Terraform configuration for security risks and best practices." + }, + { + "inputJson": "{\"documentContent\":\"apiVersion: apps/v1\\nkind: Deployment\\nmetadata:\\n name: nginx-deployment\\nspec:\\n replicas: 3\\n selector:\\n matchLabels:\\n app: nginx\\n template:\\n metadata:\\n labels:\\n app: nginx\\n spec:\\n containers:\\n - name: nginx\\n image: nginx:1.14.2\\n ports:\\n - containerPort: 80\",\"documentType\":\"kubernetes\",\"checkSecurityRisks\":true,\"includeBestPractices\":true}", + "description": "Analyze a Kubernetes deployment YAML file for potential misconfigurations and security risks." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "devops.generateCode", + "description": "This tool generates DevOps-related code snippets and templates based on user specifications. It accepts parameters defining the target platform (e.g., Kubernetes, Docker, Terraform), the intended use case (e.g., deployment pipeline, infrastructure provisioning), and any specific configurations. The output is ready-to-use code tailored to given requirements, facilitating quick setup of CI/CD pipelines or infrastructure as code.", + "category": "devops", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "Target platform or tool for which to generate code, such as 'kubernetes', 'docker', 'terraform', or 'ansible'.", + "required": true, + "defaultValue": "" + }, + { + "name": "useCase", + "type": "string", + "description": "Specific use case or goal, e.g., 'deployment pipeline', 'infrastructure provisioning', or 'service configuration'.", + "required": true, + "defaultValue": "" + }, + { + "name": "configurations", + "type": "object", + "description": "Optional key-value pairs defining specific settings, e.g., image names, environment variables, or resource limits.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "language", + "type": "string", + "description": "Preferred programming or scripting language, like 'yaml', 'json', 'bash', or 'groovy'. Defaults to platform's standard.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code for clarity.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and metadata such as language and platform." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly create DevOps automation code such as deployment manifests, CI/CD pipeline scripts, or infrastructure templates by specifying platform and use case. It is useful for automating and standardizing infrastructure setups and deployment workflows.", + "limitations": "It cannot execute or validate the generated code; user must review and test outputs. It does not support proprietary or niche platforms not listed.", + "examples": [ + "Generate a Kubernetes deployment manifest yaml for a Node.js app with environment variables.", + "Create a Terraform script snippet for provisioning an AWS EC2 instance with specific tags.", + "Produce a Dockerfile for a Python Flask web app including comments." + ] + }, + "tags": [ + "devops", + "code generation", + "automation", + "infrastructure", + "CI/CD", + "deployment", + "templating" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"kubernetes\",\"useCase\":\"deployment pipeline\",\"configurations\":{\"appName\":\"my-app\",\"replicas\":3,\"containerImage\":\"myrepo/myapp:latest\"},\"language\":\"yaml\",\"includeComments\":true}", + "description": "Generate a Kubernetes deployment YAML manifest with 3 replicas for 'my-app' using the specified container image, including comments." + }, + { + "inputJson": "{\"platform\":\"terraform\",\"useCase\":\"infrastructure provisioning\",\"configurations\":{\"resourceType\":\"aws_instance\",\"instanceType\":\"t2.micro\",\"region\":\"us-west-2\"},\"language\":\"hcl\",\"includeComments\":false}", + "description": "Generate a Terraform configuration snippet to provision an AWS EC2 t2.micro instance in us-west-2 without comments." + }, + { + "inputJson": "{\"platform\":\"docker\",\"useCase\":\"service configuration\",\"configurations\":{\"baseImage\":\"python:3.9\",\"commands\":[\"pip install -r requirements.txt\",\"python app.py\"]},\"language\":\"dockerfile\",\"includeComments\":true}", + "description": "Generate a Dockerfile for a Python service including commands to install dependencies and start the app, with comments." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "devops.createDocument", + "description": "Creates a structured deployment document based on provided parameters including environment details, deployment steps, and metadata. Accepts input as structured data defining the deployment scenario, processes it to format and organize key information clearly, and outputs a well-formatted markdown or text document summarizing the deployment plan.", + "category": "devops", + "parameters": [ + { + "name": "environmentName", + "type": "string", + "description": "The name of the deployment environment (e.g., production, staging).", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentSteps", + "type": "array", + "description": "An ordered list of deployment steps, each step an object with 'title' and 'description'.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata such as version, author, and timestamp to include in the document header.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated document, e.g., 'markdown' or 'text'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeRollbackPlan", + "type": "boolean", + "description": "Flag to include a rollback plan section if true.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document content as a string and the format type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate deployment documentation for infrastructure or application releases. It structures the deployment flow, environment context, and metadata into a readable format suitable for team sharing or archival. Ideal for automating documentation as part of CI/CD pipelines.", + "limitations": "Does not execute deployments or validate deployment steps. It only formats and compiles input data into a document. Not suitable for complex multi-environment orchestration descriptions beyond provided data.", + "examples": [ + "Generate a deployment document for production environment with defined steps and rollback plan included.", + "Create a simple deployment doc for staging without extra metadata, output in plain text.", + "Produce deployment documentation including version and author metadata for audit purposes." + ] + }, + "tags": [ + "devops", + "deployment", + "documentation", + "automation", + "CI/CD", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"environmentName\":\"production\",\"deploymentSteps\":[{\"title\":\"Stop service\",\"description\":\"Gracefully stop the application service.\"},{\"title\":\"Deploy artifacts\",\"description\":\"Copy new artifacts to servers.\"},{\"title\":\"Start service\",\"description\":\"Start the application service and verify status.\"}],\"metadata\":{\"version\":\"1.2.3\",\"author\":\"Alice\",\"timestamp\":\"2024-06-01T12:00:00Z\"},\"outputFormat\":\"markdown\",\"includeRollbackPlan\":true}", + "description": "Generate a detailed markdown deployment document for the production environment including metadata and a rollback plan." + }, + { + "inputJson": "{\"environmentName\":\"staging\",\"deploymentSteps\":[{\"title\":\"Pull latest code\",\"description\":\"Fetch the latest code from repository.\"},{\"title\":\"Run tests\",\"description\":\"Execute integration tests.\"}],\"outputFormat\":\"text\",\"includeRollbackPlan\":false}", + "description": "Create a simple plain text deployment document for the staging environment without rollback plan or metadata." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "model-management.createCode", + "description": "Generates reproducible, ready-to-run code for AI model training and deployment based on provided model specifications, frameworks, and environment settings. Accepts details about model architecture, dataset info, target framework, and deployment preferences; outputs fully structured source code files and setup scripts.", + "category": "model-management", + "parameters": [ + { + "name": "modelArchitecture", + "type": "string", + "description": "Description or specification of the AI model architecture to generate code for (e.g., CNN, Transformer).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetFramework", + "type": "string", + "description": "The machine learning framework for the generated code (e.g., TensorFlow, PyTorch).", + "required": true, + "defaultValue": "" + }, + { + "name": "trainingDataset", + "type": "object", + "description": "Metadata about the training dataset including format, location, and preprocessing requirements.", + "required": false, + "defaultValue": "" + }, + { + "name": "deploymentTarget", + "type": "string", + "description": "Target environment for deployment, such as local machine, cloud, or edge device.", + "required": false, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Preferred programming language for the generated code (e.g., Python, R).", + "required": false, + "defaultValue": "Python" + }, + { + "name": "includeEvaluation", + "type": "boolean", + "description": "Whether to include code for model evaluation and validation after training.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDocumentation", + "type": "boolean", + "description": "Whether to generate inline code documentation and usage instructions.", + "required": false, + "defaultValue": "true" + }, + { + "name": "hyperparameters", + "type": "object", + "description": "Optional dictionary of hyperparameters to incorporate into the model training code.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing code files as strings with filenames, including source code, configuration, and scripts necessary for training and deploying the model." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly produce practical, runnable code templates for machine learning model development based on user-specified model architectures and deployment requirements. It helps bridge the gap between concept and executable code, facilitating rapid prototyping and standardized deployment.", + "limitations": "This tool cannot replace customized coding for highly specialized models or complex datasets that require non-standard processing. It does not execute the code or validate dataset correctness beyond metadata; manual review and environment setup are required.", + "examples": [ + "Generate Python code to train a CNN on my local GPU using PyTorch.", + "Create training and deployment scripts for a Transformer model with TensorFlow for cloud deployment.", + "Produce reproducible code including evaluation metrics for a classification model in Python." + ] + }, + "tags": [ + "model-management", + "code-generation", + "machine-learning", + "deployment", + "training", + "automation" + ], + "examples": [ + { + "inputJson": "{\"modelArchitecture\":\"Convolutional Neural Network\",\"targetFramework\":\"PyTorch\",\"trainingDataset\":{\"format\":\"ImageFolder\",\"path\":\"/data/images\"},\"deploymentTarget\":\"local\",\"programmingLanguage\":\"Python\",\"includeEvaluation\":true,\"includeDocumentation\":true}", + "description": "Generate Python code for training and deploying a CNN model on a local machine using PyTorch and image folder dataset." + }, + { + "inputJson": "{\"modelArchitecture\":\"Transformer\",\"targetFramework\":\"TensorFlow\",\"trainingDataset\":{\"format\":\"TFRecord\",\"path\":\"/data/tfrecords\"},\"deploymentTarget\":\"cloud\",\"programmingLanguage\":\"Python\",\"includeEvaluation\":false,\"includeDocumentation\":true}", + "description": "Create Python TensorFlow code for training a Transformer model with TFRecord dataset and cloud deployment target, excluding evaluation code." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "security-tools.generateDocument", + "description": "Generates security-related documents such as Incident Response Plans, Security Policies, or Risk Assessment Reports based on provided parameters and templates. Accepts documentType, customization details, and target compliance standards, then produces a tailored document in plain text or markdown format.", + "category": "security-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of security document to generate (e.g., Incident Response Plan, Security Policy, Risk Assessment)", + "required": true, + "defaultValue": "" + }, + { + "name": "organizationName", + "type": "string", + "description": "Name of the organization for which the document is being generated", + "required": true, + "defaultValue": "" + }, + { + "name": "customSections", + "type": "array", + "description": "Additional custom sections to include in the document, each as a string heading with content", + "required": false, + "defaultValue": "[]" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance frameworks or standards to align with (e.g., ISO27001, NIST)", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Output document format, supported values: plain text, markdown", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to include a table of contents in the generated document", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document's content as a string and metadata such as document type and format" + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate comprehensive security documents tailored to an organization's profile and compliance needs, saving time and ensuring coverage of best practices. It helps create plans, policies, or reports based on industry standards and customizable inputs.", + "limitations": "Cannot replace expert legal or compliance review; generated documents serve as templates or starting points and may need manual refinement.", + "examples": [ + "Generate an incident response plan for Acme Corp aligned with NIST standards in markdown.", + "Create a security policy document including GDPR compliance sections for a SaaS company.", + "Produce a risk assessment report in plain text format with custom sections for insider threats." + ] + }, + "tags": [ + "security", + "document", + "generation", + "compliance", + "policy", + "incident response", + "risk assessment" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"Incident Response Plan\",\"organizationName\":\"Acme Corp\",\"complianceStandards\":[\"NIST\"],\"format\":\"markdown\",\"includeTableOfContents\":true}", + "description": "Generate an incident response plan for Acme Corp with NIST compliance in markdown format." + }, + { + "inputJson": "{\"documentType\":\"Security Policy\",\"organizationName\":\"DeltaTech\",\"customSections\":[\"Data Retention Policy\",\"Access Control\"],\"format\":\"plain text\",\"includeTableOfContents\":false}", + "description": "Create a security policy for DeltaTech including custom sections in plain text without a TOC." + } + ], + "qualityScore": 0.92, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "model-management.renderDashboard", + "description": "Generates a customizable dashboard visualizing key metrics of AI models. Accepts model performance data, resource usage stats, and configuration metadata as inputs. Processes the data to create interactive charts and tables illustrating model accuracy, latency, throughput, and resource consumption. Outputs a web-compatible dashboard URL or HTML snippet for embedding.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to visualize data for.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of performance metrics to include, e.g., ['accuracy', 'latency', 'throughput'].", + "required": false, + "defaultValue": "[\"accuracy\",\"latency\",\"throughput\"]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Time window for metrics aggregation, with keys start and end as ISO 8601 strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeResourceUsage", + "type": "boolean", + "description": "Flag to include resource usage charts such as CPU, GPU, and memory.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dashboardTheme", + "type": "string", + "description": "Theme of the dashboard UI, e.g., 'light' or 'dark'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the dashboard output: 'url' to get a hosted link or 'html' to get embeddable HTML snippet.", + "required": false, + "defaultValue": "url" + } + ], + "returns": { + "type": "object", + "description": "Object containing the rendered dashboard content, including a URL or HTML snippet depending on outputFormat." + }, + "aiAgent": { + "useCase": "Ideal for TPMJS agents tasked with monitoring and reporting AI model performance in real time or over defined periods, facilitating decision-making on model tuning, retraining, or deployment. Use when an interactive visual summary of multiple models' metrics is needed.", + "limitations": "Does not provide advanced anomaly detection or automated alerts. Does not train or modify models. Requires accessible performance and resource usage data in compatible formats.", + "examples": [ + "Render a dashboard URL for model 'abc123' including accuracy and latency over the past month.", + "Generate an embeddable HTML snippet of resource usage and throughput metrics for a given model 'xyz789'.", + "Create a dark-themed dashboard focusing on model performance metrics for the last week." + ] + }, + "tags": [ + "model-management", + "visualization", + "dashboard", + "AI model monitoring", + "performance metrics" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model_001\",\"metrics\":[\"accuracy\",\"latency\"],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"includeResourceUsage\":true,\"dashboardTheme\":\"dark\",\"outputFormat\":\"url\"}", + "description": "Render a dark-themed dashboard URL showing accuracy, latency, and resource usage for May 2024 for model_001." + }, + { + "inputJson": "{\"modelId\":\"model_ABC\",\"metrics\":[\"throughput\"],\"includeResourceUsage\":false,\"dashboardTheme\":\"light\",\"outputFormat\":\"html\"}", + "description": "Generate an embeddable HTML snippet of throughput metric only with no resource usage for model_ABC in light theme." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "render", + "object": "Dashboard", + "context": null + } + }, + { + "name": "testing-automation.formatParagraph", + "description": "Formats a given paragraph of text for automated testing environments by applying consistent indentation, line width limits, and optional trimming of whitespace. It accepts raw paragraph text and formatting options, returning a cleanly formatted paragraph string that improves readability and standardizes test output.", + "category": "testing-automation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to indent each line in the paragraph.", + "required": false, + "defaultValue": "4" + }, + { + "name": "maxLineWidth", + "type": "number", + "description": "Maximum allowed characters per line before wrapping to the next line.", + "required": false, + "defaultValue": "80" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the input text before formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "preserveLineBreaks", + "type": "boolean", + "description": "Whether to preserve existing line breaks within the paragraph or reflow all text into continuous lines.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph string as 'formattedText'." + }, + "aiAgent": { + "useCase": "Use this tool during automated testing setups when produced text paragraphs need uniform formatting to facilitate comparison, assertions, or visual inspection. It is useful for standardizing outputs like logs, documentation snippets, or generated user messages before validation.", + "limitations": "Cannot interpret or modify embedded markup or complex structures within text; purely formats plain text paragraphs based on given stylistic options.", + "examples": [ + "Format a raw multiline paragraph to have uniform indentation of 2 spaces and line width of 50 characters.", + "Trim whitespace and format a paragraph with standard 4-space indentation and 80 character line width.", + "Preserve existing line breaks but add indentation to each line." + ] + }, + "tags": [ + "formatting", + "automation", + "text-processing", + "testing", + "paragraph", + "indentation", + "line-wrapping" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph that needs to be formatted properly so that it fits within specified line width limits and has consistent indentation.\",\"indentationSpaces\":2,\"maxLineWidth\":50,\"trimWhitespace\":true,\"preserveLineBreaks\":false}", + "description": "Format paragraph with 2-space indentation and 50 character max line width." + }, + { + "inputJson": "{\"text\":\" Sample text with extra whitespace around. \",\"indentationSpaces\":4,\"maxLineWidth\":80,\"trimWhitespace\":true,\"preserveLineBreaks\":false}", + "description": "Trim whitespace and format with default indentation and line width." + }, + { + "inputJson": "{\"text\":\"Line one.\\nLine two on new line.\",\"indentationSpaces\":4,\"maxLineWidth\":80,\"trimWhitespace\":false,\"preserveLineBreaks\":true}", + "description": "Preserve existing line breaks and indent each line with four spaces." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "frontend-development.draftArticle", + "description": "Creates a structured draft for a frontend development article based on provided topic, key points, and target audience. Accepts input keywords and content guidelines, processes to generate organized sections with headings and paragraphs, and outputs a JSON outline suitable for further editing or rendering in web interfaces.", + "category": "frontend-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or title of the article to draft.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of key points or subtopics to include in the article.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers, e.g., beginners, intermediate developers, or advanced users.", + "required": false, + "defaultValue": "" + }, + { + "name": "articleLength", + "type": "number", + "description": "Approximate desired length of the article in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeCodeExamples", + "type": "boolean", + "description": "Whether to include code snippets illustrating frontend development concepts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "writingStyle", + "type": "string", + "description": "Preferred style of writing, e.g., formal, conversational, tutorial-style.", + "required": false, + "defaultValue": "conversational" + } + ], + "returns": { + "type": "object", + "description": "An object containing the article draft including the title, introduction, sections with headings and paragraphs, and optionally code snippets." + }, + "aiAgent": { + "useCase": "Use this tool when generating initial drafts or outlines for frontend development articles, tutorials, or blog posts based on user topics and key points to accelerate content creation workflows. It is particularly useful for quickly structuring content before detailed writing or review.", + "limitations": "Cannot generate highly polished final text; output may require editing for style, accuracy, and technical correctness. Does not support multimedia content, only text and code snippets. Not suitable for non-technical or unrelated topics.", + "examples": [ + "Draft an article about React hooks focusing on useState and useEffect for beginner frontend developers.", + "Create an article outline about responsive design best practices including CSS Grid and media queries.", + "Generate a tutorial-style frontend article on performance optimization techniques with code examples." + ] + }, + "tags": [ + "frontend", + "article", + "draft", + "content-generation", + "documentation", + "tutorial", + "blog" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"React Hooks\",\"keyPoints\":[\"useState basics\",\"useEffect for side effects\",\"custom hooks introduction\"],\"targetAudience\":\"beginner frontend developers\",\"articleLength\":1200,\"includeCodeExamples\":true,\"writingStyle\":\"tutorial-style\"}", + "description": "Draft a tutorial-style frontend article on React Hooks focusing on key hooks and including code examples." + }, + { + "inputJson": "{\"topic\":\"Responsive Web Design\",\"keyPoints\":[\"media queries\",\"flexbox vs grid\",\"mobile first approach\"],\"targetAudience\":\"intermediate frontend developers\",\"articleLength\":900,\"includeCodeExamples\":false,\"writingStyle\":\"conversational\"}", + "description": "Create an article outline for responsive design focusing on CSS techniques without code snippets, targeting intermediate developers." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "draft", + "object": "Article", + "context": null + } + }, + { + "name": "infrastructure-management.buildVariable", + "description": "Creates and configures a new infrastructure variable used in deployment pipelines or configuration management. Accepts a variable name, type, optional default value and description, and builds a variable entity that can be injected into infrastructure as code scripts or cloud environment setups. Outputs the structured variable definition ready for integration.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique name identifier for the infrastructure variable to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable (e.g., string, number, boolean, list, map).", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Optional default value assigned to the variable if none is provided at runtime.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Human-readable description explaining the purpose of the variable.", + "required": false, + "defaultValue": "" + }, + { + "name": "isSensitive", + "type": "boolean", + "description": "Flag indicating whether the variable contains sensitive data that should be encrypted or masked.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed variable, including its name, type, default value, description, and sensitivity flag." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically define reusable variables for cloud infrastructure or configuration management scripts, enabling parameterization and dynamic adjustment of deployment artifacts. Ideal for generating variables that can be referenced in IaC templates or pipeline variables.", + "limitations": "This tool only creates the variable definition and does not deploy, validate, or bind the variable within infrastructure pipelines or runtime environments.", + "examples": [ + "Create a string variable named 'region' with default 'us-west-1' for deployment scripts.", + "Define a sensitive variable called 'dbPassword' with no default and a descriptive note.", + "Build a list type variable named 'availabilityZones' with a description for use in autoscaling groups." + ] + }, + "tags": [ + "infrastructure", + "variable", + "configuration", + "deployment", + "infrastructure-as-code", + "parameterization" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"region\",\"variableType\":\"string\",\"defaultValue\":\"us-west-1\",\"description\":\"AWS deployment region\",\"isSensitive\":false}", + "description": "Create a string variable for cloud region with a default value." + }, + { + "inputJson": "{\"variableName\":\"dbPassword\",\"variableType\":\"string\",\"defaultValue\":\"\",\"description\":\"Database password for production environment\",\"isSensitive\":true}", + "description": "Define a sensitive password variable without a default value." + }, + { + "inputJson": "{\"variableName\":\"availabilityZones\",\"variableType\":\"list\",\"defaultValue\":\"[\\\"us-west-1a\\\", \\\"us-west-1b\\\"]\",\"description\":\"List of availability zones to deploy instances\",\"isSensitive\":false}", + "description": "Create a list variable specifying availability zones." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeReference", + "description": "Analyzes reference documents or code references provided as input to extract key metadata, dependencies, and potential automation points. Accepts textual or structured references, performs semantic analysis, and outputs a structured summary facilitating workflow automation integration.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "referenceContent", + "type": "string", + "description": "The content of the reference document or code to analyze, provided as plain text or code snippet.", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceType", + "type": "string", + "description": "Type of reference content, e.g., 'document', 'code', 'API'. Helps to tailor the analysis process.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Flag indicating whether to analyze and list external dependencies or related references found in the input.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length in characters for the summary output to constrain verbosity.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "Language of the reference content (e.g., 'en', 'es'). Affects parsing and semantic interpretation.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing extracted metadata, identified dependencies, automation potentials, and a concise summary of the reference content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand and extract actionable insights from technical references, including documents, code snippets, or API descriptions, in order to automate workflows, identify integration points, or generate summaries for developers or automation planners. It helps transition from raw references to structured knowledge necessary for automation framework setup.", + "limitations": "The tool may not fully interpret highly specialized or proprietary reference content outside common programming or documentation formats. It does not execute or validate referenced code, only analyzes static content.", + "examples": [ + "Analyze a technical API specification document to extract endpoints and metadata for automation.", + "Extract dependencies and key functions from a code snippet for workflow integration.", + "Summarize a reference manual section to identify potential automation scenarios." + ] + }, + "tags": [ + "automation", + "reference analysis", + "workflow", + "metadata extraction", + "code analysis", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"referenceContent\":\"function fetchData(url) { return fetch(url).then(response => response.json()); }\",\"referenceType\":\"code\",\"includeDependencies\":true}", + "description": "Analyzing a JavaScript code snippet to extract function details and external fetch call dependency." + }, + { + "inputJson": "{\"referenceContent\":\"This API allows users to create, read, update, and delete resources via RESTful endpoints.\",\"referenceType\":\"document\",\"maxSummaryLength\":300}", + "description": "Analyzing an API description document to generate a concise summary of capabilities." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "automation-frameworks.composeSentence", + "description": "This tool generates a coherent English sentence based on provided components such as subject, verb, object, and optional modifiers. It accepts individual parts of a sentence and composes them into a grammatically correct, natural language sentence as output.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject of the sentence, typically a noun or noun phrase (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "verb", + "type": "string", + "description": "The verb or action in the sentence (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "object", + "type": "string", + "description": "The object of the verb, if applicable (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "modifiers", + "type": "array", + "description": "Optional array of adverbs or phrases that modify the verb or entire sentence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tense", + "type": "string", + "description": "Verb tense to use, e.g., 'present', 'past', or 'future'. Defaults to 'present'.", + "required": false, + "defaultValue": "present" + }, + { + "name": "isNegative", + "type": "boolean", + "description": "Whether to negate the sentence (optional).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed natural language sentence as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to programmatically generate simple, grammatically correct English sentences from discrete linguistic components, such as in automation workflows that generate reports, notifications, or examples. It is especially useful when precise control over sentence structure is desired from known parts.", + "limitations": "Cannot generate complex or compound sentences automatically. Limited to English. Does not paraphrase or infer missing elements beyond inputs provided. Not designed for creative or idiomatic sentence generation beyond basic composition.", + "examples": [ + "Compose a sentence with subject 'The cat', verb 'chase', object 'the mouse', and modifier 'quickly'.", + "Generate a negative past tense sentence with subject 'She', verb 'finish', and object 'the report'.", + "Create a simple future tense sentence with subject 'We' and verb 'start' without object." + ] + }, + "tags": [ + "automation", + "sentence-generation", + "natural-language", + "text-composition", + "language-processing" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"The cat\",\"verb\":\"chase\",\"object\":\"the mouse\",\"modifiers\":[\"quickly\"],\"tense\":\"present\",\"isNegative\":false}", + "description": "Compose a present tense affirmative sentence with subject, verb, object and adverb modifier." + }, + { + "inputJson": "{\"subject\":\"She\",\"verb\":\"finish\",\"object\":\"the report\",\"modifiers\":[],\"tense\":\"past\",\"isNegative\":true}", + "description": "Compose a past tense negative sentence with subject and object, no modifiers." + }, + { + "inputJson": "{\"subject\":\"We\",\"verb\":\"start\",\"object\":\"\",\"modifiers\":[],\"tense\":\"future\",\"isNegative\":false}", + "description": "Compose a future tense affirmative sentence with subject and verb only." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "statistics-tools.generateText", + "description": "Generates a textual statistical summary report based on provided numerical data and optional metadata. Accepts an array of numbers and parameters specifying the type of summary (e.g., descriptive, inferential), then performs relevant statistical calculations to produce a natural language summary highlighting key metrics such as mean, median, variance, distribution insights, and confidence intervals.", + "category": "statistics-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of numerical values representing the dataset to analyze and summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryType", + "type": "string", + "description": "Specifies the type of statistical summary to generate. Supported values include 'descriptive' for basic summary stats, 'inferential' for hypothesis and confidence intervals.", + "required": false, + "defaultValue": "descriptive" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (between 0 and 1) used when generating inferential statistics like confidence intervals.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "includeVisualization", + "type": "boolean", + "description": "If true, generates textual descriptions referencing potential visualizations (e.g., histogram shape) even though no actual images are output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code to format numbers and text appropriately in the generated summary (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'summaryText' string that provides a coherent, natural language statistical report derived from the input data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw numeric datasets into understandable, human-readable statistical summaries, aiding quick insight extraction without manual calculation. Perfect for automated reporting, data exploration, or generating explanations in natural language for stakeholders unfamiliar with statistical jargon.", + "limitations": "The tool cannot generate actual graphical visualizations, perform complex multivariate analysis, or replace specialized statistical software for deep inferential modeling. It summarizes univariate data only, with limited inferential options.", + "examples": [ + "Generate a descriptive summary for dataset [5, 7, 8, 9, 10, 10, 12].", + "Provide an inferential summary with 99% confidence for dataset [100, 102, 98, 97, 105].", + "Create a descriptive text summary explaining distribution shape including visualization suggestions for dataset [1,2,2,3,3,3,4,4,5]." + ] + }, + "tags": [ + "statistics", + "summary", + "reporting", + "data-analysis", + "text-generation", + "descriptive-statistics", + "inferential-statistics" + ], + "examples": [ + { + "inputJson": "{\"data\": [5, 7, 8, 9, 10, 10, 12], \"summaryType\": \"descriptive\"}", + "description": "Generate a descriptive statistical summary for a small dataset." + }, + { + "inputJson": "{\"data\": [100, 102, 98, 97, 105], \"summaryType\": \"inferential\", \"confidenceLevel\": 0.99}", + "description": "Generate an inferential summary with 99% confidence level for normally distributed data." + }, + { + "inputJson": "{\"data\": [1, 2, 2, 3, 3, 3, 4, 4, 5], \"summaryType\": \"descriptive\", \"includeVisualization\": true}", + "description": "Generate a descriptive summary highlighting central tendency, spread and distribution shape with visualization hints." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "api-integration.formatDataset", + "description": "Formats raw datasets into a specified structured format for seamless API integration and further processing. Accepts input data as JSON or CSV strings and transforms it based on requested output format, field mappings, and optional data transformations such as filtering or sorting. Produces formatted dataset as JSON or CSV string output ready for downstream use.", + "category": "api-integration", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw input dataset to format, provided as a JSON array string or CSV string.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data, either 'json' or 'csv'.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the dataset, options are 'json' or 'csv'.", + "required": true, + "defaultValue": "" + }, + { + "name": "fieldMapping", + "type": "object", + "description": "Mapping of input field names to output field names to rename or reorder fields.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "filters", + "type": "array", + "description": "Array of filter conditions to apply on dataset. Each filter is an object with keys: field, operator, value.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field name to sort the output dataset by.", + "required": false, + "defaultValue": "" + }, + { + "name": "sortDescending", + "type": "boolean", + "description": "If true, sorts the output dataset in descending order.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted dataset as a string under 'formattedData' and the format type under 'format'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert a raw dataset from one common format (JSON or CSV) to another, optionally modifying field names, filtering records, or sorting, to prepare data for API calls, analysis, or storage. It standardizes datasets to meet target API or system requirements.", + "limitations": "Cannot parse or format complex nested JSON structures beyond flat arrays of objects. Filters support only basic operators and single condition per filter object. Does not validate data types beyond basic structural correctness.", + "examples": [ + "Format a CSV dataset to JSON with renamed fields and filtered rows.", + "Convert a JSON dataset to CSV sorted by a specified field.", + "Rename fields in a JSON dataset without changing format." + ] + }, + "tags": [ + "api", + "dataset", + "formatting", + "transformation", + "json", + "csv", + "data-processing" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30},{\\\"name\\\":\\\"Bob\\\",\\\"age\\\":25}]\",\"inputFormat\":\"json\",\"outputFormat\":\"csv\",\"fieldMapping\":{\"name\":\"full_name\"},\"filters\":[{\"field\":\"age\",\"operator\":\">=\",\"value\":26}],\"sortBy\":\"full_name\",\"sortDescending\":false}", + "description": "Convert JSON dataset to CSV, rename 'name' to 'full_name', filter to include ages >= 26, and sort by 'full_name' ascending." + }, + { + "inputJson": "{\"inputData\":\"name,score\\nJohn,88\\nDoe,92\\nJane,85\",\"inputFormat\":\"csv\",\"outputFormat\":\"json\",\"fieldMapping\":{},\"filters\":[],\"sortBy\":\"score\",\"sortDescending\":true}", + "description": "Convert CSV to JSON and sort by 'score' in descending order without renaming or filtering." + }, + { + "inputJson": "{\"inputData\":\"[{\\\"product\\\":\\\"Book\\\",\\\"price\\\":15},{\\\"product\\\":\\\"Pen\\\",\\\"price\\\":7}]\",\"inputFormat\":\"json\",\"outputFormat\":\"json\",\"fieldMapping\":{\"product\":\"item_name\"},\"filters\":[],\"sortBy\":\"\",\"sortDescending\":false}", + "description": "Rename field 'product' to 'item_name' in JSON dataset without changing format or applying filters." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "api-integration.createKPI", + "description": "Creates a Key Performance Indicator (KPI) by integrating data from one or multiple APIs. It accepts configuration details including data sources, metric definitions, filters, aggregation methods, and target thresholds, then outputs a structured KPI object ready for monitoring or reporting systems.", + "category": "api-integration", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The unique name for the KPI to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description of what this KPI measures or represents.", + "required": false, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "An array of objects specifying the API endpoints and authentication info to fetch raw data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricDefinition", + "type": "object", + "description": "Defines how to calculate the metric including fields to aggregate, aggregation method (sum, avg, count, etc.), and any transformations.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to apply on the incoming data to refine or segment the KPI measurement.", + "required": false, + "defaultValue": "" + }, + { + "name": "thresholds", + "type": "object", + "description": "Key value pairs defining warning or critical thresholds for KPI alerts.", + "required": false, + "defaultValue": "" + }, + { + "name": "refreshIntervalMinutes", + "type": "number", + "description": "How often (in minutes) the KPI should be updated by fetching fresh data from the APIs.", + "required": false, + "defaultValue": "60" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the KPI output object, e.g., JSON or XML.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured KPI object containing the name, description, computed metric settings, data source info, thresholds, and refresh configuration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define a KPI that aggregates and monitors metrics from multiple external APIs or data sources. It is suitable for automating KPI creation for dashboards or alerting systems where the KPI depends on dynamic API-provided data.", + "limitations": "This tool does not execute the scheduled refresh or real-time data fetching. It only creates the KPI configuration. It also assumes the APIs are reachable and returns data in expected formats without validation or normalization beyond provided definitions.", + "examples": [ + "Create a KPI for average daily sales volume using data from ecommerce and payment gateway APIs, refreshing hourly.", + "Define a KPI to monitor system uptime percentage aggregated from multiple infrastructure monitoring APIs with alert thresholds.", + "Generate a KPI that counts the number of new user signups from a social media API filtered by country." + ] + }, + "tags": [ + "api-integration", + "analytics", + "kpi", + "metrics", + "monitoring", + "dashboard", + "configuration", + "data-aggregation" + ], + "examples": [ + { + "inputJson": "{\n \"kpiName\": \"DailySalesVolume\",\n \"description\": \"Average sales volume per day from ecommerce and payment APIs.\",\n \"dataSources\": [\n {\"apiEndpoint\": \"https://api.ecommerce.com/orders\", \"authToken\": \"abc123\"},\n {\"apiEndpoint\": \"https://api.payment.com/transactions\", \"authToken\": \"def456\"}\n ],\n \"metricDefinition\": {\n \"fields\": [\"orderAmount\", \"transactionAmount\"],\n \"aggregation\": \"sum\",\n \"timeWindow\": \"24h\"\n },\n \"filters\": {\"status\": \"completed\"},\n \"thresholds\": {\"warning\": 10000, \"critical\": 5000},\n \"refreshIntervalMinutes\": 60,\n \"outputFormat\": \"JSON\"\n}", + "description": "Defines a KPI to track total sales amount daily aggregated from two different APIs with alert thresholds." + }, + { + "inputJson": "{\n \"kpiName\": \"SystemUptime\",\n \"description\": \"Percentage uptime of critical infrastructure systems.\",\n \"dataSources\": [\n {\"apiEndpoint\": \"https://monitoring.example.com/uptime\", \"authToken\": \"token123\"}\n ],\n \"metricDefinition\": {\n \"fields\": [\"uptimePercentage\"],\n \"aggregation\": \"avg\",\n \"timeWindow\": \"1h\"\n },\n \"refreshIntervalMinutes\": 15\n}", + "description": "KPI measuring average system uptime reported hourly by a monitoring API." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "embedding-generation.analyzeLead", + "description": "This tool accepts detailed textual descriptions or profiles of potential business leads and generates semantic embeddings that capture key attributes such as industry, company size, and expressed interests. These embeddings can then be used for lead classification, scoring, or matching in CRM and sales automation systems.", + "category": "embedding-generation", + "parameters": [ + { + "name": "leadText", + "type": "string", + "description": "The raw textual information describing the lead, including company background, contact details, interests, and other relevant details.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input text to optimize embedding generation for linguistic nuances (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The identifier for the embedding model to use, allowing selection among different pretrained models for domain specificity or size.", + "required": false, + "defaultValue": "lead-embedding-v1" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include extracted metadata tags along with the embedding vector in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the embedding vector as an array of numbers representing the lead profile, and optionally extracted metadata tags summarizing lead attributes." + }, + "aiAgent": { + "useCase": "Use this tool when processing unstructured lead data to convert descriptive information into fixed-size semantic embeddings for downstream tasks like lead scoring, clustering, or similarity search. Ideal when integrating with CRMs or sales tools that require vector representations of lead information.", + "limitations": "This tool does not validate or enrich lead data; it focuses solely on semantic embedding generation and basic metadata extraction. It is not a replacement for data cleansing or lead qualification services.", + "examples": [ + "Generate an embedding for a new lead profile with company details and expressed product interest.", + "Analyze lead descriptions to create vectors for segmentation and targeting.", + "Convert multiple leads' textual data into embeddings for similarity-based recommendations." + ] + }, + "tags": [ + "embedding", + "lead-analysis", + "crm", + "sales", + "vector-representation", + "semantic-analysis" + ], + "examples": [ + { + "inputJson": "{\"leadText\":\"Startup in renewable energy sector, 50 employees, interested in cloud-based energy management solutions.\",\"language\":\"en\",\"includeMetadata\":true}", + "description": "Generate an embedding and metadata for a startup lead description with industry and interest details." + }, + { + "inputJson": "{\"leadText\":\"Global manufacturing corporation, 10000+ employees, focused on supply chain optimization.\",\"embeddingModel\":\"lead-embedding-v2\"}", + "description": "Create a semantic vector for a large manufacturing enterprise lead using a specified embedding model." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "messaging.downloadReport", + "description": "Downloads a detailed report of chat or messaging activity within a specified channel or conversation. Accepts parameters defining the conversation ID, date range, report format, and optional filters like user or message type, then retrieves and compiles the report. Outputs a downloadable file link or direct file content in the chosen format.", + "category": "messaging", + "parameters": [ + { + "name": "conversationId", + "type": "string", + "description": "Unique identifier of the chat or messaging conversation to generate the report from.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the report period in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the report period in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired report file format, e.g., 'pdf', 'csv', or 'xlsx'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "filterUsers", + "type": "array", + "description": "Optional list of user IDs to include in the report. If empty, include all users.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "filterMessageTypes", + "type": "array", + "description": "Optional list of message types to include, such as 'text', 'image', 'file'.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Provides a downloadable report file link and metadata, including file name, format, size, and a direct content stream if supported." + }, + "aiAgent": { + "useCase": "Use this tool when needing to retrieve historical messaging activity reports for analysis, auditing, or record-keeping within specific conversations or channels. It helps automate report generation on demand for date ranges, users, or message types.", + "limitations": "Cannot generate reports for deleted messages or conversations without access privileges. Does not support live streaming reports. Format options limited to common document types.", + "examples": [ + "Download a PDF report of conversation 'abc123' for last month.", + "Get an Excel report including only text messages from user 'user789' within conversation 'xyz456'.", + "Retrieve a CSV report for conversation 'chat001' including images and files between two dates." + ] + }, + "tags": [ + "messaging", + "reporting", + "download", + "chat", + "analytics", + "activity" + ], + "examples": [ + { + "inputJson": "{\"conversationId\":\"conv123\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\",\"reportFormat\":\"pdf\"}", + "description": "Download a PDF report of all messages in conversation 'conv123' for May 2024." + }, + { + "inputJson": "{\"conversationId\":\"conv123\",\"filterUsers\":[\"userA\",\"userB\"],\"reportFormat\":\"csv\"}", + "description": "Get a CSV report filtered to messages from users 'userA' and 'userB' in conversation 'conv123'." + }, + { + "inputJson": "{\"conversationId\":\"conv789\",\"startDate\":\"2024-06-01\",\"endDate\":\"2024-06-15\",\"filterMessageTypes\":[\"text\",\"file\"]}", + "description": "Generate a report for text and file messages in conversation 'conv789' for the first half of June 2024." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "messaging.createLead", + "description": "Creates a new business lead record from messaging interaction data. Accepts contact details and lead source information, processes validation and enrichment of contact data, and returns a unique lead ID with lead status and assigned owner info. Enables integration of messaging interactions into CRM lead creation workflows.", + "category": "messaging", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "Lead's first name", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "Lead's last name", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Lead's email address", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Lead's phone number", + "required": false, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Source channel of the lead, e.g., messaging platform or campaign identifier", + "required": false, + "defaultValue": "messaging" + }, + { + "name": "interestedProduct", + "type": "string", + "description": "Product or service the lead is interested in, if known", + "required": false, + "defaultValue": "" + }, + { + "name": "assignedTo", + "type": "string", + "description": "User ID of sales personnel to assign this lead to", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags or labels to categorize the lead", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Object containing the created lead's unique ID, status, assigned owner, and confirmation message" + }, + "aiAgent": { + "useCase": "Use this tool when ingesting new potential customer data from real-time messaging channels to automatically generate CRM lead records ensuring timely follow-up and tracking. Ideal when integrating chat or SMS interaction data with sales lead management systems.", + "limitations": "Does not perform complex lead qualification or scoring; relies on supplied data accuracy. Does not update existing leads, only creates new entries.", + "examples": [ + "Create a new lead from a chat interaction with first name, last name, and email.", + "Add a lead with source channel SMS and assign to sales user ID 12345.", + "Generate lead with an interested product tag for targeted follow-up campaign." + ] + }, + "tags": [ + "messaging", + "lead generation", + "CRM integration", + "sales", + "real-time", + "contact management" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"John\",\"lastName\":\"Doe\",\"email\":\"john.doe@example.com\",\"source\":\"livechat\"}", + "description": "Basic lead creation from a live chat interaction with minimal required fields." + }, + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Smith\",\"email\":\"jane.smith@example.com\",\"phoneNumber\":\"+1234567890\",\"source\":\"sms\",\"interestedProduct\":\"ProductA\",\"assignedTo\":\"user_789\",\"tags\":[\"high-priority\",\"new\"]}", + "description": "Detailed lead creation with phone, product interest, assignment, and tags from an SMS source." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "infrastructure-management.uploadImage", + "description": "Uploads an image file such as a container image, VM snapshot, or infrastructure diagram to a specified cloud or on-premises infrastructure repository. Accepts image data or file path and target repository details; performs validation and transfer, and returns upload status and metadata.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "imageFilePath", + "type": "string", + "description": "Local filesystem path or URL to the image file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryType", + "type": "string", + "description": "Type of target repository (e.g., 'containerRegistry', 'vmImageStore', 'diagramRepo').", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryEndpoint", + "type": "string", + "description": "URL or network address of the target repository where image will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or credentials for accessing the target repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageTags", + "type": "array", + "description": "Optional tags or labels to annotate the uploaded image for identification and versioning.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an image if one with the same name already exists in the repository.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status ('success' or 'failure'), message details, image identifier, and repository URL where the image is stored." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to store infrastructure-related images, such as container images for deployment pipelines, VM images for virtualization management, or infrastructure diagrams into a managed repository as part of infrastructure automation workflows.", + "limitations": "This tool does not convert or modify image contents; it only uploads existing images. Network connectivity and repository accessibility must be ensured separately. It cannot perform complex repository management beyond upload and overwrite.", + "examples": [ + "Upload a Docker container image tarball to a container registry endpoint.", + "Store a VM snapshot image to a private cloud VM image store with version tags.", + "Upload an infrastructure network diagram image file to a diagram repository with access token authentication." + ] + }, + "tags": [ + "infrastructure", + "upload", + "image", + "repository", + "cloud", + "vm", + "container", + "diagram" + ], + "examples": [ + { + "inputJson": "{\"imageFilePath\":\"/tmp/myapp-container.tar\",\"repositoryType\":\"containerRegistry\",\"repositoryEndpoint\":\"https://registry.example.com/v2\",\"authToken\":\"eyJhbGci...\",\"imageTags\":[\"v1.2.3\",\"stable\"],\"overwriteExisting\":true}", + "description": "Upload a Docker container image tarball to a container registry with tags and overwrite enabled." + }, + { + "inputJson": "{\"imageFilePath\":\"/images/vm-snapshot.qcow2\",\"repositoryType\":\"vmImageStore\",\"repositoryEndpoint\":\"https://vmrepo.corp.local/images\",\"authToken\":\"token1234\",\"imageTags\":[\"release-2024Q2\"],\"overwriteExisting\":false}", + "description": "Upload a VM snapshot image to an internal VM image store without overwriting existing images." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "compliance-management.sendMessage", + "description": "Sends compliance-related messages to specified recipients within an organization or external contacts, ensuring message content conforms to regulatory standards. Accepts recipient details, message content, compliance tags, and urgency level; sends the message via email or internal messaging systems and returns delivery status and audit log reference.", + "category": "compliance-management", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses or user IDs to whom the message will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageSubject", + "type": "string", + "description": "Subject line of the compliance message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content body of the compliance message, which should follow regulatory guidelines.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceTags", + "type": "array", + "description": "Array of strings representing compliance categories or regulatory references associated with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sendAsEmail", + "type": "boolean", + "description": "Flag to specify if the message should be sent via email (true) or internal messaging system (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority level of the message indicating urgency; valid values are 'low', 'normal', and 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "attachmentUrls", + "type": "array", + "description": "List of URLs pointing to attachments relevant to the compliance message, if any.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the sending status of the message, a unique message ID for audit tracking, and any errors encountered during the sending process." + }, + "aiAgent": { + "useCase": "Use this tool whenever sending compliance-related messages that need to be tracked for regulatory adherence, such as notifications about policy updates, mandatory training, or audit reminders. Particularly helpful to automate message dispatch ensuring all required recipients are informed and the communication is logged for compliance auditing.", + "limitations": "This tool does not validate the actual regulatory content accuracy beyond tagging compliance categories and assumes the message content is pre-checked. It does not handle message receipt confirmation beyond basic delivery status.", + "examples": [ + "Send a compliance update email to all finance department employees about new anti-money laundering policies.", + "Notify contract managers via internal messaging about upcoming document submission deadlines with high priority.", + "Dispatch audit schedule notifications with attachments to compliance officers and legal advisors via email." + ] + }, + "tags": [ + "compliance", + "messaging", + "notification", + "regulatory", + "communication", + "audit", + "email", + "internalMessaging" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"finance@company.com\",\"audit@company.com\"],\"messageSubject\":\"New Anti-Money Laundering Policy Update\",\"messageBody\":\"Please review the updated AML policy effective immediately.\",\"complianceTags\":[\"AML\",\"PolicyUpdate\"],\"sendAsEmail\":true,\"priorityLevel\":\"high\",\"attachmentUrls\":[]}", + "description": "Send a high-priority email notification about AML policy update to finance and audit teams." + }, + { + "inputJson": "{\"recipients\":[\"contract_manager_1\",\"contract_manager_2\"],\"messageSubject\":\"Contract Submission Deadline Reminder\",\"messageBody\":\"Reminder to submit contracts by end of month.\",\"complianceTags\":[\"ContractManagement\"],\"sendAsEmail\":false,\"priorityLevel\":\"normal\",\"attachmentUrls\":[]}", + "description": "Send an internal message reminder about contract submission deadlines to contract managers." + }, + { + "inputJson": "{\"recipients\":[\"legal@company.com\",\"compliance@company.com\"],\"messageSubject\":\"Upcoming Audit Schedule\",\"messageBody\":\"The audit schedule is attached. Please prepare accordingly.\",\"complianceTags\":[\"Audit\"],\"sendAsEmail\":true,\"priorityLevel\":\"normal\",\"attachmentUrls\":[\"https://company.com/audit_schedule.pdf\"]}", + "description": "Send audit schedule with attachment to legal and compliance departments via email." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "security-tools.analyzeReference", + "description": "Analyzes security references such as URLs, file hashes, or vulnerability IDs to assess associated risks and reputations. Accepts a reference string and type, retrieves relevant threat intelligence, performs analysis to identify potential threats or suspicious behavior, and returns a structured risk assessment summary.", + "category": "security-tools", + "parameters": [ + { + "name": "referenceValue", + "type": "string", + "description": "The security reference to analyze, e.g., URL, file hash, or vulnerability ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceType", + "type": "string", + "description": "Type of the reference: 'url', 'fileHash', or 'vulnerabilityId'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed information such as threat actor insights and historical data in the analysis report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original reference, its type, risk score (0-100), risk category (e.g., low, medium, high), and an explanatory summary with optionally detailed threat intelligence data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to assess the risk or reputation of a security-related reference like URLs, file hashes (for files suspected in malware), or vulnerability identifiers, enabling automated threat assessment and prioritization.", + "limitations": "The tool does not perform active scanning or exploit detection; it relies on available threat intelligence databases and cannot guarantee real-time threat status or detect zero-day vulnerabilities.", + "examples": [ + "Analyze the risk and reputation of the given URL to decide if it should be blocked.", + "Check if the provided file hash is associated with known malware.", + "Evaluate the severity and current risk linked to a specific vulnerability ID." + ] + }, + "tags": [ + "security", + "analysis", + "reference", + "threat-intelligence", + "risk-assessment", + "URL", + "file-hash", + "vulnerability" + ], + "examples": [ + { + "inputJson": "{\"referenceValue\":\"http://malicious.example.com/attack\",\"referenceType\":\"url\",\"includeDetails\":true}", + "description": "Analyze a suspicious URL and request detailed threat information." + }, + { + "inputJson": "{\"referenceValue\":\"44d88612fea8a8f36de82e1278abb02f\",\"referenceType\":\"fileHash\",\"includeDetails\":false}", + "description": "Check if a file hash matches known malware signatures with brief output." + }, + { + "inputJson": "{\"referenceValue\":\"CVE-2021-44228\",\"referenceType\":\"vulnerabilityId\",\"includeDetails\":true}", + "description": "Evaluate the current risk and threat intelligence related to CVE-2021-44228 Apache Log4j vulnerability." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "security-tools.composeSummary", + "description": "Generates a concise, informative summary document describing the security posture, incidents, and mitigation steps based on input security reports and logs. Accepts structured security data or text logs, analyzes relevant information, and outputs a readable summary suited for technical and managerial review.", + "category": "security-tools", + "parameters": [ + { + "name": "inputReports", + "type": "array", + "description": "An array of security report objects or text logs to be summarized, each containing incident details, timestamps, severity, and remediation data.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired approximate length of the summary in number of sentences or paragraphs; helps control the detail level.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag indicating whether to append actionable security recommendations based on the analyzed input data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the summary output, e.g., 'text', 'markdown', or 'html'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output summary, e.g., 'en' for English; supports multilingual outputs.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text along with metadata like word count and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly understand and communicate the security status or incident history of an application or infrastructure system by transforming raw security reports and log data into a digestible summary. Ideal for preparing reports for stakeholders or compliance documentation.", + "limitations": "This tool does not perform deep forensic analysis or detect unknown threats; it summarizes provided data but does not generate original security insights beyond input information.", + "examples": [ + "Generate a 3-paragraph summary of today's intrusion detection system logs highlighting critical incidents.", + "Summarize multiple recent vulnerability scan reports including recommended fixes in markdown format.", + "Create a brief summary in Spanish describing last week's security incident tickets without recommendations." + ] + }, + "tags": [ + "security", + "summary", + "report", + "incident", + "log-analysis", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputReports\":[{\"type\":\"intrusionDetectionLog\",\"timestamp\":\"2024-06-01T10:15:00Z\",\"severity\":\"high\",\"description\":\"Multiple SQL injection attempts detected on web app endpoint.\",\"mitigation\":\"WAF rules updated to block payloads.\"},{\"type\":\"vulnerabilityScan\",\"timestamp\":\"2024-06-01T12:30:00Z\",\"severity\":\"medium\",\"description\":\"Outdated OpenSSL version discovered.\",\"mitigation\":\"Patch scheduled for next maintenance window.\"}],\"summaryLength\":4,\"includeRecommendations\":true,\"outputFormat\":\"text\",\"language\":\"en\"}", + "description": "Summarize intrusion detection and vulnerability scan reports into a 4-sentence technical summary including mitigation recommendations." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "finance-tools.createJSON", + "description": "Creates a JSON representation of financial data such as transactions, accounts, or budgets based on given input parameters. Accepts structured inputs for financial items and returns a formatted JSON string suitable for storage, processing, or integration with other financial software.", + "category": "finance-tools", + "parameters": [ + { + "name": "dataType", + "type": "string", + "description": "Type of financial data to represent, e.g. 'transaction', 'account', or 'budget'.", + "required": true, + "defaultValue": "" + }, + { + "name": "entries", + "type": "array", + "description": "Array of objects representing financial entries; each object structure depends on dataType (e.g., for transactions: date, amount, category).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata like timestamp of JSON creation and data source in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Format the output JSON string with indentation for readability if true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the 'jsonString' key with the generated JSON string representing the financial data, formatted according to the parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured financial data (transactions, accounts, budgets) into a standardized JSON format, facilitating data interchange, storage, or further processing by finance management systems or APIs.", + "limitations": "This tool only formats and prepares JSON strings from provided structured data; it does not validate financial correctness, perform calculations, or fetch data from external sources.", + "examples": [ + "Create a JSON for a list of bank transactions for monthly report generation.", + "Generate a JSON object representing an account's details for API submission.", + "Format a budget plan as pretty-printed JSON including metadata for audit purposes." + ] + }, + "tags": [ + "finance", + "json", + "data-formatting", + "financial-data", + "transactions", + "accounts", + "budgets" + ], + "examples": [ + { + "inputJson": "{\"dataType\":\"transaction\",\"entries\":[{\"date\":\"2024-05-01\",\"amount\":1500.00,\"category\":\"Salary\",\"description\":\"Monthly paycheck\"},{\"date\":\"2024-05-02\",\"amount\":-50.25,\"category\":\"Groceries\",\"description\":\"Supermarket purchase\"}],\"includeMetadata\":true,\"prettyPrint\":true}", + "description": "Create a well-formatted JSON string of a list of transactions including creation timestamp metadata." + }, + { + "inputJson": "{\"dataType\":\"account\",\"entries\":[{\"accountId\":\"A12345\",\"accountName\":\"Checking\",\"balance\":3200.50,\"currency\":\"USD\"}],\"includeMetadata\":false,\"prettyPrint\":false}", + "description": "Generate compact JSON for an account summary without metadata." + }, + { + "inputJson": "{\"dataType\":\"budget\",\"entries\":[{\"category\":\"Rent\",\"allocated\":1200,\"spent\":1180},{\"category\":\"Utilities\",\"allocated\":300,\"spent\":290}],\"includeMetadata\":true,\"prettyPrint\":true}", + "description": "Create a pretty-printed JSON for a budget report including metadata." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "etl-processes.createLink", + "description": "This tool accepts a source URL, optional metadata and transformation rules to create a standardized, validated hyperlink object suitable for use in ETL workflows involving data extraction or integration. It processes the input URL by validating format, applying optional rewriting rules, embedding metadata, and outputs a structured link object ready for downstream consumption.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL string representing the source link to validate and process.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value metadata to attach to the link (e.g., labels, tags).", + "required": false, + "defaultValue": "" + }, + { + "name": "transformRules", + "type": "object", + "description": "Optional rules to transform or rewrite the URL, e.g., replacing domains or paths.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateHttps", + "type": "boolean", + "description": "Flag to enable strict HTTPS validation; if true, only URLs with https scheme are accepted.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum allowed length of the URL; URLs longer than this will be rejected.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the validated and transformed URL, embedded metadata, and status flags." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a consistent, validated link object from raw URLs within an ETL process, especially when links require normalization, metadata enrichment, or must pass scheme and length validations before loading into target systems.", + "limitations": "Cannot resolve or fetch content from URLs; does not perform link accessibility checks or content scraping; transformations are limited to simple rewriting rules, not executing complex scripts.", + "examples": [ + "Create a link object with HTTPS only URLs and add custom tags for a data pipeline.", + "Generate a standardized link from a raw user input URL applying domain replacement rules.", + "Validate and enforce maximum URL length constraints before ingesting links." + ] + }, + "tags": [ + "ETL", + "link creation", + "URL validation", + "data transformation", + "metadata enrichment" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"http://example.com/data\",\"metadata\":{\"category\":\"finance\"},\"transformRules\":{\"replaceDomain\":\"example.com -> example.org\"},\"validateHttps\":false}", + "description": "Create a link object replacing domain example.com with example.org and attach a 'finance' category metadata." + }, + { + "inputJson": "{\"sourceUrl\":\"https://secure.example.com/report\",\"metadata\":{\"source\":\"internal\"},\"validateHttps\":true}", + "description": "Validate that the URL uses HTTPS and attach internal source metadata." + }, + { + "inputJson": "{\"sourceUrl\":\"http://oldsite.com/very/long/url/path\",\"maxLength\":30}", + "description": "Reject or flag the link if its URL exceeds 30 characters length, for length enforcement in ETL." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "database-management.generateChart", + "description": "Generates a visual chart (bar, line, pie, etc.) based on a SQL database query result. Accepts a SQL SELECT query and chart configuration parameters, executes the query against the connected database, processes the output data, and returns a JSON chart specification (e.g., in Vega-Lite format) for visualization.", + "category": "database-management", + "parameters": [ + { + "name": "sqlQuery", + "type": "string", + "description": "The SQL SELECT query to retrieve data for the chart. Must be a valid query returning columns compatible with the chosen chart type.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "The type of chart to generate, e.g., 'bar', 'line', 'pie', 'scatter'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "xAxisColumn", + "type": "string", + "description": "The column name from the query results to use for the x-axis or categories in the chart.", + "required": true, + "defaultValue": "" + }, + { + "name": "yAxisColumn", + "type": "string", + "description": "The column name from the query results to use for the y-axis or values in the chart.", + "required": true, + "defaultValue": "" + }, + { + "name": "groupByColumn", + "type": "string", + "description": "Optional column name to group data by different series or slices in the chart (e.g., for grouped or stacked charts).", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregateFunction", + "type": "string", + "description": "Aggregation function to apply to y-axis values if grouping, e.g., 'sum', 'avg', 'count'. Defaults to 'sum'.", + "required": false, + "defaultValue": "sum" + }, + { + "name": "limitRows", + "type": "number", + "description": "Optional limit on the number of rows to fetch and visualize to maintain performance and clarity.", + "required": false, + "defaultValue": "100" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the chart specification output; e.g., 'vega-lite-json', 'chartjs-config'. Defaults to 'vega-lite-json'.", + "required": false, + "defaultValue": "vega-lite-json" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the chart specification according to the chosen outputFormat, ready for rendering by compatible visualization libraries." + }, + "aiAgent": { + "useCase": "Use this tool when visual insights from database data are needed. It allows transforming SQL query results into readily usable chart specifications for dashboards or reports, enabling AI agents to dynamically generate data visualizations without manual chart coding.", + "limitations": "Cannot execute non-SELECT queries, does not create visual plots directly but only returns chart specs, relies on the SQL query correctness and accessible database connections, might be limited by database permission and query complexity.", + "examples": [ + "Generate a bar chart of total sales per region using a sales database.", + "Create a line chart showing monthly active users over the past year.", + "Produce a pie chart breaking down product categories by revenue share." + ] + }, + "tags": [ + "database", + "chart", + "visualization", + "SQL", + "reporting", + "dashboard", + "data-analytics" + ], + "examples": [ + { + "inputJson": "{\"sqlQuery\":\"SELECT region, SUM(sales) as total_sales FROM sales_data GROUP BY region\",\"chartType\":\"bar\",\"xAxisColumn\":\"region\",\"yAxisColumn\":\"total_sales\",\"groupByColumn\":\"\",\"aggregateFunction\":\"sum\",\"limitRows\":50,\"outputFormat\":\"vega-lite-json\"}", + "description": "Generate a bar chart showing total sales by region." + }, + { + "inputJson": "{\"sqlQuery\":\"SELECT MONTH(order_date) as month, COUNT(user_id) as active_users FROM user_activity WHERE order_date >= '2023-01-01' GROUP BY month ORDER BY month\",\"chartType\":\"line\",\"xAxisColumn\":\"month\",\"yAxisColumn\":\"active_users\",\"outputFormat\":\"vega-lite-json\"}", + "description": "Create a line chart of monthly active users for the current year." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "devops.downloadImage", + "description": "Downloads container images from container registries such as Docker Hub, AWS ECR, or GCR. Accepts image repository name, tag, and optional credentials to authenticate. Pulls the specified image and stores it locally or returns metadata about the image.", + "category": "devops", + "parameters": [ + { + "name": "imageName", + "type": "string", + "description": "The full name of the container image to download, including repository path, e.g., 'nginx' or 'myrepo/myimage'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tag", + "type": "string", + "description": "The image tag or version to download, e.g., 'latest' or '1.19.3'. Defaults to 'latest' if omitted.", + "required": false, + "defaultValue": "latest" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local filesystem path where to save the downloaded image as a tar archive. If empty, image is pulled to local Docker daemon.", + "required": false, + "defaultValue": "" + }, + { + "name": "registryUrl", + "type": "string", + "description": "URL of the container registry if different from default Docker Hub, e.g., 'registry.example.com'.", + "required": false, + "defaultValue": "" + }, + { + "name": "credentials", + "type": "object", + "description": "Optional authentication credentials object with fields 'username' and 'password' for private registries.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Whether to download dependent image layers and related data explicitly (true) or rely on standard pull mechanisms (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the download, local image ID if successful, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically pull container images from public or private registries for deployment, testing, or analysis. Ideal when image download automation is required, with options for authentication and saving to custom locations.", + "limitations": "This tool does not build container images or push them back to registries. Does not handle image scanning or vulnerability assessment.", + "examples": [ + "Download the nginx image tagged 1.19 and save locally.", + "Pull a private image from a corporate registry with authentication.", + "Retrieve latest version of a base image without saving as tarfile." + ] + }, + "tags": [ + "devops", + "container", + "image", + "download", + "docker", + "registry", + "automation" + ], + "examples": [ + { + "inputJson": "{\"imageName\":\"nginx\",\"tag\":\"1.19\",\"destinationPath\":\"/tmp/nginx.tar\",\"registryUrl\":\"\",\"credentials\":{},\"includeDependencies\":false}", + "description": "Download nginx image version 1.19 and save it as tar archive locally." + }, + { + "inputJson": "{\"imageName\":\"myprivaterepo/myapp\",\"tag\":\"latest\",\"destinationPath\":\"\",\"registryUrl\":\"registry.mycompany.com\",\"credentials\":{\"username\":\"user1\",\"password\":\"pass123\"},\"includeDependencies\":true}", + "description": "Pull latest private app image with authentication from a company registry, load into local docker." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "automation-frameworks.buildEndpoint", + "description": "Generates a fully functional API endpoint based on provided specifications including HTTP method, route, request schema, response schema, and optional middleware. It processes input definitions and outputs code snippets or configurations compatible with popular frameworks like Express.js or Fastify.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "framework", + "type": "string", + "description": "The target backend framework for which to generate the endpoint code (e.g., 'express', 'fastify').", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method of the endpoint (e.g., GET, POST, PUT, DELETE).", + "required": true, + "defaultValue": "" + }, + { + "name": "route", + "type": "string", + "description": "The route path for the endpoint, supporting parameters, e.g. '/users/:id'.", + "required": true, + "defaultValue": "" + }, + { + "name": "requestSchema", + "type": "object", + "description": "JSON Schema or similar object defining expected request inputs (query, body, params).", + "required": false, + "defaultValue": "" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON Schema defining the structure of the response sent by the endpoint.", + "required": false, + "defaultValue": "" + }, + { + "name": "middleware", + "type": "array", + "description": "List of middleware function names or identifiers to apply to the endpoint in order.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires authentication middleware automatically added.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated endpoint code as a string, plus metadata such as required imports and a summary description." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate backend API endpoints from specification parameters, automating boilerplate code creation for various frameworks and ensuring consistent request handling and validation.", + "limitations": "This tool cannot implement complex business logic or integrate third-party services beyond scaffolding endpoint code. It does not deploy or test endpoints; output requires integration into existing codebases and developer review.", + "examples": [ + "Generate a POST /users endpoint in Express.js with body validation and authentication.", + "Create a GET /products/:id endpoint for Fastify without authentication.", + "Build a DELETE /orders/:orderId endpoint with middleware logging for Express." + ] + }, + "tags": [ + "automation", + "code-generation", + "api", + "backend", + "endpoint", + "express", + "fastify" + ], + "examples": [ + { + "inputJson": "{\"framework\":\"express\",\"httpMethod\":\"POST\",\"route\":\"/users\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\",\"format\":\"email\"}},\"required\":[\"name\",\"email\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}},\"required\":[\"id\",\"name\",\"email\"]},\"middleware\":[\"validateRequestBody\"],\"authenticationRequired\":true}", + "description": "Create an Express.js POST /users endpoint with request body validation, authentication, and returns a user object." + }, + { + "inputJson": "{\"framework\":\"fastify\",\"httpMethod\":\"GET\",\"route\":\"/products/:id\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"params\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"}},\"required\":[\"id\"]}}},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"}},\"required\":[\"id\",\"name\",\"price\"]},\"middleware\":[],\"authenticationRequired\":false}", + "description": "Generate a Fastify GET /products/:id endpoint with params validation, no authentication required." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "agent-management.analyzeOpportunity", + "description": "This tool analyzes a business opportunity by evaluating input parameters such as market size, competition, required investment, potential revenue, and timeframe. It processes these inputs to generate a risk-reward profile and strategic recommendations to support decision-making for creating or managing AI agents or bots in new markets or projects.", + "category": "agent-management", + "parameters": [ + { + "name": "marketSize", + "type": "number", + "description": "Estimated market size in terms of potential customers or total revenue", + "required": true, + "defaultValue": "" + }, + { + "name": "competitionLevel", + "type": "string", + "description": "Competitive landscape intensity level, e.g., 'low', 'medium', or 'high'", + "required": true, + "defaultValue": "" + }, + { + "name": "requiredInvestment", + "type": "number", + "description": "Estimated financial investment needed in USD", + "required": true, + "defaultValue": "" + }, + { + "name": "potentialRevenue", + "type": "number", + "description": "Expected revenue in USD over the opportunity timeframe", + "required": true, + "defaultValue": "" + }, + { + "name": "timeframeMonths", + "type": "number", + "description": "Duration of the opportunity evaluation period in months", + "required": false, + "defaultValue": "12" + }, + { + "name": "industrySector", + "type": "string", + "description": "Industry sector of the opportunity, e.g., 'finance', 'healthcare','education'", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including risk score (0 to 1), reward score (0 to 1), summary of strengths and weaknesses, and strategic recommendations for pursuing or declining the opportunity." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the viability of a new business opportunity related to AI agents or bot deployment by synthesizing quantitative and qualitative inputs to determine risk and reward. It helps in strategic planning and decision making for launching or avoiding certain projects.", + "limitations": "This tool doesn't perform deep market research or generate financial forecasts beyond the input data. It doesn't replace expert domain consultation and should not be used for final investment decisions without human oversight.", + "examples": [ + "Analyze a new chatbot service opportunity in the healthcare sector with medium competition, $500k investment, $2M potential revenue over 18 months.", + "Evaluate an AI agent deployment project targeting the finance sector with high competition and a 12-month timeline." + ] + }, + "tags": [ + "analysis", + "business", + "opportunity", + "strategy", + "risk-assessment", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"marketSize\":1000000,\"competitionLevel\":\"medium\",\"requiredInvestment\":500000,\"potentialRevenue\":2000000,\"timeframeMonths\":18,\"industrySector\":\"healthcare\"}", + "description": "Analyze a healthcare AI agent opportunity with medium competition, half a million USD investment, and two million USD expected revenue over 18 months." + }, + { + "inputJson": "{\"marketSize\":500000,\"competitionLevel\":\"high\",\"requiredInvestment\":750000,\"potentialRevenue\":1500000}", + "description": "Analyze a high competition opportunity with 500k market size where 750k investment is required, expecting 1.5 million USD revenue over the default 12 months." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "agent-management.renderReport", + "description": "This tool accepts structured agent activity data and configuration options to generate a comprehensive report summarizing agent performance, tasks completed, and status metrics. It processes the input data applying filters and formatting rules, then outputs a formatted report document in the requested format such as PDF or HTML.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "Unique identifier of the AI agent whose data will be compiled into the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of report to generate e.g. 'performance', 'activity', or 'summary'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Object containing 'startDate' and 'endDate' ISO strings defining the period covered by the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the report document, such as 'pdf' or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag to include graphical charts summarizing the agent's performance.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customNotes", + "type": "string", + "description": "Optional user-provided notes to append to the end of the report.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report as a base64-encoded string, the file format, and metadata such as generated timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need a detailed, formatted document summarizing an AI agent's activity or performance over a specific time frame for review, reporting, or audit purposes. It is suitable for generating PDF or HTML reports that administrators or stakeholders can easily consume.", + "limitations": "This tool does not generate reports outside of AI agent management contexts, nor does it analyze raw logs without them being properly structured in the input data. It cannot generate reports in formats other than the specified output formats, nor replace interactive dashboards.", + "examples": [ + "Generate a monthly performance report PDF for agent ID 'agent123'.", + "Render an activity summary report in HTML format including charts for agent 'bot-A01'.", + "Create a PDF report for agent 'agentX' covering tasks completed between two dates, with custom notes appended." + ] + }, + "tags": [ + "agent management", + "report generation", + "performance summary", + "PDF", + "HTML", + "AI agent", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"reportType\":\"performance\",\"dateRange\":{\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\"},\"outputFormat\":\"pdf\",\"includeCharts\":true,\"customNotes\":\"Review quarterly results.\"}", + "description": "Generate a PDF performance report for agent 'agent123' for May 2024 with charts and custom notes." + }, + { + "inputJson": "{\"agentId\":\"bot-A01\",\"reportType\":\"activity\",\"outputFormat\":\"html\",\"includeCharts\":false}", + "description": "Render an HTML activity summary report for agent 'bot-A01' without charts." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "model-management.analyzeDashboard", + "description": "Analyzes AI model management dashboards by processing input dashboard metrics such as training progress, deployment status, and performance indicators. The tool aggregates and interprets these inputs to produce a detailed analytical report highlighting trends, bottlenecks, and actionable insights for optimizing model lifecycle management.", + "category": "model-management", + "parameters": [ + { + "name": "dashboardMetrics", + "type": "object", + "description": "An object containing key dashboard metrics including training statistics, deployment info, and performance metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "string", + "description": "The time range (e.g., 'last7days', 'lastMonth') for which to analyze the dashboard data.", + "required": false, + "defaultValue": "last7days" + }, + { + "name": "includeComparisons", + "type": "boolean", + "description": "Whether to include performance comparisons against previous time periods.", + "required": false, + "defaultValue": "true" + }, + { + "name": "alertThresholds", + "type": "object", + "description": "Threshold values for key metrics to flag alerts or warnings in the analysis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized insights including trend analysis, identified bottlenecks, alert flags, and recommended next steps for model management improvements." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand and optimize AI model lifecycle from aggregated dashboard data, to identify performance issues, deployment delays, or training inefficiencies. It helps AI agents provide actionable advice based on current and historical model management metrics.", + "limitations": "Does not perform real-time data collection or update dashboards automatically; relies on input metric data accuracy and completeness.", + "examples": [ + "Analyze the last month’s model training and deployment metrics dashboard for performance trends.", + "Generate an analysis report highlighting bottlenecks in the current model deployment pipeline.", + "Compare current model performance indicators with previous periods and recommend improvements." + ] + }, + "tags": [ + "model-management", + "analytics", + "dashboard", + "performance-analysis", + "training", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"dashboardMetrics\":{\"trainingAccuracy\":0.92,\"trainingLoss\":0.15,\"deployedModels\":3,\"failedDeployments\":1,\"inferenceLatencyMs\":120},\"timeRange\":\"last7days\",\"includeComparisons\":true,\"alertThresholds\":{\"inferenceLatencyMs\":100,\"failedDeployments\":0}}", + "description": "Analyzes a 7-day dashboard input with training accuracy, deployment count, and latency to identify alerts and performance trends." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "embedding-generation.downloadDocument", + "description": "Downloads a document from a specified URL or an online repository, processes it for embedding generation by extracting textual content, and returns the raw text data ready for embedding creation. Supports various document formats like PDF, DOCX, and HTML.", + "category": "embedding-generation", + "parameters": [ + { + "name": "documentUrl", + "type": "string", + "description": "The URL of the document to download. Must be a publicly accessible HTTP or HTTPS link.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "The format of the document (e.g., pdf, docx, html). Helps optimize the extraction process. Optional if can be inferred from URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxDownloadSizeMb", + "type": "number", + "description": "Maximum allowed size in megabytes for the document to download. Documents larger than this will be rejected to prevent excessive data usage.", + "required": false, + "defaultValue": "10" + }, + { + "name": "extractTextOnly", + "type": "boolean", + "description": "Whether to extract only plain text content or preserve some formatting metadata. Defaults to true for plain text extraction.", + "required": false, + "defaultValue": "true" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional authentication token or API key if the document URL requires authorization for access.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the raw extracted text content from the document and metadata such as source URL, document type, and number of characters extracted." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to obtain the textual content of a remote document in order to generate embeddings for semantic search, vector databases, or knowledge integration. It is useful when documents are hosted online and must be fetched and preprocessed before embedding.", + "limitations": "This tool cannot parse scanned documents or images within PDFs. It does not generate embeddings itself but only prepares raw text. It cannot download files behind non-standard authentication schemes.", + "examples": [ + "Download the content of a research paper PDF available online before creating its semantic embedding.", + "Fetch a DOCX user manual from a corporate intranet link with proper authentication token.", + "Retrieve HTML content from a public webpage for embedding-based content analysis." + ] + }, + "tags": [ + "embedding-generation", + "document-download", + "text-extraction", + "pdf", + "docx", + "html", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"documentUrl\":\"https://example.com/reports/annual_report_2023.pdf\",\"fileType\":\"pdf\",\"maxDownloadSizeMb\":5,\"extractTextOnly\":true,\"authenticationToken\":\"\"}", + "description": "Download and extract raw text from a publicly accessible PDF report with size limit 5MB." + }, + { + "inputJson": "{\"documentUrl\":\"https://secure.internal/docs/manual.docx\",\"fileType\":\"docx\",\"maxDownloadSizeMb\":10,\"extractTextOnly\":true,\"authenticationToken\":\"Bearer abc123token\"}", + "description": "Download a DOCX manual from a secure internal site using an authentication token." + }, + { + "inputJson": "{\"documentUrl\":\"https://publicsite.com/article.html\",\"fileType\":\"html\",\"maxDownloadSizeMb\":2,\"extractTextOnly\":false,\"authenticationToken\":\"\"}", + "description": "Download an HTML article preserving some formatting metadata." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "monitoring.buildTest", + "description": "This tool accepts configuration parameters to construct a customized monitoring test for system and application performance. It processes input such as test type, target systems, metrics to measure, thresholds, and scheduling options, then outputs a detailed test plan and executable test script or configuration for automated monitoring tools.", + "category": "monitoring", + "parameters": [ + { + "name": "testName", + "type": "string", + "description": "Name identifier for the monitoring test to be built", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of test to build, such as 'load', 'availability', 'latency', or 'throughput'", + "required": true, + "defaultValue": "" + }, + { + "name": "targetSystems", + "type": "array", + "description": "List of system identifiers or IPs where the test will run", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Performance metrics to measure during the test like CPU usage, response time, error rate", + "required": true, + "defaultValue": "" + }, + { + "name": "thresholds", + "type": "object", + "description": "Key-value pairs defining thresholds for metrics to determine pass/fail", + "required": false, + "defaultValue": "" + }, + { + "name": "schedule", + "type": "string", + "description": "Cron expression or ISO8601 duration for how often the test should be executed", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationEmails", + "type": "array", + "description": "List of email addresses to notify with test results or alerts", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully defined test plan including the test name, type, detailed configuration, and a runnable test script or configuration snippet to be used with monitoring systems." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate repeatable performance or availability tests for infrastructure or applications, enabling automated monitoring setups. It helps define parameters and produce executable test configurations that can be integrated into CI/CD pipelines or monitoring platforms.", + "limitations": "This tool does not execute the actual tests or collect real-time monitoring data; it only constructs test definitions and scripts/configurations. It may not support highly proprietary or uncommon test frameworks without adaptation.", + "examples": [ + "Build a load testing script to measure response times on multiple web servers every night and alert developers on threshold breaches.", + "Create an availability test for database servers that checks connectivity and CPU usage every 15 minutes, sending results to ops emails.", + "Generate a throughput test configuration for API endpoints with custom success thresholds and scheduled weekly runs." + ] + }, + "tags": [ + "monitoring", + "test", + "automation", + "performance", + "system", + "application", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"testName\":\"NightlyLoadTest\",\"testType\":\"load\",\"targetSystems\":[\"192.168.1.100\",\"192.168.1.101\"],\"metrics\":[\"responseTime\",\"errorRate\"],\"thresholds\":{\"responseTime\":500,\"errorRate\":2},\"schedule\":\"0 0 * * *\",\"notificationEmails\":[\"devops@example.com\"]}", + "description": "Build a nightly load test for web servers with response time and error rate thresholds, scheduled by cron, notifying devops." + }, + { + "inputJson": "{\"testName\":\"DBAvailabilityCheck\",\"testType\":\"availability\",\"targetSystems\":[\"db1.company.com\"],\"metrics\":[\"cpuUsage\",\"connectionSuccess\"],\"schedule\":\"PT15M\"}", + "description": "Create an availability test checking CPU and connectivity every 15 minutes on one database server." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "compliance-management.createAPI", + "description": "This tool generates a compliance management API tailored for regulatory and policy requirements based on user inputs. It accepts compliance standards, policy documents, and system integration parameters, processes them to create RESTful endpoints with validation rules, and outputs a ready-to-deploy API specification and sample code for deployment.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards to implement (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "" + }, + { + "name": "policyDocuments", + "type": "array", + "description": "Array of URLs or text content of organizational policies to embed in the API.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "Target platform or framework for the API (e.g., Node.js, Python Flask).", + "required": true, + "defaultValue": "Node.js" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "Authentication method for API access (e.g., OAuth2, API key).", + "required": true, + "defaultValue": "OAuth2" + }, + { + "name": "includeAuditLogging", + "type": "boolean", + "description": "Whether to include audit logging endpoints and features.", + "required": false, + "defaultValue": "true" + }, + { + "name": "endpointPrefix", + "type": "string", + "description": "Prefix path for all generated API endpoints (e.g., /compliance).", + "required": false, + "defaultValue": "/compliance" + }, + { + "name": "rateLimitPerMinute", + "type": "number", + "description": "Rate limit for API requests per minute.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the API specification in OpenAPI format, sample deployment code snippets, and a summary of included compliance checks." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a custom compliance API to enforce, monitor, and report adherence to specific regulatory standards within an organization's systems. Ideal for integrating compliance checks into software platforms programmatically without manual API coding.", + "limitations": "Cannot fully interpret all complex legal policy documents to generate compliance logic; requires clear compliance standards input. Does not deploy the API itself, only generates code and specification.", + "examples": [ + "Create an API to enforce GDPR and HIPAA data access controls using Node.js with OAuth2 authentication.", + "Generate a compliance API with audit logging for ISO 27001 policies using Python Flask framework.", + "Build an internal compliance API with rate limits to track SOC2 requirements." + ] + }, + "tags": [ + "compliance", + "API", + "regulatory", + "automation", + "policy", + "security" + ], + "examples": [ + { + "inputJson": "{\"complianceStandards\":[\"GDPR\",\"HIPAA\"],\"policyDocuments\":[\"https://company.com/policy/privacy.pdf\"],\"targetPlatform\":\"Node.js\",\"authenticationMethod\":\"OAuth2\",\"includeAuditLogging\":true,\"endpointPrefix\":\"/compliance\",\"rateLimitPerMinute\":100}", + "description": "Generate a Node.js compliance API for GDPR and HIPAA with OAuth2, audit logging, custom endpoint prefix, and 100 RPM rate limit." + }, + { + "inputJson": "{\"complianceStandards\":[\"ISO27001\"],\"targetPlatform\":\"Python Flask\",\"authenticationMethod\":\"API key\",\"includeAuditLogging\":false,\"endpointPrefix\":\"/iso-compliance\",\"rateLimitPerMinute\":50}", + "description": "Create a Python Flask compliance API targeting ISO27001 with API key authentication and no audit logging, limited to 50 RPM." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "marketing-automation.formatReport", + "description": "Formats raw marketing campaign data into a structured, visually organized report. Accepts input data in JSON format representing campaign metrics, applies customizable formatting styles and layout options, and outputs a formatted report as a PDF or HTML file for presentation or distribution.", + "category": "marketing-automation", + "parameters": [ + { + "name": "rawData", + "type": "object", + "description": "Raw marketing campaign data including metrics and KPIs as JSON.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Predefined style template to apply for the report's visual appearance (e.g., 'modern', 'classic').", + "required": false, + "defaultValue": "modern" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format, either 'pdf' or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeGraphs", + "type": "boolean", + "description": "Flag to include graphical charts based on campaign data in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Optional custom title to display at the top of the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "sectionsOrder", + "type": "array", + "description": "Array specifying the order of sections to include, e.g. ['overview','channels','roi'].", + "required": false, + "defaultValue": "[\"overview\",\"metrics\",\"channels\",\"roi\"]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report file's content as a base64-encoded string and the file type." + }, + "aiAgent": { + "useCase": "Use this tool when you have collected raw marketing campaign data and need to produce a professionally formatted report for stakeholders, clients, or internal review. It helps automate the translation from raw metrics into polished, presentation-ready documents without manual formatting effort.", + "limitations": "Cannot generate raw analytics data or insights, only formats existing campaign data. Does not support interactive report elements beyond static charts. Relies on well-structured input data to produce correct output.", + "examples": [ + "\"Format March campaign data into a PDF with modern style including graphs and custom title 'March Campaign Overview'.\"", + "\"Generate an HTML report from advertising data using the classic style and excluding graphs.\"", + "\"Produce a PDF report ordering sections as ROI first, then overview, then metrics.\"" + ] + }, + "tags": [ + "marketing", + "automation", + "reporting", + "formatting", + "campaign", + "pdf", + "html" + ], + "examples": [ + { + "inputJson": "{\"rawData\":{\"totalClicks\":1234,\"impressions\":56789,\"channels\":{\"email\":400,\"social\":834},\"roi\":120.5},\"formatStyle\":\"modern\",\"outputFormat\":\"pdf\",\"includeGraphs\":true,\"title\":\"March Campaign Overview\",\"sectionsOrder\":[\"overview\",\"channels\",\"roi\"]}", + "description": "Produce a modern style PDF report for March campaign data including graphs and a custom title." + }, + { + "inputJson": "{\"rawData\":{\"totalClicks\":987,\"impressions\":43210,\"channels\":{\"email\":200,\"social\":787},\"roi\":95.0},\"formatStyle\":\"classic\",\"outputFormat\":\"html\",\"includeGraphs\":false,\"title\":\"Q1 Advertising Summary\",\"sectionsOrder\":[\"overview\",\"metrics\",\"channels\"]}", + "description": "Generate a classic style HTML report for Q1 advertising data without graphs." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "marketing-automation.generateSentence", + "description": "Generates a concise, engaging marketing sentence tailored to a specified product or campaign objective using an optional tone and target audience. Accepts keywords, campaign goals, tone style, and target demographics to produce a suitable promotional sentence for marketing content.", + "category": "marketing-automation", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to generate the sentence for.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignGoal", + "type": "string", + "description": "Primary goal or theme of the campaign, such as 'increase sales' or 'brand awareness'.", + "required": false, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "Array of relevant keywords or phrases to include for SEO or emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the sentence, e.g., 'formal', 'friendly', 'urgent'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience to tailor language and style.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing sentence as a string under 'sentence' property." + }, + "aiAgent": { + "useCase": "Use this tool when generating short promotional sentences customized for specific products, campaign goals, tones, and audiences during marketing automation tasks, enabling content personalization and rapid campaign copy creation.", + "limitations": "Cannot generate long-form content, detailed product descriptions, or replace human creative oversight. May produce generic sentences if inputs are sparse.", + "examples": [ + "Generate a catchy sentence for a new fitness app targeting young adults with an energetic tone.", + "Create a formal promotional line for a luxury watch brand emphasizing exclusivity.", + "Produce a friendly marketing sentence focused on eco-friendly household products to increase brand awareness." + ] + }, + "tags": [ + "marketing", + "content-generation", + "automation", + "copywriting", + "promotion", + "campaign", + "sentence" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"EcoClean Detergent\",\"campaignGoal\":\"increase brand awareness\",\"keywords\":[\"eco-friendly\",\"biodegradable\"],\"tone\":\"friendly\",\"targetAudience\":\"environment-conscious households\"}", + "description": "Generate a friendly marketing sentence for EcoClean Detergent targeting eco-conscious consumers to boost brand awareness." + }, + { + "inputJson": "{\"productName\":\"Luxora Watches\",\"campaignGoal\":\"highlight exclusivity\",\"tone\":\"formal\",\"targetAudience\":\"luxury buyers\"}", + "description": "Create a formal promotional sentence for luxury watch brand Luxora to emphasize exclusivity." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "documentation-tools.buildContainer", + "description": "Builds a documentation container by packaging and structuring multiple documentation files and assets into a portable, deployable container (e.g., a Docker image or archive). Accepts source directory paths, metadata, and build options as input and outputs a container image reference or archive path for deployment or distribution.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sourceDirectory", + "type": "string", + "description": "Path to the root directory containing documentation source files and assets to include in the container.", + "required": true, + "defaultValue": "" + }, + { + "name": "containerType", + "type": "string", + "description": "Type of container to build, such as 'docker' for Docker image or 'archive' for a compressed archive file.", + "required": true, + "defaultValue": "docker" + }, + { + "name": "containerName", + "type": "string", + "description": "Name to assign to the built container image or archive file.", + "required": true, + "defaultValue": "" + }, + { + "name": "versionTag", + "type": "string", + "description": "Version tag or identifier to label the container, e.g., 'v1.0.0'.", + "required": false, + "defaultValue": "latest" + }, + { + "name": "buildArgs", + "type": "object", + "description": "Optional key-value pairs for build-time arguments, such as environment variables or build flags.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includePatterns", + "type": "array", + "description": "List of glob patterns specifying which files to include in the container. Defaults to include all files in sourceDirectory.", + "required": false, + "defaultValue": "[\"**/*\"]" + }, + { + "name": "excludePatterns", + "type": "array", + "description": "List of glob patterns specifying files or directories to exclude from the container build.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputPath", + "type": "string", + "description": "File system path where the built container archive should be saved (applicable if containerType is 'archive').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Information about the built container including containerType, containerName, versionTag, and output reference such as image ID or archive file path." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate and standardize the packaging of documentation projects into portable containers for consistent deployment or distribution. It enables bundling documentation sources and assets into Docker images for containerized serving or into archive files for easy sharing. Appropriate for documentation teams adopting containerized workflows or distribution pipelines.", + "limitations": "This tool does not perform documentation content generation, rendering, or validation. It is focused solely on packaging existing documentation sources into container forms and does not deploy or publish the container to remote registries.", + "examples": [ + "Build a Docker image container from a specified directory of documentation files with version tag 'v2.3'", + "Create a compressed archive of documentation assets to share with other teams", + "Package documentation into a Docker image including custom build arguments such as environment variables" + ] + }, + "tags": [ + "documentation", + "container", + "build", + "deployment", + "docker", + "archive" + ], + "examples": [ + { + "inputJson": "{\"sourceDirectory\":\"/docs/project1\",\"containerType\":\"docker\",\"containerName\":\"project1-docs\",\"versionTag\":\"v2.3\",\"buildArgs\":{\"ENV\":\"production\"},\"includePatterns\":[\"**/*.md\",\"images/**/*\"],\"excludePatterns\":[\"drafts/**/*\"]}", + "description": "Build a Docker image container named 'project1-docs:v2.3' from markdown files and images, excluding drafts, including a production environment variable." + }, + { + "inputJson": "{\"sourceDirectory\":\"/docs/project2\",\"containerType\":\"archive\",\"containerName\":\"project2-docs\",\"outputPath\":\"/tmp/project2-docs.zip\"}", + "description": "Create a compressed archive of the entire documentation directory for project2 and save to /tmp/project2-docs.zip." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "etl-processes.analyzeLead", + "description": "Analyzes lead data by extracting relevant features, evaluating lead quality based on predefined criteria, scoring lead potential, and producing a detailed report summarizing insights to assist sales and marketing decision-making. Input is lead data as JSON; output is a structured analysis with metrics and recommendations.", + "category": "etl-processes", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "JSON object containing lead information such as contact details, interaction history, and demographic data.", + "required": true, + "defaultValue": "" + }, + { + "name": "scoringModel", + "type": "string", + "description": "Identifier for the lead scoring model or algorithm to apply (e.g., 'standard', 'custom').", + "required": false, + "defaultValue": "standard" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include actionable recommendations based on the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minScoreThreshold", + "type": "number", + "description": "Minimum lead score threshold to highlight as high-potential leads.", + "required": false, + "defaultValue": "70" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis containing lead score, quality metrics, segment classification, and optional recommendations for follow-up actions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate and prioritize sales leads based on multiple factors from CRM or marketing data sources to optimize conversion efforts. It helps to quantify lead quality and generate actionable insights for sales teams.", + "limitations": "This tool requires accurate and sufficiently detailed lead data to provide meaningful analysis. It does not perform data enrichment or real-time data collection and cannot replace human judgment for complex sales strategies.", + "examples": [ + "Analyze lead with complete CRM data to score and rank for prioritization.", + "Generate a report summarizing lead potential and providing next-step recommendations.", + "Evaluate leads using a custom scoring model for a targeted marketing campaign." + ] + }, + "tags": [ + "etl", + "lead analysis", + "scoring", + "sales", + "crm", + "data processing" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"name\":\"John Doe\",\"email\":\"johndoe@example.com\",\"company\":\"Tech Innovations Inc.\",\"jobTitle\":\"CTO\",\"interactions\":[{\"type\":\"email\",\"date\":\"2024-05-01\"},{\"type\":\"call\",\"date\":\"2024-05-03\"}],\"demographics\":{\"industry\":\"Technology\",\"location\":\"USA\"}},\"scoringModel\":\"standard\",\"includeRecommendations\":true,\"minScoreThreshold\":75}", + "description": "Analyze a lead with interaction history and demographics using the standard scoring model, include recommendations, highlighting leads scoring 75 and above." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "devops.downloadReport", + "description": "Downloads a deployment or CI/CD pipeline report from a specified report server or URL. Accepts parameters specifying report type, date range, and output format, then retrieves and saves the report locally or returns its content. Supports authentication for secure access.", + "category": "devops", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "The type of report to download (e.g., deployment, build, test coverage).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date (ISO 8601 format) for the report data range.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date (ISO 8601 format) for the report data range.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the report (e.g., json, pdf, csv).", + "required": false, + "defaultValue": "json" + }, + { + "name": "saveToFile", + "type": "boolean", + "description": "Whether to save the downloaded report to a local file.", + "required": false, + "defaultValue": "true" + }, + { + "name": "filePath", + "type": "string", + "description": "The local file path where the report will be saved, if saveToFile is true.", + "required": false, + "defaultValue": "./report" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or API key for secured report servers.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportServerUrl", + "type": "string", + "description": "The URL of the report server or endpoint to download the report from.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report content as a string, the format type, and if saved locally, the file path." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve deployment, build, or test reports programmatically from a CI/CD or monitoring server to analyze, archive, or display them. It is particularly useful for automating report retrieval in continuous integration pipelines or dashboards.", + "limitations": "This tool does not generate reports; it only downloads existing reports from accessible servers. It requires the correct report parameters and valid authentication if needed. It does not parse or deeply analyze report contents beyond returning them.", + "examples": [ + "Download the latest deployment report for the past week in PDF format and save it locally.", + "Fetch the test coverage report in JSON format without saving to a file, returning content directly.", + "Retrieve the build report from a secured Jenkins server using an API token." + ] + }, + "tags": [ + "devops", + "download", + "report", + "ci-cd", + "deployment", + "automation", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"deployment\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-07\",\"outputFormat\":\"pdf\",\"saveToFile\":true,\"filePath\":\"./deploy_report_may.pdf\",\"authToken\":\"\",\"reportServerUrl\":\"https://ci.example.com/api/reports\"}", + "description": "Download deployment report for the first week of May 2024 in PDF format and save it as deploy_report_may.pdf locally." + }, + { + "inputJson": "{\"reportType\":\"test coverage\",\"outputFormat\":\"json\",\"saveToFile\":false,\"reportServerUrl\":\"https://ci.example.com/api/reports\"}", + "description": "Fetch the latest test coverage report in JSON format and return the content without saving to a file." + }, + { + "inputJson": "{\"reportType\":\"build\",\"outputFormat\":\"csv\",\"saveToFile\":true,\"filePath\":\"./build_report.csv\",\"authToken\":\"abcd1234token\",\"reportServerUrl\":\"https://jenkins.example.com/reports\"}", + "description": "Download build report from secured Jenkins server as CSV file using an API token and save locally." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "backend-development.createPipeline", + "description": "Creates a configurable backend processing pipeline based on provided stages for data or request handling. Accepts an array of pipeline stage objects, each defining a processing step with type and parameters. Returns a structured pipeline configuration object representing the composed sequential processing steps for backend services.", + "category": "backend-development", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "A unique name identifier for the pipeline to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "stages", + "type": "array", + "description": "An ordered array of objects defining each pipeline processing stage including type and configuration parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging for each pipeline stage execution.", + "required": false, + "defaultValue": "false" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration object specifying retry attempts and delay policy on stage failure (e.g., { maxRetries: 3, delayMs: 1000 }).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the configured backend pipeline, including its name, stages with configs, logging settings, and retry policy details." + }, + "aiAgent": { + "useCase": "Use this tool when constructing backend processing workflows where multiple sequential or conditional stages (e.g., authentication, validation, transformation, storage) need to be orchestrated in a defined order. It helps dynamically build reusable backend pipelines with custom behaviors and error handling.", + "limitations": "This tool does not execute the pipeline; it only creates the configuration representation. It assumes stage definitions and parameters follow supported schemas, but does not validate business logic correctness.", + "examples": [ + "Create a pipeline named 'userRegistration' with stages for input validation, authentication, and database persistence.", + "Build a data processing pipeline with an image resizing stage followed by a CDN upload stage.", + "Generate a pipeline that logs info, retries failed stages up to 3 times with a 1s delay, and disables logging." + ] + }, + "tags": [ + "backend", + "pipeline", + "processing", + "orchestration", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"userRegistration\",\"stages\":[{\"type\":\"validateInput\",\"params\":{\"requiredFields\":[\"email\",\"password\"]}},{\"type\":\"authenticateUser\",\"params\":{\"method\":\"oauth\"}},{\"type\":\"saveToDatabase\",\"params\":{\"table\":\"users\"}}],\"enableLogging\":true,\"retryPolicy\":{\"maxRetries\":2,\"delayMs\":500}}", + "description": "Creates a user registration pipeline with input validation, OAuth authentication, database persistence, logging enabled, and retry policy configured." + }, + { + "inputJson": "{\"pipelineName\":\"imageProcessor\",\"stages\":[{\"type\":\"resizeImage\",\"params\":{\"width\":800,\"height\":600}},{\"type\":\"uploadToCDN\",\"params\":{\"cdnProvider\":\"aws\",\"bucket\":\"images\"}}],\"enableLogging\":false}", + "description": "Creates an image processing pipeline resizing images and uploading to AWS CDN bucket, without logging and default retry policy." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "automation-frameworks.draftEmail", + "description": "Generates a professionally structured draft email based on provided recipients, subject, message body content, and optional tone. Accepts details like recipient emails, email subject, key message points, and preferred tone to produce a complete draft email text ready for review or sending.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses to include in the email's To field.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "The core content or message body text for the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the email, e.g., formal, friendly, persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses to include in the CC field.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses to include in the BCC field.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full draft email text with To, CC, BCC, Subject lines and composed message body." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a complete draft email automatically from basic input parameters such as recipients, subject, and message points to speed up communication and ensure a professional tone. It helps automate email composition in workflows requiring fast, consistent email drafts based on minimal inputs.", + "limitations": "This tool does not send the email or handle email formatting beyond plain text. It cannot customize complex HTML templates or include attachments. It also relies on input quality and may not understand idiomatic expressions or highly technical content without explicit guidance.", + "examples": [ + "Generate a formal business inquiry email to multiple recipients about scheduling a meeting.", + "Draft a friendly reminder email with a casual tone to a colleague about a project deadline.", + "Create a persuasive invitation email subject and body targeting potential event sponsors." + ] + }, + "tags": [ + "automation", + "email", + "communication", + "drafting", + "workflow", + "productivity" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"jane.doe@example.com\"],\"subject\":\"Meeting Request\",\"messageBody\":\"I would like to schedule a meeting next week to discuss project updates.\",\"tone\":\"formal\"}", + "description": "Create a formal email to request a meeting next week." + }, + { + "inputJson": "{\"recipients\":[\"team@example.com\"],\"subject\":\"Weekly Update\",\"messageBody\":\"Here are the key points from this week's progress:\",\"tone\":\"friendly\",\"cc\":[\"manager@example.com\"]}", + "description": "Draft a friendly weekly update email to the team and CC the manager." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "statistics-tools.generateCode", + "description": "Generates executable source code snippets for performing specified statistical analyses or modeling tasks. Accepts user input defining the analysis type (e.g., regression, hypothesis testing), target programming language (such as Python, R), and optional parameters like dataset structure and complexity. Outputs ready-to-run code tailored to the chosen language for statistical computation or modeling.", + "category": "statistics-tools", + "parameters": [ + { + "name": "analysisType", + "type": "string", + "description": "Type of statistical analysis to generate code for, e.g., 'linear regression', 'anova', 'k-means clustering'.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Target programming language for generated code, e.g., 'python', 'r'.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetDescription", + "type": "object", + "description": "Structured description of dataset including variable names and types, e.g., {\"variables\":[{\"name\":\"age\",\"type\":\"numeric\"},{\"name\":\"gender\",\"type\":\"categorical\"}]}.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDataImport", + "type": "boolean", + "description": "Whether to include code for importing the dataset from a CSV file or similar source.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of results output, e.g., 'print', 'plot', 'summary'.", + "required": false, + "defaultValue": "print" + }, + { + "name": "customParameters", + "type": "object", + "description": "Additional parameters specific to the analysis type or programming language, e.g., regression formula or clustering parameters.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code as a string and metadata such as the language and any required libraries." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to quickly generate accurate and ready-to-run code snippets to perform statistical analyses or build models in commonly used programming languages. Ideal for automating data analysis workflows or generating templates for users without manual coding.", + "limitations": "Does not execute or validate the generated code; the user must ensure the dataset matches the description. May not cover very complex or specialized statistical methods beyond common analyses.", + "examples": [ + "Generate Python code for linear regression including data import from CSV.", + "Produce R code for k-means clustering on a dataset with numeric variables only.", + "Create Python code to perform ANOVA with output as a summary table." + ] + }, + "tags": [ + "statistics", + "code-generation", + "data-analysis", + "modeling", + "python", + "r" + ], + "examples": [ + { + "inputJson": "{\"analysisType\":\"linear regression\",\"programmingLanguage\":\"python\",\"datasetDescription\":{\"variables\":[{\"name\":\"age\",\"type\":\"numeric\"},{\"name\":\"income\",\"type\":\"numeric\"}]} ,\"includeDataImport\":true,\"outputFormat\":\"summary\"}", + "description": "Generate Python code to perform a linear regression on variables age and income, including code to import data and output a summary." + }, + { + "inputJson": "{\"analysisType\":\"k-means clustering\",\"programmingLanguage\":\"r\",\"datasetDescription\":{\"variables\":[{\"name\":\"height\",\"type\":\"numeric\"},{\"name\":\"weight\",\"type\":\"numeric\"}]},\"includeDataImport\":false,\"outputFormat\":\"plot\"}", + "description": "Generate R code snippet for k-means clustering on numeric variables height and weight without data import, plotting the clusters." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "api-integration.downloadCode", + "description": "This tool downloads source code files or repositories from specified API endpoints or code hosting services. It accepts parameters including repository URL, authentication tokens, target file paths or branches, and optional filters. The tool fetches, processes, and returns the raw code content as a structured object with metadata for further integration or analysis.", + "category": "api-integration", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the code repository or API endpoint to download code from.", + "required": true, + "defaultValue": "" + }, + { + "name": "accessToken", + "type": "string", + "description": "Authentication token or key to access private repositories or APIs, if required.", + "required": false, + "defaultValue": "" + }, + { + "name": "branch", + "type": "string", + "description": "The specific branch or tag of the repository to download. Defaults to the main branch if unspecified.", + "required": false, + "defaultValue": "main" + }, + { + "name": "filePaths", + "type": "array", + "description": "An optional list of specific file paths to download from the repository. Downloads all files if empty or omitted.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "downloadFormat", + "type": "string", + "description": "Format of the downloaded code archive or files: 'zip', 'tar', or 'raw'. Defaults to 'raw'.", + "required": false, + "defaultValue": "raw" + }, + { + "name": "includeSubmodules", + "type": "boolean", + "description": "Flag to indicate whether to include git submodules in the download when applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download operation before aborting.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing downloaded code content as base64-encoded strings, file metadata including path, size, and last modified date, and status details of the download operation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically fetch source code or files from repository hosting services via APIs to integrate, analyze, or deploy code automatically. It is ideal for CI/CD pipelines, code auditing, or automated backups where specific branches or files must be retrieved with authentication.", + "limitations": "This tool does not perform code compilation, execution, or syntax validation. It depends on external service availability and permissions. Large repositories may require pagination or chunking at the API level which is outside its scope.", + "examples": [ + "Download the latest code from the main branch of a public GitHub repo.", + "Fetch specific configuration files from a private GitLab repository using a personal access token.", + "Retrieve a zipped archive of a repo’s release tag for deployment automation." + ] + }, + "tags": [ + "api", + "code", + "download", + "repository", + "integration", + "automation", + "source" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://api.github.com/repos/octocat/Hello-World\",\"branch\":\"main\",\"downloadFormat\":\"raw\"}", + "description": "Download the raw source code files from the main branch of the public 'Hello-World' GitHub repository." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/api/v4/projects/123456/repository/files\",\"accessToken\":\"glpat-abc123\",\"filePaths\":[\"config/app.config\",\"src/main.js\"],\"downloadFormat\":\"raw\"}", + "description": "Download specific files 'app.config' and 'main.js' from a private GitLab project using an access token." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://bitbucket.org/api/2.0/repositories/team/repo/downloads\",\"branch\":\"release-v1.2\",\"downloadFormat\":\"zip\"}", + "description": "Download a zip archive of the release-v1.2 branch from a Bitbucket repository." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "monitoring.composeEmail", + "description": "This tool accepts monitoring data inputs such as performance metrics, incident summaries, and recipient details, and composes a structured email report suitable for distribution. It processes the input by formatting textual summaries and embedding metrics in a clear, professional email body, outputting a ready-to-send email object including subject, body content, and recipient list.", + "category": "monitoring", + "parameters": [ + { + "name": "recipientEmails", + "type": "array", + "description": "List of recipient email addresses to send the report to", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email report", + "required": true, + "defaultValue": "" + }, + { + "name": "incidentSummary", + "type": "string", + "description": "Text summary describing recent monitoring incidents or alerts", + "required": false, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Key-value pairs of performance metrics to include in the email body", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include a timestamp of report generation in the email", + "required": false, + "defaultValue": "true" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any extra notes or remarks to append to the email body", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An email object containing the composed email subject, body text formatted with incident summaries and metrics, recipient list, and timestamp if included." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, professional monitoring status emails or incident reports for stakeholders based on structured monitoring data and summaries. It automates converting raw monitoring outputs into communication-ready email formats.", + "limitations": "This tool does not send emails; it only composes the email content and metadata. It does not parse or analyze raw monitoring logs beyond inserting provided summaries and metrics, nor handle email attachments or advanced formatting beyond text.", + "examples": [ + "Compose an incident report email summarizing last night's uptime and errors to the operations team.", + "Generate a weekly summary email with key performance metrics for management.", + "Create a notification email for alert resolution including timestamp and additional notes." + ] + }, + "tags": [ + "monitoring", + "email", + "reporting", + "communication", + "automation", + "incident", + "performance" + ], + "examples": [ + { + "inputJson": "{\"recipientEmails\":[\"ops-team@example.com\"],\"subject\":\"Nightly Monitoring Report\",\"incidentSummary\":\"System experienced a total downtime of 15 minutes due to database outage.\",\"performanceMetrics\":{\"CPU Usage\":\"75%\",\"Memory Usage\":\"68%\",\"Disk I/O\":\"120MB/s\"},\"includeTimestamp\":true,\"additionalNotes\":\"Recovery actions completed successfully.\"}", + "description": "Generate an email report summarizing last night's monitoring incidents and system performance metrics to the operations team, including a timestamp and additional notes." + }, + { + "inputJson": "{\"recipientEmails\":[\"management@example.com\"],\"subject\":\"Weekly Performance Summary\",\"performanceMetrics\":{\"Average Response Time\":\"200ms\",\"Error Rate\":\"0.02%\"},\"includeTimestamp\":false}", + "description": "Create a weekly summary email with selected performance metrics for management without including a timestamp." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "security-tools.generateMetric", + "description": "Generates security-related performance metrics by analyzing application or infrastructure logs and security telemetry. Accepts input parameters to specify metric type, time range, and data sources. Outputs aggregated metric values useful for monitoring security posture and detecting trends.", + "category": "security-tools", + "parameters": [ + { + "name": "metricType", + "type": "string", + "description": "Type of security metric to generate, e.g., 'failedLogins', 'intrusionAttempts', or 'patchComplianceRate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "Start timestamp for metric data aggregation in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End timestamp for metric data aggregation in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source identifiers (e.g., log systems, SIEM tools) to aggregate metric data from.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "aggregateBy", + "type": "string", + "description": "Optional field name to group results by, such as 'region', 'host', or 'application'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRawEvents", + "type": "boolean", + "description": "Whether to include raw event samples related to the metric in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the metric name, time range, aggregated value(s), optional grouping details, and optional raw event samples." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quantify security-related statistics over a specified time range to monitor incidents, compliance, or risk exposure, based on logs or telemetry from multiple data sources. It helps in proactive security analysis and reporting.", + "limitations": "Cannot fetch or process data from data sources itself; assumes access to pre-collected logs/telemetry. Metric definitions must be predefined and supported by underlying data.", + "examples": [ + "Generate the number of failed login attempts in the last 24 hours across all servers.", + "Calculate patch compliance rate by region for the past month.", + "Produce intrusion attempt counts aggregated by host for a custom time range." + ] + }, + "tags": [ + "security", + "monitoring", + "analytics", + "metrics", + "log-analysis", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"metricType\":\"failedLogins\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-02T00:00:00Z\",\"dataSources\":[\"auth-logs\"],\"aggregateBy\":\"host\",\"includeRawEvents\":true}", + "description": "Generate failed login metric for May 1, 2024, aggregated by host, include raw login failure events." + }, + { + "inputJson": "{\"metricType\":\"patchComplianceRate\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-30T23:59:59Z\",\"dataSources\":[\"vulnerability-scanner\"],\"aggregateBy\":\"region\"}", + "description": "Calculate patch compliance rate for April 2024 grouped by region without raw events." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "documentation-tools.analyzeSentence", + "description": "Analyzes a given sentence to provide linguistic and grammatical insights, including sentence type, complexity, entities mentioned, and readability metrics. Accepts a single sentence string input and returns a structured analysis useful for improving documentation clarity and style.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The sentence text to analyze for linguistic and grammatical properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to identify and extract named entities from the sentence (e.g., persons, organizations).", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) of the sentence to guide analysis.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An analysis object containing the sentence type (declarative, interrogative, imperative), grammatical complexity score, list of detected named entities with types, readability score (e.g., Flesch reading ease), and token count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to evaluate or improve the clarity and style of documentation sentences. It helps identify sentence structures, complexity, and key entities, which is valuable for rewriting, summarizing, or validating content quality in technical documents.", + "limitations": "Cannot fully replace human judgment for nuanced language and domain-specific terminology. Limited to single sentences only; it does not analyze paragraph or document level context.", + "examples": [ + "Analyze a sentence to determine if it is a question or command and what entities it contains.", + "Check the grammatical complexity and readability of a documentation sentence.", + "Extract named entities from a sentence to generate metadata tags." + ] + }, + "tags": [ + "documentation", + "analysis", + "linguistics", + "grammar", + "readability", + "entities" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"Does the system support multi-factor authentication?\",\"includeEntities\":true,\"language\":\"en\"}", + "description": "Analyze a question sentence about a system feature and identify entities." + }, + { + "inputJson": "{\"sentence\":\"Update the user guide to include the new authentication steps.\",\"includeEntities\":false}", + "description": "Analyze an imperative sentence instructing documentation updates without entity extraction." + }, + { + "inputJson": "{\"sentence\":\"Acme Corp released version 3.2 of the software.\",\"includeEntities\":true}", + "description": "Analyze a declarative sentence mentioning a company and a product version, extracting named entities." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "database-management.createService", + "description": "Creates a managed database service instance with specified configuration parameters including database type, version, storage size, and replication settings. The tool accepts detailed service specifications and provisioning options, configures cloud or on-premise resources accordingly, and returns a summary of the created service including connection endpoints and status.", + "category": "database-management", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "A unique name identifier for the database service instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database to create, e.g. 'PostgreSQL', 'MySQL', 'MongoDB'.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseVersion", + "type": "string", + "description": "Version of the database engine to deploy, e.g. '13.3' for PostgreSQL.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "Allocated storage size in gigabytes for the database instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "replicationEnabled", + "type": "boolean", + "description": "Flag to enable or disable replication for high availability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region in which to provision the database service, e.g. 'us-east-1'.", + "required": false, + "defaultValue": "" + }, + { + "name": "backupRetentionDays", + "type": "number", + "description": "Number of days to retain automated backups of the database.", + "required": false, + "defaultValue": "7" + }, + { + "name": "networkConfiguration", + "type": "object", + "description": "Network settings such as VPC ID, subnet IDs, and security group IDs for the service.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the created database service instance, including service ID, status, connection endpoints, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a new database service instance programmatically, such as in automated deployment pipelines, scalable infrastructure setups, or dynamic environment creation for testing and development. It is suited for creating cloud-managed or on-premises database instances with required specifications.", + "limitations": "This tool does not handle database schema initialization, user access management, or in-depth security policy enforcement beyond network configuration. It also does not support incremental modification of existing services; it is focused solely on creation.", + "examples": [ + "Create a PostgreSQL 13 instance with 100 GB storage and replication enabled in the 'us-west-2' region.", + "Provision a MySQL database with default backup retention disabled and custom network settings.", + "Set up a MongoDB service instance without replication and minimal storage for testing." + ] + }, + "tags": [ + "database", + "service", + "creation", + "provisioning", + "cloud", + "infrastructure", + "managed-db" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"prod-db\",\"databaseType\":\"PostgreSQL\",\"databaseVersion\":\"13.3\",\"storageSizeGB\":200,\"replicationEnabled\":true,\"region\":\"us-east-1\",\"backupRetentionDays\":14}", + "description": "Provision a production-grade PostgreSQL database with replication and extended backup retention in the US East region." + }, + { + "inputJson": "{\"serviceName\":\"test-mysql\",\"databaseType\":\"MySQL\",\"databaseVersion\":\"8.0\",\"storageSizeGB\":20,\"replicationEnabled\":false}", + "description": "Create a small MySQL instance for testing without replication and default backup settings." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "sales-automation.createFile", + "description": "Generates customizable sales-related files (e.g., proposals, quotes, contracts) by accepting structured sales data and template options. Processes inputs to produce formatted documents in PDF or DOCX formats for distribution, storage, or further automation.", + "category": "sales-automation", + "parameters": [ + { + "name": "fileType", + "type": "string", + "description": "The type of sales file to create (e.g., proposal, quote, contract).", + "required": true, + "defaultValue": "" + }, + { + "name": "contentData", + "type": "object", + "description": "Structured data including customer info, products, pricing, terms, and other sales details to populate the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Identifier of the template to use for formatting the sales file. Defaults to a standard sales template if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format, such as 'pdf' or 'docx'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeTermsAndConditions", + "type": "boolean", + "description": "Whether to append standard terms and conditions section at the end of the file.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for localization of the generated file content (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file name, file format, and the base64-encoded content of the generated sales file." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate creation of sales documents based on dynamic input data, enabling fast generation of customized proposals, quotes, or contracts to streamline sales workflow and improve consistency.", + "limitations": "Cannot generate files outside defined sales document types; limited to provided templates; does not support complex legal validations or electronic signature embedding.", + "examples": [ + "Create a PDF proposal for a customer with specified products and pricing.", + "Generate a DOCX contract using the company standard template and localized in Spanish.", + "Produce a quote document excluding terms and conditions section." + ] + }, + "tags": [ + "sales", + "automation", + "file-generation", + "document", + "proposal", + "quote", + "contract" + ], + "examples": [ + { + "inputJson": "{\"fileType\":\"proposal\",\"contentData\":{\"customerName\":\"Acme Corp\",\"products\":[{\"name\":\"Software License\",\"quantity\":10,\"unitPrice\":99.99}],\"contactEmail\":\"sales@acme.com\"},\"outputFormat\":\"pdf\",\"language\":\"en\"}", + "description": "Generate an English PDF sales proposal for Acme Corp with specified product and pricing." + }, + { + "inputJson": "{\"fileType\":\"contract\",\"contentData\":{\"customerName\":\"Beta Ltd\",\"contractStartDate\":\"2024-07-01\",\"contractEndDate\":\"2025-07-01\",\"price\":1500},\"templateId\":\"contract_standard\",\"outputFormat\":\"docx\",\"includeTermsAndConditions\":true,\"language\":\"en\"}", + "description": "Create a contract DOCX for Beta Ltd with terms and standard template applied." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "database-management.createWord", + "description": "This tool adds a new word entry to a specified database collection or table. It accepts the word text, optional definitions, part of speech, and related metadata. The tool inserts this data into the database and returns a confirmation with the new entry's unique identifier.", + "category": "database-management", + "parameters": [ + { + "name": "wordText", + "type": "string", + "description": "The text of the word to be added to the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "definitions", + "type": "array", + "description": "An array of definitions or meanings for the word.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "The grammatical category of the word (e.g., noun, verb, adjective).", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the word, defaulting to English if unspecified.", + "required": false, + "defaultValue": "English" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata about the word, such as synonyms, antonyms, or usage examples.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of the saved word entry with its unique identifier and stored data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a new dictionary or glossary entry in a database, especially when managing language resources, vocabulary lists, or lexicons programmatically. It helps formalize word entries with definitions and metadata to support language applications or educational tools.", + "limitations": "Cannot validate definitions' correctness or linguistic accuracy. Does not automatically handle duplicates or merge entries; that logic must be managed externally.", + "examples": [ + "Add the word 'serendipity' with its meaning and part of speech to the vocabulary database.", + "Create a new entry for the word 'run' as a verb with multiple definitions.", + "Insert a technical term with synonyms and usage examples into the database." + ] + }, + "tags": [ + "database", + "create", + "word", + "lexicon", + "dictionary", + "language", + "vocabulary" + ], + "examples": [ + { + "inputJson": "{\"wordText\":\"serendipity\",\"definitions\":[\"the occurrence of events by chance in a happy or beneficial way\"],\"partOfSpeech\":\"noun\",\"language\":\"English\",\"metadata\":{\"synonyms\":[\"luck\",\"fluke\"],\"examples\":[\"Finding the note was pure serendipity.\"]}}", + "description": "Add the English noun 'serendipity' with definition, synonyms, and example." + }, + { + "inputJson": "{\"wordText\":\"run\",\"definitions\":[\"move at a speed faster than a walk\",\"manage or operate\"],\"partOfSpeech\":\"verb\",\"language\":\"English\",\"metadata\":{\"examples\":[\"I run every morning.\",\"She runs a company.\"]}}", + "description": "Create multiple definitions for the verb 'run' with usage examples." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "testing-automation.createCode", + "description": "Generates automated test code snippets based on specified testing framework, programming language, and test scenario descriptions. Accepts input parameters like language, framework, test type, and user-provided scenario details, then produces ready-to-use test code that can be integrated into existing test suites.", + "category": "testing-automation", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "Target programming language for the generated test code (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "" + }, + { + "name": "testingFramework", + "type": "string", + "description": "Testing framework to generate code for (e.g., Jest, Mocha, PyTest, JUnit).", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of test to generate, such as unit, integration, or functional.", + "required": true, + "defaultValue": "" + }, + { + "name": "testScenario", + "type": "string", + "description": "Natural language description of the test scenario or behavior to automate.", + "required": true, + "defaultValue": "" + }, + { + "name": "useAssertions", + "type": "boolean", + "description": "Whether to include assertions in the generated test code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "setupCode", + "type": "string", + "description": "Optional setup or initialization code to prepend in the test file.", + "required": false, + "defaultValue": "" + }, + { + "name": "teardownCode", + "type": "string", + "description": "Optional cleanup or teardown code to append after tests.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string and metadata about the code such as language and framework." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to generate executable test code from plain language descriptions of test scenarios to speed up test automation creation, especially for commonly used programming languages and testing frameworks.", + "limitations": "The tool cannot execute or validate the generated test code; manual review and integration into projects is required. It supports only a subset of languages and frameworks as specified.", + "examples": [ + "Generate a JavaScript Jest unit test for a function that adds two numbers.", + "Create a Python PyTest integration test that checks user login behavior.", + "Produce a JUnit functional test for a calculator app's divide method handling divide-by-zero exceptions." + ] + }, + "tags": [ + "testing", + "automation", + "code generation", + "unit test", + "integration test", + "functional test" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"testingFramework\":\"Jest\",\"testType\":\"unit\",\"testScenario\":\"Verify that the add function returns the sum of two numbers.\",\"useAssertions\":true}", + "description": "Generate a Jest unit test for a simple add function in JavaScript." + }, + { + "inputJson": "{\"programmingLanguage\":\"Python\",\"testingFramework\":\"PyTest\",\"testType\":\"integration\",\"testScenario\":\"Test user login works with valid credentials.\",\"useAssertions\":true}", + "description": "Generate a PyTest integration test that automates user login validation." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "etl-processes.generateCode", + "description": "Generates customized ETL (Extract, Transform, Load) scripts based on user-provided configuration parameters such as data source, transformations, and target destination. Accepts JSON configurations outlining source type, fields to transform, transformation logic, and load options, then produces executable code scripts in languages like Python or SQL to automate data workflows.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceType", + "type": "string", + "description": "Type of the data source (e.g., 'csv', 'database', 'api').", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration details for accessing the data source (e.g., file path, connection strings).", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "List of transformation operations to apply on the data each defined as an object with operation type and parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationType", + "type": "string", + "description": "Type of the data destination for loading the processed data (e.g., 'database', 'datawarehouse', 'file').", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationConfig", + "type": "object", + "description": "Configuration details for the destination (e.g., connection info, file path).", + "required": true, + "defaultValue": "" + }, + { + "name": "scriptLanguage", + "type": "string", + "description": "The programming or scripting language for the generated code (e.g., 'python', 'sql').", + "required": false, + "defaultValue": "python" + }, + { + "name": "includeLogging", + "type": "boolean", + "description": "Flag to include logging statements in the generated script.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated ETL script as a string under 'code' and metadata like language and estimated execution steps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate ETL scripts tailored to specific data sources, transformations, and destinations based on structured configuration inputs. It helps quickly automate data ingestion workflows without manual coding.", + "limitations": "Does not support real-time ETL streaming code generation. Cannot validate data correctness or generate full production-grade error handling beyond basic logging. Complex custom transformations might need manual extension.", + "examples": [ + "Generate a Python ETL script to extract CSV data, apply column mappings and filters, and load into a Postgres database.", + "Create a SQL script that moves data from one database table to another with aggregation and data type conversion." + ] + }, + "tags": [ + "etl", + "code-generation", + "automation", + "data-engineering", + "scripting" + ], + "examples": [ + { + "inputJson": "{\n \"sourceType\": \"csv\",\n \"sourceConfig\": {\"path\": \"/data/input.csv\", \"delimiter\": \",\"},\n \"transformations\": [{\"operation\": \"filter\", \"condition\": \"age > 18\"}, {\"operation\": \"map\", \"mappings\": {\"name\": \"upper(name)\", \"birth_date\": \"to_date(birth_date, 'YYYY-MM-DD')\"}}],\n \"destinationType\": \"database\",\n \"destinationConfig\": {\"dbType\": \"postgres\", \"connectionString\": \"postgresql://user:pass@localhost:5432/mydb\", \"tableName\": \"adult_users\"},\n \"scriptLanguage\": \"python\",\n \"includeLogging\": true\n}", + "description": "Generate a Python ETL script that reads a CSV, filters age > 18, transforms 'name' to uppercase, converts birth_date to date, and loads to a Postgres table." + }, + { + "inputJson": "{\n \"sourceType\": \"database\",\n \"sourceConfig\": {\"dbType\": \"mysql\", \"connectionString\": \"mysql://user:pass@localhost:3306/db1\", \"query\": \"SELECT * FROM sales\"},\n \"transformations\": [{\"operation\": \"aggregate\", \"groupBy\": [\"region\"], \"metrics\": {\"total_sales\": \"sum(amount)\"}}],\n \"destinationType\": \"database\",\n \"destinationConfig\": {\"dbType\": \"bigquery\", \"connectionString\": \"bigquery://project.dataset\", \"tableName\": \"regional_sales\"},\n \"scriptLanguage\": \"sql\",\n \"includeLogging\": false\n}", + "description": "Generate a SQL script that aggregates sales by region from MySQL source and loads results into BigQuery." + } + ], + "qualityScore": 0.91, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "statistics-tools.createKPI", + "description": "Generates Key Performance Indicators (KPIs) by processing input datasets according to specified metric definitions and aggregation methods. Accepts raw or aggregated data along with KPI calculation parameters, processes the data to compute quantitative metrics, and outputs structured KPI results with labels, values, and optional trend indicators.", + "category": "statistics-tools", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "An array of data objects representing raw or pre-aggregated records used for KPI calculations. Each object should contain fields relevant to specified metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric definitions specifying which data fields to measure and the aggregation functions (e.g., sum, average, count) to apply for KPI calculation.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to apply on the dataset before calculating KPIs. Filters are field-value pairs that restrict data to specific subsets.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "array", + "description": "Optional list of fields to group the data by before aggregation, enabling segmented KPIs (e.g., by region or product category).", + "required": false, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range object with 'start' and 'end' ISO strings to limit the data considered to a specific time frame.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "If true, calculates simple trend indicators comparing current KPI values with prior period values where applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing calculated KPIs as key-value pairs, each with metric name, computed value, and optionally trend direction and percentage change." + }, + "aiAgent": { + "useCase": "Use this tool when you need to derive actionable KPIs from raw or aggregated data for monitoring business performance or operational metrics. It supports custom metrics, filtering, grouping, and time-bound analysis, facilitating dynamic KPI generation for dashboards or reports.", + "limitations": "This tool performs numeric aggregation and simple trend computations but does not conduct predictive analytics, causal inference, or handle unstructured data. Data quality and schema consistency are assumed for reliable outputs.", + "examples": [ + "Calculate total sales and average order value filtered by region and date range.", + "Generate KPI metrics segmented by product category with trend comparison to previous month.", + "Compute count and sum metrics from sales dataset without filters to get overall KPIs." + ] + }, + "tags": [ + "statistics", + "analytics", + "KPI", + "aggregation", + "business-intelligence", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"date\":\"2024-05-01\",\"region\":\"North\",\"sales\":100,\"orders\":2},{\"date\":\"2024-05-02\",\"region\":\"North\",\"sales\":150,\"orders\":3},{\"date\":\"2024-05-01\",\"region\":\"South\",\"sales\":200,\"orders\":4}],\"metrics\":[{\"field\":\"sales\",\"aggregation\":\"sum\"},{\"field\":\"orders\",\"aggregation\":\"count\"}],\"filters\":{\"region\":\"North\"},\"dateRange\":{\"start\":\"2024-05-01\",\"end\":\"2024-05-31\"},\"includeTrends\":false}", + "description": "Calculate sum of sales and count of orders for the North region in May 2024 without trends." + }, + { + "inputJson": "{\"dataset\":[{\"date\":\"2024-05-01\",\"productCategory\":\"Electronics\",\"sales\":300},{\"date\":\"2024-05-01\",\"productCategory\":\"Clothing\",\"sales\":150},{\"date\":\"2024-05-02\",\"productCategory\":\"Electronics\",\"sales\":250}],\"metrics\":[{\"field\":\"sales\",\"aggregation\":\"sum\"}],\"groupBy\":[\"productCategory\"],\"includeTrends\":true}", + "description": "Generate sum of sales KPIs grouped by product category including trend comparison." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "statistics-tools.createDashboard", + "description": "Creates an interactive statistical dashboard from provided dataset and configuration. Accepts raw or processed tabular data and a dashboard layout definition. Processes data to generate visualizations like charts and tables and composes them into a configurable dashboard output suitable for web or analytics platforms.", + "category": "statistics-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing tabular data, each object is a row with named columns as keys.", + "required": true, + "defaultValue": "" + }, + { + "name": "layoutConfig", + "type": "object", + "description": "Configuration object defining the dashboard layout, including charts type, their data mappings, and layout positions.", + "required": true, + "defaultValue": "" + }, + { + "name": "theme", + "type": "string", + "description": "Optional theme for dashboard styling, e.g., 'light', 'dark'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "filterOptions", + "type": "object", + "description": "Optional filters to be applied on the data before visualization, including filter fields and criteria.", + "required": false, + "defaultValue": "" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Optional auto-refresh interval in seconds for updating dashboard data dynamically if connected to live source.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns a dashboard object with rendering instructions, visual components, and data bindings ready for display in visualization environments." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a customizable statistical dashboard from structured data to visualize key metrics and trends interactively. Suitable for exploratory data analysis or presentation of statistical insights without manual coding.", + "limitations": "This tool does not perform complex data cleaning or advanced statistical modeling beyond basic filtering and aggregation. It needs input data to be preprocessed and structured appropriately and does not generate predictive analytics.", + "examples": [ + "Create a sales performance dashboard from monthly sales data with bar charts and filters by region.", + "Generate a dashboard summarizing customer demographics with pie charts and heatmaps using provided survey data.", + "Build an interactive dashboard with time-series plots and summary tables from financial metrics updated every 10 minutes." + ] + }, + "tags": [ + "statistics", + "dashboard", + "data-visualization", + "analytics", + "interactive", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":1000,\"region\":\"North\"},{\"month\":\"Feb\",\"sales\":1500,\"region\":\"North\"},{\"month\":\"Jan\",\"sales\":1200,\"region\":\"South\"}],\"layoutConfig\":{\"charts\":[{\"type\":\"bar\",\"title\":\"Sales by Month\",\"xField\":\"month\",\"yField\":\"sales\",\"filterable\":true}],\"layout\":\"grid\"},\"theme\":\"light\",\"filterOptions\":{\"region\":[\"North\"]},\"refreshInterval\":0}", + "description": "Generate a bar chart dashboard for monthly sales filtered by 'North' region with a light theme." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "statistics-tools.createInstance", + "description": "Creates a new statistical analysis instance configured with specified datasets, chosen statistical models, and relevant parameters. Accepts dataset identifiers, model selection, and model parameters, then initializes an analysis environment for downstream statistical computations. Returns a unique instance ID and configuration summary.", + "category": "statistics-tools", + "parameters": [ + { + "name": "datasetIds", + "type": "array", + "description": "List of identifiers for datasets to include in the analysis instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "Specifies the statistical model to initialize (e.g., linearRegression, logisticRegression, kMeans).", + "required": true, + "defaultValue": "" + }, + { + "name": "modelParameters", + "type": "object", + "description": "Key-value pairs of parameters to configure the chosen statistical model (e.g., alpha for regularization).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "instanceName", + "type": "string", + "description": "Optional user-defined name for the statistical instance to facilitate identification.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of the analysis instance's operations for debugging or audit purposes.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique instance identifier, the applied configuration details, and a status indicating successful creation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to set up a controlled and reproducible environment for statistical analysis involving multiple datasets and configurable models. Ideal for initializing specific modeling workflows before running calculations, predictions, or evaluations.", + "limitations": "This tool only sets up the analysis instance and does not execute the statistical computations or return model results. Dataset validation or preprocessing must be handled separately.", + "examples": [ + "Create an instance using three datasets with a linear regression model and default parameters.", + "Initialize a clustering analysis instance with kMeans model and specify the number of clusters.", + "Set up a logistic regression instance with custom regularization parameters and enable logging for traceability." + ] + }, + "tags": [ + "statistics", + "modeling", + "instance creation", + "analysis setup", + "data science", + "statistical models" + ], + "examples": [ + { + "inputJson": "{\"datasetIds\":[\"ds1001\",\"ds1002\"],\"modelType\":\"linearRegression\",\"modelParameters\":{},\"instanceName\":\"SalesPrediction2024\"}", + "description": "Create a linear regression instance named 'SalesPrediction2024' using two datasets with default model parameters." + }, + { + "inputJson": "{\"datasetIds\":[\"userClusterData\"],\"modelType\":\"kMeans\",\"modelParameters\":{\"numClusters\":5},\"enableLogging\":true}", + "description": "Initialize a kMeans clustering instance on the 'userClusterData' dataset with 5 clusters and enable logging for debugging." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "statistics-tools.createComment", + "description": "Generates a structured, context-aware comment intended for statistical analyses or modeling results. Accepts raw statistical result summaries or model outputs as text input, processes to identify key points, and outputs a formatted comment highlighting insights, warnings, or recommendations relevant to the statistical context.", + "category": "statistics-tools", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw text summarizing statistical analysis or model results.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentType", + "type": "string", + "description": "Type of comment to create: 'summary', 'insight', 'warning', or 'recommendation'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeStatistics", + "type": "boolean", + "description": "Whether to include specific statistical values (like p-values, confidence intervals) in the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the comment output (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated comment in characters.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated comment string and metadata such as comment length and type." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents needing to generate clear, context-sensitive comments or narratives related to statistical results, for reports, dashboards, or explanations. It supports summarizing key findings, highlighting warnings (e.g., assumptions violated), or providing actionable recommendations based on analysis outputs.", + "limitations": "Cannot validate or independently analyze raw data or verify statistical correctness; relies on the quality and clarity of the input text provided.", + "examples": [ + "Generate a concise summary comment for logistic regression output.", + "Create a warning comment highlighting potential issues in a Bayesian model analysis.", + "Produce a recommendation comment based on ANOVA test results." + ] + }, + "tags": [ + "statistics", + "comments", + "reporting", + "analysis", + "modeling" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"The linear regression model showed a significant relationship between age and income with p < 0.01 and R-squared 0.75.\",\"commentType\":\"summary\",\"includeStatistics\":true,\"language\":\"en\",\"maxLength\":200}", + "description": "Generate a summary comment including key statistical values from a regression output." + }, + { + "inputJson": "{\"inputText\":\"Residuals indicate heteroscedasticity violating model assumptions.\",\"commentType\":\"warning\",\"includeStatistics\":false,\"language\":\"en\",\"maxLength\":150}", + "description": "Create a warning comment about model assumption violations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "statistics-tools.createVideo", + "description": "This tool accepts statistical data inputs and configuration parameters to create a video visualization. It processes the data to generate animated charts, graphs, or statistical illustrations over time and outputs a video file URL or binary. This supports formats like MP4, aiming to convey complex statistics dynamically through video.", + "category": "statistics-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points or records to visualize, each item should correspond to a statistical variable or observation required for the video charts.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart or graph for visualization (e.g., line, bar, scatter, histogram).", + "required": true, + "defaultValue": "line" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "Total length of the output video in seconds.", + "required": true, + "defaultValue": "30" + }, + { + "name": "resolution", + "type": "object", + "description": "Resolution of output video as width and height in pixels, e.g., {\"width\":1280,\"height\":720}.", + "required": false, + "defaultValue": "{\"width\":1280,\"height\":720}" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frames per second for video smoothness.", + "required": false, + "defaultValue": "30" + }, + { + "name": "title", + "type": "string", + "description": "Optional title text to display on the video.", + "required": false, + "defaultValue": "" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color for the video canvas (CSS color string).", + "required": false, + "defaultValue": "white" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining chart elements or colors.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing video URL or base64 data and metadata such as format and duration." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to represent time-series or multi-dimensional statistical data as a video for presentations, reports, or dynamic analysis. It helps visualize trends and comparisons that evolve over time that cannot be easily conveyed in static images.", + "limitations": "Cannot generate interpretive analysis or automated narrative explanations; requires properly structured input data; large datasets may require preprocessing.", + "examples": [ + "Create a 60-second video showing monthly sales data as animated bar charts.", + "Generate a scatter plot video visualizing two variables changing over time.", + "Produce a line chart video of temperature variations throughout a year." + ] + }, + "tags": [ + "statistics", + "video", + "visualization", + "chart", + "animation", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"value\":120},{\"month\":\"Feb\",\"value\":150},{\"month\":\"Mar\",\"value\":170}],\"chartType\":\"bar\",\"durationSeconds\":45,\"resolution\":{\"width\":1920,\"height\":1080},\"title\":\"Quarterly Sales\",\"includeLegend\":true}", + "description": "Generate a 45-second 1080p bar chart video representing quarterly sales data with a title and legend." + }, + { + "inputJson": "{\"data\":[{\"time\":1,\"x\":5,\"y\":10},{\"time\":2,\"x\":6,\"y\":12},{\"time\":3,\"x\":4,\"y\":9}],\"chartType\":\"scatter\",\"durationSeconds\":30,\"frameRate\":24,\"backgroundColor\":\"#f0f0f0\"}", + "description": "Create a 30-second scatter plot video with custom background and 24 fps for variables x and y over time." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "statistics-tools.createComponent", + "description": "Creates a statistical component (e.g., principal component) from input data using dimensionality reduction or component analysis techniques. Accepts numeric datasets and parameters specifying the component analysis method, then processes the data to extract components and returns component vectors, explained variance, and related metadata.", + "category": "statistics-tools", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "A 2D numeric array representing the dataset (rows as observations, columns as features).", + "required": true, + "defaultValue": "" + }, + { + "name": "method", + "type": "string", + "description": "The component analysis method to use (e.g., 'PCA', 'ICA').", + "required": false, + "defaultValue": "\"PCA\"" + }, + { + "name": "numComponents", + "type": "number", + "description": "The number of components to extract from the dataset.", + "required": false, + "defaultValue": "2" + }, + { + "name": "scaleData", + "type": "boolean", + "description": "Whether to scale features to zero mean and unit variance before analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "whiten", + "type": "boolean", + "description": "Whether to whiten the components (make their covariance identity).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted components matrix, explained variance ratios (or equivalent), the mean vector of original data, and method summary." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to perform dimensionality reduction or identify statistically independent components from numerical data for visualization, noise reduction, or feature extraction tasks. It helps create reusable statistical components from raw data to simplify downstream analysis or modeling.", + "limitations": "Does not preprocess missing or non-numeric data; assumes input is clean numeric arrays. Limited to common component analysis techniques (PCA, ICA); does not support complex custom methods. Not designed for very large datasets without prior sampling or chunking.", + "examples": [ + "Create the first three principal components from a dataset of gene expression measurements.", + "Extract 5 independent components using ICA from EEG time series data.", + "Obtain two principal components with scaled data from a customer behavior dataset." + ] + }, + "tags": [ + "statistics", + "dimensionalityReduction", + "componentAnalysis", + "PCA", + "ICA", + "featureExtraction" + ], + "examples": [ + { + "inputJson": "{\"inputData\": [[2.5, 3.3, 0.8], [1.4, 2.7, 1.1], [3.2, 3.9, 0.5], [2.9, 3.1, 0.9]], \"method\": \"PCA\", \"numComponents\": 2, \"scaleData\": true, \"whiten\": false}", + "description": "Perform PCA on a small dataset with 3 features and extract 2 components with scaling enabled." + }, + { + "inputJson": "{\"inputData\": [[1, 0, 1], [0, 1, 0], [1, 1, 0], [0, 0, 1]], \"method\": \"ICA\", \"numComponents\": 3, \"scaleData\": true, \"whiten\": true}", + "description": "Use ICA to extract 3 components from binary feature data, applying whitening." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "text-analysis.uploadTable", + "description": "Uploads a tabular data input (CSV, TSV, or JSON array) for natural language processing analysis. It parses the table, validates formatting, and prepares the data for downstream text-analysis tasks, returning structured metadata such as column names, row counts, and data types.", + "category": "text-analysis", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "The raw tabular data input in CSV, TSV, or JSON array string format to upload and analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The format of the input tableData; valid options are 'csv', 'tsv', or 'json'.", + "required": true, + "defaultValue": "" + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the input tableData includes a header row with column names; relevant for CSV/TSV inputs.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Custom delimiter for CSV/TSV parsing; defaults to comma for CSV and tab for TSV if not specified.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with parsed column names, number of rows, detected data types per column, and validation status with any parsing errors." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ingest structured tabular data provided as text to facilitate subsequent NLP analysis, such as entity extraction, summarization, or classification of table content. It is designed to standardize and validate tabular inputs from CSV, TSV, or JSON arrays before further processing.", + "limitations": "Cannot process binary files or spreadsheet formats like XLSX directly; input must be a string representation. It does not perform semantic analysis itself, only prepares and validates the table structure.", + "examples": [ + "Upload a CSV string containing product reviews to prepare for sentiment analysis.", + "Ingest TSV data with headers defining customer feedback fields to enable keyword extraction.", + "Load a JSON array of objects representing survey responses to standardize columns for clustering analysis." + ] + }, + "tags": [ + "text-analysis", + "upload", + "table", + "csv", + "tsv", + "json", + "data-ingestion", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"name,age,comment\\nAlice,30,Good product\\nBob,25,Fast shipping\",\"format\":\"csv\",\"hasHeader\":true}", + "description": "Uploading a small CSV table with headers for processing customer comments." + }, + { + "inputJson": "{\"tableData\":\"[{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30,\\\"comment\\\":\\\"Good product\\\"},{\\\"name\\\":\\\"Bob\\\",\\\"age\\\":25,\\\"comment\\\":\\\"Fast shipping\\\"}]\",\"format\":\"json\"}", + "description": "Uploading a JSON array of survey responses for analysis." + }, + { + "inputJson": "{\"tableData\":\"name\\tage\\tcomment\\nAlice\\t30\\tGood product\\nBob\\t25\\tFast shipping\",\"format\":\"tsv\",\"hasHeader\":true}", + "description": "Uploading TSV formatted client feedback for NLP tasks." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "statistics-tools.createArticle", + "description": "Generates a detailed, well-structured article explaining a specific statistical concept or method based on input parameters. Accepts statistical topic keywords, target audience level, and optional example data descriptions to produce a clear, educational article suitable for academic or professional use.", + "category": "statistics-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The statistical concept or method the article will explain (e.g., regression analysis, Bayesian inference).", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceLevel", + "type": "string", + "description": "Target audience knowledge level (e.g., beginner, intermediate, advanced), determining the complexity and depth of explanation.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include practical examples illustrating the statistical concept.", + "required": false, + "defaultValue": "true" + }, + { + "name": "exampleDataDescription", + "type": "string", + "description": "Optional description of example data or scenario to use in the article if examples are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "articleLength", + "type": "string", + "description": "Desired length of the article (e.g., short, medium, long), affecting the detail and coverage.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article as a string with structured sections such as introduction, explanation, examples, and conclusion." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate clear, educational content explaining statistical methods for learning or documentation purposes. It helps produce customized articles adjusted for audience expertise and desired detail, supporting teaching, presentations, or report writing.", + "limitations": "Cannot generate original research data or deeply technical proofs; focused on explanation and pedagogical content only. The quality depends on the clarity of topic and input parameters and may require human review for accuracy.", + "examples": [ + "Generate an article explaining linear regression for beginners with examples.", + "Create a detailed article on Bayesian inference for an advanced audience without examples.", + "Produce a short medium-level article describing hypothesis testing including real-world example data." + ] + }, + "tags": [ + "statistics", + "article generation", + "educational content", + "statistical methods", + "report writing", + "explanations" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"linear regression\",\"audienceLevel\":\"beginner\",\"includeExamples\":true,\"exampleDataDescription\":\"predicting house prices based on size\",\"articleLength\":\"medium\"}", + "description": "Generate a medium-length article explaining linear regression for beginners including an example about predicting house prices." + }, + { + "inputJson": "{\"topic\":\"Bayesian inference\",\"audienceLevel\":\"advanced\",\"includeExamples\":false,\"articleLength\":\"long\"}", + "description": "Create a long, detailed article on Bayesian inference targeting advanced readers without including examples." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "text-analysis.renderSentence", + "description": "This tool accepts a structured input of sentence components or a plain sentence string and processes it to generate a fully formatted, natural-language sentence. It can adjust style, tone, and apply punctuation or capitalization rules to render the sentence output tailored to the specified parameters.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw sentence text to be rendered and formatted.", + "required": false, + "defaultValue": "" + }, + { + "name": "components", + "type": "array", + "description": "An array of sentence components (words, phrases) to be composed and rendered into a full sentence. Ignored if inputText is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the rendered sentence, e.g., formal, casual, friendly, assertive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "Whether to capitalize the first letter of the rendered sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "punctuation", + "type": "string", + "description": "Punctuation to append at the end of the sentence, e.g., period, exclamation, question mark.", + "required": false, + "defaultValue": "." + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully rendered sentence string with applied formatting, tone, punctuation, and capitalization." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate or format a natural language sentence from raw text or components, applying stylistic preferences such as tone, punctuation, and capitalization to improve readability or meet specific communication styles.", + "limitations": "Cannot generate complex multi-sentence paragraphs or perform deep semantic rewriting. It only formats or renders single sentences based on given text or components.", + "examples": [ + "Render a friendly sentence from the phrase components ['hello', 'world']", + "Format the sentence 'how are you' with a question mark and casual tone", + "Capitalize and punctuate a raw input sentence" + ] + }, + "tags": [ + "text-analysis", + "rendering", + "sentence", + "natural-language", + "formatting", + "style", + "punctuation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"how are you\",\"tone\":\"casual\",\"capitalize\":true,\"punctuation\":\"?\"}", + "description": "Render a casual, capitalized, punctuated question from a raw sentence string." + }, + { + "inputJson": "{\"components\":[\"please\",\"turn\",\"off\",\"the\",\"lights\"],\"tone\":\"formal\",\"capitalize\":true,\"punctuation\":\".\"}", + "description": "Render a formal, capitalized request sentence from components." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "text-analysis.formatLink", + "description": "Formats and sanitizes a raw URL string to produce a clean, properly structured hyperlink. Accepts a string input representing a URL or partial URL, optionally adds protocol if missing, encodes characters as needed, and outputs a safe, well-formed link string suitable for embedding in text or HTML.", + "category": "text-analysis", + "parameters": [ + { + "name": "rawUrl", + "type": "string", + "description": "The input string containing the raw URL or partial URL to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "addProtocolIfMissing", + "type": "boolean", + "description": "Indicates whether to prepend 'https://' if the URL lacks a protocol.", + "required": false, + "defaultValue": "true" + }, + { + "name": "encodeSpecialCharacters", + "type": "boolean", + "description": "Whether to percent-encode unsafe characters in the URL path and query components.", + "required": false, + "defaultValue": "true" + }, + { + "name": "truncateLength", + "type": "number", + "description": "Maximum length of the output formatted link string; truncates with ellipsis if exceeded. 0 for no truncation.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted hyperlink string under 'formattedLink' and a boolean 'hasProtocol' indicating if protocol is present." + }, + "aiAgent": { + "useCase": "Use this tool to clean up and standardize user-provided URLs or extracted links before displaying them in UI elements or embedding in HTML. It helps ensure links are clickable, safe, and consistent in format, improving user experience and reducing broken or unsafe links.", + "limitations": "This tool does not validate that the URL actually resolves or is reachable. It also does not check for malicious content or URLs beyond formatting and encoding. It does not generate HTML anchor tags, only the URL string.", + "examples": [ + "Format a user-entered URL missing protocol to ensure 'https://' is included.", + "Clean up URLs extracted from noisy text for display in a web app with proper encoding and optional truncation.", + "Standardize a list of URLs uniformly before saving or presenting them." + ] + }, + "tags": [ + "text-analysis", + "formatting", + "url", + "link", + "sanitization", + "encoding", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"rawUrl\":\"www.example.com/path?query=1&sort=asc\",\"addProtocolIfMissing\":true,\"encodeSpecialCharacters\":true,\"truncateLength\":0}", + "description": "Formats a URL missing protocol, adds https://, encodes special characters, no truncation" + }, + { + "inputJson": "{\"rawUrl\":\"http://unsafe-url.com/space here\",\"addProtocolIfMissing\":false,\"encodeSpecialCharacters\":true,\"truncateLength\":50}", + "description": "Formats URL with existing protocol, encodes spaces, truncates output if longer than 50 chars" + }, + { + "inputJson": "{\"rawUrl\":\"example.com\",\"addProtocolIfMissing\":true,\"encodeSpecialCharacters\":false,\"truncateLength\":0}", + "description": "Adds protocol to URL without encoding characters" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "text-analysis.renderSummary", + "description": "Generates a concise summary of a provided text document by extracting key points and main ideas. Accepts raw text input and optional parameters to control summary length and detail level, outputting a structured text summary suitable for quick understanding of the content.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The full input text document to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "The maximum length of the summary in number of words.", + "required": false, + "defaultValue": "150" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Level of detail in the summary; options are 'brief', 'normal', or 'detailed'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text to improve processing accuracy.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary text and metadata about the summary such as word count and detail level." + }, + "aiAgent": { + "useCase": "Use this tool when you need a concise and meaningful summary of lengthy or complex text documents, such as articles, reports, or emails, to quickly grasp key information without reading the full content. It helps in information triage, decision-making, or content overview.", + "limitations": "May not capture all nuances or context-specific meanings, and quality depends on input text language and clarity. Not suitable for summarizing text with highly technical jargon without prior customization.", + "examples": [ + "Summarize a long news article about climate change impacts.", + "Generate a brief summary of a technical report for a project update.", + "Create a detailed summary of a research paper abstract for review." + ] + }, + "tags": [ + "text-analysis", + "summary", + "natural-language-processing", + "document", + "nlp", + "summarization" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Recent studies indicate a rapid increase in global temperatures, leading to severe weather events and rising sea levels. Governments worldwide are urged to implement sustainable policies to mitigate the adverse effects of climate change.\",\"maxSummaryLength\":50,\"detailLevel\":\"brief\",\"language\":\"en\"}", + "description": "Produce a brief summary of a news text on climate change." + }, + { + "inputJson": "{\"text\":\"Our quarterly financial report shows a 12% increase in revenue compared to the previous quarter, driven primarily by growth in the technology sector. Expenses were kept under control, improving net profit margins.\",\"maxSummaryLength\":100,\"detailLevel\":\"normal\",\"language\":\"en\"}", + "description": "Generate a normal detail level summary of a financial report extract." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "text-analysis.formatArticle", + "description": "This tool accepts a raw article text input along with optional formatting options and outputs a well-structured, formatted article string. It processes the raw content to apply paragraph breaks, heading styles, and optional markdown or HTML formatting based on configuration.", + "category": "text-analysis", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The unformatted article text input to be processed and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The formatting style to apply to the article: 'plain', 'markdown', or 'html'.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "addHeadings", + "type": "boolean", + "description": "Whether to detect and format headings within the article text (true to enable).", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum character length for each line before inserting a line break (only for 'plain' format).", + "required": false, + "defaultValue": "80" + }, + { + "name": "includeTOC", + "type": "boolean", + "description": "Whether to generate and include a table of contents based on headings detected (true to include).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article text as a string under 'formattedText'." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or minimally formatted article text and need it converted into a clean, readable format according to style preferences like markdown or HTML. Ideal for preparing content for blogs, documentation, or publishing platforms.", + "limitations": "Does not perform deep semantic rewriting or content summarization. Heading detection is based on simple heuristics and may not be perfect. Does not perform language translation or fact-checking.", + "examples": [ + "Format a raw article into markdown with headings and a table of contents.", + "Convert plain text article to HTML format with paragraph and heading tags.", + "Prepare a plain formatted text version of an article ensuring line length limits for email or plain text display." + ] + }, + "tags": [ + "text-analysis", + "formatting", + "article", + "markdown", + "html", + "content-preparation" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"Introduction\\nThis article discusses the impact of AI.\\nConclusion\\nAI will transform society.\",\"formatStyle\":\"markdown\",\"addHeadings\":true,\"includeTOC\":true}", + "description": "Format a simple article with headings into markdown including a table of contents." + }, + { + "inputJson": "{\"rawText\":\"This is a raw article without headings. It needs plain formatting.\",\"formatStyle\":\"plain\",\"maxLineLength\":50}", + "description": "Format an article as plain text wrapping lines at 50 characters without headings." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "text-analysis.draftSummary", + "description": "This tool accepts a block of text or document content as input and generates a concise, coherent summary capturing the main points and essential information. It uses natural language processing techniques to analyze the input and produce a readable, shortened text summary.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The full text or document content to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired approximate length of the summary in number of sentences; if omitted, a default length is used.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text to tailor summarization appropriately (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to include extracted key phrases or bullet points alongside the summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text, language detected/used, and optionally an array of key phrases if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate a brief overview of a longer document, article, or text block to assist in understanding, reporting, or communicating essential information without reading the full text.", + "limitations": "It may not capture all nuanced details or context from very specialized or technical documents. The quality depends on input clarity and language supported.", + "examples": [ + "Summarize the following article for a quick report.", + "Create a short summary for this meeting transcript.", + "Generate key points and a summary from this research abstract." + ] + }, + "tags": [ + "text", + "summary", + "NLP", + "document", + "natural-language-processing", + "summarization", + "concise" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"The global economy has been affected by numerous factors recently, including supply chain disruptions, inflationary pressures, and shifting consumer behavior. Experts suggest that recovery will likely be gradual as these challenges ease over the next year.\",\"summaryLength\":2}", + "description": "Summarizing a short economics news paragraph into 2 sentences." + }, + { + "inputJson": "{\"inputText\":\"Artificial intelligence (AI) continues to transform industries by automating tasks and providing insights through data analysis. Its applications range from healthcare diagnostics to automated customer service, driving efficiency and innovation.\",\"includeKeyPhrases\":true}", + "description": "Generating a summary with key phrases for a technology-related text." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "text-analysis.draftInvoice", + "description": "Generates a professional invoice draft based on client, itemized services/products, pricing, and tax details provided as input. Processes structured data to format an invoice text output suitable for review, editing, and sending to clients, including totals and due dates.", + "category": "text-analysis", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name or company name of the invoice recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientAddress", + "type": "string", + "description": "Postal address of the client for invoice billing purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier for the invoice to ensure traceability.", + "required": true, + "defaultValue": "" + }, + { + "name": "issueDate", + "type": "string", + "description": "Date when the invoice is issued in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "Array of objects representing line items, each with description, quantity, unitPrice.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a percentage (e.g., 7.5 for 7.5%).", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for amounts, e.g., USD, EUR.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or terms to include in the invoice footer.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted invoice text string and summary details including subtotal, tax amount, and total amount." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a clear, formatted invoice document based on structured order and client data without manual formatting. It automates invoice drafting from essential invoice data inputs to speed billing processes and reduce human errors.", + "limitations": "This tool generates draft invoice text but does not handle PDF generation, email sending, or verify payment status. It also requires well-structured and accurate input data to produce valid invoices.", + "examples": [ + "Generate an invoice for a client including three service items with quantities and prices applying an 8% tax rate.", + "Draft an invoice with a specific invoice number, issue date, and payment due date, specifying notes about payment terms.", + "Create an invoice in EUR for a company client with address and a single product item, without additional notes." + ] + }, + "tags": [ + "text-analysis", + "invoice", + "document-generation", + "billing", + "finance", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corporation\",\"clientAddress\":\"123 Business Rd, Commerce City\",\"invoiceNumber\":\"INV-2024-1001\",\"issueDate\":\"2024-06-01\",\"dueDate\":\"2024-06-15\",\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":150}],\"taxRate\":7.5,\"currency\":\"USD\",\"notes\":\"Payment due within 15 days.\"}", + "description": "Draft a consulting service invoice for Acme Corporation with 10 hours at $150/hr and 7.5% tax." + }, + { + "inputJson": "{\"clientName\":\"Beta LLC\",\"invoiceNumber\":\"2024-06-002\",\"issueDate\":\"2024-06-05\",\"dueDate\":\"2024-06-20\",\"items\":[{\"description\":\"Software License\",\"quantity\":1,\"unitPrice\":1200},{\"description\":\"Installation Support\",\"quantity\":2,\"unitPrice\":200}],\"taxRate\":0,\"currency\":\"USD\",\"notes\":\"No tax applied as per agreement.\"}", + "description": "Invoice for Beta LLC including software license and support services with no tax." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "text-analysis.draftSentence", + "description": "Generates a well-formed sentence based on a given topic or prompt. It accepts an input prompt string and optional parameters to specify tone, style, and length. The tool processes the input to produce a coherent, grammatically correct sentence matching the requested attributes.", + "category": "text-analysis", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "The main idea or topic from which the sentence should be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Specifies the tone of the sentence such as formal, informal, neutral, or emotional.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "style", + "type": "string", + "description": "Defines the writing style, e.g., descriptive, persuasive, or narrative.", + "required": false, + "defaultValue": "descriptive" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words in the generated sentence to control length.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence as a text string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate clear, coherent, and appropriately styled sentences from a given prompt or topic. Ideal for drafting sentences tailored to specific tones or styles in writing assistance, content creation, or automated messaging systems.", + "limitations": "This tool may not perform well for highly technical, specialized, or jargon-heavy content without clear instructions. It generates only one sentence, so it is not suited for paragraphs or multi-sentence texts.", + "examples": [ + "Generate a formal sentence about climate change.", + "Draft a persuasive sentence about adopting electric cars.", + "Create a brief informal sentence describing a fresh coffee." + ] + }, + "tags": [ + "text generation", + "sentence drafting", + "NLP", + "writing assistant", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"the importance of exercise\",\"tone\":\"formal\",\"style\":\"persuasive\",\"maxLength\":25}", + "description": "Generate a formal, persuasive sentence on the importance of exercise." + }, + { + "inputJson": "{\"prompt\":\"a relaxing morning\",\"tone\":\"neutral\",\"style\":\"descriptive\",\"maxLength\":20}", + "description": "Create a descriptive sentence about a relaxing morning with neutral tone." + }, + { + "inputJson": "{\"prompt\":\"new smartphone features\",\"tone\":\"informal\",\"style\":\"narrative\",\"maxLength\":30}", + "description": "Draft an informal, narrative sentence highlighting new smartphone features." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "text-analysis.draftParagraph", + "description": "Generates a coherent, context-aware paragraph based on a given prompt or topic description. Accepts a brief text input and optional style or length parameters, then produces a polished paragraph suitable for articles, reports, or creative writing.", + "category": "text-analysis", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "A brief text or topic that serves as the seed for the paragraph generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Desired writing style, such as formal, casual, technical, or narrative. Influences tone and vocabulary.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words in the generated paragraph; helps control output length.", + "required": false, + "defaultValue": "150" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include illustrative examples within the paragraph when relevant.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph as a string under 'paragraph' key." + }, + "aiAgent": { + "useCase": "Use when needing to produce a well-structured, contextually relevant paragraph from a brief prompt to save time or enhance content creation. Useful in drafting emails, reports, or creative pieces where a flowing paragraph is required from minimal input.", + "limitations": "Does not guarantee accuracy of factual content; thematic alignment depends on prompt clarity. Not ideal for highly technical or specialized content requiring domain expertise.", + "examples": [ + "Create a paragraph on the benefits of renewable energy in a formal style.", + "Draft a casual paragraph explaining tips for effective time management.", + "Generate a narrative paragraph describing a morning routine incorporating specified keywords." + ] + }, + "tags": [ + "generation", + "natural-language-processing", + "writing", + "content-creation", + "paragraph", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"The importance of sustainability in business today\",\"style\":\"formal\",\"maxLength\":120,\"includeExamples\":false}", + "description": "Generate a formal paragraph about why sustainability is critical for businesses." + }, + { + "inputJson": "{\"prompt\":\"Tips for improving sleep quality\",\"style\":\"casual\",\"maxLength\":100,\"includeExamples\":true}", + "description": "Create a casual paragraph with practical sleep improvement tips including examples." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "text-analysis.buildCluster", + "description": "Builds a semantic text cluster model from input textual data. Accepts an array of text documents, processes them with optional preprocessing steps, and performs clustering algorithms to group similar texts. Outputs clusters with representative keywords and grouped document indices for downstream analysis or retrieval.", + "category": "text-analysis", + "parameters": [ + { + "name": "documents", + "type": "array", + "description": "An array of strings, each representing a separate text document to be clustered.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') of the input documents to optimize processing. Defaults to English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "preprocessingOptions", + "type": "object", + "description": "Settings for text preprocessing such as stopword removal, stemming, and lowercasing. Example keys: removeStopwords (boolean), useStemming (boolean).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "clusteringAlgorithm", + "type": "string", + "description": "Choice of clustering algorithm: 'kmeans', 'hierarchical', or 'dbscan'. Defaults to 'kmeans'.", + "required": false, + "defaultValue": "kmeans" + }, + { + "name": "numberOfClusters", + "type": "number", + "description": "The number of clusters to generate when using algorithms that require it (e.g., kmeans). Ignored for algorithms like DBSCAN.", + "required": false, + "defaultValue": "5" + }, + { + "name": "vectorizationMethod", + "type": "string", + "description": "Method to convert text to vectors: options include 'tfidf', 'word2vec', or 'bert'. Defaults to 'tfidf'.", + "required": false, + "defaultValue": "tfidf" + }, + { + "name": "minClusterSize", + "type": "number", + "description": "Minimum number of documents required for a cluster to be considered valid. Smaller clusters are merged or discarded.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing clustering results including cluster labels for each document, cluster centers or keywords, and statistics such as cluster sizes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to organize large collections of documents into meaningful groups based on content similarity, such as for topic discovery, document summarization, or improving search relevance. Ideal for textual data analysis workflows requiring unsupervised semantic grouping.", + "limitations": "This tool does not generate summaries or labels automatically; keyword extraction may be basic. It relies on input data quality and requires parameter tuning for best results. It does not handle multi-modal data or non-textual features.", + "examples": [ + "Cluster customer feedback comments to identify common themes.", + "Group research abstracts into topic clusters for literature review.", + "Organize news articles by similar subject matter for content recommendation." + ] + }, + "tags": [ + "text-analysis", + "clustering", + "nlp", + "semantic", + "unsupervised-learning", + "document-grouping", + "topic-modeling" + ], + "examples": [ + { + "inputJson": "{\"documents\":[\"The cat sat on the mat.\",\"Dogs are playful animals.\",\"Cats and dogs can be friends.\",\"The mat was sat on by the cat.\",\"Playful dogs love to run.\"]}", + "description": "Cluster a small set of simple pet-related sentences to group similar content." + }, + { + "inputJson": "{\"documents\":[\"Deep learning advances in computer vision.\",\"Natural language processing techniques and applications.\",\"Convolutional neural networks for image recognition.\",\"Recurrent neural networks for speech processing.\",\"Transformer models revolutionize NLP.\"]}", + "description": "Cluster research-related abstracts to find thematic groupings by AI subfield." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "text-analysis.composeLink", + "description": "This tool creates a concise HTML hyperlink snippet based on provided text and URL input. It accepts a display text string and a target URL string, optionally includes a tooltip title, and specifies if the link should open in a new tab. The output is a properly formatted HTML anchor tag string ready for embedding in web content.", + "category": "text-analysis", + "parameters": [ + { + "name": "displayText", + "type": "string", + "description": "The visible text for the hyperlink.", + "required": true, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "The destination URL the link points to.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional tooltip text shown on hover over the link.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Flag indicating if the link opens in a new browser tab.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "A string containing the complete HTML anchor tag constructed from inputs." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate a valid HTML clickable link snippet from raw text and a URL for use in web interfaces, markdown requiring HTML, or rich text environments. It helps embed references or citations dynamically in generated content with correct attributes.", + "limitations": "It cannot validate the URL format for reachability or security risks; it only formats the link. It does not support complex HTML attributes beyond title and target and does not process Markdown or other link syntaxes.", + "examples": [ + "Generate an HTML link for 'OpenAI' pointing to 'https://openai.com' opening in the same tab.", + "Create a link to 'https://example.com' with display text 'Example Site' that opens in a new tab with tooltip 'Visit Example'." + ] + }, + "tags": [ + "text-analysis", + "compose", + "html", + "link", + "web", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"displayText\":\"OpenAI\",\"url\":\"https://openai.com\",\"title\":\"\",\"openInNewTab\":false}", + "description": "Create a basic link to the OpenAI website opening in the same tab without a tooltip." + }, + { + "inputJson": "{\"displayText\":\"Example Site\",\"url\":\"https://example.com\",\"title\":\"Visit Example\",\"openInNewTab\":true}", + "description": "Create a link with display text, tooltip and set it to open in a new tab." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "text-analysis.buildWorkflow", + "description": "Constructs a customizable text analysis workflow by specifying a sequence of processing steps such as tokenization, POS tagging, named entity recognition, sentiment analysis, and text classification. Accepts an ordered list of analysis modules and configuration parameters, and outputs an executable structured workflow definition compatible with common NLP frameworks.", + "category": "text-analysis", + "parameters": [ + { + "name": "steps", + "type": "array", + "description": "An ordered list of text analysis modules to include in the workflow. Each module should be a string representing one analysis step (e.g., 'tokenization', 'posTagging', 'ner', 'sentimentAnalysis', 'textClassification').", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input text to configure language-specific processing models (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "usePretrainedModels", + "type": "boolean", + "description": "Flag to indicate whether to use pretrained models for the analysis steps or rely on custom models.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customParameters", + "type": "object", + "description": "A dictionary of additional parameters to customize behavior for individual analysis modules, keyed by module name.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the constructed text analysis workflow. This includes the ordered steps, configuration options, and metadata, enabling programmatic execution and integration within NLP pipelines." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically assemble a text analysis pipeline tailored to specific tasks, languages, or downstream applications. It simplifies the creation of multi-step NLP workflows for processing and understanding text data, supporting adaptable and reusable pipeline definitions.", + "limitations": "This tool does not execute the constructed workflow; it only builds the workflow definition. The actual implementation and runtime execution must be handled by an appropriate NLP framework or runtime environment.", + "examples": [ + "Construct a workflow with tokenization, POS tagging and named entity recognition for English text.", + "Build a Spanish language workflow that includes sentiment analysis and text classification using custom parameters.", + "Create a minimal workflow with only tokenization step without using pretrained models." + ] + }, + "tags": [ + "text-analysis", + "workflow", + "NLP", + "pipeline", + "automation", + "language-processing" + ], + "examples": [ + { + "inputJson": "{\"steps\":[\"tokenization\",\"posTagging\",\"ner\"],\"language\":\"en\",\"usePretrainedModels\":true}", + "description": "Builds an English language workflow with tokenization, part-of-speech tagging, and named entity recognition using pretrained models." + }, + { + "inputJson": "{\"steps\":[\"sentimentAnalysis\",\"textClassification\"],\"language\":\"es\",\"usePretrainedModels\":false,\"customParameters\":{\"sentimentAnalysis\":{\"threshold\":0.5}}}", + "description": "Creates a Spanish language workflow with sentiment analysis and text classification steps, using custom parameters and no pretrained models." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "text-analysis.buildSchema", + "description": "Builds a JSON Schema representation from sample text data or annotated examples. Accepts raw text input and optional label annotations, analyzes structure and entities, then generates a usable JSON Schema outlining expected data types, required fields, and value constraints for validation and processing purposes.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw text input or sample documents from which to infer schema structure and data types.", + "required": true, + "defaultValue": "" + }, + { + "name": "annotationFormat", + "type": "string", + "description": "Optional format of annotations if provided (e.g., 'BIO', 'JSON', 'inline'), to assist schema extraction.", + "required": false, + "defaultValue": "" + }, + { + "name": "examples", + "type": "array", + "description": "Array of example objects annotated with fields and values to help build a more accurate schema.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth for nested object detection in the schema to avoid overly complex structures.", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeRequiredFields", + "type": "boolean", + "description": "Flag indicating whether the generated schema should mark inferred required fields as mandatory.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON Schema object representing the inferred structure, data types, and constraints suitable for validating similar text-derived data." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing sample textual data or annotated examples to automatically generate a formal JSON Schema describing expected data attributes, types, and constraints. Ideal for preparing data validation rules or integrating new structured data types detected in text-based inputs.", + "limitations": "Cannot fully understand highly ambiguous or unstructured text without proper annotations; schema inference is limited by quality and representativeness of input data; complex semantic relationships beyond structural inference are not captured.", + "examples": [ + "Generate a JSON Schema from customer feedback comments with labeled sentiment and customer info.", + "Build a validation schema from annotated product descriptions that include nested specifications.", + "Infer schema from sample chat logs annotated with user intents and entities." + ] + }, + "tags": [ + "text-analysis", + "schema-generation", + "json-schema", + "data-validation", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"{\\\"name\\\": \\\"Alice\\\", \\\"age\\\": 30, \\\"email\\\": \\\"alice@example.com\\\"}\",\"annotationFormat\":\"\",\"examples\":[],\"maxDepth\":3,\"includeRequiredFields\":true}", + "description": "Generate JSON Schema from a simple JSON string representing a user's personal info." + }, + { + "inputJson": "{\"inputText\":\"OrderID: 12345\\nProduct: Widget\\nQuantity: 10\\nPrice: 9.99\",\"annotationFormat\":\"\",\"examples\":[],\"maxDepth\":2,\"includeRequiredFields\":true}", + "description": "Infer schema from structured order text with key-value pairs." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "text-analysis.generateQuote", + "description": "Generates a motivational or thematic quote based on the given topic, style, and optional author name. Accepts input as a topic string, preferred style, and whether to attribute to a specific author. Produces a single original or attributed quote string suitable for use in presentations, writings, or social media.", + "category": "text-analysis", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme for the generated quote, such as 'perseverance' or 'leadership'.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The desired style or tone of the quote, e.g., 'motivational', 'philosophical', or 'humorous'.", + "required": false, + "defaultValue": "motivational" + }, + { + "name": "authorName", + "type": "string", + "description": "Optional author name to attribute the quote to; if empty, the quote will be unattributed or original.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text and the author attribution if provided or recognized." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce concise, thematic quotes that are either original or styled after known authors, to enhance content such as speeches, articles, or social media posts. Useful for generating inspiration or emphasis on a given topic in natural language.", + "limitations": "It cannot guarantee generation of exact famous quotes due to copyright and data constraints; it creates original or inspired text based on input. It does not support generating long paragraphs or multiple quotes at once.", + "examples": [ + "Generate a motivational quote about resilience.", + "Create a humorous quote on technology attributed to 'Mark Twain'.", + "Provide a philosophical quote about love without author attribution." + ] + }, + "tags": [ + "text", + "quote", + "generation", + "motivational", + "inspiration", + "natural language" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"resilience\",\"style\":\"motivational\",\"authorName\":\"\"}", + "description": "Generate a motivational quote about resilience without author attribution." + }, + { + "inputJson": "{\"topic\":\"technology\",\"style\":\"humorous\",\"authorName\":\"Mark Twain\"}", + "description": "Create a humorous quote about technology attributed to Mark Twain." + }, + { + "inputJson": "{\"topic\":\"love\",\"style\":\"philosophical\",\"authorName\":\"\"}", + "description": "Provide a philosophical quote about love without author." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "text-analysis.generateTemplate", + "description": "Generates a customizable document template based on provided specifications. Accepts parameters such as document type, target audience, key sections, tone, and formatting style, then outputs a structured template text ready for use or further editing.", + "category": "text-analysis", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of the document to generate a template for, e.g., report, letter, proposal.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the document, influencing tone and style, e.g., clients, internal team.", + "required": false, + "defaultValue": "" + }, + { + "name": "keySections", + "type": "array", + "description": "List of essential sections or headings to include in the template, e.g., Introduction, Summary, Budget.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or voice of the document, e.g., formal, casual, persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "formattingStyle", + "type": "string", + "description": "Preferred formatting style, e.g., professional, minimalist, creative.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeInstructions", + "type": "boolean", + "description": "Whether to include guidance or instructions within the template sections.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template text and metadata such as sections included and recommended usage tips." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly create a structured and tailored document template for various formal or informal documents. It helps automate template creation based on user needs and customize the format, tone, and content sections for efficient document preparation.", + "limitations": "Does not populate detailed content beyond section placeholders or specific instructions; requires external data for in-depth content filling.", + "examples": [ + "Generate a formal project proposal template for clients including budget and timeline sections.", + "Create a casual internal memo template with a friendly tone and instructions for filling it out.", + "Produce a minimalist report template targeting executives, emphasizing executive summary and conclusions." + ] + }, + "tags": [ + "text-analysis", + "template-generation", + "document", + "automation", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"proposal\",\"targetAudience\":\"clients\",\"keySections\":[\"Introduction\",\"Objectives\",\"Budget\",\"Timeline\"],\"tone\":\"formal\",\"formattingStyle\":\"professional\",\"includeInstructions\":true}", + "description": "Generate a formal project proposal template for clients with specified sections and instructions included." + }, + { + "inputJson": "{\"documentType\":\"memo\",\"targetAudience\":\"internal team\",\"keySections\":[\"Purpose\",\"Updates\",\"Action Items\"],\"tone\":\"casual\",\"formattingStyle\":\"minimalist\",\"includeInstructions\":false}", + "description": "Create a casual internal memo template with focus on clarity and minimal style." + }, + { + "inputJson": "{\"documentType\":\"report\",\"targetAudience\":\"executives\",\"keySections\":[\"Executive Summary\",\"Analysis\",\"Conclusions\"],\"tone\":\"formal\",\"formattingStyle\":\"minimalist\",\"includeInstructions\":true}", + "description": "Produce a minimalist style report template for executives emphasizing critical sections." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "text-analysis.generateReadme", + "description": "Generates a comprehensive README markdown document for a software project from provided project details, features, usage instructions, and other relevant information. The tool processes structured input data and produces a well-formatted README file content suitable for GitHub or other repositories.", + "category": "text-analysis", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project or software repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief summary describing the project’s purpose and functionality.", + "required": true, + "defaultValue": "" + }, + { + "name": "installation", + "type": "string", + "description": "Step-by-step instructions for installing the software, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "usage", + "type": "string", + "description": "Instructions or examples demonstrating how to use the software.", + "required": false, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "A list of key features or highlights of the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contributing", + "type": "string", + "description": "Guidelines for contributing to the project, including code style, branches, etc.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "The license under which the project is released, e.g., MIT, Apache-2.0.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Contact details or links for users to reach the maintainers or support.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'readmeContent', which is a string with the fully generated README markdown text." + }, + "aiAgent": { + "useCase": "Use this tool when a structured and professional README file is needed for a software project, based on textual descriptions and metadata about the project. It is useful for automating documentation generation, ensuring consistency, and saving time for developers or documentation teams.", + "limitations": "This tool cannot generate detailed API documentation or infer code-specific examples without explicit input; it creates general README markdown based on input text only.", + "examples": [ + "Generate a README for a new open-source JavaScript library, given its features and usage instructions.", + "Create a README from project details including installation steps and contribution guidelines.", + "Produce a README markdown for a Python command-line tool with license and contact info specified." + ] + }, + "tags": [ + "text-analysis", + "documentation", + "readme-generation", + "markdown", + "software-project", + "automation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"AwesomeLib\",\"description\":\"A JavaScript library for awesome features.\",\"installation\":\"npm install awesomelib\",\"usage\":\"import awesomelib from 'awesomelib';\\nawesomelib.doAwesomeThing();\",\"features\":[\"Easy to use\",\"Lightweight\",\"High performance\"],\"contributing\":\"Please fork the repo and submit pull requests.\",\"license\":\"MIT\",\"contactInfo\":\"maintainer@example.com\"}", + "description": "Generate README markdown for a JavaScript library with installation, usage, features, contributing, license, and contact info." + }, + { + "inputJson": "{\"projectName\":\"DataCruncher\",\"description\":\"A Python CLI tool for data processing.\",\"installation\":\"pip install datacruncher\",\"usage\":\"datacruncher --input data.csv --output result.csv\",\"features\":[\"Command-line interface\",\"Supports CSV and JSON\",\"Fast processing\"],\"license\":\"Apache-2.0\"}", + "description": "Generate README for a Python CLI tool with basic usage and license details." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "text-analysis.generateAnomaly", + "description": "Analyzes provided text datasets or streams to detect unusual patterns, outliers, or deviations based on statistical and contextual analysis. Accepts raw text input or pre-processed embeddings, applies anomaly detection models, and returns identified anomalies with confidence scores and context for further investigation.", + "category": "text-analysis", + "parameters": [ + { + "name": "textData", + "type": "string", + "description": "Raw text data or corpus to analyze for anomalies, such as logs or documents.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Name of the embedding model to convert text into numerical vectors for analysis (e.g., 'bert-base').", + "required": false, + "defaultValue": "bert-base-uncased" + }, + { + "name": "anomalyDetectionMethod", + "type": "string", + "description": "Algorithm to use for anomaly detection (e.g., 'isolation-forest', 'lof', 'statistical-threshold').", + "required": false, + "defaultValue": "isolation-forest" + }, + { + "name": "sensitivityThreshold", + "type": "number", + "description": "Threshold to label an instance as anomalous, between 0 and 1. Higher means fewer anomalies identified.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "contextWindow", + "type": "number", + "description": "Number of surrounding sentences or tokens to include for context around detected anomaly.", + "required": false, + "defaultValue": "3" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for anomaly report; options include 'json', 'csv', or 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing detected anomalies, each with text snippet, anomaly score, position, and optional suggested cause or category." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing unstructured text data such as logs, chat transcripts, or documents to automatically identify unusual or unexpected content that deviates from learned patterns, facilitating early detection of errors, fraud, or novel events.", + "limitations": "Does not perform semantic understanding beyond embedding representations; may miss subtle or highly contextual anomalies; effectiveness depends on quality and volume of input text.", + "examples": [ + "Detect anomalies in customer support chat logs for potential fraud indicators.", + "Analyze product review text dataset to find unexpected sentiment or topics.", + "Scan system log text for unusual patterns that precede failures." + ] + }, + "tags": [ + "anomaly-detection", + "text-analysis", + "nlp", + "outlier-detection", + "monitoring", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"textData\":\"User login successful. User login failed. Multiple failed logins detected. System rebooted.\",\"embeddingModel\":\"bert-base-uncased\",\"anomalyDetectionMethod\":\"isolation-forest\",\"sensitivityThreshold\":0.8,\"contextWindow\":2,\"outputFormat\":\"json\"}", + "description": "Analyze a short system log for anomalous login failure messages." + }, + { + "inputJson": "{\"textData\":\"Customer reported incorrect billing. Customer happy with service. Refund processed successfully.\",\"anomalyDetectionMethod\":\"lof\",\"sensitivityThreshold\":0.6,\"outputFormat\":\"json\"}", + "description": "Detect anomalies in customer support texts highlighting unusual complaints." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "text-analysis.generateConversion", + "description": "This tool accepts textual input such as website copy, marketing content, or product descriptions and analyzes the language to estimate its potential conversion effectiveness. It uses natural language processing models to evaluate persuasive elements, call-to-action strength, emotional tone, clarity, and engagement level. The output is a detailed conversion score report with actionable insights to improve text for higher conversion rates.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The textual content to analyze for conversion potential.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience or customer persona to tailor the conversion analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "desiredAction", + "type": "string", + "description": "The specific conversion goal (e.g., sign-up, purchase, download) to focus the analysis on.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations for improving conversion in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a conversion score (0-100), category ratings (e.g., persuasion, clarity), and optionally a list of recommendations to enhance conversion effectiveness." + }, + "aiAgent": { + "useCase": "Use this tool when needing to estimate how well a given marketing or sales text is likely to convert readers into customers or leads. It is helpful for optimizing website copy, email campaigns, and ad text by providing a quantifiable conversion-related analysis plus improvement suggestions.", + "limitations": "It cannot guarantee actual conversion rates as real-world factors (design, audience behavior, product quality) also influence outcomes. It analyzes text only, not images or multi-media content.", + "examples": [ + "Analyze this landing page copy for conversion effectiveness.", + "Evaluate my product description to improve purchase rate.", + "Generate conversion insights on our new email campaign text." + ] + }, + "tags": [ + "text-analysis", + "conversion", + "marketing", + "copywriting", + "NLP", + "analytics", + "recommendations" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Sign up today to get exclusive access to premium features! Our platform guarantees increased productivity and seamless collaboration.\",\"targetAudience\":\"small businesses looking for productivity tools\",\"desiredAction\":\"sign-up\",\"includeRecommendations\":true}", + "description": "Analyze a sign-up call-to-action text targeting small business users." + }, + { + "inputJson": "{\"text\":\"Buy our new eco-friendly water bottle - durable, stylish, and good for the planet.\",\"desiredAction\":\"purchase\"}", + "description": "Evaluate product description aimed at convincing users to buy." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "text-analysis.generateMarkdown", + "description": "Generates a formatted Markdown document from input text by applying customizable structure and styles. Accepts plain or structured text input, processes it by applying headings, lists, code blocks, and emphasis based on parameters, and outputs a clean, well-structured Markdown string.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The plain or lightly structured text content to convert into Markdown format.", + "required": true, + "defaultValue": "" + }, + { + "name": "headingLevels", + "type": "number", + "description": "Maximum heading levels to generate from text sections; values from 1 to 6.", + "required": false, + "defaultValue": "3" + }, + { + "name": "enableLists", + "type": "boolean", + "description": "Whether to detect and convert list items (bulleted or numbered) into Markdown lists.", + "required": false, + "defaultValue": "true" + }, + { + "name": "codeBlockLanguage", + "type": "string", + "description": "The programming language tag to use for fenced code blocks; empty string means no language specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "emphasizeKeywords", + "type": "array", + "description": "List of keywords to be emphasized with bold or italic formatting in the Markdown output.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "addTableOfContents", + "type": "boolean", + "description": "Whether to add a table of contents referencing headings at the start of the document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown string under the key 'markdown'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert textual content, such as documentation notes, summaries, or plain text, into well-formatted Markdown for publishing or versioning. It supports structure extraction through headings, list detection, code block formatting, and keyword emphasis, enabling creation of readable technical or content documents from unstructured input.", + "limitations": "This tool does not perform deep natural language understanding to reliably extract semantic meaning beyond text pattern detection. It is not suited for processing highly unstructured text that requires complex summarization or rewriting beyond the supported formatting transformations.", + "examples": [ + "Generate a Markdown report with headings up to level 4 and include a table of contents from meeting notes.", + "Convert a plain text code snippet into a Markdown code block tagged with 'python'.", + "Emphasize specified keywords by making them bold in the Markdown output." + ] + }, + "tags": [ + "text-analysis", + "markdown", + "formatting", + "documentation", + "code", + "lists", + "headings" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"# Project Status\\nThe project is currently in phase two.\\n- Task one completed\\n- Task two in progress\\nUse the following code:\\nprint(\\\"Hello World\\\")\",\"headingLevels\":3,\"enableLists\":true,\"codeBlockLanguage\":\"python\",\"emphasizeKeywords\":[\"project\",\"phase two\"],\"addTableOfContents\":true}", + "description": "Convert meeting notes with headings, lists, and a code snippet into Markdown with emphasized keywords and a table of contents." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "text-analysis.createQuote", + "description": "Generates a meaningful quote based on the given topic or keyword. Accepts a text input which is a subject or theme, processes related concepts and phrasing patterns, and produces a clear, concise quote suitable for use in writing, speeches, or inspiration.", + "category": "text-analysis", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme upon which to base the quote.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated quote, to control verbosity.", + "required": false, + "defaultValue": "140" + }, + { + "name": "style", + "type": "string", + "description": "Optional style or tone for the quote, e.g., inspirational, humorous, philosophical.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote as a string and the topic it was based on." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create original, context-aware quotes for text content, presentations, or creative writing based on a provided topic or concept. It helps produce concise, impactful quotes that align with a desired style or length.", + "limitations": "It cannot generate quotes based on very obscure or highly specialized topics without enough context. The generated quote may not be attributed to real persons or existing sources and can lack deep factual accuracy.", + "examples": [ + "Create an inspirational quote about 'perseverance' limited to 100 characters.", + "Generate a humorous quote on 'coffee'.", + "Produce a philosophical quote on 'time' with max length 120 characters." + ] + }, + "tags": [ + "text-analysis", + "quote-generation", + "creative-writing", + "natural-language", + "inspiration", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"perseverance\",\"maxLength\":100,\"style\":\"inspirational\"}", + "description": "Generate an inspirational quote about perseverance not exceeding 100 characters." + }, + { + "inputJson": "{\"topic\":\"coffee\",\"style\":\"humorous\"}", + "description": "Create a humorous quote on coffee with default length." + }, + { + "inputJson": "{\"topic\":\"time\",\"maxLength\":120,\"style\":\"philosophical\"}", + "description": "Produce a philosophical quote about time up to 120 characters." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "text-analysis.createAudio", + "description": "Generates spoken audio from input text using configurable text-to-speech parameters. It accepts plain text or SSML to control speech prosody, voice selection, language, speaking rate, and pitch. The output is an audio file in commonly used formats such as MP3 or WAV, ready for playback or integration into multimedia applications.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input text or SSML markup to be converted into speech.", + "required": true, + "defaultValue": "" + }, + { + "name": "voice", + "type": "string", + "description": "The identifier of the voice to use (e.g., male or female, regional accent).", + "required": false, + "defaultValue": "en-US-Wavenet-D" + }, + { + "name": "languageCode", + "type": "string", + "description": "Language code of the input text for accurate pronunciation (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "format", + "type": "string", + "description": "Audio output format, such as 'mp3' or 'wav'.", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "speakingRate", + "type": "number", + "description": "Speed of the speech, where 1.0 is normal rate, less than 1.0 is slower, and greater than 1.0 is faster.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "pitch", + "type": "number", + "description": "Pitch adjustment in semitones; 0 is default pitch.", + "required": false, + "defaultValue": "0" + }, + { + "name": "volumeGainDb", + "type": "number", + "description": "Volume gain in decibels to be applied to the output audio.", + "required": false, + "defaultValue": "0" + }, + { + "name": "enableSsml", + "type": "boolean", + "description": "Indicates whether the input text contains SSML tags to control speech synthesis features.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the audio data as a base64-encoded string and metadata including audio format and duration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert textual content into natural-sounding audio for applications like voice assistants, accessibility features, audiobooks, or multimedia presentations. It supports customization of voice characteristics and output format to meet varied user requirements.", + "limitations": "This tool cannot produce music or sound effects. The quality and naturalness depend on the underlying text-to-speech engine capabilities. It does not support real-time streaming synthesis in this implementation.", + "examples": [ + "Convert provided article text into spoken MP3 audio for podcast use.", + "Create an audiobook chapter from highlighted novel passage with slower speaking rate.", + "Generate an English announcement audio with a British female voice and SSML pauses." + ] + }, + "tags": [ + "text-to-speech", + "audio", + "tts", + "speech synthesis", + "media", + "accessibility", + "natural language" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello, welcome to our tutorial on text-to-speech synthesis.\",\"voice\":\"en-US-Wavenet-F\",\"languageCode\":\"en-US\",\"format\":\"mp3\",\"speakingRate\":1.0,\"pitch\":0,\"volumeGainDb\":0,\"enableSsml\":false}", + "description": "Basic text to mp3 audio with default voice and speaking rate." + }, + { + "inputJson": "{\"text\":\"<speak>Hello, <break time='500ms'/> welcome to <prosody rate='slow'>our service</prosody>.</speak>\",\"voice\":\"en-GB-Wavenet-B\",\"languageCode\":\"en-GB\",\"format\":\"wav\",\"speakingRate\":1.0,\"pitch\":2,\"volumeGainDb\":2,\"enableSsml\":true}", + "description": "SSML input with breaks and prosody to generate speech with British accent and adjusted pitch and volume." + }, + { + "inputJson": "{\"text\":\"This is a fast, high-pitch demo.\",\"voice\":\"en-US-Wavenet-D\",\"languageCode\":\"en-US\",\"format\":\"mp3\",\"speakingRate\":1.5,\"pitch\":5,\"volumeGainDb\":0,\"enableSsml\":false}", + "description": "Faster speaking rate and higher pitch audio from plain text." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "api-integration.analyzeQuote", + "description": "This tool accepts a textual quote input and analyzes its content to identify key elements such as sentiment, subject themes, linguistic style, and potential attribution. It processes the quote using natural language processing techniques and returns a detailed analysis including sentiment score, detected topics, style classification, and attribution confidence.", + "category": "api-integration", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The exact text of the quote to analyze, including punctuation and capitalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the quote (e.g., 'en' for English) to improve processing accuracy.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeAttribution", + "type": "boolean", + "description": "Whether to attempt identifying the source or author of the quote.", + "required": false, + "defaultValue": "\"true\"" + }, + { + "name": "maxTopics", + "type": "number", + "description": "The maximum number of subject themes or topics to extract from the quote.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing sentiment score (-1 to 1), list of detected topics with confidence values, linguistic style classification (e.g., formal, motivational), and attribution data if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need a detailed understanding of the meaning, tone, and themes in a textual quote, such as for summarization, categorizing inspirational quotes, or verifying quote attribution. This assists in tasks like sentiment-based filtering of quotes or enhancing content metadata.", + "limitations": "This tool cannot verify the absolute accuracy of attribution against external databases, nor can it interpret quotes requiring deep contextual or cultural knowledge beyond linguistic patterns. It may have reduced accuracy on very short quotes or non-standard language.", + "examples": [ + "Analyze the sentiment and themes of the quote: 'The only limit to our realization of tomorrow is our doubts of today.'", + "Identify if the quote 'To be or not to be, that is the question.' is formal or informal and suggest possible attribution.", + "Extract up to 2 main topics from the quote 'Happiness depends upon ourselves.' with an attribution check." + ] + }, + "tags": [ + "api", + "quote", + "analysis", + "sentiment", + "natural-language-processing", + "attribution", + "content-analysis" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"Success is not final, failure is not fatal: it is the courage to continue that counts.\",\"language\":\"en\",\"includeAttribution\":true,\"maxTopics\":3}", + "description": "Analyze an inspirational English quote with attribution and extract up to 3 topics." + }, + { + "inputJson": "{\"quoteText\":\"La vita è bella.\",\"language\":\"it\",\"includeAttribution\":false,\"maxTopics\":2}", + "description": "Analyze the Italian quote meaning 'Life is beautiful', focusing on sentiment and topics without attribution." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "text-analysis.createMarkdown", + "description": "Generates a structured Markdown document from unstructured or semi-structured text input. Accepts raw text and optional formatting instructions, processes it to identify headings, lists, code blocks, and paragraphs, and produces a clean Markdown text output ready for documentation or publishing.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw natural language text to be converted into Markdown format.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate a table of contents based on detected headings.", + "required": false, + "defaultValue": "false" + }, + { + "name": "headingStyle", + "type": "string", + "description": "Preferred style for Markdown headings, e.g., 'atx' for #, or 'setext' for underlines.", + "required": false, + "defaultValue": "atx" + }, + { + "name": "convertLists", + "type": "boolean", + "description": "Indicates if bulleted and numbered lists in text should be recognized and converted to Markdown list format.", + "required": false, + "defaultValue": "true" + }, + { + "name": "codeBlockLanguage", + "type": "string", + "description": "Optional programming language identifier to use for fenced code blocks, if any code content is detected.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown string in the 'markdownText' property." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI receives unstructured text needing formatting for documentation, blogs, or reports. It helps structure raw content into clean Markdown for improved readability and further use in Markdown-compatible platforms.", + "limitations": "It cannot perfectly interpret complex layouts or embedded media. It may not detect semantic relationships beyond common headings and lists. It does not handle images, tables, or advanced Markdown extensions beyond basic syntax.", + "examples": [ + "Convert meeting notes into formatted Markdown document with headings and lists.", + "Generate a README Markdown file from a plain text project description.", + "Create Markdown formatted blog post draft from raw text input." + ] + }, + "tags": [ + "text-analysis", + "markdown", + "formatting", + "documentation", + "natural-language-processing", + "text-conversion" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Meeting Notes:\\nDiscuss project timeline\\n- First milestone in 2 weeks\\n- Final delivery in 2 months\\nCode snippet:\\nconsole.log('Hello world');\",\"includeTableOfContents\":true,\"headingStyle\":\"atx\",\"convertLists\":true,\"codeBlockLanguage\":\"javascript\"}", + "description": "Converts meeting notes including lists and code snippet into Markdown with a table of contents." + }, + { + "inputJson": "{\"inputText\":\"Project Overview\\nThis project involves developing a user interface. Requirements include:\\n1. Responsive design\\n2. Accessibility compliance\\n\",\"includeTableOfContents\":false,\"headingStyle\":\"setext\",\"convertLists\":true,\"codeBlockLanguage\":\"\"}", + "description": "Creates Markdown from structured project overview text with numbered lists and setext style headings." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "text-analysis.createYAML", + "description": "Generates a YAML formatted string from provided text or structured data inputs. Accepts plain text or an object describing key-value pairs to transform into a clean, human-readable YAML document. Outputs the YAML as a string, suitable for configuration files or data serialization in YAML format.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The data to convert into YAML format, provided as a key-value object or nested structures. If a string is provided, it will attempt to parse or treat it as a raw text value.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces used for indentation levels in the output YAML document.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeDocumentStart", + "type": "boolean", + "description": "Whether to include the YAML document start marker ('---') at the beginning of the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "If true, keys in objects will be sorted alphabetically in the output YAML.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Preferred maximum line width before folding long lines in the YAML output. Set 0 for no line wrapping.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the YAML formatted string under the key 'yaml'. This string represents the input data serialized in YAML format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured data or descriptive text into a clean, standardized YAML document, for example to generate configuration files, manifest documents, or data exchange formats. Helpful when users provide data in json or dict style and want readable YAML output.", + "limitations": "Cannot validate the semantic correctness of YAML content beyond structural conversion. Does not resolve references or anchors. Complex types like custom objects or functions cannot be serialized.", + "examples": [ + "Convert a JSON configuration object to YAML for a deployment manifest.", + "Generate YAML front matter from descriptive metadata provided as key-value pairs.", + "Create YAML output with specific indentation and without the document start marker for embedding in larger documents." + ] + }, + "tags": [ + "text-analysis", + "data-conversion", + "yaml", + "serialization", + "configuration", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"name\":\"example\",\"version\":1.0,\"features\":[\"fast\",\"reliable\"],\"metadata\":{\"author\":\"AI Assistant\",\"license\":\"MIT\"}},\"indentation\":2,\"includeDocumentStart\":true,\"sortKeys\":true,\"lineWidth\":80}", + "description": "Convert a JSON object representing metadata and features into a YAML string with 2 spaces indentation, document start marker, and sorted keys." + }, + { + "inputJson": "{\"inputData\":{\"title\":\"Sample Document\",\"sections\":[{\"header\":\"Intro\",\"content\":\"Welcome to the sample.\"},{\"header\":\"Usage\",\"content\":\"Use this as an example.\"}]},\"indentation\":4,\"includeDocumentStart\":false,\"sortKeys\":false,\"lineWidth\":0}", + "description": "Generate a YAML formatted string for a document outline with 4 spaces indentation and no YAML start marker, without line wrapping." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "text-analysis.createTemplate", + "description": "Generates a customizable document template based on provided textual content and structural preferences. Accepts raw sample text or key elements, analyzes structure and style, and produces a reusable template object or text for consistent document creation.", + "category": "text-analysis", + "parameters": [ + { + "name": "sampleText", + "type": "string", + "description": "Raw sample text or content to analyze for template generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to include in the template header.", + "required": false, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "Optional array of section names or headings to define template structure explicitly.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includePlaceholders", + "type": "boolean", + "description": "Flag to include placeholders for dynamic content in the template.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the returned template, e.g., 'json', 'markdown', or 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template in the specified format, including structure, text content, placeholders, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool to create reusable document templates from example texts or structural guidelines, enabling automated and consistent document generation workflows. Particularly useful when needing structured templates tailored to specific textual content or formats.", + "limitations": "Cannot generate highly complex templates requiring domain-specific logic or external data. It focuses on textual structure and placeholders but does not perform advanced formatting like images or tables.", + "examples": [ + "Create a template from meeting notes with section placeholders.", + "Generate a markdown document template including specified headings.", + "Produce a JSON template from a sample contract text." + ] + }, + "tags": [ + "text", + "template", + "document", + "structure", + "generation", + "placeholder" + ], + "examples": [ + { + "inputJson": "{\"sampleText\":\"Project Status Report\\nDate: [Insert Date]\\nSummary:\\n- Achievements\\n- Challenges\\nAction Items:\\n- Responsible Person\\n- Deadline\",\"title\":\"Status Report\",\"sections\":[\"Summary\",\"Action Items\"],\"includePlaceholders\":true,\"outputFormat\":\"markdown\"}", + "description": "Generate a markdown template for a project status report using sample text and defined sections with placeholders." + }, + { + "inputJson": "{\"sampleText\":\"Dear [Name],\\nThank you for your interest in our services. Please find the attached proposal for your review.\",\"title\":\"Proposal Letter\",\"includePlaceholders\":true,\"outputFormat\":\"json\"}", + "description": "Create a JSON-based letter template including placeholders for recipient name and content." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "api-integration.analyzeConversion", + "description": "This tool accepts conversion event data from various marketing channels or APIs, processes the data to calculate key conversion metrics such as conversion rate, cost per conversion, and conversion trends over time. It outputs a structured report summarizing these analytics to help evaluate campaign effectiveness.", + "category": "api-integration", + "parameters": [ + { + "name": "conversionData", + "type": "array", + "description": "An array of conversion event objects with details such as event timestamp, source channel, campaign, cost, and conversion value. Each event should include necessary fields to perform analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Time range for analysis specifying start and end dates in ISO 8601 format (e.g., {\"start\":\"2023-01-01\",\"end\":\"2023-01-31\"}).", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Dimension to group conversion metrics by such as 'channel', 'campaign', or 'date'. Defaults to overall aggregation if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of conversion metrics to compute, e.g., ['conversionRate', 'costPerConversion', 'totalConversions']. If omitted, calculates all default metrics.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing aggregated conversion metrics grouped as specified, including conversion counts, rates, costs, and possibly trend data for the given period." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze raw conversion event data from integrated marketing or sales APIs to generate meaningful performance metrics that guide decision making. It is especially useful when consolidating data from multiple sources and formats into unified conversion analytics.", + "limitations": "This tool does not perform raw data extraction or API calls; it assumes the conversion data array is pre-fetched and well-formed. It also does not produce predictive analytics or detailed user-level attribution modeling.", + "examples": [ + "Analyze conversion metrics grouped by campaign for January 2024 from provided conversion events.", + "Calculate overall conversion rate and cost per conversion for a given dataset between two dates.", + "Provide daily breakdown of total conversions and conversion rate for a specific channel over last month." + ] + }, + "tags": [ + "api-integration", + "conversion", + "analytics", + "marketing", + "metrics", + "performance" + ], + "examples": [ + { + "inputJson": "{\"conversionData\":[{\"timestamp\":\"2024-01-05T12:00:00Z\",\"channel\":\"Email\",\"campaign\":\"WinterSale\",\"cost\":100,\"converted\":true},{\"timestamp\":\"2024-01-06T14:20:00Z\",\"channel\":\"Email\",\"campaign\":\"WinterSale\",\"cost\":50,\"converted\":false}],\"timeRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-01-31\"},\"groupBy\":\"campaign\",\"metrics\":[\"conversionRate\",\"costPerConversion\"]}", + "description": "Analyze conversion rate and cost per conversion grouped by campaign for January 2024." + }, + { + "inputJson": "{\"conversionData\":[{\"timestamp\":\"2024-02-01T08:00:00Z\",\"channel\":\"Social\",\"campaign\":\"SpringLaunch\",\"cost\":200,\"converted\":true},{\"timestamp\":\"2024-02-02T10:30:00Z\",\"channel\":\"Social\",\"campaign\":\"SpringLaunch\",\"cost\":0,\"converted\":true}],\"groupBy\":\"date\"}", + "description": "Calculate daily total conversions and conversion rates for Social channel spring launch campaign." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "api-integration.analyzeAnomaly", + "description": "This tool accepts time series data or event logs as input along with optional parameters such as detection sensitivity and anomaly types. It processes the data using statistical methods and machine learning algorithms to identify unusual patterns or outliers. The output includes detected anomalies with timestamps, severity scores, and potential root cause indicators to support further investigation.", + "category": "api-integration", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of numerical values or event objects representing time series or event logs for anomaly detection.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "The key name for timestamps in event log objects, required if input data contains events instead of raw numbers.", + "required": false, + "defaultValue": "timestamp" + }, + { + "name": "sensitivity", + "type": "number", + "description": "A float between 0 and 1 to configure how sensitive the detection algorithm is to anomalies; higher means more anomalies detected.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "anomalyType", + "type": "string", + "description": "Type of anomalies to detect such as 'point', 'collective', or 'contextual'.", + "required": false, + "defaultValue": "point" + }, + { + "name": "contextWindow", + "type": "number", + "description": "Number of data points to consider before and after a point to analyze context for contextual anomalies.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeRootCauseAnalysis", + "type": "boolean", + "description": "Flag to indicate if the tool should attempt to identify potential root causes of detected anomalies.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a list of detected anomalies, each with timestamp or index, severity score, anomaly type, and optionally a root cause hint." + }, + "aiAgent": { + "useCase": "Use this tool when integrating anomaly detection capabilities into applications that monitor system performance metrics, sensor data, financial transaction logs, or user behavior. It helps an AI agent detect unusual patterns that may indicate faults, fraud, or operational issues, enabling proactive response.", + "limitations": "This tool relies on quality and relevant input data; it cannot perform well if data is noisy without preprocessing. It does not perform anomaly correction or prediction beyond detection and root cause hinting.", + "examples": [ + "Detect anomalies in server CPU utilization time series data to preemptively identify performance degradation.", + "Analyze transaction logs to find fraudulent behavior patterns using collective anomaly detection.", + "Check IoT sensor data streams for contextual anomalies indicating environmental changes." + ] + }, + "tags": [ + "api-integration", + "anomaly-detection", + "analytics", + "monitoring", + "root-cause-analysis", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"data\": [12, 13, 15, 150, 14, 13, 16, 12], \"sensitivity\": 0.7}", + "description": "Detect point anomalies in a numerical time series representing server load with moderately high sensitivity." + }, + { + "inputJson": "{\"data\": [{\"timestamp\":\"2024-06-01T12:00:00Z\",\"value\":100},{\"timestamp\":\"2024-06-01T12:01:00Z\",\"value\":300},{\"timestamp\":\"2024-06-01T12:02:00Z\",\"value\":95}], \"timestampField\": \"timestamp\", \"anomalyType\": \"contextual\", \"contextWindow\": 2}", + "description": "Analyze event log objects with timestamps for contextual anomalies considering a window of 2 events before and after." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "api-integration.analyzeExpense", + "description": "This tool accepts structured expense data from various financial or expense tracking APIs, analyzes spending patterns, categorizes expenses based on predefined or custom categories, detects anomalies or outliers, and generates summary reports including total spending, category-wise breakdown, and flagged unusual expenses. It helps businesses and financial managers make informed decisions based on expense insights.", + "category": "api-integration", + "parameters": [ + { + "name": "expenseData", + "type": "array", + "description": "An array of expense records, each containing fields like amount, date, merchant, category (optional), and description, typically retrieved from finance-related APIs.", + "required": true, + "defaultValue": "" + }, + { + "name": "customCategories", + "type": "object", + "description": "Optional mapping of keywords or merchant names to custom categories to override or supplement default categorization.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional object specifying startDate and endDate (ISO 8601 strings) to filter expenses for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag indicating whether to perform anomaly detection on expenses to find outliers or suspicious entries.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to standardize reporting if not included in expense data.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing totalSpend (number), categoryBreakdown (object mapping categories to amounts), anomalyExpenses (array of expense records flagged as anomalies), and summaryInsights (string highlighting key findings)." + }, + "aiAgent": { + "useCase": "Use this tool when integrating multiple expense APIs to consolidate and analyze business spending. It helps in categorizing transactions automatically, detecting unusual expenses, and summarizing overall expenditure to support budgeting and auditing tasks.", + "limitations": "This tool does not perform currency conversion beyond a fixed currency code standardization. It cannot access or fetch expense data directly and depends on properly formatted input. It may not detect all complex fraud patterns or subtle anomalies beyond statistical outliers.", + "examples": [ + "Analyze expense data from Q1 2024 to identify highest spending categories and any unusual transactions.", + "Summarize and categorize monthly company expenses for budgeting review.", + "Detect possible duplicate or suspicious expense entries in the imported expense list." + ] + }, + "tags": [ + "api", + "expense", + "analysis", + "finance", + "categorization", + "anomaly-detection", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"expenseData\":[{\"amount\":120.50,\"date\":\"2024-03-15\",\"merchant\":\"Office Depot\",\"description\":\"Office Supplies\"},{\"amount\":950.00,\"date\":\"2024-03-20\",\"merchant\":\"Acme Electronics\",\"description\":\"New Laptop\"},{\"amount\":75.00,\"date\":\"2024-03-22\",\"merchant\":\"Starbucks\",\"description\":\"Client Meeting\"}],\"dateRange\":{\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\"},\"detectAnomalies\":true,\"currency\":\"USD\"}", + "description": "Analyze March 2024 expenses including anomaly detection to identify spending patterns and unusual purchases." + }, + { + "inputJson": "{\"expenseData\":[{\"amount\":40,\"date\":\"2024-04-05\",\"merchant\":\"Uber\",\"description\":\"Taxi\"},{\"amount\":200,\"date\":\"2024-04-07\",\"merchant\":\"Hotel California\",\"description\":\"Conference Lodging\"}],\"customCategories\":{\"\"Uber\"\":\"Transportation\"},\"detectAnomalies\":false}", + "description": "Categorize recent expenses with custom mapping for 'Uber' as Transportation without anomaly detection." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "api-integration.analyzeYAML", + "description": "This tool accepts a YAML formatted string or file input and performs a detailed analysis including syntax validation, key structure extraction, and detection of common errors or inconsistencies. It outputs a comprehensive report outlining the YAML structure, any issues found, and summaries of nested data for integration insights.", + "category": "api-integration", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The raw YAML content as a string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the YAML content against a provided JSON schema for structure conformity.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schema", + "type": "string", + "description": "A JSON schema string to validate the YAML content against if validateSchema is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeStatistics", + "type": "boolean", + "description": "If true, includes statistics about YAML nodes such as counts of mappings, sequences, and scalars.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth to analyze nested structures within the YAML to avoid excessive processing.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An analysis report detailing YAML validity, detected errors or warnings, extracted key-value structure summaries, optional schema validation results, and statistics about the data." + }, + "aiAgent": { + "useCase": "Use this tool when integrating or orchestrating APIs that exchange data in YAML format, to ensure input data is well-formed, conforms to expected structures, and to help interpret complex nested configurations before processing or transformation. It helps detect issues early and provides data structure insights for integration logic.", + "limitations": "This tool does not transform or convert YAML into other formats; it only analyzes content and optionally validates against schemas. Schema validation requires a valid JSON schema. Very large or deeply nested YAML files may be truncated based on maxDepth to maintain performance.", + "examples": [ + "Analyze YAML configuration for a new API integration to detect configuration errors and summarize keys.", + "Validate a YAML data payload against a predefined schema to ensure compliance before ingestion.", + "Generate statistics and structure report for a complex Kubernetes manifest file formatted in YAML." + ] + }, + "tags": [ + "api-integration", + "YAML", + "validation", + "analysis", + "schema-validation", + "data-structure" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"apiVersion: v1\\nkind: Service\\nmetadata:\\n name: my-service\\nspec:\\n ports:\\n - protocol: TCP\\n port: 80\\n targetPort: 9376\\n selector:\\n app: MyApp\"}", + "description": "Analyze a basic Kubernetes service YAML manifest to validate syntax and extract structure." + }, + { + "inputJson": "{\"yamlContent\":\"users:\\n - name: Alice\\n age: 30\\n - name: Bob\\n age: 25\",\"includeStatistics\":true}", + "description": "Analyze a simple YAML list of users and include statistics about the data nodes." + }, + { + "inputJson": "{\"yamlContent\":\"invalid_yaml: [unclosed sequence\",\"validateSchema\":false}", + "description": "Analyze a malformed YAML string to detect syntax errors and report them." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "api-integration.analyzeMarkdown", + "description": "Analyzes a Markdown document string to extract metadata (headers, lists, links), compute statistics (word count, heading counts), and summarize content structure. Accepts raw Markdown text and optional analysis flags; returns structured insights for downstream API workflows or content management.", + "category": "api-integration", + "parameters": [ + { + "name": "markdownText", + "type": "string", + "description": "The raw Markdown formatted text to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate a brief textual summary of the Markdown content (key topics).", + "required": false, + "defaultValue": "false" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "Flag to extract all hyperlinks URLs and text from the Markdown.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length in characters for the generated summary; ignored if includeSummary=false.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis output including metadata (headers, lists), statistics (wordCount, headingCounts), extracted links, and optional summary text." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to programmatically understand the structure and key elements of Markdown content, for example to automate content indexing, generate previews, or orchestrate API calls to CMS or knowledge bases based on Markdown inputs.", + "limitations": "Cannot interpret images or render visual Markdown elements; summary is basic and not a full semantic understanding; complex Markdown extensions or custom syntax may not be fully parsed.", + "examples": [ + "Analyze a README.md to extract all headers and links for documentation generation.", + "Generate a brief summary of a Markdown blog post for social sharing metadata.", + "Count words and number of each heading level in a Markdown file before publishing." + ] + }, + "tags": [ + "api-integration", + "markdown", + "content-analysis", + "text-processing", + "metadata-extraction", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"markdownText\":\"# Project Title\\nThis is a sample project README.\\n\\n## Features\\n- Easy to use\\n- Fast\\n\\nFor more info, visit [our site](https://example.com).\",\"includeSummary\":true,\"extractLinks\":true,\"maxSummaryLength\":100}", + "description": "Analyze a simple README with headers, list, and links, requesting a summary." + }, + { + "inputJson": "{\"markdownText\":\"# Heading1\\nParagraph text here.\\n\\n## Heading2\\nMore text.\\n\\n[Link Text](https://link.com)\",\"includeSummary\":false,\"extractLinks\":true}", + "description": "Extract links and metadata without summary." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "api-integration.uploadVideo", + "description": "Uploads a video file to a specified video hosting service or API endpoint. Accepts video file data (base64 or URL), metadata like title and description, and optional settings for privacy and tags. Returns a response containing the video ID, URL, upload status, and any error messages.", + "category": "api-integration", + "parameters": [ + { + "name": "videoFile", + "type": "string", + "description": "Base64-encoded video file content or a direct video URL to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the video being uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text for the video content.", + "required": false, + "defaultValue": "" + }, + { + "name": "privacy", + "type": "string", + "description": "Privacy setting for the uploaded video (e.g., public, private, unlisted).", + "required": false, + "defaultValue": "public" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags associated with the video for categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "apiKey", + "type": "string", + "description": "API authentication key or token required by the video hosting service.", + "required": true, + "defaultValue": "" + }, + { + "name": "uploadEndpoint", + "type": "string", + "description": "API endpoint URL of the video hosting service for upload.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object including video ID, direct URL to the uploaded video, upload status ('success' or 'failed'), and error message if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload video content to online platforms or custom video hosting APIs, handling authentication, metadata, and privacy settings. Ideal for automating video publishing workflows or integrating video uploads into larger applications.", + "limitations": "This tool does not perform video encoding, transcoding, or quality checks. It requires valid API credentials and network access to the target video hosting service. It does not handle multipart uploads for very large files inherently; videoFile must be fully available.", + "examples": [ + "Upload a new marketing video to the company YouTube channel with appropriate title and tags.", + "Automatically publish user-generated videos to a private video hosting server with restricted access.", + "Batch upload training videos to an internal video API with descriptive metadata and categorize by tags." + ] + }, + "tags": [ + "upload", + "video", + "api-integration", + "media", + "file-upload", + "automation" + ], + "examples": [ + { + "inputJson": "{\"videoFile\":\"data:video/mp4;base64,AAAA...\",\"title\":\"Company Intro\",\"description\":\"Welcome video for new hires.\",\"privacy\":\"private\",\"tags\":[\"intro\",\"hr\"],\"apiKey\":\"abcdef123456\",\"uploadEndpoint\":\"https://api.videohost.com/upload\"}", + "description": "Uploads an mp4 video as a private video with title and tags to company's video hosting API." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "api-integration.formatArticle", + "description": "This tool accepts a raw article text input along with optional formatting preferences such as style, language, and output format. It processes the text content by applying consistent formatting, structuring headings, paragraphs, and optionally translating or adapting style according to publisher guidelines. The output is a cleaned, well-structured article string ready for publication or further API processing.", + "category": "api-integration", + "parameters": [ + { + "name": "articleText", + "type": "string", + "description": "The raw text content of the article to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Optional style guide or formatting preset to apply, e.g., APA, Chicago, or custom.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for output localization or language-specific formatting rules, e.g., 'en', 'fr'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the formatted article, e.g., 'html', 'markdown', or 'plain'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeTOC", + "type": "boolean", + "description": "Whether to generate and include a table of contents in the formatted output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article string and metadata such as word count and detected language." + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize or prepare raw article text for presentation or publishing workflows by applying formatting and structure automatically. Ideal for API orchestration where raw inputs vary but consistent output formatting is required.", + "limitations": "Does not perform deep content editing, fact-checking, or advanced linguistic translation beyond light localization. Not a full CMS or publishing platform.", + "examples": [ + "Format a blog post in markdown style for English audience with a table of contents.", + "Convert a plain article text into HTML with APA style formatting applied.", + "Prepare a raw news article for publication with default styling in plain text format." + ] + }, + "tags": [ + "api-integration", + "formatting", + "articles", + "text-processing", + "content-publishing", + "localization" + ], + "examples": [ + { + "inputJson": "{\"articleText\":\"Raw article text goes here. This is a sample.\",\"styleGuide\":\"APA\",\"language\":\"en\",\"outputFormat\":\"html\",\"includeTOC\":true}", + "description": "Format an English article applying APA style and include a table of contents in HTML output." + }, + { + "inputJson": "{\"articleText\":\"Unformatted markdown content.\",\"outputFormat\":\"markdown\"}", + "description": "Convert raw article text into markdown format with default styling." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "api-integration.formatTable", + "description": "Formats tabular data from JSON objects or array inputs into structured tables suitable for display or report generation. Accepts raw data and configuration options to control column order, headers, alignment, and output style (e.g., markdown, HTML). Produces a formatted string representing the table as per the specified format.", + "category": "api-integration", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing rows of the table. Each object should have consistent keys for columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnOrder", + "type": "array", + "description": "Optional array of strings specifying the order of columns to display. If omitted, columns are taken from object keys in natural order.", + "required": false, + "defaultValue": "" + }, + { + "name": "headers", + "type": "array", + "description": "Optional array of strings specifying custom headers for each column. Must match columnOrder length if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "alignments", + "type": "array", + "description": "Optional array of strings to set alignment per column: 'left', 'center', or 'right'. Defaults to 'left'.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies output format style of the table. Supported: 'markdown', 'html', 'csv'. Default is 'markdown'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeBorders", + "type": "boolean", + "description": "Whether to include borders/borders styling in output if format supports it (like markdown tables). Default true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted table string under the 'formattedTable' property." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured data as an array of objects and need to convert it into a human-readable table format for documentation, reporting, web display, or markdown files. It helps to create consistent tabular formats reflecting ordering, naming, and alignment preferences.", + "limitations": "It does not parse or validate input data beyond object arrays. Does not support nested objects or hierarchical tables. Complex styling is limited to simple alignments and format choices.", + "examples": [ + "Format JSON data into a markdown table with customized headers and column order.", + "Generate an HTML table from API response data for a web dashboard.", + "Convert array of objects into CSV format for exporting data." + ] + }, + "tags": [ + "api-integration", + "table-formatting", + "data-presentation", + "markdown", + "html", + "csv" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"NY\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"LA\"}],\"columnOrder\":[\"name\",\"city\",\"age\"],\"headers\":[\"Name\",\"City\",\"Age\"],\"alignments\":[\"left\",\"center\",\"right\"],\"outputFormat\":\"markdown\",\"includeBorders\":true}", + "description": "Format a simple array of user data into a markdown table with specified column order, headers, and alignment." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Laptop\",\"price\":999.99,\"stock\":25},{\"product\":\"Smartphone\",\"price\":599.99,\"stock\":50}],\"outputFormat\":\"html\"}", + "description": "Generate an HTML table from product inventory data with default column order and headers." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2024-01-01\",\"event\":\"New Year\",\"location\":\"Global\"},{\"date\":\"2024-07-04\",\"event\":\"Independence Day\",\"location\":\"USA\"}],\"outputFormat\":\"csv\"}", + "description": "Convert event schedule data into CSV format without additional options." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "apiIntegration.formatComponent", + "description": "Formats a structured software component definition into a standardized code snippet or configuration block. Accepts component details such as type, properties, methods, and metadata, transforms and formats them according to specified output syntax or style, and returns the formatted code as a string suitable for direct use in projects.", + "category": "apiIntegration", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "The type of the component, e.g., 'React', 'Vue', 'Angular', or 'Generic'. Determines formatting conventions.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentName", + "type": "string", + "description": "The name identifier for the component to be used in code.", + "required": true, + "defaultValue": "" + }, + { + "name": "properties", + "type": "object", + "description": "An object defining component input properties (props/attributes) with their types and optional default values.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "methods", + "type": "array", + "description": "A list of method definitions including name and implementation as strings to include in the component.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata like author, version, description to include as comments or annotations in the formatted output.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the output syntax/style such as 'jsx', 'typescript', 'jsonSchema', or 'yaml'.", + "required": true, + "defaultValue": "jsx" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted code.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted component code as a string under 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate or reformat code components based on a structured description. It helps AI agents automate code scaffolding, standardize component definitions across projects, or prepare components in multiple output formats for integration or documentation.", + "limitations": "This tool focuses on formatting and generating static component code segments. It does not generate full application logic, perform syntax validation beyond basic structural rules, or execute components. It also does not support dynamic runtime code transformation.", + "examples": [ + "Format a React component named 'Button' with props and click handler methods in JSX.", + "Generate a TypeScript interface component definition from given properties and metadata.", + "Output a JSON Schema representation for a generic UI component description." + ] + }, + "tags": [ + "api-integration", + "formatting", + "code-generation", + "component", + "ui", + "development", + "scaffolding" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"React\",\"componentName\":\"Button\",\"properties\":{\"label\":{\"type\":\"string\",\"default\":\"Click Me\"},\"disabled\":{\"type\":\"boolean\"}},\"methods\":[{\"name\":\"handleClick\",\"implementation\":\"() => alert('Clicked!')\"}],\"metadata\":{\"author\":\"Dev Team\",\"version\":\"1.0\",\"description\":\"A customizable button component.\"},\"outputFormat\":\"jsx\",\"indentation\":2}", + "description": "Format a React Button component with properties and a click handler into JSX code." + }, + { + "inputJson": "{\"componentType\":\"Generic\",\"componentName\":\"UserCard\",\"properties\":{\"username\":{\"type\":\"string\"},\"age\":{\"type\":\"number\"}},\"methods\":[],\"metadata\":{\"author\":\"Example Author\"},\"outputFormat\":\"jsonSchema\",\"indentation\":2}", + "description": "Generate a JSON Schema representation for a generic UserCard component description." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "api-integration.draftInvoice", + "description": "Creates a draft invoice by accepting client, itemized services/products, tax details, and payment terms as input. Processes the data to generate a standardized invoice document object containing totals, taxes, and formatting ready for review or sending. Outputs a structured invoice JSON with all relevant invoice fields populated.", + "category": "api-integration", + "parameters": [ + { + "name": "clientDetails", + "type": "object", + "description": "Information about the client including name, address, and contact info.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineItems", + "type": "array", + "description": "Array of objects representing each billed service or product with description, quantity, unitPrice.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate percentage to calculate taxes on subtotal.", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) for invoice amounts.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Payment terms text or code (e.g., 'Net 30', 'Due on receipt').", + "required": false, + "defaultValue": "Net 30" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date of invoice issuance in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date for payment in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or instructions to include on the invoice.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive invoice object including invoice number, client info, array of line items with totals, subtotal, taxes, total due, currency, dates, payment terms, and notes." + }, + "aiAgent": { + "useCase": "Use this tool when generating a complete draft invoice document from raw client and billing information within an API integration context. It is ideal for automating invoice creation prior to sending or storing in financial systems.", + "limitations": "Does not send invoices, handle payments, or validate legal compliance of invoice format. Does not assign invoice numbers automatically unless provided separately.", + "examples": [ + "Generate a draft invoice for client ABC Corp with 3 services including quantities and prices, tax 8%, USD currency, payment terms net 30.", + "Create an invoice draft for a one-time sale with no tax and immediate payment due.", + "Draft an invoice with detailed notes and customized due date for a consulting project." + ] + }, + "tags": [ + "api", + "invoice", + "billing", + "finance", + "document", + "automation", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"clientDetails\":{\"name\":\"ABC Corp\",\"address\":\"123 Business Rd, Commerce City\",\"email\":\"billing@abccorp.com\"},\"lineItems\":[{\"description\":\"Website design\",\"quantity\":1,\"unitPrice\":1500},{\"description\":\"Hosting (3 months)\",\"quantity\":3,\"unitPrice\":50}],\"taxRate\":8,\"currency\":\"USD\",\"paymentTerms\":\"Net 30\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-07-01\",\"notes\":\"Thank you for your business.\"}", + "description": "Draft invoice for a client with multiple line items, tax applied, and payment terms." + }, + { + "inputJson": "{\"clientDetails\":{\"name\":\"Jane Doe\",\"address\":\"456 Maple St\",\"email\":\"jane@example.com\"},\"lineItems\":[{\"description\":\"Consultation\",\"quantity\":2,\"unitPrice\":300}],\"taxRate\":0,\"currency\":\"USD\",\"paymentTerms\":\"Due on receipt\",\"invoiceDate\":\"2024-06-10\",\"notes\":\"Please pay promptly.\"}", + "description": "Single-item invoice draft with no tax and immediate payment due." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "api-integration.composeLink", + "description": "Composes a valid URL link by integrating a base URL with path segments, query parameters, and optional fragments. Accepts inputs for URL parts, merges them following standard URL encoding rules, and returns a complete, well-formed URL string ready for API calls or web navigation.", + "category": "api-integration", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL to which paths and parameters will be appended, e.g., 'https://api.example.com'.", + "required": true, + "defaultValue": "" + }, + { + "name": "pathSegments", + "type": "array", + "description": "An array of strings representing path segments to append to the base URL, e.g., ['users','123','profile'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "queryParams", + "type": "object", + "description": "Key-value pairs representing query parameters to append, with keys as parameter names and values as parameter values, e.g., {'sort':'desc','limit':'10'}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "fragment", + "type": "string", + "description": "Optional URL fragment to append after a hash (#), e.g., 'section1'.", + "required": false, + "defaultValue": "" + }, + { + "name": "encode", + "type": "boolean", + "description": "Whether to URL-encode path segments and query parameter values to ensure validity. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed URL string in the 'url' field." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to dynamically generate precise API endpoint URLs or web links by combining multiple URL parts, query parameters, and optional URL fragments with proper encoding to ensure valid and navigable URLs. It is particularly useful for orchestrating API requests across services or constructing shareable links with parameters.", + "limitations": "This tool does not validate the accessibility or correctness of the composed URL beyond syntax. It assumes the inputs are semantically correct and does not handle authentication tokens or URL signing.", + "examples": [ + "Compose a REST API endpoint by joining base URL 'https://api.example.com', path segments ['users', 'john_doe'], and query parameters {'include':'profile','limit':'5'}", + "Create a web URL with base 'https://example.com', path ['articles','latest'], no query parameters, and fragment 'comments'", + "Generate a URL with special characters in path and query that need encoding, e.g., path ['search', 'C# tutorial'], query {'q':'C# tutorial','page':'1'}" + ] + }, + "tags": [ + "api", + "url", + "composition", + "integration", + "link" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://api.example.com\",\"pathSegments\":[\"users\",\"john_doe\"],\"queryParams\":{\"include\":\"profile\",\"limit\":\"5\"},\"fragment\":\"\",\"encode\":true}", + "description": "Compose an API endpoint URL with path and query parameters." + }, + { + "inputJson": "{\"baseUrl\":\"https://example.com\",\"pathSegments\":[\"articles\",\"latest\"],\"queryParams\":{},\"fragment\":\"comments\",\"encode\":true}", + "description": "Generate a web URL pointing to a fragment section." + }, + { + "inputJson": "{\"baseUrl\":\"https://search.com\",\"pathSegments\":[\"search\",\"C# tutorial\"],\"queryParams\":{\"q\":\"C# tutorial\",\"page\":\"1\"},\"fragment\":\"\",\"encode\":true}", + "description": "Create a URL with special characters requiring encoding." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "api-integration.composeArticle", + "description": "This tool accepts input parameters including a list of topic keywords, desired article length, writing style, and target audience profile. It then orchestrates calls to content generation APIs and NLP services to create a coherent, well-structured article draft. The output is a JSON object containing the article title, body text, and optional metadata such as keywords and summary.", + "category": "api-integration", + "parameters": [ + { + "name": "topicKeywords", + "type": "array", + "description": "A list of topic keywords or phrases to guide the article content generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "articleLength", + "type": "number", + "description": "Desired approximate length of the article in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "writingStyle", + "type": "string", + "description": "Preferred writing style or tone (e.g., formal, casual, technical).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience to tailor the content appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate a summary for the article.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the article content (e.g., en, es).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed article with fields for title, body text, optional summary, and keywords." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate comprehensive articles or blog posts based on specific keywords or topics, tailored for a particular audience and style. It is useful for content marketing, automated document creation, and editorial assistance.", + "limitations": "Cannot guarantee factual accuracy or up-to-date information. The tool relies on external content generation APIs which might produce generic or repetitive text. It does not perform detailed fact-checking or domain-specific expert writing.", + "examples": [ + "Generate a 1500-word technical article on blockchain technology for software developers.", + "Create a casual style, 800-word blog post about healthy recipes for beginners.", + "Compose an article in Spanish about travel tips targeting young adults." + ] + }, + "tags": [ + "api-integration", + "article-composition", + "content-generation", + "nlp", + "writing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"topicKeywords\":[\"blockchain\",\"cryptocurrency\",\"decentralization\"],\"articleLength\":1500,\"writingStyle\":\"technical\",\"targetAudience\":\"software developers\",\"includeSummary\":true,\"language\":\"en\"}", + "description": "Generate a technical, detailed 1500-word article on blockchain for software developers." + }, + { + "inputJson": "{\"topicKeywords\":[\"healthy cooking\",\"easy recipes\"],\"articleLength\":800,\"writingStyle\":\"casual\",\"targetAudience\":\"beginner home cooks\",\"includeSummary\":false,\"language\":\"en\"}", + "description": "Create a casual, 800-word blog post with easy healthy recipes for beginners." + }, + { + "inputJson": "{\"topicKeywords\":[\"travel tips\",\"budget travel\"],\"articleLength\":1200,\"writingStyle\":\"casual\",\"targetAudience\":\"young adults\",\"includeSummary\":true,\"language\":\"es\"}", + "description": "Compose a Spanish article with travel tips for budget-conscious young adults." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "api-integration.draftSummary", + "description": "This tool accepts raw textual data from one or multiple API responses and drafts a concise, coherent summary highlighting key information and insights. It processes input text by analyzing content relevance and context, then outputs a structured summary suitable for reporting or quick reviews.", + "category": "api-integration", + "parameters": [ + { + "name": "inputTexts", + "type": "array", + "description": "Array of strings containing raw textual data to summarize, typically extracted from API responses.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the summary in words or characters to ensure concise output.", + "required": false, + "defaultValue": "200" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') specifying the language of the input texts and desired summary output.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "Whether to include important bullet-point highlights in the summary output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'summaryText' string with the drafted summary and optionally an array of 'highlights' if included." + }, + "aiAgent": { + "useCase": "Use this tool when multiple API responses or large raw texts need to be synthesized into a clear, concise summary for decision making, reporting, or presentation. Particularly useful for aggregating heterogeneous data from various endpoints into digestible insights.", + "limitations": "The tool cannot access or query APIs directly; it requires pre-fetched textual input. It may not fully capture complex technical details or nuance without detailed input. Summaries are limited by input quality and chosen maxLength parameter.", + "examples": [ + "Summarize multiple product review API responses into a concise overview to understand customer sentiment.", + "Draft a summary from security scan results across different services for an executive report.", + "Create a brief summary and key highlights from recent social media mentions retrieved via APIs." + ] + }, + "tags": [ + "api-integration", + "summary", + "text-processing", + "reporting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputTexts\":[\"The latest sales data shows a 15% increase in revenue compared to last quarter.\",\"Customer feedback indicates overall satisfaction with product updates but requests for faster delivery.\",\"Inventory levels remain stable with no critical shortages reported.\"],\"maxLength\":100,\"language\":\"en\",\"includeHighlights\":true}", + "description": "Summarize aggregated data from sales, customer feedback, and inventory APIs into a concise summary with highlights." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "api-integration.draftParagraph", + "description": "This tool accepts a topic or prompt and additional context parameters, then generates a coherent, contextually relevant paragraph suitable for API integration workflows such as content generation, documentation drafting, or message composing. It processes the input to produce a structured paragraph output string.", + "category": "api-integration", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or prompt to draft the paragraph about.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Additional context or background information to guide paragraph drafting.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the paragraph, e.g., formal, informal, persuasive, technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum length of the paragraph in characters. If zero or omitted, no limit applies.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted paragraph text as a string under 'paragraph' key." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate a clear, concise paragraph related to a given topic or context, especially to automate API-based document, content, or message generation processes. Ideal for producing textual sections that can be reviewed or integrated further.", + "limitations": "The tool cannot verify facts or provide source citations. It may generate plausible but inaccurate information and is limited to paragraph-length content, not full documents or multi-paragraph essays.", + "examples": [ + "Draft a formal paragraph about the benefits of integrating payment APIs.", + "Generate a technical paragraph explaining OAuth 2.0 in simple terms.", + "Compose a persuasive paragraph encouraging API adoption in system design." + ] + }, + "tags": [ + "drafting", + "paragraph", + "api-integration", + "content-generation", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of using REST APIs\",\"context\":\"For a software development team considering integration options.\",\"tone\":\"formal\",\"lengthLimit\":300}", + "description": "Drafts a formal paragraph highlighting the advantages of REST APIs for developers." + }, + { + "inputJson": "{\"topic\":\"OAuth 2.0 explained\",\"tone\":\"technical\",\"lengthLimit\":0}", + "description": "Generates a technical paragraph explaining OAuth 2.0 without length limitation." + }, + { + "inputJson": "{\"topic\":\"Encouraging API adoption\",\"context\":\"Small startups hesitant to invest in API infrastructure.\",\"tone\":\"persuasive\",\"lengthLimit\":250}", + "description": "Creates a persuasive paragraph targeting startups to motivate adoption of APIs." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "api-integration.draftSentence", + "description": "This tool generates a single coherent sentence based on a given topic, style, and keywords. It accepts inputs defining the subject matter, tone, and optional keywords to include, then produces a crafted sentence suitable for integration in API communication or automation workflows.", + "category": "api-integration", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme the sentence should be about.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The writing style or tone for the sentence, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keywords", + "type": "array", + "description": "An optional list of specific keywords to include in the sentence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The language in which to draft the sentence, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence string and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a concise, contextually relevant sentence for API payloads, messaging content, or integration text snippets. Ideal for crafting sentences dynamically based on topic and style parameters to automate API communication or generate text in service coordination.", + "limitations": "This tool generates only a single sentence and cannot produce paragraphs or multi-sentence texts. It does not guarantee factual correctness beyond input context and cannot handle very complex topics requiring deep knowledge.", + "examples": [ + "Draft a formal sentence about business analytics including keywords 'data', 'insights'.", + "Create a casual sentence about weather forecasting without specified keywords.", + "Generate a technical sentence in French about network security with keywords 'encryption', 'firewall'." + ] + }, + "tags": [ + "api-integration", + "text-generation", + "sentence-drafting", + "natural-language", + "automation", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"cloud computing benefits\",\"style\":\"formal\",\"keywords\":[\"scalability\",\"cost-efficiency\"],\"language\":\"en\"}", + "description": "Generate a formal sentence about cloud computing benefits incorporating keywords 'scalability' and 'cost-efficiency'." + }, + { + "inputJson": "{\"topic\":\"team collaboration\",\"style\":\"casual\",\"keywords\":[],\"language\":\"en\"}", + "description": "Create a casual sentence about team collaboration without specifying keywords." + }, + { + "inputJson": "{\"topic\":\"machine learning\",\"style\":\"technical\",\"keywords\":[\"algorithm\",\"dataset\"],\"language\":\"en\"}", + "description": "Produce a technical sentence discussing machine learning including the keywords 'algorithm' and 'dataset'." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "api-integration.buildWorkflow", + "description": "This tool accepts a configuration object defining a sequence of API calls, their parameters, and integration logic. It processes this input to generate an executable workflow script or configuration that orchestrates these APIs in the defined order with data passing and error handling. Output is a structured workflow representation ready for deployment or further automation.", + "category": "api-integration", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "A unique name to identify the workflow being built.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered list of step objects, each defining an API call with endpoint, method, headers, body, and output mappings.", + "required": true, + "defaultValue": "" + }, + { + "name": "errorHandlingStrategy", + "type": "string", + "description": "Strategy to apply for error handling such as 'retry', 'skip', or 'abort'.", + "required": false, + "defaultValue": "abort" + }, + { + "name": "globalHeaders", + "type": "object", + "description": "Optional headers to include in every API request of the workflow.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "inputParameters", + "type": "object", + "description": "Input parameters definitions that can be referenced in steps for dynamic data binding.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the fully assembled workflow with step executions, data flow, and error management policies ready for execution engines or visualizers." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create an integrated sequence of API calls representing a business or automation workflow. Ideal for designing multi-API orchestrations requiring conditional logic, data passing, and error management without manual coding.", + "limitations": "This tool does not execute the workflow; it only builds the workflow definition. It does not perform real-time API monitoring or debugging. Complex custom scripting within API calls may need to be added separately.", + "examples": [ + "Build a workflow to fetch user info from API1, transform data, and then send it to API2.", + "Create a sequence of payment processing steps with retries on failure and notification on abort.", + "Generate an automation workflow that combines CRM update followed by email notification steps." + ] + }, + "tags": [ + "api", + "workflow", + "automation", + "orchestration", + "integration", + "error-handling" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"UserDataSync\",\"steps\":[{\"name\":\"getUser\",\"endpoint\":\"https://api.example.com/users/{userId}\",\"method\":\"GET\",\"headers\":{},\"outputMapping\":{\"userData\":\"response.body\"}},{\"name\":\"sendToCRM\",\"endpoint\":\"https://crm.example.com/contacts\",\"method\":\"POST\",\"headers\":{\"Content-Type\":\"application/json\"},\"body\":{\"contact\": \"{{userData}}\"},\"outputMapping\":{} }],\"errorHandlingStrategy\":\"retry\",\"globalHeaders\":{\"Authorization\":\"Bearer token123\"},\"inputParameters\":{\"userId\":\"12345\"}}", + "description": "Defines a workflow to get user data and send it to CRM with retry on failure." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "api-integration.buildPackage", + "description": "This tool accepts API specifications, dependency declarations, and build configuration parameters to create a deployable software package that integrates multiple APIs. It processes inputs by resolving dependencies, generating code wrappers, and bundling into a package format like npm or Docker image, returning metadata about the built package.", + "category": "api-integration", + "parameters": [ + { + "name": "apiSpecifications", + "type": "array", + "description": "An array of API specification objects containing endpoints, methods, and schemas to be integrated into the package.", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencies", + "type": "object", + "description": "Key-value pairs of package dependencies with versions to include in the build process.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "buildConfig", + "type": "object", + "description": "Configuration object defining build options such as target environment, package format (e.g., npm, Docker), and optimization flags.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "packageName", + "type": "string", + "description": "The desired name for the generated package.", + "required": true, + "defaultValue": "" + }, + { + "name": "packageVersion", + "type": "string", + "description": "The version string for the package following semantic versioning (e.g. '1.0.0').", + "required": false, + "defaultValue": "1.0.0" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to include generated tests for the API integrations in the package.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "The result object including package metadata containing name, version, size, buildTimestamp, and an optional URL or path to the built package artifact." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a deployable software package that integrates multiple APIs based on their specifications and dependencies. It's ideal for automating API client SDK builds, deploying API gateway bundles, or creating microservice integrations. AI agents can orchestrate complex API setups by invoking this tool to produce ready-to-distribute packages.", + "limitations": "This tool does not execute runtime tests beyond basic code generation and cannot deploy packages to remote registries or environments. It does not resolve semantic conflicts beyond declared dependencies and requires valid API specs as input.", + "examples": [ + "Build a package named 'weather-aggregator' version '2.1.0' integrating OpenWeatherMap and WeatherAPI using the npm package format including tests.", + "Generate a Docker image package for internal APIs with specific build configurations disabling tests.", + "Create a minimal client SDK package for a public REST API, specifying dependencies and default buildConfig settings." + ] + }, + "tags": [ + "api", + "package-building", + "code-generation", + "integration", + "automation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"apiSpecifications\":[{\"name\":\"OpenWeatherMap\",\"endpoints\":[{\"method\":\"GET\",\"path\":\"/weather\",\"description\":\"Get current weather\"}]}],\"dependencies\":{\"axios\":\"^0.21.1\"},\"buildConfig\":{\"format\":\"npm\"},\"packageName\":\"weather-client\",\"packageVersion\":\"1.2.0\",\"includeTests\":true}", + "description": "Build an npm package named 'weather-client' version '1.2.0' that integrates OpenWeatherMap API with axios as dependency and includes tests." + }, + { + "inputJson": "{\"apiSpecifications\":[{\"name\":\"InternalAPI\",\"endpoints\":[{\"method\":\"POST\",\"path\":\"/submit\",\"description\":\"Submit data\"}]}],\"dependencies\":{},\"buildConfig\":{\"format\":\"docker\",\"optimize\":true},\"packageName\":\"internal-api-service\",\"packageVersion\":\"0.9.0\",\"includeTests\":false}", + "description": "Generate an optimized Docker format package named 'internal-api-service' version '0.9.0' integrating an internal POST API, excluding tests." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "api-integration.generateGraph", + "description": "This tool accepts structured data inputs such as arrays of objects or JSON data, along with configuration options defining graph type, labels, and styling preferences. It processes these inputs to generate a data visualization graph in a standard image or SVG format, suitable for embedding or further processing.", + "category": "api-integration", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points or objects to plot on the graph. Each item should contain values relevant to the graph type.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, e.g., 'bar', 'line', 'pie', 'scatter'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title of the graph to display at the top.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X-axis.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y-axis.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated graph image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated graph image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme identifier or hex color to style the graph elements.", + "required": false, + "defaultValue": "default" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output graph image. Supports 'png', 'jpeg', or 'svg'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated graph image data encoded as a base64 string, its MIME type, and metadata including dimensions and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert data arrays or JSON datasets into visual graphs for reports, dashboards, or presentations via API orchestration. Ideal for generating quick, standardized visual data representations on the fly, enabling seamless API-driven visualization workflows.", + "limitations": "This tool does not perform complex data analysis or statistical computations; input data must be preprocessed accordingly. It also cannot generate highly customized interactive graphs beyond basic visual styling and standard graph types.", + "examples": [ + "Generate a bar chart from monthly sales data JSON", + "Create a line graph of website traffic over time with labels", + "Produce a pie chart showing market share percentages" + ] + }, + "tags": [ + "api-integration", + "graph-generation", + "visualization", + "data-graph", + "chart", + "image-export" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"label\":\"Jan\",\"value\":120},{\"label\":\"Feb\",\"value\":150},{\"label\":\"Mar\",\"value\":100}],\"graphType\":\"bar\",\"title\":\"Quarterly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales\",\"width\":600,\"height\":400,\"colorScheme\":\"blue\",\"outputFormat\":\"png\"}", + "description": "Generate a blue-themed bar chart showing sales data for January to March with axis labels." + }, + { + "inputJson": "{\"data\":[{\"x\":1,\"y\":10},{\"x\":2,\"y\":15},{\"x\":3,\"y\":9}],\"graphType\":\"line\",\"title\":\"User Signups Over Time\",\"xAxisLabel\":\"Day\",\"yAxisLabel\":\"Signups\",\"width\":800,\"height\":450,\"outputFormat\":\"svg\"}", + "description": "Create an SVG line graph showing user signups across three days." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "api-integration.buildSchema", + "description": "This tool generates an API request and response schema based on user-provided API endpoint description and example payloads. It accepts an API endpoint description, example requests and responses, and optional preferences, then analyzes and produces a structured JSON Schema defining input parameters and output structure to assist in validation and integration.", + "category": "api-integration", + "parameters": [ + { + "name": "apiDescription", + "type": "string", + "description": "A textual description of the API endpoint's purpose and use, providing context for schema generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "exampleRequest", + "type": "object", + "description": "An example JSON object representing a typical API request payload for inferring input schema details.", + "required": false, + "defaultValue": "" + }, + { + "name": "exampleResponse", + "type": "object", + "description": "An example JSON object representing a typical API response payload used to construct the output schema.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeOptionalFields", + "type": "boolean", + "description": "Flag to indicate whether fields not present in examples but commonly optional should be included in the generated schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth for nested object traversal when generating schema definitions to control complexity.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing two JSON Schema definitions: 'requestSchema' for the API input and 'responseSchema' for the API output, suitable for validation and integration purposes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create structured and formal JSON schemas for new or undocumented API endpoints to facilitate validation, integration, and client generation. It helps agents standardize input/output formats from examples and descriptions, accelerating reliable API consumption.", + "limitations": "Cannot fully infer semantic validation rules, authentication requirements, or non-JSON payload schemas. Accuracy depends on quality and representativeness of example inputs/outputs. It does not replace manual schema review.", + "examples": [ + ": Generate API input/output schemas to validate requests and handle responses intelligently.", + "Create API documentation containing schemas from natural language endpoint description and sample payloads.", + "Automate API client generation by producing formal schemas as intermediate representation." + ] + }, + "tags": [ + "api", + "schema", + "json-schema", + "integration", + "validation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiDescription\":\"Create a user record with name, email, and optional age.\",\"exampleRequest\":{\"name\":\"John Doe\",\"email\":\"john@example.com\",\"age\":30},\"exampleResponse\":{\"id\":\"1234\",\"name\":\"John Doe\",\"email\":\"john@example.com\",\"age\":30,\"createdAt\":\"2024-01-01T12:00:00Z\"},\"includeOptionalFields\":true,\"maxDepth\":3}", + "description": "Generate JSON Schemas for a user creation API using provided example request and response to formalize input/output structures." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "api-integration.generateQuote", + "description": "Generates an inspirational or thematic quote based on input parameters such as category and author. Accepts optional filters for topic, author name, and language, then fetches or constructs a relevant quote. Outputs the quote text along with author and category metadata.", + "category": "api-integration", + "parameters": [ + { + "name": "category", + "type": "string", + "description": "The category or theme of the quote to generate, e.g., 'inspiration', 'love', 'humor'. If empty, returns a general quote.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional filter to generate a quote attributed to a specific author or figure. If empty, any author may be used.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code for the quote output, e.g., 'en' for English, 'es' for Spanish. Defaults to English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated quote. Quotes longer than this will be truncated or shortened if possible.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text, the author, the quote category, and the language used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide motivational, inspirational, or thematic quotes in response to user queries or for content enrichment, supporting optional filters like category and author to tailor the output.", + "limitations": "This tool cannot generate original quotes beyond known quote databases or reliably handle fictional authors; language support may be limited to common languages.", + "examples": [ + "Generate an inspirational quote about perseverance.", + "Provide a love quote by Shakespeare.", + "Return a humorous quote in Spanish not longer than 100 characters." + ] + }, + "tags": [ + "quote", + "generate", + "api-integration", + "content", + "inspiration" + ], + "examples": [ + { + "inputJson": "{\"category\":\"inspiration\",\"author\":\"\",\"language\":\"en\",\"maxLength\":150}", + "description": "Generate an inspirational quote in English without specifying author." + }, + { + "inputJson": "{\"category\":\"love\",\"author\":\"Shakespeare\",\"language\":\"en\",\"maxLength\":200}", + "description": "Generate a love-related quote attributed to Shakespeare in English." + }, + { + "inputJson": "{\"category\":\"humor\",\"author\":\"\",\"language\":\"es\",\"maxLength\":100}", + "description": "Generate a humorous quote in Spanish with a max length of 100 characters." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "api-integration.generateReadme", + "description": "Generates a comprehensive README document for an API project based on provided metadata such as API endpoints, usage instructions, authentication details, and examples. Accepts structured inputs describing API features and outputs a markdown formatted README file.", + "category": "api-integration", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The name of the API project or service to include in the README.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description of the API's purpose and functionality.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Current version of the API project, to document in the README.", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "endpoints", + "type": "array", + "description": "An array of endpoint objects describing API routes, methods, parameters, and responses.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Details about the authentication method(s) used by the API, such as token authentication or OAuth.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "An array of example requests with descriptions illustrating how to consume the API endpoints.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "The license type under which the API is released, e.g., MIT, Apache 2.0.", + "required": false, + "defaultValue": "\"MIT\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a markdown string under the 'readme' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a well-structured README document for an API project using structured metadata about the API's endpoints, authorization, and usage. It is ideal for creating documentation fast from existing API specifications or partial descriptions.", + "limitations": "This tool generates documentation based solely on input metadata; it cannot infer endpoints or behaviors not explicitly provided. It does not write extensive tutorials or deployment instructions unrelated to API usage.", + "examples": [ + "Generate a README for a REST API with 3 endpoints and OAuth authentication.", + "Create a README file documenting a new GraphQL API including example queries.", + "Produce a README with usage instructions and license details for an internal microservice API." + ] + }, + "tags": [ + "api", + "documentation", + "readme", + "generate", + "integration", + "markdown", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"TaskManager API\",\"description\":\"API for managing user tasks and projects.\",\"version\":\"2.1.0\",\"endpoints\":[{\"path\":\"/tasks\",\"method\":\"GET\",\"description\":\"Retrieve list of tasks\",\"parameters\":[],\"response\":\"List of tasks.\"},{\"path\":\"/tasks\",\"method\":\"POST\",\"description\":\"Create a new task\",\"parameters\":[{\"name\":\"title\",\"type\":\"string\",\"required\":true}],\"response\":\"Created task object.\"}],\"authentication\":{\"type\":\"Bearer Token\",\"instructions\":\"Provide Bearer token in Authorization header.\"},\"usageExamples\":[{\"description\":\"Get all tasks\",\"request\":\"curl -H 'Authorization: Bearer {token}' https://api.example.com/tasks\"}],\"license\":\"Apache 2.0\"}", + "description": "Generate README for TaskManager API describing endpoints, auth, and examples." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "api-integration.generateYAML", + "description": "Generates a YAML-formatted string from a given JSON object or nested data structure. Accepts input data as JSON or JavaScript object, applies optional formatting options, and outputs a properly indented YAML string suitable for configuration files, API specs, or data serialization.", + "category": "api-integration", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The input data structure (JSON object or nested JavaScript object) to convert into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces used for indentation in the output YAML. Commonly 2 or 4.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeDocumentStart", + "type": "boolean", + "description": "Whether to include the YAML document start marker '---' at the beginning of the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "skipNullValues", + "type": "boolean", + "description": "If true, keys with null or undefined values will be excluded from the YAML output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "When true, object keys will be sorted alphabetically in the YAML output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object with a single 'yamlString' property containing the YAML-formatted string generated from the input data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured JSON or object data into human-readable YAML format, for example when generating API specifications, configuration files, or data exchange formats that require YAML.", + "limitations": "This tool cannot convert non-object input such as strings or arrays directly without wrapping them in an object. It does not validate YAML semantic correctness beyond formatting and cannot merge or manipulate YAML documents beyond generation from input data.", + "examples": [ + "Convert API specification JSON data to YAML to prepare for OpenAPI documentation.", + "Generate configuration YAML from a nested JavaScript object with sorted keys and indentation of 4 spaces.", + "Produce a YAML string from JSON input while excluding null values for cleaner config files." + ] + }, + "tags": [ + "api-integration", + "data-formatting", + "YAML", + "serialization", + "configuration", + "API", + "conversion", + "generate" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"server\":{\"host\":\"localhost\",\"port\":8080},\"database\":{\"user\":\"admin\",\"password\":null,\"enabled\":true}},\"indentation\":2,\"includeDocumentStart\":true,\"skipNullValues\":true,\"sortKeys\":true}", + "description": "Generate YAML from nested data excluding nulls, sorting keys, with 2-space indent and document start marker." + }, + { + "inputJson": "{\"inputData\":{\"name\":\"ExampleApp\",\"version\":\"1.0.0\",\"features\":[\"auth\",\"logging\"],\"maintainer\":null},\"indentation\":4,\"includeDocumentStart\":false,\"skipNullValues\":true,\"sortKeys\":false}", + "description": "Produce YAML with 4-space indentation excluding null maintainer field without document start." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "api-integration.createConversion", + "description": "This tool creates a conversion event in an analytics or marketing platform by accepting conversion details such as event name, timestamp, user identifier, and metadata. It processes the input to format and send the event data through the platform's API, returning a status confirmation and event ID upon success.", + "category": "api-integration", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "The target analytics or marketing platform to send the conversion event to (e.g., GoogleAnalytics, FacebookAds).", + "required": true, + "defaultValue": "" + }, + { + "name": "eventName", + "type": "string", + "description": "The name of the conversion event (e.g., purchase, signup).", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "A unique identifier for the user who triggered the conversion.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp when the conversion happened.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional conversion-related details such as revenue, currency, product info, or campaign data.", + "required": false, + "defaultValue": "" + }, + { + "name": "testEvent", + "type": "boolean", + "description": "Flag indicating if this is a test event; test events do not affect real analytics data.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the conversion event creation, including success boolean, event ID, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to record or report a conversion event to a specified analytics or marketing platform via API integration. This is useful for automating conversion tracking, attributing user actions, and feeding data into campaign analytics.", + "limitations": "This tool does not handle bulk batch ingestion of conversion events, real-time streaming at very high volume, or complex user attribution modeling. It requires valid platform credentials and proper API configuration outside the tool.", + "examples": [ + "Create a purchase conversion event in Google Analytics with revenue and currency details.", + "Record a user signup conversion event in Facebook Ads platform including user identifier and timestamp.", + "Send a test conversion event to verify the integration with an advertising platform without affecting production data." + ] + }, + "tags": [ + "api", + "analytics", + "conversion", + "marketing", + "event-tracking", + "integration" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"GoogleAnalytics\",\"eventName\":\"purchase\",\"userId\":\"user_12345\",\"timestamp\":\"2024-06-01T12:00:00Z\",\"metadata\":{\"revenue\":99.99,\"currency\":\"USD\",\"productId\":\"prod_678\"},\"testEvent\":false}", + "description": "Create a purchase conversion event in Google Analytics with monetary and product details." + }, + { + "inputJson": "{\"platform\":\"FacebookAds\",\"eventName\":\"signup\",\"userId\":\"user_abcde\",\"timestamp\":\"2024-06-01T15:30:00Z\",\"metadata\":{},\"testEvent\":true}", + "description": "Send a test signup conversion event to Facebook Ads to validate API integration without affecting real data." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "api-integration.createAudio", + "description": "Creates an audio file by synthesizing speech from provided text or by mixing multiple audio sources. Accepts text input and optional voice parameters to generate speech or audio files like MP3 or WAV. Outputs a URL or base64 encoded audio data for playback or download.", + "category": "api-integration", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content to be converted into speech audio.", + "required": true, + "defaultValue": "" + }, + { + "name": "voice", + "type": "string", + "description": "The voice identifier or name to use for speech synthesis (e.g., 'en-US-Wavenet-D').", + "required": false, + "defaultValue": "en-US-Wavenet-D" + }, + { + "name": "format", + "type": "string", + "description": "The audio file format to output, such as 'mp3' or 'wav'.", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "sampleRateHertz", + "type": "number", + "description": "Sample rate of the output audio in hertz (e.g., 22050).", + "required": false, + "defaultValue": "22050" + }, + { + "name": "effectsProfileId", + "type": "array", + "description": "List of audio effects profiles to apply, such as 'headphone-class-device' for enhanced audio output.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "pitch", + "type": "number", + "description": "Pitch adjustment for synthesized speech in semitones; positive values make voice higher.", + "required": false, + "defaultValue": "0" + }, + { + "name": "speakingRate", + "type": "number", + "description": "Speaking rate/speed of synthesis, where 1.0 is the default normal speed.", + "required": false, + "defaultValue": "1.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the audio content encoded in base64 and a direct download URL if available." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate speech or audio from text dynamically, such as creating voice responses, announcements, or audio content integration in applications. It is useful for chatbots, accessibility features, or media content creation when an audio file output is required.", + "limitations": "This tool does not support advanced audio mixing beyond basic effects and does not generate music or sounds from non-text inputs. It depends on external TTS engines and may have regional voice availability restrictions.", + "examples": [ + "Generate a welcoming message audio from input text for a virtual assistant.", + "Create an MP3 audio file saying 'Hello, how can I assist you today?' with a specific US English voice.", + "Produce a WAV format audio with slower speaking rate for easier comprehension in a learning app." + ] + }, + "tags": [ + "audio", + "speech synthesis", + "text-to-speech", + "media", + "API", + "voice", + "audio generation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to our service, how can I help you today?\",\"voice\":\"en-GB-Standard-A\",\"format\":\"mp3\",\"speakingRate\":1.0}", + "description": "Generate a standard British English MP3 audio welcoming the user." + }, + { + "inputJson": "{\"text\":\"Please listen carefully to the instructions.\",\"pitch\":-2,\"format\":\"wav\",\"sampleRateHertz\":16000}", + "description": "Create a lower-pitch WAV audio with a 16kHz sample rate for clear instructions." + }, + { + "inputJson": "{\"text\":\"Your order has been shipped.\",\"voice\":\"en-US-Wavenet-F\",\"effectsProfileId\":[\"headphone-class-device\"],\"format\":\"mp3\"}", + "description": "Generate an MP3 notification with a US voice and headphone audio effect." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "api-integration.createDiagram", + "description": "Creates a customizable diagram by integrating data from multiple APIs. Accepts structured input defining diagram type, data sources (API endpoints), relationships, and styling options. Processes API data to generate nodes and edges, producing an interactive diagram output in JSON format suitable for visualization or embedding.", + "category": "api-integration", + "parameters": [ + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to create, e.g., 'flowchart', 'network', 'orgChart'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "Array of objects with API endpoint URLs and optional request parameters to fetch data for the diagram nodes and edges.", + "required": true, + "defaultValue": "" + }, + { + "name": "relationships", + "type": "array", + "description": "Defines connections or edges between nodes based on data fields or rules, to model relationships in the diagram.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Styling preferences including colors, shapes, fonts, and layout preferences for the diagram.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional credentials or tokens required to access secured APIs defined in dataSources.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "JSON object representing the fully constructed diagram with nodes, edges, and styling metadata suitable for rendering or further manipulation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visually represent complex relationships by aggregating and orchestrating data from multiple external APIs into a cohesive diagram format. It is ideal for scenarios like visualizing organizational structures, network topologies, or workflow processes dynamically.", + "limitations": "Does not render graphical images directly; outputs structured diagram data which requires a visualization layer. Complex or large datasets may require additional optimization for performance. Cannot generate proprietary diagram formats without conversion.", + "examples": [ + "Create a flowchart showing customer journey stages by combining CRM and analytics APIs.", + "Generate an organizational chart from HR system and directory APIs, mapping reporting lines.", + "Build a network diagram by fetching device and connection data from network management APIs." + ] + }, + "tags": [ + "api", + "diagram", + "visualization", + "integration", + "data", + "flowchart", + "network", + "orgchart" + ], + "examples": [ + { + "inputJson": "{\"diagramType\":\"flowchart\",\"dataSources\":[{\"url\":\"https://api.example.com/user-journey\",\"params\":{\"status\":\"active\"}}],\"relationships\":[{\"fromField\":\"previousStep\",\"toField\":\"currentStep\"}],\"styleOptions\":{\"nodeColor\":\"#4A90E2\",\"edgeColor\":\"#888888\"}}", + "description": "Generate a flowchart based on user journey stages from an analytics API, styling nodes blue and edges grey." + }, + { + "inputJson": "{\"diagramType\":\"orgChart\",\"dataSources\":[{\"url\":\"https://hr.example.com/api/employees\"}],\"relationships\":[{\"fromField\":\"managerId\",\"toField\":\"employeeId\"}],\"styleOptions\":{\"nodeShape\":\"ellipse\",\"fontSize\":12}}", + "description": "Create an organizational chart from HR employee data, showing reporting lines with elliptical nodes and defined font size." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "api-integration.createMarkdown", + "description": "This tool accepts structured data and metadata inputs and generates a formatted Markdown document. It processes headers, paragraphs, lists, links, and code blocks from the input, outputting a complete Markdown string suitable for README files, documentation, or notes.", + "category": "api-integration", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the Markdown document (appears as H1 header).", + "required": false, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An ordered array of section objects defining content blocks like headers, paragraphs, lists, code snippets, or links.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTOC", + "type": "boolean", + "description": "Whether to generate and include a table of contents based on section headers.", + "required": false, + "defaultValue": "false" + }, + { + "name": "codeBlockLanguage", + "type": "string", + "description": "Default programming language specification for code blocks if not individually set.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the complete generated Markdown string under the 'markdown' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to programmatically generate or assemble a Markdown document from structured data inputs, for example converting API responses, summaries, or content outlines into well-formatted Markdown text suitable for documentation, reports, or publishing.", + "limitations": "This tool cannot fetch or parse raw text or HTML to Markdown automatically; it requires structured input defining the Markdown elements. It also does not validate Markdown syntax beyond generating standard formatting.", + "examples": [ + "Create a README document with a title, introduction paragraph, list of features, and example code block.", + "Generate documentation pages with multiple sections including headers, paragraphs, and links, optionally including a table of contents." + ] + }, + "tags": [ + "api", + "markdown", + "document-generation", + "formatting", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Sample API Documentation\",\"sections\":[{\"type\":\"header\",\"level\":2,\"text\":\"Introduction\"},{\"type\":\"paragraph\",\"text\":\"This API allows access to user data.\"},{\"type\":\"header\",\"level\":2,\"text\":\"Features\"},{\"type\":\"list\",\"style\":\"unordered\",\"items\":[\"Get user info\",\"Update user profile\",\"Delete user account\"]},{\"type\":\"header\",\"level\":2,\"text\":\"Example\"},{\"type\":\"code\",\"language\":\"javascript\",\"code\":\"fetch('/api/user').then(res => res.json()).then(data => console.log(data));\"}]}", + "description": "Generate a simple API documentation Markdown file with multiple sections, lists, and a code block." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "api-integration.createProposal", + "description": "Creates a structured business proposal document by integrating input data such as client details, project scope, pricing, and timelines. It processes this information to generate a comprehensive proposal output suitable for sending to clients or internal review.", + "category": "api-integration", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Name of the client for whom the proposal is created", + "required": true, + "defaultValue": "" + }, + { + "name": "projectTitle", + "type": "string", + "description": "Title or name of the project covered by the proposal", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "Detailed description of the project scope and objectives", + "required": true, + "defaultValue": "" + }, + { + "name": "pricing", + "type": "object", + "description": "Pricing details including cost breakdown and total amount", + "required": true, + "defaultValue": "" + }, + { + "name": "timeline", + "type": "string", + "description": "Estimated timeline or schedule for the project delivery", + "required": false, + "defaultValue": "" + }, + { + "name": "termsAndConditions", + "type": "string", + "description": "Legal terms, conditions, and clauses to include in the proposal", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any extra notes or remarks to include in the proposal", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a ProposalDocument object containing the full formatted proposal text and metadata" + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to automate the creation of business proposals from raw input data, integrating varied inputs like client information, pricing, and terms to generate a professional proposal document. It helps streamline sales workflows and reduces manual document preparation.", + "limitations": "Does not generate contract-signing workflows or handle digital signature integration. It produces the proposal content but does not send or track the document.", + "examples": [ + "Create a proposal for Acme Corp for a website redesign project including pricing and timeline.", + "Generate a business proposal with detailed project description and customized legal terms.", + "Prepare a client proposal summarizing project scope, costs, and delivery schedule." + ] + }, + "tags": [ + "api-integration", + "proposal", + "business-document", + "automation", + "sales", + "client-management" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"projectTitle\":\"Website Redesign\",\"projectDescription\":\"Complete overhaul of company website with updated UI, SEO optimized content, and eCommerce integration.\",\"pricing\":{\"design\":5000,\"development\":12000,\"total\":17000},\"timeline\":\"6 months\",\"termsAndConditions\":\"Payment due within 30 days of invoice.\",\"additionalNotes\":\"Includes 3 months free maintenance.\"}", + "description": "Creating a proposal document for a client website redesign project with pricing and terms." + }, + { + "inputJson": "{\"clientName\":\"Beta Ltd\",\"projectTitle\":\"Mobile App Development\",\"projectDescription\":\"Development of cross-platform mobile app with user authentication and push notifications.\",\"pricing\":{\"total\":25000},\"timeline\":\"4 months\",\"termsAndConditions\":\"Client liable for third-party app store fees.\",\"additionalNotes\":\"\"}", + "description": "Generating a mobile app development proposal with key project and pricing details." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "api-integration.createDependency", + "description": "Creates a dependency relationship between two software components or services within a codebase or system architecture. Accepts identifiers for the dependent and dependency components, type of dependency (e.g., compile-time, runtime), and optional metadata. Returns a confirmation of the created dependency including IDs and timestamps.", + "category": "api-integration", + "parameters": [ + { + "name": "dependentId", + "type": "string", + "description": "Identifier of the component that depends on another component (dependent).", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyId", + "type": "string", + "description": "Identifier of the component that is depended upon (dependency).", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyType", + "type": "string", + "description": "Type of the dependency relationship, e.g., 'compile-time', 'runtime', or 'development'.", + "required": true, + "defaultValue": "runtime" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data about the dependency relationship, such as version constraints or source repository info.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details of the created dependency including dependentId, dependencyId, dependencyType, metadata, a unique dependency record ID, and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically establish or update dependency relationships between code modules or services, for example when managing project dependencies, building service graphs, or automating architecture documentation. It helps maintain an accurate dependency map for downstream processes like build automation, impact analysis, or deployment orchestration.", + "limitations": "This tool does not resolve or fetch actual dependency files or validate that the dependencies exist outside the system; it merely records the relationship metadata. It cannot validate semantic compatibility or enforce dependency constraints beyond recording them.", + "examples": [ + "Create a runtime dependency from componentA to libraryX version 2.3.", + "Register a development dependency for testing framework in componentB.", + "Add metadata about the dependency source control for a compile-time dependency between two modules." + ] + }, + "tags": [ + "api", + "dependency", + "integration", + "software-architecture", + "automation", + "codebase", + "orchestration" + ], + "examples": [ + { + "inputJson": "{\"dependentId\":\"componentA\",\"dependencyId\":\"libraryX\",\"dependencyType\":\"runtime\",\"metadata\":{\"version\":\"2.3.1\",\"sourceRepo\":\"https://github.com/example/libraryX\"}}", + "description": "Create a runtime dependency from componentA to libraryX with version and source repo metadata." + }, + { + "inputJson": "{\"dependentId\":\"serviceUserAuth\",\"dependencyId\":\"serviceDatabase\",\"dependencyType\":\"compile-time\",\"metadata\":{}}", + "description": "Define a compile-time dependency relationship between user authentication service and database service." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "api-integration.createTemplate", + "description": "Creates a reusable API request template by accepting endpoint URL, HTTP method, headers, query parameters, and request body placeholders. It processes these inputs to generate a templated API call structure output, facilitating standardized and parameterized API interactions.", + "category": "api-integration", + "parameters": [ + { + "name": "endpointUrl", + "type": "string", + "description": "The base URL of the API endpoint to be templated.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method for the API request (e.g., GET, POST, PUT, DELETE).", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "An object representing header keys and values to include in the API template.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "queryParams", + "type": "object", + "description": "An object representing query parameter keys and default or placeholder values.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "bodyTemplate", + "type": "object", + "description": "An object representing the JSON body template with placeholders for data binding, used for methods like POST and PUT.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "templateName", + "type": "string", + "description": "A friendly name for the template to identify it in a collection or registry.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the generated API request template including endpoint, method, headers, query parameters, and body placeholders for reuse and parameter substitution." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define reusable, parameterized API call templates that standardize interactions with external services or microservices. Ideal for agents coordinating automated workflows requiring consistent API requests, or for generating SDK-like request blueprints from user specifications.", + "limitations": "This tool does not execute the API requests; it only creates structured templates. It also does not validate endpoint connectivity or response schemas. Complex conditional logic within templates is not supported.", + "examples": [ + "Create a template for POSTing JSON data to a user creation endpoint with authorization headers.", + "Generate a GET request template with query parameters to fetch paginated resources.", + "Define a template for PUT requests with a body template to update resource details." + ] + }, + "tags": [ + "api", + "template", + "integration", + "automation", + "http", + "request", + "parameterization", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"endpointUrl\":\"https://api.example.com/users\",\"httpMethod\":\"POST\",\"headers\":{\"Authorization\":\"Bearer {{token}}\",\"Content-Type\":\"application/json\"},\"queryParams\":{},\"bodyTemplate\":{\"name\":\"{{userName}}\",\"email\":\"{{userEmail}}\"},\"templateName\":\"CreateUser\"}", + "description": "Template for creating a user via POST with authorization and JSON body placeholders." + }, + { + "inputJson": "{\"endpointUrl\":\"https://api.example.com/items\",\"httpMethod\":\"GET\",\"headers\":{\"Accept\":\"application/json\"},\"queryParams\":{\"limit\":\"10\",\"offset\":\"0\"},\"bodyTemplate\":{},\"templateName\":\"ListItems\"}", + "description": "GET request template with pagination query parameters to list items." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "api-integration.createReadme", + "description": "Generates a structured README markdown document for an API integration project based on input details like project name, description, usage instructions, dependencies, and contact info. It produces a ready-to-use README.md content string formatted in markdown.", + "category": "api-integration", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the API integration project or library.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A concise description of what the API integration project does.", + "required": true, + "defaultValue": "" + }, + { + "name": "usageInstructions", + "type": "string", + "description": "Markdown formatted instructions on how to use the API integration, including examples.", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of key dependencies or requirements for the project, each as a string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Markdown formatted installation instructions for the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Contact information or links to get support or contribute to the project.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete README content in markdown format under the property readmeContent." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a well-structured README file for an API integration project based on supplied project details, usage, and installation info. It helps automate documentation creation to improve project onboarding and developer clarity.", + "limitations": "This tool generates static markdown content and does not validate the correctness of usage instructions or dependencies. It cannot fetch or infer missing project details beyond provided input.", + "examples": [ + "Generate a README for a weather API client, including usage and dependencies.", + "Create a README document for a payment gateway integration with installation and contact details.", + "Produce README content for a social media API wrapper with detailed usage examples." + ] + }, + "tags": [ + "api-integration", + "documentation", + "readme", + "markdown", + "automation", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"WeatherAPI Client\",\"projectDescription\":\"A Node.js client for fetching real-time weather data.\",\"usageInstructions\":\"1. Import the module\\n2. Create an instance with your API key\\n3. Call getCurrentWeather(location)\",\"dependencies\":[\"axios >= 0.21.1\",\"dotenv\"],\"installationInstructions\":\"Run npm install weatherapi-client\",\"contactInfo\":\"support@weatherapi.com\"}", + "description": "Generate README content for a weather API Node.js client including usage and dependencies." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "web-scraping.buildContainer", + "description": "Constructs a reusable, configurable 'container' abstraction for web scraping sessions, encapsulating target URLs, extraction rules, headers, and optional authentication. Accepts input parameters defining scraping targets and behaviors, processes them to create a structured container object, and outputs a JSON representation ready for automated scraping workflows.", + "category": "web-scraping", + "parameters": [ + { + "name": "containerName", + "type": "string", + "description": "A unique name to identify the scraping container", + "required": true, + "defaultValue": "" + }, + { + "name": "baseUrl", + "type": "string", + "description": "The base URL from which to initiate scraping within this container", + "required": true, + "defaultValue": "" + }, + { + "name": "extractionRules", + "type": "array", + "description": "An array of extraction rule objects defining CSS selectors or XPath expressions and the attribute or text to extract", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in scraping requests", + "required": false, + "defaultValue": "{}" + }, + { + "name": "cookies", + "type": "object", + "description": "Optional cookies to include for session management during scraping", + "required": false, + "defaultValue": "{}" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional authentication details, such as login URLs and credentials, to enable scraping behind login", + "required": false, + "defaultValue": "{}" + }, + { + "name": "pagination", + "type": "object", + "description": "Optional pagination rules to navigate through multiple pages when scraping data lists", + "required": false, + "defaultValue": "{}" + }, + { + "name": "rateLimit", + "type": "number", + "description": "Optional delay in milliseconds between requests to avoid server overload or IP blocking", + "required": false, + "defaultValue": "1000" + }, + { + "name": "userAgent", + "type": "string", + "description": "Optional user-agent string to specify the scraper's client identity", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the fully configured scraping container, including all input configurations structured for use by scraping engines." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare a comprehensive scraping container that packages target URLs, extraction logic, request headers, authentication, and navigation rules in a reusable format for automated or repeated web scraping tasks. It enables the AI to generate structured configurations for reliable scraping workflows.", + "limitations": "This tool does not perform the actual scraping or data extraction; it only creates the scraping configuration container. It also does not handle dynamic content rendering (e.g., JavaScript execution) or error handling during scraping.", + "examples": [ + "Create a container for scraping product prices from an e-commerce site using CSS selectors and pagination.", + "Build a scraping container with authentication and custom headers for accessing a private member-only forum.", + "Generate a scraping container that extracts news article titles and dates from multiple pages with appropriate rate limiting." + ] + }, + "tags": [ + "web scraping", + "configuration", + "automation", + "container", + "data extraction", + "pagination", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"containerName\":\"ecomProducts\",\"baseUrl\":\"https://shop.example.com/products\",\"extractionRules\":[{\"selector\":\".product-title\",\"attribute\":\"text\"},{\"selector\":\".price\",\"attribute\":\"text\"}],\"pagination\":{\"nextPageSelector\":\".pagination-next\",\"maxPages\":5},\"rateLimit\":1500,\"userAgent\":\"Mozilla/5.0 (compatible)\"}", + "description": "Build a scraping container for e-commerce product titles and prices with pagination and rate limiting." + }, + { + "inputJson": "{\"containerName\":\"privateForumScraper\",\"baseUrl\":\"https://forum.example.com/login\",\"extractionRules\":[{\"selector\":\".post-content\",\"attribute\":\"text\"}],\"authentication\":{\"loginUrl\":\"https://forum.example.com/login\",\"usernameField\":\"user\",\"passwordField\":\"pass\",\"username\":\"user123\",\"password\":\"s3cr3t\"},\"headers\":{\"Accept\":\"application/json\"}}", + "description": "Build a container for scraping posts from a forum requiring login with specified headers." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "web-scraping.composeWord", + "description": "This tool accepts a URL and a CSS selector as input and scrapes the webpage to extract text content matching the selector. It then composes and returns a single, cleaned word extracted from that content, suitable for use in keyword extraction, content analysis, or automation scripts requiring specific word data from web pages.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the web page to scrape text from.", + "required": true, + "defaultValue": "" + }, + { + "name": "cssSelector", + "type": "string", + "description": "A CSS selector string to target specific HTML elements containing the desired word.", + "required": true, + "defaultValue": "" + }, + { + "name": "wordPosition", + "type": "number", + "description": "The zero-based index of the word to extract after splitting the text content by whitespace. Defaults to the first word (0).", + "required": false, + "defaultValue": "0" + }, + { + "name": "cleanWord", + "type": "boolean", + "description": "If true, the extracted word will be lowercased and stripped of punctuation for standardized output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed word (string) extracted from the webpage and a boolean indicating whether extraction was successful." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically extract a specific single word from dynamic or static web pages by targeting HTML elements via CSS selectors. It is useful in scenarios such as keyword extraction from articles, retrieving product codes, or scraping labels where a precise word is needed rather than larger text blocks.", + "limitations": "This tool cannot extract multiple words or phrases, does not handle complex text processing like stemming or synonyms, and depends on the correctness of the CSS selector and availability of the webpage content. It cannot scrape pages requiring authentication or dynamic content loading without additional support.", + "examples": [ + "Extract the first word from the main heading of a product page.", + "Retrieve the third word inside a paragraph with class 'description' on a news site.", + "Get a cleaned single word from a specific span element identified by a CSS selector." + ] + }, + "tags": [ + "web-scraping", + "text-extraction", + "word-extraction", + "html-parsing", + "keyword", + "automation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/product/123\",\"cssSelector\":\"h1.product-title\",\"wordPosition\":0,\"cleanWord\":true}", + "description": "Extract the first word from the main product title on a product page." + }, + { + "inputJson": "{\"url\":\"https://news.example.com/article/456\",\"cssSelector\":\"p.description\",\"wordPosition\":2,\"cleanWord\":true}", + "description": "Get the third word from the paragraph with class 'description' in a news article." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "web-scraping.createDashboard", + "description": "Creates an interactive analytics dashboard by extracting data from specified websites. Accepts URLs and data extraction rules, performs web scraping to gather data, processes and aggregates it, and outputs a configurable dashboard visualization in HTML format.", + "category": "web-scraping", + "parameters": [ + { + "name": "sourceUrls", + "type": "array", + "description": "List of website URLs to scrape data from.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "scrapingRules", + "type": "object", + "description": "Mapping of CSS selectors or XPath expressions to extract the relevant data fields from each URL.", + "required": true, + "defaultValue": "{}" + }, + { + "name": "refreshIntervalMinutes", + "type": "number", + "description": "Time interval in minutes to automatically refresh the scraped data on the dashboard.", + "required": false, + "defaultValue": "60" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title displayed on the created dashboard.", + "required": false, + "defaultValue": "\"Web Scraping Dashboard\"" + }, + { + "name": "chartsConfig", + "type": "array", + "description": "Configuration of charts including type (bar, line, pie), data field mappings, and display options.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output dashboard; currently supports 'html' or 'json'.", + "required": false, + "defaultValue": "\"html\"" + }, + { + "name": "includeRawData", + "type": "boolean", + "description": "Whether to include a section with raw scraped data in the dashboard.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the dashboard content as a string (e.g., HTML), data summary statistics, and status information about the scraping process." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically extract data from multiple websites and visualize analytics through an interactive dashboard. It is suited for market research, competitive analysis, and monitoring public web data without manual aggregation.", + "limitations": "Cannot handle sites with anti-scraping measures like CAPTCHAs requiring human interaction or complex JavaScript-rendered content without additional browser automation setup. Does not provide backend server hosting; the output is a standalone dashboard file.", + "examples": [ + "Create a dashboard summarizing price data and ratings from a list of ecommerce product pages.", + "Generate analytics visualizing recent news headlines extracted from multiple news sites.", + "Build a real-time dashboard to monitor social media metrics scraped from public profiles." + ] + }, + "tags": [ + "web-scraping", + "dashboard", + "analytics", + "data-visualization", + "automation", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"sourceUrls\":[\"https://example.com/products\"],\"scrapingRules\":{\"productName\":\".product-title\",\"price\":\".price\"},\"refreshIntervalMinutes\":30,\"dashboardTitle\":\"Product Price Tracker\",\"chartsConfig\":[{\"type\":\"bar\",\"dataField\":\"price\",\"labelField\":\"productName\"}],\"outputFormat\":\"html\",\"includeRawData\":true}", + "description": "Create a product price tracker dashboard scraping product names and prices from an ecommerce site, refreshing every 30 minutes, showing a bar chart, including raw data." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "web-scraping.createComponent", + "description": "This tool generates reusable React components tailored for extracting and displaying data from specific web page elements. It accepts a target website URL and CSS selectors to define which parts of the page to scrape, plus optional data transformation rules. The output is clean, ready-to-use React component code that can embed web-scraped data dynamically.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the web page to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectors", + "type": "object", + "description": "An object mapping component prop names to CSS selectors identifying the specific HTML elements to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentName", + "type": "string", + "description": "The desired name for the generated React component.", + "required": true, + "defaultValue": "WebScrapedComponent" + }, + { + "name": "dataTransformations", + "type": "object", + "description": "Optional mapping of prop names to transformation functions as strings, applied to scraped data before rendering.", + "required": false, + "defaultValue": "" + }, + { + "name": "useTypeScript", + "type": "boolean", + "description": "Flag indicating if the generated component should be in TypeScript (true) or plain JavaScript (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object with a single property 'componentCode' containing the full source code string for the React component ready for integration." + }, + "aiAgent": { + "useCase": "Use this tool when needing a quick generation of reusable React components that embed web-scraped data from given web pages. It helps automate routine creation of data extraction components based on CSS selectors, streamlining integration of live web data into front-end applications.", + "limitations": "Cannot handle pages requiring authentication or complex JavaScript execution to render content fully. Generated components rely on defined selectors which may break if the website changes its structure. Does not scrape data itself at runtime; expects static extraction setup.", + "examples": [ + "Create a React component named 'NewsHeadline' that extracts headlines from a news site using CSS selectors.", + "Generate a TypeScript React component scraping product prices and names from an e-commerce product page.", + "Build a reusable component for scraping and displaying event dates and titles from a community calendar website." + ] + }, + "tags": [ + "web-scraping", + "component-generation", + "react", + "frontend", + "automation", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com/news\",\"selectors\":{\"headline\":\".main-headline\",\"summary\":\".summary-text\"},\"componentName\":\"NewsHeadline\",\"useTypeScript\":false}", + "description": "Generate a React component named NewsHeadline that extracts and displays the main headline and summary from https://example.com/news using CSS selectors." + }, + { + "inputJson": "{\"targetUrl\":\"https://shop.example.com/product/12345\",\"selectors\":{\"productName\":\"h1.product-title\",\"price\":\".price-value\"},\"componentName\":\"ProductInfo\",\"useTypeScript\":true}", + "description": "Create a TypeScript React component named ProductInfo that scrapes product name and price from an e-commerce product page." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "agent-management.analyzeBudget", + "description": "Analyzes a given project or department budget by evaluating allocated funds, expenses, and forecasting remaining resources. Accepts budget data as input, processes financial metrics to identify overspending, underfunding, and cash flow trends, and outputs a detailed analytical report with insights and recommendations.", + "category": "agent-management", + "parameters": [ + { + "name": "budgetData", + "type": "object", + "description": "Structured budget information including allocations, expenses, and categories for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisPeriod", + "type": "string", + "description": "Timeframe for analysis, e.g., 'Q1 2024' or '2024'.", + "required": false, + "defaultValue": "current fiscal year" + }, + { + "name": "includeForecast", + "type": "boolean", + "description": "Flag indicating whether to generate a budget forecast based on current trends.", + "required": false, + "defaultValue": "true" + }, + { + "name": "alertThreshold", + "type": "number", + "description": "Percentage threshold for budget overruns to trigger alerts in the report, e.g., 10 for 10%.", + "required": false, + "defaultValue": "10" + }, + { + "name": "categoriesToFocus", + "type": "array", + "description": "Optional list of budget categories (strings) to focus the analysis on.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An analytical report object containing summary statistics, identified budget issues, forecasts, and actionable recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when managing or monitoring budgets for projects, departments, or agents, especially to detect inefficiencies, forecast budget needs, and support financial decision-making. Ideal for agents needing comprehensive budget analysis and actionable insights to optimize resource allocation.", + "limitations": "Cannot access real-time financial systems or databases; input budgetData must be prepared and accurate. Does not execute transactions or real budget modifications; focused only on analysis and reporting.", + "examples": [ + "Analyze the Q2 2024 marketing budget focusing on advertising and personnel expenses for potential overruns.", + "Provide a budget analysis report including forecasts for the R&D department for the current fiscal year.", + "Evaluate the project budget data for cost saving opportunities and alert if any category exceeds 5% over budget." + ] + }, + "tags": [ + "analysis", + "budget", + "financial", + "agent-management", + "forecast", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"budgetData\":{\"totalAllocation\":500000,\"expenses\":{\"personnel\":200000,\"equipment\":150000,\"marketing\":100000},\"categories\":[\"personnel\",\"equipment\",\"marketing\"]},\"analysisPeriod\":\"Q2 2024\",\"includeForecast\":true,\"alertThreshold\":10,\"categoriesToFocus\":[\"marketing\",\"personnel\"]}", + "description": "Analyze Q2 2024 budget focusing on marketing and personnel categories with a 10% overrun alert threshold." + }, + { + "inputJson": "{\"budgetData\":{\"totalAllocation\":1000000,\"expenses\":{\"r&d\":450000,\"operations\":300000,\"sales\":150000},\"categories\":[\"r&d\",\"operations\",\"sales\"]},\"analysisPeriod\":\"2024\",\"includeForecast\":false,\"alertThreshold\":5,\"categoriesToFocus\":[]}", + "description": "Perform a budget analysis for entire 2024 fiscal year for all categories without forecast, with a 5% alert threshold." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Budget", + "context": null + } + }, + { + "name": "agent-management.renderLink", + "description": "This tool accepts a URL and optional display parameters to generate a safe, accessible HTML hyperlink snippet. It processes inputs such as link URL, display text, target behavior, and tooltip to produce well-formed link code for embedding in web pages or agent responses.", + "category": "agent-management", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL to render as a hyperlink.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "The text shown for the link; if empty, the URL is displayed.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "If true, the link opens in a new browser tab.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tooltip", + "type": "string", + "description": "Optional tooltip text displayed on hover.", + "required": false, + "defaultValue": "" + }, + { + "name": "cssClass", + "type": "string", + "description": "Optional CSS class string to be added to the link element.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML string for the link." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to generate a clickable hyperlink for user interfaces, chat outputs, or web content. It ensures valid, accessible, and customizable link rendering with safe defaults and options like opening in new tabs or adding tooltips, improving user experience and interface consistency.", + "limitations": "This tool only renders HTML link snippets; it does not validate the URL's security beyond basic sanitation or fetch link previews. It does not support rendering links in non-HTML formats or embed rich media such as thumbnails or icons.", + "examples": [ + "Generate a link to https://example.com with default display text.", + "Create a link to a documentation page opening in a new tab with a tooltip.", + "Render a link using custom CSS classes for styling." + ] + }, + "tags": [ + "web", + "html", + "link", + "rendering", + "agent-management", + "ui", + "accessibility" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://www.openai.com\"}", + "description": "Render a simple hyperlink using the URL as the display text." + }, + { + "inputJson": "{\"url\":\"https://www.example.com/docs\",\"displayText\":\"Example Docs\",\"openInNewTab\":true,\"tooltip\":\"Visit the example documentation\"}", + "description": "Render a link with custom display text, opening in a new tab and with a tooltip." + }, + { + "inputJson": "{\"url\":\"https://www.test.com\",\"displayText\":\"Test Site\",\"cssClass\":\"btn btn-primary\"}", + "description": "Render a link with custom display text and CSS classes for styling." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Link", + "context": null + } + }, + { + "name": "agent-management.formatHeading", + "description": "Formats a heading text for AI agent-generated content. Accepts a raw heading string along with parameters specifying heading level, style (such as Markdown, HTML, or plain text), and optional decoration settings (like adding emojis or underlines). Outputs the formatted heading string ready for insertion into documents or messages.", + "category": "agent-management", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The raw heading text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "headingLevel", + "type": "number", + "description": "The heading level indicating the size/importance (e.g., 1 for main heading, 2 for subheading).", + "required": false, + "defaultValue": "1" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The format style for the heading output, such as 'markdown', 'html', or 'plain'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "addDecorations", + "type": "boolean", + "description": "Whether to add decorative elements such as emojis or underlines around the heading.", + "required": false, + "defaultValue": "false" + }, + { + "name": "emoji", + "type": "string", + "description": "An optional emoji to prepend to the heading text if decorations are enabled.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string under the 'formattedHeading' key." + }, + "aiAgent": { + "useCase": "Use this tool when generating or managing agent communication, documentation, or UI content that requires consistent heading formatting to improve readability and visual structure. It helps ensure all headings conform to the specified style and hierarchy, facilitating clearer presentations or reports.", + "limitations": "Cannot interpret semantic meaning of headings or automatically generate heading content; only formats text provided. Limited to basic styles and decorations, not supporting complex styling or dynamic interactive elements.", + "examples": [ + "Format a level 2 heading as Markdown with an emoji at the start.", + "Format a level 1 heading as HTML without decorations.", + "Format a level 3 plain text heading with underline decoration (not applicable in plain text, so ignored)." + ] + }, + "tags": [ + "formatting", + "heading", + "content-structure", + "agent-communication", + "markdown", + "html" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Project Overview\",\"headingLevel\":2,\"formatStyle\":\"markdown\",\"addDecorations\":true,\"emoji\":\"🚀\"}", + "description": "Formats a level 2 Markdown heading with a rocket emoji prefix" + }, + { + "inputJson": "{\"headingText\":\"Agent Status Report\",\"headingLevel\":1,\"formatStyle\":\"html\",\"addDecorations\":false}", + "description": "Formats a top-level heading in HTML without decorations" + }, + { + "inputJson": "{\"headingText\":\"Next Steps\",\"headingLevel\":3,\"formatStyle\":\"plain\",\"addDecorations\":true}", + "description": "Formats a level 3 plain text heading; decorations ignored since plain text has no styling" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Heading", + "context": null + } + }, + { + "name": "agent-management.formatXML", + "description": "Formats a raw or unformatted XML string into a properly indented and readable XML structure. Accepts a string containing XML data, applies indentation and optional line breaks, and returns the formatted XML string for improved readability and easier debugging or display.", + "category": "agent-management", + "parameters": [ + { + "name": "xmlString", + "type": "string", + "description": "The raw or unformatted XML input string that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "string", + "description": "The characters used for each indentation level, e.g., two spaces, a tab character. Defaults to two spaces.", + "required": false, + "defaultValue": " " + }, + { + "name": "newline", + "type": "string", + "description": "The newline character or characters to use, e.g., '\\n' or '\\r\\n'. Defaults to '\\n'.", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "selfClosingTags", + "type": "boolean", + "description": "If true, formats empty elements as self-closing tags, e.g., <tag/> instead of <tag></tag>.", + "required": false, + "defaultValue": "true" + }, + { + "name": "preserveWhitespace", + "type": "boolean", + "description": "If true, preserves whitespace inside text nodes; if false, trims excess whitespace.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'formattedXML' with the properly indented and formatted XML string." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or minified XML data that needs to be displayed, logged, or edited in a human-friendly format. It helps AI agents standardize XML presentation for easier parsing by users and tools, improves readability when generating XML outputs, and assists debugging or documentation processes involving XML data.", + "limitations": "This tool formats XML strings for readability but does not validate XML correctness or fix invalid XML structures. It assumes well-formed input XML and does not handle XML schema validation or transformations.", + "examples": [ + "Format a compact XML string to readable form with default indentation.", + "Format XML with tabs instead of spaces for indentation.", + "Format XML and force self-closing tags for empty elements." + ] + }, + "tags": [ + "agent-management", + "formatting", + "XML", + "data-cleaning", + "pretty-print", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"xmlString\":\"<root><child attribute=\\\"value\\\">Text</child><empty></empty></root>\",\"indentation\":\" \",\"newline\":\"\\n\",\"selfClosingTags\":true,\"preserveWhitespace\":false}", + "description": "Formats simple XML with two-space indentation and self-closing for empty tags." + }, + { + "inputJson": "{\"xmlString\":\"<data><item>123</item><item>456</item></data>\",\"indentation\":\"\\t\",\"newline\":\"\\n\",\"selfClosingTags\":false,\"preserveWhitespace\":true}", + "description": "Formats XML using tab characters for indentation and preserves whitespace inside text nodes." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "XML", + "context": null + } + }, + { + "name": "agent-management.formatSpec", + "description": "Formats a raw AI agent specification document into a standardized, human- and machine-readable format. Accepts a specification document as a string or object, applies formatting rules (such as indentation, syntax normalization, and section ordering), and produces a clean, well-structured specification document string suitable for documentation or processing.", + "category": "agent-management", + "parameters": [ + { + "name": "specInput", + "type": "string", + "description": "The raw agent specification document content as a string to be formatted, in JSON or YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "The format of the input specification ('json' or 'yaml').", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the formatted specification ('json' or 'yaml').", + "required": false, + "defaultValue": "json" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "If true, the output will include indentation and line breaks for readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "If true, keys in objects will be sorted alphabetically to ensure consistent ordering.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted specification string and metadata." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent obtains a raw or inconsistent AI agent specification document and needs to convert it into a standard, cleanly formatted specification for clarity, validation, documentation, or further automated processing. It helps maintain uniformity in agent specs and prevents errors due to formatting inconsistencies.", + "limitations": "This tool does not validate the logical correctness or semantic integrity of the specification, only formatting and structural normalization. It cannot add content or correct invalid specification semantics.", + "examples": [ + "Format a raw JSON AI agent spec into pretty-printed YAML.", + "Convert a YAML spec document into JSON format with sorted keys for consistent output.", + "Normalize indentation and key ordering of an agent spec for documentation purposes." + ] + }, + "tags": [ + "agent-management", + "formatting", + "specification", + "yaml", + "json", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"specInput\":\"{\\\"name\\\":\\\"myAgent\\\",\\\"version\\\":1,\\\"description\\\":\\\"test agent\\\"}\",\"inputFormat\":\"json\",\"outputFormat\":\"yaml\",\"prettyPrint\":true,\"sortKeys\":true}", + "description": "Convert a JSON string specification to pretty YAML formatted output with sorted keys." + }, + { + "inputJson": "{\"specInput\":\"name: myAgent\\nversion: 2\\ndescription: simple agent\",\"inputFormat\":\"yaml\",\"outputFormat\":\"json\",\"prettyPrint\":true,\"sortKeys\":false}", + "description": "Convert YAML spec input to pretty-printed JSON output without sorting keys." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Spec", + "context": null + } + }, + { + "name": "agent-management.draftArticle", + "description": "This tool drafts an article based on provided parameters such as topic, target audience, tone, length, and keywords. It processes the input instructions to generate coherent, structured text content suitable for publication or review. The output includes the full article text along with metadata like title and summary.", + "category": "agent-management", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or theme of the article to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended readership or demographic for the article.", + "required": false, + "defaultValue": "general public" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the article, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "length", + "type": "number", + "description": "Approximate word count desired for the article.", + "required": false, + "defaultValue": "500" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords to be included or emphasized within the article.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate a brief summary for the article.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted article's title, full text content, and optionally a summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a coherent, structured article based on specific input criteria such as topic, audience, tone, and length. This is ideal for content generation tasks where publishing-ready text or drafts are required.", + "limitations": "The tool cannot guarantee factual accuracy or nuanced expertise in highly specialized fields. It also cannot perform deep research and relies on the input parameters to guide content generation. Editing and fact-checking by humans are recommended.", + "examples": [ + "Draft an article about renewable energy aimed at high school students with a casual tone, about 800 words, including 'solar power' and 'wind energy' as keywords.", + "Generate a formal article on data privacy laws targeting legal professionals, approximately 1200 words, with a summary included.", + "Create a brief informative article on healthy eating for the general public, around 400 words, with a positive tone and no keywords specified." + ] + }, + "tags": [ + "article generation", + "content creation", + "AI writing", + "drafting", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Climate Change and Its Impact\",\"targetAudience\":\"college students\",\"tone\":\"educational\",\"length\":700,\"keywords\":[\"greenhouse gases\",\"global warming\"],\"includeSummary\":true}", + "description": "Draft an educational article about climate change targeted at college students including keywords." + }, + { + "inputJson": "{\"topic\":\"Blockchain Technology\",\"targetAudience\":\"technology enthusiasts\",\"tone\":\"technical\",\"length\":1000,\"keywords\":[\"decentralization\",\"cryptocurrency\"],\"includeSummary\":false}", + "description": "Create a technical article about blockchain technology without summary." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Article", + "context": null + } + }, + { + "name": "agent-management.composeReference", + "description": "This tool accepts a collection of informational snippets, citations, or knowledge fragments as input, and composes a structured, well-organized reference document or resource. It processes the input to group content logically, standardize formatting, and generate properly formatted references suitable for AI agent use or documentation.", + "category": "agent-management", + "parameters": [ + { + "name": "contentItems", + "type": "array", + "description": "An array of objects representing individual informational items or citations to be included in the reference. Each item typically contains title, author, date, and content fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the composed reference document, e.g., 'markdown', 'html', or 'plaintext'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "groupBy", + "type": "string", + "description": "Specify the criterion to group content items, such as 'topic', 'author', or 'date'.", + "required": false, + "defaultValue": "topic" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate and include a summary section at the beginning of the reference document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style to apply for formatting references, e.g., 'APA', 'MLA', or 'Chicago'.", + "required": false, + "defaultValue": "APA" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed reference document as a string and metadata like item count and format used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to synthesize multiple informational references or citations into a cohesive document. Ideal for generating literature reviews, knowledge bases, or bibliographic references that require clear organization and formatting. It helps in consolidating disparate sources into a structured reference for further use or presentation.", + "limitations": "This tool does not perform verification of source accuracy or factual correctness. It does not generate new content beyond organization and formatting, nor does it interpret or analyze the content items.", + "examples": [ + "Compose a reference document from given research paper citations grouped by topic in APA style.", + "Generate a markdown-formatted reference list from multiple knowledge snippets with a summary included.", + "Create an HTML formatted reference grouping items by author without a summary section." + ] + }, + "tags": [ + "agent-management", + "reference", + "composition", + "documentation", + "bibliography", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"contentItems\":[{\"title\":\"AI in Healthcare\",\"author\":\"Smith, J.\",\"date\":\"2023-01-10\",\"content\":\"An overview of AI applications in medicine.\"},{\"title\":\"Machine Learning Basics\",\"author\":\"Doe, A.\",\"date\":\"2022-05-21\",\"content\":\"Introduction to machine learning concepts.\"}],\"outputFormat\":\"markdown\",\"groupBy\":\"topic\",\"includeSummary\":true,\"citationStyle\":\"APA\"}", + "description": "Compose a markdown reference document from two content items grouped by topic with a summary and APA citations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Reference", + "context": null + } + }, + { + "name": "agent-management.draftLink", + "description": "This tool accepts structured inputs such as a title, URL, optional description, tags, and metadata to draft a formatted and contextually relevant hyperlink. It processes these inputs to generate a clean, markdown-compatible link snippet or HTML anchor tag snippet ready for inclusion in agent-generated content or communications.", + "category": "agent-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The display text for the hyperlink, shown to end users.", + "required": true, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "The destination URL that the link points to.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional brief description of the link's content or purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of keywords related to the link for categorization or metadata.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Desired output format for the drafted link: 'markdown' or 'html'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted link snippet string and the format used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a user-friendly link snippet embedded with contextual information for communications, automated reports, or documentation. It streamlines producing correctly formatted links with optional descriptive metadata appropriate for markdown or HTML outputs.", + "limitations": "Does not verify URL validity or accessibility; does not shorten URLs; not designed to handle advanced link embedding such as rich media previews.", + "examples": [ + "Draft a markdown link for documentation page with description and tags.", + "Generate an HTML anchor tag linking to a website with a specific title.", + "Create a simple link snippet with only title and URL in markdown format." + ] + }, + "tags": [ + "link", + "drafting", + "agent-management", + "content-generation", + "markdown", + "html" + ], + "examples": [ + { + "inputJson": "{\"title\":\"TPMJS Official Docs\",\"url\":\"https://tpmjs.example.com/docs\",\"description\":\"Comprehensive documentation for TPMJS tools.\",\"tags\":[\"docs\",\"TPMJS\",\"tools\"],\"format\":\"markdown\"}", + "description": "Draft a markdown formatted link with title, URL, description, and tags." + }, + { + "inputJson": "{\"title\":\"AI Agents Homepage\",\"url\":\"https://agents.example.com\",\"format\":\"html\"}", + "description": "Generate a simple HTML anchor tag link with only title and URL." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Link", + "context": null + } + }, + { + "name": "agent-management.composeReply", + "description": "This tool generates a coherent and contextually appropriate reply message given an input prompt, conversation context, and optional tone or style guidelines. It processes the input text and parameters to compose a textual reply suitable for use in AI agents managing communications, producing a string output reply.", + "category": "agent-management", + "parameters": [ + { + "name": "inputPrompt", + "type": "string", + "description": "The initial message or query that requires a reply, providing the content to respond to.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversationContext", + "type": "array", + "description": "An optional array of previous messages in the conversation to provide context for the reply, where each message is an object with role and content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Optional parameter to specify the tone or style of the reply (e.g., formal, casual, friendly).", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the reply in characters or tokens to control verbosity.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a signature or closing phrase to the reply, useful for formal communications.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'replyText' which is the generated reply string appropriate to the input and parameters." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when they need to compose a clear, relevant, and context-aware reply to messages or prompts in natural language, especially to automate or assist communications in chatbots or support agents. It helps ensure responses fit the conversation flow and adhere to desired tone or length constraints.", + "limitations": "This tool cannot guarantee factual accuracy, emotional intelligence, or nuanced understanding beyond provided context. It may produce generic or imperfect replies without further customization or validation.", + "examples": [ + "Compose a polite and formal reply to a customer complaint.", + "Generate a friendly and concise answer to a user's question about product features.", + "Create a detailed response to follow up on previous conversational messages with context." + ] + }, + "tags": [ + "agent-management", + "communication", + "reply-generation", + "natural-language", + "conversation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputPrompt\":\"Can you provide more details about the upcoming product update?\",\"conversationContext\":[{\"role\":\"user\",\"content\":\"I am interested in the upcoming features.\"},{\"role\":\"agent\",\"content\":\"Sure, what details would you like to know?\"}],\"tone\":\"formal\",\"maxLength\":300,\"includeSignature\":true}", + "description": "Generating a formal and concise reply to a user's request for product update details, considering previous conversation context and appending a signature." + }, + { + "inputJson": "{\"inputPrompt\":\"Thanks! That helps a lot.\",\"conversationContext\":[{\"role\":\"user\",\"content\":\"Thanks! That helps a lot.\"}],\"tone\":\"friendly\",\"maxLength\":150,\"includeSignature\":false}", + "description": "Creating a friendly and short acknowledgment reply without a signature." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Reply", + "context": null + } + }, + { + "name": "agent-management.composeHeading", + "description": "This tool accepts text input and optional formatting options to generate a well-structured heading for AI agent profiles, conversational bots, or task descriptions. It processes the input, applies stylistic preferences such as heading level and case formatting, and outputs a formatted heading string suitable for UI display or documentation.", + "category": "agent-management", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The core text content to be converted into a heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "headingLevel", + "type": "number", + "description": "The heading level to generate, typically 1 to 6, determining the heading importance and size.", + "required": false, + "defaultValue": "1" + }, + { + "name": "uppercase", + "type": "boolean", + "description": "If true, converts the heading text to uppercase format; otherwise retains original casing.", + "required": false, + "defaultValue": "false" + }, + { + "name": "prefix", + "type": "string", + "description": "Optional prefix string to prepend to the heading text, such as numbering or symbol.", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "Optional suffix string to append after the heading text, such as punctuation or icons.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string with applied options." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, consistent headings for agent profiles, task summaries, or bot dialogs. It is ideal for dynamically creating structured content sections that require semantic heading levels and optional styling for display in user interfaces or documentation contexts.", + "limitations": "This tool does not generate content beyond heading text; it cannot create paragraphs, lists, or full documentation. It also does not support rich text formatting beyond casing and simple prefix/suffix addition.", + "examples": [ + "Generate a level 2 heading for a bot name in uppercase", + "Create a heading with a numeric prefix to label task sections", + "Output a level 3 heading with a suffix emoji indicating status" + ] + }, + "tags": [ + "agent", + "heading", + "formatting", + "content-generation", + "UI", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Project Roadmap\",\"headingLevel\":2,\"uppercase\":true}", + "description": "Create a level 2 heading 'PROJECT ROADMAP' in uppercase." + }, + { + "inputJson": "{\"text\":\"Task List\",\"headingLevel\":3,\"prefix\":\"3.\",\"suffix\":\" 🔥\"}", + "description": "Generate a level 3 heading with prefix '3.' and suffix fire emoji." + }, + { + "inputJson": "{\"text\":\"Agent Overview\",\"headingLevel\":1}", + "description": "Default level 1 heading, original casing." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Heading", + "context": null + } + }, + { + "name": "agent-management.composeThread", + "description": "Creates a new communication thread by composing an initial message and defining participants, subject, and metadata. Accepts participants list, message content, subject, and optional properties, and outputs a thread object with unique identifier and timestamps.", + "category": "agent-management", + "parameters": [ + { + "name": "participants", + "type": "array", + "description": "Array of participant identifiers involved in the thread, such as user IDs or emails.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessage", + "type": "string", + "description": "The content of the first message that starts the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject or title of the thread, summarizing the main topic.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs providing additional context or tags for the thread.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Whether the thread is private to the participants or publicly visible within the organization.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created thread, including thread ID, participants, subject, initial message, metadata, creation timestamp, and privacy status." + }, + "aiAgent": { + "useCase": "Use this tool when initiating a new discussion or communication thread among multiple participants, such as starting a new support ticket, project conversation, or topic thread. It helps create a structured communication channel with context and participants.", + "limitations": "Does not manage ongoing message exchanges or responses within the thread; only composes the initial thread setup. It cannot fetch or modify existing threads.", + "examples": [ + "Create a thread with participants Alice and Bob about a project kickoff meeting.", + "Start a private thread for confidential HR discussions with selected employees.", + "Initiate a support ticket thread with customer and support agent participants and a predefined subject." + ] + }, + "tags": [ + "communication", + "threading", + "collaboration", + "messaging", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"participants\":[\"alice@example.com\",\"bob@example.com\"],\"initialMessage\":\"Hi team, let's discuss the project kickoff next week.\",\"subject\":\"Project Kickoff Meeting\",\"metadata\":{\"priority\":\"high\"},\"isPrivate\":false}", + "description": "Create a public thread for project kickoff with two participants and a high priority tag." + }, + { + "inputJson": "{\"participants\":[\"hr_manager@example.com\",\"employee@example.com\"],\"initialMessage\":\"Confidential discussion about benefits enrollment.\",\"subject\":\"Benefits Enrollment\",\"isPrivate\":true}", + "description": "Start a private thread for a confidential HR discussion between HR manager and employee." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Thread", + "context": null + } + }, + { + "name": "agent-management.generateChecklist", + "description": "Generates a detailed and customizable checklist document for AI agent management tasks. Accepts input parameters defining checklist title, task items with descriptions, priority levels, and completion status. Outputs a structured checklist in JSON format suitable for tracking progress and ensuring thorough task coverage.", + "category": "agent-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the checklist document to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "tasks", + "type": "array", + "description": "An array of task objects, each including description, priority level ('low', 'medium', 'high'), and a boolean indicating if the task is completed.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section counting completed and pending tasks.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortByPriority", + "type": "boolean", + "description": "Whether to sort tasks by priority in the generated checklist.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured checklist object containing the title, sorted or original task list with details, and optional summary of task completion status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create well-structured checklists for managing AI agent deployment, monitoring, or maintenance tasks efficiently. It helps ensure no key steps are overlooked by organizing tasks with priorities and completion tracking.", + "limitations": "This tool does not track live progress or update task statuses dynamically. It also does not integrate with external task management platforms directly; the output is a static checklist document.", + "examples": [ + "Generate a deployment readiness checklist with tasks describing each preparation step and marking critical ones as high priority.", + "Create a maintenance checklist listing various inspection tasks, sorted by priority, including their current completion states.", + "Produce a task checklist summary to review completed versus pending activities in AI agent lifecycle management." + ] + }, + "tags": [ + "agent-management", + "checklist", + "task-tracking", + "documentation", + "automation", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"title\":\"AI Agent Deployment Checklist\",\"tasks\":[{\"description\":\"Verify environment compatibility\",\"priority\":\"high\",\"completed\":false},{\"description\":\"Test agent response accuracy\",\"priority\":\"medium\",\"completed\":true},{\"description\":\"Ensure data privacy compliance\",\"priority\":\"high\",\"completed\":false}],\"includeSummary\":true,\"sortByPriority\":true}", + "description": "Generate a prioritized checklist document for AI agent deployment tasks including completion status and a summary." + }, + { + "inputJson": "{\"title\":\"Weekly Maintenance Tasks\",\"tasks\":[{\"description\":\"Review agent logs\",\"priority\":\"medium\",\"completed\":true},{\"description\":\"Update training data sets\",\"priority\":\"high\",\"completed\":false},{\"description\":\"Backup configuration files\",\"priority\":\"low\",\"completed\":false}],\"includeSummary\":false,\"sortByPriority\":false}", + "description": "Create a maintenance checklist with original task order and no summary section." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Checklist", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeQuote", + "description": "Analyzes a given textual quote to extract its sentiment, identify key themes, and assess language complexity. Accepts a text string as input and outputs a structured analysis report including sentiment polarity, dominant themes, and readability metrics to aid prompt refinement or content understanding.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The textual quote to analyze for sentiment, themes, and complexity.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the quote for accurate analysis and theme extraction. Defaults to English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment polarity analysis in the output. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeThemes", + "type": "boolean", + "description": "Whether to extract and include key themes from the quote. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeReadability", + "type": "boolean", + "description": "Whether to compute and include readability scores for language complexity. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the sentiment polarity, array of identified themes, and readability metrics such as Flesch-Kincaid grade level for the input quote." + }, + "aiAgent": { + "useCase": "Use this tool when needing a detailed textual analysis of a quote to understand its emotional tone, main subjects, and linguistic complexity. This can support prompt optimization by tailoring content style or emotional impact.", + "limitations": "Cannot provide factual validation or context beyond linguistic analysis; may be less accurate on very short or ambiguous quotes, or languages other than specified.", + "examples": [ + "Analyze the sentiment and themes of the quote to tailor a motivational AI prompt.", + "Check if the quote uses complex language indicating a higher reading level.", + "Extract emotional tone and dominant subjects to adapt AI-generated content style." + ] + }, + "tags": [ + "text-analysis", + "prompt-engineering", + "sentiment-analysis", + "theme-extraction", + "readability" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"language\":\"en\",\"includeSentiment\":true,\"includeThemes\":true,\"includeReadability\":true}", + "description": "Analyze a motivational quote in English for sentiment, themes, and readability." + }, + { + "inputJson": "{\"quoteText\":\"Innovation distinguishes between a leader and a follower.\",\"includeThemes\":true,\"includeReadability\":false}", + "description": "Analyze a business-related quote for key themes without readability metrics." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeYAML", + "description": "Analyzes a YAML formatted prompt template or configuration to identify structural issues, parameter usage, prompt variables, and optimization suggestions. Accepts a YAML string input and returns a detailed analysis report including syntax validation, usage metrics, and improvement hints.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML content string representing the prompt template or configuration to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkVariables", + "type": "boolean", + "description": "Flag to verify that all variables referenced in the YAML are defined or documented.", + "required": false, + "defaultValue": "true" + }, + { + "name": "suggestImprovements", + "type": "boolean", + "description": "Whether to generate optimization suggestions for prompt clarity and efficiency based on the YAML structure.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSuggestions", + "type": "number", + "description": "Maximum number of improvement suggestions to return.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including syntax validity, list of variables, warnings, errors, and suggestions as arrays and status flags." + }, + "aiAgent": { + "useCase": "This tool helps AI agents or developers validate and optimize YAML-based prompt templates before usage with language models. It is useful when ensuring prompt definitions are structurally sound, variables consistent, and improvement opportunities identified for better model performance.", + "limitations": "Cannot execute or simulate the prompt responses; analysis is limited to static YAML structure and syntax. May not catch semantic or domain-specific logic errors in prompts.", + "examples": [ + "Analyze this YAML prompt configuration for missing variables and syntax errors.", + "Validate and get optimization suggestions on a YAML-based prompt template before deployment.", + "Check that all parameters in a YAML prompt file are properly documented and consistent." + ] + }, + "tags": [ + "prompt-engineering", + "YAML", + "analysis", + "validation", + "optimization", + "prompt-template" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"prompt: Hello, {{userName}}!\\nactions:\\n - type: query\\n parameter: userName\\n description: Name of the user to greet\\n\",\"checkVariables\":true,\"suggestImprovements\":true,\"maxSuggestions\":3}", + "description": "Analyze a simple YAML prompt template with one variable and action, checking variable usage and suggesting improvements." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeVulnerability", + "description": "This tool accepts a textual prompt or code snippet suspected to contain security vulnerabilities, analyzes it to identify potential security weaknesses within the prompt engineering context, and returns a detailed report highlighting vulnerability types, severity levels, and remediation suggestions.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The prompt or code snippet text to be analyzed for security vulnerabilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: 'basic', 'intermediate', or 'advanced'. Higher levels provide deeper insight but require more processing time.", + "required": false, + "defaultValue": "intermediate" + }, + { + "name": "includeRemediation", + "type": "boolean", + "description": "Whether to include remediation advice for identified vulnerabilities in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "vulnerabilityTypes", + "type": "array", + "description": "Specific vulnerability categories to look for, such as ['injection', 'disclosure', 'manipulation']. Empty array means all types are analyzed.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of identified vulnerabilities with their types, severity, locations in the input text, and optional remediation advice." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate prompts or embedded code snippets for potential security vulnerabilities that might lead to prompt injection or exploitation, helping to ensure prompt integrity and security best practices.", + "limitations": "This tool analyzes only text-based prompts or code snippets and cannot detect vulnerabilities outside of this scope, such as runtime environment issues or non-textual exploitation vectors.", + "examples": [ + "Analyze this prompt for vulnerabilities and suggest fixes.", + "Check the following chat prompt for injection risks.", + "Identify any security weaknesses in this user input processing prompt." + ] + }, + "tags": [ + "security", + "prompt-engineering", + "analysis", + "vulnerability-detection", + "remediation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"User input: ${input}\\nCheck for SQL injection attempts.\",\"analysisDepth\":\"advanced\",\"includeRemediation\":true,\"vulnerabilityTypes\":[\"injection\"]}", + "description": "Analyze a prompt containing user input placeholders for SQL injection risks with advanced depth including remediation suggestions." + }, + { + "inputJson": "{\"inputText\":\"Translate prompt text without exposing sensitive information.\",\"analysisDepth\":\"basic\",\"includeRemediation\":false,\"vulnerabilityTypes\":[]}", + "description": "Perform a basic vulnerability scan on a translation prompt without requesting remediation, covering all vulnerability types." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "prompt-engineering.formatLink", + "description": "This tool accepts a raw URL or link text and formats it into a specified style commonly used in prompts, such as Markdown, HTML anchor tag, or plain text. It supports customizing the display text and target attributes, producing a properly formatted link string that can be embedded into AI prompts or documentation.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL or link to be formatted. Must be a valid HTTP/HTTPS address.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkText", + "type": "string", + "description": "Text to display for the link. If empty, the URL itself will be used as the link text.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The target format style for the link output. Supported values: 'markdown', 'html', 'plaintext'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "If true and formatStyle is 'html', adds target='_blank' and rel='noopener' to the anchor tag. Ignored otherwise.", + "required": false, + "defaultValue": "false" + }, + { + "name": "titleAttribute", + "type": "string", + "description": "Optional title attribute for the link in HTML format; ignored for other formats.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted link string in the specified style." + }, + "aiAgent": { + "useCase": "Use this tool when generating prompts or documentation that require embedding URLs in a clean, standardized link format compatible with Markdown, HTML, or plain text contexts. It helps produce consistent, readable links for AI training prompts, chatbot responses, or technical docs.", + "limitations": "Cannot validate if the URL is reachable or correct beyond basic URL pattern checks; does not generate hyperlinks for unsupported formats; limited to three formats (markdown, html, plaintext).", + "examples": [ + "Format the link 'https://example.com' as a Markdown link with display text 'Example Site'.", + "Generate an HTML anchor tag for a URL with a title attribute and set it to open in a new tab.", + "Provide a plain text link output for a simple URL without link text." + ] + }, + "tags": [ + "prompt-engineering", + "formatting", + "links", + "markdown", + "html", + "plaintext", + "url" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://openai.com\",\"linkText\":\"OpenAI Homepage\",\"formatStyle\":\"markdown\"}", + "description": "Format an OpenAI homepage URL as a Markdown link with custom text." + }, + { + "inputJson": "{\"url\":\"https://example.org\",\"linkText\":\"Example Org\",\"formatStyle\":\"html\",\"openInNewTab\":true,\"titleAttribute\":\"Example Organization Website\"}", + "description": "Create an HTML anchor tag for example.org that opens in a new tab with a title attribute." + }, + { + "inputJson": "{\"url\":\"https://plainurl.com\",\"formatStyle\":\"plaintext\"}", + "description": "Generate a plain text representation of a URL without custom link text." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "prompt-engineering.sendReply", + "description": "This tool accepts a conversational context and a crafted reply message as inputs, optionally with metadata about tone or style, and sends the reply as a response in the conversation. It processes the inputs to format and dispatch the reply appropriately, returning the confirmation status and details of the sent message.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "conversationId", + "type": "string", + "description": "Unique identifier of the conversation to send the reply to", + "required": true, + "defaultValue": "" + }, + { + "name": "replyMessage", + "type": "string", + "description": "The reply text to send within the conversation", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Optional tone style for the reply, e.g., formal, casual, friendly", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata for the reply such as attachments or tags", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status, messageId of the sent reply, and any error messages" + }, + "aiAgent": { + "useCase": "AI agents should use this tool when they need to craft and send a contextual reply within a conversation, leveraging specific prompt-engineered responses tailored by tone or metadata for clarity and engagement in communication platforms.", + "limitations": "This tool does not generate the reply content itself; it expects the replyMessage input to be pre-crafted. It also does not support scheduling or bulk sending of replies.", + "examples": [ + "Send a friendly reply to conversation ID 'conv123' saying 'Thank you for your message!'", + "Send a formal reply with metadata indicating an attachment to 'conv456'", + "Send a casual reply with no metadata to 'conv789'" + ] + }, + "tags": [ + "prompt-engineering", + "communication", + "reply", + "send", + "conversation", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"conversationId\":\"conv123\",\"replyMessage\":\"Thank you for your detailed feedback! Please let me know if you have any questions.\",\"tone\":\"friendly\",\"metadata\":{\"tags\":[\"feedback\"]}}", + "description": "Send a friendly reply message with additional tags metadata in a conversation identified by conv123." + }, + { + "inputJson": "{\"conversationId\":\"conv456\",\"replyMessage\":\"We have received your request and will process it shortly.\",\"tone\":\"formal\",\"metadata\":{\"attachment\":\"request_summary.pdf\"}}", + "description": "Send a formal reply including an attachment reference in the conversation conv456." + }, + { + "inputJson": "{\"conversationId\":\"conv789\",\"replyMessage\":\"Got it, thanks!\",\"tone\":\"casual\",\"metadata\":{}}", + "description": "Send a short casual reply with no additional metadata in conversation conv789." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "prompt-engineering.renderParagraph", + "description": "This tool generates a well-structured and coherent paragraph based on a given prompt and optional stylistic instructions. It accepts an input prompt string, desired tone, length, and formatting options, then processes these to produce a polished paragraph suitable for various content needs.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "The main text prompt or topic to base the paragraph on.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the paragraph such as formal, casual, or persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "minLength", + "type": "number", + "description": "Minimum length of the generated paragraph in words.", + "required": false, + "defaultValue": "50" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated paragraph in words.", + "required": false, + "defaultValue": "150" + }, + { + "name": "includeFormatting", + "type": "boolean", + "description": "Whether to include basic formatting like line breaks or bullet points when applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "The language code to generate the paragraph in, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text and metadata such as actual length and used tone." + }, + "aiAgent": { + "useCase": "Use this tool when a coherent, contextually relevant paragraph is needed to expand or elaborate on a given prompt, especially when specific tone, length, or formatting requirements are present. Ideal for content creation, prompt refinement, or scaffold generation in writing tasks.", + "limitations": "It cannot verify factual accuracy, provide citations, or generate highly specialized technical content without additional domain context. Output quality depends on input prompt clarity and parameter tuning.", + "examples": [ + "Generate a formal paragraph about climate change impacts limited to 100 words.", + "Create a casual, persuasive paragraph about benefits of daily exercise with formatting included.", + "Write a concise paragraph about artificial intelligence advancements in Spanish." + ] + }, + "tags": [ + "prompt-engineering", + "content-generation", + "AI-writing", + "text-rendering", + "paragraph-generation" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"The importance of data privacy in the modern world\",\"tone\":\"formal\",\"minLength\":80,\"maxLength\":120,\"includeFormatting\":false,\"language\":\"en\"}", + "description": "Generate a formal paragraph on data privacy importance within specified word length limits." + }, + { + "inputJson": "{\"prompt\":\"Why should people adopt renewable energy?\",\"tone\":\"persuasive\",\"minLength\":60,\"maxLength\":90,\"includeFormatting\":true,\"language\":\"en\"}", + "description": "Produce a persuasive paragraph supporting renewable energy adoption including basic formatting." + }, + { + "inputJson": "{\"prompt\":\"Los beneficios de una alimentación saludable\",\"tone\":\"casual\",\"minLength\":50,\"maxLength\":100,\"includeFormatting\":false,\"language\":\"es\"}", + "description": "Create a casual paragraph in Spanish about healthy eating benefits." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "prompt-engineering.renderSummary", + "description": "Generates a concise, coherent summary from a longer text document or prompt input, optimizing it for clarity and brevity. Accepts a text string to summarize, optional length constraints, and style preferences, producing a summarized textual output suitable for quick understanding or further prompt refinement.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The detailed text or prompt content to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words or characters in the summary; helps control summary length.", + "required": false, + "defaultValue": "150" + }, + { + "name": "minLength", + "type": "number", + "description": "Minimum number of words or characters in the summary to ensure sufficient detail.", + "required": false, + "defaultValue": "50" + }, + { + "name": "style", + "type": "string", + "description": "Preferred style for the summary, e.g., 'concise', 'detailed', or 'bullet points'.", + "required": false, + "defaultValue": "concise" + }, + { + "name": "language", + "type": "string", + "description": "Output language code (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summarizedText string representing the refined, shortened version of the input text." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to condense lengthy textual data into a brief summary or overview, especially to enhance understanding, reduce verbosity in prompts, or prepare content for quick consumption. It is ideal for summarizing documentation, lengthy prompts, or outputting user-facing summaries.", + "limitations": "Cannot interpret inputs requiring deep domain expertise or infer unstated implicit meanings. The quality depends on input clarity and may omit nuances in very complex texts.", + "examples": [ + "Summarize a 1000-word product description into 100 words focusing on key features.", + "Generate bullet point summary from a long technical specification document.", + "Create a concise summary of a verbose user prompt for reuse in follow-up queries." + ] + }, + "tags": [ + "prompt-engineering", + "summary", + "text-processing", + "conciseness", + "document" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"The quick brown fox jumps over the lazy dog. This common pangram is often used to test fonts and keyboard layouts since it contains every letter of the English alphabet.\",\"maxLength\":30,\"style\":\"concise\",\"language\":\"en\"}", + "description": "Summarize a short text describing a pangram explaining its use." + }, + { + "inputJson": "{\"inputText\":\"In software development, a summary of requirements helps stakeholders to align expectations and ensure the project scope is clearly understood. This document covers functional and non-functional requirements, user roles, and system constraints.\",\"maxLength\":50,\"style\":\"bullet points\",\"language\":\"en\"}", + "description": "Produce a bullet-point summary of a software requirements description." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "prompt-engineering.formatTable", + "description": "Formats raw or loosely structured tabular data into a clean, consistent table layout suitable for prompt usage with AI models. Accepts input as JSON arrays or CSV strings, allows customization of headers, column alignment, and output style (Markdown, plain text, or HTML). Produces a formatted table string optimized for clarity and readability in prompts.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "The raw table data in CSV or JSON array format to be formatted into a table.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data, either 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "headers", + "type": "array", + "description": "Optional array of strings to specify or override table headers. If empty, headers will be inferred from input.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "alignments", + "type": "array", + "description": "Optional array specifying column alignments: 'left', 'center', or 'right'. Used for Markdown and HTML output. Defaults to left alignment for all columns if not provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output table format: 'markdown', 'plain', or 'html'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "includeIndex", + "type": "boolean", + "description": "Whether to include a leading index/row number column in the output table.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'formattedTable' which is the formatted table string ready for inclusion in prompts or documents." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw or variably formatted tabular data into a clean, standardized table format that is easy to read and comprehend within a prompt or response. This is especially useful when preparing data to provide clear context to language models.", + "limitations": "This tool does not perform complex data validation, heavy data transformation, or statistical analysis. It formats but does not correct data errors or inconsistencies. Also, it assumes input data fits comfortably in memory and is not extremely large.", + "examples": [ + "Format a CSV list of user stats into a Markdown table with bold headers.", + "Convert a JSON array of objects into an HTML table with center-aligned columns and an index column.", + "Produce a plain text table from CSV data, overriding headers and aligning the second column right." + ] + }, + "tags": [ + "prompt-engineering", + "formatting", + "table", + "markdown", + "html", + "csv", + "json", + "data-visualization" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"name,age,score\\nAlice,30,85\\nBob,25,90\",\"inputFormat\":\"csv\",\"headers\":[],\"alignments\":[\"left\",\"center\",\"right\"],\"outputFormat\":\"markdown\",\"includeIndex\":false}", + "description": "Format a simple CSV into a Markdown table with specified column alignments, no index." + }, + { + "inputJson": "{\"inputData\":\"[{\\\"product\\\":\\\"Book\\\",\\\"price\\\":12.99},{\\\"product\\\":\\\"Pen\\\",\\\"price\\\":1.5}]\",\"inputFormat\":\"json\",\"headers\":[\"Product Name\",\"Price USD\"],\"alignments\":[\"left\",\"right\"],\"outputFormat\":\"html\",\"includeIndex\":true}", + "description": "Convert JSON array to HTML table with overridden headers, right-aligned price column, and an index column." + }, + { + "inputJson": "{\"inputData\":\"city,population\\nNY,8000000\\nLA,4000000\",\"inputFormat\":\"csv\",\"headers\":[],\"alignments\":[],\"outputFormat\":\"plain\",\"includeIndex\":true}", + "description": "Format CSV data into a plain text table with a row index column." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "prompt-engineering.formatComponent", + "description": "Formats a specified component of a prompt template code into a clean, consistent style for readability and maintainability. Accepts raw prompt component code (e.g., instructions, variables, or example dialogues) and applies indentation, spacing, and line breaks as configured. Outputs the reformatted prompt component as a string.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "componentCode", + "type": "string", + "description": "Raw source code of the prompt component that needs formatting (e.g., prompt template snippet).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming or markup language of the component code, e.g., 'plaintext', 'markdown', 'json', 'yaml'. Helps determine formatting style.", + "required": false, + "defaultValue": "plaintext" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation. Defaults to 2 for readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length before wrapping lines. Helps keep prompt components visually neat.", + "required": false, + "defaultValue": "80" + }, + { + "name": "preserveVariables", + "type": "boolean", + "description": "Whether to preserve variable placeholders in the prompt component. If false, variables may be reformatted.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted prompt component code string, ready to be used or embedded in prompts, plus metadata about the formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to clean up or standardize prompt components such as instructions, example dialogues, or variable placeholders for improved readability, consistency, or integration into larger prompt templates. It ensures formatting conforms to best practices and user preferences.", + "limitations": "This tool does not validate the semantic correctness or logic of prompt components; it only adjusts syntactic formatting. It may not perfectly format very complex or highly nested code structures outside its supported languages.", + "examples": [ + "Format a raw prompt instruction block with consistent indentation and line breaks.", + "Format JSON-like prompt component to be compliant with style guidelines.", + "Format example dialogue snippet preserving variable placeholders." + ] + }, + "tags": [ + "prompt-engineering", + "formatting", + "code-style", + "prompt-template", + "readability" + ], + "examples": [ + { + "inputJson": "{\"componentCode\":\"User: {{userInput}}\\nAI: Please provide your query.\",\"language\":\"plaintext\",\"indentationSpaces\":4,\"maxLineLength\":50,\"preserveVariables\":true}", + "description": "Formatting a dialogue snippet preserving variables with 4 spaces indentation and max 50 chars line length." + }, + { + "inputJson": "{\"componentCode\":\"{\\n \\\"instruction\\\": \\\"Translate the following text.\\\",\\n \\\"input\\\": \\\"Hello world\\\"\\n}\",\"language\":\"json\",\"indentationSpaces\":2,\"maxLineLength\":80,\"preserveVariables\":true}", + "description": "Formatting JSON prompt component with 2 spaces indentation and standard line length." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "prompt-engineering.formatQuery", + "description": "Formats and normalizes a query string or code snippet for AI prompt use. Accepts raw query text and optional formatting options, then outputs a well-structured, cleaned, and optionally annotated query that helps improve prompt clarity and AI model understanding.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "queryText", + "type": "string", + "description": "The raw query or code snippet string to format and normalize for prompt use.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming or query language of the input, e.g., SQL, GraphQL, or plain text; used to apply language-specific formatting rules.", + "required": false, + "defaultValue": "SQL" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in formatted output, improving readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "capitalizeKeywords", + "type": "boolean", + "description": "If true, SQL or code keywords will be capitalized to standard conventions.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeComments", + "type": "boolean", + "description": "Whether to remove comments from the query to produce cleaner output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "addAnnotations", + "type": "boolean", + "description": "Whether to insert explanatory annotations or inline comments for clarity in formatted output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formattedQuery string with applied formatting and normalization according to parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare or optimize a query or code snippet as part of a prompt, ensuring consistent formatting, removal of noise like comments, standardized keyword casing, and optional clarity annotations to help downstream AI models better interpret the input.", + "limitations": "This tool does not validate semantic correctness or execute the query; it only formats and normalizes its appearance. It supports common query or code languages but may not handle obscure or highly specialized language syntax perfectly.", + "examples": [ + "Format a raw SQL query with standard indentation and capitalized keywords.", + "Normalize a GraphQL query by removing comments and adjusting indentation for readability.", + "Prepare a user-provided code snippet by formatting and optionally adding annotations for clarity within a prompt context." + ] + }, + "tags": [ + "formatting", + "prompt-engineering", + "query", + "code", + "normalization", + "SQL", + "GraphQL", + "clarity" + ], + "examples": [ + { + "inputJson": "{\"queryText\":\"select * from users where age > 25; -- get users older than 25\",\"language\":\"SQL\",\"indentationSpaces\":4,\"capitalizeKeywords\":true,\"removeComments\":true,\"addAnnotations\":false}", + "description": "Formats a SQL query by capitalizing keywords, using 4 spaces indentation, and removing comments for cleaner prompt input." + }, + { + "inputJson": "{\"queryText\":\"{ user(id: \\\"1\\\") { name # User name } }\",\"language\":\"GraphQL\",\"indentationSpaces\":2,\"capitalizeKeywords\":false,\"removeComments\":true,\"addAnnotations\":true}", + "description": "Prepares a GraphQL query by removing comments and adding annotations to clarify fields within the prompt." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "prompt-engineering.buildCluster", + "description": "Builds a cluster of prompt variations designed to optimize the performance of AI models through iterative testing. Accepts a base prompt string, a list of variations, and configuration parameters such as maximum cluster size and evaluation metrics. Outputs a structured cluster object containing prompts, meta-data, and preliminary performance data for further selection or tuning.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "basePrompt", + "type": "string", + "description": "The original prompt to serve as the base for variations.", + "required": true, + "defaultValue": "" + }, + { + "name": "promptVariations", + "type": "array", + "description": "Array of prompt strings representing candidate variations to include in the cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxClusterSize", + "type": "number", + "description": "Maximum number of prompt variations to include in the cluster. Limits cluster size for manageable evaluation.", + "required": false, + "defaultValue": "10" + }, + { + "name": "evaluationMetric", + "type": "string", + "description": "The metric name guiding prompt performance evaluation, e.g. 'accuracy', 'coherence'.", + "required": false, + "defaultValue": "accuracy" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to attach metadata such as creation timestamps and source identifiers to each prompt variation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A cluster object containing an array of prompt variations with metadata and any available performance evaluations." + }, + "aiAgent": { + "useCase": "Use when you want to systematically organize multiple prompt variations into a structured cluster for iterative testing and optimization of AI prompt effectiveness. Suitable for developing prompt sets for fine-tuning or A/B testing across AI workflows.", + "limitations": "Does not perform actual model evaluation or ranking beyond structural organization. Evaluation results may need to be gathered separately.", + "examples": [ + "Create a cluster of 5 similar prompts to compare their effectiveness on a sentiment analysis task.", + "Build a prompt cluster with variations focusing on question style for a customer support bot.", + "Organize multiple rewritten prompts into a cluster to optimize language generation tone." + ] + }, + "tags": [ + "prompt-engineering", + "cluster-building", + "optimization", + "prompt-variations", + "AI-modeling" + ], + "examples": [ + { + "inputJson": "{\"basePrompt\":\"Explain the benefits of AI in healthcare.\",\"promptVariations\":[\"Describe how AI improves patient outcomes.\",\"List advantages of artificial intelligence in medical diagnosis.\",\"Explain why AI is important in healthcare advancement.\"],\"maxClusterSize\":3,\"evaluationMetric\":\"coherence\",\"includeMetadata\":true}", + "description": "Building a cluster of three prompt variations derived from a base healthcare prompt to evaluate and optimize for coherence." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "prompt-engineering.buildSchema", + "description": "Constructs a structured prompt schema definition based on given specifications including parameters, types, descriptions, and constraints. Accepts an array of field definitions and options to customize the schema output format. Produces a prompt schema object that can be used to validate or generate AI prompt inputs consistently.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "fields", + "type": "array", + "description": "Array of field definitions where each includes name, type, description, required flag, and optionally default value or constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaName", + "type": "string", + "description": "Name to assign to the generated schema for identification or reference.", + "required": false, + "defaultValue": "\"PromptSchema\"" + }, + { + "name": "includeDescriptions", + "type": "boolean", + "description": "Flag to indicate if field descriptions should be included in the schema output for documentation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output schema, e.g., JSON Schema, OpenAPI Schema, or custom JSON.", + "required": false, + "defaultValue": "\"JSON Schema\"" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed prompt schema adhering to the selected format that formalizes input expectations for prompt engineering." + }, + "aiAgent": { + "useCase": "This tool should be used when designing or refining AI prompts that require precise input validation and documentation. It enables agents to build standardized prompt input schemas capturing field constraints and types to improve prompt robustness and reduce errors.", + "limitations": "It cannot automatically infer complex relationships or validations between fields beyond what is explicitly specified. It also does not generate prompt text itself but focuses on schema construction.", + "examples": [ + "Generate a JSON Schema for a prompt requiring fields: userName (string, required), age (number, optional), and consent (boolean, required).", + "Build a prompt input schema named 'SurveyInput' including descriptive texts for each field.", + "Create a minimal schema in custom JSON format with only required fields and no descriptions." + ] + }, + "tags": [ + "prompt-engineering", + "schema-building", + "input-validation", + "AI-prompt-design", + "json-schema", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"fields\":[{\"name\":\"userName\",\"type\":\"string\",\"description\":\"User's full name\",\"required\":true},{\"name\":\"age\",\"type\":\"number\",\"description\":\"User's age in years\",\"required\":false,\"defaultValue\":\"18\"},{\"name\":\"consent\",\"type\":\"boolean\",\"description\":\"User's consent to terms\",\"required\":true}],\"schemaName\":\"UserPrompt\",\"includeDescriptions\":true,\"outputFormat\":\"JSON Schema\"}", + "description": "Build a JSON Schema named 'UserPrompt' for user prompts with name, age, and consent fields, including descriptions." + }, + { + "inputJson": "{\"fields\":[{\"name\":\"email\",\"type\":\"string\",\"description\":\"User email address\",\"required\":true}],\"schemaName\":\"ContactSchema\",\"includeDescriptions\":false,\"outputFormat\":\"OpenAPI Schema\"}", + "description": "Create an OpenAPI style schema named 'ContactSchema' with a single required email field, excluding descriptions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "prompt-engineering.generateQuote", + "description": "Generates a motivational or thematic quote based on a specified topic or mood. Accepts input parameters such as topic keywords and desired sentiment, then uses a language model to compose an original or curated quote. Outputs the quote text along with metadata about its tone and topic relevance.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme for the quote generation (e.g., 'perseverance', 'love').", + "required": true, + "defaultValue": "" + }, + { + "name": "sentiment", + "type": "string", + "description": "Desired emotional tone of the quote, such as 'inspirational', 'happy', 'thoughtful', or 'encouraging'.", + "required": false, + "defaultValue": "inspirational" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the quote in characters to control verbosity.", + "required": false, + "defaultValue": "150" + }, + { + "name": "includeAuthor", + "type": "boolean", + "description": "Whether to append a fictional or real author attribution to the quote.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text, its sentiment, associated topic, and optional author attribution." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate relevant, thematic quotes for inspiration, content creation, or enhanced user engagement within prompts. It aids in crafting AI inputs for motivational or thematic outputs by producing clear, concise quotes based on given topics and sentiments.", + "limitations": "The tool cannot guarantee factual accuracy if author attribution is requested, as it may generate fictional attributions. It also depends on the input quality; vague or very broad topics may yield generic quotes.", + "examples": [ + "Generate an inspirational quote about perseverance.", + "Create a thoughtful quote on friendship with author attribution.", + "Produce a short happy quote about success." + ] + }, + "tags": [ + "prompt-engineering", + "generate", + "quote", + "inspirational", + "content-creation", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"perseverance\",\"sentiment\":\"inspirational\",\"maxLength\":120,\"includeAuthor\":false}", + "description": "Generate an inspirational quote about perseverance without author attribution." + }, + { + "inputJson": "{\"topic\":\"friendship\",\"sentiment\":\"thoughtful\",\"includeAuthor\":true}", + "description": "Create a thoughtful quote about friendship including an author attribution." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "model-management.analyzeCitation", + "description": "Analyzes given academic or technical citation text to extract structured metadata such as authors, publication year, title, journal or conference names, volume, issue, pages, DOI, and keywords. Accepts raw citation strings or an array of citations and returns a detailed parsed summary suitable for indexing or metadata management.", + "category": "model-management", + "parameters": [ + { + "name": "citationText", + "type": "string", + "description": "Single raw citation string to analyze and extract structured metadata from.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationList", + "type": "array", + "description": "Array of raw citation strings to analyze in batch mode for metadata extraction.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the structured data output; supported values: 'json' (default), 'xml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to attempt keyword extraction from the citation or associated title (if available).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object mapping each analyzed citation to its extracted metadata including authors (array), title, publication year, source (journal or conference), volume, issue, pages, DOI, and optionally keywords." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives raw citation strings from academic papers, reports, or bibliographies and needs to convert them into structured metadata for model training, knowledge management, or indexing. This tool enables downstream processes such as citation network analysis or metadata database creation.", + "limitations": "The tool relies on standard citation formats and may fail or produce incomplete metadata on highly nonstandard, corrupted, or extremely abbreviated citations. It does not fetch publication content or validate citation correctness outside the text provided.", + "examples": [ + "Analyze a single citation string to extract metadata for database entry.", + "Batch process a list of citations extracted from a research paper's bibliography.", + "Extract keywords from citation titles to enhance metadata searchability." + ] + }, + "tags": [ + "model-management", + "citation", + "metadata-extraction", + "text-analysis", + "academic", + "batch-processing" + ], + "examples": [ + { + "inputJson": "{\"citationText\":\"Smith J., Doe A. (2020). Advances in AI research. Journal of AI Studies, 15(3), 120-135. doi:10.1234/jais.v15i3.5678\",\"includeKeywords\":true}", + "description": "Analyze a single well-formed journal article citation to extract metadata including authors, journal, volume, pages, and DOI." + }, + { + "inputJson": "{\"citationList\":[\"Brown B. (2018). Exploring machine learning. Proceedings of ML Conference, pp. 50-60.\", \"Johnson K., Lee M. (2019). Deep learning approaches. International Journal of Neural Networks, 22(1), 10-25.\"],\"outputFormat\":\"json\"}", + "description": "Batch analyze an array of two citations from conference proceedings and a journal to parse structured metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Citation", + "context": null + } + }, + { + "name": "prompt-engineering.generateBlogPost", + "description": "Generates a coherent and structured blog post based on provided topic, keywords, target audience, tone, and desired length. It processes the inputs to create an informative and engaging article suitable for publishing.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the blog post to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "A list of keywords or phrases that should be naturally incorporated into the blog post content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers to tailor the language and style accordingly (e.g., beginners, experts, general public).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the blog post, such as formal, casual, persuasive, or informative.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the blog post in words to control content size.", + "required": false, + "defaultValue": "700" + }, + { + "name": "includeSections", + "type": "array", + "description": "Optional list of specific sections or headings to include in the blog (e.g., Introduction, Benefits, Conclusion).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the blog content output (e.g., en, es, fr).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post content as a string, structured optionally by sections if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a full-length, topic-specific blog post optimized for a particular audience and tone, such as when generating content drafts, marketing articles, or educational blog entries. It helps in automating content creation while aligning with keyword and style requirements.", + "limitations": "The tool cannot fact-check content or provide highly specialized expert-level detail without supervised inputs. It may produce generic or factually inaccurate text if not carefully reviewed.", + "examples": [ + "Generate a 1000-word blog post on renewable energy including keywords 'solar power', 'wind energy', targeting environmentally conscious readers with a persuasive tone.", + "Create a brief 500-word informative blog post about healthy cooking tips for beginners in English.", + "Produce a formal blog post in French on the benefits of meditation including sections Introduction, Techniques, Conclusion." + ] + }, + "tags": [ + "prompt-engineering", + "generation", + "blog", + "content-creation", + "writing", + "seo", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of Remote Work\",\"keywords\":[\"flexibility\",\"work-life balance\"],\"targetAudience\":\"corporate employees\",\"tone\":\"informative\",\"length\":800,\"includeSections\":[\"Introduction\",\"Advantages\",\"Challenges\",\"Conclusion\"],\"language\":\"en\"}", + "description": "Generate an 800-word informative blog post about the benefits and challenges of remote work, targeting corporate employees, including specified sections." + }, + { + "inputJson": "{\"topic\":\"Guide to Vegan Cooking\",\"keywords\":[\"plant-based\",\"recipes\"],\"tone\":\"casual\",\"length\":600,\"language\":\"en\"}", + "description": "Create a casual 600-word blog post on vegan cooking with keywords plant-based and recipes, without specified sections." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "prompt-engineering.generateYAML", + "description": "Generates a YAML-formatted prompt template based on user-defined specifications including inputs, instructions, and metadata. Accepts a structured description of the prompt components and returns a clean, valid YAML string ready for use in prompt engineering workflows.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptName", + "type": "string", + "description": "A unique name or identifier for the prompt template to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "An optional textual description explaining the purpose or usage of the prompt.", + "required": false, + "defaultValue": "" + }, + { + "name": "inputVariables", + "type": "array", + "description": "A list of input variable names and optionally their types to be used in the prompt template.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "templateText", + "type": "string", + "description": "The raw prompt text including placeholders matching input variable names, using a {{variable}} syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional arbitrary metadata to include in the YAML under a metadata key (e.g., tags, version).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "If true, includes helpful comments in the YAML output explaining each section.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single 'yaml' string property containing the generated, properly formatted YAML prompt template." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create configurable prompt templates for AI models in YAML format, helpful for prompt versioning, sharing, or integration into prompt management systems. It facilitates structured prompt design by systematically converting user inputs and instructions into a valid, reusable YAML template.", + "limitations": "The tool does not validate the logical correctness or effectiveness of the prompt itself, nor can it execute or test the prompt with an AI model. It only generates YAML syntax text.", + "examples": [ + "Generate a YAML prompt template for a translation prompt with variables sourceLang and targetLang.", + "Create a YAML prompt template including metadata tags and description for an AI summarization task." + ] + }, + "tags": [ + "prompt-engineering", + "generate", + "YAML", + "template", + "AI prompts", + "configurable", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"promptName\":\"translatePrompt\",\"description\":\"Translate text between two languages.\",\"inputVariables\":[\"sourceLang\",\"targetLang\",\"text\"],\"templateText\":\"Translate the following text from {{sourceLang}} to {{targetLang}}:\\n{{text}}\",\"metadata\":{\"version\":\"1.0\",\"tags\":[\"translation\",\"language\"]},\"includeComments\":true}", + "description": "Generate a YAML template for a translation prompt with input variables and metadata, with explanatory comments included." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "model-management.analyzeBudget", + "description": "Analyzes the budget allocated for an AI model's development, deployment, and maintenance phases. Accepts detailed budget items and timelines, processes allocation efficiency and spending patterns, and outputs a report summarizing budget health, overruns, and recommendations for cost optimization.", + "category": "model-management", + "parameters": [ + { + "name": "budgetItems", + "type": "array", + "description": "Array of budget items, each detailing category, amount allocated, amount spent, and time period; used for detailed allocation analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelPhase", + "type": "string", + "description": "Specifies the phase of the AI model lifecycle to analyze budget for (e.g., training, deployment, maintenance).", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for budget values to ensure consistency in reporting (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "timeFrameStart", + "type": "string", + "description": "Start date (ISO 8601) for the budget analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeFrameEnd", + "type": "string", + "description": "End date (ISO 8601) for the budget analysis period.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured report containing total budget allocated, total spent, variance analysis, phase-specific insights, and recommendations for optimizing budget utilization." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate the financial efficiency and allocation of budgets related to an AI model's lifecycle phases. It helps identify overruns, underspending, and suggest cost saving opportunities based on detailed budget item inputs.", + "limitations": "Does not forecast future budgets or dynamically adjust budget allocations; relies on provided budget data and does not evaluate external financial constraints.", + "examples": [ + "Analyze the deployment phase budget for cost overruns in the last quarter.", + "Provide a detailed summary of budget spending vs allocation for the training phase in USD.", + "Identify budget optimization opportunities within the maintenance phase from provided budget data." + ] + }, + "tags": [ + "model-management", + "budget-analysis", + "cost-optimization", + "financial-reporting", + "AI-lifecycle" + ], + "examples": [ + { + "inputJson": "{\"budgetItems\":[{\"category\":\"compute\",\"allocated\":50000,\"spent\":55000,\"period\":\"2024-Q1\"},{\"category\":\"data-labeling\",\"allocated\":30000,\"spent\":25000,\"period\":\"2024-Q1\"},{\"category\":\"software-licenses\",\"allocated\":10000,\"spent\":8000,\"period\":\"2024-Q1\"}],\"modelPhase\":\"training\",\"currency\":\"USD\",\"timeFrameStart\":\"2024-01-01\",\"timeFrameEnd\":\"2024-03-31\"}", + "description": "Analyzing Q1 training phase budget with detailed category spend data in USD." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Budget", + "context": null + } + }, + { + "name": "model-management.renderVideo", + "description": "Renders a video by combining AI-generated model outputs such as image frames, animations, or overlays with optional audio tracks and metadata. It accepts input frames or animation data, rendering settings like resolution and frame rate, and outputs a video file in the specified format suitable for deployment or further use.", + "category": "model-management", + "parameters": [ + { + "name": "inputFrames", + "type": "array", + "description": "Array of image frames or model-generated images to assemble into the video sequence.", + "required": true, + "defaultValue": "" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frame rate (frames per second) for the output video.", + "required": false, + "defaultValue": "30" + }, + { + "name": "resolution", + "type": "object", + "description": "Resolution settings for the output video with width and height in pixels.", + "required": false, + "defaultValue": "{\"width\":1920,\"height\":1080}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Video file format for output, e.g., mp4, avi, or mov.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "audioTrack", + "type": "string", + "description": "Optional audio track file path or data to embed in the video.", + "required": false, + "defaultValue": "" + }, + { + "name": "compressionCodec", + "type": "string", + "description": "Codec used for compressing the video, e.g., h264 or hevc.", + "required": false, + "defaultValue": "h264" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata such as title, description, tags, to include in the video file.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file path or URL to the rendered video and metadata about the rendering process." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a final video product from model-generated frames or animations, for example, synthesizing visual content into a standard video format for presentation, deployment, or evaluation. This tool is suited for converting AI outputs into usable video assets with control over resolution, frame rate, formats, and optional audio embedding.", + "limitations": "Does not perform AI-based content generation itself, only composes and renders video from given frames and assets. Cannot edit audio content beyond embedding. Large or complex videos may require substantial processing time and resources.", + "examples": [ + "Create a 1080p 30fps video from 100 AI-generated image frames with background music embedded in mp4 format.", + "Render a 720p video at 24fps in avi format with no audio using provided animation frames.", + "Generate a 4K video at 60fps using HEVC codec with descriptive metadata for title and tags." + ] + }, + "tags": [ + "video", + "rendering", + "model-management", + "media", + "AI-output", + "encoder" + ], + "examples": [ + { + "inputJson": "{\"inputFrames\":[\"frame1.png\",\"frame2.png\",\"frame3.png\"],\"frameRate\":30,\"resolution\":{\"width\":1920,\"height\":1080},\"outputFormat\":\"mp4\",\"audioTrack\":\"background.mp3\",\"compressionCodec\":\"h264\",\"metadata\":{\"title\":\"AI Generated Video\",\"description\":\"Demo video of AI frames.\"}}", + "description": "Render a 1080p 30fps mp4 video from 3 image frames with a background audio track and metadata." + }, + { + "inputJson": "{\"inputFrames\":[\"anim_frame_0001.png\",\"anim_frame_0002.png\"],\"frameRate\":24,\"resolution\":{\"width\":1280,\"height\":720},\"outputFormat\":\"avi\",\"audioTrack\":\"\",\"compressionCodec\":\"h264\",\"metadata\":{}}", + "description": "Create a 720p 24fps avi video from 2 animation frames without audio." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Video", + "context": null + } + }, + { + "name": "model-management.uploadXML", + "description": "Uploads an XML file containing AI model configuration or metadata to the model management system. Accepts an XML string or a file path, validates the XML structure, and stores the content linked to a specified model ID. Returns a status indicating success or failure with details.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to associate the XML content with.", + "required": true, + "defaultValue": "" + }, + { + "name": "xmlContent", + "type": "string", + "description": "Raw XML string containing the model configuration or metadata to upload. Either xmlContent or xmlFilePath must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "xmlFilePath", + "type": "string", + "description": "Path to the XML file on local or network storage to upload. Either xmlFilePath or xmlContent must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, overwrite existing XML data for the model if present; if false, reject upload when XML data exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object with upload status ('success' or 'failure'), message providing details on outcome, and optionally stored XML metadata or error codes." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically upload or update XML configuration files describing models in the system, such as architectures, hyperparameters, or metadata. It is helpful when automating model versioning or integrating external model definitions stored as XML.", + "limitations": "Cannot validate semantic correctness of XML beyond well-formedness, nor can it parse or interpret XML content beyond basic validation. Does not perform training or deployment tasks.", + "examples": [ + "Upload an XML string describing a new model version's configuration.", + "Upload an XML file from a local disk to update model metadata.", + "Attempt upload but prevent overwriting existing configuration if present." + ] + }, + "tags": [ + "upload", + "XML", + "model-management", + "configuration", + "metadata", + "model-versioning" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model_1234\",\"xmlContent\":\"<model><name>ClassifierV2</name><layers>3</layers></model>\",\"overwriteExisting\":true}", + "description": "Upload XML content string to a specific model with overwrite enabled." + }, + { + "inputJson": "{\"modelId\":\"model_5678\",\"xmlFilePath\":\"/configs/model_5678_config.xml\",\"overwriteExisting\":false}", + "description": "Upload XML file from disk to link to a model without overwriting if data already exists." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "XML", + "context": null + } + }, + { + "name": "model-management.sendChannel", + "description": "This tool sends a message payload through a specified communication channel associated with a deployed AI model or service. It accepts parameters defining the channel type (e.g., Slack, Email, Webhook), destination details, authentication tokens if required, and the message content. It processes these inputs to construct and dispatch the message via the selected channel and returns delivery status and message metadata.", + "category": "model-management", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel to send the message, e.g., 'slack', 'email', 'webhook'.", + "required": true, + "defaultValue": "" + }, + { + "name": "destination", + "type": "string", + "description": "The target address or identifier for the message, such as an email address, Slack channel ID, or webhook URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key required to authorize sending messages on the specified channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The content of the message to send through the channel; supports plain text or formatted text depending on channel capabilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageMetadata", + "type": "object", + "description": "Optional metadata or additional parameters for message formatting or delivery preferences, such as attachments, priority, or formatting flags.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the result of the sending operation, including a success flag, message ID if applicable, timestamp of sending, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically send notifications, alerts, or reports from AI model management systems to stakeholders or downstream services via established communication channels. It enables seamless integration of model status updates or operational messages directly to operational teams through preferred messaging platforms.", + "limitations": "Does not support channel-specific advanced features like message threading or interactive components. Message formatting capabilities depend on the target channel's API. Requires valid authentication and appropriate channel permissions to function correctly.", + "examples": [ + "Send a Slack notification to a channel with model deployment status.", + "Email a report of model training results to a stakeholder group.", + "Trigger a webhook call to update downstream systems with model inference data." + ] + }, + "tags": [ + "communication", + "notification", + "model-management", + "messaging", + "integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"slack\",\"destination\":\"C12345678\",\"authToken\":\"xoxb-111222333444-abcdefg\",\"messageContent\":\"Model deployment successful. Version 2.1 is live.\",\"messageMetadata\":{\"priority\":\"high\"}}", + "description": "Send a high priority Slack message notifying that the new model version is deployed." + }, + { + "inputJson": "{\"channelType\":\"email\",\"destination\":\"team@example.com\",\"authToken\":\"\",\"messageContent\":\"Attached is the weekly model performance report.\",\"messageMetadata\":{\"attachments\":[\"report.pdf\"]}}", + "description": "Send a weekly model performance report via email to the team with an attachment." + }, + { + "inputJson": "{\"channelType\":\"webhook\",\"destination\":\"https://example.com/webhook\",\"authToken\":\"Bearer abc123token\",\"messageContent\":\"{\\\"event\\\":\\\"model_inference\\\",\\\"data\\\":{\\\"result\\\":\\\"positive\\\"}}\",\"messageMetadata\":{}}", + "description": "Trigger a webhook POST with JSON payload reporting model inference result to an external system." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "model-management.formatXML", + "description": "Formats XML content related to AI model configurations or metadata. Accepts raw XML strings, applies indentation and line breaks for readability, optionally normalizes whitespace and sorts attributes. Returns the formatted XML string, improving human readability and ease of editing in model management workflows.", + "category": "model-management", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "Raw XML string representing model-related data to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces used for each indentation level in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortAttributes", + "type": "boolean", + "description": "If true, attributes in each XML tag are sorted alphabetically for consistency.", + "required": false, + "defaultValue": "false" + }, + { + "name": "normalizeWhitespace", + "type": "boolean", + "description": "If true, normalizes whitespace inside text nodes by trimming and collapsing spaces.", + "required": false, + "defaultValue": "true" + }, + { + "name": "selfCloseEmptyTags", + "type": "boolean", + "description": "If true, empty tags are self-closed (e.g., <tag/>), otherwise use explicit closing tags.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted XML string under the key 'formattedXml'." + }, + "aiAgent": { + "useCase": "Use this tool when dealing with XML representations of AI model configurations, metadata, or deployment manifests that require pretty-printing for analysis, debugging, version control diffs, or manual editing. It ensures XML data is consistently formatted to aid readability and reduce errors in model management pipelines.", + "limitations": "Does not validate XML schema or correctness; will not fix structural XML errors. It only formats provided XML text but does not parse or modify content semantics beyond attribute sorting and whitespace normalization.", + "examples": [ + "Format raw model metadata XML for clearer human inspection.", + "Prepare XML configuration files for version control commits with consistent indentation and attribute order.", + "Normalize whitespace and format deployment descriptor XML for documentation purposes." + ] + }, + "tags": [ + "formatting", + "XML", + "model-management", + "pretty-print", + "configuration", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"<model><name>TestModel</name><params version=\\\"1\\\" active=\\\"true\\\"/></model>\",\"indentation\":4,\"sortAttributes\":true,\"normalizeWhitespace\":true,\"selfCloseEmptyTags\":true}", + "description": "Format a simple model XML with 4-space indentation and sorted attributes in self-closing tags." + }, + { + "inputJson": "{\"xmlContent\":\"<config><param> value </param><param>Another</param></config>\",\"indentation\":2,\"sortAttributes\":false,\"normalizeWhitespace\":true,\"selfCloseEmptyTags\":false}", + "description": "Format config XML with 2-space indentation, do not sort attributes, do not self-close empty tags, normalize whitespace." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "XML", + "context": null + } + }, + { + "name": "model-management.formatHTML", + "description": "Formats a provided HTML string representing AI model information or metadata for consistent, readable presentation. Accepts raw HTML input and applies optional indentation, line wrapping, and cleaning of unnecessary whitespace or tags, outputting a well-structured HTML string suitable for display in management dashboards or documentation.", + "category": "model-management", + "parameters": [ + { + "name": "htmlInput", + "type": "string", + "description": "Raw HTML content string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for each indentation level in formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum length of a single line before wrapping occurs to enhance readability.", + "required": false, + "defaultValue": "80" + }, + { + "name": "removeEmptyTags", + "type": "boolean", + "description": "Indicates whether to remove empty HTML tags to clean up the content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "preserveLineBreaks", + "type": "boolean", + "description": "Whether to preserve existing line breaks in the input HTML or reformat entirely.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted HTML string under 'formattedHTML' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to cleanly format or prettify HTML content related to AI model details, such as model metadata or deployment info, especially before embedding in web interfaces or documentation. It helps maintain consistency and readability of HTML outputs in model management systems.", + "limitations": "This tool cannot correct semantic HTML errors or sanitize malicious scripts. It focuses strictly on formatting and minor cleanup of HTML structure.", + "examples": [ + "Format raw HTML snippet of model metadata for dashboard display.", + "Clean and indent exported model description HTML for documentation.", + "Remove empty tags and format model version details HTML before sending to client UI." + ] + }, + "tags": [ + "formatting", + "html", + "model-management", + "prettify", + "cleaning", + "presentation" + ], + "examples": [ + { + "inputJson": "{\"htmlInput\":\"<div><h2>Model Info</h2><p>Version: 1.0</p><p></p></div>\",\"indentSize\":4,\"maxLineLength\":100,\"removeEmptyTags\":true,\"preserveLineBreaks\":false}", + "description": "Formats a simple model info HTML snippet with 4 spaces indentation, removes empty paragraphs, wraps lines at 100 chars, and ignores original line breaks." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "HTML", + "context": null + } + }, + { + "name": "model-management.formatSchema", + "description": "Formats an AI model schema definition according to a specified standard or style. Accepts an input schema as a JSON string or object and reformats it to improve readability, enforce conventions, or comply with popular schema formats like JSON Schema Draft-07 or OpenAPI. Outputs the formatted schema as a JSON string.", + "category": "model-management", + "parameters": [ + { + "name": "inputSchema", + "type": "object", + "description": "The AI model schema to format, provided as a JSON object or a stringified JSON.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The formatting style or target standard to apply, e.g., 'json-schema-draft07', 'openapi-v3', or 'pretty-json'. Defaults to 'pretty-json'.", + "required": false, + "defaultValue": "pretty-json" + }, + { + "name": "indentSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the output JSON string. Default is 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortProperties", + "type": "boolean", + "description": "Whether to sort the properties alphabetically in objects. Default false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeDescriptions", + "type": "boolean", + "description": "Whether to include or remove descriptions in the output schema. Default true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object with the 'formattedSchema' string property containing the formatted schema JSON string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to standardize or prettify an AI model's schema definition for better readability, validation, or integration with tooling that requires specific schema formats.", + "limitations": "This tool reformats existing schemas but does not validate semantic correctness of the schema, nor generate schemas from scratch.", + "examples": [ + "Format an AI model schema JSON object to JSON Schema Draft-07 style with sorted properties.", + "Reformat a stringified schema to pretty-printed JSON with four spaces indentation.", + "Remove descriptions from an OpenAPI schema and output pretty JSON." + ] + }, + "tags": [ + "formatting", + "model-schema", + "json", + "validation", + "standardization", + "model-management" + ], + "examples": [ + { + "inputJson": "{\"inputSchema\":{\"type\":\"object\",\"properties\":{\"age\":{\"type\":\"integer\",\"description\":\"Age of person\"},\"name\":{\"type\":\"string\"}},\"required\":[\"name\"]},\"formatStyle\":\"pretty-json\",\"indentSpaces\":4,\"sortProperties\":true,\"includeDescriptions\":true}", + "description": "Format a simple model schema JSON object pretty-printed with 4 spaces indentation and properties sorted." + }, + { + "inputJson": "{\"inputSchema\":\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"score\\\":{\\\"type\\\":\\\"number\\\"},\\\"label\\\":{\\\"type\\\":\\\"string\\\"}}}\",\"formatStyle\":\"json-schema-draft07\",\"indentSpaces\":2,\"sortProperties\":false,\"includeDescriptions\":false}", + "description": "Format a string schema to JSON Schema Draft-07 style with 2 spaces indentation, without descriptions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Schema", + "context": null + } + }, + { + "name": "model-management.draftLink", + "description": "Generates a structured link referring to a deployed AI model or training resource, based on given model metadata and deployment environment. Inputs include model identifier, environment URL, descriptive title, and optional parameters. Outputs a URL string encapsulated with descriptive anchor text suitable for sharing or documentation.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to link to.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "URL or identifier of the environment where the model is deployed (e.g., production URL).", + "required": true, + "defaultValue": "" + }, + { + "name": "linkTitle", + "type": "string", + "description": "Text to display for the hyperlink pointing to the model.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeVersion", + "type": "boolean", + "description": "Whether to include the model version number in the link path or query parameters.", + "required": false, + "defaultValue": "false" + }, + { + "name": "modelVersion", + "type": "string", + "description": "Version number or tag of the model if includeVersion is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full generated hyperlink string with href and anchor text, and the constructed URL for direct access." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create concise and correct hyperlinks pointing to a specific AI model deployment or training resource for documentation, monitoring dashboards, or distribution to stakeholders. It helps to automate generating consistent linking formats and embedding metadata such as model version and environment.", + "limitations": "This tool does not verify if the model ID or deployment environment URL actually exists or is reachable; it only composes links based on provided input. It does not generate clickable buttons or advanced UI components, only the basic hyperlink string.", + "examples": [ + "Create a link to the production deployment of model 'abc123' with title 'Production Model abc123'.", + "Generate a link to model 'xyz789' version 'v2.3' deployed on staging environment with title 'Staging Model v2.3'." + ] + }, + "tags": [ + "model-management", + "link-generation", + "deployment", + "documentation", + "model-versioning" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"deploymentEnvironment\":\"https://prod.models.example.com\",\"linkTitle\":\"Production Model abc123\",\"includeVersion\":false,\"modelVersion\":\"\"}", + "description": "Generate a simple link to production model without version." + }, + { + "inputJson": "{\"modelId\":\"xyz789\",\"deploymentEnvironment\":\"https://staging.models.example.com\",\"linkTitle\":\"Staging Model v2.3\",\"includeVersion\":true,\"modelVersion\":\"v2.3\"}", + "description": "Generate a link including version info to a staging deployment." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Link", + "context": null + } + }, + { + "name": "model-management.composeHeading", + "description": "This tool generates a well-structured heading text for AI model documentation, reports, or dashboards. It accepts parameters like the model name (string), heading level (number), optional subtitle (string), and style preferences (object). The tool processes these inputs to compose a formatted heading string suitable for display in markdown or HTML formats.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "Name of the AI model to include in the heading", + "required": true, + "defaultValue": "" + }, + { + "name": "headingLevel", + "type": "number", + "description": "Heading level as integer (1-6) determining the heading size or importance", + "required": false, + "defaultValue": "1" + }, + { + "name": "subtitle", + "type": "string", + "description": "Optional subtitle text to append below the heading", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "object", + "description": "Styling options such as {format: 'markdown'|'html', uppercase: true|false} defining heading format and text case", + "required": false, + "defaultValue": "{\"format\":\"markdown\",\"uppercase\":false}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed heading string with formatting according to style parameter" + }, + "aiAgent": { + "useCase": "Use this tool when generating dynamic model documentation or UI content that requires a clear, formatted heading based on variable model names and styles. It helps standardize heading generation in markdown or HTML so that reports and dashboards have consistent presentation of model information.", + "limitations": "Does not generate full document content or handle complex layout styling beyond basic heading levels and subtitle inclusion.", + "examples": [ + "Compose a markdown heading level 2 with model name 'SentimentAnalyzer', subtitle 'Performance Overview', and default styles.", + "Generate an HTML heading level 1 for model 'ImageClassifierV3' without subtitle and uppercase text.", + "Create a markdown heading for model 'ForecastNet' with heading level 3 and subtitle 'Results Summary'" + ] + }, + "tags": [ + "model-management", + "heading", + "composition", + "documentation", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"TextGenPro\",\"headingLevel\":1,\"subtitle\":\"Model Details\",\"style\":{\"format\":\"markdown\",\"uppercase\":false}}", + "description": "Generate a primary markdown heading for model 'TextGenPro' with a subtitle." + }, + { + "inputJson": "{\"modelName\":\"VisionAI\",\"headingLevel\":3,\"subtitle\":\"Evaluation Metrics\",\"style\":{\"format\":\"html\",\"uppercase\":true}}", + "description": "Create uppercase HTML heading level 3 for 'VisionAI' with subtitle." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Heading", + "context": null + } + }, + { + "name": "model-management.composeReply", + "description": "Generates a context-aware, coherent reply text based on a given conversation input, optional sentiment tone, and reply length constraints. Accepts prior message content and parameters, processes through trained language models, and produces a suggested reply message string to assist in communication and automated response generation.", + "category": "model-management", + "parameters": [ + { + "name": "conversationContext", + "type": "string", + "description": "The previous conversation text or message history that the reply should reference or respond to.", + "required": true, + "defaultValue": "" + }, + { + "name": "desiredTone", + "type": "string", + "description": "The tone or sentiment style of the reply, e.g., 'formal', 'friendly', 'neutral', or 'empathetic'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of characters allowed in the generated reply.", + "required": false, + "defaultValue": "250" + }, + { + "name": "includeSalutation", + "type": "boolean", + "description": "Whether to prepend a greeting or salutation at the start of the reply.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply text string suitable for sending." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to draft a reply to a message or conversational input, ensuring responses are contextually relevant and match desired tones and length limits. Ideal for chatbots, customer support automation, and interactive assistants that require natural communication.", + "limitations": "The tool cannot guarantee perfect contextual understanding or adherence to complex user-specific privacy constraints; it may generate generic or imperfect replies and does not replace human judgement for sensitive communications.", + "examples": [ + "Generate a polite reply to an email asking for product information.", + "Compose a friendly response in a customer support chat acknowledging a complaint.", + "Create a brief, formal reply declining a meeting request." + ] + }, + "tags": [ + "reply generation", + "text composition", + "natural language processing", + "conversation", + "communication", + "automated response" + ], + "examples": [ + { + "inputJson": "{\"conversationContext\":\"Hi, I would like more details about your premium subscription plan.\",\"desiredTone\":\"formal\",\"maxLength\":200,\"includeSalutation\":true}", + "description": "Generate a formal reply with a greeting to a customer asking about subscription details." + }, + { + "inputJson": "{\"conversationContext\":\"Your last delivery was delayed and the package was damaged.\",\"desiredTone\":\"empathetic\",\"maxLength\":300,\"includeSalutation\":false}", + "description": "Compose an empathetic response acknowledging a customer's complaint about delayed and damaged delivery." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Reply", + "context": null + } + }, + { + "name": "model-management.createCitation", + "description": "Generates a properly formatted citation in various academic styles based on provided bibliographic metadata. Accepts input details (author(s), title, year, source, etc.), processes them according to the selected citation style (APA, MLA, Chicago, etc.), and outputs the formatted citation string ready for inclusion in documents.", + "category": "model-management", + "parameters": [ + { + "name": "authors", + "type": "array", + "description": "List of authors in 'Last, First' format. Required for citation.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the work being cited, such as article, book, or paper title. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationYear", + "type": "number", + "description": "Year the work was published. Required for accurate citation.", + "required": true, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Name of journal, publisher, or website where the work appeared. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style to format the output, e.g., 'APA', 'MLA', 'Chicago'. Defaults to 'APA'.", + "required": false, + "defaultValue": "APA" + }, + { + "name": "volume", + "type": "string", + "description": "Volume number if applicable, typically for journal articles.", + "required": false, + "defaultValue": "" + }, + { + "name": "issue", + "type": "string", + "description": "Issue number if applicable, typically for journal articles.", + "required": false, + "defaultValue": "" + }, + { + "name": "pages", + "type": "string", + "description": "Page range for cited work, e.g., '123-130'. Optional but recommended for articles.", + "required": false, + "defaultValue": "" + }, + { + "name": "doi", + "type": "string", + "description": "Digital Object Identifier (DOI) of the work, if available, for direct reference.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted citation string under the key 'formattedCitation' and the citation style used." + }, + "aiAgent": { + "useCase": "Use this tool when generating scholarly citations from bibliographic metadata during manuscript preparation, referencing, or documentation. It helps format citations consistently and accurately across multiple academic styles with minimal manual effort.", + "limitations": "Does not fetch bibliographic metadata automatically; input data must be provided correctly. May not cover rare or highly specialized citation styles.", + "examples": [ + "Generate an APA citation for a journal article authored by three authors.", + "Create an MLA citation for a book with one author published in 2020.", + "Format a Chicago style citation for a conference paper including DOI." + ] + }, + "tags": [ + "citation", + "bibliography", + "academic-writing", + "formatting", + "reference", + "model-management", + "document-preparation" + ], + "examples": [ + { + "inputJson": "{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Advances in AI\",\"publicationYear\":2022,\"source\":\"Journal of AI Research\",\"citationStyle\":\"APA\",\"volume\":\"15\",\"issue\":\"3\",\"pages\":\"45-67\",\"doi\":\"10.1234/jair.2022.01503\"}", + "description": "Generate an APA citation for a journal article with multiple authors, volume, issue, pages and DOI." + }, + { + "inputJson": "{\"authors\":[\"Brown, Alice\"],\"title\":\"Understanding Robotics\",\"publicationYear\":2019,\"source\":\"Tech Press\",\"citationStyle\":\"MLA\"}", + "description": "Create an MLA citation for a single-author book published in 2019." + }, + { + "inputJson": "{\"authors\":[\"Green, Emily\"],\"title\":\"Conference on Machine Learning\",\"publicationYear\":2021,\"source\":\"Proceedings of ML Conference\",\"citationStyle\":\"Chicago\",\"pages\":\"101-110\"}", + "description": "Format a Chicago style citation for a conference paper with pages specified." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Citation", + "context": null + } + }, + { + "name": "model-management.createBudget", + "description": "Creates a detailed budget plan for an AI model project by accepting inputs such as project name, estimated resource costs, duration, and optional contingency percentages. The tool calculates total costs, allocates funds per category, and returns a summarized budget breakdown for management and tracking purposes.", + "category": "model-management", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the AI model project for which the budget is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "estimatedResourceCosts", + "type": "object", + "description": "An object specifying estimated costs for various resource categories (e.g., compute, storage, personnel) with category names as keys and cost numbers as values.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDurationMonths", + "type": "number", + "description": "Expected duration of the project in months to help estimate costs over time.", + "required": true, + "defaultValue": "" + }, + { + "name": "contingencyPercentage", + "type": "number", + "description": "Optional contingency percentage to cover unexpected expenses, defaults to 10%.", + "required": false, + "defaultValue": "10" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) for cost values, default is 'USD'.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "Returns a budget summary object including totalCost, detailedCosts by category, contingencyAmount, projectName, projectDurationMonths, and currency used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare a structured budget forecast for AI model development projects, allocating estimated costs efficiently across resource categories and incorporating contingencies to meet financial planning needs.", + "limitations": "This tool does not connect to real financial databases or track actual spend; it only produces initial budget estimates based on input parameters.", + "examples": [ + "Create a budget for a new AI model project lasting 6 months with estimated costs for compute, storage, and personnel.", + "Generate a project budget including a 15% contingency for unexpected expenses.", + "Prepare a USD budget summary for an AI training pipeline scheduled for 12 months." + ] + }, + "tags": [ + "model-management", + "budget", + "financial-planning", + "project-management", + "AI-models" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"VisionModelV2\",\"estimatedResourceCosts\":{\"compute\":15000,\"storage\":3000,\"personnel\":45000},\"projectDurationMonths\":6,\"contingencyPercentage\":12,\"currency\":\"USD\"}", + "description": "Create a 6-month budget for VisionModelV2 including a 12% contingency." + }, + { + "inputJson": "{\"projectName\":\"NLP_Enhancement\",\"estimatedResourceCosts\":{\"compute\":10000,\"storage\":2000,\"personnel\":35000},\"projectDurationMonths\":8,\"currency\":\"EUR\"}", + "description": "Generate an 8-month project budget for NLP Enhancement in Euros with default contingency." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Budget", + "context": null + } + }, + { + "name": "model-management.generateChecklist", + "description": "Generates a comprehensive checklist document for AI model development, deployment, or maintenance phases. Accepts input parameters like model type and checklist purpose, processes best practices and steps relevant to the context, and outputs a structured checklist to guide project workflows or audits.", + "category": "model-management", + "parameters": [ + { + "name": "modelType", + "type": "string", + "description": "Specifies the type of AI model (e.g., classification, regression, NLP) for which the checklist is generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "checklistPurpose", + "type": "string", + "description": "Defines the purpose of the checklist such as development, deployment, testing, or maintenance phase.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeCompliance", + "type": "boolean", + "description": "Whether to include compliance and regulatory related items in the checklist.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customItems", + "type": "array", + "description": "Additional custom checklist items provided as an array of strings to be appended.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the checklist document (e.g., markdown, json, plain text).", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the checklist content as a string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate structured procedural guidance or audit checklists tailored to specific AI model types and lifecycle phases for development teams or quality assurance. It helps standardize key steps and considerations, improving project quality and compliance.", + "limitations": "The tool cannot replace expert domain advice and may not cover highly specialized or emerging compliance requirements. It generates general checklists and does not customize for organization-specific processes beyond provided inputs.", + "examples": [ + "Generate a deployment checklist for a NLP model including compliance guidelines.", + "Create a development checklist for regression models without compliance items.", + "Produce a maintenance checklist for classification models in JSON format including custom items." + ] + }, + "tags": [ + "model-management", + "checklist-generation", + "AI-models", + "compliance", + "development", + "deployment", + "maintenance" + ], + "examples": [ + { + "inputJson": "{\"modelType\":\"NLP\",\"checklistPurpose\":\"deployment\",\"includeCompliance\":true,\"customItems\":[\"Verify data privacy measures\"],\"format\":\"markdown\"}", + "description": "Generate a deployment checklist for an NLP model including compliance and a custom item." + }, + { + "inputJson": "{\"modelType\":\"regression\",\"checklistPurpose\":\"development\",\"includeCompliance\":false,\"customItems\":[],\"format\":\"markdown\"}", + "description": "Create a development checklist for regression models without compliance items." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Checklist", + "context": null + } + }, + { + "name": "model-management.createScreenshot", + "description": "Captures a screenshot of a specified web page or application interface based on input URL or UI state parameters. The tool processes input such as URL, viewport size, and optional wait times to render the content, then generates a high-quality image file (PNG or JPEG) representing the visual state of the page or model interface.", + "category": "model-management", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the web page or application interface to capture as a screenshot.", + "required": true, + "defaultValue": "" + }, + { + "name": "viewportWidth", + "type": "number", + "description": "The width in pixels of the viewport to render the page in before taking the screenshot.", + "required": false, + "defaultValue": "1280" + }, + { + "name": "viewportHeight", + "type": "number", + "description": "The height in pixels of the viewport to render the page in before taking the screenshot.", + "required": false, + "defaultValue": "720" + }, + { + "name": "fullPage", + "type": "boolean", + "description": "Whether to capture the entire scrollable page or just the visible viewport area.", + "required": false, + "defaultValue": "false" + }, + { + "name": "imageFormat", + "type": "string", + "description": "The image format to output: PNG or JPEG (case-insensitive).", + "required": false, + "defaultValue": "png" + }, + { + "name": "delayBeforeCapture", + "type": "number", + "description": "Optional delay in milliseconds before capturing the screenshot to allow dynamic content to load.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "outputPath", + "type": "string", + "description": "Optional filesystem path or filename to save the screenshot; if omitted, returns image data as base64 string.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the screenshot data: if outputPath provided, returns confirmation and path; otherwise, returns the screenshot image as a base64 encoded string along with image metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to capture a visual snapshot of a web-based AI model's interface or other web content for documentation, UI testing, monitoring, or reporting purposes. It is especially useful to generate standardized images capturing model states, UI renderings, or outputs in a consistent format.", + "limitations": "This tool cannot interact deeply with dynamic page elements beyond basic rendering and delay, nor capture screenshots of native desktop applications. It requires the input URL or interface to be accessible and renderable in a headless browser environment.", + "examples": [ + "Capture a screenshot of a model's web UI for a status report.", + "Generate a full-page image of a documentation site showing current deployment state.", + "Take a viewport screenshot for UI regression testing." + ] + }, + "tags": [ + "model-management", + "screenshot", + "UI-capture", + "webpage", + "image", + "automation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/model/ui\",\"viewportWidth\":1366,\"viewportHeight\":768,\"fullPage\":false,\"imageFormat\":\"png\",\"delayBeforeCapture\":1500}", + "description": "Capture a 1366x768 viewport screenshot of the model UI page as a PNG after a short delay." + }, + { + "inputJson": "{\"url\":\"https://docs.example.com/model-deployment\",\"fullPage\":true,\"imageFormat\":\"jpeg\"}", + "description": "Capture a full scrollable page screenshot of the documentation in JPEG format." + }, + { + "inputJson": "{\"url\":\"https://app.example.com/dashboard\",\"viewportWidth\":1920,\"viewportHeight\":1080,\"delayBeforeCapture\":2000,\"outputPath\":\"/tmp/dashboard.png\"}", + "description": "Capture a 1080p viewport screenshot of the dashboard and save to a file path." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Screenshot", + "context": null + } + }, + { + "name": "embedding-generation.analyzeReply", + "description": "This tool accepts a text reply or message as input, generates vector embeddings representing the semantic content of the reply, and analyzes its features such as sentiment, relevance to a topic, and key thematic elements. The output includes the embedding vector and an analysis summary describing the reply's tone, intent, and thematic relevance.", + "category": "embedding-generation", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The actual text content of the reply to be analyzed and embedded.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextTopic", + "type": "string", + "description": "Optional topic or subject to evaluate relevance of the reply against. If provided, relevance score is computed.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Specifies which embedding model to use for vector generation (e.g., 'default', 'semantic_v2').", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "If true, perform sentiment analysis on the reply text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as an array of numbers, sentiment analysis result (positive/neutral/negative), relevance score if contextTopic was provided, and a thematic summary with key topics detected in the reply." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to semantically understand and quantify the content of a user reply or message. This supports tasks like conversation analysis, sentiment-aware decision making, relevance filtering, and storing replies as embeddings for similarity search or downstream NLP.", + "limitations": "This tool does not perform full natural language understanding or dialogue context tracking beyond the single reply text. It cannot replace comprehensive dialogue management or human nuanced interpretation.", + "examples": [ + "Analyze the sentiment and topic relevance of this customer reply: 'I appreciate the quick response and helpful advice.'", + "Generate an embedding and thematic summary for a reply message to be stored for similarity search.", + "Evaluate if this user reply is positive or negative in tone about the product and how closely it relates to the 'pricing' topic." + ] + }, + "tags": [ + "embedding", + "analysis", + "reply", + "sentiment", + "semantic", + "NLP", + "message", + "communication" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thank you for your assistance, your explanation was very clear.\",\"contextTopic\":\"customer support\",\"embeddingModel\":\"semantic_v2\",\"includeSentimentAnalysis\":true}", + "description": "Analyze a customer support reply for sentiment and relevance to 'customer support' topic." + }, + { + "inputJson": "{\"replyText\":\"I found the newest update confusing and it broke my workflow.\",\"includeSentimentAnalysis\":true}", + "description": "Generate embedding and sentiment analysis for a negative feedback reply without specifying topic." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "embedding-generation.analyzeIncident", + "description": "Processes detailed incident reports or security logs by generating vector embeddings that capture semantic and contextual information about the incident. Accepts textual descriptions and metadata, analyzes key features, and outputs a structured embedding vector to enable similarity search, clustering, or further AI-driven investigation.", + "category": "embedding-generation", + "parameters": [ + { + "name": "incidentText", + "type": "string", + "description": "Full textual description of the security incident or event to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs providing supplementary information about the incident, such as timestamps, affected systems, or severity.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier or name of the embedding model to use for generating the vector representation.", + "required": false, + "defaultValue": "\"default-security-model-v1\"" + }, + { + "name": "includeRawFeatures", + "type": "boolean", + "description": "Whether to include raw extracted features alongside the embedding vector in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "Desired dimensionality of the generated embedding vector; defaults to the model's standard size if not specified.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embedding vector as a numeric array, optionally raw extracted features, and metadata linking back to the original incident." + }, + "aiAgent": { + "useCase": "Use this tool when processing textual security incident data to create vector embeddings that represent the semantic content and context of incidents. These embeddings facilitate similarity detection, clustering, automated triage, or as input for downstream AI analytic workflows in cybersecurity.", + "limitations": "Does not perform incident root cause analysis or remediation; purely generates vector embeddings for semantic representation. Quality depends on input text clarity and model appropriateness.", + "examples": [ + "Generate an embedding for this security breach report for clustering with existing incidents.", + "Analyze this incident log text and metadata to obtain an embedding for anomaly detection.", + "Create vector embedding using a specified security-optimized model for this malware incident description." + ] + }, + "tags": [ + "embedding", + "security", + "incident-analysis", + "vector-representation", + "cybersecurity", + "semantic-analysis" + ], + "examples": [ + { + "inputJson": "{\"incidentText\":\"Unauthorized login detected on server X at 03:15 UTC, multiple failed attempts followed by a successful session lasting 15 minutes.\",\"metadata\":{\"severity\":\"high\",\"affectedSystem\":\"serverX\",\"timestamp\":\"2024-06-01T03:15:00Z\"},\"embeddingModel\":\"default-security-model-v1\"}", + "description": "Embedding generation for an unauthorized access incident including metadata for severity and timestamp." + }, + { + "inputJson": "{\"incidentText\":\"Phishing email reported by multiple users, containing suspicious attachment and link to fake login page.\",\"includeRawFeatures\":true}", + "description": "Generate embedding for phishing incident description and request raw features extraction." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "embedding-generation.analyzeTrend", + "description": "Analyzes recent textual data to detect emerging and evolving trends by generating vector embeddings and clustering them. Accepts an array of text documents and optional parameters for time filtering and clustering sensitivity. Outputs structured trend summaries with representative keywords and cluster statistics.", + "category": "embedding-generation", + "parameters": [ + { + "name": "textData", + "type": "array", + "description": "Array of text documents to analyze for trends", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "ISO 8601 date string to filter documents from this start date", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "ISO 8601 date string to filter documents up to this end date", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use (e.g., 'bert-base-uncased')", + "required": false, + "defaultValue": "bert-base-uncased" + }, + { + "name": "clusteringSensitivity", + "type": "number", + "description": "Sensitivity parameter for clustering granularity (0 low - 1 high)", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "maxTrends", + "type": "number", + "description": "Maximum number of top trends to return", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected trends with cluster ids, representative keywords, example documents, and statistics such as document counts and time spans" + }, + "aiAgent": { + "useCase": "Use this tool when needing to identify and summarize prominent and emerging textual trends over a collection of documents, such as social media posts, news articles, or customer feedback, by analyzing their semantic embeddings and clustering similar content. It is especially useful for dynamic content streams where trends evolve over time.", + "limitations": "This tool does not perform sentiment analysis or causal inference and is limited to textual trend detection. It also requires sufficiently large and timely text datasets to produce meaningful trends. Clustering results depend on parameter tuning and embedding quality.", + "examples": [ + "Identify trending topics in the last month from a batch of news headlines.", + "Analyze social media posts over the past week to find emerging discussion themes.", + "Cluster customer reviews to discover prevalent complaint topics and improvements over time." + ] + }, + "tags": [ + "embedding-generation", + "trend-analysis", + "text-clustering", + "nlp", + "analytics", + "vector-embeddings" + ], + "examples": [ + { + "inputJson": "{\"textData\":[\"The new smartphone release features advanced AI capabilities.\",\"Electric vehicles sales surge in the last quarter.\",\"AI-powered chatbots improve customer service efficiency.\",\"Renewable energy adoption increases worldwide.\"],\"timeRangeStart\":\"2024-05-01T00:00:00Z\",\"timeRangeEnd\":\"2024-05-31T23:59:59Z\",\"embeddingModel\":\"bert-base-uncased\",\"clusteringSensitivity\":0.6,\"maxTrends\":3}", + "description": "Analyze technology and environment related news headlines from May 2024 to identify top 3 emerging trends." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "embedding-generation.analyzeHeading", + "description": "This tool takes a text heading as input and generates an embedding vector that captures its semantic meaning for use in similarity comparison, search indexing, or content categorization. It also provides a basic analysis including keyword extraction and heading length statistics.", + "category": "embedding-generation", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The heading text to analyze and generate embeddings for.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Whether to extract important keywords from the heading text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector array, an array of extracted keywords, and basic statistics such as heading length." + }, + "aiAgent": { + "useCase": "Use this tool when you need a numerical semantic representation of a heading to support tasks like clustering, searching, or contextual matching. It is particularly helpful in applications processing documents or webpages with structured headings to enable semantic analysis or content classification.", + "limitations": "This tool is designed only for short heading texts and may not perform well on long paragraphs or non-heading content. It cannot provide full textual analysis beyond the heading scope, such as sentiment or entity recognition.", + "examples": [ + "Generate embedding and keywords for a document section heading 'Introduction to Machine Learning'.", + "Analyze the heading 'Key Features & Benefits' to create searchable metadata.", + "Obtain semantic embedding for the heading 'Chapter 5: Results and Discussion'." + ] + }, + "tags": [ + "embedding", + "heading", + "text-analysis", + "keyword-extraction", + "semantic-search", + "content-categorization" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Understanding Neural Networks\"}", + "description": "Generate embedding and keywords for a technical heading." + }, + { + "inputJson": "{\"headingText\":\"Project Timeline\"}", + "description": "Analyze a simple project heading to extract semantic representation and keywords." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "embedding-generation.renderWord", + "description": "This tool accepts a single word string and generates a vector embedding representation for that word, suitable for machine learning or natural language processing tasks. It processes the input word through a pretrained embedding model and returns the embedding as a numerical vector array.", + "category": "embedding-generation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The input word to be embedded; must be a valid single token or word.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to use (e.g., 'glove-50d', 'fasttext-en').", + "required": false, + "defaultValue": "glove-50d" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the output embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original word and its vector embedding array of floats." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert a single word into its vector embedding for downstream NLP tasks such as semantic similarity, clustering, or classification. It is useful for scenarios where a quick word-level embedding is required without batch processing large texts.", + "limitations": "Cannot process phrases or multiple words at once; embeddings depend on the pretrained model used and may differ accordingly; embeddings are static and do not incorporate context beyond the single word.", + "examples": [ + "Generate an embedding for the word 'innovation'", + "Render a vector embedding for the word 'computer' using the 'fasttext-en' model", + "Get a normalized vector embedding for the word 'science'" + ] + }, + "tags": [ + "embedding", + "word", + "vector", + "NLP", + "representation", + "model" + ], + "examples": [ + { + "inputJson": "{\"word\":\"technology\",\"embeddingModel\":\"glove-50d\",\"normalize\":true}", + "description": "Generate a normalized vector embedding for the word 'technology' using the default GloVe 50-dimensional model." + }, + { + "inputJson": "{\"word\":\"chatbot\",\"embeddingModel\":\"fasttext-en\",\"normalize\":false}", + "description": "Get the raw vector embedding for the word 'chatbot' using the FastText English model without normalization." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "embedding-generation.formatSummary", + "description": "Formats a given raw text summary into a concise, well-structured output optimized for downstream embedding generation. Accepts text input and parameters to control maximum length and inclusion of key highlights, producing a clean, summarized string suited for embedding models.", + "category": "embedding-generation", + "parameters": [ + { + "name": "rawSummary", + "type": "string", + "description": "The raw textual summary to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the formatted summary in characters. If exceeded, summary will be truncated accordingly.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "Whether to include extracted key highlights or bullet points in the formatted summary.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text to tailor formatting rules (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formattedSummary string, which is a cleaned and concise version of the input text, optimized for embedding generation." + }, + "aiAgent": { + "useCase": "Use this tool when you have a text summary that needs to be cleaned and formatted consistently before generating vector embeddings. This ensures output embeddings are based on uniform, concise inputs enhancing downstream semantic search or clustering effectiveness.", + "limitations": "This tool formats and shortens summaries but does not perform semantic embedding generation itself or deep semantic understanding. It may not capture domain-specific nuances if language parameter is not set appropriately.", + "examples": [ + "Format a meeting notes summary to max length 300 with highlights included.", + "Prepare a raw article summary for embedding by trimming it to 400 characters.", + "Reformat a technical document summary in English without highlights for vector encoding." + ] + }, + "tags": [ + "embedding", + "summary", + "formatting", + "text-processing", + "vectorization", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"rawSummary\":\"Our quarterly results indicate a 20% increase in revenue driven primarily by the launch of new products. Customer satisfaction remains high, though supply chain delays affected delivery times. We plan to address logistics in Q3 and invest further in R&D.\",\"maxLength\":300,\"includeHighlights\":true,\"language\":\"en\"}", + "description": "Formats a corporate quarterly summary to a concise 300 character output including key highlights." + }, + { + "inputJson": "{\"rawSummary\":\"This research overview details the recent advances in machine learning, emphasizing transformer architectures and unsupervised learning techniques. Key findings include improved model accuracy and efficiency.\",\"maxLength\":250,\"includeHighlights\":false}", + "description": "Formats a technical research summary trimming to 250 characters without highlights." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "embedding-generation.formatModule", + "description": "Formats a given embedding generation module code snippet by applying consistent styling and organizing the code for readability. Accepts raw source code as a string, an optional programming language identifier for syntax-specific formatting, and outputs the formatted code string ready for use or further processing.", + "category": "embedding-generation", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw embedding generation module code to be formatted as plain text.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the module code (e.g., 'python', 'javascript') to apply appropriate formatting rules.", + "required": false, + "defaultValue": "python" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted code. Defaults to 4 for readability.", + "required": false, + "defaultValue": "4" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line length for code formatting to wrap lines appropriately. Defaults to 80.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted module code as a string under the 'formattedCode' property." + }, + "aiAgent": { + "useCase": "Use this tool when you have source code for an embedding generation module that needs to be consistently formatted for readability, code reviews, or integration into a larger codebase. It ensures style consistency and helps maintain code quality across AI development teams or automated pipelines.", + "limitations": "Does not perform code syntax validation, semantic analysis, or fix logical errors; only code reformatting based on stylistic conventions is applied.", + "examples": [ + "Format a raw python embedding module source to have consistent indentation and line length.", + "Convert messy JavaScript embedding generation code into a neatly formatted module for publication.", + "Apply standard formatting to embedding generation module code snippet before committing to version control." + ] + }, + "tags": [ + "embedding", + "code-formatting", + "module", + "source-code", + "programming", + "style", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"def generate_embedding(text):\\n import numpy as np\\n vec = np.random.rand(512)\\n return vec\",\"language\":\"python\",\"indentationSpaces\":2,\"lineWidth\":80}", + "description": "Formats a small Python embedding generation function with 2-space indentation." + }, + { + "inputJson": "{\"sourceCode\":\"function embed(text) {let vec = new Array(768).fill(0);return vec;}\",\"language\":\"javascript\",\"indentationSpaces\":2,\"lineWidth\":80}", + "description": "Formats a JavaScript embedding generator function with 2-space indentation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "embedding-generation.composeParagraph", + "description": "This tool accepts an array of sentences or short text fragments and composes them into a coherent, well-structured paragraph. It processes the inputs by analyzing semantic relationships and logical flow, then outputs a single joined paragraph optimized for embedding generation or natural language understanding tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "sentences", + "type": "array", + "description": "An array of text strings (sentences or fragments) to be combined into a paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleTone", + "type": "string", + "description": "The desired style or tone of the composed paragraph, e.g., formal, casual, technical, narrative.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length in number of words for the composed paragraph. If zero or omitted, no length limit is applied.", + "required": false, + "defaultValue": "0" + }, + { + "name": "preserveOrder", + "type": "boolean", + "description": "Whether to preserve the original order of sentences or to reorder them for logical flow and coherence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed paragraph as a single string under 'paragraph', and a summary of composition metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you have multiple related sentences or fragments that need to be merged into a natural, coherent paragraph suitable for embedding generation or further text processing. It is especially useful to create unified textual units from segmented inputs, enhancing semantic embedding quality.", + "limitations": "The tool does not perform deep content rewriting or fact-checking. It may not generate perfect narrative style; very complex rephrasing or creative writing is outside its scope.", + "examples": [ + "Compose a formal paragraph from these bullet points for a document summary.", + "Merge short customer feedback sentences into a coherent review paragraph.", + "Create a technical descriptive paragraph from segmented notes." + ] + }, + "tags": [ + "embedding-generation", + "text-composition", + "paragraph", + "natural-language-processing", + "semantic-embedding" + ], + "examples": [ + { + "inputJson": "{\"sentences\":[\"The product launch was successful.\", \"Customer feedback has been positive.\", \"We plan to expand to new markets.\"],\"styleTone\":\"formal\",\"maxLength\":100,\"preserveOrder\":true}", + "description": "Compose a formal paragraph from multiple update sentences preserving their order." + }, + { + "inputJson": "{\"sentences\":[\"Fast and reliable.\", \"Great battery life.\", \"Compact design.\"],\"styleTone\":\"casual\",\"maxLength\":50,\"preserveOrder\":false}", + "description": "Create a casual tone paragraph from three product features without order preservation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "embedding-generation.composeNotification", + "description": "Generates a vector embedding representing the semantic content of a notification message composed from specified title, body, and optional metadata. Accepts text fields and optional context info, processes them using embedding models to produce a vector embedding useful for similarity search or classification tasks involving notifications.", + "category": "embedding-generation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main subject or headline text of the notification to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The detailed message content of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs providing additional context about the notification, such as sender, priority, or category.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + } + ], + "returns": { + "type": "object", + "description": "The output includes the notification embedding vector as a float array plus the combined notification text used for embedding." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs a semantic vector representation of a composed notification for indexing, searching, clustering, or feeding downstream NLP models that operate on notification messages. It helps capture the meaning of multi-part notifications including title and body.", + "limitations": "This tool only generates embeddings; it does not send or schedule notifications. It does not produce human-readable notification text beyond combining inputs internally.", + "examples": [ + "Generate an embedding for a system alert notification with title and body.", + "Create a vector representation to compare user messages to predefined notification templates." + ] + }, + "tags": [ + "embedding", + "notification", + "text-composition", + "vectorization", + "semantic-search", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Server downtime alert\",\"body\":\"The main database server will be down from 2 AM to 4 AM for maintenance.\",\"metadata\":{\"priority\":\"high\",\"sender\":\"IT Ops\"},\"embeddingModel\":\"text-embedding-ada-002\"}", + "description": "Embedding a scheduled maintenance notification with priority and sender metadata." + }, + { + "inputJson": "{\"title\":\"New message from John\",\"body\":\"Hey, just wanted to check if you're available for a meeting tomorrow.\",\"metadata\":{},\"embeddingModel\":\"text-embedding-ada-002\"}", + "description": "Embedding a personal message notification without additional metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "embedding-generation.buildQuery", + "description": "Generates a vector embedding suitable for semantic search queries from provided text input. Accepts a string query and optional parameters for embedding model and pre-processing options. Returns a numerical vector representing the semantic meaning of the query for downstream similarity search or clustering.", + "category": "embedding-generation", + "parameters": [ + { + "name": "queryText", + "type": "string", + "description": "The raw text of the query to convert into an embedding vector.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The identifier or name of the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "normalize", + "type": "boolean", + "description": "If true, normalize the output vector to unit length.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Specify the language of the input text to enhance embedding relevance, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embedding vector as an array of floats, the embedding model used, and metadata such as original query text." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform natural language queries into vector embeddings that can be used for semantic search, similarity comparison, or as input to vector-based retrieval systems. It is essential when querying vector databases or performing approximate nearest neighbor searches with text queries.", + "limitations": "Cannot generate embeddings from non-textual data such as images or raw audio. It depends on the availability and support of the specified embedding model. Embedding quality depends on the input text quality and model capabilities.", + "examples": [ + "Generate an embedding vector from the search query 'best Italian restaurants near me'.", + "Create a normalized embedding from the multilingual query string for a semantic search system.", + "Build a query embedding specifying the Spanish language parameter for a regional search application." + ] + }, + "tags": [ + "embedding", + "vector", + "embedding-generation", + "semantic-search", + "query-processing", + "natural-language" + ], + "examples": [ + { + "inputJson": "{\"queryText\":\"find recent articles about AI ethics\",\"embeddingModel\":\"text-embedding-ada-002\",\"normalize\":true,\"language\":\"en\"}", + "description": "Create a normalized semantic embedding from an English language query for AI ethics articles." + }, + { + "inputJson": "{\"queryText\":\"recetas de comida mexicana\"}", + "description": "Generate a vector embedding from a Spanish query about Mexican recipes using default model and normalization." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "file-operations.analyzeLink", + "description": "Analyzes a given URL to extract link metadata such as HTTP status, content type, page title, description, and link health. Accepts a valid URL string, optionally follows redirects, and returns an object summarizing accessibility and basic SEO-relevant data about the link's target content.", + "category": "file-operations", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The target URL to analyze. Must be a valid HTTP or HTTPS link.", + "required": true, + "defaultValue": "" + }, + { + "name": "followRedirects", + "type": "boolean", + "description": "Whether to follow HTTP redirects up to a maximum number of times. Improves accuracy of final link analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRedirects", + "type": "number", + "description": "Maximum number of redirects to follow if followRedirects is enabled. Prevents infinite redirect loops.", + "required": false, + "defaultValue": "5" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds to wait for the HTTP response before aborting the analysis.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing link analysis results, including HTTP status code, content type, page title, meta description, final resolved URL, and a boolean indicating if the link is healthy (e.g., status 200)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically assess the validity, health, and basic metadata of a web link. Ideal for validating URLs in datasets, verifying outbound links on webpages, or gathering SEO-relevant information automatically.", + "limitations": "This tool does not render JavaScript, so dynamic content loaded client-side may be missed. It only performs HTTP-level analysis and simple HTML metadata extraction; complex content scraping is not supported.", + "examples": [ + "Analyze the health and meta-description of a given product page link.", + "Verify all outbound URLs in a user's dataset to find broken or redirected links.", + "Extract the page title and final URL after redirects for analytics purposes." + ] + }, + "tags": [ + "link analysis", + "URL validation", + "SEO", + "HTTP", + "metadata extraction", + "web scraping", + "file-operations" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://www.example.com\",\"followRedirects\":true,\"maxRedirects\":3,\"timeoutSeconds\":8}", + "description": "Analyze the main example.com homepage link, following up to 3 redirects with an 8 second timeout." + }, + { + "inputJson": "{\"url\":\"http://bit.ly/testlink\",\"followRedirects\":true,\"maxRedirects\":5}", + "description": "Check a shortened URL by following redirects fully and returning the final destination metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "file-operations.analyzeDashboard", + "description": "Analyzes input dashboard configuration JSON or files to extract key metrics, usage statistics, and structural insights. Accepts dashboard data as JSON string or a file path, processes to summarize widget types, data sources, usage patterns, and outputs a structured report object with analytics.", + "category": "file-operations", + "parameters": [ + { + "name": "dashboardJson", + "type": "string", + "description": "Dashboard configuration as a JSON string. Provide either this or dashboardFilePath.", + "required": false, + "defaultValue": "" + }, + { + "name": "dashboardFilePath", + "type": "string", + "description": "Path to the dashboard configuration file (JSON format). Provide either this or dashboardJson.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeUsageStats", + "type": "boolean", + "description": "Flag to include usage statistics in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxWidgets", + "type": "number", + "description": "Maximum number of widgets to analyze for performance reasons. If zero, analyze all widgets.", + "required": false, + "defaultValue": "0" + }, + { + "name": "dataSourceSummary", + "type": "boolean", + "description": "Flag to include summary of data sources used in the dashboard.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing metadata about the dashboard such as total widgets, widget types distribution, data sources summary, usage statistics, and any detected structural issues." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent receives dashboard configuration data and needs to extract meaningful analytics for reporting, understanding dashboard complexity, or optimization advice. It helps in transforming raw dashboard definitions into actionable insights about composition and usage.", + "limitations": "Cannot execute or render dashboards; it does not access live usage data beyond what is included in input. It requires valid JSON dashboard definitions or files and does not support proprietary or binary formats.", + "examples": [ + "Analyze a dashboard JSON string to summarize widget types and usage patterns.", + "Analyze a dashboard configuration file for data source distributions and potential issues.", + "Obtain a report of a dashboard’s structure limiting analysis to the first 50 widgets." + ] + }, + "tags": [ + "file", + "dashboard", + "analysis", + "analytics", + "json", + "reporting", + "data-sources" + ], + "examples": [ + { + "inputJson": "{\"dashboardJson\":\"{\\\"widgets\\\":[{\\\"type\\\":\\\"chart\\\",\\\"dataSource\\\":\\\"salesDB\\\"},{\\\"type\\\":\\\"table\\\",\\\"dataSource\\\":\\\"warehouseDB\\\"}],\\\"usageStats\\\":{\\\"views\\\":120,\\\"lastAccess\\\":\\\"2024-06-01\\\"}}\",\"includeUsageStats\":true}", + "description": "Analyze a dashboard JSON string with two widgets and usage stats included." + }, + { + "inputJson": "{\"dashboardFilePath\":\"/configs/dashboard1.json\",\"maxWidgets\":100,\"dataSourceSummary\":true}", + "description": "Analyze dashboard configuration file limiting analysis to 100 widgets and include data source summaries." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "file-operations.analyzeKPI", + "description": "Analyzes KPI data from uploaded CSV or JSON files to compute key performance metric trends, summary statistics, and visualizations, providing insights into business performance. Accepts file path or raw data string as input, along with parameters to define KPI fields and time ranges. Returns statistical summaries and trend evaluations in JSON format.", + "category": "file-operations", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "Path to the KPI data file (CSV or JSON) to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawDataString", + "type": "string", + "description": "Raw KPI data as a JSON or CSV string if file path is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "kpiFields", + "type": "array", + "description": "List of KPI metric field names from the data to analyze.", + "required": true, + "defaultValue": "[\"\"]" + }, + { + "name": "dateField", + "type": "string", + "description": "Name of the date or time field in the data to analyze trends over time.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (inclusive) for the analysis period in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (inclusive) for the analysis period in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeVisualization", + "type": "boolean", + "description": "Whether to include simple visual data summaries (like sparkline data) in output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing KPI statistical summaries (averages, totals, min, max), trend evaluations (increasing, decreasing, stable), and optional visualization data for each KPI over the selected time period." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract insights from KPI datasets stored in files or strings, especially to summarize performance metrics over time, identify trends, and generate report-ready summaries that help decision making.", + "limitations": "Cannot automatically detect KPI fields or data schema; user must specify. Does not generate complex charts or export visualizations beyond simple data summaries. Limited to time-series KPI data in standard CSV or JSON formats.", + "examples": [ + "Analyze sales volume and customer churn KPIs from a monthly CSV file between two dates.", + "Summarize website engagement KPIs from JSON data string for the last quarter, including simple visualization data.", + "Compare daily production KPIs within a specific period from an uploaded data file." + ] + }, + "tags": [ + "file", + "analysis", + "KPI", + "metrics", + "performance", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/data/kpi_data.csv\",\"kpiFields\":[\"salesVolume\",\"customerChurn\"],\"dateField\":\"reportDate\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"includeVisualization\":true}", + "description": "Analyze sales volume and customer churn KPIs from a CSV file for Q1 2023 with visualization." + }, + { + "inputJson": "{\"rawDataString\":\"[{\\\"reportDate\\\":\\\"2024-01-01\\\",\\\"activeUsers\\\":1000,\\\"conversionRate\\\":0.05},{\\\"reportDate\\\":\\\"2024-01-02\\\",\\\"activeUsers\\\":1100,\\\"conversionRate\\\":0.06}]\",\"kpiFields\":[\"activeUsers\",\"conversionRate\"],\"dateField\":\"reportDate\",\"includeVisualization\":false}", + "description": "Analyze active users and conversion rate KPIs from JSON string without date filtering or visualization." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "file-operations.formatWord", + "description": "This tool formats the content of a Microsoft Word (.docx) file according to specified options such as font style, size, text alignment, and line spacing. It accepts a Word file input, applies the formatting, and outputs the updated Word file preserving the original content structure.", + "category": "file-operations", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "Path to the input Word (.docx) file to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "Path to save the formatted Word (.docx) file", + "required": true, + "defaultValue": "" + }, + { + "name": "fontName", + "type": "string", + "description": "Font name to apply to the entire document (e.g., Arial, Times New Roman)", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in points to apply to the document text", + "required": false, + "defaultValue": "0" + }, + { + "name": "textAlignment", + "type": "string", + "description": "Text alignment to apply: left, center, right, justify", + "required": false, + "defaultValue": "\"left\"" + }, + { + "name": "lineSpacing", + "type": "number", + "description": "Line spacing multiplier (e.g., 1.0 = single, 1.5 = one-and-a-half lines)", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the path to the formatted Word file and a success flag indicating formatting was applied correctly" + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize or modify formatting of existing Word documents in automated workflows, such as generating reports or formatting generated content. It helps enforce consistent font, size, alignment, and spacing without manual editing.", + "limitations": "Cannot modify content beyond formatting such as inserting or deleting text, images, or complex style changes like headers/footers or tables of contents. Supports only .docx format files.", + "examples": [ + "Format a report Word document to use Arial font, size 12, justified text, and 1.5 line spacing.", + "Change the font and alignment of a contract document while preserving original text and layout.", + "Standardize the style of meeting minutes by setting Times New Roman font, size 11, left aligned, with single spacing." + ] + }, + "tags": [ + "file-operations", + "word", + "formatting", + "docx", + "document", + "text-formatting" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/docs/meeting_notes.docx\",\"outputFilePath\":\"/docs/meeting_notes_formatted.docx\",\"fontName\":\"Times New Roman\",\"fontSize\":12,\"textAlignment\":\"justify\",\"lineSpacing\":1.5}", + "description": "Format meeting notes Word file to Times New Roman 12pt, justified text, 1.5 line spacing" + }, + { + "inputJson": "{\"inputFilePath\":\"/reports/monthly_report.docx\",\"outputFilePath\":\"/reports/monthly_report_formatted.docx\",\"fontName\":\"Arial\",\"fontSize\":11,\"textAlignment\":\"left\",\"lineSpacing\":1}", + "description": "Format monthly report Word file with Arial 11pt font, left alignment, single spacing" + }, + { + "inputJson": "{\"inputFilePath\":\"/contracts/contract1.docx\",\"outputFilePath\":\"/contracts/contract1_formatted.docx\",\"fontName\":\"Calibri\",\"fontSize\":10,\"textAlignment\":\"center\",\"lineSpacing\":1.15}", + "description": "Center aligned contract document with Calibri 10pt and 1.15 line spacing" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "file-operations.formatAPI", + "description": "Formats API specification files by parsing input content (e.g., OpenAPI, Swagger in JSON or YAML) and producing a consistently styled, validated output. Supports customizable indentation, ordering, and output format (JSON or YAML) to improve readability and maintainability of API specs.", + "category": "file-operations", + "parameters": [ + { + "name": "inputContent", + "type": "string", + "description": "The raw API specification content as a string, in JSON or YAML format. Required input.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input content: 'json' or 'yaml'. Determines parser choice. Default is 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' or 'yaml'. Specifies the format of the formatted API specification output. Defaults to the input format.", + "required": false, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use per indentation level in the output. Defaults to 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortProperties", + "type": "boolean", + "description": "Whether to alphabetically sort object properties in the output to enhance readability. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateSpec", + "type": "boolean", + "description": "If true, perform validation of the API specification structure and semantic correctness before formatting. Default is true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'formattedContent' as the string of the formatted API specification and 'format' indicating output format used ('json' or 'yaml'). Validation errors are included if validation is enabled and issues are found." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to cleanly format or normalize an API specification file (OpenAPI/Swagger) to ensure it adheres to style norms, improve human readability, or convert between JSON and YAML formats. Useful for automated API documentation pipelines or pre-commit formatting in API projects.", + "limitations": "This tool does not generate API specifications from scratch, cannot fix logical errors beyond schema validation, and does not support formats other than JSON and YAML. Deep semantic validation depends on validation library capabilities.", + "examples": [ + "Format a raw OpenAPI JSON spec with 4-space indentation to YAML output.", + "Validate and pretty-print a Swagger YAML specification with sorted properties.", + "Convert a minified JSON API spec to a readable JSON file with 2-space indentation." + ] + }, + "tags": [ + "formatting", + "api", + "specification", + "json", + "yaml", + "validation", + "file-operations" + ], + "examples": [ + { + "inputJson": "{\"inputContent\":\"{\\n \\\"openapi\\\": \\\"3.0.0\\\",\\n \\\"info\\\": {\\n \\\"version\\\": \\\"1.0.0\\\",\\n \\\"title\\\": \\\"Sample API\\\"\\n },\\n \\\"paths\\\": {}\\n}\",\"inputFormat\":\"json\",\"outputFormat\":\"yaml\",\"indentationSpaces\":2,\"sortProperties\":true,\"validateSpec\":true}", + "description": "Convert a JSON OpenAPI spec to a sorted YAML format with 2 spaces indentation." + }, + { + "inputJson": "{\"inputContent\":\"openapi: 3.0.0\\ninfo:\\n title: Sample API\\n version: 1.0.0\\npaths: {}\\n\",\"inputFormat\":\"yaml\",\"outputFormat\":\"json\",\"indentationSpaces\":4,\"sortProperties\":false,\"validateSpec\":true}", + "description": "Convert a YAML OpenAPI spec to a pretty-printed JSON format with 4 spaces indentation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "file-operations.formatText", + "description": "Formats plain text according to specified style options including line width, indentation, line endings, and capitalization. Accepts a text string and outputs a formatted string for improved readability or standardization.", + "category": "file-operations", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input plain text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineWidth", + "type": "number", + "description": "The maximum width of each line after formatting. Lines longer than this will be wrapped.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to indent each line.", + "required": false, + "defaultValue": "0" + }, + { + "name": "lineEnding", + "type": "string", + "description": "Line ending to use in output, e.g., '\\n' for Unix-style, '\\r\\n' for Windows-style.", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "capitalize", + "type": "string", + "description": "Capitalization style to apply: 'none', 'sentence', 'uppercase', or 'lowercase'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "trimTrailingSpaces", + "type": "boolean", + "description": "Whether to trim trailing spaces at the end of each line.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single property 'formattedText' containing the formatted text string." + }, + "aiAgent": { + "useCase": "Use when needing to normalize or improve the readability of unstructured plain text by applying consistent line breaks, indentation, capitalization, or line endings. Useful for preparing text for output, display, or further processing.", + "limitations": "Does not apply advanced text formatting like rich text styles or handle markup languages. Cannot correct grammar or spelling errors.", + "examples": [ + "Format a paragraph with a max line width of 50 characters and two spaces indentation.", + "Convert all text to uppercase with Unix-style line endings.", + "Wrap lines at 100 characters without changing capitalization." + ] + }, + "tags": [ + "file", + "text", + "formatting", + "plainText", + "lineWrapping", + "indentation", + "capitalization" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample text that will be wrapped and indented.\",\"maxLineWidth\":40,\"indentationSpaces\":4,\"lineEnding\":\"\\n\",\"capitalize\":\"sentence\",\"trimTrailingSpaces\":true}", + "description": "Wrap text at 40 chars, indent 4 spaces, capitalize sentences." + }, + { + "inputJson": "{\"text\":\"example input text.\",\"maxLineWidth\":80,\"indentationSpaces\":0,\"lineEnding\":\"\\r\\n\",\"capitalize\":\"uppercase\",\"trimTrailingSpaces\":true}", + "description": "Convert text to uppercase with Windows-style line endings." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "file-operations.composeWord", + "description": "This tool accepts an array of text fragments or sentences, optionally with formatting instructions, and composes them into a single, well-structured Word document (.docx). It processes the input by arranging content, applying simple styles like headings or bolding, and outputs a byte stream or base64 string representing the composed Word file ready for saving or further use.", + "category": "file-operations", + "parameters": [ + { + "name": "textFragments", + "type": "array", + "description": "An array of strings or objects representing paragraphs or text pieces to include in the document, in order, with optional formatting instructions.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Optional title to add as the first heading in the Word document.", + "required": false, + "defaultValue": "" + }, + { + "name": "includePageNumbers", + "type": "boolean", + "description": "Whether to add page numbers in the footer of each page.", + "required": false, + "defaultValue": "false" + }, + { + "name": "fontName", + "type": "string", + "description": "Font family to use throughout the document, e.g., 'Arial', 'Times New Roman'.", + "required": false, + "defaultValue": "Calibri" + }, + { + "name": "fontSize", + "type": "number", + "description": "Default font size in points for normal text paragraphs.", + "required": false, + "defaultValue": "11" + }, + { + "name": "boldTitles", + "type": "boolean", + "description": "Whether to render titles or headings in bold style.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed Word document as a base64 encoded string under 'base64Docx' and metadata including byte length and file type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a Word document by combining multiple text fragments or sections with simple formatting, such as reports, summaries, or generated documentation, and you want a ready-to-save DOCX file output.", + "limitations": "Cannot perform complex document layouts, embed images, tables, or advanced styling beyond basic text formatting. Does not support reading or modifying existing Word documents, only composition from provided text.", + "examples": [ + "Generate a Word report by composing several paragraphs and add 'Monthly Report' as the title.", + "Create a Word file combining text fragments with page numbers and custom font size for a project summary.", + "Compose a document from plain text array where headings should be bolded and set page numbers in the footer." + ] + }, + "tags": [ + "file", + "word", + "compose", + "document", + "docx", + "text", + "generate" + ], + "examples": [ + { + "inputJson": "{\"textFragments\":[\"Introduction paragraph.\",\"Details of the project.\",\"Conclusion.\"],\"documentTitle\":\"Project Report\",\"includePageNumbers\":true,\"fontName\":\"Arial\",\"fontSize\":12,\"boldTitles\":true}", + "description": "Compose a Word document titled 'Project Report' with three paragraphs and page numbers, using Arial 12pt font with bolded titles." + }, + { + "inputJson": "{\"textFragments\":[\"Summary of findings.\",\"Next steps.\"],\"documentTitle\":\"Summary\",\"includePageNumbers\":false,\"fontName\":\"Times New Roman\",\"fontSize\":11,\"boldTitles\":false}", + "description": "Create a simple Word doc titled 'Summary' with two paragraphs, Times New Roman font 11pt, no page numbers, and non-bold titles." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "file-operations.formatContract", + "description": "Formats contract document text according to specified style guidelines, including date and currency formatting, clause numbering, and optional template insertion. Accepts raw or partially formatted contract text and outputs cleaned, standardized contract text ready for review or distribution.", + "category": "file-operations", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "The raw or partially formatted contract text to be processed and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Style guideline preset for formatting, e.g., 'legal', 'financial', 'custom'. This controls formatting rules applied.", + "required": false, + "defaultValue": "legal" + }, + { + "name": "clauseNumbering", + "type": "string", + "description": "Scheme for clause numbering (e.g., 'decimal', 'roman', 'none'). Controls how contract clauses are enumerated.", + "required": false, + "defaultValue": "decimal" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Preferred date format in the contract (e.g., 'MM/DD/YYYY', 'DD MMM YYYY').", + "required": false, + "defaultValue": "MM/DD/YYYY" + }, + { + "name": "currencyFormat", + "type": "string", + "description": "Currency display format (e.g., 'USD $', 'EUR €', 'symbol', 'code').", + "required": false, + "defaultValue": "USD $" + }, + { + "name": "insertTemplate", + "type": "boolean", + "description": "Whether to insert a predefined contract template header and footer if missing.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code for formatting localization (e.g., 'en', 'fr', 'es').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object with the formatted contract text and metadata about applied formatting." + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize or beautify contract documents before sharing, review, or archival. It helps normalize varied input formats into consistent stylistic and structural standards, ensuring professionalism and compliance with style protocols.", + "limitations": "Cannot interpret or verify legal content accuracy or completeness; focuses only on formatting and structural consistency. Does not translate language beyond basic localization.", + "examples": [ + "Format the draft contract text with legal style guidelines and include clause numbering in roman numerals.", + "Reformat a financial contract changing dates to 'DD MMM YYYY' format and currency to Euro symbol format.", + "Apply a custom style and insert a standard contract template around provided contract body text." + ] + }, + "tags": [ + "formatting", + "contracts", + "document-processing", + "legal", + "file-operations", + "text-standardization" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This contract is made on 01/15/2024 between Buyer and Seller...\",\"style\":\"legal\",\"clauseNumbering\":\"decimal\",\"dateFormat\":\"MM/DD/YYYY\",\"currencyFormat\":\"USD $\",\"insertTemplate\":true,\"language\":\"en\"}", + "description": "Format a basic contract text according to legal style with decimal clause numbering and USD currency, adding template header and footer." + }, + { + "inputJson": "{\"contractText\":\"Lease agreement dated 2024-02-01 with monthly rent $1200...\",\"style\":\"financial\",\"clauseNumbering\":\"none\",\"dateFormat\":\"DD MMM YYYY\",\"currencyFormat\":\"EUR €\",\"insertTemplate\":false,\"language\":\"en\"}", + "description": "Format a financial lease agreement adjusting date and currency formats, no clause numbering, no template insertion." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "file-operations.composeText", + "description": "This tool accepts multiple text segments and combines them into a single cohesive text output. It supports optional separators, trimming of input segments, and converting the final output to uppercase or lowercase. The output is a string containing the composed text ready for saving or further processing.", + "category": "file-operations", + "parameters": [ + { + "name": "textSegments", + "type": "array", + "description": "An array of text strings to be combined into one composed text.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "separator", + "type": "string", + "description": "A string to insert between each text segment when joining them.", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "trimSegments", + "type": "boolean", + "description": "Flag to indicate whether to trim whitespace from each text segment before composing.", + "required": false, + "defaultValue": "true" + }, + { + "name": "toUpperCase", + "type": "boolean", + "description": "Flag to convert the entire composed text to uppercase.", + "required": false, + "defaultValue": "false" + }, + { + "name": "toLowerCase", + "type": "boolean", + "description": "Flag to convert the entire composed text to lowercase (overrides uppercase if both true).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed text string under the 'composedText' field." + }, + "aiAgent": { + "useCase": "Use this tool when needing to merge multiple discrete pieces of text into one unified string, such as combining paragraphs, notes, code snippets, or text fragments into a single document or output file. It is useful for preparing content before saving, displaying, or sending.", + "limitations": "This tool does not perform advanced text transformations such as summarization, translation, formatting beyond simple case conversion and trimming, or natural language processing like grammar correction or content rewriting.", + "examples": [ + "Combine chapters of a document into one file separated by new lines.", + "Join multiple code snippets into one script with semicolons separating.", + "Create a single message by concatenating multiple user input parts with no extra spaces." + ] + }, + "tags": [ + "file-operations", + "text-composition", + "text-processing", + "concatenation", + "string-manipulation" + ], + "examples": [ + { + "inputJson": "{\"textSegments\":[\"Introduction to AI.\",\"Machine learning basics.\",\"Applications.\"],\"separator\":\"\\n\\n\",\"trimSegments\":true,\"toUpperCase\":false,\"toLowerCase\":false}", + "description": "Composes three text paragraphs into one text with double line breaks separating each segment." + }, + { + "inputJson": "{\"textSegments\":[\" line one \",\"line two\",\"Line Three \"],\"separator\":\"; \",\"trimSegments\":true,\"toUpperCase\":true,\"toLowerCase\":false}", + "description": "Joins three segments with semicolons, trims whitespace, and converts the entire text to uppercase." + }, + { + "inputJson": "{\"textSegments\":[\"First part.\",\"Second part.\"],\"separator\":\" \",\"trimSegments\":false,\"toUpperCase\":false,\"toLowerCase\":true}", + "description": "Combines two parts with a space separator and converts the output to lowercase without trimming." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "file-operations.composeMessage", + "description": "This tool composes a formatted message file from various input components including recipients, subject, body content, and optional attachments. It processes string and array inputs to generate a structured message saved as a plain text or HTML file, suitable for email or messaging system import.", + "category": "file-operations", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses or user IDs to include in the message header.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "The subject or title line of the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyContent", + "type": "string", + "description": "The main textual content of the message body, supporting plain text or simple HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of file paths or identifiers for attachments to include with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "messageFormat", + "type": "string", + "description": "Format of the output message file, e.g., 'plain' for text or 'html' for HTML content. Defaults to plain text.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "File path where the composed message file will be saved.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the file path of the saved composed message and status confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of standardized message files for emails, notifications, or messaging systems, combining recipients, subject, body, and optional attachments into a single formatted output file ready for delivery or storage.", + "limitations": "This tool does not send messages or validate email addresses; it only composes and outputs message files. It assumes attachments exist at specified paths but does not embed or encode them beyond referencing.", + "examples": [ + "Compose an email message file with specified recipients, subject, and body to save as plain text.", + "Create an HTML formatted announcement message with multiple recipient addresses and optional attachments saved to a given path." + ] + }, + "tags": [ + "compose", + "message", + "file", + "email", + "notification", + "file-output" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"user1@example.com\",\"user2@example.com\"],\"subject\":\"Meeting Reminder\",\"bodyContent\":\"This is a reminder for the meeting scheduled tomorrow at 10 AM.\",\"attachments\":[],\"messageFormat\":\"plain\",\"outputFilePath\":\"/tmp/reminder.txt\"}", + "description": "Compose a plain text meeting reminder message file for two recipients with no attachments." + }, + { + "inputJson": "{\"recipients\":[\"team@example.com\"],\"subject\":\"Weekly Report\",\"bodyContent\":\"<h1>Weekly Report</h1><p>Please find attached the weekly report.</p>\",\"attachments\":[\"/files/report.pdf\"],\"messageFormat\":\"html\",\"outputFilePath\":\"/tmp/weekly_report.html\"}", + "description": "Compose an HTML formatted weekly report email message with one attachment and save to file." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "file-operations.buildBranch", + "description": "Creates a new Git branch in a specified local repository based on a given start point (commit hash, branch name, or tag). It verifies the repository path, performs the branch creation, and returns success status and branch details.", + "category": "file-operations", + "parameters": [ + { + "name": "repositoryPath", + "type": "string", + "description": "The file system path to the local Git repository where the branch will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The name of the new branch to be created in the repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "startPoint", + "type": "string", + "description": "The reference point from which to create the branch (commit hash, branch name, or tag). If omitted, defaults to the current HEAD.", + "required": false, + "defaultValue": "HEAD" + }, + { + "name": "checkout", + "type": "boolean", + "description": "If true, checks out the newly created branch immediately after creation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the result of the branch creation, including success status, message, and details of the new branch if successful." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create and optionally switch to a new Git branch within a local repository, as part of automation scripts or code management workflows. It is useful when the agent must prepare separate development lines or feature branches based on existing commits or branches.", + "limitations": "Cannot create branches on remote repositories or handle merge conflicts. Requires repository to exist locally and be a valid Git repository. Does not manage authentication or remote push operations.", + "examples": [ + "Create a new branch 'feature-x' from 'develop' in local repo and check it out.", + "Build a branch 'hotfix-issue42' from a specific commit hash without switching to it immediately." + ] + }, + "tags": [ + "file management", + "git", + "version control", + "branching", + "automation" + ], + "examples": [ + { + "inputJson": "{\"repositoryPath\":\"/repos/myproject\",\"branchName\":\"feature-xyz\",\"startPoint\":\"develop\",\"checkout\":true}", + "description": "Create and switch to a new branch 'feature-xyz' based on 'develop' branch." + }, + { + "inputJson": "{\"repositoryPath\":\"C:/projects/app\",\"branchName\":\"release-1.2\",\"startPoint\":\"\",\"checkout\":false}", + "description": "Create a branch 'release-1.2' from current HEAD without checking it out." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "file-operations.buildService", + "description": "This tool accepts a directory path containing source code and configuration files, then processes and compiles these inputs to build a deployable service artifact. It outputs the path to the built service package or executable ready for deployment.", + "category": "file-operations", + "parameters": [ + { + "name": "sourceDirectory", + "type": "string", + "description": "Path to the directory containing the service source code and configuration files.", + "required": true, + "defaultValue": "" + }, + { + "name": "buildConfig", + "type": "object", + "description": "Build configuration options including environment variables, build mode, and target platform.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputDirectory", + "type": "string", + "description": "Path where the built service artifact should be saved. Defaults to a build folder inside the source directory.", + "required": false, + "defaultValue": "" + }, + { + "name": "cleanBuild", + "type": "boolean", + "description": "If true, cleans previous build artifacts before building.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the path to the artifact built and build status or errors." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automate the compilation and packaging of a software service from source files into a deployable artifact, integrating source processing, configuration management, and output handling in a single step.", + "limitations": "This tool does not deploy the service or manage runtime environments. It assumes input source code is syntactically and semantically correct and that necessary build tools are available in the environment.", + "examples": [ + "Build a microservice from source code located in '/projects/myservice' using default settings.", + "Perform a clean build of a service specifying debug mode and output directory '/builds/output'.", + "Build a service for a specific target platform like 'linux-x64' with custom environment variables." + ] + }, + "tags": [ + "build", + "service", + "file-management", + "automation", + "compilation", + "packaging" + ], + "examples": [ + { + "inputJson": "{\"sourceDirectory\":\"/user/code/service\",\"buildConfig\":{\"mode\":\"production\",\"targetPlatform\":\"linux-x64\"},\"outputDirectory\":\"/user/builds/service\",\"cleanBuild\":true}", + "description": "Build a service from source code with production settings, target platform linux-x64, clean previous builds, output to specified directory." + }, + { + "inputJson": "{\"sourceDirectory\":\"./service-src\"}", + "description": "Build a service with default settings from the local source directory." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "file-operations.generateDashboard", + "description": "Generates an interactive analytics dashboard from one or multiple input data files (CSV, JSON, or Excel). Processes the input data according to specified visualization types, aggregation parameters, and filters, producing a self-contained HTML dashboard file that summarizes key metrics and trends for easy sharing and review.", + "category": "file-operations", + "parameters": [ + { + "name": "inputFiles", + "type": "array", + "description": "Array of file paths or URLs to input data files in CSV, JSON, or Excel format to be included for dashboard generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "List of visualization types to include (e.g., 'barChart', 'lineGraph', 'pieChart', 'table'). Determines which charts are generated for the dashboard.", + "required": true, + "defaultValue": "[\"barChart\",\"lineGraph\"]" + }, + { + "name": "aggregationColumns", + "type": "array", + "description": "Columns or data fields to aggregate metrics on, such as ['sales', 'revenue']. If empty or omitted, no aggregation is performed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Key-value pairs to filter rows in the input data before processing. E.g., {\"country\":\"USA\",\"year\":2023}", + "required": false, + "defaultValue": "{}" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title text to appear at the top of the dashboard page.", + "required": false, + "defaultValue": "\"Untitled Dashboard\"" + }, + { + "name": "outputFileName", + "type": "string", + "description": "Filename for the generated HTML dashboard file. If empty, a default name is used.", + "required": false, + "defaultValue": "\"dashboard.html\"" + }, + { + "name": "includeDataSummary", + "type": "boolean", + "description": "Whether to include a summary section with statistics (mean, median, counts) for each dataset.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the path or URL to the generated HTML dashboard file and metadata such as number of visualizations included" + }, + "aiAgent": { + "useCase": "Use this tool when you have raw data files (CSV, JSON, Excel) and want to automatically generate a shareable, interactive dashboard visualizing key metrics and trends without manual coding. Helpful for quick analytics summaries in business or research contexts.", + "limitations": "Does not support real-time data refresh, complex custom visualizations, or connecting to live databases. Visualization options are limited to common chart types provided.", + "examples": [ + "Generate a sales performance dashboard from multiple monthly CSV reports, including bar charts and line graphs.", + "Create a dashboard summarizing JSON logs with filtered criteria and aggregation on specific fields.", + "Produce an HTML output dashboard with a custom title and include statistical summaries for datasets." + ] + }, + "tags": [ + "dashboard", + "analytics", + "file-processing", + "visualization", + "report-generation" + ], + "examples": [ + { + "inputJson": "{\"inputFiles\":[\"data/january.csv\",\"data/february.csv\"],\"visualizationTypes\":[\"barChart\",\"lineGraph\"],\"aggregationColumns\":[\"sales\"],\"filterCriteria\":{\"region\":\"North America\"},\"dashboardTitle\":\"Quarterly Sales Dashboard\",\"outputFileName\":\"q1_sales_dashboard.html\",\"includeDataSummary\":true}", + "description": "Generate a sales dashboard combining two CSV files, filtering for North America region, with bar and line charts, including summary statistics." + }, + { + "inputJson": "{\"inputFiles\":[\"logs/events.json\"],\"visualizationTypes\":[\"pieChart\"],\"aggregationColumns\":[\"eventType\"],\"filterCriteria\":{},\"dashboardTitle\":\"Event Distribution\",\"outputFileName\":\"event_dashboard.html\",\"includeDataSummary\":false}", + "description": "Create a pie chart dashboard from JSON logs showing distribution of event types, no data summary included." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "file-operations.buildConfig", + "description": "This tool accepts configuration parameters as input and generates a valid configuration file (e.g., JSON, YAML, or INI). It processes input data including key-value pairs and optional templates, then outputs a structured config file string ready for use in software projects or deployments.", + "category": "file-operations", + "parameters": [ + { + "name": "configData", + "type": "object", + "description": "Key-value pairs representing configuration settings to include in the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output file format: json, yaml, or ini. Defaults to json if not specified.", + "required": false, + "defaultValue": "\"json\"" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include comments in the generated configuration file when supported by the format.", + "required": false, + "defaultValue": "false" + }, + { + "name": "template", + "type": "string", + "description": "Optional template string to structure the config output; uses placeholder syntax for config keys.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated configuration file content as a string and the format used." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate configuration files programmatically from dynamic or user-supplied data for applications, deployment scripts, or tooling. It helps convert structured input into standardized config formats like JSON, YAML, or INI, optionally applying templates and comments to customize file layout.", + "limitations": "Cannot validate the semantic correctness of configuration values for specific applications beyond basic format compliance. Complex templating beyond simple placeholders is not supported.", + "examples": [ + "Generate a JSON config file from key-value pairs for an app.", + "Produce a YAML config with comments describing each key.", + "Build an INI-format configuration from flat data without comments." + ] + }, + "tags": [ + "file", + "config", + "build", + "json", + "yaml", + "ini", + "templating" + ], + "examples": [ + { + "inputJson": "{\"configData\":{\"host\":\"localhost\",\"port\":8080,\"debug\":true},\"format\":\"json\",\"includeComments\":false,\"template\":\"\"}", + "description": "Generate a JSON config file with basic key-value pairs." + }, + { + "inputJson": "{\"configData\":{\"database\":\"mydb\",\"user\":\"admin\",\"password\":\"secret\"},\"format\":\"yaml\",\"includeComments\":true,\"template\":\"\"}", + "description": "Generate a YAML config including comments for database settings." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "file-operations.generateKPI", + "description": "Generates Key Performance Indicator (KPI) reports by processing input files such as CSV or JSON containing raw data metrics. It aggregates, analyzes, and calculates specified KPI formulas over given time periods to produce summarized KPI reports in JSON or CSV format suitable for performance tracking and decision making.", + "category": "file-operations", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "Path to the input data file containing raw metrics (CSV or JSON format).", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiDefinitions", + "type": "array", + "description": "List of KPI definitions, each specifying the name, formula, and fields involved.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Date range object with startDate and endDate strings (ISO format) for filtering the data.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format for the KPI report, e.g., 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "groupByFields", + "type": "array", + "description": "Optional list of fields to group the KPI calculations, such as 'region' or 'department'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated KPI report data in the chosen output format, including calculated KPIs and optionally grouped summaries." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw metric data files into meaningful KPI reports by applying specified calculations over a given time period and grouping criteria. Useful for automating performance analysis from data files received periodically.", + "limitations": "This tool does not validate the correctness of KPI formulas beyond basic syntax, nor does it connect to live databases; input files must be accessible and well-structured. Advanced statistical analysis or visualization is not supported.", + "examples": [ + "Generate monthly sales conversion and average order value KPIs from CSV sales data grouped by store region.", + "Create a JSON KPI report calculating average response time and ticket resolution rate from JSON support logs within a date range.", + "Produce CSV output of customer retention rate KPIs grouped by marketing campaign using input CSV data file." + ] + }, + "tags": [ + "file-management", + "kpi-generation", + "analytics", + "reporting", + "data-processing" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/data/sales_metrics.csv\",\"kpiDefinitions\":[{\"name\":\"conversionRate\",\"formula\":\"(purchases / visits) * 100\",\"fields\":[\"purchases\",\"visits\"]},{\"name\":\"averageOrderValue\",\"formula\":\"totalRevenue / purchases\",\"fields\":[\"totalRevenue\",\"purchases\"]}],\"dateRange\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\"},\"outputFormat\":\"json\",\"groupByFields\":[\"region\"]}", + "description": "Generate JSON KPIs for January 2024 from sales CSV data grouped by region." + }, + { + "inputJson": "{\"inputFilePath\":\"/logs/support_data.json\",\"kpiDefinitions\":[{\"name\":\"avgResponseTime\",\"formula\":\"sum(responseTime) / count(tickets)\",\"fields\":[\"responseTime\",\"tickets\"]},{\"name\":\"resolutionRate\",\"formula\":\"resolvedTickets / totalTickets * 100\",\"fields\":[\"resolvedTickets\",\"totalTickets\"]}],\"dateRange\":{\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\"},\"outputFormat\":\"json\"}", + "description": "Calculate average response time and resolution rate KPIs for March 2024 from JSON support logs." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "file-operations.generateQuery", + "description": "Generates a structured SQL query string based on provided input parameters such as target table, selected columns, filtering conditions, sorting options, and limits. Accepts inputs describing query components and returns a well-formed SQL SELECT query string.", + "category": "file-operations", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "The name of the database table to query from.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectColumns", + "type": "array", + "description": "An array of column names to include in the SELECT clause. If empty or not provided, defaults to selecting all columns.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "whereConditions", + "type": "object", + "description": "An object defining filtering conditions with keys as column names and values as desired filter values, supporting basic equality filters.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "orderBy", + "type": "object", + "description": "Defines sorting order with keys as column names and values as 'ASC' or 'DESC'.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "limit", + "type": "number", + "description": "Limits the number of returned rows. If omitted or zero, no LIMIT clause is added.", + "required": false, + "defaultValue": "0" + }, + { + "name": "distinct", + "type": "boolean", + "description": "Whether to add DISTINCT to the SELECT clause to return unique rows only.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated SQL query string under the 'query' property." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to programmatically create simple to moderately complex SQL SELECT queries based on structured input parameters describing table, columns, filters, sorting, and limits. Ideal for agents generating queries dynamically from user requests or programmatic input without writing raw SQL.", + "limitations": "This tool generates only simple SELECT queries with basic equality WHERE conditions and does not support complex SQL clauses such as JOINs, subqueries, aggregate functions, or advanced expressions.", + "examples": [ + "Generate a query selecting columns 'id', 'name' from table 'users' where 'active' is true, ordered by 'name' ascending, limited to 10 results.", + "Generate a distinct list of all email addresses from the 'contacts' table.", + "Generate a query selecting all columns from 'products' table without any filters or limits." + ] + }, + "tags": [ + "file-operations", + "sql", + "query-generation", + "database", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"users\",\"selectColumns\":[\"id\",\"name\"],\"whereConditions\":{\"active\":true},\"orderBy\":{\"name\":\"ASC\"},\"limit\":10,\"distinct\":false}", + "description": "Generate a query selecting 'id' and 'name' from 'users' where 'active' = true, ordered by 'name' ascending, limit 10." + }, + { + "inputJson": "{\"tableName\":\"contacts\",\"selectColumns\":[\"email\"],\"distinct\":true}", + "description": "Generate a distinct list of all emails from 'contacts' table." + }, + { + "inputJson": "{\"tableName\":\"products\"}", + "description": "Generate a query selecting all columns from 'products' without any filters or limits." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "file-operations.createKPI", + "description": "Generates a Key Performance Indicator (KPI) report file by processing input data points, metrics definitions, and specified calculation formulas. It produces a structured file (JSON or CSV) summarizing the computed KPI values for given time periods or entities.", + "category": "file-operations", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of raw data objects containing metric values to process for KPI calculation.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiDefinitions", + "type": "array", + "description": "An array of objects defining each KPI with a name, formula (as a string expression referencing inputData fields), and optional aggregation method.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output file, either 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "timePeriod", + "type": "string", + "description": "Optional ISO date range or label to filter input data (e.g. '2023-01', 'Q1-2023').", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByField", + "type": "string", + "description": "Optional field name to group KPI calculations by, such as 'region' or 'department'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the path and/or content of the generated KPI report file in the specified format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to synthesize raw metric data into summarized KPI reports with custom formulas for performance analysis or business intelligence reporting. It helps automate the transformation of analytic inputs into structured KPI outputs suitable for reporting dashboards or archival.", + "limitations": "This tool cannot automatically discover formulas or validate data correctness; it relies on user-provided KPI definitions and properly formatted input data.", + "examples": [ + "Create a monthly sales performance KPI report in CSV from raw sales data.", + "Generate a JSON report calculating customer engagement KPIs grouped by region.", + "Produce quarterly operational KPI metrics from input datasets with complex formulas." + ] + }, + "tags": [ + "file", + "KPI", + "reporting", + "analytics", + "transformation", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"date\":\"2023-04-01\",\"sales\":1000,\"visits\":150},{\"date\":\"2023-04-02\",\"sales\":1200,\"visits\":130}],\"kpiDefinitions\":[{\"name\":\"ConversionRate\",\"formula\":\"sales / visits\"}],\"outputFormat\":\"json\",\"timePeriod\":\"2023-04\",\"groupByField\":\"\"}", + "description": "Generate a JSON KPI report calculating 'ConversionRate' as sales divided by visits for April 2023." + }, + { + "inputJson": "{\"inputData\":[{\"region\":\"East\",\"revenue\":5000,\"cost\":3000},{\"region\":\"West\",\"revenue\":7000,\"cost\":4000}],\"kpiDefinitions\":[{\"name\":\"ProfitMargin\",\"formula\":\"(revenue - cost) / revenue\"}],\"outputFormat\":\"csv\",\"groupByField\":\"region\"}", + "description": "Create a CSV KPI report grouped by region computing Profit Margin from revenue and cost." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "file-operations.createDashboard", + "description": "Creates a customizable analytics dashboard file from provided datasets and configuration options. Accepts input data files in CSV or JSON formats, processes specified metrics and visualizations, and outputs a self-contained HTML dashboard file for local viewing or web embedding.", + "category": "file-operations", + "parameters": [ + { + "name": "dataFiles", + "type": "array", + "description": "Array of data file paths or URLs (CSV or JSON) to be included in the dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric definitions specifying which data columns to analyze and display (e.g., sum, average).", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizations", + "type": "array", + "description": "Configuration objects defining chart types and their data bindings for visual representation.", + "required": true, + "defaultValue": "" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title to display at the top of the dashboard.", + "required": false, + "defaultValue": "\"Analytics Dashboard\"" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme for the dashboard (e.g., light, dark).", + "required": false, + "defaultValue": "\"light\"" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "File path to save the generated dashboard HTML file.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the file path of the created dashboard and a summary of included visuals and metrics." + }, + "aiAgent": { + "useCase": "Use this tool when generating comprehensive and interactive analytics dashboards from various data files to be used for local or online presentations without requiring complex setup. It automates the integration of data, metric calculations, and chart generation into a single HTML file.", + "limitations": "Does not perform data cleaning or advanced statistical analysis; requires structured input data. Visual customization options are limited to predefined themes and chart types.", + "examples": [ + "Create a sales performance dashboard from monthly CSV reports showing total revenue and trends.", + "Generate a user engagement dashboard from JSON logs with time series and pie charts.", + "Produce a custom dashboard combining multiple datasets highlighting key KPIs for executive review." + ] + }, + "tags": [ + "file-operations", + "dashboard", + "analytics", + "visualization", + "reporting", + "CSV", + "JSON", + "HTML" + ], + "examples": [ + { + "inputJson": "{\"dataFiles\":[\"sales_jan.csv\",\"sales_feb.csv\"],\"metrics\":[{\"name\":\"totalRevenue\",\"operation\":\"sum\",\"column\":\"revenue\"}],\"visualizations\":[{\"type\":\"lineChart\",\"metric\":\"totalRevenue\",\"title\":\"Monthly Revenue\"}],\"dashboardTitle\":\"Monthly Sales Dashboard\",\"theme\":\"light\",\"outputFilePath\":\"./output/sales_dashboard.html\"}", + "description": "Create a sales dashboard from two monthly CSV files showing total revenue as a line chart." + }, + { + "inputJson": "{\"dataFiles\":[\"user_logs.json\"],\"metrics\":[{\"name\":\"activeUsers\",\"operation\":\"countDistinct\",\"column\":\"userId\"}],\"visualizations\":[{\"type\":\"barChart\",\"metric\":\"activeUsers\",\"title\":\"Active Users per Day\"}],\"dashboardTitle\":\"User Engagement Dashboard\",\"theme\":\"dark\",\"outputFilePath\":\"./dashboards/user_engagement.html\"}", + "description": "Generate a user engagement dashboard from JSON logs showing daily active users as a bar chart." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "file-operations.createRisk", + "description": "Creates a structured risk assessment file based on input parameters describing potential security risks. Accepts details such as risk title, description, severity level, likelihood, and mitigation steps. Processes these inputs to generate a standardized JSON or text file summarizing the risk for documentation or further analysis.", + "category": "file-operations", + "parameters": [ + { + "name": "riskTitle", + "type": "string", + "description": "The concise title or name of the risk to be documented.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskDescription", + "type": "string", + "description": "A detailed explanation of the risk, including potential impacts and context.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity of the risk, typically ranking from low, medium, high, to critical.", + "required": true, + "defaultValue": "" + }, + { + "name": "likelihood", + "type": "string", + "description": "The probability or likelihood of the risk occurring, e.g., unlikely, possible, likely.", + "required": true, + "defaultValue": "" + }, + { + "name": "mitigationSteps", + "type": "array", + "description": "List of recommended actions or controls to mitigate or manage the risk.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output file format: 'json' or 'txt'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "outputFileName", + "type": "string", + "description": "The name of the output risk file, with extension corresponding to outputFormat.", + "required": false, + "defaultValue": "risk_assessment.json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file path or URI of the created risk file and a summary of the risk content." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate a formalized risk assessment document from raw risk details for security reporting, audit compliance, or risk management processes. It helps by automating creation of standardized risk files that can be stored or shared.", + "limitations": "This tool does not evaluate or validate the correctness or completeness of risk inputs; it only formats and creates the risk file based on provided information. It does not perform risk analysis or recommendation beyond capturing inputs.", + "examples": [ + "Create a risk file titled 'SQL Injection Vulnerability' with high severity and mitigation steps.", + "Generate a text formatted report for a network intrusion risk with medium likelihood.", + "Produce a JSON file summarizing a critical data breach risk including descriptive details and controls." + ] + }, + "tags": [ + "file-operations", + "risk-management", + "security", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"riskTitle\":\"Data Breach\",\"riskDescription\":\"Exposure of sensitive customer data due to unauthorized access.\",\"severityLevel\":\"Critical\",\"likelihood\":\"Likely\",\"mitigationSteps\":[\"Encrypt sensitive data\",\"Implement access controls\"],\"outputFormat\":\"json\",\"outputFileName\":\"data_breach_risk.json\"}", + "description": "Generate a JSON format risk file for a critical data breach risk." + }, + { + "inputJson": "{\"riskTitle\":\"Phishing Attack\",\"riskDescription\":\"Potential for users to be tricked into revealing credentials via email.\",\"severityLevel\":\"High\",\"likelihood\":\"Possible\",\"mitigationSteps\":[\"User education\",\"Email filtering\"],\"outputFormat\":\"txt\",\"outputFileName\":\"phishing_risk.txt\"}", + "description": "Create a plain text risk report for phishing attack risk." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "file-operations.createCredential", + "description": "Creates a credential file containing secure authentication information such as username, password, and optional metadata. Accepts user details as input, optionally encrypts the content with a provided key, and outputs a structured credential file in JSON or YAML format suitable for secure storage or later retrieval.", + "category": "file-operations", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "The username or identifier for the credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "The password or secret associated with the credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata to include with the credential, e.g., roles, expiration dates.", + "required": false, + "defaultValue": "" + }, + { + "name": "encrypt", + "type": "boolean", + "description": "Flag indicating whether to encrypt the credential content before saving.", + "required": false, + "defaultValue": "false" + }, + { + "name": "encryptionKey", + "type": "string", + "description": "Encryption key to use when encrypt parameter is true; must be provided for encryption.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format: 'json' or 'yaml'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "outputPath", + "type": "string", + "description": "Filesystem path to save the generated credential file. If empty, returns the content as a string.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the credential content as a string and optionally path where the file is saved." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate secure credential files with structured user authentication data, optionally encrypting them for secure storage. Ideal for automated configuration, deployment scripts, or managing access keys in software.", + "limitations": "This tool does not handle user authentication or password validation. Encryption is limited to symmetric encryption with a provided key and does not support advanced KMS integrations or hardware security modules.", + "examples": [ + "Create a credential file with username and password saved as encrypted JSON.", + "Generate a YAML credential file with additional metadata but without encryption.", + "Return credential content as plain JSON string without saving to disk." + ] + }, + "tags": [ + "file-creation", + "security", + "credential", + "encryption", + "authentication", + "json", + "yaml" + ], + "examples": [ + { + "inputJson": "{\"username\":\"adminUser\",\"password\":\"s3cr3tP@ssw0rd\",\"encrypt\":true,\"encryptionKey\":\"MyStrongKey123!\",\"outputFormat\":\"json\",\"outputPath\":\"/secure/creds/adminCredential.json\"}", + "description": "Create an encrypted JSON credential file for admin user at specified path." + }, + { + "inputJson": "{\"username\":\"devUser\",\"password\":\"devPass\",\"metadata\":{\"role\":\"developer\",\"expires\":\"2025-12-31\"},\"encrypt\":false,\"outputFormat\":\"yaml\",\"outputPath\":\"\"}", + "description": "Generate YAML credential content with metadata, do not encrypt, return as string." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "file-operations.createOpportunity", + "description": "Creates a standardized business Opportunity file in JSON or CSV format based on provided details. Accepts input parameters describing the opportunity such as title, description, estimated value, customer info, and dates. Produces a file in the specified format for downstream processing or records management.", + "category": "file-operations", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the business opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the opportunity.", + "required": false, + "defaultValue": "" + }, + { + "name": "estimatedValue", + "type": "number", + "description": "The estimated monetary value of the opportunity in USD.", + "required": false, + "defaultValue": "" + }, + { + "name": "customerName", + "type": "string", + "description": "Name of the customer or client associated with the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedCloseDate", + "type": "string", + "description": "The expected closing date of the opportunity in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the opportunity (e.g., High, Medium, Low).", + "required": false, + "defaultValue": "Medium" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output file format: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the file to create (without extension).", + "required": false, + "defaultValue": "opportunity" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata of the created file: fileName, fileFormat, and fileContent as string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a formal Opportunity file capturing key business details for recordkeeping, sharing with sales/management teams, or importing into CRM systems. It auto-formats the data into JSON or CSV files usable in business workflows.", + "limitations": "This tool does not integrate directly with CRM platforms or external databases; it only generates standalone files. It does not validate business rules beyond input types or handle file storage locations.", + "examples": [ + "Create a JSON file for a new sales opportunity named 'Q3 Software Deal' with estimated value 50000 USD.", + "Generate a CSV file capturing an opportunity with customer 'Acme Corp' and expected close date '2024-09-30'." + ] + }, + "tags": [ + "file-operations", + "create", + "business", + "opportunity", + "sales", + "crm", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Q3 Software Deal\",\"description\":\"Opportunity to sell enterprise software suite.\",\"estimatedValue\":50000,\"customerName\":\"GlobalTech\",\"expectedCloseDate\":\"2024-09-30\",\"priority\":\"High\",\"outputFormat\":\"json\",\"fileName\":\"q3_software_deal\"}", + "description": "Create a JSON Opportunity file for a high priority software deal." + }, + { + "inputJson": "{\"title\":\"Marketing Services\",\"customerName\":\"Acme Corp\",\"outputFormat\":\"csv\"}", + "description": "Create a CSV Opportunity file with minimal required fields for a marketing services opportunity." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "file-operations.createTable", + "description": "Creates a structured table file from raw data inputs. Accepts an array of objects or arrays representing rows, along with optional column headers, and outputs a well-formatted CSV or JSON file content string. Supports customization of delimiters, header inclusion, and output format.", + "category": "file-operations", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array representing the table rows. Each row is either an object with key-value pairs or an array of values corresponding to columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnHeaders", + "type": "array", + "description": "Optional array of strings specifying column headers. If not provided and data rows are objects, headers are inferred from object keys.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Specifies whether to include column headers in the output. Defaults to true if headers are available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the table file content. Supported values: 'csv', 'json'. Default is 'csv'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to use when outputting CSV format. Default is comma (,). Ignored for JSON output.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteAllFields", + "type": "boolean", + "description": "If true, encloses all CSV fields in quotes to preserve formatting. Default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted table content as a string in the requested format under the 'fileContent' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a formatted table file such as CSV or JSON from raw data arrays or objects, for saving, exporting, or further processing. It's useful to create downloadable reports, prepare data for import, or serialize data for APIs.", + "limitations": "Does not support complex table formats like Excel XLSX or markdown tables. Input data must be uniform in structure; heterogeneous row formats may cause inconsistent output. Large data sets may require chunking outside this tool.", + "examples": [ + "Create a CSV table from an array of user records to export.", + "Generate a JSON file representing a data table for API response.", + "Define specific column order and headers to create a standardized CSV export." + ] + }, + "tags": [ + "file", + "table", + "csv", + "json", + "export", + "data-serialization", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30},{\"name\":\"Bob\",\"age\":25}],\"outputFormat\":\"csv\",\"includeHeaders\":true}", + "description": "Generate a CSV table from an array of objects with header row included." + }, + { + "inputJson": "{\"data\":[[\"Alice\",30],[\"Bob\",25]],\"columnHeaders\":[\"Name\",\"Age\"],\"outputFormat\":\"json\"}", + "description": "Create a JSON table from an array of arrays with specified column headers." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Pen\",\"price\":1.2},{\"product\":\"Notebook\",\"price\":2.5}],\"outputFormat\":\"csv\",\"delimiter\":\";\",\"quoteAllFields\":true}", + "description": "Generate a CSV with semicolon delimiter and all fields quoted." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "file-operations.createVideo", + "description": "Creates a video file by combining multiple input images, optional audio track, and specifies video output parameters like format, resolution, and frame rate. Accepts an array of image file paths or URLs, a single audio file, and configuration options to produce a finalized video file at a specified output path.", + "category": "file-operations", + "parameters": [ + { + "name": "imagePaths", + "type": "array", + "description": "An array of file paths or URLs pointing to images to be included sequentially in the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "audioPath", + "type": "string", + "description": "Optional file path or URL for an audio track to overlay on the video. If omitted, video will be silent.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "The file path where the resulting video file will be saved, including the filename and extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "frameRate", + "type": "number", + "description": "The number of frames per second for the output video, determining playback smoothness.", + "required": false, + "defaultValue": "30" + }, + { + "name": "resolution", + "type": "string", + "description": "The resolution for the output video in WIDTHxHEIGHT format, e.g. '1920x1080'.", + "required": false, + "defaultValue": "1920x1080" + }, + { + "name": "videoFormat", + "type": "string", + "description": "The video container format for the output file, e.g. 'mp4', 'avi', or 'mov'.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "loopAudio", + "type": "boolean", + "description": "If true, the audio track will loop to match the video duration; otherwise, audio plays once.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status, output file path, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a video from a series of images optionally combined with audio, specifying output video characteristics. Ideal for scripting video creation in automation, content generation, or multimedia toolchains.", + "limitations": "Cannot edit video beyond basic assembly of images and audio; no advanced video effects or transitions support; input files must be accessible local paths or reachable URLs.", + "examples": [ + "Create a video slideshow from a folder of images with background music in MP4 format at 30fps.", + "Generate a silent video from images at 720p resolution for quick preview.", + "Produce an AVI video combining images and a voiceover audio file with looping sound." + ] + }, + "tags": [ + "video", + "creation", + "media", + "file", + "images", + "audio", + "conversion" + ], + "examples": [ + { + "inputJson": "{\"imagePaths\":[\"/path/img1.jpg\",\"/path/img2.jpg\",\"/path/img3.jpg\"],\"audioPath\":\"/path/audio.mp3\",\"outputFilePath\":\"/output/slideshow.mp4\",\"frameRate\":24,\"resolution\":\"1280x720\",\"videoFormat\":\"mp4\",\"loopAudio\":true}", + "description": "Create a 1280x720 MP4 slideshow video at 24fps with looping MP3 audio from three images." + }, + { + "inputJson": "{\"imagePaths\":[\"https://example.com/image1.png\",\"https://example.com/image2.png\"],\"outputFilePath\":\"./video.mov\",\"videoFormat\":\"mov\"}", + "description": "Generate a silent MOV video from two remote images with default settings." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "file-operations.createArticle", + "description": "Creates a formatted article document file from provided content inputs. Accepts article metadata (title, author, date), body content text, and optional tags, then generates and saves a structured article file in Markdown or HTML format. Outputs the file path and file content as confirmation.", + "category": "file-operations", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the article to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "The author name for the article.", + "required": false, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Publishing date of the article in ISO format (e.g., 2024-06-01).", + "required": false, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The main body text content of the article.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "An array of tags or keywords related to the article for categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Output file format, either 'markdown' or 'html'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "outputPath", + "type": "string", + "description": "Full file path where the article will be saved. If empty, defaults to current directory with title as filename.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the saved file path and the full textual content of the created article file." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate well-structured article documents from raw text inputs for publishing, drafting, or storage purposes. It is useful in automated content creation pipelines, blog generation, or document archiving where formatting and metadata management are required.", + "limitations": "Cannot perform advanced content editing or check article grammar and style. Does not support image embedding or complex layouts beyond markdown or simple HTML structures.", + "examples": [ + "Create a markdown article titled 'AI Ethics' by Jane Doe with specific content and tags.", + "Generate an HTML article file with given text content and a provided output path.", + "Create a quick article file with minimal metadata for publishing." + ] + }, + "tags": [ + "file", + "article", + "create", + "document", + "markdown", + "html", + "content", + "publishing" + ], + "examples": [ + { + "inputJson": "{\"title\":\"The Future of AI\",\"author\":\"Alice Smith\",\"date\":\"2024-06-01\",\"content\":\"Artificial intelligence is transforming the world...\",\"tags\":[\"AI\",\"future\",\"technology\"],\"format\":\"markdown\",\"outputPath\":\"\"}", + "description": "Create a markdown article titled 'The Future of AI' by Alice Smith with a date and tags, saving to the default location." + }, + { + "inputJson": "{\"title\":\"Climate Change Report\",\"content\":\"Recent studies indicate that...\",\"format\":\"html\",\"outputPath\":\"/articles/climate_report.html\"}", + "description": "Generate an HTML article with provided content and a specific output path, without author or date." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "file-operations.createQuery", + "description": "Creates a structured database query file based on user-provided parameters including target database type, table, selected fields, filters, sort order, and output format. Accepts input parameters to customize the query and outputs a formatted query saved as a string or file content ready for execution or further processing.", + "category": "file-operations", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the target database (e.g., 'MySQL', 'PostgreSQL', 'SQLite'). Influences query syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table to query.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectFields", + "type": "array", + "description": "List of fields/columns to retrieve from the table. If empty or omitted, defaults to all fields ('*').", + "required": false, + "defaultValue": "[\"*\"]" + }, + { + "name": "whereConditions", + "type": "object", + "description": "Key-value pairs representing conditions for the WHERE clause. Keys are column names and values are their expected values. Supports simple equality filters.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "orderBy", + "type": "array", + "description": "Array of field names with optional sort direction ('field' or 'field DESC') to order results.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "limit", + "type": "number", + "description": "Limits the number of returned records.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the query: 'SQL' for raw query string, or 'JSON' for a structured representation.", + "required": false, + "defaultValue": "SQL" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include inline comments explaining query parts in the output when format is SQL.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string or structured query object in the specified output format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate well-formed SQL queries or equivalent structured query representations programmatically based on abstract parameters. It helps automate query creation for different database types, avoiding syntax errors and enabling flexible filtering, sorting, and limiting of results.", + "limitations": "Does not support complex WHERE clauses with operators other than equality, no JOINs or nested queries, and limited to a few major SQL dialects. Advanced SQL features like views, stored procedures or parameterized queries are not supported.", + "examples": [ + "Create a SQL SELECT query fetching 'id' and 'name' from 'users' table where 'status' equals 'active', ordered by 'created_at' descending, limited to 10 results.", + "Generate a JSON structured query for a 'products' table selecting all fields and filtering for 'category' equals 'electronics'.", + "Produce a raw SQL query on a PostgreSQL table 'orders' with no filters and results ordered by 'order_date' ascending." + ] + }, + "tags": [ + "file-operations", + "query-generation", + "database", + "SQL", + "code-generation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"MySQL\",\"tableName\":\"users\",\"selectFields\":[\"id\",\"name\"],\"whereConditions\":{\"status\":\"active\"},\"orderBy\":[\"created_at DESC\"],\"limit\":10,\"outputFormat\":\"SQL\",\"includeComments\":true}", + "description": "Generate a MySQL query selecting 'id' and 'name' from active users, ordered by creation date descending, limited to 10 with comments." + }, + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"tableName\":\"products\",\"selectFields\":[],\"whereConditions\":{\"category\":\"electronics\"},\"orderBy\":[],\"outputFormat\":\"JSON\",\"includeComments\":false}", + "description": "Create a structured JSON query selecting all fields from 'products' where category is electronics for PostgreSQL." + }, + { + "inputJson": "{\"databaseType\":\"SQLite\",\"tableName\":\"orders\",\"selectFields\":[\"order_id\",\"order_date\"],\"whereConditions\":{},\"orderBy\":[\"order_date ASC\"],\"outputFormat\":\"SQL\",\"includeComments\":false}", + "description": "Generate a simple SQLite SQL query selecting order ID and date, ordered ascending by order date, no filters, without comments." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "video-processing.analyzeSentence", + "description": "Analyzes the spoken sentence from a video segment to extract linguistic features such as sentiment, key topics, speaker emotions, and speech clarity. Inputs include a video file or URL and the time range containing the sentence. Outputs structured analysis data for video content understanding and metadata enrichment.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "Path or URL of the video file to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "Start time in seconds within the video to locate the sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "number", + "description": "End time in seconds within the video to locate the sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the spoken content (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEmotion", + "type": "boolean", + "description": "Whether to detect speaker emotions in the sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing extracted sentence text, sentiment score, detected emotions, key topics, and speech clarity metrics." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand or analyze the content and emotional tone of a specific spoken sentence in a video, for applications like content summarization, indexing, or moderation. It is valuable for extracting semantic and paralinguistic insights from video segments.", + "limitations": "This tool requires clear audio and a specified sentence time range; it does not transcribe full videos or handle heavily noisy audio. It focuses on sentence-level analysis rather than full video content.", + "examples": [ + "Analyze the sentiment and emotions of the sentence spoken between 60s and 65s in this training video.", + "Extract key topics from the CEO's statement at the 5-minute mark in this interview video.", + "Determine the clarity and speaker emotion for a sentence in a customer service call recording between 30s and 35s." + ] + }, + "tags": [ + "video", + "analysis", + "sentence", + "speech", + "sentiment", + "emotion", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/interview.mp4\",\"startTime\":300,\"endTime\":305,\"language\":\"en\",\"includeSentiment\":true,\"includeEmotion\":true}", + "description": "Analyze the CEO's sentence from 5:00 to 5:05 in English, including sentiment and emotion detection." + }, + { + "inputJson": "{\"videoSource\":\"file:///videos/training_session.mp4\",\"startTime\":60,\"endTime\":65,\"language\":\"en\",\"includeSentiment\":true,\"includeEmotion\":false}", + "description": "Perform sentiment analysis on a training video sentence from 1:00 to 1:05." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "video-processing.buildServer", + "description": "Builds and configures a dedicated video processing server environment based on specified hardware, software, and network parameters. Accepts input configurations to establish server roles, installed video processing frameworks, storage setups, and resource limits, then outputs deployment details including access endpoints and status reports.", + "category": "video-processing", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "Unique identifier for the video processing server being built.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores allocated for video processing tasks.", + "required": true, + "defaultValue": "8" + }, + { + "name": "gpuEnabled", + "type": "boolean", + "description": "Flag to enable GPU acceleration support on the server.", + "required": false, + "defaultValue": "true" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes allocated to the server.", + "required": true, + "defaultValue": "32" + }, + { + "name": "storageType", + "type": "string", + "description": "Type of storage to use (e.g., SSD, HDD) optimized for video IO.", + "required": true, + "defaultValue": "SSD" + }, + { + "name": "storageCapacityTB", + "type": "number", + "description": "Total storage capacity in terabytes for video files and processing outputs.", + "required": true, + "defaultValue": "4" + }, + { + "name": "videoFrameworks", + "type": "array", + "description": "List of video processing frameworks or libraries to install (e.g., FFmpeg, OpenCV).", + "required": false, + "defaultValue": "[\"FFmpeg\"]" + }, + { + "name": "networkBandwidthMbps", + "type": "number", + "description": "Minimum network bandwidth in Mbps for streaming or remote access.", + "required": false, + "defaultValue": "100" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system choice to deploy on the server (e.g., Ubuntu 22.04, CentOS 8).", + "required": true, + "defaultValue": "Ubuntu 22.04" + } + ], + "returns": { + "type": "object", + "description": "An object containing server deployment details including server ID, IP address, installed components, and setup status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically provision or configure a dedicated server environment tailored for video processing workloads, enabling automation of infrastructure setup for video editing, rendering, or analysis pipelines.", + "limitations": "This tool does not handle post-deployment video processing tasks or content manipulation; it focuses solely on server infrastructure setup and resource provisioning. It cannot manage cloud provider-specific APIs inherently, requires integration.", + "examples": [ + "Build a video processing server with 16 CPU cores, GPU support, 64GB RAM, 10TB NVMe storage, and FFmpeg installed.", + "Create a server named \"VidProc01\" with 8 CPU cores, no GPU, SSD storage of 2TB, and OpenCV framework.", + "Provision a high-bandwidth server for streaming with Ubuntu 22.04 and customized video processing packages." + ] + }, + "tags": [ + "video-processing", + "server-build", + "infrastructure", + "automation", + "gpu", + "rendering", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"VidProc01\",\"cpuCores\":16,\"gpuEnabled\":true,\"memoryGB\":64,\"storageType\":\"NVMe\",\"storageCapacityTB\":10,\"videoFrameworks\":[\"FFmpeg\"],\"networkBandwidthMbps\":200,\"operatingSystem\":\"Ubuntu 22.04\"}", + "description": "Provision a high-performance video processing server with GPU acceleration and large NVMe storage for 4K video rendering." + }, + { + "inputJson": "{\"serverName\":\"TestServer\",\"cpuCores\":8,\"gpuEnabled\":false,\"memoryGB\":32,\"storageType\":\"SSD\",\"storageCapacityTB\":2,\"videoFrameworks\":[\"OpenCV\"],\"networkBandwidthMbps\":100,\"operatingSystem\":\"CentOS 8\"}", + "description": "Build a mid-range video analysis server with OpenCV installed for machine vision tasks without GPU dependency." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "video-processing.buildAPI", + "description": "This tool generates a customizable RESTful API specification for video processing tasks based on user-defined parameters. It accepts configuration inputs detailing supported video formats, processing features (e.g., trimming, filters, format conversion), authentication methods, and rate limits. It outputs a complete OpenAPI-compliant JSON specification ready for implementation or further integration.", + "category": "video-processing", + "parameters": [ + { + "name": "supportedFormats", + "type": "array", + "description": "List of video file formats (e.g., mp4, avi) that the API will accept and process", + "required": true, + "defaultValue": "[\"mp4\",\"avi\"]" + }, + { + "name": "processingFeatures", + "type": "array", + "description": "Array of video processing features to include such as 'trim', 'crop', 'resize', 'filter', 'convertFormat'", + "required": true, + "defaultValue": "[\"trim\",\"filter\"]" + }, + { + "name": "authenticationType", + "type": "string", + "description": "Type of authentication method the API should implement (e.g., 'none', 'apiKey', 'oauth2')", + "required": false, + "defaultValue": "\"apiKey\"" + }, + { + "name": "maxRequestSizeMB", + "type": "number", + "description": "Maximum allowed upload file size in megabytes per request", + "required": false, + "defaultValue": "100" + }, + { + "name": "rateLimitPerMinute", + "type": "number", + "description": "Number of allowed API requests per minute for each user or API key", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeWebhookSupport", + "type": "boolean", + "description": "Whether to include webhook event endpoints for asynchronous processing notifications", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a JSON string of the OpenAPI specification defining the RESTful video processing API" + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate a standardized, ready-to-implement API specification for a video processing service tailored to specific features and constraints. It helps automate the creation of documentation and integration points for video processing pipelines or microservices.", + "limitations": "This tool only generates the API specification and does not implement or deploy the actual video processing backend or server code.", + "examples": [ + "Generate an API spec supporting MP4 and MOV formats, with trimming and filtering features, using API key authentication, max 200MB uploads, and rate limit 100 requests/minute.", + "Build an API spec with no authentication for quick internal video processing with basic resize and format conversion features, including webhook support for processing status.", + "Create an API spec for a video editing service supporting multiple formats, cropping, and filters, with OAuth2 authentication and strict rate limiting." + ] + }, + "tags": [ + "video", + "API", + "openapi", + "specification", + "video-editing", + "REST", + "automation" + ], + "examples": [ + { + "inputJson": "{\"supportedFormats\":[\"mp4\",\"mov\"],\"processingFeatures\":[\"trim\",\"filter\"],\"authenticationType\":\"apiKey\",\"maxRequestSizeMB\":200,\"rateLimitPerMinute\":100,\"includeWebhookSupport\":false}", + "description": "API spec for MP4/MOV videos, trimming and filtering, API key auth, 200MB max upload, 100 req/min limit" + }, + { + "inputJson": "{\"supportedFormats\":[\"avi\"],\"processingFeatures\":[\"resize\",\"convertFormat\"],\"authenticationType\":\"none\",\"maxRequestSizeMB\":500,\"rateLimitPerMinute\":300,\"includeWebhookSupport\":true}", + "description": "API spec for AVI video resize and convert features with no auth but webhook support" + }, + { + "inputJson": "{\"supportedFormats\":[\"mp4\",\"avi\",\"mkv\"],\"processingFeatures\":[\"crop\",\"filter\"],\"authenticationType\":\"oauth2\",\"maxRequestSizeMB\":150,\"rateLimitPerMinute\":50,\"includeWebhookSupport\":false}", + "description": "API spec for multi-format crop and filter features with OAuth2 authentication and rate limiting" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "video-processing.createParagraph", + "description": "Creates a timed text paragraph (subtitle or caption) for a video by accepting text content and timing information. Processes input text and start/end times to produce a paragraph object that can be used in video subtitle tracks or overlays.", + "category": "video-processing", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The subtitle or caption text to display in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "The start time of the paragraph in seconds, indicating when the text appears in the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "number", + "description": "The end time of the paragraph in seconds, indicating when the text disappears from the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Optional language code (e.g., 'en', 'es') representing the language of the paragraph text.", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "object", + "description": "Optional styling for the text such as font size, color, and position. Example: {\"fontSize\":12,\"color\":\"#FFFFFF\",\"position\":\"bottom\"}.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the subtitle paragraph with text content, timing, language, and optional style attributes, structured for integration with video subtitle formats." + }, + "aiAgent": { + "useCase": "Use this tool when generating subtitles, captions, or timed text overlays for videos, especially when you need to programmatically create paragraphs with precise timing and optional styling for accessibility or translation purposes.", + "limitations": "This tool does not generate or translate text content automatically; it requires the text input to be provided. It also does not synchronize with speech automatically or validate timing overlaps.", + "examples": [ + "Create a caption paragraph from 15.5s to 20s with text 'Hello, welcome to the tutorial.'", + "Generate a subtitle paragraph starting at 0 seconds and ending at 5 seconds in Spanish.", + "Add styled subtitle text appearing at 10s ending at 15s with white font color at the bottom of the video screen." + ] + }, + "tags": [ + "video", + "subtitle", + "caption", + "timed-text", + "accessibility", + "transcript", + "overlay" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Hello, welcome to the tutorial.\",\"startTime\":15.5,\"endTime\":20}", + "description": "Creates a subtitle paragraph with given text and timing." + }, + { + "inputJson": "{\"textContent\":\"Hola, bienvenidos al tutorial.\",\"startTime\":0,\"endTime\":5,\"language\":\"es\"}", + "description": "Subtitle paragraph in Spanish from 0 to 5 seconds." + }, + { + "inputJson": "{\"textContent\":\"Important note!\",\"startTime\":10,\"endTime\":15,\"style\":{\"fontSize\":14,\"color\":\"#FFFFFF\",\"position\":\"bottom\"}}", + "description": "A styled subtitle paragraph appearing at the bottom of the video." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "video-processing.createAlert", + "description": "This tool processes video streams or recorded footage to detect predefined security-related events such as unauthorized access, suspicious movement, or breaches in restricted zones. It accepts video data input and configuration parameters for event types to monitor, performs real-time or batch video analysis using motion detection and object recognition, and outputs structured alert notifications with timestamps and event details.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "URL or file path of the video stream or footage to analyze for security events.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventTypes", + "type": "array", + "description": "List of security event types to detect, e.g., ['unauthorizedAccess','suspiciousMovement','zoneBreach'].", + "required": true, + "defaultValue": "[\"unauthorizedAccess\"]" + }, + { + "name": "sensitivityLevel", + "type": "number", + "description": "Detection sensitivity level from 1 (low) to 10 (high), affecting false positives and alert frequency.", + "required": false, + "defaultValue": "5" + }, + { + "name": "alertRecipients", + "type": "array", + "description": "List of recipient identifiers (e.g., emails, user IDs) to notify when an alert is generated.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "useRealTimeProcessing", + "type": "boolean", + "description": "If true, processes live video streams in real time; if false, analyzes stored footage.", + "required": false, + "defaultValue": "true" + }, + { + "name": "restrictedZones", + "type": "array", + "description": "Coordinates or definitions of zones within the video frames where security events should be monitored specifically.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxAlertFrequency", + "type": "number", + "description": "Minimum minutes between repeated alerts of the same event type to reduce notification spam.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of alert events detected with details including event type, timestamp, video frame reference, and alert message." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing security camera footage or live surveillance video feeds to automatically detect and generate alerts for security incidents such as unauthorized entries, suspicious behaviors, or breaches within monitored areas. It is suitable for integration in surveillance systems to enhance real-time monitoring and incident response.", + "limitations": "This tool cannot guarantee detection of all security events, especially under poor lighting, occlusions, or video quality issues. It does not perform forensic video enhancement or face recognition and depends on preset event types and configuration for accuracy.", + "examples": [ + "Detect unauthorized access events in real-time on a parking lot CCTV feed.", + "Analyze recorded video footage for suspicious movements during off-hours at a facility.", + "Create alerts when someone enters a predefined restricted zone within the video frames." + ] + }, + "tags": [ + "video", + "security", + "surveillance", + "alert", + "monitoring", + "real-time", + "eventDetection" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"rtsp://192.168.1.10/live\",\"eventTypes\":[\"unauthorizedAccess\",\"zoneBreach\"],\"sensitivityLevel\":7,\"alertRecipients\":[\"security@company.com\"],\"useRealTimeProcessing\":true,\"restrictedZones\":[{\"x\":120,\"y\":50,\"width\":200,\"height\":150}],\"maxAlertFrequency\":5}", + "description": "Monitoring live stream for unauthorized access and zone breaches with moderate-high sensitivity and notification to security team." + }, + { + "inputJson": "{\"videoSource\":\"/videos/warehouse_night_footage.mp4\",\"eventTypes\":[\"suspiciousMovement\"],\"sensitivityLevel\":5,\"useRealTimeProcessing\":false}", + "description": "Batch analysis of recorded warehouse night footage to detect suspicious movement without specifying alert recipients." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "video-processing.createOrder", + "description": "Creates a structured order for professional video production services based on input parameters like video length, style, resolution, and additional features. Accepts order details and produces a comprehensive order summary with cost estimates and timelines for production.", + "category": "video-processing", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Name of the client placing the order.", + "required": true, + "defaultValue": "" + }, + { + "name": "videoLengthMinutes", + "type": "number", + "description": "Length of the video to be produced, in minutes.", + "required": true, + "defaultValue": "" + }, + { + "name": "videoStyle", + "type": "string", + "description": "Style of the video, e.g., animation, live action, documentary.", + "required": true, + "defaultValue": "live action" + }, + { + "name": "resolution", + "type": "string", + "description": "Desired video resolution, e.g., 1080p, 4K.", + "required": false, + "defaultValue": "1080p" + }, + { + "name": "additionalFeatures", + "type": "array", + "description": "List of additional features such as subtitles, voice-over, special effects, etc.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deliveryDeadline", + "type": "string", + "description": "Requested delivery date for the final video in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An order summary including total estimated cost, production timeline, and detailed order specifications." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a detailed production order for video projects to facilitate business processes like budgeting, scheduling, and service requests. It helps translate client requirements into a structured order with estimates.", + "limitations": "Does not handle payment processing, contract generation, or detailed script writing. It focuses only on order creation and summary generation.", + "examples": [ + "Create an order for a 5-minute animated video with subtitles and voice-over, to be delivered in two weeks.", + "Generate a video production order for a 10-minute live action documentary at 4K resolution without additional features.", + "Create an order for a marketing video with special effects and a delivery deadline of next month." + ] + }, + "tags": [ + "video", + "production", + "order", + "business", + "estimate", + "scheduling", + "video-processing", + "create" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"videoLengthMinutes\":5,\"videoStyle\":\"animation\",\"resolution\":\"1080p\",\"additionalFeatures\":[\"subtitles\",\"voice-over\"],\"deliveryDeadline\":\"2024-07-15\"}", + "description": "Order for a 5-minute animated video with subtitles and voice-over, delivery July 15, 2024." + }, + { + "inputJson": "{\"clientName\":\"GreenTech\",\"videoLengthMinutes\":10,\"videoStyle\":\"live action\",\"resolution\":\"4K\",\"additionalFeatures\":[],\"deliveryDeadline\":\"\"}", + "description": "Order for a 10-minute live action video at 4K resolution, no extra features, no specific deadline." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "video-processing.createBranch", + "description": "Creates a new editing branch from an existing video project timeline to enable parallel editing and experimentation without affecting the main video track. Accepts a project ID and optional branch name, duplicates the timeline state, and outputs the new branch identifier and metadata.", + "category": "video-processing", + "parameters": [ + { + "name": "projectId", + "type": "string", + "description": "Identifier of the existing video project to branch from.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name for the new editing branch. If not provided, a default unique name is generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "baseTimelineId", + "type": "string", + "description": "Optional specific timeline ID within the project to branch from. Defaults to the current main timeline if not specified.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the new branch ID, branch name, and a snapshot of the timeline state copied into the branch." + }, + "aiAgent": { + "useCase": "Use this tool when you wish to create an isolated editing branch within a video project to try different editing approaches or experiments without risking changes to the main timeline. It is useful for parallel versioning and separate effect sequences in complex video editing workflows.", + "limitations": "This tool does not perform any merging or synchronization between branches. It only duplicates the timeline state at branch creation. Managing branch merges or conflict resolutions requires separate tools.", + "examples": [ + "Create a new experimental branch for a video project to test alternative color grading.", + "Duplicate the current timeline into a branch named 'holiday-cut' for client review.", + "Branch a specific timeline within a multi-timeline project to add localized subtitles without altering the main edit." + ] + }, + "tags": [ + "video", + "editing", + "branching", + "version-control", + "timeline", + "experiment", + "parallel-editing" + ], + "examples": [ + { + "inputJson": "{\"projectId\":\"proj_12345\",\"branchName\":\"color-correction-branch\"}", + "description": "Create a new branch named 'color-correction-branch' from the main timeline of project 'proj_12345'." + }, + { + "inputJson": "{\"projectId\":\"proj_98765\"}", + "description": "Create a new unnamed branch from the main timeline of project 'proj_98765'. The system will generate a default branch name." + }, + { + "inputJson": "{\"projectId\":\"proj_54321\",\"baseTimelineId\":\"tl_333\",\"branchName\":\"subtitles-branch\"}", + "description": "Create an editing branch named 'subtitles-branch' from a specific timeline (id 'tl_333') in project 'proj_54321'." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "video-processing.createSummary", + "description": "This tool accepts a video file or URL along with optional parameters defining summary length and format. It processes the video to detect key scenes, audio highlights, and visual changes to generate a concise video summary. The output is a structured summary report including timestamps, key frames, and a textual description of the main content.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "URL or local file path of the input video to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLengthSeconds", + "type": "number", + "description": "Approximate length in seconds for the generated summary video or highlight reel.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeTranscript", + "type": "boolean", + "description": "Whether to include a textual transcript of the summarized content if available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summaryFormat", + "type": "string", + "description": "Format of the summary output: 'video' for highlight reel video, 'report' for textual and visual summary report, or 'both'.", + "required": false, + "defaultValue": "report" + }, + { + "name": "maxScenes", + "type": "number", + "description": "Maximum number of key scenes to detect and include in the summary.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary content. For 'report' format, includes an array of key scenes with timestamps, summary text, and optionally transcript. For 'video' format, returns a URL or file path of the summarized highlight video." + }, + "aiAgent": { + "useCase": "Use this tool when a concise overview of lengthy videos is needed, such as summarizing meetings, lectures, or entertainment content to quickly extract key moments and main themes without watching the full video. It helps reduce viewing time and extract meaningful insights.", + "limitations": "The quality of the summary depends on video content clarity; it may not handle very short or extremely long videos well. It cannot interpret complex scenes requiring deep semantic understanding beyond visual and audio cues. Transcripts are only available if the video contains audio with clear speech.", + "examples": [ + "Create a 2-minute highlight summary from a recorded conference video.", + "Generate a textual report summarizing the main scenes of a 30-minute lecture video including transcript.", + "Produce both a video highlight reel and a summary report for an uploaded movie clip." + ] + }, + "tags": [ + "video-processing", + "summarization", + "highlight-extraction", + "video-analysis", + "media" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/lecture1.mp4\",\"summaryLengthSeconds\":120,\"summaryFormat\":\"report\",\"includeTranscript\":true}", + "description": "Generate a 2-minute textual summary report with transcript from an online lecture video." + }, + { + "inputJson": "{\"videoSource\":\"/local/path/to/conference.mp4\",\"summaryLengthSeconds\":180,\"summaryFormat\":\"video\",\"maxScenes\":8}", + "description": "Create a 3-minute video highlight reel from a local conference video including up to 8 key scenes." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "audio-processing.uploadReport", + "description": "Uploads an audio analysis report document to a specified remote server or cloud storage. Accepts a report file in PDF or JSON format along with metadata such as report title, author, and tags. Validates and sends the report securely, then returns a confirmation with upload status and accessible URL of the stored report.", + "category": "audio-processing", + "parameters": [ + { + "name": "reportFile", + "type": "string", + "description": "Path or base64 string of the report file to be uploaded (PDF or JSON format).", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title of the audio analysis report being uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person or system that generated the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of descriptive tags to categorize and facilitate searching of the report.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "URL of the remote server or cloud API endpoint to upload the report to.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiKey", + "type": "string", + "description": "API key or token required for authenticating the upload request to the server.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing uploadStatus ('success' or 'failure'), a message providing details, and if successful, a reportUrl string pointing to the uploaded document location." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to archive, share, or publish audio analysis report documents generated from audio processing tasks. By uploading reports with metadata to a centralized location or cloud storage, teams can organize and access audio analysis results efficiently.", + "limitations": "Does not perform report generation or editing; strictly uploads existing report files. Upload success depends on network availability and server API compatibility.", + "examples": [ + "Upload a completed audio frequency analysis report PDF to cloud storage with metadata.", + "Send a JSON formatted report of audio sentiment analysis to a remote documentation server.", + "Upload multiple tagged audio event detection reports for team review." + ] + }, + "tags": [ + "upload", + "audio-analysis", + "report-management", + "cloud-storage", + "document-upload", + "audio-processing" + ], + "examples": [ + { + "inputJson": "{\"reportFile\":\"/path/to/audio_report.pdf\",\"reportTitle\":\"Weekly Audio Spectrum Analysis\",\"authorName\":\"AudioAI Bot\",\"tags\":[\"spectrum\",\"weekly\",\"analysis\"],\"destinationUrl\":\"https://api.examplecloud.com/upload\",\"apiKey\":\"abcd1234securetoken\"}", + "description": "Uploading a weekly audio spectrum analysis PDF report to a cloud service with metadata tags for organization." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "audio-processing.renderFile", + "description": "Renders an input audio project file or composition into a finalized audio file format. Accepts source project files or sequences in common audio production formats (e.g., DAW project exports, multitrack stems), applies rendering settings like sample rate and bit depth, and outputs a stereo or multichannel audio file (e.g., WAV, MP3) ready for playback or distribution.", + "category": "audio-processing", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "Path or URI to the source audio project file or multitrack stems folder to render.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired audio output format (e.g., wav, mp3, aiff).", + "required": true, + "defaultValue": "wav" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Sample rate for the output file in Hz (e.g., 44100, 48000).", + "required": false, + "defaultValue": "44100" + }, + { + "name": "bitDepth", + "type": "number", + "description": "Bit depth for output audio (e.g., 16, 24).", + "required": false, + "defaultValue": "16" + }, + { + "name": "channels", + "type": "number", + "description": "Number of audio channels for output (e.g., 2 for stereo).", + "required": false, + "defaultValue": "2" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize audio volume to maximum peak before saving.", + "required": false, + "defaultValue": "false" + }, + { + "name": "renderStartTime", + "type": "number", + "description": "Start time in seconds from which to begin rendering (supports partial render).", + "required": false, + "defaultValue": "0" + }, + { + "name": "renderEndTime", + "type": "number", + "description": "End time in seconds until which to render audio (supports partial render).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the path to the rendered audio file and metadata about the output file, including duration, sample rate, bit depth, channels, and file size." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert audio project files or multitrack audio stems into a finalized audio file format suitable for listening or distribution, customizing output format, quality parameters, and optionally normalizing or rendering partial sections.", + "limitations": "Cannot modify or mix audio content beyond rendering settings. Complex effect processing or audio editing must be done prior to rendering. Does not support generating MIDI or synthesizing new audio content.", + "examples": [ + "Render a multitrack project export folder into a stereo WAV file with 48kHz sample rate.", + "Convert an audio project file to MP3 format normalized to max volume.", + "Render only the first 30 seconds of an audio composition to a 16-bit AIFF file." + ] + }, + "tags": [ + "audio", + "rendering", + "file-conversion", + "audio-export", + "media-processing", + "audio-format", + "mixdown" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/projects/song1/session1.dawproj\",\"outputFormat\":\"wav\",\"sampleRate\":48000,\"bitDepth\":24,\"channels\":2,\"normalize\":true}", + "description": "Render a DAW project file to a 24-bit 48kHz stereo WAV with normalization." + }, + { + "inputJson": "{\"inputFilePath\":\"/audio/stems/song2/\",\"outputFormat\":\"mp3\",\"bitDepth\":16,\"channels\":2}", + "description": "Render multitrack stems folder to a standard 16-bit MP3 stereo file." + }, + { + "inputJson": "{\"inputFilePath\":\"/compositions/ambient1.project\",\"outputFormat\":\"aiff\",\"renderStartTime\":0,\"renderEndTime\":30}", + "description": "Render only the first 30 seconds of an audio project to AIFF format." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "audio-processing.renderDocument", + "description": "Renders a document that integrates audio data and transcriptions into a formatted multimedia document (e.g., PDF or HTML). It accepts audio files and associated transcript text, optionally includes timestamps and speaker labels, and produces a document embedding audio waveforms, playable audio segments, and synchronized text for presentation or archival purposes.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFiles", + "type": "array", + "description": "Array of audio file URLs or base64 strings to include in the document, corresponding to the transcript segments.", + "required": true, + "defaultValue": "" + }, + { + "name": "transcriptText", + "type": "string", + "description": "Full text transcript corresponding to the audio content, to be rendered and synchronized in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampedSegments", + "type": "array", + "description": "Optional segments with start/end timestamps and optional speaker labels to synchronize text and audio segments in the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format, e.g., 'pdf' or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeWaveform", + "type": "boolean", + "description": "Whether to render an audio waveform visualization for each audio segment in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSpeakerLabels", + "type": "boolean", + "description": "Whether to display speaker labels for transcript segments if available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Title to display in the rendered document header.", + "required": false, + "defaultValue": "Audio Transcript Document" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered document as a binary buffer or base64 string along with metadata such as document filename, format, and size." + }, + "aiAgent": { + "useCase": "Use this tool when you have audio recordings and their transcripts and want to generate a professional multimedia document combining audio playback, waveform visuals, and synchronized transcript text for sharing, review, or archival purposes. It's ideal for meeting minutes, interviews, or podcast episode documentation.", + "limitations": "This tool does not perform transcription or audio analysis itself; it requires pre-existing transcripts and audio files. It cannot modify audio content or perform advanced video rendering.", + "examples": [ + "Generate a PDF document with embedded audio and transcript for a recorded interview.", + "Create an HTML report including waveforms and speaker-labeled transcript segments from a meeting recording.", + "Produce a playable podcast transcript document with synchronized audio clips and visual waveforms." + ] + }, + "tags": [ + "audio", + "document", + "rendering", + "transcript", + "multimedia", + "pdf", + "html" + ], + "examples": [ + { + "inputJson": "{\"audioFiles\":[\"https://example.com/audio1.mp3\"],\"transcriptText\":\"Hello, this is the transcript of the audio.\",\"timestampedSegments\":[{\"start\":0,\"end\":5,\"text\":\"Hello, this is the transcript.\",\"speaker\":\"Speaker 1\"}],\"outputFormat\":\"pdf\",\"includeWaveform\":true,\"includeSpeakerLabels\":true,\"documentTitle\":\"Interview Transcript\"}", + "description": "Render a PDF document titled 'Interview Transcript' with one audio file, including waveforms and speaker labels matching transcript segments." + }, + { + "inputJson": "{\"audioFiles\":[\"https://example.com/audio2.wav\"],\"transcriptText\":\"Welcome to our meeting notes.\",\"outputFormat\":\"html\",\"includeWaveform\":false,\"includeSpeakerLabels\":false,\"documentTitle\":\"Meeting Notes\"}", + "description": "Generate a simple HTML document embedding one audio file and transcript without waveforms or speaker labels." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "audio-processing.formatReport", + "description": "This tool accepts a raw textual or JSON report derived from audio analysis and applies consistent formatting and structuring. It processes input reports generated by audio analysis tools (e.g., speech recognition, acoustic event detectors) and outputs a polished, human-readable report in Markdown or HTML format suitable for presentation or documentation.", + "category": "audio-processing", + "parameters": [ + { + "name": "inputReport", + "type": "string", + "description": "Raw audio analysis report as plain text or JSON string requiring formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input report: \"text\" for plain text, \"json\" for JSON structured report.", + "required": true, + "defaultValue": "text" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted report: \"markdown\" or \"html\".", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an autogenerated summary section in the formatted report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., \"en\", \"es\") for formatting and localization of report elements.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report as a string and the content type indicating the format (markdown or html)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives raw audio analysis output, for example from speech-to-text transcriptions or acoustic event detection logs, and there is a need to generate a clean and structured report for human review or documentation. It is especially useful in multi-step workflows where converting analysis results into readable reports is necessary.", + "limitations": "The tool does not perform audio analysis or transcription itself; it only formats existing reports. It cannot correct inaccuracies in the source report or create detailed custom visualizations beyond basic text formatting.", + "examples": [ + "Format a raw JSON audio event detection report into a polished markdown summary for a research document.", + "Convert a plain text speech recognition transcript report into an HTML document including a summary.", + "Generate a localized, formatted report in English from raw audio analysis JSON output with a summary section." + ] + }, + "tags": [ + "audio-processing", + "report-formatting", + "markdown", + "html", + "audio-analysis", + "documentation", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"inputReport\":\"{\\\"events\\\":[{\\\"type\\\":\\\"speech\\\",\\\"confidence\\\":0.95},{\\\"type\\\":\\\"music\\\",\\\"confidence\\\":0.72}]}','inputFormat':'json','outputFormat':'markdown','includeSummary':true,'language':'en'", + "description": "Format a JSON audio event report to markdown with a summary." + }, + { + "inputJson": "{\"inputReport\":\"Detected speech segments with timestamps and confidence scores.\",\"inputFormat\":\"text\",\"outputFormat\":\"html\",\"includeSummary\":false,\"language\":\"en\"}", + "description": "Format plain text speech detection report into HTML without summary." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "audio-processing.formatFunction", + "description": "Formats JavaScript audio processing functions by parsing the input code, applying consistent indentation, renaming variables for clarity, and organizing code structure for better readability and maintainability. Accepts raw function code string and outputs the formatted function code string.", + "category": "audio-processing", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "Raw JavaScript function code string related to audio processing to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces for indentation in the formatted code.", + "required": false, + "defaultValue": "2" + }, + { + "name": "renameVariables", + "type": "boolean", + "description": "Whether to rename variables to more descriptive names based on common audio processing terms.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sortFunctionParts", + "type": "boolean", + "description": "Whether to reorder function parts (e.g., declarations, processing steps) for clearer logic flow.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code as a string." + }, + "aiAgent": { + "useCase": "Use this tool when receiving raw or poorly formatted audio processing functions in code, to produce clearer, cleaner, and standardized JavaScript function code for easier integration, debugging, or review.", + "limitations": "Cannot interpret or fix logical errors in the code semantics; only formats and refactors syntax and structure for readability.", + "examples": [ + "Format a raw audio mixing function with 4 spaces indentation.", + "Rename variables in an audio filter function for clarity.", + "Sort function parts within an audio analysis JavaScript function." + ] + }, + "tags": [ + "audio", + "formatting", + "code", + "javascript", + "audio-processing", + "refactor", + "function" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"function processAudio(input){var a=input;var b=0;for(var i=0;i<a.length;i++){b+=a[i];}return b/a.length;}\",\"indentationSpaces\":4,\"renameVariables\":true,\"sortFunctionParts\":false", + "description": "Format a simple audio processing function with 4 spaces indentation and rename variables for clarity." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "audio-processing.draftDocument", + "description": "This tool accepts an audio file or audio stream as input and uses AI to analyze speech content, context, and metadata to generate a structured document draft. It produces a text document summarizing key points, sections, and relevant details from the audio for use in reports, meeting minutes, or transcripts.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioInput", + "type": "string", + "description": "URL or base64-encoded string of the audio file to be processed", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the audio content (e.g., 'en' for English) to optimize recognition and drafting", + "required": false, + "defaultValue": "en" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format such as 'markdown', 'plain_text', or 'json'", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps in the draft document for reference", + "required": false, + "defaultValue": "false" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate number of sentences or bullet points in the summary section", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted document text in the specified format, the detected language, and metadata such as processing time and confidence levels." + }, + "aiAgent": { + "useCase": "Use this tool when you have an audio recording, such as an interview, meeting, podcast, or lecture, and you want to automatically generate a structured text document summarizing or transcribing its content. It helps automate note-taking, reporting, or content creation tasks by converting speech into an organized draft document.", + "limitations": "This tool may not perfectly capture highly technical jargon or overlapped speech. It is not a replacement for full manual transcription nor editing, but an aid to speed up drafting documents from audio.", + "examples": [ + "Draft a meeting summary document from this audio recording of a project discussion.", + "Generate a markdown formatted transcript and summary from this podcast episode audio.", + "Create a brief text summary of lecture audio including timestamps for key topics." + ] + }, + "tags": [ + "audio", + "document", + "drafting", + "speech-to-text", + "transcription", + "summarization" + ], + "examples": [ + { + "inputJson": "{\"audioInput\":\"https://example.com/audio/meeting1.mp3\",\"language\":\"en\",\"outputFormat\":\"markdown\",\"includeTimestamps\":true,\"summaryLength\":7}", + "description": "Draft a markdown document including timestamps from an English meeting audio file with a 7-point summary." + }, + { + "inputJson": "{\"audioInput\":\"data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEA\",\"outputFormat\":\"plain_text\"}", + "description": "Generate plain text document from a base64-encoded wav audio input, using default language English and no timestamps." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "audio-processing.buildDatabase", + "description": "Builds and populates a structured audio metadata database from a collection of audio files. Accepts audio files and optional metadata extraction settings, processes audio to extract features like duration, sample rate, and acoustic fingerprints, then outputs a searchable JSON or database file containing organized audio metadata records.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFiles", + "type": "array", + "description": "An array of file paths or URLs pointing to audio files to process and include in the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractMetadata", + "type": "boolean", + "description": "Whether to perform automated extraction of audio metadata such as duration, format, and bitrate from files.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractAudioFeatures", + "type": "boolean", + "description": "Whether to extract audio features (e.g., loudness, tempo, acoustic fingerprint) for advanced analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "databaseFormat", + "type": "string", + "description": "The output format of the database file. Supported: 'json', 'sqlite'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "File path where the generated database will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeExternalMetadata", + "type": "boolean", + "description": "Whether to include additional metadata provided via sidecar files or API (e.g., tags, artist info).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the path to the created database file and summary statistics about the processed audio files." + }, + "aiAgent": { + "useCase": "Use this tool when you need to build a centralized, structured repository of audio files along with extracted metadata and acoustic features to enable efficient search, filtering, and analysis for audio processing or management applications.", + "limitations": "This tool does not perform audio content recognition such as speech-to-text or music genre classification. It focuses on metadata and acoustic feature extraction but not on semantic labeling or AI audio tagging.", + "examples": [ + "Build a JSON audio database from a directory of WAV and MP3 files with metadata extraction enabled.", + "Generate an SQLite database including acoustic fingerprints for a collection of podcasts for fast lookup.", + "Create an audio metadata database from provided audio URLs with external metadata included." + ] + }, + "tags": [ + "audio-processing", + "database", + "metadata-extraction", + "audio-features", + "audio-management" + ], + "examples": [ + { + "inputJson": "{\"audioFiles\":[\"/data/audio1.mp3\",\"/data/audio2.wav\"],\"extractMetadata\":true,\"extractAudioFeatures\":true,\"databaseFormat\":\"json\",\"outputFilePath\":\"/data/audioDb.json\",\"includeExternalMetadata\":false}", + "description": "Build a JSON audio database from two local audio files with full metadata and audio features extraction." + }, + { + "inputJson": "{\"audioFiles\":[\"https://example.com/audio/podcast1.mp3\"],\"extractMetadata\":true,\"extractAudioFeatures\":false,\"databaseFormat\":\"sqlite\",\"outputFilePath\":\"/tmp/podcastDb.sqlite\",\"includeExternalMetadata\":true}", + "description": "Create an SQLite database for a remote podcast audio file including external metadata but no audio features." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "audio-processing.generateSentence", + "description": "Generates a spoken sentence audio file based on input text, voice characteristics, and audio settings. Accepts parameters for text content, voice type, speech rate, pitch, and output audio format, then produces an audio buffer or file containing the synthesized spoken sentence.", + "category": "audio-processing", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The sentence or phrase to synthesize into speech.", + "required": true, + "defaultValue": "" + }, + { + "name": "voiceType", + "type": "string", + "description": "The voice style or type to use for speech synthesis (e.g., 'male', 'female', 'child').", + "required": false, + "defaultValue": "female" + }, + { + "name": "speechRate", + "type": "number", + "description": "Speed of speech playback; 1.0 is normal speed, <1 slower, >1 faster.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "pitch", + "type": "number", + "description": "Pitch adjustment for the voice; typical range from 0.5 (lower) to 2.0 (higher), where 1.0 is normal pitch.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired audio output format (e.g., 'wav', 'mp3', 'ogg').", + "required": false, + "defaultValue": "wav" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated audio data and metadata. Includes base64-encoded audio content, format, duration, and sample rate." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to synthesize natural-sounding speech from a text sentence with customization options for voice characteristics and output format, such as for creating audio notifications, voiceovers, or accessibility features.", + "limitations": "It cannot perform text understanding beyond simple sentence input, nor generate paragraphs or multiple sentences in one call. The voice choices are limited to preset types and cannot do expressive or emotional tone synthesis.", + "examples": [ + "Generate a female voice audio saying 'Hello, this is your assistant speaking.' at normal speed.", + "Create a child voice speaking 'Your package has been delivered' with slightly higher pitch.", + "Output the sentence 'Welcome to our service' as a male voice MP3 file sped up by 20%." + ] + }, + "tags": [ + "audio", + "speech-synthesis", + "text-to-speech", + "voice-generation", + "audio-format" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello, this is your assistant speaking.\",\"voiceType\":\"female\",\"speechRate\":1.0,\"pitch\":1.0,\"outputFormat\":\"wav\"}", + "description": "Generate a normal speed female voice saying a greeting" + }, + { + "inputJson": "{\"text\":\"Your package has been delivered.\",\"voiceType\":\"child\",\"speechRate\":1.0,\"pitch\":1.2,\"outputFormat\":\"mp3\"}", + "description": "Generate a child voice with slightly higher pitch announcing a delivery" + }, + { + "inputJson": "{\"text\":\"Welcome to our service.\",\"voiceType\":\"male\",\"speechRate\":1.2,\"pitch\":1.0,\"outputFormat\":\"mp3\"}", + "description": "Generate a male voice audio at 20% faster speed" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "audio-processing.createService", + "description": "Creates a scalable audio processing service that provides REST API endpoints for uploading audio files, performing AI-powered audio editing tasks (such as noise reduction, normalization, and transcription), and retrieving processed outputs. Accepts configuration parameters to customize processing pipeline and deployment settings.", + "category": "audio-processing", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "Unique name identifier for the audio processing service instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "processingPipeline", + "type": "array", + "description": "Ordered list of audio processing operations to apply (e.g., ['noiseReduction', 'normalization', 'transcription']).", + "required": true, + "defaultValue": "[\"noiseReduction\",\"normalization\"]" + }, + { + "name": "transcriptionLanguage", + "type": "string", + "description": "Language code (e.g., 'en-US') for the transcription engine, if transcription is in the pipeline.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed size of audio files to process, in megabytes.", + "required": false, + "defaultValue": "50" + }, + { + "name": "enableRealTimeProcessing", + "type": "boolean", + "description": "Whether the service supports streaming audio and real-time processing capabilities.", + "required": false, + "defaultValue": "false" + }, + { + "name": "deploymentRegion", + "type": "string", + "description": "Cloud region to deploy the service to optimize latency and availability.", + "required": false, + "defaultValue": "us-central1" + } + ], + "returns": { + "type": "object", + "description": "An object containing service metadata including endpoint URLs, documentation links, status, and configuration details." + }, + "aiAgent": { + "useCase": "Use this tool when a user requires a dedicated, customizable audio processing backend for automating audio editing tasks through API calls, enabling batch or real-time processing without manual intervention. Suitable for integrating AI-powered audio modifications into applications or services.", + "limitations": "This tool does not implement the processing algorithms itself but provisions the infrastructure service. It cannot process audio directly without deployment and actual integration of audio processing modules. It also does not handle user authentication or payment systems inherently.", + "examples": [ + "Create a noise reduction and transcription service for English audio files.", + "Deploy an audio normalization service supporting real-time audio streams in Europe region.", + "Provision a batch audio processing service limiting uploads to 100MB per file." + ] + }, + "tags": [ + "audio", + "service", + "API", + "processing", + "deployment", + "AI", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"myAudioAIService\",\"processingPipeline\":[\"noiseReduction\",\"transcription\"],\"transcriptionLanguage\":\"en-US\",\"maxFileSizeMB\":100,\"enableRealTimeProcessing\":false,\"deploymentRegion\":\"us-east1\"}", + "description": "Create a service named 'myAudioAIService' that applies noise reduction and English transcription to uploaded audio files, allowing up to 100MB files, no real-time processing, deployed in US East region." + }, + { + "inputJson": "{\"serviceName\":\"streamAudioProcessor\",\"processingPipeline\":[\"normalization\"],\"enableRealTimeProcessing\":true,\"deploymentRegion\":\"europe-west2\"}", + "description": "Deploy a streaming audio processing service that normalizes audio input in real-time, intended for European users." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "image-processing.downloadImage", + "description": "Downloads an image file from a provided URL and saves it locally or returns it in binary form. It accepts the image URL, optional target local file path, and headers for authentication. The tool fetches the image data and outputs success status and file details or raw data as chosen.", + "category": "image-processing", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The direct URL of the image to download. Supports HTTP and HTTPS protocols.", + "required": true, + "defaultValue": "" + }, + { + "name": "saveToFile", + "type": "boolean", + "description": "Flag indicating whether to save the downloaded image to a local file.", + "required": false, + "defaultValue": "true" + }, + { + "name": "filePath", + "type": "string", + "description": "Local file system path where the image will be saved if 'saveToFile' is true. If not provided, a default filename is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "requestHeaders", + "type": "object", + "description": "Optional HTTP headers (e.g., Authorization) to include in the image download request as key-value pairs.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the image download before aborting.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Returns an object indicating whether the download and save were successful, a local file path if applicable, or the raw binary data buffer of the image if not saved to file." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to programmatically retrieve image files from remote URLs for analysis, editing, or saving locally. Suitable for scenarios like downloading user-uploaded images, fetching assets for image processing tasks, or accessing protected images with custom headers.", + "limitations": "Cannot process or validate image content beyond downloading. Does not support image format conversions. Requires valid URL and network access. Saving to file depends on permissions and valid paths.", + "examples": [ + "Download an image from a public URL and save it locally.", + "Fetch a private image requiring an authorization header without saving the file, returning raw data.", + "Download an image with a custom timeout setting." + ] + }, + "tags": [ + "download", + "image", + "http", + "file-saving", + "network", + "media" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/sample.jpg\",\"saveToFile\":true,\"filePath\":\"/tmp/sample.jpg\"}", + "description": "Download a public image and save it explicitly to /tmp/sample.jpg." + }, + { + "inputJson": "{\"imageUrl\":\"https://secure.example.com/private.png\",\"saveToFile\":false,\"requestHeaders\":{\"Authorization\":\"Bearer abc123\"}}", + "description": "Download a private image using a bearer token and return the binary data instead of saving." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/slow-image.png\",\"timeoutSeconds\":10}", + "description": "Attempt to download an image with a 10 second timeout to avoid long waits." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "image-processing.uploadImage", + "description": "Uploads an image file to a remote server or cloud storage. Accepts image data as a base64 encoded string or a URL pointing to the image. Validates image format and size, then uploads and returns a URL and metadata about the stored image.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64 encoded image data or direct image URL to be uploaded", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "Expected image format (e.g., jpg, png); used for validation if imageData is base64", + "required": false, + "defaultValue": "" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed file size in megabytes for the upload", + "required": false, + "defaultValue": "5" + }, + { + "name": "storagePath", + "type": "string", + "description": "Optional path or folder name where image should be stored on the server", + "required": false, + "defaultValue": "" + }, + { + "name": "publicAccess", + "type": "boolean", + "description": "Flag to specify whether uploaded image URL should be publicly accessible", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the publicly accessible URL of the uploaded image, image metadata including width, height, format, size in bytes, and storage path" + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to programmatically upload images from local data or remote URLs to a centralized storage system, enabling further image processing, sharing, or integration in workflows requiring hosted images.", + "limitations": "Cannot modify images during upload (no editing or transformations); does not support video or non-image file uploads; upload speed depends on network conditions and file size.", + "examples": [ + "Upload base64 encoded profile picture and get hosted URL.", + "Upload an image from a public URL and store it privately in a folder.", + "Validate and upload a PNG screenshot smaller than 5 MB to public storage." + ] + }, + "tags": [ + "upload", + "image", + "storage", + "cloud", + "base64", + "url" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"imageFormat\":\"png\",\"maxFileSizeMB\":2,\"publicAccess\":true}", + "description": "Upload a small PNG image provided as base64, allowing public access." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/images/sample.jpg\",\"storagePath\":\"user-uploads/2024/\",\"publicAccess\":false}", + "description": "Upload an image by URL, store it in a path with private access." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "image-processing.uploadDataset", + "description": "Uploads a dataset of images for further processing or analysis. Accepts image files in common formats (JPEG, PNG, TIFF) as an array of base64 strings or URLs, along with optional metadata. Validates files and stores them in a specified dataset identifier for later retrieval or processing.", + "category": "image-processing", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "A unique name identifying the image dataset to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "images", + "type": "array", + "description": "An array of image data represented as base64-encoded strings or accessible URLs to the image files.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata for the dataset or individual images, such as labels, descriptions, or tags.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing dataset if the same datasetName already exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A confirmation object with the datasetName, number of images successfully uploaded, and error details if any failures occurred." + }, + "aiAgent": { + "useCase": "Use this tool when needing to upload and register multiple images as an organized dataset for tasks like training computer vision models, batch processing, or analysis. It handles validation and storage for consistent access.", + "limitations": "This tool does not perform any image content analysis or transformation, only uploads and registers images in datasets. It also does not directly fetch images from URLs if authentication is needed.", + "examples": [ + "Upload a training dataset of labeled cat and dog images to prepare for model training.", + "Register a large set of microscopy images with metadata tags for downstream analysis.", + "Overwrite an existing dataset of product photos with updated images for an e-commerce application." + ] + }, + "tags": [ + "upload", + "image", + "dataset", + "batch", + "base64", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"wildlifePhotos\",\"images\":[\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD...\",\"https://example.com/image1.png\"],\"metadata\":{\"location\":\"Amazon rainforest\",\"captureDate\":\"2023-05-10\"},\"overwriteExisting\":false}", + "description": "Upload a wildlife photo dataset with images as base64 strings and URLs, including metadata for location and capture date." + }, + { + "inputJson": "{\"datasetName\":\"medicalScans2024\",\"images\":[\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...\"],\"overwriteExisting\":true}", + "description": "Overwrite an existing dataset of medical scan images with new PNG images encoded in base64." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "image-processing.formatJSON", + "description": "Formats a JSON string representing image metadata or processing results into a human-readable, pretty-printed JSON format. Accepts raw JSON strings or minified JSON and outputs a formatted JSON string with customizable indentation for easier analysis or viewing.", + "category": "image-processing", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "Raw JSON string containing image-related data to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces used for indentation in the formatted JSON output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "If true, the keys in the JSON output will be sorted alphabetically for consistency.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string under the 'formattedJson' key." + }, + "aiAgent": { + "useCase": "Use this tool when you receive raw or minified JSON data related to images—such as image metadata, analysis results, or processing parameters—and need to present it in a clean, readable format for debugging, logging, or reporting. It helps improve human readability and facilitates inspection or sharing of image-related JSON data.", + "limitations": "This tool only formats valid JSON strings. It does not validate JSON correctness beyond built-in JSON parsing, nor does it modify or analyze the content of the JSON beyond sorting keys if specified.", + "examples": [ + "Format an image metadata JSON string to improve readability with an indentation of 4 spaces.", + "Pretty-print image processing result JSON with keys sorted alphabetically.", + "Format a minified JSON string output from an image analysis tool using default indentation." + ] + }, + "tags": [ + "image-processing", + "formatting", + "json", + "prettify", + "metadata", + "debugging" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"imageId\\\":\\\"abc123\\\",\\\"dimensions\\\":{\\\"width\\\":1920,\\\"height\\\":1080},\\\"tags\\\":[\\\"outdoor\\\",\\\"nature\\\"]}\",\"indentationSpaces\":4,\"sortKeys\":false}", + "description": "Format typical image metadata JSON with 4 spaces indentation." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"b\\\":2,\\\"a\\\":1,\\\"c\\\":3}\",\"indentationSpaces\":2,\"sortKeys\":true}", + "description": "Format minified JSON with keys sorted alphabetically and 2 spaces indentation." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"results\\\":{\\\"facesDetected\\\":5,\\\"objects\\\":[\\\"car\\\",\\\"tree\\\"]}}\",\"indentationSpaces\":3,\"sortKeys\":false}", + "description": "Pretty-print image analysis results with 3 spaces indentation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "image-processing.composeWord", + "description": "This tool accepts multiple image fragments representing individual letters or parts of letters and composes them into a single coherent image forming a complete word. It processes the input images by arranging them sequentially with optional spacing and optional styling overlays, producing a consolidated image output of the composed word in a specified format.", + "category": "image-processing", + "parameters": [ + { + "name": "letterImages", + "type": "array", + "description": "An array of images representing individual letters or letter fragments, each provided as a base64-encoded string or valid image URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "spacing", + "type": "number", + "description": "The number of pixels to place as horizontal space between letter images in the final composition.", + "required": false, + "defaultValue": "0" + }, + { + "name": "alignment", + "type": "string", + "description": "Specifies vertical alignment of letters in composition: 'top', 'center', or 'bottom'.", + "required": false, + "defaultValue": "center" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format, e.g., 'png', 'jpeg', or 'webp'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "canvasBackgroundColor", + "type": "string", + "description": "Hex color code or named color string to use as the background for the output canvas; defaults to transparent if unspecified.", + "required": false, + "defaultValue": "transparent" + }, + { + "name": "applyShadow", + "type": "boolean", + "description": "If true, applies a subtle drop shadow effect to each letter to enhance visual depth.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the base64-encoded composed image as a string under the key 'composedImage' and the output format used under 'format'." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to programmatically combine multiple separate letter images into a stylized word image, for applications like custom logo creation, styled text graphics, or assembling scanned letter fragments into a word. It streamlines image composition without manual editing.", + "limitations": "Does not perform optical character recognition or generate letter images from text strings; input must be image data representing letters. Layout is linear and single line only, no multiline or curved text arrangement.", + "examples": [ + "Compose a word image from individual letter image snippets with 5 pixels spacing and center alignment.", + "Generate a PNG word image from provided JPEG letter images with transparent background and drop shadow.", + "Create a horizontally aligned word image with no extra spacing and a white background in JPEG format." + ] + }, + "tags": [ + "image-composition", + "text-image", + "letter-processing", + "graphic-design", + "image-editing" + ], + "examples": [ + { + "inputJson": "{\"letterImages\":[\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\"],\"spacing\":5,\"alignment\":\"center\",\"outputFormat\":\"png\",\"canvasBackgroundColor\":\"transparent\",\"applyShadow\":true}", + "description": "Compose multiple base64-encoded letter images into a single PNG with 5px spacing, center aligned, transparent background, and drop shadows." + }, + { + "inputJson": "{\"letterImages\":[\"https://example.com/letterH.jpg\",\"https://example.com/letterI.jpg\"],\"spacing\":0,\"alignment\":\"top\",\"outputFormat\":\"jpeg\",\"canvasBackgroundColor\":\"#ffffff\",\"applyShadow\":false}", + "description": "Compose two letter images from URLs into a JPEG word image with no spacing, top alignment, and white background." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "image-processing.composeMessage", + "description": "This tool composes a new image by overlaying a textual message onto a base image. It accepts an input image and message text, applies customizable text styling (font size, color, position), and outputs the resulting image with the embedded message. The output format supports common image types such as PNG or JPEG.", + "category": "image-processing", + "parameters": [ + { + "name": "baseImage", + "type": "string", + "description": "Base image encoded as a data URL or accessible image URL where the message will be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageText", + "type": "string", + "description": "The text message to overlay onto the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size for the message text in pixels.", + "required": false, + "defaultValue": "24" + }, + { + "name": "fontColor", + "type": "string", + "description": "CSS color string defining the font color of the message text.", + "required": false, + "defaultValue": "white" + }, + { + "name": "position", + "type": "string", + "description": "Position on the image to place the text (e.g., 'top-left', 'top-right', 'center', 'bottom-left', 'bottom-right').", + "required": false, + "defaultValue": "bottom-right" + }, + { + "name": "maxWidth", + "type": "number", + "description": "Maximum width in pixels the text block can occupy before wrapping to next line.", + "required": false, + "defaultValue": "300" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output image format ('png' or 'jpeg').", + "required": false, + "defaultValue": "png" + }, + { + "name": "backgroundOpacity", + "type": "number", + "description": "Opacity of a background rectangle behind text for readability (0.0 to 1.0). 0 disables background.", + "required": false, + "defaultValue": "0.5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed image as a data URL string under 'composedImage' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a visually composed message by embedding a textual message onto an existing image. Typical scenarios include generating social media share images with captions, creating photo cards with personalized messages, or branding images with overlayed text. It automates styling and positioning to produce shareable images.", + "limitations": "Cannot detect image content or optimize text placement based on image context; text overlap may reduce readability if placed over complex backgrounds. It does not support animated images or dynamic font downloads; only basic CSS font styling is supported.", + "examples": [ + "Compose a 'Happy Birthday' greeting on a photo with white text at the center.", + "Overlay a disclaimer message in small red text at the bottom-left corner of a product image.", + "Generate social media post image with a brand tagline in large font on the top-right corner." + ] + }, + "tags": [ + "image processing", + "text overlay", + "image composition", + "visual messaging", + "graphics generation" + ], + "examples": [ + { + "inputJson": "{\"baseImage\":\"https://example.com/photo.jpg\",\"messageText\":\"Happy Birthday!\",\"fontSize\":36,\"fontColor\":\"#FF69B4\",\"position\":\"center\",\"outputFormat\":\"png\"}", + "description": "Composes a 'Happy Birthday!' message in large pink font centered on the photo." + }, + { + "inputJson": "{\"baseImage\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"messageText\":\"Limited Offer\",\"fontSize\":18,\"fontColor\":\"red\",\"position\":\"bottom-left\",\"backgroundOpacity\":0.7}", + "description": "Overlays a red 'Limited Offer' text with a semi-transparent background at the bottom-left corner of the base image." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "image-processing.createDashboard", + "description": "Generates an interactive analytics dashboard from a set of images and their associated metadata. The tool accepts image files and JSON metadata inputs, analyzes image content (such as colors, objects, or text), and combines this data with metadata to produce visual summary charts, statistics, and filters in a customizable dashboard output.", + "category": "image-processing", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "An array of image file paths or base64 encoded image strings to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "array", + "description": "An array of JSON objects containing metadata corresponding to each image, such as timestamps, labels, or categories.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "List of analysis types to apply to images, e.g. ['colorHistogram', 'objectDetection', 'textExtraction'].", + "required": false, + "defaultValue": "[\"colorHistogram\"]" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title for the generated dashboard report.", + "required": false, + "defaultValue": "Image Analytics Dashboard" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the dashboard; options include 'HTML', 'PDF', or 'JSON'.", + "required": false, + "defaultValue": "HTML" + }, + { + "name": "includeFilters", + "type": "boolean", + "description": "Whether to include interactive filters for metadata fields in the dashboard.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxImages", + "type": "number", + "description": "Maximum number of images to process for the dashboard (useful for large datasets).", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the dashboard content and metadata. Includes dashboardContent (string in requested format), summaryStats (object with computed analytics), and configUsed (parameters of the run)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a comprehensive visual report summarizing insights from a collection of images and associated metadata, such as photo collections analyzed by color profiles, object presence, or extracted text. It is useful in marketing analytics, security image review, and media asset management scenarios.", + "limitations": "This tool does not perform deep custom visualization creation beyond the supported analysis types. It requires consistent metadata input aligned with images. Real-time streaming or video frame extraction is not supported.", + "examples": [ + "Create an HTML dashboard summarizing color histograms and detected objects from a set of product photos with categories metadata.", + "Generate a PDF report visualizing text extracted from scanned documents along with their timestamps.", + "Produce an interactive JSON dashboard for image emotion detection results combined with user ratings." + ] + }, + "tags": [ + "image analysis", + "dashboard", + "analytics", + "visualization", + "reporting", + "media management", + "interactive" + ], + "examples": [ + { + "inputJson": "{\"images\": [\"/path/image1.jpg\", \"/path/image2.jpg\"], \"metadata\": [{\"category\": \"outdoor\", \"date\": \"2024-05-01\"}, {\"category\": \"indoor\", \"date\": \"2024-05-02\"}], \"analysisTypes\": [\"colorHistogram\", \"objectDetection\"], \"dashboardTitle\": \"May Event Photos\", \"outputFormat\": \"HTML\", \"includeFilters\": true, \"maxImages\": 50}", + "description": "Creates an HTML dashboard summarizing color distributions and objects detected in a curated photo set with date/category filtering." + }, + { + "inputJson": "{\"images\": [\"base64encodedimage123==\"], \"metadata\": [{\"label\": \"invoice\", \"page\": 1}], \"analysisTypes\": [\"textExtraction\"], \"dashboardTitle\": \"Invoice Text Summary\", \"outputFormat\": \"PDF\", \"includeFilters\": false, \"maxImages\": 10}", + "description": "Generates a PDF report extracting and summarizing text content from scanned invoice images with simple metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "image-processing.buildModule", + "description": "Builds a reusable image processing module based on user-defined operations. Accepts a JSON configuration describing image filters, transformations, and enhancements to apply. Outputs executable code (JavaScript) implementing the specified image processing pipeline as a modular function.", + "category": "image-processing", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name to assign to the generated module or function.", + "required": true, + "defaultValue": "" + }, + { + "name": "operations", + "type": "array", + "description": "An array of operation objects defining the sequence of image processing steps (e.g., blur, resize, color adjustment) with parameters for each.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The programming language or framework format for the output module (e.g., 'JavaScript', 'TypeScript').", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code for readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated module's code as a string and metadata about the operations included." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a custom image processing component based on a specific set of image transformations and filters described programmatically. It helps automate creating reusable code that can be integrated into larger apps or workflows dealing with image manipulation.", + "limitations": "This tool generates code for specified operations but does not execute or test the code. It cannot optimize or verify runtime performance or compatibility with all JavaScript environments.", + "examples": [ + "Generate a module named 'photoEnhancer' that applies contrast adjustment and blur.", + "Create a TypeScript image filter module with resize and grayscale operations including comments.", + "Build a JavaScript module that converts images to sepia tone and resizes them to fixed dimensions." + ] + }, + "tags": [ + "image processing", + "code generation", + "module builder", + "filters", + "transformations", + "automation" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"photoEnhancer\",\"operations\":[{\"type\":\"contrast\",\"value\":1.2},{\"type\":\"blur\",\"radius\":5}],\"outputFormat\":\"JavaScript\",\"includeComments\":true}", + "description": "Generate a JavaScript module named 'photoEnhancer' applying contrast increase and blur filter with comments." + }, + { + "inputJson": "{\"moduleName\":\"typeFilter\",\"operations\":[{\"type\":\"resize\",\"width\":800,\"height\":600},{\"type\":\"grayscale\"}],\"outputFormat\":\"TypeScript\",\"includeComments\":false}", + "description": "Create a TypeScript module 'typeFilter' that resizes images and converts them to grayscale without comments." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "image-processing.generateLink", + "description": "Generates a secure, shareable URL link for a provided image or image data. Accepts an image file or base64-encoded image string, processes it (optional resizing or format conversion), uploads it to a temporary or permanent hosting location, and returns a URL link accessible via web browsers.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or image file path to be uploaded for generating a link.", + "required": true, + "defaultValue": "" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Optional width in pixels to resize the image before uploading. Respects aspect ratio; omit to use original width.", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Optional height in pixels to resize the image before uploading. Respects aspect ratio; omit to use original height.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Optional target image format (e.g., png, jpeg, webp). Converts image format before uploading if specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "expireAfterSeconds", + "type": "number", + "description": "Optional expiration time in seconds after which the generated link becomes invalid. If zero or omitted, link does not expire.", + "required": false, + "defaultValue": "0" + }, + { + "name": "publicAccess", + "type": "boolean", + "description": "Whether the generated link allows public access without authentication. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated URL link to access the uploaded image, expiration timestamp if applicable, and metadata about the uploaded image such as dimensions and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a convenient, shareable URL link for an image that may be uploaded from a local source or base64 data. Ideal for sharing images in web apps, chat systems, or documentation without manual upload steps. Supports resizing and format conversion to optimize link content.", + "limitations": "Does not host image data permanently unless configured. Requires network upload capabilities. Does not provide long-term storage guarantees or extensive metadata extraction beyond basic image info. Not for bulk image uploads.", + "examples": [ + "Generate a public link for a user-uploaded photo resized to 800x600 and converted to JPEG.", + "Create an expiring link valid for 3600 seconds for a screenshot image in PNG format.", + "Generate a permanent link for a base64-encoded image without any resizing or format change." + ] + }, + "tags": [ + "image", + "link", + "generate", + "shareable", + "upload", + "base64", + "resize", + "formatConversion" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"resizeWidth\":800,\"resizeHeight\":600,\"format\":\"jpeg\",\"expireAfterSeconds\":0,\"publicAccess\":true}", + "description": "Generate a public link for the image resized to 800x600 as JPEG without expiration." + }, + { + "inputJson": "{\"imageData\":\"/path/to/local/image.png\",\"expireAfterSeconds\":3600,\"publicAccess\":true}", + "description": "Generate a temporary (1 hour) public link from a local PNG file without resizing or format conversion." + }, + { + "inputJson": "{\"imageData\":\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD...\",\"publicAccess\":false}", + "description": "Generate a private link for a base64 JPEG image without resizing and no expiration." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "image-processing.createKPI", + "description": "Generates key performance indicator (KPI) visual summaries by analyzing one or more input images containing graphical data (e.g., charts, dashboards). It extracts numeric and categorical data using image recognition, processes metrics defined by the user, and outputs a structured KPI report highlighting trends and critical values.", + "category": "image-processing", + "parameters": [ + { + "name": "imageInputs", + "type": "array", + "description": "Array of base64-encoded image strings or image URLs containing graphical data to analyze for KPI extraction.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiMetrics", + "type": "array", + "description": "List of KPI metric definitions specifying which values or trends to extract and how to calculate them from the image data (e.g., total sales, growth rate).", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'startDate' and 'endDate' to limit KPI calculations to data within specified time frame.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the KPI report, such as 'json', 'csv', or 'pdf'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeGraphs", + "type": "boolean", + "description": "Whether to include generated graphical visualizations of the KPIs in the output report if supported by the format.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted and calculated KPIs as defined by the user, including numeric results and optionally embedded visualization data if requested." + }, + "aiAgent": { + "useCase": "When an AI agent receives images containing business dashboard charts or performance graphs and needs to automatically extract and quantify KPI values for reporting or decision support, this tool analyzes embedded graphical data and computes the requested metrics into structured summaries.", + "limitations": "This tool cannot process arbitrary photo images without clear graphical data or textual numerics. It depends on clear, well-structured charts or dashboards and may have reduced accuracy on complex or stylized graphics.", + "examples": [ + "Extract total monthly sales and customer growth rate KPIs from a set of sales dashboard screenshots.", + "Generate a PDF report of quarterly revenue and profit margin KPIs based on uploaded chart images.", + "Calculate average daily active users and churn rate from app analytics screenshots between two specified dates." + ] + }, + "tags": [ + "image-processing", + "kpi", + "analytics", + "dashboard", + "business-intelligence", + "data-extraction", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"imageInputs\":[\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\"],\"kpiMetrics\":[{\"name\":\"totalSales\",\"calculation\":\"sum\"},{\"name\":\"growthRate\",\"calculation\":\"percentageChange\"}],\"outputFormat\":\"json\",\"includeGraphs\":true}", + "description": "Extract total sales and growth rate KPIs from a sales chart image, returning a JSON report with visualizations." + }, + { + "inputJson": "{\"imageInputs\":[\"https://example.com/dashboard1.png\",\"https://example.com/dashboard2.png\"],\"kpiMetrics\":[{\"name\":\"customerChurn\",\"calculation\":\"average\"}],\"dateRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\"},\"outputFormat\":\"pdf\",\"includeGraphs\":true}", + "description": "Generate a PDF KPI report of average customer churn for Q1 2023 from multiple dashboard images." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "image-processing.createCredential", + "description": "This tool generates a secure digital credential image used for identity verification and access control. It accepts user information and design preferences, composes a credential card with embedded QR code and security features, and outputs a high-resolution image file suitable for printing or digital display.", + "category": "image-processing", + "parameters": [ + { + "name": "userName", + "type": "string", + "description": "Full name of the credential holder to display on the card.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user, used to encode in the QR code.", + "required": true, + "defaultValue": "" + }, + { + "name": "validFrom", + "type": "string", + "description": "Start date of credential validity in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "validTo", + "type": "string", + "description": "Expiry date of credential validity in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Credential design template identifier to use for layout and colors.", + "required": false, + "defaultValue": "default" + }, + { + "name": "includePhoto", + "type": "boolean", + "description": "Whether to include the user's profile photo on the credential if provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "photoData", + "type": "string", + "description": "Base64-encoded image data for the user's photo, required if includePhoto is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, e.g., PNG, JPEG, or PDF.", + "required": false, + "defaultValue": "PNG" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated credential image as a base64 string along with metadata such as format and resolution." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create personalized digital or printable ID credentials with embedded security elements including QR codes based on user data and templated layouts. Ideal for organizations issuing employee badges, event passes, or membership cards.", + "limitations": "This tool does not verify the authenticity of input user data, nor does it connect to backend identity validation services. It only produces the visual credential image; separate systems are required for credential issuance management or validation.", + "examples": [ + "Create a staff ID card with photo and valid dates for access control.", + "Generate a simplified membership card with user name and embedded QR linking to profile.", + "Produce a printable event pass with custom template and expiry date." + ] + }, + "tags": [ + "image-processing", + "credential", + "security", + "qr-code", + "identity", + "digital-id", + "badge", + "access-control" + ], + "examples": [ + { + "inputJson": "{\"userName\":\"Jane Doe\",\"userId\":\"JD123456\",\"validFrom\":\"2024-01-01\",\"validTo\":\"2024-12-31\",\"templateId\":\"corporateBlue\",\"includePhoto\":true,\"photoData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"outputFormat\":\"PNG\"}", + "description": "Create a corporate blue ID card for Jane Doe with photo and 2024 validity." + }, + { + "inputJson": "{\"userName\":\"Event Attendee\",\"userId\":\"EVT7890\",\"templateId\":\"eventPass\",\"includePhoto\":false,\"outputFormat\":\"PDF\"}", + "description": "Generate a PDF event pass without photo for an attendee." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "image-processing.createArticle", + "description": "Creates a visually formatted article image by combining text content and optional images into a structured layout. Inputs include article title, body text, author name, optional header and inline images, and style preferences. The tool outputs a high-resolution image file with the composed article suitable for social media or digital publishing.", + "category": "image-processing", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the article to be prominently displayed.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "The full textual content of the article body.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the article's author, displayed in the byline.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "headerImageUrl", + "type": "string", + "description": "URL of an optional header image to include at the top of the article image.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "inlineImageUrls", + "type": "array", + "description": "An array of URLs for images to embed inline within the article layout.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family to use for all textual content (e.g., Arial, Times New Roman).", + "required": false, + "defaultValue": "\"Arial\"" + }, + { + "name": "fontSize", + "type": "number", + "description": "Base font size in points for the article text body.", + "required": false, + "defaultValue": "14" + }, + { + "name": "imageWidth", + "type": "number", + "description": "Width in pixels of the generated article image.", + "required": false, + "defaultValue": "800" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color for the article image in hex code (e.g., #FFFFFF).", + "required": false, + "defaultValue": "\"#FFFFFF\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Image file format for output: e.g., PNG or JPEG.", + "required": false, + "defaultValue": "\"PNG\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article image encoded as a base64 string and metadata about the image file format and dimensions, suitable for immediate use or saving." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to generate visually appealing article previews or social media posts by converting text articles with optional images into a single composite image. It is ideal for content marketing, newsletters, or digital publications that require image-based article presentations.", + "limitations": "The tool does not support complex pagination, interactive elements, or dynamic content updates. Text layouts are basic and may not handle very long articles optimally. It does not extract article content from HTML or PDFs — text must be provided.", + "examples": [ + "Create an image article with a title, an author byline, a body paragraph, and a header image URL.", + "Generate a social media article preview image using specified font, colors, and multiple inline images.", + "Produce a clean article image with custom dimensions and JPEG format for email newsletters." + ] + }, + "tags": [ + "image-processing", + "article-creation", + "document-visualization", + "text-to-image", + "content-marketing", + "digital-publishing" + ], + "examples": [ + { + "inputJson": "{\"title\":\"The Future of AI\",\"bodyText\":\"Artificial Intelligence is transforming industries worldwide. This article explores emerging trends and challenges.\",\"authorName\":\"Jane Doe\",\"headerImageUrl\":\"https://example.com/images/ai-future.jpg\",\"inlineImageUrls\":[\"https://example.com/images/chart1.png\"],\"fontFamily\":\"Helvetica\",\"fontSize\":16,\"imageWidth\":900,\"backgroundColor\":\"#FAFAFA\",\"outputFormat\":\"PNG\"}", + "description": "Create an article image titled 'The Future of AI' with an author name, a header image, one inline image, Helvetica font, and a light background." + }, + { + "inputJson": "{\"title\":\"Healthy Eating Tips\",\"bodyText\":\"Maintaining a balanced diet is key to good health. Here are top 10 tips for nutritious meals.\",\"authorName\":\"John Smith\",\"fontFamily\":\"Georgia\",\"fontSize\":14,\"imageWidth\":800,\"backgroundColor\":\"#FFFFFF\",\"outputFormat\":\"JPEG\"}", + "description": "Generate a JPEG article image with a simple white background featuring 'Healthy Eating Tips' in Georgia font without images." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "image-processing.createQuery", + "description": "Generates a structured query string to retrieve or filter images based on specified visual attributes such as color, shape, size, and content labels. Accepts an object of desired image criteria and produces a well-formed query string usable in image database search APIs or image recognition systems.", + "category": "image-processing", + "parameters": [ + { + "name": "color", + "type": "string", + "description": "Primary color to filter images by, e.g., 'red', 'blue'. Leave empty for no color filter.", + "required": false, + "defaultValue": "" + }, + { + "name": "shape", + "type": "string", + "description": "Shape attribute to filter images, e.g., 'circle', 'rectangle'. Leave empty for no shape filter.", + "required": false, + "defaultValue": "" + }, + { + "name": "minSize", + "type": "number", + "description": "Minimum size in pixels (width or height) an image should have.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum size in pixels (width or height) an image should have.", + "required": false, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "Array of content labels (keywords) to filter images by, e.g., ['cat','beach'].", + "required": false, + "defaultValue": "" + }, + { + "name": "matchAllLabels", + "type": "boolean", + "description": "If true, only images containing all labels are matched; otherwise, any label matches.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string under 'queryString', suitable for use in image retrieval APIs." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to construct precise image search queries programmatically, based on visual attributes or semantic labels, to retrieve relevant images from databases or recognition systems. It abstracts the complexity of query construction from raw filter parameters.", + "limitations": "It cannot perform the actual image retrieval or analysis, only constructs query strings. It also assumes compatibility with a query syntax that supports the given attributes.", + "examples": [ + "Find images with red color and circle shape.", + "Retrieve images labeled with 'dog' or 'park' with minimum size 500 pixels.", + "Create a query for images with all specified labels 'sunset', 'beach' and maximum size 1024 pixels." + ] + }, + "tags": [ + "image", + "query", + "search", + "filter", + "visual-attributes", + "labels" + ], + "examples": [ + { + "inputJson": "{\"color\":\"red\",\"shape\":\"circle\",\"minSize\":200}", + "description": "Generate a query to find red, circular images larger than 200 pixels." + }, + { + "inputJson": "{\"labels\":[\"cat\",\"outdoor\"],\"matchAllLabels\":true}", + "description": "Create a query for images containing both 'cat' and 'outdoor' labels." + }, + { + "inputJson": "{\"color\":\"\",\"shape\":\"rectangle\",\"maxSize\":800,\"labels\":[\"architecture\"]}", + "description": "Query for rectangular architecture images smaller than 800 pixels." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "image-processing.createTable", + "description": "This tool accepts an image input containing a tabular structure (e.g., a photo or screenshot of a table). It processes the image to detect table boundaries, extracts text from each cell via OCR, and outputs a structured data table in JSON format with rows and columns representing the table content.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or URL of the image containing the table.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code to optimize OCR processing (e.g., 'eng' for English).", + "required": false, + "defaultValue": "eng" + }, + { + "name": "detectBorders", + "type": "boolean", + "description": "Whether to detect and use visible cell borders to identify table structure.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minCellConfidence", + "type": "number", + "description": "Minimum confidence threshold (0-1) for OCR cell text to be included.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "imageDpi", + "type": "number", + "description": "Optional image resolution in DPI to enhance OCR accuracy if known.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the table with rows as arrays of cell text strings and metadata including row and column counts and optional cell bounding box info." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert images of tables, such as photos or scanned documents, into structured machine-readable tables for data extraction, analysis, or integration with other systems. Useful when original tabular data is only available in image form.", + "limitations": "Cannot guarantee perfect extraction if table is very distorted, handwritten, or has complex merged cells. Accuracy depends on image quality and language support of OCR engine.", + "examples": [ + "Extract table data from a photographed sales report.", + "Parse a screenshot of a spreadsheet containing data rows.", + "Convert a scanned image of a printed schedule table into JSON format." + ] + }, + "tags": [ + "image-processing", + "OCR", + "table-extraction", + "data-extraction", + "image-to-data", + "document-analysis" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\"language\":\"eng\",\"detectBorders\":true}", + "description": "Extracts data from an English table image that includes clear cell borders to produce a JSON structured table." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/images/table_photo.jpg\",\"minCellConfidence\":0.8}", + "description": "Processes a photograph of a table from a URL, ignoring low-confidence text cells below 80% confidence." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "notifications.analyzeThread", + "description": "Analyzes a communication thread composed of multiple messages to extract insights such as sentiment trends, key topics, participant activity, and response times. Accepts an array of message objects with metadata, performs natural language processing and statistical analysis, and outputs a detailed summary report with actionable metrics.", + "category": "notifications", + "parameters": [ + { + "name": "threadMessages", + "type": "array", + "description": "An array of message objects representing the conversation thread. Each message includes text content, sender ID, timestamp, and optional metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag to determine whether to perform sentiment analysis on the messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopicExtraction", + "type": "boolean", + "description": "Flag to determine whether to extract key topics discussed in the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "participantDetails", + "type": "object", + "description": "Optional mapping of participant IDs to user details to enhance analysis and reporting.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone identifier used to normalize timestamps for response time calculations.", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of key topics to extract from the thread.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including overall sentiment trend, identified key topics with relevance scores, participant activity statistics (message counts and response times), and a summary of notable patterns within the thread." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the dynamics and content of a communication thread in notifications or messaging systems. It helps identify emotional tone, important discussion themes, participant engagement, and responsiveness, useful for monitoring, summarizing, or alerting about conversation threads.", + "limitations": "The tool relies on textual content and metadata; it cannot analyze non-text media or infer context beyond supplied messages. Sentiment and topic extraction accuracy depends on the language and domain of the messages.", + "examples": [ + "Analyze the latest customer support thread to identify sentiment trends and key issues.", + "Provide a summary analysis of the project communication thread, highlighting active participants and main topics.", + "Determine response time patterns and emotional tone in a notification message thread for quality monitoring." + ] + }, + "tags": [ + "notifications", + "analysis", + "sentiment", + "topicExtraction", + "thread", + "communication", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"threadMessages\":[{\"text\":\"Hi team, the deployment is delayed.\",\"senderId\":\"user1\",\"timestamp\":\"2024-06-10T09:00:00Z\"},{\"text\":\"Thanks for the update. Any new ETA?\",\"senderId\":\"user2\",\"timestamp\":\"2024-06-10T09:05:00Z\"},{\"text\":\"We expect to finish by Friday.\",\"senderId\":\"user1\",\"timestamp\":\"2024-06-10T09:10:00Z\"}],\"includeSentimentAnalysis\":true,\"includeTopicExtraction\":true,\"timeZone\":\"UTC\",\"maxTopics\":3}", + "description": "Analyzing a short team communication thread for sentiment and key topics with default settings." + }, + { + "inputJson": "{\"threadMessages\":[{\"text\":\"The customer is unhappy with the service.\",\"senderId\":\"agent1\",\"timestamp\":\"2024-06-09T15:30:00Z\"},{\"text\":\"We need to escalate this issue immediately.\",\"senderId\":\"agent2\",\"timestamp\":\"2024-06-09T15:35:00Z\"}],\"includeSentimentAnalysis\":true,\"includeTopicExtraction\":false,\"participantDetails\":{\"agent1\":{\"name\":\"Alice\"},\"agent2\":{\"name\":\"Bob\"}},\"timeZone\":\"America/New_York\"}", + "description": "Analyzing customer support thread focusing on sentiment analysis and providing participant details." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "notifications.analyzeHTML", + "description": "Analyzes HTML content intended for notification messages or alerts by extracting key elements such as text content, links, images, and formatting details. It identifies potential issues including missing alt tags, broken links, or unoptimized content, and produces a structured summary report to help improve notification rendering and accessibility.", + "category": "notifications", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML string of the notification or alert message to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkLinks", + "type": "boolean", + "description": "Indicates whether to validate hyperlinks in the HTML for accessibility and broken URLs.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkImages", + "type": "boolean", + "description": "Indicates whether to analyze image elements for alt text presence and size optimization.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxImageSizeKb", + "type": "number", + "description": "Maximum recommended image size in kilobytes, to flag oversized images.", + "required": false, + "defaultValue": "100" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "If true, extracts and returns all hyperlinks found in the HTML.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A detailed report object containing extracted text snippets, arrays of links and images, warnings about accessibility issues, and suggested improvements for notification HTML content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate or validate the HTML content that will be used in notification messages, to ensure quality, accessibility, and proper formatting before sending alerts or notifications to end users. It is useful for detecting common HTML issues that could affect the display or user experience of notifications.", + "limitations": "This tool does not perform live URL validation beyond basic format checks and does not modify HTML content. It cannot fully guarantee notification rendering in all email clients or platforms since rendering can differ.", + "examples": [ + "Analyze an HTML snippet of a notification email to identify accessibility issues.", + "Extract all links from an alert message's HTML content before sending.", + "Check images in notification content to ensure they have alt text and are optimized." + ] + }, + "tags": [ + "analysis", + "html", + "notifications", + "accessibility", + "validation", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"<div><p>Alert: Your order has shipped!</p><img src='package.png' alt='Package Image'><a href='https://tracking.example.com'>Track your order</a></div>\",\"checkLinks\":true,\"checkImages\":true,\"maxImageSizeKb\":100,\"extractLinks\":true}", + "description": "Analyze an HTML notification with text, image, and a tracking link to identify content and accessibility concerns." + }, + { + "inputJson": "{\"htmlContent\":\"<div><h1>System Update</h1><p>Please <a href='http://example.com/update'>click here</a> to update.<img src='update.png'></p></div>\",\"checkLinks\":true,\"checkImages\":true,\"maxImageSizeKb\":50,\"extractLinks\":true}", + "description": "Analyze a notification HTML with missing image alt text and link validation for system update alert." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "notifications.analyzeReference", + "description": "Analyzes a provided reference text or URL to extract key informational elements and assess its relevance and credibility for notification content purposes. Accepts textual references or URLs, processes linguistic and metadata features, and outputs a structured summary with relevance and credibility scores to assist in crafting informed alerts.", + "category": "notifications", + "parameters": [ + { + "name": "referenceContent", + "type": "string", + "description": "The textual content or URL of the reference to be analyzed for notification preparation.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of the reference content: 'text' for raw text input or 'url' for web resource.", + "required": true, + "defaultValue": "text" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the reference content, used to optimize analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "analyzeDepth", + "type": "number", + "description": "Depth level of analysis from 1 (basic keywords) to 5 (detailed semantic and metadata extraction).", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis in the output summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report containing extracted highlights, key topics, relevance score (0-1), credibility score (0-1), and optional sentiment summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to extract and evaluate important information from a textual or URL reference to generate relevant and credible notifications or alerts for users. Helps ensure notification content is based on analyzed and verified information rather than raw or unfiltered data.", + "limitations": "Cannot access or analyze content behind paywalls or restricted access without credentials. Does not generate notifications itself, only provides analysis. Sentiment analysis is language-dependent and may be inaccurate for less common languages.", + "examples": [ + "Analyze the credibility and key facts of this news article URL for a weather alert notification.", + "Extract main points and determine relevance of this technical reference text before sending a system update notification.", + "Provide a summary with sentiment about this blog post to include in a marketing alert notification." + ] + }, + "tags": [ + "analysis", + "notification", + "reference", + "text processing", + "credibility assessment", + "metadata extraction", + "sentiment analysis" + ], + "examples": [ + { + "inputJson": "{\"referenceContent\":\"https://www.example-news.com/article/weather-update\",\"contentType\":\"url\",\"language\":\"en\",\"analyzeDepth\":4,\"includeSentiment\":true}", + "description": "Analyzing a news article URL about weather updates for notification relevance and sentiment." + }, + { + "inputJson": "{\"referenceContent\":\"Recent system logs show increased error rates on server nodes.\",\"contentType\":\"text\",\"language\":\"en\",\"analyzeDepth\":3,\"includeSentiment\":false}", + "description": "Analyzing system log excerpt text to extract issues for alert notification." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "notifications.analyzeSession", + "description": "Analyzes a notification session by processing session metadata, notification delivery events, and user interaction data to generate a detailed analytics report. Inputs include session ID, optional time range, and filters for notification status or type. Outputs provide summary statistics, engagement metrics, and event timelines for the session.", + "category": "notifications", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier of the notification session to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start timestamp to filter session events (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end timestamp to filter session events (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationTypes", + "type": "array", + "description": "List of notification types to include in the analysis (e.g., ['email', 'sms']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeFailed", + "type": "boolean", + "description": "Whether to include failed notification attempts in the analysis.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing session analytics including total notifications sent, delivered, failed, user engagement metrics such as click-through rate and response times, plus an event timeline." + }, + "aiAgent": { + "useCase": "Use this tool when a detailed performance report on a specific notification session is needed, including delivery success rates, user interactions, and temporal event analysis to inform optimization of notification strategies.", + "limitations": "Does not perform real-time monitoring; analysis is limited to past session data already recorded and available. Does not provide predictive analytics or automatic recommendations.", + "examples": [ + "Analyze the notification session 'abc123' to understand delivery and engagement performance over the last week.", + "Provide statistics on failed vs successful email notifications in session 'session456'.", + "Summarize user interactions and response times for SMS notifications in session 'notif789' from January 1 to January 10." + ] + }, + "tags": [ + "notifications", + "analytics", + "session", + "engagement", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"session_001\"}", + "description": "Basic analysis for session 'session_001' without time filtering or extra filters." + }, + { + "inputJson": "{\"sessionId\":\"session_002\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T23:59:59Z\",\"notificationTypes\":[\"email\",\"push\"]}", + "description": "Analyzes 'session_002' focusing on email and push notifications between May 1 and May 7, 2024." + }, + { + "inputJson": "{\"sessionId\":\"session_003\",\"includeFailed\":true}", + "description": "Full session analysis for 'session_003' including failed notifications." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "notifications.analyzeHeading", + "description": "This tool analyzes notification message headings to determine their urgency, tone, and category. It accepts a heading text string and optional context parameters, then processes linguistic and semantic features to output an analysis including urgency level, sentiment, and suggested notification category to aid in message prioritization and routing.", + "category": "notifications", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The notification heading or title text to analyze for tone, urgency, and category.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "object", + "description": "Optional contextual information about the notification environment (e.g., user preferences, notification channel).", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the heading text to improve analysis accuracy (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the heading analysis including urgency (e.g., low, medium, high), sentiment (positive, neutral, negative), and suggested notification category (e.g., alert, reminder, promotional)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the priority and tone of notification headings to better tailor alerting strategies, such as deciding which notifications require immediate user attention or categorizing message types for delivery channels. It helps optimize notification handling by providing an automated assessment of heading characteristics.", + "limitations": "It cannot analyze full notification bodies or attachments, nor replace human judgment for critical alerts. Analysis may be less accurate for very short, ambiguous, or highly domain-specific headings.", + "examples": [ + "Analyze the heading to determine if the notification is urgent or can be deferred.", + "Determine the sentiment and category of a notification title for better filtering.", + "Evaluate if a heading matches a promotional or transactional notification type." + ] + }, + "tags": [ + "notification", + "analysis", + "heading", + "urgency", + "sentiment", + "categorization" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Server CPU usage is critically high! Immediate action required.\"}", + "description": "Analyzing a critical system alert heading for urgency and category." + }, + { + "inputJson": "{\"headingText\":\"Don't miss our summer sale starting tomorrow!\"}", + "description": "Analyzing a promotional notification heading to classify its tone and type." + }, + { + "inputJson": "{\"headingText\":\"Your monthly report is ready to view.\"}", + "description": "Analyzing a routine notification heading to determine its urgency and category." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "notifications.analyzeThreat", + "description": "This tool accepts detailed threat data including type, source, severity, and context. It analyzes the threat using heuristic and context-aware algorithms to determine risk level, potential impact, and recommended alert severity. It outputs an analysis report summarizing assessment results and suggested notification actions.", + "category": "notifications", + "parameters": [ + { + "name": "threatType", + "type": "string", + "description": "The category or type of the detected threat (e.g., malware, phishing, DDoS).", + "required": true, + "defaultValue": "" + }, + { + "name": "threatSource", + "type": "string", + "description": "Origin or source of the threat (e.g., IP address, domain, email sender).", + "required": false, + "defaultValue": "" + }, + { + "name": "severityScore", + "type": "number", + "description": "Initial severity score assigned to the threat on a scale from 0 to 10.", + "required": false, + "defaultValue": "0" + }, + { + "name": "contextData", + "type": "object", + "description": "Additional contextual information about the threat such as affected systems, detection method, and timestamps.", + "required": false, + "defaultValue": "" + }, + { + "name": "historicalThreatData", + "type": "array", + "description": "Array of past threat records for pattern comparison and trend analysis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object consisting of a detailed threat analysis report including riskLevel, impactAssessment, confidenceScore, and recommended notification priority and message." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or semi-structured threat data that needs expert analysis to evaluate risk and decide notification urgency. Useful in security operation centers (SOC) and automated alerting systems to prioritize responses based on threat context.", + "limitations": "Does not provide real-time threat mitigation or automated blocking actions. Analysis quality depends on input data completeness and accuracy. Not a replacement for comprehensive security incident response.", + "examples": [ + "Analyze a phishing attempt detected in email logs with medium severity and contextual data about affected users.", + "Determine alert priority for a detected malware outbreak with known sources and previous incidents for comparison.", + "Evaluate a suspicious network intrusion from an unknown IP with minimal initial data." + ] + }, + "tags": [ + "notifications", + "threat analysis", + "security", + "alert prioritization", + "risk assessment" + ], + "examples": [ + { + "inputJson": "{\"threatType\":\"phishing\",\"threatSource\":\"suspicious-email@example.com\",\"severityScore\":6,\"contextData\":{\"affectedUsers\":10,\"detectionTimestamp\":\"2024-06-10T14:00:00Z\"}}", + "description": "Analyze a phishing threat detected in email with medium severity and contextual user impact data." + }, + { + "inputJson": "{\"threatType\":\"malware\",\"threatSource\":\"192.168.1.100\",\"severityScore\":8,\"contextData\":{\"affectedSystems\":[\"server1\",\"server2\"],\"detectionMethod\":\"antivirus\"},\"historicalThreatData\":[{\"threatType\":\"malware\",\"severityScore\":7,\"outcome\":\"contained\"}]}", + "description": "Analyze a malware infection from a known IP including historical data to recommend alert priority." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "notifications.uploadCSV", + "description": "Uploads a CSV file containing notification contacts or messages, processes and validates its content, and stores it for subsequent bulk notification dispatching. Accepts CSV input either as a file path or raw CSV string, parses it to extract notification targets and messages, and returns a summary of accepted and rejected entries.", + "category": "notifications", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "Raw CSV content as string to be uploaded and processed.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "File system path to the CSV file to upload. Either filePath or csvContent must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate values in CSV. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the CSV includes a header row with column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxEntries", + "type": "number", + "description": "Maximum number of notification entries to process from the CSV. Prevents overly large uploads.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "Processing result including counts of total, accepted, and rejected entries, and details on errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when needing to bulk upload notification recipient data or messages in CSV format for batch sending. It validates and prepares data from CSV sources for further notification processing or scheduling.", + "limitations": "Cannot send notifications directly; only uploads and validates CSV data. Requires CSV format to adhere to expected column structure for notification data. Complex validation rules (e.g., message personalization) must be handled downstream.", + "examples": [ + "Upload a CSV file with email addresses and messages to prepare batch notification targets.", + "Process a raw CSV string input containing phone numbers and notification texts for bulk SMS dispatch.", + "Upload a CSV with a custom delimiter and no header row for importing notification lists." + ] + }, + "tags": [ + "notifications", + "upload", + "CSV", + "bulk", + "contacts", + "messages", + "import" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/path/to/notifications.csv\",\"delimiter\":\",\",\"hasHeader\":true,\"maxEntries\":500}", + "description": "Uploading a CSV file from disk with default comma delimiter and header row, limiting to 500 entries." + }, + { + "inputJson": "{\"csvContent\":\"email,message\\njohn@example.com,Hello John\\njane@example.com,Hi Jane\",\"hasHeader\":true}", + "description": "Uploading raw CSV content as string with header row indicating fields 'email' and 'message'." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "notifications.formatSentence", + "description": "Formats an input sentence by incorporating dynamic data and optional styling for use in notifications. Accepts a base sentence, key-value data to replace placeholders, and formatting options. Produces a fully formatted, human-readable notification sentence string.", + "category": "notifications", + "parameters": [ + { + "name": "baseSentence", + "type": "string", + "description": "The sentence template containing placeholders to be replaced with dynamic data (e.g., 'Hello, {user}!').", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Key-value pairs where keys match the placeholders in the baseSentence, values are the replacement text.", + "required": true, + "defaultValue": "{}" + }, + { + "name": "capitalizeFirstLetter", + "type": "boolean", + "description": "Whether to capitalize the first letter of the formatted sentence.", + "required": false, + "defaultValue": "false" + }, + { + "name": "appendPeriod", + "type": "boolean", + "description": "Whether to append a period at the end of the sentence if not present.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "A single formatted sentence string with placeholders replaced and optional formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a clear, user-friendly notification sentence from a template and dynamic data values. It helps produce consistent notification text by replacing placeholders with actual data and applying simple formatting for readability.", + "limitations": "This tool does not support advanced natural language generation or localization. It only replaces placeholders and applies basic stylistic options like capitalization and punctuation.", + "examples": [ + "Format a welcome notification sentence with a username.", + "Create an alert message by inserting a filename and error description.", + "Generate a summary sentence that capitalizes the first letter and ensures proper ending punctuation." + ] + }, + "tags": [ + "formatting", + "notifications", + "templating", + "text", + "sentence", + "replacement", + "dynamicContent" + ], + "examples": [ + { + "inputJson": "{\"baseSentence\":\"Hello, {userName}! Your order #{orderId} is shipped.\",\"data\":{\"userName\":\"Alice\",\"orderId\":\"12345\"},\"capitalizeFirstLetter\":true,\"appendPeriod\":true}", + "description": "Format a shipment notification with username and order id, capitalize the first letter and append a period." + }, + { + "inputJson": "{\"baseSentence\":\"alert: {error} detected in {module}\",\"data\":{\"error\":\"Overload\",\"module\":\"Engine\"},\"capitalizeFirstLetter\":true,\"appendPeriod\":false}", + "description": "Format an alert message about an engine error, capitalize the first letter but do not append a period." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "notifications.formatCSV", + "description": "This tool accepts an array of notification objects and formats them into a CSV string suitable for CSV file export or transmission. It processes the input data by serializing selected notification fields into properly escaped CSV format, supporting configurable delimiter and inclusion of a header row. It outputs a single string representing the complete CSV content.", + "category": "notifications", + "parameters": [ + { + "name": "notifications", + "type": "array", + "description": "Array of notification objects to be formatted into CSV. Each object must contain consistent keys.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "Array of strings specifying which fields of the notifications to include as columns in the CSV, in order.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include a CSV header row with the fields names as column titles.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "String to use as the CSV delimiter between fields, e.g., comma \",\" or semicolon \";\".", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'csvContent' which is the CSV-formatted string of the given notifications data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to convert notification data arrays into a CSV formatted string for reporting, exporting, or sending as an attachment, where raw JSON is not desirable. It helps structure notification data into an industry-standard delimited text format suitable for emails or other notifications.", + "limitations": "This tool does not parse CSV input, nor does it handle extremely large datasets that may require streaming. It only formats flat notifications with specified fields; nested objects must be flattened externally.", + "examples": [ + "Format a batch of notifications into CSV for an email report.", + "Convert selected fields from notification objects to a semicolon-delimited CSV string.", + "Generate CSV data that includes a header row for downstream processing." + ] + }, + "tags": [ + "notifications", + "CSV", + "formatting", + "export", + "alerts", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"notifications\":[{\"id\":1,\"type\":\"email\",\"message\":\"Welcome!\",\"timestamp\":\"2024-06-01T12:00:00Z\"},{\"id\":2,\"type\":\"sms\",\"message\":\"Alert!\",\"timestamp\":\"2024-06-01T12:05:00Z\"}],\"fields\":[\"id\",\"type\",\"message\"],\"includeHeader\":true,\"delimiter\":\",\"}", + "description": "Format an array of notification objects into CSV string including header with comma delimiter." + }, + { + "inputJson": "{\"notifications\":[{\"id\":101,\"level\":\"error\",\"text\":\"Disk full\",\"time\":\"2024-06-01T13:00:00Z\"}],\"fields\":[\"id\",\"level\",\"text\",\"time\"],\"includeHeader\":false,\"delimiter\":\";\"}", + "description": "Generate a semicolon-delimited CSV string without header for an error notification." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "notifications.draftWord", + "description": "This tool drafts a concise notification message focusing on a single keyword or word provided as input. It accepts a target word, context about the notification purpose, and optionally desired tone and length limits, then generates a polished notification draft centered around the word. Output is a textual notification message draft suitable for alert systems.", + "category": "notifications", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single focus word or keyword for the notification content.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Brief context or purpose of the notification to shape the draft message.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the message, e.g., formal, casual, urgent, friendly.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the draft message in characters.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted notification message text." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a clear, focused notification message that revolves around a specific keyword or concept. Ideal for creating alerts, reminders, or announcements that highlight a single important word, ensuring the notification succinctly communicates the key point.", + "limitations": "The tool focuses on drafting short notifications based on one word and context; it cannot generate multi-topic notifications or replace full content writing or detailed messaging strategies.", + "examples": [ + "Create a notification mentioning the word 'deadline' for an upcoming project submission alert.", + "Draft a friendly reminder notification with the focus word 'maintenance' to inform users about scheduled downtime.", + "Generate a brief urgent notification around the word 'security' to alert users about a potential issue." + ] + }, + "tags": [ + "notifications", + "drafting", + "word-based", + "alerts", + "message generation", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"word\":\"deadline\",\"context\":\"Project submission due next Monday\",\"tone\":\"urgent\",\"maxLength\":150}", + "description": "Draft an urgent notification focused on the word 'deadline' to alert users about a project submission due date." + }, + { + "inputJson": "{\"word\":\"maintenance\",\"context\":\"Scheduled system maintenance tomorrow at 2 AM\",\"tone\":\"friendly\",\"maxLength\":120}", + "description": "Create a friendly reminder notification with the focus word 'maintenance' for upcoming system downtime." + }, + { + "inputJson": "{\"word\":\"security\",\"context\":\"Potential security vulnerability detected\",\"tone\":\"formal\",\"maxLength\":180}", + "description": "Generate a formal notification draft focused on 'security' to inform stakeholders about a vulnerability." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "notifications.formatInvoice", + "description": "Formats an invoice notification message based on invoice details and configuration options. Accepts invoice data including recipient info, line items, amounts, and optional branding parameters, then produces a formatted notification string suitable for sending via email, SMS, or other notification channels.", + "category": "notifications", + "parameters": [ + { + "name": "invoiceId", + "type": "string", + "description": "Unique identifier of the invoice to format", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "Name of the invoice recipient to personalize the message", + "required": true, + "defaultValue": "" + }, + { + "name": "lineItems", + "type": "array", + "description": "Array of objects representing items billed in the invoice, each with description, quantity, and price", + "required": true, + "defaultValue": "" + }, + { + "name": "totalAmount", + "type": "number", + "description": "Total amount due on the invoice", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date of the invoice in ISO 8601 format", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for amounts (e.g., USD, EUR)", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includePaymentLink", + "type": "boolean", + "description": "Whether to include a payment link in the notification", + "required": false, + "defaultValue": "true" + }, + { + "name": "paymentLinkUrl", + "type": "string", + "description": "URL for paying the invoice if includePaymentLink is true", + "required": false, + "defaultValue": "" + }, + { + "name": "brandName", + "type": "string", + "description": "Name of the brand or company sending the invoice", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the notification message (e.g., en, es)", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted notification message string under 'formattedMessage' and a subject line under 'subject'" + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a well-structured, human-readable notification message for an invoice to send via email, SMS, or push notifications. It helps automate invoice communication by formatting essential invoice details clearly and optionally including payment links and branding.", + "limitations": "This tool does not send notifications itself, nor does it generate invoices or perform calculations. It also does not support complex multilingual formatting beyond simple language choice.", + "examples": [ + "Format an invoice message to send an email reminding customer John Doe about their upcoming invoice due in 10 days.", + "Generate a concise SMS invoice notification including payment link for a small business client.", + "Create a branded invoice notification in Spanish with detailed itemization for a corporate client." + ] + }, + "tags": [ + "notifications", + "invoice", + "formatting", + "billing", + "payment", + "alerts", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"invoiceId\":\"INV12345\",\"recipientName\":\"John Doe\",\"lineItems\":[{\"description\":\"Web Design Services\",\"quantity\":1,\"price\":1500},{\"description\":\"Hosting (12 months)\",\"quantity\":1,\"price\":120}],\"totalAmount\":1620,\"dueDate\":\"2024-07-15\",\"currency\":\"USD\",\"includePaymentLink\":true,\"paymentLinkUrl\":\"https://pay.example.com/INV12345\",\"brandName\":\"Creative Agency\",\"language\":\"en\"}", + "description": "Format a detailed invoice notification message including line items and payment link for John Doe." + }, + { + "inputJson": "{\"invoiceId\":\"2024-0009\",\"recipientName\":\"Maria Gonzalez\",\"lineItems\":[{\"description\":\"Consultoria tecnica\",\"quantity\":3,\"price\":400}],\"totalAmount\":1200,\"dueDate\":\"2024-07-01\",\"currency\":\"EUR\",\"includePaymentLink\":false,\"brandName\":\"Tech Solutions\",\"language\":\"es\"}", + "description": "Format an invoice notification in Spanish without payment link for client Maria Gonzalez." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "notifications.composeParagraph", + "description": "This tool generates a well-structured notification paragraph based on given inputs such as recipient type, message purpose, urgency level, and optional call-to-action. It processes these parameters to create a coherent, clear notification paragraph that can be used in emails, alerts, or messaging platforms.", + "category": "notifications", + "parameters": [ + { + "name": "recipientType", + "type": "string", + "description": "The type or role of the notification recipient (e.g., user, admin, customer).", + "required": true, + "defaultValue": "" + }, + { + "name": "messagePurpose", + "type": "string", + "description": "The main purpose of the notification (e.g., alert, reminder, update).", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "The urgency level of the notification: low, medium, high, or critical.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "importantDetails", + "type": "string", + "description": "Key information or details to be included in the notification paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call-to-action phrase or instruction to include in the paragraph.", + "required": false, + "defaultValue": "" + }, + { + "name": "formalTone", + "type": "boolean", + "description": "Whether to use a formal tone in the paragraph. Defaults to false for a conversational tone.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification paragraph as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, context-aware notification messages tailored for different recipients and purposes. It helps convert structured information about notifications into human-friendly paragraphs suitable for emails, alerts, or messaging systems.", + "limitations": "This tool does not send notifications or handle multiple languages beyond English. It also cannot customize layout formatting beyond plain text paragraph generation.", + "examples": [ + "Compose a critical alert paragraph for admins about a system outage including a call to check status page.", + "Generate a reminder notification paragraph for customers with medium urgency to update their payment info.", + "Create an update notification for users with low urgency and a formal tone informing about new feature release." + ] + }, + "tags": [ + "notification", + "compose", + "message", + "alerts", + "communication", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"recipientType\":\"admin\",\"messagePurpose\":\"alert\",\"urgencyLevel\":\"critical\",\"importantDetails\":\"The main server is down causing service disruption.\",\"callToAction\":\"Please check the status page immediately.\",\"formalTone\":false}", + "description": "Compose a critical alert paragraph for admins about a system outage with call to action." + }, + { + "inputJson": "{\"recipientType\":\"customer\",\"messagePurpose\":\"reminder\",\"urgencyLevel\":\"medium\",\"importantDetails\":\"Your payment information is outdated and must be updated to avoid service interruption.\",\"callToAction\":\"Please update your payment details in your account settings.\",\"formalTone\":false}", + "description": "Generate a reminder notification paragraph for customers to update payment info." + }, + { + "inputJson": "{\"recipientType\":\"user\",\"messagePurpose\":\"update\",\"urgencyLevel\":\"low\",\"importantDetails\":\"New feature release available now with enhanced dashboard.\",\"callToAction\":\"\",\"formalTone\":true}", + "description": "Create a formal update notification paragraph for users about a new feature release." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "notifications.draftContract", + "description": "This tool accepts contract parameters including parties, terms, and conditions, and generates a preliminary contract draft as a text document. It processes the inputs to create a structured contract draft suitable for review, negotiation, or notification to involved parties.", + "category": "notifications", + "parameters": [ + { + "name": "contractTitle", + "type": "string", + "description": "The title or subject of the contract, summarizing its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "An array of objects each containing 'name' and 'role' for each party involved in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The start date of the contract in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "terminationDate", + "type": "string", + "description": "Optional end date of the contract in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "contractTerms", + "type": "array", + "description": "An array of strings detailing the key terms and conditions of the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction governing the contract legally (e.g. state or country).", + "required": false, + "defaultValue": "" + }, + { + "name": "confidentialityClause", + "type": "boolean", + "description": "Whether to include a standard confidentiality clause.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a contract draft object containing a formatted text version of the contract draft and metadata including contract title and involved parties." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a preliminary contract draft to initiate, review, or notify parties about contract formation based on structured input of parties and terms. Useful for automating contract creation workflows before legal review.", + "limitations": "This tool does not provide legally binding contracts or legal advice. It only drafts preliminary text based on input parameters and does not validate enforceability or completeness.", + "examples": [ + "Draft a contract titled 'Software License Agreement' between Acme Corp and Beta LLC effective 2024-07-01 with confidentiality clause.", + "Generate a contract draft listing payment terms and delivery schedules between two parties.", + "Create a preliminary employment contract including terms of employment, confidentiality, and termination date." + ] + }, + "tags": [ + "notifications", + "contract", + "drafting", + "legal", + "document automation", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"contractTitle\":\"Software License Agreement\",\"parties\":[{\"name\":\"Acme Corp\",\"role\":\"Licensor\"},{\"name\":\"Beta LLC\",\"role\":\"Licensee\"}],\"effectiveDate\":\"2024-07-01\",\"terminationDate\":\"2025-07-01\",\"contractTerms\":[\"License grant\",\"Payment terms\",\"Support and maintenance\"],\"governingLaw\":\"California, USA\",\"confidentialityClause\":true}", + "description": "Draft a software license contract with confidentiality clause between Acme Corp and Beta LLC effective from July 1, 2024 to July 1, 2025." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "notifications.draftText", + "description": "Generates a draft text notification message based on input parameters such as recipient type, notification purpose, and optional context details. It processes these inputs to create a concise, relevant notification text suitable for alerts, reminders, or announcements. The output is a string containing the draft message ready for review or sending.", + "category": "notifications", + "parameters": [ + { + "name": "recipientType", + "type": "string", + "description": "Type of notification recipient (e.g., user, admin, customer). Helps tailor tone and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationPurpose", + "type": "string", + "description": "The main purpose of the notification (e.g., alert, reminder, update). Determines message style and urgency.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextDetails", + "type": "string", + "description": "Optional additional information or context to include in the notification to make it more specific or informative.", + "required": false, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency of the notification (e.g., low, medium, high). Influences word choice and formatting for emphasis.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted notification text string as 'message'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a customized text notification message for various recipient types and purposes, such as alerts or reminders, where the notification text must be clear, appropriate in tone, and contextually relevant. It's ideal for preparing messages before sending or displaying to end users.", + "limitations": "The tool cannot send notifications, handle multiple languages or localization automatically, or generate multimedia notifications. It produces only textual draft content that may need further review or customization.", + "examples": [ + "Draft a reminder text notifying customers about an upcoming appointment.", + "Create an alert notification message for admins about system downtime.", + "Generate a general update notification for users with optional context details." + ] + }, + "tags": [ + "notifications", + "text generation", + "alerts", + "reminders", + "drafting", + "messaging", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipientType\":\"customer\",\"notificationPurpose\":\"reminder\",\"contextDetails\":\"Your appointment is scheduled for tomorrow at 3 PM.\",\"urgencyLevel\":\"medium\"}", + "description": "Draft a reminder notification text for a customer about an appointment scheduled tomorrow at 3 PM." + }, + { + "inputJson": "{\"recipientType\":\"admin\",\"notificationPurpose\":\"alert\",\"contextDetails\":\"The server will undergo maintenance from 2 AM to 4 AM.\",\"urgencyLevel\":\"high\"}", + "description": "Draft an alert notification for admins about scheduled server maintenance with high urgency." + }, + { + "inputJson": "{\"recipientType\":\"user\",\"notificationPurpose\":\"update\",\"contextDetails\":\"New features have been added to your dashboard.\",\"urgencyLevel\":\"low\"}", + "description": "Draft a low urgency update notification for users informing them about new features added to the dashboard." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "notifications.composeNotification", + "description": "Composes a structured notification message using provided details such as title, body text, recipient(s), priority level, and optional action buttons. Accepts inputs defining content and formatting, processes these to generate a ready-to-send notification object containing all necessary fields for delivery via notification systems.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main headline or title of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The descriptive body text providing details or information in the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "An array of recipient identifiers (e.g., email addresses, user IDs) who will receive the notification.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "The priority level of the notification; influences display urgency. Typical values: 'low', 'medium', 'high'.", + "required": false, + "defaultValue": "\"medium\"" + }, + { + "name": "actionButtons", + "type": "array", + "description": "Optional array of action button objects with 'label' and 'url' for interactive notification responses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sendTime", + "type": "string", + "description": "Optional ISO 8601 timestamp string to schedule notification for future sending; if omitted, send immediately.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A notification object containing title, body, recipients, priority, optional actions, and scheduled send time prepared for dispatch." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare a notification message that includes customizable content, recipients, and optional interactive actions for timely alerts or communications across platforms. Ideal for composing notifications before sending via messaging or alert services.", + "limitations": "This tool does not send notifications by itself and cannot validate recipient contact formats beyond basic structure. It does not handle localization or rich media content beyond textual action buttons.", + "examples": [ + "Create a high priority notification to alert all admins about scheduled maintenance with an action button to view details.", + "Compose a low priority notification for a single user with a friendly reminder without any action buttons.", + "Schedule a medium priority notification to be sent tomorrow morning to a group of users informing them about new feature updates." + ] + }, + "tags": [ + "notifications", + "compose", + "messaging", + "alerts", + "communication", + "priority", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"title\":\"System Maintenance Alert\",\"body\":\"Scheduled maintenance will occur at midnight UTC.\",\"recipients\":[\"admin1@example.com\",\"admin2@example.com\"],\"priority\":\"high\",\"actionButtons\":[{\"label\":\"View Details\",\"url\":\"https://status.example.com/maintenance\"}]}", + "description": "Compose a high-priority maintenance alert notification for multiple admin recipients including an action button linking to details." + }, + { + "inputJson": "{\"title\":\"Friendly Reminder\",\"body\":\"Your subscription renews in 3 days.\",\"recipients\":[\"user123@example.com\"],\"priority\":\"low\"}", + "description": "Compose a low-priority reminder notification for a single user without action buttons." + }, + { + "inputJson": "{\"title\":\"Feature Update\",\"body\":\"Check out our new features launching tomorrow!\",\"recipients\":[\"user1@example.com\",\"user2@example.com\"],\"sendTime\":\"2024-07-01T09:00:00Z\"}", + "description": "Compose a notification scheduled to send in future to multiple users informing about new features." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "notifications.composeSentence", + "description": "This tool composes clear, concise notification sentences based on the specified notification type, recipient role, urgency level, and optional contextual details. It accepts structured inputs describing these parameters and outputs a grammatically correct sentence suitable for alert delivery.", + "category": "notifications", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to compose (e.g., alert, reminder, update).", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientRole", + "type": "string", + "description": "Role or category of the notification recipient (e.g., user, admin, manager).", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency level of the notification (e.g., low, medium, high).", + "required": true, + "defaultValue": "" + }, + { + "name": "contextDetails", + "type": "object", + "description": "Optional additional details to customize the notification (e.g., event name, time, action required).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call to action in the sentence.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification sentence as a string under 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate human-friendly notification sentences dynamically, based on specific notification parameters such as type, recipient, and urgency, ensuring the output is grammatically correct and contextually appropriate. Ideal for systems that automate message creation for alerts or reminders.", + "limitations": "This tool does not send notifications or handle delivery. It focuses only on sentence composition and may not handle very complex context or multilingual compositions without further customization.", + "examples": [ + "Compose a high urgency alert sentence for an admin about a system outage.", + "Create a medium urgency reminder for a user to update their password.", + "Generate a low urgency update notification sentence for a manager including event details." + ] + }, + "tags": [ + "notifications", + "sentence composition", + "alerts", + "reminders", + "message generation", + "automated messaging" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"alert\",\"recipientRole\":\"admin\",\"urgencyLevel\":\"high\",\"contextDetails\":{\"event\":\"system outage\",\"time\":\"now\"},\"includeCallToAction\":true}", + "description": "Compose a high urgency alert sentence directed at an admin about a system outage happening now, including a call to action." + }, + { + "inputJson": "{\"notificationType\":\"reminder\",\"recipientRole\":\"user\",\"urgencyLevel\":\"medium\",\"contextDetails\":{\"action\":\"update password\",\"deadline\":\"in 3 days\"},\"includeCallToAction\":false}", + "description": "Create a medium urgency reminder sentence for a user to update their password within three days, without a call to action." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "notifications.generateSession", + "description": "Generates a detailed session notification summary for analytics purposes. Accepts session metadata, user activity timestamps, and event details; processes these to compile a comprehensive notification message outlining session duration, key events, and user engagement metrics; outputs a notification object ready for delivery or further processing.", + "category": "notifications", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier of the session to generate the notification for.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user associated with the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp marking the session start time.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 timestamp marking the session end time.", + "required": true, + "defaultValue": "" + }, + { + "name": "events", + "type": "array", + "description": "List of events performed during the session with timestamps and event types.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEngagementSummary", + "type": "boolean", + "description": "Flag to include a summary of user engagement metrics in the notification.", + "required": false, + "defaultValue": "true" + }, + { + "name": "notificationChannel", + "type": "string", + "description": "Preferred notification channel, e.g., email or push, affecting formatting style.", + "required": false, + "defaultValue": "email" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted notification message, metadata for display or dispatch, including session summary, event highlights, and engagement details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a structured notification that summarizes a user's session details including duration, events, and engagement. Ideal for analytics teams wanting automated alerts or reports about session activities, or integration with notification delivery systems.", + "limitations": "This tool only generates the notification content; it does not send or deliver notifications. It requires accurate and complete session event data to provide meaningful summaries.", + "examples": [ + "Generate a session summary notification for user 12345's session 6789 with event data provided, for email delivery.", + "Create a push notification summarizing the engagement metrics of a user session starting and ending at specified times." + ] + }, + "tags": [ + "notification", + "session", + "analytics", + "summary", + "user engagement", + "alerts", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess-001\",\"userId\":\"user-123\",\"startTime\":\"2024-06-01T09:00:00Z\",\"endTime\":\"2024-06-01T09:45:00Z\",\"events\":[{\"timestamp\":\"2024-06-01T09:05:00Z\",\"eventType\":\"pageView\"},{\"timestamp\":\"2024-06-01T09:10:00Z\",\"eventType\":\"click\"},{\"timestamp\":\"2024-06-01T09:30:00Z\",\"eventType\":\"conversion\"}],\"includeEngagementSummary\":true,\"notificationChannel\":\"email\"}", + "description": "Generate a detailed email notification summarizing a 45-minute user session with three key events including a conversion." + }, + { + "inputJson": "{\"sessionId\":\"sess-002\",\"userId\":\"user-456\",\"startTime\":\"2024-06-01T14:00:00Z\",\"endTime\":\"2024-06-01T14:15:00Z\",\"events\":[{\"timestamp\":\"2024-06-01T14:02:00Z\",\"eventType\":\"login\"},{\"timestamp\":\"2024-06-01T14:10:00Z\",\"eventType\":\"download\"}],\"includeEngagementSummary\":false,\"notificationChannel\":\"push\"}", + "description": "Generate a brief push notification for a short session without engagement summary focusing on key login and download events." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "notifications.generateReference", + "description": "Generates a reference notification message that cites other notifications or events. Accepts input details about the original notification(s) and contextual information, processes this data to create a clear, formatted reference alert message, and outputs a structured notification ready to send or log.", + "category": "notifications", + "parameters": [ + { + "name": "originalNotificationIds", + "type": "array", + "description": "List of unique identifiers for the original notifications to reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceType", + "type": "string", + "description": "Type of reference to generate, e.g., 'follow-up', 'summary', or 'related'.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalContext", + "type": "string", + "description": "Extra information to include in the reference message for clarity.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Flag to include timestamps of the original notifications in the reference.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted reference notification message including referenced IDs, message text, and metadata such as generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a notification that explicitly refers to previous messages/events, such as follow-ups, summaries, or related alerts, to provide users with contextual linkage and clarity within notification streams.", + "limitations": "This tool does not send the notification; it only generates the reference message content. It cannot access the content of original notifications directly and relies on provided IDs and context.", + "examples": [ + "Generate a follow-up notification that references previous alert IDs with additional explanation.", + "Create a summary notification referencing multiple related notifications without timestamps.", + "Produce a related notification message including timestamps of original alerts." + ] + }, + "tags": [ + "notifications", + "reference", + "message generation", + "alerts", + "contextual" + ], + "examples": [ + { + "inputJson": "{\"originalNotificationIds\":[\"notif123\",\"notif124\"],\"referenceType\":\"follow-up\",\"additionalContext\":\"Please review the details.\",\"includeTimestamp\":true}", + "description": "Generate a follow-up reference notification including timestamps for two prior alerts, adding extra context for the user." + }, + { + "inputJson": "{\"originalNotificationIds\":[\"alert456\"],\"referenceType\":\"summary\",\"additionalContext\":\"Summary of critical alerts.\",\"includeTimestamp\":false}", + "description": "Generate a summary notification referencing a single alert without timestamps, including a concise summary message." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "notifications.buildVariable", + "description": "Constructs a notification variable object based on input parameters such as variable name, type, value, and description. This tool processes the inputs to create a structured variable object that can be used in notification templates or alert messages to dynamically insert values.", + "category": "notifications", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique name identifier for the notification variable.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable (e.g., string, number, boolean).", + "required": true, + "defaultValue": "" + }, + { + "name": "variableValue", + "type": "string", + "description": "The actual value assigned to the variable, represented as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief explanation of the variable's purpose or usage in notifications.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the notification variable, containing the name, type, value, and description properties formatted for use in notification generating systems." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create or configure variables for dynamic content in notification messages or alerts, allowing the notification system to substitute variable values at runtime for personalized or context-aware messaging.", + "limitations": "This tool only builds the variable object and does not send notifications or validate the variable's applicability in different notification platforms.", + "examples": [ + "Build a variable named 'userName' of type string with value 'Alice' for inclusion in a welcome email notification.", + "Create a numeric variable 'alertCount' with a value of '5' to show the number of alerts in a notification message.", + "Define a boolean variable 'isUrgent' set to 'true' to conditionally highlight a notification as urgent." + ] + }, + "tags": [ + "notifications", + "variables", + "dynamicContent", + "alerts", + "messageTemplates" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"userName\",\"variableType\":\"string\",\"variableValue\":\"Alice\",\"description\":\"The recipient's full name\"}", + "description": "Creating a string variable for user's name in notifications." + }, + { + "inputJson": "{\"variableName\":\"alertCount\",\"variableType\":\"number\",\"variableValue\":\"5\",\"description\":\"Number of alerts triggered\"}", + "description": "Building a numeric variable to represent count of alerts." + }, + { + "inputJson": "{\"variableName\":\"isUrgent\",\"variableType\":\"boolean\",\"variableValue\":\"true\",\"description\":\"Indicates if the notification is urgent\"}", + "description": "Creating a boolean variable for urgency flag in alerts." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "notifications.generateHeading", + "description": "Generates a concise and attention-grabbing heading for notifications based on input content and context. Accepts parameters such as the notification type, urgency, and subject to customize the heading appropriately. Outputs a string optimized for clarity and impact in various alert scenarios.", + "category": "notifications", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "The category or type of notification (e.g., alert, reminder, update) to tailor the heading style.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The main topic or focus of the notification that the heading should highlight.", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency indicator (e.g., low, medium, high) to influence the tone and wording of the heading.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the heading in characters, ensuring compatibility with UI constraints.", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to append or include a timestamp in the heading for time-sensitive notifications.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated notification heading string under the key 'heading'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create clear and effective notification headings that summarize the notification content concisely. It helps generate suitable headings for alerts, reminders, or updates that adapt to urgency and type parameters, improving user engagement and understanding.", + "limitations": "This tool only generates textual headings and does not handle full notification body content or graphical elements. It may not perfectly capture very complex or niche subjects without additional context.", + "examples": [ + "Generate an urgent alert heading for a server downtime notification.", + "Create a low urgency reminder heading for a scheduled meeting.", + "Produce a medium urgency update heading for a software release notice." + ] + }, + "tags": [ + "notification", + "heading", + "text-generation", + "alert", + "reminder", + "update", + "urgency" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"alert\",\"subject\":\"Server Downtime\",\"urgencyLevel\":\"high\",\"maxLength\":60,\"includeTimestamp\":true}", + "description": "Generate a high urgency alert heading about server downtime including a timestamp." + }, + { + "inputJson": "{\"notificationType\":\"reminder\",\"subject\":\"Team Meeting\",\"urgencyLevel\":\"low\",\"maxLength\":50,\"includeTimestamp\":false}", + "description": "Generate a low urgency reminder heading for a team meeting without timestamp." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "notifications.generateChart", + "description": "Generates a visual chart image to be used in notifications or alerts. Accepts structured data input along with chart type and styling options, processes the data to create an informative chart, and outputs a base64-encoded image string suitable for embedding in notification messages.", + "category": "notifications", + "parameters": [ + { + "name": "dataPoints", + "type": "array", + "description": "An array of data objects containing labels and numerical values to plot in the chart. Each object should have 'label' and 'value' properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Specifies the type of chart to generate, such as 'bar', 'line', or 'pie'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title text displayed on top of the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated chart image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated chart image in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme name or hex code for chart elements to customize appearance.", + "required": false, + "defaultValue": "default" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Flag to show or hide the chart legend.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64 encoded image of the generated chart and the MIME type suitable for embedding in notifications." + }, + "aiAgent": { + "useCase": "Use this tool when a notification requires a visual representation of data, such as performance metrics, survey results, or summary statistics, to improve clarity and impact in alerts or reports. It enables generating charts dynamically based on real-time data inputs for embedding in communication channels.", + "limitations": "Cannot provide interactive charts, only static images; limited to basic chart types and styling; does not generate complex dashboards or multi-chart layouts.", + "examples": [ + "Generate a bar chart showing monthly sales data for a notification email.", + "Create a pie chart summarizing user feedback categories for an alert.", + "Produce a line chart tracking server uptime percentages over time for system alert messages." + ] + }, + "tags": [ + "notifications", + "chart", + "visualization", + "data", + "alerts", + "media", + "imageGeneration" + ], + "examples": [ + { + "inputJson": "{\"dataPoints\":[{\"label\":\"Jan\",\"value\":150},{\"label\":\"Feb\",\"value\":200},{\"label\":\"Mar\",\"value\":170}],\"chartType\":\"bar\",\"title\":\"Quarterly Sales\",\"width\":800,\"height\":500,\"colorScheme\":\"blue\",\"showLegend\":true}", + "description": "Generate a blue-themed bar chart of quarterly sales data with legend shown." + }, + { + "inputJson": "{\"dataPoints\":[{\"label\":\"Positive\",\"value\":120},{\"label\":\"Neutral\",\"value\":45},{\"label\":\"Negative\",\"value\":35}],\"chartType\":\"pie\",\"title\":\"Customer Feedback\",\"width\":400,\"height\":400,\"colorScheme\":\"pastel\",\"showLegend\":false}", + "description": "Create a pastel-colored pie chart summarizing customer feedback categories without a legend." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "notifications.createTrend", + "description": "Creates a notification about detected trends in analytics data. Accepts parameters specifying data source, metric to analyze, time interval, and threshold for trend significance. Processes the data to identify upward or downward trends and generates a notification message summarizing the trend and its details.", + "category": "notifications", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "Identifier or URL of the analytics data source to analyze for trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "The specific metric or key from the data source to evaluate for trend detection.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeInterval", + "type": "object", + "description": "Time range for analysis with 'start' and 'end' ISO8601 timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "trendDirection", + "type": "string", + "description": "Direction of trend to detect: 'upward', 'downward', or 'both'.", + "required": false, + "defaultValue": "both" + }, + { + "name": "thresholdPercentChange", + "type": "number", + "description": "Minimum percent change over the time interval to consider a trend significant.", + "required": false, + "defaultValue": "5" + }, + { + "name": "notificationChannels", + "type": "array", + "description": "List of channels (e.g., email, slack) where the trend notification should be sent.", + "required": false, + "defaultValue": "[\"email\"]" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed data points and analysis in the notification message.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object with the generated notification message, trend metrics, and status indicating if a trend was detected." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent identifies shifts or meaningful changes in key performance data streams and needs to alert users or systems about emerging trends. Ideal for automated monitoring of analytics metrics with alert delivery to configured channels.", + "limitations": "Cannot perform deep causation analysis or predictions beyond percentage trend detection; depends on quality and availability of input data source.", + "examples": [ + "Create a notification for upward sales trends over the last week exceeding 10% change.", + "Detect both upward and downward trends in website traffic metrics for the last month and send notifications to Slack channel.", + "Generate a trend alert for customer engagement metric decline over the previous quarter including detailed data in the notification." + ] + }, + "tags": [ + "notifications", + "analytics", + "trend detection", + "alerts", + "data monitoring", + "time series", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"https://api.example.com/metrics\",\"metric\":\"salesRevenue\",\"timeInterval\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"trendDirection\":\"upward\",\"thresholdPercentChange\":10,\"notificationChannels\":[\"email\",\"slack\"],\"includeDetails\":true}", + "description": "Notify when sales revenue increased by more than 10% in the first week of May 2024, sending alerts by email and Slack with detailed analytics." + }, + { + "inputJson": "{\"dataSource\":\"internalDB\",\"metric\":\"userSessions\",\"timeInterval\":{\"start\":\"2024-04-01T00:00:00Z\",\"end\":\"2024-04-30T23:59:59Z\"},\"trendDirection\":\"both\",\"thresholdPercentChange\":5,\"notificationChannels\":[\"email\"],\"includeDetails\":false}", + "description": "Detect any upward or downward trends in user sessions during April 2024 with a 5% threshold, notify via email without details." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "notifications.createReference", + "description": "Creates a notification reference object that encapsulates metadata and content pointers for alerting systems. Accepts inputs like referenceId, title, description, targetUsers, relatedLinks, and expiration date. Processes these inputs to generate a structured reference object that can be stored or sent with notifications for consistent tracking and retrieval.", + "category": "notifications", + "parameters": [ + { + "name": "referenceId", + "type": "string", + "description": "Unique identifier for the notification reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Short title describing the notification reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description or summary of the reference content.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetUsers", + "type": "array", + "description": "List of user IDs or groups that this reference pertains to or should target.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "relatedLinks", + "type": "array", + "description": "URLs or resource identifiers related to this reference for further information.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "expirationDate", + "type": "string", + "description": "ISO 8601 date string when the reference should expire or be archived.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created reference including all input fields plus creation timestamp and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a formal notification reference object to enable consistent alert tracking, sharing, and user targeting within notification systems. Ideal for integrating with notification dispatch or logging systems requiring structured references.", + "limitations": "This tool does not send notifications by itself or handle delivery; it only creates the reference metadata object.", + "examples": [ + "Create a notification reference for a system outage alert.", + "Generate a reference object targeting specific user groups with documentation links.", + "Create an expiring reference for a security advisory notification." + ] + }, + "tags": [ + "notifications", + "reference", + "metadata", + "alerts", + "user-targeting", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"referenceId\":\"REF1234\",\"title\":\"System Outage Alert\",\"description\":\"Urgent alert for scheduled system maintenance.\",\"targetUsers\":[\"admin\",\"support\"],\"relatedLinks\":[\"https://status.example.com/outage-details\"],\"expirationDate\":\"2024-12-31T23:59:59Z\"}", + "description": "Create a notification reference for a scheduled system outage targeting admin and support teams." + }, + { + "inputJson": "{\"referenceId\":\"SEC2024-001\",\"title\":\"Security Advisory\",\"description\":\"Critical security vulnerability update.\",\"targetUsers\":[\"security-team\"],\"relatedLinks\":[\"https://security.example.com/advisories/001\"]}", + "description": "Generate a reference for a critical security advisory targeted at the security team with a reference link." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "notifications.createHeading", + "description": "Creates a formatted heading string to be used in notification messages. Accepts text content and formatting options such as level and style, then outputs a heading string suitable for notification display or alerts.", + "category": "notifications", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The heading text content to display in the notification", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level from 1 to 6 representing importance or size", + "required": false, + "defaultValue": "1" + }, + { + "name": "style", + "type": "string", + "description": "Optional style for the heading, such as 'bold', 'italic', or 'underline'", + "required": false, + "defaultValue": "" + }, + { + "name": "includeIcon", + "type": "boolean", + "description": "Flag to include a notification icon alongside the heading", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string and metadata like style and level" + }, + "aiAgent": { + "useCase": "Use this tool when generating notification messages that require a visually distinct heading or title to highlight key information, ensuring consistent style and formatting across different notifications.", + "limitations": "This tool does not send notifications or handle message delivery; it only creates formatted heading text for inclusion in notifications.", + "examples": [ + "Create a heading for an error notification that is level 2 and bolded.", + "Generate a simple heading with default level and no special style.", + "Create a heading with an icon to prepend the text in an alert message." + ] + }, + "tags": [ + "notifications", + "formatting", + "heading", + "alerts", + "UI" + ], + "examples": [ + { + "inputJson": "{\"text\":\"System Update Available\",\"level\":2,\"style\":\"bold\",\"includeIcon\":true}", + "description": "Creates a bold level 2 heading with an icon for a system update alert." + }, + { + "inputJson": "{\"text\":\"Reminder\",\"level\":3,\"style\":\"\",\"includeIcon\":false}", + "description": "Creates a plain level 3 heading without icon for a reminder notification." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "notifications.createDeal", + "description": "This tool facilitates creating a business deal notification by accepting deal details such as title, description, value, and involved parties. It processes these inputs to generate a structured notification message and optionally schedules its delivery via specified channels. The output is a notification object confirming creation and ready for dispatch.", + "category": "notifications", + "parameters": [ + { + "name": "dealTitle", + "type": "string", + "description": "The title or name of the deal to be included in the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealDescription", + "type": "string", + "description": "A detailed description of the deal that provides context within the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "The monetary value of the deal, used to highlight its significance in the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "An array of participant names or identifiers involved in the deal to mention in the notification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notifyChannels", + "type": "array", + "description": "List of notification channels (e.g., email, SMS, push) where the deal notification should be sent.", + "required": false, + "defaultValue": "[\"email\"]" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 datetime string specifying when to send the notification; if omitted, sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification to influence dispatch urgency (e.g., high, normal, low).", + "required": false, + "defaultValue": "normal" + }, + { + "name": "includeAttachments", + "type": "boolean", + "description": "Flag indicating whether to include attachments like deal documents with the notification.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of the notification creation including notificationId, status, and scheduledTime if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create and send notifications about new or updated business deals to relevant stakeholders through specified communication channels, optionally scheduling for future delivery or including attachments.", + "limitations": "This tool does not manage actual dispatching logistics beyond creation and scheduling. It cannot verify participant contact details or guarantee delivery success.", + "examples": [ + "Create a deal notification for a new client contract worth $500,000, notify sales and legal teams via email and SMS immediately.", + "Schedule a notification about a partnership deal involving three companies to be sent via push notification tomorrow morning.", + "Generate a high priority notification including deal documents attached, targeting internal stakeholders only." + ] + }, + "tags": [ + "notifications", + "business", + "deal", + "alerts", + "communications", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"dealTitle\":\"MegaCorp Contract\",\"dealDescription\":\"A multi-year supply deal with MegaCorp.\",\"dealValue\":5000000,\"participants\":[\"Sales Team\",\"Legal Department\"],\"notifyChannels\":[\"email\",\"sms\"],\"priority\":\"high\"}", + "description": "Create a high priority notification for a multi-million dollar deal with notifications sent via email and SMS to sales and legal." + }, + { + "inputJson": "{\"dealTitle\":\"Partnership Agreement\",\"participants\":[\"Partner A\",\"Partner B\"],\"notifyChannels\":[\"push\"],\"scheduleTime\":\"2024-06-15T09:00:00Z\"}", + "description": "Schedule a push notification about a partnership agreement involving two parties to be sent on a specific future date." + }, + { + "inputJson": "{\"dealTitle\":\"Quarterly Sales Deal\",\"dealValue\":150000,\"includeAttachments\":true,\"notifyChannels\":[\"email\"]}", + "description": "Send an immediate email notification about a quarterly sales deal including attachments like contract and pricing documents." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "notifications.createAttachment", + "description": "Creates an attachment object suitable for inclusion in notification messages. Accepts parameters specifying the attachment type (image, video, audio, or file), the source URL or base64 content, and optional metadata like filename and description. Produces a structured attachment object ready to be embedded in notification payloads.", + "category": "notifications", + "parameters": [ + { + "name": "attachmentType", + "type": "string", + "description": "Type of the attachment: 'image', 'video', 'audio', or 'file'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "Publicly accessible URL to the attachment content. Required if base64Content is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "base64Content", + "type": "string", + "description": "Base64 encoded content of the attachment. Required if sourceUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional filename for the attachment, used for files or when naming is useful for the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the attachment for accessibility or context.", + "required": false, + "defaultValue": "" + }, + { + "name": "mimeType", + "type": "string", + "description": "MIME type of the attachment content, e.g. 'image/png', 'video/mp4'. Helps receivers handle the file appropriately.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An attachment object containing standardized fields including type, content source, filename, description, and MIME type suitable for inclusion in notification payloads." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to include rich media attachments such as images, videos, or documents within notification messages sent to users or systems. It standardizes attachment data format for consistent use in notifications across channels.", + "limitations": "Does not upload or host the attachment content itself; the content must be accessible via URL or provided as base64. Does not validate content size or format beyond basic MIME type tagging.", + "examples": [ + "Create an image attachment from a public URL for a notification.", + "Create a PDF file attachment from base64 encoded string to include in an alert.", + "Create an audio clip attachment with description for media notification." + ] + }, + "tags": [ + "notifications", + "attachment", + "media", + "create", + "alerts", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"attachmentType\":\"image\",\"sourceUrl\":\"https://example.com/image.png\",\"fileName\":\"logo.png\",\"description\":\"Company logo\",\"mimeType\":\"image/png\"}", + "description": "Create an image attachment referencing a public image URL" + }, + { + "inputJson": "{\"attachmentType\":\"file\",\"base64Content\":\"VGhpcyBpcyBhIHRlc3QgZmlsZSBjb250ZW50Lg==\",\"fileName\":\"test.txt\",\"description\":\"Test file attachment\",\"mimeType\":\"text/plain\"}", + "description": "Create a text file attachment from base64 encoded content" + }, + { + "inputJson": "{\"attachmentType\":\"audio\",\"sourceUrl\":\"https://example.com/alert.mp3\",\"description\":\"Alert tone\",\"mimeType\":\"audio/mpeg\"}", + "description": "Create an audio attachment for a notification alert" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "notifications.createThreat", + "description": "Creates and sends a security threat notification based on provided threat details. Accepts input parameters describing the threat such as its type, severity, affected systems, and additional context. Processes this data to construct a structured alert message and outputs a confirmation with notification ID and status.", + "category": "notifications", + "parameters": [ + { + "name": "threatType", + "type": "string", + "description": "The category or type of the security threat (e.g., phishing, malware, intrusion).", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity level of the threat (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected system names or identifiers impacted by the threat.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description or summary of the threat and its characteristics.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string when the threat was detected or identified.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyChannels", + "type": "array", + "description": "Notification channels to send the threat alert to (e.g., email, SMS, Slack).", + "required": false, + "defaultValue": "[\"email\"]" + }, + { + "name": "additionalMetadata", + "type": "object", + "description": "Optional extra metadata or context about the threat for enriched information.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing notificationId (string) and status (string) indicating success or failure of notification creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or receives information about a new or ongoing security threat and needs to notify relevant personnel or systems through configured channels. It helps automate creation and dispatch of detailed threat alerts, enabling timely incident response.", + "limitations": "This tool does not perform threat detection itself or analysis of threat impact beyond provided inputs. It depends fully on supplied threat data and configured notification mechanisms. It cannot guarantee delivery to all channels if external systems fail.", + "examples": [ + "Create a high severity malware threat notification affecting multiple servers.", + "Send a notification for a low severity phishing attempt targeting user email accounts.", + "Generate a threat alert with detailed context and send via email and Slack channels." + ] + }, + "tags": [ + "notification", + "security", + "threat", + "alert", + "incident response", + "automation" + ], + "examples": [ + { + "inputJson": "{\"threatType\":\"ransomware\",\"severityLevel\":\"critical\",\"affectedSystems\":[\"server-01\",\"database-02\"],\"description\":\"Ransomware detected encrypting files on critical servers.\",\"timestamp\":\"2024-06-15T14:30:00Z\",\"notifyChannels\":[\"email\",\"sms\"]}", + "description": "Alert for critical ransomware affecting two servers, sent via email and SMS." + }, + { + "inputJson": "{\"threatType\":\"phishing\",\"severityLevel\":\"low\",\"affectedSystems\":[\"user-email-system\"],\"description\":\"Suspicious phishing email campaign detected targeting employees.\",\"notifyChannels\":[\"slack\"]}", + "description": "Low severity phishing threat notification sent via Slack channel." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "notifications.createChart", + "description": "Creates a visual chart representation from numeric or categorical data provided via parameters. Accepts chart type, data series, labels, and styling options. Processes input data to generate a chart image URL or an embeddable HTML snippet for use in alerts or notifications.", + "category": "notifications", + "parameters": [ + { + "name": "chartType", + "type": "string", + "description": "Type of chart to create, e.g., 'bar', 'line', 'pie'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSeries", + "type": "array", + "description": "Array of data series objects, each containing 'name' and 'values' (array of numbers).", + "required": true, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "Array of labels corresponding to data points (e.g., categories or time points).", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title text displayed on the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the chart image or container in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the chart image or container in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "colors", + "type": "array", + "description": "Optional array of color strings to use for data series, e.g., ['#ff0000', '#00ff00'].", + "required": false, + "defaultValue": "" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Flag to indicate whether to display a legend for the data series.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a URL to a generated chart image and optional embeddable HTML snippet." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a visual chart for inclusion in notification messages, dashboards, or reports to provide clear graphical representation of numeric or categorical data trends and comparisons. Helpful for alerting users with visual insights.", + "limitations": "Does not support highly interactive charts or large datasets. Limited to common chart types and basic styling options. Does not perform advanced data analysis or forecasting.", + "examples": [ + "Create a bar chart comparing monthly sales for three products.", + "Generate a line chart showing website traffic over the last 7 days.", + "Make a pie chart visualizing market share percentages for multiple competitors." + ] + }, + "tags": [ + "notifications", + "chart", + "visualization", + "data", + "alerts", + "reporting", + "media" + ], + "examples": [ + { + "inputJson": "{\"chartType\":\"bar\",\"dataSeries\":[{\"name\":\"Product A\",\"values\":[30,40,50]},{\"name\":\"Product B\",\"values\":[20,60,45]}],\"labels\":[\"Jan\",\"Feb\",\"Mar\"],\"title\":\"Monthly Sales\",\"width\":700,\"height\":400,\"colors\":[\"#3366cc\",\"#dc3912\"],\"showLegend\":true}", + "description": "Create a bar chart showing monthly sales for Product A and Product B with specified dimensions and colors." + }, + { + "inputJson": "{\"chartType\":\"line\",\"dataSeries\":[{\"name\":\"Visits\",\"values\":[100,200,150,300,250]}],\"labels\":[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\"],\"title\":\"Website Visits Over the Week\"}", + "description": "Generate a line chart representing website visits from Monday to Friday with default size." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "notifications.createSpec", + "description": "Creates a detailed notification specification document based on provided notification parameters such as type, target audience, message templates, delivery channels, and scheduling options. The tool processes the inputs to generate a structured spec document that can be used to implement notification systems consistently.", + "category": "notifications", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to create a spec for, e.g., email, SMS, push notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "array", + "description": "List of target audience identifiers or user segments for this notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageTemplates", + "type": "object", + "description": "An object containing message templates keyed by language or context, each with subject and body fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliveryChannels", + "type": "array", + "description": "Array of delivery channels to use such as ['email','sms','push'].", + "required": true, + "defaultValue": "" + }, + { + "name": "schedule", + "type": "object", + "description": "Scheduling details specifying when and how often to send the notifications, with fields like startTime, frequency, and timezone.", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority level of the notification, such as 'high', 'normal', or 'low'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "includeFallbacks", + "type": "boolean", + "description": "Whether to include fallback delivery channels if the primary channel fails.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Notification spec document containing all relevant fields like type, audiences, templates, channels, schedule, priority, and fallback strategies, structured for use in notification system implementation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a comprehensive, structured specification document for a notification setup based on given parameters. Useful for planning, documenting, or enabling automated notification system configuration.", + "limitations": "This tool does not implement or send notifications. It produces specification documents only. It cannot validate actual delivery or audience lists beyond structural correctness.", + "examples": [ + "Create a notification spec for an email campaign targeting premium users with English and Spanish templates.", + "Generate a spec for a push notification with high priority and scheduled delivery every day at 9 AM UTC.", + "Make a notification spec including fallback SMS channel if the push notification fails to deliver." + ] + }, + "tags": [ + "notifications", + "specification", + "document", + "automation", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"email\",\"targetAudience\":[\"premiumUsers\",\"subscribers\"],\"messageTemplates\":{\"en\":{\"subject\":\"Welcome!\",\"body\":\"Hello valued user.\"},\"es\":{\"subject\":\"¡Bienvenido!\",\"body\":\"Hola usuario valioso.\"}},\"deliveryChannels\":[\"email\"],\"schedule\":{\"startTime\":\"2024-07-01T09:00:00Z\",\"frequency\":\"daily\",\"timezone\":\"UTC\"},\"priorityLevel\":\"normal\",\"includeFallbacks\":true}", + "description": "Create an email notification spec targeting premium users and subscribers with English and Spanish message templates, scheduled daily at 9 AM UTC." + }, + { + "inputJson": "{\"notificationType\":\"push\",\"targetAudience\":[\"appUsers\"],\"messageTemplates\":{\"en\":{\"subject\":\"New Feature\",\"body\":\"Check out the new update in the app!\"}},\"deliveryChannels\":[\"push\"],\"priorityLevel\":\"high\",\"includeFallbacks\":false}", + "description": "Generate a high priority push notification spec for app users without fallback channels." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "notifications.createResume", + "description": "Creates a formatted resume document based on structured personal, education, experience, and skills data which can be sent as a notification attachment or message. Accepts detailed input about the candidate and outputs a clean, readable resume in PDF or text format.", + "category": "notifications", + "parameters": [ + { + "name": "personalInfo", + "type": "object", + "description": "An object containing personal details like name, email, phone, and address.", + "required": true, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "An array of objects describing previous jobs, including company name, role, duration, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "An array of education records with degree, institution, and graduation year.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "List of key skills relevant to the candidate.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "A brief personal summary or objective statement.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format (e.g., 'pdf' or 'text').", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includePhoto", + "type": "boolean", + "description": "Whether to include a photo in the resume if provided.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resume content encoded as base64 string and metadata such as filename and content type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a professional resume document from structured candidate data to send as a notification or attachment, enabling quick sharing of a formatted résumé.", + "limitations": "Does not design highly customized or graphical resumes, nor does it parse unstructured input text. Limited to textual and simple layouts.", + "examples": [ + "Create a resume PDF for a software engineer from provided work history, education, and skills.", + "Generate a plain text resume summary to send via email notification.", + "Include a personal photo in the generated resume if available." + ] + }, + "tags": [ + "notifications", + "resume", + "document", + "create", + "pdf", + "text", + "job", + "career" + ], + "examples": [ + { + "inputJson": "{\"personalInfo\":{\"name\":\"John Doe\",\"email\":\"johndoe@example.com\",\"phone\":\"123-456-7890\",\"address\":\"123 Main St, Anytown\"},\"workExperience\":[{\"company\":\"Tech Soft\",\"role\":\"Software Engineer\",\"duration\":\"2018-2023\",\"description\":\"Developed web applications.\"}],\"education\":[{\"degree\":\"BSc Computer Science\",\"institution\":\"State University\",\"year\":\"2018\"}],\"skills\":[\"JavaScript\",\"React\",\"Node.js\"],\"summary\":\"Experienced software engineer specializing in front-end development.\",\"outputFormat\":\"pdf\",\"includePhoto\":false}", + "description": "Generate a PDF resume for John Doe including personal info, work experience, education, skills, and a summary." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "messaging.analyzeSession", + "description": "Analyzes a real-time messaging session by processing session metadata and message logs to provide insights such as user activity, message volume, sentiment trend, and key interaction patterns. The tool accepts session identifiers, optional time ranges, and filters, then returns aggregated analytics metrics and optional visualization data.", + "category": "messaging", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier of the messaging session to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp marking the start of the analysis period (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 timestamp marking the end of the analysis period (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Flag to include sentiment analysis of messages in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "userFilter", + "type": "array", + "description": "List of user IDs to include in the analysis; if empty, all users are considered.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Granularity of the analysis report: 'summary', 'detailed', or 'full'.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An object containing session analytics including total messages, active users count, message frequency over time, sentiment scores if requested, and key interaction metrics." + }, + "aiAgent": { + "useCase": "Use this tool to gain insights into messaging session dynamics for monitoring engagement, identifying user behaviors, and understanding communication effectiveness in real-time chat applications. Ideal when analyzing chat logs during certain periods or for specific user groups.", + "limitations": "Does not process encrypted message content or provide real-time streaming analysis; requires complete message logs. Sentiment analysis accuracy depends on language and context and might not handle sarcasm or slang well.", + "examples": [ + "Analyze session 'abc123' for last week including sentiment.", + "Provide a detailed analysis of session 'xyz789' during a specific day for user ID 'user45'.", + "Summarize session 'session001' without sentiment analysis." + ] + }, + "tags": [ + "messaging", + "analytics", + "chat", + "session analysis", + "sentiment", + "user engagement" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"session123\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-02T00:00:00Z\",\"includeSentiment\":true,\"userFilter\":[\"user1\",\"user2\"],\"detailLevel\":\"detailed\"}", + "description": "Analyze session 'session123' during one day for users user1 and user2, including sentiment analysis with detailed granularity." + }, + { + "inputJson": "{\"sessionId\":\"session456\",\"includeSentiment\":false,\"detailLevel\":\"summary\"}", + "description": "Generate a summary report for session 'session456' without sentiment analysis, including all users and entire session data." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "messaging.analyzeTrend", + "description": "Analyzes real-time messaging data over a specified timeframe to identify trending topics, keywords, and sentiment patterns. Accepts message logs and optional filters, processes text analytics and statistical trends, and outputs detailed trend summaries including popularity scores and sentiment breakdowns.", + "category": "messaging", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of message objects containing text and metadata to analyze for trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeframeHours", + "type": "number", + "description": "The number of past hours to consider for trend analysis. If not specified, analyzes all provided messages.", + "required": false, + "defaultValue": "24" + }, + { + "name": "language", + "type": "string", + "description": "Specify language code to focus the analysis on messages in that language, improving accuracy of keyword and sentiment detection.", + "required": false, + "defaultValue": "" + }, + { + "name": "minKeywordFrequency", + "type": "number", + "description": "Minimum number of occurrences for a keyword to be considered part of a trend. Helps filter out noise.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis in the results to understand positive, negative or neutral tone of trends.", + "required": false, + "defaultValue": "true" + }, + { + "name": "filterByChannels", + "type": "array", + "description": "Optional list of messaging channel IDs to restrict the analysis to specific channels or chats.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object summarizing discovered trends with trending keywords, their frequency, sentiment scores, and time-based popularity metrics, plus metadata on total analyzed messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to identify emerging or popular topics from flows of messaging data across channels, detect sentiment shifts, or generate insights on communication trends for reporting or alerting purposes.", + "limitations": "This tool cannot analyze multimedia content like images or videos inside messages; it only processes text. Accuracy depends on the quality and completeness of provided messaging data.", + "examples": [ + "Analyze trending keywords and sentiment in a company's support chat over the last 48 hours.", + "Find top discussion topics in a social messaging platform's group chats filtered to English language only.", + "Identify shifts in sentiment around a product launch by analyzing messages from specific sales channels." + ] + }, + "tags": [ + "messaging", + "trend analysis", + "sentiment", + "real-time", + "chat", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"text\":\"Our API is slow today\",\"timestamp\":\"2024-06-10T10:00:00Z\",\"channelId\":\"support\"},{\"text\":\"API is back up\",\"timestamp\":\"2024-06-10T11:00:00Z\",\"channelId\":\"support\"},{\"text\":\"New feature launch tomorrow!\",\"timestamp\":\"2024-06-09T16:00:00Z\",\"channelId\":\"general\"}],\"timeframeHours\":24,\"includeSentiment\":true}", + "description": "Analyze support and general channel messages over last 24 hours to find trending complaints or announcements with sentiment." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "notifications.createPackage", + "description": "Creates a notification package that bundles multiple alert messages together for efficient delivery. Accepts an array of notification objects, each containing message content, type, and recipient info. Processes and organizes these into a single package object that can be sent to notification services or APIs.", + "category": "notifications", + "parameters": [ + { + "name": "notifications", + "type": "array", + "description": "An array of notification objects each including message content, type, priority, and recipient details.", + "required": true, + "defaultValue": "" + }, + { + "name": "packageName", + "type": "string", + "description": "A descriptive name for the notification package to identify it later.", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Overall priority level for this notification package (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "expirationTime", + "type": "number", + "description": "Time in minutes after which the notification package expires and should no longer be sent.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Flag indicating if timestamps should be added to each notification in the package.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A package object containing the aggregated notifications along with metadata such as packageName, createdTimestamp, priorityLevel, and expirationTime." + }, + "aiAgent": { + "useCase": "Use this tool when needing to batch multiple related notifications into a single package to optimize delivery and management, such as sending grouped alert messages to users or systems. Ideal for scenarios where multiple notifications are generated by different events but should be delivered collectively.", + "limitations": "This tool does not handle dispatching the notification package to any delivery channels or services; it only creates and organizes the package structure.", + "examples": [ + "Create a package of alert notifications to be sent as one batch to a monitoring dashboard.", + "Generate a notification package containing user messages for a daily summary email.", + "Bundle multiple system alerts into a high-priority package expiring in 15 minutes." + ] + }, + "tags": [ + "notifications", + "package", + "batch", + "alerts", + "delivery", + "management" + ], + "examples": [ + { + "inputJson": "{\"notifications\":[{\"type\":\"email\",\"recipient\":\"user@example.com\",\"message\":\"Your password will expire soon.\"},{\"type\":\"sms\",\"recipient\":\"+1234567890\",\"message\":\"System alert: CPU usage high.\"}],\"packageName\":\"UserAlerts\",\"priorityLevel\":\"high\",\"expirationTime\":60,\"includeTimestamp\":true}", + "description": "Create a high-priority notification package named 'UserAlerts' with email and SMS notifications that expire in 60 minutes." + }, + { + "inputJson": "{\"notifications\":[{\"type\":\"push\",\"recipient\":\"userDeviceId123\",\"message\":\"Daily summary ready.\"}],\"packageName\":\"DailySummary\",\"priorityLevel\":\"medium\",\"includeTimestamp\":false}", + "description": "Create a medium-priority package with a single push notification for the daily summary, without timestamps." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "messaging.analyzeHeading", + "description": "Analyzes headings (titles) in chat messages or threads to identify themes, sentiment, and relevance. Accepts text input representing message headings, performs natural language processing to extract key topics and sentiment indicators, and returns structured metadata summarizing the heading's content and emotional tone.", + "category": "messaging", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The textual content of the heading to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the heading text for accurate analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the heading text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of key topics to extract from the heading text.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis result containing extracted topics, sentiment score (if requested), and a summary of the heading's semantic meaning." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to interpret or summarize chat or message thread headings to understand conversation themes, prioritize messages, or customize responses based on heading content and tone.", + "limitations": "This tool analyzes only short heading text and may not capture complex context or sarcasm. It does not process full messages or conversation history.", + "examples": [ + "Analyze the heading 'Quarterly Sales Planning Meeting' to extract key topics and detect sentiment.", + "Determine the main themes in the chat thread title 'Project Deadline Approaching - Urgent' and check if tone is urgent or neutral.", + "Summarize the heading 'Team Outing Planning' focusing on topic extraction without sentiment analysis." + ] + }, + "tags": [ + "messaging", + "analysis", + "heading", + "sentiment", + "topic-extraction", + "NLP", + "chat" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Urgent: Server Outage Notification\",\"language\":\"en\",\"includeSentiment\":true,\"maxTopics\":3}", + "description": "Analyze heading indicating a critical server outage message with sentiment." + }, + { + "inputJson": "{\"headingText\":\"Weekly Marketing Sync\",\"language\":\"en\",\"includeSentiment\":false,\"maxTopics\":2}", + "description": "Extract topics from a routine marketing meeting heading without sentiment." + }, + { + "inputJson": "{\"headingText\":\"Product Launch Celebration\",\"language\":\"en\",\"includeSentiment\":true,\"maxTopics\":3}", + "description": "Analyze a positive team event heading for themes and sentiment." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "messaging.analyzeReference", + "description": "This tool accepts textual references or citations found within chat messages or messaging content, analyzes their context, relevance, and validity, and produces a detailed report summarizing the reference's source credibility, topical relevance, and usage in the conversation.", + "category": "messaging", + "parameters": [ + { + "name": "referenceText", + "type": "string", + "description": "The textual reference or citation extracted from the messaging content to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextWindow", + "type": "string", + "description": "Optional surrounding text or chat message context to improve analysis accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSource", + "type": "boolean", + "description": "Flag to check if the tool should attempt to validate the reference source URL or citation validity online.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') of the reference text to improve processing.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis summaries: a credibility score (0-1), relevance score (0-1), detected source metadata (if any), and a textual summary indicating key findings about the reference in context." + }, + "aiAgent": { + "useCase": "Use this tool when parsing messages that contain external references, citations, or links to understand how relevant and credible the referenced material is within the conversation. Helpful for summarizing and validating shared information in chat-based collaboration or customer support contexts.", + "limitations": "The tool cannot access paywalled or private references, nor can it guarantee real-time verification of all source information. It may not correctly interpret references without sufficient context or if the language syntax is ambiguous.", + "examples": [ + "Analyze if the citation shared in a chat about climate change is credible and relevant.", + "Summarize the context and reliability of references used in a technical support conversation.", + "Validate a URL reference provided during product discussion within messaging platform." + ] + }, + "tags": [ + "messaging", + "analysis", + "reference", + "citation", + "validation", + "relevance", + "credibility" + ], + "examples": [ + { + "inputJson": "{\"referenceText\":\"According to the IPCC 2021 report, global warming has accelerated.\",\"contextWindow\":\"In our last call, we discussed climate change impacts.\",\"validateSource\":true,\"language\":\"en\"}", + "description": "Analyze a climate change citation mentioned in chat context with source validation." + }, + { + "inputJson": "{\"referenceText\":\"Smith et al., 2020 showed new insights into AI.\",\"contextWindow\":\"This research paper is important for our AI project.\",\"validateSource\":false,\"language\":\"en\"}", + "description": "Analyze a research paper citation without validating the source URL." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "messaging.createSpec", + "description": "Generates a detailed messaging integration specification document based on provided requirements. It accepts inputs such as messaging protocols, supported features, authentication methods, and message format details, then outputs a comprehensive spec document outlining integration guidelines, API endpoints, and message schemas for implementation.", + "category": "messaging", + "parameters": [ + { + "name": "protocol", + "type": "string", + "description": "The messaging protocol to be specified, e.g., MQTT, WebSocket, XMPP", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedFeatures", + "type": "array", + "description": "List of key messaging features to include, such as presence, typing indicators, file transfer", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "Authentication mechanism to be detailed in the spec, e.g., OAuth2, JWT, Basic", + "required": true, + "defaultValue": "" + }, + { + "name": "messageFormat", + "type": "string", + "description": "The message format standard to define, such as JSON, XML, or Protocol Buffers", + "required": true, + "defaultValue": "" + }, + { + "name": "includeErrorHandling", + "type": "boolean", + "description": "Whether to include error handling and retry policies in the spec", + "required": false, + "defaultValue": "true" + }, + { + "name": "apiEndpoints", + "type": "object", + "description": "Optional custom API endpoint definitions to be documented, key-value pairs of endpoint names and paths", + "required": false, + "defaultValue": "{}" + }, + { + "name": "maxMessageSizeKb", + "type": "number", + "description": "Maximum message size in kilobytes supported by the messaging system", + "required": false, + "defaultValue": "64" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated messaging specification document as a formatted string and metadata such as creation date and version" + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate or update a messaging system integration specification document tailored to specific protocols and feature sets, useful for onboarding new developers or defining system requirements in messaging platform projects.", + "limitations": "This tool does not implement or validate the messaging system itself; it does not generate runnable code or test cases, only specification documents.", + "examples": [ + "Create a spec document for a WebSocket based chat system supporting presence and JWT authentication using JSON messages.", + "Generate a messaging spec for MQTT protocol with file transfer disabled but including error handling and OAuth2 authentication.", + "Produce a spec document defining API endpoints and max message size for a custom messaging integration using XML format." + ] + }, + "tags": [ + "messaging", + "specification", + "integration", + "protocol", + "document", + "API", + "real-time" + ], + "examples": [ + { + "inputJson": "{\"protocol\":\"WebSocket\",\"supportedFeatures\":[\"presence\",\"typing indicators\"],\"authenticationMethod\":\"JWT\",\"messageFormat\":\"JSON\",\"includeErrorHandling\":true,\"apiEndpoints\":{\"sendMessage\":\"/api/send\",\"receiveMessage\":\"/api/receive\"},\"maxMessageSizeKb\":128}", + "description": "Generate a WebSocket messaging spec with presence, typing indicators, JWT auth, JSON format, error handling, custom API endpoints, and 128 KB max message size." + }, + { + "inputJson": "{\"protocol\":\"MQTT\",\"supportedFeatures\":[],\"authenticationMethod\":\"OAuth2\",\"messageFormat\":\"JSON\",\"includeErrorHandling\":false,\"apiEndpoints\":{},\"maxMessageSizeKb\":64}", + "description": "Create an MQTT messaging spec with OAuth2 authentication and JSON messages without error handling or extra features." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "messaging.analyzeThreat", + "description": "This tool accepts real-time chat messages or message logs as input, then analyses the content using natural language processing and heuristic checks to detect potential security threats such as phishing attempts, malware links, spam, or suspicious user behavior. It outputs a detailed threat report including threat types detected, severity levels, and recommended mitigation actions.", + "category": "messaging", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of message objects or plain text strings representing chat messages to be analyzed for security threats.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMessageMetadata", + "type": "boolean", + "description": "Whether to include original message timestamps, sender IDs, and other metadata in the threat analysis report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "threatTypes", + "type": "array", + "description": "Optional list specifying which threat categories to analyze for, e.g., ['phishing', 'malware', 'spam']. If empty or omitted, analyze for all supported threat types.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The natural language of the messages to assist with language-specific analysis and detection.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of distinct threat findings to return. Limits the length of the output report.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "A structured report object detailing detected threats including message references, threat categories, severity scores (0-1), and recommended actions." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing chat conversations or messaging logs in real-time or post-event to detect potential security threats such as phishing, malware distribution attempts, spam campaigns, or suspicious user behavior patterns. It helps automate threat intelligence gathering from messaging platforms and supports proactive incident response.", + "limitations": "This tool cannot prevent or block threats automatically; it only analyzes and reports them. It may have limited accuracy for messages in unsupported languages or heavily obfuscated content. It does not replace manual security reviews or comprehensive endpoint protection.", + "examples": [ + "Analyze a batch of chat messages from a corporate Slack channel to detect phishing attempts.", + "Scan recent WhatsApp group messages for spam or malware links.", + "Identify suspicious user messages in a customer support chat system to flag potential social engineering attacks." + ] + }, + "tags": [ + "messaging", + "security", + "threatDetection", + "phishing", + "malware", + "spam", + "chatAnalysis" + ], + "examples": [ + { + "inputJson": "{\"messages\": [\"Urgent: please reset your password at http://fake-site.com immediately!\", \"Check out this cool new app: http://legit-site.com\"], \"includeMessageMetadata\": true, \"threatTypes\": [\"phishing\", \"malware\"], \"language\": \"en\", \"maxResults\": 10}", + "description": "Analyzing two chat messages with known phishing link patterns and benign links, including metadata, limiting results to phishing and malware threats." + }, + { + "inputJson": "{\"messages\": [\"Free giveaway! Click this link to claim your prize\", \"Hello team, the report is ready.\"], \"includeMessageMetadata\": false, \"language\": \"en\"}", + "description": "Scanning casual team chat messages for spam or phishing threats without metadata and for all threat types." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "messaging.generateTrend", + "description": "Generates trend analytics from real-time messaging data by analyzing message volumes, keywords, user activity, or sentiment over a specified timeframe. Accepts messaging logs and filtering parameters, and outputs summarized trends and visualizable metrics.", + "category": "messaging", + "parameters": [ + { + "name": "startTime", + "type": "string", + "description": "Start timestamp (ISO 8601) for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End timestamp (ISO 8601) for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of channel or conversation IDs to include in the trend analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "keywords", + "type": "array", + "description": "Optional list of keywords to focus the trend analysis on specific terms.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metric", + "type": "string", + "description": "Type of trend metric to generate: 'messageVolume', 'activeUsers', 'sentiment', or 'keywordFrequency'.", + "required": true, + "defaultValue": "messageVolume" + }, + { + "name": "timeGranularity", + "type": "string", + "description": "Aggregation interval for trend data, e.g. 'hourly', 'daily', or 'weekly'.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on messages for the trend (applicable if metric is 'sentiment').", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing trend data points over time and summary statistics relevant to the selected metric." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze messaging platform data to identify topic trends, user engagement patterns, or sentiment changes over time in specified channels or timeframes. It's ideal for generating insights for community management, customer support monitoring, or marketing analysis.", + "limitations": "Does not perform live real-time streaming analysis; data must be pre-collected. Sentiment analysis accuracy depends on message language support and may be limited.", + "examples": [ + "Show me the daily message volume trend in the #support channel for the past month.", + "Generate weekly sentiment trends in all company chat channels for the last quarter.", + "Analyze keyword frequency trends for 'launch' and 'update' in product team chats over the last 7 days." + ] + }, + "tags": [ + "messaging", + "analytics", + "trend", + "sentiment", + "keywordAnalysis", + "realTimeData", + "chat" + ], + "examples": [ + { + "inputJson": "{\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T23:59:59Z\",\"channels\":[\"general\"],\"keywords\":[],\"metric\":\"messageVolume\",\"timeGranularity\":\"daily\",\"includeSentimentAnalysis\":false}", + "description": "Generate daily message volume trends in the general channel over one week." + }, + { + "inputJson": "{\"startTime\":\"2024-03-01T00:00:00Z\",\"endTime\":\"2024-03-31T23:59:59Z\",\"channels\":[\"marketing\", \"sales\"],\"keywords\":[\"launch\", \"campaign\"],\"metric\":\"keywordFrequency\",\"timeGranularity\":\"weekly\",\"includeSentimentAnalysis\":false}", + "description": "Analyze weekly frequency of keywords 'launch' and 'campaign' in marketing and sales channels over March." + }, + { + "inputJson": "{\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-30T23:59:59Z\",\"channels\":[],\"keywords\":[],\"metric\":\"sentiment\",\"timeGranularity\":\"daily\",\"includeSentimentAnalysis\":true}", + "description": "Generate daily sentiment trend for all messaging channels during April with sentiment analysis enabled." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "messaging.renderImage", + "description": "Renders an image within a messaging platform or chat interface by processing input image URLs or base64 data along with optional styling parameters. Outputs a structured message payload that can be directly embedded and displayed in supported messaging clients to enhance real-time conversations.", + "category": "messaging", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "URL of the image to be rendered in the message. Must be publicly accessible or hosted appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "base64Data", + "type": "string", + "description": "Base64 encoded string of the image data as an alternative to imageUrl.", + "required": false, + "defaultValue": "" + }, + { + "name": "altText", + "type": "string", + "description": "Alternative text description for the image for accessibility and fallback display.", + "required": true, + "defaultValue": "\"Image\"" + }, + { + "name": "width", + "type": "number", + "description": "Width in pixels to display the image, maintaining aspect ratio if height is not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "Height in pixels to display the image, maintaining aspect ratio if width is not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "borderRadius", + "type": "number", + "description": "Optional border radius in pixels to apply rounded corners to the image.", + "required": false, + "defaultValue": "0" + }, + { + "name": "caption", + "type": "string", + "description": "Optional caption text to display below the image within the message.", + "required": false, + "defaultValue": "" + }, + { + "name": "clickableUrl", + "type": "string", + "description": "Optional URL that the image links to when clicked, enabling interactive images in messages.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the message content payload containing the image with applied styling and metadata, ready to be sent or rendered in a messaging client." + }, + "aiAgent": { + "useCase": "Use this tool when needing to embed images dynamically within chat messages, such as in customer support bots, social media messaging, or collaborative chat apps, allowing for image display with optional styling, captions, and clickable links to enhance user engagement and information richness.", + "limitations": "Does not perform image content validation or resizing beyond basic dimension constraints; the messaging platform must support embedded image payload format; managing image hosting or accessibility is outside its scope.", + "examples": [ + "Render an image in chat by URL with caption and rounded corners.", + "Embed a base64 encoded user's avatar in a message with accessible alt text.", + "Create a clickable promotional image linking to an external URL within a real-time chat." + ] + }, + "tags": [ + "messaging", + "image", + "rendering", + "chat", + "multimedia", + "real-time", + "embed" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/assets/welcome.png\",\"altText\":\"Welcome banner\",\"width\":400,\"borderRadius\":10,\"caption\":\"Welcome to our chat!\"}", + "description": "Render a welcome banner image from a URL with width and rounded corners plus a caption." + }, + { + "inputJson": "{\"base64Data\":\"iVBORw0KGgoAAAANS...\",\"altText\":\"User avatar\",\"width\":100}", + "description": "Embed a base64 encoded user avatar image with a fixed width." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.org/promo.jpg\",\"altText\":\"Promotion\",\"clickableUrl\":\"https://example.org/promo\"}", + "description": "Render a promotional image that links to the promotion page when clicked." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "messaging.formatParagraph", + "description": "Formats a given paragraph of text for real-time messaging applications by applying options such as line width wrapping, indentation, text alignment (left, right, center, justify), and optional trimming of whitespace. Accepts raw paragraph text and formatting parameters, and outputs the formatted string ready for chat display.", + "category": "messaging", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum number of characters per line before wrapping occurs.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to indent each line.", + "required": false, + "defaultValue": "0" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: left, right, center, or justify.", + "required": false, + "defaultValue": "left" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the paragraph before formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "The formatted paragraph string adjusted according to the specified formatting options, suitable for display in messaging clients." + }, + "aiAgent": { + "useCase": "Use this tool when you need to prepare or reformat paragraph text to comply with messaging display constraints, such as fixed-width lines, indentation levels, or specific alignment preferences in chat or messaging platforms. It helps create visually consistent and readable message blocks within real-time communication.", + "limitations": "Does not support rich text formatting such as bold, italics, colors, or embedded media; strictly formats plain text paragraphs with whitespace and alignment control.", + "examples": [ + "Format a message paragraph to fit within 60 characters per line with center alignment and 4-space indentation.", + "Reformat user input text trimming extra spaces and aligning left without indentation.", + "Prepare system notification paragraphs to justify text and wrap at 70 characters." + ] + }, + "tags": [ + "messaging", + "formatting", + "text", + "paragraph", + "chat", + "alignment", + "wrapping" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph that needs to be wrapped and formatted properly before sending it in a chat message.\",\"lineWidth\":50,\"indentation\":2,\"alignment\":\"left\",\"trimWhitespace\":true}", + "description": "Format a paragraph with 50 character line width, 2 spaces indentation, left aligned, trimming any extra whitespace." + }, + { + "inputJson": "{\"text\":\" Important announcement: Meeting is postponed to next Friday. Please update your calendars accordingly. \",\"lineWidth\":60,\"indentation\":0,\"alignment\":\"center\",\"trimWhitespace\":true}", + "description": "Center align a trimmed announcement centered to 60 characters width without indentation." + }, + { + "inputJson": "{\"text\":\"This paragraph should be justified and wrapped at 40 characters per line to look neat in the chat interface.\",\"lineWidth\":40,\"indentation\":3,\"alignment\":\"justify\",\"trimWhitespace\":false}", + "description": "Justify text with 40 character width and 3 spaces indentation without trimming spaces." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "messaging.formatInvoice", + "description": "Formats raw invoice data into a user-friendly, well-structured message suitable for real-time messaging platforms. Accepts invoice details including sender, recipient, itemized charges, totals, and optional payment instructions. Processes and organizes this data to produce a clean text or markdown formatted invoice message ready for chat display.", + "category": "messaging", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "Structured invoice data containing invoice number, dates, sender/recipient info, items, and totals.", + "required": true, + "defaultValue": "" + }, + { + "name": "includePaymentInstructions", + "type": "boolean", + "description": "Flag to include payment instructions section in the formatted message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currencySymbol", + "type": "string", + "description": "Currency symbol to display next to monetary values (e.g., $, €, £).", + "required": false, + "defaultValue": "$" + }, + { + "name": "formatType", + "type": "string", + "description": "Desired message format: 'plain' for plain text or 'markdown' for markdown formatting.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code to localize date and currency formatting (e.g., en-US, fr-FR).", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "Returns the formatted invoice message string ready for messaging platforms, along with metadata like length and format used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to present invoice information clearly and readably within a real-time messaging environment, such as a chat bot sending billing updates or invoices to customers. It helps convert structured invoice data into an appealing message that is compatible with messaging UI constraints.", + "limitations": "Cannot generate PDF or graphical invoices; does not handle payment processing or validate invoice correctness; limited to text or markdown formatting suitable for chat apps.", + "examples": [ + "Format an invoice object into a neat markdown message for a client chat.", + "Create a plain text invoice message excluding payment instructions for SMS delivery.", + "Format invoice with Euro currency and French locale for a European recipient." + ] + }, + "tags": [ + "messaging", + "formatting", + "invoice", + "billing", + "chatbot", + "real-time", + "document" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-1001\",\"dateIssued\":\"2024-05-01\",\"dueDate\":\"2024-05-15\",\"sender\":{\"name\":\"Acme Corp\",\"address\":\"123 Business Rd\",\"email\":\"billing@acme.com\"},\"recipient\":{\"name\":\"John Doe\",\"address\":\"456 Residential St\",\"email\":\"john@example.com\"},\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":150}],\"subTotal\":1500,\"tax\":150,\"total\":1650,\"paymentInstructions\":\"Please pay via bank transfer to Account #123456789.\"},\"includePaymentInstructions\":true,\"currencySymbol\":\"$\",\"formatType\":\"markdown\",\"locale\":\"en-US\"}", + "description": "Format a detailed invoice with payment instructions in markdown for US English locale." + }, + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"2024-INV-200\",\"dateIssued\":\"2024-04-10\",\"dueDate\":\"2024-04-20\",\"sender\":{\"name\":\"Tech Solutions\",\"email\":\"support@techsolutions.com\"},\"recipient\":{\"name\":\"Alice Smith\"},\"items\":[{\"description\":\"Software License\",\"quantity\":1,\"unitPrice\":299}],\"subTotal\":299,\"tax\":0,\"total\":299,\"paymentInstructions\":\"\"},\"includePaymentInstructions\":false,\"currencySymbol\":\"€\",\"formatType\":\"plain\",\"locale\":\"fr-FR\"}", + "description": "Format a simple invoice in plain text without payment instructions, using Euro currency and French locale." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "messaging.formatSummary", + "description": "Formats a concise and clear summary of chat messages or messaging session content. Accepts raw message text or message arrays, processes key points extraction and organizes them into a readable summary string suitable for messaging platforms or chat archives.", + "category": "messaging", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of message objects or strings representing the chat content to be summarized. Each message can include text and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired approximate length of the summary in number of sentences or bullet points.", + "required": false, + "defaultValue": "5" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Specifies the summary output style: 'bullet' for bullet points, 'paragraph' for prose summary.", + "required": false, + "defaultValue": "bullet" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include message timestamps in the summary where applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code to use for summary output, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted summary string of the input messaging content." + }, + "aiAgent": { + "useCase": "Use this tool to generate easy-to-read summaries of chat conversations for quick review, archive notes, or to provide concise updates from lengthy message threads. Critical in messaging or collaboration platforms where users need distilled insights without reading all messages.", + "limitations": "The tool summarizes text content but does not analyze message media like images or videos and may omit subtle conversational context or tone nuances.", + "examples": [ + "Summarize chat conversation messages from a team standup meeting into 3 bullet points.", + "Create a paragraph style summary of casual group chat messages covering project updates.", + "Generate a brief summary highlighting key points while including timestamps from customer service chat logs." + ] + }, + "tags": [ + "messaging", + "summary", + "formatting", + "chat", + "text processing", + "real-time" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"user\":\"Alice\",\"text\":\"We have a meeting at 3pm to discuss the Q3 targets.\"},{\"user\":\"Bob\",\"text\":\"I've updated the report and shared it with you.\"},{\"user\":\"Charlie\",\"text\":\"Don't forget to review the financials before the meeting.\"}],\"summaryLength\":3,\"formatStyle\":\"bullet\",\"includeTimestamps\":false,\"language\":\"en\"}", + "description": "Formatting a concise 3-point bullet summary from a brief chat exchange about a meeting." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "messaging.formatModule", + "description": "Formats a messaging module source code string to adhere to specified style guidelines, including indentation, line length, and comment style. Accepts raw code input and formatting options, and returns the formatted code output ready for integration or presentation.", + "category": "messaging", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw source code string of the messaging module to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "string", + "description": "String to use for one level of indentation (e.g. two spaces, tab).", + "required": false, + "defaultValue": " " + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum length of a single line before wrapping occurs.", + "required": false, + "defaultValue": "80" + }, + { + "name": "commentStyle", + "type": "string", + "description": "Style of comments to use, such as 'line' for // comments or 'block' for /* */ comments.", + "required": false, + "defaultValue": "line" + }, + { + "name": "useSemicolons", + "type": "boolean", + "description": "Whether to enforce semicolons at statement ends.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted source code string under 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to process raw messaging module code to produce clean, standardized, readable source code that complies with user or project style guidelines, for example in code generation or message protocol development environments.", + "limitations": "This tool does not perform syntax error detection or semantic validation of the code; it only formats existing, syntactically correct code.", + "examples": [ + "Format a raw messaging module code string to have 4 spaces indentation and block comments.", + "Format with no semicolons and max line length 120 for code presentation.", + "Convert a messaging module snippet to use tab indentation and line comments as per project standards." + ] + }, + "tags": [ + "messaging", + "formatting", + "code", + "module", + "source", + "style", + "development" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function sendMsg(msg){console.log(msg)}\",\"indentation\":\" \",\"maxLineLength\":100,\"commentStyle\":\"block\",\"useSemicolons\":true}", + "description": "Format a simple messaging module function with 4 spaces indentation, block style comments, and semicolons enabled." + }, + { + "inputJson": "{\"sourceCode\":\"const message=\\\"Hi\\\"\\nconsole.log(message)\",\"indentation\":\"\\t\",\"maxLineLength\":80,\"commentStyle\":\"line\",\"useSemicolons\":false}", + "description": "Format messaging module code with tab indentation, line comments, no semicolons." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "messaging.draftContract", + "description": "This tool generates a draft contract document based on provided contract details including parties involved, terms, and conditions. It processes structured inputs describing contract parameters and outputs a formatted textual draft suitable for review and negotiation.", + "category": "messaging", + "parameters": [ + { + "name": "partyAName", + "type": "string", + "description": "Name of the first contracting party.", + "required": true, + "defaultValue": "" + }, + { + "name": "partyBName", + "type": "string", + "description": "Name of the second contracting party.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractType", + "type": "string", + "description": "Type of contract to draft (e.g., employment, NDA, sales).", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Start date of the contract in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + }, + { + "name": "terminationDate", + "type": "string", + "description": "End date or termination date of the contract in YYYY-MM-DD format, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Description of the payment terms agreed upon by parties.", + "required": false, + "defaultValue": "" + }, + { + "name": "confidentialityClause", + "type": "boolean", + "description": "Whether to include a confidentiality clause in the contract.", + "required": false, + "defaultValue": "false" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction whose laws govern the contract.", + "required": false, + "defaultValue": "" + }, + { + "name": "specialConditions", + "type": "array", + "description": "List of any special conditions or clauses to include in the contract.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted contract text under 'contractText' key, suitable for review or sending in messaging environments." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a preliminary draft of a legally structured contract based on key contract details provided by users or clients in a chat or messaging context. It helps automate initial contract creation before legal review.", + "limitations": "This tool does not provide legal advice, verify legal validity, or replace professional contract drafting by a qualified lawyer. It generates a generic draft based on templates and inputs only.", + "examples": [ + "Draft a simple NDA contract between Company A and Company B effective from next Monday with confidentiality clause included.", + "Create an employment contract draft for a new hire with payment terms and special conditions about probation period.", + "Generate a sales contract draft specifying governing law as California and termination date after one year." + ] + }, + "tags": [ + "messaging", + "contract", + "drafting", + "legal", + "document", + "automation" + ], + "examples": [ + { + "inputJson": "{\"partyAName\":\"Alpha Corp\",\"partyBName\":\"Beta LLC\",\"contractType\":\"Non-Disclosure Agreement\",\"effectiveDate\":\"2024-07-01\",\"confidentialityClause\":true}", + "description": "Draft an NDA contract between Alpha Corp and Beta LLC starting July 1, 2024 with confidentiality clause." + }, + { + "inputJson": "{\"partyAName\":\"Delta Inc.\",\"partyBName\":\"Gamma Solutions\",\"contractType\":\"Employment Agreement\",\"paymentTerms\":\"Monthly salary of $5000 payable on the last day of each month.\",\"specialConditions\":[\"Three-month probation period\",\"Option for remote work\"]}", + "description": "Create employment contract draft for Delta Inc hiring from Gamma Solutions with specified payment terms and conditions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "messaging.buildInstance", + "description": "This tool provisions a new real-time messaging instance based on user-specified configurations. It accepts parameters like instance name, region, supported protocols, user capacity, and optional features such as message history retention and encryption. It processes these inputs to allocate infrastructure resources and returns connection details and status of the messaging instance setup.", + "category": "messaging", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "The desired unique name for the messaging instance to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region where the messaging instance infrastructure will be hosted.", + "required": true, + "defaultValue": "" + }, + { + "name": "protocols", + "type": "array", + "description": "List of real-time messaging protocols (e.g., WebSocket, MQTT) the instance will support.", + "required": true, + "defaultValue": "[\"WebSocket\"]" + }, + { + "name": "maxUsers", + "type": "number", + "description": "Maximum number of concurrent users supported by the messaging instance.", + "required": true, + "defaultValue": "1000" + }, + { + "name": "enableMessageHistory", + "type": "boolean", + "description": "Flag to enable or disable message history retention for the instance.", + "required": false, + "defaultValue": "true" + }, + { + "name": "enableEncryption", + "type": "boolean", + "description": "Flag to enable end-to-end encryption for messages in the instance.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customParameters", + "type": "object", + "description": "Optional key-value pairs for additional custom configurations for the messaging instance.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the instance ID, connection endpoints, status, and provisioned configuration details for the messaging instance." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a new messaging infrastructure instance for real-time chat or messaging solutions tailored to specific capacity, region, and feature requirements. It is ideal for automated deployments or multi-tenant messaging platforms needing dynamic instance provisioning.", + "limitations": "This tool does not handle user authentication management, post-creation scaling, or message routing logic. It purely provisions the messaging instance infrastructure with initial configurations.", + "examples": [ + "Create a messaging instance named 'chat-west' in the US West region supporting WebSocket and MQTT with encryption enabled.", + "Provision a messaging platform for 5000 users with message history disabled in Europe region.", + "Build a lightweight messaging instance with default settings for quick testing." + ] + }, + "tags": [ + "messaging", + "infrastructure", + "real-time", + "provisioning", + "chat", + "instance", + "deployment", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"chat-prod\",\"region\":\"us-east-1\",\"protocols\":[\"WebSocket\"],\"maxUsers\":2000,\"enableMessageHistory\":true,\"enableEncryption\":true,\"customParameters\":{\"autoScale\":true}}", + "description": "Create a production messaging instance in US East supporting WebSocket, with 2000 max users, message history and encryption enabled, plus auto-scaling." + }, + { + "inputJson": "{\"instanceName\":\"dev-test\",\"region\":\"eu-central-1\",\"protocols\":[\"MQTT\"],\"maxUsers\":100,\"enableMessageHistory\":false,\"enableEncryption\":false,\"customParameters\":{}}", + "description": "Set up a development testing instance in Europe supporting MQTT protocol with limited users and no message history or encryption." + }, + { + "inputJson": "{\"instanceName\":\"lightweight\",\"region\":\"ap-southeast-2\",\"protocols\":[\"WebSocket\"],\"maxUsers\":500,\"enableMessageHistory\":true,\"enableEncryption\":false,\"customParameters\":{\"loggingLevel\":\"verbose\"}}", + "description": "Build a lightweight messaging instance in Asia Pacific with verbose logging, message history enabled, no encryption, and 500 user capacity." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "messaging.composeSentence", + "description": "This tool composes a coherent sentence based on the provided topic, tone, and optional keywords. It accepts input parameters to guide sentence style and content focus, then generates a well-formed sentence suitable for real-time messaging or chat contexts.", + "category": "messaging", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main topic or subject of the sentence to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the sentence, such as formal, casual, friendly, or professional.", + "required": false, + "defaultValue": "casual" + }, + { + "name": "keywords", + "type": "array", + "description": "Optional list of keywords that should be included in the sentence to guide content specificity.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the composed sentence in characters.", + "required": false, + "defaultValue": "140" + }, + { + "name": "includeQuestion", + "type": "boolean", + "description": "Whether the sentence should be phrased as a question if applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed sentence as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a single coherent sentence that is relevant to a given topic and tailored to a specified tone or style. Especially useful in chatbots or messaging apps to generate quick, context-appropriate replies or prompts.", + "limitations": "It generates only a single sentence and may not handle complex multi-sentence or paragraph generation. Cannot guarantee topic expertise or factual accuracy without external validation.", + "examples": [ + "Compose a friendly sentence about the weather including the words 'sunny' and 'warm'.", + "Generate a professional sentence about project deadlines in formal tone.", + "Create a casual question sentence about weekend plans." + ] + }, + "tags": [ + "messaging", + "sentenceGeneration", + "textComposition", + "chatbot", + "realTimeMessaging" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"weather\",\"tone\":\"friendly\",\"keywords\":[\"sunny\",\"warm\"],\"maxLength\":100,\"includeQuestion\":false}", + "description": "Generate a friendly sentence about the weather including specified keywords." + }, + { + "inputJson": "{\"topic\":\"project deadlines\",\"tone\":\"formal\",\"keywords\":[],\"maxLength\":120,\"includeQuestion\":false}", + "description": "Generate a formal sentence about project deadlines without keywords." + }, + { + "inputJson": "{\"topic\":\"weekend plans\",\"tone\":\"casual\",\"keywords\":[],\"maxLength\":80,\"includeQuestion\":true}", + "description": "Generate a casual question sentence about weekend plans." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "messaging.composeParagraph", + "description": "This tool generates a cohesive paragraph suitable for real-time chat or messaging contexts. It accepts a topic or prompt, tone preference, and language style, then produces a fluid, contextually relevant paragraph optimized for clarity and engagement in chat environments.", + "category": "messaging", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme to build the paragraph around.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the paragraph, such as formal, friendly, or professional.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "languageStyle", + "type": "string", + "description": "Specifies the style or register of the language, e.g., casual, technical, or conversational.", + "required": false, + "defaultValue": "conversational" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the paragraph in sentences.", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to append a call to action at the end of the paragraph.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object with a single key 'paragraph' containing the composed paragraph text suitable for messaging contexts." + }, + "aiAgent": { + "useCase": "Use this tool when composing clear, contextually relevant paragraphs for chat or messaging platforms based on a given topic, tone, and style. It helps automate message creation fitting various communication scenarios such as customer support, marketing chat, or collaborative conversations.", + "limitations": "This tool does not generate multi-paragraph content or handle complex narratives. It also does not replace human judgment for sensitive or nuanced messaging requirements.", + "examples": [ + "Compose a friendly paragraph about cloud security basics.", + "Write a professional paragraph explaining project timeline updates.", + "Create a casual conversational paragraph introducing a new product feature." + ] + }, + "tags": [ + "messaging", + "compose", + "paragraph", + "chat", + "content-generation", + "tone", + "style" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"benefits of remote work\",\"tone\":\"friendly\",\"languageStyle\":\"conversational\",\"length\":4,\"includeCallToAction\":true}", + "description": "Compose a friendly, conversational paragraph about the benefits of remote work including a call to action." + }, + { + "inputJson": "{\"topic\":\"annual sales report summary\",\"tone\":\"professional\",\"languageStyle\":\"technical\",\"length\":3,\"includeCallToAction\":false}", + "description": "Generate a concise professional summary paragraph for an annual sales report without a call to action." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "messaging.buildVariable", + "description": "Creates a dynamic variable for use in real-time messaging platforms, accepting variable name, type, and optional initial value. Processes inputs to generate a variable definition object that can be integrated into chatbots or messaging workflows to store and manipulate contextual data.", + "category": "messaging", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The identifier name for the variable to be created in the messaging environment.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable, such as string, number, boolean, array, or object, defining what kind of data it will hold.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialValue", + "type": "string", + "description": "Optional initial value assigned to the variable as a string; it will be parsed according to variableType if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPersistent", + "type": "boolean", + "description": "Determines whether the variable’s value persists across different user sessions or is reset each time.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "Human-readable description or comment about the purpose of the variable within the messaging workflow.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed messaging variable, including name, type, initial value parsed appropriately, persistence flag, and description fields." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to define or configure variables dynamically within messaging platforms or chatbot flows to handle user data, control flow, or store session information. It helps programmatically build variable structures tailored to conversational logic or state management.", + "limitations": "This tool does not validate the context where the variable will be deployed; compatibility with specific messaging APIs or platforms must be ensured externally. It does not execute or evaluate variable usage, only builds the variable definition.", + "examples": [ + "Create a persistent string variable named 'userMood' with initial value 'happy' for chatbot state.", + "Define a numeric variable 'attemptCount' without initial value, non-persistent, for tracking user retries.", + "Build a boolean variable 'isSubscribed' with initial value 'false' and add description for newsletter subscription status." + ] + }, + "tags": [ + "messaging", + "variable", + "dynamic", + "chatbot", + "state-management", + "real-time", + "contextual-data" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"userMood\",\"variableType\":\"string\",\"initialValue\":\"happy\",\"isPersistent\":true,\"description\":\"Tracks the user's current mood\"}", + "description": "Create a persistent string variable 'userMood' initialized with 'happy' to track user's mood in chat." + }, + { + "inputJson": "{\"variableName\":\"attemptCount\",\"variableType\":\"number\",\"isPersistent\":false}", + "description": "Define a non-persistent numeric variable 'attemptCount' without initial value, used for counting user retries." + }, + { + "inputJson": "{\"variableName\":\"isSubscribed\",\"variableType\":\"boolean\",\"initialValue\":\"false\",\"description\":\"Indicates if user subscribed to newsletter\"}", + "description": "Build a boolean variable 'isSubscribed' with default false and description for subscription status." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "messaging.composeNotification", + "description": "This tool composes a structured notification message based on specified parameters such as title, body, receivers, priority, and optional action buttons. It accepts input details, formats them into a notification payload suitable for messaging platforms, and outputs the composed notification object in JSON format.", + "category": "messaging", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main heading or title of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content or body text of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "receivers", + "type": "array", + "description": "Array of user IDs or contact identifiers to receive the notification.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification (e.g., low, normal, high).", + "required": false, + "defaultValue": "normal" + }, + { + "name": "actionButtons", + "type": "array", + "description": "Optional action buttons with labels and associated callback URLs or commands.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sendTime", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying when to send the notification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A notification object containing all input fields organized and formatted, ready for delivery by downstream messaging services." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a notification message payload to be sent to one or more users, supporting customization of content, urgency, and interactive elements like action buttons. Ideal for real-time alerts, reminders, or updates within chat or messaging platforms.", + "limitations": "This tool only composes the notification message object and does not send or deliver the notification itself. It also does not localize content or handle user preferences.", + "examples": [ + "Compose a high priority alert notification to multiple users with action buttons.", + "Create a meeting reminder notification scheduled for a future time.", + "Generate a simple plain text notification for a single user." + ] + }, + "tags": [ + "messaging", + "notification", + "compose", + "real-time", + "alert", + "actionButtons", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Server Downtime Alert\",\"body\":\"The main server will be down for maintenance at 12:00 AM UTC.\",\"receivers\":[\"user123\",\"user456\"],\"priority\":\"high\",\"actionButtons\":[{\"label\":\"View Status\",\"url\":\"https://status.example.com\"}] }", + "description": "High priority server downtime alert sent to multiple users with a link button." + }, + { + "inputJson": "{\"title\":\"Meeting Reminder\",\"body\":\"Don't forget the team meeting tomorrow at 10 AM.\",\"receivers\":[\"team_leads\"],\"priority\":\"normal\",\"sendTime\":\"2024-06-15T09:00:00Z\"}", + "description": "Scheduled notification reminder for a team meeting with specified send time." + }, + { + "inputJson": "{\"title\":\"Welcome!\",\"body\":\"Thanks for joining our platform.\",\"receivers\":[\"new_user_789\"],\"priority\":\"low\"}", + "description": "Simple low priority welcome notification for a single new user." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "messaging.composeSummary", + "description": "This tool accepts a transcript or a collection of chat messages as input, processes the content to extract key points and main ideas, and produces a concise, coherent text summary suitable for sharing or archiving. It helps users quickly understand lengthy conversations by highlighting essential information.", + "category": "messaging", + "parameters": [ + { + "name": "chatTranscript", + "type": "string", + "description": "Complete text transcript of the chat or messaging conversation to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the summary in number of words. Controls verbosity.", + "required": false, + "defaultValue": "150" + }, + { + "name": "language", + "type": "string", + "description": "Language of the transcript and the summary (ISO language code, e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Whether to specifically identify and include action items in the summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text, optionally a list of identified action items if requested." + }, + "aiAgent": { + "useCase": "Use this tool when a user needs a concise overview of a lengthy chat or messaging conversation, especially to identify main discussion points and follow-up actions without reading the entire transcript. Ideal for meeting recaps, project chats, or customer support threads.", + "limitations": "The summary quality depends on input transcript clarity and language. It may not capture nuance or highly technical details and cannot replace a human review for critical decisions.", + "examples": [ + "Summarize this 2000-word customer support chat focusing on main issues and resolutions.", + "Generate a 100-word summary of a project discussion chat including next steps.", + "Provide a concise summary in Spanish of this team messaging thread." + ] + }, + "tags": [ + "messaging", + "summary", + "chat", + "conversation", + "real-time", + "action-items", + "text", + "communication" + ], + "examples": [ + { + "inputJson": "{\"chatTranscript\":\"User1: Hi, I am experiencing an issue with my order. User2: Sorry to hear that, can you provide your order number? User1: It's 12345. We will check and get back to you.\",\"maxSummaryLength\":100,\"includeActionItems\":true}", + "description": "Summarize a short customer support chat highlighting issue and actions." + }, + { + "inputJson": "{\"chatTranscript\":\"Team Lead: Please update the design document. Developer: I'll have it ready by tomorrow. Team Lead: Great, remember to review the specs.\",\"maxSummaryLength\":50,\"includeActionItems\":true}", + "description": "Summarize a short project chat with emphasis on tasks assigned." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "messaging.buildQuery", + "description": "Constructs a structured query object for filtering or searching messages in real-time messaging systems. Accepts filter criteria such as sender IDs, keywords, date ranges, and message status, processes these inputs into a query object compatible with messaging backends, and outputs a JSON query ready to be used for retrieving relevant messages efficiently.", + "category": "messaging", + "parameters": [ + { + "name": "senderIds", + "type": "array", + "description": "List of sender user IDs to filter messages by specific senders.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords to search for within message contents or metadata.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dateRange", + "type": "object", + "description": "Object specifying the start and end timestamps (ISO 8601) for filtering messages within a time range, e.g., {\"start\": \"2024-01-01T00:00:00Z\", \"end\": \"2024-01-31T23:59:59Z\"}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "status", + "type": "string", + "description": "Filter messages by delivery or read status (e.g., 'sent', 'delivered', 'read').", + "required": false, + "defaultValue": "" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of messages to return in the query result.", + "required": false, + "defaultValue": "50" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Sort order for the messages, either 'asc' for ascending or 'desc' for descending based on timestamp.", + "required": false, + "defaultValue": "\"desc\"" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the structured messaging query including filters, pagination, and sort instructions compatible with real-time messaging backend APIs." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate structured queries to filter or search messages in chat applications or messaging services based on multiple optional criteria such as sender, keywords, time frames, and message status. This is useful in building chatbot features, message search functions, or analytics dashboards.", + "limitations": "This tool does not itself execute the query or retrieve messages. It only builds the query object. It cannot parse unstructured natural language conditions into structured queries without additional NLP preprocessing.", + "examples": [ + "Create a message query filtering by sender IDs and keywords for searching recent chat messages.", + "Build a query to retrieve messages sent within the last week and sort them ascendingly by time.", + "Generate a query that fetches unread messages up to a specified limit." + ] + }, + "tags": [ + "messaging", + "query", + "filtering", + "search", + "real-time", + "chat", + "API" + ], + "examples": [ + { + "inputJson": "{\"senderIds\": [\"user123\", \"user456\"], \"keywords\": [\"urgent\", \"meeting\"], \"dateRange\": {\"start\": \"2024-06-01T00:00:00Z\", \"end\": \"2024-06-05T23:59:59Z\"}, \"limit\": 100, \"sortOrder\": \"asc\"}", + "description": "Builds a query to find messages from two senders containing keywords 'urgent' or 'meeting' within the first five days of June 2024, limiting results to 100, sorted ascending by timestamp." + }, + { + "inputJson": "{\"status\": \"unread\", \"limit\": 20}", + "description": "Constructs a query to get the latest 20 unread messages regardless of sender or keywords." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "messaging.buildComponent", + "description": "Builds a customizable messaging UI component given configuration parameters. Accepts settings such as component type (chat window, message list), theme, initial messages, and user settings. Produces a code snippet or object representing the configured messaging component ready for integration into applications.", + "category": "messaging", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of messaging component to build, e.g., 'chatWindow', 'messageList', 'messageInput'.", + "required": true, + "defaultValue": "" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme of the component, e.g., 'light', 'dark', or a custom theme identifier.", + "required": false, + "defaultValue": "light" + }, + { + "name": "initialMessages", + "type": "array", + "description": "An array of initial message objects to populate the component; each message includes sender, content, timestamp.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "userSettings", + "type": "object", + "description": "User-specific settings such as display name, avatar URL, and preferences.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableTypingIndicator", + "type": "boolean", + "description": "Whether to include a typing indicator in the component.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxMessageCount", + "type": "number", + "description": "Maximum number of messages to display in the component before truncation.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated messaging component code or configuration JSON, ready for rendering or further integration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate ready-to-use messaging UI components tailored to specific application requirements, such as chat windows with custom themes, initial message history, and user preferences. Ideal for building interactive real-time messaging interfaces in web or mobile apps without manually crafting UI code.", + "limitations": "This tool generates component configuration and code only; it does not handle backend messaging infrastructure, real-time message synchronization, or user authentication.", + "examples": [ + "Create a dark-themed chat window component with an initial welcome message and typing indicator enabled.", + "Build a message list component displaying up to 100 past messages with a custom user avatar and display name.", + "Generate a minimal message input component with default settings for quick integration." + ] + }, + "tags": [ + "messaging", + "UI", + "component", + "chat", + "real-time", + "build", + "integration" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"chatWindow\",\"theme\":\"dark\",\"initialMessages\":[{\"sender\":\"bot\",\"content\":\"Welcome to Support! How can I help you today?\",\"timestamp\":\"2024-06-20T08:00:00Z\"}],\"userSettings\":{\"displayName\":\"User123\",\"avatarUrl\":\"https://example.com/avatar.png\"},\"enableTypingIndicator\":true,\"maxMessageCount\":50}", + "description": "Build a dark-themed chat window with a welcome message, user display name and avatar, typing indicator, and message limit." + }, + { + "inputJson": "{\"componentType\":\"messageList\",\"theme\":\"light\",\"initialMessages\":[{\"sender\":\"alice\",\"content\":\"Hello!\",\"timestamp\":\"2024-06-19T12:30:00Z\"},{\"sender\":\"bob\",\"content\":\"Hi Alice!\",\"timestamp\":\"2024-06-19T12:31:00Z\"}],\"userSettings\":{},\"enableTypingIndicator\":false,\"maxMessageCount\":100}", + "description": "Create a light-themed message list component with a conversation history of two messages and no typing indicator." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "messaging.generateReference", + "description": "Generates a formatted reference text snippet for use in real-time messaging or chat, based on specified content such as URLs, document titles, authorship, and context notes. It processes inputs to produce a concise, standardized reference suitable for insertion into chat messages or threads.", + "category": "messaging", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the resource being referenced (e.g., document title, webpage heading).", + "required": true, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "The URL link to the resource, if applicable, to include in the reference.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the author or creator of the referenced content, if available.", + "required": false, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Publication or access date of the resource, in YYYY-MM-DD or readable format.", + "required": false, + "defaultValue": "" + }, + { + "name": "contextNote", + "type": "string", + "description": "Optional short note providing context or explanation for the reference within the chat.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The citation style to format the reference in, e.g., 'APA', 'MLA', 'Chicago'.", + "required": false, + "defaultValue": "APA" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'referenceText' string with a nicely formatted reference snippet ready to use in messaging platforms." + }, + "aiAgent": { + "useCase": "Use this tool when needing to insert a properly formatted reference to an external resource in a chat or messaging environment, enhancing clarity and credibility without manual formatting. Useful for summarizing sources during collaboration, support chats, or educational discussions.", + "limitations": "This tool formats references based on typical styles but does not verify the accuracy of the metadata or perform complex bibliographic management. It cannot fetch or validate URLs or metadata automatically; all inputs must be provided explicitly.", + "examples": [ + "Generate a quick APA style reference snippet for a shared article link in a team chat.", + "Create a message snippet citing a document title and author for educational discussion.", + "Format a reference with a context note explaining why the resource is relevant in a support conversation." + ] + }, + "tags": [ + "messaging", + "reference", + "formatting", + "citation", + "chat", + "integration", + "content" + ], + "examples": [ + { + "inputJson": "{\"title\":\"The Impact of AI on Daily Life\",\"url\":\"https://example.com/ai-impact\",\"author\":\"Jane Smith\",\"date\":\"2023-05-10\",\"contextNote\":\"Key points on automation effects.\",\"formatStyle\":\"APA\"}", + "description": "Generate an APA style reference snippet including title, URL, author, date, and a context note." + }, + { + "inputJson": "{\"title\":\"Project Guidelines Document\",\"author\":\"Project Team\",\"formatStyle\":\"MLA\"}", + "description": "Generate an MLA style reference mentioning only title and author without URL or date." + }, + { + "inputJson": "{\"title\":\"Open Source Contribution\",\"url\":\"https://github.com/repo\",\"formatStyle\":\"Chicago\"}", + "description": "Generate a Chicago style reference snippet for a GitHub repository with title and URL only." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "messaging.createTrend", + "description": "Analyzes real-time messaging data within a specified chat or channel to identify and create a trend report. Takes input parameters defining the time window, keywords, and analysis type, processes message frequency and keyword occurrences, and outputs a trend summary including top terms and activity spikes.", + "category": "messaging", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Identifier of the chat or messaging channel to analyze for trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 start time of the analysis period (e.g., 2024-01-01T00:00:00Z).", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 end time of the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "Optional list of keywords to track within messages to focus trend analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minFrequencyThreshold", + "type": "number", + "description": "Minimum frequency threshold for a term or keyword to be considered trending.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis in the trend report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A trend report object containing the channel ID, analysis period, top trending terms with frequency counts, optional sentiment scores, and identified activity spikes with timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing chat or messaging channels to detect emerging discussions, hot topics, or changing communication patterns over a given time interval. Especially useful for community managers or support centers to monitor conversation trends and user engagement.", + "limitations": "Does not provide predictive analytics or detailed topic modeling beyond keyword frequency and basic sentiment. Limited to channels with accessible real-time message data. Does not handle multimedia content analysis.", + "examples": [ + "Create a trend report for the general chat channel over the past 24 hours to see what topics are most discussed.", + "Identify trending keywords related to 'product launch' in the marketing team's messaging channel over the last week.", + "Analyze sentiment trends in the support channel messages for the previous month." + ] + }, + "tags": [ + "messaging", + "analytics", + "trend-analysis", + "chat", + "real-time", + "keywords", + "sentiment" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"general\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-02T00:00:00Z\"}", + "description": "Generate trend report for 'general' channel messages over one day." + }, + { + "inputJson": "{\"channelId\":\"marketing\",\"startTime\":\"2024-03-25T00:00:00Z\",\"endTime\":\"2024-03-30T23:59:59Z\",\"keywords\":[\"launch\",\"campaign\"],\"includeSentiment\":true}", + "description": "Analyze marketing channel for trends on 'launch' and 'campaign' keywords with sentiment included over one week." + }, + { + "inputJson": "{\"channelId\":\"support\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-07T00:00:00Z\",\"minFrequencyThreshold\":10}", + "description": "Create a trend report for the support channel showing keywords appearing at least 10 times in the past week." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "messaging.createHeading", + "description": "Creates a formatted heading string to be inserted into chat or messaging content. Accepts heading text and a level (e.g., H1, H2), and outputs a heading string formatted according to messaging platform conventions, supporting Markdown or simple markup for clear visual hierarchy.", + "category": "messaging", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The heading text content to display.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "The heading level (1-6) indicating heading importance or size.", + "required": false, + "defaultValue": "1" + }, + { + "name": "format", + "type": "string", + "description": "The markup format to use for the heading (e.g., 'markdown', 'plain').", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string ready to insert into message content." + }, + "aiAgent": { + "useCase": "Use this tool when generating or formatting chat messages that need clear structured headings, such as section titles or topic separators, to enhance message readability and organization in real-time messaging platforms supporting markup formatting.", + "limitations": "Does not support styling beyond simple markup formats; does not render headings visually but returns text formatted for display by the messaging client.", + "examples": [ + "Create a level 2 heading 'Project Update' in markdown format.", + "Generate a plain text heading 'Meeting Agenda' as level 3.", + "Format 'Warning' as a level 1 heading for chat message." + ] + }, + "tags": [ + "messaging", + "formatting", + "heading", + "chat", + "markdown", + "content" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Project Update\",\"level\":2,\"format\":\"markdown\"}", + "description": "Create a markdown formatted level 2 heading 'Project Update' for chat." + }, + { + "inputJson": "{\"text\":\"Meeting Agenda\",\"level\":3,\"format\":\"plain\"}", + "description": "Generate a plain text level 3 heading 'Meeting Agenda' without markup." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "messaging.createThreat", + "description": "Creates a structured security threat report within a messaging platform by accepting details like threat type, severity, description, affected components, and mitigation steps. The tool processes these inputs into a standardized threat alert message formatted for real-time chat integration, enabling rapid communication and tracking.", + "category": "messaging", + "parameters": [ + { + "name": "threatType", + "type": "string", + "description": "The category or type of the threat, e.g., 'Malware', 'Phishing', 'DDoS'.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the threat such as 'Low', 'Medium', 'High', or 'Critical'.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the threat including symptoms and indicators.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of system components or services impacted by the threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mitigationSteps", + "type": "array", + "description": "Recommended actions to mitigate or contain the threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectedAt", + "type": "string", + "description": "Timestamp of when the threat was detected in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Identifier for the user or system reporting the threat.", + "required": false, + "defaultValue": "" + }, + { + "name": "channelId", + "type": "string", + "description": "Messaging channel or chat room ID where the threat report will be posted.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A formatted threat alert object containing summary, detailed description, severity, affected components, mitigation actions, detection timestamp, reporter info, and the messaging channel reference." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or receives information about a security threat and needs to create a clear, actionable alert message within a real-time messaging or chat system. It enables consistent formatting and quick dissemination of threat data to relevant teams.", + "limitations": "This tool does not perform threat detection or analysis itself; it only formats and generates threat report messages for messaging platforms. It assumes input threat data is already validated and accurate.", + "examples": [ + "Create a critical malware threat alert for the messaging channel #security-alerts with detailed mitigation steps.", + "Report a phishing threat detected on email services to the 'incident-response' chat room.", + "Send a medium severity DDoS threat summary including affected web servers to the Ops Slack channel." + ] + }, + "tags": [ + "messaging", + "security", + "threat-reporting", + "chat-integration", + "real-time-alerts", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"threatType\":\"Phishing\",\"severity\":\"High\",\"description\":\"Suspicious emails targeting finance team with malicious attachments.\",\"affectedComponents\":[\"Email Server\",\"Finance Department\"],\"mitigationSteps\":[\"Block sender domain\",\"Notify users\",\"Increase email filters\"],\"detectedAt\":\"2024-06-01T10:15:30Z\",\"reportedBy\":\"securityBot01\",\"channelId\":\"incident-response\"}", + "description": "Generate a detailed high severity phishing threat alert targeting the finance department, posted to the incident response messaging channel." + }, + { + "inputJson": "{\"threatType\":\"DDoS\",\"severity\":\"Critical\",\"description\":\"Distributed denial of service attack affecting public web APIs.\",\"affectedComponents\":[\"Public API Gateway\"],\"mitigationSteps\":[\"Activate traffic filtering\",\"Scale infrastructure\"],\"detectedAt\":\"2024-06-02T14:45:00Z\",\"reportedBy\":\"networkMonitor\",\"channelId\":\"ops-channel\"}", + "description": "Create a critical DDoS incident alert for the operations chat channel with mitigation instructions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "messaging.createQueue", + "description": "Creates a new messaging queue for real-time communication and message processing. Accepts parameters like queue name, durability, and max message size. Returns confirmation with queue ID and configuration details for use in messaging systems.", + "category": "messaging", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifier for the queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "durable", + "type": "boolean", + "description": "Indicates whether the queue survives broker restarts (true) or not (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxMessageSize", + "type": "number", + "description": "Maximum size in bytes allowed for a single message in the queue.", + "required": false, + "defaultValue": "262144" + }, + { + "name": "autoDelete", + "type": "boolean", + "description": "If true, the queue will be automatically deleted when no consumers remain.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "array", + "description": "An array of string tags for categorizing or describing the queue.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priorityLevels", + "type": "number", + "description": "Number of priority levels supported for messages within the queue, default is no priority.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the queue's unique ID, name, configuration details, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when needing to provision a new messaging queue dynamically within an application or service that requires real-time message handling with configurable durability, size limits, and automatic lifecycle management.", + "limitations": "This tool does not handle message publishing or consumption, only queue creation. It also does not support configuring message retention policies or dead-letter queues.", + "examples": [ + "Create a durable queue named 'orders' for processing order messages with a 512 KB max message size.", + "Set up a temporary queue with auto-delete enabled for session-based message handling.", + "Create a priority queue with 3 levels for differentiated message processing." + ] + }, + "tags": [ + "messaging", + "queue", + "create", + "real-time", + "infrastructure", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"orders\",\"durable\":true,\"maxMessageSize\":524288}", + "description": "Create a durable 'orders' queue with 512 KB max message size." + }, + { + "inputJson": "{\"queueName\":\"tempSessionQueue\",\"autoDelete\":true}", + "description": "Create a temporary queue that auto deletes when no consumers exist." + }, + { + "inputJson": "{\"queueName\":\"priorityQueue\",\"priorityLevels\":3}", + "description": "Create a queue supporting 3 levels of message priority for urgent processing." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "messaging.createReply", + "description": "Creates a reply message in an existing conversation thread. Accepts the original message ID, the reply text, and optional metadata such as attachments or mentions. Generates a structured reply object linked to the original message, suitable for real-time chat systems to display threaded conversations.", + "category": "messaging", + "parameters": [ + { + "name": "originalMessageId", + "type": "string", + "description": "The unique identifier of the message being replied to.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyText", + "type": "string", + "description": "The textual content of the reply message.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects (e.g., images, files) to include with the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mentions", + "type": "array", + "description": "Optional array of user identifiers to mention in the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyToUserId", + "type": "string", + "description": "Optional user ID of the original message sender to notify or highlight the reply is directed towards them.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created reply message, including id, timestamp, linked original message, content, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to respond to a specific message within a chat or messaging system, ensuring the reply is properly linked as a thread or nested response. Suitable for conversational agents that maintain context and continuity in user interactions.", + "limitations": "This tool does not send the reply message to the chat system or perform delivery; it only creates a structured reply object. It also does not generate reply content automatically, requiring explicit replyText input.", + "examples": [ + "Create a reply to message ID 'msg1234' with text 'Thanks for the update!'", + "Reply to a user's message and mention another user for attention.", + "Include an image attachment while replying to a support query message." + ] + }, + "tags": [ + "messaging", + "reply", + "threading", + "chat", + "conversation" + ], + "examples": [ + { + "inputJson": "{\"originalMessageId\":\"msg1234\",\"replyText\":\"Thanks for the update!\",\"attachments\":[],\"mentions\":[],\"replyToUserId\":\"user5678\"}", + "description": "Simple text reply to a specified message ID." + }, + { + "inputJson": "{\"originalMessageId\":\"msg9876\",\"replyText\":\"@john I've assigned this to you.\",\"attachments\":[],\"mentions\":[\"john\"],\"replyToUserId\":\"user321\"}", + "description": "Reply mentioning another user to bring their attention." + }, + { + "inputJson": "{\"originalMessageId\":\"msg5555\",\"replyText\":\"Please see the attached screenshot.\",\"attachments\":[{\"type\":\"image\",\"url\":\"https://example.com/screenshot.png\"}],\"mentions\":[],\"replyToUserId\":\"user999\"}", + "description": "Reply with an image attachment to visually clarify an issue." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "messaging.createThread", + "description": "Creates a new messaging thread for real-time communication. Accepts parameters such as participants, thread title, and optional initial message. Processes these inputs to instantiate a unique conversation thread and returns details including thread ID, participants, and creation timestamp.", + "category": "messaging", + "parameters": [ + { + "name": "participants", + "type": "array", + "description": "An array of user IDs or usernames to include as members of the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "threadTitle", + "type": "string", + "description": "A descriptive title for the thread, visible to participants.", + "required": false, + "defaultValue": "" + }, + { + "name": "initialMessage", + "type": "string", + "description": "An optional initial message to post as the first communication in the thread.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Flag indicating whether the thread is private (true) or public (false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the created thread's unique ID, the list of participants, the thread title, creation timestamp, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initiate or setup a new chat conversation among multiple users for collaboration, support, or social interaction. Ideal for creating organized messaging groups with a common topic or objective.", + "limitations": "Cannot send messages beyond the optional initial message during creation; subsequent messaging requires separate tools. Does not support multimedia or rich content in initial message directly.", + "examples": [ + "Create a private thread titled 'Project Alpha Discussion' with members user123, user456, and user789.", + "Start a public thread with participants alice and bob with a greeting message.", + "Open a new conversation including the support team without any initial message." + ] + }, + "tags": [ + "messaging", + "thread", + "create", + "chat", + "communication", + "group", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"participants\":[\"user123\",\"user456\"],\"threadTitle\":\"Project Alpha Discussion\",\"initialMessage\":\"Welcome to the project thread!\",\"isPrivate\":true}", + "description": "Create a private project discussion thread with two users and a welcome message." + }, + { + "inputJson": "{\"participants\":[\"alice\",\"bob\"],\"threadTitle\":\"Coffee Break\",\"isPrivate\":false}", + "description": "Create a public informal thread between Alice and Bob without an initial message." + }, + { + "inputJson": "{\"participants\":[\"support_agent1\",\"support_agent2\"],\"isPrivate\":true}", + "description": "Set up a private support team thread with no title or initial message." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "messaging.createDeal", + "description": "Creates a new business deal record integrated into a real-time messaging platform. Accepts deal details such as title, value, stage, associated contacts, and optional notes. Processes input to create and store the deal, then outputs a summary including deal ID, status, and timestamps suitable for chat notifications or further workflow.", + "category": "messaging", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the deal to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "The monetary value of the deal, in the platform's default currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "stage", + "type": "string", + "description": "Current stage of the deal in the sales pipeline (e.g., prospecting, negotiation).", + "required": true, + "defaultValue": "" + }, + { + "name": "contacts", + "type": "array", + "description": "List of contact identifiers associated with this deal (e.g., user IDs or emails).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "expectedCloseDate", + "type": "string", + "description": "Expected close date of the deal in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Optional additional notes or comments about the deal.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the deal's unique identifier, title, deal value, stage, associated contacts, creation timestamp, and a status confirming successful creation." + }, + "aiAgent": { + "useCase": "Use this tool when a conversational AI or chat integration needs to programmatically create and log new sales deals within a messaging platform or CRM-integration environment to trigger notifications, track progress, or update sales pipelines dynamically.", + "limitations": "This tool does not handle complex validation beyond basic type and required checks. It does not integrate payment processing or external CRM systems directly; integrations must be handled separately.", + "examples": [ + "Create a new high-value deal titled 'Enterprise SaaS Agreement' with associated contacts and expected close date.", + "Add a deal in the negotiation stage with basic details and notify the sales team in chat.", + "Register a small-value lead deal with notes for follow-up next month." + ] + }, + "tags": [ + "messaging", + "deal", + "sales", + "crm", + "create", + "business", + "integration" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Enterprise SaaS Agreement\",\"dealValue\":150000,\"stage\":\"Prospecting\",\"contacts\":[\"john.doe@example.com\",\"jane.smith@example.com\"],\"expectedCloseDate\":\"2024-09-30\",\"notes\":\"Urgent client, prioritize.\"}", + "description": "Create a large enterprise deal with multiple contacts and expected closing date." + }, + { + "inputJson": "{\"title\":\"Website Redesign Project\",\"dealValue\":20000,\"stage\":\"Negotiation\",\"contacts\":[\"alice@example.com\"]}", + "description": "Create a mid-level negotiation stage deal with one contact and no expected close date or notes." + }, + { + "inputJson": "{\"title\":\"Consultation Lead\",\"dealValue\":5000,\"stage\":\"Lead\",\"notes\":\"Schedule meeting next week.\"}", + "description": "Add a low-value lead deal with notes, no contacts or expected close date." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "messaging.createIncident", + "description": "Creates a security incident report within a real-time messaging system by accepting details such as title, description, severity, affected systems, and reporters. It processes these inputs to generate a structured incident message, which can be posted in chat channels or incident management threads, facilitating timely awareness and tracking.", + "category": "messaging", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "A brief, descriptive title of the security incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed explanation of the incident including what happened and impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the incident (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of system names or identifiers impacted by the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Name or identifier of the person or system reporting the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp when the incident was detected or reported.", + "required": false, + "defaultValue": "" + }, + { + "name": "assignTeam", + "type": "string", + "description": "Name of the team or group assigned to handle the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyChannels", + "type": "array", + "description": "List of messaging channel IDs or names where the incident message should be posted.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the structured incident report including an incident ID, formatted message, and posting status in messaging channels." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or is informed of a security-related event during real-time messaging interactions and needs to formalize and communicate a security incident promptly to relevant teams or channels. It helps in starting incident response workflows and maintaining incident logs in chat contexts.", + "limitations": "This tool does not perform incident investigation, detection, or automatic remediation. It only creates and posts incident messages based on provided details and does not interface with external incident management systems unless connected via messaging channels.", + "examples": [ + "Create a new security incident for a detected data breach with high severity affecting database servers.", + "Report a medium severity phishing attempt reported by a user including username and timestamp.", + "Notify the security response team channel with details of a critical DDoS attack currently ongoing." + ] + }, + "tags": [ + "messaging", + "incident management", + "security", + "real-time", + "chat", + "alerting", + "notifications" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Unauthorized Access Detected\",\"description\":\"Multiple failed login attempts detected on main server.\",\"severity\":\"High\",\"affectedSystems\":[\"MainServer01\"],\"reportedBy\":\"IntrusionDetectionSystem\",\"timestamp\":\"2024-06-02T15:23:00Z\",\"assignTeam\":\"SecurityOps\",\"notifyChannels\":[\"sec-alerts\"]}", + "description": "Reporting a high severity unauthorized access attempt to the security operations team channel." + }, + { + "inputJson": "{\"title\":\"Suspicious Email Reported\",\"description\":\"User reported a suspicious email requesting credentials.\",\"severity\":\"Medium\",\"reportedBy\":\"jane.doe@example.com\",\"timestamp\":\"2024-06-02T10:05:00Z\",\"notifyChannels\":[\"phishing-alerts\"]}", + "description": "Create an incident for phishing attempt reported by an employee, posting to phishing alerts channel." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "messaging.createPipeline", + "description": "Creates a real-time messaging pipeline by configuring a sequence of processing stages such as message filtering, transformation, routing, and persistence. Accepts configuration parameters for each stage and outputs a pipeline ID and status confirming creation.", + "category": "messaging", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "A unique name identifier for the messaging pipeline to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "stages", + "type": "array", + "description": "An ordered array of processing stages, each defining actions like filtering, transforming, routing, or storing messages. Each stage is an object detailing its type and configurations.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of message flow through the pipeline stages.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxConcurrentMessages", + "type": "number", + "description": "Maximum number of messages that can be processed concurrently by the pipeline.", + "required": false, + "defaultValue": "100" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration object defining the retry behavior for failed message processing, including max retries and retry interval in milliseconds.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the pipelineId (string), a status field indicating success or failure, and an optional message for error details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to set up or configure a real-time messaging pipeline that processes streams of messages through customizable processing stages. Ideal for enabling complex message workflows, event filtering, transformations, or routing in chat and real-time messaging applications.", + "limitations": "This tool does not execute the pipeline or process messages in real-time itself; it only creates and configures the pipeline definition. Actual message processing requires separate runtime services.", + "examples": [ + "Create a messaging pipeline to filter messages containing certain keywords, then route them to distinct channels.", + "Set up a pipeline that transforms inbound message formats to a standard internal schema.", + "Create a pipeline with retry policy enabled for ensuring message delivery reliability." + ] + }, + "tags": [ + "messaging", + "pipeline", + "real-time", + "chat", + "workflow", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\": \"chatModerationPipeline\", \"stages\": [{\"type\": \"filter\", \"criteria\": {\"keywords\": [\"spam\", \"advertisement\"]}}, {\"type\": \"route\", \"destination\": \"moderationQueue\"}], \"enableLogging\": true}", + "description": "Creates a pipeline named chatModerationPipeline that filters messages containing 'spam' or 'advertisement' and routes them to a moderation queue with logging enabled." + }, + { + "inputJson": "{\"pipelineName\": \"messageTransformPipeline\", \"stages\": [{\"type\": \"transform\", \"rules\": {\"convertTo\": \"json\"}}, {\"type\": \"persist\", \"storage\": \"db\"}], \"maxConcurrentMessages\": 50}", + "description": "Defines a pipeline to transform all incoming messages to JSON format and persist them in a database, limiting concurrent processing to 50 messages." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "messaging.createHTML", + "description": "Generates HTML content for real-time messaging environments by processing plain text input with optional rich formatting features like emojis, links, and inline styles. Accepts message text and configuration parameters to produce sanitized, styled HTML suitable for embedding in chat UIs.", + "category": "messaging", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The raw message text to be converted into HTML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableEmojis", + "type": "boolean", + "description": "Whether to parse and convert emoji shortcodes (e.g., :smile:) into Unicode emoji characters or emoji images.", + "required": false, + "defaultValue": "true" + }, + { + "name": "linkifyUrls", + "type": "boolean", + "description": "If true, detects URLs in the message text and converts them into clickable HTML links.", + "required": false, + "defaultValue": "true" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "Indicates whether to escape HTML characters in the input text to prevent HTML injection (true by default).", + "required": false, + "defaultValue": "true" + }, + { + "name": "customStyles", + "type": "object", + "description": "An optional dictionary of CSS style properties and values to apply inline to the message container element.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "allowMarkdown", + "type": "boolean", + "description": "If enabled, basic markdown syntax (bold, italics, links) in the message text will be converted to the corresponding HTML tags.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string with optional metadata such as a flag indicating if emojis or links were included." + }, + "aiAgent": { + "useCase": "Use this tool when generating HTML-based message content for real-time chat or messaging platforms to transform plain text and simple formatting features into safe, styled HTML ready for rendering in user interfaces. It is ideal for displaying user-generated messages with proper handling of emojis, URLs, and optional markdown formatting.", + "limitations": "This tool does not support complex HTML layouts or scripts inside the message. It cannot parse advanced markdown features beyond basic formatting, nor embed media such as videos or images besides emojis and links. It also does not handle message localization or translation.", + "examples": [ + "Create an HTML message with emojis enabled from plain text: 'Hello :wave:, check this out: http://example.com'", + "Generate HTML from markdown-enabled message: '**Hello**, visit [our site](http://example.com)!'", + "Produce sanitized HTML from user input disabling linkify for messages that should not contain links." + ] + }, + "tags": [ + "messaging", + "html-generation", + "chat", + "text-processing", + "rich-text", + "emojis", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Hello :smile:, visit https://example.org\",\"enableEmojis\":true,\"linkifyUrls\":true,\"escapeHtml\":true,\"allowMarkdown\":false}", + "description": "Convert plain text with emoji shortcode and URL into safe HTML with emojis and clickable link." + }, + { + "inputJson": "{\"messageText\":\"**Bold Text** and _italic text_\",\"enableEmojis\":false,\"linkifyUrls\":false,\"escapeHtml\":true,\"allowMarkdown\":true}", + "description": "Parse minimal markdown syntax into HTML for bold and italic styles without emojis or links." + }, + { + "inputJson": "{\"messageText\":\"<script>alert('xss')</script>Just text\",\"enableEmojis\":false,\"linkifyUrls\":false,\"escapeHtml\":true,\"allowMarkdown\":false}", + "description": "Escape HTML input to prevent injection while generating plain HTML text content." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "messaging.createAttachment", + "description": "Creates a message attachment object suitable for real-time messaging platforms. Accepts inputs such as attachment type (image, video, audio, file), a URL or base64 content, title, description, and metadata. Processes these inputs to generate a standardized attachment object for sending or displaying within chat messages.", + "category": "messaging", + "parameters": [ + { + "name": "attachmentType", + "type": "string", + "description": "The type of the attachment, e.g. 'image', 'video', 'audio', or 'file'.", + "required": true, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "The public URL of the attachment media. Use if content is externally hosted.", + "required": false, + "defaultValue": "" + }, + { + "name": "base64Content", + "type": "string", + "description": "Base64 encoded content of the attachment if inline upload is required instead of URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title or name for the attachment displayed in chat.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description or caption for the attachment.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata related to the attachment, such as file size, MIME type, or custom attributes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Standardized attachment object including type, content URL or inline data, title, description, and any associated metadata for messaging platform integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate an attachment object to include media or files in a chat or messaging interaction. It helps structure and format the attachment data properly for messaging APIs, enabling correct display and handling within conversations.", + "limitations": "This tool does not upload or host media content; it only constructs the attachment object. It requires the media to already be hosted or provided as base64 content. It does not handle message sending or routing, only attachment creation.", + "examples": [ + "Create an image attachment with a URL and a caption to send in chat.", + "Generate a video attachment with metadata for duration and format.", + "Create a file attachment with base64 encoded content and a title for inline display." + ] + }, + "tags": [ + "messaging", + "attachment", + "media", + "real-time", + "chat", + "fileUpload", + "integration" + ], + "examples": [ + { + "inputJson": "{\"attachmentType\":\"image\",\"url\":\"https://example.com/photo.jpg\",\"title\":\"Holiday Photo\",\"description\":\"Photo from my vacation.\"}", + "description": "Create an image attachment from an external URL with a title and description." + }, + { + "inputJson": "{\"attachmentType\":\"video\",\"url\":\"https://cdn.example.com/video.mp4\",\"metadata\":{\"duration\":120,\"format\":\"mp4\"}}", + "description": "Create a video attachment using a URL and including metadata about duration and format." + }, + { + "inputJson": "{\"attachmentType\":\"file\",\"base64Content\":\"VGhpcyBpcyBhIHRleHQgZmlsZS4=\",\"title\":\"notes.txt\",\"description\":\"Meeting notes as a text file.\"}", + "description": "Create a file attachment using base64 encoded text content with a title and description." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "messaging.createPackage", + "description": "Creates a messaging integration package containing code and configuration files for embedding real-time chat functionalities into applications. It accepts parameters defining the target platform, supported features, and customization options, then generates a downloadable package with source code and setup instructions.", + "category": "messaging", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "Target platform for the messaging package (e.g., \"web\", \"ios\", \"android\", \"nodejs\").", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of messaging features to include such as [\"text\", \"fileTransfer\", \"typingIndicators\", \"presence\", \"readReceipts\"].", + "required": true, + "defaultValue": "[\"text\"]" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the generated code (e.g., \"javascript\", \"typescript\", \"swift\", \"kotlin\").", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "includeUiComponents", + "type": "boolean", + "description": "Whether to include ready-to-use UI components for chat interfaces.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customizationOptions", + "type": "object", + "description": "Object containing UI and behavior customization settings like colors, fonts, and notification preferences.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing a download URL for the generated package, package metadata including platform, features included, creation date, and size in bytes." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a ready-to-integrate messaging package tailored to a specific platform and set of features, enabling quick startup of chat functionalities in application development. It produces source code and configuration files packaged for developer convenience.", + "limitations": "Does not compile or deploy the code; integration and backend setup require additional steps not covered by this tool. Limited to predefined platforms and feature sets. Complex custom backends or protocols not supported.", + "examples": [ + "Create a web messaging package with text and file transfer support in JavaScript including UI components.", + "Generate an iOS messaging package with text only, no UI components, in Swift.", + "Build a Node.js messaging package with presence and read receipts features and default customization options." + ] + }, + "tags": [ + "messaging", + "package", + "code generation", + "chat", + "integration", + "real-time", + "sdk" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"web\",\"features\":[\"text\",\"fileTransfer\"],\"language\":\"javascript\",\"includeUiComponents\":true,\"customizationOptions\":{\"themeColor\":\"#0066ff\"}}", + "description": "Generate a web messaging package with text and file transfer features using JavaScript and custom theme color." + }, + { + "inputJson": "{\"platform\":\"ios\",\"features\":[\"text\"],\"language\":\"swift\",\"includeUiComponents\":false,\"customizationOptions\":{}}", + "description": "Create an iOS package for text messaging in Swift without UI components." + }, + { + "inputJson": "{\"platform\":\"nodejs\",\"features\":[\"presence\",\"readReceipts\"],\"language\":\"typescript\",\"includeUiComponents\":true,\"customizationOptions\":{}}", + "description": "Build a Node.js messaging package with presence and read receipts including UI components in TypeScript." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "messaging.createSchema", + "description": "Creates a JSON schema definition for messaging data structures used in real-time chat or messaging systems. Accepts a schemaName, description, and an object defining fields with their types and constraints. Produces a standardized JSON schema object validating message payloads for integration and validation purposes.", + "category": "messaging", + "parameters": [ + { + "name": "schemaName", + "type": "string", + "description": "The unique name identifier for the messaging schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A human-readable description explaining the purpose of the schema.", + "required": false, + "defaultValue": "" + }, + { + "name": "fields", + "type": "object", + "description": "An object defining field names as keys and their type definitions including data type, required flag, and possible constraints.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON schema object representing the defined messaging structure, suitable for validating real-time message payloads." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define or generate JSON schemas for messaging payloads to enforce structure and validate incoming or outgoing chat messages in real-time systems. It helps automate schema creation from defined field metadata to ensure data consistency.", + "limitations": "Does not generate message handling logic or database schemas. Only creates JSON schema definitions based on provided field parameters.", + "examples": [ + "Create a chat message schema with fields: senderId (string, required), messageText (string, required), timestamp (number, optional).", + "Generate a notification message schema with title (string), body (string), priority (enum)." + ] + }, + "tags": [ + "messaging", + "schema", + "json-schema", + "real-time", + "validation", + "chat", + "data-structure" + ], + "examples": [ + { + "inputJson": "{\"schemaName\":\"ChatMessage\",\"description\":\"Schema for real-time chat messages.\",\"fields\":{\"senderId\":{\"type\":\"string\",\"required\":true},\"messageText\":{\"type\":\"string\",\"required\":true},\"timestamp\":{\"type\":\"number\",\"required\":false}}}", + "description": "Defines a schema for a chat message with sender ID, text, and optional timestamp." + }, + { + "inputJson": "{\"schemaName\":\"NotificationMessage\",\"description\":\"Schema for system notifications.\",\"fields\":{\"title\":{\"type\":\"string\",\"required\":true},\"body\":{\"type\":\"string\",\"required\":true},\"priority\":{\"type\":\"string\",\"required\":false,\"enum\":[\"low\",\"medium\",\"high\"]}}}", + "description": "Defines a notification message schema with title, body, and optional priority level." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "email-communication.analyzeAnomaly", + "description": "This tool accepts email sending metrics such as volume, bounce rates, and open rates over time as input. It applies statistical and machine learning anomaly detection algorithms to identify unusual patterns or deviations in email campaign performance. The output is a detailed report highlighting detected anomalies, their severity, possible causes, and recommended actions for investigation or remediation.", + "category": "email-communication", + "parameters": [ + { + "name": "emailMetrics", + "type": "array", + "description": "An array of objects representing email sending metrics over time, each with timestamp and key performance indicators such as sends, bounces, opens, clicks.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "An object defining the start and end timestamps to limit the analysis period. Format: {\"start\":\"ISO8601 string\",\"end\":\"ISO8601 string\"}.", + "required": false, + "defaultValue": "" + }, + { + "name": "metricFields", + "type": "array", + "description": "List of specific metric keys within emailMetrics to analyze for anomalies (e.g., [\"bounceRate\",\"openRate\"]). If empty or omitted, all metrics are analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sensitivity", + "type": "number", + "description": "A number between 0 and 1 indicating how sensitive the anomaly detection should be; higher values detect more anomalies but increase false positives.", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include recommended actions and possible causes in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured anomaly report containing a list of detected anomalies with details including metric name, timestamp, anomaly score, severity level, description, and optionally recommended actions and possible causes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to monitor and diagnose irregularities in email campaign performance metrics over time. It helps detect sudden drops in open rates, spikes in bounce rates, or unusual sending volumes that may indicate technical issues or deliverability problems.", + "limitations": "This tool cannot resolve the anomalies automatically; it only detects and describes them. It requires properly formatted historical metric data and may not perform well with very sparse or inconsistent data. It also does not diagnose root causes beyond statistical correlation suggestions.", + "examples": [ + "Identify any anomalies in the last 30 days of our weekly newsletter bounce rates and opens.", + "Analyze the email volume and bounce rate metrics for our transactional emails over the previous quarter to detect any unusual activity.", + "Check for anomalies in open and click rates for a given campaign timeframe with high sensitivity to early detect deliverability issues." + ] + }, + "tags": [ + "email", + "anomaly-detection", + "analytics", + "email-campaign", + "monitoring", + "performance", + "automation" + ], + "examples": [ + { + "inputJson": "{\"emailMetrics\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"sendVolume\":10000,\"bounceRate\":0.02,\"openRate\":0.25},{\"timestamp\":\"2024-05-02T00:00:00Z\",\"sendVolume\":10500,\"bounceRate\":0.03,\"openRate\":0.20},{\"timestamp\":\"2024-05-03T00:00:00Z\",\"sendVolume\":9500,\"bounceRate\":0.05,\"openRate\":0.10}],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-03T00:00:00Z\"},\"metricFields\":[\"bounceRate\",\"openRate\"],\"sensitivity\":0.8,\"includeRecommendations\":true}", + "description": "Analyze recent bounce and open rates to detect significant anomalies in a 3-day window." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "email-communication.analyzeVulnerability", + "description": "This tool analyzes the security vulnerabilities in an email communication system or message by evaluating email headers, content, links, and attachments. It accepts raw email data or metadata, scans for known threats like phishing, spoofing, malicious attachments, and suspicious links, then outputs a detailed vulnerability report highlighting risks and mitigation suggestions.", + "category": "email-communication", + "parameters": [ + { + "name": "rawEmailData", + "type": "string", + "description": "Raw email message content including headers and body to analyze for vulnerabilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "analyzeLinks", + "type": "boolean", + "description": "Flag to enable scanning of URLs within the email content for phishing or malicious sites.", + "required": false, + "defaultValue": "true" + }, + { + "name": "scanAttachments", + "type": "boolean", + "description": "Whether to analyze email attachments for malware or suspicious file types.", + "required": false, + "defaultValue": "true" + }, + { + "name": "knownThreatPatterns", + "type": "array", + "description": "Custom list of threat signatures or indicators of compromise to detect during analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') to improve content analysis and contextual understanding.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Structured vulnerability report detailing issues found, severity levels, affected components, and recommended actions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the security posture of email messages or infrastructure by detecting vulnerabilities such as spoofing, phishing attempts, malicious attachments, or anomaly in headers. Ideal for automated monitoring, alerting, or pre-delivery filters in email communication systems.", + "limitations": "Does not remove or quarantine emails. Cannot guarantee detection of all zero-day exploits or new phishing tactics without updated threat signatures. Analysis quality depends on completeness of input email data.", + "examples": [ + "Analyze an incoming email's headers and body for signs of spoofing and suspicious links.", + "Evaluate attachments of a received email for malware risk before delivery.", + "Scan a batch of emails using custom threat pattern indicators to detect targeted phishing campaigns." + ] + }, + "tags": [ + "email", + "security", + "vulnerability", + "phishing", + "malware", + "analysis", + "communication" + ], + "examples": [ + { + "inputJson": "{\"rawEmailData\":\"From: attacker@example.com\\nTo: victim@example.com\\nSubject: Urgent Account Update Needed\\n\\nPlease verify your account by clicking http://malicious-link.com\",\"analyzeLinks\":true,\"scanAttachments\":false,\"language\":\"en\"}", + "description": "Analyze an email with a suspicious phishing link in the body." + }, + { + "inputJson": "{\"rawEmailData\":\"From: trusted@company.com\\nTo: employee@company.com\\nSubject: Monthly Report\\n\\nPlease see attached report.\",\"analyzeLinks\":false,\"scanAttachments\":true}", + "description": "Check attachments of a trusted email for malware presence." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "email-communication.analyzeExpense", + "description": "Analyzes expense-related emails to extract and summarize key financial details such as amounts, dates, vendors, and expense categories. Accepts raw email content or structured email data as input, processes natural language to identify expense information, and outputs a structured summary report highlighting relevant expense items and totals.", + "category": "email-communication", + "parameters": [ + { + "name": "emailContent", + "type": "string", + "description": "The full raw content of the expense email to analyze, including subject and body text.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The expected currency code (e.g., USD, EUR) for amounts found in the email, to normalize financial data.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "extractReceipts", + "type": "boolean", + "description": "Indicates whether to attempt identifying and extracting receipt details if embedded or attached in the email.", + "required": false, + "defaultValue": "false" + }, + { + "name": "expenseCategories", + "type": "array", + "description": "Optional list of predefined expense categories to classify expenses in the email (e.g., Travel, Meals, Supplies).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Preferred date format string to properly parse and format any dates found in the expense details.", + "required": false, + "defaultValue": "YYYY-MM-DD" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis result providing extracted expense details, including total amounts, vendor names, expense categories, dates, and a summary text." + }, + "aiAgent": { + "useCase": "Use this tool when processing incoming or stored emails that contain expense claims or financial transactions, to automate extraction and summarization of expense data for reporting or auditing purposes.", + "limitations": "Cannot verify the authenticity of expense claims or attachments; accuracy depends on the clarity and format of the input email content. Complex or ambiguous language may reduce extraction quality.", + "examples": [ + "Analyze this expense report email and summarize total amounts and vendors.", + "Extract and categorize expenses from the attached receipt emails.", + "Provide a structured summary of dates, amounts, and categories from expense notification emails." + ] + }, + "tags": [ + "email", + "expense", + "financial-analysis", + "automation", + "nlp", + "business" + ], + "examples": [ + { + "inputJson": "{\"emailContent\":\"Subject: Expense report for March\\nHi Finance Team,\\nPlease find below the expenses for March:\\n- Uber: $45.60 on 2024-03-10\\n- Lunch with client: $78.90 on 2024-03-12\\nRegards, John\"}", + "description": "A typical email listing a few expense items with amounts and dates, to extract and summarize." + }, + { + "inputJson": "{\"emailContent\":\"Invoice from Acme Supplies\\nAmount: $350.00\\nDate: 2024-04-01\\nCategory: Office Supplies\"}", + "description": "An invoice email containing a single expense item to categorize and extract key details." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "email-communication.renderSummary", + "description": "Generates a concise summary of an email thread or conversation based on provided email content, including key points like sender, recipients, timestamps, and main discussion topics. Accepts raw email text or structured email data and produces a human-readable summary for quick review.", + "category": "email-communication", + "parameters": [ + { + "name": "emailContent", + "type": "string", + "description": "Raw email thread content or full text of emails to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the summary output, e.g., 'text' for plain text or 'html' for formatted summary.", + "required": false, + "defaultValue": "text" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the summary in characters. If not set, generates a summary of default concise length.", + "required": false, + "defaultValue": "300" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata like sender, recipients, and timestamps in the summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summarized email content in the requested format plus metadata fields if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a quick, concise summary of lengthy or multiple email messages to help users understand key points and context without reading the full thread. Useful for inbox triage, email thread overviews, and follow-up preparation.", + "limitations": "Cannot replace detailed reading for complex email threads with nuanced content. May not fully capture tone or subtle context. Works best with text-based email content; attachments or embedded content are not summarized.", + "examples": [ + "Summarize the latest email thread about the project update.", + "Generate a short HTML summary of the email conversation received today including senders and timestamps.", + "Provide a plain text brief summary of this long email exchange limiting summary to 200 characters." + ] + }, + "tags": [ + "email", + "summary", + "communication", + "automation", + "thread", + "content-summarization" + ], + "examples": [ + { + "inputJson": "{\"emailContent\":\"From: John Doe <john@example.com>\\nTo: Team <team@example.com>\\nDate: April 25, 2024\\nSubject: Project Update\\n\\nHi Team,\\nThe project is on schedule and we completed phase 1 successfully. Next steps involve testing.\\nThanks,\\nJohn\",\"format\":\"text\",\"maxLength\":250,\"includeMetadata\":true}", + "description": "Summarize a short project update email including metadata in plain text." + }, + { + "inputJson": "{\"emailContent\":\"Subject: Meeting Recap\\nFrom: Jane Smith <jane@example.com>\\nDate: April 24, 2024\\n\\nDuring today's meeting, we agreed on the budget increase and allocated new tasks to the marketing team.\",\"format\":\"html\",\"includeMetadata\":false}", + "description": "Generate an HTML summary of a meeting recap email without sender/recipient metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "email-communication.renderSentence", + "description": "This tool takes a sentence template with placeholders and a context object to dynamically render a complete sentence for email content. It replaces placeholders in the template with corresponding values from the context to produce personalized or contextual sentences suitable for email communication.", + "category": "email-communication", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "A sentence template containing placeholders enclosed in {{}} to be replaced with context values.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "object", + "description": "An object providing key-value pairs to substitute into the template placeholders.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeFirst", + "type": "boolean", + "description": "If true, capitalize the first letter of the resulting sentence.", + "required": false, + "defaultValue": "false" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, trim leading and trailing whitespace in the rendered sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully rendered sentence after placeholder substitution and optional formatting." + }, + "aiAgent": { + "useCase": "Use this tool when generating personalized or dynamic email content where sentences need to be constructed from templates that include placeholders for recipient-specific information or context variables. It enables rendering natural language sentences by merging input data into templated text fragments, supporting email automation and customization.", + "limitations": "This tool only performs placeholder substitution in sentence templates and simple formatting. It does not generate or paraphrase sentences, nor validate context completeness. Placeholders must exactly match context keys. Complex logic or conditional branching in templates is not supported.", + "examples": [ + "Render a greeting sentence with recipient's first name: 'Hello {{firstName}}, welcome to our newsletter.'", + "Generate a sentence confirming an appointment date using 'Your appointment is on {{appointmentDate}} at {{appointmentTime}}.'", + "Produce a sentence reporting order status: 'Dear {{customerName}}, your order {{orderId}} has been shipped.'" + ] + }, + "tags": [ + "email", + "template-rendering", + "personalization", + "automation", + "sentence-generation" + ], + "examples": [ + { + "inputJson": "{\"template\":\"Hello {{firstName}}, your subscription expires on {{expiryDate}}.\",\"context\":{\"firstName\":\"Alice\",\"expiryDate\":\"June 30\"},\"capitalizeFirst\":true,\"trimWhitespace\":true}", + "description": "Render a subscription expiry notification sentence with recipient name and expiry date." + }, + { + "inputJson": "{\"template\":\"Your order #{{orderId}} totaling ${{amount}} has been shipped.\",\"context\":{\"orderId\":\"12345\",\"amount\":\"99.99\"},\"capitalizeFirst\":false,\"trimWhitespace\":true}", + "description": "Generate an order shipment notification sentence including order id and amount." + }, + { + "inputJson": "{\"template\":\"Thank you {{firstName}} for your purchase! Your invoice will be sent to {{email}}.\",\"context\":{\"firstName\":\"Bob\",\"email\":\"bob@example.com\"},\"capitalizeFirst\":true,\"trimWhitespace\":false}", + "description": "Create a thank you sentence expressing gratitude and invoicing information." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "email-communication.formatComponent", + "description": "Formats an email component's HTML code based on provided styling and content parameters. Accepts raw HTML strings or component objects, applies in-line styles, layouts, and content injections, producing a formatted HTML string ready for email templates or sending.", + "category": "email-communication", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML string of the email component to format, can include placeholders for dynamic content.", + "required": true, + "defaultValue": "" + }, + { + "name": "styles", + "type": "object", + "description": "An object specifying CSS styles to apply inline to the component elements.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "layout", + "type": "string", + "description": "Layout style to organize component children, e.g., 'vertical', 'horizontal', or 'grid'.", + "required": false, + "defaultValue": "vertical" + }, + { + "name": "contentInjection", + "type": "object", + "description": "Key-value pairs to replace placeholders in the HTML content with dynamic text or HTML content.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "inlineImages", + "type": "boolean", + "description": "Flag indicating whether to convert images to inline base64 encoded sources for email compatibility.", + "required": false, + "defaultValue": "false" + }, + { + "name": "minifyOutput", + "type": "boolean", + "description": "Whether to minify the output HTML to reduce size.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted HTML string ready to embed in an email, including metadata about applied styles and placeholders replaced." + }, + "aiAgent": { + "useCase": "Use this tool when assembling or customizing components of an email template by programmatically applying consistent styles, layouts, and dynamic content injections to raw HTML code fragments, ensuring compatibility with email clients. It helps automate email template generation and formatting within email campaigns.", + "limitations": "This tool does not generate email components from scratch; it only formats existing HTML components. It does not validate email client compatibility beyond applying inline styles. Complex interactive elements or scripts are not supported due to email client restrictions.", + "examples": [ + "Format a button component by injecting the button label and applying inline styles for background and padding.", + "Format a section component with a horizontal layout and inject dynamic text content placeholders with actual values.", + "Apply minification and inline images to a banner component HTML string prior to sending." + ] + }, + "tags": [ + "email", + "formatting", + "HTML", + "component", + "template", + "style", + "automation", + "inlineCSS" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"<div class=\\\"button\\\">{{buttonText}}</div>\",\"styles\":{\"button\":{\"background-color\":\"#28a745\",\"color\":\"#ffffff\",\"padding\":\"10px 20px\",\"border-radius\":\"5px\",\"text-align\":\"center\"}},\"layout\":\"vertical\",\"contentInjection\":{\"buttonText\":\"Subscribe Now\"},\"inlineImages\":false,\"minifyOutput\":true}", + "description": "Formatting a button component by injecting dynamic text and applying inline green button styles." + }, + { + "inputJson": "{\"htmlContent\":\"<table><tr><td>{{content}}</td></tr></table>\",\"styles\":{},\"layout\":\"horizontal\",\"contentInjection\":{\"content\":\"Welcome to our newsletter\"},\"inlineImages\":false,\"minifyOutput\":false}", + "description": "Formatting a simple table-based section component, injecting welcome text without additional styles or minification." + }, + { + "inputJson": "{\"htmlContent\":\"<img src=\\\"cid:logo.png\\\" alt=\\\"Company Logo\\\">\",\"styles\":{},\"layout\":\"vertical\",\"contentInjection\":{},\"inlineImages\":true,\"minifyOutput\":true}", + "description": "Formatting an image component by converting a referenced image to an inline base64 encoded string and minifying the HTML output." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "email-communication.draftParagraph", + "description": "Creates a clear, concise paragraph draft for an email based on a specified topic, tone, and length. Accepts key points or a summary as input and generates a coherent paragraph suitable for inclusion in professional or casual email communication.", + "category": "email-communication", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or focus of the paragraph to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the paragraph such as formal, informal, friendly, or persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Optional list of key points or bullet points to include or emphasize in the paragraph.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the paragraph in sentences or lines (recommended 2-5).", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted paragraph as a string ready for use in an email body." + }, + "aiAgent": { + "useCase": "This tool is best used when an AI agent needs to generate a well-structured paragraph for an email based on user-provided topics or bullet points, ensuring appropriate tone and length. Ideal for automating email composition, enhancing productivity, or providing draft suggestions in real-time.", + "limitations": "It cannot send the email, handle complex multi-paragraph emails at once, nor guarantee perfect human-level creativity or contextual understanding beyond the given inputs.", + "examples": [ + "Draft a friendly paragraph about the benefits of our new service offering.", + "Create a formal paragraph summarizing the meeting points for a client follow-up email.", + "Generate a persuasive short paragraph encouraging newsletter sign-up based on key product features." + ] + }, + "tags": [ + "email", + "drafting", + "automation", + "composition", + "paragraph", + "communication", + "productivity" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"new product launch\",\"tone\":\"formal\",\"keyPoints\":[\"innovative features\",\"market impact\",\"customer benefits\"],\"length\":4}", + "description": "Formal paragraph about a new product launch highlighting innovation and benefits." + }, + { + "inputJson": "{\"topic\":\"team outing reminder\",\"tone\":\"friendly\",\"length\":3}", + "description": "Friendly reminder paragraph for an email about an upcoming team outing." + }, + { + "inputJson": "{\"topic\":\"subscription renewal\",\"tone\":\"persuasive\",\"keyPoints\":[\"limited time offer\",\"exclusive benefits\"],\"length\":3}", + "description": "Persuasive paragraph encouraging subscription renewal emphasizing exclusivity and urgency." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "email-communication.draftInvoice", + "description": "Drafts a professional invoice email based on provided invoice details. It accepts inputs such as recipient email, invoice items, amounts, currency, due dates, and optional personalized message. The tool generates a well-structured email subject and body ready for sending or preview, including invoice summary and payment terms.", + "category": "email-communication", + "parameters": [ + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the invoice recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the sender or company issuing the invoice.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier for the invoice.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Issue date of the invoice in ISO format (e.g., 2024-06-01).", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date in ISO format.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for amounts (e.g., USD, EUR).", + "required": true, + "defaultValue": "USD" + }, + { + "name": "invoiceItems", + "type": "array", + "description": "List of invoice line items; each item includes description, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Optional additional notes or personalized message to include in the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "includePaymentInstructions", + "type": "boolean", + "description": "Whether to include payment instructions or terms in the email.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated email subject and body text for the invoice email." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to create a formal invoice email from structured invoice data, helping automate billing communications. Useful in scenarios such as CRM automation, financial software integrations, and customer billing workflows.", + "limitations": "It does not handle sending emails or attaching files. It also does not perform invoice validation beyond basic format assumptions.", + "examples": [ + "Draft a detailed invoice email to send to a client for recent services delivered.", + "Create a payment reminder invoice email including payment terms and due date.", + "Generate an invoice email with a personalized thank you message for a completed project." + ] + }, + "tags": [ + "email", + "invoice", + "drafting", + "automation", + "billing", + "financial", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipientEmail\":\"client@example.com\",\"senderName\":\"Acme Corp\",\"invoiceNumber\":\"INV-2024-001\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-06-30\",\"currency\":\"USD\",\"invoiceItems\":[{\"description\":\"Consulting Service\",\"quantity\":10,\"unitPrice\":100}],\"additionalNotes\":\"Thank you for your business!\",\"includePaymentInstructions\":true}", + "description": "Draft invoice email to client with one line item, payment instructions included, and a personalized note." + }, + { + "inputJson": "{\"recipientEmail\":\"buyer@example.com\",\"senderName\":\"Tech Solutions\",\"invoiceNumber\":\"TS-4587\",\"invoiceDate\":\"2024-05-15\",\"dueDate\":\"2024-06-15\",\"currency\":\"EUR\",\"invoiceItems\":[{\"description\":\"Software License\",\"quantity\":5,\"unitPrice\":200},{\"description\":\"Support Package\",\"quantity\":1,\"unitPrice\":500}],\"additionalNotes\":\"Please contact us if you have any questions.\",\"includePaymentInstructions\":false}", + "description": "Draft invoice email with multiple items, no payment instructions included but with customer support note." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "email-communication.composeLink", + "description": "Composes an email snippet containing a clickable hyperlink with optional display text and description. Accepts a URL, optional display text for the link, and additional contextual description to generate a formatted HTML or plain-text segment ready to embed within an email body.", + "category": "email-communication", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The destination URL that the link should navigate to when clicked.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "Optional text to display as the clickable part of the link; if empty, the URL itself is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text to appear near or under the link, providing context or additional information.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the composed link segment, e.g., 'html' for HTML snippet or 'plain' for plain text.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed link content as a string in the requested format." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to generate an email segment that includes a hyperlink. It helps automate composing well-formatted link snippets suitable for embedding in marketing emails, newsletters, or customer communications, ensuring links have appropriate display text and contextual description to increase clarity and click-through.", + "limitations": "This tool only generates the link snippet content; it does not send emails or handle full email composition workflows involving recipients, subject lines, or multi-part messages.", + "examples": [ + "Create an HTML link snippet for https://example.com with 'Visit Example' as display text and a short description.", + "Generate a plain-text clickable link showing the full URL with no description.", + "Produce an HTML snippet for a link with just the URL and default text." + ] + }, + "tags": [ + "email", + "compose", + "link", + "html", + "plaintext", + "automation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://www.example.com\",\"displayText\":\"Visit Example\",\"description\":\"Click here to explore our services.\",\"format\":\"html\"}", + "description": "Compose an HTML email snippet with a display text and descriptive text for a hyperlink." + }, + { + "inputJson": "{\"url\":\"https://docs.example.com\",\"displayText\":\"\",\"description\":\"\",\"format\":\"plain\"}", + "description": "Compose a plain-text snippet where the URL itself is shown as the clickable link text." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "email-communication.draftSummary", + "description": "This tool accepts a body of email content and generates a concise summary of the main points discussed. It processes the input text to identify key topics and action items, producing a well-structured summary suitable for email threads or follow-up communications.", + "category": "email-communication", + "parameters": [ + { + "name": "emailBody", + "type": "string", + "description": "The full text content of the email to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum desired length of the summary in words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Whether to explicitly highlight action items in the summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language of the email content, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and optionally extracted action items if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an email's lengthy content needs to be condensed into a brief summary highlighting the key points and decisions. Ideal for generating quick overviews for busy recipients or preparing follow-up notes from email threads.", + "limitations": "Does not read attachments or embedded images. Accuracy depends on clarity of the input text and may not capture nuanced meaning or implicit context.", + "examples": [ + "Generate a short summary of the email content emphasizing the next steps.", + "Summarize this email but focus primarily on action items.", + "Create a concise summary of the meeting notes included in the email body." + ] + }, + "tags": [ + "email", + "summary", + "automation", + "communication", + "productivity" + ], + "examples": [ + { + "inputJson": "{\"emailBody\":\"Dear team, As discussed in yesterday's meeting, we need to finalize the project plan by next Friday. John will provide the budget estimates by Wednesday. Let's ensure all deliverables are reviewed by Monday.\",\"maxLength\":50,\"includeActionItems\":true}", + "description": "Summarize an email with clear action items under 50 words." + }, + { + "inputJson": "{\"emailBody\":\"Hello, I wanted to share the quarterly report results. Overall performance met expectations, but marketing campaigns underperformed. Please review the attached data.\",\"maxLength\":60,\"includeActionItems\":false}", + "description": "Summarize an informative email without extracting action items." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "email-communication.buildPipeline", + "description": "Constructs a customizable email sending pipeline by accepting configurations for steps such as validation, personalization, scheduling, sending, and tracking. Processes these inputs to generate an executable pipeline object that can be used to automate email workflows efficiently.", + "category": "email-communication", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The unique name identifier for the email pipeline to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "Ordered array of step objects defining the pipeline stages such as validation, personalization, sending, and tracking. Each step specifies a type and configuration.", + "required": true, + "defaultValue": "" + }, + { + "name": "retryOnFailure", + "type": "boolean", + "description": "Flag indicating whether the pipeline should automatically retry failed email sends.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxRetries", + "type": "number", + "description": "Maximum number of retry attempts for failed emails if retryOnFailure is true.", + "required": false, + "defaultValue": "3" + }, + { + "name": "defaultSender", + "type": "string", + "description": "Default sender email address to use if not specified explicitly in personalization steps.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An EmailPipeline object containing the configured pipeline with metadata and executable logic for integration into email automation systems." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically define or configure an email delivery workflow encompassing multiple sequential stages such as message validation, recipient personalization, scheduling, sending, and delivery tracking. This is useful for automating complex email campaigns and notifications.", + "limitations": "This tool only constructs the pipeline definition; it does not execute the pipeline or handle real-time sending and error resolution beyond configured retries.", + "examples": [ + "Create an email automation pipeline with validation, personalization, scheduled sending at 8am, and tracking open rates.", + "Build a retry-enabled pipeline for transactional emails with a maximum of 5 retries on failure.", + "Set up a simple pipeline that personalizes recipient info and sends immediately without scheduling." + ] + }, + "tags": [ + "email", + "automation", + "pipeline", + "sending", + "personalization", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"WelcomeSeries\",\"steps\":[{\"type\":\"validation\",\"config\":{\"schema\":\"basicEmail\"}},{\"type\":\"personalization\",\"config\":{\"templateId\":\"welcomeTemplate\"}},{\"type\":\"scheduling\",\"config\":{\"sendTime\":\"08:00\"}},{\"type\":\"sending\",\"config\":{\"smtpServer\":\"smtp.example.com\"}},{\"type\":\"tracking\",\"config\":{\"trackOpens\":true,\"trackClicks\":true}}],\"retryOnFailure\":true,\"maxRetries\":4,\"defaultSender\":\"noreply@example.com\"}", + "description": "Defines a welcome email series pipeline with validation, personalization, scheduled send at 8am, sending through specified SMTP, tracking, and retries on failure." + }, + { + "inputJson": "{\"pipelineName\":\"PromoBlast\",\"steps\":[{\"type\":\"personalization\",\"config\":{\"templateId\":\"promoTemplate\"}},{\"type\":\"sending\",\"config\":{\"smtpServer\":\"smtp.promo.com\"}}],\"retryOnFailure\":false}", + "description": "Creates a simple promotional blast pipeline that personalizes emails and sends immediately without retries or scheduling." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "email-communication.buildWorkflow", + "description": "Constructs an automated email workflow by defining triggers, actions, and conditional steps. Accepts a structured input detailing trigger events (e.g., user signup), email templates, delays, and conditional logic, then outputs a compiled workflow configuration ready for deployment in an email marketing or automation platform.", + "category": "email-communication", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name identifying the email workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "List of event objects that initiate the workflow, such as user actions or date/time events.", + "required": true, + "defaultValue": "" + }, + { + "name": "actions", + "type": "array", + "description": "Sequence of email send actions with details like template IDs, delays, and recipient info.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "array", + "description": "Optional conditional branching logic applied between actions, defining workflow paths based on recipient behavior or other data.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the workflow's purpose and behavior.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the compiled and ready-to-use email workflow configuration, including all triggers, actions, and condition logic." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate complex email communication sequences triggered by user or system events, enabling dynamic and conditional message flows without manual intervention. It helps to programmatically assemble workflows that can be deployed in marketing automation platforms.", + "limitations": "This tool does not execute or send emails itself; it only generates the workflow configuration. Integration with an email service provider or automation platform is required for execution.", + "examples": [ + "Create a welcome email series workflow triggered by user signup with conditional follow-ups based on engagement.", + "Build a re-engagement campaign workflow with timed email sends and branching depending on recipient clicks.", + "Design an abandoned cart email workflow with triggers on cart abandonment, sending reminders and final offers based on user response." + ] + }, + "tags": [ + "email", + "automation", + "workflow", + "marketing", + "triggers", + "actions", + "conditional-logic" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"WelcomeSeries\",\"triggers\":[{\"type\":\"event\",\"name\":\"userSignup\"}],\"actions\":[{\"type\":\"sendEmail\",\"templateId\":\"welcome_01\",\"delayMinutes\":0},{\"type\":\"sendEmail\",\"templateId\":\"welcome_02\",\"delayMinutes\":1440}],\"conditions\":[{\"type\":\"if\",\"condition\":\"emailOpened\",\"trueBranch\":[{\"type\":\"sendEmail\",\"templateId\":\"engagement_followup\"}],\"falseBranch\":[{\"type\":\"sendEmail\",\"templateId\":\"reminder_email\"}]}],\"description\":\"Sends welcome emails and follow-ups based on user engagement.\"}", + "description": "A workflow for sending a two-step welcome series triggered at user signup, with conditional branching on email open status." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "email-communication.buildSchema", + "description": "This tool accepts a JSON object describing the desired fields and constraints for an email communication schema, including headers, body templates, placeholders, and validation rules. It processes the input to produce a structured schema definition in JSON Schema format, suitable for validating email payloads before sending or automating email generation.", + "category": "email-communication", + "parameters": [ + { + "name": "fields", + "type": "array", + "description": "An array of field definitions specifying each part of the email schema, with name, type, required status, and validation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateVariables", + "type": "array", + "description": "List of placeholders or template variables allowed in the email body for dynamic content insertion.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subjectPattern", + "type": "string", + "description": "A regex pattern to validate the email subject, ensuring it meets formatting or content rules.", + "required": false, + "defaultValue": "" + }, + { + "name": "allowAttachments", + "type": "boolean", + "description": "Flag indicating whether attachments fields should be included and validated in the schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalConstraints", + "type": "object", + "description": "Optional additional validation rules or constraints to apply globally to the email schema.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns a fully constructed JSON Schema object defining the email message format, including all fields and validations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or enforce a standardized and validated structure for email messages before sending or automating their creation. It is useful for generating formal schemas to ensure emails conform to expected formats, reduce errors, and support templating with validation.", + "limitations": "This tool does not send emails or perform actual email delivery. It also does not generate email content but only defines the validation schema for email data.", + "examples": [ + "Create an email schema with mandatory 'to', 'from', 'subject', and 'body' fields, where 'subject' must match a pattern, and allow placeholders in 'body' content.", + "Build a schema that includes optional attachments and limits subject length according to company policy.", + "Generate a schema enforcing specific data types and formats for headers and body fields in an automated email system." + ] + }, + "tags": [ + "email", + "schema", + "validation", + "templating", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"fields\":[{\"name\":\"to\",\"type\":\"string\",\"required\":true},{\"name\":\"from\",\"type\":\"string\",\"required\":true},{\"name\":\"subject\",\"type\":\"string\",\"required\":true},{\"name\":\"body\",\"type\":\"string\",\"required\":true}],\"templateVariables\":[\"{{userName}}\",\"{{orderNumber}}\"],\"subjectPattern\":\"^Order Confirmation - #[0-9]+$\",\"allowAttachments\":false}", + "description": "Defines an email schema for an order confirmation email with required fields and subject matching a specific pattern." + }, + { + "inputJson": "{\"fields\":[{\"name\":\"to\",\"type\":\"string\",\"required\":true},{\"name\":\"from\",\"type\":\"string\",\"required\":true},{\"name\":\"subject\",\"type\":\"string\",\"required\":true},{\"name\":\"body\",\"type\":\"string\",\"required\":true},{\"name\":\"attachments\",\"type\":\"array\",\"required\":false}],\"templateVariables\":[],\"allowAttachments\":true}", + "description": "Builds a schema that includes attachments as an optional array in the email structure." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "email-communication.generateTemplate", + "description": "Generates a customizable email template based on input parameters including subject, recipient type, email body placeholders, and style preferences. Accepts structured data and outputs a complete email template in HTML format ready for use in email campaigns or automated messaging.", + "category": "email-communication", + "parameters": [ + { + "name": "templateName", + "type": "string", + "description": "The name identifier for the email template to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "subjectLine", + "type": "string", + "description": "The subject line text for the email template.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientType", + "type": "string", + "description": "Type of recipient such as customer, partner, or internal staff, which may influence template style and tone.", + "required": true, + "defaultValue": "" + }, + { + "name": "placeholders", + "type": "object", + "description": "Key-value pairs for dynamic placeholders to be included in the email body, e.g., recipient name, date, or offer details.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeHeaderImage", + "type": "boolean", + "description": "Whether to include a header image in the email template for branding purposes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "footerText", + "type": "string", + "description": "Custom footer text to be appended at the bottom of the email template.", + "required": false, + "defaultValue": "" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Styling preferences such as font family, colors, and button styles to customize template appearance.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template's name, subject, HTML body string, and metadata about placeholders and styling." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly produce a consistent, styled email template based on specific input parameters such as recipient type, dynamic content placeholders, and branding guidelines. Ideal for automating email campaigns, onboarding sequences, or notification messages.", + "limitations": "This tool does not send emails or manage email lists; it strictly generates the template content. It also cannot access real user data or dynamically fetch content outside provided placeholders.", + "examples": [ + "Generate a welcome email template for new customers including a personalized greeting and call-to-action button.", + "Create a partner update email template with branding header and customized footer text.", + "Produce an internal notification template without images but with standard corporate style settings." + ] + }, + "tags": [ + "email", + "template", + "automation", + "html", + "branding", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"templateName\":\"WelcomeEmail\",\"subjectLine\":\"Welcome to Our Service!\",", + "description": "Generate a welcome email template including personalized placeholders and header image." + }, + { + "inputJson": "{\"templateName\":\"PartnerUpdate\",\"subjectLine\":\"Quarterly Partner Update\",\"recipientType\":\"partner\",\"includeHeaderImage\":true,\"footerText\":\"Confidential - For Partner Use Only\"}", + "description": "Create a branded partner update email template with footer notice." + }, + { + "inputJson": "{\"templateName\":\"InternalAlert\",\"subjectLine\":\"System Maintenance Notification\",\"recipientType\":\"internal\",\"includeHeaderImage\":false,\"styleOptions\":{\"fontFamily\":\"Arial\",\"primaryColor\":\"#333333\"}}", + "description": "Generate an internal notification email template with minimal styling and no images." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "email-communication.generateReadme", + "description": "Generates a comprehensive README markdown document for an email communication tool or automation project. Accepts project details, features, setup instructions, and usage examples as inputs and produces a well-structured README file ready for repository inclusion.", + "category": "email-communication", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the email communication project or tool.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief overview describing what the project does and its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "A list of key features or capabilities provided by the email communication project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Detailed steps to install or set up the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "Example commands or code snippets demonstrating how to use the tool.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "configurationOptions", + "type": "object", + "description": "Optional configuration settings or environment variables relevant to the project.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "license", + "type": "string", + "description": "License under which the project is released (e.g., MIT, Apache 2.0).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the README content as a markdown string under 'readmeMarkdown' key, formatted with sections based on inputs." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically create a detailed README.md document for an email communication project or automation tool based on structured inputs like description, features, installation and usage info. It helps quickly produce professional documentation for code repositories or product onboarding.", + "limitations": "It cannot generate README content without structured input data and cannot add detailed personalized content beyond provided inputs. It also does not fetch or verify external data such as dependencies or badges.", + "examples": [ + "Generate a README for my email automation project including features and usage examples.", + "Create a README markdown for a tool that sends scheduled emails with setup instructions.", + "Produce documentation for an email integration library with configuration options and license info." + ] + }, + "tags": [ + "documentation", + "email", + "automation", + "README", + "markdown", + "project-description", + "setup", + "usage" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"AutoMailer\",\"projectDescription\":\"A Node.js tool to automate email campaigns and scheduling.\",\"features\":[\"Send bulk emails\",\"Schedule emails\",\"Track delivery status\"],\"installationInstructions\":\"npm install automailer\",\"usageExamples\":[\"automailer --schedule '2023-07-01' --list subscribers.csv\"]}", + "description": "Generate a README for a Node.js email automation tool with features, installation instructions, and usage example." + }, + { + "inputJson": "{\"projectName\":\"EmailScheduler\",\"projectDescription\":\"Tool to send daily reminder emails automatically.\",\"features\":[\"Daily scheduling\",\"Custom email templates\"],\"installationInstructions\":\"pip install emailscheduler\",\"usageExamples\":[\"emailscheduler --template reminder.html --time 08:00\"]}", + "description": "Generate README for an email scheduling tool describing its features and how to install/use it." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "email-communication.generateBlogPost", + "description": "Generates a complete, well-structured blog post draft suitable for email newsletters or marketing campaigns. Accepts a topic, target audience, tone, keyword list, and length preference. Produces a formatted text output featuring an engaging introduction, body content, and conclusion optimized for email readers.", + "category": "email-communication", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or theme of the blog post to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers, to tailor language and content style appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired writing tone, e.g., formal, casual, persuasive, friendly.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords or phrases to include for SEO or thematic emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired word count of the generated blog post.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object with the generated blog post text and metadata including word count and summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create engaging, tailored blog post content for email marketing or communication campaigns quickly, without manual writing. Ideal for automating content generation based on specific themes and audiences.", + "limitations": "Cannot replace professional human editing for nuanced style, deep expertise, or domain-specific accuracy. May produce generic content without expert inputs.", + "examples": [ + "Generate a friendly blog post about the benefits of remote work targeting young professionals.", + "Create a persuasive blog post emphasizing eco-friendly office practices for corporate clients.", + "Write a formal, technical blog post on cloud computing fundamentals for IT managers." + ] + }, + "tags": [ + "email", + "content generation", + "blog post", + "marketing", + "automation", + "writing", + "newsletter" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of remote work\",\"targetAudience\":\"young professionals\",\"tone\":\"friendly\",\"keywords\":[\"remote work\",\"productivity\",\"work-life balance\"],\"length\":600}", + "description": "Generate a friendly blog post about remote work benefits for young professionals including key keywords." + }, + { + "inputJson": "{\"topic\":\"Eco-friendly office practices\",\"targetAudience\":\"corporate clients\",\"tone\":\"persuasive\",\"keywords\":[\"sustainability\",\"green office\",\"eco-friendly\"],\"length\":500}", + "description": "Create a persuasive blog post promoting sustainable office habits for corporate audience." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "email-communication.createYAML", + "description": "Generates a YAML-formatted string representing an email campaign configuration based on input parameters such as sender information, recipient list, subject, body content, and optional campaign metadata. This enables structured export or programmatic use of email campaign setups.", + "category": "email-communication", + "parameters": [ + { + "name": "senderEmail", + "type": "string", + "description": "The email address of the sender of the campaign email.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "The display name of the sender.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses for the campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main body content of the email, supporting plain text or HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignName", + "type": "string", + "description": "An optional name or identifier for the campaign.", + "required": false, + "defaultValue": "" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 timestamp for when to send the campaign.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or labels for categorizing the campaign.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the YAML string representation of the email campaign configuration under 'yamlContent' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or export an email campaign configuration in a standardized YAML format to facilitate integrations, templating systems, or version-controlled email setup storage.", + "limitations": "This tool only generates the YAML representation; it does not send emails or validate email addresses beyond basic string support.", + "examples": [ + "Create a YAML config for a marketing email campaign with sender info, recipients, subject, body, and schedule.", + "Generate YAML to export a newsletter setup including tags and campaign metadata.", + "Produce structured YAML from provided email parameters to integrate with a deployment system." + ] + }, + "tags": [ + "email", + "YAML", + "configuration", + "campaign", + "automation", + "export", + "templating" + ], + "examples": [ + { + "inputJson": "{\"senderEmail\":\"marketing@company.com\",\"senderName\":\"Company Marketing\",\"recipients\":[\"user1@example.com\",\"user2@example.com\"],\"subject\":\"Summer Sale is Here!\",\"body\":\"<h1>Don't miss out on our biggest discounts</h1>\",\"campaignName\":\"Summer2024\",\"scheduleTime\":\"2024-07-01T09:00:00Z\",\"tags\":[\"summer\",\"sale\",\"discount\"]}", + "description": "Generate a YAML configuration for an upcoming summer sale email campaign with scheduling and tags." + }, + { + "inputJson": "{\"senderEmail\":\"newsletter@newsorg.com\",\"recipients\":[\"subscriber@example.com\"],\"subject\":\"Weekly News Update\",\"body\":\"Hello, here is your weekly news update.\",\"campaignName\":\"WeeklyUpdate\"}", + "description": "Create a basic YAML config for a weekly newsletter without schedule or tags." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "email-communication.createMarkdown", + "description": "Generates a Markdown-formatted email content from structured input data including subject, sender, recipients, and body sections. It produces ready-to-send Markdown text suitable for email clients or templates that support Markdown rendering.", + "category": "email-communication", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The email subject line.", + "required": true, + "defaultValue": "" + }, + { + "name": "sender", + "type": "string", + "description": "The email sender address or name.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "bodySections", + "type": "array", + "description": "An array of objects each containing a section title and content in plain text to include in the email body.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "includeFooter", + "type": "boolean", + "description": "Whether to append a default footer section to the markdown email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "footerText", + "type": "string", + "description": "Custom text to use for the footer if includeFooter is true.", + "required": false, + "defaultValue": "\"Thank you for your attention.\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete email content formatted in Markdown text, including subject and body." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assemble structured email information into a consistent Markdown-formatted email body, such as for automated report emails, notifications, or templated communications that support Markdown formatting.", + "limitations": "This tool does not send the email or handle HTML formatting. It only generates Markdown text and relies on an external system to send or further process the email content.", + "examples": [ + "Create a markdown email from a meeting summary input with subject and multiple body sections.", + "Generate a newsletter email in markdown format with a sender and multiple recipients.", + "Prepare a notification email markdown including a footer message." + ] + }, + "tags": [ + "email", + "markdown", + "content-generation", + "automation", + "templating" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Monthly Report\",\"sender\":\"report@company.com\",\"recipients\":[\"team@company.com\",\"manager@company.com\"],\"bodySections\":[{\"title\":\"Overview\",\"content\":\"This month we achieved 95% of our goals.\"},{\"title\":\"Highlights\",\"content\":\"- Record sales\n- Launched new product\"}],\"includeFooter\":true,\"footerText\":\"Best regards, The Company Team\"}", + "description": "Generates a markdown formatted email with subject, sender, multiple recipients, named body sections, and a custom footer." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "email-communication.createProposal", + "description": "Generates a professionally formatted email proposal document based on provided client details, proposal items, pricing, and terms. Accepts structured input data and outputs an email-ready HTML message or plain text suitable for sending via email clients or automation systems.", + "category": "email-communication", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name of the client recipient of the proposal", + "required": true, + "defaultValue": "" + }, + { + "name": "clientEmail", + "type": "string", + "description": "Email address of the client to whom the proposal will be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "proposalTitle", + "type": "string", + "description": "Title or subject line of the proposal", + "required": true, + "defaultValue": "" + }, + { + "name": "proposalItems", + "type": "array", + "description": "Array of objects each describing a proposal item with keys: description (string), quantity (number), unitPrice (number)", + "required": true, + "defaultValue": "" + }, + { + "name": "termsAndConditions", + "type": "string", + "description": "Text for the terms and conditions section of the proposal", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency symbol or code to display prices (e.g., $, EUR, USD)", + "required": false, + "defaultValue": "$" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to include a default sender signature block at the end of the proposal", + "required": false, + "defaultValue": "true" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the person sending the proposal, used in the signature if included", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing HTML and plain text versions of the proposal email message ready to be sent." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate or assist in generating detailed and professional email proposals combining client information with a list of services or products and pricing to create a ready-to-send formatted email. It streamlines proposal creation in sales and business development processes.", + "limitations": "This tool does not send emails itself or handle client communication tracking; it only generates the email content. It cannot negotiate or customize legal terms beyond provided text. It requires all monetary calculations to be accurate in input data.", + "examples": [ + "Generate a sales proposal email for a client listing multiple consulting services with prices and terms.", + "Create a pricing proposal for a software subscription including quantities and custom terms.", + "Produce a professional formatted proposal email for a marketing campaign with itemized costs and sender signature block." + ] + }, + "tags": [ + "email", + "proposal", + "automation", + "sales", + "business", + "document generation", + "pricing" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"clientEmail\":\"contact@acme.com\",\"proposalTitle\":\"Q3 Marketing Campaign Proposal\",\"proposalItems\":[{\"description\":\"Social Media Advertising\",\"quantity\":3,\"unitPrice\":1500},{\"description\":\"Content Creation\",\"quantity\":10,\"unitPrice\":300}],\"termsAndConditions\":\"Payment due within 30 days of acceptance.\",\"currency\":\"$\",\"includeSignature\":true,\"senderName\":\"Jane Smith\"}", + "description": "Create a marketing campaign proposal email for Acme Corp with multiple items and standard terms." + }, + { + "inputJson": "{\"clientName\":\"John Doe\",\"clientEmail\":\"john.doe@example.com\",\"proposalTitle\":\"Custom Software Development Proposal\",\"proposalItems\":[{\"description\":\"Backend API Development\",\"quantity\":1,\"unitPrice\":25000},{\"description\":\"Frontend Interface Design\",\"quantity\":1,\"unitPrice\":15000}],\"termsAndConditions\":\"Project milestones and payments will be defined in the contract.\",\"currency\":\"USD\",\"includeSignature\":false}", + "description": "Generate a software development proposal without signature block for a single client." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeQuote", + "description": "Analyzes infrastructure vendor quotes, accepting JSON or plain text inputs detailing hardware, software, and service components. The tool processes the quote to identify cost breakdowns, component compatibilities, potential overages, and summarizes total costs with recommendations to optimize procurement decisions.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "quoteContent", + "type": "string", + "description": "The full text or structured JSON string representing the infrastructure quote details including line items, prices, and specifications.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the quoteContent input: 'json' or 'text'. Determines parsing method.", + "required": true, + "defaultValue": "text" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to interpret and display cost values.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "If true, the tool performs deeper component compatibility checks and risk assessments.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object detailing cost breakdown by category, compatibility warnings, summary of total cost, and recommendations for optimization or issues found." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically interpret and analyze detailed infrastructure vendor quotes to aid in procurement and budgeting. It assists in breaking down costs, checking component compatibility, and highlighting areas where the quote might exceed budget or may be optimized. Useful in managing complex infrastructure purchases involving multiple components and services.", + "limitations": "Does not provide negotiation advice or real-time pricing validation. Cannot replace human oversight especially on contractual or service-level terms. Limited to analysis of provided content format and does not verify vendor legitimacy.", + "examples": [ + "Analyze this cloud provider quote JSON for cost overruns and component compatibility.", + "Analyze vendor quote text to summarize total infrastructure costs.", + "Analyze complex multi-vendor infrastructure hardware and service quote in JSON format." + ] + }, + "tags": [ + "infrastructure", + "analysis", + "procurement", + "cost-management", + "compatibility", + "cloud", + "hardware" + ], + "examples": [ + { + "inputJson": "{\"quoteContent\":\"{\\\"items\\\":[{\\\"name\\\":\\\"Server A\\\",\\\"quantity\\\":10,\\\"pricePerUnit\\\":2500},{\\\"name\\\":\\\"Storage Unit X\\\",\\\"quantity\\\":5,\\\"pricePerUnit\\\":1500}],\\\"services\\\":[{\\\"name\\\":\\\"Installation\\\",\\\"price\\\":2000}],\\\"totalCost\\\":36000}\",\"inputFormat\":\"json\",\"currency\":\"USD\",\"detailedAnalysis\":true}", + "description": "Analyze a JSON infrastructure quote with servers, storage units, and installation services for cost breakdown and compatibility." + }, + { + "inputJson": "{\"quoteContent\":\"Servers: 20 units at $2000 each\\nNetwork Switches: 4 units at $600 each\\nInstallation & Support: $3500 total\\nDelivery: Free\",\"inputFormat\":\"text\",\"currency\":\"USD\",\"detailedAnalysis\":false}", + "description": "Analyze plain text infrastructure quote listing hardware units and service costs, summarize total expenses." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeAnomaly", + "description": "This tool analyzes infrastructure monitoring data to detect and categorize anomalies in cloud or physical systems. It accepts time-series metrics or event logs, applies statistical and machine learning methods to identify deviations from normal behavior, and outputs detailed anomaly reports including severity, possible causes, and affected components.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "Identifier or URL of the infrastructure monitoring data source (e.g., metrics or logs).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying start and end timestamps (ISO 8601) to limit analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "anomalyTypes", + "type": "array", + "description": "Array of anomaly types to detect, e.g., ['spike', 'drop', 'latency']. If empty, detects all types.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sensitivityLevel", + "type": "number", + "description": "Sensitivity threshold (0-1) for anomaly detection; higher values detect more anomalies.", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of anomaly records to return.", + "required": false, + "defaultValue": "50" + }, + { + "name": "includeRootCauseAnalysis", + "type": "boolean", + "description": "If true, performs root cause analysis to identify likely causes of anomalies.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a list of anomalies detected, each with timestamp, type, severity score, affected components, and optional root cause explanations." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring cloud or physical infrastructure data to detect abnormal patterns indicative of performance degradation, faults, or security incidents. It helps identify and prioritize anomalies in metrics or logs over a specified time period to enable proactive incident response and system reliability improvements.", + "limitations": "This tool cannot guarantee the root cause of anomalies; its detection accuracy depends on data quality and chosen sensitivity. It does not perform remediation actions or interact with infrastructure APIs.", + "examples": [ + "Detect anomalies in CPU and memory usage metrics from a server cluster over the last 24 hours.", + "Analyze network latency logs for the past week to identify performance drops.", + "Find and categorize all unusual events in application metrics data with detailed root cause analysis included." + ] + }, + "tags": [ + "infrastructure", + "anomaly detection", + "monitoring", + "analytics", + "cloud", + "physical systems", + "root cause analysis" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"metrics://cloud-monitoring/api/v1/metrics\",\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-02T00:00:00Z\"},\"anomalyTypes\":[\"spike\",\"drop\"],\"sensitivityLevel\":0.85,\"maxResults\":20,\"includeRootCauseAnalysis\":true}", + "description": "Analyze cloud monitoring metrics for spikes and drops within a 24-hour period, with high sensitivity and root cause analysis." + }, + { + "inputJson": "{\"dataSource\":\"logs://prod-network/logs\",\"timeRange\":{\"start\":\"2024-04-20T00:00:00Z\",\"end\":\"2024-04-27T00:00:00Z\"},\"anomalyTypes\":[],\"sensitivityLevel\":0.75,\"maxResults\":50,\"includeRootCauseAnalysis\":false}", + "description": "Detect all types of anomalies in network logs over the previous week, using moderate sensitivity, without root cause analysis." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeConversion", + "description": "Analyzes infrastructure usage data to calculate conversion metrics such as resource allocation efficiency, instance provisioning to deployment ratio, and uptime-to-utilization conversion rates. Accepts JSON input of raw usage logs or metrics, processes to identify conversion trends, and outputs detailed analytical reports with key performance indicators and trend visualizations.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "usageData", + "type": "object", + "description": "Structured JSON object containing raw infrastructure usage metrics, such as CPU, memory utilization, instance lifecycle events, or deployment records.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying start and end timestamps to limit the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "conversionMetrics", + "type": "array", + "description": "List of specific conversion metrics to calculate (e.g., 'allocationEfficiency', 'provisioningToDeploymentRatio').", + "required": false, + "defaultValue": "[\"allocationEfficiency\",\"provisioningToDeploymentRatio\"]" + }, + { + "name": "includeVisualization", + "type": "boolean", + "description": "Whether to include trend graphs and visual charts in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "aggregationInterval", + "type": "string", + "description": "Time interval for aggregating data points (e.g., 'hourly', 'daily').", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object containing calculated conversion metrics, trend summaries, flags for unusual patterns, and optional visual charts encoded as base64 images or URLs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess how efficiently infrastructure resources are converting usage into productive deployment or uptime, especially to optimize cloud costs, improve provisioning processes, or monitor resource utilization trends over time.", + "limitations": "This tool does not provision resources, nor does it directly control infrastructure. It requires well-structured usage data inputs; inconsistent or sparse data may lead to unreliable analysis.", + "examples": [ + "Analyze the efficiency of resource allocations in the last month to identify optimization opportunities.", + "Generate a report on instance provisioning to deployment conversion ratios for daily server logs over the previous week.", + "Provide visualization of uptime to utilization conversion trends grouped hourly from usage metric streams." + ] + }, + "tags": [ + "infrastructure", + "analytics", + "conversion", + "cloud-management", + "resource-optimization", + "reporting", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"usageData\":{\"instances\":[{\"id\":\"i-1234567890\",\"provisionedAt\":\"2024-05-01T08:00:00Z\",\"deployedAt\":\"2024-05-01T12:00:00Z\",\"utilizationPercent\":75,\"uptimeHours\":48}]},\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"conversionMetrics\":[\"provisioningToDeploymentRatio\",\"allocationEfficiency\"],\"includeVisualization\":true,\"aggregationInterval\":\"daily\"}", + "description": "Analyze provisioning to deployment ratios and allocation efficiency for instances provisioned in the first week of May 2024 with daily aggregation and visual charts included." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeExpense", + "description": "Analyzes cloud or physical infrastructure expenses by accepting detailed cost records as input. Processes costs by categories such as compute, storage, networking, and external services, applies filtering and aggregation, and outputs a summary report highlighting cost breakdown, trends, anomalies, and optimization suggestions.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "expenseRecords", + "type": "array", + "description": "An array of individual expense entries representing costs incurred over a time period; each entry includes cost type, amount, timestamp, and service identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date to filter expenses, in ISO 8601 format (YYYY-MM-DD); only expenses on or after this date are analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date to filter expenses, in ISO 8601 format (YYYY-MM-DD); only expenses on or before this date are analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "costCategories", + "type": "array", + "description": "List of specific cost categories to include in the analysis, e.g., ['compute', 'storage', 'networking']; if empty, includes all categories.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeAnomalyDetection", + "type": "boolean", + "description": "Whether to perform anomaly detection on expense trends to identify unusual spikes or drops.", + "required": false, + "defaultValue": "false" + }, + { + "name": "optimizationGoals", + "type": "array", + "description": "List of optimization goals such as ['reduce compute cost', 'optimize storage usage']; used to tailor recommendations in the output.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive expense analysis report including total cost breakdown by category, time series cost trends, identified anomalies, and actionable optimization suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze infrastructure spending data to gain insights on cost distribution, identify unusual expense patterns, and generate recommendations for cost optimization in cloud or physical infrastructure environments. Ideal for financial audits, budget reviews, and cost control initiatives.", + "limitations": "This tool does not directly access billing accounts or automate cost changes; it relies on provided expense data and does not handle real-time monitoring or enforce cost policies.", + "examples": [ + "Analyze expense records for last quarter focusing on compute and storage costs.", + "Identify anomalies and optimization options from a full year’s cloud spending data.", + "Generate a cost breakdown and suggest savings based on monthly infrastructure expenses." + ] + }, + "tags": [ + "analyze", + "expense", + "infrastructure", + "cost", + "cloud", + "optimization", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"expenseRecords\":[{\"category\":\"compute\",\"amount\":1500,\"timestamp\":\"2024-03-15T12:00:00Z\",\"serviceId\":\"vm-01\"},{\"category\":\"storage\",\"amount\":300,\"timestamp\":\"2024-03-16T12:00:00Z\",\"serviceId\":\"storage-01\"}],\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"costCategories\":[\"compute\",\"storage\"],\"includeAnomalyDetection\":true,\"optimizationGoals\":[\"reduce compute cost\"]}", + "description": "Analyze compute and storage expenses in March 2024 including anomaly detection and optimization suggestions for reducing compute costs." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "infrastructure-management.downloadVideo", + "description": "This tool downloads video files from specified cloud infrastructure storage services or URLs relevant to infrastructure monitoring and management. It accepts video URL or cloud storage path inputs, handles authentication if required, and saves the retrieved video to a local or specified server directory. Output includes file metadata and the saved file path.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL or cloud storage path of the video to download. Supports HTTP(S) links or cloud storage URI formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local file system path where the downloaded video will be saved. Defaults to current directory if not specified.", + "required": false, + "defaultValue": "./" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional authentication token or API key for access to protected cloud storage or URLs.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before timing out.", + "required": false, + "defaultValue": "60" + }, + { + "name": "verifySsl", + "type": "boolean", + "description": "Whether to verify SSL certificates when downloading from HTTPS sources. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the local file path where the video was saved, file size in bytes, and the download status message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve and save video files related to infrastructure monitoring or management, such as surveillance footage stored in cloud storage or video logs of systems, to perform analysis or archiving locally.", + "limitations": "This tool can only download accessible videos from provided URLs or authenticated cloud storage paths. It cannot transcode, stream, or analyze videos, nor does it handle corrupted or unsupported video formats.", + "examples": [ + "Download a surveillance video from a secure AWS S3 bucket requiring a token.", + "Retrieve an infrastructure status video from a public HTTPS URL to local storage.", + "Download a video log from Azure Blob Storage with specified authentication token." + ] + }, + "tags": [ + "download", + "video", + "infrastructure", + "cloud-storage", + "media", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/videos/infra_status_2024-06-01.mp4\",\"destinationPath\":\"/var/data/videos/\"}", + "description": "Download a public video from HTTPS URL and save it to a specified local directory." + }, + { + "inputJson": "{\"sourceUrl\":\"s3://infra-videos/2024/06/monitoring_log.mp4\",\"destinationPath\":\"/home/user/videos/\",\"authenticationToken\":\"AKIAIOSFODNN7EXAMPLE\"}", + "description": "Download a video from an AWS S3 bucket with required authentication token and save locally." + }, + { + "inputJson": "{\"sourceUrl\":\"https://securestorage.company.com/videos/network_cam_12.mp4\",\"verifySsl\":false}", + "description": "Download a video from a secure HTTPS server while disabling SSL verification, saving to current directory." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "infrastructure-management.downloadTable", + "description": "Downloads tabular data from specified cloud or on-premises infrastructure management systems. Accepts a table identifier or query parameters to locate the desired table, fetches the data, and outputs it in CSV or JSON format for analysis or backup.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "tableId", + "type": "string", + "description": "Unique identifier or name of the table to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired output format: 'csv' or 'json'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "filterQuery", + "type": "string", + "description": "Optional filter expression to limit rows based on conditions.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the output (applies to CSV).", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to fetch; 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded table data in the requested format as a string, plus metadata like number of rows and columns." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract tabular data from infrastructure management databases or monitoring systems for reporting, analytics, or migration purposes. Suitable for downloading configuration tables, performance metrics, or asset inventories stored as tables.", + "limitations": "Cannot modify or update table data, only downloads it. Limited by access permissions and performance constraints of the source infrastructure.", + "examples": [ + "Download the 'server_inventory' table in JSON format.", + "Fetch up to 1000 rows from the 'vm_metrics' table filtering for CPU usage > 80%.", + "Get CSV export of the 'network_devices' table including headers." + ] + }, + "tags": [ + "infrastructure", + "download", + "table", + "data-extraction", + "cloud", + "on-premises" + ], + "examples": [ + { + "inputJson": "{\"tableId\":\"server_inventory\",\"format\":\"json\"}", + "description": "Download the entire server inventory table in JSON format." + }, + { + "inputJson": "{\"tableId\":\"vm_metrics\",\"filterQuery\":\"cpu_usage > 80\",\"maxRows\":1000}", + "description": "Download up to 1000 rows from VM metrics table where CPU usage is greater than 80%." + }, + { + "inputJson": "{\"tableId\":\"network_devices\",\"format\":\"csv\",\"includeHeaders\":true}", + "description": "Download the network devices table as CSV including column headers." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "infrastructure-management.sendReply", + "description": "Sends a reply message within infrastructure management communications, such as responding to alerts, tickets, or status inquiries. Accepts parameters including recipient identifier, message content, optional context metadata, and communication channel. Processes the input to format and dispatch the reply through the specified channel and returns delivery status and message ID for tracking.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the message recipient, such as user ID or system component ID", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "Text content of the reply message to be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "contextMetadata", + "type": "object", + "description": "Optional additional data to provide context for the reply, such as alert IDs or ticket references", + "required": false, + "defaultValue": "" + }, + { + "name": "communicationChannel", + "type": "string", + "description": "Channel used to send the reply, e.g., email, SMS, chat, or ticketing system", + "required": true, + "defaultValue": "email" + }, + { + "name": "urgent", + "type": "boolean", + "description": "Flag indicating if the reply should be marked as urgent or high priority", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the delivery status, unique message ID, timestamp of sending, and any errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to perform outbound responses in an infrastructure-management context, such as replying to monitoring alerts, support tickets, or automated system inquiries. It automates communication by formatting and dispatching replies to the correct recipients over the desired channel, allowing for contextual and priority metadata.", + "limitations": "This tool does not generate message content autonomously; it requires the messageContent input. It cannot receive or handle inbound messages, nor does it manage ongoing conversation state or escalation logic.", + "examples": [ + "Send a reply to an email alert acknowledging receipt.", + "Respond to a support ticket update with a status message via the ticketing system.", + "Send an urgent SMS to the on-call engineer about critical infrastructure downtime." + ] + }, + "tags": [ + "infrastructure", + "communication", + "reply", + "notification", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user123\",\"messageContent\":\"Alert acknowledged. Investigating the issue.\",\"contextMetadata\":{\"alertId\":\"ALERT-789\"},\"communicationChannel\":\"email\",\"urgent\":true}", + "description": "Send an urgent email reply acknowledging an alert with reference ID." + }, + { + "inputJson": "{\"recipientId\":\"ticket456\",\"messageContent\":\"The issue has been resolved and services are restored.\",\"communicationChannel\":\"ticketingSystem\",\"urgent\":false}", + "description": "Reply to a support ticket via the ticketing system with a resolution message." + }, + { + "inputJson": "{\"recipientId\":\"+15551234567\",\"messageContent\":\"Critical server alert! Immediate action required.\",\"communicationChannel\":\"sms\",\"urgent\":true}", + "description": "Send an urgent SMS notification about a critical server alert to on-call staff." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "infrastructure-management.sendThread", + "description": "Sends a communication thread message within an infrastructure management system, enabling collaboration on cloud or physical infrastructure issues. Accepts thread identification, message content, sender info, optional attachments, and target recipients. Processes and delivers the message, returning delivery status and thread metadata.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier of the communication thread to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The textual content of the message to be sent within the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier of the sender user or system sending the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientIds", + "type": "array", + "description": "List of recipient user or group identifiers to receive the message.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment objects (e.g., logs, config files) to include with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority of the message; e.g., 'normal', 'high', or 'low'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, timestamp of message delivery, updated thread summary, and any error message if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send or update communications within an infrastructure management collaboration thread, such as alert acknowledgments, incident updates, or deployment coordination messages among team members.", + "limitations": "This tool does not create new threads, manage user permissions, or perform message content validation beyond basic formatting.", + "examples": [ + "Send an urgent alert message update to the incident response team in thread 12345.", + "Add a deployment coordination note with config logs to a specific thread including relevant engineers.", + "Send a normal priority message to all recipients in an infrastructure discussion thread updating status." + ] + }, + "tags": [ + "communication", + "infrastructure", + "messaging", + "thread", + "collaboration", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"inc-12345\",\"messageContent\":\"Alert acknowledged. Investigating root cause.\",\"senderId\":\"user-7890\",\"recipientIds\":[\"user-1234\",\"group-ops\"],\"attachments\":[],\"priority\":\"high\"}", + "description": "Send a high priority alert acknowledgment in an incident thread to specified users and groups." + }, + { + "inputJson": "{\"threadId\":\"deploy-56789\",\"messageContent\":\"Deployment started. See attached config.\",\"senderId\":\"automation-bot\",\"recipientIds\":[\"user-4567\"],\"attachments\":[{\"filename\":\"config.yaml\",\"fileType\":\"text/yaml\",\"content\":\"apiVersion: v1\\nkind: Config\\n...\"}],\"priority\":\"normal\"}", + "description": "Send a deployment start message with configuration attached by an automation bot." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "infrastructure-management.formatTable", + "description": "Formats tabular infrastructure data such as server inventories, resource usage metrics, or configuration lists into readable text tables or standardized markup formats. Accepts raw data arrays or JSON objects and produces formatted tables in markdown, plain text, or HTML for clear visualization and reporting.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects or arrays representing rows of the table data; each row should have the same number of columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "An optional array specifying column headers; if omitted, headers are inferred from keys of the first row object.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Specifies the output format of the table: 'markdown', 'plain', or 'html'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "align", + "type": "array", + "description": "Optional array specifying alignment for each column: 'left', 'center', or 'right'. Default is all left aligned.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeBorders", + "type": "boolean", + "description": "Whether to include borders in plain text tables for readability; ignored for markdown and HTML formats.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted table string under 'formattedTable' key, ready for display or inclusion in documentation or reports." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw tabular data from infrastructure resources (e.g., server lists, network device inventories, configurations) and need to present it in a clean, standardized table format for human consumption, reports, or dashboards. It helps quickly visualize data with customizable formats like markdown for documentation or HTML for web interfaces.", + "limitations": "Does not generate charts or graphs, only text-based or HTML tables. Complex nested data structures need flattening before input. It does not connect to infrastructure APIs to fetch data.", + "examples": [ + "Format server inventory data as markdown table for reporting.", + "Convert network device status JSON into an HTML table for a web dashboard.", + "Create a plain text resource usage table with borders for CLI display." + ] + }, + "tags": [ + "infrastructure", + "formatting", + "table", + "reporting", + "visualization", + "cloud", + "data-organization" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"Name\":\"Server01\",\"IP\":\"192.168.1.10\",\"Status\":\"Active\"},{\"Name\":\"Server02\",\"IP\":\"192.168.1.11\",\"Status\":\"Inactive\"}],\"format\":\"markdown\"}", + "description": "Format a small server inventory as a markdown table." + }, + { + "inputJson": "{\"data\":[[\"ID\", \"Uptime\", \"Load\"],[\"srv01\", \"24d\", \"0.15\"],[\"srv02\", \"12d\", \"0.10\"]],\"format\":\"plain\",\"includeBorders\":true}", + "description": "Format an array of arrays with system metrics into a bordered plain text table." + }, + { + "inputJson": "{\"data\":[{\"Device\":\"Router01\",\"Status\":\"Up\",\"Interfaces\":5},{\"Device\":\"Switch03\",\"Status\":\"Down\",\"Interfaces\":24}],\"format\":\"html\",\"align\":[\"left\",\"center\",\"right\"]}", + "description": "Generate an HTML table for device status with mixed column alignments." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "infrastructure-management.renderSummary", + "description": "Generates a comprehensive summary report of a cloud or physical infrastructure environment by processing input data such as resource inventories, usage metrics, and configuration details. Outputs a structured textual summary highlighting key status, capacity, and potential issues.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "environmentType", + "type": "string", + "description": "Type of infrastructure environment to summarize (e.g., 'cloud', 'physical').", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceData", + "type": "object", + "description": "Structured data detailing resources in the environment, including inventory and configuration info.", + "required": true, + "defaultValue": "" + }, + { + "name": "usageMetrics", + "type": "object", + "description": "Current usage metrics and performance data for the resources, such as CPU, memory, and network usage.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeIssues", + "type": "boolean", + "description": "Whether to include detected issues or warnings in the summary report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summaryFormat", + "type": "string", + "description": "Desired output format for the summary report, e.g., 'text' or 'json'.", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted summary report as a string under the key 'summaryReport'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate an understandable and concise overview of infrastructure resources, configurations, and current usage conditions to support monitoring, reporting, or decision-making processes.", + "limitations": "This tool relies on accurate and sufficiently detailed input data; it does not perform real-time data collection or deep diagnostics on its own.", + "examples": [ + "Generate a summary of our cloud infrastructure including current usage and any critical alerts.", + "Provide a status report for our physical data center's servers and storage devices.", + "Create a text formatted summary of the infrastructure resources and usage metrics, excluding any issues." + ] + }, + "tags": [ + "infrastructure", + "summary", + "reporting", + "monitoring", + "cloud", + "physical" + ], + "examples": [ + { + "inputJson": "{\"environmentType\":\"cloud\",\"resourceData\":{\"servers\":10,\"databases\":3,\"storageTB\":25},\"usageMetrics\":{\"cpuPercent\":65,\"memoryPercent\":70},\"includeIssues\":true,\"summaryFormat\":\"text\"}", + "description": "Summarize a cloud environment resource inventory and usage including detected issues in a text report." + }, + { + "inputJson": "{\"environmentType\":\"physical\",\"resourceData\":{\"racks\":5,\"servers\":50,\"networkSwitches\":10},\"includeIssues\":false,\"summaryFormat\":\"json\"}", + "description": "Render a JSON summary of physical data center inventory without issues included." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "infrastructure-management.renderParagraph", + "description": "This tool accepts structured input describing infrastructure components or updates and renders a clear, human-readable paragraph summarizing the information. It processes technical details such as component names, statuses, and changes into concise descriptive text suitable for reports or documentation.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "Name of the infrastructure component (e.g., server, router) to include in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current status or condition of the component (e.g., active, degraded, offline).", + "required": true, + "defaultValue": "" + }, + { + "name": "changeDescription", + "type": "string", + "description": "Optional description of recent changes or updates made to the component.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Flag to include the current timestamp in the paragraph for context.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'paragraph' which holds the rendered human-readable summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform structured infrastructure data into readable summary paragraphs for status reports, documentation, or incident description. It helps translate technical data into natural language for stakeholders or logs.", + "limitations": "Cannot generate paragraphs for highly complex infrastructure diagrams or process unstructured input. It is limited to simple component status and change summaries.", + "examples": [ + "Generate a paragraph describing a server named 'DB01' that is currently active with no recent changes.", + "Create a description for a router 'RTR-East' which is offline due to a recent firmware upgrade.", + "Produce a status paragraph including the timestamp for a storage device 'Storage-Cluster-3' currently degraded with an ongoing disk replacement." + ] + }, + "tags": [ + "infrastructure", + "rendering", + "reporting", + "status", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"WebServer-1\",\"status\":\"active\",\"changeDescription\":\"No recent changes.\",\"includeTimestamp\":false}", + "description": "Render a paragraph for an active web server with no recent changes." + }, + { + "inputJson": "{\"componentName\":\"Firewall-A\",\"status\":\"offline\",\"changeDescription\":\"Firmware upgrade in progress.\",\"includeTimestamp\":true}", + "description": "Render a paragraph for an offline firewall undergoing firmware upgrade, including timestamp." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "infrastructure-management.formatLink", + "description": "Formats and validates URLs or resource links used within infrastructure management, ensuring they conform to expected schemes and patterns. Accepts a raw link string, optional protocol enforcement, and a maximum length limit, then outputs a standardized, safe-to-use link string suitable for cloud or physical infrastructure configurations.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "rawLink", + "type": "string", + "description": "The original link string to be formatted and validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "enforceHttps", + "type": "boolean", + "description": "If true, forces the formatted link to use HTTPS protocol; otherwise original protocol is retained if valid.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the formatted link; links longer than this will be truncated safely.", + "required": false, + "defaultValue": "2048" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted link string and a status indicating validity and any applied transformations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to ensure that URLs or links used in infrastructure management systems are properly formatted, standardized, and safe to use in configurations or automation scripts. It helps avoid link formatting errors, inconsistent protocols, or overly long URLs that may cause system errors.", + "limitations": "Does not resolve DNS or verify external availability of the link; only formats and validates syntax and protocol. Does not handle authentication tokens or secure parameters embedded in links.", + "examples": [ + "Format a raw HTTP link to enforce HTTPS for cloud resource access.", + "Validate and truncate excessively long links used in infrastructure configuration files.", + "Standardize internal resource links to a common URL format for configuration automation." + ] + }, + "tags": [ + "infrastructure", + "formatting", + "url", + "link", + "validation", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"rawLink\":\"http://example.com/resource/path?query=123\",\"enforceHttps\":true}", + "description": "Formats an HTTP URL to HTTPS protocol for secure infrastructure resource access." + }, + { + "inputJson": "{\"rawLink\":\"https://internal.service.local/path/to/resource\",\"maxLength\":50}", + "description": "Validates and truncates a long internal service link to 50 characters maximum." + }, + { + "inputJson": "{\"rawLink\":\"ftp://legacyserver.local/resource/dir\",\"enforceHttps\":false}", + "description": "Formats a legacy FTP link without forcing HTTPS, validating the original protocol." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "infrastructure-management.draftInvoice", + "description": "This tool generates a detailed infrastructure service invoice based on provided billing details, usage logs, pricing rates, and client information. It accepts structured input outlining resource usage, contract terms, and discounts, then processes and compiles a formatted invoice document with calculated totals, suitable for billing and record-keeping.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "clientId", + "type": "string", + "description": "Unique identifier for the client for whom the invoice is being drafted", + "required": true, + "defaultValue": "" + }, + { + "name": "usageDetails", + "type": "array", + "description": "Array of usage entries including resource types, amounts used, and usage periods", + "required": true, + "defaultValue": "" + }, + { + "name": "pricingRates", + "type": "object", + "description": "Pricing information keyed by resource type with unit costs and pricing tiers", + "required": true, + "defaultValue": "" + }, + { + "name": "billingPeriodStart", + "type": "string", + "description": "Start date of the billing period in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "billingPeriodEnd", + "type": "string", + "description": "End date of the billing period in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "discounts", + "type": "array", + "description": "Optional array of discounts or promotions to apply, each with description and percentage or fixed amount", + "required": false, + "defaultValue": "[]" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for amounts in the invoice, e.g. USD, EUR", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeTax", + "type": "boolean", + "description": "Flag to indicate if taxes should be calculated and included in the invoice", + "required": false, + "defaultValue": "true" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a decimal (e.g. 0.07 for 7%) if includeTax is true", + "required": false, + "defaultValue": "0.07" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the invoice document as a formatted string (e.g., PDF or HTML), a summary of charges by resource, total amounts including discounts and taxes, and meta information like invoice number and date" + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate a billing invoice for cloud or physical infrastructure usage given detailed usage logs, pricing, and client contract info. Helps automate billing cycles, ensuring accurate charge calculations including discounts and taxes. Useful in infrastructure management platforms to streamline client invoicing.", + "limitations": "This tool does not process payments or verify client payments. It assumes input usage and pricing data are accurate and does not audit or validate data integrity.", + "examples": [ + "Generate an invoice for client 'client123' for usage in March 2024 including taxes and applying volume discount.", + "Draft a USD invoice for physical server usage from 2024-04-01 to 2024-04-30 with no discounts and tax excluded.", + "Create an invoice summary including compute, storage, and bandwidth usage with tiered pricing and promotional discounts." + ] + }, + "tags": [ + "infrastructure", + "billing", + "invoice", + "automation", + "cloud", + "usage", + "finance" + ], + "examples": [ + { + "inputJson": "{\"clientId\":\"client123\",\"usageDetails\":[{\"resourceType\":\"compute\",\"quantity\":150,\"unit\":\"hours\"},{\"resourceType\":\"storage\",\"quantity\":1200,\"unit\":\"GB-months\"}],\"pricingRates\":{\"compute\":{\"unitCost\":0.10},\"storage\":{\"unitCost\":0.02}},\"billingPeriodStart\":\"2024-03-01\",\"billingPeriodEnd\":\"2024-03-31\",\"discounts\":[{\"description\":\"Volume discount\",\"type\":\"percentage\",\"value\":10}],\"currency\":\"USD\",\"includeTax\":true,\"taxRate\":0.07}", + "description": "Invoice for monthly compute and storage usage with a 10% volume discount and tax applied." + }, + { + "inputJson": "{\"clientId\":\"client789\",\"usageDetails\":[{\"resourceType\":\"physicalServer\",\"quantity\":2,\"unit\":\"servers\",\"duration\":\"30days\"}],\"pricingRates\":{\"physicalServer\":{\"unitCost\":500}},\"billingPeriodStart\":\"2024-04-01\",\"billingPeriodEnd\":\"2024-04-30\",\"discounts\":[],\"currency\":\"USD\",\"includeTax\":false}", + "description": "Invoice for two physical servers rented for one month without discounts or tax." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "infrastructure-management.formatQuery", + "description": "Formats infrastructure management query strings or code snippets to improve readability and maintainability. Accepts raw query text related to infrastructure data queries or commands, applies syntax-aware formatting (indentation, line breaks, capitalization) based on the specified query language, and outputs a clean, standardized formatted query string.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "queryText", + "type": "string", + "description": "The raw, unformatted query string or code snippet related to infrastructure management.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryLanguage", + "type": "string", + "description": "The programming or query language of the input text (e.g., SQL, Terraform, CloudFormation, YAML, JSON).", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "Whether to convert keywords to uppercase for SQL or applicable query languages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineBreakStyle", + "type": "string", + "description": "Preferred line break style: 'lf' (\\n) or 'crlf' (\\r\\n).", + "required": false, + "defaultValue": "lf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted query string with improved readability and consistency." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to deliver or log infrastructure management queries or code snippets in a clear, consistent, and standardized format to improve readability, maintainability, and reduce manual formatting errors. It helps agents ensure output conforms to formatting conventions of various infrastructure code and query languages.", + "limitations": "This tool does not validate or execute queries; it only formats them. It may not handle malformed input gracefully and supports only the specified query languages for formatting conventions.", + "examples": [ + "Format a raw unformatted SQL query used for querying cloud resource metadata.", + "Format a Terraform or CloudFormation snippet for better readability before deployment.", + "Standardize JSON or YAML snippets used for infrastructure configuration files." + ] + }, + "tags": [ + "formatting", + "infrastructure", + "query", + "code", + "readability", + "standardization" + ], + "examples": [ + { + "inputJson": "{\"queryText\":\"SELECT resource_id,resource_type FROM cloud_resources WHERE status='active' ORDER BY resource_type\",\"queryLanguage\":\"SQL\",\"indentationSpaces\":4,\"uppercaseKeywords\":true,\"lineBreakStyle\":\"lf\"}", + "description": "Formats a simple SQL query used to retrieve active cloud resources with 4-space indentation and uppercase keywords." + }, + { + "inputJson": "{\"queryText\":\"resource \\\"aws_instance\\\" \\\"example\\\" {ami = \\\"ami-123456\\\" instance_type = \\\"t2.micro\\\"}\",\"queryLanguage\":\"Terraform\",\"indentationSpaces\":2,\"uppercaseKeywords\":false,\"lineBreakStyle\":\"lf\"}", + "description": "Formats a Terraform resource block with 2-space indentation and maintains casing." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "infrastructure-management.draftSentence", + "description": "Generates clear, concise sentences describing infrastructure status or changes based on provided technical inputs such as resource type, status, action, and context. Accepts structured inputs and outputs a human-readable sentence summarizing infrastructure-related information for reporting or communication.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "resourceType", + "type": "string", + "description": "Type of infrastructure resource (e.g., server, database, network device).", + "required": true, + "defaultValue": "" + }, + { + "name": "action", + "type": "string", + "description": "The action or event related to the resource (e.g., deployed, updated, failed).", + "required": true, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current status or outcome of the action (e.g., successful, pending, error).", + "required": false, + "defaultValue": "\"successful\"" + }, + { + "name": "location", + "type": "string", + "description": "Physical or cloud region/location of the resource if applicable.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "timestamp", + "type": "string", + "description": "Timestamp of the action or status update in ISO 8601 format.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "additionalInfo", + "type": "string", + "description": "Optional supplementary details or context to include in the sentence.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a 'sentence' property containing a clear, factual sentence summarizing the infrastructure event or status." + }, + "aiAgent": { + "useCase": "Use this tool to translate technical infrastructure events, statuses, or changes into human-readable sentences suitable for reports, notifications, or summaries. Helpful when an agent needs to communicate complex infrastructure information clearly to non-technical stakeholders or in documentation.", + "limitations": "This tool does not generate detailed technical logs or analyze metrics. It cannot craft sentences beyond infrastructure events or status descriptions and is not suitable for narrative storytelling or subjective interpretations.", + "examples": [ + "Generate a sentence stating that a server was successfully deployed in the us-west-2 region on a specific timestamp.", + "Draft a sentence describing a database upgrade failure with error status and additional info.", + "Create a sentence indicating a network device pending configuration in a data center location." + ] + }, + "tags": [ + "infrastructure", + "sentence-generation", + "reporting", + "status-update", + "cloud", + "communication" + ], + "examples": [ + { + "inputJson": "{\"resourceType\":\"server\",\"action\":\"deployed\",\"status\":\"successful\",\"location\":\"us-west-2\",\"timestamp\":\"2024-06-01T10:15:00Z\"}", + "description": "Summarize a successful deployment of a server in a cloud region with timestamp." + }, + { + "inputJson": "{\"resourceType\":\"database\",\"action\":\"updated\",\"status\":\"failed\",\"additionalInfo\":\"timeout error during backup\"}", + "description": "Describe a failed database update including error details." + }, + { + "inputJson": "{\"resourceType\":\"network device\",\"action\":\"configured\",\"status\":\"pending\",\"location\":\"datacenter 3\"}", + "description": "Indicate a network device configuration is pending in a physical location." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "infrastructure-management.draftParagraph", + "description": "Generates a professionally worded paragraph describing a specific aspect of cloud or physical infrastructure management. Takes inputs such as topic, target audience, and level of technical detail, then produces a clear descriptive paragraph suitable for documentation, reports, or plans.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The specific infrastructure concept or component to describe.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended reader role or expertise level (e.g., system administrators, managers).", + "required": false, + "defaultValue": "system administrators" + }, + { + "name": "technicalLevel", + "type": "string", + "description": "Desired complexity of explanation (e.g., high-level, detailed, beginner).", + "required": false, + "defaultValue": "high-level" + }, + { + "name": "lengthInSentences", + "type": "number", + "description": "Approximate length of the generated paragraph in sentences.", + "required": false, + "defaultValue": "4" + }, + { + "name": "includeBestPractices", + "type": "boolean", + "description": "Whether to include best practice recommendations related to the topic.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph as a string under the key 'paragraph'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce clear, informative paragraphs describing infrastructure components or concepts for various documentation or communication purposes. It helps generate concise yet comprehensive text tailored to the audience and desired detail level, speeding up report or manual creation.", + "limitations": "Cannot replace customized expert review or domain-specific nuances; may produce generic content if given insufficient input context.", + "examples": [ + "Draft a paragraph explaining the benefits of hybrid cloud environments for IT managers.", + "Create a detailed description of load balancers suitable for beginner network engineers.", + "Generate a short paragraph summarizing physical server maintenance best practices." + ] + }, + "tags": [ + "infrastructure", + "documentation", + "content-generation", + "cloud", + "physical", + "management", + "description" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"hybrid cloud benefits\",\"targetAudience\":\"IT managers\",\"technicalLevel\":\"high-level\",\"lengthInSentences\":5,\"includeBestPractices\":true}", + "description": "Generate a 5-sentence paragraph describing the benefits of hybrid cloud for IT managers including best practices." + }, + { + "inputJson": "{\"topic\":\"load balancers\",\"targetAudience\":\"beginner network engineers\",\"technicalLevel\":\"detailed\",\"lengthInSentences\":4,\"includeBestPractices\":false}", + "description": "Create a detailed 4-sentence explanation about load balancers for beginner network engineers without best practices." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "infrastructure-management.composeComment", + "description": "Generates a structured comment text intended for use in cloud or physical infrastructure management contexts. Accepts inputs such as target system, issue details, urgency level, and additional context to produce a clear, concise comment suitable for communication in change logs, incident reports, or team discussions.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "targetSystem", + "type": "string", + "description": "Identifier or name of the infrastructure system or component the comment is about (e.g., database cluster, load balancer).", + "required": true, + "defaultValue": "" + }, + { + "name": "issueSummary", + "type": "string", + "description": "A brief summary of the issue, update, or context that the comment should convey.", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "The priority or urgency level of the issue (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "additionalContext", + "type": "string", + "description": "Extra details or instructions to add to the comment for clarity or next steps.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Flag indicating whether action items or remediation steps should be included in the comment.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the composed comment text and metadata such as length and summarized tags." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to formulate a clear, professional comment regarding issues, updates, or instructions related to infrastructure systems. It helps standardize communication for better clarity among teams dealing with cloud or physical infrastructure management.", + "limitations": "This tool cannot assess the technical accuracy of the content provided; it only structures and composes comments based on input. It does not automate issue resolution or detect issues independently.", + "examples": [ + "Compose a comment summarizing a high urgency network outage for the core switch.", + "Generate an update comment for a planned database maintenance including next steps.", + "Create a low priority comment describing a minor UI glitch in a monitoring dashboard." + ] + }, + "tags": [ + "infrastructure", + "communication", + "incident-report", + "comment-composition", + "automation" + ], + "examples": [ + { + "inputJson": "{\"targetSystem\":\"database-cluster-prod\",\"issueSummary\":\"Replication lag detected exceeding threshold\",\"urgencyLevel\":\"high\",\"additionalContext\":\"Investigate network latency between primary and secondary nodes.\",\"includeActionItems\":true}", + "description": "Generate a high urgency comment about replication lag in the production database cluster including next steps." + }, + { + "inputJson": "{\"targetSystem\":\"load-balancer-12\",\"issueSummary\":\"Scheduled maintenance window\",\"urgencyLevel\":\"medium\",\"additionalContext\":\"Expect brief downtime from 2-3 AM UTC.\",\"includeActionItems\":false}", + "description": "Compose a medium urgency comment notifying about a maintenance window for a load balancer without action items." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "infrastructure-management.draftSummary", + "description": "This tool accepts an infrastructure report object detailing cloud and physical resources, their status, and recent changes. It processes this input to generate a concise summary report highlighting key updates, incidents, and resource utilization for stakeholder communication. The output is a structured textual overview suitable for status meetings or documentation.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureReport", + "type": "object", + "description": "An object containing details about infrastructure resources, status, incidents, and recent changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations based on the report analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summaryLength", + "type": "string", + "description": "Desired length of the summary: 'short', 'medium', or 'detailed'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "reportDate", + "type": "string", + "description": "Date string (ISO format) representing the report's reference date, for contextualizing the summary.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A summary object containing a textual overview of the infrastructure status, key highlights, incidents, and optionally recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate concise and clear textual summaries from complex infrastructure data, such as status reports or incident logs, to assist with communication between technical teams and stakeholders. Ideal for automating report generation or preparing briefing documents.", + "limitations": "The tool does not perform real-time data collection or monitoring; it relies on provided report data. It also does not provide in-depth technical analysis beyond summarizing supplied information.", + "examples": [ + "Generate a summary of last week's cloud and physical server status report.", + "Draft a brief overview highlighting major incidents and resource utilization changes from the monthly infrastructure report.", + "Create a detailed infrastructure summary including recommendations for upcoming maintenance based on the provided data." + ] + }, + "tags": [ + "infrastructure", + "summary", + "report", + "cloud", + "physical", + "management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"infrastructureReport\":{\"resources\":[{\"id\":\"srv-123\",\"type\":\"server\",\"status\":\"healthy\",\"cpuUsage\":35,\"memoryUsage\":60},{\"id\":\"db-456\",\"type\":\"database\",\"status\":\"degraded\",\"issues\":[\"high latency\"]}],\"incidents\":[{\"id\":\"inc-001\",\"description\":\"Database latency spike\",\"severity\":\"high\",\"resolved\":false}],\"changes\":[{\"description\":\"Upgraded server firmware\",\"date\":\"2024-06-01\"}]},\"includeRecommendations\":true,\"summaryLength\":\"medium\",\"reportDate\":\"2024-06-10\"}", + "description": "A medium-length infrastructure summary with recommendations based on a specific report and date." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "infrastructure-management.buildQueue", + "description": "Creates and configures a managed message queue within a cloud or on-premise infrastructure environment. Accepts configuration parameters such as queue type, durability, visibility timeout, and throughput settings. Outputs connection details and status confirming successful queue provisioning.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifier for the queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "queueType", + "type": "string", + "description": "Type of queue to build, e.g., FIFO or Standard, determining message ordering and delivery guarantees.", + "required": true, + "defaultValue": "" + }, + { + "name": "visibilityTimeoutSeconds", + "type": "number", + "description": "Duration in seconds that a message will be invisible to other consumers after being received.", + "required": false, + "defaultValue": "30" + }, + { + "name": "retentionPeriodSeconds", + "type": "number", + "description": "How long messages are retained in the queue before being deleted, in seconds.", + "required": false, + "defaultValue": "345600" + }, + { + "name": "maxMessageSizeKB", + "type": "number", + "description": "Maximum size of a single message in kilobytes allowed in the queue.", + "required": false, + "defaultValue": "256" + }, + { + "name": "deadLetterQueueName", + "type": "string", + "description": "Optional name of a dead letter queue for messages that fail to be processed after multiple attempts.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableEncryption", + "type": "boolean", + "description": "Flag to enable server-side encryption for messages stored in the queue.", + "required": false, + "defaultValue": "false" + }, + { + "name": "throughputLimitTPS", + "type": "number", + "description": "Optional throughput limit on transactions per second to control queue load.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the queue's unique identifier, endpoint URL, ARN (if applicable), status of creation, and any warnings or errors encountered during the build process." + }, + "aiAgent": { + "useCase": "This tool is useful for AI agents orchestrating cloud infrastructure setup that requires asynchronous processing and decoupling of components via message queues. Agents can programmatically provision queues based on workload characteristics and application needs, enabling build automation and scalable messaging patterns.", + "limitations": "Does not handle message processing or consumption. Does not manage multi-region replication or advanced routing rules beyond basic queue configuration.", + "examples": [ + "Create a durable FIFO queue named 'order-processing-queue' with encryption enabled.", + "Build a standard queue 'task-queue' with a visibility timeout of 45 seconds and a dead letter queue linked.", + "Provision a high throughput standard queue limited to 500 TPS with 5 MB max message size." + ] + }, + "tags": [ + "queue", + "infrastructure", + "messageQueue", + "cloud", + "automation", + "build", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"order-processing-queue\",\"queueType\":\"FIFO\",\"enableEncryption\":true}", + "description": "Create a durable FIFO queue with encryption enabled." + }, + { + "inputJson": "{\"queueName\":\"task-queue\",\"queueType\":\"Standard\",\"visibilityTimeoutSeconds\":45,\"deadLetterQueueName\":\"task-dead-letter\"}", + "description": "Build a standard queue with 45 seconds visibility timeout and associate a dead letter queue." + }, + { + "inputJson": "{\"queueName\":\"high-throughput-queue\",\"queueType\":\"Standard\",\"throughputLimitTPS\":500,\"maxMessageSizeKB\":512}", + "description": "Provision a standard queue limiting throughput to 500 TPS and allowing messages up to 512 KB." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "infrastructure-management.buildCluster", + "description": "This tool provisions and configures a compute cluster in cloud or on-premises environments. It accepts parameters specifying cluster type, node configurations, network settings, and scaling options, then automates resource allocation, software setup, and returns the cluster status and access details.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "Unique name identifier for the cluster to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "clusterType", + "type": "string", + "description": "Type of cluster to build, e.g., 'kubernetes', 'hadoop', 'docker-swarm'.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of worker nodes in the cluster.", + "required": true, + "defaultValue": "3" + }, + { + "name": "nodeConfig", + "type": "object", + "description": "Specification of node configuration including CPU, memory, and storage.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network settings including VPC, subnets, security groups, and load balancers.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoScaling", + "type": "boolean", + "description": "Enable or disable cluster autoscaling based on workload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "region", + "type": "string", + "description": "Geographical location or data center region to provision the cluster.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of metadata tags to assign to the cluster resources.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Structured status and metadata of the newly built cluster including cluster ID, status, endpoint URLs, and node details." + }, + "aiAgent": { + "useCase": "Use this tool when programmatically setting up distributed compute clusters for scaling applications or data processing workloads in cloud or physical infrastructure environments. Ideal for automated deployment pipelines or AI-controlled infrastructure management.", + "limitations": "Does not manage running workloads or application deployments inside the cluster. Does not configure cluster-specific internal services beyond basic setup. Requires valid credentials for target cloud or physical environments.", + "examples": [ + "Build a Kubernetes cluster with 5 nodes optimized for high CPU in us-east-1 region.", + "Create a Hadoop cluster of 10 nodes with autoscaling enabled and custom network settings.", + "Provision a Docker Swarm cluster with 3 worker nodes tagged for development environment." + ] + }, + "tags": [ + "cluster", + "infrastructure", + "cloud", + "provisioning", + "automation", + "scaling" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"prod-k8s\",\"clusterType\":\"kubernetes\",\"nodeCount\":5,\"nodeConfig\":{\"cpu\":\"16\",\"memory\":\"64GB\",\"storage\":\"500GB\"},\"networkConfig\":{\"vpc\":\"vpc-1234abcd\",\"subnets\":[\"subnet-1111\",\"subnet-2222\"],\"securityGroups\":[\"sg-01\"]},\"autoScaling\":true,\"region\":\"us-east-1\",\"tags\":[\"production\",\"k8s\"]}", + "description": "Build a Kubernetes cluster with 5 high-CPU nodes in the us-east-1 region with autoscaling enabled." + }, + { + "inputJson": "{\"clusterName\":\"analytics-hadoop\",\"clusterType\":\"hadoop\",\"nodeCount\":10,\"nodeConfig\":{\"cpu\":\"8\",\"memory\":\"32GB\",\"storage\":\"2TB\"},\"autoScaling\":false,\"tags\":[\"analytics\",\"bigdata\"]}", + "description": "Create a fixed size Hadoop cluster optimized for analytics workloads without autoscaling." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "infrastructure-management.generateConversion", + "description": "Generates conversion metrics by analyzing infrastructure usage data and user-defined conversion criteria. Accepts input logs or metrics data, processes data to compute conversion rates related to infrastructure events (e.g., resource provisioning to application deployment), and outputs detailed conversion analytics for optimization insights.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureData", + "type": "array", + "description": "Array of infrastructure event records or metrics data for processing conversions.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionCriteria", + "type": "object", + "description": "Definition of what constitutes a conversion, including event sequences or metrics thresholds.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Time period specifying the start and end timestamps to filter data (ISO 8601 strings).", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationLevel", + "type": "string", + "description": "Level of aggregation for output metrics (e.g., hourly, daily, weekly).", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Flag indicating whether to include detailed event breakdowns in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing conversion metrics including total conversions, conversion rate, and optionally detailed event analysis breakdowns." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing infrastructure operation data to measure and report conversion metrics such as deployment success rates related to provisioning events, enabling performance and process optimization in managing cloud or physical infrastructure.", + "limitations": "This tool does not perform real-time monitoring; it operates on provided historical data sets. It requires properly structured input data and defined conversion criteria to be effective.", + "examples": [ + "Generate conversion analytics for nightly provisioning and deployment events over the past week.", + "Calculate conversion rate from resource allocation to successful container launch with daily aggregation.", + "Provide detailed conversion event breakdowns for a specified time range between two data centers." + ] + }, + "tags": [ + "infrastructure", + "analytics", + "conversion", + "metrics", + "cloud", + "performance", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"infrastructureData\":[{\"event\":\"provision\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"event\":\"deploy\",\"timestamp\":\"2024-05-01T10:15:00Z\",\"status\":\"success\"}],\"conversionCriteria\":{\"startEvent\":\"provision\",\"endEvent\":\"deploy\",\"successStatus\":\"success\"},\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"aggregationLevel\":\"daily\",\"includeDetails\":false}", + "description": "Calculate daily conversion rates of provision events followed by successful deploy events over a one-week period." + }, + { + "inputJson": "{\"infrastructureData\":[{\"event\":\"allocate\",\"timestamp\":\"2024-06-10T08:30:00Z\"},{\"event\":\"containerLaunch\",\"timestamp\":\"2024-06-10T08:45:00Z\",\"status\":\"success\"}],\"conversionCriteria\":{\"startEvent\":\"allocate\",\"endEvent\":\"containerLaunch\",\"successStatus\":\"success\"},\"aggregationLevel\":\"hourly\",\"includeDetails\":true}", + "description": "Hourly conversion metrics from resource allocation to container launches with detailed event breakdowns." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "infrastructure-management.buildSchema", + "description": "Generates infrastructure-as-code schema definitions based on input configuration objects describing cloud or physical infrastructure components. Accepts a structured JSON object detailing resources, their attributes, and relationships, then outputs a validated schema in JSON or YAML format usable for automated infrastructure provisioning and management.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureConfig", + "type": "object", + "description": "A JSON object detailing infrastructure components, their properties, and relationships; serves as the input blueprint to generate a schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated schema, either 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeValidationRules", + "type": "boolean", + "description": "Whether to include validation rules for resource properties in the schema.", + "required": false, + "defaultValue": "true" + }, + { + "name": "targetInfrastructureType", + "type": "string", + "description": "Type of infrastructure for tailored schema generation, e.g., 'aws', 'azure', 'onpremise'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated infrastructure schema as a string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate or update infrastructure-as-code schemas for cloud or physical infrastructure based on user-provided configuration blueprints. It's ideal for automating infrastructure provisioning, ensuring consistency, and enabling integration with Terraform, CloudFormation, or custom management tools.", + "limitations": "Does not execute or deploy infrastructure; does not validate the runtime correctness of configurations beyond schema validation; specialized provider-specific features might not be fully supported.", + "examples": [ + "Generate a Terraform-compatible JSON schema for an AWS VPC and EC2 instances setup from a high-level config object.", + "Output a YAML schema defining on-premise server racks and network components from an input describing physical assets.", + "Build validation rules-included schema in JSON format for an Azure resource group configuration." + ] + }, + "tags": [ + "infrastructure", + "schema-generation", + "iac", + "cloud", + "automation" + ], + "examples": [ + { + "inputJson": "{\"infrastructureConfig\":{\"resources\":[{\"type\":\"server\",\"name\":\"web-server\",\"properties\":{\"cpu\":\"4\",\"ram\":\"16GB\"}},{\"type\":\"network\",\"name\":\"vpc-1\",\"properties\":{\"cidr\":\"10.0.0.0/16\"}}]},\"outputFormat\":\"json\",\"includeValidationRules\":true,\"targetInfrastructureType\":\"aws\"}", + "description": "Generate a JSON schema for AWS infrastructure including servers and networks with validation rules." + }, + { + "inputJson": "{\"infrastructureConfig\":{\"resources\":[{\"type\":\"rack\",\"name\":\"rack42\",\"properties\":{\"units\":42,\"powerSupply\":\"redundant\"}}]},\"outputFormat\":\"yaml\",\"includeValidationRules\":false,\"targetInfrastructureType\":\"onpremise\"}", + "description": "Build a YAML schema describing on-premises physical rack infrastructure without validation rules." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "infrastructure-management.generateDiagram", + "description": "Generates a visual infrastructure diagram based on cloud and on-premises resource data provided in JSON or YAML format. It processes the input to create an architecture diagram illustrating components, connections, and hierarchy, outputting a diagram file in SVG or PNG format for documentation or planning.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureData", + "type": "string", + "description": "Structured infrastructure data in JSON or YAML format describing components, connections, and properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the infrastructure data input: 'json' or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output diagram format: 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining diagram symbols and icons.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Color theme for the diagram: 'light' or 'dark'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "highlightType", + "type": "string", + "description": "Specific resource type to highlight in the diagram (e.g., 'database', 'loadBalancer').", + "required": false, + "defaultValue": "" + }, + { + "name": "layoutStyle", + "type": "string", + "description": "Diagram layout style: 'hierarchical', 'circular', or 'forceDirected'.", + "required": false, + "defaultValue": "hierarchical" + } + ], + "returns": { + "type": "object", + "description": "An object containing the diagram image as a base64-encoded string, its format, and metadata about the diagram content." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured infrastructure descriptions and need to visualize the architecture for documentation, review, or troubleshooting. This helps in understanding resource relationships and planning changes.", + "limitations": "Does not automatically fetch live infrastructure state; requires accurate input data. Complex dynamic interactions or animations are not supported.", + "examples": [ + "Generate a diagram from a JSON file describing a multi-tier cloud app.", + "Create a PNG diagram highlighting all database nodes in the infrastructure.", + "Produce a dark-themed hierarchical SVG diagram including a legend." + ] + }, + "tags": [ + "infrastructure", + "diagram", + "visualization", + "cloud", + "architecture", + "infrastructure-management" + ], + "examples": [ + { + "inputJson": "{\"infrastructureData\":\"{\\\"components\\\": [{\\\"id\\\": \\\"appServer1\\\", \\\"type\\\": \\\"server\\\"}, {\\\"id\\\": \\\"db1\\\", \\\"type\\\": \\\"database\\\"}], \\\"connections\\\": [{\\\"from\\\": \\\"appServer1\\\", \\\"to\\\": \\\"db1\\\"}]}\",\"inputFormat\":\"json\",\"outputFormat\":\"svg\",\"includeLegend\":true,\"theme\":\"light\",\"highlightType\":\"\",\"layoutStyle\":\"hierarchical\"}", + "description": "Generate a basic hierarchical SVG diagram with legend from JSON infrastructure data." + }, + { + "inputJson": "{\"infrastructureData\": \"components:\\n - id: lb1\\n type: loadBalancer\\n - id: web1\\n type: server\\nconnections:\\n - from: lb1\\n to: web1\\n\", \"inputFormat\": \"yaml\", \"outputFormat\": \"png\", \"includeLegend\": false, \"theme\": \"dark\", \"highlightType\": \"loadBalancer\", \"layoutStyle\": \"forceDirected\"}", + "description": "Generate a PNG diagram in dark theme highlighting load balancers from YAML input, forced directed layout without legend." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "infrastructure-management.generateReadme", + "description": "Generates a comprehensive README document for a given infrastructure project based on input details such as project description, architecture, components, deployment instructions, and dependencies. The tool outputs a structured markdown README file suitable for documentation and onboarding.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the infrastructure project.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief overview of the project's purpose, goals, or scope.", + "required": true, + "defaultValue": "" + }, + { + "name": "architectureOverview", + "type": "string", + "description": "Description of the overall infrastructure architecture including main components and design considerations.", + "required": false, + "defaultValue": "" + }, + { + "name": "components", + "type": "array", + "description": "List of key infrastructure components, each with a name and brief description.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deploymentInstructions", + "type": "string", + "description": "Step-by-step instructions or notes for deploying the infrastructure.", + "required": false, + "defaultValue": "" + }, + { + "name": "prerequisites", + "type": "array", + "description": "List of prerequisites or dependencies required before deploying or using the infrastructure (e.g., software, credentials).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "usageNotes", + "type": "string", + "description": "Additional notes on usage, maintenance, or troubleshooting.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Contact details for the maintainer or team responsible for the infrastructure.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated README content as a markdown-formatted string under the key 'readmeContent'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate professional, user-friendly README documentation for infrastructure projects, aiding project onboarding, knowledge sharing, or deployment guidance. It is ideal when provided with project metadata and architectural details, producing markdown text suitable for version control and documentation platforms.", + "limitations": "This tool generates documentation based strictly on provided inputs; it cannot infer missing architecture or deployment details, nor validate infrastructure setup correctness.", + "examples": [ + "Generate a README for a Kubernetes cluster setup project including components like nodes, pods, and services.", + "Create documentation for a Terraform-based AWS infrastructure including prerequisites and deployment instructions.", + "Produce onboarding README for a hybrid cloud infrastructure detailing architecture and contact info." + ] + }, + "tags": [ + "documentation", + "infrastructure", + "readme", + "deployment", + "markdown", + "project-management" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"KubernetesCluster\",\"projectDescription\":\"A scalable Kubernetes cluster for containerized applications.\",\"architectureOverview\":\"The cluster consists of master and worker nodes managed via kubeadm.\",\"components\":[{\"name\":\"Master Node\",\"description\":\"Control plane manages cluster state.\"},{\"name\":\"Worker Nodes\",\"description\":\"Run application containers.\"}],\"deploymentInstructions\":\"1. Install kubeadm 2. Initialize master node 3. Join worker nodes to cluster\",\"prerequisites\":[\"Docker installed\",\"kubeadm configured\"],\"usageNotes\":\"Monitor node health regularly.\",\"contactInfo\":\"devops@example.com\"}", + "description": "Generate README for a Kubernetes infrastructure project with detailed components and deployment steps." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "infrastructure-management.createQuote", + "description": "Generates a detailed price quote for infrastructure projects based on input specifications such as resource types, quantities, durations, and pricing models. It processes the input to calculate estimated costs, taxes, and discounts, and outputs a structured quote including line items and total costs.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name identifier for the infrastructure project requiring the quote.", + "required": true, + "defaultValue": "" + }, + { + "name": "resources", + "type": "array", + "description": "An array of objects specifying resource type, quantity, and unit price for items needed in the infrastructure project.", + "required": true, + "defaultValue": "" + }, + { + "name": "durationMonths", + "type": "number", + "description": "Estimated duration of the project or resource usage in months, affecting cost calculations.", + "required": false, + "defaultValue": "1" + }, + { + "name": "includeTax", + "type": "boolean", + "description": "Flag indicating whether to include tax calculations in the quote.", + "required": false, + "defaultValue": "true" + }, + { + "name": "discountPercent", + "type": "number", + "description": "Percentage discount to apply to the total cost before tax.", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) for pricing and totals.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "A quote object containing project name, currency, detailed line items with resource, quantity, unit price, line total, subtotal, discount applied, tax amount, and grand total cost." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate infrastructure project quotes that summarize costs based on specific resource requirements and pricing models. Useful in proposal generation, budgeting and cost estimation tasks.", + "limitations": "This tool does not retrieve live pricing from vendors or support dynamic market pricing updates; it relies on provided input data and static calculations.", + "examples": [ + "Create a price quote for a cloud infrastructure setup with 10 servers for 12 months including tax and 5% discount.", + "Generate a cost estimate for 5 network switches and 20 TB storage for 6 months without applying tax.", + "Produce a quote in EUR currency for various physical hardware resources for 3-month deployment." + ] + }, + "tags": [ + "infrastructure", + "cost-estimation", + "pricing", + "quote-generation", + "cloud", + "hardware", + "budgeting" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Cloud Migration Alpha\",\"resources\":[{\"type\":\"Virtual Machine\",\"quantity\":10,\"unitPrice\":150},{\"type\":\"Storage (TB)\",\"quantity\":50,\"unitPrice\":20}],\"durationMonths\":12,\"includeTax\":true,\"discountPercent\":5,\"currency\":\"USD\"}", + "description": "Generate a detailed multi-resource quote for a 12-month cloud migration project including tax and a discount." + }, + { + "inputJson": "{\"projectName\":\"Network Upgrade Beta\",\"resources\":[{\"type\":\"Network Switch\",\"quantity\":5,\"unitPrice\":500},{\"type\":\"Firewall Appliance\",\"quantity\":2,\"unitPrice\":1200}],\"durationMonths\":6,\"includeTax\":false,\"discountPercent\":0,\"currency\":\"USD\"}", + "description": "Create a cost estimate quote for network hardware without tax or discounts." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "infrastructure-management.generateBlogPost", + "description": "Generates a structured, SEO-optimized blog post focused on infrastructure management topics. Accepts input parameters such as topic, target audience, tone, and key points to include. Produces a detailed blog post text with headings, content sections, and summary suited for publication or further editing.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the blog post to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended readers of the blog post (e.g., DevOps engineers, IT managers).", + "required": false, + "defaultValue": "IT professionals" + }, + { + "name": "tone", + "type": "string", + "description": "The writing style or tone of the post (e.g., professional, casual, technical).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "keyPoints", + "type": "array", + "description": "A list of key points or ideas the blog post should cover.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired word count of the blog post.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeCodeSamples", + "type": "boolean", + "description": "Whether to include example code snippets relevant to the topic.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post as a formatted markdown string and metadata such as suggested title and summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create informative, well-structured blog posts about infrastructure management topics such as cloud orchestration, network security, or hardware provisioning. Ideal for generating content drafts for technical marketing, educational materials, or organizational blogs.", + "limitations": "This tool cannot conduct original research or access real-time data; content is generated based on input prompts and learned knowledge. It may lack depth on very niche or recent technologies and cannot guarantee SEO rankings or factual accuracy without verification.", + "examples": [ + "Generate a 1000-word blog post about 'Cloud Infrastructure Automation' for DevOps engineers in a professional tone including key points about CI/CD integration and monitoring.", + "Create a casual blog post explaining 'Best Practices for On-Premises Network Security' targeting IT managers, about 800 words.", + "Write a technical post about 'Infrastructure as Code using Terraform' including example code snippets, aimed at system administrators." + ] + }, + "tags": [ + "infrastructure", + "blog", + "content-generation", + "automation", + "cloud", + "IT-management", + "technical-writing" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Cloud Infrastructure Automation\",\"targetAudience\":\"DevOps engineers\",\"tone\":\"professional\",\"keyPoints\":[\"CI/CD integration\",\"Monitoring and alerting\",\"Scaling strategies\"],\"length\":1000,\"includeCodeSamples\":false}", + "description": "Generate a professional 1000-word blog post on cloud infrastructure automation targeted at DevOps engineers, covering key topics including CI/CD integration and monitoring." + }, + { + "inputJson": "{\"topic\":\"Best Practices for On-Premises Network Security\",\"targetAudience\":\"IT managers\",\"tone\":\"casual\",\"length\":800,\"includeCodeSamples\":false}", + "description": "Create a casual tone blog post about network security best practices for on-premises environments aimed at IT managers, around 800 words." + }, + { + "inputJson": "{\"topic\":\"Infrastructure as Code using Terraform\",\"targetAudience\":\"system administrators\",\"tone\":\"technical\",\"keyPoints\":[\"Terraform basics\",\"Module usage\",\"State management\"],\"length\":1200,\"includeCodeSamples\":true}", + "description": "Write a technical blog post about using Terraform for Infrastructure as Code targeting system administrators, including relevant example code and covering core topics." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "infrastructure-management.generateTemplate", + "description": "Generates infrastructure-as-code templates such as Terraform or CloudFormation based on input parameters specifying resource types, configurations, and provider details. Processes the configuration inputs and outputs a valid, ready-to-deploy template file as a string.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "cloudProvider", + "type": "string", + "description": "The cloud service provider for which to generate the template (e.g., AWS, Azure, GCP).", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceDefinitions", + "type": "array", + "description": "Array of resource definitions specifying type, properties, and relationships to include in the template.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateFormat", + "type": "string", + "description": "The output template format, e.g., 'terraform' or 'cloudformation'.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateVersion", + "type": "string", + "description": "Optionally specify a version or schema version for the template format.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputName", + "type": "string", + "description": "Optional name for the generated template file.", + "required": false, + "defaultValue": "infrastructure_template" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template content as a string and metadata such as the provider and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate infrastructure-as-code templates tailored to specific cloud providers and resource configurations. It supports generating structured templates from high-level resource definitions, enabling rapid infrastructure provisioning and automation.", + "limitations": "Does not perform deployment, validation against cloud provider APIs, or advanced template optimization. Resource definitions must follow expected schema; complex inter-resource dependencies may require manual adjustment.", + "examples": [ + "Generate a Terraform template for AWS including EC2 and S3 resources.", + "Create a CloudFormation template for an Azure resource group containing virtual machines and storage accounts.", + "Produce an infrastructure template with specified versions for Google Cloud Platform resources." + ] + }, + "tags": [ + "infrastructure", + "template-generation", + "cloud", + "terraform", + "cloudformation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"cloudProvider\":\"AWS\",\"resourceDefinitions\":[{\"type\":\"aws_instance\",\"name\":\"webServer\",\"properties\":{\"instance_type\":\"t2.micro\",\"ami\":\"ami-0abcdef1234567890\"}},{\"type\":\"aws_s3_bucket\",\"name\":\"dataBucket\",\"properties\":{\"acl\":\"private\"}}],\"templateFormat\":\"terraform\",\"outputName\":\"awsInfra\"}", + "description": "Generate a Terraform template for AWS with EC2 instance and S3 bucket." + }, + { + "inputJson": "{\"cloudProvider\":\"Azure\",\"resourceDefinitions\":[{\"type\":\"azurerm_virtual_machine\",\"name\":\"vm1\",\"properties\":{\"vm_size\":\"Standard_DS1_v2\",\"admin_username\":\"adminUser\"}},{\"type\":\"azurerm_storage_account\",\"name\":\"storage1\",\"properties\":{\"account_tier\":\"Standard\",\"account_replication_type\":\"LRS\"}}],\"templateFormat\":\"terraform\"}", + "description": "Create a Terraform template for Azure VM and storage account without specifying outputName." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "infrastructure-management.generateYAML", + "description": "Generates a YAML-formatted configuration file for cloud or physical infrastructure based on user-provided specifications. Accepts structured input describing resources, properties, and parameters; processes these inputs to create valid YAML manifests suitable for infrastructure deployment tools and configuration management.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureSpec", + "type": "object", + "description": "Structured object defining the infrastructure components, resource types, properties, and settings to include in the YAML output.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include helpful explanatory comments in the generated YAML to aid human readability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "version", + "type": "string", + "description": "Target version of the YAML schema or infrastructure tool compatibility (e.g., Kubernetes API version or Terraform version), defaults to latest.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated YAML string representing the infrastructure configuration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create YAML configurations for managing infrastructure resources such as servers, containers, networks, or cloud services from a structured data specification, enabling automation and consistent deployments.", + "limitations": "Does not validate the functional correctness against actual infrastructure or guarantee deployment success; schema version support may be limited; complex resource dependencies must be pre-validated by the user.", + "examples": [ + "Generate a Kubernetes deployment YAML manifest for a web app based on specified container images and resource limits.", + "Create a Terraform-like YAML configuration for provisioning cloud virtual machines with specified parameters.", + "Produce a docker-compose YAML file to define multi-container application services from input resource definitions." + ] + }, + "tags": [ + "infrastructure", + "configuration", + "YAML", + "automation", + "cloud", + "deployment", + "generate" + ], + "examples": [ + { + "inputJson": "{\"infrastructureSpec\":{\"resources\":[{\"type\":\"kubernetes.deployment\",\"metadata\":{\"name\":\"nginx-deployment\"},\"spec\":{\"replicas\":3,\"template\":{\"spec\":{\"containers\":[{\"name\":\"nginx\",\"image\":\"nginx:1.19\"}]}}}}]},\"includeComments\":true}", + "description": "Generate a Kubernetes deployment YAML manifest for an nginx deployment with 3 replicas, including comments." + }, + { + "inputJson": "{\"infrastructureSpec\":{\"resources\":[{\"type\":\"docker.compose.service\",\"name\":\"redis\",\"image\":\"redis:latest\",\"ports\":[\"6379:6379\"]}]},\"includeComments\":false}", + "description": "Generate a docker-compose service YAML snippet for a Redis container without comments." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "infrastructure-management.createCache", + "description": "Creates and configures a cache instance in a cloud or on-premise infrastructure environment. Accepts parameters such as cache type, size, region, and optional security settings. Processes these inputs to provision and initialize the cache accordingly, returning details of the created cache including endpoint, status, and configuration metadata.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create, e.g., Redis, Memcached.", + "required": true, + "defaultValue": "" + }, + { + "name": "sizeInGB", + "type": "number", + "description": "The allocated size of the cache instance in gigabytes.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region or data center location to deploy the cache.", + "required": true, + "defaultValue": "" + }, + { + "name": "ttlInSeconds", + "type": "number", + "description": "Optional time-to-live for cache entries in seconds; after which entries expire. 0 means no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "replicationEnabled", + "type": "boolean", + "description": "Whether to enable replication for high availability (if supported by cache type).", + "required": false, + "defaultValue": "false" + }, + { + "name": "securityGroupIds", + "type": "array", + "description": "List of security group IDs or firewall rules to apply for cache access control.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to label and organize the cache resource.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cache instance ID, endpoint URL, status (e.g., creating, available), configuration details, and metadata such as creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a new cache layer for an application or service environment, optimizing data retrieval performance or reducing backend load. Typical scenarios include adding a Redis cache for session management, setting up Memcached for database query caching, or creating region-specific caches to reduce latency.", + "limitations": "Does not handle cache data migration or backup. Cannot modify or delete existing cache instances; those require other tools. Dependent on cloud provider or infrastructure API availability and permissions.", + "examples": [ + "Create a 10GB Redis cache in the us-east-1 region with replication enabled for high availability.", + "Provision a Memcached cache of 5GB in a local data center with a TTL of 3600 seconds and restricted access via security groups.", + "Set up a 20GB Redis cache with custom tags for environment=production and project=webapp" + ] + }, + "tags": [ + "infrastructure", + "cache", + "cloud", + "provisioning", + "performance", + "redis", + "memcached" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"Redis\",\"sizeInGB\":10,\"region\":\"us-east-1\",\"ttlInSeconds\":0,\"replicationEnabled\":true,\"securityGroupIds\":[\"sg-123abc\"],\"tags\":{\"environment\":\"production\"}}", + "description": "Creates a 10GB Redis cache in US East with replication and security group." + }, + { + "inputJson": "{\"cacheType\":\"Memcached\",\"sizeInGB\":5,\"region\":\"eu-central-1\",\"ttlInSeconds\":3600,\"replicationEnabled\":false,\"securityGroupIds\":[],\"tags\":{\"project\":\"analytics\"}}", + "description": "Creates a 5GB Memcached with 1 hour TTL in EU Central region." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "infrastructure-management.createChannel", + "description": "Creates a communication channel within an infrastructure management platform to facilitate notifications, alerts, or collaboration. Accepts configuration inputs like channel name, type, target endpoints, and access permissions. Returns detailed channel metadata including IDs and status.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "Human-readable name of the communication channel to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of channel to create, e.g., 'email', 'slack', 'pagerduty', or 'webhook'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEndpoints", + "type": "array", + "description": "List of target addresses or endpoints associated with the channel (e.g., email addresses, Slack channel IDs, webhook URLs).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional text describing the purpose or usage of the channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag to indicate if the channel should be active immediately after creation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "accessPermissions", + "type": "object", + "description": "Access control settings specifying user or role IDs permitted to manage or send messages through this channel.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing channel metadata such as unique channel ID, creation timestamp, channel status, and configuration details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to establish new communication pathways within an infrastructure system for alerts, notifications, or team collaboration. For instance, when automating incident responses or setting up notification workflows, creating channels targeting specific endpoints or platforms is essential.", + "limitations": "This tool does not send messages or notifications itself—it only creates and configures communication channels. It also depends on external platform integrations being available and configured properly.", + "examples": [ + "Create a Slack channel for deployment alerts", + "Create an email channel targeting a set of SRE team emails", + "Create a webhook channel for incoming monitoring data integration" + ] + }, + "tags": [ + "infrastructure", + "communication", + "channel", + "notification", + "alerts", + "collaboration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"SRE Alerts\",\"channelType\":\"email\",\"targetEndpoints\":[\"sre-team@example.com\",\"oncall@example.com\"],\"description\":\"Alerts channel for site reliability engineers\",\"isActive\":true}", + "description": "Creating an active email channel to notify the SRE team with multiple recipients." + }, + { + "inputJson": "{\"channelName\":\"Deploy Updates\",\"channelType\":\"slack\",\"targetEndpoints\":[\"C12345678\"],\"description\":\"Slack channel to post deployment status updates\",\"isActive\":false}", + "description": "Create a Slack channel integration paused for initial setup." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "infrastructure-management.createDiagram", + "description": "Creates a detailed infrastructure diagram based on user-provided components and their relationships. Accepts structured input describing physical or cloud resources, connections, and layout preferences. Outputs a visual diagram file (SVG or PNG) and a JSON representation of the infrastructure topology.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "components", + "type": "array", + "description": "A list of infrastructure components with their types, labels, and unique IDs. Required to define nodes in the diagram.", + "required": true, + "defaultValue": "" + }, + { + "name": "connections", + "type": "array", + "description": "An array of connection objects defining links between components by their IDs, including connection type and optional labels.", + "required": true, + "defaultValue": "" + }, + { + "name": "layoutStyle", + "type": "string", + "description": "Preferred layout style for the diagram such as 'hierarchical', 'circular', or 'force-directed'.", + "required": false, + "defaultValue": "\"hierarchical\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format for the diagram image. Supported values are 'svg' and 'png'.", + "required": false, + "defaultValue": "\"svg\"" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to generate a legend explaining component and connection symbols.", + "required": false, + "defaultValue": "true" + }, + { + "name": "diagramTitle", + "type": "string", + "description": "An optional title to be displayed on the diagram.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a base64-encoded diagram image file and JSON representation of the topology." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a visual infrastructure diagram from raw component and connection data. It helps visualize cloud or physical network architectures to aid understanding, documentation, or planning.", + "limitations": "Cannot automatically discover infrastructure components or validate connection correctness. Complex layouts with very large numbers of components may produce cluttered diagrams.", + "examples": [ + "Generate a hierarchical network diagram for a multi-region cloud deployment.", + "Create an SVG image diagram of a data center topology including servers, switches, and firewalls.", + "Produce a force-directed diagram showing dependencies between microservices and databases." + ] + }, + "tags": [ + "infrastructure", + "diagram", + "visualization", + "cloud", + "network", + "architecture" + ], + "examples": [ + { + "inputJson": "{\"components\":[{\"id\":\"1\",\"type\":\"server\",\"label\":\"Web Server\"},{\"id\":\"2\",\"type\":\"database\",\"label\":\"User DB\"}],\"connections\":[{\"from\":\"1\",\"to\":\"2\",\"type\":\"tcp\"}],\"layoutStyle\":\"hierarchical\",\"outputFormat\":\"svg\",\"includeLegend\":true,\"diagramTitle\":\"Web App Infrastructure\"}", + "description": "Create a hierarchical SVG diagram showing a web server connected to a user database with legend and title." + }, + { + "inputJson": "{\"components\":[{\"id\":\"a\",\"type\":\"router\",\"label\":\"Router A\"},{\"id\":\"b\",\"type\":\"switch\",\"label\":\"Switch B\"},{\"id\":\"c\",\"type\":\"server\",\"label\":\"App Server\"}],\"connections\":[{\"from\":\"a\",\"to\":\"b\",\"type\":\"ethernet\"},{\"from\":\"b\",\"to\":\"c\",\"type\":\"ethernet\"}],\"layoutStyle\":\"force-directed\",\"outputFormat\":\"png\",\"includeLegend\":false}", + "description": "Generate a force-directed PNG diagram of physical devices router, switch, and server without legend." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "infrastructure-management.createExpense", + "description": "Creates a detailed expense record related to cloud or physical infrastructure costs by accepting inputs such as vendor, cost amount, cost category, date, and description. Validates and stores the expense data, returning a confirmation with the stored expense ID and summary.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "vendor", + "type": "string", + "description": "Name of the vendor or service provider for the infrastructure expense", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "Monetary value of the expense in the specified currency", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) for the expense amount, e.g. USD, EUR", + "required": true, + "defaultValue": "USD" + }, + { + "name": "expenseDate", + "type": "string", + "description": "Date when the expense was incurred, in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "Category of the expense such as 'Hardware', 'Cloud Services', 'Maintenance', or 'Licensing'", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description or notes about the expense", + "required": false, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "Optional identifier linking the expense to a specific infrastructure project or cost center", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object confirming successful creation including expenseId, stored details, and status message" + }, + "aiAgent": { + "useCase": "Use this tool when recording or logging any financial expenditure related to infrastructure resources, such as cloud subscriptions, hardware purchases, or facility maintenance costs. It helps agents track infrastructure spending accurately by creating structured expense records.", + "limitations": "This tool only creates expense records and does not handle payment processing, budget validation, or expense approval workflows.", + "examples": [ + "Record a new expense for a cloud hosting service payment.", + "Log hardware purchase cost for infrastructure upgrade.", + "Create an expense entry for maintenance service fees." + ] + }, + "tags": [ + "infrastructure", + "expense", + "finance", + "cost-management", + "cloud", + "physical-assets", + "record-creation" + ], + "examples": [ + { + "inputJson": "{\"vendor\":\"AWS\",\"amount\":1200.50,\"currency\":\"USD\",\"expenseDate\":\"2024-05-15\",\"category\":\"Cloud Services\",\"description\":\"Monthly EC2 instance charges\",\"projectId\":\"proj-1234\"}", + "description": "Create an expense entry for the monthly AWS EC2 billing under project proj-1234." + }, + { + "inputJson": "{\"vendor\":\"Dell\",\"amount\":3000,\"currency\":\"USD\",\"expenseDate\":\"2024-05-10\",\"category\":\"Hardware\",\"description\":\"New server purchase for data center\"}", + "description": "Logging a hardware expense for physical server acquisition." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "infrastructure-management.createGraph", + "description": "Generates a visual graph representation of infrastructure components and their relationships using provided configuration data. Accepts JSON or YAML input describing nodes, edges, and properties, processes connectivity and layout, and outputs a structured graph object suitable for visualization and analysis tools.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureData", + "type": "string", + "description": "Infrastructure description data in JSON or YAML format detailing nodes, edges, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of infrastructureData input: 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to create, e.g., 'network', 'dependency', or 'topology'.", + "required": false, + "defaultValue": "network" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional node and edge metadata in the output graph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "layoutAlgorithm", + "type": "string", + "description": "Graph layout algorithm to apply: 'force-directed', 'circular', or 'hierarchical'.", + "required": false, + "defaultValue": "force-directed" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional filter criteria object to exclude nodes or edges based on properties (e.g., exclude offline nodes).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured object representing the graph with nodes, edges, layout coordinates, and optional metadata for visualization or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a visual or analyzable graph from cloud or physical infrastructure descriptions to understand component relationships and dependencies. Suitable for topology mapping, dependency analysis, or network visualization based on input configuration data.", + "limitations": "This tool only generates graphs from structured input describing infrastructure components and relationships; it does not perform real-time discovery or monitoring. Visualization rendering is outside its scope.", + "examples": [ + "Create a network graph from JSON data describing servers and connections.", + "Generate a hierarchical topology graph from YAML input for on-premises infrastructure.", + "Produce a filtered graph excluding offline nodes based on supplied criteria." + ] + }, + "tags": [ + "infrastructure", + "graph", + "visualization", + "network", + "dependencies", + "cloud", + "topology" + ], + "examples": [ + { + "inputJson": "{\"infrastructureData\":\"{\\\"nodes\\\":[{\\\"id\\\":\\\"srv1\\\",\\\"type\\\":\\\"server\\\"},{\\\"id\\\":\\\"db1\\\",\\\"type\\\":\\\"database\\\"}],\\\"edges\\\":[{\\\"source\\\":\\\"srv1\\\",\\\"target\\\":\\\"db1\\\"}]}\",\"inputFormat\":\"json\",\"graphType\":\"network\",\"includeMetadata\":true,\"layoutAlgorithm\":\"force-directed\",\"filterCriteria\":{}}", + "description": "Create a network graph from JSON input describing servers and their database connections with metadata included." + }, + { + "inputJson": "{\"infrastructureData\":\"nodes:\\n - id: router1\\n type: router\\n - id: switch1\\n type: switch\\nedges:\\n - source: router1\\n target: switch1\\n\",\"inputFormat\":\"yaml\",\"graphType\":\"topology\",\"includeMetadata\":false,\"layoutAlgorithm\":\"hierarchical\"}", + "description": "Generate a hierarchical topology graph from YAML input describing network devices, excluding metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "infrastructure-management.createVulnerability", + "description": "Creates a detailed vulnerability record for a given infrastructure asset, including its description, severity, affected systems, and remediation steps. Accepts input data about the vulnerability and outputs a structured vulnerability object for tracking and management.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "vulnerabilityId", + "type": "string", + "description": "Unique identifier for the vulnerability (e.g., CVE ID or internal tracking code).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the vulnerability and how it affects the system.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the vulnerability (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedAssets", + "type": "array", + "description": "List of asset identifiers impacted by this vulnerability, like server IDs or IP addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "discoveredDate", + "type": "string", + "description": "ISO 8601 formatted date when the vulnerability was discovered.", + "required": false, + "defaultValue": "" + }, + { + "name": "remediationSteps", + "type": "array", + "description": "Step-by-step instructions or recommended actions to mitigate or resolve the vulnerability.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalInfo", + "type": "object", + "description": "Optional key-value pairs for extra metadata, such as references to advisories, patches, or CVSS scores.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured object representing the created vulnerability record, including all input fields and a timestamp of creation." + }, + "aiAgent": { + "useCase": "Use this tool when generating new vulnerability records as part of security monitoring, incident response, or infrastructure audits. It is useful for creating standardized entries to track issues affecting infrastructure assets and assist with remediation workflows.", + "limitations": "This tool does not perform vulnerability detection or scanning; it only creates records given vulnerability data. It also does not automatically link vulnerabilities to existing ticketing or asset management systems.", + "examples": [ + "Create a new vulnerability entry for a critical software flaw found on two database servers.", + "Record a low severity vulnerability found during manual audit with recommended patching steps.", + "Add a new internal vulnerability with remediation steps and discovery date to the asset tracking system." + ] + }, + "tags": [ + "infrastructure", + "vulnerability", + "security", + "create", + "management" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityId\":\"CVE-2023-12345\",\"description\":\"Remote code execution vulnerability in web server component.\",\"severity\":\"Critical\",\"affectedAssets\":[\"server-01\",\"server-02\"],\"discoveredDate\":\"2024-05-15T10:30:00Z\",\"remediationSteps\":[\"Update web server to version 2.1.3\",\"Restart affected services\"],\"additionalInfo\":{\"cvssScore\":\"9.8\",\"reference\":\"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-12345\"}}", + "description": "Creating a critical remote code execution vulnerability record affecting two servers with remediation instructions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "infrastructure-management.createMarkdown", + "description": "Generates a comprehensive Markdown report summarizing the current state of cloud or physical infrastructure based on provided infrastructure data and optional templates. It accepts structured input describing infrastructure components, statuses, and metrics, processes this info to produce well-formatted Markdown documentation suitable for operational reviews or audits.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureData", + "type": "object", + "description": "Structured data object representing infrastructure components, statuses, and metrics to include in the Markdown report.", + "required": true, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "Optional Markdown template string with placeholders for customizing the report layout and sections.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetrics", + "type": "boolean", + "description": "Whether to include performance and health metrics in the report sections.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Title to use for the generated Markdown report’s main heading.", + "required": false, + "defaultValue": "\"Infrastructure Report\"" + }, + { + "name": "date", + "type": "string", + "description": "Date string to show in the report header, defaults to current date if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'markdown' string field with the fully formatted infrastructure report in Markdown syntax." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce human-readable documentation summarizing the infrastructure setup, statuses, and metrics for cloud or physical systems. It is ideal for generating reports for audits, operational reviews, or documentation updates where structured infrastructure data exists and a Markdown format is preferred.", + "limitations": "This tool does not fetch or collect infrastructure data itself; it requires pre-collected structured input. It cannot generate graphical visualizations beyond Markdown syntax capabilities. Template support is basic placeholder substitution and does not support complex logic or styling.", + "examples": [ + "Create a Markdown report for a cloud infrastructure including VMs, storage, and network status.", + "Generate a summary report showing current physical server states with performance metrics.", + "Produce an infrastructure overview Markdown using a custom template with sections for alerts and capacity planning." + ] + }, + "tags": [ + "infrastructure", + "reporting", + "markdown", + "documentation", + "cloud", + "physical", + "management" + ], + "examples": [ + { + "inputJson": "{\"infrastructureData\":{\"servers\":[{\"id\":\"srv01\",\"status\":\"active\",\"cpuUsage\":45,\"memoryUsage\":68}],\"networks\":[{\"id\":\"net1\",\"status\":\"operational\",\"latencyMs\":12}]},\"includeMetrics\":true,\"title\":\"Weekly Infrastructure Status\",\"date\":\"2024-06-10\"}", + "description": "Generate a weekly infrastructure status report including metrics with default layout." + }, + { + "inputJson": "{\"infrastructureData\":{\"databases\":[{\"name\":\"db1\",\"status\":\"healthy\",\"connections\":120}]},\"template\":\"# Custom Report\\n## Databases Status\\n- Name: {{databases.name}}\\n- Status: {{databases.status}}\",\"includeMetrics\":false}\"", + "description": "Create a custom templated Markdown report for database statuses without metrics." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "infrastructure-management.createYAML", + "description": "Creates a YAML configuration document based on structured input parameters representing infrastructure specifications such as servers, networks, storage, and services. Accepts an object defining resources and outputs a YAML formatted string for use in infrastructure provisioning or configuration management.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureSpec", + "type": "object", + "description": "An object representing the complete infrastructure components and their configuration details, including servers, networks, and services. Required for generating the YAML.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated YAML for clarity and documentation purposes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces used for indentation in the YAML output, affecting readability.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property with the YAML representation of the infrastructure configuration." + }, + "aiAgent": { + "useCase": "Use when you need to programmatically generate YAML configuration files for infrastructure as code workflows, including cloud resource provisioning, network setup, or configuration management automation. It transforms structured data into syntactically correct and well-formatted YAML documents.", + "limitations": "Cannot validate the semantic correctness of the infrastructure configuration beyond YAML format correctness. Does not interact with infrastructure APIs or deploy resources. Requires valid and well-structured input data.", + "examples": [ + "Create a YAML file defining multi-tier server architecture with load balancer, app servers, and database servers.", + "Generate a network configuration YAML including subnets, gateways, and firewall rules from structured definitions.", + "Produce a YAML configuration with annotations describing each infrastructure component for documentation purposes." + ] + }, + "tags": [ + "infrastructure", + "yaml", + "configuration", + "provisioning", + "automation", + "cloud", + "devops" + ], + "examples": [ + { + "inputJson": "{\"infrastructureSpec\":{\"servers\":[{\"name\":\"webserver01\",\"type\":\"t2.medium\",\"os\":\"Ubuntu 20.04\",\"roles\":[\"web\",\"lb\"]}],\"networks\":[{\"name\":\"public-net\",\"cidr\":\"192.168.1.0/24\"}]},\"includeComments\":true,\"indentationSpaces\":2}", + "description": "Generate YAML configuration for one web server and one public network including comments for documentation." + }, + { + "inputJson": "{\"infrastructureSpec\":{\"storage\":[{\"name\":\"db-data\",\"type\":\"ssd\",\"sizeGb\":100}],\"services\":[{\"name\":\"database\",\"port\":5432,\"protocol\":\"tcp\"}]},\"includeComments\":false,\"indentationSpaces\":4}", + "description": "Produce a compact YAML configuration describing database storage and service without comments and using 4 spaces indentation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "infrastructure-management.createDependency", + "description": "Creates a dependency relationship between two infrastructure components or services, specifying how one depends on the availability or state of the other. Accepts identifiers for both components, type of dependency, and optional conditions. Outputs a confirmation of the established dependency with details.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "sourceComponentId", + "type": "string", + "description": "Unique identifier of the component that depends on another", + "required": true, + "defaultValue": "" + }, + { + "name": "targetComponentId", + "type": "string", + "description": "Unique identifier of the component that is the dependency target", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyType", + "type": "string", + "description": "Type of dependency (e.g., runtime, configuration, network)", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "object", + "description": "Optional conditions or metadata describing the dependency", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object confirming the dependency creation including the source, target, type, conditions, and a status message" + }, + "aiAgent": { + "useCase": "Use this tool when managing infrastructure components to define how one service or resource depends on another, such as defining startup order, failure propagation, or configuration dependencies in cloud or physical environments. It supports infrastructure orchestration, deployment automation, and impact analysis.", + "limitations": "This tool does not handle resolving or automating the dependency relationships, only defines and records them. It cannot validate component existence beyond provided IDs or check runtime states.", + "examples": [ + "Create a runtime dependency from a web server component to a database component.", + "Define configuration dependency where one service must have configuration loaded before another starts.", + "Add network dependency indicating one component requires network access through another before starting." + ] + }, + "tags": [ + "dependency", + "infrastructure", + "management", + "cloud", + "orchestration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceComponentId\":\"comp-web-123\",\"targetComponentId\":\"comp-db-456\",\"dependencyType\":\"runtime\",\"conditions\":{\"startOrder\":\"afterTargetReady\"}}", + "description": "Create a runtime dependency where the web server must start after the database is ready." + }, + { + "inputJson": "{\"sourceComponentId\":\"comp-cache-789\",\"targetComponentId\":\"comp-config-321\",\"dependencyType\":\"configuration\",\"conditions\":{\"requiredConfigVersion\":\"v2.1\"}}", + "description": "Define a configuration dependency indicating the cache component requires config v2.1 before starting." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "infrastructure-management.createBlogPost", + "description": "Creates a formatted blog post document detailing infrastructure management topics. Accepts inputs such as title, author, content sections, tags, and optional metadata. Processes the inputs to generate a structured HTML or Markdown blog post text suitable for publishing on technical blogs or documentation sites.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the blog post.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the blog post author.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentSections", + "type": "array", + "description": "An ordered list of sections composing the body; each section includes a heading and text content.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords associated with the blog post for categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "publishDate", + "type": "string", + "description": "Publication date in ISO 8601 format. If not specified, uses current date.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the blog post text, e.g., 'html' or 'markdown'. Defaults to markdown.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "summary", + "type": "string", + "description": "Optional short summary or abstract of the blog post content.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted blog post content and metadata for publishing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate detailed technical blog content about infrastructure topics, including code snippets, explanations, and best practices, formatted for easy publishing on web platforms.", + "limitations": "This tool does not publish the post or manage hosting platforms; it only generates the content. It also does not perform SEO optimization or image embedding.", + "examples": [ + "Create a blog post titled 'Managing Cloud Infrastructure at Scale' with sections on autoscaling, monitoring, and cost optimization.", + "Generate a markdown blog post with tags 'AWS', 'DevOps' authored by 'Jane Smith'." + ] + }, + "tags": [ + "blog", + "infrastructure", + "documentation", + "writing", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Managing Cloud Infrastructure at Scale\",\"author\":\"Alice Johnson\",\"contentSections\":[{\"heading\":\"Introduction\",\"text\":\"In this post, we explore strategies for scalable cloud infrastructure...\"},{\"heading\":\"Autoscaling\",\"text\":\"Autoscaling allows dynamic adjustment of resources based on load...\"},{\"heading\":\"Monitoring\",\"text\":\"Effective monitoring is crucial for maintaining uptime...\"}],\"tags\":[\"cloud\",\"infrastructure\",\"scaling\"],\"format\":\"markdown\"}", + "description": "Generate a markdown blog post about cloud infrastructure scaling with multiple sections and tags." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "infrastructure-management.createProposal", + "description": "Generates a detailed infrastructure project proposal based on input parameters such as project scope, budget, timeline, and resources. Processes input to create a structured document including objectives, deliverables, estimated costs, and implementation plan. Outputs a JSON object with the complete proposal ready for review or further customization.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The title of the infrastructure project for the proposal.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectScope", + "type": "string", + "description": "A detailed description of the project scope including goals and boundaries.", + "required": true, + "defaultValue": "" + }, + { + "name": "budget", + "type": "number", + "description": "The estimated budget allocated for the project in USD.", + "required": true, + "defaultValue": "" + }, + { + "name": "timelineMonths", + "type": "number", + "description": "The expected duration of the project in months.", + "required": true, + "defaultValue": "" + }, + { + "name": "resourcesRequired", + "type": "array", + "description": "A list of key resources and personnel needed for the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "infrastructureType", + "type": "string", + "description": "Type of infrastructure involved, e.g., cloud, physical data center, hybrid.", + "required": true, + "defaultValue": "" + }, + { + "name": "stakeholders", + "type": "array", + "description": "List of stakeholders with roles relevant to the project implementation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "riskAssessment", + "type": "string", + "description": "Summary of anticipated risks and mitigation strategies.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object containing the full proposal details including executive summary, scope, budget breakdown, timeline, resource plan, risks, and approval sections." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a comprehensive project proposal document for infrastructure-related initiatives, to standardize planning and facilitate decision-making. Suitable for cloud or physical infrastructure projects requiring formal approval documents.", + "limitations": "Cannot substitute for expert legal or financial advice; the proposal is a starting template and may require domain expert customization and validation.", + "examples": [ + "Create an infrastructure proposal for migrating to a hybrid cloud with a $2 million budget over 18 months.", + "Generate a proposal document for setting up a new physical data center with detailed resources and risk assessment.", + "Provide a draft proposal for upgrading network infrastructure including budget, timeline, and stakeholder roles." + ] + }, + "tags": [ + "infrastructure", + "proposal", + "project-management", + "cloud", + "physical", + "planning", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Hybrid Cloud Migration\",\"projectScope\":\"Migrate existing data center workloads to a hybrid cloud architecture.\",\"budget\":2000000,\"timelineMonths\":18,\"resourcesRequired\":[\"Cloud Architect\",\"Network Engineer\",\"Security Specialist\"],\"infrastructureType\":\"hybrid cloud\",\"stakeholders\":[{\"name\":\"CTO\",\"role\":\"Project Sponsor\"},{\"name\":\"IT Manager\",\"role\":\"Project Lead\"}],\"riskAssessment\":\"Potential downtime during migration mitigated by phased approach and rollback plans.\"}", + "description": "Generate a proposal for hybrid cloud migration project with detailed budget and timelines." + }, + { + "inputJson": "{\"projectName\":\"New Data Center Setup\",\"projectScope\":\"Design and construct a new physical data center facility.\",\"budget\":5000000,\"timelineMonths\":24,\"resourcesRequired\":[\"Civil Engineer\",\"Electrical Engineer\",\"Project Manager\"],\"infrastructureType\":\"physical\",\"stakeholders\":[{\"name\":\"Infrastructure Director\",\"role\":\"Sponsor\"}],\"riskAssessment\":\"Construction delays and supply chain risks addressed in schedule buffer.\"}", + "description": "Create a detailed proposal for establishing a new physical data center." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "monitoring.renderSummary", + "description": "Generates a concise summary report of system or application monitoring data. Accepts raw or pre-processed metrics and event logs, processes them to highlight key performance indicators, anomalies, and trends, then outputs a formatted textual summary suitable for stakeholders or automated alerts.", + "category": "monitoring", + "parameters": [ + { + "name": "metricsData", + "type": "object", + "description": "Structured monitoring metrics data such as CPU, memory, and response times.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventLogs", + "type": "array", + "description": "An array of event log entries related to system or application events for context.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Specifies the start and end timestamps to limit the data considered in the summary.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeAnomalies", + "type": "boolean", + "description": "Whether to include detected anomalies or outlier events in the summary report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired length of the summary text in words to control detail level.", + "required": false, + "defaultValue": "200" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output summary: 'text' for plain text or 'markdown' for formatted text.", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted textual summary of monitoring data with key insights and detected anomalies." + }, + "aiAgent": { + "useCase": "Use this tool when you need to synthesize large volumes of monitoring data into a human-readable summary that highlights performance status, key metrics, and anomalies. It's ideal for producing status reports, briefing stakeholders, or feeding automated notification systems with concise summaries.", + "limitations": "Cannot generate raw data or visual graphs, and does not perform predictive forecasting. Quality depends on input data completeness and accuracy; it summarizes but does not deeply analyze root causes.", + "examples": [ + "Generate a summary report of the last 24 hours of system metrics including any anomalies.", + "Provide a markdown formatted summary for a specific application performance data set within a defined timeframe.", + "Produce a brief plain text overview from recent event logs and metrics data to inform the operations team." + ] + }, + "tags": [ + "monitoring", + "summary", + "reporting", + "performance", + "anomaly-detection", + "system-health" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":{\"cpuUsage\":35,\"memoryUsage\":68,\"responseTime\":120},\"eventLogs\":[{\"timestamp\":\"2024-04-26T12:00:00Z\",\"message\":\"Service started\"}],\"timeRange\":{\"start\":\"2024-04-25T00:00:00Z\",\"end\":\"2024-04-26T00:00:00Z\"},\"includeAnomalies\":true,\"summaryLength\":150,\"outputFormat\":\"text\"}", + "description": "Summarize system metrics and event logs for the last 24 hours including anomalies, output as plain text." + }, + { + "inputJson": "{\"metricsData\":{\"cpuUsage\":75,\"memoryUsage\":90,\"responseTime\":350},\"eventLogs\":[{\"timestamp\":\"2024-04-26T15:00:00Z\",\"message\":\"Error: high latency\"}],\"timeRange\":{\"start\":\"2024-04-26T10:00:00Z\",\"end\":\"2024-04-26T16:00:00Z\"},\"includeAnomalies\":true,\"summaryLength\":300,\"outputFormat\":\"markdown\"}", + "description": "Generate a detailed markdown summary report for a 6-hour window highlighting performance spikes and errors." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "monitoring.downloadTable", + "description": "Downloads monitoring data presented as tables from specified system or application metrics. Accepts input parameters defining the data source, time range, and format, and processes retrieval and conversion to produce a tabular dataset output in CSV or JSON format for further analysis or reporting.", + "category": "monitoring", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "Identifier or URL of the monitoring system or data endpoint to fetch the table from.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name or identifier of the specific table or dataset to download within the monitoring system.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted datetime string indicating the start of the data retrieval period.", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted datetime string indicating the end of the data retrieval period.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the downloaded table data, supports 'csv' or 'json'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional key-value pairs for filtering rows or columns in the table based on specific criteria.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the requested table data as a string in the requested format along with metadata such as column headers and row count." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when they need to programmatically retrieve tabular monitoring data from a specified source over a defined time range, to analyze system or application performance metrics, generate reports, or feed downstream analytics pipelines.", + "limitations": "This tool cannot perform data aggregation or transformation beyond basic filtering; it also depends on the availability and permissions of the underlying monitoring system's data source.", + "examples": [ + "Download CPU usage table from system monitoring API for last 24 hours in JSON format", + "Retrieve error logs table from application monitoring for a specific time window filtered by error severity", + "Fetch memory consumption metrics table as CSV from a remote monitoring endpoint" + ] + }, + "tags": [ + "monitoring", + "download", + "table", + "metrics", + "performance", + "data export" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"https://monitoring.example.com/api\",\"tableName\":\"cpu_usage\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-02T00:00:00Z\",\"format\":\"json\"}", + "description": "Download CPU usage table in JSON format for 24-hour period from the monitoring API" + }, + { + "inputJson": "{\"dataSource\":\"app-monitor.local\",\"tableName\":\"error_logs\",\"format\":\"csv\",\"filterCriteria\":{\"severity\":\"critical\"}}", + "description": "Retrieve critical error logs as CSV from local application monitoring system" + }, + { + "inputJson": "{\"dataSource\":\"https://metrics.company.com\",\"tableName\":\"memory_stats\",\"startTime\":\"2024-06-10T08:00:00Z\",\"endTime\":\"2024-06-10T10:00:00Z\"}", + "description": "Fetch memory statistics table in default CSV format for a 2-hour window from corporate metrics service" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "monitoring.uploadTable", + "description": "Uploads a structured data table containing monitoring metrics or logs to a performance monitoring system. Accepts table data in JSON or CSV format along with metadata, processes validation and formatting, then stores it for further analysis and visualization. Returns upload confirmation and record identifier.", + "category": "monitoring", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "The actual monitoring data table as a JSON string or CSV text to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data, either 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "sourceName", + "type": "string", + "description": "Identifier for the data source or system generating this monitoring table.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp representing when the data was collected or generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite existing data with the same source and timestamp, defaults to false to append.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of tags describing the data characteristics or environment.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing confirmation status, a unique data upload ID, and any validation warnings encountered." + }, + "aiAgent": { + "useCase": "Use this tool when you have a structured table of performance monitoring or log data that needs to be ingested into a monitoring system for storage and later analysis. Suitable for metrics, logs, or event tables collected from applications or infrastructure.", + "limitations": "This tool only uploads and stores the data; it does not analyze or visualize data itself. Input data must be correctly formatted as JSON or CSV tables. It does not connect automatically to all monitoring backends without configuration.", + "examples": [ + "Upload a JSON array of CPU usage metrics collected every minute for a server.", + "Send a CSV file of application log entries with timestamps and severity levels.", + "Append new monitoring records to an existing dataset for a network device with overwrite disabled." + ] + }, + "tags": [ + "monitoring", + "upload", + "table", + "metrics", + "logs", + "performance", + "data ingestion" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"[{\\\"metric\\\":\\\"cpu_usage\\\",\\\"value\\\":75,\\\"timestamp\\\":\\\"2024-06-01T12:00:00Z\\\"}]\",\"dataFormat\":\"json\",\"sourceName\":\"server1\",\"timestamp\":\"2024-06-01T12:00:00Z\",\"overwriteExisting\":false,\"tags\":[\"cpu\",\"usage\"]}", + "description": "Upload CPU usage metrics in JSON format for server1 at a specific timestamp." + }, + { + "inputJson": "{\"tableData\":\"timestamp,severity,message\\n2024-06-01T12:00:00Z,info,Service started\\n2024-06-01T12:05:00Z,error,Connection failed\",\"dataFormat\":\"csv\",\"sourceName\":\"app_log\",\"overwriteExisting\":false,\"tags\":[\"logs\",\"app\"]}", + "description": "Upload application log entries in CSV format with timestamps and severity levels." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "monitoring.renderSentence", + "description": "This tool accepts monitoring data and a template sentence containing placeholders, then renders a clear, human-readable sentence by filling placeholders with real-time metrics or status values. It helps in generating descriptive summaries or alerts from system/application monitoring inputs.", + "category": "monitoring", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "A sentence template containing placeholders to be replaced with monitoring data values (e.g., 'CPU usage is {cpuUsage}%').", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "object", + "description": "An object containing key-value pairs of monitoring metrics to fill into the template placeholders.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "Optional ISO 8601 timestamp associated with the monitoring data, to include time context in the sentence.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeUnits", + "type": "boolean", + "description": "Whether to append units to numeric values when rendering, if units are specified separately in metrics.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object with a single property 'sentence' which is the fully rendered human-readable monitoring sentence string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate natural language sentences or alerts based on raw monitoring metrics or events. Especially useful for summarizing system or application status in readable form for reports, dashboards, or notifications.", + "limitations": "This tool does not analyze or interpret data trends or anomalies; it simply substitutes values into templates. Complex logic or conditional phrasing is outside its scope and should be handled externally.", + "examples": [ + "Render a sentence from a template about CPU and memory usage.", + "Generate a real-time status update sentence for system monitoring.", + "Create alert descriptions from dynamic monitoring data." + ] + }, + "tags": [ + "monitoring", + "rendering", + "reporting", + "alerts", + "status", + "humanReadable" + ], + "examples": [ + { + "inputJson": "{\"template\":\"At {timestamp}, CPU usage is {cpuUsage}% and memory usage is {memoryUsage}MB.\",\"metrics\":{\"cpuUsage\":75,\"memoryUsage\":2048},\"timestamp\":\"2024-06-01T14:20:00Z\",\"includeUnits\":true}", + "description": "Render a status sentence with CPU and memory usage including a timestamp." + }, + { + "inputJson": "{\"template\":\"System status: {status}. Load average: {loadAvg}.\",\"metrics\":{\"status\":\"healthy\",\"loadAvg\":0.45},\"timestamp\":\"\",\"includeUnits\":false}", + "description": "Render a simple system status sentence without units or timestamp." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "monitoring.formatLink", + "description": "This tool accepts a raw URL or link related to system or application monitoring dashboards, logs, or reports. It validates and formats the link according to standard URL encoding rules, optionally appending tracking parameters or formatting for embedding in monitoring tools. The output is a clean, safe-to-use URL string optimized for presentation or automation.", + "category": "monitoring", + "parameters": [ + { + "name": "rawLink", + "type": "string", + "description": "The unformatted or raw URL/link input to validate and format for monitoring use cases.", + "required": true, + "defaultValue": "" + }, + { + "name": "appendTrackingParams", + "type": "boolean", + "description": "Whether to append standard tracking parameters to the URL for analytics purposes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "trackingParams", + "type": "object", + "description": "Key-value pairs of tracking parameters to append if appendTrackingParams is true.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "embedFormat", + "type": "string", + "description": "Optional format style for embedding the link, e.g., 'iframe' or 'markdown'. Outputs URL wrapped accordingly.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formattedLink string, ready for insertion or use in monitoring contexts." + }, + "aiAgent": { + "useCase": "Use this tool when needing to normalize, validate, and optionally embed or enhance monitoring-related URLs for dashboards, alerts, or reports, ensuring safe and consistent formatting across systems.", + "limitations": "Does not fetch or validate the content behind the URL beyond syntax; does not generate monitoring links from raw data.", + "examples": [ + "Format a raw dashboard URL with tracking parameters for usage analytics.", + "Convert a monitoring log's raw link into an embeddable markdown link.", + "Validate and clean a URL before sending it via an alerting system." + ] + }, + "tags": [ + "monitoring", + "url", + "formatting", + "dashboard", + "link", + "validation", + "embedding" + ], + "examples": [ + { + "inputJson": "{\"rawLink\":\"http://monitoring.company.com/dashboard?id=123\",\"appendTrackingParams\":true,\"trackingParams\":{\"utm_source\":\"alert\",\"utm_medium\":\"email\"},\"embedFormat\":\"markdown\"}", + "description": "Format a dashboard link adding UTM tracking parameters and output as a markdown link." + }, + { + "inputJson": "{\"rawLink\":\"https://logs.example.net/view?log=error123\",\"appendTrackingParams\":false}", + "description": "Clean and validate a log viewer URL without adding tracking parameters." + }, + { + "inputJson": "{\"rawLink\":\"http://metrics.internal/system\",\"embedFormat\":\"iframe\"}", + "description": "Format a metrics system URL for embedding into an iframe tag." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "monitoring.draftSentence", + "description": "Generates a clear, concise monitoring status sentence based on input metrics and parameters. Accepts key performance indicators and context details, processes them to draft a human-readable sentence summarizing system or application health, alerts, or trends suitable for reports or dashboards.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "object", + "description": "Key-value pairs of monitoring metrics with their values (e.g., CPU usage, memory consumption).", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Context or system component the sentence refers to, such as a service name or environment.", + "required": false, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity descriptor (e.g., normal, warning, critical) that influences the tone and urgency of the sentence.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to append recommended actions or next steps based on the metrics and severity.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted monitoring sentence as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw monitoring data into a human-readable summary sentence that communicates system or application status clearly for reporting or alerting purposes. It is helpful in monitoring dashboards, status pages, or daily health reports.", + "limitations": "This tool does not replace detailed analytical reports or visual graphs, and may not handle complex multi-metric correlations beyond simple summary statements.", + "examples": [ + "Draft a sentence summarizing CPU at 90% and memory at 75% with a warning severity for the payment service.", + "Create a normal severity summary for average response time metrics without recommendations.", + "Generate a critical severity sentence including action recommendations for disk usage exceeding threshold on database server." + ] + }, + "tags": [ + "monitoring", + "summary", + "status-report", + "performance", + "alerting", + "sentence-generation" + ], + "examples": [ + { + "inputJson": "{\"metrics\":{\"cpuUsage\":\"90%\",\"memoryUsage\":\"75%\"},\"context\":\"payment service\",\"severityLevel\":\"warning\",\"includeRecommendations\":false}", + "description": "Summarize payment service CPU and memory metrics with warning severity without recommendations." + }, + { + "inputJson": "{\"metrics\":{\"responseTime\":\"120ms\"},\"context\":\"web API\",\"severityLevel\":\"normal\",\"includeRecommendations\":false}", + "description": "Generate a normal severity summary sentence for average response time of a web API without recommendations." + }, + { + "inputJson": "{\"metrics\":{\"diskUsage\":\"95%\"},\"context\":\"database server\",\"severityLevel\":\"critical\",\"includeRecommendations\":true}", + "description": "Create a critical severity sentence with recommended actions for database server disk usage." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "monitoring.formatQuery", + "description": "Formats and beautifies system monitoring query strings (e.g., PromQL, SQL for monitoring databases). Accepts raw query strings and outputs formatted, human-readable queries with indentation and line breaks for improved readability and maintainability.", + "category": "monitoring", + "parameters": [ + { + "name": "query", + "type": "string", + "description": "The raw query string to be formatted (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "queryLanguage", + "type": "string", + "description": "The language of the query, such as 'promql', 'sql' or 'influxql'. This guides the formatting rules (default: 'promql').", + "required": false, + "defaultValue": "promql" + }, + { + "name": "indentation", + "type": "string", + "description": "Indentation style to use, e.g., spaces or tabs (default: four spaces).", + "required": false, + "defaultValue": " " + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "Whether to convert query language keywords to uppercase (default: true).", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineBreakAfterClauses", + "type": "boolean", + "description": "Insert line breaks after major clauses or operators for better readability (default: true).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted query string with proper indentation and line breaks, as well as metadata about the formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives raw or minified monitoring query strings (like PromQL or SQL) and needs to present them in a readable, well-structured format for debugging, analysis, or documentation purposes. Useful for improving user experience and understanding of complex monitoring queries.", + "limitations": "This tool does not validate query correctness or semantic accuracy; it only formats the query string. It supports only common monitoring query languages and may not handle proprietary or uncommon syntax.", + "examples": [ + "Format a raw PromQL query to improve readability before displaying to a user.", + "Standardize SQL queries used in monitoring dashboards for consistent style.", + "Beautify InfluxQL queries before saving to configuration files." + ] + }, + "tags": [ + "monitoring", + "query", + "formatting", + "promql", + "sql", + "influxql", + "readability", + "debugging" + ], + "examples": [ + { + "inputJson": "{\"query\":\"sum(rate(http_requests_total[5m]))by(status_code)\",\"queryLanguage\":\"promql\",\"indentation\":\" \",\"uppercaseKeywords\":true,\"lineBreakAfterClauses\":true}", + "description": "Formats a PromQL query with 2 spaces indentation and uppercase keywords." + }, + { + "inputJson": "{\"query\":\"select mean(usage_idle) from cpu where time > now() - 1h group by time(10m) fill(null)\",\"queryLanguage\":\"influxql\",\"indentation\":\" \",\"uppercaseKeywords\":false,\"lineBreakAfterClauses\":true}", + "description": "Formats an InfluxQL query preserving lowercase keywords, with 4 spaces indentation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "monitoring.formatComponent", + "description": "Formats monitoring data for a specified software component into a standardized JSON report. Accepts component metrics including CPU, memory usage, and custom tags; processes these inputs to produce a structured, human-readable summary suitable for dashboards or logs.", + "category": "monitoring", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "Name of the software component to format metrics for", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "object", + "description": "An object containing key-value pairs of component metrics such as CPU and memory usage", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp representing when metrics were collected", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTags", + "type": "boolean", + "description": "Whether to include custom tags in the formatted output", + "required": false, + "defaultValue": "true" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags associated with the component, used only if includeTags is true", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A well-structured JSON object containing the formatted component report with metrics, timestamp, and optional tags." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw monitoring metrics from various software components into a consistent JSON format for visualization, logging, or alerting systems. It helps standardize disparate metrics for system health assessment.", + "limitations": "Does not collect metrics itself or perform real-time monitoring; it only formats provided data. It expects valid metric keys and values and will not validate metric correctness or ranges.", + "examples": [ + "Format given CPU and memory usage metrics of a database service for dashboard display.", + "Include custom tags for a web server component in the formatted output.", + "Format a batch of metrics with a specific collection timestamp for audit logs." + ] + }, + "tags": [ + "monitoring", + "formatting", + "component", + "metrics", + "reporting", + "JSON" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"web-server\",\"metrics\":{\"cpuPercent\":75.5,\"memoryMB\":2048},\"timestamp\":\"2024-04-15T12:00:00Z\",\"includeTags\":true,\"tags\":[\"production\",\"frontend\"]}", + "description": "Format current CPU and memory metrics of a web-server component including production and frontend tags." + }, + { + "inputJson": "{\"componentName\":\"database\",\"metrics\":{\"cpuPercent\":60,\"memoryMB\":4096},\"includeTags\":false}", + "description": "Format database component metrics without including any custom tags." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "monitoring.composeArticle", + "description": "Generates a well-structured article summarizing system or application performance monitoring data. It accepts monitoring metrics and events as input, analyzes trends and anomalies, and produces a coherent narrative article highlighting key insights, trends, and recommendations for stakeholders.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringData", + "type": "object", + "description": "Structured monitoring data including metrics, logs, and events to analyze for the article.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "string", + "description": "Time range for the analysis period in ISO 8601 format or relative string (e.g., 'last 24h').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience type for the article to tailor language and technical depth (e.g., 'technical', 'management').", + "required": false, + "defaultValue": "technical" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations based on the monitoring data analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "articleTitle", + "type": "string", + "description": "Custom title for the composed article; if empty, a suitable title will be autogenerated.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language in which to produce the article, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the article title, composed body text, summary highlights, and optional recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create clear, professional articles from raw monitoring data to communicate system performance to stakeholders or teams. It is ideal for automating report generation from complex metric sets, highlighting trends and anomalies with narrative explanations.", + "limitations": "Cannot fetch monitoring data by itself; requires structured input data. May not replace domain expert human analysis for highly critical or complex root cause reports.", + "examples": [ + "Compose an article summarizing the last 24 hours of CPU and memory usage for the ops team.", + "Generate a management brief article highlighting key performance insights from the last week of app monitoring.", + "Create a technical report article from real-time event logs for an engineering review." + ] + }, + "tags": [ + "monitoring", + "reporting", + "article composition", + "performance analysis", + "system metrics", + "automation" + ], + "examples": [ + { + "inputJson": "{\"monitoringData\":{\"cpuUsage\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"value\":45},{\"timestamp\":\"2024-05-01T01:00:00Z\",\"value\":70}],\"memoryUsage\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"value\":60},{\"timestamp\":\"2024-05-01T01:00:00Z\",\"value\":65}]},\"timeRange\":\"2024-05-01T00:00:00Z/2024-05-02T00:00:00Z\",\"targetAudience\":\"technical\",\"includeRecommendations\":true,\"articleTitle\":\"System Performance Report - May 1st\"}", + "description": "Generate a technical article summarizing CPU and memory usage over one day, including recommendations." + }, + { + "inputJson": "{\"monitoringData\":{\"errorRates\":[{\"timestamp\":\"2024-04-25T00:00:00Z\",\"value\":0.01},{\"timestamp\":\"2024-05-01T00:00:00Z\",\"value\":0.05}]},\"timeRange\":\"last 7 days\",\"targetAudience\":\"management\",\"includeRecommendations\":false,\"language\":\"en\"}", + "description": "Create a management-oriented article that highlights error rate trends over the last week without recommendations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "monitoring.composeLink", + "description": "This tool composes a shareable URL link to a monitoring dashboard or specific performance metric view. It accepts parameters identifying the target system, metrics, time range, and optional filters, then generates a fully constructed link for sharing or embedding in reports or alerts.", + "category": "monitoring", + "parameters": [ + { + "name": "targetSystemId", + "type": "string", + "description": "Identifier of the system or application to monitor (e.g., server ID or app name).", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names to include in the dashboard view (e.g., ['cpuUsage', 'memory']).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying start and end timestamps or relative period for the view (e.g., {\"from\":\"2024-04-15T10:00:00Z\",\"to\":\"2024-04-15T11:00:00Z\"}).", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to narrow data scope, like hostnames or environment tags (e.g., {\"environment\":\"production\"}).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeAnnotations", + "type": "boolean", + "description": "Whether to include annotations or alerts on the link view if available.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated URL link string that leads to the composed monitoring view for sharing or embedding." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when composing human-friendly links to monitoring dashboards tailored to specific metrics and time frames. This is useful for generating URLs to share with team members or include in automated alerts or reports, enabling quick access to relevant monitored information.", + "limitations": "This tool does not generate actual dashboard content but only creates links to existing monitoring views. It relies on the monitoring system's URL schema and valid identifiers; it cannot validate metric data or user permissions.", + "examples": [ + "Generate a shareable link to CPU and memory usage for server 'srv-01' over the last hour.", + "Create a dashboard link filtered to the production environment showing error rates and response times.", + "Compose a link including annotations for a given time range focusing on database performance metrics." + ] + }, + "tags": [ + "monitoring", + "link", + "dashboard", + "performance", + "sharing", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"targetSystemId\":\"srv-01\",\"metrics\":[\"cpuUsage\",\"memory\"],\"timeRange\":{\"from\":\"2024-06-01T10:00:00Z\",\"to\":\"2024-06-01T11:00:00Z\"}}", + "description": "Compose a dashboard link showing CPU and memory metrics for server 'srv-01' from 10 AM to 11 AM UTC on June 1, 2024." + }, + { + "inputJson": "{\"targetSystemId\":\"app-frontend\",\"metrics\":[\"errorRate\",\"responseTime\"],\"timeRange\":{\"from\":\"-1h\"},\"filters\":{\"environment\":\"production\"},\"includeAnnotations\":true}", + "description": "Generate a link to the production environment's front-end app dashboard with error rate and response time metrics for the last one hour, including annotations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "monitoring.draftSummary", + "description": "Generates a concise summary report from provided system or application monitoring data. Accepts raw metrics or logs as input along with optional filters and time ranges, processes the data to highlight key performance indicators, anomalies, and trends, then outputs a human-readable summary formatted as plain text or markdown.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringData", + "type": "array", + "description": "Array of monitoring records including metrics and logs to analyze for the summary. Each record should contain a timestamp and relevant performance data.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp indicating the start of the time range to include in the summary. If omitted, analysis starts from the earliest record.", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp indicating the end of the time range to include in the summary. If omitted, analysis includes up to the latest record.", + "required": false, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters specifying criteria to include or exclude data points (e.g., filter by specific hosts, services, or error levels).", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the summary output. Supported options are 'plaintext' or 'markdown'. Defaults to 'plaintext'.", + "required": false, + "defaultValue": "plaintext" + }, + { + "name": "includeAnomalies", + "type": "boolean", + "description": "If true, the summary will highlight detected anomalies or unusual patterns in the monitoring data. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary report as a string in the requested format, and metadata such as summary generation timestamp and included time range." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a human-readable summary of in-depth monitoring data for system or application performance, to quickly inform stakeholders or assist in diagnostics. It is ideal for summarizing complex logs and metrics into actionable insights.", + "limitations": "This tool does not provide raw data visualization or perform deep root cause analysis beyond highlighting anomalies. It depends on the quality and structure of the input monitoring data and may not interpret unstructured logs properly.", + "examples": [ + "Generate a markdown summary of CPU and memory metrics between two timestamps highlighting any anomalies.", + "Summarize all error logs for a specific service over the last day in plaintext without anomaly highlights.", + "Create a summary report filtering only data from a particular host in the monitoring dataset." + ] + }, + "tags": [ + "monitoring", + "summary", + "performance", + "reporting", + "anomaly-detection", + "logs", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"monitoringData\":[{\"timestamp\":\"2024-06-01T10:00:00Z\",\"host\":\"server1\",\"cpuUsage\":75,\"memoryUsage\":65,\"errorCount\":2},{\"timestamp\":\"2024-06-01T10:05:00Z\",\"host\":\"server1\",\"cpuUsage\":80,\"memoryUsage\":70,\"errorCount\":3}],\"startTime\":\"2024-06-01T10:00:00Z\",\"endTime\":\"2024-06-01T10:10:00Z\",\"outputFormat\":\"markdown\",\"includeAnomalies\":true}", + "description": "Summarize CPU, memory, and error count metrics from server1 over a 10 minute window with anomalies highlighted in markdown." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "monitoring.draftParagraph", + "description": "Generates a clear, concise explanatory paragraph summarizing system or application performance monitoring data based on provided metrics and alerts. Accepts structured monitoring input and crafts a readable narrative outlining system health, recent anomalies, and trends.", + "category": "monitoring", + "parameters": [ + { + "name": "metricsSummary", + "type": "object", + "description": "Structured summary of key performance metrics with names and values, such as CPU usage, memory utilization, or response times.", + "required": true, + "defaultValue": "" + }, + { + "name": "alerts", + "type": "array", + "description": "List of active or recent alert objects including severity, description, and timestamp to highlight critical incidents.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeframe", + "type": "string", + "description": "Time period covered by the monitoring data, e.g., 'last 24 hours', 'past week'. Helps contextualize the paragraph.", + "required": false, + "defaultValue": "last 24 hours" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to append actionable recommendations or next steps based on the monitoring data trends and alerts.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'paragraph' providing a multi-sentence narrative summarizing monitoring insights for human readers, suitable for reports or dashboards." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents tasked with generating human-readable summary paragraphs from complex monitoring data, making system health and performance understandable to non-technical stakeholders or for inclusion in automated status reports. It transforms raw metrics and alerts into concise narratives emphasizing key issues and trends.", + "limitations": "Cannot analyze raw logs or unstructured data; depends on structured metric and alert inputs. Does not generate visualizations or interpret deep root causes beyond provided data.", + "examples": [ + "Create a summary paragraph describing today's server performance metrics and any critical alerts.", + "Draft a monitoring paragraph covering last week’s application errors and resource usage with recommendations.", + "Summarize the current database cluster health based on recent latency and error rate metrics." + ] + }, + "tags": [ + "monitoring", + "performance", + "reporting", + "summary", + "automatedNarrative", + "metrics", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"metricsSummary\":{\"cpuUsage\":\"75%\",\"memoryUsage\":\"68%\",\"responseTimeMs\":120},\"alerts\":[{\"severity\":\"critical\",\"description\":\"Database connection timeout detected\",\"timestamp\":\"2024-06-05T14:30:00Z\"}],\"timeframe\":\"last 24 hours\",\"includeRecommendations\":true}", + "description": "Summary paragraph with key metrics and a critical alert for the past day including recommendations." + }, + { + "inputJson": "{\"metricsSummary\":{\"errorRate\":\"0.02%\",\"requestCount\":15000},\"alerts\":[],\"timeframe\":\"past week\",\"includeRecommendations\":false}", + "description": "Monitoring summary paragraph for error rates and traffic over a week without recommendations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "monitoring.composeComment", + "description": "Generates a clear, context-aware comment based on monitoring alert details, system state, and user inputs. Accepts alert metadata, current system metrics, and optional user notes, then composes a concise comment suitable for logging or team communication. Produces a formatted text comment summarizing the monitoring event.", + "category": "monitoring", + "parameters": [ + { + "name": "alertType", + "type": "string", + "description": "Type of monitoring alert (e.g., 'CPU', 'Memory', 'Disk')", + "required": true, + "defaultValue": "" + }, + { + "name": "alertSeverity", + "type": "string", + "description": "Severity level of the alert (e.g., 'Critical', 'Warning')", + "required": true, + "defaultValue": "" + }, + { + "name": "alertDescription", + "type": "string", + "description": "Detailed description of the alert event", + "required": true, + "defaultValue": "" + }, + { + "name": "systemStatus", + "type": "object", + "description": "Current key system metrics and status as key-value pairs", + "required": false, + "defaultValue": "{}" + }, + { + "name": "userNotes", + "type": "string", + "description": "Optional additional notes or instructions provided by the user", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "The ISO 8601 timestamp of when the alert was generated", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed comment text and metadata, including the timestamp and severity." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate informative and professional comments for monitoring alerts that combine alert details, system status, and user notes. It helps create consistent, clear communication for logs, dashboards, or automated reports.", + "limitations": "This tool does not analyze raw monitoring data to detect anomalies; it only composes comments from provided alert information. It does not replace automated incident classification or resolution steps.", + "examples": [ + "Compose a comment for a critical CPU utilization alert including current CPU load and user notes.", + "Generate a comment for a warning-level disk space alert with a brief description of the issue and system disk usage.", + "Create a log comment for a memory usage alert with details and the time it occurred." + ] + }, + "tags": [ + "monitoring", + "comment", + "alert", + "logging", + "system-status" + ], + "examples": [ + { + "inputJson": "{\"alertType\":\"CPU\",\"alertSeverity\":\"Critical\",\"alertDescription\":\"CPU utilization exceeded 95% for over 10 minutes.\",\"systemStatus\":{\"cpuLoad\":\"96%\",\"processes\":\"High intensive workloads detected\"},\"userNotes\":\"Investigate possible runaway process.\",\"timestamp\":\"2024-06-01T13:45:00Z\"}", + "description": "Compose a comment for a critical CPU utilization alert including current CPU load and user notes." + }, + { + "inputJson": "{\"alertType\":\"Disk\",\"alertSeverity\":\"Warning\",\"alertDescription\":\"Disk space on /var partition below 15%.\",\"systemStatus\":{\"diskUsage\":\"85% used\"},\"userNotes\":\"Schedule cleanup.\",\"timestamp\":\"2024-06-01T14:00:00Z\"}", + "description": "Generate a comment for a warning disk space alert with description and usage metrics." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "monitoring.buildPackage", + "description": "Builds a monitoring agent package by combining specified monitoring scripts, configuration files, and dependencies into a deployable archive. Accepts input parameters for package name, target platform, included monitors, and output path. Processes source files and configurations to produce a versioned package ready for deployment in monitoring environments.", + "category": "monitoring", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "Name of the output monitoring package to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "The platform or operating system for which the package is built (e.g., linux, windows).", + "required": true, + "defaultValue": "" + }, + { + "name": "includedMonitors", + "type": "array", + "description": "List of monitoring modules or scripts to include in the package.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version label to tag the built package, following semantic versioning.", + "required": false, + "defaultValue": "1.0.0" + }, + { + "name": "configFiles", + "type": "array", + "description": "List of configuration file paths or objects to include in the package.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputDirectory", + "type": "string", + "description": "Filesystem path where the built package archive will be saved.", + "required": false, + "defaultValue": "./dist" + }, + { + "name": "compress", + "type": "boolean", + "description": "Flag indicating whether to compress the package output (e.g., zip or tar.gz).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Result object containing the full path to the built package archive and build metadata such as package name, version, and included modules." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the assembly of customized monitoring agents or packages from modular scripts and configurations for deployment on specific platforms. It helps produce ready-to-deploy archives conforming to requested parameters without manual packaging steps.", + "limitations": "This tool does not perform runtime testing or validation of the monitoring scripts' effectiveness. It also cannot dynamically generate monitoring scripts but only packages provided inputs.", + "examples": [ + "Build a monitoring package named 'serverMonitor' for Linux including cpu, memory monitors, version 2.1.0, save output to '/builds'.", + "Create a Windows compatible monitoring package with disk and network monitors, default version, no compression, output to './packages'." + ] + }, + "tags": [ + "monitoring", + "build", + "packaging", + "deployment", + "automation", + "devops" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"serverMonitor\",\"targetPlatform\":\"linux\",\"includedMonitors\":[\"cpu\",\"memory\"],\"version\":\"2.1.0\",\"configFiles\":[\"/configs/cpu.conf\",\"/configs/memory.conf\"],\"outputDirectory\":\"/builds\",\"compress\":true}", + "description": "Build a Linux monitoring package named 'serverMonitor' including CPU and memory monitors with specific configs and compression enabled." + }, + { + "inputJson": "{\"packageName\":\"winNetMonitor\",\"targetPlatform\":\"windows\",\"includedMonitors\":[\"disk\",\"network\"],\"version\":\"1.0.0\",\"configFiles\":[],\"outputDirectory\":\"./packages\",\"compress\":false}", + "description": "Build a Windows monitoring package for disk and network modules without compression, using default version and output path." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "monitoring.generateGraph", + "description": "Generates visual performance graphs from monitoring data. Accepts inputs like time series metrics, selected graph type (line, bar, pie), time range, and customization options. Processes data to create SVG or PNG graphs reflecting system or application performance trends for easy analysis and reporting.", + "category": "monitoring", + "parameters": [ + { + "name": "metricsData", + "type": "array", + "description": "Array of metric data points where each point includes timestamp and value objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate (e.g., 'line', 'bar', 'pie').", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "Start time for the graph data range in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End time for the graph data range in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Custom title for the graph.", + "required": false, + "defaultValue": "\"Performance Graph\"" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output graph in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output graph in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, supported: 'svg', 'png'.", + "required": false, + "defaultValue": "\"svg\"" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme for the graph (e.g., 'default', 'dark', 'colorblind').", + "required": false, + "defaultValue": "\"default\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated graph as a base64-encoded string and metadata such as format and size." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visualize and analyze performance metrics from monitoring systems, such as CPU load, memory usage, or request latency, to identify trends or issues over a specified time range. This aids in creating reports or dashboards with graphical representations.", + "limitations": "Does not directly collect or fetch monitoring data; input data must be preprocessed and formatted appropriately. Limited to standard graph types and simple customization options; not suitable for complex interactive or real-time graphs.", + "examples": [ + "Generate a line graph of CPU usage over the past 24 hours in SVG format.", + "Create a bar graph for multiple service response times between two timestamps.", + "Produce a pie chart showing percentage distribution of error types for a specified period." + ] + }, + "tags": [ + "monitoring", + "graph generation", + "performance visualization", + "system metrics", + "time series", + "data visualization" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"value\":0.65},{\"timestamp\":\"2024-04-01T01:00:00Z\",\"value\":0.7}],\"graphType\":\"line\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-02T00:00:00Z\",\"title\":\"CPU Usage\",\"width\":800,\"height\":400,\"outputFormat\":\"svg\",\"colorScheme\":\"default\"}", + "description": "Generate a line graph showing CPU usage over one day in SVG format." + }, + { + "inputJson": "{\"metricsData\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"value\":100},{\"timestamp\":\"2024-04-01T01:00:00Z\",\"value\":150}],\"graphType\":\"bar\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-01T02:00:00Z\",\"title\":\"Request Count\",\"outputFormat\":\"png\"}", + "description": "Create a bar graph illustrating request counts over two hours, output as PNG." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "monitoring.buildSchema", + "description": "Generates a structured monitoring schema definition based on input metrics, log patterns, and alert configurations. Accepts arrays of metric descriptors, log patterns, and alert rules, then processes them to produce a comprehensive JSON schema used for monitoring system configuration and validation.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of metric definitions including name, type, unit, and description, to include in the monitoring schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "logPatterns", + "type": "array", + "description": "Array of log pattern objects defining regex or string patterns to capture relevant log entries for monitoring.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "alertRules", + "type": "array", + "description": "Set of alert rule objects specifying conditions and thresholds for triggering alerts based on metrics or logs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "schemaName", + "type": "string", + "description": "Custom name identifier for the generated monitoring schema.", + "required": false, + "defaultValue": "\"defaultMonitoringSchema\"" + }, + { + "name": "includeDocumentation", + "type": "boolean", + "description": "Flag to indicate whether to include descriptive documentation strings in the schema output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the monitoring schema, including metric definitions, log patterns, alert rules, and optional documentation, ready to be used for system monitoring configuration and validation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate or update a monitoring configuration schema based on defined metrics, logs, and alerts for a system or application. It helps standardize monitoring inputs and facilitates validation and deployment of monitoring policies.", + "limitations": "Does not generate executable monitoring code or dashboards; only produces the schema definition. It cannot predict optimal alert thresholds or dynamic logging patterns without user input.", + "examples": [ + "Generate a monitoring schema with CPU and memory metrics plus CPU spike alert rules.", + "Build schema including error log patterns for a web server and alerts for log error rates.", + "Create a minimal monitoring schema defining only basic system health metrics." + ] + }, + "tags": [ + "monitoring", + "schema", + "configuration", + "metrics", + "alerts", + "logs" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[{\"name\":\"cpuUsage\",\"type\":\"percentage\",\"unit\":\"%\",\"description\":\"CPU utilization percentage\"},{\"name\":\"memoryUsage\",\"type\":\"integer\",\"unit\":\"MB\",\"description\":\"Memory usage in megabytes\"}],\"logPatterns\":[{\"pattern\":\"ERROR.*\",\"description\":\"Captures error log entries\"}],\"alertRules\":[{\"name\":\"HighCpuAlert\",\"metric\":\"cpuUsage\",\"threshold\":90,\"operator\":\">=\",\"severity\":\"critical\"}],\"schemaName\":\"systemHealthSchema\",\"includeDocumentation\":true}", + "description": "Build a system health monitoring schema including CPU and memory metrics, error log pattern, and a high CPU usage alert." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "monitoring.generateAnomaly", + "description": "This tool analyzes time-series monitoring data from system or application metrics to detect anomalies. It accepts metric data and configuration about the detection sensitivity, processes the data using statistical or machine learning techniques, and outputs detected anomaly events with timestamps, severity, and context details.", + "category": "monitoring", + "parameters": [ + { + "name": "metricData", + "type": "array", + "description": "An array of objects representing the time-series metric data points, each with timestamp and value fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "sensitivity", + "type": "number", + "description": "A value between 0 and 1 adjusting the sensitivity of anomaly detection, where higher values detect more anomalies.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "The size of the rolling time window (in minutes) used for anomaly detection calculations.", + "required": false, + "defaultValue": "60" + }, + { + "name": "minAnomalyDurationMinutes", + "type": "number", + "description": "Minimum duration in minutes for an anomaly event to be reported.", + "required": false, + "defaultValue": "5" + }, + { + "name": "metricName", + "type": "string", + "description": "Name of the monitored metric for labeling anomaly events.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "If true, the output includes additional context such as moving averages and thresholds around anomalies.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a list of anomaly events, each with start and end timestamps, severity score, and optional contextual data depending on parameters." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring system or application performance metrics to automatically identify unusual behavior patterns such as spikes, drops, or sustained deviations that could indicate errors, faults, or attacks. It helps in proactively alerting and diagnosing operational issues.", + "limitations": "This tool analyzes only numerical time-series metric data; it does not analyze logs or non-metric data. It may produce false positives in highly volatile metrics or under sudden normal load changes.", + "examples": [ + "Detect anomalies in CPU utilization metric data over the last 24 hours with moderate sensitivity.", + "Identify sustained drops in response time metrics to investigate deployment impacts.", + "Generate anomalies for disk I/O metrics with high sensitivity and include contextual moving averages in the output." + ] + }, + "tags": [ + "monitoring", + "anomaly detection", + "time-series", + "performance", + "metrics", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"metricData\":[{\"timestamp\":\"2024-04-27T10:00:00Z\",\"value\":25},{\"timestamp\":\"2024-04-27T10:01:00Z\",\"value\":28},{\"timestamp\":\"2024-04-27T10:02:00Z\",\"value\":80},{\"timestamp\":\"2024-04-27T10:03:00Z\",\"value\":82},{\"timestamp\":\"2024-04-27T10:04:00Z\",\"value\":27}],\"sensitivity\":0.8,\"timeWindowMinutes\":5,\"minAnomalyDurationMinutes\":1,\"metricName\":\"cpu_utilization\",\"includeContext\":true}", + "description": "Detect anomalies in CPU utilization data with higher sensitivity over a 5-minute window, including context details." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "monitoring.generateQuote", + "description": "Generates a motivational or reflective quote relevant to system and application monitoring scenarios. It accepts parameters defining the monitoring domain and desired tone, then returns a customized quote to inspire or inform monitoring team members or reports.", + "category": "monitoring", + "parameters": [ + { + "name": "domain", + "type": "string", + "description": "The focus area of monitoring, such as 'system', 'application', 'network', or 'database'. Helps tailor the quote context.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or mood of the quote, e.g., 'motivational', 'reflective', 'technical', or 'casual'. Defines style of generated quote.", + "required": false, + "defaultValue": "motivational" + }, + { + "name": "includeAuthor", + "type": "boolean", + "description": "Whether to include a famous author attribution or signature in the quote for added impact.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text and optional author attribution." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide a relevant, context-sensitive inspirational or thought-provoking quote pertaining to monitoring activities, such as in reports, dashboards, or team communications to foster engagement and motivation.", + "limitations": "Cannot generate quotes with precise domain-specific technical advice or real-time operational data; it generates general-purpose quotes related to monitoring themes.", + "examples": [ + "Generate a motivational quote for system monitoring.", + "Create a reflective networking monitoring quote without author attribution.", + "Provide a technical tone quote about application monitoring." + ] + }, + "tags": [ + "monitoring", + "quote", + "motivation", + "inspiration", + "system", + "application" + ], + "examples": [ + { + "inputJson": "{\"domain\":\"system\",\"tone\":\"motivational\",\"includeAuthor\":true}", + "description": "Generate a motivational quote focused on system monitoring including author attribution." + }, + { + "inputJson": "{\"domain\":\"network\",\"tone\":\"reflective\",\"includeAuthor\":false}", + "description": "Create a reflective quote for network monitoring without author attribution." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "monitoring.generateMarkdown", + "description": "Generates a comprehensive Markdown report from system monitoring data including metrics such as CPU usage, memory consumption, disk IO, and network statistics. Takes structured monitoring data as input and outputs a formatted Markdown string summarizing performance insights visually with tables and optional charts URLs.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringData", + "type": "object", + "description": "Structured monitoring data including time series metrics and metadata required to generate the report", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title for the generated Markdown report", + "required": false, + "defaultValue": "\"System Monitoring Report\"" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include URLs linking to performance charts in the Markdown output", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeRange", + "type": "string", + "description": "The time range covered by the report, e.g. 'Last 24 hours' or '2024-05-01 to 2024-05-07'", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "highlightThresholds", + "type": "object", + "description": "Optional thresholds for metrics to highlight critical or warning states (e.g., {cpuUsage: 90, memoryUsage: 80})", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a single Markdown string field 'markdownReport' with the complete formatted monitoring summary" + }, + "aiAgent": { + "useCase": "Use this tool when needing to present system or application monitoring data in a human-readable Markdown format for status pages, emails, or documentation. It is helpful for summarizing complex metric data into clear textual reports with optional visual references.", + "limitations": "This tool does not generate visual charts or graphs itself, only links or placeholders. Data must be preprocessed into structured format; it cannot extract raw logs or metrics from data sources.", + "examples": [ + "Generate a daily performance summary Markdown report from collected CPU, memory, and network metrics.", + "Create a Markdown report highlighting CPU usage over a threshold with chart URLs for a weekly server health report.", + "Summarize monitoring data for inclusion in a system status email with a customized title and time range." + ] + }, + "tags": [ + "monitoring", + "reporting", + "markdown", + "performance", + "metrics", + "system", + "automation" + ], + "examples": [ + { + "inputJson": "{\"monitoringData\":{\"cpuUsage\":[{\"time\":\"2024-06-01T00:00Z\",\"value\":55},{\"time\":\"2024-06-01T01:00Z\",\"value\":70}],\"memoryUsage\":[{\"time\":\"2024-06-01T00:00Z\",\"value\":65},{\"time\":\"2024-06-01T01:00Z\",\"value\":75}]},\"reportTitle\":\"Daily System Metrics\",\"includeCharts\":true,\"timeRange\":\"2024-06-01\",\"highlightThresholds\":{\"cpuUsage\":80}}", + "description": "Generate a markdown report for one day of CPU and memory usage data with charts and highlight CPU over 80%." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "monitoring.generateYAML", + "description": "Generates a YAML configuration file for system or application monitoring based on provided parameters including metrics, alerts, and data sources. Accepts structured input describing monitoring requirements and outputs a ready-to-use YAML formatted config file for popular monitoring tools.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of metric names and properties to monitor (e.g., CPU usage, memory). Each metric is an object with metricName and threshold.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertsEnabled", + "type": "boolean", + "description": "Flag to include alerting rules in the generated YAML configuration.", + "required": false, + "defaultValue": "true" + }, + { + "name": "alertChannels", + "type": "array", + "description": "List of alert notification channels such as email or Slack to include in alerting rules.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source endpoints or collectors the configuration should include for metric collection.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFileName", + "type": "string", + "description": "Optional filename to suggest for the generated YAML config file, if saving to disk.", + "required": false, + "defaultValue": "monitoring-config.yaml" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated YAML configuration as a string under the key 'yamlConfig'." + }, + "aiAgent": { + "useCase": "Use this tool to create customized YAML configuration files for monitoring systems like Prometheus or other tools that utilize YAML for defining monitoring metrics, data sources, and alerts. It simplifies generating standardized configs from structured input, aiding in automated or large-scale monitoring setups.", + "limitations": "This tool does not validate if the generated YAML is syntactically perfect for all monitoring tools, nor does it deploy the configuration. It only generates YAML based on inputs provided and assumes knowledge of target tool schema.", + "examples": [ + "Generate a YAML config to monitor CPU and memory metrics with email alerts enabled.", + "Create a monitoring YAML that includes specific data sources but disables alerts.", + "Produce a YAML file to use with Prometheus that tracks custom application metrics without alerting." + ] + }, + "tags": [ + "monitoring", + "configuration", + "yaml", + "metrics", + "alerts", + "automation" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[{\"metricName\":\"cpu_usage\",\"threshold\":80},{\"metricName\":\"memory_usage\",\"threshold\":70}],\"alertsEnabled\":true,\"alertChannels\":[\"email\",\"slack\"],\"dataSources\":[\"node_exporter\",\"custom_app_exporter\"],\"outputFileName\":\"system-monitor.yaml\"}", + "description": "Generating YAML for CPU and memory monitoring with alerts via email and Slack, including specified data sources." + }, + { + "inputJson": "{\"metrics\":[{\"metricName\":\"disk_io\",\"threshold\":100}],\"alertsEnabled\":false,\"alertChannels\":[],\"dataSources\":[\"disk_exporter\"],\"outputFileName\":\"disk-monitor.yaml\"}", + "description": "Generating YAML config focused on disk I/O metric without alerts." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "monitoring.generateBlogPost", + "description": "Generates a detailed blog post summarizing system or application monitoring data. Accepts monitoring metrics and logs as input, analyzes trends and issues, and produces an informative article highlighting performance insights, incidents, and recommendations for improvement.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringData", + "type": "object", + "description": "Structured monitoring data including metrics, logs, and events to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "string", + "description": "Time period for the monitoring data analysis (e.g., 'last 7 days', '2024-05-15 to 2024-05-21').", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Intended audience of the blog post (e.g., 'developers', 'management').", + "required": false, + "defaultValue": "developers" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations based on analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "postTitle", + "type": "string", + "description": "Optional custom title for the generated blog post.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post content, including title, introduction, body with performance insights, and conclusion with recommendations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a readable, structured summary article based on technical monitoring data to communicate system health and performance trends to stakeholders. It's ideal for creating content that bridges technical metrics and non-technical narratives.", + "limitations": "Cannot replace expert analysis for critical alerts; quality depends on input data completeness. It does not perform real-time monitoring or data collection, only content generation from provided data.", + "examples": [ + "Create a weekly blog post summarizing the last 7 days of server uptime and error logs for developers.", + "Generate an article highlighting performance bottlenecks detected in the monitoring data published to team stakeholders.", + "Produce a management-friendly blog post summarizing the overall service health and recommendations for improvement during the past month." + ] + }, + "tags": [ + "monitoring", + "blog generation", + "performance", + "reporting", + "system health", + "AI content" + ], + "examples": [ + { + "inputJson": "{\"monitoringData\":{\"cpuUsage\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"value\":75},{\"timestamp\":\"2024-06-01T01:00:00Z\",\"value\":82}],\"errorLogs\":[{\"timestamp\":\"2024-06-01T00:30:00Z\",\"message\":\"Timeout error connecting to DB\"}]},\"timeRange\":\"2024-06-01\",\"audience\":\"developers\",\"includeRecommendations\":true,\"postTitle\":\"Daily Monitoring Report\"}", + "description": "Generate a daily technical blog post for developers including performance metrics and error logs with recommendations." + }, + { + "inputJson": "{\"monitoringData\":{\"responseTime\":{\"avg\":350,\"max\":1200},\"serviceAvailability\":99.9},\"timeRange\":\"last 7 days\",\"audience\":\"management\",\"includeRecommendations\":false,\"postTitle\":\"Weekly Service Health Overview\"}", + "description": "Create a weekly summary blog post for management with uptime and response time data, excluding recommendations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "monitoring.generateTemplate", + "description": "Generates customizable monitoring report templates based on specified system metrics and performance indicators. Accepts inputs such as monitored metrics, time periods, and format preferences; processes these to produce structured templates for generating periodic monitoring reports in formats like PDF, HTML, or Markdown.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of system or application performance metrics to include in the template (e.g., CPU usage, memory usage).", + "required": true, + "defaultValue": "" + }, + { + "name": "timePeriod", + "type": "string", + "description": "Time period for the monitoring data that the template will cover (e.g., 'last 24 hours', 'weekly', 'monthly').", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Output format of the report template, such as 'PDF', 'HTML', or 'Markdown'.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "includeGraphs", + "type": "boolean", + "description": "Whether to include placeholders for graphs and charts for visualizing metrics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customSections", + "type": "array", + "description": "Optional list of custom sections or headers to include in the template (e.g., 'Summary', 'Incident Analysis').", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the structured report template content and metadata like format." + }, + "aiAgent": { + "useCase": "This tool is useful for AI agents tasked with automating the preparation of monitoring reports by generating flexible templates tailored to specific metrics and reporting requirements, providing a structured starting point for report generation workflows.", + "limitations": "This tool generates templates only and does not retrieve actual monitoring data or render full reports. Visualization placeholders require integration with data rendering systems.", + "examples": [ + "Generate a weekly monitoring report template for CPU and memory usage in HTML format with graphs included.", + "Create a PDF template for monthly database performance metrics excluding graphs.", + "Produce a Markdown template including custom sections 'Summary' and 'Incident Analysis' for network latency and error rates over the past 24 hours." + ] + }, + "tags": [ + "monitoring", + "template", + "reporting", + "performance", + "automation" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"CPU Usage\",\"Memory Usage\"],\"timePeriod\":\"weekly\",\"reportFormat\":\"HTML\",\"includeGraphs\":true}", + "description": "Generate a weekly HTML report template including CPU and memory usage metrics with graphs." + }, + { + "inputJson": "{\"metrics\":[\"Database Query Time\",\"Connection Errors\"],\"timePeriod\":\"monthly\",\"reportFormat\":\"PDF\",\"includeGraphs\":false}", + "description": "Create a PDF monitoring report template for database performance metrics without graph placeholders." + }, + { + "inputJson": "{\"metrics\":[\"Network Latency\",\"Error Rates\"],\"timePeriod\":\"last 24 hours\",\"reportFormat\":\"Markdown\",\"includeGraphs\":true,\"customSections\":[\"Summary\",\"Incident Analysis\"]}", + "description": "Produce a Markdown template for network metrics including custom summary and incident analysis sections." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "monitoring.createAnomaly", + "description": "This tool accepts time-series data from system or application metrics and applies anomaly detection algorithms to identify unusual patterns or outliers. It processes the input data to detect deviations from normal behavior and outputs a detailed report including anomaly scores, timestamps, and affected metrics.", + "category": "monitoring", + "parameters": [ + { + "name": "metricData", + "type": "array", + "description": "Time-series data points for a specific metric, each including a timestamp and value, used as input for anomaly detection.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionAlgorithm", + "type": "string", + "description": "The anomaly detection algorithm to apply (e.g., 'zScore', 'stdDeviation', 'seasonalHybridESE'), determining how anomalies are identified.", + "required": true, + "defaultValue": "zScore" + }, + { + "name": "sensitivityThreshold", + "type": "number", + "description": "Threshold value for anomaly detection sensitivity; lower values detect more anomalies, higher values reduce false positives.", + "required": false, + "defaultValue": "3.0" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Size of the sliding time window in minutes over which anomalies are evaluated.", + "required": false, + "defaultValue": "60" + }, + { + "name": "metricName", + "type": "string", + "description": "Name of the metric being analyzed, used for labeling output reports.", + "required": true, + "defaultValue": "" + }, + { + "name": "returnRawScores", + "type": "boolean", + "description": "If true, the tool returns raw anomaly scores for each data point; otherwise, only summarized detected anomalies are returned.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Anomaly detection result containing the metric name, list of detected anomalies with timestamps and scores, and summary statistics about the detection process." + }, + "aiAgent": { + "useCase": "Use this tool to detect unusual behavior in system or application performance metrics, helping to proactively identify issues like spikes, drops, or irregular patterns that may indicate faults or security incidents. It is suitable for monitoring CPU usage, memory, response times, or custom application KPIs.", + "limitations": "This tool does not perform root cause analysis or predict future anomalies. It relies on the quality and appropriateness of the input data and parameters. Not suitable for non-time-series data.", + "examples": [ + "Detect anomalies in server CPU usage data for the last 24 hours using z-score method.", + "Identify unusual spikes in application response time metric with high sensitivity.", + "Analyze memory usage time-series with a 30-minute window to find outliers." + ] + }, + "tags": [ + "monitoring", + "anomalyDetection", + "timeSeries", + "analytics", + "performance", + "alerting" + ], + "examples": [ + { + "inputJson": "{\"metricData\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"value\":45},{\"timestamp\":\"2024-05-01T00:05:00Z\",\"value\":47},{\"timestamp\":\"2024-05-01T00:10:00Z\",\"value\":95},{\"timestamp\":\"2024-05-01T00:15:00Z\",\"value\":46}],\"detectionAlgorithm\":\"zScore\",\"sensitivityThreshold\":2.5,\"timeWindowMinutes\":60,\"metricName\":\"CPU_Usage\",\"returnRawScores\":false}", + "description": "Detect anomalies in CPU usage data showing a spike at 00:10 indicating possible overload." + }, + { + "inputJson": "{\"metricData\":[{\"timestamp\":\"2024-06-10T10:00:00Z\",\"value\":120},{\"timestamp\":\"2024-06-10T10:01:00Z\",\"value\":121},{\"timestamp\":\"2024-06-10T10:02:00Z\",\"value\":60},{\"timestamp\":\"2024-06-10T10:03:00Z\",\"value\":119}],\"detectionAlgorithm\":\"stdDeviation\",\"sensitivityThreshold\":1.5,\"timeWindowMinutes\":5,\"metricName\":\"Response_Time_ms\",\"returnRawScores\":true}", + "description": "Analyze application response time with standard deviation method highlighting a sudden drop at 10:02." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "monitoring.createGraph", + "description": "Creates a customizable performance monitoring graph based on time-series data input. Accepts metrics data with timestamps, applies optional filters and aggregation, and outputs a structured graph object representing metrics trends, suitable for visualization in dashboards or reports.", + "category": "monitoring", + "parameters": [ + { + "name": "metricsData", + "type": "array", + "description": "Array of metric data points, each including a timestamp and one or more metric values to plot.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Time range filter specifying start and end timestamps to limit data shown in the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate data points (e.g., 'average', 'sum', 'max') within the time intervals.", + "required": false, + "defaultValue": "average" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to create (e.g., 'line', 'bar', 'area').", + "required": false, + "defaultValue": "line" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional metric attribute to group data by (e.g., 'host', 'service').", + "required": false, + "defaultValue": "" + }, + { + "name": "timeInterval", + "type": "number", + "description": "Aggregation time interval in seconds for bucketing data points.", + "required": false, + "defaultValue": "60" + }, + { + "name": "title", + "type": "string", + "description": "Title label for the graph.", + "required": false, + "defaultValue": "Performance Metrics" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Flag indicating whether to display the legend in the graph output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the graph configuration and aggregated data series ready for visualization, including metadata such as labels, data points arrays, and chart options." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate structured graph data models from raw performance monitoring metrics for visualizing trends, anomalies, or summaries within system or application monitoring dashboards. It supports time filtering, aggregation, grouping, and flexible graph types for comprehensive metric analysis.", + "limitations": "This tool does not render visual images or charts; it only prepares the graph data structure. It requires input data formatted as time-series metrics and cannot process unstructured logs or events.", + "examples": [ + "Generate a line graph showing average CPU usage over the last hour grouped by server.", + "Create a bar graph displaying max memory consumption in 5-minute intervals for a particular application.", + "Produce an area graph reflecting sum of network traffic bytes per minute across all hosts." + ] + }, + "tags": [ + "monitoring", + "graph", + "performance", + "metrics", + "visualization", + "time-series", + "aggregation" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":[{\"timestamp\":1685600000,\"cpuUsage\":30,\"host\":\"server1\"},{\"timestamp\":1685600060,\"cpuUsage\":45,\"host\":\"server1\"},{\"timestamp\":1685600000,\"cpuUsage\":25,\"host\":\"server2\"}],\"timeRange\":{\"start\":1685599800,\"end\":1685600400},\"aggregationMethod\":\"average\",\"graphType\":\"line\",\"groupBy\":\"host\",\"timeInterval\":60,\"title\":\"Average CPU Usage per Host\",\"showLegend\":true}", + "description": "Create a line graph showing average CPU usage over one hour grouped by host with data aggregated per minute." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "monitoring.createVulnerability", + "description": "This tool accepts detailed inputs about a potential security threat including its description, severity, affected components, and identifiers. It processes this information to create a structured vulnerability record that can be used for tracking, monitoring, and remediation efforts. The output is a unique vulnerability ID with full metadata stored in a security monitoring system.", + "category": "monitoring", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Short descriptive title of the vulnerability", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the vulnerability and impact", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the vulnerability (e.g., low, medium, high, critical)", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of system components or software modules affected", + "required": true, + "defaultValue": "[]" + }, + { + "name": "cvssScore", + "type": "number", + "description": "CVSS score representing the vulnerability severity", + "required": false, + "defaultValue": "" + }, + { + "name": "cveId", + "type": "string", + "description": "Common Vulnerabilities and Exposures (CVE) identifier if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "discoveredDate", + "type": "string", + "description": "Date when the vulnerability was discovered, in ISO 8601 format", + "required": false, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Name or identifier of the entity who reported the vulnerability", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a record containing the unique vulnerability ID and all submitted metadata confirming the vulnerability entry creation" + }, + "aiAgent": { + "useCase": "Use this tool when a new security vulnerability is identified that needs to be formally recorded and tracked within a monitoring or security management system. It facilitates structured capture of vulnerability details for prioritization and remediation workflows.", + "limitations": "This tool does not perform vulnerability scanning or detection automatically; it only creates vulnerability records from provided data. It also does not fix or mitigate vulnerabilities.", + "examples": [ + "Create a vulnerability record for a critical SQL injection flaw found in the payment processing module.", + "Log a medium severity vulnerability affecting the authentication service with known CVE association.", + "Add a new vulnerability discovered during penetration testing specifying affected components and reporter information." + ] + }, + "tags": [ + "monitoring", + "security", + "vulnerability", + "tracking", + "record creation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"SQL Injection in Payment Module\",\"description\":\"A critical SQL injection vulnerability allowing remote code execution in the payment processing component.\",\"severity\":\"critical\",\"affectedComponents\":[\"payment-module\",\"database\"],\"cvssScore\":9.8,\"cveId\":\"CVE-2024-12345\",\"discoveredDate\":\"2024-05-15T12:00:00Z\",\"reportedBy\":\"internal-pen-test-team\"}", + "description": "Creating a critical SQL injection vulnerability record with CVE and affected components." + }, + { + "inputJson": "{\"title\":\"Authentication Bypass\",\"description\":\"Medium severity vulnerability allowing bypass of authentication checks under specific conditions.\",\"severity\":\"medium\",\"affectedComponents\":[\"auth-service\"],\"reportedBy\":\"external-security-audit\"}", + "description": "Creating a medium severity authentication bypass vulnerability without CVE or CVSS score." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "monitoring.createReadme", + "description": "Generates a detailed README.md document for a system or application monitoring setup based on provided configuration parameters. Accepts monitoring tool names, monitored services, key metrics, alerting rules, and usage instructions as input. Outputs a well-structured markdown text that describes the monitoring environment, how to deploy it, and interpret the metrics.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringTools", + "type": "array", + "description": "List of monitoring tools used in the setup (e.g., Prometheus, Grafana).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "monitoredServices", + "type": "array", + "description": "Services or applications being monitored (e.g., web server, database).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "keyMetrics", + "type": "array", + "description": "Important metrics tracked (e.g., CPU usage, request latency).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "alertingRules", + "type": "array", + "description": "Descriptions of alerting rules including thresholds and actions triggers.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deploymentInstructions", + "type": "string", + "description": "Instructions or steps to deploy or configure the monitoring setup.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageGuidelines", + "type": "string", + "description": "Guidelines on how to use the monitoring system and interpret metrics.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated README content as markdown text under the 'readmeContent' property." + }, + "aiAgent": { + "useCase": "Use this tool when setting up or documenting application or system monitoring environments to automatically create comprehensive README documentation outlining tools, metrics, alerts, and instructions. It helps standardize and speed up documentation for monitoring setups.", + "limitations": "Cannot generate extremely customized documentation requiring deep domain knowledge beyond given inputs; assumes user provides accurate configuration details.", + "examples": [ + "Create a README for a monitoring stack using Prometheus and Grafana monitoring a web server and database, highlighting CPU and request latency metrics, with alert rules for high latency.", + "Generate documentation for a monitoring setup tracking CPU, memory, and disk usage with instructions on deploying alert scripts.", + "Produce a markdown readme summarizing key metrics and usage guidelines for a Kubernetes cluster monitoring environment." + ] + }, + "tags": [ + "monitoring", + "documentation", + "automation", + "README", + "DevOps" + ], + "examples": [ + { + "inputJson": "{\"monitoringTools\":[\"Prometheus\",\"Grafana\"],\"monitoredServices\":[\"web server\",\"database\"],\"keyMetrics\":[\"CPU usage\",\"request latency\"],\"alertingRules\":[\"Alert on request latency > 500ms for 5 minutes\",\"CPU usage > 80% for 10 minutes\"],\"deploymentInstructions\":\"Deploy Prometheus server with default config, configure Grafana dashboards.\",\"usageGuidelines\":\"Check Grafana dashboards daily and address alerts promptly.\"}", + "description": "Generate README for Prometheus and Grafana monitoring a web server and database with specified key metrics and alerting rules." + }, + { + "inputJson": "{\"monitoringTools\":[\"Nagios\"],\"monitoredServices\":[\"application server\"],\"keyMetrics\":[\"memory usage\",\"disk I/O\"],\"alertingRules\":[],\"deploymentInstructions\":\"Install Nagios on central server and configure host checks.\",\"usageGuidelines\":\"Review alerts sent via email and investigate issues immediately.\"}", + "description": "Create README for Nagios setup monitoring an application server focusing on memory and disk I/O with no alert rules defined." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "monitoring.createMarkdown", + "description": "Generates a structured Markdown report summarizing system or application performance metrics. Accepts raw performance data as JSON, applies optional filtering and threshold highlighting, then outputs a clear Markdown document for easy sharing and review.", + "category": "monitoring", + "parameters": [ + { + "name": "performanceData", + "type": "object", + "description": "JSON object containing performance metrics data such as CPU, memory, response times, and error rates.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the Markdown report to be displayed at the top.", + "required": false, + "defaultValue": "System Performance Report" + }, + { + "name": "highlightThresholds", + "type": "object", + "description": "Optional key-value pairs specifying thresholds for metrics to highlight values exceeding them (e.g., {\"cpu\":80, \"errorRate\":5}).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSections", + "type": "array", + "description": "Array of metric categories to include in the report (e.g., [\"cpu\",\"memory\",\"errors\"]). If empty or omitted, all sections are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestampFormat", + "type": "string", + "description": "Format string to display timestamps in the report headers or entries, using moment.js or similar syntax.", + "required": false, + "defaultValue": "YYYY-MM-DD HH:mm:ss" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'markdownReport' string property with the generated Markdown formatted report." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw performance monitoring data into a human-readable Markdown report that summarizes key system or application metrics clearly. It helps agents generate reports for stakeholders or documentation based on live or historical monitoring data.", + "limitations": "Cannot collect or fetch raw data by itself; expects structured JSON input. Does not perform data aggregation beyond simple threshold highlights. Formatting options are limited to Markdown representation only.", + "examples": [ + "Generate a Markdown report on server CPU and memory usage with high usage highlighted.", + "Create a report including error rates and response times with custom timestamp formatting.", + "Produce a full performance report without filtering, showing all metrics." + ] + }, + "tags": [ + "monitoring", + "reporting", + "performance", + "markdown", + "metrics", + "system", + "application" + ], + "examples": [ + { + "inputJson": "{\"performanceData\":{\"cpu\":{\"average\":72,\"max\":95,\"min\":30},\"memory\":{\"usedMB\":2048,\"totalMB\":4096},\"errorRate\":3.2,\"responseTimeMS\":{\"p95\":350,\"average\":220}},\"title\":\"Weekly System Performance Summary\",\"highlightThresholds\":{\"cpu\":80,\"errorRate\":5},\"includeSections\":[\"cpu\",\"memory\",\"errorRate\",\"responseTimeMS\"],\"timestampFormat\":\"YYYY-MM-DD HH:mm:ss\"}", + "description": "Generate a weekly summary report focusing on CPU, memory, error rate, and response time metrics, highlighting CPU values over 80%." + }, + { + "inputJson": "{\"performanceData\":{\"cpu\":{\"average\":45,\"max\":70,\"min\":20},\"memory\":{\"usedMB\":1024,\"totalMB\":4096}},\"title\":\"Daily Utilization Report\",\"highlightThresholds\":{},\"includeSections\":[\"cpu\",\"memory\"],\"timestampFormat\":\"MMM Do YYYY, h:mm a\"}", + "description": "Create a daily utilization report only on CPU and memory usage without any threshold highlighting, formatted with human-readable dates." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "monitoring.createDiagram", + "description": "Creates a performance monitoring diagram based on specified system metrics and time range. Accepts input parameters including metrics to visualize, time window, and diagram style; processes metrics data; outputs a visual diagram (e.g., line chart, bar chart) in a standard image format to help analyze system/application performance trends.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of metric names to include in the diagram (e.g., CPU usage, memory usage).", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start datetime for the monitoring period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end datetime for the monitoring period.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to create such as 'line', 'bar', or 'area'.", + "required": false, + "defaultValue": "line" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to display on the diagram.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output diagram image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output diagram image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining the metrics.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the encoded image data of the generated diagram and metadata such as format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate visual performance diagrams from system or application metrics over a defined period, such as CPU usage, memory usage, or network I/O. It helps analyze trends and detect anomalies visually.", + "limitations": "Cannot collect raw metric data itself; requires input metrics data to be provided or accessible. Does not perform predictive analytics or alerts, only static visualization.", + "examples": [ + "Create a line chart for CPU and memory usage over last 24 hours.", + "Generate a bar diagram showing network input and output between two dates.", + "Produce an area chart for disk I/O metrics with a custom title and size." + ] + }, + "tags": [ + "monitoring", + "visualization", + "performance", + "metrics", + "diagram", + "chart", + "system", + "application" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"cpu_usage\",\"memory_usage\"],\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-02T00:00:00Z\",\"diagramType\":\"line\",\"title\":\"CPU & Memory Usage Last 24h\",\"width\":800,\"height\":600,\"includeLegend\":true}", + "description": "Generate a line chart diagram showing CPU and memory usage over the last 24 hours with a legend and custom title." + }, + { + "inputJson": "{\"metrics\":[\"network_in\",\"network_out\"],\"startTime\":\"2024-05-15T00:00:00Z\",\"endTime\":\"2024-05-15T23:59:59Z\",\"diagramType\":\"bar\",\"width\":1024,\"height\":768,\"includeLegend\":false}", + "description": "Create a bar chart showing network input and output for a single day without a legend." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "monitoring.createDependency", + "description": "Creates a new dependency relationship in a codebase monitoring system by accepting source and target component identifiers along with metadata. It processes this data to register or update the dependency link and returns a confirmation with dependency details including status and timestamps.", + "category": "monitoring", + "parameters": [ + { + "name": "sourceComponent", + "type": "string", + "description": "Identifier for the source component that depends on another component.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetComponent", + "type": "string", + "description": "Identifier for the target component being depended upon.", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyType", + "type": "string", + "description": "Type of dependency such as 'runtime', 'build-time', or 'test'.", + "required": false, + "defaultValue": "runtime" + }, + { + "name": "versionConstraint", + "type": "string", + "description": "Optional version constraint applied to the target component dependency.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata about the dependency (e.g., impact, criticality).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a DependencyRecord object containing details such as dependency ID, source and target components, dependency type, version constraints, creation timestamp, and status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically register or update a dependency relationship between components in a monitored codebase or system to track impact and analyze runtime or build-time dependencies. Ideal for automating dependency graph maintenance in monitoring solutions.", + "limitations": "This tool does not resolve or analyze the actual dependency usage or detect circular dependencies; it only registers declared relationships. It does not provide dependency health or vulnerability assessments.", + "examples": [ + "Create a runtime dependency between microservice A and library B.", + "Register a build-time dependency from component X to component Y with version constraints.", + "Update metadata for an existing dependency between two modules." + ] + }, + "tags": [ + "monitoring", + "dependency", + "create", + "codebase", + "software", + "performance", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"sourceComponent\":\"auth-service\",\"targetComponent\":\"user-library\",\"dependencyType\":\"runtime\",\"versionConstraint\":\"^1.2.0\",\"metadata\":{\"criticality\":\"high\"}}", + "description": "Create a runtime dependency from 'auth-service' to 'user-library' requiring version ^1.2.0, marked high criticality." + }, + { + "inputJson": "{\"sourceComponent\":\"build-pipeline\",\"targetComponent\":\"compiler-plugin\",\"dependencyType\":\"build-time\"}", + "description": "Register a build-time dependency from 'build-pipeline' to 'compiler-plugin' with default version constraint." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "monitoring.createProposal", + "description": "Generates a detailed monitoring proposal document based on system or application metrics input. Accepts parameters specifying monitored components, monitoring goals, and reporting frequency; processes these to create a structured proposal outlining monitoring strategy, tools, and expected outcomes. Outputs a proposal document in JSON format summarizing the plan.", + "category": "monitoring", + "parameters": [ + { + "name": "systemName", + "type": "string", + "description": "Name of the system or application to be monitored.", + "required": true, + "defaultValue": "" + }, + { + "name": "components", + "type": "array", + "description": "List of system components or services to include in monitoring, e.g., databases, servers.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "monitoringObjectives", + "type": "array", + "description": "Key objectives for monitoring, such as performance tracking, error detection, uptime assurance.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "reportFrequency", + "type": "string", + "description": "Frequency of monitoring reports, e.g., hourly, daily, weekly.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeAlerting", + "type": "boolean", + "description": "Whether to include alerting mechanisms in the proposal.", + "required": false, + "defaultValue": "true" + }, + { + "name": "budgetEstimate", + "type": "number", + "description": "Estimated budget in USD for implementing the monitoring solution.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON document outlining the monitoring proposal including components, objectives, tools suggested, reporting cadence, alerting setup, and budget estimate." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate formal monitoring proposals for IT systems or applications based on specified components and objectives, in scenarios like planning new monitoring deployments or upgrading existing systems. It helps automate and standardize proposal generation, saving time and ensuring completeness.", + "limitations": "This tool does not perform real-time monitoring, data collection, or enforce any monitoring configurations; it only generates a proposal document based on input parameters.", + "examples": [ + "Create a monitoring proposal for an e-commerce website focusing on server uptime and response time, with daily reports and alerting enabled.", + "Generate a monitoring proposal targeting database performance and error rates, including budget estimates for new tools.", + "Draft a high-level monitoring plan for a microservices architecture to track service availability and latency, reporting weekly without alerting." + ] + }, + "tags": [ + "monitoring", + "proposal", + "planning", + "performance", + "alerts", + "IT management" + ], + "examples": [ + { + "inputJson": "{\"systemName\":\"E-Commerce Platform\",\"components\":[\"web servers\",\"database\",\"cache\"],\"monitoringObjectives\":[\"uptime\",\"response time\",\"error rate\"],\"reportFrequency\":\"daily\",\"includeAlerting\":true,\"budgetEstimate\":5000}", + "description": "Proposal for monitoring an e-commerce platform with key performance and availability metrics, daily reporting, and alerting included." + }, + { + "inputJson": "{\"systemName\":\"Customer DB\",\"components\":[\"database server\"],\"monitoringObjectives\":[\"query performance\",\"error detection\"],\"reportFrequency\":\"weekly\",\"includeAlerting\":false}", + "description": "Monitoring proposal for a database server focusing on query performance and error detection without alerting, with weekly reports." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "monitoring.createBlogPost", + "description": "Generates a detailed blog post draft focused on monitoring system or application performance metrics, based on provided performance data, key insights, and intended audience. It processes JSON-formatted monitoring data and user-supplied details to create a structured, informative blog post text output suitable for publication or further editing.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringData", + "type": "object", + "description": "Structured JSON object containing performance metrics and monitoring data relevant to the blog post topic (e.g., CPU usage, latency data).", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The proposed title for the blog post to frame its focus and attract readers.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceLevel", + "type": "string", + "description": "Target audience expertise level, such as 'beginner', 'intermediate', or 'expert', to tailor the post content complexity.", + "required": false, + "defaultValue": "intermediate" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of strings highlighting the main insights or messages the blog post should convey.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include practical examples or case studies illustrating the monitoring data insights.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "The maximum length of the generated blog post in words.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post as a string and metadata such as estimated reading time." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create coherent and informative blog posts based on raw monitoring data and user objectives. It helps communicate performance monitoring insights effectively to specific audience types, saving time and ensuring clarity.", + "limitations": "The tool cannot replace domain expert review for accuracy. It may not capture all technical nuances or latest trends beyond the input data scope.", + "examples": [ + "Create a beginner-friendly blog post about recent server latency issues using supplied monitoring logs.", + "Generate an expert-level blog article on CPU and memory usage patterns from detailed monitoring statistics.", + "Draft a medium-length blog post including practical examples explaining a recent spike in database query times." + ] + }, + "tags": [ + "monitoring", + "blog", + "content-generation", + "performance", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"monitoringData\":{\"cpuUsageAvg\":75,\"memoryUsageAvg\":68,\"latencyP95\":120},\"title\":\"Understanding Our System Performance Metrics\",\"audienceLevel\":\"intermediate\",\"keyPoints\":[\"High CPU usage during peak hours\",\"Latency spike correlation with database queries\"],\"includeExamples\":true,\"maxLength\":800}", + "description": "Generate an intermediate-level blog post that explains system performance metrics with examples, capped at 800 words." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "compliance-management.analyzeTrend", + "description": "Analyzes trends in compliance-related data by accepting time-series inputs such as violation counts, audit results, or policy adherence rates. The tool processes the data to identify patterns, emerging risks, and changes over specified time intervals, returning visual and statistical summaries to support compliance decision-making.", + "category": "compliance-management", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing compliance data points over time, each with a timestamp and relevant compliance metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeInterval", + "type": "string", + "description": "Time interval to aggregate and analyze trends (e.g., 'daily', 'weekly', 'monthly').", + "required": true, + "defaultValue": "daily" + }, + { + "name": "metrics", + "type": "array", + "description": "List of specific compliance metrics to analyze (e.g., 'violationCount', 'auditFailures'). If empty, analyze all available metrics.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the trend analysis in ISO 8601 format (YYYY-MM-DD). If empty, analysis starts from earliest data point.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the trend analysis in ISO 8601 format (YYYY-MM-DD). If empty, analysis ends at latest data point.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeForecast", + "type": "boolean", + "description": "Whether to include a short-term forecast of compliance trends using historical data.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing statistical summaries, identified trends, seasonal patterns, and optionally forecasted compliance metrics over the specified time period." + }, + "aiAgent": { + "useCase": "Use this tool when needing to detect and understand compliance trends over time from historical compliance data to proactively manage risks, improve policies, or prepare reports. Suitable for analyzing time-series compliance metrics such as violation counts or audit results.", + "limitations": "Cannot analyze unstructured text data or compliance documentation; requires structured time-series data input. Forecasts are basic and do not substitute for detailed risk modeling.", + "examples": [ + "Analyze monthly violation trends for the past year including forecast.", + "Identify weekly audit failure patterns within a custom date range.", + "Generate trend analysis of all available compliance metrics over the last quarter." + ] + }, + "tags": [ + "compliance", + "trend-analysis", + "time-series", + "risk-management", + "data-analytics" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2023-01-01T00:00:00Z\",\"violationCount\":5,\"auditFailures\":2},{\"timestamp\":\"2023-01-08T00:00:00Z\",\"violationCount\":7,\"auditFailures\":1},{\"timestamp\":\"2023-01-15T00:00:00Z\",\"violationCount\":3,\"auditFailures\":0}],\"timeInterval\":\"weekly\",\"metrics\":[\"violationCount\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-01-31\",\"includeForecast\":true}", + "description": "Analyze weekly violation count trends during January 2023 with forecasting." + }, + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-03-01T00:00:00Z\",\"violationCount\":4,\"auditFailures\":1,\"policyAdherence\":95},{\"timestamp\":\"2024-03-02T00:00:00Z\",\"violationCount\":0,\"auditFailures\":0,\"policyAdherence\":98}],\"timeInterval\":\"daily\",\"metrics\":[],\"startDate\":\"2024-03-01\",\"includeForecast\":false}", + "description": "Perform daily trend analysis for all compliance metrics from March 1 onwards without forecasting." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "compliance-management.analyzeHeading", + "description": "Analyzes a heading text within a policy or regulatory document to assess its compliance relevance. Accepts a heading string and optional context parameters, then evaluates if the heading aligns with required compliance frameworks or standards. Returns an analysis report indicating compliance category, potential compliance risks, and improvement recommendations.", + "category": "compliance-management", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The heading text from the document to analyze for compliance relevance.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextStandard", + "type": "string", + "description": "The specific compliance standard or framework to reference (e.g., GDPR, HIPAA, ISO27001).", + "required": false, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of document the heading is from (e.g., policy, procedure, guideline) to better tailor the analysis.", + "required": false, + "defaultValue": "policy" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the heading text (e.g., 'en', 'de') to support multilingual analysis.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing compliance relevance classification, identified standards references, risk level, and suggested actions to improve compliance of the heading." + }, + "aiAgent": { + "useCase": "This tool is useful for AI agents assisting compliance officers or document reviewers who need to quickly evaluate if specific headings in policy or regulatory documents meet compliance standards. It helps to pre-assess or flag headings for further human review to ensure documents adhere to relevant frameworks.", + "limitations": "It does not analyze full content under the heading, only the heading text itself. It may not identify all nuances without further document context, and it cannot replace a full compliance audit or legal review.", + "examples": [ + "Analyze if the heading 'Data Protection and Privacy' complies with GDPR in a company privacy policy document.", + "Evaluate the heading 'User Access Control' for ISO27001 compliance relevance in a procedure manual.", + "Check compliance relevance of the heading 'Incident Response Plan' for HIPAA standards in a healthcare policy document." + ] + }, + "tags": [ + "compliance", + "heading analysis", + "document review", + "policy", + "regulatory", + "standards", + "risk assessment" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Data Protection and Privacy\",\"contextStandard\":\"GDPR\",\"documentType\":\"policy\",\"language\":\"en\"}", + "description": "Analyzing a policy heading for GDPR compliance relevance." + }, + { + "inputJson": "{\"headingText\":\"User Access Control\",\"contextStandard\":\"ISO27001\",\"documentType\":\"procedure\",\"language\":\"en\"}", + "description": "Evaluating a procedure heading for ISO27001 compliance in information security." + }, + { + "inputJson": "{\"headingText\":\"Incident Response Plan\",\"contextStandard\":\"HIPAA\",\"documentType\":\"guideline\",\"language\":\"en\"}", + "description": "Checking a healthcare guideline heading against HIPAA compliance requirements." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "compliance-management.analyzeReply", + "description": "Analyzes a textual reply or communication message to assess its compliance with specific regulatory requirements, internal policies, or communication standards. Accepts the reply text and relevant compliance criteria, performs linguistic, contextual, and policy-relevance analysis, and outputs a compliance assessment report with detected issues, risk levels, and suggestions for remediation.", + "category": "compliance-management", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The textual content of the reply or communication message to analyze for compliance issues.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceCriteria", + "type": "array", + "description": "A list of compliance rules, regulations, or policy keywords to check the reply against (e.g., GDPR clauses, internal code of conduct points).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the reply text (e.g., 'en', 'fr'), used to improve linguistic analysis accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSuggestions", + "type": "boolean", + "description": "Whether to include remediation or rewriting suggestions for detected compliance issues in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level of issues to report (e.g., 'low', 'medium', 'high'). Issues below this are omitted.", + "required": false, + "defaultValue": "low" + } + ], + "returns": { + "type": "object", + "description": "A detailed compliance assessment report including detected compliance issues, their severity levels, affected criteria, and optional suggested actions for resolution or improvement." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate a reply message — email, chat, or document response — for compliance with specified regulations or internal policies. It helps identify potential breaches or risky content proactively ensuring communication safety and adherence.", + "limitations": "This tool analyzes text based on provided compliance criteria but cannot fully replace legal expertise or detect compliance issues outside the scope of supplied rules or contextual understanding. It may miss nuances in highly technical or ambiguous content.", + "examples": [ + "Analyze this client reply to verify GDPR compliance and data privacy adherence.", + "Check the latest support reply against company communication policy for any potential compliance violations.", + "Evaluate customer service email response for offensive or non-compliant language and suggest edits." + ] + }, + "tags": [ + "compliance", + "communication", + "analysis", + "regulation", + "policy", + "reply", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"We have deleted all your stored data as requested.\",\"complianceCriteria\":[\"GDPR data deletion\"],\"language\":\"en\",\"includeSuggestions\":true,\"severityThreshold\":\"low\"}", + "description": "Analyze a customer reply confirming data deletion for GDPR compliance." + }, + { + "inputJson": "{\"replyText\":\"You must provide your credit card to continue.\",\"complianceCriteria\":[\"PCI compliance\",\"data privacy\"],\"includeSuggestions\":false}", + "description": "Check a payment-related reply for PCI and privacy compliance without suggestions." + }, + { + "inputJson": "{\"replyText\":\"Sorry, I cannot share that information.\",\"complianceCriteria\":[\"confidentiality policy\"],\"language\":\"en\",\"includeSuggestions\":true,\"severityThreshold\":\"medium\"}", + "description": "Review a reply denying information sharing for confidentiality policy compliance with medium severity threshold." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "compliance-management.analyzeThread", + "description": "This tool accepts a communication thread, such as email chains or chat logs, and analyzes it for compliance issues against specified regulatory or organizational policies. It processes the conversation data to identify potential violations like data leaks, inappropriate language, unauthorized sharing, or privacy breaches, returning a detailed compliance report highlighting flagged messages and risk levels.", + "category": "compliance-management", + "parameters": [ + { + "name": "threadData", + "type": "array", + "description": "An array of message objects representing the communication thread. Each message includes sender, timestamp, and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "policyIds", + "type": "array", + "description": "List of policy identifiers to check the thread against. Each corresponds to a regulatory or internal compliance standard.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') to accurately interpret the thread's content.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a high-level summary of findings in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "strictnessLevel", + "type": "string", + "description": "Defines the rigor of compliance checking: 'low', 'medium', or 'high'. Higher levels flag more subtle or borderline issues.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "Compliance report object containing flagged messages with violation details, overall risk assessment, and optional summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to audit communication threads for compliance with legal or internal policies, such as detecting data leaks, inappropriate language, or privacy issues in corporate emails or chat logs. It helps ensure that all content adheres to required standards before archival or external sharing.", + "limitations": "This tool does not perform legal judgment or resolve compliance disputes. It relies on configured policies and may not detect context-dependent nuances without additional domain knowledge.", + "examples": [ + "Analyze this email thread for GDPR compliance and flag any personal data sharing.", + "Check the Slack conversation for violations of internal code of conduct regarding harassment.", + "Review this chat log under HIPAA regulations to identify any potential patient data disclosures." + ] + }, + "tags": [ + "compliance", + "communication", + "analysis", + "policy", + "audit", + "regulation", + "thread", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"threadData\":[{\"sender\":\"alice@example.com\",\"timestamp\":\"2024-04-01T09:00:00Z\",\"content\":\"Please send me the client SSN for record keeping.\"},{\"sender\":\"bob@example.com\",\"timestamp\":\"2024-04-01T09:05:00Z\",\"content\":\"Sharing SSNs over email may violate HIPAA regulations.\"},{\"sender\":\"alice@example.com\",\"timestamp\":\"2024-04-01T09:10:00Z\",\"content\":\"Thanks for the reminder! I will use secured file transfer.\"}],\"policyIds\":[\"HIPAA\"],\"language\":\"en\",\"includeSummary\":true,\"strictnessLevel\":\"high\"}", + "description": "Analyze an email thread for HIPAA compliance focusing on data sharing risks." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "compliance-management.analyzeHTML", + "description": "Analyzes HTML content to identify compliance issues related to regulatory and policy standards such as accessibility (WCAG), data privacy disclosures, and cookie consent notices. Accepts raw HTML input, processes DOM and textual content to detect violations, and outputs a structured report detailing compliance status, issue descriptions, severity levels, and remediation suggestions.", + "category": "compliance-management", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to analyze for compliance issues.", + "required": true, + "defaultValue": "" + }, + { + "name": "standards", + "type": "array", + "description": "List of compliance standards to check against (e.g., ['WCAG','GDPR','CCPA']).", + "required": false, + "defaultValue": "[\"WCAG\"]" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to perform accessibility compliance checks such as WCAG guidelines.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkPrivacy", + "type": "boolean", + "description": "Whether to verify privacy policy and cookie consent presence and adequacy.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum issue severity to include in output report (e.g., 'low','medium','high').", + "required": false, + "defaultValue": "low" + } + ], + "returns": { + "type": "object", + "description": "Structured compliance report including passed standards, list of issues with severity, location in HTML, and remediation advice." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate a website's HTML content for adherence to accessibility standards, privacy regulations, or cookie consent requirements. Ideal for pre-release web compliance checks, audits, or real-time policy enforcement.", + "limitations": "Cannot execute or interpret dynamic content rendered via JavaScript after initial HTML. Does not provide legal advice, only technical compliance indicators. May not cover all global regulatory nuances beyond configured standards.", + "examples": [ + "Analyze the given HTML for WCAG accessibility issues and GDPR cookie consent compliance.", + "Check a webpage's HTML to identify missing privacy policy links and accessibility errors above medium severity.", + "Perform a compliance audit on supplied HTML focusing only on privacy-related elements such as cookie consent banners." + ] + }, + "tags": [ + "compliance", + "HTML", + "accessibility", + "privacy", + "web-audit", + "regulatory", + "policy" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"<html><head><title>Test

Welcome

Some content

\",\"standards\":[\"WCAG\"],\"checkAccessibility\":true,\"checkPrivacy\":false,\"severityThreshold\":\"low\"}", + "description": "Analyzing a simple HTML snippet for WCAG accessibility compliance." + }, + { + "inputJson": "{\"htmlContent\":\"

Privacy notice: We use cookies.

\",\"standards\":[\"GDPR\"],\"checkAccessibility\":false,\"checkPrivacy\":true,\"severityThreshold\":\"medium\"}", + "description": "Checking privacy compliance in HTML detecting cookie consent presence." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "compliance-management.analyzeXML", + "description": "This tool accepts XML documents and performs compliance analysis against specified regulatory rules or industry standards. It processes the XML content to identify violations, missing mandatory elements, or structure anomalies related to compliance. The output is a detailed report listing compliance issues, severity levels, and recommendations for remediation.", + "category": "compliance-management", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "The XML document content as a string to be analyzed for compliance.", + "required": true, + "defaultValue": "" + }, + { + "name": "regulatoryStandard", + "type": "string", + "description": "The target compliance standard or regulation to evaluate against (e.g., GDPR, HIPAA, PCI-DSS).", + "required": true, + "defaultValue": "" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "Whether to enforce strict validation rules; if false, reports warnings for minor issues.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Include remediation recommendations for each compliance issue identified.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customRules", + "type": "array", + "description": "Optional array of additional custom compliance rules to apply during analysis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing compliance status, list of violations found, severity levels, and optional remediation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to verify whether XML documents conform to specific regulatory frameworks or internal compliance policies. It helps automate compliance verification by scanning the XML structure and content for policy adherence, flagging violations and suggesting fixes. Ideal when processing legal, financial, or sensitive data encoded in XML that must meet governance requirements.", + "limitations": "Does not fix or modify the XML, only analyzes and reports issues. Relies on predefined regulatory standards and provided custom rules; novel or unpublished standards are not supported unless custom rules are specified.", + "examples": [ + "Analyze an XML submission against GDPR compliance to identify potential data privacy violations.", + "Check an XML invoice file for PCI-DSS compliance to ensure secure handling of payment card data.", + "Run compliance analysis on healthcare XML records against HIPAA standards with custom organizational policies." + ] + }, + "tags": [ + "compliance", + "XML", + "regulatory", + "analysis", + "validation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"John Doe1990-01-01\",\"regulatoryStandard\":\"HIPAA\",\"strictMode\":true}", + "description": "Analyze patient XML data against HIPAA standards in strict mode to detect compliance issues." + }, + { + "inputJson": "{\"xmlContent\":\"10001234-5678-9012-3456\",\"regulatoryStandard\":\"PCI-DSS\",\"includeRecommendations\":true}", + "description": "Check invoice XML for PCI-DSS compliance and include recommendations for non-compliance." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "compliance-management.downloadCSV", + "description": "Downloads compliance audit data as a CSV file based on specified filters such as date range, compliance status, and department. Accepts parameters defining the data scope, processes relevant compliance records, and outputs a CSV-formatted string for reporting or analysis.", + "category": "compliance-management", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) to filter compliance records, inclusive.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) to filter compliance records, inclusive.", + "required": false, + "defaultValue": "" + }, + { + "name": "complianceStatus", + "type": "array", + "description": "Array of compliance statuses to include, e.g., ['passed','failed','pending'].", + "required": false, + "defaultValue": "[\"passed\",\"failed\",\"pending\"]" + }, + { + "name": "departments", + "type": "array", + "description": "List of department names to filter compliance records by.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to append a summary row with counts of each compliance status.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV string as 'csvContent' and metadata including 'recordCount' and 'generatedAt' timestamp." + }, + "aiAgent": { + "useCase": "When an AI agent needs to retrieve or deliver compliance audit data for reporting, outreach, or archival, this tool allows downloading filtered compliance data in CSV format suitable for spreadsheets or integrations. It is useful for generating reports filtered by time, departments, or compliance status.", + "limitations": "This tool does not perform compliance analysis or update records; it only retrieves and formats existing data as CSV. It cannot generate data outside of stored compliance records or apply transformations beyond filtering and summary appending.", + "examples": [ + "Download all compliance audit data for Q1 2024.", + "Fetch failed compliance records for the IT and Finance departments between January and March 2024.", + "Get a CSV report with a summary of all compliance audit statuses for the past year." + ] + }, + "tags": [ + "compliance", + "reporting", + "csv", + "data-export", + "audit", + "filtering" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"complianceStatus\":[\"failed\"],\"departments\":[\"IT\",\"Finance\"],\"includeSummary\":true}", + "description": "Download CSV of all failed compliance audits in IT and Finance departments for Q1 2024, including a summary row." + }, + { + "inputJson": "{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\",\"complianceStatus\":[\"passed\",\"failed\"],\"departments\":[],\"includeSummary\":false}", + "description": "Download CSV of all passed and failed compliance audits for the entire year 2023, no summary row." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "compliance-management.formatCSV", + "description": "This tool accepts CSV data as input and reformats it to comply with specified regulatory or policy standards. It processes the raw CSV string, applies consistent header formatting, enforces data type constraints, normalizes date and number formats, and ensures required fields are present. The output is a cleaned, standardized CSV string ready for compliance reporting or audit submission.", + "category": "compliance-management", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "CSV formatted data as a raw string to be reformatted for compliance.", + "required": true, + "defaultValue": "" + }, + { + "name": "requiredHeaders", + "type": "array", + "description": "List of headers that must be present in the CSV to meet compliance standards.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Target standardized date format to apply (e.g., 'YYYY-MM-DD').", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "numberDecimalPlaces", + "type": "number", + "description": "Number of decimal places to format numeric values to.", + "required": false, + "defaultValue": "2" + }, + { + "name": "enforceDataTypes", + "type": "boolean", + "description": "Whether to enforce predefined data types for each column if specified.", + "required": false, + "defaultValue": "false" + }, + { + "name": "columnDataTypes", + "type": "object", + "description": "Optional mapping from column headers to data types (e.g., {'Amount':'number','Date':'date'}).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "normalizeHeaders", + "type": "boolean", + "description": "Whether to normalize headers to lowercase and replace spaces with underscores.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the reformatted CSV string and any warnings about compliance issues." + }, + "aiAgent": { + "useCase": "Use this tool when needing to prepare or sanitize CSV data to meet compliance regulations or internal policy standards, especially for financial, medical, or regulatory audit reports. It helps ensure consistency in data formatting, presence of required fields, and adherence to data type constraints before submission or archival.", + "limitations": "This tool does not validate the semantic correctness of the data beyond formatting compliance. It cannot add missing data or fix logical errors, only enforce format and structural rules.", + "examples": [ + "Reformat a financial CSV export to use ISO date format and 2 decimal places for amounts.", + "Check and enforce presence of mandatory headers in a compliance CSV report.", + "Normalize CSV headers and convert all dates to consistent format for audit submission." + ] + }, + "tags": [ + "compliance", + "formatting", + "CSV", + "data-normalization", + "audit", + "regulatory", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"TransactionID,Date, Amount \\n123,01/15/2024, 2500.5 \\n124,02/20/2024, 1340.256\" ,\"dateFormat\":\"YYYY-MM-DD\",\"numberDecimalPlaces\":2,\"normalizeHeaders\":true}", + "description": "Format CSV with headers normalized, dates to ISO format, and numbers rounded to 2 decimals." + }, + { + "inputJson": "{\"csvData\":\"ID|Name|DOB\\n1|John Doe|12-31-1980\",\"requiredHeaders\":[\"ID\",\"Name\",\"DOB\"],\"dateFormat\":\"YYYY-MM-DD\",\"normalizeHeaders\":true}", + "description": "Reformat CSV with pipe delimiters (assume handled externally), enforce required headers and date format." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "compliance-management.formatSummary", + "description": "Formats a compliance summary document by accepting raw text or key points related to regulatory and policy compliance, organizing the content into a well-structured summary including sections such as key findings, risks, compliance status, and recommendations. Outputs a formatted, concise text summary suitable for reporting or review.", + "category": "compliance-management", + "parameters": [ + { + "name": "rawSummaryText", + "type": "string", + "description": "The unformatted raw text or notes describing the compliance summary content.", + "required": true, + "defaultValue": "" + }, + { + "name": "keySections", + "type": "array", + "description": "An optional array of section titles to include in the formatted summary, e.g., ['Key Findings', 'Risks', 'Recommendations'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the output summary in characters to ensure concise formatting.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include a recommendations section in the formatted summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'plainText' or 'markdown'.", + "required": false, + "defaultValue": "plainText" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted compliance summary text as per the specified options and structured into defined sections." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw compliance notes or draft summaries into a polished, structured summary report for stakeholders, compliance officers, or regulatory review. It helps ensure consistent presentation and highlights critical information clearly.", + "limitations": "Cannot perform compliance analysis or verify factual correctness of input; only formats and organizes provided content. May not handle extremely technical legal language or financial data without additional processing.", + "examples": [ + "Format a compliance summary from raw audit notes.", + "Generate a concise markdown report summarizing compliance risks and statuses.", + "Create a summary limited to 500 characters focused on key findings and recommendations." + ] + }, + "tags": [ + "compliance", + "formatting", + "reporting", + "summary", + "regulatory", + "document", + "risk", + "management" + ], + "examples": [ + { + "inputJson": "{\"rawSummaryText\":\"The audit revealed non-compliance with data privacy regulations due to insufficient encryption. Several internal policies are outdated.\",\"keySections\":[\"Key Findings\",\"Risks\",\"Recommendations\"],\"maxLength\":800,\"includeRecommendations\":true,\"outputFormat\":\"markdown\"}", + "description": "Format a markdown summary from audit notes including key findings, risks, and recommendations." + }, + { + "inputJson": "{\"rawSummaryText\":\"Vendor contracts lack clauses for GDPR compliance. Financial reporting policies are adequate.\",\"keySections\":[\"Findings\",\"Compliance Status\"],\"maxLength\":500,\"includeRecommendations\":false,\"outputFormat\":\"plainText\"}", + "description": "Create a plain text compliance summary focusing on findings and compliance status without recommendations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "compliance-management.draftWord", + "description": "This tool assists in drafting Word document templates for compliance-related content such as policies, reports, and regulatory submissions. It accepts input parameters specifying document type, compliance standards to cover, key points, and formatting preferences, then generates a structured Word document draft meeting those criteria.", + "category": "compliance-management", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of compliance document to draft, e.g., 'policy', 'report', or 'audit summary'.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards or regulations to be addressed in the document, e.g., ['GDPR', 'HIPAA'].", + "required": true, + "defaultValue": "[]" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Specific key points or clauses to be included in the document content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language to draft the document in, e.g., 'en' for English.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "formattingStyle", + "type": "string", + "description": "Preferred document formatting style, e.g., 'formal', 'concise', or custom style name.", + "required": false, + "defaultValue": "\"formal\"" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to include a table of contents in the draft document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "pageLimit", + "type": "number", + "description": "Maximum number of pages for the drafted document; 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the draft Word document as a base64-encoded string and metadata such as page count and a summary of included compliance standards." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate structured draft documents that comply with specified regulations or policies. It automates the creation of compliance documents by integrating user requirements, relevant standards, and preferred formatting into a ready-to-edit Word document format.", + "limitations": "The tool generates draft documents but does not provide legal advice or validate compliance accuracy. The content quality depends on the provided key points and recognized compliance standards. It cannot replace expert review.", + "examples": [ + "Draft a GDPR privacy policy document in English with a formal style including sections on data subject rights and breach notification.", + "Generate an audit summary report covering HIPAA compliance items with concise formatting and a table of contents.", + "Create a compliance training policy document referencing multiple standards such as ISO 27001 and SOC 2 in a custom style without page limit." + ] + }, + "tags": [ + "compliance", + "document generation", + "Word", + "policy drafting", + "regulatory", + "reporting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"policy\",\"complianceStandards\":[\"GDPR\"],\"keyPoints\":[\"data subject rights\",\"breach notification\"],\"language\":\"en\",\"formattingStyle\":\"formal\",\"includeTableOfContents\":true,\"pageLimit\":10}", + "description": "Draft a GDPR privacy policy document in English with formal style including key points on data subject rights and breach notifications." + }, + { + "inputJson": "{\"documentType\":\"audit summary\",\"complianceStandards\":[\"HIPAA\"],\"keyPoints\":[\"risk assessment results\",\"corrective actions\"],\"language\":\"en\",\"formattingStyle\":\"concise\",\"includeTableOfContents\":true,\"pageLimit\":5}", + "description": "Generate an audit summary report covering HIPAA compliance with concise formatting and including a table of contents." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "compliance-management.buildInstance", + "description": "Builds a compliance-checking instance configured to enforce specific regulatory policies on infrastructure environments. Accepts environment type, compliance frameworks, and configuration settings, then provisions and configures the instance for continuous compliance monitoring and reporting. Outputs instance details and setup status.", + "category": "compliance-management", + "parameters": [ + { + "name": "environmentType", + "type": "string", + "description": "Type of infrastructure environment (e.g., 'AWS', 'Azure', 'OnPremise') where the instance will be deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceFrameworks", + "type": "array", + "description": "List of regulatory compliance frameworks (e.g., ['HIPAA', 'GDPR', 'ISO27001']) to enforce within the instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceSize", + "type": "string", + "description": "Size specification for the compliance instance (e.g., 'small', 'medium', 'large') determining resource allocation.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "enableAutoRemediation", + "type": "boolean", + "description": "Flag to enable automatic remediation of detected compliance violations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "notificationEndpoints", + "type": "array", + "description": "List of endpoints (e.g., emails, webhooks) to send compliance alerts and reports.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs for tagging the compliance instance for organizational purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique instance identifier, deployment status, endpoint URLs for management console and API access, and a summary of applied compliance frameworks." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to programmatically create and configure a compliance management instance for an infrastructure environment to automate enforcement of regulatory policies and continuous monitoring.", + "limitations": "Does not handle actual compliance scanning or violation remediation processes internally; those require additional tools or integrations.", + "examples": [ + "Create a HIPAA and ISO27001 compliance instance for AWS with auto-remediation enabled.", + "Build a GDPR compliance instance for on-premise deployment without auto remediation.", + "Set up a medium-sized compliance instance for Azure enforcing PCI-DSS with email notifications." + ] + }, + "tags": [ + "compliance", + "infrastructure", + "instance", + "automation", + "regulatory", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"environmentType\":\"AWS\",\"complianceFrameworks\":[\"HIPAA\",\"ISO27001\"],\"instanceSize\":\"medium\",\"enableAutoRemediation\":true,\"notificationEndpoints\":[\"alerts@example.com\"]}", + "description": "Create a medium AWS compliance instance enforcing HIPAA and ISO27001 with auto remediation and email alerts." + }, + { + "inputJson": "{\"environmentType\":\"OnPremise\",\"complianceFrameworks\":[\"GDPR\"],\"instanceSize\":\"small\",\"enableAutoRemediation\":false}", + "description": "Set up a small on-premise instance for GDPR compliance without auto remediation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "compliance-management.composeSummary", + "description": "Generates a comprehensive compliance summary document based on provided regulatory requirements, policy adherence data, and audit findings. Accepts detailed inputs about regulations and compliance metrics, processes them to synthesize key compliance insights, and produces a structured summary report outlining compliance status, risks, and recommendations.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulatoryRequirements", + "type": "array", + "description": "List of applicable regulatory frameworks or standards to include in the summary, each as a string identifier or code.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceData", + "type": "object", + "description": "Detailed object capturing status and evidence of adherence to each regulatory requirement, including timestamps and responsible teams.", + "required": true, + "defaultValue": "" + }, + { + "name": "auditFindings", + "type": "array", + "description": "An array of audit results relevant to compliance, each containing issue descriptions, severity, and remediation progress.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportDate", + "type": "string", + "description": "The date when the summary report is generated, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include actionable compliance improvement recommendations based on data analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed compliance summary report as a string, along with metadata such as report generation date and included sections." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a clear, concise compliance summary document from detailed regulatory and audit data. This is ideal for generating reports for compliance officers, executives, or regulatory submissions summarizing current adherence status and outstanding issues.", + "limitations": "This tool does not perform compliance verification itself nor automate remediation; it relies on accurate and comprehensive input data. It also cannot interpret ambiguous or incomplete regulatory requirements without additional context.", + "examples": [ + "Generate a compliance summary for GDPR and HIPAA regulations including latest audit findings.", + "Compose a compliance summary document for ISO 27001 with recommendations for improvements.", + "Create a report summarizing adherence to financial regulations as of the latest quarter with no recommendations." + ] + }, + "tags": [ + "compliance", + "reporting", + "regulatory", + "audit", + "summary", + "policy", + "governance", + "risk" + ], + "examples": [ + { + "inputJson": "{\"regulatoryRequirements\":[\"GDPR\",\"HIPAA\"],\"complianceData\":{\"GDPR\":{\"status\":\"Compliant\",\"lastReviewed\":\"2024-05-01\",\"responsibleTeam\":\"Legal\"},\"HIPAA\":{\"status\":\"Partial\",\"issues\":[\"Encryption standards not fully met\"],\"lastReviewed\":\"2024-04-15\",\"responsibleTeam\":\"Security\"}},\"auditFindings\":[{\"issue\":\"Missing encryption on some databases\",\"severity\":\"High\",\"remediationStatus\":\"In Progress\"}],\"reportDate\":\"2024-06-10\",\"includeRecommendations\":true}", + "description": "Generate a compliance summary report covering GDPR and HIPAA, including audit findings and improvement recommendations." + }, + { + "inputJson": "{\"regulatoryRequirements\":[\"ISO 27001\"],\"complianceData\":{\"ISO 27001\":{\"status\":\"Compliant\",\"lastReviewed\":\"2024-06-01\",\"responsibleTeam\":\"Security\"}},\"auditFindings\":[],\"reportDate\":\"2024-06-12\",\"includeRecommendations\":false}", + "description": "Create an ISO 27001 compliance summary report without any recommendations, based on the latest review." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "compliance-management.generateSchema", + "description": "Generates a structured compliance schema document based on specified regulatory frameworks, organizational policies, and data fields. Accepts inputs defining compliance standards (e.g., GDPR, HIPAA), relevant policy details, and custom data elements to produce a JSON schema that can be used for validation and audit purposes.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulatoryFrameworks", + "type": "array", + "description": "List of regulatory frameworks to include in the compliance schema, e.g., ['GDPR', 'HIPAA'].", + "required": true, + "defaultValue": "" + }, + { + "name": "includePolicies", + "type": "boolean", + "description": "Flag indicating whether to include organization-specific policies in the schema.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customDataFields", + "type": "array", + "description": "Custom data fields definitions to be included in the schema, each with name and type.", + "required": false, + "defaultValue": "" + }, + { + "name": "schemaFormat", + "type": "string", + "description": "The output schema format, e.g., 'JSON Schema' or 'OpenAPI'.", + "required": false, + "defaultValue": "JSON Schema" + }, + { + "name": "version", + "type": "string", + "description": "Version identifier for the generated schema document.", + "required": false, + "defaultValue": "1.0" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the compliance schema document ready for use in validation and auditing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create standardized compliance schema documents that represent regulatory requirements and company policies. This enables automated validation of documents and data against compliance rules, supporting audit readiness and tracking compliance adherence.", + "limitations": "This tool does not perform actual compliance auditing or validation against live data. It cannot replace legal advice and may require updates as regulations change.", + "examples": [ + "Generate a GDPR and HIPAA combined compliance schema including company policies.", + "Produce a JSON Schema format document with custom data fields for PCI DSS compliance.", + "Create a versioned compliance schema for SOX requirements without including policies." + ] + }, + "tags": [ + "compliance", + "schema-generation", + "regulatory", + "validation", + "documentation", + "policy-management" + ], + "examples": [ + { + "inputJson": "{\"regulatoryFrameworks\":[\"GDPR\",\"HIPAA\"],\"includePolicies\":true,\"customDataFields\":[{\"name\":\"userConsent\",\"type\":\"boolean\"},{\"name\":\"dataRetentionPeriod\",\"type\":\"number\"}],\"schemaFormat\":\"JSON Schema\",\"version\":\"1.0\"}", + "description": "Generate a compliance schema for GDPR and HIPAA including company policies and custom fields for user consent and data retention period in JSON Schema format." + }, + { + "inputJson": "{\"regulatoryFrameworks\":[\"PCI DSS\"],\"includePolicies\":false,\"customDataFields\":[],\"schemaFormat\":\"OpenAPI\",\"version\":\"2.0\"}", + "description": "Create a PCI DSS compliance schema in OpenAPI format without including additional organizational policies, version 2.0." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "compliance-management.generateHeading", + "description": "Generates a regulatory compliance document heading based on the specified compliance area, jurisdiction, document type, and optional subheading details. Accepts inputs defining the context of the compliance document and outputs a formatted heading string suitable for official compliance records or reports.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceArea", + "type": "string", + "description": "The specific regulatory or policy compliance area (e.g., GDPR, HIPAA, SOX) to tailor the heading accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The region or governing body jurisdiction (e.g., EU, US Federal, California) relevant to the compliance heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "The type of compliance document such as 'Policy', 'Report', 'Audit Summary', or 'Checklist' to determine heading style.", + "required": true, + "defaultValue": "" + }, + { + "name": "subheading", + "type": "string", + "description": "Optional additional detail or subtitle to include beneath the main heading to clarify document purpose or scope.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDate", + "type": "boolean", + "description": "Indicates whether to append the current date to the heading for version control and timestamping.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted heading string as 'headingText', ready for inclusion in compliance documents." + }, + "aiAgent": { + "useCase": "This tool is ideal when generating the header or title section of compliance documents across various regulatory domains. AI agents should use it when needing to produce standardized, context-sensitive compliance document headings that reflect compliance area, jurisdiction, and document type, ensuring regulatory consistency and clarity.", + "limitations": "The tool does not generate full compliance documents or detailed content, only the heading element. It cannot verify compliance validity or audit results, nor produce graphical formatting beyond plain text headings.", + "examples": [ + "Generate a heading for a GDPR compliance audit report for the EU jurisdiction.", + "Create a heading for a US Federal HIPAA compliance policy document including a subheading detailing scope.", + "Produce a heading for a California SOX compliance checklist including the current date." + ] + }, + "tags": [ + "compliance", + "document-generation", + "heading", + "regulatory", + "policy", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"complianceArea\":\"GDPR\",\"jurisdiction\":\"EU\",\"documentType\":\"Audit Report\",\"subheading\":\"Data Protection Compliance 2024\",\"includeDate\":true}", + "description": "Generate a GDPR audit report heading for the EU including subheading and date." + }, + { + "inputJson": "{\"complianceArea\":\"HIPAA\",\"jurisdiction\":\"US Federal\",\"documentType\":\"Policy\",\"subheading\":\"Patient Data Security\",\"includeDate\":false}", + "description": "Create a HIPAA policy document heading for US Federal without date inclusion." + }, + { + "inputJson": "{\"complianceArea\":\"SOX\",\"jurisdiction\":\"California\",\"documentType\":\"Checklist\",\"subheading\":\"Quarterly Financial Controls\",\"includeDate\":true}", + "description": "Produce a SOX compliance checklist heading for California jurisdiction with date." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "compliance-management.generateTrend", + "description": "Generates compliance trend analytics by processing historical compliance audit data or policy adherence records. The tool accepts time-series input data outlining compliance results across periods, applies statistical analysis to identify trends, and outputs visualizable trend summaries highlighting areas of improved or declined compliance.", + "category": "compliance-management", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of compliance records each including date/time and compliance status metrics to analyze trends over time.", + "required": true, + "defaultValue": "" + }, + { + "name": "timePeriod", + "type": "string", + "description": "Defines the granularity of trend analysis such as 'daily', 'weekly', 'monthly'.", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "complianceMetric", + "type": "string", + "description": "Specifies which compliance metric or category to focus on, e.g., 'dataPrivacy', 'securityControls'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeForecast", + "type": "boolean", + "description": "If true, include forecasted compliance trends based on historical data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (0-1) for statistical significance in trend predictions; only applicable if includeForecast is true.", + "required": false, + "defaultValue": "0.95" + } + ], + "returns": { + "type": "object", + "description": "An object containing calculated trend statistics, visualizable data points over selected time periods, and optional forecasted compliance trend projections." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing historical compliance audit or monitoring data to identify patterns and trends in compliance adherence over time. It helps highlight improvement opportunities or emerging risks by showing compliance change trajectories.", + "limitations": "Does not perform raw data cleansing or validation; requires properly formatted and reliable historical compliance data. Forecasting accuracy depends on data volume and quality.", + "examples": [ + "Generate a monthly trend report on GDPR compliance based on audit data for the past year.", + "Analyze weekly security control compliance trends and project next quarter's compliance trajectory.", + "Show a daily trend of adherence to HIPAA policies with forecast for the next month." + ] + }, + "tags": [ + "trend analysis", + "compliance", + "audit", + "forecasting", + "analytics", + "policy adherence" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"date\":\"2023-01-01\",\"dataPrivacy\":true},{\"date\":\"2023-02-01\",\"dataPrivacy\":false},{\"date\":\"2023-03-01\",\"dataPrivacy\":true}],\"timePeriod\":\"monthly\",\"complianceMetric\":\"dataPrivacy\",\"includeForecast\":true,\"confidenceLevel\":0.9}", + "description": "Analyze monthly data privacy compliance trend with forecast at 90% confidence over first quarter 2023." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "compliance-management.generateChart", + "description": "This tool generates visual charts that summarize compliance data according to regulatory requirements. It accepts structured compliance metrics, such as audit scores, incident counts, and dates, processes these to create compliance trend or status charts, and outputs them as chart data objects or image URLs to embed in reports or dashboards.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceData", + "type": "array", + "description": "An array of objects representing compliance records, including attributes like date, metric name, and value.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate, e.g., 'line', 'bar', 'pie'.", + "required": true, + "defaultValue": "\"line\"" + }, + { + "name": "title", + "type": "string", + "description": "Title for the generated chart.", + "required": false, + "defaultValue": "\"Compliance Overview\"" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying start and end dates for filtering compliance data, in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "highlightThreshold", + "type": "number", + "description": "A numeric threshold to highlight compliance metrics, such as risk scores above this value.", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output chart, e.g., 'image/png', 'svg', or 'json' for chart data.", + "required": false, + "defaultValue": "\"image/png\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated chart data including URL (if image) or data structure representation of the chart for embedding or display." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visualize compliance-related data to identify trends, risk areas, or verify adherence to regulations over time. It is especially helpful in audit preparations, risk management reviews, and compliance reporting dashboards.", + "limitations": "This tool does not perform compliance data validation or analysis beyond visual aggregation. It cannot generate legal conclusions or automate remediation actions.", + "examples": [ + "Generate a monthly compliance incident count line chart for the last year.", + "Create a pie chart illustrating compliance status distribution across departments.", + "Produce a bar chart highlighting audit scores with thresholds for risk alerting." + ] + }, + "tags": [ + "compliance", + "chart", + "visualization", + "reporting", + "regulatory", + "data", + "management" + ], + "examples": [ + { + "inputJson": "{\"complianceData\":[{\"date\":\"2023-01-01\",\"metric\":\"auditScore\",\"value\":85},{\"date\":\"2023-02-01\",\"metric\":\"auditScore\",\"value\":78},{\"date\":\"2023-03-01\",\"metric\":\"auditScore\",\"value\":90}],\"chartType\":\"line\",\"title\":\"Quarterly Audit Scores\",\"timeRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-03-31\"},\"highlightThreshold\":80,\"outputFormat\":\"image/png\"}", + "description": "Generate a line chart showing audit scores over the first quarter of 2023 with scores above 80 highlighted." + }, + { + "inputJson": "{\"complianceData\":[{\"metric\":\"complianceStatus\",\"category\":\"IT\",\"value\":45},{\"metric\":\"complianceStatus\",\"category\":\"HR\",\"value\":30},{\"metric\":\"complianceStatus\",\"category\":\"Finance\",\"value\":25}],\"chartType\":\"pie\",\"title\":\"Compliance Status by Department\",\"outputFormat\":\"image/png\"}", + "description": "Create a pie chart representing compliance distribution among departments." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "compliance-management.createReference", + "description": "This tool generates a formal compliance reference document that links regulatory requirements or internal policies to relevant compliance activities. It accepts inputs such as regulation identifiers, reference titles, descriptions, related documents, and effective dates, then outputs a structured compliance reference record for audit and tracking purposes.", + "category": "compliance-management", + "parameters": [ + { + "name": "referenceTitle", + "type": "string", + "description": "The official title or name of the compliance reference being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "regulationId", + "type": "string", + "description": "The identifier or code of the regulation or policy this reference relates to (e.g., GDPR Article 5).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the compliance reference content or scope.", + "required": false, + "defaultValue": "" + }, + { + "name": "relatedDocuments", + "type": "array", + "description": "List of document identifiers or URLs that provide additional context or requirements relevant to this reference.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The date from which the reference is considered applicable, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "expirationDate", + "type": "string", + "description": "The date when the reference is no longer applicable or is superseded, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created compliance reference record, including unique ID, timestamps, and input details for audit tracking." + }, + "aiAgent": { + "useCase": "Use this tool when you need to document and create a formal reference linking specific regulatory or policy requirements to compliance activities within an organization. This facilitates audit readiness, traceability of compliance obligations, and documentation management.", + "limitations": "This tool does not automatically interpret or analyze legal text content, nor does it verify compliance status. It only creates structured reference records based on inputs provided.", + "examples": [ + "Create a compliance reference for GDPR data protection obligations under Article 5.", + "Generate a reference linking internal IT security policy requirements to a compliance tracking system.", + "Add a new reference to regulatory updates effective next quarter related to financial compliance." + ] + }, + "tags": [ + "compliance", + "reference", + "regulation", + "policy", + "documentation", + "audit", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"referenceTitle\":\"GDPR Data Protection Principles\",\"regulationId\":\"GDPR Article 5\",\"description\":\"Defines core principles for personal data processing including lawfulness, fairness, transparency.\",\"relatedDocuments\":[\"https://gdpr-info.eu/art-5-gdpr/\"],\"effectiveDate\":\"2018-05-25\"}", + "description": "Create a reference for GDPR Article 5 covering data protection principles." + }, + { + "inputJson": "{\"referenceTitle\":\"Internal IT Security Policy Rev 3\",\"regulationId\":\"ITSEC-2024-Rev3\",\"description\":\"Updated IT security requirements for user access management.\",\"relatedDocuments\":[\"https://company.com/policies/it-security-v3.pdf\"],\"effectiveDate\":\"2024-01-01\",\"expirationDate\":\"2025-01-01\"}", + "description": "Generate a reference for the company's revised IT security policy effective in 2024." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "compliance-management.generateXML", + "description": "Generates a standardized XML document representing compliance reports based on provided compliance data and schema definitions. Accepts structured compliance information as input, applies given XML schema templates, and outputs a valid XML string document suitable for regulatory submissions or internal audits.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceData", + "type": "object", + "description": "Structured object containing compliance metrics, policy adherence data, and audit findings to be serialized into XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "xmlSchema", + "type": "string", + "description": "Optional string containing an XML schema (XSD) to validate or structure the generated XML document.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Flag indicating whether to include a digital signature element placeholder in the generated XML document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "reportName", + "type": "string", + "description": "A descriptive name/title for the compliance report in the XML metadata.", + "required": false, + "defaultValue": "Compliance Report" + }, + { + "name": "version", + "type": "string", + "description": "Version identifier of the compliance report format or data schema to embed in the XML document metadata.", + "required": false, + "defaultValue": "1.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated XML string document, and optionally, validation status or error messages if XML schema was provided and validation failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create formal compliance report documents in XML format for regulatory bodies or internal compliance tracking systems, based on raw compliance data and optionally an XML schema. It is useful in automation workflows that require standardized structured reports adherence.", + "limitations": "This tool does not generate compliance data itself, only serializes provided data into XML. It cannot perform advanced validation beyond schema checking, nor can it apply digital signatures—it only includes signature placeholders.", + "examples": [ + "Generate XML report from compliance audit data for quarterly regulatory submission.", + "Create a compliance XML document validating against a supplied XSD schema.", + "Produce a compliance report XML including a signature block placeholder for later signing." + ] + }, + "tags": [ + "compliance", + "xml", + "report", + "regulatory", + "serialization", + "validation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"complianceData\":{\"company\":\"Acme Corp\",\"auditDate\":\"2024-05-15\",\"findings\":[{\"id\":\"F001\",\"description\":\"Policy A adherence\",\"status\":\"pass\"},{\"id\":\"F002\",\"description\":\"Policy B adherence\",\"status\":\"fail\"}]},\"xmlSchema\":\"\",\"includeSignature\":true,\"reportName\":\"Q2 Compliance Report\",\"version\":\"1.1\"}", + "description": "Generate a compliance XML report including a signature placeholder without schema validation." + }, + { + "inputJson": "{\"complianceData\":{\"company\":\"Beta Ltd\",\"auditDate\":\"2024-06-01\",\"findings\":[]},\"xmlSchema\":\"\",\"includeSignature\":false,\"reportName\":\"Midyear Compliance\",\"version\":\"2.0\"}", + "description": "Produce a compliance XML document validated against a provided simple XML schema." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "compliance-management.generateReference", + "description": "Generates a comprehensive compliance reference document based on a specified regulatory framework and related policies. Accepts input parameters defining the regulation type, jurisdiction, and optional custom policies. Processes the inputs to collate key compliance requirements, definitions, and guidelines, producing a structured reference document for organizational compliance use.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulationType", + "type": "string", + "description": "The specific regulatory framework or standard to generate the reference for, e.g., GDPR, HIPAA, SOX.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The geographic or legal jurisdiction relevant to the compliance reference, e.g., EU, US, global.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeCustomPolicies", + "type": "boolean", + "description": "Flag to include user-defined company policies alongside regulatory requirements.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customPolicies", + "type": "array", + "description": "An optional list of custom policy texts or summaries to include in the reference document if includeCustomPolicies is true.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the reference document, e.g., PDF, Markdown, HTML.", + "required": false, + "defaultValue": "PDF" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated compliance reference document content as a string and metadata including the regulation and jurisdiction info." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate clear, structured compliance reference documents tailored to specific regulatory frameworks and jurisdictions, incorporating organizational custom policies if needed. Ideal for regulatory teams preparing compliance documentation or training materials.", + "limitations": "This tool cannot interpret ambiguous regulations or replace legal advice. It relies on up-to-date input data about regulations and cannot independently verify legal compliance.", + "examples": [ + "Generate a GDPR compliance reference for EU jurisdiction including company data privacy policies.", + "Create a HIPAA compliance summary for US hospitals with no custom policies.", + "Produce a SOX compliance guideline document in Markdown format for US jurisdiction." + ] + }, + "tags": [ + "compliance", + "regulation", + "documentation", + "reference", + "policy", + "management" + ], + "examples": [ + { + "inputJson": "{\"regulationType\":\"GDPR\",\"jurisdiction\":\"EU\",\"includeCustomPolicies\":true,\"customPolicies\":[\"Encrypt all personal data at rest.\",\"Conduct annual privacy training.\"],\"outputFormat\":\"PDF\"}", + "description": "Generate a GDPR compliance reference document for EU jurisdiction including two custom company privacy policies." + }, + { + "inputJson": "{\"regulationType\":\"HIPAA\",\"jurisdiction\":\"US\",\"includeCustomPolicies\":false,\"outputFormat\":\"Markdown\"}", + "description": "Generate a HIPAA compliance reference document for the US without custom policies in Markdown format." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "compliance-management.createHeading", + "description": "Creates a structured heading element for a compliance document or report section based on input parameters such as title text, heading level, and optional subtitle. Outputs a formatted heading object suitable for incorporation into compliance documentation tools.", + "category": "compliance-management", + "parameters": [ + { + "name": "titleText", + "type": "string", + "description": "The main text content of the heading to be displayed. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "headingLevel", + "type": "number", + "description": "The hierarchical level of the heading, e.g., 1 for top-level, 2 for subheading, etc., between 1 and 6. Required.", + "required": true, + "defaultValue": "1" + }, + { + "name": "subtitle", + "type": "string", + "description": "Optional subtitle or secondary text displayed beneath the main heading. Not required.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeNumbering", + "type": "boolean", + "description": "Whether to prefix the heading with automatic numbering based on the level hierarchy. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the structured heading, including text, level, subtitle if any, and numbering prefix if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when generating or formatting compliance documentation or reports that require structured, hierarchical headings to improve readability and organization. Especially useful when dynamically constructing sections or automated report generation in regulatory environments.", + "limitations": "This tool only creates and formats heading elements; it does not validate compliance content or manage full document structure beyond headings.", + "examples": [ + "Create a top-level heading titled 'Security Policies' with numbering.", + "Generate a level 3 heading 'Data Protection Measures' with a subtitle explaining details.", + "Create a simple level 2 heading 'Audit Results' without numbering." + ] + }, + "tags": [ + "compliance", + "document-generation", + "heading", + "formatting", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"titleText\":\"Security Policies\",\"headingLevel\":1,\"subtitle\":\"Updated Q2 2024\",\"includeNumbering\":true}", + "description": "Create a numbered top-level heading with a subtitle for a compliance report section." + }, + { + "inputJson": "{\"titleText\":\"Data Protection Measures\",\"headingLevel\":3,\"subtitle\":\"Details of encryption and access controls\",\"includeNumbering\":false}", + "description": "Create a level 3 heading without numbering including a subtitle for subsection details." + }, + { + "inputJson": "{\"titleText\":\"Audit Results\",\"headingLevel\":2,\"includeNumbering\":false}", + "description": "Create a simple level 2 heading without subtitle and numbering for audit findings section." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "compliance-management.createThreat", + "description": "Creates a detailed threat entry within the compliance management system. Accepts inputs describing the threat's name, description, severity level, affected assets, applicable regulatory frameworks, and mitigation strategies. Processes these inputs to generate a standardized threat record that can be used for compliance tracking, risk analysis, and reporting.", + "category": "compliance-management", + "parameters": [ + { + "name": "threatName", + "type": "string", + "description": "The unique name or identifier for the threat.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the threat including potential impact and characteristics.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity or risk level of the threat (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "Medium" + }, + { + "name": "affectedAssets", + "type": "array", + "description": "List of critical assets, systems, or data impacted by this threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "regulatoryFrameworks", + "type": "array", + "description": "Applicable regulations or compliance frameworks related to the threat (e.g., GDPR, HIPAA).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mitigationStrategies", + "type": "array", + "description": "Recommended actions or controls to mitigate or manage the threat.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Name or identifier of the person or system reporting the threat.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured threat record including a unique threat ID, timestamps, status, and submitted details for tracking and compliance purposes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or receives new threat information relevant to compliance requirements and needs to record it systematically to maintain up-to-date compliance threat registers. This applies in contexts like ongoing risk assessment, audit preparation, or automated security monitoring integration.", + "limitations": "This tool does not perform threat detection or validation; it solely creates threat records from given inputs. It does not automatically update existing threats or link correlated incidents.", + "examples": [ + "Create a new high severity threat involving unauthorized access to customer data relevant to GDPR compliance.", + "Add a medium severity threat affecting payment systems due to phishing vulnerabilities with recommended mitigation steps.", + "Log a newly identified critical threat impacting cloud infrastructure reported by the security monitoring tool." + ] + }, + "tags": [ + "compliance", + "security", + "threat-management", + "risk-assessment", + "regulatory", + "incident-management" + ], + "examples": [ + { + "inputJson": "{\"threatName\":\"Unauthorized Data Access\",\"description\":\"Potential unauthorized access to customer personally identifiable information (PII) impacting GDPR compliance.\",\"severityLevel\":\"High\",\"affectedAssets\":[\"Customer Database\",\"User Authentication Systems\"],\"regulatoryFrameworks\":[\"GDPR\"],\"mitigationStrategies\":[\"Implement multi-factor authentication\",\"Conduct regular access reviews\"],\"reportedBy\":\"Automated Security Scanner\"}", + "description": "Creating a high severity threat related to unauthorized access affecting GDPR compliance." + }, + { + "inputJson": "{\"threatName\":\"Phishing Campaign Targeting Finance Staff\",\"description\":\"Detected phishing emails targeting finance department with credential harvesting attempt.\",\"severityLevel\":\"Medium\",\"affectedAssets\":[\"Finance Email System\"],\"regulatoryFrameworks\":[\"SOX\"],\"mitigationStrategies\":[\"User awareness training\",\"Email filtering rules update\"],\"reportedBy\":\"SOC Analyst\"}", + "description": "Logging a medium severity phishing threat affecting compliance with Sarbanes-Oxley (SOX) regulations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "compliance-management.createIncident", + "description": "Creates a detailed compliance incident record by accepting inputs like incident type, severity, description, impacted systems, and timestamps. Processes the data to generate a standardized incident report conforming to internal and regulatory standards. Outputs a unique incident ID and full incident details for tracking and resolution workflows.", + "category": "compliance-management", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "The category of the compliance incident (e.g., data breach, policy violation).", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity rating of the incident (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed narrative describing the incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "impactedSystems", + "type": "array", + "description": "List of system names or identifiers affected by the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectedTimestamp", + "type": "string", + "description": "ISO 8601 timestamp when the incident was detected.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Identifier or name of the person or system reporting the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment metadata (e.g., file names, URLs) related to the incident.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique incident ID and a summary of all submitted incident details, confirming successful creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to log a new compliance incident during security or policy monitoring activities, ensuring consistent record keeping for audit and response purposes. It assists in structuring incident data and generating identifiers crucial for tracking and compliance reporting.", + "limitations": "This tool does not perform incident analysis or risk assessment; it only creates and stores incident records based on provided input.", + "examples": [ + "Create a new incident record after detecting a data leak affecting customer records.", + "Log a policy violation incident with description and impacted departments.", + "Record a high severity security breach including timestamps and reporter information." + ] + }, + "tags": [ + "compliance", + "incident-management", + "security", + "reporting", + "audit", + "record-keeping" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"Data Breach\",\"severityLevel\":\"High\",\"description\":\"Unauthorized access detected on confidential database.\",\"impactedSystems\":[\"CustomerDB\",\"AuthServer\"],\"detectedTimestamp\":\"2024-06-10T14:25:00Z\",\"reportedBy\":\"automated-monitoring-system\",\"attachments\":[{\"fileName\":\"access_log.txt\"}]}", + "description": "Create a high severity data breach incident with systems impacted and an attachment." + }, + { + "inputJson": "{\"incidentType\":\"Policy Violation\",\"severityLevel\":\"Medium\",\"description\":\"Employee accessed restricted files without authorization.\",\"detectedTimestamp\":\"2024-06-09T09:15:00Z\"}", + "description": "Log a medium severity policy violation with minimal information." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "compliance-management.createAttachment", + "description": "Creates a compliance-related attachment by accepting metadata and file content, validating compliance criteria (such as file type and size limits), and storing the attachment securely. Returns a record with attachment ID, metadata, storage location, and verification status to support regulatory auditing.", + "category": "compliance-management", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the attached file, including extension (e.g., 'report.pdf').", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "The base64-encoded content of the attachment file.", + "required": true, + "defaultValue": "" + }, + { + "name": "mimeType", + "type": "string", + "description": "The MIME type of the attachment (e.g., 'application/pdf').", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedComplianceId", + "type": "string", + "description": "Identifier of the related compliance case, policy, or record this attachment references.", + "required": false, + "defaultValue": "" + }, + { + "name": "uploadedByUserId", + "type": "string", + "description": "User identifier who is uploading or creating the attachment record.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags or labels describing the attachment contents or purpose for easier classification and retrieval.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxFileSizeMb", + "type": "number", + "description": "Maximum allowed file size in megabytes; files larger than this will be rejected.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the attachment ID, metadata summary, storage location URL or path, compliance verification status, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and store attachments related to compliance records ensuring that files meet policy requirements such as allowed file types and size limits. It is ideal for automated compliance workflows where attachments must be linked, verified, and retrievable for audits.", + "limitations": "This tool does not perform content scanning for malware or deep content compliance analysis beyond basic metadata validation. It also does not handle large file optimizations or multi-part uploads.", + "examples": [ + "Create a PDF compliance report attachment linked to case ID 'CMP-12345'.", + "Upload evidence image attachment for a specific policy audit record.", + "Add multiple tagged documents as attachments to a regulatory compliance submission." + ] + }, + "tags": [ + "compliance", + "attachment", + "file-upload", + "audit", + "document-management" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"ComplianceReport.pdf\",\"fileContentBase64\":\"JVBERi0xLjQKJfg...\",\"mimeType\":\"application/pdf\",\"relatedComplianceId\":\"CMP-2024-0001\",\"uploadedByUserId\":\"user_789\",\"tags\":[\"report\",\"2024\"],\"maxFileSizeMb\":10}", + "description": "Uploading a PDF report attachment linked to a specific compliance record." + }, + { + "inputJson": "{\"fileName\":\"AuditPhoto.jpg\",\"fileContentBase64\":\"/9j/4AAQSkZJRgABAQAAAQABAAD...\",\"mimeType\":\"image/jpeg\",\"relatedComplianceId\":\"AUD-5678\",\"uploadedByUserId\":\"auditor_22\",\"tags\":[\"photo\",\"evidence\"]}", + "description": "Adding a photo attachment as evidence for an audit compliance case." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "compliance-management.createHTML", + "description": "Generates a compliance report in HTML format based on provided compliance data and templates. Accepts structured input detailing compliance requirements, audit results, and optional styling parameters, then produces a styled, standards-compliant HTML report suitable for presentation or archiving.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceData", + "type": "object", + "description": "Structured data containing compliance criteria, audit findings, and references to applicable regulations. Required to populate content sections of the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateHTML", + "type": "string", + "description": "Optional HTML template string with placeholders for injecting compliance data. If omitted, a default template with standard sections is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "cssStyles", + "type": "string", + "description": "Optional CSS styles to apply to the generated HTML report for customization of appearance.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag indicating whether to include an executive summary section in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title to display at the top of the compliance report.", + "required": false, + "defaultValue": "Compliance Report" + }, + { + "name": "footerText", + "type": "string", + "description": "Custom footer text to include at the bottom of the report, such as a confidentiality notice or date.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated compliance report as an HTML string under 'htmlReport', ready for rendering or saving." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate formal compliance reports summarizing regulatory adherence and audit findings in a standardized, human-readable HTML format. It helps automate creating reports for legal, regulatory, or internal audit purposes.", + "limitations": "This tool does not validate the accuracy of the compliance data input, nor does it perform compliance assessment. It only formats provided data into an HTML report and does not support exporting to formats other than HTML or complex interactive elements beyond standard HTML/CSS.", + "examples": [ + "Create an HTML compliance report for GDPR audit findings using a custom template.", + "Generate a compliance summary report including executive summary with default styling.", + "Produce a compliance report titled 'Quarterly Compliance Review' with a confidential footer note." + ] + }, + "tags": [ + "compliance", + "HTML", + "reporting", + "automation", + "audit", + "regulatory", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"complianceData\":{\"regulations\":[{\"name\":\"GDPR\",\"status\":\"Compliant\",\"notes\":\"All data processed in accordance with GDPR.\"},{\"name\":\"HIPAA\",\"status\":\"Non-Compliant\",\"notes\":\"Encryption not fully implemented.\"}],\"lastAuditDate\":\"2024-05-15\"},\"templateHTML\":\"\",\"cssStyles\":\"\",\"includeSummary\":true,\"reportTitle\":\"Regional Compliance Report\",\"footerText\":\"Confidential - For internal use only\"}", + "description": "Generate an HTML compliance report using default template and styles, including an executive summary, titled 'Regional Compliance Report' with footer confidentiality notice." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "compliance-management.createChart", + "description": "Creates visual compliance charts based on regulatory data inputs. Accepts an array of compliance metrics and optionally time ranges and categories, processes this data to generate bar, line, or pie charts illustrating compliance status, violations, or trends, and outputs a chart object with data and metadata ready for rendering or reporting.", + "category": "compliance-management", + "parameters": [ + { + "name": "dataPoints", + "type": "array", + "description": "An array of objects representing compliance metrics, each with keys like 'metricName', 'value', and 'timestamp'.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate, e.g., 'bar', 'line', or 'pie'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object with 'startDate' and 'endDate' strings to filter data by date.", + "required": false, + "defaultValue": "" + }, + { + "name": "categories", + "type": "array", + "description": "Optional array of category strings to group or filter the compliance data.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the chart to describe its content.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining chart elements; default is true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a chart object containing the type, processed labels, values, title, legend info, and metadata for use in rendering or embedding in reports." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize compliance data to present trends, summary of violations, or status across multiple metrics for regulatory reporting or internal audits. It helps convert raw compliance data into easily interpretable charts suited for dashboards or presentations.", + "limitations": "This tool does not generate interactive charts or export images directly; it outputs data structures representing charts. It also cannot validate the compliance data correctness or suggest compliance actions.", + "examples": [ + "Create a bar chart showing the number of compliance violations per month for the past year.", + "Generate a pie chart of compliance issue types from the last quarter categorized by severity.", + "Produce a line chart tracking compliance score trends over time filtered by department." + ] + }, + "tags": [ + "compliance", + "chart", + "visualization", + "regulatory", + "reporting", + "management" + ], + "examples": [ + { + "inputJson": "{\"dataPoints\":[{\"metricName\":\"violations\",\"value\":5,\"timestamp\":\"2023-01-15\"},{\"metricName\":\"violations\",\"value\":2,\"timestamp\":\"2023-02-15\"}],\"chartType\":\"bar\",\"timeRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\"},\"title\":\"Monthly Violations 2023\",\"includeLegend\":true}", + "description": "Bar chart of monthly violations for 2023." + }, + { + "inputJson": "{\"dataPoints\":[{\"metricName\":\"issueType\",\"value\":40,\"category\":\"High Severity\"},{\"metricName\":\"issueType\",\"value\":60,\"category\":\"Low Severity\"}],\"chartType\":\"pie\",\"title\":\"Compliance Issues by Severity\",\"includeLegend\":true}", + "description": "Pie chart of compliance issues categorized by severity." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "compliance-management.createPipeline", + "description": "Creates a compliance monitoring pipeline by accepting configuration parameters including source systems, compliance rules, schedules, and notification settings. The tool processes input to generate a structured pipeline definition enabling automated data ingestion, rule evaluation, and alerting for compliance management.", + "category": "compliance-management", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The unique name identifier for the compliance pipeline.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceSystems", + "type": "array", + "description": "A list of source system identifiers or endpoints from which compliance data will be ingested.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceRules", + "type": "array", + "description": "An array of compliance rule objects defining conditions and thresholds to evaluate against ingested data.", + "required": true, + "defaultValue": "" + }, + { + "name": "scheduleCron", + "type": "string", + "description": "A cron expression defining the schedule for pipeline execution to check compliance continuously or at intervals.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationSettings", + "type": "object", + "description": "Configuration object specifying notification channels, recipients, and message templates for compliance alerts.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoRemediation", + "type": "boolean", + "description": "Flag indicating whether the pipeline should automatically trigger remediation actions on compliance violations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata tags and labels for pipeline categorization and management.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the pipeline ID, status, configuration summary, and deployment details after creation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and configure a compliance monitoring pipeline that continuously evaluates data from multiple source systems against specified compliance rules, triggers alerts, and optionally initiates remediation workflows. Ideal for automating regulatory compliance checking and reporting.", + "limitations": "This tool does not execute the pipeline itself; it only creates the pipeline configuration and deployment descriptors. It does not validate the semantic correctness of compliance rules beyond schema validation.", + "examples": [ + "Create a pipeline to monitor access logs from cloud systems against data privacy rules running every hour.", + "Define a compliance pipeline that ingests financial transaction data to detect AML violations and alert compliance officers.", + "Set up a compliance pipeline with notifications via email and Slack when any user activity deviates from company policy." + ] + }, + "tags": [ + "compliance", + "pipeline", + "automation", + "monitoring", + "regulatory", + "rules", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"DataPrivacyPipeline\",\"sourceSystems\":[\"CloudStorage\",\"AccessLogs\"],\"complianceRules\":[{\"id\":\"rule1\",\"description\":\"PII data encryption check\",\"condition\":\"fieldEncrytion==true\"}],\"scheduleCron\":\"0 * * * *\",\"notificationSettings\":{\"channels\":[\"email\"],\"recipients\":[\"compliance@company.com\"]},\"autoRemediation\":false}", + "description": "Create a pipeline named DataPrivacyPipeline that schedules hourly checks on CloudStorage and AccessLogs for PII encryption compliance and sends email alerts." + }, + { + "inputJson": "{\"pipelineName\":\"AMLTransactionMonitor\",\"sourceSystems\":[\"TransactionDB\"],\"complianceRules\":[{\"id\":\"amlRule01\",\"description\":\"Detect transactions > $10,000\",\"condition\":\"transactionAmount>10000\"}],\"scheduleCron\":\"*/15 * * * *\",\"notificationSettings\":{\"channels\":[\"email\",\"slack\"],\"recipients\":[\"aml-team@company.com\",\"#aml-alerts\"]},\"autoRemediation\":true}", + "description": "Set up an AMLTransactionMonitor pipeline to check large transaction compliance every 15 minutes and notify AML team via email and Slack with automatic remediation enabled." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "compliance-management.createSchema", + "description": "Creates a compliance schema based on regulatory requirements and organizational policies. Accepts inputs defining rules, constraints, and data fields. Processes these inputs to generate a structured JSON schema object that can be used for validation and audit purposes, ensuring compliance with specified standards.", + "category": "compliance-management", + "parameters": [ + { + "name": "schemaName", + "type": "string", + "description": "The name identifier for the compliance schema being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief textual description explaining the purpose and scope of the compliance schema.", + "required": false, + "defaultValue": "" + }, + { + "name": "regulations", + "type": "array", + "description": "An array of regulatory identifiers or names (e.g., GDPR, HIPAA) the schema must comply with.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "fields", + "type": "array", + "description": "An array of field definitions, each specifying a compliance-related data attribute with its type and validation rules.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "enforceDefaults", + "type": "boolean", + "description": "Whether to apply default enforcement rules for unspecified fields to maintain compliance integrity.", + "required": false, + "defaultValue": "false" + }, + { + "name": "version", + "type": "string", + "description": "Version number of the schema to track updates or revisions.", + "required": false, + "defaultValue": "1.0" + } + ], + "returns": { + "type": "object", + "description": "Returns the generated compliance schema as a structured JSON object that maps fields, constraints, and regulatory requirements for validation and auditing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to define or update structured compliance schemas tailored to organizational policies or external regulations. Ideal for setting up validation criteria and documentation in compliance management systems.", + "limitations": "This tool generates schema structures but does not perform compliance validation or enforcement itself. It requires accurate input definitions and regulatory references to be effective.", + "examples": [ + "Create a GDPR compliance schema for personal data fields with encryption requirements.", + "Generate a HIPAA data protection schema for healthcare data management.", + "Update an existing compliance schema with new version and additional regulatory fields." + ] + }, + "tags": [ + "compliance", + "schema", + "regulations", + "validation", + "policy", + "management", + "json", + "standards" + ], + "examples": [ + { + "inputJson": "{\"schemaName\":\"GDPRUserData\",\"description\":\"Schema enforcing GDPR compliant user data fields.\",\"regulations\":[\"GDPR\"],\"fields\":[{\"name\":\"email\",\"type\":\"string\",\"required\":true,\"pattern\":\"^\\\\S+@\\\\S+\\\\.\\\\S+$\"},{\"name\":\"consentGiven\",\"type\":\"boolean\",\"required\":true}],\"enforceDefaults\":true,\"version\":\"1.0\"}", + "description": "Creates a GDPR compliance schema defining mandatory user email and consent fields." + }, + { + "inputJson": "{\"schemaName\":\"HIPAAHealthData\",\"description\":\"Schema for HIPAA compliant health record fields.\",\"regulations\":[\"HIPAA\"],\"fields\":[{\"name\":\"patientId\",\"type\":\"string\",\"required\":true},{\"name\":\"medicalHistory\",\"type\":\"array\",\"required\":false}],\"enforceDefaults\":false,\"version\":\"2.1\"}", + "description": "Generates a HIPAA schema for managing patient health data attributes." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "security-tools.analyzeCitation", + "description": "Analyzes the content and metadata of a given citation text or structured citation object to assess its security implications, detect suspicious references, or check for potential integrity risks. Accepts citation strings or JSON objects, processes them to identify anomalies, and outputs a structured security analysis report.", + "category": "security-tools", + "parameters": [ + { + "name": "citation", + "type": "string", + "description": "The citation content as a raw text string or structured JSON string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationFormat", + "type": "string", + "description": "The format of the citation input: \"raw\" for plain text, \"json\" for structured JSON object.", + "required": false, + "defaultValue": "raw" + }, + { + "name": "performIntegrityCheck", + "type": "boolean", + "description": "Whether to validate the integrity of the citation by cross-checking referenced data sources.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the citation text to improve analysis accuracy (e.g., \"en\" for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report including potential security risks, integrity validation results, and suspicious content detection." + }, + "aiAgent": { + "useCase": "Use this tool when needing to verify the trustworthiness and security risks associated with academic, legal, or technical citations in documents, ensuring referenced sources are valid and free from tampering or suspicious anomalies. Ideal for compliance checks, research validation, or threat intelligence.", + "limitations": "This tool does not replace manual review of source materials and cannot access proprietary databases or external sources not included in its knowledge base. It also cannot validate the factual correctness beyond detecting structural anomalies or suspicious patterns.", + "examples": [ + "Analyze this citation for security risks and reference integrity.", + "Check the given JSON citation object for suspicious or malformed references.", + "Validate if the citation text may contain tampered or forged source information." + ] + }, + "tags": [ + "security", + "citation", + "analysis", + "integrity", + "validation", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"citation\":\"Smith J., \"Advanced Cybersecurity Measures,\" Journal of Secure Computing, 2022.\",\"citationFormat\":\"raw\",\"performIntegrityCheck\":true,\"language\":\"en\"}", + "description": "Analyzing a raw citation string with integrity checking enabled." + }, + { + "inputJson": "{\"citation\":\"{\\\"author\\\":\\\"Doe, Jane\\\", \\\"title\\\":\\\"Network Security Fundamentals\\\", \\\"year\\\":2020, \\\"source\\\":\\\"TechPress\\\"}\",\"citationFormat\":\"json\",\"performIntegrityCheck\":false,\"language\":\"en\"}", + "description": "Analyzing a JSON formatted citation without integrity check." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Citation", + "context": null + } + }, + { + "name": "security-tools.downloadAttachment", + "description": "Downloads an email or message attachment securely from a specified URL or message system. Accepts attachment source details and authentication parameters, performs secure connection and validation, then retrieves and returns the attachment file data along with metadata such as filename and MIME type.", + "category": "security-tools", + "parameters": [ + { + "name": "attachmentUrl", + "type": "string", + "description": "The URL or URI where the attachment can be accessed or downloaded from.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authorization token or credentials for accessing the attachment source if required for secure access.", + "required": false, + "defaultValue": "" + }, + { + "name": "expectedMimeType", + "type": "string", + "description": "Optional expected MIME type of the attachment, used to validate content type after download.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds to wait for the attachment download before aborting the request.", + "required": false, + "defaultValue": "30" + }, + { + "name": "verifySsl", + "type": "boolean", + "description": "Whether to verify the SSL certificate when connecting to the attachment URL. Defaults to true for security.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded attachment's binary content encoded as base64, filename, MIME type, and size in bytes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to securely retrieve and verify attachments from remote sources such as email servers, message systems, or secure URLs. It is suited for scenarios requiring validated downloads with optional authentication and SSL verification to ensure security and integrity before further processing.", + "limitations": "Does not handle attachments embedded inside documents or complex formats like emails themselves; it downloads binary files only. Does not perform virus scanning or content inspection beyond MIME type verification.", + "examples": [ + "Download the attachment from this secure email link using the provided OAuth token.", + "Fetch the PDF file attachment stored at the given HTTPS URL verifying its MIME type and SSL certificate.", + "Retrieve the image attachment from a message queue URL with a 10-second timeout without SSL verification." + ] + }, + "tags": [ + "download", + "attachment", + "security", + "email", + "authentication", + "file-transfer" + ], + "examples": [ + { + "inputJson": "{\"attachmentUrl\":\"https://secureemail.example.com/attachments/12345\",\"authToken\":\"Bearer abcdef123456\",\"expectedMimeType\":\"application/pdf\",\"timeoutSeconds\":20,\"verifySsl\":true}", + "description": "Download a PDF attachment securely from an email server with OAuth authentication and SSL verification." + }, + { + "inputJson": "{\"attachmentUrl\":\"https://files.example.net/images/photo.jpeg\",\"timeoutSeconds\":10,\"verifySsl\":true}", + "description": "Download a JPEG image attachment from a secure HTTPS URL with default timeout and SSL verification." + }, + { + "inputJson": "{\"attachmentUrl\":\"http://intranetsite.local/attachments/doc.docx\",\"verifySsl\":false}", + "description": "Download a Word document attachment from an internal HTTP server without SSL verification." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Attachment", + "context": null + } + }, + { + "name": "security-tools.downloadHTML", + "description": "Downloads the HTML content from a specified secure URL, optionally including authentication headers or cookies, and returns the raw HTML string. It supports HTTPS URLs and allows setting custom request headers, making it suitable for securely retrieving web pages for security analysis or automated monitoring.", + "category": "security-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The HTTPS URL of the web page to download HTML from.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeCredentials", + "type": "boolean", + "description": "Whether to send credentials such as cookies or HTTP authentication headers with the request.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customHeaders", + "type": "object", + "description": "Optional object of additional HTTP headers to include in the request, e.g., Authorization tokens.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before aborting.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the raw HTML string downloaded and metadata like the final resolved URL and status code." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to fetch raw HTML content from secure web resources, especially when authentication or custom headers are required to access the page. Useful for security audits, web monitoring, or data collection workflows that require secure, authenticated retrieval of HTML.", + "limitations": "Cannot execute or interpret JavaScript on the page; does not render dynamic content generated client-side. Also, cannot bypass captchas or advanced bot detection mechanisms.", + "examples": [ + "Download the HTML of a login-protected dashboard using an authorization token.", + "Fetch HTML content from a secure HTTPS page with session cookies included.", + "Retrieve the homepage HTML with a 10-second timeout and no credentials." + ] + }, + "tags": [ + "download", + "HTML", + "security", + "web-scraping", + "authenticated-access", + "https" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://secure.example.com/dashboard\",\"includeCredentials\":true,\"customHeaders\":{\"Authorization\":\"Bearer abcdef123456\"},\"timeoutSeconds\":20}", + "description": "Download HTML content from a secure dashboard page requiring Bearer token authentication and credentials included." + }, + { + "inputJson": "{\"url\":\"https://example.com/public-page\",\"includeCredentials\":false,\"customHeaders\":{},\"timeoutSeconds\":10}", + "description": "Download HTML content from a public HTTPS page without credentials or custom headers." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "HTML", + "context": null + } + }, + { + "name": "security-tools.uploadXML", + "description": "Uploads an XML file to a secure validation and storage service. Accepts XML content as string input, validates it against provided or default XML schemas, optionally encrypts before storage, and returns a status report including validation errors and storage confirmation.", + "category": "security-tools", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "The full XML content to be uploaded and validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaUrls", + "type": "array", + "description": "An optional list of URLs pointing to XML schema definitions (XSD) to validate the XML against. If empty, a default schema is used.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "encryptBeforeStorage", + "type": "boolean", + "description": "Whether to encrypt the XML data before storing it. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "storageLocation", + "type": "string", + "description": "The target location or identifier where the XML file should be stored after validation, such as a database or cloud bucket name.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating if an existing XML file at the storage location should be overwritten. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object detailing success status, validation messages, and storage confirmation with file identifier or error details" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to securely upload XML data to a managed service that validates XML against schemas, applies optional encryption, and stores the content reliably. It helps ensure XML data integrity and compliance before storage or further processing.", + "limitations": "This tool does not perform XML content modification or complex business logic transformations. It is only for validation, optional encryption, and storage. It cannot repair invalid XML or infer missing schema definitions.", + "examples": [ + "Upload a customer data XML file validated against a provided schema and store it encrypted in cloud storage.", + "Send an XML configuration file for validation using default schema and store without encryption, overwriting existing data.", + "Upload a large batch XML report with no encryption and validate against multiple schemas before storage." + ] + }, + "tags": [ + "upload", + "xml", + "validation", + "security", + "encryption", + "storage", + "xml-schema" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"1234100.00\",\"schemaUrls\":[\"https://example.com/schemas/order.xsd\"],\"encryptBeforeStorage\":true,\"storageLocation\":\"secure-cloud-bucket\",\"overwriteExisting\":false}", + "description": "Upload and validate an order XML with encryption to a secure cloud bucket." + }, + { + "inputJson": "{\"xmlContent\":\"30\",\"schemaUrls\":[],\"encryptBeforeStorage\":false,\"storageLocation\":\"config-database\",\"overwriteExisting\":true}", + "description": "Validate a config XML against the default schema and overwrite existing storage without encryption." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "XML", + "context": null + } + }, + { + "name": "security-tools.renderLink", + "description": "Renders a secure HTML anchor element from a given URL with security best practices such as rel=\"noopener noreferrer\" and optional target attributes. Accepts the link URL, optional display text, target window, and CSS classes, and outputs a sanitized HTML link string safe for embedding in web pages.", + "category": "security-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL to render as a secure link, must be a well-formed web or mailto URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "Optional text to display as the link content; if empty, the URL itself is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "If true, the link will include target=\"_blank\" to open in a new browser tab.", + "required": false, + "defaultValue": "false" + }, + { + "name": "cssClasses", + "type": "string", + "description": "Optional space-separated list of CSS class names to add to the anchor element.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML anchor tag string with security attributes, safe for direct insertion into web pages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate safe, secure HTML anchor elements from arbitrary URLs, ensuring protection against common web vulnerabilities such as reverse tabnabbing by including rel attributes and optional target behavior. Ideal for dynamically generating links in user interfaces with customizable display text and styling.", + "limitations": "This tool does not validate the safety or trustworthiness of the URL beyond basic formatting checks. It does not sanitize complex HTML or non-link inputs. It assumes trusted input or prior sanitization for displayText and cssClasses parameters to avoid XSS.", + "examples": [ + "Generate a link to 'https://example.com' with display text 'Visit Example', opening in a new tab with custom CSS classes.", + "Render a mailto link without display text (defaults to URL) opening in the same tab.", + "Create a link to a secure HTTPS site with no target attribute and no additional classes." + ] + }, + "tags": [ + "security", + "rendering", + "html", + "link", + "web", + "ui", + "safety" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"Visit Example\",\"openInNewTab\":true,\"cssClasses\":\"btn btn-primary\"}", + "description": "Render an external link opening in a new tab with styling classes." + }, + { + "inputJson": "{\"url\":\"mailto:contact@example.com\",\"displayText\":\"Email Us\",\"openInNewTab\":false,\"cssClasses\":\"\"}", + "description": "Render a mailto link with display text and no target or classes." + }, + { + "inputJson": "{\"url\":\"https://secure-site.org\",\"displayText\":\"\",\"openInNewTab\":false,\"cssClasses\":\"secure-link\"}", + "description": "Render link showing URL as text, with CSS class and no new tab." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Link", + "context": null + } + }, + { + "name": "security-tools.renderVideo", + "description": "Renders a video file by applying specified security overlays such as watermarks, timestamps, and access authentication cues. Accepts a video file input and security configuration parameters, processes the video accordingly, and outputs a secured video file ready for distribution or monitoring.", + "category": "security-tools", + "parameters": [ + { + "name": "inputVideoPath", + "type": "string", + "description": "File path or URL to the input video to be secured and rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputVideoPath", + "type": "string", + "description": "Destination file path for the rendered secure video.", + "required": true, + "defaultValue": "" + }, + { + "name": "watermarkText", + "type": "string", + "description": "Text content to render as a watermark on the video frame (e.g., company name).", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "watermarkPosition", + "type": "string", + "description": "Position on the video to place the watermark (e.g., 'top-left', 'bottom-right').", + "required": false, + "defaultValue": "\"bottom-right\"" + }, + { + "name": "showTimestamp", + "type": "boolean", + "description": "Whether to overlay the current date and time on the video frames.", + "required": false, + "defaultValue": "false" + }, + { + "name": "enableAccessAuthCue", + "type": "boolean", + "description": "Whether to embed visual cues signaling access authentication status during rendering.", + "required": false, + "defaultValue": "false" + }, + { + "name": "videoFormat", + "type": "string", + "description": "Format for the output video file (e.g., 'mp4', 'mov', 'avi').", + "required": false, + "defaultValue": "\"mp4\"" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frame rate (frames per second) for the output video (valid for re-encoding).", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object with metadata about the rendered video, including file path, format, size in bytes, duration in seconds, and a success boolean indicating whether rendering completed without error." + }, + "aiAgent": { + "useCase": "Use this tool when you need to prepare video content that requires embedded security measures such as watermarks to indicate ownership, timestamps for audit trail purposes, or visual cues that denote access authorization. It is ideal when distributing sensitive video to ensure traceability and discourage unauthorized use.", + "limitations": "This tool cannot handle real-time video streaming overlays or encrypt the video content for DRM. It also does not perform video content analysis or automatic tampering detection.", + "examples": [ + "Render a corporate training video adding a watermark 'Company Confidential' at the bottom-right and show timestamps.", + "Render a surveillance video with no watermark but include timestamps and an access authentication visual cue.", + "Convert an input AVI video to MP4 format with a watermark in top-left corner without timestamps." + ] + }, + "tags": [ + "rendering", + "video", + "security", + "watermark", + "timestamp", + "access-control" + ], + "examples": [ + { + "inputJson": "{\"inputVideoPath\":\"/videos/raw_surveillance.avi\",\"outputVideoPath\":\"/videos/secured_surveillance.mp4\",\"watermarkText\":\"Company Confidential\",\"watermarkPosition\":\"bottom-right\",\"showTimestamp\":true,\"enableAccessAuthCue\":true,\"videoFormat\":\"mp4\",\"frameRate\":25}", + "description": "Render a surveillance video with watermark, timestamps, and access authentication cues." + }, + { + "inputJson": "{\"inputVideoPath\":\"/media/training.mov\",\"outputVideoPath\":\"/media/training_secured.mov\",\"watermarkText\":\"Internal Use Only\",\"watermarkPosition\":\"top-left\",\"showTimestamp\":false,\"enableAccessAuthCue\":false,\"videoFormat\":\"mov\",\"frameRate\":30}", + "description": "Render a training video with a watermark only, no timestamps or extra cues." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Video", + "context": null + } + }, + { + "name": "security-tools.renderDashboard", + "description": "Renders a customizable security analytics dashboard by accepting data sources such as logs or vulnerability reports. Processes and aggregates security metrics, visualizes trends, and outputs an interactive dashboard enabling monitoring of security posture in real time.", + "category": "security-tools", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of security data sources to include in dashboard (e.g., log file paths, API endpoints).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Time range filter with 'start' and 'end' ISO datetime strings to scope the data included.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Specific security metrics or KPIs to visualize (e.g., 'failedLogins', 'openVulnerabilities').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "visualizationType", + "type": "string", + "description": "Preferred chart type for the dashboard (e.g., 'bar', 'line', 'pie').", + "required": false, + "defaultValue": "\"line\"" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Time in seconds for automatic dashboard refresh; 0 disables auto-refresh.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeAlertSummary", + "type": "boolean", + "description": "Whether to include a summary section for recent security alerts and incidents.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An interactive dashboard object containing rendered visualizations, metrics summary, and configuration metadata suitable for embedding or further customization." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a consolidated, visual representation of security-relevant data from diverse sources to monitor vulnerabilities, incidents, and security events over time. This helps in proactive security management, status reporting, and anomaly detection.", + "limitations": "This tool does not perform raw data analysis or vulnerability scanning itself; it only visualizes already processed security data. It also cannot replace specialized SIEM or full security orchestration platforms.", + "examples": [ + "Render a dashboard with failed login attempts and open vulnerabilities for the past 7 days.", + "Create a dashboard visualizing recent security alerts with pie charts updating every 5 minutes.", + "Generate a dashboard from multiple log sources focusing on anomaly trends over the last month." + ] + }, + "tags": [ + "security", + "dashboard", + "visualization", + "analytics", + "monitoring", + "vulnerabilities", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[\"/var/log/auth.log\",\"api://vuln-reports\"],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"metrics\":[\"failedLogins\",\"openVulnerabilities\"],\"visualizationType\":\"line\",\"refreshInterval\":300,\"includeAlertSummary\":true}", + "description": "Render a dashboard showing failed logins and open vulnerabilities from specified logs and API for the past week, using line charts refreshing every 5 minutes including alert summary." + }, + { + "inputJson": "{\"dataSources\":[\"/var/log/security.log\"],\"metrics\":[\"intrusionAttempts\"],\"visualizationType\":\"bar\",\"refreshInterval\":0,\"includeAlertSummary\":false}", + "description": "Create a static dashboard visualizing intrusion attempts as bar charts from a security log without auto-refresh or alert summaries." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Dashboard", + "context": null + } + }, + { + "name": "security-tools.formatReference", + "description": "Formats security-related references such as vulnerability IDs, CVE identifiers, and security standards citations into consistent, standardized text or markup formats for documentation, reports, or code comments. Accepts raw reference strings or objects and outputs formatted reference strings per specified style.", + "category": "security-tools", + "parameters": [ + { + "name": "referenceInput", + "type": "string", + "description": "The raw security reference string or identifier to format, e.g., 'CVE-2021-12345' or 'NIST SP 800-53'.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputType", + "type": "string", + "description": "Type of the reference provided (e.g., 'CVE', 'NIST', 'OWASP', or 'custom') to guide formatting rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the formatted reference, such as 'plainText', 'markdown', or 'html'.", + "required": false, + "defaultValue": "plainText" + }, + { + "name": "includeLink", + "type": "boolean", + "description": "Whether to include a hyperlink to a relevant authoritative source when applicable (e.g., link to CVE database).", + "required": false, + "defaultValue": "true" + }, + { + "name": "customTemplate", + "type": "string", + "description": "Optional custom format template string with placeholders to format the reference (overrides default formatting).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "The formatted reference string according to the requested style and options, including optional hyperlinked or marked-up versions as string fields: 'formattedString'. Contains 'rawReference' echoing original input." + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize security references for consistent presentation in reports, documentation, or source code comments. It helps ensure security references conform to organizational or industry formatting standards and optionally enriches references with contextual hyperlinks to authoritative sources.", + "limitations": "This tool does not validate the existence or correctness of the reference identifiers themselves, only formats given inputs. It cannot fetch real-time data about references or certify their accuracy.", + "examples": [ + "Format a CVE identifier as markdown with hyperlink to the official CVE website.", + "Convert a NIST publication reference into HTML with a clickable link.", + "Format a custom security standard citation using a provided template without hyperlinks." + ] + }, + "tags": [ + "security", + "formatting", + "reference", + "CVE", + "NIST", + "documentation", + "markup" + ], + "examples": [ + { + "inputJson": "{\"referenceInput\":\"CVE-2021-44228\",\"inputType\":\"CVE\",\"outputFormat\":\"markdown\",\"includeLink\":true}", + "description": "Formats the CVE identifier into markdown with a hyperlink to the CVE details page." + }, + { + "inputJson": "{\"referenceInput\":\"NIST SP 800-53 Revision 5\",\"inputType\":\"NIST\",\"outputFormat\":\"html\",\"includeLink\":true}", + "description": "Formats the NIST publication reference in HTML with a link to the official publication." + }, + { + "inputJson": "{\"referenceInput\":\"OWASP Top 10 2021\",\"inputType\":\"OWASP\",\"outputFormat\":\"plainText\",\"includeLink\":false}", + "description": "Formats the OWASP reference as plain text without any hyperlink." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Reference", + "context": null + } + }, + { + "name": "security-tools.draftLink", + "description": "This tool assists in drafting secure and appropriately formatted hyperlinks for use in web applications and emails. It accepts inputs including the raw URL, optional link text, and attributes like target and rel tags. It outputs a fully constructed HTML anchor tag string optimized for security best practices (e.g., preventing phishing via rel=\"noopener noreferrer\").", + "category": "security-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The raw URL to be linked. Must be a valid HTTP or HTTPS URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkText", + "type": "string", + "description": "The visible text for the hyperlink. If not provided, the URL itself is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Whether the link should open in a new browser tab or window (i.e., target=\"_blank\"). Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "addRelNoopener", + "type": "boolean", + "description": "If true and openInNewTab is true, adds rel=\"noopener noreferrer\" to the link for security.", + "required": false, + "defaultValue": "true" + }, + { + "name": "cssClass", + "type": "string", + "description": "Optional CSS class attribute for styling the link.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully constructed HTML anchor tag string with all specified attributes and security best practices applied." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate secure, standardized HTML links from raw URLs and optional display texts, ensuring attributes follow security best practices like preventing tab-nabbing attacks. Handy when drafting emails, web pages, or app interfaces dynamically requiring safe links.", + "limitations": "This tool only drafts HTML anchor tags; it does not validate the destination website's safety or check URL reputation. It does not support other link formats like Markdown or BBCode.", + "examples": [ + "Create a secure link to https://example.com that opens in a new tab with link text 'Visit Example'.", + "Generate a simple hyperlink for the URL https://openai.com without additional attributes.", + "Draft a link with custom CSS class 'button-link' that opens in the same tab." + ] + }, + "tags": [ + "security", + "link", + "html", + "anchor", + "web", + "drafting", + "sanitization" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"linkText\":\"Visit Example\",\"openInNewTab\":true}", + "description": "Drafts a secure link to example.com that opens in a new tab with custom link text." + }, + { + "inputJson": "{\"url\":\"https://openai.com\"}", + "description": "Creates a basic hyperlink using the URL as link text, opening in the same tab." + }, + { + "inputJson": "{\"url\":\"https://secure.site\",\"linkText\":\"Secure Site\",\"cssClass\":\"button-link\"}", + "description": "Generates a link with a CSS class for styling, opening in the same window." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Link", + "context": null + } + }, + { + "name": "security-tools.formatSpec", + "description": "Formats security specification documents such as security policies, compliance requirements, or threat models. It accepts input text or JSON representing the spec, normalizes field names, standardizes layout and indentation, and outputs a consistently structured, human-readable security spec document in JSON or YAML format.", + "category": "security-tools", + "parameters": [ + { + "name": "inputSpec", + "type": "string", + "description": "The raw security specification document content to be formatted, in JSON, YAML, or plain text form.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input spec: 'json', 'yaml', or 'text'. Determines the parsing method before formatting.", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted security specification: 'json' or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces per indentation level in the output document for readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "normalizeFieldNames", + "type": "boolean", + "description": "When true, converts field names to a consistent camelCase naming convention.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "When true, preserves or adds explanatory comments in the output spec where applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted specification as a string and metadata about the formatting process." + }, + "aiAgent": { + "useCase": "Use when you have security-related specification documents—which may be inconsistently formatted or named—and need a clean, standardized version to improve readability, merge with other specs, or prepare for automated analysis or policy enforcement tools.", + "limitations": "Cannot validate the semantic correctness of the content; only formats structure and style. Complex comments in source text may not be perfectly preserved when converting formats.", + "examples": [ + "Format a raw JSON security policy spec to standardized YAML with indentations.", + "Convert a YAML threat model spec to normalized JSON format with camelCase fields.", + "Format plain text security compliance requirements document into structured JSON format." + ] + }, + "tags": [ + "security", + "formatting", + "specification", + "policy", + "compliance", + "yaml", + "json" + ], + "examples": [ + { + "inputJson": "{\"inputSpec\":\"{\\\"Policy Name\\\": \\\"Access Control\\\", \\\"rules\\\": [{\\\"RuleID\\\": 1, \\\"Description\\\": \\\"Only authorized users can access\\\"}]}\",\"inputFormat\":\"json\",\"outputFormat\":\"yaml\",\"indentation\":4,\"normalizeFieldNames\":true,\"includeComments\":false}", + "description": "Convert a JSON security policy spec to nicely formatted YAML with camelCase field names and 4-space indentations" + }, + { + "inputJson": "{\"inputSpec\":\"text: Backup encryption enabled\\ntype: Compliance Requirement\",\"inputFormat\":\"text\",\"outputFormat\":\"json\",\"indentation\":2,\"normalizeFieldNames\":false,\"includeComments\":true}", + "description": "Format a plain text compliance requirement into JSON, preserving comments where applicable" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Spec", + "context": null + } + }, + { + "name": "security-tools.composeReply", + "description": "This tool accepts a security-related inquiry or incident report along with context and composes a clear, professional, and informative reply message. It processes the input by analyzing the issue details and generates an appropriate response to be sent to stakeholders or affected parties. The output is a textual reply suitable for communication in security operations or incident handling.", + "category": "security-tools", + "parameters": [ + { + "name": "inquiryText", + "type": "string", + "description": "The original security inquiry or incident description to respond to.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextDetails", + "type": "string", + "description": "Additional context or background information relevant to the inquiry, such as system affected or incident severity.", + "required": false, + "defaultValue": "" + }, + { + "name": "responseTone", + "type": "string", + "description": "Desired tone of the response: e.g., formal, reassuring, technical, concise.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include suggested next steps or recommendations in the reply.", + "required": false, + "defaultValue": "true" + }, + { + "name": "recipientRole", + "type": "string", + "description": "Role of the recipient (e.g., user, manager, security team) to tailor the reply appropriately.", + "required": false, + "defaultValue": "user" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed reply message string with optional metadata such as tone and length." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a secure, professional reply to a security-related question, alert, or incident report. Ideal for automating responses that require accurate, context-aware communication to users or stakeholders regarding security events or inquiries.", + "limitations": "This tool cannot independently verify facts or perform active incident investigation; it only composes replies based on provided inputs and context. It may not replace expert human judgment for sensitive or critical communication.", + "examples": [ + "Compose a reply to a user reporting suspicious login activity.", + "Generate a response to a security alert explaining the issue to management.", + "Write a reassuring message to an employee about a detected phishing attempt." + ] + }, + "tags": [ + "security", + "communication", + "incident-response", + "automated-reply", + "professional", + "context-aware" + ], + "examples": [ + { + "inputJson": "{\"inquiryText\":\"There was an unusual login attempt detected on my account last night. Is my data safe?\",\"contextDetails\":\"User account: john.doe@example.com. Location: Unknown IP from foreign country.\",\"responseTone\":\"reassuring\",\"includeRecommendations\":true,\"recipientRole\":\"user\"}", + "description": "Compose a reassuring and informative reply to a user concerned about an unusual login attempt." + }, + { + "inputJson": "{\"inquiryText\":\"What steps are we taking regarding the recent ransomware alert on server 12?\",\"contextDetails\":\"Server 12 detected unusual encryption activity at 03:00 AM.\",\"responseTone\":\"formal\",\"includeRecommendations\":true,\"recipientRole\":\"manager\"}", + "description": "Write a formal, detailed reply to a manager about actions taken on a ransomware alert." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Reply", + "context": null + } + }, + { + "name": "security-tools.composeHeading", + "description": "Generates a concise, clear security-related heading for documentation, reports, or alerts based on a given security topic and context. Accepts inputs describing the security focus and desired tone, and outputs a formatted heading string suitable for professional security materials.", + "category": "security-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Primary security topic or subject to include in the heading (e.g., 'Vulnerability Assessment','Incident Response').", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Additional context or details to refine the heading (e.g., 'monthly report', 'critical alert').", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the heading, affecting its formality and style (options: 'formal', 'informal', 'urgent').", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the heading to ensure it fits typical display or report constraints.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed heading string under the property 'heading'." + }, + "aiAgent": { + "useCase": "Use this tool when generating security documentation, reports, dashboards, or alert messages that require a clear, relevant heading emphasizing the security topic and fitting a specified style and length. Helps maintain consistent, descriptive titles across security communications.", + "limitations": "This tool does not generate full content or detailed explanations; it only composes a heading line based on input parameters. It cannot interpret detailed security data nor produce multi-line titles.", + "examples": [ + "Generate a heading for a vulnerability assessment monthly report with a formal tone.", + "Create an urgent heading for a critical security breach alert.", + "Compose a short, informal heading for an incident response update." + ] + }, + "tags": [ + "security", + "heading", + "documentation", + "reporting", + "alerts", + "composition", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Vulnerability Assessment\",\"context\":\"monthly report\",\"tone\":\"formal\",\"maxLength\":50}", + "description": "Generate a formal heading for a monthly vulnerability assessment report, limited to 50 characters." + }, + { + "inputJson": "{\"topic\":\"Critical Security Alert\",\"context\":\"data breach detected\",\"tone\":\"urgent\",\"maxLength\":60}", + "description": "Create an urgent heading for an alert about a detected data breach with a max length of 60 characters." + }, + { + "inputJson": "{\"topic\":\"Incident Response\",\"tone\":\"informal\",\"maxLength\":40}", + "description": "Compose a short, informal heading for an incident response update, maximum 40 characters." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Heading", + "context": null + } + }, + { + "name": "security-tools.generateCitation", + "description": "Generates a standardized security citation or reference for a vulnerability, security standard, tool, or report based on given input data such as title, author(s), publication date, and source. Processes input metadata to produce correctly formatted citations in styles like APA, IEEE, or custom formats, facilitating proper attribution in security documentation.", + "category": "security-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the security document, report, standard, or vulnerability being cited.", + "required": true, + "defaultValue": "" + }, + { + "name": "authors", + "type": "array", + "description": "List of author names or organizations responsible for the cited work.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "publicationDate", + "type": "string", + "description": "The publication or release date in ISO format (YYYY-MM-DD) of the cited work.", + "required": false, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "The source or publisher of the document, such as a website, journal, or organization name.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style format (e.g., 'APA', 'IEEE', 'MLA') to format the output citation.", + "required": false, + "defaultValue": "APA" + }, + { + "name": "url", + "type": "string", + "description": "URL link to the original document or security report, if applicable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted citation string ready to be included in security documentation or reports." + }, + "aiAgent": { + "useCase": "Use this tool when composing security documentation, reports, or compliance materials that require accurately formatted citations of vulnerabilities, standards, or security research. It automates citation formatting and reduces manual errors or inconsistencies.", + "limitations": "Cannot generate citations for documents lacking sufficient metadata or for unpublished works without bibliographic data. Does not perform fact verification or fetch metadata automatically; input data must be provided.", + "examples": [ + "Generate an APA citation for a security vulnerability report titled 'Heartbleed Vulnerability Analysis' authored by 'OpenSSL Team' published on 2014-04-07 with the source 'OpenSSL Foundation'.", + "Create an IEEE style citation for a security standard titled 'NIST Cybersecurity Framework' published in 2018 by NIST and available at the official website.", + "Provide a citation in MLA format for a security blog post on 'Modern ransomware tactics' authored by 'Jane Doe' published on 2023-02-15." + ] + }, + "tags": [ + "security", + "citation", + "documentation", + "formatting", + "standards", + "research" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Heartbleed Vulnerability Analysis\",\"authors\":[\"OpenSSL Team\"],\"publicationDate\":\"2014-04-07\",\"source\":\"OpenSSL Foundation\",\"citationStyle\":\"APA\",\"url\":\"https://openssl.org/news/secadv/20140407.txt\"}", + "description": "Generate an APA style citation for the Heartbleed vulnerability report." + }, + { + "inputJson": "{\"title\":\"NIST Cybersecurity Framework\",\"authors\":[\"National Institute of Standards and Technology\"],\"publicationDate\":\"2018-04-16\",\"source\":\"NIST\",\"citationStyle\":\"IEEE\",\"url\":\"https://www.nist.gov/cyberframework\"}", + "description": "Generate an IEEE citation for the NIST Cybersecurity Framework document." + }, + { + "inputJson": "{\"title\":\"Modern ransomware tactics\",\"authors\":[\"Jane Doe\"],\"publicationDate\":\"2023-02-15\",\"source\":\"Security Insights Blog\",\"citationStyle\":\"MLA\",\"url\":\"https://securityinsights.example.com/ransomware-tactics\"}", + "description": "Create an MLA style citation for a recent security blog post." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Citation", + "context": null + } + }, + { + "name": "security-tools.generateChecklist", + "description": "Generates a comprehensive security checklist document tailored to specified application type, deployment environment, and security standards. Accepts configuration details as input, processes relevant best practices and compliance requirements, and outputs a structured checklist highlighting key security controls and validation steps.", + "category": "security-tools", + "parameters": [ + { + "name": "applicationType", + "type": "string", + "description": "Type of application (e.g., web, mobile, API) for which the security checklist is generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Deployment environment context (e.g., cloud, on-premises, hybrid) to customize the checklist accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "securityStandards", + "type": "array", + "description": "List of security standards or frameworks (e.g., OWASP, NIST, ISO27001) to align the checklist with.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeAutomationChecks", + "type": "boolean", + "description": "Flag to include automated security validation steps such as vulnerability scanning or code analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customRequirements", + "type": "string", + "description": "Optional text describing any custom security requirements or focus areas to incorporate in the checklist.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated security checklist structured by categories, with each item detailing description, recommended action, and compliance references." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to produce detailed, standardized security checklists customized for different application types and environments to support secure development and deployment practices. It helps ensure all relevant security controls and compliance points are covered systematically.", + "limitations": "Cannot dynamically assess actual system state or vulnerabilities; the checklist is static guidance and must be supplemented with real-time security tools and expert review.", + "examples": [ + "Generate a security checklist for a web application deployed on cloud following OWASP top 10 standards.", + "Create a security checklist for an on-premises API service including NIST compliance points and automation checks.", + "Produce a tailored checklist for a mobile app incorporating ISO27001 controls and specifying custom requirements for data encryption." + ] + }, + "tags": [ + "security", + "checklist", + "compliance", + "best-practices", + "documentation", + "automation", + "standards" + ], + "examples": [ + { + "inputJson": "{\"applicationType\":\"web\",\"deploymentEnvironment\":\"cloud\",\"securityStandards\":[\"OWASP Top 10\"],\"includeAutomationChecks\":true,\"customRequirements\":\"Focus on data privacy and input validation\"}", + "description": "Generate a cloud web app security checklist aligned with OWASP Top 10 including automation checks and additional focus on privacy and input validation." + }, + { + "inputJson": "{\"applicationType\":\"API\",\"deploymentEnvironment\":\"on-premises\",\"securityStandards\":[\"NIST SP 800-53\"],\"includeAutomationChecks\":false,\"customRequirements\":\"Ensure logging and audit trails\"}", + "description": "Generate an on-premises API security checklist aligned with NIST standards excluding automation checks but emphasizing logging." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Checklist", + "context": null + } + }, + { + "name": "security-tools.generateForecast", + "description": "Generates a forecast of potential security threats and vulnerabilities for a business based on historical incident data, current security posture, and industry trends. Accepts data inputs including incident logs, system configurations, and threat feeds, processes combined risk factors, and outputs a prioritized, time-bound security risk forecast report.", + "category": "security-tools", + "parameters": [ + { + "name": "historicalIncidentData", + "type": "array", + "description": "Array of past security incident records including severity, type, and resolution status", + "required": true, + "defaultValue": "" + }, + { + "name": "currentSecurityPosture", + "type": "object", + "description": "Structured object detailing current security controls, policies, and system configurations", + "required": true, + "defaultValue": "" + }, + { + "name": "industryThreatTrends", + "type": "array", + "description": "Recent industry-specific threat intelligence data including emerging vulnerabilities and exploits", + "required": false, + "defaultValue": "[]" + }, + { + "name": "forecastTimeframeDays", + "type": "number", + "description": "Number of days to project security threats into the future", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeMitigationRecommendations", + "type": "boolean", + "description": "Flag to include actionable mitigation steps in the forecast report", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured forecast report containing a prioritized list of potential security threats, likelihood estimates, risk impact scores, recommended mitigation actions (optional), and timeframe projections" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to anticipate upcoming security risks for a business by analyzing past incidents, current security status, and external threat intelligence to help proactively prioritize security investments and response planning.", + "limitations": "This tool does not perform live security monitoring or real-time threat detection and is limited to forecast based on historical and static input data. It cannot predict zero-day or unknown exploits.", + "examples": [ + "Generate a 60-day security threat forecast incorporating our last year's incident logs and latest firewall configurations.", + "Provide a prioritized list of potential vulnerabilities for our finance department systems based on recent industry threat trends.", + "Forecast upcoming security risks for the next month and include mitigation steps tailored to our current security controls." + ] + }, + "tags": [ + "security", + "forecasting", + "risk-management", + "threat-intelligence", + "vulnerability-assessment" + ], + "examples": [ + { + "inputJson": "{\"historicalIncidentData\":[{\"type\":\"ransomware\",\"severity\":8,\"status\":\"resolved\",\"date\":\"2023-01-15\"},{\"type\":\"phishing\",\"severity\":5,\"status\":\"mitigated\",\"date\":\"2023-03-05\"}],\"currentSecurityPosture\":{\"firewalls\":\"updated\",\"antivirus\":\"latest\",\"patchLevel\":\"high\"},\"industryThreatTrends\":[{\"threat\":\"supply-chain\",\"emerging\":true}],\"forecastTimeframeDays\":45,\"includeMitigationRecommendations\":true}", + "description": "Forecast potential security threats over 45 days using recent incident data and current protections, including mitigation recommendations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Forecast", + "context": null + } + }, + { + "name": "security-tools.createCitation", + "description": "Generates a formatted academic or professional citation for security-related publications, standards, or resources. Accepts details like author names, title, publication year, source type, and URL. Processes these inputs to produce a properly styled citation string according to popular formats (APA, MLA, Chicago).", + "category": "security-tools", + "parameters": [ + { + "name": "authorNames", + "type": "array", + "description": "List of author names in 'LastName, FirstName' format for the citation.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the work or resource to be cited.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationYear", + "type": "number", + "description": "Year the work was published.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of source (e.g., journalArticle, book, website, standardDocument).", + "required": true, + "defaultValue": "" + }, + { + "name": "publisher", + "type": "string", + "description": "Name of the publisher or organization responsible for the work.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL if the cited source is available online.", + "required": false, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Citation style to format the output, e.g., APA, MLA, Chicago.", + "required": true, + "defaultValue": "APA" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted citation string under 'citation' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide properly formatted citations of security research papers, standards, guidelines, or online resources in responses or documentation. It ensures consistent referencing aligned with academic or industry standards, facilitating trust and verifiability.", + "limitations": "Does not verify the authenticity of input data or fetch missing citation details automatically. It also does not support highly specialized citation styles beyond common ones like APA, MLA, and Chicago.", + "examples": [ + "Create a citation for a 2021 NIST standard document authored by John Smith.", + "Generate an APA citation for a journal article on cybersecurity by multiple authors.", + "Format a web source citation in MLA style for an online security resource." + ] + }, + "tags": [ + "citation", + "security", + "documentation", + "standards", + "academic", + "formatting", + "reference" + ], + "examples": [ + { + "inputJson": "{\"authorNames\":[\"Smith, John\"],\"title\":\"NIST Cybersecurity Framework\",\"publicationYear\":2021,\"sourceType\":\"standardDocument\",\"publisher\":\"National Institute of Standards and Technology\",\"url\":\"https://nvlpubs.nist.gov/nistpubs/CSWP/NIST.CSWP.04162021.pdf\",\"citationStyle\":\"APA\"}", + "description": "Create an APA formatted citation for a NIST cybersecurity standard authored by John Smith in 2021." + }, + { + "inputJson": "{\"authorNames\":[\"Doe, Jane\",\"Lee, Alice\"],\"title\":\"Advances in Intrusion Detection Systems\",\"publicationYear\":2019,\"sourceType\":\"journalArticle\",\"publisher\":\"International Journal of Cybersecurity\",\"url\":\"https://doi.org/10.1234/ijcs.2019.56789\",\"citationStyle\":\"MLA\"}", + "description": "Generate an MLA citation for a journal article on intrusion detection authored by Jane Doe and Alice Lee in 2019." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Citation", + "context": null + } + }, + { + "name": "security-tools.createScreenshot", + "description": "Captures a screenshot of a given web page URL or local HTML content, with options to adjust viewport size and delay for dynamic content loading. Outputs a PNG image encoded as a base64 string suitable for security documentation, auditing, or monitoring web application state visually.", + "category": "security-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web page URL to capture a screenshot of. Either url or htmlContent must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to render before capturing a screenshot. Either htmlContent or url must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "viewportWidth", + "type": "number", + "description": "The width of the browser viewport in pixels when taking the screenshot.", + "required": false, + "defaultValue": "1280" + }, + { + "name": "viewportHeight", + "type": "number", + "description": "The height of the browser viewport in pixels when taking the screenshot.", + "required": false, + "defaultValue": "720" + }, + { + "name": "delayMilliseconds", + "type": "number", + "description": "Time in milliseconds to wait after page load before capturing the screenshot, to ensure dynamic content renders properly.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "fullPage", + "type": "boolean", + "description": "If true, captures the entire scrollable page, otherwise captures only viewport area.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authenticationHeaders", + "type": "object", + "description": "Optional HTTP headers (e.g., Authorization) to include when fetching the URL, used for authenticated pages.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64-encoded PNG image of the captured screenshot and metadata like the final URL and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to visually document the state of a web page or web application for security monitoring, auditing, or compliance verification, especially when textual data or logs are insufficient. It supports rendering dynamic content by delaying capture and setting viewport size. Useful for capturing authenticated pages with custom headers.", + "limitations": "Cannot execute complex user interactions like clicks before screenshot. Does not support capturing non-HTML applications. Accurate representation depends on correctness of the HTML or URL provided and network availability. Large pages may take longer or fail to capture fully if memory is restricted.", + "examples": [ + "Capture a screenshot of https://example.com login page after fully loading.", + "Generate a screenshot from raw HTML content of a security notice email.", + "Capture full-length screenshot of a dashboard page with a 2-second delay to load charts" + ] + }, + "tags": [ + "security", + "screenshot", + "web-capture", + "documentation", + "auditing", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/login\",\"viewportWidth\":1366,\"viewportHeight\":768}", + "description": "Take a screenshot of the example.com login page with standard desktop resolution." + }, + { + "inputJson": "{\"htmlContent\":\"

Security Alert

Alert details here

\",\"viewportWidth\":800,\"viewportHeight\":600}", + "description": "Capture a screenshot from provided raw HTML content representing a security alert." + }, + { + "inputJson": "{\"url\":\"https://dashboard.example.com\",\"fullPage\":true,\"delayMilliseconds\":2000}", + "description": "Capture a full-page screenshot of a dashboard after waiting 2 seconds for charts to render." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Screenshot", + "context": null + } + }, + { + "name": "security-tools.createChecklist", + "description": "Generates a customizable security checklist document based on provided parameters, including checklist type, compliance standards, and risk level. The tool processes input criteria to produce a detailed checklist in structured JSON format listing security controls and best practices to follow.", + "category": "security-tools", + "parameters": [ + { + "name": "checklistType", + "type": "string", + "description": "Type of security checklist to create, e.g., 'network', 'application', or 'compliance'.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandard", + "type": "string", + "description": "Optional compliance framework to target, e.g., 'PCI-DSS', 'ISO27001', 'HIPAA'.", + "required": false, + "defaultValue": "" + }, + { + "name": "riskLevel", + "type": "string", + "description": "Risk severity level to tailor the checklist, options: 'low', 'medium', 'high'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeRemediationSteps", + "type": "boolean", + "description": "Whether to include recommended remediation steps for each checklist item.", + "required": false, + "defaultValue": "true" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the checklist: 'json' or 'markdown'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated checklist as a structured list of security items, optionally with remediation steps, formatted as specified." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate tailored security checklists for audits, compliance reviews, or security assessments based on system type and risk profile. It streamlines checklist creation aligned with best practices and standards.", + "limitations": "Does not perform live security scans or vulnerability detection; outputs static checklist guidance based on predefined templates and inputs.", + "examples": [ + "Create a network security checklist for PCI-DSS compliance at high risk level including remediation steps.", + "Generate an application security checklist without remediation in markdown format.", + "Produce a general security checklist for medium risk without specifying a compliance standard." + ] + }, + "tags": [ + "security", + "checklist", + "compliance", + "audit", + "risk-management" + ], + "examples": [ + { + "inputJson": "{\"checklistType\":\"network\",\"complianceStandard\":\"PCI-DSS\",\"riskLevel\":\"high\",\"includeRemediationSteps\":true,\"format\":\"json\"}", + "description": "Generate a high-risk network security checklist for PCI-DSS compliance including remediation steps in JSON format." + }, + { + "inputJson": "{\"checklistType\":\"application\",\"includeRemediationSteps\":false,\"format\":\"markdown\"}", + "description": "Create a general application security checklist without remediation steps in markdown format." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Checklist", + "context": null + } + }, + { + "name": "security-tools.createMigration", + "description": "This tool generates secure database migration scripts based on provided schema changes. It accepts inputs defining old and new schema states, analyzes differences, and produces migration code with included security best practices such as SQL injection protections and rollback capabilities. The output is a ready-to-run migration script for database upgrades.", + "category": "security-tools", + "parameters": [ + { + "name": "oldSchema", + "type": "object", + "description": "Existing database schema definition, including tables, columns, and constraints to compare against for migration generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "newSchema", + "type": "object", + "description": "Target database schema definition representing desired structure after migration, including tables, columns, indexes, and constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database platform (e.g., 'PostgreSQL', 'MySQL', 'SQLServer') for which to generate migration code.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRollback", + "type": "boolean", + "description": "Whether to generate rollback scripts alongside forward migration for safe downgrade.", + "required": false, + "defaultValue": "true" + }, + { + "name": "useTransaction", + "type": "boolean", + "description": "Wrap migration commands in a transaction to ensure atomicity and reduce partial failure risk.", + "required": false, + "defaultValue": "true" + }, + { + "name": "addSecurityChecks", + "type": "boolean", + "description": "Automatically include security best practices such as input sanitation checks in migration scripts.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated migration script as a string, and optionally the rollback script if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate creation of database migration scripts that securely transform an existing schema into a new schema while enforcing security best practices, reducing human error and ensuring rollback support.", + "limitations": "Does not execute migrations or validate data; only generates migration script text. Complex custom transformations or data migrations requiring scripting beyond schema changes are not handled.", + "examples": [ + "Create a migration script to update user table with new column while ensuring SQL injection resistance.", + "Generate PostgreSQL migration scripts including rollback for a schema upgrade from version 1 to version 2.", + "Produce a safe MySQL migration wrapping changes in transaction with security best practices enabled." + ] + }, + "tags": [ + "security", + "migration", + "database", + "automation", + "schema", + "rollback" + ], + "examples": [ + { + "inputJson": "{\"oldSchema\":{\"tables\":{\"users\":{\"columns\":{\"id\":\"int\",\"name\":\"varchar(255)\"}}}},\"newSchema\":{\"tables\":{\"users\":{\"columns\":{\"id\":\"int\",\"name\":\"varchar(255)\",\"email\":\"varchar(255)\"}}}},\"databaseType\":\"PostgreSQL\",\"includeRollback\":true,\"useTransaction\":true,\"addSecurityChecks\":true}", + "description": "Generate a migration script adding an email column to the users table in PostgreSQL, including rollback and security checks." + }, + { + "inputJson": "{\"oldSchema\":{\"tables\":{\"orders\":{\"columns\":{\"order_id\":\"int\",\"amount\":\"decimal\"}}}},\"newSchema\":{\"tables\":{\"orders\":{\"columns\":{\"order_id\":\"int\",\"amount\":\"decimal\"},\"indexes\":[\"amount\"]}}},\"databaseType\":\"MySQL\",\"includeRollback\":false,\"useTransaction\":true,\"addSecurityChecks\":true}", + "description": "Create a MySQL migration script to add an index on the amount column in orders table without rollback script but with transaction and security checks." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Migration", + "context": null + } + }, + { + "name": "legal-tools.analyzeMessage", + "description": "Analyzes legal or contractual messages by evaluating their content to identify key legal issues, obligations, risks, and compliance concerns. Accepts raw message text or structured communication data and outputs a detailed analysis report highlighting critical legal elements and suggestions for compliance or action.", + "category": "legal-tools", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The full text of the message or communication to be analyzed for legal content and implications.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageFormat", + "type": "string", + "description": "Format of the message input, such as 'plainText', 'HTML', or 'JSON' to properly process message structure.", + "required": false, + "defaultValue": "plainText" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The legal jurisdiction relevant to the message, e.g., 'US', 'EU', 'UK', to tailor analysis to specific laws and regulations.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a concise summary of the main legal points found in the message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Desired depth of legal sensitivity analysis: options like 'basic', 'detailed', or 'comprehensive'.", + "required": false, + "defaultValue": "basic" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis report including identified legal issues, risk assessments, obligations, recommended actions, and optionally a summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand potential legal implications or risks expressed in any message—such as emails, contracts, or notices—especially to quickly flag compliance concerns or contractual obligations before responding or taking action. It supports informed decision-making in legal and contract management workflows.", + "limitations": "This tool does not provide legally binding advice and cannot replace a licensed attorney's review. It may not fully interpret complex legal documents and is limited to text analysis without contextual external knowledge.", + "examples": [ + "Analyze this email message to identify any contractual liabilities mentioned.", + "Review this message for compliance risks related to GDPR in the EU.", + "Check this notice for any immediate legal obligations to act on under US jurisdiction." + ] + }, + "tags": [ + "legal", + "contract", + "compliance", + "message-analysis", + "risk-assessment", + "communication" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Please be advised that your contract will automatically renew on the anniversary date unless canceled at least 30 days prior.\",\"messageFormat\":\"plainText\",\"jurisdiction\":\"US\",\"includeSummary\":true,\"sensitivityLevel\":\"basic\"}", + "description": "Analyzing a renewal notice email for contractual obligations under US law." + }, + { + "inputJson": "{\"messageText\":\"Attention: Under GDPR, you must delete user data upon request within one month.\",\"messageFormat\":\"plainText\",\"jurisdiction\":\"EU\",\"includeSummary\":true,\"sensitivityLevel\":\"detailed\"}", + "description": "Analyze a compliance notice message regarding GDPR requirements in the European Union." + }, + { + "inputJson": "{\"messageText\":\"The attached agreement requires your signature to confirm acceptance of terms including confidentiality and liability clauses.\",\"messageFormat\":\"plainText\",\"jurisdiction\":\"US\",\"includeSummary\":false,\"sensitivityLevel\":\"comprehensive\"}", + "description": "Conduct a detailed analysis of an agreement message highlighting key legal issues and obligations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "legal-tools.analyzeWord", + "description": "Analyzes a single word from legal documents to identify its legal meaning, relevance, and associated risks or compliance considerations. Accepts a word input and optional context description, processes using legal language models and dictionaries, and outputs a detailed analysis including definitions, usage notes, and potential legal implications.", + "category": "legal-tools", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The legal word or term to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional surrounding text or description to help disambiguate the word's legal meaning.", + "required": false, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Specify the legal jurisdiction (e.g., 'US', 'EU', 'UK') to tailor the analysis to relevant laws.", + "required": false, + "defaultValue": "US" + }, + { + "name": "includeSynonyms", + "type": "boolean", + "description": "Whether to include legal synonyms and related terms in the analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the word analyzed, its legal definitions, contextual notes, jurisdictional relevance, identified risks or concerns, and synonyms if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand the legal significance of a particular word or term in contracts or compliance documents. It helps clarify ambiguous terminology, ensures correct interpretation, and identifies risks tied to specific language in a given jurisdiction.", + "limitations": "This tool analyzes single words or short phrases only and may not fully capture complex phraseology or contractual clauses. It does not replace full legal advice and cannot interpret words outside legal contexts reliably.", + "examples": [ + "Analyze the term 'indemnity' for a US contract.", + "Check the legal meaning of 'force majeure' within EU jurisdiction.", + "Provide risks related to the word 'warranty' in UK law." + ] + }, + "tags": [ + "legal", + "analysis", + "terminology", + "contract", + "compliance", + "jurisdiction" + ], + "examples": [ + { + "inputJson": "{\"word\":\"indemnity\",\"context\":\"The agreement includes an indemnity clause.\",\"jurisdiction\":\"US\",\"includeSynonyms\":true}", + "description": "Analyzing the legal term 'indemnity' with a brief context, specifying US jurisdiction, and requesting synonyms." + }, + { + "inputJson": "{\"word\":\"force majeure\",\"context\":\"\",\"jurisdiction\":\"EU\",\"includeSynonyms\":false}", + "description": "Analyze the legal term 'force majeure' without additional context, focusing on EU jurisdiction and excluding synonyms." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "legal-tools.uploadDocument", + "description": "Uploads a legal document file to a secure contract management system. Accepts document content as base64 string or file URL, along with metadata such as document type and associated contract ID. Validates input, stores the document securely, and returns an upload confirmation with document ID and status.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentName", + "type": "string", + "description": "The name of the document to be uploaded, including file extension (e.g., contract.pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "documentContentBase64", + "type": "string", + "description": "The base64-encoded content of the document file. Required if documentUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentUrl", + "type": "string", + "description": "A URL to fetch the document from, used if documentContentBase64 is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Legal document type, like 'contract', 'NDA', 'agreement', etc., to categorize the upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "associatedContractId", + "type": "string", + "description": "Identifier of the contract to associate with the uploaded document, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "uploadingUserId", + "type": "string", + "description": "Identifier of the user performing the upload for audit trails.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of strings for additional tagging/classification of the document.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object indicating the result of the upload operation, including unique document identifier and upload status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to securely upload and register a legal document or contract file into a managed document repository or contract management platform, while providing metadata such as document type and related contract. Ideal for automated contract lifecycle management or legal compliance record keeping.", + "limitations": "This tool does not perform document content validation beyond basic format checks and does not handle document versioning or editing. It requires the document content as base64 or accessible via URL.", + "examples": [ + "Upload a signed non-disclosure agreement PDF linked to contract ID 'CNTR12345' with user ID 'user789'.", + "Upload contract amendment document from an external URL tagged as 'amendment' for tracking.", + "Upload a scanned agreement as a base64 string with tags indicating 'scanned' and 'final version'." + ] + }, + "tags": [ + "upload", + "document", + "legal", + "contract", + "compliance", + "management" + ], + "examples": [ + { + "inputJson": "{\"documentName\":\"NDA_signed.pdf\",\"documentContentBase64\":\"VGhpcyBpcyBhIHRlc3QgYmFzZTY0IGVuY29kZWQgZG9jdW1lbnQu\",\"documentType\":\"NDA\",\"associatedContractId\":\"CNTR12345\",\"uploadingUserId\":\"user789\",\"tags\":[\"signed\",\"confidential\"]}", + "description": "Uploading a signed NDA document as base64 content with associated contract ID and tags." + }, + { + "inputJson": "{\"documentName\":\"contract_amendment.pdf\",\"documentUrl\":\"https://example.com/docs/amendment.pdf\",\"documentType\":\"amendment\",\"associatedContractId\":\"CNTR98765\",\"uploadingUserId\":\"user123\",\"tags\":[\"amendment\"]}", + "description": "Uploading a contract amendment document from a URL for contract CNTR98765." + }, + { + "inputJson": "{\"documentName\":\"agreement_scan.pdf\",\"documentContentBase64\":\"U2Nhbm5lZCBhZ3JlZW1lbnQgc2FtcGxlIGNvbnRlbnQ=\",\"documentType\":\"agreement\",\"uploadingUserId\":\"user456\",\"tags\":[\"scanned\",\"final\"]}", + "description": "Uploading a scanned agreement document as base64 string without associated contract ID." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "legal-tools.uploadFile", + "description": "Uploads a legal document file to the contract management system. Accepts file content and metadata, performs format validation and virus scanning, stores the file securely, and returns file ID and upload status.", + "category": "legal-tools", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the file to upload, including extension", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Base64 encoded content of the file to upload", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file, e.g., application/pdf", + "required": true, + "defaultValue": "" + }, + { + "name": "contractId", + "type": "string", + "description": "Identifier of the contract associated with the uploaded file", + "required": false, + "defaultValue": "" + }, + { + "name": "uploadedBy", + "type": "string", + "description": "User ID or name of the person uploading the file", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or categories to classify the uploaded file", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the upload, a unique file identifier, and any error messages if the upload failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add or update legal documents within a contract management system by uploading files securely with metadata. This is helpful for maintaining legal compliance by organizing and storing contract-related files safely.", + "limitations": "This tool does not perform deep content analysis or extraction of contract terms. It also does not handle file versioning beyond the initial upload.", + "examples": [ + "Upload a new signed PDF contract linked to contract ID 12345.", + "Add an amended agreement document to an existing contract record with tagging.", + "Upload a scanned image file of a legal notice for archival purposes." + ] + }, + "tags": [ + "upload", + "legal", + "document management", + "contract", + "file handling" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"Sales_Agreement.pdf\",\"fileContent\":\"JVBERi0xLjcKJcfs...base64content...\",\"fileType\":\"application/pdf\",\"contractId\":\"CONTRACT123\",\"uploadedBy\":\"user567\",\"tags\":[\"agreement\",\"sales\"]}", + "description": "Uploading a PDF sales agreement linked to a specific contract with tags for categorization." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "legal-tools.formatEmail", + "description": "Formats a legal compliance or contract-related email by accepting raw email text along with optional parameters such as recipient role, formality level, and key contract terms to emphasize. It processes the input to produce a well-structured, clear, and professional email output tailored to legal communication standards, enhancing clarity and compliance.", + "category": "legal-tools", + "parameters": [ + { + "name": "rawEmailText", + "type": "string", + "description": "The unformatted or draft email content to be formatted for legal correspondence.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientRole", + "type": "string", + "description": "Role or title of the email recipient (e.g., client, lawyer, counterparty) to adjust tone and terminology appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "formalityLevel", + "type": "string", + "description": "Desired tone style of the email; options could include 'formal', 'semi-formal', or 'informal' to fit legal communication norms.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keyContractTerms", + "type": "array", + "description": "List of important contract terms or clauses to highlight or emphasize within the email body for clarity and focus.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a standard legal-compliant email signature block at the end of the email.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted email text, including appropriate salutations, paragraph structuring, emphasis on key terms, and closing elements ready for sending." + }, + "aiAgent": { + "useCase": "This tool is ideal when generating or revising emails involved in legal contexts—such as contract negotiations, compliance communications, or client updates—ensuring the language is clear, professional, and legally appropriate. Agents can use it to standardize emails or prepare drafts that meet legal communication standards.", + "limitations": "It does not provide legal advice or verify legal accuracy of content; it focuses solely on formatting and tone adjustments.", + "examples": [ + "Format a draft email for a contract negotiation with a counterparty, emphasizing payment terms.", + "Create a formal legal compliance update email for a client including key regulatory points.", + "Prepare a semi-formal email to an in-house legal counsel summarizing contract risks." + ] + }, + "tags": [ + "legal", + "email", + "formatting", + "contract", + "compliance", + "communication" + ], + "examples": [ + { + "inputJson": "{\"rawEmailText\":\"hi john, please find attached the contract. let me know if you need changes.\",\"recipientRole\":\"client\",\"formalityLevel\":\"formal\",\"keyContractTerms\":[\"payment terms\",\"termination clause\"],\"includeSignature\":true}", + "description": "Formats a casual draft email for a client, applying formal tone and emphasizing important contract clauses." + }, + { + "inputJson": "{\"rawEmailText\":\"please review the attached compliance update.\",\"recipientRole\":\"legal counsel\",\"formalityLevel\":\"semi-formal\",\"keyContractTerms\":[\"data protection\"],\"includeSignature\":false}", + "description": "Formats a brief compliance update email to legal counsel with semi-formal tone and term emphasis, no signature." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "legal-tools.formatCode", + "description": "Formats and standardizes legal code snippets or regulatory text in programming languages or domain-specific languages used for legal automation. Accepts raw code input and applies formatting rules such as indentation, line breaks, and syntax highlighting to produce clean, readable, and consistent formatted code output suitable for legal tech applications.", + "category": "legal-tools", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw legal or regulatory code snippet or script to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming or domain-specific language of the input code to apply appropriate formatting rules (e.g., 'Solidity', 'LegalRuleML', 'XML').", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces to use per indentation level in the formatted code.", + "required": false, + "defaultValue": "4" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs for indentation instead of spaces.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed characters per line; longer lines will be wrapped if possible.", + "required": false, + "defaultValue": "80" + }, + { + "name": "addSyntaxHighlighting", + "type": "boolean", + "description": "If true, the output includes syntax highlighting markup suitable for HTML or markdown display.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string and optionally a HTML or markdown version if syntax highlighting is enabled." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to present or store legal code or regulatory scripts in a clean, standardized format to improve readability, maintainability, or compliance with style guidelines in legal tech environments.", + "limitations": "This tool does not validate legal code logic, syntax correctness, or compliance with legal standards; it only formats and beautifies the code text itself. It may not support all niche or proprietary domain-specific languages.", + "examples": [ + "Format a raw Solidity smart contract code snippet for presentation in a legal document.", + "Standardize XML rules-based code for legal document automation tools.", + "Beautify LegalRuleML markup for display in a legal compliance dashboard." + ] + }, + "tags": [ + "legal", + "code", + "formatting", + "legaltech", + "automation", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"code\":\"contract NDA {\\nfunction agreement() public {}\\n}\",\"language\":\"Solidity\",\"indentationSize\":2,\"useTabs\":false,\"maxLineLength\":100,\"addSyntaxHighlighting\":true}", + "description": "Formatting a Solidity smart contract with 2-space indentation and syntax highlighting." + }, + { + "inputJson": "{\"code\":\"\\nif contract signed then compliant\\n\",\"language\":\"LegalRuleML\",\"indentationSize\":4,\"useTabs\":true,\"maxLineLength\":80,\"addSyntaxHighlighting\":false}", + "description": "Beautifying LegalRuleML snippet with tab indentation and no syntax highlighting." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "legal-tools.formatDocument", + "description": "This tool accepts a raw legal document text or structured contract data and formats it according to a specified legal style guide or template. It standardizes headings, clause numbering, font styles, spacing, and other layout elements to produce a clean, professional, and compliant legal document ready for review or filing.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The raw text or content of the legal document to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The target formatting style or template to apply (e.g., 'US Contract Template', 'EU GDPR Compliance').", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output file format such as 'pdf', 'docx', or 'txt'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to automatically generate and include a table of contents, if applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customClausesFormat", + "type": "object", + "description": "Optional custom formatting rules for specific clauses or sections as key-value pairs.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document content as a string or binary data (depending on output format), plus metadata like page count and formatting summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI or application needs to convert raw legal text or contract drafts into professionally formatted documents that comply with specific legal style requirements, ensuring clarity and consistency before sharing or filing. It is ideal for document automation, contract review preparation, and legal compliance formatting tasks.", + "limitations": "This tool does not provide legal review or validation of the document's legal content or correctness; it only formats document layout and style. It may not interpret complex formatting instructions outside the known templates.", + "examples": [ + "Format this NDA contract draft using the standard US legal template with a table of contents, output as PDF.", + "Apply the EU GDPR compliance formatting style to this privacy policy document and export as DOCX.", + "Format the merger agreement text without a table of contents and output as a plain text file." + ] + }, + "tags": [ + "legal", + "document", + "formatting", + "contract", + "compliance", + "template", + "automation", + "legal-documents" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"This Agreement is made this 1st day of Jan 2024...\",\"formatStyle\":\"US Contract Template\",\"outputFormat\":\"pdf\",\"includeTableOfContents\":true}", + "description": "Format a basic contract text into a US legal template with a PDF output including a table of contents." + }, + { + "inputJson": "{\"documentContent\":\"Privacy Policy contents here...\",\"formatStyle\":\"EU GDPR Compliance\",\"outputFormat\":\"docx\",\"includeTableOfContents\":false}", + "description": "Format a privacy policy document to comply with EU GDPR style, output as DOCX without table of contents." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "legal-tools.generateWord", + "description": "Generates a customized Microsoft Word document based on provided legal content, template selections, and formatting preferences. It accepts inputs like contract clauses, document type, and style instructions, then creates a ready-to-use .docx legal document formatted accordingly.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of legal document to generate, e.g., 'Non-Disclosure Agreement', 'Employment Contract'.", + "required": true, + "defaultValue": "" + }, + { + "name": "clauses", + "type": "array", + "description": "Array of clause objects representing individual contract sections with title and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateStyle", + "type": "string", + "description": "Name of the Word template style to apply for formatting, e.g., 'Professional', 'Simple'.", + "required": false, + "defaultValue": "\"Professional\"" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to automatically generate and include a table of contents in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "authorName", + "type": "string", + "description": "Name to set as the author of the document metadata.", + "required": false, + "defaultValue": "\"Legal AI Tool\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated Word document as a base64-encoded string and metadata such as document type and creation date." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to create legally formatted Word documents dynamically from structured input clauses and preferences, such as generating contracts, agreements, or legal letters. It supports automation of legal document drafting workflows with customizable templates and content assembly.", + "limitations": "The tool does not provide legal advice or validate legal correctness of clauses. It cannot replace a lawyer’s review and does not support complex dynamic clause negotiation. It produces static Word docs only.", + "examples": [ + "Generate a Non-Disclosure Agreement document with specific confidentiality clauses.", + "Create an Employment Contract document using the 'Professional' template.", + "Produce a Service Agreement including a table of contents and setting 'Jane Doe' as author." + ] + }, + "tags": [ + "document-generation", + "legal", + "contract", + "word", + "template", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"Non-Disclosure Agreement\",\"clauses\":[{\"title\":\"Confidentiality\",\"content\":\"The receiving party shall keep all information confidential.\"},{\"title\":\"Term\",\"content\":\"This agreement is valid for 2 years.\"}],\"templateStyle\":\"Professional\",\"includeTableOfContents\":true,\"authorName\":\"Alice Johnson\"}", + "description": "Generate a Non-Disclosure Agreement Word document with two key clauses, professional style template, TOC included, and author set." + }, + { + "inputJson": "{\"documentType\":\"Employment Contract\",\"clauses\":[{\"title\":\"Position\",\"content\":\"Employee will be hired as Software Engineer.\"},{\"title\":\"Salary\",\"content\":\"Annual salary is $100,000.\"}],\"templateStyle\":\"Simple\",\"includeTableOfContents\":false,\"authorName\":\"HR Department\"}", + "description": "Create a simple styled Employment Contract without a table of contents, authored by HR Department." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "legal-tools.buildFunction", + "description": "This tool generates a legal compliance function in a specified programming language based on input parameters detailing the required contract terms, jurisdiction, and compliance standards. It processes these inputs to build a reusable function code snippet that can enforce or verify contract conditions, aiding developers in integrating legal logic within applications.", + "category": "legal-tools", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "The target programming language for the function code output (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "" + }, + { + "name": "contractTerms", + "type": "object", + "description": "An object specifying the key contract terms and conditions to be embedded or enforced by the function.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The legal jurisdiction or governing law relevant to the contract terms, to guide compliance logic.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "A list of compliance standards or regulations the function should adhere to (e.g., GDPR, HIPAA).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "functionName", + "type": "string", + "description": "The desired name of the generated function.", + "required": false, + "defaultValue": "\"checkContractCompliance\"" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code for clarity.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function code as a string and metadata including language and compliance references." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically enforce or verify legal compliance within software by generating code that embeds contract logic. It's ideal for developers or automated agents integrating legal terms into applications, ensuring alignment with jurisdictional rules and standards.", + "limitations": "This tool does not provide legal advice or replace formal legal review. It generates boilerplate code snippets and may not cover complex or highly specialized legal provisions. It cannot test or debug the generated function code.", + "examples": [ + "Generate a Python function to check GDPR compliance for user consent terms in a contract.", + "Create a JavaScript function that validates contract penalty clauses under California law.", + "Build a function to verify encryption compliance clauses for HIPAA in healthcare contracts." + ] + }, + "tags": [ + "legal", + "code-generation", + "contract-management", + "compliance", + "programming", + "automation" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"contractTerms\":{\"terminationClause\":\"30 days notice required\",\"penalty\":\"5% fee\"},\"jurisdiction\":\"California\",\"complianceStandards\":[\"CCPA\"],\"functionName\":\"validateContractTerms\",\"includeComments\":true}", + "description": "Generate a JavaScript function named validateContractTerms incorporating specific termination and penalty clauses compliant with California law and CCPA." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "legal-tools.generateJSON", + "description": "Generates a structured JSON representation of a legal contract or compliance document based on provided input parameters such as contract type, parties involved, key clauses, and jurisdiction. Processes input to assemble a standardized, machine-readable legal document summary consistent with common legal frameworks.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "Type of legal contract to generate JSON for, e.g., NDA, employment agreement, service contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "Array of objects representing parties involved, each with at least 'name' and 'role' fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyClauses", + "type": "object", + "description": "Object containing key clauses with clause titles as keys and clause texts as values to include in the contract JSON.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction (e.g., country or state) that governs the contract terms.", + "required": false, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Effective date of the contract in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSignatureSection", + "type": "boolean", + "description": "Flag to include a signature section template in the JSON output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the structured contract including metadata, parties, clauses, jurisdiction, and optional signature section." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a structured, standardized JSON summary of a legal contract based on input details such as contract type, parties, and clauses. It is useful for automated contract management, review, or integration into legal compliance systems requiring machine-readable formats.", + "limitations": "This tool does not perform legal validation or guarantee legal compliance. It cannot generate full legal text or substitutes for professional legal drafting but only structures input data into a JSON schema.", + "examples": [ + "Generate JSON for an NDA between two companies with confidentiality and term clauses in US jurisdiction.", + "Create JSON for an employment agreement with specified roles and terms effective from a certain date.", + "Produce a service contract JSON summary including signature sections for a software development agreement." + ] + }, + "tags": [ + "legal", + "contract", + "json", + "document-generation", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"NDA\",\"parties\":[{\"name\":\"Alpha Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Beta LLC\",\"role\":\"Receiving Party\"}],\"keyClauses\":{\"Confidentiality\":\"All confidential information must be kept secret.\",\"Term\":\"Agreement lasts 2 years.\"},\"jurisdiction\":\"California, USA\",\"effectiveDate\":\"2024-07-01\",\"includeSignatureSection\":true}", + "description": "Generate a JSON summary for a Non-Disclosure Agreement between two parties with confidentiality and term clauses." + }, + { + "inputJson": "{\"contractType\":\"Employment Agreement\",\"parties\":[{\"name\":\"John Doe\",\"role\":\"Employee\"},{\"name\":\"Acme Inc\",\"role\":\"Employer\"}],\"keyClauses\":{\"Position\":\"Software Engineer\",\"Salary\":\"$100,000 annually\"},\"jurisdiction\":\"New York, USA\",\"effectiveDate\":\"2024-08-15\",\"includeSignatureSection\":false}", + "description": "Create a JSON document of an employment agreement specifying position and salary without signature section." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "legal-tools.generateText", + "description": "Generates customized legal documents or contract clauses based on user-provided parameters such as document type, jurisdiction, key terms, and optional special provisions. The tool processes the input parameters and outputs a legally coherent text snippet suitable for contract drafting or review.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of legal document or clause to generate (e.g., NDA, employment contract, lease agreement).", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction or governing law relevant to the document (e.g., California, UK, EU).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyTerms", + "type": "object", + "description": "Key-value pairs representing terms and values to include in the document (e.g., {\"partyA\":\"Company A\",\"partyB\":\"Person B\",\"termLength\":\"12 months\"}).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSpecialProvisions", + "type": "boolean", + "description": "Whether to include optional special provisions or clauses as requested.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language for the generated text (default is English).", + "required": false, + "defaultValue": "English" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'generatedText' with the drafted legal content as a string." + }, + "aiAgent": { + "useCase": "Use this tool to efficiently generate draft legal documents or contract clauses tailored to specific parameters such as document type, jurisdiction, and customized terms when preparing contracts, reviewing legal frameworks, or creating agreements. It helps accelerate contract creation while maintaining legal syntactic coherence.", + "limitations": "The tool does not provide legal advice, cannot replace a qualified attorney, nor guarantee compliance with all applicable laws. It should be used for drafting assistance only and reviewed by a legal professional before final use.", + "examples": [ + "Generate an NDA suitable for California including parties and duration.", + "Create an employment contract clause with custom salary and benefits terms under UK law.", + "Draft a lease agreement clause including terms for maintenance and rent increases in English." + ] + }, + "tags": [ + "legal", + "contract", + "document generation", + "jurisdiction", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"NDA\",\"jurisdiction\":\"California\",\"keyTerms\":{\"partyA\":\"Tech Corp\",\"partyB\":\"Jane Doe\",\"termLength\":\"2 years\"},\"includeSpecialProvisions\":true}", + "description": "Generate a California NDA including parties and term length with special provisions." + }, + { + "inputJson": "{\"documentType\":\"Employment Contract\",\"jurisdiction\":\"UK\",\"keyTerms\":{\"employeeName\":\"John Smith\",\"salary\":\"£50,000\",\"position\":\"Developer\"},\"includeSpecialProvisions\":false}", + "description": "Generate a UK employment contract with salary and position details, excluding special provisions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "legal-tools.createWord", + "description": "Creates a customized Microsoft Word document for legal purposes based on user input parameters such as contract type, key clauses, parties involved, and jurisdiction. It generates a formatted Word (.docx) file containing a draft legal document ready for review or modification.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of legal document to create, e.g., NDA, contract, will, power of attorney.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the document, each as an object with name and role.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyClauses", + "type": "array", + "description": "Array of key clauses or terms to include in the document, expressed as strings.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction or governing law to tailor the document to (e.g., California, UK).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSignatureBlock", + "type": "boolean", + "description": "Whether to include a signature block at the end of the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Optional custom title for the document header.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata and the generated Word document as a base64-encoded string for storage or download." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a draft legal document in Microsoft Word format based on specified input parameters, enabling quick creation of contracts or agreements that can be further reviewed or edited by legal professionals.", + "limitations": "This tool does not provide legal advice or verify the legal adequacy of the draft. It cannot substitute for a lawyer's review and may not reflect jurisdiction-specific legal nuances beyond basic customization.", + "examples": [ + "Create a NDA agreement Word document for two parties in Delaware including confidentiality clauses.", + "Generate a simple freelance contract for a US-based client including payment terms and termination clause.", + "Produce a power of attorney template with a signature section for California jurisdiction." + ] + }, + "tags": [ + "legal", + "document-generation", + "contract-drafting", + "Microsoft Word", + "legal compliance", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"NDA\",\"parties\":[{\"name\":\"Acme Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"John Doe\",\"role\":\"Receiving Party\"}],\"keyClauses\":[\"confidentiality\",\"non-compete\"],\"jurisdiction\":\"Delaware\",\"includeSignatureBlock\":true,\"documentTitle\":\"Mutual NDA Agreement\"}", + "description": "Create a mutual NDA Word document for Acme Corp and John Doe tailored to Delaware law with confidentiality and non-compete clauses." + }, + { + "inputJson": "{\"documentType\":\"Freelance Contract\",\"parties\":[{\"name\":\"Jane Smith\",\"role\":\"Freelancer\"},{\"name\":\"XYZ Ltd.\",\"role\":\"Client\"}],\"keyClauses\":[\"payment terms\",\"termination\"],\"jurisdiction\":\"USA\",\"includeSignatureBlock\":true}", + "description": "Generate a freelance contract Word document for Jane Smith working with XYZ Ltd. with payment terms and termination clauses for USA jurisdiction." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "legal-tools.createJSON", + "description": "This tool accepts contract metadata and clause details as input, processes and formats this data into a standardized legal contract JSON structure. It produces a JSON output that represents contracts for digital storage, review, or further legal processing.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractTitle", + "type": "string", + "description": "The title or name of the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "partiesInvolved", + "type": "array", + "description": "An array of party objects, each detailing name and role in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The date when the contract becomes effective (ISO 8601 format).", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationDate", + "type": "string", + "description": "The date when the contract expires or terminates (ISO 8601 format).", + "required": false, + "defaultValue": "" + }, + { + "name": "clauses", + "type": "array", + "description": "An array of clause objects, each with a title and the clause text.", + "required": true, + "defaultValue": "" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction whose laws govern the contract (e.g., 'California, USA').", + "required": false, + "defaultValue": "" + }, + { + "name": "confidentialityIncluded", + "type": "boolean", + "description": "Flag to indicate if confidentiality clause is included.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A standardized JSON object representing the full contract with structured metadata and clauses for legal use." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a structured JSON representation of a legal contract based on input details such as parties, dates, and clauses. Ideal for automated contract creation, digital contract management, and integration with legal workflows.", + "limitations": "This tool does not provide legal advice or validate legal correctness of clauses. It also cannot parse natural language contracts into JSON or handle encrypted/legal-signature related data.", + "examples": [ + "Create a JSON contract for two parties with specified clauses and dates.", + "Generate a digital contract JSON including confidentiality clause and governing law.", + "Structure an existing contract metadata and clause list into a legal JSON format." + ] + }, + "tags": [ + "legal", + "contract", + "json", + "creation", + "automation", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"contractTitle\":\"Service Agreement\",\"partiesInvolved\":[{\"name\":\"Alpha Corp\",\"role\":\"Provider\"},{\"name\":\"Beta LLC\",\"role\":\"Client\"}],\"effectiveDate\":\"2024-01-01\",\"expirationDate\":\"2025-01-01\",\"clauses\":[{\"title\":\"Services Provided\",\"text\":\"Alpha Corp will provide consulting services.\"},{\"title\":\"Payment Terms\",\"text\":\"Beta LLC agrees to pay $10000 quarterly.\"}],\"governingLaw\":\"New York, USA\",\"confidentialityIncluded\":true}", + "description": "A service agreement contract JSON for two parties with confidentiality and governing law included." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "customer-support.analyzeAnomaly", + "description": "Analyzes customer support data (e.g., ticket volumes, response times, customer satisfaction scores) to detect anomalies such as sudden spikes or drops that may indicate service issues or operational incidents. Accepts time-series data and optional thresholds, and returns detailed anomaly information including type, severity, and timestamps.", + "category": "customer-support", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of time-series customer support metrics, each with timestamp and measured value.", + "required": true, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "Name of the metric to analyze (e.g., 'ticketVolume', 'responseTime').", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "string", + "description": "Time window for anomaly detection, expressed as an ISO 8601 duration (e.g., 'PT1H' for one hour).", + "required": false, + "defaultValue": "PT24H" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity level for detecting anomalies, on a scale from 0.1 (low) to 1.0 (high).", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional object defining custom threshold limits for anomalies keyed by anomaly type.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected anomalies, each with details such as anomaly type, severity score, start and end timestamps, and related metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to identify unusual patterns or deviations in customer support metrics that might indicate emerging issues affecting service quality or operational health. It helps proactively alert and investigate incidents from raw data trends rather than waiting for manual reports.", + "limitations": "This tool cannot diagnose root causes of anomalies or predict future trends. It relies on quality and completeness of input data and may generate false positives if data is noisy or incomplete.", + "examples": [ + "Detect anomalies in hourly ticket volume over the past week.", + "Analyze customer satisfaction ratings for sudden drops in the last 30 days.", + "Identify unusual spikes in average response time over the last 12 hours." + ] + }, + "tags": [ + "anomaly detection", + "customer support", + "analytics", + "time-series", + "monitoring", + "helpdesk" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"value\":120},{\"timestamp\":\"2024-06-01T01:00:00Z\",\"value\":130},{\"timestamp\":\"2024-06-01T02:00:00Z\",\"value\":450},{\"timestamp\":\"2024-06-01T03:00:00Z\",\"value\":135}],\"metric\":\"ticketVolume\",\"timeWindow\":\"PT4H\",\"sensitivity\":0.7}", + "description": "Detect anomalies in ticket volume with a 4 hour window and medium-high sensitivity, catching sudden spikes." + }, + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"value\":4.5},{\"timestamp\":\"2024-05-15T00:00:00Z\",\"value\":3.1},{\"timestamp\":\"2024-05-30T00:00:00Z\",\"value\":4.7}],\"metric\":\"customerSatisfactionScore\",\"timeWindow\":\"P30D\"}", + "description": "Identify significant drops in customer satisfaction scores over the last 30 days." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "legal-tools.createContract", + "description": "This tool generates a legally formatted contract document based on provided contract type, involved parties, key terms, and optional clauses. It accepts structured inputs defining parties and contract parameters, processes them to create a customized contract text, and outputs the complete contract document ready for review or signature.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "The type of contract to create, e.g., 'Employment', 'NDA', 'Sales Agreement'.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the contract, each with name and role details.", + "required": true, + "defaultValue": "" + }, + { + "name": "terms", + "type": "object", + "description": "Key contract terms and conditions in key-value format, such as duration, payment, obligations.", + "required": true, + "defaultValue": "" + }, + { + "name": "optionalClauses", + "type": "array", + "description": "Additional optional clauses or provisions to include, specified as strings.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The date on which the contract becomes effective, in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction or governing law for the contract, e.g., 'California, USA'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract document as a string, along with metadata like contract type and parties." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a formal contract document based on structured input detailing parties, contract type, and terms, to automate contract drafting or assist users without legal drafting expertise.", + "limitations": "This tool does not provide legal advice or validate legal compliance; review by a qualified lawyer is recommended before final use. It generates template-based contracts without negotiation capability.", + "examples": [ + "Create an NDA between two companies specifying confidentiality terms and duration.", + "Generate employment contract outlining job role, compensation, and probation period.", + "Draft a sales agreement with terms of delivery, payment schedule, and liability clauses." + ] + }, + "tags": [ + "contract", + "legal", + "document-generation", + "automation", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"NDA\",\"parties\":[{\"name\":\"ABC Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"XYZ LLC\",\"role\":\"Receiving Party\"}],\"terms\":{\"duration\":\"2 years\",\"confidentialInformationDefinition\":\"all technical and business information\"},\"optionalClauses\":[\"non-solicitation\"],\"effectiveDate\":\"2024-07-01\",\"jurisdiction\":\"New York, USA\"}", + "description": "Generate a Non-Disclosure Agreement (NDA) between two parties with defined confidentiality terms and duration." + }, + { + "inputJson": "{\"contractType\":\"Employment\",\"parties\":[{\"name\":\"John Doe\",\"role\":\"Employee\"},{\"name\":\"Tech Solutions Inc.\",\"role\":\"Employer\"}],\"terms\":{\"jobTitle\":\"Software Engineer\",\"salary\":\"85000 USD per year\",\"probationPeriod\":\"3 months\"},\"optionalClauses\":[],\"effectiveDate\":\"2024-08-01\",\"jurisdiction\":\"California, USA\"}", + "description": "Create an Employment contract specifying job title, salary, and probation period." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "customer-support.downloadTable", + "description": "Downloads a structured table of customer support ticket data based on filtering criteria such as date range, status, and agent. Processes queries against the support database and outputs the table in CSV or JSON format ready for analysis or reporting.", + "category": "customer-support", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "The start date (inclusive) for filtering tickets, in ISO 8601 format (e.g., 2023-01-01).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date (inclusive) for filtering tickets, in ISO 8601 format (e.g., 2023-12-31).", + "required": false, + "defaultValue": "" + }, + { + "name": "status", + "type": "array", + "description": "List of ticket statuses to include (e.g., ['open', 'closed', 'pending']). If empty, includes all statuses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "assignedAgent", + "type": "string", + "description": "Filter tickets assigned to a specific support agent by their username or ID. Leave empty for all agents.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the downloaded table; either 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of tickets to include in the output table. Defaults to all matching tickets if not set.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a success flag, a message, and the table data as a string in the requested output format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to export customer support ticket data in a tabular format for reporting, analysis, or backups. It is helpful for filtering tickets by date, status, or agent and formatting results as CSV or JSON for downstream processing.", + "limitations": "Cannot access tickets outside the connected support system or real-time updates during download. Limited to the fields and filters supported by the connected ticket database.", + "examples": [ + "Download all closed support tickets from last month as a CSV file.", + "Export pending tickets assigned to agent 'john_doe' in JSON format.", + "Retrieve up to 100 open tickets across all agents for quick review." + ] + }, + "tags": [ + "customer-support", + "data-export", + "ticketing", + "reporting", + "csv", + "json", + "filtering" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\",\"status\":[\"closed\"],\"assignedAgent\":\"\",\"outputFormat\":\"csv\"}", + "description": "Download all closed tickets in May 2024 as CSV." + }, + { + "inputJson": "{\"startDate\":\"\",\"endDate\":\"\",\"status\":[\"pending\"],\"assignedAgent\":\"john_doe\",\"outputFormat\":\"json\"}", + "description": "Get all pending tickets assigned to user john_doe as JSON." + }, + { + "inputJson": "{\"startDate\":\"2024-06-01\",\"endDate\":\"2024-06-10\",\"status\":[\"open\"],\"assignedAgent\":\"\",\"outputFormat\":\"csv\",\"limit\":100}", + "description": "Download up to 100 open tickets from June 1 to June 10, 2024, in CSV format." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "customer-support.analyzeYAML", + "description": "This tool accepts a YAML-formatted string containing customer support data structured as tickets, agent logs, or service interactions. It parses and analyzes the YAML content to extract insights such as ticket counts by status, common issues, agent performance metrics, and response times, returning a structured summary report suitable for operational and strategic decision-making.", + "category": "customer-support", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML-formatted string representing customer support data such as tickets or logs to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Specifies the type of analysis to perform: 'summary' for overall metrics, 'agentPerformance' for individual agent stats, or 'issueTrends' for common problems. Defaults to 'summary'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "When true, includes detailed breakdowns such as ticket-level info and timestamps in the output. Defaults to false for high-level summaries.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object specifying 'from' and 'to' ISO8601 date strings to limit analysis to tickets within that date range.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed metrics such as counts per ticket status, average response and resolution times, top agents by performance, and most frequent issues, optionally with detailed lists depending on parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to process customer support data provided in YAML format, such as exported ticket logs or agent activity records, to generate actionable analytics reports or operational summaries. It is especially useful for agents assisting with support performance assessment, identifying common customer issues, or summarizing ticket handling statistics over specific periods.", + "limitations": "This tool only processes data formatted as YAML and structured according to expected schemas; it does not validate the correctness or completeness of underlying data nor perform sentiment analysis or unstructured text interpretation.", + "examples": [ + "Analyze the YAML tickets data to get a summary of open and closed ticket counts and average resolution time.", + "Find the top performing support agents and their individual ticket statistics from YAML logs.", + "List the most common customer issues from the provided YAML support data within the last month." + ] + }, + "tags": [ + "customer-support", + "analysis", + "yaml", + "ticketing", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"tickets:\\n - id: 1234\\n status: open\\n issue: login problem\\n agent: Alice\\n created: '2024-04-01T10:00:00Z'\\n resolved: null\\n - id: 1235\\n status: closed\\n issue: password reset\\n agent: Bob\\n created: '2024-03-30T08:00:00Z'\\n resolved: '2024-03-30T09:15:00Z'\\n\",\"analysisType\":\"summary\",\"includeDetails\":false}", + "description": "Analyze basic ticket summary statistics from a sample YAML support tickets data input." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "customer-support.renderParagraph", + "description": "Renders a formatted customer support paragraph based on provided content, tone, and optionally inserts dynamic customer or product details. Accepts input text and style preferences, applies templates and tone adjustments, producing a single coherent paragraph suitable for helpdesk or chatbot responses.", + "category": "customer-support", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main text content to be rendered into a paragraph (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone for the paragraph, e.g., friendly, formal, empathetic (optional).", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "includeCustomerName", + "type": "boolean", + "description": "Whether to include the customer's name dynamically in the paragraph (optional).", + "required": false, + "defaultValue": "false" + }, + { + "name": "customerName", + "type": "string", + "description": "Customer's name to insert if includeCustomerName is true (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeProductName", + "type": "boolean", + "description": "Whether to include product or service name dynamically (optional).", + "required": false, + "defaultValue": "false" + }, + { + "name": "productName", + "type": "string", + "description": "Product or service name to insert if includeProductName is true (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the rendered paragraph (optional).", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered paragraph text with applied tone and optional dynamic details insertions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a customer support response paragraph from given content, adjusting tone to match brand voice and optionally inserting personalized details like customer or product name for enhanced engagement.", + "limitations": "This tool does not generate multi-paragraph or formatted documents, nor does it handle live conversational context beyond the provided inputs. It cannot replace full chatbot dialogue management.", + "examples": [ + "Render a friendly support paragraph including the customer's name.", + "Create a formal response paragraph mentioning the product name with empathetic tone.", + "Generate a short customer service paragraph without personal details." + ] + }, + "tags": [ + "customer-support", + "text-rendering", + "paragraph", + "personalization", + "tone-adjustment", + "helpdesk" + ], + "examples": [ + { + "inputJson": "{\"content\":\"Thank you for reaching out regarding your recent order. We are reviewing your request and will update you shortly.\",\"tone\":\"friendly\",\"includeCustomerName\":true,\"customerName\":\"Alice\",\"includeProductName\":false,\"productName\":\"\",\"maxLength\":300}", + "description": "Render a friendly paragraph personalized with customer's name." + }, + { + "inputJson": "{\"content\":\"We regret the inconvenience caused by the product malfunction. Our team is committed to resolving your issue promptly.\",\"tone\":\"empathetic\",\"includeCustomerName\":false,\"customerName\":\"\",\"includeProductName\":true,\"productName\":\"SuperWidget 3000\",\"maxLength\":400}", + "description": "Render an empathetic paragraph mentioning the product name." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "customer-support.analyzeVulnerability", + "description": "This tool accepts detailed descriptions of reported software vulnerabilities from customers or internal sources. It analyzes severity, affected components, potential impact, and recommended remediation steps. The output is a structured vulnerability assessment report to prioritize customer support actions and inform developers about critical security issues.", + "category": "customer-support", + "parameters": [ + { + "name": "vulnerabilityDescription", + "type": "string", + "description": "Detailed textual description of the vulnerability as reported by the customer or support team.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected systems, modules, or software components impacted by the vulnerability.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "customerImpactLevel", + "type": "string", + "description": "Implied impact on customers: low, medium, high, or critical.", + "required": false, + "defaultValue": "\"medium\"" + }, + { + "name": "includeRemediationTips", + "type": "boolean", + "description": "Whether to include recommended remediation steps in the analysis report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured report including vulnerability severity score, impact summary, affected components, and remediation suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when a customer or internal report describes a security vulnerability affecting software or services. It helps prioritize vulnerability handling based on severity and customer impact, enabling support agents to respond appropriately and alert development teams efficiently.", + "limitations": "The tool can analyze and classify vulnerabilities only from the supplied description; it cannot detect unknown vulnerabilities from code or logs. It may require accurate input data to produce reliable severity assessments.", + "examples": [ + "Analyze vulnerability reported as: 'SQL injection found in login page allowing unauthorized access.'", + "Assess impact and suggest remediation for buffer overflow vulnerability in payment processing module.", + "Evaluate severity of session hijacking vulnerability reported by customer in mobile app authentication flow." + ] + }, + "tags": [ + "security", + "vulnerability", + "customer-support", + "analysis", + "risk-assessment", + "remediation" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityDescription\":\"SQL injection vulnerability detected in web app login functionality allowing database access.\",\"affectedSystems\":[\"web-app\",\"login-module\"],\"customerImpactLevel\":\"high\",\"includeRemediationTips\":true}", + "description": "Analyze high-impact SQL injection vulnerability reported by customer in web application login." + }, + { + "inputJson": "{\"vulnerabilityDescription\":\"Buffer overflow exploit found in payment gateway leading to potential data corruption.\",\"affectedSystems\":[\"payment-gateway\"],\"customerImpactLevel\":\"critical\",\"includeRemediationTips\":true}", + "description": "Assess critical buffer overflow in payment gateway affecting financial transactions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "customer-support.renderSentence", + "description": "This tool accepts a templated customer support sentence with placeholders and input data to replace those placeholders, producing a finalized, context-aware response sentence. It performs variable substitution and optional formatting to render clear, personalized support messages for customer communications.", + "category": "customer-support", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "A sentence template with placeholders (e.g., 'Hello {customerName}, your ticket #{ticketId} has been updated.') to be rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs for placeholders in the template to be substituted in the rendered sentence.", + "required": true, + "defaultValue": "{}" + }, + { + "name": "capitalizeFirstLetter", + "type": "boolean", + "description": "If true, capitalizes the first letter of the rendered sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "appendSignature", + "type": "string", + "description": "An optional signature or closing line to append to the sentence.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the fully rendered sentence with all placeholders replaced and optional formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate personalized, clear sentences for customer support communications, filling in customer-specific or ticket-specific data into preset templates. It assists in automating response generation with accuracy and consistency.", + "limitations": "This tool does not perform language translation, sentiment analysis, or grammar correction beyond capitalization. It relies on correctly formatted templates and complete variable data.", + "examples": [ + "Render a greeting sentence with customer name and ticket ID inserted.", + "Generate a status update sentence with issue description and resolution ETA.", + "Create a polite closing sentence by appending an agent's signature." + ] + }, + "tags": [ + "customer-support", + "rendering", + "sentence-generation", + "templating", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"template\":\"Hello {customerName}, your ticket #{ticketId} has been updated.\",\"variables\":{\"customerName\":\"Alice\",\"ticketId\":\"12345\"},\"capitalizeFirstLetter\":true,\"appendSignature\":\"Best regards, Support Team\"}", + "description": "Rendering a greeting sentence with placeholders replaced and a signature appended." + }, + { + "inputJson": "{\"template\":\"We are currently reviewing your issue: {issueDescription}.\",\"variables\":{\"issueDescription\":\"Unable to access account\"},\"capitalizeFirstLetter\":false,\"appendSignature\":\"\"}", + "description": "Rendering a status update without capitalization and no appended signature." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "customer-support.analyzeMarkdown", + "description": "Analyzes customer support documentation written in Markdown format to extract key insights such as frequently asked questions, issue categories, and sentiment trends. Accepts raw Markdown text input, processes structural elements and content, and outputs a structured summary highlighting support topics and customer sentiment indicators.", + "category": "customer-support", + "parameters": [ + { + "name": "markdownText", + "type": "string", + "description": "Raw Markdown text content of the customer support documentation to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the textual content to gauge customer tone and urgency.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxKeywords", + "type": "number", + "description": "Maximum number of key support topics or keywords to extract from the document.", + "required": false, + "defaultValue": "10" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the Markdown content for accurate analysis and sentiment detection.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis object with extracted FAQs, categorized issues, key topics/keywords, and optional sentiment metrics summarizing customer support documentation content." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly understand or summarize large customer support documents in Markdown format, especially to identify common issues, FAQs, and overall customer sentiment for improving support workflows or training materials.", + "limitations": "Cannot replace full human quality review. May miss nuanced or context-specific issues if Markdown content is poorly structured or too brief. Sentiment analysis depends on language support and may vary in accuracy.", + "examples": [ + "Analyze this chunk of support documentation in Markdown and summarize main FAQs and issues.", + "Extract key customer concerns and sentiment from freshly authored Markdown release notes.", + "Provide a summary of support topics to help create a knowledge base from existing Markdown guides." + ] + }, + "tags": [ + "analysis", + "customer-support", + "markdown", + "sentiment-analysis", + "document-summarization", + "faq-extraction" + ], + "examples": [ + { + "inputJson": "{\"markdownText\":\"## Troubleshooting\\n\\n### FAQ\\n\\n**Q: How to reset my password?**\\nA: Go to the settings page and click reset password.\\n\\n### Common Issues\\n- Login failures\\n- Account locked\\n\\n### Notes\\nCustomer reports often express frustration about login failures, needing quick resolution.\",\"includeSentimentAnalysis\":true,\"maxKeywords\":5,\"language\":\"en\"}", + "description": "Markdown content with FAQ and common issues sections, analyzing to extract FAQs and sentiment trends." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "customer-support.renderSummary", + "description": "Generates a concise, readable summary of a customer support interaction. Accepts the full transcript or chat history along with metadata such as interaction type and customer sentiment. Processes this data to highlight key issues, resolutions, and next steps, outputting a formatted summary suitable for review or archival.", + "category": "customer-support", + "parameters": [ + { + "name": "transcript", + "type": "string", + "description": "Full text transcript or chat history of the customer interaction to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "interactionType", + "type": "string", + "description": "Type of interaction, e.g., 'email', 'chat', 'phone call', which may influence summary style.", + "required": false, + "defaultValue": "chat" + }, + { + "name": "customerSentiment", + "type": "string", + "description": "Overall sentiment of the customer during the interaction (e.g., 'positive', 'neutral', 'negative'), to emphasize tone in summary.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the transcript for appropriate language processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of characters or words for the summary to control length.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated summary text and metadata including a brief topic list and detected action items." + }, + "aiAgent": { + "useCase": "Use this tool when a concise, informative summary of a customer support conversation is needed for documentation, quality review, or handing over cases between support agents. It helps save time by distilling long interaction transcripts into key points and next steps.", + "limitations": "Cannot reliably detect non-textual cues such as voice tone or pauses. Accuracy depends on transcript quality and may miss very subtle context or sarcasm.", + "examples": [ + "Summarize this phone call transcript for agent review.", + "Create a brief summary of the chat conversation highlighting the customer's main issue and resolution.", + "Provide a summary of the support email exchange with key action items." + ] + }, + "tags": [ + "customer-support", + "summary", + "conversation", + "transcript", + "chat", + "email", + "phone", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"transcript\":\"Hello, my internet has been disconnecting frequently. I tried restarting the router several times but it didn't help.\",\"interactionType\":\"chat\",\"customerSentiment\":\"negative\",\"language\":\"en\",\"maxLength\":300}", + "description": "Generate a summary of a chat complaint about internet disconnection." + }, + { + "inputJson": "{\"transcript\":\"Customer called to ask about billing details and requested a copy of last invoice.\",\"interactionType\":\"phone call\",\"customerSentiment\":\"neutral\",\"language\":\"en\",\"maxLength\":200}", + "description": "Summarize a phone call about billing inquiry with emphasis on customer requests." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "customer-support.formatTable", + "description": "Formats raw customer support data tables for improved readability and presentation. Accepts input as JSON array of objects, applies optional column selection, sorting, and alignment, and outputs a formatted table string in plain text or markdown, suitable for reports or customer communication.", + "category": "customer-support", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing rows of customer support data to format (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Optional list of column names to include in the output table; if omitted, all columns are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sortBy", + "type": "string", + "description": "Optional column name by which to sort the table rows.", + "required": false, + "defaultValue": "" + }, + { + "name": "sortDescending", + "type": "boolean", + "description": "Whether to sort the table in descending order when sortBy is specified.", + "required": false, + "defaultValue": "false" + }, + { + "name": "columnAlignment", + "type": "object", + "description": "Optional object mapping column names to alignment values ('left', 'right', or 'center').", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the returned table: 'plain' for plain text or 'markdown' for GitHub-flavored markdown table.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted table string under the 'formattedTable' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to take raw tabular data from customer support logs or reports and present it in a clean, human-readable tabular format for summaries, emails, or dashboards. It is especially helpful when you want to customize the columns shown, sort rows, and output in markdown or plain text for communication or documentation.", + "limitations": "This tool does not perform data analysis or validation beyond formatting. It assumes input data is well-formed and flat (no nested objects). It cannot format tables with complex multi-level headers or cells.", + "examples": [ + "Format a support ticket summary with selected columns and output as markdown.", + "Sort customer feedback data by rating in descending order and align columns for readability.", + "Create a plain text table of recent customer interactions showing only ticket ID, status, and assigned agent." + ] + }, + "tags": [ + "formatting", + "customer-support", + "table", + "data-presentation", + "markdown", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"ticketId\":\"T001\",\"status\":\"Open\",\"priority\":\"High\",\"assignedTo\":\"Alice\"},{\"ticketId\":\"T002\",\"status\":\"Closed\",\"priority\":\"Low\",\"assignedTo\":\"Bob\"}],\"columns\":[\"ticketId\",\"status\",\"assignedTo\"],\"outputFormat\":\"markdown\"}", + "description": "Format table showing only ticketId, status, and assignedTo columns in markdown." + }, + { + "inputJson": "{\"data\":[{\"customer\":\"John\",\"rating\":5,\"comment\":\"Great support\"},{\"customer\":\"Jane\",\"rating\":3,\"comment\":\"Average experience\"}],\"sortBy\":\"rating\",\"sortDescending\":true,\"outputFormat\":\"plain\"}", + "description": "Sort customer feedback by rating descending and output as plain text table." + }, + { + "inputJson": "{\"data\":[{\"ticket\":\"123\",\"status\":\"Open\",\"agent\":\"Mike\"},{\"ticket\":\"124\",\"status\":\"Pending\",\"agent\":\"Lucy\"}],\"columnAlignment\":{\"ticket\":\"left\",\"status\":\"center\",\"agent\":\"right\"},\"outputFormat\":\"markdown\"}", + "description": "Format table with customized column alignment and markdown output." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "customer-support.formatQuery", + "description": "Formats raw customer support queries into a standardized, concise, and clear structure by processing the input query text along with optional metadata such as customer details, query category, and urgency. Outputs a structured JSON object optimized for routing and automated handling in customer service systems.", + "category": "customer-support", + "parameters": [ + { + "name": "rawQuery", + "type": "string", + "description": "The original text of the customer's support query requiring formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerId", + "type": "string", + "description": "Optional unique identifier of the customer submitting the query to associate context or history.", + "required": false, + "defaultValue": "" + }, + { + "name": "queryCategory", + "type": "string", + "description": "Optional category label indicating the type of query (e.g., billing, technical, account).", + "required": false, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Optional urgency classification (e.g., low, medium, high) indicating priority of the query.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag indicating whether to generate a concise summary of the query content.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the formatted query, extracted metadata such as category, urgency, a summary (if requested), and standardized fields for downstream processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives unstructured or inconsistent customer queries that need to be normalized for routing, prioritization, or to feed automated response systems. It helps maintain uniformity and enhances the efficiency of customer support workflows by producing structured and cleanly formatted query data.", + "limitations": "This tool does not resolve queries or provide answers; it only reformats and standardizes queries. It may have limited accuracy if input text is extremely ambiguous or incomplete.", + "examples": [ + "Format the raw support request for better automated handling.", + "Standardize queries before routing to appropriate support teams.", + "Generate a summarized and categorized version of customer complaints for reporting." + ] + }, + "tags": [ + "customer-support", + "query-formatting", + "text-processing", + "helpdesk", + "ticket-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"rawQuery\":\"I'm having trouble logging into my account since yesterday.\",\"customerId\":\"C12345\",\"queryCategory\":\"technical\",\"urgencyLevel\":\"high\",\"includeSummary\":true}", + "description": "High urgency technical support login issue with customer ID provided." + }, + { + "inputJson": "{\"rawQuery\":\"Please update my billing address.\",\"includeSummary\":false}", + "description": "Simple billing update request without customer ID and summary." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "customer-support.formatArticle", + "description": "Formats a customer support knowledge base article by structuring headings, paragraphs, lists, and highlighting key terms. Accepts raw article text (markdown or plain) and formatting options, then outputs a clean, styled HTML snippet ready for publication or integration into support portals.", + "category": "customer-support", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The unformatted article content in plain text or markdown.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Style template to apply, e.g., 'basic', 'modern', or custom CSS class name.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "List of keywords to highlight within the article for emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTOC", + "type": "boolean", + "description": "Whether to generate and include a table of contents based on headings.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before wrapping (0 for no wrap).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted HTML string and optional metadata such as detected headings." + }, + "aiAgent": { + "useCase": "Use when needing to transform raw or semi-structured support article text into a clean, user-friendly HTML format with proper structure, styling, and optional features like keyword highlighting or table of contents for integration into customer support portals.", + "limitations": "Cannot intelligently rewrite or generate article content; only formats existing text. Complex markdown with unsupported extensions may not render perfectly. Styling is limited to predefined styles or basic CSS classes.", + "examples": [ + "Format raw markdown text into clean HTML with highlighted key terms for publishing.", + "Convert plain text article with headings into styled HTML including a table of contents.", + "Reformat existing support content to new style template without altering content." + ] + }, + "tags": [ + "customer-support", + "formatting", + "knowledge-base", + "html", + "article", + "documentation", + "helpdesk" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"# How to Reset Password\\nTo reset your password, follow these steps:\\n1. Go to the login page.\\n2. Click 'Forgot Password'.\\n3. Enter your email address.\\n4. Check your email for the reset link.\",\"formatStyle\":\"modern\",\"highlightKeywords\":[\"reset\",\"password\"],\"includeTOC\":true,\"maxLineLength\":80}", + "description": "Formatting a basic password reset article with modern style, keyword highlights, and a table of contents." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "customer-support.draftParagraph", + "description": "Generates a professional customer support paragraph based on the issue description, customer sentiment, and desired tone. Accepts inputs such as issue details, customer mood, and tone preference, then drafts a clear and empathetic paragraph suitable for customer communication.", + "category": "customer-support", + "parameters": [ + { + "name": "issueDescription", + "type": "string", + "description": "A concise summary of the customer's issue or inquiry to address in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerSentiment", + "type": "string", + "description": "The sentiment or mood of the customer (e.g., frustrated, neutral, happy) to tailor the tone appropriately.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred communication tone for the paragraph such as formal, friendly, empathetic, or apologetic.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "includeSolution", + "type": "boolean", + "description": "Whether to include a potential solution or next steps in the drafted paragraph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., en, es) for the drafted paragraph output.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted paragraph text that can be used directly in customer communications." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to quickly generate empathetic, professional, and clear customer support paragraphs based on provided issue details and customer sentiment, helping automate or assist in drafting customer replies.", + "limitations": "Cannot handle complex multi-issue tickets requiring deep technical analysis; may not replace full personalized human responses in sensitive cases.", + "examples": [ + "Draft a friendly paragraph responding to a frustrated customer about a delayed shipment.", + "Create an apologetic paragraph addressing a billing error in English.", + "Generate a formal paragraph for a neutral customer inquiry about product features." + ] + }, + "tags": [ + "customer support", + "drafting", + "communication", + "customer service", + "automation", + "help desk", + "writing" + ], + "examples": [ + { + "inputJson": "{\"issueDescription\":\"Customer reports their order was delayed by 3 weeks.\",\"customerSentiment\":\"frustrated\",\"tone\":\"empathetic\",\"includeSolution\":true,\"language\":\"en\"}", + "description": "Draft an empathetic response for a frustrated customer about delayed order including next steps." + }, + { + "inputJson": "{\"issueDescription\":\"Customer has a question about refund policy.\",\"customerSentiment\":\"neutral\",\"tone\":\"formal\",\"includeSolution\":false,\"language\":\"en\"}", + "description": "Create a formal paragraph responding to a neutral customer's refund policy inquiry without suggesting solutions." + }, + { + "inputJson": "{\"issueDescription\":\"Customer is happy with recent support experience and wants to leave positive feedback.\",\"customerSentiment\":\"happy\",\"tone\":\"friendly\",\"includeSolution\":false,\"language\":\"en\"}", + "description": "Generate a friendly paragraph acknowledging positive customer feedback." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "customer-support.composeLink", + "description": "This tool generates a customized, user-friendly support link containing specified parameters such as ticket ID, customer ID, and optional tracking codes. It accepts supporting metadata and produces a fully formatted URL that directs customers to the appropriate helpdesk page or resource.", + "category": "customer-support", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "Base URL where the support link will point, e.g., helpdesk homepage or ticket portal", + "required": true, + "defaultValue": "" + }, + { + "name": "ticketId", + "type": "string", + "description": "Unique identifier for the customer's support ticket to include in the link", + "required": false, + "defaultValue": "" + }, + { + "name": "customerId", + "type": "string", + "description": "Identifier corresponding to the customer, used to personalize or authenticate the link", + "required": false, + "defaultValue": "" + }, + { + "name": "trackingCode", + "type": "string", + "description": "Optional tracking or campaign code to monitor link engagement and source", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalParams", + "type": "object", + "description": "Optional dictionary of additional query parameters to append to the link for customization", + "required": false, + "defaultValue": "{}" + }, + { + "name": "shortenLink", + "type": "boolean", + "description": "Flag indicating whether to create a shortened version of the generated link if supported", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed support link in full URL format and, if requested, a shortened URL variant." + }, + "aiAgent": { + "useCase": "Use this tool when generating direct URLs for customers to access specific support tickets or helpdesk resources. It helps automate link creation with relevant identifiers and tracking, improving customer experience and operational efficiency. Suitable for embedding in emails, chat replies, or knowledgebase articles.", + "limitations": "Does not guarantee link validity if the base URL is incorrect or the ticket/customer IDs do not exist. It does not handle authentication or secure access control beyond URL parameters.", + "examples": [ + "Generate a support link for ticket ID 12345 and customer ID c987 with a marketing tracking code.", + "Compose a base helpdesk URL link with additional parameters for service type and priority.", + "Create a shortened support link for a specific ticket to use in SMS notification." + ] + }, + "tags": [ + "customer-support", + "link-generation", + "support-ticket", + "automation", + "URL", + "helpdesk", + "customer-service" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://support.example.com/ticket\",\"ticketId\":\"12345\",\"customerId\":\"c987\",\"trackingCode\":\"springpromo2024\",\"additionalParams\":{\"lang\":\"en\",\"priority\":\"high\"},\"shortenLink\":false}", + "description": "Compose a detailed support ticket link including customer ID and campaign tracking without shortening." + }, + { + "inputJson": "{\"baseUrl\":\"https://helpdesk.example.com/view\",\"ticketId\":\"ABCD-2024\",\"customerId\":\"cust456\",\"trackingCode\":\"\",\"additionalParams\":{},\"shortenLink\":true}", + "description": "Generate and shorten a link pointing to a specific ticket for easier sharing via chat or SMS." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "customer-support.buildQueue", + "description": "Creates a prioritized customer support queue from provided tickets, applying optional filters (e.g., priority, category) and rules (e.g., SLA deadlines). Accepts an array of support tickets and configuration parameters, then outputs a structured queue with tickets ordered for efficient handling by support agents.", + "category": "customer-support", + "parameters": [ + { + "name": "tickets", + "type": "array", + "description": "An array of customer support ticket objects to be queued. Each ticket should contain at least an ID, priority, category, creation time, and status.", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityLevels", + "type": "array", + "description": "An ordered list of priority levels to influence the sorting of tickets (e.g., ['high', 'medium', 'low']).", + "required": false, + "defaultValue": "[\"high\",\"medium\",\"low\"]" + }, + { + "name": "filterCategories", + "type": "array", + "description": "Optional list of ticket categories to include. If empty or omitted, all categories are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "slaDeadlineHours", + "type": "number", + "description": "Number of hours within which tickets must be handled to meet SLA. Used to boost ticket priority.", + "required": false, + "defaultValue": "24" + }, + { + "name": "maxQueueSize", + "type": "number", + "description": "Maximum number of tickets to include in the output queue. If omitted, no limit is applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeResolved", + "type": "boolean", + "description": "Whether to include tickets marked as resolved or closed in the queue; default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the prioritized queue, containing the ordered list of ticket IDs and metadata such as queue size and applied filters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to organize a large set of customer support tickets into a structured and prioritized queue for agents to handle efficiently. It is ideal for preparing and filtering tickets based on SLA requirements, priority levels, and categories before assignment or reporting.", + "limitations": "This tool does not directly assign tickets to agents or handle real-time ticket updates. It also does not modify ticket content or status; it only organizes and filters tickets based on input criteria.", + "examples": [ + "Create a priority queue from 100 support tickets, focusing on 'technical' and 'billing' categories, prioritizing tickets with high urgency and SLA deadlines within 12 hours.", + "Build a queue of unresolved tickets with a maximum size of 50 to distribute among support staff for the day.", + "Generate a support ticket queue that includes all categories but excludes tickets marked as resolved." + ] + }, + "tags": [ + "customer-support", + "queue-management", + "ticket-prioritization", + "support-tickets", + "sla-management" + ], + "examples": [ + { + "inputJson": "{\"tickets\":[{\"id\":\"t1\",\"priority\":\"high\",\"category\":\"technical\",\"createdAt\":\"2024-06-01T08:00:00Z\",\"status\":\"open\"},{\"id\":\"t2\",\"priority\":\"low\",\"category\":\"billing\",\"createdAt\":\"2024-05-30T12:00:00Z\",\"status\":\"open\"},{\"id\":\"t3\",\"priority\":\"medium\",\"category\":\"technical\",\"createdAt\":\"2024-06-01T09:30:00Z\",\"status\":\"resolved\"}],\"priorityLevels\":[\"high\",\"medium\",\"low\"],\"filterCategories\":[\"technical\",\"billing\"],\"slaDeadlineHours\":24,\"maxQueueSize\":10,\"includeResolved\":false}", + "description": "Build a prioritized queue including only 'technical' and 'billing' tickets, excluding resolved tickets, limiting size to 10." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "customer-support.composeArticle", + "description": "Creates a detailed customer support article based on provided topic, key points, and optional troubleshooting steps. Accepts article title, summary, detailed content sections, and related tags; then generates a structured, well-formatted article text suitable for help desks and knowledge bases.", + "category": "customer-support", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the support article to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "A brief summary or introduction for the article.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentSections", + "type": "array", + "description": "An array of objects each with 'heading' and 'content' strings representing article subsections and their details.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "troubleshootingSteps", + "type": "array", + "description": "Optional list of troubleshooting instructions related to the topic.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "relatedTags", + "type": "array", + "description": "Tags or keywords to categorize the article for indexing and search purposes.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed article with structured title, summary, sections, troubleshooting steps, and tags." + }, + "aiAgent": { + "useCase": "Use this tool when generating new or updated customer support articles to provide helpful, clear, and comprehensive documentation based on specified topics and details. It aids in constructing consistent articles for knowledge bases, FAQs, and help centers.", + "limitations": "Does not fetch real-time data or customer history; quality depends on input detail; not a live chat or interactive agent replacement.", + "examples": [ + "Create an article titled 'Resetting Your Password' with clear steps and troubleshooting tips.", + "Generate a support article on 'Connecting to VPN' including detailed sections and tags.", + "Compose a knowledge base entry explaining 'Billing and Payment Issues' with related keywords." + ] + }, + "tags": [ + "customer support", + "documentation", + "knowledge base", + "article generation", + "help desk", + "composing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Resetting Your Password\",\"summary\":\"Steps to reset your account password quickly and securely.\",\"contentSections\":[{\"heading\":\"Introduction\",\"content\":\"This article explains how to reset your password if you have forgotten it or need to change it.\"},{\"heading\":\"Step-by-Step Instructions\",\"content\":\"1. Go to the login page.\n2. Click on 'Forgot Password'.\n3. Enter your registered email address.\n4. Follow the instructions sent to your email.\"}],\"troubleshootingSteps\":[\"If you do not receive the reset email, check your spam folder.\",\"Make sure your email is registered with us.\"],\"relatedTags\":[\"password\",\"account\",\"security\"]}", + "description": "Compose a password reset support article with instructions and troubleshooting." + }, + { + "inputJson": "{\"title\":\"Connecting to VPN\",\"summary\":\"A guide to help users connect securely to the company VPN.\",\"contentSections\":[{\"heading\":\"Prerequisites\",\"content\":\"Ensure you have VPN client software installed and appropriate credentials.\"},{\"heading\":\"Connection Steps\",\"content\":\"1. Open VPN client.\n2. Enter server address.\n3. Provide user credentials.\n4. Click Connect.\"}],\"troubleshootingSteps\":[],\"relatedTags\":[\"VPN\",\"network\",\"security\"]}", + "description": "Generate a VPN connection article with setup instructions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "customer-support.buildPipeline", + "description": "Builds a customizable customer support automation pipeline by accepting configuration for intake channels, routing rules, response templates, and escalation criteria. Processes the inputs to generate a structured pipeline object that can be deployed to automate ticket triage, response, and escalation workflows.", + "category": "customer-support", + "parameters": [ + { + "name": "intakeChannels", + "type": "array", + "description": "List of customer support intake channels to integrate (e.g., email, chat, social media).", + "required": true, + "defaultValue": "" + }, + { + "name": "routingRules", + "type": "array", + "description": "Set of rules defining how incoming tickets are routed to teams or agents based on ticket properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "responseTemplates", + "type": "object", + "description": "Dictionary of pre-approved response templates keyed by issue type or category for automated replies.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "escalationCriteria", + "type": "object", + "description": "Criteria to escalate tickets to higher support tiers or management, such as priority level or time thresholds.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable logging of pipeline processing steps for auditing and debugging.", + "required": false, + "defaultValue": "false" + }, + { + "name": "pipelineName", + "type": "string", + "description": "A unique name to identify the pipeline configuration.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object describing the complete configured customer support automation pipeline including all rules, channels, templates, and escalation logic, ready for deployment or simulation." + }, + "aiAgent": { + "useCase": "Use this tool when designing an automated customer support workflow that integrates multiple communication channels and automates ticket routing, responses, and escalations based on business rules. It helps build structured pipelines that streamline customer service operations.", + "limitations": "Does not execute the pipeline; only builds configuration. Does not provide analytics or monitor live customer interactions. Requires integration with external systems for deployment.", + "examples": [ + "Create a support pipeline integrating email and chat with routing rules sending billing issues to the finance team and technical issues to tech support.", + "Build a pipeline named 'PrioritySupport' that escalates tickets with critical priority after 1 hour without response.", + "Generate a pipeline that uses predefined response templates for common FAQs and routes all social media inquiries to the social media support team." + ] + }, + "tags": [ + "customer-support", + "automation", + "pipeline", + "ticket-routing", + "response-management", + "escalation" + ], + "examples": [ + { + "inputJson": "{\"intakeChannels\":[\"email\",\"chat\"],\"routingRules\":[{\"condition\":\"category=='billing'\",\"targetTeam\":\"finance\"},{\"condition\":\"category=='technical'\",\"targetTeam\":\"tech-support\"}],\"responseTemplates\":{\"billing\":\"Thank you for contacting billing.\"},\"escalationCriteria\":{\"priority\":\"critical\",\"timeInQueueMinutes\":60},\"enableLogging\":true,\"pipelineName\":\"StandardSupport\"}", + "description": "Build a support pipeline with email and chat channels, routing billing and technical issues to respective teams, including escalation for critical priority after 60 minutes." + }, + { + "inputJson": "{\"intakeChannels\":[\"social-media\"],\"routingRules\":[{\"condition\":\"true\",\"targetTeam\":\"social-media-support\"}],\"responseTemplates\":{},\"escalationCriteria\":{},\"enableLogging\":false,\"pipelineName\":\"SocialMediaSupport\"}", + "description": "Create a social media only support pipeline routing all tickets to social media support without escalation rules." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "customer-support.buildCluster", + "description": "This tool accepts configuration parameters for building a scalable customer support agent cluster, including agent skill sets, shift schedules, and workload distribution rules. It processes these inputs to automatically provision and organize support agents into an optimized cluster for efficient ticket handling. The output is a cluster configuration summary detailing agent allocation and expected performance metrics.", + "category": "customer-support", + "parameters": [ + { + "name": "agentProfiles", + "type": "array", + "description": "List of support agent profiles including skills and experience levels.", + "required": true, + "defaultValue": "" + }, + { + "name": "shiftSchedules", + "type": "array", + "description": "Array of objects defining agent work shifts with start and end times and assigned agents.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxConcurrentTickets", + "type": "number", + "description": "Maximum number of support tickets an individual agent can handle simultaneously.", + "required": false, + "defaultValue": "5" + }, + { + "name": "priorityRouting", + "type": "boolean", + "description": "Enable priority-based routing of tickets to the most qualified agents.", + "required": false, + "defaultValue": "true" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region for the support cluster to optimize local time zones and languages.", + "required": false, + "defaultValue": "global" + }, + { + "name": "workloadBalanceStrategy", + "type": "string", + "description": "Strategy for distributing tickets among agents (e.g., 'roundRobin', 'skillBased', 'loadEvenly').", + "required": false, + "defaultValue": "skillBased" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cluster ID, agent allocation map, shift assignments summary, and estimated performance metrics like average response time and ticket resolution rate." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create and organize a cluster of customer support agents based on their skills, availability, and workload rules to optimize ticket handling efficiency. Especially useful for scaling support during varying demand or restructuring teams dynamically.", + "limitations": "Does not handle hiring or training of agents, nor does it interact with ticketing software directly. It only provisions and configures logical agent clusters based on input parameters.", + "examples": [ + "Build a customer support cluster for US region with agents specialized in billing and technical support, scheduling shifts across timezone differences.", + "Configure an agent cluster that limits each agent to 3 concurrent tickets and uses priority routing for premium customers.", + "Create a support team cluster distributing tickets evenly among agents regardless of skill to balance workload." + ] + }, + "tags": [ + "customer-support", + "infrastructure", + "agent-management", + "clustering", + "workforce-optimization" + ], + "examples": [ + { + "inputJson": "{\"agentProfiles\":[{\"id\":\"a1\",\"skills\":[\"billing\",\"general\"],\"experience\":3},{\"id\":\"a2\",\"skills\":[\"technical\",\"network\"],\"experience\":5}],\"shiftSchedules\":[{\"agentId\":\"a1\",\"start\":\"08:00\",\"end\":\"16:00\"},{\"agentId\":\"a2\",\"start\":\"12:00\",\"end\":\"20:00\"}],\"maxConcurrentTickets\":4,\"priorityRouting\":true,\"region\":\"US\",\"workloadBalanceStrategy\":\"skillBased\"}", + "description": "Build a cluster with two agents in the US region, skilled differently, scheduled with overlapping shifts, limiting to 4 tickets each, enabling priority routing, and distributing tickets by skill." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "customer-support.buildSchema", + "description": "This tool generates a structured JSON schema definition for customer support data entities such as tickets, user profiles, and interaction records. It accepts input describing entity fields, types, and validation rules, then produces a comprehensive JSON schema to ensure consistent data formatting and validation in customer support systems.", + "category": "customer-support", + "parameters": [ + { + "name": "entityName", + "type": "string", + "description": "The name of the customer support data entity to build the schema for (e.g., Ticket, UserProfile).", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "An array of field definitions, each including field name, data type, required flag, and optional validation constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalProperties", + "type": "boolean", + "description": "Flag indicating whether additional properties beyond those defined are allowed in this schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "An optional textual description of the schema's purpose or usage context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON schema object compliant with JSON Schema standards defining the structure, types, and validation rules for the specified customer support data entity." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create or update standardized JSON schemas for customer support entities to validate data inputs, enforce consistency, or automate API contracts across support platforms.", + "limitations": "The tool cannot infer complex conditional validation rules or nested references without explicit field definitions; it does not generate user interface forms or detailed database schema mappings.", + "examples": [ + "Generate a schema for a 'Ticket' entity with fields like 'id' (string, required), 'status' (string, required), and 'createdDate' (string, optional with date format).", + "Build a schema for 'UserProfile' with 'userId' (string, required), 'email' (string, required, format: email), and 'preferences' (object, optional)." + ] + }, + "tags": [ + "customer support", + "schema generation", + "data validation", + "JSON schema", + "automation" + ], + "examples": [ + { + "inputJson": "{\"entityName\":\"Ticket\",\"fields\":[{\"name\":\"id\",\"type\":\"string\",\"required\":true},{\"name\":\"status\",\"type\":\"string\",\"required\":true},{\"name\":\"createdDate\",\"type\":\"string\",\"required\":false,\"format\":\"date-time\"}],\"additionalProperties\":false,\"description\":\"Schema for support tickets.\"}", + "description": "Generating a JSON schema for support tickets defining required and optional fields with types and constraints." + }, + { + "inputJson": "{\"entityName\":\"UserProfile\",\"fields\":[{\"name\":\"userId\",\"type\":\"string\",\"required\":true},{\"name\":\"email\",\"type\":\"string\",\"required\":true,\"format\":\"email\"},{\"name\":\"preferences\",\"type\":\"object\",\"required\":false}],\"additionalProperties\":false,\"description\":\"Schema for user profile data.\"}", + "description": "Building a schema validating user profile data with email format enforcement and optional preferences object." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "customer-support.buildPackage", + "description": "Builds a deployable customer support package containing configuration, scripts, and documentation to set up and customize help desk environments. Takes inputs like support workflows, canned responses, integration settings, and generates a compressed package ready for installation or distribution.", + "category": "customer-support", + "parameters": [ + { + "name": "workflowConfig", + "type": "object", + "description": "Configuration object defining support ticket workflows, statuses, and escalation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "cannedResponses", + "type": "array", + "description": "Array of predefined response templates to common customer inquiries to streamline support.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "integrationSettings", + "type": "object", + "description": "Settings for third-party integrations such as CRM, chatbots, or notification systems.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentation", + "type": "string", + "description": "Markdown or plain text documentation describing usage, features, and installation instructions.", + "required": false, + "defaultValue": "" + }, + { + "name": "packageName", + "type": "string", + "description": "Name identifier for the support package being built.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version tag for the package (e.g., 1.0.0).", + "required": false, + "defaultValue": "1.0.0" + } + ], + "returns": { + "type": "object", + "description": "An object including the package name, version, and the base64-encoded artifact representing the compressed package file to deploy in customer support environments." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a deployable configuration bundle for customer support software, including workflows, responses, and integrations, to automate setting up or replicating help desk environments.", + "limitations": "This tool does not generate live code for backend systems or dynamically link integrations. It only packages provided static configurations and assets.", + "examples": [ + "Create a customer support package for a retail help desk with predefined workflows and responses.", + "Build a packaged setup including CRM integration for onboarding new support teams.", + "Generate a versioned documentation package with default canned responses for internal training." + ] + }, + "tags": [ + "customer-support", + "package", + "configuration", + "automation", + "help-desk" + ], + "examples": [ + { + "inputJson": "{\"workflowConfig\":{\"statuses\":[\"Open\",\"Pending\",\"Closed\"],\"escalationPolicy\":{\"thresholdHours\":48,\"notify\":\"manager@example.com\"}},\"cannedResponses\":[{\"id\":\"greeting\",\"text\":\"Hello! How can I assist you today?\"}],\"integrationSettings\":{\"crm\":\"enabled\",\"chatbot\":\"disabled\"},\"documentation\":\"# Support Package\\nThis package includes workflows and canned responses.\",\"packageName\":\"retailHelpDesk\",\"version\":\"1.2.0\"}", + "description": "Build a customer support package with retail workflows, canned responses, CRM integration, and documentation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "customer-support.generateAnomaly", + "description": "Analyzes customer support interaction data to detect anomalies such as sudden spikes in support tickets, unusual response times, or unexpected customer sentiment shifts. Accepts time-series or batch data inputs and outputs detected anomaly events with context and severity levels to aid proactive issue resolution.", + "category": "customer-support", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of customer support events or metrics, each with timestamp and relevant fields (e.g., ticket count, response time, sentiment).", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names to analyze for anomalies (e.g., ['ticketCount', 'responseTime']).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Rolling time window size in minutes to aggregate and analyze the data for anomalies.", + "required": false, + "defaultValue": "60" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Anomaly detection sensitivity from 0 (low) to 1 (high), controlling tradeoff between false positives and false negatives.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted UTC timestamp to start anomaly detection period (inclusive).", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted UTC timestamp to end anomaly detection period (exclusive).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of anomaly events each with timestamp, metric, anomaly score, severity label, and descriptive message." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring customer support operations to identify irregularities indicating potential system issues, staff shortages, or customer dissatisfaction. It helps detect anomalies early to enable prompt investigation and mitigation.", + "limitations": "The tool does not diagnose root causes; it only detects anomalies based on metric deviations. It depends on quality and granularity of input data. Not suited for text-only unstructured data without extracted metrics.", + "examples": [ + "Detect anomalies in hourly ticket volume and response times over the past day", + "Identify unusual drops or spikes in customer sentiment scores last week", + "Monitor support interaction metrics for irregular patterns in real-time using a moving 60-minute window" + ] + }, + "tags": [ + "customer-support", + "anomaly-detection", + "analytics", + "monitoring", + "support-metrics", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"ticketCount\":120,\"responseTime\":5.2,\"sentimentScore\":0.75},{\"timestamp\":\"2024-06-01T01:00:00Z\",\"ticketCount\":160,\"responseTime\":8.4,\"sentimentScore\":0.50},{\"timestamp\":\"2024-06-01T02:00:00Z\",\"ticketCount\":115,\"responseTime\":5.0,\"sentimentScore\":0.78}],\"metrics\":[\"ticketCount\",\"responseTime\",\"sentimentScore\"],\"timeWindowMinutes\":60,\"sensitivity\":0.8,\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-01T03:00:00Z\"}", + "description": "Detect anomalies in ticket count, response time, and sentiment over a 3-hour period with hourly granularity." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "customer-support.generateGraph", + "description": "Generates a visual graph representing customer support metrics over a specified period. Accepts input data including ticket counts, resolution times, and satisfaction scores, then processes and outputs a graph (line, bar, or pie) summarizing these metrics to help analyze customer service performance.", + "category": "customer-support", + "parameters": [ + { + "name": "metricType", + "type": "string", + "description": "The type of customer support metric to graph (e.g., 'tickets', 'resolutionTime', 'satisfactionScore').", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date for the data range in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date for the data range in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "The type of graph to generate ('line', 'bar', or 'pie').", + "required": false, + "defaultValue": "line" + }, + { + "name": "groupBy", + "type": "string", + "description": "The time interval to group data by ('day', 'week', 'month').", + "required": false, + "defaultValue": "day" + }, + { + "name": "includeSubcategories", + "type": "boolean", + "description": "Whether to include breakdown by subcategories such as support channels or issue types.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated graph data and metadata: includes the graph type, labels, data points tied to the selected metric, and any grouping or subcategory breakdowns." + }, + "aiAgent": { + "useCase": "Use this tool when an AI assistant needs to provide visual analysis of customer support data for decision making or reporting: such as assessing ticket trends, monitoring resolution efficiency, or gauging customer satisfaction over time. It helps turn raw metrics into interpretable graphs to guide business strategy or operational improvements.", + "limitations": "This tool does not fetch raw data itself; it requires pre-aggregated or accessible data within the system it integrates with. It cannot perform advanced predictive analytics or automatically generate insights from the graphs.", + "examples": [ + "Generate a monthly line graph showing ticket volumes between Jan 1, 2024 and Mar 31, 2024.", + "Create a pie chart of customer satisfaction scores grouped by support channel for the last week.", + "Produce a bar graph of average resolution time per week including issue type breakdowns over last 30 days." + ] + }, + "tags": [ + "customer-support", + "graph-generation", + "metrics-visualization", + "reporting", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"metricType\":\"tickets\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"graphType\":\"line\",\"groupBy\":\"month\",\"includeSubcategories\":false}", + "description": "Generate a monthly line graph of ticket counts from Jan to Mar 2024." + }, + { + "inputJson": "{\"metricType\":\"satisfactionScore\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-07\",\"graphType\":\"pie\",\"groupBy\":\"day\",\"includeSubcategories\":true}", + "description": "Create a pie chart of customer satisfaction scores by support channel for the first week of May 2024." + }, + { + "inputJson": "{\"metricType\":\"resolutionTime\",\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"graphType\":\"bar\",\"groupBy\":\"week\",\"includeSubcategories\":true}", + "description": "Produce a weekly bar graph of average resolution times with issue type breakdowns in April 2024." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "customer-support.generateMarkdown", + "description": "Generates a formatted Markdown document for customer support responses or knowledge base articles. Accepts input such as title, main content, optional sections like FAQ and troubleshooting steps, and produces a cohesive Markdown string ready for use in support portals or emails.", + "category": "customer-support", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the Markdown document, such as the subject of the support article or response.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The core body text providing detailed explanation, instructions, or response to a customer inquiry.", + "required": true, + "defaultValue": "" + }, + { + "name": "faqSections", + "type": "array", + "description": "Optional array of FAQ entries, each with 'question' and 'answer' strings, to include common queries and solutions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "troubleshootingSteps", + "type": "array", + "description": "Optional ordered list of troubleshooting steps, each as a string, to guide the customer through problem resolution.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeContactInfo", + "type": "boolean", + "description": "Flag to append contact information or support hotline details at the end of the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Contact details to display if includeContactInfo is true; e.g., phone number, email, or support webpage URL.", + "required": false, + "defaultValue": "\"For further assistance, contact support@example.com\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown string under the 'markdown' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured customer support information into a well-formatted Markdown document for emails, knowledge bases, or help center content. It suits scenarios requiring clear, readable, and organized text presentation for customer communication.", + "limitations": "Cannot generate content automatically; the input must provide complete textual information. Does not convert to formats other than Markdown.", + "examples": [ + "Create a knowledge base article including FAQ and troubleshooting steps in Markdown format.", + "Generate a support email response formatted in Markdown, including contact info at the bottom.", + "Produce a concise Markdown document with just a title and main content for a customer follow-up email." + ] + }, + "tags": [ + "customer-support", + "markdown", + "documentation", + "email-template", + "knowledge-base" + ], + "examples": [ + { + "inputJson": "{\"title\":\"How to Reset Your Password\",\"content\":\"Follow these steps to reset your password securely.\",\"faqSections\":[{\"question\":\"What if I forget my email?\",\"answer\":\"Contact support to verify your identity.\"}],\"troubleshootingSteps\":[\"Go to the login page.\",\"Click on 'Forgot Password'.\",\"Enter your email address.\",\"Check your inbox for reset link.\"],\"includeContactInfo\":true,\"contactInfo\":\"Email us at support@example.com or call 1-800-555-1234.\"}", + "description": "Generate a support article in Markdown format with FAQs, troubleshooting steps, and contact info." + }, + { + "inputJson": "{\"title\":\"Order Status Inquiry\",\"content\":\"Your order is currently being processed and should ship within 3 business days.\",\"includeContactInfo\":false}", + "description": "Generate a simple customer support reply without contact info." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "customer-support.generateDiagram", + "description": "Generates visual diagrams illustrating customer support processes or workflows based on input descriptions, steps, and roles. Accepts structured process data or plain text descriptions, processes them into flowchart or swimlane diagram formats, and outputs diagram images (SVG/PNG) or diagram data (JSON) for use in documentation or training.", + "category": "customer-support", + "parameters": [ + { + "name": "processName", + "type": "string", + "description": "The title or name of the customer support process to be visualized.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered list of process steps, each step being an object with properties such as description, role, and nextStep reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to generate - e.g., 'flowchart' for sequential steps, 'swimlane' to show roles across steps.", + "required": false, + "defaultValue": "flowchart" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'svg', 'png' for images or 'json' for diagram data.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "includeRoles", + "type": "boolean", + "description": "Whether to include role lanes or swimlanes in the diagram when applicable (true or false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated diagram data including imageBase64 (if image), diagramJson (if applicable), and metadata such as width, height, and format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize customer service workflows, processes, or ticket handling steps to aid comprehension, training, or documentation. Particularly helpful to convert textual or structured descriptions of support procedures into clear visual diagrams.", + "limitations": "Cannot generate diagrams from very ambiguous or incomplete step descriptions; requires structured or semi-structured input describing process steps and roles. Does not support live interaction or dynamic updating beyond static diagram generation.", + "examples": [ + "Create a flowchart diagram for the customer complaint handling process with five main steps.", + "Generate a swimlane diagram showing roles involved in incident escalation workflow.", + "Produce a PNG image of the ticket resolution process described in JSON format." + ] + }, + "tags": [ + "customer support", + "process visualization", + "diagram generation", + "workflow", + "flowchart", + "swimlane", + "training", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"processName\":\"Ticket Resolution\",\"steps\":[{\"description\":\"Receive ticket\",\"role\":\"Support Agent\"},{\"description\":\"Diagnose issue\",\"role\":\"Support Agent\"},{\"description\":\"Escalate if needed\",\"role\":\"Support Supervisor\"},{\"description\":\"Resolve issue\",\"role\":\"Support Agent\"},{\"description\":\"Close ticket\",\"role\":\"Support Agent\"}],\"diagramType\":\"swimlane\",\"outputFormat\":\"svg\",\"includeRoles\":true}", + "description": "Generate a swimlane SVG diagram illustrating a customer support ticket resolution process with roles." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "customer-support.createQuote", + "description": "Generates a detailed sales quote for a customer based on provided product or service items, quantities, prices, discounts, and customer details. Accepts structured input including line items and customer info, calculates totals and taxes, and outputs a complete quote document in JSON format ready for sending or review.", + "category": "customer-support", + "parameters": [ + { + "name": "customerInfo", + "type": "object", + "description": "Object containing customer's name, contact information, and billing address.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineItems", + "type": "array", + "description": "Array of product or service items, each with description, quantity, unit price, and optional discount.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax percentage rate (e.g., 8.25 for 8.25%). Used to calculate tax on subtotal.", + "required": false, + "defaultValue": "0" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the quote is valid from the date of issue.", + "required": false, + "defaultValue": "30" + }, + { + "name": "quoteDate", + "type": "string", + "description": "Issue date of the quote in ISO 8601 format. Defaults to current date if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or terms to include in the quote.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the complete quote with calculated totals, tax, validity, customer info, line items, and metadata like quote ID and dates." + }, + "aiAgent": { + "useCase": "Use this tool when a customer support or sales agent needs to quickly generate an accurate and professional sales quote document based on customer requirements and order details. Helpful for automating quote creation and ensuring consistent formatting and calculations.", + "limitations": "This tool does not handle complex contract terms, legal disclaimers, or dynamic pricing rules beyond simple discounts and tax calculations. It also does not send the quote to customers – that requires separate communication tools.", + "examples": [ + "Generate a quote for a customer ordering 5 units of product A at $20 each and 3 units of service B at $100 each with an 8% tax rate.", + "Create a sales quote for customer John Doe with 2 items applying a 10% discount on one item, valid for 15 days.", + "Produce a quote including custom notes and a specific issue date without tax." + ] + }, + "tags": [ + "customer support", + "sales", + "quote generation", + "pricing", + "invoicing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"customerInfo\":{\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\",\"phone\":\"555-1234\",\"address\":\"123 Maple St, Anytown, USA\"},\"lineItems\":[{\"description\":\"Software License\",\"quantity\":3,\"unitPrice\":299.99},{\"description\":\"Installation Service\",\"quantity\":1,\"unitPrice\":199.99,\"discount\":10}],\"taxRate\":7.5,\"validityDays\":30,\"quoteDate\":\"2024-06-01\",\"notes\":\"Payment due within 30 days.\"}", + "description": "Create a quote for Jane Smith with software licenses and installation service including 7.5% tax and discount." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "customer-support.createExpense", + "description": "Creates a new expense record related to customer support operations. Accepts details such as expense type, amount, currency, date, description, and associated support ticket ID. Validates inputs and returns a confirmation with the created expense's unique ID and timestamp.", + "category": "customer-support", + "parameters": [ + { + "name": "expenseType", + "type": "string", + "description": "Type or category of the expense (e.g., travel, software license, supplies)", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "Monetary amount of the expense", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the amount (e.g., USD, EUR)", + "required": true, + "defaultValue": "USD" + }, + { + "name": "date", + "type": "string", + "description": "ISO 8601 date string representing when the expense was incurred", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief description or notes about the expense", + "required": false, + "defaultValue": "" + }, + { + "name": "supportTicketId", + "type": "string", + "description": "Identifier of the customer support ticket related to this expense", + "required": false, + "defaultValue": "" + }, + { + "name": "receiptAttached", + "type": "boolean", + "description": "Indicates if a receipt or proof of expense is attached", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Details of the created expense including unique expenseId, confirmation message, and timestamp" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a new expense entry linked to customer support activities, such as travel costs for support staff, purchasing software tools, or other reimbursable expenses. It helps to keep support-related expenses tracked and associated with relevant tickets or projects.", + "limitations": "This tool does not handle expense approvals, reimbursement processing, or detailed financial audits. It only creates and stores the expense record with given information.", + "examples": [ + "Create a travel expense for attending a customer support conference on 2024-05-01.", + "Log purchase of new software license for support team with receipt attached.", + "Record a miscellaneous client support expense without an associated ticket ID." + ] + }, + "tags": [ + "customer-support", + "expense", + "finance", + "record-keeping", + "ticket-association" + ], + "examples": [ + { + "inputJson": "{\"expenseType\":\"Travel\",\"amount\":350.75,\"currency\":\"USD\",\"date\":\"2024-05-01\",\"description\":\"Flight to support conference\",\"supportTicketId\":\"TCKT12345\",\"receiptAttached\":true}", + "description": "Creating a travel expense with receipt for a customer support conference linked to a specific ticket." + }, + { + "inputJson": "{\"expenseType\":\"Software License\",\"amount\":99.99,\"currency\":\"USD\",\"date\":\"2024-04-15\",\"description\":\"Annual license for support software\",\"receiptAttached\":false}", + "description": "Recording purchase of a software license expense without linking to a ticket or receipt." + }, + { + "inputJson": "{\"expenseType\":\"Supplies\",\"amount\":45.50,\"currency\":\"USD\",\"date\":\"2024-06-03\",\"description\":\"Office supplies for support team\",\"supportTicketId\":\"\",\"receiptAttached\":true}", + "description": "Logging office supply expenses with receipt but no associated support ticket." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "customer-support.createMarkdown", + "description": "Generates a well-structured Markdown document for customer support tickets or knowledge base entries based on input data such as ticket details, customer information, issue description, and resolution steps. The tool processes these inputs and outputs a formatted Markdown text suitable for sharing or documentation.", + "category": "customer-support", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title or subject of the customer support ticket or article.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerName", + "type": "string", + "description": "Name of the customer related to the support case.", + "required": false, + "defaultValue": "" + }, + { + "name": "ticketId", + "type": "string", + "description": "Identifier for the support ticket to be included in the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "issueDescription", + "type": "string", + "description": "Detailed description of the issue reported by the customer.", + "required": true, + "defaultValue": "" + }, + { + "name": "stepsToReproduce", + "type": "array", + "description": "A list of steps to reproduce the issue for clarity and troubleshooting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "resolutionSteps", + "type": "array", + "description": "Actions taken to resolve the issue, documented as a list of steps.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tags", + "type": "array", + "description": "List of keywords or tags to categorize the Markdown document for searching or filtering.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include the creation timestamp in the Markdown document header.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown content as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce formatted Markdown documentation for customer support tickets, knowledge base articles, or case summaries from structured input data. It facilitates consistent and readable documentation useful for support teams, customers, and archival purposes.", + "limitations": "This tool does not handle advanced Markdown features such as embedded images, tables, or interactive content. It assumes plain text inputs and simple lists for steps. It cannot pull information automatically from ticket systems without structured input.", + "examples": [ + "Create a Markdown ticket summary for a customer issue with description and resolution steps.", + "Generate a knowledge base article in Markdown format from troubleshooting steps and issue details.", + "Format customer support details into a Markdown document with tags and a timestamp header." + ] + }, + "tags": [ + "customer-support", + "markdown", + "documentation", + "ticketing", + "knowledge-base", + "formatting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Unable to login to account\",\"customerName\":\"Jane Doe\",\"ticketId\":\"123456\",\"issueDescription\":\"Customer reports login failures with error code 401.\",\"stepsToReproduce\":[\"Navigate to login page\",\"Enter valid credentials\",\"Click login button\"],\"resolutionSteps\":[\"Reset user password\",\"Cleared browser cache\",\"Verified login success\"],\"tags\":[\"login\",\"authentication\"],\"includeTimestamp\":true}", + "description": "Create a Markdown summary ticket document including customer info, issue, reproduction steps, and resolution." + }, + { + "inputJson": "{\"title\":\"How to reset password\",\"issueDescription\":\"Instructions for customers to reset their passwords.\",\"stepsToReproduce\":[],\"resolutionSteps\":[\"Go to password reset page\",\"Enter registered email\",\"Follow email instructions\"],\"tags\":[\"password\",\"reset\",\"help\"],\"includeTimestamp\":false}", + "description": "Generate a Markdown knowledge base article outlining password reset steps without timestamp." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "customer-support.createYAML", + "description": "Generates a YAML-formatted string representing customer support data such as tickets, responses, or user feedback, given input details in structured JSON. It accepts ticket metadata, conversation transcripts, and custom fields, then outputs a clean, well-structured YAML document for easy integration or storage.", + "category": "customer-support", + "parameters": [ + { + "name": "ticketId", + "type": "string", + "description": "Unique identifier of the support ticket to include in the YAML output.", + "required": false, + "defaultValue": "" + }, + { + "name": "customerName", + "type": "string", + "description": "Name of the customer associated with the support ticket.", + "required": false, + "defaultValue": "" + }, + { + "name": "issueDescription", + "type": "string", + "description": "Brief description of the customer's issue or request.", + "required": false, + "defaultValue": "" + }, + { + "name": "conversation", + "type": "array", + "description": "List of message objects representing the conversation history, each with author and message text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or labels associated with the support ticket.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "status", + "type": "string", + "description": "Current status of the support ticket (e.g., Open, Pending, Resolved).", + "required": false, + "defaultValue": "Open" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the ticket (e.g., Low, Medium, High).", + "required": false, + "defaultValue": "Medium" + }, + { + "name": "customFields", + "type": "object", + "description": "Optional additional key-value pairs to include in the YAML for extended ticket information.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'yamlString' which holds the formatted YAML representation of the provided customer support data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured customer support information stored in JSON-like structures (tickets, conversations, metadata) into a human-readable and widely accepted YAML format for reporting, integrations, or migration purposes.", + "limitations": "This tool does not perform data validation or enrich customer support content; it only serializes provided data into YAML format. It can't parse or interpret free-form text beyond inclusion.", + "examples": [ + "Convert a ticket with customer name, issue description, conversation messages, and tags into YAML format.", + "Generate YAML of a support ticket with custom fields for integration with a third-party system.", + "Create a YAML document representing a support conversation history and metadata for archival purposes." + ] + }, + "tags": [ + "customer-support", + "yaml", + "formatting", + "tickets", + "data-conversion", + "helpdesk" + ], + "examples": [ + { + "inputJson": "{\"ticketId\":\"12345\",\"customerName\":\"Jane Doe\",\"issueDescription\":\"Login not working\",\"conversation\":[{\"author\":\"Jane Doe\",\"message\":\"I cannot log in.\"},{\"author\":\"Support Agent\",\"message\":\"Please reset your password.\"}],\"tags\":[\"login\",\"urgent\"],\"status\":\"Open\",\"priority\":\"High\"}", + "description": "Convert a login issue ticket with conversation and tags into YAML." + }, + { + "inputJson": "{\"ticketId\":\"67890\",\"customerName\":\"Acme Corp.\",\"issueDescription\":\"Feature request for dashboard export.\",\"conversation\":[],\"tags\":[\"feature-request\"],\"status\":\"Pending\",\"priority\":\"Medium\",\"customFields\":{\"requestedBy\":\"Product Team\",\"dueDate\":\"2024-07-01\"}}", + "description": "Generate YAML for a feature request ticket including custom fields." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "customer-support.createTemplate", + "description": "This tool creates a customizable customer support template document. It accepts inputs including template name, category, subject lines, body text sections, predefined variables, and optional tags. The tool processes these inputs and outputs a structured template object containing all template components and metadata, ready for use in customer support platforms.", + "category": "customer-support", + "parameters": [ + { + "name": "templateName", + "type": "string", + "description": "The title or name of the support template to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "The category or type of the template, e.g., 'Technical Support', 'Billing', or 'General Inquiry'.", + "required": true, + "defaultValue": "" + }, + { + "name": "subjectLines", + "type": "array", + "description": "An array of suggested subject lines for the template emails or messages.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "bodySections", + "type": "array", + "description": "An ordered array of strings representing different body sections or paragraphs within the template.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "variables", + "type": "object", + "description": "A mapping of variable names to descriptions used as placeholders within the template body sections (e.g., {'customerName': 'Name of the customer'}).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or keywords to help categorize and search the template later.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the complete customer support template, including name, category, subject lines, body content, variables used, and associated tags." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a reusable, structured customer support template for email communication or chat responses, tailored by category with customizable content and placeholder variables to automate or streamline support interactions.", + "limitations": "This tool does not generate the actual text content; it requires input text sections and variables. It does not send messages or integrate directly with external customer support platforms.", + "examples": [ + "Create a billing inquiry email template with placeholders for customer name and invoice number.", + "Generate a technical support response template including subject line options and step-by-step troubleshooting content.", + "Build a general inquiry template with tags for quick retrieval and standardized messaging." + ] + }, + "tags": [ + "customer-support", + "template", + "email", + "automation", + "document", + "support", + "communication" + ], + "examples": [ + { + "inputJson": "{\"templateName\":\"Billing Inquiry Response\",\"category\":\"Billing\",\"subjectLines\":[\"Regarding your billing question\",\"Your invoice details\"],\"bodySections\":[\"Dear {{customerName}},\",\"We have reviewed your invoice #{{invoiceNumber}}.\",\"Please contact us if you have further questions.\"],\"variables\":{\"customerName\":\"Name of the customer\",\"invoiceNumber\":\"Invoice identification number\"},\"tags\":[\"billing\",\"invoice\"]}", + "description": "Creates a billing-related email template with placeholders for customer name and invoice number." + }, + { + "inputJson": "{\"templateName\":\"Technical Troubleshooting\",\"category\":\"Technical Support\",\"subjectLines\":[\"Troubleshooting your device\",\"Technical support steps\"],\"bodySections\":[\"Hello {{customerName}},\",\"Please follow these steps to resolve your issue.\",\"Step 1: Restart the device.\",\"Step 2: Check your internet connection.\",\"If problems persist, contact us.\"],\"variables\":{\"customerName\":\"Customer's full name\"},\"tags\":[\"technical\",\"troubleshooting\"]}", + "description": "Generates a technical support email template with step-wise instructions and customer name variable." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "customer-support.createProposal", + "description": "Creates a detailed customer support proposal document based on input parameters such as proposal title, client details, proposed services or solutions, pricing estimates, and terms. Processes structured input to generate a formatted proposal in JSON including summary, scope, costs, timelines, and contact info.", + "category": "customer-support", + "parameters": [ + { + "name": "proposalTitle", + "type": "string", + "description": "Title of the customer support proposal.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientName", + "type": "string", + "description": "Name of the client for whom the proposal is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientContact", + "type": "object", + "description": "Contact details of the client, including email and phone number.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceDescription", + "type": "string", + "description": "Detailed description of the customer support services or solutions proposed.", + "required": true, + "defaultValue": "" + }, + { + "name": "pricingEstimate", + "type": "object", + "description": "Estimated pricing details including cost breakdowns, currency, and total price.", + "required": true, + "defaultValue": "" + }, + { + "name": "termsAndConditions", + "type": "string", + "description": "Terms and conditions applicable to the proposal.", + "required": false, + "defaultValue": "" + }, + { + "name": "validityPeriodDays", + "type": "number", + "description": "Number of days the proposal will remain valid from the creation date.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON proposal document containing all input details formatted for presentation including title, client info, service scope, pricing, terms, creation date, and expiration date." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate formal customer support proposals rapidly from structured inputs such as client info, service descriptions, and pricing. It helps automate creation of consistent, professional proposal documents to present to customers for approval or negotiation.", + "limitations": "Cannot generate human-written persuasive or marketing language beyond templated text. It requires structured inputs and does not automatically gather client or pricing data.", + "examples": [ + "Create a support proposal for Acme Corp including 24/7 helpdesk, pricing $5000 per month, valid for 45 days.", + "Generate a proposal titled 'Premium Customer Care' for client John Doe with specified service details and terms." + ] + }, + "tags": [ + "customer-support", + "proposal", + "document-generation", + "client-management", + "pricing", + "service-offering" + ], + "examples": [ + { + "inputJson": "{\"proposalTitle\":\"Enterprise Support Plan\",\"clientName\":\"Acme Corporation\",\"clientContact\":{\"email\":\"contact@acme.com\",\"phone\":\"123-456-7890\"},\"serviceDescription\":\"24/7 helpdesk support, priority response, dedicated account manager.\",\"pricingEstimate\":{\"currency\":\"USD\",\"items\":[{\"description\":\"Monthly support fee\",\"amount\":5000}],\"total\":5000},\"termsAndConditions\":\"Standard support terms apply.\",\"validityPeriodDays\":60}", + "description": "Creating a detailed support service proposal for Acme Corporation with pricing and terms." + }, + { + "inputJson": "{\"proposalTitle\":\"Basic Support Proposal\",\"clientName\":\"John Doe\",\"clientContact\":{\"email\":\"johndoe@example.com\",\"phone\":\"987-654-3210\"},\"serviceDescription\":\"Business hours email support with 1 business day response time.\",\"pricingEstimate\":{\"currency\":\"USD\",\"items\":[{\"description\":\"Monthly fee\",\"amount\":1000}],\"total\":1000},\"validityPeriodDays\":30}", + "description": "Basic customer support proposal for an individual client with essential service details and pricing." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "customer-support.createBlogPost", + "description": "Creates a customer support blog post based on input parameters including title, content sections, target audience, and tags. It organizes provided content, formats sections, and outputs a structured blog post suitable for publishing on a customer support portal or knowledge base.", + "category": "customer-support", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post, summarizing the main topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentSections", + "type": "array", + "description": "An array of objects representing sections of the blog post, each with a heading and body text.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The primary audience for the blog post, e.g., new users, advanced users, or support team.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords to categorize the blog post for searchability and topic classification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeFAQs", + "type": "boolean", + "description": "Whether to include a Frequently Asked Questions section at the end of the post.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted blog post with title, sections, optional FAQs, tags, and metadata ready for publishing." + }, + "aiAgent": { + "useCase": "Use this tool when generating detailed, structured blog posts to support customers with explanations, tips, and troubleshooting steps. Ideal for content generation in customer support knowledge bases or help centers.", + "limitations": "This tool does not perform content proofing, fact-checking, or advanced content SEO optimization. It also does not publish the blog post automatically to external platforms.", + "examples": [ + "Create a blog post titled 'How to Reset Your Password' with steps and troubleshooting FAQs.", + "Generate a multilingual support blog post targeting new users with tags 'onboarding', 'account setup'.", + "Produce a blog post explaining recent feature updates including sections and FAQs." + ] + }, + "tags": [ + "customer-support", + "blog-post", + "content-creation", + "knowledge-base", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"How to Troubleshoot Internet Connectivity Issues\",\"contentSections\":[{\"heading\":\"Check Your Modem\",\"body\":\"Restart your modem and check the cables are properly connected.\"},{\"heading\":\"Check Your Router\",\"body\":\"Ensure your router is powered on and try restarting it.\"},{\"heading\":\"Test Your Connection\",\"body\":\"Use a device to test if the internet connection is working.\"}],\"targetAudience\":\"general users\",\"tags\":[\"connectivity\",\"troubleshooting\"],\"includeFAQs\":true}", + "description": "A detailed support blog post with step-by-step sections and FAQs about internet connectivity troubleshooting." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "marketing-automation.renderSentence", + "description": "Generates a tailored marketing sentence based on input parameters such as target audience, product features, campaign tone, and call-to-action. It processes these inputs to output a coherent, persuasive sentence suitable for marketing campaigns or advertisements.", + "category": "marketing-automation", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for whom the sentence is intended (e.g., young professionals interested in fitness).", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "List of key product or service features to highlight in the sentence.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the marketing sentence, such as 'friendly', 'urgent', 'professional', or 'casual'.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call-to-action phrase to include, e.g., 'Buy now', 'Learn more', or 'Sign up today'.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated sentence in characters to fit campaign constraints.", + "required": false, + "defaultValue": "140" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing sentence as a string under the key 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when generating customized single marketing sentences for campaigns, advertisements, emails, or social media posts where targeting specific audience segments with tailored messaging is important. It helps automate personalized sentence creation that highlights product features in a chosen tone and includes a call-to-action.", + "limitations": "This tool generates one sentence at a time and does not create full marketing copy or multiple sentence paragraphs. It cannot guarantee perfect marketing effectiveness or compliance with legal standards. It relies on provided input accuracy for relevance.", + "examples": [ + "Create a friendly sentence targeting environmentally conscious consumers highlighting sustainable features and encouraging purchase.", + "Generate a professional tone sentence for corporate clients emphasizing reliability and prompting to request a demo.", + "Produce a casual sentence aimed at teens highlighting new app features with a call to action to download." + ] + }, + "tags": [ + "marketing", + "automation", + "sentence-generation", + "advertising", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"young professionals interested in fitness\",\"productFeatures\":[\"24/7 access\",\"personalized workout plans\",\"nutrition tracking\"],\"tone\":\"friendly\",\"callToAction\":\"Join today\",\"maxLength\":120}", + "description": "Generate a friendly marketing sentence targeting young fitness enthusiasts emphasizing convenient features with a join prompt." + }, + { + "inputJson": "{\"targetAudience\":\"small business owners\",\"productFeatures\":[\"affordable pricing\",\"easy setup\",\"24/7 support\"],\"tone\":\"professional\",\"callToAction\":\"Contact us now\",\"maxLength\":140}", + "description": "Create a professional sentence aimed at small business owners highlighting value and support with a contact call to action." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "marketing-automation.draftInvoice", + "description": "Generates a professional marketing service invoice based on input client details, service items, pricing, and terms. Accepts structured data including client info, list of marketing services rendered with quantities and rates, taxes, and payment terms. Outputs a formatted invoice document as PDF or HTML string ready for delivery.", + "category": "marketing-automation", + "parameters": [ + { + "name": "clientInfo", + "type": "object", + "description": "Client information including name, address, contact details. Required for invoice header.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceNumber", + "type": "string", + "description": "Unique identifier for the invoice. Used for tracking and referencing.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date the invoice is issued, ISO 8601 format (e.g., 2024-06-01).", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date, ISO 8601 format (e.g., 2024-07-01).", + "required": true, + "defaultValue": "" + }, + { + "name": "services", + "type": "array", + "description": "Array of service objects each containing description, quantity, unitPrice, and optional discount.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a percentage (e.g., 10.0 for 10%).", + "required": false, + "defaultValue": "0" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Text description of payment terms and conditions, e.g., 'Net 30 days'.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) for all monetary values, e.g., 'USD'.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated invoice output: 'PDF' or 'HTML'.", + "required": true, + "defaultValue": "PDF" + } + ], + "returns": { + "type": "object", + "description": "Generated invoice document encoded as a base64 string if PDF, or HTML string if HTML output, along with metadata including subtotal, tax, and total amount." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate detailed invoices for marketing services rendered to clients, automating billing documentation with accurate financial calculations and professional formatting. Ideal for agencies handling multiple campaigns and clients, ensuring consistent invoice creation.", + "limitations": "This tool does not process payments or send invoices. It also does not handle complex multi-currency conversions or tax jurisdictions requiring detailed reporting beyond simple tax rates.", + "examples": [ + "Generate an invoice PDF for client ABC Corp with multiple digital marketing services charged at specified rates and a tax of 10%.", + "Create an HTML invoice for a single social media campaign service with given client details and payment terms 'Net 30'." + ] + }, + "tags": [ + "invoice", + "marketing", + "automation", + "billing", + "document-generation", + "payment", + "finance" + ], + "examples": [ + { + "inputJson": "{\"clientInfo\":{\"name\":\"ABC Corp\",\"address\":\"123 Market St, Metropolis\",\"email\":\"accounts@abccorp.com\"},\"invoiceNumber\":\"INV-2024-0001\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-07-01\",\"services\":[{\"description\":\"SEO Optimization\",\"quantity\":1,\"unitPrice\":1200},{\"description\":\"Paid Social Campaign Management\",\"quantity\":3,\"unitPrice\":800}],\"taxRate\":10,\"paymentTerms\":\"Net 30 days\",\"currency\":\"USD\",\"outputFormat\":\"PDF\"}", + "description": "Generate a PDF invoice for ABC Corp with multiple marketing services and 10% tax." + }, + { + "inputJson": "{\"clientInfo\":{\"name\":\"XYZ Ltd\",\"address\":\"456 Commerce Blvd, Gotham\",\"email\":\"finance@xyz.com\"},\"invoiceNumber\":\"INV-2024-0420\",\"invoiceDate\":\"2024-06-15\",\"dueDate\":\"2024-07-15\",\"services\":[{\"description\":\"Social Media Content Creation\",\"quantity\":5,\"unitPrice\":150}],\"taxRate\":0,\"paymentTerms\":\"Due upon receipt\",\"currency\":\"USD\",\"outputFormat\":\"HTML\"}", + "description": "Generate an HTML invoice for XYZ Ltd with zero tax and defined payment terms." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "marketing-automation.draftParagraph", + "description": "Generates a concise marketing paragraph based on a product or campaign description, targeted audience, and desired tone. Accepts textual inputs to draft promotional paragraphs for use in emails, ads, or web content, outputting a polished paragraph tailored to specified parameters.", + "category": "marketing-automation", + "parameters": [ + { + "name": "productDescription", + "type": "string", + "description": "A detailed description of the product or campaign to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The primary demographic or customer segment the paragraph should address.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the paragraph, e.g., friendly, professional, urgent, playful.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "paragraphLength", + "type": "number", + "description": "Approximate length of the paragraph in sentences.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing paragraph text." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to create targeted, tone-appropriate marketing content quickly based on product details and an audience profile, such as drafting email campaign copy, ad text, or website snippets.", + "limitations": "Cannot replace full campaign strategy or complex multi-paragraph content. Quality depends on input clarity. May require human review and edits for brand consistency and compliance.", + "examples": [ + "Draft a friendly paragraph promoting a new eco-friendly water bottle for young adults.", + "Generate a professional paragraph targeting small business owners about our new cloud software.", + "Create a short playful paragraph introducing a limited-time summer sale to teenagers." + ] + }, + "tags": [ + "marketing", + "copywriting", + "content-generation", + "automation", + "advertising", + "targeting", + "tone", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"productDescription\":\"Smartwatch with health tracking and GPS features.\",\"targetAudience\":\"fitness enthusiasts aged 25-40\",\"tone\":\"energetic\",\"paragraphLength\":4}", + "description": "Generate an energetic marketing paragraph for fitness enthusiasts about a smartwatch." + }, + { + "inputJson": "{\"productDescription\":\"Online course for beginner graphic designers.\",\"targetAudience\":\"college students\",\"tone\":\"friendly\",\"paragraphLength\":3}", + "description": "Create a friendly paragraph targeting college students to promote an online graphic design course." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "marketing-automation.draftSummary", + "description": "Generates a concise campaign summary based on provided marketing campaign data. Accepts campaign details, target audience insights, performance metrics, and key highlights as input, then produces a structured textual summary that can be used in reports or presentations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name of the marketing campaign to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignData", + "type": "object", + "description": "Detailed data about the campaign including start/end dates, channels used, and objectives.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience or market segment for the campaign.", + "required": false, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Key quantitative metrics such as impressions, clicks, conversions, and ROI values.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyHighlights", + "type": "array", + "description": "List of notable points or qualitative insights about the campaign performance or approach.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired length of the summary in sentences, default is 5.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing a textual summary string of the marketing campaign including key results and insights." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents automating marketing report generation or providing quick campaign overviews. It synthesizes complex campaign data into readable summaries suitable for stakeholders or marketing teams who need concise insight without manual compilation.", + "limitations": "It does not perform deep statistical analysis or forecast campaign outcomes; it relies on provided data and cannot verify data accuracy.", + "examples": [ + "Generate a 5-sentence summary for the latest email marketing campaign with results and audience details.", + "Summarize campaign performance highlighting key metrics and qualitative insights for the Q1 social media campaign.", + "Create a brief report text summarizing campaign objectives, channels used, and measured ROI." + ] + }, + "tags": [ + "marketing", + "automation", + "summary", + "campaign", + "reporting", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Spring Sale 2024\",\"campaignData\":{\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"channels\":[\"email\",\"social media\"],\"objective\":\"Increase sales by 20% in spring clothing line.\"},\"targetAudience\":\"Women aged 25-40 interested in outdoor fashion.\",\"performanceMetrics\":{\"impressions\":500000,\"clicks\":25000,\"conversions\":4000,\"roi\":1.8},\"keyHighlights\":[\"Highest engagement on social media ads\",\"Email open rates above industry average\"],\"summaryLength\":5}", + "description": "Summarize the Spring Sale 2024 campaign outcomes including objectives, audience, performance metrics, and highlights in about 5 sentences." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "marketing-automation.composeLink", + "description": "Generates a customized marketing link with optional UTM parameters and shortened URL for campaign tracking. Accepts a base URL and optional parameters such as campaign source, medium, name, term, and content. Returns a fully composed URL with encoded query parameters, optionally shortened via an integrated URL shortening service.", + "category": "marketing-automation", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The original URL that the marketing link will point to, must be a valid URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "utmSource", + "type": "string", + "description": "Identifies the referrer (e.g., google, newsletter). Used as utm_source parameter.", + "required": false, + "defaultValue": "" + }, + { + "name": "utmMedium", + "type": "string", + "description": "Identifies the marketing medium (e.g., email, cpc). Used as utm_medium parameter.", + "required": false, + "defaultValue": "" + }, + { + "name": "utmCampaign", + "type": "string", + "description": "Names the marketing campaign (e.g., spring_sale). Used as utm_campaign parameter.", + "required": false, + "defaultValue": "" + }, + { + "name": "utmTerm", + "type": "string", + "description": "Identifies paid search keywords. Used as utm_term parameter.", + "required": false, + "defaultValue": "" + }, + { + "name": "utmContent", + "type": "string", + "description": "Differentiates similar content or links within the same ad. Used as utm_content parameter.", + "required": false, + "defaultValue": "" + }, + { + "name": "shortenUrl", + "type": "boolean", + "description": "Whether to return a shortened version of the final URL using an integrated URL shortener.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully composed URL with UTM parameters and, if requested, a shortened URL version." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate trackable marketing campaign links with UTM parameters for analytics and optionally create shortened URLs for easy sharing. It supports automating link creation for campaign reports and social media posts.", + "limitations": "Does not generate QR codes or track link performance metrics directly. Relies on availability of the URL shortening service and valid input URLs.", + "examples": [ + "Generate a marketing link for newsletter campaign with source 'newsletter' and medium 'email'.", + "Create a campaign URL for Google Ads with appropriate UTM parameters and get a shortened link.", + "Compose a trackable link without shortening from a product page URL." + ] + }, + "tags": [ + "marketing", + "automation", + "link", + "utm", + "campaign", + "tracking", + "url-shortening" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://example.com/product\",\"utmSource\":\"newsletter\",\"utmMedium\":\"email\",\"utmCampaign\":\"spring_sale\",\"shortenUrl\":true}", + "description": "Create a marketing link for a newsletter email campaign with URL shortening." + }, + { + "inputJson": "{\"baseUrl\":\"https://example.com/landing\",\"utmSource\":\"google\",\"utmMedium\":\"cpc\",\"utmCampaign\":\"promo_june\",\"utmTerm\":\"sneakers\",\"utmContent\":\"banner1\",\"shortenUrl\":false}", + "description": "Generate a detailed Google Ads campaign link without shortening." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "marketing-automation.buildWorkflow", + "description": "Creates a configurable marketing automation workflow by accepting inputs such as triggers, conditions, and actions; processes these elements to generate a structured workflow JSON object that can be deployed or integrated with marketing platforms.", + "category": "marketing-automation", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name assigned to the marketing workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "List of event triggers that initiate the workflow, e.g., 'emailOpened', 'linkClicked'.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "array", + "description": "Optional list of conditions to evaluate after triggers, e.g., user segment or behavior filters.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "actions", + "type": "array", + "description": "List of actions to execute when triggers and conditions are met, e.g., send email, update CRM.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description of the workflow's purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag indicating whether the workflow is active and should be executed.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object defining the full marketing automation workflow with triggers, conditions, actions, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build and configure marketing automation workflows by specifying triggers, conditions, and actions in a structured and reusable JSON format for deployment on marketing platforms.", + "limitations": "This tool only builds the workflow definition and does not execute or integrate workflows with actual marketing platforms or handle real-time event processing.", + "examples": [ + "Create a workflow triggered by email opens that sends a follow-up email if the user is in the 'VIP' segment.", + "Build a workflow that triggers on website link clicks, checks if the user is subscribed, and updates CRM data accordingly.", + "Generate an inactive workflow named 'Holiday Campaign' with specific triggers and actions for later deployment." + ] + }, + "tags": [ + "marketing", + "automation", + "workflow", + "campaign", + "trigger", + "action" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"Welcome Sequence\",\"triggers\":[\"userSubscribed\"],\"conditions\":[{\"field\":\"userSegment\",\"operator\":\"equals\",\"value\":\"new\"}],\"actions\":[{\"type\":\"sendEmail\",\"templateId\":\"welcome_001\"},{\"type\":\"wait\",\"durationMinutes\":60},{\"type\":\"sendEmail\",\"templateId\":\"follow_up_001\"}],\"description\":\"Trigger welcome emails for new subscribers.\",\"isActive\":true}", + "description": "Build a welcome email sequence triggered when a user subscribes and is part of the 'new' segment." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "marketing-automation.buildSchema", + "description": "Generates a structured JSON schema for marketing campaign data based on specified campaign elements and data types. Accepts campaign fields, their types, and validation rules as input, then outputs a JSON schema defining the expected data format for automated marketing workflows.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignFields", + "type": "array", + "description": "An array of objects defining each field in the marketing campaign data with properties like name, type, and validation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaTitle", + "type": "string", + "description": "A human-readable title for the schema to identify the marketing campaign data structure.", + "required": false, + "defaultValue": "\"MarketingCampaignSchema\"" + }, + { + "name": "requiredFields", + "type": "array", + "description": "List of field names that are mandatory for the marketing campaign data.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "allowAdditionalProperties", + "type": "boolean", + "description": "Determines if additional unspecified fields are allowed in the data conforming to the schema.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON schema object defining the structure, types, required fields, and validation constraints of the marketing campaign data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically define and enforce the expected data structure for marketing campaign inputs or outputs in automation workflows. It ensures data consistency, validates inputs, and enables integration with downstream marketing tools requiring specific schema formats.", + "limitations": "This tool does not generate schemas for marketing campaign content or strategy; it only constructs data schemas. It does not validate actual campaign data against the schema, only creates the schema definition.", + "examples": [ + "Generate a schema for an email campaign data object with fields like subject (string), sendDate (date), recipientList (array), and isActive (boolean).", + "Create a schema enforcing required fields for a social media campaign, including campaignName and budget, and allowing no extra fields.", + "Build a schema titled 'PromoCampaign' that permits additional undefined properties for flexibility." + ] + }, + "tags": [ + "marketing", + "automation", + "schema", + "data-validation", + "campaign", + "json-schema" + ], + "examples": [ + { + "inputJson": "{\"campaignFields\":[{\"name\":\"subject\",\"type\":\"string\"},{\"name\":\"sendDate\",\"type\":\"string\",\"format\":\"date\"},{\"name\":\"recipientList\",\"type\":\"array\",\"items\":{\"type\":\"string\"}},{\"name\":\"isActive\",\"type\":\"boolean\"}],\"schemaTitle\":\"EmailCampaign\",\"requiredFields\":[\"subject\",\"sendDate\"],\"allowAdditionalProperties\":false}", + "description": "Build a schema for an email campaign with subject, send date, recipient list, and active status, requiring subject and sendDate." + }, + { + "inputJson": "{\"campaignFields\":[{\"name\":\"campaignName\",\"type\":\"string\"},{\"name\":\"budget\",\"type\":\"number\"}],\"requiredFields\":[\"campaignName\",\"budget\"],\"allowAdditionalProperties\":false}", + "description": "Create a schema for social media campaign requiring campaignName and budget, disallowing extra fields." + }, + { + "inputJson": "{\"campaignFields\":[{\"name\":\"promoCode\",\"type\":\"string\"},{\"name\":\"discountPercent\",\"type\":\"number\"}],\"schemaTitle\":\"PromoCampaign\",\"allowAdditionalProperties\":true}", + "description": "Build a flexible promo campaign schema titled 'PromoCampaign' that allows additional properties besides promoCode and discountPercent." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "marketing-automation.generateMarkdown", + "description": "Generates a detailed marketing campaign report in Markdown format based on provided campaign data including title, objectives, target audience, key metrics, and results. Processes input data to produce a structured, human-readable Markdown document suitable for presentations or documentation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignTitle", + "type": "string", + "description": "The title or name of the marketing campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "objectives", + "type": "array", + "description": "List of campaign objectives or goals to highlight in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for the campaign.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyMetrics", + "type": "object", + "description": "Key performance metrics of the campaign, e.g., impressions, clicks, conversions.", + "required": true, + "defaultValue": "" + }, + { + "name": "resultsSummary", + "type": "string", + "description": "Summary of the campaign results and insights.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include marketing recommendations section at the end of the report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'markdown' with the complete campaign report as a Markdown formatted string." + }, + "aiAgent": { + "useCase": "Use this tool when you have campaign data and want to create a professional, readable Markdown report summarizing marketing activities, objectives, metrics, and recommendations for stakeholders or documentation purposes.", + "limitations": "This tool does not analyze raw data or generate campaign strategies. It only formats and structures given input data into Markdown text.", + "examples": [ + "Generate a Markdown report for a recent email marketing campaign summarizing objectives, click rates, and conversion results.", + "Create a formatted campaign overview in Markdown for quarterly review including key metrics and audience description.", + "Produce a Markdown document with campaign summary and recommendations based on performance metrics input." + ] + }, + "tags": [ + "marketing", + "automation", + "reporting", + "markdown", + "campaign", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"campaignTitle\":\"Spring Sale 2024\",\"objectives\":[\"Increase email open rate by 20%\",\"Boost online sales by 15%\"],\"targetAudience\":\"Women aged 25-40 interested in fashion\",\"keyMetrics\":{\"emailsSent\":5000,\"openRate\":\"22%\",\"clickThroughRate\":\"10%\",\"conversions\":300},\"resultsSummary\":\"The campaign exceeded the email open rate goal and achieved significant sales boost.\",\"includeRecommendations\":true}", + "description": "Generate a markdown report summarizing the Spring Sale 2024 campaign with objectives, target audience, key metrics, results, and recommendations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "marketing-automation.generateTemplate", + "description": "Generates customizable marketing campaign templates based on campaign type, target audience, and desired channels. Accepts input parameters describing campaign goals, format preferences, and content style, then produces ready-to-use structured template documents suitable for emails, social posts, or ads.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign, e.g., 'email', 'social', 'display ad'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the audience or segment targeted by the campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentTone", + "type": "string", + "description": "Preferred tone of the content, e.g., 'formal', 'casual', 'humorous'.", + "required": false, + "defaultValue": "casual" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action section in the template.", + "required": false, + "defaultValue": "true" + }, + { + "name": "brandingGuidelines", + "type": "object", + "description": "Object specifying branding colors, fonts, and logo references to incorporate.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the template content.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a structured marketing template with sections for headline, body content, call-to-action, and metadata formatted for the specified campaign type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate well-structured marketing campaign templates tailored to a specific campaign type and audience. It helps automate starting points for campaigns, ensuring consistency with branding and tone.", + "limitations": "Does not generate fully produced campaign content or real-time performance analytics. Templates may need customization for complex or niche products.", + "examples": [ + "Generate an email template for a new product launch targeting young adults, with a casual tone.", + "Create a social media ad template targeting fitness enthusiasts including branding colors and a strong call to action.", + "Produce a display ad template in Spanish for promoting a seasonal sale with formal tone." + ] + }, + "tags": [ + "marketing", + "automation", + "template", + "campaign", + "email", + "social media" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"targetAudience\":\"young professionals interested in tech gadgets\",\"contentTone\":\"casual\",\"includeCallToAction\":true,\"brandingGuidelines\":{\"colors\":[\"#FF5733\",\"#C70039\"],\"font\":\"Arial\"},\"language\":\"en\"}", + "description": "Generate casual email marketing template for young tech-savvy professionals including branding colors and CTA." + }, + { + "inputJson": "{\"campaignType\":\"social\",\"targetAudience\":\"health and fitness enthusiasts\",\"contentTone\":\"motivational\",\"includeCallToAction\":true,\"brandingGuidelines\":{\"colors\":[\"#4CAF50\"],\"font\":\"Helvetica\"},\"language\":\"en\"}", + "description": "Create a motivational social media ad template targeting fitness enthusiasts with branding and CTA." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "marketing-automation.generateBlogPost", + "description": "Generates a complete blog post based on a given topic, target audience, and desired tone. Accepts inputs such as title, keywords, target audience description, tone/style, and desired word count. Processes these inputs to produce a structured blog post including introduction, body sections, and conclusion, formatted in markdown.", + "category": "marketing-automation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title or headline of the blog post to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords or key phrases to include in the blog post content for SEO relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Brief description of the blog post's intended audience to tailor the style and content appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired writing tone or style, e.g., casual, professional, authoritative, friendly.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate desired length of the blog post in words.", + "required": false, + "defaultValue": "800" + }, + { + "name": "includeSections", + "type": "array", + "description": "List of section headings to include in the blog post; if empty, default structure is used.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post content in markdown format, the estimated word count, and an array of used keywords." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate complete, SEO-friendly blog posts from minimal input like title and keywords, tailored for a specific audience and tone. Ideal for marketing automation workflows aiming to streamline content creation at scale.", + "limitations": "Cannot guarantee factual accuracy or up-to-date information. May not fully capture complex nuanced topics without manual review. SEO effectiveness depends on keyword selection and external factors.", + "examples": [ + "Generate a 1000-word friendly blog post titled 'Benefits of Remote Work' targeting small business owners.", + "Create a professional styled blog post on 'Cloud Security Best Practices' using keywords: cloud, security, best practices.", + "Produce a casual blog post for beginners on 'How to Start a Podcast' including sections for equipment, recording tips, and publishing." + ] + }, + "tags": [ + "marketing", + "automation", + "content-generation", + "blog-post", + "SEO", + "writing", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Top 10 Digital Marketing Trends in 2024\",\"keywords\":[\"digital marketing\",\"2024 trends\",\"SEO\"],\"targetAudience\":\"marketers and small business owners\",\"tone\":\"professional\",\"wordCount\":900}", + "description": "Generate a professional blog post for marketers summarizing top digital marketing trends in 2024 with SEO keywords." + }, + { + "inputJson": "{\"title\":\"How to Maintain Work-Life Balance\",\"targetAudience\":\"remote workers\",\"tone\":\"friendly\",\"wordCount\":700}", + "description": "Create a friendly, concise blog post aimed at remote workers about maintaining work-life balance." + }, + { + "inputJson": "{\"title\":\"Introduction to AI for Beginners\",\"keywords\":[\"AI\",\"machine learning\",\"beginners guide\"],\"includeSections\":[\"What is AI?\",\"Applications of AI\",\"Getting Started\"]}", + "description": "Generate a beginner-friendly blog post introducing AI with specified sections for clear structure." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "marketing-automation.createProposal", + "description": "Generates a detailed marketing campaign proposal document based on inputs such as target audience, campaign goals, budget, timeline, and key strategies. Processes these inputs to produce a structured proposal with sections for objectives, tactics, resource allocation, and expected outcomes in a shareable document format.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name of the marketing campaign to be proposed.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the primary audience for the campaign, including demographics and psychographics.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignGoals", + "type": "array", + "description": "List of specific goals the marketing campaign aims to achieve (e.g., increase brand awareness, lead generation).", + "required": true, + "defaultValue": "" + }, + { + "name": "budget", + "type": "number", + "description": "Total budget allocated for the marketing campaign in USD.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeline", + "type": "object", + "description": "Start and end dates for the campaign execution in ISO 8601 date strings.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyStrategies", + "type": "array", + "description": "Primary marketing strategies to be employed, like content marketing, PPC advertising, social media engagement.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any supplementary information or special instructions to include in the proposal.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated proposal document as a formatted markdown or HTML string, including structured sections for easy review and sharing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a comprehensive marketing campaign proposal document by consolidating strategic inputs such as audience, goals, budget, timeline, and approaches into a coherent written plan suitable for client presentation or internal approval.", + "limitations": "This tool does not devise marketing strategies from scratch or analyze campaign performance data; it requires user-provided input details and focuses on formatting and structuring the proposal document.", + "examples": [ + "Create a marketing proposal for a social media campaign targeting millennials to increase brand awareness with a budget of $50,000 over three months.", + "Generate a detailed campaign proposal for a lead generation campaign targeting B2B clients with defined strategies and timeline.", + "Produce a budgeted marketing plan document focusing on content and PPC advertising including timeline and goals." + ] + }, + "tags": [ + "marketing", + "automation", + "proposal", + "campaign", + "document", + "planning" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Spring Product Launch\",\"targetAudience\":\"Young professionals aged 25-35 interested in tech gadgets\",\"campaignGoals\":[\"Increase brand awareness\",\"Generate 500 leads\"],\"budget\":75000,\"timeline\":{\"start\":\"2024-04-01\",\"end\":\"2024-06-30\"},\"keyStrategies\":[\"social media advertising\",\"influencer partnerships\",\"email marketing\"],\"additionalNotes\":\"Include competitor analysis and risk assessment sections.\"}", + "description": "Generate a full marketing proposal for a product launch aimed at young professionals using multiple channels and a defined budget." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "marketing-automation.createAudio", + "description": "Generates marketing audio content by transforming input text scripts into natural-sounding voiceovers using customizable voice profiles and background music options. Accepts text, voice parameters, and audio settings, producing a ready-to-use audio file URL for campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "scriptText", + "type": "string", + "description": "The marketing message or script text to convert into audio.", + "required": true, + "defaultValue": "" + }, + { + "name": "voiceProfile", + "type": "string", + "description": "The desired voice style or persona (e.g., 'female_american_english', 'male_british_english').", + "required": false, + "defaultValue": "female_american_english" + }, + { + "name": "speechRate", + "type": "number", + "description": "Speed of speech delivery, where 1.0 is normal rate (0.5 to 2.0 allowed).", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "backgroundMusicUrl", + "type": "string", + "description": "URL to a royalty-free background music track to mix with the voiceover. Empty for no music.", + "required": false, + "defaultValue": "" + }, + { + "name": "musicVolume", + "type": "number", + "description": "Volume level of background music relative to voiceover, from 0 (mute) to 1 (equal volume).", + "required": false, + "defaultValue": "0.3" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Desired audio file format (e.g., 'mp3', 'wav', 'ogg').", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "languageCode", + "type": "string", + "description": "Language code of the voice synthesis (e.g., 'en-US', 'en-GB').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "An object with the downloadable audio file URL and metadata like duration and file size." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly create high-quality, customizable audio advertisements or announcements from marketing text scripts, enabling easy integration of voiceovers with optional background music for campaigns across radio, social media, or websites.", + "limitations": "Cannot create music tracks from scratch, only mix with provided background music URL; voice profiles are limited to predefined selections; audio quality depends on synthesis engine constraints.", + "examples": [ + "Create an English female voice ad with upbeat background music.", + "Generate a male British English voiceover without music for a short product announcement.", + "Produce an mp3 audio clip from given script at 1.2x speech rate with soft music mix." + ] + }, + "tags": [ + "marketing", + "audio", + "voice synthesis", + "automation", + "voiceover", + "text-to-speech", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"scriptText\":\"Introducing our new summer collection! Fresh styles just arrived.\",\"voiceProfile\":\"female_american_english\",\"speechRate\":1.0,\"backgroundMusicUrl\":\"https://example.com/music/upbeat.mp3\",\"musicVolume\":0.25,\"audioFormat\":\"mp3\",\"languageCode\":\"en-US\"}", + "description": "Generate a US English female voiceover with upbeat background music for advertising a summer collection." + }, + { + "inputJson": "{\"scriptText\":\"Limited time offer! Get 20% off on all products.\",\"voiceProfile\":\"male_british_english\",\"speechRate\":1.1,\"backgroundMusicUrl\":\"\",\"musicVolume\":0,\"audioFormat\":\"wav\",\"languageCode\":\"en-GB\"}", + "description": "Create a British English male voice announcement without background music in WAV format promoting a discount." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "marketing-automation.createGraph", + "description": "Generates a customizable marketing campaign performance graph based on provided campaign data. Accepts inputs such as campaign metrics, time range, graph type, and desired performance indicators. Processes the data and outputs a graph visualization (image URL or base64) and relevant summary statistics.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "array", + "description": "An array of objects representing marketing campaign metrics over time (e.g., impressions, clicks, conversions).", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, such as 'line', 'bar', or 'pie'.", + "required": true, + "defaultValue": "line" + }, + { + "name": "metricsToShow", + "type": "array", + "description": "List of metric names from campaignData to include in the graph (e.g., ['impressions','clicks']).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Start and end dates for filtering campaign data, format {start: 'YYYY-MM-DD', end: 'YYYY-MM-DD'}.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output graph image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output graph image in pixels.", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the graph image as a base64 string or URL and a summary of the displayed metrics (totals, averages)." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate visual summaries of marketing campaign performance over selected time periods, enabling data-driven decisions and reporting. It is suitable when an AI agent receives raw or aggregated campaign metrics and needs to create insightful graphs for presentations or dashboards.", + "limitations": "This tool does not perform deep statistical analysis or predictive modeling; it only visualizes the provided data. It requires well-structured input data with consistent metrics and valid dates.", + "examples": [ + "Create a line graph showing clicks and conversions from last month's campaign data.", + "Generate a bar chart to compare impressions and CTR for multiple campaigns within Q1.", + "Produce a pie chart of budget allocation across channels for a single campaign." + ] + }, + "tags": [ + "marketing", + "automation", + "graph", + "visualization", + "campaign", + "analytics", + "performance" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":[{\"date\":\"2023-05-01\",\"impressions\":1000,\"clicks\":50,\"conversions\":5},{\"date\":\"2023-05-02\",\"impressions\":1200,\"clicks\":60,\"conversions\":6}],\"graphType\":\"line\",\"metricsToShow\":[\"impressions\",\"clicks\"],\"timeRange\":{\"start\":\"2023-05-01\",\"end\":\"2023-05-31\"},\"title\":\"May Campaign Performance\",\"width\":800,\"height\":600}", + "description": "Generate a line graph showing impressions and clicks for May campaign data." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "marketing-automation.createReadme", + "description": "Generates a detailed README markdown document for a marketing automation campaign or tool. Accepts input parameters describing campaign goals, features, usage instructions, and technical details. Processes these inputs to format a professional README file that can be used for documentation or deployment guides.", + "category": "marketing-automation", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the marketing automation project or campaign for the README title.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A concise summary describing the purpose and overview of the marketing automation tool or campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of key features or capabilities included in the marketing campaign or automation tool.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installation", + "type": "string", + "description": "Step-by-step instructions on how to install or configure the marketing automation system or scripts.", + "required": false, + "defaultValue": "" + }, + { + "name": "usage", + "type": "string", + "description": "Detailed guidance on how to use the tool, including examples and command references if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "configuration", + "type": "object", + "description": "An object containing configuration parameters and their descriptions for customizing the marketing automation.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "technologies", + "type": "array", + "description": "List of programming languages, libraries, or technologies used in the marketing automation project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contributingGuidelines", + "type": "string", + "description": "Instructions and rules for contributing to the project, if open source or collaborative.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Contact information such as email or support channels for users needing assistance related to the marketing automation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated README as a markdown-formatted string in the 'readmeMarkdown' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate clear, professional README documentation for a marketing automation campaign or tool based on structured descriptive inputs. It helps quickly produce standardized documentation for projects during development or deployment phases.", + "limitations": "This tool generates static README content and does not validate the technical correctness of instructions or automate deployment. It is not designed for managing or executing marketing automation workflows.", + "examples": [ + "Generate a README for a new email drip campaign automation tool.", + "Create documentation for a social media post scheduler with configuration instructions.", + "Produce a README describing the features and setup steps for a website visitor tracking system integrated into marketing automation." + ] + }, + "tags": [ + "marketing", + "documentation", + "automation", + "README", + "campaign", + "project", + "guide" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Email Drip Campaign\",\"description\":\"Automates sending a sequence of personalized emails to leads.\",\"features\":[\"Scheduled delivery\",\"Personalization tokens\",\"Open tracking\"],\"installation\":\"Clone the repo, install dependencies with npm install.\",\"usage\":\"Run index.js with node to start the campaign.\",\"configuration\":{\"emailProvider\":\"SMTP credentials and settings\"},\"technologies\":[\"Node.js\",\"Nodemailer\"],\"contributingGuidelines\":\"Submit pull requests for improvements.\",\"contactInfo\":\"support@example.com\"}", + "description": "Generate README for an email drip campaign tool including setup and usage instructions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "marketing-automation.createMarkdown", + "description": "Generates a well-structured Markdown document for marketing campaigns based on input data such as campaign title, description, target audience, key messages, and call-to-action. It processes these inputs to produce formatted Markdown content suitable for sharing campaign summaries or documentation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignTitle", + "type": "string", + "description": "The title of the marketing campaign to include as a heading in the Markdown.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignDescription", + "type": "string", + "description": "A detailed description of the campaign to be included as body text.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The target audience segment for the campaign to document audience focus.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyMessages", + "type": "array", + "description": "An array of key marketing messages or bullet points highlighting the campaign's main points.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "callToAction", + "type": "string", + "description": "A call-to-action text encouraging the reader to take the next step, e.g., sign up or learn more.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeContactInfo", + "type": "boolean", + "description": "Whether to include a contact information section at the end of the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact information object with fields like name, email, and phone; used only if includeContactInfo is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'markdownContent' which holds the generated Markdown string representing the formatted marketing campaign document." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to produce a clean, human-readable Markdown summary or report of a marketing campaign from structured input data. This is helpful for generating campaign briefs, sharing plans internally, documenting campaign details, or preparing marketing content for platforms that support Markdown.", + "limitations": "This tool cannot create dynamic interactive content, convert input data beyond textual reflection, or format multimedia content beyond Markdown's capabilities. It requires structured input and does not perform campaign strategy or content generation beyond formatting provided text and lists.", + "examples": [ + "Generate a Markdown report for a new product launch campaign including title, description, target audience, key messages, and a call-to-action.", + "Create Markdown content documenting the key points of a social media marketing campaign with bullet points and contact details.", + "Produce a campaign brief Markdown file with a detailed description and audience focus but no contact information." + ] + }, + "tags": [ + "marketing", + "automation", + "markdown", + "campaign", + "documentation", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"campaignTitle\":\"Spring Sale 2024\",\"campaignDescription\":\"Launch of the spring collection with special discounts on all items.\",\"targetAudience\":\"Women aged 25-40 interested in fashion\",\"keyMessages\":[\"Up to 50% off\",\"Free shipping on orders over $50\",\"New styles available\"],\"callToAction\":\"Shop Now\",\"includeContactInfo\":true,\"contactInfo\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phone\":\"123-456-7890\"}}", + "description": "Generate a complete Markdown document for a fashion campaign including contact info." + }, + { + "inputJson": "{\"campaignTitle\":\"Email Re-engagement Campaign\",\"campaignDescription\":\"Target inactive users with personalized email offers to bring them back.\",\"targetAudience\":\"Users inactive for 6+ months\",\"keyMessages\":[\"Personalized discounts\",\"Exclusive content\",\"Limited time offer\"],\"callToAction\":\"Reactivate Your Account\",\"includeContactInfo\":false}", + "description": "Create Markdown content for an email campaign without contact info." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "sales-automation.analyzeHeading", + "description": "This tool analyzes a sales document heading text to identify key sales intent indicators, categorize the heading by sales stage or topic, and provide suggestions for optimization to enhance lead engagement. It accepts a heading string input, processes it using NLP and sales heuristics, and outputs a structured analysis including detected keywords, predicted sales stage, and improvement suggestions.", + "category": "sales-automation", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The sales document heading text to analyze for intent and categorization", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the heading text for accurate analysis (e.g., 'en' for English)", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSuggestions", + "type": "boolean", + "description": "Whether to include heading improvement suggestions in the output", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed keywords, predicted sales stage, category tags, and optional improvement suggestions" + }, + "aiAgent": { + "useCase": "Use this tool when processing sales documentation or lead engagement content to automatically interpret salience and sales stage from heading text. It helps agents classify documents or emails, prioritize follow-ups, and improve heading wording to increase lead interest.", + "limitations": "The tool analyzes only the heading text and cannot infer context from full documents or external data. It may misclassify ambiguous or very short headings. It is language dependent on the selected language parameter.", + "examples": [ + "Analyze the subject line 'Proposal for Q3 Partnership Opportunities' to identify sales stage and suggest improvements.", + "Determine the sales intent and categorize the heading 'Immediate Discount Offer for New Clients'.", + "Get keyword analysis and suggestions for optimizing the heading 'Monthly Sales Report Overview'." + ] + }, + "tags": [ + "analysis", + "sales", + "heading", + "lead-management", + "text-analysis", + "NLP", + "sales-stage-classification" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Exclusive Early Access Offer for Enterprise Clients\"}", + "description": "Analyze a heading announcing a special offer targeted at enterprise clients to determine sales intent and stage." + }, + { + "inputJson": "{\"headingText\":\"Follow-up: Product Demo Scheduling\",\"includeSuggestions\":false}", + "description": "Analyze a heading related to scheduling a product demo, excluding suggestions output." + }, + { + "inputJson": "{\"headingText\":\"End-of-Year Discount and Renewal Reminder\",\"language\":\"en\"}", + "description": "Analyze a heading concerning discounts and renewal for year-end, with language specified as English." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "sales-automation.analyzeReference", + "description": "Analyzes sales reference materials such as product brochures, competitor profiles, or customer testimonials to identify key insights, strengths, and potential objections. Accepts text content or document links and returns a structured summary highlighting important sales points and recommendations.", + "category": "sales-automation", + "parameters": [ + { + "name": "referenceContent", + "type": "string", + "description": "The raw text content of the sales reference material to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentUrl", + "type": "string", + "description": "URL link to the reference document, if applicable. Used to fetch content instead of direct input.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of reference content (e.g., 'brochure', 'testimonial', 'competitorProfile'). Helps tailor analysis.", + "required": false, + "defaultValue": "brochure" + }, + { + "name": "language", + "type": "string", + "description": "Language of the reference content to apply appropriate NLP models (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include practical sales recommendations based on the analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis including key insights, identified strengths, potential objections, and optionally sales recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract actionable sales insights from unstructured reference materials like brochures, competitor analysis documents, or testimonials. It helps generate summaries that inform sales strategies and objection handling.", + "limitations": "This tool cannot replace human judgment on sales strategies and may not accurately interpret highly technical or ambiguous content. It does not analyze multimedia content such as videos or images.", + "examples": [ + "Analyze the attached competitor profile to find their main weaknesses.", + "Summarize the product brochure highlighting features and likely customer objections.", + "Review customer testimonials to extract common positive feedback for sales use." + ] + }, + "tags": [ + "sales", + "analysis", + "reference", + "insights", + "automation", + "leadManagement" + ], + "examples": [ + { + "inputJson": "{\"referenceContent\":\"Our new ProductX offers unparalleled speed and reliability. Competitors often lack consistent uptime, which is our advantage.\",\"contentType\":\"brochure\",\"includeRecommendations\":true}", + "description": "Analyzing a product brochure to extract standout features and competitive advantages." + }, + { + "inputJson": "{\"contentUrl\":\"https://example.com/testimonials.txt\",\"contentType\":\"testimonial\",\"language\":\"en\",\"includeRecommendations\":false}", + "description": "Analyzing customer testimonials loaded from a URL to identify positive feedback trends without recommendations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "sales-automation.analyzeReply", + "description": "Analyzes a sales email reply or message content to assess the customer's sentiment, engagement level, and intent. Takes raw reply text as input and outputs structured insights such as sentiment classification (positive, neutral, negative), engagement indicators (e.g., questions asked, urgency), and recommended next action (e.g., follow-up, close deal).", + "category": "sales-automation", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The full text content of the customer's reply or message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional context about the sales interaction or product to better interpret the reply.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the reply text to improve analysis accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment, engagement indicators, detected intent, and recommended next sales action based on the reply analysis." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to interpret the content and tone of a customer's reply in a sales conversation to understand their sentiment and readiness for next steps. It helps automate lead scoring and prioritization by providing actionable insights from unstructured conversational text.", + "limitations": "Cannot fully replace human judgment on nuanced replies; may have reduced accuracy with highly ambiguous or sarcastic text; limited to analysis of text only, does not process attachments or non-text content.", + "examples": [ + "Analyze a customer reply to identify whether they are interested or hesitant.", + "Determine the sentiment of a reply to prioritize follow-up urgency.", + "Extract intent from a customer's message to tailor the sales approach." + ] + }, + "tags": [ + "sales", + "automation", + "analysis", + "reply", + "sentiment", + "lead-management", + "customer-engagement" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thanks for the information. I am interested but want to compare with other options before deciding.\",\"language\":\"en\"}", + "description": "Analyzing a customer's reply expressing cautious interest and need for comparison." + }, + { + "inputJson": "{\"replyText\":\"Can you provide a quote by tomorrow? We need to move fast.\",\"language\":\"en\"}", + "description": "Analyzing a reply showing urgency and strong purchasing intent." + }, + { + "inputJson": "{\"replyText\":\"I don't think this is what we are looking for.\",\"language\":\"en\"}", + "description": "Analyzing a negative reply indicating disinterest or rejection." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "sales-automation.analyzeThread", + "description": "Analyzes an email or messaging thread from a sales communication to extract key insights such as sentiment, intent, lead engagement level, and recommended next steps. Accepts the thread messages as input and outputs a structured analysis summary highlighting customer sentiment trends, potential objections, urgency, and actionable sales recommendations.", + "category": "sales-automation", + "parameters": [ + { + "name": "threadMessages", + "type": "array", + "description": "An ordered array of message objects representing the communication thread; each message includes sender, timestamp, and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the thread content (e.g., 'en' for English), to improve analysis accuracy.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the messages to identify positive, neutral, or negative tone.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectUrgency", + "type": "boolean", + "description": "Flag to detect urgency or priority indicators from the thread to help prioritize follow-ups.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxMessageHistory", + "type": "number", + "description": "Maximum number of recent messages from the thread to analyze, useful for very long threads.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing sentiment summary, customer intent classification, engagement level score, identified objections, urgency flag, and recommended actions for the sales team." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to automatically interpret the context and dynamics of a sales email or chat thread to assist in prioritizing leads, personalize follow-ups, or prepare sales summaries. It helps agents understand customer mood, intent, and objections without manual review.", + "limitations": "The analysis depends on text quality and may not fully capture nuanced context or sarcasm. It does not provide direct response generation or CRM integration; it only analyzes and summarizes thread content.", + "examples": [ + "Analyze this sales email thread to understand the customer's concerns and recommend next steps.", + "Evaluate recent chat conversation with lead to determine urgency and engagement level.", + "Summarize sentiment and objections from this email exchange to help sales reps prepare their reply." + ] + }, + "tags": [ + "sales", + "automation", + "communication", + "analysis", + "lead-management", + "sentiment-analysis", + "customer-engagement" + ], + "examples": [ + { + "inputJson": "{\"threadMessages\":[{\"sender\":\"lead@example.com\",\"timestamp\":\"2024-05-01T09:15:00Z\",\"content\":\"Hi, I'm interested in your software but have some questions.\"},{\"sender\":\"salesrep@example.com\",\"timestamp\":\"2024-05-01T09:30:00Z\",\"content\":\"Sure, happy to assist! What would you like to know?\"},{\"sender\":\"lead@example.com\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"content\":\"How does your pricing compare with competitors? Also, can it integrate with our CRM?\"}]}", + "description": "Analyzing a short sales thread to identify questions and gauge interest level." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "sales-automation.downloadCSV", + "description": "This tool downloads sales lead data as a CSV file based on specified filters such as date range, lead status, or assigned salesperson. It accepts filtering parameters and generates a CSV-formatted output containing relevant lead details for integration or reporting purposes.", + "category": "sales-automation", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "Start date (inclusive) for filtering leads, in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (inclusive) for filtering leads, in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + }, + { + "name": "leadStatus", + "type": "array", + "description": "Array of lead status values (e.g., ['new','contacted']) to filter leads by their current status.", + "required": false, + "defaultValue": "" + }, + { + "name": "assignedTo", + "type": "string", + "description": "User ID or name of salesperson to filter leads assigned to them.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFields", + "type": "array", + "description": "List of lead data fields to include in the CSV (e.g., ['name','email','phone','status']).", + "required": false, + "defaultValue": "[\"name\",\"email\",\"phone\",\"status\"]" + } + ], + "returns": { + "type": "object", + "description": "An object containing a string 'csvData' with the CSV formatted lead data, and 'fileName' for the suggested CSV file name." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve filtered sales lead data for export, offline analysis, or integration with another system in CSV format. It helps automate the process of compiling specific sales data into CSV files based on dynamic criteria.", + "limitations": "This tool does not perform direct lead edits or updates, nor does it provide real-time sync. It only exports existing lead data filtered by the specified parameters.", + "examples": [ + "Download all leads contacted between 2024-01-01 and 2024-01-31.", + "Export leads assigned to salesperson John Doe with status 'new' or 'follow-up'.", + "Get CSV including only name, email, and status fields for leads in the 'qualified' status." + ] + }, + "tags": [ + "sales", + "automation", + "CSV", + "export", + "leads", + "filtering", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-15\",\"leadStatus\":[\"new\",\"contacted\"],\"includeFields\":[\"name\",\"email\",\"phone\",\"status\"]}", + "description": "Download leads created between Jan 1 and Jan 15, 2024, with status new or contacted, including basic contact info." + }, + { + "inputJson": "{\"assignedTo\":\"Jane Smith\",\"leadStatus\":[\"qualified\"],\"includeFields\":[\"name\",\"email\",\"status\"]}", + "description": "Download qualified leads assigned to Jane Smith, returning name, email, and status only." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "sales-automation.formatInvoice", + "description": "Formats raw invoice data into a professional, standardized invoice document ready for delivery. Accepts invoice details including customer info, items, prices, taxes, and payment terms, and produces a formatted invoice as PDF or HTML with optional branding and layout styles.", + "category": "sales-automation", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "Raw invoice data containing customer details, itemized list, prices, taxes, and payment terms.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted invoice document (e.g., 'PDF', 'HTML').", + "required": true, + "defaultValue": "PDF" + }, + { + "name": "includeBranding", + "type": "boolean", + "description": "Whether to include company branding such as logo and color scheme in the invoice.", + "required": false, + "defaultValue": "true" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code for formatting dates, numbers, and currency (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "currencySymbol", + "type": "string", + "description": "Currency symbol to display for monetary values.", + "required": false, + "defaultValue": "$" + }, + { + "name": "dueDateFormat", + "type": "string", + "description": "Date format string to display payment due dates (e.g., 'MM/dd/yyyy').", + "required": false, + "defaultValue": "MM/dd/yyyy" + }, + { + "name": "includeNotes", + "type": "boolean", + "description": "Whether to include additional notes or terms and conditions on the invoice.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted invoice document in the specified format, including metadata like file name and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw sales invoice data into polished, professional invoice documents suitable for sending to customers via email or print. It helps automate and standardize invoicing by applying formatting, branding, and locale-specific number/date formatting to raw input data.", + "limitations": "Cannot generate invoices without complete required data; does not handle payment processing or accounting entries; formatting options are limited to predefined templates and styles.", + "examples": [ + "Format a completed invoice object into a branded PDF suitable for emailing a customer.", + "Generate an HTML invoice without branding for embedding in a web portal.", + "Create a PDF invoice with custom currency symbol and date format for international clients." + ] + }, + "tags": [ + "sales", + "automation", + "invoice", + "formatting", + "document", + "PDF", + "HTML", + "branding" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-2024-001\",\"customer\":{\"name\":\"Acme Corp\",\"address\":\"123 Elm St, Springfield\"},\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":15.0},{\"description\":\"Widget B\",\"quantity\":5,\"unitPrice\":30.0}],\"taxRate\":0.07,\"paymentTerms\":\"Net 30\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-07-01\"},\"outputFormat\":\"PDF\",\"includeBranding\":true,\"locale\":\"en-US\",\"currencySymbol\":\"$\",\"dueDateFormat\":\"MM/dd/yyyy\",\"includeNotes\":true}", + "description": "Format a detailed invoice into a branded PDF with currency and date formatting for US locale including notes." + }, + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"2024-002\",\"customer\":{\"name\":\"Globex Inc.\",\"address\":\"456 Oak Blvd, Metropolis\"},\"items\":[{\"description\":\"Consulting Services\",\"quantity\":1,\"unitPrice\":1500.0}],\"taxRate\":0.0,\"paymentTerms\":\"Due on receipt\",\"invoiceDate\":\"2024-06-10\",\"dueDate\":\"2024-06-10\"},\"outputFormat\":\"HTML\",\"includeBranding\":false,\"locale\":\"en-GB\",\"currencySymbol\":\"£\",\"dueDateFormat\":\"dd/MM/yyyy\",\"includeNotes\":false}", + "description": "Generate a simple, unbranded HTML invoice for consulting services with UK date and currency formatting." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "sales-automation.formatSummary", + "description": "Formats a raw sales meeting or call summary into a clear, professional, and concise report. Accepts input text that captures key sales discussion points and outputs a polished summary suited for sharing with stakeholders or archiving.", + "category": "sales-automation", + "parameters": [ + { + "name": "rawSummaryText", + "type": "string", + "description": "The unformatted raw text containing sales meeting or call notes.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Whether to extract and highlight action items explicitly in the formatted summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the summary - options include 'professional', 'casual', or 'concise'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the formatted summary in characters; the tool trims gracefully if exceeded.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with 'formattedSummary' as a polished text report and 'actionItems' as an array of extracted tasks if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert verbose or unstructured sales meeting notes into a standardized and concise summary for CRM entry, client follow-up, or team updates. It helps maintain consistent communication and saves time formatting detailed sales records.", + "limitations": "The tool depends on the quality of raw text input; disorganized or very brief notes may yield incomplete summaries. It does not replace human verification of key action items or context nuances.", + "examples": [ + "Please format the sales call notes into a professional summary highlighting next steps.", + "Generate a concise summary from the raw meeting text keeping it under 500 characters.", + "Create a casual style sales summary from the given unformatted discussion." + ] + }, + "tags": [ + "sales", + "automation", + "formatting", + "summary", + "reporting", + "lead management" + ], + "examples": [ + { + "inputJson": "{\"rawSummaryText\":\"Discussed client requirements for new software, agreed on timeline March 15. Action: send proposal by Feb 20. Client needs integration support.\",\"includeActionItems\":true,\"tone\":\"professional\",\"maxLength\":800}", + "description": "Format raw sales discussion notes into a professional summary emphasizing action items." + }, + { + "inputJson": "{\"rawSummaryText\":\"Quick call: client liked the demo, wants to see pricing options next week.\",\"includeActionItems\":false,\"tone\":\"concise\",\"maxLength\":300}", + "description": "Generate a concise summary without highlighting actions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "sales-automation.composeParagraph", + "description": "Generates a personalized, persuasive sales paragraph based on provided customer details, product information, and communication tone. Accepts inputs including customer profile, product features, desired sales goal, and tone to create a customized, coherent sales message paragraph suitable for outreach emails or proposals.", + "category": "sales-automation", + "parameters": [ + { + "name": "customerProfile", + "type": "object", + "description": "An object containing key customer details such as industry, role, and pain points to tailor the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "productInformation", + "type": "object", + "description": "Details about the product or service including key features and benefits to highlight.", + "required": true, + "defaultValue": "" + }, + { + "name": "salesGoal", + "type": "string", + "description": "The specific sales objective (e.g., schedule a demo, close deal) the paragraph should motivate the customer toward.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the paragraph, such as friendly, professional, persuasive, or casual.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words or characters for the generated paragraph to fit context constraints.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sales paragraph as a string under the 'paragraph' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create tailored sales communications automatically that combine customer insights, product perks, and clear sales objectives into an engaging paragraph. It streamlines composing persuasive messages for outreach emails or proposals, improving efficiency and personalization in sales automation workflows.", + "limitations": "The tool cannot verify factual correctness of input details and may require human review for accuracy and compliance. It does not generate multi-paragraph documents or manage full sales campaigns.", + "examples": [ + "Generate a persuasive paragraph to invite a technology company CTO to a product demo focusing on cloud security features, using a friendly tone.", + "Create a professional paragraph encouraging a small business owner to consider an accounting software upgrade mentioning key automation benefits." + ] + }, + "tags": [ + "sales", + "automation", + "content-generation", + "personalization", + "lead-management", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"customerProfile\":{\"industry\":\"Healthcare\",\"role\":\"CTO\",\"painPoints\":\"Data security and compliance challenges\"},\"productInformation\":{\"features\":[\"Advanced encryption\",\"Compliance certifications\",\"24/7 support\"],\"benefits\":\"Reduce data breach risks and meet regulatory standards\"},\"salesGoal\":\"Schedule a product demo\",\"tone\":\"persuasive\",\"maxLength\":120}", + "description": "Compose a persuasive paragraph aimed at a healthcare CTO highlighting product security features and encouraging a demo scheduling." + }, + { + "inputJson": "{\"customerProfile\":{\"industry\":\"Retail\",\"role\":\"Owner\",\"painPoints\":\"Inefficient point of sale system\"},\"productInformation\":{\"features\":[\"Fast transaction processing\",\"Real-time inventory updates\"],\"benefits\":\"Increase sales efficiency and reduce wait times\"},\"salesGoal\":\"Close sales deal\",\"tone\":\"professional\",\"maxLength\":100}", + "description": "Generate a professional sales paragraph emphasizing benefits of a new POS system to a retail store owner to close the deal." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "sales-automation.buildQuery", + "description": "Constructs an optimized sales lead query string based on specified filter criteria such as lead attributes, status, location, and engagement scores. Accepts input parameters defining filter conditions and logical operators, and outputs a structured query string compatible with CRM or sales automation platforms for targeting leads efficiently.", + "category": "sales-automation", + "parameters": [ + { + "name": "filters", + "type": "array", + "description": "List of filter objects each specifying a field, operator, and value to apply in the query", + "required": true, + "defaultValue": "" + }, + { + "name": "logicalOperator", + "type": "string", + "description": "Logical operator to combine filters: 'AND' or 'OR'", + "required": false, + "defaultValue": "AND" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field name by which to sort the resulting leads", + "required": false, + "defaultValue": "" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of leads to return", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeArchived", + "type": "boolean", + "description": "Whether to include archived leads in the query results", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed query string compatible with sales automation or CRM systems." + }, + "aiAgent": { + "useCase": "Use this tool when needing to dynamically generate lead or sales queries based on multiple customizable criteria to automate lead filtering and segmentation in CRM or sales automation workflows. This accelerates targeting relevant prospects and integrating with platforms expecting query strings.", + "limitations": "This tool does not execute the query against a database or CRM itself; it only builds the structured query syntax. It may need adaptation for specific CRM query language dialects.", + "examples": [ + "Build a query for leads in California with a lead score above 80, sorted by last contact date.", + "Generate a query combining filters for lead status 'Interested' or 'Negotiation' and exclude archived leads.", + "Create a query for top 50 leads with engagement score greater than 70 including archived leads." + ] + }, + "tags": [ + "sales", + "automation", + "query", + "lead-management", + "CRM", + "filtering" + ], + "examples": [ + { + "inputJson": "{\"filters\":[{\"field\":\"location\",\"operator\":\"equals\",\"value\":\"California\"},{\"field\":\"leadScore\",\"operator\":\"greater_than\",\"value\":80}],\"logicalOperator\":\"AND\",\"sortBy\":\"lastContactDate\",\"limit\":50,\"includeArchived\":false}", + "description": "Query leads located in California with a lead score above 80, sorted by last contact date, limited to 50 leads, excluding archived." + }, + { + "inputJson": "{\"filters\":[{\"field\":\"status\",\"operator\":\"in\",\"value\":[\"Interested\",\"Negotiation\"]}],\"logicalOperator\":\"OR\",\"limit\":100}", + "description": "Query leads whose status is either Interested or Negotiation, limited to 100 leads." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "sales-automation.generateHeading", + "description": "Generates compelling and contextually relevant sales email or proposal headings based on product details, target audience, and desired tone. Accepts input parameters such as product name, audience type, and tone to produce optimized sales headings that increase engagement and open rates.", + "category": "sales-automation", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service being sold.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceType", + "type": "string", + "description": "Type of target audience (e.g., small business owners, enterprise IT managers).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the heading (e.g., formal, casual, persuasive, urgent).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "headingLength", + "type": "number", + "description": "Preferred maximum length of the heading in characters.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading string optimized for sales outreach." + }, + "aiAgent": { + "useCase": "Use when generating effective subject lines or headings for sales emails, proposals, or landing pages targeting specific audiences with a given product and tone. Helps automate and improve outreach effectiveness by tailoring headings to context.", + "limitations": "Does not generate full email content or detailed proposals; focuses only on concise headline generation. Quality depends on clarity and completeness of input parameters.", + "examples": [ + "Generate a persuasive heading for a SaaS product aimed at startup founders.", + "Create a formal heading for an enterprise software sales proposal targeting CIOs.", + "Produce a short, urgent heading for a discount offer on business consulting services." + ] + }, + "tags": [ + "sales", + "automation", + "heading", + "content generation", + "email subject", + "lead engagement", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"CloudSync Pro\",\"audienceType\":\"small business owners\",\"tone\":\"persuasive\",\"headingLength\":50}", + "description": "Generate a persuasive sales heading for a cloud storage product aimed at small business owners limited to 50 characters." + }, + { + "inputJson": "{\"productName\":\"SecureNet Firewall\",\"audienceType\":\"enterprise IT managers\",\"tone\":\"formal\"}", + "description": "Create a formal heading for an enterprise security product targeting IT managers." + }, + { + "inputJson": "{\"productName\":\"GrowthBoost Consulting\",\"audienceType\":\"startup founders\",\"tone\":\"urgent\",\"headingLength\":45}", + "description": "Produce an urgent sales heading for consulting services targeting startups with a max length of 45 characters." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "sales-automation.generateSession", + "description": "Generates a detailed sales session object representing an interaction or meeting with a potential lead or client. Accepts inputs such as session start and end times, participant IDs, communication channel, and session notes. Processes these inputs to create a structured session record with derived attributes like session duration and sentiment score (if notes provided). Returns the complete sales session object ready for analytics or CRM ingestion.", + "category": "sales-automation", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier for the sales session.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp marking session start.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp marking session end.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant IDs involved in the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Communication medium of the session, e.g., phone, email, in-person, video.", + "required": true, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Optional textual notes or summary of the session content.", + "required": false, + "defaultValue": "" + }, + { + "name": "dealStage", + "type": "string", + "description": "Current stage of the deal during this session, e.g., prospecting, negotiation, closed-won.", + "required": false, + "defaultValue": "\"prospecting\"" + } + ], + "returns": { + "type": "object", + "description": "A sales session record including identifiers, timestamps, participant list, communication channel, session duration in seconds, deal stage, optional notes, and an optional sentiment score derived from notes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a structured representation of a sales interaction session from raw session details for tracking progress, analytics, or CRM updates. Ideal for converting raw event data into unified session records for further processing or reporting.", + "limitations": "Cannot analyze audio/video content or extract participant details automatically; requires explicit input parameters. Sentiment analysis is basic and only available if notes are provided.", + "examples": [ + "Generate a new sales session record from the latest client call with timestamps, participants, and notes.", + "Create a session object representing email interactions grouped as one session by time range and participants.", + "Generate a session summary for an in-person meeting with start/end times and deal stage." + ] + }, + "tags": [ + "sales", + "automation", + "session", + "lead-management", + "crm", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess-001\",\"startTime\":\"2024-05-01T10:00:00Z\",\"endTime\":\"2024-05-01T10:45:00Z\",\"participants\":[\"lead123\",\"rep456\"],\"channel\":\"video\",\"notes\":\"Discussed product features and pricing options.\",\"dealStage\":\"prospecting\"}", + "description": "Generate a sales session for a video call with a lead covering initial prospecting topics." + }, + { + "inputJson": "{\"sessionId\":\"sess-002\",\"startTime\":\"2024-05-02T14:15:00Z\",\"endTime\":\"2024-05-02T14:20:00Z\",\"participants\":[\"lead789\",\"rep456\"],\"channel\":\"email\",\"notes\":\"Follow-up on contract terms and delivery timeline.\",\"dealStage\":\"negotiation\"}", + "description": "Create a session object representing a brief email interaction during contract negotiation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "sales-automation.generateReference", + "description": "Generates a professional sales reference letter or testimonial based on specified client information, product details, and key achievements. Accepts client and product data plus reference tone preferences, then outputs a formatted textual reference suitable for sharing in sales or marketing contexts.", + "category": "sales-automation", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name of the client for whom the reference is generated", + "required": true, + "defaultValue": "" + }, + { + "name": "clientCompany", + "type": "string", + "description": "Name of the client's company or organization", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "The product or service that delivered value to the client", + "required": true, + "defaultValue": "" + }, + { + "name": "achievements", + "type": "array", + "description": "List of key achievements or benefits the client experienced", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceTone", + "type": "string", + "description": "Desired tone of the reference letter, e.g., formal, casual, enthusiastic", + "required": false, + "defaultValue": "formal" + }, + { + "name": "referenceLength", + "type": "number", + "description": "Approximate desired length of the reference content in words", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reference text and metadata such as word count" + }, + "aiAgent": { + "useCase": "Use this tool when a personalized sales reference or testimonial letter is needed to support sales outreach, marketing campaigns, or client prospect communications. It helps automate the creation of credible references by synthesizing client and product info into a polished text.", + "limitations": "Cannot verify factual accuracy of client claims or legal compliance of the reference text. Cannot generate references without sufficient input data or for products not specified.", + "examples": [ + "Generate a formal sales reference for a client named 'ABC Corp' highlighting increased revenue using 'ProductX'.", + "Create an enthusiastic testimonial for 'Jane Smith' from 'XYZ Ltd' describing her experience with 'ServiceY'." + ] + }, + "tags": [ + "sales", + "automation", + "reference", + "testimonial", + "content-generation", + "marketing", + "client-relations" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"ABC Corporation\",\"clientCompany\":\"ABC Corporation\",\"productName\":\"ProductX\",\"achievements\":[\"increased revenue by 25%\",\"streamlined their sales process\",\"reduced customer acquisition cost\"],\"referenceTone\":\"formal\",\"referenceLength\":200}", + "description": "Generate a formal, detailed reference for ABC Corporation summarizing the key benefits from ProductX." + }, + { + "inputJson": "{\"clientName\":\"Jane Smith\",\"clientCompany\":\"XYZ Ltd\",\"productName\":\"ServiceY\",\"achievements\":[\"improved customer satisfaction scores\",\"enhanced team productivity\"],\"referenceTone\":\"enthusiastic\",\"referenceLength\":150}", + "description": "Create an enthusiastic testimonial for Jane Smith describing her positive experience with ServiceY." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "sales-automation.createReply", + "description": "Generates a personalized sales email reply based on provided lead information, previous conversation context, and desired response tone. Accepts inputs like lead details, prior messages, and reply intent, then produces a crafted email reply text suitable for automated or assisted sales outreach.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadName", + "type": "string", + "description": "The full name of the sales lead to personalize the reply", + "required": true, + "defaultValue": "" + }, + { + "name": "leadCompany", + "type": "string", + "description": "The company the lead belongs to, used to tailor the message tone and content", + "required": false, + "defaultValue": "" + }, + { + "name": "previousMessages", + "type": "array", + "description": "An array of previous message objects exchanged with the lead, each containing sender and message text to provide context", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyIntent", + "type": "string", + "description": "Purpose of the reply, for example 'follow-up', 'answer question', 'schedule meeting', 'send proposal'", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the reply, such as 'professional', 'friendly', 'concise', or 'formal'", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a standard sales representative signature to the reply", + "required": false, + "defaultValue": "true" + }, + { + "name": "customNotes", + "type": "string", + "description": "Additional notes or points to emphasize in the reply message", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the finalized reply text and metadata about its tone and intent, e.g., { replyText: string, tone: string, intent: string }" + }, + "aiAgent": { + "useCase": "Use this tool when generating personalized and contextually relevant sales email replies to leads, leveraging conversation history and desired intent to enhance engagement and increase conversion chances. It automates crafting coherent and suitable responses based on input parameters, saving time and ensuring consistent communication tone.", + "limitations": "This tool cannot replace human judgment on highly sensitive or complex negotiation topics, nor does it integrate dynamically with live CRM data without pre-processing. It generates text based on provided inputs and may require review for compliance or specialized technical content.", + "examples": [ + "Create a friendly follow-up reply to a lead named Jane Smith from Acme Corp who has shown initial interest.", + "Generate a professional reply answering a technical question previously asked by the lead without company info.", + "Compose a concise invitation to schedule a meeting, including custom notes about availability." + ] + }, + "tags": [ + "sales", + "automation", + "email", + "reply", + "lead-management", + "communication", + "crm" + ], + "examples": [ + { + "inputJson": "{\"leadName\":\"Jane Smith\",\"leadCompany\":\"Acme Corp\",\"previousMessages\":[{\"sender\":\"lead\",\"text\":\"Thank you for your information. Can you provide pricing details?\"}],\"replyIntent\":\"answer question\",\"tone\":\"professional\",\"includeSignature\":true,\"customNotes\":\"Emphasize our competitive pricing and flexible plans.\"}", + "description": "Generate a professional reply answering a pricing question from Jane Smith at Acme Corp including key selling points." + }, + { + "inputJson": "{\"leadName\":\"Carlos Martinez\",\"replyIntent\":\"follow-up\",\"tone\":\"friendly\",\"includeSignature\":false}", + "description": "Create a friendly follow-up message for lead Carlos Martinez without including a signature." + }, + { + "inputJson": "{\"leadName\":\"Emily Johnson\",\"replyIntent\":\"schedule meeting\",\"tone\":\"concise\",\"includeSignature\":true,\"customNotes\":\"Suggest meetings next week Tuesday or Wednesday.\"}", + "description": "Compose a concise reply to schedule a meeting with Emily Johnson including suggested days next week." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "sales-automation.createSession", + "description": "Creates a detailed sales session record by accepting input such as session start time, end time, salesperson ID, customer ID, and notes. It processes this data to generate a session object that tracks interaction metadata useful for sales analytics and performance monitoring.", + "category": "sales-automation", + "parameters": [ + { + "name": "salespersonId", + "type": "string", + "description": "Unique identifier for the salesperson conducting the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerId", + "type": "string", + "description": "Unique identifier of the customer involved in the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp when the session starts.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp when the session ends.", + "required": true, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Optional notes or summary content describing the session details.", + "required": false, + "defaultValue": "" + }, + { + "name": "sessionType", + "type": "string", + "description": "Type of session such as 'call', 'meeting', or 'email'.", + "required": false, + "defaultValue": "call" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords categorizing the session for filtering or search.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created session, including a unique session ID, timestamps, participant IDs, notes, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to record or log a sales interaction session in a CRM or sales analytics system. It helps track sessions systematically including timing, participants, and context, enabling follow-ups or performance insights.", + "limitations": "This tool does not analyze session content or outcomes; it only creates structured session records. It requires valid timestamps and participant IDs to function correctly.", + "examples": [ + "Create a phone call session between salesperson A123 and customer C456 starting now for 30 minutes.", + "Log a follow-up meeting session with notes and tags for importance and product interest.", + "Record an email exchange session with basic metadata excluding detailed email content." + ] + }, + "tags": [ + "sales", + "automation", + "session", + "recording", + "analytics", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"salespersonId\":\"SP123\",\"customerId\":\"CUST456\",\"startTime\":\"2024-06-01T09:00:00Z\",\"endTime\":\"2024-06-01T09:30:00Z\",\"notes\":\"Initial product demo call.\",\"sessionType\":\"call\",\"tags\":[\"demo\",\"new-lead\"]}", + "description": "Creating a 30-minute phone call session with notes and tags for a new lead." + }, + { + "inputJson": "{\"salespersonId\":\"SP789\",\"customerId\":\"CUST101\",\"startTime\":\"2024-06-02T14:00:00Z\",\"endTime\":\"2024-06-02T15:00:00Z\",\"notes\":\"Follow-up meeting to discuss pricing.\",\"sessionType\":\"meeting\",\"tags\":[\"follow-up\",\"pricing\"]}", + "description": "Logging a one-hour meeting session including notes and multiple tags." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "sales-automation.createTrend", + "description": "Creates sales trend analytics based on input historical sales data and optional filters to identify patterns such as rising or declining product performance over time. Accepts structured sales records including timestamps, product IDs, and sales amounts; analyzes data for trend detection; outputs summarized trend metrics and visual data points for use in sales planning and forecasting.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesData", + "type": "array", + "description": "Array of sales records, each with date, productId, and salesAmount fields, used as the primary data source for trend analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for trend analysis period in ISO format (YYYY-MM-DD). Filters sales data to this date or later.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for trend analysis period in ISO format (YYYY-MM-DD). Filters sales data to this date or earlier.", + "required": false, + "defaultValue": "" + }, + { + "name": "productIds", + "type": "array", + "description": "List of product IDs to analyze trends for. If omitted, all products are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationPeriod", + "type": "string", + "description": "Time interval to aggregate sales data by (e.g., 'daily', 'weekly', 'monthly'). Defaults to 'monthly'.", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "trendType", + "type": "string", + "description": "Type of trend to detect, e.g., 'growth', 'decline', 'seasonality'. If omitted, detects all trend types.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected sales trends per product with summary statistics such as growth rates, confidence indicators, and optionally data points ready for visualization." + }, + "aiAgent": { + "useCase": "Use this tool when you have historical sales data and need to identify and quantify sales trends over time by product or category to support strategic decisions, forecasting, or resource allocation. Helpful in automating analytical report generation or feeding dashboards with trend insights.", + "limitations": "Does not predict future sales, only analyzes past data for historical trends. Requires structured sales data with consistent timestamps and identifiers. Does not interpret causes behind trends or external market factors.", + "examples": [ + "Create a monthly sales growth trend report for products A and B between 2023-01-01 and 2023-06-30.", + "Analyze weekly sales data to identify any declining product trends across the entire product catalog.", + "Detect seasonal sales patterns for selected products for the last two years." + ] + }, + "tags": [ + "sales", + "analytics", + "trend-analysis", + "automation", + "forecasting", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"salesData\":[{\"date\":\"2023-01-15\",\"productId\":\"A\",\"salesAmount\":100},{\"date\":\"2023-01-20\",\"productId\":\"A\",\"salesAmount\":120},{\"date\":\"2023-02-10\",\"productId\":\"A\",\"salesAmount\":150},{\"date\":\"2023-01-15\",\"productId\":\"B\",\"salesAmount\":200},{\"date\":\"2023-01-25\",\"productId\":\"B\",\"salesAmount\":180}],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-02-28\",\"productIds\":[\"A\"],\"aggregationPeriod\":\"monthly\"}", + "description": "Analyze monthly sales trend for product A from January to February 2023." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "sales-automation.createSecret", + "description": "Generates a secure secret key or token for sales automation applications, accepting inputs such as desired length and entropy source, and returns a cryptographically strong secret string to be used for authentication, API access, or encryption within sales tools.", + "category": "sales-automation", + "parameters": [ + { + "name": "secretName", + "type": "string", + "description": "A descriptive name for the secret to identify its use within the sales automation system.", + "required": true, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "The desired length of the generated secret string in characters; must be between 16 and 128.", + "required": true, + "defaultValue": "32" + }, + { + "name": "includeSymbols", + "type": "boolean", + "description": "Whether to include symbol characters in the generated secret to increase complexity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeNumbers", + "type": "boolean", + "description": "Whether to include numeric digits in the generated secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeUppercase", + "type": "boolean", + "description": "Whether to include uppercase alphabetic characters in the secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeLowercase", + "type": "boolean", + "description": "Whether to include lowercase alphabetic characters in the secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata object to attach additional descriptive or contextual information about the secret.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the secret name, the generated secret string, and metadata such as creation timestamp and length." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate secure tokens, API keys, or passwords for sales automation tools and integrations, ensuring strong randomness and complexity to protect access credentials and maintain system security.", + "limitations": "This tool does not store or manage secrets; it only generates them. It does not validate or enforce usage policies for generated secrets.", + "examples": [ + "Create a 64-character secret token named \"SalesAPIKey\" for authenticating API requests.", + "Generate a secret password without symbols but including numbers and letters for sales CRM integration.", + "Create a 48-character secret including uppercase, lowercase, numbers, and symbols with metadata describing its use." + ] + }, + "tags": [ + "security", + "secret-generation", + "sales-automation", + "authentication", + "token", + "password" + ], + "examples": [ + { + "inputJson": "{\"secretName\":\"SalesAPIKey\",\"length\":64,\"includeSymbols\":true,\"includeNumbers\":true,\"includeUppercase\":true,\"includeLowercase\":true}", + "description": "Generate a 64-char strong secret with all character types for securing sales API access." + }, + { + "inputJson": "{\"secretName\":\"CRMPassword\",\"length\":32,\"includeSymbols\":false,\"includeNumbers\":true,\"includeUppercase\":true,\"includeLowercase\":true}", + "description": "Create a 32-character password excluding symbols for CRM integration credentials." + }, + { + "inputJson": "{\"secretName\":\"IntegrationToken\",\"length\":48,\"includeSymbols\":true,\"includeNumbers\":true,\"includeUppercase\":true,\"includeLowercase\":true,\"metadata\":{\"purpose\":\"third-party app authentication\",\"environment\":\"production\"}}", + "description": "Generate a 48-char secret with full complexity including metadata for use in a third-party app authentication in production." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "sales-automation.createSpec", + "description": "Generates a detailed sales specification document based on input parameters such as target customer profile, product details, sales goals, and outreach strategies. Processes the inputs to structure a comprehensive spec that guides sales teams on approach and messaging. Outputs a formatted sales spec as a string document.", + "category": "sales-automation", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "Name of the product or service to be sold", + "required": true, + "defaultValue": "" + }, + { + "name": "targetCustomerProfile", + "type": "object", + "description": "Characteristics and demographics of the target customer or market segment", + "required": true, + "defaultValue": "" + }, + { + "name": "salesGoals", + "type": "object", + "description": "Specific sales goals including targets and timelines", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of key product features and benefits to highlight", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outreachChannels", + "type": "array", + "description": "Preferred outreach channels like email, phone calls, social media", + "required": false, + "defaultValue": "[]" + }, + { + "name": "competitorAnalysis", + "type": "string", + "description": "Optional summary of competitors and differentiators", + "required": false, + "defaultValue": "" + }, + { + "name": "toneOfVoice", + "type": "string", + "description": "Preferred tone and style for the spec document (e.g., formal, casual)", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sales specification document as a string with sections formatted for clarity." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly create a structured, professional sales specification document from raw inputs about product, target customer, and sales strategy. Useful for sales automation workflows to generate consistent, clear internal documents guiding sales efforts.", + "limitations": "Does not customize for industry-specific jargon beyond provided input. Does not generate legal or contractual documents. Requires accurate and sufficient input data.", + "examples": [ + "Create a sales spec for a new software product targeting small businesses with goal of 100 sales in 6 months.", + "Generate a sales document specifying outreach channels and key messaging for an online course launch.", + "Produce a detailed specification outlining sales strategy for a luxury skincare product including competitor differentiators." + ] + }, + "tags": [ + "sales", + "automation", + "document generation", + "lead management", + "sales strategy", + "sales specification" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"CloudSync Pro\",\"targetCustomerProfile\":{\"industry\":\"Tech startups\",\"companySize\":\"10-50 employees\",\"role\":\"CTO\"},\"salesGoals\":{\"monthlyQuota\":50,\"timeFrameMonths\":3},\"keyFeatures\":[\"Real-time sync\",\"Multi-device support\",\"End-to-end encryption\"],\"outreachChannels\":[\"email\",\"linkedin\"],\"competitorAnalysis\":\"Main competitor lacks encryption feature.\",\"toneOfVoice\":\"formal\"}", + "description": "Generate a sales spec document for a tech startup SaaS product targeting CTOs with specific sales goals and outreach channels." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "finance-tools.analyzeOpportunity", + "description": "Analyzes a business opportunity by evaluating financial metrics, market data, and risk factors. It accepts detailed opportunity data including projected revenues, costs, market size, and competitive landscape, processes these inputs to calculate ROI, profitability, risk scores, and generates a comprehensive opportunity evaluation report.", + "category": "finance-tools", + "parameters": [ + { + "name": "projectedRevenue", + "type": "number", + "description": "Estimated revenue expected from the opportunity over a specific period (e.g., yearly).", + "required": true, + "defaultValue": "" + }, + { + "name": "projectedCost", + "type": "number", + "description": "Estimated total cost to pursue the opportunity including fixed and variable costs.", + "required": true, + "defaultValue": "" + }, + { + "name": "marketSize", + "type": "number", + "description": "Size of the target market in monetary value or number of potential customers.", + "required": false, + "defaultValue": "0" + }, + { + "name": "competitiveLandscape", + "type": "array", + "description": "List of main competitors as strings affecting opportunity potential.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "riskFactors", + "type": "object", + "description": "Key risk factors with associated probability and impact scores, e.g., {\"marketRisk\": {\"probability\":0.3,\"impact\":0.5}}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeHorizonMonths", + "type": "number", + "description": "Duration in months over which the financial projections apply.", + "required": false, + "defaultValue": "12" + }, + { + "name": "discountRate", + "type": "number", + "description": "Annual discount rate (as decimal) to calculate net present value (NPV).", + "required": false, + "defaultValue": "0.1" + } + ], + "returns": { + "type": "object", + "description": "Summary object including ROI, profitability, net present value (NPV), a risk score (0-1), and a detailed recommendation report as string." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to quantitatively evaluate the financial viability and strategic merit of a business opportunity with financial data and market context. It helps to decide whether to pursue, adjust, or reject an opportunity based on financial and risk analysis.", + "limitations": "This tool cannot provide qualitative insights such as customer sentiment or operational feasibility beyond provided input metrics. It depends on input accuracy and does not account for unpredictable external events.", + "examples": [ + "Analyze ROI and risk of a new product launch opportunity with revenue, cost, and market data.", + "Evaluate profitability and risk of entering a new market segment based on competitor intensity and financial estimates.", + "Calculate NPV and generate a comprehensive report for a planned business expansion over the next 24 months." + ] + }, + "tags": [ + "finance", + "business-analysis", + "opportunity-evaluation", + "risk-assessment", + "ROI", + "NPV" + ], + "examples": [ + { + "inputJson": "{\"projectedRevenue\":500000,\"projectedCost\":300000,\"marketSize\":2000000,\"competitiveLandscape\":[\"CompetitorA\",\"CompetitorB\"],\"riskFactors\":{\"marketRisk\":{\"probability\":0.2,\"impact\":0.4},\"executionRisk\":{\"probability\":0.1,\"impact\":0.6}},\"timeHorizonMonths\":12,\"discountRate\":0.08}", + "description": "Evaluate a new product launch opportunity with estimated revenues, costs, moderate market size, and some competitive presence." + }, + { + "inputJson": "{\"projectedRevenue\":1500000,\"projectedCost\":1200000,\"marketSize\":5000000,\"competitiveLandscape\":[\"CompetitorX\"],\"riskFactors\":{\"regulatoryRisk\":{\"probability\":0.1,\"impact\":0.7}},\"timeHorizonMonths\":24,\"discountRate\":0.1}", + "description": "Analyze the financial and risk profile of entering a new geographic market segment with known regulatory risks." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "finance-tools.analyzeComment", + "description": "Analyzes textual financial comments or notes related to transactions or financial reports to extract sentiment, detect important financial terms, and identify potential risks or opportunities. Accepts raw comment text and outputs structured insights including sentiment score, key terms, and flagged issues.", + "category": "finance-tools", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw text of the financial comment or note to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the comment for accurate analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the comment text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeyTerms", + "type": "boolean", + "description": "Whether to extract and return key financial terms from the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectRisks", + "type": "boolean", + "description": "Whether to flag potential financial risks or warnings mentioned in the comment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the sentiment score, extracted key financial terms, and any detected risks or opportunities identified in the comment." + }, + "aiAgent": { + "useCase": "Use this tool when needing to parse and understand freeform financial comments or notes related to transactions, reports, or communications. It helps convert unstructured text into actionable insights such as sentiment polarity, relevant financial terminology, and potential warning signs or opportunities for decision-making.", + "limitations": "This tool does not provide quantitative financial calculations or validate factual financial data; it only analyzes textual content for linguistic insights and does not replace thorough financial auditing or expert review.", + "examples": [ + "Analyze sentiment and risks in a CFO's note about quarterly earnings.", + "Extract key terms and detect warnings in customer comments regarding loan applications.", + "Identify opportunities and the overall tone in advisor notes about investment portfolios." + ] + }, + "tags": [ + "finance", + "text analysis", + "sentiment", + "risk detection", + "financial comments", + "natural language processing" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"The quarterly revenue growth exceeds expectations, but increasing costs in supply chain may impact margins.\",\"language\":\"en\",\"includeSentiment\":true,\"includeKeyTerms\":true,\"detectRisks\":true}", + "description": "Analyzing a financial report comment that mentions revenue growth and cost concerns." + }, + { + "inputJson": "{\"commentText\":\"Customer loan application flagged due to irregular income statements, requires further review.\",\"language\":\"en\",\"includeSentiment\":false,\"includeKeyTerms\":true,\"detectRisks\":true}", + "description": "Analyzing a customer comment related to loan application with possible risk indicators." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "finance-tools.sendAlert", + "description": "This tool accepts inputs related to financial security alerts including the alert type, severity, affected accounts, and a custom message. It processes these inputs to generate and send a structured alert notification to specified recipients via email or SMS. The output confirms the alert dispatch status and details of the sent alert.", + "category": "finance-tools", + "parameters": [ + { + "name": "alertType", + "type": "string", + "description": "Type of financial alert to send, e.g., 'fraud', 'suspiciousActivity', 'accountBreach'.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity of the alert: 'low', 'medium', or 'high'.", + "required": true, + "defaultValue": "medium" + }, + { + "name": "affectedAccounts", + "type": "array", + "description": "List of account identifiers impacted by the alert.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "customMessage", + "type": "string", + "description": "Custom message or instructions to include in the alert notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient contact details (emails or phone numbers) who should receive the alert.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "sendViaEmail", + "type": "boolean", + "description": "Flag indicating if alert should be sent via email.", + "required": true, + "defaultValue": "true" + }, + { + "name": "sendViaSMS", + "type": "boolean", + "description": "Flag indicating if alert should be sent via SMS text message.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object confirming the alert dispatch status including success boolean, message, and a unique alert ID." + }, + "aiAgent": { + "useCase": "Use this tool when detecting financial security issues that need to be quickly communicated to relevant stakeholders to prompt an immediate response, such as fraud detection, breach notification, or suspicious transactions. It helps orchestrate multi-channel alerting with customizable detail based on severity and affected accounts.", + "limitations": "This tool does not analyze financial data for threats itself; it solely dispatches alerts when given parameters. It cannot verify recipient contact validity nor guarantee delivery beyond confirmation of send action.", + "examples": [ + "Send a high severity fraud alert via email to compliance officers with affected account details.", + "Notify customers via SMS of suspicious activity on their accounts with protective instructions.", + "Dispatch a low severity reminder alert regarding periodic account security checks to internal finance team emails." + ] + }, + "tags": [ + "financial", + "alert", + "notification", + "security", + "fraud", + "account", + "communication" + ], + "examples": [ + { + "inputJson": "{\"alertType\":\"fraud\",\"severityLevel\":\"high\",\"affectedAccounts\":[\"ACC12345\",\"ACC67890\"],\"customMessage\":\"Immediate action required to verify transactions.\",\"recipients\":[\"compliance@bank.com\"],\"sendViaEmail\":true,\"sendViaSMS\":false}", + "description": "Send a high severity fraud alert email to compliance with affected account numbers and a custom message." + }, + { + "inputJson": "{\"alertType\":\"suspiciousActivity\",\"severityLevel\":\"medium\",\"affectedAccounts\":[\"ACC98765\"],\"customMessage\":\"Please verify recent unusual login activity.\",\"recipients\":[\"user1@example.com\",\"user2@example.com\"],\"sendViaEmail\":true,\"sendViaSMS\":true}", + "description": "Send suspicious activity alert via both email and SMS to affected users with instructions to verify activity." + }, + { + "inputJson": "{\"alertType\":\"accountBreach\",\"severityLevel\":\"high\",\"affectedAccounts\":[],\"customMessage\":\"System detected breach attempt. Accounts unaffected but review advised.\",\"recipients\":[\"security-team@company.com\"],\"sendViaEmail\":true,\"sendViaSMS\":false}", + "description": "Send a high severity account breach alert via email only to the internal security team without listing specific accounts." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "finance-tools.uploadJSON", + "description": "Uploads financial data provided as a JSON string, validates its structure against expected accounting or transaction schemas, and integrates it into the existing financial record system. Returns a summary report indicating success, errors in data, and records processed.", + "category": "finance-tools", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "A JSON-encoded string containing financial records or transactions to upload. Must follow required data format for transactions or accounting entries.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, existing financial records with matching IDs will be overwritten. If false, records will only be added if they do not exist.", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, the tool will validate the JSON data format and content but not actually upload or modify any records.", + "required": false, + "defaultValue": "false" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier for the user or system initiating the upload, used for audit logging and permissions checking.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload summary: number of records processed, number of errors, detailed error messages if any, and overall upload status (success or failure)." + }, + "aiAgent": { + "useCase": "Use this tool when a financial system or application receives bulk financial data updates in JSON format that need to be programmatically ingested and validated for accounting or transaction tracking. It is particularly useful for automating the import of external financial data feeds or user submitted transaction batches to maintain system records up to date.", + "limitations": "This tool validates and uploads JSON financial data but does not transform or standardize data formats beyond basic schema conformance. It cannot extract data from formats other than JSON or resolve complex accounting rule conflicts. Advanced reconciliation or data enrichment must be done separately.", + "examples": [ + "Upload a batch of daily transactions from an external payment provider in JSON format.", + "Validate a JSON financial report before committing it to the database to ensure correct format and completeness.", + "Overwrite existing financial entries with corrected data in JSON format while preserving audit trails." + ] + }, + "tags": [ + "upload", + "json", + "finance", + "financial-data", + "accounting", + "transactions", + "data-validation" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"[{\\\"transactionId\\\":\\\"tx1001\\\",\\\"date\\\":\\\"2024-05-10\\\",\\\"amount\\\":1500.00,\\\"currency\\\":\\\"USD\\\",\\\"description\\\":\\\"Invoice Payment\\\"}]\",\"overwriteExisting\":false,\"validateOnly\":false,\"userId\":\"user_123\"}", + "description": "Upload a new set of financial transactions without overwriting existing records." + }, + { + "inputJson": "{\"jsonData\":\"[{\\\"transactionId\\\":\\\"tx1002\\\",\\\"date\\\":\\\"2024-05-11\\\",\\\"amount\\\":-200.00,\\\"currency\\\":\\\"USD\\\",\\\"description\\\":\\\"Refund\\\"}]\",\"overwriteExisting\":true,\"validateOnly\":false,\"userId\":\"admin_001\"}", + "description": "Overwrite an existing transaction with corrected refund data." + }, + { + "inputJson": "{\"jsonData\":\"[{\\\"transactionId\\\":\\\"tx1003\\\",\\\"date\\\":\\\"2024-05-12\\\",\\\"amount\\\":300.00,\\\"currency\\\":\\\"USD\\\",\\\"description\\\":\\\"Subscription Fee\\\"}]\",\"validateOnly\":true}", + "description": "Validate JSON financial data without uploading, to check format correctness before committing." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "finance-tools.downloadJSON", + "description": "Downloads financial data from a specified API endpoint or local source and returns it as a JSON object. Inputs include the data source URL or file path, optional authentication tokens, date range filters, and query parameters. The tool fetches the data, applies filters, and outputs standardized JSON formatted financial records for further processing or analysis.", + "category": "finance-tools", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "URL of the financial data API endpoint or local file path to download JSON from", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or API key for access", + "required": false, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Optional start date (ISO 8601) to filter financial data records", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Optional end date (ISO 8601) to filter financial data records", + "required": false, + "defaultValue": "" + }, + { + "name": "queryParameters", + "type": "object", + "description": "Optional additional query parameters as key-value pairs to customize the data request", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the downloaded financial data records, structured by date, account, or other relevant categories as defined by the source" + }, + "aiAgent": { + "useCase": "Use this tool when requesting financial data in JSON format from APIs or data files for accounting, analysis, or reporting workflows. It is suitable for fetching transactional data, balance sheets, or real-time financial metrics filtered by date or query parameters.", + "limitations": "This tool does not perform data validation beyond JSON parsing, nor does it normalize disparate financial data formats. It relies on valid endpoints or accessible local files and does not handle complex authentication flows beyond token usage.", + "examples": [ + "Download transactions from the accounting API for the last month", + "Fetch the JSON financial report stored at a local file path", + "Retrieve financial metrics from an external service using an API key and date range" + ] + }, + "tags": [ + "finance", + "download", + "json", + "data-fetch", + "api", + "financial-data", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"https://api.financedata.com/v1/transactions\",\"authToken\":\"abc123token\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"queryParameters\":{\"accountId\":\"789\"}}", + "description": "Download January 2024 transactions from finance data API with authentication and account filter." + }, + { + "inputJson": "{\"dataSource\":\"/local/data/finance_report.json\"}", + "description": "Download financial report JSON from a local file." + }, + { + "inputJson": "{\"dataSource\":\"https://api.stockmetrics.com/data\",\"authToken\":\"token456\",\"queryParameters\":{\"symbol\":\"AAPL\"}}", + "description": "Download Apple stock financial metrics JSON data with API key and symbol filter." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "finance-tools.renderReport", + "description": "Renders a detailed financial report based on provided transaction data and formatting preferences. Accepts raw financial transaction records as JSON, applies filters, aggregates data, and produces a formatted report in PDF or HTML highlighting key financial metrics and summaries.", + "category": "finance-tools", + "parameters": [ + { + "name": "transactionData", + "type": "array", + "description": "Array of financial transaction objects including date, amount, category, and description for report generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of financial report to generate (e.g., 'incomeStatement', 'balanceSheet', 'cashFlow').", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the reporting period in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the reporting period in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include charts and visual summaries in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the rendered report output ('pdf' or 'html').", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., 'USD', 'EUR') for amounts displayed in the report.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered report content as a base64 encoded string along with metadata including format, size, and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate standardized financial reports from raw transaction data, such as preparing income statements or balance sheets with options for visual charts to support financial analysis and decision-making. Suitable for accounting automation, financial reviews, and audit preparation.", + "limitations": "This tool does not perform data validation or error correction on input transactions, nor does it connect to live accounting systems. It cannot modify or analyze data beyond rendering the report as specified.", + "examples": [ + "Generate an income statement PDF for Q1 2024 including charts.", + "Create a balance sheet HTML report from a list of transactions dated 2023-01-01 to 2023-12-31.", + "Render a cash flow statement PDF for last fiscal year without charts, displaying amounts in EUR." + ] + }, + "tags": [ + "finance", + "reporting", + "rendering", + "financialReports", + "pdf", + "html", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"transactionData\":[{\"date\":\"2024-01-15\",\"amount\":5000,\"category\":\"Sales\",\"description\":\"Product sales\"},{\"date\":\"2024-01-28\",\"amount\":-1200,\"category\":\"Expenses\",\"description\":\"Office rent\"}],\"reportType\":\"incomeStatement\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"includeCharts\":true,\"outputFormat\":\"pdf\",\"currency\":\"USD\"}", + "description": "Generate a Q1 2024 income statement PDF with charts from provided transactions." + }, + { + "inputJson": "{\"transactionData\":[{\"date\":\"2023-06-10\",\"amount\":-3000,\"category\":\"Payroll\",\"description\":\"June salaries\"},{\"date\":\"2023-12-31\",\"amount\":15000,\"category\":\"Capital\",\"description\":\"Equity injection\"}],\"reportType\":\"balanceSheet\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\",\"includeCharts\":false,\"outputFormat\":\"html\",\"currency\":\"USD\"}", + "description": "Create a balance sheet HTML report for the year 2023 without charts." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "finance-tools.composeWord", + "description": "This tool generates professionally composed Microsoft Word documents for financial purposes based on user inputs such as report type, financial data, and formatting preferences. It inputs structured financial content and outputs a formatted .docx Word file suitable for presentations, reports, or official documentation.", + "category": "finance-tools", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "Type of financial document to compose (e.g., 'Invoice', 'Financial Report', 'Budget Summary').", + "required": true, + "defaultValue": "" + }, + { + "name": "financialData", + "type": "object", + "description": "Structured financial data to include, such as revenue, expenses, forecasts, etc., as key-value pairs.", + "required": true, + "defaultValue": "" + }, + { + "name": "companyName", + "type": "string", + "description": "Name of the company or entity for which the document is generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "string", + "description": "Date range or period the financial data covers (e.g., 'Q1 2024', '2023').", + "required": false, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person generating or authoring the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeGraphs", + "type": "boolean", + "description": "Whether to include basic financial graphs or charts within the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "templateStyle", + "type": "string", + "description": "Optional Word template style identifier to apply consistent formatting and branding (e.g., 'Corporate Blue').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the filename and the base64-encoded Word (.docx) document content representing the composed financial report." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate professional financial documents in Word format from raw structured financial data and metadata. It helps automate report writing, invoicing, and budget documentation for accounting and financial teams.", + "limitations": "The tool cannot generate extensive narrative analysis or custom legal disclaimers. Complex layouts or highly customized branding beyond provided templates are not supported.", + "examples": [ + "Generate a quarterly financial report Word document for Q1 2024 including revenue and expense tables.", + "Create an invoice Word document for company Acme Corp with specified billing data and date range.", + "Produce a budget summary Word file including graphs using the corporate standard template." + ] + }, + "tags": [ + "finance", + "document", + "Word", + "reporting", + "automation", + "financial-report", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"Financial Report\",\"financialData\":{\"Revenue\":1200000,\"Expenses\":800000,\"NetIncome\":400000},\"companyName\":\"Acme Corp\",\"dateRange\":\"Q1 2024\",\"authorName\":\"Jane Doe\",\"includeGraphs\":true,\"templateStyle\":\"Corporate Blue\"}", + "description": "Compose a quarterly financial report for Acme Corp with revenue, expenses, net income, and styled with a corporate template including graphs." + }, + { + "inputJson": "{\"reportType\":\"Invoice\",\"financialData\":{\"InvoiceNumber\":\"12345\",\"AmountDue\":5000,\"DueDate\":\"2024-07-15\"},\"companyName\":\"Acme Corp\",\"authorName\":\"John Smith\",\"includeGraphs\":false}", + "description": "Generate a simple invoice document for Acme Corp with billing info and no graphs." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "finance-tools.formatWord", + "description": "This tool accepts a numeric value and converts it into its equivalent English words formatted for financial contexts, such as check writing or invoice generation. It processes the number input and returns a string representing the amount in words, optionally including currency and decimal formatting.", + "category": "finance-tools", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "The numeric monetary amount to convert into words, e.g., 1234.56", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency name or symbol to include (e.g., 'dollars', 'USD', 'euros'), appended after the word amount. If empty, currency is omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "useCents", + "type": "boolean", + "description": "Whether to convert the decimal part of the amount into words as cents. If false, decimals are ignored.", + "required": false, + "defaultValue": "true" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "If true, capitalize the first letter of the returned words string.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'formattedWord' with the amount expressed in words as a string, formatted for financial documents." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert monetary numeric values into their equivalent English words for financial documents such as checks, invoices, or reports requiring amounts in words. This aids clarity and reduces fraud or errors in documenting monetary amounts.", + "limitations": "Cannot convert non-numeric inputs or interpret currency beyond simple appending. Does not support international complex currency formats or languages other than English.", + "examples": [ + "Convert 1234.56 to words with 'dollars' and cents included.", + "Convert 500 to words without currency and without cents.", + "Convert 789.01 to words with currency 'USD' and capitalize the output." + ] + }, + "tags": [ + "finance", + "formatting", + "number-to-words", + "currency", + "financial-documents", + "amount-in-words" + ], + "examples": [ + { + "inputJson": "{\"amount\":1234.56,\"currency\":\"dollars\",\"useCents\":true,\"capitalize\":true}", + "description": "Convert 1234.56 with currency 'dollars', include cents, capitalize first letter." + }, + { + "inputJson": "{\"amount\":500,\"currency\":\"\",\"useCents\":false,\"capitalize\":false}", + "description": "Convert integer 500 without currency word and ignore cents." + }, + { + "inputJson": "{\"amount\":789.01,\"currency\":\"USD\",\"useCents\":true,\"capitalize\":false}", + "description": "Convert 789.01 with currency 'USD', include cents, no capitalization." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "finance-tools.buildConfig", + "description": "This tool generates a customizable financial management configuration object based on provided user preferences and business parameters. It accepts inputs such as currency, fiscal year start, tax settings, and reporting options to produce a structured config for integration into accounting software or financial tools.", + "category": "finance-tools", + "parameters": [ + { + "name": "currencyCode", + "type": "string", + "description": "ISO 4217 three-letter currency code to set as default for financial operations.", + "required": true, + "defaultValue": "" + }, + { + "name": "fiscalYearStartMonth", + "type": "number", + "description": "Month number (1-12) marking the start of the fiscal year.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTaxCalculations", + "type": "boolean", + "description": "Flag to enable or disable tax computations in the configuration.", + "required": false, + "defaultValue": "true" + }, + { + "name": "taxRate", + "type": "number", + "description": "Default tax rate percentage to apply if tax calculations are included.", + "required": false, + "defaultValue": "0" + }, + { + "name": "reportingFormats", + "type": "array", + "description": "List of report output formats to support (e.g., ['PDF','Excel','CSV']).", + "required": false, + "defaultValue": "[\"PDF\",\"Excel\"]" + }, + { + "name": "enableMultiCurrency", + "type": "boolean", + "description": "Enable support for transactions in multiple currencies.", + "required": false, + "defaultValue": "false" + }, + { + "name": "decimalPrecision", + "type": "number", + "description": "Number of decimal places for currency rounding in financial values.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "A structured financial configuration object containing all specified settings formatted for use in financial management systems." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or customize financial settings for accounting software, ERP modules, or budgeting tools, accommodating specific fiscal calendars, currency preferences, and tax regimes. It automates config creation to ensure consistency and accuracy across financial applications.", + "limitations": "This tool cannot validate tax compliance for specific jurisdictions or generate legal financial reports; it only builds configuration settings based on input parameters.", + "examples": [ + "Generate a finance config for USD currency, fiscal year starting in October, enabling tax at 7% and multi-currency support.", + "Create a basic config for EUR currency with fiscal year January and no tax calculation.", + "Build a config with custom reporting formats: JSON and CSV, precision set to 3 decimals." + ] + }, + "tags": [ + "finance", + "configuration", + "accounting", + "tax", + "currency", + "reporting", + "fiscalYear" + ], + "examples": [ + { + "inputJson": "{\"currencyCode\":\"USD\",\"fiscalYearStartMonth\":10,\"includeTaxCalculations\":true,\"taxRate\":7,\"reportingFormats\":[\"PDF\",\"Excel\"],\"enableMultiCurrency\":true,\"decimalPrecision\":2}", + "description": "Config for US dollars, fiscal year October, taxes included at 7%, multi-currency enabled, standard reports." + }, + { + "inputJson": "{\"currencyCode\":\"EUR\",\"fiscalYearStartMonth\":1,\"includeTaxCalculations\":false}", + "description": "Basic configuration using Euro with fiscal year starting in January without tax calculations." + }, + { + "inputJson": "{\"currencyCode\":\"JPY\",\"fiscalYearStartMonth\":4,\"reportingFormats\":[\"JSON\",\"CSV\"],\"decimalPrecision\":3}", + "description": "Japanese Yen config, fiscal year starts April, custom report formats JSON and CSV, with 3 decimals precision." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "finance-tools.generateLink", + "description": "Generates a secure, customizable URL link to access specific financial data or reports for authorized users. Accepts parameters defining report type, filters, expiration time, and access permissions. Produces a URL string that can be shared to grant temporary or scoped access to sensitive financial content.", + "category": "finance-tools", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "Type of financial report or data to link to (e.g., 'balanceSheet', 'expenseReport')", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs to filter or customize the data shown in the report (e.g., date range, department)", + "required": false, + "defaultValue": "{}" + }, + { + "name": "expirationMinutes", + "type": "number", + "description": "Duration in minutes after which the link expires and becomes invalid", + "required": false, + "defaultValue": "60" + }, + { + "name": "readOnly", + "type": "boolean", + "description": "Specifies if the link grants read-only access or allows modifications", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section in the generated report link", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated link URL string and metadata such as expiration time and permissions" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide users or stakeholders with secure, temporary access to specified financial reports or datasets without sharing full credentials. It helps automate generating scoped links that encapsulate filtering and permissions, improving data sharing workflows while maintaining security.", + "limitations": "This tool does not generate or render the financial reports themselves; it only creates access links. It cannot verify user identity beyond link access control or override organizational security policies.", + "examples": [ + "Generate a link to the monthly expense report filtered by department Finance, expiring in 2 hours, read-only.", + "Create a link for a balance sheet report with full access valid for 1 day including the summary.", + "Produce a temporary link to a custom report filtered by date range, allowing only viewing permissions." + ] + }, + "tags": [ + "finance", + "reporting", + "link generation", + "security", + "data sharing" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"expenseReport\",\"filters\":{\"department\":\"Finance\",\"month\":\"2024-04\"},\"expirationMinutes\":120,\"readOnly\":true,\"includeSummary\":false}", + "description": "Generate a read-only link to April 2024 finance department expense report, expires in 2 hours." + }, + { + "inputJson": "{\"reportType\":\"balanceSheet\",\"filters\":{},\"expirationMinutes\":1440,\"readOnly\":false,\"includeSummary\":true}", + "description": "Generate a balance sheet link with full access and summary, expires in 24 hours." + }, + { + "inputJson": "{\"reportType\":\"customReport\",\"filters\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\"},\"expirationMinutes\":30,\"readOnly\":true,\"includeSummary\":true}", + "description": "Generate a read-only custom report link filtered by first quarter of 2024, expires in 30 minutes, includes summary." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "finance-tools.composeMessage", + "description": "This tool generates a professionally formatted financial communication message based on input parameters such as recipient type, message purpose, financial data summary, and tone. It supports composing messages for clients, colleagues, or stakeholders conveying reports, alerts, or updates, producing a ready-to-send text message string.", + "category": "finance-tools", + "parameters": [ + { + "name": "recipientType", + "type": "string", + "description": "The category of the message recipient, e.g., client, colleague, or stakeholder.", + "required": true, + "defaultValue": "" + }, + { + "name": "messagePurpose", + "type": "string", + "description": "The purpose of the message, such as report, alert, update, or notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "financialDataSummary", + "type": "string", + "description": "A brief summary of financial data or key figures to include in the message body.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the message, e.g., formal, friendly, urgent, or neutral, which influences style and phrasing.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Whether to include specific next steps or action items in the message.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customGreeting", + "type": "string", + "description": "Optional custom greeting to start the message, overrides default based on recipient type.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed message text string ready for sending." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate clear, context-aware financial communication messages tailored to specific recipient types and purposes, ensuring professional and effective delivery of financial information.", + "limitations": "This tool generates text messages only and does not send them. It cannot replace human review for compliance or highly sensitive financial communications.", + "examples": [ + "Compose a formal update message for a client summarizing last quarter's financial performance with a friendly tone.", + "Generate an urgent alert to internal stakeholders about a budget overrun including clear action items.", + "Create a brief notification message to colleagues regarding an upcoming financial team meeting." + ] + }, + "tags": [ + "finance", + "communication", + "message", + "compose", + "financial-report", + "client-message", + "internal-communication" + ], + "examples": [ + { + "inputJson": "{\"recipientType\":\"client\",\"messagePurpose\":\"update\",\"financialDataSummary\":\"Our Q1 revenue increased by 15% compared to last year.\",\"tone\":\"friendly\",\"includeActionItems\":false}", + "description": "Compose a friendly update message for a client conveying positive financial results." + }, + { + "inputJson": "{\"recipientType\":\"stakeholder\",\"messagePurpose\":\"alert\",\"financialDataSummary\":\"Project expenses have exceeded the allocated budget by 20%.\",\"tone\":\"urgent\",\"includeActionItems\":true}", + "description": "Generate an urgent alert message to stakeholders including next steps for budget overruns." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "finance-tools.buildEndpoint", + "description": "This tool generates a customizable REST API endpoint configuration for financial management applications. It accepts input parameters defining the HTTP method, resource path, authentication requirements, and operation details, then produces structured code snippets or configuration objects to integrate the endpoint into a backend service.", + "category": "finance-tools", + "parameters": [ + { + "name": "resourcePath", + "type": "string", + "description": "The URL path for the API endpoint (e.g., /invoices).", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for the endpoint (GET, POST, PUT, DELETE).", + "required": true, + "defaultValue": "GET" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires user authentication.", + "required": false, + "defaultValue": "true" + }, + { + "name": "operationDescription", + "type": "string", + "description": "Human-readable description of the endpoint's purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "requestParameters", + "type": "object", + "description": "Definition of expected query or body parameters with types and whether required.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON schema describing the structure of the endpoint's response.", + "required": true, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated endpoint configuration including code snippets, route details, and documentation." + }, + "aiAgent": { + "useCase": "Use this tool when designing or extending financial management backend APIs to quickly generate standardized endpoint configurations based on specified resource paths, operations, and data schemas, enabling seamless integration and consistent documentation.", + "limitations": "This tool does not implement the actual backend logic or database interactions; it only generates configuration code skeletons and descriptive metadata for endpoints.", + "examples": [ + "Create a POST /invoices endpoint requiring authentication with parameters for invoice data and response schema detailing created invoice object.", + "Build a GET /transactions endpoint that returns paginated transaction records without authentication.", + "Generate a DELETE /customers/{id} endpoint with authentication and a simple success response schema." + ] + }, + "tags": [ + "finance", + "api", + "endpoint", + "rest", + "backend", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"resourcePath\":\"/invoices\",\"httpMethod\":\"POST\",\"authenticationRequired\":true,\"operationDescription\":\"Creates a new invoice record\",\"requestParameters\":{\"body\":{\"customerId\":{\"type\":\"string\",\"required\":true},\"amount\":{\"type\":\"number\",\"required\":true},\"dueDate\":{\"type\":\"string\",\"required\":false}}},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"invoiceId\":{\"type\":\"string\"},\"status\":{\"type\":\"string\"}}}}", + "description": "Generate a POST endpoint for creating invoices requiring authenticated access." + }, + { + "inputJson": "{\"resourcePath\":\"/transactions\",\"httpMethod\":\"GET\",\"authenticationRequired\":false,\"operationDescription\":\"Retrieve a list of transactions\",\"requestParameters\":{\"query\":{\"page\":{\"type\":\"number\",\"required\":false},\"pageSize\":{\"type\":\"number\",\"required\":false}}},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"transactions\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"amount\":{\"type\":\"number\"},\"date\":{\"type\":\"string\"}}}}}}}", + "description": "Generate an unauthenticated GET endpoint for fetching transactions with pagination." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "finance-tools.generateDashboard", + "description": "Generates a comprehensive financial dashboard by accepting financial transaction data, account balances, and configurable time frames. Processes input to summarize key financial metrics like income, expenses, profit/loss, and account trends, and outputs an interactive visualization-ready dashboard data structure.", + "category": "finance-tools", + "parameters": [ + { + "name": "transactions", + "type": "array", + "description": "Array of financial transaction objects including date, amount, category, and account info.", + "required": true, + "defaultValue": "" + }, + { + "name": "accountBalances", + "type": "object", + "description": "Current balances of accounts keyed by account name or ID.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date of the reporting period in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date of the reporting period in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "categories", + "type": "array", + "description": "Optional list of categories to filter transactions included in the dashboard.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "currency", + "type": "string", + "description": "ISO currency code to format monetary values (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to compute and include trend analyses over the selected period.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing summary metrics (income, expenses, net profit), categorical breakdowns, account balances, and data structured for generating charts and tables in a financial dashboard UI." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a consolidated financial overview dashboard from raw transaction and account data, allowing users to visualize financial health, categorical spending, and balance trends within a customizable date range.", + "limitations": "Does not generate visual chart images directly — only provides structured data. Cannot audit or verify transaction validity; assumes input data is accurate and well-formed.", + "examples": [ + "Generate a financial dashboard summing income and expenses last quarter.", + "Create a dashboard showing account balances and trends for specific categories over the past year.", + "Produce a summary dashboard with currency set to EUR filtered for 'Utilities' and 'Groceries'." + ] + }, + "tags": [ + "finance", + "dashboard", + "analytics", + "reporting", + "financial-management", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"transactions\":[{\"date\":\"2024-03-01\",\"amount\":-50,\"category\":\"Groceries\",\"account\":\"Checking\"},{\"date\":\"2024-03-05\",\"amount\":2000,\"category\":\"Salary\",\"account\":\"Checking\"}],\"accountBalances\":{\"Checking\":1500,\"Savings\":5000},\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"categories\":[\"Groceries\",\"Salary\"],\"currency\":\"USD\",\"includeTrends\":true}", + "description": "Generate a dashboard for March 2024 showing income and grocery expenses with balances for checking and savings accounts." + }, + { + "inputJson": "{\"transactions\":[{\"date\":\"2024-01-15\",\"amount\":-120,\"category\":\"Utilities\",\"account\":\"CreditCard\"},{\"date\":\"2024-01-30\",\"amount\":2500,\"category\":\"Salary\",\"account\":\"Checking\"}],\"accountBalances\":{\"Checking\":2000,\"CreditCard\":-300},\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"categories\":[],\"currency\":\"USD\",\"includeTrends\":false}", + "description": "Generate January 2024 dashboard including all categories without trends." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "finance-tools.createKPI", + "description": "Creates a customizable Key Performance Indicator (KPI) definition based on provided financial data inputs and KPI calculation formulas. Accepts KPI name, description, relevant financial metrics data keys, aggregation methods, and target thresholds. Outputs a structured KPI object for monitoring financial performance metrics in dashboard or reporting tools.", + "category": "finance-tools", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The unique name identifier of the KPI to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A short textual explanation of what this KPI measures.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Array of financial data metric keys that will be used as input for the KPI calculation.", + "required": true, + "defaultValue": "" + }, + { + "name": "calculationFormula", + "type": "string", + "description": "Expression or formula string describing how to compute the KPI from the metrics provided.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate data points over time (e.g., sum, average, median).", + "required": false, + "defaultValue": "average" + }, + { + "name": "targetThreshold", + "type": "number", + "description": "Optional numeric target threshold value for the KPI to aid in performance evaluation.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "string", + "description": "Time period over which the KPI calculation applies (e.g., monthly, quarterly).", + "required": false, + "defaultValue": "monthly" + } + ], + "returns": { + "type": "object", + "description": "An object representing the configured KPI including name, description, calculation details, target thresholds, and metadata for tracking its values over time." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI needs to define or register a new financial KPI for performance monitoring, budgeting, or reporting purposes. For example, creating metrics like 'Gross Margin Percentage' or 'Operating Expenses to Revenue Ratio' with custom formulas and thresholds to track financial health across periods.", + "limitations": "It does not perform the KPI calculation itself on live data; it only defines the KPI structure and parameters. Actual data fetching and KPI computation must be done by other tools or systems.", + "examples": [ + "Create a KPI named 'Net Profit Margin' that calculates net profit divided by total revenue and targets above 20%.", + "Define a quarterly KPI called 'Accounts Receivable Turnover' based on invoice data with sum aggregation.", + "Set up a KPI 'Operating Cash Flow Ratio' using operating cash flow and current liabilities metrics with an average aggregation method." + ] + }, + "tags": [ + "finance", + "KPI", + "analytics", + "financial metrics", + "reporting", + "dashboard", + "performance measurement" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"NetProfitMargin\",\"description\":\"Measures net profit as a percentage of total revenue\",\"metrics\":[\"netProfit\",\"totalRevenue\"],\"calculationFormula\":\"netProfit / totalRevenue * 100\",\"aggregationMethod\":\"average\",\"targetThreshold\":20,\"timeFrame\":\"monthly\"}", + "description": "Creates a monthly Net Profit Margin KPI with average aggregation targeting over 20%." + }, + { + "inputJson": "{\"kpiName\":\"OperatingExpensesRatio\",\"description\":\"Ratio of operating expenses to revenue\",\"metrics\":[\"operatingExpenses\",\"totalRevenue\"],\"calculationFormula\":\"operatingExpenses / totalRevenue * 100\",\"aggregationMethod\":\"sum\",\"targetThreshold\":30,\"timeFrame\":\"quarterly\"}", + "description": "Defines a quarterly KPI calculating Operating Expenses Ratio with sum aggregation and a 30% threshold." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "finance-tools.createComment", + "description": "Creates a comment or note associated with a financial record such as a transaction, invoice, or account entry. Accepts the target record identifier, comment text, author information, and optional metadata. Processes input by validating the record and storing the comment attached to it. Returns the saved comment details with timestamp and unique comment ID.", + "category": "finance-tools", + "parameters": [ + { + "name": "recordId", + "type": "string", + "description": "Unique identifier of the financial record to attach the comment to.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "Content of the comment to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name or identifier of the person creating the comment.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "Optional ISO 8601 timestamp for the comment creation time. If omitted, current time is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data related to the comment such as tags, category, or priority.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the stored comment's details including commentId, recordId, author, commentText, timestamp, and any metadata." + }, + "aiAgent": { + "useCase": "Use this tool when a user or system needs to add explanatory notes, remarks, or audit comments linked to financial records like transactions, bills, or ledger entries, supporting collaboration, auditing, or bookkeeping clarity.", + "limitations": "Does not modify or delete existing comments, nor does it validate the content beyond format. Requires the recordId to exist in the system beforehand.", + "examples": [ + "Add a comment to a transaction explaining a reimbursement.", + "Attach a note to an invoice outlining payment terms discussed.", + "Create an audit trail comment on a ledger entry for compliance." + ] + }, + "tags": [ + "finance", + "comments", + "notes", + "transactions", + "audit", + "record-management", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"recordId\": \"txn_123456\", \"commentText\": \"Reimbursement approved by manager.\", \"author\": \"jane.doe\", \"timestamp\": \"2024-04-15T09:30:00Z\", \"metadata\": {\"category\": \"approval\", \"priority\": \"high\"}}", + "description": "Adding a managerial approval comment to a transaction record with metadata on category and priority." + }, + { + "inputJson": "{\"recordId\": \"inv_987654\", \"commentText\": \"Customer requested extended payment terms.\", \"author\": \"accounting_team\"}", + "description": "Creating a comment on an invoice about customer's payment term request, with no timestamp or metadata provided." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "finance-tools.createRisk", + "description": "This tool accepts detailed parameters about a financial scenario and potential risk factors, evaluates and quantifies the associated financial risk level, and outputs a structured risk report including risk type, severity score, and mitigation suggestions. It is designed to help organizations identify and prioritize financial risks for better risk management.", + "category": "finance-tools", + "parameters": [ + { + "name": "riskType", + "type": "string", + "description": "The category of financial risk being assessed, such as credit risk, market risk, liquidity risk, operational risk, or compliance risk.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskFactors", + "type": "array", + "description": "A list of specific factors or variables that contribute to the financial risk, each described as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "exposureAmount", + "type": "number", + "description": "The financial exposure or amount at risk (e.g., amount of assets or liabilities involved) expressed in monetary units.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrameMonths", + "type": "number", + "description": "The time horizon, in months, over which the risk is evaluated.", + "required": true, + "defaultValue": "12" + }, + { + "name": "historicalDataAvailable", + "type": "boolean", + "description": "Indicates if historical financial data relevant to the risk assessment is available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "mitigationMeasures", + "type": "array", + "description": "Optional list of current or planned mitigation measures to reduce the impact or likelihood of the risk.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the assessed risk report including riskType, calculated riskSeverityScore (0-100), qualitative riskLevel (Low, Medium, High), detailed riskDescription, and recommended mitigationActions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a detailed and quantifiable financial risk assessment report based on provided risk factors, exposure, and time frame. It helps in prioritizing risks and recommending mitigation strategies to improve financial security and compliance.", + "limitations": "The tool does not perform real-time data analysis or fetch external financial data automatically. It requires accurate input data and does not replace comprehensive risk management consulting.", + "examples": [ + "Create a risk report for credit risk with specific exposure and factors for next 6 months.", + "Assess market risk for a portfolio with provided historical data and mitigation plans.", + "Generate operational risk evaluation including exposure amount and risk factors without historical data." + ] + }, + "tags": [ + "finance", + "risk-assessment", + "financial-risk", + "risk-management", + "report-generation" + ], + "examples": [ + { + "inputJson": "{\"riskType\":\"credit risk\",\"riskFactors\":[\"borrower default probability\",\"interest rate volatility\"],\"exposureAmount\":5000000,\"timeFrameMonths\":12,\"historicalDataAvailable\":true,\"mitigationMeasures\":[\"credit insurance\",\"diversification\"]}", + "description": "Credit risk evaluation for $5 million exposure over 12 months with mitigation measures." + }, + { + "inputJson": "{\"riskType\":\"market risk\",\"riskFactors\":[\"stock price fluctuations\",\"currency exchange rate\"] ,\"exposureAmount\":2000000,\"timeFrameMonths\":6,\"historicalDataAvailable\":false}", + "description": "Market risk assessment for a $2 million portfolio over 6 months without historical data." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "finance-tools.createPayment", + "description": "Creates a payment record by accepting details such as payer, payee, amount, currency, payment method, and optional metadata. It validates inputs, processes payment instructions, and returns a confirmation with payment ID, status, and timestamps suitable for financial management workflows.", + "category": "finance-tools", + "parameters": [ + { + "name": "payerId", + "type": "string", + "description": "Unique identifier of the payer initiating the payment", + "required": true, + "defaultValue": "" + }, + { + "name": "payeeId", + "type": "string", + "description": "Unique identifier of the payment recipient", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "Monetary amount to be transferred in the specified currency", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "ISO 4217 currency code representing the currency of the payment amount", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Method of payment such as 'credit_card', 'bank_transfer', 'paypal'", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentDate", + "type": "string", + "description": "ISO 8601 date string specifying when the payment should be executed (optional, defaults to current date)", + "required": false, + "defaultValue": "" + }, + { + "name": "reference", + "type": "string", + "description": "Optional payment reference or note to associate with this payment", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional key-value pairs relevant to payment processing or record-keeping", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing paymentId (string), status (e.g., 'pending', 'completed'), createdAt timestamp, payerId, payeeId, amount, currency, and optionally confirmation details if completed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a structured payment record in a financial system by specifying essential details such as parties involved, amount, and payment method. It is applicable for automating payment processing workflows, generating payment confirmations, and integrating with accounting systems.", + "limitations": "This tool does not perform real-time payment clearing or settlement with banks or third-party payment gateways. It only creates payment records and basic validation but does not handle fraud detection, currency conversion, or compliance checks.", + "examples": [ + "Create a payment of $250 USD from user A to vendor B using bank transfer.", + "Record a pending payment of 100 EUR from customer X to supplier Y scheduled for next week.", + "Generate a payment confirmation for a PayPal transfer with a reference note for invoice 12345." + ] + }, + "tags": [ + "finance", + "payment", + "create", + "financial-management", + "transaction", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"payerId\":\"user123\",\"payeeId\":\"vendor456\",\"amount\":250.00,\"currency\":\"USD\",\"paymentMethod\":\"bank_transfer\",\"paymentDate\":\"2024-06-15T00:00:00Z\",\"reference\":\"Invoice 98765\"}", + "description": "Create a scheduled bank transfer payment of 250 USD from user123 to vendor456 with an invoice reference." + }, + { + "inputJson": "{\"payerId\":\"client789\",\"payeeId\":\"service001\",\"amount\":100.50,\"currency\":\"EUR\",\"paymentMethod\":\"paypal\"}", + "description": "Create an immediate PayPal payment record of 100.50 EUR from client789 to service001." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "finance-tools.createArticle", + "description": "Generates a well-structured financial article based on user-defined topics, key points, target audience, and length preferences. Accepts input parameters outlining the topic, summary, key financial data, tone, and target reader level, and produces a formatted article draft suitable for blogs, newsletters, or reports.", + "category": "finance-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main financial topic or theme for the article (e.g., 'Cryptocurrency investment risks').", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "A list of key points or subtopics to cover in the article for detailed discussion.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "number", + "description": "Desired approximate length of the article in words (e.g., 800).", + "required": false, + "defaultValue": "800" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended reader level or type (e.g., 'beginner', 'intermediate investors', 'finance professionals').", + "required": false, + "defaultValue": "general public" + }, + { + "name": "includeDataExamples", + "type": "boolean", + "description": "Whether to include illustrative financial data or example figures in the article.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the article, e.g., 'formal', 'informal', 'educational', 'persuasive'.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "summary", + "type": "string", + "description": "Optional brief summary or abstract to open the article with.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text and metadata such as word count and sections included." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce informative, structured financial articles tailored to specific topics and audiences without manual drafting. Helpful for content creators, financial bloggers, and newsletter authors seeking content generation based on precise parameters.", + "limitations": "This tool does not perform real-time financial analysis or provide investment advice. It generates textual content based on inputs but cannot verify or produce real financial data beyond illustrative examples.", + "examples": [ + "Create an article on 'Personal budgeting techniques' with key points such as 'tracking expenses' and 'saving strategies' aimed at beginners.", + "Generate an 800-word article on 'Impact of inflation on retirement planning' for intermediate investors including data examples.", + "Draft a persuasive article on 'Benefits of index fund investing' with a formal tone and summary." + ] + }, + "tags": [ + "finance", + "content-generation", + "article-writing", + "financial-education", + "blogging" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Cryptocurrency investment risks\",\"keyPoints\":[\"volatility\",\"regulatory uncertainty\",\"security concerns\"],\"length\":1000,\"targetAudience\":\"intermediate investors\",\"includeDataExamples\":true,\"tone\":\"informative\",\"summary\":\"An overview of the main risks associated with investing in cryptocurrencies.\"}", + "description": "Generate an educational article discussing key risks in cryptocurrency for mid-level investors with examples." + }, + { + "inputJson": "{\"topic\":\"Retirement savings plans\",\"keyPoints\":[\"401(k)\",\"IRAs\",\"early withdrawal penalties\"],\"length\":750,\"targetAudience\":\"beginners\",\"includeDataExamples\":false,\"tone\":\"formal\",\"summary\":\"Basic guide to common retirement savings options.\"}", + "description": "Create a formal beginner-friendly article outlining retirement savings plans without data examples." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "human-resources.analyzeParagraph", + "description": "Analyzes a given paragraph of text related to human resources to extract key insights such as sentiment, relevance to recruitment or employee management topics, and highlights important concepts or action items. Accepts plain text input and returns a structured summary with sentiment score, topic tags, and key points extracted.", + "category": "human-resources", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The paragraph of text to analyze, typically related to HR topics such as recruitment, employee feedback, or policy descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input text. Defaults to 'en' for English to optimize analysis models.", + "required": false, + "defaultValue": "en" + }, + { + "name": "extractSentiment", + "type": "boolean", + "description": "Whether to analyze and return the sentiment score of the paragraph. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractTopics", + "type": "boolean", + "description": "Whether to identify and return topic tags relevant to HR domain keywords found in the paragraph. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractActionItems", + "type": "boolean", + "description": "Whether to identify sentences that suggest actions or decisions to be taken. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing sentiment score (range -1 to 1), an array of relevant topic tags, and key points or action items as extracted from the paragraph." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to understand and summarize textual HR content such as employee feedback, recruitment notices, or policy descriptions to assist managers or HR staff by highlighting sentiment and key topics automatically.", + "limitations": "The tool does not replace deep contextual understanding or legal advice; it may not fully capture nuances in complex or ambiguous paragraphs.", + "examples": [ + "Analyze the sentiment and main topics of an employee feedback paragraph.", + "Extract key action items from a recruitment policy text.", + "Summarize and tag a paragraph describing employee benefits." + ] + }, + "tags": [ + "human-resources", + "text-analysis", + "sentiment-analysis", + "topic-extraction", + "employee-feedback", + "recruitment", + "policy-summary" + ], + "examples": [ + { + "inputJson": "{\"text\":\"The recent recruitment drive has led to a positive increase in diversity, however, some candidates expressed concerns about the clarity of the role descriptions.\",\"language\":\"en\"}", + "description": "Analyze a paragraph on recruitment campaign results highlighting sentiment and topics." + }, + { + "inputJson": "{\"text\":\"Employee satisfaction has dropped this quarter mainly due to unclear communication from management and increased workload.\",\"extractSentiment\":true,\"extractTopics\":true,\"extractActionItems\":true}", + "description": "Analyze employee feedback paragraph for sentiment, key topics, and any action items." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "human-resources.analyzeEvent", + "description": "Analyzes an employee-related event such as recruitment drives, training sessions, or team-building activities by processing event data including attendance, feedback, and engagement metrics, producing insights on participation rates, satisfaction scores, and impact on employee performance or retention.", + "category": "human-resources", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of the event to analyze, e.g., 'recruitment', 'training', 'team-building'", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDate", + "type": "string", + "description": "Date of the event in ISO 8601 format (YYYY-MM-DD) for filtering data", + "required": false, + "defaultValue": "" + }, + { + "name": "attendeeIds", + "type": "array", + "description": "List of employee IDs who attended the event", + "required": false, + "defaultValue": "[]" + }, + { + "name": "feedbackScores", + "type": "array", + "description": "Array of numerical feedback scores submitted by attendees, on a scale from 1 to 5", + "required": false, + "defaultValue": "[]" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Optional object mapping employee IDs to performance indicators before and after the event to evaluate impact", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics including participation rate, average feedback score, and optional analysis of event impact on employee performance or retention." + }, + "aiAgent": { + "useCase": "This tool is useful when AI agents need to evaluate the effectiveness and engagement of various HR events by analyzing raw attendance and feedback data with optional performance metrics to generate actionable insights for decision making.", + "limitations": "Does not generate raw event data; requires structured input. Cannot infer causal impact beyond correlation between event participation and performance metrics.", + "examples": [ + "Analyze training event feedback for employee skill improvement.", + "Evaluate recruitment event turnout and candidate quality metrics.", + "Summarize team-building event satisfaction and its effect on employee morale." + ] + }, + "tags": [ + "analysis", + "human-resources", + "employee-engagement", + "event-management", + "feedback", + "performance" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"training\",\"eventDate\":\"2024-05-12\",\"attendeeIds\":[\"E123\",\"E456\",\"E789\"],\"feedbackScores\":[4,5,3,4],\"performanceMetrics\":{\"E123\":{\"before\":70,\"after\":85},\"E456\":{\"before\":65,\"after\":70}}}", + "description": "Analyze a training event held on May 12, 2024, including attendee feedback and performance improvements." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "human-resources.sendMessage", + "description": "Sends a formatted message to one or more employees or candidates via specified communication channels. Accepts recipient identifiers, message content, and channel preferences, then processes and dispatches messages. Returns delivery statuses for each recipient detailing success or failure.", + "category": "human-resources", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient employee or candidate IDs to whom the message will be sent", + "required": true, + "defaultValue": "[]" + }, + { + "name": "messageSubject", + "type": "string", + "description": "Subject or title of the message, used mainly for email or similar channels", + "required": false, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content body of the message to be sent to recipients", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "Preferred communication channels to use, e.g., ['email','sms','internal']", + "required": true, + "defaultValue": "[\"email\"]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message, e.g., 'normal', 'high'", + "required": false, + "defaultValue": "normal" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachment URLs or file references to include with the message", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sendTime", + "type": "string", + "description": "Scheduled time to send the message in ISO 8601 format; if omitted, sends immediately", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of recipient statuses; each status includes recipient ID, channel used, delivery status, and error message if any" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to communicate important updates, interview invitations, onboarding instructions, or policy changes to specific employees or candidates through one or multiple channels. It automates multi-channel human resources messaging with delivery feedback.", + "limitations": "This tool does not generate message content or handle recipient lookup beyond provided IDs; it cannot verify contact info accuracy nor guarantee delivery for external channels like SMS or email beyond initial dispatch confirmation.", + "examples": [ + "Send an interview invitation email to a candidate.", + "Notify selected employees via email and internal messaging about a policy update.", + "Schedule an onboarding reminder SMS with attachments to new hires." + ] + }, + "tags": [ + "human resources", + "messaging", + "employee communication", + "recruitment", + "notifications", + "multi-channel", + "scheduled sending" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"emp12345\"],\"messageSubject\":\"Interview Invitation\",\"messageBody\":\"Dear candidate, we are pleased to invite you for an interview.\",\"channels\":[\"email\"],\"priority\":\"high\"}", + "description": "Send a high priority interview invitation email to a candidate." + }, + { + "inputJson": "{\"recipients\":[\"emp54321\",\"emp67890\"],\"messageBody\":\"Please review the updated leave policy attached.\",\"channels\":[\"email\",\"internal\"],\"attachments\":[\"https://example.com/policy.pdf\"]}", + "description": "Send updated leave policy to multiple employees via email and internal messaging with attachment." + }, + { + "inputJson": "{\"recipients\":[\"emp11111\"],\"messageBody\":\"Reminder: Submit your onboarding documents.\",\"channels\":[\"sms\"],\"sendTime\":\"2024-07-01T09:00:00Z\"}", + "description": "Schedule an SMS reminder about onboarding documents to a new employee." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "human-resources.formatReport", + "description": "Formats raw human resources recruitment or employee data into structured, professional reports. Accepts input data as JSON objects representing candidate or employee details, applies specified report templates and styling, and outputs a formatted document string (e.g., HTML or Markdown) ready for distribution or printing.", + "category": "human-resources", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "JSON object containing the raw HR data to be formatted into a report, such as candidate lists or employee summaries.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Specifies the type of report to generate, e.g., 'candidateSummary', 'employeeOverview', or 'recruitmentMetrics'.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output format of the report, such as 'HTML', 'Markdown', or 'PDF'.", + "required": false, + "defaultValue": "HTML" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Indicates whether to include visual charts or graphs summarizing key HR metrics in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "theme", + "type": "string", + "description": "Optional styling theme for the report, e.g., 'corporate', 'modern', or 'simple'.", + "required": false, + "defaultValue": "simple" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the report's text content, e.g., 'en' for English, 'es' for Spanish.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report as a string in the specified format and metadata including report type and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw HR recruitment or employee data into a readable, polished report format for presentation, review, or archival. It helps automate and standardize report generation based on structured data input, ensuring consistency and style adherence.", + "limitations": "Cannot generate original HR data; requires well-structured input data. Complex customized layouts beyond predefined themes or formats are not supported.", + "examples": [ + "Generate a candidate summary report in Markdown format with charts included.", + "Format employee overview data as an HTML report using the corporate theme.", + "Produce a recruitment metrics report in Spanish as a PDF without charts." + ] + }, + "tags": [ + "human-resources", + "reporting", + "formatting", + "recruitment", + "employee-data", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"candidates\":[{\"name\":\"Alice Johnson\",\"status\":\"interviewed\",\"score\":85},{\"name\":\"Bob Lee\",\"status\":\"offer\",\"score\":90}]},\"reportType\":\"candidateSummary\",\"format\":\"Markdown\",\"includeCharts\":true,\"theme\":\"modern\",\"language\":\"en\"}", + "description": "Formats candidate interview data into a Markdown report with charts and a modern style." + }, + { + "inputJson": "{\"inputData\":{\"employees\":[{\"id\":101,\"name\":\"Carlos Gomez\",\"department\":\"Sales\",\"tenure\":5},{\"id\":102,\"name\":\"Mia Chen\",\"department\":\"Engineering\",\"tenure\":3}]},\"reportType\":\"employeeOverview\",\"format\":\"HTML\",\"includeCharts\":false,\"theme\":\"corporate\",\"language\":\"en\"}", + "description": "Generates an HTML employee overview report without charts using a corporate theme." + }, + { + "inputJson": "{\"inputData\":{\"metrics\":{\"newHires\":10,\"openPositions\":3,\"turnoverRate\":0.05}},\"reportType\":\"recruitmentMetrics\",\"format\":\"PDF\",\"includeCharts\":false,\"theme\":\"simple\",\"language\":\"es\"}", + "description": "Produces a simple PDF recruitment metrics report in Spanish without charts." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "human-resources.uploadReport", + "description": "Uploads a human resources report document (PDF, DOCX, or XLSX) containing recruitment or employee data, validates the file format and basic content structure, and stores it in a secure HR document repository. Returns an upload status and report metadata including file size, upload timestamp, and document type.", + "category": "human-resources", + "parameters": [ + { + "name": "reportFile", + "type": "string", + "description": "Base64-encoded content of the HR report file to upload", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the report file including extension (e.g., report.pdf)", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of report being uploaded (e.g., 'recruitment', 'employee-performance', 'payroll')", + "required": true, + "defaultValue": "" + }, + { + "name": "uploaderId", + "type": "string", + "description": "Identifier of the user uploading the report, for audit trail purposes", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyManager", + "type": "boolean", + "description": "If true, sends a notification to the assigned HR manager after upload", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload result status, metadata such as document ID, file size in bytes, upload timestamp, and detected/assigned report type" + }, + "aiAgent": { + "useCase": "Use this tool when an HR-related report document needs to be digitally archived in the HR system for record keeping, compliance, or further processing. It accepts encoded HR report files and ensures they are correctly stored and classified, facilitating management and retrieval by HR personnel.", + "limitations": "This tool does not parse or extract detailed data from document content beyond validating basic format; it does not analyze the report data or perform content audits.", + "examples": [ + "Upload a quarterly recruitment performance PDF report submitted by the recruiting team.", + "Save an employee performance Excel spreadsheet report to the HR document repository.", + "Upload a payroll summary document and notify the payroll manager automatically." + ] + }, + "tags": [ + "human-resources", + "upload", + "report", + "document-management", + "hr-compliance", + "file-storage" + ], + "examples": [ + { + "inputJson": "{\"reportFile\":\"VGhpcyBpcyBhIHRlc3QgZG9jdW1lbnQgY29udGVudC4=\",\"fileName\":\"Q1_recruitment_report.pdf\",\"reportType\":\"recruitment\",\"uploaderId\":\"user123\",\"notifyManager\":true}", + "description": "Upload a Q1 recruitment report PDF file, notifying the HR manager." + }, + { + "inputJson": "{\"reportFile\":\"UEsDBBQACAAIAAAAAAAAAAAAAAAAAAAAAAAFAAAAaGVsbG8udHh0SGVsbG8gd29ybGQhUEsFBgAAAAABAAEANQAAAEIAAAAAAA==\",\"fileName\":\"performance_review.xlsx\",\"reportType\":\"employee-performance\",\"uploaderId\":\"manager456\",\"notifyManager\":false}", + "description": "Upload an employee performance review Excel file without notifications." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "human-resources.renderDocument", + "description": "Renders customized HR documents such as offer letters, employment contracts, and performance review templates by populating pre-defined templates with provided employee and job-related data. Accepts template identifier and data object, returns a formatted document in HTML or PDF format ready for delivery or printing.", + "category": "human-resources", + "parameters": [ + { + "name": "templateId", + "type": "string", + "description": "Identifier of the document template to be rendered, e.g., 'offerLetter' or 'performanceReview'.", + "required": true, + "defaultValue": "" + }, + { + "name": "employeeData", + "type": "object", + "description": "Object containing employee-specific data required for template population like name, position, salary, and start date.", + "required": true, + "defaultValue": "" + }, + { + "name": "jobData", + "type": "object", + "description": "Additional job-related data such as department, manager name, or contract terms to complete the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the rendered document output. Supported formats are 'pdf' and 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "If true, appends a signature section placeholder to the document for manual or digital signing.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered document content encoded as a base64 string and metadata such as MIME type and filename." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate personalized HR documents automatically by merging dynamic employee and job data into formal, standard templates. Ideal for onboarding, contract creation, or periodic reviews to ensure consistency and reduce manual editing.", + "limitations": "This tool does not create or update templates; it assumes templates are pre-defined and cannot perform digital signing or verification of documents.", + "examples": [ + "Generate a PDF offer letter for a new employee using employee and job details.", + "Render an HTML formatted performance review template with filled-in manager comments.", + "Create an employment contract PDF with signature placeholders for remote signing." + ] + }, + "tags": [ + "human-resources", + "document", + "rendering", + "hr-documents", + "templates", + "pdf", + "html", + "employee" + ], + "examples": [ + { + "inputJson": "{\"templateId\":\"offerLetter\",\"employeeData\":{\"name\":\"Jane Smith\",\"position\":\"Software Engineer\",\"salary\":\"95000\",\"startDate\":\"2024-07-15\"},\"jobData\":{\"department\":\"Engineering\",\"manager\":\"John Doe\"},\"outputFormat\":\"pdf\",\"includeSignature\":true}", + "description": "Render a PDF offer letter for a Software Engineer including manager name and a signature placeholder." + }, + { + "inputJson": "{\"templateId\":\"performanceReview\",\"employeeData\":{\"name\":\"Mark Johnson\",\"position\":\"Product Manager\"},\"jobData\":{\"reviewPeriod\":\"Q2 2024\",\"reviewer\":\"Alice Brown\"},\"outputFormat\":\"html\",\"includeSignature\":false}", + "description": "Render an HTML performance review document with review period and reviewer details without signature placeholder." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "human-resources.draftEmail", + "description": "This tool drafts professional emails related to human resources, such as recruitment communications, interview scheduling, and employee onboarding. It accepts inputs such as recipient role, email subject, key message points, and tone preference, then generates a well-structured email draft ready for review or sending.", + "category": "human-resources", + "parameters": [ + { + "name": "recipientRole", + "type": "string", + "description": "The role or position of the email recipient (e.g., candidate, hiring manager).", + "required": true, + "defaultValue": "" + }, + { + "name": "emailSubject", + "type": "string", + "description": "The subject line of the email to capture main intent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messagePoints", + "type": "array", + "description": "A list of key points or information to include in the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the email, such as formal, friendly, or neutral.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a standard HR signature block at the end of the email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the email sender to personalize the signature block.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted email subject and body text, formatted and ready for use." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate clear, professional HR-related emails based on structured inputs such as recipient role and key message points. It streamlines communication tasks like recruitment outreach, interview invitations, and onboarding instructions by producing polished drafts that require minimal editing.", + "limitations": "This tool cannot send emails, handle replies, or customize content beyond provided inputs; it also does not access private HR databases or personal employee information.", + "examples": [ + "Draft an interview invitation email to a candidate with a friendly tone.", + "Create a formal onboarding welcome email including key points about first day procedures.", + "Prepare a reminder email for a hiring manager about upcoming interview schedules." + ] + }, + "tags": [ + "human-resources", + "email", + "drafting", + "communication", + "recruitment", + "onboarding", + "interview" + ], + "examples": [ + { + "inputJson": "{\"recipientRole\":\"candidate\",\"emailSubject\":\"Interview Invitation for Software Engineer Role\",\"messagePoints\":[\"We are pleased to invite you for an interview on March 10th.\",\"The interview will be conducted via Zoom starting at 10 AM.\",\"Please confirm your availability.\"],\"tone\":\"friendly\",\"includeSignature\":true,\"senderName\":\"Jane Doe\"}", + "description": "Drafts a friendly interview invitation email for a candidate including key logistical details." + }, + { + "inputJson": "{\"recipientRole\":\"new employee\",\"emailSubject\":\"Welcome to the Company!\",\"messagePoints\":[\"Your first day is on April 1st.\",\"Please arrive at reception by 9 AM.\",\"Bring your ID and completed forms.\"],\"tone\":\"formal\",\"includeSignature\":true,\"senderName\":\"HR Team\"}", + "description": "Creates a formal onboarding welcome email listing essential first day instructions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "human-resources.buildAPI", + "description": "Builds a customizable RESTful API for managing recruitment and employee data. Accepts API schema definitions including endpoints, data models, and access controls. Processes the input schema to generate API middleware, routes, and data validation logic. Outputs deployable API code or configuration files suitable for integration into HR management systems.", + "category": "human-resources", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "Name identifier for the API to be created, used in code namespaces and routing.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "An array defining REST endpoints including path, HTTP methods, input/output schemas, and permissions.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataModels", + "type": "object", + "description": "JSON schema definitions for all data entities involved, such as employees, candidates, job positions.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Flag indicating if the API should enforce authentication and authorization on endpoints.", + "required": false, + "defaultValue": "true" + }, + { + "name": "apiVersion", + "type": "string", + "description": "Version string for the API to manage versioning and backward compatibility.", + "required": false, + "defaultValue": "v1" + }, + { + "name": "responseFormat", + "type": "string", + "description": "Format of API responses, e.g., JSON or XML.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated API source code as strings or files, including route handlers, data validation, and documentation stubs." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a structured, customized HR API based on specific recruitment and employee data requirements. Helps automate backend creation for HR management systems, ensuring consistent data handling and access control.", + "limitations": "This tool generates initial API scaffolding but does not deploy or host the API. It requires integration with backend infrastructure and further security hardening before production use.", + "examples": [ + "Generate an API with endpoints to manage job postings and candidate profiles supporting CRUD operations.", + "Create an employee management API with authentication required and version 2.0 for integration with a new HR portal.", + "Build an API that outputs responses in XML and includes custom data validation for recruitment workflows." + ] + }, + "tags": [ + "human-resources", + "api", + "build", + "recruitment", + "employee-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"hrRecruitmentAPI\",\"endpoints\":[{\"path\":\"/candidates\",\"methods\":[\"GET\",\"POST\"],\"permissions\":[\"read_candidates\",\"write_candidates\"]},{\"path\":\"/employees\",\"methods\":[\"GET\",\"PUT\",\"DELETE\"],\"permissions\":[\"read_employees\",\"edit_employees\",\"delete_employees\"]}],\"dataModels\":{\"Candidate\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}}},\"Employee\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"department\":{\"type\":\"string\"}}}},\"authenticationRequired\":true,\"apiVersion\":\"v1\",\"responseFormat\":\"JSON\"}", + "description": "Generate a typical HR API with candidate and employee endpoints supporting authentication and JSON responses." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "human-resources.generateSentence", + "description": "Generates a natural language sentence tailored for human resources contexts such as recruitment, performance reviews, or employee engagement. Accepts input parameters defining the sentence purpose, tone, and relevant keywords, and produces a polished sentence fitting the HR scenario.", + "category": "human-resources", + "parameters": [ + { + "name": "purpose", + "type": "string", + "description": "Defines the intent of the sentence, e.g., job offer, interview invitation, performance feedback, or engagement message.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the sentence, e.g., formal, friendly, encouraging, or neutral.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keywords", + "type": "array", + "description": "List of relevant key terms or phrases to be incorporated naturally into the sentence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "employeeName", + "type": "string", + "description": "Optional name of the employee or candidate to personalize the sentence.", + "required": false, + "defaultValue": "" + }, + { + "name": "role", + "type": "string", + "description": "Optional job role or position related to the sentence context (e.g., Software Engineer).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HR-related sentence string under the key 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when generating customized and contextually appropriate sentences for various HR communications, such as recruitment emails, interview invitations, feedback notes, or motivational messages. It helps automate personalization and improve clarity and engagement in HR messaging.", + "limitations": "Cannot generate complete documents or multi-sentence paragraphs; focused on single, concise sentences. Does not handle legal or highly sensitive language nuances, or replace professional HR advice for complex cases.", + "examples": [ + "Generate a friendly interview invitation sentence including the candidate's name and position.", + "Create a formal job offer sentence focusing on the role and tone.", + "Produce an encouraging performance feedback sentence using specific keywords." + ] + }, + "tags": [ + "human-resources", + "sentence-generation", + "recruitment", + "employee-communication", + "hr-automation" + ], + "examples": [ + { + "inputJson": "{\"purpose\":\"interviewInvitation\",\"tone\":\"friendly\",\"keywords\":[\"interview\",\"schedule\"],\"employeeName\":\"Alex\",\"role\":\"Data Analyst\"}", + "description": "Generate a friendly interview invitation for candidate Alex for the Data Analyst role." + }, + { + "inputJson": "{\"purpose\":\"jobOffer\",\"tone\":\"formal\",\"keywords\":[\"offer\",\"position\"],\"employeeName\":\"Maria\",\"role\":\"Product Manager\"}", + "description": "Generate a formal job offer sentence addressing candidate Maria for the Product Manager role." + }, + { + "inputJson": "{\"purpose\":\"performanceFeedback\",\"tone\":\"encouraging\",\"keywords\":[\"performance\",\"growth\"],\"employeeName\":\"John\"}", + "description": "Generate an encouraging performance feedback sentence for employee John highlighting growth." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "human-resources.createMetric", + "description": "Creates a custom employee performance or recruitment metric by defining its name, description, calculation formula, and related data sources. Accepts parameters like metric name, formula expression referencing employee data fields, and optional filters. Returns the configured metric object ready for integration into analytics dashboards or reports.", + "category": "human-resources", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The unique name of the metric to be created (e.g., 'Average Time to Hire').", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed explanation of what the metric measures and its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "formula", + "type": "string", + "description": "A formula or expression defining how to calculate the metric using available employee or recruitment data fields (e.g., 'sum(daysToHire) / count(hiredCandidates)').", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFields", + "type": "array", + "description": "List of employee or recruitment data fields used in the formula (e.g., ['daysToHire', 'hiredCandidates']).", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filtering criteria to apply when calculating the metric, such as department or hiring date range (e.g., {\"department\":\"Engineering\"}).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created metric including its name, formula, description, data fields, filters, and a unique metric ID." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define new employee-related metrics for HR analytics, such as tracking recruitment efficiency or performance indicators, by specifying their calculation logic and relevant data sources. It enables customized insights tailored to organizational needs.", + "limitations": "This tool does not perform the actual calculation or data aggregation; it only defines the metric and its formula. Validation of formula syntax and data field existence may be limited.", + "examples": [ + "Create a metric named 'Average Time to Hire' calculated as total days from job posting to hire divided by number of hires.", + "Define a recruitment success rate metric with filters applied only to engineering department candidates.", + "Set up an employee turnover metric using resignation counts over a defined period." + ] + }, + "tags": [ + "human-resources", + "metrics", + "analytics", + "performance", + "recruitment", + "customMetrics" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"Average Time to Hire\",\"description\":\"Average number of days from job posting to candidate hire date.\",\"formula\":\"sum(daysToHire) / count(hiredCandidates)\",\"dataFields\":[\"daysToHire\",\"hiredCandidates\"],\"filters\":{\"department\":\"Engineering\"}}", + "description": "Create metric for average hiring time in Engineering department." + }, + { + "inputJson": "{\"metricName\":\"Recruitment Success Rate\",\"description\":\"Percentage of job offers accepted by candidates.\",\"formula\":\"(count(offersAccepted) / count(offersMade)) * 100\",\"dataFields\":[\"offersAccepted\",\"offersMade\"],\"filters\":{}}", + "description": "Define recruitment success rate metric across all departments." + }, + { + "inputJson": "{\"metricName\":\"Employee Turnover Rate\",\"description\":\"Percentage of employees who left the company in the last year.\",\"formula\":\"(count(resignations) / count(totalEmployees)) * 100\",\"dataFields\":[\"resignations\",\"totalEmployees\"],\"filters\":{\"year\":2023}}", + "description": "Setup turnover rate metric filtered for the year 2023." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "human-resources.createNotification", + "description": "Creates and schedules notifications for employees or candidate groups within an organization. Accepts inputs such as recipient IDs, message content, notification type, and optional scheduling details. Processes the input to generate and queue a notification that can be delivered via email, in-app messages, or SMS, returning the notification ID and status.", + "category": "human-resources", + "parameters": [ + { + "name": "recipientIds", + "type": "array", + "description": "Array of employee or candidate IDs to receive the notification", + "required": true, + "defaultValue": "[]" + }, + { + "name": "message", + "type": "string", + "description": "The content of the notification message to be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type of notification channel such as 'email', 'inApp', or 'sms'", + "required": true, + "defaultValue": "" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "ISO 8601 timestamp indicating when to send the notification; if omitted, sends immediately", + "required": false, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Optional subject line for email notifications", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification such as 'normal' or 'high'", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data or context relevant to the notification", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details about the created notification including notificationId (string) and status (string, e.g., 'queued', 'sent') indicating delivery progress" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to communicate updates, reminders, or alerts to specific employees or candidate groups in the HR system, especially for recruitment status updates, policy changes, or event invitations. It helps automate and customize internal notifications with scheduling and channel options.", + "limitations": "This tool does not handle the actual delivery failures beyond initial queuing, nor does it manage responses or read receipts. It also does not determine recipient eligibility or permissions; these must be validated separately.", + "examples": [ + "Send a reminder email to candidates about an upcoming interview slot.", + "Create an in-app notification to alert new hires about orientation schedules.", + "Schedule a high-priority SMS to employees for urgent policy updates." + ] + }, + "tags": [ + "notification", + "human-resources", + "communication", + "employee-engagement", + "recruitment" + ], + "examples": [ + { + "inputJson": "{\"recipientIds\":[\"emp123\",\"emp456\"],\"message\":\"Please complete your mandatory security training by Friday.\",\"notificationType\":\"email\",\"subject\":\"Security Training Reminder\",\"priority\":\"high\"}", + "description": "Send a high priority email notification to employees reminding them about mandatory training." + }, + { + "inputJson": "{\"recipientIds\":[\"cand789\"],\"message\":\"Your interview is scheduled for next Tuesday at 3pm.\",\"notificationType\":\"inApp\"}", + "description": "Create an immediate in-app message to a candidate about their interview schedule." + }, + { + "inputJson": "{\"recipientIds\":[\"emp234\"],\"message\":\"Office will be closed due to weather conditions.\",\"notificationType\":\"sms\",\"scheduledTime\":\"2024-06-01T08:00:00Z\",\"priority\":\"high\"}", + "description": "Schedule a high-priority SMS notification to employees announcing office closure." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "human-resources.createSentence", + "description": "Generates a coherent and contextually relevant sentence related to human resources topics such as recruitment, employee management, or workplace policies. Accepts key inputs like topic, tone, and sentence length, and outputs a well-formed sentence suitable for communication, documentation, or training purposes.", + "category": "human-resources", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The specific human resources subject to generate a sentence about, e.g., 'employee onboarding' or 'performance reviews'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the sentence, such as 'formal', 'friendly', or 'informative'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "sentenceLength", + "type": "number", + "description": "Approximate number of words for the generated sentence, to control verbosity.", + "required": false, + "defaultValue": "20" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence as a string under the 'sentence' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create clear, context-appropriate human resources sentences for documents, emails, training materials, or automated communications. It helps produce sentences matching a topic and tone, saving time and ensuring consistency in HR messaging.", + "limitations": "This tool generates single sentences only and does not produce full documents or multi-sentence paragraphs. It cannot provide legal advice or detailed policy explanations. The quality depends on input specificity and cannot replace expert HR consultants.", + "examples": [ + "Generate a formal sentence about employee performance evaluations.", + "Create a friendly sentence relating to team building activities.", + "Provide an informative sentence on workplace safety procedures." + ] + }, + "tags": [ + "human-resources", + "sentence-generation", + "text-creation", + "communication", + "hr-automation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"employee benefits\",\"tone\":\"informative\",\"sentenceLength\":18}", + "description": "Generate an informative sentence about employee benefits with medium length." + }, + { + "inputJson": "{\"topic\":\"recruitment process\",\"tone\":\"formal\",\"sentenceLength\":25}", + "description": "Create a formal and relatively detailed sentence about the recruitment process." + }, + { + "inputJson": "{\"topic\":\"workplace diversity\",\"tone\":\"friendly\",\"sentenceLength\":15}", + "description": "Produce a friendly, short sentence on workplace diversity." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Sentence", + "context": null + } + }, + { + "name": "human-resources.createService", + "description": "Creates a new HR service entry within the organization's HR infrastructure. Accepts service details such as name, description, department, and assigned manager, and registers the service for use in employee management workflows. Returns the unique service ID and confirmation of successful creation.", + "category": "human-resources", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The official name of the HR service to be created, e.g., 'Employee Onboarding'.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceDescription", + "type": "string", + "description": "A detailed description explaining the purpose and scope of the service.", + "required": true, + "defaultValue": "" + }, + { + "name": "department", + "type": "string", + "description": "The department within the organization responsible for this service, e.g., 'Human Resources'.", + "required": true, + "defaultValue": "" + }, + { + "name": "assignedManager", + "type": "string", + "description": "The name or user ID of the manager responsible for overseeing the service.", + "required": false, + "defaultValue": "" + }, + { + "name": "active", + "type": "boolean", + "description": "Flag indicating whether the service is currently active or inactive.", + "required": false, + "defaultValue": "true" + }, + { + "name": "serviceTags", + "type": "array", + "description": "An array of tags or keywords associated with the service for easier classification and searchability.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique service ID, service name, and a success status message confirming creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically add a new HR service to the organizational infrastructure, such as setting up workflows for recruitment, payroll, or employee training. This enables automation agents to manage HR services dynamically during organizational changes or process improvements.", + "limitations": "This tool does not handle employee data or process individual employee requests; it only creates the service entity in the HR system. It does not validate the existence of department or manager names beyond basic string acceptance.", + "examples": [ + "Create a new onboarding service for the HR department with a manager assigned.", + "Add a payroll management service tagging it as 'finance' and 'compliance'." + ] + }, + "tags": [ + "human-resources", + "service-management", + "create", + "HR-infrastructure", + "employee-management" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"Employee Onboarding\",\"serviceDescription\":\"Manages the onboarding of new employees including documentation and training.\",\"department\":\"Human Resources\",\"assignedManager\":\"jdoe\",\"active\":true,\"serviceTags\":[\"onboarding\",\"training\"]}", + "description": "Creating an onboarding service managed by user jdoe in HR." + }, + { + "inputJson": "{\"serviceName\":\"Payroll Management\",\"serviceDescription\":\"Handles payroll processing, tax calculation, and compliance.\",\"department\":\"Finance\",\"assignedManager\":\"asmith\",\"active\":true,\"serviceTags\":[\"payroll\",\"compliance\"]}", + "description": "Creating a finance department payroll service with compliance tags." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "human-resources.createParagraph", + "description": "Generates a customized paragraph of text for human resources documentation or communication. Accepts parameters describing the paragraph purpose, tone, target audience, and key points to include. Produces a coherent, contextually appropriate paragraph suitable for HR use cases like offer letters, policy explanations, or onboarding messages.", + "category": "human-resources", + "parameters": [ + { + "name": "purpose", + "type": "string", + "description": "The main purpose or topic of the paragraph to create, e.g., 'job offer', 'welcome message', 'policy explanation'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the paragraph, such as 'formal', 'friendly', or 'professional'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience, e.g., 'new employee', 'management team', 'all staff'.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Array of key points or facts to include or emphasize in the paragraph.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the paragraph in characters to ensure concise output.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text suitable for direct use in HR communications or documentation." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to produce clear, contextually appropriate HR-related text, such as onboarding messages, policy paragraphs, or employee communications. It ensures the tone, content focus, and length meet HR standards without manual drafting.", + "limitations": "The tool generates paragraph text but does not verify legal compliance or replace professional HR review. It relies on input quality and may produce generic phrasing if key points or purpose are vague.", + "examples": [ + "Create a welcoming paragraph for new hires with a friendly tone.", + "Generate a formal offer letter paragraph summarizing key terms.", + "Draft a concise policy explanation paragraph targeted at all employees." + ] + }, + "tags": [ + "human-resources", + "text-generation", + "communication", + "paragraph", + "documentation", + "onboarding", + "policy" + ], + "examples": [ + { + "inputJson": "{\"purpose\":\"welcome message\",\"tone\":\"friendly\",\"targetAudience\":\"new employee\",\"keyPoints\":[\"excited to have you on board\",\"support available\",\"team introductions\",\"orientation schedule\"],\"maxLength\":300}", + "description": "Generate a warm, brief welcome paragraph for new employees outlining support and orientation." + }, + { + "inputJson": "{\"purpose\":\"job offer\",\"tone\":\"formal\",\"targetAudience\":\"candidate\",\"keyPoints\":[\"position title\",\"salary offer\",\"start date\",\"contingent on background check\"],\"maxLength\":400}", + "description": "Create a formal job offer paragraph summarizing key offer details." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "human-resources.createAlert", + "description": "Creates a security alert related to human resources activities such as unauthorized access attempts, suspicious employee behavior, or policy violations. Accepts inputs including alert type, description, severity, related employee IDs, and timestamp, then processes the data to generate a standardized alert record for tracking and notification purposes.", + "category": "human-resources", + "parameters": [ + { + "name": "alertType", + "type": "string", + "description": "The category of the security alert (e.g., 'Unauthorized Access', 'Data Leak', 'Policy Violation').", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the alert and circumstances triggering it.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "The seriousness level of the alert, typically 'Low', 'Medium', or 'High'.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedEmployeeIds", + "type": "array", + "description": "List of employee IDs involved or affected by the alert.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date and time when the alert event occurred.", + "required": true, + "defaultValue": "" + }, + { + "name": "notifyManagers", + "type": "boolean", + "description": "Whether to notify HR managers immediately upon alert creation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns the created alert object including a unique alert ID, all input fields, status set to 'New', and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI system detects or receives reports of potential security incidents involving employees or HR processes and needs to create structured alerts for workflow tracking and escalation. Useful in onboarding monitoring, access violation detection, or suspicious activity reporting within HR domains.", + "limitations": "This tool does not investigate alerts, perform automated remediation, or access confidential HR records beyond IDs provided. It only creates the alert record based on inputs; follow-up actions must be handled separately.", + "examples": [ + "Create an alert for repeated unauthorized badge access attempts linked to an employee.", + "Generate a high severity alert when confidential HR data export is detected without approval.", + "Notify HR management about suspicious login times of an employee triggering a policy violation alert." + ] + }, + "tags": [ + "human-resources", + "security", + "alert", + "incident-management", + "employee-monitoring", + "notification" + ], + "examples": [ + { + "inputJson": "{\"alertType\":\"Unauthorized Access\",\"description\":\"Multiple failed login attempts detected on secure HR database.\",\"severity\":\"High\",\"relatedEmployeeIds\":[\"E12345\"],\"timestamp\":\"2024-05-20T14:35:00Z\",\"notifyManagers\":true}", + "description": "Creating a high severity alert for failed login attempts related to an employee." + }, + { + "inputJson": "{\"alertType\":\"Policy Violation\",\"description\":\"Employee accessed restricted folders outside working hours.\",\"severity\":\"Medium\",\"relatedEmployeeIds\":[\"E67890\"],\"timestamp\":\"2024-05-21T22:15:00Z\",\"notifyManagers\":false}", + "description": "Alert for policy violation due to after-hours folder access without notifying managers." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "human-resources.createOrder", + "description": "This tool creates a purchase order related to human resources needs, such as equipment, software licenses, or services required for employees. It accepts inputs detailing order specifics, vendor info, itemized list, and approval status, then generates an order record with identifiers and summary status.", + "category": "human-resources", + "parameters": [ + { + "name": "orderTitle", + "type": "string", + "description": "A descriptive title for the order to identify its purpose (e.g., 'New Hire Laptop Order').", + "required": true, + "defaultValue": "" + }, + { + "name": "requesterId", + "type": "string", + "description": "The unique identifier of the employee or manager requesting the order.", + "required": true, + "defaultValue": "" + }, + { + "name": "vendorName", + "type": "string", + "description": "Name of the vendor or supplier from whom the items or services will be purchased.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "An array of objects listing each item or service to order, including name, quantity, and estimated cost.", + "required": true, + "defaultValue": "" + }, + { + "name": "department", + "type": "string", + "description": "The department within the organization placing the order (e.g., 'IT', 'HR').", + "required": false, + "defaultValue": "" + }, + { + "name": "requiredByDate", + "type": "string", + "description": "The date by which the order items are needed (ISO 8601 format).", + "required": false, + "defaultValue": "" + }, + { + "name": "approved", + "type": "boolean", + "description": "Indicates whether the order has been approved for processing.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object including orderId, status, summary of order details, and timestamps indicating creation and last update." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a formal purchase order request tied to HR operational needs, such as provisioning equipment or services for new hires or employee upgrades. It standardizes order data capture and generates unique order identifiers for tracking and auditing.", + "limitations": "This tool does not perform financial approval workflows or vendor management beyond recording vendor name. It does not handle order fulfillment or inventory tracking.", + "examples": [ + "Create a purchase order for 10 new laptops for the IT department to support new employees.", + "Generate an order for software licenses from a specific vendor requested by the HR manager.", + "Create an order with item details and approval status true for expedited processing." + ] + }, + "tags": [ + "purchase order", + "human resources", + "procurement", + "employee equipment", + "vendor orders", + "approval" + ], + "examples": [ + { + "inputJson": "{\"orderTitle\":\"New Hire Laptop Order\",\"requesterId\":\"emp1234\",\"vendorName\":\"Tech Supplies Inc.\",\"items\":[{\"name\":\"Laptop Model X\",\"quantity\":10,\"estimatedCost\":1200}],\"department\":\"IT\",\"requiredByDate\":\"2024-07-01\",\"approved\":false}", + "description": "Order for 10 laptops for IT department to equip new employees, pending approval." + }, + { + "inputJson": "{\"orderTitle\":\"HR Software Subscription Renewal\",\"requesterId\":\"hr5678\",\"vendorName\":\"SoftSolutions Ltd.\",\"items\":[{\"name\":\"HR Management Software License\",\"quantity\":50,\"estimatedCost\":200}],\"department\":\"HR\",\"approved\":true}", + "description": "Approved order for renewing HR software licenses for 50 users." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "human-resources.createCSV", + "description": "Creates a CSV formatted string representing employee or recruitment data based on provided records and optional column specifications. Accepts structured array input of employee objects, processes to organize fields, and outputs a CSV string suitable for file export or data exchange.", + "category": "human-resources", + "parameters": [ + { + "name": "records", + "type": "array", + "description": "An array of objects representing individual employee or applicant data records to include in the CSV output.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Optional array of strings specifying which object keys to include as columns in the CSV and their order. If omitted, all keys from the first record are used.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate values in the CSV, commonly comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Flag to indicate whether to include a header row with column names as the first line in the CSV output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteValues", + "type": "boolean", + "description": "Controls whether to enclose each CSV field value in double quotes to handle commas or special characters inside values.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV as a string under the 'csvString' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured employee or applicant data into a CSV string format for reporting, exporting to spreadsheet software, or integrating with other HR systems that consume CSV data. The agent can specify which fields to include and format details like delimiter and quoting.", + "limitations": "This tool does not validate data correctness or enrich the content. It assumes well-structured input records and does not support nested objects or complex data types inside records.", + "examples": [ + "Create a CSV from a list of employee records including only name, email, and department columns.", + "Export applicant data to a CSV with semicolon delimiter and include headers.", + "Generate CSV without quoting values from recruitment data for systems that require raw formatting." + ] + }, + "tags": [ + "human-resources", + "csv", + "export", + "employee-data", + "applicant-data", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"records\":[{\"name\":\"Alice Johnson\",\"email\":\"alice.j@example.com\",\"department\":\"Engineering\"},{\"name\":\"Bob Lee\",\"email\":\"bob.l@example.com\",\"department\":\"Marketing\"}],\"columns\":[\"name\",\"email\",\"department\"],\"delimiter\":\",\",\"includeHeader\":true,\"quoteValues\":true}", + "description": "Create a CSV including name, email, and department for two employees with default comma delimiter and quoting." + }, + { + "inputJson": "{\"records\":[{\"fullName\":\"Jane Smith\",\"position\":\"Analyst\",\"hireDate\":\"2023-01-10\"},{\"fullName\":\"Tom Brown\",\"position\":\"Manager\",\"hireDate\":\"2022-11-05\"}],\"columns\":[\"fullName\",\"position\"],\"delimiter\":\";\",\"includeHeader\":true,\"quoteValues\":false}", + "description": "Generate a semicolon-delimited CSV excluding hireDate and without quoting field values." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "human-resources.createEndpoint", + "description": "Creates a REST API endpoint configuration for managing recruitment and employee data, accepting input parameters defining the endpoint path, HTTP method, and associated request/response schemas, and returns a structured endpoint definition ready for integration into HR management systems.", + "category": "human-resources", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path for the API endpoint, e.g. '/employees' or '/applications/{id}'", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method for the endpoint (GET, POST, PUT, DELETE, PATCH)", + "required": true, + "defaultValue": "" + }, + { + "name": "requestSchema", + "type": "object", + "description": "JSON schema defining the structure of the request body, if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON schema defining the structure of the response body", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether authentication is required to access this endpoint", + "required": false, + "defaultValue": "true" + }, + { + "name": "description", + "type": "string", + "description": "A textual description of the endpoint functionality", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the full endpoint configuration including path, method, schemas, and metadata" + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically define or register REST API endpoints within HR or recruitment software, specifying how endpoints handle requests and responses for employee and recruitment data. This facilitates automated API generation or documentation.", + "limitations": "This tool does not implement the endpoint logic or underlying business rules; it only defines the endpoint specification. It also does not validate JSON schemas beyond structural correctness.", + "examples": [ + "Create a POST endpoint at '/employees' to accept new employee data with defined request and response schemas.", + "Define a GET endpoint at '/applications/{id}' to retrieve recruitment application details requiring authentication.", + "Set up a DELETE endpoint at '/employees/{id}' to remove employee records with authentication enabled." + ] + }, + "tags": [ + "api", + "endpoint", + "human-resources", + "recruitment", + "employee-management", + "rest", + "hr", + "automation" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/employees\",\"httpMethod\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"position\":{\"type\":\"string\"},\"startDate\":{\"type\":\"string\",\"format\":\"date\"}},\"required\":[\"name\",\"position\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"status\":{\"type\":\"string\"}},\"required\":[\"id\",\"status\"]},\"authenticationRequired\":true,\"description\":\"Create new employee record.\"}", + "description": "Defines a POST endpoint to create new employees requiring authentication." + }, + { + "inputJson": "{\"endpointPath\":\"/applications/{id}\",\"httpMethod\":\"GET\",\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"candidateName\":{\"type\":\"string\"},\"status\":{\"type\":\"string\"}},\"required\":[\"id\",\"candidateName\",\"status\"]},\"authenticationRequired\":true,\"description\":\"Retrieve recruitment application details.\"}", + "description": "Defines a GET endpoint to retrieve an application by ID with authentication." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "human-resources.createModule", + "description": "Creates a customized human resources module code scaffold based on specified functionalities, such as recruitment management, employee data tracking, and performance evaluation. Accepts module name, desired features, and optional integration settings, then generates structured code templates ready for implementation.", + "category": "human-resources", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name identifier for the HR module to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "A list of HR functionalities to include, e.g., ['recruitment', 'employeeData', 'performanceReview'].", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Target programming language for the module code generation, e.g., 'JavaScript', 'Python'.", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "includeDatabaseIntegration", + "type": "boolean", + "description": "Determines whether to scaffold code for database integration within the module.", + "required": false, + "defaultValue": "true" + }, + { + "name": "authorizationMethod", + "type": "string", + "description": "Authentication approach to integrate in the module, options like 'OAuth', 'JWT', or 'none'.", + "required": false, + "defaultValue": "JWT" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated module code output; either 'zip' archive or 'folder'.", + "required": false, + "defaultValue": "folder" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated module code base, including file structure, main source files for the selected language, and configuration files for specified features." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to rapidly generate boilerplate or scaffold code for a human resources management module tailored to requested features such as recruitment tracking and employee performance. It helps accelerate development by providing base code structures aligned with project specs.", + "limitations": "This tool generates scaffold code only; it does not implement business logic or handle custom complex workflows. Generated code may require manual refinement and integration with existing systems.", + "examples": [ + "Create an HR module named 'TalentTracker' with recruitment and performance review features in Python, including database connectivity and JWT authorization.", + "Generate a JavaScript HR module focusing on employee data management without authorization integration.", + "Produce an HR module scaffold called 'StaffManager' in default settings with all basic features turned on." + ] + }, + "tags": [ + "human-resources", + "code-generation", + "module-scaffold", + "recruitment", + "employee-management", + "performance-review", + "automation" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"TalentTracker\",\"features\":[\"recruitment\",\"performanceReview\"],\"programmingLanguage\":\"Python\",\"includeDatabaseIntegration\":true,\"authorizationMethod\":\"JWT\",\"outputFormat\":\"zip\"}", + "description": "Generate a Python HR module named 'TalentTracker' including recruitment and performance review features with DB integration and JWT auth, output as ZIP archive." + }, + { + "inputJson": "{\"moduleName\":\"EmployeeCentral\",\"features\":[\"employeeData\"],\"programmingLanguage\":\"JavaScript\",\"includeDatabaseIntegration\":false,\"authorizationMethod\":\"none\",\"outputFormat\":\"folder\"}", + "description": "Create a JavaScript HR module named 'EmployeeCentral' for employee data management without DB or authentication, output as folder." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "human-resources.createBranch", + "description": "Creates a new organizational branch record within the human resources system. Accepts branch details including name, location, manager, and contact info, validates inputs, stores the branch data, and returns the created branch's identifier and status confirming successful creation.", + "category": "human-resources", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "The official name of the new branch to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "location", + "type": "string", + "description": "Physical address or general location of the branch office.", + "required": true, + "defaultValue": "" + }, + { + "name": "managerId", + "type": "string", + "description": "Employee ID of the branch manager responsible for operations.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactPhone", + "type": "string", + "description": "Primary phone contact number for the branch office.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactEmail", + "type": "string", + "description": "Primary email contact address for the branch office.", + "required": false, + "defaultValue": "" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag to indicate if the branch is currently active and operational.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique branchId, confirmation status, and message detailing success or failure of branch creation." + }, + "aiAgent": { + "useCase": "Use this tool when onboarding or expanding company operations to new geographical or functional locations by creating digital branch entries. It helps organize employee assignments, recruitment, and HR data by branch, enabling location-specific management and reporting.", + "limitations": "This tool does not handle employee assignment to the branch or update existing branch information. It only creates new branches. Does not validate managerId existence beyond basic formatting.", + "examples": [ + "Create a new branch named 'Downtown HQ' with location '123 Main St, Anytown', and assign manager with employee ID 'E12345'.", + "Add a branch for a new regional office including contact phone and email but no manager assigned yet.", + "Set up a new active branch called 'West Coast Office' located at '456 Elm St' with no additional contacts." + ] + }, + "tags": [ + "human-resources", + "branch-management", + "create", + "organization", + "hr-data" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"Downtown HQ\",\"location\":\"123 Main St, Anytown\",\"managerId\":\"E12345\",\"contactPhone\":\"555-1234\",\"contactEmail\":\"hq@company.com\",\"isActive\":true}", + "description": "Create a fully detailed, active branch with all contact and manager information." + }, + { + "inputJson": "{\"branchName\":\"New Regional Office\",\"location\":\"789 Pine Rd, Othertown\",\"isActive\":true}", + "description": "Create a branch with minimal required info and default active status." + }, + { + "inputJson": "{\"branchName\":\"West Coast Office\",\"location\":\"456 Elm St\",\"managerId\":\"E67890\",\"isActive\":false}", + "description": "Create a branch with a manager assigned but marked as not currently active." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "human-resources.createConfig", + "description": "Creates a customizable configuration object for human resources processes such as recruitment workflows, employee data management policies, and access controls. Accepts parameters to define the recruitment stages, required approvals, data retention periods, and notification settings. Outputs a structured configuration JSON object usable by HR systems to enforce consistent rules and processes.", + "category": "human-resources", + "parameters": [ + { + "name": "recruitmentStages", + "type": "array", + "description": "List of recruitment stages to configure in order (e.g., Application, Screening, Interview, Offer)", + "required": true, + "defaultValue": "" + }, + { + "name": "approvalLevels", + "type": "object", + "description": "Defines approval hierarchy and roles required for progressing recruitment stages, e.g., {stageName: role}", + "required": true, + "defaultValue": "" + }, + { + "name": "employeeDataRetentionDays", + "type": "number", + "description": "Number of days employee data should be retained in the system before archival or deletion", + "required": false, + "defaultValue": "3650" + }, + { + "name": "notificationEmails", + "type": "array", + "description": "List of email addresses to notify about recruitment status changes or policy updates", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableBackgroundChecks", + "type": "boolean", + "description": "Whether to require background checks during recruitment process", + "required": false, + "defaultValue": "true" + }, + { + "name": "configName", + "type": "string", + "description": "Name identifier for the configuration, for organizational or versioning purposes", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured HR configuration object encapsulating recruitment stages, approvals, data retention, notifications, and policies as specified by input parameters." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to set up or update human resources process configurations programmatically, such as defining recruitment workflows, approval rules, or data retention policies in HR management systems. It helps ensure consistent and automated HR policy enforcement across an organization.", + "limitations": "This tool does not connect to live HR systems or apply configurations directly; it only produces the configuration object. Integration and enforcement must be handled by external systems.", + "examples": [ + "Create a recruitment config with stages Application, Screening, Interview, Offer, and approval roles for each.", + "Generate HR policy config including data retention of 3 years and notification emails to HR managers.", + "Set up recruitment config enabling background checks and multiple approval levels." + ] + }, + "tags": [ + "human-resources", + "configuration", + "recruitment", + "employee-management", + "policy", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"recruitmentStages\":[\"Application\",\"Screening\",\"Interview\",\"Offer\"],\"approvalLevels\":{\"Screening\":\"Recruiter\",\"Interview\":\"HiringManager\",\"Offer\":\"HRDirector\"},\"employeeDataRetentionDays\":1095,\"notificationEmails\":[\"hr@example.com\",\"manager@example.com\"],\"enableBackgroundChecks\":true,\"configName\":\"StandardRecruitmentConfig\"}", + "description": "Standard recruitment workflow config with 4 stages, assigned approval roles, 3-year data retention, notifications to HR and manager, and background checks enabled." + }, + { + "inputJson": "{\"recruitmentStages\":[\"Application\",\"Interview\"],\"approvalLevels\":{\"Interview\":\"HRLead\"},\"employeeDataRetentionDays\":1825,\"notificationEmails\":[],\"enableBackgroundChecks\":false,\"configName\":\"SimplifiedInterviewConfig\"}", + "description": "Simplified recruitment config with only Application and Interview stages, single approval role, 5-year data retention, no notifications, and no background checks." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "translation.analyzeLink", + "description": "Analyzes the textual content of the webpage at the given URL to provide language detection, translation suggestions, and content complexity assessment. Accepts a URL as input, fetches and processes the page content, then outputs detected language, suggested target languages for translation, readability scores, and a summary of main topics found.", + "category": "translation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "Webpage URL to analyze for translation-related insights.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "List of desired target language codes for translation suggestions (e.g., ['fr','es']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a short summary of the content topics in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing detected source language code, recommended target languages, readability metrics (e.g., Flesch score), and optionally a content summary." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the language characteristics and translation suitability of a webpage's content. It helps determine the source language, assess how difficult the text is to translate or read, and suggests appropriate target languages for translation. Useful in multilingual content management and localization planning.", + "limitations": "Cannot translate the full content; it only analyzes and suggests languages. Accuracy depends on ability to fetch and parse the webpage HTML. Complex dynamic sites may yield incomplete content. Does not handle media or non-text content.", + "examples": [ + "Analyze the main language and readability of 'https://example.com/article' and suggest translations.", + "Check a URL to find out what language the content is and a summary of its topics.", + "Get translation target language recommendations for a given webpage URL." + ] + }, + "tags": [ + "translation", + "language-detection", + "content-analysis", + "webpage", + "localization", + "readability" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://en.wikipedia.org/wiki/Artificial_intelligence\",\"targetLanguages\":[\"es\",\"fr\"],\"includeSummary\":true}", + "description": "Analyzes a Wikipedia page on AI to detect source language, suggest Spanish and French as target languages, and include a summary of main topics." + }, + { + "inputJson": "{\"url\":\"https://www.lemonde.fr\",\"includeSummary\":false}", + "description": "Analyzes the French news homepage URL to detect the language and assess content readability without a summary." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "translation.analyzeComment", + "description": "Analyzes a text comment in any language to detect its language, identify the sentiment, and extract key phrases or topics. Accepts a text comment string and optional source language hint; returns analysis including detected language, sentiment score/classification, and extracted key phrases for deeper understanding or translation refinement.", + "category": "translation", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to analyze. Required for processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Optional ISO language code hint for the comment's language, improves accuracy if known.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the comment. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to extract key phrases or topics from the comment. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the detected language code, sentiment analysis result (score and label), and an array of extracted key phrases from the comment text." + }, + "aiAgent": { + "useCase": "Use this tool when processing multilingual user comments to understand their language, sentiment (positive, neutral, negative), and main topics or key phrases. This helps in refining translations, content moderation, or summarizing feedback across languages.", + "limitations": "Cannot perform full translation or context disambiguation. Sentiment analysis may be less accurate for very short or slang-filled comments. Key phrase extraction may not capture nuanced meanings or sarcasm.", + "examples": [ + "Analyze the sentiment and language of this user feedback comment.", + "Identify the main topics and language used in this social media comment.", + "Detect language and sentiment in a product review comment, providing key phrases for indexing." + ] + }, + "tags": [ + "translation", + "analysis", + "sentiment", + "language-detection", + "key-phrase-extraction", + "comment", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I absolutely love the new update! The app runs so much faster now.\",\"includeSentiment\":true,\"includeKeyPhrases\":true}", + "description": "Analyzes a positive comment about an app update to detect English language, positive sentiment and key phrases like 'new update', 'runs faster'." + }, + { + "inputJson": "{\"commentText\":\"El servicio es muy lento y poco confiable.\",\"sourceLanguage\":\"es\",\"includeSentiment\":true}", + "description": "Analyzes a Spanish language negative comment about a service's slowness and unreliability, detecting Spanish language and negative sentiment." + }, + { + "inputJson": "{\"commentText\":\"Could you please add support for more languages?\",\"includeSentiment\":true,\"includeKeyPhrases\":false}", + "description": "Analyzes an English language comment requesting new feature support, detecting language and sentiment but skipping key phrase extraction." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "translation.downloadImage", + "description": "This tool downloads an image of translated text. It accepts source text, target language, and image style preferences, then translates the text and renders it onto an image file which can be downloaded in common formats like PNG or JPEG.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text content to be translated and displayed on the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The ISO code of the language to translate the text into (e.g., 'es' for Spanish).", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "The desired image file format for download, such as 'png' or 'jpeg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size to use for the translated text in the image, in points.", + "required": false, + "defaultValue": "24" + }, + { + "name": "fontColor", + "type": "string", + "description": "Color code or name to render the text in the image.", + "required": false, + "defaultValue": "black" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the image.", + "required": false, + "defaultValue": "white" + }, + { + "name": "imageWidth", + "type": "number", + "description": "Width of the generated image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "imageHeight", + "type": "number", + "description": "Height of the generated image in pixels.", + "required": false, + "defaultValue": "400" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloadable image as a base64-encoded string and metadata about the image format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate and download an image file containing text translated into a target language, useful for creating localized visual content, social media graphics, or presentation materials. It combines translation and image rendering functions into one step.", + "limitations": "This tool cannot perform complex image editing or handle multipart document translation. It only supports text-to-image rendering with simple formatting and common image formats.", + "examples": [ + "Translate 'Hello, world!' into Spanish and download as PNG.", + "Create a JPEG image with French translation of a short text, using custom font size and colors.", + "Generate an image of German translated text with default styling and size." + ] + }, + "tags": [ + "translation", + "image", + "download", + "text-to-image", + "localization", + "media" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Welcome to our website\",\"targetLanguage\":\"fr\",\"imageFormat\":\"png\",\"fontSize\":30,\"fontColor\":\"blue\",\"backgroundColor\":\"white\",\"imageWidth\":600,\"imageHeight\":200}", + "description": "Generate a blue French translation text image in PNG format sized 600x200." + }, + { + "inputJson": "{\"sourceText\":\"Happy Birthday!\",\"targetLanguage\":\"es\",\"imageFormat\":\"jpeg\"}", + "description": "Create a JPEG image with default style showing the Spanish translation of a birthday wish." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "translation.uploadJSON", + "description": "Uploads a JSON file containing text entries to be translated. The tool accepts JSON structured with key-value pairs where values are the original texts. It processes the JSON by validating its structure and stores it for subsequent translation requests. It outputs a confirmation with metadata including entry count and upload status.", + "category": "translation", + "parameters": [ + { + "name": "jsonContent", + "type": "string", + "description": "The JSON string containing key-value pairs of texts to upload for translation.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the source text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "An optional identifier to associate the uploaded JSON with a translation project.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite existing entries with the same keys in the project (true) or ignore duplicates (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing uploadStatus (success/failure), entriesCount (number of entries uploaded), and message (additional info)." + }, + "aiAgent": { + "useCase": "Use this tool when you have a set of source texts in JSON format that you want to prepare and upload into the translation workflow system before initiating translations. It's ideal for batch uploading multiple keys and texts simultaneously, setting up projects, and managing source language context.", + "limitations": "This tool only uploads and validates the structure of JSON text entries; it does not perform translations itself or handle translation output.", + "examples": [ + "Upload a JSON with English texts for project 'WebsiteLocalization'.", + "Upload a JSON with source texts specifying source language as French for targeted translations.", + "Upload a JSON replacing existing entries in a given translation project." + ] + }, + "tags": [ + "translation", + "upload", + "JSON", + "sourceText", + "localization", + "batchProcessing" + ], + "examples": [ + { + "inputJson": "{\"jsonContent\":\"{\\\"title\\\": \\\"Welcome\\\", \\\"description\\\": \\\"This is the homepage\\\"}\",\"sourceLanguage\":\"en\",\"projectId\":\"site123\",\"overwriteExisting\":true}", + "description": "Upload English JSON source texts for localization project with overwrite enabled." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "translation.composeMessage", + "description": "This tool composes a message in a target language based on the provided content, language style, and context. It accepts source language text or topic, target language code, desired tone and formality, and outputs a composed translated message suitable for communication purposes.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text or main content to translate and compose into the target language.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code (ISO 639-1) into which the message should be composed, e.g., 'en' for English, 'fr' for French.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the message such as formal, informal, friendly, professional.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "formalityLevel", + "type": "string", + "description": "Degree of formality to apply to the message, e.g., 'high', 'medium', 'low'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "contextDescription", + "type": "string", + "description": "Optional description of the communication context or audience to tailor the message appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of the composed message in characters.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed message text in the target language plus metadata such as detected tone and language." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a natural, context-aware translated message adapted for specific tone and formality. Ideal for creating communications like emails, announcements, or conversational text in a target language from source content.", + "limitations": "This tool does not perform extensive cultural localization or guarantee idiomatic perfection for highly nuanced texts. It relies on input quality and may not handle domain-specific jargon without prior context.", + "examples": [ + "Compose a formal French message from English business email text.", + "Generate an informal Spanish invitation message based on event details.", + "Translate and compose a polite Japanese customer service response from English input." + ] + }, + "tags": [ + "translation", + "message composition", + "multilingual communication", + "tone adaptation", + "formality" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Thank you for your prompt response. I will review the documents and get back to you shortly.\",\"targetLanguage\":\"fr\",\"tone\":\"formal\",\"formalityLevel\":\"high\",\"contextDescription\":\"Business email to client\"}", + "description": "Compose a formal French business email message from English text." + }, + { + "inputJson": "{\"sourceText\":\"You're invited to our weekly meetup! Hope to see you there.\",\"targetLanguage\":\"es\",\"tone\":\"informal\",\"formalityLevel\":\"low\"}", + "description": "Create an informal Spanish invitation message from English text." + }, + { + "inputJson": "{\"sourceText\":\"We apologize for the inconvenience and appreciate your patience.\",\"targetLanguage\":\"ja\",\"tone\":\"polite\",\"contextDescription\":\"Customer service response.\"}", + "description": "Generate a polite Japanese customer service message from English input." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "translation.draftReport", + "description": "This tool accepts a draft report written in one language and translates it into a specified target language while preserving the technical and formal tone required for professional reports. It processes raw text content along with optional context and outputs a translated and formatted report text.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the input report's current language (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code for the desired output translation (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "reportText", + "type": "string", + "description": "The full textual content of the draft report to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional additional information providing context or domain-specific terminology to improve translation accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatOutput", + "type": "boolean", + "description": "Whether to maintain or convert formatting styles like headings, bullet points, and numbered lists in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated report as a string under the 'translatedReport' key, preserving the original structure and tone." + }, + "aiAgent": { + "useCase": "Use this tool when needing to translate draft reports or professional documents from one language to another, especially when maintaining the report's formal tone and formatting is important. It is useful for multilingual business, technical, or research reports requiring accurate and professional translations.", + "limitations": "Cannot verify factual accuracy of content or translate highly idiomatic or culturally nuanced phrases perfectly. Formatting conversion may be imperfect if the input uses advanced or proprietary styles.", + "examples": [ + "Translate a quarterly financial report from English to Spanish while preserving bullet points and tables.", + "Convert a technical project status report from German to English including domain-specific terminology provided in context.", + "Translate a marketing analysis report from French to Chinese without altering the original document structure." + ] + }, + "tags": [ + "translation", + "documents", + "report", + "multilingual", + "professional", + "formal", + "business" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"reportText\":\"This is the quarterly progress report highlighting key milestones achieved.\",\"context\":\"project management, quarterly report\",\"formatOutput\":true}", + "description": "Translate a short English progress report into Spanish with formatting preserved." + }, + { + "inputJson": "{\"sourceLanguage\":\"de\",\"targetLanguage\":\"en\",\"reportText\":\"Technischer Statusbericht mit aktuellen Problemstellungen und Lösungen.\",\"context\":\"technical report, IT infrastructure\",\"formatOutput\":false}", + "description": "Translate a German technical status report into English without converting formatting." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "translation.composeText", + "description": "Composes a coherent and fluent paragraph or short text in a specified target language based on an input prompt in any source language. It accepts input text as a prompt and target language code, then performs contextual translation and creative text generation to produce natural, human-like translated content.", + "category": "translation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The source text prompt to be translated and expanded upon, can be a phrase, sentence, or paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code (ISO 639-1) for the language into which the text should be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length in words of the composed translated text output.", + "required": false, + "defaultValue": "100" + }, + { + "name": "formalTone", + "type": "boolean", + "description": "Whether the composed text should use a formal tone (true) or informal tone (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed translated text string and the language code of the output." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate fluent, contextually appropriate paragraphs or short texts translated into a target language based on an input prompt, such as writing marketing copy, instructions, or creative content in multiple languages. It can blend translation and natural language generation to create coherent, natural outputs.", + "limitations": "This tool cannot perform literal word-for-word translation and might generate creative expansions rather than strict translations. It is not suitable for scientific or legal document translation requiring high precision and does not handle audio or non-text inputs.", + "examples": [ + "Translate and compose a promotional paragraph from English to Spanish based on a short product description.", + "Generate a polite invitation text in French using the given English prompt.", + "Create a friendly welcome message in Japanese from a casual English greeting prompt." + ] + }, + "tags": [ + "translation", + "text generation", + "natural language generation", + "multilingual", + "content creation", + "language", + "creative writing" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Our new smartphone offers unprecedented battery life and performance.\",\"targetLanguage\":\"es\",\"maxLength\":80,\"formalTone\":true}", + "description": "Compose a formal promotional paragraph in Spanish from an English product description." + }, + { + "inputJson": "{\"inputText\":\"Join us for the annual community picnic this Saturday!\",\"targetLanguage\":\"fr\",\"maxLength\":50,\"formalTone\":false}", + "description": "Generate an informal invitation message in French from an English prompt." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "translation.buildConfig", + "description": "Constructs a configuration object that defines parameters and preferences for translation tasks. Accepts inputs such as source and target languages, formal or informal tone preferences, domain-specific glossary terms, and context settings. Outputs a structured JSON config to be used by translation engines for consistent and customized translation behavior.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original text to be translated (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code for the translation output (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "formalTone", + "type": "boolean", + "description": "Specifies whether translations should use a formal tone (true) or informal tone (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "domainGlossary", + "type": "object", + "description": "A mapping of terms with preferred translations specific to a domain or context to ensure consistent terminology.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Determines whether additional contextual metadata should be included to aid translation accuracy.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSentenceLength", + "type": "number", + "description": "The maximum allowed sentence length for translation segments; longer sentences may be split.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the finalized translation configuration, ready to be supplied to translation APIs or engines." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare a detailed and structured configuration for executing translation tasks. It standardizes input parameters like languages, tone preferences, and domain-specific terminology to ensure consistent and context-aware translations across multiple documents or sessions.", + "limitations": "This tool does not perform actual translations or language detection. It only builds configuration objects and requires downstream translation services to process the content.", + "examples": [ + "Prepare a translation config for converting English to Spanish with formal tone and custom medical terminology.", + "Build translation settings for informal chat translations from German to English including context.", + "Generate a config to translate a technical document from French to Japanese using a domain-specific glossary." + ] + }, + "tags": [ + "translation", + "configuration", + "language", + "localization", + "i18n", + "nlp", + "settings" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"formalTone\":true,\"domainGlossary\":{\"heart\":\"corazón\",\"blood pressure\":\"presión arterial\"},\"includeContext\":true,\"maxSentenceLength\":120}", + "description": "Build config for English to Spanish translation with formal tone and a medical glossary." + }, + { + "inputJson": "{\"sourceLanguage\":\"de\",\"targetLanguage\":\"en\",\"formalTone\":false,\"includeContext\":false}", + "description": "Configuration for German to English translation with informal tone and no context included." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "translation.buildEndpoint", + "description": "Generates source code for a language translation API endpoint based on specified programming language, framework, and supported source and target languages. Accepts configuration parameters and outputs a code snippet implementing a translation endpoint that can integrate with translation services or models.", + "category": "translation", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language to generate the endpoint code in (e.g., Python, Node.js).", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The web framework to use for the endpoint (e.g., Flask, Express).", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguages", + "type": "array", + "description": "List of source language codes supported by the endpoint (e.g., ['en','fr']).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "List of target language codes supported by the endpoint (e.g., ['de','es']).", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointPath", + "type": "string", + "description": "The URL path of the translation endpoint (e.g., /translate).", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires authentication.", + "required": false, + "defaultValue": "false" + }, + { + "name": "translationService", + "type": "string", + "description": "External translation service or model integration identifier (e.g., 'GoogleTranslate', 'CustomModel').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code as a string and metadata about the endpoint." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate boilerplate code for a language translation API endpoint tailored to specific technology stacks, supporting multiple source and target languages. This aids rapid prototyping or deployment of translation services.", + "limitations": "This tool does not implement actual translation logic or handle deployment, security beyond basic authentication, or complex middleware integration. It produces sample code that may require adjustments to integrate with real translation APIs or services.", + "examples": [ + "Generate an Express.js endpoint supporting English and French as source languages and Spanish and German as target languages.", + "Build a Flask endpoint in Python that uses Google Translate API and requires authentication.", + "Create a Node.js endpoint with no authentication serving Chinese to English translations." + ] + }, + "tags": [ + "translation", + "API", + "code-generation", + "endpoint", + "programming", + "localization" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"Python\",\"framework\":\"Flask\",\"sourceLanguages\":[\"en\",\"fr\"],\"targetLanguages\":[\"de\",\"es\"],\"endpointPath\":\"/translate\",\"authenticationRequired\":true,\"translationService\":\"GoogleTranslate\"}", + "description": "Generate a Flask-based Python translation endpoint supporting English and French to German and Spanish, requiring authentication and using Google Translate API." + }, + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"framework\":\"Express\",\"sourceLanguages\":[\"en\"],\"targetLanguages\":[\"zh\"],\"endpointPath\":\"/api/translate\",\"authenticationRequired\":false,\"translationService\":\"CustomModel\"}", + "description": "Build an Express.js translation endpoint from English to Chinese without authentication using a custom translation model." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "translation.generateKPI", + "description": "Generates key performance indicators (KPIs) related to the quality and efficiency of a translation process. Accepts detailed input about source and target languages, translation content metrics, time taken, and error counts. Processes these inputs to calculate metrics such as translation speed, accuracy rate, and error frequency. Outputs a structured summary of KPIs for translation project analytics.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The source language code of the text being translated (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code into which the text is translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "totalWords", + "type": "number", + "description": "The total number of words in the source text.", + "required": true, + "defaultValue": "" + }, + { + "name": "translatedWords", + "type": "number", + "description": "The number of words actually translated in the target language.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeTakenSeconds", + "type": "number", + "description": "Total time taken in seconds to complete the translation.", + "required": true, + "defaultValue": "" + }, + { + "name": "errorsCount", + "type": "number", + "description": "The count of identified translation errors or quality issues.", + "required": false, + "defaultValue": "0" + }, + { + "name": "reviewedSegments", + "type": "number", + "description": "Number of segments reviewed for quality assurance.", + "required": false, + "defaultValue": "0" + }, + { + "name": "approvedSegments", + "type": "number", + "description": "Number of segments approved after review.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing computed translation KPIs such as words per minute, accuracy rate, error rate, and approval rate." + }, + "aiAgent": { + "useCase": "This tool is used when analyzing the performance and quality of translation projects, especially to generate quantitative metrics from raw translation data for project reporting, optimization, or quality assessment. AI agents should use this tool when tasked with producing meaningful KPIs from translation metadata.", + "limitations": "Cannot perform actual translation or review content quality beyond provided error counts; relies on supplied numeric inputs and does not validate linguistic accuracy independently.", + "examples": [ + "Generate KPIs from translation project data including languages, word counts, translation duration, and error reports.", + "Calculate translation speed and accuracy rate after a batch translation is complete.", + "Produce a summarized KPI report for a translation project to assess efficiency and quality performance." + ] + }, + "tags": [ + "translation", + "analytics", + "KPI", + "performance", + "quality", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"totalWords\":1200,\"translatedWords\":1180,\"timeTakenSeconds\":1800,\"errorsCount\":5,\"reviewedSegments\":100,\"approvedSegments\":95}", + "description": "Calculating KPIs for an English to German translation project where 1200 words were translated with some minor errors and a quality review." + }, + { + "inputJson": "{\"sourceLanguage\":\"fr\",\"targetLanguage\":\"es\",\"totalWords\":5000,\"translatedWords\":5000,\"timeTakenSeconds\":7200,\"errorsCount\":10,\"reviewedSegments\":200,\"approvedSegments\":190}", + "description": "Generating KPIs for a large French to Spanish translation with extensive review and approval data." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "translation.generateArticle", + "description": "Generates a fully translated article from a given source text in one language into a target language, preserving formatting such as headings and paragraphs. Accepts source text, source language code, and target language code, producing a translated article string suitable for publishing or review.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The full text of the article to be translated, including paragraphs and headings as needed.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The ISO language code of the source text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The ISO language code into which the article should be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Whether to attempt to preserve original formatting such as paragraphs and headings in the translated output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formalTone", + "type": "boolean", + "description": "If true, the translation will use a formal tone; otherwise, it may use a neutral or informal tone as appropriate.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the translated article text as a string under the property 'translatedArticle'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to translate entire articles or long-form text documents from one language to another while preserving structure and context, such as for publishing multilingual content or preparing documents for international audiences. It is ideal for generating readable, natural language translations that reflect article formatting.", + "limitations": "This tool may not perfectly handle specialized jargon or highly technical content without domain adaptation. Formatting preservation has limits and complex layouts (tables, images) are not supported. Tone adjustment is basic and may not suit all style guides.", + "examples": [ + "Translate a news article from English to Spanish preserving headings and paragraphs.", + "Convert a blog post from French to German using a formal tone.", + "Generate a Japanese version of a product description originally written in English." + ] + }, + "tags": [ + "translation", + "article", + "language", + "text-generation", + "multilingual", + "document" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"# Climate Change Effects\\nClimate change affects ecosystems worldwide.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"preserveFormatting\":true,\"formalTone\":false}", + "description": "Translate a short article section from English to Spanish, preserving formatting." + }, + { + "inputJson": "{\"sourceText\":\"Technische Dokumentation zur Verwendung des Produkts.\",\"sourceLanguage\":\"de\",\"targetLanguage\":\"en\",\"preserveFormatting\":true,\"formalTone\":true}", + "description": "Translate a technical product documentation article from German to English with a formal tone." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "translation.generateLink", + "description": "Generates a sharable URL link that directs to an online translation page for a given text, pre-filled with the source text and selected source and target languages. Accepts input text and language codes, processes URL encoding and parameter insertion, and outputs a ready-to-use translation link.", + "category": "translation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The source text to be translated and included in the generated link.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the input text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code into which the text should be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "service", + "type": "string", + "description": "The translation service to generate the link for (e.g., 'google', 'deepl').", + "required": false, + "defaultValue": "google" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated translation URL link as a string property 'url'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a direct link to an online translation service for a specific piece of text and language pair, facilitating sharing or embedding translation requests in links. Ideal for integrating translation linking in interfaces or chatbots.", + "limitations": "Cannot perform actual translation or verify text accuracy; limited to generating links compatible with supported translation services only.", + "examples": [ + "Generate a link to translate 'Hello world' from English to Spanish via Google Translate.", + "Create a translation link for 'Bonjour' from French to English using DeepL.", + "Provide a sharable link for translating 'Good morning' from English to Japanese using the default service." + ] + }, + "tags": [ + "translation", + "link-generation", + "URL", + "language", + "share", + "localization" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello world\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"service\":\"google\"}", + "description": "Generate Google Translate link for English to Spanish translation." + }, + { + "inputJson": "{\"text\":\"Bonjour\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"en\",\"service\":\"deepl\"}", + "description": "Generate DeepL translation link from French to English." + }, + { + "inputJson": "{\"text\":\"Good morning\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"ja\"}", + "description": "Generate default (Google) translation link from English to Japanese." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "translation.createComment", + "description": "Creates a translated comment string for user communication by accepting an original comment text, source language code, target language code, and optional tone or formality settings, returning the localized translated comment text suitable for UI display or documentation.", + "category": "translation", + "parameters": [ + { + "name": "originalText", + "type": "string", + "description": "The original comment text to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code into which the comment should be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Optional parameter defining the tone of the translated comment (e.g., informal, formal).", + "required": false, + "defaultValue": "\"formal\"" + }, + { + "name": "context", + "type": "string", + "description": "Optional context or domain to improve translation accuracy (e.g., 'software documentation').", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated comment text and metadata, such as target language and tone." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate translated comments or notes for user interfaces, documentation, or communication where preserving the tone and clarity in the target language is critical. It helps localize comments for diverse users or stakeholders.", + "limitations": "It cannot interpret ambiguous or idiomatic expressions perfectly and may require post-editing. It does not generate original commentary but only translates input text.", + "examples": [ + "Translate a code comment from English to Spanish with a formal tone.", + "Generate a user-facing informational comment in French from an English source.", + "Create a translated note for software documentation from English to Japanese with an informal tone." + ] + }, + "tags": [ + "translation", + "comment", + "localization", + "text generation", + "multilingual" + ], + "examples": [ + { + "inputJson": "{\"originalText\":\"This function initializes the user session.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"tone\":\"formal\"}", + "description": "Translate an English software comment into formal Spanish." + }, + { + "inputJson": "{\"originalText\":\"Make sure to update the config before running.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"tone\":\"informal\"}", + "description": "Translate an English comment into French with an informal tone." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "translation.createVideo", + "description": "This tool accepts a source text transcript and translates it into a target language, then generates a video with the translated text displayed as subtitles or voice-over. It processes the input text, translates it using machine translation, and creates a video file embedding the translated text in subtitle format or synthesized speech audio. Output is a video file URL or binary.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text to translate and embed into the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the source text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code for translation output (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "videoTemplateUrl", + "type": "string", + "description": "URL of the base video or video template where subtitles or voice-over will be applied.", + "required": true, + "defaultValue": "" + }, + { + "name": "useVoiceOver", + "type": "boolean", + "description": "If true, generate synthesized speech voice-over in the target language instead of subtitles.", + "required": false, + "defaultValue": "false" + }, + { + "name": "subtitleStyle", + "type": "object", + "description": "An object to configure subtitle font, size, color, and position.", + "required": false, + "defaultValue": "" + }, + { + "name": "voiceParameters", + "type": "object", + "description": "Parameters for voice synthesis such as voice type, speed, and pitch when useVoiceOver is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL or location of the generated video file with translated content embedded." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create multilingual video content from text sources, allowing users to reach audiences in different languages by generating videos with translated subtitles or voice-over. Ideal for educational, marketing, or informational videos requiring translation and video creation in an automated workflow.", + "limitations": "Does not support live video translation; video duration must match source text length reasonably. Quality depends on machine translation and TTS capabilities; complex video editing or animations beyond subtitles/voice-over are not handled.", + "examples": [ + "Translate a tutorial video script from English to Spanish, generating a subtitled video.", + "Create a French version of a corporate presentation video using voice-over synthesis.", + "Generate a Japanese training video with translated subtitles from an English transcript." + ] + }, + "tags": [ + "translation", + "video", + "media", + "multilingual", + "subtitles", + "voice-over", + "tts" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Welcome to our tutorial on baking bread.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"videoTemplateUrl\":\"https://example.com/videos/tutorial_base.mp4\",\"useVoiceOver\":false,\"subtitleStyle\":{\"font\":\"Arial\",\"size\":24,\"color\":\"white\",\"position\":\"bottom\"}}", + "description": "Generate a Spanish subtitled video from an English cooking tutorial text." + }, + { + "inputJson": "{\"sourceText\":\"Our corporate mission is to innovate.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"videoTemplateUrl\":\"https://example.com/videos/corporate_intro.mp4\",\"useVoiceOver\":true,\"voiceParameters\":{\"voice\":\"female\",\"speed\":1.0,\"pitch\":1.0}}", + "description": "Create a French voice-over video for a corporate introductory script." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "translation.createTable", + "description": "This tool accepts a list of bilingual or multilingual sentence pairs or phrases along with their translations and automatically creates a structured translation table. It processes input phrases and their corresponding translations to produce a tabular JSON output mapping source language text to target language text, optionally including additional metadata such as context or part of speech.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the source text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code of the target translation (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "entries", + "type": "array", + "description": "An array of objects each containing a source phrase and its translation, optionally with metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Whether to include additional context fields in the output table for each entry (default is false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing a translation table with entries mapping each source phrase to its target translation, including optional metadata fields." + }, + "aiAgent": { + "useCase": "Use this tool when you have multiple text entries and their translations and want to organize them into a structured table format for easy access, lookup, or export. It is especially useful for preparing bilingual corpora, glossaries, or translation memories for downstream applications.", + "limitations": "This tool does not perform machine translation; it requires explicit translation pairs as input. It does not validate the correctness of translations or infer missing translations.", + "examples": [ + "Create a translation table for English to Spanish phrases for UI localization.", + "Generate a structured table from a glossary of medical terms translated from German to English.", + "Prepare a JSON translation memory from a list of phrases translated into multiple languages." + ] + }, + "tags": [ + "translation", + "table", + "multilingual", + "localization", + "dictionary", + "glossary" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"entries\":[{\"sourcePhrase\":\"Hello\",\"translation\":\"Bonjour\"},{\"sourcePhrase\":\"Thank you\",\"translation\":\"Merci\"},{\"sourcePhrase\":\"Goodbye\",\"translation\":\"Au revoir\"}],\"includeContext\":false}", + "description": "Create a basic English to French translation table without additional context." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"ja\",\"entries\":[{\"sourcePhrase\":\"Save\",\"translation\":\"保存\",\"context\":\"Button label\"},{\"sourcePhrase\":\"Cancel\",\"translation\":\"キャンセル\",\"context\":\"Button label\"}],\"includeContext\":true}", + "description": "Create an English to Japanese translation table including context for UI buttons." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "copywriting.analyzePayment", + "description": "Analyzes payment-related text content such as transaction descriptions, billing messages, or payment notifications to extract marketing insights. It evaluates tone, clarity, and persuasive elements, providing suggestions to optimize payment communication for customer engagement and conversion.", + "category": "copywriting", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The payment-related text content to analyze, such as billing messages or transaction descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the text content for accurate linguistic analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to include sentiment analysis in the report to assess emotional tone.", + "required": false, + "defaultValue": "true" + }, + { + "name": "marketingGoal", + "type": "string", + "description": "Primary marketing objective such as 'increase conversions', 'improve clarity', or 'boost customer trust' to tailor suggestions.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a detailed analysis report including tone assessment, clarity score, sentiment analysis results, and actionable copywriting recommendations tailored for payment communications." + }, + "aiAgent": { + "useCase": "Use this tool when you have payment-related messaging (e.g., invoices, billing emails, transaction alerts) and want to analyze and improve their marketing effectiveness by evaluating tone, clarity, and persuasiveness for better customer engagement and conversion rates.", + "limitations": "This tool does not process raw payment data or perform financial transaction analysis; it only analyzes textual content related to payments. It does not generate new payment texts but provides analytical insights and suggestions.", + "examples": [ + "Analyze the tone and clarity of our invoice email text to improve customer trust.", + "Evaluate the payment notification message for persuasion effectiveness and suggest improvements.", + "Provide sentiment and clarity analysis for a billing reminder message to enhance customer response." + ] + }, + "tags": [ + "copywriting", + "payment", + "marketing analysis", + "text analysis", + "customer communication", + "sentiment analysis" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Dear customer, your payment of $123.45 has been successfully received. Thank you for your timely payment!\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"marketingGoal\":\"boost customer trust\"}", + "description": "Analyze a payment confirmation message to assess tone, clarity, and customer trust impact." + }, + { + "inputJson": "{\"textContent\":\"Your subscription renewal failed due to payment issues. Please update your billing info to continue service.\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"marketingGoal\":\"increase conversions\"}", + "description": "Evaluate a payment failure notification message for clarity and persuasiveness targeting subscription renewals." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "translation.createArticle", + "description": "This tool accepts a source language article text and translates it into a specified target language, creating a fully translated article suitable for publication or distribution. It processes the input text by preserving the original formatting and structure while producing a natural, fluent translation.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original article text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code into which the article should be translated (e.g., 'es' for Spanish).", + "required": true, + "defaultValue": "" + }, + { + "name": "articleText", + "type": "string", + "description": "The full text content of the article to translate.", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Whether to preserve original article formatting such as paragraphs and headings. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formalTone", + "type": "boolean", + "description": "Whether to use a formal tone in the translation. Defaults to false (neutral tone).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated article text and metadata such as detected source language and confirmation of target language." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a translated version of an existing article, preserving meaning and readability for target language readers. Ideal for content localization, publishing, and multilingual content creation.", + "limitations": "This tool cannot verify factual accuracy or cultural appropriateness of content beyond linguistic translation, and may struggle with idiomatic expressions or jargon without additional context.", + "examples": [ + "Translate a news article from English to French preserving original formatting.", + "Create a formal tone translation of a scientific article from German to English.", + "Translate a blog post from Spanish to Japanese without strict formatting preservation." + ] + }, + "tags": [ + "translation", + "article", + "localization", + "content creation", + "multilingual", + "text" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"articleText\":\"Global markets surged today as economic indicators improved.\",\"preserveFormatting\":true,\"formalTone\":false}", + "description": "Translate a brief financial news article from English to French, maintaining original formatting and neutral tone." + }, + { + "inputJson": "{\"sourceLanguage\":\"de\",\"targetLanguage\":\"en\",\"articleText\":\"Die neuesten Forschungsergebnisse zeigen bedeutende Fortschritte.\",\"preserveFormatting\":true,\"formalTone\":true}", + "description": "Translate a German scientific article excerpt into English using a formal tone and preserving structure." + }, + { + "inputJson": "{\"sourceLanguage\":\"es\",\"targetLanguage\":\"ja\",\"articleText\":\"Este es un post de blog sobre viajes y experiencias culinarias.\",\"preserveFormatting\":false,\"formalTone\":false}", + "description": "Translate a Spanish blog post about travel and food experiences into Japanese without preserving strict formatting." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "translation.createComponent", + "description": "Generates a reusable translation component code snippet for a specified programming framework or language that supports text localization. It accepts source language, target language, and framework details, then produces a configurable component that handles translating given text strings dynamically within an application.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The original language code of the source text, e.g., 'en' for English.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code for the translation component, e.g., 'fr' for French.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The programming framework or library for which to create the component, e.g., 'React', 'Vue', or 'Angular'.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentName", + "type": "string", + "description": "The desired name for the generated translation component file/class.", + "required": false, + "defaultValue": "\"TranslationComponent\"" + }, + { + "name": "includeFallback", + "type": "boolean", + "description": "Whether to include fallback text if the translation is missing.", + "required": false, + "defaultValue": "true" + }, + { + "name": "translationStrings", + "type": "object", + "description": "An object mapping source phrases to their translations to embed in the component for demonstration or default use.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code string of the translation component and metadata such as language and framework." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate reusable code components that integrate translated text functionalities within a specified programming framework or environment. It helps automate creation of boilerplate code for multilingual support.", + "limitations": "Cannot verify runtime correctness of the generated component code or integrate with dynamic translation APIs; translations must be provided or validated externally.", + "examples": [ + "Create a React component for translating English to Spanish.", + "Generate a Vue translation component from English to German including fallback text.", + "Produce an Angular translation component named 'MyTranslator' for Japanese to English translation." + ] + }, + "tags": [ + "translation", + "code-generation", + "component", + "localization", + "framework", + "multilingual" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"framework\":\"React\",\"componentName\":\"SpanishTranslator\",\"includeFallback\":true,\"translationStrings\":{\"Hello\":\"Hola\",\"Goodbye\":\"Adiós\"}}", + "description": "Generate a React component named SpanishTranslator that translates English 'Hello' and 'Goodbye' into Spanish including fallback support." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"framework\":\"Vue\",\"includeFallback\":false}", + "description": "Create a Vue translation component for English to German translation without fallback text included." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "copywriting.analyzeComment", + "description": "Analyzes a given comment text to evaluate its sentiment, tone, and persuasive effectiveness. Accepts raw text input, processes linguistic and emotional features, and outputs a detailed analysis including sentiment polarity, tone categories, and suggestions to enhance promotional impact.", + "category": "copywriting", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw comment text to analyze for sentiment, tone, and persuasiveness.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the comment text to guide analysis accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSuggestions", + "type": "boolean", + "description": "Whether to provide suggestions to improve the comment's marketing effectiveness.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment polarity, detected tones, persuasive effectiveness score, and optional improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the quality and marketing strength of user-generated comments, customer feedback, or promotional text to understand its impact, emotional tone, and potential improvements for better copywriting results.", + "limitations": "The tool analyzes text but cannot assess multimedia context or verify factual accuracy. Analysis depends on language support and may miss nuanced cultural expressions.", + "examples": [ + "Analyze the sentiment and tone of this customer testimonial to improve marketing.", + "Evaluate if the comment conveys a positive and persuasive message.", + "Provide feedback on how to make this comment more engaging and promotional." + ] + }, + "tags": [ + "copywriting", + "sentiment-analysis", + "tone-detection", + "comment-analysis", + "marketing", + "persuasive-writing" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I absolutely love this product! It has changed my daily routine for the better.\",\"language\":\"en\",\"includeSuggestions\":true}", + "description": "Analyze a clearly positive comment to provide sentiment, tone, and enhancement suggestions." + }, + { + "inputJson": "{\"commentText\":\"The product is okay, but it didn't meet all my expectations.\",\"language\":\"en\",\"includeSuggestions\":false}", + "description": "Analyze a neutral to slightly negative comment sentiment and tone without suggestions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "copywriting.analyzeRisk", + "description": "This tool accepts marketing copy or promotional content as input and analyzes it to identify potential risks related to security, privacy, or regulatory compliance. It highlights phrases or messaging that could trigger concerns or vulnerabilities, and produces a detailed report with risk categories, severity levels, and recommendations to mitigate these risks.", + "category": "copywriting", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The marketing or promotional text content to be analyzed for risk factors.", + "required": true, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "The industry context to tailor risk analysis, e.g., finance, healthcare, technology.", + "required": false, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards to check against, e.g., ['GDPR', 'HIPAA', 'CCPA'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "Whether to produce a detailed, paragraph-level risk explanation or a summary overview only.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object listing identified risks with descriptions, severity ratings, affected text segments, and suggested mitigation steps." + }, + "aiAgent": { + "useCase": "Use this tool when a marketing copy or promotional message needs review for security, privacy, or regulatory risk before publication. It assists in proactively identifying risky language or claims that could expose the company to legal issues or user trust erosion.", + "limitations": "This tool does not provide legal advice and should not replace professional legal or compliance review. It focuses on textual risk indicators and may miss contextual business or technical vulnerabilities.", + "examples": [ + "Analyze promotional text for GDPR compliance risks in healthcare industry.", + "Check ad copy for security-related phrases that could raise concerns under HIPAA.", + "Provide a summary of privacy risks in marketing content targeting European consumers." + ] + }, + "tags": [ + "copywriting", + "risk analysis", + "security", + "privacy", + "compliance", + "marketing", + "promotional text" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Our app guarantees 100% data security and absolute privacy for all users.\",\"industry\":\"technology\",\"complianceStandards\":[\"GDPR\"],\"detailedAnalysis\":true}", + "description": "Analyzing tech marketing claim for GDPR and data security risk." + }, + { + "inputJson": "{\"textContent\":\"We never share patient information with third parties.\",\"industry\":\"healthcare\",\"complianceStandards\":[\"HIPAA\"],\"detailedAnalysis\":false}", + "description": "Quick check of healthcare patient data privacy claims under HIPAA." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "copywriting.analyzeKPI", + "description": "This tool accepts key performance indicator (KPI) data related to copywriting efforts, such as engagement rates, conversion rates, and click-through rates. It analyzes these metrics to provide insights into the effectiveness of marketing copy, identifying strengths and areas for improvement. The output includes actionable recommendations and summary statistics to guide copy refinement.", + "category": "copywriting", + "parameters": [ + { + "name": "kpiData", + "type": "object", + "description": "An object containing relevant KPI metrics for copywriting campaigns, e.g., engagementRate, conversionRate, clickThroughRate, each as numbers representing percentages or counts.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignName", + "type": "string", + "description": "The name or identifier of the marketing campaign to contextualize the KPI analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "benchmarkData", + "type": "object", + "description": "Optional benchmark KPIs for comparison, representing industry or historical standards to contrast current performance against.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "The level of detail for analysis; options can include 'summary' or 'detailed', affecting the granularity of the output recommendations.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed results including summary statistics of KPIs, comparative insights against benchmarks if provided, and actionable recommendations for improving copywriting effectiveness." + }, + "aiAgent": { + "useCase": "This tool is ideal when evaluating the performance of marketing copy through measurable KPIs. AI agents can use it to assess how well a copywriting campaign performs, identify underperforming aspects, and suggest refinements based on quantitative data.", + "limitations": "It cannot generate new copy or qualitatively assess creative elements beyond numeric KPI data. It also relies on accurate and representative KPI inputs; poor data quality limits usefulness.", + "examples": [ + "Analyze KPI data from last quarter’s email campaign to identify conversion bottlenecks.", + "Compare current campaign engagement rates against industry benchmarks to evaluate copy effectiveness.", + "Generate detailed recommendations from provided click-through and conversion KPIs to optimize ad copy." + ] + }, + "tags": [ + "copywriting", + "analytics", + "KPI analysis", + "marketing", + "performance evaluation", + "recommendations" + ], + "examples": [ + { + "inputJson": "{\"kpiData\":{\"engagementRate\":4.5,\"conversionRate\":1.2,\"clickThroughRate\":3.8},\"campaignName\":\"Spring Sale 2024\",\"benchmarkData\":{\"engagementRate\":5.0,\"conversionRate\":1.5,\"clickThroughRate\":4.0},\"analysisDepth\":\"detailed\"}", + "description": "Analyze detailed KPI data for a specific marketing campaign, comparing with benchmark metrics to generate nuanced recommendations." + }, + { + "inputJson": "{\"kpiData\":{\"engagementRate\":2.5,\"conversionRate\":0.7,\"clickThroughRate\":1.9},\"campaignName\":\"New Product Launch\",\"analysisDepth\":\"summary\"}", + "description": "Perform a quick summary analysis on KPI data from a product launch campaign focusing on low engagement and conversion rates." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "copywriting.analyzeTable", + "description": "This tool accepts a data table input in JSON array format, typically representing marketing or promotional content metrics or attributes. It analyzes the text-related data within the table for tone, style, engagement indicators, and keyword effectiveness to provide actionable copywriting insights. The output is a structured report highlighting strengths, weaknesses, and suggestions for improving promotional copy based on the table data.", + "category": "copywriting", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "An array of objects representing rows of the table to analyze, where each object contains key-value pairs corresponding to column names and cell values, primarily textual data relevant to copywriting analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "textColumns", + "type": "array", + "description": "List of column names from the tableData to be analyzed for copywriting aspects such as tone and keyword usage. If empty, all string columns will be analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "engagementMetricsColumns", + "type": "array", + "description": "Optional list of column names containing numeric engagement metrics (e.g., click-through rates, conversions) to correlate with textual quality for deeper insights.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) indicating the language of the text in the table columns to improve analysis accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "detailedReport", + "type": "boolean", + "description": "If true, the tool returns an extended report including example excerpts and advanced keyword density metrics.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A report object summarizing copywriting insights from the table data. Includes tone assessment, keyword effectiveness, engagement correlations, and improvement recommendations for the promotional text contained in the input table." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze tabular data containing marketing or promotional copy text to quickly identify strengths, weaknesses, tone consistency, keyword use, and potential improvements. Ideal for refining advertising content or content strategies based on quantitative and qualitative analysis of existing copy data.", + "limitations": "Cannot analyze non-textual data such as images or videos. Analysis quality depends on the quality and relevance of text and metrics provided in the table. Not designed for generating new copy but for analyzing existing tabular data only.", + "examples": [ + "Analyze the promotional email campaign data table columns 'subjectLine' and 'bodyText' for tone and keyword usage.", + "Examine a table of social media post copy and engagement metrics to find which text style performs best.", + "Provide a detailed analysis report of product description text columns to improve marketing effectiveness." + ] + }, + "tags": [ + "copywriting", + "analysis", + "table", + "marketing", + "promotional text", + "tone analysis", + "keyword analysis", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"subjectLine\":\"Summer Sale - Up to 50% Off!\",\"bodyText\":\"Don't miss our exclusive summer discounts on all items.\",\"clicks\":1500,\"conversions\":225},{\"subjectLine\":\"New Arrivals Just Landed\",\"bodyText\":\"Explore our latest collection with fresh styles for every season.\",\"clicks\":950,\"conversions\":120}],\"textColumns\":[\"subjectLine\",\"bodyText\"],\"engagementMetricsColumns\":[\"clicks\",\"conversions\"],\"language\":\"en\",\"detailedReport\":true}", + "description": "Analyze a table of promotional email data with subject lines and body texts along with clicks and conversion metrics, requesting a detailed analysis report." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "copywriting.downloadImage", + "description": "Downloads an image from a specified URL and saves it locally or returns it as a base64 encoded string. Accepts an image URL and options for output format and destination, then processes the download and outputs the image data or a success confirmation.", + "category": "copywriting", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The direct URL of the image to be downloaded. Must be accessible and an image file.", + "required": true, + "defaultValue": "" + }, + { + "name": "saveToPath", + "type": "string", + "description": "Local filesystem path where the image should be saved. If empty, image data is returned instead.", + "required": false, + "defaultValue": "" + }, + { + "name": "returnAsBase64", + "type": "boolean", + "description": "If true and saveToPath is empty, returns the image data as a base64 encoded string instead of saving a file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeout", + "type": "number", + "description": "Timeout in milliseconds for the download request. Defaults to 10000 ms.", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status, the saved file path if applicable, or the base64 string of the image if requested, otherwise an error message." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically download images from the web within a copywriting or marketing context—for example, to gather promotional materials or assets for campaigns. It helps acquire image resources directly and efficiently.", + "limitations": "Cannot download images from URLs requiring authentication or complex authorization headers. Does not perform image format conversions or validations beyond HTTP response checks.", + "examples": [ + "Download an image from a public URL and save it locally to use in a marketing brochure.", + "Download an image and get it as a base64 string to embed directly in HTML content.", + "Set a custom timeout for slow image servers to avoid hanging requests." + ] + }, + "tags": [ + "copywriting", + "download", + "image", + "media", + "marketing", + "assets" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/banner.jpg\",\"saveToPath\":\"/tmp/banner.jpg\"}", + "description": "Download an image from a URL and save it locally to /tmp/banner.jpg." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/logo.png\",\"returnAsBase64\":true}", + "description": "Download an image and return its base64 string representation without saving." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/photo.jpg\",\"timeout\":5000}", + "description": "Download an image with a 5-second timeout, saving to default since saveToPath is empty." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "copywriting.downloadJSON", + "description": "Downloads copywriting-related content as JSON data. Accepts parameters specifying content type, language, tone, and length to generate structured marketing texts, then outputs a JSON file with the generated copywriting material organized for easy integration.", + "category": "copywriting", + "parameters": [ + { + "name": "contentType", + "type": "string", + "description": "Type of copywriting content to generate (e.g., productDescription, socialMediaPost).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output text (e.g., en, es, fr).", + "required": false, + "defaultValue": "en" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the writing (e.g., professional, casual, humorous).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the content in words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience to tailor the copywriting.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the generated copywriting text structured with metadata fields like contentType, language, tone, length, and the actual text content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate and download marketing or promotional text content in a structured JSON format, suitable for further processing, storage, or integration into marketing platforms. Ideal for automating large-scale copy generation customized by content type, tone, and length.", + "limitations": "This tool generates text based on parameters but does not validate or guarantee marketing effectiveness or compliance. It cannot produce images or media files and does not handle translations beyond language code selection.", + "examples": [ + "Generate a JSON file containing a professional product description about a new smartphone.", + "Download JSON with a casual tone social media post targeted at young adults.", + "Create a 150-word formal email newsletter copy for an upcoming sale event." + ] + }, + "tags": [ + "copywriting", + "download", + "json", + "marketing", + "content-generation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"contentType\": \"productDescription\", \"language\": \"en\", \"tone\": \"professional\", \"length\": 120, \"targetAudience\": \"tech enthusiasts\"}", + "description": "Generate a professional, English product description of about 120 words focused on tech enthusiasts." + }, + { + "inputJson": "{\"contentType\": \"socialMediaPost\", \"language\": \"en\", \"tone\": \"casual\", \"length\": 50, \"targetAudience\": \"millennials\"}", + "description": "Create a casual tone social media post in English for a millennial audience, about 50 words long." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "copywriting.uploadJSON", + "description": "Uploads JSON files containing marketing and promotional text content to a designated copywriting management system. Accepts JSON input with structured copy elements, validates format, and imports the content for further editing or deployment. Returns upload status and summary of imported copy entries.", + "category": "copywriting", + "parameters": [ + { + "name": "jsonContent", + "type": "string", + "description": "The raw JSON string containing promotional text data structured for the copywriting system.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetProjectId", + "type": "string", + "description": "Identifier of the target project or campaign where the JSON copy will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, the system only validates JSON format and content without performing an actual upload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, existing copy entries matching the JSON content IDs will be overwritten during upload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "notifyTeam", + "type": "boolean", + "description": "If true, notifies the copywriting team upon success or failure of upload.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload result status, number of entries processed, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically import or update structured promotional text data in JSON format into the team's copywriting system, enabling seamless integration of copy assets for marketing campaigns. Ideal for batch uploads or automated content management workflows.", + "limitations": "This tool cannot generate or edit copy; it solely uploads and validates JSON copy content. It does not support formats other than JSON or unstructured text.", + "examples": [ + "Upload a new promotional JSON file to project ABC123", + "Validate JSON copy content before upload to campaign XYZ", + "Overwrite existing copy data in project DEF456 with new JSON content" + ] + }, + "tags": [ + "copywriting", + "upload", + "JSON", + "marketing", + "content management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"jsonContent\":\"{\\\"copyItems\\\":[{\\\"id\\\":\\\"c001\\\",\\\"text\\\":\\\"Introducing our new summer collection!\\\"}]}", + "description": "Upload JSON copy text introducing a new product collection to a project." + }, + { + "inputJson": "{\"jsonContent\":\"{\\\"copyItems\\\":[{\\\"id\\\":\\\"promo001\\\",\\\"text\\\":\\\"Limited time offer: 20% off!\\\"}]}\",\"targetProjectId\":\"proj789\",\"validateOnly\":true}", + "description": "Validate JSON promotional copy content before uploading to project proj789." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "copywriting.formatWord", + "description": "Formats a given word according to specified style options commonly used in marketing and promotional content. Supports capitalization styles such as title case, uppercase, lowercase, camelCase, snake_case, and kebab-case to ensure consistent branding and tone in text assets.", + "category": "copywriting", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The input word to be formatted. Required and must be a single word or phrase without spaces.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The formatting style to apply to the word. Options include titleCase, uppercase, lowercase, camelCase, snake_case, kebab-case.", + "required": true, + "defaultValue": "titleCase" + }, + { + "name": "preserveAcronyms", + "type": "boolean", + "description": "If true, preserves acronyms in uppercase when formatting to titleCase or lowercase styles.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted word string under the key 'formattedWord'." + }, + "aiAgent": { + "useCase": "Use this tool when preparing marketing or promotional copy that requires consistent word formatting such as product names, feature highlights, or taglines. It ensures the word styling aligns with brand guidelines or marketing tone by automating case conversions and stylistic formatting.", + "limitations": "This tool formats single words or phrases only and does not handle full sentence grammar or multi-word content with complex punctuation.", + "examples": [ + "Format the word 'innovation' to uppercase for a bold headline.", + "Convert the product name 'smart home device' to camelCase for variable naming in technical documentation.", + "Apply titleCase formatting to 'augmented reality' for marketing brochures." + ] + }, + "tags": [ + "formatting", + "copywriting", + "branding", + "text-style", + "marketing", + "case-conversion" + ], + "examples": [ + { + "inputJson": "{\"word\":\"innovation\",\"formatStyle\":\"uppercase\",\"preserveAcronyms\":false}", + "description": "Convert a single word to all uppercase letters for emphasis in marketing headlines." + }, + { + "inputJson": "{\"word\":\"smart home device\",\"formatStyle\":\"camelCase\",\"preserveAcronyms\":false}", + "description": "Format a multi-word product name in camelCase style for use in technical or code contexts related to marketing materials." + }, + { + "inputJson": "{\"word\":\"augmented reality\",\"formatStyle\":\"titleCase\",\"preserveAcronyms\":true}", + "description": "Format a phrase in title case preserving acronyms properly for print or digital marketing brochures." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "copywriting.formatText", + "description": "Formats marketing or promotional text according to specified style guidelines and output format. Accepts raw text input, applies formatting styles such as tone adjustment, sentence structure, emphasis, and output formatting like bullet points or HTML markup, producing polished and presentation-ready text.", + "category": "copywriting", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw marketing or promotional text content to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the formatted text, e.g., formal, casual, persuasive, friendly.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format for the formatted text, such as plain text, markdown, or HTML.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "addBullets", + "type": "boolean", + "description": "Whether to convert lists or key points into bullet points when applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length for the formatted output to enhance readability, 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted text string and metadata about the applied formatting." + }, + "aiAgent": { + "useCase": "Use this tool when preparing marketing or promotional text that needs consistent styling and formatting for professional presentation or publication, especially when tone adjustment and output format transformations are required to meet brand or platform guidelines.", + "limitations": "This tool does not create original marketing content; it only formats existing text. It cannot generate images or multimedia. Complex layout styling beyond basic HTML or markdown is not supported.", + "examples": [ + "Format raw promotional text into a friendly tone with markdown output.", + "Convert product description text into formal tone and add bullet points.", + "Reformat existing campaign text for HTML email with line length limit set to 80 characters." + ] + }, + "tags": [ + "copywriting", + "formatting", + "marketing", + "text processing", + "tone adjustment", + "output formatting" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Introducing our new product line! It offers advanced features and excellent value.\",\"tone\":\"friendly\",\"outputFormat\":\"markdown\",\"addBullets\":true,\"maxLineLength\":80}", + "description": "Format marketing text with a friendly tone to markdown, adding bullet points if applicable and applying line length limit." + }, + { + "inputJson": "{\"text\":\"Our software platform increases productivity and ensures security compliance.\",\"tone\":\"formal\",\"outputFormat\":\"plain\",\"addBullets\":false,\"maxLineLength\":0}", + "description": "Format product description with formal tone as plain text without bullet points and no line wrapping." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "copywriting.formatJSON", + "description": "Formats and beautifies JSON content specifically for copywriting and marketing text applications. Accepts raw JSON input and outputs a formatted JSON string with customizable indentation and optional field filtering, helping marketers present structured data clearly and attractively.", + "category": "copywriting", + "parameters": [ + { + "name": "rawJson", + "type": "string", + "description": "Raw JSON string input to be formatted. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output. Default is 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "filterFields", + "type": "array", + "description": "Array of JSON field names to include in the output. If empty or omitted, all fields are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "removeEmptyFields", + "type": "boolean", + "description": "If true, fields with empty string or null values are removed before formatting. Default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string as 'formattedJson' and optionally the original input validation status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to prettify and customize raw JSON data intended for marketing or promotional content, ensuring clarity and readability for copywriting teams or content management systems. It helps prepare structured data for inclusion in marketing assets or documentation.", + "limitations": "This tool does not perform semantic content rewriting, language translation, or copywriting generation. It only formats and filters JSON data and does not validate the business logic or marketing effectiveness of the content.", + "examples": [ + "Format raw JSON with default indentation for marketing content display.", + "Filter JSON to include only relevant copywriting fields and remove empty entries before formatting.", + "Adjust indentation to 4 spaces for better visual alignment in marketing documents." + ] + }, + "tags": [ + "copywriting", + "formatting", + "json", + "marketing", + "data-preparation", + "content-management" + ], + "examples": [ + { + "inputJson": "{\"rawJson\":\"{\\\"headline\\\":\\\"Summer Sale\\\",\\\"discount\\\":\\\"20%\\\",\\\"details\\\":\\\"Off all items!\\\"}\",\"indentationSpaces\":2}", + "description": "Formats raw marketing JSON data with default 2-space indentation." + }, + { + "inputJson": "{\"rawJson\":\"{\\\"headline\\\":\\\"New Launch\\\",\\\"promoCode\\\":\\\"LAUNCH2024\\\",\\\"expired\\\":null}\",\"filterFields\":[\"headline\",\"promoCode\"],\"removeEmptyFields\":true}", + "description": "Filters JSON to include only headline and promoCode fields, removing empty null fields, then formats output." + }, + { + "inputJson": "{\"rawJson\":\"{\\\"title\\\":\\\"End of Year Deals\\\",\\\"validTill\\\":\\\"2024-12-31\\\"}\",\"indentationSpaces\":4}", + "description": "Formats JSON with 4 spaces indentation for clear presentation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "copywriting.buildService", + "description": "This tool generates persuasive marketing copy for service-based businesses. It accepts inputs defining the service type, target audience, key features, tone, and desired length, then produces coherent promotional text tailored to attract and engage potential customers.", + "category": "copywriting", + "parameters": [ + { + "name": "serviceType", + "type": "string", + "description": "The specific type of service for which copy is being created (e.g., IT consulting, personal training).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the primary audience or customer segment the copy should appeal to.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of main features or benefits to highlight in the marketing copy.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the copy such as professional, friendly, enthusiastic, or formal.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate word count for the generated text.", + "required": false, + "defaultValue": "150" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action phrase to include in the copy, e.g., \"Contact us today!\".", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated service marketing copy as a string under the key 'marketingCopy'." + }, + "aiAgent": { + "useCase": "Use this tool when generating effective and customized promotional text for various service offerings to quickly produce attention-grabbing marketing material. Ideal for marketing campaigns, websites, and social media posts focusing on service businesses.", + "limitations": "The output depends on the accuracy and completeness of the input parameters. It does not perform deep market research or competitive analysis, and human review is recommended to ensure alignment with brand guidelines and compliance requirements.", + "examples": [ + "Generate a friendly and concise promotional paragraph for a boutique personal training service targeting busy professionals.", + "Create a professional marketing description for a new cloud-based IT consulting service aimed at small businesses, highlighting scalability and support.", + "Produce an enthusiastic 200-word copy for a gourmet catering service with call to action 'Book your event now!'." + ] + }, + "tags": [ + "copywriting", + "marketing", + "service", + "promotional text", + "AI writing", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"serviceType\":\"digital marketing consulting\",\"targetAudience\":\"small business owners\",\"keyFeatures\":[\"custom strategy\",\"affordable pricing\",\"proven results\"],\"tone\":\"professional\",\"length\":150,\"callToAction\":\"Schedule a free consultation today!\"}", + "description": "Create professional marketing text for digital marketing consulting aimed at small businesses, emphasizing custom strategy and affordability." + }, + { + "inputJson": "{\"serviceType\":\"luxury home cleaning\",\"targetAudience\":\"high-income households\",\"keyFeatures\":[\"eco-friendly products\",\"trained staff\",\"24/7 availability\"],\"tone\":\"friendly\",\"length\":120,\"callToAction\":\"Book your spotless home now!\"}", + "description": "Generate friendly and concise copy for a luxury home cleaning service targeting affluent clients with emphasis on eco-friendliness." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "copywriting.buildConfig", + "description": "This tool generates a configuration object for copywriting automation workflows. Accepting inputs such as target audience details, tone preferences, content length limits, and language style guidelines, it processes these parameters to produce a structured configuration JSON. This config can then be used to guide AI copywriting models or content generation tools.", + "category": "copywriting", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the copy (e.g., \"tech-savvy millennials\").", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the writing (e.g., \"professional\", \"casual\", \"humorous\").", + "required": false, + "defaultValue": "professional" + }, + { + "name": "contentLength", + "type": "number", + "description": "Maximum number of words or characters for the generated copy.", + "required": false, + "defaultValue": "300" + }, + { + "name": "languageStyle", + "type": "string", + "description": "Stylistic guidelines such as formal, informal, or industry-specific jargon to use.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call to action in the copy configuration.", + "required": false, + "defaultValue": "true" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords or phrases to emphasize in the copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "platform", + "type": "string", + "description": "Intended distribution channel or platform (e.g., \"email\", \"social media\", \"website\").", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the assembled copywriting configuration, including all input parameters structured for use in automated copywriting systems." + }, + "aiAgent": { + "useCase": "Use this tool when configuring AI-driven copywriting tasks that require structured parameters such as audience targeting, tone, content length, and stylistic preferences. It helps prepare consistent configuration inputs for copywriting models or pipelines to generate marketing and promotional text aligned with specified goals.", + "limitations": "This tool does not generate actual copy text; it only builds configuration objects. It cannot validate the effectiveness of copywriting output or adapt configurations dynamically based on performance metrics.", + "examples": [ + "Create a config for friendly social media posts targeting young adults with informal language and keywords related to fitness.", + "Build a professional, concise email copywriting config for B2B customers with a formal tone and mandatory call to action.", + "Generate a configuration for website product descriptions highlighting eco-friendly aspects with a casual tone and medium content length." + ] + }, + "tags": [ + "copywriting", + "configuration", + "automation", + "marketing", + "content-generation", + "tone", + "audience-targeting" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"young professionals interested in tech\",\"tone\":\"casual\",\"contentLength\":150,\"languageStyle\":\"informal\",\"includeCallToAction\":true,\"keywords\":[\"innovation\",\"startup\",\"growth\"],\"platform\":\"social media\"}", + "description": "Configuring casual social media copy aimed at young tech professionals with a short length and specified keywords." + }, + { + "inputJson": "{\"targetAudience\":\"enterprise clients\",\"tone\":\"professional\",\"contentLength\":300,\"languageStyle\":\"formal\",\"includeCallToAction\":true,\"keywords\":[\"security\",\"compliance\"],\"platform\":\"email\"}", + "description": "Building a professional email copy config targeting enterprise clients focusing on security and compliance." + }, + { + "inputJson": "{\"targetAudience\":\"eco-conscious consumers\",\"tone\":\"friendly\",\"contentLength\":200,\"languageStyle\":\"informal\",\"includeCallToAction\":false,\"keywords\":[\"sustainability\",\"green\"],\"platform\":\"website\"}", + "description": "Creating a friendly website copy config for eco-conscious consumers emphasizing sustainability without a call to action." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "copywriting.formatContract", + "description": "This tool accepts a raw or partially formatted contract text along with user preferences such as jurisdiction, contract type, and style guidelines. It then processes and formats the contract text to produce a professionally structured, clear, and legally consistent contract document, improving readability and adherence to common legal standards.", + "category": "copywriting", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "The full raw or partially formatted contract text to be formatted professionally.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Specifies the legal jurisdiction to tailor the formatting and terminology accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "contractType", + "type": "string", + "description": "Type of contract (e.g., NDA, Service Agreement, Employment) to guide formatting conventions.", + "required": false, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Preferred writing style or formatting guidelines (e.g., formal, plain language).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeSections", + "type": "array", + "description": "Optional list of standard sections to enforce presence or order in the formatted contract.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the fully formatted contract text and optionally a summary of key clauses or formatting notes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw or loosely structured contract text into a professionally formatted legal document conforming to jurisdictional and style standards, suitable for review or presentation.", + "limitations": "This tool does not provide legal advice or validate contract legality. It only formats text for clarity and structural consistency. Complex legal validations or negotiations are out of scope.", + "examples": [ + "Format this raw NDA text according to California law with formal styling.", + "Reformat the employment agreement text to include missing standard sections and use plain language.", + "Adjust this service contract draft for UK jurisdiction and improve clause formatting." + ] + }, + "tags": [ + "copywriting", + "legal", + "contract", + "formatting", + "document", + "professional", + "legaltech" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This agreement is entered into by and between...\",\"jurisdiction\":\"California\",\"contractType\":\"NDA\",\"styleGuide\":\"formal\",\"includeSections\":[\"Confidentiality\",\"Term\",\"Termination\"]}", + "description": "Formatting an NDA contract text for California jurisdiction with formal style and specified mandatory sections." + }, + { + "inputJson": "{\"contractText\":\"Employment contract draft without clear section breaks.\",\"styleGuide\":\"plain language\"}", + "description": "Reformatting an employment contract draft to improve clarity and use plain language style." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "copywriting.buildEndpoint", + "description": "This tool generates a detailed marketing copy for a software API endpoint based on provided endpoint details. It accepts input parameters describing the endpoint's purpose, inputs, outputs, and usage context, then produces persuasive, clear promotional text suitable for technical documentation or marketing materials.", + "category": "copywriting", + "parameters": [ + { + "name": "endpointName", + "type": "string", + "description": "The name of the API endpoint to describe.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointPurpose", + "type": "string", + "description": "A concise description of what the endpoint does.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputParameters", + "type": "array", + "description": "An array of objects describing each input parameter with name and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputDescription", + "type": "string", + "description": "A clear explanation of the output or response the endpoint returns.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended users for the endpoint, e.g., developers, product managers.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the marketing copy, e.g., professional, casual, technical.", + "required": false, + "defaultValue": "professional" + } + ], + "returns": { + "type": "object", + "description": "An object containing the crafted marketing copy text under the 'marketingCopy' field." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate polished, user-friendly descriptions and promotional text for software API endpoints as part of documentation, promotional websites, or onboarding guides. It helps communicate technical details in an engaging, accessible way.", + "limitations": "The tool cannot generate actual API code or validate endpoint functionality. It only creates marketing-style descriptive text and may require human review for technical accuracy.", + "examples": [ + "Write a succinct marketing description for an endpoint that retrieves user profile data including input parameters and output format.", + "Create a promotional overview for a payment processing API endpoint targeting e-commerce developers, in a casual tone.", + "Generate detailed copy for a weather forecast API endpoint describing inputs, outputs, and usage benefits." + ] + }, + "tags": [ + "copywriting", + "API", + "marketing", + "documentation", + "endpoint", + "software", + "technical writing" + ], + "examples": [ + { + "inputJson": "{\"endpointName\":\"getUserProfile\",\"endpointPurpose\":\"Retrieve detailed user profile information.\",\"inputParameters\":[{\"name\":\"userId\",\"description\":\"Unique identifier of the user.\"}],\"outputDescription\":\"JSON object containing user's profile details including name, email, and preferences.\",\"targetAudience\":\"Developers\",\"tone\":\"professional\"}", + "description": "Generate professional marketing copy for a user profile retrieval API endpoint." + }, + { + "inputJson": "{\"endpointName\":\"processPayment\",\"endpointPurpose\":\"Handle payment transactions securely.\",\"inputParameters\":[{\"name\":\"amount\",\"description\":\"Total amount to be charged.\"},{\"name\":\"currency\",\"description\":\"Currency code in ISO format.\"},{\"name\":\"paymentMethod\",\"description\":\"Payment method details.\"}],\"outputDescription\":\"Transaction confirmation status and receipt details.\",\"targetAudience\":\"E-commerce developers\",\"tone\":\"casual\"}", + "description": "Create casual marketing text promoting a payment processing API endpoint for e-commerce developers." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "content-creation.analyzeConversion", + "description": "Analyzes conversion events data from digital marketing campaigns or web analytics. It processes input data of user interactions and conversion criteria, calculates conversion rates, identifies trends over time, and segments performance by specified dimensions. Outputs detailed conversion metrics and insights to optimize content and marketing strategies.", + "category": "content-creation", + "parameters": [ + { + "name": "conversionEvents", + "type": "array", + "description": "Array of conversion event objects including timestamps, user IDs, and event types to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying start and end dates for analysis period (ISO 8601 format).", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentBy", + "type": "array", + "description": "List of dimensions (e.g., 'deviceType', 'region') to segment conversion analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minConversionValue", + "type": "number", + "description": "Minimum conversion value threshold to consider for analysis (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeNonConverted", + "type": "boolean", + "description": "Whether to include users who did not convert for total funnel analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for trend analysis ('daily', 'weekly', 'monthly').", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall conversion rate, segmented conversion rates, trend data over time, and key insights derived from the data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate how well content or marketing campaigns convert users into desired actions. It helps quantify conversion performance segmented by dimensions and time, enabling data-driven content strategy optimization.", + "limitations": "This tool does not track or attribute conversions in real-time and requires clean, structured event input data. It cannot analyze unstructured logs or infer causality between content elements and conversions.", + "examples": [ + "Analyze conversion rates segmented by device type over the last month.", + "Calculate daily conversion trends including users who did not convert.", + "Identify regions with the highest conversion value exceeding a threshold." + ] + }, + "tags": [ + "content-creation", + "conversion-analysis", + "marketing-analytics", + "data-segmentation", + "trend-analysis" + ], + "examples": [ + { + "inputJson": "{\"conversionEvents\":[{\"userId\":\"u1\",\"eventType\":\"purchase\",\"timestamp\":\"2024-05-01T12:00:00Z\",\"value\":50},{\"userId\":\"u2\",\"eventType\":\"signup\",\"timestamp\":\"2024-05-02T13:30:00Z\"}],\"timeRange\":{\"start\":\"2024-05-01\",\"end\":\"2024-05-31\"},\"segmentBy\":[\"eventType\"],\"includeNonConverted\":true,\"granularity\":\"daily\"}", + "description": "Analyze daily conversion rates by event type for May 2024 including users without conversions." + }, + { + "inputJson": "{\"conversionEvents\":[{\"userId\":\"u1\",\"eventType\":\"purchase\",\"timestamp\":\"2024-06-10T09:00:00Z\",\"value\":120},{\"userId\":\"u3\",\"eventType\":\"purchase\",\"timestamp\":\"2024-06-11T10:15:00Z\",\"value\":80}],\"timeRange\":{\"start\":\"2024-06-01\",\"end\":\"2024-06-15\"},\"segmentBy\":[\"region\"],\"minConversionValue\":100,\"includeNonConverted\":false}", + "description": "Calculate conversion rates in the first half of June 2024 segmented by region, filtering only conversions above 100 value." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "copywriting.buildModule", + "description": "Generates a marketing copywriting module consisting of customizable promotional text segments for websites, email campaigns, or product descriptions. Accepts input parameters defining module purpose, target audience, key messages, tone, and length limits, and produces a structured text module with multiple copy blocks ready for integration into marketing content flows.", + "category": "copywriting", + "parameters": [ + { + "name": "modulePurpose", + "type": "string", + "description": "The primary goal or theme of the marketing module (e.g., product launch, brand awareness).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the marketing copy (e.g., tech-savvy millennials).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMessages", + "type": "array", + "description": "Array of core messages or features to emphasize in the module.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Writing style or tone to use (e.g., professional, casual, witty).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLengthPerSegment", + "type": "number", + "description": "Maximum character length allowed per copy segment.", + "required": false, + "defaultValue": "200" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action line in each copy segment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of copy segments composing the module. Each segment includes a title and body text." + }, + "aiAgent": { + "useCase": "This tool is ideal when building modular marketing copy that needs to be dynamically generated for various communication channels and target audiences. It helps automate the creation of segmented promotional text blocks for websites, emails, or ads based on strategic input parameters.", + "limitations": "It cannot replace complex content strategy or deep creative branding decisions. Also, it may not perfectly capture nuanced brand voice beyond the given tone parameter.", + "examples": [ + "Generate a module promoting a new eco-friendly gadget for young urban professionals with key features.", + "Create a casual tone marketing module for a mobile app launch targeting teenagers highlighting ease of use and fun.", + "Build a professional module focused on financial services product benefits for conservative investors including call-to-action." + ] + }, + "tags": [ + "copywriting", + "marketing", + "module", + "promotional", + "text generation", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"modulePurpose\":\"product launch\",\"targetAudience\":\"tech-savvy millennials\",\"keyMessages\":[\"Innovative design\",\"Long battery life\",\"Affordable pricing\"],\"tone\":\"casual\",\"maxLengthPerSegment\":180,\"includeCallToAction\":true}", + "description": "Build a casual marketing module for a tech product launch targeting millennials, emphasizing three key product features with CTAs." + }, + { + "inputJson": "{\"modulePurpose\":\"brand awareness\",\"targetAudience\":\"health-conscious adults\",\"keyMessages\":[\"Organic ingredients\",\"Sustainability commitment\",\"Community support\"],\"tone\":\"professional\",\"includeCallToAction\":false}", + "description": "Create a professional brand awareness copy module highlighting values and missions, without a call to action." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "content-creation.analyzeQuote", + "description": "This tool accepts a text quote as input and performs linguistic and sentiment analysis. It evaluates the sentiment polarity, extracts key themes or topics, detects figurative language, and provides a summary of the quote's tone and meaning. Outputs a structured analysis including sentiment scores, identified themes, figurative language types, and a concise interpretative summary.", + "category": "content-creation", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The quote text to be analyzed, including punctuation and original formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the quote (e.g., 'en' for English) to tailor text processing and sentiment analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment polarity and intensity analysis in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeFigurativeLanguage", + "type": "boolean", + "description": "Whether to detect and classify figurative language elements such as metaphors or similes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum character length for the summary interpretation of the quote.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "Analysis result including sentiment scores, list of key themes or topics, detected figurative language, and a text summary explaining the quote's tone and interpretation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand the emotional tone, key themes, and literary devices within a given quote text. Helpful for content creation, sentiment-based filtering, annotation, literary analysis, or generating interpretations of quoted text.", + "limitations": "It cannot verify quote authenticity or provide context beyond the text itself. Some subtle figurative language or idiomatic expressions may not be detected depending on language and complexity. Does not perform translation.", + "examples": [ + "Analyze the emotional tone and key themes of the following motivational quote.", + "Identify any metaphors or similes in the given quote and summarize its meaning.", + "Provide sentiment analysis and a brief interpretation of a famous literary quote." + ] + }, + "tags": [ + "analysis", + "quote", + "content-creation", + "sentiment", + "figurative-language", + "text-analysis", + "literary", + "summary" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"language\":\"en\",\"includeSentiment\":true,\"includeFigurativeLanguage\":true,\"maxSummaryLength\":200}", + "description": "Analyze a motivational quote to identify sentiment, themes, and figurative language." + }, + { + "inputJson": "{\"quoteText\":\"All the world's a stage, and all the men and women merely players.\",\"language\":\"en\",\"includeSentiment\":true,\"includeFigurativeLanguage\":true,\"maxSummaryLength\":300}", + "description": "Analyze a famous Shakespeare quote to extract figurative language and summarize its meaning." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "content-creation.analyzeAnomaly", + "description": "Analyzes textual or multimedia digital content to detect and explain anomalies such as unusual patterns, errors, or deviations from expected content norms. Accepts text or media file inputs, applies analytical models, and outputs detailed anomaly reports highlighting issues and their potential causes.", + "category": "content-creation", + "parameters": [ + { + "name": "contentType", + "type": "string", + "description": "The type of content to analyze (e.g., 'text', 'image', 'video').", + "required": true, + "defaultValue": "" + }, + { + "name": "contentData", + "type": "string", + "description": "The actual content data as a raw string for text or a base64-encoded string for multimedia files.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "number", + "description": "Level of detail for anomaly analysis, from 1 (basic) to 5 (in-depth).", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language of the content when analyzing text to improve anomaly detection accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "sensitivityThreshold", + "type": "number", + "description": "Threshold for flagging anomalies; lower values detect more anomalies but may increase false positives.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "Structured anomaly report including anomaly type, locations/references, severity scores, and explanatory notes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to identify unexpected or unusual elements within digital content, such as corrupt data in media files, unusual word usage patterns in text, or deviations from standard formatting. It helps improve content quality and integrity by pinpointing problematic areas for review or automated remediation.", + "limitations": "Cannot guarantee detection of all anomaly types in specialized content domains without custom training. Multimedia analysis depends on the quality and encoding of the input. Does not perform content correction, only detection and explanation.", + "examples": [ + "Analyze a suspicious text document for unusual word patterns and anomalies.", + "Detect corrupted frames or unexpected content in a video file.", + "Identify unexpected metadata or content deviations in an image file." + ] + }, + "tags": [ + "content-analysis", + "anomaly-detection", + "digital-content", + "quality-assurance", + "media-analysis" + ], + "examples": [ + { + "inputJson": "{\"contentType\":\"text\",\"contentData\":\"This is a sample text with a very odd placement of words and suspicious grammar.\",\"analysisDepth\":3,\"language\":\"en\",\"sensitivityThreshold\":0.6}", + "description": "Analyzing English text for grammatical anomalies and suspicious word patterns." + }, + { + "inputJson": "{\"contentType\":\"image\",\"contentData\":\"/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAP//////////////////////////////////////////////////////////////////////////////////////2wBDAf//////////////////////////////////////////////////////////////////////////////////////wAARCAABAAEDASIAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAf/xAAUEAEAAAAAAAAAAAAAAAAAAAAA/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhEDEQA/AKP/2Q==\",\"analysisDepth\":5,\"sensitivityThreshold\":0.8}", + "description": "Analyzing a base64-encoded image for corrupted or anomalous pixels and metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "content-creation.uploadTable", + "description": "Uploads a tabular data file (CSV, Excel, or JSON array) to a specified content repository or data workspace. Accepts file content and metadata, validates format, optionally parses for preview, and returns upload status and resource identifiers.", + "category": "content-creation", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded string of the table file content to upload (CSV, XLSX, or JSON array).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "The format of the table file being uploaded: 'csv', 'xlsx', or 'json'.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Path or URI where the table file should be uploaded or stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "A name identifier for the uploaded table for referencing in the repository or workspace.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag to allow overwriting an existing table with the same name at the destination.", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "If true, validates the table structure against an optional schema before upload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "Optional schema definition object to validate uploaded table columns and types against, if validateSchema is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "UploadResult object including success status, message for errors or confirmation, and identifiers for the stored table resource." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to accept a tabular dataset file upload from a user or external source to store it in a content management or data repository system. Ideal for workflows involving data ingestion, cataloging, or preparation for analysis where file transfer and format validation is required.", + "limitations": "This tool does not perform detailed data cleansing or advanced validation beyond optional schema checks. It cannot transform table content or merge multiple tables automatically. File size and format support depend on system limits.", + "examples": [ + "Upload my sales data CSV file to the analytics workspace under the name 'monthly_sales'.", + "Upload an Excel file containing product inventory to the content management system, overwriting any existing file named 'inventory.xlsx'.", + "Upload a JSON array table of user data, validating it matches the provided schema before storing." + ] + }, + "tags": [ + "upload", + "table", + "content-creation", + "data-management", + "csv", + "excel", + "json", + "file-upload" + ], + "examples": [ + { + "inputJson": "{\"fileContent\":\"VGhlbWVsaW5lLCBzYWxlcywgd2FyZSByZXBvcnRzIGluIGNDRlYu\",\"fileType\":\"csv\",\"destinationPath\":\"/data/analytics/\",\"tableName\":\"monthly_sales\",\"overwriteExisting\":false,\"validateSchema\":false}", + "description": "Uploading a CSV encoded in Base64 to the analytics data folder as monthly_sales without overwrite and no schema validation." + }, + { + "inputJson": "{\"fileContent\":\"UEsDBBQABgAIAAAAIQDK6wX9iAAAAAQAAAAKAAAAbnVtYmVyLnhtbC54bWxueHRzIHhtbG5zOmF2Yz0iaHR0cDovL3d3dy5hdmMuY29tL2RhdGFiYXNlL3hsaW0vYXZjIiB2ZXJzaW9uPSIxLjAiPgo8dGFibGU+Cgk8Y29sdW1uIG5hbWU9XCJhZCZjdThcIiB0eXBlPSJzdHJpbmciLz4KPC90YWJsZT4KUEsBAj8ABgAIAAAAIQDK6wX9iAAAAAQAAAAKAAAAAAAAAAAAAACkgQAAAABudW1iZXIueG1sLnhtbHh0c1BLBQYAAAAAAQABAD0AAADxAAAAPwAAAAAA\",\"fileType\":\"xlsx\",\"destinationPath\":\"/content/inventory/\",\"tableName\":\"inventory\",\"overwriteExisting\":true,\"validateSchema\":false}", + "description": "Uploading an Excel file in Base64 format to content management system with overwrite enabled." + }, + { + "inputJson": "{\"fileContent\":\"W3siaWQiOjEsIm5hbWUiOiJKb2huIERvZSIsImFnZSI6MzB9LHsiaWQiOjIsIm5hbWUiOiJKYW5lIFNtYXJ0IiwiYWdlIjozMX1d\",\"fileType\":\"json\",\"destinationPath\":\"/data/users/\",\"tableName\":\"user_data\",\"overwriteExisting\":false,\"validateSchema\":true,\"schemaDefinition\":{\"columns\":[{\"name\":\"id\",\"type\":\"number\"},{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"age\",\"type\":\"number\"}]}}", + "description": "Uploading a JSON array representing user data, validating against the provided schema." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "content-creation.analyzeYAML", + "description": "This tool accepts a YAML formatted string as input, parses and analyzes its structure and content, and produces a detailed report including syntax validation, key hierarchy, data types found, and summary statistics such as number of keys, lists, and nested levels. It helps users understand and validate YAML documents.", + "category": "content-creation", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML content to be analyzed, provided as a raw string.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSyntax", + "type": "boolean", + "description": "Whether to validate the YAML syntax strictly and report errors if present.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a high-level summary of the YAML document in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum nesting depth to analyze in the YAML structure; deeper levels are ignored in the report (0 means unlimited).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object including syntax validity status, any syntax error messages, a detailed hierarchical key structure with their data types, number of keys and lists counted, nesting depth, and an optional summary string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically assess the structure and validity of YAML documents, such as for configuration reviews, content auditing, or generating metadata summaries about YAML files before processing them further. Ideal for agents that handle diverse YAML inputs and must verify correctness and structure.", + "limitations": "It does not execute any embedded scripts or resolve external references in YAML. It cannot transform or convert YAML to other formats, and is limited to analysis only.", + "examples": [ + "Analyze the YAML configuration of a deployment file for structural errors and key summaries.", + "Summarize the data types and nested levels used in a YAML-based content template.", + "Validate a YAML document syntax and provide detailed error messages if invalid." + ] + }, + "tags": [ + "content-creation", + "yaml", + "analysis", + "validation", + "data-structure", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"version: 1\\nservices:\\n web:\\n image: nginx\\n ports:\\n - 80\\n - 443\\ndatabase:\\n type: postgres\\n replicas: 3\",\"validateSyntax\":true,\"includeSummary\":true,\"maxDepth\":0}", + "description": "Analyze a simple YAML configuration with services and database keys, validate syntax, and include a summary." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "content-creation.downloadTable", + "description": "Downloads tabular data provided as input into a file of specified format, encoding, and filename. Accepts data as an array of objects or array of arrays, converts it into CSV, Excel, or JSON format, and outputs a downloadable file link or buffer depending on environment.", + "category": "content-creation", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "The table data to download, represented as either an array of objects or an array of arrays.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The desired file format to download: 'csv', 'xlsx', or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the downloaded file without extension.", + "required": false, + "defaultValue": "table-data" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the output file (if format supports headers).", + "required": false, + "defaultValue": "true" + }, + { + "name": "encoding", + "type": "string", + "description": "Character encoding of the output file. Defaults to 'utf-8'.", + "required": false, + "defaultValue": "utf-8" + } + ], + "returns": { + "type": "object", + "description": "An object containing a download URL or buffer data and the content type for the downloaded table." + }, + "aiAgent": { + "useCase": "Use this tool when you need to provide end-users with a downloadable file containing tabular data in a common format such as CSV, Excel, or JSON. For example, after processing or filtering data, an AI agent can generate the output file enabling users to download and use it offline in spreadsheet applications or data analysis tools.", + "limitations": "This tool does not support extremely large datasets that exceed typical in-memory processing limits, nor does it handle database connections or real-time data streaming. It assumes valid structured data input and does not perform data validation or cleaning.", + "examples": [ + "Download my processed user data as a CSV file named 'users.csv'.", + "Export sales report data as an Excel spreadsheet without headers.", + "Save the table data in JSON format with UTF-8 encoding and custom filename." + ] + }, + "tags": [ + "content", + "table", + "download", + "csv", + "excel", + "json", + "export" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"Name\":\"Alice\",\"Age\":30},{\"Name\":\"Bob\",\"Age\":25}],\"format\":\"csv\",\"fileName\":\"users\",\"includeHeaders\":true,\"encoding\":\"utf-8\"}", + "description": "Download user data as a CSV file named 'users.csv' including headers." + }, + { + "inputJson": "{\"tableData\":[[\"Product\",\"Price\"],[\"Pen\",1.2],[\"Notebook\",2.5]],\"format\":\"xlsx\",\"fileName\":\"products\",\"includeHeaders\":false,\"encoding\":\"utf-8\"}", + "description": "Download product prices as an Excel file without headers." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "content-creation.sendReply", + "description": "Sends a reply message to a specified recipient within an existing communication thread or channel. Accepts inputs including the recipient identifier, message content, optional attachments, and a flag for reply context. Processes the information to format and deliver the reply through a messaging platform API and returns the status and message ID.", + "category": "content-creation", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the message recipient or conversation thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "Text content of the reply message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment objects, such as images or files, to include with the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyToMessageId", + "type": "string", + "description": "Message ID of the original message being replied to, if applicable, to maintain thread context.", + "required": false, + "defaultValue": "" + }, + { + "name": "urgent", + "type": "boolean", + "description": "Flag indicating if the message should be marked as urgent or high priority.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the delivery status with a success boolean, sent message ID if successful, and an error message if delivery failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically send a reply message as part of a conversation, ensuring context is maintained by specifying the original message ID. This enables automated customer support, conversational UIs, or integration with messaging platforms.", + "limitations": "This tool cannot generate message content; it expects the text content as input. It also does not handle notifications or read receipts beyond sending the message itself.", + "examples": [ + "Send a reply to a user inquiry with text confirming their request.", + "Attach an image file in a reply message to a customer.", + "Mark a message as urgent when replying to highlight importance." + ] + }, + "tags": [ + "communication", + "messaging", + "reply", + "automation", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"conv12345\",\"messageContent\":\"Thank you for your message. We will get back shortly.\",\"attachments\":[],\"replyToMessageId\":\"msg7890\",\"urgent\":false}", + "description": "Send a standard polite reply to a user inquiry in an existing conversation thread." + }, + { + "inputJson": "{\"recipientId\":\"user5678\",\"messageContent\":\"Please see the attached document for details.\",\"attachments\":[{\"type\":\"file\",\"filename\":\"report.pdf\",\"url\":\"https://example.com/report.pdf\"}],\"replyToMessageId\":\"\",\"urgent\":false}", + "description": "Reply to a user with an attached file without specifying a reply to message ID." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "documentation-tools.analyzeForecast", + "description": "Analyzes business forecast documents in text or structured formats by extracting key metrics, identifying trends, and summarizing forecast reliability. Input can be raw text, JSON, or Excel data. Outputs actionable insights, confidence scores, and visual summary data to support documentation and decision-making.", + "category": "documentation-tools", + "parameters": [ + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input forecast data (e.g., 'text', 'json', 'excel').", + "required": true, + "defaultValue": "" + }, + { + "name": "inputData", + "type": "string", + "description": "The raw forecast data content as a string (plain text, JSON string, or base64-encoded Excel content).", + "required": true, + "defaultValue": "" + }, + { + "name": "forecastPeriod", + "type": "object", + "description": "Optional start and end dates (ISO 8601) defining the forecast period to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence level (0-1) for highlighting trends and metrics in output.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeVisuals", + "type": "boolean", + "description": "Flag to include generated charts and graphical summaries in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "AnalysisResult object containing extracted key metrics, identified trends with confidence scores, a textual summary of forecast reliability, and optional visual/chart data encoded as base64 images." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze and document business forecast data from diverse input formats to extract key performance indicators, identify upward or downward trends, evaluate forecast confidence, and generate summarized insights with visual aids. Suitable for integrating forecast analysis into business documentation or reports.", + "limitations": "Cannot generate forecasts from raw data; only analyzes provided forecast content. Does not replace domain expert review, especially for complex financial models. Accuracy depends on input data quality and format adherence.", + "examples": [ + "Analyze this quarterly sales forecast text for key trends and confidence.", + "Summarize reliability of the provided JSON-formatted business forecast data.", + "Generate insights and visual summaries from an Excel sales forecast sheet." + ] + }, + "tags": [ + "documentation-tools", + "forecast-analysis", + "business", + "analytics", + "reporting", + "trend-extraction", + "confidence-assessment" + ], + "examples": [ + { + "inputJson": "{\"inputFormat\":\"text\",\"inputData\":\"Q1 sales expected to grow 5% based on current trends. Caution advised due to market volatility.\",\"includeVisuals\":true}", + "description": "Analyze a plain text quarterly sales forecast extracting growth and caution notes with visuals." + }, + { + "inputJson": "{\"inputFormat\":\"json\",\"inputData\":\"{\\\"period\\\":\\\"2024-Q2\\\",\\\"salesForecast\\\":200000,\\\"confidence\\\":0.8}\",\"confidenceThreshold\":0.75}", + "description": "Analyze structured JSON forecast data providing sales forecast and confidence level." + }, + { + "inputJson": "{\"inputFormat\":\"excel\",\"inputData\":\"UEsDBBQABgAIAAAAIQCj1yo8sQEAAM8FAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAACAAAAAAAA\", \"forecastPeriod\":{\"start\":\"2024-01-01\",\"end\":\"2024-03-31\"}}", + "description": "Analyze Excel file containing forecast data for Q1 2024 period with default confidence and visuals." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Forecast", + "context": null + } + }, + { + "name": "content-creation.buildSchema", + "description": "Generates a JSON Schema definition based on provided content model specifications. Accepts model name, field definitions with types and constraints, and optional metadata, then constructs a compliant JSON Schema object useful for validating JSON data structures.", + "category": "content-creation", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "Name of the content model to generate the schema for", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "Array of field definitions specifying names, data types, required status, and validation constraints", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalProperties", + "type": "boolean", + "description": "Whether to allow properties not defined in the schema", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the schema model", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON Schema object representing the structure, types, and constraints defined by the input parameters" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate JSON Schema validation documents for content objects based on dynamic field specifications, such as in CMS data models, API input validation, or enforcing data format standards.", + "limitations": "This tool does not generate schemas with advanced JSON Schema features like pattern-dependent properties or conditional subschemas requiring complex logic beyond basic field types and constraints.", + "examples": [ + "Create a schema for a 'BlogPost' with fields title (string, required), content (string), publishedAt (string, date-time).", + "Build a schema for 'UserProfile' with username (string, required), age (integer, optional), email (string, required, format: email)." + ] + }, + "tags": [ + "content-creation", + "schema-generation", + "json-schema", + "data-validation", + "content-modeling" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"BlogPost\",\"fields\":[{\"name\":\"title\",\"type\":\"string\",\"required\":true},{\"name\":\"content\",\"type\":\"string\",\"required\":false},{\"name\":\"publishedAt\",\"type\":\"string\",\"format\":\"date-time\",\"required\":false}],\"additionalProperties\":false,\"description\":\"Schema for blog post content.\"}", + "description": "Generate a JSON Schema for a blog post, with required title, optional content, and optional published date." + }, + { + "inputJson": "{\"modelName\":\"UserProfile\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true},{\"name\":\"age\",\"type\":\"integer\",\"required\":false},{\"name\":\"email\",\"type\":\"string\",\"format\":\"email\",\"required\":true}],\"additionalProperties\":false}", + "description": "Define a UserProfile schema requiring username and email with email format validation and optional age." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "content-creation.buildPipeline", + "description": "Builds a configurable content creation pipeline that orchestrates multiple processing stages such as content generation, editing, formatting, and publishing. Accepts a specification of pipeline steps and settings, then outputs a runnable pipeline configuration or script to automate content workflows.", + "category": "content-creation", + "parameters": [ + { + "name": "pipelineSteps", + "type": "array", + "description": "An ordered list of processing steps to include in the pipeline, defined by step type and parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the pipeline definition (e.g., JSON, YAML, script).", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "includeLogging", + "type": "boolean", + "description": "Whether to include detailed logging capabilities in the pipeline for debugging and audit.", + "required": false, + "defaultValue": "true" + }, + { + "name": "environmentSettings", + "type": "object", + "description": "Optional environment-specific settings such as API keys, paths, or credentials to integrate with external tools.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the pipeline configuration or executable script as a string, ready for deployment in content creation environments." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate and standardize complex content creation workflows by specifying modular processing steps, enabling repeatable, scalable content production. Ideal for agents tasked with generating, modifying, formatting, and publishing digital content in a cohesive process.", + "limitations": "Cannot execute the pipeline itself; it only builds the configuration or script. Requires external execution environment. Does not inherently validate the correctness of individual pipeline steps beyond structural checks.", + "examples": [ + "Build a pipeline that generates blog drafts, applies grammar corrections, formats to markdown, and publishes to CMS.", + "Create a content pipeline with stages for image enhancement, caption generation, and social media posting.", + "Construct a pipeline to automate multi-language content translation, review, and final approval." + ] + }, + "tags": [ + "content", + "pipeline", + "automation", + "workflow", + "content-creation", + "orchestration", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"pipelineSteps\":[{\"type\":\"generateContent\",\"parameters\":{\"topic\":\"technology trends\"}},{\"type\":\"spellCheck\",\"parameters\":{}},{\"type\":\"format\",\"parameters\":{\"style\":\"markdown\"}},{\"type\":\"publish\",\"parameters\":{\"platform\":\"wordpress\"}}],\"outputFormat\":\"JSON\",\"includeLogging\":true,\"environmentSettings\":{\"wordpressApiKey\":\"abc123\"}}", + "description": "A pipeline to generate tech blog content, check spelling, format as markdown, and publish to WordPress with logging enabled." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "content-creation.buildWorkflow", + "description": "This tool accepts a JSON object defining the steps, conditions, and triggers of a digital content creation workflow. It processes the input to construct a structured workflow configuration that can be executed or visualized by content management systems. The output is a validated workflow object with all dependencies and actions sequenced.", + "category": "content-creation", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name identifying the workflow to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An array of step objects defining each action, conditions, and outputs in the workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "An array of trigger objects that start or influence the workflow execution.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs of variables that can be used across steps in the workflow.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, the tool will only validate the workflow without building or exporting it.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured workflow object including ordered steps, triggers, variables, and validation status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate or modify automated workflows for digital content creation, such as scheduling posts, automating content approval, or triggering notifications. It is ideal for defining complex, conditional sequences of content-related tasks that an AI agent needs to configure or optimize.", + "limitations": "This tool does not execute the workflow or interface directly with content management systems; it only builds and validates workflow definitions based on the input JSON structure.", + "examples": [ + "Build a workflow named 'Weekly Blog Post' with steps for drafting, review, and publishing triggered every Monday.", + "Create a conditional workflow to send notifications on content approval or rejection.", + "Validate a proposed workflow configuration without exporting the full workflow." + ] + }, + "tags": [ + "workflow", + "content-automation", + "content-creation", + "process-builder", + "automation" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"SocialMediaCampaign\",\"steps\":[{\"id\":\"step1\",\"action\":\"createPost\",\"parameters\":{\"platform\":\"twitter\",\"content\":\"Hello world!\"}},{\"id\":\"step2\",\"action\":\"schedulePost\",\"parameters\":{\"time\":\"2024-07-01T09:00:00Z\"}},{\"id\":\"step3\",\"action\":\"notifyTeam\",\"parameters\":{\"message\":\"Post scheduled successfully\"}}],\"triggers\":[{\"type\":\"time\",\"time\":\"2024-07-01T08:00:00Z\"}],\"variables\":{\"author\":\"Alice\"},\"validateOnly\":false}", + "description": "Builds a social media campaign workflow creating and scheduling a post with a notification step." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "documentation-tools.analyzeMention", + "description": "Analyzes textual mentions within documentation or communication texts to extract context, sentiment, and relevance. Accepts input text along with optional filters to target specific keywords or user mentions. Processes the text to identify and categorize mentions, then returns detailed analysis including type of mention, sentiment score, and contextual summary.", + "category": "documentation-tools", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw text content containing mentions to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "mentionTypes", + "type": "array", + "description": "List of mention types to focus on, e.g., ['user','project','feature']. If empty, all types are analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the mentions found.", + "required": false, + "defaultValue": "true" + }, + { + "name": "contextWindow", + "type": "number", + "description": "Number of surrounding words to include as context for each mention in the analysis output.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of mention analysis entries, each with mention text, type, position indices, sentiment score (if enabled), and contextual snippet." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and understand mentions within communication or documentation texts to enrich context awareness, track references, analyze sentiment around key topics or entities, or support documentation enhancement workflows.", + "limitations": "The tool does not perform entity resolution beyond type classification and may misclassify ambiguous mentions. Sentiment analysis is general and not customized for technical jargon.", + "examples": [ + "Analyze mentions of users and projects within meeting notes to understand discussion focus.", + "Identify and summarize all feature mentions in a product documentation update.", + "Extract and sentiment-score references to stakeholders in internal communications." + ] + }, + "tags": [ + "documentation", + "analysis", + "mention", + "sentiment", + "text-processing", + "communication", + "context" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"@alice has reviewed the new API feature implementation and @bob is testing the deployment.\",\"mentionTypes\":[\"user\",\"feature\"],\"sentimentAnalysis\":true,\"contextWindow\":3}", + "description": "Analyze user and feature mentions in a project update snippet with sentiment and limited context." + }, + { + "inputJson": "{\"inputText\":\"We need to document the new login flow, and @carol will lead this effort.\",\"mentionTypes\":[\"user\"],\"sentimentAnalysis\":false,\"contextWindow\":5}", + "description": "Extract user mentions from documentation planning text without sentiment analysis." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Mention", + "context": null + } + }, + { + "name": "documentation-tools.analyzeCitation", + "description": "Analyzes academic or professional citation text to extract structured metadata and assess citation style compliance. Accepts citation string input, detects citation style (e.g., APA, MLA, Chicago), parses author names, title, publication, date, and returns structured data along with style conformity feedback.", + "category": "documentation-tools", + "parameters": [ + { + "name": "citationText", + "type": "string", + "description": "The raw citation string to analyze and parse.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedStyle", + "type": "string", + "description": "The citation style to check against (e.g., APA, MLA, Chicago). Optional, if omitted attempts to auto-detect.", + "required": false, + "defaultValue": "" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "If true, performs strict validation against citation style rules, otherwise uses lenient parsing.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing parsed citation metadata (authors, title, publication, year, etc.), detected citation style, and an array of issues or conformity notes about the citation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract structured data from text citations, verify citation style compliance in documentation, or automate citation quality checks in documents or manuscripts.", + "limitations": "Cannot verify the factual correctness of the citation content or access external databases to validate references; parsing accuracy may vary with poorly formatted or abbreviated citations.", + "examples": [ + "Analyze a bibliography entry to extract author and publication info.", + "Check if a citation string conforms to APA style requirements.", + "Auto-detect citation style and parse the components of a given citation text." + ] + }, + "tags": [ + "documentation", + "citation", + "analysis", + "parsing", + "validation", + "academic", + "style-check" + ], + "examples": [ + { + "inputJson": "{\"citationText\":\"Smith, J. (2020). Understanding AI. Journal of Tech, 12(3), 45-67.\",\"expectedStyle\":\"APA\",\"strictMode\":true}", + "description": "Parse an APA style citation string with strict compliance checking." + }, + { + "inputJson": "{\"citationText\":\"Doe, J. 'Modern Data Science', Data Press, 2019.\",\"expectedStyle\":\"MLA\",\"strictMode\":false}", + "description": "Parse an MLA style citation string with lenient parsing to extract metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Citation", + "context": null + } + }, + { + "name": "documentation-tools.downloadAttachment", + "description": "Downloads an attachment file related to a document by accepting the document identifier and attachment identifier, then retrieving the attachment file and metadata. Outputs the binary content of the attachment along with filename and MIME type information for saving or further processing.", + "category": "documentation-tools", + "parameters": [ + { + "name": "documentId", + "type": "string", + "description": "Unique identifier of the document from which to download the attachment", + "required": true, + "defaultValue": "" + }, + { + "name": "attachmentId", + "type": "string", + "description": "Unique identifier of the attachment to download", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include attachment metadata (filename, MIME type) in the output", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the attachment binary data as a base64 string, filename, and MIME type if requested" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to fetch specific attachment files linked to documentation, such as manuals, images, or supplemental resources, for display, analysis, or re-upload. It provides a direct retrieval capability based on document and attachment IDs.", + "limitations": "This tool cannot fetch attachments if the document or attachment IDs are invalid or if access permissions are insufficient. It does not perform file format conversions or virus scans on the downloaded content.", + "examples": [ + "Download the design diagram attached to document ID 'doc123' with attachment ID 'att567'.", + "Get the PDF manual attachment from a product documentation by specifying its IDs.", + "Retrieve an image attachment associated with a knowledge base article using its document and attachment IDs." + ] + }, + "tags": [ + "download", + "document", + "attachment", + "file", + "documentation", + "media" + ], + "examples": [ + { + "inputJson": "{\"documentId\":\"doc123\",\"attachmentId\":\"att567\",\"includeMetadata\":true}", + "description": "Download attachment with metadata from a specific document." + }, + { + "inputJson": "{\"documentId\":\"userGuide2024\",\"attachmentId\":\"fig3\",\"includeMetadata\":false}", + "description": "Download only the raw binary content of an image attachment without metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "Attachment", + "context": null + } + }, + { + "name": "documentation-tools.downloadHTML", + "description": "Downloads HTML documentation pages from a specified URL or list of URLs. Accepts a base URL or an array of URLs, optionally supports authentication cookies and custom headers, and saves the retrieved HTML content to a specified local folder or returns as strings. Useful for archiving, offline access, or further processing of HTML docs.", + "category": "documentation-tools", + "parameters": [ + { + "name": "urls", + "type": "array", + "description": "An array of one or more URLs to download the HTML content from.", + "required": true, + "defaultValue": "" + }, + { + "name": "saveToFolder", + "type": "string", + "description": "Local folder path where the HTML files should be saved. If empty, returns HTML content as strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileNamePrefix", + "type": "string", + "description": "Optional prefix added to each saved HTML file's name to avoid naming conflicts.", + "required": false, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional dictionary of HTTP headers (key-value pairs) to include in the download requests, e.g., User-Agent, Authorization.", + "required": false, + "defaultValue": "" + }, + { + "name": "cookies", + "type": "string", + "description": "Optional string of cookies to include in the request headers for authentication or session purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with keys being URLs and values being either the saved file path (if saveToFolder is specified) or the HTML content string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve complete HTML documentation pages for backup, offline access, parsing, or integration into other tools. It is helpful when documentation is hosted online but needs to be archived or analyzed locally.", + "limitations": "This tool cannot render JavaScript-generated dynamic content; it only downloads the raw HTML returned in the HTTP response. It also cannot handle login flows except via passing cookies manually.", + "examples": [ + "Download a list of API doc pages by URLs and save them locally with a prefix.", + "Fetch a single documentation page HTML as a string without saving.", + "Download HTML docs from a URL requiring passing authentication cookies." + ] + }, + "tags": [ + "documentation", + "download", + "html", + "offline-access", + "web-scraping", + "archiving" + ], + "examples": [ + { + "inputJson": "{\"urls\":[\"https://example.com/docs/index.html\"],\"saveToFolder\":\"./savedDocs\",\"fileNamePrefix\":\"example_\"}", + "description": "Download the HTML content of the example documentation main page and save it locally with 'example_' prefix." + }, + { + "inputJson": "{\"urls\":[\"https://docs.mylib.com/usage.html\"]}", + "description": "Fetch the HTML content of a single documentation page and return as a string without saving." + }, + { + "inputJson": "{\"urls\":[\"https://securedocs.site/manual.html\"],\"cookies\":\"sessionid=abc123; userid=42\"}", + "description": "Download a secured documentation page HTML by passing necessary authentication cookies." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "HTML", + "context": null + } + }, + { + "name": "documentation-tools.uploadHTML", + "description": "Uploads HTML content or files to a documentation hosting service or content management system. Accepts raw HTML strings or file paths and metadata such as title and tags. Processes and validates the HTML, then stores it, returning a confirmation with URLs and upload status.", + "category": "documentation-tools", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to upload. Either this or 'filePath' must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local path to an HTML file to upload. Either this or 'htmlContent' must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "A title for the HTML document being uploaded, used for display or indexing.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Tags to categorize or label the uploaded HTML content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "publish", + "type": "boolean", + "description": "Whether to immediately publish the uploaded HTML document or keep it in draft mode.", + "required": false, + "defaultValue": "true" + }, + { + "name": "destination", + "type": "string", + "description": "The target location or CMS section to upload the HTML content to (e.g., 'docs-site', 'internal-wiki').", + "required": false, + "defaultValue": "docs-site" + } + ], + "returns": { + "type": "object", + "description": "Returns upload status including success boolean, assigned document URL, and any validation warnings or errors." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload or update HTML documentation content to a hosting platform or CMS. It helps automate documentation deployment pipelines or enable AI-driven content updates.", + "limitations": "This tool does not perform HTML authoring or editing and cannot fix HTML syntax errors beyond basic validation. It also cannot publish to arbitrary third-party platforms without integration support.", + "examples": [ + "Upload a generated HTML report to the docs site with a specific title and tags.", + "Publish an HTML help page file located on disk to the internal wiki section.", + "Update an existing HTML documentation fragment by uploading new HTML content and marking it as draft." + ] + }, + "tags": [ + "upload", + "html", + "documentation", + "cms", + "content-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

API Guide

Version 1.2

\",\"title\":\"API_guide_v1.2\",\"tags\":[\"api\",\"guide\"],\"publish\":true,\"destination\":\"docs-site\"}", + "description": "Upload raw HTML string as a published document titled 'API_guide_v1.2' on the docs site." + }, + { + "inputJson": "{\"filePath\":\"/home/user/docs/help_page.html\",\"title\":\"Help Page\",\"tags\":[\"user-guide\",\"help\"],\"publish\":false,\"destination\":\"internal-wiki\"}", + "description": "Upload an HTML file from disk as a draft document in the internal wiki section." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "HTML", + "context": null + } + }, + { + "name": "documentation-tools.buildDependency", + "description": "This tool accepts a codebase or a project manifest as input and analyzes the dependencies between code modules or packages. It processes dependency declarations, resolves version constraints, and builds a structured dependency graph suitable for integration into documentation systems, helping maintainers visualize and update dependency relationships accurately.", + "category": "documentation-tools", + "parameters": [ + { + "name": "codebasePath", + "type": "string", + "description": "File system path to the root directory of the codebase or project to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "manifestFile", + "type": "string", + "description": "Filename of the project manifest file that lists dependencies (e.g., package.json, pom.xml).", + "required": false, + "defaultValue": "package.json" + }, + { + "name": "includeDevDependencies", + "type": "boolean", + "description": "Flag to include development or test dependencies in the dependency graph.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated dependency graph output (e.g., 'json', 'dot', 'markdown').", + "required": false, + "defaultValue": "json" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth of dependencies to traverse from the root project to limit graph size.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing a dependency graph representation in the specified output format, including nodes as modules/packages and edges as dependency relations, plus optional metadata like version conflicts and circular dependencies." + }, + "aiAgent": { + "useCase": "Use this tool when generating or updating project documentation that requires a clear and accurate visualization of module or package dependencies. Ideal for maintaining comprehensive developer docs, onboarding materials, or auditing dependencies over time.", + "limitations": "Does not perform vulnerability scanning or automatic dependency resolution beyond static analysis; complex dynamic dependencies may not be fully captured.", + "examples": [ + "Generate a JSON dependency graph of all runtime dependencies in the backend codebase located at './services/api'.", + "Create a markdown formatted dependency tree including dev dependencies for the frontend React app at './webapp'.", + "Build a dot file visualizing dependencies up to 3 levels deep using the pom.xml file in a Java project directory." + ] + }, + "tags": [ + "documentation", + "dependency", + "analysis", + "graph", + "codebase", + "visualization", + "package", + "module" + ], + "examples": [ + { + "inputJson": "{ \"codebasePath\": \"/projects/myapp\", \"manifestFile\": \"package.json\", \"includeDevDependencies\": false, \"outputFormat\": \"json\", \"maxDepth\": 3 }", + "description": "Generate a JSON dependency graph for the production dependencies of a Node.js app located at /projects/myapp, traversing up to 3 levels deep." + }, + { + "inputJson": "{ \"codebasePath\": \"/repos/java-service\", \"manifestFile\": \"pom.xml\", \"includeDevDependencies\": true, \"outputFormat\": \"dot\", \"maxDepth\": 5 }", + "description": "Build a DOT format dependency graph for a Java service including both production and development dependencies, for visualization with Graphviz." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Dependency", + "context": null + } + }, + { + "name": "documentation-tools.sendChannel", + "description": "This tool sends a formatted documentation update message to a specified communication channel such as Slack, Microsoft Teams, or an email distribution list. It accepts inputs including the channel type and identifier, message content, optional attachments, and authentication tokens. It processes these inputs to format and deliver the message, then returns the status of the delivery attempt.", + "category": "documentation-tools", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "The type of communication channel to send the message to (e.g., 'slack', 'teams', 'email').", + "required": true, + "defaultValue": "" + }, + { + "name": "channelId", + "type": "string", + "description": "The unique identifier or address of the target channel or recipient (e.g., Slack channel ID, Teams channel ID, or email address).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The main textual content of the documentation update message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of file attachment objects containing URLs or base64 data to be included with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key required to authorize sending messages to the specified channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Optional message format such as 'markdown', 'html', or 'plaintext' to define how the message content should be rendered.", + "required": false, + "defaultValue": "plaintext" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level for the message (e.g., 'normal', 'high').", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "Object indicating the success status, message ID if sent successfully, and error message if any failure occurred." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate sending documentation updates or notifications to different communication platforms, ensuring consistent communication of changes to team members or stakeholders via Slack, Teams, email, or similar channels. It is ideal for integrating documentation workflows with communication tools.", + "limitations": "This tool cannot handle two-way conversation or receive messages; it only sends messages. It depends on valid authentication tokens and channel identifiers; invalid credentials or IDs will cause failure. It cannot create or edit documentation itself, only send prepared messages.", + "examples": [ + "Send a new changelog summary to the development team's Slack channel.", + "Notify the QA team via Microsoft Teams about updated API documentation.", + "Email the newsletter list about the latest product manual revision." + ] + }, + "tags": [ + "documentation", + "communication", + "notification", + "messaging", + "channels", + "automation" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"slack\",\"channelId\":\"C1234567890\",\"messageContent\":\"Documentation updated: Please review the latest API changes.\",\"authToken\":\"xoxb-1234abcd5678efgh\",\"format\":\"markdown\",\"priority\":\"normal\"}", + "description": "Send a changelog notification to a Slack channel with markdown formatting." + }, + { + "inputJson": "{\"channelType\":\"email\",\"channelId\":\"teamqa@example.com\",\"messageContent\":\"QA team, the testing guidelines document has been revised. See attachment for details.\",\"attachments\":[{\"name\":\"testing-guidelines.pdf\",\"url\":\"https://docs.example.com/testing-guidelines.pdf\"}],\"authToken\":\"email-api-key-9876\",\"format\":\"plaintext\"}", + "description": "Send an email to QA team with an attached PDF update." + }, + { + "inputJson": "{\"channelType\":\"teams\",\"channelId\":\"19:teamchannelid@thread.tacv2\",\"messageContent\":\"API documentation has been updated with new endpoints.\",\"authToken\":\"teams-auth-token\",\"format\":\"html\",\"priority\":\"high\"}", + "description": "Send a high priority HTML message to a Microsoft Teams channel." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "documentation-tools.downloadXML", + "description": "Downloads XML documentation files from a specified URL or repository path, optionally applying authentication and filtering by XML node or schema. Returns the raw XML content or stores it locally as requested.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL or server path where the XML documentation resides to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "An optional authentication token or API key to access secured resources.", + "required": false, + "defaultValue": "" + }, + { + "name": "filterXPath", + "type": "string", + "description": "Optional XPath expression to filter or extract specific nodes from the XML document during download.", + "required": false, + "defaultValue": "" + }, + { + "name": "saveLocally", + "type": "boolean", + "description": "Flag indicating whether to save the downloaded XML content to a local file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "localFilePath", + "type": "string", + "description": "If saveLocally is true, specifies the path where to save the XML file locally.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum number of seconds to wait before timing out the download request.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded XML content as a string, and status metadata indicating success or failure along with an optional local file path if saved." + }, + "aiAgent": { + "useCase": "Use documentation-tools.downloadXML when you need to programmatically retrieve XML-format documentation or data files from remote repositories or URLs, especially if filtering or authentication is required. This is useful for automated documentation synchronization or analysis pipelines.", + "limitations": "This tool cannot parse or transform XML beyond basic XPath filtering, nor does it validate XML schema compliance. Large XML files may cause performance issues due to in-memory handling.", + "examples": [ + "Download XML API docs from a secured server using a token.", + "Retrieve and save a filtered subset of XML documentation matching a given XPath.", + "Fetch an XML configuration file with no authentication and handle timeout." + ] + }, + "tags": [ + "documentation", + "download", + "XML", + "automation", + "filtering", + "network", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://docs.example.com/api/v1/spec.xml\",\"authenticationToken\":\"Bearer abc123xyz\",\"filterXPath\":\"/api/endpoints/endpoint\",\"saveLocally\":true,\"localFilePath\":\"./api_spec_filtered.xml\",\"timeoutSeconds\":15}", + "description": "Download an API specification XML file from a secure URL, filter to only endpoint nodes and save locally." + }, + { + "inputJson": "{\"sourceUrl\":\"https://publicdocs.example.com/config.xml\",\"saveLocally\":false}", + "description": "Download a public XML configuration file without authentication and return content only." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "download", + "object": "XML", + "context": null + } + }, + { + "name": "documentation-tools.uploadXML", + "description": "Uploads an XML document to a documentation management system. Accepts XML content as a string or file path, validates the XML structure if requested, and stores it into a target repository or endpoint. Returns a confirmation with upload status and any validation messages.", + "category": "documentation-tools", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "The XML content as a string to be uploaded. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Path to the XML file to upload. Required if xmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetRepository", + "type": "string", + "description": "Identifier or URL of the documentation repository or system where XML should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateXml", + "type": "boolean", + "description": "Whether to perform XML schema validation before upload. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing document with the same ID if it exists in the repository. Default is false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata to associate with the uploaded XML document, such as author or tags.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload result status, including success flag, messages about validation or errors, and the document ID or URL in the repository." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to save or update XML-based documentation artifacts into a centralized management system. Ideal for scenarios involving automated document update workflows, validation before upload, and attaching metadata for tracking. It assists in maintaining documentation sets programmatically.", + "limitations": "This tool does not parse or modify XML content beyond validation; it cannot transform XML or handle other formats. It relies on external repository connectivity and permissions which must be managed separately.", + "examples": [ + "Upload an XML schema file to the docs repository and validate it before storing.", + "Save an XML API specification string directly into a version-controlled system, overwriting the previous entry.", + "Attach metadata and upload a help document in XML format without validation." + ] + }, + "tags": [ + "documentation", + "upload", + "XML", + "validation", + "repository", + "automation" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"API Guide\",\"targetRepository\":\"https://docs.example.com/api\",\"validateXml\":true,\"overwriteExisting\":true,\"metadata\":{\"author\":\"Jane Doe\",\"version\":\"1.2\"}}", + "description": "Upload XML content string to a web-based documentation repository with validation and overwrite enabled, adding author metadata." + }, + { + "inputJson": "{\"filePath\":\"/home/user/docs/manual.xml\",\"targetRepository\":\"internalDocServer\",\"validateXml\":false}", + "description": "Upload an XML file from disk to an internal documentation server without prior validation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "XML", + "context": null + } + }, + { + "name": "documentation-tools.uploadAttachment", + "description": "Uploads a media attachment file to a specified documentation page section. Accepts file content as a base64-encoded string along with metadata such as the target documentation ID, section identifier, filename, and MIME type. Processes the file by storing it securely and associates it with the documentation for future reference or display. Returns confirmation and the attachment URL.", + "category": "documentation-tools", + "parameters": [ + { + "name": "documentationId", + "type": "string", + "description": "Unique identifier of the documentation page or article where the attachment will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "sectionId", + "type": "string", + "description": "Identifier of the specific section or subsection within the documentation to attach the file to.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Original name or desired name of the attachment file including extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "The attachment file content encoded as a Base64 string.", + "required": true, + "defaultValue": "" + }, + { + "name": "mimeType", + "type": "string", + "description": "MIME type of the file (e.g., 'image/png', 'application/pdf') to validate and handle the file correctly.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional short description or caption for the attachment to provide context within documentation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the attachment ID, accessible URL, and upload status message." + }, + "aiAgent": { + "useCase": "Use this tool when documentation content needs to be enriched by uploading supplementary media like images, screenshots, diagrams, or PDFs tied to a specific documentation page or section. Ideal for automating documentation enhancements involving media attachments during build or edit workflows.", + "limitations": "Does not perform virus scanning or advanced validation on file content. Does not support extremely large files beyond typical documentation use cases. Attachment storage is subject to underlying platform storage limits and policies.", + "examples": [ + "Upload a screenshot image to the 'Getting Started' section of the user guide.", + "Attach a PDF datasheet to the hardware specification page.", + "Add an explanatory diagram image with caption to the troubleshooting section." + ] + }, + "tags": [ + "upload", + "attachment", + "documentation", + "media", + "file", + "documentation-tools" + ], + "examples": [ + { + "inputJson": "{\"documentationId\":\"doc123\",\"sectionId\":\"sec456\",\"fileName\":\"architecture_diagram.png\",\"fileContentBase64\":\"iVBORw0KGgoAAAANSUhEUgAAA...\",\"mimeType\":\"image/png\",\"description\":\"System architecture overview diagram.\"}", + "description": "Upload a PNG image diagram to a specific section of documentation with an explanatory description." + }, + { + "inputJson": "{\"documentationId\":\"userguide001\",\"fileName\":\"manual.pdf\",\"fileContentBase64\":\"JVBERi0xLjQKJcfs...\",\"mimeType\":\"application/pdf\"}", + "description": "Attach a PDF manual to the root documentation page without specifying a section." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "upload", + "object": "Attachment", + "context": null + } + }, + { + "name": "data-analytics.formatTable", + "description": "Formats tabular data by applying styles and alignment rules. Accepts an array of objects or arrays representing rows and columns, processes field formatting (e.g., number precision, date formats), and outputs a consistently styled table as a JSON structure or formatted text for display or reporting.", + "category": "data-analytics", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "The tabular data to format, provided as an array of objects or arrays representing rows.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnFormats", + "type": "object", + "description": "An object specifying formatting rules for columns, e.g., number precision, date formats, text uppercase.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment for columns: 'left', 'center', or 'right'. Default is 'left'.", + "required": false, + "defaultValue": "\"left\"" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Flag to include header row in output formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The output format of the formatted table: 'json' for structured data or 'text' for plain formatted string.", + "required": false, + "defaultValue": "\"json\"" + } + ], + "returns": { + "type": "object", + "description": "A formatted table either as a JSON structure with applied styles or a text block string suitable for display, depending on outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when you need to normalize, style, or format raw tabular datasets before visualization, reporting, or downstream processing. It helps standardize number precision, align columns uniformly, and optionally produce a display-ready text table or a structured JSON format with formatting metadata.", + "limitations": "Does not perform data validation, filtering, or advanced analytics beyond formatting. It expects well-structured table data input and does not infer data types automatically.", + "examples": [ + "Format sales data with two decimals precision in numbers and right-aligned numeric columns.", + "Create a text-formatted sales report table with centered headers.", + "Format JSON table data with date fields formatted as 'YYYY-MM-DD'." + ] + }, + "tags": [ + "formatting", + "table", + "data-analytics", + "visualization", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"Product\":\"A\",\"Price\":12.3456,\"Date\":\"2023-06-15\"},{\"Product\":\"B\",\"Price\":7.89,\"Date\":\"2023-06-16\"}],\"columnFormats\":{\"Price\":{\"type\":\"number\",\"precision\":2},\"Date\":{\"type\":\"date\",\"format\":\"YYYY-MM-DD\"}},\"alignment\":\"right\",\"includeHeaders\":true,\"outputFormat\":\"json\"}", + "description": "Format price with 2 decimals, date as YYYY-MM-DD, right align all columns, output as JSON." + }, + { + "inputJson": "{\"tableData\":[[\"Name\",\"Score\"],[\"Alice\",87.456],[\"Bob\",91.2]],\"alignment\":\"center\",\"includeHeaders\":true,\"outputFormat\":\"text\"}", + "description": "Center align and output a simple text table with headers." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "data-analytics.renderSentence", + "description": "Renders a given sentence with configurable styling and highlights for data analytics reports or visual presentations. Accepts a sentence string and optional styling parameters such as font size, color, emphasis on specific words, and alignment. Outputs a styled HTML snippet ready for integration in web-based dashboards or reports.", + "category": "data-analytics", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The sentence text to render visually.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "string", + "description": "Font size CSS value (e.g., '14px', '1.2em') to style the sentence text.", + "required": false, + "defaultValue": "14px" + }, + { + "name": "fontColor", + "type": "string", + "description": "CSS color value (name, HEX, RGB) to apply to the sentence text.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "highlightWords", + "type": "array", + "description": "List of words or phrases to highlight within the sentence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "highlightColor", + "type": "string", + "description": "CSS color value used to highlight the specified words.", + "required": false, + "defaultValue": "#ff0000" + }, + { + "name": "textAlign", + "type": "string", + "description": "Text alignment for the sentence: 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "fontWeight", + "type": "string", + "description": "CSS font-weight value (e.g., 'normal', 'bold', '400') to style the sentence.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the renderedSentence as an HTML string with applied styles and highlights, suitable for embedding in web content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically render and style sentences in data analytics dashboards, reports, or visualizations. It simplifies applying consistent formatting, highlights key terms, and generates HTML snippet outputs for web integration.", + "limitations": "This tool only renders single sentences with basic styling and highlights. It does not support complex rich text formatting, multiple paragraphs, or interactive components.", + "examples": [ + "Render the sentence 'Total sales increased by 15% in Q1' with the words '15%' highlighted in red and bold font.", + "Display the summary sentence aligned center with a larger font size for better emphasis.", + "Highlight multiple key terms in a sentence to draw user attention in a report." + ] + }, + "tags": [ + "rendering", + "sentence", + "visualization", + "text-styling", + "highlighting", + "data-analytics" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"Revenue reached 10 million USD in 2023.\",\"fontSize\":\"16px\",\"fontColor\":\"#2A9D8F\",\"highlightWords\":[\"10 million USD\"],\"highlightColor\":\"#E76F51\",\"textAlign\":\"center\",\"fontWeight\":\"bold\"}", + "description": "Render a financial summary sentence with key revenue figure highlighted in coral color, bold text, and centered alignment." + }, + { + "inputJson": "{\"sentence\":\"Customer satisfaction improved dramatically.\",\"fontSize\":\"14px\",\"fontColor\":\"#264653\",\"highlightWords\":[],\"textAlign\":\"left\",\"fontWeight\":\"normal\"}", + "description": "Render a simple statement with default style, no highlights, left-aligned." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "data-analytics.formatLink", + "description": "Formats a raw URL string into a user-friendly hyperlink with customizable display text, tooltip, and target attributes. Accepts a plain URL and optional parameters to generate HTML anchor tags or markdown links, facilitating better presentation and usability of links in data reports or analytics dashboards.", + "category": "data-analytics", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The raw URL string that needs to be formatted as a hyperlink.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "Optional text to display instead of the raw URL. If empty, the URL itself will be shown.", + "required": false, + "defaultValue": "" + }, + { + "name": "tooltip", + "type": "string", + "description": "Optional tooltip text displayed on mouse hover over the link.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Whether the link should open in a new browser tab or window. Default is false (same tab).", + "required": false, + "defaultValue": "false" + }, + { + "name": "linkFormat", + "type": "string", + "description": "Format of the output link: 'html' for an anchor tag or 'markdown' for markdown style link. Defaults to 'html'.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted link string in the specified format." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw URL data you want to present nicely within analytic reports, dashboards, or markdown documentation, making links readable and user-friendly with optional tooltips and target options. It supports outputting in HTML anchor or markdown format to suit the environment where the links are displayed.", + "limitations": "Cannot verify the validity or safety of URLs. Does not fetch or analyze the content behind the links. It only formats the URL into clickable text.", + "examples": [ + "Format a URL https://example.com with display text 'Example Site' opening in a new tab as an HTML link.", + "Create a markdown-formatted link from https://data.com with no display text and a tooltip.", + "Format a raw URL https://openai.com with default display and no tooltip in HTML." + ] + }, + "tags": [ + "formatting", + "hyperlink", + "url", + "presentation", + "data-analytics", + "html", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"Example Site\",\"tooltip\":\"Go to Example\",\"openInNewTab\":true,\"linkFormat\":\"html\"}", + "description": "Formats a URL with custom display text, tooltip, opening in a new tab, in HTML anchor format." + }, + { + "inputJson": "{\"url\":\"https://data.com\",\"linkFormat\":\"markdown\"}", + "description": "Formats a URL as a markdown link with the URL as display text and no tooltip." + }, + { + "inputJson": "{\"url\":\"https://openai.com\",\"displayText\":\"\",\"openInNewTab\":false,\"linkFormat\":\"html\"}", + "description": "Formats a raw URL with no display text and default target as an HTML anchor link." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "data-analytics.formatQuery", + "description": "Formats SQL queries to improve readability and maintain consistent style. Accepts a raw SQL query string and options for indentation, keyword casing, and line breaks; returns a formatted SQL query string ready for use in data analytics or databases.", + "category": "data-analytics", + "parameters": [ + { + "name": "sqlQuery", + "type": "string", + "description": "The raw SQL query string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted query.", + "required": false, + "defaultValue": "4" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "Whether to format SQL keywords (e.g., SELECT, WHERE) in uppercase.", + "required": false, + "defaultValue": "true" + }, + { + "name": "newlineBeforeClauses", + "type": "array", + "description": "Array of SQL clause keywords before which to insert newlines for readability (e.g., ['FROM', 'WHERE', 'GROUP BY']).", + "required": false, + "defaultValue": "[\"FROM\", \"WHERE\", \"GROUP BY\", \"ORDER BY\"]" + } + ], + "returns": { + "type": "string", + "description": "The formatted SQL query string with applied styling preferences for readability and standardization." + }, + "aiAgent": { + "useCase": "Use this tool to improve the readability of raw or poorly formatted SQL queries before analysis, debugging, or presentation. It helps enforce style consistency across query codebases, making queries easier to understand and maintain in data analytics workflows.", + "limitations": "Cannot interpret or validate SQL semantics or logic; only formats query syntax. Complex dialect-specific formatting may not be fully supported.", + "examples": [ + "Format a raw SQL query string to have uppercase keywords and 2 spaces indentation.", + "Format a SQL query with lowercase keywords and add newlines before specific clauses for clear separation." + ] + }, + "tags": [ + "data-analytics", + "sql", + "formatting", + "query", + "code-style", + "readability" + ], + "examples": [ + { + "inputJson": "{\"sqlQuery\":\"select id,name from users where age>30 order by name desc;\",\"indentation\":2,\"uppercaseKeywords\":true,\"newlineBeforeClauses\":[\"FROM\",\"WHERE\",\"ORDER BY\"]}", + "description": "Format SQL query with 2-space indent, uppercase keywords, and newlines before FROM, WHERE, and ORDER BY clauses." + }, + { + "inputJson": "{\"sqlQuery\":\"select * from sales where region='west' group by category;\",\"indentation\":4,\"uppercaseKeywords\":false,\"newlineBeforeClauses\":[\"GROUP BY\"]}", + "description": "Format SQL query with 4-space indent, lowercase keywords, and newline before GROUP BY clause." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "data-analytics.renderSummary", + "description": "This tool accepts structured data (in JSON or CSV string format) and generates a concise summary report highlighting key statistical measures such as mean, median, mode, and frequency distributions. It can optionally visualize distributions using simple charts. The output is a clear textual summary designed for quick insights.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "string", + "description": "Input dataset in JSON array or CSV string format containing records to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data; accepted values: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "fields", + "type": "array", + "description": "List of field names to include in the summary; if empty, all numeric fields are summarized.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to include simple textual visualizations (e.g., histograms) in the summary output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary text in characters to keep output concise.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing a textual summary with statistical insights for the specified fields, and optionally visualization data in string format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide a quick, human-readable statistical summary of tabular data inputs, extracting key insights without requiring full data analysis or visualization software. Useful for summarizing user data uploads or API responses on the fly.", + "limitations": "This tool does not perform deep statistical analysis like correlation or regression and is not suited for very large datasets due to summarization limits. Complex visualizations and interactive charts are not generated.", + "examples": [ + "Generate a summary report from JSON sales data highlighting revenue and quantity fields.", + "Provide a quick statistical overview for uploaded CSV customer survey results.", + "Output a brief textual summary including mean, median, and mode for numeric user metrics JSON input." + ] + }, + "tags": [ + "data-analytics", + "summary", + "statistics", + "reporting", + "visualization", + "data-insights" + ], + "examples": [ + { + "inputJson": "{\"data\":\"[{\\\"age\\\":30,\\\"salary\\\":50000},{\\\"age\\\":40,\\\"salary\\\":60000},{\\\"age\\\":35,\\\"salary\\\":55000}]\",\"dataFormat\":\"json\",\"fields\":[\"age\",\"salary\"],\"includeVisualizations\":true,\"maxSummaryLength\":500}", + "description": "Summarize age and salary fields from a small JSON dataset with visualizations included." + }, + { + "inputJson": "{\"data\":\"age,salary\\n30,50000\\n40,60000\\n35,55000\",\"dataFormat\":\"csv\",\"fields\":[\"age\"],\"includeVisualizations\":false,\"maxSummaryLength\":300}", + "description": "Summarize only the age field from a small CSV dataset without visualizations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "data-analytics.draftParagraph", + "description": "This tool accepts structured data insights and metadata as input, analyzes key trends and highlights, then generates a clear, concise paragraph summarizing the main findings for reporting or presentation purposes. Output is a well-written textual summary suitable for business or technical audiences.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataInsights", + "type": "object", + "description": "Structured object containing analyzed data metrics, trends, or summary statistics to base the paragraph on.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Additional contextual information or focus area to shape the summary tone and content, e.g., sales, marketing, or product analytics.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the paragraph, such as 'executives', 'analysts', or 'general public', to adjust complexity and style.", + "required": false, + "defaultValue": "general public" + }, + { + "name": "paragraphLength", + "type": "number", + "description": "Approximate number of sentences or length of the paragraph to generate, balancing brevity and detail.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary paragraph string under the 'summary' field." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert complex numeric or categorical data insights into a readable, natural language summary paragraph for reports, dashboards, or presentations where clear communication of data-driven conclusions is essential.", + "limitations": "Cannot generate visualizations, replace expert domain interpretation, or handle raw unprocessed data. Quality depends on input data clarity and structure.", + "examples": [ + "Generate a 4-sentence summary paragraph describing monthly sales performance trends for the executive team.", + "Draft a concise paragraph highlighting product usage insights for a marketing report.", + "Summarize key data points of customer satisfaction metrics into a general summary paragraph." + ] + }, + "tags": [ + "summary", + "data insights", + "natural language generation", + "reporting", + "analytics", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"dataInsights\":{\"totalSales\":1000000,\"growthRate\":0.05,\"topRegion\":\"North America\",\"customerSatisfaction\":4.5},\"context\":\"sales performance\",\"targetAudience\":\"executives\",\"paragraphLength\":4}", + "description": "Summarize key sales performance metrics for an executive summary." + }, + { + "inputJson": "{\"dataInsights\":{\"dailyActiveUsers\":50000,\"retentionRate\":0.65,\"newUsers\":10000},\"context\":\"product usage\",\"targetAudience\":\"marketing\",\"paragraphLength\":5}", + "description": "Generate paragraph summarizing product usage statistics for marketing." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "data-analytics.draftSentence", + "description": "This tool accepts an object containing statistical data insights such as trends, comparisons, or summary statistics combined with a specified tone and audience context. It processes the data to draft clear, concise, and context-appropriate English sentences that describe or interpret the analytical findings. The output is a single coherent sentence suitable for inclusion in reports or presentations.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataInsight", + "type": "object", + "description": "An object representing key statistical insights or metrics to be described, such as trend directions, values, and comparative results.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the sentence, e.g., 'formal', 'informal', 'neutral', or 'persuasive'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "audience", + "type": "string", + "description": "Target audience type influencing language complexity and style, e.g., 'expert', 'general', or 'stakeholder'.", + "required": false, + "defaultValue": "general" + }, + { + "name": "context", + "type": "string", + "description": "Brief description of the domain or report context to tailor the sentence accordingly.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted sentence string that clearly conveys the insights from the data in the requested tone and style." + }, + "aiAgent": { + "useCase": "Use this tool when you have processed data insights or summarized statistics from an analytics pipeline and need to convert them into a natural language sentence for reports or presentations. It helps articulate numerical or comparative results succinctly and clearly for different audience types and tones.", + "limitations": "This tool cannot generate multi-sentence paragraphs or detailed explanations beyond a single summarized sentence. It depends on well-formed input data insights and cannot infer missing statistical context.", + "examples": [ + "Draft a formal sentence explaining that sales rose by 15% compared to the previous quarter for an expert audience.", + "Generate a neutral sentence for a general audience summarizing that customer satisfaction dropped slightly last month.", + "Create an informal persuasive sentence highlighting that product usage doubled since launch for stakeholders." + ] + }, + "tags": [ + "data-analytics", + "nlp", + "reporting", + "insights", + "sentence-generation", + "summary" + ], + "examples": [ + { + "inputJson": "{\"dataInsight\":{\"metric\":\"sales growth\",\"value\":15,\"comparison\":\"previous quarter\",\"trend\":\"increase\"},\"tone\":\"formal\",\"audience\":\"expert\",\"context\":\"quarterly financial report\"}", + "description": "Draft a formal sentence detailing a 15% sales increase vs the previous quarter for experts." + }, + { + "inputJson": "{\"dataInsight\":{\"metric\":\"customer satisfaction\",\"value\":-3,\"comparison\":\"last month\",\"trend\":\"decrease\"},\"tone\":\"neutral\",\"audience\":\"general\",\"context\":\"monthly review\"}", + "description": "Create a neutral sentence summarizing a slight drop in customer satisfaction for a general audience." + }, + { + "inputJson": "{\"dataInsight\":{\"metric\":\"product usage\",\"value\":100,\"comparison\":\"launch period\",\"trend\":\"doubling\"},\"tone\":\"informal\",\"audience\":\"stakeholder\",\"context\":\"marketing update\"}", + "description": "Generate an informal, persuasive sentence about product usage doubling since launch for stakeholders." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Sentence", + "context": null + } + }, + { + "name": "data-analytics.draftSummary", + "description": "Generates a concise textual summary from structured data input, highlighting key statistics, trends, and insights. Accepts JSON or CSV formatted data and optional parameters to customize summary length and focus areas. Produces a clear, human-readable summary report suitable for quick understanding of dataset highlights.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "string", + "description": "Raw dataset in JSON string or CSV format to analyze and summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data. Supported values: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "summaryLength", + "type": "string", + "description": "Desired length of the summary; options include 'short', 'medium', or 'long'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "focusMetrics", + "type": "array", + "description": "List of specific metric names or fields to emphasize in the summary. If empty, all key metrics are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeVisualInsights", + "type": "boolean", + "description": "Whether to include descriptive insights related to chartable trends (no charts produced, text only).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summaryText as a string that describes important data insights and a summaryStats object with key extracted values." + }, + "aiAgent": { + "useCase": "Use this tool when a concise, natural-language summary of numeric or categorical datasets is required to quickly understand the dataset's main patterns and highlights without manual report writing. Ideal for dashboards, automated reporting, or generating briefing notes from raw data.", + "limitations": "Cannot create actual visual graphics or interactive elements; quality depends on data cleanliness and structure; may not capture deep domain-specific nuances without explicit focus parameters.", + "examples": [ + "Summarize sales data JSON focusing on revenue and units sold trends.", + "Generate a short report from monthly CSV customer feedback scores.", + "Draft a medium-length summary highlighting anomalies in product performance JSON data." + ] + }, + "tags": [ + "summary", + "data-insights", + "natural-language", + "reporting", + "analytics", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"data\":\"[{\\\"month\\\":\\\"Jan\\\",\\\"sales\\\":1000,\\\"profit\\\":200},{\\\"month\\\":\\\"Feb\\\",\\\"sales\\\":1100,\\\"profit\\\":220}]\",\"dataFormat\":\"json\",\"summaryLength\":\"short\",\"focusMetrics\":[\"sales\",\"profit\"],\"includeVisualInsights\":true}", + "description": "Generate a short summary for monthly sales and profit data including trend insights." + }, + { + "inputJson": "{\"data\":\"month,satisfaction\\nJan,80\\nFeb,85\\nMar,78\",\"dataFormat\":\"csv\",\"summaryLength\":\"medium\",\"focusMetrics\":[],\"includeVisualInsights\":false}", + "description": "Create a medium-length summary from customer satisfaction CSV data with default focus on all metrics." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "data-analytics.generateQuote", + "description": "Generates insightful and motivational quotes based on input data topics or keywords. Accepting an array of keywords or themes, it processes these to produce relevant quotes that can aid in presentations, reports, or data storytelling. Outputs a text quote emphasizing data-driven insight or inspiration.", + "category": "data-analytics", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "A list of keywords or themes to guide the quote generation relevant to data analytics or the given topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'es') in which the quote should be generated.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated quote in characters to fit space constraints.", + "required": false, + "defaultValue": "140" + }, + { + "name": "includeSource", + "type": "boolean", + "description": "Whether to include attribution to known authors if applicable or generate original quotes only.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text and optional attribution source." + }, + "aiAgent": { + "useCase": "Use this tool when needing a concise, motivational or insightful quote related to data analytics themes for enhancing presentations, dashboards, or reports to improve engagement and storytelling. It helps integrate thematic wisdom or inspiration directly tied to provided keywords or topics.", + "limitations": "It cannot guarantee fully original quotes if includeSource is true, nor verify authenticity of quotes. Generated content may be generic and should be reviewed for context alignment.", + "examples": [ + "Generate a quote about 'big data' and 'innovation' in English.", + "Create a short motivational quote about 'data visualization' in Spanish.", + "Produce a 100 character quote about 'machine learning' without author attribution." + ] + }, + "tags": [ + "data", + "analytics", + "quote", + "generate", + "motivation", + "insight", + "storytelling" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"Big Data\",\"Innovation\"],\"language\":\"en\",\"maxLength\":140,\"includeSource\":true}", + "description": "Generate an English motivational quote about Big Data and Innovation, max 140 characters, including attribution if available." + }, + { + "inputJson": "{\"keywords\":[\"Data Visualization\"],\"language\":\"es\",\"maxLength\":100,\"includeSource\":false}", + "description": "Generate a Spanish short quote about Data Visualization without attribution, max length 100." + }, + { + "inputJson": "{\"keywords\":[\"Machine Learning\"],\"includeSource\":false}", + "description": "Generate a default length quote in English about Machine Learning without author attribution." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "data-analytics.generateTemplate", + "description": "Generates customizable data analysis report templates based on specified data fields and visualization types. Accepts input parameters defining report sections, chart types, and data sources, then produces a ready-to-use document template for generating consistent and professional data reports.", + "category": "data-analytics", + "parameters": [ + { + "name": "templateName", + "type": "string", + "description": "The name of the report template to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFields", + "type": "array", + "description": "List of data field names to include as report sections or tables.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizations", + "type": "array", + "description": "Array of visualization specifications including type (e.g., bar chart, line chart) and associated data fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section in the template.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format (e.g., PDF, DOCX, HTML).", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "customStyles", + "type": "object", + "description": "Optional styling configurations such as colors, fonts, and layout preferences.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report template content as a string in the chosen format, plus metadata such as template name and creation date." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create standardized templates for data analytics reports to ensure consistent formatting and inclusion of key report elements like tables and charts. It helps automate the initial setup for generating recurring or ad-hoc reports.", + "limitations": "Does not process raw data or generate actual reports with data values, it only creates the template structure. Requires prior knowledge of relevant data fields and visualization types to include.", + "examples": [ + "Generate a quarterly sales report template with sales and region data tables and bar and pie charts.", + "Create an executive summary focused template for marketing analytics with line charts and custom color scheme.", + "Build a template in HTML format for financial KPIs including tables and trend line charts." + ] + }, + "tags": [ + "template", + "data report", + "visualization", + "analytics", + "document generation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"templateName\":\"Quarterly Sales Report\",\"dataFields\":[\"Sales\",\"Region\",\"Quarter\"],\"visualizations\":[{\"type\":\"bar chart\",\"fields\":[\"Sales\",\"Region\"]},{\"type\":\"pie chart\",\"fields\":[\"Sales\"]}],\"includeSummary\":true,\"outputFormat\":\"PDF\",\"customStyles\":{\"colorScheme\":\"blue\",\"font\":\"Arial\"}}", + "description": "Generating a quarterly sales report template with specified data fields and visualizations in PDF format." + }, + { + "inputJson": "{\"templateName\":\"Marketing Executive Summary\",\"dataFields\":[\"Leads\",\"Campaign\",\"Date\"],\"visualizations\":[{\"type\":\"line chart\",\"fields\":[\"Leads\",\"Date\"]}],\"includeSummary\":true,\"outputFormat\":\"DOCX\",\"customStyles\":{\"colorScheme\":\"green\",\"font\":\"Calibri\"}}", + "description": "Creating a marketing executive summary template with line chart visualization in DOCX format." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "data-analytics.generateMarkdown", + "description": "Generates a Markdown formatted report summarizing provided analytics data. Accepts input as structured JSON containing metrics, tables, and optional charts; processes this data into a readable Markdown document with headings, lists, and code blocks; outputs a Markdown string ready for documentation, presentation, or sharing.", + "category": "data-analytics", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the Markdown report.", + "required": false, + "defaultValue": "\"Analytics Report\"" + }, + { + "name": "summary", + "type": "string", + "description": "A short introductory summary or overview of the report content.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "metrics", + "type": "object", + "description": "An object mapping metric names to their values, to be included as a summary list.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "tables", + "type": "array", + "description": "An array of tables; each table is an object with 'header' (array of strings) and 'rows' (array of array of strings) to include as Markdown tables.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include placeholders for charts in the Markdown output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "footerNotes", + "type": "string", + "description": "Optional footer notes or disclaimers to append at the end of the report.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "Returns a single property 'markdown' containing the complete Markdown report as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured analytics data into a human-readable Markdown report, suitable for documentation, emailing, or integrating into static sites. Ideal for summarizing metrics, tabular data, and including chart placeholders without generating charts themselves.", + "limitations": "This tool does not generate visual charts or graphs, only Markdown placeholders are created. It assumes input data is properly structured and does not perform data validation or correction.", + "examples": [ + "Generate a sales report markdown with key sales metrics and a table of monthly revenue.", + "Create a markdown summary from website analytics metrics and table breakdowns for sharing with stakeholders.", + "Produce a markdown analytics report from JSON data including metrics, tables, and footer notes for documentation." + ] + }, + "tags": [ + "data-analytics", + "reporting", + "markdown", + "documentation", + "summary", + "tables", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Q1 Sales Report\",\"summary\":\"Summary of sales performance in Q1.\",\"metrics\":{\"Total Sales\":\"$1,200,000\",\"New Customers\":\"350\",\"Customer Satisfaction\":\"89%\"},\"tables\":[{\"header\":[\"Month\",\"Sales\",\"Growth\"],\"rows\":[[\"January\",\"$400,000\",\"5%\"],[\"February\",\"$380,000\",\"-5%\"],[\"March\",\"$420,000\",\"10%\"]]}],\"includeCharts\":true,\"footerNotes\":\"Data is preliminary and subject to revision.\"}", + "description": "Generate a quarterly sales report including metrics, monthly sales table, chart placeholders, and footer notes." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "data-analytics.generateBlogPost", + "description": "Generates a data-driven blog post based on provided datasets and analysis parameters. It accepts structured data input, performs statistical analysis and visualization generation, and outputs a comprehensive and well-formatted blog post draft including charts, insights, and summaries suitable for publishing or further editing.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data objects representing the dataset to analyze and base the blog post on.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title of the blog post to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor the writing style and complexity.", + "required": false, + "defaultValue": "general public" + }, + { + "name": "keyMetrics", + "type": "array", + "description": "List of key metrics or columns in the data to focus the analysis and narrative on.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to generate charts and visualizations to include in the blog post.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the blog post textual content (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the blog post in words.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post text, a summary of key insights, and optionally base64-encoded images of visualizations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce a narrative blog post that explains and summarizes data insights clearly, supported by relevant statistics and visualizations. Ideal for marketing analytics, business reports, or public data communications without manually crafting content.", + "limitations": "This tool cannot replace domain expert editorial review and may produce generic narratives lacking deep expert nuance. It is also limited to structured tabular data input and cannot interpret unstructured data formats.", + "examples": [ + "Generate a blog post summarizing monthly sales data highlighting growth trends and visualizing key performance indicators.", + "Create a data-driven article aimed at business executives explaining product usage patterns with charts included.", + "Produce a concise blog post from customer feedback survey data focusing on satisfaction scores and notable insights." + ] + }, + "tags": [ + "data-analytics", + "content-generation", + "blog-post", + "data-visualization", + "reporting", + "narrative-generation", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":1200},{\"month\":\"Feb\",\"sales\":1500},{\"month\":\"Mar\",\"sales\":1700}],\"title\":\"Monthly Sales Report\",\"targetAudience\":\"business analysts\",\"keyMetrics\":[\"sales\"],\"includeVisualizations\":true,\"language\":\"en\",\"maxLength\":800}", + "description": "Generate a sales report blog post with visualizations for business analysts covering three months of data." + }, + { + "inputJson": "{\"data\":[{\"segment\":\"A\",\"satisfaction\":78},{\"segment\":\"B\",\"satisfaction\":85},{\"segment\":\"C\",\"satisfaction\":90}],\"title\":\"Customer Satisfaction Overview\",\"targetAudience\":\"executives\",\"keyMetrics\":[\"satisfaction\"],\"includeVisualizations\":false,\"language\":\"en\",\"maxLength\":600}", + "description": "Produce a concise blog post summarizing customer satisfaction survey scores without visualizations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "data-analytics.createAnomaly", + "description": "Detects anomalies in time series or tabular numerical data. Accepts dataset input with optional time stamps and numeric features, applies statistical and machine learning methods to identify outliers or unusual patterns, and outputs anomaly scores and flagged data points for further analysis or alerting.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data objects or records containing numeric features and optional timestamps to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeField", + "type": "string", + "description": "Optional name of the field representing time or timestamps in the dataset, enabling time-aware anomaly detection.", + "required": false, + "defaultValue": "" + }, + { + "name": "featureFields", + "type": "array", + "description": "List of numeric field names in data to use for anomaly detection; if empty, all numeric fields will be considered.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "method", + "type": "string", + "description": "Anomaly detection algorithm to use, e.g. 'isolationForest', 'zScore', 'movingAverage', or 'auto'.", + "required": false, + "defaultValue": "auto" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Floating point value 0-1 representing detection sensitivity; higher values detect more anomalies but may increase false positives.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "windowSize", + "type": "number", + "description": "Size of time window (in data points) used for moving statistics-based methods; ignored if method does not use windows.", + "required": false, + "defaultValue": "10" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of output anomalies; options include 'detailed' for full data with scores or 'summary' for anomaly indices only.", + "required": false, + "defaultValue": "detailed" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'anomalies' (array of flagged data points with scores and metadata) and 'summary' (overall anomaly detection metrics)." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing datasets to automatically find unusual patterns, outliers, or deviations over time or across features that could indicate errors, fraud, or significant events warranting investigation.", + "limitations": "This tool does not replace domain-specific expertise; detecting anomalies in highly noisy or non-stationary data may yield false positives or miss subtle anomalies. It assumes reasonably clean numeric data.", + "examples": [ + "Detect anomalies in server CPU usage logs over time.", + "Identify unusual transactions in a financial dataset without timestamps.", + "Flag outlier sensor readings in an IoT device dataset using isolation forest method." + ] + }, + "tags": [ + "data-analytics", + "anomaly-detection", + "time-series", + "outliers", + "machine-learning", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2023-01-01T00:00:00Z\",\"cpu\":10},{\"timestamp\":\"2023-01-01T00:01:00Z\",\"cpu\":95},{\"timestamp\":\"2023-01-01T00:02:00Z\",\"cpu\":12}],\"timeField\":\"timestamp\",\"featureFields\":[\"cpu\"],\"method\":\"zScore\",\"sensitivity\":0.7}", + "description": "Detect CPU usage spikes in time series with z-score method." + }, + { + "inputJson": "{\"data\":[{\"transactionId\":\"tx1\",\"amount\":100},{\"transactionId\":\"tx2\",\"amount\":5000},{\"transactionId\":\"tx3\",\"amount\":110}],\"featureFields\":[\"amount\"],\"method\":\"isolationForest\",\"sensitivity\":0.6}", + "description": "Identify anomalous transaction amounts without timestamps." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "data-analytics.createAudio", + "description": "Creates an audio file from input data and parameters. Accepts raw audio samples or textual data to synthesize speech, applies optional audio effects and settings, and outputs a playable audio file in the specified format.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputType", + "type": "string", + "description": "Specifies the type of input; either 'samples' for raw audio waveform data or 'text' for speech synthesis input.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputData", + "type": "string", + "description": "For 'samples', a base64 encoded audio sample string; for 'text', a string of text to synthesize into speech.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired audio output format, e.g., 'mp3', 'wav', or 'ogg'.", + "required": true, + "defaultValue": "mp3" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Output audio sample rate in Hz. Defaults to 44100 Hz.", + "required": false, + "defaultValue": "44100" + }, + { + "name": "channels", + "type": "number", + "description": "Number of audio channels: 1 for mono, 2 for stereo. Defaults to 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "bitrate", + "type": "number", + "description": "Output audio bitrate in kbps, applicable for compressed formats like mp3. Default is 128.", + "required": false, + "defaultValue": "128" + }, + { + "name": "effects", + "type": "array", + "description": "List of audio effects to apply, such as 'normalize', 'reverb', 'echo'. Empty array means no effects.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "voice", + "type": "string", + "description": "Voice identifier for text-to-speech synthesis. Applies only when inputType is 'text'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing base64 encoded audio data, MIME type, format, duration in seconds, and sample rate." + }, + "aiAgent": { + "useCase": "Use this tool when an AI requires generating an audio file either by converting text into synthesized speech or by processing raw audio samples to produce a final audio output with desired format and effects. Ideal for producing audio content for reports, podcasts, or alerts.", + "limitations": "Does not transcribe or analyze audio; does not support large audio files beyond typical memory constraints; quality and voice options depend on underlying TTS engine capabilities.", + "examples": [ + "Generate an mp3 audio file from text input with a female voice.", + "Create a wav audio output from base64 encoded raw audio samples with normalization effect.", + "Produce an ogg audio file from text with echo effect applied." + ] + }, + "tags": [ + "audio", + "data-analytics", + "text-to-speech", + "audio-processing", + "media", + "synthesis" + ], + "examples": [ + { + "inputJson": "{\"inputType\":\"text\",\"inputData\":\"Hello, this is a test audio.\",\"outputFormat\":\"mp3\",\"sampleRate\":44100,\"channels\":2,\"bitrate\":128,\"effects\":[\"normalize\"],\"voice\":\"en-US-Female\"}", + "description": "Create a normalized mp3 audio file from text input using a female English voice with standard CD quality settings." + }, + { + "inputJson": "{\"inputType\":\"samples\",\"inputData\":\"UklGRlgAAABXQVZFZm10IBAAAAABAAEA...\",\"outputFormat\":\"wav\",\"sampleRate\":48000,\"channels\":1,\"bitrate\":0,\"effects\":[],\"voice\":\"\"}", + "description": "Generate a mono 48kHz wav audio file from base64 encoded raw audio samples with no effects." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "data-analytics.createMarkdown", + "description": "Generates a Markdown-formatted report from structured tabular data. Accepts input data as an array of objects or CSV string, processes it by optionally selecting columns, sorting, and summarizing, then outputs a Markdown table with optional headers and summary sections suitable for documentation or reporting.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing tabular data rows where keys are column names.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Optional list of column names to include in the Markdown table; if empty, include all columns.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sortBy", + "type": "string", + "description": "Optional column name to sort the data by; if empty, no sorting is performed.", + "required": false, + "defaultValue": "" + }, + { + "name": "descending", + "type": "boolean", + "description": "If true, sort the data in descending order; ascending if false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include a header row with column names in the Markdown output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summary", + "type": "object", + "description": "Optional summary to append below the table, including counts or aggregates.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'markdown' with the generated Markdown string." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured tabular data (like JSON arrays or CSV records) and want to create a clean, readable Markdown report format for documentation, reports, or summaries. It is ideal for generating simple tables and optional summary text for insights.", + "limitations": "Cannot render complex nested data structures or produce visual charts; it only converts flat tabular data into Markdown format. Does not provide advanced statistical summaries unless explicitly given.", + "examples": [ + "Generate a Markdown report from a JSON array with specific columns and sorting.", + "Create a Markdown table for a dataset with a count summary below.", + "Output a Markdown table including all columns without sorting." + ] + }, + "tags": [ + "data-analytics", + "markdown", + "reporting", + "table-generation", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"Name\":\"Alice\",\"Age\":30,\"Score\":85},{\"Name\":\"Bob\",\"Age\":25,\"Score\":90},{\"Name\":\"Charlie\",\"Age\":35,\"Score\":78}],\"columns\":[\"Name\",\"Score\"],\"sortBy\":\"Score\",\"descending\":true,\"includeHeader\":true,\"summary\":{\"totalEntries\":3}}", + "description": "Generate a Markdown table including only Name and Score columns, sorted by Score descending, with a summary count." + }, + { + "inputJson": "{\"data\":[{\"Product\":\"Widget\",\"Price\":10.5,\"Quantity\":100},{\"Product\":\"Gadget\",\"Price\":15.0,\"Quantity\":80}],\"columns\":[],\"sortBy\":\"\",\"descending\":false,\"includeHeader\":true}", + "description": "Create a Markdown table including all columns with no sorting and header included." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "data-analytics.createTemplate", + "description": "Creates a customizable analytic report template based on specified data fields, visualization types, and layout preferences. Accepts input parameters that define key metrics, chart types, and formatting options, then generates a JSON or document template outlining the structure for consistent data reporting and analysis workflows.", + "category": "data-analytics", + "parameters": [ + { + "name": "templateName", + "type": "string", + "description": "Name of the analytic template to create, for identification and reuse.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of data metric identifiers to include in the template (e.g., revenue, userCount).", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizations", + "type": "array", + "description": "Types of visualizations to use for each metric (e.g., barChart, lineGraph, pieChart).", + "required": true, + "defaultValue": "" + }, + { + "name": "layout", + "type": "string", + "description": "Preferred layout style of the template (e.g., grid, vertical, horizontal).", + "required": false, + "defaultValue": "grid" + }, + { + "name": "includeFilters", + "type": "boolean", + "description": "Whether to include filter controls for users to dynamically adjust data views.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Color or style theme to apply to charts and template elements (e.g., light, dark, corporate).", + "required": false, + "defaultValue": "light" + }, + { + "name": "exportFormat", + "type": "string", + "description": "Output format of the template (e.g., JSON, PDF, HTML) defining how the template can be used or shared.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing the structured analytic report template including defined metrics, visualization mappings, layout details, and styling information ready for rendering or further customization." + }, + "aiAgent": { + "useCase": "When an AI agent needs to automate or standardize the creation of analytic report templates for dashboards or data presentations, this tool helps by generating a structured schema based on user input for metrics and visualization preferences. It streamlines report setup in data analytics workflows.", + "limitations": "This tool does not generate actual data or perform data aggregation; it only creates the template structure. It does not automatically populate charts with live data or handle real-time data updates.", + "examples": [ + "Create a sales report template with revenue and units sold metrics using bar and line charts in grid layout.", + "Generate a user engagement analytics template with pie charts and filter options in a vertical layout.", + "Create a corporate-themed executive summary report template exporting to PDF format." + ] + }, + "tags": [ + "data-analytics", + "template", + "reporting", + "visualization", + "dashboard", + "automation" + ], + "examples": [ + { + "inputJson": "{\"templateName\":\"MonthlySalesReport\",\"metrics\":[\"totalRevenue\",\"unitsSold\"],\"visualizations\":[\"barChart\",\"lineGraph\"],\"layout\":\"grid\",\"includeFilters\":true,\"theme\":\"corporate\",\"exportFormat\":\"JSON\"}", + "description": "Create a monthly sales report template with revenue and units sold visualized as bar and line charts in a grid layout with corporate theme." + }, + { + "inputJson": "{\"templateName\":\"UserEngagementTemplate\",\"metrics\":[\"activeUsers\",\"sessionDuration\"],\"visualizations\":[\"pieChart\",\"barChart\"],\"layout\":\"vertical\",\"includeFilters\":true,\"theme\":\"light\",\"exportFormat\":\"HTML\"}", + "description": "Generate a user engagement template with active users and session duration metrics displayed as pie and bar charts vertically with filters." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "data-analytics.createReadme", + "description": "Generates a comprehensive README document for data analytics projects. Accepts project metadata, description, usage instructions, dependencies, and visualization summaries to create a structured markdown README file that clearly communicates project insights and usage guidelines.", + "category": "data-analytics", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the data analytics project to be documented.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A detailed description explaining the purpose and scope of the analytics project.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions on how to install and setup the project environment and dependencies.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "An array of usage example strings demonstrating how to run or interact with the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data sources or datasets used within the project, including brief descriptions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of software libraries or tools required by the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "visualizationSummary", + "type": "string", + "description": "Summary of key visualizations or insights generated by the analytics processes, to be included as context in the README.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the README content as a markdown-formatted string under the key 'readmeMarkdown'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate a clear and informative README document that summarizes a data analytics project, including its purpose, setup, usage, dependencies, and insights produced. Ideal for producing documentation from structured project metadata.", + "limitations": "Cannot generate README content without sufficient input data. It does not perform actual data analysis or visualization; it only documents provided information.", + "examples": [ + "Generate a README for a project analyzing sales data with visualizations and usage instructions.", + "Create a README file for a new data science pipeline summarizing datasets, libraries used, and installation steps.", + "Produce documentation for a time-series forecasting project including model descriptions and example usage." + ] + }, + "tags": [ + "documentation", + "readme", + "data-analytics", + "project-summary", + "markdown", + "automation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"SalesInsights\",\"projectDescription\":\"A data analytics project analyzing monthly sales data across regions to identify trends and forecast future demand.\",\"installationInstructions\":\"1. Install Python 3.8+\\n2. Run pip install -r requirements.txt\",\"usageExamples\":[\"python analyze.py --input sales.csv\",\"python plot.py --region north\"],\"dataSources\":[\"Monthly sales CSV files from ERP system\"],\"dependencies\":[\"pandas\",\"matplotlib\",\"scikit-learn\"],\"visualizationSummary\":\"Includes trend line charts, regional heatmaps, and forecast graphs visualizing sales metrics.\"}", + "description": "Generate a README for a sales data analytics project with installation and usage instructions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "data-analytics.createDependency", + "description": "Analyzes codebase data to create a detailed dependency graph of modules or packages. Accepts input such as source code paths or dependency metadata, processes relationships and versions, and outputs a structured dependency graph for visualization and analysis.", + "category": "data-analytics", + "parameters": [ + { + "name": "sourcePaths", + "type": "array", + "description": "Array of file system paths or repository URLs containing the source code to analyze for dependencies.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the source code to interpret dependency formats correctly (e.g., 'javascript', 'python').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDevDependencies", + "type": "boolean", + "description": "Whether to include development dependencies in the dependency graph.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth for dependency graph traversal; 0 means unlimited.", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the dependency graph ('json', 'dot', 'graphml').", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a nodes array and edges array representing the dependency graph. Each node includes module name and version; edges represent dependency relations." + }, + "aiAgent": { + "useCase": "This tool is useful when analyzing a codebase to understand module or package dependencies, visualize complex interrelations, or detect potential dependency issues such as cycles or outdated versions. Agents needing to generate visual or structural data on code dependencies should use this tool.", + "limitations": "This tool cannot resolve dependencies for unsupported programming languages or binaries. It may not correctly handle dynamically loaded dependencies or runtime-generated code.", + "examples": [ + "Generate a JSON dependency graph for a JavaScript project located at './my-app' including devDependencies.", + "Create a DOT format dependency graph of a Python project at a GitHub URL, limiting traversal depth to 3.", + "Produce a GraphML file showing dependencies excluding devDependencies for a JavaScript monorepo." + ] + }, + "tags": [ + "data-analytics", + "dependency-analysis", + "codebase", + "visualization", + "graph", + "software-engineering", + "static-analysis" + ], + "examples": [ + { + "inputJson": "{\"sourcePaths\":[\"./projects/my-js-app\"],\"language\":\"javascript\",\"includeDevDependencies\":true,\"maxDepth\":0,\"outputFormat\":\"json\"}", + "description": "Generate a complete JSON dependency graph for a JavaScript project with devDependencies included." + }, + { + "inputJson": "{\"sourcePaths\":[\"https://github.com/example/python-lib\"],\"language\":\"python\",\"includeDevDependencies\":false,\"maxDepth\":3,\"outputFormat\":\"dot\"}", + "description": "Create a DOT format dependency graph for a Python library from a GitHub repo, limiting depth to 3, excluding devDependencies." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "data-analytics.createYAML", + "description": "Generates a formatted YAML string from structured input data such as JSON or objects. Accepts input data and optional formatting options, then converts and organizes it into a readable YAML output for use in configuration, data exchange, or analytics documentation.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured input data (e.g., JSON object) to be converted into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces used for indentation in the YAML output to control readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Flag to include a YAML document start marker (---) at the beginning of the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort object keys alphabetically in the YAML output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "A YAML formatted string representing the input data with applied formatting options." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert data from internal JSON-like structures or parsed objects into YAML format for configuration files, reports, or data exchange protocols. Ideal for generating readable YAML output from raw data dynamically during data analytics workflows.", + "limitations": "Does not validate the semantic correctness of the input data, nor enforce YAML schema compliance beyond syntax conversion.", + "examples": [ + "Convert JSON analytics results into YAML for inclusion in a config file.", + "Generate YAML formatted data snapshots for documentation purposes.", + "Produce human-readable YAML output from complex nested data objects." + ] + }, + "tags": [ + "data-analytics", + "create", + "YAML", + "formatting", + "conversion", + "serialization", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"name\":\"Project X\",\"metrics\":{\"users\":1200,\"growth\":0.05}},\"indentation\":4,\"includeHeader\":true,\"sortKeys\":true}", + "description": "Convert a nested data object with sorted keys and 4 spaces indentation to YAML with header marker." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "data-analytics.createProposal", + "description": "Generates a comprehensive data analytics project proposal document based on provided project details, objectives, datasets, methodologies, and expected outcomes. The tool accepts structured input describing the project scope and outputs a formatted proposal ready for stakeholders.", + "category": "data-analytics", + "parameters": [ + { + "name": "projectTitle", + "type": "string", + "description": "The title of the data analytics project proposal.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A detailed description of the project and its goals.", + "required": true, + "defaultValue": "" + }, + { + "name": "objectives", + "type": "array", + "description": "An array of key objectives or questions the analytics project aims to address.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data sources or datasets that will be used in the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "methodologies", + "type": "array", + "description": "Analytical methods and technologies proposed for the project (e.g. regression, clustering, visualization tools).", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedOutcomes", + "type": "string", + "description": "Expected insights, deliverables, and business impacts from the analytics project.", + "required": true, + "defaultValue": "" + }, + { + "name": "proposalFormat", + "type": "string", + "description": "Format of the proposal output document (e.g., markdown, PDF, plain text).", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted proposal document string and the format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured and articulate project proposal for a data analytics initiative. Suitable for creating proposals that summarize project goals, datasets, analysis methods, and expected impact for stakeholders or clients.", + "limitations": "The tool cannot perform actual data analysis or validate data quality; it only generates textual proposal documents based on input parameters. It does not customize proposals beyond provided inputs or generate visuals.", + "examples": [ + "Create a data analytics proposal for customer churn prediction using historical sales data.", + "Generate a formatted project plan summarizing objectives and methods for a social media sentiment analysis initiative." + ] + }, + "tags": [ + "data", + "analytics", + "proposal", + "document", + "project", + "planning", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"projectTitle\":\"Customer Churn Analysis\",\"projectDescription\":\"Analyze customer behavior to predict churn and improve retention.\",\"objectives\":[\"Identify factors influencing churn\",\"Develop predictive models\"],\"dataSources\":[\"CRM database\",\"Customer surveys\"],\"methodologies\":[\"Logistic regression\",\"Decision trees\"],\"expectedOutcomes\":\"Detailed report on churn drivers and model with actionable insights.\",\"proposalFormat\":\"markdown\"}", + "description": "Generate a markdown proposal for a customer churn data analytics project." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "data-transformation.analyzeIncident", + "description": "Analyzes security incident logs or reports provided as structured JSON or text to extract key details such as incident type, timeline, affected resources, source IPs, and severity. It performs entity extraction, event sequencing, and categorization, returning a summarized, standardized incident analysis report in JSON format.", + "category": "data-transformation", + "parameters": [ + { + "name": "incidentData", + "type": "string", + "description": "Raw incident log or report data as a JSON string or unstructured text input for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the incidentData input (e.g., \"json\", \"text\").", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeTimeline", + "type": "boolean", + "description": "Whether to extract and include a detailed timeline of events in the analysis output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level of incidents to report (e.g., \"low\", \"medium\", \"high\"). Incidents below this level are filtered out.", + "required": false, + "defaultValue": "low" + }, + { + "name": "extractAffectedAssets", + "type": "boolean", + "description": "Flag to enable extraction of affected system and network assets from the incident data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object summarizing the analyzed incident, including incident type, severity, timeline of events, affected assets, source IPs, and recommended actions." + }, + "aiAgent": { + "useCase": "Use this tool to automatically parse and analyze raw security incident data to obtain structured insights such as timelines, severity assessments, and impacted assets. Ideal for security operations automation, incident triage, and forensic investigations that require transforming unstructured incident reports into actionable data.", + "limitations": "This tool cannot replace expert human incident analysis especially for novel attack types or incomplete data. It depends on the input quality and format and may not fully interpret ambiguous textual reports.", + "examples": [ + "Analyze a JSON-formatted incident report to extract the timeline and affected hosts.", + "Parse a raw text security alert log to generate a summarized incident impact assessment.", + "Filter incident reports to only include those with high severity and extract source IP addresses." + ] + }, + "tags": [ + "data transformation", + "incident analysis", + "security", + "log parsing", + "forensics", + "automation" + ], + "examples": [ + { + "inputJson": "{\"incidentData\":\"{\\\"incidentId\\\":\\\"INC12345\\\",\\\"type\\\":\\\"malware\\\",\\\"events\\\":[{\\\"timestamp\\\":\\\"2024-05-10T10:15:00Z\\\",\\\"description\\\":\\\"Malware detected on endpoint X\\\"},{\\\"timestamp\\\":\\\"2024-05-10T10:20:00Z\\\",\\\"description\\\":\\\"Isolated infected machine\\\"}],\\\"severity\\\":\\\"high\\\",\\\"affectedAssets\\\":[\\\"endpoint X\\\",\\\"server Y\\\"],\\\"sourceIPs\\\":[\\\"192.168.1.101\\\"]}\"}", + "description": "Analyze a JSON incident report about a malware detection event." + }, + { + "inputJson": "{\"incidentData\":\"Suspicious login attempt from IP 203.0.113.45 at 2024-05-11T03:22:00Z on server Z. Multiple failed login attempts detected.\",\"inputFormat\":\"text\",\"includeTimeline\":true,\"severityThreshold\":\"medium\"}", + "description": "Analyze unstructured text incident data about suspicious login attempts, extracting timeline and filtering on severity." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "data-transformation.renderImage", + "description": "This tool accepts structured data inputs such as JSON objects describing shapes, colors, texts, and layout instructions, and renders them into a raster image (PNG or JPEG). It processes vector and textual data parameters to produce a visual image output as a base64-encoded string or a binary buffer, suitable for display, storage, or further image processing.", + "category": "data-transformation", + "parameters": [ + { + "name": "canvasWidth", + "type": "number", + "description": "Width of the output image canvas in pixels.", + "required": true, + "defaultValue": "" + }, + { + "name": "canvasHeight", + "type": "number", + "description": "Height of the output image canvas in pixels.", + "required": true, + "defaultValue": "" + }, + { + "name": "shapes", + "type": "array", + "description": "Array of shape objects to render on the image, each describing type, position, size, and color.", + "required": true, + "defaultValue": "" + }, + { + "name": "texts", + "type": "array", + "description": "Optional array of text objects to overlay on the image, including content, position, font size, and color.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the image canvas in hex or color name format.", + "required": false, + "defaultValue": "\"#FFFFFF\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, can be 'png' or 'jpeg'.", + "required": false, + "defaultValue": "\"png\"" + }, + { + "name": "quality", + "type": "number", + "description": "Quality of the output image (0-100), mainly for JPEG format.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing base64 encoded image data and the MIME type corresponding to the output format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate visual images from structured data inputs such as diagrams, charts, or custom vector graphics, for display or sharing in applications that require image formats like PNG or JPEG.", + "limitations": "Does not support rendering complex vector graphic file formats like SVG natively; images are rasterized. Cannot process photographic or natural images as input formats. Limited to 2D shapes and text rendering as described in input parameters.", + "examples": [ + "Render a company logo composed of circles and text to PNG image.", + "Generate a diagram with colored rectangles and labels to JPEG image.", + "Create a simple icon image with a blue background and white text overlay." + ] + }, + "tags": [ + "image", + "rendering", + "data-transformation", + "graphics", + "visualization", + "rasterization" + ], + "examples": [ + { + "inputJson": "{\"canvasWidth\":400,\"canvasHeight\":300,\"shapes\":[{\"type\":\"circle\",\"centerX\":200,\"centerY\":150,\"radius\":50,\"color\":\"#FF0000\"}],\"texts\":[{\"content\":\"Hello\",\"x\":180,\"y\":160,\"fontSize\":20,\"color\":\"#000000\"}],\"backgroundColor\":\"#FFFFFF\",\"outputFormat\":\"png\"}", + "description": "Render a white 400x300 canvas with a red circle centered and black 'Hello' text on top." + }, + { + "inputJson": "{\"canvasWidth\":200,\"canvasHeight\":200,\"shapes\":[{\"type\":\"rectangle\",\"x\":50,\"y\":50,\"width\":100,\"height\":100,\"color\":\"blue\"}],\"texts\":[],\"backgroundColor\":\"#AAAAAA\",\"outputFormat\":\"jpeg\",\"quality\":90}", + "description": "Render a 200x200 image with a blue square on a grey background and export as high quality JPEG." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "data-transformation.renderText", + "description": "Transforms plain or markdown-styled text input into rendered HTML output. Accepts a string containing raw text with optional markdown syntax, processes it by parsing and converting markdown elements to corresponding HTML tags, and outputs a fully rendered HTML string ready for web display or further processing.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw text input that may contain markdown syntax to be rendered into HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "If true, escapes any HTML tags in the input text to prevent injection and ensure only markdown formatting is rendered.", + "required": false, + "defaultValue": "true" + }, + { + "name": "renderAsBlock", + "type": "boolean", + "description": "If true, forces the output to be wrapped inside a block-level container such as a
. If false, outputs inline HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "generateTableOfContents", + "type": "boolean", + "description": "If true, adds a table of contents HTML snippet generated from the headings in the input text at the beginning of the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxHeadingLevel", + "type": "number", + "description": "Specifies the maximum heading level to include in the table of contents (if generated). Valid values are 1 to 6.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML string with optional table of contents and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw text or markdown content into fully rendered HTML for display in web environments, email templates, or document previews. Ideal for transforming user-generated or stored markdown text into safe, styled HTML elements.", + "limitations": "Does not perform advanced styling or CSS generation; purely converts markdown to HTML. Does not sanitize beyond escaping HTML when escapeHtml is true; for security, additional sanitation may be required. Does not render embedded scripts or complex extensions beyond common markdown syntax.", + "examples": [ + "Render a blog post Markdown input to HTML for web display.", + "Convert user comments with markdown styling to safe innerHTML for a web app.", + "Generate a table of contents for a markdown document and render as HTML." + ] + }, + "tags": [ + "text", + "rendering", + "markdown", + "HTML", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"# Title\\nThis is some **bold** text and a [link](https://example.com).\",\"escapeHtml\":true,\"renderAsBlock\":true,\"generateTableOfContents\":false,\"maxHeadingLevel\":3}", + "description": "Render a simple markdown string containing a heading, bold text, and a link into safe HTML wrapped in a block container." + }, + { + "inputJson": "{\"inputText\":\"## Section 1\\nContent here\\n### Subsection\\nMore content.\",\"escapeHtml\":true,\"renderAsBlock\":true,\"generateTableOfContents\":true,\"maxHeadingLevel\":3}", + "description": "Render markdown with headings and generate a table of contents for those up to heading level 3." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "data-transformation.formatSentence", + "description": "This tool accepts a raw input sentence as a string along with optional formatting parameters such as capitalization style, punctuation enforcement, and trimming of excess whitespace. It processes the sentence to standardize its format according to these parameters, outputting a polished, correctly formatted sentence string suitable for display or further processing.", + "category": "data-transformation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The input sentence text to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeStyle", + "type": "string", + "description": "Specifies capitalization style: 'none', 'firstWord', 'allWords', or 'sentence'. Default is 'sentence' to capitalize only the first letter of the sentence.", + "required": false, + "defaultValue": "sentence" + }, + { + "name": "ensurePeriod", + "type": "boolean", + "description": "If true, ensures the sentence ends with a period. If false, leaves ending punctuation as is.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, trims leading and trailing whitespace from the sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted sentence string under the key 'formattedSentence'." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to normalize or standardize raw textual sentences for display, storage, or further text processing — for example, formatting user input, cleaning data imports, or preparing sentences for natural language generation output. It helps enforce consistent punctuation and capitalization rules.", + "limitations": "This tool does not perform grammar correction beyond capitalization and basic punctuation. It cannot fix complex sentence structure, spelling errors, or language nuances.", + "examples": [ + "Format the user input sentence to start with a capital letter, ensure it ends with a period, and remove extra spaces.", + "Ensure all words in a raw sentence are capitalized for a title format.", + "Clean up a sentence by trimming whitespace without changing its existing punctuation." + ] + }, + "tags": [ + "formatting", + "text-processing", + "string-manipulation", + "capitalization", + "punctuation", + "data-cleaning" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\" this is a test sentence! \",\"capitalizeStyle\":\"sentence\",\"ensurePeriod\":true,\"trimWhitespace\":true}", + "description": "Formats a raw sentence by capitalizing only the first word, trimming spaces, and ensuring it ends with a period." + }, + { + "inputJson": "{\"sentence\":\"hello world\",\"capitalizeStyle\":\"allWords\",\"ensurePeriod\":false,\"trimWhitespace\":true}", + "description": "Capitalizes all words in the sentence for a title case effect without changing punctuation or adding a period." + }, + { + "inputJson": "{\"sentence\":\"Another example sentence\",\"capitalizeStyle\":\"none\",\"ensurePeriod\":false,\"trimWhitespace\":false}", + "description": "Returns the sentence as-is without capitalization changes, punctuation enforcement, or trimming." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "data-transformation.formatParagraph", + "description": "Formats a raw text paragraph by applying specified casing styles, line width limits, and optional indentation. Accepts plain text input and outputs a neatly formatted paragraph string ready for display or further processing.", + "category": "data-transformation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineWidth", + "type": "number", + "description": "Maximum number of characters per line before wrapping. Lines will be wrapped at word boundaries to stay within this width.", + "required": false, + "defaultValue": "80" + }, + { + "name": "caseStyle", + "type": "string", + "description": "Text casing style to apply: 'none' (original), 'sentence-case', 'title-case', 'upper-case', or 'lower-case'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to indent each line of the formatted paragraph.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph as a single string with applied casing, line breaks, and indentation." + }, + "aiAgent": { + "useCase": "Use when needing to format plain paragraph text for display, reporting, or standardized output. Ideal for adjusting text casing (such as converting to sentence case), wrapping lines to a specific width for readability, or adding indentation for styling in generated documents or consoles.", + "limitations": "Does not interpret or format markdown, HTML, or rich text. Cannot parse semantic content or restructure paragraph meaning. Formatting is limited to casing, wrapping by character width, and simple indentation.", + "examples": [ + "Format raw text to sentence case with line width 50 and 4 spaces indentation.", + "Convert paragraph to upper-case with default wrapping and no indentation.", + "Keep original casing but wrap lines at 60 characters with 2 spaces indentation." + ] + }, + "tags": [ + "data-transformation", + "formatting", + "text-processing", + "paragraph", + "casing", + "wrapping", + "indentation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"lorem ipsum dolor sit amet, consectetur adipiscing elit. sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\",\"maxLineWidth\":50,\"caseStyle\":\"sentence-case\",\"indentationSpaces\":4}", + "description": "Format paragraph to sentence case, wrap at 50 chars, indent 4 spaces." + }, + { + "inputJson": "{\"text\":\"THIS IS AN IMPORTANT ANNOUNCEMENT: ALL SYSTEMS WILL BE DOWN TONIGHT.\",\"caseStyle\":\"upper-case\"}", + "description": "Convert paragraph to upper case without indentation or custom wrapping." + }, + { + "inputJson": "{\"text\":\"Remember to save your work frequently to avoid data loss.\",\"maxLineWidth\":60,\"indentationSpaces\":2}", + "description": "Wrap lines at 60 characters with 2 spaces indentation, keep original casing." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "data-transformation.formatInvoice", + "description": "Formats raw invoice data into a standardized, human-readable invoice document format such as JSON, XML, or PDF metadata for further processing or presentation. Accepts invoice details including items, prices, taxes, and customer info; processes and organizes this data; outputs a clean, consistent invoice structure in the requested format.", + "category": "data-transformation", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "Raw invoice data including items, quantities, prices, taxes, and customer details to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted invoice: 'json', 'xml', or 'pdf-metadata'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeTaxes", + "type": "boolean", + "description": "Whether to include detailed tax breakdown in the output invoice.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currencySymbol", + "type": "string", + "description": "Currency symbol to use in formatted monetary values, e.g. '$' or '€'.", + "required": false, + "defaultValue": "$" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Format string for dates in the invoice, e.g. 'YYYY-MM-DD' or 'MM/DD/YYYY'.", + "required": false, + "defaultValue": "YYYY-MM-DD" + } + ], + "returns": { + "type": "object", + "description": "Structured invoice document formatted as requested (JSON object, XML string, or JSON metadata describing a PDF invoice). Includes organized details like line items, totals, taxes and customer info." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to convert raw invoice data into a clean, standardized invoice document for display, storage, or integration with accounting systems. It supports multiple output formats and can adapt currency presentation and tax details. It ensures consistency and readability across varied input invoice data.", + "limitations": "This tool does not generate graphical PDF files, only metadata for PDFs. It does not validate input data correctness or completeness beyond basic structural formatting. It does not apply complex business rules or discounts automatically.", + "examples": [ + "Format invoice data into JSON with tax details for accounting import.", + "Generate XML invoice without tax breakdown for external system.", + "Produce PDF metadata for invoice presentation with Euro currency symbol." + ] + }, + "tags": [ + "data-transformation", + "invoice", + "formatting", + "financial", + "document", + "json", + "xml", + "pdf" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-1001\",\"date\":\"2024-06-01\",\"customer\":{\"name\":\"Acme Corp.\",\"address\":\"123 Business Rd.\"},\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":9.99},{\"description\":\"Widget B\",\"quantity\":5,\"unitPrice\":19.95}],\"taxRate\":0.07},\"outputFormat\":\"json\",\"includeTaxes\":true,\"currencySymbol\":\"$\",\"dateFormat\":\"YYYY-MM-DD\"}", + "description": "Format invoice into JSON with tax details included, using USD and ISO date format." + }, + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"2024-2002\",\"date\":\"2024-06-15\",\"customer\":{\"name\":\"Beta LLC\",\"address\":\"456 Commerce St.\"},\"items\":[{\"description\":\"Service Fee\",\"quantity\":1,\"unitPrice\":250.0}],\"taxRate\":0.0},\"outputFormat\":\"xml\",\"includeTaxes\":false,\"currencySymbol\":\"€\",\"dateFormat\":\"DD/MM/YYYY\"}", + "description": "Format invoice into XML without tax details, use Euro currency and day/month/year date format." + }, + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-305\",\"date\":\"2024-05-20\",\"customer\":{\"name\":\"Gamma Inc.\",\"address\":\"789 Industrial Blvd.\"},\"items\":[{\"description\":\"Product X\",\"quantity\":2,\"unitPrice\":150.0}],\"taxRate\":0.05},\"outputFormat\":\"pdf-metadata\",\"includeTaxes\":true,\"currencySymbol\":\"$\",\"dateFormat\":\"MM/DD/YYYY\"}", + "description": "Generate PDF metadata for an invoice with tax, using US currency symbol and US style dates." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "data-transformation.formatModule", + "description": "Formats source code modules by parsing their input code string and applying consistent formatting styles such as indentation, line breaks, and spacing. Accepts code as a string with specified language and style preferences, outputs formatted code as a string to improve readability and maintainability.", + "category": "data-transformation", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw source code of the module to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code (e.g., 'javascript', 'python', 'typescript').", + "required": true, + "defaultValue": "" + }, + { + "name": "indentStyle", + "type": "string", + "description": "Indentation style to apply, such as 'spaces' or 'tabs'.", + "required": false, + "defaultValue": "spaces" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces or tabs per indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed characters per line before wrapping.", + "required": false, + "defaultValue": "80" + }, + { + "name": "quoteStyle", + "type": "string", + "description": "Preferred quotation mark style, e.g., 'single' or 'double'.", + "required": false, + "defaultValue": "double" + }, + { + "name": "trailingComma", + "type": "boolean", + "description": "Whether to add trailing commas where valid (e.g., in lists or objects).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted code string and optionally any formatting warnings or errors." + }, + "aiAgent": { + "useCase": "Use when needing to standardize or beautify code modules for readability, consistency, or to meet style guidelines before committing code or generating reports. Useful in automated pipelines for code styling or when integrating multi-language source files.", + "limitations": "Does not perform syntax error fixing or code linting beyond formatting. Not suitable for minification or obfuscation tasks. May not support very esoteric or very new language syntax without updates.", + "examples": [ + "Format a JavaScript module to use 2-space indentation, double quotes, and add trailing commas.", + "Format a Python module to use 4 spaces indent and single quotes.", + "Format a TypeScript file with tabs indentation and line max length 100." + ] + }, + "tags": [ + "formatting", + "code", + "module", + "source-code", + "programming", + "style", + "beautify" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function example(){console.log('hello world');}\",\"language\":\"javascript\",\"indentStyle\":\"spaces\",\"indentSize\":2,\"maxLineLength\":80,\"quoteStyle\":\"double\",\"trailingComma\":true}", + "description": "Format a simple JavaScript function with spaces indentation, double quotes, and trailing commas." + }, + { + "inputJson": "{\"code\":\"def greet():\\n print('Hello, world!')\",\"language\":\"python\",\"indentStyle\":\"spaces\",\"indentSize\":4,\"quoteStyle\":\"single\"}", + "description": "Format a Python function using 4 spaces indentation and single quotes." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "data-transformation.draftContract", + "description": "This tool generates a draft contract text based on user-provided structured inputs including parties involved, contract terms, effective dates, and additional clauses. It processes the inputs into a coherent, legally styled contract document text output suitable for initial review or customization.", + "category": "data-transformation", + "parameters": [ + { + "name": "partyAName", + "type": "string", + "description": "Name of the first party involved in the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "partyBName", + "type": "string", + "description": "Name of the second party involved in the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "contractStartDate", + "type": "string", + "description": "Start date of the contract in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "contractEndDate", + "type": "string", + "description": "End date of the contract in ISO 8601 format (YYYY-MM-DD). If omitted, contract is considered ongoing", + "required": false, + "defaultValue": "" + }, + { + "name": "contractTerms", + "type": "array", + "description": "Array of strings each detailing a specific contract term or obligation", + "required": true, + "defaultValue": "[]" + }, + { + "name": "additionalClauses", + "type": "array", + "description": "Optional custom clauses or provisions added to the contract", + "required": false, + "defaultValue": "[]" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction governing the contract, e.g., 'New York, USA'", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted contract text under 'contractText' field which is a string formatted in clear legal prose suitable for review or further editing." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI needs to quickly generate a preliminary draft contract document from structured data inputs such as party names, dates, and terms, enabling rapid contract prototyping or templating before detailed legal review or customization.", + "limitations": "The tool does not provide legally binding or guaranteed enforceable contracts and cannot replace legal advice. It generates generic clause texts and may not cover jurisdiction-specific legal requirements or complex negotiations.", + "examples": [ + "Draft a contract between two companies with specified terms and dates.", + "Create a purchase agreement draft for two parties with added confidentiality clause.", + "Generate a service agreement with an ongoing duration and standard obligations." + ] + }, + "tags": [ + "contract", + "drafting", + "legal", + "data-transformation", + "document-generation", + "templating" + ], + "examples": [ + { + "inputJson": "{\"partyAName\":\"Alpha Corp\",\"partyBName\":\"Beta LLC\",\"contractStartDate\":\"2024-07-01\",\"contractEndDate\":\"2025-06-30\",\"contractTerms\":[\"Alpha Corp will provide software development services.\",\"Beta LLC agrees to pay a monthly fee of $10,000.\"],\"additionalClauses\":[\"Confidentiality must be maintained.\",\"Dispute resolution through arbitration.\"],\"governingLaw\":\"California, USA\"}", + "description": "Draft contract for software services between Alpha Corp and Beta LLC lasting one year with payment and confidentiality terms." + }, + { + "inputJson": "{\"partyAName\":\"John Doe\",\"partyBName\":\"Acme Construction\",\"contractStartDate\":\"2024-08-15\",\"contractTerms\":[\"Acme Construction will complete the renovation work within 90 days.\",\"John Doe will pay $50,000 upon completion.\"],\"additionalClauses\":[],\"governingLaw\":\"Texas, USA\"}", + "description": "Construction service contract draft without explicit end date but stating project timeline and payment conditions." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "data-transformation.formatSummary", + "description": "Formats and refines raw text summaries or notes into a polished, concise summary. Accepts a string input of unstructured or loosely structured text and applies formatting options such as maximum length, bullet point conversion, and key phrase emphasis, producing a clean, well-organized summary string suitable for documents or reports.", + "category": "data-transformation", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "Raw text input containing the unformatted summary or notes to be processed.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of characters for the formatted summary; longer texts will be truncated or condensed accordingly.", + "required": false, + "defaultValue": "500" + }, + { + "name": "bulletPoints", + "type": "boolean", + "description": "Whether to convert lists or multiple points in the text into bullet points for easier reading.", + "required": false, + "defaultValue": "true" + }, + { + "name": "emphasizeKeywords", + "type": "array", + "description": "List of keywords or phrases to emphasize in the summary, e.g., by bolding or highlighting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim extra whitespace and normalize line breaks for cleaner formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted summary text under 'formattedSummary'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives raw or loosely structured summary text that needs to be polished and formatted for presentation or documentation purposes. It is suitable for condensing notes into readable formats, applying bullet points, managing length constraints, and highlighting key terms.", + "limitations": "This tool cannot generate summaries from scratch; it requires input text. It does not perform deep semantic summarization or content extraction beyond formatting and minor condensing.", + "examples": [ + "Format a meeting notes string into a concise bullet point summary emphasizing action items.", + "Shorten a long product description summary to 300 characters with keyword highlights.", + "Clean up raw pasted text notes by trimming whitespace and applying bullet points." + ] + }, + "tags": [ + "formatting", + "summary", + "text-processing", + "document", + "data-transformation", + "cleaning", + "concise" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"Our meeting covered project timelines, deliverables, some risks identified. Action items include updating the roadmap, assigning tasks to team leads, and scheduling follow-ups.\",\"maxLength\":300,\"bulletPoints\":true,\"emphasizeKeywords\":[\"Action items\",\"risks\"],\"trimWhitespace\":true}", + "description": "Input raw meeting notes to produce a bullet-point summary emphasizing 'Action items' and 'risks' keywords, limited to 300 characters." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "data-transformation.draftText", + "description": "This tool accepts raw input data such as keywords, topic outlines, or brief instructions, and generates a coherent, structured draft text output. It processes the input to formulate paragraphs, sections, or summaries, returning a well-organized textual draft that can be further refined or used as initial content.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw textual input such as keywords, bullet points, or brief instructions to base the draft on.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the desired text format for the draft output, e.g., plain text, markdown, or HTML.", + "required": false, + "defaultValue": "plain text" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) for the output text.", + "required": false, + "defaultValue": "en" + }, + { + "name": "tone", + "type": "string", + "description": "The stylistic tone of the draft text, such as formal, casual, or technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the drafted text output in characters.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeSections", + "type": "boolean", + "description": "Whether to organize the draft into labeled sections if input data suggests multiple segments.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the drafted text content in requested format, optionally divided into sections or paragraphs." + }, + "aiAgent": { + "useCase": "Use this tool when the user needs to transform raw notes, keywords, or brief thematic instructions into a structured draft text to accelerate writing or brainstorming. Ideal for generating paragraphs, summaries, or outlines based on minimal input. It helps produce a first-pass coherent text that can be manually reviewed or edited.", + "limitations": "This tool does not perform detailed content editing, fact-checking, or stylistic polishing beyond basic tone adjustment. It may generate generic or simplistic drafts if input data is sparse or lacks context.", + "examples": [ + "Create a draft text from keywords about climate change.", + "Generate a professional summary draft based on bullet points for a project update.", + "Draft a markdown formatted introduction about artificial intelligence." + ] + }, + "tags": [ + "text generation", + "drafting", + "data-transformation", + "content creation", + "writing assistant", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"climate change effects, global warming, renewable energy, impacts on agriculture\",\"outputFormat\":\"plain text\",\"language\":\"en\",\"tone\":\"formal\",\"maxLength\":500,\"includeSections\":true}", + "description": "Draft a formal plain text summary covering climate change and impacts with sections." + }, + { + "inputJson": "{\"inputData\":\"- Project update: milestones achieved - Next steps - Challenges faced\",\"outputFormat\":\"markdown\",\"language\":\"en\",\"tone\":\"professional\",\"maxLength\":300,\"includeSections\":true}", + "description": "Create a markdown draft summarizing project update bullet points with labeled sections." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "data-transformation.composeSentence", + "description": "This tool accepts arrays of words or phrases along with optional connectors and composes them into a coherent, grammatically correct English sentence. It handles capitalization and punctuation, producing a natural language sentence string as output.", + "category": "data-transformation", + "parameters": [ + { + "name": "words", + "type": "array", + "description": "An array of strings representing words or phrases to be composed into a sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "connector", + "type": "string", + "description": "A string used to connect the words or phrases, e.g., 'and', 'or', or a comma. Defaults to a space if not provided.", + "required": false, + "defaultValue": " " + }, + { + "name": "capitalizeFirstWord", + "type": "boolean", + "description": "Whether to capitalize the first word of the composed sentence. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "endPunctuation", + "type": "string", + "description": "Punctuation mark to end the sentence, e.g., '.', '?', '!'. Defaults to period '.' if not specified.", + "required": false, + "defaultValue": "." + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed sentence as a single string under the 'sentence' key." + }, + "aiAgent": { + "useCase": "Use this tool when you have discrete words or phrases that need to be combined into a fluent English sentence, such as when synthesizing text output from segmented data or assembling summarized content. It ensures proper punctuation and capitalization for readability.", + "limitations": "The tool does not perform deep semantic or grammatical analysis beyond basic concatenation and punctuation. It may not handle complex sentence structures or context-sensitive grammar correctly.", + "examples": [ + "Compose a sentence from the words ['apples', 'oranges', 'bananas'] connected by commas.", + "Create a sentence with the phrases ['The quick', 'brown fox', 'jumps over', 'the lazy dog'] connected by spaces and ending with an exclamation mark.", + "Join the words ['hello', 'world'] with 'and' as connector, without capitalizing the first word." + ] + }, + "tags": [ + "data-transformation", + "sentence", + "composition", + "text", + "nlp", + "natural-language" + ], + "examples": [ + { + "inputJson": "{\"words\":[\"apples\",\"oranges\",\"bananas\"],\"connector\":\", \",\"capitalizeFirstWord\":true,\"endPunctuation\":\".\"}", + "description": "Compose a sentence listing fruits with commas and ending with a period." + }, + { + "inputJson": "{\"words\":[\"The quick\",\"brown fox\",\"jumps over\",\"the lazy dog\"],\"connector\":\" \",\"capitalizeFirstWord\":true,\"endPunctuation\":\"!\"}", + "description": "Compose a full sentence from multiple phrases connected by spaces and ending with an exclamation mark." + }, + { + "inputJson": "{\"words\":[\"hello\",\"world\"],\"connector\":\" and \",\"capitalizeFirstWord\":false,\"endPunctuation\":\".\"}", + "description": "Compose a simple sentence joined by 'and' without capitalizing the first word." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "data-transformation.composeParagraph", + "description": "This tool accepts multiple text elements such as sentences or bullet points and composes them into a coherent, well-structured paragraph. It can optionally include a topic sentence and adjust style parameters like tone or formality. Output is a single string representing the composed paragraph.", + "category": "data-transformation", + "parameters": [ + { + "name": "textElements", + "type": "array", + "description": "Array of strings representing sentences or fragments to be combined into a paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "topicSentence", + "type": "string", + "description": "Optional sentence to appear at the beginning as the paragraph topic.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the paragraph, e.g., formal, informal, neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "includeTransitions", + "type": "boolean", + "description": "Whether to insert transition words and phrases to improve flow between sentences.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the paragraph in characters. Paragraph will be truncated if exceeded.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed paragraph as a single string under 'paragraph' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform multiple discrete text inputs into a fluid, natural paragraph, such as summarizing bullet points, combining fragmented notes, or rewriting text fragments in a unified style and tone. Ideal for generating polished paragraphs from raw or unstructured text pieces.", + "limitations": "It cannot generate new factual content beyond given inputs or perform deep semantic rewriting. It does not detect or correct factual errors within input fragments.", + "examples": [ + "Compose a paragraph from these bullet points about renewable energy.", + "Combine several sentences I have into a single formal paragraph.", + "Write a neutral tone paragraph including this topic sentence and related statements." + ] + }, + "tags": [ + "data-transformation", + "text-composition", + "paragraph-generation", + "natural-language-processing", + "style-adjustment" + ], + "examples": [ + { + "inputJson": "{\"textElements\":[\"Trees help improve air quality.\",\"They provide shade and habitat for wildlife.\",\"Planting more trees can combat climate change.\"],\"topicSentence\":\"Benefits of trees in urban environments.\",\"tone\":\"formal\",\"includeTransitions\":true,\"maxLength\":500}", + "description": "Compose a formal paragraph from given sentences about benefits of trees with a specified topic sentence." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "data-transformation.composeSummary", + "description": "This tool accepts an array of textual documents or sections and composes a coherent, concise summary that captures the key points. It processes multiple input texts by identifying main ideas, eliminating redundancy, and synthesizing information into a structured summary output as plain text.", + "category": "data-transformation", + "parameters": [ + { + "name": "documents", + "type": "array", + "description": "An array of strings, each representing a document or text section to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "The maximum length of the summary text in characters. If omitted, a default length is used.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) of the input documents and summary output.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "Whether to include a bullet point list of key highlights after the summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'summary' string with the synthesized summary text and optionally a 'highlights' array of key points if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you have multiple text documents or long textual inputs and need a summarized version that captures essential topics and insights for quicker understanding or reporting. Ideal for condensing meeting notes, articles, or research abstracts.", + "limitations": "It cannot provide verbatim transcripts or detailed analyses beyond summarization. It does not understand multimedia inputs or non-textual data.", + "examples": [ + "Summarize a set of product reviews into a single paragraph.", + "Create a concise executive summary from multiple meeting transcripts.", + "Generate bullet highlights from a research paper's sections." + ] + }, + "tags": [ + "summarization", + "text", + "document", + "compression", + "natural-language-processing", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"documents\":[\"Artificial intelligence is transforming technology sectors.\",\"Machine learning is a subset of AI focused on data-driven models.\",\"Deep learning uses neural networks to solve complex problems.\"],\"maxLength\":300,\"includeHighlights\":true}", + "description": "Summarize key points from multiple AI-related sentences with highlights." + }, + { + "inputJson": "{\"documents\":[\"The quarterly report shows increased revenues.\",\"Costs have decreased compared to last period.\",\"Future outlook remains positive despite market challenges.\"],\"maxLength\":200,\"includeHighlights\":false}", + "description": "Create a concise financial summary from quarterly report snippets without highlights." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "data-transformation.buildVariable", + "description": "Constructs a programming variable declaration string based on specified properties such as name, type, value, scope, and mutability. Accepts inputs defining these attributes and outputs a syntactically correct variable declaration compatible with common programming languages like JavaScript or TypeScript.", + "category": "data-transformation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The identifier name of the variable to be declared.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The programming data type of the variable (e.g., string, number, boolean). Use an empty string for type inference or languages that do not require explicit types.", + "required": false, + "defaultValue": "" + }, + { + "name": "initialValue", + "type": "string", + "description": "The initial value to assign to the variable as a string representation. Optional; can be empty for uninitialized variables.", + "required": false, + "defaultValue": "" + }, + { + "name": "scope", + "type": "string", + "description": "Specifies the scope of the variable declaration, e.g., 'local', 'global', or 'block'. Defaults to 'local'.", + "required": false, + "defaultValue": "local" + }, + { + "name": "mutable", + "type": "boolean", + "description": "Indicates whether the variable is mutable (true) or immutable/constant (false). Defaults to true (mutable).", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Target programming language syntax for declaration, currently supporting 'javascript', 'typescript'. Defaults to 'javascript'.", + "required": false, + "defaultValue": "javascript" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted variable declaration statement as a string under 'declaration', including proper keywords and syntax for the specified language and properties." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate syntactically correct variable declarations for code snippets, scripts, or configurations dynamically, according to specified characteristics such as name, type, mutability, and scope, tailored to JavaScript or TypeScript conventions.", + "limitations": "This tool currently supports only JavaScript and TypeScript syntax. It does not perform semantic checks of the initial value against the variable type, nor does it support other programming languages or complex data structures beyond simple assignments.", + "examples": [ + "Create a mutable local variable named 'count' of type number with initial value 0.", + "Build an immutable global string variable 'API_KEY' with a preset token string as value.", + "Generate a block-scoped variable named 'temp' without initial value in TypeScript." + ] + }, + "tags": [ + "data transformation", + "code generation", + "variable declaration", + "programming", + "javascript", + "typescript" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"count\",\"variableType\":\"number\",\"initialValue\":\"0\",\"scope\":\"local\",\"mutable\":true,\"language\":\"javascript\"}", + "description": "Declare a mutable local number variable named 'count' initialized to 0 in JavaScript." + }, + { + "inputJson": "{\"variableName\":\"API_KEY\",\"variableType\":\"string\",\"initialValue\":\"\\\"abc123token\\\"\",\"scope\":\"global\",\"mutable\":false,\"language\":\"javascript\"}", + "description": "Declare an immutable global string constant named 'API_KEY' initialized with a token string in JavaScript." + }, + { + "inputJson": "{\"variableName\":\"temp\",\"variableType\":\"string\",\"initialValue\":\"\",\"scope\":\"block\",\"mutable\":true,\"language\":\"typescript\"}", + "description": "Declare a mutable block-scoped string variable 'temp' without initial value in TypeScript." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "data-transformation.generateHeading", + "description": "Generates a formatted heading string based on input text and formatting preferences. Accepts a base text and options such as heading level, prefix, suffix, and capitalization, then outputs a string representing a heading in markdown or plain text formats.", + "category": "data-transformation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The main text content for the heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "The heading level (1-6) indicating the heading's depth or size.", + "required": false, + "defaultValue": "1" + }, + { + "name": "prefix", + "type": "string", + "description": "Optional text to prepend before the heading text, e.g., numbering or symbols.", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "Optional text to append after the heading text, such as special characters or notes.", + "required": false, + "defaultValue": "" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "Whether to capitalize the heading text (true) or leave as is (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "format", + "type": "string", + "description": "The output format style: 'markdown' for markdown headings, 'plain' for plain text with underlines.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string under the 'heading' key." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to generate standardized headings for documents, reports, or markdown files based on user input. It formats headings consistently for different levels and styles, improving document structure and readability.", + "limitations": "Does not support complex styling beyond basic markdown or simple plain text. It cannot generate HTML or rich text formatted headings.", + "examples": [ + "Generate a level 2 markdown heading with the text 'Project Overview' and prefix it with a number '2.'.", + "Create a plain text heading level 1 with capitalization enabled and a suffix ' - Draft'.", + "Produce a markdown heading level 3 with no prefix or suffix, leaving text case unchanged." + ] + }, + "tags": [ + "data-transformation", + "formatting", + "heading-generation", + "markdown", + "text-processing", + "content-structure" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Introduction to AI\",\"level\":1,\"prefix\":\"\",\"suffix\":\"\",\"capitalize\":true,\"format\":\"markdown\"}", + "description": "Generates a level 1 markdown heading with capitalized text 'Introduction to AI'." + }, + { + "inputJson": "{\"text\":\"Summary\",\"level\":3,\"prefix\":\"Section 3.1 - \",\"suffix\":\"\",\"capitalize\":false,\"format\":\"markdown\"}", + "description": "Generates a level 3 markdown heading with prefix 'Section 3.1 - ' and text 'Summary'." + }, + { + "inputJson": "{\"text\":\"Conclusions\",\"level\":2,\"prefix\":\"\",\"suffix\":\" - Final\",\"capitalize\":true,\"format\":\"plain\"}", + "description": "Generates a level 2 plain text heading with capitalized text and suffix ' - Final'." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "data-transformation.generateTrend", + "description": "Generates a trend analysis from time-series or sequential data arrays. Accepts numeric data points with optional timestamps, applies smoothing and regression methods, and outputs trend values, direction, and confidence metrics to help identify upward, downward, or stable trends over time.", + "category": "data-transformation", + "parameters": [ + { + "name": "dataPoints", + "type": "array", + "description": "Array of numeric data points representing the sequence or time series to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamps", + "type": "array", + "description": "Optional array of timestamp strings corresponding to each data point for time-based trend analysis. Must match dataPoints length if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "method", + "type": "string", + "description": "Trend detection method to use, e.g., 'linearRegression', 'movingAverage', or 'exponentialSmoothing'.", + "required": false, + "defaultValue": "linearRegression" + }, + { + "name": "windowSize", + "type": "number", + "description": "Window size for smoothing methods like moving average or exponential smoothing; ignored if method does not apply.", + "required": false, + "defaultValue": "3" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (0-1) for statistical metrics in trend detection, such as confidence intervals.", + "required": false, + "defaultValue": "0.95" + } + ], + "returns": { + "type": "object", + "description": "An object containing trend direction ('upward', 'downward', 'stable'), calculated trend values array, and confidence metrics (e.g., R-squared or error margins)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to discern overall directional trends from numeric data sequences, such as sales figures, stock prices, or sensor readings, especially when timestamps are available for time-based analysis. It supports multiple smoothing or regression techniques to adapt to data characteristics.", + "limitations": "Cannot handle categorical or non-numeric data. Assumes input data is cleaned and preprocessed; noisy data or irregular time intervals may reduce accuracy. Does not predict future values, only analyzes existing trends.", + "examples": [ + "Generate trend from last 30 days of daily sales numbers.", + "Analyze sensor temperature data with timestamps for upward or downward trend.", + "Apply moving average smoothing to stock price data and detect overall trend direction." + ] + }, + "tags": [ + "data-transformation", + "trend-analysis", + "time-series", + "regression", + "smoothing", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"dataPoints\":[10,12,14,15,18,20,23,25,27,30],\"method\":\"linearRegression\"}", + "description": "Detect trend direction for a simple ascending numeric array using linear regression." + }, + { + "inputJson": "{\"dataPoints\":[100,98,95,93,90,88,85,83,80,78],\"method\":\"movingAverage\",\"windowSize\":3}", + "description": "Identify a downward trend on noisy data smoothed with a 3-point moving average." + }, + { + "inputJson": "{\"dataPoints\":[50,52,49,50,51,50,52,53,55,54],\"timestamps\":[\"2024-01-01\",\"2024-01-02\",\"2024-01-03\",\"2024-01-04\",\"2024-01-05\",\"2024-01-06\",\"2024-01-07\",\"2024-01-08\",\"2024-01-09\",\"2024-01-10\"],\"method\":\"exponentialSmoothing\",\"windowSize\":2}", + "description": "Analyze trend of data with timestamps applying exponential smoothing for recent trend estimation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "data-transformation.generateXML", + "description": "Generates a well-formed XML string from structured input data provided as an object or array. It allows customization of the root element name, optional inclusion of XML declaration, and supports nested objects and arrays for complex XML structures. The output is a string containing the generated XML document.", + "category": "data-transformation", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The input data structure (object or array) to convert into XML format, representing elements and their values.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "The name of the root element in the generated XML document.", + "required": true, + "defaultValue": "root" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "Whether to include the XML declaration (e.g., ) at the top.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentation", + "type": "string", + "description": "String used for indenting nested XML elements. Set to empty string for no indentation.", + "required": false, + "defaultValue": " " + }, + { + "name": "attributePrefix", + "type": "string", + "description": "Prefix for keys in the data object that should be treated as XML attributes instead of elements.", + "required": false, + "defaultValue": "@" + } + ], + "returns": { + "type": "string", + "description": "A string containing the formatted XML document generated from the input data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert JSON-like structured data into a standardized XML format for systems or services that require XML input. It is useful for data interchange, configuration generation, or producing readable XML outputs from programmatic data sources.", + "limitations": "This tool does not validate whether the generated XML meets specific XML schema constraints or namespaces. It expects input data to be serializable into valid XML elements and attributes but does not handle advanced XML features like processing instructions beyond the declaration, CDATA sections, or mixed content.", + "examples": [ + "Generate XML for a simple object with nested elements.", + "Include attributes in elements by prefixing keys with @.", + "Produce XML without the XML declaration for embedding in larger documents." + ] + }, + "tags": [ + "data-transformation", + "XML", + "serialization", + "format-conversion", + "structured-data" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"person\":{\"@id\":\"123\",\"name\":\"John\",\"age\":30,\"address\":{\"street\":\"123 Main St\",\"city\":\"Anytown\"}}},\"rootElementName\":\"people\",\"includeDeclaration\":true}", + "description": "Convert a nested object representing a person with an id attribute and nested address into XML with 'people' as root element." + }, + { + "inputJson": "{\"data\":{\"book\":[{\"@isbn\":\"978-3-16-148410-0\",\"title\":\"Book One\"},{\"@isbn\":\"978-1-234-56789-7\",\"title\":\"Book Two\"}]},\"rootElementName\":\"library\",\"includeDeclaration\":false,\"indentation\":\" \"}", + "description": "Generate XML for an array of books with isbn attributes, formatted with 4 spaces indentation and no XML declaration." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "data-transformation.createTrend", + "description": "This tool accepts time series data as input and analyzes it to identify underlying trends. It applies statistical methods like moving averages or linear regression based on parameter choices to detect upward or downward trends over specified time windows. The output is a structured summary of trend direction, magnitude, and confidence metrics suitable for analytics or reporting.", + "category": "data-transformation", + "parameters": [ + { + "name": "dataPoints", + "type": "array", + "description": "An array of data points representing time series values; each element is an object with 'timestamp' (ISO 8601 string) and 'value' (number).", + "required": true, + "defaultValue": "" + }, + { + "name": "method", + "type": "string", + "description": "The trend detection method to apply, e.g., 'movingAverage' or 'linearRegression'.", + "required": false, + "defaultValue": "movingAverage" + }, + { + "name": "windowSize", + "type": "number", + "description": "Window size in data points to consider for moving average; ignored if method is not movingAverage.", + "required": false, + "defaultValue": "5" + }, + { + "name": "minDataPoints", + "type": "number", + "description": "Minimum number of data points required to perform trend analysis.", + "required": false, + "defaultValue": "10" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (0 to 1) threshold for reporting a trend as statistically significant.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output summary: 'summary' for concise or 'detailed' for full statistics.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "Structured result containing trend direction ('upward','downward','neutral'), magnitude (number), confidence metric (number), and optionally detailed statistics." + }, + "aiAgent": { + "useCase": "Use this tool when needing to identify and quantify trends from sequential numerical data such as sales figures, sensor readings, or stock prices. It helps automate detecting significant directional changes to support decision making in business intelligence, forecasting, and analytics pipelines.", + "limitations": "This tool only detects linear or moving average based trends and may not capture complex seasonal or non-linear patterns. It requires sufficient and clean time series data; noisy or sparse data can reduce accuracy.", + "examples": [ + "Analyze sales total over the last quarter to identify if revenue is increasing, stable, or declining.", + "Detect trends in website traffic data over the past month using moving average smoothing.", + "Provide detailed trend statistics for temperature sensor readings to assess climate changes." + ] + }, + "tags": [ + "data-transformation", + "time-series", + "trend-analysis", + "analytics", + "statistics", + "forecasting" + ], + "examples": [ + { + "inputJson": "{\"dataPoints\":[{\"timestamp\":\"2024-01-01T00:00:00Z\",\"value\":100},{\"timestamp\":\"2024-01-02T00:00:00Z\",\"value\":105},{\"timestamp\":\"2024-01-03T00:00:00Z\",\"value\":110},{\"timestamp\":\"2024-01-04T00:00:00Z\",\"value\":115},{\"timestamp\":\"2024-01-05T00:00:00Z\",\"value\":120}],\"method\":\"movingAverage\",\"windowSize\":3,\"confidenceLevel\":0.95,\"outputFormat\":\"summary\"}", + "description": "Detect upward trend in five daily sales values using a 3-day moving average and 95% confidence level, outputting a summary." + }, + { + "inputJson": "{\"dataPoints\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"value\":500},{\"timestamp\":\"2024-06-02T00:00:00Z\",\"value\":480},{\"timestamp\":\"2024-06-03T00:00:00Z\",\"value\":470},{\"timestamp\":\"2024-06-04T00:00:00Z\",\"value\":460},{\"timestamp\":\"2024-06-05T00:00:00Z\",\"value\":455},{\"timestamp\":\"2024-06-06T00:00:00Z\",\"value\":450}],\"method\":\"linearRegression\",\"minDataPoints\":5,\"outputFormat\":\"detailed\"}", + "description": "Identify a downward trend from six days of measurement values with linear regression, returning detailed statistics." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "data-transformation.generateHTML", + "description": "Generates an HTML document or fragment from structured data input such as JSON or object arrays. It accepts input data representing content elements and formatting instructions, processes this to build valid HTML markup, and outputs it as a string suitable for web display or embedding.", + "category": "data-transformation", + "parameters": [ + { + "name": "contentData", + "type": "object", + "description": "Structured data representing the content elements and their properties to be included in the HTML output.", + "required": true, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "Optional HTML template string with placeholders that define the overall structure into which contentData will be injected.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCss", + "type": "boolean", + "description": "Flag indicating whether to include basic inline CSS styles to enhance appearance of HTML elements.", + "required": false, + "defaultValue": "false" + }, + { + "name": "doctype", + "type": "string", + "description": "The document type declaration to use (e.g., \"\"). Defaults to HTML5 declaration if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "minify", + "type": "boolean", + "description": "Whether to minify the resulting HTML output by removing whitespace and line breaks for compactness.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string in the 'html' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured data into valid HTML markup for web pages, emails, or UI components. Ideal for dynamically generating HTML from JSON without manual string concatenation, facilitating automation or templating in web development and content publishing.", + "limitations": "Cannot perform complex layout or styling beyond simple inline CSS; does not render or preview HTML; not designed for converting unstructured text to HTML or for highly interactive web elements requiring JavaScript.", + "examples": [ + "Generate a full HTML page from JSON data describing headings, paragraphs, and images.", + "Create an HTML fragment from content objects to embed in an existing webpage.", + "Produce minified HTML output for lightweight email templates from structured content." + ] + }, + "tags": [ + "data-transformation", + "html-generation", + "templating", + "json-to-html", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"contentData\":{\"elements\":[{\"type\":\"h1\",\"text\":\"Welcome\"},{\"type\":\"p\",\"text\":\"This is an example paragraph.\"}]},\"includeCss\":true}", + "description": "Generate HTML with header and paragraph elements including basic CSS styling." + }, + { + "inputJson": "{\"contentData\":{\"elements\":[{\"type\":\"ul\",\"items\":[\"Item 1\",\"Item 2\",\"Item 3\"]}]},\"minify\":true}", + "description": "Create a minified HTML unordered list from array data." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "data-transformation.generateSchema", + "description": "Generates a JSON Schema from provided example JSON data or generalized data structure description. Accepts JSON examples or a simplified object description as input, analyzes data types and structure, and outputs a JSON Schema draft to validate similar JSON documents, supporting customization of schema version and required properties.", + "category": "data-transformation", + "parameters": [ + { + "name": "exampleData", + "type": "string", + "description": "A JSON string representing example data from which to infer the schema.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "object", + "description": "An optional simplified object describing keys and data types to generate the schema from, used if exampleData is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "schemaVersion", + "type": "string", + "description": "The version of JSON Schema to generate (e.g., draft-07, draft-2019-09).", + "required": false, + "defaultValue": "draft-07" + }, + { + "name": "includeRequiredProperties", + "type": "boolean", + "description": "Whether to mark all properties as 'required' in the generated schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to include in the generated JSON Schema metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JSON Schema as a JSON string, compatible with the specified schema version." + }, + "aiAgent": { + "useCase": "Use this tool when you have example JSON data or a description of the data structure and need to create a standard JSON Schema to validate data, ensure API consistency, or generate documentation. It aids in automating schema generation rather than handcrafting schemas manually.", + "limitations": "Cannot perfectly infer schemas when example data is incomplete or unrepresentative; complex constraints like pattern or conditional schemas are not generated; only standard JSON Schema constructs are supported.", + "examples": [ + "Generate a JSON Schema from sample JSON payload of a user profile API.", + "Create a schema draft-2019-09 for a configuration object described by key types.", + "Infer required properties when example data has all fields set." + ] + }, + "tags": [ + "data-transformation", + "json", + "schema-generation", + "validation", + "json-schema", + "data-structure" + ], + "examples": [ + { + "inputJson": "{\"exampleData\":\"{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30,\\\"email\\\":\\\"alice@example.com\\\"}\",\"schemaVersion\":\"draft-07\",\"includeRequiredProperties\":true}", + "description": "Generate a draft-07 JSON Schema from a user example JSON and mark all fields as required." + }, + { + "inputJson": "{\"description\":{\"name\":\"string\",\"age\":\"number\",\"subscriber\":\"boolean\"},\"schemaVersion\":\"draft-2019-09\",\"includeRequiredProperties\":false}", + "description": "Generate draft-2019-09 JSON Schema from a simple object description without required property enforcement." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "data-transformation.createChart", + "description": "Creates a data visualization chart from structured data input. Accepts data in JSON array format with configurable chart type (bar, line, pie, etc.), labels, and styling options. Outputs a chart image URL or embedded HTML for display or further use.", + "category": "data-transformation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing data points; each object must contain values for x-axis and y-axis dimensions or categories.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to create, e.g., 'bar', 'line', 'pie', 'scatter'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title text to display on the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the x-axis of the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the y-axis of the chart (not applicable for pie charts).", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the chart in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the chart in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme or palette to use for chart elements.", + "required": false, + "defaultValue": "default" + }, + { + "name": "legend", + "type": "boolean", + "description": "Whether to show the legend on the chart.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a chartUrl (string) pointing to the generated chart image or embedCode (string) with HTML/SVG for inline embedding." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to convert raw structured data into visual charts to help users understand trends, comparisons, or distributions. Ideal for dashboards, reports, and data presentations. The agent provides flexible options to customize chart type, labels, size, and colors to fit different visualization needs.", + "limitations": "This tool does not perform data cleaning or transformation beyond basic plotting. It requires preprocessed, structured data. It cannot generate complex visualizations like heatmaps or 3D charts and does not support real-time interactive charts.", + "examples": [ + "Generate a bar chart of monthly sales with labels and title.", + "Create a pie chart showing market share from given category data.", + "Produce a line chart with x-axis as dates and y-axis as values, customized colors." + ] + }, + "tags": [ + "data visualization", + "chart creation", + "reporting", + "dashboard", + "data-transformation", + "visualization", + "graph", + "plotting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"January\",\"sales\":150},{\"month\":\"February\",\"sales\":200}],\"chartType\":\"bar\",\"title\":\"Monthly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales\",\"width\":800,\"height\":600,\"colorScheme\":\"blue\",\"legend\":true}", + "description": "Creates a blue bar chart showing sales figures per month with axis labels and legend." + }, + { + "inputJson": "{\"data\":[{\"category\":\"A\",\"value\":40},{\"category\":\"B\",\"value\":60}],\"chartType\":\"pie\",\"title\":\"Market Share\",\"width\":500,\"height\":500}", + "description": "Generates a pie chart representing market share between two categories with a title." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2023-01-01\",\"value\":100},{\"date\":\"2023-01-02\",\"value\":120}],\"chartType\":\"line\",\"title\":\"Daily Values\",\"xAxisLabel\":\"Date\",\"yAxisLabel\":\"Value\",\"colorScheme\":\"green\",\"legend\":false}", + "description": "Produces a green line chart plotting values by date without legend, sized 600x400." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "data-transformation.createReply", + "description": "This tool generates a structured reply message based on an incoming message and optional instructions. It accepts input data including the original message text, recipient information, desired tone, and format style. The tool processes these inputs to create a coherent, contextually appropriate reply text output that can be used in communication workflows or messaging systems.", + "category": "data-transformation", + "parameters": [ + { + "name": "originalMessage", + "type": "string", + "description": "The text content of the message to which this reply will respond.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "The name of the recipient to personalize the reply (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the reply such as 'formal', 'informal', 'friendly', or 'professional'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a signature at the end of the reply message.", + "required": false, + "defaultValue": "false" + }, + { + "name": "signatureText", + "type": "string", + "description": "The custom signature text to include if includeSignature is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "replyFormat", + "type": "string", + "description": "The format style for the reply, e.g., 'plain text', 'markdown', or 'html'.", + "required": false, + "defaultValue": "plain text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply message string and metadata such as length and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a reply message that fits the context of an incoming message with optional personalization, tone adjustment, and formatting. It is suitable for automating customer support replies, chatbot responses, or templated email drafting.", + "limitations": "This tool cannot generate deeply personalized content requiring extensive contextual understanding beyond the original message and given parameters. It is not intended for multi-turn dialog generation or complex natural language understanding.", + "examples": [ + "Generate a friendly reply to an email asking about product availability.", + "Create a formal reply message including a signature in HTML format.", + "Produce an informal plain text reply addressing the recipient by name." + ] + }, + "tags": [ + "data-transformation", + "communication", + "message-reply", + "text-generation", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"originalMessage\":\"Hi, I would like to know the status of my order.\",\"recipientName\":\"John\",\"tone\":\"friendly\",\"includeSignature\":true,\"signatureText\":\"Best regards, Support Team\",\"replyFormat\":\"plain text\"}", + "description": "Generate a friendly plain text reply to a customer's inquiry including a signature." + }, + { + "inputJson": "{\"originalMessage\":\"Please send me the updated report by EOD.\",\"tone\":\"formal\",\"includeSignature\":false,\"replyFormat\":\"markdown\"}", + "description": "Create a formal reply in markdown format without signature." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "data-transformation.createHTML", + "description": "This tool converts structured data inputs, such as JSON or arrays representing content elements, into a well-formed HTML string. It supports customization of HTML tags, attributes, and nesting to produce valid HTML markup suitable for web pages, emails, or other HTML-consuming platforms.", + "category": "data-transformation", + "parameters": [ + { + "name": "content", + "type": "array", + "description": "An array of content objects defining HTML elements, text, and their hierarchical structure. Each object can specify tagName, attributes, and children.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the output HTML to improve readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "selfClosingTags", + "type": "array", + "description": "Custom list of tag names to treat as self-closing during HTML generation, e.g., ['img','br']. Default includes common self-closing tags.", + "required": false, + "defaultValue": "[\"img\",\"br\",\"hr\",\"input\",\"meta\",\"link\"]" + }, + { + "name": "escapeContent", + "type": "boolean", + "description": "Whether to escape special HTML characters in text content to prevent injection issues.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDocType", + "type": "boolean", + "description": "Whether to prepend a declaration to the output HTML string.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML markup as a string under the 'html' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate clean, valid HTML markup from structured data specifying content and element hierarchy, such as converting JSON representations of a webpage, email template, or UI component into actual HTML code. It's useful when dynamic HTML generation is needed without manual string concatenation.", + "limitations": "This tool does not perform CSS styling or JavaScript integration. It generates static HTML markup only, based on the structure and attributes provided. It does not validate correctness of input content beyond basic structure and does not sanitize inputs beyond optional content escaping.", + "examples": [ + "Generate a complete HTML snippet from a nested JSON describing a webpage structure.", + "Convert an array of text and image elements into email-ready HTML markup.", + "Produce readable and indented HTML code from data for server-side rendering." + ] + }, + "tags": [ + "data-transformation", + "html-generation", + "markup", + "json-to-html", + "web", + "email-template", + "static-html" + ], + "examples": [ + { + "inputJson": "{\"content\":[{\"tagName\":\"div\",\"attributes\":{\"class\":\"container\"},\"children\":[{\"tagName\":\"h1\",\"children\":[{\"text\":\"Welcome\"}]},{\"tagName\":\"p\",\"children\":[{\"text\":\"This is a generated HTML paragraph.\"}]}]}],\"indentation\":2,\"escapeContent\":true,\"includeDocType\":true}", + "description": "Generate an indented HTML string with a div container, including a heading and paragraph, starting with the HTML doctype." + }, + { + "inputJson": "{\"content\":[{\"tagName\":\"img\",\"attributes\":{\"src\":\"image.png\",\"alt\":\"Example image\"}}],\"selfClosingTags\":[\"img\"],\"includeDocType\":false}", + "description": "Generate a simple HTML snippet containing a self-closing image tag, without the doctype declaration." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "data-transformation.createThreat", + "description": "This tool generates a structured threat object based on provided descriptions, attributes, and context inputs. It accepts raw textual descriptions of security threats, severity scores, affected assets, and optional temporal and actor information. The tool processes the input to produce a normalized JSON threat object suitable for integration into security databases or risk assessment workflows.", + "category": "data-transformation", + "parameters": [ + { + "name": "description", + "type": "string", + "description": "A detailed textual description of the threat (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "number", + "description": "Numeric severity score of the threat, typically 0 to 10 scale (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedAssets", + "type": "array", + "description": "List of asset identifiers or names impacted by the threat (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "threatType", + "type": "string", + "description": "Categorical threat type or classification, e.g., malware, phishing, insider threat (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "discoveredAt", + "type": "string", + "description": "ISO 8601 formatted timestamp when the threat was discovered (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "actor", + "type": "string", + "description": "Name or identifier of the threat actor or source if known (optional).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A normalized JSON object representing the threat with fields: id (unique UUID), description, severity, affectedAssets, threatType, discoveredAt, actor, and creationTimestamp." + }, + "aiAgent": { + "useCase": "Use this tool when given raw information describing a potential security threat and needing to convert it into a consistent, structured threat record for logging, analysis, or further automated processing.", + "limitations": "This tool does not perform threat detection or validation; it only formats and normalizes input data into a structured threat object. It cannot infer severity or affected assets without explicit input.", + "examples": [ + "Create a threat record for a newly discovered malware affecting several servers with a high severity score.", + "Generate a threat object from a phishing campaign report including suspected attacker info and affected user emails.", + "Produce a structured threat entry from an insider threat description with specified impacted assets and discovery time." + ] + }, + "tags": [ + "data-transformation", + "security", + "threat-modeling", + "risk-assessment", + "json", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"description\":\"Ransomware infection detected on database server\",\"severity\":9.5,\"affectedAssets\":[\"db-server-01\",\"db-server-02\"],\"threatType\":\"malware\",\"discoveredAt\":\"2024-06-01T14:30:00Z\",\"actor\":\"Unknown\"}", + "description": "Create a threat record for ransomware infection detected on critical assets with high severity." + }, + { + "inputJson": "{\"description\":\"Phishing emails sent to multiple employees requesting credentials\",\"severity\":6,\"affectedAssets\":[\"employee-email-accounts\"],\"threatType\":\"phishing\",\"discoveredAt\":\"2024-05-20T09:15:00Z\"}", + "description": "Generate a threat object for a phishing campaign affecting company email accounts." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "data-transformation.createThread", + "description": "Creates a structured communication thread object from provided messages and metadata. Accepts an array of message objects and optional thread-level metadata; organizes and outputs a single thread object suitable for use in messaging or collaboration systems.", + "category": "data-transformation", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of message objects to include in the thread, each containing sender, timestamp, and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "threadId", + "type": "string", + "description": "Unique identifier for the thread; if omitted, a UUID will be generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title or subject for the thread to summarize its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "createdBy", + "type": "string", + "description": "Identifier of the user or system creating the thread.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata for the thread such as tags, priority, or status.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A thread object containing threadId, title, createdBy, messages (array), createdAt timestamp, and included metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you have a collection of messages and want to programmatically assemble them into a cohesive thread object that can be stored, transmitted, or processed by communication or collaboration systems. It helps unify message data with thread-level context efficiently.", + "limitations": "This tool does not handle message content validation, does not merge threads, and does not support real-time synchronization or concurrent edits.", + "examples": [ + "Create a thread from a list of chat messages with a given title.", + "Aggregate email replies into a structured thread object including metadata tags.", + "Generate a discussion thread object for a forum post with messages and author info." + ] + }, + "tags": [ + "data-transformation", + "thread", + "communication", + "messaging", + "structure", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"sender\":\"user1\",\"timestamp\":\"2024-06-01T12:00:00Z\",\"content\":\"Hello, how are you?\"},{\"sender\":\"user2\",\"timestamp\":\"2024-06-01T12:05:00Z\",\"content\":\"I'm good, thanks!\"}],\"title\":\"Greeting Conversation\",\"createdBy\":\"system\"}", + "description": "Create a simple thread from two greeting messages with a title and creator ID." + }, + { + "inputJson": "{\"messages\":[{\"sender\":\"alice@example.com\",\"timestamp\":\"2024-06-02T08:30:00Z\",\"content\":\"Meeting at 10 AM.\"},{\"sender\":\"bob@example.com\",\"timestamp\":\"2024-06-02T08:45:00Z\",\"content\":\"Confirmed, see you then.\"}],\"threadId\":\"thread-12345\",\"metadata\":{\"priority\":\"high\",\"tags\":[\"meeting\",\"schedule\"]}}", + "description": "Create a thread representing an email exchange about a meeting with custom ID and additional metadata." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "data-transformation.createIncident", + "description": "Creates a standardized security incident record from raw event data inputs. Accepts parameters like event source, timestamp, severity, description, and related assets. Processes this input to construct a structured incident object suitable for downstream security workflows and tracking.", + "category": "data-transformation", + "parameters": [ + { + "name": "eventSource", + "type": "string", + "description": "Identifier or name of the source system or tool generating the incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string when the incident was detected or reported.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the incident (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed textual description summarizing the incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedAssets", + "type": "array", + "description": "List of asset identifiers affected or involved in the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "incidentType", + "type": "string", + "description": "Category or type of the incident (e.g., malware, phishing, data breach).", + "required": false, + "defaultValue": "" + }, + { + "name": "detectedBy", + "type": "string", + "description": "Name or ID of the detection mechanism or analyst who identified the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalData", + "type": "object", + "description": "Optional key-value pairs of extra metadata relevant to the incident.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A structured incident object including a unique incident ID, all provided details, and a creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when converting raw security event inputs into a formal incident record for integration with incident management, alerting, or reporting systems. It standardizes various input data into a consistent security incident format.", + "limitations": "Does not perform incident detection or classification itself; relies on provided input parameters. It does not persist incidents in any data store or trigger workflows.", + "examples": [ + "Create an incident record from a detected malware alert with related asset info.", + "Format phishing email report data into incident standard structure.", + "Generate a security incident item given a critical vulnerability notification." + ] + }, + "tags": [ + "data-transformation", + "security", + "incident", + "creation", + "standardization" + ], + "examples": [ + { + "inputJson": "{\"eventSource\":\"IDS-01\",\"timestamp\":\"2024-06-01T12:30:45Z\",\"severity\":\"high\",\"description\":\"Multiple failed login attempts detected from IP 192.168.1.100.\",\"relatedAssets\":[\"host-007\",\"vpn-gateway\"],\"incidentType\":\"brute-force\",\"detectedBy\":\"IntrusionDetectionSystem\"}", + "description": "Creating an incident from intrusion detection system alert about brute-force login attempts." + }, + { + "inputJson": "{\"eventSource\":\"EmailFilter\",\"timestamp\":\"2024-06-01T08:15:00Z\",\"severity\":\"medium\",\"description\":\"Phishing email reported by user with suspicious attachment.\",\"incidentType\":\"phishing\",\"detectedBy\":\"UserReport\"}", + "description": "Generating an incident record for a user-reported phishing email." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "data-transformation.createSecret", + "description": "Generates a secure secret string suitable for use as an API key, password, or cryptographic token. Accepts parameters controlling length, complexity, and character sets, producing a random secret string that meets specified security requirements.", + "category": "data-transformation", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "The desired length of the generated secret string, between 8 and 128 characters.", + "required": true, + "defaultValue": "32" + }, + { + "name": "includeUppercase", + "type": "boolean", + "description": "Whether to include uppercase letters (A-Z) in the secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeLowercase", + "type": "boolean", + "description": "Whether to include lowercase letters (a-z) in the secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeNumbers", + "type": "boolean", + "description": "Whether to include numeric digits (0-9) in the secret.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSymbols", + "type": "boolean", + "description": "Whether to include special symbols (e.g., !@#$%) in the secret.", + "required": false, + "defaultValue": "false" + }, + { + "name": "excludeSimilarCharacters", + "type": "boolean", + "description": "Whether to exclude characters that can be visually confused (e.g., 'O' and '0', 'I' and 'l').", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secret string under 'secret' key." + }, + "aiAgent": { + "useCase": "Use this tool when a random, secure string is needed for credentials, tokens, or keys that require configurable complexity and length to meet security policies or system requirements. Ideal in automation workflows generating API keys, passwords, or cryptographic material on demand.", + "limitations": "This tool does not store or manage generated secrets; it only produces them. It cannot validate existing secrets or enforce policies beyond included parameters.", + "examples": [ + "Generate a 64-character API key including uppercase, lowercase, numbers, and symbols.", + "Create a 16-character password excluding ambiguous characters like 'O' and '0'.", + "Produce a 24-character token consisting of lowercase letters and numbers only." + ] + }, + "tags": [ + "security", + "secret-generation", + "password", + "token", + "random-string" + ], + "examples": [ + { + "inputJson": "{\"length\":64,\"includeUppercase\":true,\"includeLowercase\":true,\"includeNumbers\":true,\"includeSymbols\":true,\"excludeSimilarCharacters\":true}", + "description": "Generate a secure 64-character secret with full complexity including symbols, excluding ambiguous characters." + }, + { + "inputJson": "{\"length\":16,\"includeUppercase\":false,\"includeLowercase\":true,\"includeNumbers\":true,\"includeSymbols\":false,\"excludeSimilarCharacters\":true}", + "description": "Generate a 16-character secret with lowercase letters and numbers, no uppercase or symbols, excluding ambiguous characters." + }, + { + "inputJson": "{\"length\":24,\"includeUppercase\":false,\"includeLowercase\":true,\"includeNumbers\":true,\"includeSymbols\":false,\"excludeSimilarCharacters\":false}", + "description": "Generate a 24-character secret with lowercase letters and numbers, allowing all characters including similar looking ones." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "data-transformation.createXML", + "description": "Converts structured data (JSON object or array) into an XML string. Accepts input data and configuration options to control root element name, item element names, and whether to include XML declaration. Outputs a well-formed XML string representing the input data structure.", + "category": "data-transformation", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The JSON data object or array to be converted to XML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "The name of the root XML element wrapping the entire output. Defaults to 'root'.", + "required": false, + "defaultValue": "root" + }, + { + "name": "itemElementName", + "type": "string", + "description": "For arrays, the XML element name used for each item. Defaults to 'item'.", + "required": false, + "defaultValue": "item" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "Whether to include the XML declaration header at the top. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentation", + "type": "string", + "description": "Characters used for indentation in output XML for readability (e.g., '\\t' or spaces). Defaults to two spaces.", + "required": false, + "defaultValue": " " + } + ], + "returns": { + "type": "object", + "description": "An object containing the resulting XML string under the 'xmlString' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform JSON structured data into XML format for integration with systems that require XML input, data export, or configuration files. Ideal for converting API responses, data dumps, or configuration objects into XML.", + "limitations": "Cannot handle circular references in input data. Does not support XML attributes or namespaces in this version, only element-based XML. Large or deeply nested objects may result in verbose XML.", + "examples": [ + "Convert user profile JSON into an XML document for legacy system ingestion.", + "Generate XML configuration from JSON settings object.", + "Transform an array of records into XML list elements wrapped in a root node." + ] + }, + "tags": [ + "data-transformation", + "xml", + "json-to-xml", + "serialization", + "format-conversion" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"users\":[{\"name\":\"Alice\",\"age\":30},{\"name\":\"Bob\",\"age\":25}]},\"rootElementName\":\"Users\",\"itemElementName\":\"User\",\"includeDeclaration\":true,\"indentation\":\" \"}", + "description": "Convert an array of user objects into XML with root and item elements including XML declaration." + }, + { + "inputJson": "{\"data\":{\"settings\":{\"theme\":\"dark\",\"notifications\":true}},\"rootElementName\":\"Settings\",\"includeDeclaration\":false,\"indentation\":\"\\t\"}", + "description": "Convert a JSON settings object into XML without the XML declaration using tab character indentation." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "data-transformation.createWorkflow", + "description": "Creates an automated data transformation workflow based on specified input data format, transformation steps, and desired output format. Accepts configurations defining source data schema, a sequence of transformation rules (filtering, mapping, aggregations), and outputs a reusable workflow script or configuration object suitable for execution in ETL or data pipeline environments.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputFormat", + "type": "string", + "description": "The format of the input data to be processed (e.g., 'CSV', 'JSON', 'XML').", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format for the transformed output data (e.g., 'JSON', 'Parquet').", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationSteps", + "type": "array", + "description": "An ordered list of transformation step objects defining actions like map, filter, reduce with their parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "workflowName", + "type": "string", + "description": "A name identifier for the generated workflow.", + "required": false, + "defaultValue": "\"MyDataWorkflow\"" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the workflow purpose or behavior.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeValidation", + "type": "boolean", + "description": "Whether to include input validation and error handling steps in the workflow.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A workflow object that includes the full transformation pipeline configuration, metadata, and optionally an executable script snippet or JSON configuration for pipelines." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate complex data transformations across different data formats by generating a reusable workflow configuration or script. Ideal for agents tasked with constructing ETL pipelines, data ingestion automation, or converting data formats with multiple chained transformations.", + "limitations": "This tool does not execute the workflow, it only generates the configuration or code representation. It cannot validate data correctness beyond schema compliance. Transformation logic must be provided; it cannot infer transformations automatically.", + "examples": [ + "Create a workflow to transform CSV input by filtering rows where age > 30, mapping 'name' to uppercase, and output as JSON.", + "Generate a data pipeline that aggregates sales data by region from JSON files and exports it as Parquet format.", + "Build a workflow that validates XML inputs, enriches them by adding computed fields, and outputs cleaned JSON data." + ] + }, + "tags": [ + "data-transformation", + "workflow", + "ETL", + "pipeline", + "automation", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"inputFormat\":\"CSV\",\"outputFormat\":\"JSON\",\"transformationSteps\":[{\"action\":\"filter\",\"condition\":\"age > 30\"},{\"action\":\"map\",\"fields\":{\"name\":\"toUpperCase\"}}],\"workflowName\":\"FilterAndFormat\",\"description\":\"Filters CSV rows and outputs JSON.\",\"includeValidation\":true}", + "description": "Workflow to filter CSV data by age and output in JSON format." + }, + { + "inputJson": "{\"inputFormat\":\"JSON\",\"outputFormat\":\"Parquet\",\"transformationSteps\":[{\"action\":\"aggregate\",\"groupBy\":[\"region\"],\"aggregations\":{\"sales\":\"sum\"}}],\"workflowName\":\"RegionalSalesAggregate\",\"description\":\"Aggregate sales data by region.\",\"includeValidation\":false}", + "description": "Aggregate JSON sales data by region and output Parquet." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "data-transformation.createPackage", + "description": "Creates a code package archive from specified source files and metadata. Accepts an object describing file contents, package name, version, and optional metadata. Processes inputs by organizing files and metadata into a structured code package format (e.g., ZIP archive with manifest). Outputs a base64-encoded string representing the package archive ready for distribution or deployment.", + "category": "data-transformation", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "The name of the package to be created, used as the root folder and metadata identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Semantic version string for the package, e.g., '1.0.0'.", + "required": true, + "defaultValue": "" + }, + { + "name": "files", + "type": "object", + "description": "An object where keys are file paths and values are the respective file content strings to include in the package.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata key-value pairs to include in the package manifest, such as author or description.", + "required": false, + "defaultValue": "" + }, + { + "name": "compress", + "type": "boolean", + "description": "Flag indicating whether to compress the package archive (true for compressed ZIP, false for uncompressed folder structure archive).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64-encoded 'packageArchive' string of the created package and the 'archiveFormat' string specifying the archive format (e.g., 'zip')." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to bundle source code files with metadata into a deployable or distributable package format. Ideal for creating modular code packages, libraries, or modules from dynamically generated or provided source code and metadata. Supports structured packaging for automated publishing workflows.", + "limitations": "This tool only creates archives containing code files and metadata; it does not perform dependency resolution, build compilation, or publish packages to package registries.", + "examples": [ + "Create a JavaScript library package from source files with version and author metadata.", + "Bundle multiple source code files into a compressed archive for deployment.", + "Generate a versioned package archive from dynamically generated code snippets with descriptive metadata." + ] + }, + "tags": [ + "data-transformation", + "package", + "code", + "archive", + "bundle", + "versioning" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"example-lib\",\"version\":\"1.2.3\",\"files\":{\"index.js\":\"console.log(\\\"Hello World\\\");\",\"README.md\":\"# Example Lib\"},\"metadata\":{\"author\":\"Jane Doe\",\"description\":\"An example JS library.\"},\"compress\":true}", + "description": "Creating a compressed JavaScript library package with specified files and metadata." + }, + { + "inputJson": "{\"packageName\":\"utils\",\"version\":\"0.1.0\",\"files\":{\"utils.js\":\"export function add(a,b){return a+b;}\",\"LICENSE\":\"MIT License\"},\"metadata\":{},\"compress\":false}", + "description": "Creating an uncompressed package archive with utility functions and a license file." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "data-transformation.createSpec", + "description": "Creates a structured specification document from provided input parameters describing a data transformation process. Accepts inputs like data source description, transformation steps, expected outputs, and metadata. Produces a JSON or YAML spec file detailing the full transformation specification suitable for documentation or tooling ingestion.", + "category": "data-transformation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the specification document.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version identifier for the spec, e.g., '1.0.0'.", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "description", + "type": "string", + "description": "Detailed textual description of the data transformation.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "author", + "type": "string", + "description": "Name of the author or responsible party for the spec.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "inputSchema", + "type": "object", + "description": "Schema or structure description of the input data, can be JSON Schema or similar.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationSteps", + "type": "array", + "description": "Array of transformation step objects describing each action in the pipeline.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputSchema", + "type": "object", + "description": "Schema or structure expected for the output data after transformation.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the spec document, e.g., 'json' or 'yaml'.", + "required": false, + "defaultValue": "\"json\"" + } + ], + "returns": { + "type": "object", + "description": "Specification document as a string in the requested format (JSON/YAML) under the 'specDocument' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a formalized specification document describing data transformation logic, input and output data structures, and metadata for sharing, documentation, or automation purposes. It is ideal in data engineering pipelines, API specifications, or integration scenarios requiring clear transformation specs.", + "limitations": "This tool does not validate the logical correctness of the transformation steps or execute the transformations. It only produces a structured spec document based on the given input parameters.", + "examples": [ + "Create a spec document for a CSV to JSON transformation pipeline with defined input and output schemas.", + "Generate a YAML spec describing multiple ETL steps including filters and joins with metadata.", + "Produce a specification file summarizing a data aggregation transformation including author and version info." + ] + }, + "tags": [ + "data-transformation", + "specification", + "documentation", + "ETL", + "schema", + "json", + "yaml" + ], + "examples": [ + { + "inputJson": "{\"title\":\"CSV to JSON Transformation\",\"version\":\"1.0.0\",\"description\":\"Transforms customer data from CSV format to JSON with field mapping.\",\"author\":\"Data Engineer\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"integer\"},\"email\":{\"type\":\"string\"}},\"required\":[\"name\",\"email\"]},\"transformationSteps\":[{\"step\":\"parse CSV\",\"description\":\"Parse CSV file into structured format.\"},{\"step\":\"map fields\",\"description\":\"Map CSV columns to JSON keys.\"}],\"outputSchema\":{\"type\":\"object\",\"properties\":{\"fullName\":{\"type\":\"string\"},\"contact\":{\"type\":\"string\"}},\"required\":[\"fullName\",\"contact\"]},\"format\":\"json\"}", + "description": "Create a JSON spec document defining a CSV to JSON data transformation process with schemas and steps." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "data-transformation.createResume", + "description": "Generates a formatted resume document (in PDF or plain text) from structured input data including personal details, professional experience, education, skills, and optional sections like projects and certifications. Supports customization of layout and output format for professional job applications.", + "category": "data-transformation", + "parameters": [ + { + "name": "personalDetails", + "type": "object", + "description": "Personal information such as name, contact, and summary to include in the resume header.", + "required": true, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "List of previous job roles with details like title, company, dates, and descriptions to appear in the experience section.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "Educational background entries including degrees, institutions, and graduation dates.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Array of skill strings to display in the skills section.", + "required": true, + "defaultValue": "" + }, + { + "name": "projects", + "type": "array", + "description": "Optional section listing notable projects with descriptions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "certifications", + "type": "array", + "description": "Optional list of certifications to include.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the resume document, e.g., \"pdf\" or \"txt\".", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "templateStyle", + "type": "string", + "description": "Choice of visual style template for formatting the resume, e.g., \"modern\", \"classic\".", + "required": false, + "defaultValue": "modern" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resume content as a base64 encoded string and metadata such as filename and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert detailed structured candidate information into a professional, formatted resume output suitable for job applications or sharing. It automates resume generation from raw data inputs to reduce manual formatting.", + "limitations": "Does not interpret or validate content quality, nor does it extract data from unstructured text. Limited to supported templates and formats (PDF, TXT).", + "examples": [ + "Create a resume PDF from candidate data including experience and skills.", + "Generate a text version resume with a classic template style.", + "Produce a resume including projects and certifications in modern PDF format." + ] + }, + "tags": [ + "data-transformation", + "resume", + "document-generation", + "pdf", + "txt", + "job-application" + ], + "examples": [ + { + "inputJson": "{\"personalDetails\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phone\":\"555-1234\",\"summary\":\"Experienced software developer\"},\"workExperience\":[{\"title\":\"Senior Developer\",\"company\":\"TechCorp\",\"startDate\":\"2018-01\",\"endDate\":\"2023-04\",\"description\":\"Led development teams and designed scalable systems.\"}],\"education\":[{\"degree\":\"BSc Computer Science\",\"institution\":\"State University\",\"graduationYear\":\"2017\"}],\"skills\":[\"JavaScript\",\"Python\",\"Cloud Computing\"],\"projects\":[{\"name\":\"Open Source Library\",\"description\":\"Created a popular JavaScript library.\"}],\"certifications\":[\"Certified Scrum Master\"],\"outputFormat\":\"pdf\",\"templateStyle\":\"modern\"}", + "description": "Generate a PDF resume in modern style with full sections." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "data-validation.analyzeReference", + "description": "Analyzes a given bibliographic reference or citation string to validate its format, check for required elements (author, title, year, source), and detect common errors or inconsistencies. Accepts reference strings and style guidelines as input, then outputs detailed validation results including parsed components and error notes.", + "category": "data-validation", + "parameters": [ + { + "name": "referenceString", + "type": "string", + "description": "The bibliographic reference or citation string to be analyzed and validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style to validate against, such as APA, MLA, Chicago. Helps to enforce formatting rules.", + "required": false, + "defaultValue": "APA" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "If true, enforces strict compliance with the citation style rules. If false, allows some common formatting variations.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing parsed elements (author, title, year, source), a boolean indicating validity, and an array of detected errors or warnings." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess the correctness and completeness of bibliographic references in texts, ensuring conformity to specified citation styles or spotting inconsistencies and missing information.", + "limitations": "This tool cannot retrieve bibliographic data from external databases or verify the factual correctness of references; it only validates format and presence of common citation elements.", + "examples": [ + "Validate if this reference complies with APA style.", + "Check for errors in this MLA citation string.", + "Analyze this citation for missing author or year information." + ] + }, + "tags": [ + "validation", + "bibliography", + "citation", + "reference", + "formatting", + "APA", + "MLA", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"referenceString\":\"Smith, J. (2020). Understanding AI. Journal of Tech, 15(3), 45-67.\",\"citationStyle\":\"APA\",\"strictMode\":true}", + "description": "Validates a typical APA style journal article citation strictly." + }, + { + "inputJson": "{\"referenceString\":\"Doe, J. Exploring, AI: A new era 2021.\",\"citationStyle\":\"MLA\",\"strictMode\":false}", + "description": "Analyzes a loosely formatted MLA citation allowing some flexibility." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "data-validation.analyzeHeading", + "description": "Analyzes heading text content for quality and formatting consistency. Accepts heading strings or arrays of heading texts, checks for spelling errors, length appropriateness, style consistency (like capitalization), and detects potential formatting issues. Returns detailed reports highlighting issues and suggestions to improve heading clarity and presentation.", + "category": "data-validation", + "parameters": [ + { + "name": "headings", + "type": "array", + "description": "An array of heading strings to analyze for quality and consistency.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') used for spell checking and grammar rules.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum recommended heading length in characters; headings longer than this will be flagged.", + "required": false, + "defaultValue": "60" + }, + { + "name": "checkCapitalization", + "type": "boolean", + "description": "If true, the tool checks for consistent capitalization style on headings.", + "required": false, + "defaultValue": "true" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Specifies a style guide to follow for capitalization and formatting (e.g., \"AP\", \"Chicago\") or empty for general rules.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing an array of heading analyses including detected issues, severity, and suggestions for each heading." + }, + "aiAgent": { + "useCase": "Use this tool when you need to validate and improve heading text sections in documents, websites, or applications to ensure they are clear, correctly spelled, consistent in style, and within recommended length limits. It's useful for content editors, web developers, and automated content generation pipelines to maintain heading quality.", + "limitations": "Does not check semantic accuracy or contextual appropriateness beyond basic text and style rules. Cannot correct grammar errors beyond spelling and formatting suggestions.", + "examples": [ + "Analyze a set of website section headers for spelling and style consistency.", + "Check if headings in a markdown document comply with a specified capitalization style.", + "Validate a batch of article titles for length, spelling, and formatting issues." + ] + }, + "tags": [ + "data-validation", + "text-analysis", + "heading", + "content-quality", + "spellcheck", + "style-consistency" + ], + "examples": [ + { + "inputJson": "{\"headings\":[\"Welcome to Our Website\",\"contact Us\",\"ABOUT OUR COMPANY\"],\"language\":\"en\",\"maxLength\":50,\"checkCapitalization\":true,\"styleGuide\":\"AP\"}", + "description": "Analyzing three English headings for spelling and AP style capitalization compliance with a max length of 50 characters." + }, + { + "inputJson": "{\"headings\":[\"Introduction\",\"Résumé Tips\",\"FAQ\"],\"language\":\"fr\",\"maxLength\":40,\"checkCapitalization\":false}", + "description": "Analyze French headings focusing on spelling and length, ignoring capitalization." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "data-validation.sendComment", + "description": "This tool accepts a comment object containing textual content and metadata, validates it for quality and integrity such as length, prohibited words, and proper formatting, and then sends the comment to a specified destination (e.g., a moderation queue, a database, or an API endpoint). It outputs a confirmation of sending status and any validation errors encountered.", + "category": "data-validation", + "parameters": [ + { + "name": "commentContent", + "type": "string", + "description": "The textual content of the comment to validate and send.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "The identifier of the comment author for tracking and validation.", + "required": true, + "defaultValue": "" + }, + { + "name": "destination", + "type": "string", + "description": "The target location or service endpoint to send the validated comment to.", + "required": true, + "defaultValue": "" + }, + { + "name": "prohibitedWordsList", + "type": "array", + "description": "An array of words or phrases that are forbidden in the comment content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed character length for the comment content.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "requireProperFormatting", + "type": "boolean", + "description": "Whether to enforce basic formatting rules such as no HTML or markdown tags.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, including success boolean, any validation error messages, and the commentId if sent successfully." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to validate user-generated comments to ensure they meet quality and content policies before sending or storing them. It helps prevent spam, inappropriate content, or malformed entries from propagating into systems.", + "limitations": "This tool does not perform deep semantic analysis or sentiment evaluation. It does not handle real-time communication protocols or multimedia content within comments.", + "examples": [ + "Send a user comment to moderation after checking for banned words and length limits.", + "Validate and store feedback comments ensuring proper formatting and no prohibited language.", + "Process and forward product reviews after content validation to a review platform API." + ] + }, + "tags": [ + "data-validation", + "comment-processing", + "content-moderation", + "text-validation", + "send-action", + "user-generated-content" + ], + "examples": [ + { + "inputJson": "{\"commentContent\":\"This is a sample comment.\",\"authorId\":\"user123\",\"destination\":\"moderationQueue\",\"prohibitedWordsList\":[\"spam\",\"fake\"],\"maxLength\":500,\"requireProperFormatting\":true}", + "description": "Validates and sends a clean comment to the moderation queue." + }, + { + "inputJson": "{\"commentContent\":\"Buy now!!! \",\"sanitizeOutput\":true}", + "description": "Sanitize potentially unsafe HTML tags in the input." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "text-analysis.formatEndpoint", + "description": "Formats and normalizes API endpoint URLs from raw input strings. Accepts raw endpoint strings with inconsistent casing, special characters, or incomplete paths, and outputs a clean, standardized URL path string suitable for documentation or code use.", + "category": "text-analysis", + "parameters": [ + { + "name": "rawEndpoint", + "type": "string", + "description": "The raw API endpoint string to normalize and format. May include inconsistent slashes, uppercase letters, query parameters, or trailing spaces.", + "required": true, + "defaultValue": "" + }, + { + "name": "lowercase", + "type": "boolean", + "description": "Whether to convert the endpoint path to lowercase. Defaults to true for consistency.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeQueryParameters", + "type": "boolean", + "description": "If true, strips off any query string parameters from the endpoint URL (characters after '?').", + "required": false, + "defaultValue": "true" + }, + { + "name": "ensureLeadingSlash", + "type": "boolean", + "description": "Whether to ensure the endpoint string starts with a single leading slash '/'.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimTrailingSlash", + "type": "boolean", + "description": "Whether to remove any trailing slash from the endpoint, except when endpoint is root '/'.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted endpoint string under key 'formattedEndpoint'. The endpoint is normalized to a clean URL path format ready for consistent usage in code or docs." + }, + "aiAgent": { + "useCase": "Use this tool when processing or generating API documentation, client SDKs, or log data requiring consistent endpoint formatting. This helps ensure API paths conform to coding or documentation standards by normalizing case, slashes, and removing query strings if unwanted.", + "limitations": "This tool does not validate if the endpoint exists or matches any API specification. It only processes string formatting and cleaning, not semantic validation or authorization.", + "examples": [ + "Format a raw endpoint string to a standard lowercase path with no query parameters.", + "Normalize endpoint from user input to ensure consistent leading slash and no trailing slash.", + "Prepare API endpoint strings for comparison by removing case differences and extra slashes." + ] + }, + "tags": [ + "text-analysis", + "formatting", + "API", + "endpoint", + "URL", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"rawEndpoint\":\"\\t/API/v1/users//details/?active=true \",\"lowercase\":true,\"removeQueryParameters\":true,\"ensureLeadingSlash\":true,\"trimTrailingSlash\":true}", + "description": "Formats an endpoint with uppercase letters, extra slashes, query params, and whitespace into a clean lowercase path." + }, + { + "inputJson": "{\"rawEndpoint\":\"users/list\",\"lowercase\":false,\"removeQueryParameters\":false,\"ensureLeadingSlash\":true,\"trimTrailingSlash\":false}", + "description": "Ensures leading slash and preserves case and query parameters (if any)." + }, + { + "inputJson": "{\"rawEndpoint\":\"/status/\",\"lowercase\":true,\"removeQueryParameters\":true,\"ensureLeadingSlash\":true,\"trimTrailingSlash\":true}", + "description": "Normalize a simple endpoint path to remove trailing slash and enforce lowercase." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "text-analysis.formatModule", + "description": "Formats a source code module written in a specified programming language by re-indenting, organizing imports, and optionally applying stylistic conventions. Accepts module source code as input along with formatting preferences, then outputs the neatly formatted code as a string.", + "category": "text-analysis", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw source code of the module to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the source code (e.g., 'javascript', 'python').", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationStyle", + "type": "string", + "description": "Indentation style to apply, such as 'spaces' or 'tabs'.", + "required": false, + "defaultValue": "spaces" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces or tabs per indentation level.", + "required": false, + "defaultValue": "4" + }, + { + "name": "organizeImports", + "type": "boolean", + "description": "Whether to reorder and clean up import or require statements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "applyStyleGuide", + "type": "string", + "description": "Name of a style guide to apply formatting rules from (e.g., 'prettier', 'pep8').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted source code string and optionally a list of formatting changes made." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean up and standardize the formatting of a module's source code provided as text. Useful in code review bots, automated refactoring agents, or any scenario requiring code style conformity and readability improvement.", + "limitations": "Does not perform code linting beyond formatting; does not fix syntax errors or semantic bugs. Effectiveness depends on language support and style guide implementation.", + "examples": [ + "Format a JavaScript module with 2 spaces indentation and organize its imports.", + "Reformat a Python source module string following PEP8 style guide with 4 spaces indentation.", + "Apply tab indentation formatting to a TypeScript module without reorganizing imports." + ] + }, + "tags": [ + "formatting", + "code", + "module", + "source code", + "language-specific", + "style guide", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function foo( ){console.log('bar');}\",\"language\":\"javascript\",\"indentationStyle\":\"spaces\",\"indentSize\":2,\"organizeImports\":true,\"applyStyleGuide\":\"prettier\"}", + "description": "Format a JavaScript function with 2 spaces indentation and organize imports using Prettier style guide." + }, + { + "inputJson": "{\"sourceCode\":\"def foo():\\n print('bar')\\n\",\"language\":\"python\",\"indentationStyle\":\"spaces\",\"indentSize\":4,\"organizeImports\":false,\"applyStyleGuide\":\"pep8\"}", + "description": "Format a Python module using PEP8 style guide with standard 4 space indentation without reorganizing imports." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "text-analysis.formatSentence", + "description": "Formats a given sentence according to specified options such as capitalization style, punctuation enforcement, and trimming extra whitespace. It accepts a raw sentence string and formats it into a polished sentence string suitable for display or processing.", + "category": "text-analysis", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The raw sentence text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeStyle", + "type": "string", + "description": "Specifies the capitalization style: 'none', 'firstLetter', 'titleCase', or 'uppercase'.", + "required": false, + "defaultValue": "firstLetter" + }, + { + "name": "ensurePeriod", + "type": "boolean", + "description": "If true, ensures the sentence ends with a period. If false, leaves punctuation as is.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, trims leading and trailing whitespace from the sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted sentence string under the key 'formattedSentence'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean up and standardize sentences, for example to prepare user input or generated text for display or further processing. It allows normalization of capitalization and punctuation with control over whitespace trimming.", + "limitations": "This tool does not perform grammar correction, semantic analysis, or deep language understanding. It only formats basic sentence characteristics like capitalization and punctuation.", + "examples": [ + "Format a user-entered sentence to start with a capital letter and end with a period.", + "Convert a sentence into title case for a heading.", + "Trim extra whitespace and ensure consistent punctuation in generated text." + ] + }, + "tags": [ + "text-analysis", + "formatting", + "sentence", + "capitalization", + "punctuation", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\" this is a test sentence\",\"capitalizeStyle\":\"firstLetter\",\"ensurePeriod\":true,\"trimWhitespace\":true}", + "description": "Capitalize first letter, ensure period, trim spaces" + }, + { + "inputJson": "{\"sentence\":\"hello world! welcome to the tool.\",\"capitalizeStyle\":\"titleCase\",\"ensurePeriod\":false,\"trimWhitespace\":true}", + "description": "Convert to title case without adding period" + }, + { + "inputJson": "{\"sentence\":\" THIS IS SHOUTING \",\"capitalizeStyle\":\"none\",\"ensurePeriod\":true,\"trimWhitespace\":true}", + "description": "Keep original case, trim spaces, ensure period" + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "text-analysis.draftWord", + "description": "Generates a new English word or term based on a given concept or theme. Accepts a base meaning or idea as input, processes linguistic patterns and morphological rules, and outputs a coined or proposed word that fits the input context. Useful for creative writing, branding, and neologism creation.", + "category": "text-analysis", + "parameters": [ + { + "name": "baseConcept", + "type": "string", + "description": "A description or keyword representing the core idea or concept the new word should embody.", + "required": true, + "defaultValue": "" + }, + { + "name": "wordType", + "type": "string", + "description": "Specifies the desired grammatical category of the word, e.g., noun, verb, adjective.", + "required": false, + "defaultValue": "noun" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum desired length of the generated word in characters.", + "required": false, + "defaultValue": "12" + }, + { + "name": "languageStyle", + "type": "string", + "description": "Style or register for the word, such as formal, informal, technical, or playful.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeRootWords", + "type": "array", + "description": "Optional list of root words or morphemes to incorporate or draw inspiration from when drafting the word.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word as a string and an explanation of its linguistic composition and semantic rationale." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create novel, meaningful English words that fit a given concept, such as for naming products, coining terms in writing, or inventing neologisms in linguistic tasks. It helps generate plausible, contextually relevant words rather than random strings.", + "limitations": "Cannot guarantee that the coined word does not already exist or infringe on trademarks. It cannot produce words in languages other than English or ensure linguistic perfection. The creativity is limited to modeled patterns and input parameters.", + "examples": [ + "Draft a catchy noun that means 'quick decision' for a new app name.", + "Create an adjective describing 'highly efficient' in a playful style.", + "Generate a verb related to 'to simplify' with a length limit of 8 characters." + ] + }, + "tags": [ + "creative", + "language", + "neologism", + "naming", + "word-generation", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"baseConcept\":\"light and speed\",\"wordType\":\"noun\",\"lengthLimit\":10,\"languageStyle\":\"formal\"}", + "description": "Generate a formal noun word evocative of the concepts 'light' and 'speed', limited to 10 letters." + }, + { + "inputJson": "{\"baseConcept\":\"happy and energetic\",\"wordType\":\"adjective\",\"languageStyle\":\"playful\"}", + "description": "Create a playful adjective that suggests 'happy and energetic'." + }, + { + "inputJson": "{\"baseConcept\":\"to organize quickly\",\"wordType\":\"verb\",\"lengthLimit\":8}", + "description": "Draft a verb not longer than 8 letters meaning 'to organize quickly'." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "text-analysis.formatSummary", + "description": "This tool takes a raw textual summary and reformats it to improve readability and structure according to given style preferences. It accepts the summary text and optional formatting settings (such as max line length, bullet styling, and punctuation normalization). The output is a well-formatted summary enhancing clarity and presentation suitable for documents or reports.", + "category": "text-analysis", + "parameters": [ + { + "name": "summaryText", + "type": "string", + "description": "The raw summary text input that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before wrapping occurs.", + "required": false, + "defaultValue": "80" + }, + { + "name": "bulletStyle", + "type": "string", + "description": "Preferred bullet point character for lists (e.g., '-', '*', or '•').", + "required": false, + "defaultValue": "-" + }, + { + "name": "normalizePunctuation", + "type": "boolean", + "description": "Whether to standardize punctuation marks and spacing in the summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "capitalizeSentences", + "type": "boolean", + "description": "Whether to auto-capitalize the first letter of each sentence for consistency.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "Formatted summary text with improved readability, consistent style, and structured layout." + }, + "aiAgent": { + "useCase": "Use this tool when you have a raw, possibly unstructured or inconsistently styled textual summary that needs formatting for clearer communication, such as improving bullet points, line breaks, capitalization, and punctuation normalization. It helps produce professional-looking summaries ready to be presented in reports, articles, or documents.", + "limitations": "This tool only formats existing summary text and does not generate or shorten summaries. It cannot correct semantic errors or verify factual accuracy in the summary content.", + "examples": [ + "Please reformat this summary text to use bullets with '*' and limit lines to 60 characters.", + "Format this report summary by capitalizing sentences and normalizing punctuation.", + "Convert this plain text summary into a nicely indented and bulleted format with '-' bullets." + ] + }, + "tags": [ + "text-formatting", + "summary", + "natural-language-processing", + "readability", + "document-preparation" + ], + "examples": [ + { + "inputJson": "{\"summaryText\":\"this project aims to improve AI tools. tasks include data collection data cleaning and model training.\",\"maxLineLength\":50,\"bulletStyle\":\"*\",\"normalizePunctuation\":true,\"capitalizeSentences\":true}", + "description": "Format a raw summary with capitalization, punctuation normalization, 50-char lines, and '*' bullets." + }, + { + "inputJson": "{\"summaryText\":\"the meeting covered budget planning timeline adjustments and resource allocation\",\"bulletStyle\":\"-\",\"capitalizeSentences\":false}", + "description": "Format a summary using '-' bullets without sentence capitalization." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "text-analysis.buildQuery", + "description": "Constructs an optimized textual search query from natural language input or structured criteria, suitable for use in search engines or databases. Accepts parameters such as keywords, phrases, inclusion/exclusion terms, and logical operators. Outputs a formatted query string that can be directly used for advanced text search or filtering operations.", + "category": "text-analysis", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of keywords or terms to include in the query. These are the main words to be searched for.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "phrases", + "type": "array", + "description": "List of exact phrases to include in the search query, enclosed in quotes to preserve word order.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludeTerms", + "type": "array", + "description": "List of terms or phrases to exclude from search results.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "useLogicalOperators", + "type": "boolean", + "description": "If true, combine terms using logical operators (AND, OR, NOT). If false, terms are concatenated by default operator.", + "required": false, + "defaultValue": "true" + }, + { + "name": "defaultOperator", + "type": "string", + "description": "The default operator to join terms when 'useLogicalOperators' is false. Typically 'AND' or 'OR'.", + "required": false, + "defaultValue": "AND" + }, + { + "name": "boostTerms", + "type": "object", + "description": "An optional mapping of keywords or phrases to boost values (numbers) to increase their importance in the query.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the resulting query string. Longer results are truncated intelligently.", + "required": false, + "defaultValue": "256" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed query string formatted for use in search or filtering, and metadata about term counts and truncation status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform user input or criteria into a precise and optimized text-based query string for search engines, databases, or search APIs, supporting complex logical combinations and term boosting to improve search relevance.", + "limitations": "This tool does not execute the query or perform actual search operations; it only builds the textual query string. It does not support every search engine syntax dialect but provides a generic format that might require adaptation.", + "examples": [ + "Build a search query for documents containing 'machine learning' but excluding 'deep learning', emphasizing 'neural networks'.", + "Construct a query to find results containing either 'open source' or 'free software', but not 'paid'.", + "Generate a query to search for exact phrase \"climate change\" combined with keywords 'policy' and 'economics'." + ] + }, + "tags": [ + "text-analysis", + "query-building", + "search", + "natural-language-processing", + "information-retrieval", + "text-search" + ], + "examples": [ + { + "inputJson": "{\n \"keywords\": [\"machine\", \"learning\"],\n \"phrases\": [\"neural networks\"],\n \"excludeTerms\": [\"deep learning\"],\n \"useLogicalOperators\": true,\n \"boostTerms\": {\"neural networks\": 2.0},\n \"maxLength\": 300\n}", + "description": "Build a query including keywords 'machine' and 'learning', phrase 'neural networks' with boost, and exclude 'deep learning'." + }, + { + "inputJson": "{\n \"keywords\": [\"open source\", \"free software\"],\n \"excludeTerms\": [\"paid\"],\n \"useLogicalOperators\": true,\n \"defaultOperator\": \"OR\"\n}", + "description": "Create a query to find results containing either 'open source' or 'free software' but excluding 'paid'." + }, + { + "inputJson": "{\n \"keywords\": [\"policy\", \"economics\"],\n \"phrases\": [\"climate change\"],\n \"useLogicalOperators\": false\n}", + "description": "Generate a simple query using default operator (AND) with keywords and exact phrase without logical operators." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "text-analysis.composeNotification", + "description": "Generates a clear, concise notification message based on given context details such as event type, urgency, recipient role, and additional message content. Accepts structured inputs to dynamically compose notifications suited for email, SMS, or app alerts, producing a string message ready for delivery.", + "category": "text-analysis", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of the event triggering the notification (e.g., 'system update', 'meeting reminder').", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency level of the notification ('low', 'medium', 'high').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "recipientRole", + "type": "string", + "description": "Role or designation of the recipient (e.g., 'manager', 'IT support').", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalContext", + "type": "string", + "description": "Optional additional information or instructions to include in the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "preferredChannel", + "type": "string", + "description": "Preferred communication channel for the notification ('email', 'sms', 'app').", + "required": false, + "defaultValue": "email" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification message string under 'message'." + }, + "aiAgent": { + "useCase": "Use this tool to dynamically compose tailored notification messages when you have structured context including event specifics, recipient info, and desired communication channel. It helps generate human-like, context-aware notifications for diverse scenarios like IT alerts, reminders, or updates.", + "limitations": "It does not send notifications, handle localization or deep personalization beyond basic role-based context. It cannot generate complex multi-lingual or multimedia notifications.", + "examples": [ + "Compose a high urgency notification for IT support about a critical server outage.", + "Generate a meeting reminder notification for a manager via app alert.", + "Create a low urgency system maintenance notification email for all users." + ] + }, + "tags": [ + "notification", + "text-generation", + "communication", + "alert", + "reminder", + "email", + "sms", + "app" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"server outage\",\"urgencyLevel\":\"high\",\"recipientRole\":\"IT support\",\"additionalContext\":\"Server 12 is down since 2 AM.\",\"preferredChannel\":\"email\"}", + "description": "Generate an urgent email notification for IT support about a server outage." + }, + { + "inputJson": "{\"eventType\":\"meeting reminder\",\"urgencyLevel\":\"medium\",\"recipientRole\":\"manager\",\"additionalContext\":\"Project status review meeting at 3 PM.\",\"preferredChannel\":\"app\"}", + "description": "Create a meeting reminder notification for a manager via app notification." + }, + { + "inputJson": "{\"eventType\":\"system maintenance\",\"urgencyLevel\":\"low\",\"recipientRole\":\"all users\",\"additionalContext\":\"Maintenance scheduled for Sunday 1-3 AM.\",\"preferredChannel\":\"email\"}", + "description": "Compose a low-urgency system maintenance email notification for all users." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "text-analysis.buildInstance", + "description": "Builds a customized NLP processing instance based on specified parameters such as language, enabled features, and model preferences. Accepts configuration inputs describing text-analysis needs, configures and prepares the NLP instance accordingly, and outputs a JSON representation of the deployed NLP instance configuration including supported functionalities and model details.", + "category": "text-analysis", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "The primary language code (e.g., 'en', 'es') the NLP instance will process.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of NLP features to enable such as ['sentimentAnalysis', 'entityRecognition', 'syntaxParsing'].", + "required": true, + "defaultValue": "[]" + }, + { + "name": "modelSize", + "type": "string", + "description": "Preferred model size for NLP processing instance, e.g., 'small', 'medium', 'large'.", + "required": false, + "defaultValue": "\"medium\"" + }, + { + "name": "customEntities", + "type": "array", + "description": "Optional list of custom entity definitions to enhance entity recognition (e.g. [{'type':'Product','examples':['iPhone','MacBook']}]).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of NLP processing within the instance.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "JSON object detailing the configured NLP instance including language, enabled features, model size, custom entities, and status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create or configure a dedicated NLP processing instance tailored for a specific language, feature set, and model capacity. Useful for setting up text-analysis pipelines with customized entity types or enhanced sentiment capabilities. It enables flexible NLP deployments suited for diverse natural language understanding tasks.", + "limitations": "This tool does not train new NLP models from scratch; it configures instances from existing model templates and feature sets. It cannot process text directly or perform analysis by itself; separate tools are needed for input processing and inference.", + "examples": [ + "Build an English NLP instance with sentiment analysis and entity recognition enabled.", + "Create a Spanish NLP instance optimized with a large model and custom business entity recognition.", + "Set up a German instance with syntax parsing enabled and logging turned on." + ] + }, + "tags": [ + "nlp", + "configuration", + "language", + "entityRecognition", + "sentimentAnalysis", + "syntaxParsing" + ], + "examples": [ + { + "inputJson": "{\"language\":\"en\",\"features\":[\"sentimentAnalysis\",\"entityRecognition\"],\"modelSize\":\"large\",\"customEntities\":[{\"type\":\"Product\",\"examples\":[\"iPhone\",\"MacBook\"]}],\"enableLogging\":true}", + "description": "Builds an English instance with large model, sentiment and entity features, plus custom product entities and logging enabled." + }, + { + "inputJson": "{\"language\":\"es\",\"features\":[\"entityRecognition\"],\"modelSize\":\"medium\",\"customEntities\":[],\"enableLogging\":false}", + "description": "Creates a basic Spanish instance focused on entity recognition with medium model and no logging." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "text-analysis.draftContract", + "description": "Generates a preliminary contract draft based on provided contractual parameters, clauses, and parties. Accepts inputs defining contract type, involved parties, key terms, and optional clauses. Processes this data to assemble coherent, legally plausible contract text as output suitable for further review and editing.", + "category": "text-analysis", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "Type of the contract to draft, e.g., NDA, service agreement, lease.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the contract, each with name and role.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyTerms", + "type": "object", + "description": "Core terms and conditions such as duration, payment, obligations, and jurisdiction.", + "required": true, + "defaultValue": "" + }, + { + "name": "optionalClauses", + "type": "array", + "description": "Additional optional clauses to include, e.g., confidentiality, arbitration, liability.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language for the draft contract, default is English.", + "required": false, + "defaultValue": "\"English\"" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the contract draft text, e.g., plain text, markdown.", + "required": false, + "defaultValue": "\"plain\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted contract text and metadata including summary and disclaimers." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a structured first draft of a contract based on specified parameters to accelerate contract creation workflows, such as preparing NDAs, service agreements, or leases without starting from scratch. It helps produce a coherent base text for human lawyers or contract admins to refine further.", + "limitations": "This tool does not replace professional legal advice. It cannot guarantee legally binding or jurisdiction-compliant contracts and may omit necessary clauses tailored to specific legal requirements or cases.", + "examples": [ + "Draft an NDA between two companies including confidentiality and non-compete clauses.", + "Generate a service agreement for freelancers defining payment terms and deliverables.", + "Create a simple lease contract with duration, rent amount, and maintenance responsibilities." + ] + }, + "tags": [ + "text-analysis", + "contract", + "drafting", + "legal-tech", + "document-generation", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"NDA\",\"parties\":[{\"name\":\"Acme Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Beta LLC\",\"role\":\"Receiving Party\"}],\"keyTerms\":{\"duration\":\"2 years\",\"governingLaw\":\"California\"},\"optionalClauses\":[\"confidentiality\",\"non-compete\"],\"language\":\"English\",\"format\":\"plain\"}", + "description": "Draft an NDA contract specifying parties, duration, governing law and confidentiality-related clauses." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "text-analysis.draftText", + "description": "This tool accepts raw text or a summary input and generates a coherent draft document based on the input. It uses natural language processing to expand outlines or topics into well-structured paragraphs. The output is a clear, readable draft text suitable for review or further editing.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The main textual content, draft notes, or outline to be expanded into a draft document.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Preferred writing style for the draft (e.g., formal, casual, technical).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the draft text (e.g., neutral, persuasive, informative).", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated draft in words. If omitted, defaults to 500 words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the draft text output (e.g., en, es, fr).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated draft text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a first full-text draft from an outline, notes, or summary. It assists in rapidly generating coherent paragraphs that form a readable document draft for reports, articles, emails, or other written content.", + "limitations": "The tool cannot guarantee domain-specific expert-level accuracy or formatting. It is not a substitute for detailed human editing or fact-checking.", + "examples": [ + "Draft an article from bullet points summarizing key findings.", + "Create a formal email draft based on a short prompt.", + "Generate a persuasive summary draft with a casual tone." + ] + }, + "tags": [ + "text-analysis", + "drafting", + "NLP", + "writing-assistant", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Key points: quarterly sales increased by 15%, new product launch successful, customer satisfaction improved.\",\"style\":\"formal\",\"tone\":\"informative\",\"maxLength\":300,\"language\":\"en\"}", + "description": "Generate a formal and informative draft summarizing business highlights." + }, + { + "inputJson": "{\"inputText\":\"Urgent: delay in project schedule, need to notify client immediately.\",\"style\":\"casual\",\"tone\":\"persuasive\",\"maxLength\":200,\"language\":\"en\"}", + "description": "Create a persuasive, casual email draft informing about a project delay." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "text-analysis.generateReference", + "description": "Generates a formatted bibliographic reference entry from a given citation data object. Accepts input fields such as author names, title, publication year, source type, and outputs a reference string formatted according to the specified citation style (e.g., APA, MLA, Chicago).", + "category": "text-analysis", + "parameters": [ + { + "name": "citationData", + "type": "object", + "description": "An object containing citation details like author(s), title, publication year, source type (book, article, website), publisher, URL, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The citation style to format the reference in, such as APA, MLA, Chicago, Harvard.", + "required": false, + "defaultValue": "APA" + }, + { + "name": "includeDOI", + "type": "boolean", + "description": "Whether to include the DOI (if available) in the reference output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language for formatting purposes and potential localization of terms in the reference.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'formattedReference' with the fully formatted citation string according to requested style." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a correctly formatted bibliographic reference from structured citation metadata, for inclusion in academic papers, reports, or bibliographies. It streamlines the formatting process into a standards-compliant reference string.", + "limitations": "The tool relies on structured citationData input and cannot infer missing citation details. It does not validate the accuracy of input data and only formats existing information according to common styles.", + "examples": [ + "Generate an APA style reference for a journal article given author, title, journal name, volume, issue and year.", + "Output an MLA style reference for a book citation including multiple authors and publisher details.", + "Create a Chicago style reference for a web page citation including URL and access date." + ] + }, + "tags": [ + "text-analysis", + "reference-generation", + "citation-formatting", + "bibliography", + "academic-writing", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"citationData\":{\"authors\":[\"Smith, John\",\"Doe, Jane\"],\"title\":\"Advances in AI Research\",\"year\":2023,\"sourceType\":\"journal\",\"journalName\":\"AI Journal\",\"volume\":12,\"issue\":3,\"pages\":\"45-67\",\"doi\":\"10.1234/aij.v12i3.456\"},\"style\":\"APA\",\"includeDOI\":true,\"language\":\"en\"}", + "description": "Generate an APA style reference for a journal article with multiple authors and DOI." + }, + { + "inputJson": "{\"citationData\":{\"authors\":[\"Brown, Lisa\"],\"title\":\"Machine Learning Basics\",\"year\":2020,\"sourceType\":\"book\",\"publisher\":\"Tech Press\"},\"style\":\"MLA\",\"includeDOI\":false,\"language\":\"en\"}", + "description": "Generate an MLA style reference for a book without DOI." + }, + { + "inputJson": "{\"citationData\":{\"authors\":[\"Chang, Mei\"],\"title\":\"Natural Language Processing Overview\",\"year\":2022,\"sourceType\":\"website\",\"url\":\"https://nlp.example.com\", \"accessDate\":\"2024-05-10\"},\"style\":\"Chicago\",\"includeDOI\":false,\"language\":\"en\"}", + "description": "Generate a Chicago style reference for a website resource with access date." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "text-analysis.generateTrend", + "description": "Analyzes input text data over specified time periods or categories to generate insights on emerging, peaking, or declining trends. Accepts raw text or pre-processed text collections, optionally filtered by date range or tags. Processes frequency, sentiment, and topic modeling to output trend summaries with key terms and growth rates.", + "category": "text-analysis", + "parameters": [ + { + "name": "textData", + "type": "array", + "description": "Array of text entries or documents to analyze for trends. Each entry can have text and optional metadata (e.g. timestamp).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "object", + "description": "Defines start and end dates for filtering text data by time. Format: {\"startDate\":\"YYYY-MM-DD\",\"endDate\":\"YYYY-MM-DD\"}.", + "required": false, + "defaultValue": "" + }, + { + "name": "categoryTags", + "type": "array", + "description": "Optional tags to filter text data by categories or topics for focused trend analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "minFrequencyThreshold", + "type": "number", + "description": "Minimum frequency a term or topic must have to be considered in trend analysis.", + "required": false, + "defaultValue": "5" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Whether to include sentiment trend analysis along with frequency and topic trends.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTrendItems", + "type": "number", + "description": "Maximum number of trend items (topics or terms) to include in the output report.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected trends including top trending terms/topics, their frequency over time, sentiment trends if requested, and summary insights indicating rising or falling trends." + }, + "aiAgent": { + "useCase": "Use this tool when needing to identify and summarize textual trend patterns from large text datasets over specific periods or categories. Ideal for market research, social media monitoring, news analysis, or any scenario requiring dynamic trend detection from evolving text data.", + "limitations": "This tool does not perform detailed causal analysis or comprehensive predictive forecasting; it identifies trends based on frequency and sentiment patterns but cannot account for external context or verify trend validity beyond input data.", + "examples": [ + "Analyze social media posts from last month to find trending topics.", + "Generate trend report for customer feedback texts tagged with 'productX'.", + "Identify sentiment trends in news headlines over past quarter." + ] + }, + "tags": [ + "trend-analysis", + "text-analysis", + "natural-language-processing", + "sentiment-analysis", + "topic-modeling" + ], + "examples": [ + { + "inputJson": "{\"textData\":[{\"text\":\"New smartphone model released with advanced camera features\",\"timestamp\":\"2024-05-01\"},{\"text\":\"Users love the battery life of the latest smartphone update\",\"timestamp\":\"2024-05-03\"},{\"text\":\"Concerns raised about smartphone overheating issues\",\"timestamp\":\"2024-05-05\"}],\"timeWindow\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-10\"},\"sentimentAnalysis\":true,\"maxTrendItems\":5}", + "description": "Analyze smartphone-related texts in early May 2024 with sentiment to identify rising or falling topics." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "text-analysis.generateChart", + "description": "Generates a visual chart representing the analysis of input text data. Accepts raw textual input or pre-analyzed metrics, processes sentiment scores, keyword frequencies, or topic distributions, and outputs a URL or embedded data of a rendered chart (bar, line, pie) for visualization.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "Raw input text to analyze and visualize in the chart. Required if metrics are not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "object", + "description": "Precomputed metrics object (e.g., {sentiments: {...}, keywordFrequencies:{...}}) to visualize instead of raw text.", + "required": false, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate: bar, line, pie, histogram, or scatterplot.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title to display on the generated chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "topNKeywords", + "type": "number", + "description": "Number of top keywords to include in the chart if keyword frequencies are visualized.", + "required": false, + "defaultValue": "10" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color palette or scheme name for the chart visuals.", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis data in the chart if text input is provided.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated chart data including a URL or base64 embedded image, chart metadata, and selected parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visually summarize or present insights from text analysis, such as sentiment trends over paragraphs, keyword prominence, or topic distribution. It helps convert raw text or analytic metrics into easy-to-understand charts suitable for reports or dashboards.", + "limitations": "Cannot generate charts without either raw text or valid metric data. Does not perform deep NLP tasks beyond basic sentiment and keyword analysis. Complex custom visualizations beyond predefined chart types are not supported.", + "examples": [ + "Generate a pie chart showing sentiment proportions from the given product reviews.", + "Create a bar chart of top 5 keywords frequency in user feedback.", + "Visualize topic distribution as a line chart for an article text." + ] + }, + "tags": [ + "text-analysis", + "visualization", + "chart-generation", + "sentiment-analysis", + "keyword-frequency", + "NLP", + "data-visualization" + ], + "examples": [ + { + "inputJson": "{\"text\":\"The product has a great design but poor battery life.\",\"chartType\":\"pie\",\"includeSentiment\":true}", + "description": "Generate a sentiment pie chart from a short product review text." + }, + { + "inputJson": "{\"metrics\":{\"keywordFrequencies\":{\"battery\":15,\"design\":10,\"performance\":8}},\"chartType\":\"bar\",\"topNKeywords\":3,\"title\":\"Keyword Frequencies in Reviews\"}", + "description": "Create a bar chart of top 3 keyword frequencies from precomputed metrics with a title." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "text-analysis.generateHTML", + "description": "Generates HTML content from raw text input by applying formatting and structuring rules. Accepts plain text or minimally marked text and outputs valid HTML code, allowing customization of elements such as paragraphs, headings, lists, and links.", + "category": "text-analysis", + "parameters": [ + { + "name": "textInput", + "type": "string", + "description": "Raw plain text or lightly marked text to be converted into formatted HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveLineBreaks", + "type": "boolean", + "description": "Whether to convert line breaks in the input text into
tags in the output HTML.", + "required": false, + "defaultValue": "false" + }, + { + "name": "convertUrlsToLinks", + "type": "boolean", + "description": "If true, detects URLs in text and converts them into clickable HTML anchor tags.", + "required": false, + "defaultValue": "true" + }, + { + "name": "headingLevels", + "type": "array", + "description": "An array of strings specifying keywords or patterns to convert into HTML headings (e.g., ['#', '##', '###'] for h1, h2, h3).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "listMarkers", + "type": "array", + "description": "Array of strings representing list markers in the text to convert into HTML unordered or ordered lists (e.g., ['-','*','1.']).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'htmlContent' with the generated HTML string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw or lightly formatted textual content into well-structured HTML for display on web pages, emails, or documentation systems. It helps automate converting plain text notes or markdown-like syntax into HTML format, suitable for front-end rendering or further processing.", + "limitations": "This tool handles simple formatting and does not support complex markdown features like tables, footnotes, or embedded media. It is not designed for full markdown parsing or advanced styling beyond basic HTML elements.", + "examples": [ + "Generate HTML paragraphs and headings from a text input with hash symbols for headings.", + "Convert plain text with URLs into HTML with clickable links.", + "Parse simple list markers in text to produce HTML lists." + ] + }, + "tags": [ + "text-analysis", + "html-generation", + "formatting", + "text-to-html", + "content-processing" + ], + "examples": [ + { + "inputJson": "{\"textInput\":\"# Welcome to Product\\nThis is the introduction paragraph. Visit https://example.com for more info.\",\"preserveLineBreaks\":true,\"convertUrlsToLinks\":true,\"headingLevels\":[\"#\"],\"listMarkers\":[] }", + "description": "Convert text with a single heading and a URL into HTML with preserved line breaks and clickable link." + }, + { + "inputJson": "{\"textInput\":\"- Item one\\n- Item two\\n- Item three\",\"preserveLineBreaks\":false,\"convertUrlsToLinks\":false,\"headingLevels\":[],\"listMarkers\":[\"-\"] }", + "description": "Convert plain text list items starting with '-' into an HTML unordered list." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "text-analysis.generateXML", + "description": "Converts structured textual data or labeled JSON input into a customized XML format based on user-defined element tags and attributes. It processes input data to generate well-formed XML output for integration with XML-based systems or workflows.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Structured textual data or JSON string to convert into XML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "Name of the root XML element to wrap the output content.", + "required": true, + "defaultValue": "root" + }, + { + "name": "elementMappings", + "type": "object", + "description": "Mapping object defining how keys in inputData map to XML element names and attributes.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAttributes", + "type": "boolean", + "description": "Whether to include attributes in the XML tags based on elementMappings. If false, only elements are created.", + "required": false, + "defaultValue": "true" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Enable formatting the XML output with indentation and line breaks for readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'xmlString' with the generated XML content as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform structured text or JSON-like data into XML format for data interchange, configuration files, or integrating with APIs and services that consume XML. Ideal when customizable XML element naming and attributes are required to conform to specific schemas.", + "limitations": "This tool does not validate the XML against specific schemas (e.g., XSD). It assumes input data is structured correctly and does not perform complex transformations beyond simple key-to-element mappings.", + "examples": [ + "Convert JSON data describing a book into XML with custom tags.", + "Generate XML configuration files from a JSON input with attribute inclusion.", + "Transform structured notes into XML to be consumed by XML parsers." + ] + }, + "tags": [ + "text-analysis", + "generate", + "XML", + "data-conversion", + "structured-data", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"{\\\"title\\\":\\\"Sample Book\\\",\\\"author\\\":\\\"John Doe\\\",\\\"year\\\":2023}\",\"rootElementName\":\"book\",\"elementMappings\":{\"title\":{\"elementName\":\"Title\"},\"author\":{\"elementName\":\"Author\"},\"year\":{\"elementName\":\"PublicationYear\"}},\"includeAttributes\":false,\"prettyPrint\":true}", + "description": "Generate a simple XML for a book from JSON string input with custom element names, no attributes, pretty printed." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "text-analysis.createCluster", + "description": "This tool accepts an array of text documents or embeddings and performs clustering to group similar texts together. It supports various clustering algorithms and outputs cluster assignments with optional cluster centroids or representative samples, enabling natural language based structuring and insight discovery.", + "category": "text-analysis", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of text strings or document snippets to be clustered.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Optional name of a text embedding model to convert texts into vectors if embeddings are not provided. If embeddings are given, this is ignored.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "embeddings", + "type": "array", + "description": "Optional array of precomputed vector embeddings corresponding to the texts, to bypass embedding computation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "algorithm", + "type": "string", + "description": "Clustering algorithm to use, e.g., 'kmeans', 'agglomerative', or 'dbscan'.", + "required": false, + "defaultValue": "\"kmeans\"" + }, + { + "name": "numClusters", + "type": "number", + "description": "Number of clusters to form, required if algorithm needs fixed cluster count such as k-means.", + "required": false, + "defaultValue": "5" + }, + { + "name": "distanceMetric", + "type": "string", + "description": "Distance metric to use in clustering, e.g., 'cosine', 'euclidean'.", + "required": false, + "defaultValue": "\"cosine\"" + }, + { + "name": "returnRepresentatives", + "type": "boolean", + "description": "Whether to return representative text samples for each cluster.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing cluster assignments for each input text, optionally cluster centroids as vectors and representative text samples." + }, + "aiAgent": { + "useCase": "Use this tool when given a set of text documents or textual data points, you need to automatically group them based on content similarity. Useful for topic discovery, content organization, or preprocessing for downstream NLP tasks. It handles input texts or embeddings, applying various clustering algorithms and outputs cluster labels and summaries.", + "limitations": "This tool does not perform dimension reduction except what is inherent to the embedding model chosen. The quality of clustering depends on input text preprocessing and embedding quality; it cannot interpret semantic nuances beyond embedding capability.", + "examples": [ + "Group these customer feedback comments into 5 clusters by topic.", + "Cluster a list of news headlines into thematic groups using kmeans.", + "Create clusters from a set of product reviews and get representative review excerpts for each cluster." + ] + }, + "tags": [ + "clustering", + "text-analysis", + "natural-language-processing", + "unsupervised-learning", + "embedding", + "topic-modeling" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"I love this product, it works great!\",\"The installation was difficult and confusing.\",\"Best customer service I've ever received.\",\"The battery life is too short.\",\"Excellent build quality and design.\"],\"algorithm\":\"kmeans\",\"numClusters\":2}", + "description": "Cluster a small set of product reviews into 2 groups using k-means clustering." + }, + { + "inputJson": "{\"texts\":[\"Apple releases new iPhone.\",\"Scientists discover water on Mars.\",\"Local team wins football championship.\",\"Technology trends in smartphones.\",\"Mars rover sends new images.\"],\"embeddingModel\":\"sentence-transformers/all-MiniLM-L6-v2\",\"algorithm\":\"dbscan\",\"distanceMetric\":\"cosine\"}", + "description": "Cluster news headlines using DBSCAN and semantic embeddings to find related story groups." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "text-analysis.createThread", + "description": "Creates a coherent discussion thread from a collection of text messages or comments by grouping and ordering them based on sender, timestamps, and content similarities. Accepts an array of message objects, processes them to determine conversation flow, and outputs a structured thread suitable for analysis or display.", + "category": "text-analysis", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "Array of message objects to be organized into a thread. Each message should include senderId, timestamp, and content fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxThreadGapMinutes", + "type": "number", + "description": "Maximum allowed gap in minutes between messages to group them in the same conversation thread. Messages separated by longer gaps start new threads.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeSystemMessages", + "type": "boolean", + "description": "Whether to include system-generated messages or notifications in the thread.", + "required": false, + "defaultValue": "false" + }, + { + "name": "similarityThreshold", + "type": "number", + "description": "Threshold (0 to 1) for content similarity to consider two messages related when threading.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "Returns a thread object containing ordered messages grouped into subthreads if applicable. Each message includes metadata for sender, timestamp, and content, structured to reflect conversation flow." + }, + "aiAgent": { + "useCase": "Use this tool when you need to reconstruct or summarize conversations from unstructured or semi-structured message sets, such as chat logs, forum posts, or comment sections, to analyze discussion flow or present messages in a clear thread format.", + "limitations": "This tool cannot infer message content beyond provided text and metadata; it does not handle multimedia content or infer implicit conversational context beyond similarity and temporal proximity.", + "examples": [ + "Create a discussion thread from a list of chat messages to analyze user interactions.", + "Group forum comments into discussion threads for summarization.", + "Order and cluster customer support messages to understand issue resolution flow." + ] + }, + "tags": [ + "text-analysis", + "threading", + "conversation", + "chat", + "discussion", + "grouping" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"senderId\":\"user1\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"content\":\"Hey, did you see the latest update?\"},{\"senderId\":\"user2\",\"timestamp\":\"2024-06-01T10:02:00Z\",\"content\":\"Yes, looks good to me.\"},{\"senderId\":\"user1\",\"timestamp\":\"2024-06-01T11:00:00Z\",\"content\":\"What about the deployment schedule?\"}]}", + "description": "Input a small set of chat messages with timestamps and sender IDs to create a threaded conversation reflecting timing and participant turns." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "text-analysis.createIncident", + "description": "This tool accepts structured and unstructured text inputs from security logs, alerts, or messages to automatically extract key details and create a standardized security incident report. It processes text to identify incident type, severity, involved assets, timestamps, and descriptions, outputting a clear incident object for further tracking and response.", + "category": "text-analysis", + "parameters": [ + { + "name": "textInput", + "type": "string", + "description": "Raw text containing information about the security event or alert to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of the source text input, e.g., 'email', 'log', 'alert', or 'chat'. Helps tailor parsing strategy.", + "required": false, + "defaultValue": "log" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level to consider ('low', 'medium', 'high', or 'critical'). Incidents below this threshold are ignored.", + "required": false, + "defaultValue": "low" + }, + { + "name": "timestampFormat", + "type": "string", + "description": "Format string for parsing timestamps in the input text, e.g., 'YYYY-MM-DD HH:mm:ss'.", + "required": false, + "defaultValue": "YYYY-MM-DD HH:mm:ss" + }, + { + "name": "autoCategorize", + "type": "boolean", + "description": "Whether to automatically categorize the incident type based on extracted keywords.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created incident, including id, incidentType, severity, description, involvedAssets, timestamps, and sourceMetadata." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing raw textual security data to structure it into a standardized incident format. Ideal for automated security event management, incident tracking dashboards, or triggering workflows based on incident characteristics. It helps transform unstructured alert messages into actionable incident reports.", + "limitations": "Cannot replace specialized threat intelligence platforms. May miss context if input text is incomplete or ambiguous. Does not perform real-time monitoring itself, only processes provided textual input.", + "examples": [ + "Create an incident report from this security alert email body.", + "Parse the latest firewall log entry text and generate a corresponding incident record.", + "Analyze chat transcripts discussing a suspected breach and create incident data for tracking." + ] + }, + "tags": [ + "text-analysis", + "security", + "incident-management", + "NLP", + "automation", + "parsing" + ], + "examples": [ + { + "inputJson": "{\"textInput\":\"Alert: Multiple failed login attempts detected from IP 192.168.1.100 on 2024-06-10 14:23:50. Severity: high.\",\"sourceType\":\"alert\",\"severityThreshold\":\"medium\",\"timestampFormat\":\"YYYY-MM-DD HH:mm:ss\",\"autoCategorize\":true}", + "description": "Parsing an alert text indicating a high severity login failure incident." + }, + { + "inputJson": "{\"textInput\":\"Suspicious file download detected on asset ser01 at 2024-06-10 08:15:00. User reported unexpected system slowdowns.\",\"sourceType\":\"log\",\"severityThreshold\":\"low\",\"timestampFormat\":\"YYYY-MM-DD HH:mm:ss\",\"autoCategorize\":true}", + "description": "Creating incident from a log entry describing suspicious activity on a server asset." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "text-analysis.createDeal", + "description": "This tool accepts unstructured text describing a business transaction or negotiation and extracts key deal information such as parties involved, deal type, terms, value, and deadlines. It uses natural language processing to analyze and structure deal data for use in CRM or business intelligence systems.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Unstructured text containing the business deal description or negotiation details.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text, e.g., 'en' for English, to optimize NLP processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "extractParties", + "type": "boolean", + "description": "Flag indicating whether to extract the parties involved in the deal from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractTerms", + "type": "boolean", + "description": "Flag indicating whether to extract deal terms like payment, conditions, and deadlines.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractValue", + "type": "boolean", + "description": "Flag indicating whether to extract monetary value or quantitative deal information.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured object representing extracted deal information including parties, deal type, terms, value, and deadlines." + }, + "aiAgent": { + "useCase": "Use this tool when given raw text describing business deals, negotiations, or contracts to convert them into structured deal data for further processing, analytics, or CRM entry. It is suited for scenarios where deal information is buried in unstructured text and needs extraction.", + "limitations": "This tool cannot replace legal contract analysis or perform complex negotiations. Accuracy depends on clarity of input text and may miss subtle or implicit deal terms.", + "examples": [ + "Extract deal details from an email describing a sales negotiation.", + "Parse a text summary of a partnership agreement to identify parties and key terms.", + "Analyze meeting notes to create a structured summary of a proposed business deal." + ] + }, + "tags": [ + "text-analysis", + "deal-creation", + "NLP", + "business", + "contract", + "extraction" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Our company agrees to supply 1000 units of product X to GlobalCorp at a price of $500,000 payable within 60 days.\",\"language\":\"en\"}", + "description": "Extract deal parties, quantity, price, and payment terms from a sales agreement summary." + }, + { + "inputJson": "{\"inputText\":\"Negotiations with AlphaTech concluded. We will co-develop software with them with a 50-50 revenue sharing starting Q3.\",\"language\":\"en\"}", + "description": "Identify deal type (joint development), parties, and revenue share terms from negotiation notes." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "text-analysis.createWorkflow", + "description": "Creates a customizable text analysis workflow by specifying a sequence of NLP tasks (e.g., tokenization, POS tagging, sentiment analysis) to be performed on input text, returning a structured workflow configuration representing the ordered processing steps.", + "category": "text-analysis", + "parameters": [ + { + "name": "tasks", + "type": "array", + "description": "An ordered list of text analysis tasks to include in the workflow (e.g., ['tokenization','sentimentAnalysis','entityRecognition']).", + "required": true, + "defaultValue": "" + }, + { + "name": "workflowName", + "type": "string", + "description": "A descriptive name for the workflow being created.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input text for which the workflow will be optimized (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includePreprocessing", + "type": "boolean", + "description": "Whether to include standard text preprocessing steps (e.g., lowercasing, stopword removal) before analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customParameters", + "type": "object", + "description": "Optional object to specify parameters for individual tasks, keyed by task name.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the configured workflow with ordered tasks, parameters, language, and metadata describing the text analysis pipeline." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured and customizable pipeline for processing natural language text data. This enables dynamic creation of analysis workflows tailored to specific NLP tasks, languages, or processing needs without hardcoding task sequences.", + "limitations": "Cannot execute or run the workflow, only creates its configuration. Does not validate task compatibility or handle complex conditional branching. Requires user to specify valid task names and parameters.", + "examples": [ + "Generate a workflow including tokenization, named entity recognition, and sentiment analysis for English text.", + "Create a text analysis pipeline focused on lemmatization and syntactic parsing without preprocessing steps.", + "Configure a workflow with custom parameters for sentiment analysis and entity recognition tasks for French text." + ] + }, + "tags": [ + "text-analysis", + "workflow", + "NLP", + "pipeline", + "configuration", + "automation", + "customizable" + ], + "examples": [ + { + "inputJson": "{\"tasks\":[\"tokenization\",\"sentimentAnalysis\",\"entityRecognition\"],\"workflowName\":\"Basic Sentiment Workflow\",\"language\":\"en\",\"includePreprocessing\":true}", + "description": "Create a basic English text analysis workflow including preprocessing, tokenization, sentiment analysis, and entity recognition." + }, + { + "inputJson": "{\"tasks\":[\"lemmatization\",\"dependencyParsing\"],\"workflowName\":\"Syntax Focused Workflow\",\"language\":\"en\",\"includePreprocessing\":false}", + "description": "Create an English text analysis workflow focusing on lemmatization and syntactic parsing without preprocessing steps." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "text-analysis.createPipeline", + "description": "Creates a customizable natural language processing pipeline by chaining multiple text analysis components. Accepts an ordered array of text processing steps (e.g., tokenization, stemming, sentiment analysis) and configuration options for each. Outputs a functional pipeline object that can process input text sequentially through these steps producing structured analysis results.", + "category": "text-analysis", + "parameters": [ + { + "name": "steps", + "type": "array", + "description": "An ordered list of processing steps to apply, each specifying a component name and its configuration (e.g., [{\"name\":\"tokenizer\",\"config\":{}}]).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Target language code (e.g., 'en', 'fr') to adapt NLP components where applicable.", + "required": false, + "defaultValue": "en" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "If true, the pipeline logs intermediate output of each step for debugging or inspection.", + "required": false, + "defaultValue": "false" + }, + { + "name": "errorHandlingMode", + "type": "string", + "description": "Strategy for handling errors during pipeline execution. Options: 'skip' to ignore failing steps, 'halt' to stop processing on error.", + "required": false, + "defaultValue": "halt" + } + ], + "returns": { + "type": "object", + "description": "A pipeline object exposing a process(text) method, which runs the input text through all configured steps and returns combined analysis results." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a complex, multi-stage text analysis pipeline tailored to specific requirements, combining NLP components such as tokenization, lemmatization, sentiment analysis, or entity recognition into a reusable functional object.", + "limitations": "Does not implement the individual NLP components themselves; assumes availability or implementation of each component separately. Cannot automatically optimize or select pipeline steps; requires explicit configuration.", + "examples": [ + "Create a pipeline with tokenization, stopword removal, and sentiment analysis for English text.", + "Build a debugging-enabled pipeline that logs intermediate outputs while performing named entity recognition followed by coreference resolution.", + "Configure error handling to skip failing steps when running multi-component pipeline on multilingual data." + ] + }, + "tags": [ + "text-analysis", + "pipeline", + "NLP", + "natural-language-processing", + "customization", + "automation" + ], + "examples": [ + { + "inputJson": "{\"steps\":[{\"name\":\"tokenizer\",\"config\":{}},{\"name\":\"stemmer\",\"config\":{\"algorithm\":\"porter\"}},{\"name\":\"sentimentAnalyzer\",\"config\":{\"model\":\"v1\"}}],\"language\":\"en\",\"enableLogging\":true,\"errorHandlingMode\":\"halt\"}", + "description": "Creates an English pipeline with tokenizer, Porter stemmer, and sentiment analyzer with logging enabled." + }, + { + "inputJson": "{\"steps\":[{\"name\":\"entityRecognizer\",\"config\":{\"type\":\"spaCy\"}},{\"name\":\"coreferenceResolver\",\"config\":{}}],\"language\":\"en\",\"enableLogging\":false,\"errorHandlingMode\":\"skip\"}", + "description": "Creates an English pipeline performing entity recognition and coreference resolution, configured to skip steps on error." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "text-analysis.createSpec", + "description": "Generates a detailed, structured specification document describing a textual domain based on provided text corpus and domain metadata. It processes input text and metadata to create an outline including domain concepts, terminology, and usage guidelines as a JSON-formatted spec document.", + "category": "text-analysis", + "parameters": [ + { + "name": "domainName", + "type": "string", + "description": "The name of the domain for which to create the specification document.", + "required": true, + "defaultValue": "" + }, + { + "name": "corpusText", + "type": "string", + "description": "Large sample text representing the domain content, used to analyze key terms and concepts.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeGlossary", + "type": "boolean", + "description": "Whether to generate a glossary of domain-specific terms extracted from the corpus text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxConcepts", + "type": "number", + "description": "Maximum number of key concepts to extract and include in the specification document.", + "required": false, + "defaultValue": "20" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the output specification, e.g., 'json' or 'markdown'. Currently supports only 'json'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object representing the structured domain specification including key concepts, definitions, and usage notes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a domain-specific specification document summarizing key concepts, terminology, and guidelines from a body of text input. It helps automate creation of domain knowledge bases or documentation drafts.", + "limitations": "The tool cannot replace expert human domain knowledge verification. It relies on the quality and size of the input corpus and may miss less frequent but important concepts. It currently supports only JSON output format.", + "examples": [ + "Create a domain specification for \"financial technology\" using sample whitepapers to auto-generate key financial terms and definitions.", + "Generate a spec for medical device regulations from provided regulatory document texts.", + "Produce a glossary and domain spec for legal contract language from a corpus of contracts." + ] + }, + "tags": [ + "text-analysis", + "specification", + "document-generation", + "domain-knowledge", + "glossary", + "nlp", + "knowledge-extraction" + ], + "examples": [ + { + "inputJson": "{\"domainName\":\"Cybersecurity\",\"corpusText\":\"Cybersecurity involves protecting systems, networks, and programs from digital attacks. Key terms include firewall, encryption, malware, phishing, zero-day, and penetration testing.\",\"includeGlossary\":true,\"maxConcepts\":10,\"outputFormat\":\"json\"}", + "description": "Generate a specification document for the cybersecurity domain including glossary of key terms." + }, + { + "inputJson": "{\"domainName\":\"Renewable Energy\",\"corpusText\":\"Renewable energy includes solar, wind, hydroelectric, and geothermal power sources. Important concepts are photovoltaic cells, turbines, grid integration, and energy storage.\",\"includeGlossary\":true,\"maxConcepts\":15,\"outputFormat\":\"json\"}", + "description": "Create a structured spec outlining core concepts of renewable energy domain from given text corpus." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "text-analysis.createResume", + "description": "This tool generates a professional resume document based on provided personal details, work experience, education history, skills, and optional additional sections like certifications or projects. It processes structured inputs and outputs a formatted, ready-to-use resume in text or PDF format as specified.", + "category": "text-analysis", + "parameters": [ + { + "name": "personalInformation", + "type": "object", + "description": "Applicant's personal details including name, contact info, and professional summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "workExperiences", + "type": "array", + "description": "List of work experience entries, each including job title, company, start/end dates, and descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "List of educational qualifications, each with degree, institution, and graduation year.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Array of skill keywords or skill categories to highlight on the resume.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalSections", + "type": "array", + "description": "Optional extra sections such as certifications, languages, or projects, each with a title and content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "resumeFormat", + "type": "string", + "description": "Desired output format of the resume document, e.g., 'text' or 'pdf'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a professional summary section if available", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted resume as text or a base64-encoded PDF document, and the document format type." + }, + "aiAgent": { + "useCase": "Use this tool whenever a user needs to create a structured, polished resume document quickly from their personal and career information, suitable for job applications or professional sharing. It automates resume formatting and content arrangement based on input data.", + "limitations": "This tool cannot retrieve user data autonomously; all input must be provided explicitly. It does not perform deep content optimization or personalized career advice, focusing only on generating a formatted document.", + "examples": [ + "Create a resume using my provided work history, education, and skills in PDF format.", + "Generate a plain text resume including my summary and certifications.", + "Make a resume with mandatory personal data, highlighting key skills, in text output." + ] + }, + "tags": [ + "resume", + "text-analysis", + "document-generation", + "career", + "job-application", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"personalInformation\":{\"name\":\"Alice Johnson\",\"email\":\"alice.johnson@email.com\",\"phone\":\"555-123-4567\",\"summary\":\"Experienced marketing specialist with 5 years in digital campaigns.\"},\"workExperiences\":[{\"jobTitle\":\"Marketing Manager\",\"company\":\"Bright Future Ltd.\",\"startDate\":\"2018-06\",\"endDate\":\"2023-02\",\"description\":\"Led digital marketing strategies leading to 30% growth.\"}],\"education\":[{\"degree\":\"B.A. Marketing\",\"institution\":\"State University\",\"graduationYear\":2017}],\"skills\":[\"Digital Marketing\",\"SEO\",\"Content Strategy\"],\"additionalSections\":[{\"title\":\"Certifications\",\"content\":\"Google Ads Certified\"}],\"resumeFormat\":\"pdf\",\"includeSummary\":true}", + "description": "Generate a PDF resume including summary and certifications for a marketing professional." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "api-integration.analyzeHeading", + "description": "Analyzes a given heading text or HTML heading element to extract semantic properties, readability, and keyword relevance. Accepts a raw heading string or HTML snippet, processes linguistic features and SEO factors, and returns a structured summary including detected title type, keyword density, length, and readability score.", + "category": "api-integration", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The raw text content of the heading to analyze. Required if htmlHeading is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlHeading", + "type": "string", + "description": "The HTML snippet containing a heading element (e.g.,

Title

). If provided, headingText is extracted from it.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (ISO 639-1) of the heading text to guide linguistic analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "An array of keywords to check for relevance and density within the heading.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing headingType (e.g., h1, h2), textContent, length, keywordDensity, readabilityScore (Flesch Reading Ease), and language." + }, + "aiAgent": { + "useCase": "Use this tool when processing or integrating web content APIs that require analyzing heading elements for SEO optimization, content structuring, or readability checking. It helps understand semantic importance and keyword presence in headings.", + "limitations": "This tool analyzes only single heading instances and does not interpret surrounding content or context beyond the heading itself. It relies on input accuracy and cannot process malformed HTML effectively.", + "examples": [ + "Analyze the main page header to check keyword relevance for SEO.", + "Extract readability and heading type from an HTML snippet for content assessment.", + "Check if a heading contains focus keywords in English." + ] + }, + "tags": [ + "api", + "analysis", + "heading", + "seo", + "readability", + "html", + "content", + "text" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Welcome to Our Product Overview\",\"language\":\"en\",\"focusKeywords\":[\"product\",\"overview\"]}", + "description": "Analyze a plain heading text for keyword density and readability in English." + }, + { + "inputJson": "{\"htmlHeading\":\"

Latest News and Updates

\",\"focusKeywords\":[\"news\",\"updates\"]}", + "description": "Analyze an HTML h2 heading snippet for keyword presence." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "api-integration.analyzeThreat", + "description": "This tool accepts structured threat intelligence data such as indicators of compromise, attack patterns, or vulnerability descriptions via an object input. It analyzes these inputs using external security intelligence APIs to identify threat severity, potential impact, adversary tactics, and recommends mitigation steps. The output is a detailed threat analysis report with risk scores and actionable insights.", + "category": "api-integration", + "parameters": [ + { + "name": "threatData", + "type": "object", + "description": "Structured threat information including indicators, attack vectors, and threat actor details to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of threat data source (e.g., 'IP', 'URL', 'hash', 'CVE'). Helps to tailor analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Preferred language for the analysis report output.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation and remediation steps in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRiskLevel", + "type": "number", + "description": "Maximum risk level to filter reported threats (1-10), where 10 is highest risk. Defaults to include all.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a risk assessment score, detailed threat profile summarizing indicators and tactics, and optionally mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze raw threat intelligence data or indicators to determine threat severity, identify attacker techniques, and generate actionable security insights integrated from multiple threat intel sources. It is suitable for enriching security incident investigations or proactive threat hunting.", + "limitations": "This tool does not perform real-time network monitoring or direct threat detection. It relies on external threat intelligence API sources and structured input data, so incomplete or inaccurate inputs may affect analysis quality. It cannot execute remediation actions autonomously.", + "examples": [ + "Analyze a suspicious IP address's threat profile and risk score.", + "Generate a threat impact report from a given CVE identifier.", + "Assess the severity of malware hash indicators and suggest mitigation steps." + ] + }, + "tags": [ + "api-integration", + "threat-analysis", + "security", + "cybersecurity", + "risk-assessment", + "incident-response", + "threat-intelligence" + ], + "examples": [ + { + "inputJson": "{\"threatData\":{\"ip\":\"198.51.100.24\"},\"sourceType\":\"IP\",\"language\":\"en\",\"includeMitigation\":true,\"maxRiskLevel\":8}", + "description": "Analyze threat profile and risk of a suspicious IP address, filtering out threats above risk level 8." + }, + { + "inputJson": "{\"threatData\":{\"cveId\":\"CVE-2023-12345\"},\"sourceType\":\"CVE\",\"includeMitigation\":false}", + "description": "Get analysis of a specific vulnerability by CVE identifier without mitigation instructions." + }, + { + "inputJson": "{\"threatData\":{\"fileHash\":\"ae345f6789abcdef1234567890abcdef\"},\"sourceType\":\"hash\",\"language\":\"en\",\"includeMitigation\":true}", + "description": "Analyze malware indicator given by file hash with full mitigation recommendations." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "api-integration.renderImage", + "description": "This tool accepts image source data (URL or base64), optional rendering options such as resizing, cropping, filters, and output format, then processes the image accordingly and returns a rendered image in the specified format. It enables API orchestration for dynamic image generation or transformation.", + "category": "api-integration", + "parameters": [ + { + "name": "imageSource", + "type": "string", + "description": "The image input as a URL or base64-encoded string to be rendered", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Optional width in pixels to resize the image to", + "required": false, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "Optional height in pixels to resize the image to", + "required": false, + "defaultValue": "" + }, + { + "name": "crop", + "type": "object", + "description": "Optional cropping parameters with top, left, width, height in pixels", + "required": false, + "defaultValue": "" + }, + { + "name": "filters", + "type": "array", + "description": "Optional list of filter names to apply such as 'grayscale', 'sepia', 'blur'", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format such as 'png', 'jpeg', or 'webp'", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the rendered image as a base64 encoded string and its mime type" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to dynamically render or transform images by resizing, cropping, applying filters, or converting formats, especially when integrating with multiple APIs to deliver custom image outputs.", + "limitations": "This tool does not generate images from scratch or perform advanced image recognition; it only manipulates and renders existing images supplied as input.", + "examples": [ + "Render the image at 'https://example.com/photo.jpg' resized to 300x200 pixels in JPEG format.", + "Crop the bottom half of a base64 encoded image and apply a grayscale filter outputting PNG.", + "Convert an image URL to a WebP format with a blur filter applied." + ] + }, + "tags": [ + "api-integration", + "image", + "rendering", + "media", + "transformation", + "resize", + "filter" + ], + "examples": [ + { + "inputJson": "{\"imageSource\":\"https://example.com/photo.jpg\",\"width\":300,\"height\":200,\"outputFormat\":\"jpeg\"}", + "description": "Resize an image from URL to 300x200 pixels and output as JPEG." + }, + { + "inputJson": "{\"imageSource\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"crop\":{\"top\":50,\"left\":0,\"width\":100,\"height\":50},\"filters\":[\"grayscale\"],\"outputFormat\":\"png\"}", + "description": "Crop a base64 PNG image to specified rectangle, apply grayscale filter, output PNG." + }, + { + "inputJson": "{\"imageSource\":\"https://example.com/image.png\",\"filters\":[\"blur\"],\"outputFormat\":\"webp\"}", + "description": "Apply blur filter to an image from URL and convert to WebP format." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "api-integration.analyzeDeal", + "description": "This tool accepts detailed data about a business deal, including financials, participants, and timelines. It analyzes deal components such as value, risks, and strategic fit, and returns a comprehensive assessment report highlighting key metrics, potential risks, and recommendations for decision-making.", + "category": "api-integration", + "parameters": [ + { + "name": "dealData", + "type": "object", + "description": "Comprehensive data about the deal including terms, financials, participants, and dates.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRiskAssessment", + "type": "boolean", + "description": "Flag to indicate whether to perform detailed risk assessment in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) used for financial values in the deal data.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail in the analysis report: 'basic', 'detailed', or 'executive'.", + "required": false, + "defaultValue": "detailed" + } + ], + "returns": { + "type": "object", + "description": "An object containing the deal analysis report including financial metrics, risk factors, and strategic recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the quality and viability of a proposed business deal by analyzing financial data, terms, and participant profiles to inform further decision-making or negotiation strategies.", + "limitations": "This tool does not replace legal or financial professional advice and may not accurately assess non-quantifiable strategic considerations that require domain expertise.", + "examples": [ + "Analyze this merger deal data and identify main financial risks.", + "Provide an executive summary analysis of the sales partnership proposal.", + "Assess the deal and highlight any potential red flags or unusual terms." + ] + }, + "tags": [ + "analysis", + "api-integration", + "business", + "deal-evaluation", + "risk-assessment", + "finance" + ], + "examples": [ + { + "inputJson": "{\"dealData\":{\"dealId\":\"D12345\",\"participants\":[{\"name\":\"Company A\",\"role\":\"buyer\"},{\"name\":\"Company B\",\"role\":\"seller\"}],\"financials\":{\"totalValue\":50000000,\"currency\":\"USD\",\"paymentTerms\":\"50% upfront, 50% on delivery\"},\"timelines\":{\"startDate\":\"2024-07-01\",\"endDate\":\"2024-12-31\"}},\"includeRiskAssessment\":true,\"currency\":\"USD\",\"analysisDepth\":\"detailed\"}", + "description": "Analyze a $50M deal between two companies, including risk assessment and detailed analysis." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "api-integration.renderWord", + "description": "This tool accepts a single word as input and renders it into a specified visual style by integrating with an external rendering API. It processes parameters such as font style, size, color, and effects, then returns a URL to the generated image or SVG rendering of the word.", + "category": "api-integration", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word text to be rendered visually.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontStyle", + "type": "string", + "description": "The font style (e.g. 'Arial', 'Times New Roman') to use in rendering the word.", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "The font size in pixels for the rendering.", + "required": false, + "defaultValue": "48" + }, + { + "name": "color", + "type": "string", + "description": "The color of the rendered text in hex code or color name.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the rendering, transparent by default.", + "required": false, + "defaultValue": "transparent" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render the word in bold style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render the word in italic style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "effects", + "type": "array", + "description": "Optional array of special effects like 'shadow', 'outline', or 'glow' to apply.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL to the rendered image and metadata like width, height, and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visually display a word with customized styling by programmatically rendering it into an image or SVG through an API. Ideal for generating images for UI, presentations, social media, or graphics dynamically.", + "limitations": "Cannot generate multi-word phrases or complex typography layouts beyond single-word styling; output format and quality depend on the external rendering API capabilities.", + "examples": [ + "Render the word 'Hello' in bold italic red Arial font size 64.", + "Generate the word 'Welcome' with shadow effect and blue text on transparent background.", + "Create a rendered image of the word 'Sale' using a script font with glow effect." + ] + }, + "tags": [ + "rendering", + "api-integration", + "text-to-image", + "visualization", + "font-style", + "graphics", + "word" + ], + "examples": [ + { + "inputJson": "{\"word\":\"Hello\",\"fontStyle\":\"Arial\",\"fontSize\":64,\"color\":\"red\",\"bold\":true,\"italic\":true}", + "description": "Render 'Hello' in bold italic red Arial font, size 64." + }, + { + "inputJson": "{\"word\":\"Welcome\",\"color\":\"blue\",\"effects\":[\"shadow\"],\"backgroundColor\":\"transparent\"}", + "description": "Generate 'Welcome' with a blue color and shadow effect on transparent background." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "api-integration.formatParagraph", + "description": "Formats a given text paragraph according to specified style options such as line width, alignment, indentation, and line spacing. Accepts raw paragraph text and formatting parameters, then outputs the formatted paragraph as a single string suitable for API responses or document generation.", + "category": "api-integration", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width in characters before wrapping to a new line", + "required": false, + "defaultValue": "80" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: left, right, center, or justify", + "required": false, + "defaultValue": "left" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to indent the first line of the paragraph", + "required": false, + "defaultValue": "0" + }, + { + "name": "lineSpacing", + "type": "number", + "description": "Number of blank lines inserted between text lines (0 for single spacing)", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph as a single string with applied line breaks, indentation, and alignment" + }, + "aiAgent": { + "useCase": "Use this tool when integrating APIs or document generators that require text paragraphs formatted for readability or presentation. Ideal for preparing text blocks with specific layout requirements such as narrow columns, emails, or reports. Supports adjusting line width, indentation, alignment, and line spacing to meet target formatting.", + "limitations": "Does not support complex rich-text formatting like fonts, colors, or embedded media. Handles only plain text formatting with spacing and alignment. Not designed for HTML or markdown output.", + "examples": [ + "Format a paragraph into a 50-character wide justified text block with first-line indent of 4 spaces.", + "Align a paragraph center with double line spacing for email display.", + "Wrap a long paragraph into lines no longer than 60 characters keeping left alignment and no indentation." + ] + }, + "tags": [ + "text", + "formatting", + "paragraph", + "api-integration", + "layout", + "wrap", + "alignment" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph to demonstrate formatting functionality using the formatParagraph tool.\",\"lineWidth\":50,\"alignment\":\"justify\",\"indentation\":4,\"lineSpacing\":1}", + "description": "Justify align with line width 50, indentation 4 and line spacing 1." + }, + { + "inputJson": "{\"text\":\"Center aligned paragraph with double line spacing to enhance readability.\",\"lineWidth\":60,\"alignment\":\"center\",\"indentation\":0,\"lineSpacing\":2}", + "description": "Center alignment, 60 chars max width, zero indentation, double line spacing." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "apiIntegration.formatSentence", + "description": "This tool accepts a raw textual sentence and formats it to comply with specified style guidelines such as capitalization, punctuation, and spacing. It optionally adjusts tone to formal or informal. The output is a cleaned, style-consistent sentence string ready for API responses or user communication.", + "category": "apiIntegration", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The input sentence text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the sentence: 'formal', 'informal', or 'neutral'.", + "required": false, + "defaultValue": "\"neutral\"" + }, + { + "name": "capitalizeFirstLetter", + "type": "boolean", + "description": "Whether to capitalize the first letter of the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "endWithPeriod", + "type": "boolean", + "description": "Ensure the sentence ends with a period if true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeExtraSpaces", + "type": "boolean", + "description": "Remove any extra spaces between words for normalization.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted sentence string under the 'formattedSentence' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize or normalize sentences retrieved from various sources before sending as user-facing messages in APIs or chatbots. It helps ensure consistency in tone and style, improving communication clarity and professionalism.", + "limitations": "This tool does not perform deep semantic rewriting or grammar correction beyond basic formatting and tone adjustments. Complex sentence restructuring or language translation is not supported.", + "examples": [ + "Format a casual sentence to a formal style with correct punctuation.", + "Normalize spacing and capitalization in an API generated user message.", + "Ensure chatbot responses always end with a period in a neutral tone." + ] + }, + "tags": [ + "formatting", + "text-processing", + "api-integration", + "sentence", + "normalization", + "tone-adjustment" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"hello world this is a test\",\"tone\":\"formal\",\"capitalizeFirstLetter\":true,\"endWithPeriod\":true,\"removeExtraSpaces\":true}", + "description": "Format a casual sentence to formal tone with proper capitalization and punctuation." + }, + { + "inputJson": "{\"sentence\":\"Is this the final answer? \",\"tone\":\"neutral\",\"capitalizeFirstLetter\":false,\"endWithPeriod\":true,\"removeExtraSpaces\":true}", + "description": "Normalize spacing and ensure sentence ends with a period, without changing capitalization." + }, + { + "inputJson": "{\"sentence\":\"please respond when you can\",\"tone\":\"informal\",\"capitalizeFirstLetter\":true,\"endWithPeriod\":false,\"removeExtraSpaces\":true}", + "description": "Format an informal request, capitalize first letter and do not add a period at the end." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "api-integration.renderText", + "description": "This tool accepts raw text input along with optional formatting options and renders the text into various output formats such as HTML, Markdown, or plain text. It processes the input by applying the specified style or markup transformations and returns the formatted text string suitable for API integration or content display.", + "category": "api-integration", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw textual content to be rendered into the desired format.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Specifies the target format of the rendered text, e.g., 'html', 'markdown', or 'plain'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Optional styling and formatting parameters such as font size, color, bold, italic, or custom classes to be applied during rendering.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered text string in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw text input into a specific display format like HTML or Markdown for APIs that require formatted content, previews, or rich text display. It is suitable for generating formatted strings that can be injected into web pages or markdown viewers.", + "limitations": "Cannot interpret or render complex document layouts, images, or multimedia content. Styling is limited to basic text formatting attributes provided in styleOptions.", + "examples": [ + "Render a plain text comment into safe HTML for embedding in a webpage.", + "Convert simple Markdown syntax text into HTML for rich display in user interfaces.", + "Generate plain text fallback content by stripping formatting from rich text input." + ] + }, + "tags": [ + "api-integration", + "text-rendering", + "formatting", + "html", + "markdown", + "content" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello, **world**!\",\"format\":\"html\",\"styleOptions\":{\"bold\":true}}", + "description": "Render basic bold Markdown to HTML output." + }, + { + "inputJson": "{\"text\":\"# Title\\nThis is a paragraph.\",\"format\":\"markdown\",\"styleOptions\":{}}", + "description": "Pass text through as Markdown format with no additional styling." + }, + { + "inputJson": "{\"text\":\"Simple plain text.\",\"format\":\"plain\",\"styleOptions\":{}}", + "description": "Output plain text without any formatting tags." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "api-integration.formatSummary", + "description": "Formats a raw textual summary or multiple summary segments into a well-structured document summary with customizable style, length, and detail level. Accepts raw summary text or segmented input, processes them for clarity and coherence, and outputs a polished summary suitable for reports, briefs, or documentation.", + "category": "api-integration", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The unformatted raw text string containing the summary content to be processed and formatted.", + "required": false, + "defaultValue": "" + }, + { + "name": "segments", + "type": "array", + "description": "An array of textual segments, each representing part of the overall summary, to be combined and formatted.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetLength", + "type": "number", + "description": "Desired approximate length of the formatted summary in number of words or characters, to control verbosity.", + "required": false, + "defaultValue": "500" + }, + { + "name": "style", + "type": "string", + "description": "Preferred writing style for the formatted summary, such as 'formal', 'concise', 'creative', or 'technical'.", + "required": false, + "defaultValue": "concise" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Level of detail to include in the summary: 'high', 'medium', or 'low'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeHeadings", + "type": "boolean", + "description": "Whether to organize the summary with headings and subheadings for better readability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Output language code (e.g., 'en' for English) for localization of the formatted summary.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted summary text and metadata about the formatting process, such as word count and style applied. Example: {formattedSummary: string, wordCount: number, style: string}" + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or segmented summary text from diverse APIs or sources and want to present it in a consistent, readable, and stylistically tailored document summary. This improves readability and professionalism of aggregated data in reports or dashboards.", + "limitations": "This tool only formats and lightly restructures given textual input. It does not generate new content or verify factual accuracy. If input is insufficient or inconsistent, output quality may be affected.", + "examples": [ + "Format a detailed technical summary into a concise, formal report section.", + "Combine multiple summary segments from an API to produce a single coherent brief.", + "Adjust a raw meeting notes summary to highlight key points at medium detail level." + ] + }, + "tags": [ + "api-integration", + "formatting", + "summary", + "document", + "text-processing", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"This project aims to develop an AI-powered recommendation system. The initial phase involves data collection and preprocessing. Testing will be conducted in Q3.\"}", + "description": "Formatting a short raw text summary into a polished paragraph." + }, + { + "inputJson": "{\"segments\":[\"Phase 1: Data gathering and cleaning.\", \"Phase 2: Model training and validation.\", \"Phase 3: Deployment and monitoring.\"],\"style\":\"formal\",\"includeHeadings\":true}", + "description": "Combining multiple summary segments into a structured summary with headings in formal style." + }, + { + "inputJson": "{\"rawText\":\"Meeting covered Q1 sales growth and challenges. Discussed marketing strategies to enhance brand presence.\",\"targetLength\":100,\"detailLevel\":\"low\"}", + "description": "Trimming and formatting a raw meeting summary to a short and low-detail brief." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "api-integration.formatCSV", + "description": "Formats an array of JSON objects or equivalent structured data into a properly escaped CSV string. It accepts input data as JSON array, applies optional configurations like delimiter, header inclusion, quoting, and line breaks, and outputs a CSV-formatted string suitable for export or API submission.", + "category": "api-integration", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Required. An array of objects representing rows of data to convert to CSV.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Optional. Whether to include the object keys as the first CSV header row.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Optional. The delimiter character to separate fields, default is comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteFields", + "type": "boolean", + "description": "Optional. Whether to enclose all fields in quotes, default is false (only when necessary).", + "required": false, + "defaultValue": "false" + }, + { + "name": "eol", + "type": "string", + "description": "Optional. End of line character(s) to use, default is \\n.", + "required": false, + "defaultValue": "\n" + }, + { + "name": "nullPlaceholder", + "type": "string", + "description": "Optional. String to replace null or undefined values with, default is empty string.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with a 'csv' property containing the formatted CSV string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured JSON data into a standard CSV string format for API calls, file generation, or data export. It handles common CSV formatting nuances, such as escaping delimiters and quotes, and allows customization of delimiter and line endings.", + "limitations": "This tool does not validate data types beyond string conversion, nor does it handle extremely large datasets efficiently (streaming). It assumes flat objects with primitive values; nested objects or arrays are not directly supported.", + "examples": [ + "Format a JSON array with headers and default settings.", + "Convert JSON data using semicolon as delimiter without headers.", + "Export JSON data replacing nulls with 'N/A' and enclosing all fields in quotes." + ] + }, + "tags": [ + "csv", + "api-integration", + "formatting", + "data-export", + "json", + "delimiter", + "escaping" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"includeHeaders\":true}", + "description": "Basic usage: Convert a JSON array of simple objects with headers and default comma delimiter." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Pen\",\"price\":1.5,\"stock\":100},{\"product\":\"Notebook\",\"price\":3.2,\"stock\":50}],\"includeHeaders\":false,\"delimiter\":\";\"}", + "description": "Format without headers and using semicolon as delimiter." + }, + { + "inputJson": "{\"data\":[{\"item\":\"Widget\",\"quantity\":null,\"status\":\"in stock\"},{\"item\":\"Gadget\",\"quantity\":5,\"status\":null}],\"nullPlaceholder\":\"N/A\",\"quoteFields\":true}", + "description": "Replace null values with 'N/A' and quote all fields." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "api-integration.formatEndpoint", + "description": "Formats a given API endpoint URL by applying path parameter substitutions, query parameter encoding, and optional base URL prepending. Accepts endpoint templates and parameters as input and produces a finalized, properly encoded URL string ready for HTTP requests.", + "category": "api-integration", + "parameters": [ + { + "name": "endpointTemplate", + "type": "string", + "description": "The endpoint URL template, possibly containing placeholders for path parameters (e.g., /users/{userId}/orders)", + "required": true, + "defaultValue": "" + }, + { + "name": "pathParams", + "type": "object", + "description": "Key-value pairs mapping placeholder names in the endpoint template to their substitution values", + "required": false, + "defaultValue": "{}" + }, + { + "name": "queryParams", + "type": "object", + "description": "Key-value pairs representing query parameters to append to the URL. Values may be strings or arrays for repeated parameters", + "required": false, + "defaultValue": "{}" + }, + { + "name": "baseUrl", + "type": "string", + "description": "Optional base URL to prepend if the endpoint template is a relative path. Should include scheme and host (e.g., https://api.example.com)", + "required": false, + "defaultValue": "" + }, + { + "name": "encodeParams", + "type": "boolean", + "description": "Whether to URL-encode path and query parameter values. Defaults to true for safety", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted URL string under the property 'formattedUrl'" + }, + "aiAgent": { + "useCase": "Use this tool when constructing API request URLs dynamically from reusable endpoint templates and parameters. It handles proper substitution of path variables, safely appends query parameters with encoding, and composes the final URL, ensuring correctness and preventing errors related to manual string concatenation.", + "limitations": "This tool does not perform URL validation beyond formatting and encoding. It cannot perform HTTP requests or validate parameter correctness against API schema; it assumes input parameters match the endpoint template placeholders.", + "examples": [ + "Format an endpoint /users/{userId}/orders with userId path param and multiple query params for filtering.", + "Combine a relative endpoint with a base URL and encode reserved characters appropriately.", + "Create a URL without query params, only substituting path parameters in the template." + ] + }, + "tags": [ + "api", + "url", + "formatting", + "endpoint", + "integration", + "pathParameters", + "queryParameters" + ], + "examples": [ + { + "inputJson": "{\"endpointTemplate\":\"/users/{userId}/orders/{orderId}\",\"pathParams\":{\"userId\":\"123\",\"orderId\":\"456\"},\"queryParams\":{\"status\":\"shipped\",\"expand\":[\"items\",\"shipping\"]},\"baseUrl\":\"https://api.example.com\",\"encodeParams\":true}", + "description": "Format full URL with base, path params, and multiple query parameters including repeated arrays." + }, + { + "inputJson": "{\"endpointTemplate\":\"/search\",\"queryParams\":{\"q\":\"open api\",\"page\":\"2\"},\"baseUrl\":\"https://api.example.com\",\"encodeParams\":true}", + "description": "Format search endpoint with query parameters encoding spaces." + }, + { + "inputJson": "{\"endpointTemplate\":\"https://api.example.com/data/{id}\",\"pathParams\":{\"id\":\"abc def\"},\"encodeParams\":true}", + "description": "Format absolute URL endpoint substituting path param with encoding, no base URL needed." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "api-integration.draftWord", + "description": "This tool accepts user input specifying the context, tone, and purpose for a word or term to be drafted. It uses AI-powered linguistic and semantic APIs to generate an appropriate word or short phrase that matches the given criteria. The output is a JSON object containing the suggested word, its definition, and usage examples.", + "category": "api-integration", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "A sentence or brief description that provides the context in which the word will be used, guiding the drafting process.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the word, such as formal, informal, technical, poetic, or casual, to fit the use case.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "purpose", + "type": "string", + "description": "The purpose or function of the word, for example: naming a product, creating a brand term, or enhancing a document.", + "required": false, + "defaultValue": "" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum character length for the drafted word to ensure suitability in specific contexts (like product naming).", + "required": false, + "defaultValue": "20" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted word, its definition, and example sentence(s) illustrating its use." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to suggest a specific, context-appropriate word or term for branding, documentation, or creative content generation based on user input describing context, tone, and purpose. It enhances communication precision or creativity by proposing suitable vocabulary.", + "limitations": "This tool cannot generate multi-word phrases or full sentences; it is limited to drafting single words or very short terms. It also may not produce words in languages other than English if integrated APIs are English-specific.", + "examples": [ + "Draft a formal, concise word suitable for a legal document describing an agreement.", + "Suggest an informal, catchy brand name word for a new energy drink.", + "Generate a technical term related to cloud computing for a product feature." + ] + }, + "tags": [ + "api-integration", + "drafting", + "linguistics", + "word-generation", + "branding", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"context\":\"A new technology product related to wireless communication.\",\"tone\":\"technical\",\"purpose\":\"product naming\",\"lengthLimit\":15}", + "description": "Draft a technical word for naming a wireless communication product." + }, + { + "inputJson": "{\"context\":\"Express admiration and friendliness in casual conversation.\",\"tone\":\"informal\",\"purpose\":\"colloquial use\",\"lengthLimit\":10}", + "description": "Generate a casual, friendly word to use in informal chats." + }, + { + "inputJson": "{\"context\":\"A philosophical concept related to time and existence.\",\"tone\":\"poetic\",\"purpose\":\"academic writing\",\"lengthLimit\":20}", + "description": "Suggest a poetic word related to a philosophical theme for a paper." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "api-integration.composeSentence", + "description": "This tool accepts multiple text fragments and optional stylistic parameters to compose a coherent, grammatically correct English sentence. It processes the inputs by concatenating, adjusting punctuation, and applying specified tone or complexity levels, returning a polished sentence string suitable for API-driven content generation and messaging applications.", + "category": "api-integration", + "parameters": [ + { + "name": "textFragments", + "type": "array", + "description": "An array of text strings or phrase fragments to be combined into a single sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the sentence such as formal, casual, or neutral. Influences word choice and style.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "complexityLevel", + "type": "string", + "description": "The complexity level of sentence structure: simple, compound, or complex.", + "required": false, + "defaultValue": "simple" + }, + { + "name": "includeSubject", + "type": "boolean", + "description": "Whether to explicitly include a subject in the sentence when not present in fragments (adds clarity).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed sentence as a string under the 'sentence' property." + }, + "aiAgent": { + "useCase": "Use this tool when constructing or combining sentence fragments into a fluent, grammatically correct sentence as part of complex API workflows requiring natural language output generation or content assembly. Ideal when input is fragmented or partial segments needing synthesis into user-friendly sentences.", + "limitations": "Cannot generate sentences from unrelated or nonsensical fragments. Does not support languages other than English. Tone and complexity adjustments are heuristic and may not perfectly match advanced stylistic nuances.", + "examples": [ + "Compose a sentence from fragments ['The quick brown fox', 'jumps over', 'the lazy dog'] with a casual tone.", + "Create a formal sentence combining ['Project deadline', 'is approaching', 'soon'] with complex structure.", + "Combine ['Weather forecast', 'predicts rain', 'tomorrow'] into a simple sentence, excluding explicit subject." + ] + }, + "tags": [ + "sentence", + "composition", + "text", + "api-integration", + "natural-language", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"textFragments\":[\"The quick brown fox\",\"jumps over\",\"the lazy dog\"],\"tone\":\"casual\",\"complexityLevel\":\"simple\",\"includeSubject\":true}", + "description": "Combine simple fragments into a casual, simple sentence." + }, + { + "inputJson": "{\"textFragments\":[\"Project deadline\",\"is approaching\",\"soon\"],\"tone\":\"formal\",\"complexityLevel\":\"complex\",\"includeSubject\":true}", + "description": "Compose a formal, complex sentence about a project deadline." + }, + { + "inputJson": "{\"textFragments\":[\"Weather forecast\",\"predicts rain\",\"tomorrow\"],\"tone\":\"neutral\",\"complexityLevel\":\"simple\",\"includeSubject\":false}", + "description": "Make a simple sentence from weather-related fragments without an explicit subject." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "api-integration.draftContract", + "description": "Generates a preliminary contract document based on provided key terms and clauses. Accepts inputs such as contract type, parties involved, essential terms, and optional clauses, then composes a structured draft contract text suitable for review and further legal refinement.", + "category": "api-integration", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "The type of contract to draft, e.g., 'NDA', 'Sales Agreement', 'Employment Contract'.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the contract, each as an object with name and role.", + "required": true, + "defaultValue": "" + }, + { + "name": "essentialTerms", + "type": "object", + "description": "Key contract terms such as effective date, duration, payment terms, obligations, and confidentiality parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "optionalClauses", + "type": "array", + "description": "Additional optional clauses to include, such as arbitration, termination conditions, or governing law.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The language of the drafted contract, defaulting to English.", + "required": false, + "defaultValue": "\"English\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted contract text and metadata such as contract type and parties summarized." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a formal contract draft dynamically based on structured input terms to assist legal review or automate initial contract generation. It streamlines contract creation for common types, saving manual drafting time while ensuring key provisions are included.", + "limitations": "Cannot replace legal advice or ensure legal enforceability. The draft requires human legal review and customization for jurisdiction-specific laws or unusual contract requirements.", + "examples": [ + "Draft an NDA contract between two companies with confidentiality and non-compete clauses.", + "Create an employment contract specifying job role, salary, duration, and termination terms.", + "Generate a sales agreement detailing product description, payment schedule, delivery terms, and dispute resolution." + ] + }, + "tags": [ + "api-integration", + "contract drafting", + "legal documents", + "automation", + "document generation" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"NDA\",\"parties\":[{\"name\":\"Acme Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Beta LLC\",\"role\":\"Receiving Party\"}],\"essentialTerms\":{\"effectiveDate\":\"2024-07-01\",\"duration\":\"2 years\",\"confidentiality\":\"Full\"},\"optionalClauses\":[\"non-compete\"],\"language\":\"English\"}", + "description": "Draft a Non-Disclosure Agreement between two companies including confidentiality and non-compete clauses." + }, + { + "inputJson": "{\"contractType\":\"Employment Contract\",\"parties\":[{\"name\":\"Jane Doe\",\"role\":\"Employee\"},{\"name\":\"Tech Solutions Inc.\",\"role\":\"Employer\"}],\"essentialTerms\":{\"jobTitle\":\"Software Engineer\",\"salary\":\"80000 USD per year\",\"duration\":\"Permanent\",\"terminationNotice\":\"30 days\"},\"optionalClauses\":[],\"language\":\"English\"}", + "description": "Create an employment contract for a software engineer including salary, job title, and termination notice." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "api-integration.buildInstance", + "description": "This tool creates and deploys a new infrastructure instance by integrating with cloud provider APIs. It accepts configuration parameters such as instance type, region, image ID, and network settings, then performs the orchestration to provision the instance, returning details like instance ID, status, and access endpoints.", + "category": "api-integration", + "parameters": [ + { + "name": "cloudProvider", + "type": "string", + "description": "The cloud provider where the instance will be created (e.g., 'aws', 'azure', 'gcp').", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "The type or size of the instance to build (e.g., 't2.micro', 'n1-standard-1').", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "The geographic region or zone for the instance deployment (e.g., 'us-east-1').", + "required": true, + "defaultValue": "" + }, + { + "name": "imageId", + "type": "string", + "description": "The operating system image or template ID to deploy the instance from.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration details such as subnet ID and security groups.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs of tags or labels to assign to the instance.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "userData", + "type": "string", + "description": "Optional script or configuration commands to run on instance initialization.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoStart", + "type": "boolean", + "description": "Whether to start the instance immediately after creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Details of the created instance including instanceId, currentStatus, publicIp, region, and provisioningTime." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and deploy a cloud infrastructure instance by specifying key parameters like provider, instance type, and region. Ideal for automated provisioning, scaling, or integrating instance creation into workflows. It orchestrates API calls to the cloud platform and provides operational instance details upon success.", + "limitations": "Does not manage post-deployment configuration beyond initial userData. It cannot handle cost estimation or lifecycle management beyond creation. Requires valid credentials and permissions preconfigured for target cloud providers.", + "examples": [ + "Create a new AWS t2.micro instance in us-east-1 with Ubuntu image.", + "Deploy a Google Cloud n1-standard-1 instance in europe-west1 with custom network settings.", + "Build an Azure instance with given tags and user initialization script, starting immediately." + ] + }, + "tags": [ + "api-integration", + "infrastructure", + "cloud", + "provisioning", + "automation", + "instance", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"cloudProvider\":\"aws\",\"instanceType\":\"t2.micro\",\"region\":\"us-east-1\",\"imageId\":\"ami-0abcdef1234567890\",\"networkConfig\":{\"subnetId\":\"subnet-12345\",\"securityGroupIds\":[\"sg-67890\"]},\"tags\":{\"env\":\"dev\",\"project\":\"alpha\"},\"userData\":\"#!/bin/bash\\necho Hello World > /var/tmp/hello.txt\",\"autoStart\":true}", + "description": "Create and start a small AWS EC2 instance in the US East region with a custom network config, tags, and initialization script." + }, + { + "inputJson": "{\"cloudProvider\":\"gcp\",\"instanceType\":\"n1-standard-1\",\"region\":\"europe-west1\",\"imageId\":\"projects/debian-cloud/global/images/family/debian-10\",\"networkConfig\":{},\"tags\":{\"team\":\"analytics\"},\"autoStart\":false}", + "description": "Provision a Google Cloud instance in Europe without auto-start, applying a tag to identify the team." + } + ], + "qualityScore": 0.9, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "api-integration.generateHTML", + "description": "Generates a complete or partial HTML document from structured input parameters such as title, body content, meta tags, styles, and scripts. Accepts JSON objects describing the desired HTML elements and returns a valid HTML string that can be rendered in browsers or embedded in web applications.", + "category": "api-integration", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title to use for the HTML document, shown in the browser tab.", + "required": false, + "defaultValue": "" + }, + { + "name": "metaTags", + "type": "array", + "description": "An array of meta tag objects, each with attributes like name and content to be included in the head section.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bodyContent", + "type": "string", + "description": "HTML string to be placed inside the tag, representing the main content of the page.", + "required": true, + "defaultValue": "" + }, + { + "name": "styles", + "type": "string", + "description": "CSS styles to include within a \",\"codeType\":\"css\",\"campaignId\":\"campaign678\",\"description\":\"Custom button style\",\"overwriteExisting\":true}", + "description": "Overwrite existing CSS snippet for campaign 'campaign678' with new button styles." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "marketing-automation.formatCode", + "description": "This tool accepts marketing automation code snippets (such as JavaScript, HTML, CSS used in campaigns), and formats them for readability and best practices. It processes raw code input, applies consistent indentation, syntax highlighting, and fixes common style issues, outputting clean, well-structured code ready for deployment or review.", + "category": "marketing-automation", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw marketing automation code snippet to format, typically JavaScript, HTML, or CSS.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the code ('javascript', 'html', 'css') to apply proper syntax rules.", + "required": true, + "defaultValue": "javascript" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in formatted code.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "semiColons", + "type": "boolean", + "description": "Whether to add semicolons at the end of JavaScript statements if missing.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before wrapping code lines.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string and metadata about the formatting process." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean up, standardize, or prettify marketing automation code snippets before inserting them into campaign workflows, email templates, landing pages, or analytics scripts. It helps maintain code quality and readability in marketing projects.", + "limitations": "This tool does not execute or validate the code for logic errors; it only reformats for style and readability. Does not support languages outside of JavaScript, HTML, or CSS.", + "examples": [ + "Format a JavaScript snippet used in an email automation to improve readability.", + "Reformat HTML email template code to ensure consistent indentation and max line length.", + "Clean and standardize CSS styles used in marketing landing pages for better maintenance." + ] + }, + "tags": [ + "marketing-automation", + "code-formatting", + "javascript", + "html", + "css", + "campaigns", + "email-marketing" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function sendEmail(){console.log('email sent')}\",\"language\":\"javascript\",\"indentSize\":2,\"useTabs\":false,\"semiColons\":true,\"maxLineLength\":80}", + "description": "Format simple JavaScript snippet for email automation." + }, + { + "inputJson": "{\"code\":\"

Title

Paragraph

\",\"language\":\"html\",\"indentSize\":4,\"useTabs\":false,\"semiColons\":false,\"maxLineLength\":120}", + "description": "Format HTML snippet used in marketing landing page template." + }, + { + "inputJson": "{\"code\":\".btn{color:#fff;background:#007bff;}\",\"language\":\"css\",\"indentSize\":2,\"useTabs\":true,\"semiColons\":false,\"maxLineLength\":100}", + "description": "Format CSS styling rules for marketing email button styles using tabs." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "marketing-automation.uploadDocument", + "description": "Uploads a marketing-related document such as campaign briefs, creative assets, or reports to a marketing automation platform. Accepts document files and metadata, processes the upload by storing and indexing for campaign use, and returns a confirmation with document ID and status.", + "category": "marketing-automation", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the document file to upload, including extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "Base64-encoded content of the document file.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of the document being uploaded (e.g., 'campaignBrief', 'creativeAsset', 'report').", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Optional ID of the marketing campaign to associate the document with.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata as key-value pairs to describe the document (e.g., author, tags).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with upload status, assigned document ID, and optional message regarding the upload." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload marketing documents to a central automation platform for storage, indexing, and later use in campaigns or analysis. This ensures marketing materials are organized and accessible within campaign workflows.", + "limitations": "This tool does not parse or analyze the document content beyond basic metadata extraction. It also does not handle document editing or deletion.", + "examples": [ + "Upload a creative asset file for campaign ID 12345 with relevant metadata.", + "Store a campaign brief document without associating it with a campaign ID.", + "Upload a monthly performance report with author and tags metadata." + ] + }, + "tags": [ + "upload", + "marketing-automation", + "document-management", + "campaign", + "marketing-assets" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"spring_launch_brief.pdf\",\"fileContentBase64\":\"JVBERi0xLjQKJcTl8uXrp...\",\"documentType\":\"campaignBrief\",\"campaignId\":\"cmp-789\",\"metadata\":{\"author\":\"Jane Doe\",\"tags\":\"spring,launch,2024\"}}", + "description": "Uploading a campaign brief PDF document with campaign association and metadata." + }, + { + "inputJson": "{\"fileName\":\"banner_ad.png\",\"fileContentBase64\":\"iVBORw0KGgoAAAANSUhEUg...\",\"documentType\":\"creativeAsset\",\"metadata\":{\"author\":\"John Smith\"}}", + "description": "Uploading a creative asset image file without linking to a specific campaign." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "marketing-automation.formatEmail", + "description": "Formats raw email content into a polished marketing email template. It accepts inputs including subject, body text, call-to-action buttons, images, and brand colors, then applies consistent styling and structure to produce a ready-to-send HTML email string compatible with common email platforms.", + "category": "marketing-automation", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The email subject line to be displayed in recipients' inboxes.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "The main textual content or message of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToActionText", + "type": "string", + "description": "Text to display on the primary call-to-action button.", + "required": false, + "defaultValue": "" + }, + { + "name": "callToActionUrl", + "type": "string", + "description": "URL that the call-to-action button should link to.", + "required": false, + "defaultValue": "" + }, + { + "name": "images", + "type": "array", + "description": "Array of image URLs to embed or link within the email body.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "brandColors", + "type": "object", + "description": "Object defining theme colors for branding, e.g., {primary: '#FF5733', secondary: '#333333'}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeUnsubscribeLink", + "type": "boolean", + "description": "Flag to include a standard unsubscribe link at the bottom of the email.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formattedEmailHTML string ready for sending, and a plainTextVersion fallback as string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw email message components into professionally formatted marketing emails for campaigns. It ensures consistency in style, brand alignment, and compliance elements like unsubscribe links, preparing emails for popular email service providers. Ideal when inputs are fragmented or lack formatting.", + "limitations": "Does not send emails; does not perform spell checking or advanced content personalization; limited to basic formatting and structure and cannot generate new content automatically.", + "examples": [ + "Format a draft marketing email with subject, text, CTA button, and brand colors into a clean HTML email.", + "Generate a compliant marketing email including images and unsubscribe options from plain text content.", + "Convert campaign copy and call to action into a styled email template ready for sending." + ] + }, + "tags": [ + "formatting", + "email", + "marketing", + "automation", + "template", + "HTML", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Spring Sale is Here!\",\"bodyText\":\"Check out our new spring collection with up to 50% off.\",\"callToActionText\":\"Shop Now\",\"callToActionUrl\":\"https://example.com/spring-sale\",\"images\":[\"https://example.com/image1.jpg\"],\"brandColors\":{\"primary\":\"#3498db\",\"secondary\":\"#2ecc71\"},\"includeUnsubscribeLink\":true}", + "description": "Formats a spring sale email with images, brand colors, and a call-to-action button." + }, + { + "inputJson": "{\"subject\":\"Your Weekly Newsletter\",\"bodyText\":\"Here are the latest updates and stories for you.\",\"callToActionText\":\"Read More\",\"callToActionUrl\":\"https://example.com/newsletter\",\"images\":[],\"brandColors\":{},\"includeUnsubscribeLink\":false}", + "description": "Formats a simple newsletter email with minimal styling and no unsubscribe link." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "marketing-automation.formatDocument", + "description": "Formats marketing documents such as campaign briefs, email templates, or reports by applying specified styling, layout, and branding rules. Accepts raw text or HTML input with optional metadata, processes to structure content and apply consistent corporate branding, and outputs a formatted document in HTML or PDF format ready for distribution or presentation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of marketing document to format (e.g., 'email', 'campaignBrief', 'report').", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Raw content of the document in plain text or basic HTML that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "brandingOptions", + "type": "object", + "description": "Object specifying branding parameters such as colors, fonts, logos to apply to the document.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted document, e.g., 'html' or 'pdf'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents, applicable for longer documents.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code for regional formatting conventions and localization, e.g., 'en', 'fr'.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document as a string in the requested format and metadata such as page count or HTML size." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw marketing document content that needs to be converted into a professionally styled and consistent format for distribution or presentation. Ideal for automating the standardization of campaign briefs, reports, or email templates before sending or publishing.", + "limitations": "This tool does not generate original marketing content; it only formats provided content. It does not perform advanced content editing or marketing analytics.", + "examples": [ + "Format a campaign brief text into a branded PDF report.", + "Convert raw email template HTML into styled HTML ready for sending.", + "Generate an HTML formatted marketing report with company's colors and logo." + ] + }, + "tags": [ + "marketing", + "automation", + "document", + "formatting", + "branding", + "campaign", + "email", + "report" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"email\",\"content\":\"

Hello, this is our April newsletter!

\",\"brandingOptions\":{\"primaryColor\":\"#0052cc\",\"fontFamily\":\"Arial\",\"logoUrl\":\"https://example.com/logo.png\"},\"outputFormat\":\"html\",\"includeTableOfContents\":false,\"language\":\"en\"}", + "description": "Format an email marketing template applying company branding and produce styled HTML output." + }, + { + "inputJson": "{\"documentType\":\"campaignBrief\",\"content\":\"Campaign Objectives:\\n- Increase brand awareness\\n- Launch new product line\",\"brandingOptions\":{\"primaryColor\":\"#ff6600\",\"fontFamily\":\"Helvetica\",\"logoUrl\":\"https://brand.com/logo.svg\"},\"outputFormat\":\"pdf\",\"includeTableOfContents\":true,\"language\":\"en\"}", + "description": "Create a campaign brief PDF with a table of contents and branded style for internal distribution." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "marketing-automation.generateDataset", + "description": "Generates a synthetic marketing dataset based on specified parameters including campaign types, customer segments, time range, and key performance indicators. Accepts input criteria defining the dataset scope and produces a structured dataset suitable for analysis or training models.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignTypes", + "type": "array", + "description": "List of marketing campaign types to include, e.g., 'email', 'social', 'paid search'.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerSegments", + "type": "array", + "description": "List of customer segments to simulate, e.g., 'new users', 'loyal customers'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date of the data range in YYYY-MM-DD format.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date of the data range in YYYY-MM-DD format.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of key performance indicators to generate, e.g., 'clicks', 'impressions', 'conversions'.", + "required": false, + "defaultValue": "[\"clicks\",\"impressions\",\"conversions\"]" + }, + { + "name": "numRecords", + "type": "number", + "description": "Approximate number of dataset records to generate.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeGeoData", + "type": "boolean", + "description": "Whether to include geographic data fields like country and city.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object containing the generated marketing dataset as an array of records, each record includes date, campaign type, customer segment, selected metrics, and optional geo info." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate realistic synthetic marketing datasets for testing campaign analysis models, running simulations, or training machine learning models without using sensitive real user data. It automates creation of diverse data points across multiple campaigns and segments.", + "limitations": "Cannot access or replicate actual customer data; generated data is synthetic and for simulation or modeling purposes only. Does not predict outcomes or guarantee real-world campaign performance.", + "examples": [ + "Generate a dataset for email and social campaigns for new and loyal customers from 2023-01-01 to 2023-03-31 with clicks and conversions metrics.", + "Create 500 records of paid search campaign data including impressions and clicks from 2023-06-01 to 2023-06-30, including geographic data.", + "Fabricate a dataset covering all campaign types for the last quarter focusing on impressions, clicks, and conversions for new users." + ] + }, + "tags": [ + "marketing", + "dataset", + "synthetic data", + "campaign", + "automation", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"campaignTypes\":[\"email\",\"social\"],\"customerSegments\":[\"new users\",\"loyal customers\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"metrics\":[\"clicks\",\"conversions\"],\"numRecords\":1000,\"includeGeoData\":false}", + "description": "Generate marketing dataset for email and social campaigns for new and loyal customers in Q1 2023 with clicks and conversions." + }, + { + "inputJson": "{\"campaignTypes\":[\"paid search\"],\"customerSegments\":[],\"startDate\":\"2023-06-01\",\"endDate\":\"2023-06-30\",\"metrics\":[\"impressions\",\"clicks\"],\"numRecords\":500,\"includeGeoData\":true}", + "description": "Create 500 records of paid search campaign data with impressions, clicks, and geo information for June 2023." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "marketing-automation.generateTest", + "description": "Generates an A/B test plan for marketing campaigns by accepting test objectives, target audience, campaign variations, and success metrics. It analyzes inputs and outputs a structured test plan detailing experiment design, sample size estimates, and key performance indicators for campaign optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "testName", + "type": "string", + "description": "The descriptive name of the A/B test to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignVariations", + "type": "array", + "description": "List of campaign variation identifiers or descriptions to be tested against each other.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudienceSegments", + "type": "array", + "description": "Array specifying different audience segments to include in the test (e.g., demographics, behavior keywords).", + "required": true, + "defaultValue": "" + }, + { + "name": "successMetrics", + "type": "array", + "description": "List of key metrics to measure test success (e.g., click-through rate, conversion rate).", + "required": true, + "defaultValue": "" + }, + { + "name": "estimatedTraffic", + "type": "number", + "description": "Estimated total traffic volume that will be included in the test; used for sample size calculation.", + "required": false, + "defaultValue": "10000" + }, + { + "name": "testDurationDays", + "type": "number", + "description": "Proposed duration of the test in days to capture sufficient data.", + "required": false, + "defaultValue": "14" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Statistical confidence level desired for the test results (e.g., 95 for 95%).", + "required": false, + "defaultValue": "95" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object containing the A/B test plan including test setup, sample size calculations, targeting details, and metric tracking instructions." + }, + "aiAgent": { + "useCase": "When an AI agent needs to automate the design of marketing A/B tests, this tool generates comprehensive test plans based on input campaign variations, audience segmentation, and success metrics to optimize campaign performance. It helps streamline experiment setup and ensures statistically sound tests.", + "limitations": "This tool does not execute the tests or collect data; it also assumes accurate input estimates for traffic and audience segmentation. It cannot adapt dynamically during live test running.", + "examples": [ + "Generate an A/B test comparing two email subject lines to improve open rates for a specified demographic segment.", + "Create a multi-variant campaign test plan targeting different age groups with conversion rate as the key success metric.", + "Provide a detailed test design for social media ads variations focusing on click-through rate and estimated traffic of 20,000 visits." + ] + }, + "tags": [ + "marketing", + "automation", + "A/B testing", + "campaign optimization", + "test design", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"testName\":\"Email Subject Line Optimization\",\"campaignVariations\":[\"SubjectA\",\"SubjectB\"],\"targetAudienceSegments\":[\"millennials\", \"tech enthusiasts\"],\"successMetrics\":[\"openRate\"],\"estimatedTraffic\":15000,\"testDurationDays\":10,\"confidenceLevel\":95}", + "description": "Generate a test plan for two email subject line variations targeting tech enthusiasts millennials focused on open rate." + }, + { + "inputJson": "{\"testName\":\"Social Media Ad Click Test\",\"campaignVariations\":[\"AdVersion1\",\"AdVersion2\",\"AdVersion3\"],\"targetAudienceSegments\":[\"age18to24\",\"age25to34\"],\"successMetrics\":[\"clickThroughRate\"],\"estimatedTraffic\":20000,\"testDurationDays\":14,\"confidenceLevel\":90}", + "description": "Create an A/B/C test plan for three social media ad versions across two age-based audience segments, measuring click-through rate." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "marketing-automation.buildFunction", + "description": "This tool generates a JavaScript marketing automation function based on specified campaign goals, triggers, and actions. It accepts input parameters defining event triggers, target audience filters, and desired marketing actions (e.g., send email, apply coupon). It outputs executable, ready-to-deploy code for automated campaign workflows.", + "category": "marketing-automation", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name to assign to the generated JavaScript function.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "List of event triggers defining when the function executes (e.g., 'userSignup', 'cartAbandon').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudienceCriteria", + "type": "object", + "description": "Filters defining the audience segment to target (e.g., { ageRange: [25,40], interests: ['sports'] }).", + "required": false, + "defaultValue": "" + }, + { + "name": "actions", + "type": "array", + "description": "List of marketing actions to perform when triggered (e.g., sendEmail, addToLoyaltyProgram).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeLogging", + "type": "boolean", + "description": "Whether to include logging statements in the generated function code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the function output (default is 'JavaScript').", + "required": false, + "defaultValue": "JavaScript" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code string and metadata such as functionName and supported triggers." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate marketing campaign workflows with custom logic based on user behavior or events. It helps quickly scaffold functions to integrate with broader automation platforms or custom codebases, focusing on campaign triggers and actions to reduce manual coding.", + "limitations": "This tool does not execute or deploy the generated code and requires validation before production usage. It only supports specified simple trigger and action models and does not cover complex campaign logic such as multistep conditions or advanced user segmentation algorithms.", + "examples": [ + "Generate a function named 'welcomeEmail' triggered on 'userSignup' that sends a welcome email to users aged 18-50.", + "Create a function 'cartReminder' that triggers on 'cartAbandon' events and sends a coupon code email.", + "Build a marketing automation function to tag users with 'VIP' when their purchase count exceeds 5." + ] + }, + "tags": [ + "marketing", + "automation", + "function generation", + "campaign", + "javascript", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"welcomeEmail\",\"triggers\":[\"userSignup\"],\"targetAudienceCriteria\":{\"ageRange\":[18,50]},\"actions\":[\"sendWelcomeEmail\"],\"includeLogging\":true,\"language\":\"JavaScript\"}", + "description": "Generate a welcome email function that triggers on user signup for users aged 18 to 50 with logging." + }, + { + "inputJson": "{\"functionName\":\"cartReminder\",\"triggers\":[\"cartAbandon\"],\"actions\":[\"sendCouponEmail\"],\"includeLogging\":false}", + "description": "Function to send coupon email on cart abandonment without logging." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "marketing-automation.createWord", + "description": "Generates a targeted marketing keyword or catchphrase based on specified product features, audience demographics, and campaign goals. It uses input parameters to craft a word or short phrase optimized for SEO, advertising, or branding purposes, returning a creative, market-relevant term.", + "category": "marketing-automation", + "parameters": [ + { + "name": "productCategory", + "type": "string", + "description": "The category or type of the product or service to generate a word for, e.g., 'fitness app' or 'organic skincare'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience demographics or interests, e.g., 'millennial fitness enthusiasts' or 'eco-conscious consumers'.", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignGoal", + "type": "string", + "description": "Primary goal of the marketing campaign such as 'brand awareness', 'drive sales', or 'lead generation'.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the word such as 'playful', 'professional', or 'innovative'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word or phrase in characters.", + "required": false, + "defaultValue": "20" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing word or phrase along with metadata." + }, + "aiAgent": { + "useCase": "This tool should be used when needing to create a succinct, memorable word or short phrase tailored to specific product features and audience details to improve marketing campaign effectiveness and brand identity, especially for SEO or ad copy.", + "limitations": "It cannot generate long slogans or full sentences, nor can it replace comprehensive branding strategies or deep linguistic analysis. It provides suggestions, not guaranteed viral content.", + "examples": [ + "Generate a catchy marketing word for a new fitness app targeting millennials aiming for brand awareness.", + "Create an innovative word for an organic skincare campaign focusing on eco-conscious consumers.", + "Suggest a professional short phrase under 15 characters to drive sales for a SaaS product." + ] + }, + "tags": [ + "marketing", + "automation", + "content-generation", + "SEO", + "branding", + "keyword-generator" + ], + "examples": [ + { + "inputJson": "{\"productCategory\":\"fitness app\",\"targetAudience\":\"millennial fitness enthusiasts\",\"campaignGoal\":\"brand awareness\",\"tone\":\"playful\",\"maxLength\":15}", + "description": "Generate a playful and catchy word under 15 characters for a fitness app targeting millennials to boost brand awareness." + }, + { + "inputJson": "{\"productCategory\":\"organic skincare\",\"targetAudience\":\"eco-conscious consumers\",\"campaignGoal\":\"drive sales\",\"tone\":\"innovative\",\"maxLength\":20}", + "description": "Create an innovative marketing word for an organic skincare line targeting eco-conscious consumers aiming to increase sales." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "marketing-automation.createJSON", + "description": "Generates a structured JSON object representing a marketing campaign configuration based on input parameters such as campaign name, target audience segments, budget allocation, channel preferences, and schedule. Processes inputs to output a ready-to-use JSON configuration for marketing automation platforms.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name of the marketing campaign to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetSegments", + "type": "array", + "description": "List of audience segments targeted by the campaign, each as a string identifier.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "budget", + "type": "number", + "description": "Total budget allocated for the campaign in USD.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "Marketing channels to be used e.g., email, social, sms.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "startDate", + "type": "string", + "description": "The campaign start date in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The campaign end date in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "dailyBudgetCapping", + "type": "boolean", + "description": "Whether to apply daily budget caps (true) or just total budget budget (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata or custom fields to include in the campaign JSON.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A JSON object that fully specifies the marketing campaign configuration including all inputs formatted for integration with marketing automation tools." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate a campaign configuration file for a marketing automation platform based on user requirements such as target segments, channels, budget, and timing. It is helpful when producing structured data outputs to feed downstream automation or campaign management.", + "limitations": "This tool does not validate external audience segment identifiers, nor does it execute or simulate campaign performance. It focuses solely on generating JSON configuration format. The tool also assumes valid date formats and does not verify channel compatibility with the target marketing platform.", + "examples": [ + "Create a campaign named \"Spring Sale\" targeting segments [\"millennials\",\"subscribers\"], with $5000 budget, channels [\"email\",\"social\"], starting 2024-04-01 ending 2024-04-30.", + "Generate a campaign configuration JSON for a brand awareness campaign with multiple channels and daily budget capping enabled.", + "Produce a JSON config for a B2B campaign with metadata including product info and region." + ] + }, + "tags": [ + "marketing", + "automation", + "campaign", + "json", + "configuration", + "budgeting", + "channels" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Spring Sale\",\"targetSegments\":[\"millennials\",\"subscribers\"],\"budget\":5000,\"channels\":[\"email\",\"social\"],\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\"}", + "description": "Create a basic multi-channel campaign configuration for spring sale targeting two audience segments." + }, + { + "inputJson": "{\"campaignName\":\"Brand Awareness Q3\",\"targetSegments\":[\"enterprise_clients\"],\"budget\":15000,\"channels\":[\"social\",\"display\"],\"startDate\":\"2024-07-01\",\"endDate\":\"2024-09-30\",\"dailyBudgetCapping\":true}", + "description": "Generate configuration JSON for a quarterly brand awareness campaign with daily budget limits." + }, + { + "inputJson": "{\"campaignName\":\"B2B Lead Gen\",\"targetSegments\":[\"tech_startups\"],\"budget\":10000,\"channels\":[\"email\"],\"startDate\":\"2024-03-15\",\"endDate\":\"2024-05-15\",\"metadata\":{\"product\":\"Cloud VPS\",\"region\":\"North America\"}}", + "description": "Create campaign JSON including metadata fields for a lead generation campaign targeting tech startups." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "marketing-automation.createServer", + "description": "This tool provisions a new virtual server optimized for marketing automation workloads. It accepts specifications like server size, region, operating system, and marketing software stack preferences, then initiates server creation, configures necessary software, and returns connection details and status for integration into marketing campaign systems.", + "category": "marketing-automation", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "A unique, human-readable name to identify the new server instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "The geographic region where the server should be deployed (e.g., 'us-east-1').", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "The server size/type defining computing resources (e.g., 't3.medium').", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server (e.g., 'Ubuntu 20.04').", + "required": true, + "defaultValue": "" + }, + { + "name": "marketingStack", + "type": "array", + "description": "List of marketing software packages to pre-install (e.g., ['Mautic', 'MailChimp API']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "autoScaleEnabled", + "type": "boolean", + "description": "Flag indicating whether auto-scaling configurations should be enabled for the server group.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to label the server (e.g., {'Environment':'Production','Project':'EmailCampaign'}).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server ID, public IP address, SSH access info, install status of marketing stack components, and current provisioning status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically set up dedicated infrastructure for running marketing automation platforms or campaigns, ensuring that servers are configured with the right OS and marketing software to streamline deployment and scale campaign execution.", + "limitations": "This tool does not manage ongoing server maintenance, detailed security hardening beyond initial setup, or real-time campaign execution. It requires valid cloud credentials and permissions.", + "examples": [ + "Create a server named 'EmailServer01' in the US East region with Ubuntu 20.04 and Mautic installed.", + "Set up a medium instance in EU West with Windows Server and preconfigured auto-scaling enabled for marketing load balancing." + ] + }, + "tags": [ + "marketing", + "automation", + "infrastructure", + "server", + "cloud", + "deployment", + "scaling" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"MktgProdServer\",\"region\":\"us-west-2\",\"instanceType\":\"t3.medium\",\"operatingSystem\":\"Ubuntu 20.04\",\"marketingStack\":[\"Mautic\",\"MailChimp API\"],\"autoScaleEnabled\":true,\"tags\":{\"Environment\":\"Production\",\"Team\":\"Marketing\"}}", + "description": "Create a production server in the US West region with Ubuntu and common marketing automation tools pre-installed, enabling auto-scaling." + }, + { + "inputJson": "{\"serverName\":\"TestServer01\",\"region\":\"eu-central-1\",\"instanceType\":\"t3.small\",\"operatingSystem\":\"CentOS 8\",\"marketingStack\":[],\"autoScaleEnabled\":false,\"tags\":{\"Environment\":\"Test\"}}", + "description": "Provision a small test server in Europe without pre-installed marketing software and no auto-scaling." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "marketing-automation.createDataset", + "description": "Creates a structured marketing dataset by combining user-provided raw data, campaign metadata, and segmentation rules. Accepts CSV or JSON data inputs, applies filters and transformations, and outputs a clean, enriched dataset ready for analysis or campaign automation tools.", + "category": "marketing-automation", + "parameters": [ + { + "name": "rawData", + "type": "string", + "description": "Raw marketing data in CSV or JSON format containing user or campaign information.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the raw data input: 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "segmentRules", + "type": "object", + "description": "Rules to segment the data, such as age ranges, geographic locations, or engagement levels.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include campaign metadata like campaign names, dates, and channels in the dataset.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output data format, either 'csv' or 'json'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional filters to exclude or include specific records based on field values (e.g., only active users).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured dataset object containing the processed and segmented marketing data ready for export or integration into marketing tools." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw marketing data from multiple sources and need to clean, segment, and enrich it to create a consolidated dataset for campaign targeting, analytics, or automation workflows. It assists in standardizing data formats and applying segmentation logic for downstream marketing processes.", + "limitations": "This tool does not perform predictive analytics, detailed data visualization, or campaign execution. It requires valid input data and segmentation rules to function correctly.", + "examples": [ + "Create a dataset from raw CSV leads data filtering only users in the US aged 25-40", + "Transform JSON campaign data to a segmented CSV dataset including campaign metadata", + "Generate a marketing dataset excluding inactive users and output as JSON" + ] + }, + "tags": [ + "marketing", + "automation", + "dataset", + "data-processing", + "segmentation", + "csv", + "json", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"rawData\":\"id,name,email,country,age,status\\n1,John Doe,john@example.com,US,28,active\\n2,Jane Smith,jane@example.com,UK,35,inactive\",\"dataFormat\":\"csv\",\"segmentRules\":{\"age\":{\"min\":25,\"max\":40},\"country\":[\"US\"]},\"includeMetadata\":true,\"outputFormat\":\"csv\",\"filterCriteria\":{\"status\":\"active\"}}", + "description": "Create a CSV dataset from raw leads data including only active users from the US aged between 25-40." + }, + { + "inputJson": "{\"rawData\":\"[{\\\"id\\\":101,\\\"campaign\\\":\\\"spring_sale\\\",\\\"impressions\\\":1000,\\\"clicks\\\":100},{\\\"id\\\":102,\\\"campaign\\\":\\\"summer_sale\\\",\\\"impressions\\\":1500,\\\"clicks\\\":150}]\",\"dataFormat\":\"json\",\"segmentRules\":{\"campaign\":[\"spring_sale\"]},\"includeMetadata\":true,\"outputFormat\":\"json\"}", + "description": "Generate a JSON dataset filtered to include only records for the 'spring_sale' campaign, including campaign metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "marketing-automation.createAccount", + "description": "Creates a new marketing automation account using provided business details. Accepts input parameters like business name, industry, contact email, and optional settings such as user roles and marketing preferences. Processes input to register the account in the system and returns confirmation with account ID and setup status.", + "category": "marketing-automation", + "parameters": [ + { + "name": "businessName", + "type": "string", + "description": "The official name of the business for the account registration.", + "required": true, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "The primary industry or sector the business operates in.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactEmail", + "type": "string", + "description": "Email address of the primary contact for the account.", + "required": true, + "defaultValue": "" + }, + { + "name": "userRoles", + "type": "array", + "description": "List of user roles assigned to initial users, e.g., ['admin','marketer'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "marketingPreferences", + "type": "object", + "description": "Optional marketing and notification preferences settings.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableTrial", + "type": "boolean", + "description": "Flag indicating whether to enable a trial period for the account.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique accountId, status of account creation, and optional messages or error details." + }, + "aiAgent": { + "useCase": "Use this tool when a new client or business needs to be onboarded into the marketing automation system. It is suitable for creating accounts that include essential business information and customizable initial setup such as user roles and preferences. This enables AI-driven onboarding, automating repetitive registration workflows.", + "limitations": "This tool does not handle billing setup, advanced user management beyond initial roles, or real-time integration with external CRMs. It creates the account but does not configure campaign content or integrations.", + "examples": [ + "Create an account for a retail business called 'GreenLeaf Inc' with industry 'Retail' and contact email.", + "Register a technology startup with custom user roles to begin marketing automation.", + "Set up a new marketing automation account with default settings and enable a trial period." + ] + }, + "tags": [ + "marketing", + "automation", + "account creation", + "business onboarding", + "CRM integration", + "user management" + ], + "examples": [ + { + "inputJson": "{\"businessName\":\"GreenLeaf Inc\",\"industry\":\"Retail\",\"contactEmail\":\"contact@greenleaf.com\",\"userRoles\":[\"admin\",\"marketer\"],\"marketingPreferences\":{\"emailNotifications\":true,\"smsNotifications\":false},\"enableTrial\":true}", + "description": "Creating an account for a retail business with specific user roles and marketing notification preferences." + }, + { + "inputJson": "{\"businessName\":\"TechNova\",\"industry\":\"Technology\",\"contactEmail\":\"admin@technova.com\",\"enableTrial\":false}", + "description": "Registering a technology company account with default user roles and no trial enabled." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "marketing-automation.createIssue", + "description": "Creates a tracking issue within a marketing automation campaign system. Accepts campaign identifiers, issue details like title, description, severity, and tags. Processes this input to generate and log a new issue record, returning the issue ID, status, and creation timestamp for further tracking and resolution workflow integration.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign related to this issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Concise title summarizing the issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description explaining the nature and context of the issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the issue, e.g., 'low', 'medium', 'high'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags to categorize or label the issue for easier filtering.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Name or identifier of the user or agent reporting the issue.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique issue ID, the current status of the issue, and a timestamp when the issue was created." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or receives indication of a problem or anomaly within a marketing automation campaign and needs to formally log an issue to initiate resolution and tracking. It is suitable for integrating issue tracking tightly with campaign management workflows.", + "limitations": "This tool does not resolve or predict issue outcomes. It merely logs issue details and does not interact with external bug tracking or project management platforms directly unless integrated.", + "examples": [ + "Create an issue for a campaign receiving negative feedback about an email template.", + "Log a severity high issue because an automation rule triggered incorrectly during a promotion.", + "Record an issue tagged 'data-sync' for delayed CRM data integration in campaign analytics." + ] + }, + "tags": [ + "marketing", + "automation", + "issue-tracking", + "campaign-management", + "problem-logging" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"camp1234\",\"title\":\"Email link broken\",\"description\":\"The call-to-action link in the latest email campaign is broken and leads to a 404 page.\",\"severity\":\"high\",\"tags\":[\"email\",\"link-error\"],\"reportedBy\":\"agent007\"}", + "description": "Logging a critical issue for broken email link in a campaign." + }, + { + "inputJson": "{\"campaignId\":\"camp5678\",\"title\":\"Delay in lead capture\",\"description\":\"Lead capture forms are not syncing immediately which delays follow-up automations.\",\"severity\":\"medium\",\"tags\":[\"sync\",\"lead-capture\"],\"reportedBy\":\"marketingBot\"}", + "description": "Notifying about synchronization delay impacting lead capture automation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "marketing-automation.createCommit", + "description": "Creates a commit record for code changes related to marketing automation campaigns. Accepts inputs for commit message, author details, branch, and optionally related campaign ID or metadata. Produces a commit summary including commit ID, timestamp, and status confirming the commit was created in the version control system.", + "category": "marketing-automation", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "Name of the branch where the commit will be added.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Descriptive message explaining the purpose of the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person or system authoring the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the commit author for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Optional identifier of the marketing campaign associated with this commit.", + "required": false, + "defaultValue": "" + }, + { + "name": "filesChanged", + "type": "array", + "description": "List of filenames or file paths included in the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata related to the commit such as tags or ticket references.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the new commit's unique identifier, timestamp of creation, branch name, commit message, and a status indicating success or failure." + }, + "aiAgent": { + "useCase": "Use this tool when automating the creation of commits tied to marketing automation code or configuration changes, including integration with campaign tracking. It is useful for AI agents managing version control in marketing workflows to create structured commit records with relevant metadata.", + "limitations": "This tool does not perform git repository management beyond creating commits. It cannot resolve merge conflicts or push commits to remote repositories.", + "examples": [ + "Create a commit on branch 'feature/campaign-update' with message 'Add new email template' by author 'Alice'", + "Include campaign ID 'camp1234' and files changed ['email_template.html','campaign_config.json'] in the commit", + "Add metadata with Jira ticket 'MARKET-456' and tag 'email-update'" + ] + }, + "tags": [ + "marketing", + "automation", + "version-control", + "commit", + "code-management", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"feature/email-update\",\"commitMessage\":\"Add new email template for spring campaign\",\"authorName\":\"Alice Smith\",\"authorEmail\":\"alice@example.com\",\"campaignId\":\"camp1234\",\"filesChanged\":[\"email_template.html\",\"campaign_config.json\"],\"metadata\":{\"jiraTicket\":\"MARKET-456\",\"tags\":[\"spring\",\"email\"]}}", + "description": "Commit new email template and campaign config files associated with spring campaign on feature branch by Alice." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "marketing-automation.createTest", + "description": "Creates an A/B or multivariate marketing test by generating test variants, setting audience segments, defining goals, and scheduling the test start and duration. Accepts test configuration parameters and outputs the created test identifier and summary details.", + "category": "marketing-automation", + "parameters": [ + { + "name": "testName", + "type": "string", + "description": "The descriptive name of the marketing test to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of test to create, e.g., 'A/B' or 'multivariate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "variants", + "type": "array", + "description": "An array of variant objects each defining different content or campaign versions to test.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceSegment", + "type": "string", + "description": "Identifier of the target audience segment for the test.", + "required": true, + "defaultValue": "" + }, + { + "name": "goals", + "type": "array", + "description": "List of performance goals or metrics to evaluate the test, e.g., clicks, conversions.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Test start date and time in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "durationDays", + "type": "number", + "description": "Number of days the test will run.", + "required": true, + "defaultValue": "" + }, + { + "name": "trafficAllocation", + "type": "number", + "description": "Percentage of total audience traffic allocated to the test (0-100).", + "required": false, + "defaultValue": "100" + }, + { + "name": "notificationsEnabled", + "type": "boolean", + "description": "Whether to send notifications on test start, end, and results.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique test ID, created test name, test type, and summary of variant names and audience segmentation." + }, + "aiAgent": { + "useCase": "Use this tool when setting up marketing experiments to evaluate different campaign versions, content, or strategies by running controlled tests against defined audience segments and goals. It helps automate test creation for data-driven marketing optimization.", + "limitations": "This tool does not execute or analyze test results; it only creates and schedules tests. It requires pre-defined audience segments and variant definitions.", + "examples": [ + "Create an A/B test with two email subject lines targeting a specific customer segment starting tomorrow for 7 days.", + "Create a multivariate test with three landing page variants aimed at conversions with traffic allocated to 80%." + ] + }, + "tags": [ + "marketing", + "automation", + "A/B testing", + "campaigns", + "experimentation", + "audience segmentation" + ], + "examples": [ + { + "inputJson": "{\"testName\":\"Spring Sale Email Test\",\"testType\":\"A/B\",\"variants\":[{\"name\":\"Subject A\",\"content\":\"Spring Sale - 20% Off!\"},{\"name\":\"Subject B\",\"content\":\"Don't Miss Our Spring Sale!\"}],\"audienceSegment\":\"segment123\",\"goals\":[\"openRate\",\"clickRate\"],\"startDate\":\"2024-06-15T09:00:00Z\",\"durationDays\":14,\"trafficAllocation\":100,\"notificationsEnabled\":true}", + "description": "Create an A/B email subject line test targeting a specific customer segment for 14 days." + }, + { + "inputJson": "{\"testName\":\"Homepage Layout Test\",\"testType\":\"multivariate\",\"variants\":[{\"name\":\"Layout A\",\"content\":\"Homepage layout with sidebar\"},{\"name\":\"Layout B\",\"content\":\"Homepage layout with top menu\"},{\"name\":\"Layout C\",\"content\":\"Homepage layout with popup banner\"}],\"audienceSegment\":\"segment456\",\"goals\":[\"conversionRate\"],\"startDate\":\"2024-07-01T00:00:00Z\",\"durationDays\":30,\"trafficAllocation\":80,\"notificationsEnabled\":false}", + "description": "Create a multivariate test for homepage layout variants targeting 80% of a segment over 30 days." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "sales-automation.buildCode", + "description": "Generates customizable code snippets or scripts to automate sales processes such as lead management, email outreach, and pipeline updates based on provided parameters and sales CRM platform preferences. Accepts input defining sales task specifications, programming language, and integration endpoints, producing ready-to-use automation code tailored to client needs.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesTask", + "type": "string", + "description": "The specific sales automation task to generate code for, e.g., lead import, follow-up email automation, or pipeline update.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated code snippet, such as Python, JavaScript, or Ruby.", + "required": true, + "defaultValue": "Python" + }, + { + "name": "crmPlatform", + "type": "string", + "description": "The target sales CRM platform to integrate with, like Salesforce, HubSpot, or Zoho CRM.", + "required": true, + "defaultValue": "" + }, + { + "name": "integrationDetails", + "type": "object", + "description": "Connection details including API keys, endpoints, and authentication tokens necessary for CRM integration.", + "required": true, + "defaultValue": "" + }, + { + "name": "customParameters", + "type": "object", + "description": "Additional user-defined parameters like email templates, scheduling times, or lead filtering criteria to customize the automation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and metadata including language and intended use case." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate executable code tailored to automate specific sales-related tasks that interact with common CRM platforms. Useful for building custom integrations, automating repetitive sales workflows, or creating scripts for lead and pipeline management without manual coding.", + "limitations": "Cannot execute or test the generated code. Does not cover complex multi-step workflows requiring orchestration beyond the provided parameters. Limited to commonly used programming languages and CRM APIs.", + "examples": [ + "Generate a Python script to automate lead import into Salesforce using given API credentials.", + "Create a JavaScript snippet to send follow-up emails via HubSpot CRM with custom email templates.", + "Build Ruby code that updates sales pipeline statuses in Zoho CRM based on recent deal activities." + ] + }, + "tags": [ + "sales", + "automation", + "code-generation", + "crm-integration", + "lead-management", + "email-automation" + ], + "examples": [ + { + "inputJson": "{\"salesTask\":\"leadImport\",\"programmingLanguage\":\"Python\",\"crmPlatform\":\"Salesforce\",\"integrationDetails\":{\"apiKey\":\"abc123\",\"endpoint\":\"https://api.salesforce.com\"},\"customParameters\":{\"source\":\"csv\"}}", + "description": "Generate a Python snippet to import leads into Salesforce from a CSV source using Salesforce API." + }, + { + "inputJson": "{\"salesTask\":\"emailFollowUp\",\"programmingLanguage\":\"JavaScript\",\"crmPlatform\":\"HubSpot\",\"integrationDetails\":{\"apiKey\":\"hubkey456\",\"endpoint\":\"https://api.hubspot.com\"},\"customParameters\":{\"emailTemplateId\":\"tmpl789\",\"sendDelayMinutes\":30}}", + "description": "Create JavaScript code to send follow-up emails via HubSpot with a specified email template and delay." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "marketing-automation.createAPI", + "description": "Creates a customizable RESTful API endpoint to automate marketing campaign management. Accepts configuration input specifying campaign types, actions (e.g., email sends, audience segmentation), authentication methods, and response formats. Outputs API endpoint URL and documentation for integration with marketing systems.", + "category": "marketing-automation", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "Name identifier for the generated API endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignTypes", + "type": "array", + "description": "List of marketing campaign types the API will support (e.g., email, social, ads).", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "Authentication method for API access (e.g., 'apiKey', 'oauth2', 'none').", + "required": true, + "defaultValue": "apiKey" + }, + { + "name": "allowedActions", + "type": "array", + "description": "List of actions the API will allow, such as 'createCampaign', 'updateAudience', 'triggerSend'.", + "required": true, + "defaultValue": "" + }, + { + "name": "responseFormat", + "type": "string", + "description": "Format of API responses, e.g., 'json' or 'xml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "rateLimitPerMinute", + "type": "number", + "description": "Maximum number of API calls allowed per minute to prevent abuse.", + "required": false, + "defaultValue": "60" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Enable detailed logging of API requests and responses for monitoring.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated API endpoint URL, authentication details, usage documentation, and sample request examples." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a custom marketing campaign management API tailored for automation workflows, allowing integration with various marketing platforms through a standardized REST interface. Ideal for dynamically creating APIs to support new campaign types or actions without manual backend development.", + "limitations": "This tool generates the API specification and endpoint but does not implement backend logic beyond scaffolding; actual campaign execution requires integration with marketing systems. It cannot guarantee security configurations beyond basic authentication setup.", + "examples": [ + "Create an API for email and social media marketing campaigns with OAuth2 authentication and JSON response format.", + "Generate an API named 'promoManager' supporting creation and triggering of ad campaigns using API key authentication.", + "Build a marketing automation API with rate limiting of 100 calls per minute and logging disabled." + ] + }, + "tags": [ + "marketing", + "automation", + "API", + "campaign-management", + "rest", + "integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"emailPromoAPI\",\"campaignTypes\":[\"email\"],\"authenticationMethod\":\"apiKey\",\"allowedActions\":[\"createCampaign\",\"triggerSend\"],\"responseFormat\":\"json\",\"rateLimitPerMinute\":30,\"enableLogging\":true}", + "description": "Generate API for email campaign creation and sending with API key authentication and moderate rate limit." + }, + { + "inputJson": "{\"apiName\":\"socialAdAPI\",\"campaignTypes\":[\"social\",\"ads\"],\"authenticationMethod\":\"oauth2\",\"allowedActions\":[\"createCampaign\",\"updateAudience\"],\"responseFormat\":\"json\",\"rateLimitPerMinute\":100,\"enableLogging\":true}", + "description": "Create OAuth2-secured API for social and ad campaign management supporting audience updates." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "sales-automation.analyzeCustomer", + "description": "Analyzes customer data including demographics, purchasing behavior, and engagement metrics to generate insights on customer segmentation, lifetime value, and churn risk. Accepts raw customer datasets and optional filters, processes patterns using statistical and machine learning methods, and outputs a detailed customer analysis report with actionable recommendations.", + "category": "sales-automation", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "List of customer records, each containing demographic and transactional information used for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional criteria to narrow down the customer data, such as date ranges, purchase frequency thresholds, or specific segments.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "Types of analysis to perform, e.g., ['segmentation','lifetimeValue','churnPrediction']. Defaults to all if omitted.", + "required": false, + "defaultValue": "[\"segmentation\",\"lifetimeValue\",\"churnPrediction\"]" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations based on the analysis in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSegments", + "type": "number", + "description": "Maximum number of customer segments to identify during segmentation analysis. Must be a positive integer.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive customer analysis report including identified segments, lifetime value estimations, churn risk scores, and optional strategic recommendations for sales and marketing teams." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate detailed insights about customer populations from raw data to support sales strategy, marketing targeting, or retention efforts. Suitable for evaluating customer quality, prioritizing leads, and optimizing resource allocation based on customer behavior patterns.", + "limitations": "Does not perform real-time data ingestion or handle data cleansing; expects cleaned and structured input. Predictive analytics are based on historical data and may not account for abrupt market changes.", + "examples": [ + "Analyze customer purchasing and engagement data to identify high-value segments needing targeted upselling.", + "Generate churn risk report for active customers from last 6 months for proactive retention campaigns.", + "Provide a summarized report of customer demographics and recommended sales strategies." + ] + }, + "tags": [ + "sales", + "customer-analysis", + "lead-scoring", + "segmentation", + "churn-prediction", + "lifetime-value", + "automation" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"id\":\"C001\",\"age\":34,\"location\":\"NY\",\"purchases\":[{\"date\":\"2023-12-01\",\"amount\":250}],\"lastEngagement\":\"2024-03-12\"},{\"id\":\"C002\",\"age\":27,\"location\":\"CA\",\"purchases\":[{\"date\":\"2024-01-15\",\"amount\":100},{\"date\":\"2024-02-10\",\"amount\":200}],\"lastEngagement\":\"2024-03-15\"}],\"filters\":{\"minPurchaseAmount\":100},\"analysisTypes\":[\"segmentation\",\"lifetimeValue\"],\"includeRecommendations\":true,\"maxSegments\":3}", + "description": "Analyze a small customer dataset filtered by purchase amounts over $100, performing segmentation and lifetime value analysis including recommendations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "sales-automation.createReport", + "description": "Generates a comprehensive sales performance report based on specified date ranges, sales team filters, and metrics. Accepts parameters defining the report scope and format, processes sales data to summarize leads, conversions, revenue, and representative performance, and outputs a structured report document in JSON or PDF format.", + "category": "sales-automation", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "The start date (inclusive) for the sales data to include in the report, formatted as YYYY-MM-DD.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date (inclusive) for the sales data to include in the report, formatted as YYYY-MM-DD.", + "required": true, + "defaultValue": "" + }, + { + "name": "salesTeamIds", + "type": "array", + "description": "Array of sales team or representative IDs to include in the report. If empty or omitted, includes all teams.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metrics to include in the report, such as leadsGenerated, conversionRate, totalRevenue, averageDealSize.", + "required": false, + "defaultValue": "[\"leadsGenerated\",\"conversionRate\",\"totalRevenue\"]" + }, + { + "name": "groupBy", + "type": "string", + "description": "Dimension to group report data by, e.g., 'representative', 'region', or 'productLine'.", + "required": false, + "defaultValue": "representative" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the generated report output: 'json' for structured data or 'pdf' for framed document.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include managerial comments and recommendations in the report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured report document containing requested sales metrics, grouped summary data, and metadata. If format is PDF, includes a base64-encoded PDF document string; if JSON, a detailed JSON object with report data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the generation of sales performance reports for defined periods and teams to support sales strategy reviews, management reporting, or incentive calculations. It helps synthesize raw sales data into actionable summaries and visual documents.", + "limitations": "Cannot generate reports without sufficient sales data within the specified timeframe. Does not perform real-time data extraction — requires pre-imported or accessible sales datasets. Report visualization customization is limited to predefined templates.", + "examples": [ + "Create a sales report for all representatives between 2024-01-01 and 2024-03-31 summarizing total revenue and conversion rate.", + "Generate a PDF report grouped by region including leads generated and average deal size for the last quarter.", + "Produce a JSON sales performance report including managerial comments for the North America sales team from 2024-04-01 to 2024-04-30." + ] + }, + "tags": [ + "sales", + "reporting", + "automation", + "performance", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"salesTeamIds\":[],\"metrics\":[\"totalRevenue\",\"conversionRate\"],\"groupBy\":\"representative\",\"reportFormat\":\"json\",\"includeComments\":false}", + "description": "Generate a JSON sales performance report for all representatives with total revenue and conversion rate for Q1 2024." + }, + { + "inputJson": "{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-06-30\",\"salesTeamIds\":[\"team123\"],\"metrics\":[\"leadsGenerated\",\"averageDealSize\"],\"groupBy\":\"region\",\"reportFormat\":\"pdf\",\"includeComments\":true}", + "description": "Create a PDF report with leads generated and average deal size grouped by region for a specific sales team including managerial comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "sales-automation.generateReport", + "description": "Generates a comprehensive sales report based on specified filters and metrics. Accepts input parameters such as date range, sales team, and report type, processes sales data accordingly, and outputs a structured document summarizing sales performance, trends, and key insights.", + "category": "sales-automation", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "The start date for the sales data to include in the report, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date for the sales data to include in the report, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "salesTeam", + "type": "array", + "description": "List of sales team member IDs or names to filter the report by specific team members. If omitted, includes all salespeople.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportType", + "type": "string", + "description": "The type of report to generate, e.g., 'summary', 'detailed', or 'pipeline'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include graphical charts and visualizations in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to format financial figures in the report.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sales report document as HTML or PDF content, metadata including report generation timestamp, filters applied, and summary statistics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create detailed or summary sales reports for a given time period, sales team, or report style. Useful for automating periodic reporting, providing stakeholders with insights, and summarizing sales performance automatically based on specified parameters.", + "limitations": "This tool does not collect sales data itself; it requires access to pre-existing sales data sources. It cannot generate reports outside the available data scope or perform sales forecasting or predictive analytics.", + "examples": [ + "Generate a detailed sales report for Q1 2024 for the North America sales team including charts.", + "Create a summary sales report for all teams between Jan 1 and Mar 31, 2024, with currency in EUR.", + "Produce a pipeline report for a specific salesperson between specific dates without charts." + ] + }, + "tags": [ + "sales", + "automation", + "reporting", + "analytics", + "lead management", + "performance" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"salesTeam\":[\"Alice\",\"Bob\"],\"reportType\":\"detailed\",\"includeCharts\":true,\"currency\":\"USD\"}", + "description": "Detailed report for Alice and Bob for Q1 2024 showing all sales activities and charts." + }, + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"reportType\":\"summary\",\"includeCharts\":false}", + "description": "Summary sales report for all sales members for January 2024 without charts." + }, + { + "inputJson": "{\"startDate\":\"2024-02-01\",\"endDate\":\"2024-02-28\",\"salesTeam\":[\"Charlie\"],\"reportType\":\"pipeline\",\"includeCharts\":true,\"currency\":\"EUR\"}", + "description": "Pipeline report for salesperson Charlie for February 2024 with charts shown in EUR." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "finance-tools.analyzeDocument", + "description": "This tool accepts financial documents in text or PDF format and performs detailed analysis including extraction of key financial metrics, categorization of expenses and revenues, and identification of potential anomalies or discrepancies. It outputs a structured report summarizing financial health indicators, categorized transactions, and alerts for unusual entries.", + "category": "finance-tools", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The raw content of the financial document to analyze, provided as text or extracted from PDF.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "The type of financial document provided, e.g., invoice, bank statement, expense report.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the document content to improve parsing accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeAnomalyDetection", + "type": "boolean", + "description": "Flag to enable detection and reporting of anomalies or suspicious financial entries.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currencyCode", + "type": "string", + "description": "The currency code (ISO 4217) used in the financial document.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing parsed financial metrics including totals, categorized expenses and revenues, anomalies detected, and an overall financial summary report." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract, summarize, and analyze financial data embedded in various types of financial documents such as invoices, bank statements, or expense reports. It helps automate the review process by structuring raw document data into actionable financial information and identifying potential issues.", + "limitations": "The tool relies on the quality and clarity of the input document content; handwritten or heavily formatted documents may yield less accurate results. It is not a substitute for full financial auditing or legal financial advice.", + "examples": [ + "Analyze a bank statement to summarize monthly expenses and detect any unusual transactions.", + "Extract key financial metrics from an invoice document for automated accounting.", + "Review an expense report document to categorize expenditures and identify anomalies." + ] + }, + "tags": [ + "finance", + "document-analysis", + "financial-reporting", + "expense-categorization", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"Date: 2024-04-10\\nDescription: Office supplies\\nAmount: $350.00\\nDate: 2024-04-15\\nDescription: Client payment\\nAmount: $1500.00\",\"documentType\":\"expenseReport\",\"language\":\"en\",\"includeAnomalyDetection\":true,\"currencyCode\":\"USD\"}", + "description": "Analyze an expense report containing purchase and payment entries to categorize and flag any suspicious transactions." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "finance-tools.createFile", + "description": "This tool generates a financial report file based on provided financial data and user-specified format. It accepts structured financial inputs such as transaction summaries, balance sheets, or income statements and creates a downloadable file in formats like PDF, Excel, or CSV containing the formatted financial report.", + "category": "finance-tools", + "parameters": [ + { + "name": "financialData", + "type": "object", + "description": "Structured financial data including transactions, summary, or account balances to include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "Type of financial report to generate, e.g., 'summary', 'balanceSheet', 'incomeStatement'.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Desired output file format. Supported values: 'pdf', 'xlsx', 'csv'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include graphical charts representing financial data in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'startDate' and 'endDate' in 'YYYY-MM-DD' format to limit data included in the report.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file name and a base64 encoded string representation of the generated financial report file for download or storage." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a downloadable financial report file from provided financial data in a specified format for analysis, presentation, or archival. It is suitable for generating structured PDF, Excel, or CSV reports with optional date filtering and charts.", + "limitations": "This tool does not perform data validation or financial calculations; input data must be pre-validated and prepared. It also does not support formats outside PDF, Excel, or CSV.", + "examples": [ + "Generate a PDF summary report of monthly transactions with charts included.", + "Create an Excel balance sheet report filtered by quarter dates.", + "Produce a CSV income statement file without charts for further data processing." + ] + }, + "tags": [ + "finance", + "reporting", + "file-generation", + "financial-data", + "pdf", + "excel", + "csv", + "charts" + ], + "examples": [ + { + "inputJson": "{\"financialData\":{\"transactions\":[{\"date\":\"2024-05-01\",\"amount\":1500,\"type\":\"income\"},{\"date\":\"2024-05-02\",\"amount\":-300,\"type\":\"expense\"}],\"summary\":{\"totalIncome\":1500,\"totalExpense\":300}},\"reportType\":\"summary\",\"fileFormat\":\"pdf\",\"includeCharts\":true}", + "description": "Generate a PDF summary report with charts for given transaction data." + }, + { + "inputJson": "{\"financialData\":{\"accounts\":{\"assets\":10000,\"liabilities\":4000,\"equity\":6000}},\"reportType\":\"balanceSheet\",\"fileFormat\":\"xlsx\",\"includeCharts\":false,\"dateRange\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\"}}", + "description": "Create an Excel balance sheet report for Q1 2024 without charts." + }, + { + "inputJson": "{\"financialData\":{\"incomeStatements\":[{\"period\":\"2024-Q1\",\"revenue\":10000,\"expenses\":7000}]},\"reportType\":\"incomeStatement\",\"fileFormat\":\"csv\",\"includeCharts\":false}", + "description": "Produce a CSV income statement file for Q1 2024 without charts." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "finance-tools.createCode", + "description": "Generates customized financial code snippets or scripts based on user-defined parameters such as target programming language, financial operations (e.g., tax calculations, amortization, investment returns), and integration requirements. Accepts structured input specifying financial logic and outputs ready-to-use code segments to facilitate automation in financial applications.", + "category": "finance-tools", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated code (e.g., Python, JavaScript).", + "required": true, + "defaultValue": "" + }, + { + "name": "financialOperation", + "type": "string", + "description": "The specific financial operation or calculation to implement (e.g., taxCalculation, loanAmortization).", + "required": true, + "defaultValue": "" + }, + { + "name": "operationParameters", + "type": "object", + "description": "Key-value pairs specifying parameters required by the financial operation (e.g., interestRate, principalAmount).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Flag to include explanatory comments in the generated code for clarity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Preferred code style or formatting convention (e.g., functional, object-oriented).", + "required": false, + "defaultValue": "functional" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string along with metadata such as language and operation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate automated, reliable financial calculation code snippets tailored to specific operations and programming languages. It assists by generating boilerplate or customized code for use in financial software development or automation scripts.", + "limitations": "This tool does not execute or validate the generated code; testing and debugging remain user responsibilities. It may not cover extremely niche or complex financial models without detailed parameters.", + "examples": [ + "Generate Python code for calculating monthly loan amortization with specified interest rate and loan term.", + "Create a JavaScript snippet to compute investment compound returns over a given period.", + "Produce Python code for custom tax calculation based on provided income brackets and rates." + ] + }, + "tags": [ + "finance", + "code-generation", + "automation", + "financial-calculations", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"Python\",\"financialOperation\":\"loanAmortization\",\"operationParameters\":{\"principalAmount\":100000,\"interestRate\":0.05,\"loanTermYears\":15},\"includeComments\":true,\"codeStyle\":\"functional\"}", + "description": "Generate Python code for calculating monthly loan amortization with given principal, interest rate, and loan term." + }, + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"financialOperation\":\"compoundInterest\",\"operationParameters\":{\"principal\":5000,\"rate\":0.07,\"timesCompounded\":4,\"years\":10},\"includeComments\":false,\"codeStyle\":\"functional\"}", + "description": "Create a JavaScript snippet to compute compound interest without comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "finance-tools.createEmail", + "description": "Creates a professional financial email message based on provided parameters such as recipient details, subject, body content, and optional attachments. Accepts inputs for sender info, email purpose (e.g., invoice, payment reminder), and dynamically formats the message accordingly. Outputs a structured email object ready for sending.", + "category": "finance-tools", + "parameters": [ + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "Email address of the sender.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyContent", + "type": "string", + "description": "The main text content or message body of the email.", + "required": false, + "defaultValue": "" + }, + { + "name": "emailPurpose", + "type": "string", + "description": "Purpose of the email to tailor tone and template (e.g., invoice, paymentReminder, accountStatement).", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachment file names or URLs to include with the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a standard financial department signature block.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing structured email fields: sender, recipient, subject, formatted body, and attachments array, ready to be sent via an email client or service." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate professional financial emails such as invoices, payment reminders, or account notifications tailored to recipient and purpose. It helps automate communication with dynamic content and structured format for downstream sending.", + "limitations": "Does not send emails; does not access or validate actual attachment files; content quality depends on input parameters; no natural language generation beyond templated formatting.", + "examples": [ + "Create a payment reminder email to a client including invoice attachment.", + "Generate an account statement notification email with customized subject and greeting.", + "Prepare an invoice email with signature for a new client." + ] + }, + "tags": [ + "finance", + "email", + "automation", + "invoicing", + "communication", + "payment reminder" + ], + "examples": [ + { + "inputJson": "{\"recipientEmail\":\"client@example.com\",\"senderEmail\":\"billing@company.com\",\"subject\":\"Invoice #12345 for April 2024\",\"bodyContent\":\"Dear Client,\\nPlease find your invoice attached.\",\"emailPurpose\":\"invoice\",\"attachments\":[\"invoice_12345.pdf\"],\"includeSignature\":true}", + "description": "Create an invoice email to a client, including the invoice PDF as attachment, with standard company signature." + }, + { + "inputJson": "{\"recipientEmail\":\"customer@example.com\",\"senderEmail\":\"accounts@company.com\",\"subject\":\"Payment Reminder for Invoice #9876\",\"bodyContent\":\"Reminder: Your payment is due on 20th June.\",\"emailPurpose\":\"paymentReminder\",\"attachments\":[],\"includeSignature\":true}", + "description": "Generate a payment reminder email without attachments, reminding customer of due date." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "translation.analyzeDocument", + "description": "This tool accepts a document text and analyzes it for language detection, translation quality assessment, and identification of key linguistic features such as tone, style, and complexity. It processes the input text and returns a comprehensive analysis report useful for understanding and improving document translations.", + "category": "translation", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text content of the document to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Optional ISO language code of the original document text. If not provided, the tool will attempt to auto-detect.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Optional ISO language code for the intended translation target language to assess translation quality specifically for this language pair.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeToneAnalysis", + "type": "boolean", + "description": "Whether to analyze and report on the tone and style of the document text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeComplexityMetrics", + "type": "boolean", + "description": "Whether to include readability and linguistic complexity metrics in the analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected or confirmed source language, translation quality scores, tone and style summary, complexity metrics, and any translation risk flags found." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate a document's linguistic characteristics and translation quality, such as before or after translating a document to ensure accuracy, tone consistency, and readability in the target language. This helps in quality assurance workflows for translation projects.", + "limitations": "This tool does not perform actual translation. It may have limited accuracy in language detection for very short texts and can only estimate translation quality if the targetLanguage is provided and related reference data is available.", + "examples": [ + "Analyze the translation quality and tone consistency of this French document intended for English readers.", + "Detect the original language of this document and provide complexity metrics to help decide localization approach.", + "Assess tone and style of a marketing document to ensure it matches formal business standards after translation." + ] + }, + "tags": [ + "translation", + "analysis", + "document", + "language-detection", + "translation-quality", + "tone-analysis", + "readability" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Bonjour, ce document est destiné à une analyse complète de la qualité de traduction.\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"en\",\"includeToneAnalysis\":true,\"includeComplexityMetrics\":true}", + "description": "Analyze French document for translation quality and linguistic features targeting English." + }, + { + "inputJson": "{\"documentText\":\"Este es un texto corto para determinar la lengua fuente y métricas de complejidad.\",\"includeToneAnalysis\":false,\"includeComplexityMetrics\":true}", + "description": "Detect source language and get complexity metrics for a short Spanish text without tone analysis." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "translation.generateCode", + "description": "Generates source code snippets that translate text from a specified source language to a target language. Accepts input text, source and target language codes, and optional programming language for the output code. Produces code implementing the translation logic or calling translation APIs for integration.", + "category": "translation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The text that needs to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the input text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code into which the text should be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language in which the output code should be generated (e.g., 'python', 'javascript').", + "required": true, + "defaultValue": "python" + }, + { + "name": "useApi", + "type": "boolean", + "description": "Whether to generate code using an external translation API (true) or a simple algorithmic placeholder (false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a code snippet string implementing the translation from source to target language in the specified programming language." + }, + "aiAgent": { + "useCase": "Use this tool when you need a ready-to-use programming code snippet that performs text translation between specified languages. It is ideal for generating integration code with translation services or prototyping translation features in applications.", + "limitations": "Cannot guarantee translation accuracy as it depends on external APIs or placeholder logic. Does not provide runtime translation itself—only the code to perform or call translation.", + "examples": [ + "Generate Python code to translate 'Hello, world!' from English to Spanish using a translation API.", + "Create JavaScript code that translates French text to German without using external APIs (placeholder logic).", + "Generate code in Python for translating Japanese to English using an online translation service." + ] + }, + "tags": [ + "translation", + "code generation", + "API integration", + "multilingual", + "programming", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Hello, world!\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"programmingLanguage\":\"python\",\"useApi\":true}", + "description": "Generate Python code calling an external API to translate English to Spanish." + }, + { + "inputJson": "{\"inputText\":\"Bonjour le monde\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"de\",\"programmingLanguage\":\"javascript\",\"useApi\":false}", + "description": "Generate JavaScript code with placeholder logic translating French to German." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "translation.generateDocument", + "description": "This tool translates the content of text-based documents from a specified source language into a target language while preserving original formatting to the extent possible. It accepts raw or structured document text and returns a translated document text output suitable for further use or display.", + "category": "translation", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text content of the document to be translated, including formatting markup if applicable.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original document text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code into which the document should be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Whether to attempt to maintain the original document formatting in the translated output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formalityLevel", + "type": "string", + "description": "The desired formality level of the translation, such as 'formal', 'informal', or 'neutral'.", + "required": false, + "defaultValue": "neutral" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated document text and metadata such as languages and applied formatting preferences." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a translated version of a document text between specified languages, especially when preservation of formatting and tone is important for readability and professional communication. Ideal for translating manuals, reports, articles, or business documents.", + "limitations": "May not perfectly preserve complex formatting such as embedded images or advanced layout designs. Translation quality depends on language pair and text complexity; idiomatic expressions may require manual review.", + "examples": [ + "Translate a business report from English to Spanish while keeping formal tone and original formatting.", + "Generate a French translation of a product manual originally written in German with informal tone.", + "Convert a technical document from Japanese to English preserving neutral tone and structure." + ] + }, + "tags": [ + "translation", + "document", + "language", + "multilingual", + "formatting", + "text", + "formal", + "informal" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Welcome to the company annual report 2023.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"preserveFormatting\":true,\"formalityLevel\":\"formal\"}", + "description": "Translating an English business report introduction into formal Spanish while preserving formatting." + }, + { + "inputJson": "{\"documentText\":\"Voici le manuel utilisateur du produit.\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"en\",\"preserveFormatting\":false,\"formalityLevel\":\"neutral\"}", + "description": "Translating a French product manual text into English with neutral tone, without preserving formatting." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "content-creation.analyzeDataset", + "description": "Analyzes a structured dataset provided as CSV or JSON to extract statistical summaries, identify data distributions, detect missing values, and highlight significant patterns or anomalies. Outputs a comprehensive report detailing these insights for informed content creation and data-driven decisions.", + "category": "content-creation", + "parameters": [ + { + "name": "dataset", + "type": "string", + "description": "The input dataset content either as CSV text or JSON array of objects to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetFormat", + "type": "string", + "description": "Format of the dataset, either 'csv' or 'json'. Specifies how to parse the input dataset.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeSummaryStats", + "type": "boolean", + "description": "If true, includes basic summary statistics (mean, median, mode, std dev) for numeric fields.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectMissingValues", + "type": "boolean", + "description": "If true, detects and reports missing or null values in the dataset.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "If true, attempts to identify outliers or anomalies in numeric data fields.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of records to analyze for performance; set 0 for no limit.", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including field summaries, missing value report, anomaly detection results, and distribution charts (as data arrays)." + }, + "aiAgent": { + "useCase": "Use this tool when you have a raw structured dataset and need an automated, comprehensive overview highlighting key statistics, data quality issues, and possible patterns to guide content creation or further detailed analysis. It supports both CSV and JSON formatted data sources.", + "limitations": "This tool does not perform predictive modeling or deep machine learning analysis. It focuses on descriptive and diagnostic analytics and may have limited scalability with extremely large datasets beyond the maxRecords parameter.", + "examples": [ + "Analyze the attached JSON dataset of product sales to get summary stats and detect missing values.", + "Process a CSV file of user feedback responses to find data distributions and possible outlier responses.", + "Get an overview of sensor data readings in JSON format including anomaly detection enabled." + ] + }, + "tags": [ + "analysis", + "dataset", + "statistics", + "data-quality", + "content-creation", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"dataset\":\"id,name,age,salary\\n1,Alice,30,70000\\n2,Bob,,60000\\n3,Charlie,25,\\n4,Diana,40,90000\",\"datasetFormat\":\"csv\",\"includeSummaryStats\":true,\"detectMissingValues\":true,\"detectAnomalies\":false,\"maxRecords\":100}", + "description": "Analyze a small CSV dataset with missing age and salary values to get summaries and missing value report." + }, + { + "inputJson": "{\"dataset\":\"[{\\\"product\\\":\\\"Pen\\\",\\\"unitsSold\\\":100,\\\"price\\\":1.5},{\\\"product\\\":\\\"Notebook\\\",\\\"unitsSold\\\":120,\\\"price\\\":2.5},{\\\"product\\\":\\\"Eraser\\\",\\\"unitsSold\\\":null,\\\"price\\\":0.5}]\",\"datasetFormat\":\"json\",\"includeSummaryStats\":true,\"detectMissingValues\":true,\"detectAnomalies\":true,\"maxRecords\":0}", + "description": "Analyze a JSON array of products with some missing unitsSold values to identify stats and anomalies." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "content-creation.analyzeAccount", + "description": "Analyzes digital content accounts by processing account data such as activity logs, content statistics, audience demographics, and engagement metrics to generate a comprehensive report summarizing account performance, strengths, weaknesses, and growth opportunities.", + "category": "content-creation", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier for the content account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Analysis period with startDate and endDate in ISO format to filter data.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeEngagementMetrics", + "type": "boolean", + "description": "Whether to include engagement data (likes, comments, shares) in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis report output, e.g., 'summary', 'detailed', or 'raw'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "metricsToFocus", + "type": "array", + "description": "List of specific metrics to emphasize in the report, like 'followerGrowth' or 'contentReach'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis report including key performance indicators, insights, and recommendations for the account." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the performance of a digital content account, such as social media or blog accounts, to generate actionable insights based on available metrics and historical data.", + "limitations": "Cannot directly access external account data sources; relies on provided data input. Does not perform real-time data fetching or account management actions.", + "examples": [ + "Analyze account performance for last quarter with detailed engagement metrics.", + "Generate a summary report focusing on follower growth and content reach for account 'abc123'.", + "Perform an analysis on account 'user456' from 2023-01-01 to 2023-06-30 including all metrics." + ] + }, + "tags": [ + "analysis", + "content-account", + "performance", + "engagement", + "report", + "digital-content" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"acc_98765\",\"dateRange\":{\"startDate\":\"2023-04-01\",\"endDate\":\"2023-06-30\"},\"includeEngagementMetrics\":true,\"outputFormat\":\"detailed\",\"metricsToFocus\":[\"followerGrowth\",\"contentReach\"]}", + "description": "Detailed analysis on account acc_98765 covering Q2 2023 focusing on follower growth and content reach with engagement metrics." + }, + { + "inputJson": "{\"accountId\":\"social_123\",\"outputFormat\":\"summary\"}", + "description": "Summary report for the content account social_123 with default date range and metrics." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "content-creation.downloadFile", + "description": "This tool downloads a file from a specified URL to a target location or directory on a local or remote system. It accepts the file URL, optional desired filename, destination path, and headers for authorization or custom requests. It performs HTTP(S) GET requests and saves the file, returning status and saved path.", + "category": "content-creation", + "parameters": [ + { + "name": "fileUrl", + "type": "string", + "description": "The full URL of the file to download (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local or remote filesystem path where the file should be saved (optional, defaults to current directory)", + "required": false, + "defaultValue": "./" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional name to save the file as; if omitted, uses name from URL", + "required": false, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the GET request (e.g., Authorization)", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time to wait for the download in seconds (optional, defaults to 60)", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "Indicates success status, full saved file path, and error message if any" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to reliably download files from the internet or network locations, supporting authentication or custom headers, saving to a specified location for processing or storage. Suitable for fetching images, documents, or binaries.", + "limitations": "Cannot download from non-HTTP(S) protocols like FTP or torrents; does not handle partial downloads or resumable downloads; requires access permissions and valid URLs.", + "examples": [ + "Download a public image from a URL to a local 'images' folder.", + "Download a file requiring Bearer token authentication and save with a specific filename.", + "Download a PDF file to the current directory using default filename from URL." + ] + }, + "tags": [ + "download", + "file", + "http", + "content-creation", + "network", + "file-transfer" + ], + "examples": [ + { + "inputJson": "{\"fileUrl\":\"https://example.com/image.png\",\"destinationPath\":\"./images\",\"fileName\":\"cat.png\",\"headers\":{},\"timeoutSeconds\":30}", + "description": "Download an image from a public URL and save it as cat.png in the images directory." + }, + { + "inputJson": "{\"fileUrl\":\"https://api.example.com/secure/file.pdf\",\"destinationPath\":\"./downloads\",\"fileName\":\"secure_doc.pdf\",\"headers\":{\"Authorization\":\"Bearer abc123token\"},\"timeoutSeconds\":60}", + "description": "Download a protected PDF file using Bearer token authorization to a downloads folder with a specific filename." + }, + { + "inputJson": "{\"fileUrl\":\"https://files.example.com/manual.pdf\",\"destinationPath\":\".\",\"fileName\":\"\",\"headers\":{},\"timeoutSeconds\":45}", + "description": "Download a PDF file to the current directory, keeping the original filename from the URL." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "content-creation.uploadFile", + "description": "Uploads a file to a specified remote storage or content management system. Accepts file data and metadata as input, performs validation and storage operations, and returns details about the uploaded file including its URL and storage status.", + "category": "content-creation", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name to assign to the uploaded file, including extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "The base64-encoded content of the file to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file being uploaded, e.g., 'image/png' or 'application/pdf'.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationFolder", + "type": "string", + "description": "The folder or directory path in the storage system where the file should be uploaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if a file with the same name already exists at the destination.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata key-value pairs to attach to the uploaded file.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, file URL, file ID, and any error messages if the upload fails." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload digital files such as images, documents, or media content to a remote content management or cloud storage service as part of content creation, distribution, or management workflows.", + "limitations": "This tool does not handle file conversion, compression, or virus scanning; it assumes input file content is already appropriately encoded and safe.", + "examples": [ + "Upload an image file named 'logo.png' to the 'assets/images' folder.", + "Upload a PDF report named 'monthly_report.pdf' without overwriting existing files.", + "Upload a confidential document with associated metadata tags for classification." + ] + }, + "tags": [ + "upload", + "file", + "content", + "storage", + "media", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"example.png\",\"fileContent\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"fileType\":\"image/png\",\"destinationFolder\":\"assets/images\",\"overwrite\":true}", + "description": "Upload a PNG image named example.png to assets/images folder with overwrite enabled." + }, + { + "inputJson": "{\"fileName\":\"report.pdf\",\"fileContent\":\"JVBERi0xLjQKJaqrrK0KNCAwIG9iag...\",\"fileType\":\"application/pdf\",\"overwrite\":false}", + "description": "Upload a PDF report without specifying a folder, without overwriting existing files." + }, + { + "inputJson": "{\"fileName\":\"confidential.docx\",\"fileContent\":\"UEsDBBQABg...\",\"fileType\":\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\"metadata\":{\"confidential\":\"true\",\"department\":\"finance\"}}", + "description": "Upload a Word document with custom metadata tags indicating confidentiality and department." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "content-creation.downloadDocument", + "description": "Downloads a digital document file from a specified URL or internal document ID, optionally specifying the desired file format and authentication credentials. Returns the binary content or a file link for further use or storage.", + "category": "content-creation", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL from which to download the document. Required if documentId is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentId", + "type": "string", + "description": "The internal identifier of the document to download within a system. Required if sourceUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "The desired file format to download the document in (e.g., pdf, docx, txt). If omitted, the original format is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional authentication token or API key for accessing protected resources.", + "required": false, + "defaultValue": "" + }, + { + "name": "saveToPath", + "type": "string", + "description": "Optional filesystem path where the downloaded document will be saved. If omitted, the tool returns the document content as a base64 string.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Contains status of the download, the file format, the size in bytes, and either the local save path or the base64 encoded content of the document." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve full document files from a URL or internal document storage by ID, for purposes such as processing, analyzing, or archiving. It helps in accessing various file formats with authentication support.", + "limitations": "Cannot convert document formats on the fly. Requires either sourceUrl or documentId. Relies on external network availability. Does not process document content, only downloads files.", + "examples": [ + "Download the PDF version of document ID 12345 from internal storage.", + "Download a public DOCX from a given URL and save it locally.", + "Download a TXT document from URL using API key for authentication." + ] + }, + "tags": [ + "download", + "document", + "file", + "content-creation", + "document-management", + "file-transfer" + ], + "examples": [ + { + "inputJson": "{\"documentId\":\"doc_98765\",\"fileFormat\":\"pdf\"}", + "description": "Download document with ID 'doc_98765' as a PDF file." + }, + { + "inputJson": "{\"sourceUrl\":\"https://example.com/files/report.docx\",\"saveToPath\":\"/tmp/report.docx\"}", + "description": "Download a DOCX file from a given public URL and save it locally." + }, + { + "inputJson": "{\"sourceUrl\":\"https://secure.example.com/secret.txt\",\"authenticationToken\":\"Bearer abc123xyz\"}", + "description": "Download a protected TXT file from URL using an authentication token, returning content as base64." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "documentation-tools.analyzeEvent", + "description": "Analyzes user interaction events within documentation systems by processing input event logs or event objects to extract patterns, frequencies, and insights about user behavior. Produces detailed summaries and statistical reports that help improve documentation usability and engagement.", + "category": "documentation-tools", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "An array of event objects representing user interactions with the documentation; each event includes type, timestamp, userId, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "An optional filter specifying start and end timestamps (ISO 8601 strings) to limit the analysis to events within this period.", + "required": false, + "defaultValue": "" + }, + { + "name": "eventTypes", + "type": "array", + "description": "An optional list of event types to include in the analysis (e.g., ['click', 'scroll', 'search']). If empty or omitted, all event types are analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "aggregateByUser", + "type": "boolean", + "description": "Whether to aggregate and summarize event data per user, showing individual usage patterns.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Determines if additional event metadata should be included in the analysis output for deeper insights.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing analytics results including total events, event counts by type, user engagement statistics, temporal trends, and optional detailed breakdowns based on input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze user interaction events in documentation platforms to understand usage patterns, identify frequent actions, or gather insights to improve content and navigation. Helpful for product managers, technical writers, and UX analysts aiming to optimize documentation.", + "limitations": "This tool does not perform real-time event capture or event prediction. It requires structured event data as input and cannot infer context beyond provided metadata.", + "examples": [ + "Analyze event log data to summarize overall documentation interactions within the last month.", + "Filter analysis to only 'search' and 'click' events to evaluate user search behaviors.", + "Aggregate events by user to understand individual engagement levels and identify power users." + ] + }, + "tags": [ + "documentation", + "analytics", + "event-analysis", + "user-behavior", + "usability", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"type\":\"click\",\"timestamp\":\"2024-05-18T10:15:00Z\",\"userId\":\"user123\",\"metadata\":{\"elementId\":\"btn-try\"}},{\"type\":\"scroll\",\"timestamp\":\"2024-05-18T10:16:10Z\",\"userId\":\"user123\",\"metadata\":{\"scrollDepth\":75}},{\"type\":\"search\",\"timestamp\":\"2024-05-18T10:17:05Z\",\"userId\":\"user456\",\"metadata\":{\"query\":\"installation guide\"}}],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"eventTypes\":[\"click\",\"search\"],\"aggregateByUser\":true,\"includeMetadata\":false}", + "description": "Analyze user clicks and searches during May 2024, aggregating results per user without including detailed metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "documentation-tools.analyzeAlert", + "description": "This tool accepts security alert documentation, analyzes the content for clarity, completeness, and consistency, and provides a detailed report highlighting missing information, ambiguous terms, and suggestions for improvements. It supports input as raw text or structured alert data and outputs an analysis report to aid documentation quality enhancement.", + "category": "documentation-tools", + "parameters": [ + { + "name": "alertDocument", + "type": "string", + "description": "The security alert text or document content to analyze for documentation quality.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The input format of the alert document, e.g., 'text' for raw, 'json' for structured alert data.", + "required": false, + "defaultValue": "text" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the alert document content for accurate analysis (default is 'en').", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSuggestions", + "type": "boolean", + "description": "Whether to include specific suggestions for improving alert documentation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Focus analysis on alerts of a given severity to prioritize reporting (e.g., 'critical', 'high').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing identified documentation issues, overall quality score, and optional improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when you have security alert documentation that needs to be reviewed for completeness and clarity before publication or integration into security knowledge bases. Ideal for improving alert communication in documentation by finding gaps and ambiguities.", + "limitations": "Does not provide automated correction or rewriting; analysis is limited to the text and format provided, and may not understand all domain-specific jargon or context.", + "examples": [ + "Analyze this latest critical security alert documentation for completeness and clarity.", + "Review the structured JSON alert data and provide suggestions to improve the description quality.", + "Check the text alert document to identify any ambiguous terms or missing references." + ] + }, + "tags": [ + "documentation", + "analysis", + "security", + "alert", + "quality-assurance", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"alertDocument\":\"Alert ID: 2024-001\\nSeverity: Critical\\nDescription: Unauthorized access detected to server X. Immediate action required.\",\"format\":\"text\"}", + "description": "Analyze short text alert documentation for completeness and clarity." + }, + { + "inputJson": "{\"alertDocument\":\"{\\\"id\\\":\\\"2024-002\\\",\\\"severity\\\":\\\"high\\\",\\\"description\\\":\\\"Multiple failed login attempts detected on user account admin.\\\"}\",\"format\":\"json\",\"includeSuggestions\":true}", + "description": "Analyze JSON structured alert data with suggestions enabled." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "documentation-tools.analyzeCSV", + "description": "Analyzes a CSV input representing documentation data to extract summary statistics, identify inconsistencies, and generate a structured report. Accepts CSV content as a string, processes rows and columns to find missing fields, duplicated entries, and basic descriptive statistics, returning an analysis report object.", + "category": "documentation-tools", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The complete CSV content as a string input to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate values in CSV; defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "headerRowIndex", + "type": "number", + "description": "Zero-based index of the row to be treated as header; defaults to 0.", + "required": false, + "defaultValue": "0" + }, + { + "name": "checkDuplicates", + "type": "boolean", + "description": "Whether to check for duplicate rows or entries; defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "requiredColumns", + "type": "array", + "description": "List of column names that must be present and non-empty in each row.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics (row and column counts), lists of missing required columns, counts of duplicate rows, and detailed row-level issues detected during analysis." + }, + "aiAgent": { + "useCase": "This tool is used by AI agents to analyze documentation-related CSV files, such as changelog entries, API parameter lists, or localization spreadsheets, to detect data quality issues, structural problems, and extract meaningful statistics, aiding in automatic documentation validation and maintenance.", + "limitations": "Cannot interpret the semantic correctness of documentation content beyond structural and format checks. Does not process CSV files larger than typical memory limits or streaming data. Complex domain-specific validations beyond missing values and duplicates are out of scope.", + "examples": [ + "Analyze a CSV containing API parameter details to find missing required fields.", + "Check a changelog CSV file for duplicate entries and missing version numbers.", + "Generate a summary of rows and columns in a localization CSV to identify incomplete translations." + ] + }, + "tags": [ + "documentation", + "csv", + "analysis", + "validation", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"version,change,date\\n1.0,Initial release,2023-01-01\\n1.1,,2023-01-15\\n1.1,Fixed bugs,2023-01-15\\n\",\"delimiter\":\",\",\"headerRowIndex\":0,\"checkDuplicates\":true,\"requiredColumns\":[\"version\",\"change\"]}", + "description": "Analyze a changelog CSV to find missing changes and duplicate version entries." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "documentation-tools.analyzeLead", + "description": "Analyzes business leads documentation data to extract key insights such as lead quality, source effectiveness, and engagement metrics. Accepts structured lead information and related documentation as input, performs natural language processing and data analysis, and outputs summarized lead evaluations and recommendations for nurturing strategies.", + "category": "documentation-tools", + "parameters": [ + { + "name": "leadDocuments", + "type": "array", + "description": "An array of documentation objects related to business leads, each containing textual descriptions, metadata, and interaction logs.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Specifies the depth of analysis: 'summary' for high-level insights, 'detailed' for comprehensive evaluation.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "engagementThreshold", + "type": "number", + "description": "Numeric threshold (0-100) representing minimum engagement score for a lead to be considered qualified.", + "required": false, + "defaultValue": "50" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis output: 'json' for structured data, 'text' for natural language report.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing lead analysis results including quality scores, source reliability, engagement metrics, and actionable recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess and synthesize information from business lead documentation to help prioritize leads, understand patterns, or generate strategies for lead nurturing. It helps convert unstructured or semi-structured lead info into actionable insights suitable for sales or marketing teams.", + "limitations": "Cannot generate real-time lead data or predict market changes beyond the input documentation. Limited to analysis of provided documents; does not interact directly with external CRM systems or live databases.", + "examples": [ + "Analyze the set of lead documents to identify the top 5 most promising leads.", + "Provide a detailed engagement analysis report for the latest marketing lead batch.", + "Summarize lead quality and suggest improvement strategies based on the attached documentation." + ] + }, + "tags": [ + "documentation-analysis", + "lead-management", + "business-intelligence", + "nlp", + "sales-insights" + ], + "examples": [ + { + "inputJson": "{\"leadDocuments\":[{\"leadId\":\"L001\",\"description\":\"Interested in enterprise solutions\",\"source\":\"website form\",\"interactions\":[{\"date\":\"2024-05-01\",\"type\":\"email_open\"},{\"date\":\"2024-05-03\",\"type\":\"call\"}]},{\"leadId\":\"L002\",\"description\":\"Looking for pricing info\",\"source\":\"webinar\",\"interactions\":[{\"date\":\"2024-05-02\",\"type\":\"email_open\"}]}],\"analysisDepth\":\"summary\",\"engagementThreshold\":40,\"outputFormat\":\"json\"}", + "description": "Analyze two lead documents with summary depth, minimum engagement threshold 40, output structured JSON report." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "documentation-tools.buildServer", + "description": "This tool automates the setup and deployment of a documentation server environment. It accepts configuration parameters such as server type, document root, SSL settings, and user access controls. The tool provisions the server, applies configurations, and outputs the server endpoint and status of deployment.", + "category": "documentation-tools", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server to deploy (e.g., Apache, Nginx).", + "required": true, + "defaultValue": "" + }, + { + "name": "documentRoot", + "type": "string", + "description": "File system path where documentation files are stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableSSL", + "type": "boolean", + "description": "Whether to enable SSL for secure HTTPS access.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sslCertificatePath", + "type": "string", + "description": "Path to the SSL certificate file (required if enableSSL is true).", + "required": false, + "defaultValue": "" + }, + { + "name": "sslKeyPath", + "type": "string", + "description": "Path to the SSL key file (required if enableSSL is true).", + "required": false, + "defaultValue": "" + }, + { + "name": "port", + "type": "number", + "description": "Network port on which the server will listen.", + "required": false, + "defaultValue": "80" + }, + { + "name": "userAccessList", + "type": "array", + "description": "List of usernames allowed access to the documentation server.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server access URL, deployment status ('success' or 'failure'), and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when automating the deployment of a documentation server to host project or product docs with configurable security and access controls. Ideal for setting up new doc environments or redeploying updated configurations without manual server setup.", + "limitations": "Does not manage document content creation or editing; only provisions and configures the server environment. Requires existing server infrastructure to deploy on.", + "examples": [ + "Deploy an Apache server with SSL enabled hosting documentation at /var/www/docs listening on port 443.", + "Set up an Nginx server without SSL on port 8080 with specific user access restrictions.", + "Deploy a documentation server with default settings on port 80 without SSL." + ] + }, + "tags": [ + "documentation", + "server", + "deployment", + "automation", + "infrastructure", + "security" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"Apache\",\"documentRoot\":\"/var/www/docs\",\"enableSSL\":true,\"sslCertificatePath\":\"/etc/ssl/certs/mycert.pem\",\"sslKeyPath\":\"/etc/ssl/private/mykey.pem\",\"port\":443,\"userAccessList\":[\"alice\",\"bob\"]}", + "description": "Deploy an Apache documentation server with SSL on port 443 allowing users Alice and Bob." + }, + { + "inputJson": "{\"serverType\":\"Nginx\",\"documentRoot\":\"/usr/share/nginx/html/docs\",\"enableSSL\":false,\"port\":8080,\"userAccessList\":[] }", + "description": "Deploy an Nginx documentation server without SSL on port 8080 open to all users." + }, + { + "inputJson": "{\"serverType\":\"Apache\",\"documentRoot\":\"/var/www/html/docs\"}", + "description": "Deploy an Apache documentation server with default port 80 and no SSL or user restrictions." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "documentation-tools.downloadReport", + "description": "Downloads a report document from a specified documentation system or repository. Accepts parameters to specify the report ID, desired format (PDF, DOCX, etc.), and optional filters to customize report contents. Returns the report as a downloadable file link or binary content.", + "category": "documentation-tools", + "parameters": [ + { + "name": "reportId", + "type": "string", + "description": "Unique identifier of the report to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired file format for the downloaded report, e.g., PDF, DOCX, HTML.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "includeAttachments", + "type": "boolean", + "description": "Whether to include related attachments or embedded files in the downloaded report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters or parameters to customize the report content, such as date ranges or section selections.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloadable report content as a base64-encoded string and metadata including filename and content type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve a finalized report document from a documentation system or repository in a specific format, optionally customized by filters or content inclusions. Ideal for automating report retrieval in workflows where reports are generated and stored remotely.", + "limitations": "This tool cannot generate or edit reports; it only downloads existing reports. It requires valid report identifiers and access permissions to retrieve report data.", + "examples": [ + "Download the latest project status report as a PDF.", + "Retrieve the compliance audit report including all attachments in DOCX format.", + "Get a filtered sales summary report for Q1 in PDF format without attachments." + ] + }, + "tags": [ + "download", + "report", + "documentation", + "file", + "PDF", + "DOCX", + "automation" + ], + "examples": [ + { + "inputJson": "{\"reportId\":\"st-2023-06-financial\",\"format\":\"PDF\",\"includeAttachments\":false}", + "description": "Download the financial report for June 2023 in PDF without attachments." + }, + { + "inputJson": "{\"reportId\":\"audit-789\",\"format\":\"DOCX\",\"includeAttachments\":true}", + "description": "Download the audit report including attachments as a DOCX file." + }, + { + "inputJson": "{\"reportId\":\"sales-2024-q1\",\"format\":\"PDF\",\"filters\":{\"dateFrom\":\"2024-01-01\",\"dateTo\":\"2024-03-31\"}}", + "description": "Download the Q1 sales report filtered by date range in PDF format." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "documentation-tools.buildTest", + "description": "Generates automated test code snippets from given documentation or code comments. Accepts input documentation in text or markdown describing expected functionality or behaviors, analyzes the content, and produces corresponding test code in a specified programming language and framework format. Outputs test code files or snippets ready for integration in the codebase.", + "category": "documentation-tools", + "parameters": [ + { + "name": "inputDocumentation", + "type": "string", + "description": "The source documentation or comments describing the feature or behavior to be tested. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Programming language for the generated test code (e.g., 'JavaScript', 'Python'). Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Test framework to target for the generated tests (e.g., 'Jest', 'Mocha', 'PyTest'). Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format for the test code: 'snippet' for code block or 'file' for complete file content. Optional, default 'snippet'.", + "required": false, + "defaultValue": "snippet" + }, + { + "name": "includeSetupTeardown", + "type": "boolean", + "description": "Whether to generate setup and teardown code blocks for the test suite. Optional, default false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "testNamePrefix", + "type": "string", + "description": "Optional prefix string to prepend to all generated test case names to avoid naming conflicts. Optional.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'testCode' string with the generated test code snippet or file content and a 'language' string indicating the target programming language for syntax highlighting." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent is tasked with creating automated test cases from textual documentation or code comments to streamline testing efforts. It assists in converting natural language specifications or doc comments into executable test code, improving code quality and coverage with minimal manual test writing.", + "limitations": "Cannot guarantee semantic correctness of tests, especially for complex logic or ambiguous documentation. It does not execute or validate the generated tests, and might not fully capture edge cases if the documentation is incomplete or vague.", + "examples": [ + "Generate Jest test snippet in JavaScript from provided markdown feature description.", + "Produce PyTest code file based on docstring describing function behavior in Python.", + "Create Mocha tests including setup and teardown blocks for JavaScript from detailed comments." + ] + }, + "tags": [ + "documentation", + "testing", + "automation", + "code-generation", + "unit-test", + "test-code", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"inputDocumentation\":\"## Function sum\\nAdds two numbers and returns the total.\n\n### Behavior\n- Returns the sum of two integers.\n- Throws error if input is not a number.\",\"targetLanguage\":\"JavaScript\",\"testFramework\":\"Jest\",\"outputFormat\":\"snippet\",\"includeSetupTeardown\":false,\"testNamePrefix\":\"sumFunction_\"}", + "description": "Generating a simple Jest test snippet for a sum function described in markdown." + }, + { + "inputJson": "{\"inputDocumentation\":\"\"\"Calculate factorial of a non-negative integer.\n\nParameters:\n- n: integer, the number to factorial\n\nReturns:\n- integer, factorial of n.\n\"\"\",\"targetLanguage\":\"Python\",\"testFramework\":\"PyTest\",\"outputFormat\":\"file\",\"includeSetupTeardown\":true,\"testNamePrefix\":\"factorial_\"}", + "description": "Generating a PyTest test file with setup/teardown for a factorial function specified in docstring." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "data-analytics.downloadCode", + "description": "This tool downloads code files from specified online repositories or code hosting platforms based on user-defined query parameters such as repository URL, file types, branches, or tags. It processes these inputs to fetch and return the relevant source code files in a compressed archive format or as raw file content for further data analytics or inspection.", + "category": "data-analytics", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the code repository to download code from. Required to specify the source location.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileTypes", + "type": "array", + "description": "Array of file extensions (e.g., [\".js\", \".py\"]) to filter and download specific types of code files.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "branch", + "type": "string", + "description": "The branch or tag name in the repository to download the code from. Defaults to the default branch if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSubdirectories", + "type": "boolean", + "description": "Whether to include code files from all subdirectories recursively. True by default.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the downloaded code package - 'zip' for compressed archive or 'raw' for raw file contents.", + "required": false, + "defaultValue": "zip" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded code data. Includes a base64 encoded string of the archive or raw files, file metadata, and status information." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve source code files from an online repository for analysis, auditing, or visualization as part of a data analytics workflow. Ideal for scenarios requiring programmatic access to codebases filtered by file types or branches.", + "limitations": "Cannot handle repositories behind private authentication without credentials, and may have limitations on very large repositories or rate limits imposed by hosting platforms.", + "examples": [ + "Download all JavaScript files from the master branch of a public GitHub repository.", + "Fetch Python script files from a given repository tag as raw files.", + "Retrieve the entire codebase from a public Bitbucket repository in a compressed archive." + ] + }, + "tags": [ + "data-analytics", + "code-download", + "repository", + "source-code", + "automation", + "git", + "programmatic-access" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project\",\"fileTypes\":[\".js\"],\"branch\":\"main\",\"includeSubdirectories\":true,\"outputFormat\":\"zip\"}", + "description": "Download all JavaScript files from the main branch in a zip archive." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://bitbucket.org/example/repo\",\"fileTypes\":[\".py\"],\"branch\":\"v1.2\",\"includeSubdirectories\":false,\"outputFormat\":\"raw\"}", + "description": "Download Python files from tag v1.2 without subdirectories, returning raw contents." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "data-analytics.downloadFile", + "description": "Downloads a specified data file from a remote server or cloud storage based on given file path or URL. It supports optional authentication headers and timeout settings. The tool outputs the binary content of the file, ready for saving or further processing.", + "category": "data-analytics", + "parameters": [ + { + "name": "fileUrl", + "type": "string", + "description": "The complete URL or path to the file location to download, including protocol if applicable.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional bearer token or API key for authenticating download requests to secured endpoints.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Optional timeout in seconds for the download operation before it fails.", + "required": false, + "defaultValue": "30" + }, + { + "name": "retryCount", + "type": "number", + "description": "Number of times to retry download if the initial attempt fails due to transient errors.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file content as a binary buffer and metadata like file size and content type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically retrieve data files referenced by URL or remote paths for analysis or ingestion, especially when authentication or retries are necessary. It is ideal for downloading CSV, JSON, Excel, or other analytics files from APIs or cloud storages.", + "limitations": "This tool does not process or parse the downloaded file content; it only retrieves raw data. It cannot upload, convert, or validate files.", + "examples": [ + "Download a public CSV file for data analysis.", + "Download a secured JSON configuration file requiring an auth token.", + "Retry download of a large analytics report with network timeout settings." + ] + }, + "tags": [ + "download", + "file", + "data-analytics", + "retrieval", + "network", + "remote-access" + ], + "examples": [ + { + "inputJson": "{\"fileUrl\":\"https://example.com/data/report.csv\",\"authenticationToken\":\"\",\"timeoutSeconds\":30,\"retryCount\":2}", + "description": "Download a public CSV report from a URL with default timeout and 2 retries." + }, + { + "inputJson": "{\"fileUrl\":\"https://secure-storage.com/api/data.json\",\"authenticationToken\":\"Bearer abc123token\",\"timeoutSeconds\":60,\"retryCount\":3}", + "description": "Download a secured JSON file with bearer token and a 60 second timeout." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "data-analytics.uploadFile", + "description": "Uploads a data file (CSV, JSON, Excel) to a data analytics platform for further processing and analysis. Accepts local file paths or remote URLs, performs basic validation on file type and size, and returns a confirmation including metadata for downstream analytics workflows.", + "category": "data-analytics", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local filesystem path or URL of the data file to upload", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type/format of the file (e.g., csv, json, xlsx) for validation and parsing guidance", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite an existing file with the same name in the system", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "If true, validate the file contents against a predefined schema after upload", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata tags to associate with the uploaded file, such as source, date, or description", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing upload success status, stored file identifier, detected file type, file size in bytes, and any validation errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ingest a data file into the analytics environment for analysis, visualization, or further ETL processes. It is ideal for preparing raw datasets by uploading them into the system and verifying the file's readiness for downstream use.", + "limitations": "This tool does not perform deep data transformation or cleaning beyond basic schema validation. It cannot handle streaming data, very large files exceeding system limits, or unsupported file formats.", + "examples": [ + "Upload the sales CSV for Q1 2024 from my local machine", + "Upload JSON data from the remote URL for recent product analytics", + "Upload an Excel data file and overwrite any existing file of the same name" + ] + }, + "tags": [ + "upload", + "data", + "file", + "analytics", + "csv", + "json", + "excel", + "validation" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/sales_q1_2024.csv\",\"fileType\":\"csv\",\"overwrite\":false,\"validateSchema\":true,\"metadata\":{\"source\":\"sales_dept\",\"description\":\"Q1 sales data\"}}", + "description": "Uploads a local CSV file for Q1 2024 sales, validating its schema and associating descriptive metadata." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/data/product_metrics.json\",\"fileType\":\"json\",\"overwrite\":true,\"validateSchema\":false,\"metadata\":{}}", + "description": "Uploads a JSON file from a remote URL, overwriting existing entries without schema validation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "data-analytics.formatEmail", + "description": "Formats raw email data into a standardized, human-readable email template. Accepts inputs like plain text email body, subject, recipients, and optional metadata, then processes these to produce a styled HTML email output suitable for presentation or sending.", + "category": "data-analytics", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The raw body content of the email, supports plain text or basic markdown.", + "required": true, + "defaultValue": "" + }, + { + "name": "toRecipients", + "type": "array", + "description": "List of primary recipient email addresses.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "List of CC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccRecipients", + "type": "array", + "description": "List of BCC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fromAddress", + "type": "string", + "description": "Sender's email address.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Flag to append a default or custom signature to the email body.", + "required": false, + "defaultValue": "false" + }, + { + "name": "signatureContent", + "type": "string", + "description": "Custom signature text or HTML to append if includeSignature is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a well-formatted HTML email string compatible with most email clients and a plain text fallback version." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to prepare or reformat email content data into a clean, standardized email format for sending, previewing, or reporting. This is especially useful to ensure consistent styling and structure for dynamically generated emails derived from raw data inputs.", + "limitations": "This tool does not send emails or validate email addresses. It does not support complex email templating engines or embedded multimedia beyond basic HTML formatting.", + "examples": [ + "Format a plain text and metadata input into a professional HTML email template.", + "Convert raw email details into a styled email preview for display.", + "Generate an email layout from structured input with optional signature inclusion." + ] + }, + "tags": [ + "formatting", + "email", + "html", + "communication", + "data-analytics" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Quarterly Report Update\",\"body\":\"Hello team,\\nPlease find attached the latest quarterly report. Let me know if you have any questions.\",\"toRecipients\":[\"team@example.com\"],\"fromAddress\":\"manager@example.com\",\"includeSignature\":true,\"signatureContent\":\"
Best regards,
Manager\"}", + "description": "Format a basic email with subject, body, recipient, sender, and append a HTML signature." + }, + { + "inputJson": "{\"subject\":\"Meeting Reminder\",\"body\":\"This is a reminder for the meeting scheduled at 10am tomorrow.\",\"toRecipients\":[\"employee1@example.com\", \"employee2@example.com\"],\"ccRecipients\":[\"hr@example.com\"],\"fromAddress\":\"admin@example.com\",\"includeSignature\":false}", + "description": "Format email with multiple recipients and CC but no signature." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "data-analytics.uploadDocument", + "description": "Uploads a document file for data analysis purposes. Accepts document files (PDF, DOCX, TXT) along with optional metadata. Processes the upload by validating file type and size, stores the document securely, and returns a document ID with upload status for downstream analytics workflows.", + "category": "data-analytics", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the document file including extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "Base64-encoded content of the document file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file (e.g., application/pdf, text/plain).", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs providing metadata such as author, date, tags.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite an existing document with the same name.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed file size in megabytes. Files larger than this will be rejected.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing upload status, assigned document ID, and any validation messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to ingest documents for subsequent data analytics processes, such as text extraction, content classification, or aggregation. It ensures documents are properly uploaded and validated before analysis pipelines.", + "limitations": "This tool only uploads and validates documents; it does not perform content extraction or analysis itself.", + "examples": [ + "Upload a PDF report for text analysis.", + "Upload a DOCX file with metadata for document classification.", + "Upload a text file without metadata to store for batch processing." + ] + }, + "tags": [ + "upload", + "document", + "data-analytics", + "file-management", + "metadata", + "validation" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"financial_report.pdf\",\"fileContentBase64\":\"JVBERi0xLjQKJcfs...\",\"fileType\":\"application/pdf\",\"metadata\":{\"author\":\"John Doe\",\"year\":\"2023\"},\"overwriteExisting\":false,\"maxFileSizeMB\":15}", + "description": "Uploading a PDF financial report with author and year metadata." + }, + { + "inputJson": "{\"fileName\":\"meeting_notes.txt\",\"fileContentBase64\":\"VGhpcyBpcyBhIHNhbXBsZSBub3RlLg==\",\"fileType\":\"text/plain\",\"metadata\":{},\"overwriteExisting\":true}", + "description": "Uploading plain text meeting notes and allowing overwriting existing document." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "data-analytics.formatCode", + "description": "Formats source code snippets according to specified programming language and style conventions. Accepts raw code as input along with desired language and formatting preferences, and outputs the well-structured, standardized code string ready for display or further analysis.", + "category": "data-analytics", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw source code string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the source code (e.g., 'javascript', 'python') to apply appropriate formatting rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted code.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line length before wrapping code onto the next line.", + "required": false, + "defaultValue": "80" + }, + { + "name": "semiColons", + "type": "boolean", + "description": "Whether to append semicolons at the end of statements when applicable.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted source code as a string under the 'formattedCode' key." + }, + "aiAgent": { + "useCase": "Use when you need to standardize or prettify raw source code input in various programming languages to improve readability and maintain consistent style before analysis or display. Ideal for data analytics pipelines handling code snippets or generating reports involving code.", + "limitations": "This tool cannot fix syntax errors or perform code linting beyond formatting. It relies on predefined formatting rules and may not support all programming languages or custom style guides.", + "examples": [ + "Format a messy JavaScript snippet for consistent indentation and semicolon usage.", + "Convert raw Python code to use 4-space indentation without tabs.", + "Wrap long lines in a JSON stringified code snippet to 100 characters width for readability." + ] + }, + "tags": [ + "formatting", + "code", + "programming", + "data-analytics", + "prettify", + "source-code" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function test(){console.log('hello world');}\",\"language\":\"javascript\",\"indentSize\":4,\"useTabs\":false,\"lineWidth\":80,\"semiColons\":true}", + "description": "Format JavaScript function with 4 space indentation and semicolons." + }, + { + "inputJson": "{\"code\":\"def myfunc():\\nprint('test')\",\"language\":\"python\",\"indentSize\":4,\"useTabs\":false,\"lineWidth\":80,\"semiColons\":false}", + "description": "Format Python function with standard 4-space indentation and no semicolons." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "data-analytics.composeEmail", + "description": "This tool composes a professional email based on provided data insights, audience context, and desired tone. It accepts structured data summaries and user inputs such as recipient profile, purpose, and tone, then generates a well-formatted email draft highlighting key analytics findings and actionable recommendations.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSummary", + "type": "string", + "description": "A concise summary of the analyzed data insights to be included in the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientRole", + "type": "string", + "description": "The role or position of the email recipient (e.g., manager, client, team) to tailor message tone and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailPurpose", + "type": "string", + "description": "The main intent of the email (e.g., report update, recommendation, alert) to guide content focus.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the email such as formal, informal, persuasive, or neutral.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Flag to indicate whether to add a call-to-action section in the email (true or false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Optional field for any extra notes or points to emphasize in the email body.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the subject line and fully composed email body as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate professional email communication summarizing data analytics results for stakeholders, ensuring clarity and appropriate tone tailored to the recipient's role and the email's purpose. It is useful for generating timely updates, recommendations, or alerts without manual drafting.", + "limitations": "Cannot replace human review for sensitive or highly customized emails; may lack deep contextual understanding beyond provided inputs; does not send emails, only composes drafts.", + "examples": [ + "Compose an email update reporting Q1 sales insights to the sales manager with a formal tone and call to action.", + "Generate a persuasive email highlighting data trends to a prospective client with an informal tone.", + "Create a neutral alert email summarizing recent system anomalies to the IT team without extra notes." + ] + }, + "tags": [ + "email", + "data analytics", + "communication", + "automation", + "email composition", + "reporting", + "business insights" + ], + "examples": [ + { + "inputJson": "{\"dataSummary\":\"Sales increased by 15% in Q1 compared to Q4, driven by new product launches.\",\"recipientRole\":\"Sales Manager\",\"emailPurpose\":\"report update\",\"tone\":\"formal\",\"includeCallToAction\":true,\"additionalNotes\":\"Highlight the need for continued marketing support.\"}", + "description": "Formal report update email for sales manager including call to action and extra notes." + }, + { + "inputJson": "{\"dataSummary\":\"User engagement on the new app feature dropped by 20% last month.\",\"recipientRole\":\"Product Team\",\"emailPurpose\":\"alert\",\"tone\":\"neutral\",\"includeCallToAction\":false,\"additionalNotes\":\"\"}", + "description": "Neutral alert email to product team about engagement drop without call to action." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "data-analytics.generateText", + "description": "Generates meaningful natural language text summaries, explanations, or narratives based on structured or unstructured data inputs. Accepts data inputs such as JSON objects or arrays and uses analytical reasoning to produce coherent textual descriptions or reports reflecting data insights.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured data input (e.g., JSON object/array) to analyze and base the generated text on.", + "required": true, + "defaultValue": "" + }, + { + "name": "textType", + "type": "string", + "description": "Type of text to generate; options can include 'summary', 'explanation', or 'report'.", + "required": true, + "defaultValue": "summary" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated text in characters.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the generated text, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include textual references or descriptions of charts/visualizations if applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text under a 'generatedText' field and metadata such as the textType and language." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured or unstructured data and need to generate human-readable text insights or summaries that describe or explain the data objectively. It's suitable for creating automated data reports, summaries, or narratives to aid understanding or presentation.", + "limitations": "This tool cannot ensure domain-specific factual accuracy beyond its input data and text templates. It may struggle with highly technical or specialized language without customization. It does not generate visual charts, only textual descriptions if includeCharts is true.", + "examples": [ + "Generate a summary explaining the key trends from JSON sales data.", + "Create a detailed report text describing the performance metrics in given data.", + "Produce a short explanation in English of survey results provided in JSON format." + ] + }, + "tags": [ + "data-analytics", + "text-generation", + "reporting", + "summarization", + "natural-language", + "insights", + "data-driven" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"sales\":[{\"month\":\"Jan\",\"revenue\":1000},{\"month\":\"Feb\",\"revenue\":1200}]},\"textType\":\"summary\",\"maxLength\":200,\"language\":\"en\",\"includeCharts\":false}", + "description": "Generate a short summary text describing monthly sales revenue trends." + }, + { + "inputJson": "{\"inputData\":{\"metrics\":{\"clicks\":1500,\"impressions\":10000,\"ctr\":0.15}},\"textType\":\"report\",\"maxLength\":400,\"language\":\"en\",\"includeCharts\":false}", + "description": "Produce a detailed report text explaining marketing performance metrics." + }, + { + "inputJson": "{\"inputData\":{\"surveyResults\":{\"question1\":85,\"question2\":90}},\"textType\":\"explanation\",\"maxLength\":300,\"language\":\"en\",\"includeCharts\":true}", + "description": "Create an explanation text with descriptions of charts based on survey results." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "data-analytics.generateJSON", + "description": "Generates a structured JSON dataset by aggregating and transforming raw tabular data based on user-defined parameters. Accepts input as CSV or array of objects, applies filters, grouping, and calculations, and outputs a JSON-formatted dataset ready for downstream analytics or visualization workflows.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of objects representing raw data records to process; each object corresponds to a row with key-value pairs.", + "required": true, + "defaultValue": "" + }, + { + "name": "groupByFields", + "type": "array", + "description": "List of field names to group the data by, allowing aggregation across specified dimensions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "aggregateFunctions", + "type": "object", + "description": "An object mapping field names to aggregation functions (e.g., sum, average, count) to apply to grouped data.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "filterConditions", + "type": "object", + "description": "Conditions to filter the input data before processing, expressed as a map of field names to filter criteria.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeRawData", + "type": "boolean", + "description": "Flag indicating whether to include original raw data entries alongside aggregated results in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputIndentation", + "type": "number", + "description": "Number of spaces to use for JSON output indentation, improving readability; 0 or omitted means compact JSON.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing a JSON string named 'jsonData' which holds the aggregated dataset, and a metadata object summarizing the output structure and record counts." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw tabular data into hierarchical JSON structures for analytics or visualization purposes, especially when aggregation, grouping, or filtering is required. It's ideal for generating datasets compatible with JSON-consuming visualization tools or APIs.", + "limitations": "Does not perform advanced statistical modeling or machine learning; input data must be well-structured and JSON-serializable; very large datasets may impact performance.", + "examples": [ + "Generate JSON aggregating sales data by region and product category with sums of units sold.", + "Filter raw customer transaction records by date and convert to JSON without grouping.", + "Include raw data alongside grouped customer stats output in indented JSON format." + ] + }, + "tags": [ + "data", + "analytics", + "JSON", + "aggregation", + "filtering", + "grouping", + "transformation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"region\":\"North\",\"product\":\"A\",\"units\":10},{\"region\":\"North\",\"product\":\"B\",\"units\":5},{\"region\":\"South\",\"product\":\"A\",\"units\":7}],\"groupByFields\":[\"region\"],\"aggregateFunctions\":{\"units\":\"sum\"},\"filterConditions\":{},\"includeRawData\":false,\"outputIndentation\":2}", + "description": "Aggregate units sold by region with sum aggregation, outputting readable JSON." + }, + { + "inputJson": "{\"inputData\":[{\"customerId\":1,\"purchaseDate\":\"2023-01-01\",\"amount\":100},{\"customerId\":2,\"purchaseDate\":\"2023-02-15\",\"amount\":200}],\"groupByFields\":[],\"aggregateFunctions\":{},\"filterConditions\":{\"purchaseDate\":{\"$gte\":\"2023-01-01\",\"$lte\":\"2023-01-31\"}},\"includeRawData\":true,\"outputIndentation\":0}", + "description": "Filter transactions in January 2023 and output original records as compact JSON." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "data-analytics.buildFunction", + "description": "Generates a customizable JavaScript function based on provided data schema and analytics goals. Accepts data field definitions and desired operations, then builds reusable code functions for data transformation or aggregation, enabling programmatic data analysis and integration.", + "category": "data-analytics", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name to assign to the generated JavaScript function.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFields", + "type": "array", + "description": "Array of objects specifying data fields (name and type) the function will accept as input.", + "required": true, + "defaultValue": "" + }, + { + "name": "operations", + "type": "array", + "description": "List of operations to perform within the function, such as aggregation, filtering, or mapping, described as objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "returnType", + "type": "string", + "description": "Specifies the expected return value type of the generated function (e.g., number, array, object).", + "required": false, + "defaultValue": "object" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments within the generated function code for clarity.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript function code as a string under 'code' and metadata including function name and summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate data analysis functions dynamically from a given data schema and list of analytics operations, speeding up development of custom data processing scripts or visualizations.", + "limitations": "The tool cannot validate runtime behavior or handle complex logic beyond predefined operations. It assumes input operations are well-defined and the environment supports JavaScript execution.", + "examples": [ + "Generate a function summing sales data by region.", + "Create a function filtering users by age and returning their IDs.", + "Build a mapper converting raw data entries into formatted records." + ] + }, + "tags": [ + "code-generation", + "javascript", + "data-analysis", + "function-builder", + "automation", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"sumSalesByRegion\",\"inputFields\":[{\"name\":\"sales\",\"type\":\"number\"},{\"name\":\"region\",\"type\":\"string\"}],\"operations\":[{\"type\":\"aggregate\",\"aggregation\":\"sum\",\"field\":\"sales\",\"groupBy\":\"region\"}],\"returnType\":\"object\",\"includeComments\":true}", + "description": "Generate a function that sums sales values grouped by region with inline comments." + }, + { + "inputJson": "{\"functionName\":\"filterAdultUsers\",\"inputFields\":[{\"name\":\"age\",\"type\":\"number\"},{\"name\":\"userId\",\"type\":\"string\"}],\"operations\":[{\"type\":\"filter\",\"condition\":{\"field\":\"age\",\"operator\":\">=\",\"value\":18}}],\"returnType\":\"array\",\"includeComments\":false}", + "description": "Create a function that filters out users younger than 18 and returns an array of their IDs." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "data-analytics.generateWord", + "description": "Generates a relevant word based on input data content and analytic context. Accepts a text corpus or data summary as input, analyzes term frequency and semantic relevance, and outputs a single descriptive or representative word useful for tagging, labeling, or summarizing datasets.", + "category": "data-analytics", + "parameters": [ + { + "name": "corpus", + "type": "string", + "description": "The text or textual summary from which to generate a representative word.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxWordLength", + "type": "number", + "description": "Maximum length allowed for the generated word. Defaults to no limit if zero or not set.", + "required": false, + "defaultValue": "0" + }, + { + "name": "minWordFrequency", + "type": "number", + "description": "Minimum frequency threshold in corpus to consider a word valid for output. Defaults to 1.", + "required": false, + "defaultValue": "1" + }, + { + "name": "excludeStopWords", + "type": "boolean", + "description": "Whether to exclude common stop words (like 'and', 'the') from the candidate words.", + "required": false, + "defaultValue": "true" + }, + { + "name": "semanticContext", + "type": "string", + "description": "Optional additional context or theme to bias the word generation towards (e.g., 'finance', 'technology').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Output object containing the generated word and relevant metadata such as its frequency and relevance score." + }, + "aiAgent": { + "useCase": "Use this tool when you need a concise representative word that summarizes or tags a body of text data or dataset descriptions for analytics dashboards, labeling, or quick insights. It helps transform complex textual data into simple keywords for indexing and filtering.", + "limitations": "This tool generates a single word based on frequency and semantic relevance within the input corpus, but cannot generate phrases or multi-word terms. It also depends on the quality and size of the input text and may not perform well for extremely short or highly unstructured inputs.", + "examples": [ + "Generate a single descriptive word from an uploaded product reviews text file to tag the sentiment topic.", + "Create a concise label word for a dataset summary about renewable energy statistics.", + "Produce a representative word focusing on technology themes from a corpus of IT industry reports." + ] + }, + "tags": [ + "data", + "analytics", + "word generation", + "text processing", + "labeling", + "tagging", + "natural language processing" + ], + "examples": [ + { + "inputJson": "{\"corpus\":\"The quick brown fox jumps over the lazy dog near the river bank.\",\"maxWordLength\":5,\"minWordFrequency\":1,\"excludeStopWords\":true,\"semanticContext\":\"\"}", + "description": "Generate a representative short word from a simple sentence excluding common stop words." + }, + { + "inputJson": "{\"corpus\":\"Financial markets showed strong growth with stronger demand in technology and energy sectors.\",\"maxWordLength\":10,\"minWordFrequency\":2,\"excludeStopWords\":true,\"semanticContext\":\"finance\"}", + "description": "Generate a finance-related representative word from financial text containing repeated terms." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "data-analytics.generateTest", + "description": "Generates automated tests for data analytics code snippets or functions. Accepts source code strings and optional test parameters, analyzes the logic, and produces executable test code in the specified language to validate data processing correctness and edge cases.", + "category": "data-analytics", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The data analytics code snippet or function source code to generate tests for.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The testing framework (e.g., Jest, Mocha, PyTest) to generate compatible tests for.", + "required": false, + "defaultValue": "\"Jest\"" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the source code (e.g., JavaScript, Python) to tailor the test code output.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to generate tests covering edge cases and boundary conditions.", + "required": false, + "defaultValue": "true" + }, + { + "name": "testNamingPrefix", + "type": "string", + "description": "Prefix to prepend to generated test case names for easy identification.", + "required": false, + "defaultValue": "\"test\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated test code as a string compatible with the specified test framework and language." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate unit tests for data analytics code snippets or functions to verify correctness, handle edge cases, and speed up quality assurance. It supports multiple languages and test frameworks.", + "limitations": "Cannot execute the generated tests or guarantee complete coverage. It depends on input code clarity and may not understand highly complex or obfuscated code.", + "examples": [ + "Generate Jest tests for a JavaScript function analyzing sales data.", + "Produce PyTest tests for a Python data transformation function, including edge cases.", + "Create Mocha tests for a TypeScript filtering function with a custom test name prefix." + ] + }, + "tags": [ + "data-analytics", + "test-generation", + "code-quality", + "automation", + "unit-testing" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function sumArray(arr) { return arr.reduce((a,b) => a+b, 0); }\",\"testFramework\":\"Jest\",\"language\":\"JavaScript\",\"includeEdgeCases\":true,\"testNamingPrefix\":\"sumArrayTest\"}", + "description": "Generate Jest tests for a simple JavaScript function summing array elements including edge cases." + }, + { + "inputJson": "{\"sourceCode\":\"def filter_positive(nums):\\n return [n for n in nums if n > 0]\",\"testFramework\":\"PyTest\",\"language\":\"Python\",\"includeEdgeCases\":false,\"testNamingPrefix\":\"filterPos\"}", + "description": "Generate PyTest tests for a Python function filtering positive numbers without edge cases." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "data-analytics.createServer", + "description": "Creates a dedicated analytics server instance configured with specified CPU, memory, storage, and software stack for running data processing and visualization workloads. Accepts configuration parameters including server specs and installed analytics tools, then provisions the server and returns connection details and status.", + "category": "data-analytics", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "A unique name identifier for the created server instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate to the server.", + "required": true, + "defaultValue": "4" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes for the server.", + "required": true, + "defaultValue": "16" + }, + { + "name": "storageGB", + "type": "number", + "description": "Disk storage size in gigabytes for the server.", + "required": true, + "defaultValue": "100" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server (e.g., Ubuntu 22.04, CentOS 8).", + "required": true, + "defaultValue": "Ubuntu 22.04" + }, + { + "name": "softwareStack", + "type": "array", + "description": "List of analytics software packages to pre-install (e.g., ['Python', 'R', 'Tableau']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableMonitoring", + "type": "boolean", + "description": "Whether to enable server health monitoring and alerts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "region", + "type": "string", + "description": "Cloud region or data center location where server should be provisioned.", + "required": false, + "defaultValue": "us-east-1" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing provisioned server ID, public and private IP addresses, SSH connection string, installed software list, and the current server status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a new server optimized for performing complex data analytics tasks, including configuring hardware specs and installing necessary analytics tools. This enables automated infrastructure setup for data science workflows.", + "limitations": "Does not manage ongoing server maintenance, autoscaling, or dynamic resource adjustment after creation. Network security configurations must be handled separately.", + "examples": [ + "Create an analytics server named 'analytics-prod-01' with 8 CPUs, 32GB RAM, and install Python and Spark.", + "Provision a testing analytics server with default specs and monitoring enabled in the 'eu-west-2' region.", + "Set up a lightweight server with 2 CPUs and 8GB RAM without preinstalled software for ad hoc data processing." + ] + }, + "tags": [ + "server", + "infrastructure", + "analytics", + "provisioning", + "cloud", + "data-science" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"analytics-prod-01\",\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":500,\"operatingSystem\":\"Ubuntu 22.04\",\"softwareStack\":[\"Python\",\"Spark\",\"Jupyter\"],\"enableMonitoring\":true,\"region\":\"us-east-1\"}", + "description": "Provision a powerful analytics server with multiple analytics tools installed and monitoring enabled." + }, + { + "inputJson": "{\"serverName\":\"test-analytics-01\",\"cpuCores\":4,\"memoryGB\":16,\"storageGB\":100,\"operatingSystem\":\"CentOS 8\",\"softwareStack\":[],\"enableMonitoring\":false,\"region\":\"eu-west-2\"}", + "description": "Create a basic analytics server with CentOS and no preinstalled analytics software, monitoring disabled." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "data-analytics.createAccount", + "description": "Creates a new business account record with provided details such as company name, industry, contact information, and additional metadata. Processes the inputs to validate data formats and ensures account uniqueness before returning a confirmation with the created account's ID and summary.", + "category": "data-analytics", + "parameters": [ + { + "name": "companyName", + "type": "string", + "description": "The official name of the business account to create", + "required": true, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "Industry sector the account belongs to (e.g., Technology, Healthcare)", + "required": false, + "defaultValue": "" + }, + { + "name": "contactEmail", + "type": "string", + "description": "Primary contact email address for the account", + "required": true, + "defaultValue": "" + }, + { + "name": "contactPhone", + "type": "string", + "description": "Primary contact phone number for the account", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Physical address details of the account including street, city, state, zip, and country", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional arbitrary key-value pairs for custom account attributes", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique accountId (string), a creation timestamp, and a summary object with the submitted account details" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create or register a new business account in a CRM or analytics platform, ensuring validation and standardization of input data for accurate records. Suitable for onboarding flows or integrations.", + "limitations": "This tool does not handle account updates or deletions, nor does it manage user permissions or authentication related to the account. It also does not validate the existence of the contact email beyond format correctness.", + "examples": [ + "Create a new technology sector business account with contact details", + "Add an account with detailed physical address and custom metadata", + "Register a healthcare provider account requiring only mandatory fields" + ] + }, + "tags": [ + "data-analytics", + "create", + "business-account", + "CRM", + "onboarding", + "validation" + ], + "examples": [ + { + "inputJson": "{\"companyName\":\"Tech Innovators Inc.\",\"industry\":\"Technology\",\"contactEmail\":\"contact@techinnovators.com\",\"contactPhone\":\"+1234567890\",\"address\":{\"street\":\"123 Innovation Way\",\"city\":\"Techville\",\"state\":\"CA\",\"zip\":\"94043\",\"country\":\"USA\"},\"metadata\":{\"foundedYear\":\"2010\",\"employeeCount\":\"150\"}}", + "description": "Create a complete new technology business account with full contact and address information plus metadata." + }, + { + "inputJson": "{\"companyName\":\"Healthcare Solutions\",\"contactEmail\":\"info@healthsolutions.org\"}", + "description": "Create a minimal healthcare sector account providing only required fields." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "data-analytics.createIssue", + "description": "Creates an issue report based on code quality data and metrics derived from source code analytics. Accepts input such as code metrics (e.g., complexity, duplication, test coverage) and code analysis results, processes thresholds against configurable criteria, and outputs a structured issue object that highlights problems in the codebase for tracking and resolution.", + "category": "data-analytics", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Short title summarizing the issue detected in the codebase.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the issue with context, metrics, and recommendations.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeFile", + "type": "string", + "description": "Relative path or identifier of the source code file where the issue was found.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineNumber", + "type": "number", + "description": "Line number in the code file related to the issue to help pinpoint the exact location.", + "required": false, + "defaultValue": "0" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the issue (e.g., 'low', 'medium', 'high', 'critical').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "tags", + "type": "array", + "description": "Array of strings tagging the issue with relevant labels like 'performance', 'security', 'style'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "recommendations", + "type": "string", + "description": "Optional suggestions or remediation steps for resolving the issue.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured issue object containing an autogenerated unique ID, timestamp of creation, and all provided issue details formatted for tracking and integration into issue management systems." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing code quality metrics to automatically generate actionable issue reports for developers. It helps transform raw analytic data into structured issues that can be tracked, prioritized, and resolved within project workflows. Particularly useful in continuous integration systems or code review automation.", + "limitations": "This tool does not perform code analysis itself; it relies on external data inputs. It cannot automatically fix issues or validate the accuracy of analysis data.", + "examples": [ + "Generate an issue when code complexity exceeds the threshold in a specific file.", + "Create a security vulnerability issue report based on static analysis alerts.", + "Produce style violation issues from linting data with recommended fixes." + ] + }, + "tags": [ + "data-analytics", + "issue-tracking", + "code-quality", + "automation", + "reporting", + "software-development" + ], + "examples": [ + { + "inputJson": "{\"title\":\"High Cyclomatic Complexity\",\"description\":\"Function calculatePayment in payment.js has cyclomatic complexity of 12, exceeding the threshold of 10.\",\"codeFile\":\"src/payment.js\",\"lineNumber\":57,\"severity\":\"high\",\"tags\":[\"complexity\",\"refactoring\"],\"recommendations\":\"Consider splitting the function into smaller functions to reduce complexity.\"}", + "description": "Creates a high severity issue for excessive function complexity in a JS file with recommendations." + }, + { + "inputJson": "{\"title\":\"Missing Unit Tests\",\"description\":\"Module authentication lacks sufficient test coverage (only 40% coverage).\",", + "description": "Creates a medium severity issue pointing out lack of tests for improving code reliability.\"codeFile\":\"src/authentication/login.js\",\"severity\":\"medium\",\"tags\":[\"testing\",\"coverage\"],\"recommendations\":\"Add unit tests to cover critical login scenarios.\"}" + }, + { + "inputJson": "{\"title\":\"Deprecated API Usage\",\"description\":\"Detected usage of deprecated payment API function processOldPayment in orders.js.\",\"codeFile\":\"src/orders.js\",\"lineNumber\":102,\"severity\":\"medium\",\"tags\":[\"deprecated\",\"api\"],\"recommendations\":\"Refactor to use the new processPayment API to ensure future compatibility.\"}", + "description": "Lists a deprecated API usage issue flagged in the code with explanation and fix suggestions." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "data-analytics.createImage", + "description": "Generates a visual image representation (like charts or graphs) from structured data input. Accepts data as arrays or objects, applies specified visualization types and styles, and outputs a generated image in standard formats such as PNG or SVG suitable for reports or dashboards.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points or objects to visualize. Required to generate the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart or graph to create (e.g., bar, line, pie).", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "title", + "type": "string", + "description": "Title to be displayed on the image.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X-axis, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y-axis, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme to use for the chart elements (e.g., 'default', 'dark', 'pastel').", + "required": false, + "defaultValue": "default" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated image as a base64 encoded string and the image format used." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create visual image representations of analytical data, such as generating charts or graphs from numeric datasets for insights presentation, reporting, or dashboards. It helps convert raw data into meaningful visuals in standard image formats.", + "limitations": "Cannot interpret unstructured text data or generate non-chart images; requires structured data input and does not provide advanced interactivity like dynamic charts.", + "examples": [ + "Create a bar chart image from monthly sales data.", + "Generate a pie chart image to show market share distribution.", + "Produce a line chart image illustrating website traffic over time." + ] + }, + "tags": [ + "data-visualization", + "chart", + "image-generation", + "analytics", + "reporting", + "graph" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":120},{\"month\":\"Feb\",\"sales\":150},{\"month\":\"Mar\",\"sales\":90}],\"chartType\":\"bar\",\"width\":800,\"height\":600,\"title\":\"Monthly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales Units\",\"colorScheme\":\"pastel\"}", + "description": "Generate a bar chart image showing monthly sales with custom size and pastel color scheme." + }, + { + "inputJson": "{\"data\":[{\"category\":\"A\", \"value\":30}, {\"category\":\"B\",\"value\":50}, {\"category\":\"C\",\"value\":20}],\"chartType\":\"pie\",\"title\":\"Market Share Distribution\",\"colorScheme\":\"default\"}", + "description": "Create a pie chart image of market share percentages using default colors." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "data-analytics.createTest", + "description": "Creates and configures statistical hypothesis tests on given datasets. Accepts input data, selects test type (e.g., t-test, chi-square), and test parameters (e.g., confidence level), performs the test computation, and outputs test statistics, p-values, and conclusion summaries to support data-driven decision making.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points or dataset arrays to be tested, structured as arrays of numbers or categorical data.", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of statistical test to perform, e.g., 't-test', 'chi-square', 'anova', 'correlation'.", + "required": true, + "defaultValue": "" + }, + { + "name": "alpha", + "type": "number", + "description": "Significance level for hypothesis testing, defaulting to 0.05 for 95% confidence.", + "required": false, + "defaultValue": "0.05" + }, + { + "name": "paired", + "type": "boolean", + "description": "Indicates whether the test is paired or independent samples (applicable mainly to t-tests).", + "required": false, + "defaultValue": "false" + }, + { + "name": "alternative", + "type": "string", + "description": "Alternative hypothesis type: 'two-sided', 'less', or 'greater'.", + "required": false, + "defaultValue": "two-sided" + }, + { + "name": "categories", + "type": "array", + "description": "For categorical data tests like chi-square, optional array of category labels.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the test statistic value, p-value, degrees of freedom (if applicable), and an interpretation summary indicating whether the null hypothesis is rejected at the specified alpha level." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically conduct inferential statistical tests on datasets to assess hypotheses about means, associations, or distributions, especially within data analytics workflows or automated reporting. It aids in understanding data significance without manual statistical analysis.", + "limitations": "Does not perform complex multi-factorial models or non-parametric tests beyond standard ones listed; assumes data inputs are cleaned and appropriately formatted; does not visualize test results.", + "examples": [ + "Perform a t-test comparing two groups for mean difference.", + "Run a chi-square test on categorical variables to check independence.", + "Conduct a correlation test between two numerical variables with a 1% significance level." + ] + }, + "tags": [ + "statistics", + "hypothesis-testing", + "data-analysis", + "inferential-statistics", + "analytics", + "test", + "statistical-test" + ], + "examples": [ + { + "inputJson": "{\"data\": [[5.1, 4.9, 5.0], [5.5, 5.7, 5.3]], \"testType\": \"t-test\", \"paired\": false, \"alpha\": 0.05, \"alternative\": \"two-sided\"}", + "description": "Perform an independent two-sample t-test on two groups of numeric data to compare their means at 95% confidence." + }, + { + "inputJson": "{\"data\": [[\"A\", \"B\", \"A\", \"A\"], [\"B\", \"B\", \"A\", \"B\"]], \"testType\": \"chi-square\", \"categories\": [\"A\", \"B\"], \"alpha\": 0.05}", + "description": "Conduct a chi-square test of independence on two categorical variables to determine if the distributions differ." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "data-analytics.createDataset", + "description": "Creates a structured dataset by combining raw data inputs with specified schema definitions, applying optional filters and transformations. Inputs include raw data (CSV, JSON, or arrays), schema mapping, and transformation rules. Outputs a clean, validated dataset object ready for analysis or export.", + "category": "data-analytics", + "parameters": [ + { + "name": "rawData", + "type": "array", + "description": "An array of raw data objects or records to be included in the dataset. Accepts JSON arrays or arrays of objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "schema", + "type": "object", + "description": "Defines the target structure for the dataset fields, including field names, types, and validation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "filterConditions", + "type": "object", + "description": "Optional criteria to filter the raw data before inclusion, as key-value pairs or expressions.", + "required": false, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "Optional list of transformation rules to apply to the data, such as calculated fields or value mappings.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateData", + "type": "boolean", + "description": "Whether to validate data against the schema and transformation rules before creating the dataset. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "datasetName", + "type": "string", + "description": "Optional name to assign to the created dataset for identification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns the created dataset object containing structured, filtered, and transformed data along with metadata such as schema and record count." + }, + "aiAgent": { + "useCase": "Use this tool when needing to prepare raw input data into a clean, structured dataset for analysis, visualization, or export. Ideal when combining multiple data sources, applying filters, and creating new calculated fields to conform data to a target schema.", + "limitations": "Does not perform complex statistical analysis or modeling. Assumes input data is in supported formats and transformations are predefined. Large datasets may require batching externally.", + "examples": [ + "Create a dataset from a CSV converted to JSON array with a defined schema and filter out records where age is less than 18.", + "Produce a dataset with calculated fields like total sales from raw transactional data applying transformations.", + "Filter raw logs by date and structure fields to match reporting schema." + ] + }, + "tags": [ + "data-analytics", + "dataset", + "data-preparation", + "filtering", + "transformation", + "schema", + "validation" + ], + "examples": [ + { + "inputJson": "{\"rawData\":[{\"name\":\"Alice\",\"age\":30,\"sales\":100},{\"name\":\"Bob\",\"age\":17,\"sales\":200}],\"schema\":{\"fields\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"age\",\"type\":\"number\"},{\"name\":\"sales\",\"type\":\"number\"}]},\"filterConditions\":{\"age\":{\"$gte\":18}},\"transformations\":[],\"validateData\":true,\"datasetName\":\"AdultSales\"}", + "description": "Create dataset filtering out minors and validating schema." + }, + { + "inputJson": "{\"rawData\":[{\"product\":\"Widget A\",\"unitsSold\":10,\"unitPrice\":5},{\"product\":\"Widget B\",\"unitsSold\":3,\"unitPrice\":15}],\"schema\":{\"fields\":[{\"name\":\"product\",\"type\":\"string\"},{\"name\":\"unitsSold\",\"type\":\"number\"},{\"name\":\"unitPrice\",\"type\":\"number\"},{\"name\":\"totalSales\",\"type\":\"number\"}]},\"filterConditions\":{},\"transformations\":[{\"field\":\"totalSales\",\"operation\":\"multiply\",\"operands\":[\"unitsSold\",\"unitPrice\"]}],\"validateData\":true,\"datasetName\":\"ProductSales\"}", + "description": "Create dataset with calculated totalSales field." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "data-analytics.createAPI", + "description": "Creates a RESTful API endpoint based on input data schema and analytics requirements. Accepts data schema (JSON), analytic operations (e.g., filters, aggregations), and output format to generate backend code that exposes data insights via API. Produces API code snippets and endpoint definitions ready for deployment.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSchema", + "type": "object", + "description": "JSON schema describing the structure and types of the input data source.", + "required": true, + "defaultValue": "" + }, + { + "name": "operations", + "type": "array", + "description": "List of analytic operations to perform on the data (e.g., filter conditions, aggregations) expressed as JSON objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the API response, e.g., JSON, XML, CSV.", + "required": false, + "defaultValue": "\"JSON\"" + }, + { + "name": "apiFramework", + "type": "string", + "description": "Framework to generate API code for (e.g., ExpressJS, Flask).", + "required": false, + "defaultValue": "\"ExpressJS\"" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether to include authentication middleware in the API code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "endpointPath", + "type": "string", + "description": "URL path for the API endpoint, e.g., /analytics/data.", + "required": false, + "defaultValue": "\"/analytics/data\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing generated API source code as string and a summary of the created endpoint, including route path, supported operations, and response format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate backend API endpoints that expose data analytics results based on specified schemas and operations, streamlining integration of data insights into applications.", + "limitations": "Does not handle deployment or runtime environment setup. Complex multi-step workflows or dynamic runtime query building require additional customization beyond generated code.", + "examples": [ + "Create an API endpoint in ExpressJS that returns aggregated sales data filtered by date range.", + "Generate a Flask API endpoint delivering JSON responses with filtered user metrics and authentication.", + "Produce an API code snippet for CSV output of analytics on stock price movements." + ] + }, + "tags": [ + "data", + "analytics", + "API", + "code-generation", + "backend", + "REST", + "automation" + ], + "examples": [ + { + "inputJson": "{\"dataSchema\":{\"type\":\"object\",\"properties\":{\"salesDate\":{\"type\":\"string\",\"format\":\"date\"},\"amount\":{\"type\":\"number\"}}},\"operations\":[{\"type\":\"filter\",\"field\":\"salesDate\",\"operator\":\"gte\",\"value\":\"2024-01-01\"},{\"type\":\"aggregate\",\"field\":\"amount\",\"method\":\"sum\"}],\"outputFormat\":\"JSON\",\"apiFramework\":\"ExpressJS\",\"authenticationRequired\":true,\"endpointPath\":\"/sales/summary\"}", + "description": "Generate an ExpressJS API endpoint that filters sales since 2024-01-01 and returns sum of amount with authentication." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "data-analytics.createContract", + "description": "Generates a structured contract document based on provided parties, terms, and conditions. Accepts input details such as party names, contract type, key clauses, dates, and optional metadata. Processes these inputs to create a clear, formatted contract text output suitable for review and downstream use.", + "category": "data-analytics", + "parameters": [ + { + "name": "partyAName", + "type": "string", + "description": "Name of the first party involved in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "partyBName", + "type": "string", + "description": "Name of the second party involved in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractType", + "type": "string", + "description": "Type of contract to generate (e.g., NDA, Service Agreement, Lease).", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The date when the contract becomes effective, in YYYY-MM-DD format.", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationDate", + "type": "string", + "description": "The date when the contract expires or ends, in YYYY-MM-DD format.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyClauses", + "type": "array", + "description": "List of key clauses or provisions to include in the contract (each clause as a string).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "governingLaw", + "type": "string", + "description": "Jurisdiction governing the contract (e.g., state or country).", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Any additional notes or special terms to include in the contract.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract text as a formatted string, and a summary of included clauses." + }, + "aiAgent": { + "useCase": "Use this tool when the agent needs to generate a customized, legally structured contract document using provided party details and specific clauses. Suitable for automating draft creation of common contract types such as NDAs, service agreements, or leases, enabling faster contract preparation with consistent formatting.", + "limitations": "This tool does not provide legal advice or verify legal compliance. It cannot tailor contracts for highly specialized or complex legal situations without human review.", + "examples": [ + "Create a service agreement contract between two businesses with specified service clauses.", + "Generate a non-disclosure agreement between a company and contractor with confidentiality and term clauses.", + "Draft a lease agreement including start/end dates and payment terms." + ] + }, + "tags": [ + "contract", + "document-generation", + "legal", + "data-analytics", + "automation", + "service-agreement", + "nda" + ], + "examples": [ + { + "inputJson": "{\"partyAName\":\"Acme Corp\",\"partyBName\":\"Beta LLC\",\"contractType\":\"Service Agreement\",\"effectiveDate\":\"2024-07-01\",\"expirationDate\":\"2025-06-30\",\"keyClauses\":[\"Scope of Services\",\"Payment Terms\",\"Confidentiality\"],\"governingLaw\":\"California\",\"additionalNotes\":\"All disputes will be resolved by arbitration.\"}", + "description": "Generate a service agreement contract between Acme Corp and Beta LLC effective July 1, 2024, including key service clauses." + }, + { + "inputJson": "{\"partyAName\":\"Jane Doe\",\"partyBName\":\"XYZ Innovations\",\"contractType\":\"NDA\",\"effectiveDate\":\"2024-08-15\",\"keyClauses\":[\"Confidentiality\",\"Term and Termination\"],\"governingLaw\":\"New York\"}", + "description": "Create a non-disclosure agreement between Jane Doe and XYZ Innovations effective August 15, 2024." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "data-analytics.createCommit", + "description": "Creates a detailed commit object summarizing code changes and analytics insights based on provided source files and analysis metadata. Accepts source code diffs, authorship info, and data insights, and outputs a structured commit object for version control or further analytics.", + "category": "data-analytics", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "A descriptive message summarizing the purpose of the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "The name of the author making the commit.", + "required": false, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "The email address of the commit author.", + "required": false, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "An array of file change objects describing file paths and diffs included in the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "analyticsMetadata", + "type": "object", + "description": "Optional metadata object containing analytics insights (e.g., test coverage increase, performance metrics) to attach to the commit.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the commit was created. Defaults to current time if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured commit object including commit hash, message, author info, timestamp, list of changed files with diffs, and embedded analytics metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate detailed commit objects that combine standard version control data with enriched analytics insights for codebase tracking or reporting. It’s useful when generating commits that reflect both code changes and their analytic impact, enabling enhanced traceability.", + "limitations": "This tool does not interface with any actual VCS backend or push commits to repositories; it only creates structured commit data. It also does not perform code validation or conflict resolution.", + "examples": [ + "Create a commit summarizing recent code refactor with coverage improvement metrics.", + "Generate a commit object including changed files and performance gain annotations.", + "Build a commit entry from given diffs and author information for internal analytics." + ] + }, + "tags": [ + "data-analytics", + "create", + "commit", + "code", + "version-control", + "analytics", + "devops" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Refactor authentication module to improve security and performance\",\"authorName\":\"Alice Johnson\",\"authorEmail\":\"alice@example.com\",\"changedFiles\":[{\"filePath\":\"auth/login.js\",\"diff\":\"- old line\\n+ new line\"},{\"filePath\":\"auth/utils.js\",\"diff\":\"+ added helper function\"}],\"analyticsMetadata\":{\"testCoverageIncrease\":5.4,\"performanceBoost\":\"10% faster login\"},\"timestamp\":\"2024-06-01T12:00:00Z\"}", + "description": "Creating a commit object for a code refactor including analytics metadata on test coverage and performance." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "data-transformation.analyzeCustomer", + "description": "Analyzes customer data records to extract insights such as purchase behavior, segmentation, and lifetime value. Accepts an array of customer objects with details like demographics, transactions, and engagement metrics. Processes to produce summarized analytics including segment groups, churn risk, and value scores.", + "category": "data-transformation", + "parameters": [ + { + "name": "customerRecords", + "type": "array", + "description": "An array of customer objects containing data points like ID, demographics, transaction history, and engagement info.", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentationCriteria", + "type": "object", + "description": "Defines rules or parameters to segment customers (e.g., age groups, spending thresholds).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeChurnPrediction", + "type": "boolean", + "description": "If true, performs churn risk analysis based on recent behavior and engagement.", + "required": false, + "defaultValue": "false" + }, + { + "name": "transactionWindowMonths", + "type": "number", + "description": "Number of past months of transaction data to consider for analysis.", + "required": false, + "defaultValue": "12" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall customer analytics including segment definitions, aggregated metrics per segment, predicted churn risks, and customer lifetime value estimates." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to convert raw customer data into actionable business insights, such as identifying key customer segments, predicting churn risk, or estimating customer lifetime value for strategic decision-making.", + "limitations": "This tool analyzes structured customer data but does not handle unstructured data like text reviews, nor does it perform predictive modeling beyond simple churn risk heuristics. It requires sufficiently complete input data to be meaningful.", + "examples": [ + "Analyze last year's customer data to identify high-value segments and churn risks.", + "Segment customers by age and spending to tailor marketing campaigns.", + "Estimate lifetime value and churn prediction for a new customer database." + ] + }, + "tags": [ + "data-transformation", + "customer-analysis", + "segmentation", + "business-insights", + "churn-prediction", + "lifetime-value" + ], + "examples": [ + { + "inputJson": "{\"customerRecords\":[{\"id\":\"c001\",\"age\":34,\"gender\":\"F\",\"transactions\":[{\"date\":\"2023-05-21\",\"amount\":120},{\"date\":\"2023-07-13\",\"amount\":80}],\"engagementScore\":7},{\"id\":\"c002\",\"age\":45,\"gender\":\"M\",\"transactions\":[{\"date\":\"2024-01-15\",\"amount\":200}],\"engagementScore\":3}],\"segmentationCriteria\":{\"ageGroups\":[{\"min\":18,\"max\":35},{\"min\":36,\"max\":50}]},\"includeChurnPrediction\":true,\"transactionWindowMonths\":12}", + "description": "Analyze customers with transaction and engagement data to segment by age groups, include churn prediction, considering last 12 months transaction." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "data-transformation.generateReport", + "description": "Generates a comprehensive report document by transforming and summarizing input structured data such as JSON or CSV arrays. The tool accepts raw data and configuration parameters specifying report sections, filters, aggregations, and output format (PDF, HTML, or plain text) and produces a formatted report file as output.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of objects representing the structured data to be analyzed and included in the report. Each object is a data record.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "The title to display at the top of the generated report.", + "required": false, + "defaultValue": "Generated Report" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs to filter input data before report generation, e.g., {\"status\":\"active\"}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "aggregationFields", + "type": "array", + "description": "List of field names on which to perform aggregations, like sum or average, included in the report summary.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "groupByField", + "type": "string", + "description": "Field name to group data by in the report, enabling grouped summaries.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the report document. Supported: 'pdf', 'html', 'txt'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include graphical charts (bar, pie) representing aggregated data in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'start' and 'end' ISO date strings to limit data included in the report.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content as a base64 encoded string and metadata like filename and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw structured data into a human-readable, summarized report document in common formats such as PDF or HTML, especially when filtering, grouping, or aggregating data is required. It is ideal for generating business reports, analytics summaries, or data export snapshots.", + "limitations": "Cannot generate highly customized layouts requiring complex styling beyond basic formatting and charts. Not suitable for unstructured text data. Does not perform in-depth statistical analysis or machine learning interpretations.", + "examples": [ + "Generate a PDF sales summary report grouped by region for the last quarter including total sales and charts.", + "Create an HTML formatted report of active users filtered by signup date with average session duration aggregation.", + "Produce a plain text report listing error logs filtered by severity and grouped by system component." + ] + }, + "tags": [ + "data-transformation", + "report-generation", + "pdf", + "html", + "aggregation", + "filtering", + "grouping", + "charts" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"region\":\"North\",\"sales\":100},{\"region\":\"South\",\"sales\":150}],\"reportTitle\":\"Q1 Sales Report\",\"aggregationFields\":[\"sales\"],\"groupByField\":\"region\",\"outputFormat\":\"pdf\",\"includeCharts\":true}", + "description": "Generate a PDF report titled 'Q1 Sales Report' summarizing sales by region with charts." + }, + { + "inputJson": "{\"inputData\":[{\"userId\":1,\"status\":\"active\",\"sessionDuration\":30},{\"userId\":2,\"status\":\"inactive\",\"sessionDuration\":45}],\"filters\":{\"status\":\"active\"},\"aggregationFields\":[\"sessionDuration\"],\"outputFormat\":\"html\"}", + "description": "Generate an HTML report of active users aggregating average session duration." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "data-transformation.createCustomer", + "description": "This tool creates a standardized customer data record from raw input data. It accepts input parameters describing customer attributes such as name, contact details, address, and optional metadata. The tool validates, normalizes, and structures this data according to a predefined customer schema. It outputs a structured JSON object representing a clean, validated customer record ready for integration into CRM or databases.", + "category": "data-transformation", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "Customer's first name", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "Customer's last name", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Customer's email address, which will be validated for proper format", + "required": false, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Customer's phone number, optionally normalized to E.164 format", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Customer's postal address fields including street, city, state, postalCode, and country", + "required": false, + "defaultValue": "" + }, + { + "name": "dateOfBirth", + "type": "string", + "description": "Customer's date of birth in ISO 8601 format (YYYY-MM-DD), optional", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional custom metadata to attach to the customer record, as key-value pairs", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A fully validated, standardized customer record object with normalized fields suitable for further processing or database insertion" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw or semi-structured individual customer input into a clean, normalized, and validated customer data object suitable for CRM import, analytics, or business workflows. It helps unify customer information into a consistent schema, ensuring data quality and completeness for downstream applications.", + "limitations": "This tool does not perform duplicate detection across existing customer datasets or advanced verification such as credit checks or fraud detection. It assumes input data is truthful and does basic validation mainly on format and presence.", + "examples": [ + "Create a new customer record from user signup form data with name, email, phone, and address.", + "Normalize and validate customer data collected from multiple sources before saving to CRM.", + "Generate a structured JSON customer object for feeding into a marketing automation system." + ] + }, + "tags": [ + "data-transformation", + "customer-data", + "creation", + "normalization", + "validation", + "crm", + "business" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Alice\",\"lastName\":\"Johnson\",\"email\":\"alice.johnson@example.com\",\"phoneNumber\":\"+14155552671\",\"address\":{\"street\":\"123 Maple St\",\"city\":\"Springfield\",\"state\":\"IL\",\"postalCode\":\"62704\",\"country\":\"USA\"},\"dateOfBirth\":\"1985-04-12\",\"metadata\":{\"loyaltyTier\":\"gold\"}}", + "description": "Creates a complete customer record for Alice Johnson including contact info, address, birthdate, and loyalty metadata." + }, + { + "inputJson": "{\"firstName\":\"Bob\",\"lastName\":\"Smith\"}", + "description": "Creates a minimal customer record with only required first and last names." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "data-validation.analyzeReport", + "description": "Analyzes a textual report document to validate structure, check for key sections, evaluate data consistency, and detect anomalies or inconsistencies. Accepts report content as plain text or structured JSON and produces a detailed analysis highlighting issues and summary metrics.", + "category": "data-validation", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The full text content of the report document to analyze, either plain text or JSON string representing structured report data.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the report content provided: 'text' for plain text, 'json' for structured JSON representation.", + "required": false, + "defaultValue": "text" + }, + { + "name": "requiredSections", + "type": "array", + "description": "List of section titles that should be present in the report for valid structure checking.", + "required": false, + "defaultValue": "[\"Executive Summary\",\"Introduction\",\"Findings\",\"Conclusion\"]" + }, + { + "name": "checkDataConsistency", + "type": "boolean", + "description": "Whether to perform consistency checks on numeric data or metrics within the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to analyze report content for potential anomalies or contradictory statements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language of the report content, used for semantic analysis and pattern matching. Defaults to 'en' (English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the analysis including section validation results, consistency checks, anomalies found, and overall quality score." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to assess the quality, completeness, and consistency of textual reports, such as audit reports, research papers, or status documents, to identify missing sections, data inconsistencies, or contradictory information before further processing or decision making.", + "limitations": "It cannot interpret highly specialized domain content without prior training data; semantic anomaly detection is heuristic and may not detect all logical errors or intentional misreporting.", + "examples": [ + "Analyze this quarterly financial report text and identify missing sections and data issues.", + "Check the supplied JSON structured report for consistency in reported metrics and anomalies.", + "Validate the completeness and logical flow of this audit report text provided in English." + ] + }, + "tags": [ + "data-validation", + "report-analysis", + "anomaly-detection", + "consistency-check", + "document-quality" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"Executive Summary:\\nThis quarter we saw a 10% growth in revenue. Introduction:\\nThe purpose of this report is to...\",\"format\":\"text\",\"requiredSections\":[\"Executive Summary\",\"Introduction\",\"Findings\",\"Conclusion\"],\"checkDataConsistency\":true,\"detectAnomalies\":true,\"language\":\"en\"}", + "description": "Analyzing a quarterly report plain text for required sections, data consistency, and anomalies." + }, + { + "inputJson": "{\"reportContent\":\"{\\\"sections\\\":[{\\\"title\\\":\\\"Introduction\\\",\\\"content\\\":\\\"This report covers...\\\"},{\\\"title\\\":\\\"Findings\\\",\\\"content\\\":\\\"Data shows a 5% drop in...\\\"}]}\" ,\"format\":\"json\",\"requiredSections\":[\"Introduction\",\"Findings\",\"Conclusion\"],\"checkDataConsistency\":true,\"detectAnomalies\":false}", + "description": "Checking structured JSON report for missing conclusion section and data consistency." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "data-validation.generateReport", + "description": "Generates a comprehensive data validation report based on input datasets and specified validation rules. Accepts data in CSV or JSON format and a set of validation criteria, performs checks such as missing values, data type consistency, range validation, and outputs a detailed summary report highlighting data quality issues and statistics.", + "category": "data-validation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "The data to validate, provided as a CSV string or JSON string representing an array of records.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: 'csv' or 'json'. Determines data parsing method.", + "required": true, + "defaultValue": "json" + }, + { + "name": "validationRules", + "type": "object", + "description": "Object defining validation rules per data field, including expected data types, required fields, allowable ranges, and regex patterns.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an overall summary section in the report showing aggregate data quality metrics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the output report, options include 'json' for machine-readable or 'text' for human-readable report.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the data validation report, which includes field-wise validation outcomes, error counts, and summary statistics. The structure varies based on the chosen report format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the quality and integrity of structured data by running automated validation checks and producing detailed reports to identify errors, inconsistencies, and missing data. It's ideal for data quality assessment before data integration or analysis.", + "limitations": "Cannot automatically fix the data issues; only detects and reports them. Complex domain-specific validation rules beyond basic checks must be custom implemented in validationRules. Very large datasets may require chunked processing outside this tool.", + "examples": [ + "Generate a validation report for customer data CSV to check for missing emails and out-of-range ages.", + "Produce a JSON report validating product information JSON array with type and format checks.", + "Create a quick text summary of validation results checking for any empty required fields in user-provided data." + ] + }, + "tags": [ + "data-validation", + "reporting", + "data-quality", + "analytics", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"name,email,age\\nJohn Doe,john@example.com,29\\nJane Smith,,45\",\"dataFormat\":\"csv\",\"validationRules\":{\"email\":{\"required\":true,\"pattern\":\"^\\\\S+@\\\\S+\\\\.\\\\S+$\"},\"age\":{\"type\":\"number\",\"min\":18,\"max\":65}},\"includeSummary\":true,\"reportFormat\":\"text\"}", + "description": "Validate CSV customer data for missing emails and age range, output a text summary report." + }, + { + "inputJson": "{\"inputData\":\"[{\\\"id\\\":1,\\\"price\\\":19.99},{\\\"id\\\":2,\\\"price\\\":-5}]\",\"dataFormat\":\"json\",\"validationRules\":{\"price\":{\"type\":\"number\",\"min\":0}},\"includeSummary\":true,\"reportFormat\":\"json\"}", + "description": "Validate JSON product prices ensuring no negative values, produce a detailed JSON report." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "data-validation.sendEmail", + "description": "Sends an email message after validating email addresses and required content fields. Accepts recipient, sender, subject, and body as inputs, validates the email syntax and presence of required parameters, and outputs a send status along with error messages if validation or sending fails.", + "category": "data-validation", + "parameters": [ + { + "name": "recipientEmail", + "type": "string", + "description": "Primary recipient's email address to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "Sender's email address used as the 'From' address.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Plain text content of the email message body.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccEmails", + "type": "array", + "description": "Optional list of email addresses to be added as CC recipients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccEmails", + "type": "array", + "description": "Optional list of email addresses to be added as BCC recipients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating if the body is HTML-formatted (true) or plain text (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'success' (boolean), 'messageId' (string, if sent or empty), and 'errors' (array of string errors encountered)" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send validated email communications within workflows, ensuring email addresses and required fields meet basic format and presence criteria before dispatch. Useful for automating notifications, alerts, or transactional emails where simple validation is critical to avoid sending failures.", + "limitations": "This tool does not support attachments, advanced email templating, or integration with email service providers requiring authentication tokens or OAuth. It performs basic format validation but does not check email existence or inbox validity.", + "examples": [ + "Send a plain text email notification to a user after form submission.", + "Send an HTML formatted promotional email to a list of recipients with CC and BCC.", + "Send email with validation that recipient and sender comply with RFC email formatting." + ] + }, + "tags": [ + "email", + "validation", + "send", + "communication", + "notification" + ], + "examples": [ + { + "inputJson": "{\"recipientEmail\":\"user@example.com\",\"senderEmail\":\"noreply@company.com\",\"subject\":\"Welcome!\",\"body\":\"Thank you for signing up.\",\"ccEmails\":[],\"bccEmails\":[],\"isHtml\":false}", + "description": "Simple validated email sending a welcome message with no CC/BCC." + }, + { + "inputJson": "{\"recipientEmail\":\"client@example.com\",\"senderEmail\":\"sales@company.com\",\"subject\":\"Your Invoice\",\"body\":\"

Dear Client, please find attached invoice.

\",\"ccEmails\":[\"accounting@company.com\"],\"bccEmails\":[\"manager@company.com\"],\"isHtml\":true}", + "description": "Sending an HTML email to client with CC and BCC recipients." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "data-validation.analyzeCustomer", + "description": "Analyzes customer data records to validate completeness, consistency, and quality. Accepts an array of customer objects containing fields like name, email, phone, and address. Processes data to identify missing fields, format errors, duplicate entries, and generates a detailed report summarizing data quality issues and statistics.", + "category": "data-validation", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "Array of customer records to analyze, each record is an object with customer fields like name, email, phone, address.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateEmail", + "type": "boolean", + "description": "Whether to validate email field formats and flag invalid emails.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validatePhone", + "type": "boolean", + "description": "Whether to validate phone number formats according to specified pattern.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeDuplicates", + "type": "boolean", + "description": "Flag to detect and optionally remove duplicate customer records based on email or phone.", + "required": false, + "defaultValue": "false" + }, + { + "name": "requiredFields", + "type": "array", + "description": "List of customer field names that must be present and non-empty in each record.", + "required": false, + "defaultValue": "[\"name\",\"email\"]" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object containing metrics such as total records, records with missing required fields, invalid emails, invalid phones, duplicate counts, and detailed lists of error entries." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess the quality and integrity of customer data, such as before importing into CRM systems, generating marketing campaigns, or ensuring compliance with data standards. It helps identify problematic data records that need cleaning or correction.", + "limitations": "This tool does not correct or clean data automatically beyond duplicate removal if enabled. It also does not validate address formats or geographic data. Specialized validation rules require custom extensions.", + "examples": [ + "Analyze bulk customer data to find missing emails and invalid phone numbers.", + "Check imported customer list for duplicates and incomplete required fields before CRM integration.", + "Validate the completeness and format of new customer registrations before onboarding." + ] + }, + "tags": [ + "data-validation", + "customer-data", + "quality-assessment", + "duplicate-detection", + "email-validation" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\"},{\"name\":\"\",\"email\":\"invalidemail.com\",\"phone\":\"000\"},{\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\",\"phone\":\"1234567890\"},{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"123-456-7890\"}],\"validateEmail\":true,\"validatePhone\":true,\"removeDuplicates\":true,\"requiredFields\":[\"name\",\"email\"]}", + "description": "Analyze a small customer dataset with missing name, invalid email and phone, plus duplicate records, validating emails and phones, removing duplicates, and requiring name and email fields." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "data-validation.createReport", + "description": "Generates a comprehensive validation report based on provided datasets and defined validation rules. Accepts input data in JSON or CSV format, applies specified validation checks (e.g., completeness, format, range), and produces a detailed report summarizing validation results, errors found, and data quality metrics.", + "category": "data-validation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Input dataset as a JSON string or CSV formatted string to be validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "object", + "description": "An object defining validation rules such as required fields, data type constraints, value ranges, and pattern matches.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the generated report; accepted values are 'json' or 'text'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to indicate if a summary of overall data quality metrics should be included in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxErrors", + "type": "number", + "description": "Maximum number of validation errors to include in the report per field; limits verbosity.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object representing the validation report. Contains fields for summary metrics, detailed error listings per validation rule, and overall validation status." + }, + "aiAgent": { + "useCase": "This tool is suited for scenarios where an AI agent needs to verify data integrity and quality before proceeding with further data processing or analysis. It helps by automatically applying customizable validation rules and producing comprehensive reports highlighting any anomalies or issues in the input data.", + "limitations": "The tool does not fix detected data errors automatically; it only reports them. It relies on correctly specified validation rules and cannot infer rules from data. Extremely large datasets may impact performance depending on environment.", + "examples": [ + "Generate a report on dataset completeness and format correctness for a customer database in JSON format.", + "Create a validation report highlighting out-of-range values in CSV sales data with a text summary.", + "Produce a JSON report checking presence of mandatory fields and pattern compliance for email addresses in user sign-up data." + ] + }, + "tags": [ + "validation", + "reporting", + "data-quality", + "json", + "csv", + "data-integrity" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"id\\\":1, \\\"email\\\":\\\"user@example.com\\\", \\\"age\\\":25},{\\\"id\\\":2, \\\"email\\\":\\\"invalid-email\\\", \\\"age\\\":-5}]\",\"validationRules\":{\"requiredFields\":[\"id\",\"email\",\"age\"],\"fieldPatterns\":{\"email\":\"^\\\\S+@\\\\S+\\\\.\\\\S+$\"},\"fieldRanges\":{\"age\":{\"min\":0,\"max\":120}}},\"reportFormat\":\"json\",\"includeSummary\":true,\"maxErrors\":10}", + "description": "Validate user records JSON for required fields, correct email format, and age range; output as JSON report with summary." + }, + { + "inputJson": "{\"inputData\":\"id,email,age\\n1,user@example.com,30\\n2,bademail,150\\n3,,25\",\"validationRules\":{\"requiredFields\":[\"email\"],\"fieldPatterns\":{\"email\":\"^\\\\S+@\\\\S+\\\\.\\\\S+$\"},\"fieldRanges\":{\"age\":{\"min\":0,\"max\":99}}},\"reportFormat\":\"text\",\"includeSummary\":false,\"maxErrors\":5}", + "description": "Validate CSV sales data for presence and pattern of emails, age within range; produce textual report without summary." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "etl-processes.analyzeMessage", + "description": "Analyzes a text-based message or communication content by extracting metadata, performing sentiment and entity detection, and summarizing the main topics. Accepts raw message text input and optional message metadata, outputs structured analysis including sentiment score, detected entities, and a concise summary.", + "category": "etl-processes", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The raw text content of the message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "ISO 639-1 code of the language used in the message text (e.g., 'en' for English). Defaults to 'en' if not specified.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to extract named entities such as people, organizations, and locations from the message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the message text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate a concise summary of the message content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata about the message (e.g., sender, timestamp) to enrich analysis context.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results, including sentiment score, entities identified, and summary text if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract insights and structured information from raw message contents, including determining emotional tone, identifying key persons or locations mentioned, and summarizing lengthy communications for easier consumption.", + "limitations": "This tool does not perform deep contextual understanding beyond standard NLP techniques, cannot interpret non-text content, and its effectiveness depends on the quality and language of the input message.", + "examples": [ + "Analyze the sentiment and key topics mentioned in this customer support chat message.", + "Extract the main entities and provide a summary of the meeting invitation message.", + "Determine the emotional tone and summarize a product feedback message." + ] + }, + "tags": [ + "etl", + "message analysis", + "sentiment", + "entity recognition", + "text summarization", + "nlp", + "communication" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Hi team, the project deadline is moved up to next Friday. Please prioritize your tasks accordingly.\",\"language\":\"en\",\"includeEntities\":true,\"includeSentiment\":true,\"includeSummary\":true}", + "description": "Analyze an internal project update message for sentiment, entities, and summary." + }, + { + "inputJson": "{\"messageText\":\"Bonjour, je voulais juste vous informer que la réunion est reportée à demain.\",\"language\":\"fr\",\"includeEntities\":true,\"includeSentiment\":false,\"includeSummary\":true}", + "description": "Analyze a French meeting reschedule notification, with entity extraction and summary but no sentiment analysis." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "etl-processes.analyzeWord", + "description": "Accepts a single word string input and performs linguistic and statistical analyses including frequency determination in a provided corpus, part-of-speech tagging, and morphological breakdown. Outputs a structured report summarizing the word's usage data and linguistic properties.", + "category": "etl-processes", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word to analyze. Must be a single token without spaces.", + "required": true, + "defaultValue": "" + }, + { + "name": "corpusText", + "type": "string", + "description": "A large text corpus to analyze the word's frequency and context within. If omitted, default corpus statistics will be used.", + "required": false, + "defaultValue": "" + }, + { + "name": "performPosTagging", + "type": "boolean", + "description": "Whether to perform part-of-speech tagging on the word.", + "required": false, + "defaultValue": "true" + }, + { + "name": "performMorphologicalAnalysis", + "type": "boolean", + "description": "Whether to perform morphological analysis identifying root, prefixes, and suffixes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language of the word and corpus to guide linguistic analysis. Defaults to English.", + "required": false, + "defaultValue": "english" + } + ], + "returns": { + "type": "object", + "description": "An object containing frequency statistics, part-of-speech tags (if requested), morphological components (if requested), and example contexts of the word usage." + }, + "aiAgent": { + "useCase": "Use this tool when needing detailed linguistic and frequency analysis of a single word found in a text corpus, useful in text preprocessing, feature engineering for NLP, or linguistic research. It helps to understand the word's usage patterns, grammatical categories, and structure.", + "limitations": "This tool handles only one word at a time and relies on the quality and size of the provided corpus for frequency data. It does not disambiguate words with multiple meanings in context beyond basic part-of-speech tagging.", + "examples": [ + "Analyze the word 'run' to find its frequency and part-of-speech in a corpus of news articles.", + "Check the morphological components of the word 'unbelievable'.", + "Get usage examples of 'innovation' from a supplied tech blog text corpus." + ] + }, + "tags": [ + "etl", + "word analysis", + "linguistics", + "frequency", + "morphology", + "POS tagging", + "text processing" + ], + "examples": [ + { + "inputJson": "{\"word\":\"run\",\"corpusText\":\"Run run as fast as you can. The athlete will run in the marathon.\",\"performPosTagging\":true,\"performMorphologicalAnalysis\":true,\"language\":\"english\"}", + "description": "Analyze the word 'run' including its frequency, POS tags and morphology within a small English text corpus." + }, + { + "inputJson": "{\"word\":\"unbelievable\",\"performMorphologicalAnalysis\":true,\"language\":\"english\"}", + "description": "Perform morphological analysis of the word 'unbelievable' without corpus frequency analysis." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "data-validation.createFunction", + "description": "Creates a custom JavaScript validation function based on a user-defined schema. Accepts a JSON schema object defining field names, types, required flags, and constraints. Outputs a reusable function code string that validates input objects against the schema, returning detailed validation results.", + "category": "data-validation", + "parameters": [ + { + "name": "schema", + "type": "object", + "description": "JSON schema defining fields to validate, with types, required flags, and constraints like min/max length or regex patterns.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionName", + "type": "string", + "description": "Name for the generated validation function in the code output.", + "required": false, + "defaultValue": "validateData" + }, + { + "name": "returnDetailedErrors", + "type": "boolean", + "description": "Flag to include detailed error messages for each failed validation in the output function.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript function as a string under 'functionCode', which can be integrated to validate data according to the provided schema." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate code for validating data inputs against specific structural and content rules defined by schemas, enabling flexible and reusable validation logic integration.", + "limitations": "Cannot execute or test the generated function; it only produces code. Complex schema features like nested objects or conditional validations may not be fully supported.", + "examples": [ + "Generate a validation function for user profiles with required name and email fields.", + "Create a validator for product data with price as a positive number and optional description.", + "Build a function that checks input objects contain certain keys with specific string lengths." + ] + }, + "tags": [ + "data-validation", + "code-generation", + "function-creation", + "schema-validation", + "javascript" + ], + "examples": [ + { + "inputJson": "{\"schema\":{\"name\":{\"type\":\"string\",\"required\":true,\"minLength\":2},\"email\":{\"type\":\"string\",\"required\":true,\"pattern\":\"^\\\\S+@\\\\S+\\\\.\\\\S+$\"},\"age\":{\"type\":\"number\",\"min\":18}},\"functionName\":\"validateUser\",\"returnDetailedErrors\":true}", + "description": "Generate a JS validation function named 'validateUser' that validates user data with required name and valid email and an optional minimum age of 18." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "etl-processes.analyzeAccount", + "description": "This tool accepts raw or structured account data including transactions, balances, and metadata. It analyzes financial and operational aspects such as account activity patterns, anomaly detection, and performance metrics. The output is a detailed report summarizing key insights, trends, and potential risks associated with the account.", + "category": "etl-processes", + "parameters": [ + { + "name": "accountData", + "type": "object", + "description": "The account data to analyze, including transactions, balances, and relevant metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisPeriod", + "type": "string", + "description": "Time period for analysis in ISO 8601 duration or date range format (e.g., 'P30D' for 30 days or '2023-01-01/2023-03-31').", + "required": false, + "defaultValue": "P30D" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag indicating whether to perform anomaly detection on transaction patterns.", + "required": false, + "defaultValue": "true" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "Threshold value between 0 and 1 to flag high risk findings (higher means more sensitive).", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object detailing activity metrics, detected anomalies, risk assessments, and trends related to the supplied account data." + }, + "aiAgent": { + "useCase": "Use this tool when needing in-depth analysis of account data to extract meaningful business insights, detect unusual activity, assess financial health, or generate performance reports. It helps decision making by transforming raw account records into actionable intelligence.", + "limitations": "Cannot access external account data sources; requires data to be supplied in the input. Does not perform financial forecasting or predictive modeling beyond simple anomaly detection.", + "examples": [ + "Analyze account activity and risk in the last quarter", + "Detect anomalies in a given account's transaction history", + "Generate a performance summary report of an account over 30 days" + ] + }, + "tags": [ + "etl", + "analysis", + "account", + "finance", + "risk", + "anomaly-detection", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"accountData\":{\"transactions\":[{\"date\":\"2024-05-01\",\"amount\":250,\"type\":\"credit\"},{\"date\":\"2024-05-03\",\"amount\":-100,\"type\":\"debit\"}],\"balance\":1500,\"accountId\":\"ACC12345\"},\"analysisPeriod\":\"P60D\",\"detectAnomalies\":true,\"riskThreshold\":0.8,\"includeSummary\":true}", + "description": "Analyze a specific account's transactions and balances over the past 60 days, enabling anomaly detection with a risk sensitivity of 0.8, including a summary in the report." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "etl-processes.analyzeDataset", + "description": "Analyzes structured datasets by performing statistical summaries, data quality assessments, and pattern detection. Accepts input in CSV or JSON format and outputs a detailed report including descriptive statistics, missing value analysis, and identified correlations suitable for further ETL or reporting tasks.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Dataset content provided as a CSV string or JSON array string for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the inputData, either 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "detectCorrelations", + "type": "boolean", + "description": "Flag to enable detection of correlations between numeric features.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDistinctCategoricalValues", + "type": "number", + "description": "Maximum number of distinct values to treat a column as categorical for summary statistics (e.g., frequency counts).", + "required": false, + "defaultValue": "20" + }, + { + "name": "includeMissingValueStats", + "type": "boolean", + "description": "Whether to include analysis of missing values in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing dataset metadata including row and column counts, column-wise summaries (count, mean, median, std dev for numeric, distinct value counts for categorical), correlation matrix if requested, and a missing value report." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to quickly understand the basic statistical properties of tabular data, assess data quality, or detect initial patterns before further ETL or machine learning steps. It is useful in automated data pipelines for generating profiling reports or validating dataset integrity.", + "limitations": "Cannot perform advanced predictive modeling or detailed data transformations; limited to descriptive statistics and simple correlation detection. Assumes input data fits in memory and is reasonably clean CSV or JSON format.", + "examples": [ + "Analyze this CSV dataset for summary statistics and missing data patterns.", + "Given a JSON array dataset, detect correlations between numeric fields and summarize categorical columns.", + "Provide a data quality and basic statistical profile of this user-uploaded CSV file." + ] + }, + "tags": [ + "etl", + "analysis", + "data profiling", + "dataset", + "statistics", + "quality assessment", + "correlation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"age,height,weight\\n25,175,70\\n30,180,80\\n22,165,60\\n,170,65\",\"inputFormat\":\"csv\",\"detectCorrelations\":true,\"includeMissingValueStats\":true}", + "description": "CSV with numeric data including one missing age value. Requests correlation detection and missing value stats." + }, + { + "inputJson": "{\"inputData\":\"[{\\\"category\\\":\\\"A\\\", \\\"value\\\":10}, {\\\"category\\\":\\\"B\\\", \\\"value\\\":15}, {\\\"category\\\":\\\"A\\\", \\\"value\\\":7}]\",\"inputFormat\":\"json\",\"detectCorrelations\":false,\"includeMissingValueStats\":false}", + "description": "JSON dataset with categorical and numeric features; correlation detection disabled; missing value stats disabled." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "etl-processes.analyzeJSON", + "description": "Accepts a JSON string or object as input and performs comprehensive analysis including schema inference, key statistics, data types, missing value counts, and simple data distributions for numeric and categorical fields. Outputs a structured report summarizing the JSON data's content and quality.", + "category": "etl-processes", + "parameters": [ + { + "name": "jsonData", + "type": "object", + "description": "The JSON data to analyze either as a parsed object or JSON string which will be parsed internally", + "required": true, + "defaultValue": "" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth to analyze nested structures within the JSON data to avoid excessive recursion", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSampleValues", + "type": "boolean", + "description": "Whether to include sample values for each key field in the analysis report", + "required": false, + "defaultValue": "true" + }, + { + "name": "numericHistogramBins", + "type": "number", + "description": "Number of bins to use for generating histograms of numeric fields", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report object that includes key presence summary, inferred data types, counts of missing or null values, statistics (like min, max, mean for numeric fields), frequency distributions for categorical fields, and optionally sample data values." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to understand the structure and quality of incoming JSON data for ETL pipelines, validation, or reporting. It helps reveal data completeness, schema complexity, and basic statistics without manual schema definitions.", + "limitations": "The tool does not perform deep semantic analysis or validate data correctness against external schemas; it focuses on structural and statistical summarization only.", + "examples": [ + "Analyze JSON to extract the schema and key statistics before loading into a database.", + "Get a summary of missing values and data types to decide how to transform JSON input data.", + "Generate a report highlighting distribution and common values in a JSON dataset for data quality assessment." + ] + }, + "tags": [ + "etl", + "json", + "analysis", + "data-quality", + "schema-inference", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":{\"users\":[{\"id\":1,\"name\":\"Alice\",\"age\":30},{\"id\":2,\"name\":\"Bob\",\"age\":null},{\"id\":3,\"name\":\"Charlie\",\"age\":25}]},\"maxDepth\":3,\"includeSampleValues\":true}", + "description": "Analyze an array of user objects with numeric and null age values to infer schema and missing data." + }, + { + "inputJson": "{\"jsonData\":{\"metrics\":{\"cpu\":75.5,\"memory\":64.2,\"disk\":null}},\"numericHistogramBins\":5}", + "description": "Analyze a simple JSON object containing system metrics to produce basic statistics and highlight null values." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "etl-processes.downloadFile", + "description": "Downloads a file from a specified URL or cloud storage location. Accepts the file source (URL or cloud path), optional authentication details, and saves the file to a target local or network directory. Returns metadata including file path, size, and download status.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL or cloud storage path of the file to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local or network path where the downloaded file will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "If true, overwrites the file at destination if it exists; otherwise, skips download.", + "required": false, + "defaultValue": "false" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers as key-value pairs for authentication or other purposes.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before aborting.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing result details: success status, saved file path, file size in bytes, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when your workflow requires extracting files from external URLs or cloud storages to a local or network environment for data processing or archiving. Ideal for ingesting datasets, configuration files, or any binary data as a first step in ETL pipelines.", + "limitations": "Cannot validate file content integrity beyond HTTP status. Does not support resumable downloads or partial file downloads. Does not automatically uncompress archives.", + "examples": [ + "Download a CSV dataset from a public URL to local temp folder.", + "Download a JSON config file from a private API requiring headers.", + "Fetch a data archive from cloud storage saving to network share, overwriting existing file." + ] + }, + "tags": [ + "download", + "file", + "etl", + "network", + "cloud", + "http", + "ingest" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/data/sample.csv\",\"destinationPath\":\"/tmp/sample.csv\",\"overwrite\":true}", + "description": "Download a sample CSV file from a public URL to local /tmp directory, overwriting existing file." + }, + { + "inputJson": "{\"sourceUrl\":\"https://api.example.com/config/settings.json\",\"destinationPath\":\"/configs/settings.json\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"overwrite\":false}", + "description": "Download a JSON configuration file with authentication headers, saving without overwriting existing file." + }, + { + "inputJson": "{\"sourceUrl\":\"s3://bucket/data/archive.zip\",\"destinationPath\":\"/data/archive.zip\",\"overwrite\":true}", + "description": "Download a ZIP archive from an S3 bucket path to local data directory, allowing overwrite." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "etl-processes.downloadCode", + "description": "Downloads source code files or entire repositories from specified version control or code hosting platforms such as GitHub or GitLab. Accepts repository URL, branch or tag, file paths, and authentication tokens, performs fetching, and outputs code files as zip archives or directory structures ready for ETL processing or integration.", + "category": "etl-processes", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the repository to download the code from, e.g., a GitHub or GitLab repository URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchOrTag", + "type": "string", + "description": "The specific branch or tag name to download from. If not specified, defaults to the repository default branch.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePaths", + "type": "array", + "description": "Optional list of file or directory paths within the repository to download. If empty or omitted, the entire repository content is downloaded.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the downloaded code output: 'zip' for compressed archive or 'folder' for extracted directory structure.", + "required": false, + "defaultValue": "zip" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional personal access token or authentication credential required to access private repositories or increase API limits.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the location or content of the downloaded code, including file path if saved locally or encoded archive data if returned as string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to fetch specific source code or repos for ETL pipelines, code analysis, transformation, or integration tasks. Typical scenarios include programmatically obtaining stable source code snapshots to process or analyze contents from public or authenticated repositories.", + "limitations": "Cannot modify or commit code to repositories; supports read-only downloads. Limited to repository platforms with supported public APIs (e.g., GitHub, GitLab). Download size may be limited by API or system constraints.", + "examples": [ + "Download the main branch of a public GitHub repo as a zip archive.", + "Download only the 'src/' directory from a private repository using an authentication token.", + "Fetch a specific tag release as an extracted folder for further ETL processing." + ] + }, + "tags": [ + "download", + "code", + "repository", + "etl", + "source-code", + "fetch", + "github", + "gitlab" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/tensorflow/tensorflow\",\"branchOrTag\":\"master\",\"filePaths\":[],\"outputFormat\":\"zip\",\"authenticationToken\":\"\"}", + "description": "Download the entire TensorFlow repository from the master branch as a zip archive." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/example/private-repo\",\"branchOrTag\":\"v1.0.0\",\"filePaths\":[\"src/\"],\"outputFormat\":\"folder\",\"authenticationToken\":\"glpat-xxxxxxxxxxxxxxxx\"}", + "description": "Download only the 'src/' directory from a private GitLab repository at a specific tag, extracted as a folder, using a personal access token." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "etl-processes.uploadCode", + "description": "Uploads source code files to a designated ETL processing pipeline repository, performing optional validation and metadata tagging. Accepts code content or file paths, validates language syntax if specified, and returns upload status and file references for integration with ETL workflows.", + "category": "etl-processes", + "parameters": [ + { + "name": "codeFiles", + "type": "array", + "description": "An array of code file objects or strings where each includes filename and content to upload to the ETL pipeline repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the code files for optional syntax validation and proper tagging (e.g., 'python', 'sql', 'java').", + "required": false, + "defaultValue": "" + }, + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the target ETL repository or storage location to upload the code files.", + "required": true, + "defaultValue": "" + }, + { + "name": "branch", + "type": "string", + "description": "Branch name to which the code should be uploaded, defaults to 'main' if not specified.", + "required": false, + "defaultValue": "main" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Optional commit message describing the code upload action for version tracking.", + "required": false, + "defaultValue": "Code upload via ETL tool" + }, + { + "name": "validateSyntax", + "type": "boolean", + "description": "Flag indicating whether to perform language syntax validation on the code files before uploading.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadataTags", + "type": "object", + "description": "Optional key-value pairs providing metadata tags to associate with uploaded code files for indexing and retrieval.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object reporting the upload results including success status, details per file, and any validation errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload source code scripts or modules as part of ETL workflows to centralized version-controlled repositories or code storage related to data pipelines. It supports automated validation and tagging to ensure code quality and discoverability within ETL processes.", + "limitations": "This tool does not execute or transform the uploaded code; it only uploads and optionally validates syntax. It requires access credentials and network connectivity to the repository, which should be handled externally.", + "examples": [ + "Upload Python ETL scripts to the main repository branch with commit message and metadata tags.", + "Upload SQL query files to a staging repository branch with syntax validation enabled.", + "Upload multiple language code files without syntax validation but specifying metadata for team ownership." + ] + }, + "tags": [ + "etl", + "upload", + "code", + "source-code", + "validation", + "repository", + "pipeline" + ], + "examples": [ + { + "inputJson": "{\"codeFiles\":[{\"filename\":\"extract.py\",\"content\":\"def extract(): pass\"}],\"language\":\"python\",\"repositoryUrl\":\"https://git.example.com/etl-repo.git\",\"branch\":\"develop\",\"commitMessage\":\"Add extract function\",\"validateSyntax\":true,\"metadataTags\":{\"component\":\"extractor\",\"owner\":\"data-team\"}}", + "description": "Uploading a Python extraction script with validation to the 'develop' branch including metadata tags." + }, + { + "inputJson": "{\"codeFiles\":[{\"filename\":\"load.sql\",\"content\":\"SELECT * FROM sales\"},{\"filename\":\"transform.sql\",\"content\":\"UPDATE sales SET amount = amount * 1.1\"}],\"language\":\"sql\",\"repositoryUrl\":\"https://git.example.com/sql-scripts.git\",\"branch\":\"main\",\"commitMessage\":\"Initial SQL scripts upload\",\"validateSyntax\":false}", + "description": "Uploading multiple SQL scripts without syntax validation to the main branch." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "etl-processes.formatEmail", + "description": "Formats raw email data into a standardized, structured email format suitable for ETL workflows. Accepts inputs such as raw email text or JSON objects containing email fields, transforms and sanitizes headers, body content, and attachments info, and outputs a clean, consistently formatted email JSON object.", + "category": "etl-processes", + "parameters": [ + { + "name": "rawEmailContent", + "type": "string", + "description": "Raw email content as plain text or raw MIME message to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input email: 'plainText', 'MIME', or 'json'. Determines parsing approach.", + "required": true, + "defaultValue": "plainText" + }, + { + "name": "sanitizeHtml", + "type": "boolean", + "description": "Whether to sanitize HTML content in the email body to remove unsafe tags and attributes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractAttachments", + "type": "boolean", + "description": "Flag to extract and list attachments metadata separately in output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Output format for date/time fields, e.g. 'ISO8601', 'RFC2822'.", + "required": false, + "defaultValue": "ISO8601" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the formatted email, including fields like from, to, cc, bcc, subject, body (plain and/or HTML), attachments metadata, and standardized date fields." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert various raw email inputs into a clean, normalized JSON format for downstream processing in ETL pipelines, such as for email analytics, storage, or integration. It standardizes headers, parses bodies safely, and optionally extracts attachments info, enabling consistent email data workflows.", + "limitations": "Does not perform advanced content analysis, spam detection, or extensive MIME decoding beyond basic formatting. Not intended for full email client rendering or sending emails.", + "examples": [ + "Format a raw MIME email string into structured JSON.", + "Convert plain text email content to a consistent JSON format with sanitized HTML body.", + "Extract and format attachments metadata from raw email input." + ] + }, + "tags": [ + "extract", + "transform", + "email", + "formatting", + "ETL", + "communication", + "data-cleaning" + ], + "examples": [ + { + "inputJson": "{\"rawEmailContent\": \"From: user@example.com\\r\\nTo: recipient@example.com\\r\\nSubject: Test Email\\r\\nDate: Tue, 15 Jun 2021 12:34:56 +0000\\r\\n\\r\\nThis is the plain text body.\", \"inputFormat\": \"plainText\"}", + "description": "Formats a simple plain text email string into structured JSON with standardized fields." + }, + { + "inputJson": "{\"rawEmailContent\": \"\", \"inputFormat\": \"MIME\", \"sanitizeHtml\": true, \"extractAttachments\": true}", + "description": "Processes a MIME formatted raw email with HTML body and attachments, producing sanitized output and attachment metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "etl-processes.downloadDocument", + "description": "Downloads documents from specified URLs or document repositories. Accepts a URL or repository details, optionally with authentication info, and retrieves the document content in the specified format. Outputs the document data encoded as base64 and metadata about the download.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The direct URL of the document to download. Required if repository info is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "repositoryType", + "type": "string", + "description": "Type of document repository (e.g., 'SharePoint', 'GoogleDrive') if downloading from a repository rather than direct URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "repositoryPath", + "type": "string", + "description": "Path or identifier for the document in the repository, used with repositoryType.", + "required": false, + "defaultValue": "" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Access token or credentials needed for authentication with repositories or secured URLs.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "Expected format/type of the document (e.g., 'pdf', 'docx', 'txt'). Used to validate or convert if necessary.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum number of seconds to wait for the download before timing out.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64-encoded document content, mime type, document size in bytes, and any error messages if the download failed." + }, + "aiAgent": { + "useCase": "Use when you need to programmatically download documents from either direct URLs or known repositories for further processing, such as data extraction, indexing, or archiving. This tool handles authentication and format specification to ensure successful retrieval of files.", + "limitations": "Cannot process documents behind complex CAPTCHA or multi-factor authentication; does not interpret or parse document content, only downloads raw files.", + "examples": [ + "Download a PDF from a public URL for indexing.", + "Fetch a Word document from a SharePoint repository using OAuth token.", + "Retrieve a text file from Google Drive given the file ID and access token." + ] + }, + "tags": [ + "etl", + "download", + "document", + "file-retrieval", + "repository", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/files/report.pdf\",\"documentFormat\":\"pdf\"}", + "description": "Download a PDF report from a public URL." + }, + { + "inputJson": "{\"repositoryType\":\"SharePoint\",\"repositoryPath\":\"/docs/finance/summary.docx\",\"authenticationToken\":\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\"}", + "description": "Download a Word document from a SharePoint site using an access token." + }, + { + "inputJson": "{\"repositoryType\":\"GoogleDrive\",\"repositoryPath\":\"1a2b3c4d5e6f7g8h9i\",\"authenticationToken\":\"ya29.a0AfH6SM...\",\"documentFormat\":\"txt\"}", + "description": "Download a text file from Google Drive by file ID with a valid OAuth token." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "etl-processes.generateWord", + "description": "Generates a synthetic word based on specified phonetic patterns, length, and language style. Accepts parameters defining word length, optional phoneme sets or syllable structures, and an optional language model style to produce pronounceable, realistic words for data generation or linguistic tasks.", + "category": "etl-processes", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "The desired length of the generated word in characters.", + "required": true, + "defaultValue": "" + }, + { + "name": "phonemeSet", + "type": "string", + "description": "Optional specification of phoneme set or alphabet to use for generating the word (e.g., 'english', 'spanish', or custom phoneme characters).", + "required": false, + "defaultValue": "english" + }, + { + "name": "languageStyle", + "type": "string", + "description": "Optional language style or origin to mimic (e.g., 'latin', 'germanic', 'slavic') to influence word formation patterns.", + "required": false, + "defaultValue": "" + }, + { + "name": "allowNonPronounceable", + "type": "boolean", + "description": "If true, generated word can include letter combinations that may not be easily pronounceable; default is false to favor pronounceable words.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word as a string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate synthetic words for testing, data augmentation, or linguistic experiments, where control over word length and phonetic characteristics is beneficial. It helps create realistic or language-inspired words suitable for filling datasets or generating placeholder content.", + "limitations": "This tool cannot guarantee semantic meaning or valid dictionary words. It does not produce multiword phrases or definitions. Generated words might sometimes be uncommon or obscure despite phonetic rules.", + "examples": [ + "Generate a 6-letter pronounceable English word.", + "Create a synthetic word of length 8 with a Latin-style phoneme pattern.", + "Produce a 5-letter non-pronounceable word combining arbitrary characters." + ] + }, + "tags": [ + "etl", + "generate", + "word", + "synthetic", + "phonetics", + "data-generation" + ], + "examples": [ + { + "inputJson": "{\"length\":6}", + "description": "Generate a default 6-letter English word." + }, + { + "inputJson": "{\"length\":8,\"languageStyle\":\"latin\"}", + "description": "Generate an 8-letter word inspired by Latin phonetic patterns." + }, + { + "inputJson": "{\"length\":5,\"allowNonPronounceable\":true}", + "description": "Generate a 5-letter word allowing non-pronounceable letter sequences." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "etl-processes.generateText", + "description": "Generates transformed or synthesized text content based on provided source data and transformation rules. Accepts input text or JSON objects, applies specified extraction, transformation templates or logic, and produces structured or unstructured text output suitable for further ETL pipelines or documentation.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw text or serialized JSON string to extract and transform during the ETL process.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationRules", + "type": "object", + "description": "An object defining extraction and transformation instructions, such as regex patterns, template strings, or mapping functions.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated text output, e.g., 'plain', 'markdown', or 'html'.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "maxOutputLength", + "type": "number", + "description": "Maximum length of the generated text output in characters. Limits the size for downstream processes.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "If true, the output text will include metadata details such as timestamps or source info.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the transformed text output and optional metadata including processing details and success status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw or semi-structured data into readable or formatted text content within an ETL workflow, such as generating summaries, reports, or content extracts for analytics or documentation. It is useful for agents tasked with converting data into human-friendly textual formats.", + "limitations": "Cannot perform complex natural language generation beyond template-based transformations. Does not analyze semantic context deeply or generate creative content. Requires well-defined transformation rules.", + "examples": [ + "Generate a summary text extracting key info from JSON input data.", + "Transform log entries into markdown formatted documentation.", + "Produce plain text report from structured event data with metadata included." + ] + }, + "tags": [ + "etl", + "text-generation", + "transformation", + "data-processing", + "reporting", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"{\\\"user\\\":\\\"alice\\\", \\\"actions\\\":[\\\"login\\\", \\\"upload\\\"]}\",\"transformationRules\":{\"template\":\"User {{user}} performed actions: {{actions.join(', ')}}.\"},\"outputFormat\":\"plain\",\"maxOutputLength\":200,\"includeMetadata\":true}", + "description": "Generate a plain text summary from JSON input describing user actions, including metadata." + }, + { + "inputJson": "{\"inputData\":\"Error at line 32: null pointer exception\",\"transformationRules\":{\"regexExtract\":\"Error at line (\\\\d+): (.+)\"},\"outputFormat\":\"markdown\",\"maxOutputLength\":300,\"includeMetadata\":false}", + "description": "Extract error details from a log string and generate markdown formatted text without metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "etl-processes.createServer", + "description": "Creates and configures a new server environment for ETL processes. Accepts parameters such as server type, operating system, CPU cores, memory size, and storage. Provisions the server with specified resources and networking setup. Returns server connection details and configuration summary.", + "category": "etl-processes", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server environment to create, e.g., 'virtual', 'bare-metal', or 'container'.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server, e.g., 'Ubuntu 22.04', 'CentOS 8', or 'Windows Server 2019'.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate to the server for processing power.", + "required": true, + "defaultValue": "2" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes for the server.", + "required": true, + "defaultValue": "4" + }, + { + "name": "storageGB", + "type": "number", + "description": "Disk storage size in gigabytes to provide for the server.", + "required": true, + "defaultValue": "50" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration details, including options for IP addressing and firewall rules.", + "required": false, + "defaultValue": "" + }, + { + "name": "sshKey", + "type": "string", + "description": "Public SSH key for secure remote access to the server.", + "required": false, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Data center region or availability zone where to deploy the server.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server's connection info such as IP address, hostname, status, and a summary of allocated resources." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a dedicated server environment to run ETL workflows, ensuring the required compute, memory, storage, and network settings are applied as specified. Ideal for automating infrastructure setup before deploying ETL pipelines or data processing jobs.", + "limitations": "This tool cannot perform actual ETL data movement or transformation; it only provisions the server infrastructure. It also does not manage ongoing server maintenance or scaling after creation.", + "examples": [ + "Create a virtual server with Ubuntu 22.04, 4 CPUs, 16GB RAM, and 100GB storage for ETL tasks.", + "Provision a container server in region us-west-2 with Windows Server 2019 for hosting ETL workers.", + "Set up a bare-metal server with CentOS 8 and custom network firewall rules for secure ETL operations." + ] + }, + "tags": [ + "infrastructure", + "server-provisioning", + "etl", + "automation", + "cloud", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"virtual\",\"operatingSystem\":\"Ubuntu 22.04\",\"cpuCores\":4,\"memoryGB\":16,\"storageGB\":100,\"region\":\"us-west-1\"}", + "description": "Create a virtual Ubuntu server with moderate resources in the us-west-1 region." + }, + { + "inputJson": "{\"serverType\":\"container\",\"operatingSystem\":\"Windows Server 2019\",\"cpuCores\":2,\"memoryGB\":8,\"storageGB\":50,\"sshKey\":\"ssh-rsa AAAAB3...\"}", + "description": "Provision a container-based Windows Server with basic specs and enable SSH access." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "etl-processes.createDatabase", + "description": "Creates a new database instance on a specified DBMS platform using provided configuration parameters. Accepts input such as database name, type (e.g., MySQL, PostgreSQL), connection settings, and optional initial schema definitions. Processes configuration and provisioning steps, returning status and connection details of the created database.", + "category": "etl-processes", + "parameters": [ + { + "name": "dbmsType", + "type": "string", + "description": "The type of database management system to create (e.g., mysql, postgresql, mongodb).", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseName", + "type": "string", + "description": "The name of the new database instance to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "host", + "type": "string", + "description": "The hostname or IP address of the database server where the database will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "port", + "type": "number", + "description": "The port on which the database server is listening.", + "required": false, + "defaultValue": "3306" + }, + { + "name": "username", + "type": "string", + "description": "Username for authentication to the database server with sufficient privileges to create a database.", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Password for authenticating the username provided.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialSchema", + "type": "string", + "description": "Optional initial schema or SQL script to run immediately after database creation to initialize tables or structures.", + "required": false, + "defaultValue": "" + }, + { + "name": "charset", + "type": "string", + "description": "Optional character set encoding for the new database (e.g., utf8mb4).", + "required": false, + "defaultValue": "utf8mb4" + } + ], + "returns": { + "type": "object", + "description": "An object containing the result of the database creation attempt, including success status, error messages if any, and connection details for the database." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically provision a new database instance within a specific DBMS environment as part of an ETL pipeline setup or data infrastructure automation. Ideal for initializing data storage before loading or transforming operations.", + "limitations": "Cannot perform complex database configuration beyond basic provisioning and initial schema setup. Does not manage database server installation or network provisioning steps. Assumes database server is reachable and credentials have sufficient permissions.", + "examples": [ + "Create a MySQL database named 'analytics_db' on host 'db.example.com' with default port and utf8mb4 charset.", + "Initialize a PostgreSQL database 'sales_data' including a startup schema script for tables and indexes.", + "Create a MongoDB database instance with specified connection credentials without initial schema." + ] + }, + "tags": [ + "database", + "creation", + "provisioning", + "etl", + "automation", + "sql", + "nosql" + ], + "examples": [ + { + "inputJson": "{\"dbmsType\":\"mysql\",\"databaseName\":\"analytics_db\",\"host\":\"db.example.com\",\"port\":3306,\"username\":\"admin\",\"password\":\"strongpass123\",\"charset\":\"utf8mb4\"}", + "description": "Create a MySQL database named 'analytics_db' on db.example.com using default port and utf8mb4 character set." + }, + { + "inputJson": "{\"dbmsType\":\"postgresql\",\"databaseName\":\"sales_data\",\"host\":\"postgres.company.net\",\"username\":\"dbadmin\",\"password\":\"securepwd\",\"initialSchema\":\"CREATE TABLE customers(id SERIAL PRIMARY KEY, name VARCHAR(255));\"}", + "description": "Create a PostgreSQL database 'sales_data' on postgres.company.net and initialize with a customers table." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "etl-processes.createWord", + "description": "This tool generates a single word based on specified criteria, such as desired length, language, and word type (e.g., noun, verb, adjective). It accepts parameters describing these criteria and produces an appropriate word that fits the filters provided. It's useful for content generation and linguistic data ETL processes.", + "category": "etl-processes", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) for generating the word.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "wordType", + "type": "string", + "description": "The type of word to generate, such as 'noun', 'verb', 'adjective', or 'any'.", + "required": false, + "defaultValue": "\"any\"" + }, + { + "name": "minLength", + "type": "number", + "description": "Minimum length of the generated word in characters.", + "required": false, + "defaultValue": "1" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word in characters.", + "required": false, + "defaultValue": "15" + }, + { + "name": "startsWith", + "type": "string", + "description": "Optional starting substring the word should begin with.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "endsWith", + "type": "string", + "description": "Optional ending substring the word should end with.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word and its metadata such as language and word type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a single, filtered word for ETL processes involving linguistic data, content tagging, names creation, or any scenario requiring controlled word generation that fits transformation criteria.", + "limitations": "This tool cannot generate phrases or sentences, nor can it guarantee the semantic relevance beyond word type and structural filters. It may have limited vocabulary for some languages or very specific constraints.", + "examples": [ + "Generate a noun in English between 4 and 8 letters.", + "Create any type of word starting with 'trans' and ending with 'ed'.", + "Produce an adjective up to 6 characters long in English." + ] + }, + "tags": [ + "etl", + "word-generation", + "content-creation", + "linguistics", + "filtering" + ], + "examples": [ + { + "inputJson": "{\"language\":\"en\",\"wordType\":\"noun\",\"minLength\":5,\"maxLength\":8}", + "description": "Generate an English noun between 5 and 8 characters long." + }, + { + "inputJson": "{\"wordType\":\"any\",\"startsWith\":\"trans\",\"endsWith\":\"ed\"}", + "description": "Generate any word starting with 'trans' and ending with 'ed'." + }, + { + "inputJson": "{\"language\":\"en\",\"wordType\":\"adjective\",\"maxLength\":6}", + "description": "Generate an English adjective up to 6 characters long." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "etl-processes.createJSON", + "description": "Creates a JSON formatted string from given input data records. Accepts input as an array of objects or key-value pairs, applies optional transformations like filtering or field selection, and outputs a JSON string suitable for data interchange or storage.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "Array of objects representing records or key-value pairs to be converted into JSON format.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeFields", + "type": "array", + "description": "List of fields to include in the output JSON; if empty, all fields are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludeFields", + "type": "array", + "description": "List of fields to exclude from the output JSON; applied after includeFields filter.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "If true, output JSON will be formatted with indentation for readability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "filterFunction", + "type": "string", + "description": "Optional stringified JavaScript function to filter input records; should return true to include the record.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a JSON string representation of the processed data under the key 'jsonString'." + }, + "aiAgent": { + "useCase": "Use this tool to convert structured data arrays or objects into JSON format for storage, transmission, or interoperability with APIs. Useful when data needs to be filtered, fields selected/excluded, or formatted for readability. Ideal for preparing data extracts or data transformation output.", + "limitations": "Cannot process non-array input or complex nested data transformations beyond simple filtering and field selection. Does not support binary or specialized data formats.", + "examples": [ + "Create JSON from an array of user records including only name and email fields, pretty printed.", + "Filter order records to include only those with status 'completed' and exclude sensitive fields before JSON creation.", + "Convert key-value data into a JSON string without any filtering or formatting." + ] + }, + "tags": [ + "etl", + "json", + "data transformation", + "filtering", + "data export" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"id\":1,\"name\":\"Alice\",\"email\":\"alice@example.com\"},{\"id\":2,\"name\":\"Bob\",\"email\":\"bob@example.com\"}],\"includeFields\":[\"name\",\"email\"],\"prettyPrint\":true}", + "description": "Create pretty-printed JSON of user records including only name and email." + }, + { + "inputJson": "{\"inputData\":[{\"orderId\":101,\"status\":\"completed\",\"amount\":150},{\"orderId\":102,\"status\":\"pending\",\"amount\":200}],\"filterFunction\":\"record => record.status === 'completed'\",\"excludeFields\":[\"amount\"]}", + "description": "Filter completed orders and exclude the amount field before JSON creation." + }, + { + "inputJson": "{\"inputData\":[{\"key\":\"color\",\"value\":\"blue\"},{\"key\":\"size\",\"value\":\"M\"}]}", + "description": "Convert simple key-value pairs into JSON string with default options." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "etl-processes.createAPI", + "description": "Creates a RESTful API endpoint that exposes an ETL process based on the provided extraction, transformation, and loading configuration. Accepts ETL configuration as input, generates server-side API code that runs the ETL steps on request, and outputs an API specification and code snippet ready for deployment.", + "category": "etl-processes", + "parameters": [ + { + "name": "etlConfig", + "type": "object", + "description": "An object detailing the ETL process steps including data sources, transformation logic, and loading targets.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiName", + "type": "string", + "description": "The desired name for the generated API service or endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to use for the API endpoint (e.g., GET, POST).", + "required": false, + "defaultValue": "POST" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Specifies if the API requires authentication to access.", + "required": false, + "defaultValue": "true" + }, + { + "name": "responseFormat", + "type": "string", + "description": "The format (e.g., JSON, XML) in which the API should return data.", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "errorHandlingStrategy", + "type": "string", + "description": "Strategy for handling errors in the API (e.g., detailed, generic).", + "required": false, + "defaultValue": "generic" + } + ], + "returns": { + "type": "object", + "description": "An object containing the API specification details and generated source code snippet for the ETL API." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate a custom API to run an ETL process upon request, abstracting the ETL logic behind a web service interface. Ideal for rapid deployment and integration of ETL operations in software systems.", + "limitations": "This tool does not deploy the API code or manage runtime environments. It cannot fully validate ETL configurations nor guarantee optimal performance and security beyond the generated code template.", + "examples": [ + "Create an API named 'UserDataImport' that extracts user data from a CSV, transforms it by normalizing fields, and loads it into a database. Use POST method with authentication and JSON response.", + "Generate a lightweight GET API called 'SalesSummary' that runs an ETL to aggregate daily sales from multiple sources and returns XML format, without authentication.", + "Make an ETL API 'InventoryUpdate' that listens to JSON payloads to update stock levels, requires authentication, and uses detailed error handling." + ] + }, + "tags": [ + "etl", + "api", + "rest", + "automation", + "data-integration", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"etlConfig\":{\"extract\":{\"type\":\"csv\",\"source\":\"/data/users.csv\"},\"transform\":{\"steps\":[{\"type\":\"normalize\",\"fields\":[\"name\",\"email\"]}]},\"load\":{\"type\":\"database\",\"target\":\"user_db\"}},\"apiName\":\"UserDataImport\",\"httpMethod\":\"POST\",\"authenticationRequired\":true,\"responseFormat\":\"JSON\",\"errorHandlingStrategy\":\"generic\"}", + "description": "Generate a POST API named 'UserDataImport' to perform a CSV-to-database ETL with authentication and JSON output." + }, + { + "inputJson": "{\"etlConfig\":{\"extract\":{\"type\":\"database\",\"source\":\"sales_db\"},\"transform\":{\"steps\":[{\"type\":\"aggregate\",\"field\":\"total_sales\",\"operation\":\"sum\"}]},\"load\":{\"type\":\"none\"}},\"apiName\":\"SalesSummary\",\"httpMethod\":\"GET\",\"authenticationRequired\":false,\"responseFormat\":\"XML\",\"errorHandlingStrategy\":\"generic\"}", + "description": "Create a GET API 'SalesSummary' that aggregates sales data and returns XML without authentication." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "etl-processes.createContract", + "description": "This tool generates a structured contract document by extracting relevant clauses and terms from provided input data or templates. It accepts raw contract clauses, party details, and optional template selections, then assembles them into a formatted contract JSON object suitable for downstream processing or storage.", + "category": "etl-processes", + "parameters": [ + { + "name": "partyAName", + "type": "string", + "description": "Name of the first party in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "partyBName", + "type": "string", + "description": "Name of the second party in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractClauses", + "type": "array", + "description": "An array of clause objects or strings representing individual contract clauses to include.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Contract effective date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "expirationDate", + "type": "string", + "description": "Contract expiration date in ISO 8601 format (YYYY-MM-DD), if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Identifier for a specific contract template to use for structure and formatting, if any.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the complete assembled contract document including parties, clauses, dates, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a complete contract from components such as party details, clauses, and optionally a template. It's ideal for automating contract document generation in ETL pipelines, legal tech apps, or data processing workflows where contract data is synthesized from raw inputs.", + "limitations": "This tool does not perform legal validation or negotiation of contract terms. It does not generate legal text clauses autonomously but requires clause inputs. It produces structured contract data but not finalized PDF or word documents.", + "examples": [ + "Create a contract between two companies using provided standard clauses and effective dates.", + "Generate a contract JSON output from supplied party names and clause arrays for downstream storage.", + "Use a predefined template to create a contract structure with given party and clause data." + ] + }, + "tags": [ + "etl", + "contracts", + "document-generation", + "legal", + "automation", + "data-processing" + ], + "examples": [ + { + "inputJson": "{\"partyAName\":\"Alpha Corp\",\"partyBName\":\"Beta LLC\",\"contractClauses\":[{\"title\":\"Confidentiality\",\"text\":\"Both parties shall keep confidential all exchanged information.\"},{\"title\":\"Term\",\"text\":\"The contract term shall be 12 months from the effective date.\"}],\"effectiveDate\":\"2024-07-01\"}", + "description": "Create a standard contract JSON with two parties, confidentiality and term clauses, and an effective date." + }, + { + "inputJson": "{\"partyAName\":\"Tech Innovations Ltd.\",\"partyBName\":\"Global Partners Inc.\",\"contractClauses\":[\"Payment terms: Net 30 days after invoice receipt.\",\"Termination clause: Either party may terminate with 30 days notice.\"],\"templateId\":\"standard-service-agreement-v1\"}", + "description": "Build a contract JSON using a predefined template and simple clause strings." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "database-management.analyzeSentence", + "description": "Analyzes a given sentence string within the context of database management or querying. Accepts a sentence as input, performs linguistic and semantic analysis to identify database-related intents, keywords, or commands, and outputs a structured summary highlighting detected entities, intents, and confidence scores for potential database querying or management actions.", + "category": "database-management", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The sentence to analyze for database-related content and intent.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the sentence for accurate linguistic analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to extract and include database-related entities such as table names, fields, or commands.", + "required": false, + "defaultValue": "true" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) for detected intents/entities to be included in the output.", + "required": false, + "defaultValue": "0.5" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected intents, entities, and confidence scores extracted from the analyzed sentence relevant to database management." + }, + "aiAgent": { + "useCase": "This tool should be used when the AI agent needs to understand user sentences or commands related to database operations, such as querying, updating, or managing databases, in natural language form. It helps to parse and convert user intents into actionable database commands or insights.", + "limitations": "The tool does not execute or validate database commands, nor does it interpret non-database-related sentences accurately. It focuses on analysis without modifying any database state.", + "examples": [ + "Analyze a user query asking to fetch customer data from a database.", + "Interpret a management command expressed as a sentence related to database schema changes.", + "Extract intents and key entities from a natural language database query request." + ] + }, + "tags": [ + "database", + "analysis", + "nlp", + "sentence", + "intent", + "entity extraction", + "query understanding" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"Show me all customers who bought products in the last month\",\"language\":\"en\",\"includeEntities\":true}", + "description": "Analyzing a natural language database query to identify intent and extract relevant entities such as 'customers' and timeframe 'last month'." + }, + { + "inputJson": "{\"sentence\":\"Add a new column 'email' to the users table\",\"language\":\"en\",\"includeEntities\":true}", + "description": "Parsing a sentence describing a database schema modification command to identify the action (add column) and target (users table)." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "database-management.analyzeNotification", + "description": "Analyzes notification records stored in a database to provide insights on delivery status, response times, failure reasons, and user engagement metrics. Accepts filters such as time range, notification type, and status to generate a summary report including statistics and trends.", + "category": "database-management", + "parameters": [ + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start timestamp to filter notifications from this time onward.", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end timestamp to filter notifications up to this time.", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Filter notifications by type, e.g., 'email', 'sms', 'push'.", + "required": false, + "defaultValue": "" + }, + { + "name": "statusFilter", + "type": "array", + "description": "Array of statuses to filter notifications, e.g., ['delivered','failed','pending'].", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Field to aggregate results by, such as 'status', 'type', or 'recipient'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to include trend analysis over time in the report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Summary report object including counts, percentages, common failure reasons, average response time, and optional time-series trends grouped as specified." + }, + "aiAgent": { + "useCase": "Use this tool when needing a comprehensive analysis of notification delivery and engagement data from a database to inform operational decisions. Useful for monitoring notification system health, diagnosing delivery issues, and optimizing communication strategies.", + "limitations": "Does not modify or send notifications. Requires that notification data is properly structured and stored in the database accessible to the agent. Trend analysis depends on adequate time series data coverage.", + "examples": [ + "Provide a summary of all push notification statuses from the past week.", + "Analyze failure reasons for email notifications sent in the last month grouped by recipient domain.", + "Show delivery trends for SMS notifications filtered to only delivered or failed statuses over the past 3 days." + ] + }, + "tags": [ + "database", + "notification", + "analysis", + "reporting", + "engagement", + "delivery", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T23:59:59Z\",\"notificationType\":\"push\",\"includeTrends\":true}", + "description": "Analyze all push notifications over the past week, including trend visualization." + }, + { + "inputJson": "{\"notificationType\":\"email\",\"statusFilter\":[\"failed\"],\"groupBy\":\"failureReason\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-30T23:59:59Z\"}", + "description": "Analyze failure reasons for email notifications in April 2024, grouped by failure cause." + }, + { + "inputJson": "{\"statusFilter\":[\"delivered\",\"failed\"],\"notificationType\":\"sms\",\"groupBy\":\"recipient\",\"includeTrends\":false}", + "description": "Report delivered and failed SMS notifications grouped by recipient without trends." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "database-management.analyzeMetric", + "description": "Analyzes specified database performance or usage metrics over a given time range, applying optional filters and aggregation. Accepts database connection info, metric name (e.g., query latency, cache hit ratio), time span, and optional filtering parameters. Returns summary statistics and trends for the metric.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string used to access the target database instance", + "required": true, + "defaultValue": "" + }, + { + "name": "metricName", + "type": "string", + "description": "Name of the metric to analyze (e.g., 'queryLatency', 'cacheHitRatio')", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 start time for metric analysis period", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 end time for metric analysis period", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional key-value pairs to filter the metric data (e.g., {'userId':'123', 'queryType':'SELECT'})", + "required": false, + "defaultValue": "{}" + }, + { + "name": "aggregationIntervalMinutes", + "type": "number", + "description": "Interval in minutes to aggregate metric data points (e.g., aggregate per 5 minutes)", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated metric data including aggregated values per interval, overall statistics (min, max, avg), and detected trends or anomalies" + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze database performance or usage metrics over time to identify trends, bottlenecks, or anomalies. Useful for capacity planning, performance tuning, or operational monitoring based on quantitative metric data fetched from database telemetry.", + "limitations": "Does not perform metric collection or real-time streaming; assumes metrics are available in the database or accessible storage. Limited to analysis of single metric at a time; complex multi-metric correlation is out of scope.", + "examples": [ + "Analyze query latency metric for a primary database over the last week aggregated hourly.", + "Analyze cache hit ratio for a specific database filtered by user ID over the last day aggregated every 15 minutes.", + "Analyze disk I/O wait metric for a database over last month without filters, aggregated daily." + ] + }, + "tags": [ + "database", + "analytics", + "performance", + "monitoring", + "metrics", + "aggregation" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myserver;Database=mydb;User Id=admin;Password=secret;\",\"metricName\":\"queryLatency\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T00:00:00Z\",\"filters\":{},\"aggregationIntervalMinutes\":60}", + "description": "Analyze query latency over one week aggregated hourly for the primary database." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myserver;Database=mydb;User Id=admin;Password=secret;\",\"metricName\":\"cacheHitRatio\",\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-02T00:00:00Z\",\"filters\":{\"userId\":\"12345\"},\"aggregationIntervalMinutes\":15}", + "description": "Analyze cache hit ratio filtered by user ID for one day aggregated every 15 minutes." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "database-management.analyzeLead", + "description": "Analyzes a lead record from a business database by evaluating key attributes such as contact information, lead source, engagement scores, and demographic data. The tool processes the input lead object and returns insights including lead quality score, segmentation category, and recommendations for next best actions to optimize conversion potential.", + "category": "database-management", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "The complete data object representing a business lead including contact details, demographics, interaction history, and scoring metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "scoringModel", + "type": "string", + "description": "Identifier for the scoring model or strategy to apply for lead quality assessment (e.g., 'default', 'customModelA').", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable next-step recommendations based on the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "engagementThreshold", + "type": "number", + "description": "Minimum engagement score threshold to consider a lead as highly engaged; used in evaluation.", + "required": false, + "defaultValue": "70" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing leadQualityScore (number), segmentationCategory (string), riskFactors (array of strings), and optionally nextBestActions (array of strings) with recommended follow-ups." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to assess and prioritize business leads by analyzing comprehensive lead data to generate quality scores, segmentation, and actionable insights. It supports decision-making in CRM automation and targeted marketing strategies.", + "limitations": "This tool does not perform data enrichment or external lead verification. It relies solely on input lead data and predefined scoring models; it does not predict future sales outcomes or guarantee lead conversion.", + "examples": [ + "Analyze a lead's potential customer value and recommend next steps for outreach.", + "Determine the quality score and segmentation for a lead from CRM data to prioritize sales follow-up.", + "Generate recommendations based on lead engagement data to improve conversion rates." + ] + }, + "tags": [ + "database", + "lead", + "analysis", + "CRM", + "business intelligence", + "lead-scoring", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"contactName\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"555-1234\",\"leadSource\":\"webinar\",\"demographics\":{\"age\":35,\"location\":\"NY\"},\"engagementScore\":85,\"interactionHistory\":[{\"type\":\"email_open\",\"date\":\"2024-05-01\"},{\"type\":\"webinar_attended\",\"date\":\"2024-04-25\"}],\"customAttributes\":{\"industry\":\"technology\"}},\"scoringModel\":\"default\",\"includeRecommendations\":true,\"engagementThreshold\":70}", + "description": "Analyze a tech industry lead from a webinar source with strong engagement history, including next-step recommendations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "database-management.analyzeAlert", + "description": "Analyzes security alerts generated by database monitoring systems. It accepts alert data as input, extracts and correlates relevant database activity, assesses alert severity, and produces a detailed analysis report outlining potential causes, affected resources, and recommended remediation steps.", + "category": "database-management", + "parameters": [ + { + "name": "alertData", + "type": "object", + "description": "The raw alert object containing details like timestamp, alert type, database instance, and event metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "correlationWindowMinutes", + "type": "number", + "description": "Time window in minutes before and after the alert timestamp to correlate related database events for context.", + "required": false, + "defaultValue": "15" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level (e.g., low, medium, high, critical) for alerts to analyze, filtering out less significant ones.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include remediation recommendations in the output analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of the database (e.g., MySQL, PostgreSQL, Oracle) to tailor analysis rules and signatures accordingly.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including alert summary, detailed findings, correlated events, severity assessment, and remediation advice if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze security alerts from databases to understand potential threats or suspicious activities. The tool assists in prioritizing alerts and providing actionable insights for incident response. It is useful in environments with automated alert generation from database monitoring systems.", + "limitations": "This tool does not perform live monitoring or alert generation. It only analyzes provided alert data and related events. It cannot replace human incident analysis nor detect zero-day exploits without appropriate alert inputs.", + "examples": [ + "Analyze the critical database alert for suspicious login behavior from last night.", + "Assess recent alerts from MySQL to find potential SQL injection attempts.", + "Provide a detailed analysis of high-severity alerts related to unauthorized data access." + ] + }, + "tags": [ + "database", + "security", + "alert-analysis", + "incident-response", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"alertData\":{\"timestamp\":\"2024-06-01T12:30:00Z\",\"alertType\":\"SuspiciousLogin\",\"databaseInstance\":\"prod-db-1\",\"eventMetadata\":{\"user\":\"dbadmin\",\"sourceIp\":\"192.168.1.45\"}},\"correlationWindowMinutes\":30,\"severityThreshold\":\"medium\",\"includeRecommendations\":true,\"databaseType\":\"PostgreSQL\"}", + "description": "Analyze a suspicious login alert on a PostgreSQL production database with 30-minute correlation window and include remediation steps." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "database-management.downloadReport", + "description": "This tool downloads a report generated from a specified database query. It accepts parameters defining the database connection, the report query, desired output format, and optional filters. The tool processes the query against the database, compiles the results into the chosen format (e.g., PDF, CSV), and returns the downloadable file or link to the report.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string to access the target database, including credentials and server info.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportQuery", + "type": "string", + "description": "SQL query string or stored procedure name to generate the report data.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the report file: options include 'pdf', 'csv', or 'xlsx'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "filters", + "type": "object", + "description": "Optional key-value pairs to parameterize or filter the report query before execution.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "reportName", + "type": "string", + "description": "Filename or title for the downloaded report file.", + "required": false, + "defaultValue": "report" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "If true, include report metadata such as generation date, query used, and user info in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report download URL or directly embedded file content encoded as base64, plus metadata about the report." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate retrieval of structured report data from a database and deliver it in a user-friendly document or data file format for business analysis, auditing, or sharing. Ideal when the agent knows the query and report requirements but not the file generation details.", + "limitations": "This tool does not generate reports beyond executing given queries; complex report layout design or visualizations must be handled separately. It depends on valid database access and accurate query syntax; it cannot correct SQL errors or access restricted databases.", + "examples": [ + "Download the monthly sales performance report in PDF from the sales database.", + "Generate a CSV report of customer contact info with a filter on active status.", + "Get an Excel file report for inventory stock levels as of the last week." + ] + }, + "tags": [ + "database", + "report", + "download", + "automation", + "pdf", + "csv", + "xlsx", + "query" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=SalesDB;User Id=admin;Password=secret;\",\"reportQuery\":\"SELECT * FROM MonthlySales WHERE Month='2024-05'\",\"outputFormat\":\"pdf\",\"reportName\":\"MonthlySales_May2024\",\"includeMetadata\":true}", + "description": "Download May 2024 sales report as a PDF with metadata included." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=CustomerDB;Trusted_Connection=True;\",\"reportQuery\":\"SELECT Name, Email FROM Customers WHERE Active=1\",\"outputFormat\":\"csv\",\"filters\":{},\"reportName\":\"ActiveCustomers\"}", + "description": "Generate a CSV report with active customer contact info." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=inventoryHost;Database=Inventory;User Id=readonly;Password=readonlypass;\",\"reportQuery\":\"EXEC GetLatestStockLevels\",\"outputFormat\":\"xlsx\",\"reportName\":\"StockLevelsReport\"}", + "description": "Download an Excel report using a stored procedure to get latest inventory stock levels." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "database-management.sendMessage", + "description": "Sends a formatted message or notification to a specified database user or system component. Accepts details such as recipient identifier, message content, optional message type and priority, logs the message sending action, and returns confirmation and timestamp of delivery.", + "category": "database-management", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the message recipient, e.g., user ID or system component name", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The actual text or payload of the message to be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "messageType", + "type": "string", + "description": "Type of the message, e.g., 'alert', 'notification', 'command'. Helps determine handling logic", + "required": false, + "defaultValue": "notification" + }, + { + "name": "priority", + "type": "string", + "description": "Message priority level such as 'low', 'normal', 'high' to indicate urgency", + "required": false, + "defaultValue": "normal" + }, + { + "name": "logMessage", + "type": "boolean", + "description": "If true, the message send event will be logged in the database audit trail", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the message sending process, including success boolean, unique message id, and timestamp of sending" + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to send notifications, alerts, or commands through the database management system to specific users or components. It is suitable for orchestrating internal communications triggered by database events or system workflows requiring message dispatch.", + "limitations": "This tool cannot send messages outside the database ecosystem or handle message queuing and retry logic beyond immediate send confirmation.", + "examples": [ + "Send a high-priority alert to a database admin user", + "Notify a system component about a configuration update", + "Send a normal priority notification to a user after completing a data import" + ] + }, + "tags": [ + "database", + "messaging", + "notification", + "alert", + "communication", + "management" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user123\",\"messageContent\":\"Backup completed successfully.\",\"messageType\":\"notification\",\"priority\":\"normal\",\"logMessage\":true}", + "description": "Notify a user that a database backup operation has completed successfully." + }, + { + "inputJson": "{\"recipientId\":\"auditService\",\"messageContent\":\"Unauthorized access detected.\",\"messageType\":\"alert\",\"priority\":\"high\",\"logMessage\":true}", + "description": "Send a high priority alert message to an auditing service regarding a security issue." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "database-management.renderDocument", + "description": "Renders a formatted document view from database records based on a query or collection identifier. Accepts database connection info and query parameters, retrieves matching records, and outputs a well-structured document (e.g., HTML, PDF, or markdown) for reporting or presentation purposes.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string to establish session", + "required": true, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "SQL or query language string to select records to include", + "required": false, + "defaultValue": "" + }, + { + "name": "collectionName", + "type": "string", + "description": "Name of collection or table to fetch when query is not provided", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired output document format (e.g., 'html', 'pdf', 'markdown')", + "required": true, + "defaultValue": "html" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata like query time, record count in the output document", + "required": false, + "defaultValue": "true" + }, + { + "name": "styleTemplate", + "type": "string", + "description": "Optional styling template or theme name to apply to the rendered document", + "required": false, + "defaultValue": "" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of records to render in the document, to prevent overload", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered document content as a string and the content type MIME string" + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate human-readable reports or documents from database data, such as for summaries, exports, or visual snapshots of data. This is suited for scenarios demanding formatted output from raw data queries or collections, supporting multiple output formats and optional styling.", + "limitations": "This tool does not perform database administration tasks beyond querying and data retrieval. It cannot edit database schema or perform live interactive document editing. Output styling is limited to predefined templates and formats. Complex query optimization must be handled externally.", + "examples": [ + "Render an HTML report summarizing the latest 50 sales records", + "Generate a PDF document listing all users with active subscriptions", + "Produce a markdown document of products from a specific category collection" + ] + }, + "tags": [ + "database", + "rendering", + "reporting", + "document", + "query", + "export", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=myServer;Database=salesDB;User Id=admin;Password=secret;\",\"query\":\"SELECT * FROM orders WHERE orderDate > '2024-01-01' ORDER BY orderDate DESC\",\"format\":\"html\",\"includeMetadata\":true,\"maxRecords\":50}", + "description": "Render an HTML document with the latest 50 orders from 2024 onwards including metadata." + }, + { + "inputJson": "{\"connectionString\":\"mongodb://user:pass@cluster0.mongodb.net/mydb\",\"collectionName\":\"users\",\"format\":\"pdf\",\"includeMetadata\":false,\"maxRecords\":100}", + "description": "Generate a PDF report of up to 100 user records from the 'users' collection without extra metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.draftEmail", + "description": "This tool generates a draft email based on database query results. It accepts parameters including the database query string, email subject template, body template, and recipient information. It executes the query, formats the results into the email body according to templates, and returns a ready-to-send email draft with subject, recipient, and body text.", + "category": "database-management", + "parameters": [ + { + "name": "queryString", + "type": "string", + "description": "The SQL query string to execute on the target database to extract data for the email content.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailSubjectTemplate", + "type": "string", + "description": "Template string for the email subject, which may include placeholders to be replaced with query results or variables.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailBodyTemplate", + "type": "string", + "description": "Template string for the email body content supporting placeholders to be filled by data returned from the query.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "The recipient's email address.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "The sender's email address to appear in the draft.", + "required": false, + "defaultValue": "" + }, + { + "name": "queryParameters", + "type": "object", + "description": "Optional parameters to safely inject into the SQL query if it supports parameterization.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the drafted email's subject, recipient, sender (if provided), and body as formatted strings ready for review or sending." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create contextual, data-driven email drafts based on dynamic database information, such as reports, alerts, or updates tailored to recipients. It automates the process of querying data and formatting a coherent email message.", + "limitations": "This tool does not send emails but only drafts them. It requires properly formatted SQL queries and templates. It cannot handle complex email formatting beyond plain text templates or HTML without additional integration.", + "examples": [ + "Create an email to report sales figures for yesterday to the finance team.", + "Draft a customer notification email summarizing their recent transactions.", + "Generate a weekly summary email for project updates using database info." + ] + }, + "tags": [ + "database", + "email", + "drafting", + "automation", + "SQL", + "templating", + "reports" + ], + "examples": [ + { + "inputJson": "{ \"queryString\": \"SELECT customer_name, total_orders FROM orders WHERE order_date = CURRENT_DATE - INTERVAL '1 day'\", \"emailSubjectTemplate\": \"Daily Sales Report for {{date}}\", \"emailBodyTemplate\": \"Hello,\\n\\nHere is the sales report:\\n{{#each results}}- Customer: {{customer_name}}, Orders: {{total_orders}}\\n{{/each}}\\nBest regards,\\nSales Team\", \"recipientEmail\": \"finance@example.com\", \"senderEmail\": \"salesbot@example.com\" }", + "description": "Drafts an email to the finance team with the previous day's customer orders." + }, + { + "inputJson": "{ \"queryString\": \"SELECT user_email, account_balance FROM users WHERE account_balance < 50\", \"emailSubjectTemplate\": \"Low Balance Alert\", \"emailBodyTemplate\": \"Dear User,\\nYour current account balance is {{account_balance}}. Please review your account to avoid service interruptions.\", \"recipientEmail\": \"user@example.com\" }", + "description": "Drafts a warning email to users with low account balances." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "database-management.renderFile", + "description": "Renders a stored database file (such as a JSON, CSV, or XML export) into a chosen visual format like HTML table, JSON viewer, or CSV preview. Accepts the file path or database record reference, applies optional filtering or formatting, and outputs a visually formatted string suitable for display or further processing.", + "category": "database-management", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The path or identifier of the database file to render (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type of the file to render (e.g., 'json', 'csv', 'xml').", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format for rendered output, such as 'html', 'plain', or 'markdown'.", + "required": false, + "defaultValue": "html" + }, + { + "name": "filterExpression", + "type": "string", + "description": "Optional query or filter expression to apply on the file data before rendering.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows/records to render for preview (to limit large outputs).", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered content as a string and metadata like content length and output format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visually display or preview contents of database-exported files or snapshots in various formats within an application, dashboard, or report. It enables filtering and formatting for easier human interpretation of raw file data.", + "limitations": "Cannot connect directly to live databases or perform edits on the file content; only renders existing file data. Large files may be truncated based on maxRows limitation.", + "examples": [ + "Render a JSON database export file as an HTML table preview limited to 50 rows.", + "Generate a plain text preview of a CSV file with filter applied to show only records matching criteria.", + "Render an XML database dump file to markdown format for lightweight display." + ] + }, + "tags": [ + "database", + "file", + "rendering", + "visualization", + "preview", + "filtering", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/exports/data_2024_06_01.json\",\"fileType\":\"json\",\"outputFormat\":\"html\",\"filterExpression\":\"age > 21\",\"maxRows\":50}", + "description": "Render the JSON file showing only records where age is greater than 21 as an HTML table for preview." + }, + { + "inputJson": "{\"filePath\":\"/exports/users.csv\",\"fileType\":\"csv\",\"outputFormat\":\"plain\",\"maxRows\":20}", + "description": "Render first 20 rows of CSV users export in plain text format without filtering." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "database-management.draftDocument", + "description": "This tool accepts database schema details, table data samples, and optional document format parameters. It drafts a structured document—such as a data dictionary or schema overview—summarizing the database schema, table structures, and key data attributes in a human-readable format, suitable for documentation or stakeholder review.", + "category": "database-management", + "parameters": [ + { + "name": "schemaName", + "type": "string", + "description": "Name of the database schema to document", + "required": true, + "defaultValue": "" + }, + { + "name": "tables", + "type": "array", + "description": "List of table objects including table name, columns, and optionally sample data for each table", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of document to draft (e.g., 'dataDictionary', 'schemaOverview')", + "required": false, + "defaultValue": "dataDictionary" + }, + { + "name": "includeSampleData", + "type": "boolean", + "description": "Whether to include sample row data for tables in the document", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output document (e.g., 'markdown', 'html', 'plaintext')", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted document content as a string and metadata including the format and summary." + }, + "aiAgent": { + "useCase": "Use this tool when generating technical documentation for databases, such as drafting data dictionaries or schema overviews based on schema and sample data inputs. It helps automate creation of readable documents that describe database structures for developers, analysts, or compliance.", + "limitations": "This tool cannot connect directly to a live database; database schema and data must be provided as input. It does not perform schema validation or update database contents.", + "examples": [ + "Generate a markdown data dictionary for the 'sales' schema including sample data.", + "Draft a schema overview in HTML format for documentation purposes.", + "Create a plaintext summary document of database tables without sample data." + ] + }, + "tags": [ + "database", + "documentation", + "schema", + "data dictionary", + "drafting", + "report generation" + ], + "examples": [ + { + "inputJson": "{\"schemaName\":\"sales\",\"tables\":[{\"tableName\":\"customers\",\"columns\":[{\"name\":\"id\",\"type\":\"int\",\"nullable\":false},{\"name\":\"name\",\"type\":\"varchar\",\"nullable\":false},{\"name\":\"email\",\"type\":\"varchar\",\"nullable\":true}],\"sampleData\":[{\"id\":1,\"name\":\"John Doe\",\"email\":\"john@example.com\"}]}],\"documentType\":\"dataDictionary\",\"includeSampleData\":true,\"outputFormat\":\"markdown\"}", + "description": "Draft a markdown format data dictionary document for the 'sales' schema including sample data for the 'customers' table." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.buildAPI", + "description": "Generates a RESTful API server code scaffold from given database schema definitions and configuration. Accepts database schema as JSON, API configuration including endpoints and methods, and options for authentication and middleware. Produces source code files ready to deploy for CRUD operations and custom queries.", + "category": "database-management", + "parameters": [ + { + "name": "databaseSchema", + "type": "object", + "description": "JSON object describing the database schema, including tables, columns, types, and relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiConfig", + "type": "object", + "description": "Configuration object defining which API endpoints to generate with HTTP methods, request/response schemas, and custom routes.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language/framework for generated API code, e.g., 'NodeJS-Express', 'Python-Flask', or 'Go-Gin'.", + "required": false, + "defaultValue": "\"NodeJS-Express\"" + }, + { + "name": "includeAuth", + "type": "boolean", + "description": "Whether to include token-based authentication middleware in the generated API.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeMiddleware", + "type": "array", + "description": "List of middleware names to include, e.g., ['logging', 'cors', 'rateLimit'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated API output; options include 'zip' archive or 'fileTree' JSON description.", + "required": false, + "defaultValue": "\"zip\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API source code files either as a binary zip data URI string or a structured file tree JSON, plus metadata about the generated API." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to quickly generate a ready-to-use REST API server scaffold that interfaces with a specified database schema. It is useful for prototyping, automating backend generation in development workflows, or producing boilerplate API code at scale based on dynamic database designs.", + "limitations": "The tool cannot execute or deploy the generated API server; it does not handle database migrations or ORM synchronization. It requires a well-defined database schema and configuration; it cannot infer schema from raw database dumps or undocumented data.", + "examples": [ + "Generate a NodeJS Express API for my e-commerce database with CRUD endpoints and JWT authentication enabled.", + "Build a Python Flask API with custom user routes and include CORS middleware.", + "Create a Go Gin API scaffold from a blog schema with rate limiting middleware enabled." + ] + }, + "tags": [ + "database", + "API", + "code-generation", + "backend", + "automation", + "REST", + "scaffold" + ], + "examples": [ + { + "inputJson": "{\"databaseSchema\":{\"tables\":[{\"name\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"int\",\"primaryKey\":true},{\"name\":\"email\",\"type\":\"string\"},{\"name\":\"password\",\"type\":\"string\"}]}]},\"apiConfig\":{\"endpoints\":[{\"path\":\"/users\",\"methods\":[\"GET\",\"POST\"]},{\"path\":\"/users/{id}\",\"methods\":[\"GET\",\"PUT\",\"DELETE\"]}]},\"language\":\"NodeJS-Express\",\"includeAuth\":true,\"includeMiddleware\":[\"cors\",\"logging\"],\"outputFormat\":\"zip\"}", + "description": "Generate a NodeJS Express API scaffold with JWT auth and CORS/logging middleware for a users table with standard CRUD endpoints." + }, + { + "inputJson": "{\"databaseSchema\":{\"tables\":[{\"name\":\"posts\",\"columns\":[{\"name\":\"id\",\"type\":\"int\",\"primaryKey\":true},{\"name\":\"title\",\"type\":\"string\"},{\"name\":\"content\",\"type\":\"text\"}]}]},\"apiConfig\":{\"endpoints\":[{\"path\":\"/posts\",\"methods\":[\"GET\",\"POST\"]}]},\"language\":\"Python-Flask\",\"includeAuth\":false,\"includeMiddleware\":[],\"outputFormat\":\"fileTree\"}", + "description": "Build a minimal Python Flask API with GET and POST endpoints for a posts table without authentication or middleware." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "database-management.buildServer", + "description": "Builds and configures a new database server instance. Accepts parameters specifying server type, hardware specs, storage options, and network configuration. Provisions the server environment, installs database software, and outputs connection details and status report.", + "category": "database-management", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of database server to build, e.g., MySQL, PostgreSQL, MongoDB.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate for the server.", + "required": true, + "defaultValue": "4" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM (in GB) to allocate to the server.", + "required": true, + "defaultValue": "16" + }, + { + "name": "storageGB", + "type": "number", + "description": "Storage capacity (in GB) for database files.", + "required": true, + "defaultValue": "100" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system for the server, e.g., Ubuntu 20.04, CentOS 8.", + "required": true, + "defaultValue": "Ubuntu 20.04" + }, + { + "name": "networkSettings", + "type": "object", + "description": "Network configuration including IP address, subnet mask, and gateway.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableReplication", + "type": "boolean", + "description": "Whether to configure the server with replication enabled.", + "required": false, + "defaultValue": "false" + }, + { + "name": "databaseVersion", + "type": "string", + "description": "Version of the database software to install.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server ID, provisioning status, connection strings, IP address, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically provision and configure a full database server instance based on specific hardware and software requirements. Ideal for automating infrastructure setup in cloud or on-prem environments. It handles OS installation, database software setup, and basic network configuration.", + "limitations": "This tool does not handle advanced database tuning, ongoing maintenance, or application-level database schema design. It assumes infrastructure backend integration for provisioning is available.", + "examples": [ + "Build a PostgreSQL server with 8 CPU cores, 32GB RAM, and 500GB storage.", + "Provision a MongoDB server on CentOS 8 with replication enabled.", + "Set up a MySQL server with default hardware specs and latest stable version." + ] + }, + "tags": [ + "database", + "server", + "provision", + "infrastructure", + "automation", + "build" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"PostgreSQL\",\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":500,\"operatingSystem\":\"Ubuntu 20.04\",\"enableReplication\":true,\"databaseVersion\":\"13\"}", + "description": "Create a PostgreSQL server with 8 CPU cores, 32 GB RAM, 500 GB storage on Ubuntu, with replication enabled." + }, + { + "inputJson": "{\"serverType\":\"MongoDB\",\"cpuCores\":4,\"memoryGB\":16,\"storageGB\":200,\"operatingSystem\":\"CentOS 8\",\"enableReplication\":false}", + "description": "Provision a MongoDB server with moderate specs on CentOS 8 without replication." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "database-management.buildCommit", + "description": "Constructs a database commit object representing a set of changes to be applied atomically. Accepts change details like SQL operations or document edits, author info, and commit message. Processes these inputs to build a structured commit object that can be used for versioning or applying changes in transactional database workflows.", + "category": "database-management", + "parameters": [ + { + "name": "changes", + "type": "array", + "description": "List of changes to include in the commit; each change is an object describing an operation such as insert, update, delete, or SQL statement.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name or identifier of the person or system making the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp for the commit creation time.", + "required": false, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Descriptive message explaining the purpose of the commit.", + "required": false, + "defaultValue": "" + }, + { + "name": "transactionId", + "type": "string", + "description": "Optional identifier for the transaction linking multiple commits or operations together.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured commit object containing metadata like author, timestamp, commit message, transaction ID, and the list of changes ready for use in transactional application or version control." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a coherent commit object representing a batch of database changes that can be applied atomically and tracked for versioning or rollback. Ideal in transactional systems, change tracking, or automated deployment workflows.", + "limitations": "This tool does not apply the commit to a database; it only constructs the commit object. It does not validate SQL correctness or execute the changes.", + "examples": [ + "Create a commit with multiple insert and update operations and author details.", + "Generate a commit with a descriptive message and timestamp for audit purposes.", + "Build a transactional commit linking related changes with a transaction ID." + ] + }, + "tags": [ + "database", + "commit", + "transaction", + "versioning", + "change-management", + "build", + "atomic-operation" + ], + "examples": [ + { + "inputJson": "{\"changes\":[{\"type\":\"insert\",\"table\":\"users\",\"data\":{\"id\":123,\"name\":\"Alice\"}},{\"type\":\"update\",\"table\":\"accounts\",\"data\":{\"balance\":500},\"where\":\"account_id=45\"}],\"author\":\"db-admin\",\"timestamp\":\"2024-06-05T14:48:00Z\",\"commitMessage\":\"Add new user and update account balance\"}", + "description": "Building a commit object for inserting a user and updating an account, including author and message." + }, + { + "inputJson": "{\"changes\":[{\"type\":\"delete\",\"table\":\"logs\",\"where\":\"timestamp < '2023-01-01'\"}],\"author\":\"maintenance-script\"}", + "description": "Constructing a commit for deleting old log entries, specifying only minimal metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "database-management.generateSentence", + "description": "Generates a realistic and contextually relevant natural language sentence describing a database operation based on provided parameters such as operation type, target database object, and optional conditions. Accepts inputs defining the database action and outputs a clear descriptive sentence suitable for logs, documentation, or user interface messages.", + "category": "database-management", + "parameters": [ + { + "name": "operationType", + "type": "string", + "description": "Type of database operation to describe, e.g., SELECT, INSERT, UPDATE, DELETE.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetObject", + "type": "string", + "description": "Name of the database table or object involved in the operation.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "string", + "description": "Optional conditions or filters applied to the operation, such as WHERE clause details.", + "required": false, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Optional list of column names involved in the operation; used for SELECT or INSERT operations.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "rowCount", + "type": "number", + "description": "Optional number indicating how many rows are affected or selected.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single key 'sentence' with the generated descriptive sentence string." + }, + "aiAgent": { + "useCase": "Use this tool when generating human-readable, natural language descriptions or summaries of database operations to enhance logs, reports, or user notifications. It helps convert structured database commands and metadata into explanatory sentences, useful for documentation or UI feedback.", + "limitations": "Cannot generate executable SQL commands or detailed query plans. Does not perform actual database operations or verify schema validity. Sentences are templates and may require contextual validation.", + "examples": [ + "Generate a sentence describing a SELECT operation on the 'users' table where age > 30, selecting columns 'name' and 'email'.", + "Create a descriptive sentence for an INSERT operation adding a new row into the 'orders' table.", + "Produce a sentence summarizing an UPDATE operation affecting 5 rows in the 'products' table where 'stock' is updated." + ] + }, + "tags": [ + "generate", + "sentence", + "database", + "operation-description", + "logging", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"operationType\":\"SELECT\",\"targetObject\":\"customers\",\"conditions\":\"country = 'USA' AND status = 'active'\",\"columns\":[\"id\",\"name\",\"email\"],\"rowCount\":10}", + "description": "Generate a sentence describing a SELECT query retrieving 3 columns from 'customers' where country is USA and status active, affecting 10 rows." + }, + { + "inputJson": "{\"operationType\":\"INSERT\",\"targetObject\":\"orders\",\"columns\":[\"order_id\",\"customer_id\",\"amount\"],\"rowCount\":1}", + "description": "Generate a sentence describing an INSERT operation adding one row to the 'orders' table." + }, + { + "inputJson": "{\"operationType\":\"UPDATE\",\"targetObject\":\"products\",\"conditions\":\"stock < 10\",\"rowCount\":5}", + "description": "Generate a sentence describing an UPDATE operation affecting 5 rows in 'products' where stock is less than 10." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "database-management.createContainer", + "description": "Creates a new container (such as a database schema, logical grouping, or isolated environment) within a database system. Takes input parameters specifying container name, type, access controls, storage options, and resource limits. Returns details confirming creation and configuration of the container.", + "category": "database-management", + "parameters": [ + { + "name": "containerName", + "type": "string", + "description": "The name of the container to create. Must be unique within the database system.", + "required": true, + "defaultValue": "" + }, + { + "name": "containerType", + "type": "string", + "description": "The type of container to create, e.g., 'schema', 'namespace', or 'database'. Defines scope and isolation level.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageQuotaMB", + "type": "number", + "description": "The maximum storage size allocated to this container in megabytes. Limits storage usage.", + "required": false, + "defaultValue": "100" + }, + { + "name": "accessRoles", + "type": "array", + "description": "List of user roles or groups granted access permissions for this container.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableAuditing", + "type": "boolean", + "description": "Flag to enable auditing/logging of all operations within the container.", + "required": false, + "defaultValue": "false" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Object specifying CPU and memory limits allocated to container resources, e.g., {cpuCores: 2, memoryMB: 2048}.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing containerId (unique identifier), containerName, containerType, creationTimestamp, configuration details (e.g., quotas, roles), and status confirming creation success or failure." + }, + "aiAgent": { + "useCase": "Use this tool when needing to provision isolated or logically separated containers within a database system to organize data, control access, and manage resources effectively. Ideal for automated deployment scripts, multi-tenant environments, or database lifecycle management.", + "limitations": "Does not perform data migration or inside-container object creation (e.g., tables). Does not support real-time monitoring or updates post-creation.", + "examples": [ + "Create a new schema container named 'sales_data' with read-only role access and 500MB storage quota.", + "Create a namespace container 'analytics_ns' with auditing enabled and resource limits set to 4 CPU cores and 4096MB memory.", + "Create a database container 'test_db' with default settings and no special access roles." + ] + }, + "tags": [ + "database", + "container", + "create", + "infrastructure", + "resource-management", + "access-control" + ], + "examples": [ + { + "inputJson": "{\"containerName\":\"sales_data\",\"containerType\":\"schema\",\"storageQuotaMB\":500,\"accessRoles\":[\"read_only\"],\"enableAuditing\":true}", + "description": "Create a schema container 'sales_data' with 500MB quota, read_only access role, auditing enabled." + }, + { + "inputJson": "{\"containerName\":\"analytics_ns\",\"containerType\":\"namespace\",\"resourceLimits\":{\"cpuCores\":4,\"memoryMB\":4096},\"enableAuditing\":false}", + "description": "Create a namespace container 'analytics_ns' with specified CPU and memory limits, auditing off." + }, + { + "inputJson": "{\"containerName\":\"test_db\",\"containerType\":\"database\"}", + "description": "Create a database container 'test_db' with default storage quota and no access roles." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "database-management.createMetric", + "description": "Creates a new analytics metric definition in a specified database schema. Accepts metric name, data source query, aggregation type, filters, and metadata. Processes inputs to store the metric configuration enabling consistent reuse in analytical queries and dashboards. Returns the saved metric's unique ID and summary.", + "category": "database-management", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The unique name for the metric to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "string", + "description": "The database table or view to query data from for this metric.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationType", + "type": "string", + "description": "The type of aggregation to perform (e.g., sum, average, count).", + "required": true, + "defaultValue": "" + }, + { + "name": "filterConditions", + "type": "string", + "description": "Optional SQL WHERE clause conditions to filter data for the metric.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByFields", + "type": "array", + "description": "Optional list of fields to group the aggregation by.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Human-readable description explaining the purpose of the metric.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags to categorize or aid discovery of the metric.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag indicating if the metric is active and available for querying.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the newly created metric's ID and a summary confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to define reusable analytics metrics in a database environment for consistent reporting and dashboarding. It allows creation of complex metrics with aggregation, filtering, and grouping logic stored centrally for access by BI tools or other queries.", + "limitations": "This tool does not execute or validate the SQL queries for the data source or the filter conditions; it assumes the provided inputs are syntactically correct and valid in the database context. It also does not perform metric calculations directly, only stores definitions.", + "examples": [ + "Create a new revenue metric summing total sales from the transactions table filtering completed orders.", + "Define an active user count metric grouped by month for monthly active users analysis.", + "Add a metric measuring average session duration with no filters for general engagement monitoring." + ] + }, + "tags": [ + "database", + "metrics", + "analytics", + "aggregation", + "sql", + "definition", + "analytics-metrics" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"TotalRevenue\",\"dataSource\":\"sales.transactions\",\"aggregationType\":\"sum\",\"filterConditions\":\"order_status = 'completed'\",\"groupByFields\":[],\"description\":\"Sum of revenue from completed transactions.\",\"tags\":[\"revenue\",\"sales\"],\"isActive\":true}", + "description": "Creating a sum metric for total revenue filtered by completed orders." + }, + { + "inputJson": "{\"metricName\":\"MonthlyActiveUsers\",\"dataSource\":\"app.user_sessions\",\"aggregationType\":\"count\",\"filterConditions\":\"\",\"groupByFields\":[\"month\"],\"description\":\"Count of active users grouped by month.\",\"tags\":[\"user\",\"activity\"],\"isActive\":true}", + "description": "Defining a count metric for monthly active users grouped by month." + }, + { + "inputJson": "{\"metricName\":\"AvgSessionDuration\",\"dataSource\":\"app.user_sessions\",\"aggregationType\":\"average\",\"filterConditions\":\"\",\"groupByFields\":[],\"description\":\"Average duration of user sessions.\",\"tags\":[\"engagement\",\"session\"],\"isActive\":true}", + "description": "Creating an average metric for user session duration without filters." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "database-management.createParagraph", + "description": "Creates a formatted paragraph record in a database table designed for storing textual content. Accepts plain text and optional formatting instructions, processes the data to apply specified styles, and inserts a new paragraph entry into the target database, returning the record ID and stored content.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string to connect to the target database where paragraph will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table where the paragraph record should be inserted.", + "required": true, + "defaultValue": "" + }, + { + "name": "textContent", + "type": "string", + "description": "The plain text content of the paragraph to be stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Optional styling instructions such as font, size, color, alignment applied to the paragraph text.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "authorId", + "type": "string", + "description": "Optional identifier of the author creating the paragraph, stored for auditing or tracking.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique ID of the created paragraph record and the stored formatted content as saved in the database." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically insert formatted paragraph content into a database table, such as in content management systems or document storage solutions. It helps create new text entries with optional styling metadata during workflows requiring dynamic content insertion.", + "limitations": "This tool does not handle complex document structures beyond a single paragraph. It also assumes the database schema supports text and formatting fields and that authorization and connection permissions are managed externally.", + "examples": [ + "Insert a new paragraph with bold and italic styling into the articles database.", + "Create a paragraph record for user-generated content with author tracking in the comments table.", + "Add a descriptive text paragraph with center alignment and font color to a notes database." + ] + }, + "tags": [ + "database", + "create", + "paragraph", + "text-storage", + "content-management", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;\",\"tableName\":\"paragraphs\",\"textContent\":\"This is a sample paragraph.\",\"formattingOptions\":{\"font\":\"Arial\",\"fontSize\":12,\"fontWeight\":\"normal\"},\"authorId\":\"user_123\"}", + "description": "Insert a basic paragraph record with Arial font into the paragraphs table." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServerAddress;Database=docs;Trusted_Connection=True;\",\"tableName\":\"content_paragraphs\",\"textContent\":\"Important note: system update tonight.\",\"formattingOptions\":{\"fontWeight\":\"bold\",\"color\":\"red\",\"textAlign\":\"center\"},\"authorId\":\"admin\"}", + "description": "Create a bold, red, center-aligned paragraph for a system notification by admin." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "database-management.createNotification", + "description": "Creates a notification entry in the database system. Accepts details like title, message content, target user IDs, and delivery method, then inserts a new notification record with optional scheduling. Outputs the notification ID and status of the creation operation.", + "category": "database-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or subject of the notification to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The main content or body text of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetUserIds", + "type": "array", + "description": "Array of user IDs who will receive the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliveryMethod", + "type": "string", + "description": "Method of notification delivery, e.g., 'email', 'sms', 'push'.", + "required": false, + "defaultValue": "push" + }, + { + "name": "scheduleTime", + "type": "string", + "description": "Optional ISO 8601 timestamp indicating when notification should be sent. If absent, sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of notification: 'low', 'normal', or 'high'. Defaults to 'normal'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata related to the notification (e.g., URL links, categories).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with 'notificationId' uniquely identifying the created notification and a 'status' indicating success or error message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create and schedule notifications for users within a database-driven system. Suitable for systems requiring recorded notification tracking, delivery control, and metadata attachment for enhanced user communication.", + "limitations": "This tool does not handle actual sending or delivery of notifications; it only creates and stores notification records. Integration with messaging services is external. It also does not support querying or updating existing notifications.", + "examples": [ + "Create an immediate push notification to user IDs with high priority.", + "Schedule an email notification for a list of users with an attached URL in metadata.", + "Create an SMS notification with low priority to several users without scheduling." + ] + }, + "tags": [ + "database", + "notification", + "create", + "user-communication", + "scheduling", + "message", + "management" + ], + "examples": [ + { + "inputJson": "{\"title\":\"System Update\",\"message\":\"A new update will be deployed tonight.\",\"targetUserIds\":[101,102,103],\"deliveryMethod\":\"push\",\"priority\":\"high\"}", + "description": "Create a high priority push notification for users 101, 102, 103 immediately." + }, + { + "inputJson": "{\"title\":\"Weekly Digest\",\"message\":\"Your weekly activity summary is ready.\",\"targetUserIds\":[2001,2002],\"deliveryMethod\":\"email\",\"scheduleTime\":\"2024-07-01T08:00:00Z\"}", + "description": "Schedule an email notification for users 2001 and 2002 to send on July 1, 2024 at 8 AM UTC." + }, + { + "inputJson": "{\"title\":\"Alert\",\"message\":\"Your password will expire soon.\",\"targetUserIds\":[555],\"deliveryMethod\":\"sms\",\"priority\":\"normal\"}", + "description": "Create a normal priority SMS notification for a single user immediately." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "database-management.createLead", + "description": "This tool accepts detailed information about a potential business lead and creates a new lead record in the database. It processes inputs like lead name, contact details, company data, lead source, and status, and returns a response indicating success along with the unique ID of the created lead.", + "category": "database-management", + "parameters": [ + { + "name": "leadName", + "type": "string", + "description": "Full name of the lead contact person", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address of the lead", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Contact phone number for the lead", + "required": false, + "defaultValue": "" + }, + { + "name": "companyName", + "type": "string", + "description": "Name of the lead's company or organization", + "required": false, + "defaultValue": "" + }, + { + "name": "leadSource", + "type": "string", + "description": "Source from which the lead originated (e.g. referral, website)", + "required": false, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current status of the lead (e.g. new, contacted, qualified)", + "required": false, + "defaultValue": "new" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or comments about the lead", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing confirmation of lead creation and the assigned unique lead ID" + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a new lead record in the business CRM or sales database. It is ideal for capturing all relevant lead contact and company information from user input or automated data collection, and storing it persistently with a unique identifier.", + "limitations": "This tool does not update existing leads, validate email addresses or phone formats beyond basic checks, nor does it handle deletion or complex lead relationships. It assumes the database is accessible and properly configured.", + "examples": [ + "Create a new lead named 'John Doe' with email 'john.doe@example.com' and source 'Website'.", + "Add a lead for 'Sarah Smith' from company 'Acme Corp' with phone number and notes included.", + "Insert a new lead with just name and email, defaulting status to 'new'." + ] + }, + "tags": [ + "database", + "lead-management", + "create", + "business", + "crm" + ], + "examples": [ + { + "inputJson": "{\"leadName\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phoneNumber\":\"123-456-7890\",\"companyName\":\"Doe Industries\",\"leadSource\":\"Website\",\"status\":\"new\",\"notes\":\"Interested in premium product line.\"}", + "description": "Create a complete lead record with all fields provided." + }, + { + "inputJson": "{\"leadName\":\"Sarah Smith\",\"email\":\"sarah.smith@acmecorp.com\",\"companyName\":\"Acme Corp\",\"leadSource\":\"Referral\"}", + "description": "Create a lead with essential contact info and company, minimal optional fields." + }, + { + "inputJson": "{\"leadName\":\"Mark Lee\",\"email\":\"mark.lee@example.net\"}", + "description": "Create a lead with only required information, status defaults to 'new'." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "database-management.createEvent", + "description": "Creates a new analytics event definition in the database by accepting event name, properties schema, and metadata. Validates input, stores the event definition, and returns a confirmation with event ID and details.", + "category": "database-management", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The unique name identifier for the analytics event to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "propertiesSchema", + "type": "object", + "description": "An object defining the schema of event properties with property names as keys and their data types (string, number, boolean) as values.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A human-readable description explaining the purpose of the event.", + "required": false, + "defaultValue": "" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag indicating whether the event is active and should be available for tracking.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique event ID, confirmation message, and the stored event details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to set up and register a new analytics event in a database, defining its name, properties schema, and metadata. This is essential for organizing and tracking user actions across applications in analytics systems.", + "limitations": "This tool does not handle event data ingestion or real-time tracking; it only defines the event metadata schema. It cannot modify existing events once created; separate update tools are needed.", + "examples": [ + "Create an event named 'userSignup' with properties 'method' (string) and 'referralCode' (string).", + "Add a new event 'itemPurchased' with properties 'itemId' (string), 'price' (number), and 'currency' (string).", + "Create an inactive event 'betaFeatureUsed' with description for future activation." + ] + }, + "tags": [ + "database", + "analytics", + "event", + "create", + "schema", + "definition" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"userSignup\",\"propertiesSchema\":{\"method\":\"string\",\"referralCode\":\"string\"},\"description\":\"Tracks how users sign up, including referral.\",\"isActive\":true}", + "description": "Create 'userSignup' event with method and referralCode properties." + }, + { + "inputJson": "{\"eventName\":\"itemPurchased\",\"propertiesSchema\":{\"itemId\":\"string\",\"price\":\"number\",\"currency\":\"string\"},\"description\":\"Event for tracking purchases.\",\"isActive\":true}", + "description": "Define 'itemPurchased' event with item details and price." + }, + { + "inputJson": "{\"eventName\":\"betaFeatureUsed\",\"propertiesSchema\":{\"featureId\":\"string\",\"usageTime\":\"number\"},\"description\":\"Tracks usage of beta features.\",\"isActive\":false}", + "description": "Create an inactive beta feature usage event for later activation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "database-management.createKey", + "description": "Creates a cryptographic key for securing database access or encrypting database data. Accepts parameters like key type, size, and usage purpose. Outputs a secure key string along with metadata such as creation date and key ID for integration into database security policies.", + "category": "database-management", + "parameters": [ + { + "name": "keyType", + "type": "string", + "description": "Type of key to create; options include 'AES', 'RSA', 'ECDSA'.", + "required": true, + "defaultValue": "" + }, + { + "name": "keySize", + "type": "number", + "description": "Size of the key in bits, e.g. 128, 256 for AES; 2048, 4096 for RSA.", + "required": true, + "defaultValue": "" + }, + { + "name": "usage", + "type": "string", + "description": "Intended usage of the key, such as 'encryption', 'signing', or 'access control'.", + "required": false, + "defaultValue": "encryption" + }, + { + "name": "keyName", + "type": "string", + "description": "Optional human-readable identifier for the key.", + "required": false, + "defaultValue": "" + }, + { + "name": "expirationDate", + "type": "string", + "description": "Optional ISO 8601 date string indicating when the key expires.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated key material as a base64 string, key metadata including id, type, size, usage, creation timestamp, and expiration date if provided." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate secure cryptographic keys tailored for database security tasks such as encrypting stored data, controlling access via keys, or signing data elements. It supports common algorithms and key sizes for secure database management.", + "limitations": "Does not manage key storage or rotation policies; does not interact directly with database engines or key management systems. Returns raw key info but integration into specific database platforms is external.", + "examples": [ + "Generate an AES 256-bit key for encrypting database backups.", + "Create a 2048-bit RSA key for signing database entries.", + "Create a named ECDSA key for access control with a 1-year expiration." + ] + }, + "tags": [ + "database", + "security", + "key management", + "cryptography", + "encryption", + "access control" + ], + "examples": [ + { + "inputJson": "{\"keyType\":\"AES\",\"keySize\":256,\"usage\":\"encryption\",\"keyName\":\"backupEncryptionKey\"}", + "description": "Generate a 256-bit AES key for encrypting database backups with a human-readable name." + }, + { + "inputJson": "{\"keyType\":\"RSA\",\"keySize\":2048,\"usage\":\"signing\"}", + "description": "Create a 2048-bit RSA key intended for digital signing of database records." + }, + { + "inputJson": "{\"keyType\":\"ECDSA\",\"keySize\":256,\"usage\":\"access control\",\"keyName\":\"accessKey1\",\"expirationDate\":\"2025-06-30T00:00:00Z\"}", + "description": "Generate an ECDSA key for access control with identifier and expiration date." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "database-management.createPullRequest", + "description": "Creates a pull request for database schema changes or queries on a version-controlled database project. Accepts branch details, title, description, and target repository info, then initializes a pull request to merge proposed database modifications from a feature branch into a base branch, returning PR metadata.", + "category": "database-management", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the Git repository hosting the database project to create the pull request in.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceBranch", + "type": "string", + "description": "The name of the branch containing the proposed database changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The base branch to merge the changes into, typically 'main' or 'master'.", + "required": true, + "defaultValue": "main" + }, + { + "name": "title", + "type": "string", + "description": "The title of the pull request summarizing the database changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description explaining the purpose and nature of the database changes in the pull request.", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of usernames or emails of reviewers to be requested for reviewing the pull request.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "labels", + "type": "array", + "description": "List of labels or tags to categorize the pull request, e.g., 'schema', 'migration', 'bugfix'.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Metadata of the created pull request, including PR number, URL, status, and timestamps." + }, + "aiAgent": { + "useCase": "This tool is suitable for AI agents managing database schema or query changes in code repositories. When agents prepare version-controlled database modifications, this tool automates creating pull requests to streamline collaboration and code review. Ideal in CI/CD pipelines or change management systems involving database devops.", + "limitations": "Does not perform git operations beyond PR creation (e.g., it cannot merge or delete branches). Requires repository access permissions and correct branch names. Does not validate database code correctness or conflicts.", + "examples": [ + "Create a pull request for new schema migration branch 'add-user-table' into 'main' with reviewers assigned.", + "Create a PR for query optimization changes with detailed descriptions and labels for easier tracking." + ] + }, + "tags": [ + "database", + "pull-request", + "version-control", + "schema-management", + "devops", + "automation" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/db-project.git\",\"sourceBranch\":\"add-user-table\",\"targetBranch\":\"main\",\"title\":\"Add user table schema\",\"description\":\"This PR adds a new user table to support authentication.\",\"reviewers\":[\"dbadmin\"],\"labels\":[\"schema\",\"feature\"]}", + "description": "Create a PR to add a user table schema with one reviewer and feature labels." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/example/db-repo.git\",\"sourceBranch\":\"optimize-queries\",\"targetBranch\":\"develop\",\"title\":\"Optimize query indices\",\"description\":\"Improves performance by adding indexes to key columns.\",\"reviewers\":[],\"labels\":[\"performance\"]}", + "description": "Create a PR for database query optimization with labels but no reviewers requested." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "database-management.createBranch", + "description": "Creates a new database branch (a separate copy of the database schema and optionally data) for development or testing purposes. Accepts the source database identifier, branch name, optional description, and flags for data cloning. Returns confirmation and details of the created branch.", + "category": "database-management", + "parameters": [ + { + "name": "sourceDatabaseId", + "type": "string", + "description": "Identifier of the source database to branch from, e.g., database name or ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Unique name for the new branch to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description for the new branch explaining its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "cloneData", + "type": "boolean", + "description": "Whether to copy the current data from the source database to the branch. If false, only schema is copied.", + "required": false, + "defaultValue": "false" + }, + { + "name": "accessPermissions", + "type": "object", + "description": "Optional object defining access permissions for the branch, such as allowed users or roles.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details of the created branch including branchId, branchName, creationTimestamp, and status confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create isolated copies of a database environment for development, testing, or experimental changes without impacting the production database. It supports cloning schema alone or schema with data and setting access permissions.", + "limitations": "This tool does not perform data merges back to the source database, nor does it handle version control integration beyond creating branches. It also assumes the source database supports branching operations.", + "examples": [ + "Create a new test branch from the production database including its data", + "Create a schema-only branch for development with restricted access", + "Create a new branch from a staging environment with a specified branch name and description" + ] + }, + "tags": [ + "database", + "branching", + "development", + "testing", + "schema-copy", + "data-cloning" + ], + "examples": [ + { + "inputJson": "{\"sourceDatabaseId\":\"prod-db-001\",\"branchName\":\"feature-x-dev\",\"description\":\"Development branch for feature X\",\"cloneData\":true}", + "description": "Create a new branch from the production database including all current data for development purposes." + }, + { + "inputJson": "{\"sourceDatabaseId\":\"staging-db\",\"branchName\":\"schema-update-branch\",\"cloneData\":false}", + "description": "Create a schema-only branch from staging database without cloning data for schema update testing." + }, + { + "inputJson": "{\"sourceDatabaseId\":\"prod-db-001\",\"branchName\":\"restricted-access-branch\",\"description\":\"QA testing branch\",\"cloneData\":true,\"accessPermissions\":{\"allowedUsers\":[\"qa.user1\",\"qa.user2\"]}}", + "description": "Create a data-cloned branch with restricted user access for QA testing." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "database-management.createEndpoint", + "description": "Creates a RESTful API endpoint for interacting with a specified database table or collection. Accepts inputs defining the database connection, target table, supported HTTP methods (GET, POST, PUT, DELETE), request validation schema, and authentication requirements. Produces endpoint configuration code or deployment details to be integrated with server applications.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database (e.g., MySQL, PostgreSQL, MongoDB) to connect for endpoint operations.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Database connection string or URI specifying credentials and host details.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table or collection the endpoint will interact with.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethods", + "type": "array", + "description": "List of allowed HTTP methods for the endpoint such as ['GET','POST','PUT','DELETE'].", + "required": true, + "defaultValue": "[\"GET\"]" + }, + { + "name": "requestSchema", + "type": "object", + "description": "JSON schema defining the structure and validation rules for incoming requests to the endpoint.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires authentication to access (true or false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "endpointPath", + "type": "string", + "description": "URI path for the API endpoint (e.g., '/users'). If not provided, defaults to '/' plus tableName.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object describing the generated API endpoint including the path, supported methods, and code snippet or deployment instructions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate REST API endpoints connected to a specific database table or collection, allowing CRUD operations with configurable validation and security. It is ideal for bootstrapping backend services or prototyping database-driven APIs.", + "limitations": "This tool does not handle complex business logic beyond basic CRUD, nor does it deploy the endpoint services automatically. It also does not generate frontend integration code.", + "examples": [ + "Create a GET and POST endpoint for 'customers' table in PostgreSQL with authentication enabled.", + "Create a full CRUD REST endpoint for a MongoDB 'orders' collection with request validation.", + "Generate a read-only endpoint for 'products' with no authentication." + ] + }, + "tags": [ + "database", + "api", + "endpoint", + "crud", + "rest", + "backend", + "automation" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"connectionString\":\"postgresql://user:pass@db.example.com:5432/shop\",\"tableName\":\"customers\",\"httpMethods\":[\"GET\",\"POST\"],\"authenticationRequired\":true}", + "description": "Create authenticated GET and POST endpoints for the 'customers' table in a PostgreSQL database." + }, + { + "inputJson": "{\"databaseType\":\"MongoDB\",\"connectionString\":\"mongodb+srv://user:pass@cluster0.mongodb.net/shop\",\"tableName\":\"orders\",\"httpMethods\":[\"GET\",\"POST\",\"PUT\",\"DELETE\"],\"requestSchema\":{\"type\":\"object\",\"properties\":{\"orderId\":{\"type\":\"string\"},\"amount\":{\"type\":\"number\"}},\"required\":[\"orderId\",\"amount\"]},\"authenticationRequired\":false}", + "description": "Create full CRUD endpoints for 'orders' with request validation, without authentication." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "database-management.createInvoice", + "description": "Creates a new invoice record in the database by accepting client and invoice details such as client information, items purchased, prices, taxes, and due date. Processes the input to calculate totals and generates a unique invoice ID. Returns the stored invoice data including the computed totals and invoice ID.", + "category": "database-management", + "parameters": [ + { + "name": "clientId", + "type": "string", + "description": "Unique identifier for the client to whom the invoice is issued.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of purchased items, each containing description, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a percentage for the invoice (e.g., 8.25 for 8.25%).", + "required": false, + "defaultValue": "0" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date when the invoice is issued, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date for the invoice, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or terms to include in the invoice.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the stored invoice record with generated invoiceId, clientId, items, taxRate, invoiceDate, dueDate, subtotal, taxAmount, totalAmount, and any notes." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a new invoice record in a database including details like client, purchased items, prices, and due dates. It is suitable for automated billing systems or applications requiring structured invoice storage with computed totals.", + "limitations": "This tool does not handle payment processing or invoicing updates; it creates initial invoice records only.", + "examples": [ + "Create an invoice for client 123 with 3 items including prices and tax rate 7.5%.", + "Generate invoice dated 2024-05-01 with due date 2024-05-15 containing specific invoice notes.", + "Create a tax-exempt invoice for a client with no due date specified." + ] + }, + "tags": [ + "database", + "invoice", + "billing", + "create", + "financial", + "document", + "record" + ], + "examples": [ + { + "inputJson": "{\"clientId\":\"C001\",\"items\":[{\"description\":\"Widget A\",\"quantity\":2,\"unitPrice\":25.00},{\"description\":\"Service B\",\"quantity\":1,\"unitPrice\":100.00}],\"taxRate\":7.5,\"invoiceDate\":\"2024-04-15\",\"dueDate\":\"2024-05-15\",\"notes\":\"Payment due within 30 days.\"}", + "description": "Create invoice for client C001 with two items, tax rate 7.5%, invoice and due dates, and notes." + }, + { + "inputJson": "{\"clientId\":\"C789\",\"items\":[{\"description\":\"Consulting\",\"quantity\":5,\"unitPrice\":150.00}],\"taxRate\":0,\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-06-30\",\"notes\":\"No tax applied.\"}", + "description": "Create tax-exempt consulting invoice for client C789 with specified dates and notes." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "testing-automation.analyzeReport", + "description": "Analyzes automated testing reports in JSON, XML, or HTML format to extract key metrics such as pass/fail counts, failure reasons, test duration, and flaky tests. Produces a structured summary and insights to help developers quickly understand test outcomes and identify problem areas.", + "category": "testing-automation", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The raw content of the test report as text, typically in JSON, XML, or HTML format containing test results.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the input test report, e.g., 'json', 'xml', 'html'. Determines the parsing method used.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeFlakyTests", + "type": "boolean", + "description": "Whether to identify and include flaky (intermittently failing) tests in the analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "minimumDurationThreshold", + "type": "number", + "description": "Minimum test duration in seconds to highlight tests that exceed this threshold as slow tests.", + "required": false, + "defaultValue": "0" + }, + { + "name": "detailedFailureAnalysis", + "type": "boolean", + "description": "Whether to perform detailed failure analysis to group failures by error message or root cause.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis summary object containing total tests run, passed, failed, skipped counts, list of flaky tests if any, slow tests exceeding threshold, and grouped failure reasons with counts." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw automated test result reports and need a concise, structured summary highlighting overall test outcomes, failure patterns, flaky tests, and performance issues, facilitating quicker quality assessment and debugging prioritization.", + "limitations": "Cannot execute tests or access external data; accuracy depends on well-formed input reports; may not interpret custom report formats without predefined schema.", + "examples": [ + "Analyze a JSON test report to find flaky and slow tests.", + "Summarize an XML report focusing on failure grouping.", + "Extract key metrics from an HTML test results page without flaky test detection." + ] + }, + "tags": [ + "testing", + "automation", + "report-analysis", + "test-results", + "quality-assurance", + "flaky-tests" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"{\\\"tests\\\":[{\\\"name\\\":\\\"testLogin\\\",\\\"status\\\":\\\"pass\\\",\\\"duration\\\":1.2},{\\\"name\\\":\\\"testPayment\\\",\\\"status\\\":\\\"fail\\\",\\\"duration\\\":3.5,\\\"error\\\":\\\"TimeoutException\\\"},{\\\"name\\\":\\\"testSignup\\\",\\\"status\\\":\\\"skip\\\",\\\"duration\\\":0.0}]}\",\"reportFormat\":\"json\",\"includeFlakyTests\":true,\"minimumDurationThreshold\":2.0,\"detailedFailureAnalysis\":true}", + "description": "Analyze a simple JSON-formatted test report including flaky test identification and slow test detection with detailed failure grouping." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "database-management.createSummary", + "description": "This tool accepts a database connection string, a target table name, and an optional filter query. It queries the specified table, processes the retrieved data by aggregating and summarizing key statistics (like counts, averages, and distributions), and outputs a concise summary report in JSON format describing the data characteristics and insights.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "The database connection string used to establish connection to the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "filterQuery", + "type": "string", + "description": "Optional SQL WHERE clause to filter data rows before summarizing.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregateColumns", + "type": "array", + "description": "List of column names on which to perform aggregations (e.g., COUNT, AVG). If empty, summarizes all suitable columns.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to retrieve for summarization to limit processing load.", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing summary statistics, including row count, column-wise aggregates (counts, averages, min/max), and data distributions if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when needing a quick, automated summary report of a database table's content, such as when assessing new datasets or preparing reports based on an existing database. It's useful for understanding data distribution, size, and key numeric statistics without manual query writing.", + "limitations": "Cannot perform complex multi-table joins or in-depth statistical analysis beyond basic aggregates. Assumes access rights to query the database and that data types are suitable for aggregation.", + "examples": [ + "Create a summary of the 'customers' table in my PostgreSQL database to understand key metrics.", + "Summarize the 'sales' table but only for entries in 2023 using a WHERE filter.", + "Generate a report of average and count statistics for selected columns in the 'products' table." + ] + }, + "tags": [ + "database", + "summary", + "aggregation", + "reporting", + "data-analysis", + "sql" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"tableName\":\"employees\",\"filterQuery\":\"department = 'Engineering'\",\"aggregateColumns\":[\"salary\",\"age\"],\"maxRows\":5000}", + "description": "Summarize the 'employees' table filtered to Engineering department, aggregating salary and age columns." + }, + { + "inputJson": "{\"connectionString\":\"Server=prodServer;Database=salesDB;User Id=admin;Password=secret;\",\"tableName\":\"orders\",\"filterQuery\":\"\",\"aggregateColumns\":[],\"maxRows\":10000}", + "description": "Create a general summary report of the 'orders' table without any filtering, aggregating all numeric columns." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "devops.analyzeAccount", + "description": "Analyzes a cloud service account configuration and usage to identify security risks, cost inefficiencies, and compliance issues. Accepts account ID and optional filters, processes configuration and usage metadata, and outputs a detailed report with findings and recommendations.", + "category": "devops", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "The unique identifier of the cloud service account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeServices", + "type": "array", + "description": "Optional list of specific cloud services to focus the analysis on. Empty means all services.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludeServices", + "type": "array", + "description": "Optional list of services to exclude from analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeRegions", + "type": "array", + "description": "Optional list of cloud regions to limit the analysis scope.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "Optional list of compliance standards (e.g., PCI, HIPAA) for compliance checks.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output format for the report, e.g., 'json' or 'text'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "verbose", + "type": "boolean", + "description": "Whether to include detailed debug info and verbose explanations in the report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis summary, detailed findings with severity levels, recommendations for remediation, and optionally compliance check results." + }, + "aiAgent": { + "useCase": "Use this tool to perform an in-depth assessment of a cloud or infrastructure account to proactively identify security vulnerabilities, misconfigurations, cost optimization opportunities, and compliance violations. It helps DevOps teams maintain secure and optimized account setups.", + "limitations": "Does not modify the account or fix issues automatically. Requires appropriate permissions to access account metadata. Analysis is limited to available account data and may not detect all possible risks.", + "examples": [ + "Analyze the AWS account 123456789012 for security risks and cost optimization.", + "Generate a compliance risk report for the GCP account 'my-gcp-project' focusing on HIPAA standards.", + "Provide a summary of potential vulnerabilities in the Azure account 'xyz123' including IAM and resource config." + ] + }, + "tags": [ + "analysis", + "cloud", + "security", + "cost optimization", + "compliance", + "infrastructure", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"123456789012\",\"includeServices\":[\"EC2\",\"S3\"],\"complianceStandards\":[\"PCI\"],\"reportFormat\":\"json\",\"verbose\":true}", + "description": "Analyze AWS account for EC2 and S3 service configurations against PCI compliance with detailed verbose report." + }, + { + "inputJson": "{\"accountId\":\"my-gcp-project\",\"excludeServices\":[\"BigQuery\"],\"reportFormat\":\"text\"}", + "description": "Analyze GCP account excluding BigQuery service and generate a plaintext summary report." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "testing-automation.createReport", + "description": "Generates a comprehensive test automation report summarizing test execution results. Accepts test run data including passed, failed, and skipped tests, along with optional metadata. Produces a structured report in JSON or formatted text detailing test statistics, failures, and timestamps.", + "category": "testing-automation", + "parameters": [ + { + "name": "testRunData", + "type": "object", + "description": "Structured test execution data including test cases, statuses, and logs to include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "The output format of the report, e.g., 'json' or 'text'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeFailuresOnly", + "type": "boolean", + "description": "If true, includes only failed test cases in the report to focus on issues.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional information such as test suite name, environment, and timestamp to include in report header.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content as a string and format metadata to facilitate consumption and display." + }, + "aiAgent": { + "useCase": "Use this tool to generate detailed human-readable or machine-readable reports after automated test executions. It is ideal for summarizing large test suites, highlighting failures, and supporting debugging and quality assurance processes.", + "limitations": "This tool does not execute tests or collect raw test data; it only processes and formats existing test results into reports. It cannot analyze test flakiness or produce graphical visualizations.", + "examples": [ + "Generate a JSON report of the last Jenkins automated test run including all test cases.", + "Create a concise text report showing only failed tests for daily regression suite.", + "Produce a JSON report with metadata indicating the environment and execution timestamp." + ] + }, + "tags": [ + "testing", + "automation", + "reporting", + "test-results", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"testRunData\":{\"tests\":[{\"name\":\"LoginTest\",\"status\":\"passed\"},{\"name\":\"PaymentTest\",\"status\":\"failed\",\"error\":\"Timeout error\"},{\"name\":\"SignupTest\",\"status\":\"skipped\"}],\"startTime\":\"2024-06-01T10:00:00Z\",\"endTime\":\"2024-06-01T10:15:00Z\"},\"reportFormat\":\"json\",\"includeFailuresOnly\":false,\"metadata\":{\"suiteName\":\"RegressionSuites\",\"environment\":\"staging\"}}", + "description": "Generate a full JSON report from a test run including all tests and metadata." + }, + { + "inputJson": "{\"testRunData\":{\"tests\":[{\"name\":\"AddItem\",\"status\":\"failed\",\"error\":\"ElementNotFound\"},{\"name\":\"RemoveItem\",\"status\":\"failed\",\"error\":\"AssertionError\"},{\"name\":\"Checkout\",\"status\":\"passed\"}]},\"reportFormat\":\"text\",\"includeFailuresOnly\":true}", + "description": "Generate a text report showing only failed tests to quickly identify issues." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "devops.analyzeWord", + "description": "This tool accepts a single word string input and analyzes it to determine its origins, usage frequency in technical documentation, and semantic relevance within DevOps contexts. It processes the word by querying linguistic databases and DevOps-related corpora, then outputs detailed insights including etymology, commonness scores, and related technical terms.", + "category": "devops", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word to analyze, typically a technical term or keyword relevant to DevOps.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEtymology", + "type": "boolean", + "description": "Whether to include the origin and historical development of the word in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Specify the language to analyze the word in, defaults to English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeRelatedTerms", + "type": "boolean", + "description": "Whether to include a list of related technical terms in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the analyzed results: original word, its etymology if requested, a frequency score based on DevOps documentation corpora, a semantic relevance score, and optionally related terms." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the significance, background, and contextual relevance of a specific word or term within DevOps documentation or communication. It helps with improving documentation, keyword extraction, and semantic analysis in deployment and infrastructure automation contexts.", + "limitations": "Does not perform analysis on phrases or sentences; focused strictly on single words. It relies on existing linguistic and DevOps corpora, so very new or niche words might have limited data.", + "examples": [ + "Analyze the word 'container' to understand its use and origin in DevOps.", + "Check the frequency and related terms of 'pipeline' in CI/CD documentation.", + "Get etymology and related technical terms for 'orchestration' in deployment automation." + ] + }, + "tags": [ + "analysis", + "word", + "devops", + "documentation", + "semantic", + "etymology", + "frequency" + ], + "examples": [ + { + "inputJson": "{\"word\":\"container\",\"includeEtymology\":true,\"language\":\"en\",\"includeRelatedTerms\":true}", + "description": "Analyze the word 'container' for etymology, usage frequency, and related DevOps terms." + }, + { + "inputJson": "{\"word\":\"pipeline\",\"includeEtymology\":false,\"language\":\"en\",\"includeRelatedTerms\":true}", + "description": "Get frequency and related technical terms for 'pipeline' without etymology." + }, + { + "inputJson": "{\"word\":\"orchestration\",\"includeEtymology\":true,\"language\":\"en\",\"includeRelatedTerms\":false}", + "description": "Analyze 'orchestration' with etymology but without related terms." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "testing-automation.createCustomer", + "description": "Creates a new customer entity in a test environment by accepting input details such as name, email, address, and optional metadata. It simulates customer creation workflows and returns the unique customer ID and a status confirmation for use in automated testing scripts.", + "category": "testing-automation", + "parameters": [ + { + "name": "customerName", + "type": "string", + "description": "Full name of the customer to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Customer's email address used for identification and contact.", + "required": true, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Physical address details including street, city, state, and zip code.", + "required": false, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Optional phone number for the customer.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional custom attributes as key-value pairs.", + "required": false, + "defaultValue": "" + }, + { + "name": "activateCustomer", + "type": "boolean", + "description": "If true, activates the customer upon creation; otherwise, remains inactive.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the new customer's unique ID, creation timestamp, and status confirmation message." + }, + "aiAgent": { + "useCase": "Use this tool when automated test scenarios require creating customer accounts with specific details to validate workflows such as registration, order processing, or profile updates in a controlled test environment.", + "limitations": "Does not perform validation beyond basic format checks; assumes a test database context and cannot interact with live production customer data.", + "examples": [ + "Create a new active customer with full contact details for order process testing.", + "Generate an inactive customer with minimal info to test registration edge cases.", + "Add a customer with custom metadata for testing personalized marketing workflows." + ] + }, + "tags": [ + "testing", + "automation", + "customer", + "create", + "test-data", + "api", + "simulation" + ], + "examples": [ + { + "inputJson": "{\"customerName\":\"Alice Johnson\",\"email\":\"alice.johnson@example.com\",\"address\":{\"street\":\"123 Maple St\",\"city\":\"Springfield\",\"state\":\"IL\",\"zipCode\":\"62704\"},\"phoneNumber\":\"555-1234\",\"activateCustomer\":true}", + "description": "Create an active customer with full contact information for testing user registration." + }, + { + "inputJson": "{\"customerName\":\"Bob Lee\",\"email\":\"bob.lee@example.com\",\"activateCustomer\":false}", + "description": "Create an inactive customer with minimal required fields to test inactive account scenarios." + }, + { + "inputJson": "{\"customerName\":\"Carlos Ramirez\",\"email\":\"carlos.ramirez@example.com\",\"metadata\":{\"preferredLanguage\":\"es\",\"loyaltyLevel\":\"gold\"},\"activateCustomer\":true}", + "description": "Create an active customer with custom metadata for testing personalized marketing and loyalty features." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "devops.analyzeJSON", + "description": "Analyzes JSON data related to deployment configurations or infrastructure definitions to extract key metrics, detect inconsistencies, and summarize structural properties. Accepts JSON input as a string or object, performs schema validation, key frequency analysis, and identifies potential anomalies, returning a structured report with insights.", + "category": "devops", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The JSON data to analyze, provided as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to perform JSON schema validation if a schema is provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaDefinition", + "type": "string", + "description": "JSON Schema definition as a string used to validate the input JSON, if validateSchema is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxDepth", + "type": "number", + "description": "The maximum depth to analyze nested JSON objects. Beyond this depth the tool ignores deeper structure.", + "required": false, + "defaultValue": "5" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to analyze and flag inconsistent or unusual data patterns within the JSON.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing validation results, summaries of key frequencies, detected anomalies, depth metrics, and optionally schema validation errors." + }, + "aiAgent": { + "useCase": "Use this tool when handling JSON data representing deployment configurations, infrastructure-as-code definitions, or CI/CD pipeline settings. It helps extract insights about the data structure, validate correctness against a schema, and identify possible misconfigurations or anomalies in the JSON content.", + "limitations": "This tool does not modify or fix JSON data. It cannot process extremely large JSON inputs beyond memory constraints or perform domain-specific semantic validation outside of schema rules.", + "examples": [ + "Analyze deployment configuration JSON for schema compliance and report anomalies.", + "Summarize key distributions in a CI pipeline JSON to detect inconsistent field usage.", + "Check the depth and structure of large infrastructure JSON manifests to ensure validity." + ] + }, + "tags": [ + "devops", + "json", + "analysis", + "validation", + "infrastructure", + "configuration", + "ci-cd" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"{\\\"services\\\":{\\\"web\\\":{\\\"replicas\\\":3,\\\"image\\\":\\\"nginx\\\"},\\\"db\\\":{\\\"replicas\\\":1,\\\"image\\\":\\\"postgres\\\"}},\\\"version\\\":\\\"1.0\\\"}\",\"validateSchema\":false,\"maxDepth\":3,\"detectAnomalies\":true}", + "description": "Analyze a simple deployment configuration JSON, detecting anomalies without schema validation." + }, + { + "inputJson": "{\"jsonData\":\"{\\\"pipeline\\\":{\\\"steps\\\":[{\\\"name\\\":\\\"build\\\",\\\"timeout\\\":30},{\\\"name\\\":\\\"test\\\",\\\"timeout\\\":-5}]}}\",\"validateSchema\":true,\"schemaDefinition\":\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"pipeline\\\":{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"steps\\\":{\\\"type\\\":\\\"array\\\",\\\"items\\\":{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"name\\\":{\\\"type\\\":\\\"string\\\"},\\\"timeout\\\":{\\\"type\\\":\\\"integer\\\",\\\"minimum\\\":0}},\\\"required\\\":[\\\"name\\\",\\\"timeout\\\"]}}}}}},\"maxDepth\":5,\"detectAnomalies\":true}", + "description": "Analyze a CI pipeline JSON with schema validation to detect invalid negative timeout value." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "devops.uploadCode", + "description": "Uploads source code or binaries from a specified local directory or repository to a remote server or deployment target. Supports authentication, optional compression, and basic verification to ensure successful transfer. Outputs upload status and any error details.", + "category": "devops", + "parameters": [ + { + "name": "sourcePath", + "type": "string", + "description": "Local file system path or repository URL from which to upload code.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetServer", + "type": "string", + "description": "Remote server address or deployment endpoint URL to upload the code.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or key used to authorize the upload to the target server.", + "required": false, + "defaultValue": "" + }, + { + "name": "compress", + "type": "boolean", + "description": "Whether to compress files before uploading to reduce transfer size.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeFilters", + "type": "array", + "description": "List of glob patterns to specify which files or directories to include during upload.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludeFilters", + "type": "array", + "description": "List of glob patterns to exclude certain files or directories from upload.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for upload to complete before aborting.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing upload results including success status, number of files uploaded, total bytes transferred, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an automation workflow or deployment pipeline requires transferring code artifacts or source files from a local environment or repository to a remote server securely and reliably. It simplifies scripted continuous deployment or infrastructure provisioning steps.", + "limitations": "Does not handle compiling or building code, version control branching logic, or complex deployment orchestration. Upload retries and advanced error recovery are limited.", + "examples": [ + "Upload the application source from './app' directory to staging server at 'staging.example.com' with authentication token.", + "Transfer build artifacts from URL repository 'https://github.com/org/repo.git' to remote endpoint 'https://deploy.example.com/upload' with compression enabled.", + "Upload all JavaScript files from local directory ignoring test files to a remote development server within 2 minutes timeout." + ] + }, + "tags": [ + "upload", + "code", + "deployment", + "devops", + "automation", + "ci/cd", + "file transfer" + ], + "examples": [ + { + "inputJson": "{\"sourcePath\":\"./src\",\"targetServer\":\"https://deploy.example.com\",\"authToken\":\"abc123token\",\"compress\":true,\"includeFilters\":[\"**/*.js\"],\"excludeFilters\":[\"**/*.test.js\"],\"timeoutSeconds\":300}", + "description": "Upload all JavaScript source files from 'src' directory excluding test files to deployment endpoint with compression enabled." + }, + { + "inputJson": "{\"sourcePath\":\"https://github.com/myorg/myrepo.git\",\"targetServer\":\"staging.example.com\",\"authToken\":\"tokenXYZ\",\"compress\":false}", + "description": "Clone and upload code from a GitHub repository URL directly to a staging server without compression." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "devops.formatEmail", + "description": "Formats a raw email content with variables for deployment or incident notifications into a well-structured and readable email message. Accepts raw text input plus metadata such as recipients, subject, and variables, applies templating and formatting rules, and outputs a finalized email string ready for sending.", + "category": "devops", + "parameters": [ + { + "name": "rawContent", + "type": "string", + "description": "Raw email body content including placeholders for variable substitution.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Email subject line to use in the formatted email.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "Array of recipient email addresses to populate in the To field.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs for placeholders to be substituted within the rawContent.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a default standardized signature block at the end of the email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formatAsHtml", + "type": "boolean", + "description": "If true, outputs the email body formatted as HTML; otherwise plain text.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted email with headers (To, Subject) and body as string, formatted correctly based on parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate deployment or incident notification emails dynamically from templates with variable content, ensuring consistent formatting, inclusion of recipients and subject, and optionally HTML formatting and signatures. It helps automate notifications in continuous integration and deployment pipelines.", + "limitations": "This tool only performs formatting and templating; it does not send emails or perform validation of email addresses or content safety.", + "examples": [ + "Format an incident alert email to multiple recipients with dynamic incident details.", + "Generate a deployment notification email with HTML formatting including a standard signature.", + "Prepare a plain text email for a DevOps report with customized subject and placeholders replaced." + ] + }, + "tags": [ + "email", + "formatting", + "devops", + "notification", + "templating" + ], + "examples": [ + { + "inputJson": "{\"rawContent\":\"Hello team,\\n\\nDeployment of version {{version}} to environment {{env}} was successful at {{time}}.\\n\\nRegards,\\nOps Team\",\"subject\":\"Deployment Notification: Version {{version}}\",\"recipients\":[\"devteam@example.com\",\"ops@example.com\"],\"variables\":{\"version\":\"1.2.3\",\"env\":\"production\",\"time\":\"2024-06-10 03:00 UTC\"},\"includeSignature\":true,\"formatAsHtml\":false}", + "description": "Formats a plain text deployment notification email with placeholders replaced, recipients addressed, and standard signature included." + }, + { + "inputJson": "{\"rawContent\":\"

Hi all,

The latest deployment (version {{version}}) to {{env}} is complete.

Thanks,
Deployment Bot

\",\"subject\":\"Deployment Complete - Version {{version}}\",\"recipients\":[\"teamlead@example.com\"],\"variables\":{\"version\":\"2.5.0\",\"env\":\"staging\"},\"includeSignature\":false,\"formatAsHtml\":true}", + "description": "Formats an HTML email for a deployment complete notification with dynamic content and no signature appended." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "devops.generateWord", + "description": "Generates a random or themed word useful for naming deployments, containers, servers, or automation scripts during DevOps workflows. Accepts parameters to specify word length, theme category, and casing style, outputting a suitable word string for integration in configuration or deployment pipelines.", + "category": "devops", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "Optional theme or category for the generated word, e.g., 'tech', 'nature', or 'mythology'. If empty, a general English word is generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Desired length of the generated word. If zero or omitted, any length is allowed.", + "required": false, + "defaultValue": "0" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "If true, the first letter of the generated word is capitalized.", + "required": false, + "defaultValue": "false" + }, + { + "name": "uppercase", + "type": "boolean", + "description": "If true, the entire generated word is returned in uppercase.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word string under the 'word' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing unique, human-readable words for deployment or infrastructure element naming to improve clarity and traceability in CI/CD pipelines or configuration management. It supports theme and style customization to fit naming conventions.", + "limitations": "Cannot guarantee uniqueness across environments; words are generated randomly and may occasionally repeat. Does not generate multi-word phrases or enforce linguistic correctness beyond thematic selection.", + "examples": [ + "Generate a tech-themed word with 8 characters, capitalized.", + "Create a nature-themed uppercase word of any length.", + "Get a random general word without length restriction and standard casing." + ] + }, + "tags": [ + "devops", + "naming", + "wordGeneration", + "deployment", + "automation", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"tech\",\"length\":8,\"capitalize\":true,\"uppercase\":false}", + "description": "Generate a tech-themed word with exactly 8 characters, capitalized." + }, + { + "inputJson": "{\"theme\":\"nature\",\"length\":0,\"capitalize\":false,\"uppercase\":true}", + "description": "Generate a nature-themed word of any length, in uppercase." + }, + { + "inputJson": "{}", + "description": "Generate a random word with default parameters (no theme, any length, no capitalization)." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "devops.generateDataset", + "description": "Generates synthetic datasets tailored for DevOps scenarios such as deployment logs, infrastructure metrics, and CI/CD pipeline results. Accepts parameters specifying dataset type, size, format, and optional noise level to simulate realistic operational data. Outputs the dataset in requested format for testing, analysis, or automation workflows.", + "category": "devops", + "parameters": [ + { + "name": "datasetType", + "type": "string", + "description": "Type of dataset to generate, e.g., 'deploymentLogs', 'infrastructureMetrics', or 'cicdPipelineResults'.", + "required": true, + "defaultValue": "" + }, + { + "name": "recordCount", + "type": "number", + "description": "Number of data records to generate in the dataset.", + "required": true, + "defaultValue": "1000" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output data format, such as 'json', 'csv', or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include realistic timestamps in dataset records.", + "required": false, + "defaultValue": "true" + }, + { + "name": "noiseLevel", + "type": "number", + "description": "Probability (0 to 1) of injecting noise or anomalies to simulate errors or outliers in the dataset.", + "required": false, + "defaultValue": "0.05" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated dataset string and metadata such as format and total record count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent requires realistic synthetic datasets mimicking DevOps operational data like logs or metrics for testing, simulation, or training ML models without exposing real sensitive data.", + "limitations": "Cannot generate actual live data or connect to real systems; synthetic data may not perfectly match complex real-world patterns.", + "examples": [ + "Generate 5000 deployment log records in JSON format with timestamps and moderate noise.", + "Create infrastructure metrics dataset with 10000 records in CSV format without noise.", + "Produce CI/CD pipeline results dataset of 2000 records in YAML including timestamps." + ] + }, + "tags": [ + "devops", + "dataset", + "synthetic data", + "logging", + "infrastructure", + "metrics", + "CI/CD" + ], + "examples": [ + { + "inputJson": "{\"datasetType\":\"deploymentLogs\",\"recordCount\":5000,\"outputFormat\":\"json\",\"includeTimestamps\":true,\"noiseLevel\":0.1}", + "description": "Generate 5000 deployment log records with timestamps in JSON format, including 10% noise." + }, + { + "inputJson": "{\"datasetType\":\"infrastructureMetrics\",\"recordCount\":10000,\"outputFormat\":\"csv\",\"includeTimestamps\":true,\"noiseLevel\":0}", + "description": "Create 10000 infrastructure metric records in CSV format with realistic timestamps, no noise." + }, + { + "inputJson": "{\"datasetType\":\"cicdPipelineResults\",\"recordCount\":2000,\"outputFormat\":\"yaml\",\"includeTimestamps\":true,\"noiseLevel\":0.05}", + "description": "Produce 2000 CI/CD pipeline results in YAML format with timestamps and minimal noise." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "devops.createText", + "description": "Generates customizable text content for deployment scripts, configuration files, commit messages, or documentation based on specified templates and input variables. Accepts template strings with placeholders and variable mappings, processes substitutions, and outputs finalized text suited for devops automation or documentation tasks.", + "category": "devops", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "Template string containing placeholders in {{variable}} format for substitution.", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs for variables to replace placeholders in the template.", + "required": true, + "defaultValue": "" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the generated text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of output text; options include 'plain' for plain text or 'markdown' for markdown formatting.", + "required": false, + "defaultValue": "plain" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text content with all variable substitutions applied and formatted as specified." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate customized text artifacts in a devops context, such as dynamic configuration snippets, templated deployment messages, or auto-generated documentation sections, by providing a template and variable data. This enables automation agents to produce consistent, context-aware texts for CI/CD pipelines or infrastructure automation.", + "limitations": "This tool does not perform complex logic or conditional processing within templates beyond direct variable substitution. It cannot execute scripts or parse non-textual formats. It also does not validate text correctness or syntax beyond substitution.", + "examples": [ + "Generate a deployment notification message inserting environment and version variables.", + "Create a configuration snippet by substituting parameters into a YAML template.", + "Produce a formatted markdown changelog entry from given version and change data." + ] + }, + "tags": [ + "devops", + "text-generation", + "template", + "automation", + "config", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"template\":\"Deploying version {{version}} to {{environment}} environment.\",\"variables\":{\"version\":\"1.2.3\",\"environment\":\"production\"},\"trimWhitespace\":true,\"outputFormat\":\"plain\"}", + "description": "Generate a simple deployment message with version and environment substituted." + }, + { + "inputJson": "{\"template\":\"# Configuration for {{appName}}\\nport: {{port}}\\nhost: {{host}}\",\"variables\":{\"appName\":\"WebServer\",\"port\":\"8080\",\"host\":\"0.0.0.0\"},\"trimWhitespace\":false,\"outputFormat\":\"plain\"}", + "description": "Generate a configuration snippet using application name, port, and host variables." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "devops.createDataset", + "description": "Creates a structured dataset to be used in deployment pipelines or infrastructure automation workflows. Accepts schema definitions, data source inputs, and transformation rules, then outputs a validated dataset file in formats like JSON or CSV for integration with CI/CD tools.", + "category": "devops", + "parameters": [ + { + "name": "schemaDefinition", + "type": "object", + "description": "Defines the dataset schema including field names, data types, and constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "Array of data source objects specifying origin (APIs, files, databases) and retrieval parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationRules", + "type": "array", + "description": "List of transformation rules to preprocess or clean data before output.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output dataset format. Supported: 'json', 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the dataset against the schema before outputting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the dataset file content as string, metadata including record count, format, and schema validation status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate structured datasets that integrate deployment or infrastructure automation processes, especially when gathering data from various sources to feed into CI/CD pipelines or monitoring dashboards. It helps in automating dataset creation with schema validation and transformation steps.", + "limitations": "This tool does not automatically connect to unsupported or proprietary data sources. It does not run deployments itself or manage runtime environments. It focuses solely on dataset generation and validation.", + "examples": [ + "Create a JSON dataset from API and CSV file sources with schema validation for deployment metrics.", + "Generate a CSV dataset by transforming raw infrastructure monitoring data with custom parsing rules.", + "Build a dataset schema for deployment logs and output validated JSON for integration with automation tools." + ] + }, + "tags": [ + "devops", + "dataset", + "automation", + "ci/cd", + "infrastructure", + "data-processing", + "validation" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinition\":{\"fields\":[{\"name\":\"timestamp\",\"type\":\"string\"},{\"name\":\"status\",\"type\":\"string\"},{\"name\":\"duration_ms\",\"type\":\"number\"}]},\"dataSources\":[{\"type\":\"api\",\"endpoint\":\"https://api.example.com/deployments\",\"method\":\"GET\"},{\"type\":\"file\",\"path\":\"/var/log/deployments.log\",\"format\":\"text\"}],\"transformationRules\":[{\"field\":\"timestamp\",\"operation\":\"formatDate\",\"params\":{\"format\":\"ISO\"}}],\"outputFormat\":\"json\",\"validateSchema\":true}", + "description": "Generate a JSON dataset from API deployment data and local logs with formatted timestamps." + }, + { + "inputJson": "{\"schemaDefinition\":{\"fields\":[{\"name\":\"instanceId\",\"type\":\"string\"},{\"name\":\"cpuUsage\",\"type\":\"number\"},{\"name\":\"memoryUsage\",\"type\":\"number\"}]},\"dataSources\":[{\"type\":\"database\",\"connectionString\":\"Server=db1;Database=metrics;\",\"query\":\"SELECT * FROM UsageStats\"}],\"transformationRules\":[],\"outputFormat\":\"csv\",\"validateSchema\":true}", + "description": "Create a CSV dataset from database query results representing infrastructure usage metrics." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "devops.createJSON", + "description": "Generates a JSON configuration file for deployment or infrastructure automation based on provided parameters. Accepts key-value pairs, nested objects, and arrays to build structured JSON output suitable for CI/CD pipelines or deployment scripts.", + "category": "devops", + "parameters": [ + { + "name": "configName", + "type": "string", + "description": "Name of the configuration or JSON file to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "object", + "description": "An object representing key-value pairs, arrays, or nested objects that define the JSON content.", + "required": true, + "defaultValue": "" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Determines if the JSON output should be formatted with indentation and line breaks for readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Specifies whether to include metadata such as timestamp and author information in the JSON output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "An optional object containing metadata fields like author, version, or date to be embedded if includeMetadata is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JSON string under 'jsonString' and the file name under 'fileName'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create valid JSON configuration files for deployment automation or infrastructure scripts, especially when configurations vary dynamically based on input parameters. It helps generate reliably formatted JSON content incorporating nested structures and optional metadata.", + "limitations": "This tool does not validate schema compliance beyond JSON syntax correctness; it does not handle file system operations like saving files to disk.", + "examples": [ + "Create a JSON deployment manifest with nested parameters and pretty print enabled.", + "Generate a JSON config file including metadata such as author and timestamp.", + "Produce a minimal JSON configuration from simple parameters without metadata." + ] + }, + "tags": [ + "devops", + "json", + "configuration", + "deployment", + "automation", + "ci/cd", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"configName\":\"deployConfig\",\"parameters\":{\"env\":\"production\",\"replicas\":3,\"services\":[\"auth\",\"billing\",\"frontend\"]},\"prettyPrint\":true,\"includeMetadata\":true,\"metadata\":{\"author\":\"DevOps Team\",\"version\":\"1.2.0\"}}", + "description": "Generate a pretty-printed JSON deployment configuration including author metadata." + }, + { + "inputJson": "{\"configName\":\"infraSettings\",\"parameters\":{\"region\":\"us-east-1\",\"instanceType\":\"t3.medium\",\"autoScaling\":{\"enabled\":true,\"min\":2,\"max\":5}},\"prettyPrint\":false}", + "description": "Create a compact JSON configuration for infrastructure settings without metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "devops.createIssue", + "description": "Creates a new issue in a specified issue tracking system (e.g., GitHub, Jira) using provided details such as title, description, labels, assignees, and priority. Accepts issue details as input, processes API calls to the issue tracker, and returns the created issue's ID and URL.", + "category": "devops", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or summary of the issue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the issue, including steps to reproduce or context.", + "required": false, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "List of labels or tags to categorize the issue.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "assignees", + "type": "array", + "description": "List of usernames to assign the issue to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the issue (e.g., low, medium, high).", + "required": false, + "defaultValue": "" + }, + { + "name": "issueTrackerType", + "type": "string", + "description": "Type of issue tracker to create issue in (e.g., github, jira).", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryOrProject", + "type": "string", + "description": "The repository name (for GitHub) or project key (for Jira) where the issue will be created.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created issue's unique ID and URL for reference." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automatically create a formal issue record in a code repository or project management system as part of a continuous integration pipeline, incident response, or automated task tracking. It helps to log problems or tasks directly from automated systems into issue trackers, facilitating triage and resolution.", + "limitations": "This tool does not support issue creation in all possible issue tracking systems. It requires valid authentication and permissions to the target repository or project. It cannot update existing issues or handle complex issue workflows like transitions or custom fields not supported in parameters.", + "examples": [ + "Create a new issue in GitHub with title and description and assign it to a user.", + "Log a high priority bug in Jira project with specific labels.", + "Add a feature request issue in GitHub repository with minimal detail." + ] + }, + "tags": [ + "devops", + "issue tracking", + "automation", + "issue creation", + "CI", + "bug tracking", + "task management" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Bug in login flow\",\"description\":\"Users are unable to login using Facebook OAuth\",\"labels\":[\"bug\",\"login\"],\"assignees\":[\"dev1\"],\"priority\":\"high\",\"issueTrackerType\":\"github\",\"repositoryOrProject\":\"org/repo\"}", + "description": "Create a high priority bug issue in a GitHub repository with labels and assignee." + }, + { + "inputJson": "{\"title\":\"Add forgot password feature\",\"description\":\"Implement a forgot password feature via email link.\",\"labels\":[\"enhancement\"],\"assignees\":[],\"priority\":\"medium\",\"issueTrackerType\":\"jira\",\"repositoryOrProject\":\"PROJ\"}", + "description": "Create a feature request issue in a Jira project with an enhancement label and no assignee." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "frontend-development.analyzeLead", + "description": "Analyzes frontend lead data to assess lead quality and engagement metrics. Accepts lead information including contact details, source, interaction history, and user behavior data. Processes this data to score leads on engagement, likelihood to convert, and readiness for sales follow-up. Outputs a detailed report with lead quality scores, engagement insights, and recommendations.", + "category": "frontend-development", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "An object containing lead information including contact, source, and interaction history. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "engagementWindowDays", + "type": "number", + "description": "Number of days to consider for engagement metrics analysis. Defaults to 30 days if not specified.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeBehaviorData", + "type": "boolean", + "description": "Flag to indicate if user behavior data such as page views and clicks should be included in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sourceFilter", + "type": "array", + "description": "Array of strings to filter leads by their source channels (e.g., ['email', 'social_media']). If empty, all sources are included.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the lead quality score (0-100), engagement metrics summary, conversion likelihood percentage, and tailored recommendations for sales follow-up or nurturing." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to evaluate frontend lead data to prioritize and segment leads based on engagement and conversion potential. Useful in scenarios where frontend-generated leads require scoring before passing to sales or marketing automation systems.", + "limitations": "This tool does not perform customer relationship management or store lead data permanently. It requires well-structured and recent lead information to produce accurate analysis. It cannot predict actual sales outcomes, only estimate based on input data.", + "examples": [ + "Analyze lead data to determine which leads are most engaged over the past 14 days.", + "Filter leads from social media sources and include behavior data for scoring.", + "Get recommendations for follow-up actions on leads generated from a landing page campaign." + ] + }, + "tags": [ + "frontend", + "lead", + "analysis", + "engagement", + "scoring", + "sales", + "marketing", + "data" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"contact\":{\"email\":\"jane.doe@example.com\",\"phone\":\"123-456-7890\"},\"source\":\"email_campaign\",\"interactions\":[{\"type\":\"email_open\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"type\":\"website_visit\",\"page\":\"pricing\",\"timestamp\":\"2024-05-02T12:30:00Z\"}],\"behaviorData\":{\"pageViews\":5,\"clicks\":3}},\"engagementWindowDays\":14,\"includeBehaviorData\":true,\"sourceFilter\":[\"email_campaign\"]}", + "description": "Analyze a lead from an email campaign focusing on the last 14 days of engagement including page views and clicks." + }, + { + "inputJson": "{\"leadData\":{\"contact\":{\"email\":\"john.smith@example.com\"},\"source\":\"social_media\",\"interactions\":[{\"type\":\"ad_click\",\"timestamp\":\"2024-04-25T09:00:00Z\"}]},\"engagementWindowDays\":30,\"includeBehaviorData\":false,\"sourceFilter\":[\"social_media\"]}", + "description": "Evaluate a social media lead skipping detailed behavior data, considering 30 days engagement window." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "frontend-development.analyzeCSV", + "description": "This tool accepts CSV-formatted data as a string input, parses the data, and performs a detailed analysis including detecting data types, summarizing columns with statistics such as mean, median, mode for numeric fields, frequency counts for categorical fields, and identifying missing or inconsistent data. It outputs a structured report detailing these insights to help frontend developers understand and visualize the dataset effectively.", + "category": "frontend-development", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "The raw CSV data as a string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character used to separate fields in the CSV data, e.g., comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Whether the first row contains column headers.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to analyze; processes full data if 0 or omitted.", + "required": false, + "defaultValue": "0" + }, + { + "name": "sampleRows", + "type": "boolean", + "description": "Whether to sample data rows randomly if maxRows is set and data is larger than maxRows.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing column summaries (data types, statistics, counts), missing data info, and overall dataset insights." + }, + "aiAgent": { + "useCase": "Use this tool when a frontend development agent needs to understand the structure and content of CSV datasets, such as for building tables, graphs, or data-driven UI components. It helps to determine data types, distributions, and quality aspects before rendering or transforming data on client-side interfaces.", + "limitations": "This tool does not perform data cleansing or transformation beyond basic missing data detection. It is not designed for extremely large datasets that exceed memory limits or for deeply nested or non-tabular data structures.", + "examples": [ + "Analyze the CSV string of user purchase records to understand numeric and categorical columns for dashboard visualizations.", + "Given a CSV export from a contact list, detect data anomalies and missing fields before importing into a web app.", + "Summarize sales data CSV to get statistical insights and data types for dynamic report generation in a frontend application." + ] + }, + "tags": [ + "frontend", + "CSV", + "data-analysis", + "parsing", + "statistics", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"name,age,gender\\nAlice,30,F\\nBob,25,M\\nCharlie,,M\\nDana,22,F\",\"delimiter\":\",\",\"hasHeader\":true,\"maxRows\":0,\"sampleRows\":false}", + "description": "Analyze a small CSV dataset of people with some missing age values." + }, + { + "inputJson": "{\"csvData\":\"product;price;stock\\nLaptop;1200;15\\nPhone;800;30\\nTablet;600;\\nMonitor;300;20\",\"delimiter\":\";\",\"hasHeader\":true,\"maxRows\":0,\"sampleRows\":false}", + "description": "Analyze CSV using semicolon delimiter with missing stock quantity value." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "frontend-development.draftEmail", + "description": "Creates a customized email draft based on provided recipient details, subject, message body template, and optional personalization data. Processes placeholders in the template and outputs a ready-to-send email object including subject, body text, and metadata for frontend display or further editing.", + "category": "frontend-development", + "parameters": [ + { + "name": "recipient", + "type": "object", + "description": "Email recipient information including name and email address.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyTemplate", + "type": "string", + "description": "Email body text possibly containing placeholders for personalization, e.g., {{name}}.", + "required": true, + "defaultValue": "" + }, + { + "name": "personalizationData", + "type": "object", + "description": "Key-value pairs used to replace placeholders in the body template for personalization.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Flag to append a default signature to the email body if true.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An email draft object containing resolved subject, body with placeholders replaced, recipient info, and a flag indicating if signature was appended." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate dynamic, personalized email drafts for frontend applications such as customer support, marketing outreach, or notifications without manually assembling email content. It streamlines producing customized emails by merging template placeholders with user-specific data.", + "limitations": "Does not handle email sending or advanced HTML email formatting. Placeholder syntax is simple and does not support complex logic or conditional content.", + "examples": [ + "Draft a welcome email to a new user including their first name in the greeting.", + "Create a reminder email for an appointment with date and time personalized per recipient.", + "Generate a batch of emails with unique discount codes inserted into the message body." + ] + }, + "tags": [ + "email", + "draft", + "frontend", + "personalization", + "templating", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipient\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\"},\"subject\":\"Welcome to Our Service!\",\"bodyTemplate\":\"Hello {{name}},\\nThank you for signing up.\",\"personalizationData\":{\"name\":\"Jane\"},\"includeSignature\":true}", + "description": "Drafts a welcome email personalized with the recipient's name including a default signature." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "frontend-development.generateMetric", + "description": "Generates a frontend performance or user interaction metric based on supplied user event logs or performance data. Accepts input data as an array of event objects, applies optional filters and aggregation, then outputs calculated metric values like session duration, bounce rate, or custom event counts in a structured format.", + "category": "frontend-development", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of user event objects containing timestamp, type, and relevant metadata for metric calculations.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "Specifies which metric to generate, e.g., 'sessionDuration', 'bounceRate', 'customEventCount'.", + "required": true, + "defaultValue": "" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional filtering rules to include only certain events or users based on properties like event type, user ID, or time range.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationPeriod", + "type": "string", + "description": "Optional aggregation interval such as 'hourly', 'daily', or 'weekly' to group metric results accordingly.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "customEventName", + "type": "string", + "description": "For 'customEventCount' metric type, specifies the event name to count occurrences of.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the computed metric values, aggregated per the specified period, including timestamps and numeric results for easy integration with frontend dashboards." + }, + "aiAgent": { + "useCase": "Use this tool when needing to compute frontend-related metrics like session durations, bounce rates, or counts of specific user interactions from raw event logs. It's ideal for dynamically generating analytics in single page applications or user behavior tracking systems.", + "limitations": "Cannot process backend metrics or server-side analytics; metric types are limited to predefined frontend user interaction metrics; requires well-structured input data to function correctly.", + "examples": [ + "Generate daily session duration metrics from raw user event logs.", + "Calculate bounce rate filtered by a date range for a marketing campaign.", + "Count occurrences of a custom button click event aggregated hourly." + ] + }, + "tags": [ + "frontend-development", + "metrics", + "analytics", + "user-behavior", + "performance", + "aggregation" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"timestamp\":1685678900000,\"type\":\"pageView\",\"userId\":\"user1\"},{\"timestamp\":1685678960000,\"type\":\"pageView\",\"userId\":\"user1\"}],\"metricType\":\"sessionDuration\",\"aggregationPeriod\":\"daily\"}", + "description": "Calculate daily session duration from page view events." + }, + { + "inputJson": "{\"eventData\":[{\"timestamp\":1685678900000,\"type\":\"pageView\",\"userId\":\"user1\"},{\"timestamp\":1685678910000,\"type\":\"exitPage\",\"userId\":\"user1\"}],\"metricType\":\"bounceRate\",\"filterCriteria\":{\"startDate\":\"2024-06-01\",\"endDate\":\"2024-06-07\"}}", + "description": "Compute bounce rate for events within a specified week." + }, + { + "inputJson": "{\"eventData\":[{\"timestamp\":1685678900000,\"type\":\"click\",\"eventName\":\"signupButton\",\"userId\":\"user2\"},{\"timestamp\":1685679000000,\"type\":\"click\",\"eventName\":\"signupButton\",\"userId\":\"user3\"}],\"metricType\":\"customEventCount\",\"customEventName\":\"signupButton\",\"aggregationPeriod\":\"hourly\"}", + "description": "Count occurrences of 'signupButton' click event aggregated hourly." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "frontend-development.generateSummary", + "description": "Generates a concise, human-readable summary of given textual content typically found in frontend document domains such as component documentation, UI design specs, or user interface guides. Accepts raw text input, processes key information extraction, and outputs a brief summary highlighting main points.", + "category": "frontend-development", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The raw textual content to summarize, such as documentation or specification text.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the summary output in characters.", + "required": false, + "defaultValue": "300" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "If true, the summary includes key highlights or bullet points extracted from the content.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and optionally key highlights if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a digest or overview of lengthy frontend development documents, such as component guides or UI spec files, to improve readability and understanding. Ideal for summarizing complex or verbose content to support UI/UX planning or developer onboarding.", + "limitations": "Cannot generate summaries for non-textual content such as images or videos. May miss nuanced domain-specific details if content is highly technical or ambiguous.", + "examples": [ + "Generate a short summary of a React component's documentation to include in a project README.", + "Summarize UI design guidelines from a long specification document to share with the design team.", + "Create a brief overview of frontend testing procedures detailed in a markdown file." + ] + }, + "tags": [ + "frontend", + "summary", + "documentation", + "text-processing", + "UI", + "UX", + "component", + "generate" + ], + "examples": [ + { + "inputJson": "{\"content\":\"This component renders a reusable button with customizable styles and event handlers. It supports multiple states including disabled, loading, and active. The button can be integrated with form libraries for validation awareness.\",\"maxLength\":150,\"includeHighlights\":true}", + "description": "Summarize a React button component documentation with key highlights." + }, + { + "inputJson": "{\"content\":\"Our frontend UI guidelines outline typography, color palettes, spacing rules, and accessibility standards to ensure consistency across applications.\",\"maxLength\":200,\"includeHighlights\":false}", + "description": "Generate a concise summary of UI guidelines without highlights." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "backend-development.analyzePayment", + "description": "Analyzes payment transaction data from various input formats to identify patterns such as payment success rates, failure causes, fraud indicators, and overall transaction metrics, returning a comprehensive analysis report with statistics and insights.", + "category": "backend-development", + "parameters": [ + { + "name": "paymentData", + "type": "array", + "description": "An array of payment transaction objects to analyze, each containing details like amount, status, method, date, and user info.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with startDate and endDate in ISO 8601 format to limit analysis to specific periods.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFraudDetection", + "type": "boolean", + "description": "Flag indicating whether to include fraud detection analysis based on transaction anomalies.", + "required": false, + "defaultValue": "false" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional field name (e.g., 'paymentMethod', 'userId') to group analysis results by distinct values.", + "required": false, + "defaultValue": "" + }, + { + "name": "minTransactionAmount", + "type": "number", + "description": "Optional minimum transaction amount filter to exclude transactions below this value from analysis.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing aggregated payment metrics including total transactions, success rate, failure reasons breakdown, detected fraud alerts, grouped summaries (if specified), and detailed statistics." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze bulk payment transaction data to extract actionable metrics such as payment success/failure rates, common failure reasons, fraud risk indicators, or trends over time, supporting backend financial analytics and operational monitoring.", + "limitations": "This tool does not process or normalize raw payment gateway logs; input data must be pre-structured into transaction objects. It cannot execute payment processing or refunds, only analysis.", + "examples": [ + "Analyze payment transactions from last month grouped by payment method with fraud detection enabled.", + "Get payment failure causes statistics for transactions above $50 in the past quarter.", + "Calculate overall success rate and fraud alerts for user-specific transaction history." + ] + }, + "tags": [ + "payment", + "analysis", + "backend", + "fraud-detection", + "financial", + "transaction", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"paymentData\":[{\"transactionId\":\"tx1\",\"amount\":100,\"status\":\"success\",\"paymentMethod\":\"card\",\"date\":\"2024-05-01T10:00:00Z\",\"userId\":\"user123\"},{\"transactionId\":\"tx2\",\"amount\":50,\"status\":\"failed\",\"failureReason\":\"insufficient_funds\",\"paymentMethod\":\"paypal\",\"date\":\"2024-05-02T11:30:00Z\",\"userId\":\"user456\"}],\"dateRange\":{\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\"},\"includeFraudDetection\":true,\"groupBy\":\"paymentMethod\",\"minTransactionAmount\":10}", + "description": "Analyze May 2024 payments over $10, include fraud detection, group results by payment method." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "backend-development.analyzeComment", + "description": "Analyzes backend code comments or commit messages to extract key information, evaluate tone (e.g., positive, negative, neutral), detect potential issues like unclear communication, and summarize main points. Accepts a string input of a comment and optional context, returning structured analysis including sentiment, clarity score, keywords, and any detected improvement suggestions.", + "category": "backend-development", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The exact text content of the backend-related comment or commit message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextType", + "type": "string", + "description": "The type of comment, such as 'codeComment', 'commitMessage', or 'issueComment', to tailor analysis.", + "required": false, + "defaultValue": "codeComment" + }, + { + "name": "language", + "type": "string", + "description": "Programming or natural language of the comment text (e.g., 'en' for English) to improve linguistic analysis accuracy.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results: sentiment classification ('positive', 'neutral', 'negative'), clarity score (0-1), extracted keywords array, and optional improvement suggestions if clarity or sentiment indicate issues." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the quality and sentiment of backend development comments or commit messages. It helps in improving team communication, detecting potential misunderstandings, or automating review feedback based on comment analysis.", + "limitations": "The tool cannot interpret highly domain-specific jargon without context, nor can it replace human judgment fully. It focuses on textual analysis and does not execute code or verify technical accuracy.", + "examples": [ + "Analyze the sentiment and clarity of this backend code comment.", + "Summarize key points and check for improvement suggestions in a commit message.", + "Extract keywords and detect negative tone in issue discussion comments." + ] + }, + "tags": [ + "backend", + "comment-analysis", + "sentiment-analysis", + "code-comments", + "commit-messages", + "communication", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"Refactored the database connection handler to improve performance and reduce latency.\",\"contextType\":\"codeComment\",\"language\":\"en\"}", + "description": "Analyzing a typical backend code comment describing a refactor and performance improvement." + }, + { + "inputJson": "{\"commentText\":\"Fixed bug causing crashes when user ID is not found.\",\"contextType\":\"commitMessage\",\"language\":\"en\"}", + "description": "Analyzing a commit message describing a bug fix in backend logic." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "backend-development.downloadDataset", + "description": "Downloads a dataset from a specified remote source URL, optionally filtering by format and dataset size, and saves it to a local or cloud storage path. Accepts parameters to specify dataset URL, desired file format, size limits, and output location. Returns metadata about the downloaded dataset including file path and size.", + "category": "backend-development", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL from which to download the dataset (HTTP(S) or FTP).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Desired file format to download (e.g., csv, json, xml). If empty, defaults to original format.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSizeMB", + "type": "number", + "description": "Maximum allowed dataset size to download, in megabytes. Download aborts if size exceeds this limit. 0 means no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputPath", + "type": "string", + "description": "Local or cloud storage file path where the downloaded dataset will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata file describing the dataset alongside the data file.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing details about the downloaded dataset, including actual file path, file size in MB, format, and any metadata if included." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically obtain datasets from public or private online repositories or APIs, customizing download parameters like format and size, and saving for backend processing or analysis. It assists in automating dataset acquisition workflows.", + "limitations": "Does not perform dataset content validation or conversion beyond simple format selection. It cannot authenticate complex API endpoints requiring OAuth unless embedded in sourceUrl. Does not stream partial downloads or support resumable downloads.", + "examples": [ + "Download the latest CSV-format housing dataset from a remote FTP server to local storage.", + "Fetch a JSON dataset under 100MB from a public HTTP URL and save it with metadata included.", + "Download an XML dataset from a given URL, saving it to a cloud path without size restrictions." + ] + }, + "tags": [ + "dataset", + "download", + "backend", + "data-acquisition", + "storage" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/data/housing.csv\",\"fileFormat\":\"csv\",\"maxSizeMB\":50,\"outputPath\":\"/data/housing.csv\",\"includeMetadata\":true}", + "description": "Download a CSV housing dataset from HTTP URL, max 50MB, saving locally and including metadata." + }, + { + "inputJson": "{\"sourceUrl\":\"ftp://ftp.exampledata.org/datasets/weather.json\",\"fileFormat\":\"json\",\"maxSizeMB\":0,\"outputPath\":\"/datasets/weather.json\",\"includeMetadata\":false}", + "description": "Download a JSON weather dataset from FTP without size limit, saving locally without metadata." + }, + { + "inputJson": "{\"sourceUrl\":\"https://publicdata.org/cities.xml\",\"fileFormat\":\"xml\",\"maxSizeMB\":10,\"outputPath\":\"s3://mybucket/cities.xml\",\"includeMetadata\":true}", + "description": "Download an XML dataset of cities from a public URL, max 10MB, saving to S3 bucket including metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "backend-development.downloadImage", + "description": "Downloads an image from a specified URL and saves it to a local or cloud storage path. Accepts image URL and target file path as inputs, supports optional headers for authentication, handles common image formats, and produces a result indicating success status and saved file path.", + "category": "backend-development", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The direct URL of the image to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local or cloud storage path where the image will be saved, including filename and extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers for the download request (e.g., authorization tokens).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before failing.", + "required": false, + "defaultValue": "30" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the destination file if it already exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success boolean, saved file path if successful, and error message if failed." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to programmatically download images from the internet or secured endpoints to local or cloud storage during backend development or automation tasks. It is helpful for acquiring media assets, caching images, or processing pipelines that require image files locally.", + "limitations": "Cannot download resources other than image files effectively; does not support advanced resume or chunked downloads; requires valid reachable URLs and permissions for destination storage path.", + "examples": [ + "Download a jpeg image from a public URL to local filesystem.", + "Download a PNG image from a secured endpoint with authorization headers.", + "Download an image and overwrite existing file if present." + ] + }, + "tags": [ + "download", + "image", + "backend", + "media", + "file-management", + "http" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/images/sample.jpg\",\"destinationPath\":\"/tmp/sample.jpg\"}", + "description": "Download a JPEG image from a public URL to local /tmp folder." + }, + { + "inputJson": "{\"imageUrl\":\"https://secure.api.com/image.png\",\"destinationPath\":\"cloud/bucket/image.png\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"overwrite\":true}", + "description": "Download a PNG image from a secured API with auth header, saving to cloud bucket and overwriting existing file." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "backend-development.uploadDataset", + "description": "Uploads a dataset file to a backend server for storage or processing. Accepts dataset input as a file path or a base64-encoded string, validates the file format (CSV, JSON, or Parquet), optionally transforms metadata, and stores it in the target database or file storage. Returns upload status and dataset identifier.", + "category": "backend-development", + "parameters": [ + { + "name": "datasetSource", + "type": "string", + "description": "The source of the dataset to upload; either a local file path or a base64-encoded dataset string.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the dataset file. Supported formats: 'csv', 'json', 'parquet'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetStorage", + "type": "string", + "description": "Destination storage type, e.g., 'database', 'fileStorage'.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata related to the dataset, such as schema description or tags.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing dataset with the same identifier if present.", + "required": false, + "defaultValue": "false" + }, + { + "name": "datasetId", + "type": "string", + "description": "Optional identifier for the dataset; if omitted, a new one will be generated.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the success status, dataset identifier, and message describing the operation outcome." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to store large datasets on a backend system during data integration or ingestion workflows. It handles file validation, format handling, metadata addition, and storage resolution automatically, allowing seamless dataset upload in backend development contexts.", + "limitations": "This tool does not perform dataset content validation beyond format checks, nor does it transform or analyze the dataset content itself beyond metadata. It relies on supported file formats and storage backends.", + "examples": [ + "Upload a CSV file located on the server to a database with metadata and specify overwriting existing entries.", + "Upload a base64-encoded JSON dataset string to file storage without overwriting existing dataset.", + "Upload a Parquet file with autogenerated dataset ID to a database with no extra metadata." + ] + }, + "tags": [ + "backend", + "dataset", + "upload", + "file", + "storage", + "data-management" + ], + "examples": [ + { + "inputJson": "{\"datasetSource\":\"/data/sales_2023.csv\",\"fileFormat\":\"csv\",\"targetStorage\":\"database\",\"metadata\":{\"source\":\"sales system\",\"year\":2023},\"overwriteExisting\":true,\"datasetId\":\"sales_2023\"}", + "description": "Uploading a CSV file from server path to the database, providing metadata and enabling overwrite." + }, + { + "inputJson": "{\"datasetSource\":\"eyJmb28iOiJiYXIifQ==\",\"fileFormat\":\"json\",\"targetStorage\":\"fileStorage\",\"metadata\":{},\"overwriteExisting\":false}", + "description": "Uploading a base64-encoded JSON dataset string to the file storage without overwriting." + }, + { + "inputJson": "{\"datasetSource\":\"/datasets/large_data.parquet\",\"fileFormat\":\"parquet\",\"targetStorage\":\"database\"}", + "description": "Uploading a Parquet file from path to database with autogenerated dataset ID and no metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "backend-development.formatAPI", + "description": "Formats a given API specification or partial API definition into a clean, standardized structure according to selected API specification standards (e.g., OpenAPI 3.0, Swagger 2.0). Accepts input as JSON or YAML defining API endpoints, methods, parameters, and outputs a formatted, validated API specification in string format.", + "category": "backend-development", + "parameters": [ + { + "name": "apiSpec", + "type": "string", + "description": "The raw API specification or fragment in JSON or YAML format to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input specification: 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "specVersion", + "type": "string", + "description": "Target API specification version for formatting, e.g., 'OpenAPI 3.0', 'Swagger 2.0'.", + "required": false, + "defaultValue": "OpenAPI 3.0" + }, + { + "name": "includeDefaults", + "type": "boolean", + "description": "Whether to include default values for missing but optional fields in the formatted output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validate", + "type": "boolean", + "description": "Whether to perform validation on the input API spec before formatting and output errors if invalid.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted API specification string and a validation result if requested." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent receives an incomplete, unstructured, or inconsistently formatted API specification and needs to produce a clean, standardized, and optionally validated API description in JSON or YAML. It assists in generating well-formed API documents for documentation, client SDK generation, or API gateway configuration.", + "limitations": "Cannot interpret or create missing API semantics; only formats and validates existing input. Does not generate API definitions from plain text or incomplete descriptions. Output depends on input completeness and correctness.", + "examples": [ + "Format a raw JSON OpenAPI fragment into a clean OpenAPI 3.0 JSON document.", + "Convert a Swagger 2.0 YAML API definition into formatted JSON and validate the structure.", + "Given an API spec missing some optional fields, include defaults in the output." + ] + }, + "tags": [ + "formatting", + "api-spec", + "openapi", + "swagger", + "backend-development", + "validation" + ], + "examples": [ + { + "inputJson": "{\"apiSpec\":\"{\\\"paths\\\":{\\\"/pets\\\":{\\\"get\\\":{\\\"summary\\\":\\\"List pets\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"A list of pets.\\\"}}}}}}\",\"inputFormat\":\"json\",\"outputFormat\":\"json\",\"specVersion\":\"OpenAPI 3.0\",\"includeDefaults\":true,\"validate\":true}", + "description": "Format a minimal, valid OpenAPI 3.0 JSON fragment for /pets GET endpoint." + }, + { + "inputJson": "{\"apiSpec\":\"openapi: 3.0.0\\npaths:\\n /users:\\n post:\\n summary: Create user\\n responses:\\n '201':\\n description: Created user\\n\",\"inputFormat\":\"yaml\",\"outputFormat\":\"json\",\"specVersion\":\"OpenAPI 3.0\",\"includeDefaults\":false,\"validate\":true}", + "description": "Format a YAML OpenAPI 3.0 spec fragment into JSON without adding default values." + }, + { + "inputJson": "{\"apiSpec\":\"{\\\"swagger\\\":\\\"2.0\\\",\\\"paths\\\":{\\\"/login\\\":{\\\"post\\\":{\\\"summary\\\":\\\"Log in user\\\",\\\"responses\\\":{\\\"200\\\":{\\\"description\\\":\\\"Successful login\\\"}}}}}}\",\"inputFormat\":\"json\",\"outputFormat\":\"yaml\",\"specVersion\":\"Swagger 2.0\",\"includeDefaults\":true,\"validate\":true}", + "description": "Convert JSON Swagger 2.0 API spec fragment to formatted YAML." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "backend-development.formatDataset", + "description": "Formats a raw dataset provided as an array of objects into a structured JSON output according to specified formatting options including filtering, sorting, and field mapping. Accepts dataset input and formatting parameters, then returns a prepared dataset ready for API responses or further backend processing.", + "category": "backend-development", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "The input dataset as an array of objects to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional criteria to filter dataset objects by key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sortBy", + "type": "string", + "description": "The field name to sort the dataset by.", + "required": false, + "defaultValue": "" + }, + { + "name": "sortOrder", + "type": "string", + "description": "The sort order direction: 'asc' for ascending or 'desc' for descending.", + "required": false, + "defaultValue": "asc" + }, + { + "name": "fieldMapping", + "type": "object", + "description": "Optional object to rename dataset fields (keys) from original to desired output keys.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "limit", + "type": "number", + "description": "Optional maximum number of records to return after formatting.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include metadata such as total records count in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted dataset array under 'data' key, optionally including metadata (e.g., totalRecords) if requested." + }, + "aiAgent": { + "useCase": "Use this tool when backend data requires consistent formatting before outputting to clients or other services. Helpful to perform filtering, sorting, field renaming, and limiting dataset size dynamically to meet API contract or frontend expectations.", + "limitations": "This tool does not validate data schema or types beyond basic operations and assumes well-formed input. It does not perform complex transformations or aggregations beyond filtering and sorting.", + "examples": [ + "Format raw user data array to include only active users, sorted by last login date descending, with renamed fields for frontend consumption.", + "Limit dataset records to 100 and include metadata about total records.", + "Sort products dataset by price ascending and remap field names to new schema." + ] + }, + "tags": [ + "backend", + "data-formatting", + "dataset", + "filtering", + "sorting", + "field-mapping", + "api-preparation" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"id\":1,\"name\":\"Alice\",\"active\":true,\"lastLogin\":\"2024-05-01\"},{\"id\":2,\"name\":\"Bob\",\"active\":false,\"lastLogin\":\"2024-04-20\"},{\"id\":3,\"name\":\"Charlie\",\"active\":true,\"lastLogin\":\"2024-05-03\"}],\"filterCriteria\":{\"active\":true},\"sortBy\":\"lastLogin\",\"sortOrder\":\"desc\",\"fieldMapping\":{\"name\":\"username\"},\"limit\":2,\"includeMetadata\":true}", + "description": "Filters active users, sorts by last login descending, renames 'name' to 'username', limits to 2 results, and includes metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "backend-development.composeWord", + "description": "Generates a single word based on specified linguistic parameters such as length, prefix, suffix, and part of speech. Accepts inputs defining constraints and returns a word that matches them, suitable for naming, coding identifiers, or creative content generation.", + "category": "backend-development", + "parameters": [ + { + "name": "minLength", + "type": "number", + "description": "Minimum length of the generated word (inclusive).", + "required": false, + "defaultValue": "1" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word (inclusive).", + "required": false, + "defaultValue": "20" + }, + { + "name": "prefix", + "type": "string", + "description": "Optional starting characters the word should begin with.", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "Optional ending characters the word should end with.", + "required": false, + "defaultValue": "" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "Desired part of speech to guide word composition, e.g., noun, verb, adjective.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeLetters", + "type": "string", + "description": "Letters that must be included anywhere in the word.", + "required": false, + "defaultValue": "" + }, + { + "name": "excludeLetters", + "type": "string", + "description": "Letters that must not appear in the word.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated word as a string under the 'word' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate a valid, single word matching specific linguistic criteria for backend naming conventions, user-facing labels, or creative content generation. It helps generate words that follow syntactic constraints and semantic hints.", + "limitations": "This tool cannot guarantee semantical correctness beyond simple part-of-speech guidance, nor does it generate multi-word phrases. It also cannot ensure the word is unique in a given corpus.", + "examples": [ + "Generate a noun word starting with 'pro' and ending with 'er'", + "Create a word of length between 4 and 8 characters containing the letter 'x'", + "Compose an adjective word excluding the letter 'z'" + ] + }, + "tags": [ + "word-generation", + "language", + "backend-development", + "naming", + "content-generation", + "linguistics" + ], + "examples": [ + { + "inputJson": "{\"minLength\":5,\"maxLength\":8,\"prefix\":\"pro\",\"suffix\":\"er\",\"partOfSpeech\":\"noun\"}", + "description": "Generate a noun between 5 and 8 letters starting with 'pro' and ending with 'er'." + }, + { + "inputJson": "{\"minLength\":4,\"maxLength\":6,\"includeLetters\":\"x\",\"partOfSpeech\":\"\"}", + "description": "Compose a word between 4 and 6 letters containing the letter 'x'." + }, + { + "inputJson": "{\"minLength\":3,\"maxLength\":7,\"excludeLetters\":\"z\",\"partOfSpeech\":\"adjective\"}", + "description": "Create an adjective word of length 3 to 7 without the letter 'z'." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "backend-development.composeText", + "description": "This tool generates structured text content based on provided prompts and formatting options. It accepts input parameters such as the main topic, desired style, length, and optional sections, then composes a coherent and contextually relevant text output suitable for server-side content generation or API responses.", + "category": "backend-development", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme for the text to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Language style or tone for the text, e.g., formal, casual, technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the generated text in words.", + "required": false, + "defaultValue": "200" + }, + { + "name": "includeSections", + "type": "array", + "description": "Optional array of strings specifying particular sections or points to include in the text.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output text, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed text string and metadata such as word count." + }, + "aiAgent": { + "useCase": "Use this tool when needing to dynamically generate coherent, styled text content on a given topic within backend applications, such as auto-generating descriptions, summaries, or documentation text. It is ideal when inputs specify topic and style preferences but exact phrasing is not predetermined.", + "limitations": "This tool cannot create highly specialized professional documents requiring expert domain knowledge or verify factual accuracy. It does not synthesize data or perform real-time information retrieval.", + "examples": [ + "Generate a formal summary about server-side caching for API documentation.", + "Compose a casual explanatory text on asynchronous programming.", + "Create a 150-word technical description of a new backend feature." + ] + }, + "tags": [ + "text-generation", + "content-composition", + "backend", + "server-side", + "api" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"server-side caching\",\"style\":\"formal\",\"length\":150}", + "description": "Formal summary text about server-side caching" + }, + { + "inputJson": "{\"topic\":\"asynchronous programming\",\"style\":\"casual\",\"length\":100,\"language\":\"en\"}", + "description": "Casual explanation text on asynchronous programming" + }, + { + "inputJson": "{\"topic\":\"new backend feature\",\"length\":200,\"includeSections\":[\"overview\",\"benefits\"]}", + "description": "Technical description of a backend feature with overview and benefits sections" + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "backend-development.generateDashboard", + "description": "Generates a customizable analytics dashboard for backend applications by aggregating specified data sources and metrics, applying optional filters and visualization preferences. Inputs include data source configurations, selected metrics, date ranges, and visualization types. Outputs a JSON representation of the dashboard configuration and rendered data summaries ready for integration.", + "category": "backend-development", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "Array of data source configurations including type and connection details to fetch analytics data.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric keys to include in the dashboard, e.g., requestCount, errorRate.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Object specifying start and end times for filtering the data, with ISO8601 strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs to filter the dataset further, such as {statusCode: 200}.", + "required": false, + "defaultValue": "" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "Array of visualization types for each metric, e.g., 'lineChart', 'barChart', or 'table'.", + "required": false, + "defaultValue": "[\"table\"]" + }, + { + "name": "refreshIntervalSeconds", + "type": "number", + "description": "Number of seconds for automatic dashboard data refresh. 0 disables auto-refresh.", + "required": false, + "defaultValue": "0" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the generated dashboard.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the dashboard configuration including resolved data for each metric, visualization metadata, and summary statistics." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a backend analytics dashboard from various data sources and metrics, enabling real-time or static views of backend performance and usage. It helps automate visualization creation tailored to specified filters and date ranges.", + "limitations": "This tool does not perform advanced custom analytics beyond predefined metrics, nor supports frontend rendering beyond JSON dashboard configuration. It requires existing accessible data sources with compatible schema.", + "examples": [ + "Generate a dashboard showing request counts and error rates from a specified server log data source over the last 24 hours with line charts.", + "Create a static dashboard summarizing user signups and API usage statistics filtered by region.", + "Produce a dashboard with bar charts of average response times by endpoint, refreshing every 10 minutes." + ] + }, + "tags": [ + "backend", + "dashboard", + "analytics", + "data-visualization", + "API", + "metrics", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[{\"type\":\"elasticsearch\",\"config\":{\"index\":\"server-logs\"}}],\"metrics\":[\"requestCount\",\"errorRate\"],\"dateRange\":{\"start\":\"2024-04-01T00:00:00Z\",\"end\":\"2024-04-02T00:00:00Z\"},\"visualizationTypes\":[\"lineChart\",\"lineChart\"],\"title\":\"Server Logs Dashboard\"}", + "description": "Generate a line chart dashboard for request counts and error rates from Elasticsearch server logs over 1 day." + }, + { + "inputJson": "{\"dataSources\":[{\"type\":\"sql\",\"config\":{\"connectionString\":\"Server=myServer;Database=analytics;\"}}],\"metrics\":[\"userSignups\",\"apiCalls\"],\"filters\":{\"region\":\"us-east-1\"},\"visualizationTypes\":[\"barChart\",\"table\"],\"title\":\"Regional Metrics Summary\"}", + "description": "Create a regional metrics summary dashboard with bar chart and table visualizations from SQL data sources, filtered by region." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "backend-development.generateKPI", + "description": "Generates key performance indicators (KPIs) from raw backend service data by aggregating, filtering, and computing metrics based on user-defined parameters. Accepts JSON data logs or database query results as input, processes relevant fields to compute KPIs such as error rates, response times, and throughput, and outputs a structured report summarizing the KPIs.", + "category": "backend-development", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Raw backend data; can be logs or query results containing metrics and timestamps for KPI computation.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiMetrics", + "type": "array", + "description": "List of KPI metric names to calculate (e.g., ['errorRate', 'averageLatency']).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "object", + "description": "Time range for KPI aggregation with 'start' and 'end' ISO8601 timestamps.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByFields", + "type": "array", + "description": "Fields by which to group KPI calculations, e.g., by 'apiEndpoint' or 'region'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional thresholds for KPI alerts, e.g., {'errorRate':0.05}.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing calculated KPIs, grouped as specified, including metric values and timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate summarized performance or reliability metrics from backend system data for monitoring or reporting purposes. It is ideal for converting raw logs or data queries into actionable KPI reports.", + "limitations": "Does not collect raw data, only processes provided input; requires well-structured input data format; cannot predict future KPIs or perform anomaly detection inherently.", + "examples": [ + "Generate KPIs for error rate and latency over the past day grouped by API endpoint.", + "Calculate throughput and success rate from database query results within a custom time window.", + "Summarize average response times and error rates for given backend logs, alerting if thresholds are exceeded." + ] + }, + "tags": [ + "backend", + "analytics", + "KPI", + "metrics", + "performance", + "monitoring", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"logs\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"apiEndpoint\":\"/login\",\"status\":\"200\",\"responseTime\":120},{\"timestamp\":\"2024-06-01T12:01:00Z\",\"apiEndpoint\":\"/login\",\"status\":\"500\",\"responseTime\":0}]},\"kpiMetrics\":[\"errorRate\",\"averageResponseTime\"],\"timeWindow\":{\"start\":\"2024-06-01T00:00:00Z\",\"end\":\"2024-06-02T00:00:00Z\"},\"groupByFields\":[\"apiEndpoint\"]}", + "description": "Calculate error rate and average response time for each API endpoint over one day from log data." + }, + { + "inputJson": "{\"inputData\":{\"queryResults\":[{\"region\":\"us-east\",\"success\":true,\"responseMs\":150},{\"region\":\"us-east\",\"success\":false,\"responseMs\":0},{\"region\":\"eu-west\",\"success\":true,\"responseMs\":200}]},\"kpiMetrics\":[\"successRate\",\"averageLatency\"],\"groupByFields\":[\"region\"]}", + "description": "Generate success rate and average latency KPIs grouped by region from query results." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "backend-development.createInstance", + "description": "Creates a new cloud infrastructure instance (e.g., VM, container) with specified configurations such as instance type, operating system, region, and optional startup scripts. Accepts parameters defining hardware specs and environment setup, then provisions and returns instance details including ID, IP address, and status.", + "category": "backend-development", + "parameters": [ + { + "name": "instanceType", + "type": "string", + "description": "Type or size of the instance to create (e.g., t2.micro, standard-1)", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system image to use (e.g., ubuntu-20.04, windows-2019)", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where to create the instance (e.g., us-east-1, europe-west3)", + "required": true, + "defaultValue": "" + }, + { + "name": "startupScript", + "type": "string", + "description": "Optional shell script or commands to run on instance initialization", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "object", + "description": "Optional key-value pairs to tag and organize the instance", + "required": false, + "defaultValue": "" + }, + { + "name": "sshKeyName", + "type": "string", + "description": "Name of the SSH key to associate for secure access", + "required": false, + "defaultValue": "" + }, + { + "name": "diskSizeGb", + "type": "number", + "description": "Size in gigabytes for the root disk of the instance", + "required": false, + "defaultValue": "30" + }, + { + "name": "autoStart", + "type": "boolean", + "description": "Whether the instance should start immediately after creation", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Details of the created instance including instanceId, publicIp, status, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision new backend infrastructure for deploying applications or services. Examples include spinning up virtual machines or containers with custom configurations in a specified cloud region to scale backend capacity or isolate workloads.", + "limitations": "This tool does not handle configuration beyond instance creation such as network setup, load balancing, or advanced security policies. It also assumes viable credentials and permissions for cloud APIs are in place.", + "examples": [ + "Create a new Ubuntu VM with 2 CPUs in US East region initializing with a setup script.", + "Provision a small Windows server instance tagged for 'testing' that starts automatically.", + "Instantiate a Linux container with a custom SSH key and 50GB disk in Europe region." + ] + }, + "tags": [ + "backend", + "infrastructure", + "cloud", + "instance", + "provisioning", + "automation" + ], + "examples": [ + { + "inputJson": "{\"instanceType\":\"t2.micro\",\"operatingSystem\":\"ubuntu-20.04\",\"region\":\"us-east-1\",\"startupScript\":\"#!/bin/bash\\napt-get update -y\\napt-get install -y nginx\",\"tags\":{\"environment\":\"production\",\"project\":\"website\"},\"sshKeyName\":\"prod-key\",\"diskSizeGb\":20,\"autoStart\":true}", + "description": "Create a small Ubuntu server in US East with nginx installed and tagged for production website, auto-start enabled." + }, + { + "inputJson": "{\"instanceType\":\"standard-1\",\"operatingSystem\":\"windows-2019\",\"region\":\"europe-west3\",\"tags\":{\"environment\":\"staging\"},\"autoStart\":false}", + "description": "Create a standard Windows 2019 instance in Europe-west3 region for staging that does not start immediately." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "backend-development.createCredential", + "description": "Creates a new security credential (such as API keys, OAuth tokens, or username/password entries) for backend applications. Accepts parameters defining credential type, associated user or service ID, expiration settings, and scopes/permissions. Generates a secure credential output for authentication and authorization purposes.", + "category": "backend-development", + "parameters": [ + { + "name": "credentialType", + "type": "string", + "description": "Type of credential to create, e.g., 'apiKey', 'oauthToken', 'password'.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier for the user or service that will own this credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "scopes", + "type": "array", + "description": "Array of permission scopes or roles assigned to the credential.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "expiresInSeconds", + "type": "number", + "description": "Time in seconds after which the credential expires. Optional; zero or omitted means no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata to associate with this credential, such as description or application context.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag to immediately activate or deactivate the credential upon creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated credential value, its type, associated user ID, scopes, expiration timestamp (if any), creation timestamp, and active status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create backend security credentials for users or services, particularly for APIs needing controlled access with configurable scopes and expiration. It helps automate credential management processes within backend systems.", + "limitations": "Does not handle storage or persistence of credentials; integration with a secure vault or database is required separately. Cannot validate existing credentials or detect credential compromise.", + "examples": [ + "Create an API key for user 'user123' that expires in 1 day with read/write scopes.", + "Generate an OAuth token with no expiration for a service account with admin privileges.", + "Create a password credential with a description meta field and deactivate initially." + ] + }, + "tags": [ + "backend", + "security", + "credential", + "authentication", + "authorization", + "api-key", + "token", + "password" + ], + "examples": [ + { + "inputJson": "{\"credentialType\":\"apiKey\",\"userId\":\"user123\",\"scopes\":[\"read\",\"write\"],\"expiresInSeconds\":86400,\"isActive\":true}", + "description": "Create an API key for user 'user123' that expires in 24 hours with read and write permissions." + }, + { + "inputJson": "{\"credentialType\":\"oauthToken\",\"userId\":\"service456\",\"scopes\":[\"admin\"],\"expiresInSeconds\":0}", + "description": "Generate an OAuth token with no expiration for service 'service456' with admin scope." + }, + { + "inputJson": "{\"credentialType\":\"password\",\"userId\":\"user789\",\"metadata\":{\"description\":\"Temporary password for support access\"},\"isActive\":false}", + "description": "Create a password credential for user 'user789', marked inactive initially with a description metadata field." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "backend-development.createTable", + "description": "Creates a new database table by accepting a table name, column definitions, and optional settings like primary key or indexes. Processes the input schema to generate and execute the corresponding SQL create table statement, returning the success state and any error messages.", + "category": "backend-development", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "The name of the table to create in the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "An array of column definitions, each including name, type, and optional attributes like not null or default value.", + "required": true, + "defaultValue": "" + }, + { + "name": "primaryKey", + "type": "array", + "description": "Optional array of column names to set as the primary key for the table.", + "required": false, + "defaultValue": "" + }, + { + "name": "indexes", + "type": "array", + "description": "Optional array of index definitions, each specifying columns and index type (e.g., unique).", + "required": false, + "defaultValue": "" + }, + { + "name": "ifNotExists", + "type": "boolean", + "description": "Whether to include IF NOT EXISTS in the table creation to avoid errors if the table already exists.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success or failure, with created table metadata or error details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create structured tables in a relational database as part of backend setup or migrations. Ideal for agents automating database schema changes or generating tables based on input schemas.", + "limitations": "This tool does not support creation of tables in NoSQL databases, nor does it handle complex constraints beyond basic primary keys and indexes. It assumes a relational SQL-compatible backend and does not validate column data types beyond basic syntax.", + "examples": [ + "Create a user table with id, name, email columns and id as primary key.", + "Create a product table with id, description and price columns, and index on the price column.", + "Create an orders table only if it does not already exist, with composite primary key on order_id and product_id." + ] + }, + "tags": [ + "backend", + "database", + "table", + "create", + "schema", + "SQL" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"INTEGER\",\"notNull\":true,\"autoIncrement\":true},{\"name\":\"username\",\"type\":\"VARCHAR(50)\",\"notNull\":true},{\"name\":\"email\",\"type\":\"VARCHAR(100)\"}],\"primaryKey\":[\"id\"],\"ifNotExists\":true}", + "description": "Create a 'users' table with id as primary key, username and email columns." + }, + { + "inputJson": "{\"tableName\":\"products\",\"columns\":[{\"name\":\"product_id\",\"type\":\"INT\",\"notNull\":true},{\"name\":\"description\",\"type\":\"TEXT\"},{\"name\":\"price\",\"type\":\"DECIMAL(10,2)\"}],\"primaryKey\":[\"product_id\"],\"indexes\":[{\"columns\":[\"price\"],\"unique\":false}],\"ifNotExists\":true}", + "description": "Create a 'products' table with an index on the price column." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "web-development.analyzeReport", + "description": "Analyzes web development report documents in various formats (JSON, Markdown, HTML) to extract key performance metrics, identify issues, and generate a structured summary covering uptime, load times, error rates, and SEO insights. Returns a comprehensive analysis report object.", + "category": "web-development", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The raw content of the web development report document to analyze, provided as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentFormat", + "type": "string", + "description": "Format of the input report content, e.g., 'json', 'markdown', or 'html'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeSeoAnalysis", + "type": "boolean", + "description": "Whether to include SEO performance analysis in the results.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length (in characters) of the generated summary in the output.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "detailedErrorReport", + "type": "boolean", + "description": "If true, include detailed error logs and diagnostics in the analysis.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing extracted metrics such as uptime percentage, average load time, error rates, SEO scores, and a summary text with recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you have a web development report document and need to programmatically extract and synthesize performance metrics, issue diagnostics, and SEO insights to assist in decision-making or monitoring website health. It is ideal for automated workflows analyzing operational reports in various common document formats.", + "limitations": "This tool cannot interpret reports in unsupported formats or analyze reports lacking structured data. It does not fix issues or interact with live websites; it only analyzes static report content provided.", + "examples": [ + "Analyze this JSON report for uptime and errors.", + "Summarize the attached Markdown web report with SEO insights.", + "Provide detailed diagnostics from an HTML formatted report." + ] + }, + "tags": [ + "analysis", + "web-development", + "report", + "performance", + "seo", + "diagnostics" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"{\\\"uptime\\\":99.9,\\\"loadTimes\\\":[1.2,1.5,1.3],\\\"errors\\\":3,\\\"seoScore\\\":85}\",\"contentFormat\":\"json\",\"includeSeoAnalysis\":true,\"maxSummaryLength\":500,\"detailedErrorReport\":false}", + "description": "Analyze a JSON formatted web report containing uptime, load times, error count, and SEO score." + }, + { + "inputJson": "{\"reportContent\":\"# Web Report\\n\\n- Uptime: 99.7%\\n- Average Load Time: 1.4s\\n- Errors: 5\\n- SEO Score: 78\",\"contentFormat\":\"markdown\",\"includeSeoAnalysis\":true,\"maxSummaryLength\":300,\"detailedErrorReport\":true}", + "description": "Analyze a Markdown formatted report with detailed error diagnostics and SEO analysis." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "backend-development.createPayment", + "description": "Creates a payment record using provided payment details including amount, currency, payer and payee information, and payment method. Validates inputs, processes the payment creation logic, and returns a confirmation with payment ID, status, and timestamp.", + "category": "backend-development", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "The amount of money to be paid, must be positive.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code for the payment, e.g., USD, EUR.", + "required": true, + "defaultValue": "" + }, + { + "name": "payerId", + "type": "string", + "description": "Unique identifier of the payer.", + "required": true, + "defaultValue": "" + }, + { + "name": "payeeId", + "type": "string", + "description": "Unique identifier of the payee or recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "The method of payment, e.g., credit_card, bank_transfer, wallet.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description or note about the payment.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional extra metadata as key-value pairs attached to the payment record.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the paymentId (string), status (string, e.g., 'created'), and timestamp (ISO 8601 string) confirming the payment creation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create new payment records in backend server applications, especially when processing transactions between payers and payees. It is suitable for handling typical business payment flows requiring validation and confirmation data.", + "limitations": "This tool does not perform actual fund transfers or payment gateway integrations, it only creates and validates payment records within an application. It cannot handle refunds or payment cancellations.", + "examples": [ + "Create a payment of 100 USD from user A to user B using credit card.", + "Record a payment with metadata notes for auditing purposes.", + "Create a payment record specifying the payment method as a bank transfer." + ] + }, + "tags": [ + "backend", + "payment", + "transaction", + "create", + "finance", + "api" + ], + "examples": [ + { + "inputJson": "{\"amount\":150.75,\"currency\":\"USD\",\"payerId\":\"user123\",\"payeeId\":\"merchant456\",\"paymentMethod\":\"credit_card\",\"description\":\"Order #789 payment\"}", + "description": "Create a credit card payment of $150.75 from user123 to merchant456 with an order description." + }, + { + "inputJson": "{\"amount\":200,\"currency\":\"EUR\",\"payerId\":\"client01\",\"payeeId\":\"vendor22\",\"paymentMethod\":\"bank_transfer\",\"metadata\":{\"orderId\":\"ORD1001\",\"priority\":\"high\"}}", + "description": "Create a bank transfer payment in EUR with additional metadata for order ID and priority." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeAccount", + "description": "Analyzes a business account's data and activity by processing input account details and optionally transaction or activity logs. Provides a comprehensive report including account status, risk factors, growth metrics, and actionable insights to support automation workflows or decision making.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the account to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "accountData", + "type": "object", + "description": "Detailed account information such as financials, metadata, and settings", + "required": false, + "defaultValue": "" + }, + { + "name": "activityLogs", + "type": "array", + "description": "Optional array of recent account activities or transactions to include in analysis", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRiskAssessment", + "type": "boolean", + "description": "Flag to include risk assessment in the analysis report", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object with 'startDate' and 'endDate' to define the period for analyzing account activity", + "required": false, + "defaultValue": "" + }, + { + "name": "metricsToCalculate", + "type": "array", + "description": "Specific metrics or KPIs to calculate for the account (e.g., 'growthRate', 'churnProbability')", + "required": false, + "defaultValue": "[\"growthRate\"]" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing status summary, calculated metrics, risk factors, and recommended actions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate the examination of account performance data and activity to generate insights or risk profiling, enabling automated workflow triggers or management decisions based on account health and behavior patterns.", + "limitations": "This tool relies on supplied data completeness and quality; it cannot access external proprietary databases or real-time account systems without provided data inputs. Complex financial regulations or domain-specific audit evaluations are outside its scope.", + "examples": [ + "Analyze account with ID 'ACC123' including last 30 days of activity logs to check for growth and risk.", + "Generate insights for a customer account using detailed account data and specified KPIs like growthRate and churnProbability.", + "Perform risk assessment only for account 'ACC789' for the previous quarter without additional activity logs." + ] + }, + "tags": [ + "automation", + "accountAnalysis", + "riskAssessment", + "businessMetrics", + "workflow", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"ACC123\",\"activityLogs\":[{\"date\":\"2024-05-01\",\"type\":\"purchase\",\"amount\":250.0},{\"date\":\"2024-05-15\",\"type\":\"payment\",\"amount\":100.0}],\"includeRiskAssessment\":true,\"timeRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"},\"metricsToCalculate\":[\"growthRate\",\"churnProbability\"]}", + "description": "Analyze account ACC123 over May 2024 with activities provided, calculating growth and churn probability including risk assessment." + }, + { + "inputJson": "{\"accountId\":\"ACC456\",\"accountData\":{\"name\":\"VendorX\",\"industry\":\"Retail\",\"monthlyRevenue\":100000,\"active\":true},\"includeRiskAssessment\":false,\"metricsToCalculate\":[\"growthRate\"]}", + "description": "Analyze vendor account ACC456 with summary data only, focusing on growth rate without risk assessment." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeJSON", + "description": "Analyzes JSON data structures by providing insights such as key presence, data type distribution, value statistics for numeric data, and array sizes. Accepts raw JSON string input and outputs a comprehensive analysis report object summarizing structure and content.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "The JSON data as a raw string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeValueStats", + "type": "boolean", + "description": "Flag to include statistical analysis (min, max, average) for numeric values in the JSON.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth to analyze nested JSON objects; deeper levels will be summarized only.", + "required": false, + "defaultValue": "5" + }, + { + "name": "keysOfInterest", + "type": "array", + "description": "Optional list of specific keys to focus the analysis on; if empty or omitted, analyzes all keys.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the JSON analysis including key statistics, data types count, numeric value stats, array sizes, and notes on missing keys or structure complexity." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically examine and summarize JSON data structures to guide workflow decisions, validate data formats, or extract key insights for automation logic. It assists in understanding unknown or complex JSON payloads before further processing.", + "limitations": "Cannot execute JSON schema validation or transform JSON data; focuses solely on descriptive statistical and structural analysis. Very large or deeply nested JSON may produce truncated summaries according to maxDepth.", + "examples": [ + "Analyze a configuration JSON string to identify all keys and their types.", + "Generate statistics on numeric values within JSON API response data.", + "Focus analysis on specific keys to monitor their presence and value types in periodic JSON payloads." + ] + }, + "tags": [ + "automation", + "json", + "data-analysis", + "statistics", + "workflow", + "validation", + "inspection" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"users\\\":[{\\\"id\\\":1,\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30},{\\\"id\\\":2,\\\"name\\\":\\\"Bob\\\",\\\"age\\\":25}],\\\"active\\\":true}\",\"includeValueStats\":true,\"maxDepth\":3,\"keysOfInterest\":[]", + "description": "Analyze a JSON object containing user info and active status, gathering types and numeric stats." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"metrics\\\":{\\\"cpu\\\":[10,20,15],\\\"memory\\\":{\\\"used\\\":512,\\\"free\\\":1024}},\\\"status\\\":\\\"ok\\\"}\",\"includeValueStats\":true,\"maxDepth\":4,\"keysOfInterest\":[\"cpu\",\"memory\"]}", + "description": "Analyze nested JSON metrics focusing only on keys cpu and memory with value stats enabled." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "automation-frameworks.downloadCode", + "description": "Downloads source code files or entire repositories from specified Git repository URLs. Accepts repository URL, optional branch or tag, and destination path. Clones or fetches code, saves it locally, and returns the download status and path.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The HTTP(S) or SSH URL of the Git repository to download code from.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchOrTag", + "type": "string", + "description": "Optional branch name or tag to checkout. Defaults to the repository's default branch if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local directory path where the code should be downloaded and saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "shallowClone", + "type": "boolean", + "description": "If true, performs a shallow clone to reduce download size and time.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the download operation status, path to the downloaded code, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically obtain source code repositories or files from version control systems to enable further automation tasks such as code analysis, testing, or deployment. It automates the process of fetching specific code versions into a local environment.", + "limitations": "This tool cannot download code from non-Git source controls, nor can it handle private repositories without proper authentication configured externally. It does not perform builds or dependency installations.", + "examples": [ + "Download the main branch of the repository https://github.com/user/project.git to /tmp/project", + "Fetch version tag v1.2.3 of a repo to a local folder for analysis", + "Perform a shallow clone of a large repository to save time" + ] + }, + "tags": [ + "automation", + "code", + "download", + "git", + "repository", + "sourcecode", + "devops" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo.git\",\"branchOrTag\":\"main\",\"destinationPath\":\"/tmp/repo\"}", + "description": "Download the main branch of a public GitHub repo to a temporary local folder" + }, + { + "inputJson": "{\"repositoryUrl\":\"git@github.com:example/repo.git\",\"branchOrTag\":\"v2.0.1\",\"destinationPath\":\"/home/user/code/repo\",\"shallowClone\":true}", + "description": "Download a specific tag from a private SSH-accessible repository with a shallow clone" + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/repo.git\",\"destinationPath\":\"C:\\\\repos\\\\repo\"}", + "description": "Download the default branch of a repository to a Windows path without specifying a branch" + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "automation-frameworks.formatEmail", + "description": "Formats a plain text email message according to specified styling and structural options. Accepts input as raw email content and optional parameters for subject, sender, recipient, signature, and styling preferences. Outputs a well-structured, styled email string ready for sending or further processing.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "rawContent", + "type": "string", + "description": "The main body content of the email in plain text.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": false, + "defaultValue": "" + }, + { + "name": "fromAddress", + "type": "string", + "description": "The sender's email address to include in the formatted email header.", + "required": false, + "defaultValue": "" + }, + { + "name": "toAddresses", + "type": "array", + "description": "An array of recipient email addresses to include in the formatted email header.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "ccAddresses", + "type": "array", + "description": "An array of CC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccAddresses", + "type": "array", + "description": "An array of BCC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "signature", + "type": "string", + "description": "Optional email signature to append to the message body.", + "required": false, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Options to customize email formatting including line width (number), whether to convert URLs to clickable links (boolean), and text style (e.g., plain, markdown, html).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted email as a string under the key 'formattedEmail'. This string includes headers and body formatted according to the given parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw email content into a properly structured and optionally styled email, including headers like subject and recipient lists. This is useful for automating email generation workflows where plain text input must be turned into polished, ready-to-send emails.", + "limitations": "This tool does not send emails or interact with email servers; it only formats email strings. It does not parse incoming emails, nor does it handle attachments or advanced MIME types.", + "examples": [ + "Format a marketing email with subject, recipients, and a custom signature.", + "Prepare a plain text report email to multiple recipients with URLs converted to clickable links.", + "Generate an HTML formatted email body with specified line width and styling options." + ] + }, + "tags": [ + "automation", + "email", + "formatting", + "workflow", + "communication", + "templating" + ], + "examples": [ + { + "inputJson": "{\"rawContent\":\"Hello team, please find attached the Q1 report.\",\"subject\":\"Q1 Report\",\"fromAddress\":\"manager@example.com\",\"toAddresses\":[\"team@example.com\"],\"signature\":\"Best regards,\\nManager\",\"formattingOptions\":{\"lineWidth\":72,\"convertUrls\":false,\"textStyle\":\"plain\"}}", + "description": "Format a basic plain text email with subject, sender, recipient, and signature." + }, + { + "inputJson": "{\"rawContent\":\"Check out our website at https://example.com for more info.\",\"subject\":\"Website Update\",\"toAddresses\":[\"client@example.com\"],\"formattingOptions\":{\"convertUrls\":true,\"textStyle\":\"html\"}}", + "description": "Format an email converting URLs into clickable links with HTML style." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "automation-frameworks.formatCode", + "description": "Formats source code according to specified style guidelines and language rules. Accepts raw code as input along with code language and style preferences. Performs code parsing and restructuring to produce consistently styled, readable code output.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "Raw source code(text) that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code, used to apply language-specific formatting rules (e.g., 'javascript', 'python').", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Identifier or name of the code style guide to follow (e.g., 'Google', 'Airbnb', or custom).", + "required": false, + "defaultValue": "Google" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces used for indentation. Overrides style guide default if provided.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation. Overrides style guide default if provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length; lines exceeding this will be wrapped accordingly.", + "required": false, + "defaultValue": "80" + }, + { + "name": "semiColons", + "type": "boolean", + "description": "For languages like JavaScript, whether to enforce semicolons at line ends.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formatOnSave", + "type": "boolean", + "description": "If true, indicates formatting should try to preserve as much of original whitespace while fixing style violations.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code as a string and optionally a summary of applied changes." + }, + "aiAgent": { + "useCase": "Use this tool when receiving raw or unformatted source code that needs consistent styling for readability, maintainability, or compliance with team standards. Particularly useful in automation pipelines, code reviews, or refactoring tasks.", + "limitations": "Does not perform code linting or error correction beyond formatting. Cannot interpret or fix semantic or syntactic errors unrelated to style.", + "examples": [ + "Format this JavaScript snippet using Airbnb style guide.", + "Reformat the Python code with 4-space indentation.", + "Apply Google style formatting to a large Java source file." + ] + }, + "tags": [ + "automation", + "code-formatting", + "developer-tools", + "style-guides", + "source-code", + "clean-code" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function test(){console.log( 'Hello World' );}\",\"language\":\"javascript\",\"styleGuide\":\"Airbnb\",\"indentSize\":2,\"useTabs\":false,\"maxLineLength\":80,\"semiColons\":true}", + "description": "Format a JavaScript function snippet using Airbnb style conventions and 2-space indentation." + }, + { + "inputJson": "{\"code\":\"def foo():\\n print('bar')\",\"language\":\"python\",\"styleGuide\":\"PEP8\",\"indentSize\":4,\"useTabs\":false}", + "description": "Format a small Python function using PEP8 style with 4 spaces indentation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "automation-frameworks.buildFunction", + "description": "Generates reusable JavaScript function code based on provided specifications, including function name, parameters, description, and optional implementation details. Outputs a fully formatted JavaScript function string ready for automation workflow integration.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The name to assign to the generated JavaScript function.", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "List of parameter names (strings) the function will accept.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description of what the function is intended to do, included as a comment above the function code.", + "required": false, + "defaultValue": "" + }, + { + "name": "implementationBody", + "type": "string", + "description": "Optional JavaScript code that defines the function's implementation. If omitted, the function body will return a stub message.", + "required": false, + "defaultValue": "" + }, + { + "name": "isAsync", + "type": "boolean", + "description": "If true, generates the function as an async function to support asynchronous operations.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript function code as a string under the key 'functionCode'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate creation of JavaScript functions tailored to specific inputs and behaviors within an automation workflow. It helps in defining functions dynamically based on user criteria, streamlining the development of code snippets for automation tasks.", + "limitations": "This tool generates only JavaScript function code as plain text and does not execute or validate the generated code. Complex logic or dependent external resources must be manually reviewed and integrated.", + "examples": [ + "Generate a function called 'sendEmail' with parameters 'recipient' and 'content' that asynchronously sends an email.", + "Build a function named 'calculateSum' accepting two numerical parameters and returning their sum.", + "Create a synchronous function 'logEvent' that logs event details to the console." + ] + }, + "tags": [ + "automation", + "javascript", + "code-generation", + "function-builder", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"sendEmail\",\"parameters\":[\"recipient\",\"content\"],\"description\":\"Sends an email asynchronously to the recipient with content.\",\"implementationBody\":\"return await emailClient.send(recipient, content);\",\"isAsync\":true}", + "description": "Generate an async function to send email with recipient and content parameters." + }, + { + "inputJson": "{\"functionName\":\"calculateSum\",\"parameters\":[\"a\",\"b\"],\"description\":\"Returns the sum of two numbers.\",\"implementationBody\":\"return a + b;\",\"isAsync\":false}", + "description": "Create a synchronous function to sum two numbers." + }, + { + "inputJson": "{\"functionName\":\"logEvent\",\"parameters\":[\"eventName\"],\"description\":\"Logs event name to the console.\",\"implementationBody\":\"console.log(`Event occurred: ${eventName}`);\",\"isAsync\":false}", + "description": "Build a function logging event names to console." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "automation-frameworks.formatDocument", + "description": "Formats a given document string according to specified style and output format. Accepts raw document content as input, applies formatting rules such as indentation, line breaks, and style guidelines, and produces a formatted document string in the desired output format (e.g., plain text, Markdown, HTML).", + "category": "automation-frameworks", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The raw content of the document to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The name of the formatting style to apply (e.g., \"default\", \"compact\", \"expanded\").", + "required": false, + "defaultValue": "\"default\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The output document format, such as \"plain\", \"markdown\", or \"html\".", + "required": false, + "defaultValue": "\"plain\"" + }, + { + "name": "indentationSize", + "type": "number", + "description": "The number of spaces to use for indentation.", + "required": false, + "defaultValue": "4" + }, + { + "name": "preserveLineBreaks", + "type": "boolean", + "description": "Whether to preserve existing line breaks in the input document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document string under 'formattedDocument' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw or unformatted text documents into a clean, consistent format suitable for further processing or presentation, including converting to Markdown or HTML. Ideal for automating document preparation workflows.", + "limitations": "Cannot fully parse or correct semantic content errors. Does not support complex document structures like embedded scripts or interactive elements.", + "examples": [ + "Format a raw text document into Markdown with compact style.", + "Format a raw text document into HTML preserving line breaks." + ] + }, + "tags": [ + "automation", + "document", + "formatting", + "text-processing", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"Title\\nThis is a sample document. \\nList:\\n- item1\\n- item2\",\"style\":\"compact\",\"outputFormat\":\"markdown\",\"indentationSize\":2,\"preserveLineBreaks\":true}", + "description": "Format a text document into compact Markdown format preserving line breaks with 2 spaces indentation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "automation-frameworks.createDatabase", + "description": "This tool automates the creation of a new database instance in a specified database management system (DBMS). It accepts parameters such as database type, name, size, user credentials, and optional configurations. The tool connects to the DBMS, provisions the database with given settings, and outputs a confirmation along with connection details and status.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "dbType", + "type": "string", + "description": "Type of database to create (e.g., MySQL, PostgreSQL, MongoDB).", + "required": true, + "defaultValue": "" + }, + { + "name": "dbName", + "type": "string", + "description": "Name of the new database to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageSizeMB", + "type": "number", + "description": "Initial allocated storage size in megabytes.", + "required": false, + "defaultValue": "100" + }, + { + "name": "username", + "type": "string", + "description": "Username for the database admin account.", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Password for the database admin account.", + "required": true, + "defaultValue": "" + }, + { + "name": "host", + "type": "string", + "description": "Hostname or IP address of the DBMS server.", + "required": true, + "defaultValue": "localhost" + }, + { + "name": "port", + "type": "number", + "description": "Port number for the DBMS connection.", + "required": false, + "defaultValue": "3306" + }, + { + "name": "options", + "type": "object", + "description": "Additional optional configurations such as character set, collation, replication settings.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the creation status, message, and connection details such as URI, credentials, and configurations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically provision new databases within automation workflows or deployment scripts. It is useful for setting up test environments, provisioning staging databases, or scaling production infrastructures automatically.", + "limitations": "Does not manage existing databases (e.g., migration or backup). Requires valid credentials and network access. Assumes the target DBMS supports remote creation commands compatible with this tool's protocol.", + "examples": [ + "Create a new MySQL database named 'app_db' with 200MB storage on a remote server.", + "Provision a PostgreSQL test database with default parameters on localhost.", + "Create a MongoDB database with custom options including replication settings." + ] + }, + "tags": [ + "automation", + "database", + "provisioning", + "devops", + "infrastructure", + "DBMS" + ], + "examples": [ + { + "inputJson": "{\"dbType\":\"MySQL\",\"dbName\":\"testdb\",\"storageSizeMB\":500,\"username\":\"admin\",\"password\":\"pass1234\",\"host\":\"db.example.com\",\"port\":3306}", + "description": "Create a MySQL database named 'testdb' with 500MB storage on a remote MySQL server." + }, + { + "inputJson": "{\"dbType\":\"PostgreSQL\",\"dbName\":\"dev_db\",\"username\":\"postgres\",\"password\":\"secret\",\"host\":\"localhost\"}", + "description": "Provision a default-sized PostgreSQL database named 'dev_db' on local host." + }, + { + "inputJson": "{\"dbType\":\"MongoDB\",\"dbName\":\"logs\",\"username\":\"root\",\"password\":\"rootpass\",\"host\":\"mongo.local\",\"options\":{\"replicaSet\":\"rs0\"}}", + "description": "Create a MongoDB database named 'logs' with a replica set configuration." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "automation-frameworks.generateTest", + "description": "Generates automated test code for given source code snippets or function signatures, supporting multiple testing frameworks and languages. Accepts source code or function specifications and outputs ready-to-use test cases to facilitate rapid test development and integration into CI/CD pipelines.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "Source code snippet or complete function for which to generate tests. Either this or functionSignature must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "functionSignature", + "type": "string", + "description": "Signature or prototype of the function to be tested, used if sourceCode is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "testingFramework", + "type": "string", + "description": "Target testing framework for generated tests (e.g., Jest, Mocha, PyTest).", + "required": true, + "defaultValue": "Jest" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language of the source code and tests (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "testCoverageLevel", + "type": "string", + "description": "Desired coverage level such as 'basic', 'edgeCases', or 'full'.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "includeMocking", + "type": "boolean", + "description": "Whether to include mocking for dependencies or external calls in the generated tests.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string, along with metadata such as language and framework used." + }, + "aiAgent": { + "useCase": "Use this tool to automate the creation of automated test suites for functions or code snippets, especially when quick prototyping or initial test scaffolding is needed. It helps reduce manual test writing effort and accelerates continuous integration setup.", + "limitations": "Cannot guarantee complex logic correctness in generated tests; complex dependencies or integration tests may require manual refinement or domain-specific knowledge.", + "examples": [ + "Generate Jest tests for a JavaScript function that calculates factorial.", + "Create PyTest unit tests for a Python function given its signature.", + "Generate Mocha tests with mocking for a Node.js async function." + ] + }, + "tags": [ + "automation", + "testing", + "code-generation", + "unit-testing", + "CI/CD", + "test-automation" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function sum(a, b) { return a + b; }\",\"testingFramework\":\"Jest\",\"programmingLanguage\":\"JavaScript\",\"testCoverageLevel\":\"basic\",\"includeMocking\":false}", + "description": "Generate basic Jest unit tests for a simple sum function in JavaScript." + }, + { + "inputJson": "{\"functionSignature\":\"def multiply(x, y):\",\"testingFramework\":\"PyTest\",\"programmingLanguage\":\"Python\",\"testCoverageLevel\":\"edgeCases\",\"includeMocking\":false}", + "description": "Generate PyTest unit tests covering edge cases for a Python multiply function given only its signature." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "automation-frameworks.createServer", + "description": "Creates and provisions a cloud or virtual server based on specified configuration parameters, including CPU, memory, storage, operating system, and network settings. Accepts detailed input for server specs, processes provisioning via API calls to cloud or virtualization platforms, and returns server details and status upon completion.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "provider", + "type": "string", + "description": "Cloud or virtualization provider name (e.g., aws, azure, gcp, vmware).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region or data center for server deployment.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "serverName", + "type": "string", + "description": "Unique name identifier for the new server instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "Predefined instance flavor or size (CPU, RAM) per provider catalog.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system image or distribution to install (e.g., Ubuntu 22.04).", + "required": true, + "defaultValue": "" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "Storage capacity in gigabytes for the server's main disk.", + "required": false, + "defaultValue": "50" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network settings including VPC, subnet, and security group IDs.", + "required": false, + "defaultValue": "" + }, + { + "name": "sshKeyName", + "type": "string", + "description": "Name or ID of SSH key pair to attach for access.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoStart", + "type": "boolean", + "description": "Whether to start the server immediately after creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Details of the created server including unique server ID, IP addresses, current state, and a status message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the deployment of new servers with specific configurations in various cloud or virtual environments, facilitating scalable infrastructure setup without manual intervention. Ideal for continuous deployment pipelines, testing environments, or dynamic resource provisioning.", + "limitations": "This tool cannot configure software beyond the OS level, perform complex network orchestration outside basic settings, or manage server lifecycle events beyond initial creation and startup.", + "examples": [ + "Create a new Ubuntu server on AWS in us-east-1 with 4 CPUs, 16GB RAM, 100GB storage, and auto start.", + "Provision a VM on VMware with Windows Server 2019, attach an existing SSH key, and keep it powered off after creation.", + "Deploy a GCP instance with a predefined machine type, custom network settings, and immediate startup enabled." + ] + }, + "tags": [ + "automation", + "infrastructure", + "cloud", + "server", + "provisioning", + "devops", + "virtualization" + ], + "examples": [ + { + "inputJson": "{\"provider\":\"aws\",\"region\":\"us-east-1\",\"serverName\":\"web-prod-01\",\"instanceType\":\"t3.medium\",\"operatingSystem\":\"Ubuntu 22.04\",\"storageSizeGB\":100,\"networkConfig\":{\"vpcId\":\"vpc-12345\",\"subnetId\":\"subnet-67890\",\"securityGroupIds\":[\"sg-112233\"]},\"sshKeyName\":\"prod-key\",\"autoStart\":true}", + "description": "Create an AWS Ubuntu server called 'web-prod-01' with medium instance size, 100GB storage, custom network, and start it immediately." + }, + { + "inputJson": "{\"provider\":\"vmware\",\"serverName\":\"test-vm-01\",\"instanceType\":\"custom-4cpu-8gb\",\"operatingSystem\":\"Windows Server 2019\",\"autoStart\":false}", + "description": "Provision a VMware virtual machine with Windows Server 2019, 4 CPUs, 8GB RAM, and keep it powered off after creation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "automation-frameworks.createMessage", + "description": "Creates a customizable message object for automation workflows. Accepts inputs including recipient details, message content, subject, and optional metadata. Processes and formats these inputs into a structured message object suitable for sending via various communication channels or for logging purposes.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "The primary recipient of the message, typically an email address or user ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the message, used mainly for emails or notifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Main body text of the message. Supports plaintext or simple markup.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageType", + "type": "string", + "description": "Type of the message such as 'email', 'sms', 'notification'. This guides formatting.", + "required": false, + "defaultValue": "email" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "List of secondary recipients to be carbon copied on the message, emails or IDs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional metadata like priority, tags, or timestamps.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isUrgent", + "type": "boolean", + "description": "Flag indicating if the message should be marked as urgent or high priority.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured message object including the final formatted content, recipient information, message type, and metadata ready for dispatch or storage." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically compose and format messages in diverse automation scenarios such as sending emails, creating notifications, or generating SMS messages with configurable parameters. It standardizes message creation to integrate with various delivery systems.", + "limitations": "This tool does not send messages; it only creates message objects for further dispatch. It does not support rich text formatting beyond simple markup or attachments.", + "examples": [ + "Create an urgent email message to a user with a subject and content.", + "Generate a notification message without a subject for internal alerts.", + "Compose an SMS type message with content and recipient number." + ] + }, + "tags": [ + "automation", + "message", + "communication", + "notification", + "email", + "sms", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"user@example.com\",\"subject\":\"Project Update\",\"content\":\"The project status is on track.\",\"messageType\":\"email\",\"ccRecipients\":[\"manager@example.com\"],\"metadata\":{\"priority\":\"high\"},\"isUrgent\":true}", + "description": "Create an urgent email message with CC recipients and high priority metadata." + }, + { + "inputJson": "{\"recipient\":\"+1234567890\",\"content\":\"Your verification code is 123456.\",\"messageType\":\"sms\"}", + "description": "Compose a simple SMS message with recipient phone number and text content." + }, + { + "inputJson": "{\"recipient\":\"service-desk\",\"content\":\"Server will be down for maintenance at midnight.\",\"messageType\":\"notification\",\"metadata\":{\"tags\":[\"maintenance\",\"alert\"]}}", + "description": "Generate an internal notification message with tags for categorization." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "automation-frameworks.createIssue", + "description": "Creates a new issue in a specified project management or code hosting platform by accepting details like title, description, labels, assignees, and priority. It processes these inputs to invoke the platform's API and outputs the created issue's ID, URL, and status, enabling automation of issue tracking workflows.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "Name of the platform where the issue should be created, e.g., 'github', 'jira', or 'gitlab'.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "Identifier of the project or repository in which to create the issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title or summary of the issue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description explaining the issue to be created.", + "required": false, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "An array of labels or tags to assign to the issue for categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "assignees", + "type": "array", + "description": "List of usernames or IDs to assign the issue to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the issue, e.g., 'low', 'medium', 'high', or platform-specific values.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "dueDate", + "type": "string", + "description": "Optional due date for the issue in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created issue's unique identifier, URL for direct access, status, and any platform-specific metadata." + }, + "aiAgent": { + "useCase": "Use this tool when automating the creation of new issues or tasks in project management or code hosting platforms as part of deployment pipelines, error reporting automation, or workflow orchestration. It helps integrate issue tracking with automated processes for better traceability and resolution.", + "limitations": "This tool does not support bulk creation of issues in a single call and depends on the target platform's API capabilities. It cannot modify existing issues or manage comments. Authentication and permissions must be managed externally.", + "examples": [ + "Create a bug issue in a GitHub repo with labels and assign it to a user.", + "Open a new task in Jira with a high priority and due date in a project.", + "Add a feature request issue to GitLab with no assignees specified." + ] + }, + "tags": [ + "automation", + "issue-tracking", + "project-management", + "task-creation", + "workflow", + "integration" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"github\",\"projectId\":\"octocat/hello-world\",\"title\":\"Bug: Crash on launch\",\"description\":\"App crashes immediately after launch on iOS 14.\",\"labels\":[\"bug\",\"urgent\"],\"assignees\":[\"octocat\"],\"priority\":\"high\"}", + "description": "Creates a critical bug issue on GitHub with labels and assignee." + }, + { + "inputJson": "{\"platform\":\"jira\",\"projectId\":\"PROJ123\",\"title\":\"Implement new login screen\",\"description\":\"Design and develop the new login screen as per specs.\",\"labels\":[\"feature\"],\"assignees\":[],\"priority\":\"medium\",\"dueDate\":\"2024-07-31\"}", + "description": "Creates a medium priority feature task in Jira with a due date." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "automation-frameworks.createAccount", + "description": "Creates a new user account within an automation framework system. Accepts user details such as username, email, roles, and optional metadata. Validates inputs, provisions the account with specified permissions, and returns the account ID and creation status.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "Unique username for the new account, required for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address associated with the account for notifications and identity confirmation.", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Initial password for the account, should meet security standards.", + "required": true, + "defaultValue": "" + }, + { + "name": "roles", + "type": "array", + "description": "List of roles or permissions assigned to the account (e.g., admin, editor).", + "required": true, + "defaultValue": "[\"user\"]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with additional account information (e.g., department, location).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sendWelcomeEmail", + "type": "boolean", + "description": "Flag to indicate if a welcome email should be sent to the user after account creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the newly created account's unique ID, creation timestamp, and success status with optional error message if creation failed." + }, + "aiAgent": { + "useCase": "Use this tool when an automation agent needs to programmatically provision new user accounts in a system, assign specific access roles, and optionally send notifications. It is useful for onboarding workflows or automated environment setup.", + "limitations": "This tool does not authenticate existing users nor manage password resets. It expects the automation framework to handle post-creation security policies and compliance checks.", + "examples": [ + "Create a user account with admin role and send a welcome email.", + "Add a new user with read-only role and custom metadata without sending email.", + "Provision multiple accounts with different permissions programmatically." + ] + }, + "tags": [ + "automation", + "account management", + "user provisioning", + "workflow automation", + "access control" + ], + "examples": [ + { + "inputJson": "{\"username\":\"jdoe\",\"email\":\"jdoe@example.com\",\"password\":\"P@ssw0rd123\",\"roles\":[\"admin\"],\"metadata\":{\"department\":\"IT\",\"location\":\"NYC\"},\"sendWelcomeEmail\":true}", + "description": "Create an admin account for John Doe with department metadata and send welcome email." + }, + { + "inputJson": "{\"username\":\"asmith\",\"email\":\"asmith@example.com\",\"password\":\"SecurePass!\",\"roles\":[\"viewer\"],\"metadata\":{},\"sendWelcomeEmail\":false}", + "description": "Create a viewer role account for Alice Smith without sending a welcome email." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "automation-frameworks.createDataset", + "description": "Creates a structured dataset from provided input sources, which can include JSON objects, CSV strings, or arrays of records. It processes the input data, optionally applies transformations like filtering or mapping, and outputs a consistent dataset object formatted for easy use in automation workflows or data processing tasks.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of data records or raw input entries to include in the dataset. Supports objects, arrays, or primitive values depending on context.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data such as 'json', 'csv', or 'array'. Determines how inputData is parsed and structured.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filtering criteria as key-value pairs or expressions to select or exclude certain records from the dataset.", + "required": false, + "defaultValue": "" + }, + { + "name": "mappingRules", + "type": "object", + "description": "Optional mapping rules specifying how to transform or rename fields in each data record.", + "required": false, + "defaultValue": "" + }, + { + "name": "limit", + "type": "number", + "description": "Optional maximum number of records to include in the final dataset. If omitted, all filtered records are included.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A dataset object containing the processed and structured collection of records that meet specified criteria. Includes metadata like total record count and applied transformations." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to assemble a validated and transformed dataset from various raw inputs to enable downstream automation workflows such as testing, reporting, or batch processing. It is ideal for standardizing data from heterogeneous sources and applying filters or transformations before usage.", + "limitations": "This tool does not perform data validation against schemas beyond basic structure normalization, nor does it connect to external data sources by itself. Complex data enrichment or analysis should be done downstream.", + "examples": [ + "Create a dataset from a CSV string filtering users above age 30", + "Assemble a dataset from JSON records to include only active entries with renamed fields", + "Generate a dataset limited to 100 transformed entries from an array of raw inputs" + ] + }, + "tags": [ + "automation", + "dataset", + "data processing", + "filtering", + "transformation", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"name\":\"Alice\",\"age\":25,\"active\":true},{\"name\":\"Bob\",\"age\":35,\"active\":false}],\"inputFormat\":\"json\",\"filters\":{\"age\":\">30\"},\"mappingRules\":{\"name\":\"fullName\"},\"limit\":10}", + "description": "Creates a dataset from JSON input filtering to include only users older than 30 and renames 'name' field to 'fullName' limiting result to 10 records." + }, + { + "inputJson": "{\"inputData\":\"name,age,active\\nAlice,25,true\\nBob,35,false\",\"inputFormat\":\"csv\",\"filters\":{\"active\":true}}", + "description": "Creates dataset from CSV string including only active users." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "automation-frameworks.createCommit", + "description": "Creates a new Git commit in a specified repository by applying provided file changes. Accepts file paths and their content updates, a commit message, author details, and branch targeting. Processes these inputs to stage changes, create the commit, and returns the commit hash and details.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "repositoryPath", + "type": "string", + "description": "File system path to the target Git repository where the commit will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The branch in the repository where the commit should be made. If it doesn't exist, an error occurs.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "The commit message to describe the changes being committed.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the commit author; used in the commit metadata.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email of the commit author; used in the commit metadata.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "fileChanges", + "type": "array", + "description": "Array of file changes to apply prior to committing. Each entry includes filePath and newContent fields.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the created commit: commit hash, full commit message, branch updated, and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an automation agent needs to programmatically create a Git commit in a local or accessible repository by applying specified file changes with proper metadata. Suitable for CI/CD pipelines, scripts automating code updates, and tools managing source code programmatically.", + "limitations": "Cannot push commits to remote repositories; this tool only creates local commits. Does not handle merge conflicts or branch creation; the target branch must exist and be checked out or valid.", + "examples": [ + "Create a commit on branch 'main' that updates README.md and adds a new configuration file with author info.", + "Commit code formatting fixes across multiple files in the 'develop' branch with a standardized commit message.", + "Add generated documentation files and commit them with a relevant message and author details." + ] + }, + "tags": [ + "automation", + "git", + "commit", + "version-control", + "code-management" + ], + "examples": [ + { + "inputJson": "{\"repositoryPath\":\"/repos/myproject\",\"branchName\":\"main\",\"commitMessage\":\"Fix typo in README and add config file\",\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane@example.com\",\"fileChanges\":[{\"filePath\":\"README.md\",\"newContent\":\"# Project Title\\nFixed a typo in this line.\"},{\"filePath\":\"config/settings.yaml\",\"newContent\":\"enableFeatureX: true\"}]}", + "description": "Create a commit on 'main' branch fixing README and adding a config file with author Jane Doe." + }, + { + "inputJson": "{\"repositoryPath\":\"/repos/myproject\",\"branchName\":\"develop\",\"commitMessage\":\"Apply code formatting fixes\",\"authorName\":\"Auto Formatter\",\"authorEmail\":\"formatter@ci.local\",\"fileChanges\":[{\"filePath\":\"src/app.js\",\"newContent\":\"// reformatted code content\"},{\"filePath\":\"src/utils.js\",\"newContent\":\"// reformatted utils code\"}]}", + "description": "Commit automated code formatting changes on the 'develop' branch." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "automation-frameworks.createAPI", + "description": "This tool generates a skeleton REST API server in Node.js based on a user-defined specification. It accepts input as an object defining endpoints, HTTP methods, request parameters, and response schemas. The tool processes this to produce a ready-to-run API codebase including route handlers, validation stubs, and basic middleware setup, outputting source code as a zipped archive or folder structure.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "Name of the API project to create, used as the root folder name.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpoints", + "type": "array", + "description": "An array of endpoint definitions with path, method, parameters, and response schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "authRequired", + "type": "boolean", + "description": "Flag to include basic authentication middleware in the API server.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the API server. Supported: 'javascript', 'typescript'.", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to generate basic unit tests for each endpoint.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API codebase as a zipped string or folder structure and metadata like main entry file path." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly scaffold a REST API server based on a clear specification of endpoints and data contracts, enabling rapid backend prototyping or bootstrapping microservices without manual coding from scratch.", + "limitations": "This tool generates boilerplate and skeleton code but does not implement business logic or complex validation rules. It supports only REST style APIs and basic authentication setups. It does not deploy or run the API server.", + "examples": [ + "Create a REST API with user and product endpoints, GET and POST methods, with JSON input/output.", + "Generate a TypeScript-based API server skeleton with authentication for a to-do list service.", + "Create a basic Node.js API named 'inventory' with product management routes and sample unit tests." + ] + }, + "tags": [ + "automation", + "api-generation", + "nodejs", + "rest-api", + "code-generation", + "backend", + "scaffolding" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"sampleAPI\",\"endpoints\":[{\"path\":\"/users\",\"method\":\"GET\",\"parameters\":[],\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"}}}}},{\"path\":\"/users\",\"method\":\"POST\",\"parameters\":[{\"name\":\"name\",\"type\":\"string\",\"required\":true}],\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"}}}}],\"authRequired\":true,\"language\":\"javascript\",\"includeTests\":true}", + "description": "Generate a JavaScript REST API named 'sampleAPI' with authenticated GET and POST /users endpoints and sample unit tests." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "automation-frameworks.createContract", + "description": "Generates a customizable legal contract document based on provided contract type, parties involved, key terms, and optional clauses. Accepts input parameters defining contract specifics, processes these to assemble a coherent contract text, and outputs the finalized contract in plain text or PDF format.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "Specifies the type of contract to create, e.g., 'NDA', 'Service Agreement', or 'Sales Contract'.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "An array of party objects involved in the contract, each with name and role fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The date when the contract becomes effective, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "terms", + "type": "object", + "description": "Key-value pairs representing important terms and conditions such as payment terms, duration, confidentiality, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "optionalClauses", + "type": "array", + "description": "List of optional clauses to include, such as arbitration, termination conditions, or intellectual property rights.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the contract output: 'text' for plain text or 'pdf' for a PDF document.", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the assembled contract text and metadata including contract type, parties, and effective date." + }, + "aiAgent": { + "useCase": "Use this tool to automate creation of legally structured contract documents for various scenarios such as business agreements, NDAs, or service contracts. It assists in generating customized contracts by specifying key terms and parties, eliminating repetitive manual drafting.", + "limitations": "The tool generates general contract templates based on input data but does not provide legal advice or ensure compliance with jurisdiction-specific laws. Final legal review by a professional is recommended.", + "examples": [ + "Create a service agreement contract between two companies effective next month including payment terms and confidentiality clauses.", + "Generate a non-disclosure agreement (NDA) for two parties with standard term and arbitration clause, output as PDF.", + "Build a sales contract specifying delivery and payment milestones for a vendor and client." + ] + }, + "tags": [ + "automation", + "contracts", + "legal", + "document-generation", + "workflow", + "business" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"NDA\",\"parties\":[{\"name\":\"Company A\",\"role\":\"Disclosing Party\"},{\"name\":\"Company B\",\"role\":\"Receiving Party\"}],\"effectiveDate\":\"2024-07-01\",\"terms\":{\"duration\":\"2 years\",\"confidentiality\":\"strict\",\"jurisdiction\":\"California\"},\"optionalClauses\":[\"arbitration\"],\"outputFormat\":\"text\"}", + "description": "Create a Non-Disclosure Agreement between two companies effective July 1, 2024, including arbitration clause." + }, + { + "inputJson": "{\"contractType\":\"Service Agreement\",\"parties\":[{\"name\":\"Alpha Corp\",\"role\":\"Client\"},{\"name\":\"Beta Services\",\"role\":\"Service Provider\"}],\"effectiveDate\":\"2024-08-15\",\"terms\":{\"paymentTerms\":\"Net 30\",\"serviceDescription\":\"IT support and maintenance\",\"terminationNotice\":\"30 days\"},\"optionalClauses\":[\"intellectualPropertyRights\"],\"outputFormat\":\"pdf\"}", + "description": "Generate a Service Agreement as a PDF for IT support services including IP rights clause." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "text-analysis.sendEmail", + "description": "This tool accepts email details including sender, recipients, subject, and body text to construct and send an email via an SMTP server or compatible email service. It processes the input by formatting the email content appropriately and then sends the email, returning a success confirmation or an error message if sending fails.", + "category": "text-analysis", + "parameters": [ + { + "name": "from", + "type": "string", + "description": "The sender's email address used as the 'From' field in the email header.", + "required": true, + "defaultValue": "" + }, + { + "name": "to", + "type": "array", + "description": "Array of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional array of email addresses to send carbon copies (CC) to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional array of email addresses to send blind carbon copies (BCC) to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main text content of the email message. Can include plain text or HTML formatted content.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating whether the email body is HTML formatted (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects, each containing filename and base64 encoded content.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Result object containing status, messageId if sent successfully, and error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when the AI needs to compose and send email messages programmatically as part of workflow automation, notifications, or communications integration within an application.", + "limitations": "This tool cannot verify email addresses for validity before sending, nor does it handle authentication beyond simple SMTP credentials setup, which must be configured externally. It does not support retrieving or reading emails.", + "examples": [ + "Send a project update email to the team.", + "Send an HTML formatted invitation with attachments to multiple recipients.", + "Send a confidential notice including BCC recipients." + ] + }, + "tags": [ + "email", + "communication", + "send", + "notification", + "automation", + "messaging", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"from\":\"sender@example.com\",\"to\":[\"recipient1@example.com\",\"recipient2@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[],\"subject\":\"Weekly Project Update\",\"body\":\"Hello team, here is the weekly update...\",\"isHtml\":false,\"attachments\":[]}", + "description": "Send a plain text weekly update email to multiple recipients with CC to manager." + }, + { + "inputJson": "{\"from\":\"events@example.com\",\"to\":[\"guest1@example.com\"],\"cc\":[],\"bcc\":[],\"subject\":\"Invitation to Annual Gala\",\"body\":\"

You’re invited!

Join us for the Annual Gala.

\",\"isHtml\":true,\"attachments\":[{\"filename\":\"invite.pdf\",\"content\":\"\"}]}", + "description": "Send an HTML event invitation with a PDF attachment." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "text-analysis.generateReport", + "description": "Generates a structured text report from an input text corpus by performing analysis like keyword extraction, sentiment summary, and topic overview. Accepts raw text or array of text chunks, processes them for key insights, and outputs a detailed report in plain text or JSON format.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The main body of text to analyze and generate the report from.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text to optimize processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis summary in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and list the top keywords in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopicSummary", + "type": "boolean", + "description": "Whether to provide a brief topic overview derived from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the generated report output: 'text' for plain text, 'json' for structured JSON.", + "required": false, + "defaultValue": "text" + }, + { + "name": "maxKeywords", + "type": "number", + "description": "Maximum number of keywords to extract and include in the report.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content, formatted as specified. Includes sections such as sentimentSummary, keywords, topicSummary, and fullReport in text or structured JSON." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create concise, insightful textual summaries and analytic reports from large or complex text inputs, such as customer feedback, documents, or articles. It helps distill key information including sentiment, themes, and important terms into a readable, actionable report format.", + "limitations": "This tool is designed for processing natural language text and does not interpret domain-specific jargon beyond general semantic analysis. It cannot generate reports with visual charts or interpret non-textual data.", + "examples": [ + "Generate a summary report with sentiment and keywords for a batch of customer reviews.", + "Produce a report in JSON format analyzing the key topics of a set of news articles.", + "Create a plain text report summarizing sentiment and main ideas from a meeting transcript." + ] + }, + "tags": [ + "text-analysis", + "report-generation", + "natural-language-processing", + "sentiment-analysis", + "keyword-extraction", + "summary" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"The product launch was a success with overwhelmingly positive feedback from customers. While some expressed concerns about pricing, overall sentiment was optimistic.\",\"reportFormat\":\"text\"}", + "description": "Generate a plain text report highlighting sentiment and keywords from product launch feedback." + }, + { + "inputJson": "{\"inputText\":\"Several recent studies in climate change reveal new patterns in temperature fluctuations worldwide.\",\"includeSentiment\":false,\"includeKeywords\":true,\"includeTopicSummary\":true,\"reportFormat\":\"json\",\"maxKeywords\":5}", + "description": "Produce a JSON report summarizing key topics and keywords from scientific study abstracts without sentiment." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "text-analysis.createCustomer", + "description": "Creates a detailed customer profile from unstructured textual input data such as emails, chats, or survey responses. It extracts key customer information like name, contact details, preferences, and sentiment, then outputs a structured customer object suitable for CRM integration or further analysis.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Unstructured text data containing customer information to analyze and extract", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the input text to improve extraction accuracy (e.g., 'en', 'es')", + "required": false, + "defaultValue": "en" + }, + { + "name": "extractSentiment", + "type": "boolean", + "description": "Flag to perform sentiment analysis on the input text", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeContactInfo", + "type": "boolean", + "description": "Flag to extract contact details like email and phone number", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxPreferences", + "type": "number", + "description": "Maximum number of customer preferences to extract", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Structured customer profile including name, contact details, preferences, and sentiment score" + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform unstructured customer communications or feedback into structured profiles automatically. Ideal when integrating natural language data into CRM systems or preparing customer insights for marketing and support workflows.", + "limitations": "Cannot verify the accuracy of extracted contact info; works best on clear, well-formed text; may not perform well on heavily ambiguous or extremely short inputs.", + "examples": [ + "Extract a customer profile from a support chat transcript including contact info and sentiment.", + "Create structured customer data from survey response texts in English.", + "Generate customer preferences and sentiment summary from an email inquiry." + ] + }, + "tags": [ + "natural-language-processing", + "customer-profiles", + "data-extraction", + "sentiment-analysis", + "crm-integration" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Hello, my name is Sarah Parker. You can reach me at sarah.parker@example.com or call me at 555-1234. I'm interested in premium plans and prefer email communication.\",\"language\":\"en\",\"extractSentiment\":true,\"includeContactInfo\":true,\"maxPreferences\":3}", + "description": "Extracts structured customer info from an email with contact details and preferences." + }, + { + "inputJson": "{\"inputText\":\"Je m'appelle Julien, je préfère être contacté par téléphone. Très satisfait des services proposés.\",\"language\":\"fr\",\"extractSentiment\":true,\"includeContactInfo\":false,\"maxPreferences\":2}", + "description": "Creates a customer profile from a French language input focusing on preferences and sentiment without contact info." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "text-analysis.createReport", + "description": "Generates a comprehensive textual report analyzing given input text. Accepts raw text or an array of text segments, performs natural language processing tasks such as summarization, sentiment and keyword extraction, then compiles these insights into a structured report output as plain text or JSON.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The source text to analyze and base the report on.", + "required": true, + "defaultValue": "" + }, + { + "name": "textSegments", + "type": "array", + "description": "Optional array of strings; if provided, report is derived from these multiple text pieces instead of a single inputText string.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a concise summary of the overall text content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze and include the sentiment (e.g., positive, negative, neutral) of the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and list key terms or phrases from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report: 'text' for plain text or 'json' for structured JSON output.", + "required": false, + "defaultValue": "text" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text (e.g., 'en' for English) to tailor language-specific processing.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report as a string or structured JSON based on outputFormat, including optional summary, sentiment score, and keywords extracted." + }, + "aiAgent": { + "useCase": "This tool is valuable when an AI agent needs to produce detailed analytic textual reports from large or multiple text inputs, for example to summarize documents, assess sentiment, or extract key topics, useful in research, customer feedback analysis, or content review.", + "limitations": "The tool does not perform deep domain-specific analysis (e.g., legal or medical expert reports) and is limited to general natural language text analysis. It may not fully capture nuanced context or sarcasm and is dependent on input text quality.", + "examples": [ + "Create a report analyzing customer reviews for sentiment and key complaints.", + "Generate a summary and keyword listing from a batch of news articles.", + "Produce a JSON formatted analytic report from a product description text." + ] + }, + "tags": [ + "text-analysis", + "nlp", + "reporting", + "summarization", + "sentiment-analysis", + "keyword-extraction" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"This product is excellent and easy to use, but the shipping was delayed.\",\"includeSummary\":true,\"includeSentiment\":true,\"includeKeywords\":true,\"outputFormat\":\"text\"}", + "description": "Analyze a single customer feedback text including summary, sentiment, and keywords in plain text output." + }, + { + "inputJson": "{\"textSegments\":[\"The movie was thrilling and very well acted.\",\"I found the soundtrack to be quite memorable.\"],\"includeSummary\":true,\"includeSentiment\":true,\"includeKeywords\":true,\"outputFormat\":\"json\"}", + "description": "Analyze multiple short movie review texts, outputting a full report in JSON format including sentiment and keywords." + }, + { + "inputJson": "{\"inputText\":\"Annual financial report indicates growth in all sectors.\",\"includeSummary\":false,\"includeSentiment\":false,\"includeKeywords\":true,\"outputFormat\":\"text\"}", + "description": "Generate a keywords list from a financial report with minimal analysis, plain text output." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "api-integration.buildCode", + "description": "Generates executable API integration code snippets based on given API specifications, authentication details, target programming language, and desired operations. Inputs include API endpoint definitions, authentication methods, and operation types; the tool outputs ready-to-use code examples that automate API calls accordingly.", + "category": "api-integration", + "parameters": [ + { + "name": "apiSpecification", + "type": "object", + "description": "Structured API specification including endpoints, methods, parameters, and response schema to guide code generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationType", + "type": "string", + "description": "Type of authentication to use for the API (e.g., 'none', 'apiKey', 'oauth2', 'basic').", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationDetails", + "type": "object", + "description": "Credentials or tokens required for the specified authentication method.", + "required": false, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Target programming language for the generated code (e.g., 'python', 'javascript', 'java').", + "required": true, + "defaultValue": "" + }, + { + "name": "operations", + "type": "array", + "description": "List of operation names or HTTP methods to include in the generated code.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeErrorHandling", + "type": "boolean", + "description": "Whether to include basic error handling logic in the generated code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated code snippets keyed by operation and programming language, with explanations and usage instructions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate integration with external APIs by generating ready-to-run code snippets tailored to the API's definitions and authentication requirements, speeding up development and reducing manual implementation errors.", + "limitations": "This tool cannot execute or test the generated code, nor can it guarantee that the code matches all edge cases or handles all specific API peculiarities without manual review.", + "examples": [ + "Generate Python code snippets for a REST API that uses API key authentication including GET and POST operations.", + "Create JavaScript code to interact with an OAuth2 secured API with error handling included.", + "Build Java code for a public API with no authentication and basic GET operation code." + ] + }, + "tags": [ + "api", + "code generation", + "integration", + "automation", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"apiSpecification\":{\"endpoints\":[{\"name\":\"getUser\",\"method\":\"GET\",\"path\":\"/users/{id}\",\"parameters\":{\"path\":[\"id\"]}}]},\"authenticationType\":\"apiKey\",\"authenticationDetails\":{\"apiKeyName\":\"X-API-KEY\",\"apiKeyValue\":\"123abc\"},\"programmingLanguage\":\"python\",\"operations\":[\"getUser\"],\"includeErrorHandling\":true}", + "description": "Generate Python code for 'getUser' GET operation with API key auth." + }, + { + "inputJson": "{\"apiSpecification\":{\"endpoints\":[{\"name\":\"createPost\",\"method\":\"POST\",\"path\":\"/posts\",\"parameters\":{\"body\":[\"title\",\"content\"]}}]},\"authenticationType\":\"oauth2\",\"authenticationDetails\":{\"tokenUrl\":\"https://auth.example.com/token\",\"clientId\":\"abc\",\"clientSecret\":\"xyz\"},\"programmingLanguage\":\"javascript\",\"operations\":[\"createPost\"],\"includeErrorHandling\":true}", + "description": "Generate JavaScript code for 'createPost' POST operation with OAuth2." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "api-integration.analyzeCustomer", + "description": "This tool accepts customer data input including demographics, purchase history, and interaction logs, then performs a comprehensive analysis combining API calls to CRM, marketing, and analytics services. It outputs a detailed customer profile with segmentation, lifetime value prediction, and churn risk scores to support targeted business decisions.", + "category": "api-integration", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier of the customer to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "includePurchaseHistory", + "type": "boolean", + "description": "Whether to include detailed purchase history in the analysis", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeInteractionLogs", + "type": "boolean", + "description": "Whether to include customer interaction logs (e.g., support tickets, web visits)", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSegmentationCategories", + "type": "number", + "description": "Maximum number of customer segments to classify into", + "required": false, + "defaultValue": "5" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis output, e.g., JSON or XML", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing customer segmentation, predicted lifetime value, churn risk score, and key behavioral insights based on integrated API data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to synthesize and analyze diverse customer data from multiple integrated APIs to generate actionable customer insights, segmentation, and predictive indicators for marketing or retention strategies.", + "limitations": "This tool relies on integrated third-party APIs and data quality; it cannot access data not available via configured APIs nor produce insights without sufficient input data.", + "examples": [ + "Analyze customer profile and predict churn risk for customer ID 'CUST1234'.", + "Provide detailed customer segmentation and value prediction excluding interaction logs.", + "Return customer analysis in XML format with up to 3 segmentation categories." + ] + }, + "tags": [ + "api-integration", + "customer-analysis", + "crm", + "segmentation", + "predictive-analytics", + "marketing", + "data-integration" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"CUST1234\",\"includePurchaseHistory\":true,\"includeInteractionLogs\":true,\"maxSegmentationCategories\":5,\"outputFormat\":\"JSON\"}", + "description": "Analyze a customer fully including purchase history and interactions with detailed segmentation." + }, + { + "inputJson": "{\"customerId\":\"CUST5678\",\"includePurchaseHistory\":false,\"includeInteractionLogs\":true,\"maxSegmentationCategories\":3,\"outputFormat\":\"JSON\"}", + "description": "Analyze a customer focusing on interaction logs but excluding purchase history, limiting segments to 3." + }, + { + "inputJson": "{\"customerId\":\"CUST91011\",\"includePurchaseHistory\":true,\"includeInteractionLogs\":true,\"maxSegmentationCategories\":4,\"outputFormat\":\"XML\"}", + "description": "Perform full analysis of a customer with results formatted in XML and up to 4 segmentation categories." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "api-integration.analyzeReport", + "description": "Analyzes structured report documents provided as JSON or text, extracting key insights such as summary, trends, anomalies, and sentiment, and produces a detailed analysis object that highlights important findings from the report content.", + "category": "api-integration", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The full content of the report to analyze, can be plain text or JSON string representing structured report data.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentFormat", + "type": "string", + "description": "Format of the reportContent input, e.g., 'text' or 'json'. Helps tailor the parsing and analysis process.", + "required": false, + "defaultValue": "text" + }, + { + "name": "focusAreas", + "type": "array", + "description": "Specific sections or topics within the report to focus the analysis on, such as 'financial', 'performance', or 'risk'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to include sentiment analysis on report narratives when applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length in characters for the generated summary output.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An analysis object containing extracted key points, summary, detected trends, anomalies, and optionally sentiment scores and focused section insights." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract actionable insights and summaries from lengthy structured or semi-structured report documents, enabling quick understanding of main points without manual reading. Useful in automating report review workflows or feeding summarized data into decision making systems.", + "limitations": "This tool cannot generate original data or validate accuracy of report contents. It may perform less effectively on poorly structured or extremely technical reports not in supported formats.", + "examples": [ + "Analyze this company's quarterly financial report and provide a summary with key trends.", + "Extract anomalies and risks from the performance report JSON data provided.", + "Provide sentiment analysis and summary for the textual market analysis report." + ] + }, + "tags": [ + "api-integration", + "analysis", + "report", + "summary", + "sentiment", + "data-extraction", + "automation" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"{\\\"title\\\": \\\"Q2 Financial Report\\\", \\\"sections\\\": [{\\\"name\\\": \\\"Revenue\\\", \\\"content\\\": \\\"Revenue increased by 10% compared to last quarter.\\\"}, {\\\"name\\\": \\\"Risks\\\", \\\"content\\\": \\\"Potential supply chain delays due to geopolitical tensions.\\\"}]}\",\"contentFormat\":\"json\",\"includeSentimentAnalysis\":true}", + "description": "Analyze a structured JSON financial report, including sentiment analysis." + }, + { + "inputJson": "{\"reportContent\":\"The company suffered a slight decline in sales this quarter, mostly due to market saturation. However, new product lines show promising growth.\",\"contentFormat\":\"text\",\"maxSummaryLength\":300}", + "description": "Analyze plain text market report and generate a summary focused on growth trends." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "api-integration.createCustomer", + "description": "Creates a new customer record in a CRM or business management system by accepting customer details such as name, email, phone, and address. It validates the input data and returns the created customer ID along with status confirmation and any error messages if creation fails.", + "category": "api-integration", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "Customer's first name", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "Customer's last name", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Customer's email address (used as a key contact)", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Customer's phone number for contact", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Customer's physical address details including street, city, state, postal code, and country", + "required": false, + "defaultValue": "" + }, + { + "name": "customFields", + "type": "object", + "description": "Optional additional custom key-value pairs related to the customer (e.g., loyalty tier, referral source)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique customer ID, a success boolean, a message string detailing success or failure, and an optional error object if any errors occurred." + }, + "aiAgent": { + "useCase": "Use this tool when integrating with external CRM or business platforms to automate customer onboarding by programmatically creating new customer records with validated input data. Suitable in workflows that require synchronized customer creation from other systems or frontends.", + "limitations": "Does not handle customer updates or deletions. Does not validate complex business logic beyond basic input validation. Does not support batch creation in one call.", + "examples": [ + "Create a new customer profile from signup form data.", + "Add a customer record to CRM after verifying the email is unique.", + "Automate customer creation in ERP during order processing." + ] + }, + "tags": [ + "api", + "customer", + "crm", + "business", + "integration", + "create", + "automation" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"+1234567890\",\"address\":{\"street\":\"123 Elm St\",\"city\":\"Springfield\",\"state\":\"IL\",\"postalCode\":\"62704\",\"country\":\"USA\"},\"customFields\":{\"loyaltyTier\":\"Gold\",\"referralSource\":\"Website\"}}", + "description": "Create a new gold-tier customer named Jane Doe with complete contact and address info." + }, + { + "inputJson": "{\"firstName\":\"John\",\"lastName\":\"Smith\",\"email\":\"john.smith@example.com\"}", + "description": "Create a minimal customer record with just the essential contact info." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "agent-management.analyzeJSON", + "description": "This tool accepts JSON data as input and performs detailed analysis including structure validation, key statistics, value types distribution, and detection of anomalies or inconsistencies. It outputs a comprehensive report summarizing insights about the JSON content, such as nested levels, array sizes, and potential data quality issues.", + "category": "agent-management", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "A raw JSON string to be analyzed. Must be valid JSON format.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "Optional JSON Schema object against which to validate the input JSON for conformity and highlight deviations.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeStatistics", + "type": "boolean", + "description": "Flag to include detailed statistics such as counts of keys, data types, and nested object depths in the output analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to detect and report anomalies such as missing keys, unexpected data types, or inconsistent array element types within the JSON data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxNestingLevel", + "type": "number", + "description": "Maximum depth of nesting to analyze within the JSON structure; deeper levels beyond this limit will be summarized.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An analysis report summarizing JSON structure, validation results, statistics, and anomaly detection findings in a structured format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the structure, conformity, and data quality of JSON content, such as validating incoming JSON payloads to AI agents, analyzing configuration files, or preparing data for further processing. It helps identify structural problems, unexpected data patterns, or schema violations early in a workflow.", + "limitations": "This tool does not modify or correct JSON data; it only analyzes and reports issues. It requires valid JSON input and optionally a JSON Schema for validation. Deeply nested JSON beyond maxNestingLevel parameter may be summarized and not fully detailed.", + "examples": [ + "Analyze a configuration JSON string for structure and statistics.", + "Validate JSON input data against a provided JSON Schema and detect anomalies.", + "Summarize the data types and nesting depth of a complex API response JSON." + ] + }, + "tags": [ + "analysis", + "json", + "validation", + "data-quality", + "agent-management", + "structure", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"users\\\":[{\\\"id\\\":1,\\\"name\\\":\\\"Alice\\\"},{\\\"id\\\":2,\\\"name\\\":\\\"Bob\\\"}]}\"}", + "description": "Analyze a simple JSON with an array of user objects, checking structure and basic statistics." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"product\\\":\\\"Book\\\", \\\"price\\\":12.99, \\\"tags\\\":[\\\"fiction\\\", \\\"bestseller\\\"], \\\"available\\\":true}\", \"includeStatistics\":false}", + "description": "Analyze a product JSON object without detailed statistics, focusing on structure and key presence." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"orders\\\":[{\\\"id\\\":123,\\\"items\\\":[{\\\"productId\\\":456,\\\"qty\\\":2}]}]}\", \"maxNestingLevel\":2, \"detectAnomalies\":false}", + "description": "Analyze orders JSON with limited nesting depth and no anomaly detection to improve performance on large data." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "agent-management.downloadFile", + "description": "Downloads a file from a specified URL or agent-accessible location and saves it locally or returns its content. Accepts a source URL or agent file path, supports optional authentication headers, and can save to a specified local path or output the file content as a base64 string. Provides download status and metadata as output.", + "category": "agent-management", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL or agent-accessible file path from which to download the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Optional local file system path to save the downloaded file. If omitted, file content is returned base64 encoded.", + "required": false, + "defaultValue": "" + }, + { + "name": "authHeaders", + "type": "object", + "description": "Optional HTTP headers for authentication or authorization (e.g., bearer tokens).", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout duration in seconds for the download operation.", + "required": false, + "defaultValue": "30" + }, + { + "name": "retryCount", + "type": "number", + "description": "Number of retry attempts if the download fails.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file name, size in bytes, last modified timestamp, download success status, and either the base64 encoded file content (if destinationPath not provided) or the local save path." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to download external files, such as configuration files, data assets, or binaries, either for local processing or to pass them along to other tools. It is ideal when source URLs require authentication or when the file needs to be saved locally. Examples include fetching a software package, retrieving a dataset, or accessing a document for further analysis.", + "limitations": "Cannot download files from sources requiring interactive authentication (e.g., CAPTCHA or multi-factor auth). Does not support streaming large files beyond memory limits. Does not verify file content integrity beyond HTTP status codes.", + "examples": [ + "Download a JSON configuration file from a secured API endpoint and save it locally.", + "Fetch an image file from a public URL and obtain its base64 content for embedding.", + "Retry downloading a file up to three times if initial attempts fail due to transient network errors." + ] + }, + "tags": [ + "download", + "file", + "agent-management", + "http", + "authentication", + "file-transfer" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/config.json\",\"destinationPath\":\"/tmp/config.json\"}", + "description": "Download a configuration JSON file from HTTPS URL and save it locally." + }, + { + "inputJson": "{\"sourceUrl\":\"https://example.com/logo.png\",\"authHeaders\":{\"Authorization\":\"Bearer token123\"}}", + "description": "Download an image file using bearer token authentication and return as base64." + }, + { + "inputJson": "{\"sourceUrl\":\"https://example.com/data.csv\",\"retryCount\":5,\"timeoutSeconds\":10}", + "description": "Download a CSV file with 5 retry attempts and 10 seconds timeout per attempt, without saving locally." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "agent-management.uploadDocument", + "description": "Uploads a document file to an AI agent management system, associating it with a specified agent for reference or training purposes. Accepts the document content as base64-encoded string or a file URL, along with metadata such as document type and description. Returns a confirmation with document ID and upload status.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "Unique identifier of the agent the document will be linked to.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentName", + "type": "string", + "description": "The name to assign to the uploaded document.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentContentBase64", + "type": "string", + "description": "Base64-encoded content of the document file to upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentUrl", + "type": "string", + "description": "URL to fetch the document from if content is not directly provided as base64 string.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type or format of the document, e.g., 'pdf', 'txt', 'docx'. Helps with processing and indexing.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional brief description or notes about the document being uploaded.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the document ID assigned, the upload status, and a message indicating success or details of any error." + }, + "aiAgent": { + "useCase": "Use this tool when needing to upload various reference or training documents into an AI agent management platform to enhance agent capabilities or keep track of important files associated with each AI agent. useful for dynamically expanding an agent's knowledge base or record keeping.", + "limitations": "Cannot process or interpret document contents; only uploads and stores. The tool does not perform content validation or conversion beyond type tagging. Requires either base64 content or a valid accessible URL for upload.", + "examples": [ + "Upload a PDF user manual to agent with ID 'agent123' for reference.", + "Provide a text transcript file content base64 string directly for the agent's knowledge base.", + "Upload a document by URL link to keep centralized document management for an AI bot." + ] + }, + "tags": [ + "agent-management", + "upload", + "document", + "file", + "knowledge-base", + "ai-agent", + "reference" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"documentName\":\"UserManual.pdf\",\"documentContentBase64\":\"JVBERi0xLjQKJcfs...\",\"documentType\":\"pdf\",\"description\":\"User manual for troubleshooting.\"}", + "description": "Uploading a PDF user manual document content directly encoded in base64 for a specific AI agent." + }, + { + "inputJson": "{\"agentId\":\"agent456\",\"documentName\":\"MeetingNotes.txt\",\"documentUrl\":\"https://example.com/files/meeting-notes.txt\",\"documentType\":\"txt\",\"description\":\"Notes from the last project meeting.\"}", + "description": "Uploading a text document to the agent by providing a publicly accessible URL." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "agent-management.downloadDocument", + "description": "Downloads a specified document associated with a particular AI agent or bot. Takes as input the unique agent identifier and the document's resource identifier or URL, and returns the document content or a download link in the requested format. Supports optional parameters for format conversion and authentication.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "Unique identifier of the AI agent whose document is to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentId", + "type": "string", + "description": "Unique identifier or URL of the document to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Optional target format for the document (e.g., pdf, txt, docx). If not provided, returns original format.", + "required": false, + "defaultValue": "" + }, + { + "name": "authenticate", + "type": "boolean", + "description": "Whether to perform authentication before downloading (true/false). Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the document content as a base64 string or a direct download link, along with metadata such as filename, size, and mimeType." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to fetch and download documents associated with other agents or bots for review, analysis, or archival purposes, especially when providing specific document or agent identifiers. It is suitable for scenarios requiring controlled access and optional format conversions.", + "limitations": "Cannot generate documents or modify contents; only downloads existing documents. It cannot access documents without proper permissions if authentication fails or is not provided.", + "examples": [ + "Download the report PDF document for agent ID AGT123.", + "Download the user manual document for agent AGT456 in plain text format.", + "Download document with URL 'https://example.com/doc/789' with authentication enabled." + ] + }, + "tags": [ + "agent-management", + "download", + "document", + "file-access", + "authentication", + "format-conversion" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"AGT123\",\"documentId\":\"DOC456\"}", + "description": "Download a document by agent ID and document ID with default settings." + }, + { + "inputJson": "{\"agentId\":\"AGT789\",\"documentId\":\"https://example.com/manual.pdf\",\"format\":\"txt\"}", + "description": "Download an external document and convert to text format." + }, + { + "inputJson": "{\"agentId\":\"AGT234\",\"documentId\":\"DOC789\",\"authenticate\":true}", + "description": "Download a document requiring authentication for agent AGT234." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "agent-management.uploadFile", + "description": "Uploads a file to the specified AI agent's environment or storage for use in agent tasks. Accepts a file in base64 or URL format, along with metadata, and returns a confirmation with file ID and status upon successful upload.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "Unique identifier of the AI agent to which the file will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the file being uploaded, including extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "The actual file content encoded in base64 format. Provide either this or fileURL.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileURL", + "type": "string", + "description": "A URL pointing to the file location if not uploading raw content directly. Provide either this or fileContentBase64.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file being uploaded (e.g., 'application/pdf', 'image/png').", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata associated with the file, such as description, tags, or purpose for agent use.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite the file if a file with the same name already exists for the agent.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status, unique file identifier, and optional error message if upload fails." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent requires external files for processing, learning, or operational tasks. It allows uploading configuration files, datasets, images, or documents directly to the agent's accessible storage or environment. Agents should invoke this tool when they need to ingest external data or media to function effectively.", + "limitations": "This tool does not process, analyze, or validate file contents beyond simple metadata checks. It does not support streaming large files or direct manipulation of file content after upload.", + "examples": [ + "Upload a configuration JSON file for an AI agent to customize its behavior.", + "Upload an image file to the agent for object recognition tasks.", + "Upload a dataset CSV file for agent training purposes." + ] + }, + "tags": [ + "upload", + "file", + "agent-management", + "storage", + "media", + "configuration", + "data" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"fileName\":\"config.json\",\"fileContentBase64\":\"eyJjb25maWciOiAiZXhhbXBsZSJ9\",\"fileType\":\"application/json\",\"metadata\":{\"description\":\"Configuration file for behavior tuning\"},\"overwriteExisting\":true}", + "description": "Upload a JSON configuration file to customize the agent's behavior, overwriting existing file named config.json." + }, + { + "inputJson": "{\"agentId\":\"agent456\",\"fileName\":\"image.png\",\"fileURL\":\"https://example.com/image.png\",\"fileType\":\"image/png\",\"metadata\":{\"tags\":[\"recognition\",\"input\"]}}", + "description": "Upload an image file via URL for the agent to use in recognition tasks with associated tags." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "agent-management.formatDocument", + "description": "Formats AI agent-related documents such as agent specifications, dialogues, or interaction logs. Accepts raw document text and a formatting style (e.g., markdown, JSON pretty-print) and returns the document reformatted for clarity and structured presentation, improving readability and consistency in agent management workflows.", + "category": "agent-management", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The raw text content of the document to be formatted, containing agent data or logs.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Desired output formatting style, such as 'markdown', 'json', or 'plainText'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "indentSpaces", + "type": "number", + "description": "Number of spaces used for indentation in formatted output, relevant for JSON or code blocks.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata (timestamps, authorship) in the formatted output if present in the document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document as a string under the 'formattedDocument' key." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to present or save agent-related documentation in a clean, standardized format to improve readability and maintainability. Ideal for preparing reports, logs, or agent spec files for review, sharing, or archival.", + "limitations": "This tool does not generate or analyze document content; it only reformats existing textual documents. It cannot interpret domain-specific semantics beyond formatting style rules.", + "examples": [ + "Format an interaction log into markdown for clearer presentation.", + "Convert an agent specification document from raw JSON string into pretty-printed JSON with consistent indentation.", + "Prepare raw dialogue transcripts into plain text by removing special formatting characters." + ] + }, + "tags": [ + "agent-management", + "formatting", + "document", + "report", + "markup" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"{\\\"agentName\\\":\\\"HelperBot\\\",\\\"version\\\":1.0,\\\"interactions\\\":[{\\\"user\\\":\\\"Hi\\\",\\\"bot\\\":\\\"Hello!\\\"}]}", + "description": "Format raw JSON agent data into a pretty-printed JSON string for readability." + }, + { + "inputJson": "{\"documentText\":\"User: Hello\\nBot: Hi there!\\nUser: Help me format this document.\",\"formatStyle\":\"markdown\",\"includeMetadata\":false}", + "description": "Format plain dialogue log into markdown style for better visual structure." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "agent-management.composeDocument", + "description": "This tool assists in composing structured documents by accepting input sections, their content, and formatting preferences, then generating a cohesive document output in the specified format. It processes inputs such as title, section list, and style options to assemble a finalized document text.", + "category": "agent-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the document to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An ordered list of sections, each with a heading and body content, to include in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output document format (e.g., 'markdown', 'html', 'plaintext').", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to automatically generate a table of contents based on sections.", + "required": false, + "defaultValue": "false" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Optional styling parameters such as font size, color theme, or indentation settings.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully composed document content as a formatted string corresponding to the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate well-structured documents from modular content parts, such as reports, proposals, or papers, where sections and formatting need to be assembled dynamically.", + "limitations": "This tool does not perform advanced content editing, spell checking, or semantic content generation; it focuses on assembling and formatting provided inputs into a cohesive document.", + "examples": [ + "Compose a markdown project report with sections for Introduction, Methodology, and Results including a table of contents.", + "Generate an HTML technical specification document with custom styling and section headings.", + "Create a plain text meeting summary document from provided notes and headings without additional formatting." + ] + }, + "tags": [ + "document", + "compose", + "agent-management", + "formatting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Project Alpha Report\",\"sections\":[{\"heading\":\"Introduction\",\"body\":\"Overview of the project scope and objectives.\"},{\"heading\":\"Methodology\",\"body\":\"Details of methods used during development.\"},{\"heading\":\"Results\",\"body\":\"Summary of outcomes and findings.\"}],\"format\":\"markdown\",\"includeTableOfContents\":true}", + "description": "Compose a markdown report document with given sections and a table of contents." + }, + { + "inputJson": "{\"title\":\"Technical Specification\",\"sections\":[{\"heading\":\"System Architecture\",\"body\":\"Description of architecture components.\"},{\"heading\":\"API Details\",\"body\":\"Endpoints and data formats.\"}],\"format\":\"html\",\"includeTableOfContents\":false,\"styleOptions\":{\"fontSize\":\"12pt\",\"colorTheme\":\"dark\"}}", + "description": "Generate an HTML technical doc with custom style and sections, no TOC." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "agent-management.generateJSON", + "description": "Generates a structured JSON configuration for AI agents or bots based on specified parameters such as agent name, capabilities, triggers, and metadata. This tool accepts input details about the agent's functions and outputs a properly formatted JSON object representing the agent configuration for integration or deployment.", + "category": "agent-management", + "parameters": [ + { + "name": "agentName", + "type": "string", + "description": "The name identifier for the AI agent or bot to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "capabilities", + "type": "array", + "description": "An array of strings listing the specific capabilities or functions the agent should perform.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "triggers", + "type": "array", + "description": "An array of event names or trigger conditions that activate the agent’s actions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs providing additional information about the agent, such as version, author, or description.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag indicating whether the agent should enable internal action logging for diagnostics.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the entire configuration of the AI agent, including name, capabilities, triggers, metadata, and settings." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically create or update AI agent configurations in JSON format for deployment or management in automation systems. It helps standardize agent definition with required capabilities, triggers, and metadata, facilitating integration into agent orchestration platforms.", + "limitations": "This tool only generates configuration JSON; it does not deploy, execute, or validate the runtime behavior of the agents.", + "examples": [ + "Create a JSON configuration for a customer support chatbot with greeting and FAQ answering capabilities.", + "Generate an agent JSON with custom event triggers for a monitoring bot.", + "Produce a JSON object for an AI agent including metadata about version and author, with logging enabled." + ] + }, + "tags": [ + "agent-management", + "json-generation", + "configuration", + "automation", + "bot-setup" + ], + "examples": [ + { + "inputJson": "{\"agentName\":\"SupportBot\",\"capabilities\":[\"greetUser\",\"answerFAQ\"],\"triggers\":[\"onUserMessage\"],\"metadata\":{\"version\":\"1.0\",\"author\":\"Jane Doe\"},\"enableLogging\":true}", + "description": "Generate a JSON config for a support chatbot with greeting and FAQ capabilities, triggered by user messages, including metadata and logging enabled." + }, + { + "inputJson": "{\"agentName\":\"MonitorBot\",\"capabilities\":[\"checkStatus\",\"sendAlert\"],\"triggers\":[\"onThresholdBreach\"],\"enableLogging\":false}", + "description": "Generate a minimal JSON config for a monitoring bot that triggers alerts on threshold breaches without logging." + }, + { + "inputJson": "{\"agentName\":\"DataCollector\",\"capabilities\":[\"collectData\",\"uploadReport\"],\"metadata\":{\"description\":\"Collects environmental data\",\"version\":\"2.1\"}}", + "description": "Generate JSON configuration for a data collection agent specifying description and version metadata without triggers or logging." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "prompt-engineering.sendEmail", + "description": "This tool accepts email parameters such as recipients, subject, body content, and optional attachments. It processes these inputs by formatting and sending an email through a configured SMTP or email service provider. The output confirms successful delivery or reports errors encountered during transmission.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses. Required for sending the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of CC recipient email addresses. Optional parameter.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of BCC recipient email addresses. Optional parameter.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email to be sent. Required field.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content or body of the email. Can contain plain text or HTML. Required field.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating whether the body content is HTML formatted. Defaults to false (plain text).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects, each including filename and file content encoded as base64 string.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing status (success or failure), messageId of the sent email if successful, and error details if any failure occurred." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send emails as part of workflows involving notifications, confirmations, or communications derived from AI-generated content. It automates the email composition and delivery process using given parameters.", + "limitations": "This tool does not handle email inbox reading, management, or complex email threading behaviors. It also cannot verify email delivery beyond initial sending confirmation.", + "examples": [ + "Send a meeting invitation email to a list of recipients with an attached agenda PDF.", + "Send a plain text notification email to multiple recipients including CC and BCC addresses.", + "Send an HTML formatted promotional email with embedded images and multiple attachments." + ] + }, + "tags": [ + "email", + "communication", + "automation", + "notification", + "smtp", + "html", + "attachments", + "prompt-engineering" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Project Update\",\"body\":\"Please find the latest project update attached.\",\"isHtml\":false,\"attachments\":[{\"filename\":\"update.pdf\",\"content\":\"JVBERi0xLjQKJcfs...\"}]}", + "description": "Send a basic update email with a PDF attachment to a single recipient." + }, + { + "inputJson": "{\"to\":[\"team@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[\"auditor@example.com\"],\"subject\":\"Weekly Report\",\"body\":\"

Weekly Report

Details inside

\",\"isHtml\":true}", + "description": "Send an HTML formatted weekly report to team with CC and BCC recipients." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeCustomer", + "description": "Analyzes customer-related prompt inputs to evaluate sentiment, intent, and key topics. Accepts raw customer feedback or dialogues as input, processes them with NLP models to extract sentiment scores, categorize intent, and identify main topics mentioned. Outputs a detailed analysis report suitable for refining customer interaction prompts and improving AI response relevance.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "customerInput", + "type": "string", + "description": "Raw customer text input such as feedback, support tickets, or chat logs to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the input text (e.g., 'en', 'es').", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeIntent", + "type": "boolean", + "description": "Whether to detect the customer's intent from the input.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopics", + "type": "boolean", + "description": "Whether to extract key topics or keywords from the input.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of main topics to extract (1-10).", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis object containing sentiment score, categorized intent, and identified key topics with relevance scores." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand and summarize customer inputs to enhance prompt crafting for customer support, sentiment-aware responses, or tailored marketing messages. Useful in scenarios involving textual customer feedback analysis and intent classification to optimize AI conversational prompts.", + "limitations": "Does not generate or modify prompts directly; only provides analysis of input text. Accuracy depends on input quality and pre-trained NLP model capabilities. Not designed for non-textual customer data analysis.", + "examples": [ + "Analyze a batch of customer support chat messages to detect common complaints and sentiment trends.", + "Evaluate customer feedback comments to identify overall satisfaction and key topics of interest.", + "Determine intent categories from customer inquiries to route to the appropriate support team." + ] + }, + "tags": [ + "prompt-engineering", + "customer-analysis", + "sentiment-analysis", + "intent-classification", + "topic-extraction", + "NLP", + "customer-support" + ], + "examples": [ + { + "inputJson": "{\"customerInput\":\"I'm really frustrated that my order hasn't arrived yet and no one is answering my calls.\",\"language\":\"en\",\"includeSentiment\":true,\"includeIntent\":true,\"includeTopics\":true,\"maxTopics\":3}", + "description": "Analyze a customer's complaint to extract sentiment, intent, and main topics." + }, + { + "inputJson": "{\"customerInput\":\"Thank you for the quick delivery and excellent service!\",\n\"language\":\"en\",\n\"includeSentiment\":true,\n\"includeIntent\":true,\n\"includeTopics\":true,\n\"maxTopics\":2}", + "description": "Analyze positive customer feedback to identify sentiment and key compliments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "agent-management.generateTest", + "description": "Generates automated test cases for an AI agent's code or behavior based on provided specifications or existing code snippets. Accepts code or behavior description as input, analyzes it to produce unit or integration tests, and outputs structured test scripts or test definitions compatible with common testing frameworks.", + "category": "agent-management", + "parameters": [ + { + "name": "codeSnippet", + "type": "string", + "description": "The source code or behavior description of the AI agent to generate tests for.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The testing framework to target for generated tests (e.g., Jest, Mocha, Pytest).", + "required": false, + "defaultValue": "Jest" + }, + { + "name": "testType", + "type": "string", + "description": "Type of tests to generate: 'unit', 'integration', or 'functional'.", + "required": false, + "defaultValue": "unit" + }, + { + "name": "depth", + "type": "number", + "description": "Level of test coverage depth, indicating how detailed the tests should be on a scale from 1 (basic) to 5 (very detailed).", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeMocks", + "type": "boolean", + "description": "Whether to include mock objects/stubs in generated tests to isolate units.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated test scripts mapped by file names or test IDs, ready to be integrated into the agent's codebase." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically create or augment test coverage for AI agent components to ensure functionality correctness, regression protection, or compliance with testing standards. It helps streamline testing by producing ready-to-use test cases based on input code or descriptions.", + "limitations": "Cannot guarantee 100% test coverage or perfectly handle highly dynamic or unconventional code patterns; may require manual review and refinement of generated tests.", + "examples": [ + "Generate unit tests for an AI agent function handling user input parsing using Jest.", + "Create integration tests for an agent's communication module in Mocha.", + "Produce functional tests for the agent's behavior description focusing on key scenarios." + ] + }, + "tags": [ + "testing", + "AI agent", + "automation", + "code generation", + "unit tests", + "integration tests" + ], + "examples": [ + { + "inputJson": "{\"codeSnippet\":\"function parseUserInput(input) { return input.trim().toLowerCase(); }\",\"testFramework\":\"Jest\",\"testType\":\"unit\",\"depth\":3,\"includeMocks\":true}", + "description": "Generate basic unit tests for a function that parses and normalizes user input." + }, + { + "inputJson": "{\"codeSnippet\":\"class CommunicationModule { sendMessage(msg) { /* sends msg */ } receiveMessage() { /* receives msg */ } }\",\"testFramework\":\"Mocha\",\"testType\":\"integration\",\"depth\":4,\"includeMocks\":false}", + "description": "Generate integration tests for the communication module without mocks." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "agent-management.generateDataset", + "description": "Generates synthetic datasets tailored for training and evaluating AI agents or bots based on specified parameters such as data schema, size, and content types. Accepts input describing the desired dataset structure and outputs a structured dataset in JSON or CSV format.", + "category": "agent-management", + "parameters": [ + { + "name": "schema", + "type": "object", + "description": "Defines the structure of the dataset including fields, their types, and constraints (e.g., numerical, categorical, text).", + "required": true, + "defaultValue": "" + }, + { + "name": "numRecords", + "type": "number", + "description": "Specifies the number of data records to generate in the dataset.", + "required": true, + "defaultValue": "1000" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the output dataset; supports 'JSON' or 'CSV'.", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "If true and outputFormat is CSV, includes header row with field names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "randomSeed", + "type": "number", + "description": "Seed for random number generator to produce reproducible datasets.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dataset as a string and metadata such as number of records and schema." + }, + "aiAgent": { + "useCase": "Use this tool when you need customized synthetic datasets to train, validate, or test AI agents, especially when real data is unavailable or sensitive. It is well suited for generating controlled experimental data conforming to specific schemas and sizes.", + "limitations": "The tool cannot guarantee real-world data distribution fidelity or generate complex correlated data without advanced model specification. It is best for generic or test data generation.", + "examples": [ + "Generate a dataset with 5000 records including fields 'age' (number) and 'country' (categorical) in CSV format.", + "Create a JSON dataset of 100 records with a schema including 'userId' (string) and 'actions' (array).", + "Produce a reproducible dataset with 2000 entries using a specified random seed." + ] + }, + "tags": [ + "dataset", + "synthetic-data", + "AI-training", + "agent-management", + "data-generation" + ], + "examples": [ + { + "inputJson": "{\"schema\":{\"fields\":[{\"name\":\"age\",\"type\":\"number\"},{\"name\":\"country\",\"type\":\"categorical\",\"categories\":[\"US\",\"UK\",\"FR\"]}]},\"numRecords\":5000,\"outputFormat\":\"CSV\",\"includeHeaders\":true}", + "description": "Generate a CSV dataset with 5000 records having age and country fields." + }, + { + "inputJson": "{\"schema\":{\"fields\":[{\"name\":\"userId\",\"type\":\"string\"},{\"name\":\"actions\",\"type\":\"array\",\"elementType\":\"string\"}]},\"numRecords\":100,\"outputFormat\":\"JSON\"}", + "description": "Generate a JSON dataset with 100 records containing userId and a list of actions." + }, + { + "inputJson": "{\"schema\":{\"fields\":[{\"name\":\"score\",\"type\":\"number\"}]},\"numRecords\":2000,\"randomSeed\":42}", + "description": "Generate a reproducible dataset of 2000 numerical score entries with a fixed random seed." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "prompt-engineering.generateReport", + "description": "Generates a detailed textual report based on a provided prompt template and input data. Accepts a base prompt, context data, and formatting instructions, then processes them to produce a coherent and structured report output suitable for documentation, analysis, or presentation purposes.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptTemplate", + "type": "string", + "description": "The base prompt template containing placeholders for dynamic content to guide report generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextData", + "type": "object", + "description": "An object containing key-value pairs to fill into the prompt template placeholders, providing relevant details for the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The desired output format of the report, e.g., 'text', 'markdown', 'html'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag indicating whether to include an executive summary section at the beginning of the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated report text to control verbosity and size.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report text in the specified format, along with metadata such as word count." + }, + "aiAgent": { + "useCase": "Use this tool when a detailed, structured report needs to be generated from a prompt template combined with contextual data, facilitating consistent report creation for documentation, summaries, project updates, or analysis. Ideal when the agent must automate report writing by filling in dynamic content and controlling format and length.", + "limitations": "Cannot generate reports without sufficient context data or prompt templates; quality depends on input completeness and clarity. Does not handle complex multi-modal data (images, tables) inherently.", + "examples": [ + "Generate a project status report based on recent milestones and issues.", + "Create a markdown summary report of survey results using provided key metrics.", + "Produce an HTML formatted executive summary from provided context data." + ] + }, + "tags": [ + "prompt-engineering", + "generate", + "report", + "documentation", + "text-generation", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"promptTemplate\":\"Project Report:\\nTitle: {title}\\nDate: {date}\\nSummary: {summary}\\nDetails: {details}\",\"contextData\":{\"title\":\"Alpha Release\",\"date\":\"2024-06-25\",\"summary\":\"Completed core features\",\"details\":\"All planned features for the alpha release are implemented and tested.\"},\"format\":\"text\",\"includeSummary\":true,\"maxLength\":500}", + "description": "Generate a plain text project report from given context data using a template." + }, + { + "inputJson": "{\"promptTemplate\":\"# Survey Summary\\n## {surveyName}\\n**Date:** {date}\\n\\n### Highlights\\n{highlights}\",\"contextData\":{\"surveyName\":\"Customer Satisfaction 2024\",\"date\":\"2024-06-20\",\"highlights\":\"Over 85% satisfaction rate, major improvements in delivery times.\"},\"format\":\"markdown\",\"includeSummary\":false,\"maxLength\":300}", + "description": "Create a markdown formatted survey summary report without an executive summary section." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "prompt-engineering.buildCode", + "description": "This tool accepts a natural language specification of desired code functionality and programming language preferences, and generates code snippets accordingly. It supports customization of code style, complexity, and inclusion of comments. The output is a ready-to-use code block matching the requested specification.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "specification", + "type": "string", + "description": "Detailed natural language description of the desired code functionality and requirements.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language in which to generate the code, e.g., Python, JavaScript, Java.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "complexityLevel", + "type": "string", + "description": "Desired complexity of the code: 'simple', 'moderate', or 'advanced'.", + "required": false, + "defaultValue": "moderate" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Preferred code style or framework usage, e.g., functional, object-oriented, procedural.", + "required": false, + "defaultValue": "procedural" + }, + { + "name": "maxLines", + "type": "number", + "description": "Maximum number of lines in the generated code snippet.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string, with metadata about the language used and lines count, e.g., { code: string, language: string, lines: number }." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate executable code from a high-level functional specification expressed in natural language, optionally adapted to a particular programming language and style preferences. Ideal for prototyping, example generation, or assisting developers with code templates.", + "limitations": "The tool cannot produce fully optimized, production-ready code for complex projects and may require human review and refinement. It is limited by the natural language clarity and may generate incomplete or syntactically imperfect code snippets.", + "examples": [ + "Generate Python code to sort a list using merge sort, including comments.", + "Create a JavaScript function to validate an email address string with simple complexity.", + "Provide a moderate complexity Java class implementing a stack with standard operations." + ] + }, + "tags": [ + "prompt-engineering", + "code-generation", + "programming", + "automation", + "AI-coding", + "developer-assist" + ], + "examples": [ + { + "inputJson": "{\"specification\":\"Generate Python code to reverse a string.\",\"programmingLanguage\":\"Python\",\"includeComments\":true,\"complexityLevel\":\"simple\",\"codeStyle\":\"procedural\",\"maxLines\":20}", + "description": "A basic Python function to reverse a string with comments." + }, + { + "inputJson": "{\"specification\":\"Create a JavaScript function to check if a number is prime.\",\"programmingLanguage\":\"JavaScript\",\"includeComments\":false,\"complexityLevel\":\"moderate\",\"codeStyle\":\"functional\",\"maxLines\":30}", + "description": "A JS function to validate prime numbers, functional style, no comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeReport", + "description": "This tool accepts a text-based prompt engineering report document and analyzes its structure, clarity, prompt strategies, and effectiveness. It processes the input report to identify strengths, weaknesses, and improvement opportunities, outputting a detailed analysis including summary, recommendations, and key metrics about prompt quality and design.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "reportText", + "type": "string", + "description": "The full text content of the prompt engineering report to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language of the report text to appropriately tailor the analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "Whether to produce an in-depth analysis including example prompts evaluation and advanced metrics.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum character length for the summary section in the output analysis.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis summary, identified strengths, weaknesses, detailed recommendations for improvement, and quantitative metrics about prompt efficacy and design quality." + }, + "aiAgent": { + "useCase": "Use this tool when you have a prompt engineering report document and want to automatically extract insights about its quality, clarity, and effectiveness, to support iterative improvement or knowledge sharing.", + "limitations": "Cannot execute or validate prompts; analysis is based on textual content and heuristic methods, not live prompt testing or runtime model feedback.", + "examples": [ + "Analyze the prompt engineering report text and identify areas to improve clarity.", + "Provide a summary and evaluate the overall effectiveness of provided prompt strategies.", + "Generate detailed recommendations based on the report to optimize future prompt design." + ] + }, + "tags": [ + "prompt engineering", + "analysis", + "report", + "text analysis", + "recommendations", + "summary" + ], + "examples": [ + { + "inputJson": "{\"reportText\":\"This report evaluates prompt A, which is designed to optimize question answering for customer support. The prompt uses direct instructions but lacks examples. Results showed moderate improvement over baseline.\",\"language\":\"en\",\"detailedAnalysis\":true,\"maxSummaryLength\":300}", + "description": "Analyze an English prompt engineering report with detailed analysis and summary length limited to 300 chars." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "model-management.downloadDocument", + "description": "Downloads a specified document resource related to AI model management (e.g., model card, datasheet, or deployment guide) by accepting identifiers such as model ID and document type, then retrieves and outputs the file content in the requested format.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model whose document is to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of document to download, such as 'modelCard', 'datasheet', or 'deploymentGuide'.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired file format for the downloaded document (e.g., 'pdf', 'docx', 'txt').", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "version", + "type": "string", + "description": "Optional specific version tag of the document to retrieve; defaults to latest if not specified.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata of the downloaded document and its binary content encoded as a base64 string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve official documentation related to a specific AI model, such as downloading the latest model card for verification, compliance, or review purposes. It helps agents acquire authoritative documents to aid in decision-making or auditing processes.", + "limitations": "This tool cannot create or modify documents; it only retrieves existing documents that are registered and accessible via the model management system. It also depends on having correct model identifiers and available documents for download.", + "examples": [ + "Download the latest model card PDF for model ID 'model_123'.", + "Retrieve the deployment guide in DOCX format for model 'model_abc' version 'v2'.", + "Get the datasheet document of model 'ml_model_xyz' in the default PDF format." + ] + }, + "tags": [ + "model-management", + "download", + "document", + "AI-model", + "documentation", + "model-card", + "datasheet", + "deployment-guide" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model_123\",\"documentType\":\"modelCard\",\"format\":\"pdf\"}", + "description": "Download the latest model card as a PDF for model with ID 'model_123'." + }, + { + "inputJson": "{\"modelId\":\"model_abc\",\"documentType\":\"deploymentGuide\",\"format\":\"docx\",\"version\":\"v2\"}", + "description": "Download version 2 of the deployment guide in DOCX format for model 'model_abc'." + }, + { + "inputJson": "{\"modelId\":\"ml_model_xyz\",\"documentType\":\"datasheet\"}", + "description": "Download the datasheet document in default PDF format for model 'ml_model_xyz'." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "model-management.analyzeText", + "description": "This tool accepts raw text input and analyzes it to produce detailed insights including sentiment analysis, keyword extraction, language detection, and readability scores. It helps evaluate the quality and characteristics of textual data to support AI model training and content understanding.", + "category": "model-management", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text string to be analyzed for insights such as sentiment and keywords.", + "required": true, + "defaultValue": "" + }, + { + "name": "languageHint", + "type": "string", + "description": "Optional hint about the text's language to improve detection accuracy (ISO 639-1 code).", + "required": false, + "defaultValue": "" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Whether to perform keyword extraction from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "computeReadability", + "type": "boolean", + "description": "Whether to calculate readability metrics such as Flesch score.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including language code, sentiment score and label, keywords array with relevance scores, and readability metrics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract semantic and linguistic insights from unstructured text to assist in model training data curation, quality evaluation, or content summarization. It is ideal for preprocessing text or understanding its characteristics before further modeling.", + "limitations": "Does not perform deep syntactic parsing or topic modeling. It provides high-level textual analysis but not full semantic understanding or disambiguation.", + "examples": [ + "Analyze sentiment and keywords in the given product review text.", + "Detect the language and readability of a customer feedback string.", + "Extract key themes and evaluate sentiment of a social media post." + ] + }, + "tags": [ + "analysis", + "text", + "sentiment", + "keywords", + "language-detection", + "readability", + "nlp", + "model-management" + ], + "examples": [ + { + "inputJson": "{\"text\":\"The new update improved the app performance significantly, but the UI could be more intuitive.\",\"extractKeywords\":true,\"analyzeSentiment\":true,\"computeReadability\":true}", + "description": "Analyze sentiment, extract keywords, and evaluate readability for a product review text." + }, + { + "inputJson": "{\"text\":\"Bonjour, j'aimerais savoir comment utiliser votre API.\",\"languageHint\":\"fr\",\"extractKeywords\":false,\"analyzeSentiment\":false,\"computeReadability\":false}", + "description": "Detect language of a French inquiry with minimal analysis." + }, + { + "inputJson": "{\"text\":\"Stocks rallied today as technology shares gained momentum amid positive earnings reports.\",\"extractKeywords\":true,\"analyzeSentiment\":true,\"computeReadability\":true}", + "description": "Extract keywords and sentiment from stock market news text." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "model-management.analyzeAccount", + "description": "Analyzes AI model account data to provide insights into usage patterns, resource consumption, billing status, and operational efficiency. Accepts account identifiers and optional time ranges, then processes account activity logs and billing records, outputting a comprehensive report with metrics and recommendations.", + "category": "model-management", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the account to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the analysis period in ISO 8601 format (e.g., 2023-01-01)", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the analysis period in ISO 8601 format (e.g., 2023-01-31)", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include optimization recommendations in the report", + "required": false, + "defaultValue": "true" + }, + { + "name": "metrics", + "type": "array", + "description": "Specific metrics to include in the analysis, e.g., ['usage','billing','performance']", + "required": false, + "defaultValue": "[\"usage\",\"billing\",\"performance\"]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing analysis summary, detailed metrics, billing information, usage trends, and optional optimization recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing a detailed understanding of an AI model deployment account's performance, billing, and resource usage over a specified period. It's especially useful for account managers, financial controllers, or automated agents tasked with monitoring and optimizing AI service accounts.", + "limitations": "Does not provide real-time monitoring or intrusion detection. Cannot modify account data or perform account management operations. Analysis is limited to available logs and billing records and depends on data completeness.", + "examples": [ + "Analyze usage and billing for account 'acc-12345' from Jan 1 to Jan 31, include recommendations.", + "Provide a summary of account 'acc-67890' without specific date range, exclude recommendations.", + "Report performance metrics for account 'acc-24680' focusing only on usage and performance." + ] + }, + "tags": [ + "analysis", + "account-management", + "billing", + "usage", + "performance", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"acc-12345\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"includeRecommendations\":true}", + "description": "Analyze account 'acc-12345' for the month of January 2024 including recommendations." + }, + { + "inputJson": "{\"accountId\":\"acc-67890\",\"includeRecommendations\":false}", + "description": "Generate a report for account 'acc-67890' for the full available history without recommendations." + }, + { + "inputJson": "{\"accountId\":\"acc-24680\",\"metrics\":[\"usage\",\"performance\"]}", + "description": "Analyze usage and performance metrics for account 'acc-24680' excluding billing and recommendations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "model-management.uploadCode", + "description": "Uploads source code files to a model management system for use in training or deployment pipelines. Accepts code files and metadata, validates content type and sizes, stores code securely, and returns a confirmation with stored file references and upload status.", + "category": "model-management", + "parameters": [ + { + "name": "codeFiles", + "type": "array", + "description": "An array of code files to upload, each with name and content; supports multiple languages and file types relevant to model training or deployment.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "The unique identifier of the project or model to associate the uploaded code with.", + "required": true, + "defaultValue": "" + }, + { + "name": "versionLabel", + "type": "string", + "description": "An optional label or tag for the code version being uploaded to track revisions.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite existing code files with the same name in the project version.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata describing the code, such as programming language, framework, or notes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing uploadStatus indicating success or failure, a list of stored file references with their paths/URLs, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically upload code artifacts related to an AI model training or deployment process, especially when managing multiple versions or projects. It is suitable for integrating code management into automated ML pipelines.", + "limitations": "This tool does not execute or validate the runtime correctness of the code; it only uploads and stores code files. It cannot resolve dependency management or trigger deployments by itself.", + "examples": [ + "Upload Python training scripts to version 'v1.2' of a model project.", + "Add a new deployment configuration file to an existing project without overwriting.", + "Upload multiple files across languages (Python + shell scripts) and include metadata about framework versions." + ] + }, + "tags": [ + "model-management", + "upload", + "code", + "versioning", + "project", + "training", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"codeFiles\":[{\"name\":\"train.py\",\"content\":\"print('training model')\"}],\"projectId\":\"proj_123\",\"versionLabel\":\"v1.0\",\"overwriteExisting\":false,\"metadata\":{\"language\":\"python\",\"framework\":\"tensorflow\"}}", + "description": "Upload a single Python training script to project 'proj_123' under version label 'v1.0', with metadata indicating language and framework." + }, + { + "inputJson": "{\"codeFiles\":[{\"name\":\"deploy.sh\",\"content\":\"#!/bin/bash\\necho Deploying model\"}],\"projectId\":\"proj_123\",\"versionLabel\":\"\",\"overwriteExisting\":true}", + "description": "Upload a deployment shell script to project 'proj_123', overwrite if it exists, without specifying version label." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "model-management.composeEmail", + "description": "This tool generates a professional email draft based on inputs such as subject, recipient details, purpose, and key points. It uses AI-driven natural language generation to compose clear, relevant, and well-structured email content ready for review or sending.", + "category": "model-management", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Full name of the email recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient; used for addressing and validation.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "purpose", + "type": "string", + "description": "Primary purpose or intent of the email, e.g., meeting request, follow-up, introduction.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of key points or bullet items to include in the body of the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email such as formal, friendly, or persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the sender to include in sign-off.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a standard email signature at the end.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email's subject line and body text ready for sending or editing." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a professional, customized email draft based on structured inputs about recipient, purpose, and key content points to save time or for automated communication workflows.", + "limitations": "Does not send emails or handle attachments. Generated drafts may require user review for accuracy and compliance with company policies.", + "examples": [ + "Compose an introductory email to a new client named John Doe about partnership opportunities.", + "Generate a follow-up email after a meeting summarizing agreed action items.", + "Create a friendly meeting reminder email with a polite tone and bullet points of agenda items." + ] + }, + "tags": [ + "email", + "communication", + "natural-language-generation", + "automation", + "professional-writing" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Jane Smith\",\"recipientEmail\":\"jane.smith@example.com\",\"subject\":\"Project Collaboration Opportunity\",\"purpose\":\"introduce partnership proposal\",\"keyPoints\":[\"Outline benefits\",\"Schedule meeting\"],\"tone\":\"formal\",\"senderName\":\"Alice Johnson\",\"includeSignature\":true}", + "description": "Formal introductory email proposing collaboration to Jane Smith." + }, + { + "inputJson": "{\"recipientName\":\"Mike Brown\",\"recipientEmail\":\"mike.brown@example.com\",\"subject\":\"Reminder: Upcoming Meeting\",\"purpose\":\"meeting reminder\",\"keyPoints\":[\"Date and time\",\"Agenda topics\"],\"tone\":\"friendly\",\"senderName\":\"Team Support\",\"includeSignature\":false}", + "description": "Friendly reminder email about meeting details without signature." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "model-management.uploadDocument", + "description": "Uploads a document file to the AI model management system for use in training, evaluation, or reference. Accepts file content along with metadata, processes the document by storing it securely, and returns a confirmation with a unique document ID and status.", + "category": "model-management", + "parameters": [ + { + "name": "documentName", + "type": "string", + "description": "The name of the document being uploaded, including extension (e.g., report.pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "documentContentBase64", + "type": "string", + "description": "The document content encoded as a Base64 string for safe transmission and storage.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "The MIME type of the document (e.g., application/pdf, text/plain).", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "An optional list of tags or keywords to categorize the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Optional text description providing additional context about the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A result object indicating the upload status, including a unique document ID and any messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to upload and store documents relevant to model training or deployment, such as data dictionaries, training data files, or reference manuals, ensuring the documents are properly cataloged and accessible within the model management lifecycle.", + "limitations": "This tool cannot process or parse the content of the document; it only stores the files and metadata. It does not perform validation on document content correctness or format beyond MIME type checks.", + "examples": [ + "Upload a PDF with training data sample to the system with descriptive tags.", + "Store a text file documentation for a trained model's architecture and usage.", + "Add a reference manual in Word format with metadata to the model management repository." + ] + }, + "tags": [ + "upload", + "document", + "model-management", + "file-storage", + "metadata", + "training", + "management" + ], + "examples": [ + { + "inputJson": "{\"documentName\":\"training_data_sample.pdf\",\"documentContentBase64\":\"JVBERi0xLjQKJcfs...\",\"documentType\":\"application/pdf\",\"tags\":[\"training\",\"sample\"],\"description\":\"Sample training data for image classification.\"}", + "description": "Uploading a PDF file containing sample training data with tags and description for categorization." + }, + { + "inputJson": "{\"documentName\":\"model_architecture.txt\",\"documentContentBase64\":\"VGhpcyBpcyBhIHNhbXBsZSBtb2RlbC4uLg==\",\"documentType\":\"text/plain\",\"tags\":[],\"description\":\"Basic text document describing model architecture.\"}", + "description": "Uploading a plain text document describing the model architecture without any tags." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "model-management.createWord", + "description": "This tool generates a new trained word embedding model focusing on a specific vocabulary word or set of words. It accepts input words or corpora, parameters for training such as embedding size and algorithm, then trains and outputs a word embedding model capturing semantic representations.", + "category": "model-management", + "parameters": [ + { + "name": "inputWords", + "type": "array", + "description": "An array of target words or phrases to focus the training on, optional if inputText provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "inputText", + "type": "string", + "description": "Raw text corpus used to train the word embedding model if more context is needed, optional if inputWords provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingSize", + "type": "number", + "description": "Dimension size of the word embeddings to be generated.", + "required": true, + "defaultValue": "100" + }, + { + "name": "algorithm", + "type": "string", + "description": "Choice of embedding training algorithm, e.g., 'word2vec', 'glove', or 'fasttext'.", + "required": true, + "defaultValue": "word2vec" + }, + { + "name": "windowSize", + "type": "number", + "description": "Context window size to consider around each word during training.", + "required": false, + "defaultValue": "5" + }, + { + "name": "minWordFrequency", + "type": "number", + "description": "Minimum frequency threshold for words to be included in the model vocabulary.", + "required": false, + "defaultValue": "5" + }, + { + "name": "epochs", + "type": "number", + "description": "Number of training iterations on the corpus.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the trained word embedding model, including metadata and the embedding vectors for each word." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a domain-specific or custom word embedding model that captures semantic meanings of particular words or vocabulary from a given text corpus. Ideal for applications requiring specialized language understanding beyond pretrained generic embeddings.", + "limitations": "This tool cannot train contextual embeddings like BERT or Transformer-based embeddings. It requires sufficient textual data and computational resources to produce meaningful models. Very small corpora or very rare words may result in poor embeddings.", + "examples": [ + "Create a word embedding model focusing on technical vocabulary from software engineering blog posts.", + "Train a custom 100-dimensional embedding on legal documents targeting legal terms.", + "Generate embeddings using GloVe algorithm with 50 dimensions on financial news data." + ] + }, + "tags": [ + "model-training", + "word-embedding", + "nlp", + "embedding-generation", + "custom-model" + ], + "examples": [ + { + "inputJson": "{\"inputWords\":[\"blockchain\",\"ethereum\",\"smart contract\"],\"embeddingSize\":100,\"algorithm\":\"word2vec\",\"windowSize\":5,\"minWordFrequency\":3,\"epochs\":15}", + "description": "Train a 100-dimensional Word2Vec embedding model focused on blockchain-related terms with 15 epochs." + }, + { + "inputJson": "{\"inputText\":\"Artificial intelligence and machine learning are transforming industries.\",\"embeddingSize\":50,\"algorithm\":\"glove\",\"epochs\":20}", + "description": "Generate a 50-dimensional GloVe model based on the provided AI-related text corpus." + }, + { + "inputJson": "{\"inputWords\":[\"investment\",\"portfolio\",\"stocks\"],\"embeddingSize\":200,\"algorithm\":\"fasttext\",\"windowSize\":3,\"minWordFrequency\":2,\"epochs\":10}", + "description": "Create a FastText embedding of size 200 for financial terms with smaller context window." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "model-management.generateTest", + "description": "Generates unit or integration test code snippets for specified AI model components or APIs. Accepts model function signatures or API endpoints as input, analyzes method behavior or interface contracts, and produces relevant test code in the requested programming language to facilitate model testing and validation.", + "category": "model-management", + "parameters": [ + { + "name": "modelComponent", + "type": "string", + "description": "The name or signature of the AI model function or component to generate tests for.", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "The type of test to generate, e.g., 'unit' or 'integration'.", + "required": true, + "defaultValue": "unit" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated test code, e.g., 'Python', 'JavaScript'.", + "required": true, + "defaultValue": "Python" + }, + { + "name": "testingFramework", + "type": "string", + "description": "The testing framework to target, e.g., 'pytest' for Python, 'jest' for JavaScript.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMockData", + "type": "boolean", + "description": "Whether to include mock data or mock objects in the generated tests.", + "required": false, + "defaultValue": "true" + }, + { + "name": "testCoverageFocus", + "type": "array", + "description": "Specific areas to focus test generation on, such as ['edgeCases','inputValidation','performance'].", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code string and metadata about the test such as language and framework." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate test code for AI model functions or APIs to quickly verify correctness, input validation, and output reliability without writing tests manually. It supports multiple languages and frameworks to fit existing project environments.", + "limitations": "This tool generates basic to moderate complexity test code and may not cover exhaustive edge cases or complex integration scenarios that require domain-specific knowledge or manual refinement.", + "examples": [ + "Generate Python unit tests for a neural network model's prediction function using pytest.", + "Create integration test code in JavaScript with jest for an AI model prediction API endpoint.", + "Produce unit test code focusing on input validation edge cases for a data preprocessing module in Python." + ] + }, + "tags": [ + "model-management", + "testing", + "code-generation", + "AI-models", + "unit-test", + "integration-test", + "automation" + ], + "examples": [ + { + "inputJson": "{\"modelComponent\":\"predict(data: DataFrame) -> Prediction\",\"testType\":\"unit\",\"programmingLanguage\":\"Python\",\"testingFramework\":\"pytest\",\"includeMockData\":true,\"testCoverageFocus\":[\"inputValidation\",\"edgeCases\"]}", + "description": "Generate Python pytest unit tests for a model's predict function focused on input validation and edge cases." + }, + { + "inputJson": "{\"modelComponent\":\"/api/v1/predict\",\"testType\":\"integration\",\"programmingLanguage\":\"JavaScript\",\"testingFramework\":\"jest\",\"includeMockData\":true,\"testCoverageFocus\":[]}", + "description": "Generate JavaScript jest integration tests for API endpoint /api/v1/predict including mock data." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "model-management.generateDataset", + "description": "Generates synthetic datasets tailored for training and evaluating AI models based on specified schema definitions, data distributions, and volume requirements. Inputs include data structure definitions, desired sample size, and optional data distribution parameters. Outputs a structured dataset matching the criteria for seamless integration into model training workflows.", + "category": "model-management", + "parameters": [ + { + "name": "schemaDefinition", + "type": "object", + "description": "Defines the structure of the dataset including fields, data types, and constraints for each attribute.", + "required": true, + "defaultValue": "" + }, + { + "name": "sampleSize", + "type": "number", + "description": "The number of data records to generate in the synthetic dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "distributionParameters", + "type": "object", + "description": "Optional parameters specifying probability distributions and statistical properties for each field (e.g., normal distribution mean and stddev).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeLabels", + "type": "boolean", + "description": "Whether to include labeled target variables in the dataset, useful for supervised learning scenarios.", + "required": false, + "defaultValue": "false" + }, + { + "name": "randomSeed", + "type": "number", + "description": "Seed value for the random number generator to ensure reproducibility of the generated dataset.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dataset formatted as an array of records following the defined schema, along with metadata describing the dataset properties." + }, + "aiAgent": { + "useCase": "Use this tool when a user needs to create synthetic datasets for training or benchmarking AI models but lacks real-world data or requires controlled, repeatable datasets. Ideal for generating structured data with customizable schema and controlled distributions to simulate realistic scenarios.", + "limitations": "This tool cannot generate unstructured data (e.g., images, audio, video) or data requiring complex domain-specific realism beyond predefined statistical distributions. It does not perform validation of output data quality beyond schema conformity.", + "examples": [ + "Generate a synthetic tabular dataset with 10,000 samples based on a user-defined schema for a classification problem including features and labels.", + "Create a dataset with numerical fields following normal distributions with specified mean and variance for regression model training.", + "Produce a dataset of customer records with fields like name, age, and purchase amount with custom statistical distributions for each field." + ] + }, + "tags": [ + "synthetic-data", + "dataset-generation", + "model-training", + "data-preparation", + "machine-learning", + "data-simulation" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinition\":{\"fields\":[{\"name\":\"age\",\"type\":\"integer\"},{\"name\":\"income\",\"type\":\"float\"},{\"name\":\"purchased\",\"type\":\"boolean\"}]},\"sampleSize\":1000,\"distributionParameters\":{\"age\":{\"distribution\":\"normal\",\"mean\":35,\"stddev\":10},\"income\":{\"distribution\":\"lognormal\",\"mean\":10,\"stddev\":0.5}},\"includeLabels\":true,\"randomSeed\":42}", + "description": "Generate 1,000 synthetic customer data records with age and income fields following specified distributions and a target label for purchase prediction." + }, + { + "inputJson": "{\"schemaDefinition\":{\"fields\":[{\"name\":\"temperature\",\"type\":\"float\"},{\"name\":\"humidity\",\"type\":\"float\"}]},\"sampleSize\":500,\"includeLabels\":false}", + "description": "Create 500 synthetic data points of environmental temperature and humidity without labels for unsupervised modeling." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "model-management.createJSON", + "description": "Creates a JSON configuration representing an AI model's metadata and settings. Accepts inputs such as model name, version, framework, parameters, hyperparameters, and deployment settings, then generates a standardized JSON object for model management and deployment workflows.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The designated name of the AI model.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "The version identifier for this model build (e.g., '1.0.0').", + "required": false, + "defaultValue": "1.0.0" + }, + { + "name": "framework", + "type": "string", + "description": "The underlying ML framework used (e.g., TensorFlow, PyTorch).", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "object", + "description": "Key-value pairs defining model parameters such as input size or architecture details.", + "required": false, + "defaultValue": "" + }, + { + "name": "hyperparameters", + "type": "object", + "description": "Training hyperparameters like learning rate, batch size, epochs.", + "required": false, + "defaultValue": "" + }, + { + "name": "deploymentSettings", + "type": "object", + "description": "Details for deployment including compute target, endpoint URLs, resource allocations.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing all provided model metadata structured for management and deployment systems." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate or update a standardized JSON configuration for AI models, including their metadata, parameters, and deployment configurations to facilitate management and automated deployment pipelines.", + "limitations": "This tool does not validate the correctness of parameter values or integrate directly with model training pipelines. It only formats and outputs structured JSON based on input.", + "examples": [ + "Generate JSON for a new image classification model with specific hyperparameters.", + "Create deployment configuration JSON for scaling a model on cloud resources.", + "Produce standardized metadata JSON for model registry entry." + ] + }, + "tags": [ + "model-management", + "JSON", + "configuration", + "model-metadata", + "deployment", + "AI-models", + "management" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"ImageClassifier\",\"version\":\"2.1.0\",\"framework\":\"TensorFlow\",\"parameters\":{\"inputShape\":[224,224,3],\"numClasses\":1000},\"hyperparameters\":{\"learningRate\":0.001,\"batchSize\":32,\"epochs\":50},\"deploymentSettings\":{\"target\":\"AWS SageMaker\",\"instanceType\":\"ml.m5.large\"}}", + "description": "Create a JSON configuration for TensorFlow image classification model with parameters, hyperparameters, and deployment to AWS SageMaker." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "notifications.analyzeDocument", + "description": "Analyzes the content and metadata of a text document to identify key themes, sentiment, and urgency indicators relevant for notifications. Accepts raw document text or a URL, then processes this input to generate a structured summary highlighting critical information to prioritize alerts and notifications.", + "category": "notifications", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "Raw text content of the document to analyze. Required if documentUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentUrl", + "type": "string", + "description": "URL to fetch the document text from. Required if documentText is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the document content (e.g., 'en', 'fr'). Defaults to English if not specified.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeUrgencyAnalysis", + "type": "boolean", + "description": "Whether to analyze the document for urgency indicators to prioritize notifications.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted key themes, sentiment score, detected urgency level, and a concise summary of the document content, enabling downstream notification prioritization." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract actionable insights, themes, and urgency levels from textual documents to determine which require immediate notifications or alerts. Ideal for processing emails, reports, or messages to automate notification workflows based on content analysis.", + "limitations": "Cannot access or analyze documents behind authentication or dynamically rendered content. Does not perform in-depth semantic understanding beyond theme and sentiment extraction. May not accurately detect urgency if the document is highly technical or domain-specific without customization.", + "examples": [ + "Analyze a customer complaint email to decide if it needs urgent escalation.", + "Summarize incident report documents and assess if alerts are warranted.", + "Extract key themes and general sentiment from a batch of user feedback documents for notification triggers." + ] + }, + "tags": [ + "textAnalysis", + "documentProcessing", + "notificationPrioritization", + "sentimentAnalysis", + "urgencyDetection" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"We have received multiple complaints about our service downtime last night. Immediate action is required to resolve the issue.\",\"language\":\"en\",\"includeUrgencyAnalysis\":true}", + "description": "Analyzing a service outage report for urgency and key complaint themes." + }, + { + "inputJson": "{\"documentUrl\":\"https://example.com/report.txt\",\"includeUrgencyAnalysis\":false}", + "description": "Analyzing a report fetched via URL without urgency assessment, focusing on themes and summary." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "notifications.createCode", + "description": "Generates customizable source code snippets for sending notification alerts via different programming languages and platforms. Accepts input parameters detailing notification content, target platform, programming language, and customization options. Outputs fully formed code snippets ready to embed in applications for sending notifications.", + "category": "notifications", + "parameters": [ + { + "name": "notificationTitle", + "type": "string", + "description": "Title or headline text of the notification alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationMessage", + "type": "string", + "description": "Body content of the notification alert describing details to the user.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "Platform where the notification will be sent (e.g., iOS, Android, WebPush, Email).", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language for the generated code snippet (e.g., JavaScript, Python, Java, Swift).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeActionButtons", + "type": "boolean", + "description": "Whether to include action buttons (like Reply or Dismiss) in the notification code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customData", + "type": "object", + "description": "Optional key-value metadata to embed in the notification code for custom handling.", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority or importance level of the notification (e.g., high, normal, low).", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated source code snippet as a string and metadata including language and platform." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically produce ready-to-use code snippets to send notification alerts in a specific programming language and platform context. It helps integrate notification sending functionality quickly in apps or services without manual coding.", + "limitations": "This tool generates code snippets only and does not deploy or send notifications. It cannot cover every platform or advanced notification feature due to platform-specific limits.", + "examples": [ + "Create JavaScript code for sending a web push notification titled 'Update' with custom action buttons.", + "Generate Swift code snippet to send a high priority iOS notification with a message for user alert.", + "Produce Python code to send an email notification with custom metadata." + ] + }, + "tags": [ + "notifications", + "codegeneration", + "alerts", + "sdk", + "integration", + "multi-platform" + ], + "examples": [ + { + "inputJson": "{\"notificationTitle\":\"System Alert\",\"notificationMessage\":\"Your session will expire in 5 minutes.\",\"targetPlatform\":\"WebPush\",\"programmingLanguage\":\"JavaScript\",\"includeActionButtons\":true,\"customData\":{\"sessionId\":\"abc123\"},\"priorityLevel\":\"high\"}", + "description": "Generate JavaScript code snippet for a high priority web push notification with action buttons and custom session ID." + }, + { + "inputJson": "{\"notificationTitle\":\"New Message\",\"notificationMessage\":\"You have received a new message.\",\"targetPlatform\":\"iOS\",\"programmingLanguage\":\"Swift\",\"includeActionButtons\":false,\"priorityLevel\":\"normal\"}", + "description": "Create Swift code snippet for a normal priority iOS notification without action buttons." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "notifications.createFile", + "description": "Creates a file containing formatted notification content for sharing or archival. Accepts notification details and formatting options, processes the data into a text or CSV file, and outputs a downloadable file link or data object.", + "category": "notifications", + "parameters": [ + { + "name": "notifications", + "type": "array", + "description": "List of notification objects to include in the file, each with title, message, timestamp, and optional priority", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Format of the output file, e.g., 'txt' for plain text or 'csv' for comma-separated values", + "required": true, + "defaultValue": "txt" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the output file when the fileType is 'csv'", + "required": false, + "defaultValue": "true" + }, + { + "name": "fileName", + "type": "string", + "description": "Desired name of the output file without extension", + "required": false, + "defaultValue": "notifications" + }, + { + "name": "timezone", + "type": "string", + "description": "Timezone identifier to format timestamps within notifications, e.g., 'UTC' or 'America/New_York'", + "required": false, + "defaultValue": "UTC" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fileName with extension, MIME type, and base64-encoded content of the created notifications file." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to export a collection of notifications into a structured file for purposes such as sharing, storing, or further processing. It is suitable for agents tasked with converting in-memory notification data into a portable file format in text or CSV.", + "limitations": "This tool cannot generate binary file formats like PDF or XLSX, nor does it send notifications itself. It only creates files containing notification summaries.", + "examples": [ + "Create a CSV file of recent system alerts for emailing.", + "Generate a plain text export of user notifications for archival.", + "Produce a timestamped notifications list file customized to a specific timezone." + ] + }, + "tags": [ + "notifications", + "fileGeneration", + "export", + "text", + "csv", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"notifications\":[{\"title\":\"Server Down\",\"message\":\"Main server is not responding.\",\"timestamp\":\"2024-06-01T14:30:00Z\",\"priority\":\"high\"},{\"title\":\"Backup Complete\",\"message\":\"Daily backup finished successfully.\",\"timestamp\":\"2024-06-01T02:00:00Z\"}],\"fileType\":\"csv\",\"includeHeaders\":true,\"fileName\":\"dailyAlerts\",\"timezone\":\"UTC\"}", + "description": "Generate dailyAlerts.csv including headers with system notifications in UTC timezone." + }, + { + "inputJson": "{\"notifications\":[{\"title\":\"Meeting Reminder\",\"message\":\"Project sync at 3 PM.\",\"timestamp\":\"2024-06-02T14:00:00-04:00\"}],\"fileType\":\"txt\",\"fileName\":\"reminder\",\"timezone\":\"America/New_York\"}", + "description": "Create a plain text notification file named reminder.txt with a meeting reminder, timestamps adjusted to New York timezone." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "messaging.generateCode", + "description": "Generates code snippets for integrating real-time messaging and chat features into applications. Accepts parameters for target programming language, messaging platform (e.g., Slack, Discord, WebSocket), and desired functionality (e.g., sending messages, receiving messages, creating channels). Produces ready-to-use code examples tailored to the specified inputs.", + "category": "messaging", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Target programming language for the generated code (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "Messaging platform or protocol to target (e.g., Slack, Discord, WebSocket, Twilio).", + "required": true, + "defaultValue": "" + }, + { + "name": "functionality", + "type": "array", + "description": "List of messaging functionalities to include in the code (e.g., sendMessage, receiveMessage, createChannel).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "authMethod", + "type": "string", + "description": "Authentication method to be used in the code if applicable (e.g., OAuth, API Token).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string and metadata such as language and platform." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate integration code snippets for real-time messaging platforms tailored to specific programming languages and required functionalities. It streamlines embedding chat or messaging features into apps by producing sample code with best practices based on the selected platform and language.", + "limitations": "This tool does not produce complete, production-ready applications and does not handle complex authentication setups beyond common methods. It cannot generate code for unsupported or custom messaging protocols. The generated code may require adaptation and testing in the target environment.", + "examples": [ + "Generate JavaScript code for sending and receiving messages on Slack with OAuth authentication.", + "Create Python code snippets for WebSocket-based chat message handling.", + "Produce Java code to create Discord channels and post messages including comments." + ] + }, + "tags": [ + "messaging", + "code generation", + "integration", + "chat", + "real-time", + "SDK", + "API examples" + ], + "examples": [ + { + "inputJson": "{\"language\":\"JavaScript\",\"platform\":\"Slack\",\"functionality\":[\"sendMessage\",\"receiveMessage\"],\"includeComments\":true,\"authMethod\":\"OAuth\"}", + "description": "Generate JavaScript code with comments for sending and receiving messages on Slack using OAuth authentication." + }, + { + "inputJson": "{\"language\":\"Python\",\"platform\":\"WebSocket\",\"functionality\":[\"sendMessage\"],\"includeComments\":false}", + "description": "Generate Python code to send messages over a WebSocket connection without comments." + }, + { + "inputJson": "{\"language\":\"Java\",\"platform\":\"Discord\",\"functionality\":[\"createChannel\",\"sendMessage\"],\"includeComments\":true}", + "description": "Generate Java code with comments to create channels and send messages on Discord." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "messaging.generateDocument", + "description": "Generates a formatted document from structured messaging content such as chat threads or message collections. Accepts an array of message objects and optional formatting instructions, producing a well-structured document output in formats like PDF, DOCX, or plain text that compiles conversations or chat logs for archiving, sharing, or reporting.", + "category": "messaging", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "Array of message objects representing the conversation or chat history to include in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title for the generated document, typically summarizing the chat or topic.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output document format: e.g., 'pdf', 'docx', or 'txt'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps for each message in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeUsernames", + "type": "boolean", + "description": "Whether to display usernames or sender names with messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Order of messages in the document: 'ascending' or 'descending' by timestamp.", + "required": false, + "defaultValue": "ascending" + }, + { + "name": "customStyles", + "type": "object", + "description": "Optional object defining style customizations such as font size or colors.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64 encoded string of the generated document and metadata including file name and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to compile chat messages or conversation threads into a polished, shareable document for review, archive, or presentation. It assists in converting raw messaging data into common document formats with optional formatting, timestamps, and usernames for easy readability and distribution.", + "limitations": "The tool does not perform language translation, deep content analysis, or message summarization. It assumes the input messages are sanitized and focuses on formatting and document generation only.", + "examples": [ + "Generate a PDF report of customer service chat logs from last week.", + "Create a DOCX document of a team's meeting chat, including timestamps and usernames.", + "Export a plain text file of a conversation sorted in reverse chronological order." + ] + }, + "tags": [ + "messaging", + "document", + "generate", + "chat", + "export", + "formatting", + "report" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"sender\":\"Alice\",\"timestamp\":\"2024-04-01T10:00:00Z\",\"content\":\"Hello team!\"},{\"sender\":\"Bob\",\"timestamp\":\"2024-04-01T10:05:00Z\",\"content\":\"Hi Alice, ready for the update?\"}],\"title\":\"Team Meeting Chat\",\"format\":\"pdf\",\"includeTimestamps\":true,\"includeUsernames\":true,\"sortOrder\":\"ascending\",\"customStyles\":{\"fontSize\":\"12pt\"}}", + "description": "Generate a PDF document compiling a short team meeting chat including sender names and timestamps, sorted chronologically." + }, + { + "inputJson": "{\"messages\":[{\"sender\":\"User1\",\"timestamp\":\"2024-05-15T09:15:00Z\",\"content\":\"Can you send me the report?\"},{\"sender\":\"User2\",\"timestamp\":\"2024-05-15T09:16:00Z\",\"content\":\"Sure, I will email it today.\"}],\"title\":\"Client Inquiry\",\"format\":\"docx\",\"includeTimestamps\":true,\"includeUsernames\":true,\"sortOrder\":\"ascending\"}", + "description": "Create a DOCX document showing a client inquiry chat with timestamps and usernames for sharing." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "messaging.createFile", + "description": "This tool accepts file content, type, and metadata to create a file object suitable for uploading or sending in real-time messaging platforms. It processes raw file data (base64 or URL) and generates a file descriptor with accessible metadata and a unique identifier for chat integration.", + "category": "messaging", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the file including extension (e.g., image.png).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded string or URL pointing to the file content.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file such as image/png or application/pdf.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description or caption for the file.", + "required": false, + "defaultValue": "" + }, + { + "name": "sizeInBytes", + "type": "number", + "description": "Optional size of the file in bytes.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags or categories describing the file.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created file, including file ID, name, type, description, size, and URL for access or sharing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to incorporate file creation within messaging workflows, such as preparing images, documents, or other media to send in chat apps. It standardizes file data and metadata for seamless integration in real-time messaging.", + "limitations": "This tool does not upload or host the file content on a server; actual file storage and delivery must be handled separately. It also assumes valid base64 or URL input for fileContent.", + "examples": [ + "Create a file object for an image to send as a message attachment.", + "Prepare a PDF document metadata and content for chat sharing.", + "Generate a file descriptor from a user-uploaded photo for messaging integration." + ] + }, + "tags": [ + "messaging", + "file", + "create", + "chat", + "media", + "upload", + "attachment" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"photo.jpg\",\"fileContent\":\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD...\",\"fileType\":\"image/jpeg\",\"description\":\"Vacation photo\",\"sizeInBytes\":204800,\"tags\":[\"vacation\",\"photo\"]}", + "description": "Create a photo.jpg image file with base64 content and metadata for messaging." + }, + { + "inputJson": "{\"fileName\":\"report.pdf\",\"fileContent\":\"https://example.com/files/report.pdf\",\"fileType\":\"application/pdf\",\"description\":\"Monthly report\",\"sizeInBytes\":1048576,\"tags\":[\"report\",\"pdf\"]}", + "description": "Create a file object referencing a remotely hosted PDF report to share in chat." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "email-communication.analyzeReport", + "description": "Analyzes a detailed email campaign report provided in CSV or JSON format to extract key metrics such as open rates, click-through rates, bounce rates, and engagement trends. Outputs a summarized analysis report highlighting campaign performance and actionable insights for optimization.", + "category": "email-communication", + "parameters": [ + { + "name": "reportData", + "type": "string", + "description": "Raw email campaign report data in CSV or JSON string format to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the input report data, either 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to include engagement trend analysis over time in the output summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeRangeDays", + "type": "number", + "description": "Number of past days to consider when analyzing trends; ignored if includeTrends is false.", + "required": false, + "defaultValue": "30" + }, + { + "name": "highlightMetrics", + "type": "array", + "description": "List of specific metrics to highlight in the analysis (e.g., ['openRate','clickRate','bounceRate']). If empty, analyzes all standard metrics.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall campaign metrics summary, key performance indicators, engagement trends (if requested), and recommendations for improving email campaign effectiveness." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically process raw email campaign performance data to quickly gauge success, identify strengths and weaknesses, and generate a concise performance summary with actionable insights. Ideal for integrating into email marketing automation platforms or reporting dashboards.", + "limitations": "This tool cannot access real-time email sending platforms directly; it requires the raw report data input. It does not perform delivery or automation, only analysis. It assumes input data is well-formed in CSV or JSON format with standard metrics.", + "examples": [ + "Analyze the JSON email report for last month and highlight opens and clicks.", + "Summarize the CSV campaign report and include bounce and unsubscribe trends over the last 14 days.", + "Provide insights on a provided raw JSON report focusing on open and click rates." + ] + }, + "tags": [ + "email", + "analysis", + "report", + "campaign", + "metrics", + "engagement", + "automation" + ], + "examples": [ + { + "inputJson": "{\"reportData\":\"recipient,email,open,click,bounce\\nuser1@example.com,1,0,0\\nuser2@example.com,1,1,0\\nuser3@example.com,0,0,1\",\"reportFormat\":\"csv\",\"includeTrends\":true,\"timeRangeDays\":14,\"highlightMetrics\":[\"open\",\"click\",\"bounce\"]}", + "description": "Analyze short CSV email report with specific highlighted metrics and trend analysis over 14 days." + }, + { + "inputJson": "{\"reportData\":\"[{\\\"recipient\\\":\\\"user1@example.com\\\",\\\"open\\\":true,\\\"click\\\":false,\\\"bounce\\\":false},{\\\"recipient\\\":\\\"user2@example.com\\\",\\\"open\\\":true,\\\"click\\\":true,\\\"bounce\\\":false}]\",\"reportFormat\":\"json\",\"includeTrends\":false,\"highlightMetrics\":[]}", + "description": "Analyze a small JSON formatted email report focusing on overall metrics summary without trends." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "email-communication.createFunction", + "description": "Creates a customizable JavaScript function for email communication tasks based on specified parameters such as triggering events, recipient lists, message templates, and scheduling options. Accepts configuration inputs and outputs a reusable function code string for automated email sending and management.", + "category": "email-communication", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The desired name for the generated email communication function.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerEvent", + "type": "string", + "description": "The event that triggers the function (e.g., 'onUserSignup', 'dailySchedule').", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "Array of email addresses or recipient identifiers to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailSubject", + "type": "string", + "description": "Subject line of the email to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailBodyTemplate", + "type": "string", + "description": "Template string or markup for the email body; may include placeholders for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "sendDelaySeconds", + "type": "number", + "description": "Optional delay in seconds before sending the email after triggering event; defaults to immediate.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeAttachments", + "type": "boolean", + "description": "Flag indicating whether to include predefined attachments in the email.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated function's code as a string and metadata including name and parameters used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate a reusable function that automates email sending based on specific events or schedules, particularly useful for integrating dynamic or personalized email workflows into JavaScript-based environments.", + "limitations": "This tool generates function code but does not execute or deploy the function. It cannot manage external email service authentication or handle complex email delivery errors.", + "examples": [ + "Create a function named 'welcomeEmail' triggered on user signup to send personalized welcome emails.", + "Generate a function that runs daily to email a report to the marketing team.", + "Create a function that delays sending promotional emails by 10 minutes after a purchase event." + ] + }, + "tags": [ + "email", + "automation", + "function-generation", + "JavaScript", + "templates", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"welcomeEmail\",\"triggerEvent\":\"onUserSignup\",\"recipientList\":[\"newuser@example.com\"],\"emailSubject\":\"Welcome to Our Service!\",\"emailBodyTemplate\":\"Hello {{name}}, welcome aboard!\",\"sendDelaySeconds\":0,\"includeAttachments\":false}", + "description": "Generate a function to send welcome emails instantly when a new user signs up." + }, + { + "inputJson": "{\"functionName\":\"dailyReportEmail\",\"triggerEvent\":\"dailySchedule\",\"recipientList\":[\"marketing@example.com\"],\"emailSubject\":\"Daily Marketing Report\",\"emailBodyTemplate\":\"Here is your daily marketing report.\",\"sendDelaySeconds\":3600,\"includeAttachments\":true}", + "description": "Create a function that emails the marketing report daily with a delay and attachments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "email-communication.buildCode", + "description": "Generates customizable code snippets for integrating email sending and automation features into applications. Accepts parameters such as programming language, email provider, and message templates, and outputs ready-to-use code for quick implementation or further customization.", + "category": "email-communication", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Target programming language for the generated code (e.g., 'python', 'javascript').", + "required": true, + "defaultValue": "" + }, + { + "name": "emailProvider", + "type": "string", + "description": "Email service provider API to use for sending emails (e.g., 'smtp', 'sendgrid', 'mailgun').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTemplateSupport", + "type": "boolean", + "description": "Whether to include support for email message templates in the generated code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "Method of authentication for email provider API (e.g., 'apiKey', 'oauth2', 'usernamePassword').", + "required": false, + "defaultValue": "apiKey" + }, + { + "name": "includeErrorHandling", + "type": "boolean", + "description": "Whether the generated code should include basic error handling logic.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customHeaders", + "type": "object", + "description": "Optional custom headers to include in emails, specified as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the generated code (e.g., 'script', 'module', 'function').", + "required": false, + "defaultValue": "script" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and metadata including language and provider." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to rapidly generate functional code snippets to enable email sending and automation within a user application. It supports multiple languages and providers, facilitating integration without manual coding. Ideal for generating boilerplate or customizable code to jumpstart development.", + "limitations": "This tool does not execute or test the generated code, and cannot handle advanced provider-specific configurations beyond the basic parameters. It does not support full email campaign management or UI integration code.", + "examples": [ + "Generate a Python script to send emails through SendGrid with template support and error handling.", + "Build JavaScript module code for SMTP email sending without template support.", + "Create a Node.js function code snippet using Mailgun with custom email headers." + ] + }, + "tags": [ + "email", + "code-generation", + "automation", + "integration", + "development", + "email-sending", + "API" + ], + "examples": [ + { + "inputJson": "{\"language\":\"python\",\"emailProvider\":\"sendgrid\",\"includeTemplateSupport\":true,\"authenticationMethod\":\"apiKey\",\"includeErrorHandling\":true,\"customHeaders\":{\"X-Custom-Header\":\"Value\"},\"outputFormat\":\"script\"}", + "description": "Generate a Python script for SendGrid including template support, error handling, and a custom header." + }, + { + "inputJson": "{\"language\":\"javascript\",\"emailProvider\":\"smtp\",\"includeTemplateSupport\":false,\"authenticationMethod\":\"usernamePassword\",\"includeErrorHandling\":true,\"customHeaders\":{},\"outputFormat\":\"module\"}", + "description": "Generate a JavaScript module for SMTP sending with username/password authentication and error handling, without template support." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeCustomer", + "description": "This tool analyzes customer-related infrastructure data by taking inputs such as customer ID, cloud provider details, and infrastructure usage metrics. It processes this data to evaluate the customer's infrastructure performance, resource utilization, and potential bottlenecks, producing a comprehensive report that highlights key metrics, recommendations, and risk assessments.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier for the customer whose infrastructure is being analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "cloudProvider", + "type": "string", + "description": "Name of the cloud provider (e.g., AWS, Azure, GCP) relevant to the customer's infrastructure.", + "required": true, + "defaultValue": "" + }, + { + "name": "infrastructureMetrics", + "type": "object", + "description": "An object containing the customer's infrastructure usage metrics such as CPU, memory, storage, network throughput, and uptime statistics.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "string", + "description": "Time range for the analysis report in ISO 8601 duration or date interval format (e.g., '2023-01-01/2023-02-01' or 'P30D').", + "required": false, + "defaultValue": "P30D" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to indicate whether the output should include optimization recommendations based on the analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing performance summaries, resource utilization statistics, detected bottlenecks, risk assessments, and optional recommendations for the customer's infrastructure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide insights into a customer's cloud or physical infrastructure performance and health. It helps in diagnosing issues, understanding resource consumption patterns, and offering actionable recommendations tailored to a specific customer's environment.", + "limitations": "This tool requires structured infrastructure metrics input and does not gather raw data directly from cloud platforms. It cannot perform real-time monitoring or automate remediation actions.", + "examples": [ + "Analyze the infrastructure usage of customer 'cust123' on AWS over the last month and provide optimization tips.", + "Generate a performance report for customer 'enterpriseX' using GCP data focusing on network throughput and storage usage for Q1 2024.", + "Assess the uptime and risk factors for customer 'client789' infrastructure with recommendations disabled." + ] + }, + "tags": [ + "infrastructure", + "customer-analysis", + "cloud", + "performance", + "monitoring", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"cust123\",\"cloudProvider\":\"AWS\",\"infrastructureMetrics\":{\"cpuUsagePercent\":75,\"memoryUsageGB\":32,\"storageUsageGB\":500,\"networkThroughputMbps\":200,\"uptimePercent\":99.5},\"timeRange\":\"2024-05-01/2024-05-31\",\"includeRecommendations\":true}", + "description": "Analyze AWS usage metrics for customer cust123 over May 2024 including recommendations." + }, + { + "inputJson": "{\"customerId\":\"enterpriseX\",\"cloudProvider\":\"GCP\",\"infrastructureMetrics\":{\"cpuUsagePercent\":55,\"memoryUsageGB\":64,\"storageUsageGB\":1500,\"networkThroughputMbps\":500,\"uptimePercent\":99.9},\"includeRecommendations\":false}", + "description": "Generate a performance summary report for customer enterpriseX on GCP without recommendations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "email-communication.createReport", + "description": "Generates a detailed email communication report based on provided email logs or summary data. Accepts inputs such as email records, filters, and report format preferences, processes email metadata to summarize counts, response rates, and engagement metrics, and outputs a formatted report in JSON or text format.", + "category": "email-communication", + "parameters": [ + { + "name": "emailData", + "type": "array", + "description": "An array of email record objects including sender, receiver, timestamps, and status to analyze in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "An object with startDate and endDate strings to filter emails within a specific date range.", + "required": false, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters such as sender email, recipient email, or status to narrow down the report scope.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Specifies the output report format, e.g., 'json', 'text' or 'csv'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeAttachmentsInfo", + "type": "boolean", + "description": "Flag to include summary information about email attachments in the report, default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured report object including total emails, filtered counts, response rates, and optionally attachment info, formatted as specified." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a comprehensive report of email communications from raw email data, including summaries by date, sender, recipient, and engagement metrics to aid in monitoring or analytics tasks.", + "limitations": "It cannot access email content beyond provided metadata and will not send emails or modify email data; it solely generates summary reports based on input data.", + "examples": [ + "Generate a report of all sent emails in the last month showing totals and response rates.", + "Create a JSON report with emails filtered by sender address including attachment summaries.", + "Provide a text summary report for emails between two specific dates, excluding drafts." + ] + }, + "tags": [ + "email", + "reporting", + "analytics", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"emailData\":[{\"sender\":\"alice@example.com\",\"recipient\":\"bob@example.com\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"status\":\"sent\",\"hasAttachment\":true},{\"sender\":\"bob@example.com\",\"recipient\":\"alice@example.com\",\"timestamp\":\"2024-05-01T11:00:00Z\",\"status\":\"replied\",\"hasAttachment\":false}],\"dateRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"},\"reportFormat\":\"json\",\"includeAttachmentsInfo\":true}", + "description": "Generate a detailed JSON report of May 2024 emails between Alice and Bob including attachment statistics." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "monitoring.createFunction", + "description": "Creates a monitoring function for an application or system component that periodically collects performance metrics based on specified criteria. Accepts parameters defining the function's scope, metrics to track, frequency, and alert thresholds, and outputs a configured function object ready for deployment in the monitoring environment.", + "category": "monitoring", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "Name identifier for the monitoring function to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetComponent", + "type": "string", + "description": "The system or application component (e.g., service name, server ID) that this monitoring function will observe.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Array specifying which performance metrics to track, e.g., CPU usage, memory consumption, response time.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "collectionIntervalSeconds", + "type": "number", + "description": "Interval in seconds at which metrics will be collected by the function.", + "required": false, + "defaultValue": "60" + }, + { + "name": "alertThresholds", + "type": "object", + "description": "Optional mapping of metrics to threshold values that will trigger alerts when exceeded, e.g., {\"cpu\":80, \"memory\":70}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag indicating whether the monitoring function starts enabled or disabled.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created monitoring function including its configuration, status, and unique identifier." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically define and deploy monitoring functions tailored to specific components and performance metrics, enabling automated performance tracking and alerting within complex systems.", + "limitations": "This tool does not perform the actual monitoring or metric collection—it only defines and configures monitoring functions. It cannot directly integrate with external monitoring platforms without additional deployment steps.", + "examples": [ + "Create a monitoring function for the web server tracking CPU and memory every 30 seconds with alerts on CPU > 75%.", + "Define a disabled monitoring function for the database cluster to measure query latency.", + "Set up a monitoring function that collects disk IO and network throughput metrics with no alert thresholds." + ] + }, + "tags": [ + "monitoring", + "performance", + "metrics", + "automation", + "alerting", + "function creation" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"webServerPerfMonitor\",\"targetComponent\":\"web-server-01\",\"metrics\":[\"cpuUsage\",\"memoryUsage\"],\"collectionIntervalSeconds\":30,\"alertThresholds\":{\"cpuUsage\":75},\"enabled\":true}", + "description": "Create a monitoring function for a web server measuring CPU and memory usage every 30 seconds with an alert when CPU usage exceeds 75%." + }, + { + "inputJson": "{\"functionName\":\"dbLatencyTracker\",\"targetComponent\":\"db-cluster-3\",\"metrics\":[\"queryLatency\"],\"collectionIntervalSeconds\":60,\"alertThresholds\":{},\"enabled\":false}", + "description": "Create a disabled monitoring function for a database cluster that tracks query latency once every minute." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "compliance-management.createFile", + "description": "Creates a compliance-related file based on provided content and metadata. Accepts inputs such as fileType (e.g., policy, report), fileName, content (text or structured data), and optional compliance standards tags. Processes these inputs to format and generate a file object representing the compliance document, ready for saving or exporting.", + "category": "compliance-management", + "parameters": [ + { + "name": "fileType", + "type": "string", + "description": "The type of compliance file to create, such as 'policy', 'report', or 'audit'.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired name of the file, including extension if applicable (e.g., 'DataPrivacyPolicy.pdf').", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The textual or serialized content to include within the compliance file.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceTags", + "type": "array", + "description": "Optional array of standards or policies the file relates to (e.g., ['GDPR', 'ISO27001']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "The format of the file to create, e.g., 'pdf', 'docx', or 'txt'.", + "required": false, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata and a base64 encoded content payload of the created compliance file." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate formal compliance documents such as policies, audit reports, or regulatory filings based on input text and metadata. It standardizes file creation in the desired format to facilitate compliance record-keeping and sharing.", + "limitations": "This tool does not perform compliance content validation or legal review; it only packages provided content into a structured file format.", + "examples": [ + "Create a GDPR data privacy policy file as a PDF named 'GDPR_PrivacyPolicy.pdf'.", + "Generate an audit report file in DOCX format with ISO27001 compliance tags.", + "Produce a plain text compliance checklist file for HIPAA regulations." + ] + }, + "tags": [ + "compliance", + "file creation", + "document generation", + "regulatory", + "policy", + "report" + ], + "examples": [ + { + "inputJson": "{\"fileType\":\"policy\",\"fileName\":\"DataPrivacyPolicy.pdf\",\"content\":\"This document outlines the data privacy policies adhering to GDPR.\",\"complianceTags\":[\"GDPR\"],\"format\":\"pdf\"}", + "description": "Create a PDF policy file for GDPR data privacy." + }, + { + "inputJson": "{\"fileType\":\"report\",\"fileName\":\"SecurityAuditReport.docx\",\"content\":\"Audit results for Q2 2024 with findings and recommendations.\",\"complianceTags\":[\"ISO27001\"],\"format\":\"docx\"}", + "description": "Generate an ISO27001 audit report in DOCX format." + }, + { + "inputJson": "{\"fileType\":\"checklist\",\"fileName\":\"HIPAA_ComplianceChecklist.txt\",\"content\":\"- Ensure encryption\\n- Employee training\\n- Incident response plan\",\"complianceTags\":[\"HIPAA\"],\"format\":\"txt\"}", + "description": "Produce a plain text HIPAA compliance checklist." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "compliance-management.analyzeDocument", + "description": "Analyzes regulatory or policy documents to assess compliance with specified rules or standards. Accepts text or structured documents, scans for key compliance criteria, performs risk assessments, and outputs a detailed compliance report highlighting potential non-compliance issues and recommendations.", + "category": "compliance-management", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text content of the document to be analyzed for compliance.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of document, such as 'policy', 'contract', 'report', or 'regulation'. Influences analysis rules.", + "required": false, + "defaultValue": "policy" + }, + { + "name": "regulationsToCheck", + "type": "array", + "description": "List of specific regulatory frameworks or policy standards to check against (e.g., ['GDPR','HIPAA']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The language in which the document is written (e.g., 'en', 'fr'). Affects parsing and keyword matching.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations for detected compliance issues.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing compliance summary, detailed findings with references to document sections, risk levels, and optional remediation advice." + }, + "aiAgent": { + "useCase": "Use this tool when needing to verify if a document complies with one or more regulatory or internal policy standards by analyzing its content and highlighting potential non-compliance risks with structured findings, helping reduce manual audit effort.", + "limitations": "Cannot replace a full legal compliance audit; may miss nuanced context or jurisdictional subtleties. Accuracy depends on input document clarity and up-to-date regulatory knowledge.", + "examples": [ + "Analyze a corporate privacy policy against GDPR and CCPA standards.", + "Check a vendor contract for compliance with internal security policies.", + "Assess a workplace safety report document for OSHA compliance." + ] + }, + "tags": [ + "compliance", + "document-analysis", + "regulation", + "policy", + "risk-assessment", + "audit" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"This privacy policy describes how we handle personal data...\",\"documentType\":\"policy\",\"regulationsToCheck\":[\"GDPR\",\"CCPA\"],\"language\":\"en\",\"includeRecommendations\":true}", + "description": "Analyze a privacy policy document against GDPR and CCPA compliance requirements." + }, + { + "inputJson": "{\"documentText\":\"Vendor agrees to adhere to all company security protocols...\",\"documentType\":\"contract\",\"regulationsToCheck\":[\"InternalSecurityPolicy\"],\"language\":\"en\",\"includeRecommendations\":false}", + "description": "Evaluate a vendor contract's compliance with internal security policies without recommendations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "compliance-management.createEmail", + "description": "Creates a compliance-focused email template by accepting details such as recipient info, subject, body text, and references to regulatory policies. It ensures the email content addresses compliance requirements and includes necessary disclaimers. Outputs a structured, ready-to-send email object with compliance annotations.", + "category": "compliance-management", + "parameters": [ + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient to send the compliance email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the compliance email.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Main content of the email including compliance information, instructions, or notifications.", + "required": true, + "defaultValue": "" + }, + { + "name": "policyReferences", + "type": "array", + "description": "List of regulatory policies or compliance documents referenced or cited in the email content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeDisclaimer", + "type": "boolean", + "description": "Flag indicating whether to append a standard compliance disclaimer at the end of the email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "senderEmail", + "type": "string", + "description": "Email address of the sender to appear in the email header.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured email object containing recipient, sender, subject, body with policy references, and disclaimer if included, ready for sending or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate emails that communicate compliance matters, such as policy updates, audit notices, or regulatory instructions, ensuring consistency with compliance requirements and inclusion of required disclaimers.", + "limitations": "This tool does not send emails; it only generates the content and structuring. It cannot verify email addresses or guarantee legal compliance beyond template creation.", + "examples": [ + "Generate a compliance notification email to staff about a new data privacy regulation.", + "Create an email to notify a client about a policy breach and required actions.", + "Draft a reminder email including the latest audit procedures and compliance references." + ] + }, + "tags": [ + "compliance", + "email", + "communication", + "regulatory", + "notification", + "template" + ], + "examples": [ + { + "inputJson": "{\"recipientEmail\":\"employee@example.com\",\"subject\":\"Update on Data Privacy Regulations\",\"bodyText\":\"Dear team, please review the updated data privacy policies effective next month.\",\"policyReferences\":[\"GDPR Article 5\",\"Company Privacy Policy v3.2\"],\"includeDisclaimer\":true,\"senderEmail\":\"compliance@company.com\"}", + "description": "Email to employees notifying them of updated data privacy regulations with policy references and a compliance disclaimer." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "compliance-management.createDocument", + "description": "Creates a compliance document based on specified regulatory frameworks and company policies. Accepts inputs including document type, relevant regulations, policy references, and metadata. Outputs a structured document draft suitable for review and further customization.", + "category": "compliance-management", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of compliance document to create (e.g., policy, audit report).", + "required": true, + "defaultValue": "" + }, + { + "name": "regulatoryFrameworks", + "type": "array", + "description": "List of regulatory frameworks or standards to comply with (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "policyReferences", + "type": "array", + "description": "Internal company policies or sections to reference in the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Title of the compliance document.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the document author or responsible person.", + "required": false, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Effective date of the document in ISO 8601 format (e.g., 2024-06-01).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated compliance document content, metadata, and format details." + }, + "aiAgent": { + "useCase": "Use this tool when generating structured compliance documents tailored to specific regulatory requirements and company policies. Ideal for initial drafts to expedite compliance workflows and standardize documentation.", + "limitations": "Cannot perform legal interpretation or guarantee compliance completeness; requires human review and approval.", + "examples": [ + "Create a GDPR compliance privacy policy document.", + "Generate an internal audit report referencing HIPAA regulations.", + "Draft a security policy document titled 'Data Protection Policy' effective July 1, 2024." + ] + }, + "tags": [ + "compliance", + "document-generation", + "regulations", + "policy", + "legal", + "management" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"policy\",\"regulatoryFrameworks\":[\"GDPR\"],\"policyReferences\":[\"Data Handling Policy\"],\"documentTitle\":\"GDPR Privacy Policy\",\"authorName\":\"Jane Doe\",\"effectiveDate\":\"2024-07-01\"}", + "description": "Generate a GDPR privacy policy document referencing company data handling policy with specified author and effective date." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "security-tools.analyzeWord", + "description": "Analyzes a given word to identify potential security risks, including presence of common passwords, known malicious keywords, or suspicious strings that could indicate phishing, injection attempts, or unsafe content. Accepts a single word string as input and returns a detailed risk assessment with categorizations and recommendations.", + "category": "security-tools", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single word or token to analyze for security risks and suspicious content.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language context to improve keyword and dictionary matching (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "checkCommonPasswords", + "type": "boolean", + "description": "Flag to check if the word matches a list of common or leaked passwords.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkMaliciousKeywords", + "type": "boolean", + "description": "Flag to analyze the word for known malicious or phishing related keywords.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkInjectionPatterns", + "type": "boolean", + "description": "Flag to detect patterns typical for injection attacks (e.g. SQL, code injection).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original word, detected risk categories, detailed explanations for each risk type found, and an overall risk score from 0 (safe) to 1 (high risk)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate single words or tokens extracted from user inputs, logs, or configuration for potential security threats. Particularly useful for detecting unsafe passwords, suspicious code injection attempts, or malicious keywords embedded in data.", + "limitations": "This tool analyzes isolated words and cannot detect multi-word context or sentence-level semantics. It does not provide comprehensive threat analysis beyond keyword and pattern matching. It also does not replace full vulnerability scanning or dynamic analysis.", + "examples": [ + "Analyze the password 'password123' for security risks.", + "Check if the word 'alert' might indicate a potential injection attempt.", + "Evaluate the word 'freebitcoin' as a possible phishing or scam indicator." + ] + }, + "tags": [ + "security", + "analysis", + "word", + "risk-assessment", + "password", + "phishing", + "injection-detection" + ], + "examples": [ + { + "inputJson": "{\"word\":\"password123\"}", + "description": "Analyze a very common password to detect poor security." + }, + { + "inputJson": "{\"word\":\"alert\"}", + "description": "Check if this word indicates suspicious injection or script attempts." + }, + { + "inputJson": "{\"word\":\"freebitcoin\"}", + "description": "Detect if this word is a known phishing or scam keyword." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "security-tools.analyzeJSON", + "description": "Analyzes JSON-formatted security configuration data to identify potential security risks such as exposed secrets, insecure configurations, or malformed entries. Takes JSON as input, scans for common security issues, and outputs a detailed report with risk levels and recommendations.", + "category": "security-tools", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The JSON string representing security-related configuration or data to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "scanForSecrets", + "type": "boolean", + "description": "Flag to enable scanning for exposed secrets or credentials within the JSON data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "strictSchemaValidation", + "type": "boolean", + "description": "Whether to enforce strict JSON schema validation before analysis, rejecting malformed JSON structures.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth to traverse nested JSON objects during analysis to limit performance impact.", + "required": false, + "defaultValue": "10" + }, + { + "name": "riskThreshold", + "type": "string", + "description": "Minimum risk level to report (e.g., low, medium, high). Issues below this threshold will be omitted from output.", + "required": false, + "defaultValue": "low" + } + ], + "returns": { + "type": "object", + "description": "A structured report detailing identified security issues, each with severity, location (JSON path), description, and remediation suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically audit security configurations or secrets encoded in JSON format. Ideal for CI/CD pipelines or security validation agents to detect leaks, unsafe settings, or malformed data in JSON-configured systems before deployment.", + "limitations": "Cannot fix detected issues, only report them; effectiveness depends on known rules and signature patterns; does not analyze non-JSON security data.", + "examples": [ + "Find potential secret leaks in a Kubernetes config JSON.", + "Check a JSON firewall ruleset for insecure configurations.", + "Validate security policies described in JSON for missing required fields." + ] + }, + "tags": [ + "security", + "json", + "analysis", + "configuration", + "secrets", + "validation", + "audit" + ], + "examples": [ + { + "inputJson": "{\"apiKey\":\"12345\", \"settings\":{\"debug\":true, \"allowedIPs\":[\"0.0.0.0/0\"]}}", + "description": "Analyze JSON containing a possible exposed API key and overly permissive IP access." + }, + { + "inputJson": "{\"users\":[{\"name\":\"admin\",\"password\":\"pass123\"}],\"features\":{\"enableBeta\":false}}", + "description": "Detect weak password or secret in user configuration JSON." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "security-tools.downloadDocument", + "description": "Downloads a specified security-related document from a secure server or document management system. Accepts authentication credentials and document identifier, retrieves the document if authorized, and outputs the document content in binary or text format for further processing or storage.", + "category": "security-tools", + "parameters": [ + { + "name": "documentId", + "type": "string", + "description": "Unique identifier or path of the document to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Bearer token or API key used to authenticate the download request.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'binary' for raw bytes or 'text' for UTF-8 decoded content.", + "required": false, + "defaultValue": "binary" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before timing out.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded document's content and metadata such as content type and size." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve security-critical documents, such as compliance policies, audit reports, or vulnerability assessments, from a protected repository requiring authentication. It is suitable where secure, authorized access is necessary to obtain up-to-date documents for analysis or compliance verification.", + "limitations": "This tool does not parse or analyze the document content; it only downloads and returns the document. It requires valid authentication credentials and network access to the document source. It cannot access documents without appropriate permissions or handle user-interactive authentication flows.", + "examples": [ + "Download the latest firewall security policy document using a valid API token.", + "Retrieve a vulnerability assessment report in text format for automated auditing.", + "Fetch a compliance certificate in binary format from a secure document server." + ] + }, + "tags": [ + "download", + "security", + "document", + "authentication", + "secure-access", + "file-retrieval" + ], + "examples": [ + { + "inputJson": "{\"documentId\":\"sec_policy_2024.pdf\",\"authToken\":\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9\",\"outputFormat\":\"binary\"}", + "description": "Download a PDF security policy using a JWT auth token as raw binary." + }, + { + "inputJson": "{\"documentId\":\"vuln_report_2023.txt\",\"authToken\":\"api_key_1234567890\",\"outputFormat\":\"text\",\"timeoutSeconds\":60}", + "description": "Retrieve a vulnerability report in plain text from a secure API with extended timeout." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "security-tools.composeEmail", + "description": "Composes a security-focused email message by accepting inputs such as recipient addresses, subject, body content, security level (e.g., encrypt, sign), and optional attachments. It processes these inputs to generate a properly formatted email structure that meets the specified security requirements, ready for sending via a compatible email client or server.", + "category": "security-tools", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content or body text of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "securityLevel", + "type": "string", + "description": "Security requirement for the email: e.g., 'none', 'sign', 'encrypt', or 'signAndEncrypt'.", + "required": true, + "defaultValue": "none" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of file attachments (as base64-encoded strings or file descriptors).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sender", + "type": "string", + "description": "Email address of the sender (used for signing/encryption).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email data including headers, body, security metadata, and attachment info, ready for transmission or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create a security-aware email message, ensuring appropriate cryptographic protections such as signing or encryption are applied based on policy or user input. It is useful for automating secure communications while maintaining compliance with security standards.", + "limitations": "This tool does not send the email itself or manage cryptographic key distribution. It assumes that necessary keys or certificates are managed externally and that the final transmission is handled by a separate email sending tool or service.", + "examples": [ + "Compose a signed email to the security team reporting an incident.", + "Create an encrypted email with confidential attachments for a client.", + "Generate a simple unencrypted notification email to multiple recipients." + ] + }, + "tags": [ + "security", + "email", + "compose", + "encryption", + "signing", + "attachments", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"security@company.com\"],\"subject\":\"Urgent: Security Incident Report\",\"body\":\"Please find the incident details attached.\",\"securityLevel\":\"sign\",\"attachments\":[\"base64EncodedPdfData...\"],\"sender\":\"alerts@company.com\"}", + "description": "Compose a signed email with an attachment reporting a security incident to the internal security team." + }, + { + "inputJson": "{\"recipients\":[\"client@example.com\"],\"subject\":\"Confidential Project Update\",\"body\":\"Here is the latest confidential update.\",\"securityLevel\":\"encrypt\",\"attachments\":[],\"sender\":\"projectmanager@company.com\"}", + "description": "Create an encrypted email without attachments for a client with sensitive project information." + }, + { + "inputJson": "{\"recipients\":[\"staff@company.com\"],\"subject\":\"Monthly Security Newsletter\",\"body\":\"Welcome to the monthly security briefing.\",\"securityLevel\":\"none\",\"attachments\":[],\"sender\":\"security@company.com\"}", + "description": "Generate a simple unencrypted newsletter email sent to all staff members." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "security-tools.createServer", + "description": "Creates a secure virtual server instance with specified configurations. Accepts parameters including server type, operating system, CPU, RAM, storage size, network settings, and security options like firewall rules and SSH key pairs. Returns details of the created server including ID, IP address, status, and applied security configurations.", + "category": "security-tools", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type or flavor of the server to create (e.g., 't2.micro', 'standard')", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server (e.g., 'Ubuntu 22.04', 'Windows Server 2019')", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores for the server", + "required": true, + "defaultValue": "2" + }, + { + "name": "ramGB", + "type": "number", + "description": "Gigabytes of RAM allocated to the server", + "required": true, + "defaultValue": "4" + }, + { + "name": "storageGB", + "type": "number", + "description": "Size of the primary storage disk in GB", + "required": true, + "defaultValue": "50" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration object including subnet ID, public IP allocation, and VPC settings", + "required": true, + "defaultValue": "" + }, + { + "name": "firewallRules", + "type": "array", + "description": "Array of firewall rules, each specifying protocol, port ranges, and source IP ranges", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sshKeyPair", + "type": "string", + "description": "SSH public key string to enable secure SSH access to the server", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object describing the created server, including server ID, public and private IP addresses, current status, and a summary of security configurations applied." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically create a secure virtual server instance tailored to precise resource and security needs, such as for deployment of applications or test environments where security configurations like firewall and SSH keys must be set at creation time. It facilitates automated provisioning in cloud environments or private infrastructure.", + "limitations": "Does not handle deployment of applications or runtime monitoring post-creation. Assumes network and SSH keys are preconfigured and valid. Does not support automatic OS patching or compliance auditing.", + "examples": [ + "Create an Ubuntu server with 4 CPUs, 8GB RAM, 100GB storage, including SSH key and firewall rules for HTTP/HTTPS", + "Provision a Windows Server 2019 instance with a public IP and restricted firewall access to a specific IP range", + "Create a minimal Linux server without public IP and strict firewall rules for backend services only" + ] + }, + "tags": [ + "security", + "infrastructure", + "server", + "provisioning", + "automation", + "cloud", + "firewall", + "ssh" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"t2.medium\",\"operatingSystem\":\"Ubuntu 22.04\",\"cpuCores\":4,\"ramGB\":8,\"storageGB\":100,\"networkConfig\":{\"subnetId\":\"subnet-123456\",\"assignPublicIp\":true,\"vpcId\":\"vpc-654321\"},\"firewallRules\":[{\"protocol\":\"tcp\",\"portRange\":\"22\",\"source\":\"0.0.0.0/0\"},{\"protocol\":\"tcp\",\"portRange\":\"80-443\",\"source\":\"0.0.0.0/0\"}],\"sshKeyPair\":\"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC... user@example.com\"}", + "description": "Creates an Ubuntu server with moderate resources, public IP, firewall allowing SSH and HTTP/S access, and deploys specified SSH key." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "security-tools.generateJSON", + "description": "Generates a structured JSON object representing security configurations or policies based on given parameters such as rules, roles, permissions, and metadata. Accepts customization inputs and outputs a valid JSON string suitable for use in security policy management or infrastructure as code.", + "category": "security-tools", + "parameters": [ + { + "name": "policyName", + "type": "string", + "description": "Name of the security policy to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "rules", + "type": "array", + "description": "Array of rule objects defining security conditions, each rule includes criteria and actions.", + "required": true, + "defaultValue": "" + }, + { + "name": "roles", + "type": "array", + "description": "List of role objects specifying user roles and their associated permissions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata to include in the JSON output, such as version or environment info.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to add creation and modification timestamps to the output JSON.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the complete security policy with specified rules, roles, metadata, and optional timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate well-structured JSON representations of security policies, access controls, or configuration templates from a set of parameters or business rules. Helpful in automating security policy generation during infrastructure setup, compliance reporting, or application security configuration.", + "limitations": "This tool does not validate the semantic correctness of security rules or enforce best security practices beyond JSON formatting and structure generation. It also does not apply or deploy the generated policies.", + "examples": [ + "Generate a JSON security policy named 'AccessControl' with specific access rules for an application.", + "Create a JSON configuration with user roles and permissions for a web service.", + "Produce JSON output including timestamps and metadata for environment 'production'." + ] + }, + "tags": [ + "security", + "JSON", + "policy", + "configuration", + "access control", + "automation" + ], + "examples": [ + { + "inputJson": "{\"policyName\":\"AccessControl\",\"rules\":[{\"criteria\":\"ipRange\",\"value\":\"192.168.0.0/24\",\"action\":\"allow\"},{\"criteria\":\"timeOfDay\",\"value\":\"09:00-17:00\",\"action\":\"deny\"}],\"roles\":[{\"name\":\"admin\",\"permissions\":[\"read\",\"write\",\"delete\"]},{\"name\":\"user\",\"permissions\":[\"read\"]}],\"metadata\":{\"version\":\"1.0\",\"environment\":\"prod\"},\"includeTimestamps\":true}", + "description": "Generate a security policy JSON with rules for IP range and time restrictions, including two roles and metadata with timestamps." + }, + { + "inputJson": "{\"policyName\":\"ReadOnlyPolicy\",\"rules\":[{\"criteria\":\"role\",\"value\":\"guest\",\"action\":\"read-only\"}],\"roles\":[{\"name\":\"guest\",\"permissions\":[\"read\"]}],\"includeTimestamps\":false}", + "description": "Create a read-only security policy JSON for guest role without timestamps." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "security-tools.createDatabase", + "description": "Creates a new secured database instance with specified configurations for cloud or on-premises environments. Accepts parameters for database type, storage size, access controls, encryption settings, and backup policies. Returns details of the created database including connection info and security compliance status.", + "category": "security-tools", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database to create, e.g., PostgreSQL, MySQL, MongoDB.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "Allocated storage size in gigabytes for the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Cloud or data center region where the database is deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableEncryptionAtRest", + "type": "boolean", + "description": "Whether to enable encryption of data at rest.", + "required": false, + "defaultValue": "true" + }, + { + "name": "enableEncryptionInTransit", + "type": "boolean", + "description": "Whether to enforce encryption of data in transit (e.g., TLS).", + "required": false, + "defaultValue": "true" + }, + { + "name": "accessControlList", + "type": "array", + "description": "List of IP addresses or CIDR blocks allowed to access the database.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "backupRetentionDays", + "type": "number", + "description": "Number of days to retain automatic backups.", + "required": false, + "defaultValue": "7" + }, + { + "name": "autoScalingEnabled", + "type": "boolean", + "description": "Enable automatic scaling of storage or instance size based on demand.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing database instance ID, connection string, status, security compliance certifications applied, and metadata of the created database." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a new database instance for an application or infrastructure setup that requires secure data storage. Ideal for scenarios demanding custom configuration of encryption, access controls, backup policies, and geographic region to comply with security and compliance requirements.", + "limitations": "Does not support modifying existing databases or migrating data. It only provisions new instances based on provided parameters. Specific cloud provider APIs required for actual provisioning are not implemented here.", + "examples": [ + "Create a PostgreSQL database of 50GB storage with encryption enabled and restricted access to certain IPs in the us-east-1 region.", + "Provision a MongoDB instance with 100GB storage, automatic backups retained for 14 days, and disable auto-scaling.", + "Set up a MySQL database in europe-west3 with TLS encryption, access list allowing single IP, and default backup settings." + ] + }, + "tags": [ + "security", + "database", + "provisioning", + "encryption", + "backup", + "access control" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"storageSizeGB\":50,\"region\":\"us-east-1\",\"enableEncryptionAtRest\":true,\"enableEncryptionInTransit\":true,\"accessControlList\":[\"192.168.1.0/24\"],\"backupRetentionDays\":7,\"autoScalingEnabled\":false}", + "description": "Create a PostgreSQL database with 50GB storage in us-east-1, encryption enabled, access only from 192.168.1.0/24, 7-day backups, no auto-scaling." + }, + { + "inputJson": "{\"databaseType\":\"MongoDB\",\"storageSizeGB\":100,\"region\":\"us-west-2\",\"enableEncryptionAtRest\":true,\"enableEncryptionInTransit\":false,\"accessControlList\":[\"10.0.0.5\"],\"backupRetentionDays\":14,\"autoScalingEnabled\":true}", + "description": "Provision a MongoDB with 100GB storage, encryption at rest enabled, no encryption in transit, access limited to 10.0.0.5, 14-day backups, auto-scaling enabled." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "security-tools.createTest", + "description": "This tool creates security test cases for code or infrastructure components based on input parameters such as test type, target code snippet or configuration, and test criteria. It generates executable test scripts or configurations designed to validate security properties like authentication, authorization, input validation, or vulnerability exposure.", + "category": "security-tools", + "parameters": [ + { + "name": "testType", + "type": "string", + "description": "The type of security test to create, e.g., 'authentication', 'authorization', 'inputValidation', 'sqlInjection', 'xss'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetCode", + "type": "string", + "description": "The source code snippet or configuration to be tested for security vulnerabilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "testCriteria", + "type": "object", + "description": "An object specifying detailed criteria or parameters the test should verify, such as expected outcomes or attack vectors.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output test script format, e.g., 'JUnit', 'Pytest', 'PostmanCollection'.", + "required": false, + "defaultValue": "JUnit" + }, + { + "name": "includeMockData", + "type": "boolean", + "description": "Whether to include mock data or inputs necessary to run the security test.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated security test script or configuration including code, metadata like testType, and instructions for execution." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate specific security tests automatically based on code snippets or infrastructure configuration to help developers validate security properties, simulate attacks, or check for vulnerabilities.", + "limitations": "This tool cannot perform actual security scanning or testing itself; it only generates test code or configurations. It requires correct input code/context and cannot guarantee test effectiveness against all vulnerabilities.", + "examples": [ + "Create a test to check XSS vulnerabilities in this frontend JS snippet.", + "Generate an authentication test case for the API endpoint configuration.", + "Produce an input validation test that checks for SQL injection on the given database query code." + ] + }, + "tags": [ + "security", + "testing", + "automation", + "code", + "vulnerability", + "test-generation" + ], + "examples": [ + { + "inputJson": "{\"testType\":\"xss\",\"targetCode\":\" \",\"testCriteria\":{\"payloads\":[\"\"]},\"outputFormat\":\"Pytest\",\"includeMockData\":true}", + "description": "Generate a Pytest script to test XSS vulnerability on given HTML and JS input handling code." + }, + { + "inputJson": "{\"testType\":\"authentication\",\"targetCode\":\"POST /login {username, password}\",\"testCriteria\":{\"expectedStatus\":401},\"outputFormat\":\"PostmanCollection\",\"includeMockData\":true}", + "description": "Create a Postman collection test to verify authentication failure on invalid login credentials." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "security-tools.createImage", + "description": "Creates a customized security-themed image based on user-defined text, icons, colors, and layout preferences. Accepts parameters such as title text, subtitle, icon selection from a preset library, background color, and output image format. Generates a PNG or SVG image file designed for use in security reports, presentations, or web applications to visually convey security concepts.", + "category": "security-tools", + "parameters": [ + { + "name": "titleText", + "type": "string", + "description": "Main title text to display prominently on the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "subtitleText", + "type": "string", + "description": "Optional secondary text shown below the title for additional context.", + "required": false, + "defaultValue": "" + }, + { + "name": "iconName", + "type": "string", + "description": "Name of a security-related icon to include (e.g., shield, lock, firewall). Must be from the preset icon library.", + "required": true, + "defaultValue": "" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the image in hex code or CSS color names.", + "required": false, + "defaultValue": "#ffffff" + }, + { + "name": "textColor", + "type": "string", + "description": "Text color for title and subtitle in hex code or CSS color names.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "imageWidth", + "type": "number", + "description": "Width of the generated image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "imageHeight", + "type": "number", + "description": "Height of the generated image in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, either 'png' or 'svg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "includeBorder", + "type": "boolean", + "description": "Whether to include a subtle border around the image.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64-encoded string of the generated image and its MIME type." + }, + "aiAgent": { + "useCase": "When needing to generate visual security graphics on demand for documentation, status dashboards, or presentation slides, use this tool to create visually consistent and themed images featuring key security icons and messages. This facilitates enhanced communication of security concepts without manual graphic design.", + "limitations": "Cannot create freeform or user-uploaded icons; limited to preset icon library. Text formatting options are basic, no complex layouts. Not suited for photographic or highly detailed imagery.", + "examples": [ + "Create a PNG image with a green background featuring a shield icon and 'Security Alert' headline.", + "Generate an SVG image with lock icon, 'Access Denied' title, and black text on white background.", + "Produce a 600x400 PNG image with firewall icon, including a subtitle and a border." + ] + }, + "tags": [ + "security", + "image-generation", + "visualization", + "icons", + "custom-image", + "branding" + ], + "examples": [ + { + "inputJson": "{\"titleText\":\"Security Alert\",\"subtitleText\":\"Critical Vulnerability Detected\",\"iconName\":\"shield\",\"backgroundColor\":\"#ff0000\",\"textColor\":\"#ffffff\",\"outputFormat\":\"png\"}", + "description": "Red background security alert image with shield icon and white text." + }, + { + "inputJson": "{\"titleText\":\"Access Denied\",\"iconName\":\"lock\",\"backgroundColor\":\"white\",\"textColor\":\"black\",\"imageWidth\":800,\"imageHeight\":600,\"outputFormat\":\"svg\",\"includeBorder\":true}", + "description": "White background SVG image showing lock icon, title text, and border with larger dimensions." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "security-tools.createDataset", + "description": "Creates a labeled dataset for security analysis by aggregating and processing input data such as raw logs, alerts, or incidents. The tool accepts various sources, applies optional filtering and normalization, and outputs a structured dataset suitable for downstream ML model training or reporting.", + "category": "security-tools", + "parameters": [ + { + "name": "inputSources", + "type": "array", + "description": "List of input data sources such as log file paths, alert streams, or incident databases to include", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Filtering criteria to apply on data (e.g., date ranges, severity levels, event types)", + "required": false, + "defaultValue": "" + }, + { + "name": "normalizeData", + "type": "boolean", + "description": "Whether to normalize and standardize data formats and fields across sources", + "required": false, + "defaultValue": "true" + }, + { + "name": "labelingScheme", + "type": "object", + "description": "Specifications for labeling data entries such as threat categories or incident types", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for dataset output, e.g., CSV, JSON, or Parquet", + "required": false, + "defaultValue": "CSV" + } + ], + "returns": { + "type": "object", + "description": "Structured dataset object containing aggregated, filtered, normalized, and labeled security data ready for analysis or machine learning" + }, + "aiAgent": { + "useCase": "Use this tool when you need to consolidate security-related data from multiple disparate sources into a unified, labeled dataset for purposes such as building machine learning models for threat detection, forensic analysis, or trend reporting. It handles data extraction, filtering, normalization, and labeling tailored to security contexts.", + "limitations": "Does not perform advanced feature engineering or model training itself; input sources must be accessible and properly formatted; labeling depends on user-supplied schemes and may require domain expertise.", + "examples": [ + "Create a dataset from IDS logs and firewall alerts filtered for high severity threats in the last month.", + "Aggregate incident reports and security alerts applying standard threat classification labels.", + "Normalize and combine multiple security event streams into a JSON dataset for anomaly detection model training." + ] + }, + "tags": [ + "security", + "dataset", + "data-aggregation", + "labeling", + "normalization", + "machine-learning-prep" + ], + "examples": [ + { + "inputJson": "{\"inputSources\":[\"/var/log/ids.log\",\"s3://alerts/firewall_alerts.json\"],\"filters\":{\"severity\":[\"high\",\"critical\"],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\"},\"normalizeData\":true,\"labelingScheme\":{\"threatTypeField\":\"threat_category\",\"mapping\":{\"malware\":\"Malicious Software\",\"phishing\":\"Phishing Attempt\"}},\"outputFormat\":\"CSV\"}", + "description": "Create a CSV dataset from IDS logs and firewall alerts, filtered to include only high and critical severity events during January 2024, normalized and labeled by threat type." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "customer-support.analyzeCustomer", + "description": "This tool analyzes customer data including demographics, behavior patterns, and satisfaction surveys. It processes input datasets to identify trends, segment customers, and generate actionable insights for customer support optimization. Outputs include summary statistics, customer segments, and recommendations for improving service.", + "category": "customer-support", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "Array of customer records containing attributes like demographics, purchase history, and support interactions.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform: 'segmentation', 'sentiment', 'trend', or 'all'.", + "required": false, + "defaultValue": "all" + }, + { + "name": "timePeriod", + "type": "object", + "description": "Optional date range filter with 'startDate' and 'endDate' to restrict analysis to a specific period.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations based on analysis results.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results such as customer segments, key trends, sentiment analysis summary, and optional improvement recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze detailed customer data to understand patterns and behaviors that can improve customer support strategies. It helps automate segmentation, sentiment evaluation, and trend detection all in one for actionable insights.", + "limitations": "Does not perform real-time monitoring or integration with live customer support systems; requires structured historical data input.", + "examples": [ + "Analyze customer satisfaction trends over the last quarter to identify declining sentiment.", + "Segment customers based on purchase behavior and demographics to tailor support approaches.", + "Provide recommendations on how to enhance customer experience based on analyzed support interaction data." + ] + }, + "tags": [ + "customer-support", + "analysis", + "customer-insights", + "segmentation", + "sentiment-analysis" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"id\":1,\"age\":34,\"region\":\"North\",\"purchaseHistory\":[\"prodA\",\"prodB\"],\"supportTickets\":5,\"satisfactionScore\":7,\"lastInteraction\":\"2024-05-15\"},{\"id\":2,\"age\":28,\"region\":\"West\",\"purchaseHistory\":[\"prodB\"],\"supportTickets\":1,\"satisfactionScore\":9,\"lastInteraction\":\"2024-05-20\"}],\"analysisType\":\"segmentation\",\"timePeriod\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-06-01\"},\"includeRecommendations\":true}", + "description": "Segment customers by demographics and behavior within the first half of 2024, including recommendations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "customer-support.buildCode", + "description": "Generates ready-to-use customer support code snippets based on provided requirements. Accepts input parameters describing the desired platform, programming language, and features like ticketing integration, response templates, and FAQ automation. Processes specifications and outputs code modules to enhance customer support systems.", + "category": "customer-support", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "Target platform for the support system code (e.g., web, mobile, desktop).", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language to generate the code in (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of features to include in the generated code (e.g., ticketing, live chat, FAQ automation).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSampleData", + "type": "boolean", + "description": "Whether to include sample data and mock responses in the code (true or false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Preferred code style or framework (e.g., React, Express, Flask, vanilla).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated code snippets or full modules as strings keyed by feature or component name." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly scaffold or generate customer support system code based on user business requirements, platform choice, and desired functionality, facilitating rapid development and integration.", + "limitations": "Does not replace full software design or architectural planning; generated code may require adaptation to specific production environments and security practices.", + "examples": [ + "Generate a web-based React customer support widget with ticketing and live chat features.", + "Provide Python Flask backend code with FAQ automation and ticket submission support.", + "Create JavaScript snippets for embedding live chat and canned responses on mobile platforms." + ] + }, + "tags": [ + "customer-support", + "code-generation", + "automation", + "ticketing", + "live-chat" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"web\",\"programmingLanguage\":\"JavaScript\",\"features\":[\"ticketing\",\"liveChat\"],\"includeSampleData\":true,\"codeStyle\":\"React\"}", + "description": "Generate React JavaScript code for a web platform supporting ticketing and live chat with sample data." + }, + { + "inputJson": "{\"platform\":\"mobile\",\"programmingLanguage\":\"Swift\",\"features\":[\"faqAutomation\"],\"includeSampleData\":false,\"codeStyle\":\"vanilla\"}", + "description": "Generate vanilla Swift code for a mobile platform embedding FAQ automation without sample data." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "marketing-automation.generateReport", + "description": "Generates comprehensive marketing campaign performance reports by processing input campaign data, selecting specified metrics and date ranges, and outputting a formatted summary report including charts and key performance indicators.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign to generate the report for.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date of the reporting period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date of the reporting period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of performance metrics to include, e.g., ['clicks', 'impressions', 'conversions'].", + "required": false, + "defaultValue": "[\"clicks\",\"impressions\",\"conversions\"]" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include visual charts and graphs in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the output report document, e.g., 'pdf', 'html', or 'json'.", + "required": false, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report content as a string or binary data depending on format, metadata such as report generation timestamp, campaign ID, and summary statistics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to summarize marketing campaign data over a specified timeframe, generating tailored reports that provide insights on campaign effectiveness and performance metrics for stakeholders or analytics.", + "limitations": "Cannot analyze raw advertising creative content or perform media buying optimizations; depends on availability and accuracy of input campaign data; limited to metrics tracked within the source marketing system.", + "examples": [ + "Generate a performance report for campaign 'cmp123' from 2024-01-01 to 2024-01-31 including clicks, impressions, and conversions in PDF format.", + "Create an HTML sales funnel report for campaign 'cmpXYZ' between 2023-12-01 and 2023-12-31 with charts included.", + "Produce a JSON report for campaign 'abc789' covering Q1 2024 focusing only on conversion metrics without charts." + ] + }, + "tags": [ + "marketing", + "reporting", + "automation", + "campaign", + "analytics", + "performance", + "summary" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"cmp123\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"metrics\":[\"clicks\",\"impressions\",\"conversions\"],\"includeCharts\":true,\"reportFormat\":\"pdf\"}", + "description": "Generate a detailed PDF report for campaign 'cmp123' for January 2024 including all key metrics and charts." + }, + { + "inputJson": "{\"campaignId\":\"cmpXYZ\",\"startDate\":\"2023-12-01\",\"endDate\":\"2023-12-31\",\"metrics\":[\"clicks\",\"conversions\"],\"includeCharts\":false,\"reportFormat\":\"html\"}", + "description": "Create an HTML report for December 2023 focusing on clicks and conversions for campaign 'cmpXYZ' without charts." + }, + { + "inputJson": "{\"campaignId\":\"abc789\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"metrics\":[\"conversions\"],\"includeCharts\":true,\"reportFormat\":\"json\"}", + "description": "Produce a JSON formatted report for Q1 2024 conversion data for campaign 'abc789' including chart data." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "customer-support.createReport", + "description": "Generates a comprehensive customer support report based on specified criteria such as date range, support channels, and ticket status. Accepts parameters to filter tickets, aggregating data including counts, resolutions, and average response times, producing a structured report summary and detailed analytics suitable for management review.", + "category": "customer-support", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 start date of the reporting period (e.g., '2024-01-01')", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 end date of the reporting period (e.g., '2024-01-31')", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "Array of support channel names to include in the report (e.g., ['email', 'chat'])", + "required": false, + "defaultValue": "[]" + }, + { + "name": "ticketStatus", + "type": "array", + "description": "Array of ticket statuses to include (e.g., ['open', 'closed', 'pending'])", + "required": false, + "defaultValue": "[]" + }, + { + "name": "groupBy", + "type": "string", + "description": "Field to group report data by (e.g., 'agent', 'channel', 'priority')", + "required": false, + "defaultValue": "" + }, + { + "name": "includeResolutionDetails", + "type": "boolean", + "description": "Include detailed resolution information in the report", + "required": false, + "defaultValue": "false" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of records to include in detailed sections of the report", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary metrics and optionally detailed sections, including total tickets, average response times, satisfaction scores, grouped breakdowns, and resolution details if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to summarize customer support performance over a specific period, filtering by channels or ticket states, to generate actionable insights or executive summaries. Ideal for periodic reporting, performance tracking, and operational review.", + "limitations": "Does not generate real-time reports, requires accurate and up-to-date ticket data. Cannot analyze unstructured data or perform sentiment analysis.", + "examples": [ + "Generate a monthly report of all closed tickets in email and chat channels grouped by agent.", + "Create a report for last week showing open and pending tickets only, including resolution details.", + "Summarize customer support activity for Q1 2024 grouped by priority level." + ] + }, + "tags": [ + "customer-support", + "report", + "analytics", + "ticketing", + "performance", + "management" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"channels\":[\"email\",\"chat\"],\"ticketStatus\":[\"closed\"],\"groupBy\":\"agent\",\"includeResolutionDetails\":true,\"limit\":50}", + "description": "Monthly closed tickets report grouped by support agent including resolution details." + }, + { + "inputJson": "{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-07\",\"channels\":[\"phone\"],\"ticketStatus\":[\"open\",\"pending\"],\"includeResolutionDetails\":false}", + "description": "Weekly report for phone channel showing open and pending tickets without resolution details." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "marketing-automation.buildCode", + "description": "Generates customizable marketing automation campaign code snippets based on input parameters like campaign type, platform, audience segments, triggers, and action sequences. It processes these inputs to produce ready-to-deploy HTML/JavaScript or platform-specific code to automate campaign workflows efficiently.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign to build code for (e.g., email, socialMedia, sms).", + "required": true, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "Target platform for the generated code (e.g., Mailchimp, HubSpot, FacebookAds).", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceSegments", + "type": "array", + "description": "List of audience segment identifiers to target in the campaign.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "triggers", + "type": "array", + "description": "List of event triggers that initiate campaign actions (e.g., onSignup, onCartAbandon).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "actionSequence", + "type": "array", + "description": "Ordered list of actions to perform after triggers (e.g., sendEmail, showPopup).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "includeTracking", + "type": "boolean", + "description": "Whether to embed tracking scripts and metrics collection in the generated code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customParameters", + "type": "object", + "description": "Additional customizable parameters to fine-tune the generated code, like timing delays or message templates.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated campaign code snippet as a string, accompanying metadata about the output (like language, platform), and a summary of configured campaign elements." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate marketing automation campaign code tailored to specific platforms, audience segments, and action sequences. It helps reduce manual coding by producing ready-to-deploy code for campaigns such as emails, social ads, or SMS workflows based on specified triggers and parameters.", + "limitations": "This tool cannot test or deploy the generated code; it only produces code snippets as text. Complex custom integrations or proprietary platform features beyond standard templates may not be fully supported.", + "examples": [ + "Generate a Facebook Ads retargeting campaign code that triggers on cart abandonment and sends a sequence of reminders.", + "Build an email drip campaign for an e-commerce platform targeting a VIP customer segment using Mailchimp.", + "Create SMS campaign code with tracking enabled for new user signups triggering a welcome message sequence." + ] + }, + "tags": [ + "marketing", + "automation", + "code generation", + "campaign", + "email", + "sms", + "social media", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"platform\":\"Mailchimp\",\"audienceSegments\":[\"vip-customers\"],\"triggers\":[\"onSignup\"],\"actionSequence\":[\"sendWelcomeEmail\",\"sendFollowUpEmail\"],\"includeTracking\":true,\"customParameters\":{\"delayBetweenEmails\":3}}", + "description": "Generate a Mailchimp email automation code for VIP customers who sign up, sending welcome and follow-up emails with tracking enabled and 3 day delays." + }, + { + "inputJson": "{\"campaignType\":\"socialMedia\",\"platform\":\"FacebookAds\",\"audienceSegments\":[\"abandoned-cart\"],\"triggers\":[\"onCartAbandon\"],\"actionSequence\":[\"showRetargetingAd\"],\"includeTracking\":false,\"customParameters\":{}}", + "description": "Create Facebook Ads marketing automation code targeting users who abandoned carts, triggering retargeting ads with no tracking included." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "marketing-automation.createFunction", + "description": "Creates a customizable JavaScript function snippet tailored for marketing automation tasks based on user-defined criteria. Accepts function name, parameters, and logic specifications, generates executable code that can be integrated into campaign workflows. Outputs the function code as a string.", + "category": "marketing-automation", + "parameters": [ + { + "name": "functionName", + "type": "string", + "description": "The desired name of the JavaScript function to create", + "required": true, + "defaultValue": "" + }, + { + "name": "parameters", + "type": "array", + "description": "List of parameter names (strings) the function should accept", + "required": false, + "defaultValue": "[]" + }, + { + "name": "logic", + "type": "string", + "description": "JavaScript code as a string representing the core function logic (function body)", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include comments explaining the function automatically", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function's code as a string under 'functionCode'" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate reusable marketing automation code snippets tailored to specific logic requirements, such as custom validation, data formatting, or campaign triggers. Ideal for dynamically creating scripts to be embedded in marketing platforms or automation workflows.", + "limitations": "This tool does not execute or test the generated code; the user is responsible for validating the code's correctness and security. It generates JavaScript only and does not integrate directly with marketing platforms or APIs.", + "examples": [ + "Create a function named 'validateEmail' that accepts a single parameter 'email' and returns true if the email format is valid.", + "Generate a function 'calculateDiscount' taking parameters 'price' and 'discountRate' to compute discounted price.", + "Produce a function 'sendCampaignEvent' with parameters 'eventType' and 'userId', including comments about its purpose." + ] + }, + "tags": [ + "marketing", + "automation", + "code-generation", + "javascript", + "function", + "campaign", + "snippet" + ], + "examples": [ + { + "inputJson": "{\"functionName\":\"validateEmail\",\"parameters\":[\"email\"],\"logic\":\"const regex = /^[\\\\w-\\\\.]+@([\\\\w-]+\\\\.)+[\\\\w-]{2,4}$/; return regex.test(email);\",\"includeComments\":true}", + "description": "Generate a function named 'validateEmail' with one parameter to validate email format, including explanatory comments." + }, + { + "inputJson": "{\"functionName\":\"calculateDiscount\",\"parameters\":[\"price\",\"discountRate\"],\"logic\":\"return price - (price * discountRate);\",\"includeComments\":false}", + "description": "Create a simple function 'calculateDiscount' calculating discounted price without comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "marketing-automation.createCustomer", + "description": "Creates a new customer profile in the marketing system by accepting customer details like name, email, phone, preferences, and metadata. Validates input and returns the created customer object with a unique customer ID and timestamps.", + "category": "marketing-automation", + "parameters": [ + { + "name": "firstName", + "type": "string", + "description": "Customer's first name", + "required": true, + "defaultValue": "" + }, + { + "name": "lastName", + "type": "string", + "description": "Customer's last name", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Customer's email address, must be valid format", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Customer's phone number, optional", + "required": false, + "defaultValue": "" + }, + { + "name": "preferences", + "type": "object", + "description": "Optional object defining customer's marketing preferences, e.g., communication channels, product interests", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional custom key-value pairs to store with the customer profile", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "The newly created customer object including generated customerId, timestamps, and all input fields" + }, + "aiAgent": { + "useCase": "Use this tool when needing to add new customers to the marketing database before launching campaigns or personalizing outreach. It ensures standardization and validation of input fields and returns an authoritative customer representation to be used in campaign targeting.", + "limitations": "Does not handle updating existing customers or deleting them. Does not perform deduplication or advanced validation beyond format checks. Does not trigger campaigns or automations itself.", + "examples": [ + "Create a new customer profile with name and email to start building a list.", + "Add a customer with specified preferences to tailor marketing messaging.", + "Include extra metadata like loyalty tier during customer creation." + ] + }, + "tags": [ + "marketing", + "customer-management", + "automation", + "data-entry" + ], + "examples": [ + { + "inputJson": "{\"firstName\":\"Jane\",\"lastName\":\"Smith\",\"email\":\"jane.smith@example.com\",\"phoneNumber\":\"+1234567890\",\"preferences\":{\"newsletter\":true,\"sms\":false},\"metadata\":{\"loyaltyTier\":\"gold\"}}", + "description": "Create a customer with full details including preferences and metadata." + }, + { + "inputJson": "{\"firstName\":\"Bob\",\"lastName\":\"Lee\",\"email\":\"bob.lee@example.com\"}", + "description": "Create a minimal customer profile with just essential information." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "marketing-automation.createReport", + "description": "Generates a comprehensive marketing campaign report by accepting input parameters like campaign ID, date range, and metrics to analyze. It processes campaign performance data, including clicks, conversions, costs, and ROI, and outputs a structured report summarizing key insights and trends in JSON format.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "The unique identifier of the marketing campaign to report on.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date for the reporting period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date for the reporting period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of performance metrics to include (e.g., clicks, conversions, cost, revenue).", + "required": false, + "defaultValue": "[\"clicks\",\"conversions\",\"cost\",\"revenue\"]" + }, + { + "name": "groupBy", + "type": "string", + "description": "Dimension to group results by, e.g., daily, weekly, or by channel.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeVisualization", + "type": "boolean", + "description": "Whether to include simple visual data summaries like charts or graphs.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A detailed report object including summary statistics, time series data grouped as specified, and optionally visual data elements for the marketing campaign over the specified period." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate detailed summaries and insights on marketing campaigns over specified timeframes, helping marketers evaluate effectiveness, optimize budget allocation, or report results to stakeholders. This includes analyzing multiple metrics and grouping performance data to reveal trends.", + "limitations": "This tool cannot retrieve live data directly; it requires that relevant campaign data is accessible via integrated systems. It also cannot perform predictive analytics or generate recommendations; it only summarizes existing data.", + "examples": [ + "Create a report for campaign 'camp123' from 2024-01-01 to 2024-01-31 including clicks and conversions grouped daily.", + "Generate a weekly summary report for campaign 'spring_promo' including cost, revenue, and ROI metrics with visualizations.", + "Produce a monthly report by channel for campaign 'holiday_sale' showing all key performance metrics without visual charts." + ] + }, + "tags": [ + "marketing", + "reporting", + "automation", + "campaign-analysis", + "performance", + "metrics", + "data-summarization" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"camp123\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"metrics\":[\"clicks\",\"conversions\"],\"groupBy\":\"daily\",\"includeVisualization\":false}", + "description": "Generate a daily report for campaign 'camp123' with clicks and conversions for January 2024 without visual charts." + }, + { + "inputJson": "{\"campaignId\":\"spring_promo\",\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"metrics\":[\"cost\",\"revenue\",\"roi\"],\"groupBy\":\"weekly\",\"includeVisualization\":true}", + "description": "Create a weekly report for 'spring_promo' campaign for March 2024 including cost, revenue, and ROI metrics with visualizations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "sales-automation.generateCode", + "description": "Generates customizable sales automation code snippets based on user input parameters including target CRM, automation type, and integration endpoints. Processes these inputs to produce ready-to-use JavaScript or Python code tailored for common sales tasks such as lead management, email automation, and pipeline tracking.", + "category": "sales-automation", + "parameters": [ + { + "name": "crmPlatform", + "type": "string", + "description": "Target CRM platform for which the code is generated (e.g., Salesforce, HubSpot).", + "required": true, + "defaultValue": "" + }, + { + "name": "automationType", + "type": "string", + "description": "Type of sales automation to generate code for, such as leadCapture, emailFollowUp, or pipelineUpdate.", + "required": true, + "defaultValue": "" + }, + { + "name": "integrationEndpoints", + "type": "object", + "description": "Object specifying API endpoints and authentication tokens for external integrations, with keys like 'apiUrl' and 'authToken'.", + "required": false, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language for the output code snippet (e.g., JavaScript, Python).", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Flag to include explanatory comments in the generated code for clarity and maintainability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and metadata such as language and dependencies." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate customized, ready-to-use sales automation scripts tailored to specific CRMs and automation types, streamlining development and deployment of sales workflows.", + "limitations": "Cannot handle highly customized or proprietary CRM APIs beyond common platforms; generated code may require manual adjustments and testing before production use.", + "examples": [ + "Generate a JavaScript code snippet for Salesforce to automate lead capture from web forms.", + "Produce a Python script for HubSpot to send follow-up emails after lead qualification.", + "Create code to update pipeline stages in Salesforce with integration endpoints provided." + ] + }, + "tags": [ + "sales automation", + "code generation", + "CRM integration", + "JavaScript", + "Python", + "lead management", + "workflow automation" + ], + "examples": [ + { + "inputJson": "{\"crmPlatform\":\"Salesforce\",\"automationType\":\"leadCapture\",\"programmingLanguage\":\"JavaScript\",\"includeComments\":true}", + "description": "Generate JavaScript code for capturing leads in Salesforce with comments." + }, + { + "inputJson": "{\"crmPlatform\":\"HubSpot\",\"automationType\":\"emailFollowUp\",\"programmingLanguage\":\"Python\",\"includeComments\":false}", + "description": "Generate Python code to automate follow-up emails in HubSpot without comments." + }, + { + "inputJson": "{\"crmPlatform\":\"Salesforce\",\"automationType\":\"pipelineUpdate\",\"integrationEndpoints\":{\"apiUrl\":\"https://api.salesforce.com\",\"authToken\":\"abcdef12345\"},\"programmingLanguage\":\"JavaScript\",\"includeComments\":true}", + "description": "Generate JavaScript code to update sales pipeline stages in Salesforce using provided API endpoints." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "sales-automation.createCode", + "description": "Generates customized code snippets for sales automation tasks based on specified requirements such as CRM integration, lead enrichment, email outreach, or pipeline management. Accepts parameters defining the sales platform, programming language, and automation function to output ready-to-use code for seamless embedding in sales workflows.", + "category": "sales-automation", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "Target sales or CRM platform for integration (e.g., Salesforce, HubSpot).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the generated code snippet (e.g., Python, JavaScript).", + "required": true, + "defaultValue": "" + }, + { + "name": "functionType", + "type": "string", + "description": "Sales automation function the code should perform (e.g., lead enrichment, email automation, pipeline update).", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "Type of authentication used by the platform's API (e.g., OAuth2, API key).", + "required": false, + "defaultValue": "OAuth2" + }, + { + "name": "customParameters", + "type": "object", + "description": "Additional parameters specific to the function type to customize the generated code behavior.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code for clarity.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and metadata including language and function type." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to provide developers or sales engineers with ready-to-use code snippets for automating sales tasks such as CRM updates, lead enrichment, or outreach automation tailored to specific platforms and languages. It accelerates development by producing precise, functional automation code templates.", + "limitations": "The tool cannot execute the generated code or test its runtime correctness in the target environment. It may not support every sales platform or function due to API complexity or updates.", + "examples": [ + "Generate JavaScript code to automate lead enrichment on HubSpot using API key authentication.", + "Create Python code to update sales pipeline stages in Salesforce with OAuth2 authentication.", + "Produce JavaScript snippet for automating email follow-ups in a custom CRM platform." + ] + }, + "tags": [ + "sales", + "automation", + "code-generation", + "crm", + "integration", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"HubSpot\",\"language\":\"JavaScript\",\"functionType\":\"lead enrichment\",\"authenticationMethod\":\"API key\",\"customParameters\":{\"enrichmentService\":\"Clearbit\"},\"includeComments\":true}", + "description": "Generate a JavaScript code snippet that integrates HubSpot CRM with Clearbit for lead enrichment using API key authentication, including comments." + }, + { + "inputJson": "{\"platform\":\"Salesforce\",\"language\":\"Python\",\"functionType\":\"pipeline update\",\"authenticationMethod\":\"OAuth2\",\"customParameters\":{\"targetStage\":\"Negotiation\"},\"includeComments\":false}", + "description": "Generate Python code to update the sales pipeline stage to 'Negotiation' in Salesforce using OAuth2 without comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "sales-automation.createDocument", + "description": "Generates a customizable sales document such as proposals, quotes, or contracts based on input customer data, product details, and pricing. Accepts structured inputs, applies templates and formatting, and outputs a ready-to-send document in PDF or DOCX format.", + "category": "sales-automation", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of sales document to create (e.g., proposal, quote, contract).", + "required": true, + "defaultValue": "" + }, + { + "name": "customerInfo", + "type": "object", + "description": "Customer details including name, address, and contact information.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDetails", + "type": "array", + "description": "List of products or services with quantities, descriptions, and individual prices.", + "required": true, + "defaultValue": "" + }, + { + "name": "pricing", + "type": "object", + "description": "Pricing details such as discounts, taxes, and totals.", + "required": false, + "defaultValue": "" + }, + { + "name": "termsAndConditions", + "type": "string", + "description": "Optional terms and conditions text to include in the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the document: 'PDF' or 'DOCX'.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "language", + "type": "string", + "description": "Language code for document text localization.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a URL or base64 string of the generated document, document metadata, and a success status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce formal sales documents tailored to specific clients and product sets, automating the document creation process to expedite sales workflows and maintain consistent branding and terms.", + "limitations": "Does not support very complex legal document customization or negotiation features; cannot ensure legal validity of terms; limited to provided templates and language support.", + "examples": [ + "Create a new sales proposal for customer XYZ including product list and pricing details.", + "Generate a quote document in PDF format for a given list of products and discount.", + "Produce a contract document in DOCX format with specified terms and customer information." + ] + }, + "tags": [ + "sales", + "automation", + "document-generation", + "proposal", + "quote", + "contract" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"proposal\",\"customerInfo\":{\"name\":\"Acme Inc.\",\"address\":\"123 Main St\",\"contact\":\"jane.doe@acme.com\"},\"productDetails\":[{\"name\":\"Product A\",\"quantity\":10,\"price\":99.99},{\"name\":\"Service B\",\"quantity\":1,\"price\":500}],\"pricing\":{\"discount\":0.1,\"tax\":0.07},\"termsAndConditions\":\"Payment due in 30 days.\",\"outputFormat\":\"PDF\",\"language\":\"en\"}", + "description": "Generate a sales proposal PDF document with discounts and terms for Acme Inc." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "sales-automation.createEmail", + "description": "This tool generates a sales outreach email based on input parameters such as recipient details, company info, product/service description, and desired tone and call-to-action. It processes these inputs to craft a personalized, professional email message suitable for initiating or progressing sales conversations and outputs the composed email content as a formatted string.", + "category": "sales-automation", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "The full name of the email recipient for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientCompany", + "type": "string", + "description": "Name of the recipient's company to tailor content to their business context.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "The name of the email sender, used to sign off the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "productOrService", + "type": "string", + "description": "Brief description of the product or service being offered to highlight in the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailTone", + "type": "string", + "description": "Tone of the email such as formal, friendly, or persuasive to match the target audience.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "callToAction", + "type": "string", + "description": "The main action the sender wants the recipient to take (e.g., schedule a demo, reply to this email).", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Optional extra information to include in the email for customization.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email content as a formatted string ready for sending." + }, + "aiAgent": { + "useCase": "Use this tool when automating the creation of personalized sales outreach emails to leads or prospects. It helps generate tailored messages incorporating recipient and product details along with a clear call to action, enabling efficient scalable sales communication without manual drafting.", + "limitations": "This tool cannot send emails directly or manage reply tracking; it only composes the initial email content based on inputs provided.", + "examples": [ + "Create a personalized email introducing our new SaaS product to a prospect named Alice from TechCorp, with a friendly tone and inviting her to schedule a demo.", + "Generate a formal outreach email to Bob at FinServe about our financial analytics service, asking him to reply for more information.", + "Draft a persuasive email to Carlos at RetailWorks emphasizing our CRM solution and requesting a meeting." + ] + }, + "tags": [ + "sales", + "email", + "automation", + "outreach", + "lead generation", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Alice Johnson\",\"recipientCompany\":\"TechCorp\",\"senderName\":\"Jane Smith\",\"productOrService\":\"cloud-based project management software\",\"emailTone\":\"friendly\",\"callToAction\":\"schedule a demo\",\"additionalNotes\":\"Highlight our 30-day free trial.\"}", + "description": "Generate a friendly sales email to Alice at TechCorp introducing the product and inviting her to schedule a demo." + }, + { + "inputJson": "{\"recipientName\":\"Bob Williams\",\"recipientCompany\":\"FinServe\",\"senderName\":\"Mark Lee\",\"productOrService\":\"financial analytics platform\",\"emailTone\":\"formal\",\"callToAction\":\"reply to this email for more details\",\"additionalNotes\":\"Mention recent industry awards.\"}", + "description": "Create a formal outreach email to Bob at FinServe presenting the service and prompting him to reply." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "content-creation.buildCode", + "description": "Generates source code based on provided specifications such as programming language, functionality description, and optional code style preferences. The tool processes these inputs to output syntactically valid and functional code snippets or files suitable for integration into software projects.", + "category": "content-creation", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Programming language for the generated code (e.g., Python, JavaScript, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "functionalityDescription", + "type": "string", + "description": "Detailed description of the desired functionality or feature that the generated code should implement.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Optional code style or conventions to follow (e.g., Google Style, PEP8).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the output: 'snippet' for a code snippet or 'file' for a complete file content.", + "required": false, + "defaultValue": "snippet" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string, the programming language, and any warnings or notes about the generated code." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create executable code that meets specific functional requirements quickly, such as prototyping, scaffolding features, or generating boilerplate code in a particular programming language. It helps accelerate development by automatically producing syntactically correct and stylistically consistent source code based on textual descriptions.", + "limitations": "The tool cannot guarantee that the generated code is optimized, bug-free, or secure. It also cannot create highly complex or domain-specific codes without detailed input. Manual review and testing of the output code are necessary.", + "examples": [ + "Generate Python code to implement a function that sorts a list of integers in ascending order.", + "Build JavaScript code that creates a responsive navigation bar for a website.", + "Produce Java code with Google Style that defines a class to manage a bank account with deposit and withdrawal methods." + ] + }, + "tags": [ + "code-generation", + "programming", + "automation", + "software-development", + "code-synthesis" + ], + "examples": [ + { + "inputJson": "{\"language\":\"Python\",\"functionalityDescription\":\"A function that takes a list of integers and returns it sorted in ascending order.\",\"codeStyle\":\"PEP8\",\"includeComments\":true,\"outputFormat\":\"snippet\"}", + "description": "Generate a Python sorting function with comments following PEP8 style." + }, + { + "inputJson": "{\"language\":\"JavaScript\",\"functionalityDescription\":\"A responsive navigation bar HTML/JS code that toggles menu visibility on small screens.\",\"includeComments\":false,\"outputFormat\":\"file\"}", + "description": "Create a complete JavaScript file with responsive navigation bar functionality." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "documentation-tools.analyzeAccount", + "description": "Analyzes a business account's documentation to identify completeness, inconsistencies, missing information, and compliance with predefined standards. Accepts account-related documents and metadata, performs natural language processing and validation checks, and outputs a detailed report highlighting issues and suggestions for improvement.", + "category": "documentation-tools", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the business account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTexts", + "type": "array", + "description": "List of strings representing texts of documents related to the account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input documents for proper linguistic processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "complianceStandard", + "type": "string", + "description": "The name of the compliance standard or documentation guideline to validate against (e.g., GDPR, ISO9001).", + "required": false, + "defaultValue": "general" + }, + { + "name": "includeSuggestions", + "type": "boolean", + "description": "Whether to include suggestions for improving documentation completeness and quality.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxReportItems", + "type": "number", + "description": "Maximum number of issues or highlights to include in the analysis report.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "Structured report object containing detected issues, completeness metrics, and improvement suggestions if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when needing a thorough assessment of an account's documentation quality, completeness, and compliance before processes like audits, onboarding, or account reviews. It helps identify missing or inconsistent information in account documents and provides actionable insights to improve documentation standards.", + "limitations": "Cannot access external account data beyond provided documents; effectiveness depends on the quality and scope of provided texts and defined compliance standards. Does not perform legal compliance validation or deep domain-specific audit beyond textual analysis.", + "examples": [ + "Analyze the document set of a new customer account to ensure all required documents are present and comply with internal documentation standards.", + "Review a partner account's documentation to find inconsistencies and missing information before contract renewal.", + "Generate a report on documentation completeness for multiple accounts by providing their documents and identifiers." + ] + }, + "tags": [ + "documentation", + "analysis", + "account", + "compliance", + "reporting", + "quality-check" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"ACC12345\",\"documentTexts\":[\"Customer agreement signed on 2023-01-15.\",\"Privacy policy acknowledged by account holder.\"],\"language\":\"en\",\"complianceStandard\":\"GDPR\",\"includeSuggestions\":true,\"maxReportItems\":10}", + "description": "Analyze GDPR compliance and completeness of an account's provided legal and privacy documents." + }, + { + "inputJson": "{\"accountId\":\"BIZ9988\",\"documentTexts\":[\"Invoice records for 2023 attached.\",\"Missing signed contract document.\"],\"language\":\"en\",\"complianceStandard\":\"general\",\"includeSuggestions\":true,\"maxReportItems\":5}", + "description": "Check an account's document set for completeness and highlight missing contractual paperwork." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "documentation-tools.analyzeDataset", + "description": "This tool accepts a structured dataset input, typically in JSON or CSV format, analyzing its contents to produce an extended documentation report. It identifies data structure, key fields, data types, completeness, and patterns, offering insights useful for creating or updating technical documentation about the dataset's content and usage.", + "category": "documentation-tools", + "parameters": [ + { + "name": "dataset", + "type": "string", + "description": "Dataset content as JSON or CSV string to analyze. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the dataset input: 'json' or 'csv'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeStatistics", + "type": "boolean", + "description": "Whether to compute and include statistical summaries such as mean, median, or frequency counts in the output. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSampleSize", + "type": "number", + "description": "Maximum number of data rows or entries to process for analysis to limit computation. Default is 1000.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "language", + "type": "string", + "description": "Language for the generated documentation summary. Defaults to English ('en').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing an analyzed documentation report with data schema, field descriptions, completeness analysis, and optionally statistical summaries." + }, + "aiAgent": { + "useCase": "Use this tool to analyze raw datasets to generate or update documentation describing data fields, structures, and insights. It helps AI agents create user-friendly documentation by understanding the dataset's characteristics without manual data inspection.", + "limitations": "This tool does not clean or modify data, nor perform deep semantic interpretation beyond structural and statistical analysis. It requires the dataset to be in JSON or CSV format and may not handle extremely large datasets without parameter adjustments.", + "examples": [ + "Analyze a JSON dataset of user events to generate a data dictionary section for documentation.", + "Interpret a CSV log file dataset to present completeness and key field statistics for technical docs.", + "Generate a summary report of dataset schema and statistics to assist authors in writing dataset guides." + ] + }, + "tags": [ + "documentation", + "dataset", + "analysis", + "report", + "statistics", + "data-schema", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"dataset\":\"[{\\\"id\\\":1,\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30},{\\\"id\\\":2,\\\"name\\\":\\\"Bob\\\",\\\"age\\\":25}]\",\"format\":\"json\",\"includeStatistics\":true,\"maxSampleSize\":100}", + "description": "Analyze a small JSON array of user records including statistics." + }, + { + "inputJson": "{\"dataset\":\"id,name,score\\n1,Alice,85\\n2,Bob,90\\n3,Charlie,78\",\"format\":\"csv\",\"includeStatistics\":false,\"maxSampleSize\":50}", + "description": "Analyze a CSV dataset without statistics to get field descriptions and completeness." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "documentation-tools.analyzeJSON", + "description": "This tool accepts JSON data representing documentation content or metadata, performs analysis to extract insights such as key entities, structure consistency, missing fields, and overview statistics, and produces a detailed report summarizing the quality and characteristics of the JSON documentation data.", + "category": "documentation-tools", + "parameters": [ + { + "name": "inputJson", + "type": "string", + "description": "A string containing the JSON data representing the documentation to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkConsistency", + "type": "boolean", + "description": "Whether to check for structural consistency and schema adherence within the JSON data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "highlightMissingFields", + "type": "boolean", + "description": "Whether to identify and list fields that are expected but missing in the JSON documentation objects.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summarizeStats", + "type": "boolean", + "description": "Whether to include statistics such as counts of entities, field occurrences, and summary metrics in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customSchema", + "type": "object", + "description": "Optional JSON schema object to validate the input JSON against for custom consistency checks.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summary statistics, consistency check results, identified missing fields, and insights extracted from the JSON documentation data." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured documentation data in JSON format and need to validate its completeness, consistency, and extract key structural insights for improving or maintaining the documentation. It helps identify missing information, structural anomalies, and provides an overall summary useful for automated documentation workflows.", + "limitations": "This tool does not generate or edit documentation content, nor does it infer semantic meaning beyond structural analysis. It requires valid JSON input and a reasonable schema for accurate consistency checks. It cannot analyze unstructured narrative or natural language content within JSON.", + "examples": [ + "Analyze JSON documentation data to detect missing standard fields and summarize entity counts.", + "Validate that JSON documentation entries conform to a provided schema and report inconsistencies.", + "Produce a report highlighting structural anomalies and overall statistics of a JSON API documentation file." + ] + }, + "tags": [ + "analysis", + "documentation", + "JSON", + "consistency", + "validation", + "quality-assessment", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"title\":\"API Doc\",\"version\":\"1.0\",\"endpoints\":[{\"path\":\"/users\",\"method\":\"GET\"},{\"path\":\"/users/{id}\",\"method\":\"GET\"}]}", + "description": "Analyze a simple JSON object representing API documentation to check for completeness and summarize endpoint counts." + }, + { + "inputJson": "{\"docs\":[{\"id\":\"intro\",\"content\":\"Introduction text\"},{\"id\":\"usage\",\"content\":\"Usage information\"}]}", + "description": "Check structured documentation JSON for missing required fields and highlight coverage of sections." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "documentation-tools.uploadFile", + "description": "Uploads a file to a specified documentation repository or storage location, accepting file content along with metadata such as file name and description. It processes the input by validating file type and size, then stores the file securely and returns confirmation with a unique file identifier and access URL.", + "category": "documentation-tools", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the file to upload, including extension, required to identify and store the file correctly.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "The base64-encoded content of the file to be uploaded, required to process and save the file data.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "An optional textual description of the file content or purpose to help document the file.", + "required": false, + "defaultValue": "" + }, + { + "name": "repositoryId", + "type": "string", + "description": "Identifier of the documentation repository or storage target where the file should be uploaded, required for directing storage.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of strings tagging the file for easier classification and search within documentation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite the file if a file with the same name already exists, default is false to prevent accidental overwrites.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the upload, including a unique file ID, accessible URL, and any warnings or errors." + }, + "aiAgent": { + "useCase": "When needing to programmatically add or update files such as diagrams, manuals, or images to a documentation repository to keep documentation up-to-date or to automate content ingestion workflows. This tool helps automate file management in documentation platforms.", + "limitations": "Does not handle file format conversions or content validation beyond basic file type and size checks; does not provide file editing capabilities; requires base64-encoded content input.", + "examples": [ + "Upload a PNG diagram to the project docs repository with a description", + "Store a PDF guide file ensuring existing version is not overwritten", + "Add multiple tags to a new design document upload for indexing" + ] + }, + "tags": [ + "upload", + "file", + "documentation", + "repository", + "media", + "storage", + "automation" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"architecture_diagram.png\",\"fileContent\":\"iVBORw0KGgoAAAANS...\",\"description\":\"System architecture overview diagram\",\"repositoryId\":\"repo123\",\"tags\":[\"diagram\",\"architecture\"],\"overwriteExisting\":false}", + "description": "Upload a PNG architecture diagram to the documentation repository with tagging." + }, + { + "inputJson": "{\"fileName\":\"user_guide.pdf\",\"fileContent\":\"JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PC9UeXBlL...\",\"repositoryId\":\"repo123\",\"overwriteExisting\":true}", + "description": "Upload a PDF user guide and overwrite any existing file with same name." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "documentation-tools.downloadFile", + "description": "Downloads a file from a specified URL and saves it to a given local path or returns its binary content. Accepts a URL and optional headers or authentication tokens to access protected resources, and outputs a success confirmation with metadata or file contents.", + "category": "documentation-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The HTTP or HTTPS URL of the file to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "savePath", + "type": "string", + "description": "Local file system path where the downloaded file should be saved. If empty, the file content will be returned instead of saving.", + "required": false, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include with the download request, such as authorization tokens or custom headers.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeout", + "type": "number", + "description": "Maximum time in milliseconds to wait for the download before timing out.", + "required": false, + "defaultValue": "30000" + } + ], + "returns": { + "type": "object", + "description": "Contains download status (success/failure), message, file path if saved, content as base64 if not saved, and HTTP response metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve and store documentation files, images, or other media from the internet, particularly for internally hosted or protected documentation assets. It supports headers for authentication and can either save locally or provide content directly.", + "limitations": "Cannot handle downloads from non-HTTP(S) protocols, very large files beyond system memory limits, or interactive downloads requiring complex user input or captcha solving.", + "examples": [ + "Download a README file from a public GitHub URL and save it locally.", + "Download a protected PDF by including authorization headers and return its binary content without saving.", + "Download a documentation image file with a timeout of 10 seconds and save to specified location." + ] + }, + "tags": [ + "download", + "file", + "documentation", + "http", + "media", + "automation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/docs/user-guide.pdf\",\"savePath\":\"/tmp/user-guide.pdf\"}", + "description": "Download a PDF user guide from a public URL and save it locally." + }, + { + "inputJson": "{\"url\":\"https://internal.docs.company.com/secret.txt\",\"headers\":{\"Authorization\":\"Bearer abc123token\"}}", + "description": "Download a protected secret text file using an authorization header and return content as base64 without saving." + }, + { + "inputJson": "{\"url\":\"https://example.com/assets/logo.png\",\"savePath\":\"/tmp/logo.png\",\"timeout\":10000}", + "description": "Download an image file with a 10 second timeout and save it to the temporary folder." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "data-analytics.createReport", + "description": "Generates a comprehensive data analytics report based on provided datasets and user-defined configuration. Accepts input data as CSV or JSON, processes the data to compute statistics, trends, and visualizations, then outputs a formatted report in PDF or HTML format containing charts, tables, and narrative insights.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw data input as CSV string or JSON array of records to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data, either 'csv' or 'json'.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title assigned to the generated report.", + "required": false, + "defaultValue": "Data Analytics Report" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Flag indicating whether to include charts and graphs in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metricsToInclude", + "type": "array", + "description": "List of metrics (e.g., 'mean', 'median', 'trend') to compute and include in the report. If empty, defaults to basic descriptive statistics.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "groupByFields", + "type": "array", + "description": "Fields in the data to group by for segmented analysis and reporting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the generated report output, either 'pdf' or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of records to process from the input data, useful for large datasets. If 0, process all.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content as a binary blob or encoded string, and metadata including format and file name." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw data needing comprehensive analysis and visualization to create a structured report document suitable for presentations or further decision making. It is ideal for generating business intelligence summaries, research insights, or performance reports directly from datasets provided as CSV or JSON.", + "limitations": "Does not perform advanced machine learning predictions or complex statistical modeling beyond selected descriptive metrics and trends. Input data must be clean and well-formatted; large or unstructured data may require preprocessing outside this tool.", + "examples": [ + "Generate a sales performance report from monthly CSV sales data including revenue and units sold trends.", + "Create an HTML report analyzing customer demographics segmented by region from JSON data.", + "Produce a PDF report summarizing website analytics with default metrics and visualizations." + ] + }, + "tags": [ + "data analytics", + "report generation", + "visualization", + "csv", + "json", + "pdf", + "html", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"date,region,sales\\n2023-01-01,North,1000\\n2023-01-02,North,1100\\n2023-01-01,South,1500\",\"dataFormat\":\"csv\",\"reportTitle\":\"January Sales Report\",\"includeVisualizations\":true,\"metricsToInclude\":[\"mean\",\"trend\"],\"groupByFields\":[\"region\"],\"outputFormat\":\"pdf\",\"maxRecords\":0}", + "description": "Generate a PDF sales report grouped by region with mean sales and trend metrics, including visualizations." + }, + { + "inputJson": "{\"inputData\":[{\"customerId\":1,\"age\":30,\"region\":\"East\"},{\"customerId\":2,\"age\":22,\"region\":\"West\"}],\"dataFormat\":\"json\",\"reportTitle\":\"Customer Demographics\",\"includeVisualizations\":true,\"metricsToInclude\":[\"mean\",\"median\"],\"groupByFields\":[\"region\"],\"outputFormat\":\"html\",\"maxRecords\":0}", + "description": "Create an HTML report analyzing customer demographics by region with mean and median age metrics and visual charts." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "data-analytics.buildCode", + "description": "Generates executable code snippets for data analytics tasks based on user-defined requirements. Accepts parameters describing data sources, desired analyses, programming language, and output formats. Produces ready-to-use code for data loading, processing, analysis, and visualization tailored to specified inputs.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "URI or path of the data source to analyze (e.g., CSV file, database connection string).", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "List of analytics or statistical methods to apply (e.g., ['summaryStats', 'regression', 'clustering']).", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Target programming language for the generated code (e.g., 'Python', 'R').", + "required": true, + "defaultValue": "Python" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of analysis results (e.g., 'plot', 'table', 'report').", + "required": false, + "defaultValue": "plot" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "visualizationLibrary", + "type": "string", + "description": "Preferred visualization library to use if applicable (e.g., 'matplotlib', 'seaborn', 'ggplot2').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string and metadata such as programming language and libraries used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce runnable code snippets for standard data analysis workflows based on user specifications, enabling users to quickly prototype data insights in their preferred programming language.", + "limitations": "The tool generates code templates based on common analytics; it cannot guarantee correctness on highly custom or proprietary datasets, nor does it perform data validation or execute the code itself.", + "examples": [ + "Generate Python code to load a CSV and perform summary statistics and regression with matplotlib visuals.", + "Build R code using ggplot2 for clustering and output both plots and summary tables.", + "Create Python code with seaborn to analyze a database for correlations and produce a report table." + ] + }, + "tags": [ + "code-generation", + "data-analytics", + "automation", + "data-processing", + "visualization", + "python", + "R" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"/data/sales.csv\",\"analysisTypes\":[\"summaryStats\",\"regression\"],\"programmingLanguage\":\"Python\",\"outputFormat\":\"plot\",\"includeComments\":true,\"visualizationLibrary\":\"matplotlib\"}", + "description": "Generate Python code for summary statistics and regression analysis with matplotlib plots on sales data CSV." + }, + { + "inputJson": "{\"dataSource\":\"db_connection_string\",\"analysisTypes\":[\"clustering\"],\"programmingLanguage\":\"R\",\"outputFormat\":\"table\",\"includeComments\":false,\"visualizationLibrary\":\"ggplot2\"}", + "description": "Create R code performing clustering analysis on data from a database, outputting results as a table without code comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "data-analytics.sendEmail", + "description": "Sends an email containing data analytics insights or reports. Accepts parameters for recipient addresses, subject, body content, and optional attachments (e.g., charts or CSV reports). Processes the input to format the email appropriately and delivers it via configured SMTP or email service. Returns the status of the email sending operation including success state and message ID.", + "category": "data-analytics", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of email addresses to send the email to. At least one required.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Plain text or HTML content of the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments, each with filename and base64 encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of cc email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of bcc email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fromAddress", + "type": "string", + "description": "Optional sender email address, defaults to system configured email if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Set to true if the email body is HTML formatted, false if plain text.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the email sending outcome including success boolean, messageId string if successful, and error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send data analytics reports, summaries, or insights via email, integrating dynamic content and attachments. Ideal for automated reporting or alerting based on data analysis results.", + "limitations": "This tool does not generate the analytics content itself; it requires preformatted email content. It does not support scheduling emails for future delivery or handle advanced email templates beyond simple HTML or text.", + "examples": [ + "Send a weekly sales report with attached CSV to the sales manager.", + "Email daily website traffic summary with charts to the marketing team.", + "Send alert emails when data metrics exceed predefined thresholds." + ] + }, + "tags": [ + "email", + "data-analytics", + "reporting", + "automation", + "communication", + "notifications" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"manager@example.com\"],\"subject\":\"Weekly Sales Report\",\"body\":\"Please find the weekly sales report attached.\",\"attachments\":[{\"filename\":\"sales_report.csv\",\"content\":\"YmFzZTY0ZW5jb2RlZGNvbnRlbnQ=\"}],\"isHtml\":false}", + "description": "Send a weekly sales CSV report as an email attachment to the sales manager." + }, + { + "inputJson": "{\"recipients\":[\"team@marketing.com\"],\"subject\":\"Daily Website Traffic Summary\",\"body\":\"

Traffic Summary

Today we had 10,000 visitors.

\",\"isHtml\":true}", + "description": "Send an HTML formatted daily website traffic summary to the marketing team." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "data-analytics.generateReport", + "description": "Generates a comprehensive analytical report from input datasets. Accepts raw data in CSV or JSON formats along with report parameters such as metrics, filters, and visualization preferences. Processes data to compute key performance indicators, summary statistics, and visual charts, outputting a structured multi-section report in PDF or HTML format.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "string", + "description": "The raw data input as a CSV string or JSON array to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "metrics", + "type": "array", + "description": "List of key metrics to calculate (e.g., revenue, conversionRate).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "filters", + "type": "object", + "description": "Filter conditions to apply to the dataset before analysis.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "visualizations", + "type": "array", + "description": "Types of visual charts to generate (e.g., barChart, lineGraph).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Output report format, either 'pdf' or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "title", + "type": "string", + "description": "Title of the report.", + "required": false, + "defaultValue": "Data Analytics Report" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report content as a base64 encoded string and metadata such as page count and format." + }, + "aiAgent": { + "useCase": "Use this tool when a comprehensive data-driven report is needed from raw datasets to summarize key metrics and trends with visualizations. For example, generating monthly sales performance or customer behavior summaries. It automates data aggregation, visualization, and formatted reporting in a single step.", + "limitations": "Cannot perform data cleansing or error correction on corrupted datasets. It requires properly formatted input data and predefined metric and visualization specifications. Complex custom statistics or deep predictive modeling are outside its scope.", + "examples": [ + "Generate a PDF report showing revenue and profit trends with bar and line charts from monthly sales CSV data.", + "Produce an HTML report summarizing user engagement filtered by region with pie charts from JSON input.", + "Create a PDF report titled 'Q1 Analytics' including conversion rate and bounce rate metrics from a filtered JSON dataset." + ] + }, + "tags": [ + "data-analytics", + "reporting", + "data-visualization", + "summary", + "metrics", + "pdf", + "html" + ], + "examples": [ + { + "inputJson": "{\"data\":\"date,revenue,profit\\n2024-01-01,1000,200\\n2024-02-01,1500,300\",\"dataFormat\":\"csv\",\"metrics\":[\"revenue\",\"profit\"],\"visualizations\":[\"barChart\",\"lineGraph\"],\"reportFormat\":\"pdf\",\"title\":\"Monthly Sales Report\"}", + "description": "Generate a PDF report with revenue and profit metrics and visual charts from monthly CSV sales data." + }, + { + "inputJson": "{\"data\":\"[{\\\"userId\\\":1,\\\"engagement\\\":87,\\\"region\\\":\\\"EMEA\\\"},{\\\"userId\\\":2,\\\"engagement\\\":65,\\\"region\\\":\\\"APAC\\\"}]\",\"dataFormat\":\"json\",\"metrics\":[\"engagement\"],\"filters\":{\"region\":\"EMEA\"},\"visualizations\":[\"pieChart\"],\"reportFormat\":\"html\"}", + "description": "Produce an HTML report summarizing user engagement filtered by EMEA region with pie chart, from JSON data." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "data-transformation.analyzeDocument", + "description": "Analyzes a text document provided in various formats (plain text, JSON, or PDF text extraction) to extract key insights such as word frequency, language detection, sentiment analysis, and named entity recognition. Returns a structured summary report highlighting these aspects for further data-driven decision making.", + "category": "data-transformation", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The textual content of the document to analyze; can be plain text or extracted text from other formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "The format of the incoming document content. Supported values: 'plain', 'json', 'pdf'.", + "required": true, + "defaultValue": "plain" + }, + { + "name": "performSentimentAnalysis", + "type": "boolean", + "description": "Flag to indicate whether to perform sentiment analysis on the document content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "languageHint", + "type": "string", + "description": "Optional hint to specify the language of the document for improved language detection accuracy (e.g., 'en', 'fr').", + "required": false, + "defaultValue": "" + }, + { + "name": "extractEntities", + "type": "boolean", + "description": "Flag to enable extraction of named entities such as people, organizations, and locations from the document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive analysis report including detected language, overall sentiment score, top named entities, and word frequency distribution." + }, + "aiAgent": { + "useCase": "This tool should be employed when an AI agent needs to analyze the textual content of documents for insights such as sentiment, key entities, or language characteristics to inform further processing or decision-making. It's particularly useful when receiving documents in multiple formats requiring unified text-based analysis.", + "limitations": "Does not support analysis of scanned document images directly (requires OCR preprocessing). Analysis accuracy depends on quality and clarity of input text; cannot interpret non-textual information such as images or embedded media.", + "examples": [ + "Analyze the sentiment and entities in a customer feedback document.", + "Detect the primary language and common keywords in a policy document provided as JSON.", + "Extract key named entities and sentiment from meeting notes stored as plain text." + ] + }, + "tags": [ + "data-transformation", + "document-analysis", + "sentiment-analysis", + "named-entity-recognition", + "language-detection", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"The new product launch was a resounding success, with positive feedback from users worldwide.\",\"documentFormat\":\"plain\",\"performSentimentAnalysis\":true,\"extractEntities\":true}", + "description": "Analyze a simple product launch announcement with sentiment and entities extraction." + }, + { + "inputJson": "{\"documentContent\":\"{\\\"title\\\": \\\"Annual Report\\\", \\\"body\\\": \\\"The fiscal year showed growth in all sectors.\\\"}\",\"documentFormat\":\"json\",\"performSentimentAnalysis\":false,\"extractEntities\":true}", + "description": "Analyze JSON formatted document focusing on entity extraction without sentiment analysis." + }, + { + "inputJson": "{\"documentContent\":\"Extracted PDF text from environmental impact study shows concerns raised by various stakeholders.\",\"documentFormat\":\"pdf\",\"performSentimentAnalysis\":true,\"languageHint\":\"en\"}", + "description": "Analyze PDF extracted text for sentiment and language detection with English language hint." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "data-transformation.generateCode", + "description": "Generates source code snippets or modules from structured input data definitions or specifications. The tool accepts input as data schemas, API definitions, or configuration objects, processes these to create corresponding code in supported programming languages, and outputs the generated code as a string or file content for integration or further development.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputSpec", + "type": "object", + "description": "The structured data definition or API specification to generate code from, e.g., JSON Schema or OpenAPI format.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The programming language to generate code in, such as 'typescript', 'python', or 'java'.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeType", + "type": "string", + "description": "The type of code to generate, e.g., 'dataModel', 'apiClient', or 'validationFunctions'.", + "required": false, + "defaultValue": "dataModel" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include descriptive comments and documentation in the generated code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output code, e.g., single file as string, multiple files as object map.", + "required": false, + "defaultValue": "string" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code. If outputFormat is 'string', returns code as a single string. If 'object', returns a map of filenames to code strings." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the creation of source code from structured specifications to save time and ensure consistency across projects. Ideal for generating data models, API clients, or validators from JSON schemas or API specs, especially when targeting multiple languages.", + "limitations": "Cannot perfectly infer complex business logic or non-standard behavior not described in the inputSpec. Quality depends on the completeness and correctness of input specifications. May not support all languages or advanced code architecture patterns.", + "examples": [ + "Generate data model classes in TypeScript from a JSON Schema describing user profiles.", + "Create Python API client code from an OpenAPI specification to facilitate backend communication.", + "Produce validation functions in JavaScript based on input configuration for runtime type checking." + ] + }, + "tags": [ + "code generation", + "data schema", + "API client", + "model generation", + "automation", + "programming" + ], + "examples": [ + { + "inputJson": "{\"inputSpec\":{\"title\":\"User\",\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"integer\"}}},\"targetLanguage\":\"typescript\",\"codeType\":\"dataModel\",\"includeComments\":true,\"outputFormat\":\"string\"}", + "description": "Generate TypeScript data model class for a simple User schema." + }, + { + "inputJson": "{\"inputSpec\":{\"openapi\":\"3.0.0\",\"info\":{\"title\":\"Pet API\",\"version\":\"1.0.0\"},\"paths\":{\"/pets\":{\"get\":{\"responses\":{\"200\":{\"description\":\"A list of pets.\"}}}}}},\"targetLanguage\":\"python\",\"codeType\":\"apiClient\",\"includeComments\":false,\"outputFormat\":\"string\"}", + "description": "Generate Python API client code from a basic OpenAPI spec." + }, + { + "inputJson": "{\"inputSpec\":{\"type\":\"object\",\"properties\":{\"email\":{\"type\":\"string\",\"format\":\"email\"},\"password\":{\"type\":\"string\",\"minLength\":8}}},\"targetLanguage\":\"javascript\",\"codeType\":\"validationFunctions\",\"includeComments\":true,\"outputFormat\":\"object\"}", + "description": "Generate JavaScript validation functions with comments for user credential input." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "data-transformation.generateDocument", + "description": "Generates a formatted document (PDF, DOCX, or HTML) from structured input data according to a specified template. Accepts JSON data and a template type, applies the data to generate a styled document output file or content.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured data object to populate the document template, e.g. JSON with fields and values.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateType", + "type": "string", + "description": "The document format to generate: 'pdf', 'docx', or 'html'.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Optional title to include in the generated document's metadata or header.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents in the document (only supported for PDF and DOCX).", + "required": false, + "defaultValue": "false" + }, + { + "name": "styles", + "type": "object", + "description": "Optional object defining style overrides, such as font size, colors, and margins.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated document content as a Base64 encoded string and metadata such as the filename and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when wanting to convert structured JSON data into a formatted, printable or shareable document file in common formats (PDF, DOCX, HTML). Ideal for generating reports, invoices, summaries, or any templated documents automatically from data inputs.", + "limitations": "This tool cannot process unstructured natural language to generate documents. It requires structured data input and predefined template types. Complex layouts or highly custom template designs are out of scope. Only basic styling options are supported.", + "examples": [ + "Generate a PDF report from sales data JSON.", + "Create an invoice document in DOCX format using order data.", + "Produce an HTML summary page from a JSON user profile with styling options." + ] + }, + "tags": [ + "data-transformation", + "document-generation", + "pdf", + "docx", + "html", + "templating", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"customerName\":\"John Doe\",\"invoiceNumber\":\"12345\",\"items\":[{\"description\":\"Widget A\",\"quantity\":2,\"price\":10.0},{\"description\":\"Widget B\",\"quantity\":1,\"price\":20.0}],\"total\":40.0},\"templateType\":\"pdf\",\"documentTitle\":\"Invoice 12345\",\"includeTableOfContents\":false,\"styles\":{\"fontSize\":12,\"fontFamily\":\"Arial\"}}", + "description": "Generate a PDF invoice document from structured order data with basic styling." + }, + { + "inputJson": "{\"inputData\":{\"title\":\"Monthly Sales Report\",\"date\":\"2024-05-31\",\"summary\":\"Sales increased by 10% vs last month.\",\"details\":[{\"region\":\"North\",\"sales\":10000},{\"region\":\"South\",\"sales\":12000}]},\"templateType\":\"docx\",\"documentTitle\":\"Sales Report May 2024\",\"includeTableOfContents\":true}", + "description": "Create a DOCX sales report including a table of contents from report data." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "data-transformation.createFile", + "description": "Creates a file from given data content in specified format and encoding. Accepts input data as a string or binary, supports multiple file formats (e.g., txt, json, csv, xml) and encodings (e.g., utf-8, base64). Outputs a file object containing metadata and binary content ready for storage or download.", + "category": "data-transformation", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The desired name of the output file including extension (e.g., report.json).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "The file format/extension to use (e.g., txt, json, csv, xml). Determines file type and encoding rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The raw content to include in the file. Format should match the specified fileFormat.", + "required": true, + "defaultValue": "" + }, + { + "name": "encoding", + "type": "string", + "description": "Character encoding to use for the file content (e.g., utf-8, base64).", + "required": false, + "defaultValue": "utf-8" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata to embed or associate with the file (e.g., author, creationDate).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created file, including its name, format, encoding, metadata, and the binary content (as base64 string)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate and package content into a file of a specific format and encoding for saving, transferring, or user download. It helps convert raw data strings into standardized file objects with metadata for further processing or storage.", + "limitations": "This tool does not perform content validation or complex format conversions; the input content must already be correctly formatted for the target file format. It also does not handle file system interactions or external storage uploading.", + "examples": [ + "Generate a JSON file from a stringified JSON object for export.", + "Create a CSV file from comma-separated string data for reporting.", + "Produce a UTF-8 encoded plain text file containing log information for archival." + ] + }, + "tags": [ + "data-transformation", + "file-creation", + "formatting", + "encoding", + "export", + "file-generation" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"report.json\",\"fileFormat\":\"json\",\"content\":\"{\\\"name\\\":\\\"Test\\\",\\\"age\\\":30}\",\"encoding\":\"utf-8\",\"metadata\":{\"author\":\"GPT\"}}", + "description": "Create a JSON file named report.json from a JSON string with UTF-8 encoding and custom author metadata." + }, + { + "inputJson": "{\"fileName\":\"data.csv\",\"fileFormat\":\"csv\",\"content\":\"name,age\\nAlice,28\\nBob,35\",\"encoding\":\"utf-8\"}", + "description": "Create a UTF-8 encoded CSV file with tabular data." + }, + { + "inputJson": "{\"fileName\":\"log.txt\",\"fileFormat\":\"txt\",\"content\":\"Log entry 1\\nLog entry 2\",\"encoding\":\"utf-8\"}", + "description": "Create a plain text log file with multiple entries." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "data-validation.analyzeDocument", + "description": "Analyzes documents provided in text or file format to evaluate their structural integrity, content completeness, and consistency against defined validation rules. Accepts various document types (e.g., PDF, DOCX, TXT) and returns a detailed report indicating detected validation issues, metadata extraction, and quality metrics to assist in quality assurance processes.", + "category": "data-validation", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The raw textual content of the document to analyze. Required if documentFile is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentFile", + "type": "object", + "description": "Optional binary file input representing the document to analyze; supports PDF, DOCX, TXT formats. Used if documentContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of the document: e.g., pdf, docx, txt. Helps guide parsing and validation logic.", + "required": true, + "defaultValue": "txt" + }, + { + "name": "validationRules", + "type": "object", + "description": "Custom rules for validation such as mandatory sections, prohibited phrases, or formatting constraints.", + "required": false, + "defaultValue": "" + }, + { + "name": "extractMetadata", + "type": "boolean", + "description": "When true, the tool attempts to extract metadata like author, creation date, and title from the document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing validation results, including issue counts, detailed error messages for each detected problem, extracted metadata (if requested), and summary quality metrics." + }, + "aiAgent": { + "useCase": "This tool is useful for agents tasked with verifying document quality before processing or storage, ensuring documents meet predefined standards and are free from structural or content errors. It is particularly helpful for validating contracts, reports, or submissions where compliance is critical.", + "limitations": "The tool cannot execute complex language understanding beyond string and structure checks, nor can it interpret visual elements like images embedded in documents or handwritten annotations.", + "examples": [ + "Analyze a contract PDF for missing mandatory clauses specified in validation rules.", + "Check a DOCX report document for formatting compliance and extract author metadata.", + "Validate plain text submission against a prohibited phrase list to detect rule violations." + ] + }, + "tags": [ + "validation", + "document", + "quality-assurance", + "compliance", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"This is a sample report. It lacks the executive summary section.\",\"documentType\":\"txt\",\"validationRules\":{\"mandatorySections\":[\"Executive Summary\",\"Conclusion\"]},\"extractMetadata\":false}", + "description": "Analyzing a text report to check for presence of mandatory sections." + }, + { + "inputJson": "{\"documentFile\":{\"fileName\":\"contract.pdf\",\"data\":\"BASE64_ENCODED_PDF_CONTENT\"},\"documentType\":\"pdf\",\"validationRules\":{\"prohibitedPhrases\":[\"unauthorized\",\"void\"]},\"extractMetadata\":true}", + "description": "Validating a PDF contract for prohibited phrases and extracting metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "data-validation.generateDocument", + "description": "Generates a validation report document based on input data and defined validation rules. Accepts raw data (JSON or CSV), a set of validation rules, and output format preference. Processes the data to check for quality, integrity issues, and compliance with rules, then produces a detailed report document summarizing findings in the specified format.", + "category": "data-validation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "The raw input data as a JSON string or CSV text to be validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "object", + "description": "An object defining validation rules such as required fields, patterns, ranges, and data types.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format for the generated document report, e.g., 'pdf', 'html', or 'txt'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section in the report document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code to format messages and dates in the report (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report document as a base64 encoded string and the mime type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to validate data sets against specific rules and produce a detailed, user-friendly document report summarizing validation results for auditing, compliance, or quality assurance purposes. It is especially useful for generating standardized reports in multiple formats from data streams or stored datasets.", + "limitations": "This tool cannot automatically correct data errors; it only reports validation issues. It also does not support extremely large datasets beyond memory constraints or complex nested rule logic requiring custom scripting.", + "examples": [ + "Generate a PDF report validating user registration data against required fields and email format.", + "Produce an HTML report showing data quality checks for financial transaction records with range validations.", + "Create a plain text summary document validating CSV customer data for missing fields and unique ID constraints." + ] + }, + "tags": [ + "data-validation", + "document-generation", + "reporting", + "data-quality", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"name\\\":\\\"John Doe\\\",\\\"email\\\":\\\"john@example.com\\\"},{\\\"name\\\":\\\"\\\",\\\"email\\\":\\\"invalid-email\\\"}]\",\"validationRules\":{\"requiredFields\":[\"name\",\"email\"],\"fieldPatterns\":{\"email\":\"^\\\\S+@\\\\S+\\\\.\\\\S+$\"}},\"outputFormat\":\"pdf\",\"includeSummary\":true,\"locale\":\"en-US\"}", + "description": "Generate a PDF report that validates an array of user data objects ensuring 'name' and a valid 'email' exist, including a summary." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "data-validation.createCode", + "description": "Generates custom data validation code snippets based on user-defined validation rules and data schema. Accepts a structured schema and rules defining constraints, then produces code in specified programming language to validate data integrity according to those rules, enabling automated, consistent data quality checks.", + "category": "data-validation", + "parameters": [ + { + "name": "dataSchema", + "type": "object", + "description": "JSON schema defining the data structure and types for which validation code needs to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "array", + "description": "An array of validation rule objects specifying constraints for fields in the schema, including required, pattern, ranges, or custom logic.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The target programming language for the generated validation code (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "\"JavaScript\"" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments within the generated code for clarity and maintainability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output code, such as 'function', 'class', or 'module', defining how validation logic is encapsulated.", + "required": false, + "defaultValue": "\"function\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated validation code as a string and metadata about the generation process (such as language and format)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate data validation code tailored to specific data schemas and validation requirements, saving manual programming effort and ensuring consistency across projects or datasets. Ideal for scenarios requiring rapid prototyping or integration of data quality checks in various programming environments.", + "limitations": "This tool does not execute or test the generated code; it only produces code snippets according to input specifications. Complex business logic beyond standard validation patterns may require manual adjustment. Support is limited to common languages and validation patterns.", + "examples": [ + "Generate JavaScript function code for validating user registration data with required fields and email format checks.", + "Create Python module code that validates product data with numeric ranges and optional fields.", + "Produce Java validation class code including pattern and length constraints with comments." + ] + }, + "tags": [ + "data-validation", + "code-generation", + "automation", + "schema", + "validation-rules", + "programming" + ], + "examples": [ + { + "inputJson": "{\"dataSchema\":{\"type\":\"object\",\"properties\":{\"email\":{\"type\":\"string\"},\"age\":{\"type\":\"integer\"}},\"required\":[\"email\"]},\"validationRules\":[{\"field\":\"email\",\"rule\":\"pattern\",\"value\":\"^[\\\\w.-]+@[\\\\w.-]+\\\\.\\\\w+$\"},{\"field\":\"age\",\"rule\":\"minimum\",\"value\":18}],\"programmingLanguage\":\"JavaScript\",\"includeComments\":true,\"outputFormat\":\"function\"}", + "description": "Generate JavaScript function code to validate an object with an email matching regex pattern and an age minimum of 18." + }, + { + "inputJson": "{\"dataSchema\":{\"type\":\"object\",\"properties\":{\"username\":{\"type\":\"string\"},\"score\":{\"type\":\"number\"}},\"required\":[\"username\"]},\"validationRules\":[{\"field\":\"username\",\"rule\":\"minLength\",\"value\":3},{\"field\":\"score\",\"rule\":\"maximum\",\"value\":100}],\"programmingLanguage\":\"Python\",\"includeComments\":false,\"outputFormat\":\"module\"}", + "description": "Generate Python module code to validate username length and score maximum value without comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "data-validation.generateCode", + "description": "Generates validation code snippets based on provided data schema definitions and validation rules. Accepts input schemas in JSON Schema or custom rule objects, processes them, and outputs code snippets in specified programming languages (e.g., JavaScript, Python) that perform the defined data validations.", + "category": "data-validation", + "parameters": [ + { + "name": "schema", + "type": "object", + "description": "A JSON object representing the data schema and validation rules to generate code for.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Target programming language for the generated validation code (e.g., 'javascript', 'python').", + "required": true, + "defaultValue": "javascript" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "If true, generates stricter validation code with detailed type and boundary checks.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Determines whether to include explanatory comments in the generated code for clarity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "functionName", + "type": "string", + "description": "The name to assign to the generated validation function.", + "required": false, + "defaultValue": "validateData" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and the language used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce executable data validation code based on structured data schemas or rule definitions. Helpful for dynamically generating validation code to embed in applications or scripts to ensure data integrity according to defined constraints.", + "limitations": "This tool cannot execute or test the generated validation code, nor can it generate validation logic for unstructured or ambiguous schema inputs. It does not produce validation code for unsupported programming languages.", + "examples": [ + "Generate JavaScript code to validate user signup data based on a JSON schema.", + "Produce Python validation function for API input checking from provided validation rules.", + "Create code with detailed type checks and comments for numeric and string field validations." + ] + }, + "tags": [ + "data-validation", + "code-generation", + "schema", + "validation", + "programming", + "automation" + ], + "examples": [ + { + "inputJson": "{\"schema\":{\"type\":\"object\",\"properties\":{\"username\":{\"type\":\"string\",\"minLength\":3,\"maxLength\":30},\"age\":{\"type\":\"integer\",\"minimum\":18}},\"required\":[\"username\",\"age\"]},\"language\":\"javascript\",\"strictMode\":true,\"includeComments\":true,\"functionName\":\"validateUser\"}", + "description": "Generate strict JavaScript validation code for a user object requiring username and age fields with size and minimum value constraints." + }, + { + "inputJson": "{\"schema\":{\"type\":\"object\",\"properties\":{\"email\":{\"type\":\"string\",\"format\":\"email\"},\"subscribe\":{\"type\":\"boolean\"}},\"required\":[\"email\"]},\"language\":\"python\",\"strictMode\":false,\"includeComments\":false,\"functionName\":\"check_subscription\"}", + "description": "Generate Python validation function without comments for an object requiring an email and optional subscription boolean." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "etl-processes.analyzeCustomer", + "description": "This tool accepts customer transaction and profile data as input and analyzes it to identify patterns such as purchasing behavior, segmentation clusters, churn risk, and lifetime value. It performs statistical aggregations, clustering, and predictive scoring to produce an analytical report including insights and actionable metrics.", + "category": "etl-processes", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "Array of customer records including profiles and transaction histories that serve as the primary input data for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform, e.g., 'segmentation', 'churnPrediction', 'lifetimeValue', or 'behaviorPatterns'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter specifying start and end dates for selecting relevant transactions.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDemographics", + "type": "boolean", + "description": "Flag indicating whether customer demographic attributes should be included in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "predictionModel", + "type": "string", + "description": "Optional specification of predictive model name to use for churn or lifetime value prediction if applicable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results such as identified customer segments, churn risk scores, lifetime value estimations, and key behavioral patterns with explanations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract meaningful insights from raw customer datasets to support marketing strategies, customer retention efforts, or personalized offers. It is ideal for transforming complex customer data into actionable intelligence to guide business decisions.", + "limitations": "This tool does not collect data itself and depends on the input data quality and completeness. It does not generate raw predictive models but applies preconfigured ones. It cannot replace domain expertise when interpreting complex patterns outside the supported analysis types.", + "examples": [ + "Analyze customer purchasing patterns over the last year to identify high-value segments.", + "Predict churn risk for customers using demographic and transaction data.", + "Calculate lifetime value estimates with the inclusion of behavioral segments." + ] + }, + "tags": [ + "etl", + "analysis", + "customer", + "data analytics", + "segmentation", + "churn", + "lifetime value" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"customerId\":\"123\",\"transactions\":[{\"date\":\"2023-01-10\",\"amount\":250}],\"demographics\":{\"age\":30,\"gender\":\"F\"}},{\"customerId\":\"124\",\"transactions\":[{\"date\":\"2023-02-15\",\"amount\":100}],\"demographics\":{\"age\":45,\"gender\":\"M\"}}],\"analysisType\":\"segmentation\",\"dateRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"},\"includeDemographics\":true}", + "description": "Segment customers based on transactions and demographics within the 2023 calendar year." + }, + { + "inputJson": "{\"customerData\":[{\"customerId\":\"200\",\"transactions\":[{\"date\":\"2023-03-05\",\"amount\":500}],\"demographics\":{\"age\":40,\"gender\":\"M\"}},{\"customerId\":\"201\",\"transactions\":[{\"date\":\"2022-12-20\",\"amount\":50}],\"demographics\":{\"age\":22,\"gender\":\"F\"}}],\"analysisType\":\"churnPrediction\",\"includeDemographics\":true,\"predictionModel\":\"churnModelV2\"}", + "description": "Predict customers at risk of churn using latest transactions and demographics with a specified prediction model." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "data-validation.createEmail", + "description": "Generates a syntactically valid email address based on customizable parameters such as username pattern, domain, and inclusion of subdomain. Accepts options to specify exact elements or format styles, then constructs an email string output that can be used for testing data validation processes or placeholder contact info.", + "category": "data-validation", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "The username part of the email address (before @). Can include letters, digits, dots, underscores, or hyphens. If empty, generates a random username.", + "required": false, + "defaultValue": "" + }, + { + "name": "domain", + "type": "string", + "description": "The domain name part of the email address (after @). If empty, defaults to 'example.com'.", + "required": false, + "defaultValue": "example.com" + }, + { + "name": "subdomain", + "type": "string", + "description": "Optional subdomain to prepend before the domain, e.g., 'mail' to form mail.example.com. Empty by default.", + "required": false, + "defaultValue": "" + }, + { + "name": "useRandomUsername", + "type": "boolean", + "description": "If true and username is empty, generates a random username; otherwise uses provided username or default 'user'.", + "required": false, + "defaultValue": "true" + }, + { + "name": "topLevelDomain", + "type": "string", + "description": "The top-level domain (TLD) part, e.g., 'com', 'org', 'net'. Defaults to 'com'. Ignored if domain contains a TLD.", + "required": false, + "defaultValue": "com" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated valid email address string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a valid email address string for testing, data population, validation of email formatting, or generating placeholder email data with customizable components such as username, subdomain, domain, and TLD.", + "limitations": "This tool does not verify if the email address actually exists or can receive mail; it only ensures syntactic correctness and customization of email components. It does not handle internationalized domain names or advanced email formats like quoted strings or comments.", + "examples": [ + "Generate a test email with username 'test.user' on 'mail.example.org'", + "Create a random email on domain 'mycompany.com' with no subdomain", + "Generate an email with username 'admin', domain 'service', and TLD 'net'" + ] + }, + "tags": [ + "data-validation", + "email", + "email-generation", + "testing", + "placeholder" + ], + "examples": [ + { + "inputJson": "{\"username\":\"john.doe\",\"domain\":\"example\",\"subdomain\":\"mail\",\"useRandomUsername\":false,\"topLevelDomain\":\"org\"}", + "description": "Generate email 'john.doe@mail.example.org' with explicit username, subdomain, domain, and TLD." + }, + { + "inputJson": "{\"username\":\"\",\"domain\":\"mydomain\",\"subdomain\":\"\",\"useRandomUsername\":true,\"topLevelDomain\":\"com\"}", + "description": "Generate email with random username on 'mydomain.com', no subdomain." + }, + { + "inputJson": "{\"username\":\"admin\",\"domain\":\"service\",\"subdomain\":\"\",\"useRandomUsername\":false,\"topLevelDomain\":\"net\"}", + "description": "Generate email 'admin@service.net' with specified username, domain, and TLD." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "etl-processes.generateReport", + "description": "Generates a customizable data report by extracting data from specified sources, transforming it through filtering and aggregation, and compiling it into a formatted document such as PDF, Excel, or HTML. Accepts configuration for data sources, filters, aggregation methods, and output format.", + "category": "etl-processes", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of data source objects with type and connection details to extract data from (e.g., database, API).", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Filtering criteria to apply on extracted data (e.g., date ranges, categories).", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregations", + "type": "array", + "description": "Specifications for data aggregation including fields and aggregation functions (e.g., sum, average).", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "array", + "description": "Fields by which to group the data before aggregation.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the report to generate, such as 'pdf', 'excel', or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title of the generated report for display purposes.", + "required": false, + "defaultValue": "Data Report" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include charts and visualizations in the report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "ReportResult object containing a base64 encoded file of the generated report along with metadata like file type and file name." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create comprehensive reports by extracting data from one or several data sources, applying filters and aggregation logic, and outputting the results in a standard document format for sharing or analysis.", + "limitations": "Does not perform advanced statistical modeling or machine learning. Input data sources must be accessible and credentials provided separately. Does not support real-time streaming data processing.", + "examples": [ + "Generate a monthly sales report in PDF with total sales and grouped by region with charts included.", + "Create an HTML report summarizing customer feedback data filtered by date range with average satisfaction scores.", + "Produce an Excel report extracting financial data from multiple APIs, aggregated by category without charts." + ] + }, + "tags": [ + "etl", + "reporting", + "data-extraction", + "data-transformation", + "report-generation", + "pdf", + "excel", + "html" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[{\"type\":\"database\",\"connectionString\":\"Server=myServer;Database=myDB;User Id=user;Password=pass;\"}],\"filters\":{\"date\":{\"from\":\"2024-01-01\",\"to\":\"2024-01-31\"}},\"aggregations\":[{\"field\":\"sales\",\"function\":\"sum\"},{\"field\":\"units\",\"function\":\"count\"}],\"groupBy\":[\"region\"],\"outputFormat\":\"pdf\",\"reportTitle\":\"January Sales Report\",\"includeCharts\":true}", + "description": "Generate a PDF sales report for January grouped by region including charts." + }, + { + "inputJson": "{\"dataSources\":[{\"type\":\"api\",\"endpoint\":\"https://api.example.com/feedback\"}],\"filters\":{\"date\":{\"from\":\"2024-05-01\",\"to\":\"2024-05-15\"}},\"aggregations\":[{\"field\":\"satisfaction\",\"function\":\"average\"}],\"groupBy\":[\"productCategory\"],\"outputFormat\":\"html\",\"reportTitle\":\"Mid-May Customer Feedback\",\"includeCharts\":false}", + "description": "Create an HTML report summarizing customer feedback averages by product category." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "data-validation.createDocument", + "description": "Creates a validation report document based on supplied dataset and validation rules. The tool accepts raw data input and a set of validation criteria, performs integrity and quality checks, and generates a structured document summarizing the validation results, including errors, warnings, and metrics.", + "category": "data-validation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing the dataset to be validated, each object corresponds to a record.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "object", + "description": "An object defining the validation rules (e.g., required fields, data types, value ranges) to apply to the data.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "Output document format: 'json' (default), 'pdf', or 'txt'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a validation summary section in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDetailedErrors", + "type": "boolean", + "description": "Whether to include detailed error listings for each record.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Title of the validation document.", + "required": false, + "defaultValue": "Data Validation Report" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated validation document content as a string and metadata including format and counts of errors and warnings." + }, + "aiAgent": { + "useCase": "Use this tool when you need to validate structured datasets against defined rules and produce a detailed report of data quality and integrity that can be stored, shared, or further processed. Ideal for data cleansing, audit, or compliance scenarios.", + "limitations": "This tool does not perform automatic data correction or advanced anomaly detection. It requires structured input data and explicit validation rules. It cannot generate highly formatted PDFs beyond simple text representation.", + "examples": [ + "Validate a customer contact list against mandatory fields and generate a JSON validation report.", + "Check a financial transactions dataset with rules on numeric ranges and required date fields, producing a summary text file.", + "Create a PDF report summarizing validation errors for an inventory dataset including detailed error listings." + ] + }, + "tags": [ + "data-validation", + "document-creation", + "reporting", + "data-quality", + "integrity", + "validation-rules" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"id\":1,\"name\":\"Alice\",\"age\":30},{\"id\":2,\"name\":\"\",\"age\":-5}],\"validationRules\":{\"requiredFields\":[\"id\",\"name\"],\"fieldTypes\":{\"id\":\"number\",\"name\":\"string\",\"age\":\"number\"},\"valueRanges\":{\"age\":{\"min\":0}}},\"documentFormat\":\"json\",\"includeSummary\":true,\"includeDetailedErrors\":true,\"title\":\"Customer Data Validation\"}", + "description": "Validate customer data to ensure 'id' and 'name' fields are present and 'age' is a non-negative number, generating a JSON report with summary and detailed errors." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "etl-processes.createReport", + "description": "Generates a structured report by extracting data from specified source systems, applying optional transformations such as filtering and aggregation, and formatting the output according to a chosen template. Accepts data source configs and transformation rules, producing a ready-to-use report in formats like PDF, Excel, or HTML.", + "category": "etl-processes", + "parameters": [ + { + "name": "dataSource", + "type": "object", + "description": "Configuration object specifying the data source details (e.g., database connection info, API endpoint) to extract raw data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "List of transformations to apply on extracted data, such as filters, groupings, calculations, or sorting rules.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportTemplate", + "type": "string", + "description": "Identifier or path of the template to format the report output (e.g., standard financial, summary, detailed).", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format of the report (e.g., PDF, Excel, HTML).", + "required": true, + "defaultValue": "PDF" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title to display on the generated report.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag indicating whether to include graphical charts and visualizations in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputDestination", + "type": "string", + "description": "Path or storage location where the generated report file should be saved or uploaded.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "Object containing metadata and location info for the generated report, including file URL, format, and summary details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create formal reports from raw data that require extraction, transformation, and formatting steps. It is ideal for automating report generation from databases or APIs, producing standardized documents for business or operational use.", + "limitations": "Does not perform advanced data analytics or predictive modeling. Complex custom report layouts beyond provided templates may need manual design. Real-time streaming data is not supported.", + "examples": [ + "Generate a monthly sales report PDF with filters for region and product category.", + "Create a detailed Excel report of customer feedback aggregated by sentiment score.", + "Produce an HTML summary report including charts from API-extracted user metrics data." + ] + }, + "tags": [ + "etl", + "reporting", + "data-extraction", + "data-transformation", + "automation", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":{\"type\":\"database\",\"connectionString\":\"Server=myServer;Database=SalesDB;User Id=admin;Password=pass;\"},\"transformations\":[{\"type\":\"filter\",\"field\":\"region\",\"operator\":\"equals\",\"value\":\"North America\"},{\"type\":\"groupBy\",\"fields\":[\"productCategory\"]}],\"reportTemplate\":\"financialSummary\",\"outputFormat\":\"PDF\",\"reportTitle\":\"Monthly North America Sales Report\",\"includeCharts\":true}", + "description": "Create a PDF report summarizing monthly sales from North America filtered data, grouped by product category with charts included." + }, + { + "inputJson": "{\"dataSource\":{\"type\":\"api\",\"endpoint\":\"https://api.example.com/feedback\",\"authToken\":\"xyz123\"},\"transformations\":[{\"type\":\"aggregate\",\"field\":\"sentimentScore\",\"operation\":\"average\"}],\"reportTemplate\":\"customerFeedbackDetail\",\"outputFormat\":\"Excel\",\"reportTitle\":\"Customer Feedback Sentiment Analysis\",\"includeCharts\":false}", + "description": "Generate an Excel report with average sentiment score from customer feedback fetched via API, without charts." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "database-management.analyzeText", + "description": "Analyzes textual data stored in a database to extract insights such as keyword frequency, sentiment distribution, named entities, and language detection. Accepts text input via direct string or database query parameters, processes the content using NLP techniques, and outputs structured analysis results suitable for reporting and decision making.", + "category": "database-management", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "Raw text content to analyze directly, overrides database query if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string to access the database containing the text data to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "SQL query to retrieve the textual data from the database for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "List of analysis types to perform on the text (e.g., ['keywordFrequency', 'sentiment', 'namedEntities', 'languageDetection']).", + "required": true, + "defaultValue": "[\"keywordFrequency\",\"sentiment\"]" + }, + { + "name": "language", + "type": "string", + "description": "Specify text language for enhanced analysis accuracy; if empty, auto-detection is performed.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "topKeywordsCount", + "type": "number", + "description": "Number of top keywords to extract and return during keyword frequency analysis.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Include textual contexts (snippets) where key entities or keywords appear in output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the results of the text analysis, including keyword frequencies, sentiment scores, named entities with types, detected language, and optionally text contexts where findings occur." + }, + "aiAgent": { + "useCase": "Use this tool when needing to derive meaningful information from text stored in databases, such as analyzing customer feedback, reviews, or logs. It enables automated extraction of key phrases, sentiment trends, entity recognition, and language detection to enhance understanding and reporting.", + "limitations": "This tool does not perform full document summarization or deep semantic analysis beyond predefined analytic types. It may be less accurate with very short or heavily domain-specific texts without context training.", + "examples": [ + "Analyze customer reviews stored in a SQL database to find common positive and negative keywords and overall sentiment.", + "Process a given raw text string to extract named entities and detect the language.", + "Retrieve chat logs for a specific time period from a database and analyze sentiment trends with context snippets." + ] + }, + "tags": [ + "database", + "text-analysis", + "NLP", + "sentiment-analysis", + "keyword-extraction", + "named-entity-recognition" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=myDB;User Id=user;Password=pass;\",\"query\":\"SELECT review_text FROM customer_reviews WHERE review_date > '2024-01-01'\",\"analysisTypes\":[\"keywordFrequency\",\"sentiment\"],\"topKeywordsCount\":15,\"includeContext\":true}", + "description": "Analyze recent customer reviews from database for keywords and sentiment including context snippets." + }, + { + "inputJson": "{\"text\":\"The new product launch was successful. Customers loved the sleek design and fast performance.\",\"analysisTypes\":[\"namedEntities\",\"languageDetection\"]}", + "description": "Analyze a direct input text string to identify named entities and detect language." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "database-management.downloadFile", + "description": "Downloads a specified file stored within a database or accessible through a database-linked file system. Accepts database connection details, file identifier or path, and download options. Processes the request by querying the database or associated file storage and returns the file content or a download link.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the database system (e.g., MySQL, PostgreSQL, MongoDB) to connect to.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Database connection string or URI to access the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileIdentifier", + "type": "string", + "description": "Unique identifier or path of the file to download from the database or associated storage.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local file path where the downloaded file should be saved. If empty, returns file content instead.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download operation before timing out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include file metadata (such as size, creation date) in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the file content as a binary stream if destinationPath is empty, or confirmation of download to the specified path. Optionally includes metadata when requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically retrieve files stored or referenced within a database system, supporting various database types. It is ideal for backup, analysis, or integration workflows that require file extraction from database-managed storage.", + "limitations": "This tool cannot download files from databases without appropriate access permissions. It does not handle file conversions or decompression. Extremely large files may require specialized handling beyond standard timeout limits.", + "examples": [ + "Download an image file stored in a PostgreSQL database by its unique ID.", + "Retrieve a PDF document stored as a BLOB in a MySQL database and save it locally.", + "Fetch a log file referenced in a MongoDB document and get the file metadata." + ] + }, + "tags": [ + "database", + "file", + "download", + "data-access", + "file-management", + "blob", + "database-storage" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"connectionString\":\"postgresql://user:pass@localhost:5432/mydb\",\"fileIdentifier\":\"images/1234.jpg\",\"destinationPath\":\"/tmp/image1234.jpg\",\"timeoutSeconds\":60,\"includeMetadata\":true}", + "description": "Download an image file from PostgreSQL database by path and save locally with metadata." + }, + { + "inputJson": "{\"databaseType\":\"MySQL\",\"connectionString\":\"mysql://user:pass@host:3306/db\",\"fileIdentifier\":\"doc_456.pdf\",\"destinationPath\":\"\",\"timeoutSeconds\":30,\"includeMetadata\":false}", + "description": "Retrieve a PDF document stored as a BLOB from MySQL and return content without saving to disk." + }, + { + "inputJson": "{\"databaseType\":\"MongoDB\",\"connectionString\":\"mongodb://user:pass@host:27017/db\",\"fileIdentifier\":\"logs/2024-06-01.log\",\"destinationPath\":\"/var/logs/2024-06-01.log\",\"timeoutSeconds\":120,\"includeMetadata\":true}", + "description": "Download a log file referenced in a MongoDB collection and save it locally including file metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "database-management.analyzeJSON", + "description": "Analyzes a JSON dataset by summarizing its structure, detecting data types per field, computing basic statistics for numerical fields, and identifying anomalies such as missing or inconsistent values. Accepts raw JSON data and outputs a structured report detailing field properties, data distribution, and potential data quality issues.", + "category": "database-management", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The JSON dataset to analyze, provided as a string. Can be an object or an array of objects representing records.", + "required": true, + "defaultValue": "" + }, + { + "name": "sampleSize", + "type": "number", + "description": "Number of records to sample from the JSON data for analysis; if omitted or zero, analyzes entire dataset.", + "required": false, + "defaultValue": "0" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable detection of anomalies such as missing values, inconsistent data types, or outliers in numerical fields.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateFormats", + "type": "array", + "description": "List of string date formats to detect date/time fields within the JSON data.", + "required": false, + "defaultValue": "[\"ISO8601\"]" + } + ], + "returns": { + "type": "object", + "description": "Structured report including field names, inferred data types, summary statistics for numeric fields (count, mean, min, max), counts of missing values, and lists of detected anomalies or inconsistencies per field." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand the structure and quality of JSON datasets before further processing or querying, such as for data profiling, validation, or integration tasks. It helps identify data types, distributions, and data quality issues to guide subsequent analysis or transformation steps.", + "limitations": "This tool does not perform deep semantic analysis or data cleansing; it cannot handle JSON with deeply nested or highly irregular schema beyond basic type inference and summary statistics. It is not a substitute for full-scale data validation or ETL tools.", + "examples": [ + "Analyze structure and statistics of a JSON array from a database export.", + "Detect missing or invalid date formats in JSON configuration data.", + "Summarize field data types and highlight numerical outliers in JSON logs." + ] + }, + "tags": [ + "database", + "json", + "data-analysis", + "profiling", + "validation", + "statistics", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"[{\\\"id\\\":1,\\\"score\\\":82,\\\"passed\\\":true},{\\\"id\\\":2,\\\"score\\\":null,\\\"passed\\\":false},{\\\"id\\\":3,\\\"score\\\":91,\\\"passed\\\":true}]\",\"sampleSize\":0,\"detectAnomalies\":true,\"dateFormats\":[\"ISO8601\"]}", + "description": "Analyze an array of JSON records describing exam results, computing score statistics and identifying missing score values." + }, + { + "inputJson": "{\"jsonData\":\"{\\\"user\\\":\\\"alice\\\", \\\"loginCount\\\":15, \\\"lastLogin\\\":\\\"2023-05-10T14:48:00Z\\\"}\",\"sampleSize\":1,\"detectAnomalies\":false,\"dateFormats\":[\"ISO8601\"]}", + "description": "Analyze a single JSON object representing user login info to infer data types without anomaly detection." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "database-management.analyzeWord", + "description": "Analyzes a given word within a specified database context to extract metadata such as frequency of occurrence, associated tags or categories, and relationships to other words in indexed text fields. Input includes the target word and optional database/table/field identifiers; output provides statistical and relational analysis results.", + "category": "database-management", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word to analyze within the database content.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseName", + "type": "string", + "description": "The name of the database to query for word analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Specific table in the database to analyze; if empty, all relevant tables are considered.", + "required": false, + "defaultValue": "" + }, + { + "name": "textFields", + "type": "array", + "description": "Array of text field names within the table to analyze for the word occurrences and context.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeRelations", + "type": "boolean", + "description": "Flag indicating whether to include related words and co-occurrence statistics in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "limitRelatedWords", + "type": "number", + "description": "Maximum number of related words to return if includeRelations is true.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Object containing word frequency count, list of related words with co-occurrence metrics, and optional tags or categories if present in metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to gather insights about a specific word's usage and relationships within database records, such as understanding keyword distribution, textual data profiling, or semantic relationships in content stored within database text fields.", + "limitations": "This tool does not perform full natural language processing beyond simple frequency and co-occurrence statistics; it cannot provide deep semantic analysis or context-aware interpretation beyond database content.", + "examples": [ + "Analyze the frequency and related concepts of 'cloud' in the articles database.", + "Check how often 'error' appears in the logs table and find common associated terms.", + "Identify tags linked with the word 'security' in the user comments database." + ] + }, + "tags": [ + "database", + "analysis", + "word-frequency", + "text-mining", + "metadata", + "semantic-relations" + ], + "examples": [ + { + "inputJson": "{\"word\":\"security\",\"databaseName\":\"companyDB\",\"tableName\":\"user_comments\",\"textFields\":[\"comment_text\"],\"includeRelations\":true,\"limitRelatedWords\":5}", + "description": "Analyze the word 'security' in user comments to get frequency and related common words." + }, + { + "inputJson": "{\"word\":\"error\",\"databaseName\":\"logsDB\",\"tableName\":\"app_logs\",\"textFields\":[\"message\"],\"includeRelations\":false}", + "description": "Count how many times 'error' occurs in application logs messages." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "database-management.analyzeAccount", + "description": "Analyzes account data in a database to provide insights on activity, status, and key metrics. Accepts account identifiers and filtering criteria, processes transaction history and account attributes, and outputs a detailed report including activity summaries, risk indicators, and trends.", + "category": "database-management", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the account to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date to filter account activity (ISO 8601 format)", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date to filter account activity (ISO 8601 format)", + "required": false, + "defaultValue": "" + }, + { + "name": "includeInactive", + "type": "boolean", + "description": "Whether to include inactive accounts or activity in the analysis", + "required": false, + "defaultValue": "false" + }, + { + "name": "metrics", + "type": "array", + "description": "List of specific metrics to calculate (e.g., ['transactionVolume','averageBalance'])", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing account activity summaries, calculated metrics, risk indicators, and trend data over the specified period." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the current status, health, or activity patterns of specific business accounts stored in a database. It helps to extract key performance metrics, detect anomalies or risk indicators, and summarize historical data in a structured report for further decision-making.", + "limitations": "This tool does not perform direct database modifications or transaction management. It assumes input account IDs exist in the database and does not generate predictive analytics or forecasts beyond trend summarization.", + "examples": [ + "Analyze account 12345 for transaction volume and average balance in last quarter.", + "Provide a risk and activity summary for account 'ACC5678' including inactive periods.", + "Summarize trends and key metrics of account 99999 from 2024-01-01 to 2024-06-01." + ] + }, + "tags": [ + "database", + "analysis", + "account", + "metrics", + "reporting", + "business", + "data-insights" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"12345\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"includeInactive\":false,\"metrics\":[\"transactionVolume\",\"averageBalance\"]}", + "description": "Analyze account 12345 for transaction volume and average balance in Q1 2024" + }, + { + "inputJson": "{\"accountId\":\"ACC5678\",\"includeInactive\":true,\"metrics\":[\"riskScore\",\"activityCount\"]}", + "description": "Provide a risk and activity summary for account ACC5678 including inactive activity" + }, + { + "inputJson": "{\"accountId\":\"99999\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-06-01\"}", + "description": "Summarize trends and default key metrics of account 99999 first half of 2024" + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "database-management.uploadFile", + "description": "Uploads a file (e.g., CSV, JSON, SQL dump) to a specified database and table. Accepts file path or content along with database connection details and optional parsing options. Processes the file to insert or update records, returning a summary of the operation including counts of inserted and updated rows.", + "category": "database-management", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path to the file to upload or an identifier if content provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Raw content of the file to upload. Used if filePath not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of target database such as 'MySQL', 'PostgreSQL', 'SQLite'.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Connection string or URI to access the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the target table where the file data should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the input file (e.g., 'csv', 'json', 'sql').", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character used in CSV files. Ignored for other formats.", + "required": false, + "defaultValue": "," + }, + { + "name": "updateExisting", + "type": "boolean", + "description": "If true, existing rows matching primary keys will be updated instead of only inserting.", + "required": false, + "defaultValue": "false" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of records to process per batch for bulk upload to optimize performance.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "Operation summary including number of inserted and updated rows and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when needing to import structured data files into a database automatically, such as uploading user data from CSV to MySQL, importing JSON data into PostgreSQL, or restoring data from SQL dump files. It supports both inserting new records and optionally updating existing ones.", + "limitations": "This tool does not transform or validate data schema beyond basic parsing. Complex schema migrations or validations must be handled externally. Large files may require preprocessing for memory or performance constraints. SQL dump execution is limited to single-statement execution and may not support complex scripts.", + "examples": [ + "Upload a CSV file of customer records to a PostgreSQL database table 'customers' with update set to true.", + "Import JSON data string into a MySQL table named 'orders'.", + "Restore an SQL dump file content into an SQLite database table." + ] + }, + "tags": [ + "database", + "upload", + "file-import", + "csv", + "json", + "sql", + "data-insertion" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/users.csv\",\"databaseType\":\"PostgreSQL\",\"connectionString\":\"postgresql://user:pass@localhost:5432/dbname\",\"tableName\":\"users\",\"fileFormat\":\"csv\",\"delimiter\":\",\",\"updateExisting\":true,\"batchSize\":500}", + "description": "Upload a CSV file of users to a PostgreSQL 'users' table with updates for existing records." + }, + { + "inputJson": "{\"fileContent\":\"[{\\\"id\\\":1,\\\"name\\\":\\\"Test\\\"},{\\\"id\\\":2,\\\"name\\\":\\\"Sample\\\"}]\",\"databaseType\":\"MySQL\",\"connectionString\":\"mysql://user:pass@localhost:3306/dbname\",\"tableName\":\"products\",\"fileFormat\":\"json\",\"updateExisting\":false}", + "description": "Upload JSON content directly as new product records into MySQL 'products' table." + }, + { + "inputJson": "{\"filePath\":\"/backups/dump.sql\",\"databaseType\":\"SQLite\",\"connectionString\":\"sqlite:///tmp/test.db\",\"tableName\":\"backup_table\",\"fileFormat\":\"sql\"}", + "description": "Execute SQL dump file into SQLite database, targeting a table named 'backup_table'." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "database-management.downloadCode", + "description": "This tool allows downloading database-related code snippets, such as SQL queries, stored procedures, or database schema migration scripts. Users specify the database type, code category, and optional filters; the tool processes the request and returns the code files packaged for download or as text output.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "The type of database (e.g., MySQL, PostgreSQL, SQLServer) to filter relevant code snippets.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeCategory", + "type": "string", + "description": "Category of database code to download, such as 'queries', 'storedProcedures', 'migrations', or 'schemas'.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Preferred programming or query language of the code, e.g., 'SQL', 'PLpgSQL', 'T-SQL'.", + "required": false, + "defaultValue": "SQL" + }, + { + "name": "filterKeywords", + "type": "array", + "description": "Optional list of keywords to filter specific code snippets or features within the chosen category.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include comments and documentation in the code snippets; defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing code snippets matched by the request, either as an array of code strings with metadata or as a compressed archive download link." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to provide users with ready-to-use or reference database code such as example SQL queries, stored procedure templates, or migration scripts for a specific database type. It helps accelerate development, debugging, or learning by delivering curated, downloadable code samples.", + "limitations": "This tool does not generate custom code on demand; it only provides pre-existing code snippets from a repository. It cannot execute the code or connect to databases to verify code correctness or compatibility.", + "examples": [ + "Download MySQL stored procedures related to user authentication.", + "Get PostgreSQL migration scripts with filter keywords 'index' and 'performance'.", + "Retrieve SQL query examples for SQLServer including comments." + ] + }, + "tags": [ + "database", + "code", + "download", + "SQL", + "queries", + "storedProcedures", + "migrations" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"codeCategory\":\"migrations\",\"language\":\"SQL\",\"filterKeywords\":[\"index\",\"performance\"],\"includeComments\":true}", + "description": "Download PostgreSQL migration scripts related to indexes and performance including comments." + }, + { + "inputJson": "{\"databaseType\":\"MySQL\",\"codeCategory\":\"storedProcedures\",\"language\":\"SQL\",\"filterKeywords\":[],\"includeComments\":false}", + "description": "Retrieve all MySQL stored procedures without comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "database-management.downloadDocument", + "description": "Downloads a specific document from a database collection or table based on provided identifiers or query filters. Accepts database connection details and retrieval criteria, performs a query to locate the document, and returns the document data in JSON or specified format for further use or storage.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the database to connect to, e.g., MongoDB, SQL, Elasticsearch.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Connection string or URI to connect securely to the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "collectionOrTable", + "type": "string", + "description": "Name of the collection (NoSQL) or table (SQL) where the document resides.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentId", + "type": "string", + "description": "Unique identifier of the document to retrieve (e.g., primary key or _id).", + "required": false, + "defaultValue": "" + }, + { + "name": "queryFilter", + "type": "object", + "description": "Optional filter object or query criteria to locate the document if documentId is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the document data, e.g., JSON, XML, CSV.", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as retrieval timestamp or source info in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the requested document's data in the specified format, plus optional metadata if requested. Returns error details if the document is not found or connection fails." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to fetch a specific document record from a database for processing, analysis, or export. This includes retrieving user profiles, transaction records, configuration documents, or any structured data item identified by unique keys or query criteria.", + "limitations": "This tool does not write, update, or delete documents. It requires correct database credentials and permissions. It depends on the database type and may not support complex queries beyond simple filters. Large documents or binary fields may not be fully supported in some output formats.", + "examples": [ + "Download a customer profile by ID from a MongoDB collection.", + "Retrieve a product record from a SQL database by primary key.", + "Fetch a log document matching specific filter criteria to analyze errors." + ] + }, + "tags": [ + "database", + "download", + "document", + "retrieval", + "query", + "data-access", + "NoSQL", + "SQL" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"MongoDB\",\"connectionString\":\"mongodb+srv://user:pass@cluster0.mongodb.net/mydb\",\"collectionOrTable\":\"users\",\"documentId\":\"507f1f77bcf86cd799439011\",\"outputFormat\":\"JSON\",\"includeMetadata\":true}", + "description": "Download a user document by unique MongoDB _id including metadata." + }, + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"connectionString\":\"postgresql://user:pass@localhost:5432/mydb\",\"collectionOrTable\":\"products\",\"documentId\":\"12345\",\"outputFormat\":\"JSON\",\"includeMetadata\":false}", + "description": "Retrieve a product record by primary key from a PostgresSQL database as JSON without metadata." + }, + { + "inputJson": "{\"databaseType\":\"Elasticsearch\",\"connectionString\":\"http://localhost:9200\",\"collectionOrTable\":\"logs\",\"queryFilter\":{\"level\":\"error\",\"timestamp\":{\"$gte\":\"2024-01-01\"}},\"outputFormat\":\"JSON\",\"includeMetadata\":true}", + "description": "Fetch log documents filtered by error level and date from Elasticsearch, including metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.uploadDocument", + "description": "Uploads a document to a specified database collection or table. Accepts document content as text or base64-encoded string, along with metadata and target collection name. Validates input, stores the document, and returns an upload status with document ID for reference.", + "category": "database-management", + "parameters": [ + { + "name": "collectionName", + "type": "string", + "description": "Name of the target database collection or table to upload the document to.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentContent", + "type": "string", + "description": "The content of the document as plain text or base64-encoded string.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "The MIME type of the document content (e.g., 'text/plain', 'application/pdf').", + "required": false, + "defaultValue": "text/plain" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata key-value pairs to associate with the document.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite an existing document with the same identifier.", + "required": false, + "defaultValue": "false" + }, + { + "name": "documentId", + "type": "string", + "description": "Optional unique identifier for the document. If absent, a new ID is generated.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, uploaded document ID, and optional error message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload or save textual or binary document data into a database system, such as saving user-uploaded files, indexing documents for search, or persisting reports and logs. It handles content encoding, metadata, and storage location specification.", + "limitations": "Cannot perform complex document transformations or extract content data. It uploads the raw document as-is and requires the database collection to exist beforehand. Not suitable for streaming large files; size limits depend on the backend.", + "examples": [ + "Upload a PDF report to the 'reports' collection with metadata indicating author and date.", + "Save a plain text user note into the 'notes' collection with overwrite set to true when document ID is specified.", + "Store an image encoded as base64 into the 'images' collection, providing contentType as 'image/png'." + ] + }, + "tags": [ + "upload", + "document", + "database", + "storage", + "metadata", + "file-upload" + ], + "examples": [ + { + "inputJson": "{\"collectionName\":\"reports\",\"documentContent\":\"JVBERi0xLjQKJ...\",\"contentType\":\"application/pdf\",\"metadata\":{\"author\":\"John Doe\",\"date\":\"2024-06-01\"}}", + "description": "Upload a PDF report with metadata to the 'reports' collection." + }, + { + "inputJson": "{\"collectionName\":\"notes\",\"documentContent\":\"Meeting notes from 2024-06-01.\",\"overwriteExisting\":true,\"documentId\":\"note-123\"}", + "description": "Save a plain text note with overwrite enabled to the 'notes' collection using a specific ID." + }, + { + "inputJson": "{\"collectionName\":\"images\",\"documentContent\":\"iVBORw0KGgoAAAANSUhEUg...\",\"contentType\":\"image/png\"}", + "description": "Store a PNG image encoded as base64 in the 'images' collection." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.formatDocument", + "description": "Formats database-related documents such as SQL scripts, schema definitions, or export files by applying consistent indentation, spacing, and styling rules. Accepts raw document text input and processes it to produce a clean, readable, and standardized formatted output, enhancing readability and maintainability.", + "category": "database-management", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "Raw text content of the database document to be formatted, such as SQL queries or schema scripts.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of document provided, e.g., 'sql', 'json', or 'yaml', to apply appropriate formatting rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output. Defaults to 4 for better readability.", + "required": false, + "defaultValue": "4" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "Whether to convert SQL keywords to uppercase (true) or keep them as is (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum allowed line width for wrapping long lines. Lines exceeding this will be wrapped intelligently.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document text and metadata about the formatting process, including if any errors were detected." + }, + "aiAgent": { + "useCase": "Use this tool when you have unformatted or inconsistently formatted database documents that require standardized styling for clarity, review, or further processing. Ideal for SQL scripts, schema definitions, or export files that must adhere to style guides.", + "limitations": "Does not validate SQL syntax or schema correctness; formatting only. May not support all complex SQL dialects or proprietary database scripting languages fully.", + "examples": [ + "Format a raw SQL query string with consistent indentation and uppercase keywords.", + "Format a JSON database export document with 2-space indentation.", + "Format a YAML schema definition for readability with 4-space indentation." + ] + }, + "tags": [ + "formatting", + "database", + "SQL", + "document", + "code style", + "readability" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"SELECT id,name FROM users WHERE age>30 ORDER BY name;\",\"documentType\":\"sql\",\"indentation\":2,\"uppercaseKeywords\":true,\"lineWidth\":80}", + "description": "Formats a basic SQL query with 2-space indentation and uppercased keywords." + }, + { + "inputJson": "{\"documentText\":\"{\\\"tables\\\": [{\\\"name\\\": \\\"users\\\", \\\"columns\\\": [{\\\"name\\\": \\\"id\\\", \\\"type\\\": \\\"int\\\"}]}]}\",\"documentType\":\"json\",\"indentation\":4,\"uppercaseKeywords\":false,\"lineWidth\":100}", + "description": "Formats a JSON database export with 4-space indentation without altering letter case." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.formatCode", + "description": "Formats database-related code snippets such as SQL queries, stored procedure scripts, or database schema definitions. Accepts raw code input and optional style rules to produce clean, standardized, and readable code output according to chosen formatting conventions.", + "category": "database-management", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw database-related code snippet or script to be formatted. Required input.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Specifies the type of database code to format, e.g., 'sql', 'plsql', 'tsql'. Helps tailor formatting.", + "required": false, + "defaultValue": "sql" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces per indentation level to use in the output. Must be a positive integer.", + "required": false, + "defaultValue": "4" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "If true, formats all SQL keywords in uppercase; otherwise leaves as is.", + "required": false, + "defaultValue": "true" + }, + { + "name": "alignClauses", + "type": "boolean", + "description": "If true, aligns SQL clauses (SELECT, FROM, WHERE, etc.) on separate lines for better readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "insertLineBreaks", + "type": "boolean", + "description": "If true, inserts line breaks and spacing to enhance readability according to common style guides.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted database code as a string with consistent indentation and styling." + }, + "aiAgent": { + "useCase": "Use this tool whenever you receive raw or poorly formatted database code snippets that need standardization to improve readability, maintainability, or compliance with style guides. It helps prepare code for presentation, storage, or execution environments requiring clear formatting.", + "limitations": "This tool focuses on formatting and does not validate code correctness or perform syntax error correction. It also does not execute or optimize queries. Complex proprietary procedural code may not be fully supported.", + "examples": [ + "Format a raw SQL query for readability before embedding it into documentation.", + "Standardize indentation and keyword casing for a stored procedure script.", + "Reformat multiline database schema definitions for improved readability." + ] + }, + "tags": [ + "database", + "formatting", + "sql", + "code-quality", + "readability" + ], + "examples": [ + { + "inputJson": "{\"code\":\"select id,name,email from users where active=1 order by name;\",\"language\":\"sql\",\"indentationSpaces\":2,\"uppercaseKeywords\":true,\"alignClauses\":true,\"insertLineBreaks\":true}", + "description": "Formats a simple SQL SELECT statement with 2 spaces indentation and uppercased keywords." + }, + { + "inputJson": "{\"code\":\"BEGIN DECLARE @count INT SET @count = (SELECT COUNT(*) FROM orders) IF @count > 0 PRINT 'Orders found' END;\",\"language\":\"tsql\",\"uppercaseKeywords\":true,\"indentationSpaces\":4}", + "description": "Formats a Transact-SQL batch script with standard 4 spaces indentation and uppercased keywords." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "database-management.buildFunction", + "description": "This tool generates a database stored procedure or function based on user-defined specifications including the target database type, input parameters, and desired logic or SQL statements. It accepts schema details and logic requirements to output executable function code tailored for the specified database engine.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "The type of database for which to build the function, e.g., 'PostgreSQL', 'MySQL', 'SQLServer'. Determines syntax and features used.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionName", + "type": "string", + "description": "The name to assign to the database function or stored procedure.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputParameters", + "type": "array", + "description": "An array of objects defining each parameter's name, type, and mode (IN, OUT, INOUT) for the function signature.", + "required": true, + "defaultValue": "" + }, + { + "name": "returnType", + "type": "string", + "description": "The return type of the function, e.g., 'INTEGER', 'TABLE', 'VOID'.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionBodySQL", + "type": "string", + "description": "The SQL statements or procedural logic that compose the body of the function.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The procedural language to use, e.g., 'plpgsql' for PostgreSQL, 'T-SQL' for SQL Server, relevant to the databaseType.", + "required": false, + "defaultValue": "plpgsql" + }, + { + "name": "securityDefiner", + "type": "boolean", + "description": "Specifies if the function executes with the privileges of the user that defines it (true) or the caller (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated function code as a string and metadata about the function signature and database compatibility. Includes possible errors if generation fails." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create or generate a reusable, parameterized database function or stored procedure based on user-defined inputs and logic. Useful for automating deployment scripts or dynamically creating functions tailored to different database platforms.", + "limitations": "This tool does not execute or deploy the generated function; it only produces the SQL/function code. It cannot validate the correctness of complex logic or ensure runtime performance optimizations.", + "examples": [ + "Generate a PostgreSQL function named 'calculate_discount' that takes a customer ID (INT) and purchase amount (NUMERIC) as inputs and returns the discounted amount as NUMERIC.", + "Build a MySQL stored procedure 'update_inventory' with parameters for product ID and quantity, updating the stock accordingly.", + "Create a SQL Server function 'GetUserFullName' which accepts a user ID and returns the concatenated full name." + ] + }, + "tags": [ + "database", + "function", + "stored-procedure", + "SQL", + "code-generation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"functionName\":\"calculate_discount\",\"inputParameters\":[{\"name\":\"customer_id\",\"type\":\"INTEGER\",\"mode\":\"IN\"},{\"name\":\"purchase_amount\",\"type\":\"NUMERIC\",\"mode\":\"IN\"}],\"returnType\":\"NUMERIC\",\"functionBodySQL\":\"DECLARE discounted_amount NUMERIC; BEGIN IF purchase_amount > 100 THEN discounted_amount := purchase_amount * 0.9; ELSE discounted_amount := purchase_amount; END IF; RETURN discounted_amount; END;\",\"language\":\"plpgsql\",\"securityDefiner\":false}", + "description": "Generate a PostgreSQL function to calculate discount based on purchase amount." + }, + { + "inputJson": "{\"databaseType\":\"MySQL\",\"functionName\":\"update_inventory\",\"inputParameters\":[{\"name\":\"product_id\",\"type\":\"INT\",\"mode\":\"IN\"},{\"name\":\"quantity\",\"type\":\"INT\",\"mode\":\"IN\"}],\"returnType\":\"VOID\",\"functionBodySQL\":\"BEGIN UPDATE inventory SET stock = stock - quantity WHERE id = product_id; END;\",\"language\":\"sql\",\"securityDefiner\":false}", + "description": "Create a MySQL procedure to update inventory stock by reducing quantity." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Function", + "context": null + } + }, + { + "name": "database-management.formatEmail", + "description": "Formats raw database query results into a structured, professional email body. Accepts query results as an array of objects, applies customizable templates and styling, and returns a formatted email content string suitable for sending or further processing.", + "category": "database-management", + "parameters": [ + { + "name": "queryResults", + "type": "array", + "description": "An array of objects representing raw database query output to be included in the email report.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The email subject line to be used in the formatted email.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "The recipient's name for personalizing the email greeting.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a summary section at the beginning of the email.", + "required": false, + "defaultValue": "true" + }, + { + "name": "templateStyle", + "type": "string", + "description": "Name of the formatting style template to apply to the email (e.g., 'formal', 'simple').", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows from queryResults to include in the email body. Excess rows are summarized.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete formatted email as an HTML string suitable for sending via email clients or APIs." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw database query outputs into professional email reports, automatically generating greetings, summaries, and styled content for easy sharing with stakeholders. Ideal for automated reporting pipelines and status updates.", + "limitations": "Does not send emails; only formats content. Limited to supported template styles and basic personalization. Complex layouts or interactive elements are not supported.", + "examples": [ + "Format sales data query results into a monthly update email for stakeholders.", + "Generate a formatted email report on inventory levels with a summary and limited row display.", + "Create a personalized progress report email from database results with a formal style." + ] + }, + "tags": [ + "database", + "email", + "formatting", + "report", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"queryResults\":[{\"Product\":\"Widget A\",\"Sales\":150,\"Region\":\"North\"},{\"Product\":\"Widget B\",\"Sales\":120,\"Region\":\"South\"}],\"subject\":\"Monthly Sales Report\",\"recipientName\":\"John\",\"includeSummary\":true,\"templateStyle\":\"formal\",\"maxRows\":5}", + "description": "Format a basic sales report for a recipient named John, including a summary using the formal template style." + }, + { + "inputJson": "{\"queryResults\":[{\"Item\":\"Item1\",\"Stock\":20},{\"Item\":\"Item2\",\"Stock\":15}],\"subject\":\"Inventory Status Update\",\"recipientName\":\"\",\"includeSummary\":false,\"templateStyle\":\"simple\",\"maxRows\":10}", + "description": "Generate a simple styled inventory status email without a summary for an unspecified recipient." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "database-management.composeEmail", + "description": "This tool composes an email message based on database query results. It accepts SQL query strings and email template parameters, executes the query on a connected database, and generates a personalized email body by merging query data into the template. The output is a ready-to-send email text that can be used for reporting, alerts, or notifications.", + "category": "database-management", + "parameters": [ + { + "name": "query", + "type": "string", + "description": "The SQL query string to fetch data for the email content.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailTemplate", + "type": "string", + "description": "The email template string with placeholders for formatting query results.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string to the target database for executing the query.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to fetch from the query result to include in the email.", + "required": false, + "defaultValue": "100" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the generated email.", + "required": false, + "defaultValue": "Database Report" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the email content when displaying tabular data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the email subject and composed email body text ready for sending." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate email content by querying a database for dynamic data such as reports, alerts, or notifications, and format that data into a templated email message. It helps automate communication driven by live database info without manual email drafting.", + "limitations": "This tool does not send emails; it only composes the email text based on query results and templates. It requires valid SQL and access permissions for the target database and expects that the email template placeholders match the query output fields.", + "examples": [ + "Generate daily sales report email from the sales database.", + "Compose an alert email with the top 10 priority tickets from the support database.", + "Create a summary email of user registrations matching criteria from the user database." + ] + }, + "tags": [ + "database", + "email composition", + "reporting", + "automation", + "SQL", + "templating" + ], + "examples": [ + { + "inputJson": "{\"query\":\"SELECT username, last_login FROM users WHERE last_login >= CURDATE() - INTERVAL 7 DAY\",\"emailTemplate\":\"Hello Team,\\n\\nHere are the users who logged in during the last week:\\n{{#each rows}}- {{username}} last logged in at {{last_login}}\\n{{/each}}\\n\\nBest regards,\\nDatabase Admin\",\"databaseConnectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"maxRows\":50,\"subject\":\"Weekly User Login Report\",\"includeHeaders\":false}", + "description": "Compose an email summarizing users who logged in last week with their last login timestamps." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "database-management.composeDocument", + "description": "Composes a structured document by querying one or more databases and combining results according to a template. Accepts database connection info, query templates, and document format, then executes queries, processes data, and outputs a formatted document such as JSON, Markdown, or HTML.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConfigs", + "type": "array", + "description": "List of database connection configurations, each including type, host, port, user, password, and database name to connect to.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryTemplates", + "type": "array", + "description": "Array of query templates with placeholders that define SQL queries to retrieve data from databases.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTemplate", + "type": "string", + "description": "A template string using placeholders to arrange queried data into the desired document structure.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output document, e.g., 'JSON', 'Markdown', 'HTML'.", + "required": false, + "defaultValue": "\"JSON\"" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of records to fetch per query to limit output size.", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include query and execution metadata in the output document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed document as a string, the output format, and optional metadata like execution times and query info." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate comprehensive reports or documents by programmatically querying multiple databases, combining the results, and formatting them into readable documents for analysis or presentation. It is especially useful for automating report generation from live data sources.", + "limitations": "This tool cannot perform complex natural language summarization or deep data analytics; it relies on the input SQL queries and templates to shape the output. It requires valid database connection info and does not support unstructured data sources.", + "examples": [ + "Generate a markdown report combining sales data from multiple regional databases.", + "Create a JSON document summarizing user statistics with custom query filters.", + "Produce an HTML report of recent transactions with formatted sections and metadata." + ] + }, + "tags": [ + "database", + "compose", + "document", + "report-generation", + "SQL", + "automation", + "templating" + ], + "examples": [ + { + "inputJson": "{\"databaseConfigs\":[{\"type\":\"PostgreSQL\",\"host\":\"db1.example.com\",\"port\":5432,\"user\":\"report_user\",\"password\":\"secret\",\"database\":\"sales_db\"}],\"queryTemplates\":[\"SELECT region, SUM(amount) as total_sales FROM sales WHERE sale_date >= '2024-01-01' GROUP BY region\"],\"documentTemplate\":\"# Sales Report\\n\\n{{#each results}}Region: {{region}}, Total Sales: {{total_sales}}\\n{{/each}}\",\"outputFormat\":\"Markdown\",\"maxRecords\":50,\"includeMetadata\":true}", + "description": "Generate a sales report in Markdown by summing sales by region from a PostgreSQL database with metadata included." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.generateText", + "description": "Generates descriptive or summary text based on database schema or query results. Accepts database connection info and query or schema details, processes the input to produce human-readable explanations or summaries of the data structure or query output.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string to connect and fetch schema or query results.", + "required": true, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "SQL query to extract data for generating the text. Optional if schema only.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSchemaDetails", + "type": "boolean", + "description": "Whether to include detailed schema description in the generated text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated text in characters.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the generated text output, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text description or summary as a string and metadata such as word count." + }, + "aiAgent": { + "useCase": "Use this tool to generate human-readable summaries or descriptive texts from database schemas or query results, helpful for documentation, reporting, or automated commentary generation on data content or structure.", + "limitations": "Cannot execute queries that return very large datasets efficiently. Generated text quality depends on the richness of schema or query results input and may require human review.", + "examples": [ + "Generate a summary of the schema for a customer database.", + "Produce descriptive text explaining results of a sales query.", + "Create documentation text for table structures in a database." + ] + }, + "tags": [ + "database", + "text-generation", + "schema", + "query", + "documentation", + "summary" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=myServer;Database=myDB;User Id=user;Password=pass;\",\"query\":\"SELECT * FROM Sales WHERE SaleDate > '2023-01-01'\",\"includeSchemaDetails\":true,\"maxLength\":300,\"language\":\"en\"}", + "description": "Generate a descriptive summary about recent sales data including schema info." + }, + { + "inputJson": "{\"connectionString\":\"Server=prodServer;Database=customers;User Id=admin;Password=secret;\",\"query\":\"\",\"includeSchemaDetails\":true,\"maxLength\":400,\"language\":\"en\"}", + "description": "Generate detailed description of entire database schema." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Text", + "context": null + } + }, + { + "name": "database-management.generateJSON", + "description": "Generates JSON-formatted output from database query results. Accepts database connection parameters and a SQL query, executes the query, and returns the resulting rows as an array of JSON objects representing each database record.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string to establish connection (e.g., PostgreSQL, MySQL)", + "required": true, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "SQL SELECT query to execute against the database", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include query metadata (e.g., column names, row count) in the output", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to retrieve and include in the JSON output (limits result size)", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'data' field with an array of JSON objects (rows), and optionally a 'metadata' field with query information" + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to extract structured data in JSON format from a relational database by running SQL queries. It is ideal for preparing data for processing, analysis, or integration with JSON-based systems.", + "limitations": "Cannot perform database updates or schema modifications. Only supports SELECT queries for generating JSON output. Does not handle complex transformations beyond SQL query capabilities.", + "examples": [ + "Generate a JSON array of users who signed up after Jan 1, 2024.", + "Return up to 500 rows of products with their prices in JSON format.", + "Include column metadata along with the query results in JSON." + ] + }, + "tags": [ + "database", + "JSON", + "query", + "data extraction", + "SQL", + "output generation" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"postgresql://user:pass@localhost:5432/mydb\",\"query\":\"SELECT id, name, email FROM users WHERE signup_date > '2024-01-01'\",\"includeMetadata\":true,\"maxRows\":100}", + "description": "Get JSON output of users signed up after January 1, 2024 with metadata" + }, + { + "inputJson": "{\"connectionString\":\"mysql://user:pass@localhost:3306/shop\",\"query\":\"SELECT product_id, name, price FROM products ORDER BY price DESC\",\"includeMetadata\":false,\"maxRows\":500}", + "description": "Generate JSON of up to 500 most expensive products without metadata" + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "database-management.generateTest", + "description": "This tool generates automated test code for database queries and operations based on provided database schema and query specifications. It accepts input parameters describing table schemas, query types, and expected outcomes, then produces code snippets in popular testing frameworks to verify database correctness and integrity.", + "category": "database-management", + "parameters": [ + { + "name": "databaseSchema", + "type": "object", + "description": "An object representing the database schema including tables, columns, types, and constraints required to generate meaningful tests.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryType", + "type": "string", + "description": "Type of database operation to generate tests for, e.g., SELECT, INSERT, UPDATE, DELETE.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Target testing framework or language for the generated tests, such as Jest, Mocha, or Python unittest.", + "required": false, + "defaultValue": "\"Jest\"" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Flag indicating whether to include edge case scenarios in the generated tests to improve coverage.", + "required": false, + "defaultValue": "true" + }, + { + "name": "expectedResults", + "type": "array", + "description": "Array of expected output data or conditions to validate within the generated tests.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string keyed by filename or test case name." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to automatically produce robust database test cases to validate query correctness, data integrity, and schema constraints from a given schema and intended query operation. This automates test writing, reduces manual coding effort, and ensures consistent coverage.", + "limitations": "The tool does not execute or validate the generated test code, nor does it handle complex query logic beyond typical CRUD operations. It requires accurate schema input and cannot infer database state or business logic.", + "examples": [ + "Generate SQL INSERT operation tests for a user table using Jest.", + "Create DELETE query tests including edge cases for a product inventory schema in Mocha.", + "Produce SELECT query tests validating expected result sets with Python unittest." + ] + }, + "tags": [ + "database", + "testing", + "code-generation", + "automation", + "query", + "schema", + "test-case" + ], + "examples": [ + { + "inputJson": "{\"databaseSchema\":{\"tables\":[{\"name\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"int\",\"primaryKey\":true},{\"name\":\"email\",\"type\":\"varchar\",\"unique\":true},{\"name\":\"age\",\"type\":\"int\"}]}]},\"queryType\":\"INSERT\",\"testFramework\":\"Jest\",\"includeEdgeCases\":true,\"expectedResults\":[{\"id\":1,\"email\":\"test@example.com\",\"age\":30}]}", + "description": "Generate Jest test code for INSERT queries on a users table including edge cases." + }, + { + "inputJson": "{\"databaseSchema\":{\"tables\":[{\"name\":\"products\",\"columns\":[{\"name\":\"product_id\",\"type\":\"int\",\"primaryKey\":true},{\"name\":\"price\",\"type\":\"decimal\"}]}]},\"queryType\":\"DELETE\",\"testFramework\":\"Mocha\",\"includeEdgeCases\":false}", + "description": "Create Mocha test cases for DELETE operations on a products table without edge cases." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "database-management.createText", + "description": "Creates a new text record entry in a specified database table. Accepts the target table name, a JSON object representing the text content and related metadata fields, and optional flags for validation and overwrite behavior. Returns a confirmation with the inserted record ID and status.", + "category": "database-management", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "The name of the database table where the text record should be inserted.", + "required": true, + "defaultValue": "" + }, + { + "name": "textData", + "type": "object", + "description": "A JSON object containing key-value pairs representing the text content and associated metadata fields to be inserted into the record.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the textData against the database schema before insertion. Enables preventing invalid field types or missing required fields.", + "required": false, + "defaultValue": "true" + }, + { + "name": "overwriteIfExists", + "type": "boolean", + "description": "If true, overwrite an existing record with the same primary key instead of creating a new entry.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the operation status, inserted record ID if successful, and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add new textual data entries into a structured database. It is suited for scenarios like logging comments, saving user notes, creating document records, or storing messages in a database table. It ensures flexible input through JSON for diverse text data and metadata fields.", + "limitations": "Does not handle complex transactions, bulk inserts, or relations between tables. Does not support automatic schema migrations or advanced validation beyond simple field presence and type checking.", + "examples": [ + "Insert a new customer feedback comment into the feedback table.", + "Add a new article with title, body text, and author info into an articles table.", + "Save user-generated notes with timestamps and tags into the notes database." + ] + }, + "tags": [ + "database", + "create", + "text", + "insert", + "record", + "content", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"comments\",\"textData\":{\"commentText\":\"Great product!\",\"userId\":\"12345\",\"timestamp\":\"2024-06-01T12:30:00Z\"},\"validateSchema\":true,\"overwriteIfExists\":false}", + "description": "Insert a customer comment text record into the comments table with validation and no overwrite." + }, + { + "inputJson": "{\"tableName\":\"articles\",\"textData\":{\"title\":\"New AI Trends\",\"body\":\"AI is evolving rapidly...\",\"author\":\"Jane Doe\"},\"validateSchema\":true}", + "description": "Create a new article record with title, body, and author fields in the articles table with schema validation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "database-management.createImage", + "description": "Creates and stores an image representation derived from database query results. Accepts a database connection string and a SQL query to fetch data, optionally specifying visualization type and image format. Processes query output to generate a chart or graph image, returning the image encoded as a Base64 string.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "A valid database connection string to connect and query the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "A SQL query string to execute and retrieve data for visualization.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of visualization to generate from query results. Examples: 'bar', 'line', 'pie'. Defaults to 'bar'.", + "required": false, + "defaultValue": "bar" + }, + { + "name": "imageFormat", + "type": "string", + "description": "Output image format. Supported formats: 'png', 'jpeg', 'svg'. Defaults to 'png'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output image in pixels. Defaults to 800.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output image in pixels. Defaults to 600.", + "required": false, + "defaultValue": "600" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend in the generated chart image. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the Base64-encoded image data URL and metadata such as image format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize and store database query results as images, such as charts or graphs, for reporting, dashboards, or embedding in documents. It is appropriate when the agent has SQL access credentials and requires image representations of query data in common graphical formats.", + "limitations": "This tool does not support complex or multi-step data transformations beyond the SQL query. Visualization types are limited to standard charts (bar, line, pie). It cannot edit existing images or visualize non-tabular data directly.", + "examples": [ + "Generate a bar chart image from sales data with a custom width and height.", + "Create a pie chart image from customer region data, output as SVG format.", + "Visualize query results as a line chart without a legend." + ] + }, + "tags": [ + "database", + "image", + "visualization", + "chart", + "database-query", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=mydbserver;Database=salesdb;User Id=admin;Password=secret;\",\"query\":\"SELECT region, SUM(amount) as total_sales FROM sales GROUP BY region\",\"chartType\":\"pie\",\"imageFormat\":\"png\",\"width\":600,\"height\":600,\"includeLegend\":true}", + "description": "Create a pie chart PNG image showing total sales by region from the sales database." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=analytics;Database=metrics;User Id=user;Password=pwd;\",\"query\":\"SELECT date, visits FROM webpage_traffic ORDER BY date\",\"chartType\":\"line\",\"imageFormat\":\"jpeg\",\"width\":1024,\"height\":768,\"includeLegend\":false}", + "description": "Generate a JPEG line chart of webpage visits over time without a legend from metrics database." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "database-management.createContract", + "description": "Creates a new contract record in the database by accepting contract details such as parties involved, terms, start and end dates. It processes the input to structure and validate the contract data, then stores it in the database, returning a confirmation along with the stored contract ID and timestamp.", + "category": "database-management", + "parameters": [ + { + "name": "contractTitle", + "type": "string", + "description": "The title or name of the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "An array of party names or identifiers involved in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractTerms", + "type": "string", + "description": "The full text or summary of the contract's terms and conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The contract start date in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The contract end date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "contractType", + "type": "string", + "description": "Type or category of the contract (e.g., NDA, Sales Agreement).", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata related to the contract (e.g., contract manager, department).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the confirmation of creation, unique contract ID, timestamp of creation, and the stored contract data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add a new contract record into a database system as part of contract lifecycle management, ensuring the contract data is structured, validated, and stored for tracking and retrieval. Suitable for automated contract management workflows and record keeping.", + "limitations": "This tool does not perform contract validation against legal standards or natural language understanding of contract clauses. It does not handle document signing or external contract management system integration.", + "examples": [ + "Create a new NDA contract record with parties, terms, and dates.", + "Store a sales agreement contract with metadata including responsible department.", + "Add a contract with just title, parties, terms, and start date, leaving optional fields blank." + ] + }, + "tags": [ + "database", + "contract", + "create", + "management", + "record", + "legal" + ], + "examples": [ + { + "inputJson": "{\"contractTitle\":\"NDA Agreement\",\"parties\":[\"Company A\",\"Company B\"],\"contractTerms\":\"Confidentiality and non-disclosure terms.\",\"startDate\":\"2024-07-01\",\"endDate\":\"2026-07-01\",\"contractType\":\"NDA\",\"metadata\":{\"department\":\"Legal\"}}", + "description": "Create a Non-Disclosure Agreement contract record between two companies with terms, dates, contract type, and metadata." + }, + { + "inputJson": "{\"contractTitle\":\"Sales Contract Q3\",\"parties\":[\"Sales Team\",\"Distributor X\"],\"contractTerms\":\"Terms for product sales and delivery schedules.\",\"startDate\":\"2024-07-15\"}", + "description": "Add a sales contract record without end date or metadata, only required fields plus contract title, parties, terms, and start date." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "database-management.createCommit", + "description": "Creates a new commit entry in a database version control system, accepting a commit message, author info, and optional metadata; processes the input to record the commit snapshot and returns the commit identifier along with metadata such as timestamp and status.", + "category": "database-management", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "The descriptive message summarizing the changes in this commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author making the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the author.", + "required": true, + "defaultValue": "" + }, + { + "name": "parentCommitId", + "type": "string", + "description": "Identifier of the parent commit to link this new commit, if any.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional commit metadata (e.g., tags, reviewers).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the new commit ID, timestamp of creation, author info, commit message, parent commit reference, and status of the commit operation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically record changes to a database schema or dataset snapshot by creating commit records in a version-controlled database environment. Ideal for managing data change history, audit trails, or collaborative database development.", + "limitations": "This tool does not handle the actual data diffing or merging processes, nor does it manage conflict resolution; it only creates commit metadata entries.", + "examples": [ + "Create a commit for schema updates with author and message details.", + "Record a new data snapshot commit linking to a previous commit ID.", + "Add a commit including additional metadata like review status." + ] + }, + "tags": [ + "database", + "commit", + "version-control", + "management", + "metadata", + "authoring" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Add new users table and indexes\",\"authorName\":\"Jane Smith\",\"authorEmail\":\"jane.smith@example.com\"}", + "description": "Create a commit with a message and author info only." + }, + { + "inputJson": "{\"commitMessage\":\"Fix user email validation\",\"authorName\":\"John Doe\",\"authorEmail\":\"john.doe@example.com\",\"parentCommitId\":\"abc123\"}", + "description": "Create a commit linked to a previous commit ID." + }, + { + "inputJson": "{\"commitMessage\":\"Update permissions schema\",\"authorName\":\"Alice Brown\",\"authorEmail\":\"alice.brown@example.com\",\"metadata\":{\"reviewedBy\":\"Bob Lee\",\"priority\":\"high\"}}", + "description": "Create a commit including additional metadata fields." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "testing-automation.createFile", + "description": "Creates a file with specified content and encoding at a given file path, facilitating setup and teardown steps in automated testing workflows. Accepts file path, content as string, encoding type, and a flag to overwrite existing files. Outputs metadata about the created file including path, size, and timestamp.", + "category": "testing-automation", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The destination path where the file will be created including filename and extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The text content to write into the file. Can be empty for an empty file.", + "required": true, + "defaultValue": "" + }, + { + "name": "encoding", + "type": "string", + "description": "The character encoding used to write the content. Common values are 'utf-8', 'ascii', or 'base64'.", + "required": false, + "defaultValue": "utf-8" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "If true, overwrites the file if it already exists; otherwise, throws an error to avoid data loss.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing file metadata: 'filePath' (string), 'fileSizeBytes' (number), 'creationTimestamp' (string ISO 8601 format), and 'message' (string) indicating success or failure details." + }, + "aiAgent": { + "useCase": "Use this tool when automated tests require generating files with specific content and encoding before test execution, such as configuration files, test input data, or logs for validation. It's especially useful for setup procedures in test automation pipelines where dynamic file creation is needed.", + "limitations": "Cannot create files in directories without write permissions; does not validate file path syntax beyond basic string checks; does not support streaming large content chunks beyond memory limitations.", + "examples": [ + "Create a JSON config file with UTF-8 encoding before test start.", + "Create an empty log file if not already present, without overwriting.", + "Create a file with base64 encoded contents for binary test artifacts." + ] + }, + "tags": [ + "file", + "creation", + "testing", + "automation", + "setup", + "file-management", + "test-data" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/tmp/test-config.json\",\"content\":\"{\\\"env\\\":\\\"test\\\", \\\"timeout\\\":30}\",\"encoding\":\"utf-8\",\"overwrite\":true}", + "description": "Create or overwrite a JSON config file for a test environment." + }, + { + "inputJson": "{\"filePath\":\"/tmp/logs/test.log\",\"content\":\"\",\"encoding\":\"utf-8\",\"overwrite\":false}", + "description": "Create an empty log file if it does not exist, without overwriting any existing file." + }, + { + "inputJson": "{\"filePath\":\"/tmp/bin/testArtifact.b64\",\"content\":\"c3ViamVjdCBkYXRhIGZvciB0ZXN0\",\"encoding\":\"base64\",\"overwrite\":true}", + "description": "Create a binary test artifact file from base64 content, overwriting if present." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "devops.analyzeCustomer", + "description": "This tool accepts customer transaction and interaction data as input, analyzes deployment-related customer metrics such as feature usage frequency, service uptime impact on user satisfaction, and incident response times, and outputs a detailed report that helps DevOps teams understand customer behavior in relation to infrastructure performance.", + "category": "devops", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "An array of customer interaction and transaction records relevant to deployment and infrastructure usage (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying the start and end dates for analysis, e.g., {\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"} (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of specific deployment-related customer metrics to analyze, such as ['featureUsage','incidentResponse','uptimeImpact'] (optional).", + "required": false, + "defaultValue": "[\"featureUsage\",\"incidentResponse\",\"uptimeImpact\"]" + }, + { + "name": "includeRawData", + "type": "boolean", + "description": "Whether to include raw customer data in the output report for transparency (optional).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summarized metrics, trends, and recommendations for DevOps adjustments to improve customer experience." + }, + "aiAgent": { + "useCase": "Use this tool when needing to correlate customer behavior and satisfaction data with deployment and infrastructure performance metrics to optimize service delivery and incident handling processes. Ideal for generating actionable insights from customer usage related to deployment changes and service health.", + "limitations": "This tool does not perform non-deployment-related customer behavior analysis such as marketing segmentation or sales forecasting. It requires properly formatted customer and deployment data inputs to function correctly.", + "examples": [ + "Analyze customer feature usage impact on deployment stability over the past quarter.", + "Generate a report relating customer incident reports to deployment change frequency.", + "Assess the correlation between service uptime and customer satisfaction scores within a specified time range." + ] + }, + "tags": [ + "analysis", + "customer", + "devops", + "deployment", + "metrics", + "infrastructure", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"customerId\":\"c123\",\"featureUsed\":\"login\",\"timestamp\":\"2024-02-12T10:00:00Z\",\"incidentReported\":false},{\"customerId\":\"c124\",\"featureUsed\":\"upload\",\"timestamp\":\"2024-02-13T11:00:00Z\",\"incidentReported\":true}],\"timeRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-03-31\"},\"metrics\":[\"featureUsage\",\"incidentResponse\"],\"includeRawData\":false}", + "description": "Analyze feature usage and incident response reported by customers in the first quarter of 2024, excluding raw data in the report." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "frontend-development.downloadCode", + "description": "Downloads source code files or entire front-end projects from specified repositories or URLs. Accepts input parameters such as repository URL, branch, file path, and output format. It processes the inputs by accessing the specified code source, retrieves the requested code files, bundles them if needed, and returns downloadable content in ZIP or individual file formats.", + "category": "frontend-development", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the repository or code source to download from (e.g., GitHub, GitLab). Supports HTTPS links.", + "required": true, + "defaultValue": "" + }, + { + "name": "branch", + "type": "string", + "description": "The specific branch, tag, or commit hash to download code from. Defaults to repository default branch if omitted.", + "required": false, + "defaultValue": "main" + }, + { + "name": "filePath", + "type": "string", + "description": "Optional specific file or directory path within the repository to download. If empty, entire repository is downloaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired format of the downloaded code. Options include 'zip' for an archive, or 'raw' for single files.", + "required": false, + "defaultValue": "zip" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Whether to include external dependencies referenced by the code (e.g., node_modules or CDN assets). Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the download link or raw content string, file size in bytes, and metadata such as file names and repository info." + }, + "aiAgent": { + "useCase": "Use this tool when an AI assistant needs to programmatically download front-end source code from a version-controlled repository or URL to analyze, preview, or modify it. Useful for generating code snippets, running static analysis, or bundling code for deployments.", + "limitations": "Cannot authenticate private repositories without credentials. Does not execute or build the code, only retrieves raw files. Large repositories may have download size limits or timeouts.", + "examples": [ + "Download the main branch source code of a GitHub front-end project as a ZIP archive.", + "Get the raw content of a specific React component file from a repository's develop branch.", + "Download a subdirectory containing stylesheets only, excluding other files." + ] + }, + "tags": [ + "frontend", + "code", + "download", + "repository", + "zip", + "source", + "client-side" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/frontend-app\",\"branch\":\"main\",\"filePath\":\"src/components/Header.js\",\"outputFormat\":\"raw\",\"includeDependencies\":false}", + "description": "Download the raw content of the Header.js component file from the main branch." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/frontend-app\",\"branch\":\"feature/login-page\",\"filePath\":\"assets/css\",\"outputFormat\":\"zip\",\"includeDependencies\":false}", + "description": "Download the CSS assets folder as a ZIP archive from a feature branch." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/example/project\",\"outputFormat\":\"zip\",\"includeDependencies\":true}", + "description": "Download the entire repository as a ZIP archive including dependencies." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "frontend-development.analyzeJSON", + "description": "Analyzes JSON data structures to provide insights on key usage, data types, nesting depth, and potential schema irregularities. Accepts JSON input as a string and outputs a detailed summary report including detected keys, value type distributions, maximum nesting depth, and anomalies such as inconsistent types or missing expected fields.", + "category": "frontend-development", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "The JSON data input as a string to be analyzed. Required for the analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedSchema", + "type": "object", + "description": "Optional JSON schema object to validate and compare the input JSON structure against, highlighting deviations.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum nesting depth to analyze. Deeper levels beyond this limit will be ignored to optimize performance.", + "required": false, + "defaultValue": "10" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to detect and report anomalies such as missing keys, inconsistent data types, or unexpected nulls.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing detected keys with data types, frequency counts, maximum nesting depth, and any anomalies found compared to the expected schema if provided." + }, + "aiAgent": { + "useCase": "Use this tool to gain a comprehensive understanding of JSON data structures encountered in frontend development, especially useful for validating incoming API responses, generating UI forms dynamically, or preparing data validation schemas. It helps agents assess structural consistency and detect data irregularities automatically.", + "limitations": "Cannot execute dynamic transformations or full schema validation beyond basic type and structure checks. It does not correct JSON or fetch data from URLs; input must be provided as a JSON string.", + "examples": [ + "Analyze a JSON API response to summarize its keys and types.", + "Detect anomalies in user configuration JSON data compared to an expected schema.", + "Determine maximum nesting depth and data type distribution in large JSON payloads." + ] + }, + "tags": [ + "frontend", + "json", + "analysis", + "data-validation", + "schema-inspection", + "api", + "ui-development" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"user\\\":{\\\"id\\\":123,\\\"name\\\":\\\"Alice\\\"},\\\"active\\\":true,\\\"roles\\\":[\\\"admin\\\",\\\"editor\\\"]}\"}", + "description": "Analyze a typical user data JSON to extract keys, types, and nesting." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"products\\\":[{\\\"id\\\":1,\\\"price\\\":19.99},{\\\"id\\\":2,\\\"price\\\":null}],\\\"total\\\":2}\"}", + "description": "Analyze product list JSON to identify null price anomaly and data types." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"config\\\":{\\\"theme\\\":\\\"dark\\\",\\\"notifications\\\":true,\\\"itemsPerPage\\\":20}}\",\"expectedSchema\":{\"config\":{\"theme\":\"string\",\"notifications\":\"boolean\",\"itemsPerPage\":\"number\"}}", + "description": "Analyze configuration JSON against an expected schema to detect mismatches." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "frontend-development.analyzeDataset", + "description": "Analyzes client-side frontend datasets by processing structured input data to provide summary statistics, detect anomalies, and identify patterns relevant to UI/UX optimization. Accepts dataset arrays with customizable analysis parameters, outputs a detailed analytical report including metrics, correlations, and detected issues.", + "category": "frontend-development", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "An array of data objects representing frontend analytics data (e.g., user interactions, events).", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "The specific type of analysis to perform, such as 'summary', 'anomalyDetection', or 'correlation'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object specifying startDate and endDate to filter data within a specific time window.", + "required": false, + "defaultValue": "" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional thresholds for anomaly detection or alerts, defined as key-value pairs.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "If true, include basic visualization data (e.g., chart points) in the output report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured analysis report including summary statistics, detected anomalies, correlation matrices, and optional visualization data relevant to frontend dataset optimization." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze frontend datasets derived from user interaction logs, event tracking, or UI performance metrics to extract actionable insights for improving user experience or interface functionality. It's ideal for automating data-driven frontend development decisions.", + "limitations": "This tool analyzes provided datasets but cannot collect or preprocess raw frontend data from external sources; it also does not perform real-time data streaming analysis.", + "examples": [ + "Analyze the dataset to get summary statistics and detect anomalies.", + "Provide correlation analysis between user clicks and page load times within the last month.", + "Generate an analysis report including visualizations for UI event datasets." + ] + }, + "tags": [ + "frontend", + "dataset analysis", + "UI/UX optimization", + "analytics", + "anomaly detection", + "correlation analysis" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"event\":\"click\",\"timestamp\":\"2023-05-01T12:00:00Z\",\"value\":1},{\"event\":\"click\",\"timestamp\":\"2023-05-01T12:05:00Z\",\"value\":1}],\"analysisType\":\"summary\"}", + "description": "Summarize basic statistics of user click events." + }, + { + "inputJson": "{\"dataset\":[{\"event\":\"load\",\"timestamp\":\"2023-05-01T12:00:00Z\",\"duration\":250},{\"event\":\"load\",\"timestamp\":\"2023-05-01T12:05:00Z\",\"duration\":200}],\"analysisType\":\"anomalyDetection\",\"thresholds\":{\"duration\":220}}", + "description": "Detect load events with duration exceeding 220ms as anomalies." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "frontend-development.uploadCode", + "description": "Uploads client-side code files to a specified remote development environment or repository. Accepts source code as text or files, validates file types, and returns upload status with file metadata and any errors encountered. Supports optional version tagging and authentication.", + "category": "frontend-development", + "parameters": [ + { + "name": "codeFiles", + "type": "array", + "description": "An array of code file objects to upload; each with filename and content (string).", + "required": true, + "defaultValue": "" + }, + { + "name": "uploadTarget", + "type": "string", + "description": "The destination for the uploaded code, e.g., a repository URL or development server endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or API key to authorize the upload operation.", + "required": false, + "defaultValue": "" + }, + { + "name": "versionTag", + "type": "string", + "description": "Optional version or tag label associated with this upload for tracking.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag to allow overwriting existing files with the same names at the target.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, list of uploaded files with metadata, and any error messages or warnings encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically upload frontend code files—such as HTML, CSS, JavaScript modules—to a development environment or repository as part of deployment, versioning, or collaborative development processes. It supports authenticated uploads and optional version tagging to manage code releases.", + "limitations": "This tool does not perform code compilation, linting, or testing; it only uploads raw code files. It requires a reachable upload target and valid authentication if needed. It does not handle merge conflicts or complex version control workflows beyond basic overwrite functionality.", + "examples": [ + "Upload three frontend source files to a staging server with authentication token.", + "Send updated UI code modules to a remote repository with a version tag 'v2.1.0', allowing overwrite.", + "Upload a single HTML file to a specified endpoint without authentication, no overwriting existing file." + ] + }, + "tags": [ + "frontend", + "code upload", + "deployment", + "versioning", + "authentication", + "files", + "remote upload" + ], + "examples": [ + { + "inputJson": "{\"codeFiles\":[{\"filename\":\"index.html\",\"content\":\"Hello\"},{\"filename\":\"styles.css\",\"content\":\"body{color:#333;}\"}],\"uploadTarget\":\"https://devserver.example.com/upload\",\"authToken\":\"abc123token\",\"versionTag\":\"v1.0.3\",\"overwriteExisting\":true}", + "description": "Upload multiple frontend source files to a remote development server with authentication and version tagging, allowing overwriting existing files." + }, + { + "inputJson": "{\"codeFiles\":[{\"filename\":\"app.js\",\"content\":\"console.log('App started');\"}],\"uploadTarget\":\"https://repo.example.com/api/upload\",\"authToken\":\"tokenXYZ\",\"overwriteExisting\":false}", + "description": "Upload a single JavaScript file to a remote repository endpoint requiring authentication, without overwriting existing files." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "frontend-development.uploadDocument", + "description": "Uploads a document file to a specified server endpoint, accepting common document formats like PDF, DOCX, or TXT. The tool handles file validation and transmits the document with optional metadata, returning the server's response including success status and document URL or error message.", + "category": "frontend-development", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path or URL of the document file to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "The MIME type of the document file, e.g., 'application/pdf'.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata as key-value pairs to attach with the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "serverEndpoint", + "type": "string", + "description": "The URL of the server API endpoint to which the document will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token for secure API access.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload success status, URL of the uploaded document if successful, and error message if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload document files from a client-side application to a backend server, including scenarios like saving user submitted forms, uploading reports or legal documents. It supports passing metadata and handling authentication.", + "limitations": "This tool cannot process or transform the document contents; it only handles file transmission. It depends on the server API's availability and proper configuration. It does not support large file chunking or resumable uploads.", + "examples": [ + "Upload a PDF report with title metadata to the company's document server.", + "Send a user-submitted DOCX file to the backend with authorization token included.", + "Upload a plain text file to a public API endpoint without authentication." + ] + }, + "tags": [ + "upload", + "document", + "frontend", + "file-upload", + "api", + "client-side", + "file-transfer" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/user/docs/resume.pdf\",\"fileType\":\"application/pdf\",\"metadata\":{\"title\":\"Resume 2024\",\"author\":\"Jane Doe\"},\"serverEndpoint\":\"https://api.example.com/upload\",\"authToken\":\"Bearer abc123token\"}", + "description": "Upload a PDF resume to a secured endpoint with metadata and auth token." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/files/sample.docx\",\"fileType\":\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\"metadata\":{},\"serverEndpoint\":\"https://upload.example.com/documents\",\"authToken\":\"\"}", + "description": "Upload a DOCX document fetched from a public URL to an endpoint without authentication." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "frontend-development.generateJSON", + "description": "Generates a structured JSON object representing frontend UI components based on provided component specifications, hierarchy, and properties. Accepts input as an object detailing components and their attributes, processes the structure, and outputs a JSON string suitable for dynamic UI rendering or configuration.", + "category": "frontend-development", + "parameters": [ + { + "name": "componentTree", + "type": "object", + "description": "An object representing the hierarchical structure of UI components with their types, properties, and children.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMeta", + "type": "boolean", + "description": "Flag to include metadata such as timestamps and version info in the output JSON.", + "required": false, + "defaultValue": "false" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Whether to format the output JSON string with indentation for easier readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "version", + "type": "string", + "description": "A string specifying the version tag to embed in the JSON metadata if includeMeta is true.", + "required": false, + "defaultValue": "1.0.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JSON string and optionally metadata if includeMeta is true." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create or update structured JSON representations of frontend user interface components and their properties for dynamic rendering or configuration files. It's particularly useful when dynamically building UI definitions based on input specifications or automation workflows.", + "limitations": "This tool does not render UI components visually; it only generates JSON representations. It cannot validate component compatibility beyond structure, nor handle any styling or behavior logic beyond provided properties.", + "examples": [ + "Generate JSON for a form with text input and submit button.", + "Create a JSON structure for a nested layout of containers and interactive elements.", + "Produce JSON configuration for a UI component tree with metadata included." + ] + }, + "tags": [ + "json", + "frontend", + "ui-generation", + "component-structure", + "configuration", + "dynamic-ui" + ], + "examples": [ + { + "inputJson": "{\"componentTree\":{\"type\":\"form\",\"props\":{\"id\":\"loginForm\"},\"children\":[{\"type\":\"input\",\"props\":{\"type\":\"text\",\"name\":\"username\",\"placeholder\":\"Enter username\"}},{\"type\":\"button\",\"props\":{\"type\":\"submit\",\"text\":\"Login\"}}]}}", + "description": "Generate JSON for a simple login form with username input and submit button." + }, + { + "inputJson": "{\"componentTree\":{\"type\":\"div\",\"props\":{\"className\":\"container\"},\"children\":[{\"type\":\"header\",\"props\":{},\"children\":[{\"type\":\"h1\",\"props\":{\"text\":\"Welcome\"}}]},{\"type\":\"section\",\"props\":{},\"children\":[{\"type\":\"p\",\"props\":{\"text\":\"This is a paragraph.\"}}]}]}}", + "description": "Create JSON for a page layout with header and section containing a paragraph." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "JSON", + "context": null + } + }, + { + "name": "frontend-development.generateTest", + "description": "Generates frontend unit test code for specified JavaScript or TypeScript components or functions. Accepts component or function source code along with test framework preference and test scenarios. Produces ready-to-use test code covering rendering, events, and expected outputs.", + "category": "frontend-development", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The source code of the component or function to generate tests for, including all necessary imports.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The testing framework to target, e.g., Jest, Mocha, or Testing Library.", + "required": true, + "defaultValue": "Jest" + }, + { + "name": "componentName", + "type": "string", + "description": "The name of the component or function to generate tests for, if multiple exports exist.", + "required": false, + "defaultValue": "" + }, + { + "name": "testScenarios", + "type": "array", + "description": "An array of user-defined test scenario descriptions indicating input and expected output.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "useTypeScript", + "type": "boolean", + "description": "Whether to generate test code in TypeScript instead of plain JavaScript.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeSnapshotTests", + "type": "boolean", + "description": "Whether to include snapshot tests for React components (if applicable).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string, and metadata such as the target test framework." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically create unit tests or component tests for frontend codebases to increase coverage and reliability without manual test writing. It is especially useful in continuous integration pipelines and code generation assistants.", + "limitations": "Does not create end-to-end or integration tests; test scenarios depend on user inputs or source code quality; may not handle complex hooks or external dependencies perfectly.", + "examples": [ + "Generate Jest tests for a React button component with click event", + "Create Mocha tests for a plain JavaScript utility function", + "Produce TypeScript-compatible tests for a Vue.js component with snapshot testing enabled" + ] + }, + "tags": [ + "frontend", + "testing", + "code-generation", + "unit-testing", + "javascript", + "typescript", + "react", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"import React from 'react';\\nexport function Button({onClick, label}) {\\n return ;\\n}\",\"testFramework\":\"Jest\",\"componentName\":\"Button\",\"testScenarios\":[{\"description\":\"renders button with label\",\"input\":{\"label\":\"Click me\"},\"expectedOutput\":\"button contains text 'Click me'\"},{\"description\":\"calls onClick handler when clicked\",\"input\":{},\"expectedOutput\":\"onClick function is called on button click\"}],\"useTypeScript\":false,\"includeSnapshotTests\":true}", + "description": "Generate Jest unit tests for a simple React Button component including rendering and event tests." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "frontend-development.generateDataset", + "description": "Generates a customizable dataset of user interface components data for frontend development purposes. Accepts parameters defining types of components, quantity, data fields, and format. Produces a structured dataset (JSON or CSV) suitable for prototyping, testing, or demos.", + "category": "frontend-development", + "parameters": [ + { + "name": "componentTypes", + "type": "array", + "description": "List of component types to include in the dataset, e.g. ['button', 'form', 'card'].", + "required": true, + "defaultValue": "" + }, + { + "name": "quantityPerType", + "type": "number", + "description": "Number of dataset entries to generate per component type.", + "required": true, + "defaultValue": "10" + }, + { + "name": "includeFields", + "type": "array", + "description": "Specific data fields to include for each component, e.g. ['id','label','state','style']", + "required": false, + "defaultValue": "[\"id\",\"label\",\"state\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated dataset: 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "randomSeed", + "type": "number", + "description": "Optional seed for random data generation to allow reproducibility.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dataset as a string in the requested format, and metadata about included components and total entries." + }, + "aiAgent": { + "useCase": "Use this tool when prototyping frontend applications or testing UI components that require realistic but synthetic datasets representing various UI elements. Useful to generate mock data suites with flexible tailoring for different component types and data fields.", + "limitations": "Does not generate real user data or ensure semantic correctness of component states beyond random or default patterns. Not suitable for backend data generation or full application data modeling.", + "examples": [ + "Generate 5 buttons and 5 cards with specific fields in JSON format.", + "Create a CSV dataset with 20 form components including id, label, and validation state.", + "Produce a dataset of 10 buttons with reproducible random data using a seed value." + ] + }, + "tags": [ + "frontend", + "dataset", + "UI components", + "mock data", + "prototyping", + "testing" + ], + "examples": [ + { + "inputJson": "{\"componentTypes\":[\"button\",\"card\"],\"quantityPerType\":5,\"includeFields\":[\"id\",\"label\",\"state\"],\"outputFormat\":\"json\"}", + "description": "Generate a JSON dataset with 5 buttons and 5 cards, including id, label, and state fields." + }, + { + "inputJson": "{\"componentTypes\":[\"form\"],\"quantityPerType\":20,\"includeFields\":[\"id\",\"label\",\"validationState\"],\"outputFormat\":\"csv\"}", + "description": "Create a CSV dataset containing 20 form components with id, label, and validation state." + }, + { + "inputJson": "{\"componentTypes\":[\"button\"],\"quantityPerType\":10,\"outputFormat\":\"json\",\"randomSeed\":42}", + "description": "Generate 10 button component entries in JSON format with random data reproducible using a seed." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "backend-development.analyzeSentence", + "description": "Analyzes a given sentence to extract its syntactic structure, identify parts of speech, and recognize key entities. Accepts a plain text sentence as input, performs linguistic analysis using natural language processing techniques, and outputs a structured summary including tokenization, POS tags, dependency parsing, and named entity recognition results.", + "category": "backend-development", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The input sentence to analyze linguistically. Should be a well-formed natural language sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the input sentence (e.g., 'en' for English) to apply appropriate language models.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeNamedEntities", + "type": "boolean", + "description": "Whether to perform named entity recognition and include entities in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeDependencyParsing", + "type": "boolean", + "description": "Whether to perform dependency parsing and include syntactic relations between words.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis result object containing arrays of tokens with their part-of-speech tags, identified named entities, and dependency parse relations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to linguistically analyze a sentence on the backend—e.g., for building language understanding features, preprocessing text for further NLP, or extracting structured linguistic information from user-generated sentences.", + "limitations": "It does not perform semantic comprehension or sentiment analysis. It requires well-formed sentences and may not handle highly ungrammatical or code-mixed inputs accurately.", + "examples": [ + "Analyze the grammatical structure of the sentence, 'The quick brown fox jumps over the lazy dog.'", + "Extract named entities from the sentence, 'Google was founded in 1998 by Larry Page and Sergey Brin.'", + "Get part-of-speech tags and dependency relations from, 'She gave him a book on Monday.'] },", + "tags", + "language-processing", + "syntax-analysis", + "nlp", + "backend", + "sentence-analysis", + "named-entity-recognition", + "dependency-parsing", + "text-processing", + "isNonsensical", + "false", + "nonsenseReason", + "", + "qualityScore", + "0.89", + "examples", + "[{\"description\":\"Analyze syntax and entities in a simple English sentence.\",\"inputJson\":\"{\\\"sentence\\\":\\\"The quick brown fox jumps over the lazy dog.\\\"}\"},{\"description\":\"Extract named entities from a sentence mentioning organizations and people.\",\"inputJson\":\"{\\\"sentence\\\":\\\"Google was founded in 1998 by Larry Page and Sergey Brin.\\\", \\\"includeNamedEntities\\\":true}\"},{\"description\":\"Perform POS tagging and dependency parsing on a sentence with a date.\",\"inputJson\":\"{\\\"sentence\\\":\\\"She gave him a book on Monday.\\\", \\\"includeDependencyParsing\\\":true}\"}] } " + ] + }, + "tags": [ + "language-processing", + "syntax-analysis", + "nlp", + "backend", + "sentence-analysis", + "named-entity-recognition", + "dependency-parsing", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"The quick brown fox jumps over the lazy dog.\"}", + "description": "Analyze syntax and entities in a simple English sentence." + }, + { + "inputJson": "{\"sentence\":\"Google was founded in 1998 by Larry Page and Sergey Brin.\", \"includeNamedEntities\":true}", + "description": "Extract named entities from a sentence mentioning organizations and people." + }, + { + "inputJson": "{\"sentence\":\"She gave him a book on Monday.\", \"includeDependencyParsing\":true}", + "description": "Perform POS tagging and dependency parsing on a sentence with a date." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "backend-development.analyzeOrder", + "description": "Analyzes an order object to evaluate status, calculate total price, check item availability, and identify potential issues such as missing information or inconsistencies. Accepts detailed order data including items, quantities, prices, customer info, and outputs a comprehensive analysis report with status flags, totals, and warnings.", + "category": "backend-development", + "parameters": [ + { + "name": "orderData", + "type": "object", + "description": "The complete order details including customer info, items array, quantities, prices, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkInventory", + "type": "boolean", + "description": "Whether to verify inventory availability for each ordered item.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) for total price calculations.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeWarnings", + "type": "boolean", + "description": "Include warnings about missing or inconsistent data in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing total price, order status (valid, pending, error), inventory availability flags, and an array of warnings or issues detected." + }, + "aiAgent": { + "useCase": "Use this tool when needing to validate and summarize an incoming order object for business processing workflows—e.g., before confirming an order, to check pricing accuracy, stock availability, and data completeness. It helps automate order integrity checks and preparation for further backend operations like payment or fulfillment.", + "limitations": "This tool does not process payment, does not update inventory counts, and cannot modify order data. It assumes well-structured input and does not replace full enterprise ERP integration.", + "examples": [ + "Analyze order for total pricing and identify any missing customer information.", + "Validate item stock availability before confirming the order.", + "Generate a summary report indicating if the order has any errors or warnings." + ] + }, + "tags": [ + "backend", + "order-processing", + "analysis", + "inventory-check", + "validation", + "ecommerce" + ], + "examples": [ + { + "inputJson": "{\"orderData\":{\"orderId\":\"12345\",\"customer\":{\"name\":\"John Doe\",\"email\":\"john@example.com\"},\"items\":[{\"sku\":\"A100\",\"name\":\"Widget\",\"quantity\":2,\"unitPrice\":25.0},{\"sku\":\"B200\",\"name\":\"Gadget\",\"quantity\":1,\"unitPrice\":100.0}],\"metadata\":{\"orderDate\":\"2024-06-10\"}},\"checkInventory\":true,\"currency\":\"USD\",\"includeWarnings\":true}", + "description": "Analyzing a valid order with two items to calculate total price and check inventory availability." + }, + { + "inputJson": "{\"orderData\":{\"orderId\":\"54321\",\"customer\":{\"name\":\"\",\"email\":\"\"},\"items\":[{\"sku\":\"X999\",\"name\":\"Mystery Item\",\"quantity\":1,\"unitPrice\":0}],\"metadata\":{\"orderDate\":\"2024-06-10\"}},\"checkInventory\":false,\"currency\":\"USD\",\"includeWarnings\":true}", + "description": "Analyzing an order with missing customer data and zero priced item to identify warnings without checking inventory." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Order", + "context": null + } + }, + { + "name": "backend-development.analyzeCSV", + "description": "This tool accepts a CSV file as input and performs statistical and structural analysis on its data. It evaluates data types per column, calculates basic statistics (mean, median, mode, min, max) for numeric columns, identifies missing or inconsistent data, and summarizes unique value counts for categorical columns. The output is a comprehensive report detailing these insights to help backend developers understand CSV data quality and structure for further processing or database integration.", + "category": "backend-development", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The CSV file content as a string to be analyzed, including headers.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate fields in the CSV. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the first row is a header row. If true, columns are named accordingly.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to analyze from the CSV to limit processing time. Analyzes entire file if not specified or zero.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results with keys for each column, including detected data type, basic statistics if numeric, count of missing values, count of unique values, and any data inconsistencies found." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly understand the contents and quality of CSV data in backend applications, such as before ingestion into databases or APIs. It helps identify data types, potential data quality issues, and provides statistical summaries to inform validation and storage design.", + "limitations": "This tool does not perform deep semantic analysis or data cleaning; it only provides descriptive statistics and structural insights. It may not handle extremely large CSV files efficiently without the maxRows parameter set.", + "examples": [ + "Analyze the uploaded sales_data.csv to understand the distribution of sales amounts and identify missing entries.", + "Check the format and quality of the user_list.csv file before importing to the user database.", + "Summarize the structure and data types in a CSV export from a third-party service for integration planning." + ] + }, + "tags": [ + "backend", + "csv", + "data-analysis", + "data-quality", + "statistics", + "data-validation" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"id,name,age,salary\\n1,Alice,30,70000\\n2,Bob,,65000\\n3,Charlie,25,\\n4,David,40,82000\",\"delimiter\":\",\",\"hasHeader\":true,\"maxRows\":0}", + "description": "Analyze a CSV containing employee id, name, age, and salary with some missing age and salary values." + }, + { + "inputJson": "{\"csvContent\":\"product;category;price;stock\\nPencil;Stationery;0.5;100\\nPen;Stationery;1.2;\\nNotebook;Stationery;2.5;50\",\"delimiter\":\";\",\"hasHeader\":true,\"maxRows\":100}", + "description": "Analyze a semicolon-delimited CSV of products with category, price, and stock quantity, including missing stock data." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "backend-development.renderFile", + "description": "Renders a file located on the server based on the specified file path and content type, converting it into a suitable output format for HTTP response or further processing. Supports common file types such as HTML, JSON, images, and plain text, and allows optional transformation or streaming.", + "category": "backend-development", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The absolute or relative path to the file on the server that needs to be rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "The MIME type to set for the output rendering, e.g., 'text/html', 'application/json', 'image/png'. If not specified, inferred based on file extension.", + "required": false, + "defaultValue": "" + }, + { + "name": "encoding", + "type": "string", + "description": "Encoding to use when reading text-based files, e.g., 'utf-8'. Ignored for binary files like images.", + "required": false, + "defaultValue": "utf-8" + }, + { + "name": "transformations", + "type": "array", + "description": "Optional array of transformation operations to apply to the file content before rendering, e.g., resizing for images or minification for CSS/JS files.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "stream", + "type": "boolean", + "description": "If true, stream the file content for large files to improve performance and reduce memory usage; otherwise, load the entire file content before rendering.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered content as a binary buffer or string, the final content type, and an optional stream handle if streaming is enabled." + }, + "aiAgent": { + "useCase": "Use this tool when you need to serve or process static or dynamic files from the backend, transforming or formatting them properly for HTTP responses or backend consumption. Ideal for rendering pages, API responses, or media files.", + "limitations": "Cannot execute dynamic server-side code embedded in files (e.g., server-side templating engines). Does not perform file uploads or downloads, only rendering existing server files.", + "examples": [ + "Render an HTML file located at '/views/index.html' with UTF-8 encoding.", + "Serve a PNG image with streaming enabled to reduce memory footprint.", + "Render a JSON file and force content type to 'application/json'." + ] + }, + "tags": [ + "backend", + "file rendering", + "http response", + "server", + "media", + "content transformation" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/var/www/html/index.html\",\"contentType\":\"text/html\",\"encoding\":\"utf-8\",\"stream\":false}", + "description": "Render an HTML file from the server with UTF-8 encoding without streaming." + }, + { + "inputJson": "{\"filePath\":\"/assets/images/logo.png\",\"stream\":true}", + "description": "Stream a PNG image file to minimize memory usage." + }, + { + "inputJson": "{\"filePath\":\"/data/users.json\",\"contentType\":\"application/json\",\"encoding\":\"utf-8\"}", + "description": "Render a JSON file ensuring the content type is application/json." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "backend-development.generateMetric", + "description": "Generates analytical metrics from server-side application logs or performance data. Accepts raw event data or preprocessed logs, applies aggregation and filtering based on parameters like time range, metric type, and grouping, and outputs computed metric values for monitoring or reporting.", + "category": "backend-development", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "Source of the input data, e.g., log file path, database connection string, or API endpoint URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "Type of metric to generate, such as 'requestLatency', 'errorRate', 'throughput', or 'custom'.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object with 'start' and 'end' ISO8601 datetime strings defining the time window to consider for metric generation.", + "required": false, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs to filter the input data, e.g., {\"statusCode\": 500} to include only failed requests.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "array", + "description": "List of fields to group the metric by, e.g., ['endpoint', 'method'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "aggregationFunction", + "type": "string", + "description": "Aggregation operation to apply, e.g., 'sum', 'average', 'count', 'max', 'min'.", + "required": false, + "defaultValue": "count" + }, + { + "name": "customExpression", + "type": "string", + "description": "An optional custom expression or formula for metric calculation, if metricType is 'custom'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the computed metric values, grouped as specified, along with metadata such as unit, computed time range, and aggregation used." + }, + "aiAgent": { + "useCase": "Use this tool when server-side application telemetry or logs need to be converted into meaningful metrics for monitoring, alerting, or analysis. Suitable for generating performance, error rate, or usage metrics from raw or preprocessed backend data, enabling decision-making or triggering automated actions.", + "limitations": "Does not perform data collection, storage, or visualization itself. Requires properly formatted input data accessible via the provided data source. Complex custom metric computations may require external processing.", + "examples": [ + "Generate average request latency grouped by API endpoint for the last 24 hours.", + "Calculate error rate from server logs filtering only 500 status codes within a specific time range.", + "Create a custom metric computing ratio of successful to total requests over the past week." + ] + }, + "tags": [ + "backend", + "analytics", + "metrics", + "performance", + "monitoring", + "aggregation" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"/var/log/api/server.log\",\"metricType\":\"requestLatency\",\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-02T00:00:00Z\"},\"groupBy\":[\"endpoint\"],\"aggregationFunction\":\"average\"}", + "description": "Calculate the average request latency grouped by API endpoint from server logs over one day." + }, + { + "inputJson": "{\"dataSource\":\"mongodb://db.example.com:27017/logs\",\"metricType\":\"errorRate\",\"filters\":{\"statusCode\":500},\"timeRange\":{\"start\":\"2024-05-10T00:00:00Z\",\"end\":\"2024-05-17T00:00:00Z\"}}", + "description": "Generate error rate metric by filtering only HTTP 500 errors from database logs over a week." + }, + { + "inputJson": "{\"dataSource\":\"https://metrics.api.company.com/data\",\"metricType\":\"custom\",\"customExpression\":\"successfulRequests / totalRequests\",\"timeRange\":{\"start\":\"2024-04-01T00:00:00Z\",\"end\":\"2024-04-30T23:59:59Z\"}}", + "description": "Compute a custom metric that calculates the success ratio of requests in April from an API endpoint." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "backend-development.generateEvent", + "description": "Generates a structured analytics event object from input parameters including event type, user details, event properties, and timestamps. Validates and formats these inputs into a consistent event payload for logging or further processing in backend systems.", + "category": "backend-development", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "The type or name of the event being generated (e.g., 'user_signup', 'purchase_made').", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier of the user associated with the event. Can be anonymous or known user ID.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp indicating when the event occurred. Defaults to current server time if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "properties", + "type": "object", + "description": "Additional key-value pairs describing event-specific attributes (e.g., item purchased, campaign source).", + "required": false, + "defaultValue": "" + }, + { + "name": "sessionId", + "type": "string", + "description": "Session identifier to group events belonging to the same user session.", + "required": false, + "defaultValue": "" + }, + { + "name": "anonymousId", + "type": "string", + "description": "Identifier for anonymous users when userId is not available.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured event object including validated and normalized fields like eventType, userId, timestamp, properties, sessionId, and anonymousId, ready for downstream analytics ingestion." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create standardized analytics event objects from disparate raw inputs for logging, tracking, or analytics pipelines in backend systems. Helpful in transforming loosely structured event data into a consistent schema.", + "limitations": "Does not send or store the event; only generates and validates the event object. Does not enrich events with user profile data or perform deduplication.", + "examples": [ + "Generate an event for a user signing up with user ID and referral campaign info.", + "Create a purchase event with timestamp and product details properties.", + "Produce an anonymous page view event without a user ID but with session tracking." + ] + }, + "tags": [ + "analytics", + "event", + "generation", + "backend", + "tracking", + "logging" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"user_signup\",\"userId\":\"user_12345\",\"timestamp\":\"2024-06-01T12:15:30Z\",\"properties\":{\"plan\":\"premium\",\"referrer\":\"google\"},\"sessionId\":\"sess_98765\"}", + "description": "Generate a user signup event with user ID, timestamp, plan type, and referrer info." + }, + { + "inputJson": "{\"eventType\":\"purchase_made\",\"userId\":\"user_54321\",\"properties\":{\"itemId\":\"item_abc123\",\"price\":29.99,\"currency\":\"USD\"}}", + "description": "Generate a purchase event including user ID and detailed purchase properties, no explicit timestamp uses current time." + }, + { + "inputJson": "{\"eventType\":\"page_view\",\"anonymousId\":\"anon_67890\",\"sessionId\":\"sess_12345\"}", + "description": "Generate an anonymous page view event with session tracking but no user ID." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "backend-development.generateCSV", + "description": "Generates a CSV formatted string from an array of objects or arrays. Accepts data input along with optional headers and delimiter configuration. Outputs a CSV string suitable for file saving or transmission.", + "category": "backend-development", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects or arrays representing the rows of data to convert into CSV format.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "array", + "description": "Optional array of strings specifying header names for the CSV columns. If omitted and data is an array of objects, headers are inferred from object keys.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "The delimiter string used to separate values in the output CSV. Defaults to comma ',' for standard CSV formatting.", + "required": false, + "defaultValue": "," + }, + { + "name": "includeBOM", + "type": "boolean", + "description": "If true, includes a UTF-8 BOM marker at the start of the CSV output for compatibility with some software.", + "required": false, + "defaultValue": "false" + }, + { + "name": "quoteAllFields", + "type": "boolean", + "description": "If true, encloses all fields in quotes. Otherwise, quotes only fields containing the delimiter, quotes, or line breaks.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV string under the 'csv' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to serialize structured data (arrays or objects) into CSV format for exporting, reporting, or data exchange purposes from backend systems. It supports customization of headers, delimiters, and quoting, enabling generation of CSV compliant with various consumer requirements.", + "limitations": "Does not write to files or streams—only returns CSV as a string. It does not parse CSV input or handle extremely large datasets (may consume high memory). Encoding is UTF-8 with optional BOM only.", + "examples": [ + "Generate CSV from a list of user objects with specified headers.", + "Create CSV with semicolon delimiter for European conventions.", + "Output CSV with BOM for Microsoft Excel compatibility." + ] + }, + "tags": [ + "backend", + "csv", + "data-formatting", + "export", + "serialization", + "api" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"email\":\"alice@example.com\"},{\"name\":\"Bob\",\"age\":25,\"email\":\"bob@example.com\"}],\"headers\":[\"name\",\"age\",\"email\"],\"delimiter\":\",\",\"includeBOM\":false,\"quoteAllFields\":false}", + "description": "Generate CSV from array of objects with explicit headers, default comma delimiter, no BOM, and quoting only when needed." + }, + { + "inputJson": "{\"data\":[[\"Alice\",30,\"alice@example.com\"],[\"Bob\",25,\"bob@example.com\"]],\"headers\":[\"Name\",\"Age\",\"Email\"],\"delimiter\":\";\",\"includeBOM\":false,\"quoteAllFields\":true}", + "description": "Generate CSV from array of arrays with semicolon delimiter and quotes around all fields." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Gadget\",\"price\":19.99,\"quantity\":4}],\"headers\":[],\"delimiter\":\",\",\"includeBOM\":true,\"quoteAllFields\":false}", + "description": "Generate CSV with BOM included from objects without specified headers, inferring headers from keys." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "backend-development.generateSummary", + "description": "Generates a concise summary of a given text document or log contents to aid quick understanding. Accepts input as raw text or structured content, processes key points and relevance using NLP techniques, and outputs a clear, summarized text string.", + "category": "backend-development", + "parameters": [ + { + "name": "textInput", + "type": "string", + "description": "The raw text content or document to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the summary in characters.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "The language of the input text to optimize summarization accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to include a list of extracted keywords in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated text summary and optionally extracted keywords." + }, + "aiAgent": { + "useCase": "Use this tool when condensing large documents, logs, or reports on backend systems to extract concise meaningful summaries, enabling faster reviews or integration into dashboards. Applicable in generating overview content from verbose outputs.", + "limitations": "Cannot replace full reading for detailed comprehension. Summaries may omit subtle context or technical nuances depending on input complexity and length.", + "examples": [ + "Summarize a server error log to extract main issues.", + "Generate a brief overview of an API documentation page.", + "Create a summary of a backend process report including key action items." + ] + }, + "tags": [ + "backend", + "summary", + "text-processing", + "NLP", + "log-analysis", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"textInput\":\"Critical error on server 3 at 9:45PM: connection timeout after 3 retries. User authentication failed for 5 users. Database response slow. Recommend immediate restart and detailed log analysis.\",\"maxLength\":200,\"language\":\"en\",\"includeKeywords\":true}", + "description": "Summarize a server error log with keywords extraction." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "backend-development.createOrder", + "description": "Creates a new order record in the backend system. Accepts order details such as customer ID, list of items with quantities and prices, payment method, and shipping details. Processes input to validate data, calculate totals, and generate an order ID. Returns a confirmation object with order ID, status, and summary info.", + "category": "backend-development", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier of the customer placing the order", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "Array of objects representing ordered items, each with productId (string), quantity (number), and price (number)", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Payment method identifier (e.g., credit_card, paypal)", + "required": true, + "defaultValue": "" + }, + { + "name": "shippingAddress", + "type": "object", + "description": "Object containing shipping address details: street, city, state, postalCode, country", + "required": true, + "defaultValue": "" + }, + { + "name": "applyDiscountCode", + "type": "string", + "description": "Optional discount code to apply to the order", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityShipping", + "type": "boolean", + "description": "Indicates if priority shipping should be applied", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Order creation result containing orderId (string), status (string), totalAmount (number), and summary of items" + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create customer orders in your backend system during e-commerce transactions or order processing workflows. It validates input, calculates totals, and generates order IDs for record keeping and further processing.", + "limitations": "Does not process payment transactions or verify payment success; assumes payment is handled separately. Does not handle inventory checks or real-time stock validation.", + "examples": [ + "Create an order with multiple items for a returning customer.", + "Create a new order applying a discount code and requesting priority shipping.", + "Create an order with a single item and default shipping options." + ] + }, + "tags": [ + "backend", + "order", + "creation", + "e-commerce", + "order-processing", + "api" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"cust123\",\"items\":[{\"productId\":\"prodA\",\"quantity\":2,\"price\":15.0},{\"productId\":\"prodB\",\"quantity\":1,\"price\":40.0}],\"paymentMethod\":\"credit_card\",\"shippingAddress\":{\"street\":\"123 Main St\",\"city\":\"Metropolis\",\"state\":\"NY\",\"postalCode\":\"10101\",\"country\":\"USA\"},\"applyDiscountCode\":\"SPRING20\",\"priorityShipping\":true}", + "description": "Creates an order for customer 'cust123' with two products, applying a discount and priority shipping." + }, + { + "inputJson": "{\"customerId\":\"cust456\",\"items\":[{\"productId\":\"prodC\",\"quantity\":1,\"price\":100.0}],\"paymentMethod\":\"paypal\",\"shippingAddress\":{\"street\":\"456 Elm St\",\"city\":\"Gotham\",\"state\":\"NJ\",\"postalCode\":\"07001\",\"country\":\"USA\"},\"applyDiscountCode\":\"\",\"priorityShipping\":false}", + "description": "Creates an order for customer 'cust456' with a single item and standard shipping without discounts." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "backend-development.createConfig", + "description": "This tool generates a configuration file for backend applications based on specified parameters such as environment, database settings, server ports, and feature toggles. It processes input parameters to output a structured config in JSON or YAML format ready for use in server setups.", + "category": "backend-development", + "parameters": [ + { + "name": "environment", + "type": "string", + "description": "Target environment for the configuration (e.g., development, production)", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseSettings", + "type": "object", + "description": "Database connection settings including host, port, username, password, and database name", + "required": true, + "defaultValue": "" + }, + { + "name": "serverPort", + "type": "number", + "description": "Port number the server should listen on", + "required": true, + "defaultValue": "8080" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable or disable detailed logging", + "required": false, + "defaultValue": "true" + }, + { + "name": "featureToggles", + "type": "object", + "description": "Optional feature flags to toggle experimental or optional features on or off", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the config file (json or yaml)", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated configuration as a string and its format type" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate a backend application configuration file tailored for specific environments and server setups, avoiding manual config writing and reducing errors.", + "limitations": "Does not validate external system compatibility or secrets encryption; assumes input parameters are valid and safe.", + "examples": [ + "Create a config for a production environment with MySQL database settings and logging disabled in JSON format.", + "Generate a development config using MongoDB, server port 3000, logging enabled, and output as YAML.", + "Make a configuration enabling feature toggles for beta features and running on port 5000." + ] + }, + "tags": [ + "backend-development", + "configuration", + "server-setup", + "devops", + "automation" + ], + "examples": [ + { + "inputJson": "{\"environment\":\"production\",\"databaseSettings\":{\"host\":\"db.prod.example.com\",\"port\":3306,\"username\":\"admin\",\"password\":\"s3cr3t\",\"databaseName\":\"prod_db\"},\"serverPort\":8080,\"enableLogging\":false,\"outputFormat\":\"json\"}", + "description": "Generate a production environment config for MySQL with logging disabled, output in JSON." + }, + { + "inputJson": "{\"environment\":\"development\",\"databaseSettings\":{\"host\":\"localhost\",\"port\":27017,\"username\":\"devuser\",\"password\":\"devpass\",\"databaseName\":\"dev_db\"},\"serverPort\":3000,\"enableLogging\":true,\"featureToggles\":{\"betaFeatures\":true},\"outputFormat\":\"yaml\"}", + "description": "Create a development config for a MongoDB database with beta feature toggle enabled, output in YAML." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeCustomer", + "description": "Analyzes customer data including demographics, purchase history, and engagement metrics to identify patterns and generate actionable insights. It accepts structured customer data as input and outputs a detailed report highlighting customer segments, behavior trends, and recommendations to optimize engagement and sales strategies.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "An array of customer records, each containing demographic details, purchase history, and engagement metrics. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform, e.g., 'segmentation', 'churnPrediction', 'lifetimeValue'. Determines the focus of the insights.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis report output. Options include 'json' for machine-readability or 'pdf' for presentation. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to indicate if the report should include actionable recommendations based on analysis. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional object specifying 'startDate' and 'endDate' strings in ISO format to limit analysis to a specific period.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Analysis report containing customer segments, behavior trends, key metrics, and if requested, actionable recommendations tailored to the customer data provided." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the review of complex customer datasets to extract meaningful insights such as identifying customer segments, predicting churn risk, or estimating lifetime value. It aids in making data-driven decisions to improve engagement and marketing strategies.", + "limitations": "This tool requires structured and reasonably complete customer data; it cannot process unstructured text or images. It does not perform real-time streaming analysis and may have reduced accuracy with sparse or low-quality data.", + "examples": [ + "Analyze the purchase history and demographics of customers from last quarter to identify high-value segments.", + "Provide a churn prediction report on customer engagement metrics and include retention strategy recommendations.", + "Generate a lifetime value analysis for customers with data up to the current date in JSON format." + ] + }, + "tags": [ + "automation", + "customer-analysis", + "data-insights", + "segmentation", + "churn-prediction", + "lifetime-value", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"id\":1,\"age\":34,\"location\":\"NY\",\"purchaseHistory\":[{\"date\":\"2023-02-15\",\"amount\":120}],\"engagementScore\":75},{\"id\":2,\"age\":29,\"location\":\"CA\",\"purchaseHistory\":[{\"date\":\"2023-03-10\",\"amount\":200}],\"engagementScore\":40}],\"analysisType\":\"segmentation\",\"outputFormat\":\"json\",\"includeRecommendations\":true}", + "description": "Analyze a small customer dataset to identify key segments and receive recommendations." + }, + { + "inputJson": "{\"customerData\":[{\"id\":101,\"age\":45,\"location\":\"TX\",\"purchaseHistory\":[{\"date\":\"2023-01-05\",\"amount\":50}],\"engagementScore\":30},{\"id\":102,\"age\":38,\"location\":\"TX\",\"purchaseHistory\":[{\"date\":\"2023-04-20\",\"amount\":75}],\"engagementScore\":85}],\"analysisType\":\"churnPrediction\",\"outputFormat\":\"pdf\",\"includeRecommendations\":true,\"dateRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-06-01\"}}", + "description": "Perform churn prediction on customers from a specific date range and generate a PDF report with recommendations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "web-development.generateCode", + "description": "Generates customizable web development code snippets including HTML, CSS, and JavaScript based on provided requirements such as layout, style preferences, and interactive elements. Accepts parameters defining framework choice, component types, and desired features, then outputs ready-to-use code blocks or files.", + "category": "web-development", + "parameters": [ + { + "name": "framework", + "type": "string", + "description": "The web development framework or library to generate code for (e.g., React, Vue, Angular, or plain HTML/CSS/JS).", + "required": false, + "defaultValue": "\"plain\"" + }, + { + "name": "components", + "type": "array", + "description": "List of components or elements to include in the code (e.g., navbar, footer, form).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme or style preference for the generated code (e.g., light, dark, corporate).", + "required": false, + "defaultValue": "\"light\"" + }, + { + "name": "includeResponsive", + "type": "boolean", + "description": "Whether to include responsive design features for different screen sizes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Primary programming language or markup format to use (html, css, javascript, typescript).", + "required": false, + "defaultValue": "\"javascript\"" + }, + { + "name": "interactiveFeatures", + "type": "array", + "description": "Interactive elements to include like modals, sliders, form validation.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated code snippets as strings keyed by type (html, css, js) and optionally files for download." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly scaffold functional and styled web code snippets tailored to specific frameworks or design needs, speeding up prototyping and development workflows. Ideal when clear component requirements and styles are defined.", + "limitations": "Does not replace full project scaffolding tools; generated code is sample snippets, may require integration and refinement. Not suited for backend code generation or complex application logic.", + "examples": [ + "Generate a React navbar and footer with dark theme and responsive design.", + "Create a plain HTML and CSS contact form with light theme and form validation.", + "Produce Vue.js components for a dashboard including charts and modals with corporate style." + ] + }, + "tags": [ + "web", + "code generation", + "frontend", + "HTML", + "CSS", + "JavaScript", + "frameworks", + "UI" + ], + "examples": [ + { + "inputJson": "{\"framework\":\"react\",\"components\":[\"navbar\",\"footer\"],\"theme\":\"dark\",\"includeResponsive\":true,\"language\":\"javascript\",\"interactiveFeatures\":[]}", + "description": "Generate React components for a dark-themed responsive navbar and footer." + }, + { + "inputJson": "{\"framework\":\"plain\",\"components\":[\"form\"],\"theme\":\"light\",\"includeResponsive\":true,\"language\":\"html\",\"interactiveFeatures\":[\"formValidation\"]}", + "description": "Generate plain HTML/CSS form with light theme and form validation feature." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "automation-frameworks.sendEmail", + "description": "Sends an email message using provided configuration including recipient addresses, subject, body content (plain text or HTML), and optional attachments. It processes inputs by constructing and dispatching the email through an SMTP server or compatible email service, returning a success confirmation or error details.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "smtpServer", + "type": "string", + "description": "SMTP server address to send the email through, e.g., smtp.example.com", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpPort", + "type": "number", + "description": "Port number for the SMTP server, commonly 587 or 465", + "required": true, + "defaultValue": "587" + }, + { + "name": "useSSL", + "type": "boolean", + "description": "Specifies whether to use SSL/TLS when connecting to SMTP server", + "required": true, + "defaultValue": "true" + }, + { + "name": "username", + "type": "string", + "description": "Username for SMTP authentication if required", + "required": false, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Password for SMTP authentication if required", + "required": false, + "defaultValue": "" + }, + { + "name": "fromAddress", + "type": "string", + "description": "Sender email address (From header)", + "required": true, + "defaultValue": "" + }, + { + "name": "toAddresses", + "type": "array", + "description": "List of recipient email addresses (To header)", + "required": true, + "defaultValue": "[]" + }, + { + "name": "ccAddresses", + "type": "array", + "description": "List of CC recipient email addresses", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccAddresses", + "type": "array", + "description": "List of BCC recipient email addresses", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Email subject line", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Email content body, can be plain text or HTML", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating if the body content is HTML formatted", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of attachment objects, each with filename and content as base64 string or URL", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Result object indicating success or failure with optional error message and message ID" + }, + "aiAgent": { + "useCase": "This tool is ideal for automating the sending of emails in workflows such as notifications, reports, or alerts where the AI needs to deliver messages to users or systems. It supports authentication and attachments, enabling integration with most standard email infrastructures.", + "limitations": "The tool cannot receive emails, handle inbox operations, or aggregate email threads. It requires correct SMTP server credentials and network access. It does not support OAuth 2.0 directly or complex email templating.", + "examples": [ + "Send a weekly report email with a PDF attachment to a team.", + "Notify users about system alerts via email.", + "Send personalized HTML email invitations to event attendees." + ] + }, + "tags": [ + "automation", + "email", + "communication", + "smtp", + "notifications", + "workflow", + "attachments" + ], + "examples": [ + { + "inputJson": "{\"smtpServer\":\"smtp.gmail.com\",\"smtpPort\":587,\"useSSL\":true,\"username\":\"user@gmail.com\",\"password\":\"password123\",\"fromAddress\":\"user@gmail.com\",\"toAddresses\":[\"recipient@example.com\"],\"ccAddresses\":[],\"bccAddresses\":[],\"subject\":\"Monthly Report\",\"body\":\"Please find attached the monthly sales report.\",\"isHtml\":false,\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"JVBERi0xLjQKJ...\"}]}", + "description": "Send a plain text email with a PDF attachment to a single recipient." + }, + { + "inputJson": "{\"smtpServer\":\"smtp.mailtrap.io\",\"smtpPort\":2525,\"useSSL\":true,\"username\":\"user_test\",\"password\":\"pass_test\",\"fromAddress\":\"noreply@example.com\",\"toAddresses\":[\"client@example.com\"],\"ccAddresses\":[\"manager@example.com\"],\"bccAddresses\":[],\"subject\":\"Welcome!\",\"body\":\"

Welcome to our service

Thank you for joining.

\",\"isHtml\":true,\"attachments\":[]}", + "description": "Send a welcome HTML email with CC recipients and no attachments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "automation-frameworks.buildCode", + "description": "This tool automates the process of generating and building code projects based on given specifications. It accepts project specifications including language, framework, dependencies, and code snippets, then generates a structured codebase, installs dependencies, and runs build commands. It outputs build logs and the location of the built artifact or error messages if build fails.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "The programming language for the code project (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Optional framework to scaffold the project with (e.g., React, Django).", + "required": false, + "defaultValue": "" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of dependencies or packages to install (names and optional versions).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sourceCodeSnippets", + "type": "array", + "description": "Array of code file objects with filename and code content to include in the project.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "buildCommands", + "type": "array", + "description": "Shell commands to run for building the project (e.g., npm run build).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "outputDirectory", + "type": "string", + "description": "File system path where the built code or artifacts will be stored.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing success status, build logs, errors if any, and path to build artifacts." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to turn a specification of a code project into a fully built and ready-to-distribute codebase automatically, including dependency installation and build execution. It helps automate repetitive setup and build workflows across multiple languages and frameworks.", + "limitations": "This tool does not execute runtime testing or deployment, nor does it create complex application logic beyond provided code snippets. It assumes build environments and tooling are properly installed and accessible.", + "examples": [ + "Generate and build a React application with specified dependencies and build script.", + "Build a Python Flask project with given code files and requirements.", + "Create and compile a JavaScript library with custom source files and build commands." + ] + }, + "tags": [ + "automation", + "build", + "code-generation", + "software-development", + "build-automation" + ], + "examples": [ + { + "inputJson": "{\"language\":\"JavaScript\",\"framework\":\"React\",\"dependencies\":[\"react\", \"react-dom\"],\"sourceCodeSnippets\":[{\"filename\":\"App.js\",\"code\":\"import React from 'react';\\nexport default function App() { return

Hello World

; }\"}],\"buildCommands\":[\"npm install\",\"npm run build\"],\"outputDirectory\":\"/builds/react-app\"}", + "description": "Build a React app project with dependencies and custom source code, then run standard build commands." + }, + { + "inputJson": "{\"language\":\"Python\",\"framework\":\"Flask\",\"dependencies\":[\"flask\"],\"sourceCodeSnippets\":[{\"filename\":\"app.py\",\"code\":\"from flask import Flask\\napp = Flask(__name__)\\n@app.route('/')\\ndef home():\\n return 'Hello Flask'\"}],\"buildCommands\":[\"pip install -r requirements.txt\",\"echo Build complete\"],\"outputDirectory\":\"/builds/flask-app\"}", + "description": "Build a Flask Python project with given app code and install dependencies." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "automation-frameworks.createReport", + "description": "Generates customizable reports by aggregating and formatting data from various sources. Accepts input data as JSON or CSV, allows specifying report structure, sections, and output format (PDF, HTML, DOCX). Produces a well-structured document summarizing provided data with optional charts and tables.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "dataSource", + "type": "object", + "description": "Data to be included in the report, structured as JSON or CSV content parsed into objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title of the generated report.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "Array of report sections, each specifying a title and content mapping to the data source fields.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the output report document, e.g., PDF, HTML, or DOCX.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include charts visualizing data in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional start and end dates to filter the data used in the report, format {startDate: 'YYYY-MM-DD', endDate: 'YYYY-MM-DD'}.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report as a base64 encoded string and metadata such as report format and size." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the creation of professional, well-structured reports from raw data inputs for business intelligence, project tracking, or documentation workflows. Ideal for summarizing datasets, generating periodic reports, or exporting data insights in readable formats.", + "limitations": "This tool does not perform data extraction from unstructured sources or PDFs. It requires clean, structured data input. Visualizations are basic and may not support advanced chart types.", + "examples": [ + "Generate a monthly sales performance report in PDF using sales data JSON.", + "Create an HTML report summarizing project milestones with included charts.", + "Produce a DOCX report filtered by date range from CSV financial data." + ] + }, + "tags": [ + "automation", + "reporting", + "data-processing", + "documentation", + "business-intelligence", + "pdf", + "html", + "docx" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":{\"sales\":[{\"date\":\"2024-05-01\",\"amount\":1000},{\"date\":\"2024-05-02\",\"amount\":1500}]},\"reportTitle\":\"Monthly Sales Report\",\"sections\":[{\"title\":\"Summary\",\"content\":[\"total sales\",\"average sale\"]}],\"outputFormat\":\"PDF\",\"includeCharts\":true}", + "description": "Generate a PDF report titled 'Monthly Sales Report' summarizing sales data with charts." + }, + { + "inputJson": "{\"dataSource\":{\"projects\":[{\"name\":\"Alpha\",\"status\":\"Completed\",\"endDate\":\"2024-04-20\"},{\"name\":\"Beta\",\"status\":\"In Progress\",\"endDate\":\"\"}]},\"reportTitle\":\"Project Status Report\",\"sections\":[{\"title\":\"Project Overview\",\"content\":[\"name\",\"status\",\"endDate\"]}],\"outputFormat\":\"HTML\",\"includeCharts\":false}", + "description": "Create an HTML project status report listing project names, status, and end dates." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "automation-frameworks.createCustomer", + "description": "Creates a new customer record within an automation framework by accepting customer details such as name, contact information, and optional metadata. The tool processes the inputs to validate and format them, then stores the record in a database or sends it to a CRM system, returning a unique customer ID and confirmation status.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "customerName", + "type": "string", + "description": "Full name of the customer to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address of the customer.", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Primary phone number for the customer.", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Physical address details including street, city, state, and zip code.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional customer information.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique customer ID, creation timestamp, and status message indicating success or failure of the creation process." + }, + "aiAgent": { + "useCase": "Use this tool when automating workflows that require adding new customer entries into business systems or CRMs, especially as part of onboarding automation or data pipeline integration. It allows structured input of customer information and returns confirmation for downstream processes.", + "limitations": "This tool does not handle customer data verification beyond simple format checks; it cannot manage duplicate detection or update existing customers, only create new entries.", + "examples": [ + "Create a customer with full contact info.", + "Add a customer using only required fields.", + "Include additional metadata such as customer segment or source." + ] + }, + "tags": [ + "automation", + "customer-management", + "crm-integration", + "data-entry", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"customerName\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"555-1234\",\"address\":{\"street\":\"123 Elm St\",\"city\":\"Springfield\",\"state\":\"IL\",\"zip\":\"62704\"},\"metadata\":{\"preferredContactMethod\":\"email\",\"customerSegment\":\"premium\"}}", + "description": "Create a premium customer record with full contact details and preferred contact method." + }, + { + "inputJson": "{\"customerName\":\"John Smith\",\"email\":\"john.smith@example.com\"}", + "description": "Create a basic customer record with only the required name and email fields." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "text-analysis.createFile", + "description": "Creates a text-based file from input textual content with optional formatting and metadata. Accepts raw text or structured text arrays, processes them into a file format (e.g., TXT or JSON), and outputs a downloadable or storable text file representation.", + "category": "text-analysis", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main textual content to be included in the file. Can be plain text or serialized structured text.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired name of the output file without extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The file format to create, such as 'txt' or 'json'. Defaults to plain text if not specified.", + "required": false, + "defaultValue": "txt" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include optional metadata like creation date or source information in the file content.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "An object containing key-value pairs of metadata to embed in the file if includeMetadata is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file name with extension and a string representing the file contents ready for writing or download." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate a text-based file from raw or structured input text, optionally embedding metadata. Suitable for exporting processed text from analysis or summarization tasks into standard file formats for storage or user delivery.", + "limitations": "This tool does not support binary or non-text file formats like PDF or DOCX, nor does it handle complex formatting or styling beyond plain text or simple JSON serialization.", + "examples": [ + "Generate a .txt file containing a summary of a document.", + "Create a JSON file with text content plus metadata like author and timestamp.", + "Produce a plain text file from raw input text without metadata." + ] + }, + "tags": [ + "text", + "file-creation", + "export", + "metadata", + "plain-text", + "json" + ], + "examples": [ + { + "inputJson": "{\"content\":\"This is a sample summary text.\",\"fileName\":\"summary\",\"format\":\"txt\",\"includeMetadata\":true,\"metadata\":{\"author\":\"AI Agent\",\"dateCreated\":\"2024-06-01\"}}", + "description": "Create a text file named 'summary.txt' including metadata." + }, + { + "inputJson": "{\"content\":\"{\\\"text\\\":\\\"Hello, world!\\\"}\",\"fileName\":\"greeting\",\"format\":\"json\",\"includeMetadata\":false}", + "description": "Create a JSON file named 'greeting.json' with simple text content without metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "api-integration.createEmail", + "description": "Creates and sends an email message by integrating with an email service API. Accepts inputs such as sender and recipient addresses, subject, body content (plain text or HTML), optional attachments, and additional headers. Processes the data to construct a compliant email message and returns the sending status and message ID if successful.", + "category": "api-integration", + "parameters": [ + { + "name": "fromAddress", + "type": "string", + "description": "The sender's email address. This is required to specify who the email is from.", + "required": true, + "defaultValue": "" + }, + { + "name": "toAddresses", + "type": "array", + "description": "Array of recipient email addresses to send the email to. At least one recipient is required.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccAddresses", + "type": "array", + "description": "Array of CC (carbon copy) recipient email addresses. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccAddresses", + "type": "array", + "description": "Array of BCC (blind carbon copy) recipient email addresses. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email. Can be plain text or HTML formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Boolean flag indicating if the body content is HTML. If false, the body is treated as plain text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachments represented as objects with fileName and fileData (base64 string).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "headers", + "type": "object", + "description": "Optional additional email headers as key-value pairs.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the email send action, a unique message ID if sent, and an error message if any failure occurred." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and send emails via external email delivery APIs, such as transactional emails, notifications, or newsletters. It handles composing the email message with multiple recipients, attachments, and formats, and interfaces with the email service to deliver the message.", + "limitations": "This tool does not provide email inbox reading or management capabilities, cannot schedule emails for future delivery, nor handle email templates dynamically. It depends on external setup for email sending credentials and actual delivery.", + "examples": [ + "Send a transactional welcome email to a new user with HTML content.", + "Send a notification email to multiple recipients with attachments.", + "Send a plain-text email with CC and BCC recipients for internal communication." + ] + }, + "tags": [ + "email", + "api", + "integration", + "communication", + "send", + "notification" + ], + "examples": [ + { + "inputJson": "{\"fromAddress\":\"no-reply@example.com\",\"toAddresses\":[\"user1@example.com\"],\"subject\":\"Welcome to Our Service\",\"body\":\"

Welcome!

Thank you for joining.

\",\"isHtml\":true}", + "description": "Send a basic HTML welcome email to one recipient from a no-reply address." + }, + { + "inputJson": "{\"fromAddress\":\"alerts@example.com\",\"toAddresses\":[\"user2@example.com\",\"user3@example.com\"],\"ccAddresses\":[\"manager@example.com\"],\"bccAddresses\":[\"audit@example.com\"],\"subject\":\"Monthly Report\",\"body\":\"Please find the monthly report attached.\",\"isHtml\":false,\"attachments\":[{\"fileName\":\"report.pdf\",\"fileData\":\"JVBERi0xLjQKJcKlwrHDqwo=\"}]}", + "description": "Send a plain text email with multiple recipients, CC, BCC, and a PDF attachment." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "api-integration.generateCode", + "description": "Generates code snippets for calling specified APIs based on input API specifications, request parameters, and target programming language. Accepts API endpoint details and outputs code that demonstrates how to interact with the API effectively.", + "category": "api-integration", + "parameters": [ + { + "name": "apiSpecification", + "type": "object", + "description": "The structured API specification including endpoints, methods, headers, and payloads necessary to generate the code.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The programming language for which to generate the API call code (e.g., Python, JavaScript, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationType", + "type": "string", + "description": "Type of authentication to be used in the generated code (e.g., none, apiKey, oauth2).", + "required": false, + "defaultValue": "\"none\"" + }, + { + "name": "includeErrorHandling", + "type": "boolean", + "description": "Whether to include basic error handling code in the generated snippet.", + "required": false, + "defaultValue": "true" + }, + { + "name": "requestExample", + "type": "object", + "description": "Optional example of a request payload or parameters to include in the generated code for demonstration.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code string and metadata about language and authentication used." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to quickly produce ready-to-use code snippets for API endpoints in varying programming languages to facilitate application development, testing, or integration workflows. It helps turn API specs into executable examples on demand.", + "limitations": "This tool does not replace API client SDKs and may not handle extremely complex authentication flows or proprietary SDK-specific features. It generates basic code snippets primarily for standard REST APIs.", + "examples": [ + "Generate a Python code snippet to call a REST API with API key authentication and basic error handling.", + "Create a JavaScript fetch example for an OAuth2-protected endpoint without error handling.", + "Produce a Java code example for a POST API endpoint with sample JSON payload." + ] + }, + "tags": [ + "api", + "code-generation", + "integration", + "developer-tools", + "rest", + "sdk", + "snippet" + ], + "examples": [ + { + "inputJson": "{\"apiSpecification\":{\"endpoint\":\"https://api.example.com/v1/users\",\"method\":\"GET\",\"headers\":{\"Authorization\":\"Bearer \"}},\"targetLanguage\":\"Python\",\"authenticationType\":\"oauth2\",\"includeErrorHandling\":true}", + "description": "Generate Python code for a GET request with OAuth2 authentication including error handling." + }, + { + "inputJson": "{\"apiSpecification\":{\"endpoint\":\"https://api.example.com/v1/data\",\"method\":\"POST\",\"headers\":{\"X-API-Key\":\"apikeyvalue\"},\"body\":{\"name\":\"example\",\"value\":123}},\"targetLanguage\":\"JavaScript\",\"authenticationType\":\"apiKey\",\"includeErrorHandling\":false,\"requestExample\":{\"name\":\"example\",\"value\":123}}", + "description": "Generate JavaScript code snippet for POST with API key authentication without error handling." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "api-integration.generateDocument", + "description": "Generates a structured document by integrating data from multiple APIs based on user-defined templates and parameters. Accepts inputs specifying APIs to call, mapping rules, and output format; processes API responses to compose a cohesive document; outputs the final document content in the requested format.", + "category": "api-integration", + "parameters": [ + { + "name": "apiEndpoints", + "type": "array", + "description": "List of API endpoint URLs to fetch data from for document generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "authTokens", + "type": "object", + "description": "Authentication tokens or credentials required for accessing the specified APIs, keyed by API endpoint.", + "required": false, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "Template string or JSON structure defining how to map and arrange the API data into the final document.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired document output format, e.g., 'pdf', 'html', 'docx', or 'json'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for API responses before aborting and generating partial output.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata about API calls and processing steps within the output document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document content as a base64 encoded string, the mime type of the document, and any warnings encountered during API calls." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate the creation of complex documents that require aggregating and formatting data from multiple APIs, such as reporting dashboards, dynamic contract generation, or personalized content delivery. It streamlines data fetching and document assembly into a single step.", + "limitations": "Cannot perform API calls that require non-standard authentication beyond token-based methods. The tool does not support real-time interactive documents or live data updates post-generation. Templates must be well-defined; complex templating logic may require pre-processing.", + "examples": [ + "Generate a summary report combining weather data and financial market stats from different APIs into a PDF.", + "Create a personalized user guide document by integrating product info and user preferences fetched from separate APIs, output as DOCX.", + "Produce an HTML document aggregating social media analytics and survey results through multiple API calls." + ] + }, + "tags": [ + "api", + "integration", + "document", + "generation", + "templating", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"apiEndpoints\":[\"https://api.weather.com/v3/wx/conditions/current\",\"https://financialapi.example.com/market/today\"],\"authTokens\":{\"https://financialapi.example.com/market/today\":\"Bearer abc123token\"},\"template\":\"{\\\"sections\\\":[{\\\"title\\\":\\\"Weather Conditions\\\",\\\"dataPath\\\":\\\"$.weatherData\\\"},{\\\"title\\\":\\\"Market Summary\\\",\\\"dataPath\\\":\\\"$.marketData\\\"}]}\" ,\"outputFormat\":\"pdf\",\"timeoutSeconds\":20,\"includeMetadata\":true}", + "description": "Generate a PDF report combining current weather and market summary data from two APIs with authentication and display metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "text-analysis.createDocument", + "description": "Creates a structured textual document from unstructured raw text input. It accepts plain text or raw content, applies formatting rules, adds optional metadata such as title, author, and date, and outputs a clean, structured JSON representation of the document including content and metadata fields.", + "category": "text-analysis", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The unstructured plain text content to be converted into a structured document.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title of the document to include in metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to include in document metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Optional date of the document (ISO 8601 format preferred).", + "required": false, + "defaultValue": "" + }, + { + "name": "formattingRules", + "type": "object", + "description": "JSON object specifying rules for formatting, such as paragraph breaks, heading detection, bullet points, etc.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata (title, author, date) in the output document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the structured document, including processed content arranged into sections or paragraphs, and metadata fields if included." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw, unstructured textual input into a well-organized, structured document format suitable for downstream applications such as storage, display, or further NLP processing. It is ideal for generating standardized document representations from free-form text inputs.", + "limitations": "This tool does not perform deep semantic analysis, content summarization, or generate new text; it focuses solely on formatting and metadata structuring from provided raw text.", + "examples": [ + "Create a structured document from a plain text meeting transcript, adding title and author metadata.", + "Convert raw copy-pasted text into a JSON document with paragraphs and optional headings.", + "Generate a dated document record from raw notes including specified formatting rules." + ] + }, + "tags": [ + "text-analysis", + "document-creation", + "formatting", + "metadata", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"This is the first paragraph.\\nThis is the second paragraph.\",\"title\":\"Sample Document\",\"author\":\"Jane Doe\",\"date\":\"2024-04-25T00:00:00Z\",\"includeMetadata\":true}", + "description": "Creating a structured document from simple multi-paragraph raw text with title, author, and date metadata included." + }, + { + "inputJson": "{\"rawText\":\"Chapter 1: Introduction\\nWelcome to this document.\\n- Bullet point 1\\n- Bullet point 2\",\"formattingRules\":{\"headings\":true,\"bulletPoints\":true},\"includeMetadata\":false}", + "description": "Processing raw text with headings and bullet points, excluding metadata for a clean content structure only." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "agent-management.sendEmail", + "description": "Sends an email message using specified parameters such as recipients, subject, body content (plain text or HTML), and optional attachments. Accepts input for email headers and formatting options, performs email composition and delivery through configured SMTP or API service, returning status and message IDs indicating delivery success or failure.", + "category": "agent-management", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "List of CC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of BCC recipient email addresses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email, accepts plain text or HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating whether body content is HTML formatted.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachments objects, each with file name and base64 encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "from", + "type": "string", + "description": "The sender's email address, overrides default if provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Results include success status, message ID if sent, and error details if any." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to send emails as part of workflows, notifications, or user communications by providing necessary email parameters.", + "limitations": "Cannot directly retrieve mailbox contents or manage email inbox. Requires properly configured email sending service or SMTP credentials.", + "examples": [ + "Send notification email to users after task completion.", + "Send an invoice as a PDF attachment to a client.", + "Send a meeting invitation with CC to managers." + ] + }, + "tags": [ + "email", + "communication", + "send", + "agent-management", + "notifications", + "attachments" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Welcome!\",\"body\":\"Hello, welcome to our service.\",\"isHtml\":false}", + "description": "Send a simple welcome email to a user." + }, + { + "inputJson": "{\"to\":[\"client@example.com\"],\"subject\":\"Invoice April 2024\",\"body\":\"Please find attached your invoice.\",\"isHtml\":false,\"attachments\":[{\"fileName\":\"invoice_april.pdf\",\"content\":\"JVBERi0xLjQKJc...\"}]}", + "description": "Send an invoice PDF attachment to a client email address." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "model-management.createFunction", + "description": "Creates a new serverless function that wraps a deployed AI model endpoint, enabling scalable, on-demand access. Accepts model identifier, function name, runtime environment, and resource specifications. Outputs a function deployment manifest including endpoint URL and status.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Identifier of the AI model to deploy as a function", + "required": true, + "defaultValue": "" + }, + { + "name": "functionName", + "type": "string", + "description": "Desired name for the created function", + "required": true, + "defaultValue": "" + }, + { + "name": "runtime", + "type": "string", + "description": "Execution environment for the function (e.g., 'python3.8', 'nodejs14')", + "required": true, + "defaultValue": "python3.8" + }, + { + "name": "memorySizeMB", + "type": "number", + "description": "Amount of memory (in megabytes) allocated to the function", + "required": false, + "defaultValue": "512" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum execution time (in seconds) before function is terminated", + "required": false, + "defaultValue": "30" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set in the function", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the deployed function including its unique ID, invocation endpoint URL, runtime, status, and configuration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to expose a trained AI model as a scalable, serverless function for real-time inference, enabling simplified access management and integration in applications.", + "limitations": "This tool cannot create or train models; it assumes the model is already trained and registered. It also does not manage underlying infrastructure beyond function deployment.", + "examples": [ + "Create a Python 3.8 function named 'imageClassifier' linked to model 'model123', with 1GB memory and 60s timeout.", + "Deploy model 'textSummarizationV2' as a Node.js function named 'summarizer' with default memory and environment variables.", + "Create a function with custom environment variables for API keys referencing model 'sentimentAnalysis01'." + ] + }, + "tags": [ + "model-management", + "deployment", + "serverless", + "function", + "AI-model", + "inference" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model123\",\"functionName\":\"imageClassifier\",\"runtime\":\"python3.8\",\"memorySizeMB\":1024,\"timeoutSeconds\":60,\"environmentVariables\":{}}", + "description": "Deploy model 'model123' as a Python 3.8 function 'imageClassifier' with 1GB memory and 60 seconds timeout." + }, + { + "inputJson": "{\"modelId\":\"textSummarizationV2\",\"functionName\":\"summarizer\",\"runtime\":\"nodejs14\",\"memorySizeMB\":512,\"timeoutSeconds\":30}", + "description": "Deploy 'textSummarizationV2' model as a Node.js 14 function 'summarizer' with default resource settings." + }, + { + "inputJson": "{\"modelId\":\"sentimentAnalysis01\",\"functionName\":\"sentimentFunc\",\"runtime\":\"python3.8\",\"environmentVariables\":{\"API_KEY\":\"abcdef123456\"}}", + "description": "Create Python 3.8 function 'sentimentFunc' wrapping 'sentimentAnalysis01' with custom environment variable API_KEY." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Function", + "context": null + } + }, + { + "name": "email-communication.analyzeDocument", + "description": "Analyzes the content of an email document to extract key insights such as tone, sentiment, action items, and summarization. Accepts raw email text and optional metadata to provide a structured analysis report highlighting communication effectiveness and important elements.", + "category": "email-communication", + "parameters": [ + { + "name": "emailText", + "type": "string", + "description": "Raw text content of the email to analyze, including body and optionally headers.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis to detect positive, neutral, or negative tone.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectActionItems", + "type": "boolean", + "description": "If true, identifies and extracts action items or requests from the email content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summarizationLength", + "type": "number", + "description": "Desired maximum length in sentences for the email content summary; 0 to disable summarization.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the email text for accurate analysis; defaults to 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including detected tone, sentiment score, extracted action items, and a concise summary of the email content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand the key points and overall tone of email communications for decision-making, follow-up generation, or sentiment tracking in business workflows.", + "limitations": "This tool cannot interpret attachments, encrypted emails, or understand context beyond the provided email text. Sentiment and action item detection may vary depending on language nuances and complexity.", + "examples": [ + "Analyze this customer complaint email to extract the main issues and tone.", + "Summarize the project update email and list any action requests.", + "Perform sentiment analysis on the recent meeting invitation email to gauge participant enthusiasm." + ] + }, + "tags": [ + "email", + "analysis", + "sentiment", + "summarization", + "action-items", + "communication", + "document" + ], + "examples": [ + { + "inputJson": "{\"emailText\":\"Hello team, I noticed the last report missed several key metrics. Please update by Friday. Thanks.\",\"includeSentimentAnalysis\":true,\"detectActionItems\":true,\"summarizationLength\":2,\"language\":\"en\"}", + "description": "A brief email requiring action item extraction, sentiment detection, and a short summary." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "email-communication.generateCode", + "description": "Generates customizable email sending code snippets in popular programming languages based on user inputs such as SMTP server details, authentication, message content, and optional features like attachments or HTML formatting. Outputs ready-to-use code for automated email integration.", + "category": "email-communication", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "Programming language for the generated code, e.g., 'Python', 'NodeJS', or 'Java'.", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpServer", + "type": "string", + "description": "SMTP server address for sending emails, e.g., 'smtp.gmail.com'.", + "required": true, + "defaultValue": "" + }, + { + "name": "port", + "type": "number", + "description": "SMTP port number, e.g., 587 or 465.", + "required": false, + "defaultValue": "587" + }, + { + "name": "useTLS", + "type": "boolean", + "description": "Whether to use TLS encryption for the SMTP connection.", + "required": false, + "defaultValue": "true" + }, + { + "name": "username", + "type": "string", + "description": "Username/email for SMTP authentication.", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Password or app-specific password for SMTP authentication.", + "required": true, + "defaultValue": "" + }, + { + "name": "fromAddress", + "type": "string", + "description": "The sender email address to appear in the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "toAddresses", + "type": "array", + "description": "List of recipient email addresses.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Plain text or HTML content of the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Whether the body content is HTML formatted.", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of file paths or URLs for attachments.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and the programming language used." + }, + "aiAgent": { + "useCase": "Use this tool to quickly generate valid, customizable email sending code snippets for various programming languages. Ideal for developers automating email notifications, password resets, or marketing emails, needing executable template code tailored to their SMTP and message details.", + "limitations": "This tool generates code templates but does not send emails directly or validate SMTP credentials. It also does not handle complex email features like inline images or multipart alternatives beyond basic attachments.", + "examples": [ + "Generate a Python script to send an HTML email with attachment via Gmail SMTP.", + "Generate NodeJS code snippet for plain text email to multiple recipients.", + "Create Java code to send email using custom SMTP server with TLS enabled." + ] + }, + "tags": [ + "email", + "code-generation", + "SMTP", + "automation", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"language\":\"Python\",\"smtpServer\":\"smtp.gmail.com\",\"port\":587,\"useTLS\":true,\"username\":\"user@example.com\",\"password\":\"secret123\",\"fromAddress\":\"user@example.com\",\"toAddresses\":[\"recipient1@example.com\",\"recipient2@example.com\"],\"subject\":\"Test Email\",\"body\":\"

Hello

This is a test email.

\",\"isHtml\":true,\"attachments\":[\"/path/to/file.pdf\"]}", + "description": "Generate Python code for sending an HTML email with two recipients and one attachment via Gmail SMTP." + }, + { + "inputJson": "{\"language\":\"NodeJS\",\"smtpServer\":\"smtp.mailtrap.io\",\"port\":2525,\"useTLS\":false,\"username\":\"user\",\"password\":\"pass\",\"fromAddress\":\"sender@mail.com\",\"toAddresses\":[\"receiver@mail.com\"],\"subject\":\"Hello\",\"body\":\"This is a plain text email.\",\"isHtml\":false,\"attachments\":[]}", + "description": "Generate NodeJS code for sending a plain text email to a single recipient via Mailtrap SMTP without TLS." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "email-communication.createDocument", + "description": "Creates a structured email document by accepting input parameters such as subject, body content, recipient lists, and optional attachments. Processes the inputs to produce a formatted document object suitable for sending or further email automation workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email document.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content or body text of the email, supporting plain text or HTML formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses to whom the email document will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "Optional list of email addresses to be placed in CC (carbon copy).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccRecipients", + "type": "array", + "description": "Optional list of email addresses to be placed in BCC (blind carbon copy).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments, each with filename and content in base64 or URL format.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyTo", + "type": "string", + "description": "Optional reply-to email address for responses.", + "required": false, + "defaultValue": "" + }, + { + "name": "isHtmlFormat", + "type": "boolean", + "description": "Flag indicating if the body content is in HTML format; false means plain text.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An email document object containing all structured fields (subject, body, recipients, attachments, metadata) ready for sending or export in email systems." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct a complete and structured email message object based on provided content and recipient details, preparing for sending or managing email workflows. Ideal in automation scenarios for email campaigns, notifications, or personalized communication.", + "limitations": "This tool does not send emails or handle SMTP configurations; it only creates the structured email document object. It does not validate email address format strictly or parse existing email messages.", + "examples": [ + "Create an email document with subject, text body, and multiple recipients.", + "Generate an HTML formatted email including attachments and CC recipients.", + "Prepare an email document with BCC recipients and a specified reply-to address." + ] + }, + "tags": [ + "email", + "document", + "create", + "communication", + "automation", + "message", + "email-content" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Welcome to our service\",\"body\":\"Dear user, thank you for joining!\",\"recipients\":[\"user@example.com\"],\"isHtmlFormat\":false}", + "description": "Create a simple plain text email document for a single recipient." + }, + { + "inputJson": "{\"subject\":\"Monthly Newsletter\",\"body\":\"

News

Check out the latest updates.

\",\"recipients\":[\"subscribers@example.com\"],\"ccRecipients\":[\"marketing@example.com\"],\"attachments\":[{\"filename\":\"update.pdf\",\"content\":\"JVBERi0xLjQKJcfs...\"}],\"isHtmlFormat\":true}", + "description": "Create an HTML email with CC and an attached PDF document." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "monitoring.createFile", + "description": "Creates a new monitoring log or report file based on provided system or application performance data. Accepts raw monitoring data as input, formats it according to the specified file type and template, and outputs a saved file with performance metrics, errors, and summaries for analysis or archival.", + "category": "monitoring", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The desired name of the output file including extension (e.g., 'performance_report.txt').", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "The type of file to create (e.g., 'txt', 'json', 'csv').", + "required": true, + "defaultValue": "txt" + }, + { + "name": "monitoringData", + "type": "object", + "description": "The monitoring data object containing metrics, logs, errors, and performance info to be included in the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "Optional naming or formatting template for structuring the file content.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include a timestamp header in the file content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "filePath", + "type": "string", + "description": "Optional directory path to save the file. Defaults to current working directory if empty.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing file metadata including full file path, size in bytes, and a success status message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a physical or digital report file reflecting current or historical monitoring data of systems or applications for storage, audit, or sharing purposes. It is appropriate for creating logs or formatted performance summaries for further analysis or documentation.", + "limitations": "This tool does not itself perform data collection or real-time monitoring; it only formats and writes data into files. It does not support encrypted files or uploading files to remote services.", + "examples": [ + "Create a JSON file summarizing CPU and memory usage logs for the last 24 hours.", + "Generate a text report file with application error logs, including timestamps and error codes.", + "Save monitoring metrics in CSV format to an archival directory for system audits." + ] + }, + "tags": [ + "monitoring", + "file creation", + "performance reports", + "logging", + "system metrics" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"daily_stats.json\",\"fileType\":\"json\",\"monitoringData\":{\"cpuUsage\":55,\"memoryUsage\":70,\"errors\":[{\"code\":500,\"message\":\"Internal Server Error\"}]},\"template\":\"\",\"includeTimestamp\":true,\"filePath\":\"/var/logs\"}", + "description": "Creating a JSON file with daily CPU and memory usage along with error logs, including a timestamp header, saved in /var/logs directory." + }, + { + "inputJson": "{\"fileName\":\"error_log.txt\",\"fileType\":\"txt\",\"monitoringData\":{\"errors\":[{\"time\":\"2024-06-10T14:22Z\",\"code\":404,\"message\":\"Not Found\"}]} ,\"template\":\"Error Report\",\"includeTimestamp\":false,\"filePath\":\"\"}", + "description": "Creating a plain text error log report without a timestamp header in the current directory." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "monitoring.generateCode", + "description": "Generates customizable monitoring code snippets in various programming languages based on user-specified metrics, targets, and alert thresholds. The tool accepts parameters defining the monitoring focus (e.g., CPU usage, memory), target system type, preferred language, and alerting rules, then outputs ready-to-integrate source code for performance monitoring.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of performance metrics to monitor, such as CPU usage or memory consumption.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetSystem", + "type": "string", + "description": "The system or environment where the monitoring code will be deployed (e.g., Linux server, Docker container).", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated monitoring code (e.g., Python, Go, JavaScript).", + "required": true, + "defaultValue": "" + }, + { + "name": "alertThresholds", + "type": "object", + "description": "Object specifying alert thresholds for each metric, keyed by metric name with numerical values.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeLogging", + "type": "boolean", + "description": "Whether to include detailed logging functionality in the generated code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Preferred code style or structure (e.g., functional, object-oriented).", + "required": false, + "defaultValue": "functional" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'sourceCode' string with the generated monitoring code snippet and 'language' string identifying the programming language used." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate monitoring code tailored to specific system metrics, environments, and alerting rules, enabling rapid deployment of custom performance monitoring without manually writing boilerplate code. Ideal for automating monitoring setup in various programming languages.", + "limitations": "This tool does not execute or validate runtime correctness of generated code or integrate with existing monitoring services; manual review and testing are recommended before deployment.", + "examples": [ + "Generate Python code to monitor CPU and memory usage on a Linux server with alerts at 80% usage.", + "Produce JavaScript monitoring code for a Docker container focusing on network IO metrics with logging enabled.", + "Create Go-language code snippet monitoring disk space with specific alert thresholds and object-oriented style." + ] + }, + "tags": [ + "monitoring", + "code generation", + "performance", + "alerts", + "automation" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"cpu_usage\",\"memory_usage\"],\"targetSystem\":\"Linux server\",\"programmingLanguage\":\"Python\",\"alertThresholds\":{\"cpu_usage\":80,\"memory_usage\":75},\"includeLogging\":true,\"codeStyle\":\"functional\"}", + "description": "Generate Python monitoring code for CPU and memory with alert thresholds and logging on a Linux server." + }, + { + "inputJson": "{\"metrics\":[\"network_io\"],\"targetSystem\":\"Docker container\",\"programmingLanguage\":\"JavaScript\",\"alertThresholds\":{\"network_io\":90},\"includeLogging\":true,\"codeStyle\":\"functional\"}", + "description": "Generate JavaScript monitoring code for network IO inside a Docker container with logging and alert preset." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "security-tools.sendEmail", + "description": "Sends a security-related email message to specified recipients. Accepts email details including recipients, subject, body content (plain text or HTML), optional attachments, and sender information. Processes these inputs to format and deliver the email securely, returning a status indicating success or error details.", + "category": "security-tools", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "Array of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Array of email addresses to carbon copy (optional recipients).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Array of email addresses to blind carbon copy (hidden from other recipients).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email, either plain text or HTML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates if the body content is HTML (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Array of file objects representing attachments with filename and base64 content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "from", + "type": "string", + "description": "Email address of the sender, defaults to a configured noreply address if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result of the email sending operation including a success flag, message ID if sent, and any error details" + }, + "aiAgent": { + "useCase": "Use this tool when needing to send security notifications, alerts, or reports via email from applications or automation workflows. It helps automate communication about security events, policy updates, or incident responses.", + "limitations": "Cannot validate email content for security compliance or scan attachments for malware. Delivery depends on SMTP server availability and network conditions.", + "examples": [ + "Send a vulnerability report email to the security team.", + "Notify multiple recipients about a password policy update.", + "Send an alert email with attached logs after a security incident detection." + ] + }, + "tags": [ + "email", + "security", + "notification", + "alerts", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"security@example.com\"],\"subject\":\"Monthly Security Report\",\"body\":\"Please find the attached monthly security report.\",\"isHtml\":false,\"attachments\":[{\"filename\":\"report.pdf\",\"content\":\"base64encodedstring==\"}],\"from\":\"noreply@example.com\"}", + "description": "Send a plain text email with a PDF report attached to the security team." + }, + { + "inputJson": "{\"to\":[\"admin1@example.com\",\"admin2@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Urgent: Password Policy Update\",\"body\":\"

Please update your passwords following the new policy effective immediately.

\",\"isHtml\":true}", + "description": "Send an HTML email to admins with a CC to manager about password policy." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "security-tools.generateReport", + "description": "Generates a comprehensive security assessment report based on supplied vulnerability scan data and optional configuration. Accepts JSON or XML input containing scan results, applies optional filtering by severity, and outputs a structured report summarizing key findings and recommendations in PDF or HTML format.", + "category": "security-tools", + "parameters": [ + { + "name": "scanData", + "type": "string", + "description": "Raw security scan data in JSON or XML format containing vulnerabilities and findings.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input scan data; supported values are 'json' or 'xml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "filterSeverity", + "type": "array", + "description": "Array of severity levels (e.g., ['critical','high']) to include in the report; if empty or omitted, includes all severities.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired report output format; e.g., 'pdf' or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include remediation recommendations for detected issues.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Custom title for the generated security report.", + "required": false, + "defaultValue": "Security Assessment Report" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated report content as base64-encoded string along with metadata such as format, page count, and summary of vulnerabilities." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw vulnerability scan output data into a professional, readable security assessment report that highlights key threats and suggested mitigations, suitable for sharing with stakeholders or compliance teams. Useful after scanning tools finish to produce human-friendly documentation.", + "limitations": "This tool does not perform vulnerability scanning itself and cannot improve scan quality. It requires valid input data in supported formats and does not support interactive report editing or custom visualizations beyond standard summary formats.", + "examples": [ + "Generate a PDF summary report from JSON scan data containing critical and high severity vulnerabilities.", + "Create an HTML report including all severities from an XML vulnerability export with remediation advice.", + "Produce a generalized security report with a custom title excluding low severity findings." + ] + }, + "tags": [ + "security", + "reporting", + "vulnerability", + "assessment", + "scan", + "document", + "pdf", + "html" + ], + "examples": [ + { + "inputJson": "{\"scanData\":\"{\\\"vulnerabilities\\\":[{\\\"id\\\":\\\"VULN-001\\\",\\\"severity\\\":\\\"critical\\\",\\\"description\\\":\\\"Remote code execution vulnerability.\\\"}]}\",\"inputFormat\":\"json\",\"filterSeverity\":[\"critical\",\"high\"],\"outputFormat\":\"pdf\",\"includeRecommendations\":true}", + "description": "Generate a PDF report including only critical and high severity vulnerabilities from JSON input scan data." + }, + { + "inputJson": "{\"scanData\":\"SQL injection vulnerability.\",\"inputFormat\":\"xml\",\"filterSeverity\":[],\"outputFormat\":\"html\",\"includeRecommendations\":false}", + "description": "Generate an HTML report including all vulnerabilities from XML input without remediation recommendations." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "customer-support.createCode", + "description": "Generates customizable code snippets or templates for customer support tasks, such as automated email responses, API interaction scripts, or chatbot handlers. Accepts parameters specifying the programming language, purpose, and customization details, and outputs ready-to-use source code suited to enhance customer service automation workflows.", + "category": "customer-support", + "parameters": [ + { + "name": "programmingLanguage", + "type": "string", + "description": "Specifies the programming language for the generated code (e.g., Python, JavaScript).", + "required": true, + "defaultValue": "" + }, + { + "name": "codePurpose", + "type": "string", + "description": "Defines the specific customer support task the code should address (e.g., automated reply, ticket status checker).", + "required": true, + "defaultValue": "" + }, + { + "name": "customizationOptions", + "type": "object", + "description": "Key-value pairs for customizing code details such as API keys, templates, or endpoint URLs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Determines whether the generated code includes explanatory comments.", + "required": false, + "defaultValue": "true" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Preferred style or framework to tailor the code formatting (e.g., async/await, callbacks).", + "required": false, + "defaultValue": "standard" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string, metadata like language and purpose, and optionally usage instructions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate tailored customer support automation code snippets or templates in various programming languages, based on specific purposes like sending follow-up emails or interfacing with support APIs. It helps accelerate development and prototyping phases.", + "limitations": "This tool cannot execute or test the generated code and may require manual validation and integration. It also does not generate complex multi-module applications, focusing on isolated code snippets.", + "examples": [ + "Generate a Python script to automate sending predefined customer follow-up emails.", + "Create a JavaScript snippet to interact with a support ticketing system API to fetch ticket status.", + "Produce a chatbot handler code template in Node.js with error handling and logging comments." + ] + }, + "tags": [ + "customer-support", + "code-generation", + "automation", + "snippet", + "template", + "API", + "email", + "chatbot" + ], + "examples": [ + { + "inputJson": "{\"programmingLanguage\":\"Python\",\"codePurpose\":\"automated reply email sender\",\"customizationOptions\":{\"smtpServer\":\"smtp.example.com\",\"smtpPort\":587,\"senderEmail\":\"support@example.com\"},\"includeComments\":true,\"codeStyle\":\"standard\"}", + "description": "Generate a Python script that automates sending email replies with SMTP server customization and comments." + }, + { + "inputJson": "{\"programmingLanguage\":\"JavaScript\",\"codePurpose\":\"ticket status checker\",\"customizationOptions\":{\"apiUrl\":\"https://api.supportsystem.com/tickets\",\"apiKey\":\"abc123\"},\"includeComments\":false,\"codeStyle\":\"async/await\"}", + "description": "Create a JavaScript snippet using async/await to fetch and display ticket status from a support API without comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "customer-support.generateCode", + "description": "Generates ready-to-use code snippets or templates for integrating customer support functionalities, such as chat widgets, ticketing forms, or automated responses. It accepts parameters specifying the platform, programming language, and feature type, then outputs code to embed or extend customer support systems efficiently.", + "category": "customer-support", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "The target platform or framework for the generated code (e.g., 'web', 'mobile', 'slack').", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language for the generated code snippet (e.g., 'JavaScript', 'Python').", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "featureType", + "type": "string", + "description": "The specific customer support feature to generate code for, such as 'chatWidget', 'ticketForm', or 'autoResponder'.", + "required": true, + "defaultValue": "chatWidget" + }, + { + "name": "customizationOptions", + "type": "object", + "description": "Additional options to customize the generated code, like UI theme, response templates, or API keys.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code snippet as a string and optionally any dependencies or instructions for use." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide developers or customer support managers with immediate, practical code to embed or enhance customer support capabilities on a specified platform and language. It helps quickly bootstrap integrations without manual coding from scratch.", + "limitations": "The tool generates basic, generic code snippets and does not replace full custom application development or handle platform-specific advanced logic or security considerations. Further testing and customization are needed for production use.", + "examples": [ + "Generate a JavaScript chat widget for a web platform.", + "Create a Python auto responder code sample for integrating with Slack.", + "Provide a ticket submission form snippet for a mobile app in Kotlin." + ] + }, + "tags": [ + "customer-support", + "code-generation", + "integration", + "developer-tools", + "automation" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"web\",\"language\":\"JavaScript\",\"featureType\":\"chatWidget\",\"customizationOptions\":{\"theme\":\"dark\",\"welcomeMessage\":\"Hello! How can we help you today?\"}}", + "description": "Generate a JavaScript chat widget code snippet for a dark-themed web platform with a custom welcome message." + }, + { + "inputJson": "{\"platform\":\"slack\",\"language\":\"Python\",\"featureType\":\"autoResponder\",\"customizationOptions\":{\"responseTemplate\":\"Thank you for reaching out! We'll get back shortly.\"}}", + "description": "Generate Python code for an automated response feature integrated with Slack using a specified response template." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "customer-support.createFile", + "description": "Creates a new support-related file such as logs, transcripts, or customer feedback reports from provided content. Accepts file type, content, and optional metadata to generate a downloadable file or store it for reference. Supports formats like TXT, CSV, and JSON for easy integration with help desk systems.", + "category": "customer-support", + "parameters": [ + { + "name": "fileType", + "type": "string", + "description": "The desired output file format (e.g., txt, csv, json).", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The textual content to be saved into the file, such as chat logs or customer notes.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional custom name for the file without extension; a default name is generated if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional info such as customer ID, timestamp, or tags to be embedded or used as header info.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Flag to prepend a timestamp header in the file content to mark creation time.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of file creation, file URL or base64 content, size in bytes, and full fileName with extension." + }, + "aiAgent": { + "useCase": "Use this tool to generate and store various types of support files dynamically during customer interactions, for instance, saving chat transcripts after a session, exporting logs for review, or creating CSV reports of customer feedback. Ideal for agents automating documentation and record-keeping.", + "limitations": "This tool does not handle file uploads or downloads directly; it outputs file data or URLs for further processing. It cannot edit existing files or convert file types beyond the specified formats.", + "examples": [ + "Save a chat transcript as a TXT file with a timestamp for a customer support session.", + "Create a CSV report from provided customer feedback data for monthly review.", + "Generate a JSON log file with session metadata for archive purposes." + ] + }, + "tags": [ + "customer-support", + "file-creation", + "logs", + "reports", + "automation", + "transcripts" + ], + "examples": [ + { + "inputJson": "{\"fileType\":\"txt\",\"content\":\"Customer chat transcript here...\",\"fileName\":\"session_12345\",\"metadata\":{\"customerId\":\"C7890\",\"sessionId\":\"S12345\"},\"includeTimestamp\":true}", + "description": "Create a text file containing a customer chat transcript with a timestamp and metadata." + }, + { + "inputJson": "{\"fileType\":\"csv\",\"content\":\"Name,Feedback\\nJohn Doe,Great service!\\nJane Smith,Satisfied\",\"fileName\":\"feedback_march\",\"includeTimestamp\":false}", + "description": "Generate a CSV file from customer feedback entries without a timestamp header." + }, + { + "inputJson": "{\"fileType\":\"json\",\"content\":\"{\\\"session\\\":\\\"S12345\\\",\\\"status\\\":\\\"resolved\\\"}\",\"fileName\":\"session_log_12345\",\"metadata\":{\"agent\":\"Agent007\"},\"includeTimestamp\":true}", + "description": "Create a JSON log file for a support session including an agent tag and timestamp." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "customer-support.createDocument", + "description": "Creates a customer support document such as FAQ entries, troubleshooting guides, or policy documents. Accepts document type, title, content body, tags, and optional metadata. Processes inputs to generate a structured support document record for internal or public knowledge bases.", + "category": "customer-support", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of support document to create, e.g., 'FAQ', 'Troubleshooting Guide', 'Policy Document'.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title or headline of the support document, summarizing its topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Main textual content of the document with detailed information, steps, or explanations.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords to categorize and facilitate searching of the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "author", + "type": "string", + "description": "Name or identifier of the author or creator of the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "publishStatus", + "type": "string", + "description": "Publication status, e.g., 'draft', 'published', or 'archived'. Controls visibility in knowledge bases.", + "required": false, + "defaultValue": "draft" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured object representing the created document including unique ID, timestamps, and all input data." + }, + "aiAgent": { + "useCase": "Use this tool when generating new customer support documents to enrich help desks or knowledge bases with clear, structured guidance materials. Ideal for creating FAQs, troubleshooting instructions, or policy summaries dynamically.", + "limitations": "This tool does not perform content validation, natural language rewriting, or automatic categorization beyond provided inputs. It requires well-formed text and metadata from the user.", + "examples": [ + "Create a new FAQ entry for password reset procedures.", + "Add a troubleshooting guide explaining steps to resolve login errors.", + "Draft a policy document outlining return and refund terms." + ] + }, + "tags": [ + "customer-support", + "document-creation", + "knowledge-base", + "FAQ", + "troubleshooting", + "policy" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"FAQ\",\"title\":\"How to reset my password?\",\"content\":\"To reset your password, click on 'Forgot Password' on the login page and follow the instructions sent to your email.\",\"tags\":[\"password\",\"account\",\"security\"],\"author\":\"SupportAgent01\",\"publishStatus\":\"published\"}", + "description": "Creates a published FAQ document describing password reset instructions." + }, + { + "inputJson": "{\"documentType\":\"Troubleshooting Guide\",\"title\":\"Resolving Login Errors\",\"content\":\"If you experience login errors, ensure your username and password are correct. Clear browser cache or try a different browser.\",\"tags\":[\"login\",\"errors\",\"troubleshooting\"],\"author\":\"TechTeam\",\"publishStatus\":\"draft\"}", + "description": "Creates a draft troubleshooting guide for login issues to be reviewed before publication." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "marketing-automation.generateCode", + "description": "Generates customizable marketing campaign code snippets based on user-defined inputs such as campaign type, target platform, preferred language, and tracking parameters. Accepts campaign details and outputs ready-to-use HTML, JavaScript, or JSON code for embedding in websites, emails, or ads to automate marketing workflows.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign to generate code for, e.g., 'email', 'landingPage', or 'socialMedia'", + "required": true, + "defaultValue": "" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "Target platform or channel where the code will be deployed, e.g., 'web', 'facebook', 'googleAds'", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming or markup language for the generated code, e.g., 'HTML', 'JavaScript', 'JSON'", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTracking", + "type": "boolean", + "description": "Whether to include tracking and analytics code snippets within the generated code", + "required": false, + "defaultValue": "true" + }, + { + "name": "trackingParameters", + "type": "object", + "description": "Optional key-value pairs specifying tracking parameters such as campaign ID, source, medium, term, and content", + "required": false, + "defaultValue": "{}" + }, + { + "name": "customText", + "type": "string", + "description": "Customizable text or call-to-action content to embed within the generated code", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code string, including the specified campaign logic and tracking parameters, ready for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate marketing campaign code snippets tailored to specific campaign types and platforms, saving time in manual coding and ensuring standardized tracking. Useful for creating email templates, landing pages, or ad scripts that integrate tracking parameters seamlessly.", + "limitations": "Does not generate full marketing campaign strategies or visuals; code is limited to snippets/templates and requires human review for styling and business logic validation.", + "examples": [ + "Generate an HTML email template with tracking for a Black Friday promotion.", + "Create JavaScript code snippet for embedding a social media campaign widget with built-in analytics.", + "Produce JSON configuration code for a Google Ads campaign including custom tracking parameters." + ] + }, + "tags": [ + "marketing", + "automation", + "code-generation", + "campaign", + "tracking", + "html", + "javascript", + "json" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"targetPlatform\":\"web\",\"language\":\"HTML\",\"includeTracking\":true,\"trackingParameters\":{\"campaignId\":\"BF2024\",\"source\":\"newsletter\",\"medium\":\"email\"},\"customText\":\"Don't miss our Black Friday deals!\"}", + "description": "Generate an HTML email template for Black Friday email campaign with tracking parameters included." + }, + { + "inputJson": "{\"campaignType\":\"socialMedia\",\"targetPlatform\":\"facebook\",\"language\":\"JavaScript\",\"includeTracking\":true,\"trackingParameters\":{\"campaignId\":\"FB2024\",\"source\":\"facebook\",\"medium\":\"ad\"},\"customText\":\"Shop now and save!\"}", + "description": "Generate JavaScript code snippet for embedding a Facebook ad widget with tracking and custom call-to-action text." + }, + { + "inputJson": "{\"campaignType\":\"landingPage\",\"targetPlatform\":\"web\",\"language\":\"HTML\",\"includeTracking\":false,\"trackingParameters\":{},\"customText\":\"Welcome to our exclusive offer!\"}", + "description": "Generate a simple landing page HTML snippet without tracking for a promotional campaign with custom welcome text." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "marketing-automation.createCode", + "description": "This tool generates customizable marketing automation scripts based on user inputs like campaign type, target platform, desired actions, and dynamic content. It accepts parameters defining campaign goals, audience, triggers, and content variables, then produces ready-to-deploy code snippets compatible with popular marketing platforms to automate campaign workflows.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign to create code for, e.g., email, SMS, social media.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "The marketing platform or service this code will run on, e.g., Mailchimp, HubSpot, Salesforce Marketing Cloud.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerEvent", + "type": "string", + "description": "Event or condition that triggers the automation, such as form submission, cart abandonment, or scheduled time.", + "required": true, + "defaultValue": "" + }, + { + "name": "actions", + "type": "array", + "description": "List of actions the code should perform when triggered, e.g., sendEmail, updateCRM, addTag.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "contentVariables", + "type": "object", + "description": "Key-value pairs defining dynamic content placeholders to personalize messages or actions within the code.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTracking", + "type": "boolean", + "description": "Whether to include tracking code snippets for analytics and performance monitoring.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Programming or scripting language for the generated code, e.g., JavaScript, Python, or platform-specific scripting.", + "required": false, + "defaultValue": "JavaScript" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string and metadata such as language and platform compatibility." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate marketing automation scripts customized to specific campaign parameters, platform requirements, and dynamic content, enabling fast deployment of automated marketing workflows without manual coding.", + "limitations": "This tool cannot test or deploy the generated code, nor handle platform-specific API authentication nuances automatically. It also does not generate complete end-to-end campaign setups, just the automation script code.", + "examples": [ + "Generate an email campaign automation code for Mailchimp triggered by form submission that sends a personalized welcome email.", + "Create SMS marketing automation code for Salesforce Marketing Cloud that triggers on cart abandonment and includes dynamic product recommendations.", + "Produce JavaScript code for a social media campaign on HubSpot that tags users based on link clicks and updates a CRM field." + ] + }, + "tags": [ + "marketing", + "automation", + "code-generation", + "campaign", + "script", + "email", + "sms", + "social-media" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"targetPlatform\":\"Mailchimp\",\"triggerEvent\":\"formSubmission\",\"actions\":[\"sendEmail\",\"addTag\"],\"contentVariables\":{\"userName\":\"{{firstName}}\"},\"includeTracking\":true,\"language\":\"JavaScript\"}", + "description": "Generate email automation JavaScript code for Mailchimp triggered by form submission with personalized user name and tracking enabled." + }, + { + "inputJson": "{\"campaignType\":\"sms\",\"targetPlatform\":\"Salesforce Marketing Cloud\",\"triggerEvent\":\"cartAbandonment\",\"actions\":[\"sendSMS\"],\"contentVariables\":{\"productName\":\"{{cartProduct}}\"},\"includeTracking\":false,\"language\":\"Python\"}", + "description": "Create SMS campaign Python code for Salesforce Marketing Cloud triggered by cart abandonment that sends product name dynamically, without tracking." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Code", + "context": null + } + }, + { + "name": "marketing-automation.createEmail", + "description": "Creates a fully formatted marketing email based on input parameters such as subject, body content, audience segments, and optional personalization data. It processes templates, inserts dynamic content, and outputs the ready-to-send email HTML along with metadata for campaign integration.", + "category": "marketing-automation", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email; it should be concise and engaging.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyContent", + "type": "string", + "description": "HTML or plain text content for the main body of the email, including placeholders for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceSegments", + "type": "array", + "description": "List of audience segment identifiers to target with this email campaign.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "senderName", + "type": "string", + "description": "Display name of the email sender, shown in the recipient's inbox.", + "required": false, + "defaultValue": "\"Marketing Team\"" + }, + { + "name": "senderEmail", + "type": "string", + "description": "Reply-to email address for recipients to respond to.", + "required": false, + "defaultValue": "\"noreply@company.com\"" + }, + { + "name": "personalizationData", + "type": "object", + "description": "Key-value pairs used to personalize email placeholders for recipients (e.g., firstName, discountCode).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "preheaderText", + "type": "string", + "description": "Optional preheader text that appears next to the subject line in many email clients.", + "required": false, + "defaultValue": "" + }, + { + "name": "callToActionUrl", + "type": "string", + "description": "URL to include as a main call to action link/button in the email.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email's HTML content, subject, sender info, target audience segments, and any metadata such as opt-out links or tracking codes." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create marketing emails customized with dynamic content and targeted audience segments, ready for campaign distribution. It is ideal for automating email content generation based on templates and personalization data.", + "limitations": "This tool does not handle actual sending of emails or integrate directly with email delivery services. It also does not validate email addresses or compliance requirements.", + "examples": [ + "Create a promotional email for a holiday sale targeting segmented customers with personalized discount codes.", + "Generate a newsletter email with dynamic sections based on user preferences and send it to segmented subscriber lists." + ] + }, + "tags": [ + "marketing", + "email", + "automation", + "campaign", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Exclusive Spring Sale!\",\"bodyContent\":\"

Hi {{firstName}}, Enjoy our Spring Sale!

Discount code: {{discountCode}}

\",\"audienceSegments\":[\"springSaleCustomers\",\"newsletterSubscribers\"],\"senderName\":\"YourBrand Team\",\"senderEmail\":\"info@yourbrand.com\",\"personalizationData\":{\"firstName\":\"Customer\",\"discountCode\":\"SPRING20\"},\"preheaderText\":\"Save big this spring!\",\"callToActionUrl\":\"https://yourbrand.com/spring-sale\"}", + "description": "Create a personalized spring sale promotional email with subject, body content with placeholders, specific audience segments, and call-to-action link." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "marketing-automation.createDocument", + "description": "Creates a marketing document such as a campaign brief, newsletter, or promotional flyer based on provided campaign details, target audience, and content specifications. It processes inputs like document type, keywords, and style to generate a formatted text document ready for review or distribution.", + "category": "marketing-automation", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of marketing document to create, e.g., 'newsletter', 'campaignBrief', 'promoFlyer'.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignName", + "type": "string", + "description": "Name of the marketing campaign this document pertains to.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience for this document.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMessages", + "type": "array", + "description": "List of key messages or points to include in the document.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "styleTone", + "type": "string", + "description": "Preferred style and tone, e.g., 'formal', 'casual', 'enthusiastic'.", + "required": false, + "defaultValue": "casual" + }, + { + "name": "wordCount", + "type": "number", + "description": "Desired approximate word count for the document.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action section in the document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document text and metadata such as document type and word count." + }, + "aiAgent": { + "useCase": "Use this tool when a marketing campaign requires a structured document like a newsletter, campaign brief, or promotional flyer created from specific campaign details, target segment info, and marketing messages. It helps automate content creation for campaign materials, saving time while ensuring consistency.", + "limitations": "Cannot generate complex graphic design layouts or embed multimedia elements; focuses on text content creation only.", + "examples": [ + "Create a promotional flyer for the summer sale campaign targeting young adults with enthusiastic tone.", + "Generate a campaign brief document for a new product launch aimed at business professionals with formal style.", + "Produce a newsletter highlighting key product features and upcoming events for an active user base." + ] + }, + "tags": [ + "marketing", + "automation", + "document", + "content-creation", + "campaign", + "newsletter", + "promotional", + "brief" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"newsletter\",\"campaignName\":\"Spring Launch\",\"targetAudience\":\"Existing customers interested in new products\",\"keyMessages\":[\"Introducing our new product line\",\"Exclusive offers available\",\"Join our launch event\"],\"styleTone\":\"enthusiastic\",\"wordCount\":600,\"includeCallToAction\":true}", + "description": "Create an enthusiastic newsletter for the Spring Launch campaign aimed at existing customers with key messages and a CTA." + }, + { + "inputJson": "{\"documentType\":\"campaignBrief\",\"campaignName\":\"Q3 Outreach\",\"targetAudience\":\"B2B clients in technology sector\",\"keyMessages\":[\"Focus on innovation\",\"Tailored solutions\",\"Dedicated support\"],\"styleTone\":\"formal\",\"wordCount\":800,\"includeCallToAction\":false}", + "description": "Generate a formal campaign brief for Q3 Outreach targeting B2B tech clients without a call-to-action section." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "documentation-tools.sendEmail", + "description": "Sends an email message as part of the documentation workflow. Accepts parameters like recipient addresses, subject, message body, optional attachments, and optional CC/BCC recipients. Processes inputs by assembling the email content and sending via an SMTP server or email service, returning a status object indicating success or failure.", + "category": "documentation-tools", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "Array of recipient email addresses. Required parameter.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email. Required parameter.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email message, supports plain text or HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional array of email addresses to receive a carbon copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional array of email addresses to receive a blind carbon copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects, each with filename and file content (base64 encoded).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "from", + "type": "string", + "description": "Sender's email address. If not provided, the default from address is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Indicates if the body content is formatted as HTML. Defaults to false (plain text).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object indicating whether the email was sent successfully, and an optional error message if failed. Example: { success: true, messageId: 'string', error: '' }" + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to programmatically send emails related to documentation workflows, such as sending documentation updates, notifications, reports, or archived docs to specified recipients. It supports attachments and HTML formatting for rich emails. It is suitable for scenarios requiring automated communication triggered by documentation changes or queries.", + "limitations": "This tool cannot draft content autonomously, handle email server configuration internally, or receive email replies. It depends on the environment to provide SMTP or email sending credentials and does not store emails or recipient data persistently.", + "examples": [ + "Send a documentation update email to a team mailing list with a PDF attachment.", + "Send a notification email with plain text to a single recipient when a doc is published.", + "Send a formatted HTML email with CC and BCC recipients for a documentation review request." + ] + }, + "tags": [ + "email", + "documentation", + "communication", + "automation", + "notifications", + "attachments", + "html" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"team@example.com\"],\"subject\":\"Deployment Docs Updated\",\"body\":\"Please find the updated deployment documentation attached.\",\"attachments\":[{\"filename\":\"deployment_guide.pdf\",\"content\":\"JVBERi0xLjQKJ...\"}],\"from\":\"noreply@company.com\",\"isHtml\":false}", + "description": "Send an email with a PDF attachment notifying the team that deployment docs have been updated." + }, + { + "inputJson": "{\"to\":[\"user@example.com\"],\"subject\":\"Documentation Published\",\"body\":\"Your requested documentation is now live.\",\"from\":\"docs@company.com\",\"isHtml\":false}", + "description": "Send a simple notification email to a single user after publishing documentation." + }, + { + "inputJson": "{\"to\":[\"editor@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[\"audit@example.com\"],\"subject\":\"Review Request: API Documentation\",\"body\":\"

Please review the updated API documentation and provide feedback.

\",\"from\":\"automation@docs.com\",\"isHtml\":true}", + "description": "Send an HTML email with CC and BCC recipients requesting review of API documentation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "documentation-tools.analyzeReport", + "description": "Analyzes structured and unstructured report documents to evaluate clarity, structure, consistency, and adherence to organizational writing standards. Accepts input reports in text or markdown formats and outputs a detailed analysis including detected issues, suggestions for improvement, and summary statistics.", + "category": "documentation-tools", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The full textual content of the report to analyze, in plain text or markdown format.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the report content provided (e.g., 'text', 'markdown').", + "required": false, + "defaultValue": "text" + }, + { + "name": "checkGrammar", + "type": "boolean", + "description": "Whether to check for grammatical errors within the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkConsistency", + "type": "boolean", + "description": "Whether to analyze internal consistency of terms, formatting, and style.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkStructure", + "type": "boolean", + "description": "Whether to evaluate document structure including headings, sections, and logical flow.", + "required": false, + "defaultValue": "true" + }, + { + "name": "organizationalStyleGuide", + "type": "string", + "description": "Optional JSON string defining organizational style guide rules (e.g., preferred terminology, formatting standards) to enforce.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results, including lists of issues found, suggestions for improvement, summary metrics (e.g., readability score, number of errors), and optionally a detailed report." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to perform a comprehensive quality assessment of textual report documents, for example to validate clarity, correctness, and adherence to style guides before publishing or sharing. It helps ensure professional documentation standards are met.", + "limitations": "This tool cannot modify the report content; it only analyzes and reports findings. It may have reduced accuracy on non-English reports or highly specialized technical language not covered by the style guide provided.", + "examples": [ + "Analyze the quarterly financial report for structural and grammatical issues.", + "Check the project status report text for consistency with our style guidelines.", + "Provide suggestions to improve clarity and flow in the technical design report." + ] + }, + "tags": [ + "analysis", + "documentation", + "report", + "quality-assurance", + "style-guide", + "grammar-check", + "structure-analysis" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"# Project Overview\\nThis report outlines the progress of the AI implementation project. Implementation phases completed: data collection, model training. Remaining tasks: evaluation and deployment.\",\"format\":\"markdown\",\"checkGrammar\":true,\"checkConsistency\":true,\"checkStructure\":true}", + "description": "Analyze a markdown formatted project update report including grammar, consistency, and structure." + }, + { + "inputJson": "{\"reportContent\":\"Executive Summary\\nOur sales increased by 15% compared to last quarter. However, inconsistencies were found in the data sources.\",\"format\":\"text\",\"checkGrammar\":true,\"checkConsistency\":true,\"checkStructure\":false}", + "description": "Analyze plain text executive summary focusing on grammar and consistency, ignoring structure." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "etl-processes.analyzeDocument", + "description": "Analyzes structured and unstructured documents by extracting key data elements, performing sentiment and entity recognition, and generating a summary report. Accepts documents in formats such as plain text, JSON, or PDF text content and returns structured analysis results and insights.", + "category": "etl-processes", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The raw text content of the document to be analyzed. Can be plain text extracted from documents.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "The format of the input document content (e.g., 'plainText', 'json', 'pdfText'). Helps determine parsing strategy.", + "required": true, + "defaultValue": "plainText" + }, + { + "name": "extractEntities", + "type": "boolean", + "description": "Flag indicating whether to perform named entity recognition to extract people, organizations, locations, etc.", + "required": false, + "defaultValue": "true" + }, + { + "name": "performSentimentAnalysis", + "type": "boolean", + "description": "Flag indicating whether to analyze the sentiment/tone of the document content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate number of sentences to include in the generated document summary.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the document for accurate NLP processing (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing extracted entities, sentiment scores, key phrases, and a text summary of the document for downstream use or reporting." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract actionable insights, entities, or summarize large documents in ETL workflows to facilitate downstream analysis, reporting, or data aggregation. Ideal for processing business documents, reports, customer feedback, or other textual data sources.", + "limitations": "Does not perform OCR on images or scanned PDFs; expects text content input. Not suitable for real-time streaming data analysis. Accuracy depends on the input text quality and supported language.", + "examples": [ + "Analyze the sentiment and entities in the customer feedback report to understand overall satisfaction.", + "Extract key people and organizations mentioned in a legal contract and produce a brief summary.", + "Summarize the quarterly sales report document and detect any critical topics or sentiments." + ] + }, + "tags": [ + "etl", + "document", + "analysis", + "nlp", + "sentiment", + "entity-extraction", + "summary" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"Our quarterly revenue increased by 15% with major contributions from the new product line. Customers like the new features but have some concerns about pricing.\",\"documentFormat\":\"plainText\",\"extractEntities\":true,\"performSentimentAnalysis\":true,\"summaryLength\":2,\"language\":\"en\"}", + "description": "Analyze a business report in plain text format extracting entities, sentiment, and summarizing key points." + }, + { + "inputJson": "{\"documentContent\":\"{\\\"title\\\": \\\"Customer Feedback\\\", \\\"comments\\\": [\\\"Great service but pricing is high\\\", \\\"Loved the product, will buy again\\\"]}\",\"documentFormat\":\"json\",\"extractEntities\":false,\"performSentimentAnalysis\":true,\"summaryLength\":1,\"language\":\"en\"}", + "description": "Analyze customer feedback given as a JSON string, performing sentiment analysis and summary." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "data-analytics.createFile", + "description": "Creates a data file from provided analytics content in various formats such as CSV, JSON, or Excel. Accepts raw data and optional metadata, processes formatting and encoding based on parameters, and outputs a downloadable file with specified file name and type.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing the dataset to be included in the file, where each object is a record with key-value pairs.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "The desired output file format: 'csv', 'json', or 'xlsx'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the file to create, without extension.", + "required": false, + "defaultValue": "analytics_data" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include headers/column names in the file output (applicable for CSV and Excel).", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to use for CSV files. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "encoding", + "type": "string", + "description": "Character encoding for the output file, e.g., 'utf-8'.", + "required": false, + "defaultValue": "utf-8" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file content as a Base64 encoded string, the complete file name with extension, and the MIME type of the file." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to export analyzed or processed data for sharing or further use, converting in-memory data structures into distributable and standardized file formats used in data analytics workflows. It supports common text and spreadsheet formats to maximize compatibility with data tools.", + "limitations": "Does not support very large datasets exceeding memory limits or complex binary formats beyond CSV, JSON, and Excel XLSX. It does not perform data validation beyond structural transformation.", + "examples": [ + "Create a CSV file from a list of sales records for download.", + "Export processed analytics results to an Excel file including headers.", + "Generate a JSON data file from filtered user data for API consumption." + ] + }, + "tags": [ + "data export", + "file creation", + "csv", + "json", + "excel", + "data-analytics", + "output" + ], + "examples": [ + { + "inputJson": "{ \"data\": [{\"name\": \"Alice\", \"sales\": 150}, {\"name\": \"Bob\", \"sales\": 200}], \"fileType\": \"csv\", \"fileName\": \"monthly_sales\", \"includeHeaders\": true, \"delimiter\": \",\", \"encoding\": \"utf-8\" }", + "description": "Creates a CSV file named monthly_sales.csv containing sales data with headers." + }, + { + "inputJson": "{ \"data\": [{\"product\": \"Widget\", \"price\": 20.5}, {\"product\": \"Gadget\", \"price\": 35.0}], \"fileType\": \"json\", \"fileName\": \"pricing_data\" }", + "description": "Creates a JSON file named pricing_data.json representing product pricing." + }, + { + "inputJson": "{ \"data\": [{\"year\": 2023, \"revenue\": 100000}, {\"year\": 2024, \"revenue\": 120000}], \"fileType\": \"xlsx\", \"includeHeaders\": true }", + "description": "Creates an Excel file named analytics_data.xlsx with yearly revenue data including headers." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "data-analytics.createEmail", + "description": "Generates a data-driven email content personalized with analytical insights. Accepts structured data inputs such as sales figures or customer metrics, processes them to extract key insights, and produces a formatted email body with summaries, recommendations, and visual highlights for effective communication.", + "category": "data-analytics", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the email recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSummary", + "type": "object", + "description": "Structured object containing the key metrics and values to highlight in the email (e.g., salesNumbers, conversionRates).", + "required": true, + "defaultValue": "" + }, + { + "name": "recommendations", + "type": "array", + "description": "List of actionable recommendations or next steps derived from the data insights to include in the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeVisuals", + "type": "boolean", + "description": "Flag to include simple textual visualization or highlight indicators within the email content.", + "required": false, + "defaultValue": "false" + }, + { + "name": "closingRemark", + "type": "string", + "description": "Optional closing statement or sign-off to end the email politely.", + "required": false, + "defaultValue": "Regards" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated email content including subject, greeting, body with insights and recommendations, and closing remarks." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically craft professional emails that communicate data insights clearly for stakeholders, summarizing analytics results or business metrics with recommended actions. It supports enhancing productivity in reporting and communication workflows.", + "limitations": "Does not generate graphical images or attachments; visuals are limited to text-based highlights. It cannot fetch or analyze raw data but requires structured input summaries supplied beforehand.", + "examples": [ + "Generate a sales performance email for the regional manager highlighting last quarter's KPIs and suggested focus areas.", + "Create a monthly marketing report email summarizing campaign effectiveness and next steps.", + "Draft a customer engagement update email incorporating user growth statistics and retention insights." + ] + }, + "tags": [ + "email", + "data-driven", + "analytics", + "reporting", + "communication", + "automation", + "business-insights" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"John\",\"subject\":\"Q1 Sales Update\",\"dataSummary\":{\"totalSales\":150000,\"growthRate\":\"8%\",\"topRegion\":\"West Coast\"},\"recommendations\":[\"Focus on West Coast expansion\",\"Increase digital marketing budget\"],\"includeVisuals\":true,\"closingRemark\":\"Best regards\"}", + "description": "Generate an email summarizing Q1 sales with key metrics and recommendations for the sales manager." + }, + { + "inputJson": "{\"recipientName\":\"Lisa\",\"subject\":\"Monthly Marketing Report\",\"dataSummary\":{\"campaignClicks\":12000,\"conversionRate\":\"3.5%\",\"highestChannel\":\"Email\"},\"recommendations\":[\"Optimize email subject lines\",\"Expand social media ads\"],\"includeVisuals\":false}", + "description": "Create a marketing performance email overview with campaign metrics for the marketing director." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "database-management.analyzeCustomer", + "description": "Analyzes customer data from a specified database to generate insights such as segmentation, purchasing behavior, and lifetime value. Accepts input parameters to filter customers by attributes like date range, location, and purchase history, then performs aggregation and statistical analysis. Outputs a summary report with key metrics and visualizable data objects.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string to access the customer database, including credentials and host info.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerFilter", + "type": "object", + "description": "Filtering criteria object to select customers by attributes like signupDate range, location, minimum purchases.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "analysisType", + "type": "array", + "description": "Array of analysis types to perform such as ['segmentation','purchaseBehavior','lifetimeValue'].", + "required": false, + "defaultValue": "[\"segmentation\",\"purchaseBehavior\"]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Date range object with 'startDate' and 'endDate' to limit data analyzed.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeInactive", + "type": "boolean", + "description": "Whether to include customers who have been inactive within the specified time range.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized customer analysis results including segments, behavioral patterns, and key metrics such as average purchase value and retention rate." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract and analyze customer data from a database to gain actionable insights for marketing, sales, or product development purposes. It is suitable for generating customer segments, evaluating purchasing behaviors, and calculating lifetime value based on flexible filters and time frames.", + "limitations": "This tool does not support real-time streaming data or perform predictive modeling beyond descriptive and segmentational analysis. It requires appropriate database access and does not clean or enrich data beyond filtering.", + "examples": [ + "Analyze purchasing behavior of customers in the last year within the US region.", + "Generate customer segments for targeted marketing based on purchase frequency and recency.", + "Calculate average customer lifetime value for all customers active in past 2 years, including inactive ones." + ] + }, + "tags": [ + "database", + "customer-analysis", + "segmentation", + "purchase-behavior", + "lifetime-value", + "data-aggregation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myDbServer;Database=Customers;User Id=admin;Password=securePass!\",\"customerFilter\":{\"location\":\"US\"},\"analysisType\":[\"segmentation\",\"purchaseBehavior\"],\"timeRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\"},\"includeInactive\":false}", + "description": "Analyze segmentation and purchase behavior for US customers during the 2023 calendar year, excluding inactive customers." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myDbServer;Database=Customers;User Id=admin;Password=securePass!\",\"analysisType\":[\"lifetimeValue\"],\"timeRange\":{\"startDate\":\"2020-01-01\",\"endDate\":\"2024-01-01\"},\"includeInactive\":true}", + "description": "Calculate lifetime value for all customers active between 2020 and 2024, including those currently inactive." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "etl-processes.createDocument", + "description": "This tool accepts structured data inputs, applies optional transformations and formatting according to a provided schema or template, and outputs a well-structured document in various formats such as JSON, XML, or CSV. It facilitates creating standardized documents from raw or semi-structured data for further processing or integration.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The raw data input to be transformed into a document. Can be JSON object or nested structures representing the source data.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format. Supported formats include 'json', 'xml', 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "transformationRules", + "type": "object", + "description": "Optional mapping or transformation rules defining how to convert inputData fields to document fields, including renaming, filtering, or computed fields.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentSchema", + "type": "object", + "description": "Optional schema or template validating or guiding the structure of the output document to ensure compliance with expected format.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include metadata such as generation timestamp or source information in the output document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentOutput", + "type": "boolean", + "description": "Whether to pretty-print the output document with indentation for readability, applicable mainly for JSON or XML outputs.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document as a string under 'documentContent', and metadata such as format, timestamp, and success status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to synthesize a clean, standardized document from raw or semi-structured data inputs for use in ETL pipelines, data exchange, or reporting. It helps convert input data into common document formats, applying transformations and enforcing schemas as needed.", + "limitations": "Cannot perform deep content validation beyond structural schema enforcement; not suitable for generating complex narrative text or unstructured documents.", + "examples": [ + "Create a JSON document representing sales records from raw sales data.", + "Generate an XML document for integration with a third-party API requiring a specific schema.", + "Produce a CSV formatted summary report from raw transaction data with selective fields." + ] + }, + "tags": [ + "etl", + "document", + "transform", + "json", + "xml", + "csv", + "schema", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"id\":101,\"name\":\"Widget\",\"price\":9.99,\"category\":\"tools\"},\"outputFormat\":\"json\",\"transformationRules\":{\"price\":\"cost\"},\"documentSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"number\"},\"name\":{\"type\":\"string\"},\"cost\":{\"type\":\"number\"},\"category\":{\"type\":\"string\"}},\"required\":[\"id\",\"name\",\"cost\"]},\"includeMetadata\":true,\"indentOutput\":true}", + "description": "Transform product data into a JSON document renaming 'price' to 'cost', validating with a schema, and including metadata." + }, + { + "inputJson": "{\"inputData\":[{\"date\":\"2024-01-01\",\"sales\":1000},{\"date\":\"2024-01-02\",\"sales\":1500}],\"outputFormat\":\"csv\",\"transformationRules\":{},\"includeMetadata\":false,\"indentOutput\":false}", + "description": "Convert an array of daily sales records into a CSV document without metadata." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.createCustomer", + "description": "Creates a new customer record in the database with provided details such as name, email, phone number, and address. Validates mandatory fields and returns a confirmation with the unique customer ID and status. Accepts customer data as input and outputs creation result.", + "category": "database-management", + "parameters": [ + { + "name": "name", + "type": "string", + "description": "Full name of the customer to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address of the customer for contact purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "phoneNumber", + "type": "string", + "description": "Customer's phone number including country code.", + "required": false, + "defaultValue": "" + }, + { + "name": "address", + "type": "object", + "description": "Postal address details including street, city, state, and zip code.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional custom metadata as key-value pairs for the customer.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the success status, unique customer ID if created, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to register a new customer into the company's database, capturing their contact and optional detailed address or metadata. Ideal for onboarding new clients or user signups where a persistent customer record is necessary.", + "limitations": "Does not handle customer authentication credentials or payment information. Does not support bulk creation in a single call. Validates only basic data completeness, not detailed format validations like email verification.", + "examples": [ + "Create a customer with name, email, and phone number for a new lead.", + "Add new customer including full address details in the database.", + "Create a customer record with custom metadata tags attached." + ] + }, + "tags": [ + "database", + "customer", + "create", + "CRM", + "record-management", + "business" + ], + "examples": [ + { + "inputJson": "{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phoneNumber\":\"+1234567890\"}", + "description": "Create a basic customer profile with just name, email, and phone." + }, + { + "inputJson": "{\"name\":\"Acme Corp\",\"email\":\"contact@acmecorp.com\",\"address\":{\"street\":\"123 Market St\",\"city\":\"Metropolis\",\"state\":\"NY\",\"zip\":\"10001\"}}", + "description": "Create a customer with company name and full address details." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Customer", + "context": null + } + }, + { + "name": "database-management.sendEmail", + "description": "This tool allows sending emails triggered by database events or queries. It accepts input parameters including recipient addresses, subject, body content, optional attachments, and SMTP configuration or template usage. The tool processes these inputs to compose and dispatch an email, returning the delivery status and message ID if successful.", + "category": "database-management", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses to send the email to.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main text or HTML content of the email body.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of file attachments with properties name and base64 encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "cc", + "type": "array", + "description": "List of email addresses to carbon copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "List of email addresses to blind carbon copy.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "smtpConfig", + "type": "object", + "description": "SMTP server configuration including host, port, username, and password for sending the email.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with properties: success (boolean), messageId (string) if sent, and errorMessage (string) if failed." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to send automated emails based on data in a database or system events, such as notifications, reports, or alerts. It should be used where composable email content and delivery through SMTP is required. This tool enables integration between database triggers and outgoing email workflows.", + "limitations": "This tool does not generate email content automatically; the body and subject must be provided. It requires valid SMTP credentials and network access to the SMTP server. It does not support advanced email campaign management or analytics.", + "examples": [ + "Send an alert email when a new high priority ticket is inserted in the database.", + "Email a weekly summary report to a list of subscribers from database query results.", + "Notify team members via email when certain data thresholds are exceeded, including log attachments." + ] + }, + "tags": [ + "email", + "database", + "notification", + "smtp", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"user@example.com\"],\"subject\":\"Database Alert\",\"body\":\"A new critical record has been added.\",\"smtpConfig\":{\"host\":\"smtp.example.com\",\"port\":587,\"username\":\"noreply@example.com\",\"password\":\"securepass\"}}", + "description": "Send a simple alert email notifying about a new critical database record." + }, + { + "inputJson": "{\"recipients\":[\"team@example.com\"],\"cc\":[\"manager@example.com\"],\"subject\":\"Weekly Report\",\"body\":\"Please find the weekly sales report attached.\",\"attachments\":[{\"name\":\"report.csv\",\"content\":\"QmFzZTY0IGVuY29kZWQgY29udGVudA==\"}],\"smtpConfig\":{\"host\":\"smtp.example.com\",\"port\":587,\"username\":\"reports@example.com\",\"password\":\"securepass\"}}", + "description": "Send a weekly sales report with CSV attachment to team and cc manager." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "frontend-development.analyzeCustomer", + "description": "Analyzes customer interaction data from frontend applications to identify behavior patterns, preferences, and segmentation. Accepts raw customer interaction logs and optional filtering parameters, processes the data to extract meaningful insights such as session durations, click heatmaps, and feature usage statistics, and returns a structured analysis report with actionable metrics.", + "category": "frontend-development", + "parameters": [ + { + "name": "interactionLogs", + "type": "array", + "description": "An array of customer interaction events from the frontend, each containing timestamp, eventType, and metadata relevant to user actions.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "An optional object specifying the start and end dates to filter interactions by, with 'start' and 'end' as ISO date strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentBy", + "type": "string", + "description": "Optional dimension name to segment the customers by, e.g., 'location', 'deviceType', or 'userTier'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeHeatmap", + "type": "boolean", + "description": "If true, include a heatmap analysis of click and hover regions in the output report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "minSessionDuration", + "type": "number", + "description": "Filter out interactions from sessions shorter than this duration in seconds to reduce noise.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "A report object containing summarized metrics such as total users, average session length, top interaction types, segment distributions, and optional heatmap data." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing frontend customer behavior to generate actionable insights for UX improvements, marketing segmentation, or feature prioritization. It helps transform raw interaction data into understandable customer profiles and usage metrics.", + "limitations": "This tool cannot predict future customer behavior or automatically generate personalized recommendations. It focuses on analyzing provided interaction data and requires clean, structured input logs.", + "examples": [ + "Analyze customer interactions over the last month and segment by device type.", + "Generate a heatmap of user clicks from interaction logs filtered to sessions longer than 1 minute.", + "Provide an overview of user behavior segmented by geographic location for the past quarter." + ] + }, + "tags": [ + "frontend", + "customer-analysis", + "user-behavior", + "segmentation", + "heatmap", + "UX", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"interactionLogs\":[{\"timestamp\":\"2024-05-20T15:00:00Z\",\"eventType\":\"click\",\"metadata\":{\"x\":120,\"y\":250,\"elementId\":\"btn-submit\"}},{\"timestamp\":\"2024-05-20T15:01:30Z\",\"eventType\":\"pageview\",\"metadata\":{\"url\":\"/home\"}}],\"dateRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"segmentBy\":\"deviceType\",\"includeHeatmap\":true,\"minSessionDuration\":60}", + "description": "Analyze May 2024 customer interactions, segmenting by device type, include click heatmap, and filter sessions shorter than 60 seconds." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "backend-development.downloadFile", + "description": "This tool facilitates downloading files from a specified URL using HTTP(S) protocol. It accepts the file URL, optional HTTP headers for authentication or other purposes, and options to save the file with a custom name and optional timeout settings. The tool returns the status of the download including success, file path saved, or error details if failed.", + "category": "backend-development", + "parameters": [ + { + "name": "fileUrl", + "type": "string", + "description": "The URL of the file to download. Must be a valid HTTP or HTTPS URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "saveAs", + "type": "string", + "description": "Optional name (including path) to save the downloaded file. If omitted, the file name from the URL is used in current directory.", + "required": false, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers as key-value pairs to include in the download request, e.g., for authentication.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Optional timeout for the download in seconds. Defaults to 60 seconds if not specified.", + "required": false, + "defaultValue": "60" + }, + { + "name": "allowRedirects", + "type": "boolean", + "description": "Whether to follow HTTP redirects during the download. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the result of the download. Includes success boolean, savedFilePath if successful, and error message if failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically download files from the internet or internal servers within a backend or automation context. It is suitable for retrieving media, documents, or other file types where HTTP URLs are provided, with support for custom headers and timeout management to handle protected or large files.", + "limitations": "Cannot download files from non-HTTP(S) protocols (e.g., FTP, file systems). Does not perform file type validation or virus scanning. Requires valid URLs and correct header configuration for protected resources.", + "examples": [ + "Download a public PDF file from a URL and save it with default name.", + "Download an image from a URL that requires an authorization header and save to a custom path.", + "Download a file with a reduced timeout setting to avoid long wait times." + ] + }, + "tags": [ + "download", + "file", + "backend", + "http", + "api", + "file-transfer" + ], + "examples": [ + { + "inputJson": "{\"fileUrl\":\"https://example.com/sample.pdf\"}", + "description": "Download a PDF file from a public URL, saving it with original filename in the current directory." + }, + { + "inputJson": "{\"fileUrl\":\"https://api.example.com/data/image.png\",\"headers\":{\"Authorization\":\"Bearer abc123\"},\"saveAs\":\"/tmp/image.png\"}", + "description": "Download an image using bearer token authorization and save to /tmp/image.png." + }, + { + "inputJson": "{\"fileUrl\":\"https://files.example.com/archive.zip\",\"timeoutSeconds\":30,\"allowRedirects\":false}", + "description": "Download a zip archive with 30 second timeout and block redirects." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "backend-development.analyzeDataset", + "description": "This tool accepts a dataset as input, either as an array of objects or a JSON string representing tabular data, and performs statistical and structural analysis. It computes summaries such as data types per column, missing values, basic statistics (mean, median, mode, std), and detects outliers. The output is a structured report providing insights about the dataset's quality and composition.", + "category": "backend-development", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "The dataset to analyze, provided as an array of objects where each object is a record with key-value pairs.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Optional: Format of the input dataset if given as a string, e.g., 'json' or 'csv'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "outlierDetection", + "type": "boolean", + "description": "Whether to perform outlier detection for numeric fields using z-score. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSampleSize", + "type": "number", + "description": "Maximum number of records to sample for analysis to optimize performance. Defaults to 10000.", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "A report object containing metadata for each column including type, count of missing values, descriptive statistics for numeric fields, unique value counts for categorical fields, and identified outliers if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you have a structured dataset and need a quick comprehensive overview of its properties, quality, and statistical characteristics to guide data cleaning, transformation, or validation steps before backend processing or API integration.", + "limitations": "This tool does not perform deep domain-specific analysis or predictive modeling. It is intended for exploratory data profiling and may not handle very large datasets efficiently beyond the specified sample limit.", + "examples": [ + "Analyze a JSON array dataset to get descriptive stats and missing data report.", + "Check dataset data types and identify outliers before database import.", + "Profile CSV-formatted data to summarize categorical and numeric columns." + ] + }, + "tags": [ + "dataset", + "analysis", + "statistics", + "data-quality", + "backend", + "profiling" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"id\":1,\"age\":25,\"income\":50000,\"city\":\"New York\"},{\"id\":2,\"age\":30,\"income\":60000,\"city\":\"San Francisco\"},{\"id\":3,\"age\":null,\"income\":70000,\"city\":\"Chicago\"}],\"outlierDetection\":true}", + "description": "Analyze a sample dataset with numeric and categorical data, including some missing values and detect outliers." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "backend-development.generateDataset", + "description": "Generates realistic synthetic datasets for backend development and testing. Accepts parameters defining schema attributes, data types, sizes, and value ranges. Produces structured datasets in JSON or CSV formats that simulate real-world data for use in testing APIs, databases, and data processing pipelines.", + "category": "backend-development", + "parameters": [ + { + "name": "schema", + "type": "array", + "description": "An array of objects describing the dataset fields, including name, data type, and optional constraints such as min/max values or length.", + "required": true, + "defaultValue": "" + }, + { + "name": "recordCount", + "type": "number", + "description": "Number of records (rows) to generate in the dataset.", + "required": true, + "defaultValue": "100" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the output dataset, either 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include headers in the output for CSV format.", + "required": false, + "defaultValue": "true" + }, + { + "name": "seed", + "type": "number", + "description": "Optional seed value for random data generation to allow reproducible datasets.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dataset as a string under 'data' key and metadata about generation parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate realistic yet synthetic datasets matching a specified schema for backend system testing, API prototyping, or data pipeline validation. It enables simulation of diverse data without exposing real user information.", + "limitations": "Cannot generate highly specialized or domain-specific data requiring deep semantic accuracy beyond basic types and constraints. Does not populate complex nested or relational data structures beyond flat schemas.", + "examples": [ + "Generate a 500-record dataset of user profiles with fields for id, name, email, and age in CSV format.", + "Produce JSON dataset with 1000 records for products having id, name, price, and stock quantity with realistic numeric ranges.", + "Create a small test dataset with 10 entries including fields firstName (string), isActive (boolean), and signupDate (date string) using a fixed random seed for reproducibility." + ] + }, + "tags": [ + "data-generation", + "testing", + "backend", + "synthetic-dataset", + "api-development" + ], + "examples": [ + { + "inputJson": "{\"schema\":[{\"name\":\"id\",\"type\":\"integer\",\"constraints\":{\"min\":1,\"max\":1000}},{\"name\":\"name\",\"type\":\"string\",\"constraints\":{\"length\":10}},{\"name\":\"email\",\"type\":\"string\"},{\"name\":\"age\",\"type\":\"integer\",\"constraints\":{\"min\":18,\"max\":99}}],\"recordCount\":500,\"outputFormat\":\"csv\",\"includeHeaders\":true}", + "description": "Generate 500 user profiles in CSV with id, name, email, age" + }, + { + "inputJson": "{\"schema\":[{\"name\":\"productId\",\"type\":\"integer\",\"constraints\":{\"min\":1000,\"max\":9999}},{\"name\":\"productName\",\"type\":\"string\"},{\"name\":\"price\",\"type\":\"number\",\"constraints\":{\"min\":1.0,\"max\":999.99}},{\"name\":\"stock\",\"type\":\"integer\",\"constraints\":{\"min\":0,\"max\":500}}],\"recordCount\":1000,\"outputFormat\":\"json\"}", + "description": "Generate 1000 product records in JSON format" + }, + { + "inputJson": "{\"schema\":[{\"name\":\"firstName\",\"type\":\"string\"},{\"name\":\"isActive\",\"type\":\"boolean\"},{\"name\":\"signupDate\",\"type\":\"string\"}],\"recordCount\":10,\"seed\":42}", + "description": "Generate 10 records with specified fields, fixed seed for reproducibility" + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "backend-development.createDatabase", + "description": "Creates a new database instance on a specified database server with given configuration parameters such as database type, name, user credentials, and optional settings. It accepts inputs defining the target server, database engine, access credentials, and configuration options, performs the creation operation, and returns a confirmation with connection details or error information if creation fails.", + "category": "backend-development", + "parameters": [ + { + "name": "serverHost", + "type": "string", + "description": "The hostname or IP address of the database server where the database should be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "serverPort", + "type": "number", + "description": "The port number on which the database server listens for connections.", + "required": false, + "defaultValue": "3306" + }, + { + "name": "databaseType", + "type": "string", + "description": "The type of the database engine to create (e.g., MySQL, PostgreSQL, MongoDB).", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseName", + "type": "string", + "description": "The name of the new database to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "adminUser", + "type": "string", + "description": "Administrator username authorized to create databases on the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "adminPassword", + "type": "string", + "description": "Administrator password corresponding to the adminUser.", + "required": true, + "defaultValue": "" + }, + { + "name": "characterSet", + "type": "string", + "description": "Character set encoding for the database if applicable (e.g., utf8mb4).", + "required": false, + "defaultValue": "utf8mb4" + }, + { + "name": "collation", + "type": "string", + "description": "Collation setting for the database if applicable (e.g., utf8mb4_unicode_ci).", + "required": false, + "defaultValue": "utf8mb4_unicode_ci" + }, + { + "name": "additionalOptions", + "type": "object", + "description": "Optional additional configuration options specific to the database type as key-value pairs.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the operation, connection information including database URL or URI if successful, and any error details if failed." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to provision a new database instance programmatically on a remote or local database server as part of backend setup, deployment automation, or infrastructure management workflows. It is suited for initializing new data storage backends for web applications, services, or testing environments.", + "limitations": "This tool does not handle advanced database configuration beyond creation such as tuning performance parameters, managing database schema or tables, or applying security policies. It also depends on correct admin credentials and that network connectivity and permissions are properly configured.", + "examples": [ + "Create a PostgreSQL database named 'inventory' on a remote server 'db.prod.example.com' with admin user 'admin' and default settings.", + "Provision a MySQL test database 'test_db' on localhost with custom character set and collation.", + "Create a MongoDB database with additional options to enable certain flags or storage engines." + ] + }, + "tags": [ + "backend", + "database", + "provisioning", + "infrastructure", + "automation", + "server", + "create", + "db" + ], + "examples": [ + { + "inputJson": "{\"serverHost\":\"db.prod.example.com\",\"serverPort\":5432,\"databaseType\":\"PostgreSQL\",\"databaseName\":\"inventory\",\"adminUser\":\"admin\",\"adminPassword\":\"securePass123\",\"characterSet\":\"\",\"collation\":\"\",\"additionalOptions\":{}}", + "description": "Create a PostgreSQL database 'inventory' on a remote production server with default character set and collation." + }, + { + "inputJson": "{\"serverHost\":\"127.0.0.1\",\"serverPort\":3306,\"databaseType\":\"MySQL\",\"databaseName\":\"test_db\",\"adminUser\":\"root\",\"adminPassword\":\"rootpass\",\"characterSet\":\"utf8mb4\",\"collation\":\"utf8mb4_general_ci\",\"additionalOptions\":{}}", + "description": "Create a MySQL test database on localhost with specific character set and collation." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "automation-frameworks.generateCode", + "description": "Generates automation framework boilerplate or specific workflow code based on user-defined parameters such as target framework, programming language, and desired automation tasks. Accepts structured input describing automation requirements and outputs ready-to-use code snippets or files tailored to the selected environment.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "framework", + "type": "string", + "description": "The automation framework to generate code for (e.g., Selenium, Cypress, Puppeteer).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for code generation (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "tasks", + "type": "array", + "description": "List of automation tasks or actions to include in the generated code (e.g., ['login', 'formSubmit', 'dataExtraction']).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "configuration", + "type": "object", + "description": "Optional detailed configuration for specific tasks or framework settings, such as URLs, selectors, timeouts.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code as a string and metadata including the filename and language used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate repetitive tasks by generating scaffold or fully functional automation scripts tailored to a specific framework and language. It's ideal for quickly producing boilerplate or customized action sequences based on user input, saving development time and ensuring consistency.", + "limitations": "This tool cannot validate the generated code execution or handle complex business logic beyond the predefined tasks. It also does not interface with live automation environments directly.", + "examples": [ + "Generate Selenium code in Python for login and data extraction tasks with comments.", + "Create Cypress automation scripts in JavaScript for form submission and verification.", + "Produce Puppeteer scripts in TypeScript for navigation and screenshot capture without comments." + ] + }, + "tags": [ + "automation", + "code-generation", + "framework", + "scripting", + "workflow", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"framework\":\"Selenium\",\"language\":\"Python\",\"tasks\":[\"login\",\"dataExtraction\"],\"includeComments\":true,\"configuration\":{\"loginUrl\":\"https://example.com/login\",\"usernameSelector\":\"#user\",\"passwordSelector\":\"#pass\"}}", + "description": "Generate Selenium automation code in Python that logs into a website and extracts data, with comments included." + }, + { + "inputJson": "{\"framework\":\"Cypress\",\"language\":\"JavaScript\",\"tasks\":[\"formSubmit\"],\"includeComments\":false,\"configuration\":{\"formUrl\":\"https://example.com/contact\",\"submitSelector\":\"button[type='submit']\"}}", + "description": "Create Cypress script in JavaScript for submitting a contact form on a website, without comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeDocument", + "description": "Analyzes textual documents to extract key metadata, identify sentiment, detect entities, and summarize content. Accepts text input or document URLs, processes natural language content using NLP techniques, and outputs a structured analysis report with insights for automation workflows.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "Raw text content of the document to analyze. Required if documentUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "documentUrl", + "type": "string", + "description": "URL pointing to the document to analyze. Required if documentText is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) of the document text for processing. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "extractEntities", + "type": "boolean", + "description": "Whether to extract named entities such as persons, organizations, locations. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the document text. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summarize", + "type": "boolean", + "description": "Whether to generate a concise summary of the document content. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON structured report including detected language, entity list with types and mentions, sentiment scores, and optional content summary." + }, + "aiAgent": { + "useCase": "Use this tool when automating workflows that require understanding or extracting insights from unstructured document text, such as processing email bodies, reports, or web documents for key information, sentiment, or summarization to drive decisions or triggers.", + "limitations": "The tool does not interpret complex document formats (like spreadsheets or scanned images), and its analysis quality depends on the input text language and clarity. It does not perform in-depth domain-specific reasoning beyond general NLP.", + "examples": [ + "Analyze the sentiment and extract entities from this customer feedback email.", + "Summarize and identify key people mentioned in the attached project report.", + "Fetch the linked news article and provide a summary with sentiment analysis." + ] + }, + "tags": [ + "automation", + "NLP", + "document analysis", + "sentiment", + "entity extraction", + "text summarization", + "workflow", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Dear team, the Q2 results show a 20% growth, but some customer complaints were received about delivery delays.\",\"extractEntities\":true,\"detectSentiment\":true,\"summarize\":true}", + "description": "Analyze a short business email for entities, sentiment, and generate a summary." + }, + { + "inputJson": "{\"documentUrl\":\"https://example.com/reports/annual-summary.txt\",\"language\":\"en\",\"extractEntities\":true,\"detectSentiment\":false,\"summarize\":true}", + "description": "Analyze a remote text report: extract entities and summarize content, skip sentiment analysis." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "automation-frameworks.createFile", + "description": "Creates a new file with specified name, content, and type within a target directory. Accepts parameters defining the file's name, content, encoding, and target path. Produces confirmation with file path and creation status.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the file to create including extension (e.g., \"report.txt\").", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The textual content to write inside the file.", + "required": false, + "defaultValue": "" + }, + { + "name": "encoding", + "type": "string", + "description": "The encoding to use when writing the file, e.g., UTF-8, ASCII.", + "required": false, + "defaultValue": "UTF-8" + }, + { + "name": "targetDirectory", + "type": "string", + "description": "The directory path where the file should be created. If empty, defaults to current directory.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full path to the created file and a success flag indicating if the operation was successful." + }, + "aiAgent": { + "useCase": "Use this tool when an automated workflow or script needs to generate new files dynamically, such as logs, configuration files, reports, or data exports, as part of broader automation tasks. It is especially useful when file creation must be controlled with parameters like encoding and overwrite behavior.", + "limitations": "This tool cannot create directories; the target directory must exist. It does not handle binary file creation beyond encoding string content. It does not support appending to files or advanced file permissions.", + "examples": [ + "Create a text report file named \"summary.txt\" with UTF-8 encoding in the current directory.", + "Generate a configuration JSON file named \"config.json\" with given settings content into a specified existing directory.", + "Overwrite an existing file \"log.txt\" with new logs if overwrite is set to true." + ] + }, + "tags": [ + "automation", + "file", + "creation", + "workflow", + "text", + "filesystem" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"notes.md\",\"content\":\"# Meeting Notes\\n- Discuss project timeline\\n- Assign tasks\",\"encoding\":\"UTF-8\",\"targetDirectory\":\"/home/user/docs\",\"overwrite\":false}", + "description": "Create a Markdown notes file in the user's docs folder without overwriting if already exists." + }, + { + "inputJson": "{\"fileName\":\"data.csv\",\"content\":\"id,name,age\\n1,Alice,30\\n2,Bob,25\",\"encoding\":\"UTF-8\",\"targetDirectory\":\"\",\"overwrite\":true}", + "description": "Generate a CSV file in the current directory, overwriting if it exists." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "automation-frameworks.createDocument", + "description": "Creates a new document based on specified parameters including template type, content structure, and output format. Accepts inputs such as document title, sections content in structured form, and desired file format to generate a ready-to-use document file.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the document to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of section objects, each containing a header and content to populate the document body.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateType", + "type": "string", + "description": "The type of document template to use (e.g., report, proposal, manual).", + "required": false, + "defaultValue": "report" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired file format of the generated document (e.g., pdf, docx, html).", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Indicates whether to include a table of contents in the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "author", + "type": "string", + "description": "Name of the document author, included in metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the document generation result including file URL or base64 content, file name, and metadata about the document." + }, + "aiAgent": { + "useCase": "Use this tool when automating the generation of structured documents needed in workflows, such as project reports, proposals, or manuals, where input content is programmatically defined and output is needed in standard document formats for sharing or archiving.", + "limitations": "This tool does not provide advanced text formatting, styling beyond the selected template, or content validation. Complex layouts or graphics need to be handled externally.", + "examples": [ + "Create a project status report from provided sections and export as a PDF.", + "Generate a user manual document with specified content sections in DOCX format.", + "Produce a proposal document including a table of contents and author metadata." + ] + }, + "tags": [ + "automation", + "document", + "generate", + "report", + "workflow", + "pdf", + "docx" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Monthly Sales Report\",\"sections\":[{\"header\":\"Executive Summary\",\"content\":\"This month sales increased by 10%.\"},{\"header\":\"Data Analysis\",\"content\":\"Detailed sales data and charts.\"}],\"templateType\":\"report\",\"outputFormat\":\"pdf\",\"includeTableOfContents\":true,\"author\":\"Jane Smith\"}", + "description": "Generate a monthly sales report PDF including a table of contents and author metadata." + }, + { + "inputJson": "{\"title\":\"Project Proposal\",\"sections\":[{\"header\":\"Introduction\",\"content\":\"Project goals and objectives.\"},{\"header\":\"Budget\",\"content\":\"Estimated costs and funding sources.\"}],\"templateType\":\"proposal\",\"outputFormat\":\"docx\",\"includeTableOfContents\":false,\"author\":\"John Doe\"}", + "description": "Create a project proposal DOCX without a table of contents." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "model-management.generateDocument", + "description": "Generates structured technical documents such as model cards or deployment reports based on provided metadata, model parameters, training details, and performance metrics. It accepts inputs describing the AI model and outputs a formatted document useful for sharing or compliance.", + "category": "model-management", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of document to generate, e.g., 'modelCard' or 'deploymentReport'", + "required": true, + "defaultValue": "" + }, + { + "name": "modelName", + "type": "string", + "description": "Name of the AI model to document", + "required": true, + "defaultValue": "" + }, + { + "name": "modelVersion", + "type": "string", + "description": "Version identifier of the model", + "required": false, + "defaultValue": "" + }, + { + "name": "trainingDataDescription", + "type": "string", + "description": "Brief description of the training dataset used", + "required": false, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Key-value pairs representing model performance metrics (e.g., accuracy, F1 score)", + "required": false, + "defaultValue": "" + }, + { + "name": "deploymentDetails", + "type": "string", + "description": "Details about the deployment environment and configuration", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the document author or responsible engineer", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated document text, formatted in markdown or HTML to facilitate integration or publishing." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to produce standardized documentation about AI models, including their key characteristics, training setups, performance metrics, and deployment scenarios, useful for reporting, auditing, or stakeholder communication.", + "limitations": "It cannot generate full detailed training logs or raw data insights; it provides summary-level document generation based on supplied metadata.", + "examples": [ + "Generate a model card for version 2.1 of the sentiment analysis model with key accuracy and F1 scores.", + "Create a deployment report listing environment and configuration details for a fraud detection model.", + "Produce a standardized technical document summarizing the recent model training details and evaluation metrics." + ] + }, + "tags": [ + "model-management", + "document-generation", + "model-card", + "deployment-report", + "AI-documentation" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"modelCard\",\"modelName\":\"ImageClassifier\",\"modelVersion\":\"v1.0\",\"trainingDataDescription\":\"Images from CIFAR-10 dataset\",\"performanceMetrics\":{\"accuracy\":\"92%\",\"f1Score\":\"0.91\"},\"author\":\"Jane Doe\"}", + "description": "Generate a model card document summarizing an image classifier version 1.0 with performance metrics and training dataset." + }, + { + "inputJson": "{\"documentType\":\"deploymentReport\",\"modelName\":\"CreditRiskModel\",\"deploymentDetails\":\"AWS EC2, containerized with Docker, auto-scaling enabled\",\"author\":\"John Smith\"}", + "description": "Generate a deployment report summarizing environment and configuration details for a credit risk model deployment." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "agent-management.generateCode", + "description": "Generates customized source code snippets or full modules for AI agents based on specified language, functionality, and integration parameters. Accepts inputs defining target programming language, desired features, and API integrations, then produces ready-to-use code optimized for the agent environment.", + "category": "agent-management", + "parameters": [ + { + "name": "language", + "type": "string", + "description": "The programming language in which the code should be generated, e.g., 'Python', 'JavaScript'.", + "required": true, + "defaultValue": "" + }, + { + "name": "functionality", + "type": "string", + "description": "A description outlining the core functions and behavior the generated code should implement.", + "required": true, + "defaultValue": "" + }, + { + "name": "integrationAPIs", + "type": "array", + "description": "List of external APIs or services the code should integrate with, e.g., ['OpenAI API', 'Slack API'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments within the generated code for easier understanding.", + "required": false, + "defaultValue": "true" + }, + { + "name": "codeStyle", + "type": "string", + "description": "Preferred coding style or conventions to follow, e.g., 'PEP8', 'Google JavaScript Style'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code as a string and metadata such as language and dependencies." + }, + "aiAgent": { + "useCase": "Use this tool when you need to rapidly generate custom source code for AI agents or bots based on specific functional requirements and preferred programming languages. It helps automate coding tasks, enabling faster prototyping and deployment of agent capabilities.", + "limitations": "The tool cannot guarantee fully debugged or optimized code; generated code may require review and testing. It does not support generating code for unsupported or unspecified programming languages.", + "examples": [ + "Generate Python code that implements a chatbot responding to user queries.", + "Create JavaScript code integrating with Slack API to send notifications.", + "Produce Python module with OpenAI API calls for natural language processing tasks." + ] + }, + "tags": [ + "code generation", + "agent", + "AI", + "automation", + "programming", + "SDK", + "integration" + ], + "examples": [ + { + "inputJson": "{\"language\":\"Python\",\"functionality\":\"A chatbot that answers user questions using a conversational AI model.\",\"integrationAPIs\":[\"OpenAI API\"],\"includeComments\":true,\"codeStyle\":\"PEP8\"}", + "description": "Generate Python chatbot code using OpenAI API with comments and PEP8 style." + }, + { + "inputJson": "{\"language\":\"JavaScript\",\"functionality\":\"Send notification messages to a Slack channel when tasks complete.\",\"integrationAPIs\":[\"Slack API\"],\"includeComments\":false,\"codeStyle\":\"Google JavaScript Style\"}", + "description": "Generate JavaScript code to send Slack notifications without comments." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Code", + "context": null + } + }, + { + "name": "model-management.createFile", + "description": "Creates a file for storing AI model data or related metadata. Accepts inputs like fileName to specify the filename, content as the file data, and fileType to define the format (e.g., JSON, YAML, binary). Produces a confirmation with the file path and status of creation.", + "category": "model-management", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the file to be created, including extension (e.g., model.json).", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "String content that will be written into the file.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type or format of the file (e.g., json, yaml, bin).", + "required": false, + "defaultValue": "json" + }, + { + "name": "directoryPath", + "type": "string", + "description": "Optional directory path to save the file. Defaults to current working directory.", + "required": false, + "defaultValue": "./" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the full file path and a status indicating if creation was successful." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate and save files that represent AI models or their configurations in various formats during model training, deployment, or management workflows. It helps automate file creation tasks when handling models programmatically.", + "limitations": "This tool does not perform file validation or serialization beyond saving the provided string content; it assumes the content is properly formatted.", + "examples": [ + "Create a JSON file named 'model-config.json' with model configuration data.", + "Save a trained model binary to a file named 'model.bin' in a specified directory.", + "Overwrite existing metadata YAML file with updated content." + ] + }, + "tags": [ + "file", + "model", + "management", + "create", + "save", + "AI", + "deployment", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"model-config.json\",\"content\":\"{\\\"layers\\\":10, \\\"activation\\\": \\\"relu\\\"}\",\"fileType\":\"json\",\"directoryPath\":\"./models\",\"overwrite\":false}", + "description": "Create a JSON config file for an AI model in a 'models' directory without overwriting existing file." + }, + { + "inputJson": "{\"fileName\":\"trained-model.bin\",\"content\":\"\",\"fileType\":\"bin\",\"directoryPath\":\"\",\"overwrite\":true}", + "description": "Save a trained model's binary data to the current directory, overwriting any existing file with the same name." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "model-management.createEmail", + "description": "Generates a professionally structured email based on provided context such as recipient details, subject, message body, tone, and optional attachments. The tool formats the email content, ensuring clarity, grammatical correctness, and appropriate style, returning a ready-to-send email object with metadata and encoded attachments if provided.", + "category": "model-management", + "parameters": [ + { + "name": "recipient", + "type": "object", + "description": "Object containing recipient details including 'name' and 'email' addresses.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main text content or message body of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email text; options include 'formal', 'informal', 'friendly', or 'neutral'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "cc", + "type": "array", + "description": "Array of email addresses to be added as CC recipients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Array of email addresses to be added as BCC recipients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects, each containing filename and base64-encoded content.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the complete email with recipient, subject, formatted body, tone info, CC/BCC lists, and encoded attachments ready for sending or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to compose a professional email from structured input parameters to ensure tone, clarity, and proper formatting are applied, enabling seamless communication automation or drafting assistance.", + "limitations": "Cannot send the email directly or verify recipient addresses; it also cannot generate email content from unstructured inputs without explicit parameters.", + "examples": [ + "Compose a formal email to a client summarizing a project update.", + "Generate an informal internal notification with attachments included.", + "Create a friendly follow-up email to a meeting participant with CC to the team." + ] + }, + "tags": [ + "email", + "communication", + "content-generation", + "model-management", + "automation", + "professional-writing" + ], + "examples": [ + { + "inputJson": "{\"recipient\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\"},\"subject\":\"Project Update\",\"body\":\"Dear Jane, I wanted to update you on the latest milestones achieved in the project. Please find the details below.\",\"tone\":\"formal\"}", + "description": "Generate a formal email to a client named Jane Doe with a project update." + }, + { + "inputJson": "{\"recipient\":{\"name\":\"Team\",\"email\":\"team@example.com\"},\"subject\":\"Weekly Sync Reminder\",\"body\":\"Hello team, just a reminder about our weekly sync meeting tomorrow at 10 AM.\",\"tone\":\"friendly\",\"cc\":[\"manager@example.com\"]}", + "description": "Create a friendly reminder email for an internal team with a CC to the manager." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "security-tools.createEmail", + "description": "Generates a secure, templated email with optional encryption and digital signature capabilities. Accepts inputs including sender, recipient, subject, body content, attachments, and security options. Produces a properly formatted email object ready for sending, ensuring data integrity and confidentiality as specified.", + "category": "security-tools", + "parameters": [ + { + "name": "senderEmail", + "type": "string", + "description": "The email address of the sender to include in the From field.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmails", + "type": "array", + "description": "Array of recipient email addresses to include in To field.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content body of the email, supports plain text or HTML formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of file objects to attach, each with name and content encoded as base64.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "encrypt", + "type": "boolean", + "description": "Flag indicating whether to encrypt the email content using recipient's public key.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sign", + "type": "boolean", + "description": "Flag indicating whether to digitally sign the email with sender's private key for authenticity.", + "required": false, + "defaultValue": "false" + }, + { + "name": "encryptionKey", + "type": "string", + "description": "Public key in PEM format for encryption, required if encrypt is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "signingKey", + "type": "string", + "description": "Private key in PEM format to sign the email, required if sign is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured email object including headers (From, To, Subject, Date), body content (possibly encrypted), attachments encoded in base64, and metadata about the applied security measures (encryption, signature)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate email messages that must comply with security standards like confidentiality and authenticity. It is suited for applications automating secure communications, such as notifying users with sensitive data, sending confidential reports, or legal communications. The tool handles template generation along with optional encryption and signing to ensure message integrity and privacy.", + "limitations": "This tool does not send emails; it only creates the structured email content ready for dispatch by an SMTP client or service. It assumes valid keys for encryption and signing are provided and does not manage key distribution or validation. It cannot verify recipient availability or handle bounce backs.", + "examples": [ + "Create a password reset email encrypted for user privacy.", + "Generate a legally binding contract notification email digitally signed by the sender.", + "Prepare a newsletter email without encryption or signature." + ] + }, + "tags": [ + "email", + "security", + "encryption", + "digital-signature", + "communication", + "automation", + "templating" + ], + "examples": [ + { + "inputJson": "{\"senderEmail\":\"security@example.com\",\"recipientEmails\":[\"user1@example.com\"],\"subject\":\"Password Reset Request\",\"body\":\"Click the link to reset your password.\",\"encrypt\":true,\"encryptionKey\":\"-----BEGIN PUBLIC KEY-----\\n...\\n-----END PUBLIC KEY-----\"}", + "description": "Generate an encrypted password reset email for a single recipient." + }, + { + "inputJson": "{\"senderEmail\":\"legal@example.com\",\"recipientEmails\":[\"client@example.com\"],\"subject\":\"Contract Update Notification\",\"body\":\"Please review the updated contract attached.\",\"attachments\":[{\"name\":\"contract.pdf\",\"content\":\"base64encodedstring\"}],\"sign\":true,\"signingKey\":\"-----BEGIN PRIVATE KEY-----\\n...\\n-----END PRIVATE KEY-----\"}", + "description": "Create a contract notification email with PDF attachment digitally signed by the sender." + }, + { + "inputJson": "{\"senderEmail\":\"news@example.com\",\"recipientEmails\":[\"subscriber1@example.com\",\"subscriber2@example.com\"],\"subject\":\"Monthly Newsletter\",\"body\":\"Welcome to our monthly newsletter!\",\"encrypt\":false,\"sign\":false}", + "description": "Prepare a plain newsletter email sent to multiple subscribers without encryption or signature." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "database-management.analyzeDocument", + "description": "Analyzes a structured document (e.g., JSON, XML, CSV, or plain text) stored in a database to extract insights such as data distribution, key metrics, schema validation, and anomaly detection. Accepts the document content and analysis options, processes it based on type, and returns a comprehensive analytical report including statistics and detected issues.", + "category": "database-management", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The content of the document to analyze, provided as a string in JSON, XML, CSV, or plain text format.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "The type/format of the document to guide analysis (e.g., 'json', 'xml', 'csv', 'text').", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisLevel", + "type": "string", + "description": "Level of analysis detail: 'basic' for overview statistics, 'detailed' for schema and anomaly detection.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "If true and applicable, validates document schema against a predefined or provided schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaDefinition", + "type": "string", + "description": "Optional schema definition (in JSON Schema or equivalent) used for validation if validateSchema is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing analytical results such as summary statistics, schema validation results, data quality issues, and detected anomalies." + }, + "aiAgent": { + "useCase": "Use this tool when you need to gain insights or validate structured documents stored in databases, such as analyzing JSON API responses, CSV imports, or XML configs, to understand data distribution, validate schema adherence, or detect anomalies for data quality assurance.", + "limitations": "This tool cannot modify documents or connect directly to databases; it requires document content to be provided as input. It does not replace full-scale data profiling tools and may have limited schema validation depending on the schema complexity.", + "examples": [ + "Analyze a JSON configuration file to verify adherence to a schema and summarize key metrics.", + "Extract statistics and detect anomalies in a CSV dataset imported into a database.", + "Analyze an XML document for schema validation and data distribution." + ] + }, + "tags": [ + "database", + "document", + "analysis", + "validation", + "schema", + "data-quality", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"[{\\\"id\\\":1,\\\"value\\\":10},{\\\"id\\\":2,\\\"value\\\":15}]\",\"documentType\":\"json\",\"analysisLevel\":\"detailed\",\"validateSchema\":true,\"schemaDefinition\":\"{\\\"type\\\":\\\"array\\\",\\\"items\\\":{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"type\\\":\\\"integer\\\"},\\\"value\\\":{\\\"type\\\":\\\"integer\\\"}},\\\"required\\\":[\\\"id\\\",\\\"value\\\"]}}\"}", + "description": "Detailed analysis of a JSON array document with schema validation." + }, + { + "inputJson": "{\"documentContent\":\"id,value\\n1,100\\n2,150\\n3,200\",\"documentType\":\"csv\",\"analysisLevel\":\"basic\",\"validateSchema\":false,\"schemaDefinition\":\"\"}", + "description": "Basic summary analysis of CSV document content without schema validation." + }, + { + "inputJson": "{\"documentContent\":\"110\",\"documentType\":\"xml\",\"analysisLevel\":\"detailed\",\"validateSchema\":false,\"schemaDefinition\":\"\"}", + "description": "Detailed analysis of a simple XML document to extract structure and key data points." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "analyze", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.generateDocument", + "description": "Generates a formatted document summarizing data from a specified database query. Accepts parameters defining the query, output format (PDF, DOCX, HTML), and optional template. Processes the query results and compiles them into a professional document for reporting or sharing.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string used to access the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "SQL query string to retrieve data to be included in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired document format for the output, e.g., 'PDF', 'DOCX', or 'HTML'.", + "required": true, + "defaultValue": "PDF" + }, + { + "name": "templateId", + "type": "string", + "description": "Optional identifier for a document template to use for styling the output.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag indicating whether to generate charts based on query results within the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to be displayed in the generated document header.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the document content as a base64 string and metadata like filename and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create professional reports or summaries from database data, such as generating monthly sales reports or inventory summaries, and deliver them in common document formats for easy distribution and review.", + "limitations": "Cannot execute non-SQL data retrieval or connect to databases without a valid connection string. Does not support real-time data streaming or very large datasets that exceed memory limits. Document styling depends on provided templates or defaults and may require manual adjustments.", + "examples": [ + "Generate a PDF report summarizing last month's sales from the sales database.", + "Create a DOCX document listing all active customers with their contact info in a formatted template.", + "Produce an HTML report with embedded charts for inventory levels from warehouse DB." + ] + }, + "tags": [ + "database", + "document generation", + "reporting", + "SQL", + "PDF", + "DOCX", + "HTML" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=SalesDB;User Id=admin;Password=pass;\",\"query\":\"SELECT ProductName, SUM(Quantity) AS TotalSold FROM Sales WHERE SaleDate >= '2024-01-01' GROUP BY ProductName\",\"outputFormat\":\"PDF\",\"templateId\":\"monthlyReport\",\"includeCharts\":true,\"title\":\"January Sales Summary\"}", + "description": "Generate a PDF sales summary with charts for January grouped by product." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=warehouseServer;Database=Inventory;User Id=user;Password=secret;\",\"query\":\"SELECT ItemName, StockLevel FROM Inventory WHERE StockLevel < 50\",\"outputFormat\":\"DOCX\",\"templateId\":\"\",\"includeCharts\":false,\"title\":\"Low Stock Items\"}", + "description": "Create a DOCX report listing items with stock levels below the threshold." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "database-management.createFile", + "description": "Creates a database export file containing data from specified tables or queries. Accepts database connection details, tables or query definitions, and file options like format and destination. Produces a file storing exported data in the chosen format, suitable for backups, transfers, or analysis.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string or URI to connect to the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "tables", + "type": "array", + "description": "List of table names to export data from. Ignored if query is provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "query", + "type": "string", + "description": "Optional custom SQL query to export specific data instead of whole tables.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Output file format. Supported formats: CSV, JSON, SQL.", + "required": true, + "defaultValue": "CSV" + }, + { + "name": "filePath", + "type": "string", + "description": "Absolute or relative path where the export file will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSchema", + "type": "boolean", + "description": "If true and format supports it, include table schema in export (e.g., SQL commands).", + "required": false, + "defaultValue": "false" + }, + { + "name": "delimiter", + "type": "string", + "description": "Field delimiter for CSV format. Ignored for other formats.", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "object", + "description": "Object detailing the success status and location of the created export file, or error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a physical file export of database data for backup, migration, sharing, or offline analysis. It supports exporting whole tables or results of custom queries, in common formats like CSV, JSON, or SQL script files.", + "limitations": "Cannot handle very large exports that exceed memory limits; does not support live streaming exports. Cannot create files in unsupported formats or perform incremental/differential exports.", + "examples": [ + "Export all data from 'users' and 'orders' tables into a CSV file at '/backups/user_orders.csv'.", + "Export data resulting from a complex SQL query into a JSON file '/reports/sales.json'.", + "Export structure and data of 'products' table as SQL file for recreating elsewhere." + ] + }, + "tags": [ + "database", + "export", + "file-creation", + "backup", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=localhost;Database=ShopDB;User Id=user;Password=pass;\",\"tables\":[\"users\",\"orders\"],\"fileFormat\":\"CSV\",\"filePath\":\"./exports/user_orders.csv\",\"includeSchema\":false,\"delimiter\":\",\"}", + "description": "Export data from 'users' and 'orders' tables into a CSV format file without schema." + }, + { + "inputJson": "{\"connectionString\":\"postgresql://user:pass@localhost:5432/shopdb\",\"query\":\"SELECT * FROM sales WHERE sale_date > '2023-01-01'\",\"fileFormat\":\"JSON\",\"filePath\":\"./exports/recent_sales.json\",\"includeSchema\":false}", + "description": "Export results of a sales query into JSON file." + }, + { + "inputJson": "{\"connectionString\":\"Server=localhost;Database=ShopDB;User Id=user;Password=pass;\",\"tables\":[\"products\"],\"fileFormat\":\"SQL\",\"filePath\":\"./exports/products_backup.sql\",\"includeSchema\":true}", + "description": "Create a SQL file with structure and data of the 'products' table." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "File", + "context": null + } + }, + { + "name": "database-management.createEmail", + "description": "This tool generates and stores an email record in a database. It accepts inputs like sender, recipient list, subject, body content, and optional metadata. It validates inputs, creates an email entity, saves it in the database, and returns a confirmation with the unique email ID and stored data summary.", + "category": "database-management", + "parameters": [ + { + "name": "sender", + "type": "string", + "description": "The email address of the sender of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "An array of recipient email addresses to whom the email will be sent.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "Optional array of email addresses to be added as CC (carbon copy) recipients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccRecipients", + "type": "array", + "description": "Optional array of email addresses to be added as BCC (blind carbon copy) recipients.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content or body text of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment metadata objects, each including file name and content type.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sentTimestamp", + "type": "string", + "description": "Optional timestamp string representing when the email was sent; if empty, uses current time.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A confirmation object containing the unique email ID, stored email data summary including sender, recipients, subject, and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically record or create a structured email entry in a database for communication tracking, logging, or processing workflows involving emails. It is ideal for systems managing email communications internally, without sending emails but storing their data.", + "limitations": "This tool does not send emails or handle email delivery protocols; it only creates and saves the email metadata and content in the database. Attachments must be referenced, not stored as raw files.", + "examples": [ + "Create a new email record with sender, recipients, subject, and body to save communications.", + "Add CC and BCC recipients when creating an email record for internal tracking.", + "Include metadata such as attachments and sent time while storing the email in the database." + ] + }, + "tags": [ + "database", + "email", + "create", + "communications", + "record", + "logging", + "storage" + ], + "examples": [ + { + "inputJson": "{\"sender\":\"alice@example.com\",\"recipients\":[\"bob@example.com\"],\"subject\":\"Meeting Reminder\",\"body\":\"Don't forget our meeting tomorrow at 10am.\"}", + "description": "Create a basic email record with one recipient and essential fields." + }, + { + "inputJson": "{\"sender\":\"john.doe@example.com\",\"recipients\":[\"team@example.com\"],\"ccRecipients\":[\"manager@example.com\"],\"bccRecipients\":[\"audit@example.com\"],\"subject\":\"Project Update\",\"body\":\"Please find the latest project update attached.\",\"attachments\":[{\"fileName\":\"update.pdf\",\"contentType\":\"application/pdf\"}],\"sentTimestamp\":\"2024-06-10T14:30:00Z\"}", + "description": "Create an email record with CC, BCC, attachments, and a specific sent timestamp." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Email", + "context": null + } + }, + { + "name": "database-management.createDocument", + "description": "Creates a new document within a specified collection in a NoSQL database. Accepts the database name, collection name, and the document data as inputs. Inserts the document and returns the unique identifier and success status of the operation.", + "category": "database-management", + "parameters": [ + { + "name": "databaseName", + "type": "string", + "description": "Name of the target database where the document will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "collectionName", + "type": "string", + "description": "Name of the target collection within the database for the new document.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentData", + "type": "object", + "description": "The content of the document to be created, represented as a JSON object.", + "required": true, + "defaultValue": "" + }, + { + "name": "returnFullDocument", + "type": "boolean", + "description": "Flag to indicate if the full created document should be returned. Defaults to false (only ID and status returned).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the status of the create operation, the new document's unique identifier, and optionally the full document data if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add new data records into a NoSQL database collection, such as storing user profiles, logs, or event data. It is suitable for tasks requiring structured document storage rather than relational tables.", + "limitations": "This tool does not handle relational database inserts, complex transactions, or schema validation beyond the raw document insertion. It also cannot update existing documents or query the database.", + "examples": [ + "Create a user profile document in the 'users' collection of 'mobileAppDB'.", + "Insert a log entry document for application events into the 'logs' collection.", + "Add a new product document into the 'inventory' collection of the e-commerce database." + ] + }, + "tags": [ + "database", + "create", + "document", + "NoSQL", + "insert", + "collection", + "data management" + ], + "examples": [ + { + "inputJson": "{\"databaseName\":\"appDB\",\"collectionName\":\"users\",\"documentData\":{\"username\":\"jdoe\",\"email\":\"jdoe@example.com\",\"age\":29},\"returnFullDocument\":false}", + "description": "Create a user document with basic profile data, returning only operation status and generated ID." + }, + { + "inputJson": "{\"databaseName\":\"logsDB\",\"collectionName\":\"events\",\"documentData\":{\"eventType\":\"login\",\"timestamp\":\"2024-05-01T14:30:00Z\",\"success\":true},\"returnFullDocument\":true}", + "description": "Insert an event log document and return the full inserted document data." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "create", + "object": "Document", + "context": null + } + }, + { + "name": "frontend-development.generateDocument", + "description": "Generates a structured HTML document string based on input content sections, styling options, and metadata. Accepts an object with title, headers, paragraphs, images, styles, and scripts to output a complete HTML document string ready for rendering or saving.", + "category": "frontend-development", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Title of the HTML document appearing in the head section.", + "required": true, + "defaultValue": "" + }, + { + "name": "headerElements", + "type": "array", + "description": "Array of objects defining header elements (e.g., h1, h2) with text content and optional id or class.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "paragraphs", + "type": "array", + "description": "Array of paragraph text strings to be included sequentially in the document body.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "images", + "type": "array", + "description": "Array of image objects with src, alt text, and optional width/height for insertion into the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "styles", + "type": "string", + "description": "Optional CSS styles string to embed within a style tag in the head section of the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "scripts", + "type": "string", + "description": "Optional JavaScript code string to embed within a script tag before closing the body tag.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete HTML document as a string under the 'html' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate complete HTML documents for frontend web pages based on structured content inputs like text, images, styles, and scripts. Ideal for dynamic page generation, prototyping, or server-side rendering scenarios.", + "limitations": "This tool does not fetch external assets or validate content correctness. It does not generate complex interactive elements beyond embedded scripts, nor does it handle backend integration or content management.", + "examples": [ + "Generate a basic HTML page with a title, header, paragraphs, and inline CSS styles.", + "Create an HTML document embedding images with alternative text and JavaScript code for interactivity.", + "Produce a minimal HTML page with only a title and a single paragraph." + ] + }, + "tags": [ + "frontend", + "html", + "document generation", + "web", + "static page", + "templating" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Sample Page\",\"headerElements\":[{\"tag\":\"h1\",\"text\":\"Welcome to My Site\"}],\"paragraphs\":[\"This is the first paragraph.\",\"Here is another paragraph.\"],\"images\":[{\"src\":\"https://example.com/image.jpg\",\"alt\":\"Example Image\",\"width\":\"600\",\"height\":\"400\"}],\"styles\":\"body { font-family: Arial; } h1 { color: navy; }\",\"scripts\":\"console.log('Page loaded');\"}", + "description": "Generate an HTML page with a title, one H1 header, two paragraphs, an image, custom styles, and a console log script." + }, + { + "inputJson": "{\"title\":\"Minimal Example\",\"paragraphs\":[\"Just a simple paragraph.\"],\"styles\":\"\",\"scripts\":\"\"}", + "description": "Generate a minimal HTML document with just a title and a single paragraph, no styles or scripts." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Document", + "context": null + } + }, + { + "name": "backend-development.generateReport", + "description": "Generates a detailed report document based on provided data and templates. Accepts input data as JSON objects, applies optional filtering and aggregation, supports multiple output formats such as PDF, HTML, or Markdown, and produces a structured report containing summaries, charts, and tables as specified.", + "category": "backend-development", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The core input data for the report as a JSON object or array, representing records or metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Identifier for the report template to format the output and layout.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the report, e.g., 'pdf', 'html', or 'markdown'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional filter conditions to limit the data included in the report, specified as a key-value map.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationRules", + "type": "object", + "description": "Optional aggregation instructions such as grouping fields and aggregation functions (sum, average, count).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag indicating whether to include charts (bar, line, pie) generated from the data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Custom title for the generated report document.", + "required": false, + "defaultValue": "\"Untitled Report\"" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'startDate' and 'endDate' fields to limit data in time.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report content and metadata, including the raw report file as base64, format, and summary info." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create structured, professional reports from dynamic backend data sources, applying business logic such as filters and aggregation, and outputting in common document formats to serve dashboards, emails, or archives.", + "limitations": "It does not perform complex data analytics or machine learning; it cannot fetch data from external sources automatically—input data must be provided explicitly; it doesn't support interactive report features.", + "examples": [ + "Generate a PDF sales summary report filtered by last month with charts included.", + "Create an HTML report from user activity logs using a predefined template without charts.", + "Produce a markdown report aggregating financial data by region for a quarterly review." + ] + }, + "tags": [ + "reporting", + "backend", + "document-generation", + "pdf", + "html", + "markdown", + "data-aggregation", + "filters" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"date\":\"2024-05-01\",\"sales\":1000,\"region\":\"North\"},{\"date\":\"2024-05-02\",\"sales\":1500,\"region\":\"North\"}],\"templateId\":\"monthlySales\",\"outputFormat\":\"pdf\",\"filterCriteria\":{\"region\":\"North\"},\"aggregationRules\":{\"groupBy\":\"date\",\"metrics\":[{\"field\":\"sales\",\"operation\":\"sum\"}]},\"includeCharts\":true,\"reportTitle\":\"North Region Monthly Sales Report\",\"dateRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"}}", + "description": "Generate a PDF sales report for the North region in May 2024 with sum aggregation by date and charts." + }, + { + "inputJson": "{\"data\":[{\"user\":\"u123\",\"activity\":\"login\",\"timestamp\":\"2024-06-10T10:00:00Z\"},{\"user\":\"u456\",\"activity\":\"logout\",\"timestamp\":\"2024-06-10T11:00:00Z\"}],\"outputFormat\":\"html\",\"includeCharts\":false,\"reportTitle\":\"User Activity Report\"}", + "description": "Create an HTML report of user login/logout activities without charts." + } + ], + "qualityScore": 0.89, + "skeleton": { + "verb": "generate", + "object": "Report", + "context": null + } + }, + { + "name": "statistics-tools.createLink", + "description": "This tool creates a hyperlink connecting two statistical concepts, models, or datasets by analyzing their relationships. It accepts identifiers or descriptions of the two statistical entities, evaluates their semantic or data-based association, and outputs a validated link object that represents this relationship in a structured format.", + "category": "statistics-tools", + "parameters": [ + { + "name": "sourceEntity", + "type": "string", + "description": "Identifier or name of the first statistical concept, model, or dataset to link.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEntity", + "type": "string", + "description": "Identifier or name of the second statistical concept, model, or dataset to link.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkType", + "type": "string", + "description": "Type of link to create, such as 'correlation', 'causal', 'hierarchical', or 'similarity'.", + "required": false, + "defaultValue": "similarity" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) required to establish the link based on analysis.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object representing the established link, including source entity, target entity, link type, confidence score, and an optional explanation or metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to formally connect two statistical concepts, models, or datasets by identifying the nature of their relationship, particularly for building knowledge graphs, metadata repositories, or assisting in statistical analysis workflows that require explicit entity relationships.", + "limitations": "This tool cannot create links without meaningful input for both entities or establish linkage beyond predefined link types. It does not perform in-depth statistical computations or causal inference beyond labeling link types based on supplied information.", + "examples": [ + "Create a causal link between 'Variable X' and 'Outcome Y'.", + "Establish a correlation link between dataset 'A' and dataset 'B'.", + "Generate a similarity link connecting 'Linear Regression Model' and 'Logistic Regression Model'." + ] + }, + "tags": [ + "link", + "statistics", + "modeling", + "relationships", + "concepts", + "datasets" + ], + "examples": [ + { + "inputJson": "{\"sourceEntity\":\"Dataset_A\",\"targetEntity\":\"Dataset_B\",\"linkType\":\"correlation\",\"confidenceThreshold\":0.8}", + "description": "Creating a correlation link between two datasets with a high confidence threshold." + }, + { + "inputJson": "{\"sourceEntity\":\"Time Series Model\",\"targetEntity\":\"Seasonal Adjustment\",\"linkType\":\"hierarchical\"}", + "description": "Linking a model and statistical method in a hierarchical relationship." + }, + { + "inputJson": "{\"sourceEntity\":\"Sample Mean\",\"targetEntity\":\"Population Mean\",\"linkType\":\"similarity\"}", + "description": "Establishing a similarity link between two statistical concepts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "statistics-tools.createOpportunity", + "description": "This tool analyzes provided business data and statistical features to identify promising opportunities for growth or optimization. It accepts input datasets, key performance indicators, and optional constraints, processes the data using advanced statistical and predictive modeling methods, and outputs a ranked list of actionable business opportunities with estimated impact and confidence levels.", + "category": "statistics-tools", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of objects representing business data records to analyze, such as sales, customer, or market data.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPerformanceIndicators", + "type": "array", + "description": "List of KPIs relevant to opportunity creation such as revenue growth, customer acquisition cost, or churn rate.", + "required": true, + "defaultValue": "" + }, + { + "name": "constraints", + "type": "object", + "description": "Optional constraints or filters like geographic regions, product categories, or time periods to limit the scope of analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "minConfidence", + "type": "number", + "description": "Minimum confidence threshold (0 to 1) for reporting an opportunity; lower values yield more candidates but less certainty.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of top-ranked opportunities to return.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing a sorted list of business opportunities including opportunity description, estimated impact metrics, and confidence scores." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract and prioritize actionable business opportunities from quantitative data sets by applying statistical and predictive analysis. Ideal for product managers, strategists, or analysts seeking data-driven insights on potential areas for growth or optimization.", + "limitations": "This tool cannot replace domain expert decision-making and may be limited by data quality and feature relevance. It does not perform qualitative assessments or market research outside the provided data.", + "examples": [ + "Identify top growth opportunities based on sales and customer data for Q1 2024.", + "Find optimization opportunities with at least 80% confidence in the European region.", + "List up to 3 high-impact business opportunities focusing on customer retention KPIs." + ] + }, + "tags": [ + "statistics", + "business", + "opportunity", + "predictive-analysis", + "growth", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"region\":\"North America\",\"product\":\"A\",\"sales\":120000,\"customers\":3000,\"churnRate\":0.05},{\"region\":\"Europe\",\"product\":\"B\",\"sales\":85000,\"customers\":2200,\"churnRate\":0.07}],\"keyPerformanceIndicators\":[\"sales\",\"churnRate\"],\"constraints\":{\"region\":\"North America\"},\"minConfidence\":0.8,\"maxResults\":3}", + "description": "Analyze North America sales and churn rate data to identify up to 3 high-confidence opportunities." + }, + { + "inputJson": "{\"inputData\":[{\"segment\":\"SMB\",\"revenueGrowth\":0.12,\"customerAcquisitionCost\":300},{\"segment\":\"Enterprise\",\"revenueGrowth\":0.05,\"customerAcquisitionCost\":1500}],\"keyPerformanceIndicators\":[\"revenueGrowth\",\"customerAcquisitionCost\"],\"minConfidence\":0.7,\"maxResults\":2}", + "description": "Evaluate growth and CAC KPIs across customer segments to find top 2 business opportunities." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "statistics-tools.createCredential", + "description": "This tool generates a statistical credential that verifies expertise in specific statistical methods or data analysis techniques. It accepts user details and statistical skills, processes verification criteria and issues a signed digital credential confirming the user's competency and qualifications in statistics.", + "category": "statistics-tools", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "The unique identifier for the user requesting the credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "userName", + "type": "string", + "description": "Full name of the user to appear on the credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "List of statistical methods or competencies that the user is being certified for (e.g., regression analysis, hypothesis testing).", + "required": true, + "defaultValue": "" + }, + { + "name": "issueDate", + "type": "string", + "description": "The date the credential is issued, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "expiryDate", + "type": "string", + "description": "An optional expiration date for the credential in ISO 8601 format, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "issuer", + "type": "string", + "description": "Name of the organization or authority issuing the credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "signatureKey", + "type": "string", + "description": "Private key or token used to digitally sign the credential to ensure authenticity.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the issued statistical credential, including user info, verified skills, issue and expiry dates, issuer details, and a digital signature for validation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to verify and certify an individual's statistical skills by issuing a digitally signed credential that can be used to prove expertise in statistical analysis. Ideal for organizations providing credentials after assessments or trainings in statistics.", + "limitations": "This tool does not perform the skill assessment itself; it only creates and signs the credential assuming the input skills are verified. It does not manage credential revocation or complex credential verification beyond the digital signature.", + "examples": [ + "Issue a credential for user ID 123 with skills in regression and clustering, issued today by 'Data Science Org'.", + "Create a credential for Jane Doe certifying skills in time series analysis, valid for one year.", + "Generate a credential with issuer signature to validate the statistical expertise of an employee." + ] + }, + "tags": [ + "statistics", + "credential", + "certification", + "digitalSignature", + "verification", + "skills", + "security" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"u12345\",\"userName\":\"Alice Smith\",\"skills\":[\"regression analysis\",\"hypothesis testing\"],\"issueDate\":\"2024-06-01\",\"expiryDate\":\"2026-06-01\",\"issuer\":\"StatCert Org\",\"signatureKey\":\"privateKeyStringExample\"}", + "description": "Generate a statistical credential for Alice Smith certifying regression and hypothesis testing skills with a two-year validity." + }, + { + "inputJson": "{\"userId\":\"emp789\",\"userName\":\"Bob Johnson\",\"skills\":[\"time series forecasting\"],\"issuer\":\"Company Data Team\",\"signatureKey\":\"privateKeyKeyExample\"}", + "description": "Create a credential without expiry date for Bob Johnson certifying expertise in time series forecasting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "statistics-tools.createPayment", + "description": "Generates detailed payment statistics and summary reports from raw transaction data. Accepts arrays of payment records including amounts, dates, and methods, computes aggregated metrics such as total volume, average payment, frequency distributions, and outputs a comprehensive statistical summary for business analysis.", + "category": "statistics-tools", + "parameters": [ + { + "name": "paymentRecords", + "type": "array", + "description": "An array of payment transaction objects with fields like amount, date, and method; required for statistical calculations.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO date string defining the start date of payment data to include in the analysis; optional filter.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO date string defining the end date of payment data to include in the analysis; optional filter.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByMethod", + "type": "boolean", + "description": "Flag indicating whether to group and present statistics segmented by payment method; defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (e.g., USD, EUR) used for payments; used for clarity in reports.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated payment statistics such as totalAmount, averageAmount, transactionCount, paymentMethodBreakdown (if requested), and dateRange covered." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing business payment data to extract meaningful statistics for financial reporting, trend analysis, or operational insights. It is appropriate when you have raw transaction data and need a structured summary of payment performance over time.", + "limitations": "This tool does not perform payment processing, fraud detection, or predict future payments. It only aggregates and summarizes existing payment data based on input.", + "examples": [ + "Generate a report summarizing total payments and average transaction amount for all payments in Q1 2024.", + "Analyze payments grouped by method for the last 6 months to identify popular payment channels.", + "Provide overall payment volume and number of transactions for June 2023 to August 2023 in USD." + ] + }, + "tags": [ + "statistics", + "payments", + "financial-analysis", + "aggregation", + "business-insights" + ], + "examples": [ + { + "inputJson": "{\"paymentRecords\":[{\"amount\":100,\"date\":\"2024-04-01\",\"method\":\"credit_card\"},{\"amount\":50,\"date\":\"2024-04-02\",\"method\":\"paypal\"},{\"amount\":75,\"date\":\"2024-04-03\",\"method\":\"credit_card\"}],\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"groupByMethod\":true,\"currency\":\"USD\"}", + "description": "Analyze payment data for April 2024, grouped by method with USD currency." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "statistics-tools.createRisk", + "description": "This tool generates a quantitative risk profile based on input data including threat likelihoods, vulnerability scores, and potential impacts. It processes probabilistic inputs and outputs a structured risk assessment report detailing risk levels and rankings for given scenarios or assets.", + "category": "statistics-tools", + "parameters": [ + { + "name": "threatLikelihoods", + "type": "object", + "description": "An object mapping threat names to their estimated probability values (0 to 1).", + "required": true, + "defaultValue": "" + }, + { + "name": "vulnerabilityScores", + "type": "object", + "description": "An object mapping asset names or components to their vulnerability scores (0 to 10).", + "required": true, + "defaultValue": "" + }, + { + "name": "impactValues", + "type": "object", + "description": "An object mapping asset names or impact categories to numerical impact values representing potential damage or loss.", + "required": true, + "defaultValue": "" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level for statistical calculations expressed as a decimal (e.g., 0.95 for 95%).", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "riskCalculationMethod", + "type": "string", + "description": "Method used to calculate risk; accepted values: 'multiplicative', 'additive', or 'custom'.", + "required": false, + "defaultValue": "multiplicative" + } + ], + "returns": { + "type": "object", + "description": "A detailed risk profile object with risk scores, classifications (e.g., low, medium, high), and ranked risk entries per threat-asset combination." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quantify and rank security risks by analyzing input data on threat probabilities, vulnerabilities, and impacts to guide risk management decisions.", + "limitations": "This tool does not perform data collection or real-time monitoring; it relies on accurate input data. Complex dependencies between risk factors may require custom methods outside built-in calculations.", + "examples": [ + "Assess risk levels for network components based on given threat likelihoods and vulnerabilities.", + "Generate a ranked risk report comparing assets with varying impact and vulnerability scores.", + "Calculate risk with a custom additive method instead of default multiplicative formula." + ] + }, + "tags": [ + "risk", + "statistics", + "security", + "quantitative-analysis", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"threatLikelihoods\":{\"phishing\":0.3,\"malware\":0.1,\"ddos\":0.05},\"vulnerabilityScores\":{\"webServer\":7,\"emailSystem\":4,\"database\":6},\"impactValues\":{\"webServer\":100000,\"emailSystem\":50000,\"database\":150000},\"confidenceLevel\":0.95,\"riskCalculationMethod\":\"multiplicative\"}", + "description": "Calculate multiplicative risk scores and rankings for network assets using example threat likelihoods, vulnerabilities, and impact values." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "statistics-tools.createTable", + "description": "Creates a summary table from raw data based on grouping and aggregation instructions. Accepts input data as an array of objects, performs grouping by specified fields and aggregates numerical data using chosen functions, and outputs a structured table object suitable for further analysis or display.", + "category": "statistics-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data objects (rows) to be summarized, each object representing a record with key-value pairs.", + "required": true, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "array", + "description": "List of string field names to group the data by. Each group will be a row in the resulting table.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "aggregations", + "type": "object", + "description": "Mapping of target numeric fields to aggregation functions (e.g., sum, average, count) to apply within each group.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTotals", + "type": "boolean", + "description": "Flag to include overall totals row in the output table aggregations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional filtering criteria as a key-value object to include only records that match before grouping.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Summary table with grouped rows containing aggregated values and optional totals, structured as an array of objects with group keys and aggregation results." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate statistical summary tables from detailed data records, such as for reporting, exploratory data analysis, or dashboard displays. It is useful for grouping records by categorical variables and computing aggregated metrics like sums or averages.", + "limitations": "This tool does not perform complex multi-level hierarchical or pivot table creation beyond single-level grouping and straightforward aggregation. It also does not generate visualizations or handle very large datasets requiring database-type optimizations.", + "examples": [ + "Create a sales summary table grouping sales records by region and calculating total sales and average sale amount.", + "Generate a table of customer data grouped by country showing count of customers and average age.", + "Filter transaction data for year 2023 and then create a table grouped by product category showing sales sum." + ] + }, + "tags": [ + "statistics", + "aggregation", + "summary", + "data-table", + "grouping", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"region\":\"North\",\"sales\":100},{\"region\":\"South\",\"sales\":150},{\"region\":\"North\",\"sales\":200}],\"groupBy\":[\"region\"],\"aggregations\":{\"sales\":\"sum\"},\"includeTotals\":true}", + "description": "Summarize sales by region, summing sales amounts and including a totals row." + }, + { + "inputJson": "{\"data\":[{\"country\":\"US\",\"age\":30},{\"country\":\"CA\",\"age\":25},{\"country\":\"US\",\"age\":40}],\"groupBy\":[\"country\"],\"aggregations\":{\"age\":\"average\"},\"includeTotals\":false}", + "description": "Calculate average age grouped by country without totals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "statistics-tools.createQuery", + "description": "This tool generates a structured statistical query object based on user-defined parameters such as dataset, variables, statistical tests, and filtering criteria. It accepts input parameters that describe the desired analysis and outputs a query specification that can be used by statistical software or databases to perform the analysis.", + "category": "statistics-tools", + "parameters": [ + { + "name": "dataset", + "type": "string", + "description": "The name or identifier of the dataset to query.", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "array", + "description": "List of variable names involved in the query, such as dependent and independent variables.", + "required": true, + "defaultValue": "" + }, + { + "name": "statisticalTest", + "type": "string", + "description": "The statistical test or model type to apply (e.g., t-test, ANOVA, regression).", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "An optional object specifying filtering criteria for the dataset variables (e.g., age>30).", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "array", + "description": "Optional list of variables to group the data by before analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level for statistical inference (e.g., 0.95 for 95% confidence).", + "required": false, + "defaultValue": "0.95" + } + ], + "returns": { + "type": "object", + "description": "A structured query object detailing dataset, variables, statistical test, filters, grouping, and confidence level to perform the statistical analysis." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically construct a detailed, standardized statistical query specification that can be passed to statistical engines or databases. It enables automation of analysis requests based on user input parameters, ensuring uniform query format for downstream processing.", + "limitations": "This tool does not execute the statistical analysis; it only produces a query specification. It cannot validate dataset content or variable types beyond structural format.", + "examples": [ + "Create a query to perform a t-test on variable 'height' grouped by 'gender' with a confidence level of 0.99.", + "Generate a regression analysis query using 'age' and 'income' variables filtered where 'income' > 50000.", + "Build an ANOVA query on dataset 'study_data' analyzing 'score' across 'treatment' groups." + ] + }, + "tags": [ + "statistics", + "query", + "analysis", + "statistical-tests", + "data-filtering", + "modeling" + ], + "examples": [ + { + "inputJson": "{\"dataset\":\"clinical_trial\",\"variables\":[\"blood_pressure\",\"treatment_group\"],\"statisticalTest\":\"ANOVA\",\"filters\":{\"age\":{\"$gt\":30}},\"groupBy\":[\"treatment_group\"],\"confidenceLevel\":0.95}", + "description": "Query for ANOVA test on blood pressure grouped by treatment group, filtering patients older than 30." + }, + { + "inputJson": "{\"dataset\":\"sales_data\",\"variables\":[\"sales\",\"region\"],\"statisticalTest\":\"t-test\",\"filters\":{},\"groupBy\":[\"region\"],\"confidenceLevel\":0.99}", + "description": "Query to perform t-test on sales data grouped by region with 99% confidence level." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "text-analysis.downloadTable", + "description": "Downloads a structured table extracted from text sources such as documents, web pages, or raw text input. The tool accepts input text or a URL, processes it to identify tabular data, and outputs the table in CSV or JSON format for further analysis or storage.", + "category": "text-analysis", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "Raw text input containing potential tabular data to extract and download.", + "required": false, + "defaultValue": "" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "URL of the web page or document to extract tabular data from. Either sourceText or sourceUrl is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format of the extracted table (csv or json).", + "required": true, + "defaultValue": "csv" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character used in CSV output format. Ignored if outputFormat is json.", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include table headers if detected. Applies to both CSV and JSON output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to extract from the table. Defaults to no limit if zero or omitted.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted table data in the requested format as a string, along with metadata about extraction success and number of rows extracted." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to obtain structured tabular data embedded in unstructured or semi-structured text sources or web documents. It automates the process of converting natural text or online content into machine-readable tables for data analysis, reporting, or further processing.", + "limitations": "The tool cannot extract tables from images or scanned documents; input must be text or accessible URL. Accuracy depends on the quality and structure of the source text and may fail with highly unstructured formats or non-standard tables.", + "examples": [ + "Extract the pricing table from this product webpage.", + "Download the schedule table embedded in the meeting transcript text.", + "Get the list of countries and codes from this raw text block as a JSON table." + ] + }, + "tags": [ + "text-analysis", + "table-extraction", + "download", + "csv", + "json", + "data-extraction", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/report\",\"outputFormat\":\"csv\",\"delimiter\":\";\",\"includeHeaders\":true}", + "description": "Download a CSV table with semicolon delimiter including headers from a webpage URL." + }, + { + "inputJson": "{\"sourceText\":\"Name Age\\nAlice 30\\nBob 25\",\"outputFormat\":\"json\",\"includeHeaders\":true}", + "description": "Extract a JSON table from given text containing a simple two-row table." + }, + { + "inputJson": "{\"sourceText\":\"Country Code\\nUSA 1\\nCAN 2\",\"outputFormat\":\"csv\",\"delimiter\":\",\",\"includeHeaders\":true,\"maxRows\":1}", + "description": "Download only the first row of a CSV table extracted from raw input text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "text-analysis.uploadVideo", + "description": "Uploads a video file for natural language processing tasks such as transcription, sentiment analysis, or keyword extraction from audio content. Accepts video files in common formats and processes the audio track to produce structured text or metadata outputs.", + "category": "text-analysis", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local path or URL to the video file to upload and analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for speech recognition to apply to the video's audio track", + "required": false, + "defaultValue": "en" + }, + { + "name": "performTranscription", + "type": "boolean", + "description": "Whether to transcribe the audio track to text", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Whether to extract keywords from the transcribed text", + "required": false, + "defaultValue": "false" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the transcription", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDurationSeconds", + "type": "number", + "description": "Maximum duration of video in seconds to process; longer videos will be truncated", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing transcription text, extracted keywords array, sentiment analysis results, and processing metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze video content by converting spoken audio into text and extracting useful textual information such as keywords or sentiment. Ideal for summarizing videos, generating captions, or analyzing viewer sentiment from recorded speech.", + "limitations": "Does not process video visual content beyond audio; accuracy depends on audio quality and language model support; videos longer than maxDurationSeconds may be truncated; does not generate subtitles or translate text.", + "examples": [ + "Transcribe a meeting recording from a video file to get searchable text.", + "Upload a lecture recording and extract main keywords for indexing.", + "Analyze the sentiment of a video podcast's audio to gauge speaker mood." + ] + }, + "tags": [ + "video", + "upload", + "transcription", + "speech-to-text", + "sentiment-analysis", + "keyword-extraction", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/product_launch.mp4\",\"language\":\"en\",\"performTranscription\":true,\"extractKeywords\":true,\"analyzeSentiment\":false,\"maxDurationSeconds\":600}", + "description": "Upload a 10-minute product launch video to transcribe its speech and extract keywords for indexing." + }, + { + "inputJson": "{\"videoFilePath\":\"https://example.com/lecture.webm\",\"language\":\"en\",\"performTranscription\":true,\"extractKeywords\":false,\"analyzeSentiment\":true,\"maxDurationSeconds\":1800}", + "description": "Process an online lecture video to get a transcription and analyze the sentiment of the spoken content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "text-analysis.downloadVideo", + "description": "Downloads video content from a specified URL or video platform and returns the video file data or a download link. Accepts video URLs and options for format and quality. Performs fetching and conversion if needed, providing a downloadable video resource for further analysis or storage.", + "category": "text-analysis", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to download, supporting common platforms like YouTube, Vimeo, or direct video links.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired video format for the downloaded file (e.g., mp4, webm). Defaults to original format if unspecified.", + "required": false, + "defaultValue": "" + }, + { + "name": "quality", + "type": "string", + "description": "Preferred video quality (e.g., 1080p, 720p, 480p). If unavailable, the nearest quality will be selected.", + "required": false, + "defaultValue": "720p" + }, + { + "name": "subtitles", + "type": "boolean", + "description": "Whether to download available subtitles or captions alongside the video.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time to wait for the download process before aborting, in seconds.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the download status, video metadata, and either a binary video file buffer or a downloadable link." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically obtain video content from URLs for tasks like content analysis, transcription, or offline archiving. It streamlines acquiring video data without manual download steps.", + "limitations": "This tool cannot bypass DRM protection or geo-restrictions on videos. Quality and format availability depend on the source. It does not provide video editing or conversion beyond simple format selection.", + "examples": [ + "Download the main lecture video from https://youtube.com/abc123 at 720p.", + "Retrieve a Vimeo video in webm format with subtitles if available.", + "Fetch a direct MP4 video link with default settings." + ] + }, + "tags": [ + "download", + "video", + "media", + "content-acquisition", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://www.youtube.com/watch?v=dQw4w9WgXcQ\",\"format\":\"mp4\",\"quality\":\"1080p\",\"subtitles\":true}", + "description": "Download a YouTube video in mp4 format at 1080p quality including subtitles." + }, + { + "inputJson": "{\"videoUrl\":\"https://vimeo.com/123456789\",\"quality\":\"480p\"}", + "description": "Download a Vimeo video at 480p quality with default format and no subtitles." + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/sample.webm\",\"format\":\"webm\"}", + "description": "Download a direct webm video link using default quality settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "text-analysis.renderParagraph", + "description": "Renders a formatted paragraph from input text by applying specified stylistic and structural options such as alignment, indentation, line spacing, and language. Accepts raw text and formatting parameters and outputs the paragraph as a styled HTML string suitable for web display or further text processing.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to render into a formatted paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "indentation", + "type": "number", + "description": "Indentation size in pixels for the first line of the paragraph.", + "required": false, + "defaultValue": "0" + }, + { + "name": "lineSpacing", + "type": "number", + "description": "Line spacing multiplier (e.g., 1.5 is one and a half spacing).", + "required": false, + "defaultValue": "1" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for text direction and hyphenation rules.", + "required": false, + "defaultValue": "en" + }, + { + "name": "classNames", + "type": "array", + "description": "List of CSS class names to apply to the paragraph element.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of text to render; longer text is truncated with ellipsis.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph as an HTML string under the 'html' property." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw textual content that needs to be rendered as a visually formatted paragraph with specific styling options, such as alignment, indentation, and line spacing for integration into HTML documents or UI components.", + "limitations": "Does not perform semantic analysis or advanced typography like kerning. It outputs HTML but does not handle rendering engines or rich media embedding.", + "examples": [ + "Render a justified paragraph with 30px indentation and 1.5 line spacing in English.", + "Create a centered paragraph with CSS classes applied for styling.", + "Truncate a long paragraph to 100 characters with ellipsis and render left aligned." + ] + }, + "tags": [ + "rendering", + "text-formatting", + "paragraph", + "styling", + "html", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph to demonstrate rendering.\",\"alignment\":\"justify\",\"indentation\":30,\"lineSpacing\":1.5,\"language\":\"en\",\"classNames\":[\"main-text\"],\"maxLength\":0}", + "description": "Render a justified English paragraph with 30px indentation and 1.5 line spacing, applying 'main-text' CSS class." + }, + { + "inputJson": "{\"text\":\"Centered paragraph example.\",\"alignment\":\"center\",\"indentation\":0,\"lineSpacing\":1,\"language\":\"en\",\"classNames\":[],\"maxLength\":0}", + "description": "Render a centered English paragraph with default spacing and no additional CSS classes." + }, + { + "inputJson": "{\"text\":\"This paragraph is too long and will be truncated.\",\"alignment\":\"left\",\"indentation\":0,\"lineSpacing\":1,\"language\":\"en\",\"classNames\":[],\"maxLength\":30}", + "description": "Render a left-aligned English paragraph truncated to 30 characters with ellipsis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "text-analysis.sendThread", + "description": "Sends a compiled conversation thread as a formatted message to a specified recipient via email or messaging API. Accepts an array of text messages with metadata like sender and timestamp, formats them into a readable thread, optionally summarizes content, and outputs a delivery status response.", + "category": "text-analysis", + "parameters": [ + { + "name": "threadMessages", + "type": "array", + "description": "An array of message objects representing the conversation. Each message should include sender, timestamp, and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "Email address or messaging handle of the recipient who will receive the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject or title of the thread message to be sent, relevant for emails or notifications.", + "required": false, + "defaultValue": "Conversation Thread" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to prepend a brief summary of the thread at the beginning of the sent message.", + "required": false, + "defaultValue": "false" + }, + { + "name": "deliveryMethod", + "type": "string", + "description": "The method of sending the thread, such as 'email', 'sms', or 'chatAPI'.", + "required": true, + "defaultValue": "email" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the send operation, including success boolean, message ID if applicable, and error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to reliably transmit a series of related messages as a coherent conversation thread to a recipient by email or messaging platform. It helps agents format and optionally summarize communications before delivery, enabling efficient sharing of chat or mail archives.", + "limitations": "This tool does not handle ongoing real-time chat sessions or direct two-way messaging; it sends static threads post-processing. It also depends on external messaging services and may not guarantee delivery in all cases due to network or service constraints.", + "examples": [ + "Send the chat conversation from yesterday to alice@example.com by email with a summary included.", + "Deliver the support ticket conversation thread to the assigned agent via the chat API without a summary.", + "Email a finance discussion thread to finance-team@example.com with the subject 'Q4 Budget Discussion'." + ] + }, + "tags": [ + "text-analysis", + "communication", + "messaging", + "email", + "thread", + "send", + "conversation" + ], + "examples": [ + { + "inputJson": "{\"threadMessages\":[{\"sender\":\"John\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"content\":\"Hi team, the project update is as follows...\"},{\"sender\":\"Jane\",\"timestamp\":\"2024-06-01T10:05:00Z\",\"content\":\"Thanks John, noted.\"}],\"recipient\":\"team@example.com\",\"subject\":\"Project Update Thread\",\"includeSummary\":true,\"deliveryMethod\":\"email\"}", + "description": "Send a project update thread via email to team@example.com including a summary." + }, + { + "inputJson": "{\"threadMessages\":[{\"sender\":\"SupportBot\",\"timestamp\":\"2024-06-02T15:00:00Z\",\"content\":\"Your ticket is being reviewed.\"},{\"sender\":\"AgentSmith\",\"timestamp\":\"2024-06-02T15:10:00Z\",\"content\":\"We've identified the issue and are applying a fix.\"}],\"recipient\":\"agent.smith\",\"subject\":\"Support Ticket #12345\",\"includeSummary\":false,\"deliveryMethod\":\"chatAPI\"}", + "description": "Send a support ticket conversation to an agent via chat API without summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "text-analysis.sendReply", + "description": "This tool accepts a received message and a reply template or content, optionally analyzing sentiment or context, and formats a suitable reply text to be sent back. It processes input messages with optional tone or style preferences and outputs a composed reply string ready for communication channels.", + "category": "text-analysis", + "parameters": [ + { + "name": "receivedMessage", + "type": "string", + "description": "The original message text that needs a reply.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyContent", + "type": "string", + "description": "The content or template for the reply message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone for the reply, e.g., formal, casual, friendly. Defaults to neutral if not specified.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to analyze the sentiment of the receivedMessage to adjust reply accordingly.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) for the reply, affecting localization or style.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted reply text string ready to send." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives a message requiring a contextual, tone-aware reply, such as customer support interactions, chatbots, or automated email responders. It helps generate appropriate, coherent replies with optional sentiment adjustments.", + "limitations": "This tool does not send messages through communication channels; it only formats the reply text. It cannot understand multimedia content or generate replies without input content or templates.", + "examples": [ + "Compose a friendly reply to a customer's complaint message.", + "Generate a formal response acknowledging a received inquiry.", + "Prepare a quick casual reply to a colleague's update message." + ] + }, + "tags": [ + "text-analysis", + "send", + "reply", + "communication", + "NLP", + "message", + "response", + "sentiment" + ], + "examples": [ + { + "inputJson": "{\"receivedMessage\":\"Thank you for your quick support, it really helped!\",\"replyContent\":\"You're welcome! Glad I could assist.\",\"tone\":\"friendly\",\"includeSentimentAnalysis\":true,\"language\":\"en\"}", + "description": "Generate a friendly and sentiment-aware reply to a gratitude message." + }, + { + "inputJson": "{\"receivedMessage\":\"I would like to know more about your pricing.\",\"replyContent\":\"Thank you for your inquiry. Our pricing details are as follows...\",\"tone\":\"formal\",\"includeSentimentAnalysis\":false,\"language\":\"en\"}", + "description": "Create a formal reply to a pricing inquiry without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "text-analysis.formatQuery", + "description": "Formats and standardizes natural language or code queries into a structured, readable, and normalized query string. Accepts raw query strings or code-like query fragments and reformats them according to specified rules for casing, spacing, and punctuation to improve readability and consistency.", + "category": "text-analysis", + "parameters": [ + { + "name": "queryString", + "type": "string", + "description": "The raw input query string or code-like query fragment that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The formatting style to apply, e.g., 'camelCase', 'snake_case', 'PascalCase', or 'kebab-case'.", + "required": false, + "defaultValue": "camelCase" + }, + { + "name": "preserveKeywords", + "type": "array", + "description": "A list of specific keywords or tokens that should not be altered during formatting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Flag indicating whether to trim leading and trailing whitespace from the input query.", + "required": false, + "defaultValue": "true" + }, + { + "name": "capitalizeLogicalOperators", + "type": "boolean", + "description": "Whether to capitalize logical operators like AND, OR, NOT in the formatted query.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted query string with consistent casing, spacing, and punctuation ready to use or display." + }, + "aiAgent": { + "useCase": "Use this tool to normalize and format user-input queries or code-like expressions to improve readability, consistency, or meet specific coding conventions before further processing or execution. Useful in preparing search queries, database queries, or code snippets for better human or machine consumption.", + "limitations": "This tool does not parse or validate the semantic correctness of queries; it only formats the string syntactically. Complex query restructuring or semantic optimization is not supported.", + "examples": [ + "Format a raw user search query into camelCase for API usage: 'Find all users AND active accounts'.", + "Convert a code fragment query to snake_case for database querying.", + "Standardize boolean operators capitalization in a logical expression query." + ] + }, + "tags": [ + "text-analysis", + "formatting", + "query", + "string-processing", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"queryString\":\"find all users AND active accounts\",\"formatStyle\":\"camelCase\",\"capitalizeLogicalOperators\":true}", + "description": "Formats a natural language search query into camelCase with capitalized logical operators." + }, + { + "inputJson": "{\"queryString\":\"SELECT * FROM users WHERE is_active = TRUE\",\"formatStyle\":\"snake_case\",\"preserveKeywords\":[\"SELECT\",\"FROM\",\"WHERE\"],\"capitalizeLogicalOperators\":false}", + "description": "Formats a SQL-like query to snake_case but preserves SQL keywords in their original form." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "text-analysis.buildPackage", + "description": "Builds a reusable natural language processing package by ingesting text corpora and user specifications. It processes the input by performing text analysis, feature extraction, and model configuration to generate a ready-to-deploy software package including code and metadata for text analysis tasks.", + "category": "text-analysis", + "parameters": [ + { + "name": "corpora", + "type": "array", + "description": "An array of text documents or datasets to include in the package for training and reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Target language code (e.g., 'en' for English) for text processing and models.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "Type of model or processing to build, e.g., 'sentiment-analysis', 'topic-modeling', 'ner'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includePreprocessing", + "type": "boolean", + "description": "Whether to include preprocessing steps such as tokenization, stopword removal, and normalization.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output package format such as 'python-module', 'nodejs-package', or 'docker-image'.", + "required": false, + "defaultValue": "python-module" + }, + { + "name": "packageName", + "type": "string", + "description": "Name identifier for the generated package.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version number of the package, e.g., '1.0.0'.", + "required": false, + "defaultValue": "1.0.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata and links to the generated NLP package files including code, documentation, and configuration files." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to programmatically create a reusable and deployable NLP software package customized with specific text corpora, languages, and models. This facilitates automated or semi-automated development for NLP applications such as chatbots, sentiment analysis, or named entity recognition, streamlining the deployment process.", + "limitations": "This tool does not train deep learning models with heavy resource consumption; it focuses on packaging pre-configured or rule-based models and pipelines. It also may not generate production-ready code for highly specialized use cases without further customization.", + "examples": [ + "Generate a sentiment-analysis package for English tweets including preprocessing steps as a Python module named 'TweetSentimentAnalyzer'.", + "Build a topic-modeling NLP package in Node.js from a collection of news articles, excluding preprocessing steps.", + "Create a named entity recognition package in Docker format for Spanish language text corpora with version '2.0.0'." + ] + }, + "tags": [ + "text-analysis", + "package-building", + "NLP", + "software-generation", + "model-packaging" + ], + "examples": [ + { + "inputJson": "{\"corpora\":[\"I love this movie.\", \"This is terrible.\"], \"language\":\"en\", \"modelType\":\"sentiment-analysis\", \"includePreprocessing\":true, \"outputFormat\":\"python-module\", \"packageName\":\"TweetSentimentAnalyzer\", \"version\":\"1.0.0\"}", + "description": "Builds a sentiment analysis Python package named TweetSentimentAnalyzer for English texts with preprocessing." + }, + { + "inputJson": "{\"corpora\":[\"News about politics.\", \"Latest technology trends.\"], \"language\":\"en\", \"modelType\":\"topic-modeling\", \"includePreprocessing\":false, \"outputFormat\":\"nodejs-package\", \"packageName\":\"NewsTopicModeler\", \"version\":\"0.9.1\"}", + "description": "Creates a Node.js package for topic modeling news articles without preprocessing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "text-analysis.buildQueue", + "description": "Creates and manages a queue structure for processing text data asynchronously. Accepts an array of text items or tasks, applies optional prioritization or categorization, and outputs a queue object designed for orderly, controlled processing in text analysis pipelines.", + "category": "text-analysis", + "parameters": [ + { + "name": "tasks", + "type": "array", + "description": "Array of text items or task objects to be enqueued for processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityField", + "type": "string", + "description": "Optional field name in task objects to determine priority ordering in the queue.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of tasks the queue can hold. Additional tasks are rejected or wait depending on implementation.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "autoProcess", + "type": "boolean", + "description": "Whether to automatically start processing tasks upon enqueuing them.", + "required": false, + "defaultValue": "false" + }, + { + "name": "processingFunction", + "type": "string", + "description": "Name of a predefined processing function to apply on each dequeued task.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a queue object that contains the enqueued tasks organized according to priority and ready for sequential or concurrent processing." + }, + "aiAgent": { + "useCase": "Use this tool when needing to structure and manage multiple text processing tasks asynchronously, such as batch sentiment analysis, text normalization jobs, or queued NLP pipeline steps. It helps organize workloads for scalable processing and ensures controlled execution order.", + "limitations": "The tool manages queue structure and scheduling but does not perform the text analysis itself. The user must provide or link processing functions separately.", + "examples": [ + "Build a processing queue from 500 text snippets tagged with urgency.", + "Create a queue for scheduled NLP tasks with priority based on task type.", + "Initialize a text processing queue with automatic task execution enabled." + ] + }, + "tags": [ + "text-analysis", + "queue", + "task-management", + "asynchronous-processing", + "nlp", + "pipeline" + ], + "examples": [ + { + "inputJson": "{\"tasks\":[{\"text\":\"Analyze sentiment\",\"urgency\":2},{\"text\":\"Translate text\",\"urgency\":1}],\"priorityField\":\"urgency\",\"maxSize\":500,\"autoProcess\":false}", + "description": "Create a queue from tasks with urgency priority field, no automatic processing." + }, + { + "inputJson": "{\"tasks\":[\"Clean text data\",\"Extract keywords\",\"Summarize content\"],\"maxSize\":10,\"autoProcess\":true,\"processingFunction\":\"summarizeText\"}", + "description": "Build a queue for three simple text processing tasks with automatic processing enabled using summarizeText function." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "text-analysis.buildPipeline", + "description": "Constructs a customizable natural language processing pipeline by chaining multiple text processing components such as tokenization, lemmatization, and sentiment analysis. Accepts an array of processing steps specifying the order and types of analysis to perform on input text, outputting a runnable pipeline object that processes text according to the configured steps.", + "category": "text-analysis", + "parameters": [ + { + "name": "steps", + "type": "array", + "description": "An ordered list of text processing step names or configurations specifying which analysis modules to include in the pipeline (e.g., 'tokenize', 'lemmatize', 'sentimentAnalysis').", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') used to tailor the processing components to specific linguistic rules.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "enableCaching", + "type": "boolean", + "description": "Whether to enable result caching within the pipeline to improve performance on repeated text inputs.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customComponents", + "type": "object", + "description": "Optional dictionary of custom component configurations keyed by step name to override default component behavior.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the configured NLP pipeline with a method to execute the sequence of processing steps on input text and return combined analysis results." + }, + "aiAgent": { + "useCase": "Use this tool when needing to construct a tailored NLP pipeline combining multiple text processing steps for analysis, transformation, or feature extraction on textual data. Ideal for scenarios requiring flexible and reusable text analysis workflows integrating tokenization, normalization, tagging, and semantic analysis.", + "limitations": "This tool does not execute the pipeline on text directly; it only creates the pipeline configuration. Actual text processing requires invoking the pipeline's execution method. It also assumes available implementations for requested steps and language support.", + "examples": [ + "Build a pipeline to tokenize, lemmatize, and analyze sentiment of English text.", + "Create an NLP pipeline including tokenization and part-of-speech tagging for French texts.", + "Configure a custom pipeline with caching enabled and a user-supplied tokenizer component." + ] + }, + "tags": [ + "nlp", + "pipeline", + "text-processing", + "tokenization", + "lemmatization", + "sentiment-analysis", + "customization" + ], + "examples": [ + { + "inputJson": "{\"steps\":[\"tokenize\",\"lemmatize\",\"sentimentAnalysis\"],\"language\":\"en\",\"enableCaching\":true}", + "description": "Build an English NLP pipeline with tokenization, lemmatization, and sentiment analysis with caching enabled." + }, + { + "inputJson": "{\"steps\":[\"tokenize\",\"posTag\"],\"language\":\"fr\"}", + "description": "Create a French NLP pipeline including tokenization and part-of-speech tagging." + }, + { + "inputJson": "{\"steps\":[\"customTokenizer\",\"lemmatize\"],\"customComponents\":{\"customTokenizer\":{\"type\":\"regex\",\"pattern\":\"\\\\w+\"}},\"enableCaching\":false}", + "description": "Build a pipeline with a custom regex-based tokenizer and lemmatizer, caching disabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "text-analysis.generateDiagram", + "description": "Generates a diagram representing text structure or relationships from natural language input. Accepts raw text and produces visual outputs such as mind maps, flowcharts, or entity-relationship diagrams based on user-specified diagram type and detail level.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The natural language text to analyze and visualize in a diagram.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "Specifies the type of diagram to generate, e.g., 'mindmap', 'flowchart', or 'entityRelationship'.", + "required": true, + "defaultValue": "mindmap" + }, + { + "name": "detailLevel", + "type": "number", + "description": "Controls the complexity/detail of the diagram, higher values include more nodes or relationships.", + "required": false, + "defaultValue": "3" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "List of keywords or phrases to specifically emphasize in the diagram.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend describing diagram symbols and colors.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated diagram in SVG and/or JSON format along with metadata describing diagram elements." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert unstructured text into a visual diagram that clarifies relationships, hierarchy, or workflow described in the text. Ideal for summarizing documents, brainstorming output, or communicating complex textual content visually.", + "limitations": "This tool cannot guarantee perfectly accurate diagrams for all text types, especially highly ambiguous or domain-specific texts. It may not handle very large texts efficiently, and its diagram style and complexity are limited to predefined types.", + "examples": [ + "Generate a mindmap diagram to visualize the key concepts and connections in a meeting transcript.", + "Create an entity-relationship diagram from a product requirements document to show system components and their relationships.", + "Produce a flowchart from a procedural text describing a software installation process." + ] + }, + "tags": [ + "text-analysis", + "diagram-generation", + "visualization", + "mindmap", + "flowchart", + "entity-relationship", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Project kickoff meeting covering timelines, stakeholders, and deliverables.\",\"diagramType\":\"mindmap\",\"detailLevel\":2,\"highlightKeywords\":[\"timelines\",\"deliverables\"],\"includeLegend\":true}", + "description": "Generate a mind map highlighting key topics and relationships from a meeting summary." + }, + { + "inputJson": "{\"inputText\":\"User logs in, authenticates via OAuth, accesses dashboard, edits profile, logs out.\",\"diagramType\":\"flowchart\",\"detailLevel\":4,\"highlightKeywords\":[\"logs in\",\"logs out\"],\"includeLegend\":false}", + "description": "Create a flowchart illustrating a user session workflow from a textual description." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "text-analysis.generateGraph", + "description": "Generates an interactive graph representing relationships or entities extracted from input text. Accepts raw text as input, applies natural language processing to identify key entities and their connections, and outputs a graph structure suitable for visualization or further analysis.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw text input from which entities and relationships will be extracted.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, e.g., 'network', 'hierarchical', or 'force-directed'.", + "required": false, + "defaultValue": "network" + }, + { + "name": "maxEntities", + "type": "number", + "description": "Maximum number of entities to include in the graph to limit complexity.", + "required": false, + "defaultValue": "50" + }, + { + "name": "includeRelations", + "type": "boolean", + "description": "Whether to include relationships/edges between entities in the graph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text, e.g., 'en' for English, to improve entity recognition accuracy.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing nodes and edges arrays representing the graph structure; each node includes entity details, each edge defines relationships between nodes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize or analyze the structure of information within a text, such as understanding key topics, identifying entities, and their connections for summarization or knowledge graph construction.", + "limitations": "Cannot generate visual renderings of the graph, only the data structure; may not accurately extract entities from very noisy, ambiguous, or highly technical texts; limited by maximum entities parameter to avoid overly large graphs.", + "examples": [ + "Generate a graph showing organizations and people mentioned in a news article.", + "Create a knowledge graph from a scientific paper abstract to understand key concepts and their relationships.", + "Visualize main characters and their interactions from a novel excerpt." + ] + }, + "tags": [ + "text-analysis", + "graph-generation", + "entity-recognition", + "knowledge-graph", + "visualization", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Apple CEO Tim Cook announced the new iPhone in California.\",\"graphType\":\"network\",\"maxEntities\":10,\"includeRelations\":true,\"language\":\"en\"}", + "description": "Extract entities and relationships from a tech news sentence." + }, + { + "inputJson": "{\"inputText\":\"Barack Obama was the 44th President of the United States.\",\"graphType\":\"hierarchical\",\"maxEntities\":5,\"includeRelations\":true,\"language\":\"en\"}", + "description": "Generate a hierarchical graph of entities from a political statement." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "text-analysis.generateYAML", + "description": "Generates a YAML-formatted string from structured input data or natural language descriptions. Accepts JSON objects or text describing data structures, processes and converts them into clean, well-formatted YAML output suitable for configuration, data interchange, or documentation purposes.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "A JSON object or structured data to be converted into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputDescription", + "type": "string", + "description": "Optional natural language description of the data structure to generate YAML from, used if inputData is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the generated YAML.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include descriptive comments in the generated YAML if inputDescription is provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort keys alphabetically in the output YAML structure.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the YAML string output and metadata including success and potential error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured JSON data or descriptive text into clean, human-readable YAML format, for configuration files, infrastructure-as-code, or documentation generation. It's ideal for agents needing to interface systems requiring YAML input or produce YAML-based specs from data or descriptions.", + "limitations": "It cannot infer deeply complex data types or execute logic beyond straightforward data translation. It also cannot validate YAML against a schema or guarantee semantic correctness beyond formatting rules.", + "examples": [ + "Convert a JSON API response object into YAML format.", + "Generate YAML configuration from a provided textual description of settings.", + "Produce a human-readable YAML file with sorted keys and indentation customized." + ] + }, + "tags": [ + "text-analysis", + "generate", + "yaml", + "data-format", + "conversion", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"server\":{\"host\":\"localhost\",\"port\":8080,\"ssl\":false}},\"indentation\":4,\"sortKeys\":true}", + "description": "Generate YAML from JSON object representing a server config with sorted keys and 4-space indentation." + }, + { + "inputJson": "{\"inputDescription\":\"A configuration file with database host, port, and credentials.\",\"includeComments\":true}", + "description": "Generate YAML with descriptive comments from input text describing a database configuration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "text-analysis.createConversion", + "description": "This tool accepts raw text data describing user interactions, applies natural language processing to identify conversion events such as signups or purchases, and generates structured conversion analytics including counts, funnels, and conversion rates. It supports customization of conversion keywords and time window for analysis.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw text data containing user interactions or event logs to analyze for conversion events.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionKeywords", + "type": "array", + "description": "List of keywords or phrases that indicate a conversion event, e.g., ['signup', 'purchase'].", + "required": false, + "defaultValue": "[\"signup\",\"purchase\"]" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes to consider events part of the same conversion funnel.", + "required": false, + "defaultValue": "30" + }, + { + "name": "caseSensitive", + "type": "boolean", + "description": "Whether keyword matching should be case sensitive.", + "required": false, + "defaultValue": "false" + }, + { + "name": "returnDetailedFunnel", + "type": "boolean", + "description": "Whether to return detailed step-by-step funnel data or only overall conversion counts.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured object summarizing total conversions detected, conversion rates, and optional detailed funnel steps based on identified conversion keywords in the input text." + }, + "aiAgent": { + "useCase": "Use this tool when natural language text describing user behavior, event logs, or interaction transcripts need to be analyzed to extract and quantify conversion events. It helps transform unstructured textual data into actionable conversion analytics useful for marketing, UX, or sales analysis.", + "limitations": "This tool relies on keyword-based detection and simple temporal grouping, so it may not capture complex conversion definitions or implicit events. It does not handle multimodal data or non-textual inputs and requires reasonably clean and relevant text logs.", + "examples": [ + "Analyze this session chat log to find how many signups and purchases occurred.", + "Extract detailed conversion funnel data from customer support conversation transcripts.", + "Calculate conversion rates from product trial feedback text data." + ] + }, + "tags": [ + "text-analysis", + "conversion", + "analytics", + "natural-language-processing", + "user-behavior", + "event-detection" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"User A signed up at 10:01 and made a purchase at 10:25. User B signed up at 11:00.\",\"conversionKeywords\":[\"signed up\",\"purchase\"],\"timeWindowMinutes\":30,\"caseSensitive\":false,\"returnDetailedFunnel\":true}", + "description": "Analyze text with user signups and purchases, extracting conversion events and funnel data." + }, + { + "inputJson": "{\"inputText\":\"Customer reported interest. Later converted through purchase.\",\"conversionKeywords\":[\"interest\",\"purchase\"],\"timeWindowMinutes\":15,\"caseSensitive\":false,\"returnDetailedFunnel\":false}", + "description": "Detect simple conversions from minimal text indicating interest and purchase events." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "text-analysis.createCertificate", + "description": "Generates a digital certificate containing verified natural language content analysis details. Accepts input text and metadata, performs NLP-driven analysis such as sentiment, key phrase extraction, and language detection, then produces a digitally signed certificate JSON including the analysis summary and cryptographic signature for authenticity.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The natural language text to analyze and include in the certificate.", + "required": true, + "defaultValue": "" + }, + { + "name": "signingKey", + "type": "string", + "description": "Private key used to digitally sign the certificate to guarantee authenticity.", + "required": true, + "defaultValue": "" + }, + { + "name": "certificateTitle", + "type": "string", + "description": "Human-readable title for the certificate. Helps identify the document.", + "required": false, + "defaultValue": "\"NLP Certificate\"" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis results in the certificate.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeyPhrases", + "type": "boolean", + "description": "Whether to include key phrase extraction results in the certificate.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeLanguageDetection", + "type": "boolean", + "description": "Whether to include detected language information in the certificate.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the digitally signed certificate with analysis metadata, including title, original text summary, analysis results, and signature data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to create verifiable documentation of the natural language analysis performed on given text. Especially helpful for audit trails, trust verification, or sharing certified NLP insights in security or compliance contexts.", + "limitations": "This tool does not validate or verify external identities or certificates; signing relies on provided private keys. It only analyzes text supplied and is not a general-purpose certificate authority.", + "examples": [ + "Create a certificate verifying the sentiment and keywords extracted from a user complaint email.", + "Generate a signed certificate showing the language and key phrases detected in a product review.", + "Produce a digital certificate documenting NLP analysis results for a legal document snippet." + ] + }, + "tags": [ + "text-analysis", + "certificate", + "digital-signature", + "NLP", + "verification" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"We are very happy with the service provided.\",\"signingKey\":\"-----BEGIN PRIVATE KEY-----\\nMIIEvQIBADANBgkq...\\n-----END PRIVATE KEY-----\",\"certificateTitle\":\"Customer Feedback Analysis\",\"includeSentiment\":true,\"includeKeyPhrases\":true,\"includeLanguageDetection\":true}", + "description": "Generate a signed certificate analyzing sentiment and key phrases from customer feedback text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "text-analysis.createCache", + "description": "Creates an in-memory or persistent cache for text analysis operations. Accepts configuration parameters like cache type, maximum size, expiry time, and optional persistence path. It initializes and returns a cache instance that can be used to store and retrieve NLP computation results efficiently, improving performance in repeated text processing tasks.", + "category": "text-analysis", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create, e.g., 'memory' for in-memory cache or 'disk' for persistent disk cache", + "required": true, + "defaultValue": "memory" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of entries or total size limit of the cache to control memory/disk usage", + "required": false, + "defaultValue": "1000" + }, + { + "name": "expirySeconds", + "type": "number", + "description": "Time in seconds after which cached entries expire and are invalidated", + "required": false, + "defaultValue": "3600" + }, + { + "name": "persistencePath", + "type": "string", + "description": "File system path for storing persistent cache data (applicable if cacheType is 'disk')", + "required": false, + "defaultValue": "" + }, + { + "name": "enableCompression", + "type": "boolean", + "description": "Whether to enable compression for cache entries to optimize storage space", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the initialized cache instance with methods to set, get and manage cached text analysis results" + }, + "aiAgent": { + "useCase": "Use this tool when building or optimizing NLP pipelines that require repeated access to intermediate or final text processing outputs. Caching helps avoid redundant computations by storing and retrieving results efficiently, which can speed up response times and reduce resource usage in AI applications handling large volumes of text or complex analyses.", + "limitations": "Does not perform text analysis itself; it only manages caching layers. Cache consistency depends on correct usage by the calling system. Persistent caches require appropriate file system access rights.", + "examples": [ + "Create an in-memory cache with default size and expiry", + "Create a disk-based cache with compression enabled for storing NLP results", + "Set up a cache with custom max size and expiry for large-scale text processing" + ] + }, + "tags": [ + "cache", + "text-analysis", + "infrastructure", + "performance", + "nlp", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"memory\",\"maxSize\":500,\"expirySeconds\":1800}", + "description": "Creates an in-memory cache that stores up to 500 entries with expiry time of 30 minutes." + }, + { + "inputJson": "{\"cacheType\":\"disk\",\"persistencePath\":\"/var/cache/nlp_cache\",\"enableCompression\":true}", + "description": "Creates a disk-based persistent cache at specified path with compression enabled to optimize space." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "text-analysis.createAnomaly", + "description": "Detects anomalies in natural language texts by analyzing features such as sentiment shifts, unusual word usage, or topic deviations. Accepts a corpus or list of texts and returns detected anomalies with contextual details and anomaly scores.", + "category": "text-analysis", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of strings representing the texts or documents to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "anomalyType", + "type": "string", + "description": "Type of anomaly to detect, such as 'sentiment', 'topic', or 'lexical'.", + "required": false, + "defaultValue": "sentiment" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Threshold value (0-1) controlling sensitivity of anomaly detection; higher values detect more subtle anomalies.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "contextWindow", + "type": "number", + "description": "Number of adjacent texts or sentences to consider for contextual analysis during anomaly detection.", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed explanation and context for each anomaly detected.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected anomalies with associated text indices, anomaly scores, types, and optional detailed context information." + }, + "aiAgent": { + "useCase": "Use when needing to identify unusual patterns or deviations in large sets of text data, such as detecting unusual sentiment shifts in customer feedback, unexpected topic changes in documents, or odd word usage that could indicate errors or malicious intent.", + "limitations": "Does not handle real-time streaming text analysis; accuracy depends on input data quality and selected anomaly type; may require tuning sensitivity for best results.", + "examples": [ + "Analyze customer reviews to find unexpected negative sentiment anomalies.", + "Identify unusual topic shifts in a series of weekly reports.", + "Detect abnormal word usage patterns in social media posts." + ] + }, + "tags": [ + "text-analysis", + "anomaly-detection", + "nlp", + "sentiment", + "topic-detection", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"The product is great and I love it.\",\"Suddenly, I hate it because it broke.\",\"Overall, it worked well last month.\"],\"anomalyType\":\"sentiment\",\"sensitivity\":0.8}", + "description": "Detect sentiment anomalies in a short customer feedback sequence." + }, + { + "inputJson": "{\"texts\":[\"The quarterly earnings report shows steady growth.\",\"Unexpected drop in sales this month due to supply issues.\",\"Marketing campaign resulted in positive engagement.\"],\"anomalyType\":\"topic\",\"includeDetails\":true}", + "description": "Identify unusual topic changes in business reports with details included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "text-analysis.createChannel", + "description": "Creates a communication channel by analyzing the provided textual context and user preferences, generating a structured representation of the channel including its type, name, and intended use. The tool accepts input text describing the purpose and participants of the channel and outputs a channel object suitable for integration in messaging or collaboration platforms.", + "category": "text-analysis", + "parameters": [ + { + "name": "contextText", + "type": "string", + "description": "The textual description or conversation context based on which the communication channel is to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelName", + "type": "string", + "description": "Optional explicit name for the channel. If omitted, the tool generates a relevant name from the context.", + "required": false, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant identifiers (usernames or IDs) to be added to the channel.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "channelType", + "type": "string", + "description": "Specifies the type of channel to create, e.g., 'public', 'private', 'direct'. If omitted, defaults to 'private'.", + "required": false, + "defaultValue": "\"private\"" + }, + { + "name": "topicKeywords", + "type": "array", + "description": "Optional array of keywords summarizing the channel's focus topic to assist in metadata tagging.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the newly created channel, including its id, name, type, participants, and any generated metadata such as summary or tags." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to establish a new communication channel based on user instructions or conversational context, such as setting up a chat group, project collaboration space, or direct message contextually relevant to ongoing work or discussion.", + "limitations": "This tool cannot handle actual message sending or channel permissions enforcement; it only creates the channel metadata or structure. It also cannot infer participants beyond those explicitly provided or strongly implied in context.", + "examples": [ + "Create a project discussion channel for the new marketing campaign involving Alice and Bob.", + "Set up a private chat channel named 'Budget Review' with finance team members.", + "Generate a general public channel for announcements about the company retreat." + ] + }, + "tags": [ + "text-analysis", + "communication", + "channel-creation", + "collaboration", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"contextText\":\"We need a channel for the product launch team to coordinate tasks and share updates.\",\"participants\":[\"alice\",\"bob\",\"carol\"],\"channelType\":\"private\"}", + "description": "Creating a private product launch team channel with specified participants." + }, + { + "inputJson": "{\"contextText\":\"General announcements and updates for all company employees.\",\"channelType\":\"public\",\"topicKeywords\":[\"announcements\",\"company\"]}", + "description": "Creating a public channel for company-wide announcements without specifying participants." + }, + { + "inputJson": "{\"contextText\":\"Chat for discussing quarterly budget planning.\",\"channelName\":\"Budget Q3\",\"participants\":[\"finance_lead\",\"accountant\"]}", + "description": "Creating a private channel with a specified name for budget discussion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "text-analysis.createExpense", + "description": "This tool extracts and creates a structured expense record from unstructured text input. It accepts natural language descriptions of expenses, processes them using NLP techniques to identify relevant details such as amount, date, vendor, category, and description, and outputs a standardized expense object suitable for bookkeeping or expense management systems.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The natural language text describing the expense details to be extracted.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Optional ISO currency code (e.g., USD, EUR) to interpret the amount. Defaults to empty, meaning currency inferred from text or default.", + "required": false, + "defaultValue": "" + }, + { + "name": "defaultCategory", + "type": "string", + "description": "Category to assign if no explicit category is detected from text (e.g., 'Miscellaneous').", + "required": false, + "defaultValue": "Miscellaneous" + }, + { + "name": "parseDate", + "type": "boolean", + "description": "Whether to extract and normalize the date from the text. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured expense object with fields: amount (number), currency (string), date (string, ISO 8601), vendor (string), category (string), description (string) extracted or inferred from input." + }, + "aiAgent": { + "useCase": "Use this tool when processing unstructured text inputs such as emails, chat messages, or receipts descriptions to automatically create expense entries with the relevant financial fields extracted and structured for downstream accounting or expense management. It helps automate manual data entry by interpreting natural language descriptions.", + "limitations": "The tool relies on the quality and clarity of the input text; ambiguous or incomplete descriptions may result in partial or incorrect extraction. It cannot confirm the authenticity of the expense or access external databases for verification.", + "examples": [ + "Create an expense record from the text: 'Lunch with client at Cafe Bistro for $45 on 2024-05-20.'", + "Extract expense from note: 'Paid 120 euros for office supplies last Monday.'", + "Parse expense info: 'Uber ride costing $15.50'" + ] + }, + "tags": [ + "text-analysis", + "expense", + "NLP", + "finance", + "extraction", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Dinner with team at Olive Garden costing $85.60 on March 12, 2024.\"}", + "description": "Extract full expense data from a sentence describing a dinner expense including amount, date, vendor, and description." + }, + { + "inputJson": "{\"inputText\":\"Bought office chair for 200 USD.\"}", + "description": "Create an expense record from a purchase description that includes amount and vendor inferred from text, missing explicit date." + }, + { + "inputJson": "{\"inputText\":\"Taxi fare $30.\"}", + "description": "Generate an expense entry from a brief note with amount and expense type, expecting default values for missing fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "text-analysis.createVulnerability", + "description": "This tool accepts textual descriptions such as software code snippets, configuration files, or security reports and performs natural language processing and pattern recognition to identify and create structured vulnerability records. The output includes standardized vulnerability details like type, severity, affected components, and suggested mitigation.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw text input containing potential vulnerability information, such as code, config, or reports.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "The nature of input text (e.g., 'code', 'config', 'report') to guide analysis.", + "required": false, + "defaultValue": "report" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0.0-1.0) for detected vulnerabilities to be included in output.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include suggested mitigation steps in the vulnerability record.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of vulnerability records. Each record includes id, description, severity, affected components, confidence score, and optionally mitigation advice." + }, + "aiAgent": { + "useCase": "Use this tool when extracting structured vulnerability information from unstructured or semi-structured text inputs, such as security audit reports, log files, or code snippets. It helps automate the creation of vulnerability records for security databases or incident response systems.", + "limitations": "This tool cannot perform code execution or dynamic analysis to find vulnerabilities. It relies on textual patterns and known vulnerability descriptions, so it may miss novel or obfuscated vulnerabilities.", + "examples": [ + "Extract vulnerabilities from security scan report text.", + "Identify vulnerabilities in a configuration file for web servers.", + "Create a vulnerability record from a developer's bug report describing a security issue." + ] + }, + "tags": [ + "text-analysis", + "vulnerability", + "security", + "natural-language-processing", + "parsing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"The application uses an outdated version of OpenSSL with known CVE-2021-34527 vulnerability allowing remote code execution.\",\"sourceType\":\"report\",\"confidenceThreshold\":0.8,\"includeMitigation\":true}", + "description": "Analyze a security report snippet describing OpenSSL vulnerability to create a vulnerability record." + }, + { + "inputJson": "{\"inputText\":\"ssh_config: PermitRootLogin yes - This setting allows root login over SSH which is a security risk.\",\"sourceType\":\"config\",\"confidenceThreshold\":0.75,\"includeMitigation\":true}", + "description": "Create vulnerability entry from SSH configuration file insecure setting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "text-analysis.createGraph", + "description": "Creates a visual graph representation from input text by extracting entities and their relationships. Accepts raw text and generates nodes and edges illustrating entity connections, returning a graph data structure suitable for visualization or further analysis.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw input text from which to extract entities and relationships to build the graph.", + "required": true, + "defaultValue": "" + }, + { + "name": "entityTypes", + "type": "array", + "description": "List of entity types to include, such as 'PERSON', 'ORG', 'LOCATION'. If empty, all detected entity types are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "relationshipTypes", + "type": "array", + "description": "List of relationship types or patterns to detect between entities. If empty, common relationships like 'works_for', 'located_in' are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Flag to include sentiment scores for entity relationships if available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxEntities", + "type": "number", + "description": "Maximum number of entities to include in the graph to limit complexity (0 means no limit).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "A graph object containing nodes (entities with attributes) and edges (relationships with types and optional sentiments). Suitable for direct input into visualization tools or further semantic analysis." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert unstructured text into a structured graph format revealing key entities and how they relate. Useful for summarizing documents, analyzing social networks, or exploring knowledge extraction tasks. It helps agents build semantic representations for complex texts.", + "limitations": "This tool cannot perform deep reasoning beyond detected relations or visualize the graph; it only outputs structured graph data. It may miss implicit relationships and depends on underlying NLP extraction accuracy.", + "examples": [ + "Create a graph from a news article to visualize people and organizations mentioned and their connections.", + "Generate a knowledge graph from research paper abstracts focusing on entities like proteins and diseases.", + "Build an interaction graph from customer reviews including sentiment analysis between products and features discussed." + ] + }, + "tags": [ + "text-analysis", + "graph-creation", + "entity-extraction", + "relationship-mining", + "knowledge-graph" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Alice works at Acme Corp, which is located in New York. Bob is the CEO of Acme Corp.\",\"entityTypes\":[\"PERSON\",\"ORG\"],\"relationshipTypes\":[\"works_for\",\"ceo_of\"],\"includeSentiment\":false,\"maxEntities\":0}", + "description": "Extracts a graph from a short text focusing on persons and organizations and their work relationships." + }, + { + "inputJson": "{\"text\":\"Google acquired Fitbit in 2021, expanding its hardware division.\",\"entityTypes\":[],\"relationshipTypes\":[],\"includeSentiment\":false,\"maxEntities\":10}", + "description": "Creates a general entity relationship graph from a business news sentence without filtering entity or relation types." + }, + { + "inputJson": "{\"text\":\"The weather in Paris is lovely but the traffic conditions are bad.\",\"entityTypes\":[\"LOCATION\"],\"relationshipTypes\":[],\"includeSentiment\":true,\"maxEntities\":5}", + "description": "Builds a small graph including sentiment information about conditions mentioned in the text related to locations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "text-analysis.createDiagram", + "description": "This tool accepts textual input such as articles, essays, or documents and analyzes the content to automatically generate structured diagrams (e.g., mind maps, flowcharts, concept maps). It processes the text to extract main ideas, relationships, and hierarchies, then outputs a diagram data structure representing the logical organization for visualization or further editing.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input text content to analyze and convert into a diagram.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "The type of diagram to generate, e.g., 'mindmap', 'flowchart', or 'conceptmap'.", + "required": false, + "defaultValue": "mindmap" + }, + { + "name": "maxNodes", + "type": "number", + "description": "Maximum number of nodes or concepts to include in the diagram (to control complexity).", + "required": false, + "defaultValue": "50" + }, + { + "name": "includeRelationships", + "type": "boolean", + "description": "Whether to explicitly identify and include relationship labels connecting diagram nodes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language of the input text to optimize NLP processing (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object representing the generated diagram structure, including nodes with their labels and IDs, and edges defining relationships and hierarchy." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent is tasked with visualizing textual content by extracting concepts and their connections to facilitate comprehension, summarization, or brainstorming. Ideal for users needing automatic diagram creation from unstructured text.", + "limitations": "Cannot generate visually rendered diagrams, only structured data representation. May have limited accuracy on highly abstract, ambiguous, or domain-specific texts. Complex relationships might be simplified.", + "examples": [ + "Create a mind map from this research paper text.", + "Generate a flowchart outlining the steps described in the process document.", + "Produce a concept map illustrating the main topics and their relationships in the essay." + ] + }, + "tags": [ + "text-analysis", + "diagram-generation", + "mindmap", + "flowchart", + "conceptmap", + "NLP", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Climate change impacts ecosystems by altering temperature, precipitation, and causing sea level rise.\",\"diagramType\":\"conceptmap\",\"maxNodes\":10,\"includeRelationships\":true,\"language\":\"en\"}", + "description": "Create a concept map showing key climate change impacts and their relations." + }, + { + "inputJson": "{\"text\":\"Steps to bake a cake: gather ingredients, mix batter, preheat oven, bake, cool, and decorate.\",\"diagramType\":\"flowchart\",\"maxNodes\":6,\"includeRelationships\":true,\"language\":\"en\"}", + "description": "Generate a flowchart outlining the step-by-step process to bake a cake." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "text-analysis.createDependency", + "description": "This tool accepts a natural language sentence and generates a dependency parse tree representing the syntactic relationships between words. It processes the input sentence using state-of-the-art NLP methods to output a structured dependency representation, typically in a JSON format, showing head-dependent relations and grammatical functions.", + "category": "text-analysis", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The input sentence to analyze syntactically, must be a well-formed string in English.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the dependency parse. Supported values: 'json', 'conll', or 'tree'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the input sentence (e.g., 'en' for English). Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeLabels", + "type": "boolean", + "description": "Whether to include dependency relation labels in the output. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the dependency parse of the input sentence. For 'json' outputFormat, includes tokens, their heads, and dependency labels. For other formats, returns string representation accordingly." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand or extract the syntactic structure of a sentence for downstream NLP tasks like information extraction, semantic parsing, or language understanding. It is valuable for AI agents dealing with grammar-based analyses or generating structured representations of text.", + "limitations": "This tool only supports single sentences and requires well-formed input text. It currently supports mainly English; performance on other languages may be limited. It does not handle discourse-level or pragmatic analysis.", + "examples": [ + "Create a dependency parse of the sentence: 'The quick brown fox jumps over the lazy dog.'", + "Generate a JSON dependency tree for the input sentence: 'I enjoy reading books on weekends.'", + "Provide the dependency parse in CoNLL format for: 'Artificial intelligence is transforming the world.'" + ] + }, + "tags": [ + "nlp", + "dependency parse", + "syntactic analysis", + "text parsing", + "linguistics", + "language understanding" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"The quick brown fox jumps over the lazy dog.\",\"outputFormat\":\"json\"}", + "description": "Generate a JSON dependency parse tree for a common English sentence." + }, + { + "inputJson": "{\"sentence\":\"She sells seashells by the seashore.\",\"outputFormat\":\"conll\",\"language\":\"en\",\"includeLabels\":true}", + "description": "Output a CoNLL formatted dependency parse with labels for a tongue twister sentence." + }, + { + "inputJson": "{\"sentence\":\"Reading improves your cognitive skills.\",\"outputFormat\":\"tree\",\"language\":\"en\"}", + "description": "Produce a tree format visualization of the dependency structure for a simple sentence." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "text-analysis.createReadme", + "description": "Generates a well-structured README document for software projects based on provided project metadata, features, installation instructions, usage examples, and contribution guidelines. Takes detailed inputs to create a clear and professional README markdown text as output.", + "category": "text-analysis", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The official name of the software project to include in the README title section.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A concise description summarizing what the project does and its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions on how to install or set up the project environment.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "An array of usage example strings or code snippets illustrating how to use the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "features", + "type": "array", + "description": "A list of key features or highlights of the project to showcase its capabilities.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contributionGuidelines", + "type": "string", + "description": "Guidelines or instructions for contributors interested in contributing to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "The license under which the project is released, e.g., MIT, Apache 2.0.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the README content as a markdown string under the key 'readmeContent'." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured information about a software project and need to automatically generate a professional, formatted README markdown file that documents the project details, installation guidance, usage, features, contribution norms, and license info, facilitating easy onboarding and understanding by users or developers.", + "limitations": "This tool cannot generate dynamic badges, images, or fetch external data like API docs; it only formats provided textual inputs into a README markdown structure.", + "examples": [ + "Create a README for a new open-source library with installation and usage sections.", + "Generate a README for an internal tool including contribution guidelines and list of features.", + "Produce a minimal README with just project name and description for a quick prototype." + ] + }, + "tags": [ + "text-analysis", + "documentation", + "readme", + "markdown", + "project", + "software", + "automation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"AwesomeLib\",\"projectDescription\":\"A JavaScript library that simplifies data visualization.\",\"installationInstructions\":\"Run 'npm install awesomelib' to install.\",\"usageExamples\":[\"import { plot } from 'awesomelib';\\nplot(data);\"],\"features\":[\"Easy to use\",\"Supports multiple chart types\",\"Lightweight\"],\"contributionGuidelines\":\"Please submit issues and pull requests.\",\"license\":\"MIT\"}", + "description": "Generate a full README for a JS library with installation, usage, features, contribution guidelines, and license." + }, + { + "inputJson": "{\"projectName\":\"QuickTool\",\"projectDescription\":\"A command line tool for quick file processing.\"}", + "description": "Produce a minimal README with only name and description for a simple CLI tool." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "api-integration.analyzeChannel", + "description": "Analyzes communication channel data such as chat logs, email exchanges, or social media messages to extract metrics like message volume, sentiment trends, peak activity periods, and participant interaction patterns. Accepts raw or structured channel data and outputs aggregated insights and visualizable statistics.", + "category": "api-integration", + "parameters": [ + { + "name": "channelData", + "type": "array", + "description": "An array of message objects representing the communication within the channel. Each object should contain sender, timestamp, and message content.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel (e.g., 'chat', 'email', 'social'). Determines analysis methods and metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "An object specifying the start and end ISO8601 timestamps to filter messages for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the message content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "aggregateBy", + "type": "string", + "description": "Time interval to aggregate data for trend analysis ('hour', 'day', 'week').", + "required": false, + "defaultValue": "day" + }, + { + "name": "topParticipantsCount", + "type": "number", + "description": "Number of top active participants to identify and analyze separately.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics (message counts, active participants), sentiment analysis results if requested, temporal activity trends, and interaction metrics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to derive actionable insights from communication data within a specific channel, such as understanding engagement levels, identifying key communicators, or detecting sentiment trends over time. It helps in monitoring channel health, user engagement analysis, or automated reporting.", + "limitations": "This tool cannot access live channel data and depends on the completeness and quality of the provided data. It does not interpret multimedia content beyond text, nor can it establish causal relationships or deep semantic understanding beyond sentiment polarity.", + "examples": [ + "Analyze sentiment trends and message volume on a customer support chat channel over the last month.", + "Summarize top contributors and peak activity times in an internal team email thread within a given period.", + "Provide interaction metrics and overall engagement summary for social media messages in a brand support channel." + ] + }, + "tags": [ + "analysis", + "communication", + "channel", + "sentiment", + "metrics", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"channelData\":[{\"sender\":\"user1\",\"timestamp\":\"2024-05-01T12:00:00Z\",\"message\":\"Hello, I need help with my order.\"},{\"sender\":\"agent1\",\"timestamp\":\"2024-05-01T12:01:00Z\",\"message\":\"Sure, please provide your order number.\"}],\"channelType\":\"chat\",\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"includeSentiment\":true,\"aggregateBy\":\"day\",\"topParticipantsCount\":3}", + "description": "Analyze chat messages from a support channel in May to get volume, sentiment, and top participants." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "api-integration.downloadVideo", + "description": "Downloads video files from a specified publicly accessible URL or video hosting platform API endpoint. Accepts video source URL and optional parameters to specify format, resolution, and authentication tokens. Processes download requests, handles HTTP streaming, and outputs saved video file metadata including path, size, and format.", + "category": "api-integration", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to download. Must be publicly accessible or accessible with provided auth.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired video format for the downloaded file (e.g. mp4, webm). If omitted, original format is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxResolution", + "type": "string", + "description": "Maximum video resolution to download (e.g., 1080p, 720p). Downloads full resolution if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or API key for authenticated API access to video source.", + "required": false, + "defaultValue": "" + }, + { + "name": "savePath", + "type": "string", + "description": "Filesystem path where the downloaded video file will be saved.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata of the downloaded video file: local file path, file size in bytes, video format, and resolution." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to programmatically download videos from public URLs or authenticated API endpoints for processing, analysis, or storage. It supports format selection, resolution constraints, and handles authentication when required. It automates fetching and saving videos for downstream tasks.", + "limitations": "Does not support downloading videos from platforms that prohibit automated downloads or require interactive login beyond token-based auth. Cannot convert videos to formats other than requested if unsupported by source. Performance depends on network reliability.", + "examples": [ + "Download a public MP4 video from a URL with no auth, saving it locally.", + "Download a video from an API endpoint requiring an auth token, requesting 720p resolution.", + "Download a video by URL and save in original format with default resolution settings." + ] + }, + "tags": [ + "api-integration", + "video", + "download", + "media", + "file-storage" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/sample.mp4\",\"savePath\":\"/downloads/sample.mp4\"}", + "description": "Download a public MP4 video from a direct URL and save it locally." + }, + { + "inputJson": "{\"videoUrl\":\"https://api.videohost.com/getvideo?id=12345\",\"authToken\":\"abcdef12345\",\"maxResolution\":\"720p\",\"savePath\":\"/videos/video_12345.mp4\"}", + "description": "Download a video from a video hosting API with authentication, requesting 720p resolution, saved to specified path." + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/demo.webm\",\"outputFormat\":\"mp4\",\"savePath\":\"/videos/demo_converted.mp4\"}", + "description": "Download a video, requesting conversion to MP4 format if supported, save it locally." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "api-integration.downloadTable", + "description": "Downloads tabular data from a specified REST API endpoint, supporting optional query parameters and authentication headers. Processes the API response and returns the table data in JSON array format, ready for downstream data workflows or analysis.", + "category": "api-integration", + "parameters": [ + { + "name": "apiUrl", + "type": "string", + "description": "The full URL of the REST API endpoint to fetch the table data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryParams", + "type": "object", + "description": "Optional key-value pairs to append as query parameters to the API URL for filtering or pagination.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers such as authentication tokens to include in the API request.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to use for the request, typically GET or POST.", + "required": false, + "defaultValue": "GET" + }, + { + "name": "responseDataPath", + "type": "string", + "description": "Dot notation path to extract the table array from a nested JSON response, e.g., 'data.items'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "array", + "description": "An array of JSON objects, each representing a row in the downloaded table." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically fetch structured table data from a RESTful API endpoint where the data might be nested inside the response. It handles query params and auth headers to customize queries and authenticate. Ideal for integrating third-party datasets or syncing tabular info into your workflow.", + "limitations": "Does not support APIs requiring complex authentication flows like OAuth2 without pre-acquired tokens. Cannot parse non-JSON responses or perform data transformations beyond extracting JSON arrays.", + "examples": [ + "Download user data from a public API with pagination parameters.", + "Fetch product listings from a private API requiring an API key header.", + "Retrieve nested tabular data from within a complex API JSON response using a specified data path." + ] + }, + "tags": [ + "api", + "download", + "table", + "integration", + "data-fetch", + "rest", + "json" + ], + "examples": [ + { + "inputJson": "{\"apiUrl\":\"https://api.example.com/users\",\"queryParams\":{\"page\":\"2\",\"limit\":\"50\"},\"headers\":{\"Authorization\":\"Bearer abc123token\"},\"httpMethod\":\"GET\",\"responseDataPath\":\"data.users\"}", + "description": "Download the second page of user listings with an authorization bearer token and extract users from nested data." + }, + { + "inputJson": "{\"apiUrl\":\"https://api.example.com/products\",\"httpMethod\":\"GET\"}", + "description": "Fetch all products with a simple GET request from a public API endpoint without extra parameters." + }, + { + "inputJson": "{\"apiUrl\":\"https://api.example.com/inventory/search\",\"queryParams\":{\"category\":\"clothing\",\"available\":\"true\"},\"httpMethod\":\"POST\",\"headers\":{\"X-API-Key\":\"apikeyvalue456\"}}", + "description": "Search for available clothing inventory items using a POST request with API key header and query filters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "api-integration.renderSentence", + "description": "This tool accepts parameters defining sentence content, style, and language, and processes them to generate a polished, natural language sentence string suitable for inclusion in API outputs, documents, or UI displays. It supports customization such as verbosity, tone, and inclusion of placeholders to produce a rendered sentence string.", + "category": "api-integration", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The core semantic content or data to express in the sentence, e.g., key facts or messages to convey.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'es') to render the sentence in, supporting multilingual output.", + "required": false, + "defaultValue": "en" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the sentence, such as formal, informal, friendly, or technical, influencing word choice and phrasing.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "verbosity", + "type": "string", + "description": "Level of detail in sentence rendering, e.g., 'brief', 'standard', 'detailed', controlling complexity and length.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "includePlaceholders", + "type": "boolean", + "description": "Whether to include placeholders (e.g., {userName}) in the sentence for later dynamic substitution.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the final rendered sentence string and metadata such as its language and tone applied." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured content or semantic data into a natural language sentence for display or communication via APIs, ensuring stylistic and language preferences are met. It is especially valuable for generating user-facing messages, status updates, or customized textual responses in multiple languages and tones.", + "limitations": "This tool does not perform deep natural language generation beyond specified parameters; it cannot generate lengthy paragraphs or complex narratives. It also does not translate content beyond simple language selection, and cannot interpret ambiguous or highly contextual inputs without explicit content specification.", + "examples": [ + "Generate a brief, formal status message confirming a user action in English.", + "Create an informal, friendly sentence conveying product information with placeholders for personalization.", + "Render a detailed technical sentence describing API data output in Spanish." + ] + }, + "tags": [ + "api", + "sentence-generation", + "natural-language", + "rendering", + "multilingual", + "styling" + ], + "examples": [ + { + "inputJson": "{\"content\":\"Your order has been shipped\",\"language\":\"en\",\"tone\":\"formal\",\"verbosity\":\"brief\",\"includePlaceholders\":false}", + "description": "Render a brief, formal shipment notification in English." + }, + { + "inputJson": "{\"content\":\"welcome message for user\",\"language\":\"en\",\"tone\":\"informal\",\"verbosity\":\"standard\",\"includePlaceholders\":true}", + "description": "Create an informal welcome sentence with placeholders for user personalization." + }, + { + "inputJson": "{\"content\":\"detalles del sistema\",\"language\":\"es\",\"tone\":\"technical\",\"verbosity\":\"detailed\",\"includePlaceholders\":false}", + "description": "Render a detailed technical sentence about system details in Spanish." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "api-integration.formatLink", + "description": "Formats a raw URL string into a standardized HTML hyperlink or markdown link, optionally adding attributes like target, title, and classes. Accepts the raw URL and format preferences, producing a formatted link string ready for embedding in documents or web content.", + "category": "api-integration", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The raw URL string to be formatted into a hyperlink.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The desired output format of the link; supports 'html' or 'markdown'.", + "required": true, + "defaultValue": "\"html\"" + }, + { + "name": "linkText", + "type": "string", + "description": "Custom text to display for the link. If empty, the URL itself is used.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Whether the HTML link should open in a new browser tab (adds target and rel attributes).", + "required": false, + "defaultValue": "false" + }, + { + "name": "title", + "type": "string", + "description": "Optional title attribute for the HTML anchor tag for tooltip text.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "cssClasses", + "type": "string", + "description": "Optional CSS classes to apply to the HTML anchor tag for styling.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted link string in the specified format, or an error message if input URL was invalid." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert plain URLs into properly formatted clickable links in HTML or markdown contexts. It helps ensure the links are well-formed, optionally styled, and accessible with correct attributes for web or documentation outputs.", + "limitations": "Does not validate link reachability or URL correctness beyond basic format; does not generate QR codes or perform URL shortening.", + "examples": [ + "Convert a raw URL into an HTML link opening in a new tab with custom text.", + "Format a URL as a markdown link with default link text.", + "Generate a plain HTML link with CSS classes and title attribute." + ] + }, + "tags": [ + "formatting", + "link", + "URL", + "HTML", + "markdown", + "api-integration", + "web", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/page\",\"format\":\"html\",\"linkText\":\"Example Page\",\"openInNewTab\":true,\"title\":\"Go to Example\",\"cssClasses\":\"btn btn-link\"}", + "description": "Formats a URL into an HTML anchor tag opening in new tab with custom text, title, and CSS classes." + }, + { + "inputJson": "{\"url\":\"https://example.com/docs\",\"format\":\"markdown\",\"linkText\":\"Documentation\",\"openInNewTab\":false,\"title\":\"\",\"cssClasses\":\"\"}", + "description": "Formats a URL as a markdown link with custom link text." + }, + { + "inputJson": "{\"url\":\"https://example.com\",\"format\":\"html\",\"linkText\":\"\",\"openInNewTab\":false,\"title\":\"Homepage\",\"cssClasses\":\"nav-link\"}", + "description": "Formats a URL into a simple HTML link showing the URL text, with a title and CSS class." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "api-integration.renderParagraph", + "description": "This tool accepts structured text content with optional styling directives and processes it to render an HTML paragraph element. It supports input of plain text or simple markdown, applies requested formatting like bold, italics, and links, and returns a properly formatted HTML string representing the paragraph for embedding in web pages or applications.", + "category": "api-integration", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The raw text content to be included inside the paragraph, supporting markdown syntax for basic formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "applyMarkdown", + "type": "boolean", + "description": "Flag to enable conversion of markdown syntax present in textContent to appropriate HTML tags inside the paragraph.", + "required": false, + "defaultValue": "false" + }, + { + "name": "cssClasses", + "type": "array", + "description": "An array of CSS class names to add to the paragraph element for styling purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "idAttribute", + "type": "string", + "description": "Optional id attribute to assign to the paragraph element for identification or styling.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single property 'html' containing the complete HTML string for the rendered paragraph element with applied formatting and attributes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform plain or lightly formatted textual content into a styled HTML paragraph element suitable for web embedding, including optional markdown rendering and CSS class assignment. It is ideal for integrating user-generated or dynamic content into HTML contexts programmatically.", + "limitations": "This tool does not support complex HTML or advanced markdown features like nested lists, tables, or embedded media. It focuses on single paragraph text with basic inline formatting only.", + "examples": [ + "Render a paragraph with markdown-enabled bold and italic formatting.", + "Generate a paragraph with specific CSS classes for styling in a web app.", + "Create a paragraph with a unique id attribute for dynamic DOM manipulation." + ] + }, + "tags": [ + "api", + "rendering", + "html", + "paragraph", + "markdown", + "web", + "content" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Hello, **world**! This is *important*.\",\"applyMarkdown\":true,\"cssClasses\":[\"highlight\",\"intro\"],\"idAttribute\":\"para1\"}", + "description": "Render a paragraph with markdown formatting enabled, adding two CSS classes and an id attribute." + }, + { + "inputJson": "{\"textContent\":\"Simple plain text paragraph.\",\"applyMarkdown\":false,\"cssClasses\":[],\"idAttribute\":\"\"}", + "description": "Render a plain paragraph with no markdown or additional attributes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "api-integration.renderSummary", + "description": "Accepts raw text or structured documents as input and processes them by extracting key information and generating a concise, coherent summary. Outputs a summarized text suitable for quick understanding or reporting purposes.", + "category": "api-integration", + "parameters": [ + { + "name": "inputDocument", + "type": "string", + "description": "The raw text or document content to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input document, e.g., 'text', 'html', 'markdown'. Helps tailor processing logic.", + "required": false, + "defaultValue": "text" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired maximum length of the summary in number of sentences. If not specified, default summary length is 3 sentences.", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input document (e.g., 'en' for English). Affects language-specific processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeyPoints", + "type": "boolean", + "description": "If true, the summary includes bullet points for key items; otherwise, plain paragraph summary is returned.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summarized text and metadata such as detected language, original length, and summary length." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to extract concise summaries from longer texts or documents retrieved from APIs or user inputs. It is helpful for creating abstracts, quick previews, or digestible reports to facilitate efficient information consumption.", + "limitations": "This tool does not perform detailed analysis, sentiment detection, or domain-specific interpretations. It may not handle very technical or highly specialized documents accurately and is best suited for general text summarization.", + "examples": [ + "Generate a short summary of a fetched article's content to display on a dashboard.", + "Summarize user-submitted feedback text to highlight main concerns.", + "Create a brief executive summary from a lengthy project report document." + ] + }, + "tags": [ + "api-integration", + "document", + "summarization", + "text-processing", + "nlp", + "summary", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"inputDocument\":\"This quarterly report provides an overview of our sales performance across all regions. Total revenue has increased by 15% compared to the previous quarter. The North American market saw the largest growth, while some challenges remain in the European segment.\",\"summaryLength\":2,\"includeKeyPoints\":true}", + "description": "Summarize a quarterly sales report focusing on key growth points as bullet points." + }, + { + "inputJson": "{\"inputDocument\":\"User feedback for the new app update includes several comments on improved usability and several suggestions for additional features. Most users appreciated the redesigned interface.\",\"summaryLength\":3,\"includeKeyPoints\":false}", + "description": "Generate a concise paragraph summary of user feedback text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "api-integration.buildPipeline", + "description": "Constructs an API integration pipeline by orchestrating multiple API calls with specified workflows, data transformations, and conditional logic. Accepts a JSON configuration detailing the sequence, API endpoints, data mappings, and execution rules. Outputs a deployable pipeline manifest and status report.", + "category": "api-integration", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "Name identifier for the API pipeline to be built", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "Ordered list of steps defining API calls and their configurations such as endpoint, method, headers, and mapping", + "required": true, + "defaultValue": "" + }, + { + "name": "errorHandlingStrategy", + "type": "string", + "description": "Defines the error handling approach: 'retry', 'skip', or 'abort'", + "required": false, + "defaultValue": "abort" + }, + { + "name": "concurrencyLimit", + "type": "number", + "description": "Maximum number of concurrent API requests allowed during pipeline execution", + "required": false, + "defaultValue": "5" + }, + { + "name": "globalHeaders", + "type": "object", + "description": "Key-value pairs of HTTP headers to include in every API request unless overridden at step level", + "required": false, + "defaultValue": "{}" + }, + { + "name": "authentication", + "type": "object", + "description": "Authentication configuration details such as type (e.g., OAuth2, API key) and credentials", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the pipeline manifest (configuration) and a status report indicating success or errors in building the pipeline" + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automate complex workflows involving multiple API calls chained together with data transformations and conditional branching, such as integrating disparate services or building custom ETL pipelines. It helps generate a reusable pipeline manifest based on user specifications.", + "limitations": "Cannot execute the pipeline; only builds configuration. Does not validate API endpoint availability. Complex conditional logic must be defined in input; no automated optimization is performed.", + "examples": [ + "Build an API pipeline that fetches user data from Service A, transforms the data, then posts to Service B with retries on failure.", + "Create a multi-step pipeline integrating payment verification, fraud check, and notification APIs with concurrency limit set to 3.", + "Generate an API integration pipeline using OAuth2 authentication and global headers for all calls." + ] + }, + "tags": [ + "api", + "integration", + "pipeline", + "orchestration", + "automation", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"userSyncPipeline\",\"steps\":[{\"id\":\"step1\",\"endpoint\":\"https://api.serviceA.com/users\",\"method\":\"GET\",\"headers\":{\"Accept\":\"application/json\"}},{\"id\":\"step2\",\"endpoint\":\"https://api.serviceB.com/users\",\"method\":\"POST\",\"headers\":{\"Content-Type\":\"application/json\"},\"mapping\":{\"input\":\"step1.response.data\"}}]}", + "description": "Pipeline that fetches user data from Service A and posts to Service B with data mapping." + }, + { + "inputJson": "{\"pipelineName\":\"paymentProcessing\",\"steps\":[{\"id\":\"verifyPayment\",\"endpoint\":\"https://payments.example.com/verify\",\"method\":\"POST\"},{\"id\":\"fraudCheck\",\"endpoint\":\"https://fraudcheck.example.com/check\",\"method\":\"POST\"},{\"id\":\"notifyUser\",\"endpoint\":\"https://notify.example.com/send\",\"method\":\"POST\"}],\"errorHandlingStrategy\":\"retry\",\"concurrencyLimit\":3}", + "description": "Multi-step payment processing with error retries and concurrency limits." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "api-integration.buildCluster", + "description": "Builds and configures a computing cluster by orchestrating APIs of cloud service providers and container orchestration platforms. Accepts cluster specifications such as node count, instance types, network settings, and container runtimes to create a scalable, managed cluster. Returns cluster deployment status and access information.", + "category": "api-integration", + "parameters": [ + { + "name": "provider", + "type": "string", + "description": "Cloud service provider to use for cluster deployment (e.g., AWS, GCP, Azure).", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of nodes to include in the cluster.", + "required": true, + "defaultValue": "3" + }, + { + "name": "instanceType", + "type": "string", + "description": "Type of machine instances to use for cluster nodes (e.g., t3.medium).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the cluster will be deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration details such as VPC ID, subnet IDs, and security group IDs.", + "required": false, + "defaultValue": "" + }, + { + "name": "containerRuntime", + "type": "string", + "description": "Container runtime environment to use (e.g., Docker, containerd).", + "required": false, + "defaultValue": "Docker" + }, + { + "name": "orchestrationPlatform", + "type": "string", + "description": "Container orchestration platform to install (e.g., Kubernetes, Docker Swarm).", + "required": true, + "defaultValue": "Kubernetes" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Whether to enable auto-scaling for the cluster nodes.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing cluster deployment status, endpoint URLs, authentication credentials, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build and configure cloud-based clusters by combining APIs of infrastructure providers and orchestration platforms. It facilitates automated cluster provisioning with customizable parameters for nodes, network, and runtimes, useful for dynamic scaling or testing environments.", + "limitations": "Does not handle application deployment within the cluster or post-deployment cluster management beyond initial setup. Requires appropriate API credentials and permissions on the cloud provider side.", + "examples": [ + "Build a 5-node Kubernetes cluster on AWS using t3.medium instances in us-east-1.", + "Deploy a 3-node Docker Swarm cluster on Google Cloud Platform with automatic scaling enabled.", + "Create an Azure-based Kubernetes cluster with custom network configuration and containerd runtime." + ] + }, + "tags": [ + "api-integration", + "cluster", + "cloud", + "orchestration", + "deployment", + "automation", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"provider\":\"AWS\",\"nodeCount\":5,\"instanceType\":\"t3.medium\",\"region\":\"us-east-1\",\"networkConfig\":{\"vpcId\":\"vpc-0abc123\",\"subnetIds\":[\"subnet-12345\",\"subnet-67890\"]},\"containerRuntime\":\"Docker\",\"orchestrationPlatform\":\"Kubernetes\",\"enableAutoScaling\":true}", + "description": "Create a 5-node Kubernetes cluster on AWS with Docker runtime, in us-east-1 region, including custom VPC and subnets, with auto-scaling enabled." + }, + { + "inputJson": "{\"provider\":\"GCP\",\"nodeCount\":3,\"instanceType\":\"n1-standard-2\",\"region\":\"us-central1\",\"containerRuntime\":\"containerd\",\"orchestrationPlatform\":\"Docker Swarm\",\"enableAutoScaling\":false}", + "description": "Deploy a 3-node Docker Swarm cluster on Google Cloud Platform using containerd as runtime without auto-scaling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "api-integration.composeComment", + "description": "Creates a structured comment for API-based communication platforms. Accepts input parameters such as author info, comment text, optional attachments, reply references, and metadata. Processes these inputs to produce a well-formed comment object compatible for submission or integration with various APIs that accept comments or messages.", + "category": "api-integration", + "parameters": [ + { + "name": "authorName", + "type": "string", + "description": "Display name of the comment's author", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Unique identifier for the author, e.g., user ID", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The content text of the comment", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachments related to the comment, such as URLs or file references", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyToCommentId", + "type": "string", + "description": "ID of the comment this is replying to, if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional key-value pairs to add context to the comment, like tags or timestamps", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A comment object structured with all provided inputs, formatted for API submission." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or compose a new comment, message, or textual input that will be sent through an API requiring a structured comment format. This helps ensure consistent formation of comments including authorship, content, attachments, and threading info.", + "limitations": "This tool does not perform sentiment analysis, language translation, or enforce content moderation; it only composes comment structure from given inputs.", + "examples": [ + "Add a new comment by user JaneDoe with text 'Thanks for the update!' and a related image attachment.", + "Reply to comment ID '12345' with a clarifying question from userID 'u789'.", + "Create a system-generated comment with metadata tags indicating 'automated' and priority 'high'." + ] + }, + "tags": [ + "compose", + "comment", + "api", + "communication", + "message", + "threading", + "attachments" + ], + "examples": [ + { + "inputJson": "{\"authorName\":\"Jane Doe\",\"authorId\":\"user123\",\"commentText\":\"Thanks for the update!\",\"attachments\":[\"https://example.com/image.png\"],\"replyToCommentId\":\"\",\"metadata\":{}}", + "description": "Compose a simple comment with an image attachment by Jane Doe without replying to any existing comment." + }, + { + "inputJson": "{\"authorName\":\"SupportBot\",\"authorId\":\"bot001\",\"commentText\":\"We are looking into your issue.\",\"attachments\":[],\"replyToCommentId\":\"98765\",\"metadata\":{\"automated\":\"true\",\"priority\":\"high\"}}", + "description": "Compose an automated reply comment referencing a prior comment with metadata tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "api-integration.buildQueue", + "description": "Builds a configurable API-driven message queue infrastructure component that supports enqueuing and dequeuing messages with specified concurrency, retry policies, and persistence options. Accepts configuration parameters and returns a queue handle with operational endpoints and status.", + "category": "api-integration", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "Unique name identifier for the queue to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "maxConcurrentConsumers", + "type": "number", + "description": "Maximum number of concurrent consumers processing messages from the queue", + "required": false, + "defaultValue": "5" + }, + { + "name": "retryAttempts", + "type": "number", + "description": "Number of retry attempts for failed message processing", + "required": false, + "defaultValue": "3" + }, + { + "name": "retryDelaySeconds", + "type": "number", + "description": "Delay in seconds between retry attempts", + "required": false, + "defaultValue": "10" + }, + { + "name": "persistenceEnabled", + "type": "boolean", + "description": "Enable persistent storage to prevent message loss after restarts", + "required": false, + "defaultValue": "true" + }, + { + "name": "visibilityTimeoutSeconds", + "type": "number", + "description": "Time in seconds a message is hidden from other consumers after being received", + "required": false, + "defaultValue": "30" + }, + { + "name": "deadLetterQueueName", + "type": "string", + "description": "Name of the dead letter queue to route messages that failed permanent processing", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing queueName, enqueueEndpoint, dequeueEndpoint, status, and configuration details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically configure and instantiate a message queue infrastructure component for asynchronous API communication, allowing orchestration of microservices or event-driven workflows with custom concurrency and retry behaviors.", + "limitations": "This tool does not implement the actual message processing logic or integration with external messaging systems; it only builds the queue configuration and endpoints.", + "examples": [ + "Create a queue named 'orderProcessing' with 10 concurrent consumers and dead letter queue 'orderDLQ'.", + "Build a persistent queue named 'emailDispatch' with 5 retries and a visibility timeout of 60 seconds.", + "Set up a transient queue 'tempWorkQueue' with no persistence and 2 max concurrent consumers." + ] + }, + "tags": [ + "api-integration", + "queue", + "message-queue", + "infrastructure", + "build", + "orchestration" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"orderProcessing\",\"maxConcurrentConsumers\":10,\"retryAttempts\":5,\"retryDelaySeconds\":15,\"persistenceEnabled\":true,\"visibilityTimeoutSeconds\":45,\"deadLetterQueueName\":\"orderDLQ\"}", + "description": "Create a persistent order processing queue with concurrency, retries, and a dead letter queue." + }, + { + "inputJson": "{\"queueName\":\"emailDispatch\",\"maxConcurrentConsumers\":3,\"retryAttempts\":3,\"retryDelaySeconds\":30,\"persistenceEnabled\":true,\"visibilityTimeoutSeconds\":60,\"deadLetterQueueName\":\"\"}", + "description": "Build an email dispatch queue with some retries and visibility timeout but no dead letter queue." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "api-integration.generateAnomaly", + "description": "This tool accepts time-series or event data from APIs along with configuration parameters to detect anomalies using statistical and machine learning techniques. It processes the input data, identifies unusual patterns or outliers, and outputs detailed anomaly reports including timestamps, severity scores, and possible root causes.", + "category": "api-integration", + "parameters": [ + { + "name": "dataSourceUrl", + "type": "string", + "description": "The HTTP(S) URL of the API endpoint providing the input time-series or event data in JSON format.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional bearer token or API key used for authenticating the request to the data source API.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeField", + "type": "string", + "description": "Name of the field representing the timestamp in each data record, required for time-series analysis.", + "required": true, + "defaultValue": "timestamp" + }, + { + "name": "valueField", + "type": "string", + "description": "Name of the numeric field to analyze for anomaly detection within the data records.", + "required": true, + "defaultValue": "value" + }, + { + "name": "algorithm", + "type": "string", + "description": "Anomaly detection algorithm to apply, e.g., 'statistical', 'isolationForest', 'lstm', or 'auto'.", + "required": false, + "defaultValue": "auto" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Detection sensitivity on a scale from 0 to 1, where higher values detect more anomalies but may include false positives.", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "lookbackPeriod", + "type": "number", + "description": "Number of past data points or minutes to include in context for detection, influencing temporal anomaly identification.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeRootCause", + "type": "boolean", + "description": "Whether to attempt root cause analysis of detected anomalies and include explanations in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of anomaly records each with timestamp, anomaly score, severity, and optional root cause explanation." + }, + "aiAgent": { + "useCase": "Use this tool to integrate with APIs that provide operational, business, or sensor data streams for automatic anomaly detection and alerting. Ideal for proactive monitoring to detect unusual behavior such as spikes, drops, or irregular patterns in time-series data across domains like finance, infrastructure, or IoT.", + "limitations": "This tool relies on the quality and consistency of input data from external APIs and may produce false positives or miss subtle anomalies. It does not perform real-time streaming detection without periodic polling and is not suitable for unstructured or categorical data without preprocessing.", + "examples": [ + "Detect anomalies in server CPU usage metrics retrieved from a cloud monitoring API.", + "Analyze financial transaction volumes from an payments API to identify potential fraud spikes.", + "Identify unusual sensor readings from IoT devices via a data aggregation API." + ] + }, + "tags": [ + "api-integration", + "anomaly-detection", + "analytics", + "time-series", + "monitoring", + "machine-learning", + "automation" + ], + "examples": [ + { + "inputJson": "{\"dataSourceUrl\":\"https://api.example.com/metrics/cpu\",\"authToken\":\"Bearer abc123\",\"timeField\":\"timestamp\",\"valueField\":\"cpu_usage\",\"algorithm\":\"statistical\",\"sensitivity\":0.9,\"lookbackPeriod\":120,\"includeRootCause\":true}", + "description": "Detect CPU usage anomalies from a cloud metrics API using statistical algorithm with high sensitivity and 2-hour lookback." + }, + { + "inputJson": "{\"dataSourceUrl\":\"https://finance.example.com/api/transactions\",\"authToken\":\"\",\"timeField\":\"transaction_time\",\"valueField\":\"amount\",\"algorithm\":\"isolationForest\",\"sensitivity\":0.7,\"lookbackPeriod\":60,\"includeRootCause\":false}", + "description": "Identify unusual transaction amounts for fraud detection from a financial transactions API using isolation forest algorithm." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "api-integration.generateMarkdown", + "description": "Generates Markdown-formatted documentation or reports by integrating and formatting data from API responses. Accepts raw API JSON data and customizable template options, processes the data to extract and organize key information, and outputs structured Markdown text ready for use in README files, reports, or documents.", + "category": "api-integration", + "parameters": [ + { + "name": "apiData", + "type": "object", + "description": "The JSON data object returned from an API, containing the raw information to be formatted into Markdown.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateType", + "type": "string", + "description": "The style or structure of the Markdown output, e.g. 'summary', 'table', 'list', or 'detailed'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include section headers in the Markdown output for better readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxItems", + "type": "number", + "description": "Maximum number of items or entries from the API data to include in the Markdown output to avoid overly long documents.", + "required": false, + "defaultValue": "10" + }, + { + "name": "customTitle", + "type": "string", + "description": "Custom title to prepend as a top-level header in the generated Markdown document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown text as a string under the 'markdown' key." + }, + "aiAgent": { + "useCase": "When an AI agent needs to transform API JSON responses into human-readable Markdown documents for reports, README files, or documentation purposes, especially where quick formatting and readability are required without manual editing.", + "limitations": "Cannot generate Markdown tables or complex formatting beyond standard Markdown syntax. Does not perform API calls itself, only processes given data. Large or deeply nested data structures may be truncated or simplified.", + "examples": [ + "Generate a summary Markdown report from a weather API JSON response.", + "Convert a list of user details from an API response into a Markdown table.", + "Create a detailed Markdown changelog from API-provided version data." + ] + }, + "tags": [ + "api-integration", + "markdown", + "documentation", + "report-generation", + "data-formatting", + "api-data" + ], + "examples": [ + { + "inputJson": "{\"apiData\":{\"users\":[{\"name\":\"Alice\",\"role\":\"Admin\"},{\"name\":\"Bob\",\"role\":\"User\"}]},\"templateType\":\"list\",\"includeHeaders\":true,\"maxItems\":5,\"customTitle\":\"User List Report\"}", + "description": "Generate a Markdown list with headers from user data API response, limited to 5 entries." + }, + { + "inputJson": "{\"apiData\":{\"versions\":[{\"version\":\"1.0.0\",\"changes\":[\"Initial release\"]},{\"version\":\"1.1.0\",\"changes\":[\"Bug fixes\",\"Performance improvements\"]}]},\"templateType\":\"detailed\",\"includeHeaders\":true,\"maxItems\":10,\"customTitle\":\"Changelog\"}", + "description": "Create a detailed Markdown changelog document from version info returned by an API." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "api-integration.generateDiagram", + "description": "Generates visual diagrams such as flowcharts, network diagrams, or UML diagrams based on structured input data representing nodes, edges, and optional styling. Accepts JSON input defining diagram elements, processes this data to construct a visual representation, and outputs a shareable image URL or base64 encoded image for API consumption.", + "category": "api-integration", + "parameters": [ + { + "name": "diagramType", + "type": "string", + "description": "Specifies the type of diagram to generate, e.g., flowchart, network, UML, or mindmap.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Structured input defining nodes, edges, labels, and optional styles to generate the diagram from.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired image output format such as png, svg, or jpeg.", + "required": false, + "defaultValue": "png" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated diagram image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated diagram image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining diagram symbols.", + "required": false, + "defaultValue": "false" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Hex code or color name for the background of the diagram image.", + "required": false, + "defaultValue": "white" + } + ], + "returns": { + "type": "object", + "description": "An object containing the image URL or base64 string representing the generated diagram and metadata including width, height, and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured diagram data into a visual diagram image for documentation, presentations, or API responses, enabling clients to easily display complex relationships or processes.", + "limitations": "Cannot directly edit existing diagrams or interpret unstructured natural language descriptions without prior data structuring. Complex diagrams with unsupported features or extremely large datasets may not render accurately.", + "examples": [ + "Generate a flowchart diagram from JSON specifying connected steps.", + "Produce a network diagram showing nodes and links with custom colors.", + "Create a UML class diagram image from a structured JSON schema representation." + ] + }, + "tags": [ + "api", + "diagram", + "visualization", + "flowchart", + "uml", + "network", + "image-generation", + "media" + ], + "examples": [ + { + "inputJson": "{\"diagramType\":\"flowchart\",\"data\":{\"nodes\":[{\"id\":\"start\",\"label\":\"Start\"},{\"id\":\"process1\",\"label\":\"Process 1\"},{\"id\":\"end\",\"label\":\"End\"}],\"edges\":[{\"from\":\"start\",\"to\":\"process1\"},{\"from\":\"process1\",\"to\":\"end\"}]},\"outputFormat\":\"png\",\"width\":600,\"height\":400,\"includeLegend\":true,\"backgroundColor\":\"#ffffff\"}", + "description": "Generate a simple flowchart diagram with three nodes and two edges, output as PNG with a legend and white background." + }, + { + "inputJson": "{\"diagramType\":\"network\",\"data\":{\"nodes\":[{\"id\":\"1\",\"label\":\"Node A\"},{\"id\":\"2\",\"label\":\"Node B\"},{\"id\":\"3\",\"label\":\"Node C\"}],\"edges\":[{\"from\":\"1\",\"to\":\"2\"},{\"from\":\"2\",\"to\":\"3\"}]},\"outputFormat\":\"svg\",\"width\":800,\"height\":600,\"includeLegend\":false,\"backgroundColor\":\"lightgray\"}", + "description": "Create a network diagram in SVG format showing three interconnected nodes on a light gray background without a legend." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "api-integration.generateConversion", + "description": "This tool integrates with analytics and advertising APIs to calculate and generate conversion metrics based on specified input data such as user interactions, campaign data, or e-commerce events. It accepts input parameters defining data sources, time ranges, and conversion event criteria, then processes this info to output detailed conversion statistics (e.g., conversion rates, total conversions) usable for performance analysis or reporting.", + "category": "api-integration", + "parameters": [ + { + "name": "apiCredentials", + "type": "object", + "description": "Authentication credentials necessary for accessing the external analytics or advertising APIs.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "string", + "description": "Identifier or name of the analytics or advertising platform API to query (e.g., GoogleAnalytics, FacebookAds).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the conversion data period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the conversion data period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEvent", + "type": "string", + "description": "Name or identifier of the conversion event to track (e.g., purchase, signup).", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalFilters", + "type": "object", + "description": "Optional filters such as campaign IDs, ad sets, or user segments to refine conversion data extraction.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the conversion metrics, e.g., json, csv.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing conversion metrics such as totalConversions, conversionRate, and optionally detailed breakdowns by segment or time period." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically fetch, calculate, and report conversion metrics from integrated analytics or advertising APIs within a specified date range and event criteria, facilitating data-driven marketing insights and performance optimization.", + "limitations": "This tool cannot fetch raw user-level data due to API restrictions; it's limited to metrics available via the integrated platforms' reporting APIs. It also depends on valid credentials and network availability.", + "examples": [ + "Generate conversion rates for purchases from Google Analytics between two dates.", + "Calculate total signups conversion metrics from Facebook Ads for specific campaigns.", + "Fetch conversion data filtered by user segment and output as CSV." + ] + }, + "tags": [ + "api-integration", + "conversion", + "analytics", + "reporting", + "marketing", + "ads", + "data-fetching" + ], + "examples": [ + { + "inputJson": "{\"apiCredentials\":{\"apiKey\":\"abc123\",\"accessToken\":\"tokenXYZ\"},\"dataSource\":\"GoogleAnalytics\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-01-31\",\"conversionEvent\":\"purchase\",\"outputFormat\":\"json\"}", + "description": "Calculate purchase conversion metrics from Google Analytics for January 2023." + }, + { + "inputJson": "{\"apiCredentials\":{\"apiKey\":\"fbApiKey\",\"accessToken\":\"fbToken\"},\"dataSource\":\"FacebookAds\",\"startDate\":\"2023-04-01\",\"endDate\":\"2023-04-15\",\"conversionEvent\":\"signup\",\"additionalFilters\":{\"campaignIds\":[\"camp123\", \"camp456\"]},\"outputFormat\":\"json\"}", + "description": "Generate signup conversion metrics from Facebook Ads for specified campaigns in early April 2023." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "api-integration.generateTemplate", + "description": "Generates a customizable document template by integrating multiple APIs and formatting the combined data. Accepts a list of API endpoints with parameters, a template structure definition, and formatting rules. Outputs a structured document template in JSON or HTML ready for rendering or further processing.", + "category": "api-integration", + "parameters": [ + { + "name": "apiEndpoints", + "type": "array", + "description": "An array of API endpoint objects including URL, method, and parameters to fetch data for the template.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateStructure", + "type": "object", + "description": "Defines the layout and placeholders within the template where API data should be inserted.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired format of the generated template, e.g., 'json' or 'html'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "formattingRules", + "type": "object", + "description": "Optional rules for styling and formatting the output template elements.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSampleData", + "type": "boolean", + "description": "Whether to include sample data fetched from the APIs in the generated template.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template content as a string and metadata about the included API data sources." + }, + "aiAgent": { + "useCase": "When an AI agent needs to automate the creation of document templates that aggregate and format data from multiple APIs, this tool enables generating structured templates dynamically based on specified data sources and layout definitions. It is useful for report generation, dashboards, or document automation involving multiple data integrations.", + "limitations": "This tool does not perform actual API data fetching or rendering of the generated template; it generates the template structure only. Complex templating logic beyond placeholders may not be supported.", + "examples": [ + "Generate a financial report template combining stock prices and news API data.", + "Create an HTML dashboard template integrating weather and user activity APIs.", + "Produce a JSON invoice template pulling customer and order data from different APIs." + ] + }, + "tags": [ + "api-integration", + "template-generation", + "document-automation", + "data-aggregation", + "templating" + ], + "examples": [ + { + "inputJson": "{\"apiEndpoints\":[{\"url\":\"https://api.example.com/stocks\",\"method\":\"GET\",\"params\":{\"symbol\":\"AAPL\"}},{\"url\":\"https://api.example.com/news\",\"method\":\"GET\",\"params\":{\"category\":\"finance\"}}],\"templateStructure\":{\"title\":\"Stock Report\",\"sections\":[{\"name\":\"Stock Prices\",\"dataSource\":\"https://api.example.com/stocks\"},{\"name\":\"Latest Finance News\",\"dataSource\":\"https://api.example.com/news\"}]},\"outputFormat\":\"html\",\"formattingRules\":{\"font\":\"Arial\",\"colorScheme\":\"blue\"},\"includeSampleData\":true}", + "description": "Generate an HTML stock report template combining stock price and finance news APIs with styling and sample data included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "api-integration.generateBlogPost", + "description": "Generates a fully formed blog post based on a given topic, target audience, and style preferences. Accepts input parameters including topic, keywords, tone, desired length, and target audience details. Processes these inputs using AI-driven content generation to produce a coherent, SEO-friendly blog post in markdown or plain text format.", + "category": "api-integration", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main subject or title of the blog post to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords to include in the blog post for SEO purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Tone or style of the blog post such as formal, casual, or humorous.", + "required": false, + "defaultValue": "\"formal\"" + }, + { + "name": "length", + "type": "number", + "description": "Approximate word count desired for the blog post.", + "required": false, + "defaultValue": "800" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readership to tailor language and content complexity.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the blog post, e.g., markdown or plain text.", + "required": false, + "defaultValue": "\"markdown\"" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a short summary or introduction paragraph at the start.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post text along with metadata such as title and word count." + }, + "aiAgent": { + "useCase": "Use this tool when needing to rapidly generate original, coherent blog content tailored to specific topics and audiences, for purposes like content marketing, SEO improvements, or generating draft posts for editing and publication.", + "limitations": "Cannot ensure factual accuracy or up-to-date information beyond training data; may require human review and editing for tone, style, and correctness.", + "examples": [ + "Generate a 1000-word blog post on sustainable living aimed at young adults in casual tone.", + "Create a formal SEO-optimized blog post about cloud computing focused on IT professionals, including target keywords.", + "Produce a short summary blog post about recent space exploration advancements for a general audience." + ] + }, + "tags": [ + "content-generation", + "blog", + "seo", + "marketing", + "api-integration", + "writing", + "ai-content" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of Remote Work\",\"keywords\":[\"remote work\",\"productivity\",\"work-life balance\"],\"tone\":\"casual\",\"length\":900,\"targetAudience\":\"young professionals\",\"format\":\"markdown\",\"includeSummary\":true}", + "description": "Generate a casual, 900-word blog post about the benefits of remote work targeting young professionals, including given SEO keywords." + }, + { + "inputJson": "{\"topic\":\"Understanding Blockchain Technology\",\"keywords\":[\"blockchain\",\"cryptocurrency\",\"security\"],\"tone\":\"formal\",\"length\":1200,\"targetAudience\":\"IT specialists\",\"format\":\"markdown\",\"includeSummary\":false}", + "description": "Create a detailed, formal blog post focused on blockchain technology for IT specialists, without a summary paragraph." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "api-integration.createCache", + "description": "Creates a configurable cache instance for use in API orchestration workflows. Accepts cache type, size limits, expiration policies, and backend storage options as input. Processes these to initialize and return a cache handle with unique ID and configuration details for use in further API integration tasks.", + "category": "api-integration", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Specifies the cache implementation type, e.g., 'memory', 'redis', or 'disk'.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of items or bytes the cache can store before evicting items.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "defaultTTL", + "type": "number", + "description": "Default time-to-live (in seconds) for cached items before automatic expiration.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "storageConfig", + "type": "object", + "description": "Configuration object for backend storage specifics, e.g., Redis connection details.", + "required": false, + "defaultValue": "" + }, + { + "name": "evictionPolicy", + "type": "string", + "description": "Policy for evicting items when cache is full, e.g., 'LRU' (least recently used) or 'FIFO'.", + "required": false, + "defaultValue": "LRU" + }, + { + "name": "namespace", + "type": "string", + "description": "Optional namespace prefix for keys to avoid collisions in shared cache stores.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique cache instance ID, complete configuration properties, and a status indicating readiness." + }, + "aiAgent": { + "useCase": "Use this tool when orchestrating multiple APIs with shared or temporary data storage needs where caching improves efficiency and reduces latency. It is essential for workflows requiring repeated access to API results or session data to avoid redundant calls.", + "limitations": "This tool does not handle actual cache data operations like reading or writing entries; it only creates and configures cache instances. Backend storage setup and maintenance must be managed separately.", + "examples": [ + "Create an in-memory cache with 2000 max items and 30-minute TTL.", + "Create a Redis-backed cache with LRU eviction for use in a microservices orchestration.", + "Create a disk-based cache with a namespace to prevent key collisions." + ] + }, + "tags": [ + "api", + "cache", + "integration", + "performance", + "infrastructure", + "orchestration" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"memory\",\"maxSize\":2000,\"defaultTTL\":1800}", + "description": "Create an in-memory cache that stores up to 2000 items, each expiring after 30 minutes." + }, + { + "inputJson": "{\"cacheType\":\"redis\",\"storageConfig\":{\"host\":\"redis.example.com\",\"port\":6379},\"evictionPolicy\":\"LRU\"}", + "description": "Create a Redis cache with LRU eviction policy connecting to specified Redis server." + }, + { + "inputJson": "{\"cacheType\":\"disk\",\"maxSize\":5000,\"namespace\":\"serviceA\"}", + "description": "Create a disk-backed cache with maximum 5000 items and a key namespace 'serviceA'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "api-integration.createQuote", + "description": "This tool creates a new quote entry by accepting input details such as the quote text, author, category, and optional metadata. It processes the data to validate required fields and formats it into a structured quote object, then outputs the created quote record with a unique ID and timestamp, ready for integration with APIs or databases.", + "category": "api-integration", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The main text content of the quote to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "The author of the quote. If not known, can be set as 'Anonymous'.", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "The thematic category of the quote for organizing or filtering purposes (e.g., inspiration, humor).", + "required": false, + "defaultValue": "\"general\"" + }, + { + "name": "tags", + "type": "array", + "description": "An optional list of relevant tags or keywords to enhance searchability.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "source", + "type": "string", + "description": "Optional source or citation information for the quote, such as a book or speech name.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created quote containing id, quoteText, author, category, tags, source, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically add or register new quote data entries into an API-based quote repository or service. It standardizes input data and produces a consistent quote object useful for further integration or display.", + "limitations": "This tool does not fetch or generate quotes automatically; it requires explicit input. It does not support bulk creation in a single call.", + "examples": [ + "Create a motivational quote with author and category.", + "Add an anonymous humorous quote with tags.", + "Register a quote including source citation details." + ] + }, + "tags": [ + "api", + "quote", + "creation", + "content management", + "text" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"author\":\"Franklin D. Roosevelt\",\"category\":\"inspiration\",\"tags\":[\"motivation\",\"future\"],\"source\":\"Speech, 1945\"}", + "description": "Create a motivational quote with full metadata." + }, + { + "inputJson": "{\"quoteText\":\"Why don’t scientists trust atoms? Because they make up everything.\",\"author\":\"Anonymous\",\"category\":\"humor\"}", + "description": "Create an anonymous humorous quote with category." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "api-integration.createExpense", + "description": "Creates a new expense record in an external accounting or expense management system via API. Accepts details such as amount, currency, date, category, and optional notes or attachments. Processes the data by sending a create request to the configured API and returns the created expense's details including its unique identifier and status.", + "category": "api-integration", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "The monetary amount of the expense being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The ISO currency code for the expense amount (e.g., USD, EUR).", + "required": true, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "The date the expense was incurred in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "The expense category or type (e.g., Travel, Meals).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief text description or memo about the expense.", + "required": false, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "The payment method used for the expense, e.g., credit card, cash.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "An array of attachment objects (e.g., receipts) related to the expense; each with a fileUrl and optional fileName.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "projectCode", + "type": "string", + "description": "Optional project or cost center code to associate the expense for accounting purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created expense record, including its unique id, status, and all submitted fields with normalized values." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically record a new expense into an external financial or expense tracking system, integrating with APIs that require structured expense data input. Ideal for automating expense entry from receipt scanning or user input within workflows.", + "limitations": "This tool cannot validate the correctness of supplied financial data beyond basic type checks or upload actual binary receipt files; it depends on the target API to accept formatted metadata and handle attachments by URL. It cannot retrieve or modify existing expenses.", + "examples": [ + "Create an expense of $123.45 USD on 2024-05-15 categorized as Travel with a receipt link.", + "Add a meal expense of 45 Euros on 2024-04-22 with description 'Team Lunch' and payment method 'Corporate Card'.", + "Record a cash expense of 200 USD with project code 'PRJ-1001' and no attachments." + ] + }, + "tags": [ + "api", + "expense", + "create", + "finance", + "accounting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"amount\":123.45,\"currency\":\"USD\",\"date\":\"2024-05-15\",\"category\":\"Travel\",\"description\":\"Flight to conference\",\"paymentMethod\":\"Credit Card\",\"attachments\":[{\"fileUrl\":\"https://example.com/receipt1.jpg\",\"fileName\":\"receipt1.jpg\"}],\"projectCode\":\"\"}", + "description": "Creating a travel expense with receipt attachment and credit card payment." + }, + { + "inputJson": "{\"amount\":45,\"currency\":\"EUR\",\"date\":\"2024-04-22\",\"category\":\"Meals\",\"description\":\"Team Lunch\",\"paymentMethod\":\"Corporate Card\",\"attachments\":[],\"projectCode\":\"\"}", + "description": "Adding a meal expense for a team lunch paid by corporate card." + }, + { + "inputJson": "{\"amount\":200,\"currency\":\"USD\",\"date\":\"2024-03-30\",\"category\":\"Office Supplies\",\"description\":\"Bought printer ink\",\"paymentMethod\":\"Cash\",\"attachments\":[],\"projectCode\":\"PRJ-1001\"}", + "description": "Recording an office supplies expense paid in cash associated to a project code." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "api-integration.createCertificate", + "description": "Generates a digital security certificate by integrating with a certificate authority API. Accepts input details such as certificate type, subject information, validity period, and encryption keys. Processes these details to request and retrieve a signed certificate, returning the certificate data and metadata for use in secure communications.", + "category": "api-integration", + "parameters": [ + { + "name": "certificateType", + "type": "string", + "description": "Type of certificate to create, e.g., SSL, client, code signing.", + "required": true, + "defaultValue": "" + }, + { + "name": "subjectDetails", + "type": "object", + "description": "Object containing subject information like commonName, organization, country, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the certificate should be valid.", + "required": true, + "defaultValue": "365" + }, + { + "name": "publicKey", + "type": "string", + "description": "Public key or CSR info needed for the certificate creation.", + "required": true, + "defaultValue": "" + }, + { + "name": "certificateAuthority", + "type": "string", + "description": "Identifier or endpoint of the certificate authority API to request the certificate.", + "required": true, + "defaultValue": "" + }, + { + "name": "includePrivateKey", + "type": "boolean", + "description": "Whether to include the private key in the response (if generated or available).", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalExtensions", + "type": "object", + "description": "Optional extensions or metadata to include in the certificate request (e.g., SANs).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the signed certificate (PEM or DER format), associated metadata such as serial number, issuer details, and optionally the private key if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate or request digital certificates for uses such as SSL/TLS, client authentication, or code signing by interfacing with certificate authority services. It simplifies automation of certificate lifecycle management in secure API integrations.", + "limitations": "This tool cannot generate private keys on its own; private key generation and CSR creation must be performed prior and passed in. It also does not handle certificate revocation or renewal processes automatically.", + "examples": [ + "Generate an SSL certificate for example.com valid for 1 year using a specified CA.", + "Create a client authentication certificate with specific subject details and SAN entries.", + "Request a code signing certificate including extended attributes for organizational use." + ] + }, + "tags": [ + "api-integration", + "certificate", + "security", + "digital-certificate", + "certificate-authority", + "ssl", + "tls", + "automation" + ], + "examples": [ + { + "inputJson": "{\"certificateType\":\"SSL\",\"subjectDetails\":{\"commonName\":\"example.com\",\"organization\":\"Example Corp\",\"country\":\"US\"},\"validityDays\":365,\"publicKey\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhki...IDAQAB\\n-----END PUBLIC KEY-----\",\"certificateAuthority\":\"https://api.example-ca.com/issue\",\"includePrivateKey\":false}", + "description": "Request an SSL certificate for example.com valid for 365 days from Example CA API without private key." + }, + { + "inputJson": "{\"certificateType\":\"client\",\"subjectDetails\":{\"commonName\":\"John Doe\",\"emailAddress\":\"john.doe@example.com\"},\"validityDays\":730,\"publicKey\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhki...IDAQAB\\n-----END PUBLIC KEY-----\",\"certificateAuthority\":\"https://api.other-ca.com/request\",\"includePrivateKey\":true,\"additionalExtensions\":{\"subjectAltName\":\"email:john.doe@example.com\"}}", + "description": "Create a client authentication certificate with email SAN for John Doe including private key." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "api-integration.createChannel", + "description": "Creates a new communication channel by integrating with specified API platforms (e.g., Slack, Microsoft Teams, Discord). Accepts platform type, channel name, optional description, and privacy settings. Returns details of the created channel including channel ID, URL, and status.", + "category": "api-integration", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "The communication platform to create the channel on (e.g., 'slack', 'microsoftTeams', 'discord').", + "required": true, + "defaultValue": "" + }, + { + "name": "channelName", + "type": "string", + "description": "The name of the channel to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A short description of the channel content or purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Determines if the channel should be private (true) or public (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "initialMembers", + "type": "array", + "description": "List of user IDs or emails to be invited to the channel upon creation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "apiToken", + "type": "string", + "description": "The authentication token/API key to authorize the API request to the platform.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the channel ID, URL/link to the channel, and the creation status (success or failure) with an optional error message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of a new communication channel on a supported platform to facilitate team collaboration or customer engagement. Ideal for orchestration in workflows where channels must be dynamically created based on user input or system events.", + "limitations": "This tool cannot configure advanced channel settings beyond privacy and description. It relies on valid API tokens and permissions; it cannot handle expired or insufficient permissions scenarios gracefully beyond returning error messages.", + "examples": [ + "Create a private Slack channel named 'project-alpha' and invite specified team members.", + "Set up a public Microsoft Teams channel to discuss marketing strategies.", + "Generate a new Discord channel for event announcements with no initial members." + ] + }, + "tags": [ + "api-integration", + "communication", + "channel", + "create", + "collaboration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"platform\": \"slack\", \"channelName\": \"project-alpha\", \"description\": \"Channel for Project Alpha discussions\", \"isPrivate\": true, \"initialMembers\": [\"user1@example.com\", \"user2@example.com\"], \"apiToken\": \"xoxb-1234abcd\"}", + "description": "Creating a private Slack channel named 'project-alpha' inviting two initial members using a Slack API token." + }, + { + "inputJson": "{\"platform\": \"microsoftTeams\", \"channelName\": \"Marketing Discussions\", \"description\": \"Channel for marketing strategy planning\", \"isPrivate\": false, \"initialMembers\": [], \"apiToken\": \"abcdef123456\"}", + "description": "Creating a public Microsoft Teams channel without initial members to facilitate marketing discussions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "api-integration.createGraph", + "description": "Creates a customizable data graph by integrating multiple API data sources. Accepts configuration specifying APIs, data extraction paths, graph type, and display settings. Processes the combined data and outputs a graph object ready for rendering or further manipulation.", + "category": "api-integration", + "parameters": [ + { + "name": "apiEndpoints", + "type": "array", + "description": "List of API endpoints to fetch data from, each with method, headers, and query parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataPaths", + "type": "object", + "description": "Mapping of each API endpoint to JSON paths to extract relevant data fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to create, e.g., 'line', 'bar', 'pie', or 'scatter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphTitle", + "type": "string", + "description": "Title of the graph for display purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the graph's X-axis.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the graph's Y-axis.", + "required": false, + "defaultValue": "" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Interval in seconds to refresh and update the graph data. 0 means no refresh.", + "required": false, + "defaultValue": "0" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional filters to apply on the aggregated data before graph creation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the combined graph data structure, including labels, datasets, graph type, and metadata ready for rendering or exporting." + }, + "aiAgent": { + "useCase": "Use this tool when you need to integrate data from multiple APIs and visualize it as a consolidated graph for reporting, monitoring, or analysis. It automates data fetching, extraction, and graph preparation suitable for dashboards or presentations.", + "limitations": "This tool does not perform advanced data transformations or predictive analytics; it assumes APIs return JSON-compatible data and that data paths are correctly specified. It does not render graphs directly but prepares data for rendering.", + "examples": [ + "Create a line graph showing daily weather temperature and humidity by integrating weather APIs.", + "Generate a pie chart representing sales distribution across regions using data from sales and CRM APIs.", + "Build a real-time bar graph combining stock prices and trading volumes from financial APIs with auto-refresh every 60 seconds." + ] + }, + "tags": [ + "api-integration", + "graph-creation", + "data-visualization", + "dashboard", + "multi-source", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"apiEndpoints\":[{\"url\":\"https://api.weather.com/v3/wx/conditions/current\",\"method\":\"GET\",\"headers\":{\"Authorization\":\"Bearer token\"}}],\"dataPaths\":{\"https://api.weather.com/v3/wx/conditions/current\":{\"temperature\":\"$.temperature\",\"humidity\":\"$.humidity\"}},\"graphType\":\"line\",\"graphTitle\":\"Current Weather Conditions\",\"xAxisLabel\":\"Time\",\"yAxisLabel\":\"Values\",\"refreshInterval\":0}", + "description": "Create a line graph from a single weather API showing temperature and humidity over time." + }, + { + "inputJson": "{\"apiEndpoints\":[{\"url\":\"https://api.sales.com/v1/sales\",\"method\":\"GET\"},{\"url\":\"https://api.crm.com/v1/customers\",\"method\":\"GET\"}],\"dataPaths\":{\"https://api.sales.com/v1/sales\":{\"region\":\"$.region\",\"amount\":\"$.amount\"},\"https://api.crm.com/v1/customers\":{\"region\":\"$.region\",\"count\":\"$.customerCount\"}},\"graphType\":\"pie\",\"graphTitle\":\"Sales Distribution by Region\"}", + "description": "Generate a pie chart showing sales distribution by region integrating sales and CRM API data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "api-integration.createVulnerability", + "description": "Creates a new vulnerability record in an external security tracking or bug bounty management system via API. Accepts detailed vulnerability data such as title, description, severity, affected components, and optional metadata. Processes input to call the target API and returns the created vulnerability's ID and status.", + "category": "api-integration", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Short title or summary of the vulnerability to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description explaining the vulnerability and its impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the vulnerability, e.g., Critical, High, Medium, Low.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of affected components, modules, or assets impacted by this vulnerability.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "disclosedDate", + "type": "string", + "description": "Date when the vulnerability was disclosed or discovered in ISO 8601 format.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalMetadata", + "type": "object", + "description": "Optional key-value pairs with extra metadata related to the vulnerability.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the ID of the newly created vulnerability record, confirmation status, and optional creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to programmatically submit or log a new security vulnerability into a third-party vulnerability management platform or bug tracking system, streamlining security issue reporting workflows across multiple teams or platforms.", + "limitations": "This tool cannot validate the vulnerability's correctness or security impact; it only submits received data. API endpoint specifics and authentication must be configured externally. It does not handle updates or deletion of vulnerabilities.", + "examples": [ + "Create a high severity vulnerability for a web app SQL injection issue.", + "Log a newly discovered medium severity vulnerability with multiple affected modules.", + "Submit vulnerability with custom tags and date for audit tracking." + ] + }, + "tags": [ + "api", + "security", + "vulnerability", + "create", + "integration", + "bug-tracking", + "automation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"SQL Injection in Login API\",\"description\":\"Attackers can exploit improper input sanitization to execute arbitrary SQL commands.\",\"severity\":\"High\",\"affectedComponents\":[\"Authentication Module\",\"User API\"],\"disclosedDate\":\"2024-05-10\"}", + "description": "Create a high severity SQL Injection vulnerability affecting authentication components." + }, + { + "inputJson": "{\"title\":\"Cross-Site Scripting in Comments\",\"description\":\"Stored XSS vulnerability in the comments section allowing script execution.\",\"severity\":\"Medium\",\"affectedComponents\":[\"Comments Widget\"]}", + "description": "Log a medium severity XSS vulnerability affecting the comments widget without a disclosed date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "api-integration.createBlogPost", + "description": "Creates a new blog post by accepting inputs like title, content, author, tags, and optional metadata. It processes these inputs to format and validate the blog data, and returns a structured object representing the created blog post with an assigned ID and timestamps.", + "category": "api-integration", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The main body content of the blog post, in HTML or markdown format.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name or identifier of the author of the blog post.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tag keywords categorizing the blog post.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "publishDate", + "type": "string", + "description": "The scheduled publish date in ISO 8601 format; if empty, defaults to immediate publication.", + "required": false, + "defaultValue": "" + }, + { + "name": "isDraft", + "type": "boolean", + "description": "Whether the blog post should be saved as a draft without publishing.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata for SEO or custom fields as key-value pairs.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created blog post's ID, title, author, content, tags, publish date, draft status, metadata, created and updated timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create or schedule blog posts on platforms that expose API endpoints for content creation. Ideal for automating content publishing workflows or integrating blog creation into larger content management pipelines.", + "limitations": "This tool does not handle uploading media assets such as images or videos; it also does not perform advanced content moderation or SEO optimization automatically.", + "examples": [ + "Create a new blog post titled 'AI in Healthcare' with author 'Dr. Smith', tagged with 'AI' and 'Health', to be published immediately.", + "Save a blog post as a draft with the title 'Upcoming Features' and no publish date.", + "Schedule a blog post for future publication with metadata including an SEO description." + ] + }, + "tags": [ + "api", + "blog", + "content-creation", + "automation", + "publishing" + ], + "examples": [ + { + "inputJson": "{\"title\":\"How to use AI for productivity\",\"content\":\"

This post explains AI tools.

\",\"author\":\"Jane Doe\",\"tags\":[\"AI\",\"productivity\"],\"publishDate\":\"\",\"isDraft\":false,\"metadata\":{\"seoDescription\":\"Guide to AI productivity tools.\"}}", + "description": "Creates a published blog post about AI productivity with SEO metadata." + }, + { + "inputJson": "{\"title\":\"Draft: New Features\",\"content\":\"Coming soon content.\",\"author\":\"Admin\",\"tags\":[],\"publishDate\":\"\",\"isDraft\":true,\"metadata\":{}}", + "description": "Saves a blog post as a draft for future editing and publishing." + }, + { + "inputJson": "{\"title\":\"Scheduled Post\",\"content\":\"Schedule for next week.\",\"author\":\"Editor\",\"tags\":[\"schedule\"],\"publishDate\":\"2024-07-01T09:00:00Z\",\"isDraft\":false,\"metadata\":{}}", + "description": "Creates a blog post scheduled to be published on July 1, 2024." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "web-scraping.analyzeKPI", + "description": "This tool accepts a target website URL and a list of KPI selectors or keywords to extract and analyze business or marketing key performance indicators from the webpage's content and embedded analytics data. It processes structured and unstructured data found on the page to produce a summarized report of KPI values, trends, and insights in JSON format.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the webpage to scrape and analyze for KPIs.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiSelectors", + "type": "array", + "description": "An array of CSS selectors, XPath expressions, or keyword patterns used to locate KPIs data elements on the webpage.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Flag indicating whether to attempt extraction and analysis of trend data for the KPIs if available over time.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth of linked pages to crawl from the initial URL to locate additional KPI data.", + "required": false, + "defaultValue": "1" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for page load and scraping before timing out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "authCredentials", + "type": "object", + "description": "Optional object containing username and password for accessing pages behind authentication.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object containing extracted KPIs with their values, any identified trends, confidence scores, and metadata about the scraping session." + }, + "aiAgent": { + "useCase": "Use this tool when you need automated extraction and analysis of key performance indicators visible on public or authenticated webpages, such as marketing metrics, sales data highlights, or engagement statistics, to support business intelligence and decision making.", + "limitations": "Cannot access data behind complex authentication flows beyond basic auth; may not accurately interpret KPIs hidden in images or dynamic content requiring advanced browser automation; dependent on quality of selectors provided for extraction.", + "examples": [ + "Extract marketing KPIs from the homepage of a SaaS product.", + "Analyze sales KPIs reported on a company's investor relations page.", + "Retrieve engagement KPIs from a competitor's analytics dashboard page with simple login." + ] + }, + "tags": [ + "web scraping", + "KPI analysis", + "data extraction", + "business intelligence", + "analytics", + "marketing", + "sales" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/dashboard\",\"kpiSelectors\":[\".kpi-value\", \"#sales-metric\"],\"includeTrends\":true,\"maxDepth\":1,\"timeoutSeconds\":20}", + "description": "Extract specified KPIs and associated trend data from a public dashboard page." + }, + { + "inputJson": "{\"url\":\"https://secured.example.com/login/dashboard\",\"kpiSelectors\":[\".engagement-rate\", \".conversion-rate\"],\"authCredentials\":{\"username\":\"user\",\"password\":\"pass\"},\"includeTrends\":false,\"maxDepth\":0}", + "description": "Extract engagement and conversion rate KPIs from an authenticated dashboard page without following links." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "web-scraping.analyzeComment", + "description": "This tool accepts raw comment text or HTML containing user comments scraped from websites. It processes the input to extract linguistic features and perform sentiment and toxicity analysis. The output includes detected sentiment (positive, neutral, negative), toxicity scores, key topics or keywords, and language detection results, helping understand comment tone and content.", + "category": "web-scraping", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw text of the comment to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Optional raw HTML containing the comment, used for richer extraction if text is unavailable.", + "required": false, + "defaultValue": "" + }, + { + "name": "languageHint", + "type": "string", + "description": "Optional ISO language code hint to improve language detection and sentiment accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeToxicityAnalysis", + "type": "boolean", + "description": "Whether to perform toxicity analysis on the comment text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywordExtraction", + "type": "boolean", + "description": "Whether to extract important keywords/topics from the comment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed comment data, including sentiment (string), language (string ISO code), toxicityScore (number 0-1), keywords (array of strings)." + }, + "aiAgent": { + "useCase": "Use this tool when you have user-generated comments extracted from websites and want to understand their sentiment, detect toxic or abusive content, extract keywords to identify main topics, or detect the comment language for content moderation, summarization, or analytics tasks.", + "limitations": "This tool is limited to textual comment analysis and cannot process multimedia or determine comment context beyond the text itself. Accuracy depends on input text quality and may vary with non-standard language or mixed languages.", + "examples": [ + "Analyze this user comment for sentiment and toxicity: 'I really dislike how this product works, very frustrating!'", + "Extract keywords and detect language from a comment scraped from a blog post's HTML.", + "Identify if a website comment is toxic or abusive before displaying it on a platform." + ] + }, + "tags": [ + "web-scraping", + "comment-analysis", + "sentiment-analysis", + "toxicity-detection", + "keyword-extraction", + "content-moderation", + "language-detection" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I love this new update! It really improved performance.\",\"includeToxicityAnalysis\":true,\"includeKeywordExtraction\":true}", + "description": "Analyze a positive comment's sentiment and toxicity, also extract keywords." + }, + { + "inputJson": "{\"htmlContent\":\"
Esto es realmente una mala experiencia con el servicio.
\",\"languageHint\":\"es\"}", + "description": "Analyze a Spanish comment extracted as HTML with language hint for better accuracy." + }, + { + "inputJson": "{\"commentText\":\"You are an idiot! This is the worst site ever.\",\"includeToxicityAnalysis\":true,\"includeKeywordExtraction\":false}", + "description": "Detect toxicity in a strongly negative and abusive comment without extracting keywords." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "web-scraping.analyzeLink", + "description": "This tool accepts a URL as input and performs an analysis of the web page content. It extracts metadata, counts elements such as images, links, and scripts, analyzes page load time and SEO-related attributes, and returns a structured summary containing these details. Useful for assessing web page quality and structure.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the web page to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to extract meta tags like title, description, and keywords.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeSEO", + "type": "boolean", + "description": "Whether to analyze SEO-related attributes like heading tags and alt attributes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the page to load before timing out.", + "required": false, + "defaultValue": "10" + }, + { + "name": "userAgent", + "type": "string", + "description": "Optional user agent string to use when fetching the page.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing metadata, counts of page elements, SEO analysis results, and load time in milliseconds." + }, + "aiAgent": { + "useCase": "Use this tool when you need to gather structured information from a web page by URL. It helps in evaluating page content, SEO factors, and general structure without manually browsing. Ideal for automated content assessment, quality checks, or data collection workflows.", + "limitations": "Cannot interact with dynamic content behind authentication or complex JavaScript frameworks that require a browser environment. Analysis relies on static page content accessible via HTTP GET requests.", + "examples": [ + "Analyze the SEO and content structure of https://example.com", + "Get metadata and counts of links and images from a given webpage", + "Check page load time and SEO tags for a marketing landing page" + ] + }, + "tags": [ + "web scraping", + "link analysis", + "SEO", + "web page metadata", + "page statistics", + "content extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://www.example.com\",\"includeMetadata\":true,\"analyzeSEO\":true,\"timeoutSeconds\":10}", + "description": "Analyze metadata, SEO features, and page elements on https://www.example.com." + }, + { + "inputJson": "{\"url\":\"https://news.example.org/article1\",\"includeMetadata\":false,\"analyzeSEO\":true}", + "description": "Analyze SEO-related attributes and counts on the news article page without extracting metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "web-scraping.analyzeDashboard", + "description": "This tool accepts a URL of a web-based analytics dashboard and optional user credentials to access it if required. It programmatically scrapes key visual and data elements such as charts, tables, and metrics. Then it processes and summarizes these elements into a structured JSON report highlighting performance indicators, trends, and anomalies detected within the scraped data.", + "category": "web-scraping", + "parameters": [ + { + "name": "dashboardUrl", + "type": "string", + "description": "The URL of the web analytics dashboard to scrape and analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "accessCredentials", + "type": "object", + "description": "Optional credentials (e.g., username and password) needed to authenticate to the dashboard", + "required": false, + "defaultValue": "" + }, + { + "name": "elementsToAnalyze", + "type": "array", + "description": "Optional list of element types to analyze, e.g., ['charts', 'tables', 'metrics']. Defaults to all detected elements.", + "required": false, + "defaultValue": "[\"charts\",\"tables\",\"metrics\"]" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum DOM depth to traverse when scraping to limit processing", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeRawData", + "type": "boolean", + "description": "Whether to include raw scraped data in the output report for detailed inspection", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing summaries of dashboard elements such as charts, key metrics, tables, observed trends, and detected anomalies. It includes optional raw data if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and interpret the key data insights from a live web analytics dashboard which is not exposed via an API. It helps automate the retrieval of performance metrics and trends for monitoring or integration into other systems.", + "limitations": "Cannot interact with dashboards that use heavy client-side encryption or anti-scraping measures. May not fully interpret highly complex visualizations or charts rendered as pure images without underlying data access. Requires proper access credentials if dashboard is behind authentication.", + "examples": [ + "Extract key performance metrics from a sales dashboard at 'https://example.com/sales/dashboard'", + "Analyze trends and anomalies from a marketing analytics dashboard given login credentials", + "Retrieve summarized data from financial metrics tables on a password-protected dashboard" + ] + }, + "tags": [ + "web-scraping", + "analytics", + "dashboard", + "data-extraction", + "performance-monitoring" + ], + "examples": [ + { + "inputJson": "{\"dashboardUrl\":\"https://example.com/dashboard/sales\"}", + "description": "Scrape and analyze the sales dashboard publicly accessible at the given URL." + }, + { + "inputJson": "{\"dashboardUrl\":\"https://secure.example.com/analytics\",\"accessCredentials\":{\"username\":\"user1\",\"password\":\"pass123\"},\"elementsToAnalyze\":[\"charts\",\"metrics\"],\"includeRawData\":true}", + "description": "Access a secure analytics dashboard with credentials, analyze only charts and metrics, and include raw data in the report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "web-scraping.analyzeRisk", + "description": "This tool accepts a URL or raw HTML content from a website and analyzes the page for security risks related to web scraping, such as detection of anti-scraping measures, exposure of sensitive data, insecure scripts, or known vulnerabilities. It outputs a structured risk report highlighting identified issues with severity levels and recommendations.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to analyze for scraping-related security risks. Required if htmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content of a webpage to analyze directly. Required if url is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "checkAntiScraping", + "type": "boolean", + "description": "Whether to detect anti-scraping techniques like CAPTCHAs, bot traps, or IP blocking.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkSensitiveDataExposure", + "type": "boolean", + "description": "Whether to scan for possible exposure of sensitive or private data on the page.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkInsecureScripts", + "type": "boolean", + "description": "Enable scan for insecure or suspicious third-party scripts embedded in the page.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxAnalysisDepth", + "type": "number", + "description": "Number of linked pages to analyze recursively for broader risk detection. 0 means only the main page.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing a detailed risk report with categorized findings including type of risk, severity (low, medium, high), description, and remediation advice." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the security risks inherent in web scraping a given webpage or site, identifying anti-scraping defenses and security weaknesses that could impact scraping reliability or legality. Useful for planning scraping strategies or assessing potential security liabilities.", + "limitations": "This tool cannot bypass anti-scraping defenses or interact with dynamic web page behavior requiring JavaScript execution. It does not guarantee detection of all vulnerabilities or legal risks and does not perform real-time monitoring.", + "examples": [ + "Analyze the security risks of scraping https://example.com/data", + "Check if the HTML content I provide includes any scraping blocking mechanisms or sensitive data exposure", + "Evaluate potential security issues for scraping the main page and two linked pages of https://site.org" + ] + }, + "tags": [ + "web scraping", + "security analysis", + "risk assessment", + "anti-scraping", + "data exposure" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\"}", + "description": "Analyze risks on the homepage of example.com" + }, + { + "inputJson": "{\"htmlContent\":\"\",\"checkInsecureScripts\":true}", + "description": "Analyze raw HTML content containing a potentially insecure script" + }, + { + "inputJson": "{\"url\":\"https://securedsite.com\",\"checkAntiScraping\":true,\"maxAnalysisDepth\":1}", + "description": "Analyze securedsite.com homepage and one linked page for anti-scraping measures" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "web-scraping.analyzePayment", + "description": "This tool accepts a URL or raw HTML content of a webpage containing payment details such as invoices, receipts, or transaction summaries. It performs web scraping to extract key payment information including payer, payee, amount, currency, date, and payment method. The output is a structured JSON object summarizing extracted payment fields for downstream processing or record keeping.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web page URL to scrape payment data from. Provide either this or rawHtml.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawHtml", + "type": "string", + "description": "Raw HTML content of a web page containing payment information. Provide either this or url.", + "required": false, + "defaultValue": "" + }, + { + "name": "currencyFilter", + "type": "string", + "description": "If specified, only payments in this currency code (e.g., USD, EUR) will be extracted.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of payment entries to extract from the page. Use 0 for no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeRawData", + "type": "boolean", + "description": "If true, includes raw extracted payment data alongside parsed fields.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing an array 'payments' of extracted payment records, each with fields like payer, payee, amount, currency, date, and paymentMethod. Optionally includes rawData if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically extract and analyze payment-related information from web pages such as online invoices, payment confirmation pages, or transaction summaries. It is useful for automating bookkeeping, auditing, or data aggregation from online payment portals.", + "limitations": "The tool cannot access pages behind complex authentication barriers or capture dynamically rendered payment data loaded through JavaScript if raw HTML or direct URL scraping is insufficient. It is limited to extracting structured payment data visible in the provided HTML content.", + "examples": [ + "Extract payment details from a public invoice page URL.", + "Analyze payment information embedded in provided raw HTML content of an online receipt.", + "Filter extracted payments to only USD currency and limit results to 5 entries." + ] + }, + "tags": [ + "web scraping", + "payment analysis", + "financial data extraction", + "invoice parsing", + "transaction data" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/invoice/12345\",\"currencyFilter\":\"USD\",\"maxResults\":5,\"includeRawData\":true}", + "description": "Extract up to 5 payment entries in USD currency from a public invoice webpage, including raw data." + }, + { + "inputJson": "{\"rawHtml\":\"...payment receipt content...\",\"currencyFilter\":\"EUR\",\"maxResults\":0}", + "description": "Analyze payment information from raw HTML content of a receipt page, filtering for EUR currency with no limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "web-scraping.downloadImage", + "description": "Downloads an image from a specified URL. Accepts the image URL and optional parameters such as output filename and timeout settings. Fetches the image data over HTTP(S) and saves it to a local file path or returns the image in binary form. Supports common image formats like JPEG, PNG, and GIF.", + "category": "web-scraping", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The full URL of the image to download (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "Local file path where the image will be saved. If empty, returns image data as base64 string instead of saving to disk.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the image download before aborting.", + "required": false, + "defaultValue": "30" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the download request (e.g., User-Agent, Authorization).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object indicating success status, local file path if saved, and the base64 encoded image data if not saved to file. Includes error message if download failed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically download images from web URLs for analysis, archiving, or further processing. It is ideal in web scraping workflows that require image asset retrieval. The agent should handle scenarios where images need to be saved locally or processed in-memory.", + "limitations": "This tool cannot download images behind authentication without correctly configured headers or cookies. It does not parse or crawl web pages to find images; it requires direct image URLs. It cannot handle JavaScript-rendered images or protected content.", + "examples": [ + "Download a JPEG product image from an e-commerce site and save it locally.", + "Retrieve a PNG image and process it in memory without saving to disk using base64 output.", + "Download an image with a custom User-Agent header to avoid blocked requests." + ] + }, + "tags": [ + "web-scraping", + "image-download", + "http", + "media", + "automation" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/images/photo.jpg\",\"outputFilePath\":\"/tmp/photo.jpg\"}", + "description": "Download an image from the URL and save it to a specified file path." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/logo.png\",\"outputFilePath\":\"\"}", + "description": "Download an image but return the data as a base64 string without saving to disk." + }, + { + "inputJson": "{\"imageUrl\":\"https://secure-site.com/secret-image.gif\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"outputFilePath\":\"/tmp/secret.gif\"}", + "description": "Download an image requiring authorization using a custom header, saving locally." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "web-scraping.analyzeTable", + "description": "Extracts and analyzes data tables from a given webpage URL or raw HTML string. It identifies table structures, headers, and rows, then computes summary statistics like row count, column count, missing values, and basic data typing for columns. Returns detailed structured data and analytics for use in automation or data extraction workflows.", + "category": "web-scraping", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "URL of the webpage containing the table to analyze. Either sourceUrl or htmlContent is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to parse and analyze for tables. At least one of htmlContent or sourceUrl must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "tableIndex", + "type": "number", + "description": "Index of the table on the page to analyze (0-based). Defaults to the first table if not specified.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeSummaryStatistics", + "type": "boolean", + "description": "Whether to include summary statistics (like missing values, basic numeric stats) in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to process from the table for performance control, -1 means all rows.", + "required": false, + "defaultValue": "-1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted table data as a nested array, detected headers, and summary analytics including row/column count, missing data counts per column, and inferred data types." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically extract and analyze tabular data from webpages or HTML snippets to automate data gathering, insight extraction, or validation tasks. Particularly valuable when the table structure is variable or unknown in advance and you want to infer data types and completeness.", + "limitations": "Cannot scrape tables rendered entirely by client-side scripts unless HTML content includes the rendered markup. Limited by page accessibility and table complexity (nested tables, merged cells may be partially analyzed).", + "examples": [ + "Extract and analyze the main table from 'https://example.com/data-report'.", + "Analyze the HTML of a local snippet containing multiple tables, targeting the second table.", + "Get summary stats of a table in a page limited to first 100 rows for performance." + ] + }, + "tags": [ + "web-scraping", + "table-analysis", + "data-extraction", + "html-parsing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/financials\",\"tableIndex\":0,\"includeSummaryStatistics\":true}", + "description": "Analyze the first table on a financial report webpage, including summary statistics." + }, + { + "inputJson": "{\"htmlContent\":\"
NameAge
Alice30
\",\"tableIndex\":0}", + "description": "Analyze a simple HTML snippet containing a single table with two columns." + }, + { + "inputJson": "{\"sourceUrl\":\"https://example.com/report\",\"tableIndex\":2,\"maxRows\":50}", + "description": "Analyze the third table on the report page, limiting processing to first 50 rows for efficiency." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "web-scraping.uploadImage", + "description": "Uploads an image file to a specified web endpoint as part of a web scraping workflow. Accepts image data in base64 or as a URL, sends it using HTTP POST or PUT to the target URL, and returns the response status and any returned data. Supports headers and authentication tokens for flexible integration.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the web endpoint to upload the image to.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageDataBase64", + "type": "string", + "description": "Base64 encoded string of the image file to upload. Required if imageUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageUrl", + "type": "string", + "description": "Direct URL of the image to upload instead of base64 data. Required if imageDataBase64 is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to use for uploading, typically POST or PUT.", + "required": false, + "defaultValue": "POST" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the upload request, such as authentication tokens or content type.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "fieldName", + "type": "string", + "description": "Form field name for the image data if using multipart/form-data upload.", + "required": false, + "defaultValue": "file" + } + ], + "returns": { + "type": "object", + "description": "An object containing the response status code, response headers, and any parsed response body from the upload endpoint." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload images collected or processed during a web scraping session to a web service or API endpoint, for example to save images to a remote server or cloud storage. It helps automate workflows where scraped image data must be sent elsewhere for storage, analysis, or processing.", + "limitations": "This tool does not scrape or download images by itself; it only uploads images provided as input. It requires the target URL to accept image uploads and does not handle authentication beyond custom headers. It cannot transform image content beyond what is provided in base64 or URL form.", + "examples": [ + "Upload a base64-encoded image to a cloud storage API at a specified URL.", + "Send an image located at a public URL to a moderation service via HTTP PUT method.", + "Include authentication headers and form field customization to upload images to an authenticated endpoint." + ] + }, + "tags": [ + "upload", + "image", + "web scraping", + "http", + "api", + "media" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://api.example.com/upload\",\"imageDataBase64\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"httpMethod\":\"POST\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"fieldName\":\"image\"}", + "description": "Upload a base64 encoded PNG image to an authenticated API endpoint using POST." + }, + { + "inputJson": "{\"targetUrl\":\"https://uploads.example.com/images\",\"imageUrl\":\"https://example.com/image.jpg\",\"httpMethod\":\"PUT\",\"headers\":{},\"fieldName\":\"file\"}", + "description": "Upload an image from a public URL to another server using HTTP PUT without additional headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "web-scraping.analyzeOpportunity", + "description": "Analyzes business opportunities by scraping specified web pages for relevant market data, competitor information, and trend indicators. Accepts target URLs and keywords, processes content using NLP techniques to extract and summarize opportunity-related insights, and outputs structured analysis highlighting potential business advantages and risks.", + "category": "web-scraping", + "parameters": [ + { + "name": "urls", + "type": "array", + "description": "List of web page URLs to scrape and analyze for opportunity data.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "Keywords or phrases to focus the content analysis on relevant business opportunities.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum link depth to traverse from each URL for extended data collection.", + "required": false, + "defaultValue": "1" + }, + { + "name": "includeCompetitorAnalysis", + "type": "boolean", + "description": "Whether to include scraping and analysis of competitor-related information on the pages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language to use for content parsing and NLP processing, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Structured report including summary of market trends, competitor insights, keyword relevance scores, and risk assessments related to the business opportunity" + }, + "aiAgent": { + "useCase": "Use this tool when evaluating new business domains, product launches, or market expansions by extracting real-time data from target websites. It helps identify promising opportunities and potential risks through automated content and competitor analysis.", + "limitations": "Cannot access content behind strong paywalls or login-required sites. Analysis quality depends on the richness and relevance of source websites. Not designed for real-time continuous monitoring.", + "examples": [ + "Find emerging business opportunities in e-commerce by analyzing a list of industry news sites.", + "Analyze competitor offerings and trends for a new SaaS product in the financial tech space.", + "Assess potential market demand and risks by scraping startup directories and tech blogs related to renewable energy." + ] + }, + "tags": [ + "web scraping", + "business analysis", + "market research", + "competitor analysis", + "NLP", + "opportunity identification" + ], + "examples": [ + { + "inputJson": "{\"urls\":[\"https://www.techcrunch.com\",\"https://www.forbes.com/innovation\"],\"keywords\":[\"AI\",\"startup\",\"funding\"],\"maxDepth\":1,\"includeCompetitorAnalysis\":true,\"language\":\"en\"}", + "description": "Analyze tech news websites for AI startup funding opportunities with competitor information." + }, + { + "inputJson": "{\"urls\":[\"https://www.cleanenergynews.com\"],\"keywords\":[\"renewable\",\"solar\",\"investment\"],\"maxDepth\":2,\"includeCompetitorAnalysis\":false,\"language\":\"en\"}", + "description": "Analyze clean energy news site for renewable solar investment opportunities without competitor info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "web-scraping.downloadJSON", + "description": "Downloads JSON data from a specified URL by performing an HTTP GET request. Accepts a target URL, optional HTTP headers, and a timeout. Returns the parsed JSON object retrieved from the web resource or an error message if retrieval or parsing fails.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL from which to download the JSON data. Must return valid JSON content.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the request as key-value pairs (e.g., authentication tokens).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeout", + "type": "number", + "description": "Maximum time in milliseconds to wait for the response before aborting the request.", + "required": false, + "defaultValue": "5000" + }, + { + "name": "allowRedirects", + "type": "boolean", + "description": "Whether to follow HTTP redirects if the server responds with a redirect status.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing either the parsed JSON data in a 'data' field or an 'error' field with failure details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to retrieve and parse JSON data directly from a web endpoint, such as public APIs, web services, or JSON files hosted online. It is useful for extracting structured data that is accessible via HTTP GET requests without requiring complex browser simulation. The headers parameter allows supplying authorization or other headers if needed.", + "limitations": "This tool only supports HTTP GET requests and expects the response content to be valid JSON. It cannot handle authentication flows requiring interaction beyond headers, nor can it parse JSON embedded inside HTML pages. It also cannot execute JavaScript to dynamically generate content.", + "examples": [ + "Download latest weather data JSON from a public API URL.", + "Fetch user profile JSON with an authentication token in headers.", + "Retrieve configuration JSON file from a known web location with a short timeout." + ] + }, + "tags": [ + "web scraping", + "json", + "http", + "download", + "api", + "data extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://api.example.com/data/latest\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"timeout\":3000}", + "description": "Download latest data JSON from a protected API using Bearer token and 3 seconds timeout." + }, + { + "inputJson": "{\"url\":\"https://example.com/config.json\"}", + "description": "Download a public config JSON from a known URL with default headers and timeout." + }, + { + "inputJson": "{\"url\":\"https://api.weather.com/v3/wx/forecast/daily/5day?json=true\",\"allowRedirects\":false}", + "description": "Download weather forecast JSON disabling redirects to prevent redirection to mobile site." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "web-scraping.downloadDataset", + "description": "This tool downloads structured datasets by scraping publicly accessible web pages. It accepts a target URL and optional selectors or extraction rules to identify tabular or list data. It processes the page content, extracts specified dataset elements, and returns the data in JSON or CSV format, enabling automated data collection from websites.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the web page to scrape for the dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSelector", + "type": "string", + "description": "CSS selector or XPath query to locate the table or list containing the dataset on the page.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired output data format, e.g., 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers when extracting tabular data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "paginationSelector", + "type": "string", + "description": "Optional CSS selector or XPath to identify 'next page' controls for paginated datasets.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxPages", + "type": "number", + "description": "Maximum number of pages to scrape if pagination is used. Use 0 for no limit.", + "required": false, + "defaultValue": "1" + }, + { + "name": "delayBetweenRequests", + "type": "number", + "description": "Delay in milliseconds between requests when scraping multiple pages, to reduce load on the server.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "userAgent", + "type": "string", + "description": "Optional user agent string to use when making HTTP requests for scraping.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted dataset in the requested format along with metadata such as source URL and number of records." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically extract structured datasets from web pages that present data in tables or lists, especially when no API is provided. It is useful for gathering public data for analytics, market research, or monitoring changes over time.", + "limitations": "Cannot scrape data behind logins, CAPTCHAs, or heavy JavaScript rendering without additional browser automation; accuracy depends on correct selector specifications; may be blocked by anti-scraping measures.", + "examples": [ + "Download JSON dataset of all current listings from a public real estate page by specifying the table's CSS selector.", + "Scrape multiple pages of product data by providing pagination controls and limiting to 5 pages.", + "Extract a CSV dataset of government statistics from a publicly available report page using XPath selectors." + ] + }, + "tags": [ + "web", + "scraping", + "dataset", + "data extraction", + "automation", + "pagination", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/products\",\"dataSelector\":\"table.product-list\",\"format\":\"json\",\"includeHeaders\":true}", + "description": "Download JSON dataset from the product list table on the example.com products page." + }, + { + "inputJson": "{\"url\":\"https://example.com/events\",\"dataSelector\":\"div.events-list ul\",\"format\":\"csv\",\"paginationSelector\":\"a.next-page\",\"maxPages\":3,\"delayBetweenRequests\":2000}", + "description": "Extract a CSV dataset of events from a paginated events list, scraping up to 3 pages with delays." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "web-scraping.sendNotification", + "description": "This tool accepts input details about a web scraping task completion or status event and sends a notification to a specified user or communication channel. It processes the input parameters to format and dispatch a notification message via email, SMS, or webhook, and returns a success status with message details.", + "category": "web-scraping", + "parameters": [ + { + "name": "recipientType", + "type": "string", + "description": "Type of recipient to notify, e.g., 'email', 'sms', or 'webhook'", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientAddress", + "type": "string", + "description": "The address or identifier of the notification recipient, e.g., an email address, phone number, or webhook URL", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the notification message (used for email or similar)", + "required": false, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "The main content or message of the notification", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the message content, e.g., 'plain', 'html', or 'json'", + "required": false, + "defaultValue": "plain" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification: 'normal', 'high', or 'low'", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "Result object indicating success or failure of sending notification, including a message and optional error details" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to alert a user or system about the outcome or status of a web scraping job. This can include sending success confirmation, error notifications, or status updates through various communication channels such as email, SMS, or webhooks.", + "limitations": "This tool cannot perform web scraping itself or handle message queuing; it only sends notifications based on provided inputs and requires valid recipient contact info.", + "examples": [ + "Notify user via email that scraping completed successfully with a summary.", + "Send SMS alert if scraper encounters an error during execution.", + "Post JSON-formatted status update to a webhook after scraping job finishes." + ] + }, + "tags": [ + "notification", + "web scraping", + "communication", + "alert", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"recipientType\":\"email\",\"recipientAddress\":\"user@example.com\",\"subject\":\"Scraping Job Complete\",\"messageBody\":\"The data extraction completed successfully with 1500 records.\",\"format\":\"plain\",\"priority\":\"normal\"}", + "description": "Send a basic email notification informing a user that the scraping job completed successfully." + }, + { + "inputJson": "{\"recipientType\":\"sms\",\"recipientAddress\":\"+12345556789\",\"messageBody\":\"Alert: Scraping failed due to timeout error.\",\"priority\":\"high\"}", + "description": "Send a high-priority SMS alert about a scraping failure." + }, + { + "inputJson": "{\"recipientType\":\"webhook\",\"recipientAddress\":\"https://example.com/webhook\",\"messageBody\":\"{\\\"status\\\":\\\"success\\\",\\\"records\\\":1500}\",\"format\":\"json\"}", + "description": "Post a JSON-formatted status update to a webhook URL after job completion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "web-scraping.uploadDataset", + "description": "Uploads a dataset obtained from web scraping to a specified cloud storage or database service. Accepts raw scraped data in JSON, CSV, or other structured formats. Processes data to validate and transform if necessary, then securely uploads it to the target location. Returns status and metadata about the upload operation.", + "category": "web-scraping", + "parameters": [ + { + "name": "dataset", + "type": "object", + "description": "The scraped dataset as a JSON object or array representing structured data to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the dataset to upload, e.g., 'json', 'csv'. Determines serialization method.", + "required": true, + "defaultValue": "json" + }, + { + "name": "destinationType", + "type": "string", + "description": "Type of storage destination such as 'cloud' or 'database'.", + "required": true, + "defaultValue": "cloud" + }, + { + "name": "destinationConfig", + "type": "object", + "description": "Configuration details for the destination. For cloud, includes bucket and credentials; for database, connection strings and table info.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateBeforeUpload", + "type": "boolean", + "description": "Whether to validate and sanitize the dataset before uploading to ensure integrity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, overwrite existing dataset at destination if it exists, else fail.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status (success or failure), number of records uploaded, and any error messages encountered." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent has collected raw data from web scraping tasks and needs to reliably store that data for further processing or analysis. It supports uploading in various formats to different storage backends, allowing seamless integration into data pipelines.", + "limitations": "The tool does not perform scraping itself, only uploads prepared datasets. It cannot convert raw HTML to structured data. It requires correct destination configurations and valid data formats to function.", + "examples": [ + "Upload scraped e-commerce product data in JSON to an AWS S3 bucket.", + "Store scraped financial tables in CSV format into a cloud database for analytics.", + "Overwrite previously uploaded scraped datasets in a cloud storage with updated records." + ] + }, + "tags": [ + "web-scraping", + "uploading", + "dataset", + "data-storage", + "cloud", + "database", + "automation" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"name\":\"Widget\",\"price\":9.99},{\"name\":\"Gadget\",\"price\":14.99}],\"format\":\"json\",\"destinationType\":\"cloud\",\"destinationConfig\":{\"provider\":\"aws\",\"bucketName\":\"scraped-data\",\"region\":\"us-east-1\",\"accessKeyId\":\"AKIA...\",\"secretAccessKey\":\"...\"},\"validateBeforeUpload\":true,\"overwriteExisting\":false}", + "description": "Upload a JSON dataset of scraped product info to an AWS S3 bucket with validation, without overwriting existing files." + }, + { + "inputJson": "{\"dataset\":\"name,price\\nWidget,9.99\\nGadget,14.99\",\"format\":\"csv\",\"destinationType\":\"database\",\"destinationConfig\":{\"type\":\"postgres\",\"host\":\"db.example.com\",\"port\":5432,\"database\":\"scraped\",\"user\":\"admin\",\"password\":\"password\",\"table\":\"products\"},\"validateBeforeUpload\":true,\"overwriteExisting\":true}", + "description": "Upload scraped CSV data of products into a PostgreSQL database table, overwriting existing data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "web-scraping.uploadJSON", + "description": "Uploads a JSON data payload to a specified web endpoint, typically used in web scraping workflows to send extracted JSON data for storage or processing. Accepts JSON content as a string or object, endpoint URL, HTTP method, and optional headers. Returns the response status and body from the server.", + "category": "web-scraping", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The JSON string or object to upload as the request payload.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointUrl", + "type": "string", + "description": "The full URL of the web endpoint where the JSON data will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method to use for uploading, e.g., POST or PUT.", + "required": false, + "defaultValue": "POST" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the upload request.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Optional timeout in seconds for the upload request before it fails.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the HTTP response status code and response body returned by the server after uploading the JSON data." + }, + "aiAgent": { + "useCase": "Use this tool when an agent has scraped or generated JSON data from websites and needs to upload it to a backend server, API, or cloud endpoint to store or process the data further. It helps automate data pipelines where extracted JSON data must be transmitted to a target system.", + "limitations": "This tool cannot perform data validation of the JSON content beyond string acceptance, nor does it handle authentication beyond static headers. It also does not perform retries or large file uploads beyond standard HTTP capabilities.", + "examples": [ + "Upload extracted JSON data to an analytics API endpoint.", + "Send scraped product data in JSON to a remote database REST API.", + "Post harvested JSON-formatted logs to a centralized logging service." + ] + }, + "tags": [ + "web scraping", + "upload", + "json", + "http", + "api", + "data transmission" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"{\\\"name\\\":\\\"Widget\\\",\\\"price\\\":19.99}\",\"endpointUrl\":\"https://api.example.com/products\",\"httpMethod\":\"POST\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"timeoutSeconds\":15}", + "description": "Upload a JSON product object to the products API with authorization header and 15-second timeout." + }, + { + "inputJson": "{\"jsonData\":\"{\\\"logs\\\":[{\\\"event\\\":\\\"click\\\",\\\"timestamp\\\":1633024800}]}\" ,\"endpointUrl\":\"https://logs.example.com/api/upload\",\"httpMethod\":\"PUT\",\"headers\":{},\"timeoutSeconds\":10}", + "description": "Upload JSON-formatted logs to a logging service using PUT method with default headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "web-scraping.sendAlert", + "description": "This tool accepts details of a suspicious web content or security issue found during web scraping activities, processes the input by formatting and validating the alert information, and then sends a standardized security alert notification to specified recipients or logging systems. It outputs a confirmation including alert ID and status.", + "category": "web-scraping", + "parameters": [ + { + "name": "alertTitle", + "type": "string", + "description": "Title summarizing the security alert detected during web scraping.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertDescription", + "type": "string", + "description": "Detailed description of the suspicious activity or vulnerability found.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "URL of the web page or resource where the suspicious content was detected.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity classification of the alert (e.g., Low, Medium, High, Critical).", + "required": false, + "defaultValue": "Medium" + }, + { + "name": "alertTags", + "type": "array", + "description": "List of tags or keywords categorizing the alert (e.g., phishing, malware, data leak).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notifyEmails", + "type": "array", + "description": "List of email addresses to receive the alert notification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sendToLoggingService", + "type": "boolean", + "description": "Whether to send the alert details to an integrated logging or SIEM system.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing alertId, status (e.g., sent, failed), timestamp, and optional error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when web scraping operations detect suspicious or potentially malicious content indicating security threats. It is useful for automating alert notifications to security teams or logging systems to enable timely investigation and response.", + "limitations": "This tool does not itself analyze web content deeply; it requires the alert information to be pre-identified and verified. It cannot remediate or block threats, only send notifications.", + "examples": [ + "Send a high-severity alert about phishing detected on a scraped page URL with notification to the security team email.", + "Log an alert about a suspected data leak pattern found during scraping to the SIEM service without email notifications.", + "Notify multiple recipients of a medium severity web scraping alert with descriptive tags for classification." + ] + }, + "tags": [ + "web scraping", + "security", + "alerting", + "notification", + "automation", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"alertTitle\":\"Suspicious Script Injection\",\"alertDescription\":\"Detected potential XSS script on the login page.\",\"sourceUrl\":\"https://example.com/login\",\"severityLevel\":\"High\",\"alertTags\":[\"XSS\",\"injection\"],\"notifyEmails\":[\"security-team@example.com\"],\"sendToLoggingService\":true}", + "description": "Send a high severity alert about cross-site scripting detected on a page, notify security team and log it." + }, + { + "inputJson": "{\"alertTitle\":\"Phishing Link Found\",\"alertDescription\":\"Page contains links to a known phishing domain.\",\"sourceUrl\":\"http://malicious-site.test\",\"severityLevel\":\"Critical\",\"alertTags\":[\"phishing\"],\"notifyEmails\":[\"phish-alerts@example.com\",\"admin@example.com\"],\"sendToLoggingService\":false}", + "description": "Notify multiple recipients of a critical phishing alert found during scraping, without logging." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "web-scraping.renderReport", + "description": "This tool accepts a URL or raw HTML content and renders a detailed report of the webpage's structure, extracted data elements, and metadata. It loads the page using a headless browser, executes scripts if needed, and compiles a structured JSON report summarizing the page content, links, and resource usage.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to render and analyze. Required if htmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content of the webpage to render and analyze. Used if URL is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "waitForSelector", + "type": "string", + "description": "CSS selector to wait for before starting the report generation to ensure dynamic content is loaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeout", + "type": "number", + "description": "Maximum time in milliseconds to wait for page load and rendering. Defaults to 30000 ms.", + "required": false, + "defaultValue": "30000" + }, + { + "name": "includeResources", + "type": "boolean", + "description": "Whether to include information about loaded resources like images, scripts, and stylesheets in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "executeScripts", + "type": "boolean", + "description": "Indicates if page scripts should be executed during rendering to capture dynamic content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "browserViewport", + "type": "object", + "description": "Viewport settings (e.g., width and height) for the headless browser rendering the page.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the rendered report, including DOM structure summary, extracted data fields, metadata like title and description, links found, and optionally resource usage statistics." + }, + "aiAgent": { + "useCase": "Use this tool when detailed analysis and structured extraction from a live or static webpage are required. It is ideal for generating automated reports summarizing page content, structure, and resources, especially for dynamic sites requiring JavaScript execution.", + "limitations": "Cannot interact with pages requiring complex authentication or user interaction beyond waiting for selectors. Extremely heavy pages or those with infinite scrolling may not render fully within timeout limits.", + "examples": [ + "Render a report for a public news article page to extract headlines and metadata.", + "Generate a structure report of a product page given raw HTML content.", + "Analyze a webpage after JavaScript execution to capture dynamic content for auditing." + ] + }, + "tags": [ + "web-scraping", + "rendering", + "reporting", + "headless-browser", + "dynamic-content", + "metadata-extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/article\", \"waitForSelector\":\".article-content\", \"timeout\":20000, \"includeResources\":true}", + "description": "Generate a report for an article page, waiting for the main content selector to ensure dynamic content is loaded." + }, + { + "inputJson": "{\"htmlContent\":\"Sample

Hello World

\", \"executeScripts\":false}", + "description": "Render a report from raw static HTML content without executing scripts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "web-scraping.formatText", + "description": "Formats raw text extracted from websites by normalizing whitespace, removing unwanted characters, truncating length, and applying case transformations to produce cleaner, consistent output for further processing or display.", + "category": "web-scraping", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The raw text content extracted from a webpage that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "collapseWhitespace", + "type": "boolean", + "description": "Whether to replace multiple consecutive whitespace characters with a single space.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeLineBreaks", + "type": "boolean", + "description": "If true, removes all line breaks and merges the text into a single line.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the formatted text. Text longer than this will be truncated.", + "required": false, + "defaultValue": "0" + }, + { + "name": "caseFormat", + "type": "string", + "description": "Case conversion to apply: options are 'none', 'lower', 'upper', or 'title'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "removeSpecialChars", + "type": "boolean", + "description": "If true, removes non-alphanumeric characters except basic punctuation and spaces.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted text string after applying requested transformations." + }, + "aiAgent": { + "useCase": "Use this tool to clean and standardize raw text data obtained from web scraping before further processing, analysis, or storage. It helps improve text quality by removing noise like extra whitespace, line breaks, or undesired characters, making the data easier to handle and more consistent.", + "limitations": "This tool does not perform language translation, semantic analysis, or advanced content extraction. It only modifies text formatting and does not correct spelling or grammatical errors.", + "examples": [ + "Format extracted product descriptions to remove line breaks and normalize spacing.", + "Truncate long article snippets to a maximum character length with consistent casing.", + "Clean user review texts by removing special characters and collapsing whitespace." + ] + }, + "tags": [ + "formatting", + "text-cleaning", + "web-scraping", + "data-preprocessing", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"\\n This is a sample\\ntext extracted from a web page.\\nIt includes irregular spacing. \",\"trimWhitespace\":true,\"collapseWhitespace\":true,\"removeLineBreaks\":true,\"maxLength\":0,\"caseFormat\":\"none\",\"removeSpecialChars\":false}", + "description": "Normalize whitespace and remove line breaks, keeping original case." + }, + { + "inputJson": "{\"rawText\":\"Product NAME: Deluxe Widget!!! Now only $19.99!!!\\nLimited offer.\",\"trimWhitespace\":true,\"collapseWhitespace\":true,\"removeLineBreaks\":false,\"maxLength\":50,\"caseFormat\":\"title\",\"removeSpecialChars\":true}", + "description": "Format product name by capitalizing words, removing special characters, truncating to 50 characters." + }, + { + "inputJson": "{\"rawText\":\"Customer review:\\nGreat product!!! Works as expected. \\nWill buy again.\",\"trimWhitespace\":true,\"collapseWhitespace\":true,\"removeLineBreaks\":true,\"maxLength\":100,\"caseFormat\":\"lower\",\"removeSpecialChars\":false}", + "description": "Normalize a customer review to lower case and single line text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "web-scraping.formatTest", + "description": "This tool accepts raw web scraping test scripts or code snippets as input and reformats them for improved readability and maintainability. It processes test scripts written in common JavaScript web scraping frameworks or plain code, applying consistent indentation, syntax highlighting-ready markup, and standardized code style settings. It outputs the reformatted test code as a string ready for integration or review.", + "category": "web-scraping", + "parameters": [ + { + "name": "testCode", + "type": "string", + "description": "The raw web scraping test code or script to be formatted. Required for processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language or test framework of the input code (e.g., 'javascript', 'typescript'). Helps parse and format correctly.", + "required": false, + "defaultValue": "javascript" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length after which the formatter will attempt to break lines for readability.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "FormattedTestResult containing the reformatted test code string." + }, + "aiAgent": { + "useCase": "Use this tool when you have unformatted or inconsistently formatted web scraping test code and want it standardized for readability and maintainability. Particularly useful for preparing code for code reviews, sharing with teams, or integrating into larger test suites. It supports common languages and applies typical style conventions.", + "limitations": "This tool does not execute or validate test logic, only reformats code style. It assumes syntactically correct input and may not support all domain-specific languages or highly unusual syntax variants.", + "examples": [ + "Format a raw Puppeteer test script string to improve readability with 2-space indentation.", + "Standardize test code style for web scraping tests in JavaScript before committing to version control.", + "Adjust indentation style in a scraping test script from tabs to spaces and limit line length to 80 characters." + ] + }, + "tags": [ + "web-scraping", + "code-formatting", + "test", + "javascript", + "readability", + "automation" + ], + "examples": [ + { + "inputJson": "{\"testCode\":\"async function test(){const browser=await puppeteer.launch();const page=await browser.newPage();await page.goto('https://example.com');await browser.close();}\",\"language\":\"javascript\",\"indentSize\":2,\"useTabs\":false,\"maxLineLength\":80}", + "description": "Format a basic Puppeteer test function with 2 spaces indentation and max 80 char line length." + }, + { + "inputJson": "{\"testCode\":\"describe('scraping test',()=>{it('loads page',async()=>{await page.goto('http://test.com');});});\",\"language\":\"javascript\",\"indentSize\":4,\"useTabs\":true,\"maxLineLength\":100}", + "description": "Format a Jest test snippet using tabs for indentation and 4 tab width equivalent." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "web-scraping.formatDataset", + "description": "This tool accepts raw data extracted from websites as input in JSON or array formats. It processes the data by cleaning, normalizing, and structuring it into a consistent and standardized dataset format that facilitates further analysis or storage, and outputs the formatted dataset as JSON.", + "category": "web-scraping", + "parameters": [ + { + "name": "rawData", + "type": "array", + "description": "The raw dataset extracted from a website, typically an array of objects representing unstructured or semi-structured data. Expected to be required for formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "fieldsToNormalize", + "type": "array", + "description": "List of field names whose values should be normalized, e.g., lowercase or trimmed. Optional parameter to specify normalization targets.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "removeDuplicates", + "type": "boolean", + "description": "Flag indicating whether duplicate entries should be identified and removed from the dataset. Defaults to true to ensure data cleanliness.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Expected date format string (e.g., 'YYYY-MM-DD') to which date fields will be converted if present. Optional for consistent date formatting.", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "trimStrings", + "type": "boolean", + "description": "Whether to trim whitespace from string fields in the dataset. Improves cleanliness of textual data. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customFieldMappings", + "type": "object", + "description": "Optional mapping object to rename fields (keys are raw field names, values are desired standardized names). Useful for unifying schema.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A standardized, cleaned, and formatted dataset represented as an array of objects with consistent field names and normalized values, suitable for downstream processing or storage." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent has obtained raw or semi-structured data from web scraping tasks and needs to clean, normalize, and restructure it into a consistent dataset format for analysis, visualization, or database insertion. This is essential to handle inconsistencies and duplicates inherent in raw scraped data.", + "limitations": "This tool assumes input data is already extracted and focuses on formatting. It does not perform web scraping itself or advanced data inference beyond basic normalization and deduplication.", + "examples": [ + "Format a raw scraped dataset of product listings by normalizing titles and prices, removing duplicates, and standardizing date formats.", + "Clean and format user reviews scraped from various web pages to unify field names and trim textual content.", + "Prepare raw event data scraped from multiple sources by renaming fields and converting date strings to a consistent format." + ] + }, + "tags": [ + "web-scraping", + "data-cleaning", + "normalization", + "deduplication", + "dataset-formatting", + "data-preparation" + ], + "examples": [ + { + "inputJson": "{\"rawData\":[{\"title\":\" Product A \",\"price\":\"$10\",\"date\":\"01/02/2023\"},{\"title\":\"Product A\",\"price\":\"$10\",\"date\":\"01-02-2023\"},{\"title\":\"Product B\",\"price\":\"$20\",\"date\":\"2023-02-01\"}],\"fieldsToNormalize\":[\"title\"],\"removeDuplicates\":true,\"dateFormat\":\"YYYY-MM-DD\",\"trimStrings\":true,\"customFieldMappings\":{\"title\":\"productTitle\"}}", + "description": "Format a scraped product dataset by trimming title strings, removing duplicate entries, converting dates to YYYY-MM-DD, and renaming 'title' field to 'productTitle'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "web-scraping.formatWord", + "description": "Formats a single extracted word from web scraping according to specified casing and cleaning options. It accepts a raw word string from scraped content and processes it to produce a standardized output such as lowercase, uppercase, capitalized, or title case, optionally trimming whitespace or removing special characters.", + "category": "web-scraping", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The raw word string extracted from a web page to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The text casing style to apply: 'lowercase', 'uppercase', 'capitalize', or 'titleCase'.", + "required": true, + "defaultValue": "lowercase" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the word before formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeSpecialChars", + "type": "boolean", + "description": "Whether to remove non-alphanumeric characters from the word.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted word string under 'formattedWord'." + }, + "aiAgent": { + "useCase": "Use this tool when you have extracted raw single words from web scraping processes and need to standardize them for further processing or display. It is helpful when scraped text has inconsistent casing, extra whitespace, or unwanted special characters that need cleaning.", + "limitations": "This tool only formats individual words and does not handle multi-word sentences or context-aware text corrections.", + "examples": [ + "Format extracted product tags to lowercase without special characters.", + "Capitalize scraped category names with trimmed whitespace.", + "Convert scraped keywords to title case for display purposes." + ] + }, + "tags": [ + "web-scraping", + "formatting", + "text-cleaning", + "word-processing", + "data-normalization" + ], + "examples": [ + { + "inputJson": "{\"word\":\" Example-Word! \",\"formatStyle\":\"lowercase\",\"trimWhitespace\":true,\"removeSpecialChars\":true}", + "description": "Lowercase the word after trimming space and removing special characters." + }, + { + "inputJson": "{\"word\":\"hello\",\"formatStyle\":\"capitalize\",\"trimWhitespace\":false,\"removeSpecialChars\":false}", + "description": "Capitalize the word without trimming or removing characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "web-scraping.formatJSON", + "description": "This tool accepts raw scraped data in JSON string or object form, formats and normalizes it for consistency, applying options like indentation, key sorting, and whitespace trimming. It outputs a well-structured JSON string suitable for further processing or storage.", + "category": "web-scraping", + "parameters": [ + { + "name": "rawJSON", + "type": "string", + "description": "Raw JSON string or unformatted JSON data obtained from web scraping to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces for JSON indentation to format the output, enhancing readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort JSON object keys alphabetically before formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Remove leading/trailing whitespace in string values within the JSON data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Max depth to recursively format nested objects; deeper levels are left as is to prevent performance issues.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "string", + "description": "A formatted, valid JSON string with applied indentation, key sorting, and trimmed whitespace as specified." + }, + "aiAgent": { + "useCase": "Use this tool when raw JSON data extracted from websites is inconsistent or unformatted, and you need clean, uniformly structured JSON for downstream processing or storage. Ideal for preparing scraped JSON payloads for validation, comparison, or display.", + "limitations": "Cannot fix invalid JSON syntax errors; input must be valid JSON or convertible to JSON. Deeply nested or very large JSON objects may impact performance. Does not extract or scrape data directly, only formats given JSON.", + "examples": [ + "Format raw JSON string from web scrape with 4 space indent and no key sorting.", + "Format JSON data removing extra whitespaces in all string values.", + "Format and standardize JSON output with default settings for downstream processing." + ] + }, + "tags": [ + "web-scraping", + "json", + "formatting", + "data-cleaning", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"rawJSON\":\"{\\\"name\\\": \\\"Example\\\" , \\\"data\\\": {\\\"value\\\": \\\" 123 \\\"}}\",\"indentation\":4,\"sortKeys\":false,\"trimWhitespace\":true,\"maxDepth\":5,", + "description": "Format a scraped JSON string with 4 spaces indentation, no key sorting, trimming string whitespaces only up to 5 depth levels." + }, + { + "inputJson": "{\"rawJSON\":\"{\\\"b\\\":2,\\\"a\\\":1}\"}", + "description": "Default formatting of simple JSON string with alphabetical key sorting and 2 space indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "web-scraping.formatAPI", + "description": "This tool formats raw web scraping extraction rules or endpoint configurations into a standardized API specification format, such as OpenAPI or a custom structured JSON. It accepts input extraction parameters or snippets, processes them into a consistent API definition format, and outputs a structured API specification JSON for integration or documentation.", + "category": "web-scraping", + "parameters": [ + { + "name": "rawExtractionConfig", + "type": "string", + "description": "The raw extraction configuration or scraping instructions as a JSON or text string that needs to be formatted into an API specification.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired API specification format, e.g., 'OpenAPI', 'Swagger', or 'CustomJSON'.", + "required": true, + "defaultValue": "OpenAPI" + }, + { + "name": "apiVersion", + "type": "string", + "description": "The version of the API specification format to target, e.g., '3.0.0' for OpenAPI.", + "required": false, + "defaultValue": "3.0.0" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example requests and responses in the formatted API output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "endpointNamespace", + "type": "string", + "description": "Namespace or prefix to prepend to all endpoint paths in the output specification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the formatted API specification according to the selected format standard." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw scraping extraction rules or partial endpoint data and want to convert them into a standardized API specification to enable consistent integration, documentation, or further automation. It helps AI agents standardize and communicate web scraping configurations clearly as structured APIs.", + "limitations": "This tool does not perform actual scraping or data extraction; it only formats given instructions into API specs. It requires well-formed input configurations and cannot infer missing details or scrape content itself.", + "examples": [ + "Convert a raw JSON scraping extraction plan into an OpenAPI 3.0 specification with examples.", + "Format endpoint data into a custom JSON API spec without examples.", + "Apply a namespace prefix to all API routes when generating the specification." + ] + }, + "tags": [ + "web-scraping", + "api-formatting", + "openapi", + "swagger", + "data-integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"rawExtractionConfig\":\"{\\\"endpoints\\\":[{\\\"path\\\":\\\"/items\\\",\\\"method\\\":\\\"GET\\\",\\\"description\\\":\\\"Fetch list of items\\\"}]}','outputFormat':'OpenAPI','apiVersion':'3.0.0','includeExamples':true,'endpointNamespace':'/api/v1'", + "description": "Format raw endpoint JSON into an OpenAPI 3.0 spec with example requests and prepend '/api/v1' to all paths." + }, + { + "inputJson": "{\"rawExtractionConfig\":\"{\\\"resources\\\": [{\\\"url\\\": \\\"https://example.com/data\\\", \\\"fields\\\": [\\\"name\\\", \\\"price\\\"]}]}','outputFormat':'CustomJSON','includeExamples':false}", + "description": "Convert a scraping resource config into a custom JSON API format without examples." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "web-scraping.draftReport", + "description": "This tool accepts a target URL and a list of data extraction rules to scrape structured information from the specified website. It processes the HTML content based on CSS selectors or XPath expressions, extracts relevant data fields, and compiles a summarized report in JSON format containing the key scraped information along with metadata such as extraction time and summary statistics.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web page URL to scrape data from, must be a fully qualified HTTP or HTTPS address.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractionRules", + "type": "array", + "description": "An array of extraction rule objects each specifying field name and selector details used to locate and extract data from the webpage.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxItems", + "type": "number", + "description": "Maximum number of items to extract per rule to limit the report size; if zero or missing, extracts all available.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate and include a summary section in the report describing the extraction success and key data insights.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the webpage to load before aborting the scrape operation.", + "required": false, + "defaultValue": "15" + } + ], + "returns": { + "type": "object", + "description": "A structured report object containing a 'data' field with extracted data arrays per rule, a 'summary' field with extraction metadata, and a timestamp indicating when the report was generated." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to automatically gather structured information from an online source and generate a concise report for downstream analysis or automated decision-making. It's ideal for extracting consistent data patterns such as product listings, news articles, or directory contacts, particularly when a predefined extraction schema is available.", + "limitations": "This tool does not handle websites that require authentication, complex user interactions (e.g., login or clicking buttons), or those heavily reliant on dynamic JavaScript content that cannot be fully rendered. It also does not perform data cleaning or deep semantic understanding beyond pattern extraction.", + "examples": [ + "Extract the top 10 latest news headlines and URLs from a news homepage.", + "Gather product names, prices, and ratings from an e-commerce category page limited to 20 items.", + "Generate a summary report of staff names and emails from a company directory webpage." + ] + }, + "tags": [ + "web scraping", + "data extraction", + "report generation", + "HTML parsing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/products\",\"extractionRules\":[{\"fieldName\":\"productName\",\"selector\":\".product-title\"},{\"fieldName\":\"price\",\"selector\":\".price\"},{\"fieldName\":\"rating\",\"selector\":\".rating\"}],\"maxItems\":10,\"includeSummary\":true}", + "description": "Extract product information including name, price, and rating from the first 10 products on the page." + }, + { + "inputJson": "{\"url\":\"https://news.example.com\",\"extractionRules\":[{\"fieldName\":\"headline\",\"selector\":\"h2.headline > a\"},{\"fieldName\":\"link\",\"selector\":\"h2.headline > a@href\"}],\"maxItems\":5,\"includeSummary\":false}", + "description": "Fetch the top 5 news headlines and their links without a summary report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "web-scraping.buildService", + "description": "Builds a customizable web scraping service based on user-defined targets and extraction rules. Accepts target URLs, CSS selectors or XPath extraction patterns, scheduling options, and output formats. Sets up scraping endpoints or jobs that fetch data regularly or on demand, organizing extracted data into structured formats like JSON or CSV for downstream use.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrls", + "type": "array", + "description": "List of URLs to scrape data from, each URL should be valid and reachable.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "extractionRules", + "type": "array", + "description": "Array of objects defining how to extract data, each containing selector (CSS or XPath), attribute or text extraction, and a name for the extracted field.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "scheduleCron", + "type": "string", + "description": "Optional cron expression string to schedule recurring scraping jobs. If empty, scraping runs only once.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the scraped data output, options are 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "maxPages", + "type": "number", + "description": "Maximum number of pages to scrape per target URL, supports pagination if extraction rules include navigation.", + "required": false, + "defaultValue": "1" + }, + { + "name": "userAgent", + "type": "string", + "description": "Custom user-agent string to be used in HTTP requests for scraping, default is a common browser user agent.", + "required": false, + "defaultValue": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36" + }, + { + "name": "respectRobotsTxt", + "type": "boolean", + "description": "Whether the scraper respects robots.txt disallow rules. Disabling may increase scraping risk.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the configuration and status of the created web scraping service, including job ID, target URLs, extraction schema, schedule, and example snippet of output data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct a web scraping job or service programmatically to extract specific data regularly or once from various websites, with custom extraction rules and output formatting. Helps set up scalable, repeatable scraping infrastructure without manual coding.", + "limitations": "Cannot scrape sites that require complex interaction like logins or JavaScript rendering beyond basic requests. Not suitable for real-time streaming data extraction or avoiding advanced anti-bot protections.", + "examples": [ + "Create a scraping service to extract product names and prices from a list of e-commerce pages once.", + "Set up a daily scraping job to collect headlines and article links from news websites in JSON format.", + "Build a scraper service that extracts multiple fields from paginated event listings, saving results as CSV." + ] + }, + "tags": [ + "web scraping", + "service", + "automation", + "data extraction", + "scheduler", + "crawl" + ], + "examples": [ + { + "inputJson": "{\"targetUrls\":[\"https://example.com/products\",\"https://shop.example.net/items\"],\"extractionRules\":[{\"name\":\"productName\",\"selector\":\".product-title\",\"attribute\":\"text\"},{\"name\":\"price\",\"selector\":\".price-tag\",\"attribute\":\"text\"}],\"scheduleCron\":\"\",\"outputFormat\":\"json\",\"maxPages\":1,\"userAgent\":\"\",\"respectRobotsTxt\":true}", + "description": "Build a one-time scraper for product names and prices from two e-commerce sites, outputting JSON." + }, + { + "inputJson": "{\"targetUrls\":[\"https://news.example.com/\"],\"extractionRules\":[{\"name\":\"headline\",\"selector\":\"h2.headline > a\",\"attribute\":\"text\"},{\"name\":\"url\",\"selector\":\"h2.headline > a\",\"attribute\":\"href\"}],\"scheduleCron\":\"0 8 * * *\",\"outputFormat\":\"json\",\"maxPages\":1,\"userAgent\":\"CustomBot/1.0\",\"respectRobotsTxt\":true}", + "description": "Set up a daily morning scrape for news headlines and URLs with a custom user agent." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "web-scraping.formatContract", + "description": "This tool accepts raw HTML content or text extracted from a contract web page and applies formatting rules to structure the contract document. It extracts key sections, normalizes headings, and outputs a clean, human-readable formatted contract text or JSON representation for further use.", + "category": "web-scraping", + "parameters": [ + { + "name": "rawHtml", + "type": "string", + "description": "Raw HTML content of the contract page to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractText", + "type": "string", + "description": "Plain text content of the contract if HTML is not available. Either rawHtml or contractText must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Defines the desired output format: 'text' for formatted plain text, or 'json' for structured JSON format.", + "required": true, + "defaultValue": "text" + }, + { + "name": "includeSections", + "type": "array", + "description": "Optional list of contract section names to include in the output. If empty or omitted, includes all detected sections.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the contract text to tailor formatting appropriately (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted contract in the specified format. Includes status and optionally extracted metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert scraped contract data, often messy or unstructured HTML/text from websites, into clean, well-formatted contract documents for review, analysis, or automated processing.", + "limitations": "This tool does not interpret legal meanings or verify clauses; it only formats and structures text based on detected patterns. Accuracy depends on input quality and may vary with highly complex or poorly formatted contracts.", + "examples": [ + "Format the raw HTML of a contract page into readable plain text with normalized sections.", + "Convert contract text extracted from a web scrape into structured JSON identifying key clauses.", + "Extract and format only specific sections like 'Termination' and 'Liability' from a scraped contract document." + ] + }, + "tags": [ + "web scraping", + "document formatting", + "contracts", + "legal documents", + "text extraction" + ], + "examples": [ + { + "inputJson": "{\"rawHtml\":\"

Contract Agreement

This Agreement is made...

\",\"outputFormat\":\"text\"}", + "description": "Format a simple contract HTML snippet into readable plain text." + }, + { + "inputJson": "{\"contractText\":\"\\nAGREEMENT\\n1. Parties\\nThis agreement is between...\\n2. Termination\\nEither party may...\",\"outputFormat\":\"json\",\"includeSections\":[\"Termination\"]}", + "description": "Extract and format only the 'Termination' section from contract text into structured JSON." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "web-scraping.composeText", + "description": "This tool accepts an array of extracted text fragments obtained from web scraping operations and composes them into a coherent, structured text output. It processes the input by cleaning, ordering, and optionally summarizing or formatting the fragments to produce a readable, unified text document that reflects the combined content of the scraped data.", + "category": "web-scraping", + "parameters": [ + { + "name": "textFragments", + "type": "array", + "description": "An array of text strings extracted from different parts of a website to be composed into a single coherent text output.", + "required": true, + "defaultValue": "" + }, + { + "name": "orderBy", + "type": "string", + "description": "Criterion to order text fragments before composing, e.g., 'appearance', 'length', or 'custom'.", + "required": false, + "defaultValue": "appearance" + }, + { + "name": "separator", + "type": "string", + "description": "String used to separate composed text fragments in the output. For example, '\\n' for new lines or space.", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "summarize", + "type": "boolean", + "description": "Whether to attempt summarization of the composed text to reduce length while preserving meaning.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the output text if summarization is enabled; ignored otherwise.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "format", + "type": "string", + "description": "Output text format style: 'plain' for plain text or 'html' for basic HTML formatting.", + "required": false, + "defaultValue": "plain" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed text string and metadata about processing such as the number of fragments combined and final text length. If summarization is applied, a summary flag is included." + }, + "aiAgent": { + "useCase": "Use this tool when you have multiple text fragments extracted from web pages that need to be assembled into a clear, readable, and optionally summarized document. It is ideal for aggregating content scraped from different sections of a site such as article paragraphs, comments, or product descriptions and presenting them in a logical order.", + "limitations": "The tool cannot extract text from websites itself; it requires pre-extracted text fragments as input. The quality of composition depends on the order and coherence of input fragments. Summarization is basic and may not capture nuanced meaning fully.", + "examples": [ + "Compose text fragments extracted from a news article into one readable article text.", + "Aggregate multiple product review snippets from a webpage into a single summary document.", + "Order and combine multiple scraped paragraphs from a blog page while formatting the result in HTML." + ] + }, + "tags": [ + "web scraping", + "text composition", + "content aggregation", + "summarization", + "html formatting" + ], + "examples": [ + { + "inputJson": "{\"textFragments\":[\"Introduction: This product is great.\",\"Features include durability and style.\",\"Customer reviews praise its quality.\"],\"orderBy\":\"appearance\",\"separator\":\"\\n\\n\",\"summarize\":false,\"format\":\"plain\"}", + "description": "Compose several product description fragments into a single readable text separated by double new lines." + }, + { + "inputJson": "{\"textFragments\":[\"First paragraph: ...\",\"Second paragraph: ...\",\"Conclusion: ...\"],\"orderBy\":\"appearance\",\"separator\":\"\\n\",\"summarize\":true,\"maxLength\":300,\"format\":\"plain\"}", + "description": "Compose and summarize blog post paragraphs clipped from a web page into a concise text under 300 characters." + }, + { + "inputJson": "{\"textFragments\":[\"

Intro text.

\",\"

Details follow.

\",\"

Summary here.

\"],\"orderBy\":\"appearance\",\"separator\":\"\",\"summarize\":false,\"format\":\"html\"}", + "description": "Combine multiple HTML paragraph fragments into a single HTML formatted block without separators." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "web-scraping.composeMessage", + "description": "This tool accepts extracted data from web pages (like product details, contact info or article snippets) and composes a coherent message template such as an email, report, or summary. It processes the input data to structure a human-readable message output formatted for communication purposes.", + "category": "web-scraping", + "parameters": [ + { + "name": "extractedData", + "type": "object", + "description": "Structured data extracted from a website, typically including fields like name, details, links, or summaries to be incorporated into the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageType", + "type": "string", + "description": "The type of message to compose, e.g., 'email', 'report', or 'summary' to guide formatting and tone.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "Optional name of the message recipient to personalize the message greeting.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section at the end of the message, default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the message such as 'formal', 'casual', or 'neutral' to adjust style.", + "required": false, + "defaultValue": "neutral" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed message text and metadata such as subject line and formatting hints." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured data obtained via web scraping that needs to be transformed into a human-readable message format suitable for communication (e.g., sending product offers, news summaries, or contact requests). It helps automate message drafting based on extracted content.", + "limitations": "This tool does not perform the web scraping itself, nor does it handle sending messages. It also does not generate content unrelated to the input data or perform deep natural language creativity beyond templated composition.", + "examples": [ + "Compose a formal email message to a client including product details scraped from a competitor site.", + "Generate a summary report message of the latest news articles extracted from a news website.", + "Create a casual contact introduction message from scraped contact info for outreach purposes." + ] + }, + "tags": [ + "web-scraping", + "message", + "compose", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"extractedData\":{\"productName\":\"SuperWidget 3000\",\"price\":\"$299\",\"features\":[\"Fast\",\"Reliable\",\"Eco-friendly\"]},\"messageType\":\"email\",\"recipientName\":\"John Doe\",\"includeSummary\":true,\"tone\":\"formal\"}", + "description": "Compose a formal email message to a recipient named John Doe including extracted product details with a summary." + }, + { + "inputJson": "{\"extractedData\":{\"articles\":[{\"title\":\"Market Trends\",\"summary\":\"The market is growing...\"},{\"title\":\"Tech News\",\"summary\":\"New innovations...\"}]},\"messageType\":\"summary\",\"includeSummary\":false,\"tone\":\"neutral\"}", + "description": "Generate a neutral tone summary message from scraped news article data without additional summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "web-scraping.buildConfig", + "description": "Constructs a comprehensive configuration object for web scraping tasks. Accepts inputs defining target URLs, CSS selectors or XPath expressions for data extraction, pagination details, headers, cookies, and scraping intervals. Outputs a structured JSON configuration that can be used by scraping engines to perform the defined web data extraction reliably.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrls", + "type": "array", + "description": "List of website URLs to scrape data from, can include multiple pages or entry points.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectors", + "type": "object", + "description": "An object mapping field names to CSS selectors or XPath expressions for extracting desired data elements.", + "required": true, + "defaultValue": "" + }, + { + "name": "pagination", + "type": "object", + "description": "Settings for handling paginated content including next page selector and max pages to scrape.", + "required": false, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "HTTP headers to include in requests such as user-agent, accept-language, etc.", + "required": false, + "defaultValue": "" + }, + { + "name": "cookies", + "type": "object", + "description": "Cookies to send with requests for session-based or protected content access.", + "required": false, + "defaultValue": "" + }, + { + "name": "scrapeIntervalSeconds", + "type": "number", + "description": "Interval in seconds to wait between requests to avoid overloading the server or triggering blocks.", + "required": false, + "defaultValue": "1" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for scraped data, e.g., JSON, CSV, or XML.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "A complete JSON configuration object encapsulating all parameters suitable for use by web scraping automation tools." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a robust, reusable configuration for performing web scraping tasks. It helps to structurally define what to scrape, how to paginate, and how to handle headers and cookies for authenticated or session-based scraping.", + "limitations": "This tool does not perform scraping or validate selectors against a live website; it only builds the config. It requires the user or another tool to execute the scraping using the config generated.", + "examples": [ + "Generate scraping config for product data from multiple e-commerce pages.", + "Create scraper configuration for paginated blog post listings with custom headers.", + "Build scraping config to extract multiple fields from a single-page application with cookies for auth." + ] + }, + "tags": [ + "web scraping", + "configuration", + "data extraction", + "automation", + "pagination", + "selectors" + ], + "examples": [ + { + "inputJson": "{\"targetUrls\":[\"https://example.com/products?page=1\"],\"selectors\":{\"title\":\".product-title\",\"price\":\".price\",\"imageUrl\":\"img.product-image\"},\"pagination\":{\"nextPageSelector\":\"a.next\",\"maxPages\":5},\"headers\":{\"User-Agent\":\"Mozilla/5.0\"},\"scrapeIntervalSeconds\":2,\"outputFormat\":\"JSON\"}", + "description": "Build config for scraping product titles, prices, and images with pagination over 5 pages and custom user-agent header." + }, + { + "inputJson": "{\"targetUrls\":[\"https://news.example.com/articles\"],\"selectors\":{\"headline\":\"h1.headline\",\"author\":\".author-name\",\"date\":\"time.publish-date\"},\"headers\":{},\"scrapeIntervalSeconds\":1,\"outputFormat\":\"CSV\"}", + "description": "Create configuration to scrape news articles headlines, authors, and dates from a static page, outputting CSV format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "web-scraping.buildPullRequest", + "description": "Builds a pull request draft by scraping code changes and metadata from a specified web-based code repository interface. Accepts URL of a repo's compare or pull request page, extracts diff data, commit messages, and contributors, then generates a structured pull request summary and patch content as output.", + "category": "web-scraping", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL of the web page showing the code diff or pull request interface to extract data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The branch name in the target repository that the pull request will merge into.", + "required": true, + "defaultValue": "main" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the pull request. If not provided, extracted or default title is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description of the pull request to include in the summary.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCommitDetails", + "type": "boolean", + "description": "Flag to specify whether to include individual commit details in the pull request body.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the structured pull request including title, description, target branch, list of commits, and diff patch content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a structured pull request draft from a code difference or pull request page on a web interface without API access. It enables extraction of relevant code changes, commit info, and generates a ready-to-submit PR summary and patch for automation or review workflows.", + "limitations": "It cannot interact directly with repository APIs to submit or merge pull requests. Parsing is limited to supported web page formats and may fail if web page structure changes or is inaccessible.", + "examples": [ + "Create a pull request draft from a GitHub compare URL with title 'Fix memory leak' targeting develop branch.", + "Generate a PR summary and patch from a GitLab merge request diff page including commit details.", + "Build a pull request draft from a Bitbucket code diff URL without providing title or description." + ] + }, + "tags": [ + "web scraping", + "pull request", + "code repository", + "automation", + "diff extraction", + "code changes", + "version control" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://github.com/example/repo/compare/main...feature-branch\",\"targetBranch\":\"main\",\"title\":\"Add new feature X\",\"description\":\"Implemented feature X with unit tests.\",\"includeCommitDetails\":true}", + "description": "Builds pull request data from a GitHub compare URL to merge feature-branch into main with specified title and description." + }, + { + "inputJson": "{\"sourceUrl\":\"https://gitlab.com/example/repo/-/merge_requests/42/diffs\",\"targetBranch\":\"master\",\"title\":\"Fix typo in docs\",\"includeCommitDetails\":false}", + "description": "Generates a PR draft from a GitLab merge request diff page targeting master branch with a provided title and no commit details included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "web-scraping.buildModule", + "description": "This tool generates a customizable web scraping module script based on user input parameters including target URL, data extraction rules, request headers, and scraping frequency. It produces a ready-to-use code module (e.g., Python script) that automates data extraction from specified websites.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The base URL of the website to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractionSelectors", + "type": "object", + "description": "An object defining CSS selectors or XPath expressions mapped to field names for the data to extract.", + "required": true, + "defaultValue": "" + }, + { + "name": "requestHeaders", + "type": "object", + "description": "Optional HTTP headers to include in requests for authentication or user-agent customization.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "scrapingFrequencyMinutes", + "type": "number", + "description": "Frequency in minutes to run the scraping module automatically; 0 means manual only.", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output data format produced by the module (json or csv).", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeLogging", + "type": "boolean", + "description": "Whether the module should log scraping actions and errors.", + "required": false, + "defaultValue": "true" + }, + { + "name": "useHeadlessBrowser", + "type": "boolean", + "description": "Whether to use a headless browser (e.g., Puppeteer or Selenium) for scraping dynamic content.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "The generated source code of the web scraping module as a string, ready for execution or customization." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a tailored web scraping script that reliably extracts structured data from a target website. It is helpful to automate data collection workflows or integrate scraped data pipelines without manually coding from scratch.", + "limitations": "This tool cannot guarantee scraping success on highly dynamic or heavily protected websites that require advanced techniques like CAPTCHA solving or complex authentication flows. It generates code scaffold but actual deployment and runtime environment setup are not handled.", + "examples": [ + "Generate a scraping module to extract product titles and prices from an ecommerce site every hour.", + "Build a scraping script that pulls headlines and publication dates from a news website using user-agent headers.", + "Create a module that scrapes stock prices JSON endpoint, outputting CSV, and logs all actions." + ] + }, + "tags": [ + "web-scraping", + "automation", + "code-generation", + "data-extraction", + "scripting", + "module", + "dynamic-content" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com/products\",\"extractionSelectors\":{\"productName\":\".product-title\",\"price\":\".price\"},\"requestHeaders\":{\"User-Agent\":\"Mozilla/5.0\"},\"scrapingFrequencyMinutes\":60,\"outputFormat\":\"json\",\"includeLogging\":true,\"useHeadlessBrowser\":false}", + "description": "Generate a web scraper module for product names and prices on example.com, running hourly, outputting JSON with logs." + }, + { + "inputJson": "{\"targetUrl\":\"https://news.example.org\",\"extractionSelectors\":{\"headline\":\"h2.headline\",\"date\":\"span.pub-date\"},\"requestHeaders\":{},\"scrapingFrequencyMinutes\":0,\"outputFormat\":\"csv\",\"includeLogging\":true,\"useHeadlessBrowser\":true}", + "description": "Build a scraper for news headlines and dates, manual execution, CSV output, using a headless browser for dynamic content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "web-scraping.buildBranch", + "description": "Constructs a code branch structure by scraping a designated web repository page. It accepts a repository URL and branch name, fetches the relevant code files’ metadata and directory hierarchy from the web interface, and outputs a structured representation of the branch content suitable for programmatic use or further automation.", + "category": "web-scraping", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the web repository page to scrape, e.g., GitHub repository main page.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name of the branch to build the structure for, e.g., 'main' or 'develop'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeFileContents", + "type": "boolean", + "description": "Whether to scrape and include the actual file contents along with metadata (may increase runtime).", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum directory nesting depth to traverse during scraping to avoid deep or infinite crawling.", + "required": false, + "defaultValue": "5" + }, + { + "name": "fileExtensions", + "type": "array", + "description": "Array of file extensions to include (e.g., ['.js','.json']); if empty, includes all files.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the branch structure with directories and files, including metadata such as file names, paths, sizes, and optionally file contents." + }, + "aiAgent": { + "useCase": "Use this tool when you need an automated way to extract the structured contents of a code branch from a web-based repository interface for analysis, mirroring, or integration without API access. It helps agents visually parse and reconstruct branch file trees for downstream processing.", + "limitations": "This tool cannot interact with private repositories that require authentication, nor can it execute JavaScript-heavy sites that dynamically load content without additional scripting. It also cannot guarantee up-to-date content if the repository changes after scraping.", + "examples": [ + "Build the branch structure of the 'main' branch from a public GitHub repository URL.", + "Fetch the directory tree for branch 'develop' including JavaScript and JSON files only, excluding file contents.", + "Scrape a repository branch structure but limit traversal depth to avoid deeply nested folders." + ] + }, + "tags": [ + "web-scraping", + "code-branch", + "repository", + "automation", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/octocat/Hello-World\",\"branchName\":\"main\",\"includeFileContents\":false,\"maxDepth\":3,\"fileExtensions\":[]}", + "description": "Scrape the 'main' branch of the Hello-World repository, getting directory and file metadata only, max 3 levels deep." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/nodejs/node\",\"branchName\":\"master\",\"includeFileContents\":true,\"maxDepth\":2,\"fileExtensions\":[\".js\",\".md\"]}", + "description": "Extract 'master' branch content of Node.js repo, including file contents for JavaScript and Markdown files, up to 2 directory levels." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "web-scraping.buildEndpoint", + "description": "Creates a configurable web scraping API endpoint based on user-defined parameters including target URL, selectors, and extraction rules. Accepts inputs defining the scraping target and output format, processes them to generate an endpoint code snippet or configuration that can be deployed to fetch structured data from websites efficiently.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the web page to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectors", + "type": "object", + "description": "An object defining CSS selectors or XPath expressions mapped to field names for data extraction.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method (GET or POST) used to fetch the page content.", + "required": false, + "defaultValue": "GET" + }, + { + "name": "requestHeaders", + "type": "object", + "description": "Optional HTTP headers to include when making the request, as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the scraped data output, e.g., JSON or CSV.", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "includePagination", + "type": "boolean", + "description": "Whether the endpoint should support pagination to scrape multiple pages.", + "required": false, + "defaultValue": "false" + }, + { + "name": "paginationSelector", + "type": "string", + "description": "CSS selector or XPath to identify the pagination control, if pagination is enabled.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code or configuration for the scraping endpoint, including code snippet, endpoint route path, and metadata describing the scraping setup." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build a web scraping API endpoint tailored to specific web pages and data extraction requirements. Ideal for automating the creation of scraping services without manual coding, supporting dynamic target URLs and customizable selectors.", + "limitations": "This tool does not handle JavaScript-rendered content that requires a headless browser. It also cannot guarantee legality or ethical compliance of scraping the target site.", + "examples": [ + "Build an endpoint to scrape product listings from an e-commerce site using CSS selectors.", + "Generate a scraping API that extracts news headlines and supports pagination to cover multiple pages.", + "Create a scraping endpoint returning JSON data for contact information from a business directory." + ] + }, + "tags": [ + "web", + "scraping", + "API", + "endpoint", + "automation", + "data extraction" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com/products\",\"selectors\":{\"productName\":\".product-title\",\"price\":\".price-value\"},\"httpMethod\":\"GET\",\"outputFormat\":\"JSON\",\"includePagination\":true,\"paginationSelector\":\".next-page\"}", + "description": "Build an endpoint to scrape product names and prices from an e-commerce site with pagination support." + }, + { + "inputJson": "{\"targetUrl\":\"https://news.example.com\",\"selectors\":{\"headline\":\"h1.article-title\",\"author\":\".author-name\"},\"outputFormat\":\"JSON\"}", + "description": "Create a simple scraping endpoint to extract headlines and authors from a news site." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "web-scraping.generateDashboard", + "description": "This tool accepts a website URL and configuration parameters to scrape specified data points from the site. It processes the collected data to generate an interactive analytics dashboard summarizing key metrics such as counts, trends, and distributions. The output is a JSON object representing dashboard widgets ready for visualization.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The target website URL to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSelectors", + "type": "object", + "description": "A dictionary defining CSS selectors or XPath expressions to extract the desired data fields from the web page.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range parameters (start and end dates) to filter data if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include chart data structures for visualization in the output dashboard.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxPages", + "type": "number", + "description": "Maximum number of pages to paginate through for data collection to limit scraping scope.", + "required": false, + "defaultValue": "10" + }, + { + "name": "authCredentials", + "type": "object", + "description": "Optional authentication credentials if the target website requires login for data access.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the generated dashboard, including metrics summaries, chart data, and configuration for visual widgets." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to collect structured data from publicly accessible websites or authenticated sources, then aggregate and visualize it in an analytics dashboard format. Suitable for monitoring online metrics, trend analysis, and reporting from web data sources.", + "limitations": "The tool cannot scrape websites that use advanced anti-bot protections or dynamically render data that requires JavaScript execution without support. It depends on proper dataSelectors and may not interpret unstructured or deeply nested data accurately. Complex interactive dashboards must be constructed externally using the output JSON.", + "examples": [ + "Generate a dashboard summarizing product prices and ratings from an e-commerce category page.", + "Create an analytics dashboard showing recent news article counts and categories from a news website.", + "Scrape and visualize social media post metrics over the past month from a profile requiring login." + ] + }, + "tags": [ + "web-scraping", + "dashboard-generation", + "analytics", + "data-extraction", + "visualization", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example-ecommerce.com/category/electronics\",\"dataSelectors\":{\"price\":\".product-price\",\"rating\":\".product-rating\"},\"includeCharts\":true,\"maxPages\":5}", + "description": "Generate a dashboard summarizing prices and ratings for electronics products on an e-commerce site, paginating through up to 5 pages." + }, + { + "inputJson": "{\"url\":\"https://news.example.com\",\"dataSelectors\":{\"headline\":\"h2.headline\",\"category\":\".category-label\"},\"timeRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-01-31\"}}", + "description": "Create an analytics dashboard depicting news headline counts per category for January 2024." + }, + { + "inputJson": "{\"url\":\"https://socialmedia.example.com/user/profile\",\"authCredentials\":{\"username\":\"user123\",\"password\":\"passw0rd\"},\"dataSelectors\":{\"postDate\":\".post-date\",\"likes\":\".like-count\"},\"includeCharts\":true}", + "description": "Scrape and visualize social media post dates and likes from a user profile requiring login, generating timeline and engagement charts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "web-scraping.generateLink", + "description": "Extracts a specific link URL from a given webpage based on CSS selector criteria. Accepts a target webpage URL and a CSS selector string defining the link element(s) to find. Returns the first matching hyperlink's URL or an array of URLs if multiple are requested.", + "category": "web-scraping", + "parameters": [ + { + "name": "pageUrl", + "type": "string", + "description": "The URL of the webpage from which to extract link(s).", + "required": true, + "defaultValue": "" + }, + { + "name": "cssSelector", + "type": "string", + "description": "CSS selector string to identify the link element(s) on the page.", + "required": true, + "defaultValue": "" + }, + { + "name": "multiple", + "type": "boolean", + "description": "Whether to return all matching links (true) or only the first match (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeout", + "type": "number", + "description": "Maximum time in milliseconds to wait for page content to load before scraping.", + "required": false, + "defaultValue": "5000" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted URL(s): 'link' is a string if multiple=false; 'links' is an array of strings when multiple=true. Returns empty string or empty array if no matches found." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically extract hyperlink URLs from a webpage by specifying CSS selectors, for purposes like data collection, monitoring, or automated navigation. It's particularly useful when you know how to identify the link element(s) via CSS selectors and want structured URLs returned.", + "limitations": "Cannot execute complex JavaScript-rendered pages that require a full browser environment beyond timeout limits. Relies on accurate CSS selectors and stable page structure. May not follow redirects or extract dynamically generated links beyond initial load.", + "examples": [ + "Extract the href of the first \"a\" tag inside a div with class 'article'.", + "Retrieve all links under a navigation bar identified by '#nav-menu a' selectors.", + "Get the main product link on a page with a known link class '.product-link'." + ] + }, + "tags": [ + "web scraping", + "link extraction", + "css selector", + "url retrieval", + "automation" + ], + "examples": [ + { + "inputJson": "{\"pageUrl\":\"https://example.com/news\",\"cssSelector\":\"div.article > a\",\"multiple\":false}", + "description": "Extract the first article link from example.com news page." + }, + { + "inputJson": "{\"pageUrl\":\"https://example.com\",\"cssSelector\":\"#nav-menu a\",\"multiple\":true}", + "description": "Extract all navigation menu links from example.com homepage." + }, + { + "inputJson": "{\"pageUrl\":\"https://shop.example.com/item/123\",\"cssSelector\":\".product-link\",\"multiple\":false,\"timeout\":10000}", + "description": "Get the main product link on a shopping item page with longer timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "web-scraping.generateQuery", + "description": "Generates a structured search query string suitable for web scraping tasks based on specified keywords, filters, and target website patterns. Accepts a list of keywords, optional filters such as date ranges or categories, and produces a well-formed query string to extract relevant data from websites or APIs.", + "category": "web-scraping", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of keywords or phrases to include in the query for targeting relevant data.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filtering criteria such as date ranges, categories, or specific attributes to narrow search results.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "targetWebsite", + "type": "string", + "description": "The domain or identifier of the website or data source to tailor the query syntax accordingly.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "useAdvancedOperators", + "type": "boolean", + "description": "Whether to incorporate advanced search operators (e.g., AND, OR, NOT) in the generated query string.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'queryString' property that holds the generated structured query string for use in web scraping or search APIs." + }, + "aiAgent": { + "useCase": "Use this tool when constructing precise and effective query strings for scraping data from websites or querying search APIs programmatically. It helps agents convert user intent expressed via keywords and filters into syntactically correct queries tailored to target site requirements.", + "limitations": "This tool does not perform the actual web scraping or data fetching. It also cannot guarantee compatibility with all websites as query syntax and supported operators may vary widely. It does not execute the query or handle pagination.", + "examples": [ + "Generate a search query for recent articles about renewable energy between 2021 and 2023 from a news website.", + "Create a complex query for scraping product listings on an e-commerce site with specific brand and price filters.", + "Build a query string for scraping forum posts containing certain keywords while excluding others." + ] + }, + "tags": [ + "web-scraping", + "query-generation", + "search", + "data-extraction", + "automation" + ], + "examples": [ + { + "inputJson": "{\"keywords\": [\"renewable energy\", \"solar power\"], \"filters\": {\"dateRange\": {\"start\": \"2021-01-01\", \"end\": \"2023-01-01\"}}, \"targetWebsite\": \"example-news.com\", \"useAdvancedOperators\": true}", + "description": "Generate a query for news articles on renewable energy topics published between 2021 and 2023 from example-news.com using advanced operators." + }, + { + "inputJson": "{\"keywords\": [\"wireless headphones\"], \"filters\": {\"category\": \"electronics\", \"priceRange\": {\"min\": 50, \"max\": 150}}, \"useAdvancedOperators\": false}", + "description": "Create a straightforward query string to scrape wireless headphone listings from an electronics category filtered by price." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "web-scraping.createLink", + "description": "Extracts and creates structured hyperlink data from the provided web page URL or raw HTML content. Accepts a target URL or raw HTML string, optionally filters links by CSS selector and attribute, and outputs an array of link objects with URL and text content.", + "category": "web-scraping", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL of the web page from which to scrape links. Required if rawHtml is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawHtml", + "type": "string", + "description": "The raw HTML content as a string to scrape links from. Required if sourceUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "cssSelector", + "type": "string", + "description": "A CSS selector string to filter which link elements to extract. Defaults to 'a' to select all links.", + "required": false, + "defaultValue": "a" + }, + { + "name": "attribute", + "type": "string", + "description": "The attribute to extract the URL from, typically 'href'. Defaults to 'href'.", + "required": false, + "defaultValue": "href" + }, + { + "name": "maxLinks", + "type": "number", + "description": "Maximum number of links to extract. Limits the output size. Defaults to 0 (no limit).", + "required": false, + "defaultValue": "0" + }, + { + "name": "deduplicate", + "type": "boolean", + "description": "Whether to remove duplicate links in the output. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array 'links'. Each element includes 'url' (string) and 'text' (string) extracted from the matching link elements." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract all or a filtered set of hyperlink URLs and their accompanying text from a webpage for data analysis, aggregation, or further processing, either from a live URL or static HTML snapshot.", + "limitations": "Cannot extract dynamically generated or JavaScript-injected links without rendering the page first. Does not follow redirects or extract links from iframes or embedded documents.", + "examples": [ + "Extract all links from 'https://example.com' and get their URLs and text.", + "Scrape links matching CSS selector '.nav-links a' from provided raw HTML.", + "Get up to 10 unique href links from a URL, ignoring duplicates." + ] + }, + "tags": [ + "web-scraping", + "links", + "html", + "data-extraction", + "urls", + "crawler" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\": \"https://example.com\", \"cssSelector\": \"a\", \"attribute\": \"href\", \"maxLinks\": 5, \"deduplicate\": true}", + "description": "Extract up to 5 unique href links from the example.com homepage." + }, + { + "inputJson": "{\"rawHtml\": \"Link ALink B\", \"cssSelector\": \"a\", \"attribute\": \"href\"}", + "description": "Extract all href links from a given raw HTML string." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "web-scraping.createInstance", + "description": "Creates and initializes a new web scraping instance configured to extract specific data from target websites. Accepts parameters defining target URLs, scraping rules, frequency schedules, and output formats. Processes these inputs to instantiate a scraping job that can be started, stopped, or queried for status, producing an instance ID and configuration summary.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrls", + "type": "array", + "description": "List of website URLs from which the scraper will extract data.", + "required": true, + "defaultValue": "" + }, + { + "name": "scrapingRules", + "type": "object", + "description": "Defines selectors, patterns, or custom extraction logic for the data to be scraped from each target URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "schedule", + "type": "string", + "description": "Cron expression or interval string indicating how frequently to perform scraping tasks.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the scraped data output, e.g., 'json', 'csv', or 'xml'.", + "required": false, + "defaultValue": "\"json\"" + }, + { + "name": "userAgent", + "type": "string", + "description": "Custom user-agent string to use when making HTTP requests during scraping.", + "required": false, + "defaultValue": "\"Mozilla/5.0 (compatible; TPMJSBot/1.0)\"" + }, + { + "name": "maxRetries", + "type": "number", + "description": "Maximum number of retry attempts on request failures.", + "required": false, + "defaultValue": "3" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for a response before timing out a scraping request.", + "required": false, + "defaultValue": "30" + }, + { + "name": "headless", + "type": "boolean", + "description": "Whether to run the scraper in headless mode (without opening a browser window).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique instance ID of the scraper, the configured parameters summary, and initial status indicating readiness or any validation errors." + }, + "aiAgent": { + "useCase": "Use this tool when needing to initialize a reusable web scraping instance configured with custom extraction rules and schedules. Ideal for agents that automate data collection from multiple websites or require periodic data updates. It establishes the scraping infrastructure that can be controlled or queried by further commands.", + "limitations": "Does not perform scraping itself but only configures the scraping job instance. It cannot ensure legality of scraping targets or bypass anti-bot protections inherent to some websites.", + "examples": [ + "Create a scraping instance targeting ecommerce sites for price data updated daily.", + "Set up a web scraper instance to extract news headlines from multiple news site homepages every hour.", + "Initialize a scraping job configured to collect job postings with specific keywords across several career portals, outputting data in CSV." + ] + }, + "tags": [ + "web-scraping", + "automation", + "data-extraction", + "job-scheduling", + "instance-management" + ], + "examples": [ + { + "inputJson": "{\"targetUrls\": [\"https://example.com/products\", \"https://example2.com/items\"], \"scrapingRules\": {\"title\": \"h1.product-title\", \"price\": \".price-value\"}, \"schedule\": \"0 6 * * *\", \"outputFormat\": \"json\", \"userAgent\": \"Mozilla/5.0 (compatible; TPMJSBot/1.0)\", \"maxRetries\": 5, \"timeoutSeconds\": 20, \"headless\": true}", + "description": "Creates a scraping instance targeting two ecommerce URLs to extract product titles and prices daily at 6am, outputting results as JSON." + }, + { + "inputJson": "{\"targetUrls\": [\"https://news.example.com/\"], \"scrapingRules\": {\"headline\": \".news-headline\", \"author\": \".author-name\"}, \"schedule\": \"0 * * * *\", \"outputFormat\": \"csv\"}", + "description": "Initializes a scraper for hourly extraction of headlines and author names from a news site, outputting data in CSV format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "web-scraping.generateArticle", + "description": "This tool accepts a URL of a publicly accessible web page containing an article or blog post. It fetches the page content, extracts the main article text, metadata such as title, author, publication date, and images, then generates a structured article summary or full text representation in JSON format. It helps convert raw webpage content into clean, consumable article data for further processing or analysis.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The complete URL of the web page from which to scrape the article content.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeImages", + "type": "boolean", + "description": "Whether to extract and include image URLs found within the article content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxArticleLength", + "type": "number", + "description": "The maximum number of characters to include when generating the article text. If 0, returns full text without trimming.", + "required": false, + "defaultValue": "0" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the web page to load before aborting the scrape.", + "required": false, + "defaultValue": "10" + }, + { + "name": "userAgent", + "type": "string", + "description": "Optional user-agent string to use when fetching the web page to mimic different browsers or bots.", + "required": false, + "defaultValue": "Mozilla/5.0 (compatible; TPMJSBot/1.0)" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the extracted article information including title, author, publication date, main text snippet or full text, and optionally image URLs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve and convert web article content from diverse sources into structured data to summarize information, analyze content, or index articles. Ideal for news aggregation, content analysis, or automated research assistants.", + "limitations": "Cannot scrape content behind authentication walls or extensively scripted single-page applications; quality depends on the target webpage's HTML structure and accessibility; does not perform sentiment or topic analysis—only extraction.", + "examples": [ + "Extract the main article from https://example.com/news/article1234 including images.", + "Generate a summary of the blog post at https://blog.example.org/post/5678 limited to 5000 characters.", + "Fetch and parse article content from a tech news URL using a custom user-agent string." + ] + }, + "tags": [ + "web scraping", + "article extraction", + "content parsing", + "data extraction", + "news aggregation", + "web content", + "HTML parsing" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://www.example-news-site.com/articles/2024/06/innovative-tech.html\",\"includeImages\":true,\"maxArticleLength\":0,\"timeoutSeconds\":10,\"userAgent\":\"Mozilla/5.0 (compatible; TPMJSBot/1.0)\"}", + "description": "Fetch the full article content including images from a technology news article on example-news-site.com." + }, + { + "inputJson": "{\"url\":\"https://blog.example.com/insights/ai-future\",\"includeImages\":false,\"maxArticleLength\":3000,\"timeoutSeconds\":8,\"userAgent\":\"\"}", + "description": "Retrieve and summarize the AI insights blog post, limiting the text to 3000 characters and excluding images." + }, + { + "inputJson": "{\"url\":\"https://media.example.org/stories/health/fitness-tips\",\"includeImages\":true,\"maxArticleLength\":0,\"timeoutSeconds\":12,\"userAgent\":\"CustomUserAgent/1.0\"}", + "description": "Scrape the full-length health and fitness article from media.example.org with a custom user-agent header." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "web-scraping.generateKPI", + "description": "This tool accepts a target website URL and a list of KPI definitions specifying the web elements and metrics to extract. It performs automated web scraping to collect data points like visitor counts, conversion rates, or engagement metrics from the site's public data. The tool returns structured analytics KPIs as JSON for further business analysis.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The website URL from which to scrape data to generate KPIs.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiDefinitions", + "type": "array", + "description": "An array of KPI definitions specifying data selectors, calculation logic, and metric names to extract from the web page.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional credentials or tokens if the target site requires authentication to access data, with fields such as username and password.", + "required": false, + "defaultValue": "" + }, + { + "name": "requestHeaders", + "type": "object", + "description": "Optional HTTP headers to include in the scraping request (e.g., user-agent).", + "required": false, + "defaultValue": "" + }, + { + "name": "timeout", + "type": "number", + "description": "Maximum time in seconds to wait for the page to load before scraping begins.", + "required": false, + "defaultValue": "30" + }, + { + "name": "waitForSelector", + "type": "string", + "description": "Optional CSS selector to wait for ensuring required elements have loaded before scraping.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object containing each requested KPI name with its calculated or extracted numeric value, plus metadata like scrape timestamp and status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract custom-defined KPIs from public or authenticated web pages where dashboards or APIs are unavailable, enabling automated business metric collection from live web data.", + "limitations": "Cannot extract data behind complex anti-scraping measures or render-heavy sites without suitable browser automation. Requires accurately defined KPI selectors and formulas. Not suitable for private or heavily secured data without proper credentials.", + "examples": [ + "Extract daily visitor counts and engagement rates from a news website homepage.", + "Calculate conversion rate KPIs based on extracted button-click counts and page visits from an ecommerce portal.", + "Gather social proof metrics like number of reviews and ratings dynamically from product pages." + ] + }, + "tags": [ + "web-scraping", + "KPI", + "analytics", + "data-extraction", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/dashboard\",\"kpiDefinitions\":[{\"name\":\"dailyVisitors\",\"selector\":\"#visitorCount\",\"type\":\"number\"},{\"name\":\"conversionRate\",\"selector\":\".conversion-rate\",\"type\":\"percentage\"}]}", + "description": "Scrape daily visitor counts and conversion rates from example.com dashboard." + }, + { + "inputJson": "{\"url\":\"https://shop.example.com/product/12345\",\"kpiDefinitions\":[{\"name\":\"averageRating\",\"selector\":\".rating-average\",\"type\":\"number\"},{\"name\":\"reviewCount\",\"selector\":\"#review-count\",\"type\":\"number\"}]}", + "description": "Extract average customer rating and total review count from a product page." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "web-scraping.createArticle", + "description": "This tool accepts a target web page URL and optional CSS selectors to extract and compile data into a structured article format. It processes the HTML content by scraping specified elements such as headings, paragraphs, images, and metadata, and outputs a clean JSON object representing the article's title, author, publish date, content blocks, and images.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the web page to scrape for article data.", + "required": true, + "defaultValue": "" + }, + { + "name": "titleSelector", + "type": "string", + "description": "CSS selector to identify the article title element on the page.", + "required": false, + "defaultValue": "h1.article-title" + }, + { + "name": "authorSelector", + "type": "string", + "description": "CSS selector to identify the author name element.", + "required": false, + "defaultValue": "span.author-name" + }, + { + "name": "dateSelector", + "type": "string", + "description": "CSS selector to identify the article publish date element.", + "required": false, + "defaultValue": "time.publish-date" + }, + { + "name": "contentSelector", + "type": "string", + "description": "CSS selector to identify the main content container with article paragraphs.", + "required": false, + "defaultValue": "div.article-content" + }, + { + "name": "imageSelector", + "type": "string", + "description": "CSS selector to extract URLs of any images related to the article.", + "required": false, + "defaultValue": "div.article-content img" + }, + { + "name": "maxContentBlocks", + "type": "number", + "description": "Maximum number of content blocks or paragraphs to extract from the article.", + "required": false, + "defaultValue": "20" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as tags or categories if available.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured article object with fields: title (string), author (string), publishDate (string ISO format), contentBlocks (array of strings), images (array of strings URLs), and metadata (object with optional tags/categories)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract and structure article content from a web page for summarization, analysis, or content aggregation purposes. It is suitable for pages with predictable HTML structure or when CSS selectors can be specified for key article parts. It helps convert messy HTML into structured, machine-readable article data.", + "limitations": "This tool cannot interpret JavaScript-rendered content without a rendering engine, may fail with anti-scraping protections, and requires correct CSS selectors for best results. It does not perform automated language translation or deep semantic understanding of the content.", + "examples": [ + "Extract the main article from https://example.com/news/12345 including title, author, date, content, and images.", + "Scrape a blog post at a given URL specifying custom CSS selectors for content elements.", + "Collect multiple paragraphs and images from a news article page while ignoring sidebar or ads." + ] + }, + "tags": [ + "web-scraping", + "article-extraction", + "content-aggregation", + "HTML-parsing", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/news/article-123\",\"titleSelector\":\"h1.headline\",\"authorSelector\":\"span.byline\",\"dateSelector\":\"time.pub-date\",\"contentSelector\":\"section.article-body\",\"imageSelector\":\"section.article-body img\",\"maxContentBlocks\":10,\"includeMetadata\":true}", + "description": "Extract main article components from a news page using custom selectors." + }, + { + "inputJson": "{\"url\":\"https://blogsite.com/post/6789\",\"maxContentBlocks\":15,\"includeMetadata\":false}", + "description": "Extract up to 15 paragraphs of article content and images from a blog post with default selectors." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "web-scraping.createKPI", + "description": "This tool accepts a target website URL and user-defined KPI definitions specifying the data points and metrics to extract. It performs web scraping by fetching and parsing relevant web pages, computes the specified KPIs based on extracted data, and outputs structured analytics summaries such as conversion rates, user engagement metrics, or other business performance indicators.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The target website URL to scrape data from for KPI calculation.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiDefinitions", + "type": "array", + "description": "Array of KPI definition objects, each specifying data selectors and computation logic to extract and calculate specific KPIs.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional authentication credentials (e.g., username, password, tokens) if the website requires login to access data.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxPages", + "type": "number", + "description": "Maximum number of pages to scrape to collect sufficient data for KPI computation. Helps limit scope for performance.", + "required": false, + "defaultValue": "10" + }, + { + "name": "delayBetweenRequests", + "type": "number", + "description": "Delay in milliseconds between HTTP requests to avoid server overload or being blocked.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "userAgent", + "type": "string", + "description": "User-agent string to send with HTTP requests for better compatibility and to mimic browsers.", + "required": false, + "defaultValue": "Mozilla/5.0 (compatible; KPIbot/1.0)" + }, + { + "name": "followRedirects", + "type": "boolean", + "description": "Whether to follow HTTP redirects during scraping process.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the calculated KPIs with KPI names as keys and their numeric or structured values representing the metrics." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate key performance indicators directly from publicly available or authenticated web data by automatically scraping, parsing, and computing relevant metrics without manual data extraction. This enables dynamic monitoring of business performance metrics such as conversion rates, user activity, or revenue estimates from website data.", + "limitations": "Cannot access data behind complex CAPTCHAs or heavily client-side rendered content without additional tooling; also limited by site scraping permissions and potential data structure changes that require KPI definition updates.", + "examples": [ + "Extract conversion rate KPI from an e-commerce homepage scraping purchase and visit counts.", + "Calculate average user engagement time from blog article page metrics scraped across multiple pages.", + "Gather sales lead counts and conversion KPIs from a logged-in CRM system dashboard." + ] + }, + "tags": [ + "web scraping", + "analytics", + "KPI extraction", + "automation", + "business intelligence", + "data extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example-ecommerce.com\",\"kpiDefinitions\":[{\"name\":\"conversionRate\",\"selectorVisits\":\"div.visit-count\",\"selectorPurchases\":\"span.purchase-count\",\"formula\":\"purchases/visits*100\"}],\"maxPages\":5}", + "description": "Compute conversion rate KPI by scraping visit and purchase counts from example e-commerce website across 5 pages." + }, + { + "inputJson": "{\"url\":\"https://exampleblog.com/articles\",\"kpiDefinitions\":[{\"name\":\"avgEngagementTime\",\"selectorTimeSpent\":\"span.read-time\",\"formula\":\"average(timeSpent)\"}],\"maxPages\":3}", + "description": "Calculate average user engagement time by extracting reading times from blog article pages." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "web-scraping.createComment", + "description": "This tool enables automated creation and posting of comments on specified web pages, such as blogs or forums. It accepts the target URL, comment content, user credentials (if required), and optional parameters like user agent or captcha solving. It processes authentication and form submission steps, then returns status and posted comment metadata.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "URL of the web page where the comment will be posted", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "Text content of the comment to be posted", + "required": true, + "defaultValue": "" + }, + { + "name": "userCredentials", + "type": "object", + "description": "Authentication details, such as username and password, needed to post comment (if required)", + "required": false, + "defaultValue": "" + }, + { + "name": "userAgent", + "type": "string", + "description": "Custom user agent string to simulate specific browsers", + "required": false, + "defaultValue": "Mozilla/5.0" + }, + { + "name": "captchaSolver", + "type": "boolean", + "description": "Enable automated captcha solving if the comment form has a captcha", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalHeaders", + "type": "object", + "description": "Extra HTTP headers to include in requests during posting process", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of comment creation (success/failure), any error messages, and metadata of the posted comment (like timestamp, comment ID, and URL)." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to programmatically post comments on websites for purposes such as automated feedback, monitoring discussions, or submitting information. It helps automate interactive tasks on web platforms requiring authentication or form submission.", + "limitations": "This tool cannot bypass advanced security measures like 2FA, complex captchas without integrated solver, or highly dynamic single-page applications without specialized scripting. It assumes legality and ethical use of automated comments.", + "examples": [ + "Post a comment on a public blog with no login required", + "Leave feedback on a forum after logging in with credentials", + "Automate posting of status updates on a web platform with captcha enabled" + ] + }, + "tags": [ + "web-scraping", + "automation", + "comment-posting", + "form-submission", + "web-interaction" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://exampleblog.com/post/12345\",\"commentText\":\"Great article, thanks for sharing!\"}", + "description": "Post a simple comment on a public blog URL without login." + }, + { + "inputJson": "{\"targetUrl\":\"https://forum.example.com/thread/9876\",\"commentText\":\"I agree with your point.\",\"userCredentials\":{\"username\":\"user1\",\"password\":\"pass123\"}}", + "description": "Post a comment on a forum thread requiring user login with credentials." + }, + { + "inputJson": "{\"targetUrl\":\"https://securecommentsite.com/post/777\",\"commentText\":\"Automated update.\",\"userCredentials\":{\"username\":\"botuser\",\"password\":\"botpass\"},\"captchaSolver\":true}", + "description": "Post comment on a site with login and captcha protection using captchaSolver enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "web-scraping.createCredential", + "description": "This tool extracts login credentials such as usernames, emails, and passwords from HTML content of webpages for authorized penetration testing or data migration purposes. Users provide the raw HTML source or URL and credential field identifiers; the tool processes and returns structured credential objects securely.", + "category": "web-scraping", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content of the webpage to extract credentials from. Required if url is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL of the webpage to fetch and extract credentials from. Required if htmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "usernameSelectors", + "type": "array", + "description": "Array of CSS selectors or XPath strings identifying username/email input fields to locate credentials.", + "required": true, + "defaultValue": "[\"input[type='text']\",\"input[type='email']\"]" + }, + { + "name": "passwordSelectors", + "type": "array", + "description": "Array of CSS selectors or XPath strings identifying password input fields to extract passwords securely.", + "required": true, + "defaultValue": "[\"input[type='password']\"]" + }, + { + "name": "requireSecureExtraction", + "type": "boolean", + "description": "If true, only extracts credentials from HTTPS URLs or secure sources to ensure data safety.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxCredentials", + "type": "number", + "description": "Maximum number of credential entries to extract to limit output size. Use 0 for no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of extracted credential entries, each with username/email and password fields, plus metadata on extraction source and success status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically extract login credentials from webpages during authorized security assessments, data migration, or automated testing setups where HTML content or URLs are provided along with selectors for username and password fields. It is designed to support secure, consented scenarios only.", + "limitations": "Cannot extract credentials from encrypted or highly obfuscated web content. Not suitable for illegal credential harvesting or without explicit authorization. Extraction quality depends on correctness of CSS/XPath selectors.", + "examples": [ + "Extract credentials from a login form HTML snippet with known input field selectors.", + "Fetch a webpage over HTTPS and extract up to 5 credential pairs using provided username and password selectors.", + "Extract credentials from raw HTML content when URL fetch is restricted or unavailable." + ] + }, + "tags": [ + "web scraping", + "credential extraction", + "security", + "data extraction", + "automation", + "login forms" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"
\",\"usernameSelectors\":[\"#user\"],\"passwordSelectors\":[\"#pass\"],\"requireSecureExtraction\":false,\"maxCredentials\":1}", + "description": "Extract a single credential pair from given raw HTML content using explicit selectors." + }, + { + "inputJson": "{\"url\":\"https://example.com/login\",\"usernameSelectors\":[\"input[type='email']\"],\"passwordSelectors\":[\"input[type='password']\"],\"requireSecureExtraction\":true,\"maxCredentials\":5}", + "description": "Extract up to five credential entries from a secure HTTPS login page by fetching the URL." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "web-scraping.createRisk", + "description": "This tool accepts a target website URL and configuration parameters to perform automated web scraping for detecting potential security and compliance risks. It analyzes the scraped content, such as exposed sensitive data, vulnerable scripts, and insecure configurations, and outputs a detailed risk report including identified issues, severity levels, and remediation suggestions.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the website to be scanned for security risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxDepth", + "type": "number", + "description": "The maximum link depth to crawl within the target domain, to limit scope.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeSubdomains", + "type": "boolean", + "description": "Whether to include subdomains of the target domain in the scan.", + "required": false, + "defaultValue": "false" + }, + { + "name": "riskCategories", + "type": "array", + "description": "List of risk categories to analyze, such as ['exposedData','vulnerableScripts','insecureHeaders'].", + "required": false, + "defaultValue": "[\"exposedData\",\"vulnerableScripts\",\"insecureHeaders\"]" + }, + { + "name": "maxPages", + "type": "number", + "description": "Maximum number of pages to scrape before stopping to control resource usage.", + "required": false, + "defaultValue": "100" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional authentication credentials if the website requires login, with keys username and password.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a risk assessment report object including identified risks, their severities, URLs of affected pages, and remediation suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing a website for potential security and compliance risks by scraping its live content and configurations to identify exposed sensitive information, vulnerable client-side scripts, and insecure HTTP headers. It aids automated security review and continuous monitoring workflows.", + "limitations": "This tool cannot perform deep backend vulnerability scanning or authenticated scanning if complex multi-factor authentication or CAPTCHAs are required. It relies on publicly accessible or authenticated web content only.", + "examples": [ + "Scan example.com homepage and subpages up to depth 2 for exposed sensitive data and vulnerable scripts.", + "Analyze a corporate website with login credentials to find insecure HTTP headers and script vulnerabilities.", + "Quickly assess the security posture of a marketing website, limiting crawl to 50 pages." + ] + }, + "tags": [ + "web-scraping", + "security", + "risk-assessment", + "vulnerability-detection", + "automation" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com\",\"maxDepth\":2,\"includeSubdomains\":false,\"riskCategories\":[\"exposedData\",\"vulnerableScripts\"],\"maxPages\":50}", + "description": "Scan example.com and up to 50 pages within 2 link-depth to identify exposed data and vulnerable scripts." + }, + { + "inputJson": "{\"targetUrl\":\"https://secureportal.company.com\",\"authentication\":{\"username\":\"user1\",\"password\":\"pass123\"},\"riskCategories\":[\"insecureHeaders\",\"vulnerableScripts\"]}", + "description": "Authenticated scan of secureportal.company.com to detect insecure headers and vulnerable scripts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "web-scraping.createPayment", + "description": "This tool accepts a target payment gateway web page URL and payment details to simulate and create a payment entry by programmatically filling out the payment form on the web page. It submits the form and returns the response confirmation details or error messages extracted from the site, facilitating automated payment testing or data entry workflows.", + "category": "web-scraping", + "parameters": [ + { + "name": "paymentPageUrl", + "type": "string", + "description": "The URL of the payment page where the payment form is located.", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentDetails", + "type": "object", + "description": "An object representing the payment form fields and their values, e.g., card number, expiry, CVV, amount, currency, and other required inputs.", + "required": true, + "defaultValue": "" + }, + { + "name": "waitForSelector", + "type": "string", + "description": "CSS selector to wait for indicating that the page and form are fully loaded before attempting to fill in details.", + "required": false, + "defaultValue": "" + }, + { + "name": "headless", + "type": "boolean", + "description": "Whether to run browser automation in headless mode (no UI) or visible mode for debugging.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeout", + "type": "number", + "description": "Maximum time in milliseconds to wait for the form to load and submission response before timing out.", + "required": false, + "defaultValue": "30000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the payment submission, confirmation message, and any error information scraped from the result page." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate making payments through web forms on third-party payment gateway pages, such as for automated testing of payment flows or bulk payment data entry. It simulates user interaction to fill and submit payment forms and extracts confirmation or error details from the resulting page.", + "limitations": "This tool cannot bypass CAPTCHAs, multi-factor authentication, or sites with bot protection. It requires the target page to have a standard HTML form and consistent selectors. It does not process actual payment authorization beyond form submission simulation and depends on the structure of the webpage that may change.", + "examples": [ + "Submit payment details to a sandbox payment page and retrieve confirmation code.", + "Automate filling out multiple payment forms on a vendor site for bulk order processing.", + "Test payment form submission in a staging environment with different card details." + ] + }, + "tags": [ + "web scraping", + "payment", + "automation", + "form submission", + "browser automation" + ], + "examples": [ + { + "inputJson": "{\"paymentPageUrl\":\"https://example.com/checkout\",\"paymentDetails\":{\"cardNumber\":\"4111111111111111\",\"expiryMonth\":\"12\",\"expiryYear\":\"2025\",\"cvv\":\"123\",\"amount\":\"100.00\",\"currency\":\"USD\"},\"waitForSelector\":\"form.payment-form\",\"headless\":true,\"timeout\":30000}", + "description": "Submit a basic credit card payment form on example checkout page in headless mode." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "web-scraping.createOpportunity", + "description": "This tool extracts business opportunity data by scraping specified websites' publicly available listings. It accepts target URLs and filtering criteria, performs content retrieval and parsing, and returns structured opportunity details such as company name, description, location, contact info, and relevant dates.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrls", + "type": "array", + "description": "List of website URLs to scrape opportunities from, must be accessible and publicly available.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "Array of keywords or phrases to filter and identify relevant opportunities within the scraped content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxItems", + "type": "number", + "description": "Maximum number of opportunities to retrieve per URL to limit output size.", + "required": false, + "defaultValue": "50" + }, + { + "name": "includeContactInfo", + "type": "boolean", + "description": "Flag indicating if contact email or phone number should be extracted when available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "scrapeTimeout", + "type": "number", + "description": "Maximum time in seconds to wait for a single page scrape before timing out.", + "required": false, + "defaultValue": "15" + }, + { + "name": "userAgent", + "type": "string", + "description": "Custom User-Agent string to use during HTTP requests when scraping.", + "required": false, + "defaultValue": "Mozilla/5.0 (compatible; TPMJS Bot/1.0)" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array 'opportunities' where each item includes scraped opportunity fields: sourceUrl, title, companyName, description, location, contactInfo, postedDate, and url." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically gather and structure business opportunity listings from multiple public websites, aiding market research, sales prospecting, or competitive intelligence efforts. It is valuable when manual browsing is inefficient and structured data is required for analysis or automated workflows.", + "limitations": "Cannot scrape websites behind paywalls, login forms, or hidden content loaded dynamically without additional scripting. May not accurately parse all website layouts or unstructured data. Legal compliance with site scraping policies must be ensured by users.", + "examples": [ + "Find startup funding opportunities posted on given technology incubator websites.", + "Gather vendor contract bids from public government procurement portals matching renewable energy keywords.", + "Retrieve partnership opportunities listed on business collaboration platforms with contact details for initial outreach." + ] + }, + "tags": [ + "web-scraping", + "business", + "opportunity", + "data-extraction", + "market-intelligence", + "lead-generation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"targetUrls\":[\"https://example.com/opportunities\"],\"keywords\":[\"renewable energy\",\"solar\"],\"maxItems\":10,\"includeContactInfo\":true}", + "description": "Scrape up to 10 renewable energy-related opportunities from a specified website, including contact info." + }, + { + "inputJson": "{\"targetUrls\":[\"https://government-procurements.gov/tenders\"],\"keywords\":[],\"maxItems\":20,\"includeContactInfo\":false}", + "description": "Extract up to 20 latest procurement tenders from a government portal without contact details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "agent-management.analyzeMention", + "description": "Analyzes a given mention (text snippet referring to a person, product, topic, or entity) within communication channels such as chat logs, emails, or social media comments. It processes the mention text to detect sentiment, intent, entity type, and relevance, returning a structured analysis report suitable for agent or bot decision-making.", + "category": "agent-management", + "parameters": [ + { + "name": "mentionText", + "type": "string", + "description": "The exact text of the mention to analyze, e.g. a name, product, or topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextText", + "type": "string", + "description": "Optional surrounding text or conversation context to improve mention analysis accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') of the mention and context for correct linguistic processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the mention (default true).", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeIntent", + "type": "boolean", + "description": "Whether to detect the mention's possible intent or purpose (default true).", + "required": false, + "defaultValue": "true" + }, + { + "name": "entityTypes", + "type": "array", + "description": "List of entity categories to classify the mention into, e.g. ['person','product','organization']. Empty means all supported types.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis containing detected entity type, sentiment score with label, intent classification, confidence scores, and relevance indicators." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to understand the nature of references made to entities within communication text streams or conversational data to drive appropriate responses, trigger workflows, or log analytics. It helps agents interpret how mentions relate to user intent and emotional context, improving interaction quality and decision-making.", + "limitations": "The tool relies on text input without audio or video cues, thus nuanced sarcasm or sarcasm detection is limited. It may not resolve ambiguous mentions without sufficient context or recognize highly domain-specific entities if not trained accordingly.", + "examples": [ + "Analyze a mention 'Acme Corp' in a customer complaint email to detect if sentiment is negative and intent is potential cancellation request.", + "Detect if a product mentioned in social media comment 'I love the new Zenith headphones' conveys positive sentiment and identify 'Zenith headphones' as a product entity.", + "Interpret a chat message mention 'Need to escalate this to the engineering team' to detect intent (escalation) and entities (engineering team)." + ] + }, + "tags": [ + "analysis", + "communication", + "entity recognition", + "sentiment analysis", + "intent detection", + "agent-management", + "mention" + ], + "examples": [ + { + "inputJson": "{\"mentionText\":\"John Doe\",\"contextText\":\"I had a great meeting with John Doe regarding the contract.\",\"language\":\"en\",\"analyzeSentiment\":true,\"analyzeIntent\":true,\"entityTypes\":[\"person\"]}", + "description": "Analyzes a mention of a person 'John Doe' in the context of a meeting conversation to identify entity and sentiment." + }, + { + "inputJson": "{\"mentionText\":\"Acme Product X\",\"contextText\":\"The Acme Product X has several issues that need fixing.\",\"language\":\"en\",\"analyzeSentiment\":true,\"analyzeIntent\":true,\"entityTypes\":[\"product\"]}", + "description": "Analyzes a product mention with negative sentiment in a customer support comment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Mention", + "context": null + } + }, + { + "name": "web-scraping.createQuery", + "description": "This tool generates a structured web scraping query configuration based on user inputs including target URL, CSS selectors or XPath expressions, and data extraction rules. It validates and outputs a JSON query object usable by web scraping engines to extract specified data from web pages.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the webpage to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectors", + "type": "array", + "description": "An array of CSS selectors or XPath strings specifying elements to extract data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractionType", + "type": "string", + "description": "Type of data to extract: 'text', 'attribute', or 'html'.", + "required": true, + "defaultValue": "text" + }, + { + "name": "attributeName", + "type": "string", + "description": "If extractionType is 'attribute', specify the attribute name to extract (e.g. 'href').", + "required": false, + "defaultValue": "" + }, + { + "name": "paginationSelector", + "type": "string", + "description": "CSS selector or XPath for pagination control to scrape multiple pages, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "delayBetweenRequests", + "type": "number", + "description": "Delay in milliseconds between requests to avoid overload or detection.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "maxPages", + "type": "number", + "description": "Maximum number of pages to scrape when pagination is used.", + "required": false, + "defaultValue": "1" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers included when making requests to the target URL.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON object representing the scraping query configuration including URL, selectors, extraction types, pagination settings, and headers." + }, + "aiAgent": { + "useCase": "Use when needing to programmatically define and generate configuration queries for a web scraper targeting specific data on web pages. Helps automate construction of extraction rules including handling pagination and request headers.", + "limitations": "Does not perform the actual scraping or handle dynamic JavaScript rendered content; only generates query configurations. Extraction accuracy depends on correct selectors and static HTML structure.", + "examples": [ + "Create a query to extract text titles and links from product listings on a page with pagination.", + "Generate a scraping query targeting multiple CSS selectors extracting attribute 'src' from image elements.", + "Build a query configuration with custom headers and delay for polite scraping of a blog website." + ] + }, + "tags": [ + "web-scraping", + "query-generation", + "data-extraction", + "automation", + "pagination", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com/products\",\"selectors\":[\".product-title\",\".product-price\"],\"extractionType\":\"text\",\"paginationSelector\":\".next-page\",\"delayBetweenRequests\":1500,\"maxPages\":5}", + "description": "Create a scraping query for product titles and prices with pagination up to 5 pages and 1.5 seconds delay between requests." + }, + { + "inputJson": "{\"targetUrl\":\"https://news.example.org\",\"selectors\":[\"article h2 a\"],\"extractionType\":\"attribute\",\"attributeName\":\"href\",\"delayBetweenRequests\":500}", + "description": "Generate a query to extract article links from a news site, extracting the href attribute of anchor tags." + }, + { + "inputJson": "{\"targetUrl\":\"https://images.example.net\",\"selectors\":[\"img.featured\"],\"extractionType\":\"attribute\",\"attributeName\":\"src\",\"headers\":{\"User-Agent\":\"MyScraperBot/1.0\"}}", + "description": "Build a scraping query to extract image source URLs from featured images including a custom User-Agent header." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "web-scraping.createVariable", + "description": "Creates a reusable variable representing a web page data element by specifying its CSS selector or XPath, enabling subsequent extraction or manipulation during web scraping tasks. Accepts a name, a selector string, selector type, and optional context URL. Outputs a variable definition object for use in scraping workflows.", + "category": "web-scraping", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique name to assign to the variable for reference in scraping scripts or workflows.", + "required": true, + "defaultValue": "" + }, + { + "name": "selector", + "type": "string", + "description": "CSS selector or XPath expression that identifies the target element(s) on the web page.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectorType", + "type": "string", + "description": "Type of selector used: 'css' for CSS selector or 'xpath' for XPath expression.", + "required": true, + "defaultValue": "css" + }, + { + "name": "contextUrl", + "type": "string", + "description": "Optional base URL specifying the web page context where the selector applies, improving variable scope clarity.", + "required": false, + "defaultValue": "" + }, + { + "name": "isMultiple", + "type": "boolean", + "description": "Indicates if the selector matches multiple elements, affecting extraction logic (array vs single value).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the defined variable containing its name, selector, selector type, context URL, and multiselect flag for integration into scraping workflows." + }, + "aiAgent": { + "useCase": "Use this tool when building or updating web scraping workflows that require defining reusable variables targeting specific elements on web pages, identified via CSS selectors or XPath. This facilitates dynamic and maintainable extraction scripts by abstracting element selection details.", + "limitations": "This tool only defines selector variables but does not perform the actual data extraction or handle complex interactions like JavaScript rendering or multi-page navigation.", + "examples": [ + "Define a variable 'productTitle' that uses a CSS selector '.product-name' on a product page.", + "Create a variable 'priceList' with an XPath selector matching multiple price elements on an e-commerce category page.", + "Specify a variable with a context URL to disambiguate selectors when scraping multiple sites concurrently." + ] + }, + "tags": [ + "web-scraping", + "variable-creation", + "data-extraction", + "css-selector", + "xpath", + "automation" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"productTitle\",\"selector\":\".product-name\",\"selectorType\":\"css\",\"contextUrl\":\"https://example.com/products/123\",\"isMultiple\":false}", + "description": "Define a variable named 'productTitle' targeting a single product name element using CSS selector on a specific product page." + }, + { + "inputJson": "{\"variableName\":\"priceList\",\"selector\":\"//div[@class='price']\",\"selectorType\":\"xpath\",\"contextUrl\":\"\",\"isMultiple\":true}", + "description": "Create a variable 'priceList' using XPath to select multiple price elements on a generic page." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "web-scraping.createTable", + "description": "Extracts HTML table data from a specified webpage URL using a CSS selector or XPath expression. Parses the targeted table into a structured JSON array representing rows and columns, including header detection, and returns the data for use in data processing or analysis.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the webpage to scrape the table from.", + "required": true, + "defaultValue": "" + }, + { + "name": "selector", + "type": "string", + "description": "CSS selector or XPath expression identifying the target HTML table within the page.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectorType", + "type": "string", + "description": "Type of selector used: either 'css' for CSS selector or 'xpath' for XPath expression.", + "required": false, + "defaultValue": "css" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include table headers as keys for columns if headers exist.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the webpage to load before scraping.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted table data as an array of row objects or arrays, including optional headers if requested, or an error message if failed." + }, + "aiAgent": { + "useCase": "Use when a structured extraction of table data from a live webpage is needed, for example, to automatically gather financial data, sports stats, product listings, or any tabular data presented on a public website. Enables converting visual tables into machine-readable JSON format for downstream processing.", + "limitations": "Cannot extract tables dynamically rendered without waiting for JavaScript if page load delays exceed timeout. Accuracy depends on correctness of selector and table structure consistency. Does not process nested tables or complex merged cells perfectly. Does not authenticate or handle pages behind login.", + "examples": [ + "Extract the stock prices table from a financial website's main page.", + "Scrape a list of products and prices from an e-commerce category page's product table.", + "Retrieve player statistics from a sports league official site table." + ] + }, + "tags": [ + "web scraping", + "HTML", + "table extraction", + "data extraction", + "automation", + "JSON output" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/stocks\",\"selector\":\"table#stockTable\",\"selectorType\":\"css\",\"includeHeaders\":true,\"timeoutSeconds\":10}", + "description": "Extract stock prices from the main stock table identified by CSS selector on a financial website." + }, + { + "inputJson": "{\"url\":\"https://example.com/products\",\"selector\":\"//table[contains(@class,'product-list')]\",\"selectorType\":\"xpath\",\"includeHeaders\":true,\"timeoutSeconds\":15}", + "description": "Scrape product listings from an e-commerce site using an XPath to target the product list table." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "web-scraping.createVideo", + "description": "This tool extracts video content and metadata from specified web pages. Given a URL and optional selectors, it downloads available video files or streams, captures video metadata like title, duration, and format, and outputs a structured video object including the video URL, metadata, and base64 preview thumbnail if available.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web page URL to scrape for video content.", + "required": true, + "defaultValue": "" + }, + { + "name": "videoSelector", + "type": "string", + "description": "CSS selector to identify video elements on the page (e.g., 'video, iframe'). Defaults to common video tags if omitted.", + "required": false, + "defaultValue": "video,iframe" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to extract metadata such as title, duration, and format from the video source if available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxVideoSizeMB", + "type": "number", + "description": "Maximum video size in megabytes to download. Videos larger than this size will be skipped to save resources. Default is 50 MB.", + "required": false, + "defaultValue": "50" + }, + { + "name": "fetchThumbnail", + "type": "boolean", + "description": "Whether to attempt to generate or fetch a base64-encoded preview thumbnail image for the video.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of video items found, each including video URL, metadata fields (title, duration, format), and a base64 thumbnail string if available." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically retrieve videos embedded in web pages, such as for content aggregation, video cataloging, or offline analysis. It helps automate extraction of video files and their relevant metadata for further processing or storage.", + "limitations": "Cannot access videos behind complex authentication or paywalls, and might fail on dynamically loaded content if JavaScript execution is not supported. Thumbnail generation may be approximate or unavailable for some formats or streams.", + "examples": [ + "Extract all videos from a news site article URL.", + "Download the main video and metadata from a public tutorial webpage.", + "Retrieve video URLs and preview thumbnails from a sports highlight page." + ] + }, + "tags": [ + "web scraping", + "video extraction", + "media", + "content aggregation", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/news/article123\",\"videoSelector\":\"video,iframe\",\"includeMetadata\":true,\"maxVideoSizeMB\":50,\"fetchThumbnail\":true}", + "description": "Extract all video elements from a news article webpage, including metadata and thumbnails." + }, + { + "inputJson": "{\"url\":\"https://tutorials.example.org/lesson1\",\"includeMetadata\":true,\"fetchThumbnail\":false}", + "description": "Scrape video URLs and metadata from an online tutorial page, without fetching thumbnails." + }, + { + "inputJson": "{\"url\":\"https://sports.example.com/highlights\",\"videoSelector\":\"iframe\",\"maxVideoSizeMB\":20}", + "description": "Retrieve video iframes containing sports highlights, limiting video downloads to 20 MB max." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "agent-management.analyzeForecast", + "description": "Analyzes business forecast data provided as time series or scenario inputs to identify trends, risks, and actionable insights. Accepts forecast data and parameters for analysis methods; produces a detailed report highlighting forecast accuracy, variance, key drivers, and recommendations for agent or business strategy adjustments.", + "category": "agent-management", + "parameters": [ + { + "name": "forecastData", + "type": "object", + "description": "Structured business forecast data including historical values and projections, provided as time series or scenario sets.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisMethod", + "type": "string", + "description": "The approach to use for analysis such as 'statistical', 'machineLearning', or 'scenarioComparison'.", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "forecastHorizonMonths", + "type": "number", + "description": "Number of upcoming months in the forecast period to analyze. If omitted, analyzes entire dataset.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRiskAssessment", + "type": "boolean", + "description": "Whether to include risk assessment details in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (0-1) for statistical analysis and uncertainty quantification.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "keyMetrics", + "type": "array", + "description": "List of specific forecast metrics or KPIs to focus the analysis on if not all.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive analysis report containing summary statistics, identified trends, variance explanations, risk assessment, and actionable recommendations tailored for agent or business strategy improvements." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to interpret complex business forecast data to generate insights, detect risks, or recommend adjustments for planning or agent task prioritization. It helps agents understand forecast reliability, underlying trends, and critical factors affecting future outcomes.", + "limitations": "The tool does not generate forecasts itself; it requires pre-prepared forecast data. It may not capture real-time changes or external qualitative factors not embedded in the forecast data.", + "examples": [ + "Analyze the quarterly sales forecast to identify risks and suggest adjustments.", + "Evaluate the month-by-month forecast data for a product launch and highlight key drivers.", + "Compare multiple forecast scenarios and present the potential impact on resource planning." + ] + }, + "tags": [ + "forecast analysis", + "business intelligence", + "risk assessment", + "agent-management", + "time series", + "scenario evaluation" + ], + "examples": [ + { + "inputJson": "{\"forecastData\":{\"historical\":[{\"month\":\"2023-01\",\"value\":1000},{\"month\":\"2023-02\",\"value\":1050}],\"projections\":[{\"month\":\"2023-03\",\"value\":1100},{\"month\":\"2023-04\",\"value\":1150}]},\"analysisMethod\":\"statistical\",\"forecastHorizonMonths\":4,\"includeRiskAssessment\":true,\"confidenceLevel\":0.95,\"keyMetrics\":[\"sales\"]}", + "description": "Analyze a 4-month sales forecast with statistical methods including risk assessment at 95% confidence." + }, + { + "inputJson": "{\"forecastData\":{\"scenarios\":[{\"name\":\"base\",\"values\":[5000,5200,5400]},{\"name\":\"optimistic\",\"values\":[5500,5800,6100]},{\"name\":\"pessimistic\",\"values\":[4800,4600,4300]}]},\"analysisMethod\":\"scenarioComparison\",\"includeRiskAssessment\":false}", + "description": "Compare multiple sales scenarios to identify best and worst case outcomes without risk assessment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Forecast", + "context": null + } + }, + { + "name": "agent-management.analyzeCitation", + "description": "Analyzes a given citation text to extract key metadata such as authors, publication title, date, and identifiers (DOI, ISBN). It also evaluates citation format and checks for completeness and consistency. Input is a raw citation string; output includes parsed structured data and quality assessment of the citation.", + "category": "agent-management", + "parameters": [ + { + "name": "citationText", + "type": "string", + "description": "The raw citation text to be analyzed (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "Expected citation style to validate against (e.g., APA, MLA); if provided, the tool checks formatting accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the citation text to improve parsing accuracy (e.g., 'en').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing structured citation metadata (authors, title, year, identifiers), detected citation style, and an assessment report on completeness and formatting accuracy." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives unstructured citation strings that need to be parsed and validated for metadata extraction, consistency checking, or to support bibliography management and agent tasks that require understanding citation contents. It helps agents verify citation quality or convert raw citations into structured data.", + "limitations": "The tool relies on recognizable citation styles and sufficient citation detail; very incomplete or unconventional citations may not be parsed accurately. It does not access external databases for deep validation beyond format and internal consistency checks.", + "examples": [ + "Analyze this citation to extract author and publication info: 'Smith, J. (2020). Advances in AI Research. Journal of AI Studies, 34(2), 112-130.'", + "Check if the following citation meets APA style standards: 'Johnson, L., & Wong, T. (2019). Machine learning basics. Machine Learning Journal, 23(5), 45-60.'" + ] + }, + "tags": [ + "analysis", + "citation", + "bibliography", + "metadata extraction", + "format validation", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"citationText\":\"Smith, J. (2020). Advances in AI Research. Journal of AI Studies, 34(2), 112-130.\",\"citationStyle\":\"APA\",\"language\":\"en\"}", + "description": "Parse and validate a typical APA style journal article citation." + }, + { + "inputJson": "{\"citationText\":\"Johnson, L., & Wong, T. (2019). Machine learning basics. Machine Learning Journal, 23(5), 45-60.\",\"citationStyle\":\"APA\",\"language\":\"en\"}", + "description": "Validate APA style citation and extract key metadata fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Citation", + "context": null + } + }, + { + "name": "agent-management.downloadHTML", + "description": "This tool downloads HTML content from a specified URL or from a provided HTML string and saves it as a downloadable file. It accepts either a URL to fetch the HTML data or a raw HTML string. The output is a downloadable HTML file content encoded as a base64 string, suitable for saving or sharing.", + "category": "agent-management", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "A valid URL string pointing to the HTML page to download. Required if htmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content string to be saved as a downloadable file. Required if sourceUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired name of the downloaded HTML file, including the .html extension.", + "required": true, + "defaultValue": "download.html" + }, + { + "name": "includeExternalResources", + "type": "boolean", + "description": "If true and sourceUrl is provided, attempts to inline external CSS and JavaScript resources for offline completeness.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64 encoded HTML file and metadata like file name and MIME type" + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to download an HTML page from a URL or save provided raw HTML content as a standalone downloadable file. It is useful for archiving, sharing, or processing HTML pages as files in downstream workflows.", + "limitations": "Cannot run JavaScript or process dynamic content on pages; only raw HTML content is downloaded or saved. When fetching from URLs, external resource inlining is limited and may not capture all dynamic assets.", + "examples": [ + "Download HTML content from 'https://example.com' and save as 'example.html'.", + "Save provided raw HTML string as 'snippet.html'.", + "Download HTML from URL with inlining of external CSS and JS resources for offline use." + ] + }, + "tags": [ + "agent-management", + "download", + "html", + "web", + "file", + "content-fetch", + "offline" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://www.example.com\",\"fileName\":\"example.html\",\"includeExternalResources\":false}", + "description": "Download the HTML content from https://www.example.com and save it as 'example.html' without inlining resources." + }, + { + "inputJson": "{\"htmlContent\":\"

Hello World

\",\"fileName\":\"hello.html\"}", + "description": "Save the given raw HTML string as 'hello.html' file content." + }, + { + "inputJson": "{\"sourceUrl\":\"https://www.example.com\",\"fileName\":\"example_inlined.html\",\"includeExternalResources\":true}", + "description": "Download from URL and attempt to inline external CSS/JS resources for offline use in 'example_inlined.html'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "HTML", + "context": null + } + }, + { + "name": "agent-management.renderVideo", + "description": "Renders a video by composing input media assets, scripts, and AI-generated content to produce a finalized video file. Accepts parameters like media sources, voiceover scripts, rendering options, and outputs the video URL and metadata for use in AI agent workflows.", + "category": "agent-management", + "parameters": [ + { + "name": "mediaAssets", + "type": "array", + "description": "List of media asset objects including images, clips, or animations to include in the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "voiceoverScript", + "type": "string", + "description": "Script text for AI to generate voiceover narration for the video.", + "required": false, + "defaultValue": "" + }, + { + "name": "renderQuality", + "type": "string", + "description": "Output video quality setting, e.g., '720p', '1080p', or '4K'.", + "required": false, + "defaultValue": "1080p" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "Maximum duration of the rendered video in seconds.", + "required": false, + "defaultValue": "60" + }, + { + "name": "backgroundMusicUrl", + "type": "string", + "description": "URL to background music track to overlay beneath voiceover and media.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to generate and embed subtitles from the voiceover script.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Video output format, such as 'mp4', 'webm', or 'mov'.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "renderMode", + "type": "string", + "description": "Rendering style mode, e.g., 'realistic', 'animated', or 'slideshow'.", + "required": false, + "defaultValue": "realistic" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated video URL, metadata including duration, resolution, and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce rich media presentations or demonstrations by assembling multiple media assets, scripts, and audio into a cohesive video output suitable for marketing, training, or documentation. It automates the video rendering process as part of multi-modal AI agent responses.", + "limitations": "Cannot create fully custom animations beyond supplied media assets; video rendering time depends on complexity and may not be instantaneous; voiceover quality depends on integrated TTS engine capabilities.", + "examples": [ + "Create a 30-second video with supplied images and a scripted voiceover for product promotion.", + "Render a video slideshow with background music and subtitles from the given script.", + "Generate a 1080p mp4 video combining clips and AI narration in realistic mode." + ] + }, + "tags": [ + "video", + "rendering", + "media", + "agent-management", + "voiceover", + "multimodal" + ], + "examples": [ + { + "inputJson": "{\"mediaAssets\":[{\"type\":\"image\",\"url\":\"https://example.com/image1.jpg\"},{\"type\":\"image\",\"url\":\"https://example.com/image2.jpg\"}],\"voiceoverScript\":\"Welcome to our product demo.\",\"renderQuality\":\"1080p\",\"durationSeconds\":30,\"backgroundMusicUrl\":\"https://example.com/music.mp3\",\"includeSubtitles\":true,\"outputFormat\":\"mp4\",\"renderMode\":\"realistic\"}", + "description": "Render a 30-second 1080p video with images, voiceover, background music, subtitles, and realistic style." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Video", + "context": null + } + }, + { + "name": "agent-management.uploadAttachment", + "description": "Uploads a media attachment file (such as image, video, audio, or document) for an AI agent or bot. It accepts the file data (base64-encoded or URL), file type, and metadata, validates and stores the attachment, returning a unique attachment ID and access URL upon success.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "The unique identifier of the AI agent or bot to associate the attachment with.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the file including extension to identify the attachment.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file (e.g., image/png, audio/mpeg) to validate content type.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded content of the file to upload. Required if fileUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileUrl", + "type": "string", + "description": "Secure URL of the file to upload. Required if fileContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata about the attachment such as description, tags, or creation date.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Determines if the attachment is private (restricted access) or public.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the attachmentId (unique identifier), storageUrl (URL to access the stored attachment), agentId, and uploadStatus indicating success or failure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add media files or documents to its profile or workflow, such as uploading an image for avatar customization, adding training video/audio files, or attaching reference documents. It helps manage attachments reliably with metadata and access controls.", + "limitations": "This tool does not handle file content validation beyond MIME type checks, nor does it support complex file transformations or editing. Large files might require chunking externally. It cannot fetch files from URLs requiring authentication.", + "examples": [ + "Upload a JPEG image as an avatar for agent ID 'agent123'.", + "Attach a PDF document via URL with descriptive metadata to agent 'financialBot'.", + "Upload an audio file in base64 format as training data for an agent." + ] + }, + "tags": [ + "upload", + "attachment", + "media", + "agent-management", + "bot", + "file", + "storage" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"fileName\":\"avatar.jpg\",\"fileType\":\"image/jpeg\",\"fileContent\":\"/9j/4AAQSk...(base64 string)...\",\"isPrivate\":true}", + "description": "Uploading a private JPEG avatar image for agent 'agent123'." + }, + { + "inputJson": "{\"agentId\":\"financialBot\",\"fileName\":\"report.pdf\",\"fileType\":\"application/pdf\",\"fileUrl\":\"https://example.com/reports/q4.pdf\",\"metadata\":{\"description\":\"Q4 financial report\",\"tags\":[\"finance\",\"report\"]},\"isPrivate\":false}", + "description": "Uploading a public PDF report via URL with metadata for agent 'financialBot'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Attachment", + "context": null + } + }, + { + "name": "agent-management.renderDashboard", + "description": "Renders an interactive dashboard presenting analytics of AI agent performance. Accepts filtering parameters to select agents, metrics, and time ranges, processes data aggregation and visualization, and outputs a dashboard URL or embedded HTML to display agent management insights.", + "category": "agent-management", + "parameters": [ + { + "name": "agentIds", + "type": "array", + "description": "List of AI agent IDs to include in the dashboard", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "array", + "description": "Performance metrics to display such as response time, error rate, or throughput", + "required": true, + "defaultValue": "[\"responseTime\",\"errorRate\"]" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) for data range to include in the dashboard", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) for data range to include in the dashboard", + "required": false, + "defaultValue": "" + }, + { + "name": "dashboardType", + "type": "string", + "description": "Type of dashboard visualization: summary, detailed, or custom", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include graphical charts like line and bar graphs in the dashboard", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the rendered dashboard output: 'url' for hosted link or 'html' for embeddable code", + "required": false, + "defaultValue": "url" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered dashboard output as a URL or HTML string along with metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a comprehensive visual overview of AI agents' operational metrics for monitoring, reporting, or analysis over specified time frames. It supports filtering for specific agents and metrics to tailor the dashboard to user needs.", + "limitations": "Cannot create dashboards for non-agent entities or visualize metrics not supported by the underlying data source. Does not provide raw data export, only visualization outputs.", + "examples": [ + "Render a performance dashboard for agents A1 and A2 showing error rate and throughput over the last month as an embeddable HTML.", + "Generate a detailed dashboard with charts for all agents focusing on response time between two specific dates, returning a URL to access it.", + "Create a summary dashboard with default metrics for selected agents, delivered as a hosted dashboard link." + ] + }, + "tags": [ + "agent-management", + "dashboard", + "analytics", + "rendering", + "visualization", + "performance" + ], + "examples": [ + { + "inputJson": "{\"agentIds\":[\"agentA1\",\"agentA2\"],\"metrics\":[\"errorRate\",\"throughput\"],\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\",\"dashboardType\":\"detailed\",\"includeCharts\":true,\"outputFormat\":\"html\"}", + "description": "Render a detailed HTML dashboard with charts for error rate and throughput of agents A1 and A2 for May 2024." + }, + { + "inputJson": "{\"metrics\":[\"responseTime\"],\"dashboardType\":\"summary\",\"includeCharts\":true,\"outputFormat\":\"url\"}", + "description": "Generate a summary dashboard URL showing response time metric for all agents with default date range." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Dashboard", + "context": null + } + }, + { + "name": "agent-management.sendChannel", + "description": "Sends a message through a specified communication channel to targeted recipients. Accepts channel type, message content, recipient details, and optional metadata to deliver notifications, alerts, or updates via email, SMS, chat apps, or webhooks. Returns message delivery status and response details.", + "category": "agent-management", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "The type of communication channel to use (e.g., 'email', 'sms', 'slack', 'webhook').", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The text or payload of the message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as email addresses, phone numbers, or user IDs.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Optional subject line for email or messaging channels that support it.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata to customize message sending, e.g., priority, scheduled send time, or custom headers.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the delivery status (success or failure), details about any errors, and possibly message IDs or response metadata from the channel provider." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to communicate or notify users or other systems via multiple communication channels. It is suitable for sending transactional messages, alerts, reminders, or general notifications programmatically, adapting to channel-specific requirements.", + "limitations": "This tool does not support message content translation, attachment uploads, or adaptive conversation management. It relies on valid channel configuration and recipient formatting, which must be handled externally.", + "examples": [ + "Send a notification message via Slack to user U12345.", + "Deliver an email with a subject and body to a list of customer emails.", + "Send an SMS alert to multiple phone numbers with priority metadata." + ] + }, + "tags": [ + "communication", + "message", + "notification", + "channel", + "multi-channel", + "agent-management", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"email\",\"messageContent\":\"Your appointment is confirmed.\",\"recipients\":[\"user@example.com\"],\"subject\":\"Appointment Confirmation\",\"metadata\":{\"priority\":\"high\"}}", + "description": "Send a high-priority email to confirm an appointment." + }, + { + "inputJson": "{\"channelType\":\"sms\",\"messageContent\":\"Alert: Server CPU usage is critically high.\",\"recipients\":[\"+15551234567\"],\"metadata\":{\"scheduledTime\":\"2024-06-01T15:30:00Z\"}}", + "description": "Schedule an SMS alert for system administrators regarding server status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "agent-management.uploadXML", + "description": "Uploads XML configuration files to create or update AI agents in the management system. Accepts XML content as a string or file input, validates structure against predefined schemas, and applies configurations for agents, returning a success or detailed error report.", + "category": "agent-management", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "The XML content as a string to be uploaded for agent configuration.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag to indicate if existing agent configurations should be overwritten.", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, only validate the XML without applying changes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaVersion", + "type": "string", + "description": "Version of the XML schema to validate against; defaults to latest.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object detailing upload result, including success status, message, and any validation errors." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload and apply XML-based configurations for AI agents, such as onboarding new bots or modifying existing ones via standardized XML files. It aids in automated agent management workflows relying on XML data exchange.", + "limitations": "Cannot parse or upload XML files that do not conform to supported schema versions. Does not support uploading non-XML agent configurations or partial updates within XML. Only handles XML formatted for agent configurations within the management system.", + "examples": [ + "Upload a new XML configuration to add a bot.", + "Validate an XML file's correctness without applying changes.", + "Overwrite an existing agent configuration with updated XML content." + ] + }, + "tags": [ + "agent-management", + "upload", + "XML", + "configuration", + "validation", + "AI agents" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"bot123TestBot\",\"overwriteExisting\":false,\"validateOnly\":false,\"schemaVersion\":\"1.0\"}", + "description": "Upload a new agent configuration XML to create a bot named TestBot." + }, + { + "inputJson": "{\"xmlContent\":\"bot123UpdatedBot\",\"overwriteExisting\":true,\"validateOnly\":false,\"schemaVersion\":\"1.0\"}", + "description": "Overwrite existing bot configuration with updated XML." + }, + { + "inputJson": "{\"xmlContent\":\"bot123TestBot\",\"overwriteExisting\":false,\"validateOnly\":true,\"schemaVersion\":\"1.0\"}", + "description": "Validate XML for correctness without applying changes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "XML", + "context": null + } + }, + { + "name": "agent-management.uploadHTML", + "description": "Uploads an HTML content string to a specified AI agent's storage or configuration environment. Accepts raw HTML as a string, optionally targeting a specific agent identifier and storage location, and returns a confirmation with upload status and any error messages.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "The unique identifier of the AI agent to which the HTML content will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML content string to be uploaded to the agent's environment.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageLocation", + "type": "string", + "description": "Optional target storage location or namespace within the agent's configuration where the HTML should be saved.", + "required": false, + "defaultValue": "default" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite existing HTML content at the target location if present.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, including success boolean, message string for confirmation or error details, and the target storage location." + }, + "aiAgent": { + "useCase": "Use this tool when you need to update or initialize an AI agent's HTML-based resources, such as front-end UI templates, configuration pages, or documentation content hosted in HTML format. Enables managing and customizing agent HTML content programmatically within the agent management lifecycle.", + "limitations": "Does not parse or validate HTML content correctness or security; purely uploads raw content. Cannot directly render or serve HTML; it must be integrated into agent environments separately.", + "examples": [ + "Upload HTML to set a new configuration dashboard for an agent.", + "Replace outdated HTML template in the agent's UI module with new design.", + "Add supplemental HTML-based help documentation to a specific agent's resource folder." + ] + }, + "tags": [ + "agent-management", + "upload", + "HTML", + "configuration", + "resource-management" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"htmlContent\":\"

Welcome

\",\"storageLocation\":\"ui/templates\",\"overwriteExisting\":true}", + "description": "Upload a simple HTML welcome page to the UI templates folder of agent 'agent123', overwriting existing content." + }, + { + "inputJson": "{\"agentId\":\"agent456\",\"htmlContent\":\"

Agent documentation updated.

\",\"storageLocation\":\"docs\",\"overwriteExisting\":false}", + "description": "Upload new documentation HTML fragment to the 'docs' location without overwriting existing content if present." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "HTML", + "context": null + } + }, + { + "name": "agent-management.downloadAttachment", + "description": "Downloads an attachment file associated with a specified AI agent interaction or message. The tool accepts the agent ID and attachment ID, optionally a download path, retrieves the attachment from the agent's storage or messaging system, and saves it locally or returns the file data in a structured format.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "Unique identifier of the AI agent owning the attachment.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachmentId", + "type": "string", + "description": "Unique identifier of the attachment to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "downloadPath", + "type": "string", + "description": "Optional local file path where the attachment will be saved. If omitted, the file data is returned instead.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the download, file metadata, and either the local file path (if saved) or the binary file data as a base64 string." + }, + "aiAgent": { + "useCase": "Use this tool to retrieve and download media or document files (attachments) related to interactions managed by an AI agent or bot. It is ideal when an agent needs to access past or current message attachments for processing, analysis, or storage. The tool enables structured access either by saving a file locally or returning the content in-memory.", + "limitations": "This tool cannot fetch attachments that do not exist or are not accessible due to permissions. It does not handle partial downloads or streaming. It assumes the agent and attachment IDs are valid and the attachment is supported for download.", + "examples": [ + "Download the latest chat conversation attachment for agent 123 and save it as a file.", + "Retrieve an attachment file by attachment ID from agent 456 and get its binary data without saving locally.", + "Download an image attachment from agent 789 and specify a custom directory path for saving." + ] + }, + "tags": [ + "agent", + "attachment", + "download", + "file-management", + "media", + "bot", + "storage" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"attachmentId\":\"attach789\",\"downloadPath\":\"/tmp/attachment.pdf\"}", + "description": "Download attachment with ID attach789 for agent123 and save it to /tmp/attachment.pdf." + }, + { + "inputJson": "{\"agentId\":\"agent456\",\"attachmentId\":\"file567\"}", + "description": "Download attachment with ID file567 for agent456 and return the file content as base64 data without saving locally." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Attachment", + "context": null + } + }, + { + "name": "agent-management.downloadXML", + "description": "Downloads the XML configuration or data file associated with a specified AI agent or bot. Accepts agent identifier and optional authentication token, retrieves the XML content from the agent management system, and returns the raw XML data as a string for storage or further processing.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "Unique identifier of the AI agent or bot whose XML data is to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata information in the downloaded XML file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token required to access protected agent XML data.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded XML content as a string along with agent identification details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to retrieve the complete XML configuration or data export of an AI agent for backup, analysis, or migration purposes. It supports secure access via authentication tokens and allows inclusion of metadata if required.", + "limitations": "Cannot modify or validate XML content; only downloads raw XML data. Agent system must support XML export and authentication if protected.", + "examples": [ + "Download the XML configuration of agent with ID 'agent123'.", + "Download the XML data including metadata for bot 'bot456' using provided auth token.", + "Retrieve XML export for agent without authentication token where access is public." + ] + }, + "tags": [ + "agent-management", + "download", + "XML", + "configuration", + "export", + "AI agent", + "bot" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"includeMetadata\":false,\"authToken\":\"\"}", + "description": "Download XML configuration of agent 'agent123' without metadata and no auth token." + }, + { + "inputJson": "{\"agentId\":\"bot456\",\"includeMetadata\":true,\"authToken\":\"abc123token\"}", + "description": "Download XML with metadata for 'bot456' using authentication token." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "XML", + "context": null + } + }, + { + "name": "agent-management.formatHTML", + "description": "Formats, beautifies, and optionally minifies a provided HTML string to improve readability or reduce size. Accepts raw HTML as input, applies indentation and line breaks for human-friendly output, or removes unnecessary whitespace for compact output. Returns the transformed HTML string.", + "category": "agent-management", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML string to be formatted or minified.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "minify", + "type": "boolean", + "description": "Whether to minify the HTML by removing extra whitespace and line breaks instead of formatting.", + "required": false, + "defaultValue": "false" + }, + { + "name": "preserveNewlines", + "type": "boolean", + "description": "When formatting, whether to preserve existing newlines inside elements or not.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resulting HTML string after formatting or minifying." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to standardize or clean up HTML code for presentation, logging, or further automated processing. It helps in improving readability for debugging or compactness to reduce data size when sending or storing HTML.", + "limitations": "The tool does not validate HTML correctness or semantic structure; malformed HTML input may produce unexpected results. It cannot convert other markup languages to HTML or handle JavaScript/CSS formatting beyond HTML structure.", + "examples": [ + "Format a raw ugly HTML string for readability.", + "Minify HTML content to save space before sending over network.", + "Adjust indentation width to match project style guides." + ] + }, + "tags": [ + "formatting", + "html", + "code", + "beautify", + "minify", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Hello World

\",\"indentSize\":4,\"minify\":false,\"preserveNewlines\":true}", + "description": "Format simple nested HTML with 4 spaces indentation preserving newlines." + }, + { + "inputJson": "{\"htmlContent\":\"

Line1

\\n

Line2

\",\"minify\":true}", + "description": "Minify given HTML removing unnecessary whitespaces and newlines." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "HTML", + "context": null + } + }, + { + "name": "agent-management.formatSchema", + "description": "Formats an AI agent or bot schema definition into a standardized JSON or YAML format. Accepts raw or partial schema code as input, applies selected formatting rules (indentation, key ordering, style), and outputs the cleaned, consistent schema suitable for agent configuration files or sharing.", + "category": "agent-management", + "parameters": [ + { + "name": "schemaContent", + "type": "string", + "description": "Raw schema code input to be formatted (JSON, YAML, or similar).", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Target format for the output schema, e.g., 'json' or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces for indentation in the output format.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort object keys alphabetically in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "preserveComments", + "type": "boolean", + "description": "If true, retains comments from the original schema in the formatted output (only when format supports it).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted schema string and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ensure AI agent schema definitions are cleanly formatted and standardized for consistent parsing, editing, validation, or sharing among systems and developers. Especially useful when receiving unstructured or inconsistently formatted schemas.", + "limitations": "Cannot validate schema correctness or completeness beyond formatting; does not generate schemas from scratch; may not perfectly preserve all comment styles across formats.", + "examples": [ + "Format an unindented YAML agent schema to well-indented JSON format.", + "Reformat user-provided agent schema JSON with sorted keys and 4 spaces indentation.", + "Convert partially formatted JSON schema input back to YAML preserving comments if any." + ] + }, + "tags": [ + "agent-management", + "schema-formatting", + "json", + "yaml", + "agent-configuration", + "code-formatting" + ], + "examples": [ + { + "inputJson": "{\"schemaContent\":\"{\\\"agentName\\\":\\\"MyBot\\\",\\\"version\\\":1.0,\\\"capabilities\\\":[\\\"chat\\\",\\\"search\\\"]}\",\"outputFormat\":\"json\",\"indentationSpaces\":4,\"sortKeys\":true,\"preserveComments\":false}", + "description": "Format a simple JSON agent schema with sorted keys and 4 space indentation." + }, + { + "inputJson": "{\"schemaContent\":\"agentName: MyBot\\nversion: 1.0\\ncapabilities:\\n - chat\\n - search\\n# This is a comment\",\"outputFormat\":\"yaml\",\"indentationSpaces\":2,\"sortKeys\":false,\"preserveComments\":true}", + "description": "Format YAML input, preserve comments, keep original key order, 2-space indent." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Schema", + "context": null + } + }, + { + "name": "agent-management.formatResume", + "description": "Formats a raw resume text or JSON object into a standardized, clean, well-structured resume document. Accepts unstructured text or structured JSON input containing resume details, formats sections consistently (e.g., Education, Experience), and outputs a clean, formatted resume string suitable for display or further processing.", + "category": "agent-management", + "parameters": [ + { + "name": "rawResume", + "type": "string", + "description": "Raw resume content as unstructured text or JSON string to be formatted into a standardized layout.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input resume content: either 'text' for raw text or 'json' for JSON structured resume data.", + "required": true, + "defaultValue": "text" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted resume: 'plaintext' for plain text, or 'markdown' for markdown formatting.", + "required": false, + "defaultValue": "plaintext" + }, + { + "name": "includeSections", + "type": "array", + "description": "Array of section names to include in the formatted resume (e.g., ['Education','Work Experience','Skills']). If empty or not provided, include all available sections.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "yearRange", + "type": "object", + "description": "Optional object specifying 'startYear' and 'endYear' to filter experience or education sections within those years.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted resume as a string under 'formattedResume' key and the format type used in 'formatType'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert unstructured or loosely structured resume information into a consistent, cleanly formatted resume document, suitable for generating readable or visually appealing resumes for display or further automation.", + "limitations": "Cannot verify accuracy or completeness of resume data; formatting is limited to text or markdown output; does not generate graphical layouts or PDF formatting; quality depends on input data completeness and correctness.", + "examples": [ + "Please format this raw resume text into a clean structured resume.", + "Take the JSON resume data and output a markdown formatted resume including only Education and Skills sections.", + "Format the resume text input highlighting work experiences between 2015 and 2022." + ] + }, + "tags": [ + "agent-management", + "document-formatting", + "resume", + "career", + "human-resources", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"rawResume\":\"John Doe\\nExperience:\\nSoftware Engineer at ABC Corp 2016-2021\\nEducation:\\nB.Sc. in Computer Science 2012-2016\\nSkills:\\nJava, Python, Project Management\",\"inputFormat\":\"text\",\"outputFormat\":\"plaintext\"}", + "description": "Format a plain text resume with common sections into a clean standardized text resume." + }, + { + "inputJson": "{\"rawResume\":\"{\\\"basics\\\":{\\\"name\\\":\\\"Jane Smith\\\"},\\\"education\\\":[{\\\"institution\\\":\\\"State University\\\",\\\"startYear\\\":2010,\\\"endYear\\\":2014}],\\\"skills\\\":[\\\"JavaScript\\\",\\\"React\\\"]}\",\"inputFormat\":\"json\",\"outputFormat\":\"markdown\",\"includeSections\":[\"education\",\"skills\"]}", + "description": "Format a structured JSON resume into markdown including only specified sections." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Resume", + "context": null + } + }, + { + "name": "agent-management.generateForecast", + "description": "Generates a business forecast based on historical data and specified predictive models. Accepts input data such as past sales or performance metrics, applies statistical or machine learning models, and outputs a forecast report including predicted values and confidence intervals.", + "category": "agent-management", + "parameters": [ + { + "name": "historicalData", + "type": "array", + "description": "An array of historical business data records; each record should include a time stamp and relevant numeric metrics (e.g., sales figures).", + "required": true, + "defaultValue": "" + }, + { + "name": "forecastPeriod", + "type": "number", + "description": "Number of future time units (e.g., days, months) to generate the forecast for.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "Type of predictive model to use (e.g., 'ARIMA', 'ExponentialSmoothing', 'Prophet', 'LinearRegression').", + "required": false, + "defaultValue": "ARIMA" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (between 0 and 1) for the forecast intervals; defaults to 0.95 for 95% confidence.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "seasonalityPeriod", + "type": "number", + "description": "Periodicity of seasonality in data, if known (e.g., 12 for monthly data with yearly seasonality).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeVisualization", + "type": "boolean", + "description": "Whether to generate visual charts (time series plots) alongside forecast data.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing forecasted values for each future time unit, confidence intervals for each forecast point, a summary report explaining results and assumptions, and optionally a visualization image encoded in base64." + }, + "aiAgent": { + "useCase": "Use this tool when needing to predict future business metrics such as sales, revenue, or performance indicators based on historical time series data. It helps in planning and decision-making by providing statistically informed forecasts. Suitable for agents automating business analysis or strategic planning tasks.", + "limitations": "The accuracy depends on quality and quantity of historical data; the tool does not handle unstructured data or causal intervention analysis. It is not suitable for forecasting domains requiring domain-specific knowledge beyond time series patterns.", + "examples": [ + "Generate a 6-month sales forecast using ARIMA with 95% confidence.", + "Provide a 12-month revenue forecast with visualization using Prophet model.", + "Forecast next quarter's customer acquisitions using linear regression model without seasonality adjustments." + ] + }, + "tags": [ + "forecasting", + "business", + "time-series", + "prediction", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"historicalData\":[{\"date\":\"2023-01\",\"value\":120},{\"date\":\"2023-02\",\"value\":135},{\"date\":\"2023-03\",\"value\":150},{\"date\":\"2023-04\",\"value\":170}],\"forecastPeriod\":3,\"modelType\":\"ARIMA\",\"confidenceLevel\":0.95,\"includeVisualization\":true}", + "description": "Generate a 3-month forecast for monthly sales data using ARIMA with 95% confidence and include visualization." + }, + { + "inputJson": "{\"historicalData\":[{\"date\":\"2022-Q1\",\"value\":1000},{\"date\":\"2022-Q2\",\"value\":1050},{\"date\":\"2022-Q3\",\"value\":1100},{\"date\":\"2022-Q4\",\"value\":950}],\"forecastPeriod\":4,\"modelType\":\"ExponentialSmoothing\",\"seasonalityPeriod\":4,\"includeVisualization\":false}", + "description": "Forecast next year quarterly revenue using Exponential Smoothing model considering quarterly seasonality, without visualization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Forecast", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeConversion", + "description": "Analyzes AI prompt interaction logs to evaluate user conversion rates. It accepts input data detailing sessions, prompts shown, and user actions, and processes this to compute key conversion metrics such as click-through rate, completion rate, and drop-off points for different prompt variations. The output is a structured report highlighting conversion effectiveness to optimize prompt designs.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "interactionLogs", + "type": "array", + "description": "Array of user interaction records including prompt shown, user response, timestamp, and conversion action data.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEvent", + "type": "string", + "description": "The name of the event that defines a successful conversion to analyze (e.g., \"signup\", \"purchase\").", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "object", + "description": "Optional object with startDate and endDate strings in ISO format to filter logs within a specific period.", + "required": false, + "defaultValue": "" + }, + { + "name": "promptVariants", + "type": "array", + "description": "Optional list of prompt variant identifiers to segment conversion analysis by prompt variation.", + "required": false, + "defaultValue": "" + }, + { + "name": "minSessions", + "type": "number", + "description": "Minimum number of sessions per prompt variant to include in analysis for statistical significance.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing overall conversion rates, per-variant conversion stats, identified drop-off points, and recommendations for prompt optimization." + }, + "aiAgent": { + "useCase": "Use this tool when you want to evaluate how effectively different AI prompt formulations or interaction designs convert users towards a defined goal event, enabling data-driven prompt engineering to improve user engagement and conversion.", + "limitations": "Cannot infer causality outside provided interaction data; requires sufficiently detailed and structured logs; does not perform qualitative analysis of prompt content.", + "examples": [ + "Analyze conversion rates for the 'signup' event over the last month segmented by prompt variants to identify best performing prompts.", + "Evaluate drop-off points and completion rates from a batch of interaction logs to optimize prompt design for better conversion.", + "Filter logs by date range and minimum session activity to ensure statistically valid conversion analysis." + ] + }, + "tags": [ + "prompt engineering", + "conversion analysis", + "analytics", + "user behavior", + "optimization", + "AI interactions" + ], + "examples": [ + { + "inputJson": "{\"interactionLogs\":[{\"sessionId\":\"s1\",\"promptId\":\"pA\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"userAction\":\"click\",\"conversionEventOccurred\":false},{\"sessionId\":\"s2\",\"promptId\":\"pA\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"userAction\":\"complete\",\"conversionEventOccurred\":true},{\"sessionId\":\"s3\",\"promptId\":\"pB\",\"timestamp\":\"2024-05-01T11:00:00Z\",\"userAction\":\"ignore\",\"conversionEventOccurred\":false}],\"conversionEvent\":\"complete\",\"timeFrame\":{\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\"},\"promptVariants\":[\"pA\",\"pB\"],\"minSessions\":1}", + "description": "Analyze user interaction logs within May 2024 to compute conversion rates and identify drop-offs for prompt variants pA and pB towards the 'complete' event." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeChannel", + "description": "Analyzes the communication content and style of a specified channel (e.g., chat, forum, email thread). Accepts conversation logs or messages as input, evaluates key metrics such as tone, engagement levels, topic relevance, and prompt effectiveness, and produces a detailed report summarizing the channel's communication quality and optimization suggestions.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel (e.g., 'chat', 'forum', 'email') to tailor analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "An array of message objects representing the conversation history; each message should include sender, timestamp, and text content.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "object", + "description": "Optional object specifying the start and end timestamps to limit the analysis to a particular timeframe.", + "required": false, + "defaultValue": "" + }, + { + "name": "analyzeTone", + "type": "boolean", + "description": "Whether to analyze the tone and sentiment of messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectTopics", + "type": "boolean", + "description": "Whether to detect and summarize main discussion topics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report, e.g., 'summary', 'detailed'.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "Report object containing analysis results including tone metrics, engagement statistics, topic summaries, prompt effectiveness assessments, and recommended improvements tailored to the channel type and input." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the quality and characteristics of communication within a specific channel, such as for improving prompt designs, understanding user engagement, or summarizing channel conversations. This helps in optimizing AI-generated prompts or content responses to better fit the channel context.", + "limitations": "Does not perform real-time monitoring; accuracy depends on quality and completeness of input messages. It cannot replace human moderation or interpret deeply ambiguous or encrypted communications.", + "examples": [ + "Analyze the last month's chat messages to evaluate conversational tone and engagement.", + "Summarize main topics and assess prompt effectiveness in a customer support forum thread.", + "Provide a detailed communication quality report for an email discussion within a specified week." + ] + }, + "tags": [ + "analysis", + "prompt optimization", + "communication", + "tone analysis", + "engagement", + "topic detection", + "channel analysis" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"chat\",\"messages\":[{\"sender\":\"user1\",\"timestamp\":\"2024-04-20T10:00:00Z\",\"text\":\"Hello, how can I reset my password?\"},{\"sender\":\"agent1\",\"timestamp\":\"2024-04-20T10:01:00Z\",\"text\":\"You can reset your password by clicking \"Forgot Password\" on the login page.\"}],\"analyzeTone\":true,\"detectTopics\":true,\"outputFormat\":\"summary\"}", + "description": "Analyze a short chat conversation to evaluate tone and main topics, producing a summary report." + }, + { + "inputJson": "{\"channelType\":\"forum\",\"messages\":[{\"sender\":\"member123\",\"timestamp\":\"2024-03-15T15:00:00Z\",\"text\":\"Has anyone tried the new API update?\"},{\"sender\":\"member456\",\"timestamp\":\"2024-03-16T08:30:00Z\",\"text\":\"Yes, it improves speed significantly.\"}],\"timeFrame\":{\"start\":\"2024-03-01T00:00:00Z\",\"end\":\"2024-03-31T23:59:59Z\"},\"analyzeTone\":false,\"detectTopics\":true,\"outputFormat\":\"detailed\"}", + "description": "Analyze a forum thread from March 2024 focusing on topic detection with a detailed report output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "prompt-engineering.uploadTable", + "description": "Uploads a tabular dataset to the AI prompt environment by accepting tables in CSV, JSON array, or Markdown formats. The tool processes the input to standardize and store the table for downstream prompt engineering tasks, returning a reference ID and summary of the uploaded table.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "The raw tabular data as a string in CSV, JSON array of objects, or Markdown table format.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableFormat", + "type": "string", + "description": "Format of the input tableData: 'csv', 'json', or 'markdown'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Optional name to assign to the uploaded table for ease of reference.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to upload from the input. If omitted or 0, uploads all rows.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing a unique tableId for reference, the standardized data as parsed from input, the detected schema with column names and types, and a summary including number of rows and columns." + }, + "aiAgent": { + "useCase": "Use this tool when you need to supply structured tabular data to an AI prompt pipeline, allowing the AI to reference or query the table in subsequent interactions. It is useful for building prompts that incorporate specific datasets without manual formatting or error.", + "limitations": "Cannot handle extremely large tables beyond practical size limits (e.g., thousands of rows) due to memory and prompt length constraints. Does not perform data validation beyond basic format correctness. Input must be well-formed in the specified formats.", + "examples": [ + "Upload a CSV file containing sales data into the AI environment for analysis.", + "Provide a product catalog as a Markdown table to incorporate into a prompt.", + "Import a JSON array of user records to enable referencing user attributes in prompts." + ] + }, + "tags": [ + "prompt-engineering", + "upload", + "table", + "csv", + "json", + "markdown", + "data-import" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"name,age,city\\nAlice,30,New York\\nBob,25,Los Angeles\",\"tableFormat\":\"csv\",\"tableName\":\"UserInfo\"}", + "description": "Upload a small CSV table with user info named 'UserInfo'." + }, + { + "inputJson": "{\"tableData\":\"[{\\\"product\\\":\\\"Widget\\\",\\\"price\\\":19.99},{\\\"product\\\":\\\"Gadget\\\",\\\"price\\\":29.99}]\",\"tableFormat\":\"json\"}", + "description": "Upload a JSON array representing products and prices." + }, + { + "inputJson": "{\"tableData\":\"| Country | Capital |\\n|---------|---------|\\n| France | Paris |\\n| Spain | Madrid |\",\"tableFormat\":\"markdown\",\"maxRows\":1}", + "description": "Upload a Markdown table with just the first row due to maxRows=1 limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeAnomaly", + "description": "This tool accepts a series of AI prompt performance metrics or generated outputs and analyzes them to detect anomalies such as unexpected output deviations, inconsistencies, or drops in performance. It processes input data using statistical and pattern recognition techniques and returns a detailed report highlighting anomalies and their possible root causes for prompt optimization.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptId", + "type": "string", + "description": "Identifier of the prompt to analyze for anomalies", + "required": true, + "defaultValue": "" + }, + { + "name": "performanceData", + "type": "array", + "description": "Array of objects containing historical or recent performance metrics or outputs from the prompt execution", + "required": true, + "defaultValue": "" + }, + { + "name": "thresholdSensitivity", + "type": "number", + "description": "Numeric value indicating sensitivity for anomaly detection threshold (0-1 scale)", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object defining start and end timestamps to filter performance data for analysis", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRootCauseAnalysis", + "type": "boolean", + "description": "Flag to enable or disable root cause analysis of detected anomalies", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object report containing detected anomalies with timestamps, anomaly types, impact scores, and optional root cause analysis details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to identify unexpected or abnormal behavior in prompt outputs or performance metrics to improve prompt reliability and quality. It is particularly useful for continuous prompt monitoring and optimization in production environments.", + "limitations": "This tool does not directly fix anomalies or generate new prompts; it only analyzes performance data and highlights issues. It requires structured input data and may not detect semantic anomalies not reflected in quantifiable metrics.", + "examples": [ + "Identify anomalies in recent prompt outputs for prompt ID 'p12345'", + "Analyze performance data for prompt 'chat-response-v2' over the last week", + "Detect any abnormal drops in prompt accuracy with high sensitivity settings" + ] + }, + "tags": [ + "prompt-engineering", + "anomaly-detection", + "performance-monitoring", + "analytics", + "root-cause-analysis", + "ai-quality" + ], + "examples": [ + { + "inputJson": "{\"promptId\":\"p12345\",\"performanceData\":[{\"timestamp\":\"2024-05-01T12:00:00Z\",\"accuracy\":0.95},{\"timestamp\":\"2024-05-02T12:00:00Z\",\"accuracy\":0.65},{\"timestamp\":\"2024-05-03T12:00:00Z\",\"accuracy\":0.96}],\"thresholdSensitivity\":0.7,\"includeRootCauseAnalysis\":true}", + "description": "Analyze prompt performance data with an accuracy drop indicating a potential anomaly and include root cause analysis." + }, + { + "inputJson": "{\"promptId\":\"chat-response-v2\",\"performanceData\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"responseTime\":1.2},{\"timestamp\":\"2024-06-01T01:00:00Z\",\"responseTime\":5.0},{\"timestamp\":\"2024-06-01T02:00:00Z\",\"responseTime\":1.1}],\"thresholdSensitivity\":0.8}", + "description": "Detect anomalies in response time spikes for chat-response prompt with elevated sensitivity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeMarkdown", + "description": "Analyzes markdown content used as AI prompt templates to evaluate structure, formatting consistency, use of placeholders, and readability. Accepts raw markdown text and optional rules to check. Returns a detailed report on prompt clarity, potential ambiguities, and suggestions for improvement to optimize AI prompt effectiveness.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "The raw markdown text representing the AI prompt template to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkPlaceholders", + "type": "boolean", + "description": "Flag to analyze the usage and consistency of variable placeholders within the markdown content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxHeadingLevel", + "type": "number", + "description": "The maximum heading level to consider for structural analysis (e.g., 3 means # to ### headings).", + "required": false, + "defaultValue": "3" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the markdown content for language-specific analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing structural details, placeholder usage summary, readability scores, and improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate the quality and effectiveness of markdown-formatted AI prompts. It helps in identifying structural weaknesses, inconsistent placeholder usage, and clarity issues that may reduce prompt performance. Particularly useful for developers or prompt engineers refining prompt templates before deployment.", + "limitations": "Cannot execute or test the prompt with an AI model directly; does not interpret semantic meaning beyond structural and formatting analysis. It may not fully capture context-dependent ambiguities or advanced linguistic nuances.", + "examples": [ + "Analyze my markdown prompt template to check if placeholder variables are defined and headings are semantically structured.", + "Evaluate the readability and clarity of my markdown prompt content for AI instructions.", + "Check markdown prompt for consistent formatting and suggest improvements for better AI understanding." + ] + }, + "tags": [ + "prompt-engineering", + "markdown", + "analysis", + "AI prompt optimization", + "formatting", + "readability" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# User Profile Prompt\\n\\nPlease enter your **name** and `{{userID}}` to proceed.\\n\\n## Instructions\\n- Fill in the placeholders clearly.\\n- Use formal language.\",\"checkPlaceholders\":true,\"maxHeadingLevel\":2,\"language\":\"en\"}", + "description": "Analyze a markdown prompt to verify headings and placeholder usage with a max heading level of 2." + }, + { + "inputJson": "{\"markdownContent\":\"# AI Assistant Commands\\n\\nUse the following commands:\\n- `/start` to begin\\n- `/help` for instructions\\n\\nRemember to replace `{{command}}` with the actual command.\",\"checkPlaceholders\":true}", + "description": "Check markdown prompt commands section for placeholder consistency." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "prompt-engineering.downloadVideo", + "description": "Downloads a video file from a provided video URL or embedded video snippet to local or cloud storage. Accepts a video URL or video embed code and processes it to extract and save the video content, providing details on saved file location and metadata after download.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The direct URL of the video to download. Required if videoEmbedCode is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoEmbedCode", + "type": "string", + "description": "An embedded video HTML snippet or iframe code containing the video source. Required if videoUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputPath", + "type": "string", + "description": "The file system path or cloud storage location where the downloaded video will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Preferred video file format to save (e.g., mp4, webm). If not supported by source, original format is used.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "maxResolution", + "type": "string", + "description": "Maximum desired video resolution (e.g., 1080p, 720p). Downloads highest available up to this resolution.", + "required": false, + "defaultValue": "1080p" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to attempt downloading before aborting.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing download success status, saved file path, video resolution, file size in bytes, and error message if any." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically fetch and save video content from URLs or embed codes when prompt contexts or demonstrations require local video assets for further AI processing or reference. Useful when a prompt includes a video reference requiring offline analysis or embedding in model contexts.", + "limitations": "Cannot download videos restricted by DRM or authentication not handled by provided URL/embed. Cannot convert videos beyond provided source formats.", + "examples": [ + "Download a YouTube video by URL to local storage for offline analysis.", + "Extract video file from an embedded iframe snippet provided in HTML.", + "Download a video at 720p resolution as mp4 format for model training." + ] + }, + "tags": [ + "download", + "video", + "media", + "prompt-engineering", + "file-management", + "content-acquisition" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/sample.mp4\",\"outputPath\":\"/videos/sample.mp4\",\"fileFormat\":\"mp4\",\"maxResolution\":\"720p\",\"timeoutSeconds\":30}", + "description": "Download a sample MP4 video from a URL to local path with max 720p resolution." + }, + { + "inputJson": "{\"videoEmbedCode\":\"\",\"outputPath\":\"/videos/embeddedVideo.mp4\",\"fileFormat\":\"mp4\"}", + "description": "Extract and download video from an embedded iframe code into specified file path." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeExpense", + "description": "Analyzes expense-related prompts to evaluate clarity, completeness, and potential ambiguities. Accepts a business expense prompt string and optional context, then processes it to produce a detailed analysis highlighting improvements, missing details, and suggestions to optimize the prompt for AI understanding and processing.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptText", + "type": "string", + "description": "The expense-related prompt text to analyze for clarity and quality.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional contextual information about the business domain or expense scenario to aid analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "Flag indicating if a detailed, step-by-step analysis should be provided.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing identified prompt strengths, weaknesses, ambiguities, missing information, and recommendations for improvement." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate expense-related prompts for clarity, completeness, and effectiveness before using them with AI models. This helps ensure expense prompts are well-formed, reducing misunderstandings and enhancing AI output quality in financial and business contexts.", + "limitations": "This tool cannot validate actual expense data or financial figures; it only analyzes the textual prompt quality and structure. It also does not generate or approve final expense reports.", + "examples": [ + "Analyze the prompt 'List all expenses for Q1 2024 with vendor names and dates included.'", + "Review the expense prompt 'Summarize employee travel expenses last month' for missing details.", + "Check clarity of 'Provide a breakdown of office supplies expenses and categorize by department.'" + ] + }, + "tags": [ + "analysis", + "prompt-engineering", + "expense", + "business", + "financial", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"promptText\":\"List all business expenses for the last fiscal year including date, amount, and vendor.\",\"context\":\"General company accounting domain\",\"detailedAnalysis\":true}", + "description": "Analyze a typical expense prompt for clarity and completeness with detailed feedback." + }, + { + "inputJson": "{\"promptText\":\"Summarize travel expenses last quarter\",\"context\":\"Employee reimbursement context\",\"detailedAnalysis\":false}", + "description": "Quickly evaluate a casual expense prompt for ambiguity and missing components." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "prompt-engineering.uploadVideo", + "description": "Uploads a video file to integrate with prompt engineering workflows, allowing extraction of metadata and optional transcript generation for use in AI prompt crafting. Accepts video file data and returns upload confirmation with metadata and transcript if enabled.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local filesystem path or URL of the video file to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "generateTranscript", + "type": "boolean", + "description": "Whether to generate a transcript from the video's audio content after upload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadataOnly", + "type": "boolean", + "description": "If true, only extracts and returns metadata without storing the entire video.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDurationSeconds", + "type": "number", + "description": "Maximum duration in seconds allowed for the uploaded video. Videos longer than this will be rejected.", + "required": false, + "defaultValue": "600" + }, + { + "name": "tags", + "type": "array", + "description": "List of custom tags to associate with the video for categorization and search.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Object containing upload status, unique video ID, extracted metadata such as duration and resolution, and optional transcript text." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ingest video content as part of prompt engineering workflows, for example to incorporate visual/audio context or generate video-based prompts. Ideal for scenarios requiring analysis or indexing of video data for prompt crafting.", + "limitations": "This tool does not perform full video content analysis beyond metadata extraction and optional transcript generation. It cannot handle live video streaming or editing. Transcript quality depends on audio clarity.", + "examples": [ + "Upload a sample instructional video and generate a transcript to assist in creating interactive prompts.", + "Add a short marketing video to the prompt dataset with associated tags for campaign targeting.", + "Upload a 5-minute tech talk video, retrieve metadata only without storing full video content." + ] + }, + "tags": [ + "prompt-engineering", + "upload", + "video", + "transcript", + "metadata", + "media", + "ai-input" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/tutorial.mp4\",\"generateTranscript\":true,\"metadataOnly\":false,\"maxDurationSeconds\":600,\"tags\":[\"tutorial\",\"ai\"]}", + "description": "Uploading a tutorial video with transcript generation enabled for AI prompt development." + }, + { + "inputJson": "{\"videoFilePath\":\"https://example.com/marketing_clip.mov\",\"generateTranscript\":false,\"metadataOnly\":false,\"maxDurationSeconds\":300,\"tags\":[\"marketing\",\"promo\"]}", + "description": "Uploading a short marketing clip with tags, without transcript generation." + }, + { + "inputJson": "{\"videoFilePath\":\"/videos/tech_talk.mkv\",\"generateTranscript\":false,\"metadataOnly\":true,\"maxDurationSeconds\":600,\"tags\":[]}", + "description": "Uploading a tech talk video with metadata extraction only, no full video stored." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "prompt-engineering.downloadTable", + "description": "This tool accepts a table of prompt engineering data, such as prompt variants or performance metrics, and downloads it as a structured CSV or JSON file. It processes the input table and produces a downloadable file to be saved locally or accessed via URL.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "An array of objects representing the table rows, where each object maps column names to values.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "The output file format, either 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired name for the downloaded file without extension.", + "required": false, + "defaultValue": "prompt_table" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the CSV output (ignored for JSON).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloadable file content as a string and associated metadata like filename and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to export a processed or generated prompt engineering table (e.g., prompt variants with evaluation metrics) into a file for external analysis, archival, or sharing. It enables saving data in common formats like CSV or JSON for flexible downstream use.", + "limitations": "This tool does not upload or host files, nor does it handle extremely large datasets that may exceed memory or file size limits. It focuses solely on formatting and creating a downloadable file representation.", + "examples": [ + "Download the prompt evaluation metrics table as a CSV file.", + "Export the generated prompt variants as a JSON file named 'variant_prompts'." + ] + }, + "tags": [ + "prompt-engineering", + "download", + "table", + "export", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"prompt\":\"Translate to French\",\"score\":0.95},{\"prompt\":\"Translate to Spanish\",\"score\":0.93}],\"fileFormat\":\"csv\",\"fileName\":\"translation_scores\",\"includeHeaders\":true}", + "description": "Download a CSV file containing prompt texts and their scores, including headers, named 'translation_scores.csv'." + }, + { + "inputJson": "{\"tableData\":[{\"id\":1,\"prompt\":\"Summarize text\"},{\"id\":2,\"prompt\":\"Generate questions\"}],\"fileFormat\":\"json\",\"fileName\":\"prompts_list\",\"includeHeaders\":true}", + "description": "Download a JSON file of prompt entries, ignoring includeHeaders since JSON format does not require headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "prompt-engineering.sendThread", + "description": "Sends a constructed multi-turn prompt thread to an AI service or model endpoint. Accepts an array of prompt messages, each with roles and content, along with optional metadata such as model name and temperature. Processes the thread for formatting, sends it, and returns the AI's consolidated response and usage details.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "threadMessages", + "type": "array", + "description": "An array of message objects forming the prompt thread, each with role (user, system, assistant) and content strings. Required to construct the conversation context for the AI.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelName", + "type": "string", + "description": "The AI model identifier to send the thread to (e.g., gpt-4, gpt-3.5-turbo). Determines which AI backend service handles the prompt.", + "required": true, + "defaultValue": "" + }, + { + "name": "temperature", + "type": "number", + "description": "Sampling temperature controlling creativity and randomness of AI responses. Typical values range from 0 to 1.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "maxTokens", + "type": "number", + "description": "Maximum token count allowed in the AI's response to limit output length.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "stopSequences", + "type": "array", + "description": "Array of strings where the AI will stop generating further text if encountered. Helps end the response appropriately.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata such as user identifiers or session info to pass along with the thread for logging or tracking.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the AI's generated reply text, token usage statistics, model info, and any warnings or errors if occurred." + }, + "aiAgent": { + "useCase": "Use this tool when you need to send a structured prompt thread representing a conversation or multiple prompt turns to a specified AI model for generation or completion. It's ideal for multi-turn interactions, prompt testing, or chaining prompts programmatically.", + "limitations": "This tool does not handle content moderation, does not retry on communication failures, and assumes the modelName corresponds to a valid accessible AI service. It also cannot generate prompts itself, only send prepared threads.", + "examples": [ + "Send a user and system message thread to GPT-4 to get a detailed answer.", + "Submit a conversation including assistant replies to continue generation.", + "Include metadata with user ID to track sessions when sending prompts." + ] + }, + "tags": [ + "prompt-engineering", + "send", + "thread", + "multi-turn", + "AI model", + "conversational AI", + "prompting" + ], + "examples": [ + { + "inputJson": "{\"threadMessages\":[{\"role\":\"system\",\"content\":\"You are a helpful assistant.\"},{\"role\":\"user\",\"content\":\"Explain the theory of relativity.\"}],\"modelName\":\"gpt-4\",\"temperature\":0.5}", + "description": "Send a two message prompt thread to GPT-4 requesting an explanation of relativity with moderate temperature." + }, + { + "inputJson": "{\"threadMessages\":[{\"role\":\"user\",\"content\":\"What is the weather today?\"},{\"role\":\"assistant\",\"content\":\"I am unable to provide live weather updates.\"},{\"role\":\"user\",\"content\":\"Can you tell me how to check the weather?\"}],\"modelName\":\"gpt-3.5-turbo\",\"temperature\":0.7,\"maxTokens\":200}", + "description": "Send a three message conversation to GPT-3.5-turbo to continue a dialogue about weather." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "prompt-engineering.renderSentence", + "description": "This tool takes structured input specifying the content and style of a sentence, applies the given style transformations (such as tone, complexity, or formality), and produces a well-formed, contextually appropriate sentence text as output. It is designed to help generate clear, stylistically controlled sentences for AI prompt crafting or communication tasks.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The core message or meaning the sentence should convey.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "object", + "description": "An object specifying style attributes like tone (e.g., formal, casual), complexity (e.g., simple, complex), and formality level.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) to generate the sentence in.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the output sentence in characters; longer sentences will be truncated or simplified.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the rendered sentence text and metadata about the style applied." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, stylistically tailored sentences to optimize communication or AI prompt quality. It helps produce consistent and controlled output suitable for natural language prompts or messaging.", + "limitations": "This tool cannot generate long paragraphs or multiple sentences; it focuses on single sentence generation. It may not perfectly capture highly unusual or creative stylistic requests beyond defined style parameters.", + "examples": [ + "Generate a polite customer service sentence apologizing for a delay.", + "Create a short formal sentence explaining a technical concept.", + "Produce a casual, simple sentence inviting a friend to meet." + ] + }, + "tags": [ + "prompt-engineering", + "sentence-generation", + "style-control", + "text-rendering", + "language-generation" + ], + "examples": [ + { + "inputJson": "{\"content\":\"Please submit the report by tomorrow.\",\"style\":{\"tone\":\"formal\",\"complexity\":\"simple\"},\"language\":\"en\",\"maxLength\":100}", + "description": "Generate a simple, formal sentence requesting a report submission." + }, + { + "inputJson": "{\"content\":\"I am sorry for being late.\",\"style\":{\"tone\":\"polite\",\"complexity\":\"simple\"},\"language\":\"en\"}", + "description": "Generate a polite apology sentence in English." + }, + { + "inputJson": "{\"content\":\"Let's grab lunch later!\",\"style\":{\"tone\":\"casual\",\"complexity\":\"simple\"},\"language\":\"en\",\"maxLength\":50}", + "description": "Generate a casual invitation sentence, short and informal." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "prompt-engineering.formatArticle", + "description": "Formats a raw article text input into a well-structured and polished article format. It accepts raw article content and applies formatting rules such as adding headings, paragraphs, bullet lists, and optionally applies style templates to produce an output article ready for publishing or further AI prompting.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "rawArticleText", + "type": "string", + "description": "The raw, unformatted article text to be structured and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The style template to apply for formatting, e.g., 'academic', 'blog', 'news'. Determines paragraph spacing, heading styles, and bullet formatting.", + "required": false, + "defaultValue": "\"blog\"" + }, + { + "name": "includeHeadings", + "type": "boolean", + "description": "Whether to detect and apply meaningful headings within the article to organize content sections.", + "required": false, + "defaultValue": "true" + }, + { + "name": "preserveLists", + "type": "boolean", + "description": "Whether to detect and format bullet or numbered lists present in the raw text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineWidth", + "type": "number", + "description": "Maximum line width in characters for wrapping text in paragraphs to improve readability, 0 means no wrapping.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article text as a string, with applied styles and structure based on parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw, unstructured article text into a clean, formatted document suitable for publishing or as an input prompt for AI models that expect structured articles. Ideal for improving readability and organization of generated or user-provided articles.", + "limitations": "Cannot perform advanced semantic understanding to rewrite or enrich content. It only formats based on detected structure. Complex layout or multimedia embedding is not supported.", + "examples": [ + "Format this raw article text into a blog style with headings.", + "Convert my notes into a nicely formatted news article preserving lists.", + "Apply academic style formatting to an article draft without line wrapping." + ] + }, + "tags": [ + "prompt-engineering", + "formatting", + "article", + "text-structuring", + "AI-prompt-preparation" + ], + "examples": [ + { + "inputJson": "{\"rawArticleText\":\"This is a raw article about AI. It covers several topics.\\n- Introduction to AI\\n- Latest advancements\\n- Ethical considerations.\",\"formatStyle\":\"blog\",\"includeHeadings\":true,\"preserveLists\":true,\"maxLineWidth\":80}", + "description": "Format a simple raw article text into a blog style with headings and lists preserved." + }, + { + "inputJson": "{\"rawArticleText\":\"Climate change is impacting global weather patterns significantly.\\nScientists are monitoring changes carefully.\",\"formatStyle\":\"news\",\"includeHeadings\":false,\"preserveLists\":false,\"maxLineWidth\":60}", + "description": "Format raw news article text without headings or preservation of lists, wrapping lines at 60 characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "prompt-engineering.buildWorkflow", + "description": "Constructs a multi-step prompt engineering workflow by accepting an ordered list of prompt templates and processing instructions. It organizes these steps into a cohesive pipeline definition that can be executed sequentially to guide AI interactions. Outputs a structured workflow object describing each step's role and parameters.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "steps", + "type": "array", + "description": "An ordered array of prompt step objects, each specifying the prompt template and optional transformation or parsing instructions for that step.", + "required": true, + "defaultValue": "" + }, + { + "name": "workflowName", + "type": "string", + "description": "Human-readable name for the constructed workflow to identify it in catalogs or logs.", + "required": false, + "defaultValue": "\"New Prompt Workflow\"" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description of the workflow's purpose and behavior.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format for workflow output description (e.g., 'JSON', 'YAML').", + "required": false, + "defaultValue": "\"JSON\"" + }, + { + "name": "includeValidation", + "type": "boolean", + "description": "Whether to add validation steps ensuring prompt outputs meet criteria.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured workflow object containing metadata (name, description), an ordered list of steps with prompts and processing instructions, and optional validation logic." + }, + "aiAgent": { + "useCase": "Use this tool when you need to design, formalize, or automate complex multi-step AI prompt interactions, where each step refines, transforms, or conditions input/output in a sequence. Ideal for agents building chained reasoning, decomposition, or modular prompt approaches.", + "limitations": "This tool does not execute the workflow or the prompts themselves; it only defines and structures the workflow. It cannot verify runtime prompt outputs or integrate with external execution environments.", + "examples": [ + "Create a 3-step workflow for question decomposition, answer generation, and final summary.", + "Build a prompt workflow that translates input text, extracts key data points, and formats a report.", + "Define a multi-step prompt process with validation after each step to ensure output quality." + ] + }, + "tags": [ + "prompt-engineering", + "workflow", + "automation", + "multi-step", + "pipeline", + "AI interaction" + ], + "examples": [ + { + "inputJson": "{\"steps\":[{\"prompt\":\"Summarize the user's query in one sentence.\"},{\"prompt\":\"Generate a detailed answer based on the summary.\"},{\"prompt\":\"Compose a final response combining summary and answer.\"}],\"workflowName\":\"Query Analysis Workflow\",\"description\":\"A workflow to analyze and respond to user queries in stages.\",\"outputFormat\":\"JSON\",\"includeValidation\":true}", + "description": "Defines a 3-step prompt workflow with validation for processing user queries in stages." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "prompt-engineering.buildPipeline", + "description": "Constructs a customizable prompt engineering pipeline by accepting an array of prompt transformation steps and configuration options, then outputs a combined prompt processing workflow definition that can be used to generate optimized prompts for AI models.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "steps", + "type": "array", + "description": "An ordered list of prompt transformation steps to apply in the pipeline. Each step is an object specifying the operation type and parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "basePrompt", + "type": "string", + "description": "The initial prompt string or template to be processed through the pipeline.", + "required": false, + "defaultValue": "" + }, + { + "name": "modelCompatibility", + "type": "string", + "description": "Target AI model or class of models the pipeline is optimized for (e.g., 'GPT-4', 'ChatGPT').", + "required": false, + "defaultValue": "" + }, + { + "name": "maxTokens", + "type": "number", + "description": "Maximum token count to constrain the prompt length after processing.", + "required": false, + "defaultValue": "2048" + }, + { + "name": "verboseLogging", + "type": "boolean", + "description": "Enables detailed logging of each transformation step in the pipeline.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the assembled prompt engineering pipeline, including the composed transformations, configuration metadata, and a method interface to generate finalized prompts." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically build complex prompt workflows composed of multiple refinement and formatting steps to optimize prompts for specific AI models or tasks. It standardizes the prompt optimization process and enables reusable, configurable pipelines.", + "limitations": "This tool does not execute the prompts against AI models, nor does it validate semantic correctness of prompt content. It focuses solely on pipeline construction and configuration.", + "examples": [ + "Build a pipeline with steps to clean input, add context, and format the prompt for GPT-4.", + "Create a prompt pipeline limiting output tokens to 1500 with stepwise prompt expansions.", + "Generate a verbose logging enabled prompt pipeline for iterative prompt tuning." + ] + }, + "tags": [ + "prompt-engineering", + "pipeline", + "AI-model", + "optimization", + "automation" + ], + "examples": [ + { + "inputJson": "{\"steps\":[{\"type\":\"clean\",\"params\":{\"removeStopwords\":true}},{\"type\":\"prependContext\",\"params\":{\"context\":\"Customer support info\"}},{\"type\":\"format\",\"params\":{\"style\":\"formal\"}}],\"basePrompt\":\"Helpdesk response prompt\",\"modelCompatibility\":\"GPT-4\",\"maxTokens\":1500,\"verboseLogging\":true}", + "description": "Pipeline to clean the prompt, prepend context, format formally, targeting GPT-4 with token limit and logging enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "prompt-engineering.buildQueue", + "description": "Constructs a priority queue of prompts tailored for AI model input optimization. Accepts an array of prompt objects each with content, priority, and optional metadata, and outputs a queue structure sorted and ready for sequential or prioritized processing.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "prompts", + "type": "array", + "description": "Array of prompt objects each containing text, priority level, and optional metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxQueueSize", + "type": "number", + "description": "Maximum number of prompts to include in the queue; excess prompts are discarded based on priority.", + "required": false, + "defaultValue": "100" + }, + { + "name": "defaultPriority", + "type": "number", + "description": "Default priority to assign to prompts missing this field; higher means higher priority.", + "required": false, + "defaultValue": "5" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Order to sort prompts by priority: 'ascending' or 'descending'.", + "required": false, + "defaultValue": "descending" + } + ], + "returns": { + "type": "object", + "description": "An object representing the built queue with prompts ordered as specified, including their content and priority." + }, + "aiAgent": { + "useCase": "Use this tool when you need to organize and prioritize multiple AI prompts into a queue to optimize processing order for efficiency or importance. It supports batch prompt handling where prompt priorities affect scheduling or resource allocation.", + "limitations": "Does not generate or modify prompt contents beyond sorting and queue structuring. The tool does not execute the prompts or interface directly with AI models.", + "examples": [ + "Build a queue from an array of prompts each with text and priority to process highest priority first.", + "Limit the queue size to top 50 prompts sorted ascending by priority.", + "Assign default priority 3 to any prompt missing priority and sort descending." + ] + }, + "tags": [ + "prompt-engineering", + "queue", + "priority", + "batch-processing", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"prompts\":[{\"text\":\"Translate to French.\",\"priority\":2},{\"text\":\"Summarize this article.\",\"priority\":5},{\"text\":\"Generate a poem about AI.\"}],\"maxQueueSize\":2,\"defaultPriority\":3,\"sortOrder\":\"descending\"}", + "description": "Create a priority queue from three prompts, keeping only top 2 by descending priority." + }, + { + "inputJson": "{\"prompts\":[{\"text\":\"Classify sentiment.\"},{\"text\":\"Answer questions.\"},{\"text\":\"Extract entities.\",\"priority\":1}],\"defaultPriority\":4,\"sortOrder\":\"ascending\"}", + "description": "Build a queue with ascending priority order and assign default priority 4 to missing values." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "prompt-engineering.buildPackage", + "description": "Constructs a reusable prompt engineering code package based on provided prompt templates, configurations, and optimization instructions. Takes input prompts and related metadata, then generates a structured, documented code package that can be integrated with AI systems for consistent and optimized prompt execution.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptTemplates", + "type": "array", + "description": "Array of prompt template strings or objects defining different prompt variations to include in the package.", + "required": true, + "defaultValue": "" + }, + { + "name": "packageName", + "type": "string", + "description": "Name identifier for the generated prompt engineering package.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the generated code package (e.g., 'JavaScript', 'Python').", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "optimizationGoals", + "type": "array", + "description": "List of optimization goals or instructions to tailor prompts for performance, clarity, or token efficiency.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeExampleUsage", + "type": "boolean", + "description": "Flag to include example code demonstrating how to use the generated prompt package.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata such as author info, version, or description to embed in package documentation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated code package as a string, metadata summary, and usage instructions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create standardized, reusable prompt packages that encapsulate multiple prompt templates and optimization instructions, facilitating consistent AI interactions across applications.", + "limitations": "Does not execute or test prompts directly; generated code may require environment-specific adaptation or manual review for best integration.", + "examples": [ + "Build a prompt package for customer support bot prompts in Python with example usage included.", + "Generate a JavaScript prompt package from multiple prompt templates optimized for reducing token usage.", + "Create a prompt package named 'SalesAssistantV1' embedding metadata and usage examples." + ] + }, + "tags": [ + "prompt-engineering", + "code-generation", + "package", + "automation", + "AI-integration", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"promptTemplates\":[\"Hello, how can I assist you today?\",\"What can I do for you?\"],\"packageName\":\"CustomerSupportPrompts\",\"language\":\"JavaScript\",\"optimizationGoals\":[\"minimize tokens\",\"clarity\"],\"includeExampleUsage\":true,\"metadata\":{\"author\":\"AI Team\",\"version\":\"1.0\",\"description\":\"Basic customer support prompts\"}}", + "description": "Generate a JavaScript prompt package for customer support with two prompt templates and optimization goals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "prompt-engineering.generateConversion", + "description": "Generates optimized prompt variants aimed at improving user conversion rates for marketing or sales use cases. Accepts base prompt text, target audience details, and conversion goals, then outputs multiple refined prompt versions optimized for conversion effectiveness.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "basePrompt", + "type": "string", + "description": "The original prompt text to be optimized for conversion.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience including demographics and interests.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionGoal", + "type": "string", + "description": "Specific conversion action desired, e.g., purchase, sign-up, download.", + "required": true, + "defaultValue": "" + }, + { + "name": "numberOfVariants", + "type": "number", + "description": "Number of optimized prompt variants to generate.", + "required": false, + "defaultValue": "3" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone for the prompts, e.g., persuasive, friendly, urgent.", + "required": false, + "defaultValue": "persuasive" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether prompts should explicitly include a call to action.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of prompt variant strings and summary analytics describing conversion optimization rationale." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate or improve prompts for marketing campaigns, product descriptions, or sales messages to increase conversion rates by tailoring language strategies for the target audience and conversion goal.", + "limitations": "This tool does not guarantee conversion success and does not perform live A/B testing or real user behavior analysis. It generates suggestions based on best practices and input context only.", + "examples": [ + "Generate 5 optimized call-to-action prompt variants for a young adult audience to increase newsletter sign-ups.", + "Improve an existing sales prompt targeting small business owners aiming to increase product purchases.", + "Create persuasive prompt variants with friendly tone to encourage app downloads among tech-savvy users." + ] + }, + "tags": [ + "prompt-engineering", + "conversion", + "marketing", + "optimization", + "call-to-action" + ], + "examples": [ + { + "inputJson": "{\"basePrompt\":\"Sign up today to get exclusive discounts!\",\"targetAudience\":\"Young adults aged 18-25 interested in fashion and technology.\",\"conversionGoal\":\"increase newsletter sign-ups\",\"numberOfVariants\":3,\"tone\":\"persuasive\",\"includeCallToAction\":true}", + "description": "Generate three persuasive prompt variants targeting young adults for newsletter sign-up conversions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "prompt-engineering.generateAnomaly", + "description": "Generates prompt templates tailored to detect or highlight anomalies in data or text inputs for AI models. Accepts parameters defining anomaly types and severity levels to produce prompts that effectively guide AI in recognizing unusual patterns or outliers in analytics tasks.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "anomalyType", + "type": "string", + "description": "Type of anomaly to target (e.g., statistical, behavioral, temporal).", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity or importance level of anomaly (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "contextDescription", + "type": "string", + "description": "Brief description of the data context to tailor prompt specificity (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "exampleDataPoints", + "type": "array", + "description": "Array of example data points for AI to reference anomaly characteristics.", + "required": false, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "AI model type or capabilities to customize prompt phrasing (e.g., GPT-4, BERT).", + "required": false, + "defaultValue": "GPT-4" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated prompt string and metadata about anomaly detection focus." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct precise and effective natural language prompts to detect anomalies in datasets or text for analytics purposes, enabling better anomaly recognition by AI models. It helps in tailoring prompts based on anomaly type and severity.", + "limitations": "This tool cannot analyze data or detect anomalies itself; it only assists in generating prompts for AI models that perform the detection. It requires correct input parameters for meaningful prompt generation.", + "examples": [ + "Generate a prompt for detecting temporal anomalies with high severity in user activity logs.", + "Create anomaly detection prompt targeting behavioral anomalies with medium severity for financial transactions.", + "Produce a prompt for statistical anomaly detection with low severity in sensor data readings." + ] + }, + "tags": [ + "prompt-engineering", + "anomaly-detection", + "analytics", + "AI-models", + "natural-language", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"anomalyType\":\"temporal\",\"severityLevel\":\"high\",\"contextDescription\":\"user activity logs with timestamps\",\"exampleDataPoints\":[\"login spikes at unusual hours\"],\"modelType\":\"GPT-4\"}", + "description": "Generate a prompt for detecting high severity temporal anomalies in user activity logs." + }, + { + "inputJson": "{\"anomalyType\":\"behavioral\",\"severityLevel\":\"medium\",\"contextDescription\":\"financial transaction patterns\",\"exampleDataPoints\":[\"transactions exceeding norms during unusual hours\"],\"modelType\":\"GPT-3\"}", + "description": "Create a prompt detecting medium severity behavioral anomalies in financial transactions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "prompt-engineering.generateGraph", + "description": "Generates a graph visualization prompt for AI models based on input data and specified graph type. It processes structured input data and user preferences to produce a text prompt designed to instruct AI systems to render the desired graph output.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing the data points or records to visualize as a graph.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate (e.g., line, bar, pie, scatter).", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the graph to include in the prompt.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X-axis of the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y-axis of the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Preferred color scheme or palette name to be used in the graph visualization.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining graph elements.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated textual prompt that can be fed into an AI system to create the specified graph visualization." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured data and need to create a clear, detailed prompt to instruct an AI model (like a text-to-image or chart-generating system) to render a specific type of graph (e.g., bar or line chart). It helps convert raw data and visualization preferences into a well-formed instruction.", + "limitations": "This tool does not generate the graph image itself; it only creates the textual prompt for graph generation. It cannot process unstructured or ambiguous data inputs and relies on the user to provide well-formed data arrays.", + "examples": [ + "Create a prompt for a bar chart showing sales data by month.", + "Generate a line graph instruction with axis labels and a title for temperature trends.", + "Produce a prompt for a pie chart using categorical survey results with a legend." + ] + }, + "tags": [ + "prompt-engineering", + "graph", + "visualization", + "AI-prompt", + "data-visualization", + "chart-generation" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":100},{\"month\":\"Feb\",\"sales\":150},{\"month\":\"Mar\",\"sales\":130}],\"graphType\":\"bar\",\"title\":\"Monthly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales\",\"colorScheme\":\"blue\",\"includeLegend\":true}", + "description": "Generate prompt for a blue-themed bar chart of monthly sales with labeled axes and legend." + }, + { + "inputJson": "{\"data\":[{\"day\":1,\"temp\":15},{\"day\":2,\"temp\":17},{\"day\":3,\"temp\":16}],\"graphType\":\"line\",\"title\":\"Temperature Trend\",\"xAxisLabel\":\"Day\",\"yAxisLabel\":\"Temperature (°C)\",\"colorScheme\":\"red\",\"includeLegend\":false}", + "description": "Create prompt for a red line graph showing daily temperature trends without legend." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "prompt-engineering.generateMarkdown", + "description": "Generates well-structured Markdown documents based on provided prompt specifications. Accepts input including title, sections with headings and content, lists, code snippets, and formatting preferences. Processes these inputs to produce a formatted Markdown string output suitable for documentation, reports, or prompt descriptions.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the Markdown document to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of sections, each with a heading and content (which can include text, lists, or code snippets), to structure the Markdown document.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents at the start of the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "codeLanguage", + "type": "string", + "description": "The default programming language to use for fenced code blocks in the Markdown, if not specified per snippet.", + "required": false, + "defaultValue": "" + }, + { + "name": "useNumberedLists", + "type": "boolean", + "description": "Whether to format lists as numbered lists instead of bulleted lists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'markdown' string with the rendered Markdown document." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create structured Markdown documents from a set of textual content blocks, headings, lists, and code snippets, especially useful for generating documentation or prompt descriptions in standardized format.", + "limitations": "This tool does not interpret the semantic correctness of the content or validate Markdown syntax beyond structural formatting. It does not support images or embedded media.", + "examples": [ + "Generate a Markdown readme with a title, sections with headings and paragraphs, and a code example in Python.", + "Create a Markdown document including a table of contents based on supplied section headings.", + "Produce a Markdown file with numbered lists and multiple code snippets tagged with JavaScript syntax." + ] + }, + "tags": [ + "prompt-engineering", + "markdown", + "documentation", + "formatting", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"API Documentation\",\"sections\":[{\"heading\":\"Introduction\",\"content\":\"This document describes the API endpoints.\"},{\"heading\":\"Endpoints\",\"content\":{\"type\":\"list\",\"items\":[\"GET /users\",\"POST /users\"]}},{\"heading\":\"Example Code\",\"content\":{\"type\":\"code\",\"code\":\"fetch('/users').then(res => res.json()).then(console.log);\",\"language\":\"javascript\"}}],\"includeTableOfContents\":true,\"codeLanguage\":\"javascript\",\"useNumberedLists\":false}", + "description": "Generate API documentation with a title, introduction, list of endpoints, example JavaScript code, and a table of contents." + }, + { + "inputJson": "{\"title\":\"Prompt Instructions\",\"sections\":[{\"heading\":\"Purpose\",\"content\":\"Explain how to craft effective AI prompts.\"},{\"heading\":\"Best Practices\",\"content\":{\"type\":\"list\",\"items\":[\"Be clear and specific.\",\"Use examples.\",\"Provide context.\"]}},{\"heading\":\"Sample Prompt\",\"content\":{\"type\":\"code\",\"code\":\"Generate a summary of the following text:\",\"language\":\"\"}}],\"includeTableOfContents\":false,\"codeLanguage\":\"\",\"useNumberedLists\":true}", + "description": "Generate prompt instructions with numbered lists and code snippet without specifying language." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "prompt-engineering.generateDiagram", + "description": "Generates a structured diagram (such as flowcharts, mind maps, or UML diagrams) based on a textual prompt describing concepts, processes, or relationships. It parses the prompt to identify key elements and connections, and outputs a diagram specification in JSON or an image URL representing the generated diagram.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptText", + "type": "string", + "description": "A detailed textual description of the diagram to generate, including elements, relationships, and desired diagram type.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "The type of diagram to generate, such as flowchart, mindmap, or UML.", + "required": true, + "defaultValue": "flowchart" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' for diagram specification or 'image' for a rendered diagram URL.", + "required": true, + "defaultValue": "json" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Optional style settings for the diagram, including colors, fonts, and shapes.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxNodes", + "type": "number", + "description": "Maximum number of nodes to include in the diagram to control complexity.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An object containing either the diagram specification JSON or an image URL of the rendered diagram, depending on outputFormat." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to convert a descriptive textual prompt about processes, ideas, or system structures into a visual diagram representation. It aids in visualizing complex concepts by generating structured diagram models or images that can be embedded in documentation or presentations.", + "limitations": "The tool cannot perfectly interpret highly ambiguous or very short prompts, nor can it generate highly artistic or hand-drawn style diagrams. It focuses on standard diagram types and clear structural visualization only.", + "examples": [ + "Generate a flowchart showing steps for user registration given a detailed text description.", + "Create a mind map representing brainstorming ideas described in text.", + "Produce a UML class diagram from a software system description." + ] + }, + "tags": [ + "prompt-engineering", + "diagram-generation", + "visualization", + "flowchart", + "mindmap", + "UML", + "AI-assist" + ], + "examples": [ + { + "inputJson": "{\"promptText\":\"Create a flowchart that outlines the steps for user authentication in a web application including actions like input credentials, validation, success, and error handling.\",\"diagramType\":\"flowchart\",\"outputFormat\":\"json\",\"styleOptions\":{\"colorScheme\":\"blue\",\"font\":\"Arial\"},\"maxNodes\":20}", + "description": "Generate a flowchart specification JSON that represents user authentication flow." + }, + { + "inputJson": "{\"promptText\":\"Generate a mind map showing main topics and subtopics about project planning including resources, milestones, and risks.\",\"diagramType\":\"mindmap\",\"outputFormat\":\"image\",\"styleOptions\":{\"colorScheme\":\"green\"},\"maxNodes\":30}", + "description": "Generate a mind map diagram as an image URL representing project planning concepts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "prompt-engineering.generateTemplate", + "description": "Generates a customizable prompt template for AI models based on user specifications. Accepts input parameters describing the AI task, target audience, tone, and any specific elements to include. Processes these inputs to construct a reusable prompt structure that optimizes clarity and effectiveness. Outputs the generated prompt template as a string.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "taskDescription", + "type": "string", + "description": "A clear description of the AI task the prompt should accomplish, e.g., summarization, translation, content generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended audience or user group for the AI output, affecting tone and style, e.g., technical experts, general public.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style of the prompt, such as formal, casual, persuasive, or neutral.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example inputs and outputs within the template to guide the AI behavior.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length in tokens or characters for the generated prompt template to ensure it fits model constraints.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "The language in which the prompt template should be generated, e.g., English, Spanish.", + "required": false, + "defaultValue": "English" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated prompt template string suitable for reuse or modification by the user agent." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs a structured, optimized prompt template tailored to a specific AI task and audience. It helps automate the creation of prompts to improve consistency and performance across multiple interactions or deployments.", + "limitations": "It cannot guarantee optimal prompt effectiveness in every context without iterative human refinement. It also does not evaluate the AI model's output quality resulting from the template.", + "examples": [ + "Generate a prompt template for writing concise technical summaries for software engineers in a professional yet approachable tone.", + "Create a prompt template to assist casual language translation tasks including example inputs and outputs to guide the model.", + "Produce a prompt template for creative story generation aimed at young adult readers with a friendly tone." + ] + }, + "tags": [ + "prompt-engineering", + "template-generation", + "AI-optimization", + "natural-language", + "automation" + ], + "examples": [ + { + "inputJson": "{\"taskDescription\":\"Generate email subject lines for marketing campaigns\",\"targetAudience\":\"marketing professionals\",\"tone\":\"engaging and concise\",\"includeExamples\":true,\"maxLength\":300,\"language\":\"English\"}", + "description": "Generate a template to create engaging email subject lines tailored for marketing teams including example pairs." + }, + { + "inputJson": "{\"taskDescription\":\"Summarize long meeting transcripts\",\"targetAudience\":\"business executives\",\"tone\":\"formal and brief\",\"includeExamples\":false,\"language\":\"English\"}", + "description": "Create a formal prompt template for summarizing meetings, targeted at executives, without example usage." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "prompt-engineering.generateReadme", + "description": "Generates a comprehensive README document for AI prompt engineering projects based on provided project details, key features, usage instructions, and examples. Accepts project metadata and content elements, processes them to create a formatted, clear README text output.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the project for which the README is generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A brief description summarizing the purpose and scope of the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "An array of key features or highlights of the project, each as a string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Detailed steps or commands to install the project and dependencies.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "A list of usage examples demonstrating how to use the prompts or project, each as a string.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contributingGuidelines", + "type": "string", + "description": "Instructions or guidelines for contributing to the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "license", + "type": "string", + "description": "The license under which the project is released (e.g., MIT, Apache 2.0).", + "required": false, + "defaultValue": "MIT" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a markdown string, ready to be saved or displayed." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents needing to automate the generation of clear, structured README documents for prompt engineering projects or tools. When provided with project details, the agent can quickly produce documentation suitable for publishing in repositories or sharing with users.", + "limitations": "The tool cannot verify the technical accuracy of the content provided; quality depends on input completeness and correctness. It also does not replace detailed technical writing or contextual documentation beyond the README scope.", + "examples": [ + "Generate a README for a new prompt optimization library specifying features, install steps, and usage examples.", + "Create documentation for an AI prompt pack with contributing guidelines and license details.", + "Produce a README summarizing key project points for a prompt-based chatbot framework." + ] + }, + "tags": [ + "prompt-engineering", + "documentation", + "generate", + "readme", + "project", + "automation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"PromptMaster\",\"projectDescription\":\"A library to optimize and manage AI prompts for various models.\",\"features\":[\"Easy prompt templates\",\"Supports multi-language prompts\",\"Real-time optimization\"],\"installationInstructions\":\"npm install promptmaster\",\"usageExamples\":[\"const pm = require('promptmaster');\\npm.optimize('Your prompt here');\"],\"contributingGuidelines\":\"Please submit issues and pull requests on GitHub.\",\"license\":\"MIT\"}", + "description": "Generate a README for the PromptMaster project including features, installation, usage, contribution, and license." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "model-management.analyzeMention", + "description": "This tool analyzes mentions of AI models within communication data such as text transcripts, chat logs, or meeting notes to identify context, sentiment, and frequency of model references. It accepts raw text input or structured communication data, processes natural language to detect and classify mentions, and outputs a detailed report summarizing mention metadata and analysis results.", + "category": "model-management", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw unstructured communication text containing potential model mentions (e.g., meeting transcript or chat log).", + "required": false, + "defaultValue": "" + }, + { + "name": "structuredData", + "type": "array", + "description": "Array of objects representing structured communication entries with text fields to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "modelKeywords", + "type": "array", + "description": "List of keywords or model names to specifically search for in the input text.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language of the input text for appropriate NLP processing, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on each model mention detected.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "Optional ISO 8601 timestamp string marking earliest date/time of communication to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "Optional ISO 8601 timestamp string marking latest date/time of communication to analyze.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report detailing each detected model mention including context excerpts, mention counts, sentiment scores (if enabled), timestamps (if available), and classification metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quantify and qualify how often and in what sentiment AI models are discussed within internal or external communication data, such as meeting notes or chat logs. It helps gauge engagement, concerns, or recognition about models during product development or deployment phases.", + "limitations": "Does not guarantee perfect mention detection if models are referred to indirectly or with ambiguous aliases; sentiment analysis accuracy depends on input language and context complexity.", + "examples": [ + "Analyze mentions of 'GPT-4' and 'BERT' in the last month's meeting transcripts.", + "Detect and summarize all AI model mentions with sentiment in the customer support chat logs.", + "Provide frequency and sentiment report of 'Transformer' model references across quarterly team communications." + ] + }, + "tags": [ + "model-analysis", + "communication", + "nlp", + "sentiment-analysis", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"In the last project meeting, we discussed GPT-4's capabilities extensively. Team members expressed excitement but also some concerns about deployment.\",\"modelKeywords\":[\"GPT-4\",\"BERT\"],\"includeSentiment\":true}", + "description": "Analyze sentiment and mentions of GPT-4 and BERT in a raw meeting transcript." + }, + { + "inputJson": "{\"structuredData\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"text\":\"The BERT model has shown good results in recent tests.\"},{\"timestamp\":\"2024-05-01T10:15:00Z\",\"text\":\"Let's consider GPT-4 integration in next iteration.\"}],\"modelKeywords\":[\"GPT-4\",\"BERT\"],\"language\":\"en\",\"includeSentiment\":false}", + "description": "Analyze structured chat log data for mentions without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Mention", + "context": null + } + }, + { + "name": "model-management.analyzeForecast", + "description": "Analyzes a given business forecast dataset to evaluate model accuracy, detect anomalies, and provide actionable insights. Accepts time series forecast data with actual and predicted values, performs statistical analysis including error metrics (e.g., MAPE, RMSE), trend evaluation, and anomaly detection, and outputs a summary report highlighting model performance and potential improvements.", + "category": "model-management", + "parameters": [ + { + "name": "forecastData", + "type": "array", + "description": "An array of forecast entries each containing timestamp, predicted value, and actual value for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "errorMetrics", + "type": "array", + "description": "List of error metrics to calculate for model evaluation (e.g., ['MAPE', 'RMSE']).", + "required": false, + "defaultValue": "[\"MAPE\",\"RMSE\"]" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag indicating whether to perform anomaly detection on the forecast data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trendAnalysis", + "type": "boolean", + "description": "Flag to enable trend and seasonality analysis within the forecast data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (0-1) for statistical tests and anomaly detection thresholds.", + "required": false, + "defaultValue": "0.95" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including calculated error metrics, detected anomaly periods, trend insights, and recommendations for model improvements." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to validate, evaluate, and gain insights from business forecast models, especially to assess prediction accuracy over time and detect unusual patterns that may impact business decisions. It's beneficial for continuous model monitoring and improvement.", + "limitations": "This tool analyzes forecast data but does not train or deploy models. It assumes input data includes both predicted and actual values. It cannot generate new forecasts or handle unstructured data formats.", + "examples": [ + "Analyze the accuracy of last quarter's sales forecast with anomaly detection enabled.", + "Evaluate forecast errors using MAPE and RMSE for monthly revenue predictions.", + "Generate insights from forecast data including trend analysis for the upcoming year." + ] + }, + "tags": [ + "forecasting", + "model analysis", + "business intelligence", + "time series", + "anomaly detection", + "trend analysis" + ], + "examples": [ + { + "inputJson": "{\"forecastData\":[{\"timestamp\":\"2024-01-01\",\"predicted\":1000,\"actual\":980},{\"timestamp\":\"2024-02-01\",\"predicted\":1100,\"actual\":1150},{\"timestamp\":\"2024-03-01\",\"predicted\":1200,\"actual\":1190}],\"errorMetrics\":[\"MAPE\",\"RMSE\"],\"detectAnomalies\":true,\"trendAnalysis\":true,\"confidenceLevel\":0.95}", + "description": "Evaluates quarterly forecast data calculating MAPE and RMSE with anomaly and trend analysis enabled." + }, + { + "inputJson": "{\"forecastData\":[{\"timestamp\":\"2024-01-01\",\"predicted\":5000,\"actual\":5100},{\"timestamp\":\"2024-02-01\",\"predicted\":5300,\"actual\":5200}],\"errorMetrics\":[\"RMSE\"],\"detectAnomalies\":false,\"trendAnalysis\":false}", + "description": "Analyzes two months forecast focusing on RMSE error metric without anomaly or trend analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Forecast", + "context": null + } + }, + { + "name": "model-management.uploadAttachment", + "description": "Uploads a media attachment file to an AI model management platform, associating it with a specific model version or deployment. Accepts file data and metadata, performs validation and stores the attachment securely. Returns confirmation details including attachment ID and access URL.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to which the attachment is linked.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Optional version of the model to associate the attachment with. If omitted, associates with the latest version.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The original filename of the attachment (e.g., image.png, log.txt).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileData", + "type": "string", + "description": "Base64-encoded content of the attachment file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file (e.g., image/png, application/pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional text description or notes about the attachment.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPublic", + "type": "boolean", + "description": "Flag indicating whether the attachment should be publicly accessible or restricted.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object confirming successful upload with attachment metadata including unique id and access links, or error details if upload failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to associate external media files, such as training logs, sample inputs, or result images, with a managed AI model version to facilitate auditing, debugging, or documentation. It is suitable when attachments must be stored reliably in the model management platform with controlled access.", + "limitations": "This tool does not perform content analysis or validation beyond format and size checks. It cannot modify model parameters or deployment configurations directly.", + "examples": [ + "Upload a debug log file to model version v1.2 for internal review.", + "Attach a sample input image to the latest deployment for reference.", + "Store a PDF report associated with an AI model for audit purposes." + ] + }, + "tags": [ + "upload", + "attachment", + "model-management", + "media", + "file-storage", + "AI-models", + "versioning" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"version\":\"v2.0\",\"fileName\":\"result_plot.png\",\"fileData\":\"iVBORw0KGgoAAAANSUhEUgAAA...\",\"fileType\":\"image/png\",\"description\":\"Plot showing model accuracy.\",\"isPublic\":false}", + "description": "Upload a PNG plot image for model version 2.0 as a private attachment." + }, + { + "inputJson": "{\"modelId\":\"xyz789\",\"fileName\":\"training_log.txt\",\"fileData\":\"VGhpcyBpcyBhIHRlc3QgbG9nIGNvbnRlbnQu\",\"fileType\":\"text/plain\",\"isPublic\":true}", + "description": "Upload a plain text training log file to the latest model version as a public attachment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Attachment", + "context": null + } + }, + { + "name": "model-management.downloadAttachment", + "description": "Downloads an attachment file associated with a specific AI model version from a model management system. Accepts model ID and version along with attachment identifier, retrieves the file, and returns metadata and content for further use or storage.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the model whose attachment is to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelVersion", + "type": "string", + "description": "Version string or tag of the model to specify which version's attachment to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachmentId", + "type": "string", + "description": "Identifier of the attachment file associated with the specified model version.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to return attachment metadata along with the file content.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing attachment metadata such as filename, content type, and size, plus the file content encoded as a base64 string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically fetch specific attachment files linked to a model version in a model management system, such as training logs, exported model binaries, or documentation files. It helps automate retrieval of these resources for analysis, deployment, or archiving.", + "limitations": "This tool cannot handle downloading multiple attachments simultaneously nor access attachments outside the specified model and version context.", + "examples": [ + "Download the training log attachment for model 'abc123' version 'v2.0'.", + "Fetch the exported model binary attachment for model 'modelX' version 'release-2023'.", + "Retrieve the model documentation PDF file attached to model 'xyz789' version '1.0.1'." + ] + }, + "tags": [ + "model-management", + "download", + "attachment", + "file", + "model-version", + "ai-model", + "artifact" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"modelVersion\":\"v2.0\",\"attachmentId\":\"logfile-20230901\"}", + "description": "Download the training log file for model abc123 version v2.0." + }, + { + "inputJson": "{\"modelId\":\"modelX\",\"modelVersion\":\"release-2023\",\"attachmentId\":\"exported-binary\",\"includeMetadata\":false}", + "description": "Download the exported model binary without metadata for modelX release-2023." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Attachment", + "context": null + } + }, + { + "name": "model-management.downloadXML", + "description": "Downloads an AI model's configuration or metadata serialized in XML format from a specified repository or server. Accepts parameters to specify the model identifier, version, and authentication credentials, then retrieves and returns the XML content as a string for further processing or storage.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to download XML data for.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Specific version of the model to download. Defaults to latest if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the repository or server hosting the model XML files.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or key for secure access to the repository if required.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download operation before aborting.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Object containing the downloaded XML content as a string, along with metadata such as success status and any error messages." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to retrieve model configuration, metadata, or architecture details provided in XML format, for example, during model deployment or analysis workflows requiring structured model info. This tool provides a reliable way to fetch the XML representation of AI models from designated repositories.", + "limitations": "Cannot convert or parse the XML; only downloads raw XML string. Requires valid model identifiers and repository access credentials when necessary. Does not handle non-XML formats or corrupted files.", + "examples": [ + "Download the latest XML metadata for a model with id 'model_123' from a secure internal repository.", + "Fetch version 'v2.0' configuration XML of a model hosted on a public cloud storage via its URL.", + "Retrieve XML descriptor for a model using an authentication token to access a private server." + ] + }, + "tags": [ + "download", + "model-management", + "XML", + "metadata", + "AI model", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model_123\",\"version\":\"\",\"repositoryUrl\":\"https://models.example.com/api/download\",\"authToken\":\"\"}", + "description": "Download the latest XML metadata for model_123 from a public repository." + }, + { + "inputJson": "{\"modelId\":\"image_classifier\",\"version\":\"1.2.0\",\"repositoryUrl\":\"https://securemodels.internal/api\",\"authToken\":\"abcd1234token\",\"timeoutSeconds\":60}", + "description": "Download specific version 1.2.0 of image_classifier model from a secure internal repository with authentication and extended timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "XML", + "context": null + } + }, + { + "name": "model-management.downloadHTML", + "description": "Downloads the rendered HTML content of a deployed AI model's web interface or dashboard. Takes the model identifier and optional authentication tokens, fetches the live HTML page presenting the model's UI or results, and returns the raw HTML string for archival, analysis, or further processing.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the deployed model whose HTML interface is to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "Optional custom URL of the model's HTML page to download if different from the default model UI address.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or API key to access protected model web interfaces.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeResources", + "type": "boolean", + "description": "If true, attempts to download and embed linked CSS and JavaScript resources inline for a self-contained HTML file.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'htmlContent', the raw HTML string downloaded, and 'resourcesEmbedded' boolean indicating if linked resources were embedded." + }, + "aiAgent": { + "useCase": "When an AI agent needs to archive, analyze, or extract information from the live web interface of a deployed AI model, this tool enables downloading the raw rendered HTML page. Useful for model documentation, UI snapshotting, or offline inspection of model dashboards.", + "limitations": "Cannot execute or interpret JavaScript beyond static HTML retrieval; dynamic content requiring client-side rendering might not be fully captured. Authentication token is required for protected pages, but complex multi-step auth flows are unsupported.", + "examples": [ + "Download the HTML page of model 'abc123' for archival.", + "Fetch the HTML interface of a protected model dashboard using an authentication token.", + "Download the model UI with inline styles and scripts for offline viewing." + ] + }, + "tags": [ + "model-management", + "download", + "html", + "web-interface", + "deployed-model", + "dashboard", + "archival" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model-98765\",\"authToken\":\"token123\"}", + "description": "Download the default HTML interface of a deployed model using an authentication token." + }, + { + "inputJson": "{\"modelId\":\"model-abc\",\"url\":\"https://customhost.com/model-abc/ui.html\",\"includeResources\":true}", + "description": "Download HTML from a custom URL with embedded CSS/JS resources for offline viewing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "HTML", + "context": null + } + }, + { + "name": "model-management.uploadHTML", + "description": "Uploads an HTML file or raw HTML string as part of a model management process, enabling storage and reference of HTML-based model documentation or model interface content within a model registry. Accepts an HTML file or string, associates metadata, and returns a unique identifier for access.", + "category": "model-management", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML string content to upload if no file is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "htmlFilePath", + "type": "string", + "description": "Path or URL to an HTML file to upload. Used if htmlContent is not given.", + "required": false, + "defaultValue": "" + }, + { + "name": "modelId", + "type": "string", + "description": "Identifier of the model to associate this HTML content with.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the uploaded HTML content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags labeling the HTML content for easier categorization or search.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isPublic", + "type": "boolean", + "description": "If true, the uploaded HTML content will be publicly accessible; otherwise, access is restricted to authorized users.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique content ID assigned to the uploaded HTML, the associated model ID, and the public access status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload or update HTML content related to an AI model within a model management system, such as model documentation pages, interactive interface previews, or detailed results dashboards stored in HTML format. The agent should use it when HTML content needs to be linked to models for training, deployment, or further reference.", + "limitations": "This tool only uploads and stores HTML content; it does not validate HTML correctness, render the HTML, or process any embedded scripts. It does not handle other file types or convert content formats.", + "examples": [ + "Upload an HTML documentation page for a specific model by providing raw HTML string and modelId.", + "Upload an HTML file located at a given URL to associate with a model in the registry.", + "Mark uploaded HTML content as public to share interactive model interface details with external stakeholders." + ] + }, + "tags": [ + "model-management", + "upload", + "HTML", + "documentation", + "model-registry", + "content-management" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Model V1 Docs

Details on inputs and outputs.

\",\"modelId\":\"model_12345\",\"description\":\"Initial documentation for model 12345.\",\"tags\":[\"documentation\",\"version1\"],\"isPublic\":false}", + "description": "Uploading raw HTML string documentation for an existing model, marking it private by default." + }, + { + "inputJson": "{\"htmlFilePath\":\"https://example.com/model_interface.html\",\"modelId\":\"model_98765\",\"description\":\"Interactive UI preview for model 98765.\",\"tags\":[\"interface\",\"preview\"],\"isPublic\":true}", + "description": "Uploading an external HTML file URL to a model and making it publicly accessible." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "HTML", + "context": null + } + }, + { + "name": "model-management.renderLink", + "description": "This tool accepts a URL or model resource identifier and renders it as a clickable HTML link or embeddable preview within a dashboard or monitoring panel. It processes the input link, validates its accessibility if requested, and formats the output for inclusion in model management user interfaces, supporting customization of link text and display style.", + "category": "model-management", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL or resource link to the model artifact or dashboard page to render as a clickable link.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkText", + "type": "string", + "description": "The display text for the link. If empty, the URL will be displayed as the link text.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Whether the rendered link should open in a new browser tab when clicked.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateUrl", + "type": "boolean", + "description": "Whether to perform a validation check to confirm the URL is accessible before rendering.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customCssClass", + "type": "string", + "description": "Optional CSS class name to apply custom styling to the rendered link element.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the HTML string of the rendered link and metadata about validation status when applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to present or embed model management related resources, such as model deployment URLs, monitoring dashboards, or documentation links, within a rich UI or report. It ensures hyperlinks are properly formatted and optionally verifies link accessibility to enhance user experience.", + "limitations": "This tool does not render the actual content behind the links (such as dashboards or model outputs), nor does it handle authentication for protected resources. URL validation is limited to accessibility checks and does not guarantee content correctness or permissions.", + "examples": [ + "Render a link to a model monitoring dashboard with custom link text.", + "Render a model artifact storage URL as a clickable link that opens in a new tab.", + "Render a documentation URL without validation and default link text." + ] + }, + "tags": [ + "model-management", + "rendering", + "link", + "ui", + "dashboard", + "validation", + "html" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://model-platform.example.com/dashboard/monitor123\",\"linkText\":\"Model Monitor Dashboard\",\"openInNewTab\":true,\"validateUrl\":true,\"customCssClass\":\"dashboard-link\"}", + "description": "Render a clickable link to a model monitor dashboard with custom text, open in new tab, validate accessibility, and custom CSS class." + }, + { + "inputJson": "{\"url\":\"https://storage.example.com/models/version42.pkl\",\"linkText\":\"\",\"openInNewTab\":true,\"validateUrl\":false,\"customCssClass\":\"\"}", + "description": "Render a model artifact URL as a link showing the URL as text, opening in a new tab without validation or custom styling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Link", + "context": null + } + }, + { + "name": "model-management.formatResume", + "description": "Formats a raw resume text or JSON data into a structured, visually appealing resume document in common formats like PDF, DOCX, or HTML. It accepts unstructured text or JSON representing resume fields, applies templates and styling, and outputs a well-organized professional resume ready for sharing or submission.", + "category": "model-management", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw resume text or JSON string with resume details such as experience, education, skills.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Specifies the format of inputData: 'text' for unstructured text or 'json' for structured JSON input.", + "required": true, + "defaultValue": "text" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted resume: options include 'pdf', 'docx', and 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "templateName", + "type": "string", + "description": "Name of the resume template style to apply (e.g., 'modern', 'classic').", + "required": false, + "defaultValue": "modern" + }, + { + "name": "includeSections", + "type": "array", + "description": "List of resume sections to include such as ['experience', 'education', 'skills', 'certifications']. If empty, includes all available sections.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family to use in the resume formatting, e.g., 'Arial', 'Times New Roman'.", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Base font size to use in points for the resume text.", + "required": false, + "defaultValue": "11" + }, + { + "name": "highlightColor", + "type": "string", + "description": "Hex color code used for headers and highlights in the resume, e.g., '#003366'.", + "required": false, + "defaultValue": "#000000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted resume as a base64-encoded string and metadata about the document." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert unstructured or structured resume data into a professional, standardized resume document ready for distribution or application. Ideal for agents that prepare candidate resumes for job applications or for generating personalized resumes from template data.", + "limitations": "Cannot verify accuracy or completeness of resume content; does not provide grammar or spelling corrections; limited to predefined templates and styles; complex graphics or images in resumes may not be supported.", + "examples": [ + "Format a raw text resume into a PDF using the modern template.", + "Convert structured JSON resume data to an HTML formatted resume showing only education and skills sections.", + "Generate a DOCX resume with custom font and highlight color from unstructured resume text." + ] + }, + "tags": [ + "formatting", + "resume", + "document", + "model-management", + "pdf", + "docx", + "html", + "template" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"John Doe\\nExperience:\\nSoftware Engineer at XYZ Corp, 2018-2023\",\"inputFormat\":\"text\",\"outputFormat\":\"pdf\",\"templateName\":\"modern\",\"includeSections\":[],\"fontFamily\":\"Arial\",\"fontSize\":11,\"highlightColor\":\"#003366\"}", + "description": "Format a raw text resume into a PDF using the modern template." + }, + { + "inputJson": "{\"inputData\":\"{\\\"name\\\":\\\"Jane Smith\\\",\\\"education\\\":[{\\\"degree\\\":\\\"BSc Computer Science\\\",\\\"year\\\":2015}],\\\"skills\\\":[\\\"JavaScript\\\",\\\"React\\\"]}\",\"inputFormat\":\"json\",\"outputFormat\":\"html\",\"templateName\":\"classic\",\"includeSections\":[\"education\",\"skills\"],\"fontFamily\":\"Times New Roman\",\"fontSize\":12,\"highlightColor\":\"#000080\"}", + "description": "Convert structured JSON resume to an HTML formatted resume showing only education and skills." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Resume", + "context": null + } + }, + { + "name": "model-management.formatSpec", + "description": "Formats a machine learning model specification document to a standardized schema for consistency and clarity. Accepts input as raw spec text or JSON object, applies formatting rules including indentation, field normalization, and validation hints, and outputs a clean, validated spec document for use in training or deployment pipelines.", + "category": "model-management", + "parameters": [ + { + "name": "specContent", + "type": "string", + "description": "The raw model specification content as a JSON string or YAML text to be formatted and standardized.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input specification ('json' or 'yaml').", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted spec ('json' or 'yaml').", + "required": false, + "defaultValue": "json" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the output format.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeValidationHints", + "type": "boolean", + "description": "Whether to include validation hints and comments in the output specification for better clarity.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted specification as a string under 'formattedSpec' key, and a boolean 'isValid' specifying if the spec passed basic validation checks." + }, + "aiAgent": { + "useCase": "Use this tool to standardize and improve readability of model specification documents before feeding them into model training or deployment pipelines. It helps ensure specs follow a consistent format, reducing errors from malformed config files and improving automation reliability.", + "limitations": "This tool does not modify or enrich the semantic content of the specification beyond formatting and basic validation. It may not support all custom or proprietary schema extensions.", + "examples": [ + "Format a YAML model spec document into a clean JSON spec with 4-space indentation.", + "Validate and pretty-print a JSON model spec string, including validation hints as comments.", + "Convert a JSON model spec to YAML format with 2-space indentation for integration into a deployment system." + ] + }, + "tags": [ + "model-management", + "specification", + "formatting", + "validation", + "model-deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"specContent\":\"{\\\"modelName\\\": \\\"MyModel\\\", \\\"layers\\\": [{\\\"type\\\": \\\"dense\\\", \\\"units\\\": 64}]}\",\"inputFormat\":\"json\",\"outputFormat\":\"json\",\"indentationSpaces\":4,\"includeValidationHints\":true}", + "description": "Format a JSON model spec string with 4 space indentation including validation hints." + }, + { + "inputJson": "{\"specContent\":\"modelName: MyModel\\nlayers:\\n - type: dense\\n units: 64\",\"inputFormat\":\"yaml\",\"outputFormat\":\"json\",\"indentationSpaces\":2,\"includeValidationHints\":false}", + "description": "Convert a YAML model spec to JSON format with 2 space indentation without validation hints." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Spec", + "context": null + } + }, + { + "name": "model-management.draftArticle", + "description": "This tool assists in drafting a coherent, structured article based on specified topics, target audience, and style preferences. It accepts input parameters such as topic keywords, article length, tone, and format, then generates a well-organized draft article text as output suitable for further editing or publication.", + "category": "model-management", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Primary subject or theme for the article to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "The intended readership or demographic to tailor the article's style and complexity.", + "required": false, + "defaultValue": "" + }, + { + "name": "articleLength", + "type": "number", + "description": "Desired approximate word count of the drafted article.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "tone", + "type": "string", + "description": "Writing style or tone of the article, e.g., formal, casual, persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "format", + "type": "string", + "description": "Preferred article format such as 'listicle', 'how-to', 'opinion', or 'news report'.", + "required": false, + "defaultValue": "paragraph" + }, + { + "name": "includeReferences", + "type": "boolean", + "description": "Whether to include cited references or external sources in the draft.", + "required": false, + "defaultValue": "false" + }, + { + "name": "keywords", + "type": "array", + "description": "Additional keywords or phrases to ensure are emphasized within the article content.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated article text as a string along with a brief outline of sections included." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate a first-draft article or blog post for a specified topic tailored to a particular audience and style. It enables automated content creation workflows where the AI can produce structured text ready for review and refinement.", + "limitations": "The tool cannot guarantee factual accuracy or updated information and may produce generic content without in-depth expertise. It does not perform final editing or fact checking.", + "examples": [ + "Draft a 1500-word formal article on renewable energy for university students.", + "Create a casual 800-word how-to article about home gardening tips.", + "Generate a persuasive opinion piece about urban transportation challenges targeted at city planners." + ] + }, + "tags": [ + "model-management", + "content-generation", + "article-writing", + "drafting", + "text-generation", + "AI-content" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Artificial Intelligence Ethics\",\"targetAudience\":\"Technology professionals\",\"articleLength\":1200,\"tone\":\"formal\",\"format\":\"paragraph\",\"includeReferences\":true,\"keywords\":[\"AI ethics\",\"machine learning\",\"bias\"]}", + "description": "Draft a formal 1200-word article about AI ethics for technology professionals including references." + }, + { + "inputJson": "{\"topic\":\"Easy Vegan Recipes\",\"targetAudience\":\"general public\",\"articleLength\":800,\"tone\":\"casual\",\"format\":\"listicle\",\"includeReferences\":false,\"keywords\":[\"vegan\",\"recipes\",\"healthy\"]}", + "description": "Generate a casual 800-word listicle on easy vegan recipes for a general audience without references." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Article", + "context": null + } + }, + { + "name": "model-management.generateForecast", + "description": "Generates business forecasts based on historical data and selected forecasting model parameters. Accepts time series data and model configuration settings, performs statistical or machine learning-based forecasting, and outputs predicted future values along with confidence intervals.", + "category": "model-management", + "parameters": [ + { + "name": "historicalData", + "type": "array", + "description": "Array of historical data points, each with a timestamp and numeric value, used as the input time series for forecasting.", + "required": true, + "defaultValue": "" + }, + { + "name": "forecastHorizon", + "type": "number", + "description": "Number of future time periods to forecast beyond the latest historical data point.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "Type of forecasting model to use, e.g., 'ARIMA', 'Prophet', or 'LSTM'.", + "required": true, + "defaultValue": "" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level for prediction intervals, expressed as a decimal between 0 and 1 (e.g., 0.95 for 95%).", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "seasonalityPeriod", + "type": "number", + "description": "Optional parameter indicating the seasonal period length in the data (e.g., 12 for monthly seasonality in years).", + "required": false, + "defaultValue": "" + }, + { + "name": "exogenousVariables", + "type": "array", + "description": "Optional array of objects representing external variables that influence the forecast, each matched by timestamp with historicalData.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the forecasted values array with timestamps, predicted numeric values, and corresponding confidence intervals." + }, + "aiAgent": { + "useCase": "Use this tool to generate quantitative forecasts of business metrics such as sales, revenue, or demand using historical time series data. Suitable when you have time-indexed data and want future predictions with statistical confidence intervals, leveraging configurable forecasting models.", + "limitations": "This tool does not perform data cleansing or feature engineering beyond the provided parameters. It requires properly formatted input data and cannot infer causal relationships or incorporate unstructured data sources.", + "examples": [ + "Generate a 12-month sales forecast using historical monthly sales data with an ARIMA model.", + "Forecast next quarter's revenue with a Prophet model incorporating seasonal patterns and 95% confidence intervals.", + "Provide a 6-week demand forecast using a machine learning model with exogenous variables like marketing spend." + ] + }, + "tags": [ + "forecasting", + "time-series", + "business", + "model-management", + "prediction", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"historicalData\":[{\"timestamp\":\"2022-01-01\",\"value\":100},{\"timestamp\":\"2022-02-01\",\"value\":120},{\"timestamp\":\"2022-03-01\",\"value\":130}],\"forecastHorizon\":3,\"modelType\":\"ARIMA\",\"confidenceLevel\":0.95}", + "description": "Generate a 3-month forecast using ARIMA on monthly sales data with 95% confidence." + }, + { + "inputJson": "{\"historicalData\":[{\"timestamp\":\"2023-01-01\",\"value\":2000},{\"timestamp\":\"2023-02-01\",\"value\":2100},{\"timestamp\":\"2023-03-01\",\"value\":2300}],\"forecastHorizon\":6,\"modelType\":\"Prophet\",\"seasonalityPeriod\":12}", + "description": "Produce a 6-month revenue forecast with monthly seasonality modeled by Prophet." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Forecast", + "context": null + } + }, + { + "name": "model-management.composeThread", + "description": "This tool composes a threaded conversation by aggregating multiple message objects into a coherent thread. It accepts an array of message objects, each potentially containing text, sender, timestamp, and metadata. It processes and orders messages, optionally filtering and formatting, then outputs a structured thread object suitable for communication workflows or AI model training.", + "category": "model-management", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of message objects to compose into a thread; each message should have at least a text field, optionally sender, timestamp, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "sortByTimestamp", + "type": "boolean", + "description": "Whether to order messages by their timestamp before composing the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include metadata in the output thread; set false to exclude metadata for simplified thread output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxMessages", + "type": "number", + "description": "Maximum number of messages to include in the composed thread; excess messages are truncated.", + "required": false, + "defaultValue": "100" + }, + { + "name": "filterBySender", + "type": "string", + "description": "Optional sender ID to filter messages by; only messages from this sender are included if set.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured thread object containing the composed messages in order, including text, sender, timestamp, and optionally metadata, suitable for threaded communication management or further AI processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to build or re-organize a conversation thread from raw message data, such as preparing training data for dialogue models or rendering message threads in communication apps. It helps in compiling disparate messages into a chronological or filtered communication sequence.", + "limitations": "This tool does not perform message content summarization or natural language generation, nor does it handle message de-duplication or semantic thread merging beyond ordering and filtering.", + "examples": [ + "Compose a thread from an unordered list of chat messages for training a conversational AI model.", + "Generate a filtered thread including only messages from a specific sender to analyze user behavior.", + "Limit the composed thread to the most recent 50 messages for display in a messaging app interface." + ] + }, + "tags": [ + "model-management", + "thread-composition", + "communication", + "message-processing", + "conversation", + "filtering", + "ordering" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"text\":\"Hello!\",\"sender\":\"user1\",\"timestamp\":1685612345678},{\"text\":\"Hi there! How can I help?\",\"sender\":\"agent\",\"timestamp\":1685612350000}],\"sortByTimestamp\":true,\"includeMetadata\":false,\"maxMessages\":10,\"filterBySender\":\"\"}", + "description": "Compose a simple two-message thread ordered by timestamp without metadata, including all messages." + }, + { + "inputJson": "{\"messages\":[{\"text\":\"Error report attached.\",\"sender\":\"user2\",\"timestamp\":1685612300000},{\"text\":\"Thanks, checking it now.\",\"sender\":\"support\",\"timestamp\":1685612350000},{\"text\":\"Any updates?\",\"sender\":\"user2\",\"timestamp\":1685612400000}],\"sortByTimestamp\":true,\"includeMetadata\":true,\"maxMessages\":5,\"filterBySender\":\"support\"}", + "description": "Compose a thread filtered to only include messages from the support sender with metadata included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Thread", + "context": null + } + }, + { + "name": "model-management.buildCache", + "description": "Builds a cache infrastructure optimized for AI model management tasks such as training and inference. Accepts configuration parameters including cache size, eviction policy, and storage backend. Processes these inputs to provision and initialize the cache system, returning connection details and status.", + "category": "model-management", + "parameters": [ + { + "name": "cacheName", + "type": "string", + "description": "Unique name identifier for the cache instance to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSizeMB", + "type": "number", + "description": "Maximum cache size in megabytes to limit memory or disk usage.", + "required": false, + "defaultValue": "512" + }, + { + "name": "evictionPolicy", + "type": "string", + "description": "Cache eviction policy to manage data lifecycle, e.g., LRU, FIFO, or LFU.", + "required": false, + "defaultValue": "LRU" + }, + { + "name": "storageBackend", + "type": "string", + "description": "Type of storage backend for the cache: memory, disk, or hybrid.", + "required": false, + "defaultValue": "memory" + }, + { + "name": "persistence", + "type": "boolean", + "description": "Whether to persist cache data across model restarts or only in-memory.", + "required": false, + "defaultValue": "true" + }, + { + "name": "replicationFactor", + "type": "number", + "description": "Number of replicas to create for distributed caching scenarios.", + "required": false, + "defaultValue": "1" + }, + { + "name": "ttlSeconds", + "type": "number", + "description": "Time-to-live in seconds for cached entries before expiration.", + "required": false, + "defaultValue": "3600" + } + ], + "returns": { + "type": "object", + "description": "Object containing the cache instance identifier, connection URI, configuration summary, and current status." + }, + "aiAgent": { + "useCase": "Use this tool when deploying or managing AI models that require efficient caching of model artifacts, intermediate results, or inference outputs to accelerate processes. It's useful in both training pipelines and serving environments to optimize performance and resource utilization.", + "limitations": "This tool does not train or deploy models itself, nor does it handle data preprocessing or postprocessing. It focuses only on building and configuring the caching infrastructure.", + "examples": [ + "Build a cache with 1GB size using disk storage and LFU eviction.", + "Create an in-memory cache with persistence disabled for temporary inference results.", + "Set up a distributed cache with replication factor 3 and TTL of 10 minutes." + ] + }, + "tags": [ + "model-management", + "cache", + "infrastructure", + "performance", + "deployment", + "training" + ], + "examples": [ + { + "inputJson": "{\"cacheName\":\"modelCache1\",\"maxSizeMB\":1024,\"evictionPolicy\":\"LFU\",\"storageBackend\":\"disk\",\"persistence\":true,\"replicationFactor\":1,\"ttlSeconds\":600}", + "description": "Build a 1GB disk-persisted cache with LFU eviction and 10 minute TTL." + }, + { + "inputJson": "{\"cacheName\":\"tempInferenceCache\",\"maxSizeMB\":256,\"evictionPolicy\":\"LRU\",\"storageBackend\":\"memory\",\"persistence\":false}", + "description": "Create a temporary in-memory cache for inference without persistence." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cache", + "context": null + } + }, + { + "name": "model-management.buildDependency", + "description": "This tool takes a model project configuration specifying dependency details, processes the information to resolve compatible dependency versions, and builds an optimized dependency bundle that can be deployed with the AI model. It outputs metadata on the resolved dependencies, including version constraints, conflicts, and installation instructions.", + "category": "model-management", + "parameters": [ + { + "name": "projectConfigPath", + "type": "string", + "description": "File path to the model project configuration (e.g., JSON or YAML) that declares the dependencies to build.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "The target runtime environment for which dependencies should be resolved (e.g., 'python3.8', 'nodejs14', 'tensorflow2.6').", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyOverrides", + "type": "object", + "description": "Optional object mapping dependency names to specific versions to override default resolution.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDevDependencies", + "type": "boolean", + "description": "Whether to include development dependencies in the build process.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the output bundle (e.g., 'requirements.txt', 'package.json.lock', 'conda.yaml').", + "required": false, + "defaultValue": "requirements.txt" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resolved dependencies metadata, including resolved versions, conflict reports, and output bundle content or file path." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare the dependency environment for deploying or training an AI model, ensuring compatible dependency versions and creating a deployable dependency bundle. It's ideal for automating setup of reproducible environments in CI/CD pipelines or managed deployments.", + "limitations": "This tool cannot perform actual installation of dependencies or runtime environment setup; it only resolves and builds dependency specifications. It also depends on accurate and compatible dependency definitions in the project config.", + "examples": [ + "Build dependencies for a TensorFlow model project targeting Python 3.8, including dev dependencies, with some version overrides.", + "Generate a requirements.txt bundle for a PyTorch model without dev dependencies.", + "Resolve dependencies for a Node.js-based ML service targeting nodejs14 environment." + ] + }, + "tags": [ + "model-management", + "dependency", + "build", + "package-management", + "deployment", + "environment-setup" + ], + "examples": [ + { + "inputJson": "{\"projectConfigPath\":\"./model-config.yaml\",\"targetEnvironment\":\"python3.8\",\"dependencyOverrides\":{\"numpy\":\"1.21.0\"},\"includeDevDependencies\":true,\"outputFormat\":\"requirements.txt\"}", + "description": "Build Python dependencies for a model project with a specific numpy version and include dev dependencies." + }, + { + "inputJson": "{\"projectConfigPath\":\"./ml-service.json\",\"targetEnvironment\":\"nodejs14\",\"includeDevDependencies\":false,\"outputFormat\":\"package-lock.json\"}", + "description": "Build Node.js dependencies for a machine learning service, excluding dev dependencies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Dependency", + "context": null + } + }, + { + "name": "model-management.createMention", + "description": "This tool generates a structured mention object used in communication platforms or AI systems. It accepts input including the user to be mentioned, optional text for display, and contextual metadata. It processes these inputs to create a standardized mention entity that can be embedded in messages or documents, enabling references to specific users or roles.", + "category": "model-management", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "The unique identifier of the user to be mentioned.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "Optional text to display for the mention instead of the user ID.", + "required": false, + "defaultValue": "" + }, + { + "name": "context", + "type": "object", + "description": "Optional contextual data such as channel ID, timestamp, or additional metadata related to the mention.", + "required": false, + "defaultValue": "" + }, + { + "name": "mentionType", + "type": "string", + "description": "Type of mention, e.g., 'user', 'role', or 'channel'. Defaults to 'user'.", + "required": false, + "defaultValue": "\"user\"" + } + ], + "returns": { + "type": "object", + "description": "An object representing the mention entity with fields like id, type, displayText, and context gathered from input." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create standardized mention entities for inserting references to users, roles, or channels within messaging or collaboration platforms. Particularly useful when assembling complex messages programmatically or managing user mentions in AI-generated content.", + "limitations": "This tool does not send messages or handle delivery of mentions; it only constructs the mention entity structure. It also requires accurate user or role identifiers to produce valid mentions.", + "examples": [ + "Create a mention for user 'user123' with display text 'John Doe'.", + "Generate a channel mention given a channel ID for contextual messaging.", + "Create a role mention with context about the message timestamp." + ] + }, + "tags": [ + "mention", + "model-management", + "communication", + "user-reference", + "message-formatting" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"user123\",\"displayText\":\"John Doe\"}", + "description": "Create a mention object for user 'user123' displaying 'John Doe'." + }, + { + "inputJson": "{\"userId\":\"channel456\",\"mentionType\":\"channel\",\"context\":{\"topic\":\"general\"}}", + "description": "Create a channel mention for channel with ID 'channel456' including context about the topic." + }, + { + "inputJson": "{\"userId\":\"role789\",\"mentionType\":\"role\",\"displayText\":\"Admins\"}", + "description": "Create a mention for a role with ID 'role789' displayed as 'Admins'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Mention", + "context": null + } + }, + { + "name": "model-management.createMigration", + "description": "Creates a database migration script for AI model version changes. Accepts the current and target model schema definitions, along with optional migration settings, to generate a migration script that updates the database schema accordingly. Outputs the migration script as a string and metadata about changes applied.", + "category": "model-management", + "parameters": [ + { + "name": "currentSchema", + "type": "object", + "description": "The current database schema representation for the AI model setup, defined as a JSON object detailing tables and fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetSchema", + "type": "object", + "description": "The target database schema representation to migrate to, defined as a JSON object similar to currentSchema.", + "required": true, + "defaultValue": "" + }, + { + "name": "migrationName", + "type": "string", + "description": "A descriptive name for the migration to identify it in version history.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDataMigration", + "type": "boolean", + "description": "Whether to generate data migration scripts in addition to schema changes, e.g., transforming stored data formats.", + "required": false, + "defaultValue": "false" + }, + { + "name": "databaseType", + "type": "string", + "description": "The type of database to generate the migration script for (e.g., 'PostgreSQL', 'MySQL').", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the migration script as a string, a summary of schema changes, and the migration name for tracking." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate database migration scripts to update the storage schema supporting AI models. It helps automate and manage schema evolution when models evolve their data needs, ensuring consistency and version control.", + "limitations": "This tool currently can only handle relational database schemas and does not perform migration execution; it generates scripts that must be manually reviewed and applied. Complex data transformations might require custom scripts beyond automated generation.", + "examples": [ + "Generate a migration when upgrading from model schema v1 to v2, adding new tables and columns.", + "Create migration scripts for PostgreSQL that include converting data formats for stored model parameters." + ] + }, + "tags": [ + "migration", + "database", + "schema", + "model-versioning", + "automation", + "model-management" + ], + "examples": [ + { + "inputJson": "{\"currentSchema\":{\"tables\":{\"model_parameters\":{\"columns\":{\"id\":\"integer\",\"value\":\"float\"}}}},\"targetSchema\":{\"tables\":{\"model_parameters\":{\"columns\":{\"id\":\"integer\",\"value\":\"float\",\"timestamp\":\"datetime\"}},\"model_metrics\":{\"columns\":{\"id\":\"integer\",\"accuracy\":\"float\"}}}},\"migrationName\":\"addMetricsAndTimestamp\",\"includeDataMigration\":true,\"databaseType\":\"PostgreSQL\"}", + "description": "Migration to add a new metrics table and a timestamp column to the existing parameters table, including data transformations for existing records." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Migration", + "context": null + } + }, + { + "name": "embedding-generation.analyzeThread", + "description": "This tool accepts a communication thread as input, including messages and metadata. It processes the thread to generate vector embeddings capturing semantic content and conversation context. Output is a structured embedding representation enabling downstream tasks like search, summarization, or classification.", + "category": "embedding-generation", + "parameters": [ + { + "name": "threadData", + "type": "object", + "description": "The communication thread data, including messages and related metadata to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for vector generation (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include thread metadata features in the embedding generation process.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxMessages", + "type": "number", + "description": "Maximum number of messages in the thread to process for embedding, truncating older messages if exceeded.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the vector embeddings for the thread, including per-message and aggregated thread embeddings, with metadata summary." + }, + "aiAgent": { + "useCase": "Use this tool when you need to represent the semantic content and context of a multi-message communication thread as one or more vector embeddings for similarity search, sentiment analysis, topic clustering, or summarization. It enables understanding the thread holistically to support AI decision-making or retrieval.", + "limitations": "This tool does not generate natural language summaries or sentiment labels directly; it produces embeddings that require downstream models for interpretation. It cannot process non-textual data like images or attachments in the thread.", + "examples": [ + "Generate embeddings for an email conversation thread to find similar past discussions.", + "Analyze a customer support chat thread to create a vector representation for clustering.", + "Create embeddings from forum discussion threads to improve topic-based retrieval." + ] + }, + "tags": [ + "embedding", + "communication", + "thread-analysis", + "vectorization", + "semantic-search" + ], + "examples": [ + { + "inputJson": "{\"threadData\":{\"messages\":[{\"sender\":\"Alice\",\"text\":\"Hey, are you attending the meeting tomorrow?\",\"timestamp\":\"2024-05-01T09:00:00Z\"},{\"sender\":\"Bob\",\"text\":\"Yes, I'll be there at 10am.\",\"timestamp\":\"2024-05-01T09:05:00Z\"}],\"threadId\":\"12345\",\"topic\":\"Meeting Confirmation\"}}", + "description": "Embedding generation for a short communication thread about a meeting confirmation." + }, + { + "inputJson": "{\"threadData\":{\"messages\":[{\"sender\":\"User1\",\"text\":\"I'm having trouble logging into my account.\",\"timestamp\":\"2024-06-10T12:00:00Z\"},{\"sender\":\"Support\",\"text\":\"Have you tried resetting your password?\",\"timestamp\":\"2024-06-10T12:05:00Z\"},{\"sender\":\"User1\",\"text\":\"Yes, but still no luck.\",\"timestamp\":\"2024-06-10T12:10:00Z\"}],\"threadId\":\"support-9876\",\"topic\":\"Account Access Issues\"},\"embeddingModel\":\"text-embedding-ada-002\",\"includeMetadata\":true}", + "description": "Generate vector embedding for a customer support chat thread, including metadata, using a specific embedding model." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "embedding-generation.analyzeReference", + "description": "This tool accepts a textual reference input (such as academic papers, book excerpts, or technical documents) and performs semantic analysis to generate high-quality vector embeddings that capture the key concepts and contextual relationships within the text. The output includes the embedding vector along with metadata summarizing the reference's main topics and relevance scores for further downstream tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "referenceText", + "type": "string", + "description": "The full text content of the reference material to analyze and embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The embedding model to use for vector generation (e.g., 'bert-base-uncased', 'sentence-transformers/all-MiniLM-L6-v2').", + "required": false, + "defaultValue": "sentence-transformers/all-MiniLM-L6-v2" + }, + { + "name": "language", + "type": "string", + "description": "Language of the reference text to optimize processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to extract and return metadata summarizing main topics and relevance scores alongside the embedding.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTextLength", + "type": "number", + "description": "The maximum number of characters from the input reference text to process (beyond this, text is truncated).", + "required": false, + "defaultValue": "5000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embedding vector as an array of floats, optional metadata about main topics and relevance, and the original input text truncated or processed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert comprehensive reference materials into semantic vector embeddings to support tasks like similarity search, clustering, recommendation, or semantic indexing. It is ideal when you want to preserve contextual meaning from long or complex documents to improve downstream NLP or information retrieval workflows.", + "limitations": "It cannot perform full document summarization or domain-specific entity extraction beyond general topic metadata. Extremely large documents beyond the maxTextLength parameter will be truncated, possibly losing some context.", + "examples": [ + "Generate a semantic embedding of a scientific research paper to find similar studies.", + "Analyze a technical manual excerpt to create a vector embedding for a document retrieval system.", + "Create embeddings from book chapters to enable thematic clustering in a digital library." + ] + }, + "tags": [ + "embedding", + "semantic-analysis", + "reference", + "NLP", + "vectorization", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"referenceText\":\"In this paper, we explore the efficacy of transformers in natural language understanding tasks, particularly in context-aware semantic embeddings.\",\"embeddingModel\":\"sentence-transformers/all-MiniLM-L6-v2\",\"language\":\"en\",\"includeMetadata\":true,\"maxTextLength\":1000}", + "description": "Embedding a summary sentence from a research paper on transformers using a lightweight sentence-transformer model." + }, + { + "inputJson": "{\"referenceText\":\"Chapter 5 focuses on the implementation details of neural network architectures for language modeling...\",\"includeMetadata\":true}", + "description": "Generating vector embeddings and metadata for a book chapter excerpt with default model and settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "embedding-generation.analyzeSession", + "description": "This tool accepts session data including user interactions and textual inputs, processes the data to generate semantic embeddings that represent the session's content and behavioral patterns, and outputs an analysis comprising embedding vectors and summarized insights useful for session-level understanding and downstream tasks like personalization or anomaly detection.", + "category": "embedding-generation", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier of the session to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionData", + "type": "object", + "description": "Detailed data of the session including interaction logs and textual content", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The pre-trained embedding model to use for vector generation", + "required": false, + "defaultValue": "default-sentence-embedding-model" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as timestamps and event types in the analysis", + "required": false, + "defaultValue": "true" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Maximum length of the textual summary generated from session data in number of tokens", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing embedding vectors representing the session, a textual summary of the session content, and optionally metadata insights such as interaction frequency or detected anomalies." + }, + "aiAgent": { + "useCase": "Use this tool when detailed semantic analysis of user sessions is required for tasks such as personalization, user behavior analysis, or automated session summarization based on embedding representations. It is suitable for integrating vector embeddings derived from session data into downstream ML pipelines or analytics dashboards.", + "limitations": "This tool relies on the quality and completeness of session input data and may not capture nuances from incomplete or noisy logs. It does not perform raw session logging or user identification itself and cannot replace dedicated behavioral analytics platforms.", + "examples": [ + "Analyze embedding vectors and generate summary for a user session from web interaction logs.", + "Produce semantic embeddings to feed into a recommendation algorithm based on session transcript data.", + "Summarize user chat session and extract embedding for clustering similar sessions." + ] + }, + "tags": [ + "embedding", + "session-analysis", + "user-behavior", + "nlp", + "vectorization", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess1234\",\"sessionData\":{\"interactions\":[{\"type\":\"click\",\"timestamp\":\"2024-04-20T10:01:00Z\",\"content\":\"button pressed\"},{\"type\":\"text\",\"timestamp\":\"2024-04-20T10:02:00Z\",\"content\":\"User entered query about product features.\"}]},\"embeddingModel\":\"default-sentence-embedding-model\",\"includeMetadata\":true,\"summaryLength\":80}", + "description": "Generate embeddings and summary from a web session containing click and text interactions with metadata included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "model-management.createChecklist", + "description": "Generates a customized checklist document tailored for managing AI model development and deployment processes. Accepts inputs such as model type, development stage, compliance requirements, and team roles, then produces an actionable checklist in JSON format outlining critical steps and validations.", + "category": "model-management", + "parameters": [ + { + "name": "modelType", + "type": "string", + "description": "Specifies the type of AI model (e.g., regression, classification, NLP) to tailor the checklist accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "developmentStage", + "type": "string", + "description": "Defines the current phase of the AI model lifecycle (e.g., data preparation, training, deployment) the checklist should address.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance or regulatory standards (e.g., GDPR, HIPAA) to include relevant checklist items for ensuring adherence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTesting", + "type": "boolean", + "description": "Flag indicating whether to add testing and validation tasks into the checklist.", + "required": false, + "defaultValue": "true" + }, + { + "name": "teamRoles", + "type": "array", + "description": "Specifies roles (e.g., data scientist, engineer, QA) involved to customize task assignments in the checklist.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output checklist document (e.g., JSON, Markdown).", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "A structured checklist document listing tasks, responsible roles, and compliance checks suited to the model type and development stage." + }, + "aiAgent": { + "useCase": "Use this tool when an AI project requires a clear, stage-appropriate checklist to organize and verify model development steps, ensuring standards compliance and role-specific task assignment. Ideal to automate preparation before training or deployment phases.", + "limitations": "Does not dynamically update checklist based on real-time project changes or integrate with external project management tools; output is static based on input parameters.", + "examples": [ + "Create a checklist for deploying a classification model including GDPR compliance and QA testing.", + "Generate a data preparation stage checklist for an NLP model assigning tasks to data scientists and engineers.", + "Produce a markdown checklist for model training stage without compliance requirements." + ] + }, + "tags": [ + "model-management", + "checklist", + "AI model lifecycle", + "compliance", + "project management", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"modelType\":\"classification\",\"developmentStage\":\"deployment\",\"complianceStandards\":[\"GDPR\"],\"includeTesting\":true,\"teamRoles\":[\"data scientist\",\"QA engineer\"],\"outputFormat\":\"JSON\"}", + "description": "Generate deployment checklist for classification model with GDPR compliance and testing included, roles assigned." + }, + { + "inputJson": "{\"modelType\":\"NLP\",\"developmentStage\":\"data preparation\",\"includeTesting\":false,\"teamRoles\":[\"data engineer\",\"data scientist\"],\"outputFormat\":\"Markdown\"}", + "description": "Create data preparation checklist for NLP model without testing tasks, output as Markdown, for specified team roles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Checklist", + "context": null + } + }, + { + "name": "embedding-generation.analyzeHTML", + "description": "Analyzes an HTML document string to generate vector embeddings representing the semantic content and structural features of the HTML. Accepts raw HTML input, optionally extracts visible text or metadata, and outputs a vector embedding suitable for similarity search or downstream ML tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML content to be analyzed and embedded.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractVisibleTextOnly", + "type": "boolean", + "description": "If true, extracts and embeds only the visible text content, ignoring tags and scripts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "If true, attempts to include HTML metadata (titles, meta tags) in the embedding extraction.", + "required": false, + "defaultValue": "false" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "The dimensionality of the output embedding vector.", + "required": false, + "defaultValue": "768" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated vector embedding as an array of floats, the embedding dimension, and optionally a summary of extracted text." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to convert HTML content into a numeric vector representation for tasks like semantic search, content similarity, or clustering. It helps capture both visible textual content and optionally metadata structural cues in the embedding.", + "limitations": "Does not render or interpret dynamic content generated by JavaScript. Embeddings depend on text extraction heuristics and may miss non-textual semantics. Not optimized for very large HTML documents or complex web applications.", + "examples": [ + "Generate a vector embedding for a webpage's HTML to enable semantic search.", + "Analyze the HTML email content to cluster similar emails based on text and metadata.", + "Create embeddings for a set of blog posts' HTML to compare their topical similarity." + ] + }, + "tags": [ + "embedding", + "HTML", + "semantic-analysis", + "vectorization", + "text-processing", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"Test Page

Hello World

This is a test page.

\",\"extractVisibleTextOnly\":true,\"includeMetadata\":true,\"embeddingDimension\":512}", + "description": "Generate a 512-dim embedding from simple HTML including visible text and metadata." + }, + { + "inputJson": "{\"htmlContent\":\"

Visible content only.

\",\"extractVisibleTextOnly\":true,\"includeMetadata\":false}", + "description": "Extract embedding using only visible text content from HTML with script tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "embedding-generation.analyzeDeal", + "description": "Analyzes the textual and numeric content of a business deal document or dataset to generate vector embeddings that capture key features, such as deal terms, parties, financial metrics, and risk indicators. Accepts various input formats including raw text, structured JSON with deal attributes, or URLs to deal summaries. Outputs a consistent vector embedding representation suitable for similarity search or further AI analysis.", + "category": "embedding-generation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "The text content or JSON string representing the deal information to analyze and embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data: 'text', 'json', or 'url'. Determines how the inputData is processed.", + "required": true, + "defaultValue": "text" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "The dimensionality of the output embedding vector, typically between 64 and 1024.", + "required": false, + "defaultValue": "256" + }, + { + "name": "includeFinancialMetrics", + "type": "boolean", + "description": "Whether to emphasize financial metrics like deal value, revenue, or EBITDA in the embedding.", + "required": false, + "defaultValue": "true" + }, + { + "name": "normalizeOutput", + "type": "boolean", + "description": "If true, normalize the final embedding vector to have unit length.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text data, e.g., 'en' for English, to guide text processing models.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as an array of numbers and metadata including dimension and inputHash." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a dense vector representation of a business deal for clustering, similarity search, recommendation, or downstream AI models. It is useful for analyzing unstructured deal documents, integrating numeric deal parameters, and encoding deal semantics into a unified embedding.", + "limitations": "This tool does not perform legal or financial advice. It cannot extract detailed deal clauses or guarantee accuracy on highly domain-specific jargon. It requires preprocessed or reasonably formatted input text or data.", + "examples": [ + "Generate an embedding for a term sheet text explaining the deal.", + "Compare two deal summaries by their embedding vectors.", + "Extract and embed key numeric deal metrics along with textual descriptions." + ] + }, + "tags": [ + "embedding", + "business", + "deal", + "analysis", + "vectorization", + "finance" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"Acme Corp agrees to acquire Beta LLC for $50 million in cash and stock.\",\"inputFormat\":\"text\"}", + "description": "Simple deal description as plain text to generate an embedding reflecting the transaction terms." + }, + { + "inputJson": "{\"inputData\":\"{\\\"parties\\\":[\\\"Acme Corp\\\", \\\"Beta LLC\\\"], \\\"dealValue\\\":50000000, \\\"currency\\\":\\\"USD\\\", \\\"dealType\\\":\\\"acquisition\\\"}\",\"inputFormat\":\"json\",\"embeddingDimension\":128,\"includeFinancialMetrics\":true}", + "description": "Structured JSON input capturing deal parties and financial metrics, generating a 128-dim embedding emphasizing numeric values." + }, + { + "inputJson": "{\"inputData\":\"https://example.com/deal-summary/acme-beta\",\"inputFormat\":\"url\",\"normalizeOutput\":false}", + "description": "Using a URL pointing to a deal summary page; the tool fetches and analyzes content to produce an embedding without normalization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "embedding-generation.downloadCSV", + "description": "This tool generates vector embeddings for input text data and compiles them into a downloadable CSV file. It accepts an array of textual inputs, converts each into embeddings using a specified model, and outputs a CSV where each row contains the original text and its vector representation, enabling easy integration into downstream machine learning or analysis workflows.", + "category": "embedding-generation", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of strings; each string is a text input to generate embeddings for.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include header row in the CSV output (text and vector columns).", + "required": false, + "defaultValue": "true" + }, + { + "name": "vectorDimension", + "type": "number", + "description": "Expected dimensionality of the output embeddings, for validation and formatting. If 0, dimension is inferred from model output.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV string under 'csvContent' key representing rows of text and their embeddings as vectors in comma-separated format." + }, + "aiAgent": { + "useCase": "Use this tool when you have multiple text entries and want to generate corresponding vector embeddings, then save the results in a standard CSV file. This is helpful for batch processing text for similarity search, clustering, or as input features for machine learning models that accept CSV data.", + "limitations": "This tool does not perform the embedding generation internally; it requires integration with an embedding model API or library. It only formats and outputs embeddings into CSV. The quality of embeddings depends on the specified model.", + "examples": [ + "Generate embeddings for a list of product descriptions and download as CSV for analysis.", + "Produce CSV file of text queries converted to vectors for vector search database ingestion.", + "Create a CSV embedding file from customer feedback texts for downstream ML model training." + ] + }, + "tags": [ + "embedding", + "csv", + "download", + "vector", + "text", + "machine-learning", + "batch-processing" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"apple pie recipe\",\"machine learning basics\",\"travel guide to Japan\"],\"embeddingModel\":\"text-embedding-ada-002\",\"includeHeaders\":true,\"vectorDimension\":0}", + "description": "Generate embeddings for three text items using the 'text-embedding-ada-002' model, including headers in the CSV output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "embedding-generation.analyzeThreat", + "description": "This tool accepts textual descriptions of potential threats or security incidents and generates dense vector embeddings that capture semantic characteristics relevant to threat analysis. It processes input text to produce numerical embedding vectors usable for clustering, classification, or similarity search in cybersecurity contexts.", + "category": "embedding-generation", + "parameters": [ + { + "name": "threatText", + "type": "string", + "description": "A detailed textual description of the suspected threat or security incident to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or version of the embedding model to use for generating the threat embedding.", + "required": false, + "defaultValue": "\"cyber-threat-v1\"" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata related to threat context in the output embedding data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxEmbeddingDimension", + "type": "number", + "description": "Maximum dimension size of the generated embedding vector to control model output size.", + "required": false, + "defaultValue": "512" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the threat embedding vector (array of floats), embedding metadata such as model used and dimension, and optionally any extracted features or tags representing the threat semantics." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert unstructured textual threat reports, alerts, or incident descriptions into vector embeddings to enable semantic search, clustering, or machine learning classification of security threats. It helps analyze textual threat data for patterns and similarity in security operations and threat intelligence workflows.", + "limitations": "This tool does not perform threat classification or detection by itself; it only generates embeddings representing the input text. Quality depends on the underlying embedding model and cannot replace expert human analysis.", + "examples": [ + "Generate a vector embedding from the text of a new malware threat report to compare with previous threats.", + "Analyze the description of a network intrusion attempt to create embeddings for clustering similar incidents.", + "Create embeddings for a set of threat intelligence bulletins to facilitate semantic search and retrieval." + ] + }, + "tags": [ + "embedding", + "analysis", + "threat", + "security", + "cybersecurity", + "vectorization" + ], + "examples": [ + { + "inputJson": "{\"threatText\":\"A ransomware campaign targeting enterprise Windows servers via phishing emails embedding malicious macros.\",\"embeddingModel\":\"cyber-threat-v1\",\"includeMetadata\":true,\"maxEmbeddingDimension\":512}", + "description": "Embedding a detailed ransomware threat description including attack vector and target environment." + }, + { + "inputJson": "{\"threatText\":\"Suspicious login attempts from foreign IP addresses detected on admin accounts.\",\"includeMetadata\":false}", + "description": "Generate an embedding vector for a login anomaly incident description without extra metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "embedding-generation.analyzeXML", + "description": "This tool accepts XML data as input and generates vector embeddings by analyzing the semantic content and structure of the XML elements and text nodes. It processes the XML to extract meaningful features, including tag hierarchy, attributes, and text context, producing a vector embedding suitable for downstream similarity search, classification, or clustering tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "The XML content to be analyzed as a raw string. Required for embedding generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "The dimensionality of the output embedding vector. Default is 512.", + "required": false, + "defaultValue": "512" + }, + { + "name": "includeAttributes", + "type": "boolean", + "description": "Whether to include XML attributes in the embedding analysis. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "normalizeOutput", + "type": "boolean", + "description": "Whether to normalize the resulting embedding vector to unit length. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated vector embedding as a numerical array and metadata such as embedding dimension and input XML summary." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured XML documents into dense vector embeddings that capture both textual content and structural information for machine learning models or similarity comparisons. It is ideal for scenarios involving information retrieval, clustering, or semantic search over XML data.", + "limitations": "This tool does not perform XML parsing error correction beyond basic well-formedness checks and cannot interpret domain-specific semantics without additional context. It generates fixed-size embeddings which may not capture very large or deeply nested XML contexts fully.", + "examples": [ + "Generate a vector embedding for a product catalog given in XML format.", + "Analyze an XML configuration file to produce an embedding for clustering similar configurations.", + "Create embeddings from XML-based articles for semantic search purposes." + ] + }, + "tags": [ + "embedding", + "xml", + "vectorization", + "semantic-analysis", + "data-processing", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"Widget19.99\",\"embeddingDimension\":128,\"includeAttributes\":true}", + "description": "Embedding generation for a simple product catalog XML snippet with attributes included in analysis." + }, + { + "inputJson": "{\"xmlContent\":\"AI FundamentalsJohn Doe\",\"embeddingDimension\":256,\"includeAttributes\":false,\"normalizeOutput\":true}", + "description": "Analyze a small book.xml content ignoring attributes, producing a normalized 256-dimension embedding vector." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "embedding-generation.formatSentence", + "description": "This tool accepts a raw text sentence and formats it for optimal embedding generation by applying preprocessing steps such as lowercasing, removing unwanted characters, and normalizing whitespace. The output is a cleaned and standardized sentence string, ready for embedding vector creation.", + "category": "embedding-generation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The original raw text sentence to format for embedding generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "toLowerCase", + "type": "boolean", + "description": "Whether to convert the sentence to lowercase for normalization.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removePunctuation", + "type": "boolean", + "description": "Whether to remove punctuation characters from the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "normalizeWhitespace", + "type": "boolean", + "description": "Whether to replace multiple whitespace characters with a single space.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customReplacements", + "type": "object", + "description": "A key-value map of custom substrings to find and replace in the sentence before formatting (e.g., {\"can't\":\"cannot\"}).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted, normalized sentence string ready for embedding input." + }, + "aiAgent": { + "useCase": "Use this tool when preparing sentences for consistent and effective embedding generation, ensuring input text is normalized, cleaned of noise such as punctuation or inconsistent casing, and optionally applying custom token replacements to improve embedding quality.", + "limitations": "This tool focuses on string normalization and formatting only; it does not generate embeddings itself or handle complex linguistic processing like lemmatization or stopword removal.", + "examples": [ + "Format this sentence to lowercase, remove punctuation and normalize spaces ready for embedding.", + "Apply custom replacements before formatting the sentence for embedding generation.", + "Normalize whitespace and retain casing for a given input sentence." + ] + }, + "tags": [ + "embedding", + "text-formatting", + "normalization", + "preprocessing", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"This is an example sentence! With punctuation.\",\"toLowerCase\":true,\"removePunctuation\":true,\"normalizeWhitespace\":true}", + "description": "Lowercase, remove punctuation, and normalize spaces in a sentence." + }, + { + "inputJson": "{\"sentence\":\"Can't we format this sentence?\",\"toLowerCase\":true,\"removePunctuation\":false,\"normalizeWhitespace\":true,\"customReplacements\":{\"can't\":\"cannot\"}}", + "description": "Apply custom replacement for contractions, keep punctuation, lowercase and normalize spaces." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "embedding-generation.uploadCSV", + "description": "Uploads a CSV file containing textual data and metadata to generate vector embeddings for each data entry. The tool processes specified CSV columns, applies embedding generation models, and outputs embedding vectors mapped to identifiers or rows.", + "category": "embedding-generation", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "Raw CSV content as a string to be processed.", + "required": true, + "defaultValue": "" + }, + { + "name": "textColumn", + "type": "string", + "description": "Column name containing the text data to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "idColumn", + "type": "string", + "description": "Optional column name to use as unique identifier for each row. If not provided, row indices are used.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or ID of the embedding generation model to use.", + "required": false, + "defaultValue": "default-embedding-model" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of rows to process in a single batch for embedding generation to optimize performance.", + "required": false, + "defaultValue": "32" + }, + { + "name": "normalizeEmbeddings", + "type": "boolean", + "description": "Whether to perform L2 normalization on output embeddings.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object mapping each row identifier to its corresponding embedding vector (array of numbers), along with metadata of processed rows count and any errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert bulk textual data stored in CSV format into vector embeddings for downstream NLP tasks like similarity search, clustering, or classification. Especially useful when text data has unique IDs or keys for mapping outputs.", + "limitations": "Does not perform CSV validation beyond basic parsing; expects well-formed CSV. Embeddings depend on chosen model capabilities and might be slow for very large CSV files. Does not handle non-textual CSV data for embeddings.", + "examples": [ + "Upload a CSV with product descriptions under 'description' column and get embeddings.", + "Generate embeddings for customer feedback entries identified by 'feedback_id'.", + "Process CSV text data in batches with custom embedding model." + ] + }, + "tags": [ + "embedding-generation", + "csv", + "upload", + "vectorization", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"id,text\\n1,Hello world\\n2,AI is amazing\",\"textColumn\":\"text\",\"idColumn\":\"id\",\"embeddingModel\":\"text-embedding-ada-002\",\"batchSize\":16,\"normalizeEmbeddings\":true}", + "description": "Upload a simple CSV with an 'id' and 'text' column to generate normalized embeddings using a specific model." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "embedding-generation.sendComment", + "description": "This tool accepts a textual comment and contextual metadata, processes it by generating a semantic vector embedding for the comment, and then formats and sends this comment embedding to a specified storage or messaging endpoint. It outputs a confirmation including the embedding vector and a status message indicating successful transmission.", + "category": "embedding-generation", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to embed and send.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextMetadata", + "type": "object", + "description": "An optional object containing metadata about the comment context, such as author, timestamp, or related document ID.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "destinationEndpoint", + "type": "string", + "description": "A URI or identifier indicating where to send the comment embedding, e.g., a message queue or storage service.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRawText", + "type": "boolean", + "description": "Whether to include the original comment text in the output confirmation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embedding vector array and a status confirmation message indicating if the send operation succeeded." + }, + "aiAgent": { + "useCase": "Use this tool when you need to semantically embed user comments and transmit them to a backend system for storage, analysis, or retrieval. It streamlines embedding generation and sending into one step, useful in chat apps, comment systems, or annotation workflows.", + "limitations": "This tool does not perform extensive text preprocessing, language detection, or handle non-textual comments. It requires a reachable destination endpoint and does not provide retry logic on failures.", + "examples": [ + "Embed and send a product review comment with metadata to a vector database endpoint.", + "Send a user feedback comment embedding to a messaging queue for moderation and analytics.", + "Transmit code review comments as embeddings along with author and timestamp metadata to a centralized store." + ] + }, + "tags": [ + "embedding-generation", + "comment", + "semantic-processing", + "messaging", + "vector-storage", + "text-embedding" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I really appreciate the responsiveness of the support team.\",\"contextMetadata\":{\"author\":\"user123\",\"timestamp\":\"2024-05-30T14:23:00Z\"},\"destinationEndpoint\":\"https://vectordb.example.com/insert\",\"includeRawText\":true}", + "description": "Embedding and sending a user feedback comment with author and timestamp metadata to a vector database endpoint, including the original text in the confirmation." + }, + { + "inputJson": "{\"commentText\":\"This section of code needs optimization.\",\"contextMetadata\":{\"author\":\"dev456\",\"file\":\"module1.js\"},\"destinationEndpoint\":\"amqp://message-queue.company.internal/comments\"}", + "description": "Embed and send a code review comment with file metadata to an internal message queue endpoint without including the raw text in the confirmation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "embedding-generation.renderText", + "description": "This tool takes plain or formatted text input and processes it to generate high-quality vector embeddings suitable for semantic search, clustering, or other NLP tasks. It outputs the embedding as a fixed-length array of numbers representing the input text's semantic meaning in vector space.", + "category": "embedding-generation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input text content to be embedded. Supports plain or lightly formatted text.", + "required": true, + "defaultValue": "" + }, + { + "name": "model", + "type": "string", + "description": "The embedding model name or identifier to use for generating vectors (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the output embedding vector to unit length.", + "required": false, + "defaultValue": "true" + }, + { + "name": "truncateLength", + "type": "number", + "description": "Maximum number of tokens or characters to consider from the input text; longer inputs are truncated.", + "required": false, + "defaultValue": "2048" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embedding vector as a numeric array and metadata such as the model used." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw text content into numerical vector embeddings for downstream tasks such as semantic search, document similarity, clustering, or as features for machine learning models. It is suitable when embedding quality and model choice need to be controlled, and output embeddings are normalized for consistent vector comparisons.", + "limitations": "This tool does not provide text preprocessing beyond basic truncation. It cannot generate contextual embeddings for multi-turn dialogue or non-text data. Embedding quality depends on the chosen model; it does not produce human-readable summaries or classification labels.", + "examples": [ + "Generate a vector embedding for the sentence 'The quick brown fox jumps over the lazy dog'.", + "Create normalized embeddings for short product descriptions for semantic search indexing.", + "Truncate and embed a user review text longer than 2048 tokens." + ] + }, + "tags": [ + "embedding", + "text", + "vector", + "semantic-search", + "NLP", + "feature-extraction", + "embedding-model" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Natural language processing is a complex field of artificial intelligence.\",\"model\":\"text-embedding-ada-002\",\"normalize\":true,\"truncateLength\":2048}", + "description": "Generate normalized embedding for a sentence about NLP using default model and truncation." + }, + { + "inputJson": "{\"text\":\"This is a very long article content that might exceed the maximum token limit of the embedding model... (truncated)\",\"normalize\":false,\"truncateLength\":500}", + "description": "Embed only first 500 tokens of a long text without normalization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "embedding-generation.renderImage", + "description": "Generates a visual image representation from a given embedding vector and optional rendering parameters. Accepts an array of numbers representing the embedding, processes it to create an interpretable image (e.g., visualizing feature activations or dimensionality), and outputs the image data encoded as a Base64 PNG string.", + "category": "embedding-generation", + "parameters": [ + { + "name": "embeddingVector", + "type": "array", + "description": "A numeric array representing the embedding vector to be visualized.", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width in pixels of the output image.", + "required": false, + "defaultValue": "256" + }, + { + "name": "height", + "type": "number", + "description": "Height in pixels of the output image.", + "required": false, + "defaultValue": "256" + }, + { + "name": "colorMap", + "type": "string", + "description": "Color mapping scheme used to translate embedding values into colors (e.g., 'grayscale', 'viridis').", + "required": false, + "defaultValue": "grayscale" + }, + { + "name": "normalize", + "type": "boolean", + "description": "If true, normalize embedding values before rendering to fit the color range.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the Base64-encoded PNG image string representing the embedding visualization." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visually interpret or debug high-dimensional embeddings by converting them into an image format. It helps in analyzing embedding feature distributions and spotting patterns or anomalies through graphical representation.", + "limitations": "This tool does not generate semantic or photo-realistic images from embeddings nor reconstruct original input data. It only provides abstract visualizations of numeric embeddings.", + "examples": [ + "Visualize a 128-dimensional vector as a grayscale heatmap image.", + "Generate a viridis color-mapped image from a word embedding to analyze feature importance.", + "Render a normalized image of a user behavior embedding vector for anomaly detection." + ] + }, + "tags": [ + "embedding", + "visualization", + "image generation", + "vector representation" + ], + "examples": [ + { + "inputJson": "{\"embeddingVector\":[0.1,0.3,0.5,0.7,0.9,0.2,0.4,0.6,0.8,1.0],\"width\":128,\"height\":128,\"colorMap\":\"grayscale\",\"normalize\":true}", + "description": "Render a small grayscale image visualizing a 10-dimensional embedding vector, normalized and sized 128x128 pixels." + }, + { + "inputJson": "{\"embeddingVector\":[0.9,0.8,0.2,0.1,0.0,-0.1,-0.5,-0.3,-0.7,-0.9],\"width\":256,\"height\":256,\"colorMap\":\"viridis\",\"normalize\":false}", + "description": "Render a viridis color-mapped image from a signed embedding vector without normalization, sized 256x256." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "embedding-generation.formatParagraph", + "description": "This tool accepts a raw text paragraph and formats it to optimize for embedding generation by cleaning text, normalizing whitespace, and optionally applying lowercasing and removing punctuation. The output is a cleaned, standardized string ready for embedding algorithms.", + "category": "embedding-generation", + "parameters": [ + { + "name": "paragraph", + "type": "string", + "description": "The raw text paragraph to be formatted for embedding generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "toLowerCase", + "type": "boolean", + "description": "Whether to convert all text to lowercase for normalization before embedding.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removePunctuation", + "type": "boolean", + "description": "Whether to remove all punctuation characters from the paragraph to reduce noise.", + "required": false, + "defaultValue": "true" + }, + { + "name": "normalizeWhitespace", + "type": "boolean", + "description": "Whether to replace multiple whitespace characters with a single space for clean formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cleaned, formatted paragraph string optimized for embedding generation, under the key 'formattedParagraph'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to preprocess textual paragraphs to a consistent and clean format before generating embeddings, especially to enhance the quality and comparability of embedding vectors by normalizing case, whitespace, and punctuation. It is useful prior to vectorizing or feeding into embedding models that benefit from standardized input.", + "limitations": "This tool only formats the text and does not generate embeddings itself. It does not perform language translation, semantic analysis, or tokenization beyond basic cleaning steps.", + "examples": [ + "Format a raw paragraph to lowercase and remove punctuation before embedding.", + "Clean and normalize whitespace in a paragraph for consistent vector representation.", + "Prepare text data by removing punctuation only, keeping original casing." + ] + }, + "tags": [ + "embedding", + "text-processing", + "formatting", + "normalization", + "cleaning", + "nlp", + "vectorization" + ], + "examples": [ + { + "inputJson": "{\"paragraph\":\"Hello, World! This is an Example paragraph. \",\"toLowerCase\":true,\"removePunctuation\":true,\"normalizeWhitespace\":true}", + "description": "Clean and normalize a paragraph: lowercase, remove punctuation, and fix spacing." + }, + { + "inputJson": "{\"paragraph\":\"Data, Science & AI: transforming industries.\",\"toLowerCase\":false,\"removePunctuation\":true,\"normalizeWhitespace\":true}", + "description": "Remove punctuation but keep original casing." + }, + { + "inputJson": "{\"paragraph\":\"Multiple spaces and Tabs\\tincluded.\",\"toLowerCase\":true,\"removePunctuation\":false,\"normalizeWhitespace\":true}", + "description": "Lowercase and normalize whitespace but keep punctuation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "embedding-generation.formatEndpoint", + "description": "This tool accepts raw embedding generation API endpoint templates as input and formats them according to specified protocols such as REST or gRPC. It standardizes URL structure, query parameters, headers, and payload formats to produce a coherent endpoint definition string or object usable for calling embedding generation services.", + "category": "embedding-generation", + "parameters": [ + { + "name": "endpointTemplate", + "type": "string", + "description": "Raw API endpoint template string that needs formatting, including placeholders for variables like model or text.", + "required": true, + "defaultValue": "" + }, + { + "name": "protocol", + "type": "string", + "description": "Protocol type to apply formatting for; defaults to 'REST' but can support 'gRPC' or custom protocols.", + "required": false, + "defaultValue": "REST" + }, + { + "name": "includeAuth", + "type": "boolean", + "description": "Whether to include authentication headers or parameters in the formatted endpoint definition.", + "required": false, + "defaultValue": "true" + }, + { + "name": "parameterStyle", + "type": "string", + "description": "Style for query or path parameters, such as 'query', 'path', or 'body'. Defaults to 'query'.", + "required": false, + "defaultValue": "query" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indenting formatted output if in JSON or YAML format; default is 2.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted endpoint specification including method, URL, headers, and body template as strings or nested objects suitable for direct usage in API clients." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent has an unstructured or semi-structured API endpoint template string related to embedding generation that needs conversion into a standardized, actionable API call format. It is particularly useful for dynamically generating client code or configuration for calling embedding services.", + "limitations": "This tool does not validate endpoint functionality or connectivity; it only formats the provided template for readability and structure. It does not generate actual authentication tokens or execute network requests.", + "examples": [ + "Format a partial REST API endpoint template into a fully structured call with correct headers and parameters.", + "Generate a gRPC endpoint descriptor based on a given template string for an embedding service.", + "Convert a loose endpoint string with placeholders into a JSON object usable by an HTTP client." + ] + }, + "tags": [ + "embedding-generation", + "API", + "endpoint", + "formatting", + "REST", + "gRPC", + "developer-tool" + ], + "examples": [ + { + "inputJson": "{\"endpointTemplate\":\"https://api.embedding.com/v1/embed?model={model}&text={text}\",\"protocol\":\"REST\",\"includeAuth\":true,\"parameterStyle\":\"query\",\"indentationSpaces\":2}", + "description": "Format a REST API endpoint template with query parameters and include authentication headers." + }, + { + "inputJson": "{\"endpointTemplate\":\"rpc EmbeddingService.Embed(EmbedRequest) returns (EmbedResponse);\",\"protocol\":\"gRPC\",\"includeAuth\":false,\"parameterStyle\":\"body\",\"indentationSpaces\":4}", + "description": "Format a gRPC endpoint definition with indentation for readability without authentication info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "embedding-generation.formatCSV", + "description": "This tool takes raw embedding vectors and associated metadata as input and formats them into a well-structured CSV string suitable for storage or further processing. It converts embeddings and metadata into CSV rows, optionally including headers and customizing delimiters.", + "category": "embedding-generation", + "parameters": [ + { + "name": "embeddings", + "type": "array", + "description": "Array of embedding objects, each containing metadata and a numeric vector array", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the CSV output", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to separate CSV fields (usually comma or tab)", + "required": false, + "defaultValue": "," + }, + { + "name": "metadataFields", + "type": "array", + "description": "List of metadata field names to include as columns in the CSV", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'csvString' representing the formatted CSV data" + }, + "aiAgent": { + "useCase": "Use this tool when you have raw embedding vectors with associated metadata and need to serialize them into CSV format for easier data export, sharing, or batch processing. It is useful when preparing data for embedding databases or CSV-based storage systems.", + "limitations": "Does not generate embeddings, only formats existing embedding data. Does not support nested metadata objects beyond specified fields. Large embeddings may produce very large CSV outputs, which may be slow to parse downstream.", + "examples": [ + "Format an array of embedding vectors with 'id' and 'text' metadata fields into a CSV string including headers.", + "Create a CSV string with embeddings and custom delimiter (tab) excluding headers.", + "Format embeddings while including only specific metadata fields like 'source' and 'timestamp'." + ] + }, + "tags": [ + "embedding", + "formatting", + "CSV", + "data export", + "vector embeddings", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"embeddings\":[{\"id\":\"1\",\"text\":\"sample text 1\",\"vector\":[0.1,0.2,0.3]},{\"id\":\"2\",\"text\":\"sample text 2\",\"vector\":[0.4,0.5,0.6]}],\"includeHeaders\":true,\"delimiter\":\",\",\"metadataFields\":[\"id\",\"text\"]}", + "description": "Format two embedding objects with id and text metadata into a CSV string with commas and headers" + }, + { + "inputJson": "{\"embeddings\":[{\"id\":\"10\",\"source\":\"doc1\",\"vector\":[0.7,0.8]},{\"id\":\"11\",\"source\":\"doc2\",\"vector\":[0.9,1.0]}],\"includeHeaders\":false,\"delimiter\":\"\\t\",\"metadataFields\":[\"id\",\"source\"]}", + "description": "Format embeddings with tab delimiter and no headers, including only id and source fields" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "embedding-generation.draftContract", + "description": "Generates a detailed initial draft of a legal contract based on provided contract type, key party details, and specific clause preferences. Accepts structured input describing the contract requirements, processes legal clause templates and embedding-based semantic matching to tailor contract text, and outputs a well-structured draft contract text.", + "category": "embedding-generation", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "The type of contract to draft, e.g., 'Non-Disclosure Agreement', 'Employment Contract', 'Service Agreement'.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the contract, each with name and role information.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyTerms", + "type": "object", + "description": "Object specifying key terms and conditions such as duration, payment terms, confidentiality, governing law, etc.", + "required": false, + "defaultValue": "" + }, + { + "name": "clausePreferences", + "type": "array", + "description": "Optional list of preferred clauses or legal provisions to emphasize or include specifically.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The natural language for the drafted contract text, e.g., 'English', 'Spanish'.", + "required": false, + "defaultValue": "\"English\"" + }, + { + "name": "includeDefinitionsSection", + "type": "boolean", + "description": "Flag indicating whether to include a definitions section clarifying key terms.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the drafted contract text and a summary of included clauses." + }, + "aiAgent": { + "useCase": "Use this tool when an initial customized legal contract draft is needed based on defined contract type, parties, and terms. It helps generate foundational contract text that can be reviewed and refined by legal professionals, accelerating contract preparation workflows.", + "limitations": "Does not provide legally binding contracts or legal advice. Output should be reviewed by qualified legal counsel before use. May not cover all jurisdictions' specific legal requirements.", + "examples": [ + "Draft an NDA contract for two companies to protect confidential information.", + "Generate an employment contract including probation period and non-compete clauses.", + "Create a service agreement with specific payment terms and termination conditions." + ] + }, + "tags": [ + "embedding-generation", + "contract-drafting", + "legal-tech", + "document-generation", + "law", + "automation" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"Non-Disclosure Agreement\",\"parties\":[{\"name\":\"Acme Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Beta LLC\",\"role\":\"Receiving Party\"}],\"keyTerms\":{\"duration\":\"2 years\",\"governingLaw\":\"Delaware\"},\"clausePreferences\":[\"Confidentiality\",\"No Reverse Engineering\"],\"language\":\"English\",\"includeDefinitionsSection\":true}", + "description": "Drafting an NDA between two companies emphasizing confidentiality and restricting reverse engineering, governing law Delaware, duration two years." + }, + { + "inputJson": "{\"contractType\":\"Employment Contract\",\"parties\":[{\"name\":\"John Doe\",\"role\":\"Employee\"},{\"name\":\"Tech Innovations Ltd\",\"role\":\"Employer\"}],\"keyTerms\":{\"probationPeriod\":\"3 months\",\"nonCompeteDuration\":\"1 year\"},\"clausePreferences\":[\"Probation Period\",\"Non-Compete Clause\"],\"language\":\"English\",\"includeDefinitionsSection\":false}", + "description": "Employment contract for a new employee with a probation period and a one-year non-compete clause, without including a definitions section." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "embedding-generation.draftWord", + "description": "Generates a vector embedding for a single word based on its semantic and contextual features using a specified embedding model. Accepts a word string as input, processes it through the embedding model, and outputs a numeric vector representing the word's embedding.", + "category": "embedding-generation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single word to generate an embedding for.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelName", + "type": "string", + "description": "The name or identifier of the embedding model to use (e.g., 'word2vec', 'glove', 'bert').", + "required": false, + "defaultValue": "\"bert-base-uncased\"" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the output embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original word and its numeric vector embedding as an array of floats." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert a single word into a dense vector embedding for tasks like similarity comparison, clustering, or as an input feature in downstream models. It is particularly useful when working with isolated words rather than full sentences or documents.", + "limitations": "This tool generates embeddings for single words only; it cannot process phrases or sentences. The quality of embeddings depends on the model selected and its training corpus.", + "examples": [ + "Generate a vector embedding for the word 'apple' using the default model.", + "Get a normalized embedding vector for the word 'run' with the 'glove' model.", + "Obtain the embedding for the word 'justice' without normalization." + ] + }, + "tags": [ + "embedding", + "vectorization", + "word", + "NLP", + "semantic", + "feature-extraction" + ], + "examples": [ + { + "inputJson": "{\"word\":\"sunrise\",\"modelName\":\"bert-base-uncased\",\"normalize\":true}", + "description": "Generate a normalized embedding vector for the word 'sunrise' using the BERT base model." + }, + { + "inputJson": "{\"word\":\"economy\",\"modelName\":\"glove\",\"normalize\":false}", + "description": "Generate a raw embedding vector for the word 'economy' using the GloVe model without normalization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "embedding-generation.draftText", + "description": "Generates a text draft optimized for embedding generation by processing input text with customization options such as language, summarization level, and inclusion of context. Accepts raw or structured text input and outputs a refined textual draft that is suitable for vector embedding extraction.", + "category": "embedding-generation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The primary text content to be drafted and optimized for embedding generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "ISO code of the text language to guide appropriate processing and normalization.", + "required": false, + "defaultValue": "en" + }, + { + "name": "summaryLevel", + "type": "number", + "description": "Level of summarization applied to input text from 0 (no summary) to 1 (maximum compression) to generate concise drafts.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Flag indicating whether to include additional contextual sentences from surrounding text to enhance embedding relevance.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the resulting drafted text in characters to control embedding vector size and focus.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted text optimized for embedding creation, including metadata about original and final text lengths." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a clean, well-structured text draft tailored for producing high-quality vector embeddings from unstructured or loosely structured text inputs. Ideal for preprocessing raw texts before vectorization in natural language processing tasks.", + "limitations": "Cannot generate embeddings itself; this tool only drafts text optimized for embedding. Does not perform semantic analysis or guarantee embedding quality beyond text preparation.", + "examples": [ + "Draft a concise summary of the input text in English with context included.", + "Generate a shortened text draft without context in Spanish (language code 'es').", + "Create a maximum 300-character draft from long-form articles for embedding." + ] + }, + "tags": [ + "embedding", + "text-processing", + "drafting", + "NLP", + "vectorization", + "text-preprocessing" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Large volumes of customer feedback require automated summarization for embedding.\",\"language\":\"en\",\"summaryLevel\":0.7,\"includeContext\":true,\"maxLength\":300}", + "description": "Creating a concise draft with context for embedding from customer feedback text." + }, + { + "inputJson": "{\"inputText\":\"Esta es una prueba de procesar texto en español para crear un borrador para embeddings.\",\"language\":\"es\",\"summaryLevel\":0.4,\"includeContext\":false,\"maxLength\":200}", + "description": "Drafting a moderate summary text without context in Spanish." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "embedding-generation.composeSentence", + "description": "Generates a semantically rich sentence embedding vector from the provided raw sentence text. Accepts a string sentence and optional language and embedding model parameters. Processes the input to produce a normalized vector numeric array representing the sentence semantics for use in similarity search, clustering, or machine learning.", + "category": "embedding-generation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The raw text sentence to convert into an embedding vector.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Optional language code to guide the embedding model (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Optional identifier for the embedding generation model to use, e.g., 'default-transformer-v1'.", + "required": false, + "defaultValue": "\"default-transformer-v1\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original sentence and the embedding vector array representing it as numbers." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert a natural language sentence into a vector embedding for semantic processing such as similarity comparisons, clustering, or feeding into downstream ML applications. It is ideal when you have text sentences and want meaningful numeric representations.", + "limitations": "Cannot generate embeddings for non-textual inputs or paragraphs beyond single sentences effectively. Embeddings depend on specified model; model knowledge cutoff or biases are not corrected.", + "examples": [ + "Generate an embedding for the sentence 'Machine learning is fascinating.'", + "Produce a vector embedding for a Spanish sentence using language parameter 'es'." + ] + }, + "tags": [ + "embedding", + "sentence", + "NLP", + "semantic", + "vectorization", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"The quick brown fox jumps over the lazy dog.\"}", + "description": "Generate embedding for a common English pangram sentence." + }, + { + "inputJson": "{\"sentence\":\"La inteligencia artificial cambia el mundo.\",\"language\":\"es\"}", + "description": "Generate embedding for a Spanish sentence specifying language as Spanish." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "embedding-generation.composeSummary", + "description": "Generates a concise, coherent summary embedding vector from one or multiple input document texts. The tool accepts raw text strings or arrays of text and processes them to create a single embedding that captures the overall semantic content of the documents. Output is a fixed-length numerical vector suitable for semantic search or downstream ML tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "documents", + "type": "array", + "description": "An array of one or more text strings representing the document(s) to summarize into an embedding.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the specific embedding model to use (e.g., 'text-embedding-ada-002').", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum token length to consider from the combined documents before embedding generation, to control input size and focus.", + "required": false, + "defaultValue": "1024" + }, + { + "name": "normalizeOutput", + "type": "boolean", + "description": "Whether to normalize the output embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "The output contains the summary embedding as a numerical vector array and its dimension." + }, + "aiAgent": { + "useCase": "Use this tool when needing a single semantic embedding that represents the combined meaning of multiple documents or a long text. Ideal for search indexing or clustering where a compact representation of document content is needed. It consolidates information into one vector rather than multiple separate embeddings.", + "limitations": "Does not produce human-readable summary text, only vector representations. Extremely long documents may need pre-processing outside this tool to truncate or split. The quality depends on the underlying embedding model's capabilities.", + "examples": [ + "Create a summary embedding for a batch of customer support tickets to find similar issue clusters.", + "Generate a single vector representing the combined content of several news articles.", + "Combine multiple paragraphs of an academic paper into one embedding to index for semantic search." + ] + }, + "tags": [ + "embedding", + "summary", + "document", + "vectorization", + "semantic-search", + "multi-document" + ], + "examples": [ + { + "inputJson": "{\"documents\":[\"OpenAI develops advanced AI models.\",\"These models perform a variety of NLP tasks.\"],\"embeddingModel\":\"text-embedding-ada-002\",\"maxSummaryLength\":512,\"normalizeOutput\":true}", + "description": "Embed the combined meaning of two short sentences into one vector embedding." + }, + { + "inputJson": "{\"documents\":[\"First document content paragraph 1.\",\"First document content paragraph 2.\"],\"embeddingModel\":\"text-embedding-curie-001\",\"maxSummaryLength\":256,\"normalizeOutput\":false}", + "description": "Embed multiple paragraphs from a document using a specified model without normalization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "embedding-generation.buildInstance", + "description": "Creates and configures a scalable embedding generation service instance tailored to specified parameters. It accepts configuration inputs such as model type, instance size, scaling options, and security preferences, then provisions a running embedding-generation infrastructure instance, returning connection details and status.", + "category": "embedding-generation", + "parameters": [ + { + "name": "modelType", + "type": "string", + "description": "Specifies the embedding model to deploy, e.g., 'text-embedding-ada-002'.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceSize", + "type": "string", + "description": "Defines the computational size for the instance, e.g., 'small', 'medium', 'large'.", + "required": true, + "defaultValue": "" + }, + { + "name": "autoScaling", + "type": "boolean", + "description": "Enables or disables automatic scaling based on workload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxInstances", + "type": "number", + "description": "Maximum number of instances to scale out to when autoScaling is enabled.", + "required": false, + "defaultValue": "3" + }, + { + "name": "region", + "type": "string", + "description": "Cloud deployment region for the instance, e.g., 'us-east-1'.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "enableEncryption", + "type": "boolean", + "description": "Whether to enable encryption for data at rest and in transit.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags to assign to the instance for categorization.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the instance ID, deployment status, endpoint URL, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when programmatically provisioning or scaling infrastructure dedicated to embedding generation models. Ideal for automating deployment in cloud environments with specified resource and security requirements.", + "limitations": "Does not handle embedding model training or direct inference execution. Assumes supported cloud environment. Does not manage post-deployment monitoring or billing.", + "examples": [ + "Create a medium-sized embedding instance with autoscaling enabled up to 5 instances.", + "Deploy a small instance of text-embedding-ada-002 in 'eu-west-1' region with encryption enabled.", + "Provision a large embedding service instance without autoscaling, tagged for 'production' use." + ] + }, + "tags": [ + "embedding", + "infrastructure", + "provisioning", + "scalable", + "cloud", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"modelType\":\"text-embedding-ada-002\",\"instanceSize\":\"medium\",\"autoScaling\":true,\"maxInstances\":5,\"region\":\"us-east-1\",\"enableEncryption\":true,\"tags\":[\"test\",\"embedding-service\"]}", + "description": "Provision a medium-sized embedding generation instance with autoscaling up to 5 instances in the US East region with encryption enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "embedding-generation.buildVariable", + "description": "Generates a vector embedding representation for a given code variable name or snippet. Accepts variable identifiers or small code fragments as input, processes the text using pretrained embedding models specialized for code semantics, and outputs a fixed-length numerical vector suitable for similarity comparison or downstream ML tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The variable name or small code snippet string to embed. Typically a valid identifier or code fragment.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input variable or snippet to adjust embedding context (e.g., 'javascript', 'python').", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "The size (dimension) of the output embedding vector. Must match supported model sizes.", + "required": false, + "defaultValue": "128" + }, + { + "name": "normalize", + "type": "boolean", + "description": "Whether to normalize the output embedding vector to unit length.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original input and its corresponding embedding vector as an array of numbers." + }, + "aiAgent": { + "useCase": "Use this tool when needing a semantic vector representation of variable names or short code snippets to enable similarity search, clustering, or ML model features focused on code semantics. Useful in automated code review, refactoring suggestions, and code search based on identifier meaning.", + "limitations": "This tool is not designed for embedding large code blocks or full functions, nor for natural language text unrelated to code identifiers. Embedding quality depends on the underlying model and may not capture variable usage context beyond naming.", + "examples": [ + "Generate an embedding for the variable 'userId' in JavaScript.", + "Create a vector for the snippet 'totalSales2024' to find similar variables.", + "Get a normalized embedding vector for a Python variable named 'configDict'." + ] + }, + "tags": [ + "embedding", + "code", + "variable", + "vector", + "semantic", + "programming", + "nlp", + "ml" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"userCount\",\"language\":\"javascript\",\"embeddingDimension\":128,\"normalize\":true}", + "description": "Generate a 128-d normalized embedding vector for the JavaScript variable 'userCount'." + }, + { + "inputJson": "{\"variableName\":\"error_rate\",\"language\":\"python\",\"embeddingDimension\":64,\"normalize\":false}", + "description": "Build a 64-dimensional unnormalized embedding for the Python variable 'error_rate'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "embedding-generation.buildComponent", + "description": "Generates a reusable embedding generation component configured to transform input text data into vector embeddings. Accepts parameters to customize embedding model selection, input preprocessing, and output format. Produces a configured component object that can be integrated into NLP pipelines or vector search systems.", + "category": "embedding-generation", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "Name or identifier of the embedding model to use (e.g., 'text-embedding-ada-002').", + "required": true, + "defaultValue": "" + }, + { + "name": "inputField", + "type": "string", + "description": "Name of the input field in the data that contains text to embed.", + "required": true, + "defaultValue": "text" + }, + { + "name": "normalizeVectors", + "type": "boolean", + "description": "Whether to normalize the output embedding vectors to unit length.", + "required": false, + "defaultValue": "true" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of texts to process in a single batch for the embedding operation.", + "required": false, + "defaultValue": "16" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the output embeddings: 'array' for numeric arrays or 'base64' for encoded string.", + "required": false, + "defaultValue": "array" + } + ], + "returns": { + "type": "object", + "description": "An embedding generation component object including configuration details and methods to generate embeddings from input text." + }, + "aiAgent": { + "useCase": "Use when building or configuring NLP or vector search pipelines that require a modular, reusable component capable of generating vector embeddings from textual input. Helps customize embedding model parameters, optimize batch processing, and set output formats to suit downstream applications.", + "limitations": "This tool does not perform the embedding calculation itself; it only builds/configures the component object. Actual embedding execution requires integration with a compatible embedding engine or API.", + "examples": [ + "Create an embedding component using the 'text-embedding-ada-002' model reading text from the 'content' field.", + "Build an embedding component that processes input in batches of 32 with normalized embeddings.", + "Generate a component that outputs embeddings as base64 strings instead of numeric arrays." + ] + }, + "tags": [ + "embedding", + "generation", + "component", + "NLP", + "vectorization", + "model-config" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"text-embedding-ada-002\",\"inputField\":\"content\",\"normalizeVectors\":true,\"batchSize\":32,\"outputFormat\":\"array\"}", + "description": "Build an embedding component using the Ada model, normalizing vectors, and processing 32 texts per batch" + }, + { + "inputJson": "{\"modelName\":\"custom-embedding-v1\",\"inputField\":\"text\",\"normalizeVectors\":false,\"batchSize\":10,\"outputFormat\":\"base64\"}", + "description": "Create a component with a custom model, no normalization, base64 encoded embeddings, batch size 10" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "file-operations.analyzePayment", + "description": "Analyzes a payment data file in CSV or JSON format, extracting key payment details such as totals, averages, counts, and identifying any anomalies or missing information. The tool processes the payment records to generate a structured summary report including aggregated statistics and data quality insights.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Path to the input payment data file to analyze, supports CSV or JSON formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the input file, either 'csv' or 'json'.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code to filter or standardize payments for analysis, e.g., 'USD'. If empty, all currencies are analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'start' and 'end' ISO-8601 date strings to limit payments analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to perform anomaly detection on payment amounts, default is true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including total payments, average payment amount, payment count, payment currency breakdown, date range analyzed, and detected anomalies or missing data points." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract meaningful insights and summary statistics from raw payment transaction files, either CSV or JSON, to support financial reviews, reporting, or detecting inconsistent or suspicious payment data.", + "limitations": "Cannot process encrypted or proprietary binary payment file formats, nor does it perform detailed fraud detection beyond basic anomaly detection in payment amounts and missing data. It assumes standardized payment record structures in CSV or JSON.", + "examples": [ + "Analyze the payments CSV file for Q1 2024 and report total volume and anomalies.", + "Generate summary insights for JSON payment data between two dates.", + "Check a payment file for missing payment amounts and currency usage distribution." + ] + }, + "tags": [ + "file", + "payment", + "analysis", + "csv", + "json", + "financial", + "summary" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/payments_q1.csv\",\"fileFormat\":\"csv\",\"currency\":\"USD\",\"dateRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-03-31\"},\"detectAnomalies\":true}", + "description": "Analyze payments from a CSV file for USD currency within Q1 2024, including anomaly detection." + }, + { + "inputJson": "{\"filePath\":\"/reports/all_payments.json\",\"fileFormat\":\"json\",\"currency\":\"\",\"dateRange\":{},\"detectAnomalies\":false}", + "description": "Analyze all payments from a JSON file without currency filter or anomaly detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "file-operations.sendAlert", + "description": "Sends a security alert related to file operations such as unauthorized access or modification attempts. Accepts details about the file event and alert target information. Processes the input by formatting and dispatching the alert via specified channel(s). Returns a status report of the send operation.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The full path of the file related to the alert event.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertType", + "type": "string", + "description": "The severity or category of the alert such as 'access', 'modification', or 'deletion'.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "A custom message describing the alert details.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "The destination to send the alert to, such as an email address or monitoring system endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Method to send alert (e.g., 'email', 'webhook', 'sms').", + "required": true, + "defaultValue": "email" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string indicating when the alert event occurred. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFileSnapshot", + "type": "boolean", + "description": "Whether to include a snapshot or summary of the file content at alert time if available.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Status object indicating success or failure of alert sending, and any error details." + }, + "aiAgent": { + "useCase": "Use this tool when an automated system detects suspicious or noteworthy file activity and needs to notify security teams or systems through a configurable channel. It is valuable in security monitoring, compliance enforcement, and real-time incident alerting involving file operations.", + "limitations": "This tool does not perform file monitoring or detection itself, only sending alerts when event details are provided. It cannot guarantee delivery or handle complex multi-channel alerting logic beyond the specified channel and recipient.", + "examples": [ + "Send an alert to security team email about an unauthorized file access.", + "Notify monitoring webhook about a critical file deletion event.", + "Send SMS alert when a sensitive file modification is detected." + ] + }, + "tags": [ + "file", + "alert", + "security", + "notification", + "incident", + "monitoring", + "file-operations" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/var/log/auth.log\",\"alertType\":\"access\",\"message\":\"Unauthorized read attempt detected.\",\"recipient\":\"security-team@example.com\",\"channel\":\"email\",\"timestamp\":\"2024-06-20T14:32:00Z\",\"includeFileSnapshot\":false}", + "description": "Send an email alert to the security team about an unauthorized access attempt to a log file." + }, + { + "inputJson": "{\"filePath\":\"/etc/ssh/sshd_config\",\"alertType\":\"modification\",\"message\":\"Critical file changed unexpectedly.\",\"recipient\":\"https://monitoring.example.com/alerts\",\"channel\":\"webhook\",\"includeFileSnapshot\":true}", + "description": "Send a webhook alert with file snapshot to monitoring system for critical config file modification." + }, + { + "inputJson": "{\"filePath\":\"/home/user/secret.txt\",\"alertType\":\"deletion\",\"recipient\":\"+1234567890\",\"channel\":\"sms\",\"message\":\"Sensitive file deleted.\",\"includeFileSnapshot\":false}", + "description": "Send an SMS alert about deletion of a sensitive file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "file-operations.analyzeComment", + "description": "Analyzes the content of a comment string to extract sentiment, detect language, identify key topics, and flag any inappropriate content. Accepts a text comment as input and returns an analysis report including detected sentiment, language code, main topics, and a content safety flag.", + "category": "file-operations", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectLanguage", + "type": "boolean", + "description": "Whether to detect the language of the comment text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "flagInappropriateContent", + "type": "boolean", + "description": "Whether to scan the comment for inappropriate or offensive content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "returnTopicsCount", + "type": "number", + "description": "Number of top key topics to identify and return from the comment text.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing sentiment (positive, negative, neutral), detected language code (ISO 639-1), an array of key topics extracted, and a boolean flag indicating whether inappropriate content was detected." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand user-generated comment content by assessing tone, predominant topics, language, and safety concerns, such as moderating forums, summarizing feedback, or automating content review.", + "limitations": "Cannot perfectly understand complex sarcasm, nuanced humor, or context-dependent meanings. Language detection accuracy may be lower for very short comments. Inappropriate content detection relies on pattern matching and may yield false positives or negatives.", + "examples": [ + "Analyze the sentiment and topics of this user comment: 'I love this product! It really helped me a lot.'", + "Check if this comment contains any inappropriate language and detect its language: 'Ce produit est fantastique!'", + "Extract the top 3 topics from this multi-sentence comment to understand main points of feedback." + ] + }, + "tags": [ + "analysis", + "comment", + "sentiment", + "content-moderation", + "language-detection", + "topic-extraction" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I really enjoy using this app every day. It makes my life easier!\",\"detectLanguage\":true,\"flagInappropriateContent\":true,\"returnTopicsCount\":3}", + "description": "Analyzing a positive user comment to detect sentiment, language, topics, and inappropriate content." + }, + { + "inputJson": "{\"commentText\":\"Este producto es terrible y no funciona como esperaba.\",\"detectLanguage\":true,\"flagInappropriateContent\":false,\"returnTopicsCount\":4}", + "description": "Detecting language and key topics from a negative review in Spanish, without checking for inappropriate content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "file-operations.analyzeRisk", + "description": "Analyzes files for security risks by scanning for common vulnerabilities such as malware signatures, suspicious code patterns, and unsafe permissions. Accepts one or more files as input and produces a detailed risk assessment report indicating potential threats, severity levels, and recommended mitigation steps.", + "category": "file-operations", + "parameters": [ + { + "name": "filePaths", + "type": "array", + "description": "List of file paths or URLs to analyze for security risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "scanDepth", + "type": "number", + "description": "Depth level for scanning nested archives or embedded files within the main files.", + "required": false, + "defaultValue": "1" + }, + { + "name": "includePermissionCheck", + "type": "boolean", + "description": "Whether to include checking file permissions and access rights as part of the risk analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "Minimum risk score (0-10) to include in the output report.", + "required": false, + "defaultValue": "3" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated risk report, e.g., 'json' or 'html'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Risk assessment report including details such as file name, detected risks, severity scores, and recommended actions." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to evaluate one or more files for potential security threats before deployment, sharing, or system integration. It helps agents identify malicious content, unsafe configurations, or suspicious code segments to prevent security breaches.", + "limitations": "Cannot guarantee detection of zero-day or highly obfuscated threats; dependent on signature and heuristic databases. Does not modify files, only reports risks.", + "examples": [ + "Analyze uploaded executable files for malware and permission risks.", + "Scan a set of configuration files to identify insecure permissions or suspicious scripts.", + "Generate a risk report in JSON format for multiple documents prior to cloud upload." + ] + }, + "tags": [ + "security", + "file-analysis", + "risk-assessment", + "malware-detection", + "permissions-check" + ], + "examples": [ + { + "inputJson": "{\"filePaths\":[\"/tmp/uploadedApp.exe\"],\"scanDepth\":2,\"includePermissionCheck\":true,\"riskThreshold\":4,\"outputFormat\":\"json\"}", + "description": "Analyze an executable file with deeper scanning of embedded content, including permission checks, and report risks above severity 4 in JSON." + }, + { + "inputJson": "{\"filePaths\":[\"/var/www/config.cfg\",\"/var/www/script.sh\"],\"includePermissionCheck\":true,\"outputFormat\":\"html\"}", + "description": "Scan two web server files for security risks including permissions, outputting an HTML risk report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "file-operations.analyzeOpportunity", + "description": "Analyzes a business opportunity data file (CSV or JSON) to evaluate key metrics such as market size, potential revenue, risk factors, and competitor presence. Accepts structured opportunity data as input, processes financial and market indicators, and outputs a detailed analysis report summarizing opportunity attractiveness and risk.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Path to the input file containing the opportunity data (CSV or JSON).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type of the input file: 'csv' or 'json' to specify the data parsing method.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRiskAssessment", + "type": "boolean", + "description": "Whether to include a risk assessment section in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to standardize financial values in the report.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "marketGrowthRate", + "type": "number", + "description": "Estimated annual market growth rate percentage to refine projections.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a summary report with evaluated metrics such as potential revenue, market size, risk level, competitor count, and an overall opportunity score." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze and summarize structured business opportunity data from files to assist decision-making or reporting. Ideal for evaluating financial and market aspects to prioritize investment or strategic focus.", + "limitations": "Cannot process unstructured data formats or files lacking key financial or market fields. Does not provide qualitative business insights beyond the numeric and categorical data provided.", + "examples": [ + "Analyze the opportunity data file 'opportunity.csv' with risk assessment included.", + "Evaluate JSON file containing market opportunity details with EUR currency.", + "Generate a summary report from a business opportunity CSV file with a specified market growth rate of 7%." + ] + }, + "tags": [ + "file-operations", + "business-analysis", + "opportunity-assessment", + "financial-analysis", + "market-analysis" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"./data/opportunity.csv\",\"fileType\":\"csv\",\"includeRiskAssessment\":true,\"currency\":\"USD\",\"marketGrowthRate\":6}", + "description": "Analyze a CSV business opportunity file with risk assessment and 6% growth rate in USD." + }, + { + "inputJson": "{\"filePath\":\"./inputs/opportunity.json\",\"fileType\":\"json\",\"includeRiskAssessment\":false,\"currency\":\"EUR\",\"marketGrowthRate\":4}", + "description": "Analyze a JSON opportunity file without risk assessment, currency EUR and 4% growth rate." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "file-operations.sendNotification", + "description": "This tool sends a notification message related to specified file operations. It accepts inputs including notification type (email, SMS, or in-app), recipient details, message content, and optional attachment references. The tool processes these inputs to dispatch a formatted notification and returns a status report on the sending operation.", + "category": "file-operations", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to send: 'email', 'sms', or 'inApp'.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "Identifier of the notification recipient, e.g., email address, phone number, or user ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject or title of the notification (used for emails or in-app notifications).", + "required": false, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content text of the notification to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of file paths or file IDs related to the notification. Optional, relevant mostly for email notifications.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification; e.g., 'normal', 'high', or 'low'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "sendTime", + "type": "string", + "description": "Scheduled time to send the notification in ISO 8601 format; if omitted, the notification sends immediately.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object reporting whether the notification was sent successfully, with a status message and a unique notification ID for tracking." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to inform users or systems about file-related events like upload completions, errors, or shared access, through various notification channels such as email, SMS, or in-app alerts. It centralizes notification sending for file operations and supports scheduling and attachments.", + "limitations": "This tool does not handle validation of recipient addresses beyond basic formatting, nor does it guarantee delivery. It cannot send notifications through unsupported channels and does not manage complex templating or localization beyond provided inputs.", + "examples": [ + "Send an email notification confirming a file upload is complete to a user.", + "Send an SMS alert to the admin if a file operation fails.", + "Send an in-app notification to a user about a shared file access." + ] + }, + "tags": [ + "notification", + "file-operations", + "email", + "sms", + "in-app", + "alerts", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"email\",\"recipient\":\"user@example.com\",\"subject\":\"File Upload Complete\",\"messageBody\":\"Your file has been uploaded successfully.\",\"attachments\":[\"/files/upload_log.txt\"],\"priority\":\"high\"}", + "description": "Send a high priority email notification to a user upon file upload completion with an attachment." + }, + { + "inputJson": "{\"notificationType\":\"sms\",\"recipient\":\"+12345550123\",\"messageBody\":\"File processing failed due to an error.\",\"priority\":\"high\"}", + "description": "Send an urgent SMS alert to the admin phone number about a file processing failure." + }, + { + "inputJson": "{\"notificationType\":\"inApp\",\"recipient\":\"user123\",\"subject\":\"Shared File Access\",\"messageBody\":\"A file has been shared with you.\",\"priority\":\"normal\"}", + "description": "Send an in-app notification to notify a user about a shared file access." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "file-operations.renderReport", + "description": "This tool accepts structured report data and a template format, processes the data to fill the template, and renders a formatted report file as output. It supports common formats like PDF, HTML, and DOCX for the generated report document.", + "category": "file-operations", + "parameters": [ + { + "name": "reportData", + "type": "object", + "description": "Structured data object containing report content such as sections, tables, charts, and key metrics to be included in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateFormat", + "type": "string", + "description": "The format or template style to use when rendering the report (e.g., 'pdf', 'html', 'docx').", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "outputFileName", + "type": "string", + "description": "The desired filename for the rendered report, including extension matching the template format.", + "required": false, + "defaultValue": "report_output" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Flag indicating whether to generate and include a table of contents in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "pageSize", + "type": "string", + "description": "Page size to use for the report (e.g., 'A4', 'Letter'). Applies mainly to PDF and DOCX exports.", + "required": false, + "defaultValue": "A4" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author or organization to include in the report metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered report as a Base64-encoded string and metadata such as file name and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured data or a report object that needs to be rendered into a printable or shareable document format. It is ideal for creating business, analytics, or summary reports in formats like PDF, HTML, or DOCX for distribution or archival.", + "limitations": "This tool does not create report data—only renders provided structured data. Complex templating beyond supported formats or advanced custom layouts may not be supported. It cannot edit existing report files.", + "examples": [ + "Render a monthly sales report in PDF format with a table of contents.", + "Generate an HTML report from structured analytics data without page size settings.", + "Output a DOCX formatted report including author metadata." + ] + }, + "tags": [ + "file", + "render", + "report", + "document", + "pdf", + "html", + "docx", + "export" + ], + "examples": [ + { + "inputJson": "{\"reportData\":{\"title\":\"Monthly Sales\",\"sections\":[{\"header\":\"Summary\",\"content\":\"Sales increased by 15%...\"}]},\"templateFormat\":\"pdf\",\"outputFileName\":\"monthly_sales_report.pdf\",\"includeTableOfContents\":true,\"pageSize\":\"A4\",\"authorName\":\"Acme Corp\"}", + "description": "Render a PDF monthly sales report with table of contents and author metadata." + }, + { + "inputJson": "{\"reportData\":{\"title\":\"Data Analysis\",\"sections\":[{\"header\":\"Insights\",\"content\":\"Key trends identified...\"}]},\"templateFormat\":\"html\",\"outputFileName\":\"analysis_report.html\",\"includeTableOfContents\":false}", + "description": "Generate an HTML report from analytics data without a table of contents." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "file-operations.formatDataset", + "description": "Formats a dataset file from one structured format to another, supporting CSV, JSON, and TSV inputs and outputs. Accepts a dataset file, automatically detects or uses specified input format, applies optional formatting parameters, and produces a transformed dataset file in the desired output format.", + "category": "file-operations", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "The raw dataset content as a string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "The format of the input dataset file (e.g., 'csv', 'json', 'tsv'). If not specified, the tool attempts to auto-detect.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The target format to convert the dataset into, such as 'csv', 'json', or 'tsv'.", + "required": true, + "defaultValue": "" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "If true and output format supports it (e.g., JSON), the output will be pretty-printed with indentations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to use for CSV/TSV output; defaults to ',' for CSV and '\\t' for TSV. Ignored for JSON.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted dataset string under the key 'formattedData' and the output format used under 'outputFormat'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert datasets from one common structured data format to another for data interoperability, analysis pipelines, or standardized storage. Ideal when receiving data in CSV, JSON, or TSV formats and requiring a consistently formatted output file. Allows optional formatting to accommodate user preferences like pretty printing JSON or customizing delimiters.", + "limitations": "Does not support proprietary or binary dataset formats beyond CSV, JSON, and TSV. Does not validate dataset contents beyond basic formatting. Large datasets may incur performance overhead. No in-depth data transformations or schema validations are performed.", + "examples": [ + "Convert a CSV dataset string to pretty-printed JSON format.", + "Format JSON dataset input to TSV with tab delimiters.", + "Auto-detect input format from data string and convert it into CSV format with custom delimiter;" + ] + }, + "tags": [ + "file-operations", + "formatting", + "dataset", + "csv", + "json", + "tsv", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"name,age\\nAlice,30\\nBob,25\",\"inputFormat\":\"csv\",\"outputFormat\":\"json\",\"prettyPrint\":true}", + "description": "Convert CSV data string to pretty-printed JSON." + }, + { + "inputJson": "{\"inputData\":\"[{\\\"name\\\":\\\"Alice\\\", \\\"age\\\":30}, {\\\"name\\\":\\\"Bob\\\", \\\"age\\\":25}]\",\"inputFormat\":\"json\",\"outputFormat\":\"tsv\",\"delimiter\":\"\\t\"}", + "description": "Convert JSON data array to TSV with tab delimiter." + }, + { + "inputJson": "{\"inputData\":\"name\\tage\\nAlice\\t30\\nBob\\t25\",\"outputFormat\":\"csv\",\"delimiter\":\",\"}", + "description": "Auto-detect TSV input format and convert to CSV with comma delimiter." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "file-operations.formatTest", + "description": "Formats code test files to a consistent style defined by the specified testing framework (e.g., Jest, Mocha). Accepts raw test code as input, applies formatting rules including indentation, spacing, naming conventions, and outputs the formatted test code string ready for use or storage.", + "category": "file-operations", + "parameters": [ + { + "name": "testCode", + "type": "string", + "description": "Raw source code of the test file to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The testing framework to target, e.g., 'jest', 'mocha'. Determines specific formatting conventions.", + "required": true, + "defaultValue": "jest" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useSemicolons", + "type": "boolean", + "description": "Whether to enforce semicolon usage at the end of statements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width after which the formatter should wrap code.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted test code string under the 'formattedTestCode' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically format test code files to improve readability and maintain consistent style across repositories, especially when preparing tests for frameworks like Jest or Mocha. It is suited for standardizing test files prior to commits or code reviews.", + "limitations": "This tool only formats test code syntax and style according to specified conventions; it does not validate test logic, run tests, or fix syntax errors unrelated to formatting.", + "examples": [ + "Format a raw Jest test code string with 2-space indentation and semicolons.", + "Format Mocha test code with 4-space indentation and no semicolons.", + "Limit line width to 100 characters when formatting test code for Jest." + ] + }, + "tags": [ + "formatting", + "testing", + "code", + "jest", + "mocha", + "style", + "file-operations", + "test-files" + ], + "examples": [ + { + "inputJson": "{\"testCode\":\"describe('sum', () => {test('adds 1 + 2 to equal 3', () => {expect(sum(1,2)).toBe(3)})})\",\"framework\":\"jest\",\"indentation\":2,\"useSemicolons\":true,\"lineWidth\":80}", + "description": "Format a basic Jest test with 2 spaces indentation and enforced semicolons." + }, + { + "inputJson": "{\"testCode\":\"describe('Array', function() { it('should start empty', function() { expect(arr.length).to.equal(0); }); });\",\"framework\":\"mocha\",\"indentation\":4,\"useSemicolons\":false,\"lineWidth\":100}", + "description": "Format Mocha test with 4 spaces indentation without semicolons, max line width 100." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "file-operations.draftReport", + "description": "This tool accepts structured data and textual inputs to draft a formatted report document. It processes supplied data, applies optional templates or custom sections, and generates a cohesive report in Markdown or plain text format. The output is a text string representing the complete drafted report suitable for further editing or distribution.", + "category": "file-operations", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the report to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the report's author or creator.", + "required": false, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Date string to include in the report header (e.g., '2024-06-01').", + "required": false, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of section objects defining report sections. Each section should have a 'heading' (string) and 'content' (string) property.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the report text, e.g., 'markdown' or 'plaintext'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to prepend a table of contents based on section headings.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customFooter", + "type": "string", + "description": "Optional custom footer text to append at the end of the report.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted report text under 'reportText' and the chosen format under 'format'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a structured textual report document from a set of provided data sections, with optional authorship and date metadata. It is useful for automating report generation workflows, producing formatted textual drafts in Markdown or plain text that can be further refined or sent.", + "limitations": "This tool does not generate visual elements like images or charts, nor does it convert reports into binary formats (PDF, DOCX). It only creates textual report drafts and requires structured input for sections.", + "examples": [ + "Draft a quarterly sales report with title, author, date, three sections, and a table of contents in Markdown.", + "Generate a plain text report summarizing meeting notes with a custom footer.", + "Create a report document from data sections without author or date metadata." + ] + }, + "tags": [ + "file-operations", + "report-generation", + "document-drafting", + "markdown", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Quarterly Sales Report\",\"author\":\"Jane Doe\",\"date\":\"2024-06-01\",\"sections\":[{\"heading\":\"Executive Summary\",\"content\":\"Sales increased 15% this quarter.\"},{\"heading\":\"Regional Performance\",\"content\":\"The North region outperformed other areas.\"},{\"heading\":\"Future Outlook\",\"content\":\"Expect steady growth next quarter.\"}],\"format\":\"markdown\",\"includeTableOfContents\":true,\"customFooter\":\"Confidential - For internal use only\"}", + "description": "Draft a complete quarterly sales report in Markdown format with metadata and a table of contents." + }, + { + "inputJson": "{\"title\":\"Meeting Notes\",\"author\":\"John Smith\",\"date\":\"2024-05-30\",\"sections\":[{\"heading\":\"Attendees\",\"content\":\"John Smith, Alice Brown, Peter Jones.\"},{\"heading\":\"Key Decisions\",\"content\":\"Approved budget increase for project X.\"}],\"format\":\"plaintext\",\"includeTableOfContents\":false,\"customFooter\":\"\"}", + "description": "Generate a plain text meeting notes report without a table of contents." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "file-operations.buildPullRequest", + "description": "Creates a fully-formed pull request from specified branch and code changes. Accepts source and target branch names, a list of file diffs or patch data, a pull request title and description, and optional reviewer list. Processes this information to construct a pull request object ready for submission to a code hosting platform.", + "category": "file-operations", + "parameters": [ + { + "name": "sourceBranch", + "type": "string", + "description": "Name of the branch with proposed changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "Name of the branch to merge changes into.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileChanges", + "type": "array", + "description": "Array of file change objects, each detailing file path and diff or patch content.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the pull request summarizing the changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the pull request changes and context.", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of usernames or IDs to request review from.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed pull request including metadata and ready for submission." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate a pull request from code changes, specifying source and target branches, descriptive metadata, and reviewers, to automate code integration workflows.", + "limitations": "This tool does not communicate with remote repositories or host platforms; it only constructs the pull request data. Actual submission requires integration with version control hosting APIs.", + "examples": [ + "Create a pull request from feature branch 'feature/test' to 'main' with three file diffs and assign 'alice' and 'bob' as reviewers.", + "Build a pull request titled 'Fix login bug' merging branch 'bugfix/login' into 'develop' with patch data and no reviewers specified." + ] + }, + "tags": [ + "file-operations", + "pull-request", + "version-control", + "code-integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceBranch\":\"feature/login-improvements\",\"targetBranch\":\"main\",\"fileChanges\":[{\"filePath\":\"src/login.js\",\"diff\":\"@@ -1,5 +1,6 @@\\n+console.log('Starting login')\\n function login() {\\n- // old code\\n+ // updated code\\n }\"}],\"title\":\"Improve login flow\",\"description\":\"This PR adds logging for the login process.\",\"reviewers\":[\"alice\",\"bob\"]}", + "description": "Builds a PR from 'feature/login-improvements' to 'main' with one file modified and two reviewers." + }, + { + "inputJson": "{\"sourceBranch\":\"bugfix/header\",\"targetBranch\":\"develop\",\"fileChanges\":[{\"filePath\":\"src/header.js\",\"diff\":\"@@ -10,7 +10,7 @@\\n-header.style.color = 'red';\\n+header.style.color = 'blue';\"}],\"title\":\"Fix header color bug\",\"description\":\"Fixes incorrect color in header component.\",\"reviewers\":[]}", + "description": "Creates a pull request fixing a UI bug with no reviewers assigned." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "file-operations.buildEndpoint", + "description": "Builds a REST API endpoint source code file based on given specifications. Accepts HTTP method, route path, request/response schemas, and optional middleware settings. Produces source code string implementing the endpoint in the specified language and framework.", + "category": "file-operations", + "parameters": [ + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for the endpoint (e.g., GET, POST)", + "required": true, + "defaultValue": "" + }, + { + "name": "routePath", + "type": "string", + "description": "The URL path at which the endpoint will be exposed (e.g., /users)", + "required": true, + "defaultValue": "" + }, + { + "name": "requestSchema", + "type": "object", + "description": "JSON schema describing expected request body or parameters", + "required": false, + "defaultValue": "" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON schema describing the structure of the response body", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Programming language for generated code (e.g., JavaScript, Python)", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "framework", + "type": "string", + "description": "Web framework to target (e.g., Express, Flask)", + "required": true, + "defaultValue": "Express" + }, + { + "name": "includeMiddleware", + "type": "boolean", + "description": "Whether to include basic middleware like validation and error handling", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the source code string for the endpoint implementation and metadata such as fileName and language." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate boilerplate REST API endpoint code from structured endpoint specs during rapid prototyping, automated code scaffolding, or backend code generation based on API design documents.", + "limitations": "Does not handle complex authentication/authorization logic, database integration, or full server setup. Only generates single endpoint handlers in supported languages/frameworks.", + "examples": [ + "Generate a POST /users endpoint in Express with JSON body validation", + "Build a GET /items endpoint in Flask returning an array of items", + "Create a DELETE /orders/:id endpoint with error handling middleware" + ] + }, + "tags": [ + "file-operations", + "code-generation", + "api", + "endpoint", + "backend", + "scaffolding", + "rest", + "automation" + ], + "examples": [ + { + "inputJson": "{\"httpMethod\":\"POST\",\"routePath\":\"/users\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\",\"format\":\"email\"}},\"required\":[\"name\",\"email\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\"}},\"required\":[\"id\",\"name\",\"email\"]},\"programmingLanguage\":\"JavaScript\",\"framework\":\"Express\",\"includeMiddleware\":true}", + "description": "Generate a POST /users endpoint in Express.js that validates the request body and returns a user object." + }, + { + "inputJson": "{\"httpMethod\":\"GET\",\"routePath\":\"/products\",\"responseSchema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"number\"},\"name\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"}},\"required\":[\"id\",\"name\",\"price\"]}},\"programmingLanguage\":\"Python\",\"framework\":\"Flask\",\"includeMiddleware\":false}", + "description": "Generate a GET /products endpoint in Flask returning a list of product objects without additional middleware." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "file-operations.buildContainer", + "description": "Builds a compressed archive container (e.g., zip or tar) from specified files and directories. Accepts an array of file paths and configuration options, packages the files into the desired archive format, and outputs the file path of the created container archive for distribution or storage.", + "category": "file-operations", + "parameters": [ + { + "name": "inputPaths", + "type": "array", + "description": "Array of file and directory paths to include in the container archive.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputPath", + "type": "string", + "description": "Destination file path for the generated container archive.", + "required": true, + "defaultValue": "" + }, + { + "name": "archiveFormat", + "type": "string", + "description": "Archive format to use; supported formats include 'zip' and 'tar'.", + "required": false, + "defaultValue": "zip" + }, + { + "name": "compressionLevel", + "type": "number", + "description": "Compression level with 0 (no compression) to 9 (max compression).", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeHiddenFiles", + "type": "boolean", + "description": "Flag to specify whether hidden files should be included in the container.", + "required": false, + "defaultValue": "false" + }, + { + "name": "preservePermissions", + "type": "boolean", + "description": "Flag to preserve original file permissions in the archive.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the path to the created container archive and summary information." + }, + "aiAgent": { + "useCase": "Use this tool when you need to package multiple files and directories into a single container archive for deployment, backup, or transfer. It supports common archive formats and customizable compression settings to optimize for size or speed.", + "limitations": "Does not support streaming large files directly; all input files must exist on the local filesystem. Network paths are not supported inherently. Does not verify archive integrity post-creation.", + "examples": [ + "Build a zip archive from multiple project folders with maximum compression.", + "Create a tar archive excluding hidden files and preserving permissions.", + "Package a list of log files into a compressed container for transfer." + ] + }, + "tags": [ + "file", + "archive", + "compression", + "packaging", + "container", + "zip", + "tar", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"inputPaths\":[\"/home/user/project/src\",\"/home/user/project/readme.md\"],\"outputPath\":\"/home/user/project/archive.zip\",\"archiveFormat\":\"zip\",\"compressionLevel\":9,\"includeHiddenFiles\":false,\"preservePermissions\":true}", + "description": "Create a zip archive with max compression from source folder and readme file, excluding hidden files." + }, + { + "inputJson": "{\"inputPaths\":[\"/var/log/syslog\",\"/var/log/auth.log\"],\"outputPath\":\"/backup/logs.tar\",\"archiveFormat\":\"tar\",\"compressionLevel\":0,\"includeHiddenFiles\":true,\"preservePermissions\":true}", + "description": "Build an uncompressed tar archive of system log files including hidden files, preserving permissions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "file-operations.buildModule", + "description": "Builds a runnable code module from given source files, applying optional transpilation, packaging, and bundling steps. Accepts an array of source file paths and config options, processes the files accordingly, and outputs a compiled module as a directory or archive ready for deployment or further integration.", + "category": "file-operations", + "parameters": [ + { + "name": "sourceFiles", + "type": "array", + "description": "List of source code file paths to include in the module build process.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the output format of the built module, e.g., 'directory', 'zip', or 'tar'.", + "required": false, + "defaultValue": "directory" + }, + { + "name": "transpile", + "type": "boolean", + "description": "Whether to transpile source files (e.g., TypeScript to JavaScript) before bundling.", + "required": false, + "defaultValue": "false" + }, + { + "name": "bundle", + "type": "boolean", + "description": "Whether to bundle source files into a single file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "Target environment for the module, such as 'node', 'browser', or 'universal'.", + "required": false, + "defaultValue": "node" + }, + { + "name": "outputPath", + "type": "string", + "description": "The directory path where the built module is saved. If not specified, defaults to './dist'.", + "required": false, + "defaultValue": "./dist" + } + ], + "returns": { + "type": "object", + "description": "An object containing details about the build process output, including outputPath and success status." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when needing to programmatically create or compile code modules from multiple source files, for example, to prepare code for deployment, packaging, or testing. This tool consolidates building steps including transpilation and bundling into one operation, saving manual build pipeline setup.", + "limitations": "This tool does not handle dependency installation, version resolution, or advanced build optimizations beyond basic transpilation and bundling. It assumes source files are valid and accessible.", + "examples": [ + "Build a Node.js module from TypeScript source files targeting node environment.", + "Create a bundled browser module from JavaScript files output as a zip archive.", + "Build a code module without transpilation, just packaging source files into a directory." + ] + }, + "tags": [ + "file-operations", + "build", + "module", + "code", + "transpile", + "bundle", + "package" + ], + "examples": [ + { + "inputJson": "{\"sourceFiles\":[\"src/index.ts\",\"src/utils.ts\"],\"outputFormat\":\"directory\",\"transpile\":true,\"bundle\":true,\"targetEnvironment\":\"node\",\"outputPath\":\"./build/myModule\"}", + "description": "Build a Node.js module from TypeScript sources, transpiling and bundling into ./build/myModule directory." + }, + { + "inputJson": "{\"sourceFiles\":[\"lib/main.js\",\"lib/helper.js\"],\"outputFormat\":\"zip\",\"transpile\":false,\"bundle\":true,\"targetEnvironment\":\"browser\",\"outputPath\":\"./dist/browserModule.zip\"}", + "description": "Bundle JavaScript files for browser use and output as a zip archive." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "file-operations.generateLink", + "description": "Generates a shareable URL link for a specified local or remote file, optionally applying access controls and expiration settings. Accepts a file path or URL input along with optional parameters to customize link behavior, and outputs a secure, accessible link string.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The path or URL of the file to generate a shareable link for.", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Number of seconds after which the generated link will expire and become invalid. Use 0 or omit for no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "accessRestrictions", + "type": "object", + "description": "Optional access restrictions such as IP whitelist or password protection to secure the link.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "linkType", + "type": "string", + "description": "Type of link to generate: 'public' for open access or 'private' for restricted access with authentication.", + "required": false, + "defaultValue": "public" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated shareable link URL and metadata including expiration timestamp and applied access controls." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a secure or public shareable URL for files, whether stored locally or in remote storage, enabling easy access by others with optional restrictions and expiration. Ideal for file sharing automation, temporary access grants, or embedding in communications.", + "limitations": "This tool does not upload or store the actual file; it assumes the input file path or URL is accessible to the link generation system. It cannot enforce access restrictions beyond link-level controls.", + "examples": [ + "Generate a public shareable link for a local file valid for 24 hours.", + "Create a private link to a report with password protection and no expiration.", + "Produce a temporary link for a remote file that expires after one hour." + ] + }, + "tags": [ + "file management", + "sharing", + "link generation", + "access control", + "automation" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/user/docs/report.pdf\",\"expirationSeconds\":86400,\"linkType\":\"public\"}", + "description": "Generate a public shareable link for a PDF file that expires in 24 hours." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/data.csv\",\"accessRestrictions\":{\"password\":\"xyz123\"},\"linkType\":\"private\"}", + "description": "Create a private, password-protected shareable link to a remote CSV file with no expiration." + }, + { + "inputJson": "{\"filePath\":\"/var/media/video.mp4\",\"expirationSeconds\":3600}", + "description": "Generate a public link to a local video file that expires in one hour." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "file-operations.generateArticle", + "description": "Generates a structured article file based on given text content, title, and optional metadata. Accepts plain text or markdown content, formats it into a well-organized article including title, subtitle, author info, and outputs it in markdown or HTML format.", + "category": "file-operations", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title of the article to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The main body text or content of the article, supporting markdown syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "subtitle", + "type": "string", + "description": "Optional subtitle or tagline for the article.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to include in the article metadata or header.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the article. Supported values are 'markdown' and 'html'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "includeDate", + "type": "boolean", + "description": "Whether to include the current date in the article metadata or header.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article as a string with the specified format, and metadata details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create well-structured article documents from raw text input, such as generating blog posts, reports, or documentation files in markdown or HTML. It helps automate content file creation with consistent formatting and metadata.", + "limitations": "Does not perform content generation or writing. It only formats and structures already-provided text content. It cannot create images or multimedia content. It does not support formats beyond markdown and HTML.", + "examples": [ + "Generate a markdown article with title, author, and content for a blog post.", + "Produce an HTML formatted article file for web publication with current date included." + ] + }, + "tags": [ + "file-operations", + "generate", + "article", + "markdown", + "html", + "content", + "document" + ], + "examples": [ + { + "inputJson": "{\"title\":\"The Future of AI\",\"content\":\"Artificial Intelligence is transforming industries worldwide.\",\"author\":\"Jane Doe\",\"format\":\"markdown\",\"includeDate\":true}", + "description": "Generate a markdown article about AI with author and date included." + }, + { + "inputJson": "{\"title\":\"Climate Change Report\",\"content\":\"This document summarizes recent climate data.\",\"subtitle\":\"Annual Review 2024\",\"format\":\"html\",\"includeDate\":false}", + "description": "Create an HTML article with a subtitle but no date included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "file-operations.createLink", + "description": "Creates a filesystem symbolic link or shortcut pointing to a target file or directory. Accepts the target path, link name, and link type as inputs, and outputs the path to the created link. Supports relative or absolute paths and can create links compatible with Windows, Linux, and macOS systems.", + "category": "file-operations", + "parameters": [ + { + "name": "targetPath", + "type": "string", + "description": "The path of the file or directory the link should point to.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkPath", + "type": "string", + "description": "The path where the symbolic link or shortcut will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkType", + "type": "string", + "description": "Type of link to create: 'file', 'directory', or 'shortcut'. 'shortcut' applies mainly to Windows systems for .lnk files.", + "required": false, + "defaultValue": "file" + }, + { + "name": "useRelativePath", + "type": "boolean", + "description": "Whether to use a relative path for the link target instead of an absolute path.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object including the absolute path to the created link and a success boolean indicating if the link was created successfully." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create symbolic links or shortcuts on the local filesystem to mirror or reference files/directories without duplicating content, such as for deployment, backup, or shortcut creation scenarios.", + "limitations": "Cannot create hard links; behavior depends on OS permissions; creating Windows shortcuts (.lnk) is limited to Windows; does not validate target path existence.", + "examples": [ + "Create a symbolic link to a configuration file from a project directory.", + "Create a directory link to share a common assets folder.", + "Create a Windows shortcut (.lnk) to a frequently used application file." + ] + }, + "tags": [ + "file", + "link", + "symbolic link", + "shortcut", + "filesystem", + "file management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"targetPath\":\"/usr/local/share/config.json\",\"linkPath\":\"/home/user/project/config.json\",\"linkType\":\"file\",\"useRelativePath\":true}", + "description": "Create a relative symbolic link named config.json pointing to a config file." + }, + { + "inputJson": "{\"targetPath\":\"/var/data/assets\",\"linkPath\":\"/home/user/project/assets_link\",\"linkType\":\"directory\",\"useRelativePath\":false}", + "description": "Create an absolute symbolic link to the assets directory." + }, + { + "inputJson": "{\"targetPath\":\"C:\\\\Program Files\\\\App\\\\app.exe\",\"linkPath\":\"C:\\\\Users\\\\User\\\\Desktop\\\\AppShortcut.lnk\",\"linkType\":\"shortcut\",\"useRelativePath\":false}", + "description": "Create a Windows shortcut on the desktop to an application executable." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "file-operations.createInstance", + "description": "Creates a new file system instance (e.g., a virtual disk, file storage container, or file namespace) based on specified configuration parameters. Accepts inputs defining size, type, access permissions, and optional initialization data, then provisions and returns details of the created file instance.", + "category": "file-operations", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "The unique name identifier for the file instance to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "Specifies the type of file instance such as 'virtualDisk', 'storageBucket', or 'fileNamespace'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sizeMb", + "type": "number", + "description": "Size of the instance in megabytes, relevant for disk or storage-type instances.", + "required": false, + "defaultValue": "100" + }, + { + "name": "accessPermissions", + "type": "object", + "description": "Defines read/write permissions and user/group access rights for the instance.", + "required": false, + "defaultValue": "" + }, + { + "name": "initialFiles", + "type": "array", + "description": "Optional list of initial files to populate the instance; each item includes fileName and fileContent.", + "required": false, + "defaultValue": "" + }, + { + "name": "encryptionEnabled", + "type": "boolean", + "description": "Whether to enable encryption for stored data in this instance.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns metadata about the created file instance including its ID, access info, size, type, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision or simulate infrastructure file storage instances dynamically, such as creating virtual disks or storage buckets for applications to use or testing file system behaviors. It facilitates automation of storage environment infrastructure creation.", + "limitations": "This tool does not format or mount the instance post-creation. It cannot manage instances beyond initial creation (e.g., resizing or deletion). Encryption here is basic flagging; no key management provided.", + "examples": [ + "Create a 500MB virtual disk named 'TestDisk1' with read/write permissions for user 'admin'.", + "Provision a 'storageBucket' instance named 'BackupStore' with encryption enabled and initialized with predefined files." + ] + }, + "tags": [ + "file", + "create", + "instance", + "storage", + "infrastructure", + "virtualDisk", + "fileSystem" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"TestDisk1\",\"instanceType\":\"virtualDisk\",\"sizeMb\":500,\"accessPermissions\":{\"read\":[\"admin\"],\"write\":[\"admin\"]},\"encryptionEnabled\":false}", + "description": "Create a 500 MB virtual disk called 'TestDisk1' with read/write access limited to admin user." + }, + { + "inputJson": "{\"instanceName\":\"BackupStore\",\"instanceType\":\"storageBucket\",\"encryptionEnabled\":true,\"initialFiles\":[{\"fileName\":\"readme.txt\",\"fileContent\":\"This is a demo file.\"}]}", + "description": "Create an encrypted storage bucket 'BackupStore' initialized with one readme.txt file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "file-operations.createPayment", + "description": "Creates a structured payment file based on input payment details. Accepts payment information including payer, payee, amount, currency, payment date, and optional metadata. Processes and formats this information into a standard payment file format such as JSON or CSV. Outputs a file ready for upload or transmission to payment processing systems.", + "category": "file-operations", + "parameters": [ + { + "name": "payerName", + "type": "string", + "description": "Name of the entity making the payment", + "required": true, + "defaultValue": "" + }, + { + "name": "payeeName", + "type": "string", + "description": "Name of the entity receiving the payment", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "Monetary amount to be paid", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) of the payment amount", + "required": true, + "defaultValue": "USD" + }, + { + "name": "paymentDate", + "type": "string", + "description": "Date of payment in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Method of payment (e.g., ACH, Wire Transfer, Credit Card)", + "required": false, + "defaultValue": "ACH" + }, + { + "name": "description", + "type": "string", + "description": "Optional description or note for the payment", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format, e.g., JSON or CSV", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing fileName as string and fileContent as a string encoded in specified format containing payment details." + }, + "aiAgent": { + "useCase": "Use this tool when a structured payment instruction file is required from raw payment data to transmit to financial systems or for record keeping. It helps standardize multiple payment parameters into one file for automation or audits.", + "limitations": "Cannot transmit payments directly; only creates the payment file. Does not perform currency conversion or validate account details.", + "examples": [ + "Create a payment file for a vendor payment of $10,000 USD on 2024-06-15 to process via wire transfer.", + "Generate a CSV payment batch file for multiple payments (if extended) for accounting upload.", + "Create a JSON payment notification file including detailed description for internal records." + ] + }, + "tags": [ + "file creation", + "payment", + "financial", + "file-operations", + "payment-processing" + ], + "examples": [ + { + "inputJson": "{\"payerName\":\"Acme Corp\",\"payeeName\":\"Global Supplies Ltd\",\"amount\":10000,\"currency\":\"USD\",\"paymentDate\":\"2024-06-15\",\"paymentMethod\":\"Wire Transfer\",\"description\":\"Invoice #12345 settlement\",\"outputFormat\":\"JSON\"}", + "description": "Creating a JSON payment file for a vendor payment via wire transfer." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "file-operations.createComponent", + "description": "Creates a reusable code component file based on specified programming language, framework, and desired component name. Accepts inputs such as component type (e.g., class, function), language (e.g., JavaScript, TypeScript), and framework (e.g., React, Vue). Outputs a source code file content as a string with boilerplate code tailored to input parameters.", + "category": "file-operations", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The name of the component to be created, used as the identifier and filename.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentType", + "type": "string", + "description": "The type of the component, such as 'function' or 'class' for relevant languages.", + "required": false, + "defaultValue": "function" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the component to generate, e.g., 'JavaScript' or 'TypeScript'.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The target framework or library the component is intended for, e.g., React, Vue, or empty for plain code.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeStyles", + "type": "boolean", + "description": "Whether to generate an accompanying style (CSS) stub for the component.", + "required": false, + "defaultValue": "false" + }, + { + "name": "styleFormat", + "type": "string", + "description": "The style format to use if styles are included, e.g., 'css', 'scss', or 'module.css'.", + "required": false, + "defaultValue": "css" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated component source code as a string and optional styles code if requested, with suggested filename." + }, + "aiAgent": { + "useCase": "Use this tool when generating new reusable code components during software development workflows, especially in frontend projects requiring boilerplate setup. It facilitates fast scaffolding of components with consistent structure tailored to language and framework choices.", + "limitations": "This tool does not perform complex logic generation or API integration within components; it only creates structural boilerplate code. It does not generate tests or configuration files.", + "examples": [ + "Create a React functional component named 'Button' in TypeScript with CSS modules styles.", + "Generate a Vue class-based component named 'UserCard' with SCSS styles.", + "Create a plain JavaScript function component named 'Helper' without styles." + ] + }, + "tags": [ + "file-operations", + "code-generation", + "component", + "boilerplate", + "frontend", + "framework", + "scaffolding", + "create" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"Button\",\"componentType\":\"function\",\"language\":\"TypeScript\",\"framework\":\"React\",\"includeStyles\":true,\"styleFormat\":\"module.css\"}", + "description": "Generate a TypeScript React function component named 'Button' with CSS modules styles." + }, + { + "inputJson": "{\"componentName\":\"UserCard\",\"componentType\":\"class\",\"language\":\"JavaScript\",\"framework\":\"Vue\",\"includeStyles\":true,\"styleFormat\":\"scss\"}", + "description": "Generate a JavaScript Vue class component named 'UserCard' with SCSS styles." + }, + { + "inputJson": "{\"componentName\":\"Helper\",\"componentType\":\"function\",\"language\":\"JavaScript\",\"framework\":\"\",\"includeStyles\":false,\"styleFormat\":\"\"}", + "description": "Generate a plain JavaScript function component named 'Helper' without styles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "file-operations.createVariable", + "description": "Creates a programming variable declaration snippet and saves it into a specified file. Accepts variable name, type, value, language, and output file path. Outputs a code snippet in the chosen language defining the variable and writes it to the given file path, creating or overwriting the file as needed.", + "category": "file-operations", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "Name of the variable to create in the code snippet.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "Data type of the variable (e.g., string, number, boolean) depending on language syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableValue", + "type": "string", + "description": "Initial value to assign to the variable. Should be a string representation appropriate for the variableType.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the variable declaration (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "Full file path where the generated variable declaration code snippet will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "isConstant", + "type": "boolean", + "description": "Whether the variable is declared as a constant where applicable (e.g., const vs let in JavaScript).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file path where the variable code snippet was saved and the code snippet string itself, confirming the operation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate code snippets for variable declarations dynamically based on user input and want to save those snippets into source code files for further integration or reference. Ideal for code generation, templating, or automation tasks.", + "limitations": "This tool generates only single variable declarations and simple initializations. It does not handle complex data structures, multiple variables in one snippet, or advanced language features. It assumes valid input for names and types consistent with the chosen language.", + "examples": [ + "Create a JavaScript variable named count of type number with initial value 10 and save it to /tmp/var.js", + "Create a Python variable named greeting of type string with value 'Hello' and save to /scripts/vars.py", + "Create a constant boolean variable named isValid with value true in Java and save to ./src/Config.java" + ] + }, + "tags": [ + "file", + "code-generation", + "variable", + "programming", + "snippet", + "automation" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"count\",\"variableType\":\"number\",\"variableValue\":\"10\",\"language\":\"JavaScript\",\"outputFilePath\":\"/tmp/var.js\",\"isConstant\":false}", + "description": "Generate a JavaScript variable 'count' of type number with value 10 saved in /tmp/var.js." + }, + { + "inputJson": "{\"variableName\":\"greeting\",\"variableType\":\"string\",\"variableValue\":\"Hello\",\"language\":\"Python\",\"outputFilePath\":\"/scripts/vars.py\",\"isConstant\":false}", + "description": "Generate a Python string variable 'greeting' with value 'Hello' saved in /scripts/vars.py." + }, + { + "inputJson": "{\"variableName\":\"isValid\",\"variableType\":\"boolean\",\"variableValue\":\"true\",\"language\":\"Java\",\"outputFilePath\":\"./src/Config.java\",\"isConstant\":true}", + "description": "Generate a Java constant boolean variable 'isValid' with value true saved in ./src/Config.java." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "video-processing.analyzeEvent", + "description": "Analyzes video footage of events such as conferences, sports matches, or social gatherings, identifying key moments, crowd movement, speaker changes, and other event-specific analytics. Accepts a video file and event metadata, performs scene detection, object tracking, and audio analysis, and outputs a detailed report of detected event activities with timestamps and summaries.", + "category": "video-processing", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "URL or path to the video file to analyze (MP4, MOV, etc.).", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of event in the video (e.g., conference, sports, concert).", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "Start time in seconds within the video to begin analysis.", + "required": false, + "defaultValue": "0" + }, + { + "name": "endTime", + "type": "number", + "description": "End time in seconds within the video to end analysis; if omitted, analyzes till video end.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAudioAnalysis", + "type": "boolean", + "description": "Whether to analyze audio track for speaker changes or crowd noise levels.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis report; options: 'json', 'xml', 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Analysis report object including detected key event moments, scene changes, participant tracking data, audio insights, with timestamps and summary statistics." + }, + "aiAgent": { + "useCase": "Use this tool when you need automated insights into recorded event videos, such as summarizing conference sessions, highlighting sports game moments, or monitoring crowd behavior at gatherings. It helps extract meaningful analytics and key moments without manual review.", + "limitations": "Does not perform real-time analysis; works on pre-recorded video only. Accuracy depends on video quality and event complexity; specialized event details might require custom training.", + "examples": [ + "Analyze a recorded team meeting video to identify speaker changes and presentation segments.", + "Summarize key plays and highlights from a recorded soccer match video.", + "Detect crowd density and mood shifts in a concert video recording." + ] + }, + "tags": [ + "video-processing", + "event-analysis", + "scene-detection", + "audio-analysis", + "object-tracking", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/conference_session.mp4\",\"eventType\":\"conference\",\"startTime\":0,\"endTime\":3600,\"includeAudioAnalysis\":true,\"outputFormat\":\"json\"}", + "description": "Analyze a one-hour conference session video for key moments, speaker changes, and scene transitions with audio analysis enabled." + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/soccer_match.mp4\",\"eventType\":\"sports\",\"includeAudioAnalysis\":false,\"outputFormat\":\"text\"}", + "description": "Analyze full soccer match video to extract highlights and key events without audio analysis, outputting a text report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "video-processing.analyzeParagraph", + "description": "Analyzes the speech and visual content within a specified paragraph time segment of a video. Accepts video file and time range indicating the paragraph, extracts and transcribes spoken text, analyzes sentiment and key topics, and provides a summary with timestamps. Outputs structured insight about that paragraph segment.", + "category": "video-processing", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Path or URL to the video file to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "Start time in seconds for the paragraph segment within the video", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "number", + "description": "End time in seconds for the paragraph segment within the video", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the spoken content for transcription (e.g., 'en' for English)", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze and include sentiment analysis of the paragraph", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis result including transcribed text, sentiment score, key topics, and summary of the paragraph segment." + }, + "aiAgent": { + "useCase": "Use this tool when you need detailed analysis of a specific spoken content segment (paragraph) within a video. It helps to extract and summarize spoken text, understand sentiment, and highlight key topics for segments rather than entire videos, enabling fine-grained content understanding and indexing.", + "limitations": "Cannot perform analysis if video segment has overlapping speech or poor audio quality. Does not analyze non-speech visual elements deeply, focuses mainly on speech and basic visual frame extraction.", + "examples": [ + "Analyze the spoken content and sentiment from 1:00 to 1:30 in a meeting recording video.", + "Extract and summarize key topics from the first paragraph segment (0-45 seconds) of an interview video.", + "Transcribe and analyze sentiment of a reporting paragraph in a documentary from 10:00 to 10:45." + ] + }, + "tags": [ + "video-analysis", + "speech-transcription", + "sentiment-analysis", + "content-summary", + "paragraph-segmentation" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/meeting.mp4\",\"startTime\":60,\"endTime\":90,\"language\":\"en\",\"includeSentiment\":true}", + "description": "Analyze speech and sentiment from 1:00 to 1:30 in a meeting video file." + }, + { + "inputJson": "{\"videoFilePath\":\"http://example.com/interview.mp4\",\"startTime\":0,\"endTime\":45,\"language\":\"en\",\"includeSentiment\":false}", + "description": "Extract transcript and key topics from the first paragraph segment of an interview video without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "video-processing.analyzeAlert", + "description": "This tool accepts a video file or stream input along with defined alert criteria (such as motion detection, intrusion zones, or suspicious behavior patterns). It processes the video using computer vision and analytics algorithms to detect security-related events and outputs a structured alert report detailing detected events with timestamps, types, confidence scores, and bounding box locations in the video frames.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "Path or URL to the video file or stream for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertCriteria", + "type": "object", + "description": "Definition of detection parameters and rules for alerts (e.g., motion sensitivity, restricted polygon zones, object types to trigger alerts).", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "Optional start time in seconds to begin analyzing the video segment.", + "required": false, + "defaultValue": "0" + }, + { + "name": "endTime", + "type": "number", + "description": "Optional end time in seconds to stop analyzing the video segment.", + "required": false, + "defaultValue": "" + }, + { + "name": "minConfidence", + "type": "number", + "description": "Minimum confidence threshold (0-1) for detected events to be reported.", + "required": false, + "defaultValue": "0.6" + }, + { + "name": "includeSnapshots", + "type": "boolean", + "description": "Whether to include small image snapshots of detected events in the alert output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An alert report object containing an array of detected events, each with timestamp, event type, confidence score, bounding box coordinates, and optionally, image snapshots." + }, + "aiAgent": { + "useCase": "Use this tool when processing surveillance video footage to automatically detect and report security alerts such as unauthorized access, suspicious movement, or perimeter breaches. It's suitable for integrating into security monitoring systems to reduce manual video review workload and trigger real-time responses.", + "limitations": "Cannot guarantee 100% detection accuracy; performance depends on video quality and clearly defined alert criteria. Does not perform action responses to alerts; it only analyzes and reports. Real-time streaming analysis may have latency depending on compute resources.", + "examples": [ + "Analyze a security camera recording to detect unauthorized personnel entering a defined restricted zone.", + "Process a recorded video to identify instances of motion during closed hours and generate alert summaries.", + "Scan video footage to find and timestamp suspicious objects left unattended." + ] + }, + "tags": [ + "video-analysis", + "security", + "alert-detection", + "surveillance", + "computer-vision", + "motion-detection" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"/videos/parking_lot_2023-06-01.mp4\",\"alertCriteria\":{\"zones\":[{\"name\":\"restricted_area\",\"polygon\":[[100,150],[200,150],[200,250],[100,250]]}],\"motionSensitivity\":0.7},\"minConfidence\":0.75,\"includeSnapshots\":true}", + "description": "Analyze parking lot video to detect motion inside a restricted polygonal area with high confidence threshold and include image snapshots for each alert event." + }, + { + "inputJson": "{\"videoSource\":\"rtsp://192.168.1.10:554/live\",\"alertCriteria\":{\"objectTypes\":[\"person\"],\"timeRanges\":[{\"start\":64800,\"end\":68400}]},\"startTime\":0,\"endTime\":3600,\"minConfidence\":0.6,\"includeSnapshots\":false}", + "description": "Analyze one hour segment of live stream to detect presence of people during nighttime hours without including image snapshots." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "video-processing.sendMessage", + "description": "Sends a text or multimedia message related to a specific video file or segment. Accepts inputs like video ID or URL, message content, optional timestamp or time range for context, and recipient information. Processes the message by associating it with the video context and delivers it via the specified communication channel. Outputs a confirmation of send status and message metadata.", + "category": "video-processing", + "parameters": [ + { + "name": "videoId", + "type": "string", + "description": "Unique identifier or URL of the video to which the message relates", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "Textual content of the message to send about the video", + "required": true, + "defaultValue": "" + }, + { + "name": "timeStamp", + "type": "number", + "description": "Optional: timestamp in seconds within the video to indicate specific context for the message", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional: time range object with 'start' and 'end' in seconds indicating the video segment related to the message", + "required": false, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "Identifier or contact (e.g., email or username) of the message recipient", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Communication channel to send the message through (e.g., 'email', 'chat', 'inAppNotification')", + "required": true, + "defaultValue": "inAppNotification" + }, + { + "name": "includePreview", + "type": "boolean", + "description": "Whether to include a thumbnail or preview snippet of the video at the specified time or range in the message", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object including send status (success/failure), messageId, timestamp of sending, and optional error details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to send a contextual message or annotation tied to a particular video and optionally a specific time or segment within the video. Useful for collaboration, feedback, notifications, or alerting users/viewers about important video moments via designated channels.", + "limitations": "Does not implement actual video editing or message content generation; requires valid video identifiers and recipient info. Cannot send messages without recipient data or process video content itself.", + "examples": [ + "Send a message to a user about an issue spotted at 2:15 in the video.", + "Notify the project team with a note referencing the 0:30-0:45 segment of the review video via email.", + "Send an in-app notification with a preview thumbnail about a highlight in the training video." + ] + }, + "tags": [ + "video", + "messaging", + "communication", + "annotation", + "notification", + "feedback" + ], + "examples": [ + { + "inputJson": "{ \"videoId\": \"vid12345\", \"messageContent\": \"Please check the lighting at this scene.\", \"timeStamp\": 135, \"recipient\": \"reviewer@example.com\", \"channel\": \"email\", \"includePreview\": true }", + "description": "Send an email message with a video preview to a reviewer about an issue at 2:15 in the video." + }, + { + "inputJson": "{ \"videoId\": \"https://videos.example.com/xyz\", \"messageContent\": \"Great shot here!\", \"timeRange\": { \"start\": 30, \"end\": 45 }, \"recipient\": \"team-chat\", \"channel\": \"chat\", \"includePreview\": false }", + "description": "Send a chat message praising a segment of the video from 0:30 to 0:45 without a preview." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "video-processing.analyzeOrder", + "description": "Analyzes video footage related to business order processes, extracting and summarizing metadata such as timestamps, product visibility, order processing steps, and compliance checkpoints. Accepts video files and order identifiers as input, processes the video to identify relevant order-related actions, and outputs a structured report detailing the order analysis findings and key timestamps.", + "category": "video-processing", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Path or URL to the input video file containing order processing footage.", + "required": true, + "defaultValue": "" + }, + { + "name": "orderId", + "type": "string", + "description": "Unique identifier of the order being analyzed in the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "analyzeCompliance", + "type": "boolean", + "description": "Whether to analyze compliance steps within the order processing (e.g., safety checks).", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output report format; e.g., 'json' or 'text'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "timeRangeStart", + "type": "number", + "description": "Start time in seconds of the video segment to analyze (optional).", + "required": false, + "defaultValue": "0" + }, + { + "name": "timeRangeEnd", + "type": "number", + "description": "End time in seconds of the video segment to analyze (optional, 0 means till end).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Structured report including order ID, key actions identified in video with timestamps, compliance results if requested, summary statistics, and relevant metadata about the video analysis." + }, + "aiAgent": { + "useCase": "Use this tool when you have video footage of physical order processing or packing lines and need to automatically extract details about the order handling steps, timestamps, and compliance checkpoints for audit or optimization. It helps automate review workflows by providing a structured summary of actions captured on video related to a specific order.", + "limitations": "Does not perform detailed human activity recognition beyond visible order process steps. Requires reasonably good video quality and clear view of the process. Cannot interpret audio content or non-visual order data.", + "examples": [ + "Analyze the video of order #1234 to extract all processing steps and verify compliance.", + "Summarize key events in a packaging order video from 10 to 30 minutes mark.", + "Generate JSON report of order handling steps for orderId 'ORD5678' without compliance analysis." + ] + }, + "tags": [ + "video analysis", + "order processing", + "compliance", + "business", + "automation", + "metadata extraction" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/data/videos/order_1234_frontline.mp4\",\"orderId\":\"1234\",\"analyzeCompliance\":true,\"outputFormat\":\"json\"}", + "description": "Analyze a full order processing video including compliance and generate a JSON report." + }, + { + "inputJson": "{\"videoFilePath\":\"https://storage.example.com/videos/order5678.mp4\",\"orderId\":\"ORD5678\",\"timeRangeStart\":600,\"timeRangeEnd\":1800}", + "description": "Analyze a video segment from 10 to 30 minutes for order ORD5678, focusing on key handling steps without compliance checks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Order", + "context": null + } + }, + { + "name": "video-processing.analyzeMetric", + "description": "This tool accepts a video file or stream URL and analyzes specified video quality or performance metrics such as frame rate stability, resolution consistency, compression artifacts, or motion smoothness. It processes the video content frame-by-frame or via sampling to compute quantitative metric values, returning a detailed report object containing metric names and their numeric results.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "The filepath or URL of the video to analyze. Supports local paths and common streaming URLs.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names to compute, e.g., ['frameRate', 'compressionArtifacts', 'resolutionConsistency'].", + "required": true, + "defaultValue": "[\"frameRate\"]" + }, + { + "name": "sampleFrameRate", + "type": "number", + "description": "Sampling rate in frames per second to analyze. Higher rates mean more detailed analysis but longer processing.", + "required": false, + "defaultValue": "1" + }, + { + "name": "maxDuration", + "type": "number", + "description": "Maximum duration in seconds of video to analyze from start. Limits processing time.", + "required": false, + "defaultValue": "60" + }, + { + "name": "verbose", + "type": "boolean", + "description": "If true, includes detailed intermediate data and logs in the output report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Analysis report containing requested video metrics as key-value pairs and optionally verbose details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quantitatively evaluate the quality or performance aspects of a video file or stream for diagnostics, quality control, or optimization purposes, such as checking frame stability, artifact presence, or resolution consistency.", + "limitations": "Cannot modify video content, handle encrypted streams, or analyze audio metrics. Results depend on video format compatibility and sample rate chosen; analysis time may be long for high-resolution or very long videos.", + "examples": [ + "Analyze the frame rate and compression artifacts of a local MP4 file.", + "Check resolution consistency and motion smoothness in a live stream URL, with verbose output.", + "Evaluate first 30 seconds of a video for frame rate stability only." + ] + }, + "tags": [ + "video", + "analysis", + "quality", + "metrics", + "performance" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"/videos/sample.mp4\",\"metrics\":[\"frameRate\",\"compressionArtifacts\"],\"sampleFrameRate\":2}", + "description": "Analyze frame rate and compression artifacts at 2 FPS sampling from a local MP4 file." + }, + { + "inputJson": "{\"videoSource\":\"https://example.com/live/stream.m3u8\",\"metrics\":[\"resolutionConsistency\",\"motionSmoothness\"],\"maxDuration\":30,\"verbose\":true}", + "description": "Analyze resolution consistency and motion smoothness for first 30 seconds of a live stream with verbose details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "video-processing.analyzeNotification", + "description": "This tool accepts a video file and analyzes on-screen notifications or pop-up alerts appearing within the video. It performs detection of notification elements, extracts text content, timestamps, and notification duration, and outputs a structured summary describing each detected notification in the video timeline.", + "category": "video-processing", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Path or URL to the video file to analyze for notifications.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationTypes", + "type": "array", + "description": "List of notification categories to detect, e.g., ['toast','alert','banner']. Empty to detect all.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minNotificationDuration", + "type": "number", + "description": "Minimum duration in seconds for a notification to be considered valid.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "language", + "type": "string", + "description": "Language code to assist text extraction from notifications (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxNotifications", + "type": "number", + "description": "Maximum number of notifications to return; if zero, returns all detections.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array 'notifications' of detected notification details including timestamp, duration, type, and extracted text content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to identify and understand pop-up notification messages embedded in video content, such as UI testing videos or recorded user sessions, to extract their timing and textual information for further analysis or indexing.", + "limitations": "This tool cannot guarantee 100% accuracy in text extraction from notifications, especially if video quality is poor or notifications have complex graphics. It does not interpret the semantic meaning beyond text extraction and timing.", + "examples": [ + "Analyze the notifications showing up in this app demo video to summarize all alert messages with timestamps.", + "Extract all toast notification texts appearing in this user interaction recording video.", + "Find and list banner notifications longer than 2 seconds in this tutorial video." + ] + }, + "tags": [ + "video", + "notification", + "analysis", + "text-extraction", + "UI-testing", + "pop-up", + "alert-detection" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/demoAppSession.mp4\",\"notificationTypes\":[\"toast\",\"alert\"],\"minNotificationDuration\":0.7,\"language\":\"en\",\"maxNotifications\":10}", + "description": "Analyze a demo app session video to extract toast and alert notifications lasting at least 0.7 seconds, returning up to 10 notifications." + }, + { + "inputJson": "{\"videoFilePath\":\"https://example.com/tutorial.mp4\",\"notificationTypes\":[],\"minNotificationDuration\":1,\"language\":\"en\",\"maxNotifications\":0}", + "description": "Detect all notifications in an online tutorial video that last at least 1 second, returning all detections." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "video-processing.analyzeCSV", + "description": "This tool accepts a CSV file containing time-stamped video analytics data such as object detections, scene changes, or frame metadata. It processes and analyzes this CSV to generate summary statistics, detect patterns, and extract key insights related to the video's visual content, producing a structured analysis report.", + "category": "video-processing", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV data as a string to be analyzed, including headers and records.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampColumn", + "type": "string", + "description": "The name of the CSV column representing time codes or frame numbers.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform, e.g., 'objectCount', 'sceneChanges', or 'motionIntensity'.", + "required": true, + "defaultValue": "" + }, + { + "name": "filterColumns", + "type": "array", + "description": "Optional list of columns to include in the analysis for focused processing.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "aggregationIntervalSeconds", + "type": "number", + "description": "Time interval in seconds to aggregate statistics (e.g., per minute).", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to generate data for charts summarizing the analysis results.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics, detected events, and optionally chart data representing the analysis results from the CSV input." + }, + "aiAgent": { + "useCase": "Use this tool when you have exported video metadata or analytics in CSV format (e.g., object detections or scene change logs) and need to automatically derive insights, summaries, or statistics that help understand video content trends or quality over time.", + "limitations": "This tool cannot process raw video files or extract data from video streams—it only analyzes already prepared CSV data related to video content. It also does not perform complex machine learning model training or video frame prediction.", + "examples": [ + "Analyze a CSV with timestamped object counts to summarize how frequently objects appear over time.", + "Detect scene change events from a CSV log and produce a timeline of scenes with duration statistics.", + "Generate motion intensity summaries per minute using frame metadata CSV to identify high-activity segments." + ] + }, + "tags": [ + "video-processing", + "analysis", + "CSV", + "video-metadata", + "analytics", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"timestamp,objectCount,sceneChange\\n0,5,false\\n10,8,true\\n20,7,false\",\"timestampColumn\":\"timestamp\",\"analysisType\":\"objectCount\",\"filterColumns\":[\"objectCount\"],\"aggregationIntervalSeconds\":10,\"includeCharts\":true}", + "description": "Analyze object counts every 10 seconds from a CSV with timestamps and detect patterns." + }, + { + "inputJson": "{\"csvContent\":\"timecode,motionLevel\\n0,0.2\\n15,0.6\\n30,0.9\",\"timestampColumn\":\"timecode\",\"analysisType\":\"motionIntensity\",\"aggregationIntervalSeconds\":15,\"includeCharts\":false}", + "description": "Summarize motion intensity per 15 seconds using motion level values logged in CSV." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "video-processing.renderFile", + "description": "This tool renders a video file by applying optional encoding parameters, resolution adjustments, and optionally adding watermarks or subtitles. It accepts input video file path and outputs a processed video file at the specified output path ready for playback or distribution.", + "category": "video-processing", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "Path to the source video file to be rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "Destination path for the rendered output video file.", + "required": true, + "defaultValue": "" + }, + { + "name": "codec", + "type": "string", + "description": "Video codec to use for encoding the output (e.g., h264, hevc).", + "required": false, + "defaultValue": "h264" + }, + { + "name": "bitrate", + "type": "number", + "description": "Target video bitrate in kbps to control output quality and size.", + "required": false, + "defaultValue": "2500" + }, + { + "name": "resolution", + "type": "string", + "description": "Output video resolution in widthxheight format (e.g., 1920x1080).", + "required": false, + "defaultValue": "" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frame rate (fps) for the output video. If omitted, input frame rate is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "addWatermark", + "type": "boolean", + "description": "Whether to overlay a watermark image on the video.", + "required": false, + "defaultValue": "false" + }, + { + "name": "watermarkPath", + "type": "string", + "description": "File path to the watermark image to overlay if addWatermark is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "subtitlesPath", + "type": "string", + "description": "Path to subtitle file to embed in the output video, if any.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the outputFilePath confirming successful rendering and metadata like output file size and duration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to render or transcode input video files to specified output formats, resolutions, or encoding parameters, optionally adding watermarks or subtitles for distribution or playback purposes. Ideal for generating delivery-ready files from raw or intermediate footage.", + "limitations": "Cannot perform advanced video editing such as cutting, filtering, or color grading beyond basic encoding parameters; does not support streaming or live video processing.", + "examples": [ + "Render a raw mp4 to 1080p h264 with watermark overlay.", + "Transcode a video to HEVC codec with lower bitrate for mobile streaming.", + "Add subtitles from an SRT file to a video and output a new file." + ] + }, + "tags": [ + "video", + "rendering", + "encoding", + "transcoding", + "watermark", + "subtitles" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/videos/raw/interview.mov\",\"outputFilePath\":\"/videos/processed/interview_1080p.mp4\",\"codec\":\"h264\",\"bitrate\":4000,\"resolution\":\"1920x1080\",\"frameRate\":30,\"addWatermark\":true,\"watermarkPath\":\"/images/watermark.png\",\"subtitlesPath\":\"\"}", + "description": "Render an interview video to 1080p h264 MP4 with watermark overlay at 4000 kbps bitrate." + }, + { + "inputJson": "{\"inputFilePath\":\"/videos/raw/lecture.mp4\",\"outputFilePath\":\"/videos/processed/lecture_hevc.mp4\",\"codec\":\"hevc\",\"bitrate\":1500,\"resolution\":\"1280x720\",\"frameRate\":30,\"addWatermark\":false,\"watermarkPath\":\"\",\"subtitlesPath\":\"/subtitles/lecture.srt\"}", + "description": "Transcode a lecture video to HEVC codec with 720p resolution and embedded subtitles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "video-processing.analyzeLead", + "description": "Analyzes recorded video calls or presentations to identify and extract potential business leads by detecting key verbal and visual cues such as contact info mentions, interest indicators, and product inquiries. Accepts video files, processes audio and visual data, and outputs structured lead summaries including timestamps, confidence scores, and detected contact details.", + "category": "video-processing", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Path or URL to the input video file for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the spoken content to optimize detection accuracy (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "minConfidence", + "type": "number", + "description": "Minimum confidence threshold (0-1) for detected leads to be included in output.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeVisualCues", + "type": "boolean", + "description": "Flag to enable extraction of visual lead indicators such as shown business cards or on-screen text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLeads", + "type": "number", + "description": "Maximum number of leads to extract from the video.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Structured summary of identified leads including contact details, timestamps in the video, type of lead indicators detected, and confidence scores." + }, + "aiAgent": { + "useCase": "Use this tool when processing sales or customer interaction videos to automatically identify potential leads by analyzing speech for relevant keywords, extracting contact information, and recognizing visual cues. It helps sales teams efficiently gather leads from recorded sessions without manual reviewing.", + "limitations": "Cannot guarantee perfect lead detection—may miss leads if audio is unclear or contact info is not explicitly present. Not designed to perform sentiment analysis or general video content summarization.", + "examples": [ + "Extract leads from a one-hour sales webinar recording.", + "Identify contact information and interest levels mentioned in a customer support call video.", + "Detect and list business card information shown on screen during video presentations." + ] + }, + "tags": [ + "video-analysis", + "lead-generation", + "sales", + "business", + "contact-extraction", + "audio-processing", + "visual-recognition" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/quarterly_sales_call.mp4\",\"language\":\"en\",\"minConfidence\":0.75,\"includeVisualCues\":true,\"maxLeads\":5}", + "description": "Analyze quarterly sales call video to extract up to 5 high-confidence business leads including spoken and visual cues." + }, + { + "inputJson": "{\"videoFilePath\":\"https://cdn.example.com/videos/client_presentation.mov\",\"language\":\"en\",\"minConfidence\":0.85,\"includeVisualCues\":false,\"maxLeads\":3}", + "description": "Analyze an online client presentation video focusing on audio content alone, extracting top 3 lead mentions with high confidence." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "video-processing.downloadReport", + "description": "Downloads a detailed report for a specified video file including metadata, processing results, and analysis summaries. Accepts video identifier or file path and generates a downloadable document with insights about video properties, detected objects, and processing logs.", + "category": "video-processing", + "parameters": [ + { + "name": "videoId", + "type": "string", + "description": "Unique identifier or path of the video file for which the report will be generated and downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired format of the downloaded report, e.g., 'pdf' or 'docx'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include video metadata in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeAnalysis", + "type": "boolean", + "description": "Whether to include video analysis results (e.g., object detection, scene summaries) in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "downloadPath", + "type": "string", + "description": "Local file system path where the report will be saved. If not provided, defaults to current directory.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "DownloadResult object containing success status, file path, and optional error message." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to provide users or other systems with a comprehensive report document summarizing video file characteristics, processing outcomes, or analytical insights. Especially useful for video review, auditing, or archival purposes requiring downloadable documentation.", + "limitations": "Does not generate video content or perform new video processing; only downloads reports based on existing processed data. Cannot handle live video streams or direct URL downloads.", + "examples": [ + "Download a PDF report with full metadata and analysis for video ID 'vid12345'.", + "Download a DOCX report containing only metadata for the video at '/videos/clip1.mp4'.", + "Save the report locally to a specified folder with analysis included." + ] + }, + "tags": [ + "video", + "report", + "download", + "metadata", + "analysis", + "document", + "export" + ], + "examples": [ + { + "inputJson": "{\"videoId\":\"vid12345\",\"reportFormat\":\"pdf\",\"includeMetadata\":true,\"includeAnalysis\":true}", + "description": "Download a complete PDF report with metadata and analysis for video ID 'vid12345'." + }, + { + "inputJson": "{\"videoId\":\"/videos/clip1.mp4\",\"reportFormat\":\"docx\",\"includeMetadata\":true,\"includeAnalysis\":false}", + "description": "Download a DOCX report including only metadata for the local video file '/videos/clip1.mp4'." + }, + { + "inputJson": "{\"videoId\":\"vid67890\",\"reportFormat\":\"pdf\",\"includeMetadata\":false,\"includeAnalysis\":true,\"downloadPath\":\"/user/reports\"}", + "description": "Download a PDF report with analysis only for 'vid67890', saving it to the user-specified directory '/user/reports'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "video-processing.uploadReport", + "description": "Uploads a video processing report document to a specified cloud storage or project management platform. Accepts the report in PDF or DOCX format, along with metadata such as project name and uploader info. Processes by validating and transferring the report, returning upload status and accessible URL.", + "category": "video-processing", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path to the report document file to upload (PDF or DOCX).", + "required": true, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "Identifier of the project or workspace to associate the report with.", + "required": true, + "defaultValue": "" + }, + { + "name": "uploaderName", + "type": "string", + "description": "Name of the person or system uploading the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional key-value metadata to tag the report with (e.g., tags, description).", + "required": false, + "defaultValue": "" + }, + { + "name": "destination", + "type": "string", + "description": "Target storage or platform (e.g., cloud folder or PM tool) to upload the report.", + "required": false, + "defaultValue": "default" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, message, and link to the uploaded report." + }, + "aiAgent": { + "useCase": "Use this tool when needing to submit completed video analysis or editing reports to centralized storage or collaboration platforms to ensure proper documentation and sharing among team members. Useful for automation workflows that generate and distribute post-processing reports.", + "limitations": "Does not generate reports or interpret contents; only uploads existing documents. Requires correct file path and valid access credentials to destination storage.", + "examples": [ + "Upload the final video editing report for project 'Alpha' to the shared cloud folder.", + "Submit today's video processing quality control report including uploader name and tags.", + "Send a DOCX report document to the project management tool for review." + ] + }, + "tags": [ + "upload", + "video-processing", + "report", + "document", + "cloud-storage", + "project-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/reports/video_analysis_0424.pdf\",\"projectId\":\"projAlpha123\",\"uploaderName\":\"Alice\",\"metadata\":{\"tags\":[\"urgent\",\"QC\"],\"description\":\"April 24 video processing analysis.\"},\"destination\":\"cloudStorage\"}", + "description": "Upload a PDF video analysis report with metadata tags to cloud storage for project Alpha by Alice." + }, + { + "inputJson": "{\"filePath\":\"./reports/edit_summary.docx\",\"projectId\":\"projBeta456\"}", + "description": "Upload a DOCX summary report for project Beta without extra metadata or uploader name, using default destination." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "video-processing.formatReport", + "description": "This tool accepts a raw video analysis report as input and formats it into a structured, readable document. It processes raw data including timestamps, detected events, metadata, and analysis results, applying formatting templates and styles. The output is a clean, well-organized report in HTML or PDF format suitable for presentation or archival.", + "category": "video-processing", + "parameters": [ + { + "name": "rawReportData", + "type": "object", + "description": "The raw, unformatted video analysis report data including events, timestamps, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "The output format type for the report, such as 'html' or 'pdf'.", + "required": true, + "defaultValue": "html" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summarized overview section in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "templateStyle", + "type": "string", + "description": "The name of the formatting template style to apply (e.g., 'professional', 'simple').", + "required": false, + "defaultValue": "professional" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the report text, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report content as a string, and metadata such as contentType (e.g., 'text/html', 'application/pdf')." + }, + "aiAgent": { + "useCase": "Use this tool to generate clean, presentation-ready reports from raw video analysis data. It is ideal when an AI agent needs to deliver structured insights from video processing results in user-friendly formats like HTML or PDF, supporting customization of style and language.", + "limitations": "It does not analyze or extract data from video itself; it only formats pre-existing analysis reports. It may not support arbitrary report data structures outside its expected schema.", + "examples": [ + "Generate a PDF report summarizing detected events from the video analysis.", + "Format the raw event log into a professional HTML report with a summary included.", + "Create a simple style English report in HTML format from the analysis data." + ] + }, + "tags": [ + "video-processing", + "report", + "formatting", + "html", + "pdf", + "document", + "video-analysis" + ], + "examples": [ + { + "inputJson": "{\"rawReportData\":{\"events\":[{\"time\":\"00:00:10\",\"type\":\"motion\",\"details\":\"Motion detected in zone 3\"}],\"metadata\":{\"videoName\":\"LobbyCam1\",\"duration\":3600}},\"formatType\":\"pdf\",\"includeSummary\":true,\"templateStyle\":\"professional\",\"language\":\"en\"}", + "description": "Format raw video event data into a detailed PDF report using a professional template including a summary." + }, + { + "inputJson": "{\"rawReportData\":{\"events\":[{\"time\":\"00:05:20\",\"type\":\"sound\",\"details\":\"Loud noise detected\"}],\"metadata\":{\"videoName\":\"WarehouseCam2\",\"duration\":1800}},\"formatType\":\"html\",\"includeSummary\":false,\"templateStyle\":\"simple\",\"language\":\"en\"}", + "description": "Generate a simple HTML report without summary from sound event detection data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "video-processing.composeReport", + "description": "Generates a comprehensive video analysis report by processing a video file with optional metadata and analytic parameters. Accepts video URL or file path, extracts key metrics such as duration, resolution, frame rate, detected objects, and summarized content, then outputs a structured textual report in JSON or PDF format.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "URL or local file path of the video to analyze and report on.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to extract and include video metadata like codec, bitrate, and format in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectObjects", + "type": "boolean", + "description": "Enable detection of objects within the video frames to include in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate length of the video content summary in number of sentences.", + "required": false, + "defaultValue": "5" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated report, either 'json' for structured data or 'pdf' for a formatted document.", + "required": false, + "defaultValue": "json" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') to use for the textual report content and summaries.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed report content and metadata, typically including video details, object detection results, content summaries, and optionally the report file path or URL." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze video content for metadata, object detection, and generate a human-readable or structured report summarizing the video analysis. Useful in surveillance, content review, media analysis, and archival documentation.", + "limitations": "Cannot edit videos or perform video transformations; limited by accuracy of object detection models; summary quality depends on video content complexity; requires accessible video sources.", + "examples": [ + "Generate a PDF report summarizing a security camera video with detected objects and metadata included.", + "Create a JSON report for a marketing video describing its length, frame rate, and a brief content summary in Spanish.", + "Produce a brief English text summary report from a video retrieved by URL without object detection." + ] + }, + "tags": [ + "video-processing", + "reporting", + "analysis", + "object-detection", + "metadata", + "summary", + "pdf", + "json" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/meeting.mp4\",\"includeMetadata\":true,\"detectObjects\":true,\"summaryLength\":7,\"outputFormat\":\"pdf\",\"language\":\"en\"}", + "description": "Compose a PDF report for an online meeting video including metadata and detected objects with a 7-sentence summary in English." + }, + { + "inputJson": "{\"videoSource\":\"/local/videos/trailer.mov\",\"includeMetadata\":false,\"detectObjects\":false,\"summaryLength\":3,\"outputFormat\":\"json\",\"language\":\"en\"}", + "description": "Generate a concise JSON report with a 3-sentence summary of a local movie trailer video without metadata or object detection." + }, + { + "inputJson": "{\"videoSource\":\"https://media.example.org/sports/highlight.mp4\",\"includeMetadata\":true,\"detectObjects\":true,\"summaryLength\":5,\"outputFormat\":\"json\",\"language\":\"es\"}", + "description": "Create a JSON report in Spanish for a sports highlight video with metadata and object detection enabled, including a 5-sentence content summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "video-processing.draftDocument", + "description": "Generates a structured draft document summarizing the contents and metadata of an input video file. Accepts video file path or URL, analyses key metadata, extracts textual elements like subtitles if available, and produces a textual draft document including summary, timestamps highlights, and embedded metadata for review or documentation purposes.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "Path or URL to the input video file to analyze and summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to extract and include subtitles or closed captions in the draft document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate length of the summary in number of sentences.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps for key video segments or events in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') to use for summary and extraction, if applicable.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated draft document as plain text, alongside metadata such as video duration, codec information, and extracted subtitles if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a textual draft document summarizing the contents and metadata of a video file, such as preparing documentation, content review notes, or video metadata reports. It helps in quickly obtaining structured insights without manual video viewing.", + "limitations": "Cannot generate detailed video transcripts beyond embedded subtitles; does not perform deep video content analysis such as scene detection or sentiment analysis; quality depends on availability of subtitles/captions in the video.", + "examples": [ + "Generate a summary document for a marketing video located at a given URL.", + "Create a draft document with subtitles extracted from a training video file path.", + "Produce a concise metadata and content summary for an uploaded vlog video." + ] + }, + "tags": [ + "video", + "document", + "summary", + "metadata", + "subtitles", + "drafting", + "processing" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/sample.mp4\",\"includeSubtitles\":true,\"summaryLength\":4,\"includeTimestamps\":true,\"language\":\"en\"}", + "description": "Generate a draft document with subtitles and timestamps for a sample video from URL." + }, + { + "inputJson": "{\"videoSource\":\"/user/videos/tutorial.mov\",\"includeSubtitles\":false,\"summaryLength\":6,\"includeTimestamps\":true,\"language\":\"en\"}", + "description": "Create a summary document for a local tutorial video without subtitles, including timestamps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "video-processing.buildTest", + "description": "Generates automated test scripts for video processing workflows. Accepts video processing pipeline specifications or code snippets as input, analyzes processing steps, and outputs test code to verify video transformations or analysis functions produce expected results.", + "category": "video-processing", + "parameters": [ + { + "name": "pipelineCode", + "type": "string", + "description": "Source code or script defining the video processing pipeline to test.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Testing framework to generate tests for (e.g., jest, mocha).", + "required": false, + "defaultValue": "jest" + }, + { + "name": "expectedOutputs", + "type": "object", + "description": "Expected outputs and conditions to validate in the tests (e.g., output formats, frame properties).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to include edge case scenarios in the generated tests.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTestDuration", + "type": "number", + "description": "Maximum test execution time in seconds to avoid long-running tests.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test code as a string, along with metadata such as test count and warnings if any." + }, + "aiAgent": { + "useCase": "Use this tool to automatically create validation tests for complex video processing pipelines or code segments. It is useful when ensuring reliability of video editing/transformation code by generating repeatable tests that verify outputs and edge cases. It helps in continuous integration and minimizing manual test writing.", + "limitations": "Does not execute or validate video processing code itself; relies on provided specifications and expected outputs. Generated tests must be reviewed for completeness. Limited to common testing frameworks specified.", + "examples": [ + "Generate Jest tests for a video filter pipeline code snippet.", + "Create tests including edge cases for a video analysis script with expected output checks.", + "Build test scripts with a 20-second max duration for video transformation functions." + ] + }, + "tags": [ + "video", + "testing", + "automation", + "code-generation", + "pipeline", + "validation" + ], + "examples": [ + { + "inputJson": "{\"pipelineCode\":\"function brighten(video) { /*...*/ }\",\"testFramework\":\"jest\",\"expectedOutputs\":{\"brightnessLevel\":1.2},\"includeEdgeCases\":true,\"maxTestDuration\":30}", + "description": "Generate Jest test code for a video brighten function including edge cases, with a default max test duration." + }, + { + "inputJson": "{\"pipelineCode\":\"const filters = [blur, sharpen]; function process(video) { /* apply filters */ }\",\"testFramework\":\"mocha\",\"expectedOutputs\":{},\"includeEdgeCases\":false,\"maxTestDuration\":15}", + "description": "Build Mocha test suite for a multi-filter video pipeline without edge cases, limiting test duration to 15 seconds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "video-processing.formatFunction", + "description": "Formats a JavaScript or TypeScript video processing function source code to adhere to consistent style and readability rules. Accepts the function's source code as input and applies formatting such as indentation, spacing, line breaks, and consistent use of brackets. Returns the reformatted source code string preserving the function's original behavior.", + "category": "video-processing", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw source code of the video processing function to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed characters per line before inserting line breaks.", + "required": false, + "defaultValue": "80" + }, + { + "name": "insertFinalNewline", + "type": "boolean", + "description": "If true, ensures the formatted code ends with a newline character.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object with the formatted function source code as a string under 'formattedCode' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to normalize the formatting of a video-processing function’s source code for improved readability, maintainability, or before storing or sharing the code in a uniform style. It is ideal for AI agents assisting developers in cleaning up or standardizing code snippets related to video processing tasks.", + "limitations": "It does not check or fix semantic errors or logic bugs in the code. It only reformats the source code style. Code compatibility or runtime behavior is not altered or validated.", + "examples": [ + "Format a noisy video-enhancement function source to have uniform indentation and line breaks.", + "Standardize the formatting of a custom video filter function to 4-space indentation and lines not exceeding 100 characters.", + "Ensure a video transcoding function source ends with a newline character and uses tabs for indentation." + ] + }, + "tags": [ + "code-formatting", + "video-processing", + "javascript", + "typescript", + "source-code", + "readability" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function enhanceVideo(input) {const processed=process(input);return processed;}\",\"indentSize\":4,\"useTabs\":false,\"maxLineLength\":80,\"insertFinalNewline\":true}", + "description": "Format a simple video enhancement function using 4 spaces indentation, no tabs, max line length of 80 characters." + }, + { + "inputJson": "{\"sourceCode\":\"function transcode(input){return convert(input);} \",\"indentSize\":2,\"useTabs\":true,\"maxLineLength\":100,\"insertFinalNewline\":false}", + "description": "Format a transcoding function to use tab indentation, 2 spaces equivalent, no final newline." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "video-processing.buildDatabase", + "description": "Builds a structured database from video content by processing input video files or URLs to extract metadata, analyze scenes, detect objects, and index frames with timestamps and annotations. Produces a queryable JSON database summarizing video content and features for further analysis or retrieval.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSources", + "type": "array", + "description": "Array of video file paths or URLs to be processed into the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractMetadata", + "type": "boolean", + "description": "Flag indicating whether to extract technical video metadata (e.g., codec, resolution).", + "required": false, + "defaultValue": "true" + }, + { + "name": "sceneDetection", + "type": "boolean", + "description": "Flag to enable automatic detection and segmentation of scenes within the videos.", + "required": false, + "defaultValue": "true" + }, + { + "name": "objectDetection", + "type": "boolean", + "description": "Enable detection and labeling of objects appearing in the videos.", + "required": false, + "defaultValue": "true" + }, + { + "name": "frameSamplingRate", + "type": "number", + "description": "Number of frames per second to sample for analysis and indexing.", + "required": false, + "defaultValue": "1" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output database, e.g., 'json' or 'mongodb'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "databaseName", + "type": "string", + "description": "Name identifier for the generated database instance.", + "required": false, + "defaultValue": "videoContentDB" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the database summary including video entries, metadata, scene segments, detected objects, and index structure for retrieval." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a searchable, structured database from raw video footage or streams. It's ideal for video content management, archiving, or analysis contexts that require metadata extraction, scene segmentation, and object indexing for efficient retrieval or deeper video analytics.", + "limitations": "Does not perform full video transcription or audio content extraction. The accuracy of scene and object detection depends on the input video quality and detection models used. Output database is designed for lightweight retrieval, not high-performance real-time querying.", + "examples": [ + "Build a database from a list of security camera video files to index detected objects and scene changes.", + "Generate a JSON database summarizing scenes and objects in marketing videos for quick content searching.", + "Create an annotated video content database from URLs for archival and metadata analysis purposes." + ] + }, + "tags": [ + "video-processing", + "database", + "metadata-extraction", + "scene-detection", + "object-detection", + "video-analytics" + ], + "examples": [ + { + "inputJson": "{\"videoSources\":[\"/videos/camera1_2023-05-01.mp4\",\"/videos/camera2_2023-05-01.mp4\"],\"extractMetadata\":true,\"sceneDetection\":true,\"objectDetection\":true,\"frameSamplingRate\":2,\"outputFormat\":\"json\",\"databaseName\":\"securityCamDB\"}", + "description": "Build a video content database from multiple security camera videos extracting metadata, scenes, and objects with 2fps sampling." + }, + { + "inputJson": "{\"videoSources\":[\"https://example.com/marketing_video.mp4\"],\"extractMetadata\":true,\"sceneDetection\":true,\"objectDetection\":false,\"frameSamplingRate\":1,\"outputFormat\":\"json\",\"databaseName\":\"marketingVideosDB\"}", + "description": "Create a database from an online marketing video focusing on scene detection without object detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "video-processing.draftEmail", + "description": "This tool accepts a video file URL or transcript and drafts a concise, professional email summarizing key video content. It analyzes the video or its transcript for highlights, extracts main messages, and generates email text for communication or reporting purposes. Output is a well-structured email draft as plain text.", + "category": "video-processing", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "URL or local path to the video file to be analyzed. Required if transcript is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "transcript", + "type": "string", + "description": "Full transcript text of the video to be used for drafting the email. Required if videoUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "emailTone", + "type": "string", + "description": "Tone of the drafted email, e.g., formal, informal, neutral.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the drafted email in words.", + "required": false, + "defaultValue": "300" + }, + { + "name": "recipientRole", + "type": "string", + "description": "Role of the email recipient to tailor tone and content, e.g., manager, client, colleague.", + "required": false, + "defaultValue": "colleague" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted email text with subject and body fields." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a professional email summarizing content of a video, especially when quick communication or reporting is needed without manually reviewing the video. Useful for meeting recaps, client updates, or sharing highlights.", + "limitations": "Cannot watch or interpret video content beyond transcript or basic metadata. Email tone and drafting are based on language analysis; may not capture nuanced context. Requires valid video URL or transcript text.", + "examples": [ + "Draft an email summarizing the company quarterly results video for our manager.", + "Create a client update email based on the product demo video transcript.", + "Generate a colleague email summarizing key points from the training video." + ] + }, + "tags": [ + "video", + "email drafting", + "communication", + "summary", + "video transcript", + "professional email" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/meeting.mp4\",\"emailTone\":\"formal\",\"maxLength\":250,\"recipientRole\":\"manager\"}", + "description": "Generate a formal email summary of a meeting video for the manager." + }, + { + "inputJson": "{\"transcript\":\"Today we will cover the new product features and release dates...\",\"emailTone\":\"neutral\",\"maxLength\":200,\"recipientRole\":\"client\"}", + "description": "Draft a neutral-toned client update email based on provided transcript." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "video-processing.buildCommit", + "description": "This tool takes staged video-editing project files or changes as input and generates a versioned commit object representing the current state of the video project timeline, assets, and metadata. It outputs a structured commit record suitable for version control and collaboration in video editing workflows.", + "category": "video-processing", + "parameters": [ + { + "name": "projectId", + "type": "string", + "description": "Unique identifier of the video editing project to commit changes for.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name or identifier of the user creating the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Commit message describing the changes made in this commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "stagedChanges", + "type": "object", + "description": "Object detailing the collection of video assets, timeline edits, and metadata changes staged for commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp representing the commit creation time.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A commit object including a unique commit ID, project ID, author, commit message, timestamp, and a snapshot of the staged changes representing the video project state." + }, + "aiAgent": { + "useCase": "Use this tool when managing version control for video editing projects, to create a structured commit representing a set of changes made to a video project timeline, assets, or metadata. It is particularly useful in collaborative video production workflows requiring systematic change tracking and rollback capabilities.", + "limitations": "Does not perform video rendering, asset encoding, or automated conflict resolution between commits. It only creates structured commit records from provided staged changes.", + "examples": [ + "Create a commit for project 'proj123' with updated timeline edits and asset changes by user 'alice' with message 'Added new intro clip and transitions'.", + "Build a commit object to snapshot current staged video project changes with an optional commit message for historical tracking." + ] + }, + "tags": [ + "video", + "version-control", + "commit", + "video-editing", + "project-management", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"projectId\":\"proj123\",\"author\":\"alice\",\"message\":\"Updated intro sequence with new clips\",\"stagedChanges\":{\"timelineEdits\":[{\"clipId\":\"clip789\",\"start\":0,\"end\":10}],\"assetUpdates\":[{\"assetId\":\"asset101\",\"type\":\"video\",\"path\":\"/media/clip789.mp4\"}],\"metadata\":{\"resolution\":\"1080p\"}},\"timestamp\":\"2024-06-01T12:00:00Z\"}", + "description": "Commit changes to a video project including timeline edits, updated assets, and metadata by user Alice." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "video-processing.generateParagraph", + "description": "Generates a descriptive paragraph summarizing the content of a video segment based on extracted video metadata, captions, and optionally provided key points. Accepts video file path or URL and time frame, and outputs a human-readable summary paragraph about that segment.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "Path or URL to the video file to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "Start time in seconds for the video segment to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "number", + "description": "End time in seconds for the video segment to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "Optional array of key points or keywords to guide the paragraph generation (e.g., ['demonstration', 'tutorial', 'error handling']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') for the generated paragraph.", + "required": false, + "defaultValue": "\"en\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated descriptive paragraph summarizing the given video segment." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to create a textual summary or overview for a particular segment of a video to facilitate indexing, content review, or assist users who want quick insights without watching the segment. It supports applications like video content management, accessibility, and metadata generation.", + "limitations": "The tool cannot extract meaningful context from videos without captions or metadata and may generate less accurate summaries if the provided segment includes complex scenes or lacks audio captions.", + "examples": [ + "Generate a summary paragraph for seconds 30-60 of a tutorial video at given URL.", + "Create a descriptive paragraph about the main points covered in the first minute of a recorded lecture video file.", + "Produce a short overview paragraph describing a product demo segment from 10 to 40 seconds, emphasizing 'user interface' and 'features'." + ] + }, + "tags": [ + "video", + "summary", + "caption-based", + "content-analysis", + "metadata", + "description" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/tutorial.mp4\",\"startTime\":30,\"endTime\":60,\"language\":\"en\"}", + "description": "Generate a summary paragraph for seconds 30 to 60 of a tutorial video at the provided URL." + }, + { + "inputJson": "{\"videoSource\":\"/user/videos/lecture1.mp4\",\"startTime\":0,\"endTime\":60}", + "description": "Generate a descriptive paragraph for the first 60 seconds of a local lecture video file." + }, + { + "inputJson": "{\"videoSource\":\"https://example.com/product_demo.mp4\",\"startTime\":10,\"endTime\":40,\"keyPoints\":[\"user interface\",\"features\"]}", + "description": "Generate a summary paragraph emphasizing user interface and features in the product demo segment between 10 and 40 seconds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "video-processing.generateSentence", + "description": "Generates a natural language sentence describing a specific scene or segment in a video based on provided video metadata or analyzed visual content. Input can include video timestamps, detected objects, activities, or key scenes. Output is a concise descriptive sentence suitable for captions or summaries.", + "category": "video-processing", + "parameters": [ + { + "name": "videoId", + "type": "string", + "description": "Unique identifier or URL of the video to analyze and generate sentence for.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "number", + "description": "Specific timepoint in seconds into the video to describe the scene.", + "required": false, + "defaultValue": "0" + }, + { + "name": "detectedObjects", + "type": "array", + "description": "List of objects detected in the scene (optional) to tailor generated sentence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "activities", + "type": "array", + "description": "List of activities or actions detected in the scene (optional) to enrich the sentence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output sentence (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated descriptive sentence and metadata about input parameters used." + }, + "aiAgent": { + "useCase": "This tool should be used when a natural language summary or description of a particular video segment is needed, such as generating captions, summarizing scenes for indexing, or facilitating video search. It helps convert visual or metadata info into human-readable text.", + "limitations": "Cannot generate sentences without meaningful input data. The quality depends heavily on the accuracy of detected objects and activities. It does not perform actual video analysis but relies on input metadata.", + "examples": [ + "Generate a descriptive sentence for the scene at 120 seconds in the video with detected objects ['dog','ball'] and activity ['playing'].", + "Create a caption in Spanish for a scene featuring a person cooking at timestamp 45.", + "Describe the video scene with no explicit metadata; tool will generate a generic sentence if no detected objects or activities are provided." + ] + }, + "tags": [ + "video", + "captioning", + "description", + "scene-summary", + "natural-language", + "video-analysis" + ], + "examples": [ + { + "inputJson": "{\"videoId\":\"abc123\",\"timestamp\":120,\"detectedObjects\":[\"dog\",\"ball\"],\"activities\":[\"playing\"],\"language\":\"en\"}", + "description": "Generate an English sentence describing a scene at 2 minutes featuring a dog playing with a ball." + }, + { + "inputJson": "{\"videoId\":\"xyz789\",\"timestamp\":45,\"detectedObjects\":[\"person\",\"stove\"],\"activities\":[\"cooking\"],\"language\":\"es\"}", + "description": "Generate a Spanish sentence describing a cooking scene at 45 seconds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "video-processing.generateEvent", + "description": "Analyzes a video stream or file to detect and generate custom events based on specific visual or motion criteria. Accepts video input along with event definitions describing triggers such as motion detection, object appearance, or scene changes, and outputs a structured list of timestamped events for analytics or editing use.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "Path or URL to the input video file or stream to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDefinitions", + "type": "array", + "description": "List of event definitions specifying triggers and criteria to detect (e.g., motion, object presence).", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionSensitivity", + "type": "number", + "description": "Sensitivity level for event detection algorithms, from 0 (low) to 1 (high).", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "maxEvents", + "type": "number", + "description": "Maximum number of events to generate before stopping analysis. If zero, no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for output events, such as JSON or XML.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of detected events each with a timestamp, event type, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when automated detection and extraction of specific video events is needed, such as detecting motion, object appearances, or scene changes for analytics, content tagging, or video editing workflows. It is suited for scenarios where manual event annotation is impractical and programmatic event generation is required.", + "limitations": "Cannot interpret events beyond visual/motion cues; complex semantic understanding may require complementary tools. Performance depends on video quality and event definition precision.", + "examples": [ + "Generate events detecting motion above a threshold in a security video.", + "Identify all timestamps where a specific object appears using pre-defined visual descriptors.", + "Create scene-change events for long video footage to speed up editing workflows." + ] + }, + "tags": [ + "video", + "event-detection", + "analytics", + "motion-detection", + "scene-change", + "object-detection", + "video-analysis" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/video.mp4\",\"eventDefinitions\":[{\"type\":\"motion\",\"threshold\":0.7}],\"detectionSensitivity\":0.8,\"maxEvents\":10,\"outputFormat\":\"JSON\"}", + "description": "Detect up to 10 motion events with high sensitivity in the provided video URL." + }, + { + "inputJson": "{\"videoSource\":\"/videos/sample.mp4\",\"eventDefinitions\":[{\"type\":\"objectAppearance\",\"objectClass\":\"person\"}],\"detectionSensitivity\":0.6}", + "description": "Generate events for all appearances of a person in the local video file with moderate sensitivity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "video-processing.generateMetric", + "description": "Generates detailed analytics metrics from video files or streams. Accepts video input sources and parameters specifying the type of metric (e.g., frame rate, motion intensity, color histograms). Processes the input to compute quantitative metrics which are returned as structured data for analysis or visualization.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "The path or URL to the input video file or stream to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "Specifies the type of metric to generate, such as 'frameRate', 'motionIntensity', 'colorHistogram', or 'bitrate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "Optional start time in seconds to begin analysis within the video.", + "required": false, + "defaultValue": "0" + }, + { + "name": "duration", + "type": "number", + "description": "Optional duration in seconds from startTime to limit analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "resolution", + "type": "string", + "description": "Optional resolution filter for metric calculation, e.g., '1920x1080'.", + "required": false, + "defaultValue": "" + }, + { + "name": "frameSamplingRate", + "type": "number", + "description": "Optional frame sampling rate (frames per second) to reduce processing load.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the requested video metric data, with fields varying depending on metricType, including numerical values, arrays, or time-series data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract quantitative video analytics metrics such as frame rate stability, motion intensity over time, color distribution histograms, or bitrate information from a video source. Helpful for quality assessment, video content analysis, or monitoring changes in video characteristics over time.", + "limitations": "Cannot edit or modify the video content; does not perform subjective content analysis like object recognition or scene classification. Performance depends on video length and parameter settings; very long videos may require optimized sampling.", + "examples": [ + "Generate a frame rate metric for a 10-minute video segment starting at 1 min.", + "Analyze motion intensity with a frame sampling rate of 2 fps on a video stream.", + "Calculate the color histogram of a 1920x1080 video file over its entire length." + ] + }, + "tags": [ + "video-processing", + "analytics", + "metric-generation", + "frame-analysis", + "quality-assessment" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"http://example.com/videos/sample.mp4\",\"metricType\":\"frameRate\",\"startTime\":60,\"duration\":600}", + "description": "Generate frame rate metric from a video segment starting at 60 seconds for 10 minutes." + }, + { + "inputJson": "{\"videoSource\":\"/local/path/to/video.mov\",\"metricType\":\"motionIntensity\",\"frameSamplingRate\":2}", + "description": "Compute motion intensity metric sampling frames at 2 fps from a local video file." + }, + { + "inputJson": "{\"videoSource\":\"rtsp://camera/stream\",\"metricType\":\"colorHistogram\",\"resolution\":\"1920x1080\"}", + "description": "Generate color histogram metric on a live video stream at specified resolution." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "video-processing.generateCSV", + "description": "Generates a CSV file summarizing analyzed data from a video input. The tool accepts a video file and optional parameters specifying analysis type and time range, then processes the video to extract frame or segment metadata (e.g., timestamps, detected objects, motion metrics) and outputs this structured data as a CSV string.", + "category": "video-processing", + "parameters": [ + { + "name": "videoURL", + "type": "string", + "description": "URL or path to the video file to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform (e.g., 'objectDetection', 'motionAnalysis', 'frameBrightness')", + "required": true, + "defaultValue": "objectDetection" + }, + { + "name": "startTime", + "type": "number", + "description": "Start time in seconds to begin analysis", + "required": false, + "defaultValue": "0" + }, + { + "name": "endTime", + "type": "number", + "description": "End time in seconds to stop analysis; defaults to video length if omitted", + "required": false, + "defaultValue": "" + }, + { + "name": "frameInterval", + "type": "number", + "description": "Interval in seconds between frames to sample for analysis", + "required": false, + "defaultValue": "1" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include header row in CSV output", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated CSV as a string and summary metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract structured quantitative or categorical data from video content for reporting, further analysis, or integration with data pipelines. It is useful when you want a simple CSV summary of objects detected, motion statistics, or other extracted features over time.", + "limitations": "Does not perform video editing or modify video content. Analysis capabilities depend on predefined detection methods; complex custom analyses are not supported. The output CSV format is flat and may not capture complex hierarchical data.", + "examples": [ + "Generate CSV summarizing objects detected every second in a security footage video from 0 to 60 seconds.", + "Create a CSV report of average brightness per frame sampled every 2 seconds in a sports game video.", + "Produce motion analysis CSV data for a wildlife documentary clip between 30s and 90s." + ] + }, + "tags": [ + "video", + "analysis", + "CSV", + "data-extraction", + "reporting", + "frame-sampling" + ], + "examples": [ + { + "inputJson": "{\"videoURL\":\"http://example.com/video.mp4\",\"analysisType\":\"objectDetection\",\"startTime\":0,\"endTime\":60,\"frameInterval\":1,\"includeHeaders\":true}", + "description": "Extract detected objects every second in the first minute of the video." + }, + { + "inputJson": "{\"videoURL\":\"/files/sample.mov\",\"analysisType\":\"frameBrightness\",\"frameInterval\":2}", + "description": "Generate CSV of average brightness every 2 seconds for the entire video." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "video-processing.generateSummary", + "description": "Generates a concise textual summary of the main content and key events in a video file. Accepts a video file URL or base64 data, analyzes video scenes and audio transcript (if present), then outputs a human-readable summary highlighting important moments, topics, and overall narrative within a specified maximum word count.", + "category": "video-processing", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "URL link to the input video file to be summarized.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoBase64", + "type": "string", + "description": "Base64-encoded string of the video file content if no URL is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSummaryWords", + "type": "number", + "description": "Maximum number of words for the generated summary to keep it concise.", + "required": false, + "defaultValue": "150" + }, + { + "name": "language", + "type": "string", + "description": "Expected language of spoken content in the video to improve transcript and summary accuracy. Defaults to English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeTranscript", + "type": "boolean", + "description": "Whether to include the transcribed text of the video audio along with the summary output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the textual summary of the video, and optionally the full transcript if requested." + }, + "aiAgent": { + "useCase": "Use this tool when a brief textual summary of long or complex video content is required, such as in video search, cataloging, or preview generation. It helps agents quickly understand video topics and important events without watching the entire video.", + "limitations": "The tool quality depends on video clarity, audio quality, and availability of spoken content for transcription. It may not perform well on silent videos or videos with unclear speech or multiple overlapping speakers. Summaries are approximate and may miss fine details.", + "examples": [ + "Generate a brief summary of this lecture video to help users decide whether to watch it.", + "Summarize a training video's key points in under 100 words for quick review.", + "Provide a textual overview of an interview video including main discussion topics." + ] + }, + "tags": [ + "video", + "summary", + "transcription", + "nlp", + "analysis", + "preview" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/sample_lecture.mp4\",\"maxSummaryWords\":100,\"language\":\"en\",\"includeTranscript\":false}", + "description": "Summarize an English lecture video with up to 100 words, excluding transcript." + }, + { + "inputJson": "{\"videoBase64\":\"\",\"maxSummaryWords\":150,\"language\":\"es\",\"includeTranscript\":true}", + "description": "Summarize a Spanish video provided as base64 string and include the transcript." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "video-processing.createSentence", + "description": "Generates a descriptive sentence summarizing the content of a video segment based on input video metadata or extracted visual/audio features. Accepts video segment details or analysis data as input, processes them with natural language generation techniques, and outputs a coherent, context-aware summary sentence about the segment.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSegmentMetadata", + "type": "object", + "description": "Metadata or analysis data for the video segment, including key frames, detected objects, actions, or audio keywords, used to generate the descriptive sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the output sentence.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "maxSentenceLength", + "type": "number", + "description": "Maximum allowed length for the generated sentence in characters to control verbosity.", + "required": false, + "defaultValue": "150" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include time references or timestamps within the sentence, if applicable.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated descriptive sentence summarizing the video segment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create human-readable, contextually relevant textual summaries or captions for specific segments of a video based on metadata or content analysis. Particularly useful for video indexing, automatic caption generation, or content summarization to improve searchability and accessibility.", + "limitations": "This tool cannot perform the low-level video content extraction by itself; it requires pre-processed metadata or feature input. It does not generate multi-sentence paragraphs, only single coherent sentences. It may struggle with very ambiguous or sparse input data, leading to generic descriptions.", + "examples": [ + "Generate a summary sentence describing the detected objects and actions in a given video clip metadata.", + "Create a concise caption in Spanish for a 10-second video segment based on the analyzed audio transcript and visual features.", + "Produce a sentence summarizing the main event in a sports video segment using its metadata with timestamps included." + ] + }, + "tags": [ + "video", + "summary", + "nlp", + "captioning", + "metadata", + "content-description", + "natural-language", + "video-segmentation" + ], + "examples": [ + { + "inputJson": "{\"videoSegmentMetadata\":{\"objects\":[\"dog\",\"ball\"],\"actions\":[\"running\",\"fetching\"],\"scene\":\"park\"},\"language\":\"en\",\"maxSentenceLength\":120,\"includeTimestamps\":false}", + "description": "Generate a descriptive sentence in English for a video segment featuring a dog running and fetching a ball in a park." + }, + { + "inputJson": "{\"videoSegmentMetadata\":{\"keywords\":[\"goal\",\"soccer\",\"crowd cheering\"],\"startTime\":\"00:01:15\",\"endTime\":\"00:01:25\"},\"language\":\"en\",\"maxSentenceLength\":150,\"includeTimestamps\":true}", + "description": "Create a sentence with timestamps summarizing a soccer goal event and crowd reaction during a video segment from 1:15 to 1:25." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Sentence", + "context": null + } + }, + { + "name": "video-processing.createEvent", + "description": "Creates an event marker in a video timeline based on specified criteria such as time range, detected motion, or scene changes. Accepts a video file or stream URL, processes it to detect events, and outputs event metadata including timestamps and descriptions for use in video analytics or editing workflows.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "URL or local path of the video file or stream to analyze for event creation.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of event to create, e.g., 'motion', 'sceneChange', 'customTimestamp'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "Start time in seconds for event detection within the video. Defaults to 0 (beginning).", + "required": false, + "defaultValue": "0" + }, + { + "name": "endTime", + "type": "number", + "description": "End time in seconds for event detection within the video. Defaults to video length if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity threshold for event detection algorithms, from 0 (low) to 1 (high).", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "customData", + "type": "object", + "description": "Optional object containing user-defined data or metadata to associate with the event when eventType is 'customTimestamp'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected or created events, each with timestamp, event type, description, and optional metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to identify or create events within a video timeline for analytics, editing, or automated processing tasks, such as marking scene changes, detecting motion events, or inserting custom time-based annotations.", + "limitations": "Does not perform full content analysis beyond specified event types; motion and scene detection accuracy depends on video quality and parameter tuning; not suitable for real-time event creation on live streams without latency.", + "examples": [ + "Create motion detection events from 30 to 120 seconds with high sensitivity.", + "Insert a custom timestamp event at 90 seconds with metadata about a speaker change.", + "Detect scene changes across the entire video file to segment the content for editing." + ] + }, + "tags": [ + "video", + "event-detection", + "analytics", + "editing", + "timeline", + "marker", + "motion-detection", + "scene-change" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"/videos/security_footage.mp4\",\"eventType\":\"motion\",\"startTime\":30,\"endTime\":120,\"sensitivity\":0.8}", + "description": "Detect motion events in a security footage video from 30 to 120 seconds with high sensitivity." + }, + { + "inputJson": "{\"videoSource\":\"http://streaming.video/live\",\"eventType\":\"customTimestamp\",\"customData\":{\"note\":\"Speaker change\"},\"startTime\":89.5}", + "description": "Insert a custom timestamp event at approximately 90 seconds in a live stream noting a speaker change." + }, + { + "inputJson": "{\"videoSource\":\"/videos/movie.mp4\",\"eventType\":\"sceneChange\"}", + "description": "Detect scene changes throughout the entire video file for automated content segmentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "video-processing.createService", + "description": "Creates and configures a scalable video processing service to handle video editing and analysis tasks. Accepts configuration parameters including resource allocation, supported formats, and processing features, then outputs service deployment details such as endpoint URL, service ID, and status.", + "category": "video-processing", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name identifier for the video processing service to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedFormats", + "type": "array", + "description": "List of video file formats (e.g., mp4, avi) that the service will support for processing.", + "required": true, + "defaultValue": "[\"mp4\",\"avi\"]" + }, + { + "name": "maxConcurrentJobs", + "type": "number", + "description": "Maximum number of video processing jobs the service can handle simultaneously.", + "required": false, + "defaultValue": "5" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Whether the service should automatically scale resources based on workload demand.", + "required": false, + "defaultValue": "true" + }, + { + "name": "region", + "type": "string", + "description": "Cloud region or data center location where the service should be deployed.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "callbackUrl", + "type": "string", + "description": "URL to receive asynchronous notifications about job statuses and results.", + "required": false, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of processing features enabled such as 'transcoding', 'thumbnailExtraction', 'faceDetection'.", + "required": false, + "defaultValue": "[\"transcoding\"]" + } + ], + "returns": { + "type": "object", + "description": "An object containing service deployment details including service ID, endpoint URL for API access, current status, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to deploy or provision a new video processing infrastructure service capable of handling video editing and analytical workloads at scale. Ideal for preparing backend services that support video pipelines with customizable features and scalability.", + "limitations": "This tool does not perform actual video processing itself; it only creates and configures the service infrastructure. It cannot manage existing services or process individual videos.", + "examples": [ + "Create a service named 'FastVideoProc' that supports mp4 and mov files with up to 10 concurrent jobs and auto-scaling enabled.", + "Set up a video processing service in region 'eu-west-2' with face detection and thumbnail extraction features enabled.", + "Deploy a minimal video processing service with a callback URL for job status updates but with auto-scaling disabled." + ] + }, + "tags": [ + "video-processing", + "service-deployment", + "infrastructure", + "scalable", + "cloud", + "video-editing", + "video-analysis" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"FastVideoProc\",\"supportedFormats\":[\"mp4\",\"mov\"],\"maxConcurrentJobs\":10,\"enableAutoScaling\":true}", + "description": "Create a scalable video processing service named FastVideoProc supporting mp4 and mov formats, with 10 concurrent jobs max and auto-scaling enabled." + }, + { + "inputJson": "{\"serviceName\":\"EUVideoService\",\"supportedFormats\":[\"mp4\"],\"region\":\"eu-west-2\",\"features\":[\"faceDetection\",\"thumbnailExtraction\"]}", + "description": "Deploy a video processing service in EU region with face detection and thumbnail extraction enabled, supporting mp4 format only." + }, + { + "inputJson": "{\"serviceName\":\"BasicVideoService\",\"supportedFormats\":[\"avi\"],\"callbackUrl\":\"https://myapp.com/callback\",\"enableAutoScaling\":false}", + "description": "Set up a basic video processing service that supports avi format, includes a callback URL for job updates, and disables auto-scaling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "video-processing.createMetric", + "description": "Generates a custom analytic metric from video metadata and content features. Accepts video file path or URL, processing options including frame sampling rate and target analytic (e.g., motion intensity, color histogram), and outputs a structured JSON report summarizing the calculated metric over the video duration.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "File path or URL of the input video to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "Type of video metric to compute, e.g., 'motionIntensity','colorHistogram','frameBrightness'", + "required": true, + "defaultValue": "" + }, + { + "name": "frameSamplingRate", + "type": "number", + "description": "Frequency in frames per second to sample for analysis (higher rate means finer metrics)", + "required": false, + "defaultValue": "1" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range within the video to analyze, with 'start' and 'end' in seconds", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the metric report ('json' or 'csv')", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "JSON object containing the computed video metric values and summary statistics over the analyzed time range" + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract quantitative metrics from video content, such as motion analysis for sports performance, color distribution for quality control, or brightness over time for lighting assessment. It enables automated analytical insights for video editing, research, or monitoring workflows.", + "limitations": "Cannot process live video streams in real-time; requires accessible video files or URLs. Metric types are limited to predefined analytic methods; custom metric definitions are not supported.", + "examples": [ + "Calculate the average motion intensity metric for the first 30 seconds of a sports video at 2 frames per second.", + "Generate a color histogram summary for an online promotional video with default sampling.", + "Extract frame brightness changes over entire video to assess lighting consistency." + ] + }, + "tags": [ + "video", + "analytics", + "metric", + "motion", + "color", + "brightness", + "processing" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/soccer_match.mp4\",\"metricType\":\"motionIntensity\",\"frameSamplingRate\":2,\"timeRange\":{\"start\":0,\"end\":30},\"outputFormat\":\"json\"}", + "description": "Calculate motion intensity metric for the first 30 seconds of a soccer match video with sampling at 2 fps." + }, + { + "inputJson": "{\"videoSource\":\"/local/path/promo_video.mov\",\"metricType\":\"colorHistogram\"}", + "description": "Generate a color histogram metric report for a local promotional video using default parameters." + }, + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/interview.mp4\",\"metricType\":\"frameBrightness\",\"frameSamplingRate\":1,\"outputFormat\":\"csv\"}", + "description": "Extract brightness metrics per frame for an interview video at 1 fps and output the data as CSV." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "video-processing.createContainer", + "description": "Creates a virtual container for organizing video assets and processing configurations. Accepts parameters defining container name, description, storage location, and optional metadata. Outputs a confirmation with container ID and status, enabling structured management of video files and processing workflows.", + "category": "video-processing", + "parameters": [ + { + "name": "containerName", + "type": "string", + "description": "Name of the container to be created, used for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the container's purpose or contents.", + "required": false, + "defaultValue": "" + }, + { + "name": "storagePath", + "type": "string", + "description": "File system path or URI where the container's data will be stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional container metadata such as tags or creator info.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessPermissions", + "type": "object", + "description": "Object defining access control rules, e.g., read/write permissions for users or groups.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSizeMb", + "type": "number", + "description": "Maximum storage size in megabytes allocated for this container.", + "required": false, + "defaultValue": "0" + }, + { + "name": "autoCleanup", + "type": "boolean", + "description": "Flag to enable automatic cleanup of temporary files within the container after processing completes.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique container ID, creation timestamp, status message, and storage information confirming container setup." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically create organized containers that hold video assets, configurations, and processing results, particularly when preparing environments for batch video processing, editing sessions, or media asset management. Enables agents to dynamically provision isolated spaces to handle video workflows.", + "limitations": "This tool does not handle uploading or processing video content itself; it only creates the storage container infrastructure. It also does not enforce actual access control beyond storing permission metadata.", + "examples": [ + "Create a new container named 'ProjectX Editing' with metadata tags for project tracking.", + "Initialize a container with specified storage path and auto-cleanup enabled for temporary processing files.", + "Set up a secure container with restricted access permissions for sensitive video footage." + ] + }, + "tags": [ + "video", + "container", + "storage", + "asset management", + "video workflow", + "virtual environment" + ], + "examples": [ + { + "inputJson": "{\"containerName\":\"ProjectX Editing\",\"description\":\"Container for ProjectX video assets and edits\",\"storagePath\":\"/mnt/storage/projectx\",\"metadata\":{\"project\":\"ProjectX\",\"owner\":\"JohnDoe\"},\"accessPermissions\":{\"read\":[\"user1\",\"user2\"],\"write\":[\"user1\"]},\"maxSizeMb\":5000,\"autoCleanup\":true}", + "description": "Create a container for ProjectX with specified storage location, metadata tags, access permissions, size limit, and auto-cleanup enabled." + }, + { + "inputJson": "{\"containerName\":\"RawFootage\",\"storagePath\":\"s3://media-bucket/raw\",\"autoCleanup\":false}", + "description": "Create a simple container named RawFootage storing data on an S3 bucket without auto-cleanup." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "video-processing.createNotification", + "description": "Generates a notification message related to video processing tasks. Accepts inputs such as video ID, event type (e.g., upload complete, processing error), and optional custom message. Produces a structured notification object containing relevant details for informing users or systems about video processing status.", + "category": "video-processing", + "parameters": [ + { + "name": "videoId", + "type": "string", + "description": "Unique identifier of the video related to the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of video processing event triggering the notification (e.g., 'uploadComplete', 'processingError', 'thumbnailGenerated').", + "required": true, + "defaultValue": "" + }, + { + "name": "customMessage", + "type": "string", + "description": "Optional custom text to include in the notification message.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification, e.g., 'low', 'normal', 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the event occurred. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing notification details including videoId, eventType, message, priority, and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to inform users or other system components about specific events in video processing workflows, such as completion notifications, error alerts, or status updates, ensuring consistent message formatting.", + "limitations": "This tool only creates notification payloads; it does not send notifications or interface with messaging platforms.", + "examples": [ + "Create a notification for a video upload completion event.", + "Generate an error alert notification with a custom message when video processing fails.", + "Create a high priority notification for a generated video thumbnail." + ] + }, + "tags": [ + "video", + "notification", + "event", + "status", + "message", + "processing" + ], + "examples": [ + { + "inputJson": "{\"videoId\":\"vid12345\",\"eventType\":\"uploadComplete\"}", + "description": "Notification indicating that the video with ID vid12345 has finished uploading." + }, + { + "inputJson": "{\"videoId\":\"vid67890\",\"eventType\":\"processingError\",\"customMessage\":\"Failed to encode video due to unsupported format.\"}", + "description": "Error notification including a custom message explaining why the video processing failed." + }, + { + "inputJson": "{\"videoId\":\"vid54321\",\"eventType\":\"thumbnailGenerated\",\"priority\":\"high\"}", + "description": "High priority notification indicating the video thumbnail was successfully generated." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "video-processing.createKey", + "description": "This tool generates a secure cryptographic key for encrypting or decrypting video files or streams. It accepts parameters specifying key type, length, and format, then produces a base64-encoded key string suitable for use in video encryption workflows.", + "category": "video-processing", + "parameters": [ + { + "name": "keyType", + "type": "string", + "description": "The type of cryptographic key to generate, e.g., 'AES' or 'RSA'.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyLength", + "type": "number", + "description": "Length of the key in bits (e.g., 128, 256 for AES keys).", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the returned key, 'base64' or 'hex'.", + "required": false, + "defaultValue": "base64" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "If true, output includes key metadata such as type and length.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated key string and optional metadata if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate cryptographic keys for securing video files, such as for DRM systems or encrypted video streaming. It helps automatically produce properly formatted keys to integrate with video encryption modules.", + "limitations": "This tool does not perform video encryption or decryption itself; it only generates cryptographic keys. It cannot verify key usage or manage key lifecycle beyond creation.", + "examples": [ + "Generate a 256-bit AES key in base64 for encrypting streaming video.", + "Create a 2048-bit RSA key in hex string format for secure video distribution.", + "Produce a 128-bit AES key including metadata for a video DRM system." + ] + }, + "tags": [ + "video-processing", + "security", + "key-generation", + "encryption", + "video-security" + ], + "examples": [ + { + "inputJson": "{\"keyType\":\"AES\",\"keyLength\":256,\"outputFormat\":\"base64\",\"includeMetadata\":true}", + "description": "Generate a 256-bit AES key, base64 encoded with metadata." + }, + { + "inputJson": "{\"keyType\":\"RSA\",\"keyLength\":2048,\"outputFormat\":\"hex\",\"includeMetadata\":false}", + "description": "Create a 2048-bit RSA key in hex format without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "video-processing.createLead", + "description": "This tool analyzes video footage to identify and extract potential business leads by detecting key visual or audio cues related to client interest or brand exposure. It accepts raw video input along with customizable detection parameters and outputs structured lead data such as timestamp, detected keywords, and contact info extracted from visuals or audio segments.", + "category": "video-processing", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "URL or path to the input video file to analyze for lead extraction.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for audio processing to detect leads in spoken content, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "detectionKeywords", + "type": "array", + "description": "List of keywords or phrases to detect in audio or subtitles that signify potential leads.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence level (0 to 1) for detected leads to be considered valid.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "extractContactInfo", + "type": "boolean", + "description": "Whether to attempt extraction of contact information from video frames or audio (e.g., phone numbers, emails).", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeSegmentDuration", + "type": "number", + "description": "Segment duration in seconds for batching analysis to associate leads with specific video times.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Structured data containing an array of detected leads, each with timestamp, detected keywords, confidence score, and extracted contact info if available." + }, + "aiAgent": { + "useCase": "Use this tool when needing to identify and extract potential business leads from raw marketing, sales, or event video content automatically. It helps convert video content into actionable lead data by detecting client interest signals. Suitable for scenarios where manual review would be inefficient or where timely lead identification from media is critical.", + "limitations": "The tool depends on the quality of audio and video; noisy environments or poor-quality videos may reduce detection accuracy. It cannot guarantee complete extraction of all leads and requires predefined keywords for best results.", + "examples": [ + "Extract potential business leads from a recorded live webinar video.", + "Analyze a product demo video to find timestamps where client contact info appears.", + "Scan a marketing conference video to identify moments mentioning key competitor names." + ] + }, + "tags": [ + "video-processing", + "lead-generation", + "business-intelligence", + "video-analysis", + "contact-extraction" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/conference.mp4\",\"language\":\"en\",\"detectionKeywords\":[\"interested\",\"contact\",\"buy\"],\"confidenceThreshold\":0.75,\"extractContactInfo\":true,\"timeSegmentDuration\":15}", + "description": "Analyze a conference video to find segments indicating interest and extract leads with contact info." + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/webinar.mp4\",\"detectionKeywords\":[\"demo\",\"pricing\",\"support\"],\"confidenceThreshold\":0.8,\"extractContactInfo\":false}", + "description": "Detect key lead-related keywords in a webinar video without extracting contact info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "video-processing.createCSV", + "description": "This tool accepts a video file or a list of video metadata objects, extracts specified attributes (such as duration, frame rate, resolution, and codec), and compiles the data into a structured CSV file. It supports filtering which attributes to extract and outputs a CSV-formatted string or saves it to a file.", + "category": "video-processing", + "parameters": [ + { + "name": "videoInput", + "type": "array", + "description": "An array of video metadata objects or paths to video files to process.", + "required": true, + "defaultValue": "" + }, + { + "name": "attributes", + "type": "array", + "description": "List of video attributes to extract per video, e.g., ['duration','frameRate','resolution','codec'].", + "required": true, + "defaultValue": "[\"duration\",\"frameRate\",\"resolution\"]" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the CSV output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "File path to save the generated CSV. If empty, the CSV string is returned instead.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing either the CSV string or the saved file path of the generated CSV report." + }, + "aiAgent": { + "useCase": "Use this tool to generate a CSV summary of key video properties from one or many video files or metadata sources, enabling easy cataloging, analysis, or reporting, especially in batch video processing, media asset management, or quality control workflows.", + "limitations": "This tool does not perform video content analysis beyond metadata extraction and does not transcode or modify the video files. It requires valid video metadata or access to the video files to extract attributes.", + "examples": [ + "Generate a CSV report summarizing duration, resolution, and codec from a list of video files.", + "Create a CSV string containing video frame rate and duration from given metadata objects.", + "Save a CSV file with headers that lists codec and resolution for a video collection." + ] + }, + "tags": [ + "video-processing", + "metadata-extraction", + "csv-generation", + "reporting", + "batch-processing", + "media-management" + ], + "examples": [ + { + "inputJson": "{\"videoInput\":[\"/videos/clip1.mp4\",\"/videos/clip2.mp4\"],\"attributes\":[\"duration\",\"resolution\",\"codec\"],\"includeHeaders\":true,\"outputFilePath\":\"\"}", + "description": "Generate CSV string with duration, resolution, and codec from two video files." + }, + { + "inputJson": "{\"videoInput\":[{\"fileName\":\"vidA.mov\",\"duration\":120,\"frameRate\":30,\"resolution\":\"1920x1080\",\"codec\":\"H264\"},{\"fileName\":\"vidB.mov\",\"duration\":95,\"frameRate\":25,\"resolution\":\"1280x720\",\"codec\":\"HEVC\"}],\"attributes\":[\"fileName\",\"duration\",\"frameRate\"],\"includeHeaders\":true,\"outputFilePath\":\"summary.csv\"}", + "description": "Create a CSV file named summary.csv with file name, duration, and frame rate from video metadata objects." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "video-processing.createConfig", + "description": "This tool generates a comprehensive video processing configuration object based on user-defined parameters such as resolution, frame rate, codec, bitrate, and filters. It accepts input parameters describing desired output video quality and effects, processes them to build a standardized config for video editing or encoding pipelines, and outputs a structured JSON config suitable for video processing libraries or tools.", + "category": "video-processing", + "parameters": [ + { + "name": "resolution", + "type": "string", + "description": "Target video resolution in widthxheight format, e.g. '1920x1080'.", + "required": true, + "defaultValue": "" + }, + { + "name": "frameRate", + "type": "number", + "description": "Desired output frame rate in frames per second (fps).", + "required": true, + "defaultValue": "" + }, + { + "name": "codec", + "type": "string", + "description": "Video codec to use, e.g., 'h264', 'hevc', or 'vp9'.", + "required": true, + "defaultValue": "" + }, + { + "name": "bitrate", + "type": "number", + "description": "Target video bitrate in kbps for encoding quality.", + "required": false, + "defaultValue": "2500" + }, + { + "name": "filters", + "type": "array", + "description": "List of video filters or effects to apply like ['grayscale', 'denoise'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "preset", + "type": "string", + "description": "Encoding preset for speed vs quality tradeoff, e.g., 'fast', 'medium', 'slow'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "audioEnabled", + "type": "boolean", + "description": "Whether to include audio track in the output video.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured video processing configuration as JSON with all settings formatted for use by video encoding or editing libraries." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a precise video processing configuration object tailored to specific output requirements such as resolution, codec, filters, and bitrate. It helps standardize video encoding setups for downstream processing or automation.", + "limitations": "Does not perform actual video processing or validation of codec compatibility. This tool only creates the configuration object; actual encoding requires separate tools.", + "examples": [ + "Create config for 1080p H.264 video at 30fps with grayscale filter.", + "Generate a config for 4K HEVC video with 60fps and no audio.", + "Build a video config with VP9 codec and denoising filter at 720p." + ] + }, + "tags": [ + "video", + "configuration", + "encoding", + "filters", + "codec", + "resolution", + "bitrate" + ], + "examples": [ + { + "inputJson": "{\"resolution\":\"1920x1080\",\"frameRate\":30,\"codec\":\"h264\",\"bitrate\":4500,\"filters\":[\"grayscale\"],\"preset\":\"medium\",\"audioEnabled\":true}", + "description": "1080p H.264 video at 30fps with grayscale filter and audio." + }, + { + "inputJson": "{\"resolution\":\"3840x2160\",\"frameRate\":60,\"codec\":\"hevc\",\"bitrate\":12000,\"filters\":[],\"preset\":\"fast\",\"audioEnabled\":false}", + "description": "4K HEVC video at 60fps without audio, fast encoding preset." + }, + { + "inputJson": "{\"resolution\":\"1280x720\",\"frameRate\":24,\"codec\":\"vp9\",\"filters\":[\"denoise\"],\"audioEnabled\":true}", + "description": "720p VP9 video at 24fps with denoise filter and audio enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "video-processing.createPullRequest", + "description": "This tool creates a pull request in a Git repository containing video processing code changes. It accepts the target repository information, the branch with new video processing commits, the pull request title and description. It automates PR creation to facilitate code review and integration of video processing features or fixes.", + "category": "video-processing", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The HTTPS or SSH URL of the Git repository where the pull request will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceBranch", + "type": "string", + "description": "The name of the branch containing the new video processing code changes to merge.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The branch into which the changes should be merged, usually 'main' or 'master'.", + "required": true, + "defaultValue": "\"main\"" + }, + { + "name": "pullRequestTitle", + "type": "string", + "description": "Title for the pull request summarizing the video processing improvement.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestDescription", + "type": "string", + "description": "Detailed description explaining the video processing changes and motivation.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or credentials for accessing and creating pull requests in the repository.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Information about the created pull request including URL, ID, and status." + }, + "aiAgent": { + "useCase": "Use this tool when automating the integration of video processing features, bug fixes, or enhancements stored in a feature branch into a shared Git repository. It simplifies the workflow by programmatically creating pull requests to enable code review and collaboration.", + "limitations": "The tool only creates the pull request; it does not manage code conflicts or run tests. It requires correct authentication and network access to the Git hosting service.", + "examples": [ + "Create a pull request for new video codec support branch merging into main.", + "Open a pull request adding video filtering features to the shared repo.", + "Generate a pull request to merge bug fixes in video frame extraction into production branch." + ] + }, + "tags": [ + "video-processing", + "code-management", + "pull-request", + "git", + "automation", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/video-tools.git\",\"sourceBranch\":\"feature/hdr-support\",\"targetBranch\":\"main\",\"pullRequestTitle\":\"Add HDR video support\",\"pullRequestDescription\":\"Implements HDR encoding and decoding support in video module.\",\"authToken\":\"ghp_123token\"}", + "description": "Create a pull request to add HDR support code to the main branch." + }, + { + "inputJson": "{\"repositoryUrl\":\"git@github.com:example/video-tools.git\",\"sourceBranch\":\"bugfix/frame-drop\",\"targetBranch\":\"main\",\"pullRequestTitle\":\"Fix frame drop issue\",\"pullRequestDescription\":\"Resolve frame dropping bug during stream processing.\",\"authToken\":\"ghp_456token\"}", + "description": "Open a PR to fix a frame drop bug in the main branch." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "video-processing.createEndpoint", + "description": "Creates a customizable API endpoint for video processing operations. Accepts configuration parameters specifying supported video formats, processing features (e.g., encoding, transcoding, filtering), and performance constraints. Outputs the endpoint URL with documentation for integration in applications.", + "category": "video-processing", + "parameters": [ + { + "name": "endpointName", + "type": "string", + "description": "The unique name identifier for the video processing endpoint to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedFormats", + "type": "array", + "description": "List of video file formats (e.g., mp4, avi) that the endpoint will accept for processing.", + "required": true, + "defaultValue": "[\"mp4\"]" + }, + { + "name": "processingCapabilities", + "type": "array", + "description": "Operations supported by the endpoint such as 'transcode', 'filter', 'extractFrames', or 'resize'.", + "required": true, + "defaultValue": "[\"transcode\"]" + }, + { + "name": "maxResolution", + "type": "string", + "description": "Maximum video resolution the endpoint can process, e.g., '1920x1080'.", + "required": false, + "defaultValue": "1920x1080" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires API key or token authentication.", + "required": false, + "defaultValue": "true" + }, + { + "name": "rateLimitPerMinute", + "type": "number", + "description": "Maximum number of processed video requests allowed per minute to this endpoint.", + "required": false, + "defaultValue": "60" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds allowed per processing request before timing out.", + "required": false, + "defaultValue": "120" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated endpoint URL, supported formats, processing capabilities, and usage instructions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a tailored REST API endpoint for video processing tasks tailored to specific formats, operations, or performance constraints. Ideal for integrating video-processing features into larger applications or services without manual backend development.", + "limitations": "This tool does not implement the actual video processing logic; it only sets up the API endpoint configuration and interface. It cannot guarantee performance beyond specified limits or handle video content beyond declared supported formats.", + "examples": [ + "Create an endpoint named 'hdTranscoder' supporting mp4 and mov with transcoding and filtering capabilities.", + "Generate a public endpoint for extracting frames from avi videos without authentication.", + "Define a rate-limited endpoint for resizing videos with max resolution 1280x720 and timeout of 90 seconds." + ] + }, + "tags": [ + "video-processing", + "API", + "endpoint", + "automation", + "transcoding", + "filtering", + "integration" + ], + "examples": [ + { + "inputJson": "{\"endpointName\":\"hdTranscoder\",\"supportedFormats\":[\"mp4\",\"mov\"],\"processingCapabilities\":[\"transcode\",\"filter\"],\"maxResolution\":\"1920x1080\",\"authenticationRequired\":true,\"rateLimitPerMinute\":100,\"timeoutSeconds\":150}", + "description": "Create a secure endpoint named 'hdTranscoder' for MP4 and MOV videos, supporting transcoding and filtering with high limits." + }, + { + "inputJson": "{\"endpointName\":\"frameExtractor\",\"supportedFormats\":[\"avi\"],\"processingCapabilities\":[\"extractFrames\"],\"authenticationRequired\":false}", + "description": "Create a public endpoint 'frameExtractor' that extracts frames from AVI files without authentication." + }, + { + "inputJson": "{\"endpointName\":\"resizer\",\"supportedFormats\":[\"mp4\"],\"processingCapabilities\":[\"resize\"],\"maxResolution\":\"1280x720\",\"timeoutSeconds\":90,\"rateLimitPerMinute\":30}", + "description": "Define a rate-limited 'resizer' endpoint for resizing MP4 videos to max 1280x720 with a 90s timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "video-processing.createInvoice", + "description": "Generates an invoice document summarizing video processing services rendered based on provided video metadata and service parameters. Accepts video project details, processing tasks, durations, and rates to produce a structured invoice in PDF or JSON format for billing purposes.", + "category": "video-processing", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the video project or client.", + "required": true, + "defaultValue": "" + }, + { + "name": "servicesRendered", + "type": "array", + "description": "List of processing tasks performed, each with description, duration (in hours), and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for invoice amounts (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date of invoice issuance in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the invoice document ('pdf' or 'json').", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Optional notes to include in the invoice, such as payment instructions or terms.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated invoice as a base64 encoded string and metadata such as total amount, invoice number, and format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a professional billing invoice summarizing video processing tasks performed on a project. It consolidates the description, time spent, unit prices, calculates totals, and outputs a formatted invoice document suitable for client billing.", + "limitations": "Cannot automatically extract video processing details from raw videos; requires explicit input of services rendered and pricing data. Does not handle payment processing or tax calculations beyond simple summation.", + "examples": [ + "Generate an invoice PDF for a video editing project with 3 tasks and their hourly rates.", + "Create a JSON invoice summarizing color grading and sound mixing services with due date and notes.", + "Produce a USD currency invoice for motion graphics rendering with service descriptions and invoice date." + ] + }, + "tags": [ + "video", + "invoice", + "billing", + "document", + "video-processing", + "financial", + "service-summary" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Product Launch Video\",\"servicesRendered\":[{\"description\":\"Editing\",\"duration\":10,\"unitPrice\":50},{\"description\":\"Color Grading\",\"duration\":5,\"unitPrice\":60}],\"currency\":\"USD\",\"invoiceDate\":\"2024-06-15\",\"dueDate\":\"2024-07-15\",\"outputFormat\":\"pdf\",\"additionalNotes\":\"Please pay within 30 days.\"}", + "description": "Create a PDF invoice for a product launch video with two service items and payment terms." + }, + { + "inputJson": "{\"projectName\":\"Social Media Ads\",\"servicesRendered\":[{\"description\":\"Motion Graphics\",\"duration\":8,\"unitPrice\":70},{\"description\":\"Sound Mixing\",\"duration\":3,\"unitPrice\":55}],\"currency\":\"EUR\",\"outputFormat\":\"json\"}", + "description": "Generate a JSON invoice in EUR for social media advertising video services without dates or notes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "video-processing.createModule", + "description": "Generates a customizable video processing module in JavaScript based on specified video editing and analysis features. Accepts a configuration object detailing desired functionalities (e.g., trimming, filters, frame extraction), then produces modular, reusable code that can be integrated into client projects for streamlined video manipulation workflows.", + "category": "video-processing", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The identifier name for the generated module. Used as export and file base name.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "An array of strings specifying which video processing features to include, such as 'trim', 'resize', 'filter', 'extractFrames', or 'analyzeBrightness'.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the output module code. Supported: 'JavaScript' or 'TypeScript'.", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to generate basic unit tests associated with the module functionalities.", + "required": false, + "defaultValue": "false" + }, + { + "name": "dependencyManagement", + "type": "string", + "description": "How dependencies are handled: 'import', 'require', or 'inline'.", + "required": false, + "defaultValue": "import" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated module's source code as a string and optionally unit test code if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly scaffold a reusable and configurable video processing module tailored to specific editing or analysis needs, enabling integration into larger projects or pipelines without writing boilerplate code from scratch.", + "limitations": "This tool generates code modules only and does not execute or validate video processing logic correctness; complex video processing requiring GPU acceleration or real-time streams is outside scope.", + "examples": [ + "Generate a JS module named 'simpleEditor' with trimming and filter features.", + "Create a TypeScript module including frame extraction and brightness analysis with unit tests.", + "Produce a module 'videoTools' with resizing and filter features using CommonJS require statements." + ] + }, + "tags": [ + "video-processing", + "code-generation", + "module", + "javascript", + "typescript", + "video-editing", + "video-analysis" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"simpleEditor\",\"features\":[\"trim\",\"filter\"],\"language\":\"JavaScript\",\"includeTests\":false,\"dependencyManagement\":\"import\"}", + "description": "Generates a JavaScript video processing module named 'simpleEditor' that supports trimming and applying filters." + }, + { + "inputJson": "{\"moduleName\":\"frameAnalyzer\",\"features\":[\"extractFrames\",\"analyzeBrightness\"],\"language\":\"TypeScript\",\"includeTests\":true,\"dependencyManagement\":\"import\"}", + "description": "Creates a TypeScript module 'frameAnalyzer' with frame extraction and brightness analysis features plus basic unit tests." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "audio-processing.analyzeSentence", + "description": "Analyzes a given audio sentence input to extract its linguistic and acoustic features, including speech-to-text transcription, emotion detection, and sentence duration. Accepts a WAV or MP3 audio segment containing a single spoken sentence and outputs detailed analysis results describing its content and sentiment.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioData", + "type": "string", + "description": "Base64-encoded audio data containing a single spoken sentence (WAV or MP3 format).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the spoken sentence to guide transcription and analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "detectEmotion", + "type": "boolean", + "description": "Flag to enable emotion detection in the spoken sentence. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includePhonemes", + "type": "boolean", + "description": "Include detailed phoneme timing and transcription data in the output. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSentenceLength", + "type": "number", + "description": "Maximum length in seconds allowed for the input sentence audio. Longer input will be truncated. Default is 10 seconds.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing transcription text, detected emotion label, sentence duration in seconds, optionally phoneme timing details, and confidence scores for each output." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze a spoken sentence from an audio clip for content (transcription), emotional tone, and timing metrics. Ideal for applications like emotion-aware voice interfaces, linguistic research, or sentence-level speech analytics. It helps agents understand what was said and how it was said in a single spoken sentence input.", + "limitations": "The tool works best on clear audio clips with a single speaker and a single sentence. It does not handle multi-sentence paragraphs well or noisy audio. Emotion detection is limited to broad categories and may be inaccurate with ambiguous intonation or synthetic voices.", + "examples": [ + "Analyze the emotional tone and text transcription of a short spoken sentence in English.", + "Provide phoneme breakdown along with text for the given audio sentence.", + "Detect if a user-supplied audio sentence conveys happiness, sadness, or neutrality." + ] + }, + "tags": [ + "audio", + "speech analysis", + "transcription", + "emotion detection", + "sentence-level", + "phonetics" + ], + "examples": [ + { + "inputJson": "{\"audioData\":\"UklGRiwAAABXQVZFZm10IBAAAAABAAEAilYAAESsAAACABAAZGF0YQcAAAA=\",\"language\":\"en\",\"detectEmotion\":true}", + "description": "Audio clip containing a single English sentence, requesting transcription and emotion detection." + }, + { + "inputJson": "{\"audioData\":\"UklGRiwAAABXQVZFZm10IBAAAAABAAEAilYAAESsAAACABAAZGF0YQcAAAA=\",\"language\":\"en\",\"detectEmotion\":false,\"includePhonemes\":true}", + "description": "Same audio, requesting detailed phoneme timing data without emotion analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "audio-processing.analyzeEvent", + "description": "Analyzes an audio recording of an event to detect and classify key acoustic features such as speech segments, applause, music, and background noise. Accepts audio files in common formats and returns time-stamped event categories, their confidence scores, and summary statistics about the audio environment.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "File path or URL of the audio recording to analyze (WAV, MP3, etc.).", + "required": true, + "defaultValue": "" + }, + { + "name": "eventCategories", + "type": "array", + "description": "List of event categories to detect, e.g. ['speech', 'applause', 'music', 'noise'].", + "required": false, + "defaultValue": "[\"speech\",\"applause\",\"music\",\"noise\"]" + }, + { + "name": "minEventDuration", + "type": "number", + "description": "Minimum duration in seconds for detected event segments to be reported.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) to include detected events in output.", + "required": false, + "defaultValue": "0.6" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output results: 'json' or 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a list of detected event segments with start/end times, event type, and confidence score, plus overall summary statistics about event counts and durations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically identify and timestamp key event types from an audio recording, such as detecting when speeches, applause, or music occur during live event audio. Useful for event analytics, indexing recordings, or generating highlights.", + "limitations": "This tool cannot transcribe speech to text or identify speaker identity. It also may have reduced accuracy in noisy or overlapping acoustic environments.", + "examples": [ + "Analyze this audio file to find when speeches and applause occurred.", + "Detect all music and noise segments in the conference recording.", + "Summarize the duration and count of event types in this event audio." + ] + }, + "tags": [ + "audio", + "event-detection", + "acoustic-analysis", + "speech-detection", + "music-detection", + "applause-detection", + "audio-segmentation" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"https://example.com/event_audio.mp3\",\"eventCategories\":[\"speech\",\"applause\"],\"minEventDuration\":1.0,\"confidenceThreshold\":0.7,\"outputFormat\":\"json\"}", + "description": "Detect speeches and applause segments longer than 1 second with at least 70% confidence from an event audio." + }, + { + "inputJson": "{\"audioFilePath\":\"/data/concert.wav\",\"eventCategories\":[\"music\",\"noise\"],\"minEventDuration\":0.5}", + "description": "Identify music and background noise segments of at least 0.5 seconds duration from a concert recording." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "audio-processing.analyzeParagraph", + "description": "This tool accepts an audio recording containing one or multiple spoken paragraphs. It analyzes speech features paragraph by paragraph, performing tasks such as speaker diarization, emotion detection, speech rate calculation, and fundamental frequency estimation. The output details each paragraph's characteristics, including timing, speaker identity, emotional tone, and prosody metrics.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "Path or URL to the audio file containing the spoken paragraphs to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "languageCode", + "type": "string", + "description": "Language code of the spoken content, helping the tool optimize speech models (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "detectEmotions", + "type": "boolean", + "description": "Whether to analyze and include emotional tone detection per paragraph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "speakerSeparation", + "type": "boolean", + "description": "Enable speaker diarization to distinguish and label different speakers in the audio.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minParagraphDuration", + "type": "number", + "description": "Minimum duration in seconds for a segment to be considered a paragraph, helping to define boundaries.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "Returns an array of paragraph analysis objects; each includes start/end timestamps, speaker ID, emotional tone scores, speech rate (words/min), and pitch statistics." + }, + "aiAgent": { + "useCase": "Use this tool when needing detailed speech analysis segmented by spoken paragraphs in an audio file, such as preparing transcripts enriched with speaker and emotional context or assessing prosody in public speaking. It helps in media analysis, speech therapy, and customer service analytics.", + "limitations": "This tool requires reasonably clear audio and may not perform well on heavily overlapped speech or extreme background noise. It does not provide full transcription or word alignment and focuses on paragraph-level analysis.", + "examples": [ + "Analyze the emotional tone and speaker changes in this customer call recording.", + "Extract speech rate and pitch variation per paragraph from an audiobook chapter.", + "Identify paragraphs and speakers to prepare a summary of a multi-speaker podcast segment." + ] + }, + "tags": [ + "audio", + "analysis", + "speech", + "emotion-detection", + "speaker-diarization", + "prosody", + "paragraph-segmentation" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"/data/audio/meeting_recording.wav\",\"languageCode\":\"en-US\",\"detectEmotions\":true,\"speakerSeparation\":true}", + "description": "Analyze a meeting recording with multiple speakers in English, detecting emotions and identifying speakers per paragraph." + }, + { + "inputJson": "{\"audioFilePath\":\"https://example.com/audio/audiobook_chapter.mp3\",\"languageCode\":\"en-US\",\"detectEmotions\":false,\"speakerSeparation\":false}", + "description": "Analyze an audiobook chapter to get paragraph timing and speech rate without emotion detection or speaker separation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "audio-processing.analyzeMetric", + "description": "Analyzes audio input to compute specific metrics such as loudness, pitch stability, speech rate, or signal-to-noise ratio. Accepts raw audio files or audio streams in common formats, processes them using AI-enhanced algorithms, and returns structured metric data useful for audio quality assessment, speech analysis, or signal diagnostics.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioInput", + "type": "string", + "description": "Path or URL to the input audio file or audio stream identifier. Supports formats like WAV, MP3, or FLAC.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "The specific metric to analyze. Options include loudness, pitchStability, speechRate, signalToNoiseRatio.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for speech-related metrics to improve accuracy, e.g., 'en' for English. Optional for non-speech metrics.", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentDuration", + "type": "number", + "description": "Duration in seconds for segment-wise analysis to obtain time-varying metrics. If zero or omitted, analyzes entire audio at once.", + "required": false, + "defaultValue": "0" + }, + { + "name": "normalize", + "type": "boolean", + "description": "If true, normalizes audio signal before analysis to standard reference levels.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analyzed metric values. It includes the metric type, overall value, optional time-segmented values, and units." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract quantitative audio quality metrics or speech characteristics from audio files or streams, such as measuring loudness for normalization, assessing pitch stability in music, or calculating speech rate in spoken content.", + "limitations": "Cannot perform full speech transcription or semantic analysis; limited to quantified audio metrics. Requires supported audio format input and may be less accurate in noisy or distorted recordings.", + "examples": [ + "Analyze the loudness of a podcast episode to ensure it meets broadcasting standards.", + "Measure the speech rate in a recorded interview to identify speaking tempo.", + "Evaluate signal-to-noise ratio in an audio recording to assess audio quality for cleanup." + ] + }, + "tags": [ + "audio", + "analysis", + "metric", + "speech", + "music", + "quality-assessment" + ], + "examples": [ + { + "inputJson": "{\"audioInput\":\"https://example.com/audio/podcast.mp3\",\"metricType\":\"loudness\"}", + "description": "Analyze the overall loudness metric of a podcast audio file hosted online." + }, + { + "inputJson": "{\"audioInput\":\"local/path/song.wav\",\"metricType\":\"pitchStability\",\"segmentDuration\":5}", + "description": "Analyze pitch stability in 5-second segments of a local song file to find variations over time." + }, + { + "inputJson": "{\"audioInput\":\"https://example.com/recording.flac\",\"metricType\":\"speechRate\",\"language\":\"en\"}", + "description": "Calculate the speech rate in English for a remote speech recording." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "audio-processing.downloadReport", + "description": "Downloads a comprehensive analysis report for a given audio file or project. Accepts audio file identifiers or project IDs, processes available audio analysis data including waveform, spectral, and metadata summaries, then produces a downloadable PDF or JSON report detailing audio characteristics, detected events, and processing history.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFileId", + "type": "string", + "description": "Unique identifier of the audio file to generate the report for. Provide either this or projectId.", + "required": false, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "Project ID containing multiple audio files for batch reporting. Provide either this or audioFileId.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output format of the report, either 'pdf' for a formatted document or 'json' for machine-readable data.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeSpectralAnalysis", + "type": "boolean", + "description": "Whether to include detailed spectral analysis results in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include audio file metadata such as codec, duration, and bitrate.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEventSummary", + "type": "boolean", + "description": "Whether to include events detected in the audio such as speech, music, or silence segments.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloadable report URL or the report data directly if JSON format was chosen." + }, + "aiAgent": { + "useCase": "Use this tool when needing to provide users with a summarized and detailed report of audio analysis results for a specific audio file or project. It automates the aggregation and formatting of audio characteristics, metadata, and event detections into a convenient downloadable document, facilitating quick insights and sharing.", + "limitations": "This tool cannot perform new audio analysis itself; it relies on pre-existing analysis data. It cannot generate reports for audio files or projects lacking prior analysis results.", + "examples": [ + "Generate a PDF report summarizing spectral analysis and metadata for audio file 'abc123'.", + "Download a JSON report including event summaries for project 'proj456'.", + "Get a PDF report for audio file 'xyz789' excluding metadata details." + ] + }, + "tags": [ + "audio", + "reporting", + "download", + "analysis", + "spectral", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"audioFileId\":\"abc123\",\"reportFormat\":\"pdf\",\"includeSpectralAnalysis\":true,\"includeMetadata\":true,\"includeEventSummary\":true}", + "description": "Generate a comprehensive PDF report for a single audio file including all analysis details." + }, + { + "inputJson": "{\"projectId\":\"proj456\",\"reportFormat\":\"json\",\"includeSpectralAnalysis\":false,\"includeMetadata\":true,\"includeEventSummary\":true}", + "description": "Download a machine-readable JSON report for all files in a project, excluding spectral data." + }, + { + "inputJson": "{\"audioFileId\":\"xyz789\",\"reportFormat\":\"pdf\",\"includeSpectralAnalysis\":true,\"includeMetadata\":false,\"includeEventSummary\":false}", + "description": "Download a PDF report for an audio file with spectral analysis only, excluding metadata and event summaries." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "audio-processing.analyzeAlert", + "description": "This tool accepts audio recordings suspected of containing security alert signals or suspicious acoustic events. It analyzes audio features such as patterns, frequency signatures, and anomalies, detecting and classifying alert sounds like alarms, sirens, or distress calls. The output is a structured report indicating detected alert types, confidence scores, timestamps, and alert severity levels.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioData", + "type": "string", + "description": "Base64-encoded audio file or URL to audio recording for analysis", + "required": true, + "defaultValue": "" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Format of the audio input such as 'wav', 'mp3', or 'flac'", + "required": true, + "defaultValue": "wav" + }, + { + "name": "sensitivityLevel", + "type": "number", + "description": "Sensitivity of alert detection, from 0 (lowest) to 1 (highest)", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "detectMultipleAlerts", + "type": "boolean", + "description": "Whether to detect and report multiple alert types in the audio", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for voice alert recognition if applicable (e.g., 'en', 'es')", + "required": false, + "defaultValue": "en" + }, + { + "name": "timeRangeStart", + "type": "number", + "description": "Start time in seconds to analyze within the audio clip", + "required": false, + "defaultValue": "0" + }, + { + "name": "timeRangeEnd", + "type": "number", + "description": "End time in seconds to analyze within the audio clip; 0 means until the end", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report containing detected alert types, confidence scores, timestamps, severity ratings, and optional transcription for voice alerts." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automatically identify and classify security-relevant alert sounds within audio recordings, such as monitoring alarm systems, public safety announcements, or emergency calls. Ideal for real-time surveillance audio streams or post-incident forensic audio analysis.", + "limitations": "Cannot guarantee detection accuracy in highly noisy or poor quality audio. May have reduced performance for unknown or novel alert types not in the training data. Limited language support for voice alert transcription.", + "examples": [ + "Analyze a factory alarm recording to identify if a fire or security alert was triggered.", + "Scan public area audio streams to detect emergency sirens or distress calls automatically.", + "Review a recorded security alert audio to classify alarm type and verify alert validity." + ] + }, + "tags": [ + "audio", + "security", + "alert detection", + "alarm recognition", + "acoustic analysis", + "emergency", + "AI analysis" + ], + "examples": [ + { + "inputJson": "{\"audioData\":\"base64_audio_string_here\",\"audioFormat\":\"wav\",\"sensitivityLevel\":0.8,\"detectMultipleAlerts\":true,\"language\":\"en\",\"timeRangeStart\":0,\"timeRangeEnd\":0}", + "description": "Analyze a WAV audio clip for multiple alert sounds with high sensitivity." + }, + { + "inputJson": "{\"audioData\":\"https://example.com/alert_recording.mp3\",\"audioFormat\":\"mp3\",\"sensitivityLevel\":0.6,\"detectMultipleAlerts\":false,\"language\":\"en\",\"timeRangeStart\":10,\"timeRangeEnd\":60}", + "description": "Analyze a section between 10s and 60s of an MP3 alert recording for a single alert type." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "audio-processing.analyzeNotification", + "description": "Analyzes an audio file containing a notification message to extract key speech characteristics such as speech rate, clarity, emotional tone, and detects background noise or interruptions. Takes an audio input and optional language setting, then returns a detailed analysis report suitable for improving notification audio quality or understanding user engagement.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFile", + "type": "string", + "description": "Path or URL to the audio file containing the notification message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the notification audio for accurate speech and emotion recognition (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeEmotionAnalysis", + "type": "boolean", + "description": "Whether to analyze and return the emotional tone of the speaker in the notification.", + "required": false, + "defaultValue": "true" + }, + { + "name": "noiseSensitivityThreshold", + "type": "number", + "description": "Threshold (0-1) to detect and flag background noise levels considered significant in the audio.", + "required": false, + "defaultValue": "0.5" + } + ], + "returns": { + "type": "object", + "description": "A detailed report object including speech rate (wpm), clarity score (0-1), dominant emotions detected, noise level, and flags for audio interruptions or anomalies." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the quality and characteristics of an audio notification message to inform improvements in communication clarity, user engagement, or troubleshooting audio issues. It helps to identify speaking speed, emotional tone, and audio clarity to enhance notification effectiveness.", + "limitations": "This tool does not transcribe the notification content into text and may have reduced accuracy with very poor audio quality or highly accented speech.", + "examples": [ + "Analyze this notification audio file for speech clarity and emotions.", + "Check the noise levels and speech rate of the provided alert message audio.", + "Provide a detailed report on the audio notification to improve its effectiveness." + ] + }, + "tags": [ + "audio", + "analysis", + "notification", + "speech", + "emotion", + "quality", + "noise", + "communication" + ], + "examples": [ + { + "inputJson": "{\"audioFile\":\"https://example.com/audio/notification1.wav\",\"language\":\"en\",\"includeEmotionAnalysis\":true,\"noiseSensitivityThreshold\":0.4}", + "description": "Analyze an English notification audio with emotion analysis enabled and moderate noise detection sensitivity." + }, + { + "inputJson": "{\"audioFile\":\"/local/path/alert_message.mp3\",\"language\":\"es\",\"includeEmotionAnalysis\":false}", + "description": "Analyze a Spanish notification audio without emotion analysis and default noise threshold." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "audio-processing.analyzeCSV", + "description": "Analyzes audio feature data provided in CSV format, extracting statistical summaries and patterns such as average amplitude, frequency distribution, and tempo variability. Accepts CSV input representing pre-extracted audio features and returns structured JSON analysis results for further audio research or editing insights.", + "category": "audio-processing", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "CSV formatted string containing audio feature data with headers (e.g., amplitude, frequency)", + "required": true, + "defaultValue": "" + }, + { + "name": "featureColumns", + "type": "array", + "description": "List of column names to analyze within the CSV data", + "required": false, + "defaultValue": "[]" + }, + { + "name": "statistics", + "type": "array", + "description": "Types of statistical measures to compute (e.g., mean, median, stddev)", + "required": false, + "defaultValue": "[\"mean\",\"median\",\"stddev\"]" + }, + { + "name": "filterThresholds", + "type": "object", + "description": "Optional numeric thresholds to filter rows by features before analysis, as key-value pairs of feature and minimum value", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to include data visualizations such as histograms or boxplots as base64 encoded images", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object summarizing requested statistics for each specified audio feature column, optionally including visualizations as base64 encoded image strings" + }, + "aiAgent": { + "useCase": "Use this tool when you have audio feature data organized in CSV format and want to perform statistical analyses and pattern extraction to inform audio editing, research, or signal characterization tasks. It helps convert raw numerical audio features into actionable insights.", + "limitations": "This tool does not perform audio signal processing or feature extraction from raw audio files; it only analyzes pre-extracted data in CSV form. It also does not interpret semantic audio content or produce audio output.", + "examples": [ + "Analyze mean and standard deviation of amplitude and frequency features from a CSV of audio data.", + "Generate visual summaries of tempo and loudness distributions from feature CSV.", + "Filter and analyze frequency components above a certain threshold and get median values for each." + ] + }, + "tags": [ + "audio", + "analysis", + "CSV", + "statistics", + "feature-extraction", + "visualization", + "signal-processing" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"time,amplitude,frequency,tempo\\n0.00,0.5,440,120\\n0.01,0.6,445,121\\n0.02,0.55,438,119\",\"featureColumns\":[\"amplitude\",\"frequency\"],\"statistics\":[\"mean\",\"stddev\"],\"filterThresholds\":{},\"includeVisualizations\":false}", + "description": "Analyze mean and standard deviation statistics for amplitude and frequency columns from a simple CSV data string." + }, + { + "inputJson": "{\"csvData\":\"time,amplitude,frequency,tempo\\n0.00,0.5,440,120\\n0.01,0.6,445,121\\n0.02,0.55,438,119\",\"featureColumns\":[\"tempo\"],\"statistics\":[\"median\"],\"filterThresholds\":{\"frequency\":440},\"includeVisualizations\":true}", + "description": "Analyze median tempo only for rows where frequency is at least 440 Hz and include visualizations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "audio-processing.analyzeOrder", + "description": "Analyzes audio recordings of customer orders to extract and transcribe ordered items, quantities, and special requests. Accepts audio file inputs and applies speech recognition with contextual business order vocabulary. Outputs a structured order object listing items, counts, and any additional instructions derived from the audio.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFileUrl", + "type": "string", + "description": "URL or path of the audio file containing the customer's order recording to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language spoken in the audio file to optimize transcription accuracy (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "vocabularyContext", + "type": "array", + "description": "A list of business-specific terms and product names to enhance recognition accuracy during analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Format of the audio file if not inferable from URL (e.g., 'wav', 'mp3').", + "required": false, + "defaultValue": "" + }, + { + "name": "maxDurationSeconds", + "type": "number", + "description": "Maximum audio duration in seconds to process to avoid extremely long inputs.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON containing extracted order details including items, quantities, special instructions, and confidence scores for each extracted component." + }, + "aiAgent": { + "useCase": "Use this tool when you have audio recordings of verbal customer orders that need to be converted into digital structured order data automatically. This is useful for automating order entry from call centers, voice ordering apps, or recorded business calls to streamline processing and reduce manual transcription errors.", + "limitations": "The tool depends on the audio quality and clarity of speech. It may struggle with strong accents, overlapping speech, or background noise. It cannot confirm orders or handle payments and is limited to extraction and transcription tasks only.", + "examples": [ + "Analyze this customer phone order audio file to generate the order items and quantities.", + "Extract structured order information from a voicemail recording left by a customer.", + "Transcribe and parse a voice ordering session audio to a JSON order format." + ] + }, + "tags": [ + "audio-processing", + "order-analysis", + "speech-to-text", + "business", + "customer-orders", + "transcription", + "AI", + "voice-recognition" + ], + "examples": [ + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/audio/order123.wav\",\"language\":\"en-US\",\"vocabularyContext\":[\"coffee\",\"large\",\"milk\",\"sugar\",\"croissant\"]}", + "description": "Analyzing a coffee shop order audio to identify items and special requests." + }, + { + "inputJson": "{\"audioFileUrl\":\"https://storage.example.com/callcenter/customer42_order.mp3\",\"maxDurationSeconds\":180}", + "description": "Extracting order details from a call center recording with default vocabulary and max 3 minute duration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Order", + "context": null + } + }, + { + "name": "audio-processing.analyzeLead", + "description": "Analyzes audio recordings of business leads' voice samples to extract characteristics such as sentiment, confidence, and engagement level. Accepts audio files in common formats and outputs a structured report indicating key vocal attributes that may influence lead qualification and prioritization.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "Path or URL to the audio file containing the lead's voice sample for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language spoken in the audio sample, to optimize processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "targetAttributes", + "type": "array", + "description": "Specific vocal attributes to analyze, such as ['sentiment','confidence','engagement']. If empty, analyzes all supported attributes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sensitivityThreshold", + "type": "number", + "description": "Threshold (0 to 1) to determine sensitivity in detecting vocal cues, where higher values filter less confident detections.", + "required": false, + "defaultValue": "0.5" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing detected vocal attributes with quantitative scores and qualitative interpretations." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to evaluate audio recordings of potential business leads to gain insights into their emotional state and engagement levels. It supports prioritizing leads by analyzing vocal cues that indicate interest or hesitation.", + "limitations": "Cannot accurately interpret content or context beyond vocal attributes. Background noise or poor audio quality may affect accuracy. Does not perform speech-to-text transcription.", + "examples": [ + "Analyze the audio of a lead call to assess their confidence and interest levels.", + "Identify leads that sound highly engaged based on their voice characteristics.", + "Generate a summary report of emotional sentiment for a batch of lead audio files." + ] + }, + "tags": [ + "audio-processing", + "lead-analysis", + "sentiment-analysis", + "business-intelligence", + "voice-analysis" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"https://example.com/audio/lead123.wav\",\"language\":\"en\",\"targetAttributes\":[\"sentiment\",\"confidence\"],\"sensitivityThreshold\":0.6}", + "description": "Analyze the sentiment and confidence level from an English lead's audio recording." + }, + { + "inputJson": "{\"audioFilePath\":\"/local/path/lead_call.mp3\",\"targetAttributes\":[],\"sensitivityThreshold\":0.5}", + "description": "Analyze all supported vocal attributes from a locally stored lead call audio file using default settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "audio-processing.sendMessage", + "description": "This tool accepts an audio message or audio content and sends it as a message to a specified recipient via an integrated communication channel. It processes the provided audio input, converts or encodes it as needed, attaches optional metadata like captions or priority flags, and delivers the message to the target user or device, returning confirmation of delivery status.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioContent", + "type": "string", + "description": "Audio data to send, encoded as a base64 string or URL to an audio file.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Identifier of the message recipient, such as a user ID or device address.", + "required": true, + "defaultValue": "" + }, + { + "name": "caption", + "type": "string", + "description": "Optional text caption to accompany the audio message.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Message priority level: e.g., 'normal', 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "sendTimestamp", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule when to send the message.", + "required": false, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Communication channel to use (e.g., 'chat', 'email', 'pushNotification').", + "required": false, + "defaultValue": "chat" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, including success flag, message ID, and any error details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically send an audio message as part of an AI workflow, such as delivering voice notifications, audio alerts, or personalized audio messages to users or devices through supported communication channels.", + "limitations": "This tool does not record or generate audio content; it only sends preexisting audio data. It cannot guarantee delivery over external communication networks nor perform retransmissions automatically.", + "examples": [ + "Send a voice alert audio clip to a user's chat ID.", + "Deliver a recorded audio message with a caption via push notification.", + "Schedule an audio message to be sent later to a device ID." + ] + }, + "tags": [ + "audio", + "messaging", + "communication", + "send", + "notification", + "voice", + "media" + ], + "examples": [ + { + "inputJson": "{\"audioContent\":\"data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEA...\",\"recipientId\":\"user123\",\"caption\":\"Here is your alert\",\"priority\":\"high\",\"channel\":\"chat\"}", + "description": "Send a high priority audio alert message to user123 via chat channel." + }, + { + "inputJson": "{\"audioContent\":\"https://example.com/audio/greeting.mp3\",\"recipientId\":\"device456\",\"caption\":\"Good morning!\",\"channel\":\"pushNotification\"}", + "description": "Send a greeting audio message as a push notification to device456." + }, + { + "inputJson": "{\"audioContent\":\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAA...\",\"recipientId\":\"user789\",\"sendTimestamp\":\"2024-06-01T08:00:00Z\"}", + "description": "Schedule an audio message to user789 at a specific future time." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "audio-processing.draftEmail", + "description": "This tool accepts audio recordings of verbal instructions or meeting snippets and transcribes the spoken content using AI-driven speech recognition. It then analyzes the transcript to draft a clear, concise email based on key points, tone, and intent extracted from the audio. The output is a structured email draft including subject, body text, and optional closing remarks.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFileUrl", + "type": "string", + "description": "URL of the audio file (in common formats like MP3, WAV) containing the spoken content to transcribe and draft an email from.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en-US') of the spoken audio to improve transcription accuracy.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "emailTone", + "type": "string", + "description": "Preferred tone of the drafted email such as 'formal', 'informal', 'friendly', or 'professional'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeSubject", + "type": "boolean", + "description": "Whether to generate an email subject line based on the audio content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in characters) of the drafted email body to control detail level.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted email components: subject (string), body (string), and optional closing remarks (string)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert verbal communications or audio notes into a written email draft. It helps quickly generate summaries or requests conveyed orally into structured email format, saving time and ensuring clarity.", + "limitations": "This tool may struggle with very poor audio quality, multiple overlapping speakers, or niche jargon not well captured by speech recognition. It cannot send emails or perform user-specific personalization beyond tone adjustment.", + "examples": [ + "Please draft a professional email summarizing the client meeting based on this audio recording.", + "Create an informal email draft inviting team members to the weekly standup from the provided voice note.", + "Generate a concise email subject and body from the audio snippet explaining the project delay." + ] + }, + "tags": [ + "audio", + "email", + "drafting", + "speech-to-text", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/meeting_snippet.wav\",\"language\":\"en-US\",\"emailTone\":\"professional\",\"includeSubject\":true,\"maxLength\":600}", + "description": "Draft a professional email with subject from an English meeting audio snippet, limited to 600 characters." + }, + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/voice_note.mp3\",\"emailTone\":\"informal\",\"includeSubject\":false}", + "description": "Generate an informal email body only (no subject) from a short voice note." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "audio-processing.buildServer", + "description": "This tool automates the setup and configuration of a dedicated audio processing server environment. It accepts parameters such as server hardware specs, operating system choice, and required audio-processing libraries. It installs and configures all components, outputting a server configuration summary with access details and installed software versions.", + "category": "audio-processing", + "parameters": [ + { + "name": "serverSpecs", + "type": "object", + "description": "Specifications for the server hardware including CPU, RAM, storage, and GPU if applicable.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "The operating system to install on the server, e.g., Ubuntu 22.04, CentOS 8.", + "required": true, + "defaultValue": "Ubuntu 22.04" + }, + { + "name": "audioLibraries", + "type": "array", + "description": "List of audio processing libraries and frameworks to install, e.g., FFmpeg, SoX, TensorFlow for audio.", + "required": false, + "defaultValue": "[\"FFmpeg\",\"SoX\"]" + }, + { + "name": "serverRegion", + "type": "string", + "description": "Preferred server region or data center location for deployment.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableSecurityHardening", + "type": "boolean", + "description": "Whether to enable security hardening measures like firewall setup, disabling root SSH login.", + "required": false, + "defaultValue": "true" + }, + { + "name": "remoteAccessUser", + "type": "string", + "description": "Username to configure for remote access and management.", + "required": true, + "defaultValue": "audioadmin" + }, + { + "name": "remoteAccessSshKey", + "type": "string", + "description": "Optional SSH public key for secure access setup.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server setup summary, access credentials, installed software versions, and validation results." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision or automate the deployment of a server environment optimized for audio processing tasks, ensuring required libraries and configurations are pre-installed for immediate use.", + "limitations": "This tool does not perform cloud provider account setup, billing configuration, or handle physical hardware purchases; it assumes virtualized or cloud server environments.", + "examples": [ + "Set up an Ubuntu server with 16 CPU cores, 64GB RAM, GPU support, and install FFmpeg and TensorFlow for audio processing.", + "Build an audio server in the US-East region with security hardening enabled and configure remote access for user 'soundtech'.", + "Deploy a CentOS 8 server with SoX and custom audio library dependencies for batch audio analysis workflows." + ] + }, + "tags": [ + "audio-processing", + "server-setup", + "automation", + "infrastructure", + "deployment", + "configuration", + "devops" + ], + "examples": [ + { + "inputJson": "{\"serverSpecs\":{\"cpu\":\"16 cores\",\"ram\":\"64GB\",\"storage\":\"1TB SSD\",\"gpu\":\"NVIDIA RTX 3080\"},\"operatingSystem\":\"Ubuntu 22.04\",\"audioLibraries\":[\"FFmpeg\",\"TensorFlow\"],\"serverRegion\":\"us-east-1\",\"enableSecurityHardening\":true,\"remoteAccessUser\":\"audioadmin\",\"remoteAccessSshKey\":\"ssh-rsa AAAAB3Nza...user@example.com\"}", + "description": "Provision a powerful Ubuntu audio server with GPU support and essential audio libraries in US East with secure access." + }, + { + "inputJson": "{\"serverSpecs\":{\"cpu\":\"8 cores\",\"ram\":\"32GB\",\"storage\":\"500GB SSD\"},\"operatingSystem\":\"CentOS 8\",\"audioLibraries\":[\"SoX\"],\"serverRegion\":\"eu-central-1\",\"enableSecurityHardening\":false,\"remoteAccessUser\":\"soundtech\",\"remoteAccessSshKey\":\"\"}", + "description": "Build a CentOS 8 server for audio processing with SoX library, without security hardening, for a European data center." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "audio-processing.composeReport", + "description": "This tool accepts one or more audio files containing spoken content, transcribes the speech using AI, analyzes key themes and sentiments, and compiles a structured textual report summarizing the audio content. The report includes transcript excerpts, detected topics, sentiment analysis, and recommended action points.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFiles", + "type": "array", + "description": "List of URLs or base64-encoded strings representing audio files to process", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the spoken audio (e.g., 'en', 'es') to improve transcription accuracy", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to analyze and include sentiment insights in the report", + "required": false, + "defaultValue": "true" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate number of sentences to include in the report summary", + "required": false, + "defaultValue": "5" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "Optional list of keywords to emphasize and track within the report", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the compiled report text, full transcript, detected topics, sentiment scores, and action point suggestions" + }, + "aiAgent": { + "useCase": "Use this tool when needing to create comprehensive summary reports from multiple spoken audio sources such as meetings, interviews, or podcasts. It helps convert unstructured audio content into structured, actionable textual insights automatically, saving time and providing quick overviews.", + "limitations": "The tool may have reduced accuracy with poor audio quality, heavy accents, or overlapping speech. It cannot replace detailed human note-taking or context-specific interpretations beyond the AI's analytical capabilities.", + "examples": [ + "Generate a meeting summary report from these team discussion recordings.", + "Compose a report summarizing key points and sentiments from an interview audio file.", + "Create an executive summary highlighting action items from a podcast episode." + ] + }, + "tags": [ + "audio", + "transcription", + "reporting", + "summarization", + "sentiment-analysis", + "meeting", + "interview", + "podcast" + ], + "examples": [ + { + "inputJson": "{\"audioFiles\":[\"https://example.com/audio/meeting1.mp3\"],\"language\":\"en\",\"includeSentimentAnalysis\":true,\"summaryLength\":7,\"highlightKeywords\":[\"budget\",\"deadline\"]}", + "description": "Generate a report summarizing an English team meeting audio including sentiment and highlighting budget and deadline keywords." + }, + { + "inputJson": "{\"audioFiles\":[\"data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEAESsAACJWAAACABAAZGF0YcQAAAAA\"],\"language\":\"en\",\"includeSentimentAnalysis\":false,\"summaryLength\":3,\"highlightKeywords\":[]}", + "description": "Create a short summary report from a base64 encoded audio snippet without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "audio-processing.buildCommit", + "description": "This tool accepts audio source code changes and related commit message metadata to generate a structured, actionable source code commit for audio processing projects. It processes input diffs and metadata to build a complete commit object including message, author, timestamp, and diff summary, suitable for version control integration in audio processing workflows.", + "category": "audio-processing", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "Descriptive commit message summarizing the changes made in the audio processing codebase.", + "required": true, + "defaultValue": "" + }, + { + "name": "diffContent", + "type": "string", + "description": "The unified diff string representing the source code changes in the audio processing project.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author making the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the commit author.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp when the commit is made. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "relatedIssueIds", + "type": "array", + "description": "List of related issue or ticket IDs to associate with the commit, if any.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A structured commit object containing commit message, author info, timestamp, diff summary, and optionally linked issue IDs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create or assemble a source code commit object for an audio processing project, combining code diffs with commit metadata to produce commits that can be integrated with version control systems and project management workflows.", + "limitations": "This tool does not perform diff generation or source code analysis; it requires the diff content as input. It also doesn't push commits to repositories or handle merge conflicts.", + "examples": [ + "> Generate a commit object from a provided diff and commit message for an audio filter update", + " > Create a commit structure linking code changes to multiple issue IDs in an audio processing SDK", + " > Build a commit record including author and timestamp information for versioning audio processing scripts" + ] + }, + "tags": [ + "audio-processing", + "version-control", + "commit-building", + "source-code", + "diff-processing", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Fix noise reduction algorithm for clearer audio output\",\"diffContent\":\"diff --git a/noise_reduction.py b/noise_reduction.py\\nindex e69de29..4b825dc 100644\\n--- a/noise_reduction.py\\n+++ b/noise_reduction.py\\n@@ -0,0 +1,10 @@\\n+def reduce_noise(audio_signal):\\n+ # improved algorithm implementation\\n+ pass\\n\",\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane.doe@example.com\",\"timestamp\":\"2024-05-01T10:30:00Z\",\"relatedIssueIds\":[\"AUDIO-1234\"]}", + "description": "Build commit object for an updated noise reduction algorithm in an audio processing project with author info and related issue." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "audio-processing.buildAPI", + "description": "This tool generates a custom RESTful API specification and server-side code for audio processing tasks. It accepts user-defined audio processing operations and parameters, then builds a ready-to-deploy API interface that performs those audio processes on input audio files and returns processed audio outputs or metadata.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioOperations", + "type": "array", + "description": "List of audio processing operations to include in the API (e.g., noiseReduction, normalization, featureExtraction). Each operation defines the processing functionality to expose.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language to generate the API server code in, such as 'Python' or 'NodeJS'.", + "required": true, + "defaultValue": "Python" + }, + { + "name": "framework", + "type": "string", + "description": "The API framework to use for the generated server code (e.g., Flask, Express).", + "required": false, + "defaultValue": "Flask" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether to include token-based authentication in the API for secure access.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output audio format that the API should produce after processing (e.g., 'wav', 'mp3').", + "required": false, + "defaultValue": "wav" + }, + { + "name": "maxAudioDuration", + "type": "number", + "description": "Maximum audio file duration (in seconds) that the API will accept for processing.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full API specification (OpenAPI format) and server source code files as a zipped archive or code string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly create an audio processing API backend tailored to specific operations and deployment requirements. It helps automate boilerplate server code, API definitions, and integration of AI audio processing steps for seamless service deployment.", + "limitations": "It cannot deploy the API or manage server infrastructure; generated code may require manual adjustments for complex custom audio processing beyond predefined operations.", + "examples": [ + "Generate a Python Flask API with noise reduction and normalization endpoints, supporting MP3 output.", + "Build a NodeJS Express API that extracts audio features with token authentication.", + "Create a simple API allowing clients to send up to 5-minute WAV audio files for processing via normalization." + ] + }, + "tags": [ + "audio-processing", + "API", + "code-generation", + "audio-editing", + "machine-learning", + "rest-api" + ], + "examples": [ + { + "inputJson": "{\"audioOperations\":[\"noiseReduction\",\"normalization\"],\"programmingLanguage\":\"Python\",\"framework\":\"Flask\",\"authenticationRequired\":true,\"outputFormat\":\"mp3\",\"maxAudioDuration\":180}", + "description": "Generate a Python Flask API with noise reduction and normalization endpoints, token authentication enabled, outputting MP3 format and accepting audio up to 3 minutes." + }, + { + "inputJson": "{\"audioOperations\":[\"featureExtraction\"],\"programmingLanguage\":\"NodeJS\",\"framework\":\"Express\",\"authenticationRequired\":false,\"outputFormat\":\"wav\",\"maxAudioDuration\":300}", + "description": "Build a NodeJS Express API for audio feature extraction without authentication, allowing WAV output and accepting up to 5 minutes audio duration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "audio-processing.generateParagraph", + "description": "Generates a coherent textual paragraph describing the content, mood, and key elements of an input audio clip. The tool accepts an audio file (WAV or MP3) and uses AI to analyze its features and convert them into a descriptive paragraph summarizing the audio's characteristics, context, or emotions conveyed.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "Path or URL to the audio file to analyze and describe", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output description text (e.g., 'en' for English)", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated paragraph in number of words", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeMoodDescription", + "type": "boolean", + "description": "Whether to include descriptions of mood and emotion perceived from the audio", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeInstruments", + "type": "boolean", + "description": "Whether to attempt to identify and mention prominent instruments or sounds", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'paragraph' which holds the generated descriptive paragraph as a string." + }, + "aiAgent": { + "useCase": "Use this tool when needing a natural language summary or description of the content and feel of an audio clip, such as in music libraries, podcast summaries, or audio archives to help with indexing, search, or user guidance. It is useful for converting audio features into human-readable text.", + "limitations": "The tool cannot transcribe speech or lyrics accurately, nor generate exact metadata like artist or track names. It provides high-level descriptive summaries but may not recognize very abstract or noisy audio content.", + "examples": [ + "Generate a paragraph describing the mood and instruments in a jazz audio clip.", + "Summarize the audio scene of a nature recording with bird sounds.", + "Create a short descriptive paragraph about a podcast intro theme music." + ] + }, + "tags": [ + "audio", + "description", + "summary", + "AI-generated text", + "music analysis", + "audio content" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"/samples/jazz_clip.mp3\",\"language\":\"en\",\"maxLength\":120,\"includeMoodDescription\":true,\"includeInstruments\":true}", + "description": "Generate an English paragraph describing a jazz music clip's mood and instruments." + }, + { + "inputJson": "{\"audioFilePath\":\"/audio/nature_forest.wav\",\"language\":\"en\",\"maxLength\":80,\"includeMoodDescription\":true,\"includeInstruments\":false}", + "description": "Describe the mood of a nature forest sound recording without listing instruments." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "audio-processing.buildTest", + "description": "This tool accepts audio files and test specification parameters to generate automated unit tests for audio processing algorithms coded in JavaScript. It analyzes the input audio and expected processing outcomes, then produces JavaScript test code that validates functionality such as filtering, normalization, or effects application, outputting a ready-to-run test suite.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "Path or URL of the input audio file to be used in the test cases.", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of audio processing test to generate, e.g., 'filter', 'normalization', 'effect'.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedOutcome", + "type": "object", + "description": "An object detailing expected results or properties after processing (e.g., frequency range, amplitude levels).", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Name of the JavaScript test framework to generate code for (e.g., 'jest', 'mocha').", + "required": false, + "defaultValue": "jest" + }, + { + "name": "additionalOptions", + "type": "object", + "description": "Optional parameters to customize test generation, such as tolerance thresholds or test case count.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript test code as a string, and metadata about the generated tests." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate unit test code for audio processing functions implemented in JavaScript, based on input audio samples and expected processing results, to speed development and improve test coverage.", + "limitations": "Cannot generate tests for audio processing code written in languages other than JavaScript. Requires well-defined expected outcomes. Does not execute the tests, only generates code.", + "examples": [ + "Generate a Jest test suite for a low-pass filter processing on a given WAV file.", + "Create unit tests validating normalization effects applied to an MP3 audio sample." + ] + }, + "tags": [ + "audio-processing", + "test-generation", + "JavaScript", + "unit-testing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"samples/input.wav\",\"testType\":\"filter\",\"expectedOutcome\":{\"frequencyRange\":[20,2000]},\"testFramework\":\"jest\",\"additionalOptions\":{\"tolerance\":0.05}}", + "description": "Generate Jest unit tests for a filter processing test on input.wav with expected frequency range 20-2000Hz and 5% tolerance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "audio-processing.generateEvent", + "description": "Generates a detailed event object representing an audio-based interaction detected within an audio stream. Accepts raw audio input or a processed feature set, analyzes it for specific sound events (like claps, speech segments, or music changes), and outputs event metadata including timestamps, event type, confidence scores, and additional context useful for audio analytics or media tagging.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioData", + "type": "string", + "description": "Base64-encoded audio data or URL to audio file to analyze for event generation", + "required": true, + "defaultValue": "" + }, + { + "name": "eventTypes", + "type": "array", + "description": "List of event types to detect in audio (e.g., ['speech', 'clap', 'music'])", + "required": false, + "defaultValue": "[\"speech\", \"clap\", \"music\"]" + }, + { + "name": "detectionThreshold", + "type": "number", + "description": "Minimum confidence score (0 to 1) for detected events to be included in the output", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "maxEvents", + "type": "number", + "description": "Maximum number of events to return, sorted by confidence descending", + "required": false, + "defaultValue": "50" + }, + { + "name": "language", + "type": "string", + "description": "Language code for speech-related event detection to improve accuracy (e.g., 'en-US')", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAudioSnippets", + "type": "boolean", + "description": "Whether to include short base64 audio snippets for each detected event in the output", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of detected audio events, each with properties such as eventType, startTime, endTime, confidence, and optionally audioSnippet base64 data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to detect and generate structured event data from raw audio content for analytics or indexing, such as detecting applause during a conference, changes between music and speech, or specific sound cues. Ideal for real-time or batch audio processing workflows requiring event tagging.", + "limitations": "This tool cannot transcribe full speech content, handle polyphonic music transcription, or detect events outside predefined types. Audio quality and noise levels may impact detection accuracy.", + "examples": [ + "Generate all speech and clap events from an uploaded audio file with confidence above 0.8.", + "Detect music segments only and include audio snippets for each event for preview purposes.", + "Limit output to top 10 most confident events in a multi-hour podcast recording." + ] + }, + "tags": [ + "audio", + "event-detection", + "analytics", + "sound-classification", + "media-tagging", + "speech-detection" + ], + "examples": [ + { + "inputJson": "{\"audioData\":\"base64EncodedAudioStringHere\",\"eventTypes\":[\"clap\",\"speech\"],\"detectionThreshold\":0.8}", + "description": "Detecting claps and speech events with high confidence from base64 audio input." + }, + { + "inputJson": "{\"audioData\":\"https://example.com/audiofile.mp3\",\"eventTypes\":[\"music\"],\"includeAudioSnippets\":true}", + "description": "Detect music segments from a remote MP3 and include snippets of detected events." + }, + { + "inputJson": "{\"audioData\":\"base64EncodedAudioStringHere\",\"maxEvents\":10}", + "description": "Generate up to 10 detected events of any type from audio data for summary analytics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "audio-processing.generateCSV", + "description": "Generates a CSV summary file containing detailed audio features extracted from input audio files. Accepts one or multiple audio files in standard formats, analyzes segments for features like duration, tempo, amplitude, and frequency statistics, and outputs a CSV file suitable for further analysis.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePaths", + "type": "array", + "description": "List of paths or URLs to audio files to process", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentDurationSeconds", + "type": "number", + "description": "Duration in seconds for splitting audio into analysis segments; 0 means analyze entire file as one segment", + "required": false, + "defaultValue": "0" + }, + { + "name": "featuresToExtract", + "type": "array", + "description": "List of audio features to extract and include per segment (e.g., 'tempo', 'rms', 'spectralCentroid')", + "required": false, + "defaultValue": "[\"tempo\",\"rms\"]" + }, + { + "name": "includeSummaryRow", + "type": "boolean", + "description": "Whether to append a summary row with averages across segments", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputDelimiter", + "type": "string", + "description": "Delimiter character used in the CSV output", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "object", + "description": "CSV formatted string containing segment-wise audio feature data with headers" + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate structured CSV reports on audio features extracted from one or more audio files for purposes like audio analysis, song feature comparison, or dataset preparation. It helps automate creation of tabular data from audio content.", + "limitations": "The tool does not perform audio transcription or advanced music information retrieval beyond basic feature extraction. It requires audio files accessible via paths or URLs. Large files may require more time and memory.", + "examples": [ + "Generate a CSV file summarizing tempo and amplitude features for the given set of audio tracks.", + "Create a CSV report splitting input audio into 5-second segments, extracting spectral centroid and RMS values.", + "Produce a CSV containing average and per-segment features for specified audio files, using semicolon as delimiter." + ] + }, + "tags": [ + "audio-processing", + "feature-extraction", + "data-generation", + "csv-export", + "audio-analysis" + ], + "examples": [ + { + "inputJson": "{\"audioFilePaths\":[\"track1.mp3\",\"track2.wav\"],\"segmentDurationSeconds\":0,\"featuresToExtract\":[\"tempo\",\"rms\"],\"includeSummaryRow\":true,\"outputDelimiter\":\",\"}", + "description": "Generate CSV summarizing tempo and RMS for two audio files as a whole." + }, + { + "inputJson": "{\"audioFilePaths\":[\"audio1.mp3\"],\"segmentDurationSeconds\":10,\"featuresToExtract\":[\"spectralCentroid\",\"rms\"],\"includeSummaryRow\":false,\"outputDelimiter\":\",\"}", + "description": "Split audio1.mp3 into 10 second segments and extract spectral centroid and RMS per segment." + }, + { + "inputJson": "{\"audioFilePaths\":[\"sample.wav\"],\"segmentDurationSeconds\":5,\"featuresToExtract\":[\"tempo\",\"rms\",\"spectralCentroid\"],\"includeSummaryRow\":true,\"outputDelimiter\":\";\"}", + "description": "Analyze sample.wav in 5 second segments, output CSV with tempo, rms, spectral centroid separated by semicolons with summary row." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "audio-processing.generateSummary", + "description": "This tool accepts audio files, typically recordings of meetings, lectures, or interviews, and generates a concise textual summary capturing key points discussed. It processes speech recognition transcripts combined with natural language understanding to provide a readable summary output highlighting main topics and decisions.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFileUrl", + "type": "string", + "description": "URL or path to the input audio file to process", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the audio content for accurate transcription (e.g., 'en', 'es')", + "required": false, + "defaultValue": "en" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired summary length in sentences", + "required": false, + "defaultValue": "5" + }, + { + "name": "transcriptionModel", + "type": "string", + "description": "Specify the speech-to-text model to use for transcription (if multiple are available)", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps associated with summary segments", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'summary' (string) with the generated textual summary and optional 'timestamps' array if requested" + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly understand the key content of longer audio recordings such as meetings, interviews, or lectures without listening to full audio. It aids note-taking, info extraction, and summarization workflows by delivering concise written summaries based on speech recognition and NLP.", + "limitations": "Accuracy depends on audio quality and language support. It may miss nuances or speaker-specific context. Not suitable for audio without clear speech or heavily accented speakers. Summaries are approximate and not verbatim transcripts.", + "examples": [ + "Generate a 5-sentence summary of this English meeting recording.", + "Summarize the key points from a Spanish lecture audio file.", + "Provide a concise summary with timestamps for a podcast interview." + ] + }, + "tags": [ + "audio-processing", + "summarization", + "speech-to-text", + "meeting", + "lecture", + "interview", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/audio/meeting1.mp3\",\"language\":\"en\",\"summaryLength\":5,\"includeTimestamps\":false}", + "description": "Summarize English meeting audio into 5 sentences without timestamps" + }, + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/audio/lecture_es.wav\",\"language\":\"es\",\"summaryLength\":7,\"includeTimestamps\":true}", + "description": "Generate a 7-sentence summary with timestamps from a Spanish lecture recording" + }, + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/audio/podcast_interview.mp3\",\"language\":\"en\",\"summaryLength\":4,\"includeTimestamps\":true}", + "description": "Create a 4-sentence summary with timestamps for an English podcast interview" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "audio-processing.generateMetric", + "description": "Generates detailed analytics metrics from an input audio file such as loudness levels, speech rate, and frequency distribution. Accepts audio file URL or base64 data and processes it to output structured metrics for audio quality and content analysis.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioSource", + "type": "string", + "description": "URL or base64-encoded string of the audio file to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricsRequested", + "type": "array", + "description": "List of metrics to generate, e.g., ['loudness','speechRate','frequencyDistribution'].", + "required": false, + "defaultValue": "[\"loudness\",\"speechRate\",\"frequencyDistribution\"]" + }, + { + "name": "language", + "type": "string", + "description": "Language spoken in audio to improve speech-related metric accuracy (ISO 639-1 code).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSilence", + "type": "boolean", + "description": "Whether to include silence detection metrics in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Sample rate in Hz to resample audio for processing; defaults to original.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the requested audio metrics with keys for each metric and their numeric or structured values." + }, + "aiAgent": { + "useCase": "Use this tool when detailed quantitative analysis of audio files is required, such as evaluating podcast audio quality, measuring speech properties for transcription prep, or extracting frequency content for audio engineering. It is especially useful when multiple specific audio metrics are needed in one summary output.", + "limitations": "Does not perform speech-to-text transcription or genre classification. Accuracy may depend on audio quality and specified language. Real-time streaming analysis is not supported.", + "examples": [ + "Generate loudness and speech rate metrics from a podcast episode audio URL.", + "Analyze frequency distribution of an uploaded voice recording in English.", + "Include silence metrics when analyzing a recorded interview audio base64 string." + ] + }, + "tags": [ + "audio", + "analytics", + "metrics", + "quality", + "speech", + "frequency", + "loudness" + ], + "examples": [ + { + "inputJson": "{\"audioSource\":\"https://example.com/audio/podcast-episode.mp3\",\"metricsRequested\":[\"loudness\",\"speechRate\"]}", + "description": "Generate loudness and speech rate metrics from a podcast episode audio URL." + }, + { + "inputJson": "{\"audioSource\":\"data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEA...\",\"metricsRequested\":[\"frequencyDistribution\"],\"language\":\"en\"}", + "description": "Analyze frequency distribution of an uploaded English voice recording in base64 format." + }, + { + "inputJson": "{\"audioSource\":\"https://example.com/audio/interview.wav\",\"includeSilence\":true}", + "description": "Include silence detection metrics when analyzing a recorded interview audio file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "audio-processing.createParagraph", + "description": "This tool accepts audio input containing spoken content and generates a well-structured textual paragraph that summarizes or transcribes the main ideas from the audio. It processes the speech content, optionally applying summarization or punctuation insertion, and outputs a coherent text paragraph representing the audio's main message.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioInput", + "type": "string", + "description": "Base64-encoded audio data or URL to audio file containing spoken content to process.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the spoken audio (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired maximum length of the output paragraph in words; if 0, full transcription is returned.", + "required": false, + "defaultValue": "100" + }, + { + "name": "punctuation", + "type": "boolean", + "description": "Whether to include proper punctuation and capitalization in the output paragraph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include approximate timestamps for key sentences in the paragraph (as metadata).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated paragraph text and optional metadata such as timestamps or confidence score." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives raw audio data containing speech and needs to produce a clear, readable text paragraph summarizing or transcribing the content for downstream processing, display, or analysis. Particularly useful for summarizing meetings, interviews, or audio notes.", + "limitations": "Cannot perfectly transcribe highly noisy or multi-speaker overlapping audio; quality depends on audio clarity and language model support. Does not perform multi-language translation or detailed speaker diarization.", + "examples": [ + "Generate a brief summary paragraph from a 2-minute English audio interview.", + "Create a punctuation-correct paragraph transcription from a single-speaker podcast clip.", + "Produce a textual paragraph capturing main points spoken in a customer service call recording." + ] + }, + "tags": [ + "audio", + "speech-to-text", + "transcription", + "summarization", + "content-extraction", + "paragraph-generation", + "audio-processing" + ], + "examples": [ + { + "inputJson": "{\"audioInput\":\"data:audio/wav;base64,UklGRh...\",\"language\":\"en\",\"summaryLength\":100,\"punctuation\":true}", + "description": "Create a 100-word punctuated paragraph summarizing English audio interview." + }, + { + "inputJson": "{\"audioInput\":\"https://example.com/audio/meeting.wav\",\"language\":\"en\",\"summaryLength\":0,\"punctuation\":true}", + "description": "Full transcription paragraph with punctuation from meeting audio URL." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "audio-processing.createEvent", + "description": "This tool analyzes an input audio file to automatically detect and create event markers based on audio characteristics such as volume peaks, silences, and spectral changes. It accepts audio files in common formats and outputs a structured list of timestamped events, enabling precise annotation for editing or analytics.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "The local or accessible path to the audio file to analyze for event detection.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionThreshold", + "type": "number", + "description": "Threshold for triggering an event based on audio amplitude or feature intensity, range 0.0 to 1.0.", + "required": false, + "defaultValue": "0.6" + }, + { + "name": "minEventDurationMs", + "type": "number", + "description": "Minimum duration in milliseconds for an audio segment to be considered a valid event.", + "required": false, + "defaultValue": "100" + }, + { + "name": "eventTypes", + "type": "array", + "description": "List of event types to detect such as ['peak', 'silence', 'onset'].", + "required": false, + "defaultValue": "[\"peak\",\"silence\",\"onset\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the event output data, such as 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of detected events, each with timestamp (in seconds), event type, and optional confidence score." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically segment an audio file into meaningful events for further processing such as editing, automated analytics, or notification triggers. Helpful for applications that require precise timing information of occurrences within audio recordings.", + "limitations": "Cannot detect highly complex or semantic events such as speech content or musical notes. It operates on low-level audio features only; quality depends on audio clarity and parameter tuning.", + "examples": [ + "Detect all peak and silence events in a podcast recording to create chapter markers.", + "Identify onset events in a music track for beat synchronization.", + "Generate a CSV list of silence events within an interview audio for editing purposes." + ] + }, + "tags": [ + "audio-processing", + "event-detection", + "segmentation", + "analytics", + "audio-editing" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"/audio/conference_call.wav\",\"detectionThreshold\":0.5,\"eventTypes\":[\"peak\",\"silence\"],\"outputFormat\":\"json\"}", + "description": "Detect peak and silence events in a conference call recording with moderate sensitivity." + }, + { + "inputJson": "{\"audioFilePath\":\"/music/song.mp3\",\"minEventDurationMs\":50,\"eventTypes\":[\"onset\"],\"outputFormat\":\"json\"}", + "description": "Detect rapid onset events in a music track to identify beats or notes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "audio-processing.createContainer", + "description": "Creates an audio processing container environment to host and manage AI audio processing tasks. Accepts configuration parameters for container size, resource allocation (CPU, memory), and audio formats supported. Outputs a container ID and metadata detailing the environment setup, ready for audio processing jobs deployment.", + "category": "audio-processing", + "parameters": [ + { + "name": "containerName", + "type": "string", + "description": "A human-readable name for the container instance for identification purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores allocated to the container for processing tasks.", + "required": true, + "defaultValue": "2" + }, + { + "name": "memoryMB", + "type": "number", + "description": "Amount of RAM in megabytes allocated to the container environment.", + "required": true, + "defaultValue": "4096" + }, + { + "name": "supportedAudioFormats", + "type": "array", + "description": "List of audio file formats (e.g., mp3, wav, flac) that the container will natively support for processing.", + "required": false, + "defaultValue": "[\"wav\",\"mp3\"]" + }, + { + "name": "enableGpuAcceleration", + "type": "boolean", + "description": "Flag to enable GPU acceleration support within the container if available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "networkAccess", + "type": "boolean", + "description": "Whether the container should have network access for downloading models or uploading processed files.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the container ID, configuration metadata, and status information indicating successful creation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to provision a dedicated, configurable container environment optimized for AI-driven audio processing workloads. It is especially useful for deploying isolated, scalable pipelines handling formats and resource requirements tailored to audio analysis or editing tasks.", + "limitations": "This tool does not perform audio processing itself, only creates the container infrastructure. It does not manage container lifecycle beyond creation and cannot modify resources after creation.", + "examples": [ + "Create a container named 'AudioProc01' with 4 CPU cores, 8GB RAM, supporting WAV and FLAC formats, with GPU enabled.", + "Provision a minimal container with 2 cores, 4GB RAM, default audio formats, and no network access for offline processing.", + "Create a container configured for high-throughput audio jobs with GPU acceleration and extended format support." + ] + }, + "tags": [ + "audio", + "container", + "infrastructure", + "resource-management", + "AI", + "processing", + "audio-formats", + "GPU" + ], + "examples": [ + { + "inputJson": "{\"containerName\":\"AudioProc01\",\"cpuCores\":4,\"memoryMB\":8192,\"supportedAudioFormats\":[\"wav\",\"flac\"],\"enableGpuAcceleration\":true,\"networkAccess\":true}", + "description": "Create a high-performance container configured for WAV and FLAC audio processing with GPU acceleration enabled." + }, + { + "inputJson": "{\"containerName\":\"LightweightAudio\",\"cpuCores\":2,\"memoryMB\":4096}", + "description": "Provision a basic container with default audio formats and moderate resources for lightweight audio tasks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "audio-processing.createAlert", + "description": "This tool analyzes input audio streams or audio files to detect specific predefined audio cues such as alarms, glass breaking, gunshots, or other security-related sounds. It processes the audio using AI models trained to recognize these sounds and generates a structured alert report indicating detected threats with timestamps and confidence levels.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioSource", + "type": "string", + "description": "The path or URL of the audio file or live stream to analyze for security alerts.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertTypes", + "type": "array", + "description": "An array of strings specifying which types of security-related sounds to detect, e.g., ['alarm','gunshot','glassBreak'].", + "required": true, + "defaultValue": "[\"alarm\",\"gunshot\",\"glassBreak\"]" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity level for detection, ranging from 0.0 (low sensitivity) to 1.0 (high sensitivity).", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeConfidence", + "type": "boolean", + "description": "Whether to include confidence scores for each detected alert in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeWindowSeconds", + "type": "number", + "description": "Duration in seconds of the audio window segments to analyze at a time for alerts.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "A report object containing a list of alerts detected with their type, timestamp within the audio, and confidence score if requested." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring audio feeds or recordings for detection of security-relevant sounds such as alarms, breaking glass, or gunshots. It helps generate automatic alerts for security systems based on audio evidence. Ideal for settings like surveillance, smart homes, or public safety monitoring.", + "limitations": "Cannot detect audio cues not represented in the predefined alertTypes list. Performance depends on audio quality and noise environment; false positives or negatives can occur. Not designed for general audio recognition or transcription.", + "examples": [ + "Detect alarms and glass breaking sounds from security camera audio recording.", + "Monitor a live microphone stream for gunshots and make alerts in real-time.", + "Analyze recorded audio with low sensitivity to reduce false alarms from ambient noise." + ] + }, + "tags": [ + "audio", + "security", + "alert", + "detection", + "sound-recognition", + "surveillance" + ], + "examples": [ + { + "inputJson": "{\"audioSource\":\"https://example.com/audio1.wav\",\"alertTypes\":[\"alarm\",\"glassBreak\"],\"sensitivity\":0.8,\"includeConfidence\":true}", + "description": "Detect alarm and glass break sounds with high sensitivity from a remote audio file." + }, + { + "inputJson": "{\"audioSource\":\"microphoneStream1\",\"alertTypes\":[\"gunshot\"],\"sensitivity\":0.6,\"includeConfidence\":false,\"timeWindowSeconds\":5}", + "description": "Monitor live microphone stream for gunshots with medium sensitivity without confidence scores." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "audio-processing.createConfig", + "description": "Creates a configurable JSON object defining parameters for audio processing tasks such as noise reduction, equalization, compression, and effects. Accepts input specifications for each parameter to generate a standardized config output that can be used by audio processing systems or AI models to customize audio editing workflows.", + "category": "audio-processing", + "parameters": [ + { + "name": "sampleRate", + "type": "number", + "description": "Target sample rate in Hz for audio processing, defines the audio quality and precision.", + "required": true, + "defaultValue": "44100" + }, + { + "name": "bitDepth", + "type": "number", + "description": "Bit depth to use for audio encoding, affects audio dynamic range and file size.", + "required": false, + "defaultValue": "16" + }, + { + "name": "channels", + "type": "number", + "description": "Number of audio channels (e.g., 1 for mono, 2 for stereo).", + "required": true, + "defaultValue": "2" + }, + { + "name": "enableNoiseReduction", + "type": "boolean", + "description": "Flag to enable or disable noise reduction processing.", + "required": false, + "defaultValue": "true" + }, + { + "name": "noiseReductionLevel", + "type": "number", + "description": "Level of noise reduction effect, from 0 (none) to 1 (max).", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "equalizerSettings", + "type": "object", + "description": "Object defining equalizer bands and gains in dB, e.g., {\"bass\":5,\"mid\":0,\"treble\":-3}.", + "required": false, + "defaultValue": "" + }, + { + "name": "compressionThreshold", + "type": "number", + "description": "Threshold in dB above which compression occurs.", + "required": false, + "defaultValue": "-24" + }, + { + "name": "compressionRatio", + "type": "number", + "description": "Compression ratio applied to audio signal exceeding threshold, e.g., 2 for 2:1 compression.", + "required": false, + "defaultValue": "2" + }, + { + "name": "applyReverb", + "type": "boolean", + "description": "Whether to apply reverb effect to the audio.", + "required": false, + "defaultValue": "false" + }, + { + "name": "reverbIntensity", + "type": "number", + "description": "Intensity of the reverb effect, from 0 (none) to 1 (max).", + "required": false, + "defaultValue": "0.3" + } + ], + "returns": { + "type": "object", + "description": "A JSON configuration object containing all specified audio processing parameters and their values, ready to be used in audio processing pipelines or AI audio editing tools." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a fully structured audio processing configuration based on user preferences or environmental conditions. It enables systematic and reproducible setups for effects like noise reduction, equalization, compression, and reverb, facilitating consistent audio enhancement or transformation workflows.", + "limitations": "This tool only generates configuration; it does not perform actual audio processing or analyze audio content to optimize parameters automatically.", + "examples": [ + "Create an audio config for stereo 48kHz, deep noise reduction, and subtle compression.", + "Generate a config with 16-bit mono audio and no effects applied.", + "Configure a sample rate of 44.1kHz with moderate equalization and enabled reverb." + ] + }, + "tags": [ + "audio", + "configuration", + "noise reduction", + "equalization", + "compression", + "effects", + "audio editing" + ], + "examples": [ + { + "inputJson": "{\"sampleRate\":48000,\"bitDepth\":24,\"channels\":2,\"enableNoiseReduction\":true,\"noiseReductionLevel\":0.8,\"equalizerSettings\":{\"bass\":4,\"mid\":0,\"treble\":-2},\"compressionThreshold\":-20,\"compressionRatio\":3,\"applyReverb\":true,\"reverbIntensity\":0.4}", + "description": "Create a high-quality stereo audio config with strong noise reduction, moderate equalization, compression, and reverb effects." + }, + { + "inputJson": "{\"sampleRate\":44100,\"channels\":1,\"enableNoiseReduction\":false,\"applyReverb\":false}", + "description": "Generate a simple mono config without noise reduction or effects, using default bit depth and other parameters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "audio-processing.createKey", + "description": "Generates a cryptographic key derived from audio input, intended for securing audio files or sessions. Accepts raw audio data or file path and applies audio fingerprinting combined with cryptographic algorithms to produce a unique key output for security purposes.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioSource", + "type": "string", + "description": "Input audio data as base64 string or file path to audio file to derive the key from.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyLength", + "type": "number", + "description": "Length of the generated cryptographic key in bits (e.g., 128, 256).", + "required": false, + "defaultValue": "256" + }, + { + "name": "algorithm", + "type": "string", + "description": "Cryptographic algorithm to use for key generation (e.g., AES, HMAC).", + "required": false, + "defaultValue": "AES" + }, + { + "name": "salt", + "type": "string", + "description": "Optional salt value to increase key uniqueness and randomness.", + "required": false, + "defaultValue": "" + }, + { + "name": "useAudioFingerprint", + "type": "boolean", + "description": "Whether to use an audio fingerprinting method to extract unique features from the audio before key generation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated cryptographic key as a hex string and metadata about the key generation process." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a secure cryptographic key or token uniquely bound to a specific audio input, such as securing access to audio content or enabling audio-based authentication. The agent can supply audio data to derive a reproducible key tied to the audio's unique characteristics.", + "limitations": "The tool cannot decrypt or verify keys; it only creates keys. It also requires valid audio input and does not ensure cryptographic compliance beyond key generation. It doesn't support live audio streaming input for real-time key derivation.", + "examples": [ + "Generate a secure 256-bit AES key from an audio file for encrypting a podcast episode.", + "Create a cryptographic key based on a user's voice recording to enable audio-password security.", + "Produce a unique HMAC key derived from a batch of audio samples to sign audio metadata." + ] + }, + "tags": [ + "audio", + "security", + "cryptography", + "key-generation", + "fingerprinting", + "encryption" + ], + "examples": [ + { + "inputJson": "{\"audioSource\":\"/path/to/audio.wav\",\"keyLength\":256,\"algorithm\":\"AES\",\"salt\":\"randomSalt123\",\"useAudioFingerprint\":true}", + "description": "Generate a 256-bit AES key using audio fingerprinting and a salt from a WAV file." + }, + { + "inputJson": "{\"audioSource\":\"UklGRlIAAABXQVZFZm10IBAAAAABAAEA...\",\"keyLength\":128,\"algorithm\":\"HMAC\",\"useAudioFingerprint\":false}", + "description": "Generate a 128-bit HMAC key directly from base64-encoded raw audio data without fingerprinting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "audio-processing.createOrder", + "description": "Creates a new purchase order for audio processing services based on client requirements and selected service options. Accepts client details, audio service type, duration, and additional parameters, then generates a structured order summary including pricing and estimated delivery time.", + "category": "audio-processing", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name of the client placing the order", + "required": true, + "defaultValue": "" + }, + { + "name": "clientEmail", + "type": "string", + "description": "Email address for order confirmation and communication", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceType", + "type": "string", + "description": "Type of audio processing service requested (e.g., noiseReduction, mastering, transcription)", + "required": true, + "defaultValue": "" + }, + { + "name": "audioDurationSeconds", + "type": "number", + "description": "Length of the audio file in seconds to be processed", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority of the order processing (e.g., standard, expedited)", + "required": false, + "defaultValue": "standard" + }, + { + "name": "additionalRequirements", + "type": "string", + "description": "Optional field describing any special instructions or requirements", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An order object containing the client info, service details, calculated price, estimated delivery timestamp, and unique order ID" + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to formalize a client's request for audio processing into a structured purchase order including pricing and delivery estimates to streamline workflow management and client communication.", + "limitations": "Does not perform actual audio processing or payment handling. Pricing and delivery estimates are based on predefined rules and may not reflect real-time availability.", + "examples": [ + "Create an order for mastering a 3-minute audio track from client John Doe with expedited delivery.", + "Generate a purchase order for noise reduction service for a 10-minute recording for client jane@example.com.", + "Place a standard priority transcription order for a 180-second audio clip with no additional requirements." + ] + }, + "tags": [ + "audio", + "order", + "business", + "processing", + "service", + "purchase", + "client" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"John Doe\",\"clientEmail\":\"john.doe@example.com\",\"serviceType\":\"mastering\",\"audioDurationSeconds\":180,\"priorityLevel\":\"expedited\",\"additionalRequirements\":\"High dynamic range\"}", + "description": "Create an expedited mastering order for a 3-minute audio track with an extra instruction." + }, + { + "inputJson": "{\"clientName\":\"Jane Smith\",\"clientEmail\":\"jane.smith@example.com\",\"serviceType\":\"noiseReduction\",\"audioDurationSeconds\":600,\"priorityLevel\":\"standard\",\"additionalRequirements\":\"\"}", + "description": "Standard noise reduction order for a 10-minute audio recording without additional instructions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "audio-processing.createInvoice", + "description": "Generates a detailed invoice based on audio-related services and charges provided as input. Accepts information about services rendered, duration, rates, taxes, and client details. Processes these inputs to produce a structured invoice document as a JSON object or PDF-ready data, suitable for billing and record-keeping.", + "category": "audio-processing", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "The full name of the client to be invoiced.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientEmail", + "type": "string", + "description": "Email address of the client to send the invoice or for contact details.", + "required": false, + "defaultValue": "" + }, + { + "name": "services", + "type": "array", + "description": "List of service objects describing audio processing tasks performed with details such as description, duration (minutes), rate per unit, and quantity.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a percentage to be applied to subtotal (e.g., 15 for 15%).", + "required": false, + "defaultValue": "0" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date string representing when the invoice is issued (e.g., '2024-06-01').", + "required": false, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date string for invoice payment (e.g., '2024-07-01').", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for all monetary values (e.g., 'USD', 'EUR').", + "required": false, + "defaultValue": "USD" + }, + { + "name": "notes", + "type": "string", + "description": "Optional additional notes or payment instructions included in the invoice.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An invoice object containing client info, detailed service list with costs, subtotal, tax amount, total amount due, invoice and due dates, currency, and optional notes. Also includes a formatted string suitable for PDF generation or direct display." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to create an invoice document summarizing audio processing or editing services performed, including calculating costs based on service details and applying taxes. It is suitable for freelancing audio engineers, studios, or agencies to automate billing processes.", + "limitations": "Does not generate actual PDF files or send invoices via email; only returns structured invoice data. Not intended for complex accounting integrations or multi-currency conversions.", + "examples": [ + "Create an invoice for a client who requested 3 audio editing sessions at specific rates with tax applied.", + "Generate an invoice summary including service descriptions, durations, and total cost for audio mastering.", + "Provide a billing document for usage of AI audio transcription and noise reduction services." + ] + }, + "tags": [ + "audio", + "billing", + "invoice", + "document", + "payment", + "service", + "automation" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"clientEmail\":\"billing@acme.com\",\"services\":[{\"description\":\"Audio recording session\",\"duration\":120,\"rate\":50,\"quantity\":1},{\"description\":\"Post-processing editing\",\"duration\":60,\"rate\":40,\"quantity\":1}],\"taxRate\":10,\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-06-15\",\"currency\":\"USD\",\"notes\":\"Please pay within 15 days.\"}", + "description": "Invoice for Acme Corp covering audio recording and post-processing services with 10% tax applied." + }, + { + "inputJson": "{\"clientName\":\"Jane Doe\",\"services\":[{\"description\":\"Podcast episode editing\",\"duration\":90,\"rate\":35,\"quantity\":2}],\"currency\":\"EUR\"}", + "description": "Simple invoice for two podcast episode edits for Jane Doe in Euros with no tax specified." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "audio-processing.createPullRequest", + "description": "This tool accepts a code repository URL and a set of audio processing code changes (e.g., new filters, effect implementations) and automatically generates a Pull Request in the repository. It integrates AI code analysis with audio domain knowledge to create a complete PR with commit message and diff description for audio processing improvements.", + "category": "audio-processing", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the git repository where the pull request should be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name of the feature branch to create for the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeChanges", + "type": "object", + "description": "Structured description of code modifications, including files changed and code snippets to add or modify related to audio processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Commit message summarizing the code changes for the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "prTitle", + "type": "string", + "description": "Title for the pull request, describing the overall change.", + "required": true, + "defaultValue": "" + }, + { + "name": "prDescription", + "type": "string", + "description": "Detailed description for the pull request outlining the purpose and details of the audio processing improvements.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details of the created pull request including PR URL, branch name, and status confirmation." + }, + "aiAgent": { + "useCase": "Use this tool to automate the creation of pull requests in audio processing code repositories after generating or modifying audio-related code, enabling seamless code collaboration and integration. Ideal for AI agents that produce code for audio filters, enhancements, or analysis and need to submit it as PRs to repositories.", + "limitations": "This tool does not execute code testing or validation; it assumes code changes are syntactically correct and repository access is authorized. It cannot resolve merge conflicts or perform code reviews.", + "examples": [ + "Create a pull request adding a new noise reduction filter implementation to the audio effects repo.", + "Generate a PR updating the audio input parsing module with optimized codec support.", + "Submit a PR refactoring the audio processing pipeline to improve performance." + ] + }, + "tags": [ + "audio", + "code", + "pull-request", + "automation", + "development", + "git", + "repository" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/audio-effects\",\"branchName\":\"feature/noise-reduction\",\"codeChanges\":{\"files\":[{\"path\":\"src/effects/noiseReduction.cpp\",\"content\":\"// New noise reduction algorithm implementation code...\"},{\"path\":\"src/effects/noiseReduction.h\",\"content\":\"// Header declarations for noise reduction...\"}]},\"commitMessage\":\"Add noise reduction filter implementation\",\"prTitle\":\"Add noise reduction filter\",\"prDescription\":\"Implements a new noise reduction filter using spectral subtraction to enhance audio clarity.\"}", + "description": "Create a pull request adding a noise reduction filter implementation to the repository." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "audio-processing.createBranch", + "description": "Creates a new branch in an audio project repository, allowing users to manage and isolate experimental edits or new features in audio processing workflows. Accepts the repository identifier and branch name, performs the branch creation, and returns confirmation details including the branch reference and status.", + "category": "audio-processing", + "parameters": [ + { + "name": "repositoryId", + "type": "string", + "description": "Unique identifier or URL of the audio project repository where the branch will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The name for the new branch to be created in the audio project repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The existing branch from which to create the new branch. Defaults to the main branch.", + "required": false, + "defaultValue": "main" + }, + { + "name": "description", + "type": "string", + "description": "Optional description or purpose of the new branch to assist in project management.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the new branch name, base branch used, creation status, and repository identifier confirming successful branch creation or detailing errors." + }, + "aiAgent": { + "useCase": "Use this tool when managing audio processing projects that require version control branching for experimental edits or feature development, enabling isolated and trackable modifications without affecting the main audio content. It's ideal for collaborative audio editing workflows and organized track management.", + "limitations": "This tool does not handle merging branches, resolving conflicts, or direct audio content editing. It only manages branch creation in the project's repository environment.", + "examples": [ + "Create a branch named 'noise-reduction-feature' based off 'main' to develop new audio filters.", + "Generate a branch 'mixing-experiment' from 'development' to try alternative mixing techniques.", + "Add a new branch 'vocals-enhancement' with a description describing its purpose in the audio repository." + ] + }, + "tags": [ + "audio-processing", + "version-control", + "branch-management", + "audio-editing", + "workflow", + "project-management" + ], + "examples": [ + { + "inputJson": "{\"repositoryId\":\"audioRepo123\",\"branchName\":\"noise-reduction-feature\"}", + "description": "Create a new branch 'noise-reduction-feature' in repo 'audioRepo123' using default base branch 'main'." + }, + { + "inputJson": "{\"repositoryId\":\"audioRepo123\",\"branchName\":\"mixing-experiment\",\"baseBranch\":\"development\"}", + "description": "Create branch 'mixing-experiment' from existing 'development' branch in 'audioRepo123'." + }, + { + "inputJson": "{\"repositoryId\":\"audioRepo123\",\"branchName\":\"vocals-enhancement\",\"description\":\"Enhance vocal clarity and presence in the mix\"}", + "description": "Create a branch with a description to track the goal of vocal enhancement." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "audio-processing.createLead", + "description": "This tool accepts audio recordings of sales conversations or marketing calls, analyzes spoken content, tone, and sentiment, and extracts key information to create structured sales lead profiles. It outputs detailed lead data including contact info, interest level, and key discussion points in JSON format for CRM integration.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFileUrl", + "type": "string", + "description": "URL of the audio file containing the recorded conversation to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the audio content (e.g., 'en' for English) to optimize transcription", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to analyze sentiment and tone to assess lead interest level", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of extracted lead data, either 'json' or 'csv'", + "required": false, + "defaultValue": "json" + }, + { + "name": "minimumLeadScore", + "type": "number", + "description": "Minimum score threshold for qualifying extracted leads to include", + "required": false, + "defaultValue": "0.5" + } + ], + "returns": { + "type": "object", + "description": "Structured object containing extracted lead details such as name, contact info, summarized interests, sentiment scores, and lead qualification score" + }, + "aiAgent": { + "useCase": "Use this tool when you have audio recordings of sales or marketing calls and want to automatically extract qualified sales leads with relevant metadata for CRM entry, saving manual data entry and improving lead qualification speed.", + "limitations": "Cannot replace human judgment on lead quality fully; accuracy depends on audio clarity, language support, and speaker identification; does not generate entirely new leads, only extracts from provided audio.", + "examples": [ + "Extract leads from a recorded phone sales call in English and include sentiment analysis.", + "Process marketing webinar audio to create lead profiles in JSON.", + "Create lead data from multiple audio files with different languages, specifying each accordingly." + ] + }, + "tags": [ + "audio", + "lead-generation", + "sales", + "crm", + "transcription", + "sentiment-analysis" + ], + "examples": [ + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/call1.mp3\",\"language\":\"en\",\"includeSentimentAnalysis\":true}", + "description": "Process a recorded English sales call to extract detailed lead info with sentiment." + }, + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/webinar_es.mp3\",\"language\":\"es\",\"includeSentimentAnalysis\":false,\"outputFormat\":\"csv\"}", + "description": "Extract leads from a Spanish webinar audio, skipping sentiment, outputting CSV." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "audio-processing.createCSV", + "description": "This tool processes one or multiple audio files to extract relevant metadata and audio features such as duration, sample rate, channels, bit rate, and loudness. It compiles this information into a structured CSV file, facilitating analysis or batch processing workflows.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFiles", + "type": "array", + "description": "List of paths or URLs to audio files to analyze and extract metadata from.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeWaveform", + "type": "boolean", + "description": "Whether to include basic waveform statistics (e.g., peak amplitude) in the CSV output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFilename", + "type": "string", + "description": "The filename for the generated CSV output.", + "required": false, + "defaultValue": "audio_metadata.csv" + }, + { + "name": "normalizeTimestamps", + "type": "boolean", + "description": "If true, normalize timestamps or durations to a common unit format (seconds).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV content as a string and the filename it was saved or intended to be saved as." + }, + "aiAgent": { + "useCase": "Use this tool when needing to summarize or batch analyze audio files by generating detailed tabular metadata reports in CSV format. It's helpful for audio archiving, quality assurance, or feeding audio feature data into ML pipelines or spreadsheets.", + "limitations": "This tool does not transcribe audio or perform deep audio content analysis like speech-to-text or music transcription. It focuses on metadata and basic audio measurements only.", + "examples": [ + "Create a CSV summary of audio features from a folder of podcast episodes for quality control.", + "Generate a CSV metadata report including waveform peaks for a set of music tracks.", + "Produce a CSV file listing duration and sample rates for a collection of field recordings." + ] + }, + "tags": [ + "audio", + "metadata", + "csv", + "analysis", + "batch-processing", + "audio-features" + ], + "examples": [ + { + "inputJson": "{\"audioFiles\":[\"https://example.com/audio1.mp3\",\"https://example.com/audio2.wav\"],\"includeWaveform\":true,\"outputFilename\":\"podcasts_metadata.csv\",\"normalizeTimestamps\":true}", + "description": "Generate a CSV with metadata and waveform peaks for two online audio files." + }, + { + "inputJson": "{\"audioFiles\":[\"/local/path/song1.flac\"],\"includeWaveform\":false}", + "description": "Create a CSV metadata summary for one local music file, excluding waveform stats." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "audio-processing.createSummary", + "description": "This tool accepts an audio file or URL containing spoken content and generates a concise textual summary of the key points discussed in the audio. It processes the audio by transcribing speech, extracting main ideas, and outputs a brief summary text highlighting important information.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioSource", + "type": "string", + "description": "File path or URL of the audio to summarize", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the audio content, e.g., 'en'", + "required": false, + "defaultValue": "en" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired length of the summary in number of sentences", + "required": false, + "defaultValue": "3" + }, + { + "name": "speakerDiarization", + "type": "boolean", + "description": "Whether to differentiate speakers in the transcription for context", + "required": false, + "defaultValue": "false" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Format of the input audio (e.g., 'mp3', 'wav'); helps with processing", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the textual summary along with metadata" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract a brief textual summary from verbal audio content such as interviews, meetings, podcasts, or lectures, enabling quick understanding without listening to the full audio. It is useful in automating note-taking or content indexing.", + "limitations": "The tool depends on good quality audio and accurate transcription. It may not capture nuanced information, tone, or emotions and is limited to text summary rather than full transcript or analysis.", + "examples": [ + "Summarize a podcast episode audio to capture key discussion points in three sentences.", + "Create a brief summary of a recorded interview audio file for quick review.", + "Generate concise notes from a business meeting audio recording in English." + ] + }, + "tags": [ + "audio", + "summary", + "transcription", + "speech-to-text", + "note-taking", + "podcast", + "meeting" + ], + "examples": [ + { + "inputJson": "{\"audioSource\":\"https://example.com/interview.mp3\",\"language\":\"en\",\"summaryLength\":4}", + "description": "Generate a four-sentence summary from an English interview audio file accessed via URL." + }, + { + "inputJson": "{\"audioSource\":\"recordings/meeting.wav\",\"language\":\"en\",\"speakerDiarization\":true}", + "description": "Create a short summary from a meeting audio file with speaker identification enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "audio-processing.createEndpoint", + "description": "Creates a REST API endpoint that accepts audio input for processing and returns analyzed audio data such as transcription, audio features, or effects applied. It accepts configuration parameters defining supported audio formats, processing types, and authentication requirements, then generates a fully functional endpoint URL with integration details.", + "category": "audio-processing", + "parameters": [ + { + "name": "endpointName", + "type": "string", + "description": "The unique name identifier for the API endpoint to be created, used in the URL path.", + "required": true, + "defaultValue": "" + }, + { + "name": "audioFormats", + "type": "array", + "description": "List of accepted audio file formats (e.g., ['wav', 'mp3']) that the endpoint will support.", + "required": true, + "defaultValue": "[\"wav\",\"mp3\"]" + }, + { + "name": "processingType", + "type": "string", + "description": "Type of audio processing the endpoint will perform (e.g., 'transcription', 'featureExtraction', 'noiseReduction').", + "required": true, + "defaultValue": "" + }, + { + "name": "maxAudioDurationSeconds", + "type": "number", + "description": "Maximum duration in seconds of audio files accepted by the endpoint to prevent excessive load.", + "required": false, + "defaultValue": "300" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires authentication tokens for access.", + "required": false, + "defaultValue": "true" + }, + { + "name": "responseFormat", + "type": "string", + "description": "Format in which the processed audio data is returned (e.g., 'json', 'wav').", + "required": false, + "defaultValue": "json" + }, + { + "name": "rateLimitPerMinute", + "type": "number", + "description": "Optional maximum number of requests allowed per minute to control usage.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "Details of the created audio processing endpoint, including endpoint URL, supported formats, processing type, authentication details, and usage guidelines." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate and configure a custom REST API endpoint specialized for audio processing tasks. It is ideal for building scalable audio analysis services that accept audio data and return processed results, enabling integration with client apps or other APIs.", + "limitations": "This tool does not perform audio processing itself but only creates the API endpoint setup. Actual audio processing depends on underlying services configured separately.", + "examples": [ + "Create a secure endpoint named 'transcribeAudio' that accepts 'wav' and 'mp3' and performs transcription, returning results as JSON.", + "Generate an endpoint for noise reduction processing that limits audio duration to 180 seconds without requiring authentication.", + "Set up a feature extraction endpoint supporting 'flac' format with a low rate limit for testing purposes." + ] + }, + "tags": [ + "audio", + "api", + "endpoint", + "rest", + "processing", + "transcription", + "featureExtraction" + ], + "examples": [ + { + "inputJson": "{\"endpointName\":\"transcribeAudio\",\"audioFormats\":[\"wav\",\"mp3\"],\"processingType\":\"transcription\",\"maxAudioDurationSeconds\":300,\"authenticationRequired\":true,\"responseFormat\":\"json\",\"rateLimitPerMinute\":100}", + "description": "Create a secure transcription API endpoint supporting WAV and MP3 formats with JSON output and reasonable usage limits." + }, + { + "inputJson": "{\"endpointName\":\"noiseReduce\",\"audioFormats\":[\"wav\"],\"processingType\":\"noiseReduction\",\"maxAudioDurationSeconds\":180,\"authenticationRequired\":false,\"responseFormat\":\"wav\",\"rateLimitPerMinute\":30}", + "description": "Create a public endpoint for noise reduction accepting only WAV files up to 3 minutes long, returning processed WAV files." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "audio-processing.createModule", + "description": "Creates a customizable audio processing module in JavaScript that can be integrated into audio editing applications. It accepts parameters defining the type of effects (e.g., reverb, EQ, compression), effect settings, and supported audio formats. The tool generates a ready-to-use JS module implementing the configured audio processing chain.", + "category": "audio-processing", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name identifier for the generated audio processing module.", + "required": true, + "defaultValue": "" + }, + { + "name": "effectsChain", + "type": "array", + "description": "Array of effect objects defining type and parameters for each audio effect to include in processing sequence.", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedFormats", + "type": "array", + "description": "List of audio file formats (e.g., ['wav','mp3']) that the module will support for processing.", + "required": false, + "defaultValue": "[\"wav\",\"mp3\"]" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Sample rate (in Hz) for audio processing within the module.", + "required": false, + "defaultValue": "44100" + }, + { + "name": "enableStereoProcessing", + "type": "boolean", + "description": "Flag to enable stereo channel processing if true; otherwise processes mono only.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the module source code as a string, plus metadata including module name and supported formats." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a reusable JavaScript audio processing module that applies a defined audio effects chain. Useful for building custom audio editors, plugins, or automated pipelines requiring tailored audio transformations.", + "limitations": "Does not generate audio UI elements or handle real-time audio input/output directly; the generated module focuses on offline or scripted audio processing code.", + "examples": [ + "Create a module named 'BasicReverb' applying reverb and EQ effects for wav files at 48kHz.", + "Generate a module supporting mp3 and wav that compresses and normalizes audio for podcast production.", + "Build a stereo audio module with customizable distortion and delay effects for music production." + ] + }, + "tags": [ + "audio", + "processing", + "module", + "javascript", + "effects", + "audio-effects", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"BasicReverbEQ\",\"effectsChain\":[{\"type\":\"reverb\",\"parameters\":{\"decay\":2.5,\"mix\":0.4}},{\"type\":\"equalizer\",\"parameters\":{\"bands\":[{\"frequency\":1000,\"gain\":-3,\"Q\":1}]}}],\"supportedFormats\":[\"wav\"],\"sampleRate\":48000,\"enableStereoProcessing\":true}", + "description": "Generate a stereo JS module named BasicReverbEQ applying a reverb (2.5s decay) and a mid frequency cut EQ at 1kHz, supporting WAV files at 48kHz." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "image-processing.analyzeLink", + "description": "This tool accepts a URL link pointing to an image file, then fetches and analyzes the image content. It performs image content recognition by detecting objects, reading embedded text via OCR, and extracting metadata. The output is a structured summary of detected objects, recognized texts, and image metadata for further use or decision-making.", + "category": "image-processing", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "A valid URL pointing directly to the image file to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectObjects", + "type": "boolean", + "description": "Flag to enable or disable object detection within the image.", + "required": false, + "defaultValue": "true" + }, + { + "name": "performOCR", + "type": "boolean", + "description": "Flag to enable or disable Optical Character Recognition to detect text in the image.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractMetadata", + "type": "boolean", + "description": "Flag to enable or disable extraction of image metadata such as format, size, and color profile.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxObjects", + "type": "number", + "description": "Maximum number of objects to detect and return from the image analysis.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis result object containing arrays of detected objects with labels and confidence scores, recognized text strings extracted from the image, and metadata information such as dimensions, format, and color profile." + }, + "aiAgent": { + "useCase": "Use this tool when given a direct URL link to an image and you need to analyze its visual content and metadata without downloading and processing locally. Ideal for automated image content inspection, filtering, or information extraction in workflows handling remote images.", + "limitations": "The image must be accessible via the URL and in a supported format. It cannot analyze videos, non-image URLs, or images behind authentication. OCR performance may be limited by image quality and language supported.", + "examples": [ + "Analyze the image at a given URL to detect any visible objects and read any embedded text.", + "Retrieve metadata and textual content from an image hosted remotely via a public web link.", + "Fetch and analyze a product image URL to extract object labels and descriptions automatically." + ] + }, + "tags": [ + "image-processing", + "analysis", + "object-detection", + "OCR", + "metadata-extraction", + "remote-image" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/images/product123.jpg\",\"detectObjects\":true,\"performOCR\":true,\"extractMetadata\":true,\"maxObjects\":5}", + "description": "Analyze a product image URL to detect up to 5 objects, extract text, and get image metadata." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/assets/sample-text-image.png\",\"detectObjects\":false,\"performOCR\":true,\"extractMetadata\":true}", + "description": "Extract text via OCR and metadata from an image containing text at the specified URL." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/photos/nature.jpg\",\"detectObjects\":true,\"performOCR\":false,\"extractMetadata\":true}", + "description": "Detect objects and extract metadata from a nature photo, disabling text recognition." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "image-processing.analyzeDashboard", + "description": "Analyzes an image of a dashboard to extract and summarize visual data elements such as charts, graphs, numeric indicators, and textual annotations. It accepts image files in common formats and applies computer vision techniques to identify dashboard components, returning structured analytics including chart types, key metrics, trends, and annotations detected within the dashboard image.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string of the dashboard image to analyze. Supported formats include PNG, JPEG, and BMP.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectCharts", + "type": "boolean", + "description": "Whether to detect and classify chart types like bar, line, pie, or gauge charts within the dashboard image.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractText", + "type": "boolean", + "description": "Whether to perform optical character recognition (OCR) to extract textual annotations and numeric values from the image.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of dashboard elements (charts, metrics, annotations) to return in the analysis result.", + "required": false, + "defaultValue": "50" + }, + { + "name": "language", + "type": "string", + "description": "Language code (ISO 639-1) to guide text extraction and recognition, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis object containing detected dashboard elements: an array of charts with types and data summaries, extracted textual annotations with locations, and recognized numeric metrics with values and positions." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing screenshots or photos of dashboards to automatically identify visual components like graphs and key figures. Ideal for extracting insights from static dashboard images where underlying data is not accessible directly. Helps in synthesizing information for reporting or monitoring tasks.", + "limitations": "Cannot interpret dashboard interactivity or real-time data updates. Accuracy depends on image quality and complexity. May not recognize custom or highly stylized chart types reliably.", + "examples": [ + "Analyze a dashboard screenshot image to extract bar charts and their data summaries.", + "Extract and summarize all numeric indicators and annotations on a finance dashboard image.", + "Detect multiple chart types in a multi-panel dashboard image and return key trends and figures." + ] + }, + "tags": [ + "image analysis", + "dashboard", + "computer vision", + "OCR", + "data visualization", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"\",\"detectCharts\":true,\"extractText\":true,\"maxResults\":10,\"language\":\"en\"}", + "description": "Analyze a dashboard PNG image with chart detection and text extraction enabled, limiting to top 10 detected elements." + }, + { + "inputJson": "{\"imageData\":\"\",\"detectCharts\":false,\"extractText\":true,\"maxResults\":5,\"language\":\"en\"}", + "description": "Extract only the textual data (labels, numbers) from a JPEG dashboard image without detecting charts, limited to 5 elements." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "image-processing.analyzeRisk", + "description": "This tool accepts an image (e.g., security camera footage, scanned documents, or facility photos) and analyzes it to identify potential physical and security risks such as unauthorized access points, suspicious objects, or environmental hazards. It processes the image using AI-driven threat detection algorithms and produces a detailed risk report with detected risk types, confidence scores, and suggested mitigations.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64 encoded image data or URL to the image to be analyzed for security risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskTypes", + "type": "array", + "description": "Array of risk categories to detect (e.g., ['intrusion', 'fireHazard', 'unauthorizedAccess']). If empty, tool analyzes all supported risk types.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minConfidence", + "type": "number", + "description": "Minimum confidence threshold (0-1) for detected risks to be included in the output report.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "includeRegionCoordinates", + "type": "boolean", + "description": "If true, the output will include bounding box coordinates for detected risk areas within the image.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectionTimeoutSeconds", + "type": "number", + "description": "Maximum time in seconds allowed for image risk analysis before terminating with partial results.", + "required": false, + "defaultValue": "15" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing a list of detected risks. Each item includes riskType, confidenceScore, optional boundingBox (coordinates), and suggested actions to mitigate each risk." + }, + "aiAgent": { + "useCase": "Use this tool when you have visual data from security cameras, facility blueprints, or scanned documents and need to automatically identify and assess potential physical or environmental risks to security. It is useful for proactive risk management, surveillance analysis, and compliance verification.", + "limitations": "The tool is limited to visual risk detection and may not detect risks that require sensor data or contextual knowledge beyond the image content. It may produce false positives or miss subtle risks in poor-quality images.", + "examples": [ + "Detect all potential security risks in an image captured from a building entrance camera.", + "Analyze a scanned blueprint image for unauthorized access points and fire hazards.", + "Identify suspicious objects or environmental hazards in a factory floor photo and generate a risk mitigation report." + ] + }, + "tags": [ + "image-processing", + "security", + "risk-assessment", + "threat-detection", + "AI-analyzer", + "physical-security" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/jpeg;base64,/9j/4AAQSk...\",\"riskTypes\":[\"intrusion\", \"fireHazard\"],\"minConfidence\":0.6,\"includeRegionCoordinates\":true}", + "description": "Analyze a security camera image for intrusion and fire hazards only, reporting risks with confidence above 0.6 and including bounding box coordinates." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/facility_blueprint.png\",\"riskTypes\":[],\"minConfidence\":0.5}", + "description": "Analyze a facility blueprint image URL for all risk categories with a minimum confidence threshold of 0.5, bounding boxes not included by default." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "image-processing.analyzeKPI", + "description": "This tool accepts an image containing visual KPI dashboards or charts, processes it to identify and extract quantifiable key performance indicators such as values, trends, and gauges, and outputs a structured summary of the detected KPI metrics for further analysis or reporting.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or URL of the image containing KPI visualizations to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiTypes", + "type": "array", + "description": "List of KPI types to extract, e.g., ['revenue', 'growth', 'conversionRate']. If empty, attempts to extract all detected KPIs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report; options include 'json' (structured data) or 'text' (human-readable summary).", + "required": false, + "defaultValue": "\"json\"" + }, + { + "name": "detectTrends", + "type": "boolean", + "description": "Whether to analyze and include trend information (e.g., increasing/decreasing) for KPIs visible in the image.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') for interpreting textual labels within the image, defaults to English.", + "required": false, + "defaultValue": "\"en\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted KPI data including names, values, units, and optionally trends and confidence scores." + }, + "aiAgent": { + "useCase": "Use this tool when you have images of dashboards, charts or KPI visuals and need to extract structured key performance indicator data automatically for inclusion in reports or further data processing. It is useful for automated business analysis from screenshots or scanned reports.", + "limitations": "The tool relies on clear, legible KPI visuals; heavily stylized or poor-quality images may yield incomplete or inaccurate data. It does not replace specialized OCR for complex documents or textual data extraction outside KPI contexts.", + "examples": [ + "Extract KPI values from a sales dashboard screenshot.", + "Analyze a chart image to report revenue and growth KPIs.", + "Summarize key metrics from a project management dashboard image." + ] + }, + "tags": [ + "image-processing", + "kpi-extraction", + "dashboard-analysis", + "business-intelligence", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\"kpiTypes\":[\"revenue\",\"conversionRate\"],\"outputFormat\":\"json\",\"detectTrends\":true,\"language\":\"en\"}", + "description": "Extract revenue and conversion rate KPIs with trend analysis from a sales dashboard image." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/dashboard.jpg\",\"kpiTypes\":[],\"outputFormat\":\"text\",\"detectTrends\":false,\"language\":\"en\"}", + "description": "Extract all detectable KPIs from an online dashboard image and produce a text summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "image-processing.analyzeComment", + "description": "Analyzes a comment embedded as text within an image by extracting the textual content and performing sentiment analysis to determine the tone and sentiment conveyed in the comment. Accepts an image file or URL containing visible text, processes optical character recognition (OCR), and outputs the extracted comment text along with sentiment metrics and confidence scores.", + "category": "image-processing", + "parameters": [ + { + "name": "imageSource", + "type": "string", + "description": "URL or base64 string of the image containing the comment text to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') to assist OCR and sentiment analysis. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "performSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the extracted comment text. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "ocrConfidenceThreshold", + "type": "number", + "description": "Minimum confidence threshold (0-1) for OCR text extraction to include text in output. Defaults to 0.7.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object containing extractedComment (string), sentimentScore (number between -1 and 1), sentimentLabel (string e.g., 'positive','neutral','negative'), and confidenceScores (object for OCR and sentiment) indicating processing reliability." + }, + "aiAgent": { + "useCase": "Use this tool when given images containing embedded user comments, such as screenshots or photos of comments, and the goal is to extract and analyze the sentiment or tone of these comments for feedback analysis, moderation, or market research.", + "limitations": "This tool cannot analyze comments that are handwritten with poor legibility or images where text is obscured or too stylized for OCR. It cannot detect sarcasm or complex contextual sentiment beyond baseline sentiment analysis.", + "examples": [ + "Extract and analyze the sentiment of a comment shown in this screenshot image URL.", + "Given a base64 encoded image of a user comment, identify the textual content and determine if it is positive or negative.", + "Analyze the comment text visible in the uploaded photo to support automated moderation." + ] + }, + "tags": [ + "image-processing", + "OCR", + "sentiment-analysis", + "comment", + "text-extraction", + "moderation", + "feedback" + ], + "examples": [ + { + "inputJson": "{\"imageSource\":\"https://example.com/comment-screenshot.png\",\"language\":\"en\",\"performSentimentAnalysis\":true}", + "description": "Extract and analyze sentiment from an English language comment screenshot image." + }, + { + "inputJson": "{\"imageSource\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"performSentimentAnalysis\":false}", + "description": "Extract text from a base64 PNG image containing a comment, without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "image-processing.analyzePayment", + "description": "Analyzes images of payment documents such as checks, invoices, or receipts to extract structured payment information. Accepts images in common formats, performs OCR and layout analysis to identify payer, payee, amount, date, and payment method, and outputs a structured JSON summary of payment details.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string representing the payment document image to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "Format of the input image, e.g., 'png', 'jpeg', or 'tiff'.", + "required": false, + "defaultValue": "jpeg" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for OCR text recognition.", + "required": false, + "defaultValue": "en" + }, + { + "name": "detectCurrency", + "type": "boolean", + "description": "Whether to detect and normalize currency symbols and formats in the payment amounts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "enhanceImage", + "type": "boolean", + "description": "Apply image enhancement techniques (denoise, contrast adjustment) before analysis to improve OCR accuracy.", + "required": false, + "defaultValue": "true" + }, + { + "name": "returnRawText", + "type": "boolean", + "description": "Include raw extracted text along with structured data in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing parsed payment details such as payerName, payeeName, paymentAmount, currency, paymentDate, paymentMethod, and optionally rawText extracted from the image." + }, + "aiAgent": { + "useCase": "Use this tool when given an image of a payment-related document (e.g., checks, receipts, invoices) to extract key payment information automatically, enabling downstream processing such as reconciliation, accounting entry, or verification without manual data entry.", + "limitations": "This tool cannot guarantee 100% accuracy on poorly photographed or very complex documents, and does not handle handwriting well. It focuses on extracting structured payment info, not full document understanding or financial fraud detection.", + "examples": [ + "Extract payment details from a scanned check image.", + "Analyze a photographed invoice to get payee, amount, and date.", + "Process a receipt image to identify payment method and total paid." + ] + }, + "tags": [ + "image-processing", + "payment", + "OCR", + "financial-data", + "document-analysis", + "invoice", + "check", + "receipt" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"\",\"imageFormat\":\"jpeg\",\"language\":\"en\",\"detectCurrency\":true,\"enhanceImage\":true,\"returnRawText\":false}", + "description": "Analyze a clear JPEG image of a payment check to extract payer, payee, amount, and date." + }, + { + "inputJson": "{\"imageData\":\"\",\"imageFormat\":\"png\",\"language\":\"en\",\"detectCurrency\":true,\"enhanceImage\":false,\"returnRawText\":true}", + "description": "Analyze a PNG receipt image to extract payment details and include raw OCR text for verification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "image-processing.analyzeOpportunity", + "description": "This tool accepts an image containing business-related data such as charts, graphs, product placements, or marketing visuals. It analyzes visual elements to identify potential business opportunities, like market trends, customer engagement indicators, or product positioning effectiveness. The output is a structured report detailing identified opportunities, confidence scores, and relevant visual cues.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64-encoded or URL of the image to analyze containing business opportunity visual data.", + "required": true, + "defaultValue": "" + }, + { + "name": "focusAreas", + "type": "array", + "description": "List of specific business opportunity focus areas to analyze, e.g., ['marketTrends', 'customerEngagement', 'competitorAnalysis']", + "required": false, + "defaultValue": "[\"marketTrends\",\"customerEngagement\"]" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) to report an identified opportunity.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "language", + "type": "string", + "description": "Language code for analysis and reporting (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Structured report object containing identified opportunity summaries, confidence scores, associated image regions, and recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you have an image related to business contexts such as marketing materials, sales charts, or competitive product visuals, and want to extract actionable business opportunities from the visual data without manual interpretation. Agents can employ it to quickly assess market potential or identify engagement signals.", + "limitations": "This tool cannot analyze images unrelated to business opportunities (e.g., personal photos). It may have limited accuracy with low-quality or distorted images and cannot replace detailed human strategic analysis.", + "examples": [ + "Analyze the marketing poster image to identify potential target customer segments.", + "Extract opportunities from the competitor product display chart image focusing on market trends.", + "Evaluate the customer engagement graphs from the sales report image to suggest growth opportunities." + ] + }, + "tags": [ + "image-analysis", + "business-intelligence", + "opportunity-detection", + "market-analysis", + "visual-data" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"https://example.com/images/marketing_chart.jpg\",\"focusAreas\":[\"marketTrends\",\"customerEngagement\"],\"confidenceThreshold\":0.75,\"language\":\"en\"}", + "description": "Analyzes a marketing chart image from a URL to detect market trends and customer engagement opportunities with a confidence threshold of 75%." + }, + { + "inputJson": "{\"inputImage\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\"focusAreas\":[\"competitorAnalysis\"],\"confidenceThreshold\":0.65,\"language\":\"en\"}", + "description": "Analyzes a base64 encoded image focusing on competitor product placement analysis with moderate confidence threshold." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "image-processing.downloadDataset", + "description": "Downloads a dataset of images from specified public repositories or URLs, supporting filters by category, format, and size. Accepts dataset source, image type filters, and download limits, processing requests to package the dataset locally or to cloud storage, returning metadata about the downloaded dataset.", + "category": "image-processing", + "parameters": [ + { + "name": "datasetSource", + "type": "string", + "description": "URL or identifier of the public dataset repository to download images from.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageCategories", + "type": "array", + "description": "List of image categories or labels to filter datasets by (e.g., 'cats', 'vehicles').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "imageFormats", + "type": "array", + "description": "Allowable image file formats to download (e.g., ['jpg', 'png']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxImages", + "type": "number", + "description": "Maximum number of images to download from the dataset.", + "required": false, + "defaultValue": "100" + }, + { + "name": "minResolution", + "type": "object", + "description": "Minimum resolution filter for images, with 'width' and 'height' fields specifying pixels.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "downloadPath", + "type": "string", + "description": "Local or cloud storage path where the dataset should be saved.", + "required": false, + "defaultValue": "./downloaded_dataset" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include metadata files with image annotations if available.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the dataset download summary with fields: totalImagesDownloaded (number), datasetPath (string), and metadataIncluded (boolean)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to acquire image datasets for training, validation, or testing from known public sources, applying filters by category, format, and resolution, and managing dataset storage paths.", + "limitations": "Cannot download images from private or inaccessible datasets without authentication; limited to publicly available datasets. Does not perform image preprocessing beyond filtering by resolution or format.", + "examples": [ + "Download 500 images of vehicles in JPG format from the Open Images dataset.", + "Fetch 200 cat images with minimum resolution 640x480 from a given public dataset URL.", + "Obtain a small set of PNG images including metadata annotations to the specified cloud folder." + ] + }, + "tags": [ + "image-processing", + "dataset", + "download", + "image-collection", + "computer-vision", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"datasetSource\":\"https://public-datasets.example.com/open-images\",\"imageCategories\":[\"vehicles\"],\"imageFormats\":[\"jpg\"],\"maxImages\":500,\"downloadPath\":\"/datasets/vehicles\"}", + "description": "Download up to 500 vehicle images in JPG format from the Open Images public dataset into local folder '/datasets/vehicles'." + }, + { + "inputJson": "{\"datasetSource\":\"https://public-datasets.example.com/cats\",\"imageCategories\":[\"cats\"],\"minResolution\":{\"width\":640,\"height\":480},\"maxImages\":200}", + "description": "Download 200 cat images with at least 640x480 resolution from a public cats dataset URL, saving to default path." + }, + { + "inputJson": "{\"datasetSource\":\"https://datasets.example.net/png-samples\",\"imageFormats\":[\"png\"],\"maxImages\":50,\"includeMetadata\":true,\"downloadPath\":\"s3://mybucket/image-data\"}", + "description": "Download 50 PNG images including metadata from a public dataset, saving to specified cloud storage path." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "image-processing.downloadJSON", + "description": "Downloads image metadata or analysis results in JSON format from a given image source URL or uploaded image data. Supports extraction of basic image properties and outputs them as structured JSON for further processing or storage.", + "category": "image-processing", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "URL of the image to download and extract metadata from. Either imageUrl or imageData must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageData", + "type": "string", + "description": "Base64 encoded image data to process if imageUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include basic image metadata like dimensions, format, and size in output JSON.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeAnalysis", + "type": "boolean", + "description": "Whether to include basic image analysis data (e.g., color histogram, dominant colors) in output JSON.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "JSON object containing extracted image metadata and/or analysis results depending on input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve image metadata or basic analysis results in JSON format from an image URL or base64 data to integrate with workflows requiring structured image information storage or processing.", + "limitations": "Does not perform complex image recognition or editing. It only extracts basic metadata and simple image statistics. Large images or unsupported formats may fail.", + "examples": [ + "Download JSON metadata from an image URL", + "Extract image metadata and color analysis from uploaded base64 image data", + "Get JSON info with just image dimensions and format from URL" + ] + }, + "tags": [ + "image-processing", + "download", + "metadata", + "JSON", + "image-analysis", + "image-metadata", + "color-analysis" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/sample.jpg\",\"includeMetadata\":true,\"includeAnalysis\":false}", + "description": "Download only the basic metadata JSON from the image at sample.jpg" + }, + { + "inputJson": "{\"imageData\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"includeMetadata\":true,\"includeAnalysis\":true}", + "description": "Process base64 encoded image data to download both metadata and color analysis JSON" + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/photo.png\",\"includeMetadata\":true,\"includeAnalysis\":true}", + "description": "Download JSON including both metadata and analysis from a PNG image URL" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "image-processing.analyzeTable", + "description": "This tool accepts an image containing a table (photograph or scan) and performs optical character recognition (OCR) combined with table structure detection to extract rows and columns data accurately. It outputs structured table data in JSON format, including cell contents and their positions within the table.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or URL pointing to the image containing the table to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for OCR to improve text recognition accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "detectBorders", + "type": "boolean", + "description": "Whether to use border detection to identify table cells explicitly. Improves accuracy if borders are clear.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output structured data. Options: 'json' (default) or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "maxTablePages", + "type": "number", + "description": "Maximum number of tables/pages to extract from the image (for multi-page scans).", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with parsed table data represented as an array of rows, where each row is an array of cell objects containing text content and bounding box coordinates." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract structured data from images of tables, such as scanned spreadsheets, invoices, or reports. It is ideal for converting table images into machine-readable data for further processing or analysis.", + "limitations": "Does not handle handwritten tables well. Accuracy depends heavily on image quality and clarity of table structure. Complex merged cells or very distorted tables may result in inaccurate parsing.", + "examples": [ + "Extract table data from a scanned invoice photo.", + "Convert photographed spreadsheet tables into JSON for data analysis.", + "Analyze report images with tabular data to extract key metrics." + ] + }, + "tags": [ + "image-processing", + "table-recognition", + "OCR", + "data-extraction", + "document-analysis" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANS...\",\"language\":\"en\",\"detectBorders\":true}", + "description": "Extracts structured table data from a scanned invoice image encoded in base64 with English OCR." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/reports/table1.jpg\",\"outputFormat\":\"json\",\"maxTablePages\":1}", + "description": "Analyze a table image from a URL to extract its cells and text as JSON." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "image-processing.sendNotification", + "description": "This tool accepts image metadata and notification details, then sends a customized notification message related to image processing events (e.g., image uploads, edits) to specified recipients via email or webhook. It outputs the status of the notification delivery, including success or failure information.", + "category": "image-processing", + "parameters": [ + { + "name": "imageId", + "type": "string", + "description": "Unique identifier of the image related to the notification", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to send, e.g., 'upload', 'edit', 'error'", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "Email address or webhook URL to send the notification to", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Custom message content to include in the notification", + "required": false, + "defaultValue": "" + }, + { + "name": "sendAsWebhook", + "type": "boolean", + "description": "Flag indicating whether to send the notification as a webhook instead of email", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the status of the notification sent, including success status and any error messages" + }, + "aiAgent": { + "useCase": "Use this tool when an image processing workflow requires alerting users or systems about image-related events, such as successful uploads, modifications, or errors, via automated notifications. It standardizes how notifications are sent based on image events, helping keep stakeholders informed.", + "limitations": "This tool does not process the images themselves or store image data; it only sends notifications about image-related events. It requires valid recipient addresses and does not verify delivery beyond basic success/failure status.", + "examples": [ + "Send a notification email when an image is successfully uploaded.", + "Notify a webhook endpoint of image editing completion.", + "Alert an administrator via email if an image processing error occurs." + ] + }, + "tags": [ + "notification", + "image", + "alert", + "email", + "webhook", + "automation" + ], + "examples": [ + { + "inputJson": "{\"imageId\":\"img12345\",\"notificationType\":\"upload\",\"recipient\":\"user@example.com\",\"message\":\"Your image has been uploaded successfully.\",\"sendAsWebhook\":false}", + "description": "Send an email notification to a user about successful image upload." + }, + { + "inputJson": "{\"imageId\":\"img67890\",\"notificationType\":\"edit\",\"recipient\":\"https://hooks.example.com/notify\",\"message\":\"Image edits are complete.\",\"sendAsWebhook\":true}", + "description": "Send a webhook notification to a system endpoint when image editing finishes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "image-processing.uploadJSON", + "description": "Uploads a JSON file containing image metadata or image processing parameters to the system. Accepts a JSON string or a file path to a JSON file. Parses and validates the JSON content and stores it for subsequent image processing tasks. Returns a status confirming upload success and metadata summary.", + "category": "image-processing", + "parameters": [ + { + "name": "jsonContent", + "type": "string", + "description": "A JSON string representing image metadata or processing parameters to upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Path to a JSON file containing image metadata or processing parameters. Required if jsonContent is empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "When true, validates the JSON content against a predefined schema before upload.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status (success or error), any validation messages, and a summary of the uploaded JSON content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to load image-related JSON data into the processing pipeline, such as camera settings, filter parameters, or image annotations. It facilitates structured data input for subsequent image manipulation or analysis tasks.", + "limitations": "This tool does not process images directly or modify the JSON content beyond validation and storage. It requires the JSON content to be well-formed and optionally schema-compliant.", + "examples": [ + "Upload JSON metadata for an image prior to processing.", + "Load filter settings from a JSON file to apply effects.", + "Validate and store image annotation data in JSON format." + ] + }, + "tags": [ + "image", + "upload", + "JSON", + "metadata", + "parameters", + "validation" + ], + "examples": [ + { + "inputJson": "{\"jsonContent\":\"{\\\"exposure\\\":0.01, \\\"iso\\\":400, \\\"annotations\\\":[{\\\"label\\\":\\\"face\\\", \\\"coordinates\\\":[100,150,200,250}]}]}\",\"filePath\":\"\",\"validateSchema\":true}", + "description": "Upload a JSON string with image exposure settings and an annotation for facial detection." + }, + { + "inputJson": "{\"jsonContent\":\"\",\"filePath\":\"/path/to/imageParams.json\",\"validateSchema\":true}", + "description": "Upload a JSON file containing image processing parameters stored on disk for validation and storage." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "image-processing.formatText", + "description": "This tool accepts an image containing text and applies formatting transformations to the recognized text within the image. It performs OCR to extract the text, then formats it based on parameters like font style, size, color, alignment, and background color. The output is an image with the text rendered in the specified format, maintaining the original layout as much as possible.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64-encoded string of the image containing the text to format; required input.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "CSS font family name to apply to the text (e.g., Arial, Times New Roman).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels to apply to the text.", + "required": false, + "defaultValue": "16" + }, + { + "name": "fontColor", + "type": "string", + "description": "Hex code or CSS color name for the text color.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Hex code or CSS color name for the text background (transparent if empty).", + "required": false, + "defaultValue": "" + }, + { + "name": "textAlign", + "type": "string", + "description": "Alignment of the text inside the image: left, center, right, or justify.", + "required": false, + "defaultValue": "left" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render the text in bold style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render the text in italic style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "underline", + "type": "boolean", + "description": "Whether to underline the text.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64-encoded formatted image reflecting the requested text style adjustments." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract text from an image, then re-render the text with specific formatting styles such as font, size, color, and alignment, producing a new image that depicts the text visually formatted as specified. Suitable for generating stylized text overlays in images or regenerating scanned text with improved readability.", + "limitations": "This tool cannot interpret complex layouts or multiple columns accurately. It only supports formatting recognized text extracted via OCR and cannot edit non-text graphical components. It may struggle with low-resolution or complex background images.", + "examples": [ + "Format the text in this scanned document image to be bold, 20px, and blue font with center alignment.", + "Change the text style in this image to italic and underline with a red font color.", + "Extract and re-render the text from the input image using Times New Roman, 18px, black text on a white background." + ] + }, + "tags": [ + "image-processing", + "text-formatting", + "OCR", + "font-style", + "image-editing", + "visual-text", + "typography" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"\",\"fontFamily\":\"Arial\",\"fontSize\":24,\"fontColor\":\"#FF0000\",\"backgroundColor\":\"#FFFFFF\",\"textAlign\":\"center\",\"bold\":true,\"italic\":false,\"underline\":false}", + "description": "Format text in the input image to Arial, 24px, bold, red color, white background, centered alignment." + }, + { + "inputJson": "{\"inputImage\":\"\",\"fontFamily\":\"Times New Roman\",\"fontSize\":16,\"fontColor\":\"#000000\",\"backgroundColor\":\"\",\"textAlign\":\"left\",\"bold\":false,\"italic\":true,\"underline\":true}", + "description": "Convert text in the image to Times New Roman, 16px, italic and underlined, black font with transparent background and left alignment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "image-processing.formatWord", + "description": "This tool accepts an input image containing a single word or text snippet, detects and extracts the word area, then applies specified formatting styles such as font size adjustment, color changes, bold/italic styles, and background highlighting. It outputs an image with the formatted word rendered in place, preserving the original image layout.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64-encoded image data containing the word to format", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Target font size in points to apply to the word", + "required": false, + "defaultValue": "14" + }, + { + "name": "fontColor", + "type": "string", + "description": "Font color to apply, as a hex code or color name", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to apply bold style to the word", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to apply italic style to the word", + "required": false, + "defaultValue": "false" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background highlight color behind the word, hex or name, empty string for no background", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the base64-encoded image data with the formatted word overlaid, plus bounding box coordinates of the formatted word in the output image." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically highlight, stylize, or emphasize a specific word within an image, for example in scanned documents, screenshots, or user interface screenshots. It is ideal for dynamically adjusting visual styles on text embedded in images, such as for presentation or annotation purposes.", + "limitations": "This tool assumes the input image contains a single prominent word; it cannot reliably process multi-word text or paragraphs. It cannot translate or change the text content itself, only style formats on detected word regions.", + "examples": [ + "Format the word in this screenshot to be red and bold.", + "Change the font size of the word in the image to 24pt and add yellow background highlight.", + "Make the word italic and blue in this input image." + ] + }, + "tags": [ + "image-processing", + "text-formatting", + "word-detection", + "image-annotation", + "font-styling" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"fontSize\":18,\"fontColor\":\"#FF0000\",\"bold\":true,\"italic\":false,\"backgroundColor\":\"\"}", + "description": "Input image with a word, format it as red, bold, 18pt font size with no background highlight." + }, + { + "inputJson": "{\"inputImage\":\"data:image/jpeg;base64,/9j/4AAQSkZJRg...\",\"fontSize\":16,\"fontColor\":\"#0000FF\",\"bold\":false,\"italic\":true,\"backgroundColor\":\"#FFFF00\"}", + "description": "Input JPEG image, format the word as italic blue font with yellow background highlight." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "image-processing.formatDataset", + "description": "This tool accepts a dataset of images with associated metadata and performs formatting operations to standardize the dataset. It can resize images, convert formats, normalize metadata fields, and organize data into a consistent schema, outputting a cleaned and uniformly formatted image dataset ready for analysis or training machine learning models.", + "category": "image-processing", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "An array of image objects, each containing image data (base64 or URL) and associated metadata to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "resizeDimensions", + "type": "object", + "description": "An object specifying target width and height (pixels) for resizing images uniformly. If omitted, original dimensions are kept.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetFormat", + "type": "string", + "description": "The desired image file format for all images, e.g., 'jpeg', 'png', or 'bmp'. If omitted, original format is kept.", + "required": false, + "defaultValue": "" + }, + { + "name": "normalizeMetadataFields", + "type": "array", + "description": "List of metadata field names to normalize (e.g., unify case, remove whitespace).", + "required": false, + "defaultValue": "" + }, + { + "name": "outputSchema", + "type": "string", + "description": "Specifies the schema format for the output dataset, such as 'COCO', 'PascalVOC', or 'Custom'.", + "required": false, + "defaultValue": "Custom" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured object containing the formatted dataset, including processed image data, updated metadata, and schema-compliant annotations if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare a heterogeneous image dataset for downstream computer vision tasks by standardizing image sizes, formats, and metadata fields into a consistent layout and schema.", + "limitations": "This tool does not perform image content augmentation or annotation labeling. It only formats and normalizes the existing dataset fields and images; external tools are needed for labeling or augmentation.", + "examples": [ + "Format a dataset by resizing all images to 256x256 pixels, convert all images to PNG, and normalize metadata fields for consistent naming.", + "Convert a dataset of images from various formats into JPEG format retaining original sizes and standardize to COCO annotation schema.", + "Organize images and metadata into a custom schema without resizing or format conversion, just normalizing metadata fields." + ] + }, + "tags": [ + "image processing", + "dataset formatting", + "image resizing", + "metadata normalization", + "image format conversion", + "computer vision" + ], + "examples": [ + { + "inputJson": "{\"images\":[{\"imageData\":\"base64EncodedString1\",\"metadata\":{\"label\":\"Cat \",\"source\":\"URL1\"}},{\"imageData\":\"base64EncodedString2\",\"metadata\":{\"label\":\"Dog\",\"source\":\"URL2\"}}],\"resizeDimensions\":{\"width\":256,\"height\":256},\"targetFormat\":\"png\",\"normalizeMetadataFields\":[\"label\"],\"outputSchema\":\"Custom\"}", + "description": "Resize images to 256x256, convert to PNG, normalize label field, keep custom schema." + }, + { + "inputJson": "{\"images\":[{\"imageData\":\"base64ImageA\",\"metadata\":{\"category\":\"Car\",\"source\":\"urlA\"}},{\"imageData\":\"base64ImageB\",\"metadata\":{\"category\":\"Bike\",\"source\":\"urlB\"}}],\"targetFormat\":\"jpeg\",\"outputSchema\":\"COCO\"}", + "description": "Convert all images to JPEG, organize dataset according to COCO schema, no resizing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "image-processing.formatContract", + "description": "This tool accepts an image of a contract document and processes it to enhance readability by formatting text areas, adjusting alignment, and applying consistent font styles. It outputs a cleaned and well-structured image of the contract, suitable for presentation or printing.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64-encoded string or URL of the contract image to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired image format for output (e.g., 'png', 'jpeg').", + "required": false, + "defaultValue": "png" + }, + { + "name": "enhanceText", + "type": "boolean", + "description": "Whether to enhance the legibility of text areas by adjusting contrast and sharpness.", + "required": false, + "defaultValue": "true" + }, + { + "name": "adjustAlignment", + "type": "boolean", + "description": "If true, automatically straighten and align the contract to correct any skew or rotation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "applyFontStyle", + "type": "boolean", + "description": "Apply a consistent font style and size on detected text regions to unify appearance.", + "required": false, + "defaultValue": "false" + }, + { + "name": "marginSize", + "type": "number", + "description": "Size of uniform margins to add around the contract image in pixels.", + "required": false, + "defaultValue": "20" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted contract image as a Base64-encoded string and metadata such as image format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to prepare contract images for legible presentation or printing by enhancing text clarity, correcting alignment issues, and applying consistent formatting. This is helpful in document management systems or when sharing scanned contracts visually.", + "limitations": "This tool does not perform optical character recognition (OCR) or convert images into editable text. It cannot fix severely damaged or handwritten documents and depends on input image quality to produce best results.", + "examples": [ + "Format a scanned contract image for clearer legibility and print-ready output.", + "Straighten and format a photographed contract document with uneven lighting.", + "Apply uniform font styling and add margins to a contract image for professional presentation." + ] + }, + "tags": [ + "image-processing", + "document-formatting", + "contract", + "text-enhancement", + "alignment", + "image-cleanup" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"https://example.com/scanned_contract.jpg\",\"outputFormat\":\"png\",\"enhanceText\":true,\"adjustAlignment\":true,\"applyFontStyle\":true,\"marginSize\":30}", + "description": "Enhance text, straighten, apply font styling and add margins to a scanned contract image from URL." + }, + { + "inputJson": "{\"inputImage\":\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD...\",\"outputFormat\":\"jpeg\",\"enhanceText\":true,\"adjustAlignment\":false,\"applyFontStyle\":false,\"marginSize\":10}", + "description": "Format an uploaded contract image (base64) improving text but not altering alignment or font style." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "image-processing.formatAPI", + "description": "This tool accepts image processing API specification code snippets as input and formats them into a clear, consistent, and standardized style. It processes the raw API definitions, applies code formatting rules, normalizes JSON/YAML structure, fixes indentation, and outputs a well-structured, human-readable API specification for seamless integration and documentation.", + "category": "image-processing", + "parameters": [ + { + "name": "apiCode", + "type": "string", + "description": "Raw image processing API specification code (e.g., JSON, YAML, or other code snippets) to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "The format of the input API code, such as 'json', 'yaml', or 'raw'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the formatted API code, e.g., 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces used for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to alphabetically sort keys in JSON objects for consistent formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted image processing API code as a string, in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or unformatted image processing API code snippets that require consistent styling and structure to improve readability, maintainability, and integration into projects or documentation. It helps standardize API definitions before further processing or deployment.", + "limitations": "Does not validate the semantic correctness or completeness of the API specification; only formats code style and structure. Complex or proprietary formats may not be supported fully.", + "examples": [ + "Format an unindented JSON image processing API spec into a properly indented and sorted JSON format.", + "Convert a YAML-based image processing API definition into a consistently formatted JSON document.", + "Apply standard indentation and key sorting to a raw JSON API snippet for better readability." + ] + }, + "tags": [ + "image-processing", + "api", + "formatting", + "code-style", + "json", + "yaml" + ], + "examples": [ + { + "inputJson": "{\"apiCode\":\"{\\\"name\\\":\\\"ImageProcessor\\\",\\\"endpoints\\\":{\\\"resize\\\":{\\\"method\\\":\\\"POST\\\",\\\"path\\\":\\\"/resize\\\"}}}\",\"inputFormat\":\"json\",\"outputFormat\":\"json\",\"indentation\":4,\"sortKeys\":true}", + "description": "Format a minimal JSON image processing API with 4 spaces indentation and sorted keys." + }, + { + "inputJson": "{\"apiCode\":\"resize:\\n method: POST\\n path: /resize\\nname: ImageProcessor\\n\",\"inputFormat\":\"yaml\",\"outputFormat\":\"json\",\"indentation\":2,\"sortKeys\":false}", + "description": "Convert YAML image processing API specification to formatted JSON without sorting keys, using 2 spaces indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "image-processing.formatTest", + "description": "This tool accepts an image and a test specification describing formatting validations to perform on images, such as checking pixel format, color profile, resolution, or metadata presence. It processes the image to verify if these formatting criteria are met, returning a detailed test result report indicating pass/fail statuses and error details for each tested criterion.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string representing the image data to be tested.", + "required": true, + "defaultValue": "" + }, + { + "name": "testSpec", + "type": "object", + "description": "Object defining the formatting tests to perform on the image, e.g., expected pixel format, color profile, resolution, or metadata to validate.", + "required": true, + "defaultValue": "" + }, + { + "name": "allowWarnings", + "type": "boolean", + "description": "If true, the test will report warnings for minor discrepancies instead of failures.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall pass/fail status, detailed results for each formatting test performed, including error or warning messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when verifying that images conform to specific formatting standards as part of quality control or validation workflows, such as ensuring correct color profile, resolution, or metadata before further processing or deployment.", + "limitations": "Cannot correct image formatting errors, only detects and reports them. Not designed for content-based image analysis or visual quality assessments unrelated to formatting specs.", + "examples": [ + "Check if an image uses the sRGB color profile with 300dpi resolution.", + "Validate metadata presence and pixel format of a given image.", + "Perform a comprehensive format compliance test before image publishing." + ] + }, + "tags": [ + "image-processing", + "formatting", + "validation", + "quality-control", + "metadata", + "color-profile", + "resolution" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"testSpec\":{\"pixelFormat\":\"RGBA\",\"colorProfile\":\"sRGB\",\"resolutionDPI\":300},\"allowWarnings\":false}", + "description": "Validate an image to check if it matches expected RGBA pixel format, sRGB color profile, and has 300 DPI resolution." + }, + { + "inputJson": "{\"imageData\":\"/9j/4AAQSkZJRgABAQEASABIAAD/...\",\"testSpec\":{\"metadataRequired\":[\"EXIF\",\"IPTC\"]},\"allowWarnings\":true}", + "description": "Test if the image contains required EXIF and IPTC metadata fields, reporting warnings if some metadata is missing but not failing outright." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "image-processing.sendAlert", + "description": "This tool accepts a processed image or image metadata indicating a security anomaly (e.g., detected intrusion or suspicious activity) and sends a customized alert message to designated recipients via email or messaging systems. It processes input image evidence and generates an alert summary including severity, time, and location, then dispatches the alert for real-time response.", + "category": "image-processing", + "parameters": [ + { + "name": "imageId", + "type": "string", + "description": "Unique identifier or URL of the processed image showing the security concern", + "required": true, + "defaultValue": "" + }, + { + "name": "alertMessage", + "type": "string", + "description": "Custom alert message content to describe the security event", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity level of the alert (e.g., low, medium, high, critical)", + "required": true, + "defaultValue": "medium" + }, + { + "name": "recipientList", + "type": "array", + "description": "List of email addresses or contact IDs to receive the alert", + "required": true, + "defaultValue": "" + }, + { + "name": "location", + "type": "string", + "description": "Physical or logical location related to the alert (optional)", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "Timestamp of the event; if empty, current time is used", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Confirmation object with alert dispatch status and detailed information" + }, + "aiAgent": { + "useCase": "Use this tool when you have identified a security threat or anomaly within image data or video frames and need to notify relevant personnel or systems immediately for timely intervention. It integrates image-derived evidence into informative alerts with severity and location context to improve incident response.", + "limitations": "This tool does not perform image analysis or anomaly detection itself, it requires upstream processing to generate input parameters. It cannot send alerts beyond supported communication methods (e.g., email, messaging platforms). It does not archive or store images.", + "examples": [ + "Send alert for a detected intrusion image with high severity to security team emails.", + "Dispatch customized alert about an unusual object detected at a specific location with timestamp.", + "Notify maintenance staff of safety hazard captured on camera via email alert." + ] + }, + "tags": [ + "image-processing", + "alerting", + "security", + "notification", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"imageId\":\"img_20240610_153200\",\"alertMessage\":\"Intrusion detected at warehouse gate.\",\"severityLevel\":\"high\",\"recipientList\":[\"security@company.com\",\"manager@company.com\"],\"location\":\"Warehouse Gate 3\",\"timestamp\":\"2024-06-10T15:32:00Z\"}", + "description": "High severity intrusion alert sent to security and management with image evidence and location." + }, + { + "inputJson": "{\"imageId\":\"img_20240610_090000\",\"alertMessage\":\"Fire hazard detected in chemical storage.\",\"severityLevel\":\"critical\",\"recipientList\":[\"emergency@company.com\"],\"location\":\"Chemical Storage Room\"}", + "description": "Critical fire hazard alert sent immediately to emergency contacts, timestamp defaults to current time." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "image-processing.draftReport", + "description": "This tool accepts one or more images and analyzes them to extract key visual features such as objects detected, color statistics, and scene descriptions. It then compiles these insights into a structured draft report in JSON format that summarizes the analysis results per image. The output supports further enhancement or export as a human-readable summary.", + "category": "image-processing", + "parameters": [ + { + "name": "imageUrls", + "type": "array", + "description": "An array of image URLs or base64 strings to be analyzed in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeObjectDetection", + "type": "boolean", + "description": "Whether to perform object detection on each image and include detected objects in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeColorAnalysis", + "type": "boolean", + "description": "Whether to include color histogram statistics and dominant color information for each image.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSceneDescription", + "type": "boolean", + "description": "Whether to generate a natural language scene description summarizing each image's content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxObjects", + "type": "number", + "description": "Maximum number of detected objects to include per image, sorted by confidence.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON report containing an array of image analyses including detected objects, color stats, and scene descriptions for each input image." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate an initial analytical summary of visual content from multiple images to facilitate reporting, review, or further processing steps. It helps in quickly drafting visual reports by extracting and compiling key image insights without manual inspection.", + "limitations": "This tool does not perform advanced image editing or in-depth semantic scene understanding beyond basic object detection and description. It cannot generate fully formatted documents like PDFs or Word reports, only JSON summaries.", + "examples": [ + "Generate a draft report summarizing objects and colors detected in a batch of product photos.", + "Create an initial analysis report of surveillance images highlighting detected persons and scene descriptions.", + "Obtain a color profile and object list summary for a set of landscape photos for cataloging purposes." + ] + }, + "tags": [ + "image-analysis", + "reporting", + "object-detection", + "color-analysis", + "scene-description", + "batch-processing" + ], + "examples": [ + { + "inputJson": "{\"imageUrls\":[\"https://example.com/image1.jpg\",\"https://example.com/image2.jpg\"],\"includeObjectDetection\":true,\"includeColorAnalysis\":true,\"includeSceneDescription\":true,\"maxObjects\":3}", + "description": "Draft a report for two images including object detection (max 3 objects), color analysis, and scene descriptions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "image-processing.composeText", + "description": "This tool overlays customizable text onto a provided image. It accepts an input image along with text content, font properties, color, position, and optional styling such as background color or transparency. The output is the original image with the text composited as specified, suitable for captions, watermarks, or annotations.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64 encoded string or URL of the image to add text to.", + "required": true, + "defaultValue": "" + }, + { + "name": "text", + "type": "string", + "description": "The text content to overlay on the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size for the text in pixels.", + "required": false, + "defaultValue": "24" + }, + { + "name": "fontFamily", + "type": "string", + "description": "The font family to use for the text (e.g., Arial, Times New Roman).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "color", + "type": "string", + "description": "Hex code or color name for the text color.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "position", + "type": "object", + "description": "X and Y coordinates (in pixels) specifying the text's position on the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Optional background color for text area as hex code or color name; transparent if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "opacity", + "type": "number", + "description": "Opacity level for the text overlay, from 0 (transparent) to 1 (opaque).", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "Returns a base64 encoded string of the new image with text composited on it." + }, + "aiAgent": { + "useCase": "Use this tool to add readable, styled text annotations, captions, or watermarks to images during automated image processing workflows. Ideal for generating labeled images, branding with watermarks, or adding informative notes on photos dynamically.", + "limitations": "Does not perform advanced text layout such as wrapping or multiline formatting automatically; text position must fit within image bounds specified by coordinates. Does not support vector or animated images; only raster images.", + "examples": [ + "Add the caption 'Summer Sale' at coordinates (50, 100) in bold red font to a product image.", + "Overlay a semi-transparent watermark '© 2024 Company' at bottom-right corner with white font on a JPEG photo.", + "Annotate a map image by placing 'City Center' label with blue text at position (300, 450)." + ] + }, + "tags": [ + "image-processing", + "text-overlay", + "annotation", + "watermarking", + "graphics", + "captioning" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0...\",\"text\":\"Hello World\",\"fontSize\":32,\"fontFamily\":\"Verdana\",\"color\":\"#FF0000\",\"position\":{\"x\":100,\"y\":150},\"backgroundColor\":\"\",\"opacity\":1}", + "description": "Add 'Hello World' in red Verdana font size 32 at position (100, 150) on the image." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/image.jpg\",\"text\":\"© 2024 MyCompany\",\"fontSize\":18,\"fontFamily\":\"Arial\",\"color\":\"#FFFFFF\",\"position\":{\"x\":450,\"y\":380},\"backgroundColor\":\"#000000\",\"opacity\":0.5}", + "description": "Add semi-transparent white watermark with black background at bottom of image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "image-processing.buildBranch", + "description": "Constructs a visual representation of a branching structure (like a tree or code branch) within an image space. Accepts parameters defining branch angles, lengths, recursion depth, colors, and canvas size, then generates an image of the composed branch structure in PNG format.", + "category": "image-processing", + "parameters": [ + { + "name": "canvasWidth", + "type": "number", + "description": "Width in pixels of the output image canvas.", + "required": true, + "defaultValue": "800" + }, + { + "name": "canvasHeight", + "type": "number", + "description": "Height in pixels of the output image canvas.", + "required": true, + "defaultValue": "600" + }, + { + "name": "startPoint", + "type": "object", + "description": "Coordinates {x, y} where the initial branch starts on the canvas.", + "required": false, + "defaultValue": "{\"x\":400,\"y\":600}" + }, + { + "name": "initialLength", + "type": "number", + "description": "Length in pixels of the initial branch segment.", + "required": true, + "defaultValue": "150" + }, + { + "name": "angle", + "type": "number", + "description": "Branch angle in degrees at which new branches diverge relative to their parent branch.", + "required": true, + "defaultValue": "30" + }, + { + "name": "lengthReduceFactor", + "type": "number", + "description": "Multiplier to reduce each branch segment length per recursion level (between 0 and 1).", + "required": true, + "defaultValue": "0.7" + }, + { + "name": "depth", + "type": "number", + "description": "Recursion depth defining how many branch levels to build.", + "required": true, + "defaultValue": "5" + }, + { + "name": "branchColor", + "type": "string", + "description": "Color code (hex or named) used to draw branches.", + "required": false, + "defaultValue": "#654321" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Color code for the image background.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format. Currently supports 'png' or 'svg'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the image data encoded in base64, format, and metadata about the generated branch structure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a visual diagram or artistic representation of branching structures, such as visualizing hierarchical data, generating procedural trees for graphics, or illustrating recursive algorithm concepts visually.", + "limitations": "Cannot interpret photographic images to find branches; only generates branches procedurally from parameters. Does not support complex textures or 3D branches.", + "examples": [ + "Generate a 5-level branching tree image with brown branches on white background.", + "Create a branch diagram with initial length 200 pixels and branch angle 45 degrees.", + "Produce an SVG of a colorful branch structure for documentation graphics." + ] + }, + "tags": [ + "image", + "graphics", + "branching", + "recursive", + "procedural", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"canvasWidth\":800,\"canvasHeight\":600,\"initialLength\":150,\"angle\":30,\"lengthReduceFactor\":0.7,\"depth\":5,\"branchColor\":\"#654321\",\"backgroundColor\":\"#FFFFFF\",\"outputFormat\":\"png\"}", + "description": "Generate a 800x600 PNG image with a 5-level brown branching structure on white background." + }, + { + "inputJson": "{\"canvasWidth\":500,\"canvasHeight\":500,\"initialLength\":100,\"angle\":45,\"lengthReduceFactor\":0.6,\"depth\":4,\"branchColor\":\"green\",\"backgroundColor\":\"#EEE\",\"outputFormat\":\"svg\"}", + "description": "Create a 500x500 SVG image with a green branch structure with 4 recursion levels and 45 degree branch angle." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "image-processing.buildContainer", + "description": "Constructs a virtual image container by combining multiple input images or layers into a single composite container image. Accepts an array of images with optional transformations and layering instructions, processes layering and blending, and outputs a container image object suitable for further image processing or exporting.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImages", + "type": "array", + "description": "Array of image objects or URLs to be included in the container, each with optional metadata like position, opacity, and blend mode.", + "required": true, + "defaultValue": "" + }, + { + "name": "containerWidth", + "type": "number", + "description": "Width in pixels of the output container image.", + "required": false, + "defaultValue": "1024" + }, + { + "name": "containerHeight", + "type": "number", + "description": "Height in pixels of the output container image.", + "required": false, + "defaultValue": "768" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Hex code or color name for the container's background color.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "composeMethod", + "type": "string", + "description": "Method used to compose images in the container, e.g., 'layered', 'grid', 'stacked'.", + "required": false, + "defaultValue": "layered" + }, + { + "name": "preserveTransparency", + "type": "boolean", + "description": "Whether to keep transparency in input images when composing the container.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A container image object including combined image data, metadata about composition layers, dimensions, and format information." + }, + "aiAgent": { + "useCase": "Use this tool when combining multiple images or graphic layers into a single container image structure for further processing, such as exporting as a single file or applying unified edits. It's practical for creating image composites, sprite sheets, or layered image containers.", + "limitations": "Cannot edit or manipulate individual layers beyond predefined transformations; does not perform advanced image editing such as filtering or deep retouching on the input images themselves.", + "examples": [ + "Build a container image from three product photos with transparency preserved.", + "Create a grid-style container image from a set of user avatars sizing to 500x500 pixels.", + "Compose multiple UI element images into a layered container with white background." + ] + }, + "tags": [ + "image-processing", + "container", + "image-composite", + "layering", + "graphics" + ], + "examples": [ + { + "inputJson": "{\"inputImages\":[{\"url\":\"https://example.com/image1.png\",\"position\":{\"x\":0,\"y\":0},\"opacity\":1,\"blendMode\":\"normal\"},{\"url\":\"https://example.com/image2.png\",\"position\":{\"x\":100,\"y\":100},\"opacity\":0.5,\"blendMode\":\"multiply\"}],\"containerWidth\":800,\"containerHeight\":600,\"backgroundColor\":\"#000000\",\"composeMethod\":\"layered\",\"preserveTransparency\":true}", + "description": "Create a layered container image from two input PNGs with specified positions and blending on a black background." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "image-processing.buildService", + "description": "Creates and deploys a custom image processing service based on provided specifications. Accepts configuration inputs defining processing capabilities like format conversion, resizing, filtering, and analysis features, and outputs a runnable service endpoint with detailed API documentation for integration.", + "category": "image-processing", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "Unique name identifier for the image processing service to be built", + "required": true, + "defaultValue": "" + }, + { + "name": "processingCapabilities", + "type": "array", + "description": "List of image processing features to include, e.g., ['resize','filter','formatConversion','objectDetection']", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedFormats", + "type": "array", + "description": "Image formats that the service will accept and output, e.g., ['jpeg','png','bmp','tiff']", + "required": false, + "defaultValue": "[\"jpeg\",\"png\"]" + }, + { + "name": "maxImageSizeMB", + "type": "number", + "description": "Maximum image file size in megabytes the service can handle", + "required": false, + "defaultValue": "10" + }, + { + "name": "enableAuthentication", + "type": "boolean", + "description": "Whether the service requires authentication for API access", + "required": false, + "defaultValue": "false" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Target environment for service deployment, e.g., 'cloud','local','container'", + "required": false, + "defaultValue": "cloud" + }, + { + "name": "apiVersion", + "type": "string", + "description": "Version identifier for the API to be generated", + "required": false, + "defaultValue": "v1" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing service URL endpoint, API specification in OpenAPI format, deployment status, and logs if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate a tailored image processing microservice that encapsulates specific capabilities and deployment preferences, to enable automated integration in larger workflows or applications.", + "limitations": "Cannot build services outside image processing domain, does not support real-time streaming input, and cannot guarantee operational uptime or scaling beyond initial configuration.", + "examples": [ + "Build an image processing service that supports resizing, filtering, and accepts JPEG and PNG formats, deploy to cloud with authentication enabled.", + "Create a local deployment of an image processing API that performs format conversion and object detection on TIFF images up to 5MB.", + "Generate a containerized service for basic format conversions and resizing without authentication for v2 API version." + ] + }, + "tags": [ + "image-processing", + "service-building", + "api-generation", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"fastImageApi\",\"processingCapabilities\":[\"resize\",\"filter\"],\"supportedFormats\":[\"jpeg\",\"png\"],\"maxImageSizeMB\":15,\"enableAuthentication\":true,\"deploymentEnvironment\":\"cloud\",\"apiVersion\":\"v1\"}", + "description": "Build a cloud deployed image processing service named fastImageApi supporting resizing and filtering with authentication." + }, + { + "inputJson": "{\"serviceName\":\"localImgProc\",\"processingCapabilities\":[\"formatConversion\",\"objectDetection\"],\"supportedFormats\":[\"tiff\"],\"maxImageSizeMB\":5,\"enableAuthentication\":false,\"deploymentEnvironment\":\"local\",\"apiVersion\":\"v1\"}", + "description": "Create a local image processing service focused on format conversion and object detection for TIFF images up to 5MB without authentication." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "image-processing.buildPullRequest", + "description": "This tool accepts a set of image-processing code changes as input, constructs a clean, structured Pull Request (PR) including code diffs, commit messages, and descriptions focused on the image processing domain, and outputs a ready-to-submit PR object. It helps automate PR creation for image-processing code repositories from change inputs.", + "category": "image-processing", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the git repository where the image-processing code changes will be submitted.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The target branch name where the PR will be created, e.g. 'feature/image-enhancement'.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The base branch from which the PR will be branched off, usually 'main' or 'master'.", + "required": true, + "defaultValue": "main" + }, + { + "name": "codeDiff", + "type": "string", + "description": "Unified diff patch string representing the code changes for image processing features or fixes.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Commit message describing the changes made in the code diff, focusing on image-processing context.", + "required": true, + "defaultValue": "" + }, + { + "name": "prTitle", + "type": "string", + "description": "Title of the Pull Request summarizing the changes in a concise manner.", + "required": true, + "defaultValue": "" + }, + { + "name": "prDescription", + "type": "string", + "description": "Detailed description of the Pull Request explaining what the image-processing changes do and why.", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of GitHub usernames to request review from.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "labels", + "type": "array", + "description": "List of GitHub labels to assign to the PR, e.g., ['image-processing','enhancement'].", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed Pull Request ready for submission, including fields: prUrl (string), prId (number|string), summary (string)" + }, + "aiAgent": { + "useCase": "Use this tool when automatically generating or assisting with creating Pull Requests that contain image-processing code changes. It standardizes PR creation from raw code diffs and metadata, facilitating smooth collaboration and code review in image-processing repositories.", + "limitations": "This tool does not interact directly with repositories or submit Pull Requests; it only builds the PR object. Network operations or authentication must be handled externally. It also requires well-formed diffs and metadata as input.", + "examples": [ + "Create a PR to add a new filter implementation to an image processing library repository.", + "Build a PR describing bug fixes in image processing code with appropriate commit messages and reviewers.", + "Generate a PR object for image enhancement feature branch targeting the main branch." + ] + }, + "tags": [ + "image-processing", + "pull-request", + "code-management", + "automation", + "git", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/image-filters.git\",\"branchName\":\"feature/gaussian-blur\",\"baseBranch\":\"main\",\"codeDiff\":\"diff --git a/filter.c b/filter.c\\nindex e69de29..b10a5d6 100644\\n--- a/filter.c\\n+++ b/filter.c\\n@@ -0,0 +1,10 @@\\n+void applyGaussianBlur(Image *img) {\\n+ // implementation code\\n+}\\n\",\"commitMessage\":\"Add Gaussian blur filter implementation\",\"prTitle\":\"Add Gaussian Blur Filter\",\"prDescription\":\"This PR adds a new Gaussian blur filter to improve image smoothing capabilities.\",\"reviewers\":[\"alice\",\"bob\"],\"labels\":[\"enhancement\",\"image-processing\"]}", + "description": "Build a PR object for adding a Gaussian blur filter with reviewers and labels." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "image-processing.buildEndpoint", + "description": "Creates a customizable HTTP image processing endpoint that accepts images and applies specified transformations such as resize, crop, and filter, returning the processed image in a chosen format. Input includes image data, transformation options, and output format; output is an API endpoint URL with the configured processing capabilities.", + "category": "image-processing", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL of the server where the endpoint will be hosted, required to construct the endpoint URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "List of transformation operations (resize, crop, filter) to apply to images received by the endpoint.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "acceptedFormats", + "type": "array", + "description": "List of accepted image input formats (e.g., jpg, png) for the endpoint.", + "required": false, + "defaultValue": "[\"jpg\",\"png\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format returned by the endpoint (e.g., jpg, png, webp).", + "required": false, + "defaultValue": "\"png\"" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed image file size in megabytes for uploading to the endpoint.", + "required": false, + "defaultValue": "10" + }, + { + "name": "enableCaching", + "type": "boolean", + "description": "Enable caching of processed images to improve performance on repeated requests.", + "required": false, + "defaultValue": "true" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the endpoint requires authentication to access and process images.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed endpoint URL and configuration metadata for image processing." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically create a functional HTTP endpoint for server-side image processing according to specified transformations and constraints. Ideal for integrating rapid image manipulation in apps or workflows without manual coding of the endpoint.", + "limitations": "Does not actually deploy the endpoint—only generates the configuration and endpoint URL string based on inputs; the server infrastructure and runtime environment must exist and support provided configurations.", + "examples": [ + "Create an endpoint on https://api.myserver.com that resizes images to 800x600 pixels and outputs PNG format.", + "Build an authenticated endpoint that accepts JPG inputs, applies a grayscale filter, and caches results.", + "Generate a public endpoint that crops images to 400x400 pixels and limits uploads to 5MB." + ] + }, + "tags": [ + "image-processing", + "api", + "endpoint", + "image-transformation", + "resize", + "crop", + "filter" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://api.example.com/image\",\"transformations\":[{\"operation\":\"resize\",\"width\":800,\"height\":600}],\"outputFormat\":\"png\"}", + "description": "Creates an endpoint on https://api.example.com/image to resize images to 800x600 and output PNG." + }, + { + "inputJson": "{\"baseUrl\":\"https://imageserver.com/api\",\"transformations\":[{\"operation\":\"filter\",\"type\":\"grayscale\"}],\"acceptedFormats\":[\"jpg\"],\"authenticationRequired\":true}", + "description": "Builds an authenticated endpoint at imageserver.com applying grayscale filter on JPG images." + }, + { + "inputJson": "{\"baseUrl\":\"https://cdn.myapp.com/imgproc\",\"transformations\":[{\"operation\":\"crop\",\"width\":400,\"height\":400}],\"maxFileSizeMB\":5,\"enableCaching\":true}", + "description": "Creates a public endpoint for cropping images to 400x400, max 5MB upload with caching enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "image-processing.buildConfig", + "description": "This tool accepts user inputs specifying desired image processing operations, their parameters, and output settings. It constructs a comprehensive JSON configuration object that defines a processing pipeline combining filters, transformations, and output format options. The output is a structured config to guide image processing workflows.", + "category": "image-processing", + "parameters": [ + { + "name": "filters", + "type": "array", + "description": "An array of filter definitions to apply, each with name and parameters.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "transformations", + "type": "array", + "description": "List of image transformations such as resize, rotate, crop with parameters.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output image format (e.g., 'jpeg', 'png').", + "required": true, + "defaultValue": "png" + }, + { + "name": "quality", + "type": "number", + "description": "Quality setting for output image (1-100), applicable for lossy formats.", + "required": false, + "defaultValue": "80" + }, + { + "name": "metadataHandling", + "type": "string", + "description": "Instructions on how to handle image metadata: 'preserve', 'strip', or 'custom'.", + "required": false, + "defaultValue": "preserve" + }, + { + "name": "enableCaching", + "type": "boolean", + "description": "Whether to enable caching of processed images for performance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the complete image processing configuration, including filters, transformations, output format, and processing options." + }, + "aiAgent": { + "useCase": "Use this tool when assembling detailed image processing configurations based on user-specified filters, transformations, and output preferences. It simplifies building complex pipelines by generating standardized config objects usable by image processing engines.", + "limitations": "This tool builds configuration objects but does not execute image processing itself. It requires valid inputs for filters and transformations; it cannot validate parameter semantics beyond basic type checking.", + "examples": [ + "Build a config applying a grayscale filter and resizing to 800x600 output as JPEG.", + "Create a pipeline with blur and rotate operations, output PNG with metadata stripped.", + "Configure an image pipeline with custom filters, preserving metadata and enabling caching." + ] + }, + "tags": [ + "image", + "configuration", + "pipeline", + "filters", + "transformations", + "output-format" + ], + "examples": [ + { + "inputJson": "{\"filters\":[{\"name\":\"grayscale\",\"parameters\":{}}],\"transformations\":[{\"type\":\"resize\",\"width\":800,\"height\":600}],\"outputFormat\":\"jpeg\",\"quality\":90,\"metadataHandling\":\"preserve\",\"enableCaching\":true}", + "description": "Construct config with grayscale filter, resize transformation to 800x600, output jpeg quality 90." + }, + { + "inputJson": "{\"filters\":[{\"name\":\"blur\",\"parameters\":{\"radius\":5}}],\"transformations\":[{\"type\":\"rotate\",\"angle\":90}],\"outputFormat\":\"png\",\"metadataHandling\":\"strip\",\"enableCaching\":false}", + "description": "Build config applying blur with radius 5 and rotating 90 degrees, output png without metadata caching disabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "image-processing.generateDashboard", + "description": "Generates a visual analytics dashboard summarizing image processing metrics from a set of input images. Accepts an array of images and processing metadata, computes statistical summaries such as average resolution, dominant colors, processing timings, and generates charts and tables as output in a structured dashboard format for monitoring and analysis.", + "category": "image-processing", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "Array of image files or image data objects to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "processingMetadata", + "type": "object", + "description": "An object containing metadata about the image processing steps applied, including timestamps and processing types.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "metricsToInclude", + "type": "array", + "description": "List of metric names to include in the dashboard (e.g., ['resolution','colorDistribution','processingTime']).", + "required": false, + "defaultValue": "[\"resolution\",\"colorDistribution\",\"processingTime\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the dashboard output, e.g., 'json' for data or 'html' for an interactive dashboard page.", + "required": false, + "defaultValue": "json" + }, + { + "name": "title", + "type": "string", + "description": "Title of the analytics dashboard report.", + "required": false, + "defaultValue": "\"Image Processing Analytics\"" + } + ], + "returns": { + "type": "object", + "description": "A structured dashboard object containing summary statistics, charts data, and optionally visualization markup depending on the outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a comprehensive summary and visualization dashboard from a batch of images and their processing details to understand metrics like image resolutions, color usage, and processing durations across the dataset. Ideal for monitoring and reporting on image processing pipelines or quality control.", + "limitations": "Does not perform image processing itself, only analyzes existing image data and metadata provided. Visualizations are limited to common chart types and summary statistics; advanced custom visualizations are not supported.", + "examples": [ + "Generate a dashboard showing dominant colors and average resolution for 100 processed images.", + "Create an HTML report summarizing processing times and errors for a batch of images.", + "Output JSON data summarizing image quality metrics from a supplied set of image files." + ] + }, + "tags": [ + "image-processing", + "analytics", + "dashboard", + "visualization", + "metrics", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"images\":[\"image1.png\",\"image2.png\"],\"processingMetadata\":{\"image1.png\":{\"processedAt\":\"2024-06-01T12:00:00Z\",\"steps\":[\"resize\",\"filterApplied\"]},\"image2.png\":{\"processedAt\":\"2024-06-01T12:05:00Z\",\"steps\":[\"resize\"]}},\"metricsToInclude\":[\"resolution\",\"processingTime\"],\"outputFormat\":\"json\",\"title\":\"Daily Image Processing Report\"}", + "description": "Generate JSON dashboard summarizing resolution and processing time metrics for two images processed with metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "image-processing.generateQuery", + "description": "Generates a structured query string to search or filter images in a database or collection based on visual attributes and metadata. Accepts parameters defining attribute criteria like colors, shapes, textures, and metadata such as tags or timestamps, and outputs a query string compatible with image query engines or databases.", + "category": "image-processing", + "parameters": [ + { + "name": "color", + "type": "string", + "description": "Primary color keyword to filter images by dominant or prominent colors (e.g., 'red', 'blue', 'grayscale').", + "required": false, + "defaultValue": "" + }, + { + "name": "shape", + "type": "string", + "description": "Shape to filter images that contain specific geometric forms (e.g., 'circle', 'triangle', 'rectangle').", + "required": false, + "defaultValue": "" + }, + { + "name": "texture", + "type": "string", + "description": "Type of texture to filter images, such as 'smooth', 'rough', or 'grainy'.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of descriptive tags or keywords associated with images to include in the query.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dateRange", + "type": "object", + "description": "Object specifying start and end dates to filter images captured or created within this time frame.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata conditions in the query for refined searching.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string formatted for use with image search engines or database query systems." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically construct detailed search queries to retrieve images based on visual characteristics and metadata. It is ideal for applications querying large image datasets or when automated query generation is required for filtering images.", + "limitations": "Cannot process or analyze raw image data to extract features; only builds textual queries based on provided criteria.", + "examples": [ + "Generate a query for images with dominant blue color and circle shapes.", + "Create a search query filtering photos tagged with 'sunset' taken between two dates.", + "Build a query including texture 'rough' and specific metadata tags filtering." + ] + }, + "tags": [ + "image-processing", + "query-generation", + "search", + "filtering", + "metadata", + "visual-attributes" + ], + "examples": [ + { + "inputJson": "{\"color\":\"blue\",\"shape\":\"circle\",\"tags\":[\"ocean\",\"sky\"],\"includeMetadata\":true}", + "description": "Generate a query string filtering images with blue color, circle shapes, tags 'ocean' and 'sky', including metadata filters." + }, + { + "inputJson": "{\"dateRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-06-01\"},\"tags\":[\"mountain\",\"snow\"],\"includeMetadata\":false}", + "description": "Create a query string for images tagged as 'mountain' and 'snow' within the first half of 2023, without metadata filters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "image-processing.generateKPI", + "description": "Generates key performance indicators (KPIs) by analyzing images containing visual analytics (charts, graphs, dashboards). Accepts image files with visible data visualizations, processes them with OCR and image analysis to extract relevant metrics, and outputs structured numeric KPIs for performance tracking.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or URL of the image containing visual analytics (charts, graphs).", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiType", + "type": "string", + "description": "Type of KPI to extract (e.g., \"revenue\", \"traffic\", \"conversion rate\").", + "required": false, + "defaultValue": "" + }, + { + "name": "extractAll", + "type": "boolean", + "description": "If true, extract all detectable KPIs from the image instead of filtering by kpiType.", + "required": false, + "defaultValue": "false" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence level (0-1) for extracted KPIs to be included in results.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted KPIs as key-value pairs with their numeric values and confidence scores." + }, + "aiAgent": { + "useCase": "Use this tool when given images displaying analytical dashboards or charts from which numeric KPIs need to be programmatically extracted for reporting or data ingestion. It helps automate metric extraction from visual sources where raw data is unavailable.", + "limitations": "Cannot extract KPIs if images are low-quality, heavily distorted, or contain handwritten or non-standard chart formats. It may miss KPIs not explicitly represented visually or outside supported KPI categories.", + "examples": [ + "Extract conversion rate and revenue KPIs from a sales dashboard screenshot.", + "Process an image of a web traffic analytics graph to obtain key metrics.", + "Extract all KPIs available in a given image with multiple charts." + ] + }, + "tags": [ + "image-analysis", + "KPI-extraction", + "analytics", + "OCR", + "data-visualization", + "performance-metrics" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"kpiType\":\"revenue\",\"extractAll\":false,\"confidenceThreshold\":0.8}", + "description": "Extract the revenue KPI from a dashboard image." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/traffic_chart.png\",\"extractAll\":true}", + "description": "Extract all detectable KPIs from a web traffic chart image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "image-processing.generateArticle", + "description": "Generates a written article based on the analysis of input images and optional text prompts. Accepts one or more images and an optional text topic, analyzes visual content such as objects, scenes, and emotions, then produces a coherent multi-paragraph article relevant to the images and topic provided.", + "category": "image-processing", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "Array of images encoded as base64 strings or URLs to be analyzed for content extraction.", + "required": true, + "defaultValue": "" + }, + { + "name": "topic", + "type": "string", + "description": "Optional textual topic or prompt to guide article generation towards a specific domain or subject.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words to generate in the article.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) for the generated article text.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a short summary at the beginning of the article.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text and optional summary." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce a descriptive or informative article automatically based on visual content from one or more images, optionally focusing the narrative on a provided topic. Useful for content creation, automated reporting, or enriching image galleries with textual descriptions.", + "limitations": "This tool cannot guarantee factual accuracy beyond the information contained or inferred from images and prompt; it may also have difficulty with ambiguous or low-quality images. It is not suitable for generating highly technical or specialized articles without domain-specific training.", + "examples": [ + "Generate a travel article from a set of landscape photographs.", + "Create an article describing a product showcase from product images, with a promotional topic prompt.", + "Produce a news-like article summarizing events depicted in a series of photos from a recent sports match." + ] + }, + "tags": [ + "image-analysis", + "content-generation", + "article-writing", + "image-to-text", + "automated-report" + ], + "examples": [ + { + "inputJson": "{\"images\":[\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD...\"],\"topic\":\"Hiking in the Alps\",\"maxLength\":500,\"language\":\"en\",\"includeSummary\":true}", + "description": "Generate a medium-length article describing hiking scenes in the Alps based on a photo of mountain landscapes." + }, + { + "inputJson": "{\"images\":[\"https://example.com/product1.jpg\",\"https://example.com/product2.jpg\"],\"topic\":\"Latest smartphone features\",\"maxLength\":800,\"language\":\"en\",\"includeSummary\":false}", + "description": "Create an article focusing on new smartphone features from a set of product images without summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "image-processing.createLink", + "description": "Creates an interactive hyperlink annotation on an image, linking a specified region to a given URL. Accepts an image input and parameters defining the link area and the target URL, returning a new image with embedded clickable link metadata or an HTML image map.", + "category": "image-processing", + "parameters": [ + { + "name": "imageInput", + "type": "string", + "description": "The source image as a URL or base64-encoded string to which the link annotation will be added.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkUrl", + "type": "string", + "description": "The URL destination that the link region will point to when clicked.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "object", + "description": "Defines the rectangular area on the image for the link with properties: x (number), y (number), width (number), height (number). Coordinates are in pixels starting from top-left corner.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the output with embedded link, options include 'imageWithMeta' to embed link metadata or 'htmlImageMap' to generate an HTML image map.", + "required": false, + "defaultValue": "imageWithMeta" + } + ], + "returns": { + "type": "object", + "description": "An object with the new image data including the embedded clickable link or HTML image map code, depending on the output format selected." + }, + "aiAgent": { + "useCase": "Use this tool when needing to augment images with clickable regions linking to external URLs, for interactive image content in documents, web pages, or presentations. Ideal for creating image maps or images with embedded metadata for enhanced user interaction.", + "limitations": "Cannot embed complex shapes beyond rectangles, and support for clickable areas depends on the viewing platform supporting image metadata or HTML image maps. Not suited for video or non-static images.", + "examples": [ + "Create a clickable link on a product photo that leads users to the product page.", + "Generate an HTML image map for a website banner with multiple linked regions.", + "Embed a URL link into an infographic to provide additional information when clicked." + ] + }, + "tags": [ + "image", + "link", + "interactive", + "annotation", + "html", + "metadata", + "image map" + ], + "examples": [ + { + "inputJson": "{\"imageInput\":\"https://example.com/image.jpg\",\"linkUrl\":\"https://example.com/product\",\"region\":{\"x\":100,\"y\":50,\"width\":200,\"height\":150},\"outputFormat\":\"htmlImageMap\"}", + "description": "Create an HTML image map for a product image linking a rectangular region to the product URL." + }, + { + "inputJson": "{\"imageInput\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\"linkUrl\":\"https://info.example.com\",\"region\":{\"x\":20,\"y\":30,\"width\":100,\"height\":100}}", + "description": "Embed a clickable link into a base64 PNG image with default output format embedding link metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "image-processing.createInstance", + "description": "Creates an isolated and configurable instance of an image processing environment. Accepts parameters specifying processing capabilities and constraints, initializes resources, and returns an instance ID with its configuration for running image analysis or editing tasks.", + "category": "image-processing", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "A unique name for the image processing instance to identify it", + "required": true, + "defaultValue": "" + }, + { + "name": "maxConcurrentTasks", + "type": "number", + "description": "Maximum number of image processing tasks allowed to run concurrently in this instance", + "required": false, + "defaultValue": "5" + }, + { + "name": "supportedFormats", + "type": "array", + "description": "List of image file formats (e.g., jpeg, png, tiff) this instance supports for processing", + "required": false, + "defaultValue": "[\"jpeg\",\"png\"]" + }, + { + "name": "enableGPU", + "type": "boolean", + "description": "Flag to enable GPU acceleration for image processing operations", + "required": false, + "defaultValue": "false" + }, + { + "name": "memoryLimitMB", + "type": "number", + "description": "Maximum memory in megabytes allocated to this instance", + "required": false, + "defaultValue": "1024" + } + ], + "returns": { + "type": "object", + "description": "Details of the created instance including its ID, name, configuration, and status" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initialize a dedicated image processing environment with specified constraints and capabilities to efficiently manage multiple image tasks within a controlled and reusable instance. This helps in scalable processing scenarios or when isolation of tasks is required.", + "limitations": "This tool only creates and configures the processing instance. It does not perform any image processing operations itself, nor does it manage task execution beyond resource constraints.", + "examples": [ + "Create an instance named 'HighPerformance' with GPU enabled and 10 max concurrent tasks.", + "Create a lightweight instance for processing only JPEG images with 512MB memory.", + "Create a default instance with standard settings for general image processing tasks." + ] + }, + "tags": [ + "image-processing", + "instance-management", + "infrastructure", + "gpu", + "resource-management" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"HighPerformance\",\"maxConcurrentTasks\":10,\"supportedFormats\":[\"jpeg\",\"png\",\"tiff\"],\"enableGPU\":true,\"memoryLimitMB\":8192}", + "description": "Create a high-performance image processing instance with GPU acceleration and large memory limit for intensive tasks." + }, + { + "inputJson": "{\"instanceName\":\"LightweightInstance\",\"maxConcurrentTasks\":3,\"supportedFormats\":[\"jpeg\"],\"enableGPU\":false,\"memoryLimitMB\":512}", + "description": "Create a lightweight instance focused on JPEG processing with limited memory and no GPU." + }, + { + "inputJson": "{\"instanceName\":\"DefaultInstance\"}", + "description": "Create a default image processing instance with standard supported formats and default resource limits." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "image-processing.createPayment", + "description": "Generates a payment confirmation image by overlaying payment details such as amount, payer, and transaction ID on a customizable background or template image. Accepts payment data and optional image customization parameters and outputs a base64-encoded image suitable for receipts or digital invoices.", + "category": "image-processing", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "The payment amount to display on the image (e.g., 59.99).", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code for the payment amount (e.g., USD, EUR).", + "required": true, + "defaultValue": "" + }, + { + "name": "payerName", + "type": "string", + "description": "Full name of the payer to be displayed on the payment image.", + "required": true, + "defaultValue": "" + }, + { + "name": "transactionId", + "type": "string", + "description": "Unique transaction identifier to appear on the payment image.", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentDate", + "type": "string", + "description": "Date of the payment to show on the image in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "templateImageBase64", + "type": "string", + "description": "Optional base64-encoded background/template image to overlay payment details on; if empty, a default template is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "fontColor", + "type": "string", + "description": "Hex color code for the text overlay, e.g., '#000000' for black.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for the overlay text.", + "required": false, + "defaultValue": "24" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format, e.g., 'png' or 'jpeg'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated payment confirmation image as a base64 string and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an application or AI agent needs to create a visual payment confirmation or receipt image dynamically by embedding payment info onto a customizable or default background for sending via email, display, or storage. It is ideal for invoicing, digital receipts, or payment summaries.", + "limitations": "This tool does not process or verify payment information; it only creates a static visual representation. It cannot generate interactive or animated images.", + "examples": [ + "Generate a receipt image for a payment of $120.50 by John Doe with transaction ID TX1234 on today's date.", + "Create a payment confirmation image with a provided custom background template image in base64.", + "Produce a JPEG payment image with red font color showing amount and payer name." + ] + }, + "tags": [ + "image-processing", + "payment", + "receipt", + "digital-invoice", + "image-generation", + "business" + ], + "examples": [ + { + "inputJson": "{\"amount\":150.75,\"currency\":\"USD\",\"payerName\":\"Alice Johnson\",\"transactionId\":\"TXN789456\",\"paymentDate\":\"2024-06-15\"}", + "description": "Create a default styled payment image for payment of 150.75 USD by Alice Johnson with a transaction ID and date." + }, + { + "inputJson": "{\"amount\":59.99,\"currency\":\"EUR\",\"payerName\":\"Bob Smith\",\"transactionId\":\"PAY20240601\",\"fontColor\":\"#FF0000\",\"outputFormat\":\"jpeg\"}", + "description": "Generate a red font color payment confirmation JPEG image for a 59.99 EUR payment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "image-processing.createRisk", + "description": "This tool analyzes input images to detect and highlight visual security risks such as unauthorized access points, visible confidential information, or suspicious items. It accepts images in common formats, processes them using AI-driven object detection and pattern recognition, and outputs an annotated image with risk areas marked along with a detailed risk report.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64 encoded string or URL of the input image to analyze for security risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskCategories", + "type": "array", + "description": "List of specific risk categories to detect, like 'unauthorizedAccess', 'confidentialData', 'suspiciousObjects'.", + "required": false, + "defaultValue": "[\"unauthorizedAccess\",\"confidentialData\",\"suspiciousObjects\"]" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0 to 1) for detected risks to be reported.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "highlightColor", + "type": "string", + "description": "Hex color code used to annotate risk regions on the output image.", + "required": false, + "defaultValue": "#FF0000" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the annotated output image, e.g., 'png', 'jpeg'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "An object containing the annotated image as a base64 string and a detailed report of detected risks including categories and confidence scores." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing security camera footage, workstation screenshots, or facility photos to automatically identify physical or visual security risks in images. It's useful for risk assessment, compliance checks, or security system audits where visual input is analyzed for potential vulnerabilities.", + "limitations": "Cannot detect risks not visually apparent in the image; limited by image quality and supported risk categories; may produce false positives or missed detections depending on scenario complexity; does not perform manual verification or context-aware decision making.", + "examples": [ + "Analyze an image from a surveillance camera to detect any unauthorized entry points.", + "Check a photo of a workstation for visible confidential documents to assess data leak risks.", + "Scan pictures from a security audit to find suspicious objects in restricted zones." + ] + }, + "tags": [ + "image-processing", + "security", + "risk-detection", + "AI", + "object-detection", + "physical-security", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD...\",\"riskCategories\":[\"unauthorizedAccess\",\"confidentialData\"],\"confidenceThreshold\":0.8,\"highlightColor\":\"#FF4500\",\"outputFormat\":\"png\"}", + "description": "Detect unauthorized access points and visible confidential data areas in a JPEG image with high confidence threshold and highlight in orange." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "image-processing.createVideo", + "description": "This tool creates a video file from a sequence of input images. Users provide an ordered list of image URLs or base64-encoded images, along with parameters such as frame rate, resolution, and video format. The tool processes the images and encodes them into a continuous video stream, outputting a downloadable video file URL or base64 video data.", + "category": "image-processing", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "An ordered array of image data inputs, either URLs or base64-encoded strings representing each frame.", + "required": true, + "defaultValue": "" + }, + { + "name": "frameRate", + "type": "number", + "description": "The number of frames per second the video should play at.", + "required": true, + "defaultValue": "30" + }, + { + "name": "resolution", + "type": "object", + "description": "Width and height in pixels for the output video. Format: {\"width\": number, \"height\": number}.", + "required": false, + "defaultValue": "{\"width\":1920,\"height\":1080}" + }, + { + "name": "videoFormat", + "type": "string", + "description": "The desired output video format, e.g. mp4, webm, avi.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "loop", + "type": "boolean", + "description": "Whether the created video should loop playback continuously.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the video file or video data output, including a download URL or base64 encoded string and metadata like format and duration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a video from a series of static images, such as creating slideshows, time-lapses, or animations from image frames. It is ideal if you want to programmatically synthesize a playable video file with customizable frame rate and resolution based on a given image sequence.", + "limitations": "This tool does not perform image editing or enhancement; input images must be prepared beforehand. It cannot add audio tracks or advanced video effects. Large image sequences may require significant processing time and resources.", + "examples": [ + "Create a 10-second mp4 video at 24 fps from 240 images for a smooth time-lapse.", + "Generate a 5 fps animated webm video from 50 PNG frames for a webpage banner.", + "Make a 1280x720 resolution video looping infinitely using provided JPEG images at 30 fps." + ] + }, + "tags": [ + "video", + "image-sequence", + "media", + "encoding", + "animation", + "slideshow", + "time-lapse" + ], + "examples": [ + { + "inputJson": "{\"images\":[\"https://example.com/image1.png\",\"https://example.com/image2.png\",\"https://example.com/image3.png\"],\"frameRate\":24,\"resolution\":{\"width\":1280,\"height\":720},\"videoFormat\":\"mp4\",\"loop\":false}", + "description": "Create a 24 fps 1280x720 MP4 video from three external PNG images" + }, + { + "inputJson": "{\"images\":[\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUB...\"],\"frameRate\":10,\"videoFormat\":\"webm\",\"loop\":true}", + "description": "Generate a looping 10 fps WebM video from two base64 encoded PNG images with default resolution" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "image-processing.createOpportunity", + "description": "This tool analyzes an input image containing visual elements related to business environments, such as retail stores, offices, or products, to detect and highlight potential business opportunities. It processes the image to identify elements like customer engagement, product placement, or market gaps, and then generates a structured report outlining these opportunities with annotated image outputs.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64-encoded string of the input image showing a business scene or product setup to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "businessSector", + "type": "string", + "description": "Specifies the business sector or domain (e.g., retail, hospitality, tech) to tailor opportunity detection", + "required": true, + "defaultValue": "" + }, + { + "name": "highlightType", + "type": "string", + "description": "Type of opportunities to highlight, such as 'customerEngagement', 'productPlacement', or 'marketGaps'", + "required": false, + "defaultValue": "customerEngagement" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the processed image with opportunity highlights, e.g., 'png', 'jpeg'", + "required": false, + "defaultValue": "png" + }, + { + "name": "detectionSensitivity", + "type": "number", + "description": "Sensitivity level for detecting subtle opportunities, from 0 (low) to 1 (high)", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object containing an annotated image with highlighted opportunities and a detailed report describing detected business opportunities" + }, + "aiAgent": { + "useCase": "Use this tool when analyzing images of physical or digital business environments to identify unexploited opportunities, such as improving product displays, enhancing customer interactions, or spotting underserved market niches relevant to the given business sector. It aids strategic decision-making by visually and textually summarizing potential growth areas.", + "limitations": "This tool cannot replace expert market analysis or provide financial forecasts. Its effectiveness depends on image quality and domain relevance specified by the user.", + "examples": [ + "Analyze a retail store shelf image to find product placement opportunities for increasing sales.", + "Identify customer engagement opportunities in a coffee shop photo based on seating arrangements and foot traffic.", + "Detect market gaps in an office setup image to suggest new service offerings relevant for a tech business." + ] + }, + "tags": [ + "image-processing", + "business-insight", + "opportunity-detection", + "visual-analysis", + "retail", + "marketing", + "customer-engagement" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"\",\"businessSector\":\"retail\",\"highlightType\":\"productPlacement\",\"outputFormat\":\"png\",\"detectionSensitivity\":0.8}", + "description": "Analyze a retail store shelf image to highlight product placement opportunities." + }, + { + "inputJson": "{\"inputImage\":\"\",\"businessSector\":\"hospitality\",\"highlightType\":\"customerEngagement\",\"outputFormat\":\"jpeg\",\"detectionSensitivity\":0.6}", + "description": "Identify customer engagement opportunities in a coffee shop environment image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "image-processing.createVariable", + "description": "Creates a variable representing image data derived from processing parameters such as region selection, filtering, or feature extraction. Accepts an input image and processing instructions, then outputs a named variable containing the resulting image or numeric data for subsequent analysis or visualization.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64-encoded image string or URL of the image to process", + "required": true, + "defaultValue": "" + }, + { + "name": "variableName", + "type": "string", + "description": "Name assigned to the created variable to reference the processed data", + "required": true, + "defaultValue": "" + }, + { + "name": "regionOfInterest", + "type": "object", + "description": "Coordinates defining a rectangular region to focus processing on, as {x: number, y: number, width: number, height: number}", + "required": false, + "defaultValue": "" + }, + { + "name": "processType", + "type": "string", + "description": "Type of image processing to perform, e.g., 'filter', 'edgeDetection', 'colorHistogram'", + "required": true, + "defaultValue": "filter" + }, + { + "name": "processParameters", + "type": "object", + "description": "Key-value pairs of parameters specific to the chosen processType, e.g., kernel size for filter", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the variable name and the processed data as base64-encoded image or numeric array, depending on the processing performed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate and store processed image data or derived variables from provided images for downstream tasks such as analysis, visualization, or machine learning feature extraction.", + "limitations": "This tool does not perform complex multi-step image processing pipelines or interpret semantic contents beyond specified processing types. It assumes the input image and parameters are valid and does not validate image format internally.", + "examples": [ + "Create an edge detection variable from an input photo focusing on a subject's face.", + "Generate a color histogram variable summarizing an image's color distribution.", + "Apply a blur filter on a specified region of the supplied image and save as a variable." + ] + }, + "tags": [ + "image-processing", + "variable-creation", + "image-analysis", + "feature-extraction", + "image-filtering" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"https://example.com/image1.jpg\",\"variableName\":\"faceEdges\",\"regionOfInterest\":{\"x\":50,\"y\":50,\"width\":200,\"height\":200},\"processType\":\"edgeDetection\",\"processParameters\":{\"threshold\":100}}", + "description": "Create an edge detection variable named 'faceEdges' from a facial region in the input image." + }, + { + "inputJson": "{\"inputImage\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...\",\"variableName\":\"colorHist\",\"processType\":\"colorHistogram\",\"processParameters\":{\"bins\":16}}", + "description": "Generate a color histogram variable with 16 bins from a base64 PNG image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "image-processing.createComponent", + "description": "This tool accepts an image and parameters defining a UI or visual component region to extract or generate. It processes the image to isolate and create a reusable component, such as a button, icon, or panel, returning component metadata including positioning, size, and image data for integration or reuse in design systems.", + "category": "image-processing", + "parameters": [ + { + "name": "sourceImage", + "type": "string", + "description": "Base64-encoded or URL of the source image containing the visual element to extract.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentType", + "type": "string", + "description": "Type of component to create, e.g., 'button', 'icon', 'panel'. This guides extraction approach.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "object", + "description": "Coordinates defining the region of interest to extract, with x, y, width, and height properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "backgroundTransparent", + "type": "boolean", + "description": "Flag indicating whether background of extracted component should be made transparent.", + "required": false, + "defaultValue": "false" + }, + { + "name": "scaleFactor", + "type": "number", + "description": "Optional scale factor to resize the extracted component; 1.0 means original size.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "includeShadow", + "type": "boolean", + "description": "Whether to include drop shadows or other effects when extracting the component.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted component's metadata with image data (base64), bounding box, type, and optional properties for UI integration." + }, + "aiAgent": { + "useCase": "Use this tool to create individual visual components from complex UI screenshots or design images for reuse or analysis in UI/UX design workflows. It aids in extracting elements like buttons or icons for building component libraries from images.", + "limitations": "Cannot fully recreate interactive component behavior, only extracts static visual elements. Accuracy depends on provided region parameters; automatic detection of component bounds is limited.", + "examples": [ + "Extract a button component from a given image region to integrate into a React component library.", + "Create an icon component by isolating the specified area in a design mockup image.", + "Generate a transparent background panel component from a screenshot region for UI prototyping." + ] + }, + "tags": [ + "image-processing", + "component-extraction", + "ui-design", + "image-segmentation", + "visual-components" + ], + "examples": [ + { + "inputJson": "{\"sourceImage\":\"https://example.com/ui-screenshot.png\",\"componentType\":\"button\",\"region\":{\"x\":100,\"y\":50,\"width\":150,\"height\":45},\"backgroundTransparent\":true,\"scaleFactor\":1.0,\"includeShadow\":false}", + "description": "Extracts a button from the given screenshot region, makes background transparent, excludes shadow." + }, + { + "inputJson": "{\"sourceImage\":\"data:image/png;base64,iVBORw0KGgoAAAANS...\",\"componentType\":\"icon\",\"region\":{\"x\":10,\"y\":10,\"width\":64,\"height\":64},\"backgroundTransparent\":false,\"scaleFactor\":2.0,\"includeShadow\":true}", + "description": "Extracts an icon from a base64 image, doubles size, includes shadow and opaque background." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "notifications.analyzeTrend", + "description": "Analyzes notification delivery and engagement data over a specified time range to identify trends, spikes, or declines. Accepts input data on sent notifications, delivery success rates, click-through rates, and user interaction metrics. Produces a detailed trend analysis report highlighting significant patterns and changes.", + "category": "notifications", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "The start date (ISO 8601) for the trend analysis time window.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date (ISO 8601) for the trend analysis time window.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationTypes", + "type": "array", + "description": "Array of notification types (e.g., email, SMS, push) to include in the analysis. If empty or omitted, all types are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metrics to analyze such as 'deliveryRate', 'openRate', 'clickThroughRate', 'bounceRate'. Defaults to all key metrics.", + "required": false, + "defaultValue": "[\"deliveryRate\",\"openRate\",\"clickThroughRate\"]" + }, + { + "name": "threshold", + "type": "number", + "description": "Minimum percentage change considered significant for identifying trends (e.g., 10 for 10%).", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object detailing trend highlights, including identified spikes or drops per metric, timeline segments with largest changes, and summary statistics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to perform historical analysis on notification system performance to detect meaningful trends or anomalies in engagement and delivery metrics over time. It's particularly useful for optimizing notification strategies or diagnosing campaign effectiveness.", + "limitations": "This tool analyzes aggregated trend data only and does not evaluate or classify individual notification content or user sentiment. It also requires complete metric data for accurate analysis and does not predict future trends.", + "examples": [ + "Analyze notification delivery and engagement trends for push and email notifications over the past quarter.", + "Identify significant changes in click-through rates of SMS notifications in the last 30 days.", + "Get a trend analysis report on all notification types focusing on delivery success and bounce rates over the last month with a 5% threshold." + ] + }, + "tags": [ + "analysis", + "notifications", + "trend analysis", + "engagement", + "metrics", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01T00:00:00Z\",\"endDate\":\"2024-03-31T23:59:59Z\",\"notificationTypes\":[\"email\",\"push\"],\"metrics\":[\"deliveryRate\",\"openRate\",\"clickThroughRate\"],\"threshold\":10}", + "description": "Analyze trends in delivery, open, and click rates for email and push notifications over Q1 2024 with a 10% significance threshold." + }, + { + "inputJson": "{\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\",\"notificationTypes\":[\"sms\"],\"metrics\":[\"clickThroughRate\"],\"threshold\":5}", + "description": "Identify significant shifts in SMS notification click-through rates for May 2024 with a 5% threshold." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "notifications.analyzeReply", + "description": "Analyzes a received reply message to extract key sentiments, intent, and urgency indicators. Accepts raw text or structured reply data. Processes natural language to classify tone (e.g., positive, negative, neutral), detect urgent content, and summarize reply intent. Outputs a structured analysis object with sentiment score, intent category, urgency flag, and summary text.", + "category": "notifications", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The raw text content of the reply message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') of the reply text to guide analysis.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "detectUrgency", + "type": "boolean", + "description": "Whether to specifically detect urgency indications in the reply.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to produce a brief summary of the reply's main intent.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Analysis result containing sentiment classification, intent category, urgency flag, and optional summary text." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the emotional tone, intent, and urgency of incoming reply messages to notifications or alerts, enabling prioritization and appropriate automated or human responses. It helps interpret natural language replies in customer support, alerts acknowledgment, or interactive messaging contexts.", + "limitations": "The tool cannot understand complex sarcasm or highly ambiguous messages perfectly. It does not perform full conversation context analysis beyond the single reply text provided.", + "examples": [ + "Analyze the sentiment and urgency of a customer reply to a notification email.", + "Summarize the intent of a chat reply message to prioritize further actions.", + "Detect if a reply to an alert contains urgent requests requiring immediate escalation." + ] + }, + "tags": [ + "analysis", + "notifications", + "sentiment", + "intent", + "urgency", + "reply", + "communication" + ], + "examples": [ + { + "inputJson": "{\"replyText\": \"Thanks for the update, all looks good on my end.\", \"language\": \"en\", \"detectUrgency\": true, \"includeSummary\": true}", + "description": "Analyzing a positive, non-urgent reply to confirm sentiment and intent." + }, + { + "inputJson": "{\"replyText\": \"This issue is critical and needs fixing ASAP!\", \"language\": \"en\", \"detectUrgency\": true, \"includeSummary\": true}", + "description": "Detecting a highly urgent and negative sentiment reply requiring immediate action." + }, + { + "inputJson": "{\"replyText\": \"Could you please clarify the next steps?\", \"language\": \"en\", \"detectUrgency\": false, \"includeSummary\": true}", + "description": "Analyzing a neutral, non-urgent reply seeking clarification to understand intent." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "notifications.analyzeIncident", + "description": "This tool accepts incident reports as input, optionally including log data, incident metadata, and affected systems. It analyzes the severity, root cause, impact scope, and suggests priority and response actions. The output includes a detailed incident analysis report with categorized risks and recommended notifications to relevant stakeholders.", + "category": "notifications", + "parameters": [ + { + "name": "incidentReport", + "type": "string", + "description": "A detailed description or report of the security incident to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "incidentLogs", + "type": "array", + "description": "An optional array of log entries or event data related to the incident for deeper analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "incidentMetadata", + "type": "object", + "description": "Optional metadata such as incident time, location, system ID, or user info to contextualize the incident.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeRiskAssessment", + "type": "boolean", + "description": "Flag to include a risk assessment evaluation in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "priorityLevels", + "type": "array", + "description": "Array of priority level definitions to tailor the severity classification (e.g., ['Low', 'Medium', 'High']).", + "required": false, + "defaultValue": "[\"Low\",\"Medium\",\"High\"]" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object outlining severity, root cause, impact scope, risk assessment, recommended response actions, and stakeholder notification suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent encounters raw incident data or incident descriptions and must provide structured analysis for severity, risk, and response prioritization. It assists in transforming unstructured incident info into actionable insights and notification strategies to help security teams act promptly and appropriately.", + "limitations": "This tool does not replace human expert judgment, cannot access external live systems to augment incident data, and may not perfectly interpret all domain-specific incidents. It relies solely on provided input without real-time system integration.", + "examples": [ + "Analyze this incident report and provide the severity rating and recommended notifications.", + "Given logs from a suspected breach, determine the root cause and impact scope.", + "Provide a risk assessment and response priority for this newly reported security incident." + ] + }, + "tags": [ + "analysis", + "security", + "incident", + "notification", + "risk-assessment", + "priority", + "response" + ], + "examples": [ + { + "inputJson": "{\"incidentReport\":\"Unauthorized login attempts detected on server X. Multiple failed SSH logins followed by a successful access.\"}", + "description": "Basic incident report describing potential brute force attack to analyze severity and impact." + }, + { + "inputJson": "{\"incidentReport\":\"Data exfiltration suspected from database cluster.\",\"incidentLogs\":[\"2024-04-25T12:00:00Z User admin downloaded 2GB suspicious data\",\"2024-04-25T12:05:00Z Unusual outbound traffic spike\"],\"incidentMetadata\":{\"systemId\":\"db-cluster-5\",\"timestamp\":\"2024-04-25T12:10:00Z\"}}", + "description": "Incident report with logs and metadata to enable detailed root cause and impact assessment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "notifications.analyzeDeal", + "description": "Analyzes deal-related data and notification history to assess deal status, engagement levels, and alert effectiveness. Accepts deal metadata, notification logs, and parameters specifying analysis scope, then outputs insights on deal progress, risk indicators, and recommended notification strategies.", + "category": "notifications", + "parameters": [ + { + "name": "dealId", + "type": "string", + "description": "Unique identifier of the deal to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationLogs", + "type": "array", + "description": "Array of notification event objects related to the deal, including timestamps, types, and responses.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisScope", + "type": "string", + "description": "Scope of analysis, e.g., 'engagement', 'status', or 'full'. Determines aspects included in analysis.", + "required": false, + "defaultValue": "full" + }, + { + "name": "timeframeDays", + "type": "number", + "description": "Number of days in the past to consider for notification log analysis.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeRiskIndicators", + "type": "boolean", + "description": "Whether to include risk assessment indicators in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Analysis report including deal status summary, notification engagement metrics, risk indicators if requested, and recommendations for notification adjustments." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate how a deal is progressing in terms of business engagement and notification effectiveness. It helps identify if current notifications reach stakeholders properly, detects potential risks like deal stagnation, and suggests strategy improvements.", + "limitations": "This tool analyzes only provided data; it cannot fetch external information or predict deal outcomes without sufficient input. It does not perform sentiment analysis or generate notifications.", + "examples": [ + "Analyze engagement and status for deal 'D12345' using last 30 days of notifications.", + "Get risk indicators for deal 'D98765' focusing on notification responsiveness.", + "Perform full analysis on deal 'D54321' with custom timeframe of 60 days." + ] + }, + "tags": [ + "notifications", + "analysis", + "deal", + "business", + "engagement", + "risk", + "assessment" + ], + "examples": [ + { + "inputJson": "{\"dealId\":\"D12345\",\"notificationLogs\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"type\":\"email\",\"response\":\"opened\"},{\"timestamp\":\"2024-05-02T12:30:00Z\",\"type\":\"sms\",\"response\":\"delivered\"}],\"analysisScope\":\"full\",\"timeframeDays\":30,\"includeRiskIndicators\":true}", + "description": "Full analysis of deal D12345 with 2 notification events in the past 30 days including risk indicators." + }, + { + "inputJson": "{\"dealId\":\"D98765\",\"notificationLogs\":[{\"timestamp\":\"2024-04-20T09:00:00Z\",\"type\":\"push\",\"response\":\"no_response\"}],\"analysisScope\":\"engagement\",\"timeframeDays\":15,\"includeRiskIndicators\":false}", + "description": "Engagement-focused analysis for deal D98765 over last 15 days ignoring risk indicators." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "notifications.downloadCSV", + "description": "This tool generates a CSV file from provided notification data objects and triggers a download. It accepts an array of notifications, each with properties like timestamp, recipient, and message, converts the data to CSV format, and outputs a downloadable CSV file or a download link.", + "category": "notifications", + "parameters": [ + { + "name": "notifications", + "type": "array", + "description": "An array of notification objects to include in the CSV export; each object should have consistent fields such as timestamp, recipient, and message.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired name for the downloaded CSV file, including the '.csv' extension.", + "required": false, + "defaultValue": "\"notifications.csv\"" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the CSV output. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character to separate values in the CSV file, typically a comma or semicolon.", + "required": false, + "defaultValue": "\",\"" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format string to format any timestamp fields in the notifications, e.g. 'YYYY-MM-DD HH:mm:ss'.", + "required": false, + "defaultValue": "\"YYYY-MM-DD HH:mm:ss\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing a downloadable CSV data string or a URL link to the CSV file, and metadata such as file name and size." + }, + "aiAgent": { + "useCase": "Use this tool when needing to export notification data in bulk to a widely supported file format for offline access, sharing, or archival. It supports formatting options and output customization to meet user needs for CSV exports of alert and notification logs.", + "limitations": "This tool does not send notifications or handle real-time alerts; it only exports existing notification data into CSV format for download. It requires notification data to be provided as input.", + "examples": [ + "\"Export all user notifications as a CSV file named 'UserAlerts.csv'.\"", + "\"Download notification logs including timestamps formatted as 'MM/DD/YYYY HH:mm'.\"", + "\"Generate a CSV from alert messages with semicolon delimiters and no headers.\"" + ] + }, + "tags": [ + "notifications", + "export", + "CSV", + "data download", + "alerts", + "alerts export", + "logs", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"notifications\":[{\"timestamp\":\"2024-06-01T14:23:00Z\",\"recipient\":\"user@example.com\",\"message\":\"Your order has shipped.\"},{\"timestamp\":\"2024-06-01T15:45:00Z\",\"recipient\":\"user2@example.com\",\"message\":\"Password changed successfully.\"}],\"fileName\":\"notifications_export.csv\",\"includeHeaders\":true,\"delimiter\":\",\",\"dateFormat\":\"YYYY-MM-DD HH:mm:ss\"}", + "description": "Exports two notification records to a CSV file named 'notifications_export.csv' including headers and standard comma delimiters." + }, + { + "inputJson": "{\"notifications\":[{\"timestamp\":\"2024-06-02T09:00:00Z\",\"recipient\":\"admin@example.com\",\"message\":\"Server CPU usage high.\"}],\"fileName\":\"Alerts.csv\",\"includeHeaders\":false,\"delimiter\":\";\",\"dateFormat\":\"MM/DD/YYYY HH:mm\"}", + "description": "Exports one alert notification without headers using semicolon delimiters and date formatted as MM/DD/YYYY HH:mm." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "notifications.analyzeXML", + "description": "Analyzes XML documents related to notifications to extract and summarize critical alert information. Accepts XML strings or files, parses them to identify notification elements such as alert type, priority, timestamp, and message content, and produces a structured summary highlighting key alert attributes and their statuses.", + "category": "notifications", + "parameters": [ + { + "name": "xmlInput", + "type": "string", + "description": "The XML content as a string representing notification data to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractFields", + "type": "array", + "description": "List of XML element names or attributes to extract and summarize from the notification XML.", + "required": false, + "defaultValue": "[\"alertType\",\"priority\",\"timestamp\",\"message\"]" + }, + { + "name": "validateXML", + "type": "boolean", + "description": "Flag indicating whether to validate the XML input against a provided schema before analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaDefinition", + "type": "string", + "description": "Optional XML schema (XSD) content as a string used to validate the XML input if validateXML is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted notification data summarized from the XML, including field-value mappings and status indicators." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically interpret and summarize alerts or notification messages stored in XML format. Ideal for systems ingesting notification feeds or logs formatted as XML that require meaningful extraction of alert details for monitoring or reporting.", + "limitations": "This tool only supports XML inputs related to notification/alert structures and relies on the XML structure to contain parseable notification elements. It cannot process non-XML data or deeply nested arbitrary XML without predefined extractFields. Schema validation is optional and requires a correct schema if used.", + "examples": [ + "Analyze notification XML for key alerts and priorities.", + "Extract timestamp and message content from notification XML feeds.", + "Validate and summarize alert messages within XML incident reports." + ] + }, + "tags": [ + "notifications", + "XML", + "analysis", + "alert extraction", + "data parsing" + ], + "examples": [ + { + "inputJson": "{\"xmlInput\":\"WarningHigh2024-04-28T15:30:00ZCPU usage exceeded threshold\",\"extractFields\":[\"alertType\",\"priority\",\"timestamp\",\"message\"],\"validateXML\":false,\"schemaDefinition\":\"\"}", + "description": "Analyze a simple notification XML to extract alert type, priority, timestamp, and message." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "notifications.renderWord", + "description": "Renders a single word into a graphical notification format, suitable for display in alerts or pop-ups. It accepts the word text, styling options including font, color, size, and background color, and outputs a base64-encoded image representing the styled word notification.", + "category": "notifications", + "parameters": [ + { + "name": "wordText", + "type": "string", + "description": "The word to be rendered in the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "The font family to use for the word text (e.g., Arial, Helvetica).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Size of the font in pixels.", + "required": false, + "defaultValue": "24" + }, + { + "name": "fontColor", + "type": "string", + "description": "Color of the word text in hex or named color format (e.g., #FFFFFF or red).", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the notification area in hex or named color format.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "padding", + "type": "number", + "description": "Padding in pixels around the word text inside the notification.", + "required": false, + "defaultValue": "10" + }, + { + "name": "borderRadius", + "type": "number", + "description": "Corner radius in pixels to create rounded corners for the notification background.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64 encoded PNG image string of the rendered word notification, and the image width and height in pixels." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a small, visually styled notification image featuring a single word, for display in alert pop-ups or message notifications where graphical rendering of the text is required.", + "limitations": "This tool only renders a single word as a static image and does not support multi-word text, animations, or interactive notifications.", + "examples": [ + "Render the word 'Alert' with red text on a yellow background for a warning notification.", + "Generate a green 'Success' word notification with rounded corners for a confirmation pop-up.", + "Create a blue 'Info' word notification with padding and default font settings." + ] + }, + "tags": [ + "notifications", + "rendering", + "word", + "graphics", + "alerts", + "UI", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"wordText\":\"Alert\",\"fontFamily\":\"Arial\",\"fontSize\":30,\"fontColor\":\"#FF0000\",\"backgroundColor\":\"#FFFF00\",\"padding\":15,\"borderRadius\":8}", + "description": "Render the word 'Alert' in red text on yellow background with padding and rounded corners." + }, + { + "inputJson": "{\"wordText\":\"Success\",\"fontFamily\":\"Verdana\",\"fontSize\":24,\"fontColor\":\"#008000\",\"backgroundColor\":\"#FFFFFF\",\"padding\":10,\"borderRadius\":10}", + "description": "Render the word 'Success' in green text on white background with rounded corners." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "notifications.renderText", + "description": "Renders formatted notification text content based on input parameters such as message body, title, style preferences, and metadata. Accepts plain text and optional styling instructions, processes formatting, and outputs a structured text object ready for display in notification systems.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Optional notification title text to display prominently.", + "required": false, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content text of the notification to be rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "object", + "description": "Optional style object defining text attributes like font size, color, and weight.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "Optional ISO 8601 timestamp indicating when the notification was created or sent.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Notification priority level (e.g., \"low\", \"normal\", \"high\") to influence rendering emphasis.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "includeEmoji", + "type": "boolean", + "description": "Flag indicating whether to parse and render emoji characters in the text.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured NotificationText object containing rendered text with formatting metadata ready for UI display." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate visually structured notification text content for alert systems, incorporating optional styling and metadata such as timestamps and priority levels to produce user-friendly notifications ready for UI components.", + "limitations": "This tool does not send or dispatch notifications; it only prepares the formatted notification text content. It cannot parse complex markup languages or generate multimedia content.", + "examples": [ + "Render a notification text with a title and high priority.", + "Render body text only with emoji rendering enabled.", + "Render notification text with custom font size and color styling." + ] + }, + "tags": [ + "notifications", + "rendering", + "text", + "formatting", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Server Alert\",\"body\":\"CPU usage is over 90%\",\"style\":{\"fontSize\":\"14px\",\"color\":\"red\"},\"timestamp\":\"2024-06-15T10:30:00Z\",\"priority\":\"high\",\"includeEmoji\":false}", + "description": "Renders a high priority alert notification with title and styled red font body text." + }, + { + "inputJson": "{\"body\":\"Backup completed successfully \\u2705\",\"includeEmoji\":true}", + "description": "Renders a simple body text with emoji included indicating success." + }, + { + "inputJson": "{\"title\":\"Reminder\",\"body\":\"Meeting at 3 PM\",\"style\":{\"fontWeight\":\"bold\"},\"priority\":\"normal\"}", + "description": "Renders a normal priority notification with bold title and body." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "notifications.renderImage", + "description": "This tool generates a notification image by combining provided text, optional icon, and styling parameters. It accepts text content, icon image URL or base64, background and text colors, font size, and image dimensions. It renders a visually styled image suitable for use in alerts, messages, or notifications, outputting a Base64-encoded PNG image string for easy embedding or delivery.", + "category": "notifications", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The main text content to display on the notification image.", + "required": true, + "defaultValue": "" + }, + { + "name": "iconUrl", + "type": "string", + "description": "URL or base64 string of the icon image to display alongside the text. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the notification image, specified as a hex code or color name.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "textColor", + "type": "string", + "description": "Color of the text, specified as a hex code or color name.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for the notification text.", + "required": false, + "defaultValue": "16" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated image in pixels.", + "required": false, + "defaultValue": "300" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated image in pixels.", + "required": false, + "defaultValue": "100" + }, + { + "name": "borderRadius", + "type": "number", + "description": "Border radius in pixels to round the corners of the image.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a Base64-encoded PNG image string under the 'imageData' key, ready for embedding or transmission." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to create custom notification visuals combining text and optional iconography, such as alerts, reminders, or system messages, with configurable styling for integration into messenger apps, dashboards, or web notifications.", + "limitations": "This tool cannot generate animated images or support advanced graphics effects beyond basic text/icon rendering and styling. It does not send notifications but only produces the notification image.", + "examples": [ + "Generate an alert image with red background and warning icon.", + "Create a notification banner with custom text and rounded corners.", + "Produce a message image with black text on white background and no icon." + ] + }, + "tags": [ + "notification", + "image rendering", + "alert", + "graphics", + "visual", + "message" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Server Down!\",\"iconUrl\":\"https://example.com/icons/warning.png\",\"backgroundColor\":\"#ff0000\",\"textColor\":\"#ffffff\",\"fontSize\":24,\"width\":400,\"height\":120,\"borderRadius\":15}", + "description": "A red alert notification image with white text and a warning icon, sized 400x120 pixels with rounded corners." + }, + { + "inputJson": "{\"text\":\"New Message Received\",\"backgroundColor\":\"#0078d7\",\"textColor\":\"#ffffff\",\"fontSize\":18,\"width\":350,\"height\":100}", + "description": "A blue notification image with white text and default styling, no icon included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "notifications.formatParagraph", + "description": "Formats a raw text paragraph into a styled HTML snippet suitable for notification content. Accepts plain text and parameters to customize line length, alignment, and emphasis, producing a formatted HTML string optimized for display in alert pop-ups, emails, or app notifications.", + "category": "notifications", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before inserting a break (for readability).", + "required": false, + "defaultValue": "80" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: left, center, or right.", + "required": false, + "defaultValue": "left" + }, + { + "name": "emphasisWords", + "type": "array", + "description": "List of words to emphasize with bold or highlight.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "addEllipsis", + "type": "boolean", + "description": "Whether to add ellipsis (...) at the end if text is truncated.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum total length of the paragraph before truncation.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph as an HTML string." + }, + "aiAgent": { + "useCase": "This tool is useful when preparing notification messages that require clear readable formatting with styling such as alignment and emphasized keywords. Agents generating alerts for diverse platforms (mobile, email, web) can format raw notification content to improve presentation and highlight crucial information.", + "limitations": "It cannot perform advanced natural language processing such as summarization, translation, or automatic keyword extraction. It only formats given text and highlights specified words.", + "examples": [ + "Format a notification paragraph with center alignment and highlight important keywords.", + "Limit paragraph length to 150 characters and add ellipsis if truncated.", + "Format text with default left alignment and max line length of 60 characters." + ] + }, + "tags": [ + "notifications", + "formatting", + "text", + "HTML", + "alerts", + "styling" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Your action is required to update your profile settings to continue using our services.\",\"maxLineLength\":50,\"alignment\":\"center\",\"emphasisWords\":[\"required\",\"update\"],\"addEllipsis\":false,\"maxLength\":0}", + "description": "Center aligned paragraph with emphasized words 'required' and 'update', wrapping lines at 50 chars." + }, + { + "inputJson": "{\"text\":\"System alert: your session will expire in 5 minutes. Please save your work to avoid data loss.\",\"maxLineLength\":70,\"alignment\":\"left\",\"emphasisWords\":[\"expire\",\"save your work\"],\"addEllipsis\":true,\"maxLength\":100}", + "description": "Left aligned paragraph truncated to 100 chars with ellipsis and highlighted phrases." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "notifications.formatEndpoint", + "description": "Formats a notification service endpoint URL and headers based on input parameters such as protocol, hostname, port, path, and authentication tokens. Accepts an object defining endpoint components and outputs a structured configuration object with a full URL string and HTTP headers ready for use in sending notifications.", + "category": "notifications", + "parameters": [ + { + "name": "protocol", + "type": "string", + "description": "The communication protocol to use, e.g., 'http' or 'https'.", + "required": true, + "defaultValue": "https" + }, + { + "name": "hostname", + "type": "string", + "description": "The domain or IP address of the notification endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "port", + "type": "number", + "description": "The network port for the endpoint. If omitted or 0, defaults to standard port for the protocol.", + "required": false, + "defaultValue": "0" + }, + { + "name": "path", + "type": "string", + "description": "The URL path on the endpoint server, starting with '/'.", + "required": false, + "defaultValue": "/" + }, + { + "name": "queryParams", + "type": "object", + "description": "Optional key-value pairs to include as URL query parameters.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token to include in the HTTP headers as 'Authorization' bearer token.", + "required": false, + "defaultValue": "" + }, + { + "name": "customHeaders", + "type": "object", + "description": "Optional additional HTTP headers to add, represented as key-value pairs.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted endpoint URL string under 'url', and a headers object for HTTP requests under 'headers'." + }, + "aiAgent": { + "useCase": "Use this tool when constructing or validating notification endpoints for alerting systems or messaging services, especially when different protocols, paths, ports, and authentication methods need to be combined into a standardized configuration for HTTP clients or notification dispatchers.", + "limitations": "Cannot perform network validation or encryption of tokens. It does not send notifications but only formats endpoint configuration data.", + "examples": [ + "Format an HTTPS endpoint with token authentication for sending push notifications.", + "Generate an HTTP URL with custom port and query parameters for a webhook notification.", + "Prepare headers including authorization and custom headers for a notification system." + ] + }, + "tags": [ + "notifications", + "endpoint", + "formatting", + "URL", + "HTTP", + "authentication", + "headers" + ], + "examples": [ + { + "inputJson": "{\"protocol\":\"https\",\"hostname\":\"api.notifyservice.com\",\"port\":443,\"path\":\"/v1/alerts\",\"queryParams\":{\"env\":\"prod\",\"version\":\"1.2\"},\"authToken\":\"abcd1234token\",\"customHeaders\":{\"X-Custom-Header\":\"value\"}}", + "description": "Format a secure notification endpoint with query parameters, auth token, and custom headers." + }, + { + "inputJson": "{\"protocol\":\"http\",\"hostname\":\"localhost\",\"port\":8080,\"path\":\"/notify\"}", + "description": "Format a local HTTP endpoint on custom port without authentication or extra headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "notifications.formatModule", + "description": "Formats a notification module source code string with consistent styling and structure. Accepts raw notification module code as input, processes it to apply standard formatting rules (indentation, spacing, comment styles), and outputs the cleaned, formatted module code string ready for integration or deployment.", + "category": "notifications", + "parameters": [ + { + "name": "moduleCode", + "type": "string", + "description": "Raw source code of the notification module to format, including functions, variables, and comments.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces for each indentation level in the formatted code.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length before wrapping lines in the formatted code.", + "required": false, + "defaultValue": "80" + }, + { + "name": "preserveComments", + "type": "boolean", + "description": "Whether to retain existing comments in the module code during formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field \"formattedModuleCode\" with the cleaned and consistently styled module code string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare or clean notification module source code for readability, consistency, or deployment by applying standardized formatting rules to raw or inconsistent code inputs.", + "limitations": "This tool does not validate the functional correctness of the code or execute any static analysis beyond formatting. It cannot fix syntax or logical errors in the code.", + "examples": [ + "Format a raw notification module code snippet with 4 spaces indentation.", + "Format a module code replacing tabs with spaces and wrapping lines at 100 characters.", + "Format code while removing all comments before finalizing for production." + ] + }, + "tags": [ + "notifications", + "formatting", + "code", + "module", + "style", + "cleaning" + ], + "examples": [ + { + "inputJson": "{\"moduleCode\":\"function notify(){console.log('Alert');}\",\"indentationSpaces\":4,\"useTabs\":false,\"maxLineLength\":80,\"preserveComments\":true}", + "description": "Format a simple notification module function with 4-space indentation and preserve comments." + }, + { + "inputJson": "{\"moduleCode\":\"\\tfunction sendAlert() {\\tconsole.log(\\\"Alert!\\\");}\\t\",\"indentationSpaces\":2,\"useTabs\":false,\"maxLineLength\":80,\"preserveComments\":true}", + "description": "Convert tab-indented code to 2-space indentation while preserving comments." + }, + { + "inputJson": "{\"moduleCode\":\"// Temporary debug\\nfunction debugAlert(){console.log(\\\"Debug\\\");}\",\"indentationSpaces\":2,\"useTabs\":false,\"maxLineLength\":80,\"preserveComments\":false}", + "description": "Format notification module code and remove all comments." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "notifications.formatSummary", + "description": "Formats an input summary text into a structured and concise notification message. Accepts raw summary content along with optional formatting preferences such as maximum length, inclusion of highlights, and notification type to produce a tailored notification-ready summary string.", + "category": "notifications", + "parameters": [ + { + "name": "summaryText", + "type": "string", + "description": "The raw summary text input that needs formatting into a notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the formatted notification message; truncates if exceeded.", + "required": false, + "defaultValue": "200" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "Whether to extract and include key highlights or bullet points in the summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type of notification (e.g., 'email', 'sms', 'push') that might affect formatting style.", + "required": false, + "defaultValue": "email" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted summary message string ready for notification delivery." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to convert verbose or unstructured summary texts into concise, well-formatted notification messages suitable for delivery over various channels like email or SMS. It helps produce readable and effective notifications from long summaries.", + "limitations": "This tool does not perform content summarization or text extraction on its own; it formats based on the provided summary text and simple highlight extraction only. It does not generate the summary from raw data.", + "examples": [ + "Format a detailed project update summary into an SMS-friendly notification under 160 characters.", + "Create an email notification message from a meeting summary that includes main bullet points.", + "Prepare a push notification summary from a long report limiting content to key highlights." + ] + }, + "tags": [ + "notifications", + "formatting", + "summary", + "message", + "notification", + "text processing" + ], + "examples": [ + { + "inputJson": "{\"summaryText\":\"The project is progressing as planned with the recent completion of the initial development phase. Key milestones achieved include the successful deployment of the backend API and completion of the UI design. Next steps involve integration testing and performance optimization.\",\"maxLength\":180,\"includeHighlights\":true,\"notificationType\":\"email\"}", + "description": "Formats a detailed project progress summary into a concise email notification, emphasizing key milestones and next steps." + }, + { + "inputJson": "{\"summaryText\":\"Weekly system audit completed. No critical vulnerabilities found. Several minor issues patched. System is stable.\",\"maxLength\":100,\"includeHighlights\":false,\"notificationType\":\"sms\"}", + "description": "Creates a short SMS notification from a system audit summary without highlights, respecting character limits." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "notifications.composeSummary", + "description": "This tool accepts detailed event or meeting data as input and composes a concise, clear notification summary highlighting key points such as decisions, actions, or outcomes. It processes the input to extract and format relevant information into a summary suitable for alerting or notification purposes.", + "category": "notifications", + "parameters": [ + { + "name": "eventTitle", + "type": "string", + "description": "Title or name of the event or meeting to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDate", + "type": "string", + "description": "Date of the event in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant names involved in the event or meeting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detailedNotes", + "type": "string", + "description": "Full detailed notes or transcript from the event or meeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired approximate length of the summary in sentences.", + "required": false, + "defaultValue": "5" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "Keywords or topics to emphasize in the summary, to tailor focus.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing a string 'summaryText' with the formatted notification summary." + }, + "aiAgent": { + "useCase": "Use when needing to generate a succinct notification or alert message summarizing a lengthy event, meeting, or report text. This enables quick communication of key outcomes and follow-ups to stakeholders without requiring them to read full notes.", + "limitations": "Cannot verify factual accuracy beyond provided input; summary quality depends on detail and clarity of original notes; does not send notifications, only composes summaries.", + "examples": [ + "Compose a short notification summary for yesterday's project sync meeting focusing on action items.", + "Generate a concise alert summarizing the key decisions from the quarterly review notes.", + "Create a notification summary highlighting customer feedback topics from the support meeting transcript." + ] + }, + "tags": [ + "notifications", + "summary", + "compose", + "alerts", + "meetings", + "events", + "communication" + ], + "examples": [ + { + "inputJson": "{\"eventTitle\":\"Q2 Sales Review\",\"eventDate\":\"2024-06-15\",\"participants\":[\"Alice Smith\",\"Bob Johnson\",\"Carol Lee\"],\"detailedNotes\":\"The Q2 sales review covered performance metrics showing a 10% increase over Q1. Key challenges included supply delays. Decided to increase inventory buffer and initiate vendor negotiations. Action items assigned to Bob to lead vendor talks and Carol to adjust inventory strategies.\",\"summaryLength\":4,\"highlightKeywords\":[\"sales\",\"action items\"]}", + "description": "Compose a notification summary emphasizing sales results and action items from a quarterly sales review meeting." + }, + { + "inputJson": "{\"eventTitle\":\"Engineering Standup\",\"detailedNotes\":\"Today's standup covered the deployment status of release 2.3. Testing completed successfully; minor bugs found and scheduled for fixes. Team aligned on timelines with deployment set for Friday. Action: QA to verify fixes by Wednesday.\",\"summaryLength\":3}", + "description": "Create a brief notification summary from daily standup notes focusing on deployment status and next steps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "notifications.buildInstance", + "description": "This tool sets up a notification service instance that manages alert delivery configurations. It accepts parameters defining notification channels, templates, retry policies, and user preferences. The tool processes these settings to create a configured instance enabling alert dispatching through specified channels, returning an instance ID and status summary.", + "category": "notifications", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "The unique name to identify the notification instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of notification channels to enable (e.g., email, SMS, push).", + "required": true, + "defaultValue": "" + }, + { + "name": "templates", + "type": "object", + "description": "Mapping of notification type to message templates used in alerts.", + "required": true, + "defaultValue": "" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Settings controlling retry attempts and intervals for failed notifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "userPreferences", + "type": "object", + "description": "Rules and user-specific settings for receiving notifications, such as quiet hours.", + "required": false, + "defaultValue": "" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag to activate or deactivate this instance after creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique instance identifier, creation timestamp, enabled status, and a summary of configured channels and templates." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a new notification infrastructure component tailored to specific delivery channels, templates, and user preferences. It helps automate setup for alerting systems, ensuring consistent configuration and quick deployment.", + "limitations": "This tool only builds the notification instance configuration; it does not handle sending notifications, monitoring instance health, or modifying configurations after creation.", + "examples": [ + "Build a notification instance named 'CriticalAlerts' with email and SMS channels using custom templates.", + "Create a new notification instance with default retry policies and user quiet hours specified.", + "Set up a disabled notification instance for testing with push notifications only." + ] + }, + "tags": [ + "notifications", + "infrastructure", + "alerting", + "configuration", + "channels", + "templates" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"CriticalAlerts\",\"channels\":[\"email\",\"sms\"],\"templates\":{\"alert\":\"Critical issue: {{message}}\"},\"retryPolicy\":{\"maxRetries\":3,\"intervalSeconds\":60},\"userPreferences\":{\"quietHours\":{\"start\":\"22:00\",\"end\":\"07:00\"}},\"enabled\":true}", + "description": "Create an active notification instance named 'CriticalAlerts' with email and SMS channels, a retry policy allowing 3 retries every 60 seconds, user quiet hours from 10pm to 7am, and a critical alert template." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "notifications.generateTrend", + "description": "Generates a notification summarizing emerging trends based on input time series or event data. Accepts data points with timestamps and values, analyzes patterns using configurable metrics, and produces a textual alert highlighting significant uptrends, downtrends, or anomalies for alerting stakeholders.", + "category": "notifications", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points, each containing timestamp and value, representing the time series or events to analyze for trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "The statistical metric or method to detect trends (e.g., movingAverage, linearRegression, anomalyDetection).", + "required": true, + "defaultValue": "movingAverage" + }, + { + "name": "windowSize", + "type": "number", + "description": "The size of the time window (in number of data points) to use for trend calculation.", + "required": false, + "defaultValue": "5" + }, + { + "name": "threshold", + "type": "number", + "description": "Minimum magnitude of change or trend strength required to trigger a notification.", + "required": false, + "defaultValue": "0.1" + }, + { + "name": "trendType", + "type": "string", + "description": "Type of trend to detect: 'uptrend', 'downtrend', or 'both'.", + "required": false, + "defaultValue": "both" + }, + { + "name": "recipient", + "type": "string", + "description": "Identifier or address of the notification recipient (e.g., email, userID).", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the generated notification message (e.g., text, markdown).", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the notification message text, trend summary, detected trend type, and confidence score." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to monitor time series or event data streams and generate concise notifications about emerging trends or anomalies to alert users or systems. It is ideal for automated alerting in dashboards, monitoring services, or analytics platforms where trend insights improve decision making.", + "limitations": "Cannot analyze unstructured or non-time series data; effectiveness depends on quality and granularity of input data; does not send notifications itself, only generates notification content; choice of metric can affect results and requires domain knowledge.", + "examples": [ + "Generate a notification for an uptrend in sales data with a moving average metric.", + "Detect both upward and downward trends in website traffic and notify the marketing team.", + "Create an anomaly detection notification from server response times for IT alerts." + ] + }, + "tags": [ + "notifications", + "trend analysis", + "alert generation", + "time series", + "analytics", + "automated alerts" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"value\":100},{\"timestamp\":\"2024-04-02T00:00:00Z\",\"value\":110},{\"timestamp\":\"2024-04-03T00:00:00Z\",\"value\":120},{\"timestamp\":\"2024-04-04T00:00:00Z\",\"value\":130},{\"timestamp\":\"2024-04-05T00:00:00Z\",\"value\":140}],\"metric\":\"movingAverage\",\"windowSize\":3,\"threshold\":0.05,\"trendType\":\"uptrend\",\"recipient\":\"team@example.com\",\"format\":\"text\"}", + "description": "Detects a positive sales trend over 3 days and generates a notification for the team." + }, + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"value\":200},{\"timestamp\":\"2024-05-02T00:00:00Z\",\"value\":180},{\"timestamp\":\"2024-05-03T00:00:00Z\",\"value\":160},{\"timestamp\":\"2024-05-04T00:00:00Z\",\"value\":150},{\"timestamp\":\"2024-05-05T00:00:00Z\",\"value\":140}],\"metric\":\"linearRegression\",\"windowSize\":5,\"threshold\":0.1,\"trendType\":\"downtrend\",\"recipient\":\"ops@example.com\",\"format\":\"markdown\"}", + "description": "Generates a downtrend notification in server errors for operations team using linear regression over 5 days." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "notifications.buildQuery", + "description": "Constructs a structured query object for filtering and retrieving notification data based on various criteria such as recipient, status, date range, and notification type. Accepts filter parameters and outputs a query object suitable for use in notification retrieval APIs or database queries.", + "category": "notifications", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Identifier of the notification recipient to filter notifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Status of the notifications to retrieve (e.g., 'read', 'unread').", + "required": false, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date in ISO 8601 format to filter notifications from this date onwards.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date in ISO 8601 format to filter notifications up to this date.", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type or category of notifications to filter by (e.g., 'alert', 'reminder').", + "required": false, + "defaultValue": "" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of notifications to include in the query result.", + "required": false, + "defaultValue": "100" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Sort order of results, either 'asc' or 'desc' by notification date.", + "required": false, + "defaultValue": "desc" + } + ], + "returns": { + "type": "object", + "description": "A query object containing structured filter conditions and parameters to be used for notification data retrieval." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct a precise, structured query to fetch notifications based on dynamic criteria such as recipient, status, date ranges, and type, enabling efficient filtering from notification storage or APIs.", + "limitations": "This tool builds the query object but does not execute the query or retrieve actual notifications. It also does not validate recipient IDs or notification types against external systems.", + "examples": [ + "Build a query for unread alerts for user 'user123' from last week, sorted newest first.", + "Create a query to get all read reminders before 2024-01-01 with a maximum of 50 results.", + "Generate a query filtering notifications for recipient 'user456' regardless of status, sorted ascending by date." + ] + }, + "tags": [ + "notifications", + "query-building", + "filtering", + "alerts", + "reminders" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user123\",\"status\":\"unread\",\"startDate\":\"2024-03-01T00:00:00Z\",\"endDate\":\"2024-03-07T23:59:59Z\",\"notificationType\":\"alert\",\"limit\":50,\"sortOrder\":\"desc\"}", + "description": "Query unread alert notifications for user 'user123' from March 1 to March 7, 2024, limited to 50 results descending order." + }, + { + "inputJson": "{\"recipientId\":\"user789\",\"status\":\"read\",\"limit\":20,\"sortOrder\":\"asc\"}", + "description": "Query 20 read notifications for user 'user789' sorted by ascending notification date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "notifications.buildComponent", + "description": "Constructs a reusable notification UI component based on specified configuration input. Accepts parameters such as notification type, message content, display duration, and styling options. Processes these inputs to generate a JSON representation of the notification component with structured layout, styles, and behavior properties suitable for rendering in web or mobile apps.", + "category": "notifications", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to build, e.g., 'info', 'warning', 'error', or 'success'. Determines default styling and iconography.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageText", + "type": "string", + "description": "The main text content of the notification displayed to the user.", + "required": true, + "defaultValue": "" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "How long the notification should be displayed before auto-dismissal, in seconds. Use 0 for persistent notification.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeCloseButton", + "type": "boolean", + "description": "Whether to include a close (dismiss) button on the notification component.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customStyles", + "type": "object", + "description": "Optional CSS style overrides to customize colors, font sizes, spacing etc. as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "iconName", + "type": "string", + "description": "Optional icon name to display next to the message. Defaults vary by notificationType if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the fully specified notification component layout and behavior ready for rendering or further integration." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to generate a standardized notification component structure for UI rendering based on user or system inputs, automating the creation of consistent alert messages with customizable options. It enables dynamic assembly of notification components in web/mobile development contexts without manual UI coding.", + "limitations": "This tool does not render or display notifications itself; it only generates the component data model. It cannot handle notification delivery or interaction event handling beyond configuration.", + "examples": [ + "Build a warning notification with the message 'Low disk space', showing for 10 seconds, with a close button.", + "Create an error notification with persistent display and custom red text color.", + "Generate an info notification with default icon and no close button." + ] + }, + "tags": [ + "notifications", + "ui-component", + "alert", + "builder", + "frontend", + "customization" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"warning\",\"messageText\":\"Low disk space\",\"durationSeconds\":10,\"includeCloseButton\":true,\"customStyles\":{\"color\":\"#b45309\",\"fontWeight\":\"bold\"},\"iconName\":\"exclamation-triangle\"}", + "description": "Creates a warning notification with specific styling and a close button displayed for 10 seconds." + }, + { + "inputJson": "{\"notificationType\":\"error\",\"messageText\":\"Failed to save changes.\",\"durationSeconds\":0,\"includeCloseButton\":true,\"customStyles\":{\"color\":\"#b91c1c\"},\"iconName\":\"times-circle\"}", + "description": "Creates a persistent error notification with a custom red text color and a close button." + }, + { + "inputJson": "{\"notificationType\":\"info\",\"messageText\":\"New update available\",\"includeCloseButton\":false}", + "description": "Generates an informational notification with default icon and no close button." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "notifications.generateHTML", + "description": "Generates an HTML snippet for email or web notifications based on provided title, message, and optional styling. Accepts notification content and style settings as inputs and outputs a complete HTML string ready to embed or send.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The main title text of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The body or detail text of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "object", + "description": "Optional CSS styles to customize colors, fonts, and spacing of the notification. Include keys like backgroundColor, fontColor, fontFamily, and padding.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Flag to include the current timestamp in the notification footer.", + "required": false, + "defaultValue": "false" + }, + { + "name": "isUrgent", + "type": "boolean", + "description": "Flag to apply urgency styles (e.g., red highlight) to the notification.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'html' with the generated notification HTML code as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create visually formatted notification messages for emails or web interfaces dynamically, tailoring style and content on the fly. It is suitable for preparing user alerts, confirmation messages, or status updates in HTML format.", + "limitations": "This tool generates static HTML snippets only; it cannot send notifications or handle dynamic interactive behaviors like JavaScript events.", + "examples": [ + "Generate a notification HTML with title and message for a low urgency info email.", + "Create an urgent alert notification with red highlight and current timestamp included.", + "Produce a styled notification with custom font and colors based on provided style object." + ] + }, + "tags": [ + "notifications", + "HTML generation", + "email", + "alerts", + "styling", + "web" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Update Complete\",\"message\":\"Your profile information has been successfully updated.\",\"style\":{\"backgroundColor\":\"#f0f8ff\",\"fontColor\":\"#333333\",\"fontFamily\":\"Arial, sans-serif\",\"padding\":\"15px\"},\"includeTimestamp\":false,\"isUrgent\":false}", + "description": "Generate a standard styled notification with title and message, without timestamp or urgency." + }, + { + "inputJson": "{\"title\":\"Server Down\",\"message\":\"The main server is currently unreachable. Our team is working to resolve the issue.\",\"style\":{\"backgroundColor\":\"#ffe6e6\",\"fontColor\":\"#990000\",\"fontFamily\":\"Verdana, sans-serif\",\"padding\":\"20px\"},\"includeTimestamp\":true,\"isUrgent\":true}", + "description": "Generate an urgent notification with timestamp and red styling indicating server outage." + }, + { + "inputJson": "{\"title\":\"Reminder\",\"message\":\"Your subscription expires in 3 days.\",\"style\":{},\"includeTimestamp\":true,\"isUrgent\":false}", + "description": "Generate a default styled notification with timestamp included, no urgency." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "notifications.createCluster", + "description": "Creates a notification cluster group that manages and coordinates sending alerts to multiple notification channels and recipients. Accepts cluster configuration including name, channels, recipients, and rules, then returns the cluster ID and status confirming successful creation.", + "category": "notifications", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The unique name identifier for the notification cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of notification channels included in the cluster (e.g., email, SMS, push).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "recipients", + "type": "array", + "description": "Array of recipient objects with contact details that the cluster will notify.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "rules", + "type": "object", + "description": "Optional object defining filtering or routing rules for notifications within the cluster.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description of the notification cluster purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag to activate the cluster immediately upon creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique clusterId string, a status message, and a timestamp for creation." + }, + "aiAgent": { + "useCase": "Use this tool to set up and manage grouped notification destinations for infrastructure alerts, enabling coordinated dispatch of messages to multiple endpoints efficiently. Ideal for creating reusable clusters to centralize alert management, reduce configuration duplication, and ensure consistent notification delivery across channels.", + "limitations": "This tool only creates the cluster configuration and does not send notifications or handle message content. It requires separate interaction with sending services to dispatch alerts.", + "examples": [ + "Create a cluster named 'InfraAlerts' that notifies email and SMS channels with specific recipients and activates it immediately.", + "Set up a cluster for 'DevOpsTeam' with push notifications only and include filtering rules to notify only on critical alerts.", + "Create an inactive cluster and add a description for future activation and usage tracking." + ] + }, + "tags": [ + "notifications", + "clusters", + "alerting", + "infrastructure", + "management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"InfraAlerts\",\"channels\":[\"email\",\"sms\"],\"recipients\":[{\"name\":\"Alice\",\"email\":\"alice@example.com\",\"phone\":\"+1234567890\"},{\"name\":\"Bob\",\"email\":\"bob@example.com\",\"phone\":\"+0987654321\"}],\"rules\":{\"severity\":[\"critical\",\"high\"]},\"description\":\"Cluster for critical infrastructure alerts\",\"isActive\":true}", + "description": "Creates a notification cluster called 'InfraAlerts' that sends critical and high severity alerts to email and SMS recipients Alice and Bob, active immediately." + }, + { + "inputJson": "{\"clusterName\":\"DevOpsTeam\",\"channels\":[\"push\"],\"recipients\":[{\"name\":\"Charlie\",\"deviceId\":\"device123\"}],\"isActive\":false}", + "description": "Creates an inactive 'DevOpsTeam' cluster that sends push notifications to a single device, for future activation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "notifications.generateSchema", + "description": "Generates a JSON schema definition for notification payloads based on specified notification types and field requirements. Accepts a configuration of notification event types, including fields, data types, and validation rules, and outputs a JSON schema to standardize notification message formats for reliable parsing and validation in downstream systems.", + "category": "notifications", + "parameters": [ + { + "name": "notificationTypes", + "type": "array", + "description": "An array of notification type definitions, each containing a unique type name and a set of fields with names, data types, and validation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeCommonFields", + "type": "boolean", + "description": "Flag to include a default set of common fields (e.g., timestamp, id) in all notification schemas.", + "required": false, + "defaultValue": "true" + }, + { + "name": "schemaVersion", + "type": "string", + "description": "The JSON schema version to target (e.g., 'draft-07', 'draft-2019-09').", + "required": false, + "defaultValue": "draft-07" + }, + { + "name": "additionalDescriptions", + "type": "boolean", + "description": "Whether to add descriptive text to fields for clarity in the output schema.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the combined JSON schema for the notification payloads as specified, suitable for validation and integration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create standardized JSON schema definitions for various notification message formats to ensure consistent structure and validation in messaging systems or APIs. Ideal for automating schema generation from high-level notification field specifications, speeding up integration and reducing manual errors.", + "limitations": "Does not validate actual notification messages, only generates schemas based on input definitions. It cannot infer field semantics or generate schemas for protocols other than JSON schema.", + "examples": [ + "Generate a schema for email and SMS notifications specifying recipient, subject, and message fields.", + "Create a notification schema including common metadata fields like timestamp and id.", + "Produce a JSON schema targeting draft-07 standard for real-time alert notifications with custom validation rules." + ] + }, + "tags": [ + "notifications", + "schema generation", + "JSON schema", + "validation", + "standardization", + "messages" + ], + "examples": [ + { + "inputJson": "{\"notificationTypes\":[{\"typeName\":\"EmailNotification\",\"fields\":[{\"name\":\"recipient\",\"type\":\"string\",\"required\":true},{\"name\":\"subject\",\"type\":\"string\",\"required\":true},{\"name\":\"body\",\"type\":\"string\",\"required\":true}]},{\"typeName\":\"SMSNotification\",\"fields\":[{\"name\":\"phoneNumber\",\"type\":\"string\",\"required\":true},{\"name\":\"message\",\"type\":\"string\",\"required\":true}]}],\"includeCommonFields\":true,\"schemaVersion\":\"draft-07\",\"additionalDescriptions\":true}", + "description": "Generate schemas for EmailNotification and SMSNotification types including common fields like timestamp and id." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "notifications.generateXML", + "description": "Generates an XML-formatted notification message based on provided notification details, including recipient info, message content, priority, and timestamp. Accepts structured input and outputs a well-formed XML string suitable for integration with XML-based messaging systems.", + "category": "notifications", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "Identifier for the notification recipient, such as an email address or user ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject line of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content/body text of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Notification priority level; can be 'low', 'normal', or 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO8601 formatted timestamp for when the notification is generated or sent; defaults to current time if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalData", + "type": "object", + "description": "Optional key-value pairs for extra metadata to include in the XML output.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A well-formed XML string representing the notification, including the specified fields and additional metadata if provided." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a notification message in XML format for systems that require XML data structure, such as legacy messaging platforms or integration with XML-based notification APIs. It helps standardize notification content into XML for downstream processing or delivery.", + "limitations": "This tool does not send or dispatch notifications; it only generates the XML representation. It also assumes valid input strings and does not validate recipient identifiers or priority beyond predefined values.", + "examples": [ + "Generate an XML notification for user with email 'user@example.com' with high priority alert.", + "Create a notification XML including additional metadata like ticket ID and urgency.", + "Produce an XML notification with default normal priority and current timestamp." + ] + }, + "tags": [ + "notifications", + "generate", + "XML", + "messaging", + "alerts", + "formatting", + "integration" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"user@example.com\",\"subject\":\"System Alert\",\"messageBody\":\"Your server CPU usage is high.\",\"priority\":\"high\",\"timestamp\":\"2024-06-01T10:30:00Z\",\"additionalData\":{\"ticketId\":\"12345\",\"category\":\"server\"}}", + "description": "Generate a high priority system alert XML notification with additional metadata." + }, + { + "inputJson": "{\"recipient\":\"user42\",\"subject\":\"Reminder\",\"messageBody\":\"Your subscription expires soon.\",\"priority\":\"normal\",\"timestamp\":\"\",\"additionalData\":{}}", + "description": "Create a notification XML for user id 'user42' with default priority and current timestamp." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "notifications.createSession", + "description": "Creates a user session record for notification analytics by accepting session metadata like userId, device info, start time, and optional custom attributes. The tool processes the input and returns a session ID with status, enabling tracking of notification interactions within this session context.", + "category": "notifications", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user starting the session", + "required": true, + "defaultValue": "" + }, + { + "name": "deviceType", + "type": "string", + "description": "Type of device used in the session, e.g., 'mobile', 'desktop'", + "required": false, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp indicating when the session started", + "required": true, + "defaultValue": "" + }, + { + "name": "ipAddress", + "type": "string", + "description": "IP address from which the session originated", + "required": false, + "defaultValue": "" + }, + { + "name": "customAttributes", + "type": "object", + "description": "Optional key-value pairs for custom session metadata", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object including a unique sessionId string and status indicating success or failure of session creation" + }, + "aiAgent": { + "useCase": "Use this tool to create and record a new user session for notifications analytics, allowing tracking of user interactions within a specific period and device context. This is crucial for segmenting notification analytics and personalizing user engagement based on session-level data.", + "limitations": "This tool does not handle notification delivery or interaction tracking directly; it only creates the session record. It requires proper input validation and does not automatically close sessions.", + "examples": [ + "Create a session for user 'user123' on a mobile device starting now.", + "Start a notification session for user 'abc789' with custom attributes for A/B testing.", + "Initialize a session with IP address capture for enhanced analytics." + ] + }, + "tags": [ + "notifications", + "session", + "analytics", + "userTracking", + "create", + "alerting", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"user123\",\"deviceType\":\"mobile\",\"startTime\":\"2024-06-15T10:00:00Z\"}", + "description": "Create a session for user 'user123' on a mobile device starting at 10:00 AM UTC." + }, + { + "inputJson": "{\"userId\":\"abc789\",\"startTime\":\"2024-06-15T12:30:00Z\",\"customAttributes\":{\"experimentGroup\":\"A\"}}", + "description": "Start a session for user 'abc789' with custom attribute for experiment group A." + }, + { + "inputJson": "{\"userId\":\"guest456\",\"deviceType\":\"desktop\",\"startTime\":\"2024-06-15T08:45:00Z\",\"ipAddress\":\"192.168.1.100\"}", + "description": "Initialize a session for guest user on desktop device including IP address for analytics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "notifications.createQueue", + "description": "Creates a notification queue with specified configurations such as queue name, maximum length, retry policies, and visibility timeout. Accepts parameters defining queue behavior and outputs a queue metadata object including queue ID and status indicating successful creation.", + "category": "notifications", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifier for the notification queue.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of notifications that can be held in the queue at once.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "visibilityTimeout", + "type": "number", + "description": "Duration in seconds for which a notification remains invisible after being fetched, allowing processing time.", + "required": false, + "defaultValue": "30" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration object defining retry behavior such as max retries and delay between retries.", + "required": false, + "defaultValue": "" + }, + { + "name": "deadLetterQueue", + "type": "string", + "description": "Optional name of a dead letter queue for handling failed notifications that exhausted retries.", + "required": false, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region where the queue will be hosted.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "encrypted", + "type": "boolean", + "description": "Flag indicating whether the queue data should be encrypted at rest.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the queue's unique identifier, name, creation timestamp, region, and current status." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to provision an asynchronous notification pipeline by setting up a queue in the notification infrastructure. It is essential for managing delivery flow, retry policies, and message visibility in systems requiring scalable and reliable alert dispatch.", + "limitations": "This tool cannot send notifications itself, nor manage messages within the queue after creation. It only creates and configures the queue infrastructure.", + "examples": [ + "Create a notification queue named \"alertsQueue\" with default settings.", + "Create a highly available queue with encryption enabled and a dead letter queue specified.", + "Set up a queue with custom retry policies and a shorter visibility timeout for time-sensitive notifications." + ] + }, + "tags": [ + "notifications", + "queue", + "infrastructure", + "create", + "messageQueue", + "alerts", + "retry" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"alertsQueue\"}", + "description": "Create a queue named 'alertsQueue' with default max length, visibility timeout, and no encryption." + }, + { + "inputJson": "{\"queueName\":\"criticalAlerts\",\"maxLength\":5000,\"visibilityTimeout\":60,\"retryPolicy\":{\"maxRetries\":5,\"delaySeconds\":10},\"deadLetterQueue\":\"deadLetterAlerts\",\"region\":\"eu-west-1\",\"encrypted\":true}", + "description": "Create an encrypted queue called 'criticalAlerts' in EU region with custom retry policy and dead letter queue." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "notifications.createReply", + "description": "Creates a reply notification message in response to a prior notification or message. Accepts details including recipient information, original message context, reply content, and optional metadata to compose a structured reply notification payload, which can be dispatched via communication channels.", + "category": "notifications", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier for the recipient of the reply notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "originalMessageId", + "type": "string", + "description": "Identifier of the original message or notification to which this is a reply.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyContent", + "type": "string", + "description": "The textual content of the reply message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier of the sender creating the reply message.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata for the reply notification, such as timestamps or priority level.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "channel", + "type": "string", + "description": "Communication channel to send the reply through (e.g., email, SMS, push).", + "required": false, + "defaultValue": "email" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the reply creation, including messageId, timestamp, and a confirmation message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate and send a reply notification linked to an original message, such as responding to user inquiries, confirmations, or alerts. It helps automate communication workflows by creating structured reply notifications.", + "limitations": "This tool does not handle the actual sending or delivery of messages, only creates the reply notification content and structure. It assumes recipient and sender IDs are valid and that delivery mechanisms are available separately.", + "examples": [ + "Create a reply notification to a user confirming their support ticket update.", + "Generate a reply message acknowledging receipt of a transaction alert.", + "Compose a response notification to a customer feedback message." + ] + }, + "tags": [ + "notifications", + "communication", + "reply", + "message", + "alert", + "response", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user123\",\"originalMessageId\":\"msg789\",\"replyContent\":\"Thank you for your message. We have processed your request.\",\"senderId\":\"supportAgent45\",\"metadata\":{\"priority\":\"high\"},\"channel\":\"email\"}", + "description": "Reply notification confirming request processing sent via email." + }, + { + "inputJson": "{\"recipientId\":\"client456\",\"originalMessageId\":\"alert321\",\"replyContent\":\"We received your alert and are investigating the issue.\",\"senderId\":\"systemBot1\",\"channel\":\"push\"}", + "description": "Reply notification acknowledging alert receipt sent as a push notification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "notifications.createThread", + "description": "Creates a new communication thread in a notification system. Accepts input parameters such as thread title, participants, initial message, and optional metadata. Processes to initialize the thread and notify participants, returning a thread object with unique thread ID and metadata.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or subject of the notification thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "Array of participant identifiers (e.g., user IDs or emails) to include in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessage", + "type": "string", + "description": "The first message content to post in the thread upon creation.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional object containing additional custom metadata for the thread such as tags or priority.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyParticipants", + "type": "boolean", + "description": "Flag indicating whether to send notification alerts to participants upon creating the thread.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created thread, including threadId, title, participants, messages array starting with initial message, and any metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to initiate a new communication or alert thread among a specified group of users, for example to discuss a particular notification event or coordinate on an issue. It creates the thread and optionally triggers notifications to all participants.", + "limitations": "Does not handle messaging within existing threads or message updates; it only creates new threads. Participants must be known user identifiers valid in the system.", + "examples": [ + "Create a new notification thread about system outage including all IT team members.", + "Start a conversation thread on a project update notifying stakeholders.", + "Initialize an alert thread for urgent bug fix requiring immediate team attention." + ] + }, + "tags": [ + "notification", + "thread", + "communication", + "create", + "messaging", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Server Maintenance Notification\",\"participants\":[\"user123\",\"user456\"],\"initialMessage\":\"Scheduled maintenance will occur at midnight.\",\"metadata\":{\"priority\":\"high\",\"category\":\"maintenance\"},\"notifyParticipants\":true}", + "description": "Create a thread titled 'Server Maintenance Notification' involving two participants, with an initial maintenance message and high priority metadata." + }, + { + "inputJson": "{\"title\":\"Project Launch Discussion\",\"participants\":[\"pm001\",\"dev002\",\"qa003\"],\"initialMessage\":\"Let's plan the launch schedule.\",\"notifyParticipants\":false}", + "description": "Create a project discussion thread with three team members but do not send immediate notifications." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "notifications.createSecret", + "description": "Creates and stores a secret token or credential securely for use in notification systems. Accepts inputs like secret name, value, expiry time, and access policies. Processes the secret by encrypting and saving it securely. Returns a confirmation with secret ID and metadata for secure notification integrations.", + "category": "notifications", + "parameters": [ + { + "name": "secretName", + "type": "string", + "description": "Unique name for the secret to be stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "secretValue", + "type": "string", + "description": "The value/content of the secret to be securely saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "expirySeconds", + "type": "number", + "description": "Time in seconds after which the secret expires and is deleted. Zero means no expiry.", + "required": false, + "defaultValue": "0" + }, + { + "name": "accessPolicies", + "type": "array", + "description": "Array of strings defining which roles or services have access to this secret.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description for the secret.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with the secret's unique ID, encrypted storage confirmation, creation timestamp, and metadata for reference." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to securely create and store credentials or secret tokens used in notification workflows, such as API keys or webhook secrets, ensuring confidentiality and controlled access.", + "limitations": "This tool does not handle secret rotation, retrieval of secret values after creation, or auditing beyond storing access policies.", + "examples": [ + "Create a secret token for an email notification service with 24h expiry.", + "Store an API key as a secret for push notification triggers, no expiry.", + "Add a descriptive secret with access limited to notification dispatcher role." + ] + }, + "tags": [ + "notifications", + "security", + "secret-management", + "API-keys", + "credential-storage", + "encryption" + ], + "examples": [ + { + "inputJson": "{\"secretName\":\"emailServiceApiKey\",\"secretValue\":\"abcd1234XYZ\",\"expirySeconds\":86400,\"accessPolicies\":[\"notification-admin\",\"email-service\"],\"description\":\"API key for email notifications\"}", + "description": "Create a secret API key for email notification service that expires in 24 hours and accessible only by admins and the email service." + }, + { + "inputJson": "{\"secretName\":\"pushWebhookSecret\",\"secretValue\":\"secretPushKey987\",\"expirySeconds\":0,\"accessPolicies\":[\"push-service\"],\"description\":\"Webhook secret for push notifications\"}", + "description": "Create a permanent secret for push notification webhook accessible only to the push-service role." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "notifications.createIncident", + "description": "Creates a security incident notification based on input details. Accepts incident type, severity, description, affected systems, and optional tags. Processes this information to generate a standardized incident alert object with a unique ID and timestamp, which can be further sent via notification channels or logged for response teams.", + "category": "notifications", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "Type/category of the security incident (e.g., 'malware', 'intrusion').", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the incident (e.g., 'low', 'medium', 'high', 'critical').", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the incident including context and potential impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of system identifiers (hostnames, IPs, services) affected by the incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags to categorize or prioritize the incident (e.g., ['ransomware', 'urgent']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Identifier of the reporter or system that created the incident notification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique incident ID, timestamp, all input details, and a status field set to 'new'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to formalize a security incident detected or reported by systems or analysts into a standardized notification format for alerting or further automated processing. It creates a structured incident alert including key metadata, helping unify incident communication.", + "limitations": "This tool does not send notifications itself or perform incident analysis; it only formats and generates the incident report object.", + "examples": [ + "Create a high severity malware incident affecting two database servers.", + "Report a medium severity intrusion detected by IDS with relevant system IDs.", + "Generate an incident alert for suspected ransomware tagged urgent and reported by SOC automation." + ] + }, + "tags": [ + "notifications", + "security", + "incident", + "alert", + "automation", + "notification creation" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"malware\",\"severity\":\"high\",\"description\":\"Detected malware infection on multiple endpoints.\",\"affectedSystems\":[\"host123\",\"host456\"],\"tags\":[\"ransomware\",\"urgent\"],\"reportedBy\":\"endpoint-protection\"}", + "description": "Creates a high severity malware incident report with specific affected hosts and tags." + }, + { + "inputJson": "{\"incidentType\":\"intrusion\",\"severity\":\"medium\",\"description\":\"Unauthorized access attempt blocked by firewall.\",\"affectedSystems\":[\"fw01\"],\"tags\":[],\"reportedBy\":\"firewall\"}", + "description": "Generates a medium severity intrusion incident reported by firewall with no tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "notifications.createHTML", + "description": "Generates a customizable HTML snippet for notifications based on input parameters such as title, message, urgency level, and optional styling. Accepts text content and configuration and outputs a complete HTML string representing a styled notification banner or popup suitable for web integration.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title text of the notification to be displayed prominently.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The main content message of the notification providing details.", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "The urgency level of the notification affecting color and style (e.g., info, warning, error, success).", + "required": false, + "defaultValue": "info" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include the current timestamp in the notification display.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customStyles", + "type": "string", + "description": "Additional CSS styles to apply inside the HTML notification container for custom appearance.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoDismissSeconds", + "type": "number", + "description": "Number of seconds after which the notification should automatically disappear; 0 means no auto dismissal.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated HTML string under the 'html' field." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a dynamic, styled HTML notification snippet to be embedded in a webpage or web app. It simplifies the generation of web notifications with configurable content and style based on urgency or user preference.", + "limitations": "This tool does not handle sending or displaying the notification in a UI environment; it only generates the HTML code. It cannot create non-HTML notification formats (e.g., native app notifications) or handle server-side notification logic.", + "examples": [ + "Create a success notification with title 'Update Complete' and message 'Your files have been uploaded successfully.' with auto dismissal after 5 seconds.", + "Generate a warning notification with custom red border and include timestamp for admin alert.", + "Produce an error notification without auto dismissal and default info style." + ] + }, + "tags": [ + "notifications", + "HTML", + "web", + "UI", + "alerts", + "dynamic", + "customization" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Update Complete\",\"message\":\"Your files have been uploaded successfully.\",\"urgencyLevel\":\"success\",\"includeTimestamp\":false,\"customStyles\":\"\",\"autoDismissSeconds\":5}", + "description": "Generate a success notification with auto dismissal after 5 seconds." + }, + { + "inputJson": "{\"title\":\"Server Warning\",\"message\":\"CPU usage exceeds 85%.\",\"urgencyLevel\":\"warning\",\"includeTimestamp\":true,\"customStyles\":\"border:2px solid red; padding: 10px;\",\"autoDismissSeconds\":0}", + "description": "Create a warning notification with timestamp and a custom red border style without auto dismissal." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "notifications.createXML", + "description": "Generates an XML-formatted notification message based on provided notification details such as recipient, message content, urgency level, and optional metadata. The tool builds a well-structured XML string that can be used to send alerts through XML-compatible systems or APIs.", + "category": "notifications", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "Identifier for the notification recipient, such as an email address or user ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The main notification text content to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "urgency", + "type": "string", + "description": "Urgency level of the notification (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string indicating when the notification was created. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional notification data (e.g., source application, category).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A string containing the well-formed XML representation of the notification with all provided details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a notification payload in XML format to integrate with legacy messaging systems, APIs, or third-party services that accept XML notifications. It helps by converting structured notification data into a standardized XML message.", + "limitations": "This tool does not send the notification; it only produces the XML message. It does not validate the recipient format beyond string presence, nor does it handle encryption or signing of the XML payload.", + "examples": [ + "Create an XML notification to alert a user by email about a high urgency system outage.", + "Generate an XML formatted alert with metadata indicating the originating service as 'ServerMonitor'." + ] + }, + "tags": [ + "notifications", + "xml", + "message", + "alerts", + "integration", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"user@example.com\",\"message\":\"Your password will expire soon.\",\"urgency\":\"medium\"}", + "description": "Create a medium urgency notification about password expiration for a user." + }, + { + "inputJson": "{\"recipient\":\"device123\",\"message\":\"High temperature detected.\",\"urgency\":\"high\",\"timestamp\":\"2024-06-05T14:30:00Z\",\"metadata\":{\"source\":\"SensorArray1\",\"category\":\"environment\"}}", + "description": "Generate a high urgency XML alert with timestamp and metadata for environmental monitoring." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "notifications.createPipeline", + "description": "Creates an automated notification pipeline for code deployment or monitoring workflows. Accepts configuration parameters including pipeline name, trigger events, notification channels, and message templates. Processes these to set up an end-to-end notification workflow that sends alerts through specified channels upon defined events. Returns the pipeline ID and setup status.", + "category": "notifications", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The unique name identifier for the notification pipeline.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerEvents", + "type": "array", + "description": "List of events (e.g., buildSuccess, deploymentFailure) that trigger notifications.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "Notification channels to send alerts through (e.g., email, slack, sms).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageTemplates", + "type": "object", + "description": "Key-value pairs defining message templates per event for notifications.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag to activate the pipeline immediately after creation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Settings for retry attempts and intervals if notification delivery fails.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Contains the pipeline ID, human-readable status message, and activation status after setup." + }, + "aiAgent": { + "useCase": "Use this tool when setting up automated notification workflows triggered by code-related events such as builds, deployments, or monitoring alerts. Helps automate alerting through multiple channels based on custom triggers and message templates. Essential for streamlining devops communications and incident response.", + "limitations": "Cannot directly send notifications; it only configures pipelines. Requires external services or integrations for actual message delivery.", + "examples": [ + "Create a notification pipeline named 'DeployAlerts' that triggers on 'deploymentFailure' and sends Slack and email alerts.", + "Set up a pipeline to notify via SMS on 'buildSuccess' events with custom message templates.", + "Establish an active notification pipeline using email and webhook channels triggered by monitoring alerts." + ] + }, + "tags": [ + "notifications", + "automation", + "pipeline", + "devops", + "alerts", + "monitoring", + "integration" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"DeployAlerts\",\"triggerEvents\":[\"deploymentFailure\"],\"channels\":[\"slack\",\"email\"],\"messageTemplates\":{\"deploymentFailure\":\"Deployment failed at stage: {{stage}}.\"},\"isActive\":true}", + "description": "Create a notification pipeline named 'DeployAlerts' that triggers on deployment failures and sends alerts to Slack and email." + }, + { + "inputJson": "{\"pipelineName\":\"BuildNotify\",\"triggerEvents\":[\"buildSuccess\"],\"channels\":[\"sms\"],\"messageTemplates\":{\"buildSuccess\":\"Build succeeded at {{time}}.\"},\"isActive\":false}", + "description": "Set up a notification pipeline for build success events sending SMS alerts, initially inactive." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "notifications.createWorkflow", + "description": "Creates a notification workflow by defining triggers, actions, and conditions to automate alerting processes. Accepts a workflow name, triggers (e.g., event types), conditional logic, and notification actions (email, SMS, webhook). Outputs a structured workflow ID and summary for integration and monitoring.", + "category": "notifications", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The unique name identifying the notification workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "Array of trigger objects defining events or conditions that start the workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "object", + "description": "Optional conditional logic to filter when notifications should be sent, expressed as a rule set.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "actions", + "type": "array", + "description": "List of notification actions to execute when triggers fire and conditions are met (e.g., send email, SMS).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description of the workflow purpose and behavior.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the workflow ID, name, triggers, conditions, actions, and a confirmation status indicating successful creation." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically build notification workflows that automate alerting based on specific system events or user-defined conditions. Ideal for setting up complex multi-step notification processes integrating multiple channels.", + "limitations": "Does not execute workflows; only creates definitions. Requires integration with an execution engine or platform that runs the defined workflows and sends notifications accordingly.", + "examples": [ + "Create a workflow that triggers on user login failures and sends email alerts to admin.", + "Setup a workflow with multiple triggers and conditional SMS notifications for critical system events.", + "Define a webhook action in a workflow triggered by database errors with conditional logic filtering error severity." + ] + }, + "tags": [ + "notifications", + "workflow", + "automation", + "alerts", + "integration", + "events" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"CriticalErrorAlerts\",\"triggers\":[{\"eventType\":\"system.error\",\"severity\":\"critical\"}],\"conditions\":{\"timeOfDay\":\"9-17\"},\"actions\":[{\"type\":\"email\",\"recipient\":\"admin@example.com\",\"subject\":\"Critical Error Detected\"}],\"description\":\"Alerts admin during business hours on critical system errors.\"}", + "description": "Create a workflow for sending email alerts to admin during business hours when critical system errors occur." + }, + { + "inputJson": "{\"workflowName\":\"UserLoginFailureSMS\",\"triggers\":[{\"eventType\":\"user.loginFailure\"}],\"actions\":[{\"type\":\"sms\",\"recipient\":\"+1234567890\",\"message\":\"User login failed multiple attempts.\"}]", + "description": "Workflow setup for sending SMS notifications on user login failures." + }, + { + "inputJson": "{\"workflowName\":\"WebhookOnDBError\",\"triggers\":[{\"eventType\":\"database.error\"}],\"conditions\":{\"errorCode\":[\"500\",\"501\"]},\"actions\":[{\"type\":\"webhook\",\"url\":\"https://example.com/error-handler\",\"payloadTemplate\":{\"error\":\"{{errorCode}}\",\"details\":\"{{errorMessage}}\"}}],\"description\":\"Send webhook for specific database error codes.\"}", + "description": "Defines a workflow that triggers webhooks on specific database error codes with payload details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "messaging.analyzeThread", + "description": "Analyzes a messaging thread's content and metadata to provide insights like sentiment trends, participant activity, topic keywords, and overall engagement. Accepts an array of messages with sender, timestamp, and text; outputs analysis metrics and summaries.", + "category": "messaging", + "parameters": [ + { + "name": "threadMessages", + "type": "array", + "description": "An array of message objects representing the thread to analyze. Each message should include sender, timestamp, and text.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') of the messages to improve text analysis accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze and include sentiment scores for messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and include the main topic keywords from the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone identifier to normalize and present message timestamps correctly.", + "required": false, + "defaultValue": "UTC" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results, including participant activity metrics, sentiment trends over time, extracted keywords, and an engagement summary." + }, + "aiAgent": { + "useCase": "Use this tool to gain insights on communication patterns and content themes within a messaging thread, such as understanding participant involvement, mood shifts, and key discussion topics to inform decision-making or improve collaboration.", + "limitations": "Cannot provide real-time analysis on streaming messages; requires complete message array. Sentiment analysis accuracy depends on language and message content quality. Does not detect sarcasm or complex context.", + "examples": [ + "Analyze the sentiment and participant activity in the last week's project chat thread.", + "Extract keywords and engagement metrics from a customer support conversation thread.", + "Summarize conversation trends and detect mood changes for a team's daily standup chat." + ] + }, + "tags": [ + "messaging", + "analysis", + "sentiment", + "thread", + "keywords", + "engagement", + "communication" + ], + "examples": [ + { + "inputJson": "{\"threadMessages\":[{\"sender\":\"alice\",\"timestamp\":\"2024-06-10T09:12:00Z\",\"text\":\"Hey team, are we on track for the deadline?\"},{\"sender\":\"bob\",\"timestamp\":\"2024-06-10T09:15:00Z\",\"text\":\"Yes, everything is going well so far.\"},{\"sender\":\"alice\",\"timestamp\":\"2024-06-10T09:20:00Z\",\"text\":\"Great to hear! Let's keep the momentum.\"}],\"language\":\"en\",\"includeSentiment\":true,\"includeKeywords\":true,\"timeZone\":\"UTC\"}", + "description": "Analyze a brief project status chat for sentiment, keywords, and participation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "messaging.analyzeReply", + "description": "Analyzes the content and context of a chat or messaging reply to determine sentiment, intent, and key topics. Accepts the reply text and optional metadata, processes natural language understanding to extract insights, and outputs an analysis object including sentiment score, intent classification, and extracted keywords.", + "category": "messaging", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The textual content of the reply to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the reply text for analysis (e.g. 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "conversationContext", + "type": "string", + "description": "Optional context from the conversation thread to improve analysis accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "returnKeywords", + "type": "boolean", + "description": "Whether to extract and return key topics/keywords from the reply.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the sentiment score (range -1 to 1), intent label (e.g., 'question', 'complaint', 'feedback'), and an array of extracted keywords or topics." + }, + "aiAgent": { + "useCase": "Use this tool when processing real-time chat or messaging replies to automatically understand the user's sentiment, identify their intent, and surface key discussion points. This helps automate routing, prioritization, or personalized response generation in chatbots and support systems.", + "limitations": "Cannot guarantee perfect intent classification or sentiment accuracy due to nuances in language and limited context. May struggle with sarcasm, ambiguity, or highly domain-specific terminology.", + "examples": [ + "Analyze the customer reply to detect if they are unhappy or requesting a refund.", + "Determine if the chat reply is asking a question or providing feedback.", + "Extract key topics from the user's reply to summarize conversation themes." + ] + }, + "tags": [ + "messaging", + "analysis", + "sentiment", + "intent", + "keywords", + "chat", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"I'm quite disappointed with the delay in shipment.\",\"language\":\"en\",\"returnKeywords\":true}", + "description": "Detect negative sentiment and extract topics related to shipment delay." + }, + { + "inputJson": "{\"replyText\":\"Can you tell me when my order will arrive?\",\"language\":\"en\",\"returnKeywords\":false}", + "description": "Identify that the reply is a question about order arrival." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "messaging.analyzeIncident", + "description": "Analyzes real-time messaging incident logs or chat transcripts related to security events. Accepts input data containing incident messages and metadata, performs pattern recognition, threat detection, and sentiment analysis, then outputs structured incident insights including severity, potential causes, and recommended action steps.", + "category": "messaging", + "parameters": [ + { + "name": "incidentLogs", + "type": "array", + "description": "An array of message objects representing messages and metadata from the incident to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on messages during the incident.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxIncidentSeverity", + "type": "string", + "description": "Filter to analyze incidents up to this severity level (e.g., low, medium, high).", + "required": false, + "defaultValue": "high" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object with 'start' and 'end' ISO 8601 timestamps to restrict the analysis timeframe.", + "required": false, + "defaultValue": "" + }, + { + "name": "threatKeywords", + "type": "array", + "description": "Array of custom keywords or phrases to detect specific threat indicators in messages.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis including severity rating, detected threat types, root cause hypotheses, timeline of events, sentiment summary, and recommended mitigation steps." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand, summarize, and extract actionable intelligence from messaging or chat logs related to security incidents. It helps in real-time incident response by detecting threat indicators and recommending mitigation based on message content and context.", + "limitations": "The tool cannot access external threat intelligence beyond provided keywords, and may not detect novel or highly obfuscated threats without proper keyword inputs. It also depends on quality and completeness of the provided message logs.", + "examples": [ + "Analyze chat logs from a suspected data breach incident between 2024-05-10T01:00:00Z and 2024-05-10T03:00:00Z, focusing on high severity messages.", + "Identify potential phishing attempts from incident messages containing suspicious URLs or request patterns.", + "Summarize the root causes and sentiment trends in messaging logs related to a recent security alert." + ] + }, + "tags": [ + "messaging", + "incident analysis", + "security", + "chat logs", + "threat detection", + "sentiment analysis" + ], + "examples": [ + { + "inputJson": "{\"incidentLogs\":[{\"timestamp\":\"2024-05-10T01:15:00Z\",\"sender\":\"user123\",\"message\":\"I think we saw a suspicious login attempt.\"},{\"timestamp\":\"2024-05-10T01:16:30Z\",\"sender\":\"sec_team\",\"message\":\"Multiple failed password attempts detected.\"}],\"includeSentimentAnalysis\":true,\"timeRange\":{\"start\":\"2024-05-10T01:00:00Z\",\"end\":\"2024-05-10T02:00:00Z\"},\"maxIncidentSeverity\":\"high\"}", + "description": "Analyze chat logs indicating suspicious login attempts within a one-hour window, including sentiment analysis." + }, + { + "inputJson": "{\"incidentLogs\":[{\"timestamp\":\"2024-04-22T14:42:00Z\",\"sender\":\"user42\",\"message\":\"Received an email asking for credentials.\"},{\"timestamp\":\"2024-04-22T14:43:20Z\",\"sender\":\"sec_ops\",\"message\":\"Potential phishing detected.\"}],\"threatKeywords\":[\"phish\",\"credential\",\"email\"],\"includeSentimentAnalysis\":false}", + "description": "Detect potential phishing attack indicators from incident messages with custom threat keywords without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "messaging.analyzeXML", + "description": "Analyzes XML-formatted messaging data to extract key communication elements such as sender, receiver, timestamp, and message content. Accepts XML string input, processes it to identify and summarize message details, and outputs a structured JSON object highlighting communication patterns and metadata.", + "category": "messaging", + "parameters": [ + { + "name": "xmlData", + "type": "string", + "description": "The XML string containing messaging data to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractMetadata", + "type": "boolean", + "description": "Indicates whether to extract metadata such as timestamps, sender, and receiver info from the XML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summarizeContent", + "type": "boolean", + "description": "Whether to generate a textual summary of the message content within the XML.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length (in characters) for the content summary if summarization is enabled.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing extracted messaging details including metadata fields, a list of messages, and optionally a summary of message contents." + }, + "aiAgent": { + "useCase": "Use this tool when you need to parse and extract structured information from XML formatted messaging logs or chat data in real-time communication systems. It helps to convert raw XML data into actionable insights about message flow, participants, and content summaries for monitoring or analytics.", + "limitations": "This tool is limited to well-formed XML inputs representing messaging data; it does not perform XML validation or correction and cannot analyze binary or non-XML message formats.", + "examples": [ + "Analyze an XML string of chat messages to extract message details and participants.", + "Summarize the contents of XML-based messages while extracting metadata for timeline reconstruction.", + "Extract sender-receiver pairs and timestamps from XML data to analyze communication patterns." + ] + }, + "tags": [ + "messaging", + "XML", + "analysis", + "real-time", + "chat", + "metadata", + "summary" + ], + "examples": [ + { + "inputJson": "{\"xmlData\":\"AliceBob2024-06-01T10:00:00ZHello Bob!\",\"extractMetadata\":true,\"summarizeContent\":true,\"maxSummaryLength\":100}", + "description": "Analyzes a single chat message encoded in XML, extracts metadata and provides a short summary of content." + }, + { + "inputJson": "{\"xmlData\":\"JohnLisa2024-06-02T08:15:30ZMeeting at 9 am.LisaJohn2024-06-02T08:16:00ZGot it, see you then.\",\"extractMetadata\":true,\"summarizeContent\":false}", + "description": "Processes multiple XML messages to extract sender, receiver, and timestamp metadata without content summarization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "messaging.analyzeHTML", + "description": "Analyzes a given HTML string from messaging content to extract and summarize key elements such as links, images, text snippets, and basic structure. The tool identifies actionable items like URLs, embedded media, and important text fragments to facilitate content understanding and moderation in real-time chat environments.", + "category": "messaging", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The HTML content string to be analyzed. Required for processing the message content.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "Flag indicating whether to extract all hyperlinks from the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractImages", + "type": "boolean", + "description": "Flag indicating whether to extract all image sources and alt text from the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTextSnippetLength", + "type": "number", + "description": "Maximum length of the extracted text snippet from the HTML body for summary purposes.", + "required": false, + "defaultValue": "200" + }, + { + "name": "includeStructureAnalysis", + "type": "boolean", + "description": "Enables parsing of the HTML to provide a simple outline of its structural elements (like number of paragraphs, headings).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing arrays of extracted links and images, a text snippet summary, and optionally a structural outline of the HTML content." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to interpret or summarize complex HTML content embedded in real-time messaging, such as chat messages or notifications containing rich text and media. It's useful for moderation, content summary, link verification, and understanding message context without rendering HTML.", + "limitations": "This tool does not fully render or execute scripts within HTML and cannot extract dynamic content generated via JavaScript. It handles basic static HTML structure and content only.", + "examples": [ + "Analyze an HTML chat message to extract all URLs for link safety scanning.", + "Extract images and text snippets from an incoming user message for content moderation.", + "Generate a brief summary and structure outline from a rich text message received in the chat." + ] + }, + "tags": [ + "messaging", + "HTML", + "analysis", + "content extraction", + "real-time", + "chat", + "moderation" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Hello! Check out our site at Example.

Example Image\",\"extractLinks\":true,\"extractImages\":true,\"maxTextSnippetLength\":50,\"includeStructureAnalysis\":true}", + "description": "Analyze a message containing a paragraph with a link and an image, extracting links, images, a text snippet, and the document structure." + }, + { + "inputJson": "{\"htmlContent\":\"

Welcome

This is a test message with no images.

\",\"extractLinks\":true,\"extractImages\":true,\"maxTextSnippetLength\":100,\"includeStructureAnalysis\":false}", + "description": "Analyze an HTML message with headings and text but no images or links, to extract a text snippet only." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "messaging.analyzeDeal", + "description": "Analyzes the conversation messages related to a business deal by extracting key deal information such as deal stage, estimated value, involved parties, and sentiment. Accepts a list of messages and optional configuration parameters, then returns a structured summary of the deal status and potential action items.", + "category": "messaging", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "List of message objects related to the deal conversation, each containing 'sender', 'timestamp', and 'content'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealId", + "type": "string", + "description": "Unique identifier for the deal to correlate analysis results.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the messages to correctly process text (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Flag to include sentiment analysis on messages or not.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxMessages", + "type": "number", + "description": "Maximum number of recent messages to analyze to limit processing scope.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "Structured summary containing extracted deal attributes like current stage, estimated value, parties, sentiment summary, and recommended actions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract and summarize critical deal-related insights from a sequence of real-time or archived messaging conversations in business negotiations. It helps understand deal progress, identify risk factors, and recommend next steps by analyzing unstructured chat data.", + "limitations": "Cannot replace human judgment in negotiations. May not accurately interpret sarcasm or highly implicit context. Requires sufficiently detailed message history for meaningful analysis.", + "examples": [ + "Analyze the last 50 messages in this sales chat to summarize deal status.", + "Extract deal details and sentiment from conversation for deal ID 'D-12345'.", + "Provide a summary and recommended actions based on the latest messages in the negotiation thread." + ] + }, + "tags": [ + "messaging", + "analysis", + "deal", + "business", + "sentiment", + "chat", + "summary" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"sender\":\"Alice\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"content\":\"We are ready to move forward with the $500k contract.\"},{\"sender\":\"Bob\",\"timestamp\":\"2024-06-01T10:05:00Z\",\"content\":\"Great, let's finalize the terms next week.\"}],\"dealId\":\"D1001\",\"language\":\"en\",\"includeSentiment\":true,\"maxMessages\":50}", + "description": "Analyzing short conversation to detect deal stage, value, and sentiment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "messaging.downloadCSV", + "description": "This tool downloads chat message data from a specified channel or conversation within a messaging platform and exports it as a CSV file. It accepts input parameters such as channel ID, date range, message limit, and format options, processes the messages accordingly, and outputs the content in a CSV format suitable for reporting or archival purposes.", + "category": "messaging", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "The unique identifier of the channel or conversation to download messages from.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date (ISO 8601 format) to filter messages from, inclusive. If omitted, retrieves from earliest available message.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date (ISO 8601 format) to filter messages until, inclusive. If omitted, retrieves up to the latest available message.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxMessages", + "type": "number", + "description": "The maximum number of messages to include in the CSV output. If omitted or 0, includes all messages in the date range.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "If true, includes additional metadata columns such as message ID, user ID, and timestamp in the CSV.", + "required": false, + "defaultValue": "true" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired file name for the downloaded CSV; .csv extension will be appended if missing.", + "required": false, + "defaultValue": "chat_messages" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV content as a string and the generated filename for download." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract, compile, and download chat or messaging data from a specific channel or conversation for reporting, analysis, or archival. It is ideal for scenarios requiring date filtering, message limits, or metadata inclusion in CSV format.", + "limitations": "This tool cannot modify, delete, or send messages. It only exports existing chat messages. Very large message requests may be subject to platform rate limits or performance constraints.", + "examples": [ + "Download the last 500 messages from channel XYZ between January 1 and January 31, including metadata.", + "Export all messages from a private chat with user ABC without date restrictions.", + "Get messages from channel 123 for compliance review, limiting to 1000 messages and excluding metadata." + ] + }, + "tags": [ + "messaging", + "download", + "CSV", + "export", + "chat", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"C1234567890\",\"startDate\":\"2024-01-01T00:00:00Z\",\"endDate\":\"2024-01-31T23:59:59Z\",\"maxMessages\":500,\"includeMetadata\":true,\"fileName\":\"JanuaryChatExport\"}", + "description": "Download up to 500 messages from channel C1234567890 during January 2024, including metadata, and save as 'JanuaryChatExport.csv'." + }, + { + "inputJson": "{\"channelId\":\"D0987654321\",\"maxMessages\":0,\"includeMetadata\":false}", + "description": "Download all messages from a direct conversation D0987654321 without metadata included." + }, + { + "inputJson": "{\"channelId\":\"C5556667777\",\"maxMessages\":1000,\"includeMetadata\":true,\"fileName\":\"ComplianceReview\"}", + "description": "Export 1000 messages from channel C5556667777 with metadata for compliance purposes, file named 'ComplianceReview.csv'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "messaging.uploadCSV", + "description": "Uploads and imports CSV-formatted data into a messaging platform for bulk contact creation, message scheduling, or group creation. Accepts a CSV string or file path, processes the data to map fields according to specified use, and returns a summary of the import results including successes and errors.", + "category": "messaging", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "The CSV content as a string to be uploaded and processed.", + "required": true, + "defaultValue": "" + }, + { + "name": "useCase", + "type": "string", + "description": "Defines the purpose of the upload such as 'contacts', 'messages', or 'groups' to map CSV fields accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "fieldMapping", + "type": "object", + "description": "An object defining how CSV columns map to the messaging platform data fields. For example, {'Name':'contactName', 'Phone':'phoneNumber'}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character that separates fields in the CSV data, defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the CSV data includes a header row for column names.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing counts of total, successful, and failed records, plus an array of error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when needing to bulk import or update messaging data from CSV files, such as adding multiple contacts, scheduling multiple messages, or creating groups efficiently in the messaging platform.", + "limitations": "This tool cannot validate the content semantics beyond field mapping and format compliance; errors in CSV data correctness or completeness may require manual review. It does not handle real-time CSV streaming; requires complete data input.", + "examples": [ + "Upload a CSV of new contacts to add to the messaging platform.", + "Import a CSV list to schedule bulk messages based on predefined templates.", + "Create user groups by uploading a CSV defining group names and member lists." + ] + }, + "tags": [ + "messaging", + "csv", + "upload", + "bulk-import", + "contacts", + "messages", + "groups" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"Name,Phone\\nAlice,+123456789\\nBob,+987654321\",\"useCase\":\"contacts\",\"fieldMapping\":{\"Name\":\"contactName\",\"Phone\":\"phoneNumber\"},\"delimiter\":\",\",\"hasHeader\":true}", + "description": "Uploads a CSV string with contacts to add their names and phone numbers to the messaging platform." + }, + { + "inputJson": "{\"csvData\":\"GroupName,Members\\nFriends,alice@example.com;bob@example.com\\nWork,colleague@example.com\",\"useCase\":\"groups\",\"fieldMapping\":{\"GroupName\":\"groupName\",\"Members\":\"memberEmails\"},\"delimiter\":\",\",\"hasHeader\":true}", + "description": "Uploads groups with the group name and a semicolon-separated list of member emails from a CSV." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "messaging.renderWord", + "description": "Renders a single word into formatted HTML suitable for chat or messaging interfaces, applying styles such as font size, color, emphasis (bold, italic, underline), and optionally adding emoji or tooltip annotations. Accepts plain text and formatting parameters, outputs an HTML string representing the styled word for real-time messaging display.", + "category": "messaging", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single word text to be rendered with styling.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels to apply to the word.", + "required": false, + "defaultValue": "14" + }, + { + "name": "fontColor", + "type": "string", + "description": "Hex or named color value for the font color of the word.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render the word in bold style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render the word in italic style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "underline", + "type": "boolean", + "description": "Whether to underline the word.", + "required": false, + "defaultValue": "false" + }, + { + "name": "emoji", + "type": "string", + "description": "Optional emoji character or shortcode to append after the word.", + "required": false, + "defaultValue": "" + }, + { + "name": "tooltip", + "type": "string", + "description": "Optional tooltip text to show on hover over the word.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with an 'html' property containing the HTML string rendering the styled word for messaging interface." + }, + "aiAgent": { + "useCase": "Use this tool when needing to render or display a single word in a chat or messaging UI with specific style formatting, such as applying colors, font sizes, emphasis, or adding emojis and tooltips, enabling richer real-time user message presentations.", + "limitations": "This tool only renders a single word at a time and does not support full sentence or multi-word formatting. It produces HTML but does not handle message transmission or parsing beyond styling the word.", + "examples": [ + "Render the word 'Hello' in bold red, font size 16px.", + "Render the word 'Success' italicized with green color and a thumbs up emoji appended.", + "Render the word 'Info' with underline and a tooltip explaining its meaning." + ] + }, + "tags": [ + "messaging", + "rendering", + "word", + "formatting", + "chat", + "html", + "styling" + ], + "examples": [ + { + "inputJson": "{\"word\":\"Hello\",\"fontSize\":16,\"fontColor\":\"#FF0000\",\"bold\":true}", + "description": "Render 'Hello' in bold red font size 16." + }, + { + "inputJson": "{\"word\":\"Success\",\"italic\":true,\"fontColor\":\"green\",\"emoji\":\"👍\"}", + "description": "Render 'Success' italic green with thumbs up emoji." + }, + { + "inputJson": "{\"word\":\"Info\",\"underline\":true,\"tooltip\":\"Additional information available.\"}", + "description": "Render 'Info' underlined with tooltip text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "messaging.formatSentence", + "description": "Formats a given sentence according to specified style and options for real-time messaging contexts. Accepts raw sentence text and parameters for capitalization style, punctuation enforcement, emoji replacement, and trimming whitespace. Outputs a formatted sentence string optimized for chat readability and tone consistency.", + "category": "messaging", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The input sentence text to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalize", + "type": "string", + "description": "Capitalization style applied to the sentence; options include 'none', 'sentenceCase', 'titleCase', or 'upperCase'.", + "required": false, + "defaultValue": "sentenceCase" + }, + { + "name": "enforcePunctuation", + "type": "boolean", + "description": "If true, ensures the sentence ends with standard punctuation (. ! or ?). Adds a period if none is present.", + "required": false, + "defaultValue": "true" + }, + { + "name": "replaceEmojis", + "type": "boolean", + "description": "If true, converts common textual emoticons (:), :-), :D) into their corresponding Unicode emoji characters.", + "required": false, + "defaultValue": "false" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, trims leading and trailing whitespace from the input sentence before formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted sentence string with all specified transformations applied, ensuring clarity and consistent style for messaging use." + }, + "aiAgent": { + "useCase": "Use this tool when preparing user-generated text or message content for chat interfaces or real-time messaging platforms to improve readability, maintain tone consistency, and enhance user engagement by enforcing punctuation and capitalization rules. It helps standardize sentences before sending or storing messages in chats.", + "limitations": "Does not perform language translation, grammar correction beyond capitalization/punctuation, or sentiment analysis. Limited emoji replacement only for common emoticons; it does not parse or convert complex emoji shorthand or slang.", + "examples": [ + "Format the sentence 'hello world' to sentence case and add punctuation.", + "Convert 'hey there :)' replacing emoticons with emojis and title case capitalization.", + "Trim extra spaces and enforce punctuation on ' good morning everyone '" + ] + }, + "tags": [ + "messaging", + "formatting", + "text-processing", + "chat", + "sentence-style", + "emoji", + "punctuation" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"hello world\",\"capitalize\":\"sentenceCase\",\"enforcePunctuation\":true,\"replaceEmojis\":false,\"trimWhitespace\":true}", + "description": "Formats a lowercase sentence to sentence case and ensures punctuation is present." + }, + { + "inputJson": "{\"sentence\":\"hey there :)\",\"capitalize\":\"titleCase\",\"enforcePunctuation\":true,\"replaceEmojis\":true,\"trimWhitespace\":true}", + "description": "Converts emoticon to emoji, applies title case, and enforces punctuation." + }, + { + "inputJson": "{\"sentence\":\" good morning everyone \",\"capitalize\":\"none\",\"enforcePunctuation\":true,\"replaceEmojis\":false,\"trimWhitespace\":true}", + "description": "Trims whitespace and adds punctuation without changing case." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "messaging.renderText", + "description": "Renders styled text content for messaging platforms, accepting plain text with optional markdown or formatting instructions, and producing formatted HTML or enriched text suitable for chat integration and real-time display.", + "category": "messaging", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "Plain text content or markdown to render into styled text.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatting", + "type": "string", + "description": "Specifies the formatting style to apply, e.g., 'markdown', 'plain', or 'html'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "supportLinks", + "type": "boolean", + "description": "Determines if URLs in text should be converted to clickable links.", + "required": false, + "defaultValue": "true" + }, + { + "name": "supportEmojis", + "type": "boolean", + "description": "If true, converts emoji shortcodes in text to graphical emojis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the rendered text, truncating if necessary.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered text string formatted for messaging display, including optional HTML tags or markup." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw or plain text messages into enriched, formatted content suitable for real-time messaging or chat UIs, supporting markdown syntax, emoji conversion, and clickable links, to improve user experience and message readability.", + "limitations": "Cannot render complex multimedia content like images or videos; does not support advanced text layouts beyond inline formatting. Limited to text styling and basic markdown.", + "examples": [ + "Render markdown text input from a user chat message for display in a chat bubble.", + "Convert emoji shortcodes in casual chat messages into their graphical equivalent.", + "Render plain text with URLs into clickable links for messaging clients." + ] + }, + "tags": [ + "messaging", + "rendering", + "text", + "markdown", + "formatting", + "chat", + "real-time" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello, **world**! Check this link: https://example.com\",\"formatting\":\"markdown\",\"supportLinks\":true,\"supportEmojis\":true,\"maxLength\":500}", + "description": "Render markdown text with bold formatting and clickable links." + }, + { + "inputJson": "{\"text\":\"Good morning :sunny: everyone!\",\"formatting\":\"markdown\",\"supportLinks\":false,\"supportEmojis\":true,\"maxLength\":200}", + "description": "Render text with emoji shortcode converted but no link support." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "messaging.formatCSV", + "description": "Formats a given CSV string into a clean, readable chat message format by parsing rows and columns, supporting optional trimming, custom delimiters, and limited column width wrapping. Takes raw CSV text input and returns a formatted string suitable for posting in messaging platforms with improved readability.", + "category": "messaging", + "parameters": [ + { + "name": "csvText", + "type": "string", + "description": "Raw CSV data as a string to be formatted into a chat-friendly output.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate values in the CSV input. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "trimCells", + "type": "boolean", + "description": "Whether to trim whitespace from individual CSV cells before formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxColumnWidth", + "type": "number", + "description": "Maximum width in characters for each column, longer cell contents will be truncated or wrapped depending on options. 0 means no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "wrapText", + "type": "boolean", + "description": "If true and maxColumnWidth > 0, wrap cell text to new lines instead of truncating.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include the first row as a formatted header with emphasis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "Formatted multi-line string representing the CSV content, suitable for readable display in chat messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to present CSV data clearly in messaging environments where monospace tabular display may be unavailable or undesirable. It transforms raw CSV into a readable text block with optional trimming, wrapping, and header formatting, enhancing clarity in chat conversations or logs.", + "limitations": "Cannot format CSV data containing complex nested quotes or multiline fields reliably. It does not convert to graphical tables or support markdown beyond basic text formatting. Large CSV inputs may result in unwieldy chat messages.", + "examples": [ + "Format a CSV exported from a spreadsheet for posting in a Slack channel.", + "Reformat CSV log data into a readable chat message with wrapped columns for easier debugging.", + "Display CSV data from a CSV attachment inline in a chat message with clear headers and aligned columns." + ] + }, + "tags": [ + "messaging", + "formatting", + "CSV", + "text-processing", + "chat", + "data-display", + "real-time" + ], + "examples": [ + { + "inputJson": "{\"csvText\":\"Name, Age, Role\\nAlice, 30, Engineer\\nBob, 25, Designer\",\"delimiter\":\",\",\"trimCells\":true,\"maxColumnWidth\":10,\"wrapText\":false,\"includeHeader\":true}", + "description": "Format a simple CSV string from user records into a chat-friendly table with column width limit and header." + }, + { + "inputJson": "{\"csvText\":\"product;price;quantity\\nPen;1.25;100\\nNotebook;2.50;50\",\"delimiter\":\";\",\"trimCells\":true,\"maxColumnWidth\":0,\"wrapText\":false,\"includeHeader\":true}", + "description": "Format semicolon-delimited CSV for product inventory display without column width limit." + }, + { + "inputJson": "{\"csvText\":\"Name,Description\\nGadget,Multi-purpose tool with sleek design and durable body\",\"delimiter\":\",\",\"trimCells\":true,\"maxColumnWidth\":20,\"wrapText\":true,\"includeHeader\":true}", + "description": "Format CSV with long text field wrapped at 20 characters for better readability in chat." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "messaging.formatEndpoint", + "description": "Formats a messaging service endpoint URL with appropriate query parameters and path segments based on provided options. Accepts base endpoint URL as a string, optional parameters as an object or array, and returns a fully formatted, encoded endpoint string suitable for API calls or real-time messaging client connections.", + "category": "messaging", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL of the messaging endpoint to format, including protocol and domain (e.g., https://api.chatserver.com/v1)", + "required": true, + "defaultValue": "" + }, + { + "name": "pathSegments", + "type": "array", + "description": "An array of strings representing additional path segments to append to the base URL (e.g., ['channels','1234','messages'])", + "required": false, + "defaultValue": "[]" + }, + { + "name": "queryParams", + "type": "object", + "description": "Key-value pairs representing query parameters to append to the URL, with automatic URL encoding (e.g., {token: 'abc123', limit: '50'})", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTrailingSlash", + "type": "boolean", + "description": "Whether to ensure the final formatted endpoint URL ends with a trailing slash", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "The fully formatted messaging endpoint URL string, including base URL, appended path segments, and encoded query parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to construct or normalize a complete real-time messaging API or WebSocket endpoint dynamically by combining a base URL with additional path segments and query parameters. It ensures proper encoding and formatting for API requests or client connections.", + "limitations": "Does not validate authentication tokens or verify endpoint accessibility; does not handle request sending or response parsing; purely formats endpoint strings.", + "examples": [ + "Format a messaging API URL with specific channel path and token query parameter.", + "Generate a WebSocket connection URL with parameters for protocol and session.", + "Create endpoint URL ensuring a trailing slash for compatibility with certain servers." + ] + }, + "tags": [ + "messaging", + "endpoint", + "url-formatting", + "api", + "real-time", + "websocket" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://api.chatserver.com/v1\",\"pathSegments\":[\"channels\",\"1234\",\"messages\"],\"queryParams\":{\"token\":\"abc123\",\"limit\":\"50\"},\"includeTrailingSlash\":false}", + "description": "Format channel messages API endpoint with token and limit parameters." + }, + { + "inputJson": "{\"baseUrl\":\"wss://realtime.messaging.net/socket\",\"queryParams\":{\"protocol\":\"json\",\"sessionId\":\"sess789\"},\"includeTrailingSlash\":true}", + "description": "Create a WebSocket URL with protocol and sessionId query parameters, ensuring trailing slash." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "messaging.draftText", + "description": "Creates a draft text message based on provided conversation context, recipient info, and optional tone/instruction parameters. Processes inputs to generate a coherent, contextually appropriate message draft suitable for real-time chat or messaging platforms. Outputs the drafted text string.", + "category": "messaging", + "parameters": [ + { + "name": "conversationContext", + "type": "string", + "description": "A brief summary or excerpts of the recent conversation or chat history relevant to the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "object", + "description": "Information about the message recipient, including name and optionally other attributes to tailor the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the draft message (e.g., formal, casual, friendly).", + "required": false, + "defaultValue": "casual" + }, + { + "name": "instructions", + "type": "string", + "description": "Additional instructions or key points to include in the draft message.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated draft message text as a string under the key 'draftText'." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate a relevant and contextually aware draft text message for a given recipient based on recent conversation data and optional style instructions. Ideal for assisting in composing replies or initiating messages in chat integrations or messaging apps.", + "limitations": "Cannot send or dispatch messages directly. Does not guarantee message appropriateness beyond the given tone and instructions; human review recommended. Cannot access external data beyond provided inputs.", + "examples": [ + "Generate a casual reply draft for a recent discussion about meeting times.", + "Draft a formal message introducing a new project update to a client based on previous conversation notes.", + "Compose a friendly reminder message including key points specified in instructions." + ] + }, + "tags": [ + "messaging", + "drafting", + "text generation", + "chat", + "communication", + "real-time", + "AI assistant" + ], + "examples": [ + { + "inputJson": "{\"conversationContext\":\"We discussed project deadlines and client feedback.\",\"recipient\":{\"name\":\"Alice\"},\"tone\":\"formal\",\"instructions\":\"Mention the updated timeline and thank her for feedback.\"}", + "description": "Draft a formal message to Alice summarizing updated deadlines and expressing gratitude." + }, + { + "inputJson": "{\"conversationContext\":\"Alice asked about availability for next week.\",\"recipient\":{\"name\":\"Alice\"},\"tone\":\"casual\",\"instructions\":\"Confirm availability on Tuesday and suggest lunch.\"}", + "description": "Create a casual reply confirming availability and proposing a lunch meeting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "messaging.draftWord", + "description": "Creates a concise draft message consisting of a single word or term tailored for real-time chat or messaging platforms. Accepts context or topic input to generate a contextually appropriate word suggestion. Outputs the drafted word as a string.", + "category": "messaging", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "Context or topic to guide the word drafting process, e.g., subject matter or tone.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the word, such as formal, casual, enthusiastic, or neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the drafted word output.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted single word as a string." + }, + "aiAgent": { + "useCase": "Use this tool when generating a quick, context-aware single-word message or keyword for chat interactions, such as tagging, labeling, or short replies fitting a specific tone or subject. Helps produce succinct, relevant word suggestions for real-time messaging.", + "limitations": "Cannot draft multi-word phrases or sentences. Not designed for lengthy message generation or complex textual content.", + "examples": [ + "Generate a single enthusiastic word related to greetings.", + "Suggest a formal word related to meeting agenda.", + "Provide a casual single word about weekend plans." + ] + }, + "tags": [ + "messaging", + "drafting", + "word", + "chat", + "real-time", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"context\":\"greeting\",\"tone\":\"enthusiastic\",\"language\":\"en\"}", + "description": "Draft an enthusiastic single word related to greeting." + }, + { + "inputJson": "{\"context\":\"project update\",\"tone\":\"formal\",\"language\":\"en\"}", + "description": "Draft a formal word suitable for a project update message." + }, + { + "inputJson": "{\"context\":\"weekend plan\",\"tone\":\"casual\",\"language\":\"en\"}", + "description": "Draft a casual single word about weekend plans." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "messaging.generateChart", + "description": "Generates a visual chart (bar, line, pie) representing chat or messaging data provided as input. Accepts structured data including labels and corresponding numeric values, processes it to create a configurable chart image, and outputs a URL or base64 string of the rendered chart for embedding in chat apps or messaging platforms.", + "category": "messaging", + "parameters": [ + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate: 'bar', 'line', or 'pie'.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataLabels", + "type": "array", + "description": "An array of strings representing labels for each data point in the chart.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataValues", + "type": "array", + "description": "An array of numbers corresponding to each label, representing the data values.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title text to display on the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the resulting chart image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the resulting chart image in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme for the chart. Accepts common names like 'default', 'dark', or hex color codes for customization.", + "required": false, + "defaultValue": "default" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the chart image: 'png', 'jpeg', or 'base64'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "An object containing a string 'chartUrl' with a link or base64 encoding of the generated chart image for embedding in messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate visual charts dynamically from messaging or chat-related data, such as message counts per user, sentiment analysis results, or activity trends, for sharing inside chat platforms or messaging interfaces that support image embeds.", + "limitations": "This tool does not support interactive charts or real-time streaming updates. It is limited to static chart images based on provided data arrays. Complex chart types like scatter plots or histograms are not supported.", + "examples": [ + "Generate a bar chart showing number of messages sent by each user over last week.", + "Create a pie chart depicting percentage distribution of message types (text, image, file).", + "Produce a line chart showing daily active users in a chat application over the past month." + ] + }, + "tags": [ + "messaging", + "chart", + "visualization", + "data", + "statistics", + "image-generation" + ], + "examples": [ + { + "inputJson": "{\"chartType\":\"bar\",\"dataLabels\":[\"Alice\",\"Bob\",\"Charlie\"],\"dataValues\":[120,85,60],\"title\":\"Messages Sent\",\"width\":800,\"height\":450,\"colorScheme\":\"default\",\"outputFormat\":\"png\"}", + "description": "A bar chart showing message counts per user in a chat." + }, + { + "inputJson": "{\"chartType\":\"pie\",\"dataLabels\":[\"Text\",\"Image\",\"File\"],\"dataValues\":[70,20,10],\"title\":\"Message Type Distribution\",\"width\":500,\"height\":500,\"colorScheme\":\"dark\",\"outputFormat\":\"base64\"}", + "description": "A pie chart representing percentage distribution of message types." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "messaging.generateHTML", + "description": "Generates HTML code for a real-time messaging interface based on supplied chat messages, user info, and style templates. Accepts an array of message objects, optional user metadata and styling options, and produces a self-contained HTML string representing a chat conversation ready for embedding or display.", + "category": "messaging", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "Array of chat message objects, each containing sender, timestamp, and text content; required to build the chat content.", + "required": true, + "defaultValue": "" + }, + { + "name": "userMetadata", + "type": "object", + "description": "Optional metadata about users such as display names and avatar URLs to enrich message presentation.", + "required": false, + "defaultValue": "" + }, + { + "name": "styleTemplate", + "type": "string", + "description": "CSS style template or preset name to customize the look and feel of the generated chat HTML.", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Flag to include or exclude message timestamps in the generated HTML. Default true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "containerId", + "type": "string", + "description": "Optional id attribute for the outermost container element in the generated HTML to allow CSS or scripting targeting.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'html' which holds the generated HTML string representing the chat messages formatted as a visually styled conversation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to render chat or messaging data into an embeddable HTML format for web display or email. It's ideal to convert structured message data into a user-friendly, styled chat interface dynamically. The agent should use this to provide quick UI previews or export conversations visually.", + "limitations": "This tool does not support real-time message updates or interactive elements beyond static HTML. It cannot handle multimedia content beyond text and user avatars and does not generate server-side code or functionality.", + "examples": [ + "Generate a chat HTML from an array of messages with default styling and timestamps.", + "Create a styled chat conversation with user avatars and customized CSS template.", + "Produce HTML for a chat interface embedding timestamps disabled and a specific container id for scripting." + ] + }, + "tags": [ + "messaging", + "HTML", + "chat", + "UI generation", + "real-time", + "rendering" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"sender\":\"alice\",\"timestamp\":\"2024-06-01T10:15:00Z\",\"text\":\"Hello, world!\"},{\"sender\":\"bob\",\"timestamp\":\"2024-06-01T10:16:00Z\",\"text\":\"Hi Alice!\"}],\"userMetadata\":{\"alice\":{\"displayName\":\"Alice\",\"avatarUrl\":\"https://example.com/alice.png\"},\"bob\":{\"displayName\":\"Bob\",\"avatarUrl\":\"https://example.com/bob.png\"}},\"styleTemplate\":\"default\",\"includeTimestamps\":true,\"containerId\":\"chatBox\"}", + "description": "Generate a chat with two messages, user avatars, timestamps, default styling, with container id 'chatBox'." + }, + { + "inputJson": "{\"messages\":[{\"sender\":\"carol\",\"timestamp\":\"2024-06-02T09:00:00Z\",\"text\":\"Good morning!\"}],\"styleTemplate\":\"darkMode\",\"includeTimestamps\":false}", + "description": "Generate a single message chat HTML with dark mode styling and no timestamps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "messaging.generateSession", + "description": "Generates a detailed analytics session report for a real-time messaging conversation based on provided message logs and participant metadata. Accepts message timeline data and session parameters, processes chat activity and engagement metrics, and outputs a structured session summary including duration, message counts, participant activity, and sentiment analysis.", + "category": "messaging", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier for the messaging session to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "List of message objects containing timestamp, sender ID, and content to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "Array of participant objects with user ID and metadata such as roles or status.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Flag to include sentiment analysis for messages in the session report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone string to localize timestamps in the session output (e.g., 'UTC', 'America/New_York').", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "minMessageLength", + "type": "number", + "description": "Minimum message character length to consider in the analytics (filters out shorter messages).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Structured analytics report including session duration, total and per-participant message counts, average response time, active periods, and optional sentiment summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze and summarize a real-time messaging session for insights such as engagement levels, interaction patterns, and sentiment trends. It is useful in chat platforms, customer support transcripts, or team collaboration reviews to generate session-level analytics.", + "limitations": "The tool does not provide real-time analytics during active conversations; it processes completed session data only. It does not perform language translation or deep semantic analysis beyond basic sentiment scoring.", + "examples": [ + "Generate a session report from a list of chat messages and participant details.", + "Summarize engagement metrics for a given messaging session with sentiment included.", + "Provide message counts and response times for a team's chat conversation over a defined period." + ] + }, + "tags": [ + "messaging", + "analytics", + "session", + "engagement", + "sentiment", + "real-time chat" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess123\",\"messages\":[{\"timestamp\":\"2024-06-01T10:00:00Z\",\"senderId\":\"user1\",\"content\":\"Hello team!\"},{\"timestamp\":\"2024-06-01T10:01:00Z\",\"senderId\":\"user2\",\"content\":\"Hi! How's the project?\"}],\"participants\":[{\"userId\":\"user1\",\"role\":\"manager\"},{\"userId\":\"user2\",\"role\":\"developer\"}],\"includeSentiment\":true,\"timeZone\":\"UTC\",\"minMessageLength\":1}", + "description": "Analyze a short messaging session between two participants with sentiment included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "messaging.generateXML", + "description": "Generates an XML-formatted message string for real-time messaging systems based on the provided message content, sender info, receiver info, and optional metadata. Accepts structured input data and outputs a well-formed XML string representing the message.", + "category": "messaging", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The main text or payload of the message to include in the XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier of the message sender, such as username or user ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "receiverId", + "type": "string", + "description": "Identifier of the message recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the message was created or sent. If not provided, current time will be used.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional metadata (e.g., message type, priority) to embed within the XML structure.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'xmlMessage' which is the generated XML string representing the messaging data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a structured XML representation of chat or messaging content for integration with legacy messaging systems, XML APIs, or other components requiring XML formatted messages. It transforms plain message details and metadata into a standardized XML format.", + "limitations": "This tool does not perform XML schema validation against external specs nor does it handle encryption or transport protocols. It assumes simple message data and metadata mapping to XML.", + "examples": [ + "Generate XML for a chat message from user123 to user456 containing a text body and a timestamp.", + "Create an XML message including metadata to denote message priority and type for routing.", + "Produce an XML string from minimal fields (content, sender, receiver) using current timestamp if none specified." + ] + }, + "tags": [ + "messaging", + "XML", + "chat", + "message-format", + "real-time", + "integration" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"Hello, how are you?\",\"senderId\":\"user123\",\"receiverId\":\"user456\",\"timestamp\":\"2024-06-01T12:00:00Z\"}", + "description": "Generate a basic chat message XML with explicit timestamp." + }, + { + "inputJson": "{\"messageContent\":\"Urgent update needed\",\"senderId\":\"admin\",\"receiverId\":\"support\",\"metadata\":{\"priority\":\"high\",\"type\":\"notification\"}}", + "description": "Generate message XML including metadata about message priority and type." + }, + { + "inputJson": "{\"messageContent\":\"Meeting at 3 PM\",\"senderId\":\"alice\",\"receiverId\":\"bob\"}", + "description": "Generate XML message using current time as no timestamp provided." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "messaging.createReference", + "description": "Creates a reference link to specific message content within a chat or messaging platform. Accepts identifiers such as chatId and messageId, optionally a userId and timestamp, processes these to generate a shareable, formatted reference string or URL to the target message, enabling easy navigation and citation in real-time conversations.", + "category": "messaging", + "parameters": [ + { + "name": "chatId", + "type": "string", + "description": "Unique identifier of the chat or conversation containing the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageId", + "type": "string", + "description": "Unique identifier of the specific message to reference within the chat.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Optional identifier of the user who sent the message, used to enhance context in the reference.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include the message timestamp in the reference output for context.", + "required": false, + "defaultValue": "false" + }, + { + "name": "format", + "type": "string", + "description": "Format of the reference output, e.g., 'markdown', 'html', or 'plain' text.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted reference string and optionally metadata such as the original message link or timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a clear, sharable reference to a specific message within a chat platform, for example to quote or link back to relevant conversation context in real-time messaging or collaborative chat environments.", + "limitations": "This tool does not retrieve or verify actual message contents; it only formats references given valid identifiers. It assumes the underlying messaging platform supports message linking. It cannot generate references for deleted or inaccessible messages.", + "examples": [ + "Create a markdown reference to a message given a chatId and messageId.", + "Generate a plain text reference including the message timestamp for citation purposes.", + "Produce an HTML formatted link to a specific message in a group chat." + ] + }, + "tags": [ + "messaging", + "reference", + "chat", + "real-time", + "linking", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"chatId\":\"chat12345\",\"messageId\":\"msg67890\",\"includeTimestamp\":true,\"format\":\"markdown\"}", + "description": "Generate a markdown formatted reference to a specific message including its timestamp." + }, + { + "inputJson": "{\"chatId\":\"general\",\"messageId\":\"msg001\",\"userId\":\"user789\",\"format\":\"plain\"}", + "description": "Generate a plain text reference to a message including the sender's user ID for context." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "messaging.generateSchema", + "description": "Generates a JSON schema for real-time messaging payloads based on provided field definitions and message types. Accepts message structure specifications and outputs a JSON schema that validates message content, ensuring correct typing, required properties, and nested object structures for chat integration.", + "category": "messaging", + "parameters": [ + { + "name": "messageType", + "type": "string", + "description": "The type or purpose of the message (e.g., \"chatMessage\", \"userStatusUpdate\").", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "An array of objects defining each field's name, type (string, number, boolean, object, array), whether it's required, and nested schemas if applicable.", + "required": true, + "defaultValue": "" + }, + { + "name": "allowAdditionalProperties", + "type": "boolean", + "description": "Indicates if fields not explicitly defined in the schema are allowed in the message.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "Human-readable description of the message schema's purpose.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the generated JSON schema conforming to JSON Schema standard (draft-07 or later)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create validation schemas for messaging payloads to ensure that real-time chat messages, status updates, or notifications conform to expected formats with proper field types and constraints. It helps automate schema creation based on flexible field specifications, supporting robust message validation and integration.", + "limitations": "This tool generates JSON schemas but does not validate messages against the schema or handle message transmission. Complex custom validation logic (e.g., conditional dependencies) beyond basic type and required fields is not supported by default.", + "examples": [ + "Generate a schema for a chat message with sender, content, and timestamp fields.", + "Create a schema for a user status update containing userId, online status, and last active time.", + "Produce a schema for a notification message with title, body, and optional actions array." + ] + }, + "tags": [ + "messaging", + "schema", + "JSON Schema", + "validation", + "real-time", + "chat", + "API" + ], + "examples": [ + { + "inputJson": "{\"messageType\":\"chatMessage\",\"fields\":[{\"name\":\"senderId\",\"type\":\"string\",\"required\":true},{\"name\":\"content\",\"type\":\"string\",\"required\":true},{\"name\":\"timestamp\",\"type\":\"number\",\"required\":true}],\"allowAdditionalProperties\":false,\"description\":\"Schema for a basic chat message.\"}", + "description": "Schema generation for a basic chat message with mandatory senderId, content, and timestamp fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "messaging.createSession", + "description": "Creates a new real-time messaging session to track user chat activity and interaction analytics. Accepts parameters such as session ID, user ID, start time, and optional metadata. Processes these inputs by initializing the session context for analytics and returns a session object including a unique session token and timestamps for further tracking.", + "category": "messaging", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier for the messaging session to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier of the user initiating or associated with the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp indicating when the session started.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with additional session details or context.", + "required": false, + "defaultValue": "" + }, + { + "name": "expiresInMinutes", + "type": "number", + "description": "Optional duration in minutes after which the session should expire automatically.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the created session's unique session token, start time, user ID, session ID, and expiry information." + }, + "aiAgent": { + "useCase": "Use this tool when initiating a tracking context for user interactions in a messaging platform to enable detailed analytics of chat sessions. It helps establish a session with start time and identifiers to correlate messaging events for analytics, user behavior tracking, or messaging workflow orchestration.", + "limitations": "This tool does not manage the messaging content or messages sent within the session; it only creates the session context and metadata. It does not validate the ongoing session activity or provide analytics metrics by itself.", + "examples": [ + "Create a new chat session for user 'user123' with session ID 'sess789' starting now.", + "Initialize a messaging session with metadata indicating user device type and location.", + "Start a session for a user with a 120-minute expiration to track a long conversation." + ] + }, + "tags": [ + "messaging", + "session", + "analytics", + "real-time", + "chat" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess123\",\"userId\":\"userA\",\"startTime\":\"2024-06-01T12:00:00Z\"}", + "description": "Create a session for userA starting at noon UTC." + }, + { + "inputJson": "{\"sessionId\":\"sess456\",\"userId\":\"userB\",\"metadata\":{\"device\":\"mobile\",\"region\":\"us-east\"}}", + "description": "Create a session for userB with metadata about device and region." + }, + { + "inputJson": "{\"sessionId\":\"sess789\",\"userId\":\"userC\",\"expiresInMinutes\":120}", + "description": "Create a session for userC that expires after 120 minutes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "messaging.createCluster", + "description": "Creates a messaging cluster that provides scalable, redundant real-time messaging infrastructure. Accepts configuration parameters like clusterName, numberOfNodes, replicationFactor, and nodeType. Processes these to initialize and provision messaging nodes, configure redundancy, and produce a cluster endpoint and status report.", + "category": "messaging", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "Unique name identifier for the messaging cluster", + "required": true, + "defaultValue": "" + }, + { + "name": "numberOfNodes", + "type": "number", + "description": "Total number of nodes to deploy in the cluster", + "required": true, + "defaultValue": "3" + }, + { + "name": "replicationFactor", + "type": "number", + "description": "Degree of message replication across nodes for fault tolerance", + "required": true, + "defaultValue": "2" + }, + { + "name": "nodeType", + "type": "string", + "description": "Type/specification of nodes to deploy (e.g., standard, high-memory)", + "required": false, + "defaultValue": "standard" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region to deploy the cluster in", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "enableMonitoring", + "type": "boolean", + "description": "Enable cluster performance and health monitoring", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Details of the created messaging cluster including clusterId, endpoint URL, status, and nodes information." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a scalable real-time messaging infrastructure cluster to support chat applications, push notifications, or event-driven communication services. Ideal for deploying clusters with specified redundancy, capacity, and monitoring.", + "limitations": "This tool does not handle message routing logic, application-level authentication, or post-deployment management such as scaling or updates.", + "examples": [ + "Create a new messaging cluster named 'chatCluster' with 5 nodes and replication factor 3.", + "Provision a cluster called 'eventBus' in the 'eu-west-2' region with monitoring disabled.", + "Initialize a high-memory node messaging cluster 'analyticsCluster' with 4 nodes." + ] + }, + "tags": [ + "messaging", + "cluster", + "infrastructure", + "deployment", + "real-time", + "scalability" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"chatCluster\",\"numberOfNodes\":5,\"replicationFactor\":3,\"nodeType\":\"standard\",\"region\":\"us-east-1\",\"enableMonitoring\":true}", + "description": "Create a cluster named 'chatCluster' with 5 standard nodes and replication factor of 3 in US East region with monitoring enabled." + }, + { + "inputJson": "{\"clusterName\":\"eventBus\",\"numberOfNodes\":3,\"replicationFactor\":2,\"enableMonitoring\":false}", + "description": "Provision a cluster named 'eventBus' with 3 nodes, replication factor 2, monitoring disabled, using default node type and region." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "messaging.createSecret", + "description": "Creates a secure secret token or key for use in real-time messaging environments, accepting parameters such as secret name, expiration time, access scopes, and encryption options. It generates a confidential secret string along with metadata for secure messaging integration.", + "category": "messaging", + "parameters": [ + { + "name": "secretName", + "type": "string", + "description": "A unique name to identify the secret within the messaging environment.", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Time in seconds after which the secret expires and becomes invalid. Zero means no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "scopes", + "type": "array", + "description": "An array of permission strings defining access scopes granted by this secret (e.g., ['read','write']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "encryptSecret", + "type": "boolean", + "description": "Whether to encrypt the secret string before storage and transmission.", + "required": false, + "defaultValue": "true" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable notes or description for the secret.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secret token string, its name, expiration timestamp (if any), scopes, and encryption status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate and manage secure secret tokens for real-time messaging services, such as API keys or access tokens, that control permissions and access within chat or messaging integrations. It's essential for secure authorization and scoped access control.", + "limitations": "This tool does not handle secret revocation post creation or rotation. It also does not store secrets persistently; storage and retrieval must be handled separately. It cannot generate secrets based on external IAM policies directly.", + "examples": [ + "Create a secret named 'chatBotKey' with read and write access and a 24-hour expiration.", + "Generate a non-expiring encrypted secret for a messaging webhook.", + "Create a secret with no scopes that serves as a simple token for restricted messaging endpoints." + ] + }, + "tags": [ + "messaging", + "security", + "token", + "secret", + "API key", + "authorization" + ], + "examples": [ + { + "inputJson": "{\"secretName\":\"chatBotKey\",\"expirationSeconds\":86400,\"scopes\":[\"read\",\"write\"],\"encryptSecret\":true,\"description\":\"Key for chatbot integration.\"}", + "description": "Create a secret named 'chatBotKey' with read/write scopes and 24 hours expiration, encrypted." + }, + { + "inputJson": "{\"secretName\":\"webhookSecret\",\"expirationSeconds\":0,\"scopes\":[],\"encryptSecret\":true,\"description\":\"Permanent secret for webhook authentication.\"}", + "description": "Create a permanent encrypted secret without any scopes, for webhook auth." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "messaging.createChart", + "description": "Generates a visual chart image from structured data within a messaging context. Accepts chart type, data points, labels, and styling options as input, processes this to produce a chart image URL suitable for sharing or embedding in chat messages.", + "category": "messaging", + "parameters": [ + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate, e.g., 'bar', 'line', 'pie'.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "array", + "description": "Array of data points where each point is an object with label and value properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the chart to display at the top.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated chart image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated chart image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "colors", + "type": "array", + "description": "List of color hex codes to use for the chart segments or lines.", + "required": false, + "defaultValue": "" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Whether to display a legend explaining data segments or lines.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a URL string to the generated chart image and metadata such as image dimensions and chart type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create visual representations of data within chat or messaging platforms to enhance communication and understanding. It is useful for generating graphs on-the-fly from user-provided data for reports, summaries, or discussions.", + "limitations": "The tool does not support real-time interactive charts or animations. It only creates static image charts from provided data. Very large datasets may not be supported or may degrade image clarity.", + "examples": [ + "Create a bar chart showing monthly sales figures for the last 6 months.", + "Generate a pie chart depicting user survey results split by category.", + "Produce a line chart to track website traffic over the past week" + ] + }, + "tags": [ + "messaging", + "chart", + "visualization", + "data", + "image", + "real-time", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"chartType\":\"bar\",\"data\":[{\"label\":\"Jan\",\"value\":150},{\"label\":\"Feb\",\"value\":200},{\"label\":\"Mar\",\"value\":170}],\"title\":\"Sales for Q1\",\"width\":600,\"height\":400,\"colors\":[\"#4a90e2\",\"#50e3c2\",\"#e94e77\"],\"showLegend\":true}", + "description": "Generate a bar chart of quarterly sales with specific dimensions and colors." + }, + { + "inputJson": "{\"chartType\":\"pie\",\"data\":[{\"label\":\"Option A\",\"value\":40},{\"label\":\"Option B\",\"value\":30},{\"label\":\"Option C\",\"value\":30}],\"title\":\"Survey Results\",\"showLegend\":false}", + "description": "Create a pie chart showing percentage distribution of survey answers without a legend." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "messaging.createXML", + "description": "Generates a well-formed XML message string for real-time messaging applications. Accepts a root element name and key-value pairs or nested objects representing message content, and processes them into a structured XML format for use in chat systems or messaging protocols.", + "category": "messaging", + "parameters": [ + { + "name": "rootElement", + "type": "string", + "description": "The name of the root XML element encapsulating the message content.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "object", + "description": "An object representing the message body content with keys as element names and values as text or nested objects for child elements.", + "required": true, + "defaultValue": "" + }, + { + "name": "attributes", + "type": "object", + "description": "Optional key-value pairs to be added as attributes to the root XML element.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "Whether to include the XML declaration header (e.g., ) at the start.", + "required": false, + "defaultValue": "true" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Whether to format the output XML string with indentation and line breaks for readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated XML string under the 'xmlString' property, ready to be sent or stored." + }, + "aiAgent": { + "useCase": "Use this tool in scenarios where you need to construct XML messages for chat or messaging integrations, such as creating instant message stanzas, custom command payloads, or structured chat metadata to send over messaging protocols that use XML format. It handles nested content and attributes, producing valid XML.", + "limitations": "This tool does not validate XML schema beyond structure and does not support encoding complex data types like binary attachments. It also assumes UTF-8 encoding and does not perform security sanitization of content.", + "examples": [ + "Create an XML message with a 'message' root containing 'body' and 'sender' elements for chat.", + "Generate an XML stanza with attributes for a real-time messaging protocol.", + "Produce readable, pretty-printed XML for debugging chat messages." + ] + }, + "tags": [ + "messaging", + "XML", + "messageCreation", + "chatIntegration", + "real-time", + "dataSerialization" + ], + "examples": [ + { + "inputJson": "{\"rootElement\":\"message\",\"content\":{\"body\":\"Hello, world!\",\"sender\":\"user123\"},\"attributes\":{\"type\":\"chat\",\"id\":\"msg1\"},\"includeDeclaration\":true,\"prettyPrint\":true}", + "description": "Generate a chat message XML with body and sender inside a 'message' root with attributes type and id." + }, + { + "inputJson": "{\"rootElement\":\"presence\",\"content\":{\"status\":\"online\"},\"attributes\":{\"from\":\"user123\"},\"includeDeclaration\":false,\"prettyPrint\":false}", + "description": "Create a compact presence XML stanza without XML declaration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "messaging.createWorkflow", + "description": "Creates a customizable messaging workflow that automates chat interactions using defined triggers, conditions, and actions. Accepts workflow name, trigger configuration, sequential steps with conditions and actions; returns a JSON representation of the compiled workflow code ready for deployment in chat systems.", + "category": "messaging", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name identifier for the created messaging workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerType", + "type": "string", + "description": "Type of event that triggers the workflow (e.g., messageReceived, userJoined).", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerCriteria", + "type": "object", + "description": "Object defining criteria for trigger activation such as keywords or user attributes.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered array of step objects defining conditions and actions for the workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag indicating if the workflow should be active upon creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns the structured workflow object containing trigger, steps, and metadata for deployment or further editing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically define chat automation workflows with custom triggers and conditional messaging actions. Helpful for agents tasked with managing or generating real-time chat response flows in collaboration platforms or customer support bots.", + "limitations": "Does not execute the workflow; only creates the workflow definition. Complex scripting or external API integrations must be added separately outside this tool.", + "examples": [ + "Create a workflow that triggers when a user sends a greeting and responds with a welcome message.", + "Define a workflow for moderating chat by detecting banned words and sending warnings.", + "Set up a multi-step workflow that collects user input and follows up based on responses." + ] + }, + "tags": [ + "messaging", + "workflow", + "automation", + "chatbot", + "trigger", + "conditional", + "real-time" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"WelcomeFlow\",\"triggerType\":\"messageReceived\",\"triggerCriteria\":{\"keywords\":[\"hello\",\"hi\"]},\"steps\":[{\"condition\":{\"type\":\"always\"},\"action\":{\"type\":\"sendMessage\",\"parameters\":{\"text\":\"Welcome to the chat! How can I help you?\"}}}],\"enabled\":true}", + "description": "Creates a simple workflow triggered by greetings that sends a welcome message." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "messaging.createResume", + "description": "Generates a professional resume document in PDF format based on input personal details, work experience, education, skills, and optional custom sections. The tool formats and compiles these inputs into a clean, structured resume file suitable for sharing via messaging platforms.", + "category": "messaging", + "parameters": [ + { + "name": "fullName", + "type": "string", + "description": "The full name of the resume owner to display prominently.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact information including email, phone, and optionally LinkedIn or website URLs.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "A brief professional summary or objective statement to appear at the start of the resume.", + "required": false, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "An array of work experience items each containing job title, company, dates, and description of responsibilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "An array of educational qualifications each with degree, institution, and graduation year.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "A list of relevant professional skills to highlight in the resume.", + "required": false, + "defaultValue": "" + }, + { + "name": "customSections", + "type": "array", + "description": "Optional custom sections such as certifications, languages, or awards to include with relevant details.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64 encoded PDF string of the generated resume and metadata including page count and format type." + }, + "aiAgent": { + "useCase": "Use this tool when a user needs to quickly generate a polished resume document for job applications or professional sharing via chat or messaging. It simplifies gathering structured personal and professional data into a formatted PDF ready for distribution.", + "limitations": "This tool cannot tailor content recommendations or optimize resumes for specific job descriptions automatically. It also does not support very creative or graphical resume layouts beyond standard clean formats.", + "examples": [ + "Create a resume for a software developer with 5 years experience including education and skills.", + "Generate a resume PDF from given detailed work history and education sections.", + "Add a summary and certifications section to a base resume and receive a formatted PDF." + ] + }, + "tags": [ + "messaging", + "document", + "resume", + "generate", + "pdf", + "professional" + ], + "examples": [ + { + "inputJson": "{\"fullName\":\"Jane Doe\",\"contactInfo\":{\"email\":\"jane.doe@example.com\",\"phone\":\"123-456-7890\",\"linkedin\":\"linkedin.com/in/janedoe\"},\"summary\":\"Experienced software engineer specializing in AI and machine learning.\",\"workExperience\":[{\"jobTitle\":\"Senior Software Engineer\",\"company\":\"TechCorp\",\"dates\":\"2019-2024\",\"description\":\"Led AI projects and developed scalable software solutions.\"}],\"education\":[{\"degree\":\"BSc Computer Science\",\"institution\":\"State University\",\"graduationYear\":2018}],\"skills\":[\"Python\",\"Machine Learning\",\"Data Analysis\"],\"customSections\":[{\"title\":\"Certifications\",\"items\":[\"AWS Certified Solutions Architect\"]}]}", + "description": "Generate a complete resume PDF for Jane Doe including summary, work experience, education, skills, and certifications." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "email-communication.analyzeChannel", + "description": "Analyzes an email communication channel by processing input email metadata and content metrics. It evaluates engagement rates, delivery performance, response times, and content sentiment to produce a comprehensive report on channel effectiveness. Input includes email logs or campaign data; output is a structured analysis report with insights and recommendations.", + "category": "email-communication", + "parameters": [ + { + "name": "emailData", + "type": "array", + "description": "Array of email metadata and content objects representing emails sent/received in the channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object defining start and end timestamps to filter emails by date.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag to enable sentiment analysis on email content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minimumResponseTime", + "type": "number", + "description": "Minimum response time in hours to flag slow replies in the analysis.", + "required": false, + "defaultValue": "24" + }, + { + "name": "engagementMetrics", + "type": "array", + "description": "List of engagement metrics to compute, e.g., ['openRate', 'clickThroughRate', 'bounceRate'].", + "required": false, + "defaultValue": "[\"openRate\",\"clickThroughRate\",\"bounceRate\"]" + } + ], + "returns": { + "type": "object", + "description": "AnalysisReport containing summary statistics of email channel performance, including engagement metrics, response analysis, sentiment scores, and actionable recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to assess the overall effectiveness of an email communication channel, such as after an email marketing campaign or to monitor ongoing email support responsiveness. It helps identify strengths and weaknesses by analyzing delivery, engagement, and content sentiment metrics.", + "limitations": "This tool does not access live mail servers or real-time inboxes; input data must be provided. It cannot parse encrypted or unsupported email formats. Sentiment analysis may not be accurate for highly technical or multilingual content.", + "examples": [ + "Analyze email campaign performance over the last month to identify engagement trends and response delays.", + "Evaluate support team's email channel to improve response times and reduce bounce rates.", + "Perform sentiment analysis on outbound customer emails to detect potential negative feedback early." + ] + }, + "tags": [ + "email", + "analysis", + "engagement", + "performance", + "sentiment", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"emailData\":[{\"id\":\"email1\",\"timestamp\":1685220000,\"status\":\"delivered\",\"opened\":true,\"clicked\":true,\"responseTime\":10,\"content\":\"Thank you for your inquiry.\"},{\"id\":\"email2\",\"timestamp\":1685306400,\"status\":\"bounced\",\"opened\":false,\"clicked\":false,\"responseTime\":0,\"content\":\"\"}],\"timeRange\":{\"start\":1685133600,\"end\":1685392800},\"includeSentimentAnalysis\":true,\"minimumResponseTime\":24,\"engagementMetrics\":[\"openRate\",\"clickThroughRate\",\"bounceRate\"]}", + "description": "Analyze email performance data from a recent campaign within a specified date range, including sentiment analysis and default engagement metrics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "email-communication.analyzeQuote", + "description": "Analyzes the content of a sales or marketing email quote text to extract key business metrics, sentiment, and potential actionability. Accepts raw email quote text and optional parameters controlling analysis depth. Produces structured insights including pricing details, sentiment scores, and recommended next steps.", + "category": "email-communication", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The raw text content of the email quote to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the quote text (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includePricingAnalysis", + "type": "boolean", + "description": "Whether to specifically analyze and extract pricing details from the quote.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the quote content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeNextStepsSuggestion", + "type": "boolean", + "description": "Whether to generate recommendations for follow-up actions based on the quote analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis object containing extracted pricing info, sentiment scores, identified key terms, and suggested next steps." + }, + "aiAgent": { + "useCase": "Use this tool when processing incoming email quotes to quickly understand pricing terms, gauge sender sentiment, and decide on appropriate follow-up actions such as approval, negotiation, or escalation. It helps automate the evaluation of quote emails for faster business responsiveness.", + "limitations": "Cannot verify accuracy or legality of pricing details; does not handle attachments or non-text content; may have reduced accuracy on poorly formatted or very brief quotes.", + "examples": [ + "Analyze this quote to determine pricing and sentiment to decide next steps.", + "Extract the pricing and key conditions from the attached email quote text.", + "Provide a summary and recommendation on how to respond to this sales quotation email." + ] + }, + "tags": [ + "email", + "analysis", + "quote", + "pricing", + "sentiment", + "automation", + "business" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"Dear Client, We are pleased to offer you a 10% discount on our standard package, priced at $1,000, valid until end of the month.\",\"language\":\"en\",\"includePricingAnalysis\":true,\"includeSentimentAnalysis\":true,\"includeNextStepsSuggestion\":true}", + "description": "Analyze a sales quote email offering a discounted price and valid time frame." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "email-communication.analyzeConversion", + "description": "Analyzes email campaign data to determine conversion rates by processing input campaign metrics such as emails sent, opened, clicked, and resulting conversions. Computes detailed statistics including conversion rate percentages, click-through rates, and other key performance indicators, outputting a structured report to optimize marketing effectiveness.", + "category": "email-communication", + "parameters": [ + { + "name": "emailsSent", + "type": "number", + "description": "Total number of emails sent in the campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailsOpened", + "type": "number", + "description": "Number of emails that were opened by recipients.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkClicks", + "type": "number", + "description": "Number of clicks on links inside the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversions", + "type": "number", + "description": "Number of successful conversions attributed to the campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier for the email campaign being analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "timePeriod", + "type": "string", + "description": "Time period over which the campaign data was collected (e.g., '2024-01').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing detailed analytics including conversionRate, clickThroughRate, openRate, and additional metrics to assess the campaign's effectiveness." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the performance of an email marketing campaign by calculating conversion-related statistics based on raw email sending and engagement data. This helps in guiding campaign optimization and reporting.", + "limitations": "This tool does not generate campaign data or perform predictive analytics; it only analyzes provided raw metrics for conversion assessment.", + "examples": [ + "Calculate conversion and engagement rates for campaign ID 'spring_sale_2024' given the raw email performance data.", + "Analyze the conversion efficiency of emails sent last month using provided metrics.", + "Provide a detailed report on click through and conversion rates from recent campaign data." + ] + }, + "tags": [ + "email", + "conversion analysis", + "marketing", + "analytics", + "campaign performance", + "email marketing" + ], + "examples": [ + { + "inputJson": "{\"emailsSent\":10000,\"emailsOpened\":4500,\"linkClicks\":1200,\"conversions\":300,\"campaignId\":\"spring_sale_2024\",\"timePeriod\":\"2024-03\"}", + "description": "Analyze conversion data for March 2024 email campaign labeled 'spring_sale_2024'." + }, + { + "inputJson": "{\"emailsSent\":5000,\"emailsOpened\":2300,\"linkClicks\":800,\"conversions\":150}", + "description": "Basic analysis of a recent email blast with provided engagement metrics without specifying campaign ID." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "email-communication.uploadVideo", + "description": "Uploads a video file to be embedded or linked within an email campaign. Accepts video file data or a URL, processes video metadata and encoding compatibility, and returns a hosted video link or embed code suitable for email clients.", + "category": "email-communication", + "parameters": [ + { + "name": "videoFile", + "type": "string", + "description": "Base64-encoded video file content to upload. Required if videoUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoUrl", + "type": "string", + "description": "Publicly accessible URL of a video to embed instead of uploading a file. Required if videoFile is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Original filename of the video to use for storage and identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "mimeType", + "type": "string", + "description": "MIME type of the video file (e.g., video/mp4). Used for validation and processing.", + "required": true, + "defaultValue": "video/mp4" + }, + { + "name": "emailClientCompatibility", + "type": "array", + "description": "List of email clients to optimize video format/encoding for (e.g., [\"Outlook\", \"Gmail\"]).", + "required": false, + "defaultValue": "[\"Gmail\", \"Apple Mail\", \"Outlook\"]" + }, + { + "name": "thumbnailImage", + "type": "string", + "description": "Base64-encoded image used as a fallback thumbnail for clients that do not support video playback.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoGenerateThumbnail", + "type": "boolean", + "description": "Flag to automatically generate a thumbnail image from the video if no thumbnailImage is provided.", + "required": false, + "defaultValue": "true" + }, + { + "name": "embedCodeFormat", + "type": "string", + "description": "Preferred embed code format for the video (e.g., 'html5', 'gif', 'static image with link').", + "required": false, + "defaultValue": "html5" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the hosted video URL, embed code string adjusted for email clients, and the thumbnail URL if available." + }, + "aiAgent": { + "useCase": "Use this tool when preparing email campaigns that include video content, to upload the video file or reference a URL, and obtain an embed code compatible with the targeted email clients. It ensures the video is properly hosted and that fallback options like thumbnails are available for clients that do not support inline videos.", + "limitations": "This tool does not host very large videos exceeding typical email campaign limits and does not guarantee playback on all email clients due to inherent platform restrictions. It does not handle extensive video editing or analytics.", + "examples": [ + "Embed a promotional product video in an email campaign targeting Gmail and Apple Mail users, uploading the original mp4 video file.", + "Use a public video URL from a CDN and generate embed code optimized for Outlook with an auto-generated thumbnail.", + "Upload a video and specify a custom thumbnail image to be used as a fallback in email clients without video support." + ] + }, + "tags": [ + "video", + "email", + "upload", + "embed", + "media", + "campaign", + "communication" + ], + "examples": [ + { + "inputJson": "{\"videoFile\":\"\",\"fileName\":\"promo-video.mp4\",\"mimeType\":\"video/mp4\",\"emailClientCompatibility\":[\"Gmail\",\"Apple Mail\"],\"autoGenerateThumbnail\":true,\"embedCodeFormat\":\"html5\"}", + "description": "Uploading an mp4 video file with auto-generated thumbnail for Gmail and Apple Mail environments." + }, + { + "inputJson": "{\"videoUrl\":\"https://cdn.example.com/videos/welcome.mp4\",\"fileName\":\"welcome.mp4\",\"mimeType\":\"video/mp4\",\"emailClientCompatibility\":[\"Outlook\"],\"autoGenerateThumbnail\":false,\"embedCodeFormat\":\"gif\"}", + "description": "Linking an external mp4 video URL and generating a GIF fallback embed code for Outlook clients." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "email-communication.analyzeMarkdown", + "description": "This tool accepts email content formatted in Markdown and analyzes it to extract key elements relevant for email communication optimization. It identifies links, images, headings, formatting patterns, and embedded email commands, producing a structured summary highlighting readability, link usage, and potential improvements.", + "category": "email-communication", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "The raw Markdown-formatted email content to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeReadabilityScore", + "type": "boolean", + "description": "Whether to calculate and include a readability score of the Markdown content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "Whether to identify and list all hyperlinks in the Markdown content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractImages", + "type": "boolean", + "description": "Whether to identify and list all images embedded in the Markdown content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "highlightHeadings", + "type": "boolean", + "description": "Whether to detect and summarize headings in the Markdown content to evaluate structure.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing parsed elements such as links, images, headings, readability score, and optimization suggestions for email content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze email drafts written in Markdown to optimize content for clarity, engagement, and proper formatting before sending. It helps in identifying structural elements and potential improvements specific to Markdown-formatted emails.", + "limitations": "Does not modify or rewrite markdown content; does not assess email deliverability or spam scores. It may not detect semantic meaning beyond Markdown syntax analysis.", + "examples": [ + "Analyze my newsletter's Markdown content for readability and links.", + "Extract and list all images and headings in this Markdown email draft.", + "Provide suggestions to improve the structure and link usage in this Markdown email content." + ] + }, + "tags": [ + "email", + "markdown", + "analysis", + "content-optimization", + "email-formatting", + "readability", + "email-tools" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Weekly Update\\n\\nHello team,\\n\\nPlease review the [project plan](https://example.com/plan) attached.\\n\\n![Chart](https://example.com/chart.png)\\n\\nRegards,\\nAdmin\",\"includeReadabilityScore\":true}", + "description": "Analyze a weekly email update written in Markdown with headings, links, and images for readability and content elements." + }, + { + "inputJson": "{\"markdownContent\":\"## Meeting Reminder\\nDon't forget our meeting tomorrow at 10am.\\n\\nQuestions? Contact support@example.com.\",\"extractLinks\":true,\"highlightHeadings\":true}", + "description": "Extract links and headings from a reminder email draft in Markdown." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "email-communication.analyzeYAML", + "description": "Analyzes a YAML-formatted email campaign configuration file to validate structure, extract key elements (like recipients, subject lines, scheduling), and summarize readiness status. Accepts YAML string input, processes its schema and content, and returns detailed analysis including errors, warnings, and extracted metadata for email automation workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML string containing the email campaign configuration to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Flag indicating whether to validate the YAML content against a predefined email campaign schema.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractSummary", + "type": "boolean", + "description": "Whether to extract a summary report from the YAML including recipients, schedule, and email content overview.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis result object containing validity status, error and warning lists, and an optional summary of the campaign details parsed from YAML." + }, + "aiAgent": { + "useCase": "Use this tool when needing to verify and analyze YAML email campaign configuration files before automation execution. It helps validate format, detect missing critical fields, and summarize campaign metadata to ensure correctness and readiness for sending emails.", + "limitations": "Does not execute email sending or connect to email servers. Limited to YAML content validation and analysis; it does not process other formats or handle deeply nested custom schemas beyond general campaign structure.", + "examples": [ + "Analyze the YAML config for an email campaign to check for structural errors and get a summary of recipients and scheduling.", + "Validate a YAML email automation file to ensure all required fields are filled before scheduling dispatch.", + "Extract summary and issue warnings for an email campaign YAML input to prepare for deployment." + ] + }, + "tags": [ + "email", + "YAML", + "analysis", + "automation", + "validation", + "email-campaign" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"recipients:\\n - alice@example.com\\n - bob@example.com\\nsubject: 'Welcome to our Newsletter'\\nschedule: '2024-07-01T10:00:00Z'\\ncontent:\\n text: 'Hello and welcome!'\\n html: '

Hello and welcome!

'\",\"validateSchema\":true,\"extractSummary\":true}", + "description": "Typical email campaign YAML with recipients, subject, schedule, and content, to analyze and summarize." + }, + { + "inputJson": "{\"yamlContent\":\"recipients:\\n - invalid-email\\nsubject: ''\\ncontent:\\n text: 'Missing subject and invalid recipient'\",\"validateSchema\":true}", + "description": "YAML with errors: empty subject and invalid recipient format, for validation error detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "email-communication.downloadTable", + "description": "Downloads email communication data as a structured table format (CSV or JSON). Accepts filter parameters like date range, email campaign ID, or recipient list to extract relevant email logs and metadata, then outputs the data as a downloadable table for reporting or analysis.", + "category": "email-communication", + "parameters": [ + { + "name": "format", + "type": "string", + "description": "The output file format to download the email data table. Supported values are 'csv' and 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "startDate", + "type": "string", + "description": "Filter to include only emails sent on or after this date (ISO 8601 format, e.g. '2023-01-01').", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Filter to include only emails sent on or before this date (ISO 8601 format, e.g. '2023-01-31').", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier for a specific email campaign to filter the emails included in the table.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipientEmails", + "type": "array", + "description": "An optional list of recipient email addresses to include in the filtered table data.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata fields (e.g., delivery status, open rate) in the downloaded table.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of email records to include in the downloaded table. Limits large exports.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the table data as a file download link and metadata about the export (e.g., row count, format)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract and download structured email communication data filtered by criteria such as date range or campaign for offline analysis, reporting, or archival. It enables agents to automate retrieval of relevant email logs in common table formats suitable for spreadsheets or databases.", + "limitations": "This tool does not send emails or modify email data; it only downloads existing email communication records. It may not support all possible filter combinations, and very large data sets might be truncated due to maxResults limits.", + "examples": [ + "Download all emails from campaign ID 'spring_sale_2024' between 2024-03-01 and 2024-03-10 as CSV.", + "Get a JSON table of all emails sent to a list of recipients ['user1@example.com','user2@example.com'], including metadata.", + "Return the last 500 email communication records as a CSV file without filtering." + ] + }, + "tags": [ + "email", + "download", + "table", + "csv", + "json", + "filter", + "reporting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"format\":\"csv\",\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-10\",\"campaignId\":\"spring_sale_2024\",\"includeMetadata\":true}", + "description": "Download all emails from the 'spring_sale_2024' campaign sent between March 1 and March 10, 2024 as CSV including metadata." + }, + { + "inputJson": "{\"format\":\"json\",\"recipientEmails\":[\"user1@example.com\",\"user2@example.com\"],\"includeMetadata\":false}", + "description": "Get a JSON table of all emails sent to 'user1@example.com' and 'user2@example.com' excluding metadata." + }, + { + "inputJson": "{\"format\":\"csv\",\"maxResults\":500}", + "description": "Download the last 500 email communication records as CSV with default filtering and including metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "email-communication.downloadVideo", + "description": "This tool accepts a URL of a video file or a video embedded in a web page used in email campaigns, downloads the video content, and returns it as a binary data or a downloadable file link. It supports various common video formats and helps integrate video media into email automation workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to download. Can be direct file link or a page URL containing the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "saveFormat", + "type": "string", + "description": "The desired format to save the video file, e.g., mp4, webm, avi.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed video file size in megabytes to download, to prevent excessive bandwidth.", + "required": false, + "defaultValue": "50" + }, + { + "name": "userAgent", + "type": "string", + "description": "Optional custom user-agent header string to use when fetching the video URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for the video download request before aborting.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing a downloadable video file path or data buffer, original video metadata, and status info." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically retrieve video files referenced in email marketing content or automation pipelines, for example, to store videos locally or to prepare video attachments or hosting for email campaigns.", + "limitations": "This tool cannot download videos behind authentication walls, DRM-protected videos, or from streaming services requiring special APIs. Video URL must be publicly accessible.", + "examples": [ + "Download a video from a direct mp4 link to attach in a campaign.", + "Retrieve and save a video embedded on a landing page used in an email template.", + "Fetch a webinar recording video file by URL to embed in follow-up emails." + ] + }, + "tags": [ + "email", + "video", + "download", + "media", + "automation", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/media/promo.mp4\",\"saveFormat\":\"mp4\",\"maxFileSizeMB\":30}", + "description": "Download a promotional mp4 video file up to 30 MB from a direct link." + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/landing-page\",\"saveFormat\":\"mp4\"}", + "description": "Fetch a video embedded in a landing page URL, save as mp4." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "email-communication.uploadTable", + "description": "Uploads a structured table of email recipient data (such as names, email addresses, and custom fields) to be used for personalized email campaigns or automation sequences. Accepts CSV or JSON formatted data, validates entries, and outputs an upload summary including success and error counts.", + "category": "email-communication", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "The raw table data as a CSV or JSON string containing recipient details.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the input data: 'csv' or 'json'. Defaults to 'csv'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "fieldMapping", + "type": "object", + "description": "Optional mapping from table column names to required email fields (e.g., 'email', 'firstName').", + "required": false, + "defaultValue": "" + }, + { + "name": "validateEmails", + "type": "boolean", + "description": "Whether to perform email address validation and flag invalid addresses.", + "required": false, + "defaultValue": "true" + }, + { + "name": "deduplicate", + "type": "boolean", + "description": "Whether to remove duplicate email addresses during upload.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the total number of records processed, number of successfully uploaded entries, a list of errors with row references, and summary messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ingest bulk recipient data for email campaigns or automation workflows, especially when personalization or validation is required before sending. It assists in preparing and verifying recipient tables before email blasts.", + "limitations": "This tool does not send emails or manage campaigns directly; it only uploads and validates table data for email recipients. It cannot fix data errors automatically beyond deduplication and basic validation.", + "examples": [ + "Upload a CSV list of customers with their first names and emails to prepare for a personalized newsletter.", + "Validate and upload a JSON array of user contact details ensuring no duplicates.", + "Convert a CSV contact list with custom column names mapped to required fields, then upload and report errors." + ] + }, + "tags": [ + "email", + "upload", + "table", + "data-import", + "validation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"email,firstName,lastName\\njohn.doe@example.com,John,Doe\\njane.smith@example.com,Jane,Smith\",\"format\":\"csv\",\"validateEmails\":true,\"deduplicate\":true}", + "description": "Uploading a simple CSV table with email and names for validation and deduplication." + }, + { + "inputJson": "{\"tableData\":\"[{\\\"emailAddress\\\":\\\"alex@example.net\\\",\\\"name\\\":\\\"Alex Brown\\\"},{\\\"emailAddress\\\":\\\"lisa@example.net\\\",\\\"name\\\":\\\"Lisa White\\\"}]\",\"format\":\"json\",\"fieldMapping\":{\"email\":\"emailAddress\",\"fullName\":\"name\"},\"validateEmails\":true,\"deduplicate\":false}", + "description": "Uploading JSON recipient data with custom field mapping." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "email-communication.renderParagraph", + "description": "Generates a formatted HTML email paragraph based on plain text input and formatting options. It processes the text with optional styling such as bold, italic, alignment, and font size, and outputs an HTML string suitable for embedding within email templates.", + "category": "email-communication", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The plain text content to render as an email paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "bold", + "type": "boolean", + "description": "If true, renders the paragraph text in bold font.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "If true, renders the paragraph text in italic font.", + "required": false, + "defaultValue": "false" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment within the paragraph. Allowed values: 'left', 'center', 'right', 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels to apply to the paragraph text.", + "required": false, + "defaultValue": "14" + }, + { + "name": "textColor", + "type": "string", + "description": "Hex code or CSS color name for the paragraph text color.", + "required": false, + "defaultValue": "#000000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the renderedParagraph: a string with the formatted HTML for the email paragraph." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate well-formatted email paragraph content that can be embedded directly into HTML email templates. It simplifies converting plain text into styled HTML paragraphs with common formatting attributes, enabling automated or dynamic email content creation.", + "limitations": "This tool only renders single paragraphs with basic inline styling. It does not support nested HTML elements, complex layouts, or multimedia content. It is not a full email template generator.", + "examples": [ + "Generate a bold and centered paragraph introducing a product feature.", + "Render a paragraph in italic with red text color to highlight a warning message.", + "Create a standard black left-aligned paragraph with a larger font size for readability." + ] + }, + "tags": [ + "email", + "rendering", + "HTML", + "email-template", + "text-formatting", + "email-automation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to our newsletter!\",\"bold\":true,\"italic\":false,\"alignment\":\"center\",\"fontSize\":16,\"textColor\":\"#333333\"}", + "description": "Render a bold, center aligned paragraph with medium font size and dark gray color." + }, + { + "inputJson": "{\"text\":\"Please read the instructions carefully.\",\"bold\":false,\"italic\":true,\"alignment\":\"left\",\"fontSize\":14,\"textColor\":\"red\"}", + "description": "Render an italic, left aligned paragraph with red text color to emphasize instructions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "email-communication.formatArticle", + "description": "This tool accepts a plain text or HTML article intended for email distribution and formats it according to email best practices. It processes input by applying responsive styling, inline CSS for compatibility, inserting appropriate subject lines and preheaders, and structuring content for readability in email clients. The output is an HTML-formatted email article ready for sending.", + "category": "email-communication", + "parameters": [ + { + "name": "articleContent", + "type": "string", + "description": "The raw article content to be formatted as an email, can be plain text or HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "subjectLine", + "type": "string", + "description": "The subject line text for the email; if omitted, a default generic subject will be used.", + "required": false, + "defaultValue": "\"Your Latest Article Inside\"" + }, + { + "name": "preheaderText", + "type": "string", + "description": "The preview text shown in email clients that support preheaders; enhances email open rates.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeFooter", + "type": "boolean", + "description": "Determines if a standard email footer with unsubscribe links and contact info should be appended.", + "required": false, + "defaultValue": "true" + }, + { + "name": "inlineCssStyles", + "type": "string", + "description": "Optional CSS styles to inline into the HTML for consistent presentation across email clients.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "responsiveDesign", + "type": "boolean", + "description": "Enable wrapping content with responsive design elements for optimal viewing on mobile devices.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the fully formatted HTML email content along with metadata such as the subject and optional preview text." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw article content into professional, email-friendly HTML that respects client compatibility and enhances readability and engagement.", + "limitations": "Does not provide advanced content editing or grammar correction. This tool focuses only on formatting and email-specific presentation; it cannot generate article content or handle complex dynamic content blocks.", + "examples": [ + "Format a newsletter article for email including responsive design and footer.", + "Prepare a promotional article with a custom subject line and preheader text.", + "Generate an HTML email version of a blog post with inline CSS" + ] + }, + "tags": [ + "email", + "formatting", + "article", + "HTML", + "email-client", + "responsive", + "newsletter", + "automation" + ], + "examples": [ + { + "inputJson": "{\"articleContent\":\"Welcome to our monthly newsletter! This edition covers important updates and tips.\",\"subjectLine\":\"Monthly Newsletter - April Edition\",\"preheaderText\":\"Discover the latest news and insights inside.\",\"includeFooter\":true,\"inlineCssStyles\":\"body { font-family: Arial, sans-serif; } h1 { color: #0044cc; }\",\"responsiveDesign\":true}", + "description": "Formats a plain text newsletter article with provided subject, preheader, footer inclusion, custom CSS, and responsive layout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "email-communication.formatQuery", + "description": "Formats raw query strings intended for email filtering, segmentation, or automation triggers into a standardized, normalized format suitable for processing by email systems or APIs. Accepts input query strings with varying syntax and outputs a clean, consistent query string.", + "category": "email-communication", + "parameters": [ + { + "name": "queryString", + "type": "string", + "description": "The raw query string to be formatted for email communication purposes, such as filtering or automation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "normalizeCase", + "type": "boolean", + "description": "Determines if the output query string keys and operators should be converted to a consistent case (lowercase).", + "required": false, + "defaultValue": "true" + }, + { + "name": "expandOperators", + "type": "boolean", + "description": "Whether to expand shorthand operators into full descriptive forms (e.g., 'from:' into 'from equals').", + "required": false, + "defaultValue": "false" + }, + { + "name": "removeRedundancies", + "type": "boolean", + "description": "If true, removes duplicate or redundant conditions in the query string.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted query string and optionally metadata about formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize and clean email query strings before applying them to filters or automation rules in email platforms. It ensures queries are consistently formatted for downstream processing or integration with APIs.", + "limitations": "This tool does not validate query logic correctness or guarantee compatibility with every email platform's proprietary query syntax. It solely formats and normalizes input strings.", + "examples": [ + "Format a query string for creating an email filter to identify emails from a specific sender ignoring case differences.", + "Normalize and remove redundancies in a complex automation query string.", + "Expand shorthand operators in the query to a more explicit standardized format." + ] + }, + "tags": [ + "email", + "query", + "formatting", + "automation", + "filtering", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"queryString\":\"FROM:John@example.com OR from:john@example.com\",\"normalizeCase\":true,\"expandOperators\":false,\"removeRedundancies\":true}", + "description": "Normalize case and remove duplicate FROM conditions from input query string." + }, + { + "inputJson": "{\"queryString\":\"subject:\"urgent\" AND from:boss@example.com\",\"normalizeCase\":true,\"expandOperators\":true,\"removeRedundancies\":false}", + "description": "Expand shorthand operators like 'from:' and normalize the query string case." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "email-communication.buildQueue", + "description": "Constructs an email sending queue infrastructure based on specified parameters such as queue name, concurrency limits, retry policies, and priority rules. Accepts configuration inputs and outputs a queue object configuration that can be used by email dispatch systems to manage and optimize bulk or transactional email delivery efficiently.", + "category": "email-communication", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifier for the email queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxConcurrentSends", + "type": "number", + "description": "Maximum number of emails that can be processed concurrently from the queue.", + "required": true, + "defaultValue": "5" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration object defining retry behavior including maximum retries and delay between attempts in seconds.", + "required": false, + "defaultValue": "{\"maxRetries\":3,\"retryDelaySeconds\":30}" + }, + { + "name": "priorityLevels", + "type": "array", + "description": "An array of priority level names defining the order in which emails are processed (e.g. ['high', 'normal', 'low']).", + "required": false, + "defaultValue": "[\"high\",\"normal\",\"low\"]" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Time in seconds after which emails expire and are removed from the queue if not sent.", + "required": false, + "defaultValue": "86400" + }, + { + "name": "enableDeadLetterQueue", + "type": "boolean", + "description": "Flag to enable a dead letter queue for emails that fail all retries.", + "required": false, + "defaultValue": "true" + }, + { + "name": "loggingEnabled", + "type": "boolean", + "description": "Enable or disable verbose logging of queue processing events.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object representing the configured email queue, including queueName, parameters summary, and status indicating readiness for integration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to set up or modify an email sending queue infrastructure adaptable to your application needs. Ideal for scenarios where bulk email sends require concurrency control, retry policies, and priority handling to maximize deliverability and system efficiency.", + "limitations": "This tool does not implement the actual sending of emails or integration with SMTP/third-party services. It only builds the queue configuration structure and logic settings.", + "examples": [ + "Create an email sending queue named 'marketingEmails' with 10 max concurrent sends and enable dead letter queue.", + "Build a transactional email queue with priorities and custom retry policies.", + "Set up a queue that expires emails not sent within 12 hours and has logging enabled." + ] + }, + "tags": [ + "email", + "queue", + "infrastructure", + "automation", + "retry", + "priority", + "bulk-send" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"marketingEmails\",\"maxConcurrentSends\":10,\"retryPolicy\":{\"maxRetries\":5,\"retryDelaySeconds\":60},\"enableDeadLetterQueue\":true}", + "description": "Create a 'marketingEmails' queue with higher concurrency and customized retry parameters." + }, + { + "inputJson": "{\"queueName\":\"transactionalQueue\",\"maxConcurrentSends\":3,\"priorityLevels\":[\"urgent\",\"normal\"],\"expirationSeconds\":43200}", + "description": "Build a transactional email queue with two priority levels and 12-hour expiration." + }, + { + "inputJson": "{\"queueName\":\"promoQueue\",\"maxConcurrentSends\":5,\"loggingEnabled\":true}", + "description": "Set up a promotional email queue with default retry policy and verbose logging enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "email-communication.composeComment", + "description": "Composes a professional comment intended for email communication threads. The tool accepts input parameters such as recipient names, context or topic of the comment, tone (formal, casual), and specific points to address. It processes these inputs to generate a relevant, polite, and clear comment text suitable for replying to or adding in email discussions, outputting the composed comment as a string.", + "category": "email-communication", + "parameters": [ + { + "name": "recipientNames", + "type": "array", + "description": "List of recipient names to customize the comment addressing.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "context", + "type": "string", + "description": "The background or subject matter on which the comment is based.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the comment, e.g., formal or casual.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "pointsToAddress", + "type": "array", + "description": "Key points or questions that the comment should cover.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSalutation", + "type": "boolean", + "description": "Whether to include a salutation at the beginning of the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeClosing", + "type": "boolean", + "description": "Whether to include a closing phrase at the end of the comment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed comment text as string in the 'comment' field." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a coherent and context-aware comment for email threads, helping users to respond professionally or casually based on the conversation context and recipient. Ideal for automating email replies, summarizing points or adding thoughtful remarks in ongoing email communications.", + "limitations": "This tool cannot send emails or manage email threads; it only composes comment text. It may not fully capture highly specialized domain-specific language without proper context.", + "examples": [ + "Compose a formal comment addressing project updates to John and Alice, covering deadlines and resource allocation.", + "Generate a casual comment acknowledging receipt of a proposal and asking for clarifications.", + "Create a comment with a polite closing that summarizes the main discussion points on the product launch." + ] + }, + "tags": [ + "email", + "communication", + "compose", + "comment", + "automation", + "reply", + "professional" + ], + "examples": [ + { + "inputJson": "{\"recipientNames\":[\"John\",\"Alice\"],\"context\":\"Project update including deadlines and resource allocation\",\"tone\":\"formal\",\"pointsToAddress\":[\"status of tasks\",\"upcoming deadlines\",\"resource requirements\"],\"includeSalutation\":true,\"includeClosing\":true}", + "description": "Compose a formal comment addressing project updates to John and Alice, covering deadlines and resource allocation." + }, + { + "inputJson": "{\"recipientNames\":[\"Bob\"],\"context\":\"Received proposal for new marketing strategy\",\"tone\":\"casual\",\"pointsToAddress\":[\"acknowledge receipt\",\"ask for clarification on budget\"],\"includeSalutation\":false,\"includeClosing\":true}", + "description": "Generate a casual comment acknowledging receipt of a proposal and asking for clarifications." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "email-communication.buildCluster", + "description": "Builds and configures an email sending cluster by provisioning multiple email server instances, setting load balancing rules, and integrating failover and scaling policies. Accepts configuration parameters including number of servers, SMTP settings, and balancing strategy, then outputs cluster status and connection endpoints.", + "category": "email-communication", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The unique name identifier for the email cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "serverCount", + "type": "number", + "description": "Number of email server instances to provision in the cluster.", + "required": true, + "defaultValue": "3" + }, + { + "name": "smtpSettings", + "type": "object", + "description": "Configuration object specifying SMTP parameters such as host, port, username, password, and security protocols.", + "required": true, + "defaultValue": "" + }, + { + "name": "loadBalancingStrategy", + "type": "string", + "description": "The algorithm to distribute email traffic across servers (e.g., round-robin, least-connections).", + "required": false, + "defaultValue": "round-robin" + }, + { + "name": "autoScalingEnabled", + "type": "boolean", + "description": "Flag to enable or disable automatic scaling of cluster based on load.", + "required": false, + "defaultValue": "false" + }, + { + "name": "failoverEnabled", + "type": "boolean", + "description": "Flag to enable failover mechanisms to maintain service continuity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the cluster servers will be deployed.", + "required": false, + "defaultValue": "us-east-1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cluster status, list of server endpoints, configuration summary, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to set up a robust, scalable email sending infrastructure for bulk or transactional email delivery. It supports managing server count, SMTP details, balancing, failover, and auto-scaling to ensure high availability and performance.", + "limitations": "Does not configure email content, templates, or campaign automation. Does not manage DNS or domain authentication records like SPF or DKIM. Cluster provisioning time depends on provider and network conditions.", + "examples": [ + "Set up a 5-server email cluster in eu-west-1 with failover and auto-scaling enabled.", + "Build a 3-node email cluster using SMTP settings for gmail with round-robin load balancing.", + "Create an email cluster named 'marketingCluster' with failover disabled and in us-east-1 region." + ] + }, + "tags": [ + "email", + "infrastructure", + "cluster", + "load-balancing", + "smtp", + "scaling" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"marketingCluster\",\"serverCount\":5,\"smtpSettings\":{\"host\":\"smtp.gmail.com\",\"port\":587,\"username\":\"user@example.com\",\"password\":\"securepass\",\"security\":\"STARTTLS\"},\"loadBalancingStrategy\":\"round-robin\",\"autoScalingEnabled\":true,\"failoverEnabled\":true,\"region\":\"eu-west-1\"}", + "description": "Creating a 5-node email cluster named marketingCluster with failover and auto-scaling enabled in the EU West 1 region." + }, + { + "inputJson": "{\"clusterName\":\"transactionalCluster\",\"serverCount\":3,\"smtpSettings\":{\"host\":\"smtp.mailserver.com\",\"port\":465,\"username\":\"notify@mailserver.com\",\"password\":\"notifypass\",\"security\":\"SSL\"},\"loadBalancingStrategy\":\"least-connections\",\"autoScalingEnabled\":false,\"failoverEnabled\":true,\"region\":\"us-east-1\"}", + "description": "Provisioning a 3-server transactional email cluster with SSL SMTP, least-connections balancing, and failover enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "email-communication.buildPackage", + "description": "Builds a reusable email automation package based on input parameters like campaign details, recipient lists, templated content, and scheduling options. Accepts configuration as structured input, processes to generate ready-to-deploy code artifacts and configuration files for email platforms or API clients. Outputs a packaged archive with all required scripts and assets for easy deployment.", + "category": "email-communication", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "The name of the email automation package to create, used for file and metadata naming.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailTemplate", + "type": "string", + "description": "The base HTML or text template for the email content, supporting placeholders for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "An array of recipient objects including email addresses and optional metadata for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "schedule", + "type": "object", + "description": "Scheduling options for sending emails, including start time, frequency, and timezone.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderInfo", + "type": "object", + "description": "Information about the email sender including name and email address.", + "required": true, + "defaultValue": "" + }, + { + "name": "trackingOptions", + "type": "object", + "description": "Options to enable link click and open rate tracking within the emails.", + "required": false, + "defaultValue": "" + }, + { + "name": "deliveryProvider", + "type": "string", + "description": "Identifier for the email delivery service provider to generate compatible code (e.g., SendGrid, AWS SES).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeUnsubscribeLink", + "type": "boolean", + "description": "Whether to automatically add an unsubscribe link in the email footers.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing package metadata and a base64 encoded string of a zipped package archive containing the generated email automation scripts, templates, and configuration files." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a deployable, automated email campaign package from provided content, recipients, and scheduling info. It helps streamline setting up email communications with consistent templating and tracking, compatible with popular delivery services.", + "limitations": "Does not handle actual email delivery; only generates code and configurations. Requires valid input data and knowledge of the target email delivery service capabilities.", + "examples": [ + "Create an email package for a product launch campaign to be sent next week to a provided subscriber list.", + "Build a monthly newsletter package using provided HTML template and recipient metadata with unsubscribe links enabled.", + "Generate an automated follow-up email sequence package with tracking enabled for SendGrid delivery." + ] + }, + "tags": [ + "email", + "automation", + "packaging", + "campaign", + "templating", + "delivery", + "scheduling", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"productLaunch2024\",\"emailTemplate\":\"

Welcome to Our Launch

Dear {{name}}, check out our new product!

\",\"recipientList\":[{\"email\":\"user1@example.com\",\"name\":\"User One\"},{\"email\":\"user2@example.com\",\"name\":\"User Two\"}],\"schedule\":{\"startTime\":\"2024-07-01T09:00:00Z\",\"frequency\":\"once\",\"timezone\":\"UTC\"},\"senderInfo\":{\"name\":\"Company Inc.\",\"email\":\"no-reply@company.com\"},\"trackingOptions\":{\"enableOpenTracking\":true,\"enableClickTracking\":true},\"deliveryProvider\":\"SendGrid\",\"includeUnsubscribeLink\":true}", + "description": "Build a campaign package for a one-time launch email to a specific user list using SendGrid." + }, + { + "inputJson": "{\"packageName\":\"monthlyNewsletter\",\"emailTemplate\":\"

Monthly Newsletter

Hello {{name}}, here are the updates!

\",\"recipientList\":[{\"email\":\"sub1@example.org\"},{\"email\":\"sub2@example.org\"}],\"senderInfo\":{\"name\":\"Newsletter Team\",\"email\":\"newsletter@company.com\"},\"deliveryProvider\":\"AWSSES\",\"includeUnsubscribeLink\":true}", + "description": "Generate a reusable monthly newsletter package with unsubscribe links, compatible with AWS SES delivery." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "email-communication.composeArticle", + "description": "Generates a well-structured email article based on provided topic, audience, and key points. Accepts inputs including subject line, thematic keywords, intended audience, and style preferences. Produces a formatted email article draft suitable for direct inclusion in email campaigns or newsletters.", + "category": "email-communication", + "parameters": [ + { + "name": "subjectLine", + "type": "string", + "description": "The subject line for the email article to capture reader attention.", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "Description of the intended audience for tailoring tone and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "A list of key points or highlights to be included in the article body.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the article such as formal, casual, professional, or friendly.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate target word count for the article body.", + "required": false, + "defaultValue": "500" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action phrase or sentence to include at article end.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email article text and metadata including subject and estimated reading time." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate professional email articles for newsletters, marketing campaigns or internal communications based on specific topics and audience profiles. It helps streamline content creation by formulating structured and engaging articles aligned with defined objectives.", + "limitations": "This tool generates draft content and does not handle email sending, personalization beyond provided audience descriptions, or compliance checking for regulated industries.", + "examples": [ + "Compose an article about upcoming product launches targeting tech enthusiasts with a casual tone.", + "Create a formal email article summarizing quarterly results for corporate stakeholders focusing on key financial highlights.", + "Generate a friendly newsletter article about community events with a call to action to register for the next event." + ] + }, + "tags": [ + "email", + "compose", + "article", + "newsletter", + "marketing", + "content creation", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"subjectLine\":\"Exciting Product Launches Ahead!\",\"audience\":\"Tech enthusiasts and early adopters\",\"keyPoints\":[\"New features unveiled\",\"Release dates announced\",\"Exclusive pre-order discounts\"],\"tone\":\"casual\",\"wordCount\":450,\"callToAction\":\"Pre-order now to enjoy exclusive benefits!\"}", + "description": "Compose a casual email article about new product launches aimed at tech-savvy subscribers." + }, + { + "inputJson": "{\"subjectLine\":\"Q2 Financial Results Overview\",\"audience\":\"Corporate stakeholders and investors\",\"keyPoints\":[\"Revenue growth\",\"Cost optimization\",\"Future outlook\"],\"tone\":\"formal\",\"wordCount\":550,\"callToAction\":\"Review the detailed report on our investor portal.\"}", + "description": "Generate a formal email article summarizing quarterly financial performance for stakeholders." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "email-communication.generateGraph", + "description": "Generates visual graphs and charts summarizing email campaign performance using specified metrics (e.g., open rates, click-through rates) over a given time range. Accepts raw email analytics data and outputs image URLs or base64-encoded graph images suitable for reports and dashboards.", + "category": "email-communication", + "parameters": [ + { + "name": "analyticsData", + "type": "array", + "description": "An array of email campaign metric objects containing timestamps and metric values to be graphed.", + "required": true, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "The specific email metric to visualize (e.g., 'openRate', 'clickThroughRate').", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, such as 'line', 'bar', or 'pie'.", + "required": false, + "defaultValue": "line" + }, + { + "name": "timeRange", + "type": "object", + "description": "An object specifying start and end dates for the data to be included in the graph (format yyyy-mm-dd).", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme to apply to the graph for customization.", + "required": false, + "defaultValue": "default" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output graph image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output graph image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated graph output, e.g., 'png', 'jpeg', or 'base64'.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL or base64 string of the generated graph image along with metadata such as graph type and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visually represent email campaign analytics data to quickly convey trends and performance metrics to stakeholders. It automates graph creation from raw campaign data, supporting various graph types and focusing on key email KPIs like open rates and click-through rates.", + "limitations": "Cannot generate graphs for email content analysis or sentiment. Requires pre-aggregated analytics data as input; does not perform data collection or complex statistical modeling.", + "examples": [ + "Generate a line graph showing daily open rates for the past month.", + "Create a bar chart of click-through rates by campaign for the last quarter.", + "Produce a pie chart depicting device type distribution from email analytics." + ] + }, + "tags": [ + "email", + "analytics", + "graph", + "visualization", + "campaign", + "report", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"analyticsData\":[{\"date\":\"2024-05-01\",\"openRate\":0.25},{\"date\":\"2024-05-02\",\"openRate\":0.30}],\"metric\":\"openRate\",\"graphType\":\"line\",\"timeRange\":{\"start\":\"2024-05-01\",\"end\":\"2024-05-07\"},\"colorScheme\":\"blue\",\"width\":800,\"height\":600,\"outputFormat\":\"png\"}", + "description": "Generate a blue line graph of daily open rates from May 1 to May 7, 2024." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "email-communication.generateAnomaly", + "description": "Analyzes email communication metrics over time to detect anomalies such as sudden spikes or drops in email volume, delivery failures, or unusual engagement rates. Accepts historical email analytics data and configuration parameters to identify and report unexpected trends or irregular behaviors in email campaigns.", + "category": "email-communication", + "parameters": [ + { + "name": "emailMetricsData", + "type": "array", + "description": "Array of objects representing historical email metrics, each with timestamp and metric values like sent, delivered, opened, and failed counts.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricToAnalyze", + "type": "string", + "description": "The specific metric to analyze for anomalies (e.g., 'delivered', 'opened', 'failed').", + "required": true, + "defaultValue": "" + }, + { + "name": "threshold", + "type": "number", + "description": "The sensitivity threshold for anomaly detection, represented as a z-score or percentage deviation to flag an anomaly.", + "required": false, + "defaultValue": "3" + }, + { + "name": "timeWindow", + "type": "string", + "description": "The time window over which to analyze metrics (e.g., 'daily', 'weekly').", + "required": false, + "defaultValue": "daily" + }, + { + "name": "minDataPoints", + "type": "number", + "description": "Minimum number of data points required to perform anomaly detection.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed anomaly information such as timestamps and deviation magnitude in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing detected anomalies, including anomaly timestamps, metric values at anomaly points, and deviation scores." + }, + "aiAgent": { + "useCase": "When monitoring email campaigns or transactional email streams, this tool helps identify unusual patterns that could indicate technical issues, spam complaints, deliverability problems, or sudden changes in user engagement that require immediate attention. The agent can use it to alert teams or trigger automated responses.", + "limitations": "The tool requires sufficient historical data for accurate detection and may not capture context-specific causes of anomalies. It cannot remediate issues, only detect anomalies based on statistical thresholds.", + "examples": [ + "Detect anomalies in daily email delivery counts for the last month.", + "Identify sudden drops in open rates on weekly aggregated email campaign data.", + "Report any unusual spikes in email failure rates with detailed timestamps." + ] + }, + "tags": [ + "email", + "anomaly-detection", + "analytics", + "monitoring", + "automation" + ], + "examples": [ + { + "inputJson": "{\"emailMetricsData\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"sent\":1000,\"delivered\":980,\"opened\":200,\"failed\":20},{\"timestamp\":\"2024-04-02T00:00:00Z\",\"sent\":1100,\"delivered\":1080,\"opened\":300,\"failed\":20},{\"timestamp\":\"2024-04-03T00:00:00Z\",\"sent\":1500,\"delivered\":1450,\"opened\":400,\"failed\":50},{\"timestamp\":\"2024-04-04T00:00:00Z\",\"sent\":1600,\"delivered\":200,\"opened\":380,\"failed\":1400}],\"metricToAnalyze\":\"delivered\",\"threshold\":2.5,\"timeWindow\":\"daily\",\"includeDetails\":true}", + "description": "Detect anomalies in daily 'delivered' metric with threshold 2.5 over a four-day period." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "email-communication.generateQuote", + "description": "Generates a professional quote text suitable for inclusion in sales or service emails based on provided client details, service or product information, pricing, and validity period. Takes structured input and formats a clear, persuasive quote message text as output.", + "category": "email-communication", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "The full name or company name of the client the quote is addressed to.", + "required": true, + "defaultValue": "" + }, + { + "name": "productOrService", + "type": "string", + "description": "Description of the product or service being quoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "price", + "type": "number", + "description": "The total price or cost quoted to the client for the product or service.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) for the price, to clarify monetary units.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "validityPeriodDays", + "type": "number", + "description": "Number of days the quote is valid from the date issued.", + "required": false, + "defaultValue": "30" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Optional additional information or terms to include in the quote message.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text formatted for email communication with the client." + }, + "aiAgent": { + "useCase": "Use this tool when composing sales or service emails that require a clear, professional quote message based on structured input data such as client name, product/service details, price, and quote validity. Ideal for automated email generation workflows in CRM or business communication systems.", + "limitations": "This tool generates only the text content for the quote; it does not send emails, format complex pricing tables, or handle legal contract generation.", + "examples": [ + "Generate a sales quote email text for a client named 'Acme Corp' for a website design service costing 2500 USD valid for 15 days.", + "Create a service quote message for 'John Doe' for consulting services priced at 1500 EUR with no additional notes." + ] + }, + "tags": [ + "email", + "quote", + "sales", + "automation", + "communication", + "business" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"productOrService\":\"Website design and development\",\"price\":2500,\"currency\":\"USD\",\"validityPeriodDays\":15,\"additionalNotes\":\"Includes 3 months free support.\"}", + "description": "Generate a sales quote email text for Acme Corp for website design at $2500 with 15 days validity and extra notes." + }, + { + "inputJson": "{\"clientName\":\"John Doe\",\"productOrService\":\"Consulting services\",\"price\":1500,\"currency\":\"EUR\",\"validityPeriodDays\":30,\"additionalNotes\":\"\"}", + "description": "Generate a consulting service quote email for John Doe priced at 1500 EUR valid for 30 days." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "email-communication.generateConversion", + "description": "Generates conversion analytics for email campaigns based on provided email interaction data and conversion tracking configurations. Accepts raw email engagement data and conversion event definitions, processes to calculate conversion rates and related metrics, and outputs a structured report summarizing conversions achieved through the email campaign.", + "category": "email-communication", + "parameters": [ + { + "name": "emailInteractionData", + "type": "array", + "description": "An array of objects representing user interactions with emails, including opens, clicks, and timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEvents", + "type": "array", + "description": "List of conversion event definitions that map user actions or events to conversion goals, including event names and criteria.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier for the email campaign to associate conversions with.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted date string marking the start of the period over which to calculate conversions.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted date string marking the end of the period over which to calculate conversions.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeUnsubscribes", + "type": "boolean", + "description": "Whether to include users who unsubscribed in the conversion analytics (default false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A report object containing total conversions, conversion rate, detailed breakdown by event type, and timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze the effectiveness of an email campaign by calculating conversion metrics from raw email interaction data combined with predefined conversion events. It helps measure how many recipients completed desired actions attributable to the campaign.", + "limitations": "This tool does not track real-time user behavior or collect raw data; it requires pre-provided interaction data and event definitions. It cannot attribute conversions outside the provided data scope or validate data accuracy.", + "examples": [ + "Generate conversion report for campaign 'spring_sale_2024' based on click and purchase events between 2024-03-01 and 2024-03-31.", + "Calculate conversion rates including unsubscribes for campaign 'newsletter_march'." + ] + }, + "tags": [ + "email", + "conversion", + "analytics", + "campaign", + "reporting", + "email-metrics" + ], + "examples": [ + { + "inputJson": "{\"emailInteractionData\":[{\"userId\":\"u1\",\"action\":\"click\",\"timestamp\":\"2024-03-10T10:00:00Z\"},{\"userId\":\"u2\",\"action\":\"open\",\"timestamp\":\"2024-03-11T11:00:00Z\"},{\"userId\":\"u1\",\"action\":\"purchase\",\"timestamp\":\"2024-03-12T12:00:00Z\"}],\"conversionEvents\":[{\"eventName\":\"purchase\",\"criteria\":{\"action\":\"purchase\"}}],\"campaignId\":\"spring_sale_2024\",\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"includeUnsubscribes\":false}", + "description": "Calculate purchase conversions for the 'spring_sale_2024' email campaign during March 2024." + }, + { + "inputJson": "{\"emailInteractionData\":[{\"userId\":\"user123\",\"action\":\"unsubscribe\",\"timestamp\":\"2024-04-05T15:00:00Z\"},{\"userId\":\"user124\",\"action\":\"click\",\"timestamp\":\"2024-04-06T15:30:00Z\"}],\"conversionEvents\":[{\"eventName\":\"signup\",\"criteria\":{\"action\":\"signup\"}}],\"campaignId\":\"newsletter_april\",\"includeUnsubscribes\":true}", + "description": "Generate conversion metrics including unsubscribes for 'newsletter_april' campaign with signup as conversion event." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "email-communication.generateYAML", + "description": "Generates a YAML configuration snippet for email campaigns based on provided email details, recipient segmentation, scheduling, and content customization options. Accepts structured parameters to create a ready-to-use YAML configuration file for automation or integration purposes.", + "category": "email-communication", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name identifier for the email campaign to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "The email address from which the campaign emails will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "subjectLine", + "type": "string", + "description": "The subject line text for the email campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientSegments", + "type": "array", + "description": "A list of recipient segment identifiers or descriptions to target in the campaign.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "sendDateTime", + "type": "string", + "description": "ISO 8601 formatted date-time string specifying when to send the campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "useHtmlContent", + "type": "boolean", + "description": "Flag indicating whether the email content uses HTML formatting (true) or plain text (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "contentVariables", + "type": "object", + "description": "A key-value map for dynamic content variables to be interpolated into the email body.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A string containing the generated YAML configuration representing the email campaign details, ready for use in automation systems." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to generate a standardized YAML configuration file to define and automate email campaigns based on structured input parameters such as campaign name, target segments, scheduling, and content details. It helps bridge the gap between user input and automation-ready configuration files.", + "limitations": "It does not send emails or validate email addresses; it solely generates YAML configuration based on input parameters. Complex conditional logic or templating beyond variable substitution is not supported.", + "examples": [ + "Generate YAML for a welcome email campaign targeting new user segment with personalized variables.", + "Create a scheduled promotional email configuration with HTML content for VIP customers.", + "Produce a plain text newsletter campaign YAML for a general audience segment to send next Monday." + ] + }, + "tags": [ + "email", + "YAML", + "configuration", + "campaign", + "automation", + "generate" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"WelcomeCampaign\",\"senderEmail\":\"noreply@example.com\",\"subjectLine\":\"Welcome to Our Service!\",\"recipientSegments\":[\"new_users\"],\"sendDateTime\":\"2024-06-15T10:00:00Z\",\"useHtmlContent\":true,\"contentVariables\":{\"userName\":\"{{userName}}\",\"signupDate\":\"{{signupDate}}\"}}", + "description": "Generate a YAML config for a welcome email campaign targeting new users with personalized variables." + }, + { + "inputJson": "{\"campaignName\":\"PromoJune\",\"senderEmail\":\"promo@example.com\",\"subjectLine\":\"June Special Offers\",\"recipientSegments\":[\"vip_customers\",\"loyal_customers\"],\"sendDateTime\":\"2024-06-20T15:30:00Z\",\"useHtmlContent\":true,\"contentVariables\":{\"discountCode\":\"JUNE20\"}}", + "description": "Create a scheduled HTML promotional email for VIP and loyal customers with a discount code." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "email-communication.generateMarkdown", + "description": "Generates a markdown-formatted email body based on the provided email subject, recipient name, content sections, and optional call-to-action. It processes structured input data to produce clean, readable markdown text suitable for email communication templates or automation workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to include as a heading in markdown format.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "Name of the recipient to personalize the greeting in the email body.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentSections", + "type": "array", + "description": "An array of objects representing distinct content sections; each with a title and body text to format as markdown headers and paragraphs.", + "required": true, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "object", + "description": "Optional call-to-action with 'text' and 'url' fields to generate a clickable markdown link in the email.", + "required": false, + "defaultValue": "" + }, + { + "name": "footerText", + "type": "string", + "description": "Optional footer text to append at the end of the email in markdown format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing 'markdownText' which is the fully assembled markdown formatted email body as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to compose email messages with structured and personalized content but deliver it in a markdown format suitable for email platforms or automation that supports markdown rendering. It helps generate consistent formatting for greetings, sections, and calls to action based on input parameters.", + "limitations": "Does not send emails or handle HTML formatting; output is strictly markdown text. It does not automatically translate or localize content. Complex stylings or embedded media are not supported and should be handled separately.", + "examples": [ + "Generate a markdown email with subject 'Welcome to Our Service', greeting a new user named 'Alice', sections introducing features, plus a signup CTA link.", + "Create a project update email with multiple content sections summarizing milestones and a footer with contact info.", + "Produce a markdown formatted email template with personalized greeting omitted but including a call to action button linking to a survey." + ] + }, + "tags": [ + "email", + "markdown", + "communication", + "automation", + "template", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Welcome to Our Newsletter\",\"recipientName\":\"John\",\"contentSections\":[{\"title\":\"Introduction\",\"body\":\"Thank you for subscribing to our newsletter.\"},{\"title\":\"What's New\",\"body\":\"Check out the latest updates and features.\"}],\"callToAction\":{\"text\":\"Visit Our Site\",\"url\":\"https://example.com\"},\"footerText\":\"© 2024 Example Corp\"}", + "description": "Generate a personalized welcome email markdown message including a greeting, multiple content sections, a call to action link, and a footer." + }, + { + "inputJson": "{\"subject\":\"Project Update\",\"contentSections\":[{\"title\":\"Milestone 1\",\"body\":\"Completed initial design phase.\"},{\"title\":\"Milestone 2\",\"body\":\"Development started.\"}],\"footerText\":\"Contact us for more info.\"}", + "description": "Generate a project update email with multiple milestones and footer, without recipient personalization or call to action." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "email-communication.generateDiagram", + "description": "Generates a visual diagram representing the flow or structure of an email sending automation process. Accepts a JSON configuration detailing email triggers, conditions, actions, and sequence, and outputs a flowchart diagram in SVG or PNG format for visualization or documentation purposes.", + "category": "email-communication", + "parameters": [ + { + "name": "flowConfig", + "type": "object", + "description": "JSON object defining the email automation flow, including triggers, conditions, email steps, and branching logic.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the output diagram format; supports 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Include detailed labels and email action metadata in the diagram for clarity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Color theme for the diagram; e.g., 'light', 'dark', or custom theme identifier.", + "required": false, + "defaultValue": "light" + }, + { + "name": "width", + "type": "number", + "description": "Desired width in pixels of the output diagram image.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Desired height in pixels of the output diagram image.", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "An object containing the diagram encoded as a base64 string and metadata including format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize the structure or sequence of an email automation process from a JSON definition to help users understand workflows, debug, or document email campaign logic.", + "limitations": "This tool cannot generate interactive or editable diagrams and relies on a well-formed flowConfig JSON structure; it does not execute or validate the email sending process itself.", + "examples": [ + "Generate a PNG flowchart diagram for an email drip campaign with conditional triggers.", + "Create an SVG diagram illustrating the email sequence and decision points with detailed labels.", + "Produce a simplified light-themed diagram of a newsletter send flow for documentation purposes." + ] + }, + "tags": [ + "email", + "automation", + "diagram", + "visualization", + "flowchart", + "email-flow", + "communication" + ], + "examples": [ + { + "inputJson": "{\"flowConfig\":{\"triggers\":[{\"type\":\"onSignup\",\"label\":\"User Signup\"}],\"steps\":[{\"id\":\"email1\",\"type\":\"sendEmail\",\"label\":\"Welcome Email\"},{\"id\":\"wait1\",\"type\":\"wait\",\"duration\":\"2d\"},{\"id\":\"email2\",\"type\":\"sendEmail\",\"label\":\"Follow-up Email\"}],\"branches\":[]},\"outputFormat\":\"svg\",\"includeDetails\":true,\"theme\":\"light\",\"width\":800,\"height\":600}", + "description": "Generate a detailed SVG diagram for a basic signup email flow with welcome and follow-up emails." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "email-communication.createAnomaly", + "description": "Creates an anomaly detection report by analyzing email sending metrics such as bounce rates, open rates, click rates, and send volumes over a specified time range. It processes input data or fetches from connected email APIs, applies statistical anomaly detection algorithms, and outputs a detailed report highlighting unusual patterns or deviations in email campaign performance.", + "category": "email-communication", + "parameters": [ + { + "name": "emailMetricsData", + "type": "array", + "description": "Array of objects representing email campaign metrics per time interval (e.g., daily), including fields like sends, bounces, opens, clicks.", + "required": false, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "metricsToAnalyze", + "type": "array", + "description": "List of metric names to analyze for anomalies, e.g., ['bounceRate','openRate','clickRate'].", + "required": false, + "defaultValue": "[\"bounceRate\",\"openRate\",\"clickRate\"]" + }, + { + "name": "threshold", + "type": "number", + "description": "Sensitivity threshold for anomaly detection, between 0 and 1; higher means fewer anomalies detected.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "emailProviderApiKey", + "type": "string", + "description": "API key to fetch email campaign performance data automatically if emailMetricsData is not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing anomaly detection results, including detected anomalies with their metric name, timestamp, observed and expected values, anomaly score, and a summary report of email performance anomalies." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to identify unusual or suspicious patterns in email campaign performance metrics over time to help diagnose issues or detect fraud-like bounce spikes or open rate drops. It helps optimize email communication by flagging anomalies automatically.", + "limitations": "This tool cannot perform root cause analysis or fix issues; it only detects statistical anomalies based on provided or fetched data. It requires sufficiently detailed metric data over time to function well.", + "examples": [ + "Identify if there were any unusual spikes in bounce rates in the last month for our email campaigns.", + "Analyze anomalies in open and click rates for a given date range using our email metrics data.", + "Detect any abnormal patterns in sending volume and bounce rate using data from the email provider via API key." + ] + }, + "tags": [ + "email", + "anomaly detection", + "analytics", + "automation", + "campaign monitoring" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"metricsToAnalyze\":[\"bounceRate\",\"openRate\"],\"threshold\":0.9,\"emailMetricsData\":[{\"date\":\"2024-04-01\",\"sends\":10000,\"bounces\":50,\"opens\":2000,\"clicks\":500},{\"date\":\"2024-04-02\",\"sends\":10000,\"bounces\":400,\"opens\":1800,\"clicks\":400},{\"date\":\"2024-04-03\",\"sends\":10000,\"bounces\":45,\"opens\":2100,\"clicks\":550}]}", + "description": "Analyze bounceRate and openRate anomalies for April 2024 with custom threshold and inline metrics data." + }, + { + "inputJson": "{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-15\",\"emailProviderApiKey\":\"abcdef1234567890\"}", + "description": "Fetch email metrics via API key and detect anomalies in default metrics over early May 2024." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "email-communication.createQuote", + "description": "Creates a professional sales quote email content based on customer details, product items, pricing, and terms. The tool accepts structured input about the recipient, list of products with quantities and prices, additional notes, and optional discount info. It generates a formatted email body suitable for sending as a quote or proposal.", + "category": "email-communication", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "The full name of the quote recipient or customer.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient to personalize the quote email header.", + "required": true, + "defaultValue": "" + }, + { + "name": "products", + "type": "array", + "description": "Array of product items included in the quote, each with name, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to display prices in.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "discountPercentage", + "type": "number", + "description": "Optional discount percentage to apply to the total price.", + "required": false, + "defaultValue": "0" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the quote is valid from creation date.", + "required": false, + "defaultValue": "30" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Additional customizable notes or terms to include in the quote email.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted email subject and HTML body content of the quote email." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a professional sales quote in email format that details products, pricing, discounts, and terms for sending to a prospective or existing customer.", + "limitations": "Does not send the actual email; it only generates the email content. It does not handle tax calculation or advanced pricing rules beyond a simple discount. It assumes well-structured input data.", + "examples": [ + "Generate a quote email to customer John Doe for 3 laptops and 5 monitors with 10% discount.", + "Create a quote message for a client with products and validity period of 15 days.", + "Produce email content including custom terms and no discount for the provided product list." + ] + }, + "tags": [ + "email", + "quote", + "sales", + "communication", + "automation", + "template" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Jane Smith\",\"recipientEmail\":\"jane.smith@example.com\",\"products\":[{\"name\":\"Widget A\",\"quantity\":10,\"unitPrice\":25.5},{\"name\":\"Widget B\",\"quantity\":5,\"unitPrice\":40}],\"currency\":\"USD\",\"discountPercentage\":5,\"validityDays\":14,\"additionalNotes\":\"Payment due within 30 days.\"}", + "description": "A quote email to Jane Smith for two products with 5% discount and custom payment terms." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "email-communication.createVulnerability", + "description": "This tool accepts details about a suspicious email message potentially containing security risks. It analyzes the provided email metadata and content to identify and create a vulnerability report highlighting exploitation methods such as phishing, malware links, or spoofing tactics. The output is a structured vulnerability summary usable for incident tracking and email security improvement.", + "category": "email-communication", + "parameters": [ + { + "name": "emailSubject", + "type": "string", + "description": "Subject line of the suspicious email to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailSender", + "type": "string", + "description": "Sender email address or display name associated with the suspicious email.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailBody", + "type": "string", + "description": "Full content body of the email, including any embedded links or attachments.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailHeaders", + "type": "object", + "description": "Key-value pairs of the raw email headers to assist in authentication and spoofing analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachmentHashes", + "type": "array", + "description": "Optional array of hash strings representing attachments included in the email for malware correlation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A detailed vulnerability report object that includes identified threat types, severity levels, and recommendations for email security teams." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess an email for security vulnerabilities by analyzing its content and metadata. Ideal for automated incident response workflows to create vulnerability records for suspicious or malicious emails received in inboxes or reported by users.", + "limitations": "The tool depends on the input data quality and cannot execute or sandbox attachments. It cannot confirm zero-day exploits but detects known patterns and heuristics.", + "examples": [ + "Create a vulnerability report from a phishing email claiming to be from the IT department.", + "Analyze an email with a suspicious link and unknown sender to identify potential threats.", + "Generate a security vulnerability entry for an email containing malicious attachments detected by antivirus scans." + ] + }, + "tags": [ + "email", + "security", + "vulnerability", + "phishing", + "malware", + "spoofing", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"emailSubject\":\"Urgent: Verify Your Account Now!\",\"emailSender\":\"support@paypa1.com\",\"emailBody\":\"Dear user, your account will be locked unless you verify here: http://malicious.link\",\"emailHeaders\":{\"From\":\"support@paypa1.com\",\"Received\":\"from unknown\"},\"attachmentHashes\":[] }", + "description": "Input a suspected phishing email with spoofed sender address and malicious link to generate a vulnerability report." + }, + { + "inputJson": "{\"emailSubject\":\"Invoice Attached\",\"emailSender\":\"billing@trustedcorp.com\",\"emailBody\":\"Please review the attached invoice.\",\"emailHeaders\":{\"From\":\"billing@trustedcorp.com\",\"DKIM-Signature\":\"...\"},\"attachmentHashes\":[\"e99a18c428cb38d5f260853678922e03\"] }", + "description": "Analyze an email with a potentially malicious invoice attachment hash to create a vulnerability entry." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "email-communication.createChannel", + "description": "Creates a new email communication channel configuration for managing email sending pipelines. Accepts inputs such as channel name, sender email, SMTP server details, authentication credentials, default email templates, and optional scheduling or throttling parameters. Outputs the created channel ID and status confirmation.", + "category": "email-communication", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "Unique name identifier for the email channel to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "The email address that will appear as the sender in outbound emails.", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpServer", + "type": "string", + "description": "The SMTP server address used to send emails through this channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "smtpPort", + "type": "number", + "description": "Port number for the SMTP server connection.", + "required": true, + "defaultValue": "587" + }, + { + "name": "useTls", + "type": "boolean", + "description": "Whether to use TLS encryption for SMTP connections.", + "required": false, + "defaultValue": "true" + }, + { + "name": "authentication", + "type": "object", + "description": "Authentication credentials object containing username and password.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultTemplateId", + "type": "string", + "description": "Optional ID of the default email template associated with this channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxEmailsPerHour", + "type": "number", + "description": "Optional throttling limit specifying maximum emails allowed to be sent per hour through this channel.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique channelId string assigned to the created channel and a status message confirming creation success or details of failure." + }, + "aiAgent": { + "useCase": "Use this tool when setting up a new outbound email stream or pipeline to manage automated or bulk email sending, such as for marketing campaigns, notifications, or transactional emails. It helps configure necessary server settings and authentication for reliable email delivery.", + "limitations": "This tool does not handle sending emails themselves or managing email content dynamically; it only sets up the channel configuration.", + "examples": [ + "Create a channel named 'MarketingNewsletter' using SMTP details for scheduled promotional emails.", + "Set up a transactional email channel with TLS enabled and authentication credentials.", + "Configure a low-volume notification channel with a throttling limit to avoid spam flags." + ] + }, + "tags": [ + "email", + "communication", + "channel", + "setup", + "smtp", + "configuration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"MarketingNewsletter\",\"senderEmail\":\"news@company.com\",\"smtpServer\":\"smtp.company.com\",\"smtpPort\":587,\"useTls\":true,\"authentication\":{\"username\":\"news_user\",\"password\":\"securepass\"},\"defaultTemplateId\":\"tpl_12345\",\"maxEmailsPerHour\":1000}", + "description": "Create a marketing channel for newsletter sending with TLS and throttling 1000 emails/hour." + }, + { + "inputJson": "{\"channelName\":\"TransactionalEmails\",\"senderEmail\":\"no-reply@company.com\",\"smtpServer\":\"smtp.company.com\",\"smtpPort\":465,\"useTls\":true,\"authentication\":{\"username\":\"transaction_user\",\"password\":\"transpass\"}}", + "description": "Set up a transactional email channel with secure SMTP port 465 and authentication." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "email-communication.createConversion", + "description": "Creates a conversion event record based on email campaign data. Accepts parameters describing the email campaign ID, user actions, conversion type, and timestamp to process and store a structured conversion event that links email engagement to specific user conversions. Outputs the details of the recorded conversion event including a unique conversion ID.", + "category": "email-communication", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the email campaign triggering the conversion event.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user who performed the conversion action.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionType", + "type": "string", + "description": "Type or category of conversion (e.g., 'purchase', 'signup', 'download').", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted datetime string when the conversion occurred.", + "required": true, + "defaultValue": "" + }, + { + "name": "revenue", + "type": "number", + "description": "Optional monetary value associated with the conversion (e.g., purchase amount).", + "required": false, + "defaultValue": "0" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data related to the conversion event for extended tracking purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the recorded conversion event details, including a unique conversion event ID, campaign, user, type, timestamp, revenue, and any metadata." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to record and track conversion events attributed to specific email campaigns. It helps relate user actions such as purchases, signups, or other conversions directly to email engagement for analytics and optimization of marketing strategies.", + "limitations": "This tool does not handle sending emails or managing campaign creation. It does not analyze conversion data trends or provide aggregated analytics—only creates individual conversion records.", + "examples": [ + "Create a conversion record for a user who purchased a product after clicking on a campaign email.", + "Log a signup conversion related to a specific campaign with timestamp and optional revenue.", + "Record a download event from an email campaign with associated metadata including campaign medium." + ] + }, + "tags": [ + "email", + "conversion", + "analytics", + "tracking", + "marketing", + "campaign management" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"cmp12345\",\"userId\":\"user678\",\"conversionType\":\"purchase\",\"timestamp\":\"2024-06-15T13:45:30Z\",\"revenue\":49.99,\"metadata\":{\"productId\":\"prod345\"}}", + "description": "Record a purchase conversion from a specific email campaign including purchase revenue and product details." + }, + { + "inputJson": "{\"campaignId\":\"cmp987\",\"userId\":\"user234\",\"conversionType\":\"signup\",\"timestamp\":\"2024-06-14T09:15:00Z\"}", + "description": "Log a signup conversion event attributed to an email campaign without additional revenue or metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "email-communication.createCache", + "description": "Creates a caching infrastructure designed to temporarily store email data like templates, recipient lists, or SMTP connection settings to improve performance and reduce redundant processing in email communication systems. Accepts configuration details for cache type, size, and expiration settings, returning a cache instance handle for further operations.", + "category": "email-communication", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create, e.g., 'memory', 'redis', or 'memcached'.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of items or size to store in the cache before eviction occurs (e.g., in entries or megabytes depending on cacheType).", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultTtlSeconds", + "type": "number", + "description": "Default time-to-live in seconds for cache entries before they expire.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "connectionConfig", + "type": "object", + "description": "Optional configuration object with connection details for external caches like Redis or Memcached (e.g., host, port, credentials).", + "required": false, + "defaultValue": "" + }, + { + "name": "enableCompression", + "type": "boolean", + "description": "Whether to enable compression of cached email data to save space.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created cache with methods for setting, getting, and deleting cached items, plus metadata like cacheType and size limits." + }, + "aiAgent": { + "useCase": "Use this tool when building or optimizing email communication systems that require efficient reuse of data such as email templates, SMTP connections, or recipient information. Caching can dramatically reduce latency and system load by reusing common data between email sends.", + "limitations": "This tool creates and configures a cache infrastructure but does not handle actual email sending, template rendering, or advanced cache eviction policies beyond the provided parameters.", + "examples": [ + "Create a Redis cache with max 5000 entries and 30-minute TTL for email template storage.", + "Set up an in-memory cache with compression enabled to store SMTP connection tokens.", + "Create a memcached cache with a max size of 100MB and default TTL of one hour for caching recipient email lists." + ] + }, + "tags": [ + "email", + "cache", + "infrastructure", + "performance", + "automation", + "smtp", + "template", + "storage" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"redis\",\"maxSize\":5000,\"defaultTtlSeconds\":1800,\"connectionConfig\":{\"host\":\"redis.example.com\",\"port\":6379},\"enableCompression\":true}", + "description": "Create a Redis cache with a maximum of 5000 items and a default TTL of 30 minutes, enabling compression for email template caching." + }, + { + "inputJson": "{\"cacheType\":\"memory\",\"maxSize\":1000,\"enableCompression\":false}", + "description": "Create a simple in-memory cache limited to 1000 entries without compression, for caching SMTP connection details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "email-communication.createCertificate", + "description": "Generates a digital certificate for securing email communication through S/MIME. Accepts certificate details such as common name, organization, email, and key parameters; processes these to create a signed X.509 certificate; returns the certificate and private key in PEM format for use in email clients.", + "category": "email-communication", + "parameters": [ + { + "name": "commonName", + "type": "string", + "description": "The common name (CN) to be included in the certificate, typically the user's full name or email identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "organization", + "type": "string", + "description": "Organization name to include in the certificate's subject field.", + "required": false, + "defaultValue": "" + }, + { + "name": "emailAddress", + "type": "string", + "description": "Email address to embed within the certificate for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "keySize", + "type": "number", + "description": "Size of the RSA key in bits (e.g., 2048 or 4096) used to generate the private key.", + "required": false, + "defaultValue": "2048" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the certificate will remain valid from creation date.", + "required": false, + "defaultValue": "365" + }, + { + "name": "passwordProtectKey", + "type": "boolean", + "description": "Whether to password protect the private key with a passphrase.", + "required": false, + "defaultValue": "false" + }, + { + "name": "passphrase", + "type": "string", + "description": "Passphrase used to encrypt and protect the private key if passwordProtectKey is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated X.509 certificate and private key in PEM format." + }, + "aiAgent": { + "useCase": "Use this tool when an email client or system requires a personal digital certificate to enable secure signing and encryption of emails using S/MIME protocols. It is essential for creating trusted identities tied to email addresses for enhanced communication security.", + "limitations": "This tool does not issue certificates signed by a Certificate Authority (CA); it generates self-signed certificates suitable for internal or testing purposes, not for public trust scenarios.", + "examples": [ + "Generate a certificate for user john.doe@example.com with default settings.", + "Create a 4096-bit encrypted private key certificate valid for two years for secure corporate email.", + "Produce a password-protected private key certificate for alice@example.org valid six months." + ] + }, + "tags": [ + "email", + "security", + "S/MIME", + "certificate", + "encryption", + "digital signature" + ], + "examples": [ + { + "inputJson": "{\"commonName\":\"John Doe\",\"organization\":\"Example Corp\",\"emailAddress\":\"john.doe@example.com\"}", + "description": "Generate a self-signed certificate for John Doe with default key size (2048 bits) and one year validity." + }, + { + "inputJson": "{\"commonName\":\"Alice Smith\",\"emailAddress\":\"alice.smith@example.net\",\"keySize\":4096,\"validityDays\":730,\"passwordProtectKey\":true,\"passphrase\":\"StrongPass123\"}", + "description": "Create a 4096-bit key certificate for Alice Smith valid for two years with password protection on the private key." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "email-communication.createExpense", + "description": "Creates a structured expense report email draft by accepting expense details such as amount, date, category, and description. It formats the information into a professional email body ready to be sent to the finance or accounting department.", + "category": "email-communication", + "parameters": [ + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the expense report recipient, typically the finance department or manager.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the person submitting the expense report, used in the email signature.", + "required": true, + "defaultValue": "" + }, + { + "name": "expenseDate", + "type": "string", + "description": "Date when the expense was incurred, formatted as YYYY-MM-DD.", + "required": true, + "defaultValue": "" + }, + { + "name": "expenseAmount", + "type": "number", + "description": "Monetary amount of the expense in the company's currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "expenseCategory", + "type": "string", + "description": "Category or type of the expense (e.g., Travel, Meals, Office Supplies).", + "required": true, + "defaultValue": "" + }, + { + "name": "expenseDescription", + "type": "string", + "description": "Brief description or reason for the expense.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAttachments", + "type": "boolean", + "description": "Flag indicating whether to mention attached receipts or documents in the email body.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted email subject and body ready for sending or further editing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a professional expense report email based on provided expense details, facilitating automated email creation for business expense submission workflows.", + "limitations": "This tool creates only the email draft content; it does not actually send the email or handle attachments management beyond mention in the body.", + "examples": [ + "Create an expense report email for a meal expense of $45.50 on 2024-05-12 sent to finance@example.com from John Doe.", + "Generate an expense email stating $120 travel expense on 2024-06-01 for office supplies to accounts@example.com from Jane Smith.", + "Draft an email report for a $75 parking fee expense on 2024-05-20, including mention of receipt attachment." + ] + }, + "tags": [ + "email", + "expense", + "business", + "automation", + "reporting", + "finance" + ], + "examples": [ + { + "inputJson": "{\"recipientEmail\":\"finance@example.com\",\"senderName\":\"John Doe\",\"expenseDate\":\"2024-05-12\",\"expenseAmount\":45.5,\"expenseCategory\":\"Meals\",\"expenseDescription\":\"Team lunch meeting\",\"includeAttachments\":true}", + "description": "Creates an expense email draft for a meals expense with attached receipt notification." + }, + { + "inputJson": "{\"recipientEmail\":\"accounts@example.com\",\"senderName\":\"Jane Smith\",\"expenseDate\":\"2024-06-01\",\"expenseAmount\":120,\"expenseCategory\":\"Travel\",\"expenseDescription\":\"Taxi to client site\",\"includeAttachments\":false}", + "description": "Drafts an expense email for a travel taxi fare without attachment mention." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "email-communication.createDiagram", + "description": "Generates a visual diagram representing the structure and flow of an email campaign. Accepts input details such as campaign stages, email sequence, branching logic, and conditions. Processes this to create a clear, shareable flowchart diagram in SVG or PNG format, facilitating better campaign planning and communication.", + "category": "email-communication", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name of the email campaign to label the diagram appropriately.", + "required": true, + "defaultValue": "" + }, + { + "name": "stages", + "type": "array", + "description": "An ordered list of campaign stages, each stage is an object with id, title, and description describing that step in the email sequence.", + "required": true, + "defaultValue": "" + }, + { + "name": "transitions", + "type": "array", + "description": "List of transitions representing flow connections between stages, with sourceStageId, targetStageId, and condition describing the branching logic.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired image format for the diagram output, such as 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining icons or symbols used in the diagram.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64 encoded string of the generated diagram image and metadata about the diagram." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize the structure of an email marketing campaign, clarifying sequence steps, branching paths, and conditions for stakeholders or marketing teams. It helps in planning, reviewing, and communicating complex email flows effectively.", + "limitations": "Cannot create interactive or animated diagrams, nor can it analyze or optimize campaign content or performance; focused solely on static structural visualization.", + "examples": [ + "Create a diagram showing a welcome email sequence with multiple follow-up steps based on user engagement.", + "Visualize an abandoned cart email flow with decision branches depending on user clicks.", + "Generate a campaign flowchart for a newsletter sending with segmentation filters and timing delays." + ] + }, + "tags": [ + "email", + "diagram", + "visualization", + "marketing", + "campaign", + "flowchart", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Spring Sale Launch\",\"stages\":[{\"id\":\"start\",\"title\":\"Start\",\"description\":\"Campaign start point\"},{\"id\":\"email1\",\"title\":\"Welcome Email\",\"description\":\"Send welcome message\"},{\"id\":\"delay1\",\"title\":\"Wait 3 days\",\"description\":\"Delay before next email\"},{\"id\":\"email2\",\"title\":\"Promotion Email\",\"description\":\"Send main offer\"},{\"id\":\"end\",\"title\":\"End\",\"description\":\"Campaign ends\"}],\"transitions\":[{\"sourceStageId\":\"start\",\"targetStageId\":\"email1\",\"condition\":\"\"},{\"sourceStageId\":\"email1\",\"targetStageId\":\"delay1\",\"condition\":\"\"},{\"sourceStageId\":\"delay1\",\"targetStageId\":\"email2\",\"condition\":\"\"},{\"sourceStageId\":\"email2\",\"targetStageId\":\"end\",\"condition\":\"\"}],\"outputFormat\":\"svg\",\"includeLegend\":true}", + "description": "Diagram for a linear Spring Sale email campaign with a welcome email, delay, and promotional email." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "email-communication.createAudio", + "description": "This tool converts plain text or email message content into an audio file, enabling the creation of spoken versions of emails for accessibility or multimedia communication. It accepts text input and optional parameters for voice, language, and audio format, then outputs a URL or data reference to the generated audio file.", + "category": "email-communication", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The plain text or email content to be converted into audio.", + "required": true, + "defaultValue": "" + }, + { + "name": "voice", + "type": "string", + "description": "The voice model to use for speech synthesis (e.g., 'en-US-Wavenet-D').", + "required": false, + "defaultValue": "en-US-Wavenet-D" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input text for correct pronunciation (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Desired audio output format (e.g., 'mp3', 'wav', 'ogg').", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "speed", + "type": "number", + "description": "Speech rate multiplier where 1.0 is normal speed.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "pitch", + "type": "number", + "description": "Audio pitch adjustment in semitones; 0 is default pitch.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL or base64 data of the generated audio file and metadata about the audio." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert email content or any textual message into spoken audio format, for example, to improve accessibility, create audio newsletters, or to offer voice previews of emails. It's ideal for automating personalized audio message creation from text-based communications.", + "limitations": "This tool does not perform advanced emotional speech synthesis or support direct audio streaming. It also cannot directly embed audio into emails, requiring separate hosting or embedding procedures.", + "examples": [ + "Convert an email body into MP3 audio with a female US English voice.", + "Generate an OGG audio file reading a notification message at 1.2x speed.", + "Create an audio summary of a newsletter text with pitch slightly lowered." + ] + }, + "tags": [ + "email", + "audio", + "text-to-speech", + "communication", + "accessibility", + "media", + "automation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello team, please find the weekly report attached.\",\"voice\":\"en-US-Wavenet-F\",\"language\":\"en-US\",\"audioFormat\":\"mp3\",\"speed\":1.0,\"pitch\":0}", + "description": "Convert a short email message to an MP3 audio using a female voice." + }, + { + "inputJson": "{\"text\":\"Your appointment is confirmed for tomorrow at 3 PM.\",\"voice\":\"en-GB-Wavenet-B\",\"language\":\"en-GB\",\"audioFormat\":\"wav\",\"speed\":1.1,\"pitch\":0}", + "description": "Generate a WAV audio reminder message with a British English male voice at a slightly faster speed." + }, + { + "inputJson": "{\"text\":\"Welcome to our newsletter! Enjoy this month's updates.\",\"voice\":\"en-US-Wavenet-D\",\"language\":\"en-US\",\"audioFormat\":\"ogg\",\"speed\":1.0,\"pitch\":-2}", + "description": "Create an OGG audio file greeting with pitch slightly lowered for a warm effect." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "email-communication.createGraph", + "description": "Generates visual graphs representing email campaign data such as open rates, click-through rates, delivery statistics, and user engagement over time, based on input email analytics JSON data. Outputs image URLs or base64-encoded images of charts depicting trends and overview metrics.", + "category": "email-communication", + "parameters": [ + { + "name": "emailAnalyticsData", + "type": "object", + "description": "Structured JSON object containing email campaign metrics like opens, clicks, bounces, and timestamps over a time period.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate (e.g., line, bar, pie) depicting the email data trends.", + "required": false, + "defaultValue": "line" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional start and end dates (ISO 8601 strings) to filter analytics data for the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetrics", + "type": "array", + "description": "List of specific metrics to include in graph such as ['opens', 'clicks', 'bounces'].", + "required": false, + "defaultValue": "[\"opens\",\"clicks\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output graph image, e.g., 'png', 'jpeg', or 'base64'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to display on the graph.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated graph's reference, either as an image URL or a base64-encoded image string depending on outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to visualize email campaign performance data from structured analytics to better understand trends, engagement, and overall email effectiveness. It helps generate charts for reports, dashboards, or presentations by converting raw metrics into comprehensible graphical format.", + "limitations": "Cannot fetch raw data itself; requires pre-processed email analytics input. Does not provide interactive graphs, only static images. Visual styles and customization options are limited to specified parameters.", + "examples": [ + "Create a line graph showing open and click rates for the last 30 days from analytics data.", + "Generate a pie chart representing the distribution of email bounces versus successful deliveries.", + "Produce a bar chart with the title 'Monthly Email Engagement' for selected metrics over a specified time range." + ] + }, + "tags": [ + "email", + "data-visualization", + "analytics", + "campaign", + "graph", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"emailAnalyticsData\":{\"2024-05-01\":{\"opens\":150,\"clicks\":45,\"bounces\":5},\"2024-05-02\":{\"opens\":200,\"clicks\":60,\"bounces\":3}},\"graphType\":\"line\",\"includeMetrics\":[\"opens\",\"clicks\"],\"outputFormat\":\"png\"}", + "description": "Generate a line graph showing daily opens and clicks for the given dates." + }, + { + "inputJson": "{\"emailAnalyticsData\":{\"totalOpens\":5000,\"totalClicks\":1500,\"totalBounces\":100},\"graphType\":\"pie\",\"includeMetrics\":[\"totalOpens\",\"totalClicks\",\"totalBounces\"],\"outputFormat\":\"base64\",\"title\":\"Overall Campaign Stats\"}", + "description": "Create a pie chart with overall campaign metrics as a base64 image with a title." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "email-communication.createTemplate", + "description": "Creates a customizable email template for automated or manual email campaigns. Accepts template name, subject line, body content (supports HTML and placeholders), optional preheader text, and tags for categorization. Returns a template ID and full template metadata for later use in sending emails.", + "category": "email-communication", + "parameters": [ + { + "name": "templateName", + "type": "string", + "description": "A unique, descriptive name to identify the email template.", + "required": true, + "defaultValue": "" + }, + { + "name": "subjectLine", + "type": "string", + "description": "The subject line text used when sending emails with this template.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyContent", + "type": "string", + "description": "The main HTML content of the email body. Supports inline placeholders for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "preheaderText", + "type": "string", + "description": "Optional preview text shown in the inbox preview alongside subject line.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or categories to organize and filter templates.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique template ID, the template metadata including name, subject, body content, preheader, tags, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate reusable email templates as a foundation for sending personalized or automated email campaigns. It is ideal for setting up marketing, transactional, or notification emails where content structure and branding consistency is required. This supports maintaining organized template libraries and faster email deployment.", + "limitations": "This tool does not send emails or handle recipient management. It also does not validate HTML content or support complex conditional logic inside the template body. Personalization placeholders must be managed by the sending system.", + "examples": [ + "Create an email template called 'Welcome Email' with a subject, a personalized HTML body, and tags like 'onboarding' and 'welcome'.", + "Generate a newsletter template with a subject line and optional preheader text, to be used for weekly mailings." + ] + }, + "tags": [ + "email", + "template", + "automation", + "marketing", + "html", + "communication" + ], + "examples": [ + { + "inputJson": "{\"templateName\":\"Welcome Email\",\"subjectLine\":\"Welcome to Our Service!\",\"bodyContent\":\"

Hello {{firstName}}

Thanks for joining us.

\",\"preheaderText\":\"Get started with your account today.\",\"tags\":[\"welcome\",\"onboarding\"]}", + "description": "Creating a simple welcome email template with basic personalization placeholders and categorization tags." + }, + { + "inputJson": "{\"templateName\":\"Monthly Newsletter\",\"subjectLine\":\"Your Monthly Updates Inside\",\"bodyContent\":\"

Latest News

Check out what's new this month...

\",\"preheaderText\":\"Don't miss out on important updates.\",\"tags\":[\"newsletter\",\"monthly\"]}", + "description": "Creating a newsletter template with subject and preheader text for regular outgoing emails." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "email-communication.createDependency", + "description": "Creates a code dependency configuration for email communication modules, by accepting module names, versions, and dependency types; generates a structured output detailing the dependency relationships needed to assemble or build effective email automation solutions.", + "category": "email-communication", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The primary email communication module name requiring dependencies", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyList", + "type": "array", + "description": "An array of dependency objects each specifying a module name, version, and dependency type (e.g., runtime, dev)", + "required": true, + "defaultValue": "" + }, + { + "name": "includeOptional", + "type": "boolean", + "description": "Flag indicating whether to include optional dependencies or only required ones", + "required": false, + "defaultValue": "false" + }, + { + "name": "dependencyFormat", + "type": "string", + "description": "Format type for the output dependency configuration (e.g., 'npm', 'pip', 'maven')", + "required": false, + "defaultValue": "npm" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured object representing the resolved dependency configuration, suitable for integrating into project build files or package managers." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate or configure the setup of email communication systems by defining the required code dependencies including their versions and relationships, especially during project initialization or CI/CD pipeline setup.", + "limitations": "This tool does not fetch or validate the existence of actual packages or resolve version conflicts automatically. It only creates structured dependency declarations based on input data.", + "examples": [ + "Create dependency information for an email module requiring SMTP and logging libraries.", + "Generate a Maven-style dependency configuration for an email notification service.", + "List required and optional dependencies for an email campaign tool module." + ] + }, + "tags": [ + "email", + "dependency", + "code", + "automation", + "configuration", + "package-management" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"email-smtp-handler\",\"dependencyList\":[{\"name\":\"nodemailer\",\"version\":\"6.7.2\",\"type\":\"runtime\"},{\"name\":\"winston\",\"version\":\"3.3.3\",\"type\":\"runtime\"}],\"includeOptional\":false,\"dependencyFormat\":\"npm\"}", + "description": "Generate npm dependencies for an SMTP email handler module including nodemailer and winston runtime dependencies." + }, + { + "inputJson": "{\"moduleName\":\"email-campaign-engine\",\"dependencyList\":[{\"name\":\"spring-mail\",\"version\":\"5.3.9\",\"type\":\"runtime\"},{\"name\":\"logback\",\"version\":\"1.2.3\",\"type\":\"runtime\"},{\"name\":\"junit\",\"version\":\"4.13.2\",\"type\":\"dev\"}],\"includeOptional\":true,\"dependencyFormat\":\"maven\"}", + "description": "Create Maven dependency declarations including dev dependencies for an email campaign engine." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "email-communication.createReadme", + "description": "Generates a comprehensive README document tailored for an email communication tool or library. Accepts input details like tool name, features, installation instructions, usage examples, configuration options, and contact info, then outputs a well-structured markdown README file ready for use in repositories or documentation sites.", + "category": "email-communication", + "parameters": [ + { + "name": "toolName", + "type": "string", + "description": "The official name of the email communication tool or library.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description explaining the purpose and capabilities of the tool.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "List of key features or benefits offered by the tool.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions on how to install the tool.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "string", + "description": "Code snippets or commands demonstrating typical usage scenarios.", + "required": false, + "defaultValue": "" + }, + { + "name": "configurationDetails", + "type": "string", + "description": "Information about configuration options, environment variables, or setup parameters.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInformation", + "type": "string", + "description": "Details on how to contact support or contribute to the project, such as email or links.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property 'readmeContent' with the complete formatted README markdown text." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate professional and standardized README documentation for email communication tools or libraries based on provided descriptive inputs, facilitating rapid project documentation or onboarding.", + "limitations": "This tool generates markdown README content but does not publish or commit files to repositories automatically. It cannot generate graphical assets or infer missing details beyond provided inputs.", + "examples": [ + "Create a README for an email sending library with features, install instructions, usage code, and support contact.", + "Generate a README file for an email automation tool including configuration parameters and usage examples.", + "Produce a README markdown to document a transactional email API client, given its description and main features." + ] + }, + "tags": [ + "documentation", + "email", + "readme", + "markdown", + "automation", + "tooling", + "developer" + ], + "examples": [ + { + "inputJson": "{\"toolName\":\"FastEmailSender\",\"description\":\"A lightweight library for sending transactional emails efficiently.\",\"features\":[\"SMTP support\",\"Email templating\",\"Bulk sending\",\"Retry mechanism\"],\"installationInstructions\":\"Install via npm: npm install fast-email-sender\",\"usageExamples\":\"const sender = require('fast-email-sender');\\nsender.sendEmail({to:'test@example.com',subject:'Hello',body:'World'});\",\"configurationDetails\":\"Configure SMTP settings using environment variables FAST_EMAIL_SMTP_HOST, FAST_EMAIL_SMTP_PORT.\",\"contactInformation\":\"Support email: support@fastemailsender.com\"}", + "description": "Generate a full README for the FastEmailSender library including features, installation, usage, configuration, and contact info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "email-communication.createBlogPost", + "description": "Creates a formatted blog post email draft based on provided title, content, author details, and optional metadata. It accepts inputs for blog title, main content, author name, tags, and desired publication date, then generates an HTML-formatted email draft optimized for blog audience engagement.", + "category": "email-communication", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post to be included in the email subject and header.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The main textual content of the blog post to be embedded in the email body, supporting basic HTML formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the blog post author to be displayed in the email signature or footer.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "An array of tags or keywords related to the blog post for metadata purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "publicationDate", + "type": "string", + "description": "Optional scheduled publication date of the blog post in ISO 8601 format to include in the email metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string of the email draft (rendering the blog post) and a plain text summary suitable for email clients." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate a professional and formatted email draft that represents a blog post for distribution via email marketing or newsletter platforms. It helps compose the blog content into an email-ready format, combining text and metadata to facilitate immediate sending or further customization.", + "limitations": "This tool does not handle sending emails, content plagiarism checking, or image/media embedding beyond basic HTML formatting. It also does not translate content or handle complex markdown syntax.", + "examples": [ + "Create a blog post email draft titled '10 Tips for Remote Work' with detailed content and author name.", + "Generate an HTML email format draft for a blog post about upcoming product features with tags 'update', 'features'.", + "Produce an email draft for a blog post scheduled for future publication with a summary for preview." + ] + }, + "tags": [ + "email", + "blog", + "content-creation", + "marketing", + "html", + "newsletter" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Boost Your Productivity\",\"content\":\"Learn effective strategies to increase your daily output.\",\"authorName\":\"Jane Doe\",\"tags\":[\"productivity\",\"tips\"],\"publicationDate\":\"2024-07-01T09:00:00Z\"}", + "description": "Create an email blog post draft with title, content, author, tags, and a future publication date." + }, + { + "inputJson": "{\"title\":\"Weekly Tech Roundup\",\"content\":\"Latest news and updates in technology.\",\"authorName\":\"John Smith\",\"tags\":[\"tech\",\"news\"]}", + "description": "Generate an email draft for a weekly technology blog post without a publication date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeVulnerability", + "description": "Analyzes reported vulnerabilities in cloud or physical infrastructure components by assessing their severity, exploitability, and potential impact. Accepts vulnerability data input such as CVE IDs, descriptions, and affected systems. Outputs a detailed risk assessment report with prioritized remediation steps.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "vulnerabilityData", + "type": "object", + "description": "Structured object containing vulnerability details like CVE identifier, description, affected assets, and discovery date. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "environmentType", + "type": "string", + "description": "Type of infrastructure environment to contextualize analysis, e.g., 'cloud', 'on-premises', 'hybrid'. Helps tailor risk assessment. Default is 'cloud'.", + "required": false, + "defaultValue": "cloud" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level of vulnerabilities to report, e.g., 'low', 'medium', 'high', 'critical'. Filters output to relevant risks. Default is 'medium'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeMitigationRecommendations", + "type": "boolean", + "description": "Flag whether to include specific step-by-step mitigation or remediation recommendations in the output report. Default true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "scanDate", + "type": "string", + "description": "ISO 8601 date string representing the date the vulnerability data was collected. Used for temporal context in risk analysis. Optional.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summarized vulnerability risk assessment report including severity rankings, exploitability scores, affected assets list, prioritized mitigation recommendations, and overall risk posture evaluation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess vulnerabilities found within an infrastructure environment, providing a comprehensive risk analysis and actionable recommendations to prioritize remediation efforts effectively.", + "limitations": "Does not perform vulnerability scanning or real-time detection; requires input of pre-identified vulnerability data. Cannot replace manual security expert judgment entirely.", + "examples": [ + "Analyze vulnerabilities from recent CVE reports for our on-premises data center.", + "Provide a risk assessment of all critical and high severity vulnerabilities found in our AWS environment last month.", + "Give prioritized mitigation steps for the vulnerability data detected in a hybrid infrastructure setup." + ] + }, + "tags": [ + "infrastructure", + "vulnerability", + "security", + "risk-assessment", + "cloud", + "on-premises", + "mitigation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityData\":{\"cveId\":\"CVE-2023-12345\",\"description\":\"Sample buffer overflow in component X\",\"affectedAssets\":[\"server1\",\"server2\"],\"disclosedDate\":\"2023-05-01\"},\"environmentType\":\"cloud\",\"severityThreshold\":\"high\",\"includeMitigationRecommendations\":true,\"scanDate\":\"2023-05-15\"}", + "description": "Analyze a high severity buffer overflow vulnerability affecting cloud servers with mitigation recommendations included." + }, + { + "inputJson": "{\"vulnerabilityData\":{\"cveId\":\"CVE-2022-56789\",\"description\":\"Privilege escalation vulnerability in database service\",\"affectedAssets\":[\"db1\"],\"disclosedDate\":\"2022-11-10\"},\"environmentType\":\"on-premises\",\"severityThreshold\":\"medium\",\"includeMitigationRecommendations\":false}", + "description": "Assess a medium severity privilege escalation vulnerability in an on-premise database without detailed mitigation steps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeChannel", + "description": "Analyzes communication channels used within an infrastructure environment to assess performance, security status, and configuration compliance. Accepts channel identifiers or definitions as input, performs diagnostics and pattern analysis, and outputs a comprehensive report detailing usage metrics, detected issues, and optimization recommendations.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Unique identifier of the communication channel to analyze, such as a channel name or ID in a messaging or networking system.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range object with 'start' and 'end' ISO 8601 timestamps to restrict analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSecurityAnalysis", + "type": "boolean", + "description": "Flag indicating whether to include security vulnerability and compliance checks in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metrics", + "type": "array", + "description": "List of specific performance or usage metrics to analyze, such as latency, error rate, or bandwidth usage.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxReportSize", + "type": "number", + "description": "Maximum size (in KB) of the output report to limit verbosity.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing detailed analysis results including channel performance data, security findings, configuration compliance status, and recommendations for improvement." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate communication channels in cloud or physical infrastructure setups to understand their performance, identify security risks, check configuration compliance, and receive actionable optimization advice. Particularly useful for system administrators managing complex multi-channel environments.", + "limitations": "This tool does not reconfigure channels, nor does it handle live monitoring or direct remediation actions. It requires valid channel identifiers and may not support proprietary or undocumented channel types.", + "examples": [ + "Analyze the communication channel 'net-channel-123' for the past week including security checks.", + "Generate a performance and compliance report for channel 'internal-messaging-01' focusing on latency and error rate.", + "Run a quick analysis of channel 'vpn-tunnel-4' excluding security analysis and limit report size to 200KB." + ] + }, + "tags": [ + "analysis", + "infrastructure", + "communication", + "performance", + "security", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"net-channel-123\",\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"includeSecurityAnalysis\":true}", + "description": "Analyze network channel 'net-channel-123' for one week including security diagnostics." + }, + { + "inputJson": "{\"channelId\":\"internal-messaging-01\",\"metrics\":[\"latency\",\"errorRate\"]}", + "description": "Analyze 'internal-messaging-01' channel focusing specifically on latency and error rate metrics." + }, + { + "inputJson": "{\"channelId\":\"vpn-tunnel-4\",\"includeSecurityAnalysis\":false,\"maxReportSize\":200}", + "description": "Quickly analyze VPN tunnel channel without security analysis and limit the report size to 200KB." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeMarkdown", + "description": "This tool accepts Markdown documents related to infrastructure configurations or documentation, analyzes the content to identify key components such as configuration parameters, infrastructure resources, and dependencies, and produces a structured summary and actionable insights to assist in infrastructure management and auditing.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "The raw Markdown text to analyze, which may contain infrastructure configuration details, documentation, or notes.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeLinks", + "type": "boolean", + "description": "Whether to extract and include external links or references found within the Markdown content in the output summary.", + "required": false, + "defaultValue": "false" + }, + { + "name": "analyzeDependencies", + "type": "boolean", + "description": "Flag indicating whether to specifically detect and list dependencies between infrastructure components described in the Markdown.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length (in characters) of the generated summary to keep output concise.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing a structured summary of the Markdown content, including extracted configuration elements, identified infrastructure resources, dependencies, and optionally extracted links." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to interpret and extract meaningful infrastructure-related information from Markdown files, such as documentation or configuration notes. It helps in generating summaries for auditing, compliance checks, or preparing reports based on Markdown sources.", + "limitations": "This tool cannot validate or execute configurations, nor does it interpret non-infrastructure Markdown content effectively. It also cannot access external resources linked within the document beyond listing their URLs.", + "examples": [ + "Analyze a Markdown file describing cloud infrastructure to extract resource definitions and their dependencies.", + "Summarize an infrastructure documentation written in Markdown to prepare an audit report.", + "Extract and list all external references from an infrastructure design document in Markdown format." + ] + }, + "tags": [ + "infrastructure", + "markdown", + "analysis", + "documentation", + "configuration", + "summary" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Infrastructure Plan\\n\\nThis document describes the following resources:\\n- EC2 instance: web-server\\n- RDS database: user-db\\n\\nDependencies:\\n- web-server depends on user-db\\n\\nSee more details at [AWS Docs](https://aws.amazon.com/documentation/)\",\"includeLinks\":true,\"analyzeDependencies\":true,\"maxSummaryLength\":500}", + "description": "Analyze a Markdown document describing AWS infrastructure components including dependencies and external links." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeYAML", + "description": "This tool accepts infrastructure configuration files in YAML format, analyzes their syntax and structure, identifies potential configuration issues or inconsistencies, and produces a detailed report summarizing findings including errors, warnings, and best practice suggestions.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "YAML formatted string representing the infrastructure configuration to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkSchemaCompliance", + "type": "boolean", + "description": "If true, validate the YAML content against known infrastructure configuration schemas (e.g., Kubernetes, Terraform).", + "required": false, + "defaultValue": "true" + }, + { + "name": "schemaType", + "type": "string", + "description": "Specifies the type of infrastructure schema to validate against (e.g., \"kubernetes\", \"terraform\", \"cloudformation\").", + "required": false, + "defaultValue": "kubernetes" + }, + { + "name": "includeBestPractices", + "type": "boolean", + "description": "If true, include analysis of best practice adherence and optimization recommendations in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "ignoreWarnings", + "type": "boolean", + "description": "If true, suppress warnings and report only errors in the analysis output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing lists of errors, warnings, and suggestions found in the YAML configuration, plus metadata about schema validation status and overall analysis summary." + }, + "aiAgent": { + "useCase": "Use this tool when given infrastructure configuration files in YAML format to validate their correctness, adherence to schema standards, and identify misconfigurations or potential improvements before deployment. It helps prevent infrastructure errors and promotes best practices.", + "limitations": "Cannot execute or deploy the infrastructure; does not fully interpret custom scripts or embedded code in YAML; schema validation limited to supported schema types; may produce false positives or miss some domain-specific issues.", + "examples": [ + "Analyze this Kubernetes deployment YAML for syntax errors and best practice issues.", + "Validate my Terraform configuration YAML against schema and highlight misconfigurations.", + "Check my CloudFormation YAML template and summarize any validation errors or optimizations." + ] + }, + "tags": [ + "infrastructure", + "YAML", + "analysis", + "validation", + "configuration", + "cloud", + "DevOps" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"apiVersion: v1\\nkind: Pod\\nmetadata:\\n name: my-pod\\nspec:\\n containers:\\n - name: nginx-container\\n image: nginx:latest\",\"checkSchemaCompliance\":true,\"schemaType\":\"kubernetes\",\"includeBestPractices\":true,\"ignoreWarnings\":false}", + "description": "Analyze a simple Kubernetes Pod YAML manifest for syntax correctness and best practice recommendations." + }, + { + "inputJson": "{\"yamlContent\":\"resource:\\n aws_instance:\\n example:\\n ami: ami-12345678\\n instance_type: t2.micro\",\"checkSchemaCompliance\":true,\"schemaType\":\"terraform\",\"includeBestPractices\":false,\"ignoreWarnings\":true}", + "description": "Validate a Terraform resource YAML snippet, focusing on error detection and suppressing warnings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "infrastructure-management.renderSentence", + "description": "Generates descriptive, human-readable sentences summarizing infrastructure resource states or changes. Accepts structured input describing infrastructure elements and events, then produces easy-to-understand sentences for reporting or alerts.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "resourceType", + "type": "string", + "description": "Type of infrastructure resource (e.g., server, network, storage) to describe.", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceId", + "type": "string", + "description": "Identifier or name of the specific resource to generate the sentence about.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of event or status affecting the resource (e.g., created, updated, failed).", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDetails", + "type": "object", + "description": "Additional key-value details about the event or resource state.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include a timestamp in the rendered sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated human-readable sentence summarizing the resource state or event." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured infrastructure data into readable, concise sentences for reports, notifications, or logs, enhancing human understanding of infrastructure changes or status.", + "limitations": "This tool does not perform complex natural language generation beyond sentence templating and simple summarization. It cannot handle ambiguous or undefined resource types/events.", + "examples": [ + "Generate a sentence summarizing a server start event.", + "Render a sentence describing a network outage for a specific router.", + "Create a status update sentence for a storage device upgrade." + ] + }, + "tags": [ + "infrastructure", + "reporting", + "status", + "notification", + "summary", + "rendering" + ], + "examples": [ + { + "inputJson": "{\"resourceType\":\"server\",\"resourceId\":\"web-server-01\",\"eventType\":\"started\",\"eventDetails\":{\"ipAddress\":\"192.168.1.10\"},\"includeTimestamp\":true}", + "description": "Render a sentence describing that the server 'web-server-01' has started including the IP address and timestamp." + }, + { + "inputJson": "{\"resourceType\":\"network\",\"resourceId\":\"router-5\",\"eventType\":\"down\",\"eventDetails\":{\"duration\":\"15 minutes\"},\"includeTimestamp\":false}", + "description": "Generate a sentence reporting that the network router 'router-5' is down for 15 minutes without timestamp." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "infrastructure-management.formatComponent", + "description": "Formats a cloud or physical infrastructure component configuration code snippet for readability and standard compliance. Accepts input code as string, parses and applies formatting rules (indentation, line breaks, syntax style), and outputs the formatted code string consistent with infrastructure-as-code standards.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "componentCode", + "type": "string", + "description": "Raw infrastructure component code to format (e.g., Terraform, CloudFormation snippet).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The infrastructure code language (e.g., 'terraform', 'cloudformation', 'ansible').", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length before wrapping (0 for no wrap).", + "required": false, + "defaultValue": "80" + }, + { + "name": "sortProperties", + "type": "boolean", + "description": "Whether to alphabetically sort object properties in the formatted output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object with the formatted infrastructure component code string under 'formattedCode' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to standardize or beautify snippets of infrastructure component code to improve readability, maintain consistency, or prepare code for deployment pipelines and reviews. Useful in automating code formatting for Terraform modules, CloudFormation templates, or Ansible playbooks.", + "limitations": "This tool formats code snippets but does not validate correctness or deployment readiness. It does not execute or simulate infrastructure changes. It supports only specified infrastructure-as-code languages and may not support all syntax variants or embedded templating logic.", + "examples": [ + "Format a raw Terraform resource block with 4-space indentation.", + "Format a CloudFormation YAML snippet with 2-space indentation and property sorting enabled.", + "Format an Ansible playbook snippet without line wrapping." + ] + }, + "tags": [ + "infrastructure", + "formatting", + "code", + "terraform", + "cloudformation", + "ansible", + "infrastructure-as-code" + ], + "examples": [ + { + "inputJson": "{\"componentCode\":\"resource \\\"aws_instance\\\" \\\"example\\\" {\\nami = \\\"ami-123456\\\"\\ninstance_type=\\\"t2.micro\\\"\\n}\",\"language\":\"terraform\",\"indentationSpaces\":4,\"maxLineLength\":0,\"sortProperties\":false}", + "description": "Format a Terraform resource block with 4 spaces indentation." + }, + { + "inputJson": "{\"componentCode\":\"Resources:\\n MyInstance:\\n Type: AWS::EC2::Instance\\n Properties:\\n InstanceType: t2.micro\\n ImageId: ami-123456\",\"language\":\"cloudformation\",\"indentationSpaces\":2,\"maxLineLength\":80,\"sortProperties\":true}", + "description": "Format a CloudFormation YAML snippet with 2-space indentation and sort properties alphabetically." + }, + { + "inputJson": "{\"componentCode\":\"- name: Install Apache\\n yum:\\n name: httpd\\n state: present\",\"language\":\"ansible\",\"indentationSpaces\":2,\"maxLineLength\":0,\"sortProperties\":false}", + "description": "Format an Ansible playbook snippet with 2-space indentation without line wrapping." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "infrastructure-management.formatArticle", + "description": "Formats an input article text related to infrastructure management into a clean, standardized, and well-structured document. Accepts raw article content and optional formatting styles, then outputs a formatted article suitable for documentation or publication.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "articleContent", + "type": "string", + "description": "The raw text content of the article to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The style or schema to apply for formatting the article. E.g., 'technical', 'blog', 'whitepaper'.", + "required": false, + "defaultValue": "technical" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to generate and include headers and subheaders automatically based on content structure.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before wrapping text, helps improve readability.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article as a string, including structured headers and styled text for publication or documentation use." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or unstructured article text describing infrastructure topics that need to be presented in a clean, professional format. This is useful for generating internal documentation, public-facing articles, or training material styled consistently.", + "limitations": "It cannot generate article content or summaries; it only formats existing article text. It also does not translate or verify technical accuracy of the content.", + "examples": [ + "Format a raw article on cloud infrastructure best practices into a professional technical document.", + "Convert an unstructured blog draft about data center management into a standardized, readable format with headers.", + "Apply a whitepaper style format to an existing article about network security architectures." + ] + }, + "tags": [ + "formatting", + "documentation", + "infrastructure", + "article", + "text-processing", + "technical-writing" + ], + "examples": [ + { + "inputJson": "{\"articleContent\":\"Cloud infrastructure is critical for modern systems. This article discusses best practices. Include security, scalability, and monitoring.\",\"formatStyle\":\"technical\",\"includeHeaders\":true,\"maxLineLength\":75}", + "description": "Format a brief cloud infrastructure article in a technical style with headers and 75 characters max line length." + }, + { + "inputJson": "{\"articleContent\":\"Managing physical data centers requires attention to power, cooling, and hardware lifecycle.\",\"formatStyle\":\"blog\",\"includeHeaders\":false,\"maxLineLength\":100}", + "description": "Format a physical data center article as a blog post without headers and longer line length." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "infrastructure-management.composeLink", + "description": "This tool takes inputs describing infrastructure components or resources, along with optional metadata, and composes a standardized clickable URL link that points to the consolidated view or dashboard of those linked resources in cloud or physical infrastructure management consoles. It outputs the fully formatted link string.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "resourceIds", + "type": "array", + "description": "An array of string identifiers representing infrastructure resources to link together, such as instance IDs, IPs, or container names.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkLabel", + "type": "string", + "description": "The text label that will be displayed as the hyperlink text.", + "required": false, + "defaultValue": "\"View Resources\"" + }, + { + "name": "linkType", + "type": "string", + "description": "Type of link to generate; e.g., 'dashboard', 'console', or 'monitoring' specifying target view in the infrastructure management platform.", + "required": false, + "defaultValue": "\"dashboard\"" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Flag indicating whether the link should open in a new browser tab/window when clicked.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs providing additional context or parameters for the link such as filters or query parameters.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed 'url' string linking to the infrastructure view and the 'label' used as hyperlink text." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a direct link to a set of infrastructure resources consolidated in a management console or dashboard, facilitating quick navigation for operators or automation workflows. It is especially useful for dynamically generating links to combined views or filtered resources.", + "limitations": "This tool does not itself validate resource existence or access permissions; generated links depend on the correctness of input resource identifiers and the target platform's URL schema.", + "examples": [ + "Generate a link for instances id1, id2 with a label 'Check Instances' opening in new tab.", + "Create a monitoring dashboard link for container resources with filter metadata.", + "Compose a console view link for network device IDs without opening in new tab." + ] + }, + "tags": [ + "infrastructure", + "link", + "compose", + "cloud", + "dashboard", + "console", + "navigation" + ], + "examples": [ + { + "inputJson": "{\"resourceIds\":[\"i-0123456789abcdef0\",\"i-0fedcba9876543210\"],\"linkLabel\":\"Check Instances\",\"linkType\":\"dashboard\",\"openInNewTab\":true,\"metadata\":{\"region\":\"us-east-1\"}}", + "description": "Compose a dashboard link for two EC2 instances with a user-friendly label, opening in a new tab." + }, + { + "inputJson": "{\"resourceIds\":[\"container123\",\"container456\"],\"linkLabel\":\"Monitor Containers\",\"linkType\":\"monitoring\",\"openInNewTab\":false,\"metadata\":{\"env\":\"production\"}}", + "description": "Generate a monitoring dashboard link for two container resources in production environment, opening in same tab." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "infrastructure-management.buildWorkflow", + "description": "Constructs an automated infrastructure deployment workflow based on user-supplied infrastructure components and deployment steps. Accepts component definitions and sequences of deployment actions as input, then generates a structured, executable workflow in JSON format to orchestrate infrastructure setup and configuration.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "components", + "type": "array", + "description": "List of infrastructure components to include in the workflow, each defined with type and configuration details.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentSteps", + "type": "array", + "description": "Ordered list of deployment actions specifying how and when components should be deployed and configured.", + "required": true, + "defaultValue": "" + }, + { + "name": "workflowName", + "type": "string", + "description": "A descriptive name for the workflow being built.", + "required": false, + "defaultValue": "" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Policy object specifying retry behavior for failed steps, including max retries and delay interval in seconds.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyOnCompletion", + "type": "boolean", + "description": "Flag to indicate whether notifications should be sent upon workflow completion.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the fully constructed infrastructure deployment workflow, including components, steps, retry policies, and notification settings." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate complex infrastructure provisioning by translating component definitions and deployment sequences into an executable orchestration workflow. It is ideal for scenarios requiring reproducible and auditable deployments across cloud or physical environments.", + "limitations": "This tool does not execute the workflow itself, nor does it perform real-time monitoring or error correction beyond generating retry policies within the workflow definition.", + "examples": [ + "Build a workflow deploying a three-tier web application with database, backend, and frontend components.", + "Create an infrastructure workflow that provisions virtual machines, configures networking, and applies security policies in sequence.", + "Generate a workflow that includes deployment retries and sends a notification email upon completion." + ] + }, + "tags": [ + "infrastructure", + "workflow", + "automation", + "deployment", + "cloud", + "orchestration" + ], + "examples": [ + { + "inputJson": "{\"components\":[{\"type\":\"vm\",\"id\":\"webServer\",\"config\":{\"image\":\"ubuntu18.04\",\"cpu\":4,\"memory\":8192}},{\"type\":\"db\",\"id\":\"mainDB\",\"config\":{\"engine\":\"postgres\",\"version\":\"12\"}}],\"deploymentSteps\":[{\"id\":\"step1\",\"action\":\"provision\",\"target\":\"webServer\"},{\"id\":\"step2\",\"action\":\"configure\",\"target\":\"webServer\",\"script\":\"setup-web.sh\"},{\"id\":\"step3\",\"action\":\"provision\",\"target\":\"mainDB\"},{\"id\":\"step4\",\"action\":\"configure\",\"target\":\"mainDB\",\"script\":\"setup-db.sh\"}],\"workflowName\":\"WebAppDeployment\",\"retryPolicy\":{\"maxRetries\":3,\"delaySeconds\":30},\"notifyOnCompletion\":true}", + "description": "Build a workflow to deploy and configure a web server and a PostgreSQL database with retry and completion notification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "infrastructure-management.buildPipeline", + "description": "Builds a deployment pipeline for infrastructure projects by accepting pipeline configuration, stages definitions, and environment details. It processes inputs to generate a structured pipeline definition suitable for CI/CD tools, outputting the pipeline specification in JSON format.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The unique name for the pipeline to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "stages", + "type": "array", + "description": "An array of stage objects that define each step in the pipeline, including name, actions, and conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Target environment for deployment such as 'production', 'staging', or 'development'.", + "required": false, + "defaultValue": "development" + }, + { + "name": "parallelExecution", + "type": "boolean", + "description": "Flag to indicate if stages should run in parallel where possible.", + "required": false, + "defaultValue": "false" + }, + { + "name": "notificationEmails", + "type": "array", + "description": "List of email addresses to notify about pipeline execution status.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration object defining retry attempts and delay between retries for failed stages.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object representing the complete pipeline configuration including stages, environment settings, notification rules, and execution policies." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate standardized deployment pipelines for infrastructure projects, integrating stages and environment configuration to automate CI/CD processes efficiently. Especially useful for creating consistent pipelines across multiple projects or environments.", + "limitations": "Does not execute the pipeline or interact with specific CI/CD platforms directly; the output requires downstream integration into the target pipeline management system.", + "examples": [ + "Create a deployment pipeline named 'WebAppDeploy' with build, test, and deploy stages targeting the production environment.", + "Generate a staging pipeline with parallel testing stages and notification emails for failures.", + "Build a pipeline with retry policies to handle transient stage failures automatically." + ] + }, + "tags": [ + "infrastructure", + "pipeline", + "build", + "deployment", + "CICD", + "automation", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"WebAppDeploy\",\"stages\":[{\"name\":\"Build\",\"actions\":[\"compile\",\"package\"]},{\"name\":\"Test\",\"actions\":[\"unitTest\",\"integrationTest\"]},{\"name\":\"Deploy\",\"actions\":[\"deployToProd\"]}],\"environment\":\"production\",\"parallelExecution\":false,\"notificationEmails\":[\"devteam@example.com\"],\"retryPolicy\":{\"maxRetries\":3,\"delaySeconds\":60}}", + "description": "Creates a production deployment pipeline named WebAppDeploy with build, test, and deploy stages, email notifications, and retry policy." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "infrastructure-management.generateGraph", + "description": "Generates a visual graph representing the topology or status of a cloud or physical infrastructure environment. Accepts infrastructure data input (JSON or YAML), supports filtering by resource type and status, and produces an interactive graph output showing nodes (machines, services) and edges (connections).", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureData", + "type": "string", + "description": "The infrastructure data input in JSON or YAML format that describes resources and their relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: either 'json' or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "filterResourceTypes", + "type": "array", + "description": "Array of resource types to include in the graph, e.g., ['server','database','loadBalancer']. If empty, includes all.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "filterStatus", + "type": "array", + "description": "Array of resource statuses to include, e.g., ['active', 'degraded']. If empty, includes all.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeMetrics", + "type": "boolean", + "description": "Whether to include performance or health metrics as annotations on nodes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated graph output, e.g., 'svg', 'png', or 'interactive-html'.", + "required": false, + "defaultValue": "interactive-html" + }, + { + "name": "graphLayout", + "type": "string", + "description": "Layout algorithm for the graph (e.g., 'force', 'circular', 'hierarchical').", + "required": false, + "defaultValue": "force" + } + ], + "returns": { + "type": "object", + "description": "An object containing the graph data or visualization: includes the graph rendering as a string (e.g., HTML or SVG) and metadata such as node and edge counts." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize complex infrastructure environments to understand topology, dependencies, and performance at a glance, such as for operational monitoring, incident response, or capacity planning. It's useful when input is structured resource data and the desired output is a visual graph representation.", + "limitations": "Cannot automatically retrieve infrastructure data; requires preformatted input. Not designed for real-time streaming updates or extremely large-scale graphs without pre-filtering.", + "examples": [ + "Generate an interactive graph from AWS resource JSON showing only active servers and databases.", + "Produce a static SVG graph of physical data center devices filtered to show only degraded status nodes.", + "Create a hierarchical graph layout of a Kubernetes cluster resource topology including metrics annotation." + ] + }, + "tags": [ + "infrastructure", + "visualization", + "graph", + "cloud", + "topology", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"infrastructureData\":\"{\\\"nodes\\\":[{\\\"id\\\":\\\"srv1\\\",\\\"type\\\":\\\"server\\\",\\\"status\\\":\\\"active\\\"},{\\\"id\\\":\\\"db1\\\",\\\"type\\\":\\\"database\\\",\\\"status\\\":\\\"active\\\"}],\\\"edges\\\":[{\\\"source\\\":\\\"srv1\\\",\\\"target\\\":\\\"db1\\\"}]}\",\"dataFormat\":\"json\",\"filterResourceTypes\":[\"server\",\"database\"],\"filterStatus\":[\"active\"],\"includeMetrics\":false,\"outputFormat\":\"interactive-html\",\"graphLayout\":\"force\"}", + "description": "Generate an interactive force-directed graph of active servers and databases from JSON data." + }, + { + "inputJson": "{\"infrastructureData\":\"nodes:\\n - id: router1\\n type: router\\n status: degraded\\n - id: switch1\\n type: switch\\n status: degraded\\nedges:\\n - source: router1\\n target: switch1\\n\",\"dataFormat\":\"yaml\",\"filterResourceTypes\":[\"router\",\"switch\"],\"filterStatus\":[\"degraded\"],\"includeMetrics\":true,\"outputFormat\":\"svg\",\"graphLayout\":\"hierarchical\"}", + "description": "Generate a hierarchical SVG graph of degraded routers and switches with metrics from YAML input." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "infrastructure-management.buildPackage", + "description": "Builds a deployable software package from specified source code and configuration files. Accepts source paths and build options, compiles and bundles code, and outputs a package archive (e.g., .zip or .tar.gz) ready for deployment to infrastructure environments.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "sourcePaths", + "type": "array", + "description": "List of filesystem paths or URLs pointing to source code files and resources to include in the package.", + "required": true, + "defaultValue": "" + }, + { + "name": "buildConfig", + "type": "object", + "description": "Configuration object specifying build options such as build tool (e.g., Maven, Gradle, npm), target platforms, environment variables, and optimization flags.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired package archive format, such as 'zip', 'tar.gz', or 'jar'.", + "required": false, + "defaultValue": "zip" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Whether to bundle external dependencies within the package or reference them externally.", + "required": false, + "defaultValue": "true" + }, + { + "name": "version", + "type": "string", + "description": "Version identifier for the package, used in the output filename and metadata.", + "required": false, + "defaultValue": "1.0.0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the package location path, metadata including version and build logs, and a success status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate the creation of software packages from source code for deployment in cloud or physical infrastructure. It helps prepare versioned, bundled archives that include compiled code and dependencies as configured. Ideal for CI/CD pipelines, release automation, and infrastructure provisioning.", + "limitations": "This tool does not perform source code compilation itself but orchestrates external build tools based on provided configuration. It cannot test the package or deploy it to target infrastructure. It requires valid and accessible source paths and build configurations.", + "examples": [ + "Build a zip package from given source code paths with default settings.", + "Create a tar.gz package including all dependencies, specifying version 2.0.1 for release.", + "Build a package for a Node.js project using npm with environment variables configured for production." + ] + }, + "tags": [ + "build", + "package", + "infrastructure", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourcePaths\":[\"./app/src\",\"./app/config\"],\"outputFormat\":\"zip\"}", + "description": "Build a default zip package from source directories for deployment." + }, + { + "inputJson": "{\"sourcePaths\":[\"./service\"],\"buildConfig\":{\"buildTool\":\"maven\",\"targetPlatform\":\"linux\"},\"outputFormat\":\"tar.gz\",\"includeDependencies\":false,\"version\":\"2.1.0\"}", + "description": "Build a tar.gz package of a Java service using Maven, excluding dependencies, for Linux deployment with version 2.1.0." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "infrastructure-management.generateAnomaly", + "description": "Analyzes infrastructure monitoring metrics and logs to detect and generate anomalies indicating potential performance, security, or operational issues. Accepts time series data and log entries, applies statistical and machine learning methods, and outputs detailed anomaly reports with timestamps, severity, and description.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "metricData", + "type": "array", + "description": "Array of time series metric objects containing timestamped values from infrastructure components to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "logData", + "type": "array", + "description": "Array of log entry objects to correlate with metrics for enhanced anomaly detection.", + "required": false, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start time to scope the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end time to scope the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Anomaly detection sensitivity: low, medium, or high, affecting detection thresholds.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "maxAnomalies", + "type": "number", + "description": "Maximum number of anomalies to report; limits output size.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected anomalies, each with timestamp, affected component, severity, anomaly type, and descriptive details." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing cloud or physical infrastructure metrics and logs to proactively identify unusual patterns or outliers that may indicate outages, security breaches, capacity issues, or configuration errors. Ideal for automated monitoring systems to prioritize investigation and remediation.", + "limitations": "This tool may not detect anomalies in entirely new metrics without historical context, nor can it guarantee zero false positives. It does not perform automated remediation, only detection and reporting.", + "examples": [ + "Detect anomalies in CPU and memory metrics from a Kubernetes cluster for the past 24 hours.", + "Identify unusual error spikes in application logs correlated with latency metrics within a specified time window.", + "Generate a report of critical anomalies from cloud infrastructure metrics with high sensitivity for early warning." + ] + }, + "tags": [ + "anomaly-detection", + "infrastructure", + "monitoring", + "analytics", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"metricData\":[{\"component\":\"web-server-1\",\"metric\":\"cpu_usage\",\"timestamp\":\"2024-06-01T12:00:00Z\",\"value\":85},{\"component\":\"web-server-1\",\"metric\":\"cpu_usage\",\"timestamp\":\"2024-06-01T12:05:00Z\",\"value\":95}],\"logData\":[{\"component\":\"web-server-1\",\"timestamp\":\"2024-06-01T12:04:00Z\",\"message\":\"Error: connection timeout\"}],\"startTime\":\"2024-06-01T12:00:00Z\",\"endTime\":\"2024-06-01T13:00:00Z\",\"sensitivityLevel\":\"high\",\"maxAnomalies\":10}", + "description": "Detect CPU usage spikes and correlating error logs on a web server within a one-hour time window with high sensitivity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "infrastructure-management.createConversion", + "description": "Creates a data conversion pipeline configuration for infrastructure analytics, accepting input specifications such as source data type, target format, transformation rules, and optional scheduling. Processes these inputs to produce a reusable conversion configuration object for automated data format conversions in cloud or physical infrastructure monitoring systems.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "sourceDataType", + "type": "string", + "description": "The format/type of the input data to be converted (e.g., JSON, CSV, XML).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetDataType", + "type": "string", + "description": "The desired output format/type after conversion (e.g., Parquet, Avro, JSON).", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationRules", + "type": "object", + "description": "An object defining field mappings, filters, and transformations to apply during conversion.", + "required": false, + "defaultValue": "" + }, + { + "name": "scheduleCron", + "type": "string", + "description": "Optional cron expression to schedule recurring conversions. If empty, conversion is manual.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include metadata in the converted output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the conversion configuration for documentation purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created conversion configuration, including a unique ID, source and target data types, transformation details, scheduling info, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to configure automated or ad-hoc data format conversions within infrastructure management systems to enable interoperability between disparate tools and analytics platforms. This includes specifying source and target formats, transformation logic, and optional scheduling for recurring data conversions.", + "limitations": "This tool does not execute the conversions itself but only creates configuration objects. It cannot perform real-time in-stream conversions or process data content validation beyond transformation rules specification.", + "examples": [ + "Create a conversion to transform JSON logs to Parquet format with custom field mappings, scheduled to run nightly.", + "Set up an event-driven conversion from CSV to JSON format including metadata, without recurring schedule.", + "Generate a one-time conversion configuration from XML to Avro applying filters on certain fields." + ] + }, + "tags": [ + "conversion", + "infrastructure", + "data-processing", + "automation", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"sourceDataType\":\"JSON\",\"targetDataType\":\"Parquet\",\"transformationRules\":{\"fieldMappings\":{\"timestamp\":\"ts\",\"message\":\"msg\"}},\"scheduleCron\":\"0 2 * * *\",\"includeMetadata\":true,\"description\":\"Nightly conversion of JSON logs to Parquet for analytics\"}", + "description": "Configure a scheduled JSON to Parquet conversion with field mappings and metadata." + }, + { + "inputJson": "{\"sourceDataType\":\"CSV\",\"targetDataType\":\"JSON\",\"transformationRules\":{},\"scheduleCron\":\"\",\"includeMetadata\":false,\"description\":\"One-time manual CSV to JSON conversion configuration.\"}", + "description": "Configure a manual CSV to JSON conversion without extra transformation or scheduling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "infrastructure-management.createAnomaly", + "description": "Creates an anomaly record in the infrastructure monitoring system by analyzing input metrics and metadata to identify deviations from normal behavior. Accepts time-series data or event logs related to infrastructure components, processes the data using specified detection parameters, and produces an anomaly object detailing the type, severity, affected resources, and timestamps of detected anomalies.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "metricsData", + "type": "array", + "description": "Array of metric data points or event logs to analyze for anomalies; each item should include timestamp, metric name, and value.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionAlgorithm", + "type": "string", + "description": "The anomaly detection algorithm to apply, e.g., 'statistical', 'machineLearning', 'thresholdBased'.", + "required": true, + "defaultValue": "statistical" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity level for anomaly detection, from 0 (low sensitivity) to 1 (high sensitivity).", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "resourceId", + "type": "string", + "description": "Identifier of the infrastructure resource to which the data pertains.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes over which to perform anomaly detection analysis.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata about detected anomalies, such as root cause suggestions.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An anomaly object containing anomalyId, type, severity score, resourceId, start and end timestamps, related metrics summary, and optional metadata (root causes, descriptions)." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring cloud or physical infrastructure health to automatically identify unusual patterns or faults. It helps predict issues by flagging deviations in metrics and logs, enabling timely intervention. Ideal for automated alerting, incident detection, and infrastructure analytics.", + "limitations": "This tool does not perform remediation, nor can it guarantee 100% accuracy; it depends on quality and completeness of input data and chosen detection algorithm. It is not designed to integrate with all proprietary monitoring formats without preprocessing.", + "examples": [ + "Detect anomalies in CPU usage metrics over the last hour for server srv-1234.", + "Create anomaly records from network traffic logs using machine learning detection with high sensitivity.", + "Identify and log deviations in database response times for resource 'db-cluster-01' with metadata included." + ] + }, + "tags": [ + "infrastructure", + "anomalyDetection", + "monitoring", + "analytics", + "cloud", + "automation" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":[{\"timestamp\":1688000000,\"metric\":\"cpu_usage\",\"value\":92},{\"timestamp\":1688000060,\"metric\":\"cpu_usage\",\"value\":95},{\"timestamp\":1688000120,\"metric\":\"cpu_usage\",\"value\":90}],\"detectionAlgorithm\":\"statistical\",\"sensitivity\":0.8,\"resourceId\":\"srv-1234\",\"timeWindowMinutes\":30,\"includeMetadata\":true}", + "description": "Detect anomalies in CPU usage metrics for server srv-1234 using statistical detection over 30 minutes, high sensitivity, including metadata." + }, + { + "inputJson": "{\"metricsData\":[{\"timestamp\":1688000000,\"metric\":\"network_in\",\"value\":500},{\"timestamp\":1688000060,\"metric\":\"network_in\",\"value\":1500},{\"timestamp\":1688000120,\"metric\":\"network_in\",\"value\":550}],\"detectionAlgorithm\":\"thresholdBased\",\"sensitivity\":0.5,\"resourceId\":\"net-switch-09\",\"timeWindowMinutes\":15,\"includeMetadata\":false}", + "description": "Create anomalies for network inbound traffic on a network switch using threshold-based detection with medium sensitivity over 15 minutes, no metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "infrastructure-management.createAudio", + "description": "This tool accepts raw audio data or text input to create audio files in various formats optimized for deployment in cloud or physical infrastructure environments. It supports configuring audio encoding, bitrate, duration, and output format, producing standardized audio files ready for infrastructure-level distribution or playback.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "inputType", + "type": "string", + "description": "Type of input: 'text' to generate speech audio or 'raw' to process raw audio data.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputData", + "type": "string", + "description": "Text to synthesize if inputType is 'text', or base64-encoded raw audio data if inputType is 'raw'.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Audio file format to generate, e.g., 'mp3', 'wav', 'ogg'.", + "required": true, + "defaultValue": "mp3" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Sample rate of the output audio in Hz (e.g., 44100).", + "required": false, + "defaultValue": "44100" + }, + { + "name": "bitrate", + "type": "number", + "description": "Bitrate for the output audio in kbps, influencing quality and file size.", + "required": false, + "defaultValue": "128" + }, + { + "name": "duration", + "type": "number", + "description": "Duration in seconds to clip or generate from input text; 0 means full length.", + "required": false, + "defaultValue": "0" + }, + { + "name": "voiceProfile", + "type": "string", + "description": "Name or ID of the voice profile for text-to-speech synthesis when inputType is 'text'.", + "required": false, + "defaultValue": "default" + }, + { + "name": "normalizeAudio", + "type": "boolean", + "description": "Whether to normalize audio volume levels for consistent playback.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata and the final audio file output." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate or convert audio files for infrastructure deployment, such as preparing text-to-speech prompts for cloud services, creating alert sounds for monitoring systems, or processing raw audio streams into standardized formats for physical device playback.", + "limitations": "It does not handle advanced audio mixing, multi-track editing, or real-time streaming. It only works with single input streams and static output files.", + "examples": [ + "Generate a 30-second mp3 audio clip saying 'System operational' with a female voice.", + "Convert base64-wav encoded raw audio to 128 kbps mp3 format with volume normalization.", + "Create an ogg audio file from provided text using a specific voice profile for notification alerts." + ] + }, + "tags": [ + "audio", + "infrastructure", + "create", + "text-to-speech", + "audio-processing", + "cloud", + "physical-devices" + ], + "examples": [ + { + "inputJson": "{\"inputType\":\"text\",\"inputData\":\"System is now online.\",\"outputFormat\":\"mp3\",\"sampleRate\":44100,\"bitrate\":128,\"duration\":10,\"voiceProfile\":\"female_english_us\",\"normalizeAudio\":true}", + "description": "Generate a 10-second mp3 audio file from text input using a female English voice profile." + }, + { + "inputJson": "{\"inputType\":\"raw\",\"inputData\":\"UklGRiQAAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YQAAAAB...\",\"outputFormat\":\"mp3\",\"bitrate\":192,\"normalizeAudio\":true}", + "description": "Convert base64-encoded raw WAV audio data to a 192 kbps mp3 file with normalization." + }, + { + "inputJson": "{\"inputType\":\"text\",\"inputData\":\"Alert: Unusual network activity detected.\",\"outputFormat\":\"ogg\",\"voiceProfile\":\"alert_male\",\"normalizeAudio\":false}", + "description": "Create an ogg audio alert from text with a specified male alert voice, without normalization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "monitoring.analyzeConversion", + "description": "Analyzes user conversion data by processing event logs or tracking datasets to identify conversion rates, funnel drop-offs, and key performance metrics. Accepts raw conversion event data and configuration parameters, then outputs detailed analytics including conversion ratios by segments and time periods.", + "category": "monitoring", + "parameters": [ + { + "name": "conversionEvents", + "type": "array", + "description": "Array of conversion event objects with timestamps and user/session identifiers to analyze conversions.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying 'start' and 'end' ISO8601 timestamps to limit analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentationKeys", + "type": "array", + "description": "List of event attributes or user properties to segment conversion analysis by (e.g., device type, campaign source).", + "required": false, + "defaultValue": "" + }, + { + "name": "funnelSteps", + "type": "array", + "description": "Ordered list of event names defining funnel stages to analyze drop-offs and conversion rates per step.", + "required": false, + "defaultValue": "" + }, + { + "name": "minimumConversionValue", + "type": "number", + "description": "Filter parameter to only consider conversions above this numeric value, if applicable (e.g., transaction amount).", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeRawMetrics", + "type": "boolean", + "description": "Whether to include raw counts and event frequencies in the output analytics report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall conversion rate, funnel step metrics, segmentation breakdowns, and optionally raw event counts and time series." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quantitatively assess how well users convert through defined steps or events over time. Ideal for analyzing funnel effectiveness, segment performance, or tracking conversion improvements from experiments. It supports flexible input data and configurable segmentation and time frames to tailor analysis to specific product or marketing goals.", + "limitations": "Cannot generate user-level predictions or perform causal analysis. It only processes provided events and conditions; requires structured input data. It does not visualize data but returns structured analytics for further use.", + "examples": [ + "Analyze conversion rates for signup funnel events over the past month segmented by device type.", + "Identify drop-off points in a purchase funnel and summarize conversion ratios by marketing campaign source.", + "Calculate overall conversion rate and raw metrics for events above $50 value during last quarter." + ] + }, + "tags": [ + "monitoring", + "conversion", + "analytics", + "funnel-analysis", + "performance", + "segmentation", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"conversionEvents\":[{\"eventName\":\"page_view\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"userId\":\"u1\"},{\"eventName\":\"signup\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"userId\":\"u1\"},{\"eventName\":\"purchase\",\"timestamp\":\"2024-05-02T11:00:00Z\",\"userId\":\"u1\"},{\"eventName\":\"page_view\",\"timestamp\":\"2024-05-01T09:00:00Z\",\"userId\":\"u2\"}],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"funnelSteps\":[\"page_view\",\"signup\",\"purchase\"],\"segmentationKeys\":[\"deviceType\"],\"includeRawMetrics\":true}", + "description": "Analyze May 2024 user conversion funnel from page view to purchase segmented by device type, including raw counts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "monitoring.analyzeVulnerability", + "description": "Analyzes the input vulnerability data collected from system scans or reports to identify severity levels, affected components, remediation recommendations, and potential exploit risks. Accepts vulnerability details as input, processes with risk assessment algorithms, and outputs a structured analysis summary for prioritized mitigation.", + "category": "monitoring", + "parameters": [ + { + "name": "vulnerabilityData", + "type": "object", + "description": "A structured object containing vulnerability details such as ID, description, affected software, CVSS scores, and detection timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeExploitability", + "type": "boolean", + "description": "Whether to include potential exploitability and attack vector analysis in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "Minimum severity score threshold (e.g., CVSS base score) to report vulnerabilities. Vulnerabilities below this threshold will be deprioritized.", + "required": false, + "defaultValue": "4.0" + }, + { + "name": "remediationGuidelines", + "type": "boolean", + "description": "Flag to include remediation recommendations or patching instructions for analyzed vulnerabilities.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired format of the analysis report output. Options include 'summary', 'detailed', and 'json'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing vulnerability severity classification, affected components, risk scores, exploitability insights (if selected), and recommended remediation steps, structured according to the chosen report format." + }, + "aiAgent": { + "useCase": "Use this tool when processing raw vulnerability scan data to perform risk-based analysis and generate actionable insights for system administrators or security teams to prioritize patching and mitigation efforts. It helps synthesize raw vulnerability inputs into structured, prioritized reports.", + "limitations": "Does not perform actual vulnerability scanning or detection; requires input data from external scanners or sources. It does not fix vulnerabilities or provide live monitoring capabilities.", + "examples": [ + "Analyze vulnerability scan output to prioritize high risk issues.", + "Generate a detailed JSON report including remediation steps for known vulnerabilities found in a software inventory.", + "Summarize critical vulnerabilities exceeding a risk threshold with exploitability analysis." + ] + }, + "tags": [ + "security", + "vulnerability", + "monitoring", + "risk assessment", + "analysis", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityData\":{\"id\":\"CVE-2023-1234\",\"description\":\"Buffer overflow in XYZ component\",\"affectedSoftware\":[\"XYZ v1.2\"],\"cvssScore\":7.8,\"discoveredDate\":\"2024-05-20\"},\"includeExploitability\":true,\"riskThreshold\":5.0,\"remediationGuidelines\":true,\"reportFormat\":\"json\"}", + "description": "Analyze a single CVE vulnerability with exploitability info and remediation, filtering out low risk issues below CVSS 5.0, returning JSON detailed report." + }, + { + "inputJson": "{\"vulnerabilityData\":{\"id\":\"VULN-789\",\"description\":\"Outdated library usage\",\"affectedSoftware\":[\"LibABC v0.9\"],\"cvssScore\":3.5,\"discoveredDate\":\"2024-04-15\"},\"includeExploitability\":false,\"riskThreshold\":4.0,\"remediationGuidelines\":false,\"reportFormat\":\"summary\"}", + "description": "Analyze a low risk vulnerability but exclude exploitability and remediation details, requesting a summary report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "monitoring.analyzeMarkdown", + "description": "Analyzes Markdown-formatted logs or reports to extract key monitoring metrics and alerts. Accepts Markdown text input, processes headings, code blocks, and tables to identify performance summaries, error counts, and uptime statistics, producing a structured JSON report summarizing system performance indicators.", + "category": "monitoring", + "parameters": [ + { + "name": "markdownText", + "type": "string", + "description": "The Markdown-formatted text containing logs, reports, or monitoring data to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractSections", + "type": "array", + "description": "List of Markdown section titles (headings) to focus analysis on, e.g., ['Errors', 'Performance']. If empty, analyzes entire document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTables", + "type": "boolean", + "description": "Flag to enable extraction and parsing of Markdown tables for metrics data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectCodeBlocks", + "type": "boolean", + "description": "Flag to enable parsing of code blocks that may include JSON or log snippets for more detailed metric extraction.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum number of characters for the summary section of the output report.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object containing extracted metrics such as error counts, uptime percentages, performance stats, and a textual summary derived from the Markdown input." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze system or application monitoring data that is formatted and stored in Markdown documents, such as daily status reports or exported logs. It helps convert unstructured Markdown content into structured metrics for further automated monitoring or alert analysis.", + "limitations": "Cannot interpret non-standard or poorly formatted Markdown; limited to extracting only explicitly represented data (headings, tables, code blocks). Does not perform real-time monitoring or handle binary attachment content.", + "examples": [ + "Extract error and performance metrics from a weekly monitoring report in Markdown.", + "Summarize uptime and incident counts from Markdown logs containing multiple sections and tables.", + "Parse a Markdown document with JSON code blocks representing metrics for detailed analysis." + ] + }, + "tags": [ + "monitoring", + "analysis", + "markdown", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"markdownText\": \"# System Monitoring Report\\n\\n## Errors\\n- Total Errors: 15\\n- Critical: 3\\n\\n## Performance\\n| Metric | Value |\\n|--------|-------|\\n| CPU Usage | 75% |\\n| Memory Usage | 68% |\\n\\n## Uptime\\nCode Block:\\n```json\\n{\\\"uptimePercentage\\\": 99.95}\\n```\", \"extractSections\": [\"Errors\", \"Performance\", \"Uptime\"], \"includeTables\": true, \"detectCodeBlocks\": true, \"maxSummaryLength\": 200}", + "description": "Analyzing a sample system report in Markdown with sections Errors, Performance and Uptime including tables and JSON code block to extract key metrics." + }, + { + "inputJson": "{\"markdownText\": \"# Daily App Monitoring\\n## Alerts\\n- Alerts triggered: 7\\n## Response Times\\nAverage response time: 250ms\", \"extractSections\": [], \"includeTables\": false, \"detectCodeBlocks\": false, \"maxSummaryLength\": 150}", + "description": "Processing a daily monitoring Markdown document focusing on alerts and response times without tables or code blocks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "monitoring.analyzeAnomaly", + "description": "Analyzes time-series performance metrics or log data to detect and characterize anomalies such as spikes, drops, or unusual patterns. Accepts raw metrics or log events with timestamps and optionally metadata, then applies statistical or machine learning methods to flag anomalies and returns detailed reports with anomaly type, severity, and timeframe.", + "category": "monitoring", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Time-series data points or log entries to analyze for anomalies, each with timestamp and value or event info.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataType", + "type": "string", + "description": "Type of input data: 'metrics' for numerical time-series or 'logs' for event-based logs.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "number", + "description": "Optional rolling window size in minutes for localized anomaly detection; if omitted, uses entire dataset period.", + "required": false, + "defaultValue": "" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Anomaly detection sensitivity from 0 to 1; higher values detect more anomalies but may increase false positives.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "threshold", + "type": "number", + "description": "Minimum anomaly score or deviation threshold to report an anomaly, used to filter out noise.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of anomalies to return; defaults to all detected anomalies if not specified.", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "If true, includes contextual metadata such as correlated metrics or log sources in anomaly report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected anomalies with details: timestamp range, anomaly type, severity score, and optional context information." + }, + "aiAgent": { + "useCase": "Use this tool when needing automated detection and detailed analysis of abnormal behaviors or deviations in collected system or application monitoring data to enable proactive troubleshooting or alerting.", + "limitations": "Cannot guarantee detection of all anomaly types, especially if data is sparse or highly noisy; does not perform root cause analysis or automatic remediation.", + "examples": [ + "Detect anomalies in CPU usage metrics over the past 24 hours.", + "Analyze error logs for unusual spikes in failure events.", + "Identify sudden drops in web traffic with explanation context." + ] + }, + "tags": [ + "monitoring", + "anomaly-detection", + "time-series", + "logs", + "metrics", + "performance" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-04-25T12:00:00Z\",\"value\":50},{\"timestamp\":\"2024-04-25T12:01:00Z\",\"value\":200},{\"timestamp\":\"2024-04-25T12:02:00Z\",\"value\":55}],\"dataType\":\"metrics\",\"timeWindow\":5,\"sensitivity\":0.8,\"threshold\":0.6,\"maxResults\":10,\"includeContext\":true}", + "description": "Analyze a short time-series CPU usage metric data with a spike anomaly at 12:01." + }, + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-04-25T10:00:00Z\",\"event\":\"ERROR Database connection timeout\"},{\"timestamp\":\"2024-04-25T10:05:00Z\",\"event\":\"ERROR Database connection timeout\"},{\"timestamp\":\"2024-04-25T10:10:00Z\",\"event\":\"INFO User login success\"}],\"dataType\":\"logs\",\"sensitivity\":0.7}", + "description": "Analyze log events to detect unusual error spikes over a period." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "monitoring.analyzeYAML", + "description": "Analyzes YAML configuration or monitoring data files to extract key metrics, validate structure, and summarize performance-related values. Accepts YAML input as string or file path, processes it to detect errors, extract specified keys, and outputs a structured report with analysis results and validation status.", + "category": "monitoring", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "YAML content as a string to analyze. Either yamlContent or yamlFilePath must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "yamlFilePath", + "type": "string", + "description": "Path to a YAML file to load and analyze. Either yamlFilePath or yamlContent must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "keysToExtract", + "type": "array", + "description": "List of YAML keys (dot notation supported) to extract values from for analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "validateStructure", + "type": "boolean", + "description": "Whether to validate YAML structure and report syntax errors.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth of YAML parsing for nested structures. Prevents extremely deep recursion.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing validation status, error messages if any, extracted key-value pairs, summary statistics, and overall analysis notes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to parse and analyze YAML files or strings commonly used in monitoring configurations, performance metrics, or deployment data. It helps quickly identify syntax errors, extract specific information, and summarize key monitoring parameters without manual inspection.", + "limitations": "This tool does not execute or interpret programming logic embedded within YAML. It cannot analyze binary or non-YAML formatted files. Its analysis is limited to structure, key extraction, and simple summaries, not complex inference.", + "examples": [ + "Analyze a YAML string containing monitoring metrics and extract CPU and memory usage values.", + "Load a YAML configuration file from disk and validate its syntax and structure.", + "Extract specific nested keys like 'services.web.response_time' from a YAML string for performance monitoring." + ] + }, + "tags": [ + "monitoring", + "YAML", + "analysis", + "validation", + "configuration", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"services:\\n web:\\n response_time: 120\\n cpu_usage: 0.75\\n memory_usage: 512\\n db:\\n response_time: 200\\n cpu_usage: 0.6\",\"keysToExtract\":[\"services.web.cpu_usage\",\"services.db.response_time\"],\"validateStructure\":true}", + "description": "Analyze YAML string to validate structure and extract CPU usage for web service and response time for DB." + }, + { + "inputJson": "{\"yamlFilePath\":\"/configs/monitoring.yaml\",\"keysToExtract\":[\"alerts.high_cpu\",\"metrics.memory\"],\"validateStructure\":true,\"maxDepth\":3}", + "description": "Load YAML from file path, validate, extract alert thresholds and memory metrics up to 3 levels deep." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "monitoring.analyzeQuote", + "description": "Analyzes the content and sentiment of a provided textual quote for monitoring communication tone or extracting key themes. Accepts a string quote input, performs sentiment analysis and keyword extraction, and returns a structured summary including sentiment score and main topics.", + "category": "monitoring", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The textual quote to be analyzed for sentiment and key themes.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the quote text for accurate analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Flag indicating whether to perform keyword extraction from the quote.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sentimentModel", + "type": "string", + "description": "Specifies which sentiment analysis model to use (e.g., 'basic', 'advanced').", + "required": false, + "defaultValue": "\"advanced\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment analysis results including sentiment label, confidence score, and an array of extracted keywords with relevance scores." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents that need to monitor communication content, such as analyzing customer feedback quotes, employee statements, or social media snippets to understand sentiment trends and identify important topics for alerts or reporting.", + "limitations": "Does not provide context-aware discourse analysis beyond single quotes; accuracy depends on language and model specified; not designed for large document analysis or multilingual mixed content.", + "examples": [ + "Analyze sentiment of a customer feedback quote to detect polarity and main concerns.", + "Extract key topics and sentiment from an employee's statement for performance monitoring.", + "Monitor social media quotes sentiment to trigger alerts on negative trends." + ] + }, + "tags": [ + "monitoring", + "analysis", + "sentiment", + "keywords", + "text", + "communication", + "feedback" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"I'm really happy with the recent updates, they improved my workflow significantly.\",\"language\":\"en\",\"extractKeywords\":true,\"sentimentModel\":\"advanced\"}", + "description": "Analyze positive customer feedback quote for sentiment and extract key topics." + }, + { + "inputJson": "{\"quoteText\":\"The new system is slow and often crashes, which is frustrating.\",\"language\":\"en\",\"extractKeywords\":true,\"sentimentModel\":\"advanced\"}", + "description": "Analyze negative employee feedback highlighting performance issues." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "monitoring.analyzeExpense", + "description": "This tool analyzes business expense data provided as a list of expense records. It processes the data to identify spending patterns, categorizes expenses by type, detects anomalies such as unusual spikes or outliers, and summarizes total and average expenses per category, returning a detailed report with insights to help optimize cost management.", + "category": "monitoring", + "parameters": [ + { + "name": "expenseData", + "type": "array", + "description": "An array of expense records, each with fields like date, amount, category, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter to analyze expenses within start and end dates (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "categories", + "type": "array", + "description": "Optional list of expense categories to include in the analysis; if empty, all categories are considered.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable detection of anomalous expenses like unusually high amounts compared to historical data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summaryLevel", + "type": "string", + "description": "Granularity of summary report: can be 'category', 'monthly', or 'overall'.", + "required": false, + "defaultValue": "category" + } + ], + "returns": { + "type": "object", + "description": "A structured report including total expenses, average expense, category-wise breakdown, identified anomalies, and spending trends over time." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze detailed expense data to understand spending patterns, identify cost-saving opportunities, and detect unusual or fraudulent expenses across specified categories or time ranges.", + "limitations": "Cannot process unstructured or incomplete expense data; relies on accurate and comprehensive input records. Does not integrate with live financial systems or perform predictive forecasting beyond anomaly detection.", + "examples": [ + "Analyze last quarter expenses across marketing and operations categories to find unusual spikes.", + "Summarize total and average expenses by category for the current fiscal year.", + "Detect anomalous large transactions in expense data for fraud prevention." + ] + }, + "tags": [ + "monitoring", + "expense", + "analysis", + "business", + "financial", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"expenseData\":[{\"date\":\"2024-01-05\",\"amount\":120.50,\"category\":\"Travel\",\"description\":\"Taxi fare\"},{\"date\":\"2024-01-06\",\"amount\":2300.00,\"category\":\"Equipment\",\"description\":\"New laptops\"},{\"date\":\"2024-02-10\",\"amount\":50,\"category\":\"Meals\",\"description\":\"Team lunch\"}],\"dateRange\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-02-28\"},\"categories\":[\"Travel\",\"Meals\"],\"detectAnomalies\":true,\"summaryLevel\":\"category\"}", + "description": "Analyze expenses in Jan and Feb 2024 for Travel and Meals categories with anomaly detection enabled, summarized by category." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "monitoring.downloadVideo", + "description": "This tool downloads video recordings from monitoring systems such as CCTV or application session replays. It accepts input parameters like video source URL, start time, end time, and desired resolution. It processes these inputs to fetch and save the video snippet locally or to cloud storage, returning metadata about the downloaded video file including file path, size, duration, and format.", + "category": "monitoring", + "parameters": [ + { + "name": "videoSourceUrl", + "type": "string", + "description": "URL or identifier of the video source to download from (e.g., CCTV feed URL or session replay endpoint).", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp marking the start time for the video segment to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 timestamp marking the end time for the video segment to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "resolution", + "type": "string", + "description": "Desired resolution for the downloaded video (e.g., '1080p', '720p').", + "required": false, + "defaultValue": "1080p" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Preferred video output format (e.g., 'mp4', 'avi').", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "saveToCloud", + "type": "boolean", + "description": "If true, saves the downloaded video to configured cloud storage instead of local disk.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token if accessing protected video sources.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Metadata about the downloaded video file, including its local or cloud storage path, file size in bytes, video duration in seconds, resolution, and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to retrieve specific segments of video footage from monitoring or security systems for analysis, evidence, or auditing. Common scenarios include downloading CCTV clips around an incident time or fetching session replay videos for performance monitoring.", + "limitations": "Cannot process live streaming video in real-time; only supports downloading recorded video segments. Does not perform video analysis or enhancement. Requires valid access permissions to the video source.", + "examples": [ + "Download CCTV footage from 2024-04-01T10:00:00Z to 2024-04-01T10:15:00Z in 720p.", + "Retrieve application session video from URL with authentication token for specified time range.", + "Save security camera clip in mp4 format to cloud storage instead of local drive." + ] + }, + "tags": [ + "monitoring", + "video", + "download", + "CCTV", + "security", + "sessionReplay" + ], + "examples": [ + { + "inputJson": "{\"videoSourceUrl\":\"https://cctv.example.com/feed1\",\"startTime\":\"2024-04-01T10:00:00Z\",\"endTime\":\"2024-04-01T10:15:00Z\",\"resolution\":\"720p\",\"outputFormat\":\"mp4\",\"saveToCloud\":false}", + "description": "Download 15-minute CCTV footage from specified feed in 720p mp4 format locally." + }, + { + "inputJson": "{\"videoSourceUrl\":\"https://app-monitoring.example.com/sessions/12345/video\",\"startTime\":\"2024-06-15T14:30:00Z\",\"endTime\":\"2024-06-15T14:45:00Z\",\"authToken\":\"Bearer abcdef123456\",\"saveToCloud\":true}", + "description": "Download 15-minute application session replay video using authentication and save it to cloud storage." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "monitoring.uploadVideo", + "description": "Uploads a video file related to system or application performance monitoring to a centralized monitoring server, tagging it with metadata such as timestamp, system ID, and event descriptors. The tool accepts video files in common formats, processes them for metadata extraction, and returns a confirmation including a unique video ID and upload status.", + "category": "monitoring", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local filesystem path to the video file to be uploaded. Supports common video formats like MP4, AVI, MOV.", + "required": true, + "defaultValue": "" + }, + { + "name": "systemId", + "type": "string", + "description": "Identifier of the system or service related to the video recording. Used for organizing and searching uploads.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventTimestamp", + "type": "string", + "description": "Timestamp of the event captured in the video in ISO 8601 format (e.g., 2024-01-15T14:35:00Z).", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of descriptive tags (strings) to categorize the video, such as 'performance', 'error', 'latency spike'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description providing context about the video content or observed issue.", + "required": false, + "defaultValue": "" + }, + { + "name": "compress", + "type": "boolean", + "description": "Flag indicating whether the video should be compressed before uploading to reduce file size.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload confirmation details including a unique video ID, upload status, and the server URL where the video is stored." + }, + "aiAgent": { + "useCase": "Use this tool when you have recorded videos that capture system or application behavior during performance monitoring, error incidents, or outages that need to be stored centrally for analysis or auditing. The tool helps document real-time scenarios with rich media, enabling visual inspection alongside log data.", + "limitations": "This tool does not perform video content analysis, transcription, or automatic event detection within the video. It only uploads and tags video files.", + "examples": [ + "Upload a video caught from a monitoring camera showing a server room during a network outage.", + "Upload a video recording of screen activity during a high latency spike for later review.", + "Upload a video with metadata tagging it as related to database performance issues." + ] + }, + "tags": [ + "monitoring", + "upload", + "video", + "performance", + "system", + "media" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/var/logs/videos/server-room-2024-04-01.mp4\",\"systemId\":\"server-room-1\",\"eventTimestamp\":\"2024-04-01T16:20:00Z\",\"tags\":[\"network\",\"outage\"],\"description\":\"Video capturing network outage effects in server room 1\",\"compress\":true}", + "description": "Upload a compressed network outage video from server room 1 with appropriate tags and description." + }, + { + "inputJson": "{\"videoFilePath\":\"C:/monitoring/screens/latency-spike.mov\",\"systemId\":\"webapp-frontend\",\"eventTimestamp\":\"2024-04-02T09:15:30Z\",\"tags\":[\"latency\",\"frontend\"]}", + "description": "Upload a video recording of frontend latency spike without compression and basic tags only." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "monitoring.renderParagraph", + "description": "Renders a formatted paragraph summarizing system monitoring metrics for a specified time range. Accepts metrics data and configuration options to generate a human-readable paragraph highlighting key performance indicators and anomalies, outputting a plain text summary suitable for reports or dashboards.", + "category": "monitoring", + "parameters": [ + { + "name": "metricsData", + "type": "object", + "description": "An object containing system or application performance metrics and their values collected over time. Required for evaluation and summarization.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "string", + "description": "A description or label for the time period the metrics cover, e.g., 'last 24 hours'. Helps contextualize the paragraph. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "highlightAnomalies", + "type": "boolean", + "description": "Flag indicating whether to detect and emphasize anomalies or unusual spikes in the metrics within the given data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length in characters for the output paragraph. Helps keep the summary concise. Optional, default is 500.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "string", + "description": "A formatted text paragraph summarizing the monitoring metrics with context and analysis, suitable for inclusion in reports or automated alerts." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert complex metrics data from system monitoring into human-readable performance summaries. Ideal for generating natural language insights in dashboards, reports, or alerts to help users quickly understand system health.", + "limitations": "This tool does not perform deep root cause analysis or visualize data graphically. It only generates text summaries based on provided metrics data and simple anomaly highlighting.", + "examples": [ + "Generate a performance summary paragraph for CPU and memory usage over the last 12 hours.", + "Create a concise summary paragraph highlighting any unusual spikes in network traffic in the past day.", + "Summarize key performance indicators for database response time and error rates for the last week in a human-readable paragraph." + ] + }, + "tags": [ + "monitoring", + "rendering", + "summary", + "metrics", + "performance", + "reporting", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"metricsData\":{\"cpuUsage\":65,\"memoryUsage\":72,\"diskIO\":120},\"timeRange\":\"last 24 hours\",\"highlightAnomalies\":true,\"maxLength\":400}", + "description": "Summarize CPU, memory, and disk I/O metrics for the last 24 hours, highlighting anomalies, with a max paragraph length of 400 chars." + }, + { + "inputJson": "{\"metricsData\":{\"networkTraffic\":2500,\"errorRate\":0.02},\"timeRange\":\"last 7 days\",\"highlightAnomalies\":false}", + "description": "Generate a summary paragraph of network traffic and error rate metrics for the past week without highlighting anomalies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "monitoring.sendThread", + "description": "Sends monitoring data as a communication thread to a specified monitoring endpoint. Accepts thread metadata and messages, processes them into a structured format, and dispatches them to the target system for tracking application or system performance.", + "category": "monitoring", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier for the thread to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "Array of message objects containing timestamped monitoring events or logs to include in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEndpoint", + "type": "string", + "description": "URL of the monitoring system endpoint where the thread data should be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token for secure communication with the target monitoring endpoint.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the thread data, e.g., 'low', 'normal', 'high'. Defaults to 'normal'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "Result object indicating success status, message, and any error details if sending fails." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to send a structured collection of monitoring messages or events grouped as a thread to an external monitoring service for real-time or batch processing. Common in distributed systems or application performance monitoring scenarios.", + "limitations": "Does not process or analyze message content; assumes input messages are correctly formatted. Does not retry sending on failure or queue messages locally.", + "examples": [ + "Send a performance metrics thread to a monitoring API endpoint.", + "Dispatch error log events collected over a period as a thread to a centralized logging server.", + "Transmit a high-priority system health check thread to a monitoring dashboard." + ] + }, + "tags": [ + "monitoring", + "communication", + "thread", + "send", + "performance", + "logging" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"thread123\",\"messages\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"level\":\"info\",\"content\":\"CPU usage 55%\"},{\"timestamp\":\"2024-06-01T12:01:00Z\",\"level\":\"warn\",\"content\":\"Memory usage high\"}],\"targetEndpoint\":\"https://monitoring.example.com/api/threads\",\"authToken\":\"abcdef123456\",\"priority\":\"high\"}", + "description": "Send a high priority thread with CPU and memory usage messages to the monitoring endpoint with authentication." + }, + { + "inputJson": "{\"threadId\":\"thread456\",\"messages\":[{\"timestamp\":\"2024-06-01T14:00:00Z\",\"level\":\"error\",\"content\":\"Disk failure detected\"}],\"targetEndpoint\":\"https://logs.example.com/ingest\",\"priority\":\"normal\"}", + "description": "Send an error event thread without authentication token to a log ingestion endpoint." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "monitoring.sendReply", + "description": "This tool sends a reply message to a specified system or application monitoring alert or query. It accepts inputs such as alertId, message content, recipient system identifier, and optional metadata. It processes the inputs to format and dispatch the reply appropriately and returns a status confirming if the reply was successfully sent or if any errors occurred.", + "category": "monitoring", + "parameters": [ + { + "name": "alertId", + "type": "string", + "description": "The unique identifier of the alert or monitoring query to which the reply is sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The reply message content to send back regarding the alert or monitoring notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Identifier of the system or component recipient of the reply, such as a monitoring server or application module.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional information such as timestamps, severity, or context to include with the reply.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, including success boolean, a message, and optional error details." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to respond to monitoring alerts or queries by sending structured replies back to the monitoring system or application modules to confirm receipt, provide updates, or answer questions. It is useful in automating communication in incident handling or health check workflows.", + "limitations": "This tool cannot trigger alerts on its own or perform direct investigation of the alerts; it only sends reply messages. It does not support asynchronous messaging protocols beyond the defined parameters.", + "examples": [ + "Send a confirmation reply acknowledging receipt of alert ID 'A123' to the monitoring server", + "Respond to a system query with a status update message including metadata timestamps", + "Send an error message reply to an application component for a given alert" + ] + }, + "tags": [ + "monitoring", + "communication", + "alerts", + "reply", + "system", + "automation" + ], + "examples": [ + { + "inputJson": "{\"alertId\":\"alert-4567\",\"message\":\"Acknowledged. Investigating the issue.\",\"recipientId\":\"monitoringServer01\",\"metadata\":{\"timestamp\":\"2024-06-01T14:22:00Z\",\"severity\":\"high\"}}", + "description": "Reply acknowledging high severity alert with investigation message." + }, + { + "inputJson": "{\"alertId\":\"cpu-usage-890\",\"message\":\"CPU usage back to normal.\",\"recipientId\":\"appModule42\"}", + "description": "Send a status update reply indicating CPU usage normalization to specific app module." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "monitoring.draftInvoice", + "description": "Generates a draft invoice document based on monitored resource usage and billing rates. Accepts resource consumption data, corresponding rates, and client details to calculate totals and produce a structured invoice draft suitable for review and export.", + "category": "monitoring", + "parameters": [ + { + "name": "clientId", + "type": "string", + "description": "Unique identifier for the client to whom the invoice will be issued.", + "required": true, + "defaultValue": "" + }, + { + "name": "billingPeriodStart", + "type": "string", + "description": "Start date of the billing period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "billingPeriodEnd", + "type": "string", + "description": "End date of the billing period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceUsage", + "type": "array", + "description": "Array of usage entries, each with resourceType, quantity, and unit.", + "required": true, + "defaultValue": "" + }, + { + "name": "rateCard", + "type": "object", + "description": "Mapping of resourceType to billing rate per unit.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for monetary values (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeTax", + "type": "boolean", + "description": "Whether to include tax calculations in the invoice totals.", + "required": false, + "defaultValue": "false" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a decimal (e.g., 0.07 for 7%). Used if includeTax is true.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "A draft invoice object containing client info, billing period, line items with resource usage and costs, subtotal, tax amount (if applicable), and total amount due." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to prepare an invoice draft based on monitored system or service usage data, billing rates, and client information. It helps automate billing document creation for usage-based pricing models within monitoring platforms, enabling rapid, accurate invoicing drafts for review or further processing.", + "limitations": "It does not handle payment processing, invoice dispatch, or adjustments beyond the provided usage and rates. It assumes valid and complete input data for resource usage and rates.", + "examples": [ + "Create a draft invoice for client ABC123 for resource usage from 2024-05-01 to 2024-05-31, using provided rates and including tax.", + "Draft a usage-based invoice for client ID X789 covering last month with no tax.", + "Generate a draft invoice for client 555 with given resource consumption and rate card for the billing period June 1 to June 30." + ] + }, + "tags": [ + "monitoring", + "billing", + "invoice", + "automation", + "resource-usage", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"clientId\":\"client123\",\"billingPeriodStart\":\"2024-05-01\",\"billingPeriodEnd\":\"2024-05-31\",\"resourceUsage\":[{\"resourceType\":\"CPU_Hours\",\"quantity\":150},{\"resourceType\":\"Storage_GB\",\"quantity\":2000}],\"rateCard\":{\"CPU_Hours\":0.05,\"Storage_GB\":0.01},\"currency\":\"USD\",\"includeTax\":true,\"taxRate\":0.07}", + "description": "Draft invoice for client123's CPU and storage usage in May 2024 with 7% tax" + }, + { + "inputJson": "{\"clientId\":\"enterprise456\",\"billingPeriodStart\":\"2024-04-01\",\"billingPeriodEnd\":\"2024-04-30\",\"resourceUsage\":[{\"resourceType\":\"Data_Transfer_GB\",\"quantity\":500}],\"rateCard\":{\"Data_Transfer_GB\":0.12},\"currency\":\"EUR\",\"includeTax\":false,\"taxRate\":0}", + "description": "Draft invoice for enterprise456's data transfer usage in April 2024 with no tax" + }, + { + "inputJson": "{\"clientId\":\"smallbiz789\",\"billingPeriodStart\":\"2024-06-01\",\"billingPeriodEnd\":\"2024-06-30\",\"resourceUsage\":[{\"resourceType\":\"API_Calls\",\"quantity\":100000}],\"rateCard\":{\"API_Calls\":0.0001},\"currency\":\"USD\",\"includeTax\":true,\"taxRate\":0.05}", + "description": "Draft invoice for smallbiz789's API call usage in June 2024 including 5% tax" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "monitoring.buildQueue", + "description": "Creates and configures a monitoring data queue that buffers and forwards metrics, logs, or events from diverse system sources to centralized monitoring services. Accepts queue configuration parameters, source data types, and optional processing rules. Outputs a queue object with status and metadata for integration into monitoring pipelines.", + "category": "monitoring", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "Unique identifier for the monitoring queue to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceTypes", + "type": "array", + "description": "Types of monitoring data sources to be collected, e.g., ['metrics','logs','events'].", + "required": true, + "defaultValue": "[\"metrics\"]" + }, + { + "name": "bufferSize", + "type": "number", + "description": "Maximum number of items the queue can hold before flushing or processing.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "flushIntervalSeconds", + "type": "number", + "description": "Time interval in seconds after which the queue automatically flushes its contents downstream.", + "required": false, + "defaultValue": "60" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration object defining retry behavior when forwarding data (e.g., maxRetries and backoffSeconds).", + "required": false, + "defaultValue": "" + }, + { + "name": "encryptionEnabled", + "type": "boolean", + "description": "Indicates whether the queue should encrypt data at rest and in transit.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags to categorize or label the queue for monitoring or filtering.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created queue with its configuration, status ('initialized', 'running'), and metadata such as item counts, creation timestamps, and any error states." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to set up a managed buffering and forwarding mechanism within a monitoring infrastructure to handle diverse streaming data (metrics, logs, events). It helps design the pipeline segment responsible for collecting, temporarily storing, and reliably transmitting monitoring data, ensuring scalability and fault tolerance.", + "limitations": "This tool does not implement the actual data transmission protocols, external system integrations, or data analysis on queue contents. It only configures and builds the queue infrastructure for monitoring data.", + "examples": [ + "Create a monitoring queue named 'appMetricsQueue' that collects metrics and events with a buffer size of 500 and flushes every 30 seconds.", + "Build a logs-only queue with encryption enabled and retry policy allowing 3 retries with 10 seconds backoff.", + "Set up a queue tagged for 'production' to collect metrics with default buffering parameters." + ] + }, + "tags": [ + "monitoring", + "queue", + "infrastructure", + "buffering", + "metrics", + "logs", + "events" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"appMetricsQueue\",\"sourceTypes\":[\"metrics\",\"events\"],\"bufferSize\":500,\"flushIntervalSeconds\":30}", + "description": "Create a queue named 'appMetricsQueue' for metrics and events with moderate buffer size and frequent flush." + }, + { + "inputJson": "{\"queueName\":\"secureLogsQueue\",\"sourceTypes\":[\"logs\"],\"encryptionEnabled\":true,\"retryPolicy\":{\"maxRetries\":3,\"backoffSeconds\":10}}", + "description": "Build a logs queue with encryption and a retry policy for reliable transmission." + }, + { + "inputJson": "{\"queueName\":\"prodMetrics\",\"sourceTypes\":[\"metrics\"],\"tags\":[\"production\",\"critical\"]}", + "description": "Set up a metrics queue labeled for production use with default buffering and flush settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "monitoring.buildCluster", + "description": "Builds a monitoring cluster by provisioning and configuring multiple nodes with monitoring agents. Accepts infrastructure specifications such as node count, node type, and monitoring stack configuration. Outputs cluster deployment status and connection details for centralized monitoring.", + "category": "monitoring", + "parameters": [ + { + "name": "nodeCount", + "type": "number", + "description": "Number of nodes to include in the monitoring cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeType", + "type": "string", + "description": "Type or specification of each node (e.g., VM size, instance type).", + "required": true, + "defaultValue": "" + }, + { + "name": "monitoringStack", + "type": "string", + "description": "Type of monitoring stack to deploy (e.g., Prometheus, Grafana, ELK).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region to deploy the cluster.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "enableHighAvailability", + "type": "boolean", + "description": "Whether to configure the cluster for high availability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to tag the cluster infrastructure resources.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns the deployment status, cluster endpoint URLs, node details, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision and configure a scalable monitoring cluster infrastructure automatically, based on user or system input parameters detailing node counts, types, monitoring tools, and regional preferences. It streamlines complex deployment tasks into a single request.", + "limitations": "Does not handle ongoing cluster management or scaling after initial deployment, nor detailed security configurations beyond basic tagging and region selection. Assumes underlying infrastructure APIs are accessible and permissions are granted.", + "examples": [ + "Build a monitoring cluster with 5 medium-sized nodes in region us-east-1 using Prometheus stack.", + "Deploy a high availability Grafana monitoring cluster with 3 large nodes tagged with environment: production.", + "Create a 2-node ELK stack cluster in eu-west-2 for log monitoring." + ] + }, + "tags": [ + "monitoring", + "infrastructure", + "cluster", + "deployment", + "automation", + "system", + "performance" + ], + "examples": [ + { + "inputJson": "{\"nodeCount\":5,\"nodeType\":\"medium\",\"monitoringStack\":\"Prometheus\",\"region\":\"us-east-1\",\"enableHighAvailability\":false,\"tags\":{\"project\":\"alpha\"}}", + "description": "Build a Prometheus monitoring cluster with 5 medium nodes in US East 1 region without HA." + }, + { + "inputJson": "{\"nodeCount\":3,\"nodeType\":\"large\",\"monitoringStack\":\"Grafana\",\"region\":\"us-west-2\",\"enableHighAvailability\":true,\"tags\":{\"environment\":\"production\"}}", + "description": "Deploy a high availability Grafana cluster with 3 large nodes in US West 2 tagged for production environment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "monitoring.buildPipeline", + "description": "Constructs a monitoring data pipeline by accepting source configurations, transformation rules, and output destinations. Processes inputs to generate a deployable pipeline configuration for collecting, transforming, and routing telemetry data continuously.", + "category": "monitoring", + "parameters": [ + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration object defining data sources to monitor, including type, endpoints, and credentials.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformRules", + "type": "array", + "description": "Array of transformation rules to apply to raw data, such as filtering, aggregation, or enrichment.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputDestinations", + "type": "array", + "description": "List of output target configurations (e.g., database, monitoring service end-points) where processed data will be sent.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "pipelineName", + "type": "string", + "description": "Unique name identifier for the monitoring pipeline to build.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableAlerting", + "type": "boolean", + "description": "Flag to enable alerting based on certain data conditions within the pipeline.", + "required": false, + "defaultValue": "false" + }, + { + "name": "loggingLevel", + "type": "string", + "description": "Logging verbosity level for pipeline runtime diagnostics (e.g., ERROR, WARN, INFO, DEBUG).", + "required": false, + "defaultValue": "INFO" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the complete pipeline configuration, including validated sources, transformations, outputs, and metadata necessary for deployment." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when tasked with setting up or updating observability pipelines for system or application performance monitoring, especially to automate pipeline definitions from high-level parameters.", + "limitations": "This tool does not deploy or run the pipeline; it only builds the configuration. It cannot auto-discover sources without explicit configuration. It does not handle complex orchestration beyond pipeline config generation.", + "examples": [ + "Build a monitoring pipeline for web server logs and CPU metrics with filters and outputs to a cloud monitoring service.", + "Create a performance monitoring pipeline that aggregates application metrics and sends them to a database with alerting enabled.", + "Generate a pipeline configuration to collect container metrics with debug logging enabled." + ] + }, + "tags": [ + "monitoring", + "pipeline", + "data collection", + "observability", + "performance", + "automation", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"sourceConfig\":{\"type\":\"http\",\"endpoint\":\"http://localhost:8080/metrics\",\"credentials\":{\"token\":\"abc123\"}},\"transformRules\":[{\"type\":\"filter\",\"field\":\"status\",\"value\":\"200\"},{\"type\":\"aggregate\",\"method\":\"avg\",\"field\":\"response_time\"}],\"outputDestinations\":[{\"type\":\"cloudService\",\"name\":\"Datadog\",\"apiKey\":\"key123\"}],\"pipelineName\":\"webServerMetricsPipeline\",\"enableAlerting\":true,\"loggingLevel\":\"INFO\"}", + "description": "Builds a pipeline collecting HTTP endpoint metrics filtered by status 200, averaging response time, sending data to Datadog with alerting enabled." + }, + { + "inputJson": "{\"sourceConfig\":{\"type\":\"system\",\"metrics\":[\"cpu\",\"memory\"]},\"transformRules\":[],\"outputDestinations\":[{\"type\":\"database\",\"connectionString\":\"Server=127.0.0.1;Database=metricsDb;User=admin;Password=pass;\"}],\"pipelineName\":\"sysMetricsPipeline\",\"enableAlerting\":false}", + "description": "Creates a pipeline collecting CPU and memory system metrics with no transformation, outputting directly to a local database." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "monitoring.buildWorkflow", + "description": "Constructs a monitoring workflow by accepting configuration inputs like data sources, monitoring rules, alert conditions, and notification channels. Processes these inputs to build and output a structured monitoring workflow definition in JSON format ready for deployment or integration with monitoring systems.", + "category": "monitoring", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of data source identifiers (e.g., server logs, metrics endpoints) to be included in the monitoring workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "monitoringRules", + "type": "array", + "description": "Array of rule objects defining conditions or thresholds to evaluate incoming data for alerts.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertConditions", + "type": "object", + "description": "Defines how alerts are triggered based on rule evaluations, such as aggregation or severity filters.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "notificationChannels", + "type": "array", + "description": "Methods to notify stakeholders when alerts occur, e.g., email, SMS, Slack channels.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "workflowName", + "type": "string", + "description": "Descriptive name for the monitoring workflow for identification and reference.", + "required": false, + "defaultValue": "\"New Monitoring Workflow\"" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag to indicate if the workflow should be activated immediately after creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON object representing the complete monitoring workflow with data sources, rules, alerts, and notifications set up for execution." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assemble a comprehensive monitoring workflow from multiple data inputs, rules, and alerts to systematize performance monitoring and automate alerting processes. Ideal for dynamically generating monitoring setups based on user requirements.", + "limitations": "This tool does not implement real-time monitoring or alert dispatching; it constructs workflows which need to be deployed to monitoring platforms separately.", + "examples": [ + "Build a monitoring workflow that monitors CPU and memory metrics with alerts above thresholds and sends notifications to Slack.", + "Create a workflow to watch web server logs for error spikes and notify the on-call team via SMS and email.", + "Generate a disabled monitoring workflow template with rules for database query latency and response errors." + ] + }, + "tags": [ + "monitoring", + "workflow", + "automation", + "alerts", + "performance", + "notification" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[\"cpuMetrics\",\"memoryMetrics\"],\"monitoringRules\":[{\"name\":\"HighCPUUsage\",\"metric\":\"cpu_usage\",\"threshold\":90,\"operator\":\"greater_than\"},{\"name\":\"HighMemoryUsage\",\"metric\":\"memory_used_percent\",\"threshold\":80,\"operator\":\"greater_than\"}],\"alertConditions\":{\"severity\":\"critical\"},\"notificationChannels\":[\"slack:#devops-alerts\"],\"workflowName\":\"Resource Usage Alerts\",\"enabled\":true}", + "description": "Workflow for CPU and Memory monitoring with critical alerts sent to Slack." + }, + { + "inputJson": "{\"dataSources\":[\"webServerLogs\"],\"monitoringRules\":[{\"name\":\"ErrorSpike\",\"metric\":\"error_count\",\"threshold\":50,\"operator\":\"greater_than\"}],\"notificationChannels\":[\"email:ops-team@example.com\",\"sms:+1234567890\"],\"workflowName\":\"Webserver Error Monitoring\",\"enabled\":true}", + "description": "Monitor web server logs for error spikes with notifications to email and SMS." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "monitoring.generateConversion", + "description": "Generates conversion analytics from monitored event data by processing user interactions and goal completions within specified time frames and filters. Accepts raw event logs and configuration parameters, processes conversion funnel steps, and outputs detailed conversion rates and insights for performance monitoring and optimization.", + "category": "monitoring", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of event objects representing user interactions with timestamps and event types; required input for conversion analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "funnelSteps", + "type": "array", + "description": "Ordered list of event names representing the conversion funnel steps to track and analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted datetime string indicating the start of the time range for conversion analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted datetime string indicating the end of the time range for conversion analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentFilters", + "type": "object", + "description": "Object containing key-value pairs to filter events by user segments or attributes (e.g., country, device type).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDropOffs", + "type": "boolean", + "description": "Flag indicating whether to include drop-off metrics between funnel steps in the output; defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing total users, completion counts per funnel step, conversion rates between steps, drop-off statistics (if requested), and summary insights to support performance monitoring." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze user conversion behavior from raw monitoring event data by generating detailed conversion funnel metrics. Ideal for system and application performance monitoring scenarios that require understanding where users drop off and conversion optimization opportunities.", + "limitations": "Does not perform real-time event tracking or data collection; requires pre-collected event data. Conversion definitions must be pre-specified; cannot infer funnel steps automatically.", + "examples": [ + "Generate conversion rates for signup funnel steps between specific dates.", + "Analyze drop-offs in checkout funnel filtered by mobile users.", + "Summarize overall conversion performance for last month without segmentation." + ] + }, + "tags": [ + "monitoring", + "analytics", + "conversion", + "funnel", + "performance", + "user-behavior" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"event\":\"page_view\",\"userId\":\"user1\"},{\"timestamp\":\"2024-05-01T10:05:00Z\",\"event\":\"signup_start\",\"userId\":\"user1\"},{\"timestamp\":\"2024-05-01T10:10:00Z\",\"event\":\"signup_complete\",\"userId\":\"user1\"},{\"timestamp\":\"2024-05-02T11:00:00Z\",\"event\":\"page_view\",\"userId\":\"user2\"},{\"timestamp\":\"2024-05-02T11:03:00Z\",\"event\":\"signup_start\",\"userId\":\"user2\"}],\"funnelSteps\":[\"page_view\",\"signup_start\",\"signup_complete\"],\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-03T00:00:00Z\",\"includeDropOffs\":true}", + "description": "Analyze a signup funnel between May 1 and May 3, including drop-off metrics between steps." + }, + { + "inputJson": "{\"eventData\":[{\"timestamp\":\"2024-06-01T08:00:00Z\",\"event\":\"product_view\",\"userId\":\"user3\",\"device\":\"mobile\"},{\"timestamp\":\"2024-06-01T08:05:00Z\",\"event\":\"add_to_cart\",\"userId\":\"user3\",\"device\":\"mobile\"}],\"funnelSteps\":[\"product_view\",\"add_to_cart\",\"purchase\"],\"segmentFilters\":{\"device\":\"mobile\"}}", + "description": "Generate conversion analytics for mobile device users only, tracking product view to add to cart." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "monitoring.generateDiagram", + "description": "Generates visual diagrams representing system or application performance metrics over time. Accepts input data such as logs or performance counters, processes and organizes it according to specified performance aspects, and outputs customizable visual diagrams (e.g., line charts, bar charts) in image formats to aid analysis and troubleshooting.", + "category": "monitoring", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured performance data including metrics and timestamps to visualize. Required keys depend on the monitored system (e.g., CPU usage, memory, requests per second).", + "required": true, + "defaultValue": "" + }, + { + "name": "metricsToInclude", + "type": "array", + "description": "List of metric names to include in the diagram (e.g., [\"cpuUsage\", \"memoryUsage\"]). If empty or omitted, all metrics are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying the start and end timestamps (ISO 8601 strings) of the data range to visualize. If omitted, full data range is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to generate, e.g., \"line\", \"bar\", \"stackedArea\". Defaults to \"line\".", + "required": false, + "defaultValue": "line" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format, e.g., \"png\", \"svg\". Defaults to \"png\".", + "required": false, + "defaultValue": "png" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to display on the diagram.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the diagram image encoded as a base64 string and metadata such as width, height, and output format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize performance metrics data to identify trends, bottlenecks, or anomalies in system or application behavior. It helps translate raw data into intuitive diagrams for monitoring dashboards or reports.", + "limitations": "Cannot generate real-time streaming diagrams; inputData must be pre-collected. Does not analyze or interpret the metrics beyond visualization.", + "examples": [ + "Generate a line chart showing CPU and memory usage over the last 24 hours.", + "Create a stacked area chart diagram for request and error counts for last week system logs.", + "Produce a PNG image diagram of disk IO rates focusing on peak usage periods." + ] + }, + "tags": [ + "monitoring", + "performance", + "visualization", + "diagram", + "metrics", + "system", + "application" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"cpuUsage\":[{\"timestamp\":\"2024-06-01T10:00:00Z\",\"value\":20},{\"timestamp\":\"2024-06-01T11:00:00Z\",\"value\":35}],\"memoryUsage\":[{\"timestamp\":\"2024-06-01T10:00:00Z\",\"value\":2048},{\"timestamp\":\"2024-06-01T11:00:00Z\",\"value\":2560}]},\"metricsToInclude\":[\"cpuUsage\",\"memoryUsage\"],\"timeRange\":{\"start\":\"2024-06-01T09:00:00Z\",\"end\":\"2024-06-01T12:00:00Z\"},\"diagramType\":\"line\",\"outputFormat\":\"png\",\"title\":\"CPU and Memory Usage - Morning\"}", + "description": "Generate a line chart PNG diagram showing CPU and memory usage from 9AM to noon on June 1st, 2024." + }, + { + "inputJson": "{\"inputData\":{\"requests\":[{\"timestamp\":\"2024-05-25T00:00:00Z\",\"value\":1000},{\"timestamp\":\"2024-05-31T23:59:59Z\",\"value\":750}],\"errors\":[{\"timestamp\":\"2024-05-25T00:00:00Z\",\"value\":50},{\"timestamp\":\"2024-05-31T23:59:59Z\",\"value\":20}]},\"metricsToInclude\":[\"requests\",\"errors\"],\"timeRange\":{\"start\":\"2024-05-25T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"diagramType\":\"stackedArea\",\"outputFormat\":\"svg\",\"title\":\"Weekly Requests and Errors\"}", + "description": "Create a stacked area SVG diagram showing requests and errors count for the last week." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "monitoring.generateReadme", + "description": "Generates a detailed README document for a monitoring system or application based on provided configuration and feature descriptions. Accepts input including system overview, monitored metrics, alerting rules, setup instructions, and outputs a structured markdown README file describing the monitoring solution.", + "category": "monitoring", + "parameters": [ + { + "name": "systemName", + "type": "string", + "description": "The name of the monitoring system or application to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "overview", + "type": "string", + "description": "A brief description outlining the purpose and scope of the monitoring system.", + "required": true, + "defaultValue": "" + }, + { + "name": "monitoredMetrics", + "type": "array", + "description": "List of the key system or application metrics that are monitored, each with name and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertingRules", + "type": "array", + "description": "Array of alert rules including conditions and notification methods to be included in the README.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "setupInstructions", + "type": "string", + "description": "Step-by-step setup or installation instructions for deploying the monitoring system.", + "required": true, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "string", + "description": "Examples of typical usage scenarios or commands to interact with the monitoring system.", + "required": false, + "defaultValue": "" + }, + { + "name": "configurationDetails", + "type": "string", + "description": "Detailed configuration options and their explanations for customizing monitoring parameters.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a markdown string and metadata with summary info." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create clear, comprehensive documentation for a monitoring system or application based on user-provided feature and configuration details. Ideal for generating README files to onboard users or maintainers with metrics monitored, alert rules, setup, and usage instructions.", + "limitations": "Cannot generate documentation without meaningful input details; does not create visual diagrams or parse code automatically. Requires structured input about monitored metrics and setup steps.", + "examples": [ + "Generate README for a server monitoring tool tracking CPU, memory, disk usage with alert rules for high CPU usage.", + "Create README describing a web app monitoring dashboard including setup and usage instructions.", + "Produce README for custom IoT device monitoring solution detailing metrics and alert configuration." + ] + }, + "tags": [ + "monitoring", + "documentation", + "readme", + "automation", + "devops", + "performance" + ], + "examples": [ + { + "inputJson": "{\"systemName\":\"ServerMonitorX\",\"overview\":\"Monitors server CPU, memory, disk usage and network traffic.\",\"monitoredMetrics\":[{\"name\":\"CPU Usage\",\"description\":\"Percentage of CPU utilized.\"},{\"name\":\"Memory Usage\",\"description\":\"Amount of memory consumed.\"},{\"name\":\"Disk Space\",\"description\":\"Available disk space.\"}],\"alertingRules\":[{\"condition\":\"CPU Usage > 85% for 5 minutes\",\"notification\":\"Email admin\"},{\"condition\":\"Disk Space < 10%\",\"notification\":\"SMS alert\"}],\"setupInstructions\":\"1. Install ServerMonitorX\\n2. Configure metrics to monitor in config.yaml\\n3. Start monitoring service with systemctl start servermonitorx\",\"usageExamples\":\"Check current metrics via command: servermonitorx-cli status\",\"configurationDetails\":\"In config.yaml, set thresholds for alerts and enable integrations.\"}", + "description": "Generate a README for a server monitoring application with key metrics, alerts, setup, and usage instructions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "monitoring.createConversion", + "description": "Creates conversion event definitions within a monitoring system based on input metrics and criteria. Accepts parameters specifying the event name, source metric, conversion criteria (thresholds or conditions), and optional filters. Outputs a confirmation with event ID and summary to enable tracking of user or system conversions in analytics platforms.", + "category": "monitoring", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "Name of the conversion event to be created, used as an identifier and label for tracking.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceMetric", + "type": "string", + "description": "The name or key of the metric or data source on which the conversion is based, e.g., 'pageViews'.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionCriteria", + "type": "object", + "description": "Object defining the criteria for conversion such as threshold values or Boolean conditions that determine when a conversion is counted.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to apply on data before conversion evaluation, such as user segments, device types, or time ranges.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate events for conversion evaluation, e.g., 'sum', 'count', or 'average'.", + "required": false, + "defaultValue": "sum" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes over which to evaluate the conversion criteria, defaults to 60 minutes if not specified.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique conversion event ID, confirmation message, and a summary of the created conversion configuration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically define conversion events in a monitoring or analytics system based on dynamic metrics and criteria. It's useful for setting up tracking of key performance indicators, user actions, or system states that signify conversions.", + "limitations": "This tool does not implement actual data collection or real-time conversion tracking; it only defines the conversion event configuration. It assumes integration with an external monitoring system that applies these definitions.", + "examples": [ + "Create a conversion event called 'SignupCompletion' triggered when 'formSubmissions' metric count exceeds 100 within 30 minutes.", + "Define a conversion event for 'HighRevenue' when the sum of 'transactionValue' metric exceeds 1000 in an hour, filtered to mobile users.", + "Set up a conversion to track 'ErrorFrequentUsers' when a user experiences more than 5 errors within 15 minutes." + ] + }, + "tags": [ + "monitoring", + "conversion", + "analytics", + "eventTracking", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"SignupCompletion\",\"sourceMetric\":\"formSubmissions\",\"conversionCriteria\":{\"threshold\":100,\"operator\":\"gte\"},\"filters\":{\"userSegment\":\"newUsers\"},\"aggregationMethod\":\"count\",\"timeWindowMinutes\":30}", + "description": "Create a conversion event for user signups when form submissions count is greater than or equal to 100 within 30 minutes for new users." + }, + { + "inputJson": "{\"eventName\":\"HighRevenue\",\"sourceMetric\":\"transactionValue\",\"conversionCriteria\":{\"threshold\":1000,\"operator\":\"gte\"},\"filters\":{\"deviceType\":\"mobile\"},\"aggregationMethod\":\"sum\",\"timeWindowMinutes\":60}", + "description": "Define a conversion event for high revenue when total transaction value exceeds 1000 in 60 minutes for mobile device users." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "monitoring.createCache", + "description": "Creates and configures a cache instance for monitoring systems to store transient performance and metric data efficiently. Accepts cache configuration parameters like cache type, size limit, eviction policy, and expiry time, then initializes the cache structure. Returns confirmation of creation with cache metadata and status.", + "category": "monitoring", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create, e.g., 'in-memory', 'distributed', or 'file-based'.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSizeMb", + "type": "number", + "description": "Maximum cache size in megabytes to limit memory usage.", + "required": false, + "defaultValue": "100" + }, + { + "name": "evictionPolicy", + "type": "string", + "description": "Policy to evict entries when cache is full, e.g., 'LRU' (Least Recently Used), 'FIFO', or 'LFU' (Least Frequently Used).", + "required": false, + "defaultValue": "LRU" + }, + { + "name": "defaultExpirySeconds", + "type": "number", + "description": "Default time-to-live for cache entries in seconds before they expire.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "replicationEnabled", + "type": "boolean", + "description": "Whether cache replication is enabled for distributed caches to ensure availability and redundancy.", + "required": false, + "defaultValue": "false" + }, + { + "name": "nodeIdentifiers", + "type": "array", + "description": "List of node identifiers participating in distributed cache, required if cacheType is 'distributed'.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cache instance id, actual configuration used, and creation status message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to set up a caching layer within a system monitoring environment to improve data retrieval speed and reduce database load. Ideal for performance metric storage, temporary event buffering, or any scenario requiring fast, ephemeral data access within monitoring tools.", + "limitations": "This tool does not manage cache invalidation logic beyond configured expiry or eviction policies, nor does it handle persistent storage or long-term data archival.", + "examples": [ + "Create an in-memory cache of 200Mb with LFU eviction and 30 minutes expiry.", + "Set up a distributed cache with replication across three nodes for fault tolerance.", + "Initialize a small file-based cache with FIFO eviction for low memory environments." + ] + }, + "tags": [ + "monitoring", + "cache", + "performance", + "infrastructure", + "configuration", + "system" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"in-memory\",\"maxSizeMb\":200,\"evictionPolicy\":\"LFU\",\"defaultExpirySeconds\":1800}", + "description": "Create an in-memory cache with 200 MB max size, LFU eviction, and 30 minutes entry expiry." + }, + { + "inputJson": "{\"cacheType\":\"distributed\",\"replicationEnabled\":true,\"nodeIdentifiers\":[\"nodeA\",\"nodeB\",\"nodeC\"]}", + "description": "Create a distributed cache with replication enabled across three nodes for reliability." + }, + { + "inputJson": "{\"cacheType\":\"file-based\",\"maxSizeMb\":50,\"evictionPolicy\":\"FIFO\",\"defaultExpirySeconds\":7200}", + "description": "Set up a file-based cache limited to 50 MB with FIFO eviction policy and 2 hours expiry." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "monitoring.createAudio", + "description": "Creates an audio recording of system performance metrics over a specified duration. Accepts parameters defining metrics to monitor (e.g., CPU, memory usage), sampling intervals, and output audio format. Processes metric data into a sonified audio waveform representing system performance trends, and outputs an audio file URL or binary for playback.", + "category": "monitoring", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of system metrics to monitor and convert into audio (e.g., ['cpuUsage','memoryUsage','networkTraffic']).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "Total time in seconds to record system metrics and generate audio from.", + "required": true, + "defaultValue": "" + }, + { + "name": "samplingIntervalMillis", + "type": "number", + "description": "Interval in milliseconds between each metrics sample for audio generation.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Audio output format, e.g., 'wav', 'mp3', or 'ogg'.", + "required": false, + "defaultValue": "wav" + }, + { + "name": "audioBitrateKbps", + "type": "number", + "description": "Bitrate for the generated audio file in kbps.", + "required": false, + "defaultValue": "128" + }, + { + "name": "normalizeAudio", + "type": "boolean", + "description": "Whether to normalize audio volume levels across the recording.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTimestampMarkers", + "type": "boolean", + "description": "Whether to embed timestamps or markers in the audio for event referencing.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the audio file URL and metadata such as duration, codec, and sampled metrics count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate an auditory representation of system or application performance data over time. This is especially useful to perceive trends or anomalies through sound for monitoring or alerting systems where audio feedback is preferred or as a novel analysis approach.", + "limitations": "Cannot capture audio of actual system sounds or voices. It only converts numeric system metric data into audio signals. The audio is symbolic sonification, so interpretation requires specific domain knowledge or legend.", + "examples": [ + "Create an audio track representing CPU and memory usage every second for 60 seconds in mp3 format.", + "Generate a normalized wav audio file sonifying network traffic and disk IO over a 5 minute interval.", + "Produce an audio with timestamp markers for CPU load sampled every 500ms over a 30 second period." + ] + }, + "tags": [ + "monitoring", + "audio", + "systemMetrics", + "sonification", + "performance", + "media", + "alerting" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"cpuUsage\",\"memoryUsage\"],\"durationSeconds\":60,\"samplingIntervalMillis\":1000,\"audioFormat\":\"mp3\",\"audioBitrateKbps\":192,\"normalizeAudio\":true,\"includeTimestampMarkers\":false}", + "description": "Generate a 60-second mp3 audio representing CPU and memory usage sampled every second." + }, + { + "inputJson": "{\"metrics\":[\"networkTraffic\",\"diskIO\"],\"durationSeconds\":300,\"samplingIntervalMillis\":2000,\"audioFormat\":\"wav\",\"normalizeAudio\":true}", + "description": "Create a normalized wav audio recording sonifying network traffic and disk IO over 5 minutes with 2-second sampling intervals." + }, + { + "inputJson": "{\"metrics\":[\"cpuUsage\"],\"durationSeconds\":30,\"samplingIntervalMillis\":500,\"audioFormat\":\"ogg\",\"includeTimestampMarkers\":true}", + "description": "Produce an ogg audio file with timestamp markers for CPU usage sampled every 500ms over 30 seconds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "monitoring.createCertificate", + "description": "Generates a TLS/SSL certificate for use in securing monitoring system endpoints. Accepts inputs like certificate subject details, validity period, key size, and signing options; creates a PEM-formatted certificate and private key pair suitable for encrypting and authenticating communications in monitoring infrastructure.", + "category": "monitoring", + "parameters": [ + { + "name": "commonName", + "type": "string", + "description": "The common name (CN) on the certificate, usually a server domain or IP address.", + "required": true, + "defaultValue": "" + }, + { + "name": "organization", + "type": "string", + "description": "The organization (O) name to include in the certificate subject.", + "required": false, + "defaultValue": "" + }, + { + "name": "organizationalUnit", + "type": "string", + "description": "The organizational unit (OU) name for finer-grained category in the certificate subject.", + "required": false, + "defaultValue": "" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the certificate should be valid from the current date.", + "required": true, + "defaultValue": "365" + }, + { + "name": "keySize", + "type": "number", + "description": "Size in bits of the RSA key to generate (e.g., 2048, 4096).", + "required": false, + "defaultValue": "2048" + }, + { + "name": "isCA", + "type": "boolean", + "description": "Indicates if the certificate should be a Certificate Authority (CA) certificate.", + "required": false, + "defaultValue": "false" + }, + { + "name": "signWithCA", + "type": "string", + "description": "PEM-encoded CA certificate to sign this certificate with; if omitted, self-signed certificate is created.", + "required": false, + "defaultValue": "" + }, + { + "name": "signWithKey", + "type": "string", + "description": "PEM-encoded private key of the CA to sign this certificate with; required if signWithCA is provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing PEM-formatted strings for 'certificate' and 'privateKey' representing the generated certificate and its private key respectively." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create secure TLS/SSL certificates for monitoring endpoints, such as securing Prometheus exporters, Grafana dashboards, or alert manager webhooks. It facilitates automated certificate generation with customization for validity period, key strength, and optional CA signing.", + "limitations": "This tool does not manage certificate revocation or distribution. It does not interface with external Certificate Authorities for production-level certificates. It only outputs PEM-formatted certificates and keys in memory.", + "examples": [ + "Generate a self-signed certificate for monitoring endpoint 'monitor.example.com' valid for one year.", + "Create a 4096-bit RSA certificate signed by an existing internal CA for endpoint 'metrics.internal.net'.", + "Produce a CA certificate valid for five years that can sign other monitoring certificates." + ] + }, + "tags": [ + "monitoring", + "certificate", + "security", + "TLS", + "SSL", + "automation", + "PKI" + ], + "examples": [ + { + "inputJson": "{\"commonName\":\"monitor.example.com\",\"organization\":\"ExampleCorp\",\"validityDays\":365}", + "description": "Generate a self-signed certificate for monitor.example.com valid for 365 days with default 2048-bit key." + }, + { + "inputJson": "{\"commonName\":\"metrics.internal.net\",\"validityDays\":730,\"keySize\":4096,\"signWithCA\":\"-----BEGIN CERTIFICATE-----\\n...\\n-----END CERTIFICATE-----\",\"signWithKey\":\"-----BEGIN PRIVATE KEY-----\\n...\\n-----END PRIVATE KEY-----\"}", + "description": "Create a 4096-bit certificate for metrics.internal.net signed by an internal CA with provided PEM data, valid for 2 years." + }, + { + "inputJson": "{\"commonName\":\"Internal Monitoring CA\",\"organization\":\"ExampleCorp\",\"organizationalUnit\":\"Monitoring\",\"validityDays\":1825,\"isCA\":true}", + "description": "Generate a self-signed CA certificate for internal monitoring, valid for 5 years, that can be used to sign other monitoring certificates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "monitoring.createQuote", + "description": "Generates a motivational or insightful quote related to system monitoring or application performance based on a selected theme. Accepts an optional theme input and returns a relevant quote string encouraging best monitoring practices or performance awareness.", + "category": "monitoring", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "Optional theme or topic for the quote (e.g., 'resilience', 'performance', 'alerts'). If empty, a general monitoring quote is generated.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text and the theme it relates to." + }, + "aiAgent": { + "useCase": "Use this tool when you need to provide inspirational or educational quotes for dashboards, reports, or alerts related to system monitoring and performance. It helps motivate or inform users about the importance of monitoring practices and system health awareness.", + "limitations": "Cannot generate quotes unrelated to monitoring or application performance. Does not produce user-specific personalized quotes or long-form content.", + "examples": [ + "Create a quote about the importance of uptime monitoring.", + "Generate a motivational quote related to system resilience.", + "Provide a quote on performance optimization." + ] + }, + "tags": [ + "monitoring", + "quote", + "motivation", + "performance", + "system", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"resilience\"}", + "description": "Generate a quote focusing on resilience in system monitoring." + }, + { + "inputJson": "{\"theme\":\"performance\"}", + "description": "Generate a quote centered on performance monitoring and optimization." + }, + { + "inputJson": "{}", + "description": "Generate a general quote about system monitoring without specifying a theme." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "monitoring.createExpense", + "description": "Creates a detailed expense record related to system or project monitoring activities by accepting inputs such as expense amount, category, date, description, and associated project or system ID. It processes the inputs to validate and store the expense, returning a confirmation with a unique expense ID and status.", + "category": "monitoring", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "The monetary value of the expense in the currency's smallest units (e.g., dollars).", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The ISO currency code for the expense amount (e.g., USD, EUR).", + "required": true, + "defaultValue": "USD" + }, + { + "name": "expenseCategory", + "type": "string", + "description": "The category of the expense, such as 'Hardware', 'Software', 'Cloud Services', or 'Consulting'.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed text description explaining the purpose or details of the expense.", + "required": false, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "Identifier for the project or system with which this expense is associated.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateIncurred", + "type": "string", + "description": "The date when the expense was incurred in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "receiptUrl", + "type": "string", + "description": "URL or path to a digital copy of the receipt or invoice for the expense.", + "required": false, + "defaultValue": "" + }, + { + "name": "approved", + "type": "boolean", + "description": "Flag indicating whether the expense has been approved by management or finance.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique expense identifier, status confirmation, and stored expense details including timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to record and track expenses incurred from system monitoring activities or projects, enabling financial oversight, budgeting, and expense management within IT or monitoring domains. It is particularly useful to log costs related to tools, services, hardware, and consulting fees associated with monitoring efforts.", + "limitations": "This tool does not handle payment processing, currency conversion, or auditing compliance; it purely records expense data. It requires external systems for detailed financial reporting or integration with accounting software.", + "examples": [ + "Create an expense record for a cloud monitoring service subscription used by project Alpha.", + "Log hardware purchase expense incurred on 2024-06-15 for server monitoring.", + "Add a consulting fee expense with receipt URL for security vulnerability analysis." + ] + }, + "tags": [ + "monitoring", + "expense", + "finance", + "recording", + "project management", + "IT budgeting" + ], + "examples": [ + { + "inputJson": "{\"amount\":1500,\"currency\":\"USD\",\"expenseCategory\":\"Cloud Services\",\"description\":\"Monthly subscription for cloud monitoring service\",\"projectId\":\"proj-12345\",\"dateIncurred\":\"2024-06-01\",\"receiptUrl\":\"https://example.com/receipts/cloud-monitoring-june.pdf\",\"approved\":true}", + "description": "Record a monthly cloud service subscription expense for a monitoring project with receipt and approval." + }, + { + "inputJson": "{\"amount\":300,\"currency\":\"USD\",\"expenseCategory\":\"Hardware\",\"description\":\"Replacement SSD drive for monitoring server\",\"projectId\":\"server-monitoring-002\",\"dateIncurred\":\"2024-06-15\",\"approved\":false}", + "description": "Log hardware purchase expense without receipt URL and pending approval." + }, + { + "inputJson": "{\"amount\":1200,\"currency\":\"EUR\",\"expenseCategory\":\"Consulting\",\"description\":\"Security vulnerability assessment consultancy fee\",\"dateIncurred\":\"2024-05-20\",\"approved\":true}", + "description": "Add an approved consultant fee expense with European currency and no project association." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "monitoring.createYAML", + "description": "Generates a structured YAML configuration file for monitoring setups. Accepts a JSON object describing monitoring parameters such as metrics, alerts, thresholds, and notification channels, processes the input, and outputs a valid YAML string representing the complete monitoring config.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringConfig", + "type": "object", + "description": "A structured JSON object defining monitoring parameters including metrics, alerts, thresholds, and notification settings.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated YAML for clarity.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputIndentation", + "type": "number", + "description": "Number of spaces to use for indentation in the YAML output for readability.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'yamlString' with the monitoring configuration serialized as a YAML formatted string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or generate monitoring configuration files from structured JSON input, facilitating integration with monitoring platforms that require YAML config files (e.g., Prometheus, Datadog). It converts abstract parameter definitions into a concrete, human-readable YAML setup.", + "limitations": "This tool does not validate the semantic correctness of monitoring parameters against specific monitoring system schemas. It only serializes given input into YAML format and includes basic formatting options.", + "examples": [ + "Create a YAML config for CPU and memory usage alerts with thresholds and email notifications.", + "Generate YAML monitoring config with comments explaining each section for DevOps review.", + "Output YAML with custom indentation to meet style guidelines." + ] + }, + "tags": [ + "monitoring", + "configuration", + "YAML", + "serialization", + "alerts", + "devops" + ], + "examples": [ + { + "inputJson": "{\"monitoringConfig\":{\"metrics\":[{\"name\":\"cpu_usage\",\"threshold\":{\"warning\":70,\"critical\":90},\"alert\":true},{\"name\":\"memory_usage\",\"threshold\":{\"warning\":75,\"critical\":95},\"alert\":true}],\"notifications\":{\"email\":[\"ops@example.com\"]}},\"includeComments\":true,\"outputIndentation\":4}", + "description": "Generate a monitoring YAML with CPU and memory alerts including thresholds and email notifications, with comments and 4-space indentation." + }, + { + "inputJson": "{\"monitoringConfig\":{\"metrics\":[{\"name\":\"disk_io\",\"threshold\":{\"warning\":80,\"critical\":95},\"alert\":true}],\"notifications\":{\"slack\":[\"#alerts\"]}},\"includeComments\":false,\"outputIndentation\":2}", + "description": "Create a compact YAML config monitoring disk IO with Slack notifications, without comments and using 2-space indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "monitoring.createTemplate", + "description": "Creates a monitoring dashboard template by accepting configuration inputs such as metrics, visualization types, and alert thresholds. The tool processes these inputs to generate a reusable JSON template defining a monitoring dashboard layout and settings, which can be deployed or shared across environments.", + "category": "monitoring", + "parameters": [ + { + "name": "templateName", + "type": "string", + "description": "The name of the monitoring dashboard template to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "An array of metric identifiers or names to include in the template.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizations", + "type": "array", + "description": "An array of visualization configuration objects defining the chart types and layout for each metric.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertThresholds", + "type": "object", + "description": "An object defining alert rules and threshold values per metric for triggering alerts.", + "required": false, + "defaultValue": "" + }, + { + "name": "refreshIntervalSeconds", + "type": "number", + "description": "The refresh interval in seconds for dashboard data updates.", + "required": false, + "defaultValue": "60" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the monitoring template purpose or scope.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the complete monitoring dashboard template, including metrics, visualizations, alert settings, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate consistent monitoring dashboards for different environments or services. It helps in automating dashboard configuration by converting specified metrics and visualization preferences into deployable templates, ensuring standardization.", + "limitations": "This tool does not connect to actual monitoring systems or retrieve live data; it only creates configuration templates. It also does not validate metric identifiers against real data sources.", + "examples": [ + "Create a monitoring template for CPU and Memory usage with line charts and alert thresholds for critical values.", + "Generate a template with multiple visualizations including heatmaps and bar charts for network metrics without alerts.", + "Build a dashboard template with a short refresh interval for near real-time system performance monitoring." + ] + }, + "tags": [ + "monitoring", + "template", + "dashboard", + "metrics", + "visualization", + "alert", + "automation" + ], + "examples": [ + { + "inputJson": "{\"templateName\":\"ServerPerformance\",\"metrics\":[\"cpu_usage\",\"memory_usage\"],\"visualizations\":[{\"metric\":\"cpu_usage\",\"type\":\"line_chart\",\"position\":{\"x\":0,\"y\":0,\"width\":6,\"height\":3}},{\"metric\":\"memory_usage\",\"type\":\"line_chart\",\"position\":{\"x\":6,\"y\":0,\"width\":6,\"height\":3}}],\"alertThresholds\":{\"cpu_usage\":{\"warning\":70,\"critical\":90},\"memory_usage\":{\"warning\":75,\"critical\":95}},\"refreshIntervalSeconds\":60,\"description\":\"Basic server performance monitoring dashboard.\"}", + "description": "Create a monitoring template named 'ServerPerformance' for CPU and memory usage with line charts and defined alert thresholds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "compliance-management.analyzeReference", + "description": "Analyzes regulatory or policy documents provided as text input. It processes the content to identify key compliance topics, potential risks, and obligations, and outputs a structured summary highlighting compliance requirements and areas needing attention.", + "category": "compliance-management", + "parameters": [ + { + "name": "referenceText", + "type": "string", + "description": "The full text of the regulatory or policy document to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "regulationType", + "type": "string", + "description": "Type or category of regulation (e.g., GDPR, HIPAA, ISO 27001) to tailor analysis context.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRiskAssessment", + "type": "boolean", + "description": "Whether to include an assessment of potential compliance risks based on the reference content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language of the reference text to support multilingual documents (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Structured report containing identified compliance obligations, associated risk levels, and summary of key topics." + }, + "aiAgent": { + "useCase": "Use this tool when reviewing new or updated regulatory documents to quickly extract compliance obligations and risk areas. It helps compliance teams understand what the regulation requires and prioritize remediation tasks.", + "limitations": "Cannot guarantee legal advice or replace expert legal consultation. Complex or ambiguous documents may yield incomplete or approximate analysis.", + "examples": [ + "Analyze a new data privacy law text to find all relevant compliance requirements.", + "Review an updated ISO 27001 standard document to identify changes impacting existing policies.", + "Summarize HIPAA regulation for healthcare data handling obligations." + ] + }, + "tags": [ + "compliance", + "analysis", + "regulation", + "riskAssessment", + "policy", + "documentProcessing" + ], + "examples": [ + { + "inputJson": "{\"referenceText\":\"The GDPR requires that all personal data processing be lawful, transparent, and secure. Organizations must appoint a Data Protection Officer and report breaches within 72 hours.\",\"regulationType\":\"GDPR\",\"includeRiskAssessment\":true,\"language\":\"en\"}", + "description": "Analyze GDPR related text to identify compliance requirements and risk points." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "compliance-management.analyzeSession", + "description": "This tool accepts detailed session logs containing user interactions, timestamps, and event types within digital environments. It processes the data to identify compliance-related deviations, potential policy violations, and risks according to configured regulatory frameworks. The output is a structured compliance analysis report highlighting detected issues, their severity, and recommended remediation actions.", + "category": "compliance-management", + "parameters": [ + { + "name": "sessionData", + "type": "object", + "description": "The session log data including user actions, timestamps, and event metadata to analyze for compliance.", + "required": true, + "defaultValue": "" + }, + { + "name": "regulationFramework", + "type": "string", + "description": "The name of the regulatory framework to apply, e.g., GDPR, HIPAA, PCI-DSS.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail, such as 'basic', 'standard', or 'deep'.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include remediation recommendations in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone of the session timestamps to ensure correct time calculations.", + "required": false, + "defaultValue": "UTC" + } + ], + "returns": { + "type": "object", + "description": "An object containing the compliance analysis summary with details on violations found, risk levels, affected policies, and remediation suggestions if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess user session data against specific legal and organizational compliance requirements to detect potential violations or risks. Ideal for automated compliance monitoring in platforms managing sensitive or regulated user interactions.", + "limitations": "This tool cannot modify session data, enforce compliance policies directly, or guarantee legal compliance; it simply analyzes data according to defined frameworks and produces assessment reports.", + "examples": [ + "Analyze a user's web session data for GDPR compliance violations.", + "Evaluate transaction session logs under PCI-DSS requirements to identify possible cardholder data exposure.", + "Review healthcare application session interactions for HIPAA-related compliance issues and suggest remediations." + ] + }, + "tags": [ + "compliance", + "session-analysis", + "regulatory", + "risk-assessment", + "policy-violation", + "security" + ], + "examples": [ + { + "inputJson": "{\"sessionData\":{\"events\":[{\"type\":\"login\",\"timestamp\":\"2024-06-01T08:30:00Z\"},{\"type\":\"dataAccess\",\"timestamp\":\"2024-06-01T08:45:00Z\",\"resource\":\"patientRecords\"},{\"type\":\"logout\",\"timestamp\":\"2024-06-01T09:00:00Z\"}]},\"regulationFramework\":\"HIPAA\",\"analysisDepth\":\"standard\",\"includeRecommendations\":true,\"timeZone\":\"UTC\"}", + "description": "Analyze a healthcare app user session for HIPAA compliance, checking access events." + }, + { + "inputJson": "{\"sessionData\":{\"events\":[{\"type\":\"pageView\",\"timestamp\":\"2024-06-01T10:00:00Z\"},{\"type\":\"formSubmit\",\"timestamp\":\"2024-06-01T10:05:00Z\",\"formType\":\"payment\"}]},\"regulationFramework\":\"PCI-DSS\",\"analysisDepth\":\"deep\",\"includeRecommendations\":true,\"timeZone\":\"UTC\"}", + "description": "Conduct a deep analysis of e-commerce session logs to detect PCI-DSS compliance issues during payment form submission." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "compliance-management.analyzeIncident", + "description": "Analyzes security or compliance incident reports by evaluating input details such as incident description, affected systems, timestamps, and severity. It applies compliance frameworks and risk assessment methodologies to determine the impact, root causes, and recommend remediation steps. Outputs a structured analysis report summarizing findings, classification, and compliance gaps.", + "category": "compliance-management", + "parameters": [ + { + "name": "incidentReport", + "type": "object", + "description": "A detailed structured incident report including description, affected assets, timestamps, and severity metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceFrameworks", + "type": "array", + "description": "List of compliance frameworks (e.g., HIPAA, GDPR, PCI-DSS) to benchmark the incident against.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include remediation and mitigation recommendations in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: 'basic', 'detailed', or 'extensive'.", + "required": false, + "defaultValue": "detailed" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including incident classification, risk level, compliance impact, root cause summary, and optionally remediation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or semi-structured incident data from security or compliance events and need to generate a comprehensive analysis report that assesses compliance impact and security risks. It helps in decision-making and reporting to stakeholders.", + "limitations": "This tool cannot access external real-time data or automate incident response actions. It relies on accuracy and completeness of provided incident data, and cannot replace human expert review.", + "examples": [ + "Analyze an incident report for PCI-DSS compliance impact and generate remediation steps.", + "Evaluate a security breach incident with HIPAA framework to assess risk and compliance violations.", + "Generate a classification summary and root cause analysis from a GDPR-related incident report." + ] + }, + "tags": [ + "compliance", + "incident-analysis", + "security", + "risk-assessment", + "remediation", + "regulatory-frameworks" + ], + "examples": [ + { + "inputJson": "{\"incidentReport\":{\"description\":\"Unauthorized access detected on server X\",\"affectedAssets\":[\"Server X\"],\"timestamp\":\"2024-05-15T14:32:00Z\",\"severity\":\"high\"},\"complianceFrameworks\":[\"PCI-DSS\",\"GDPR\"],\"includeRecommendations\":true,\"analysisDepth\":\"detailed\"}", + "description": "Analyze a high severity unauthorized access incident with PCI-DSS and GDPR compliance frameworks to provide impact assessment and remediation advice." + }, + { + "inputJson": "{\"incidentReport\":{\"description\":\"Data leak suspected from internal database\",\"affectedAssets\":[\"Database server\"],\"timestamp\":\"2024-06-01T09:15:00Z\",\"severity\":\"medium\"},\"complianceFrameworks\":[\"HIPAA\"],\"includeRecommendations\":false,\"analysisDepth\":\"basic\"}", + "description": "Perform a basic analysis of a suspected data leak incident under HIPAA without remediation recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "compliance-management.analyzeThreat", + "description": "Analyzes reported cybersecurity threats based on input parameters such as threat type, affected systems, and threat intelligence data. The tool processes input data to evaluate threat severity, potential impact, mitigation suggestions, and compliance risks, returning a structured threat analysis report with prioritized recommendations.", + "category": "compliance-management", + "parameters": [ + { + "name": "threatType", + "type": "string", + "description": "The category or type of threat to analyze (e.g., malware, phishing, insider threat).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of systems, applications, or assets impacted or targeted by the threat.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatIndicators", + "type": "array", + "description": "Indicators of compromise or threat intelligence data such as hashes, IP addresses, URLs relevant to the threat.", + "required": false, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Optional initial severity level if known (e.g., low, medium, high); used to guide analysis prioritization.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance or regulatory standards to consider when assessing threat impact (e.g., GDPR, HIPAA).", + "required": false, + "defaultValue": "" + }, + { + "name": "timeframe", + "type": "string", + "description": "Timeframe of threat activity to analyze, expressed in ISO 8601 duration or date range.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured threat analysis report including assessed threat severity, potential impact on assets, recommended mitigation steps, and identified compliance risks with respect to selected standards." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the risk and compliance implications of a reported cybersecurity threat. It aids in decision-making for prioritizing incident response by providing a detailed threat severity assessment, compliance impact, and actionable recommendations.", + "limitations": "This tool does not perform real-time threat detection or monitoring. It relies on input data quality and does not replace comprehensive security operations or human expert reviews.", + "examples": [ + "Analyze a phishing threat targeting a financial system to determine compliance risks under PCI-DSS.", + "Evaluate a malware incident impacting healthcare records considering HIPAA requirements.", + "Assess an insider threat scenario with given indicators and systems affected." + ] + }, + "tags": [ + "analysis", + "threat", + "security", + "compliance", + "risk-assessment", + "cybersecurity", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"threatType\":\"phishing\",\"affectedSystems\":[\"email_server\",\"user_accounts\"],\"threatIndicators\":[\"http://malicious-link.com\",\"user_password_leak\"],\"severityLevel\":\"high\",\"complianceStandards\":[\"PCI-DSS\",\"GDPR\"],\"timeframe\":\"2024-05-01_to_2024-05-07\"}", + "description": "Analyze a high severity phishing threat targeting email servers and user accounts with compliance focus on PCI-DSS and GDPR during first week of May 2024." + }, + { + "inputJson": "{\"threatType\":\"ransomware\",\"affectedSystems\":[\"file_servers\"],\"severityLevel\":\"medium\",\"complianceStandards\":[\"HIPAA\"]}", + "description": "Assess a medium severity ransomware threat on file servers with relevance to HIPAA compliance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "compliance-management.analyzeDeal", + "description": "This tool analyzes a business deal by evaluating its compliance with relevant regulatory and internal policy criteria. It accepts detailed deal data including parties involved, contract terms, financials, and jurisdiction information. The tool processes the input to identify potential compliance risks, regulatory conflicts, and policy violations, then outputs a structured report summarizing findings and recommendations.", + "category": "compliance-management", + "parameters": [ + { + "name": "dealData", + "type": "object", + "description": "Comprehensive information about the deal including parties, contract terms, financial data, and jurisdiction details", + "required": true, + "defaultValue": "" + }, + { + "name": "regulations", + "type": "array", + "description": "List of applicable regulatory frameworks and standards to apply during analysis", + "required": true, + "defaultValue": "" + }, + { + "name": "internalPolicies", + "type": "array", + "description": "Array of internal compliance policies relevant to the deal", + "required": false, + "defaultValue": "[]" + }, + { + "name": "riskToleranceLevel", + "type": "string", + "description": "Risk tolerance setting to identify which findings should be flagged (e.g., low, medium, high)", + "required": false, + "defaultValue": "medium" + }, + { + "name": "language", + "type": "string", + "description": "Language code for report generation output", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A detailed compliance analysis report including compliance status flags, risk assessments, identified issues, and recommended actions for the reviewed deal" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate a proposed or existing business deal for regulatory and internal policy compliance. It's especially useful in financial, legal, or corporate environments where deal approvals must consider complex compliance requirements. The tool aids in risk mitigation by systematically identifying compliance gaps.", + "limitations": "The tool does not replace human legal or compliance expertise and may not cover extremely localized or newly introduced regulations unless updated. It assumes input data is accurate and complete.", + "examples": [ + "Analyze this new merger agreement for compliance with EU GDPR and anti-bribery regulations.", + "Evaluate a cross-border financial transaction deal against internal compliance policies and relevant financial regulations.", + "Provide a compliance risk summary for a joint venture contract involving multiple jurisdictions." + ] + }, + "tags": [ + "compliance", + "deal-analysis", + "regulatory", + "risk-assessment", + "business", + "policy", + "legal" + ], + "examples": [ + { + "inputJson": "{\"dealData\":{\"parties\":[{\"name\":\"Company A\",\"country\":\"US\"},{\"name\":\"Company B\",\"country\":\"Germany\"}],\"contractTerms\":{\"durationMonths\":36,\"financials\":{\"valueUSD\":5000000}},\"jurisdiction\":\"EU\"},\"regulations\":[\"GDPR\",\"AntiBribery\"],\"internalPolicies\":[\"Policy1\",\"Policy2\"],\"riskToleranceLevel\":\"medium\",\"language\":\"en\"}", + "description": "Analyze a US-German merger deal against GDPR and anti-bribery laws along with internal policies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "compliance-management.uploadCSV", + "description": "Uploads a CSV file containing compliance-related data, validates its format against specified schema rules, and stores the records into the compliance management system. Returns summary of upload results including number of records processed, accepted, and rejected with error details.", + "category": "compliance-management", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV data content to upload and process, as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "An object defining expected CSV schema including field names, data types, and validation rules for each column.", + "required": true, + "defaultValue": "" + }, + { + "name": "replaceExisting", + "type": "boolean", + "description": "Flag indicating whether to replace existing compliance records related to this CSV or append new entries.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sourceIdentifier", + "type": "string", + "description": "Optional identifier representing the source or origin of the CSV data for audit and tracking purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the upload outcome including total records processed, number successfully stored, and an array of errors describing records that failed validation or insertion." + }, + "aiAgent": { + "useCase": "Use this tool when needing to ingest compliance-related data supplied as CSV files into a regulatory or policy compliance system. It ensures the CSV adheres to required format and business rules, provides detailed feedback on data issues, and uploads clean records. Ideal for automated processing of periodic compliance reports or audits.", + "limitations": "This tool validates CSV structure and basic field-level content but does not perform complex compliance rule checks beyond schema validation. It requires a predefined schema to function and cannot autonomously infer data formats.", + "examples": [ + "Upload the quarterly compliance CSV report adhering to the provided schema and replace previous entries for the same period.", + "Append a new batch of compliance audit records from a CSV file supplied by an external vendor, validating format but not replacing existing data.", + "Process a CSV containing employee training compliance data, reporting errors for invalid rows and storing valid entries." + ] + }, + "tags": [ + "compliance", + "upload", + "CSV", + "data validation", + "regulatory", + "audit", + "policy" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"employeeId,trainingDate,status\\n12345,2024-05-01,completed\\n67890,2024-05-03,pending\",\"schemaDefinition\":{\"fields\":[{\"name\":\"employeeId\",\"type\":\"string\"},{\"name\":\"trainingDate\",\"type\":\"date\"},{\"name\":\"status\",\"type\":\"string\",\"allowedValues\":[\"completed\",\"pending\",\"overdue\"]}]},\"replaceExisting\":false,\"sourceIdentifier\":\"Q2Training\"}", + "description": "Upload employee training compliance data CSV ensuring valid status values, append data without replacing existing records." + }, + { + "inputJson": "{\"csvContent\":\"reportId,complianceArea,dateChecked,result\\nRPT001,Data Privacy,2024-06-10,pass\\nRPT002,Financial,2024-06-11,fail\",\"schemaDefinition\":{\"fields\":[{\"name\":\"reportId\",\"type\":\"string\"},{\"name\":\"complianceArea\",\"type\":\"string\"},{\"name\":\"dateChecked\",\"type\":\"date\"},{\"name\":\"result\",\"type\":\"string\",\"allowedValues\":[\"pass\",\"fail\"]}]},\"replaceExisting\":true,\"sourceIdentifier\":\"MonthlyAudit\"}", + "description": "Replace existing compliance audit reports with new monthly report CSV data after validating schema and allowed result values." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "compliance-management.sendComment", + "description": "This tool sends a comment related to a specific compliance case or document within a compliance management system. It accepts inputs specifying the target case ID, the comment text, the author identity, and optionally, attachments or metadata. The tool processes this information and records the comment in the system, returning confirmation including the comment ID and timestamp.", + "category": "compliance-management", + "parameters": [ + { + "name": "caseId", + "type": "string", + "description": "Unique identifier of the compliance case or document to attach the comment to.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "Content of the comment to be sent related to compliance review or notes.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier of the user or system posting the comment.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of URLs or identifiers of document attachments related to the comment.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata such as tags, priority, or visibility flags associated with the comment.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object confirming the comment was recorded, including unique comment ID, timestamp, and status message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add observations, feedback, or clarifications related to a compliance case in the management system. It is useful in workflows where automated or assisted commenting supports audit trails, collaborative reviews, or escalation documentation in compliance contexts.", + "limitations": "This tool does not analyze the compliance content or validate comment appropriateness; it only records and sends comments. It also cannot modify or delete existing comments once sent.", + "examples": [ + "Add a comment noting a missing document for case 12345", + "Send a reviewer's feedback comment on compliance audit report caseABC", + "Attach a comment with urgency flag about policy violation observed in case ID X987" + ] + }, + "tags": [ + "compliance", + "comment", + "communication", + "case-management", + "audit-trail" + ], + "examples": [ + { + "inputJson": "{\"caseId\":\"C-20240601-001\",\"commentText\":\"Reviewed the submitted vendor risk assessment; found no discrepancies.\",\"authorId\":\"user123\",\"attachments\":[],\"metadata\":{\"priority\":\"normal\",\"visibility\":\"internal\"}}", + "description": "Sending a standard review comment to a compliance case without attachments." + }, + { + "inputJson": "{\"caseId\":\"INV-778899\",\"commentText\":\"Please provide missing certification documents ASAP.\",\"authorId\":\"auditorAlpha\",\"attachments\":[],\"metadata\":{\"priority\":\"high\",\"visibility\":\"public\"}}", + "description": "Sending an urgent comment requesting additional documentation with higher visibility." + }, + { + "inputJson": "{\"caseId\":\"POL-45321\",\"commentText\":\"Attached updated policy draft for review.\",\"authorId\":\"complianceMgr\",\"attachments\":[\"https://fileserver.company.com/policies/draft_v2.pdf\"],\"metadata\":{\"tags\":[\"policy\",\"update\"],\"visibility\":\"internal\"}}", + "description": "Sending a comment with an attachment containing an updated policy draft file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "compliance-management.renderWord", + "description": "This tool accepts a plain text word relevant to compliance and renders it into a standardized Word document format with optional regulatory context annotations and formatting styles. It allows compliance teams to quickly generate professional Word documents highlighting key terms with compliance-related notes for training or audit preparation.", + "category": "compliance-management", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single compliance-related word or term to include in the Word document.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeAnnotations", + "type": "boolean", + "description": "Flag indicating whether to include regulatory context annotations about the word.", + "required": false, + "defaultValue": "false" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Optional title to use for the generated Word document.", + "required": false, + "defaultValue": "" + }, + { + "name": "fontName", + "type": "string", + "description": "Font name to use in the document, e.g., Arial or Times New Roman.", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size (in points) to apply to the rendered word in the document.", + "required": false, + "defaultValue": "12" + }, + { + "name": "highlightColor", + "type": "string", + "description": "Optional highlight color (e.g., yellow, lightgray) for the rendered word in the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Word document as a base64-encoded string along with metadata like filename and content type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce a professional Word document that emphasizes a specific compliance-related term, optionally enriched with annotations describing its regulatory importance. Ideal for compliance training materials, audit documentation, or regulatory reporting preparations.", + "limitations": "This tool only renders a single word with optional annotations and styles; it does not process paragraphs, multiple terms, or full documents. It cannot interpret context beyond basic word annotations.", + "examples": [ + "Render the word 'GDPR' with annotations and highlight it in yellow in a Word document titled 'Privacy Regulation Overview'.", + "Create a Word document rendering the compliance keyword 'SOX' without annotations using Times New Roman font size 14.", + "Render the word 'HIPAA' in Arial 12pt font with no highlight or annotations." + ] + }, + "tags": [ + "compliance", + "document", + "Word", + "rendering", + "annotations", + "legal", + "training" + ], + "examples": [ + { + "inputJson": "{\"word\":\"GDPR\",\"includeAnnotations\":true,\"documentTitle\":\"Privacy Regulation Overview\",\"fontName\":\"Arial\",\"fontSize\":12,\"highlightColor\":\"yellow\"}", + "description": "Generate a Word document showing the word GDPR with annotations and highlighted in yellow." + }, + { + "inputJson": "{\"word\":\"SOX\",\"includeAnnotations\":false,\"documentTitle\":\"\",\"fontName\":\"Times New Roman\",\"fontSize\":14,\"highlightColor\":\"\"}", + "description": "Render the word SOX in Times New Roman font size 14 with no annotations or highlight." + }, + { + "inputJson": "{\"word\":\"HIPAA\",\"includeAnnotations\":false,\"documentTitle\":\"\",\"fontName\":\"Arial\",\"fontSize\":12,\"highlightColor\":\"\"}", + "description": "Simple rendering of the word HIPAA in Arial 12pt font with no special annotations or highlights." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "compliance-management.renderImage", + "description": "This tool accepts compliance-related data and policy parameters as input, then processes and renders an image representing compliance status, audit results, or policy adherence visualization. It outputs a base64-encoded image string or URL that can be embedded in reports or dashboards for clear regulatory compliance communication.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceData", + "type": "object", + "description": "Structured data containing compliance metrics, audit findings, or policy details to visualize.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "Desired output image format such as PNG, JPEG, or SVG.", + "required": false, + "defaultValue": "PNG" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme to use for rendering compliance visualization, e.g., 'corporate', 'alert', or 'neutral'.", + "required": false, + "defaultValue": "corporate" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Flag to include a legend explaining compliance statuses in the rendered image.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered image as a base64 encoded string or a URL link to the rendered image file, plus metadata like image format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool to generate visual compliance status images from structured compliance or audit data, making it easier for stakeholders to interpret compliance states and fulfill reporting or regulatory communication requirements. Ideal when visual summaries or dashboards are required in compliance management workflows.", + "limitations": "This tool does not perform compliance analysis or data validation itself; it requires pre-processed, structured compliance data as input. It also does not provide interactive or animated visualizations, only static rendered images.", + "examples": [ + "Render a compliance overview image summarizing audit results for a quarterly report.", + "Generate a status image showing policy adherence for multiple departments with a red-yellow-green alert scheme.", + "Create an SVG image visualizing data privacy compliance metrics for embedding in a company intranet page." + ] + }, + "tags": [ + "compliance", + "visualization", + "image-rendering", + "regulatory-reporting", + "audit", + "data-visualization", + "static-image" + ], + "examples": [ + { + "inputJson": "{\"complianceData\":{\"departments\":[{\"name\":\"Finance\",\"status\":\"compliant\"},{\"name\":\"IT\",\"status\":\"non-compliant\"}],\"overallStatus\":\"partial\"},\"imageFormat\":\"PNG\",\"width\":1024,\"height\":768,\"colorScheme\":\"alert\",\"includeLegend\":true}", + "description": "Render a compliance image depicting finance and IT department audit compliance status with alert color scheme." + }, + { + "inputJson": "{\"complianceData\":{\"policies\":[{\"policyName\":\"Data Privacy\",\"complianceLevel\":85},{\"policyName\":\"Safety\",\"complianceLevel\":95}],\"summary\":\"All policies are mostly compliant\"},\"imageFormat\":\"SVG\",\"width\":600,\"height\":400,\"colorScheme\":\"corporate\",\"includeLegend\":false}", + "description": "Generate an SVG image visualizing compliance levels for data privacy and safety policies without a legend." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "compliance-management.renderText", + "description": "Renders input textual content into formatted compliance documents applying relevant regulatory templates and styles. Accepts raw text and metadata, processes formatting rules and outputs styled compliance-ready text documents.", + "category": "compliance-management", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw compliance-related textual content to be formatted and rendered into a document.", + "required": true, + "defaultValue": "" + }, + { + "name": "regulationType", + "type": "string", + "description": "Specifies the regulatory framework or standard (e.g., GDPR, HIPAA) to guide the formatting and compliance style.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the rendered document such as 'pdf', 'html', or 'docx'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeSections", + "type": "array", + "description": "Optional array of strings specifying which document sections to include (e.g., ['Introduction','Data Protection','Audit Trail']). If empty, includes all.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') to render the compliance text appropriately.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered compliance document content encoded as a base64 string, its format, and metadata such as page count and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw compliance-related text content into a professionally formatted document adhering to specific regulatory standards. Suitable for preparing official compliance reports, audit documents, or regulatory submissions that require correct structure and style.", + "limitations": "Cannot validate legal accuracy of compliance content or replace expert legal review. It only formats text based on predefined templates and cannot ingest non-textual compliance data such as scanned images or multimedia.", + "examples": [ + "Render raw GDPR compliance text into a pdf document for audit submission.", + "Generate an HTML version of HIPAA compliance procedures highlighting key sections.", + "Create a Spanish language compliance report document from provided English text." + ] + }, + "tags": [ + "compliance", + "document rendering", + "regulatory", + "text formatting", + "report generation", + "legal", + "audit" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"This document outlines the GDPR compliance measures...\",\"regulationType\":\"GDPR\",\"outputFormat\":\"pdf\",\"includeSections\":[\"Introduction\",\"Data Protection\"],\"language\":\"en\"}", + "description": "Render a GDPR compliance text focusing on Introduction and Data Protection sections into a PDF document." + }, + { + "inputJson": "{\"inputText\":\"Patient data must be handled according to HIPAA regulations...\",\"regulationType\":\"HIPAA\",\"outputFormat\":\"html\",\"includeSections\":[],\"language\":\"en\"}", + "description": "Generate a full HTML compliance document for HIPAA from provided text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "compliance-management.formatSentence", + "description": "Formats a given sentence to ensure it meets specified compliance-related style and content criteria. Accepts an input sentence and applies formatting rules such as capitalization, punctuation correction, keyword inclusion, and optional anonymization to output a compliance-ready sentence.", + "category": "compliance-management", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The sentence text to be formatted according to compliance guidelines.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeFirstLetter", + "type": "boolean", + "description": "If true, capitalizes the first letter of the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "ensurePeriodEnding", + "type": "boolean", + "description": "If true, ensures the sentence ends with a period/full stop.", + "required": false, + "defaultValue": "true" + }, + { + "name": "mandatoryKeywords", + "type": "array", + "description": "List of keywords that must appear in the sentence; tool verifies and adds them if missing, preserving meaning.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "anonymizeSensitiveData", + "type": "boolean", + "description": "If true, detects and replaces sensitive information (e.g., personal data) with placeholders to meet privacy compliance.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing the formatted sentence string and a summary of applied formatting adjustments." + }, + "aiAgent": { + "useCase": "Use this tool when preparing textual content that must comply with regulatory or organizational policies, ensuring proper sentence formatting and mandatory compliance keywords inclusion, while optionally anonymizing sensitive data for privacy.", + "limitations": "This tool cannot interpret complex semantic compliance requirements, such as contextual legal interpretations or verifying full regulatory adherence beyond sentence-level formatting.", + "examples": [ + "Format this compliance statement including mandatory keywords and ensure correct punctuation.", + "Prepare a user consent sentence anonymizing any personal identifiers.", + "Check and correct sentence capitalization and punctuation for compliance documents." + ] + }, + "tags": [ + "compliance", + "formatting", + "text-processing", + "privacy", + "regulatory", + "sentence", + "anonymization" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"the user data shall be protected by law\",\"capitalizeFirstLetter\":true,\"ensurePeriodEnding\":true,\"mandatoryKeywords\":[\"protected\"],\"anonymizeSensitiveData\":false}", + "description": "Capitalize first letter and ensure sentence ends with a period while verifying the keyword 'protected' is present." + }, + { + "inputJson": "{\"sentence\":\"user john smith's address is confidential\",\"capitalizeFirstLetter\":true,\"ensurePeriodEnding\":true,\"mandatoryKeywords\":[],\"anonymizeSensitiveData\":true}", + "description": "Capitalize, ensure punctuation, and anonymize sensitive personal data in the sentence." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "compliance-management.formatEndpoint", + "description": "This tool accepts a raw API endpoint object including URL, HTTP method, request and response schemas, and compliance rules. It validates and formats the endpoint definition to comply with specified regulatory and internal policies, ensuring consistent, secure, and standards-aligned API endpoint documentation. The output is a structured, policy-compliant formatted endpoint object.", + "category": "compliance-management", + "parameters": [ + { + "name": "endpoint", + "type": "object", + "description": "The raw endpoint definition object including URL, method, request and response schemas, and compliance metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "policyRules", + "type": "object", + "description": "An object defining regulatory and internal compliance rules to enforce during formatting, such as required headers, authentication, and data privacy constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "enforceStrictValidation", + "type": "boolean", + "description": "Flag indicating whether to enforce strict compliance validation, rejecting endpoints that do not fully comply.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format, e.g., 'JSON', 'YAML', or 'OpenAPI'. Defaults to JSON.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "A compliance-validated and formatted endpoint object adhering to specified policies and best practices." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ensure an API endpoint definition meets regulatory compliance and internal standards before integration or deployment. It helps enforce security, privacy, and documentation policies automatically by validating and formatting endpoint data.", + "limitations": "Cannot create compliance rules; relies on provided policy definitions. Does not execute endpoints or test functional correctness beyond schema validation.", + "examples": [ + "Format this raw endpoint with GDPR and PCI compliance rules for production use.", + "Validate and reformat API endpoint definitions into OpenAPI format ensuring required security headers are present.", + "Enforce internal data privacy rules on a given endpoint before inclusion in public API documentation." + ] + }, + "tags": [ + "compliance", + "API", + "endpoint", + "formatting", + "validation", + "regulatory", + "security", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"endpoint\":{\"url\":\"/user/data\",\"method\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"userId\":{\"type\":\"string\"}}},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"status\":{\"type\":\"string\"}}},\"authRequired\":true},\"policyRules\":{\"requiredHeaders\":[\"Authorization\"],\"disallowedMethods\":[],\"sensitiveDataFields\":[\"userId\"]},\"enforceStrictValidation\":true,\"outputFormat\":\"JSON\"}", + "description": "Format a POST /user/data endpoint ensuring Authorization header present and handling sensitive userId field per policy." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "compliance-management.formatParagraph", + "description": "This tool accepts a text paragraph related to compliance and regulatory policies, then formats it according to specified style guidelines such as line length, indentation, and spacing to improve readability and policy adherence. It outputs a cleaned, consistently formatted paragraph suitable for inclusion in compliance documents or reports.", + "category": "compliance-management", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text that needs to be formatted for compliance documentation.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line to wrap the paragraph text for better readability.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to indent at the start of each paragraph line for formatting.", + "required": false, + "defaultValue": "4" + }, + { + "name": "useBulletPoints", + "type": "boolean", + "description": "Whether to convert paragraph content into bullet points if detected as list items.", + "required": false, + "defaultValue": "false" + }, + { + "name": "ensureComplianceTone", + "type": "boolean", + "description": "Adjusts phrasing to maintain formal, compliant tone appropriate for regulatory documents.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph string as per the requested style parameters." + }, + "aiAgent": { + "useCase": "Use this tool when generating or refining compliance-related documentation paragraphs to ensure consistent formatting, adherence to style guidelines, and formal tone required for regulatory policies. This helps maintain professionalism and clarity in compliance management reports and communications.", + "limitations": "This tool does not validate legal or regulatory content for accuracy or compliance; it focuses solely on formatting and tone. It cannot interpret or rewrite complex legal concepts beyond stylistic adjustments.", + "examples": [ + "Format a compliance paragraph to 100 characters per line with 2 space indentation.", + "Convert a list within a paragraph into bullet points for clearer presentation.", + "Ensure the paragraph uses a formal, compliant tone suitable for regulatory documentation." + ] + }, + "tags": [ + "formatting", + "compliance", + "policy", + "document", + "text", + "regulatory", + "paragraph", + "style" + ], + "examples": [ + { + "inputJson": "{\"text\":\"All employees must adhere to data protection policies to maintain confidentiality and security.\",\"maxLineLength\":60,\"indentationSpaces\":2,\"useBulletPoints\":false,\"ensureComplianceTone\":true}", + "description": "Format a simple compliance statement with a maximum line length of 60 and indentation of 2 spaces." + }, + { + "inputJson": "{\"text\":\"- Ensure all transactions are logged promptly.\\n- Verify user identity before access.\",\"maxLineLength\":70,\"indentationSpaces\":4,\"useBulletPoints\":true,\"ensureComplianceTone\":true}", + "description": "Convert a paragraph with list items into formatted bullet points with proper indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "compliance-management.formatInvoice", + "description": "Formats raw invoice data to comply with specific regulatory and policy standards. Accepts invoice details such as supplier, purchaser, items, and totals, applies required formatting rules for compliance, and outputs a standardized JSON representation of the invoice suitable for audits and reporting.", + "category": "compliance-management", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "Raw invoice information including supplier, purchaser, items, and totals.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandard", + "type": "string", + "description": "Specifies the regulatory or policy standard to format the invoice according to, e.g., 'EU VAT', 'US GAAP'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTaxDetails", + "type": "boolean", + "description": "Determines whether to include detailed tax information in the formatted invoice.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "ISO currency code to normalize amounts in the invoice, e.g., 'USD', 'EUR'.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Preferred date format for invoice dates, e.g., 'YYYY-MM-DD', 'DD/MM/YYYY'.", + "required": false, + "defaultValue": "YYYY-MM-DD" + } + ], + "returns": { + "type": "object", + "description": "A standardized JSON object representing the invoice formatted to meet the specified compliance standards, ready for reporting, audits, or downstream processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ensure invoice data adheres to specific regulatory or policy compliance standards before storage, processing, or submission, e.g., adapting invoice formats for tax audits, cross-border billing, or accounting rules.", + "limitations": "This tool does not validate the financial correctness or legal authenticity of invoice data, nor does it perform OCR or extract data from unstructured documents.", + "examples": [ + "Format this invoice according to EU VAT compliance standard with tax details included.", + "Format a US-based invoice using US GAAP rules and normalize prices to USD currency.", + "Format provided invoice data to meet internal company compliance policies with date format 'DD/MM/YYYY'." + ] + }, + "tags": [ + "compliance", + "invoice", + "formatting", + "regulatory", + "finance", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"supplier\":\"ABC Ltd.\",\"purchaser\":\"XYZ Inc.\",\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":150}],\"total\":1500,\"taxRate\":0.20,\"invoiceDate\":\"2024-05-01\"},\"complianceStandard\":\"EU VAT\",\"includeTaxDetails\":true,\"currency\":\"EUR\",\"dateFormat\":\"YYYY-MM-DD\"}", + "description": "Format invoice data to comply with EU VAT regulations including detailed tax information with standard date format." + }, + { + "inputJson": "{\"invoiceData\":{\"supplier\":\"Tech Supplies Co.\",\"purchaser\":\"Manufacturing LLC\",\"items\":[{\"description\":\"Laptop\",\"quantity\":5,\"unitPrice\":1200}],\"total\":6000,\"taxRate\":0.10,\"invoiceDate\":\"05/15/2024\"},\"complianceStandard\":\"US GAAP\",\"includeTaxDetails\":false,\"currency\":\"USD\",\"dateFormat\":\"MM/DD/YYYY\"}", + "description": "Format US invoice data according to US GAAP rules without including tax details and using US date format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "compliance-management.formatModule", + "description": "Formats a software compliance module source code according to specified coding guidelines and regulatory requirements. Accepts the module code as input, applies formatting rules including indentation, naming conventions, and header comments referencing compliance standards, then outputs the well-structured and compliant-coded module text.", + "category": "compliance-management", + "parameters": [ + { + "name": "moduleCode", + "type": "string", + "description": "The raw source code of the compliance module to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "codingStandard", + "type": "string", + "description": "The coding standard to apply (e.g., 'PEP8', 'GoogleStyle', 'CustomComplianceStandard').", + "required": true, + "defaultValue": "CustomComplianceStandard" + }, + { + "name": "regulatoryReferences", + "type": "array", + "description": "List of regulatory standards to include as comments or metadata in the code (e.g., ['GDPR','HIPAA']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use per indentation level in the formatted code.", + "required": false, + "defaultValue": "4" + }, + { + "name": "enforceNamingConventions", + "type": "boolean", + "description": "Whether to enforce naming conventions for variables, functions, and classes as per compliance rules.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeHeaderComment", + "type": "boolean", + "description": "Whether to include a header comment block referencing compliance and licensing information.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted module code string and a summary report of formatting changes applied." + }, + "aiAgent": { + "useCase": "Use when preparing or reviewing software modules that must comply with specific regulatory policies and coding standards, ensuring that source code conforms to required format and compliance guidelines before deployment or auditing.", + "limitations": "This tool does not perform static analysis, vulnerability scanning, or full legal compliance validation; it only formats code and inserts standard compliance references.", + "examples": [ + "Format a legacy compliance module to adhere to GDPR coding guidelines and ensure header comments include regulatory references.", + "Apply company-specific compliance formatting to new module code prior to code review.", + "Reformat code with consistent indentation and naming conventions as required by audit standards." + ] + }, + "tags": [ + "formatting", + "compliance", + "code-quality", + "regulatory", + "software-engineering" + ], + "examples": [ + { + "inputJson": "{\"moduleCode\":\"def processData():\\n pass\",\"codingStandard\":\"PEP8\",\"regulatoryReferences\":[\"GDPR\"],\"indentationSpaces\":4,\"enforceNamingConventions\":true,\"includeHeaderComment\":true}", + "description": "Format a simple Python module with GDPR reference and PEP8 style." + }, + { + "inputJson": "{\"moduleCode\":\"class userData{\\npublic:\\nvoid getInfo(){}}\",\"codingStandard\":\"CustomComplianceStandard\",\"regulatoryReferences\":[\"HIPAA\"],\"indentationSpaces\":2,\"enforceNamingConventions\":true,\"includeHeaderComment\":true}", + "description": "Format a C++ compliance module with HIPAA references and 2-space indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "compliance-management.buildVariable", + "description": "Constructs a compliance variable object to represent regulatory policy parameters or settings. Accepts inputs defining variable name, data type, value constraints, description, and optional default value. Processes these inputs to produce a standardized variable object suitable for use in compliance rules engines or policy validation workflows.", + "category": "compliance-management", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique name identifier for the compliance variable to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataType", + "type": "string", + "description": "The data type of the variable, e.g., string, number, boolean, date, or enum.", + "required": true, + "defaultValue": "" + }, + { + "name": "allowedValues", + "type": "array", + "description": "Optional list of allowed values (enumeration) the variable can take; leave empty if not applicable.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minValue", + "type": "number", + "description": "Optional minimum numeric value for the variable; applicable if dataType is number.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxValue", + "type": "number", + "description": "Optional maximum numeric value for the variable; applicable if dataType is number.", + "required": false, + "defaultValue": "" + }, + { + "name": "isRequired", + "type": "boolean", + "description": "Indicates whether this variable is mandatory in rules or compliance configurations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "A human-readable description or explanation of the compliance variable's purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Optional default value assigned to the variable when none is provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the compliance variable with all its defined attributes, validations, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when constructing or defining compliance variables representing policy parameters for use within compliance management systems. It helps standardize variable definitions for automation, validations, and enforcing compliance rules. Ideal when an AI agent needs to formalize variable attributes to ensure consistency across compliance workflows.", + "limitations": "Cannot perform compliance rule evaluation or enforcement; only builds variable definitions. It does not validate semantic correctness of variable usage within broader regulatory contexts.", + "examples": [ + "Create a numeric compliance variable 'maxTransactionAmount' with a minimum of 0 and maximum of 1000000, mandatory with a default of 10000.", + "Define a string enumeration variable 'dataClassification' to accept values 'Public', 'Internal', 'Confidential', and 'Restricted'.", + "Build a boolean variable 'isAuditRequired' which is optional and defaults to false." + ] + }, + "tags": [ + "compliance", + "variable", + "definition", + "policy", + "management", + "validation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"maxTransactionAmount\",\"dataType\":\"number\",\"minValue\":0,\"maxValue\":1000000,\"isRequired\":true,\"defaultValue\":\"10000\",\"description\":\"Maximum monetary amount allowed per transaction.\"}", + "description": "Creating a required numeric variable describing maximum transaction amount with range limits and default." + }, + { + "inputJson": "{\"variableName\":\"dataClassification\",\"dataType\":\"string\",\"allowedValues\":[\"Public\",\"Internal\",\"Confidential\",\"Restricted\"],\"isRequired\":true,\"description\":\"Classification level of data.\"}", + "description": "Defining a string enumeration variable to categorize data classification levels." + }, + { + "inputJson": "{\"variableName\":\"isAuditRequired\",\"dataType\":\"boolean\",\"isRequired\":false,\"defaultValue\":\"false\",\"description\":\"Indicates if audit is required for this process.\"}", + "description": "Building an optional boolean variable indicating audit requirements with a default value." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "compliance-management.draftContract", + "description": "This tool drafts a legally compliant contract based on provided contract type, parties involved, key terms, and jurisdiction. It processes the input parameters to generate a tailored contract document that aligns with relevant regulatory requirements and best practices.", + "category": "compliance-management", + "parameters": [ + { + "name": "contractType", + "type": "string", + "description": "Type of contract to draft (e.g., NDA, Employment, Sales Agreement).", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the contract, each with name and role.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyTerms", + "type": "object", + "description": "Object containing key contractual clauses and their details (e.g., duration, payment terms, confidentiality).", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction governing the contract (e.g., 'California, USA').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComplianceClauses", + "type": "boolean", + "description": "Flag to include standard compliance and regulatory clauses relevant to jurisdiction and contract type.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Preferred language of the drafted contract.", + "required": false, + "defaultValue": "English" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract text and metadata such as contract type, parties, and included clauses." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a first draft of a contract to meet regulatory compliance and contractual requirements based on user inputs like contract type, parties, and jurisdiction. It assists in automating contract generation for legal and compliance workflows.", + "limitations": "This tool does not provide legal advice and cannot replace professional legal review; it only produces drafts based on standard templates and input data.", + "examples": [ + "Draft an NDA between Company A and Company B under California law including confidentiality and non-compete clauses.", + "Create an employment contract for a new hire including payment terms and leave policies under UK jurisdiction." + ] + }, + "tags": [ + "compliance", + "contract", + "drafting", + "legal", + "regulatory", + "automation" + ], + "examples": [ + { + "inputJson": "{\"contractType\":\"NDA\",\"parties\":[{\"name\":\"Company A\",\"role\":\"Disclosing Party\"},{\"name\":\"Company B\",\"role\":\"Receiving Party\"}],\"keyTerms\":{\"duration\":\"2 years\",\"confidentiality\":\"strict\",\"nonCompete\":\"12 months\"},\"jurisdiction\":\"California, USA\",\"includeComplianceClauses\":true,\"language\":\"English\"}", + "description": "Drafts an NDA contract for two companies under California jurisdiction with compliance clauses included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "compliance-management.composeSentence", + "description": "Generates regulatory or policy compliance sentences based on input parameters such as compliance topic, jurisdiction, and compliance type. Processes the inputs to compose a clear, accurate, and contextually relevant compliance statement suitable for reports, audits, or documentation.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceTopic", + "type": "string", + "description": "The specific compliance area or regulation to address (e.g., data privacy, financial reporting).", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The legal or regulatory jurisdiction applicable (e.g., EU, US Federal, HIPAA).", + "required": false, + "defaultValue": "" + }, + { + "name": "complianceType", + "type": "string", + "description": "Type of compliance statement required such as requirement, recommendation, or violation description.", + "required": false, + "defaultValue": "requirement" + }, + { + "name": "audienceLevel", + "type": "string", + "description": "Intended audience expertise level (e.g., expert, non-expert) to adjust sentence complexity.", + "required": false, + "defaultValue": "non-expert" + }, + { + "name": "includeDeadline", + "type": "boolean", + "description": "Whether to include compliance deadlines or effective dates in the sentence.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed compliance sentence as a string under the 'sentence' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate clear and contextually accurate compliance-related sentences tailored to specific regulations, jurisdictions, and target audiences. Ideal for drafting statements for compliance documentation, audit reports, or policy summaries.", + "limitations": "This tool does not interpret legal texts or provide legal advice. It cannot verify actual compliance status or parse complex multi-regulatory interactions beyond provided inputs.", + "examples": [ + "Compose a data privacy compliance requirement sentence for the EU GDPR for a non-expert audience.", + "Generate a recommendation statement about financial reporting compliance in US Federal jurisdiction.", + "Create a violation description related to HIPAA compliance including the deadline." + ] + }, + "tags": [ + "compliance", + "sentence generation", + "regulatory", + "policy", + "documentation", + "jurisdiction" + ], + "examples": [ + { + "inputJson": "{\"complianceTopic\":\"data privacy\",\"jurisdiction\":\"EU GDPR\",\"complianceType\":\"requirement\",\"audienceLevel\":\"non-expert\",\"includeDeadline\":false}", + "description": "Generate a simple compliance requirement sentence about data privacy under EU GDPR for a general audience." + }, + { + "inputJson": "{\"complianceTopic\":\"financial reporting\",\"jurisdiction\":\"US Federal\",\"complianceType\":\"recommendation\",\"audienceLevel\":\"expert\",\"includeDeadline\":false}", + "description": "Create an expert-level recommendation statement related to US Federal financial reporting compliance." + }, + { + "inputJson": "{\"complianceTopic\":\"HIPAA\",\"jurisdiction\":\"US Federal\",\"complianceType\":\"violation\",\"audienceLevel\":\"non-expert\",\"includeDeadline\":true}", + "description": "Compose a violation sentence describing a HIPAA compliance breach including deadline information for a non-expert audience." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "compliance-management.buildQuery", + "description": "Constructs a structured query to check regulatory or policy compliance from specified criteria. Accepts compliance rules, data fields, and conditions as input, processes them into a query format (e.g., SQL or DSL), and outputs the query string for compliance validation or reporting.", + "category": "compliance-management", + "parameters": [ + { + "name": "rules", + "type": "array", + "description": "An array of compliance rules or policies to include in the query. Each rule specifies the requirement to be tested.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFields", + "type": "array", + "description": "List of data fields or attributes to reference in the query corresponding to system or dataset columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "object", + "description": "Optional object defining logical conditions (AND, OR, NOT) to combine rules or to filter data in the query.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output query format, such as 'SQL', 'Lucene', 'ElasticsearchDSL', etc.", + "required": false, + "defaultValue": "SQL" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Flag to include explanatory comments in the generated query for readability.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query as a string and metadata about rules applied." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate queries that test compliance with regulatory policies or internal standards, by translating legal or policy rules into executable query code for compliance engines or reporting tools. It helps automate compliance validation by producing semantically correct queries.", + "limitations": "Cannot interpret ambiguous or incomplete rules without explicit parameters. It doesn't execute the query or fetch data, only builds the query string. The correctness depends on accurate input rules and syntax support for the chosen output format.", + "examples": [ + "Generate a SQL query to check that all user records have age above 18 as per compliance.", + "Build a query combining GDPR data protection rules on personal data presence.", + "Create an Elasticsearch DSL query to find records violating retention policy." + ] + }, + "tags": [ + "compliance", + "query-building", + "regulations", + "policy-validation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"rules\":[{\"id\":\"R1\",\"field\":\"age\",\"operator\":\">=\",\"value\":18}],\"dataFields\":[\"age\",\"userId\",\"registrationDate\"],\"conditions\":{\"logic\":\"AND\"},\"outputFormat\":\"SQL\",\"includeComments\":true}", + "description": "Build SQL query enforcing minimum age compliance rule with comments." + }, + { + "inputJson": "{\"rules\":[{\"id\":\"GDPR1\",\"field\":\"personalData\",\"operator\":\"exists\",\"value\":true},{\"id\":\"GDPR2\",\"field\":\"dataConsent\",\"operator\":\"=\",\"value\":true}],\"dataFields\":[\"personalData\",\"dataConsent\",\"userId\"],\"conditions\":{\"logic\":\"AND\"},\"outputFormat\":\"ElasticsearchDSL\",\"includeComments\":false}", + "description": "Construct Elasticsearch DSL query for GDPR compliance combining two conditions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "compliance-management.composeParagraph", + "description": "Generates a compliance-related paragraph based on provided regulatory topics, jurisdiction, and tone. Accepts input parameters defining the compliance area (e.g., data privacy), applicable jurisdiction, and desired tone (formal, advisory). Produces a coherent, context-aware paragraph suited for inclusion in compliance documents or policy briefs.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceTopic", + "type": "string", + "description": "The specific compliance topic or regulation area to address (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The legal jurisdiction or region relevant to the compliance topic (e.g., EU, US federal).", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the paragraph, such as formal, advisory, or explanatory.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the paragraph in number of sentences.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed compliance paragraph as a string under the key 'paragraph'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate clear, well-structured compliance discussion paragraphs tailored to specific regulatory topics and jurisdictions. Ideal for drafting sections of compliance manuals, policy documents, and regulatory summaries where a coherent paragraph is required based on input context.", + "limitations": "This tool cannot provide legally binding advice or interpret nuanced regulations beyond general compliant phrasing. It also does not substitute professional legal consultation.", + "examples": [ + "Compose a paragraph on GDPR compliance requirements for EU companies in a formal tone.", + "Generate an advisory paragraph about HIPAA data handling rules for US healthcare providers.", + "Create a 3-sentence explanatory paragraph on workplace safety regulations under OSHA jurisdiction." + ] + }, + "tags": [ + "compliance", + "regulation", + "document generation", + "policy", + "legal writing", + "paragraph composition" + ], + "examples": [ + { + "inputJson": "{\"complianceTopic\":\"GDPR\",\"jurisdiction\":\"EU\",\"tone\":\"formal\",\"length\":5}", + "description": "Generate a formal paragraph detailing GDPR compliance considerations within the EU." + }, + { + "inputJson": "{\"complianceTopic\":\"HIPAA\",\"jurisdiction\":\"US\",\"tone\":\"advisory\",\"length\":4}", + "description": "Create an advisory paragraph outlining HIPAA data protection requirements for US healthcare entities." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "compliance-management.buildComponent", + "description": "Builds a compliance management software component that enforces specified regulatory requirements. Accepts compliance rules, regulatory framework details, and configuration settings as input. Processes these inputs to generate a reusable code module (in specified programming language) implementing automated compliance checks and reporting. Outputs the component code and metadata for integration into larger compliance systems.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulatoryFramework", + "type": "string", + "description": "Name of the regulatory framework to comply with (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceRules", + "type": "array", + "description": "Array of objects representing specific compliance rules with details such as ruleId, description, and severity.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputLanguage", + "type": "string", + "description": "Programming language for the generated component code (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "componentName", + "type": "string", + "description": "Name to assign to the generated compliance component/module.", + "required": true, + "defaultValue": "ComplianceComponent" + }, + { + "name": "includeReporting", + "type": "boolean", + "description": "Whether to include automated compliance reporting functionality in the component.", + "required": false, + "defaultValue": "true" + }, + { + "name": "configOptions", + "type": "object", + "description": "Optional configuration settings for component behavior, such as logging level or error handling preferences.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'componentCode' string with the source code, and 'metadata' object with details like language, rules applied, and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate a reusable software component that enforces compliance policies according to specified regulatory standards and rules, accelerating compliance system development and ensuring consistency.", + "limitations": "This tool does not perform validation of the generated code against actual runtime environments or guarantee legal compliance. Integration and testing of the component are necessary after generation.", + "examples": [ + "Generate a GDPR compliance component in Python enforcing data subject consent and breach notification rules.", + "Build a HIPAA compliance module in JavaScript including reporting capabilities for monitoring.", + "Create a generic compliance component for PCI-DSS rules without reporting features." + ] + }, + "tags": [ + "compliance", + "component", + "build", + "regulatory", + "automation", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"regulatoryFramework\":\"GDPR\",\"complianceRules\":[{\"ruleId\":\"DSR001\",\"description\":\"Data subject consent must be logged\",\"severity\":\"high\"},{\"ruleId\":\"BN001\",\"description\":\"Data breach notification within 72 hours\",\"severity\":\"critical\"}],\"outputLanguage\":\"Python\",\"componentName\":\"GDPRComplianceModule\",\"includeReporting\":true,\"configOptions\":{\"loggingLevel\":\"verbose\"}}", + "description": "Generate a GDPR compliance component in Python that logs consent and supports breach notification reporting." + }, + { + "inputJson": "{\"regulatoryFramework\":\"HIPAA\",\"complianceRules\":[{\"ruleId\":\"PHI001\",\"description\":\"Protect Personal Health Information in transit and at rest\",\"severity\":\"critical\"}],\"outputLanguage\":\"JavaScript\",\"componentName\":\"HipaaComplianceChecker\",\"includeReporting\":false}", + "description": "Create a HIPAA compliance checking module in JavaScript without reporting features." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "compliance-management.generateSession", + "description": "Generates a compliance monitoring session by analyzing user activity logs, applicable compliance policies, and contextual metadata. Accepts activity logs and policy references as input, processes to identify compliance events and risk factors, and outputs a summarized session report with timestamps, flagged incidents, and recommendations for compliance actions.", + "category": "compliance-management", + "parameters": [ + { + "name": "activityLogs", + "type": "array", + "description": "An array of user activity log entries to be analyzed during the session. Each entry should include userId, timestamp, action, and resource accessed.", + "required": true, + "defaultValue": "" + }, + { + "name": "policyReferences", + "type": "array", + "description": "A list of applicable compliance policies or rules to evaluate the activities against, identified by policy ID or name.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionStart", + "type": "string", + "description": "ISO 8601 timestamp marking the start time of the session period to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionEnd", + "type": "string", + "description": "ISO 8601 timestamp marking the end time of the session period to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "Numeric threshold (0-1) specifying minimum risk score to flag an event as non-compliant.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include remediation recommendations in the output for identified compliance issues.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured session report object containing session metadata, compliance event list with severity and timestamps, aggregate compliance score, and recommendations if requested." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to generate a detailed compliance session summary from raw activity logs and relevant policies, useful for audit preparation, compliance monitoring, and risk assessment. It helps transform raw data into actionable compliance insights.", + "limitations": "This tool does not perform real-time monitoring or live alerting, it requires structured logs and policy definitions for meaningful analysis. It cannot enforce policies, only summarize compliance status based on input data.", + "examples": [ + "Generate a compliance session report for activity logs between two timestamps using specified GDPR and HIPAA policies.", + "Analyze the past week's user activity logs against internal security policies and output compliance risk events.", + "Provide a session summary highlighting non-compliant user actions with recommendations for corrective steps." + ] + }, + "tags": [ + "compliance", + "session", + "analytics", + "policy", + "risk", + "audit", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"activityLogs\":[{\"userId\":\"user123\",\"timestamp\":\"2024-05-01T08:30:00Z\",\"action\":\"access\",\"resource\":\"customer_data\"},{\"userId\":\"user456\",\"timestamp\":\"2024-05-01T09:00:00Z\",\"action\":\"modify\",\"resource\":\"financial_report\"}],\"policyReferences\":[\"GDPR\",\"HIPAA\"],\"sessionStart\":\"2024-05-01T00:00:00Z\",\"sessionEnd\":\"2024-05-01T23:59:59Z\",\"riskThreshold\":0.8,\"includeRecommendations\":true}", + "description": "Generate a compliance session report for a single day analyzing user actions under GDPR and HIPAA with a high-risk threshold and include recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "compliance-management.generateHTML", + "description": "Generates a compliance report as an HTML document based on provided compliance data and configuration options. Accepts raw compliance findings and metadata, processes and formats this information into a structured, styled HTML report for easy review and distribution.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceData", + "type": "object", + "description": "An object containing compliance findings, status codes, and relevant audit data to be presented in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "The title to display at the top of the generated HTML compliance report.", + "required": false, + "defaultValue": "Compliance Report" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag indicating whether to include a summary section in the report highlighting key compliance metrics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme for the report, affecting colors and fonts; options include 'light' and 'dark'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include a timestamp indicating when the report was generated.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customStyles", + "type": "string", + "description": "Additional CSS styles to be embedded inline to further customize the report's appearance.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string for the compliance report and metadata about the report generation." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to transform raw compliance audit data into a readable, styled HTML report suitable for stakeholders and regulatory submission. It helps automate report generation workflows by producing consistent, well-formatted HTML documents from structured compliance inputs.", + "limitations": "This tool does not validate compliance data accuracy or completeness. It also does not generate PDF or other document formats, only HTML. Styling customization is limited to themes and inline CSS; advanced layouts or interactive features require post-processing.", + "examples": [ + "Generate an HTML compliance report from audit data with default styling.", + "Create a dark-themed HTML report including a summary and timestamp.", + "Produce a summary-only compliance HTML document with custom CSS styling." + ] + }, + "tags": [ + "compliance", + "report-generation", + "HTML", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"complianceData\":{\"findings\":[{\"id\":\"FD001\",\"description\":\"Encryption not enabled\",\"severity\":\"High\",\"status\":\"Non-compliant\"},{\"id\":\"FD002\",\"description\":\"Outdated software version\",\"severity\":\"Medium\",\"status\":\"Warning\"}],\"summary\":{\"totalFindings\":2,\"nonCompliant\":1,\"warnings\":1}},\"reportTitle\":\"Quarterly Compliance Audit\",\"includeSummary\":true,\"theme\":\"light\",\"includeTimestamp\":true,\"customStyles\":\"\"}", + "description": "Generate a light-themed compliance report including summary and timestamp using provided findings." + }, + { + "inputJson": "{\"complianceData\":{\"findings\":[{\"id\":\"FD100\",\"description\":\"Missing employee training records\",\"severity\":\"High\",\"status\":\"Non-compliant\"}],\"summary\":{\"totalFindings\":1,\"nonCompliant\":1,\"warnings\":0}},\"reportTitle\":\"Employee Compliance Review\",\"includeSummary\":true,\"theme\":\"dark\",\"includeTimestamp\":false,\"customStyles\":\"body { font-family: Arial, sans-serif; }\"}", + "description": "Generate a dark-themed compliance report with custom font styling, excluding timestamp." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "compliance-management.createDeal", + "description": "Creates a compliance-focused deal record by accepting deal details and regulatory criteria, validating inputs against applicable compliance rules, and returning a structured deal object with compliance status and relevant notes.", + "category": "compliance-management", + "parameters": [ + { + "name": "dealName", + "type": "string", + "description": "The official name or title of the deal to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "The monetary value of the deal, in specified currency units.", + "required": true, + "defaultValue": "" + }, + { + "name": "partiesInvolved", + "type": "array", + "description": "List of parties (companies or individuals) involved in the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Geographic or legal jurisdiction where the deal is established, affecting regulatory compliance.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceCriteria", + "type": "object", + "description": "Object specifying compliance requirements and regulations to be checked against the deal, e.g., anti-corruption, export controls.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealDescription", + "type": "string", + "description": "A brief description of the deal's purpose and terms.", + "required": false, + "defaultValue": "" + }, + { + "name": "dealStartDate", + "type": "string", + "description": "ISO 8601 formatted start date of the deal.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created deal's unique ID, overall compliance status, detailed compliance check results, and any generated notes or warnings." + }, + "aiAgent": { + "useCase": "Use this tool when initiating a new commercial or regulatory deal that must comply with specific legal or policy frameworks. It helps validate deal data against compliance rules, ensuring early detection of potential issues and generating structured records for audit and tracking.", + "limitations": "This tool does not perform actual legal counsel or replace expert human compliance review. It primarily validates provided criteria and basic rules.", + "examples": [ + "Create a new international sales deal ensuring compliance with export control regulations.", + "Establish a joint venture deal that requires anti-corruption compliance checks.", + "Generate a deal record for a merger that must comply with antitrust laws." + ] + }, + "tags": [ + "compliance", + "deal-creation", + "regulatory", + "business", + "legal", + "validation" + ], + "examples": [ + { + "inputJson": "{\"dealName\":\"Global Tech Acquisition\",\"dealValue\":50000000,\"partiesInvolved\":[\"Global Tech Inc\",\"Acme Holdings\"],\"jurisdiction\":\"US\",\"complianceCriteria\":{\"antiCorruption\":true,\"exportControl\":true},\"dealDescription\":\"Acquisition of Global Tech's assets by Acme Holdings\",\"dealStartDate\":\"2024-07-01\"}", + "description": "Create a large acquisition deal with anti-corruption and export control compliance checks in US jurisdiction." + }, + { + "inputJson": "{\"dealName\":\"European Partnership Agreement\",\"dealValue\":2000000,\"partiesInvolved\":[\"EuroBiz GmbH\",\"Partner Co\"],\"jurisdiction\":\"Germany\",\"complianceCriteria\":{\"dataPrivacy\":true},\"dealDescription\":\"A partnership focusing on data services in EU region\",\"dealStartDate\":\"2024-08-15\"}", + "description": "Create a partnership deal ensuring data privacy compliance in Germany." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "compliance-management.createReply", + "description": "Generates a compliant, professional reply message to regulatory inquiries or audit findings based on provided compliance context and sender details. Accepts inquiry details and compliance policies, analyzes them, and produces a tailored response text that aligns with organizational and regulatory standards.", + "category": "compliance-management", + "parameters": [ + { + "name": "inquiryId", + "type": "string", + "description": "Unique identifier for the regulatory inquiry or audit communication.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientName", + "type": "string", + "description": "Name of the person or organization sending the inquiry.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the compliance officer or team sending the reply.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceContext", + "type": "string", + "description": "Summary or key points of relevant compliance regulations or policies to address in the reply.", + "required": true, + "defaultValue": "" + }, + { + "name": "inquiryDetails", + "type": "string", + "description": "Detailed text or abstract of the inquiry content to be addressed.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the reply message, e.g., formal, conciliatory, informative.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeReferences", + "type": "boolean", + "description": "Whether to include references to specific regulations or policy documents in the response.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the reply message text formatted for compliance communication." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent must craft a well-informed and policy-aligned response to regulatory audits, inquiries, or compliance investigations. It helps standardize replies to reduce risk and maintain professional, accurate communication under compliance constraints.", + "limitations": "The tool cannot independently verify the accuracy or legality of compliance content and should be reviewed by human compliance experts before sending. It does not generate new compliance policy, only replies based on provided context.", + "examples": [ + "Generate a formal reply to a data privacy audit inquiry referencing GDPR compliance.", + "Create a conciliatory response addressing an environmental regulation violation notice.", + "Produce an informative reply including regulation references for a financial compliance request." + ] + }, + "tags": [ + "compliance", + "communication", + "regulatory", + "audit", + "reply", + "automation", + "policy" + ], + "examples": [ + { + "inputJson": "{\"inquiryId\":\"AQ20240615-01\",\"recipientName\":\"Regulatory Audit Team\",\"senderName\":\"Compliance Officer Jane Smith\",\"complianceContext\":\"Data privacy policies under GDPR, Article 15 rights\",\"inquiryDetails\":\"The inquiry requests clarification on our data subject access procedures and records retention policies.\",\"tone\":\"formal\",\"includeReferences\":true}", + "description": "Generate a formal GDPR compliance reply to a data privacy audit inquiry." + }, + { + "inputJson": "{\"inquiryId\":\"ENV-98765\",\"recipientName\":\"Environmental Protection Agency\",\"senderName\":\"Compliance Manager John Doe\",\"complianceContext\":\"Environmental regulations related to waste disposal standards\",\"inquiryDetails\":\"Inquiry regarding recent waste handling procedures and documentation.\",\"tone\":\"conciliatory\",\"includeReferences\":false}", + "description": "Create a conciliatory reply addressing an environmental regulation violation notice without including document references." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "compliance-management.createCluster", + "description": "Creates a new infrastructure cluster configured to meet specified regulatory compliance standards. Accepts cluster details, compliance policies to enforce, and resource specifications, then sets up and validates the cluster accordingly, returning status and compliance verification results.", + "category": "compliance-management", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "Unique name identifier for the new cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the cluster will be provisioned.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance frameworks to enforce (e.g., HIPAA, GDPR, PCI-DSS).", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of nodes to include in the cluster.", + "required": false, + "defaultValue": "3" + }, + { + "name": "nodeType", + "type": "string", + "description": "Type or size of nodes for the cluster infrastructure.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "enableAutoRemediation", + "type": "boolean", + "description": "Whether to enable automatic remediation for compliance violations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value tags to assign to the cluster for organization or billing.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing cluster ID, setup status, detailed compliance report summary, and remediation enablement status." + }, + "aiAgent": { + "useCase": "Use this tool when tasked with provisioning new infrastructure clusters in environments that must comply with specific regulatory standards. It helps automate cluster creation with built-in compliance enforcement, reducing manual setup errors and audit risks.", + "limitations": "This tool does not directly manage ongoing runtime compliance monitoring beyond initial setup and validation. It also depends on predefined compliance templates and cannot create custom compliance policies.", + "examples": [ + "Create a HIPAA-compliant cluster with 5 high-memory nodes in us-east-1 region.", + "Provision a GDPR and PCI-DSS compliant cluster named 'europe-finance' enabling auto remediation.", + "Set up a standard compliance cluster with 3 nodes and tag it for billing as project 'alpha'." + ] + }, + "tags": [ + "compliance", + "cluster", + "infrastructure", + "provisioning", + "regulatory", + "automation" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"fin-secure-1\",\"region\":\"us-west-2\",\"complianceStandards\":[\"HIPAA\"],\"nodeCount\":4,\"nodeType\":\"high-memory\",\"enableAutoRemediation\":true}", + "description": "Create a HIPAA compliant cluster with 4 high-memory nodes in the us-west-2 region, enabling auto remediation." + }, + { + "inputJson": "{\"clusterName\":\"eu-analytics\",\"region\":\"eu-central-1\",\"complianceStandards\":[\"GDPR\",\"PCI-DSS\"],\"nodeCount\":6,\"enableAutoRemediation\":false,\"tags\":{\"environment\":\"prod\",\"owner\":\"analytics-team\"}}", + "description": "Provision a cluster in the EU region compliant with GDPR and PCI-DSS with 6 nodes, tagged for environment and owner, without auto remediation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "compliance-management.createSecret", + "description": "Creates and stores a compliance-managed secret value securely for use within regulated environments. Accepts secret metadata and value input, validates compliance policies, encrypts the secret, and outputs a secure identifier and access metadata for future retrieval and audit.", + "category": "compliance-management", + "parameters": [ + { + "name": "secretName", + "type": "string", + "description": "The unique name identifier for the secret to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "secretValue", + "type": "string", + "description": "The sensitive secret data or credential to be securely stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceTags", + "type": "array", + "description": "Array of compliance tags or categories indicating applicable regulatory frameworks (e.g., HIPAA, GDPR).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "expiryDate", + "type": "string", + "description": "Optional ISO 8601 date string specifying when the secret should expire and be rotated or deleted.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessPolicies", + "type": "object", + "description": "Object specifying access control policies such as roles or user groups allowed to retrieve the secret.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text about the secret's purpose and usage context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique secret identifier, creation timestamp, compliance tags applied, and encrypted storage metadata for audit and retrieval." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create and securely store secret values that must comply with regulatory and policy requirements. It ensures secrets are encrypted, tagged with compliance metadata, and governed with access controls appropriate to the organization's compliance needs.", + "limitations": "This tool does not handle secret retrieval or secret rotation automatically. It only creates and stores secrets compliant with specified policies; managing secret lifecycle requires additional tools.", + "examples": [ + "Create a new database credential secret with HIPAA compliance tags and restricted user group access.", + "Create an API key secret that expires in 90 days and is tagged for GDPR compliance.", + "Store a service account password with descriptive labels for audit purposes." + ] + }, + "tags": [ + "compliance", + "secret-management", + "security", + "encryption", + "policy", + "access-control" + ], + "examples": [ + { + "inputJson": "{\"secretName\":\"dbAdminPassword\",\"secretValue\":\"StrongP@ssw0rd!\",\"complianceTags\":[\"HIPAA\"],\"accessPolicies\":{\"roles\":[\"DBAdmin\"]},\"description\":\"Admin password for HIPAA-compliant database access.\"}", + "description": "Creates a HIPAA-compliant secret for database admin access with role-based permissions." + }, + { + "inputJson": "{\"secretName\":\"apiKeyServiceA\",\"secretValue\":\"abcd1234efgh5678\",\"complianceTags\":[\"GDPR\"],\"expiryDate\":\"2025-12-31T23:59:59Z\",\"accessPolicies\":{\"userGroups\":[\"ServiceA-Dev\"]}}", + "description": "Stores a GDPR tagged API key secret with a specific expiry date and group-based access." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "compliance-management.createThread", + "description": "Creates a new compliance-related communication thread for tracking discussions, issues, and resolutions related to regulatory policies or internal compliance requirements. Accepts inputs such as thread title, related policy IDs, assigned users, priority, and description, and outputs a thread summary including a unique identifier and creation timestamp.", + "category": "compliance-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the compliance thread to summarize the discussion topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedPolicyIds", + "type": "array", + "description": "List of regulatory or internal policy identifiers that this thread is related to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "assignedUserIds", + "type": "array", + "description": "User IDs assigned to monitor or respond to this compliance thread.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the thread, e.g., 'Low', 'Medium', 'High'.", + "required": false, + "defaultValue": "Medium" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description or initial message content outlining the compliance issue or topic.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Custom keywords or tags to help categorize or search the thread.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dueDate", + "type": "string", + "description": "Optional due date for resolving the compliance issue in ISO 8601 format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created thread's unique ID, creation timestamp, title, and assigned users." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to initiate or log a new communication thread centered on a compliance topic, such as regulatory inquiry, audit findings, or policy clarifications, enabling structured tracking and assignment.", + "limitations": "This tool does not manage message replies within the thread, nor does it automate compliance review or decision-making.", + "examples": [ + "Create a new compliance thread titled 'Data Privacy Audit Q2' related to GDPR policy with assigned users and high priority.", + "Start a thread to discuss upcoming changes in financial regulations linked to multiple policy IDs, with a detailed description and due date.", + "Open a low priority thread tagged 'compliance training' to organize feedback about recent employee training sessions." + ] + }, + "tags": [ + "compliance", + "thread", + "communication", + "policy", + "management", + "regulatory", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"title\":\"GDPR Compliance Review Initiation\",\"relatedPolicyIds\":[\"GDPR-2018\"],\"assignedUserIds\":[\"user123\",\"user456\"],\"priority\":\"High\",\"description\":\"Starting review for upcoming GDPR audit Q3\",\"tags\":[\"GDPR\",\"audit\"],\"dueDate\":\"2024-08-01T00:00:00Z\"}", + "description": "Create a high-priority thread to initiate GDPR compliance review, assign specific users, with due date." + }, + { + "inputJson": "{\"title\":\"Review of New Financial Compliance Guidelines\",\"relatedPolicyIds\":[\"FIN-REG-2024\"],\"assignedUserIds\":[],\"priority\":\"Medium\",\"description\":\"Discuss implications of new financial compliance guidelines introduced in 2024.\"}", + "description": "Create a medium-priority discussion thread for updated financial regulations, no assigned users initially." + }, + { + "inputJson": "{\"title\":\"Employee Compliance Training Feedback\",\"priority\":\"Low\",\"tags\":[\"training\",\"feedback\"]}", + "description": "Create a low-priority thread to collect feedback on recent employee compliance trainings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "compliance-management.createTrend", + "description": "Generates a compliance risk trend report by analyzing historical compliance data within specified parameters such as regulation type, time range, and organizational unit. Processes input data to identify trends and outputs a structured summary showing increasing or decreasing compliance risks over time.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulationType", + "type": "string", + "description": "Type of regulation to analyze (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for trend analysis in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for trend analysis in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "orgUnit", + "type": "string", + "description": "Organizational unit or department to filter compliance data.", + "required": false, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "string", + "description": "Source identifier for compliance data (e.g., internal audit system).", + "required": true, + "defaultValue": "" + }, + { + "name": "trendType", + "type": "string", + "description": "Type of trend to create (e.g., violationCount, riskScore).", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationPeriod", + "type": "string", + "description": "Time aggregation period for trend (e.g., daily, weekly, monthly).", + "required": false, + "defaultValue": "monthly" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a summary and detailed data points representing compliance risk trends over the specified period, including timestamps and measured values." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess how compliance risks evolve over time for specific regulations and organizational units. It helps identify whether compliance is improving or deteriorating, guiding risk mitigation strategies.", + "limitations": "This tool does not perform real-time compliance monitoring or root cause analysis. It requires historical data input and cannot generate compliance recommendations.", + "examples": [ + "Create a trend showing monthly violation counts for GDPR compliance in the Sales department over the last year.", + "Generate a risk score trend for HIPAA regulation from January to June for the Medical Records unit." + ] + }, + "tags": [ + "compliance", + "trends", + "analytics", + "regulation", + "riskManagement" + ], + "examples": [ + { + "inputJson": "{\"regulationType\":\"GDPR\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\",\"orgUnit\":\"Sales\",\"dataSource\":\"internalAuditDB\",\"trendType\":\"violationCount\",\"aggregationPeriod\":\"monthly\"}", + "description": "Monthly GDPR violation count trend for the Sales department in 2023." + }, + { + "inputJson": "{\"regulationType\":\"HIPAA\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-06-30\",\"orgUnit\":\"Medical Records\",\"dataSource\":\"complianceLogs\",\"trendType\":\"riskScore\",\"aggregationPeriod\":\"weekly\"}", + "description": "Weekly HIPAA risk score trend for Medical Records unit from Jan to June 2024." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "compliance-management.createQueue", + "description": "Creates a compliance management queue to track and process items related to regulatory or policy compliance. Accepts queue configuration parameters including name, priority level, notification settings, and retention policy. Returns details of the created queue for integration and audit purposes.", + "category": "compliance-management", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifying the compliance queue.", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Defines the urgency of the queue items; typically values like low, medium, high.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "notificationEmails", + "type": "array", + "description": "List of email addresses to notify about queue events or changes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "retentionPeriodDays", + "type": "number", + "description": "Number of days compliance records remain in the queue before automatic archival or deletion.", + "required": false, + "defaultValue": "90" + }, + { + "name": "maxItems", + "type": "number", + "description": "Maximum number of items allowed in the queue to control load and performance.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "autoEscalate", + "type": "boolean", + "description": "If true, items not addressed within a threshold will be escalated automatically.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created queue details including its ID, name, priority, and configuration." + }, + "aiAgent": { + "useCase": "Use this tool when setting up or configuring compliance-related processing workflows that require organized tracking and escalation of compliance items such as audit findings, policy violations, or regulatory tasks. It helps establish a structured queue infrastructure with notifications and retention policies to meet compliance management needs.", + "limitations": "This tool does not process or resolve queue items; it only creates the queue structure and settings. It cannot enforce compliance policies or integrate automatically with external compliance systems beyond specified notifications.", + "examples": [ + "Create a high priority compliance queue named 'HIPAA Audit Findings' with retention of 180 days and email alerts to compliance officers.", + "Set up a default compliance queue with medium priority and no auto escalation for general policy violations.", + "Create a queue limited to 500 items with automatic escalation enabled for unresolved compliance tasks after 30 days." + ] + }, + "tags": [ + "compliance", + "queue", + "management", + "automation", + "notifications", + "retention", + "escalation" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"HIPAA_Audit_Findings\",\"priorityLevel\":\"high\",\"notificationEmails\":[\"compliance@myorg.com\"],\"retentionPeriodDays\":180,\"maxItems\":500,\"autoEscalate\":true}", + "description": "Create a high priority compliance queue for HIPAA audit findings with email notifications and escalation." + }, + { + "inputJson": "{\"queueName\":\"General_Policy_Violations\"}", + "description": "Create a compliance queue using default settings for general policy violations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "compliance-management.createSession", + "description": "Creates a compliance monitoring session by accepting session metadata, compliance requirements, and user activity logs. It processes the input to establish a session context for tracking policy adherence and generates a session ID with summary of initial compliance status.", + "category": "compliance-management", + "parameters": [ + { + "name": "sessionName", + "type": "string", + "description": "A descriptive name for the compliance session.", + "required": true, + "defaultValue": "" + }, + { + "name": "initiatorUserId", + "type": "string", + "description": "Identifier of the user who initiated the compliance session.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards or policies to be monitored in this session (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "" + }, + { + "name": "startTimestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp marking the session start time.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedSystems", + "type": "array", + "description": "Array of system identifiers relevant to the compliance session.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "initialUserActivityLogs", + "type": "array", + "description": "Optional array of user activity log objects to seed the session's compliance context.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique session ID, created timestamp, and compliance monitoring status summary." + }, + "aiAgent": { + "useCase": "Use this tool when initiating a new compliance monitoring session that aggregates relevant policies, users, and system data to track adherence to regulations over time. It is useful for establishing audit contexts and ensuring continuous compliance evaluation.", + "limitations": "This tool does not perform compliance assessment itself or generate detailed reports; it only establishes the session framework and initial context.", + "examples": [ + "Create a compliance session for GDPR monitoring with initial user logs.", + "Start a session tracking HIPAA compliance for a healthcare system.", + "Initialize a multi-standard compliance session covering GDPR and CCPA with related system IDs." + ] + }, + "tags": [ + "compliance", + "session", + "monitoring", + "regulation", + "policy", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"sessionName\":\"GDPR Compliance Q2\",\"initiatorUserId\":\"user123\",\"complianceStandards\":[\"GDPR\"],\"startTimestamp\":\"2024-06-01T09:00:00Z\",\"relatedSystems\":[\"sysA\",\"sysB\"],\"initialUserActivityLogs\":[{\"userId\":\"user456\",\"action\":\"dataAccess\",\"timestamp\":\"2024-06-01T08:30:00Z\"}]}", + "description": "Starting a GDPR compliance monitoring session with initial user activity logs and related systems." + }, + { + "inputJson": "{\"sessionName\":\"HIPAA Patient Data Access\",\"initiatorUserId\":\"auditor01\",\"complianceStandards\":[\"HIPAA\"],\"startTimestamp\":\"2024-06-10T13:15:00Z\"}", + "description": "Initiating a HIPAA regulatory compliance session without initial activity logs or related systems." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "compliance-management.createResume", + "description": "Generates a professional resume document tailored for compliance and regulatory roles based on input personal data, work experience, education, certifications, and compliance-related skills. Outputs a formatted resume in PDF or DOCX format suitable for job applications in regulated industries.", + "category": "compliance-management", + "parameters": [ + { + "name": "personalInfo", + "type": "object", + "description": "Applicant's personal details including name, contact info, and professional summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "List of work experience entries including company names, roles, durations, and key compliance-related responsibilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "Educational background including institution names, degrees, graduation years relevant to compliance roles.", + "required": true, + "defaultValue": "" + }, + { + "name": "certifications", + "type": "array", + "description": "List of compliance, regulatory, or professional certifications with names and issue dates.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "skills", + "type": "array", + "description": "Key skills focused on compliance, regulatory knowledge, risk management, or related domains.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format, either 'PDF' or 'DOCX'.", + "required": false, + "defaultValue": "PDF" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resume document as a base64-encoded string and metadata including file type and suggested file name." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a compliant-ready professional resume document for applicants targeting regulatory, compliance, or risk management positions. It structures experience and certifications relevant to compliance roles for submission to recruiters or automated screening systems.", + "limitations": "Does not verify the authenticity of provided data or generate content beyond input. It cannot customize visual design beyond standard templates or handle languages other than English currently.", + "examples": [ + "Create a resume for a compliance officer with 5 years of experience and relevant certifications.", + "Generate a DOCX resume file emphasizing regulatory knowledge and risk management skills.", + "Prepare a professional PDF resume highlighting education and compliance roles for an applicant." + ] + }, + "tags": [ + "compliance", + "resume", + "document-generation", + "regulatory", + "professional-document", + "pdf", + "docx" + ], + "examples": [ + { + "inputJson": "{\"personalInfo\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phone\":\"555-1234\",\"summary\":\"Experienced compliance manager specializing in financial regulations.\"},\"workExperience\":[{\"company\":\"FinSecure Inc.\",\"role\":\"Compliance Manager\",\"startDate\":\"2018-05\",\"endDate\":\"2023-04\",\"description\":\"Led compliance strategies for SOX and GDPR.\"}],\"education\":[{\"institution\":\"State University\",\"degree\":\"B.A. in Legal Studies\",\"year\":\"2017\"}],\"certifications\":[{\"name\":\"Certified Regulatory Compliance Manager (CRCM)\",\"date\":\"2019-08\"}],\"skills\":[\"Risk Assessment\",\"Policy Development\"],\"outputFormat\":\"PDF\"}", + "description": "Create a PDF resume for an experienced compliance manager with education, certifications, and skills focused on regulatory roles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "compliance-management.createWorkflow", + "description": "Creates a compliance workflow by accepting a workflow name, description, list of compliance steps, and associated regulations. Validates the input data and outputs a structured workflow object including an autogenerated workflow ID and created timestamp for tracking and implementation.", + "category": "compliance-management", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The formal name of the compliance workflow to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description explaining the purpose and scope of the compliance workflow.", + "required": false, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered array of compliance steps; each step describes a task, responsible role, and expected outcome.", + "required": true, + "defaultValue": "" + }, + { + "name": "associatedRegulations", + "type": "array", + "description": "List of relevant regulations or standards (e.g., GDPR, HIPAA) that this workflow complies with.", + "required": false, + "defaultValue": "" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Indicates if the workflow is active and ready for deployment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the newly created compliance workflow, including a unique workflow ID, creation timestamp, and all input details structured for processing or further updates." + }, + "aiAgent": { + "useCase": "Use this tool when constructing or onboarding new compliance processes that must follow specific regulatory requirements. It helps generate structured workflows that can be reviewed, tracked, and automated within compliance management systems.", + "limitations": "This tool does not execute or enforce the compliance steps; it only designs and outputs the workflow structure. It also does not validate legal accuracy of regulations listed.", + "examples": [ + "Create a GDPR data privacy compliance workflow with multiple verification steps assigned to different departments.", + "Generate a HIPAA compliance workflow covering patient data handling steps and audit requirements.", + "Draft a general internal audit compliance workflow listing all required procedural tasks and responsible roles." + ] + }, + "tags": [ + "compliance", + "workflow", + "process-creation", + "regulation", + "management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"GDPR Compliance Review\",\"description\":\"Workflow to ensure GDPR compliance for data processing activities.\",\"steps\":[{\"task\":\"Data Inventory\",\"responsibleRole\":\"Data Protection Officer\",\"expectedOutcome\":\"Complete data record\"},{\"task\":\"Data Consent Verification\",\"responsibleRole\":\"Legal Team\",\"expectedOutcome\":\"Consents documented\"}],\"associatedRegulations\":[\"GDPR\"],\"isActive\":true}", + "description": "Create a GDPR compliance workflow with specific tasks and responsible roles." + }, + { + "inputJson": "{\"workflowName\":\"HIPAA Patient Data Handling\",\"steps\":[{\"task\":\"Access Control Setup\",\"responsibleRole\":\"IT Security\",\"expectedOutcome\":\"Access permissions configured\"},{\"task\":\"Audit Trail Verification\",\"responsibleRole\":\"Compliance Officer\",\"expectedOutcome\":\"Audit logs reviewed\"}],\"associatedRegulations\":[\"HIPAA\"],\"isActive\":false}", + "description": "Create a HIPAA compliance workflow with inactive status for later review." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "compliance-management.createXML", + "description": "This tool accepts compliance-related data and a regulatory schema identifier as inputs. It validates and transforms the input data according to specified compliance rules and regulatory standards, then generates a structured XML document. The output is a compliance-compliant XML file ready for submission or archival.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceData", + "type": "object", + "description": "An object containing compliance data fields and values to be encoded into XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaId", + "type": "string", + "description": "Identifier for the regulatory or compliance schema to which the XML must conform.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Flag to indicate whether to digitally sign the generated XML document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "signatureKey", + "type": "string", + "description": "Private key string used to sign the XML if includeSignature is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces for XML indentation for readability purposes.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated XML string and metadata about the generation process such as validation status and errors if any." + }, + "aiAgent": { + "useCase": "Use this tool when a structured XML output conforming to regulatory standards is required, based on raw compliance data inputs, especially for generating official reports or submissions in regulated industries such as finance, healthcare, or manufacturing.", + "limitations": "Cannot interpret unstructured data or automatically correct invalid compliance data. Digital signature requires valid private key input. Schema validation is limited to predefined schema IDs supported by the system.", + "examples": [ + "Generate XML report from given compliance metrics conforming to FDA schema.", + "Create signed XML submission for financial compliance audit using specified schema.", + "Produce a readable indented XML file from compliance input data without digital signature." + ] + }, + "tags": [ + "compliance", + "xml", + "data-transformation", + "regulatory", + "reporting", + "digital-signature" + ], + "examples": [ + { + "inputJson": "{\"complianceData\":{\"reportDate\":\"2024-04-30\",\"companyId\":\"12345\",\"auditStatus\":\"passed\",\"findings\":[]},\"schemaId\":\"FDA_v1\",\"includeSignature\":false,\"indentation\":4}", + "description": "Generate a human-readable compliance XML report based on FDA schema without digital signature." + }, + { + "inputJson": "{\"complianceData\":{\"financialYear\":2023,\"taxPaid\":100000,\"status\":\"compliant\"},\"schemaId\":\"IRS_1099\",\"includeSignature\":true,\"signatureKey\":\"MIIEvQIBADANBgkqh...\"}", + "description": "Create a digitally signed XML document for IRS 1099 tax compliance submission." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "compliance-management.createPackage", + "description": "Creates a compliance management package consisting of policies, control mappings, and documentation tailored to specific regulatory frameworks. Accepts inputs defining regulatory standards, organizational context, and desired compliance elements, then outputs a structured compliance package including generated policy templates and mapping matrices.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulatoryFramework", + "type": "string", + "description": "The specific regulatory framework to build the compliance package for (e.g., GDPR, HIPAA, PCI-DSS).", + "required": true, + "defaultValue": "" + }, + { + "name": "organizationName", + "type": "string", + "description": "The name of the organization for which the compliance package is being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceScope", + "type": "string", + "description": "Defines the scope of compliance such as departments, regions, or data types to be covered.", + "required": false, + "defaultValue": "" + }, + { + "name": "includePolicies", + "type": "boolean", + "description": "Flag to indicate whether to include policy document templates in the package.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeControlMappings", + "type": "boolean", + "description": "Flag to indicate whether to include control mappings linking requirements to internal controls.", + "required": false, + "defaultValue": "true" + }, + { + "name": "additionalGuidance", + "type": "string", + "description": "Optional text with specific guidance or notes to tailor the compliance package.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the compliance package, containing policy documents, control mapping tables, and metadata about the created package." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a comprehensive compliance package tailored to an organization's regulatory framework and compliance scope. It streamlines preparation of standard-compliant policies and control mappings, helping compliance officers quickly produce ready-to-use documentation packages.", + "limitations": "Does not provide compliance auditing or continuous monitoring. It does not replace legal advice or verify actual compliance, only generates templates and mappings based on input parameters.", + "examples": [ + "Create a GDPR compliance package for Acme Corp covering the entire organization with policies and control mappings.", + "Generate a PCI-DSS compliance package for the payments department only, including control mappings but without policy templates.", + "Build a HIPAA compliance package for a healthcare provider, including additional guidance to handle international data transfers." + ] + }, + "tags": [ + "compliance", + "package", + "policy", + "regulatory", + "governance", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"regulatoryFramework\":\"GDPR\",\"organizationName\":\"Acme Corp\",\"complianceScope\":\"\",\"includePolicies\":true,\"includeControlMappings\":true,\"additionalGuidance\":\"\"}", + "description": "Generate a full GDPR compliance package for Acme Corp including policies and control mappings." + }, + { + "inputJson": "{\"regulatoryFramework\":\"PCI-DSS\",\"organizationName\":\"Acme Payments\",\"complianceScope\":\"Payments Department\",\"includePolicies\":false,\"includeControlMappings\":true,\"additionalGuidance\":\"Ensure mapping reflects newest PCI-DSS version.\"}", + "description": "Create a PCI-DSS compliance package for Acme Payments department including control mappings only." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "security-tools.analyzeForecast", + "description": "This tool accepts a security incident forecast dataset as input and analyzes it to identify potential future security threats and trends. It processes historical and predictive data to generate a comprehensive risk assessment report including threat likelihoods, affected assets, and recommended mitigation strategies. The output is a structured security forecast analysis report to support proactive security planning.", + "category": "security-tools", + "parameters": [ + { + "name": "forecastData", + "type": "object", + "description": "A structured dataset containing forecasted security incidents, including timestamps, incident types, predicted severity, and affected components.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "The level of detail for the analysis report, e.g., 'summary', 'detailed', or 'full'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "timeHorizon", + "type": "number", + "description": "The future time horizon in days for which to perform the forecast analysis (e.g., 30 for 30 days).", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation strategies in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "organizationalContext", + "type": "object", + "description": "Optional context about the organization's security posture, such as critical assets, existing controls, and risk tolerance, to tailor the analysis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A security forecast analysis report including identified threats, their predicted likelihood and impact, prioritized risks, and recommended mitigation actions organized by time horizon." + }, + "aiAgent": { + "useCase": "Use this tool when needing to proactively assess and understand predicted future security threats based on forecast data. Ideal for security teams planning resource allocation, mitigation strategies, or risk communication to stakeholders. It helps translate forecasted incident data into actionable risk evaluation and recommendations.", + "limitations": "This tool does not generate forecasts by itself; it requires pre-existing forecast data. It cannot detect real-time threats or handle qualitative threat intelligence that is not structured. Analysis quality depends on input data completeness and accuracy.", + "examples": [ + "Analyze forecast data for upcoming network intrusion attempts over the next 60 days with detailed output including mitigation suggestions.", + "Generate a summary risk assessment from a forecast of malware incidents affecting cloud assets, customized by organizational critical assets.", + "Produce a 30-day forecast analysis report without mitigation steps using provided forecast and minimal organizational context." + ] + }, + "tags": [ + "analysis", + "security", + "forecast", + "risk-assessment", + "incident-forecast", + "proactive-security" + ], + "examples": [ + { + "inputJson": "{\"forecastData\":{\"incidents\":[{\"timestamp\":\"2024-07-01T00:00:00Z\",\"type\":\"Ransomware\",\"predictedSeverity\":8,\"affectedComponent\":\"FileServer1\"},{\"timestamp\":\"2024-07-10T00:00:00Z\",\"type\":\"Phishing\",\"predictedSeverity\":5,\"affectedComponent\":\"EmailGateway\"}]},\"analysisDepth\":\"detailed\",\"timeHorizon\":30,\"includeMitigation\":true,\"organizationalContext\":{\"criticalAssets\":[\"FileServer1\",\"Database1\"],\"riskTolerance\":\"medium\"}}", + "description": "Analyzes a 30-day security incident forecast with detailed depth and organizational context, including mitigation recommendations." + }, + { + "inputJson": "{\"forecastData\":{\"incidents\":[{\"timestamp\":\"2024-08-15T00:00:00Z\",\"type\":\"DDoS\",\"predictedSeverity\":7,\"affectedComponent\":\"WebServer\"}]},\"analysisDepth\":\"summary\",\"timeHorizon\":15,\"includeMitigation\":false}", + "description": "Generates a summary analysis for a 15-day DDoS incident forecast without mitigation advice." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Forecast", + "context": null + } + }, + { + "name": "security-tools.analyzeMention", + "description": "Analyzes text mentions from communication data such as emails, chat messages, or logs to identify security-related contexts including phishing, leaks of sensitive information, or suspicious references. The tool accepts text input with optional metadata and returns an analysis report highlighting risks and actionable insights.", + "category": "security-tools", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The textual content containing mentions to analyze for security risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of communication source (e.g., email, chat, log) to help contextualize the analysis.", + "required": false, + "defaultValue": "\"email\"" + }, + { + "name": "mentionKeywords", + "type": "array", + "description": "List of keyword strings defining mentions to look for within the text (e.g., 'password', 'confidential').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Defines the strictness of security checks: low, medium, or high.", + "required": false, + "defaultValue": "\"medium\"" + }, + { + "name": "includeContextLines", + "type": "number", + "description": "Number of lines before and after the mention to include in the report for context.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing detected mentions, risk levels, context excerpts, and recommended actions." + }, + "aiAgent": { + "useCase": "Use this tool to detect and analyze potential security issues or sensitive mentions within communication text streams or logs. Ideal for assisting security teams in monitoring data leaks, phishing attempts, or suspicious references that could indicate compromise.", + "limitations": "This tool analyzes textual mentions and context but does not verify authenticity or confirm actual breaches. It may produce false positives and relies on predefined keywords and patterns.", + "examples": [ + "Analyze this email body to find any risky mentions of confidential data.", + "Check our internal chat logs for any password leaks or unauthorized references.", + "Scan system logs for suspicious mentions related to privilege escalations." + ] + }, + "tags": [ + "security", + "analysis", + "mentions", + "communication", + "phishing", + "dataLeak", + "riskAssessment" + ], + "examples": [ + { + "inputJson": "{\"text\":\"User reported a phishing attempt mentioning confidential credentials.\",\"sourceType\":\"email\",\"mentionKeywords\":[\"phishing\",\"confidential\",\"credentials\"],\"sensitivityLevel\":\"high\",\"includeContextLines\":1}", + "description": "Analyze an email text for phishing and confidential data mentions with high sensitivity." + }, + { + "inputJson": "{\"text\":\"The client's password was reset after suspicious activity was detected.\",\"sourceType\":\"chat\",\"mentionKeywords\":[\"password\",\"reset\",\"suspicious\"],\"sensitivityLevel\":\"medium\",\"includeContextLines\":2}", + "description": "Analyze chat message for password and suspicious activity mentions with medium sensitivity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Mention", + "context": null + } + }, + { + "name": "security-tools.analyzeBudget", + "description": "Analyzes a security budget allocation by evaluating spending categories, comparing actual expenses against planned amounts, and identifying potential overspending or underfunding risks. Accepts a detailed budget breakdown as input and produces a report highlighting anomalies and optimization suggestions for improved security investment effectiveness.", + "category": "security-tools", + "parameters": [ + { + "name": "budgetData", + "type": "object", + "description": "An object containing the detailed security budget with categories, planned and actual spending amounts.", + "required": true, + "defaultValue": "" + }, + { + "name": "thresholdPercentage", + "type": "number", + "description": "The percentage variance threshold to flag budget categories as overspent or underspent (e.g., 10 means 10%).", + "required": false, + "defaultValue": "10" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired output report format such as 'json' or 'text'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include recommendations for budget optimization based on the analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured report object including category-wise analysis on budget variances, identified risks, and optional recommendations to optimize security spending." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent is tasked with assessing the effectiveness and distribution of security budgets, ensuring resources are well allocated to address risks without overspending. Ideal for enterprises balancing cost and security coverage and needing automated insight into budget health.", + "limitations": "This tool does not perform financial forecasting or adjust budgets automatically; it only analyzes provided budget data to highlight variances and potential issues based on predefined thresholds.", + "examples": [ + "Analyze the security budget to find any categories overspending by more than 15%.", + "Generate a text report highlighting underfunded security initiatives in the budget.", + "Provide recommendations on optimizing the security budget based on actual spend versus planned allocation." + ] + }, + "tags": [ + "security", + "budget", + "analysis", + "cost-management", + "risk", + "finance" + ], + "examples": [ + { + "inputJson": "{\"budgetData\":{\"penetrationTesting\":{\"planned\":50000,\"actual\":55000},\"firewallMaintenance\":{\"planned\":20000,\"actual\":18000},\"incidentResponse\":{\"planned\":30000,\"actual\":45000}},\"thresholdPercentage\":10,\"reportFormat\":\"json\",\"includeRecommendations\":true}", + "description": "Analyze a security budget where penetration testing is overspent by 10%, incident response significantly overspent, and firewall maintenance is under budget, with recommendations included." + }, + { + "inputJson": "{\"budgetData\":{\"endpointProtection\":{\"planned\":40000,\"actual\":35000},\"vulnerabilityScanning\":{\"planned\":15000,\"actual\":15000}},\"thresholdPercentage\":5,\"reportFormat\":\"text\",\"includeRecommendations\":false}", + "description": "Generate a plain text report assessing endpoint protection and vulnerability scanning budgets with a tight 5% variance threshold, without recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Budget", + "context": null + } + }, + { + "name": "security-tools.downloadXML", + "description": "Downloads XML data securely from a specified URL with optional HTTP headers and timeout settings. It validates the URL format and retrieves the raw XML content as a string, enabling further processing or storage in security-sensitive contexts.", + "category": "security-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The HTTPS URL from which to download the XML data, must be a valid and reachable URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the download request, such as authentication tokens or custom headers.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before timing out to avoid hanging requests.", + "required": false, + "defaultValue": "30" + }, + { + "name": "validateSSL", + "type": "boolean", + "description": "Whether to enforce SSL certificate validation to ensure secure HTTPS connections.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status, the raw XML string if successful, or error details if failed." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to retrieve raw XML configuration or data files securely over HTTPS for processing within security-sensitive applications or infrastructure. It ensures controlled access, optional custom headers, and timeout handling to avoid long waits or insecure downloads.", + "limitations": "This tool does not parse or validate the XML content beyond retrieval. It does not support FTP or other protocols besides HTTPS. It cannot fix malformed XML or handle content encoding conversions automatically.", + "examples": [ + "Download XML configuration from a secure device management endpoint.", + "Fetch SAML metadata XML from a trusted identity provider with authorization headers.", + "Retrieve security policy XML file from a protected web service URL with a custom bearer token header." + ] + }, + "tags": [ + "security", + "download", + "XML", + "https", + "data retrieval", + "secure", + "API" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/config.xml\",\"headers\":{\"Authorization\":\"Bearer abc123token\"},\"timeoutSeconds\":20,\"validateSSL\":true}", + "description": "Download XML config from a secure endpoint with auth token and 20s timeout." + }, + { + "inputJson": "{\"url\":\"https://idp.example.com/metadata.xml\",\"headers\":{},\"timeoutSeconds\":15,\"validateSSL\":true}", + "description": "Fetch SAML metadata XML from identity provider with default SSL validation." + }, + { + "inputJson": "{\"url\":\"https://secure-api.example.org/policy.xml\",\"headers\":{\"X-Custom-Header\":\"value\"},\"timeoutSeconds\":30,\"validateSSL\":false}", + "description": "Download security policy XML from API with custom header and no SSL validation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "XML", + "context": null + } + }, + { + "name": "security-tools.uploadAttachment", + "description": "Uploads an attachment file to a secure cloud storage location after performing security checks such as malware scanning and content validation. Accepts file data or a file URL, scans for threats, and stores the attachment securely. Returns a secure access URL and metadata about the uploaded attachment.", + "category": "security-tools", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "The name of the attachment file to be uploaded including extension (e.g., document.pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileData", + "type": "string", + "description": "Base64-encoded content of the file to upload. Either fileData or fileUrl must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileUrl", + "type": "string", + "description": "URL to fetch the file from if the file data is not directly provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "MIME type of the attachment (e.g., application/pdf, image/png).", + "required": true, + "defaultValue": "" + }, + { + "name": "scanForViruses", + "type": "boolean", + "description": "Indicates whether to perform a malware scan on the attachment before uploading.", + "required": false, + "defaultValue": "true" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags to categorize or label the attachment.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the secure URL to access the uploaded attachment and metadata including file size, content type, and scan status." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to securely upload user-provided or system-generated attachment files to protected storage. It ensures the attachments are scanned for viruses and verified before uploading, returning a secure access link suitable for later retrieval or sharing.", + "limitations": "This tool does not provide long-term archival or versioning capabilities, nor does it decrypt or modify the content beyond scanning. It requires either raw file data or a reachable file URL; it cannot capture files from arbitrary sources without URL or data input.", + "examples": [ + "Upload a PDF contract for secure storage and provide a download link.", + "Scan and upload an image file from a URL ensuring it is free from malware.", + "Upload multiple tagged attachments related to a project with virus scanning enabled." + ] + }, + "tags": [ + "security", + "upload", + "attachment", + "malware scanning", + "cloud storage", + "file upload" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"contract.pdf\",\"fileData\":\"JVBERi0xLjQKJcfs...\",\"contentType\":\"application/pdf\",\"scanForViruses\":true}", + "description": "Uploading a base64-encoded PDF contract file with virus scanning enabled." + }, + { + "inputJson": "{\"fileName\":\"profile.png\",\"fileUrl\":\"https://example.com/profile.png\",\"contentType\":\"image/png\",\"scanForViruses\":true}", + "description": "Uploading a PNG image from a URL ensuring it is scanned for malware before storage." + }, + { + "inputJson": "{\"fileName\":\"report.docx\",\"fileData\":\"UEsDBBQABgAACAA...\",\"contentType\":\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\"tags\":[\"projectA\",\"reports\"]}", + "description": "Uploading a tagged Word document attachment with virus scanning enabled by default." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Attachment", + "context": null + } + }, + { + "name": "security-tools.uploadHTML", + "description": "Uploads HTML code snippets to a secure content management system with automatic sanitization and validation to prevent XSS and injection attacks. Accepts raw HTML strings, processes them to sanitize unsafe elements, validates the markup, and outputs a secure URL for the hosted content.", + "category": "security-tools", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML code string to be uploaded and sanitized", + "required": true, + "defaultValue": "" + }, + { + "name": "sanitizeLevel", + "type": "string", + "description": "Level of sanitization to apply: 'basic', 'strict', or 'custom'", + "required": false, + "defaultValue": "basic" + }, + { + "name": "customSanitizeRules", + "type": "object", + "description": "Optional custom sanitization rules if sanitizeLevel is 'custom'", + "required": false, + "defaultValue": "" + }, + { + "name": "validateMarkup", + "type": "boolean", + "description": "Whether to validate HTML markup correctness before upload", + "required": false, + "defaultValue": "true" + }, + { + "name": "notifyUrl", + "type": "string", + "description": "Optional callback URL to notify when upload completes", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the secure hosted URL for the uploaded HTML, the sanitized HTML content, and validation status and messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to securely upload and host raw HTML content with automatic sanitization against XSS or malicious scripts, ensuring the content is safe before serving it publicly. Ideal for platforms that allow user-generated HTML or when integrating external HTML code securely.", + "limitations": "Does not support uploading entire web pages or associated assets like CSS/JS/images. Only sanitizes and uploads HTML snippets. Custom sanitization rules require proper configuration and cannot guarantee 100% protection against all attack vectors.", + "examples": [ + "Upload user-submitted HTML post content securely.", + "Sanitize and validate admin-provided HTML widget code before embedding.", + "Convert raw HTML email templates into safe hosted URLs for reuse." + ] + }, + "tags": [ + "security", + "upload", + "HTML", + "sanitization", + "validation", + "XSS prevention", + "content management" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Hello World

\",\"sanitizeLevel\":\"strict\",\"validateMarkup\":true}", + "description": "Upload HTML containing a script tag, apply strict sanitization to remove scripts, validate HTML, and get secure URL." + }, + { + "inputJson": "{\"htmlContent\":\"

Safe paragraph content

\",\"sanitizeLevel\":\"basic\",\"validateMarkup\":false}", + "description": "Upload simple safe HTML with minimal sanitization and skip validation for faster processing." + }, + { + "inputJson": "{\"htmlContent\":\"\",\"sanitizeLevel\":\"custom\",\"customSanitizeRules\":{\"allowedTags\":[\"img\",\"p\"],\"allowedAttributes\":{\"img\":[\"src\"]}},\"validateMarkup\":true}", + "description": "Upload HTML with image tag using custom sanitization rules to allow only img and p tags with src attribute, validate markup." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "HTML", + "context": null + } + }, + { + "name": "security-tools.sendChannel", + "description": "This tool sends messages securely over a specified communication channel. It accepts parameters defining the channel type, target identifier, message content, and optional encryption settings. The tool processes the inputs to establish a secure sending mechanism and outputs a status report indicating success or detailed error information.", + "category": "security-tools", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel to send the message through, e.g., 'email', 'sms', 'webhook'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetIdentifier", + "type": "string", + "description": "The identifier of the message recipient, such as an email address, phone number, or webhook URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The content of the message to be sent over the channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "useEncryption", + "type": "boolean", + "description": "Whether to encrypt the message before sending for enhanced security.", + "required": false, + "defaultValue": "false" + }, + { + "name": "encryptionKey", + "type": "string", + "description": "Encryption key used if 'useEncryption' is true to secure message content.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object reporting the result of sending the message, including a success boolean, a timestamp, and optional error details if sending failed." + }, + "aiAgent": { + "useCase": "Use this tool when a secure, configurable, communication-based message delivery is required in an application or automation workflow. It supports multiple channel types and optional encryption, making it suitable for sending alerts, notifications, or sensitive communications.", + "limitations": "This tool does not manage persistent channel connections, guarantee delivery confirmation beyond sending status, or handle channel-specific formatting or protocol complexities beyond basic message transmission.", + "examples": [ + "Send a secure notification via email to a user.", + "Deliver a webhook message with sensitive data encrypted.", + "Transmit an SMS alert to a specified phone number without encryption." + ] + }, + "tags": [ + "security", + "communication", + "message", + "encryption", + "notification", + "alert" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"email\",\"targetIdentifier\":\"user@example.com\",\"messageContent\":\"Your authentication code is 123456.\",\"useEncryption\":true,\"encryptionKey\":\"s3cr3tKey\"}", + "description": "Send an encrypted authentication code via email to the user." + }, + { + "inputJson": "{\"channelType\":\"sms\",\"targetIdentifier\":\"+1234567890\",\"messageContent\":\"Server load high, check immediately.\",\"useEncryption\":false}", + "description": "Send a plain SMS alert about server load to an administrator's phone." + }, + { + "inputJson": "{\"channelType\":\"webhook\",\"targetIdentifier\":\"https://example.com/alert\",\"messageContent\":\"{\"event\":\"alert\",\"severity\":\"high\"}\",\"useEncryption\":false}", + "description": "Send a webhook alert with JSON payload to a monitoring endpoint." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "security-tools.formatHeading", + "description": "Formats security-related headings or titles to comply with standard conventions used in security documentation and reports. Accepts plain text heading input and options for style (e.g., uppercase, title case) and prefix (e.g., 'SECURITY:', 'WARNING:'). Outputs a consistently formatted heading string suitable for use in secure application documentation or alert messages.", + "category": "security-tools", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The raw heading text to format. Required input.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "The text style to apply: 'uppercase', 'lowercase', 'titlecase', or 'sentencecase'.", + "required": false, + "defaultValue": "titlecase" + }, + { + "name": "prefix", + "type": "string", + "description": "Optional prefix to prepend to the heading (e.g., 'SECURITY:', 'WARNING:').", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the output heading, truncating and adding ellipsis if exceeded.", + "required": false, + "defaultValue": "100" + }, + { + "name": "addTimestamp", + "type": "boolean", + "description": "If true, appends the current date and time in ISO format to the heading.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string and metadata such as applied style and timestamp if included." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to generate or standardize headings and titles specifically for security contexts, ensuring consistent formatting in security reports, logs, or alert banners. It helps produce professional and clear headings that follow organizational or industry style guidelines, improving readability and compliance.", + "limitations": "This tool does not validate the semantic correctness or security content of the heading; it only formats text stylistically. It also does not support complex multilingual formatting or markdown/HTML styling.", + "examples": [ + "Format a raw security heading to uppercase with a 'WARNING:' prefix.", + "Generate a title case heading for a security alert without prefix.", + "Create a heading with automatic date-time stamp for audit logs." + ] + }, + "tags": [ + "formatting", + "security", + "heading", + "documentation", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"unauthorized access detected\",\"style\":\"uppercase\",\"prefix\":\"WARNING:\",\"maxLength\":50,\"addTimestamp\":false}", + "description": "Format a security warning heading in uppercase with prefix and default max length, no timestamp." + }, + { + "inputJson": "{\"headingText\":\"security breach report summary\",\"style\":\"titlecase\",\"prefix\":\"SECURITY:\",\"maxLength\":60,\"addTimestamp\":true}", + "description": "Format a security heading with title case, add SECURITY prefix and append current timestamp." + }, + { + "inputJson": "{\"headingText\":\"password policy update\",\"style\":\"sentencecase\",\"prefix\":\"\",\"maxLength\":30,\"addTimestamp\":false}", + "description": "Format heading with sentence case, no prefix, and enforce max length truncation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Heading", + "context": null + } + }, + { + "name": "security-tools.formatHTML", + "description": "Formats and sanitizes input HTML code to improve readability and security. Accepts raw HTML strings, applies indentation and line breaks for better structure, and optionally sanitizes to remove potentially malicious scripts or attributes. Outputs the cleaned, well-formatted HTML string suitable for safe display or storage.", + "category": "security-tools", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML code string to be formatted and sanitized.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use per indentation level for formatting the HTML code.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sanitize", + "type": "boolean", + "description": "If true, remove unsafe elements and attributes from the HTML to prevent XSS vulnerabilities.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeComments", + "type": "boolean", + "description": "Remove HTML comments from the output if set to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum nesting depth to format; deeper HTML nodes will be kept inline if depth exceeds this.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted and optionally sanitized HTML string under 'formattedHtml'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean and consistently format HTML code snippets for safer embedding, storage, or display. Ideal for applications processing user-submitted HTML, ensuring that the code is both well-structured and sanitized to prevent injection of malicious content.", + "limitations": "Cannot fix logical HTML errors or broken tag pairs beyond basic formatting. Sanitization relies on preset rules and may not catch all edge cases or zero-day XSS vectors. Not intended for full HTML minification or beautification at the CSS/JS level.", + "examples": [ + "Format and sanitize a user-provided HTML snippet before embedding it in the webpage.", + "Convert minified HTML code to readable indented format for debugging purposes while removing scripts.", + "Clean HTML content from third-party sources by removing comments and dangerous attributes." + ] + }, + "tags": [ + "formatting", + "security", + "html", + "sanitization", + "xss-prevention", + "beautification" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Hello, world!

\",\"indentSize\":4,\"sanitize\":true,\"removeComments\":true,\"maxDepth\":10}", + "description": "Sanitize and format HTML by removing scripts and indenting with 4 spaces." + }, + { + "inputJson": "{\"htmlContent\":\"
  • Item 1
  • Item 2
\",\"indentSize\":2,\"sanitize\":false,\"removeComments\":true,\"maxDepth\":5}", + "description": "Format HTML removing comments but keep scripts intact." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "HTML", + "context": null + } + }, + { + "name": "security-tools.formatResume", + "description": "Formats a professional resume document with a focus on security domain job roles, ensuring consistent section structure, standardized headings, and secure data handling. Accepts a resume content string or structured JSON, applies configurable formatting styles and section ordering, and outputs a formatted resume suitable for PDF or DOCX generation.", + "category": "security-tools", + "parameters": [ + { + "name": "resumeContent", + "type": "string", + "description": "Raw resume text or JSON string containing resume details to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input resume content: 'text' or 'json'.", + "required": true, + "defaultValue": "text" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the formatted resume: 'text', 'html', 'pdf', or 'docx'.", + "required": true, + "defaultValue": "text" + }, + { + "name": "sectionOrder", + "type": "array", + "description": "Array specifying the order of sections such as ['Contact', 'Summary', 'Experience', 'Education', 'Skills', 'Certifications'].", + "required": false, + "defaultValue": "[\"Contact\",\"Summary\",\"Experience\",\"Education\",\"Skills\"]" + }, + { + "name": "includeSensitiveDataMasking", + "type": "boolean", + "description": "If true, masks sensitive information like social security numbers or personal phone numbers for security compliance.", + "required": false, + "defaultValue": "false" + }, + { + "name": "styleTemplate", + "type": "string", + "description": "Name of the style template to apply for formatting (e.g., 'modern', 'classic', 'minimal').", + "required": false, + "defaultValue": "modern" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted resume as a string and the mime type to indicate format type." + }, + "aiAgent": { + "useCase": "Use this tool when needing to format a resume specifically for security-focused job applications or secure sharing, ensuring standardized professional appearance and optionally masking sensitive info for compliance. It helps convert raw or structured resume data into presentable, secure formats suitable for automated resume processing pipelines or applicant tracking systems.", + "limitations": "This tool does not generate resume content from scratch or verify the factual correctness of resume entries. It does not translate languages or perform deep semantic analysis of job descriptions. PDF or DOCX output relies on external rendering engines.", + "examples": [ + "Format my json resume as a PDF applying a modern style template, masking sensitive data.", + "Convert raw text resume to HTML format with sections ordered: Contact, Summary, Skills, Experience, Education.", + "Format a resume text file to DOCX without masking personal info, using classic style." + ] + }, + "tags": [ + "formatting", + "resume", + "security", + "document", + "pdf", + "docx", + "html", + "personal-data" + ], + "examples": [ + { + "inputJson": "{\"resumeContent\":\"{\\\"contact\\\":{\\\"name\\\":\\\"Jane Doe\\\",\\\"email\\\":\\\"jane@example.com\\\"},\\\"summary\\\":\\\"Experienced security analyst...\\\",\\\"experience\\\":[{\\\"role\\\":\\\"Security Engineer\\\",\\\"company\\\":\\\"SecureCorp\\\",\\\"duration\\\":\\\"2018-2023\\\"}],\\\"education\\\":[{\\\"degree\\\":\\\"B.S. Computer Science\\\",\\\"institution\\\":\\\"Tech University\\\"}],\\\"skills\\\":[\"Penetration Testing\",\"Risk Assessment\"]}\",\"inputFormat\":\"json\",\"outputFormat\":\"pdf\",\"sectionOrder\":[\"Contact\",\"Summary\",\"Experience\",\"Education\",\"Skills\"],\"includeSensitiveDataMasking\":true,\"styleTemplate\":\"modern\"}", + "description": "Formats a security-focused resume in JSON into a masked PDF with modern styling and custom section order." + }, + { + "inputJson": "{\"resumeContent\":\"John Doe\\nSenior Security Analyst\\nEmail: john@example.com\\nSkills: Cybersecurity, Network Defense\\nExperience: Tech Solutions (2019-2024)\",\"inputFormat\":\"text\",\"outputFormat\":\"html\",\"includeSensitiveDataMasking\":false,\"styleTemplate\":\"minimal\"}", + "description": "Formats raw text resume into an HTML document with minimal style, no masking." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Resume", + "context": null + } + }, + { + "name": "security-tools.formatSchema", + "description": "This tool accepts a JSON or YAML schema defining security policies, configurations, or data models and formats it into a consistent, readable style. It processes the input schema string, enforcing indentation, ordering keys alphabetically, and ensuring consistent quotes and spacing. The output is a well-formatted schema string suitable for review, documentation, or automated pipelines.", + "category": "security-tools", + "parameters": [ + { + "name": "schemaContent", + "type": "string", + "description": "The raw text content of the schema to be formatted, either JSON or YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaFormat", + "type": "string", + "description": "Format of the input schema content. Supported values: 'json' or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the output formatted schema.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "If true, object keys in the schema are sorted alphabetically to enhance readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteStyle", + "type": "string", + "description": "Preferred quotation style for string values in JSON: either single quotes or double quotes.", + "required": false, + "defaultValue": "double" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted schema string in the indicated format, ready for output or storage. Includes a success status and error message if formatting fails." + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize and beautify security-related schema definitions such as JSON/YAML configuration files or policy documents. It ensures consistent formatting for easier human review, diffing in version control, and integration into automated processes.", + "limitations": "This tool only formats schemas and does not validate schema correctness or semantic accuracy. It cannot convert schema types or fix logical errors within the schema.", + "examples": [ + "Format a JSON security policy schema to have 4-space indentation and single quotes.", + "Format a YAML configuration schema enforcing sorted keys with 2 spaces indentation.", + "Beautify a JSON data model schema from minimal whitespaces to a readable format." + ] + }, + "tags": [ + "security", + "schema", + "formatting", + "json", + "yaml", + "configuration", + "standardization" + ], + "examples": [ + { + "inputJson": "{\"schemaContent\":\"{\\\"policy\\\":{\\\"allow\\\":true,\\\"users\\\":[\\\"admin\\\",\\\"guest\\\"]}}\",\"schemaFormat\":\"json\",\"indentSize\":4,\"sortKeys\":true,\"quoteStyle\":\"single\"}", + "description": "Format a JSON schema string with 4 spaces indentation, keys sorted, and single quotes." + }, + { + "inputJson": "{\"schemaContent\":\"users:\\n - admin\\n - guest\\nallow: true\",\"schemaFormat\":\"yaml\",\"indentSize\":2,\"sortKeys\":false,\"quoteStyle\":\"double\"}", + "description": "Format a YAML schema with 2 spaces indentation without sorting keys." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Schema", + "context": null + } + }, + { + "name": "security-tools.buildDependency", + "description": "This tool constructs a secure dependency configuration for a software project by analyzing given dependency information and applying security best practices. It accepts inputs like dependency name, version constraints, and optional security policies, then outputs a validated and optimized dependency object suitable for use in project manifests or lockfiles.", + "category": "security-tools", + "parameters": [ + { + "name": "dependencyName", + "type": "string", + "description": "The name of the dependency package or module to include.", + "required": true, + "defaultValue": "" + }, + { + "name": "versionSpecifier", + "type": "string", + "description": "The semantic version range or exact version of the dependency to use.", + "required": true, + "defaultValue": "" + }, + { + "name": "securityPolicies", + "type": "array", + "description": "An array of security policy identifiers or rules to apply to this dependency (e.g., vulnerability checks, license constraints).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTransitive", + "type": "boolean", + "description": "Whether to include and secure transitive dependencies of this dependency.", + "required": false, + "defaultValue": "false" + }, + { + "name": "environment", + "type": "string", + "description": "The target environment (e.g., 'production', 'development') which may affect dependency selection and security rules.", + "required": false, + "defaultValue": "production" + } + ], + "returns": { + "type": "object", + "description": "A structured dependency object including the name, resolved version, applied security policies, and any security warnings or optimization notes." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate or validate secure dependencies in a software project, ensuring the dependencies comply with specified security policies and constraints before inclusion in project configuration files or manifests.", + "limitations": "This tool does not resolve actual package downloads or runtime conflicts, nor does it fetch real-time vulnerability data; it assumes provided policies and versions are accurate and up-to-date.", + "examples": [ + "Build a dependency configuration for 'express' version '^4.17.1' applying latest security policies.", + "Generate a secure dependency object for 'lodash' version '4.17.21' including transitive dependencies for a production environment.", + "Build a dependency with custom security policy ids ['no-dev-deps', 'license-check'] for package 'react' version '17.0.2'." + ] + }, + "tags": [ + "security", + "dependency management", + "build", + "software", + "configuration", + "package", + "vulnerability" + ], + "examples": [ + { + "inputJson": "{\"dependencyName\":\"express\",\"versionSpecifier\":\"^4.17.1\",\"securityPolicies\":[\"latest-vuln-check\"],\"includeTransitive\":true,\"environment\":\"production\"}", + "description": "Build a secure dependency object for express including transitive dependencies and applying latest vulnerability checks." + }, + { + "inputJson": "{\"dependencyName\":\"lodash\",\"versionSpecifier\":\"4.17.21\",\"securityPolicies\":[],\"includeTransitive\":false}", + "description": "Construct a simple dependency configuration for lodash version 4.17.21 without transitive dependencies or special policies." + }, + { + "inputJson": "{\"dependencyName\":\"react\",\"versionSpecifier\":\"17.0.2\",\"securityPolicies\":[\"no-dev-deps\",\"license-check\"],\"includeTransitive\":false,\"environment\":\"development\"}", + "description": "Generate a development environment dependency object for react with custom security policies to exclude dev dependencies and check licenses." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Dependency", + "context": null + } + }, + { + "name": "security-tools.composeThread", + "description": "This tool composes a security-focused communication thread by aggregating and formatting messages, alerts, or notifications related to security events. It accepts an array of message objects including content, sender, timestamp, and threat level, then processes and organizes them into a coherent chronological thread with prioritization based on threat severity. The output is a structured thread object suitable for display or further processing.", + "category": "security-tools", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of security-related message objects including content, sender, timestamp, and threat level (required fields in each message).", + "required": true, + "defaultValue": "" + }, + { + "name": "sortByThreatLevel", + "type": "boolean", + "description": "Whether to prioritize sorting messages by threat level before arranging chronologically.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "If true, includes a summary of the thread with key threat insights.", + "required": false, + "defaultValue": "false" + }, + { + "name": "threadTitle", + "type": "string", + "description": "Title of the composed thread to identify the context or focus area.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a composed security thread object that includes an ordered list of messages with metadata and an optional summary section if requested." + }, + "aiAgent": { + "useCase": "Use this tool when generating a clear and organized security communication thread from multiple event messages or alerts to analyze or review security incidents efficiently. Ideal for summarizing and presenting chronological and prioritized security discussions or findings aggregated from logs, alerts, or user inputs.", + "limitations": "This tool does not perform security event detection or analysis itself; it only formats and composes the communication thread. It also depends on the input messages having accurate and structured threat level information for meaningful prioritization.", + "examples": [ + "Compose a thread from multiple intrusion detection alerts to review threat progression.", + "Generate a summarized communication thread about recent phishing attempts received in the security team chat.", + "Organize and prioritize security incident reports into a single chronological narrative." + ] + }, + "tags": [ + "security", + "threading", + "communication", + "alerts", + "incident-management" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"content\":\"Suspicious login detected from IP 192.168.1.10.\",\"sender\":\"IDS\",\"timestamp\":\"2024-06-01T10:15:00Z\",\"threatLevel\":\"medium\"},{\"content\":\"Malware signature found on endpoint E123.\",\"sender\":\"Antivirus\",\"timestamp\":\"2024-06-01T10:10:00Z\",\"threatLevel\":\"high\"},{\"content\":\"User report of phishing email received.\",\"sender\":\"UserSupport\",\"timestamp\":\"2024-06-01T10:20:00Z\",\"threatLevel\":\"low\"}],\"sortByThreatLevel\":true,\"includeSummary\":true,\"threadTitle\":\"June 1 Security Incidents\"}", + "description": "Compose a prioritized thread of security messages with a summary and a clear title." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Thread", + "context": null + } + }, + { + "name": "security-tools.buildCache", + "description": "Builds a secure caching layer for web applications or services by accepting configuration parameters such as cache type, expiration policy, encryption options, and backend storage. The tool processes these inputs to generate a ready-to-deploy caching mechanism to improve performance and security, outputting cache configuration details and initialization scripts.", + "category": "security-tools", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to build, e.g., 'in-memory', 'redis', or 'memcached'", + "required": true, + "defaultValue": "" + }, + { + "name": "ttlSeconds", + "type": "number", + "description": "Time-to-live for cache entries in seconds before expiration", + "required": true, + "defaultValue": "3600" + }, + { + "name": "enableEncryption", + "type": "boolean", + "description": "Enable encryption for cached data to enhance security", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxCacheSize", + "type": "number", + "description": "Maximum size of the cache in megabytes, to limit memory usage", + "required": false, + "defaultValue": "100" + }, + { + "name": "backendConfig", + "type": "object", + "description": "Configuration object for backend cache storage like connection strings and credentials", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured details including configuration files, connection info, and setup scripts needed to deploy and initialize the cache" + }, + "aiAgent": { + "useCase": "Use this tool when needing to set up a secure, performant caching layer for an application with customizable expiry, storage backend, and optional encryption to reduce latency and enhance data protection. Ideal for automating cache infrastructure setup in development or production environments.", + "limitations": "This tool does not perform actual deployment or runtime monitoring of the cache; it only produces the cache configuration and setup artifacts. It also does not manage cache invalidation strategies beyond TTL.", + "examples": [ + "Build a Redis cache with 30-minute TTL and encryption enabled.", + "Create an in-memory cache with 10-minute expiry and 50MB size limit.", + "Generate memcached config with no encryption and default TTL." + ] + }, + "tags": [ + "security", + "cache", + "infrastructure", + "performance", + "configuration", + "encryption" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"redis\",\"ttlSeconds\":1800,\"enableEncryption\":true,\"maxCacheSize\":500,\"backendConfig\":{\"host\":\"redis.example.com\",\"port\":6379,\"password\":\"secret\"}}", + "description": "Build a secured Redis cache with 30-min TTL and 500MB max size." + }, + { + "inputJson": "{\"cacheType\":\"in-memory\",\"ttlSeconds\":600,\"enableEncryption\":false,\"maxCacheSize\":50}", + "description": "Create a simple in-memory cache with 10-minute expiry and 50MB limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cache", + "context": null + } + }, + { + "name": "security-tools.createForecast", + "description": "Generates a security risk forecast for a specified application or infrastructure based on historical security incident data, vulnerability trends, and threat intelligence. Accepts input parameters including target system details, time horizon, and data sources. Outputs a detailed forecast report with risk levels, trend analysis, and recommended mitigations.", + "category": "security-tools", + "parameters": [ + { + "name": "targetSystem", + "type": "string", + "description": "Identifier or name of the system or application to generate the security forecast for.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeHorizonMonths", + "type": "number", + "description": "Number of months into the future for which to generate the forecast.", + "required": true, + "defaultValue": "6" + }, + { + "name": "includeHistoricalIncidents", + "type": "boolean", + "description": "Whether to include historical security incident data in the forecast analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "vulnerabilitySources", + "type": "array", + "description": "List of vulnerability data sources to incorporate, e.g., ['NVD', 'Internal'], impacting the forecast.", + "required": false, + "defaultValue": "[\"NVD\"]" + }, + { + "name": "threatIntelligenceFeeds", + "type": "array", + "description": "List of threat intelligence feeds to consider.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the forecast report output. Supported: 'json', 'pdf'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing a risk forecast report including predicted risk levels, trend graphs, detailed vulnerability and threat analysis, and recommended security measures." + }, + "aiAgent": { + "useCase": "Use this tool when needing to predict future security risks for a given application or infrastructure, utilizing historical incidents, vulnerability trends, and threat intelligence data to proactively assess and mitigate risks over a specified future time period.", + "limitations": "Does not provide real-time threat detection or incident response; accuracy depends on quality and completeness of input data sources; unable to forecast zero-day exploits effectively.", + "examples": [ + "Generate a 3-month security risk forecast for the web application 'InventoryApp' including internal vulnerability data.", + "Create a 12-month security forecast for the cloud infrastructure 'ProdCluster' using NVD feed and threat intelligence from specified providers.", + "Produce a JSON report of a 6-month forecast excluding historical incidents for system 'PaymentGateway'" + ] + }, + "tags": [ + "security", + "forecasting", + "risk assessment", + "vulnerability analysis", + "threat intelligence", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"targetSystem\":\"InventoryApp\",\"timeHorizonMonths\":3,\"includeHistoricalIncidents\":true,\"vulnerabilitySources\":[\"Internal\",\"NVD\"],\"threatIntelligenceFeeds\":[\"FeedA\"],\"outputFormat\":\"json\"}", + "description": "Forecast security risks for InventoryApp over next 3 months incorporating internal and NVD vulnerability data and one threat feed." + }, + { + "inputJson": "{\"targetSystem\":\"ProdCluster\",\"timeHorizonMonths\":12,\"includeHistoricalIncidents\":true,\"vulnerabilitySources\":[\"NVD\"],\"threatIntelligenceFeeds\":[\"FeedB\",\"FeedC\"],\"outputFormat\":\"pdf\"}", + "description": "Produce a detailed 12-month risk forecast PDF for ProdCluster cloud infrastructure including multiple threat feeds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Forecast", + "context": null + } + }, + { + "name": "security-tools.createBudget", + "description": "Creates a security budget plan by accepting inputs for project scope, resource needs, and risk mitigation priorities. It processes these inputs to generate a detailed budget allocation proposal covering hardware, software, personnel, and contingency funds for security initiatives. The output is a structured budget report outlining costs and allocations.", + "category": "security-tools", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the security project or initiative for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeframeMonths", + "type": "number", + "description": "Duration of the budget period in months.", + "required": true, + "defaultValue": "12" + }, + { + "name": "hardwareCosts", + "type": "number", + "description": "Estimated costs for hardware components (e.g., servers, devices).", + "required": false, + "defaultValue": "0" + }, + { + "name": "softwareCosts", + "type": "number", + "description": "Estimated costs for software licenses and subscriptions.", + "required": false, + "defaultValue": "0" + }, + { + "name": "personnelCosts", + "type": "number", + "description": "Estimated labor costs including salaries and consulting fees.", + "required": false, + "defaultValue": "0" + }, + { + "name": "riskMitigationPriority", + "type": "string", + "description": "Priority level for risk mitigation investment (e.g., high, medium, low).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "contingencyPercentage", + "type": "number", + "description": "Percentage of total budget reserved for contingencies and unexpected expenses.", + "required": false, + "defaultValue": "10" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or requirements to include in the budget plan.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A detailed security budget report including total budget, itemized allocations, and contingency funds." + }, + "aiAgent": { + "useCase": "Use this tool when planning security projects that require a financial plan covering multiple cost categories such as hardware, software, personnel, and risk mitigation. It helps generate a clear budget allocation proposal to support decision-making and funding requests.", + "limitations": "This tool does not perform actual cost estimation or vendor price lookups; it relies on user-provided estimates. It does not approve budgets or handle financial transactions.", + "examples": [ + "Create a security budget for a 6-month project focusing on high-risk mitigation with estimated personnel costs of $50000.", + "Generate a budget plan for a year-long security upgrade including hardware costs of $20000 and software costs of $10000.", + "Prepare a budget proposal prioritizing medium risk mitigation with contingency percentage set to 15%." + ] + }, + "tags": [ + "budget", + "security", + "planning", + "financial", + "risk management", + "project management" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"CloudSecurityUpgrade\",\"timeframeMonths\":12,\"hardwareCosts\":15000,\"softwareCosts\":10000,\"personnelCosts\":40000,\"riskMitigationPriority\":\"high\",\"contingencyPercentage\":12,\"notes\":\"Focus on endpoint protection\"}", + "description": "12-month budget plan for a cloud security upgrade prioritizing high risk mitigation." + }, + { + "inputJson": "{\"projectName\":\"NetworkAudit\",\"timeframeMonths\":3,\"hardwareCosts\":5000,\"softwareCosts\":3000,\"personnelCosts\":15000,\"riskMitigationPriority\":\"medium\",\"contingencyPercentage\":10,\"notes\":\"Include compliance audit costs\"}", + "description": "3-month budget for a network audit project with medium priority risk mitigation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Budget", + "context": null + } + }, + { + "name": "security-tools.createMention", + "description": "Creates a secure, traceable mention notification within a communication platform. Accepts user identifiers and message context, applies security policies such as access control and audit logging, and returns a mention token or message snippet safe for sharing in secure environments.", + "category": "security-tools", + "parameters": [ + { + "name": "mentionedUserId", + "type": "string", + "description": "Unique identifier of the user to be mentioned securely in the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContext", + "type": "string", + "description": "The text or identifier of the message where the mention will be embedded.", + "required": true, + "defaultValue": "" + }, + { + "name": "requestingUserId", + "type": "string", + "description": "Identifier of the user requesting to create this mention, used for access control checks.", + "required": true, + "defaultValue": "" + }, + { + "name": "secureChannelId", + "type": "string", + "description": "Identifier of the secure communication channel where the mention will be created.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAuditLog", + "type": "boolean", + "description": "Flag indicating whether to record this mention creation in the audit log for security tracking.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the secure mention snippet and an audit log entry ID if recorded." + }, + "aiAgent": { + "useCase": "Use this tool when generating mentions in messages within secure communication platforms that require controlled access, traceability, and audit capabilities. It ensures mentions comply with security policies, preventing unauthorized disclosure.", + "limitations": "Does not deliver or send messages; only creates secure mention snippets. It does not authenticate users beyond verifying identifiers, and requires underlying platform support for secure channels and audit logs.", + "examples": [ + "Create a secure mention to notify a user in a restricted channel.", + "Generate an audit-tracked mention for compliance in an enterprise chat.", + "Create a mention snippet that respects access control before embedding in a message." + ] + }, + "tags": [ + "security", + "communication", + "mention", + "access-control", + "audit", + "notification" + ], + "examples": [ + { + "inputJson": "{\"mentionedUserId\":\"user123\",\"messageContext\":\"Please review the attached document.\",\"requestingUserId\":\"admin456\",\"secureChannelId\":\"channel789\",\"includeAuditLog\":true}", + "description": "Create a secure mention of 'user123' in a message context by 'admin456' inside secure channel 'channel789' with audit logging enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Mention", + "context": null + } + }, + { + "name": "legal-tools.analyzeText", + "description": "Analyzes provided legal text such as contracts, agreements, or policy documents to identify key clauses, obligations, potential risks, and compliance issues. Returns a structured summary highlighting important legal elements and flagged concerns for further review.", + "category": "legal-tools", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The legal text content to be analyzed; can be a contract, agreement, or legal document.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the input text for accurate parsing and analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "highlightIssues", + "type": "boolean", + "description": "If true, the output will flag potential legal risks and compliance issues within the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detailedOutput", + "type": "boolean", + "description": "If true, the tool returns an extended analysis with clause explanations; otherwise, a concise summary.", + "required": false, + "defaultValue": "false" + }, + { + "name": "confidentialityLevel", + "type": "string", + "description": "Indicates sensitivity level such as 'public', 'internal', or 'confidential' to tailor the analysis emphasis.", + "required": false, + "defaultValue": "internal" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis with identified clauses, key obligations, potential risks, and compliance notes in JSON format." + }, + "aiAgent": { + "useCase": "Use when you need to quickly review lengthy legal documents to extract relevant clauses, obligations, and risks without manual reading. Helpful for contract review automation, legal due diligence, and compliance checks.", + "limitations": "Does not provide legally binding advice or replace a qualified legal professional. May not recognize very context-specific or jurisdiction-dependent legal nuances.", + "examples": [ + "Analyze this contractor agreement text for key obligations and risk flags.", + "Provide a summary of compliance issues in this privacy policy document.", + "Identify key legal clauses and risks in the attached licensing agreement." + ] + }, + "tags": [ + "legal", + "analysis", + "contract-review", + "compliance", + "risk-assessment", + "document-summarization" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"This Service Agreement is made between Company A and Company B indicating the terms of service delivery, payment terms, confidentiality, indemnity, and termination clauses.\",\"highlightIssues\":true}", + "description": "Analyze a service agreement to identify key clauses and any possible risks or red flags." + }, + { + "inputJson": "{\"textContent\":\"Privacy Policy updated on Jan 2024 describes user data collection, usage, security measures, and third-party sharing.\",\"detailedOutput\":true}", + "description": "Detailed analysis of a privacy policy document for compliance insights and user data handling terms." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "legal-tools.analyzeAccount", + "description": "Analyzes a business account's legal and compliance status by evaluating provided contract documents, regulatory filings, and account details. It identifies potential compliance risks, pending obligations, and summarizes relevant legal metrics. Outputs a structured compliance report with actionable insights.", + "category": "legal-tools", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier for the business account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractDocuments", + "type": "array", + "description": "List of contract document texts or URLs to be analyzed for compliance and risk factors.", + "required": true, + "defaultValue": "" + }, + { + "name": "regulatoryFilings", + "type": "array", + "description": "Array of documents or data objects representing regulatory filings associated with the account.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction (e.g., US, EU) relevant to the account for compliance context.", + "required": false, + "defaultValue": "US" + }, + { + "name": "includeRiskScoring", + "type": "boolean", + "description": "Flag to include quantitative risk scoring of compliance issues in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired format of the analysis report, e.g., 'summary' or 'detailed'.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis report, including compliance status, detected risks, pending legal obligations, and recommendations." + }, + "aiAgent": { + "useCase": "This tool is useful for AI agents assisting business clients or legal teams who need to assess the legal compliance and risk posture of a business account by analyzing contracts and regulatory documents. Agents can generate a consolidated report to support decision-making or auditing tasks.", + "limitations": "The tool does not provide legal advice or bind any legal entity. It relies on the quality and completeness of input documents and does not replace human legal review. Jurisdictional nuances may be simplified.", + "examples": [ + "Analyze contract compliance risks for account ID '12345' with provided agreements.", + "Generate a detailed compliance report for account 'ACCT-789' including recent regulatory filings in EU jurisdiction.", + "Evaluate the risk scoring of account '98765' contracts without regulatory filings." + ] + }, + "tags": [ + "legal", + "compliance", + "account", + "risk-analysis", + "contracts", + "regulatory" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"12345\",\"contractDocuments\":[\"Lease agreement text...\",\"Sales contract text...\"],\"jurisdiction\":\"US\",\"includeRiskScoring\":true,\"reportFormat\":\"summary\"}", + "description": "Analyze US jurisdiction contracts for account 12345 with risk scoring and produce a summary report." + }, + { + "inputJson": "{\"accountId\":\"ACCT-789\",\"contractDocuments\":[\"Service agreement text...\"],\"regulatoryFilings\":[{\"type\":\"Annual Report\",\"year\":2023}],\"jurisdiction\":\"EU\",\"includeRiskScoring\":false,\"reportFormat\":\"detailed\"}", + "description": "Detailed compliance analysis on EU account ACCT-789 including annual report data but without risk scoring." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "legal-tools.analyzeDataset", + "description": "Analyzes legal datasets such as contract clauses, compliance records, or litigation databases to identify patterns, risks, and compliance issues. Accepts datasets in structured formats (JSON, CSV) and outputs detailed analysis reports highlighting legal risks, clause standardization, and compliance metrics.", + "category": "legal-tools", + "parameters": [ + { + "name": "dataset", + "type": "object", + "description": "The structured dataset containing legal information to analyze, e.g., contracts or compliance records.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetFormat", + "type": "string", + "description": "Format of the dataset provided, such as 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of legal analysis to perform: 'riskAssessment', 'clauseComparison', 'complianceCheck'.", + "required": true, + "defaultValue": "riskAssessment" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Relevant legal jurisdiction for analysis to tailor legal rules and compliance requirements.", + "required": false, + "defaultValue": "" + }, + { + "name": "sensitivityThreshold", + "type": "number", + "description": "Threshold (0 to 1) to filter findings by level of risk or importance to focus on significant issues.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate a summarized report alongside the detailed analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "AnalysisReport object containing detailed insights on risks, compliance issues, clause variations, plus optional summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze large volumes of structured legal data to uncover risks, ensure contract clause standardization, or verify compliance against jurisdictional requirements. Ideal for legal teams automating contract review or compliance auditing.", + "limitations": "This tool does not provide legal advice or interpret ambiguous legal language beyond pattern recognition. It requires structured input data and may not handle unstructured or scanned documents.", + "examples": [ + "Analyze a JSON dataset of customer contracts to identify clauses with high-risk terms.", + "Perform a compliance check on transaction records dataset against EU GDPR rules.", + "Compare clauses across multiple contracts to highlight non-standard terms for review." + ] + }, + "tags": [ + "analysis", + "legal", + "contract", + "compliance", + "risk", + "dataset" + ], + "examples": [ + { + "inputJson": "{\"datasetFormat\":\"json\",\"dataset\":{\"contracts\":[{\"id\":\"c1\",\"clauses\":[{\"type\":\"liability\",\"text\":\"The party is not liable for indirect damages.\"}]},{\"id\":\"c2\",\"clauses\":[{\"type\":\"liability\",\"text\":\"The party accepts full liability.\"}]}]},\"analysisType\":\"clauseComparison\",\"jurisdiction\":\"US\",\"sensitivityThreshold\":0.7,\"includeSummary\":true}", + "description": "Compare liability clauses in a set of US contracts to identify non-standard or risky terms." + }, + { + "inputJson": "{\"datasetFormat\":\"csv\",\"dataset\":\"transactionId,date,customerId,dataProcessingConsent\\n1,2023-01-01,C123,true\\n2,2023-02-01,C124,false\",\"analysisType\":\"complianceCheck\",\"jurisdiction\":\"EU\",\"includeSummary\":false}", + "description": "Check GDPR compliance for customer data consent records in CSV format for EU jurisdiction." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "legal-tools.analyzeJSON", + "description": "This tool accepts legal contract data formatted as JSON and analyzes key components such as clauses, obligations, parties, and terms. It performs semantic validation and extracts compliance risks, ambiguous terms, and potential conflicts, returning a structured report highlighting issues, recommendations, and summaries to assist legal review and contract management.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractJson", + "type": "string", + "description": "A string containing the legal contract data in JSON format to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Optional language code (e.g., 'en') specifying the language of the contract text for better semantic analysis.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include suggested improvements and compliance recommendations in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "If true, perform a stricter compliance check validating against specific legal standards.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing identified clauses, potential risks, ambiguous terms, compliance issues, and optionally recommendations for contract improvement." + }, + "aiAgent": { + "useCase": "Use this tool to automatically analyze legal contract data encoded in JSON format to identify risks, ambiguous clauses, and compliance issues. Ideal for automating initial contract reviews, extracting key legal information, and guiding legal teams with a structured report.", + "limitations": "This tool cannot provide legally binding advice or replace a qualified legal professional's review. Complex context or jurisdiction-specific nuances may not be fully captured.", + "examples": [ + "Analyze a JSON-formatted contract to find ambiguous clauses and compliance risks.", + "Generate a summary report with recommendations from contract JSON data.", + "Validate contract obligations and parties from JSON input." + ] + }, + "tags": [ + "legal", + "contract analysis", + "JSON", + "compliance", + "risk analysis", + "automation" + ], + "examples": [ + { + "inputJson": "{\"parties\":[{\"name\":\"Company A\"},{\"name\":\"Company B\"}],\"clauses\":[{\"title\":\"Confidentiality\",\"text\":\"Both parties agree to keep all information confidential.\"},{\"title\":\"Termination\",\"text\":\"Either party may terminate with 30 days notice.\"}],\"terms\":{\"duration\":\"12 months\",\"payment\":\"Net 30 days\"}}", + "description": "A typical contract JSON containing parties, clauses with titles and texts, and terms such as duration and payment conditions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "legal-tools.downloadFile", + "description": "This tool downloads a specified legal document or contract file from a secured document management system using a provided file identifier or URL. It supports specifying the desired file format and access credentials, and returns the file content for further processing or storage.", + "category": "legal-tools", + "parameters": [ + { + "name": "fileId", + "type": "string", + "description": "The unique identifier or URL of the legal file to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Desired format of the downloaded file, e.g., PDF, DOCX. Defaults to the original format if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessToken", + "type": "string", + "description": "Authentication token required to authorize access to the protected legal file.", + "required": true, + "defaultValue": "" + }, + { + "name": "saveToLocalPath", + "type": "string", + "description": "Local file system path where the downloaded file should be saved. If empty, file content is returned as base64 string instead.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the success status, the downloaded file content as a base64 encoded string (if not saved locally), the path where the file was saved if applicable, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve legal contract files or compliance documents from a secure repository or document management system, either for viewing, processing, or transferring. It enables automated workflows for contract lifecycle management by fetching necessary legal documents using secure credentials.", + "limitations": "The tool does not process or analyze the content of the downloaded file; it only retrieves it. It requires valid access tokens and correct file identifiers. Large file downloads may be subject to system/network resource constraints.", + "examples": [ + "Download a signed NDA contract PDF using its file ID and save locally.", + "Retrieve a compliance certificate as a DOCX file for review without saving locally.", + "Fetch multiple contract amendments securely given their file URLs and access tokens." + ] + }, + "tags": [ + "download", + "legal", + "file", + "contract", + "document", + "compliance", + "secure-access" + ], + "examples": [ + { + "inputJson": "{\"fileId\":\"contract-12345\",\"fileFormat\":\"PDF\",\"accessToken\":\"eyJhbGc...\",\"saveToLocalPath\":\"/user/downloads/nda_signed.pdf\"}", + "description": "Download a signed NDA contract as PDF and save it to the user downloads folder." + }, + { + "inputJson": "{\"fileId\":\"https://docs.example.com/files/compliance_cert_2023.docx\",\"accessToken\":\"eyJhbGc...\"}", + "description": "Retrieve a compliance certificate DOCX file using its URL without saving locally, returning base64 content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "legal-tools.downloadCode", + "description": "This tool accepts parameters to download source code or code snippets related to legal software modules or contract automation scripts from a specified secure repository. It processes access credentials and identifiers to securely retrieve code files, returning them in a structured format for legal software integration or review.", + "category": "legal-tools", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the secure code repository to download from.", + "required": true, + "defaultValue": "" + }, + { + "name": "accessToken", + "type": "string", + "description": "Authentication token or API key to access the repository securely.", + "required": true, + "defaultValue": "" + }, + { + "name": "codeIdentifier", + "type": "string", + "description": "Unique identifier or path for the specific legal code module or script to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Specific version or tag of the code to download, defaults to latest if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired output format for the downloaded code (e.g., 'zip', 'tar', 'raw').", + "required": false, + "defaultValue": "zip" + } + ], + "returns": { + "type": "object", + "description": "An object including the code content or archive as base64 encoded data, filename, and metadata such as version and download timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve specific legal code modules, automation scripts, or contract templates from a secure repository for further processing, audit, or integration within a legal software environment. The tool ensures authenticated and versioned access to the codebase.", + "limitations": "It cannot analyze or modify the code once downloaded. Issues related to repository access permissions or network failures need to be handled externally.", + "examples": [ + "Download the latest version of a contract automation script from our internal legal code repository.", + "Retrieve a specific version of a compliance verification module for audit purposes.", + "Get the raw source code files of a legal document generator stored in the repository." + ] + }, + "tags": [ + "download", + "legal", + "code", + "repository", + "contract automation", + "compliance", + "secure access" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://git.legalrepo.com/contracts\",\"accessToken\":\"abc123token\",\"codeIdentifier\":\"automation/generateContract.js\",\"version\":\"v1.2.3\",\"format\":\"zip\"}", + "description": "Download version 1.2.3 of the contract generation JavaScript module as a zip archive." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://git.legalrepo.com/compliance\",\"accessToken\":\"securetoken789\",\"codeIdentifier\":\"scripts/checkCompliance.py\",\"format\":\"raw\"}", + "description": "Download the latest raw Python script for compliance checking from the repository without specifying a version." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "legal-tools.uploadCode", + "description": "This tool accepts source code files or snippets for legal contracts embedded in code, such as smart contracts or compliance scripts. It processes uploads to verify format, store securely in a legal code repository, and returns a unique identifier and metadata summary for reference in contract management systems.", + "category": "legal-tools", + "parameters": [ + { + "name": "codeContent", + "type": "string", + "description": "The source code text of the legal contract or related script to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the code file being uploaded, including extension (e.g., Contract.sol).", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming or scripting language of the code (e.g., Solidity, JavaScript).", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata describing the code, including attributes like version, author, and contract type.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating if an existing code entry with the same name should be overwritten.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a unique code ID, storage location URL, and metadata summary of the uploaded code." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload source code relevant to legal contracts, such as smart contracts or compliance automation scripts, into a legal code management system for tracking, versioning, and auditing.", + "limitations": "This tool does not compile, validate, or execute the code beyond basic format checks. It does not assess legal compliance or contract correctness within the code.", + "examples": [ + "Upload a Solidity smart contract source file with metadata for compliance tracking.", + "Add a new version of a contract automation script in JavaScript without overwriting existing files.", + "Upload code snippet representing contract clauses for legal audit purposes." + ] + }, + "tags": [ + "upload", + "legal", + "code", + "smart-contracts", + "compliance", + "contract-management" + ], + "examples": [ + { + "inputJson": "{\"codeContent\":\"pragma solidity ^0.8.0; contract Agreement { string public terms; function setTerms(string memory _terms) public { terms = _terms; }}\",\"fileName\":\"Agreement.sol\",\"language\":\"Solidity\",\"metadata\":{\"version\":\"1.0\",\"author\":\"Jane Doe\",\"contractType\":\"Smart Contract\"},\"overwriteExisting\":false}", + "description": "Uploading a Solidity smart contract source file for a legal agreement." + }, + { + "inputJson": "{\"codeContent\":\"function validateContract(data) { /* compliance checks */ }\",\"fileName\":\"validate.js\",\"language\":\"JavaScript\",\"metadata\":{\"version\":\"2.1\",\"author\":\"LegalBot\",\"contractType\":\"Compliance Script\"},\"overwriteExisting\":true}", + "description": "Uploading a JavaScript compliance validation script, overwriting the existing file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "legal-tools.downloadDocument", + "description": "Downloads a legal document from a secure contract management system based on document ID or contract reference. Accepts document identifiers and optional filters for version or format, retrieves the stored document securely, and provides a downloadable file URL or encoded data for further processing or review.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentId", + "type": "string", + "description": "Unique identifier of the document to download.", + "required": false, + "defaultValue": "" + }, + { + "name": "contractReference", + "type": "string", + "description": "Reference number or code of the related contract to locate the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "versionNumber", + "type": "number", + "description": "Specific version of the document to download. Defaults to latest if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Preferred file format for the downloaded document (e.g., PDF, DOCX). If unsupported, defaults to stored format.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include document metadata (author, timestamps) along with the document file.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the document content encoded in base64 or a secure downloadable URL, document metadata if requested, the file format, and a success status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve stored legal documents for contract review, compliance checks, audit preparation, or legal analysis. It is designed to safely access versioned contract documents by identifiers, providing the contents in requested formats.", + "limitations": "This tool does not create or modify documents; it cannot retrieve documents without a valid identifier or contract reference. It does not parse or analyze document contents.", + "examples": [ + "Download the latest version of a contract document by its documentId.", + "Retrieve version 2 of a specific legal agreement in PDF format including metadata.", + "Fetch a document using the contract reference code without specifying version, defaulting to latest." + ] + }, + "tags": [ + "legal", + "document", + "download", + "contract", + "compliance", + "file", + "versioning", + "secure" + ], + "examples": [ + { + "inputJson": "{\"documentId\":\"DOC123456\"}", + "description": "Download the latest version of the document with ID DOC123456." + }, + { + "inputJson": "{\"contractReference\":\"CTR-2023-045\",\"versionNumber\":2,\"fileFormat\":\"PDF\",\"includeMetadata\":true}", + "description": "Download version 2 of the contract referenced CTR-2023-045 in PDF format including metadata." + }, + { + "inputJson": "{\"contractReference\":\"NDA-2022-01\"}", + "description": "Download the latest document version associated with contract reference NDA-2022-01." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "legal-tools.composeEmail", + "description": "This tool generates professional, legally compliant emails related to contract management and legal compliance. It accepts inputs such as recipient information, subject, key points or clauses to include, tone (formal/informal), and optional attachments or references. It processes these inputs to produce a polished email draft suitable for legal communications or contract negotiations.", + "category": "legal-tools", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Full name of the email recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of important points or clauses to be included in the email body.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the email, e.g., formal, semi-formal, or informal.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment descriptions or filenames to mention in the email.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "closingRemark", + "type": "string", + "description": "Optional closing sentence or remark to end the email.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed email elements including recipient, subject, and the fully composed email body text." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents that need to draft professional legal emails such as contract negotiation requests, compliance notices, or clarifications of legal terms. It ensures that emails are clear, appropriately formal, and legally sensitive to the context provided by key points and tone.", + "limitations": "This tool does not perform legal advice, verify legal accuracy, or replace human legal review. It cannot generate attachments or handle email sending. It solely composes email drafts based on inputs.", + "examples": [ + "Generate a formal email requesting contract amendments highlighting specific clauses.", + "Compose a compliance reminder email to a partner with references to key legal points.", + "Prepare a polite negotiation email offering terms adjustments in a contract." + ] + }, + "tags": [ + "legal", + "email", + "contract", + "compliance", + "communication", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"John Smith\",\"recipientEmail\":\"john.smith@example.com\",\"subject\":\"Contract Amendment Request\",\"keyPoints\":[\"Amend clause 4.1 regarding delivery timelines\",\"Include penalty clause for delays\"],\"tone\":\"formal\",\"attachments\":[],\"closingRemark\":\"Please review and let us know your feedback.\"}", + "description": "Composing a formal email to request contract changes focusing on timeline and penalty clauses." + }, + { + "inputJson": "{\"recipientName\":\"Legal Team\",\"recipientEmail\":\"legal.team@company.com\",\"subject\":\"Compliance Reminder for GDPR\",\"keyPoints\":[\"Ensure data processing agreement is updated\",\"Verify third-party processor compliance\"],\"tone\":\"formal\",\"attachments\":[\"Data_Processing_Agreement.pdf\"],\"closingRemark\":\"Looking forward to your confirmation.\"}", + "description": "Composing a compliance reminder email to internal legal team referencing GDPR requirements and attachments." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "legal-tools.generateTest", + "description": "Generates executable test cases for contract management software modules based on provided contract logic specifications. Accepts contract function descriptions and expected behaviors, then produces code snippets for testing those functionalities to ensure compliance and correct implementation.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractFunctionDescription", + "type": "string", + "description": "A detailed textual description of the contract function or clause to be tested, including its purpose and expected behavior.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedOutcome", + "type": "string", + "description": "The expected result or output produced by the contract function under test conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated test code (e.g., JavaScript, Python). Defaults to JavaScript.", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "testFramework", + "type": "string", + "description": "The testing framework to target for test generation (e.g., Mocha, Jest). Defaults to Mocha for JavaScript.", + "required": false, + "defaultValue": "Mocha" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to include tests for edge cases related to the contract function behaviors.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated test code as a string along with metadata about the test, such as language and framework." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate unit or integration tests for contract management system modules based on human-readable descriptions of contract logic. It helps in validating that contract clauses or functions behave as expected, improving reliability and compliance. Suitable for developers, testers, or legal engineers working with software-encoded contracts.", + "limitations": "This tool cannot verify legal validity of contracts or perform legal analysis. It generates code-level tests but does not ensure legal compliance. It may not cover very complex contract scenarios without detailed input descriptions.", + "examples": [ + "Generate test code in JavaScript Mocha for a payment processing function that should reject payment amounts above the contract limit.", + "Create tests including edge cases for a termination clause function to verify correct flags are set.", + "Produce Python unittest code for a contract renewal logic ensuring date validations." + ] + }, + "tags": [ + "legal", + "testing", + "contract", + "code-generation", + "automation", + "compliance", + "software-testing" + ], + "examples": [ + { + "inputJson": "{\"contractFunctionDescription\":\"Function to validate payment amount does not exceed maximum allowed limit.\",\"expectedOutcome\":\"Throws error if amount > max limit, otherwise accepts payment.\",\"programmingLanguage\":\"JavaScript\",\"testFramework\":\"Mocha\",\"includeEdgeCases\":true}", + "description": "Generate JavaScript Mocha tests to verify payment amount validation in contract management code." + }, + { + "inputJson": "{\"contractFunctionDescription\":\"Check contract termination flags are correctly set when termination conditions met.\",\"expectedOutcome\":\"Termination flag is true if termination clause activated.\",\"programmingLanguage\":\"Python\",\"testFramework\":\"unittest\",\"includeEdgeCases\":false}", + "description": "Generate Python unittest test cases verifying termination flag behavior based on contract logic." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "legal-tools.generateDataset", + "description": "Generates a structured dataset of standardized legal contract clauses based on specified contract types, jurisdictions, and clause categories. Accepts input parameters defining contract scope and returns a JSON dataset mapping clause identifiers to clause text and metadata for legal research and contract drafting.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractTypes", + "type": "array", + "description": "List of contract types to include clauses from, e.g., ['NDA', 'Service Agreement'].", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdictions", + "type": "array", + "description": "List of jurisdictions to filter clauses by legal applicability, e.g., ['US', 'EU'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "clauseCategories", + "type": "array", + "description": "List of clause categories to include, e.g., ['Confidentiality', 'Termination'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeDeprecated", + "type": "boolean", + "description": "Whether to include deprecated or outdated clauses in the dataset.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxClausesPerCategory", + "type": "number", + "description": "Maximum number of clauses to include per category to limit dataset size.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "JSON object where keys are clause identifiers and values contain clause text and metadata including contract type, jurisdiction, and category." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a curated dataset of legal contract clauses tailored to specific contract types and jurisdictions to support contract drafting, compliance analysis, or legal research workflows.", + "limitations": "This tool does not provide legal advice or verify the enforceability of clauses. It cannot dynamically draft novel contracts or interpret clause applicability beyond specified filters.", + "examples": [ + "Generate a dataset of confidentiality and termination clauses for US NDAs and service agreements.", + "Create a dataset of employment contract clauses applicable under EU law.", + "Provide contract termination clauses up to a maximum of 20 per category for US and UK contracts." + ] + }, + "tags": [ + "legal", + "contract", + "dataset", + "clause", + "jurisdiction", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"contractTypes\":[\"NDA\",\"Service Agreement\"],\"jurisdictions\":[\"US\"],\"clauseCategories\":[\"Confidentiality\",\"Termination\"],\"includeDeprecated\":false,\"maxClausesPerCategory\":30}", + "description": "Generate dataset of confidentiality and termination clauses for US NDAs and service agreements, limiting to 30 clauses per category." + }, + { + "inputJson": "{\"contractTypes\":[\"Employment\"],\"jurisdictions\":[\"EU\"],\"clauseCategories\":[],\"includeDeprecated\":false,\"maxClausesPerCategory\":50}", + "description": "Generate dataset of all clause categories for EU employment contracts with default clause limits." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "legal-tools.createImage", + "description": "This tool generates customized legal document images based on user input, such as contract clauses, terms, and visual elements like signatures or stamps. It accepts structured data describing the legal content and formatting preferences, and produces a high-quality image of the formatted legal document suitable for inclusion in presentations, reports, or digital records.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentTitle", + "type": "string", + "description": "The title of the legal document to be displayed prominently on the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "clauses", + "type": "array", + "description": "An array of strings, each representing a clause or section text to include in the document image.", + "required": true, + "defaultValue": "" + }, + { + "name": "footerText", + "type": "string", + "description": "Optional footer text, such as disclaimers or page numbers, to add at the bottom of the image.", + "required": false, + "defaultValue": "" + }, + { + "name": "signatureImageUrl", + "type": "string", + "description": "URL to an image of a signature or stamp to embed in the document image.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageWidth", + "type": "number", + "description": "Width of the output image in pixels.", + "required": false, + "defaultValue": "1200" + }, + { + "name": "imageHeight", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "1600" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Hex code or named color string to use as the background color of the image.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "fontName", + "type": "string", + "description": "Name of the font family to use for the text content.", + "required": false, + "defaultValue": "Times New Roman" + }, + { + "name": "fontSize", + "type": "number", + "description": "Base font size in points for the text content.", + "required": false, + "defaultValue": "14" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated image data as a base64-encoded PNG string and metadata about the image." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a visually formatted legal document image from textual legal inputs for reports, presentations, or digital archiving. It aids in visualizing and sharing legal content in a non-editable, easily distributable image format.", + "limitations": "This tool cannot perform legal text analysis, verify legal correctness, or replace actual document authoring tools. It only generates static visual representations and does not support interactive or editable document features.", + "examples": [ + "Create an image of a contract summary with key clauses and a signature.", + "Generate a legal disclaimer image to include in a compliance report.", + "Produce a privacy policy section image with custom styling for presentation use." + ] + }, + "tags": [ + "legal", + "image-generation", + "contract", + "document", + "visualization", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"documentTitle\":\"Service Agreement\",\"clauses\":[\"Clause 1: Scope of work.\",\"Clause 2: Payment terms.\",\"Clause 3: Confidentiality.\"],\"signatureImageUrl\":\"https://example.com/signature.png\",\"footerText\":\"Page 1 of 1\",\"imageWidth\":1000,\"imageHeight\":1400,\"backgroundColor\":\"#FAFAFA\",\"fontName\":\"Georgia\",\"fontSize\":16}", + "description": "Generate a legal service agreement image with three clauses and an embedded signature image." + }, + { + "inputJson": "{\"documentTitle\":\"Non-Disclosure Agreement\",\"clauses\":[\"Definition of confidential information.\",\"Obligations of the receiving party.\",\"Duration of confidentiality.\"],\"footerText\":\"Confidential\",\"imageWidth\":1200,\"imageHeight\":1600,\"backgroundColor\":\"#FFFFFF\",\"fontName\":\"Arial\",\"fontSize\":14}", + "description": "Create a NDA document image highlighting key confidentiality clauses for presentations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "legal-tools.createServer", + "description": "Creates a secure server instance tailored for hosting legal tools and applications. Accepts configuration parameters including server type, operating system, security protocols, and compliance requirements. Sets up the server environment accordingly and returns connection details and status.", + "category": "legal-tools", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server to create, e.g., 'dedicated', 'virtual', or 'container'.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system for the server, e.g., 'Ubuntu 22.04', 'Windows Server 2019'.", + "required": true, + "defaultValue": "" + }, + { + "name": "securityProtocols", + "type": "array", + "description": "List of security protocols to implement, e.g., ['TLS1.3', 'SSH', 'Firewall'].", + "required": false, + "defaultValue": "[\"TLS1.3\",\"SSH\"]" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "Compliance standards the server must meet, e.g., ['GDPR', 'HIPAA']", + "required": false, + "defaultValue": "[]" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the server will be deployed, affecting data residency.", + "required": false, + "defaultValue": "\"us-east-1\"" + }, + { + "name": "instanceSize", + "type": "string", + "description": "Size of the server instance, e.g., 'small', 'medium', 'large'.", + "required": false, + "defaultValue": "small" + }, + { + "name": "autoBackupEnabled", + "type": "boolean", + "description": "Whether to enable automatic backups for legal data safety.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the server ID, IP address, status, compliance report summary, and connection credentials metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a compliant and secure server environment specifically designed to run and manage legal tools, contract management platforms, or legal compliance software. This automates the creation of infrastructure suited for legal data sensitivities and regulatory requirements.", + "limitations": "This tool cannot run or install actual legal software applications on the server; it only provisions the server with specified configurations and compliance setups. It does not perform ongoing security monitoring post-deployment.", + "examples": [ + "Create a HIPAA-compliant server in US East region with Ubuntu OS and TLS1.3 security.", + "Provision a virtual server for GDPR compliance with automated backups enabled.", + "Set up a dedicated Windows Server 2019 instance with SSH and firewall for contract management." + ] + }, + "tags": [ + "infrastructure", + "legal", + "compliance", + "server-provisioning", + "security", + "automation" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"virtual\",\"operatingSystem\":\"Ubuntu 22.04\",\"securityProtocols\":[\"TLS1.3\",\"SSH\"],\"complianceStandards\":[\"GDPR\"],\"region\":\"eu-west-1\",\"instanceSize\":\"medium\",\"autoBackupEnabled\":true}", + "description": "Provision a virtual Ubuntu server in EU West region compliant with GDPR and automatic backups enabled." + }, + { + "inputJson": "{\"serverType\":\"dedicated\",\"operatingSystem\":\"Windows Server 2019\",\"securityProtocols\":[\"Firewall\",\"SSH\"],\"complianceStandards\":[\"HIPAA\"],\"region\":\"us-east-1\",\"instanceSize\":\"large\",\"autoBackupEnabled\":false}", + "description": "Create a dedicated Windows Server instance in US East region with HIPAA compliance and firewall security protocols." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "legal-tools.createDatabase", + "description": "Creates a tailored relational database schema for managing legal contracts and compliance records. Accepts input defining contract types, relevant legal fields, compliance criteria, and access roles. Processes these inputs to generate SQL DDL scripts and connection metadata output for initializing and integrating the database with contract management systems.", + "category": "legal-tools", + "parameters": [ + { + "name": "databaseName", + "type": "string", + "description": "The name to assign to the new legal contracts database.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractTypes", + "type": "array", + "description": "List of contract categories (e.g., NDA, SLA) to be managed, influencing table schemas.", + "required": true, + "defaultValue": "" + }, + { + "name": "legalFields", + "type": "object", + "description": "Custom key-value pairs defining additional legal data fields, with field names as keys and data types as values.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "complianceRequirements", + "type": "array", + "description": "Array of compliance or regulatory requirements to incorporate, which dictate constraints and audit tracking fields.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "userRoles", + "type": "array", + "description": "List of user roles with access permissions to define role-based access control schemas.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dbType", + "type": "string", + "description": "Target database type for schema generation, e.g., 'PostgreSQL', 'MySQL', or 'SQLite'.", + "required": true, + "defaultValue": "PostgreSQL" + }, + { + "name": "enableAuditLogs", + "type": "boolean", + "description": "Flag to include audit log tables and triggers for tracking data changes in contracts and compliance records.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing SQL schema scripts and metadata needed to deploy and connect to the created legal contracts database." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent is tasked with setting up infrastructure for contract management and legal compliance tracking. It helps generate the necessary database schema tailored to specified contract types and compliance needs, accelerating legal technology deployment.", + "limitations": "Does not execute database creation commands or manage database instances; only generates schema definitions and metadata for integration. It cannot replace specialized legal advice on compliance details.", + "examples": [ + "Create a database schema for storing NDAs and SLAs with GDPR compliance fields.", + "Generate a contract database with custom legal fields and role-based access for auditing.", + "Produce SQL scripts for a MySQL database managing multiple contract types with audit logs enabled." + ] + }, + "tags": [ + "legal", + "database", + "contract-management", + "compliance", + "schema-generation", + "infrastructure", + "automation" + ], + "examples": [ + { + "inputJson": "{\"databaseName\":\"LegalContractsDB\",\"contractTypes\":[\"NDA\",\"SLA\"],\"legalFields\":{\"effectiveDate\":\"DATE\",\"terminationClause\":\"TEXT\"},\"complianceRequirements\":[\"GDPR\",\"SOX\"],\"userRoles\":[\"legalTeam\",\"complianceOfficer\"],\"dbType\":\"PostgreSQL\",\"enableAuditLogs\":true}", + "description": "Create a PostgreSQL database schema for NDA and SLA contracts including GDPR and SOX compliance, custom legal fields, and audit logs." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "legal-tools.createText", + "description": "Generates legally valid text documents such as contracts, agreements, and clauses based on specified input parameters including document type, jurisdiction, parties involved, and key terms. Processes these inputs to produce coherent legal text tailored to user requirements.", + "category": "legal-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of legal document to create, e.g., 'NDA', 'Service Agreement', or 'Lease'.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction governing the document, e.g., 'California', 'UK', or 'International'.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "Array of parties involved in the document, each with name and role.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyTerms", + "type": "object", + "description": "Key terms and conditions relevant to the document such as dates, payment terms, obligations.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language in which to generate the document text, e.g., 'English'.", + "required": false, + "defaultValue": "English" + }, + { + "name": "includeBoilerplate", + "type": "boolean", + "description": "Whether to include standard legal boilerplate clauses (e.g., severability, governing law).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated legal document text and a summary of key clauses for review." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate draft legal documents, contracts, or agreements based on structured input describing parties, terms, and jurisdictions. Ideal for initial drafts to speed contract creation before legal review. It helps reduce manual text creation by providing consistent, jurisdiction-specific legal language.", + "limitations": "The tool cannot replace legal advice and should not be used for complex or high-risk agreements without review from qualified legal professionals. It may not cover all jurisdiction-specific nuances or bespoke terms.", + "examples": [ + "Create a Non-Disclosure Agreement between two companies in California.", + "Generate a Service Agreement for a UK-based freelancer and client including payment terms.", + "Draft a Lease Agreement for residential property in New York including a pet policy clause." + ] + }, + "tags": [ + "legal", + "document generation", + "contract drafting", + "compliance", + "jurisdiction", + "automation", + "legal-text" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"NDA\",\"jurisdiction\":\"California\",\"parties\":[{\"name\":\"Alpha Corp\",\"role\":\"Disclosing Party\"},{\"name\":\"Beta LLC\",\"role\":\"Receiving Party\"}],\"keyTerms\":{\"duration\":\"2 years\"},\"language\":\"English\",\"includeBoilerplate\":true}", + "description": "Generate a Non-Disclosure Agreement for parties in California with standard boilerplate." + }, + { + "inputJson": "{\"documentType\":\"Service Agreement\",\"jurisdiction\":\"UK\",\"parties\":[{\"name\":\"Jane Doe\",\"role\":\"Service Provider\"},{\"name\":\"XYZ Ltd\",\"role\":\"Client\"}],\"keyTerms\":{\"payment\":\"500 GBP/month\",\"term\":\"12 months\"},\"language\":\"English\",\"includeBoilerplate\":true}", + "description": "Create a UK Service Agreement outlining payment and term details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "legal-tools.createMessage", + "description": "This tool creates a legally compliant message tailored for contract-related communications. It accepts input parameters such as recipient details, message subject, body content, tone, and optional attachments. It formats the message professionally, ensures legal compliance by including necessary disclaimers or references, and outputs the complete message ready for sending or archiving.", + "category": "legal-tools", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Full name of the message recipient", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient for contact", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line summarizing the message purpose", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the message with details or requests", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the message such as formal, neutral, or friendly", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeDisclaimer", + "type": "boolean", + "description": "Whether to add a legal disclaimer at the bottom of the message", + "required": false, + "defaultValue": "true" + }, + { + "name": "attachments", + "type": "array", + "description": "List of file names or URLs to include as attachments", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted message, including recipient info, subject, body with legal compliance text added, and an array of attachments." + }, + "aiAgent": { + "useCase": "Use this tool when an AI assistant needs to draft legally appropriate communications related to contracts, such as sending notices, reminders, or updates, ensuring consistent tone and inclusion of required legal disclaimers. It is suitable for formal contract or compliance-related correspondences prepared for review or dispatch.", + "limitations": "This tool does not send messages or verify recipient contact validity. It also cannot provide legal advice or customize disclaimers beyond standard templates.", + "examples": [ + "Create a formal contract renewal notification email to a client including terms summary and disclaimer.", + "Draft a message informing the partner about an upcoming compliance audit, attachments included.", + "Generate a polite reminder about a pending contract signature needing recipient attention." + ] + }, + "tags": [ + "legal", + "contract", + "message", + "communication", + "compliance", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"John Doe\",\"recipientEmail\":\"john.doe@example.com\",\"subject\":\"Contract Renewal Notification\",\"body\":\"Dear John, This is a reminder that your contract with us will expire on July 30, 2024. Please review the attached renewal terms.\",\"tone\":\"formal\",\"includeDisclaimer\":true,\"attachments\":[\"RenewalTerms.pdf\"]}", + "description": "Generate a formal contract renewal message with attachment and legal disclaimer." + }, + { + "inputJson": "{\"recipientName\":\"Jane Smith\",\"recipientEmail\":\"jane.smith@partnerco.com\",\"subject\":\"Upcoming Compliance Audit\",\"body\":\"Hello Jane, We wanted to inform you of the scheduled compliance audit next month. Please see the attached checklist.\",\"tone\":\"neutral\",\"includeDisclaimer\":true,\"attachments\":[\"AuditChecklist.pdf\"]}", + "description": "Create a neutral tone message informing a partner about audit schedule with attachment and disclaimer." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "legal-tools.createAccount", + "description": "Creates a new legal account record for a business entity including details such as account type, registration info, associated contacts, and compliance notes. Accepts structured input about the business and generates a unique account ID along with a confirmation status.", + "category": "legal-tools", + "parameters": [ + { + "name": "accountName", + "type": "string", + "description": "The official name of the business or entity for the account.", + "required": true, + "defaultValue": "" + }, + { + "name": "accountType", + "type": "string", + "description": "Type of legal account such as Corporation, LLC, Partnership, or Sole Proprietorship.", + "required": true, + "defaultValue": "" + }, + { + "name": "registrationNumber", + "type": "string", + "description": "Unique government-issued registration or tax identification number.", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Jurisdiction (state or country) where the business is registered.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactEmails", + "type": "array", + "description": "Array of contact email addresses linked to the account for communication and notifications.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "complianceStatus", + "type": "string", + "description": "Initial compliance status for the account, e.g., 'Pending', 'Compliant', or 'Non-compliant'.", + "required": false, + "defaultValue": "Pending" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or remarks relevant to the legal account.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created account's unique ID, official name, registration info, and status confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when creating a new legal entity account within a contract management or compliance system to register the entity's legal and contact details. It helps maintain accurate records for compliance tracking and contract associations.", + "limitations": "This tool does not validate registration numbers against government databases nor does it perform legal advice or compliance audits; it only records provided information.", + "examples": [ + "Create a new LLC account for a startup with a valid registration number and jurisdiction.", + "Add a corporation account including multiple contact emails and initial compliance check status.", + "Register a sole proprietorship with minimal details and default compliance status." + ] + }, + "tags": [ + "legal", + "accountManagement", + "businessRegistration", + "compliance", + "contractManagement", + "entityRecords" + ], + "examples": [ + { + "inputJson": "{\"accountName\":\"Tech Innovations LLC\",\"accountType\":\"LLC\",\"registrationNumber\":\"TI123456789\",\"jurisdiction\":\"Delaware\",\"contactEmails\":[\"contact@techinnovations.com\"],\"complianceStatus\":\"Pending\",\"notes\":\"Initial registration.\"}", + "description": "Create an LLC account for Tech Innovations in Delaware with one contact email and pending compliance status." + }, + { + "inputJson": "{\"accountName\":\"Green Energy Corp\",\"accountType\":\"Corporation\",\"registrationNumber\":\"GE987654321\",\"jurisdiction\":\"California\",\"contactEmails\":[\"ceo@greenenergy.com\",\"legal@greenenergy.com\"],\"complianceStatus\":\"Compliant\",\"notes\":\"Certified for renewable energy projects.\"}", + "description": "Register a compliant corporation account for Green Energy with two contact emails and a note about certification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "legal-tools.createDataset", + "description": "Creates a structured dataset from provided legal documents and metadata to support contract management and legal compliance analysis. Accepts document texts and associated attributes, processes them to organize and categorize relevant legal information, and outputs a dataset suitable for analysis or integration with compliance tools.", + "category": "legal-tools", + "parameters": [ + { + "name": "documents", + "type": "array", + "description": "Array of legal documents, each with text content and optional metadata, to include in the dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadataFields", + "type": "array", + "description": "List of metadata fields to extract or include for each document in the dataset, such as contract type, date, parties, jurisdiction.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "categorizationScheme", + "type": "string", + "description": "Optional scheme identifier to categorize documents according to a predefined taxonomy (e.g., NDA, Service Agreement).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTextContent", + "type": "boolean", + "description": "Flag to include full text content of documents in the output dataset for deeper analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the resulting dataset, e.g., JSON, CSV, or XML.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "Structured dataset object containing organized document information and metadata according to the specified parameters and format." + }, + "aiAgent": { + "useCase": "Use this tool when a structured compilation of contract documents and their attributes is needed for managing legal workflows, compliance audits, or data analysis. It helps transform raw legal texts and metadata into an organized dataset.", + "limitations": "Does not perform deep legal analysis or validation of document content; relies on provided metadata accuracy and document quality.", + "examples": [ + "Create a dataset from a list of employment agreements including party names, effective dates, and jurisdictions.", + "Generate a JSON dataset categorizing NDA documents separately from service agreements with full text included.", + "Produce a CSV dataset from contract documents capturing only metadata fields such as contract type and date without full text." + ] + }, + "tags": [ + "legal", + "dataset", + "contract management", + "legal compliance", + "document processing", + "metadata extraction" + ], + "examples": [ + { + "inputJson": "{\"documents\":[{\"text\":\"This Non-Disclosure Agreement ...\",\"metadata\":{\"contractType\":\"NDA\",\"date\":\"2023-01-01\",\"parties\":[\"Company A\",\"Company B\"],\"jurisdiction\":\"Delaware\"}},{\"text\":\"This Service Agreement ...\",\"metadata\":{\"contractType\":\"Service Agreement\",\"date\":\"2022-06-15\",\"parties\":[\"Company A\",\"Consultant\"],\"jurisdiction\":\"California\"}}],\"metadataFields\":[\"contractType\",\"date\",\"parties\",\"jurisdiction\"],\"categorizationScheme\":\"standardLegalTypes\",\"includeTextContent\":true,\"outputFormat\":\"JSON\"}", + "description": "Creating a JSON dataset from multiple contract documents with key metadata and full text included, categorized by contract type." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "legal-tools.createIssue", + "description": "Creates a legal issue record within a contract management or compliance system. Accepts inputs such as issue type, description, severity, related contract IDs, and due dates. Processes and stores this data, returning an identifier and summary for tracking and resolution purposes.", + "category": "legal-tools", + "parameters": [ + { + "name": "issueType", + "type": "string", + "description": "Type or category of the legal issue (e.g., breach, compliance, risk).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the legal issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the issue (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "medium" + }, + { + "name": "relatedContractIds", + "type": "array", + "description": "List of contract IDs related to this issue.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date for resolving the issue in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Name or identifier of the person reporting the issue.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique issue ID, a summary of the issue, and the creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or is prompted to log a new legal issue related to contract management or compliance. Useful for tracking, escalation, and reporting of legal risks or breaches identified in contracts or compliance checks.", + "limitations": "Does not perform legal analysis or risk assessment; it only creates an issue record. The accuracy of severity and description depends on input data. It does not automatically resolve or communicate issues.", + "examples": [ + "Create a new compliance breach issue for contract ID 12345 with high severity and a specified due date.", + "Log a risk issue related to multiple contracts with a detailed description and reporter's name.", + "Add a low severity issue regarding contract renewal monitoring without a due date." + ] + }, + "tags": [ + "legal", + "compliance", + "issue-tracking", + "contract-management", + "risk", + "legal-issue", + "logging" + ], + "examples": [ + { + "inputJson": "{\"issueType\":\"compliance breach\",\"description\":\"Data privacy clause violated due to unauthorized data sharing.\",\"severity\":\"high\",\"relatedContractIds\":[\"C-2023-001\"],\"dueDate\":\"2024-07-15\",\"reportedBy\":\"John Doe\"}", + "description": "Logging a compliance breach in a specific contract with a high severity level and due date for resolution." + }, + { + "inputJson": "{\"issueType\":\"contract risk\",\"description\":\"Unapproved subcontractor clause missing in contracts.\",\"severity\":\"medium\",\"relatedContractIds\":[\"C-2023-002\",\"C-2023-005\"],\"reportedBy\":\"Legal Team\"}", + "description": "Creating a risk issue pertaining to multiple contracts with medium severity, without a due date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "customer-support.analyzeConversion", + "description": "Analyzes customer support interaction data to evaluate conversion rates from initial contact to issue resolution or upsell. Accepts interaction records with timestamps, outcomes, and channel info; processes to calculate conversion metrics and trends; outputs detailed reports and key performance indicators.", + "category": "customer-support", + "parameters": [ + { + "name": "interactionData", + "type": "array", + "description": "Array of customer support interaction objects including timestamps, customer IDs, outcomes, and channel types.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) to filter interactions for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) to filter interactions for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of support channels (e.g., phone, chat, email) to include in the analysis. If empty, all channels are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "conversionCriteria", + "type": "object", + "description": "Object defining what constitutes a conversion (e.g., issue resolved, upsell success).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to analyze and return trend data over time periods.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an analytics report object containing overall conversion rate, conversion breakdown by channel and outcome, trend analysis if requested, and recommendations for improving conversion." + }, + "aiAgent": { + "useCase": "Use this tool to assess and improve how effectively customer support interactions lead to desired outcomes such as issue resolution or sales conversions. Ideal for analyzing historical support data to identify patterns, measure performance, and recommend optimizations.", + "limitations": "The tool cannot perform sentiment analysis or deep qualitative evaluation of conversation content; it relies on structured interaction metadata. It requires well-defined conversion criteria and reasonably clean input data.", + "examples": [ + "Analyze conversion rates of support chats between 2023-01-01 and 2023-03-31.", + "Evaluate upsell success conversions on phone and email channels last quarter.", + "Generate a report showing trends in issue resolution conversions for the past six months." + ] + }, + "tags": [ + "customer-support", + "analytics", + "conversion", + "performance", + "customer-experience", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"interactionData\":[{\"timestamp\":\"2023-02-10T10:15:00Z\",\"customerId\":\"123\",\"outcome\":\"resolved\",\"channel\":\"chat\"},{\"timestamp\":\"2023-02-11T09:30:00Z\",\"customerId\":\"124\",\"outcome\":\"unresolved\",\"channel\":\"email\"}],\"startDate\":\"2023-02-01\",\"endDate\":\"2023-02-28\",\"channels\":[\"chat\",\"email\"],\"conversionCriteria\":{\"successOutcomes\":[\"resolved\"]},\"includeTrends\":true}", + "description": "Analyze February 2023 customer support interactions via chat and email to calculate resolution conversion rates and trends." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "legal-tools.createAPI", + "description": "This tool generates a RESTful API specification for legal document management systems, accepting inputs like contract templates, clause libraries, and compliance requirements, and producing OpenAPI JSON specifications to facilitate integration and automation of contract workflows.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractTemplates", + "type": "array", + "description": "An array of contract template objects defining structure and required fields for various legal agreements.", + "required": true, + "defaultValue": "" + }, + { + "name": "clauseLibrary", + "type": "object", + "description": "A dictionary of standardized contract clauses with identifiers and text, used to build document templates.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "complianceRules", + "type": "array", + "description": "List of compliance rules or regulations that must be enforced or checked via the API during contract processing.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "The authentication mechanism to secure the API, e.g., OAuth2, API Key, Basic Auth.", + "required": true, + "defaultValue": "\"OAuth2\"" + }, + { + "name": "includeVersioning", + "type": "boolean", + "description": "Whether to include API versioning in the generated specification.", + "required": false, + "defaultValue": "true" + }, + { + "name": "apiBasePath", + "type": "string", + "description": "Base path for the API endpoints, e.g., '/api/legal'.", + "required": false, + "defaultValue": "/api/legal" + } + ], + "returns": { + "type": "object", + "description": "An OpenAPI specification object in JSON format describing the generated legal document management API, including endpoints, methods, parameters, and security schemes." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate interoperable RESTful API specifications tailored for managing legal documents, contracts, and compliance enforcement. Agents can utilize it when integrating legal contract workflows into software systems, enabling automation, standardization, and easy third-party integration.", + "limitations": "This tool does not implement the API itself nor validate the legal validity of contract clauses. It generates specification only and requires developers to implement backend logic accordingly.", + "examples": [ + "Generate an API spec to handle NDAs and service agreements with OAuth2 security.", + "Create an API spec that enforces GDPR compliance rules while managing contracts.", + "Produce a versioned API spec with base path '/legal/v1' including clause reuse endpoints." + ] + }, + "tags": [ + "legal", + "API", + "contract management", + "compliance", + "automation", + "specification" + ], + "examples": [ + { + "inputJson": "{\"contractTemplates\":[{\"name\":\"NDA\",\"fields\":[\"partyA\",\"partyB\",\"effectiveDate\"]}],\"clauseLibrary\":{\"confidentiality\":\"All parties agree to confidentiality.\"},\"complianceRules\":[\"GDPR\"],\"authenticationMethod\":\"OAuth2\",\"includeVersioning\":true,\"apiBasePath\":\"/api/legal\"}", + "description": "Generate an OAuth2 secured API spec for NDA contracts including GDPR compliance rules and versioning." + }, + { + "inputJson": "{\"contractTemplates\":[{\"name\":\"ServiceAgreement\",\"fields\":[\"provider\",\"client\",\"startDate\",\"endDate\"]}],\"clauseLibrary\":{},\"complianceRules\":[],\"authenticationMethod\":\"API Key\",\"includeVersioning\":false,\"apiBasePath\":\"/api/legal\"}", + "description": "Create an API spec for managing service agreements with API Key authentication and no versioning." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "legal-tools.createCommit", + "description": "Creates a legal compliance commit message for version control systems based on contract updates. Accepts contract change details and metadata, generates a formatted commit message ensuring traceability of legal modifications in code repositories.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractId", + "type": "string", + "description": "Unique identifier of the contract being updated", + "required": true, + "defaultValue": "" + }, + { + "name": "changeSummary", + "type": "string", + "description": "Brief summary describing the nature of contract changes", + "required": true, + "defaultValue": "" + }, + { + "name": "updatedBy", + "type": "string", + "description": "Name or identifier of the person who made the changes", + "required": true, + "defaultValue": "" + }, + { + "name": "changeDate", + "type": "string", + "description": "Date of the change in ISO 8601 format (e.g., 2024-06-20)", + "required": false, + "defaultValue": "" + }, + { + "name": "relatedIssueIds", + "type": "array", + "description": "List of related issue or ticket IDs connected to the contract changes", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeLegalClauseReferences", + "type": "boolean", + "description": "Flag to include specific legal clause references in the commit message", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted commit message string and metadata for use in version control commits." + }, + "aiAgent": { + "useCase": "Use this tool when automatically generating commit messages for version control repositories driven by contract or legal document updates. It ensures consistent, traceable, and informative commit messages that reflect legal changes in the codebase or compliance documentation.", + "limitations": "This tool does not perform actual version control commits or verify legal accuracy of changes. It generates commit message text but does not replace legal counsel review.", + "examples": [ + "Generate a commit message after updating a confidentiality clause in contract #C-2024, changed by user Alice, referencing issue #453.", + "Create a commit message summarizing multiple contract amendments done on 2024-06-15, including legal clause references.", + "Produce a commit message for contract #X128 involving compliance fixes without specifying related issues." + ] + }, + "tags": [ + "legal", + "commit", + "version-control", + "contract-management", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"contractId\":\"C-2024\",\"changeSummary\":\"Updated confidentiality clause per new GDPR guidelines\",\"updatedBy\":\"Alice\",\"changeDate\":\"2024-06-20\",\"relatedIssueIds\":[\"453\"],\"includeLegalClauseReferences\":true}", + "description": "Create commit message for GDPR update to confidentiality clause with issue reference and legal clause included." + }, + { + "inputJson": "{\"contractId\":\"X128\",\"changeSummary\":\"Corrected termination notice period\",\"updatedBy\":\"Bob\",\"includeLegalClauseReferences\":false}", + "description": "Generate commit message for updating termination notice period without legal clause references." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "legal-tools.createTest", + "description": "Creates a legal compliance test for JavaScript code related to contract management. Accepts code snippets or file paths, analyzes for compliance issues or contract clauses, and produces a structured test report highlighting compliance status and potential risks.", + "category": "legal-tools", + "parameters": [ + { + "name": "codeSnippet", + "type": "string", + "description": "JavaScript code snippet representing contract logic to be tested", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Path to the JavaScript file containing contract-related code to test", + "required": false, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of legal test to perform (e.g., 'compliance', 'riskAssessment')", + "required": true, + "defaultValue": "compliance" + }, + { + "name": "standards", + "type": "array", + "description": "List of legal standards or regulations the test should check against (e.g., ['GDPR','CCPA'])", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed explanations and references in the test report", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured test report including compliance status, identified issues, and recommendations" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically evaluate JavaScript-based contract management code for compliance with legal standards or to identify potential contract risks. It helps ensure the code meets regulatory requirements or internal policies before deployment.", + "limitations": "Does not perform legal advice or replace professional legal review. Cannot analyze languages other than JavaScript. The accuracy depends on the standards and rules configured and may not catch all issues.", + "examples": [ + "Create a compliance test for the provided JavaScript contract code snippet against GDPR and CCPA.", + "Analyze the JavaScript file at './contracts/paymentProcessor.js' for riskAssessment test type with detailed report.", + "Run a standard compliance test on JavaScript code snippet without specifying legal standards." + ] + }, + "tags": [ + "legal", + "compliance", + "contract", + "testing", + "javascript", + "riskAssessment", + "regulations" + ], + "examples": [ + { + "inputJson": "{\"codeSnippet\":\"function processContract(data) { if(!data.signature) { throw new Error('Missing signature'); } return true; }\",\"testType\":\"compliance\",\"standards\":[\"GDPR\"],\"includeDetails\":true}", + "description": "Testing compliance of a JS contract function against GDPR with detailed report." + }, + { + "inputJson": "{\"filePath\":\"./src/contracts/payment.js\",\"testType\":\"riskAssessment\",\"includeDetails\":false}", + "description": "Running risk assessment test on JavaScript contract file without extra details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "customer-support.analyzeQuote", + "description": "This tool analyzes customer support quotes provided as text. It processes the quote to extract sentiment, detect key themes or issues, and assess overall customer satisfaction. Input is a customer service quote string; output includes sentiment score, identified topics, and a summary analysis.", + "category": "customer-support", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The textual content of the customer support quote to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the quote text (e.g., 'en' for English) to optimize analysis.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "Flag indicating whether to perform a detailed analysis including sentiment, themes, and satisfaction score.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing sentiment score, list of key themes/issues, and summary of overall customer satisfaction derived from the quote." + }, + "aiAgent": { + "useCase": "Use this tool when a detailed understanding of customer feedback or support quotes is needed to assess sentiment, extract common topics, or evaluate satisfaction levels. Useful for improving customer service strategies and identifying recurring issues.", + "limitations": "Cannot replace in-depth qualitative analysis by humans. May not correctly interpret highly nuanced, sarcastic, or context-dependent quotes. Language beyond supported codes may reduce accuracy.", + "examples": [ + "Analyze the sentiment and key issues in this customer support quote.", + "Extract main themes and satisfaction from a user feedback message.", + "Provide a summary and score for a customer complaint comment." + ] + }, + "tags": [ + "customer-support", + "sentiment-analysis", + "text-analysis", + "customer-feedback", + "satisfaction-assessment" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"I love the quick response from the support team, but the solution was only partially effective.\",\"language\":\"en\",\"detailedAnalysis\":true}", + "description": "Analyzing a mixed sentiment customer support quote in English." + }, + { + "inputJson": "{\"quoteText\":\"El servicio fue lento y no resolvieron mi problema.\",\"language\":\"es\",\"detailedAnalysis\":true}", + "description": "Analyzing a negative Spanish language customer complaint." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "customer-support.uploadVideo", + "description": "Uploads a customer support video file to the designated support media repository. Accepts video files in common formats (e.g., MP4, AVI, MOV) along with optional metadata such as title, description, and tags. Processes the upload, stores the video securely, and returns a video ID and a URL for playback or embedding in support channels.", + "category": "customer-support", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "The path or URL of the video file to upload or a base64 encoded video string.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "A short descriptive title for the video content.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "An optional detailed description of the video content to help categorize and search.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags categorizing the video, such as 'troubleshooting', 'product-demo', or 'FAQ'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "customerId", + "type": "string", + "description": "Optional customer identifier associated with the video if uploaded on their behalf.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifySupportTeam", + "type": "boolean", + "description": "Flag to notify support team members after successful upload via internal notification system.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing status of the upload, a unique video ID, and a playback URL if successful." + }, + "aiAgent": { + "useCase": "Use this tool in scenarios where the agent needs to upload a video resource for customer support purposes, such as recording troubleshooting steps, product demos, or customer issue reproductions. This facilitates easy sharing and referencing within support workflows.", + "limitations": "This tool does not perform video editing, format conversion, or video transcription. It requires valid video formats and accessible file paths or URLs. Upload speed depends on file size and network conditions.", + "examples": [ + "Upload a troubleshooting demonstration video for issue ID 12345 with relevant tags.", + "Add a product feature explanation video to the knowledge base with title and description.", + "Upload a customer submitted video to their support ticket and notify the support team." + ] + }, + "tags": [ + "upload", + "video", + "customer support", + "media management", + "help desk", + "knowledge base" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/uploads/troubleshooting_video.mp4\",\"title\":\"WiFi Setup Guide\",\"description\":\"Step-by-step guide to set up WiFi on Model X.\",\"tags\":[\"setup\",\"wifi\",\"model-x\"],\"notifySupportTeam\":true}", + "description": "Upload a WiFi setup tutorial video with descriptive metadata and notify the support team on successful upload." + }, + { + "inputJson": "{\"videoFilePath\":\"https://example.com/customer_videos/issue_789.mov\",\"customerId\":\"cust_789\",\"tags\":[\"customer-submission\",\"issue-video\"]}", + "description": "Upload a customer-submitted video file associated with their ID and categorize it with specific tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "customer-support.uploadTable", + "description": "Uploads a structured data table (e.g., CSV or Excel) containing customer support information such as tickets, customer details, or FAQ entries. The tool validates the format, maps columns to expected fields, and integrates the data into the customer support system, returning a summary of the upload operation.", + "category": "customer-support", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "Content of the table file as a base64-encoded string or raw CSV/Excel string. Required for processing the upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type of the uploaded file ('csv' or 'xlsx'). Determines parsing method. Default is 'csv'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "mapping", + "type": "object", + "description": "Optional mapping of file columns to customer support system fields, e.g., {\"TicketID\": \"ticket_id\", \"CustomerEmail\": \"email\"}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, existing records matching unique keys will be overwritten. Defaults to false, appending new records.", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, only validates the file and mapping without uploading data. Default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the upload result including success status, number of records processed, number of records added or updated, and details of any errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add or update bulk customer support data by uploading structured tables containing tickets, customer info, or FAQs. It is especially useful for automating data ingestion from external sources or updating large datasets through batch processing.", + "limitations": "This tool does not perform data cleansing beyond basic validation, nor does it analyze or interpret the contents beyond structural mapping. It is limited to structured table formats; unstructured data uploads are not supported.", + "examples": [ + "Upload a CSV file containing new customer tickets with columns mapped to internal ticket fields.", + "Validate an Excel FAQ data file before importing without applying changes.", + "Append customer contact details from a CSV, ensuring no overwriting of existing records." + ] + }, + "tags": [ + "customer-support", + "upload", + "table", + "csv", + "excel", + "data-integration", + "bulk-import" + ], + "examples": [ + { + "inputJson": "{\"fileContent\":\"TicketID,CustomerEmail,Issue\\n12345,john@example.com,Login problem\\n12346,lisa@example.com,Password reset\",\"fileType\":\"csv\",\"mapping\":{\"TicketID\":\"ticket_id\",\"CustomerEmail\":\"email\",\"Issue\":\"issue_description\"},\"overwriteExisting\":false,\"validateOnly\":false}", + "description": "Upload a CSV with new support tickets mapping columns to internal fields, appending records." + }, + { + "inputJson": "{\"fileContent\":\"Base64-encoded Excel content\",\"fileType\":\"xlsx\",\"mapping\":{\"ID\":\"ticket_id\",\"Email\":\"email\",\"Question\":\"faq_question\",\"Answer\":\"faq_answer\"},\"overwriteExisting\":true,\"validateOnly\":true}", + "description": "Validate (without importing) an Excel file containing FAQ entries with overwriting enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "customer-support.analyzeExpense", + "description": "Analyzes customer support expense data by processing detailed expense entries such as costs for support tools, personnel hours, and third-party services. Accepts an array of expense records with categories and amounts, performs aggregation, trend identification, and cost distribution analysis, and outputs a summary report highlighting major expense drivers, monthly trends, and potential cost-saving opportunities.", + "category": "customer-support", + "parameters": [ + { + "name": "expenseRecords", + "type": "array", + "description": "An array of expense entries, each including category, amount, date, and optionally subcategory or notes, representing costs related to customer support activities.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "An optional object specifying the start and end dates to filter expenses for analysis, in ISO date string format.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByCategory", + "type": "boolean", + "description": "Flag indicating whether to group and summarize expenses by their category for the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Determines if the tool should analyze expense trends over time (e.g., monthly changes).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report including total expenses, categorized cost breakdowns, trend data over the specified period if requested, and suggestions for cost optimization based on identified patterns." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand and report on costs associated with customer support operations, especially for budgeting, identifying costly areas, or tracking spending trends by category over time. It helps highlight where resources are used and potential savings.", + "limitations": "Cannot access external financial systems or automatically validate expense accuracy; depends entirely on input data quality. Does not provide predictive forecasting beyond basic trend analysis.", + "examples": [ + "Analyze all customer support expense records for the past quarter to summarize spending and trends.", + "Provide a cost breakdown by category without trend analysis for the current fiscal year.", + "Review expenses and highlight any categories with unusual spikes compared to previous months." + ] + }, + "tags": [ + "analysis", + "customer-support", + "expenses", + "cost-management", + "reporting", + "financial-analysis" + ], + "examples": [ + { + "inputJson": "{\"expenseRecords\":[{\"category\":\"Personnel\",\"amount\":15000,\"date\":\"2024-04-10\",\"subcategory\":\"Support Agents\"},{\"category\":\"Software\",\"amount\":2000,\"date\":\"2024-04-15\",\"subcategory\":\"Ticketing System\"},{\"category\":\"Outsourcing\",\"amount\":5000,\"date\":\"2024-04-20\",\"subcategory\":\"Call Center\"}],\"dateRange\":{\"start\":\"2024-04-01\",\"end\":\"2024-04-30\"},\"groupByCategory\":true,\"includeTrendAnalysis\":true}", + "description": "Analyze expenses for April 2024, grouped by category with trend analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "customer-support.downloadVideo", + "description": "This tool downloads a video from a specified URL, typically used to retrieve customer support tutorial or troubleshooting videos. It accepts the video URL and optional parameters to specify download quality and file format. Outputs the downloaded video's local file path and metadata such as file size and duration.", + "category": "customer-support", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "desiredQuality", + "type": "string", + "description": "Preferred video quality for download (e.g., '1080p', '720p'). If unavailable, downloads best available quality.", + "required": false, + "defaultValue": "720p" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Desired file format for the downloaded video (e.g., 'mp4', 'webm').", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "saveDirectory", + "type": "string", + "description": "Local directory path where the video will be saved.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to attempt downloading before aborting.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the local file path of the downloaded video, file size in bytes, video duration in seconds, and actual video quality downloaded." + }, + "aiAgent": { + "useCase": "Use this tool when a user requests to download instructional or walkthrough videos related to customer support issues. It enables retrieval of tutorial videos from URLs for offline access or internal review.", + "limitations": "Cannot download videos from URLs requiring authentication tokens not provided or those behind paywalls. May fail if desired quality is not available or if the URL is invalid or inaccessible.", + "examples": [ + "Download the troubleshooting video at https://example.com/videos/help123 in 720p mp4 format.", + "Retrieve the product setup tutorial video from URL https://support.example.com/video.mp4 and save it locally.", + "Get the customer onboarding video from https://cdn.example.com/onboarding.webm in webm format and highest possible quality." + ] + }, + "tags": [ + "download", + "video", + "customer-support", + "media", + "offline-access", + "tutorial" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/support/tutorial.mp4\",\"desiredQuality\":\"1080p\",\"fileFormat\":\"mp4\",\"saveDirectory\":\"/user/downloads\",\"timeoutSeconds\":120}", + "description": "Download a tutorial video in 1080p mp4 format to the user's downloads folder with a 2-minute timeout." + }, + { + "inputJson": "{\"videoUrl\":\"https://cdn.example.com/learning/help.webm\",\"fileFormat\":\"webm\"}", + "description": "Download a help video in default quality as a webm file, saving in default directory." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "customer-support.draftInvoice", + "description": "Generates a detailed invoice draft for a customer based on provided billing information, purchased items or services, pricing, taxes, and payment terms. Inputs include customer details, itemized list with quantities and prices, optional discounts, and tax rates. Outputs a formatted invoice draft suitable for review or sending.", + "category": "customer-support", + "parameters": [ + { + "name": "customerInfo", + "type": "object", + "description": "Customer details including name, address, contact information required for the invoice header and billing.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of items or services purchased, each with description, quantity, unit price, and optional SKU or service code.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a decimal (e.g., 0.07 for 7%). Used to calculate taxes on the subtotal.", + "required": true, + "defaultValue": "0" + }, + { + "name": "discountAmount", + "type": "number", + "description": "Optional fixed discount amount to subtract from subtotal before taxes. Default is 0 (no discount).", + "required": false, + "defaultValue": "0" + }, + { + "name": "discountPercent", + "type": "number", + "description": "Optional percentage discount (0-100) applied to subtotal before taxes. Ignored if discountAmount is provided.", + "required": false, + "defaultValue": "0" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Payment terms such as 'Net 30', 'Due on receipt', or custom instructions to appear on the invoice.", + "required": false, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Invoice issue date in ISO format (YYYY-MM-DD). Defaults to today if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Due date for the invoice payment in ISO format (YYYY-MM-DD). Optional, can be inferred from paymentTerms.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Invoice draft object including invoice number (if generated), customer info, item details with totals, taxes, discounts, grand total, payment terms, and formatted date fields." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a clear, detailed invoice draft for customers to review or for records, based on transactional data including purchased items, pricing, taxes, and terms. Useful in customer support contexts to automate invoice generation from order or service details.", + "limitations": "Does not send invoices or handle payment gateway integration. Does not validate tax rules for jurisdictions. Does not generate PDF or formatted documents beyond structured data.", + "examples": [ + "Create an invoice draft for customer Acme Corp with 3 products, 7% tax, and Net 30 payment terms.", + "Draft an invoice for John Doe for consultation services with a 15% discount and payment due on receipt.", + "Generate invoice draft for customer including item list, tax, and no discounts, invoice dated today." + ] + }, + "tags": [ + "invoice", + "drafting", + "customer support", + "billing", + "financial documents", + "automation" + ], + "examples": [ + { + "inputJson": "{\"customerInfo\":{\"name\":\"Acme Corp\",\"address\":\"123 Business Rd, Suite 400, Metropolis, NY 10001\",\"email\":\"billing@acmecorp.com\"},\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":9.99},{\"description\":\"Widget B\",\"quantity\":5,\"unitPrice\":19.99}],\"taxRate\":0.07,\"discountPercent\":0,\"paymentTerms\":\"Net 30\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-07-01\"}", + "description": "Invoice draft for Acme Corp buying 2 types of widgets, with 7% tax and Net 30 terms." + }, + { + "inputJson": "{\"customerInfo\":{\"name\":\"John Doe\",\"address\":\"789 Residential St, Apt 12, Smalltown, TX 75001\",\"email\":\"john.doe@example.com\"},\"items\":[{\"description\":\"Consultation\",\"quantity\":2,\"unitPrice\":150}],\"taxRate\":0,\"discountPercent\":15,\"paymentTerms\":\"Due on receipt\"}", + "description": "Invoice draft for John Doe for 2 consultation sessions with a 15% discount and no tax, due on receipt." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "customer-support.formatComponent", + "description": "Formats a customer support UI component code snippet (e.g., React, Vue) by applying consistent styling, indentation, and optionally adding default accessibility attributes. Accepts raw component code string input and returns a prettified, standardized component code string output ready for integration in help desk applications.", + "category": "customer-support", + "parameters": [ + { + "name": "componentCode", + "type": "string", + "description": "Raw source code of the UI component to format, typically in React or Vue syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "Specifies the UI framework of the component code (e.g., 'react', 'vue'). Helps apply framework-specific formatting rules.", + "required": true, + "defaultValue": "react" + }, + { + "name": "addAccessibilityAttributes", + "type": "boolean", + "description": "Whether to add default accessibility attributes (like aria-labels) if missing for improved usability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for code indentation. Defaults to 2 spaces for readability.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted component code string under 'formattedCode' and a summary message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent retrieves or generates customer support UI components and needs to ensure consistent code style and accessibility compliance before integrating or presenting the code to developers. It standardizes spacing, formatting, and optionally boosts accessibility via attributes to enhance maintainability and usability.", + "limitations": "This tool does not validate component logic correctness or test runtime behavior. It supports only basic React and Vue syntax and does not transform complex custom syntax or styles. It cannot replace specialized linting or testing tools.", + "examples": [ + "Format a raw React button component code with default indentation.", + "Format a Vue.js ticket viewer component code adding accessibility attributes.", + "Normalize indentation and style for multiple customer support components before rendering on a help desk portal." + ] + }, + "tags": [ + "formatting", + "customer-support", + "UI-component", + "code-style", + "accessibility", + "React", + "Vue" + ], + "examples": [ + { + "inputJson": "{\"componentCode\":\"function Ticket() {return

Ticket

}\",\"framework\":\"react\",\"addAccessibilityAttributes\":false,\"indentationSpaces\":2}", + "description": "Format a simple React component with default indentation and no accessibility additions." + }, + { + "inputJson": "{\"componentCode\":\"\",\"framework\":\"vue\",\"addAccessibilityAttributes\":true,\"indentationSpaces\":4}", + "description": "Format a Vue template component, adding accessibility attributes with 4 spaces indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "customer-support.draftSummary", + "description": "Generates a concise, clear summary of customer support interactions from provided conversation logs or ticket details. Accepts transcripts or ticket data as input, processes key points such as issue description, resolution steps, and customer sentiment, then outputs a structured summary for internal review or reporting.", + "category": "customer-support", + "parameters": [ + { + "name": "conversationLog", + "type": "string", + "description": "Raw text transcript or log of the customer support interaction", + "required": true, + "defaultValue": "" + }, + { + "name": "ticketDetails", + "type": "object", + "description": "Structured details of the support ticket, including fields like issue type, agent notes, and timestamps", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to analyze and include customer sentiment in the summary", + "required": false, + "defaultValue": "false" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired length of the summary in sentences, balancing detail and conciseness", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text, key issue tags, and optionally sentiment score" + }, + "aiAgent": { + "useCase": "Use this tool when needing a quick and comprehensive summary of lengthy customer support conversations or tickets, especially to understand the main issues, resolution status, and customer sentiment without reading full logs. Useful for reporting, quality assurance, and knowledge base updates.", + "limitations": "Cannot replace human judgment for complex cases or nuanced customer emotions; quality depends on input text quality and completeness.", + "examples": [ + "Summarize this entire customer chat transcript highlighting main problem and resolution.", + "Draft a summary from the ticket data including sentiment to flag any unhappy customers.", + "Provide a 3-sentence summary for the recent support conversation logs." + ] + }, + "tags": [ + "summary", + "customer-support", + "conversation", + "ticket", + "sentiment", + "reporting", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"conversationLog\":\"Customer reported their internet was down for two days. Agent guided them through router reset and escalated to network team. Issue resolved in 24 hours.\",\"includeSentimentAnalysis\":true,\"summaryLength\":4}", + "description": "Summarize a customer conversation including sentiment and concise length" + }, + { + "inputJson": "{\"ticketDetails\":{\"issueType\":\"billing\",\"agentNotes\":\"Explained invoice breakdown and applied credit.\",\"timestamps\":{\"opened\":\"2024-05-20T09:00:00Z\",\"closed\":\"2024-05-20T10:15:00Z\"}},\"summaryLength\":3}", + "description": "Generate summary from structured ticket focusing on billing issue details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "customer-support.composeComment", + "description": "This tool generates a professional, context-aware customer support comment based on provided customer issue details, previous conversation history, and desired tone. It accepts inputs to tailor responses and outputs a coherent comment ready for posting in help desks or support tickets.", + "category": "customer-support", + "parameters": [ + { + "name": "customerIssue", + "type": "string", + "description": "A description of the customer's problem or inquiry to address in the comment.", + "required": true, + "defaultValue": "" + }, + { + "name": "previousComments", + "type": "array", + "description": "List of prior comments or messages in the conversation as context for continuity and relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "desiredTone", + "type": "string", + "description": "Tone for the comment, e.g., empathetic, formal, casual, neutral to adapt communication style.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "includeSolution", + "type": "boolean", + "description": "Whether to include a proposed solution or troubleshooting steps within the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the comment's language output.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed comment text ready for use in customer support platforms." + }, + "aiAgent": { + "useCase": "Use this tool when responding to customer inquiries requiring a clear, polite, and helpful comment that can adapt based on conversation history and tone preferences. It helps automate composing replies in support tickets.", + "limitations": "The tool cannot replace expert technical troubleshooting and may not capture all specific company policies. It does not send the comment, only composes text.", + "examples": [ + "\"Compose an empathetic comment addressing a delivery delay issue.\"", + "\"Generate a formal reply including troubleshooting guidance for a login problem.\"", + "\"Create a casual, friendly response thanking the customer for feedback.\"" + ] + }, + "tags": [ + "customer-support", + "compose", + "comment", + "help-desk", + "communication", + "response-generation", + "ticketing" + ], + "examples": [ + { + "inputJson": "{\"customerIssue\":\"Customer reports the package delivery is delayed by 3 days.\",\"previousComments\":[\"Customer: Where is my package? It was supposed to arrive yesterday.\"],\"desiredTone\":\"empathetic\",\"includeSolution\":true,\"language\":\"en\"}", + "description": "Generate an empathetic comment addressing a delayed package with a possible next step." + }, + { + "inputJson": "{\"customerIssue\":\"User cannot login to their account despite password reset.\",\"previousComments\":[],\"desiredTone\":\"formal\",\"includeSolution\":true,\"language\":\"en\"}", + "description": "Formal comment with troubleshooting suggestions for login issues without prior conversation context." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "customer-support.buildWorkflow", + "description": "This tool assists in creating custom customer support workflows by accepting key steps, conditions, and automated actions as input. It processes this data to generate a structured workflow configuration that can be deployed in customer service platforms to automate ticket handling, escalation, and resolution paths.", + "category": "customer-support", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The unique name identifier for the customer support workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered list of steps defining the workflow, where each step includes actions, conditions, and responsible agent or system.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "An array of event types or conditions that trigger the start of the workflow, such as new ticket creation or customer replies.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "escalationRules", + "type": "object", + "description": "Defines rules and conditions under which a ticket or case should be escalated within the workflow.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "notifications", + "type": "object", + "description": "Specifications of notifications (email, SMS, system alerts) to be sent during the workflow at designated steps.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "autoActions", + "type": "array", + "description": "List of automated actions to be performed during workflow execution, such as assigning tickets, sending responses, or updating statuses.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the complete customer support workflow configuration including all steps, triggers, escalation rules, notifications, and automated actions, ready for integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to design or update complex customer support workflows for automated ticket processing. It is ideal when workflows must incorporate conditional logic, trigger-based actions, escalations, and notifications to streamline support operations.", + "limitations": "This tool does not execute or deploy the workflow; it only generates the structured configuration. It requires downstream systems for actual workflow execution and monitoring.", + "examples": [ + "Create a workflow named 'Support Triage' that routes high priority tickets to senior support agents and escalates if unresolved for 24 hours.", + "Build a workflow triggered on new customer inquiries that sends automated acknowledgment and assigns tickets based on product category.", + "Design a multi-step resolution workflow with notification alerts on each step, and automatic ticket closure after customer confirmation." + ] + }, + "tags": [ + "customer support", + "workflow", + "automation", + "ticketing", + "help desk", + "escalation", + "notifications", + "process design" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"Priority Escalation\",\"steps\":[{\"stepName\":\"Initial Triage\",\"actions\":[\"assign to 1st level support\"],\"conditions\":[\"ticket priority == high\"]},{\"stepName\":\"Escalation\",\"actions\":[\"notify manager\",\"assign to 2nd level support\"],\"conditions\":[\"time since ticket opened > 24h\",\"status != resolved\"]}],\"triggers\":[\"new ticket created\"],\"escalationRules\":{\"maxTimeToResolve\":\"24h\"},\"notifications\":{\"onEscalation\":[\"email manager\"]},\"autoActions\":[\"send acknowledgment email\"]}", + "description": "Defines a workflow named 'Priority Escalation' that triages high priority tickets, escalates unresolved cases after 24 hours, notifies managers, and automates acknowledgments." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "customer-support.generateConversion", + "description": "This tool analyzes customer support interaction data to calculate conversion metrics, such as the percentage of interactions that lead to successful sales or desired outcomes. It accepts raw or aggregated interaction logs and optional filters, processes them to extract conversion events, and outputs conversion rates and summary statistics for different segments or time periods.", + "category": "customer-support", + "parameters": [ + { + "name": "interactionData", + "type": "array", + "description": "Array of customer interaction records, each containing details like interactionId, outcome, timestamp, and associated metadata required to assess conversion.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionCriteria", + "type": "object", + "description": "Definition of what counts as a conversion event within the interaction data, such as specific outcomes or tags indicating success.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional filter specifying the start and end timestamps to limit the analysis to a specific time period.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional field name in the interaction records to group conversion metrics by, such as 'agentId' or 'region'.", + "required": false, + "defaultValue": "" + }, + { + "name": "minimumInteractions", + "type": "number", + "description": "Minimum number of interactions required in a group to include it in the output, to avoid skewed metrics from small samples.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall conversion rate, total interactions analyzed, total conversions detected, and optionally conversion rates segmented by the 'groupBy' parameter." + }, + "aiAgent": { + "useCase": "Use this tool when you need to measure the effectiveness of customer support engagements in driving conversions, such as sales or successful resolutions, based on interaction logs. It helps quantify performance and highlight areas for improvement or success segments.", + "limitations": "The tool relies on the provided interaction data and conversion criteria; it does not infer conversions beyond explicit defined outcomes. It cannot analyze interactions without sufficient metadata or timestamps.", + "examples": [ + "Calculate overall conversion rate for interactions in last month using defined success outcomes.", + "Segment conversion metrics by support agent to identify top performers.", + "Filter conversion analysis to interactions related to a specific product or campaign." + ] + }, + "tags": [ + "customer-support", + "analytics", + "conversion", + "metrics", + "interaction-data", + "performance", + "segmentation" + ], + "examples": [ + { + "inputJson": "{\"interactionData\":[{\"interactionId\":\"1\",\"outcome\":\"sale\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"agentId\":\"A1\"},{\"interactionId\":\"2\",\"outcome\":\"no-sale\",\"timestamp\":\"2024-05-01T11:00:00Z\",\"agentId\":\"A1\"},{\"interactionId\":\"3\",\"outcome\":\"sale\",\"timestamp\":\"2024-05-02T09:30:00Z\",\"agentId\":\"A2\"}],\"conversionCriteria\":{\"successOutcomes\":[\"sale\"]},\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"groupBy\":\"agentId\",\"minimumInteractions\":1}", + "description": "Calculate conversion rates for May 2024 grouped by support agent with sales considered conversions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "customer-support.createAnomaly", + "description": "This tool analyzes customer support metrics to detect anomalies in key performance indicators such as ticket volume, average response time, or customer satisfaction scores. It accepts historical support data and threshold parameters, applies statistical or machine learning methods to identify unusual patterns, and returns detailed anomaly reports highlighting the detected issues.", + "category": "customer-support", + "parameters": [ + { + "name": "metric", + "type": "string", + "description": "The customer support metric to analyze for anomalies, e.g., 'ticketVolume', 'responseTime', or 'customerSatisfaction'.", + "required": true, + "defaultValue": "" + }, + { + "name": "historicalData", + "type": "array", + "description": "An array of historical metric records, each containing a timestamp and corresponding value, used for anomaly detection.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionMethod", + "type": "string", + "description": "The anomaly detection algorithm to use, e.g., 'statistical', 'machineLearning', or 'thresholdBased'.", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity level for anomaly detection on a 0 to 1 scale. Higher values detect more anomalies but increase false positives.", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "timeWindow", + "type": "string", + "description": "The time range for which to perform the anomaly detection, formatted as an ISO 8601 interval or keywords like 'last7days'.", + "required": false, + "defaultValue": "last30days" + }, + { + "name": "notifyStakeholders", + "type": "boolean", + "description": "Whether to prepare notifications or alerts for stakeholders about detected anomalies.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the list of anomalies detected, each with timestamp, value, anomaly score, and description, plus a summary report of overall detection results." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring customer support system metrics to proactively identify unexpected changes or issues, such as spikes in ticket volume or drops in satisfaction scores, aiding timely investigation and resolution.", + "limitations": "This tool does not provide root cause analysis or automatic fixes; it requires representative data and may produce false positives or negatives depending on parameter settings and data quality.", + "examples": [ + "Detect anomalies in average customer response times over the last month.", + "Identify unusual spikes in ticket volume for technical support during the past week.", + "Monitor changes in customer satisfaction scores and alert if significant drops occur." + ] + }, + "tags": [ + "customer-support", + "anomaly-detection", + "analytics", + "monitoring", + "performance", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"metric\":\"ticketVolume\",\"historicalData\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"value\":120},{\"timestamp\":\"2024-05-02T00:00:00Z\",\"value\":118},{\"timestamp\":\"2024-05-03T00:00:00Z\",\"value\":350},{\"timestamp\":\"2024-05-04T00:00:00Z\",\"value\":125}],\"detectionMethod\":\"thresholdBased\",\"sensitivity\":0.9,\"timeWindow\":\"last7days\",\"notifyStakeholders\":true}", + "description": "Detects a sudden spike in daily ticket volume within the last week and prepares notifications." + }, + { + "inputJson": "{\"metric\":\"customerSatisfaction\",\"historicalData\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"value\":4.5},{\"timestamp\":\"2024-04-02T00:00:00Z\",\"value\":4.6},{\"timestamp\":\"2024-04-03T00:00:00Z\",\"value\":3.8},{\"timestamp\":\"2024-04-04T00:00:00Z\",\"value\":4.4}],\"detectionMethod\":\"statistical\",\"sensitivity\":0.7,\"timeWindow\":\"last30days\",\"notifyStakeholders\":false}", + "description": "Analyzes customer satisfaction score deviations over the past month without sending alerts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "customer-support.generateTemplate", + "description": "Generates customizable customer support response templates based on input parameters such as issue type, tone, and target audience. Accepts structured inputs to create professional, clear, and context-appropriate template texts suitable for common support scenarios. Returns formatted template text ready for integration or direct use.", + "category": "customer-support", + "parameters": [ + { + "name": "issueType", + "type": "string", + "description": "Type of customer issue to address, e.g., 'refund', 'technical issue', or 'account query'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the template such as 'formal', 'friendly', 'empathetic', or 'concise'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Target audience for the template, e.g., 'end user', 'business client', or 'internal team'.", + "required": false, + "defaultValue": "end user" + }, + { + "name": "includeGreeting", + "type": "boolean", + "description": "Whether to include a greeting line at the beginning of the template.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeClosing", + "type": "boolean", + "description": "Whether to include a closing line or sign-off in the template.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the template output, e.g., 'en' for English, 'es' for Spanish.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template text as a string under the key 'templateText'." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to generate standardized yet customizable customer support reply templates tailored to specific issue types and communication tones. It is helpful for automating template generation to speed responses or to create drafts for human agents.", + "limitations": "The tool does not handle complex conversational flows or adapt to ongoing dialogues. It generates static template text only and does not personalize beyond provided parameter options.", + "examples": [ + "Generate a friendly refund request template for end users including greeting and closing.", + "Create a concise technical issue response template in Spanish without greeting.", + "Produce a formal complaint response template for business clients with all sections included." + ] + }, + "tags": [ + "customer support", + "template generation", + "response automation", + "help desk", + "customer service" + ], + "examples": [ + { + "inputJson": "{\"issueType\":\"refund\",\"tone\":\"friendly\",\"targetAudience\":\"end user\",\"includeGreeting\":true,\"includeClosing\":true,\"language\":\"en\"}", + "description": "Friendly refund response template for end users including greeting and closing." + }, + { + "inputJson": "{\"issueType\":\"technical issue\",\"tone\":\"concise\",\"targetAudience\":\"end user\",\"includeGreeting\":false,\"includeClosing\":false,\"language\":\"es\"}", + "description": "Concise technical issue template in Spanish without greeting or closing." + }, + { + "inputJson": "{\"issueType\":\"complaint\",\"tone\":\"formal\",\"targetAudience\":\"business client\",\"includeGreeting\":true,\"includeClosing\":true,\"language\":\"en\"}", + "description": "Formal complaint response template for business clients with greeting and closing included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "customer-support.generateReadme", + "description": "Generates a comprehensive README document for a customer support platform or help desk software based on provided configuration and feature descriptions. Accepts structured input describing features, setup instructions, and usage examples, then outputs a well-formatted markdown README file.", + "category": "customer-support", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the customer support product or platform for the README title and references.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "A brief description of the product's purpose and capabilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "A list of key features or functionalities to highlight in the README.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step installation or setup instructions to be included in the README.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "Examples illustrating how to use the product or key functions, formatted as strings or markdown.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contactSupportInfo", + "type": "string", + "description": "Contact information or links for customer support or further help.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated README content as a markdown-formatted string under the 'readmeMarkdown' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically create clear, structured README documentation for customer support systems based on inputted feature descriptions, installation steps, and usage scenarios. It helps streamline documentation tasks for support software deployment or user onboarding.", + "limitations": "This tool cannot generate README content without structured input. It relies on accurate and sufficient input data to produce meaningful documentation and does not replace detailed user manuals or dynamic help systems.", + "examples": [ + "Generate a README for a helpdesk software including installation steps and key features.", + "Create documentation for a customer support chatbot plugin with usage examples.", + "Produce a README highlighting the integration options and contact support info for a ticketing platform." + ] + }, + "tags": [ + "documentation", + "customer-support", + "readme-generation", + "helpdesk", + "automation", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"HelpMaster Pro\",\"productDescription\":\"A scalable helpdesk solution to manage customer tickets efficiently.\",\"features\":[\"Ticket tracking\",\"Multi-channel support\",\"Analytics dashboard\"],\"installationInstructions\":\"1. Download the installer\\n2. Run setup wizard\\n3. Configure your email settings\",\"usageExamples\":[\"Create a new ticket via the dashboard\",\"Assign tickets to agents\",\"Generate weekly reports\"],\"contactSupportInfo\":\"support@helpmasterpro.com\"}", + "description": "Generate a README for HelpMaster Pro including product overview, features, installation, usage, and support contact." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "customer-support.generateBlogPost", + "description": "Generates a customer support blog post draft based on provided topics, target audience specifications, and desired tone. Accepts key points or FAQs as input, processes them to create an informative and engaging blog post that addresses common support issues or product features, and outputs a formatted textual draft ready for review and publishing.", + "category": "customer-support", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post to generate, summarizing the main topic or focus.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of main points or FAQs to cover in the blog post to guide content generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers (e.g., customers, end users, technical support staff) to tailor tone and detail level.", + "required": false, + "defaultValue": "general customers" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the blog post, such as friendly, professional, casual, or formal.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the blog post output (e.g., en, es) to generate content in the preferred language.", + "required": false, + "defaultValue": "en" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate desired length of the blog post in words to guide content length.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post text as a string, including title and body content formatted in markdown or plain text." + }, + "aiAgent": { + "useCase": "This tool is used when an agent needs to create informative and customer-focused blog content efficiently, based on support topics or frequently asked questions. It helps generate drafts for knowledge sharing, product updates, or addressing common support issues to improve customer education and reduce inquiry volume.", + "limitations": "The tool generates a draft and does not replace human editing or domain expert review. It may not capture very detailed technical nuances or specific company policy content without sufficient input data.", + "examples": [ + "Generate a blog post about recent updates to our product's security features for end users.", + "Create a support blog explaining how to troubleshoot common connectivity issues in plain language.", + "Draft a professional blog post outlining the top five benefits of our customer support portal to encourage usage." + ] + }, + "tags": [ + "customer-support", + "content-generation", + "blog-post", + "knowledge-base", + "customer-education", + "support-content" + ], + "examples": [ + { + "inputJson": "{\"title\":\"How to Reset Your Password\",\"keyPoints\":[\"Step-by-step instructions to reset password\",\"Common issues during password reset\",\"Tips for creating a strong password\"],\"targetAudience\":\"general customers\",\"tone\":\"friendly\",\"language\":\"en\",\"wordCount\":450}", + "description": "Generate a helpful and friendly blog post explaining the password reset process for customers." + }, + { + "inputJson": "{\"title\":\"Top 3 Ways to Use Our Support Portal\",\"keyPoints\":[\"Accessing live chat\",\"Submitting support tickets\",\"Finding FAQs quickly\"],\"targetAudience\":\"customers\",\"tone\":\"professional\",\"language\":\"en\",\"wordCount\":500}", + "description": "Create a professional post educating customers on the benefits and features of the support portal." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "customer-support.createConversion", + "description": "Creates a conversion event record based on customer support interactions, tracking the event type, timestamp, customer ID, and optional metadata. Accepts inputs to associate support activities with conversion analytics, processes and validates the data, and outputs a confirmation with conversion event ID and status.", + "category": "customer-support", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier of the customer involved in the conversion event.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of the conversion event (e.g., 'purchase', 'subscription', 'issue_resolved').", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp indicating when the conversion occurred.", + "required": false, + "defaultValue": "" + }, + { + "name": "supportAgentId", + "type": "string", + "description": "Identifier of the support agent associated with this conversion event, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data related to the conversion event, such as campaign info or session details.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing conversionEventId, status message, and optionally stored event data summary." + }, + "aiAgent": { + "useCase": "Use this tool when a customer support interaction results in a measurable conversion event like a purchase or issue resolution that impacts analytics. It helps link support activities to business outcomes by logging events with relevant identifiers and metadata for tracking and reporting.", + "limitations": "Does not perform conversion analysis or prediction. It only records events. It requires valid customer and event data to function correctly.", + "examples": [ + "Create a conversion event when a customer's support case leads to a subscription purchase.", + "Log an issue_resolved event after a successful troubleshooting session with a customer.", + "Record a conversion event with additional metadata about the campaign that influenced it." + ] + }, + "tags": [ + "customer-support", + "conversion", + "analytics", + "event-logging", + "support-agent", + "customer-id" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"cust123\",\"eventType\":\"purchase\",\"timestamp\":\"2024-06-01T15:30:00Z\",\"supportAgentId\":\"agent007\",\"metadata\":{\"campaign\":\"spring_sale\"}}", + "description": "Record a purchase conversion event linked to a specific support agent and promotional campaign." + }, + { + "inputJson": "{\"customerId\":\"cust456\",\"eventType\":\"issue_resolved\",\"timestamp\":\"2024-06-02T11:00:00Z\"}", + "description": "Log an issue resolved event for a customer without specifying the support agent or extra metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "customer-support.createCache", + "description": "Creates and configures an in-memory or distributed cache to optimize customer support data retrieval. Accepts cache settings like type, expiration, and max size, and returns cache instance information for integration with support systems.", + "category": "customer-support", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create: 'in-memory' or 'distributed'", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Time in seconds before a cache entry expires; 0 means no expiration", + "required": false, + "defaultValue": "3600" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of items to store in the cache; 0 means unlimited", + "required": false, + "defaultValue": "1000" + }, + { + "name": "evictionPolicy", + "type": "string", + "description": "Policy used to evict items when cache is full: 'LRU', 'FIFO', or 'LFU'", + "required": false, + "defaultValue": "LRU" + }, + { + "name": "clusterNodes", + "type": "array", + "description": "List of node addresses for distributed cache, required if cacheType is 'distributed'", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableSerialization", + "type": "boolean", + "description": "Enable serialization of cached objects for distributed caches", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Information about the created cache including cache ID, type, configuration parameters, and status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to set up a caching layer to improve performance of customer support data retrieval, such as frequently accessed tickets or user profiles, reducing response time and backend load. Applicable in building or scaling help desk infrastructure.", + "limitations": "This tool does not handle actual caching of data items after creation and configuration; it only sets up the cache infrastructure. It does not support automatic data synchronization or replication beyond basic distributed cache clustering.", + "examples": [ + "Create an in-memory cache with 10-minute expiration for ticket data", + "Set up a distributed cache across three nodes with 5000 max entries and LFU eviction", + "Create a no-expiration, unlimited size cache with FIFO eviction for user session data" + ] + }, + "tags": [ + "customer-support", + "cache", + "infrastructure", + "performance", + "help-desk" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"in-memory\",\"expirationSeconds\":600,\"maxSize\":5000,\"evictionPolicy\":\"LFU\",\"enableSerialization\":true}", + "description": "Create an in-memory cache with a 10-minute expiry, max size 5000 entries, using least-frequently-used eviction." + }, + { + "inputJson": "{\"cacheType\":\"distributed\",\"clusterNodes\":[\"10.0.0.1:6379\",\"10.0.0.2:6379\"],\"maxSize\":10000,\"evictionPolicy\":\"LRU\"}", + "description": "Set up a distributed cache across two cluster nodes with max size 10,000 items using LRU eviction." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "customer-support.createVulnerability", + "description": "This tool enables customer support agents or systems to report and log a newly discovered security vulnerability originating from customer interactions or product usage. It accepts details such as vulnerability title, description, severity level, affected components, and reporter information, then creates a structured vulnerability record for tracking and remediation by the security team.", + "category": "customer-support", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The concise title or summary of the vulnerability.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the vulnerability including steps to reproduce, impact, and context.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the vulnerability, e.g., low, medium, high, critical.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of product components or features affected by the vulnerability.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reporterEmail", + "type": "string", + "description": "Email address of the person reporting the vulnerability for follow-up.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateDiscovered", + "type": "string", + "description": "Date when the vulnerability was discovered (ISO 8601 format).", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of URLs or references to files (e.g., screenshots, logs) supporting the report.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique ID of the created vulnerability record, confirmation status, and a summary of the logged details." + }, + "aiAgent": { + "useCase": "Use this tool when customer support encounters or is informed about a security vulnerability linked to the product, customer environment, or service interactions, and needs to create a formal vulnerability report for triage and remediation. It helps ensure vulnerabilities from customer interactions are systematically captured and tracked.", + "limitations": "This tool does not perform vulnerability analysis or assessment automatically; it only records information provided. It requires accurate user input to create valid reports. It is not intended for real-time scanning or detection.", + "examples": [ + "Create a new vulnerability report based on a customer's detailed security issue submission.", + "Log a newly found security bug affecting a product feature reported by customer support.", + "Record vulnerability information including severity and affected components after a customer submits a security concern." + ] + }, + "tags": [ + "customer-support", + "security", + "vulnerability-management", + "reporting", + "logging" + ], + "examples": [ + { + "inputJson": "{\"title\":\"SQL Injection in Login API\",\"description\":\"The login API does not sanitize input allowing SQL injection.\",\"severity\":\"high\",\"affectedComponents\":[\"Login API\",\"Authentication Module\"],\"reporterEmail\":\"security@customer.com\",\"dateDiscovered\":\"2024-05-01T14:30:00Z\",\"attachments\":[\"https://example.com/screenshot1.png\"]}", + "description": "Reporting a high severity SQL injection vulnerability discovered through customer report." + }, + { + "inputJson": "{\"title\":\"Cross-Site Scripting (XSS) in Profile Page\",\"description\":\"User profiles allow injecting scripts which execute on page load.\",\"severity\":\"medium\",\"affectedComponents\":[\"User Profile\"],\"reporterEmail\":\"support@company.com\"}", + "description": "Logging an XSS vulnerability found and reported by customer support team with partial details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "customer-support.createChannel", + "description": "Creates a new communication channel within the customer support platform to facilitate interactions between support agents and customers. Accepts channel name, description, type (such as chat, email, phone), and optional settings like priority and active status. Returns a detailed channel object including a unique identifier and creation timestamp.", + "category": "customer-support", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "The name of the new communication channel to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelDescription", + "type": "string", + "description": "A brief description or purpose of the communication channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of the channel such as 'chat', 'email', 'phone', or 'socialMedia'.", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "number", + "description": "Priority level of this channel where a lower number means higher priority (e.g., 1 is highest).", + "required": false, + "defaultValue": "3" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Indicates whether the channel is active and available for use.", + "required": false, + "defaultValue": "true" + }, + { + "name": "allowedUserRoles", + "type": "array", + "description": "List of user roles permitted to access or manage this channel (e.g., ['agent', 'supervisor']).", + "required": false, + "defaultValue": "[\"agent\"]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the newly created channel including its ID, name, type, description, priority, active status, allowed roles, and timestamps for creation." + }, + "aiAgent": { + "useCase": "Use this tool when setting up new communication pathways for customer support teams, such as creating a new chat channel for live support, or adding an email channel for service requests. Ideal for automating channel setup based on organizational needs or campaign requirements.", + "limitations": "This tool does not handle message sending or live communication itself; it only creates channel configurations. It cannot update or delete existing channels; those require separate tools.", + "examples": [ + "Create a new live chat channel named 'Website Chat' with high priority for agents.", + "Set up an email support channel for 'Technical Support' with default priority and restricted to supervisors.", + "Add a phone support line channel that is initially inactive awaiting configuration." + ] + }, + "tags": [ + "customer-support", + "channel", + "create", + "communication", + "support", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"Website Chat\",\"channelDescription\":\"Live chat support for customers on the website\",\"channelType\":\"chat\",\"priorityLevel\":1,\"isActive\":true,\"allowedUserRoles\":[\"agent\",\"supervisor\"]}", + "description": "Create a high priority active live chat channel accessible to agents and supervisors." + }, + { + "inputJson": "{\"channelName\":\"Technical Email\",\"channelType\":\"email\",\"isActive\":true}", + "description": "Create a default priority email channel for technical support that is active." + }, + { + "inputJson": "{\"channelName\":\"Phone Line\",\"channelType\":\"phone\",\"priorityLevel\":2,\"isActive\":false}", + "description": "Create a phone channel that is initially inactive, possibly pending setup." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "customer-support.createCertificate", + "description": "Generates a digital certificate for customer support agents or customers, affirming identity verification or completion of specific support training. Accepts inputs like recipient name, certificate type, issue date, and optional expiration date, then produces a digitally signed certificate in PDF format.", + "category": "customer-support", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Full name of the certificate recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "certificateType", + "type": "string", + "description": "Type of certificate to create, e.g., 'Identity Verification', 'Training Completion'.", + "required": true, + "defaultValue": "" + }, + { + "name": "issueDate", + "type": "string", + "description": "Date when the certificate is issued in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationDate", + "type": "string", + "description": "Optional expiration date of the certificate in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "issuerName", + "type": "string", + "description": "Name of the entity issuing the certificate, e.g., 'Customer Support Team'.", + "required": true, + "defaultValue": "" + }, + { + "name": "signatureKey", + "type": "string", + "description": "Private key or token used for digitally signing the certificate to ensure authenticity.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the certificate ID, recipient name, certificate type, issue and expiration dates, and a base64-encoded PDF string representing the digitally signed certificate." + }, + "aiAgent": { + "useCase": "Use this tool when a digital certificate needs to be issued for customer support-related purposes such as verifying a customer's identity or certifying an agent's training completion. It automates certificate generation, ensuring authenticity via digital signatures to reduce manual workload and improve trust.", + "limitations": "This tool cannot verify the provided input data's authenticity before certificate creation. It does not send the certificate to recipients; distribution must be handled separately. It assumes valid digital signature keys are provided; it does not manage key generation or storage.", + "examples": [ + "Create a certificate for a customer who passed identity verification.", + "Generate a training completion certificate for a support agent with an expiration date.", + "Issue a certificate of appreciation without expiration date for a VIP customer." + ] + }, + "tags": [ + "certificate", + "customer-support", + "digital-signature", + "identity-verification", + "training", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Jane Doe\",\"certificateType\":\"Identity Verification\",\"issueDate\":\"2024-05-01\",\"expirationDate\":\"2026-05-01\",\"issuerName\":\"Customer Support Team\",\"signatureKey\":\"privateKeyExample123\"}", + "description": "Generate an identity verification certificate for Jane Doe valid for two years." + }, + { + "inputJson": "{\"recipientName\":\"John Smith\",\"certificateType\":\"Training Completion\",\"issueDate\":\"2024-06-15\",\"expirationDate\":\"\",\"issuerName\":\"Customer Support Team\",\"signatureKey\":\"privateKeyExample123\"}", + "description": "Create a training completion certificate for John Smith with no expiration date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "customer-support.createGraph", + "description": "Generates visual graphs to represent customer support metrics such as ticket volumes, response times, and customer satisfaction over customizable time periods. Accepts time series data or aggregated stats as input, processes them to create line, bar, pie or scatter charts, and outputs graph data and metadata suited for rendering on dashboards or reports.", + "category": "customer-support", + "parameters": [ + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate: line, bar, pie, or scatter.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "array", + "description": "An array of data points or aggregated metrics, each item as an object with keys matching the metric and timestamp or category.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title for the graph to be displayed on dashboards or reports.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X-axis representing time or categories.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y-axis representing metric values.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object specifying start and end date strings (ISO 8601) to filter data before graphing.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional metric key to group data points by for aggregation before graphing.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing graph metadata (type, title, axis labels), processed data points formatted for rendering, and configuration details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visualize customer support performance indicators, like ticket counts over days or average resolution times, to provide insights or reports for stakeholders. It helps to quickly turn raw or aggregated support data into easily interpretable graphical formats.", + "limitations": "This tool does not itself render graphical images or charts; it outputs data and metadata for graph rendering. It requires preprocessed and structured input data; it does not collect raw data from systems.", + "examples": [ + "Create a bar graph showing daily ticket volumes for the past month.", + "Generate a pie chart illustrating the distribution of ticket categories.", + "Produce a line graph tracking average customer satisfaction scores over a quarter." + ] + }, + "tags": [ + "visualization", + "customer-support", + "metrics", + "graph", + "reporting", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"graphType\":\"bar\",\"data\":[{\"date\":\"2024-05-01\",\"tickets\":120},{\"date\":\"2024-05-02\",\"tickets\":95},{\"date\":\"2024-05-03\",\"tickets\":130}],\"title\":\"Daily Ticket Volume\",\"xAxisLabel\":\"Date\",\"yAxisLabel\":\"Tickets\"}", + "description": "Bar graph of daily ticket volumes for a specified 3-day period." + }, + { + "inputJson": "{\"graphType\":\"pie\",\"data\":[{\"category\":\"Billing\",\"count\":150},{\"category\":\"Technical\",\"count\":300},{\"category\":\"Account\",\"count\":50}],\"title\":\"Ticket Category Distribution\"}", + "description": "Pie chart showing proportions of ticket categories." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "customer-support.createDiagram", + "description": "This tool generates visual flow diagrams to map customer support processes based on provided steps and decision points. It accepts structured input describing process nodes and edges, then produces a diagram file URL or SVG output suitable for documentation or training purposes.", + "category": "customer-support", + "parameters": [ + { + "name": "processName", + "type": "string", + "description": "The title or name of the customer support process to be visualized.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodes", + "type": "array", + "description": "An array of nodes representing steps or decision points; each node includes an id, label, and optionally a type (e.g., step, decision).", + "required": true, + "defaultValue": "" + }, + { + "name": "edges", + "type": "array", + "description": "An array of edges representing connections between nodes; each edge specifies source node id and target node id, with optional label for conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the diagram file, such as 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme for the diagram, e.g., 'light' or 'dark'.", + "required": false, + "defaultValue": "light" + } + ], + "returns": { + "type": "object", + "description": "An object with the URL or base64 string of the generated diagram image, plus metadata such as format and processName." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visually represent customer support workflows or processes for clarity in explanations, training, or documentation. It helps translate textual process descriptions into clear, navigable diagrams that show steps and decisions.", + "limitations": "This tool does not generate workflow logic or validate the correctness of the customer support process; it only renders the provided structure into diagram form.", + "examples": [ + "Create a diagram illustrating the customer complaint escalation process.", + "Generate a flowchart showing customer issue resolution steps including decision points.", + "Visualize the onboarding support process for new customers with steps and conditional paths." + ] + }, + "tags": [ + "customer-support", + "diagram", + "visualization", + "workflow", + "process-mapping", + "customer-service", + "flowchart" + ], + "examples": [ + { + "inputJson": "{\"processName\":\"Escalation Process\",\"nodes\":[{\"id\":\"1\",\"label\":\"Receive Ticket\",\"type\":\"step\"},{\"id\":\"2\",\"label\":\"Analyze Issue\",\"type\":\"step\"},{\"id\":\"3\",\"label\":\"Issue Resolved?\",\"type\":\"decision\"},{\"id\":\"4\",\"label\":\"Resolve Ticket\",\"type\":\"step\"},{\"id\":\"5\",\"label\":\"Escalate Ticket\",\"type\":\"step\"}],\"edges\":[{\"source\":\"1\",\"target\":\"2\"},{\"source\":\"2\",\"target\":\"3\"},{\"source\":\"3\",\"target\":\"4\",\"label\":\"Yes\"},{\"source\":\"3\",\"target\":\"5\",\"label\":\"No\"}],\"outputFormat\":\"svg\",\"theme\":\"light\"}", + "description": "Input representing a typical customer support ticket escalation process, with steps and a decision point, requesting SVG diagram output in light theme." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "customer-support.createAudio", + "description": "Generates custom audio messages for customer support based on provided text content, voice parameters, and language preferences. Accepts text input and optional configurations like voice type, speed, and background music. Outputs downloadable audio file URL for use in IVR systems, callbacks, or customer notifications.", + "category": "customer-support", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The text message to be converted into an audio format for customer communication.", + "required": true, + "defaultValue": "" + }, + { + "name": "languageCode", + "type": "string", + "description": "The language and locale code for the text-to-speech voice, e.g., 'en-US'.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "voiceType", + "type": "string", + "description": "Preferred voice style or gender (e.g., 'female', 'male', 'neutral').", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "speechRate", + "type": "number", + "description": "Speed rate of the speech; 1.0 is normal speed.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "backgroundMusicUrl", + "type": "string", + "description": "Optional URL to background music to overlay behind the spoken message.", + "required": false, + "defaultValue": "" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Desired audio output format such as 'mp3' or 'wav'.", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "includeSilencePadding", + "type": "boolean", + "description": "Whether to add silence padding at the start and end of the audio for smoother playback.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL to the generated audio file and metadata about the audio." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate high-quality spoken messages for customer support purposes, such as automated callbacks, IVR prompts, or personalized audio notifications. This tool helps agents convert textual support messages into natural-sounding audio files easily configurable by language, voice, and style.", + "limitations": "Cannot generate audio for extremely long text inputs exceeding supported limits; background music mixing quality depends on input file compatibility; voice selection limited to predefined options.", + "examples": [ + "Create an English female voice message for appointment reminders.", + "Generate a Spanish male voice message with slow speech rate for elderly customers.", + "Produce an audio prompt with neutral voice and background hold music for IVR system use." + ] + }, + "tags": [ + "audio-generation", + "customer-support", + "text-to-speech", + "ivr", + "notifications" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Your appointment is confirmed for tomorrow at 3 PM.\",\"languageCode\":\"en-US\",\"voiceType\":\"female\",\"speechRate\":1.0,\"backgroundMusicUrl\":\"\",\"audioFormat\":\"mp3\",\"includeSilencePadding\":true}", + "description": "Generate a clear English female voice audio confirming an appointment." + }, + { + "inputJson": "{\"textContent\":\"Su cita ha sido confirmada para mañana a las 10 AM.\",\"languageCode\":\"es-ES\",\"voiceType\":\"male\",\"speechRate\":0.85,\"backgroundMusicUrl\":\"https://example.com/soft-music.mp3\",\"audioFormat\":\"wav\",\"includeSilencePadding\":false}", + "description": "Create a Spanish male voice message with a slower pace and soft background music." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "customer-support.createReadme", + "description": "Generates a comprehensive README document for customer support tools or help desk applications. Accepts input details about the product, features, user instructions, installation steps, and FAQs, and produces a well-structured markdown README file ready for documentation or repository use.", + "category": "customer-support", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the customer support product or tool for which the README is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "productVersion", + "type": "string", + "description": "The current version of the product to be included in the README header.", + "required": false, + "defaultValue": "\"1.0.0\"" + }, + { + "name": "description", + "type": "string", + "description": "A short summary describing what the product does, its main purpose, and benefits.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "An array of key product features or capabilities to highlight in the README.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Step-by-step instructions explaining how to install or set up the product.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageInstructions", + "type": "string", + "description": "Guidance on how to use the product including commands or UI instructions.", + "required": false, + "defaultValue": "" + }, + { + "name": "faq", + "type": "array", + "description": "A list of frequently asked questions and their answers to help users troubleshoot common issues.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "The generated README document as a markdown-formatted string with all provided details structured clearly." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create or update documentation for a customer support product to facilitate easier onboarding, usage, and reference. Ideal for generating README files quickly from structured input without manual formatting.", + "limitations": "Cannot generate screenshots, videos, or dynamic content; output is limited to static markdown text based on provided inputs. Requires accurate input for meaningful documentation.", + "examples": [ + "Create a README for a new ticketing system with key features and installation steps.", + "Generate documentation for a help desk chatbot including FAQ and usage instructions." + ] + }, + "tags": [ + "documentation", + "customer-support", + "README", + "automation", + "help-desk", + "knowledge-base" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"QuickSupport\",\"productVersion\":\"2.3.1\",\"description\":\"An intuitive ticket management system for customer support teams.\",\"features\":[\"Automatic ticket routing\",\"Multi-channel support\",\"Real-time analytics\"],\"installationInstructions\":\"1. Download installer\\n2. Run setup.exe\\n3. Follow on-screen prompts\",\"usageInstructions\":\"- Login with your support account\\n- Create and assign tickets in the dashboard\\n- Use reports to monitor team performance\",\"faq\":[{\"question\":\"How to reset my password?\",\"answer\":\"Click 'Forgot password' on the login page and follow instructions.\"},{\"question\":\"Can I integrate with Slack?\",\"answer\":\"Yes, use the integrations settings to connect Slack.\"}]}", + "description": "Generating a complete README for a customer support ticketing system including installation and FAQ." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Readme", + "context": null + } + }, + { + "name": "customer-support.createDependency", + "description": "Creates a dependency record for customer support workflows, linking one support ticket or process to another. Accepts identifiers for the dependent and dependency tickets, along with an optional description and priority level. Outputs a confirmation with dependency details for tracking and resolution sequencing.", + "category": "customer-support", + "parameters": [ + { + "name": "dependentTicketId", + "type": "string", + "description": "Unique identifier of the ticket that depends on another issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyTicketId", + "type": "string", + "description": "Unique identifier of the ticket on which the dependent ticket relies.", + "required": true, + "defaultValue": "" + }, + { + "name": "relationshipType", + "type": "string", + "description": "Type of dependency relationship (e.g., blocks, relates to, duplicates).", + "required": false, + "defaultValue": "blocks" + }, + { + "name": "description", + "type": "string", + "description": "Optional text describing the nature of the dependency or additional context.", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority of resolving this dependency (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created dependency record with ticket IDs, relationship type, description, priority, and a confirmation status." + }, + "aiAgent": { + "useCase": "Use this tool when managing customer support workflows requiring tracking of interdependent issues or tickets. It ensures that ticket resolution order and impact are properly coordinated, helping to prevent resolution conflicts and enabling reporting on dependency chains.", + "limitations": "Does not automate ticket resolution or updating ticket statuses automatically; only creates and records the dependency relationship.", + "examples": [ + "Create a dependency where ticket #123 depends on ticket #100 being resolved first.", + "Register that ticket #458 blocks ticket #789 as a duplicate issue.", + "Add a high-priority dependency with description explaining customer impact between two tickets." + ] + }, + "tags": [ + "customer-support", + "dependency-management", + "ticket-tracking", + "workflow", + "issue-linking" + ], + "examples": [ + { + "inputJson": "{\"dependentTicketId\":\"T123\",\"dependencyTicketId\":\"T100\",\"relationshipType\":\"blocks\",\"description\":\"Resolution required before T123 can proceed.\",\"priorityLevel\":\"high\"}", + "description": "Create a high-priority blocking dependency between two tickets." + }, + { + "inputJson": "{\"dependentTicketId\":\"T458\",\"dependencyTicketId\":\"T789\",\"relationshipType\":\"duplicates\",\"description\":\"Tickets refer to the same issue, needs consolidation.\"}", + "description": "Mark one ticket as a duplicate dependency of another." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "marketing-automation.downloadVideo", + "description": "This tool downloads marketing campaign videos from specified URLs. It accepts a video URL and optional parameters like desired format and resolution, then fetches and converts the video accordingly, returning a downloadable video file link or base64 encoded content.", + "category": "marketing-automation", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the marketing video to download", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired video format for download (e.g., mp4, webm)", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "resolution", + "type": "string", + "description": "Preferred video resolution (e.g., 1080p, 720p) if available", + "required": false, + "defaultValue": "1080p" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to include embedded subtitles if available", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a download link to the processed video, original video metadata, file size in bytes, and optionally base64 encoded video content if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve marketing videos from online sources for analysis, distribution, or archiving. It is useful for automating video content acquisition, converting to desired formats, or managing video assets during campaign workflows.", + "limitations": "Cannot download videos protected by DRM or requiring authentication tokens beyond simple URL access. Does not perform video editing or content analysis beyond basic metadata extraction.", + "examples": [ + "Download the promotional video from 'https://example.com/ad.mp4' as a 720p MP4 file with subtitles included.", + "Fetch the campaign video at 'https://videos.marketing.com/sale.webm' in original resolution without subtitles.", + "Retrieve and download the 1080p mp4 version of the video located at 'https://contenthost.com/launchvideo'" + ] + }, + "tags": [ + "marketing", + "video", + "download", + "media", + "automation", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/marketing/video1.mp4\",\"format\":\"mp4\",\"resolution\":\"720p\",\"includeSubtitles\":true}", + "description": "Download a marketing video at 720p MP4 format with subtitles included." + }, + { + "inputJson": "{\"videoUrl\":\"https://videos.marketing.com/promo.webm\",\"format\":\"webm\",\"resolution\":\"1080p\",\"includeSubtitles\":false}", + "description": "Download a promotional video in WebM format at 1080p resolution without subtitles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "marketing-automation.uploadTable", + "description": "Uploads a tabular dataset (CSV or JSON format) to a specified marketing campaign database. Accepts raw CSV or JSON string input, validates and parses the data, optionally applies schema mapping, and stores the table for use in automated marketing workflows. Returns a summary of import results including success counts and errors.", + "category": "marketing-automation", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "Raw table data in CSV or JSON string format to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier of the marketing campaign where the data should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaMapping", + "type": "object", + "description": "Optional mapping of input table columns to campaign database fields.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite existing data for the campaign (true) or append (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "notifyOnCompletion", + "type": "boolean", + "description": "Whether to send a notification email when upload completes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "notificationEmail", + "type": "string", + "description": "Email address to notify when upload completes, required if notifyOnCompletion is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the status of the upload including success count, error details, and total rows processed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to import structured user, lead, or event data tables into a marketing campaign database for downstream automated marketing activities such as segmentation, targeting, or analytics. The tool reliably handles CSV or JSON input formats and integrates with campaign data stores.", + "limitations": "This tool does not perform complex data cleansing or transformation beyond basic schema mapping. It cannot connect to external data sources automatically; data must be provided as a string input.", + "examples": [ + "Upload CSV data of new leads to campaign 'camp123' for segmentation.", + "Upload JSON of event tracking data to campaign 'camp456' with schema mapping.", + "Upload a CSV table and overwrite existing campaign data with notification on completion." + ] + }, + "tags": [ + "marketing", + "automation", + "upload", + "table", + "campaign", + "data-import", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"email,name,age\\njohn@example.com,John Doe,30\\njane@example.com,Jane Smith,25\",\"dataFormat\":\"csv\",\"campaignId\":\"camp123\",\"overwriteExisting\":false}", + "description": "Uploading a CSV with user contact info and demographics to campaign 'camp123', appending data." + }, + { + "inputJson": "{\"tableData\":\"[{\\\"email\\\":\\\"bob@example.com\\\",\\\"action\\\":\\\"clicked\\\"},{\\\"email\\\":\\\"alice@example.com\\\",\\\"action\\\":\\\"opened\\\"}]\",\"dataFormat\":\"json\",\"campaignId\":\"camp456\",\"schemaMapping\":{\"email\":\"user_email\",\"action\":\"user_action\"},\"overwriteExisting\":true,\"notifyOnCompletion\":true,\"notificationEmail\":\"marketer@example.com\"}", + "description": "Uploading a JSON event table to campaign 'camp456' with schema mapping and overwriting existing data; send notification on completion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "marketing-automation.formatQuery", + "description": "Formats marketing campaign query strings or JSON objects into a standardized structure suitable for use in marketing automation platforms. Accepts raw query strings or objects, applies formatting rules, and outputs a clean, consistent query format for downstream use.", + "category": "marketing-automation", + "parameters": [ + { + "name": "queryInput", + "type": "string", + "description": "The raw marketing query as a string or JSON string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input query: 'string' for raw query string, 'json' for JSON object string.", + "required": true, + "defaultValue": "string" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'string' for query string, 'json' for JSON object.", + "required": false, + "defaultValue": "string" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Whether to pretty print JSON output for readability (ignored if outputFormat is 'string').", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted query in the desired output format as a string or JSON object." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize marketing queries from various unstructured or inconsistent inputs to conform with marketing automation platform syntaxes or API requirements. It helps in cleaning and structuring queries before execution or analysis.", + "limitations": "Does not validate semantic correctness of marketing parameters, only formats structure and syntax. Cannot parse or interpret natural language queries.", + "examples": [ + "Format a raw query string into a JSON object for marketing API use.", + "Convert a JSON marketing query input to a cleaned query string for URL injection.", + "Pretty print a JSON marketing query for debugging and review purposes." + ] + }, + "tags": [ + "marketing", + "automation", + "query", + "formatting", + "campaign", + "API" + ], + "examples": [ + { + "inputJson": "{\"queryInput\":\"utm_source=google&campaign=spring_sale\",\"inputFormat\":\"string\",\"outputFormat\":\"json\",\"prettyPrint\":true}", + "description": "Converts raw query string into pretty printed JSON object for easier integration." + }, + { + "inputJson": "{\"queryInput\":\"{\\\"source\\\":\\\"facebook\\\", \\\"campaign\\\":\\\"holidays\\\"}\",\"inputFormat\":\"json\",\"outputFormat\":\"string\",\"prettyPrint\":false}", + "description": "Converts JSON query object into a standardized query string for URL injection." + }, + { + "inputJson": "{\"queryInput\":\"utm_medium=email&content=newsletter\",\"inputFormat\":\"string\",\"outputFormat\":\"string\",\"prettyPrint\":false}", + "description": "Formats a raw query string to a clean, standardized query string output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "marketing-automation.downloadTable", + "description": "Downloads tabular data from a specified marketing platform or campaign analytics service. Accepts parameters to specify the campaign ID, date range, and desired data fields. Processes the request by querying the platform's API and outputs the table data in CSV or JSON format for further analysis or reporting.", + "category": "marketing-automation", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "The marketing platform to fetch table data from (e.g., 'google-ads', 'facebook-ads').", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign to retrieve data for.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for data retrieval in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for data retrieval in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "List of data fields/columns to include in the output table (e.g., ['clicks','impressions','cost']).", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output data format: either 'csv' or 'json'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in CSV output. Ignored for JSON.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the requested table data as a string in the requested format and the field names if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve detailed campaign performance tables from various marketing platforms to automate reporting, analytics, or integration with other systems. It handles date filtering and custom field selection to focus on relevant metrics.", + "limitations": "Currently supports only select popular marketing platforms with available APIs. Does not perform data transformations, aggregations, or analytics beyond raw table downloading.", + "examples": [ + "Download the clicks and impressions columns for campaign ID 'ABC123' on Google Ads between 2023-01-01 and 2023-01-31 as CSV with headers.", + "Fetch all available fields for Facebook campaign 'FB9876' for the last week in JSON format.", + "Get cost and conversion data for campaign XYZ123 from Google Ads without date filtering, formatted as CSV without headers." + ] + }, + "tags": [ + "marketing-automation", + "download", + "table", + "campaign-data", + "analytics", + "reporting", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"google-ads\",\"campaignId\":\"ABC123\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-01-31\",\"fields\":[\"clicks\",\"impressions\"],\"format\":\"csv\",\"includeHeaders\":true}", + "description": "Download clicks and impressions for campaign ABC123 on Google Ads for January 2023 as CSV with headers." + }, + { + "inputJson": "{\"platform\":\"facebook-ads\",\"campaignId\":\"FB9876\",\"format\":\"json\"}", + "description": "Fetch all data fields for Facebook campaign FB9876 in JSON format with no date filters." + }, + { + "inputJson": "{\"platform\":\"google-ads\",\"campaignId\":\"XYZ123\",\"fields\":[\"cost\",\"conversions\"],\"format\":\"csv\",\"includeHeaders\":false}", + "description": "Get cost and conversion metrics for Google Ads campaign XYZ123 as CSV without headers and no date range specified." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "marketing-automation.uploadVideo", + "description": "Uploads a video file to a marketing automation platform, associating it with a specified campaign and optional metadata. Accepts video content or URL, processes upload to storage, and returns upload confirmation with video ID and access URL.", + "category": "marketing-automation", + "parameters": [ + { + "name": "videoFile", + "type": "string", + "description": "Base64-encoded video content or direct URL to the video file for uploading.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier for the marketing campaign with which the video will be associated.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the video to help identify it within the platform.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description providing details about the video content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of keywords to categorize or tag the video for easier searching and filtering.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "autoPublish", + "type": "boolean", + "description": "If true, the video is published immediately after upload; if false, it remains in draft status.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of the upload including a unique video ID, an accessible URL, and the upload status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload marketing videos directly into campaign management systems to automate content deployment or campaign enrichment. Suitable when video data or reference URLs are available for storage and subsequent use in marketing workflows.", + "limitations": "This tool does not handle video encoding, editing, or analytics post-upload. It requires valid video content or URLs and campaign identifiers; it cannot generate video content or verify video compliance restrictions.", + "examples": [ + "Upload a promotional video to campaign 'spring-sale-2024' with tags 'promo','spring','sale'.", + "Upload a tutorial video from URL and immediately publish it to campaign 'onboarding'." + ] + }, + "tags": [ + "marketing", + "video", + "upload", + "automation", + "campaign", + "media" + ], + "examples": [ + { + "inputJson": "{\"videoFile\":\"https://example.com/videos/intro.mp4\",\"campaignId\":\"camp1234\",\"title\":\"Intro Video\",\"description\":\"Introduction to our new product\",\"tags\":[\"intro\",\"product\"],\"autoPublish\":true}", + "description": "Upload and auto-publish an introductory product video by URL to campaign 'camp1234'." + }, + { + "inputJson": "{\"videoFile\":\"U29tZSBiYXNlNjQgZW5jb2RlZCB2aWRlbyBjb250ZW50\",\"campaignId\":\"summer2024\",\"title\":\"Summer Campaign\",\"tags\":[\"summer\",\"promo\"],\"autoPublish\":false}", + "description": "Upload a base64-encoded video to 'summer2024' campaign without immediate publishing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "marketing-automation.renderSummary", + "description": "This tool accepts detailed marketing campaign data, including performance metrics, target audience details, and campaign objectives, and processes this information to generate a concise, well-structured summary report. The output is a plain text or formatted summary that highlights key insights and campaign outcomes.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "object", + "description": "An object containing detailed campaign information such as metrics, targets, timelines, and goals.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The desired output format for the summary, e.g., 'text' or 'html'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include strategic recommendations based on the campaign data analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the summary output, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in words) of the generated summary.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered campaign summary as a string in the requested format and language, including optional recommendations if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, concise summaries of marketing campaign data to present insights and performance highlights for stakeholders or decision makers. It helps convert raw campaign metrics into readable, professional narrative summaries.", + "limitations": "This tool cannot perform raw data analysis or fetch campaign data. It requires structured input data and does not generate visualizations. It also does not handle multilingual translations beyond specified language output.", + "examples": [ + "Generate a summary report for a recent email marketing campaign including recommendations.", + "Render a concise HTML summary of the social media ad campaign within 200 words.", + "Provide a plain text summary of campaign performance metrics in Spanish." + ] + }, + "tags": [ + "marketing", + "automation", + "summary", + "reporting", + "campaign", + "performance", + "insights" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":{\"name\":\"Spring Sale 2024\",\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-15\",\"channels\":[\"email\",\"social\"],\"metrics\":{\"openRate\":0.45,\"clickThroughRate\":0.12,\"conversionRate\":0.05},\"audience\":{\"segments\":[\"loyalCustomers\",\"newSubscribers\"]},\"goals\":[\"increaseSales\",\"brandAwareness\"]},\"format\":\"text\",\"includeRecommendations\":true,\"language\":\"en\",\"maxLength\":250}", + "description": "Generate an English plain text summary with recommendations for a multi-channel spring sale campaign." + }, + { + "inputJson": "{\"campaignData\":{\"name\":\"Winter Campaign\",\"startDate\":\"2023-12-01\",\"endDate\":\"2023-12-31\",\"channels\":[\"social\"],\"metrics\":{\"engagementRate\":0.08,\"impressions\":500000},\"audience\":{\"segments\":[\"millennials\"]},\"goals\":[\"engagement\"]},\"format\":\"html\",\"includeRecommendations\":false,\"language\":\"en\",\"maxLength\":150}", + "description": "Produce a concise HTML summary without recommendations for a social media campaign focused on engagement." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "marketing-automation.formatTable", + "description": "Formats tabular marketing data for enhanced readability and presentation. Accepts input as JSON array of objects or a CSV string, applies customizable formatting like column alignment, number formatting, header styling, and outputs a styled table string (markdown or HTML) ready for reports or dashboards.", + "category": "marketing-automation", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "Input table data as JSON array string or CSV string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data; options are 'json' for JSON array or 'csv' for CSV string.", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output table format, either 'markdown' or 'html'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "columnAlignments", + "type": "object", + "description": "Object mapping column names to alignment values 'left','center','right' for formatting each column.", + "required": false, + "defaultValue": "" + }, + { + "name": "numberFormat", + "type": "string", + "description": "Format string for numbers, e.g., 'percentage', 'currency', or a custom format pattern.", + "required": false, + "defaultValue": "" + }, + { + "name": "headerStyle", + "type": "string", + "description": "CSS style string or markdown styling instructions to customize the header appearance.", + "required": false, + "defaultValue": "" + }, + { + "name": "stripEmptyRows", + "type": "boolean", + "description": "Whether to remove rows that have all empty or null values.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Contains a single field 'formattedTable' which is a string representation of the formatted table in the requested output format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw marketing dataset tables into visually appealing and readable formats for presentations, reports, or dashboards. It is especially useful for agents automating marketing campaign reports or aggregations to ensure consistent and clear data display.", + "limitations": "Does not perform data analysis or validation; formatting is limited to typical table styling (alignment, number format, header style) and cannot embed images or complex interactive elements.", + "examples": [ + "Format a JSON array of campaign metrics as a markdown table with right-aligned numerical columns and currency formatting.", + "Format a CSV string of email open rates into an HTML table with centered headers and percentage formatting." + ] + }, + "tags": [ + "table", + "formatting", + "marketing", + "automation", + "reporting", + "data-visualization" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"[{\\\"Campaign\\\":\\\"Spring Sale\\\",\\\"Clicks\\\":1234,\\\"Revenue\\\":5678.9},{\\\"Campaign\\\":\\\"Summer Promo\\\",\\\"Clicks\\\":2345,\\\"Revenue\\\":12345.67}]\",\"inputFormat\":\"json\",\"outputFormat\":\"markdown\",\"columnAlignments\":{\"Campaign\":\"left\",\"Clicks\":\"right\",\"Revenue\":\"right\"},\"numberFormat\":\"currency\",\"headerStyle\":\"**bold**\",\"stripEmptyRows\":true}", + "description": "Format JSON array table data as markdown with right aligned numeric columns and currency formatting." + }, + { + "inputJson": "{\"tableData\":\"Campaign,OpenRate,Clicks\\nLaunch,0.25,1000\\nFollow-up,0.30,1500\",\"inputFormat\":\"csv\",\"outputFormat\":\"html\",\"columnAlignments\":{\"Campaign\":\"left\",\"OpenRate\":\"center\",\"Clicks\":\"right\"},\"numberFormat\":\"percentage\",\"headerStyle\":\"color:blue;font-weight:bold;\",\"stripEmptyRows\":false}", + "description": "Format CSV string to HTML table with centered and right aligned columns and percentage number formatting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "marketing-automation.formatComponent", + "description": "Formats marketing automation UI components by accepting component data and formatting rules, then outputs styled HTML or JSON code snippets for embedding in campaigns. Supports customization of layout, colors, and content based on input parameters.", + "category": "marketing-automation", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of marketing component to format, e.g., 'emailBanner', 'callToAction', 'productCard'.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentData", + "type": "object", + "description": "Content data including text, images, links, etc., relevant to the component type.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Styling and formatting options such as colors, fonts, sizes, and layout preferences.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'html' for embedding or 'json' for configuration data.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "Returns a formatted string representing the marketing component in specified format (HTML or JSON) ready for rendering or integration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate visually consistent and customizable marketing components like banners, CTAs, or product cards for automated email or web campaigns. It helps produce ready-to-use code snippets based on dynamic content and style preferences, facilitating automation in campaign design.", + "limitations": "Does not generate interactive behavior scripts or advanced animations. Styling is limited to standard CSS properties as defined in styleOptions. Complex layouts requiring external frameworks are not supported.", + "examples": [ + "Format a call-to-action button with custom text and brand colors for an email campaign.", + "Generate a product card component with image and price details output as HTML for embedding in a landing page.", + "Create a JSON configuration for a banner component that can be consumed by another system to render consistent marketing visuals." + ] + }, + "tags": [ + "marketing", + "automation", + "component", + "formatting", + "UI", + "email", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"emailBanner\",\"contentData\":{\"headline\":\"Spring Sale!\",\"subheadline\":\"Up to 50% off\",\"imageUrl\":\"https://example.com/sale.jpg\"},\"styleOptions\":{\"backgroundColor\":\"#ffcc00\",\"fontFamily\":\"Arial\",\"textColor\":\"#000000\"},\"outputFormat\":\"html\"}", + "description": "Formats an email banner with headline, subheadline and image into styled HTML with brand colors." + }, + { + "inputJson": "{\"componentType\":\"callToAction\",\"contentData\":{\"text\":\"Shop Now\",\"link\":\"https://example.com/shop\"},\"styleOptions\":{\"backgroundColor\":\"#0073e6\",\"fontSize\":\"16px\",\"textColor\":\"#ffffff\"},\"outputFormat\":\"html\"}", + "description": "Generates a styled CTA button HTML snippet with custom text and link." + }, + { + "inputJson": "{\"componentType\":\"productCard\",\"contentData\":{\"title\":\"Wireless Headphones\",\"price\":\"$99\",\"imageUrl\":\"https://example.com/headphones.jpg\"},\"styleOptions\":{\"borderColor\":\"#dddddd\",\"fontFamily\":\"Helvetica\"},\"outputFormat\":\"json\"}", + "description": "Creates a JSON configuration for a product card component to be consumed by a web app." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "marketing-automation.renderParagraph", + "description": "Generates a marketing-focused paragraph based on input parameters such as target audience, product description, campaign goal, and tone of voice. The tool processes these inputs to produce a clear, engaging paragraph suitable for use in marketing emails, landing pages, or advertisements.", + "category": "marketing-automation", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "The segment of customers or audience the paragraph should address (e.g., millennials, tech enthusiasts).", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "Brief description of the product or service to highlight in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignGoal", + "type": "string", + "description": "Primary objective of the marketing campaign (e.g., awareness, conversion, retention).", + "required": true, + "defaultValue": "" + }, + { + "name": "toneOfVoice", + "type": "string", + "description": "Desired tone for the paragraph, such as friendly, professional, urgent, or casual.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words in the generated paragraph.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered paragraph text suitable for marketing content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate or customize marketing copy centered on specific products, audiences, or campaign objectives. It helps automate content creation for emails, ads, or pages with a tone and length tailored to campaign needs.", + "limitations": "The tool generates only a single paragraph and does not handle formatting, images, or multi-channel content adaptation. It does not guarantee compliance with marketing regulations or brand guidelines.", + "examples": [ + "Generate a friendly paragraph introducing a new fitness app targeting health-conscious millennials aiming to increase app signups.", + "Create a professional paragraph describing enterprise cloud software aimed at IT managers with a focus on retention.", + "Produce an urgent paragraph for a limited-time offer on eco-friendly products targeting environmentally aware consumers." + ] + }, + "tags": [ + "marketing", + "content generation", + "automation", + "copywriting", + "campaign", + "paragraph", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"millennials interested in fitness\",\"productDescription\":\"an easy-to-use fitness tracking app\",\"campaignGoal\":\"increase signups\",\"toneOfVoice\":\"friendly\",\"maxLength\":80}", + "description": "Generate a friendly marketing paragraph promoting a fitness app to millennials aiming to boost signups." + }, + { + "inputJson": "{\"targetAudience\":\"IT managers\",\"productDescription\":\"enterprise cloud security software\",\"campaignGoal\":\"retention\",\"toneOfVoice\":\"professional\",\"maxLength\":100}", + "description": "Create a professional paragraph highlighting cloud security software for IT managers focusing on customer retention." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "marketing-automation.formatArticle", + "description": "This tool accepts raw article text along with formatting preferences to produce a marketing-optimized, well-structured article. It processes the input by applying headings, bullet points, emphasis, and style guidelines suited for marketing campaigns. Output is a formatted HTML string ready for publishing or further integration.", + "category": "marketing-automation", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The unformatted plain text content of the article to be processed.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience to tailor tone and style appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The desired formatting style such as 'formal', 'casual', 'technical', or 'promotional'.", + "required": false, + "defaultValue": "promotional" + }, + { + "name": "includeHeadings", + "type": "boolean", + "description": "Whether to automatically insert headings to improve readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeBulletPoints", + "type": "boolean", + "description": "Whether to transform lists or key points into bullet points for clarity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before inserting a line break or new paragraph.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article as an HTML string suitable for marketing distribution." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw marketing article text into polished, styled HTML content tailored for target audiences and marketing channels. It is ideal when preparing newsletters, blog posts, or campaign content requiring professional formatting automatically.", + "limitations": "It does not provide content creation or deep semantic rewriting—focuses on formatting and structuring existing text. It cannot replace human editing for nuanced marketing strategies or compliance.", + "examples": [ + "Format a raw article text into a promotional style with headings and bullet points for a newsletter.", + "Convert a plain text article for a technical audience using a formal style and no bullet points.", + "Format marketing copy for a casual blog post including headings and bullet points with line length limit of 60." + ] + }, + "tags": [ + "marketing", + "automation", + "formatting", + "article", + "HTML", + "content-preparation" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"Our new product launches next week. It features advanced AI capabilities. Key benefits include speed, accuracy, and scalability.\",\"targetAudience\":\"Tech professionals\",\"formatStyle\":\"promotional\",\"includeHeadings\":true,\"includeBulletPoints\":true,\"maxLineLength\":80}", + "description": "Format a promotional article with headings and bullet points for tech professionals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "marketing-automation.composeArticle", + "description": "Generates a complete marketing article based on given topics, target audience, tone, and desired length. Accepts inputs like article topic, keywords, target audience description, tone of voice, and length to produce a structured, coherent article optimized for marketing purposes.", + "category": "marketing-automation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Primary subject or theme of the article to write.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of important keywords to include for SEO optimization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers to tailor language and content appropriately.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of voice for the article, e.g., professional, casual, enthusiastic.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the article in words.", + "required": false, + "defaultValue": "800" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action to conclude the article.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the complete article text and a summary highlighting main points." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate marketing articles quickly based on specific topics and marketing objectives without manual writing. It helps automate content creation while maintaining coherency, relevant keywords, and tone tailored to the target audience. Ideal for scaling content production in marketing campaigns.", + "limitations": "Cannot replace expert human writers for highly specialized or technical content. May produce generic or repetitive text if inputs are too vague or lacking detail.", + "examples": [ + "Write a 1000-word professional tone article about sustainable packaging including keywords 'eco-friendly', 'biodegradable', targeting environmentally-conscious consumers, concluding with a call to action to subscribe to a newsletter.", + "Generate a 500-word casual blog post on benefits of remote work for tech professionals using keywords 'flexibility', 'work-life balance'.", + "Create an 800-word enthusiastic article about new smartphone features aimed at early adopters with keywords '5G', 'camera upgrades', include a call to action to pre-order." + ] + }, + "tags": [ + "marketing", + "content-creation", + "article-generation", + "seo", + "automation", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of email marketing automation\",\"keywords\":[\"automation\",\"email marketing\",\"ROI\"],\"targetAudience\":\"small business owners\",\"tone\":\"professional\",\"length\":700,\"callToAction\":\"Sign up today for our free trial!\"}", + "description": "Generate a professional 700-word article on email marketing automation benefits targeting small business owners." + }, + { + "inputJson": "{\"topic\":\"Trends in social media marketing 2024\",\"keywords\":[\"social media\",\"trends\",\"digital marketing\"],\"targetAudience\":\"digital marketers\",\"tone\":\"enthusiastic\",\"length\":1000,\"callToAction\":\"Download our latest trend report.\"}", + "description": "Create an enthusiastic 1000-word article on upcoming social media marketing trends for digital marketers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "marketing-automation.buildPipeline", + "description": "Builds a customizable marketing automation pipeline by accepting campaign details, target audience filters, communication channels, and scheduling preferences. It processes the input to generate an executable pipeline configuration outlining sequential automated marketing steps and actions, outputting a structured JSON pipeline definition ready for deployment or integration.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The unique name identifier for the marketing campaign to be automated.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudienceCriteria", + "type": "object", + "description": "Filters and segmentation rules defining the audience to target, including demographics, behavior, and engagement levels.", + "required": true, + "defaultValue": "" + }, + { + "name": "communicationChannels", + "type": "array", + "description": "List of communication channels to use (e.g., email, SMS, social media) for campaign delivery, prioritized in order.", + "required": true, + "defaultValue": "" + }, + { + "name": "schedule", + "type": "object", + "description": "Defines start time, frequency, and duration for the pipeline execution and recurring campaign triggers.", + "required": false, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered list of pipeline steps including conditions, actions (send message, wait, score lead), and branching logic.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableA/BTesting", + "type": "boolean", + "description": "Flag to enable split testing within the pipeline for different messages or user segments.", + "required": false, + "defaultValue": "false" + }, + { + "name": "leadScoringModel", + "type": "string", + "description": "Identifier for the lead scoring model to apply during the pipeline to prioritize engagement efforts.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the fully defined marketing automation pipeline, including campaign metadata, segments, communication steps with timings, branch conditions, and testing configurations." + }, + "aiAgent": { + "useCase": "Use this tool when assembling a marketing automation workflow that requires orchestrating multiple campaign stages, audience targeting filters, and communication channels into a single coherent pipeline configuration ready for deployment in marketing platforms or automation engines. Ideal for automating drip campaigns, lead nurturing, and multi-channel engagement.", + "limitations": "This tool does not execute the pipeline or send messages; it only constructs the logical automation workflow configuration. It cannot analyze real-time campaign performance or provide analytics.", + "examples": [ + "Build a drip email campaign pipeline targeting new subscribers aged 25-34 using email and SMS sequences, starting next Monday.", + "Create a social media retargeting pipeline with A/B testing enabled, that targets users who visited the pricing page in the last 7 days.", + "Generate a multi-step lead nurturing pipeline including lead scoring, email outreach, and follow-up SMS messages scheduled daily." + ] + }, + "tags": [ + "marketing", + "automation", + "pipeline", + "campaign", + "workflow", + "lead-nurturing", + "multichannel" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"SpringPromo2024\",\"targetAudienceCriteria\":{\"ageRange\":[25,40],\"locations\":[\"US\",\"CA\"],\"interests\":[\"fitness\",\"outdoor\"]},\"communicationChannels\":[\"email\",\"sms\"],\"schedule\":{\"start\":\"2024-05-01T09:00:00Z\",\"frequency\":\"weekly\",\"durationDays\":30},\"steps\":[{\"type\":\"sendMessage\",\"channel\":\"email\",\"templateId\":\"promo_welcome\"},{\"type\":\"wait\",\"durationHours\":48},{\"type\":\"sendMessage\",\"channel\":\"sms\",\"templateId\":\"promo_followup\"}],\"enableA/BTesting\":true,\"leadScoringModel\":\"standard_model_v2\"}", + "description": "Build a multichannel campaign targeting mid-age outdoor fitness enthusiasts with scheduled email and SMS messages and A/B testing enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "marketing-automation.buildQueue", + "description": "Constructs a campaign action queue for marketing automation by accepting an array of marketing tasks with specified priorities and scheduling parameters. It processes these tasks into a prioritized, schedulable queue that can be executed sequentially or in parallel, outputting a structured queue object ready for downstream automation execution.", + "category": "marketing-automation", + "parameters": [ + { + "name": "tasks", + "type": "array", + "description": "An array of marketing tasks to enqueue, each including action type, target audience, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityScheme", + "type": "string", + "description": "Defines how task priority is determined, e.g., 'timeBased', 'manual', or 'hybrid'.", + "required": false, + "defaultValue": "manual" + }, + { + "name": "maxConcurrency", + "type": "number", + "description": "Maximum number of tasks to run concurrently from the queue.", + "required": false, + "defaultValue": "1" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration object specifying retry attempts and backoff strategy for failed tasks.", + "required": false, + "defaultValue": "" + }, + { + "name": "scheduleWindow", + "type": "object", + "description": "Optional time window object specifying when the queue is active, with start and end ISO timestamps.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured queue object containing ordered tasks with metadata including task IDs, scheduled execution times, priority levels, and concurrency settings optimized for campaign automation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to organize and serialize multiple marketing actions such as email sends, social posts, or ad triggers into an execution queue with priority and scheduling. It helps automate multi-step campaigns by ensuring tasks run in the correct order and concurrency limits.", + "limitations": "This tool does not execute the tasks; it only builds and organizes the queue structure. It assumes input tasks are already validated and does not handle task content validation or downstream integrations.", + "examples": [ + "Build a queue of email and social media posts with manual priority and max 3 concurrent tasks.", + "Create a time-based priority queue for marketing automation tasks scheduled within a weekly window.", + "Generate a queue with retry policy allowing 3 retries per failed task and exponential backoff." + ] + }, + "tags": [ + "marketing", + "automation", + "queue", + "campaign", + "task-scheduling", + "priority", + "concurrency" + ], + "examples": [ + { + "inputJson": "{\"tasks\":[{\"type\":\"email\",\"targetAudience\":\"subscribers\",\"contentId\":\"email_123\"},{\"type\":\"socialPost\",\"targetAudience\":\"followers\",\"contentId\":\"post_456\"}],\"priorityScheme\":\"manual\",\"maxConcurrency\":2}", + "description": "Build a queue with two tasks, manual priority, max 2 concurrent executions." + }, + { + "inputJson": "{\"tasks\":[{\"type\":\"email\",\"targetAudience\":\"vipClients\",\"contentId\":\"email_789\"},{\"type\":\"adTrigger\",\"targetAudience\":\"retargetingList\",\"contentId\":\"ad_101\"}],\"priorityScheme\":\"timeBased\",\"scheduleWindow\":{\"start\":\"2024-07-01T00:00:00Z\",\"end\":\"2024-07-07T23:59:59Z\"},\"retryPolicy\":{\"maxAttempts\":3,\"backoff\":\"exponential\"}}", + "description": "Build a time-based priority queue with retry policy within a scheduled week." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "marketing-automation.composeComment", + "description": "Generates a tailored marketing comment based on input campaign details, target audience, tone, and specific messaging points. Accepts structured inputs to craft a relevant, engaging comment suitable for social media, email threads, or customer outreach, outputting a polished textual comment ready for posting or integration.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name or title of the marketing campaign for context in comment generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience or customer segment for the comment.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the comment, such as friendly, professional, enthusiastic, or casual.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMessages", + "type": "array", + "description": "List of key message points or highlights to include in the comment.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call-to-action phrase to include at the end of the comment.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the comment output (e.g., en, es). Defaults to English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated comment text as a string under the field 'comment'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to craft customized comments that align with marketing campaign goals, audience profiles, and desired tone for engaging communication on platforms such as social media, email replies, or community interactions. It helps automate comment composition to maintain consistent brand voice while addressing campaign specifics.", + "limitations": "This tool cannot evaluate real-time campaign effectiveness or engage in dynamic conversation; it only generates static comments based on provided input parameters and cannot replace interactive customer support.", + "examples": [ + "Generate a friendly comment for a summer sale campaign targeting young adults, highlighting discounts and encouraging purchases.", + "Compose a professional comment for a B2B software launch campaign focusing on product benefits and requesting demos.", + "Create an enthusiastic social media comment to promote a new eco-friendly product, including a call to action to visit the website." + ] + }, + "tags": [ + "marketing", + "automation", + "comment", + "content-generation", + "social-media", + "customer-engagement", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Summer Sale 2024\",\"targetAudience\":\"Young adults aged 18-25 interested in fashion\",\"tone\":\"friendly\",\"keyMessages\":[\"Up to 50% off\",\"Trendy styles\",\"Limited time offer\"],\"callToAction\":\"Shop now and save!\",\"language\":\"en\"}", + "description": "Creating a friendly, engaging comment for a summer sale targeting young adults." + }, + { + "inputJson": "{\"campaignName\":\"Enterprise Software Launch\",\"targetAudience\":\"IT professionals and decision makers\",\"tone\":\"professional\",\"keyMessages\":[\"Innovative features\",\"Secure and scalable\",\"Free demo available\"],\"callToAction\":\"Request a demo today\",\"language\":\"en\"}", + "description": "Generating a professional comment to promote a B2B software launch with a call to action for demos." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "marketing-automation.buildCluster", + "description": "Creates a marketing campaign cluster by grouping customer profiles based on specified attributes and campaign performance metrics. Accepts customer data and campaign parameters, processes clustering using configurable algorithms, and outputs cluster definitions to optimize targeted marketing strategies.", + "category": "marketing-automation", + "parameters": [ + { + "name": "customerData", + "type": "array", + "description": "Array of customer profile objects including demographics, behavior, and engagement data used for clustering.", + "required": true, + "defaultValue": "" + }, + { + "name": "attributes", + "type": "array", + "description": "List of customer attribute keys to include in the clustering process (e.g., age, location, purchase history).", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignMetrics", + "type": "object", + "description": "Metrics related to previous campaign performance such as click-through rate and conversion rate to influence clustering.", + "required": false, + "defaultValue": "" + }, + { + "name": "clusteringAlgorithm", + "type": "string", + "description": "Algorithm to use for clustering such as k-means, hierarchical, or DBSCAN.", + "required": false, + "defaultValue": "k-means" + }, + { + "name": "numberOfClusters", + "type": "number", + "description": "Desired number of clusters to create; applicable if the algorithm requires this parameter.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeInactiveCustomers", + "type": "boolean", + "description": "Whether to include customers with no recent activity in the clustering process.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output cluster definitions (e.g., JSON, CSV).", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing cluster labels assigned to customer profiles and statistical summaries for each cluster aiding targeted marketing." + }, + "aiAgent": { + "useCase": "Use this tool when planning or optimizing marketing campaigns by segmenting customers into clusters based on demographic and engagement data combined with campaign metrics to improve targeting efficiency and personalized communication.", + "limitations": "Does not perform real-time clustering on streaming data and depends on the quality and completeness of input customer and campaign data. Complex datasets may require preprocessing outside this tool.", + "examples": [ + "Build a customer cluster based on age, location, and recent campaign click rates using k-means with 4 clusters.", + "Cluster marketing leads including inactive customers using hierarchical clustering algorithm.", + "Generate clusters from customer purchase data and returns in CSV format for further analysis." + ] + }, + "tags": [ + "marketing", + "automation", + "clustering", + "customer-segmentation", + "campaign-optimization", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"customerData\":[{\"id\":\"c1\",\"age\":34,\"location\":\"NY\",\"purchaseHistory\":5,\"lastActiveDays\":10},{\"id\":\"c2\",\"age\":28,\"location\":\"CA\",\"purchaseHistory\":2,\"lastActiveDays\":50}],\"attributes\":[\"age\",\"location\",\"purchaseHistory\"],\"clusteringAlgorithm\":\"k-means\",\"numberOfClusters\":3,\"includeInactiveCustomers\":false,\"outputFormat\":\"JSON\"}", + "description": "Cluster customers by age, location, and purchase history using k-means into 3 clusters excluding inactive customers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "marketing-automation.buildPackage", + "description": "Builds a complete marketing automation package by integrating selected campaign assets, targeting rules, scheduling details, and analytic tracking scripts into a deployable bundle. Accepts inputs like campaign content, audience segments, channel preferences, and timing to output a ready-to-deploy ZIP package for marketing platforms.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name identifier of the marketing campaign to bundle.", + "required": true, + "defaultValue": "" + }, + { + "name": "assets", + "type": "array", + "description": "An array of campaign asset objects (e.g., emails, landing pages, creatives) including their content and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetSegments", + "type": "array", + "description": "List of audience segment identifiers or definitions to target within the package.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelPreferences", + "type": "object", + "description": "Preferences for marketing channels to include in the package (e.g., email:true, sms:false).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "schedule", + "type": "object", + "description": "Scheduling information specifying campaign start, end, and any recurring timing rules.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "trackingScripts", + "type": "array", + "description": "List of analytics or tracking scripts and configurations to embed within the package.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output package format, e.g., 'zip' or 'tar'. Defaults to 'zip'.", + "required": false, + "defaultValue": "zip" + } + ], + "returns": { + "type": "object", + "description": "An object containing the package file as a base64 encoded string, package metadata, and any warnings or errors encountered during package creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assemble all components of a marketing campaign—assets, audience targeting, scheduling, and analytics—into a unified deployable package to automate deployment across platforms. It is particularly useful for preparing campaigns for execution or for export to other marketing systems.", + "limitations": "This tool does not handle live deployment or campaign execution; it only creates the package. It cannot modify assets or create content, only bundle provided inputs.", + "examples": [ + "Build a marketing package for campaign 'SummerSale' including email templates and social media posts targeting segment 'YoungAdults', scheduled to start next week, output as ZIP.", + "Prepare a package with custom tracking codes embedded for analytic platforms, targeting multiple segments via email and SMS channels.", + "Create a deployment package for a campaign combining landing pages and ads with specific timing for launch and recurring sends." + ] + }, + "tags": [ + "marketing", + "automation", + "campaign", + "package", + "build", + "deployment", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"HolidayPromo2024\",\"assets\":[{\"type\":\"email\",\"content\":\"...\",\"name\":\"PromoEmail1\"},{\"type\":\"landingPage\",\"content\":\"...\",\"name\":\"LandingPage1\"}],\"targetSegments\":[\"loyalCustomers\",\"newSubscribers\"],\"channelPreferences\":{\"email\":true,\"sms\":false},\"schedule\":{\"start\":\"2024-12-01T08:00:00Z\",\"end\":\"2024-12-31T23:59:59Z\"},\"trackingScripts\":[{\"name\":\"googleAnalytics\",\"code\":\"UA-XXXX\",\"config\":{} }],\"outputFormat\":\"zip\"}", + "description": "Building a holiday campaign package with email and landing page assets targeting specific segments for a December campaign." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "marketing-automation.generateConversion", + "description": "Generates detailed conversion analytics reports based on marketing campaign data. Accepts inputs such as campaign identifiers, date ranges, traffic sources, and conversion goals. Processes the data to calculate conversion rates, attribution metrics, and ROI. Outputs structured conversion summary with key performance indicators and insights.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier for the marketing campaign to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "trafficSources", + "type": "array", + "description": "Array of traffic source names or IDs to filter the data (e.g., ['google', 'facebook']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "conversionGoal", + "type": "string", + "description": "Specific conversion event or goal to measure (e.g., 'purchase', 'signup').", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAttribution", + "type": "boolean", + "description": "Whether to include attribution modeling data in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for ROI and revenue metrics (e.g., 'USD').", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing conversion rate, total conversions, revenue, ROI, attribution breakdowns, and insights summary." + }, + "aiAgent": { + "useCase": "Use this tool to automate generation of comprehensive conversion reports for marketing campaigns over specified time periods and traffic sources. It helps evaluate campaign effectiveness, identify high-performing channels, and supports data-driven budget allocation decisions.", + "limitations": "Does not collect raw event data; requires preprocessed campaign metrics data input. Attribution models are limited to standard types and do not cover custom algorithms.", + "examples": [ + "Generate conversion metrics for campaign 'cmp_123' from 2024-01-01 to 2024-03-31 including Google and Facebook traffic sources.", + "Get conversion report for goal 'purchase' in campaign 'cmp_789' for last quarter with attribution details.", + "Produce ROI and conversion summary for campaign 'cmp_456' over January 2024 only." + ] + }, + "tags": [ + "marketing", + "conversion", + "analytics", + "automation", + "campaign", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"cmp_123\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"trafficSources\":[\"google\",\"facebook\"],\"conversionGoal\":\"purchase\",\"includeAttribution\":true,\"currency\":\"USD\"}", + "description": "Generate a conversion report for campaign 'cmp_123' over Q1 2024, focusing on purchase goals from Google and Facebook with attribution data included." + }, + { + "inputJson": "{\"campaignId\":\"cmp_789\",\"startDate\":\"2024-04-01\",\"endDate\":\"2024-06-30\",\"conversionGoal\":\"signup\",\"includeAttribution\":false}", + "description": "Analyze sign-up conversion rates for campaign 'cmp_789' for the second quarter of 2024 without attribution modeling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "marketing-automation.generateGraph", + "description": "Generates customizable marketing analytics graphs based on campaign data input. Accepts parameters including data metrics, graph type (line, bar, pie), date ranges, and styling options. Outputs a JSON object with graph configuration and rendered image URL for embedding in reports or dashboards.", + "category": "marketing-automation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing marketing data points, each including timestamp and metric values (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, e.g., 'line', 'bar', or 'pie'.", + "required": true, + "defaultValue": "line" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted date string representing the start of the data range to include.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted date string representing the end of the data range to include.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title text to display on the graph.", + "required": false, + "defaultValue": "Marketing Campaign Graph" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X-axis of the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y-axis of the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme name or hex codes to style the graph lines, bars, or slices.", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to display a legend on the graph.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the graph configuration details and a URL to the rendered graph image suitable for embedding or download." + }, + "aiAgent": { + "useCase": "Use this tool when generating visual representations of marketing campaign performance metrics such as clicks, conversions, or impressions over specified time periods. It automates the creation of standardized graphs tailored to marketing data to enhance reports or dashboards.", + "limitations": "Does not analyze raw marketing data trends or provide predictive insights; focuses solely on graph generation from provided data. Does not support fully interactive or dynamic graphs.", + "examples": [ + "Generate a line graph showing daily conversion rates from the past month.", + "Create a pie chart of user acquisition sources during last quarter.", + "Produce a bar chart comparing click-through rates by campaign segment for the current year." + ] + }, + "tags": [ + "marketing", + "automation", + "graph", + "data-visualization", + "analytics", + "campaign", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-05-01\",\"clicks\":120,\"impressions\":1000},{\"timestamp\":\"2024-05-02\",\"clicks\":150,\"impressions\":1100}],\"graphType\":\"line\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-02\",\"title\":\"Daily Clicks\",\"xAxisLabel\":\"Date\",\"yAxisLabel\":\"Number of Clicks\",\"colorScheme\":\"blue\",\"includeLegend\":true}", + "description": "Line graph showing daily clicks over two days." + }, + { + "inputJson": "{\"data\":[{\"source\":\"Facebook\",\"conversions\":200},{\"source\":\"Google\",\"conversions\":350}],\"graphType\":\"pie\",\"title\":\"Conversions by Source\",\"includeLegend\":true}", + "description": "Pie chart illustrating conversion distribution by acquisition source." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "marketing-automation.generateDiagram", + "description": "Generates customizable diagrams visualizing marketing campaign structures and workflows from input campaign data, including channels, stages, and actions. Accepts structured campaign definitions as JSON and produces a diagram image URL or SVG markup illustrating the marketing process flow.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "object", + "description": "Structured JSON object describing the marketing campaign elements, including stages, channels, and actions.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to generate (e.g., flowchart, funnel, journey map).", + "required": false, + "defaultValue": "flowchart" + }, + { + "name": "includeMetrics", + "type": "boolean", + "description": "Whether to annotate the diagram with key performance metrics if provided in campaign data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the returned diagram, either 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "highlightStages", + "type": "array", + "description": "Optional list of campaign stage names to highlight in the diagram.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme for the diagram (e.g., 'default', 'dark', 'corporate').", + "required": false, + "defaultValue": "default" + } + ], + "returns": { + "type": "object", + "description": "An object containing the diagram output including a URL or inline SVG markup and metadata about the diagram type and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize marketing campaign structures or workflows to aid analysis, presentation, or optimization. It helps convert abstract campaign data into easy-to-understand visual diagrams that illustrate steps, channels, and user interaction flows in marketing automation setups.", + "limitations": "The tool cannot generate textual campaign strategy or detailed performance reports; it only produces diagrams based on structured input data. Complex or unstructured campaign descriptions must be preprocessed externally.", + "examples": [ + "Generate a flowchart diagram of a multi-channel email and social media campaign from JSON description.", + "Create a funnel diagram highlighting stages with conversion metrics for a lead nurturing campaign.", + "Produce an SVG journey map diagram emphasizing retargeting stages using a specified corporate color scheme." + ] + }, + "tags": [ + "marketing", + "automation", + "diagram", + "visualization", + "campaign", + "workflow", + "flowchart", + "funnel" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":{\"stages\":[{\"name\":\"Awareness\",\"actions\":[\"Email Blast\",\"Social Ads\"]},{\"name\":\"Consideration\",\"actions\":[\"Webinar\",\"Retargeting\"]},{\"name\":\"Conversion\",\"actions\":[\"Personalized Offers\"]}]},\"diagramType\":\"flowchart\",\"includeMetrics\":false,\"outputFormat\":\"svg\",\"highlightStages\":[\"Consideration\"],\"colorScheme\":\"default\"}", + "description": "Generate a flowchart diagram showing stages and actions of a marketing campaign, highlighting the 'Consideration' stage." + }, + { + "inputJson": "{\"campaignData\":{\"stages\":[{\"name\":\"Top Funnel\",\"actions\":[\"Video Ads\",\"Display Marketing\"]},{\"name\":\"Middle Funnel\",\"actions\":[\"Email Drip\",\"Content Marketing\"]},{\"name\":\"Bottom Funnel\",\"actions\":[\"Sales Calls\"]}],\"metrics\":{\"Top Funnel\":{\"reach\":100000,\"clicks\":5000},\"Middle Funnel\":{\"leads\":1500},\"Bottom Funnel\":{\"conversions\":300}}},\"diagramType\":\"funnel\",\"includeMetrics\":true,\"outputFormat\":\"png\",\"highlightStages\":[],\"colorScheme\":\"corporate\"}", + "description": "Create a funnel diagram with included conversion metrics in PNG format using a corporate color scheme." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "marketing-automation.generateQuote", + "description": "Generates a compelling marketing quote tailored to a specific industry, tone, and key message. Accepts inputs such as target industry, tone style (e.g., inspirational, professional), and core message keywords. Processes these inputs to produce a concise, impactful marketing quote suitable for campaigns or social media.", + "category": "marketing-automation", + "parameters": [ + { + "name": "industry", + "type": "string", + "description": "The target industry for which the marketing quote is intended, e.g., technology, healthcare.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style of the quote such as inspirational, professional, casual, or humorous.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "An array of key message words or phrases to include in the quote, guiding thematic relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "The maximum length of the generated quote in characters to fit specific campaign needs.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing quote string and metadata such as length and tone used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate marketing quotes or taglines customized for specific industries and emotional tones to enhance campaign relevance and engagement. Ideal for automated marketing content creation or social media post preparation.", + "limitations": "The tool may not fully capture highly niche industry jargon or produce quotes indistinguishable from generic phrases without additional context or inputs.", + "examples": [ + "Generate a professional, concise quote for the healthcare industry focusing on care and innovation.", + "Create an inspirational marketing quote for the technology sector highlighting progress and empowerment." + ] + }, + "tags": [ + "marketing", + "automation", + "content-generation", + "quote", + "branding", + "campaign", + "social-media" + ], + "examples": [ + { + "inputJson": "{\"industry\":\"technology\",\"tone\":\"inspirational\",\"keywords\":[\"innovation\",\"future\"],\"maxLength\":120}", + "description": "Generate an inspirational quote for the technology industry emphasizing innovation and future orientation." + }, + { + "inputJson": "{\"industry\":\"healthcare\",\"tone\":\"professional\",\"keywords\":[\"care\",\"trust\",\"quality\"],\"maxLength\":100}", + "description": "Produce a professional marketing quote focused on care, trust, and quality for healthcare campaigns." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "marketing-automation.generateAnomaly", + "description": "Generates anomaly detection reports for marketing campaign data by analyzing time series or categorical metrics such as click-through rates, conversion rates, or impressions. Takes input datasets and parameters specifying the metric, time range, and sensitivity to identify unusual deviations. Outputs detected anomalies with scores and contextual details for further investigation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of marketing data records to analyze, each with timestamp and metric values.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricName", + "type": "string", + "description": "The name of the metric to analyze for anomalies, e.g., 'clickThroughRate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "ISO 8601 start datetime to filter data before analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "ISO 8601 end datetime to filter data before analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Threshold for anomaly detection sensitivity, between 0 (low) and 1 (high). Higher sensitivity detects more anomalies but may increase false positives.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "minAnomalyScore", + "type": "number", + "description": "Minimum anomaly score threshold to report anomalies (0 to 1).", + "required": false, + "defaultValue": "0.5" + } + ], + "returns": { + "type": "object", + "description": "An object with detected anomalies, each containing timestamp, metric value, anomaly score, and description." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing marketing campaign KPIs to detect unusual changes or deviations which may indicate issues or opportunities, such as sudden drops in conversion rates or spikes in click-through rates. It is helpful for automated monitoring and alerting systems.", + "limitations": "This tool does not provide root cause analysis or causal explanations for the anomalies detected. It relies on quality input data and may not detect anomalies in very sparse or noisy datasets.", + "examples": [ + "Detect anomalies in recent 30 days' click-through rate data with medium sensitivity.", + "Analyze conversion rates anomaly from a dataset spanning last quarter.", + "Identify unusual impressions count changes with high sensitivity for alerting." + ] + }, + "tags": [ + "marketing", + "automation", + "anomaly-detection", + "analytics", + "campaign-monitoring", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"clickThroughRate\":0.05},{\"timestamp\":\"2024-05-02T00:00:00Z\",\"clickThroughRate\":0.045},{\"timestamp\":\"2024-05-03T00:00:00Z\",\"clickThroughRate\":0.12}],\"metricName\":\"clickThroughRate\",\"timeRangeStart\":\"2024-05-01T00:00:00Z\",\"timeRangeEnd\":\"2024-05-05T00:00:00Z\",\"sensitivity\":0.8}", + "description": "Input dataset with daily click-through rates containing a spike anomaly on May 3." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "marketing-automation.generateReadme", + "description": "Generates a detailed and customizable README document for marketing automation tools or campaigns. Accepts basic project information, feature descriptions, setup instructions, and usage guidelines; processes these to produce a formatted markdown README file for documentation and onboarding purposes.", + "category": "marketing-automation", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the marketing automation project or tool.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A concise description of what the project or campaign accomplishes.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "An array of key features or functionalities of the marketing automation tool.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "setupInstructions", + "type": "string", + "description": "Step-by-step instructions to set up or deploy the marketing tool or campaign automation.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageGuidelines", + "type": "string", + "description": "Instructions or examples on how to operate or use the tool effectively.", + "required": false, + "defaultValue": "" + }, + { + "name": "prerequisites", + "type": "string", + "description": "List of prerequisites or dependencies needed before using the tool.", + "required": false, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Information for contacting support or the development team related to the project.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content in markdown format under the key 'readmeContent'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate comprehensive README documentation for marketing automation projects, campaigns, or tools, especially to onboard new users or team members quickly. It structures project information into a clear markdown readme file for distribution or repository inclusion.", + "limitations": "This tool generates static documentation based on provided inputs but cannot fetch live data or dynamically update existing README files in repositories.", + "examples": [ + "Generate a README for a new email drip campaign automation tool including features and setup.", + "Create documentation for a social media automation framework with usage guidelines.", + "Produce a README for a marketing analytics dashboard project with prerequisites and contact info." + ] + }, + "tags": [ + "marketing", + "automation", + "documentation", + "README", + "generate", + "marketing-campaign", + "toolkit" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"EmailDripAutomator\",\"projectDescription\":\"Automates sending personalized drip email campaigns to segmented customer lists.\",\"features\":[\"Segmentation based on user behavior\",\"Drag-and-drop email sequence builder\",\"Analytics dashboard for campaign performance\"],\"setupInstructions\":\"1. Install dependencies via npm\\n2. Configure SMTP settings in config.json\\n3. Import customer CSV files\\n4. Launch the tool with \\\"npm start\\\"\",\"usageGuidelines\":\"Use the sequence builder to create emails, schedule sending, and monitor results via dashboard.\",\"prerequisites\":\"Node.js >=12, SMTP server details, Customer email list as CSV.\",\"contactInfo\":\"support@emailedripautomator.com\"}", + "description": "Generates a README for an email drip campaign automation tool with detailed features and setup." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "marketing-automation.createAnomaly", + "description": "Detects anomalies in marketing campaign performance metrics by analyzing time series data such as clicks, impressions, conversions, and revenue. Accepts historical campaign data, identifies statistically significant deviations or unusual patterns, and outputs detailed anomaly reports for further investigation or automated alerting.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "The performance metric to analyze for anomalies (e.g., clicks, impressions, conversions).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted start date for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted end date for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity threshold for anomaly detection, between 0.0 (least sensitive) and 1.0 (most sensitive).", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "granularity", + "type": "string", + "description": "Time interval for data aggregation and anomaly detection (e.g., daily, hourly).", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeHistoricalBaseline", + "type": "boolean", + "description": "Whether to include historical baseline data for contextual anomaly comparison.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured anomaly detection results, including anomaly timestamps, detected values, expected baselines, confidence scores, and anomaly severity classification." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring marketing campaign metrics over time to automatically detect unexpected drops or spikes indicating potential issues or opportunities, enabling timely interventions or optimizations. It helps identify abnormal behavior in key performance indicators without manual analysis.", + "limitations": "This tool does not diagnose root causes of anomalies or suggest corrective actions. It relies on the quality and completeness of input data and may produce false positives or miss context-specific anomalies.", + "examples": [ + "Detect anomalies in click-through rates for campaign 'XYZ123' over the last month.", + "Analyze daily conversions anomalies in campaign 'SummerSale' between given start and end dates.", + "Monitor hourly revenue anomalies with high sensitivity in a high-traffic campaign." + ] + }, + "tags": [ + "marketing", + "anomaly detection", + "campaign analytics", + "time series", + "automation", + "performance monitoring" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"CAMPAIGN_001\",\"metric\":\"clicks\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\",\"sensitivity\":0.8}", + "description": "Detect anomalies in daily clicks for campaign CAMPAIGN_001 during May 2024 with a high sensitivity threshold." + }, + { + "inputJson": "{\"campaignId\":\"SUMMER2024\",\"metric\":\"conversions\",\"startDate\":\"2024-06-01T00:00:00Z\",\"endDate\":\"2024-06-07T23:59:59Z\",\"granularity\":\"hourly\",\"includeHistoricalBaseline\":false}", + "description": "Analyze hourly conversion anomalies for the SUMMER2024 campaign during the first week of June 2024, comparing only recent data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "marketing-automation.createVulnerability", + "description": "This tool accepts details about a marketing campaign's automated processes and identifies potential security vulnerabilities in the automation workflows, such as exposed APIs, weak authentication steps, or data leak risks. It analyzes the input configuration and outputs a structured report listing found vulnerabilities with severity and remediation suggestions.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier for the marketing campaign to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "automationConfig", + "type": "object", + "description": "Configuration object describing the marketing automation setup including triggers, actions, integrations, and authentication methods.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSeverity", + "type": "boolean", + "description": "Whether to include severity rating for each detected vulnerability in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of vulnerabilities to report, in order of severity.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected vulnerabilities, each with id, description, severity (if requested), impacted components, and recommended mitigation steps." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing marketing campaign automation workflows to proactively identify and address security vulnerabilities such as exposed API keys, insufficient access controls, or data handling weaknesses before deployment. It helps prevent data breaches or unauthorized access related to marketing automation.", + "limitations": "This tool does not perform live penetration testing or scan external infrastructure; it analyzes only the provided automation configuration data. It may not detect vulnerabilities from underlying platform bugs or third-party service flaws.", + "examples": [ + "Find vulnerabilities in the automation workflow for campaign ID 'camp123' using given configuration data.", + "List up to 5 security issues found in the marketing automation setup for campaign 'summer_sale'.", + "Analyze the marketing automation config for exposed API keys and provide severity ratings." + ] + }, + "tags": [ + "marketing", + "automation", + "security", + "vulnerability", + "analysis", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"camp123\",\"automationConfig\":{\"triggers\":[\"email_open\"],\"actions\":[{\"type\":\"send_sms\",\"requiresAuth\":true}],\"integrations\":[{\"service\":\"CRM\",\"authMethod\":\"OAuth\"}]},\"includeSeverity\":true,\"maxResults\":5}", + "description": "Analyze campaign 123's automation workflow to report up to 5 vulnerabilities with severity." + }, + { + "inputJson": "{\"campaignId\":\"summer_sale\",\"automationConfig\":{\"triggers\":[\"form_submit\"],\"actions\":[{\"type\":\"add_to_list\"}],\"integrations\":[{\"service\":\"MailChimp\",\"authMethod\":\"API Key\"}]},\"includeSeverity\":false,\"maxResults\":3}", + "description": "Detect up to 3 vulnerabilities in summer_sale campaign automation without severity ratings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "marketing-automation.createExpense", + "description": "Creates a marketing campaign expense record by accepting details such as campaign ID, amount, currency, date, category, and optional notes. Processes the input to validate and store an expense entry associated with a marketing campaign. Outputs a confirmation with the created expense ID and summary.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign this expense is attributed to.", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "Monetary amount of the expense in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) for the expense amount, e.g. USD, EUR.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "expenseDate", + "type": "string", + "description": "Date the expense was incurred, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "Expense category such as 'advertising', 'software', 'consulting'.", + "required": true, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Optional additional information about the expense.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Confirmation object including the assigned expenseId, campaignId, amount, currency, date, category, and notes as recorded." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to record or register a new expense associated with a marketing campaign to keep financial tracking consistent and up to date. It helps automate and standardize expense entry from unstructured input or integration with other marketing data systems.", + "limitations": "This tool does not perform payment processing or verify transaction authenticity. It also does not analyze expenses or generate reports.", + "examples": [ + "Record a new advertising expense of $1200 for campaign 'spring_sale_2024' dated March 5, 2024.", + "Log an expense of 500 EUR for consulting services linked to campaign 'euro_launch'.", + "Create a software subscription expense of $99 USD for campaign 'mobile_app_ad' with notes explaining the vendor subscription detail." + ] + }, + "tags": [ + "marketing", + "expense", + "automation", + "campaign", + "financial", + "record", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"spring_sale_2024\",\"amount\":1200,\"currency\":\"USD\",\"expenseDate\":\"2024-03-05\",\"category\":\"advertising\",\"notes\":\"Google Ads spend for March.\"}", + "description": "Creating an advertising expense for a spring sale marketing campaign." + }, + { + "inputJson": "{\"campaignId\":\"euro_launch\",\"amount\":500,\"currency\":\"EUR\",\"expenseDate\":\"2024-02-15\",\"category\":\"consulting\",\"notes\":\"Consulting fees for campaign strategy.\"}", + "description": "Logging a consulting expense for a European product launch campaign." + }, + { + "inputJson": "{\"campaignId\":\"mobile_app_ad\",\"amount\":99,\"currency\":\"USD\",\"expenseDate\":\"2024-04-01\",\"category\":\"software\",\"notes\":\"Monthly subscription for ad tracking software.\"}", + "description": "Creating a software subscription expense for mobile app advertising campaign." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "marketing-automation.createChannel", + "description": "Creates a new marketing communication channel in an automation platform. Accepts inputs such as channel name, type (e.g., email, SMS, push notification), target audience segments, and configuration settings. Outputs a confirmation with channel ID and summary of created channel settings.", + "category": "marketing-automation", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "The unique name for the new marketing channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel to create, e.g., 'email', 'sms', 'push'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetSegments", + "type": "array", + "description": "List of audience segment identifiers that the channel will target.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "configSettings", + "type": "object", + "description": "Configuration details specific to the channel type, such as sender information, messaging templates, or opt-in requirements.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag to immediately activate the channel upon creation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the unique channel ID, creation status, and summary of channel details including name, type, and target segments." + }, + "aiAgent": { + "useCase": "Use this tool when setting up new communication channels in a marketing automation workflow. It enables automated creation and configuration of channels to streamline campaign execution and audience targeting.", + "limitations": "This tool does not handle message content creation or scheduling campaigns within the channel. It focuses solely on setting up the channel framework.", + "examples": [ + "Create an email channel named 'Spring Sale Emails' targeting segments 'promo_customers' and 'newsletter_subscribers'.", + "Set up a push notification channel for app users with configurations for immediate activation.", + "Add a SMS channel with opt-in configuration but keep it inactive for testing purposes." + ] + }, + "tags": [ + "marketing", + "automation", + "channel", + "communication", + "campaign", + "creation" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"Spring Sale Emails\",\"channelType\":\"email\",\"targetSegments\":[\"promo_customers\",\"newsletter_subscribers\"],\"configSettings\":{\"sender\":\"sales@shop.com\",\"templateId\":\"spring_sale_01\"},\"isActive\":true}", + "description": "Create an active email channel named 'Spring Sale Emails' targeting two audience segments with specified sender and template." + }, + { + "inputJson": "{\"channelName\":\"App Push Notifications\",\"channelType\":\"push\",\"targetSegments\":[\"app_users\"],\"configSettings\":{\"priority\":\"high\",\"sound\":\"default\"},\"isActive\":false}", + "description": "Set up an inactive push notification channel targeting app users with high priority and default sound." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "marketing-automation.createConversion", + "description": "This tool accepts details of a marketing campaign's conversion event including event type, timestamp, campaign ID, user ID, and optional metadata. It processes and records the conversion data into the analytics system, returning a confirmation with a unique conversion record ID and status. It enables tracking and attribution of conversions for marketing effectiveness analysis.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign associated with the conversion event.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier of the user who completed the conversion event.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of conversion event, e.g., purchase, signup, download.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventTimestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp when the conversion occurred.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data related to the conversion event, such as product details or referral source.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique conversionRecordId and the processing status confirming the conversion has been recorded." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to log a marketing conversion event for tracking purposes, such as recording a user purchase, signup, or download as part of campaign performance measurement. It integrates conversion data into the analytics backend for attribution and reporting.", + "limitations": "This tool does not perform data validation beyond format checks, does not calculate conversion metrics itself, and cannot analyze or interpret conversion performance—only record events.", + "examples": [ + "Create a conversion record for a user who just completed a signup in campaign 'camp123'.", + "Log a purchase event conversion for user 'user456' at a specific date/time in campaign 'spring_sale'.", + "Record a download event conversion including product and referral metadata for campaign 'launch2024'." + ] + }, + "tags": [ + "marketing", + "automation", + "conversion", + "analytics", + "campaign", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"camp123\",\"userId\":\"user789\",\"eventType\":\"signup\",\"eventTimestamp\":\"2024-04-23T15:30:00Z\",\"metadata\":{}}", + "description": "Creating a signup conversion for user789 in campaign camp123 with timestamp." + }, + { + "inputJson": "{\"campaignId\":\"spring_sale\",\"userId\":\"user456\",\"eventType\":\"purchase\",\"eventTimestamp\":\"2024-06-05T12:00:00Z\",\"metadata\":{\"productId\":\"prod987\",\"amount\":49.99}}", + "description": "Logging a purchase conversion with product details and amount in a campaign." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "marketing-automation.createCache", + "description": "Creates and configures a caching layer for marketing automation data to improve performance and reduce redundant data fetches. Accepts cache type, size limits, and expiration policies as input, sets up the cache accordingly, and returns the cache configuration summary and status.", + "category": "marketing-automation", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create, e.g., 'memory', 'redis', or 'file'.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSizeMB", + "type": "number", + "description": "Maximum cache size in megabytes to limit memory usage.", + "required": false, + "defaultValue": "100" + }, + { + "name": "defaultExpirationSeconds", + "type": "number", + "description": "Default expiration time in seconds for cached items.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "enablePersistence", + "type": "boolean", + "description": "Flag to enable persistence of cache data across restarts if supported by cache type.", + "required": false, + "defaultValue": "false" + }, + { + "name": "allowedKeys", + "type": "array", + "description": "Optional list of keys or key patterns to restrict what data can be cached.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the configured cache type, maximum size, expiration policy, persistence status, and initialization success status with message." + }, + "aiAgent": { + "useCase": "Use this tool when setting up or optimizing a marketing automation platform that frequently accesses dynamic data, in order to reduce latency and resource usage by caching API responses or computed results. Ideal for environments where frequent data retrieval impacts performance.", + "limitations": "Does not provide cache data querying or invalidation methods beyond initial expiration settings. Does not handle cluster management or distributed coordination beyond basic persistence. Requires underlying infrastructure support for chosen cacheType.", + "examples": [ + "Create an in-memory cache with 200MB max size and 30-minute expiration.", + "Set up a Redis cache with persistence enabled and 1GB max size.", + "Create a file-based cache limited to specific keys with 10-minute expiration." + ] + }, + "tags": [ + "marketing", + "cache", + "automation", + "performance", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"memory\",\"maxSizeMB\":200,\"defaultExpirationSeconds\":1800,\"enablePersistence\":false}", + "description": "Create an in-memory cache with 200MB max size and 30-minute expiration." + }, + { + "inputJson": "{\"cacheType\":\"redis\",\"maxSizeMB\":1024,\"defaultExpirationSeconds\":3600,\"enablePersistence\":true}", + "description": "Set up a Redis cache with persistence enabled and 1GB max size." + }, + { + "inputJson": "{\"cacheType\":\"file\",\"maxSizeMB\":500,\"defaultExpirationSeconds\":600,\"allowedKeys\":[\"userProfile\",\"campaignStats\"]}", + "description": "Create a file-based cache limited to certain marketing keys with 10-minute expiration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "marketing-automation.createCertificate", + "description": "Generates a digital marketing certificate to authenticate campaign assets or partner credentials. Accepts inputs like certificate holder details, validity period, and signature keys, then creates an X.509 compatible certificate file output in PEM or DER format for secure marketing communications.", + "category": "marketing-automation", + "parameters": [ + { + "name": "certificateHolderName", + "type": "string", + "description": "Name of the entity (person or organization) the certificate will be issued to.", + "required": true, + "defaultValue": "" + }, + { + "name": "validFrom", + "type": "string", + "description": "ISO 8601 formatted start date of the certificate validity period.", + "required": true, + "defaultValue": "" + }, + { + "name": "validTo", + "type": "string", + "description": "ISO 8601 formatted end date of certificate validity.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicKey", + "type": "string", + "description": "Base64 encoded public key to include in the certificate.", + "required": true, + "defaultValue": "" + }, + { + "name": "issuerName", + "type": "string", + "description": "Name of the certificate issuer or authority.", + "required": true, + "defaultValue": "" + }, + { + "name": "signatureAlgorithm", + "type": "string", + "description": "Algorithm used to sign the certificate (e.g., SHA256withRSA).", + "required": false, + "defaultValue": "SHA256withRSA" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output encoding format for the certificate file (PEM or DER).", + "required": false, + "defaultValue": "PEM" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated certificate encoded as a string in the specified format and related metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to issue digital certificates to authenticate marketing campaign assets, partners, or digital documents securely. It helps automate certificate generation with customizable validity and cryptographic parameters to ensure trusted communications and compliance.", + "limitations": "This tool does not manage certificate revocation or certificate authority infrastructure. It generates standalone certificates and assumes valid cryptographic input keys are provided.", + "examples": [ + "Create a certificate for a marketing partner valid for one year using given public key.", + "Issue a certificate to authenticate a campaign’s digital assets with SHA256withRSA signature.", + "Generate a DER format certificate for a marketing event valid during the event dates." + ] + }, + "tags": [ + "certificate", + "digital security", + "marketing automation", + "authentication", + "campaign security", + "crypto" + ], + "examples": [ + { + "inputJson": "{\"certificateHolderName\":\"Acme Marketing Inc.\",\"validFrom\":\"2024-06-01T00:00:00Z\",\"validTo\":\"2025-06-01T00:00:00Z\",\"publicKey\":\"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA7...\",\"issuerName\":\"Marketing Cert Authority\",\"signatureAlgorithm\":\"SHA256withRSA\",\"outputFormat\":\"PEM\"}", + "description": "Generate a PEM certificate for Acme Marketing valid for one year." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "marketing-automation.createYAML", + "description": "Generates a YAML formatted marketing campaign configuration from structured campaign data including target audience, channels, content, schedule, and budget. Accepts an object representing the campaign details, processes it into a clean YAML string to be used for automation platforms or documentation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name of the marketing campaign to be included as an identifier in the YAML.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "object", + "description": "Details about the target audience demographics and segments (e.g., age range, locations, interests).", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of marketing channels to use (e.g., email, socialMedia, sms) with optional channel-specific settings.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "object", + "description": "Content templates or references for each channel outlining messages, images, or links to be used.", + "required": true, + "defaultValue": "" + }, + { + "name": "schedule", + "type": "object", + "description": "Campaign timing details including startDate, endDate, and optional frequency or send times.", + "required": true, + "defaultValue": "" + }, + { + "name": "budget", + "type": "number", + "description": "Total budget allocated for the marketing campaign in USD or specified currency.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeTracking", + "type": "boolean", + "description": "Flag indicating whether to include tracking parameters and analytics configuration.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'yamlString' that holds the formatted YAML string representing the marketing campaign configuration." + }, + "aiAgent": { + "useCase": "Use this tool to convert structured marketing campaign details into a cleanly formatted YAML configuration file for integration with marketing automation platforms or as clear documentation for campaign setup. It helps agents preparing campaign definitions for deployment or sharing with stakeholders requiring a portable config format.", + "limitations": "Cannot validate channel-specific content correctness beyond structure; does not execute or deploy the campaign, only formats data into YAML.", + "examples": [ + "Create a YAML config for an email and social media campaign targeting young adults with a two-week schedule and set budget.", + "Generate a YAML output for an SMS campaign with tracking enabled, focusing on location-based segments.", + "Produce a YAML document for a multichannel campaign including content templates and schedule without budget specified." + ] + }, + "tags": [ + "marketing", + "automation", + "yaml", + "campaign", + "configuration", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Spring Launch\",\"targetAudience\":{\"ageRange\":\"18-35\",\"locations\":[\"US\",\"CA\"],\"interests\":[\"fitness\",\"outdoors\"]},\"channels\":[{\"type\":\"email\",\"settings\":{\"sendTime\":\"08:00\"}},{\"type\":\"socialMedia\",\"settings\":{\"platforms\":[\"facebook\",\"instagram\"]}}],\"content\":{\"email\":{\"subject\":\"Welcome to Spring!\",\"body\":\"Check out our new spring collection.\"},\"socialMedia\":{\"post\":\"Join us for the Spring Launch event!\"}},\"schedule\":{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-14\"},\"budget\":15000,\"includeTracking\":true}", + "description": "Generate YAML for a spring launch marketing campaign with specified audience, channels, content, schedule, and budget." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "marketing-automation.createBlogPost", + "description": "Creates a well-structured blog post based on given topic, keywords, target audience, and style preferences. It accepts inputs defining the post theme, tone, and length, processes them using AI content generation techniques, and outputs a ready-to-use blog post draft formatted in markdown or plain text.", + "category": "marketing-automation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the blog post to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers, specifying demographics or interests to tailor the post style and content.", + "required": false, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords or phrases to include for SEO purposes and content relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "postLength", + "type": "number", + "description": "Approximate desired length of the blog post in words. For example, 500 for short post, 1500 for detailed article.", + "required": false, + "defaultValue": "800" + }, + { + "name": "tone", + "type": "string", + "description": "Tone or style of writing, such as casual, professional, friendly, persuasive, or technical.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeSections", + "type": "array", + "description": "Optional list of specific sections to include in the blog post (e.g., introduction, conclusion, FAQs). If empty or omitted, generates a standard structure.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Desired output format of the blog post, such as 'markdown' or 'plainText'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post content and metadata such as word count and recommended title." + }, + "aiAgent": { + "useCase": "Use this tool when needing to rapidly generate coherent and SEO-friendly blog post drafts tailored to a specific topic and audience. It helps automate content creation for marketing campaigns, reducing manual writing time and supporting consistent content strategy.", + "limitations": "The tool generates drafts which may require human review for factual accuracy, brand voice alignment, and compliance with legal or ethical standards. It does not perform final editing or optimization beyond initial content creation.", + "examples": [ + "Create a friendly, 1000-word blog post about benefits of remote work for tech professionals, including introduction and FAQs sections, in markdown.", + "Generate a 500-word professional blog post focusing on cybersecurity trends in 2024 with specified keywords in plain text.", + "Draft a persuasive blog post targeting small business owners about social media marketing strategies with suggested title and metadata." + ] + }, + "tags": [ + "marketing", + "content-generation", + "blog", + "automation", + "SEO", + "AI-writing" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Sustainable living tips for urban residents\",\"targetAudience\":\"Environmentally conscious city dwellers\",\"keywords\":[\"sustainability\",\"urban gardening\",\"eco-friendly\"],\"postLength\":800,\"tone\":\"friendly\",\"includeSections\":[\"introduction\",\"conclusion\"],\"format\":\"markdown\"}", + "description": "Generate an 800-word friendly blog post on sustainable living for urban residents, including an introduction and conclusion sections in markdown." + }, + { + "inputJson": "{\"topic\":\"Latest trends in AI marketing\",\"postLength\":1200,\"tone\":\"professional\",\"format\":\"plainText\"}", + "description": "Create a 1200-word professional blog post about the latest trends in AI marketing formatted as plain text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "marketing-automation.createTemplate", + "description": "Creates a customizable marketing campaign template based on user inputs such as campaign type, target audience, and desired content blocks. Outputs a structured JSON template defining sections like subject lines, body content, CTAs, and personalization tokens for automated campaign generation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign to create a template for, e.g., email, social media, SMS.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description or segment identifier representing the target audience for the campaign.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentBlocks", + "type": "array", + "description": "Array of content block types to include (e.g., header, bodyText, image, callToAction).", + "required": true, + "defaultValue": "[\"header\",\"bodyText\",\"callToAction\"]" + }, + { + "name": "includePersonalizationTokens", + "type": "boolean", + "description": "Whether to include personalization tokens (e.g., recipient name) in the template.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the template content (e.g., en, es).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the marketing campaign template, including sections with placeholders, recommended content types, and personalization elements." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a structured, reusable marketing campaign template tailored by campaign type and audience characteristics to accelerate campaign creation and ensure consistent messaging layout.", + "limitations": "This tool does not generate actual marketing content text or final designs but provides a scaffold/blueprint for campaign templates. It cannot customize complex dynamic content behaviors beyond basic personalization tokens.", + "examples": [ + "Create an email campaign template for a young adult segment including header, body, image, and call-to-action blocks.", + "Generate a social media campaign template without personalization tokens, focusing on concise content blocks.", + "Make an SMS campaign template in Spanish with personalized greeting tokens included." + ] + }, + "tags": [ + "marketing", + "automation", + "template", + "campaign", + "email", + "social-media", + "sms", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"targetAudience\":\"millennials\",\"contentBlocks\":[\"header\",\"bodyText\",\"image\",\"callToAction\"],\"includePersonalizationTokens\":true,\"language\":\"en\"}", + "description": "Generate an English email campaign template targeted at millennials with personalization tokens and typical content blocks including image." + }, + { + "inputJson": "{\"campaignType\":\"socialMedia\",\"targetAudience\":\"fitness-enthusiasts\",\"contentBlocks\":[\"header\",\"callToAction\"],\"includePersonalizationTokens\":false,\"language\":\"en\"}", + "description": "Create a simple social media campaign template without personalization tokens for fitness enthusiasts." + }, + { + "inputJson": "{\"campaignType\":\"sms\",\"targetAudience\":\"spanish-speaking-customers\",\"contentBlocks\":[\"bodyText\",\"callToAction\"],\"includePersonalizationTokens\":true,\"language\":\"es\"}", + "description": "Generate an SMS campaign template in Spanish for Spanish speaking customers including personalization tokens." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "marketing-automation.createDependency", + "description": "Creates and manages dependencies between marketing automation campaign components, such as triggers, actions, and conditions. Accepts input defining component IDs and the dependency type, validates logical consistency, and outputs a structured dependency object that integrates into campaign workflows.", + "category": "marketing-automation", + "parameters": [ + { + "name": "sourceComponentId", + "type": "string", + "description": "Unique identifier of the component that initiates the dependency (e.g., an action or trigger).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetComponentId", + "type": "string", + "description": "Unique identifier of the component dependent on the source component (e.g., a subsequent action).", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyType", + "type": "string", + "description": "Type of dependency, e.g., 'sequential', 'conditional', or 'parallel'.", + "required": true, + "defaultValue": "" + }, + { + "name": "condition", + "type": "string", + "description": "Optional logical condition that must be met for the dependency to be activated (expressed as a boolean expression).", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "number", + "description": "Priority level of the dependency; lower numbers run first.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created dependency, including source and target component IDs, dependency type, condition if specified, and assigned priority." + }, + "aiAgent": { + "useCase": "Use this tool when orchestrating complex marketing automation campaigns that require explicit and manageable ordering or conditional execution of campaign components. Helps ensure workflows properly link triggers to subsequent actions and conditions for accurate campaign execution.", + "limitations": "This tool does not execute campaign components or monitor live campaigns. It only manages dependency definitions and ensures logical consistency. Execution environment integration is required separately.", + "examples": [ + "Create a sequential dependency where sending an email depends on a lead scoring trigger.", + "Define a conditional dependency so that a follow-up message is sent only if the lead opened the previous email.", + "Set priority dependencies to control execution order in a multi-step campaign workflow." + ] + }, + "tags": [ + "marketing", + "automation", + "campaign", + "dependency", + "workflow", + "trigger", + "action" + ], + "examples": [ + { + "inputJson": "{\"sourceComponentId\":\"trigger_123\",\"targetComponentId\":\"action_456\",\"dependencyType\":\"sequential\",\"condition\":\"\",\"priority\":1}", + "description": "Create a sequential dependency where an action follows a trigger with priority 1." + }, + { + "inputJson": "{\"sourceComponentId\":\"action_789\",\"targetComponentId\":\"action_012\",\"dependencyType\":\"conditional\",\"condition\":\"contact.openedEmail == true\",\"priority\":0}", + "description": "Create a conditional dependency to trigger a follow-up action only if the previous email was opened." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "marketing-automation.createDiagram", + "description": "Creates a visual marketing flow diagram from structured input data describing campaign stages, channels, and actions. Accepts input as a JSON object detailing the sequence of marketing steps and optionally style preferences. Outputs a standardized diagram object with node and edge representations for integration or visualization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignFlow", + "type": "object", + "description": "Structured JSON describing the marketing campaign stages, channels, actions, and connections between steps. Required to generate the diagram.", + "required": true, + "defaultValue": "" + }, + { + "name": "stylePreferences", + "type": "object", + "description": "Optional styles for visual elements such as colors, shapes, and fonts in the diagram.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output diagram format, e.g., 'json', 'svg', or 'png'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object representing the marketing flow diagram that includes nodes, edges, and optionally the diagram rendered in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert a structured marketing campaign plan into a visual flow diagram for understanding, presentation, or further automation tasks. It helps visualize the overall strategy, channels, and sequences of marketing actions automatically from data inputs.", + "limitations": "This tool does not create detailed graphic designs or animations and relies on accurate and well-structured input data. It cannot generate campaign content or suggest marketing strategies, only represent given plans as diagrams.", + "examples": [ + "Generate a flow diagram from a JSON campaign outlining email and social media steps.", + "Create a marketing automation sequence diagram in SVG format.", + "Visualize a multi-channel campaign structure from input JSON data." + ] + }, + "tags": [ + "marketing", + "automation", + "diagram", + "visualization", + "campaign", + "flowchart", + "marketing-automation" + ], + "examples": [ + { + "inputJson": "{\"campaignFlow\":{\"nodes\":[{\"id\":\"start\",\"type\":\"start\",\"label\":\"Campaign Start\"},{\"id\":\"email1\",\"type\":\"email\",\"label\":\"Send Welcome Email\"},{\"id\":\"sms1\",\"type\":\"sms\",\"label\":\"Send SMS Reminder\"},{\"id\":\"end\",\"type\":\"end\",\"label\":\"Campaign End\"}],\"edges\":[{\"from\":\"start\",\"to\":\"email1\"},{\"from\":\"email1\",\"to\":\"sms1\"},{\"from\":\"sms1\",\"to\":\"end\"}]},\"stylePreferences\":{\"nodeColor\":\"#4CAF50\",\"edgeColor\":\"#9E9E9E\"},\"outputFormat\":\"json\"}", + "description": "Create a simple campaign flowchart diagram in JSON showing start, email, SMS, and end steps with green nodes and grey edges." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "sales-automation.analyzeSession", + "description": "Analyzes a sales interaction session based on input logs detailing participant actions, conversation transcripts, and timing data. Processes the input to extract metrics such as engagement score, sentiment trends, key topics discussed, and identifies potential sales opportunities. Returns a structured report summarizing these insights for improving sales strategies and training.", + "category": "sales-automation", + "parameters": [ + { + "name": "sessionLogs", + "type": "array", + "description": "An array of interaction events during the sales session including timestamps, speaker IDs, and actions such as messages or gestures.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionTranscript", + "type": "string", + "description": "Complete text transcript of the sales session conversation to perform sentiment and topic analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "participantIds", + "type": "array", + "description": "List of participant identifiers involved in the session for personalized analysis and attribution.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'es') of the session transcripts, to tailor natural language processing accordingly.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag to enable or disable sentiment analysis in the processing pipeline.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: 'basic', 'detailed', or 'comprehensive'. Affects breadth of metrics and insights generated.", + "required": false, + "defaultValue": "\"detailed\"" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive analysis report containing engagement metrics, sentiment timeline, key topics, opportunity scoring, and summary insights for the sales session." + }, + "aiAgent": { + "useCase": "Use this tool when a detailed evaluation of a sales interaction session is needed to gain insights on participant engagement, emotional tone, key discussion points, and potential sales opportunities. It helps improve sales strategies, train salespeople, and optimize follow-up actions based on session data.", + "limitations": "Cannot independently transcribe audio or video sessions; requires session transcript input. Analysis quality depends on transcript accuracy and completeness of session logs. Does not generate real-time feedback during live sessions.", + "examples": [ + "Analyze the sales session logs and transcript to determine customer sentiment trends and identify potential upsell opportunities.", + "Provide a summary report highlighting the key topics discussed during the sales call with engagement scores for each participant.", + "Evaluate the effectiveness of a recorded sales session focusing on emotional sentiment and conversation flow for training purposes." + ] + }, + "tags": [ + "sales", + "automation", + "analytics", + "session-analysis", + "sentiment-analysis", + "engagement", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"sessionLogs\":[{\"timestamp\":1625247600,\"speakerId\":\"agent1\",\"action\":\"greet\"},{\"timestamp\":1625247620,\"speakerId\":\"customer1\",\"action\":\"question\",\"content\":\"Can you tell me about your pricing?\"},{\"timestamp\":1625247650,\"speakerId\":\"agent1\",\"action\":\"response\",\"content\":\"Sure, we have three main pricing tiers...\"}],\"sessionTranscript\":\"Agent: Hello! How can I help you today? Customer: I'm interested in your pricing plans.\",\"participantIds\":[\"agent1\",\"customer1\"],\"language\":\"en\",\"includeSentimentAnalysis\":true,\"analysisDepth\":\"detailed\"}", + "description": "Analyzing a short sales session transcript with logs to extract engagement and sentiment insights." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "sales-automation.analyzeTrend", + "description": "Analyzes sales data trends over time by examining input metrics such as lead count, conversion rates, and revenue to identify growth patterns, seasonality, and anomalies. Accepts historical sales datasets and optional filters, then outputs actionable trend summaries with visualizable metrics and predictive insights.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesData", + "type": "array", + "description": "Historical sales records including date, lead count, revenue, and conversion rates to analyze trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of sales metrics to analyze such as 'leadCount', 'conversionRate', 'revenue'.", + "required": false, + "defaultValue": "[\"revenue\"]" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'startDate' and 'endDate' fields in ISO 8601 format to focus analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for trend analysis, e.g., 'daily', 'weekly', 'monthly'.", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "predictFuture", + "type": "boolean", + "description": "Whether to perform basic future trend predictions based on historical data.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized trend insights per metric, including trend direction, seasonality patterns, detected anomalies, and optionally short-term forecasts." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand how various sales metrics evolve over time to make informed strategic decisions, such as identifying peak sales periods, forecasting demand, or improving lead conversion strategies. It is well-suited for analyzing complex sales datasets with multiple metrics to extract actionable insights and temporal patterns.", + "limitations": "Does not perform raw data cleaning or validation; assumes input data quality is sufficient. Forecasting is basic and not suitable for long-term predictions. Does not replace expert domain analysis or human judgment.", + "examples": [ + "Analyze monthly revenue and conversion rate trends for Q1 2024.", + "Detect seasonality and any anomalies in weekly lead counts between January and June 2023.", + "Provide a 3-month revenue forecast based on past 2 years data with monthly granularity." + ] + }, + "tags": [ + "sales", + "automation", + "analytics", + "trend-analysis", + "forecasting", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"salesData\":[{\"date\":\"2024-01-01\",\"leadCount\":150,\"conversionRate\":0.05,\"revenue\":30000},{\"date\":\"2024-02-01\",\"leadCount\":180,\"conversionRate\":0.06,\"revenue\":35000}],\"metrics\":[\"revenue\",\"conversionRate\"],\"dateRange\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-02-28\"},\"granularity\":\"monthly\",\"predictFuture\":true}", + "description": "Analyze monthly revenue and conversion rate trends for the first two months of 2024 and predict future patterns." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "sales-automation.uploadCSV", + "description": "Uploads a CSV file containing sales leads or contact data into the sales automation platform. The tool parses the CSV, validates required fields, optionally maps CSV columns to platform fields, and imports the records, returning success status and detailed import summary.", + "category": "sales-automation", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV file content as a string to be uploaded and processed.", + "required": true, + "defaultValue": "" + }, + { + "name": "fieldMapping", + "type": "object", + "description": "An optional object mapping CSV column headers to system field names for correct data alignment.", + "required": false, + "defaultValue": "" + }, + { + "name": "duplicateCheckField", + "type": "string", + "description": "The name of the field to check duplicates against, e.g., email or phone number.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyOnCompletion", + "type": "boolean", + "description": "Whether to send a notification after the upload process completes.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the total number of records processed, number successfully imported, number of duplicates skipped, and array of any errors encountered during upload." + }, + "aiAgent": { + "useCase": "Use this tool when needing to import bulk lead or contact data formatted as CSV into the sales automation system efficiently. It helps automate data ingestion from external sources, ensuring data is mapped, validated, and duplicates handled per specified parameters.", + "limitations": "Does not perform advanced data cleansing beyond basic validation; large CSV files may require chunking; does not handle file uploads, only CSV content strings.", + "examples": [ + "Upload a CSV of new leads mapping 'Email' to the platform's contact email field and notify me when done.", + "Import contacts CSV without mapping, using 'email' field to avoid duplicates.", + "Upload a CSV and skip duplicates based on phone number field without sending a notification." + ] + }, + "tags": [ + "sales", + "automation", + "CSV", + "upload", + "lead-import", + "data-integration" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"Name,Email,Phone\\nJohn Doe,john@example.com,1234567890\\nJane Smith,jane@example.com,0987654321\",\"fieldMapping\":{\"Name\":\"fullName\",\"Email\":\"email\",\"Phone\":\"phoneNumber\"},\"duplicateCheckField\":\"email\",\"notifyOnCompletion\":true}", + "description": "Uploading a CSV with three fields mapped to system, checking duplicates by email, notify on completion." + }, + { + "inputJson": "{\"csvContent\":\"Name,Email\\nAlice,a@example.com\\nBob,b@example.com\",\"notifyOnCompletion\":false}", + "description": "Uploading a simple CSV without field mapping or duplicate checking, no notification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "sales-automation.analyzeIncident", + "description": "This tool accepts detailed records of sales-related security incidents, including timestamps, affected systems, event descriptions, and mitigation steps. It analyzes the incident data to identify root causes, impacts on sales operations, and suggests improvements to prevent recurrence. The output is a structured incident analysis report with severity rating, affected sales processes, and recommended actions.", + "category": "sales-automation", + "parameters": [ + { + "name": "incidentId", + "type": "string", + "description": "Unique identifier of the sales-related incident to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "incidentData", + "type": "object", + "description": "Comprehensive data about the incident, including logs, timestamps, affected components, and actions taken.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to generate recommendations for preventing future incidents (default true).", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level to report (e.g., low, medium, high, critical).", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report summarizing incident root causes, impact on sales automation systems, severity, and recommended mitigation strategies." + }, + "aiAgent": { + "useCase": "Use this tool when a sales automation incident involving security or system interruptions occurs and you need to analyze its causes and operational impact to improve system resilience and protect sales data integrity.", + "limitations": "This tool does not perform real-time incident detection or automatic remediation; it requires complete incident data as input and focuses on post-incident analysis for sales-related systems.", + "examples": [ + "Analyze incident ID 'INC123456' with full incident log data to identify root causes and recommend preventive steps.", + "Generate an analysis report for a recent security breach impacting the sales CRM automation module.", + "Evaluate severity and suggest remediation strategies for a reported incident disrupting the sales lead assignment workflow." + ] + }, + "tags": [ + "sales-automation", + "incident-analysis", + "security", + "sales-operations", + "root-cause-analysis", + "risk-management" + ], + "examples": [ + { + "inputJson": "{\"incidentId\":\"INC123456\",\"incidentData\":{\"timestamp\":\"2024-06-10T14:23:00Z\",\"affectedSystems\":[\"CRM\",\"LeadTracker\"],\"description\":\"Unauthorized access detected in CRM leading to data exposure.\",\"actionsTaken\":[\"Access blocked\",\"Password reset\",\"Audit logs reviewed\"]},\"includeRecommendations\":true,\"severityThreshold\":\"medium\"}", + "description": "Analyze a security breach incident affecting CRM with preventive recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "sales-automation.analyzeDeal", + "description": "Analyzes a sales deal by evaluating input data such as deal value, stage, customer profile, and historical sales performance. It processes these inputs to assess deal health, risk, and likelihood of closure, producing a structured report that highlights key metrics, potential risks, and recommended actions.", + "category": "sales-automation", + "parameters": [ + { + "name": "dealValue", + "type": "number", + "description": "The monetary value of the sales deal in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "ISO currency code of the deal value, e.g., USD, EUR.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "dealStage", + "type": "string", + "description": "Current stage of the deal in the sales pipeline (e.g., Prospecting, Negotiation, Closing).", + "required": true, + "defaultValue": "" + }, + { + "name": "customerProfile", + "type": "object", + "description": "Object containing customer details such as industry, company size, and prior engagement data.", + "required": false, + "defaultValue": "" + }, + { + "name": "historicalWinRate", + "type": "number", + "description": "Historical win rate percentage for similar deals, used to estimate likelihood of closure.", + "required": false, + "defaultValue": "50" + }, + { + "name": "competitorPresence", + "type": "boolean", + "description": "Indicates whether competitors are involved in this deal.", + "required": false, + "defaultValue": "false" + }, + { + "name": "daysInPipeline", + "type": "number", + "description": "Number of days the deal has been in the current sales pipeline.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report containing deal health score, risk assessment, win probability, key metrics, and recommended next steps." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to evaluate the strength and potential outcome of a sales deal using quantitative and qualitative deal data. It helps prioritize deals, identify risks, and suggest strategic actions for sales teams.", + "limitations": "It cannot replace expert judgment or consider real-time external factors such as sudden market changes or competitor strategy shifts not captured in inputs.", + "examples": [ + "Analyze the deal with value $50000 in Negotiation stage with competitor involvement and 40% historical win rate.", + "Evaluate risk and win probability for a deal in Prospecting stage with a tech industry customer profile and 25 days in pipeline.", + "Provide deal health score for a high-value deal lacking customer profile data but with 60% historical win rate." + ] + }, + "tags": [ + "sales", + "deal-analysis", + "automation", + "crm", + "lead-management", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"dealValue\":150000,\"currency\":\"USD\",\"dealStage\":\"Negotiation\",\"customerProfile\":{\"industry\":\"Software\",\"companySize\":250},\"historicalWinRate\":65,\"competitorPresence\":true,\"daysInPipeline\":30}", + "description": "Analyze a $150,000 software industry deal in negotiation with competitors present, 65% historical win rate, in pipeline for 30 days." + }, + { + "inputJson": "{\"dealValue\":50000,\"currency\":\"EUR\",\"dealStage\":\"Prospecting\",\"historicalWinRate\":40,\"competitorPresence\":false,\"daysInPipeline\":10}", + "description": "Evaluate a €50,000 deal in Prospecting stage without competitor presence and 40% historical win rate." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "sales-automation.analyzeHTML", + "description": "Analyzes raw HTML content of sales-related web pages or email templates to extract key sales and lead information such as contact data, call-to-action buttons, product mentions, and pricing displays. Processes the input HTML and outputs a structured summary of actionable sales elements identified.", + "category": "sales-automation", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML string to be analyzed containing sales or lead generation content.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractContacts", + "type": "boolean", + "description": "Whether to extract contact information like emails and phone numbers from the HTML content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractCTAs", + "type": "boolean", + "description": "Whether to identify and extract call-to-action buttons or links within the HTML content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractProductMentions", + "type": "boolean", + "description": "Whether to detect and extract product or service names mentioned in the HTML content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractPricingInfo", + "type": "boolean", + "description": "Whether to look for displayed pricing or discount information in the HTML content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of items to extract for each category before truncation.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing arrays of extracted information: contacts, callsToAction, products, and pricing details found in the HTML." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically parse and extract actionable sales insights from raw HTML data, such as scraped webpage content or email templates, to aid in lead management and sales process automation. It helps transform unstructured HTML into structured data usable in CRM systems or sales analytics.", + "limitations": "Does not execute or render JavaScript, so dynamic content loaded client-side may not be analyzed. Extraction accuracy depends on HTML quality and complexity, and some elements may be missed or misclassified. It does not parse beyond the HTML, such as external stylesheets or scripts for contextual info.", + "examples": [ + "Analyze this HTML email content to find all contact information and call-to-action links.", + "Extract product names and pricing details from this webpage HTML snippet for lead qualification.", + "Summarize sales-relevant elements from this webpage HTML including contact info, CTAs, and product mentions for automated CRM update." + ] + }, + "tags": [ + "sales", + "automation", + "html", + "lead-extraction", + "contact-extraction", + "cta-detection", + "product-extraction", + "pricing-analysis" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Welcome to Amazing Product

Contact us at sales@example.com or call 123-456-7890.

Buy Now

Price: $99 only!

\",\"extractContacts\":true,\"extractCTAs\":true,\"extractProductMentions\":true,\"extractPricingInfo\":true,\"maxResults\":5}", + "description": "Analyze a small HTML segment with contact info, CTA link, product name, and pricing data." + }, + { + "inputJson": "{\"htmlContent\":\"

Get in touch: info@company.com

\",\"extractContacts\":true,\"extractCTAs\":true,\"extractProductMentions\":false,\"extractPricingInfo\":false,\"maxResults\":3}", + "description": "Extract contact and call-to-action from minimal HTML snippet; no product or pricing extraction requested." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "sales-automation.analyzeXML", + "description": "This tool accepts XML-formatted sales data related to leads, contacts, or transactions. It parses and analyzes the XML to extract insights such as lead quality scores, sales pipeline stages, or contact activity summaries. The output is a structured report object summarizing key sales metrics and potential actionable items for automated follow-up or prioritization.", + "category": "sales-automation", + "parameters": [ + { + "name": "xmlData", + "type": "string", + "description": "The XML string containing sales records or lead information to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "The type of analysis to perform (e.g., 'leadQuality', 'pipelineStatus', 'contactEngagement').", + "required": false, + "defaultValue": "leadQuality" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed records alongside summary metrics in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) for lead quality or prediction results to be included in output.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "A report object containing summarized sales analytics results, including metrics, counts, and optionally detailed records relevant to the specified analysis type." + }, + "aiAgent": { + "useCase": "Use this tool when sales data is provided in XML format and an AI agent needs to extract structured sales insights automatically. Ideal for integrating legacy or third-party XML-based sales exports into automated workflows for lead scoring, pipeline monitoring, or engagement tracking.", + "limitations": "Cannot parse malformed XML or XML data that does not adhere to expected sales domain schema. Does not perform sales forecasting or CRM updates, only analysis and reporting from provided data.", + "examples": [ + "Analyze sales lead data in XML for lead quality scoring.", + "Generate a summary of pipeline stages from XML export.", + "Extract detailed contact engagement metrics from sales XML data." + ] + }, + "tags": [ + "sales", + "automation", + "XML", + "analysis", + "lead scoring", + "pipeline", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"xmlData\":\"John Doe0.85NewJane Smith0.60Contacted\",\"analysisType\":\"leadQuality\",\"includeDetails\":true,\"confidenceThreshold\":0.7}", + "description": "Analyze XML lead data to get lead quality scores, filtering only leads with confidence above 0.7, include detailed lead info." + }, + { + "inputJson": "{\"xmlData\":\"205\",\"analysisType\":\"pipelineStatus\",\"includeDetails\":false}", + "description": "Summarize sales pipeline stages and counts from XML data without detailed records." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "sales-automation.analyzeThreat", + "description": "Analyzes potential security threats within sales automation processes by accepting threat input data, evaluating associated risk factors through heuristic and data-driven methods, and providing a detailed threat assessment report including severity levels, impact analysis, and recommended mitigation strategies.", + "category": "sales-automation", + "parameters": [ + { + "name": "threatType", + "type": "string", + "description": "Type of threat to analyze (e.g., phishing, credential theft, malware).", + "required": true, + "defaultValue": "" + }, + { + "name": "threatData", + "type": "object", + "description": "Detailed data about the threat incident, such as logs, indicators, and context.", + "required": true, + "defaultValue": "" + }, + { + "name": "salesPlatform", + "type": "string", + "description": "Name or identifier of the sales platform affected (e.g., Salesforce, HubSpot).", + "required": false, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "number", + "description": "Minimum severity level (1-10) to report in the analysis output.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation steps in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured threat analysis report with severity rating, impact description, evidence summary, and optionally mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to assess potential security threats that could affect sales automation workflows, identify the severity and impact of known or suspected threats, and generate actionable insights to guide risk mitigation in sales platforms.", + "limitations": "This tool cannot detect zero-day threats autonomously or perform active threat hunting; it relies on input data and recognized threat types for analysis.", + "examples": [ + "Analyze the latest phishing attempt detected on our CRM platform.", + "Evaluate potential malware threat affecting sales data integration.", + "Provide risk assessment for credential theft incident reported in HubSpot." + ] + }, + "tags": [ + "sales", + "security", + "threat analysis", + "risk management", + "automation", + "crm", + "cybersecurity" + ], + "examples": [ + { + "inputJson": "{\"threatType\":\"phishing\",\"threatData\":{\"emailSubject\":\"Urgent: Update your login credentials\",\"emailSender\":\"spoofed@salesplatform.com\",\"indicators\":[\"link to suspicious domain\",\"request for credentials\"]},\"salesPlatform\":\"Salesforce\",\"severityThreshold\":4,\"includeMitigation\":true}", + "description": "Analyze a phishing email threat targeting Salesforce users with medium severity threshold and mitigation recommendations." + }, + { + "inputJson": "{\"threatType\":\"malware\",\"threatData\":{\"fileName\":\"sales_data_export.exe\",\"fileHash\":\"abc123def456\",\"behaviorIndicators\":[\"unexpected network traffic\",\"data encryption attempts\"]},\"salesPlatform\":\"HubSpot\",\"severityThreshold\":6,\"includeMitigation\":false}", + "description": "Assess a suspected malware file impacting HubSpot integration, with higher severity threshold and no mitigation suggestions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "sales-automation.renderWord", + "description": "This tool accepts templated Word document content with placeholders and sales-related data as input, processes the template by injecting data and formatting it appropriately, and outputs a ready-to-use Microsoft Word document (.docx) customized for sales proposals, quotes, or contracts.", + "category": "sales-automation", + "parameters": [ + { + "name": "templateContent", + "type": "string", + "description": "The base Word document template content encoded as a string (e.g., base64 or raw XML content) containing placeholders for dynamic data.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "A key-value map where keys correspond to placeholders in the template and values are the data to inject into the Word document.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format, typically 'docx' to generate a Microsoft Word document, or 'pdf' if conversion is supported.", + "required": false, + "defaultValue": "docx" + }, + { + "name": "includeTracking", + "type": "boolean", + "description": "If true, embeds hidden tracking elements or metadata useful for sales process analytics inside the Word document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64-encoded string of the generated Word document and its metadata, ready for download or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when generating customized sales documents like proposals, contracts, or quotes where a Word document template needs to be populated dynamically with client or deal information for distribution or archival.", + "limitations": "This tool does not support complex Word macros or VBA scripts injection; it only injects data into placeholders and performs basic formatting. It does not perform semantic analysis or content generation beyond placeholder replacement.", + "examples": [ + "Generate a sales proposal Word document from a template for a specific client with personalized terms.", + "Create a contract document by filling client details and pricing from data sources into a Word template.", + "Render a quote document from a predefined Word template with dynamic product and pricing data." + ] + }, + "tags": [ + "sales", + "automation", + "document-generation", + "word", + "template", + "proposal", + "contract", + "quote" + ], + "examples": [ + { + "inputJson": "{\"templateContent\":\"\",\"data\":{\"clientName\":\"Acme Corp\",\"product\":\"Enterprise SaaS\",\"price\":\"$10,000\"},\"outputFormat\":\"docx\",\"includeTracking\":true}", + "description": "Generate a Word sales proposal document with client name, product, and price injected, including sales tracking metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "sales-automation.renderText", + "description": "Transforms provided sales content data and optional templates into customized text outputs such as emails, pitch scripts, or follow-up messages. Accepts input data including lead info and message type, applies dynamic placeholders replacement, and outputs ready-to-send textual sales content.", + "category": "sales-automation", + "parameters": [ + { + "name": "contentData", + "type": "object", + "description": "Structured data containing dynamic fields (e.g., customer name, product, offers) used to fill templates", + "required": true, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Identifier for the sales text template to use (e.g., cold email, demo invite)", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code to render text in, e.g., 'en', 'es'. Defaults to English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the text, like 'formal', 'casual', or 'friendly'", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a recommended call to action in the output text", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered text string and metadata such as template used and language" + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate personalized sales messages from structured customer and product data, ensuring consistent tone and format based on predefined templates. Ideal for automating outreach emails, follow-ups, or sales scripts.", + "limitations": "This tool does not generate content from unstructured input or create new messaging strategies; it relies on predefined templates and input data. It cannot perform language translation beyond selected languages or invent dynamic content without explicit data.", + "examples": [ + "Generate a cold outreach email for a new lead interested in product X, in a casual tone.", + "Render a follow-up message emphasizing the limited time discount offer for returning customers.", + "Create a demo invitation email in Spanish with formal tone including a call to action." + ] + }, + "tags": [ + "sales", + "automation", + "text-generation", + "templates", + "personalization", + "email", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"contentData\":{\"customerName\":\"Alice Johnson\",\"product\":\"Cloud Storage Pro\",\"offer\":\"20% discount for new users\"},\"templateId\":\"coldEmail\",\"language\":\"en\",\"tone\":\"casual\",\"includeCallToAction\":true}", + "description": "Render a personalized cold email in English with a casual tone including a discount offer and call to action." + }, + { + "inputJson": "{\"contentData\":{\"customerName\":\"Carlos Diaz\",\"product\":\"Analytics Suite\",\"demoDate\":\"2024-07-10\"},\"templateId\":\"demoInvite\",\"language\":\"es\",\"tone\":\"formal\",\"includeCallToAction\":true}", + "description": "Generate a formal Spanish demo invitation email for a lead named Carlos with a specified date and call to action." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "sales-automation.renderImage", + "description": "Generates a customized, branded sales promotional image by combining input text, company logo, and product images. Accepts parameters for text content, styling options, logos, and background images, then renders a high-quality marketing image output suitable for digital campaigns or presentations.", + "category": "sales-automation", + "parameters": [ + { + "name": "headlineText", + "type": "string", + "description": "Main heading text to display prominently on the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "subText", + "type": "string", + "description": "Secondary text or tagline to appear below the headline.", + "required": false, + "defaultValue": "" + }, + { + "name": "logoUrl", + "type": "string", + "description": "URL of the company logo to embed in the image for branding.", + "required": true, + "defaultValue": "" + }, + { + "name": "productImageUrls", + "type": "array", + "description": "Array of URLs pointing to product images to include in the final graphic.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Hex code or color name for the image background.", + "required": false, + "defaultValue": "#ffffff" + }, + { + "name": "textColor", + "type": "string", + "description": "Hex code or color name for the headline and subtext color.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "imageWidth", + "type": "number", + "description": "Width of the output image in pixels.", + "required": false, + "defaultValue": "1200" + }, + { + "name": "imageHeight", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "628" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family to use for the headline and subtext (e.g., 'Arial', 'Helvetica').", + "required": false, + "defaultValue": "Arial" + } + ], + "returns": { + "type": "object", + "description": "Object containing the base64 encoded image data along with metadata such as format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically create branded marketing images for sales campaigns by combining textual and visual assets dynamically. This is useful for generating visuals for email campaigns, social media posts, or online ads without manual graphic design.", + "limitations": "This tool cannot create complex graphics or animations; it only produces static images combining given text and images with simple styling. It also requires valid URLs for logos and product images and cannot generate or edit images beyond layout and text rendering.", + "examples": [ + "Create a sales banner image with the headline 'Spring Sale 50% OFF', including our company logo and product photos.", + "Generate a promotional ad image featuring the tagline 'Best Deals This Week' with a white background and blue text.", + "Render a marketing image 1080x1080 pixels for Instagram, using the supplied logo and product visuals" + ] + }, + "tags": [ + "sales", + "automation", + "image-generation", + "marketing", + "branding", + "advertising" + ], + "examples": [ + { + "inputJson": "{\"headlineText\":\"Spring Sale 50% OFF\",\"subText\":\"Limited time offer!\",\"logoUrl\":\"https://example.com/logo.png\",\"productImageUrls\":[\"https://example.com/product1.png\",\"https://example.com/product2.png\"],\"backgroundColor\":\"#ffffff\",\"textColor\":\"#ff0000\",\"imageWidth\":1200,\"imageHeight\":628,\"fontFamily\":\"Helvetica\"}", + "description": "Generate a 1200x628 promotional image featuring a spring sale headline, our brand logo, and two product images, with white background and red text." + }, + { + "inputJson": "{\"headlineText\":\"Best Deals This Week\",\"logoUrl\":\"https://example.com/logo.png\",\"backgroundColor\":\"#000000\",\"textColor\":\"#00ff00\",\"imageWidth\":1080,\"imageHeight\":1080,\"fontFamily\":\"Arial\"}", + "description": "Render a square Instagram ad with green text on black background, showing promotional headline plus logo only." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "sales-automation.formatSentence", + "description": "This tool accepts a sales-related sentence and applies automated formatting rules to enhance clarity and professionalism. It can correct capitalization, standardize sales terminology, replace jargon with customer-friendly terms, and append or insert polite sales phrases as specified. The output is a polished, formatted sales sentence ready for communication with leads or customers.", + "category": "sales-automation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The input sales sentence or phrase to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeFirstLetter", + "type": "boolean", + "description": "Whether to ensure the first letter of the sentence is capitalized.", + "required": false, + "defaultValue": "true" + }, + { + "name": "standardizeTerminology", + "type": "boolean", + "description": "Whether to replace common sales jargon with standardized customer-friendly terms.", + "required": false, + "defaultValue": "true" + }, + { + "name": "appendPolitePhrase", + "type": "string", + "description": "An optional polite closing phrase to append to the sentence, e.g., 'Please let me know if you have any questions.'", + "required": false, + "defaultValue": "" + }, + { + "name": "insertBefore", + "type": "string", + "description": "Optional phrase to insert before the original sentence to improve tone or context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted sales sentence as a string under key 'formattedSentence'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to polish or standardize sales communication text before sending it to prospects or clients. It helps in improving clarity, professionalism, and customer friendliness by applying consistent formatting rules and optionally adding polite phrases.", + "limitations": "This tool does not generate new sales content or rewrite sentences for meaning; it only formats existing sentences based on set rules. It may not handle complex grammar corrections or sentiment analysis.", + "examples": [ + "Format a casual sales follow-up message before sending it to a lead.", + "Standardize a sentence from a sales script to ensure professional tone across the team.", + "Add a polite closing phrase to a sales email snippet." + ] + }, + "tags": [ + "sales", + "automation", + "formatting", + "communication", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"can we schedule a call to discuss your needs?\",\"capitalizeFirstLetter\":true,\"standardizeTerminology\":true,\"appendPolitePhrase\":\"Looking forward to your response.\"}", + "description": "Formats a sales inquiry sentence by capitalizing the first letter, standardizing terminology (no jargon here but would apply if present), and appending a polite closing phrase." + }, + { + "inputJson": "{\"sentence\":\"let me know if you want to move forward\",\"capitalizeFirstLetter\":true,\"standardizeTerminology\":true,\"insertBefore\":\"Thank you for considering our offer.\",\"appendPolitePhrase\":\"Please feel free to reach out anytime.\"}", + "description": "Inserts a polite introductory phrase before the core sentence, capitalizes the first letter, standardizes terms, and appends a polite closing phrase." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "sales-automation.formatModule", + "description": "Formats a sales automation code module by applying consistent code styling and structure to improve readability and maintainability. Accepts source code of the module as input, along with formatting style preferences, and returns the formatted code as output.", + "category": "sales-automation", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw source code of the sales automation module to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the source code (e.g., JavaScript, TypeScript).", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "tabWidth", + "type": "number", + "description": "Number of spaces per indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "semiColon", + "type": "boolean", + "description": "Whether to add semicolons at the ends of statements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "singleQuote", + "type": "boolean", + "description": "Whether to use single quotes instead of double quotes for strings.", + "required": false, + "defaultValue": "true" + }, + { + "name": "printWidth", + "type": "number", + "description": "The line length where the formatter will try to wrap.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted source code string under the field 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to ensure sales automation code modules follow consistent and readable formatting standards, helping improve code quality and maintainability in automated lead management or CRM integration projects.", + "limitations": "This tool does not perform code linting, static analysis, or fix semantic errors. It only re-formats code based on stylistic preferences.", + "examples": [ + "Format a sales automation module source code written in JavaScript to use 4 spaces indentation and double quotes.", + "Apply formatting to TypeScript sales module with tabs instead of spaces and a print width of 100." + ] + }, + "tags": [ + "sales", + "automation", + "formatting", + "code-style", + "module", + "javascript", + "typescript" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function addLead(lead){console.log(\\\"Adding lead:\\\",lead);} \",\"language\":\"JavaScript\",\"tabWidth\":4,\"useTabs\":false,\"semiColon\":true,\"singleQuote\":false,\"printWidth\":80}", + "description": "Formats a JavaScript sales automation module to 4 spaces indentation and double quotes." + }, + { + "inputJson": "{\"sourceCode\":\"export const submitLead = (lead) => {console.log('Lead submitted:', lead)}\",\"language\":\"TypeScript\",\"tabWidth\":2,\"useTabs\":true,\"semiColon\":true,\"singleQuote\":true,\"printWidth\":100}", + "description": "Formats a TypeScript sales automation module using tabs, semicolons, and single quotes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "sales-automation.formatParagraph", + "description": "Formats a sales-related text paragraph by optionally applying styling such as bullet points, bolding keywords, adjusting line breaks, and inserting custom separators to make it more readable and professional for sales emails or proposals. Accepts raw paragraph text and formatting preferences, outputs formatted string.", + "category": "sales-automation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw input paragraph text to format for sales communication.", + "required": true, + "defaultValue": "" + }, + { + "name": "useBulletPoints", + "type": "boolean", + "description": "If true, splits the paragraph into bullet points at sentence boundaries.", + "required": false, + "defaultValue": "false" + }, + { + "name": "boldKeywords", + "type": "array", + "description": "An array of keywords that should be bolded in the paragraph to emphasize key sales terms.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "lineBreaksAfterSentences", + "type": "boolean", + "description": "If true, inserts line breaks after each sentence to improve readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customSeparator", + "type": "string", + "description": "A custom string to insert between sentences or bullet points, overriding line breaks if specified.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph as a string under 'formattedText'." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to take raw sales content and make it visually cleaner and more professional. It helps format sales paragraphs for emails, proposals, or presentations by adding bullet points, emphasizing keywords, and organizing sentences for better readability.", + "limitations": "It does not perform natural language rewriting or proofreading, only visual formatting. It cannot create new content or detect sales context beyond the provided keywords.", + "examples": [ + "Format this sales pitch paragraph with bullet points and bold the product features.", + "Make this paragraph easier to read by adding line breaks after every sentence.", + "Apply custom separators between points in this sales summary paragraph." + ] + }, + "tags": [ + "sales", + "formatting", + "text-processing", + "automation", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Our product offers exceptional reliability, seamless integration, and 24/7 customer support to boost your business efficiency.\",\"useBulletPoints\":true,\"boldKeywords\":[\"reliability\",\"seamless integration\",\"24/7 customer support\"],\"lineBreaksAfterSentences\":false,\"customSeparator\":\"\\n\"}", + "description": "Format a paragraph into bullet points and bold key sales features, using newline as separator." + }, + { + "inputJson": "{\"text\":\"We guarantee fast delivery. Our team is dedicated. Satisfaction is ensured.\",\"useBulletPoints\":false,\"boldKeywords\":[],\"lineBreaksAfterSentences\":true,\"customSeparator\":\"\"}", + "description": "Format paragraph with line breaks after each sentence for better readability." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "sales-automation.formatEndpoint", + "description": "Formats and validates sales API endpoint URLs based on input parameters including base URL, resource path, query parameters, and HTTP method. Accepts raw endpoint components, properly encodes and combines them, and outputs a complete, standardized endpoint URL string ready for use in sales automation tools or integrations.", + "category": "sales-automation", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL of the API, e.g., 'https://api.salesplatform.com', required for forming the endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "resourcePath", + "type": "string", + "description": "The specific API resource path, e.g., 'leads' or 'contacts/123', appended to the base URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryParams", + "type": "object", + "description": "An object representing query parameters where keys are parameter names and values are their values, to be encoded into the URL.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method to apply to the endpoint such as GET, POST, PUT, DELETE for validation purposes.", + "required": false, + "defaultValue": "GET" + }, + { + "name": "encodePath", + "type": "boolean", + "description": "Flag indicating whether to URL-encode the resource path segments for safety. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the fully formatted and encoded endpoint URL string, the HTTP method used, and a validity boolean indicating if the URL is properly formed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to reliably construct and validate sales automation API endpoints from dynamic parts to ensure compatibility and avoid errors in integrations. It's ideal for agents automating REST API calls where endpoint URLs are programmatically built from user input or system data.", + "limitations": "This tool does not perform actual network requests or deeper schema validations beyond URL formatting and basic HTTP method verification; it also does not handle authentication tokens or headers.", + "examples": [ + "Generate a sales API endpoint for fetching leads with filter parameters.", + "Format endpoint to update a contact record using POST method.", + "Validate constructed endpoint URL and method before sending HTTP request." + ] + }, + "tags": [ + "sales", + "automation", + "API", + "endpoint", + "formatting", + "URL", + "REST", + "integration" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://api.salesplatform.com\",\"resourcePath\":\"leads\",\"queryParams\":{\"status\":\"new\",\"sort\":\"desc\"},\"httpMethod\":\"GET\",\"encodePath\":true}", + "description": "Format a GET endpoint for fetching new leads sorted descending" + }, + { + "inputJson": "{\"baseUrl\":\"https://api.salesplatform.com\",\"resourcePath\":\"contacts/123 update\",\"queryParams\":{},\"httpMethod\":\"POST\",\"encodePath\":true}", + "description": "Format a POST endpoint to update contact ID 123 with URL-encoded path" + }, + { + "inputJson": "{\"baseUrl\":\"https://api.salesplatform.com/v1\",\"resourcePath\":\"deals\",\"queryParams\":{\"page\":\"2\"},\"httpMethod\":\"GET\",\"encodePath\":false}", + "description": "Format a GET endpoint for deals with pagination, without encoding path" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "sales-automation.draftText", + "description": "Generates tailored sales text content such as outreach emails, follow-up messages, or call scripts based on provided customer details, product information, and tone preferences. It processes structured inputs to produce well-formatted, persuasive sales text ready for customer engagement.", + "category": "sales-automation", + "parameters": [ + { + "name": "customerProfile", + "type": "object", + "description": "Structured data about the target customer, including demographics, industry, and pain points to personalize the text.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDetails", + "type": "object", + "description": "Information about the product or service being sold, including features, benefits, and unique selling points.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageType", + "type": "string", + "description": "The type of sales text to draft, e.g., initial outreach, follow-up, or closing message.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the text, such as formal, friendly, or persuasive to match brand voice.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the output text in words to control message brevity.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sales text string and metadata like character count and message type." + }, + "aiAgent": { + "useCase": "Use this tool when a sales process requires dynamically generated, personalized outreach content based on specific customer and product data. It helps automate creating effective sales messages for emails, calls, or follow-ups to increase engagement and reduce manual drafting time.", + "limitations": "The tool cannot guarantee compliance with legal or company policies; messages may need review. It also cannot replace strategic sales planning or fully capture complex customer nuances from limited data.", + "examples": [ + "Draft a persuasive outreach email for a tech startup CTO explaining our new cloud solution.", + "Generate a friendly follow-up message for a retail buyer interested in sustainable packaging.", + "Create a brief call script for introducing a financial service to mid-level managers in healthcare." + ] + }, + "tags": [ + "sales", + "automation", + "text generation", + "personalization", + "outreach", + "email", + "follow-up" + ], + "examples": [ + { + "inputJson": "{\"customerProfile\":{\"industry\":\"Technology\",\"role\":\"CTO\",\"companySize\":50,\"painPoints\":[\"scaling infrastructure\",\"security\"]},\"productDetails\":{\"name\":\"CloudSecure\",\"features\":[\"auto-scaling\",\"zero-trust security\"],\"benefits\":[\"reduce downtime\",\"enhance data protection\"]},\"messageType\":\"initial outreach\",\"tone\":\"persuasive\",\"length\":200}", + "description": "Generate an initial outreach email for a CTO in tech industry addressing scaling and security pain points with a cloud product." + }, + { + "inputJson": "{\"customerProfile\":{\"industry\":\"Retail\",\"role\":\"Buyer\",\"companySize\":200,\"painPoints\":[\"sustainable sourcing\"]},\"productDetails\":{\"name\":\"EcoPack\",\"features\":[\"biodegradable\",\"cost-effective\"],\"benefits\":[\"reduce environmental impact\",\"competitive pricing\"]},\"messageType\":\"follow-up\",\"tone\":\"friendly\",\"length\":100}", + "description": "Create a friendly follow-up message for a retail buyer interested in sustainable packaging products." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "sales-automation.draftWord", + "description": "Generates a professional Microsoft Word document draft for sales communication, such as proposals, quotes, or follow-up letters. Inputs include template type, client details, product or service info, and optional custom messages. Outputs a Word document content string ready for saving or editing.", + "category": "sales-automation", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of sales document to draft (e.g., proposal, quote, follow-up letter).", + "required": true, + "defaultValue": "" + }, + { + "name": "clientName", + "type": "string", + "description": "Name of the client or recipient of the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientContact", + "type": "string", + "description": "Contact information for the client (email, phone, etc.).", + "required": false, + "defaultValue": "" + }, + { + "name": "products", + "type": "array", + "description": "List of products or services to include in the document with details.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "customMessage", + "type": "string", + "description": "Optional personalized message to include in the document body.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code to use for pricing (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeTerms", + "type": "boolean", + "description": "Whether to include standard sales terms and conditions.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Word document as a base64-encoded string and metadata such as filename and document type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate a tailored sales document in Word format based on client and product details, reducing manual drafting effort and ensuring consistent formatting and professional language.", + "limitations": "Cannot replace complex legal review or highly customized documents beyond set templates. Does not send or store documents, only generates the draft content.", + "examples": [ + "Create a sales proposal Word document for client Acme Corp listing our software products.", + "Draft a follow-up letter in Word format for client Jane Doe with a thank you message.", + "Generate a quote document including pricing in EUR for the specified services." + ] + }, + "tags": [ + "sales", + "automation", + "document generation", + "word", + "sales documents", + "proposals", + "quotes", + "follow-ups" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"proposal\",\"clientName\":\"Acme Corporation\",\"clientContact\":\"contact@acme.com\",\"products\":[{\"name\":\"Enterprise Software License\",\"quantity\":10,\"unitPrice\":1500}],\"customMessage\":\"We appreciate your consideration and look forward to partnering.\",\"currency\":\"USD\",\"includeTerms\":true}", + "description": "Generate a sales proposal draft for Acme Corporation including specified products and personalized closing note." + }, + { + "inputJson": "{\"documentType\":\"follow-up letter\",\"clientName\":\"Jane Doe\",\"customMessage\":\"Thank you for meeting with us last week. Please find the attached proposal.\",\"includeTerms\":false}", + "description": "Create a follow-up letter for client Jane Doe without standard terms." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "sales-automation.draftContract", + "description": "Generates a tailored sales contract draft based on client details, pricing terms, product or service descriptions, and contract duration. Accepts structured input to produce a professional contract document in text form, suitable for review and further customization.", + "category": "sales-automation", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full legal name of the client or customer company.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "Description of the product or service sold under the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractDurationMonths", + "type": "number", + "description": "Duration of the contract in months.", + "required": true, + "defaultValue": "" + }, + { + "name": "price", + "type": "number", + "description": "Total price or fee for the contract in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the price (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Terms describing payment schedule, deadlines, and conditions.", + "required": false, + "defaultValue": "Payment due within 30 days of invoice." + }, + { + "name": "confidentialityRequired", + "type": "boolean", + "description": "Whether a confidentiality clause should be included.", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalClauses", + "type": "array", + "description": "List of additional custom clauses to include in the contract.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted contract text as a string, structured for further processing or direct output." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to quickly generate a preliminary sales contract draft based on defined client and deal parameters, enabling sales teams or automation workflows to streamline contract preparation before legal review.", + "limitations": "This tool creates initial drafts based on common legal constructs but does not replace formal legal advice or final contract review by qualified legal professionals.", + "examples": [ + "Draft a contract for client 'Acme Corp' purchasing software licenses for 12 months at $12000 USD with standard payment terms.", + "Generate a contract including confidentiality for consulting services to 'Beta LLC' with net 45 payment terms.", + "Create a contract draft with additional clauses covering service-level agreements for a 6-month engagement." + ] + }, + "tags": [ + "sales", + "contract", + "automation", + "drafting", + "legal", + "documents" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"productDescription\":\"Enterprise software license for Project X\",\"contractDurationMonths\":12,\"price\":12000,\"currency\":\"USD\",\"paymentTerms\":\"Payment due within 30 days of invoice.\",\"confidentialityRequired\":false,\"additionalClauses\":[]}", + "description": "Draft a standard 12-month software license contract for Acme Corp with basic payment terms." + }, + { + "inputJson": "{\"clientName\":\"Beta LLC\",\"productDescription\":\"Consulting services\",\"contractDurationMonths\":6,\"price\":15000,\"currency\":\"USD\",\"paymentTerms\":\"Net 45 days\",\"confidentialityRequired\":true,\"additionalClauses\":[\"Service Level Agreement\"]}", + "description": "Create a 6-month consulting contract including confidentiality and service level agreement clauses for Beta LLC." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "sales-automation.composeSentence", + "description": "Generates a clear and persuasive sales sentence tailored to specified context and buyer persona, using input parameters such as product features and sales tone. It accepts structured inputs describing key details and outputs a composed, context-appropriate sales sentence for messaging or outreach.", + "category": "sales-automation", + "parameters": [ + { + "name": "productName", + "type": "string", + "description": "The name of the product to reference in the sales sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of the main features or benefits of the product to highlight.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "buyerPersona", + "type": "string", + "description": "Description of the target buyer persona or customer segment to tailor the message to.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the sentence, e.g., 'professional', 'friendly', 'urgent'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional call to action phrase to include in the sentence.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed sales sentence as a string under the 'sentence' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a concise, targeted sales sentence that incorporates product details, buyer context, and tone to improve messaging effectiveness. Ideal for automated email prospecting, CRM messaging, or sales scripts.", + "limitations": "It cannot generate multi-sentence paragraphs or perform sentiment analysis; output quality depends heavily on input detail and clarity.", + "examples": [ + "Compose a friendly sentence highlighting a software's ease of use for a small business owner.", + "Generate a professional sales sentence emphasizing speed and reliability for an IT manager audience.", + "Create a sentence with an urgent tone including a call to action for a new marketing tool." + ] + }, + "tags": [ + "sales", + "automation", + "sentence composition", + "lead generation", + "customer outreach", + "copywriting", + "crm" + ], + "examples": [ + { + "inputJson": "{\"productName\":\"SmartCRM\",\"keyFeatures\":[\"intuitive dashboard\",\"automated lead scoring\"],\"buyerPersona\":\"small business owner\",\"tone\":\"friendly\",\"callToAction\":\"Try it free today!\"}", + "description": "Generate a friendly sales sentence targeting small business owners for the SmartCRM product." + }, + { + "inputJson": "{\"productName\":\"SpeedyServer\",\"keyFeatures\":[\"99.9% uptime guarantee\",\"24/7 support\"],\"buyerPersona\":\"IT manager\",\"tone\":\"professional\",\"callToAction\":\"Contact us for a demo.\"}", + "description": "Create a professional sales sentence focused on reliable server features for IT managers." + }, + { + "inputJson": "{\"productName\":\"MarketPro\",\"keyFeatures\":[\"real-time analytics\",\"custom campaigns\"],\"buyerPersona\":\"marketing director\",\"tone\":\"urgent\",\"callToAction\":\"Sign up now to boost your sales!\"}", + "description": "Compose an urgent sales sentence aimed at marketing directors for MarketPro with a call to action." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "sales-automation.composeNotification", + "description": "Generates a tailored sales notification message based on provided lead information, notification purpose, and optional personalization details. Accepts lead data, notification type, and message preferences, then composes a formatted notification text ready for delivery to prospects or internal teams.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadName", + "type": "string", + "description": "Full name of the lead to personalize the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "leadEmail", + "type": "string", + "description": "Email address of the lead for inclusion or reference in the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to compose, such as 'welcome', 'follow-up', 'meetingReminder', or 'closingNotice'.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderName", + "type": "string", + "description": "Name of the sales representative or bot sending the notification message.", + "required": false, + "defaultValue": "" + }, + { + "name": "customMessage", + "type": "string", + "description": "Optional custom message or notes to append or integrate into the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Flag indicating whether to include a relevant call-to-action prompt in the notification.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') specifying the language for the notification content.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification text and metadata including message length and type." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent must generate personalized sales notifications automatically based on lead data and notification context to streamline communication workflows. It aids in creating consistent, context-appropriate messages for various sales scenarios, reducing manual message drafting.", + "limitations": "This tool does not send notifications; it only composes the text. It cannot dynamically fetch or verify lead data and cannot handle complex conversation or negotiation logic.", + "examples": [ + "Compose a follow-up notification for a lead named 'John Doe' reminding him of a scheduled demo.", + "Generate a welcome notification in Spanish for a new lead with customized messaging.", + "Create a closing notice including a call-to-action to sign an agreement." + ] + }, + "tags": [ + "sales", + "automation", + "notification", + "messaging", + "lead management", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"leadName\":\"John Doe\",\"leadEmail\":\"johndoe@example.com\",\"notificationType\":\"follow-up\",\"senderName\":\"Alice Smith\",\"customMessage\":\"Looking forward to our meeting next week.\",\"includeCallToAction\":true,\"language\":\"en\"}", + "description": "Follow-up notification with personalized message and call to action." + }, + { + "inputJson": "{\"leadName\":\"Maria Garcia\",\"notificationType\":\"welcome\",\"senderName\":\"Carlos Ruiz\",\"includeCallToAction\":false,\"language\":\"es\"}", + "description": "Welcome notification in Spanish without call to action." + }, + { + "inputJson": "{\"leadName\":\"Sophia Lee\",\"notificationType\":\"closingNotice\",\"senderName\":\"David Kim\",\"customMessage\":\"Please review the attached agreement and reach out with any questions.\",\"includeCallToAction\":true,\"language\":\"en\"}", + "description": "Closing notice with customized closing message and CTA." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "sales-automation.buildInstance", + "description": "Creates and configures a new sales automation instance on a specified cloud infrastructure. It accepts input parameters defining the infrastructure type, sales tools to integrate (e.g., CRM, email automation), user roles, and initial settings. The tool provisions the environment, installs, and configures sales software modules, and outputs detailed instance information including access URLs and configuration summaries.", + "category": "sales-automation", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "Unique name identifier for the sales automation instance to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "infrastructureProvider", + "type": "string", + "description": "Cloud infrastructure provider to use (e.g., AWS, Azure, GCP).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region for the instance deployment (e.g., us-east-1).", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "integrations", + "type": "array", + "description": "List of sales tool integrations to install and configure (e.g., ['CRM','emailAutomation','leadScoring']).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "userRoles", + "type": "object", + "description": "Mapping of user role names to permission levels to initialize within the instance (e.g., {\"salesRep\":\"readWrite\",\"manager\":\"admin\"}).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableAnalytics", + "type": "boolean", + "description": "Flag indicating whether to enable sales analytics and reporting modules.", + "required": false, + "defaultValue": "true" + }, + { + "name": "instanceSize", + "type": "string", + "description": "Size specification of the instance, influencing resources allocated (e.g., small, medium, large).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "autoScaling", + "type": "boolean", + "description": "Enable or disable auto scaling for the sales automation services.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Details about the created sales automation instance including instance ID, deployment status, access URL, configured integrations, and user roles." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate provisioning and setup of a complete sales automation platform on cloud infrastructure, customized with particular sales integrations and user role configurations for rapid onboarding or environment replication.", + "limitations": "This tool does not handle actual sales data migration or real-time sales process management after instance creation; it focuses solely on the creation and configuration of the instance environment.", + "examples": [ + "Create a new sales automation instance on AWS with CRM and email integration for a small sales team.", + "Build a large sales automation environment with auto scaling enabled on GCP integrating lead scoring and analytics.", + "Provision a regional sales automation instance with custom user role definitions and analytics turned off." + ] + }, + "tags": [ + "sales", + "automation", + "cloud", + "infrastructure", + "CRM", + "provisioning", + "integration" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"sales-team-east\",\"infrastructureProvider\":\"AWS\",\"region\":\"us-east-1\",\"integrations\":[\"CRM\",\"emailAutomation\"],\"userRoles\":{\"salesRep\":\"readWrite\",\"manager\":\"admin\"},\"enableAnalytics\":true,\"instanceSize\":\"small\",\"autoScaling\":false}", + "description": "Creates a small AWS-based sales automation instance in US East with CRM and email automation modules and default user roles." + }, + { + "inputJson": "{\"instanceName\":\"enterprise-sales\",\"infrastructureProvider\":\"GCP\",\"region\":\"europe-west1\",\"integrations\":[\"CRM\",\"emailAutomation\",\"leadScoring\",\"analytics\"],\"userRoles\":{\"seniorSales\":\"admin\",\"juniorSales\":\"readWrite\"},\"enableAnalytics\":true,\"instanceSize\":\"large\",\"autoScaling\":true}", + "description": "Provisions a large scalable sales automation setup on Google Cloud with multiple sales tools and detailed roles, targeting enterprise use." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "sales-automation.buildVariable", + "description": "Constructs a dynamic sales variable based on provided criteria such as lead attributes, campaign data, or sales stage inputs. Accepts a formula or mapping ruleset and outputs a computed variable name and value to be used in sales automation workflows for personalized targeting or segmentation.", + "category": "sales-automation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The name for the constructed sales variable, used as an identifier in automation workflows.", + "required": true, + "defaultValue": "" + }, + { + "name": "formula", + "type": "string", + "description": "An expression or formula defining how to compute the variable value using lead or campaign data fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "string", + "description": "Source identifier of data (e.g. lead profile, campaign metrics) on which the formula operates.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Fallback value to assign if the formula evaluation fails or returns null.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputType", + "type": "string", + "description": "Data type of the output variable value: string, number, boolean, or date.", + "required": false, + "defaultValue": "string" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text for documentation or clarity about the variable's purpose.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the variable's name, computed value, type, and optional description." + }, + "aiAgent": { + "useCase": "Use this tool when needing to dynamically create or compute variables for sales automation, such as personalized lead scoring, custom campaign metrics, or segment identifiers based on complex conditions. It enables flexible integration of data-driven variables into the sales process to improve targeting and automation effectiveness.", + "limitations": "Cannot fetch or preprocess raw data itself; requires correct and accessible data source input. Complex formulas requiring external data enrichment or machine learning models are unsupported.", + "examples": [ + "Build a variable 'highValueLead' that is true if lead revenue estimate is over $50,000.", + "Create a variable 'lastCampaignResponseTime' using last response timestamp minus campaign start date.", + "Generate a variable 'leadPriorityScore' computed as a weighted sum of lead engagement metrics." + ] + }, + "tags": [ + "sales", + "automation", + "variable", + "dynamic", + "lead-management", + "formula", + "data-driven" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"highValueLead\",\"formula\":\"lead.estimatedRevenue > 50000\",\"dataSource\":\"leadProfile\",\"defaultValue\":\"false\",\"outputType\":\"boolean\",\"description\":\"Indicates if lead is high value based on estimated revenue.\"}", + "description": "Create a boolean variable that flags leads with estimated revenue over $50,000." + }, + { + "inputJson": "{\"variableName\":\"lastResponseTime\",\"formula\":\"campaign.lastResponseDate - campaign.startDate\",\"dataSource\":\"campaignData\",\"defaultValue\":\"0\",\"outputType\":\"number\",\"description\":\"Duration in days between campaign start and last response.\"}", + "description": "Calculate number of days between campaign start and last response to measure engagement speed." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "sales-automation.buildComponent", + "description": "Build a reusable sales automation UI component based on specified configuration. Accepts input defining component type (e.g., lead capture form, email sequencing widget), styling options, and data bindings. Outputs component code (e.g., React/HTML/JS) ready to embed in sales CRM or automation workflows.", + "category": "sales-automation", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of sales automation component to build, e.g., 'leadCaptureForm', 'emailSequenceWidget', 'pipelineBoard'", + "required": true, + "defaultValue": "" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Custom styling settings such as color scheme, fonts, layout details for the component", + "required": false, + "defaultValue": "{}" + }, + { + "name": "dataBindings", + "type": "object", + "description": "Key-value mappings defining how the component connects to sales data fields or APIs, e.g., lead fields, email templates", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFramework", + "type": "string", + "description": "Framework/language for the output component code, e.g., 'React', 'Vue', 'HTML'", + "required": false, + "defaultValue": "React" + }, + { + "name": "includeValidation", + "type": "boolean", + "description": "Flag indicating if input validation logic should be included in the component", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated component source code as a string and metadata like language/framework used" + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate customizable front-end components for sales automation tasks. Ideal to speed up creating UI widgets such as forms, sequence controls, or dashboards that integrate with sales data and automate lead management.", + "limitations": "Does not deploy or integrate the component automatically; integration and backend setup must be handled separately. Complex UI logic beyond configurable templates may require manual customization.", + "examples": [ + "Generate a React lead capture form component with custom branding colors and connected to CRM lead fields.", + "Build an email sequence control widget in HTML with validation enabled for email addresses.", + "Create a Vue-based pipeline board component styled with given font and colors." + ] + }, + "tags": [ + "sales", + "automation", + "component", + "UI", + "code-generation", + "lead-management", + "CRM" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"leadCaptureForm\",\"styleOptions\":{\"primaryColor\":\"#007bff\",\"fontFamily\":\"Arial\"},\"dataBindings\":{\"emailField\":\"email_address\",\"nameField\":\"full_name\"},\"outputFramework\":\"React\",\"includeValidation\":true}", + "description": "Build a React lead capture form with specified colors, fonts, and bound to email and name fields." + }, + { + "inputJson": "{\"componentType\":\"emailSequenceWidget\",\"styleOptions\":{\"theme\":\"dark\"},\"dataBindings\":{\"templateId\":\"welcome_sequence\"},\"outputFramework\":\"HTML\",\"includeValidation\":false}", + "description": "Generate a simple email sequence control widget in HTML with dark theme, connected to a specific email template." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "sales-automation.generateTrend", + "description": "Generates sales trend analytics based on historical sales data input. Accepts sales records with timestamps and values, processes data to identify patterns, seasonality, and growth rates, then outputs a structured summary highlighting key sales trends and projections to help optimize sales strategies.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesData", + "type": "array", + "description": "Array of sales records, each with timestamp and sales amount, representing historical sales data to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range filter with 'startDate' and 'endDate' ISO strings to limit trend analysis to a specific period.", + "required": false, + "defaultValue": "" + }, + { + "name": "granularity", + "type": "string", + "description": "Aggregation granularity for trend analysis (e.g., 'daily', 'weekly', 'monthly').", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "includeProjection", + "type": "boolean", + "description": "Flag to include sales projections based on identified trends in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "projectionPeriod", + "type": "number", + "description": "Number of future periods (as per granularity) to project sales for, if projections are enabled.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing sales trend insights, including aggregated data points, growth rates, seasonality patterns, and optional future sales projections." + }, + "aiAgent": { + "useCase": "Use when needing to analyze historical sales data to identify patterns, trends, and seasonality to aid sales forecasting and strategy optimization. Suitable for agents tasked with summarizing or forecasting sales performance using past data.", + "limitations": "Cannot handle unstructured or incomplete sales data input; projections are statistical estimates and may not account for external market factors.", + "examples": [ + "Generate monthly sales trends for the last year to identify seasonal peak periods.", + "Provide a sales trend summary with projections for the next quarter based on weekly aggregated data.", + "Analyze sales trends within a custom time range from last March to August." + ] + }, + "tags": [ + "sales", + "automation", + "analytics", + "trend analysis", + "sales forecasting", + "data aggregation" + ], + "examples": [ + { + "inputJson": "{\"salesData\":[{\"timestamp\":\"2023-01-15T00:00:00Z\",\"amount\":1500},{\"timestamp\":\"2023-01-16T00:00:00Z\",\"amount\":1800},{\"timestamp\":\"2023-02-10T00:00:00Z\",\"amount\":2000}],\"timeRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-01\"},\"granularity\":\"monthly\",\"includeProjection\":true,\"projectionPeriod\":2}", + "description": "Analyze monthly sales data for Jan and Feb 2023 with projections for next two months." + }, + { + "inputJson": "{\"salesData\":[{\"timestamp\":\"2022-10-01T00:00:00Z\",\"amount\":1000},{\"timestamp\":\"2022-11-01T00:00:00Z\",\"amount\":1200},{\"timestamp\":\"2022-12-01T00:00:00Z\",\"amount\":1100}],\"granularity\":\"monthly\",\"includeProjection\":false}", + "description": "Summarize sales trends from last quarter without projecting future sales." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "sales-automation.generateChart", + "description": "Generates visual sales charts from input sales data. Accepts structured data including dates, sales amounts, product categories, and regions. Processes the data to produce customizable charts (bar, line, pie) to visualize sales trends, performance, or comparisons. Outputs charts as image URLs or embeddable SVG/PNG data strings.", + "category": "sales-automation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of sales data objects containing sales info such as date, amount, product category, and region.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate (bar, line, pie).", + "required": true, + "defaultValue": "bar" + }, + { + "name": "xAxisField", + "type": "string", + "description": "Field name from data to use for the X-axis (e.g., date, productCategory).", + "required": true, + "defaultValue": "" + }, + { + "name": "yAxisField", + "type": "string", + "description": "Field name from data to use for the Y-axis (e.g., salesAmount).", + "required": true, + "defaultValue": "" + }, + { + "name": "groupByField", + "type": "string", + "description": "Optional field name to group data by different categories on the chart (e.g., region).", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the chart.", + "required": false, + "defaultValue": "Sales Chart" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the generated chart: 'url' for image URL, 'svg' for SVG string, or 'png' for base64 PNG string.", + "required": false, + "defaultValue": "url" + }, + { + "name": "width", + "type": "number", + "description": "Width of the chart in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the chart in pixels.", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated chart data including format and content. Fields include 'format' (string), and 'content' (string representing the chart url or raw image data)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create visual sales reports or dashboards from raw sales data to aid decision making or presentations. It's suitable for generating quick insight visuals like monthly sales trends, product category performance, or regional comparisons.", + "limitations": "This tool cannot perform complex data cleaning or advanced statistical analysis before chart generation. It requires properly structured input data and focuses on visualization only.", + "examples": [ + "Generate a bar chart showing monthly sales amounts.", + "Create a pie chart of sales distribution by product category.", + "Produce a line chart comparing sales trends by region over time." + ] + }, + "tags": [ + "sales", + "automation", + "chart", + "visualization", + "reporting", + "lead management" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"date\":\"2023-01-01\",\"salesAmount\":1200,\"productCategory\":\"Electronics\",\"region\":\"North\"},{\"date\":\"2023-02-01\",\"salesAmount\":1500,\"productCategory\":\"Electronics\",\"region\":\"North\"},{\"date\":\"2023-01-01\",\"salesAmount\":800,\"productCategory\":\"Clothing\",\"region\":\"South\"}],\"chartType\":\"bar\",\"xAxisField\":\"date\",\"yAxisField\":\"salesAmount\",\"groupByField\":\"productCategory\",\"title\":\"Monthly Sales by Category\",\"outputFormat\":\"url\",\"width\":800,\"height\":600}", + "description": "Generate a bar chart showing monthly sales amounts grouped by product category." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "sales-automation.generateSchema", + "description": "Generates a JSON Schema definition for sales-related data objects such as leads, opportunities, or customer profiles, based on user-defined fields and their types. Accepts an object describing field names, data types, and constraints, then returns a JSON Schema representing the structure, useful for validating or documenting sales data exchanges.", + "category": "sales-automation", + "parameters": [ + { + "name": "entityName", + "type": "string", + "description": "The name of the sales data entity to generate the schema for (e.g., Lead, Opportunity).", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "An array of field definition objects specifying 'name', 'type', and optional constraints for each property.", + "required": true, + "defaultValue": "" + }, + { + "name": "requiredFields", + "type": "array", + "description": "List of field names that should be marked as required in the schema.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "additionalPropertiesAllowed", + "type": "boolean", + "description": "Whether properties not listed in 'fields' are allowed in the object (true or false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON Schema object describing the sales entity structure, including property definitions, required fields, and validation rules." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create validatable, standard-compliant JSON Schemas for sales automation data structures like leads or opportunities, to ensure consistent data exchange and validation between services or storage systems.", + "limitations": "This tool generates schemas based on provided field definitions but does not infer field semantics or validate field type correctness beyond standard JSON Schema constraints.", + "examples": [ + "Generate a schema for a Lead entity with fields like name (string), email (string, email pattern), and score (number).", + "Create a schema for Opportunity entity including amount (number, minimum 0), stage (string, enum), and closeDate (string, date format)." + ] + }, + "tags": [ + "sales", + "automation", + "schema", + "JSON Schema", + "data validation", + "lead management" + ], + "examples": [ + { + "inputJson": "{\"entityName\":\"Lead\",\"fields\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"email\",\"type\":\"string\",\"pattern\":\"^[^@\\\\s]+@[^@\\\\s]+\\\\.[^@\\\\s]+$\"},{\"name\":\"score\",\"type\":\"number\",\"minimum\":0}],\"requiredFields\":[\"name\",\"email\"],\"additionalPropertiesAllowed\":false}", + "description": "Generate a JSON Schema for a Lead entity with name, email (validated by pattern), and score fields; name and email are required; do not allow extra properties." + }, + { + "inputJson": "{\"entityName\":\"Opportunity\",\"fields\":[{\"name\":\"amount\",\"type\":\"number\",\"minimum\":0},{\"name\":\"stage\",\"type\":\"string\",\"enum\":[\"Qualification\",\"Proposal\",\"Negotiation\",\"Closed Won\",\"Closed Lost\"]},{\"name\":\"closeDate\",\"type\":\"string\",\"format\":\"date\"}],\"requiredFields\":[\"amount\",\"stage\"],\"additionalPropertiesAllowed\":true}", + "description": "Generate schema for Opportunity with amount, stage (limited enum), and closeDate fields; amount and stage required; allow additional properties." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "sales-automation.generateHTML", + "description": "Generates customizable HTML content tailored for sales automation, such as emails, landing pages, and lead capture forms. Accepts structured input defining text, images, call-to-action buttons, and styling options, then outputs well-formed, responsive HTML code ready for deployment in sales campaigns.", + "category": "sales-automation", + "parameters": [ + { + "name": "templateType", + "type": "string", + "description": "Type of sales content to generate, e.g., 'email', 'landingPage', or 'leadForm'.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "object", + "description": "Structured content including headings, paragraphs, images, and calls to action relevant to the chosen template. For example, {\"headline\":\"Welcome!\",\"body\":\"Check our product\",\"buttonText\":\"Buy Now\",\"buttonLink\":\"https://...\"}.", + "required": true, + "defaultValue": "" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Optional styling preferences such as color scheme, font choices, and layout settings to customize the visual appearance.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "responsive", + "type": "boolean", + "description": "Whether to generate HTML optimized for responsive design across devices.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTracking", + "type": "boolean", + "description": "Include placeholders or code snippets for sales tracking analytics (e.g., UTM parameters, pixels).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a string field 'html' with the generated HTML code, plus optional metadata such as templateType and preview snippet." + }, + "aiAgent": { + "useCase": "Use this tool when a sales automation process requires generating customized, ready-to-use HTML content for emails, landing pages, or lead capture forms based on structured inputs detailing content and style preferences. Ideal for dynamically creating sales collateral programmatically or integrating with campaign managers.", + "limitations": "Does not handle backend form processing or advanced scripting beyond inline HTML/CSS. Generated HTML may require validation or adaptation for specific email clients or web frameworks.", + "examples": [ + "Generate an email HTML snippet with specified headline, body, and a call-to-action button.", + "Create a landing page HTML with a specific color scheme and responsive layout.", + "Produce a lead capture form as HTML with tracking placeholders included." + ] + }, + "tags": [ + "sales", + "automation", + "HTML", + "content generation", + "email", + "landing page", + "lead capture" + ], + "examples": [ + { + "inputJson": "{\"templateType\":\"email\",\"content\":{\"headline\":\"Introducing Our New Product\",\"body\":\"Discover features and benefits\",\"buttonText\":\"Shop Now\",\"buttonLink\":\"https://shop.example.com\"},\"styleOptions\":{\"primaryColor\":\"#0073e6\",\"fontFamily\":\"Arial\"},\"responsive\":true,\"includeTracking\":true}", + "description": "Generate a responsive sales email HTML with tracking placeholders and custom styling." + }, + { + "inputJson": "{\"templateType\":\"landingPage\",\"content\":{\"headline\":\"Get Started Today\",\"body\":\"Sign up and receive a discount\",\"buttonText\":\"Register\",\"buttonLink\":\"https://register.example.com\"},\"styleOptions\":{\"primaryColor\":\"#ff6600\",\"fontFamily\":\"Helvetica\"},\"responsive\":true,\"includeTracking\":false}", + "description": "Create a landing page HTML promoting registration with custom brand colors and fonts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "sales-automation.generateXML", + "description": "Generates a well-structured XML document representing sales leads or sales-related data based on provided input such as lead lists or sales opportunities. Accepts input in JSON format describing leads and outputs a standardized XML format for integration or reporting.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadData", + "type": "array", + "description": "An array of lead objects containing sales lead details such as name, contact info, company, and status.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "The name of the root XML element to wrap the leads data.", + "required": false, + "defaultValue": "Leads" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include generation metadata such as timestamp and tool info in the XML output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateFormat", + "type": "string", + "description": "The date format string to use for any date fields within the XML, e.g., 'YYYY-MM-DD'.", + "required": false, + "defaultValue": "YYYY-MM-DD" + } + ], + "returns": { + "type": "string", + "description": "A string containing the generated XML representation of the input sales leads or sales data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured sales leads data from JSON or similar objects into XML format for downstream systems that require XML input, such as CRM integrations, data exchange between sales platforms, or generating XML reports for sales analytics.", + "limitations": "This tool does not validate the business logic or data quality of leads; it only transforms provided data into XML format. It assumes input follows expected structure and does not handle extremely large datasets efficiently.", + "examples": [ + "Generate XML for a list of sales leads to integrate with a legacy CRM system.", + "Produce XML formatted sales opportunity data for sharing with a partner platform.", + "Create an XML report summarizing leads with optional metadata for auditing purposes." + ] + }, + "tags": [ + "sales", + "automation", + "lead-management", + "XML", + "data-transformation", + "integration" + ], + "examples": [ + { + "inputJson": "{\"leadData\":[{\"name\":\"Alice Johnson\",\"email\":\"alice@example.com\",\"company\":\"Acme Corp\",\"status\":\"New\"},{\"name\":\"Bob Smith\",\"email\":\"bob@example.com\",\"company\":\"Beta LLC\",\"status\":\"Contacted\"}],\"rootElementName\":\"SalesLeads\",\"includeMetadata\":true,\"dateFormat\":\"YYYY-MM-DD\"}", + "description": "Generate XML from two leads with metadata and custom root element name." + }, + { + "inputJson": "{\"leadData\":[{\"name\":\"Charlie Green\",\"email\":\"charlie@green.com\",\"company\":\"GreenTech\",\"status\":\"Qualified\"}],\"includeMetadata\":false}", + "description": "Generate XML for one lead without metadata, using default root element and date format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "sales-automation.createReference", + "description": "Creates a professional sales reference document for a lead or client based on input information such as contact details, sales history, product/services purchased, and referral comments. Outputs a structured reference report usable for follow-up or internal documentation.", + "category": "sales-automation", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name of the client or lead to create the reference for.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact details such as email, phone number, and address for the client.", + "required": true, + "defaultValue": "" + }, + { + "name": "salesHistory", + "type": "array", + "description": "List of previous sales transactions including product names, dates, and amounts.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "referenceComments", + "type": "string", + "description": "Additional comments or notes providing context or endorsement about the client or lead.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateCreated", + "type": "string", + "description": "Date when the reference document is created, in ISO 8601 format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured reference document including client details, sales summary, dates, and comments for use in sales automation and follow-up." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a formal reference document to summarize client information and sales history that can support ongoing sales processes, lead nurturing, or internal handoffs.", + "limitations": "It cannot verify the accuracy of provided sales data or automatically fetch missing client details; all inputs must be supplied by the user or other tools.", + "examples": [ + "Create a sales reference for client John Doe with his contact information and recent purchase history.", + "Generate a reference document summarizing prior sales to a repeat customer including endorsement comments.", + "Prepare a formal reference report for a lead with partial transaction history and notes." + ] + }, + "tags": [ + "sales", + "automation", + "reference", + "client", + "lead", + "documentation", + "follow-up" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"contactInfo\":{\"email\":\"contact@acme.com\",\"phone\":\"123-456-7890\"},\"salesHistory\":[{\"product\":\"Enterprise Software\",\"date\":\"2024-05-01\",\"amount\":50000}],\"referenceComments\":\"Reliable customer with timely payments.\",\"dateCreated\":\"2024-06-10\"}", + "description": "Create a detailed reference document for a corporate client with contact and sales data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "sales-automation.createCluster", + "description": "Creates a lead cluster by grouping sales leads based on shared attributes such as industry, company size, or behavior patterns. Accepts an array of lead objects and clustering criteria, processes to identify groups of similar leads, and outputs clusters to aid targeted sales campaigns.", + "category": "sales-automation", + "parameters": [ + { + "name": "leads", + "type": "array", + "description": "An array of lead objects containing lead details such as contact info, company data, and behavioral metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "clusterCriteria", + "type": "object", + "description": "An object defining which lead attributes or metrics to use for clustering, such as industry, location, company size, or engagement level.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxClusters", + "type": "number", + "description": "The maximum number of clusters to create. If omitted, the tool determines optimal cluster count automatically.", + "required": false, + "defaultValue": "10" + }, + { + "name": "minClusterSize", + "type": "number", + "description": "The minimum number of leads per cluster. Smaller clusters are merged or discarded to avoid fragmented groups.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeInactive", + "type": "boolean", + "description": "Whether to include leads marked as inactive in clusters. Defaults to false to focus on active leads only.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing cluster metadata and arrays of lead IDs assigned to each cluster. Includes cluster count, centroid attributes, and lead distribution." + }, + "aiAgent": { + "useCase": "Use this tool when needing to organize large sets of sales leads into meaningful groups for targeted outreach, personalized marketing campaigns, or sales territory planning. It helps convert flat lead lists into structured clusters based on configurable criteria to improve sales efficiency.", + "limitations": "This tool does not perform lead scoring or predictive sales forecasting. It only groups leads by similarity and does not guarantee the quality of clusters beyond configured parameters.", + "examples": [ + "Create lead clusters based on industry and company size to target a marketing campaign.", + "Group leads by engagement metrics to prioritize outreach efforts.", + "Form clusters from a mixed lead dataset including location and sales potential attributes." + ] + }, + "tags": [ + "sales", + "automation", + "clustering", + "lead-management", + "CRM", + "segmentation", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"leads\":[{\"id\":\"L1\",\"industry\":\"Finance\",\"companySize\":200,\"engagementScore\":75},{\"id\":\"L2\",\"industry\":\"Healthcare\",\"companySize\":150,\"engagementScore\":80},{\"id\":\"L3\",\"industry\":\"Finance\",\"companySize\":220,\"engagementScore\":65},{\"id\":\"L4\",\"industry\":\"Technology\",\"companySize\":50,\"engagementScore\":90}],\"clusterCriteria\":{\"attributes\":[\"industry\",\"companySize\"]},\"maxClusters\":3,\"minClusterSize\":1,\"includeInactive\":false}", + "description": "Cluster leads by industry and company size to create up to three groups for sales targeting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "sales-automation.createHeading", + "description": "Generates a concise, engaging heading text for sales documents such as emails, proposals, or presentations based on provided keywords or themes. Accepts input keywords or phrases and outputs a polished heading optimized to capture recipient attention and align with sales objectives.", + "category": "sales-automation", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "Array of keywords or phrases that represent the main themes or products/services to include in the heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the heading text, such as 'formal', 'casual', or 'persuasive'.", + "required": false, + "defaultValue": "persuasive" + }, + { + "name": "maxLength", + "type": "number", + "description": "The maximum allowed character length for the heading to ensure brevity and clarity.", + "required": false, + "defaultValue": "60" + }, + { + "name": "audienceType", + "type": "string", + "description": "Type of intended audience like 'B2B', 'B2C', or 'internal' to tailor heading style.", + "required": false, + "defaultValue": "B2B" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading text optimized for sales communication." + }, + "aiAgent": { + "useCase": "Use this tool when creating targeted sales materials requiring a compelling heading that aligns with given themes, ensures concise messaging, and matches the tonal style appropriate to the audience. It is ideal for automating the generation of attention-grabbing titles in emails, proposals, or presentations.", + "limitations": "This tool does not generate full content or body text, only heading text. The quality depends on the quality of input keywords. It cannot replace contextual expert review for compliance or brand guidelines.", + "examples": [ + "Generate a persuasive heading for a sales email introducing a new cloud software platform using keywords like 'cloud', 'efficiency', 'security'.", + "Create a casual heading for an internal proposal covering 'team collaboration' and 'remote tools' within a 50-character limit." + ] + }, + "tags": [ + "sales", + "automation", + "heading", + "content-generation", + "copywriting" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"cloud\",\"efficiency\",\"security\"],\"tone\":\"persuasive\",\"maxLength\":60,\"audienceType\":\"B2B\"}", + "description": "Generate a persuasive heading for a B2B sales email about cloud efficiency and security." + }, + { + "inputJson": "{\"keywords\":[\"team collaboration\",\"remote tools\"],\"tone\":\"casual\",\"maxLength\":50,\"audienceType\":\"internal\"}", + "description": "Create a casual heading for an internal proposal on remote tools with brevity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "sales-automation.createIncident", + "description": "Creates a security incident record related to sales automation processes by accepting details such as incident type, description, severity, detected time, and associated sales lead or account information. Processes inputs to generate a structured incident report for tracking and resolution in incident management systems.", + "category": "sales-automation", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "Category of the security incident (e.g., phishing, data breach, unauthorized access).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the incident including what occurred and potential impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the incident (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "detectedAt", + "type": "string", + "description": "Timestamp when the incident was detected in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedSalesLeadId", + "type": "string", + "description": "Identifier of the sales lead or account related to the incident, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Name or ID of the person or system reporting the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalMetadata", + "type": "object", + "description": "Optional key-value pairs with extra information relevant to the incident.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object including a unique incident ID, confirmation of creation, and a summary of the recorded incident data." + }, + "aiAgent": { + "useCase": "Use this tool when a security incident impacting sales automation processes or leads is identified and needs to be formally recorded for tracking, remediation, and audit purposes. It helps centralize important incident details and link them to sales data to prioritize and manage response effectively.", + "limitations": "This tool does not perform incident detection or automated remediation; it only records incident data. It assumes valid and accurate input data for incident creation and does not validate the authenticity of the incident.", + "examples": [ + "Create a high severity phishing incident detected yesterday impacting a key sales lead.", + "Record a data breach incident related to unauthorized access to sales contact data.", + "Log a low severity incident reported by the sales ops team concerning suspicious login activity." + ] + }, + "tags": [ + "sales", + "automation", + "security", + "incident", + "management", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"phishing\",\"description\":\"Received a suspicious email requesting lead login credentials.\",\"severity\":\"high\",\"detectedAt\":\"2024-06-15T08:30:00Z\",\"relatedSalesLeadId\":\"lead_12345\",\"reportedBy\":\"security_system\"}", + "description": "High severity phishing incident related to a specific sales lead." + }, + { + "inputJson": "{\"incidentType\":\"unauthorized_access\",\"description\":\"Detected unauthorized access attempt on sales CRM.\",\"severity\":\"critical\",\"detectedAt\":\"2024-06-16T14:00:00Z\",\"reportedBy\":\"admin_account\"}", + "description": "Critical unauthorized access incident without linked lead." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "sales-automation.createThread", + "description": "Creates a new sales communication thread by associating contacts and messages within a lead management system. Accepts input including subject, participants, initial message, and optional metadata. Processes these inputs to instantiate a thread and returns thread details for tracking and further interactions.", + "category": "sales-automation", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The title or subject of the sales thread (e.g., \"Follow-up on Proposal\").", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant identifiers (e.g., contact IDs or emails) involved in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessage", + "type": "string", + "description": "The content of the first message sent within the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedLeadId", + "type": "string", + "description": "Optional ID of the lead this thread is associated with for context.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the thread, e.g., 'low', 'medium', 'high'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or labels to categorize the thread (e.g., ['prospect', 'urgent']).", + "required": false, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "The communication channel to use (e.g., 'email', 'sms', 'chat').", + "required": false, + "defaultValue": "email" + } + ], + "returns": { + "type": "object", + "description": "An object containing the newly created thread's unique identifier, subject, participants list, initial message details, timestamp, and optional metadata such as priority and tags." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initiate a new conversation thread during a sales process involving one or more contacts. Ideal for automating outreach, follow-ups, or internal sales communication by creating organized message threads linked to leads.", + "limitations": "This tool does not send messages through external services itself; message delivery depends on integration with communication platforms. It also does not update or delete existing threads.", + "examples": [ + "Create a thread to start a follow-up email conversation with a lead and their team.", + "Initialize a new SMS communication thread with a prospect, tagging it as 'urgent'.", + "Open a chat thread involving multiple sales reps discussing a lead identified by ID." + ] + }, + "tags": [ + "sales", + "automation", + "communication", + "thread", + "lead-management", + "crm", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Follow-up on Proposal\",\"participants\":[\"john.doe@example.com\",\"jane.smith@example.com\"],\"initialMessage\":\"Hi team, following up on the proposal we sent last week.\",\"relatedLeadId\":\"lead-12345\",\"priority\":\"high\",\"tags\":[\"follow-up\",\"proposal\"],\"channel\":\"email\"}", + "description": "Creating a high priority email thread for following up on a sales proposal involving two participants linked to a specific lead." + }, + { + "inputJson": "{\"subject\":\"New Product Interest\",\"participants\":[\"+12345550123\"],\"initialMessage\":\"Hello, thanks for your interest in our product! What questions do you have?\",\"priority\":\"medium\",\"channel\":\"sms\"}", + "description": "Starting an SMS conversation thread to respond to a prospect showing interest in a product using a phone number participant." + }, + { + "inputJson": "{\"subject\":\"Internal Sales Strategy\",\"participants\":[\"salesrep1@example.com\",\"salesrep2@example.com\"],\"initialMessage\":\"Let's brainstorm ideas for closing the Jackson deal.\",\"tags\":[\"internal\",\"strategy\"],\"channel\":\"chat\"}", + "description": "Creating an internal chat thread among sales reps to plan strategy regarding a particular sales opportunity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "sales-automation.createQueue", + "description": "Creates a new sales lead queue to organize and prioritize leads for outreach. Accepts parameters such as queue name, description, priority level, associated sales team, and optional rules for lead assignment. Outputs the created queue's unique ID and configuration summary.", + "category": "sales-automation", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The name of the sales lead queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description of the queue's purpose or criteria.", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority of this queue relative to others (e.g., High, Medium, Low).", + "required": false, + "defaultValue": "Medium" + }, + { + "name": "salesTeamId", + "type": "string", + "description": "Identifier of the sales team responsible for this queue.", + "required": true, + "defaultValue": "" + }, + { + "name": "leadAssignmentRules", + "type": "object", + "description": "Rules and criteria for automatically assigning leads to this queue (e.g., region, lead source).", + "required": false, + "defaultValue": "" + }, + { + "name": "maxQueueSize", + "type": "number", + "description": "Maximum number of leads this queue can contain before new leads are rejected or re-routed.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique queue ID and a summary of the queue configuration." + }, + "aiAgent": { + "useCase": "Use this tool when organizing sales leads into distinct queues by team, priority, or other criteria to improve lead management efficiency and ensure timely follow-up. Ideal for automating lead distribution in CRM systems.", + "limitations": "This tool does not handle actual lead data processing or follow-up actions; it only creates the infrastructure for lead queues. It also does not automatically handle dynamic rule updates or lead reassignments after creation.", + "examples": [ + "Create a high priority lead queue for the West Coast sales team with region-based lead assignment.", + "Set up a new lead queue named \"Enterprise Leads\" assigned to a specific sales team with a max capacity of 500 leads." + ] + }, + "tags": [ + "sales", + "automation", + "lead-management", + "queue", + "CRM", + "team-management" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"West Coast Priority Leads\",\"description\":\"High priority leads for West Coast sales team\",\"priorityLevel\":\"High\",\"salesTeamId\":\"team-westcoast\",\"leadAssignmentRules\":{\"region\":\"West Coast\"},\"maxQueueSize\":500}", + "description": "Create a high priority queue for the West Coast sales team that automatically assigns leads from that region." + }, + { + "inputJson": "{\"queueName\":\"Enterprise Leads\",\"description\":\"Queue for enterprise level prospects\",\"priorityLevel\":\"Medium\",\"salesTeamId\":\"team-enterprise\",\"maxQueueSize\":300}", + "description": "Create a medium priority queue for the enterprise sales team with a maximum size limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "sales-automation.createChart", + "description": "Generates customizable sales charts from input data such as leads, opportunities, or revenue over time. Accepts structured sales metrics and parameters defining chart type, date range, and grouping. Returns a chart image or embeddable object visualizing key sales performance indicators to aid reporting and decision-making.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesData", + "type": "array", + "description": "An array of sales data objects including metrics such as date, lead count, opportunity value, or revenue.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to create, e.g., 'bar', 'line', 'pie'.", + "required": true, + "defaultValue": "\"bar\"" + }, + { + "name": "dateRange", + "type": "object", + "description": "An object specifying 'startDate' and 'endDate' (ISO 8601 strings) to filter sales data by date.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Field to group data by, e.g., 'region', 'salesRep', or 'productCategory'.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title text to display on the chart.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to display a legend alongside the chart.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output chart, e.g., 'png', 'svg', or 'base64'.", + "required": false, + "defaultValue": "\"png\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the chart output, including encoded image data or embeddable chart markup, and metadata such as chart type and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize sales metrics such as lead counts, revenue, or opportunities over time or groupings to identify trends and performance. It helps to quickly generate charts for reports, dashboards, or presentations using dynamic input data and customizable parameters.", + "limitations": "Cannot automatically interpret unstructured sales data or generate insights beyond visualizing input metrics. Limited to predefined chart types and dimensions. Does not perform statistical analysis or predictive modeling.", + "examples": [ + "Create a line chart showing monthly revenue grouped by region from Jan to Jun 2024.", + "Generate a pie chart of opportunities count grouped by product category with a title and legend.", + "Produce a bar chart of lead counts per sales representative for the last quarter output as base64 PNG." + ] + }, + "tags": [ + "sales", + "automation", + "charting", + "visualization", + "reporting", + "data", + "leads", + "revenue" + ], + "examples": [ + { + "inputJson": "{\"salesData\":[{\"date\":\"2024-01-01\",\"region\":\"North\",\"revenue\":10000},{\"date\":\"2024-02-01\",\"region\":\"North\",\"revenue\":12000},{\"date\":\"2024-01-01\",\"region\":\"South\",\"revenue\":8000},{\"date\":\"2024-02-01\",\"region\":\"South\",\"revenue\":9500}],\"chartType\":\"line\",\"dateRange\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-02-28\"},\"groupBy\":\"region\",\"title\":\"Revenue Jan-Feb 2024\",\"includeLegend\":true,\"outputFormat\":\"png\"}", + "description": "Line chart of revenue by region for Jan and Feb 2024." + }, + { + "inputJson": "{\"salesData\":[{\"productCategory\":\"Electronics\",\"opportunities\":50},{\"productCategory\":\"Furniture\",\"opportunities\":30}],\"chartType\":\"pie\",\"groupBy\":\"productCategory\",\"title\":\"Opportunities by Product Category\",\"includeLegend\":true}", + "description": "Pie chart of opportunities distribution by product category." + }, + { + "inputJson": "{\"salesData\":[{\"salesRep\":\"Alice\",\"leads\":20},{\"salesRep\":\"Bob\",\"leads\":35}],\"chartType\":\"bar\",\"groupBy\":\"salesRep\",\"title\":\"Lead Counts per Sales Rep\",\"outputFormat\":\"base64\"}", + "description": "Bar chart of lead counts per sales rep, output as base64 PNG string." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "sales-automation.createThreat", + "description": "Creates a detailed security threat record related to sales operations by accepting threat details such as type, severity, affected assets, and description, then storing and returning a structured threat object for risk tracking and mitigation planning.", + "category": "sales-automation", + "parameters": [ + { + "name": "threatType", + "type": "string", + "description": "The category or type of the security threat (e.g., phishing, data breach).", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity rating of the threat (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedAssets", + "type": "array", + "description": "List of sales-related assets impacted by the threat (e.g., CRM system, sales data).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the threat and its potential impact on sales operations.", + "required": true, + "defaultValue": "" + }, + { + "name": "discoveredBy", + "type": "string", + "description": "Name or identifier of the person or system reporting the threat.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "timeDiscovered", + "type": "string", + "description": "Timestamp when the threat was identified, in ISO 8601 format.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "mitigationStatus", + "type": "string", + "description": "Current status of threat mitigation (e.g., pending, in progress, resolved).", + "required": false, + "defaultValue": "pending" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive threat record object including a unique ID, all submitted details, creation time, and a tracking status for ongoing risk management." + }, + "aiAgent": { + "useCase": "Use this tool when you need to formally document and track security threats that may impact sales systems or data to support risk assessment, compliance, and mitigation workflows. It standardizes threat capture enabling AI agents to integrate security concerns relevant to sales operations.", + "limitations": "This tool does not perform threat detection, real-time monitoring, or automated mitigation; it only creates and logs threat records based on provided inputs.", + "examples": [ + "Create a high severity phishing threat impacting CRM with description and reporter details.", + "Log a medium severity data breach affecting sales database with timestamp and mitigation status.", + "Record a critical insider threat affecting sales pipeline data with detailed impact analysis." + ] + }, + "tags": [ + "sales", + "automation", + "security", + "threat-management", + "risk-tracking" + ], + "examples": [ + { + "inputJson": "{\"threatType\":\"Phishing\",\"severityLevel\":\"High\",\"affectedAssets\":[\"CRM system\",\"Sales email accounts\"],\"description\":\"Detected phishing emails targeting sales team members attempting credential theft.\",\"discoveredBy\":\"Automated Security Scanner\",\"timeDiscovered\":\"2024-06-15T09:30:00Z\",\"mitigationStatus\":\"pending\"}", + "description": "Create a high severity phishing threat affecting sales CRM and email, reported by security scanner." + }, + { + "inputJson": "{\"threatType\":\"Data Breach\",\"severityLevel\":\"Medium\",\"affectedAssets\":[\"Sales database\"],\"description\":\"Unauthorized access detected in sales customer database, potentially exposing client information.\",\"discoveredBy\":\"Security Analyst\",\"timeDiscovered\":\"2024-06-14T16:45:00Z\",\"mitigationStatus\":\"in progress\"}", + "description": "Log a medium severity data breach in sales database with mitigation underway." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "sales-automation.createDeal", + "description": "Creates a new sales deal record using provided customer and opportunity details. Accepts inputs such as deal name, value, stage, close date, and associated contact info. Processes these inputs to generate a standardized deal entry in the CRM system and returns the deal ID and summary.", + "category": "sales-automation", + "parameters": [ + { + "name": "dealName", + "type": "string", + "description": "The descriptive name of the sales deal to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "The monetary value of the deal in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (e.g., USD, EUR) for the deal value.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "dealStage", + "type": "string", + "description": "Current stage of the sales deal (e.g., Prospecting, Negotiation, Closed Won).", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedCloseDate", + "type": "string", + "description": "The anticipated close date of the deal in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "contactId", + "type": "string", + "description": "Identifier of the primary contact associated with the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or comments regarding the deal.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique identifier of the created deal, its name, stage, and summary information including estimated value and close date." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically add a new sales deal to the CRM system based on collected lead or opportunity data. Ideal in workflows automating lead qualification, deal pipeline updates, or syncing external sales info. It ensures deals are consistently created with required fields and metadata.", + "limitations": "This tool only creates deal records and does not update or delete existing deals. It does not validate external contact existence; the contactId must refer to a valid contact in the CRM. Currency conversion or complex pipeline logic is not handled.", + "examples": [ + "Create a new sales deal named 'Enterprise Software License' worth 50000 USD in negotiation stage linked to contact ID 12345.", + "Generate a deal with name 'Q3 Renewal' valued at 120000 EUR expected to close by 2024-09-30.", + "Add a prospecting deal 'Marketing Campaign Consulting' worth 15000 USD with notes about initial client discussion." + ] + }, + "tags": [ + "sales", + "automation", + "deal", + "crm", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"dealName\":\"Enterprise Software License\",\"dealValue\":50000,\"currency\":\"USD\",\"dealStage\":\"Negotiation\",\"expectedCloseDate\":\"2024-06-30\",\"contactId\":\"12345\",\"notes\":\"Client showed strong interest; follow up next week.\"}", + "description": "Creating a mid-stage high value deal linked to a specific contact with notes." + }, + { + "inputJson": "{\"dealName\":\"Q3 Renewal\",\"dealValue\":120000,\"currency\":\"EUR\",\"dealStage\":\"Prospecting\",\"expectedCloseDate\":\"2024-09-30\",\"contactId\":\"67890\",\"notes\":\"Renewal discussion beginning.\"}", + "description": "Adding a renewal deal planned for Q3 with currency EUR." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "sales-automation.createHTML", + "description": "Generates a customizable HTML snippet for sales outreach emails or landing pages. Accepts inputs including a headline, body text, call-to-action button text and URL, and optional branding colors. Outputs a complete, responsive HTML string ready to embed in emails or web pages.", + "category": "sales-automation", + "parameters": [ + { + "name": "headline", + "type": "string", + "description": "Main headline text for the HTML content.", + "required": true, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Main body text content explaining the offer or message.", + "required": true, + "defaultValue": "" + }, + { + "name": "ctaText", + "type": "string", + "description": "Text to display on the call-to-action button.", + "required": true, + "defaultValue": "" + }, + { + "name": "ctaUrl", + "type": "string", + "description": "URL that the call-to-action button links to.", + "required": true, + "defaultValue": "" + }, + { + "name": "brandColor", + "type": "string", + "description": "Hex code or named color used for branding elements like buttons and highlights.", + "required": false, + "defaultValue": "#007bff" + }, + { + "name": "includeFooter", + "type": "boolean", + "description": "Whether to include a standard footer with contact info and unsubscribe link.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single HTML string field with generated responsive sales content ready for embedding." + }, + "aiAgent": { + "useCase": "Use this tool when generating customized, branded HTML content for sales outreach, email campaigns, or landing pages requiring flexible text and call-to-action elements. Helps agents quickly craft consistent, professional-looking sales material without manual HTML coding.", + "limitations": "This tool generates static HTML content based on input parameters but does not handle interactive or dynamic features beyond basic responsive styles. It does not send emails or host content; integration with email or web platforms is required separately.", + "examples": [ + "Generate an HTML snippet with a promotional headline, persuasive body, and a 'Buy Now' button linking to the product page.", + "Create a branded email section with customized colors and an unsubscribe footer for compliance.", + "Produce a landing page HTML section featuring a clear call-to-action to schedule a sales demo." + ] + }, + "tags": [ + "sales", + "automation", + "email", + "HTML", + "marketing", + "lead generation", + "CTA", + "branding" + ], + "examples": [ + { + "inputJson": "{\"headline\":\"Unlock Exclusive Savings Today!\",\"bodyText\":\"Join thousands who increased sales by using our platform.\",\"ctaText\":\"Get Started Now\",\"ctaUrl\":\"https://example.com/signup\",\"brandColor\":\"#28a745\",\"includeFooter\":true}", + "description": "Create a green-themed promotional email snippet encouraging signups with a clear call-to-action and contact footer." + }, + { + "inputJson": "{\"headline\":\"Schedule Your Free Demo\",\"bodyText\":\"See how our tool revolutionizes your sales pipeline.\",\"ctaText\":\"Book Demo\",\"ctaUrl\":\"https://example.com/demo\",\"brandColor\":\"#007bff\",\"includeFooter\":false}", + "description": "Generate a blue-themed landing page section focused on demo scheduling without footer content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "sales-automation.createAttachment", + "description": "Creates a sales-related attachment such as proposals, presentations, or brochures by accepting input data like document type, content, and metadata, then processes and formats the file accordingly, outputting an attachment object with accessible URL and metadata for use in sales communications.", + "category": "sales-automation", + "parameters": [ + { + "name": "attachmentType", + "type": "string", + "description": "Type of the attachment to create, e.g., 'proposal', 'presentation', 'brochure'.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Raw content or text body to include in the attachment, such as proposal text or presentation notes.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs including title, author, and creation date for the attachment.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Desired file format for the output attachment, e.g., PDF, PPTX, DOCX.", + "required": false, + "defaultValue": "PDF" + }, + { + "name": "includeBranding", + "type": "boolean", + "description": "Whether to include company branding like logos and colors in the attachment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing attachment details including a unique identifier, file URL for download or sharing, file size, file format, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate tailored sales materials as digital attachments to send to clients or prospects. The tool automates formatting and branding integration for consistent professional output.", + "limitations": "This tool does not perform complex design layout edits or interactive media embedding. It generates static documents based on provided text and metadata.", + "examples": [ + "Create a PDF proposal attachment with company branding for a new client pitch.", + "Generate a presentation file attachment summarizing the sales forecast for internal review.", + "Produce a branded brochure attachment with provided content for email outreach." + ] + }, + "tags": [ + "sales", + "attachment", + "automation", + "document", + "branding", + "proposal", + "presentation" + ], + "examples": [ + { + "inputJson": "{\"attachmentType\":\"proposal\",\"content\":\"This is the sales proposal for Q3 products...\",\"metadata\":{\"title\":\"Q3 Proposal\",\"author\":\"Sales Team\"},\"fileFormat\":\"PDF\",\"includeBranding\":true}", + "description": "Create a branded PDF sales proposal attachment with title and author metadata." + }, + { + "inputJson": "{\"attachmentType\":\"presentation\",\"content\":\"Slide 1: Market Overview\\nSlide 2: Sales Strategy...\",\"metadata\":{\"title\":\"Sales Strategy Presentation\"},\"fileFormat\":\"PPTX\",\"includeBranding\":false}", + "description": "Generate an unbranded PowerPoint presentation attachment for an internal sales strategy meeting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "sales-automation.createPipeline", + "description": "Creates a new sales pipeline for managing lead progression through defined sales stages. Accepts pipeline name, description, stages (with optional probabilities and order), and an optional default status. Processes inputs to build a structured pipeline configuration. Outputs the created pipeline object, including its stages and metadata.", + "category": "sales-automation", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The name of the sales pipeline to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description of the pipeline's purpose or focus.", + "required": false, + "defaultValue": "" + }, + { + "name": "stages", + "type": "array", + "description": "An ordered array of stage objects defining the sales funnel steps. Each stage can include 'name' (string), 'probability' (number, 0-100), and 'order' (number) keys.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultStatus", + "type": "string", + "description": "Optional default status assigned to new leads entering this pipeline (e.g., 'New').", + "required": false, + "defaultValue": "New" + }, + { + "name": "ownerId", + "type": "string", + "description": "Optional ID of the user or team owning this pipeline.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created pipeline, including a unique pipeline ID, name, description, stages array with detailed info, creation timestamp, and owner information if provided." + }, + "aiAgent": { + "useCase": "Use this tool when a user or system needs to programmatically create and configure a new sales pipeline within a CRM or sales automation platform. It is appropriate when defining custom sales processes to organize leads through multiple stages with probabilities for forecasting.", + "limitations": "This tool cannot import existing pipeline data from external systems. It does not manage leads or update stage progress once pipeline is created.", + "examples": [ + "Create a new pipeline named 'Enterprise Sales' with stages: Prospecting, Qualification, Proposal, Closing.", + "Build a sales pipeline with default 'New' status and five stages including probabilities for each stage.", + "Create a sales pipeline owned by a specific sales team identified by ownerId to organize their leads separately." + ] + }, + "tags": [ + "sales", + "automation", + "pipeline", + "lead-management", + "crm", + "sales-funnel", + "configure" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"Enterprise Sales\",\"description\":\"Pipeline for large enterprise deals\",\"stages\":[{\"name\":\"Prospecting\",\"probability\":10,\"order\":1},{\"name\":\"Qualification\",\"probability\":30,\"order\":2},{\"name\":\"Proposal\",\"probability\":60,\"order\":3},{\"name\":\"Negotiation\",\"probability\":80,\"order\":4},{\"name\":\"Closing\",\"probability\":100,\"order\":5}],\"defaultStatus\":\"New\",\"ownerId\":\"team123\"}", + "description": "Create a comprehensive sales pipeline named 'Enterprise Sales' with detailed ordered stages and assign it to a sales team." + }, + { + "inputJson": "{\"pipelineName\":\"Retail Sales\",\"stages\":[{\"name\":\"Contact Made\",\"order\":1},{\"name\":\"Needs Analysis\",\"order\":2},{\"name\":\"Proposal Sent\",\"order\":3},{\"name\":\"Closed Won\",\"order\":4},{\"name\":\"Closed Lost\",\"order\":5}]}", + "description": "Create a simple retail sales pipeline with five stages without probabilities and default status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "sales-automation.createXML", + "description": "Generates an XML file representing sales leads and their details. Accepts an array of lead objects with fields like name, contact info, status, and notes. Processes this structured data into a well-formed XML string output that can be used for data exchange or archiving in sales automation workflows.", + "category": "sales-automation", + "parameters": [ + { + "name": "leads", + "type": "array", + "description": "An array of lead objects each containing lead information like name, email, phone, status, and notes.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "Name for the root XML element wrapping all leads. Defaults to 'Leads'.", + "required": false, + "defaultValue": "Leads" + }, + { + "name": "leadElementName", + "type": "string", + "description": "Name for each individual lead element within the root. Defaults to 'Lead'.", + "required": false, + "defaultValue": "Lead" + }, + { + "name": "includeSensitiveData", + "type": "boolean", + "description": "Flag to include sensitive fields like personal notes in the XML output. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the XML string under 'xmlString' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform structured sales lead data into a standardized XML format for integration with other systems, export, or storage. It is ideal for automating data exchange and reporting workflows in sales automation contexts.", + "limitations": "Does not validate XML schema beyond well-formedness; complex nested lead-related data structures may not be supported. Not intended for extremely large datasets due to memory constraints.", + "examples": [ + "Create an XML file from a list of new sales leads for CRM import.", + "Export filtered lead data as XML excluding sensitive notes.", + "Generate XML to send leads to a partner system requiring specific XML element naming." + ] + }, + "tags": [ + "sales", + "automation", + "xml", + "data-export", + "lead-management", + "integration" + ], + "examples": [ + { + "inputJson": "{\"leads\":[{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"phone\":\"1234567890\",\"status\":\"New\",\"notes\":\"Interested in enterprise plan.\"},{\"name\":\"Jane Smith\",\"email\":\"jane.smith@example.com\",\"phone\":\"0987654321\",\"status\":\"Contacted\",\"notes\":\"Requested callback next week.\"}],\"rootElementName\":\"SalesLeads\",\"leadElementName\":\"Prospect\",\"includeSensitiveData\":false}", + "description": "Generate XML for two leads with custom root and lead element tags, excluding sensitive notes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "sales-automation.createPackage", + "description": "Creates a sales package that bundles products or services with details like pricing, discounts, and descriptions. Accepts inputs such as package name, items list, pricing details, and optional discounts. Processes these to generate a structured sales package object usable in CRM or sales automation workflows.", + "category": "sales-automation", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "The name of the sales package to create", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of items included in the package; each item is an object with productId, quantity, unitPrice, and optional description", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) for pricing", + "required": true, + "defaultValue": "USD" + }, + { + "name": "discountPercentage", + "type": "number", + "description": "Optional discount percentage applied to the whole package", + "required": false, + "defaultValue": "0" + }, + { + "name": "validityPeriodDays", + "type": "number", + "description": "The number of days the package offer is valid for from creation", + "required": false, + "defaultValue": "30" + }, + { + "name": "packageDescription", + "type": "string", + "description": "Optional textual description of the package", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the completed sales package with calculated total price, itemized details, discount applied, validity period, and metadata like creation timestamp" + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a cohesive sales package that combines multiple products or services with their pricing and discount info for sales efforts or customer proposals. It helps in automating package creation for CRM integration or quoting systems.", + "limitations": "Does not integrate directly with inventory or real-time pricing systems; static inputs are required. It does not process payment or order fulfillment.", + "examples": [ + "Create a package named 'Startup Bundle' with 3 software licenses and a 10% discount valid for 60 days", + "Generate a service package with consulting hours and onboarding support without discount", + "Bundle multiple hardware items with individual prices into a single package with no discount" + ] + }, + "tags": [ + "sales", + "automation", + "package", + "pricing", + "discount", + "bundling" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"Startup Bundle\",\"items\":[{\"productId\":\"software_license\",\"quantity\":3,\"unitPrice\":199.99},{\"productId\":\"support_hours\",\"quantity\":10,\"unitPrice\":75}],\"currency\":\"USD\",\"discountPercentage\":10,\"validityPeriodDays\":60,\"packageDescription\":\"Ideal for small startups needing essential software and support.\"}", + "description": "Creates a sales package named 'Startup Bundle' including software licenses and support hours with a 10% discount, valid for 60 days." + }, + { + "inputJson": "{\"packageName\":\"Consulting Services\",\"items\":[{\"productId\":\"consulting_hour\",\"quantity\":20,\"unitPrice\":150}],\"currency\":\"USD\",\"discountPercentage\":0,\"validityPeriodDays\":30,\"packageDescription\":\"Professional consulting service package.\"}", + "description": "Creates a package for consulting service hours without any discount, standard 30 days validity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "sales-automation.createSchema", + "description": "Creates a customizable JSON schema template for sales lead data collection and management. Accepts configuration inputs like field names, types, required status, and validation rules, then generates a structured JSON schema for validating and standardizing sales lead information.", + "category": "sales-automation", + "parameters": [ + { + "name": "fields", + "type": "array", + "description": "List of field definitions including name, data type, required flag, and optional validation rules to include in the schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaTitle", + "type": "string", + "description": "A descriptive title for the generated schema, e.g., 'Sales Lead Data Schema'.", + "required": false, + "defaultValue": "\"Sales Lead Schema\"" + }, + { + "name": "schemaDescription", + "type": "string", + "description": "A short description explaining the purpose of the schema.", + "required": false, + "defaultValue": "\"Schema for validating sales lead data\"" + }, + { + "name": "allowAdditionalProperties", + "type": "boolean", + "description": "Flag to allow or forbid additional properties not defined in the schema.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON schema object compliant with JSON Schema Draft-07 that defines the structure, types, and validation rules for sales lead data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create standardized data validation schemas for sales leads to ensure data quality and consistency in automated sales processes or CRM integrations. It helps define required fields, data types, and validation constraints programmatically.", + "limitations": "Cannot generate schemas for non-JSON data formats. Complex conditional logic or cross-field validation rules may require manual schema editing.", + "examples": [ + "Create a schema with required fields: name (string), email (string, email format), phone (string, optional).", + "Generate a schema including custom enumeration for lead source.", + "Allow only specific fields and forbid any additional properties." + ] + }, + "tags": [ + "sales", + "automation", + "schema", + "json-schema", + "lead-management", + "data-validation", + "crm" + ], + "examples": [ + { + "inputJson": "{\"fields\":[{\"name\":\"fullName\",\"type\":\"string\",\"required\":true},{\"name\":\"emailAddress\",\"type\":\"string\",\"required\":true,\"validation\":{\"format\":\"email\"}},{\"name\":\"phoneNumber\",\"type\":\"string\",\"required\":false}],\"schemaTitle\":\"Sales Lead\",\"schemaDescription\":\"Schema for validating basic sales lead info\",\"allowAdditionalProperties\":false}", + "description": "Create a JSON schema with three fields, enforcing email format and forbidding extra properties." + }, + { + "inputJson": "{\"fields\":[{\"name\":\"leadSource\",\"type\":\"string\",\"required\":true,\"validation\":{\"enum\":[\"website\",\"referral\",\"advertisement\"]}}],\"schemaTitle\":\"Lead Source Schema\",\"allowAdditionalProperties\":true}", + "description": "Generate a schema with a required leadSource field limited to specific values and allow extra fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "sales-automation.createWorkflow", + "description": "Creates a customized sales automation workflow by accepting parameters such as trigger events, actions, and conditions. Processes the inputs to generate a structured workflow configuration that can be imported into sales platforms to automate lead management and sales tasks, outputting the workflow details as a JSON object.", + "category": "sales-automation", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name assigned to the workflow for identification purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggerEvent", + "type": "string", + "description": "The event that initiates the workflow (e.g., newLeadCreated, dealStageChanged).", + "required": true, + "defaultValue": "" + }, + { + "name": "actions", + "type": "array", + "description": "An array of action objects defining what to execute when the workflow triggers, such as sending emails, updating lead status, or creating tasks.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "array", + "description": "Optional array of condition objects to evaluate before executing actions, enabling conditional branching.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Determines if the workflow is active and ready to run once created.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object describing the created workflow, including its name, triggers, actions, conditions, unique ID, and active status." + }, + "aiAgent": { + "useCase": "Use this tool when a sales automation workflow needs to be programmatically created or updated in response to user requests for automating lead and deal management processes. This enables dynamic and flexible setup of sales automation tailored to specific business logic without manual intervention.", + "limitations": "This tool generates the workflow configuration but does not deploy it to any specific sales platform or handle platform-specific authentication; integration with external systems must be handled separately.", + "examples": [ + "Create a workflow named 'New Lead Follow-up' triggered on new lead creation that sends a welcome email and assigns the lead to a sales rep.", + "Generate an inactive workflow that triggers when a deal moves to 'Negotiation' and creates a task for the account manager.", + "Build a conditional workflow that triggers on lead scoring above a threshold to send a personalized outreach email only if the lead's industry matches 'Technology'." + ] + }, + "tags": [ + "sales", + "automation", + "workflow", + "lead management", + "CRM", + "trigger", + "actions", + "conditions" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"New Lead Follow-up\",\"triggerEvent\":\"newLeadCreated\",\"actions\":[{\"type\":\"sendEmail\",\"templateId\":\"welcome_email\"},{\"type\":\"assignLead\",\"userId\":\"user_123\"}],\"conditions\":[],\"isActive\":true}", + "description": "A workflow triggered when a new lead is created that sends a welcome email and assigns the lead to a sales representative." + }, + { + "inputJson": "{\"workflowName\":\"Deal Negotiation Task\",\"triggerEvent\":\"dealStageChanged\",\"actions\":[{\"type\":\"createTask\",\"taskName\":\"Follow up on negotiation\",\"assignedTo\":\"manager_456\"}],\"conditions\":[{\"field\":\"newStage\",\"operator\":\"equals\",\"value\":\"Negotiation\"}],\"isActive\":false}", + "description": "An inactive workflow that creates a follow-up task when a deal enters the Negotiation stage." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "finance-tools.analyzeDashboard", + "description": "Analyzes financial dashboard data by accepting input datasets including revenues, expenses, and key performance indicators (KPIs). It processes trends, deviations, and ratios to provide summarized insights, visual indicators, and performance highlights, producing a structured report for financial decision-making and monitoring.", + "category": "finance-tools", + "parameters": [ + { + "name": "financialData", + "type": "object", + "description": "An object containing arrays of financial metrics such as revenue, expenses, and KPIs over a time period, required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "An object with startDate and endDate strings (ISO 8601) specifying the period of data to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "metricsToAnalyze", + "type": "array", + "description": "List of specific metric names to focus the analysis on, e.g., ['revenue', 'expenses', 'netProfit'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "compareWithPreviousPeriod", + "type": "boolean", + "description": "Flag to indicate if the tool should compare current data with the previous similar time period for trend analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeVisualSummaries", + "type": "boolean", + "description": "Flag indicating if the output should include visual summary data like trend indicators or color-coded highlights.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including summary statistics, trend analysis results, key insights, alerts on anomalies, and optionally visual summary data." + }, + "aiAgent": { + "useCase": "Use this tool when needing comprehensive analysis of financial performance data within dashboards, especially for summarizing trends, identifying anomalies, or generating periodic performance summaries. It assists in financial decision-making by synthesizing multi-metric inputs into actionable insights.", + "limitations": "This tool does not perform raw data ingestion or cleaning; input data must be preprocessed and validated. It cannot generate raw charts but provides data for external visualization tools.", + "examples": [ + "Analyze the last quarter's revenue and expenses to identify profit trends and any unusual expenditure patterns.", + "Provide a summary report comparing current month financial KPIs with the previous month highlighting key changes.", + "Review selected financial metrics over the last year and include visual indicators for negative trends." + ] + }, + "tags": [ + "finance", + "analysis", + "dashboard", + "financial-report", + "trend-analysis", + "performance-monitoring" + ], + "examples": [ + { + "inputJson": "{\"financialData\":{\"revenue\":[50000,52000,48000,51000],\"expenses\":[30000,31000,29000,30500],\"netProfit\":[20000,21000,19000,20500]},\"timeRange\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-04-01\"},\"metricsToAnalyze\":[\"revenue\",\"expenses\"],\"compareWithPreviousPeriod\":true,\"includeVisualSummaries\":true}", + "description": "Analyze quarterly revenue and expenses with comparison to prior quarter including visual summaries." + }, + { + "inputJson": "{\"financialData\":{\"revenue\":[12000,12500,11000],\"expenses\":[7000,6800,7200],\"netProfit\":[5000,5700,3800]},\"metricsToAnalyze\":[\"netProfit\"],\"includeVisualSummaries\":false}", + "description": "Generate a net profit focused report without visual summaries for recent three months." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "finance-tools.analyzeLink", + "description": "This tool accepts a URL linking to financial documents or data sources, retrieves and parses the linked content (such as PDFs, CSVs, or HTML financial reports), performs a structured analysis including extracting key financial metrics and trends, and outputs a summarized financial report with insights and data highlights.", + "category": "finance-tools", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL pointing to the financial document or data source to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of the linked content: 'pdf', 'csv', 'html', or 'json' to assist parsing.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "extractMetrics", + "type": "array", + "description": "List of specific financial metrics or keywords to extract and analyze from the linked content (e.g., ['revenue','net income']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Whether to perform time series trend analysis if the data contains chronological financial data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxAnalysisDepth", + "type": "number", + "description": "Maximum number of pages or rows to analyze in the linked document to limit processing time.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured summary object containing extracted financial metrics, textual insights, detected trends, and a brief report overview." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract and analyze financial data from a web link to generate a concise financial summary or report, especially when users provide references to financial statements, annual reports, or data extracts online.", + "limitations": "The tool cannot analyze encrypted or password-protected links or documents, and accuracy depends on the quality and format of the linked content. It is not designed for real-time financial market data scraping or complex financial modeling.", + "examples": [ + "Analyze the financial metrics from this company's annual report PDF link.", + "Summarize key insights from the financial CSV data available on this URL.", + "Extract revenue growth trends from the web-based financial report linked here." + ] + }, + "tags": [ + "financial-analysis", + "link-parsing", + "document-processing", + "financial-metrics", + "reporting", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/financials/annual_report_2023.pdf\",\"contentType\":\"pdf\",\"extractMetrics\":[\"revenue\",\"net income\"],\"includeTrendAnalysis\":true,\"maxAnalysisDepth\":15}", + "description": "Analyze a company's 2023 annual report PDF for revenue and net income figures including trend analysis." + }, + { + "inputJson": "{\"url\":\"https://data.example.com/financials/q1_data.csv\",\"contentType\":\"csv\",\"extractMetrics\":[\"operating expense\",\"gross profit\"],\"includeTrendAnalysis\":false,\"maxAnalysisDepth\":100}", + "description": "Extract key expense and profit metrics from a CSV financial dataset without trend analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "finance-tools.analyzeKPI", + "description": "Analyzes financial Key Performance Indicators (KPIs) based on provided historical or current financial data. Accepts input data including revenue, expenses, profit margins, and other custom KPIs. Processes trends, compares against targets or benchmarks, and outputs detailed KPI performance analysis including growth rates, variance, and alerts if KPIs fall outside set thresholds.", + "category": "finance-tools", + "parameters": [ + { + "name": "financialData", + "type": "array", + "description": "Array of objects representing financial data points with dates and KPI values. Each object should contain KPI name, value, and date.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpisToAnalyze", + "type": "array", + "description": "List of KPI names to analyze from the financialData input. Limits analysis to these KPIs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetBenchmarks", + "type": "object", + "description": "An object mapping KPI names to target values or benchmark ranges used for comparison in the analysis.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "analysisPeriodStart", + "type": "string", + "description": "Start date (ISO format) of the analysis period to filter financial data accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisPeriodEnd", + "type": "string", + "description": "End date (ISO format) of the analysis period to filter financial data accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Whether to include trend analysis (e.g., percentage growth over time) in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "alertThresholds", + "type": "object", + "description": "Optional thresholds defining acceptable KPI value ranges; alerts are generated if KPIs fall outside these ranges.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results for each KPI including current values, trend metrics, comparison to benchmarks, and any alerts for anomalies or threshold breaches." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate insights from financial KPI data to aid financial planning, reporting, or performance monitoring. Ideal for summarizing financial health, identifying trends, and flagging KPIs outside acceptable ranges across a custom date period.", + "limitations": "This tool does not provide causal analysis or complex forecasting beyond trend detection. It requires structured financial data input and cannot infer missing data or implicitly suggest financial strategies.", + "examples": [ + "Analyze the monthly revenue and profit margin KPIs for the last quarter against our target benchmarks.", + "Provide an alert if the expenses KPI exceeds 10% above budget for any month in the analysis period.", + "Summarize the trend and current status of EBITDA and free cash flow over the past year." + ] + }, + "tags": [ + "finance", + "KPI", + "analysis", + "financial-management", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"financialData\":[{\"kpiName\":\"revenue\",\"value\":100000,\"date\":\"2024-01-01\"},{\"kpiName\":\"revenue\",\"value\":110000,\"date\":\"2024-02-01\"},{\"kpiName\":\"profitMargin\",\"value\":0.25,\"date\":\"2024-01-01\"},{\"kpiName\":\"profitMargin\",\"value\":0.27,\"date\":\"2024-02-01\"}],\"kpisToAnalyze\":[\"revenue\",\"profitMargin\"],\"targetBenchmarks\":{\"revenue\":105000,\"profitMargin\":0.26},\"analysisPeriodStart\":\"2024-01-01\",\"analysisPeriodEnd\":\"2024-02-29\",\"includeTrendAnalysis\":true,\"alertThresholds\":{\"profitMargin\":{\"min\":0.20}}}", + "description": "Analyze revenue and profit margin KPIs for the first two months of 2024 with targets and minimum margin alert." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "sales-automation.createResume", + "description": "Generates a professional sales-oriented resume based on provided candidate details including contact info, skills, experience, education, and achievements. Processes structured input data to create a formatted resume document (PDF or plain text) aimed at enhancing sales job applications.", + "category": "sales-automation", + "parameters": [ + { + "name": "fullName", + "type": "string", + "description": "Candidate's full name for the resume header", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact details including email, phone, and optionally LinkedIn or website", + "required": true, + "defaultValue": "" + }, + { + "name": "professionalSummary", + "type": "string", + "description": "Brief summary statement highlighting candidate's sales background and strengths", + "required": false, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "List of key sales and relevant professional skills", + "required": true, + "defaultValue": "[]" + }, + { + "name": "workExperience", + "type": "array", + "description": "Array of past job entries with role, company, start/end dates, and achievements", + "required": true, + "defaultValue": "[]" + }, + { + "name": "education", + "type": "array", + "description": "Array of educational qualifications with degree, institution, and graduation year", + "required": false, + "defaultValue": "[]" + }, + { + "name": "certifications", + "type": "array", + "description": "Optional list of sales-related certifications or training", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated resume document, e.g., 'pdf' or 'text'", + "required": true, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated resume as a base64-encoded string and its file type" + }, + "aiAgent": { + "useCase": "Use this tool when a sales candidate's raw profile data needs to be transformed into a professional resume tailored for sales positions. Helps automate resume creation for job applications, recruitment, or candidate profile building in sales automation pipelines.", + "limitations": "Cannot verify or enrich data; only formats input into resume documents. Does not create content from unstructured input or perform skill assessment.", + "examples": [ + "Create a sales resume from candidate data with work experience and skills for a PDF output.", + "Generate a plain text sales-focused resume using detailed job history and education.", + "Produce a sales resume including certifications and a professional summary in PDF format." + ] + }, + "tags": [ + "sales", + "automation", + "resume", + "document-generation", + "job-application", + "career", + "pdf-generator" + ], + "examples": [ + { + "inputJson": "{\"fullName\":\"Emma Clark\",\"contactInfo\":{\"email\":\"emma.clark@example.com\",\"phone\":\"555-234-5678\",\"linkedIn\":\"linkedin.com/in/emmaclark\"},\"professionalSummary\":\"Dynamic sales professional with 5+ years experience in B2B sales.\",\"skills\":[\"Lead Generation\",\"CRM Management\",\"Negotiation\",\"Closing Deals\"],\"workExperience\":[{\"role\":\"Sales Executive\",\"company\":\"ABC Corp\",\"startDate\":\"2018-06\",\"endDate\":\"2022-04\",\"achievements\":\"Increased regional sales by 30% over 2 years.\"}],\"education\":[{\"degree\":\"BBA Marketing\",\"institution\":\"State University\",\"graduationYear\":2017}],\"certifications\":[\"Certified Sales Professional\"],\"outputFormat\":\"pdf\"}", + "description": "Generate a PDF sales resume for Emma Clark including contact, skills, experience, education, and certification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "finance-tools.analyzeRisk", + "description": "This tool analyzes financial risk by assessing provided financial data and parameters. It accepts historical financial metrics, market volatility indices, and custom risk factors, then calculates various risk measures such as Value at Risk (VaR), Expected Shortfall, and risk exposure levels. The output is a detailed risk assessment report quantifying potential financial losses under different scenarios.", + "category": "finance-tools", + "parameters": [ + { + "name": "financialData", + "type": "array", + "description": "An array of historical financial data points including asset returns, prices, or other relevant metrics used for risk analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level percentage (e.g., 95) used in calculating Value at Risk and other risk metrics.", + "required": false, + "defaultValue": "95" + }, + { + "name": "timeHorizonDays", + "type": "number", + "description": "The time horizon in days over which to compute risk metrics like VaR.", + "required": false, + "defaultValue": "10" + }, + { + "name": "customRiskFactors", + "type": "object", + "description": "User-defined additional risk factors or weights to consider in the risk analysis model.", + "required": false, + "defaultValue": "" + }, + { + "name": "marketVolatilityIndex", + "type": "number", + "description": "An optional current market volatility index (e.g., VIX) value to adjust risk estimates accordingly.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeStressTest", + "type": "boolean", + "description": "Flag to specify whether to include stress test analysis scenarios in the risk report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing computed risk metrics such as VaR, Expected Shortfall, risk exposure breakdown, and optional stress test results, along with interpretative summaries." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to quantify financial risk exposure for portfolios or assets using historical data and market indicators. Ideal for generating risk reports to support investment, compliance, or risk management decisions.", + "limitations": "The tool does not predict future market movements or provide investment advice. It assumes the input data is accurate and sufficient for statistical risk modeling. It does not handle real-time data streaming or automated portfolio adjustments.", + "examples": [ + "Analyze the financial risk of a portfolio given historical asset returns and market volatility.", + "Calculate the 99% Value at Risk for a hedge fund's assets over a 10-day horizon.", + "Provide a stress test risk report including custom risk factors for sudden market shocks." + ] + }, + "tags": [ + "finance", + "risk analysis", + "financial modeling", + "Value at Risk", + "stress testing", + "portfolio management" + ], + "examples": [ + { + "inputJson": "{\"financialData\":[0.01, -0.02, 0.015, -0.005, 0.007], \"confidenceLevel\":95, \"timeHorizonDays\":10}", + "description": "Calculate the 95% confidence level risk metrics for a sample of asset returns over a 10-day horizon." + }, + { + "inputJson": "{\"financialData\":[0.03, -0.01, 0.02, -0.015, 0.01], \"confidenceLevel\":99, \"timeHorizonDays\":5, \"includeStressTest\":true}", + "description": "Perform risk analysis with a 99% confidence level and include stress test results over a 5-day time horizon." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "finance-tools.analyzeTable", + "description": "Analyzes financial data provided in a tabular format (e.g., income statements, balance sheets, or transaction records). The tool accepts JSON arrays representing rows and columns of financial data, performs statistical summaries, trend analysis, and key financial ratio calculations. It outputs a structured report with insights, highlights anomalies, and summarizes key metrics for informed financial decision-making.", + "category": "finance-tools", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "An array of objects representing the rows of the financial table where each object has key-value pairs corresponding to columns and their values. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnTypes", + "type": "object", + "description": "An object mapping column names to their data types (e.g., 'numeric', 'date', 'categorical'). Helps the tool interpret data correctly.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "Array of analysis operations to perform, such as ['summaryStatistics', 'trendAnalysis', 'ratioAnalysis']. Determines what insights are generated.", + "required": false, + "defaultValue": "[\"summaryStatistics\",\"trendAnalysis\"]" + }, + { + "name": "dateColumn", + "type": "string", + "description": "The name of the column to be used as the date/time index for trend analysis. Optional but recommended if trend analysis is requested.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., 'USD', 'EUR') to contextualize monetary values in the report. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "highlightThresholds", + "type": "object", + "description": "Object defining thresholds to highlight anomalies or risks (e.g., {\"debtToEquity\": 2.0}). Optional for anomaly detection.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured analysis report including summary statistics per numeric column, detected financial ratios, trend insights over time, and anomaly highlights with explanations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract meaningful financial insights from raw tabular data, like company financial statements or transaction logs, to support accounting, budgeting, or investment analysis. Ideal for generating summarized reports and identifying trends or anomalies automatically.", + "limitations": "Does not perform complex forecasting beyond basic trend analysis. Cannot interpret unformatted or non-tabular blobs of data. Requires correctly labeled columns and consistent data types. May not handle extremely large datasets efficiently.", + "examples": [ + "Analyze income statement data to summarize profit and loss trends.", + "Calculate key financial ratios from balance sheet tables.", + "Detect anomalies in monthly expense reports based on preset thresholds." + ] + }, + "tags": [ + "finance", + "financial-analysis", + "data-analysis", + "table", + "accounting", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"date\":\"2023-01-31\",\"revenue\":150000,\"expenses\":90000,\"netIncome\":60000},{\"date\":\"2023-02-28\",\"revenue\":160000,\"expenses\":95000,\"netIncome\":65000}],\"columnTypes\":{\"date\":\"date\",\"revenue\":\"numeric\",\"expenses\":\"numeric\",\"netIncome\":\"numeric\"},\"analysisTypes\":[\"summaryStatistics\",\"trendAnalysis\"],\"dateColumn\":\"date\"}", + "description": "Analyze monthly income statement entries for trend and summary statistics." + }, + { + "inputJson": "{\"tableData\":[{\"asset\":500000,\"liability\":200000,\"equity\":300000}],\"columnTypes\":{\"asset\":\"numeric\",\"liability\":\"numeric\",\"equity\":\"numeric\"},\"analysisTypes\":[\"ratioAnalysis\"],\"highlightThresholds\":{\"debtToEquity\":1.5}}", + "description": "Calculate and analyze financial ratios such as debt to equity from balance sheet data with anomaly highlighting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "finance-tools.analyzePayment", + "description": "Analyzes payment transaction data by accepting payment details including amount, currency, date, payer, payee, and payment method. It processes this information to validate data integrity, detect anomalies such as duplicates or suspicious patterns, and provides a structured summary including status, risk scores, and categorized insights about the payment behavior.", + "category": "finance-tools", + "parameters": [ + { + "name": "paymentData", + "type": "object", + "description": "An object containing detailed payment information such as amount, currency, date, payer, payee, and payment method.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateIntegrity", + "type": "boolean", + "description": "Flag to indicate whether to perform data integrity checks like verifying mandatory fields and value ranges.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable anomaly detection such as duplicate payments or unusual amounts compared to historical data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "riskAssessmentModel", + "type": "string", + "description": "Identifier for the risk assessment model to use for scoring the payment's suspiciousness (e.g., 'default', 'advanced').", + "required": false, + "defaultValue": "default" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including validity status, anomaly detection flags, risk score, and detailed summarized insights about the payment transaction." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate and interpret raw payment transaction data for financial management, fraud detection, or accounting automation. It helps determine payment validity, detect unusual patterns, and classify payment types based on input transaction details.", + "limitations": "This tool does not perform currency conversion, does not interface with payment gateways for live status updates, and does not handle bulk payment batch analysis inherently. It relies on the input data correctness and completeness.", + "examples": [ + "Analyze a single payment transaction to confirm its validity and detect anomalies.", + "Evaluate a payment record to generate a risk score for fraud detection.", + "Summarize payment behavior from transaction details for accounting reconciliation." + ] + }, + "tags": [ + "payment", + "analysis", + "finance", + "fraud-detection", + "transaction", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"paymentData\":{\"amount\":2500.00,\"currency\":\"USD\",\"date\":\"2024-05-15T15:30:00Z\",\"payer\":\"Company A\",\"payee\":\"Supplier X\",\"paymentMethod\":\"wire-transfer\"},\"validateIntegrity\":true,\"detectAnomalies\":true,\"riskAssessmentModel\":\"default\"}", + "description": "Analyze a USD wire-transfer payment of $2500 from Company A to Supplier X with integrity validation, anomaly detection, and default risk assessment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "finance-tools.uploadDataset", + "description": "Uploads financial datasets in CSV or JSON formats, validates the data structure and contents for financial compliance, and stores the dataset securely for future financial analysis or reporting. Accepts raw file content or URL to dataset, along with metadata describing dataset context.", + "category": "finance-tools", + "parameters": [ + { + "name": "datasetContent", + "type": "string", + "description": "Raw content of the dataset file in CSV or JSON format to be uploaded and processed.", + "required": false, + "defaultValue": "" + }, + { + "name": "datasetUrl", + "type": "string", + "description": "URL pointing to the external dataset file in CSV or JSON format to upload. Used if datasetContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "datasetType", + "type": "string", + "description": "Specifies the format of the dataset being uploaded; accepts 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata object describing the dataset context such as fiscal year, department, or dataset owner information.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Flag indicating whether to validate the dataset against predefined financial data schemas during upload.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status, validation results, dataset identifier for reference, and error messages if any issues were detected." + }, + "aiAgent": { + "useCase": "This tool is ideal for scenarios where an AI agent needs to integrate new financial data from various sources into a financial management system. It supports raw data ingestion, validation, and secure storage, enabling consistent and compliant financial analyses or reporting. Ideal for automating periodic imports of datasets such as expenses, revenue, or budget plans.", + "limitations": "Does not perform complex data transformations beyond schema validation; does not analyze the dataset contents or generate reports; assumes dataset files are well-formed CSV or JSON data.", + "examples": [ + "Upload a CSV file containing monthly sales data and receive confirmation of successful ingestion and compliance validation.", + "Provide a public URL to a JSON file with expense data for uploading and validation into the system.", + "Upload a dataset with accompanying metadata describing the fiscal quarter for proper classification." + ] + }, + "tags": [ + "upload", + "dataset", + "finance", + "financial-data", + "csv", + "json", + "validation" + ], + "examples": [ + { + "inputJson": "{\"datasetContent\":\"date,amount,category\\n2023-05-01,1000,Revenue\\n2023-05-02,-200,Expense\",\"datasetType\":\"csv\",\"validateSchema\":true}", + "description": "Uploading a small CSV dataset with financial transactions for validation and storage." + }, + { + "inputJson": "{\"datasetUrl\":\"https://example.com/data/financials_q2.json\",\"datasetType\":\"json\",\"metadata\":{\"fiscalYear\":\"2023\",\"quarter\":\"Q2\"},\"validateSchema\":true}", + "description": "Uploading a JSON dataset from a public URL with metadata describing fiscal quarter." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "finance-tools.downloadDataset", + "description": "Downloads financial datasets from specified sources for analysis or reporting. Accepts parameters to specify dataset type, date ranges, and format. Retrieves and returns the requested dataset as a downloadable file or data stream in CSV or JSON format.", + "category": "finance-tools", + "parameters": [ + { + "name": "datasetType", + "type": "string", + "description": "Specifies the type of financial dataset to download, such as 'stockPrices', 'exchangeRates', or 'economicIndicators'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date for the dataset in ISO format (YYYY-MM-DD). Limits data to this date or later.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date for the dataset in ISO format (YYYY-MM-DD). Limits data to this date or earlier.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The desired format for the downloaded data file; supported values are 'csv' and 'json'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as source, update timestamp, and dataset description in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the dataset data in the requested format and associated metadata if requested. This includes a 'data' field with dataset content as a string and an optional 'metadata' field." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve up-to-date or historical financial data for analysis, reporting or decision making, such as stock prices, exchange rates, or economic indicators for given date ranges.", + "limitations": "Does not provide data beyond available sources or real-time streaming data. Does not perform data transformation or cleaning beyond formatting output. Requires valid dataset types and date ranges.", + "examples": [ + "Download stock prices for Apple Inc. from January 1, 2023 to June 1, 2023 in CSV format.", + "Download exchange rates dataset for the past month in JSON, including metadata.", + "Fetch economic indicators dataset without date filtering in CSV format." + ] + }, + "tags": [ + "download", + "financial data", + "datasets", + "csv", + "json", + "reporting", + "finance" + ], + "examples": [ + { + "inputJson": "{\"datasetType\":\"stockPrices\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-06-01\",\"format\":\"csv\",\"includeMetadata\":true}", + "description": "Download Apple stock prices for first half of 2023 with metadata in CSV format." + }, + { + "inputJson": "{\"datasetType\":\"exchangeRates\",\"format\":\"json\",\"includeMetadata\":false}", + "description": "Download exchange rates dataset with no date filters in JSON format, no metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "finance-tools.downloadImage", + "description": "This tool downloads an image file from a specified URL related to financial documents or reports. It accepts the image URL as input, optionally applies basic validation on file type and size limits, and outputs the image data encoded in base64 for easy transmission and storage in financial applications.", + "category": "finance-tools", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The URL of the financial image to download (e.g., charts, scanned receipts, invoices).", + "required": true, + "defaultValue": "" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowable image file size in megabytes to download. Prevents downloading overly large images.", + "required": false, + "defaultValue": "5" + }, + { + "name": "allowedFormats", + "type": "array", + "description": "List of acceptable image formats (file extensions) such as ['png', 'jpg', 'jpeg']. The tool validates that the image conforms to one of these formats.", + "required": false, + "defaultValue": "[\"png\",\"jpg\",\"jpeg\"]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the base64 encoded image data, the image format detected, and the original image URL." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to fetch and process images related to financial records or reports from online sources. For example, downloading scanned invoices, financial charts, or receipts for further processing or analysis.", + "limitations": "Cannot download images from URLs requiring authentication or behind paywalls. Does not perform image content analysis or OCR; only downloads and validates image format and size.", + "examples": [ + "Download a JPG invoice image from a public URL.", + "Fetch a PNG chart image from a financial report website.", + "Ensure images are within size limits before downloading to prevent resource issues." + ] + }, + "tags": [ + "finance", + "download", + "image", + "financial-documents", + "receipts", + "reports" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/images/invoice123.jpg\"}", + "description": "Download a JPG image of a scanned invoice." + }, + { + "inputJson": "{\"imageUrl\":\"https://financialsite.com/charts/revenue.png\",\"maxFileSizeMB\":2}", + "description": "Download a revenue chart PNG image with a file size limit of 2 MB." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "finance-tools.uploadImage", + "description": "Uploads an image file related to financial documents, such as receipts or invoices. Accepts image data via URL or base64 string, validates file type and size, and stores it securely linked to a specified financial record. Returns an ID and status of the upload process.", + "category": "finance-tools", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or URL to the image file for upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the image file including extension (e.g., receipt.jpg).", + "required": true, + "defaultValue": "" + }, + { + "name": "associatedRecordId", + "type": "string", + "description": "Identifier of the financial record (e.g., transaction or invoice) this image is linked to.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageType", + "type": "string", + "description": "Optional descriptor of the image type, such as 'receipt', 'invoice', or 'bankStatement'.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed image file size in megabytes (default is 5MB).", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing uploadId (string), uploadStatus (string: 'success' or 'failure'), and message (string) detailing the result." + }, + "aiAgent": { + "useCase": "Use this tool when a financial management or accounting system requires capturing and storing image evidence of financial transactions, such as uploading receipts, invoices, or statements for record-keeping and auditing.", + "limitations": "This tool does not perform image content recognition or extraction of financial data from the image. It only uploads and stores image files linked to financial records.", + "examples": [ + "Upload receipt image for transaction ID 12345", + "Attach scanned invoice image to invoice record INV-9876", + "Upload bank statement photo for monthly report" + ] + }, + "tags": [ + "upload", + "image", + "finance", + "receipt", + "invoice", + "document-management", + "accounting", + "file-storage" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"https://example.com/images/receipt123.jpg\",\"fileName\":\"receipt123.jpg\",\"associatedRecordId\":\"txn-54321\",\"imageType\":\"receipt\",\"maxFileSizeMB\":5}", + "description": "Uploading a receipt image from a URL and linking to a transaction record." + }, + { + "inputJson": "{\"imageData\":\"iVBORw0KGgoAAAANSUhEUgAAA...\",\"fileName\":\"invoice456.png\",\"associatedRecordId\":\"inv-456\",\"imageType\":\"invoice\"}", + "description": "Uploading a base64-encoded invoice image linked to an invoice record." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "finance-tools.sendNotification", + "description": "This tool sends customizable financial notifications to specified recipients. It accepts inputs such as recipient contact details (email or phone), notification type (e.g., payment reminder, invoice sent), message content, and delivery method. It processes this data to dispatch notifications via the chosen channels and returns a status report of the send operation.", + "category": "finance-tools", + "parameters": [ + { + "name": "recipientContact", + "type": "string", + "description": "Email address or phone number of the notification recipient", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type of financial notification such as 'payment reminder', 'invoice sent', or 'account alert'", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "Custom message content to include in the notification", + "required": false, + "defaultValue": "" + }, + { + "name": "deliveryMethod", + "type": "string", + "description": "Method for delivery; options include 'email', 'sms', or 'push' notification", + "required": true, + "defaultValue": "email" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification; can affect delivery urgency (e.g., 'normal', 'high')", + "required": false, + "defaultValue": "normal" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier of the sender or financial institution sending the notification", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the notification send attempt, including success flag, message ID, timestamp, and error details if any" + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to notify users about financial events such as reminders for payments due, confirmation of invoice dispatch, or alerts about account activity. It helps automate communication workflows in financial management by dynamically generating and sending notifications through preferred channels.", + "limitations": "This tool cannot generate the financial event data itself; it requires the agent to supply the context and message content. It also does not handle retries or queue management for failed notifications internally.", + "examples": [ + "Send a payment due reminder email to the client.", + "Notify a user via SMS that their invoice has been sent.", + "Deliver a high-priority push notification about suspicious account activity." + ] + }, + "tags": [ + "finance", + "notification", + "communication", + "payment reminder", + "invoice", + "alert" + ], + "examples": [ + { + "inputJson": "{\"recipientContact\":\"client@example.com\",\"notificationType\":\"payment reminder\",\"messageContent\":\"Your payment of $150 is due in 3 days.\",\"deliveryMethod\":\"email\",\"priority\":\"high\",\"senderId\":\"FinCorp\"}", + "description": "Send a high priority email payment reminder to a client." + }, + { + "inputJson": "{\"recipientContact\":\"+1234567890\",\"notificationType\":\"invoice sent\",\"messageContent\":\"Your invoice #12345 has been sent and is due in 30 days.\",\"deliveryMethod\":\"sms\"}", + "description": "Send an SMS notifying the recipient that their invoice has been dispatched." + }, + { + "inputJson": "{\"recipientContact\":\"userDeviceToken\",\"notificationType\":\"account alert\",\"messageContent\":\"Suspicious login detected on your account.\",\"deliveryMethod\":\"push\",\"priority\":\"high\"}", + "description": "Send a high priority push notification about account security alert." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "finance-tools.formatContract", + "description": "This tool formats legal or financial contracts provided as plain text or structured content. It processes contract input by applying consistent styling, section numbering, indentation, and standard clause formatting to produce a well-structured, readable contract document in a specified output format such as plain text or markdown.", + "category": "finance-tools", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "The raw text or structured content of the contract to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the formatted contract document, e.g., 'plainText', 'markdown'.", + "required": false, + "defaultValue": "plainText" + }, + { + "name": "useNumberedSections", + "type": "boolean", + "description": "Flag to enable automatic numbering of contract sections and clauses.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indenting nested clauses or paragraphs.", + "required": false, + "defaultValue": "4" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and prepend a table of contents based on the contract sections.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customClauseStyles", + "type": "object", + "description": "Optional mapping of clause titles to custom formatting styles (e.g., bold, italics) to override defaults.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract text as a string under the 'formattedContract' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare or standardize contract documents for readability, presentation, or further processing by applying uniform formatting, section numbering, indentation, and optionally generating a table of contents. Ideal for financial, legal, or business contract documents that start as unformatted or inconsistently formatted text.", + "limitations": "This tool does not perform legal validation, contract content analysis, or enforce compliance. It only handles formatting and presentation aspects. Very complex contract structures may not be perfectly formatted if the input lacks clear section markers.", + "examples": [ + "Format raw contract text into markdown with numbered sections and a table of contents.", + "Indent contract clauses with 2 spaces instead of default 4.", + "Customize clause titles like 'Confidentiality' to appear in italics." + ] + }, + "tags": [ + "finance", + "contract", + "formatting", + "legal", + "document", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This Agreement is made...\\nSection 1: Definitions\\nSection 2: Payment Terms...\",\"outputFormat\":\"markdown\",\"useNumberedSections\":true,\"indentationSpaces\":4,\"includeTableOfContents\":true}", + "description": "Format a sample contract text into markdown format with numbered sections, 4-space indentation, and include a table of contents." + }, + { + "inputJson": "{\"contractText\":\"The parties agree as follows:\\nConfidentiality clause...\",\"outputFormat\":\"plainText\",\"useNumberedSections\":false,\"indentationSpaces\":2,\"includeTableOfContents\":false,\"customClauseStyles\":{\"Confidentiality\":\"italic\"}}", + "description": "Format contract text in plain text using 2 spaces for indentation and italic styling for 'Confidentiality' clause title." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "finance-tools.formatText", + "description": "This tool accepts financial-related text inputs such as transaction descriptions, reports, or accounting notes and formats them according to specified rules. It can clean up spacing, standardize date and currency formats, apply capitalization rules, and output well-structured formatted text ready for reports or further processing.", + "category": "finance-tools", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw financial text content to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateFormat", + "type": "string", + "description": "The desired date format to apply (e.g., 'MM/DD/YYYY', 'YYYY-MM-DD').", + "required": false, + "defaultValue": "\"MM/DD/YYYY\"" + }, + { + "name": "currencyFormat", + "type": "string", + "description": "The currency format style (e.g., 'USD $#,##0.00', 'EUR €#,##0.00').", + "required": false, + "defaultValue": "\"USD $#,##0.00\"" + }, + { + "name": "capitalizeTitles", + "type": "boolean", + "description": "Whether to capitalize the first letter of each significant word in titles or headers.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeExtraSpaces", + "type": "boolean", + "description": "Whether to trim and reduce multiple consecutive spaces to single spaces.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineBreakStyle", + "type": "string", + "description": "The style of line breaks to use ('LF', 'CRLF').", + "required": false, + "defaultValue": "\"LF\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted text string under 'formattedText' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize or prepare financial text documents or descriptions for reporting, presentation, or data entry processes. Ideal for cleaning up unstructured transaction notes or formatting accounting statements to a consistent, professional style.", + "limitations": "This tool does not perform language translation or interpret financial data values; it only formats textual content according to specified parameters.", + "examples": [ + "Format a bank statement description to standardize date and currency formats.", + "Clean up extra spaces and apply consistent capitalization in accounting notes.", + "Prepare financial report text with line breaks suited for CSV export." + ] + }, + "tags": [ + "formatting", + "finance", + "text", + "currency", + "date", + "reporting", + "cleanup" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"payment received on 2023/06/01 for USD 1500.00 \",\"dateFormat\":\"YYYY-MM-DD\",\"currencyFormat\":\"USD $#,##0.00\",\"capitalizeTitles\":true,\"removeExtraSpaces\":true,\"lineBreakStyle\":\"LF\"}", + "description": "Formats a financial transaction note to ISO date format and standard USD currency with proper capitalization and spacing." + }, + { + "inputJson": "{\"inputText\":\"invoice total: EUR 2345.50 due date 06-15-2023\",\"dateFormat\":\"MM/DD/YYYY\",\"currencyFormat\":\"EUR €#,##0.00\",\"capitalizeTitles\":false,\"removeExtraSpaces\":true,\"lineBreakStyle\":\"CRLF\"}", + "description": "Standardizes a European invoice line by applying a different date and currency format without capitalization changes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "finance-tools.formatTest", + "description": "This tool accepts financial test data inputs such as JSON or CSV representing accounting test cases or validation samples. It formats the test data into a standardized, human-readable report or structured format highlighting key financial fields, validation status, and summary metrics. The output helps in reviewing and validating financial calculations or reconciliations.", + "category": "finance-tools", + "parameters": [ + { + "name": "testData", + "type": "string", + "description": "Raw financial test data input as a JSON or CSV string to be formatted and analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input test data. Supported values: 'json', 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format for the formatted test output. Supported values: 'json', 'text', 'html'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section with aggregated statistics and validation results in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "highlightErrors", + "type": "boolean", + "description": "If true, visually highlight test records that failed validation or contain errors in the formatted output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted test report as a string in the chosen output format, including key financial test details, validation results, and optional summaries." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw financial test data (e.g. accounting validation tests or reconciliation samples) into a clean, readable format for human review or reporting. It helps agents produce consistent test reports that make reviewing financial correctness and data quality easier.", + "limitations": "This tool does not perform financial calculations or validations itself; it only formats and highlights provided test data. It requires valid input data in JSON or CSV formats.", + "examples": [ + "Format raw JSON financial test data into a human-readable text report summarizing pass/fail test results.", + "Convert CSV-based accounting test samples into an HTML report with error highlighting and summary statistics.", + "Generate a JSON structured report from input financial test data for API consumption." + ] + }, + "tags": [ + "formatting", + "financial-tests", + "validation", + "reporting", + "accounting", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"testData\":\"[{\\\"transactionId\\\":\\\"TX1001\\\",\\\"amount\\\":500,\\\"expectedBalance\\\":1500,\\\"actualBalance\\\":1500,\\\"passed\\\":true},{\\\"transactionId\\\":\\\"TX1002\\\",\\\"amount\\\":-200,\\\"expectedBalance\\\":1300,\\\"actualBalance\\\":1200,\\\"passed\\\":false}]\",\"inputFormat\":\"json\",\"outputFormat\":\"text\",\"includeSummary\":true,\"highlightErrors\":true}", + "description": "Format JSON financial test records highlighting errors and including a summary." + }, + { + "inputJson": "{\"testData\":\"transactionId,amount,expectedBalance,actualBalance,passed\\nTX2001,1000,2500,2500,true\\nTX2002,-500,2000,1500,false\",\"inputFormat\":\"csv\",\"outputFormat\":\"html\",\"includeSummary\":true,\"highlightErrors\":true}", + "description": "Format CSV test input into an HTML report with error highlights and aggregated summary section." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "finance-tools.formatJSON", + "description": "Formats JSON data related to financial records, transactions, or reports by applying indentation and optionally sorting keys. Accepts raw JSON string or object input, processes it to produce a clean, human-readable formatted JSON string output suitable for reports or further processing.", + "category": "finance-tools", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The raw JSON data as a string representing financial information to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted JSON output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort the keys of JSON objects alphabetically in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "omitNulls", + "type": "boolean", + "description": "Whether to omit keys with null values from the formatted JSON output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string with proper indentation and applied formatting options." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw financial JSON data into a clear, well-structured, and readable format for reporting, displaying, or auditing purposes. It helps ensure consistent styling by controlling indentation, key order, and null-value omission.", + "limitations": "This tool does not validate the JSON content for financial correctness, semantic errors, or compliance; it only formats JSON syntax and structure.", + "examples": [ + "Format raw transaction JSON with 4 spaces indentation for a financial report.", + "Produce sorted JSON keys of an account statement for better readability.", + "Omit null values in financial data export JSON for compact output." + ] + }, + "tags": [ + "finance", + "json", + "formatting", + "data-cleanup", + "reporting", + "transactions" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"{\\\"account\\\":\\\"12345\\\",\\\"balance\\\":1000,\\\"transactions\\\":null}\",\"indentation\":4,\"sortKeys\":false,\"omitNulls\":true}", + "description": "Formats the financial JSON data with 4 spaces indentation and removes null values from the output." + }, + { + "inputJson": "{\"jsonData\":\"{\\\"zeta\\\":1,\\\"alpha\\\":2}\",\"indentation\":2,\"sortKeys\":true,\"omitNulls\":false}", + "description": "Formats JSON data with 2 spaces indentation and sorts keys alphabetically." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "finance-tools.formatDataset", + "description": "Formats a financial dataset by applying specified formatting rules such as date formats, number precision, currency symbols, and column ordering. Accepts dataset as JSON or CSV input and outputs a consistently formatted dataset suitable for financial reporting or analysis.", + "category": "finance-tools", + "parameters": [ + { + "name": "dataset", + "type": "string", + "description": "The input dataset as a JSON string or CSV content that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input dataset, either 'json' or 'csv'.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format, 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format to apply to all date fields, e.g., 'YYYY-MM-DD'.", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "decimalPlaces", + "type": "number", + "description": "Number of decimal places to round numeric financial values.", + "required": false, + "defaultValue": "2" + }, + { + "name": "currencySymbol", + "type": "string", + "description": "Currency symbol to prepend to monetary values, e.g., '$'.", + "required": false, + "defaultValue": "$" + }, + { + "name": "columnsOrder", + "type": "array", + "description": "Specific order of columns to arrange in the output dataset. Columns not listed remain in original order at the end.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted dataset string and its format type." + }, + "aiAgent": { + "useCase": "Use finance-tools.formatDataset when you have raw or semi-structured financial datasets that require consistent formatting to improve readability, compliance, or integration with accounting systems. This includes formatting dates uniformly, ensuring currency values show correct symbols and decimal precision, and ordering columns for standard financial reports.", + "limitations": "This tool does not validate financial data integrity or correctness, nor does it perform currency conversion or advanced financial calculations. It formats only the dataset; data cleaning or enrichment should be done separately.", + "examples": [ + "Format a JSON expense dataset to CSV with USD symbols and two decimals.", + "Reformat a CSV financial report, changing date formats to 'MM/DD/YYYY' and reordering columns.", + "Convert a JSON dataset dates to ISO format with three decimal places for amounts." + ] + }, + "tags": [ + "formatting", + "financial-data", + "dataset", + "currency", + "date-formatting", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"dataset\":\"[{\\\"date\\\":\\\"01-02-2023\\\", \\\"amount\\\":1234.567, \\\"description\\\":\\\"Office Supplies\\\"}]\",\"inputFormat\":\"json\",\"outputFormat\":\"csv\",\"dateFormat\":\"YYYY-MM-DD\",\"decimalPlaces\":2,\"currencySymbol\":\"$\",\"columnsOrder\":[\"date\",\"description\",\"amount\"]}", + "description": "Format a JSON dataset of expenses to CSV with standardized date format, two decimals, dollar currency, and re-ordered columns." + }, + { + "inputJson": "{\"dataset\":\"date,amount,description\\n2023/02/01,2000.5,Consulting Fee\",\"inputFormat\":\"csv\",\"outputFormat\":\"json\",\"dateFormat\":\"DD-MM-YYYY\",\"decimalPlaces\":2}", + "description": "Convert CSV dataset to JSON, reformat dates and round amounts to 2 decimals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "finance-tools.formatAPI", + "description": "Formats financial data for API requests and responses. Accepts raw financial objects or transactional data, processes them by applying formatting rules such as date standardization, currency formatting, and field validation, then outputs JSON or XML compliant with common financial API schemas.", + "category": "finance-tools", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Raw financial data object to be formatted for API transmission, including transactions, accounts, or reports.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output data format, e.g., 'json' or 'xml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "currencyCode", + "type": "string", + "description": "ISO currency code (e.g., USD, EUR) used for formatting monetary values in the data.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format string (e.g., 'YYYY-MM-DD', 'MM/DD/YYYY') to standardize date fields.", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata such as timestamps or source info in the formatted output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateFields", + "type": "boolean", + "description": "Enable validation of required financial fields and data consistency before formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing formatted financial data as a string in the specified output format and a status indicating success or validation errors." + }, + "aiAgent": { + "useCase": "Use this tool when preparing raw financial data to interact with external or internal APIs that require standardized formats and validated fields, ensuring consistency in dates, currencies, and structure for reliable transmission and parsing.", + "limitations": "This tool does not perform financial calculations, aggregations, or business logic beyond formatting and basic validation. It cannot connect to APIs or handle real-time data fetching.", + "examples": [ + "Format a raw transaction list as JSON with USD currency and ISO date format.", + "Convert financial report data to XML format including metadata for auditing.", + "Validate and format account balance data with default parameters before sending to API." + ] + }, + "tags": [ + "finance", + "formatting", + "API", + "data-preparation", + "currency", + "date-handling" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"transactions\":[{\"id\":\"txn123\",\"date\":\"03/15/2024\",\"amount\":250.5}],\"accounts\":[{\"accountNumber\":\"987654321\",\"balance\":10000.75}]},\"outputFormat\":\"json\",\"currencyCode\":\"USD\",\"dateFormat\":\"YYYY-MM-DD\",\"includeMetadata\":true,\"validateFields\":true}", + "description": "Format a transaction and account data set into JSON with standard ISO date format and include metadata." + }, + { + "inputJson": "{\"inputData\":{\"report\":{\"periodStart\":\"2024-01-01\",\"periodEnd\":\"2024-03-31\",\"totalRevenue\":125000}},\"outputFormat\":\"xml\",\"currencyCode\":\"EUR\",\"dateFormat\":\"DD-MM-YYYY\",\"includeMetadata\":false,\"validateFields\":true}", + "description": "Convert quarterly report data into XML format with European currency and custom date format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "finance-tools.buildContainer", + "description": "Constructs a financial data container that aggregates multiple financial accounts into a single structured entity. Accepts an array of account objects with details like account type, balance, and currency, then processes them into a unified JSON container for simplified management and reporting.", + "category": "finance-tools", + "parameters": [ + { + "name": "accounts", + "type": "array", + "description": "An array of account objects each containing accountType (string), balance (number), and currency (string). Represents individual financial accounts to be aggregated.", + "required": true, + "defaultValue": "" + }, + { + "name": "containerName", + "type": "string", + "description": "The name to assign to the financial container for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "currencyConversion", + "type": "boolean", + "description": "Flag indicating whether balances should be converted into a single currency.", + "required": false, + "defaultValue": "false" + }, + { + "name": "targetCurrency", + "type": "string", + "description": "The currency code (e.g., USD, EUR) to which all balances should be converted if currencyConversion is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A financial container object including the container name, total aggregated balance, and a detailed list of all included accounts with their balances (converted if requested)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to aggregate multiple financial accounts into a cohesive container for overview, portfolio management, or financial reporting. This supports data integration and unification across diverse account types and currencies.", + "limitations": "Does not fetch live exchange rates; currency conversion requires externally provided rates or is approximate. Does not perform financial analytics beyond aggregation.", + "examples": [ + "Build a financial container named 'My Portfolio' combining three accounts in USD and EUR with currency conversion to USD.", + "Aggregate multiple bank accounts under a container for simplified balance tracking without currency conversion." + ] + }, + "tags": [ + "finance", + "aggregation", + "account-management", + "container", + "currency-conversion" + ], + "examples": [ + { + "inputJson": "{\"accounts\":[{\"accountType\":\"Checking\",\"balance\":1500.50,\"currency\":\"USD\"},{\"accountType\":\"Savings\",\"balance\":2000,\"currency\":\"USD\"},{\"accountType\":\"Investment\",\"balance\":3000,\"currency\":\"EUR\"}],\"containerName\":\"Personal Finance\",\"currencyConversion\":true,\"targetCurrency\":\"USD\"}", + "description": "Aggregate checking, savings, and investment accounts into a single container converting EUR to USD." + }, + { + "inputJson": "{\"accounts\":[{\"accountType\":\"Checking\",\"balance\":850,\"currency\":\"USD\"},{\"accountType\":\"Savings\",\"balance\":1200,\"currency\":\"USD\"}],\"containerName\":\"Emergency Fund\",\"currencyConversion\":false,\"targetCurrency\":\"\"}", + "description": "Create a container for emergency fund accounts without currency conversion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "finance-tools.buildService", + "description": "This tool assists in building a customizable financial management service by accepting configuration parameters such as supported financial modules, user roles, access controls, and integration settings. It processes these inputs to generate a deployable service blueprint that outlines the infrastructure and features tailored to financial accounting and management. The output is a structured JSON service specification ready for deployment or further customization.", + "category": "finance-tools", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The name identifier for the financial service being built.", + "required": true, + "defaultValue": "" + }, + { + "name": "modules", + "type": "array", + "description": "List of financial modules to include, e.g., ['accounting', 'invoicing', 'budgeting'].", + "required": true, + "defaultValue": "[]" + }, + { + "name": "userRoles", + "type": "array", + "description": "Array of user role definitions with permissions, e.g., [{role: 'admin', permissions: ['read','write']}].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "integrationEndpoints", + "type": "object", + "description": "Key-value pairs defining external service integrations, like accounting software or payment gateways.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableAuditLogging", + "type": "boolean", + "description": "Flag to enable or disable detailed audit logging for financial transactions.", + "required": false, + "defaultValue": "false" + }, + { + "name": "currencySettings", + "type": "object", + "description": "Settings for default currency and supported currencies for the service.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards the service should adhere to, e.g., ['GDPR', 'SOX'].", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the full configuration and deployment blueprint of the tailored financial management service, including enabled modules, user roles, integration configurations, and compliance settings." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically scaffold or generate a customized financial management service architecture based on specified business needs, modules, user roles, integrations, and compliance requirements. Ideal for automating initial setup or generating service blueprints for deployment pipelines.", + "limitations": "This tool does not deploy the service or handle runtime financial data processing. It only generates the configuration blueprint; actual deployment and operational management must be handled separately.", + "examples": [ + "Build a financial service with accounting and invoicing modules, admin and user roles, integrated with Stripe, supporting USD and EUR currencies, and enabled audit logging.", + "Generate a budgeting and reporting service blueprint that complies with GDPR, includes roles for managers and accountants, and integrates with QuickBooks API.", + "Create a minimal finance service supporting only basic accounting module with default user role and no integrations." + ] + }, + "tags": [ + "finance", + "service-building", + "configuration", + "accounting", + "integration", + "user-management", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"MyFinanceService\",\"modules\":[\"accounting\",\"invoicing\"],\"userRoles\":[{\"role\":\"admin\",\"permissions\":[\"read\",\"write\",\"delete\"]},{\"role\":\"user\",\"permissions\":[\"read\"]}],\"integrationEndpoints\":{\"paymentGateway\":\"https://api.stripe.com\"},\"enableAuditLogging\":true,\"currencySettings\":{\"default\":\"USD\",\"supported\":[\"USD\",\"EUR\"]},\"complianceStandards\":[\"GDPR\"]}", + "description": "Build a financial management service with accounting and invoicing, admin and user roles, Stripe integration, USD and EUR currencies, audit logging enabled, and GDPR compliance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "finance-tools.buildBranch", + "description": "Builds a financial management branch profile for organizational accounting systems. Accepts input parameters such as branch name, location, establishment date, and initial budget. Processes these inputs to create a structured branch financial profile, integrating budget allocations and basic financial metadata. Outputs a branch profile object containing identifiers, budget summaries, and status flags for accounting readiness.", + "category": "finance-tools", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "The name of the new financial branch to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "location", + "type": "string", + "description": "The physical or operational location of the branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "establishedDate", + "type": "string", + "description": "The date when the branch was or will be established, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "initialBudget", + "type": "number", + "description": "The initial budget allocated to the branch for financial management.", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the budget (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "parentBranchId", + "type": "string", + "description": "Optional identifier for the parent branch if this is a sub-branch.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created branch financial profile, including branchId (string), branchName (string), location (string), establishedDate (string), budgetSummary (object with currency and amount), and status (string indicating readiness)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or register a new financial branch within an organization's accounting system. It helps set up the branch's core financial profile, initial budget allocation, and identifiers to integrate with broader financial management systems.", + "limitations": "Does not handle detailed operational accounting entries, transaction histories, or regulatory compliance. It only sets up the branch profile and initial budget metadata.", + "examples": [ + "Create a new branch called 'Northwest Sales' located in Seattle, established today, with an initial budget of $500,000 USD.", + "Build a financial branch profile for a new regional office in Berlin without initial budget specified.", + "Register a sub-branch under parent branch ID 'BR-12345' named 'East Coast Support' located in Boston." + ] + }, + "tags": [ + "finance", + "branchManagement", + "financialPlanning", + "budgeting", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"Northwest Sales\",\"location\":\"Seattle\",\"establishedDate\":\"2024-06-01\",\"initialBudget\":500000,\"currency\":\"USD\"}", + "description": "Create a new financial branch profile for a sales branch in Seattle with a $500,000 budget." + }, + { + "inputJson": "{\"branchName\":\"Berlin Regional Office\",\"location\":\"Berlin\"}", + "description": "Build a branch profile with no initial budget or established date specified for a new Berlin office." + }, + { + "inputJson": "{\"branchName\":\"East Coast Support\",\"location\":\"Boston\",\"parentBranchId\":\"BR-12345\"}", + "description": "Create a sub-branch under parent branch BR-12345 for support operations in Boston." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "finance-tools.buildModule", + "description": "Builds a customizable financial management module as JavaScript code, based on specified features like budgeting, transaction tracking, and reporting. Accepts module name, desired features, and configuration options; generates modular, reusable JS code output suitable for integration into web apps.", + "category": "finance-tools", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name of the financial module to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "features", + "type": "array", + "description": "An array of feature identifiers to include (e.g., ['budgeting','transactionTracking','reporting']).", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Default currency code for financial calculations and display (e.g., 'USD').", + "required": false, + "defaultValue": "USD" + }, + { + "name": "includeUserAuthentication", + "type": "boolean", + "description": "Whether to include basic user authentication scaffolding within the module.", + "required": false, + "defaultValue": "false" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Preferred report output format (e.g., 'PDF', 'CSV', 'HTML').", + "required": false, + "defaultValue": "CSV" + } + ], + "returns": { + "type": "object", + "description": "An object with 'moduleCode' string containing the generated JavaScript source code for the financial management module, and 'metadata' object describing included features and settings." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate a tailored financial module codebase with specified capabilities for budgeting, tracking, and reporting to accelerate development or prototyping in financial applications.", + "limitations": "This tool does not generate fully production-ready modules; integration, security hardening, and testing remain essential. It does not handle backend database or API implementations beyond basic scaffolding.", + "examples": [ + "Generate a budgeting and transaction tracking module named 'FinanceTracker' in USD with CSV reports.", + "Create a financial module 'BizFinance' including all features with user authentication and PDF reports.", + "Build a minimal module 'SimpleFinance' with only basic reporting in HTML format." + ] + }, + "tags": [ + "finance", + "module", + "code generation", + "budgeting", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"FinanceTracker\",\"features\":[\"budgeting\",\"transactionTracking\"],\"currency\":\"USD\",\"includeUserAuthentication\":false,\"reportFormat\":\"CSV\"}", + "description": "Build a basic financial management module called 'FinanceTracker' with budgeting and transaction tracking features, using USD as currency and CSV reports." + }, + { + "inputJson": "{\"moduleName\":\"BizFinance\",\"features\":[\"budgeting\",\"transactionTracking\",\"reporting\"],\"currency\":\"EUR\",\"includeUserAuthentication\":true,\"reportFormat\":\"PDF\"}", + "description": "Create a comprehensive financial module 'BizFinance' including all main features, with user authentication and reports in PDF format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "finance-tools.buildPullRequest", + "description": "Generates a Git pull request with proposed code changes to financial tools repositories. Accepts inputs including source and target branches, change summary, detailed description, and file modifications. Processes these to create a pull request object ready for submission to version control platforms.", + "category": "finance-tools", + "parameters": [ + { + "name": "sourceBranch", + "type": "string", + "description": "The name of the branch containing the proposed changes to be merged.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The branch into which the changes will be merged, often main or master branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "A concise title summarizing the pull request changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description explaining the changes, rationale, and any relevant context for reviewers.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileChanges", + "type": "array", + "description": "List of file modifications including file paths and corresponding diffs or content changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "Optional list of usernames or emails to request for code review.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Pull request metadata object including pull request ID, URL to access it on the repository host, status, and summary details for confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when automated systems or AI agents need to programmatically construct pull requests that update or add features to financial management codebases, especially in CI/CD pipelines or automated finance tool enhancements. It streamlines code contribution processes by standardizing pull request creation.", + "limitations": "This tool does not submit or merge pull requests; it only assembles the pull request data object. Actual submission depends on integration with a version control hosting service API.", + "examples": [ + "Create a pull request to merge feature branch 'update-tax-calculation' into 'main' with summary 'Add VAT calculation improvements' and a detailed description of changes.", + "Build a pull request including modifications to two ledger files with explanation, targeting 'development' branch.", + "Generate pull request proposing fix for depreciation logic with designated reviewers for approval." + ] + }, + "tags": [ + "pull-request", + "code-management", + "finance", + "automation", + "version-control", + "git" + ], + "examples": [ + { + "inputJson": "{\"sourceBranch\":\"feature/update-tax-calculation\",\"targetBranch\":\"main\",\"title\":\"Add VAT calculation improvements\",\"description\":\"This PR enhances VAT calculations by including edge cases for exemptions.\",\"fileChanges\":[{\"filePath\":\"src/taxCalc.js\",\"diff\":\"-old code\\n+new code\"}],\"reviewers\":[\"financeLead\",\"devManager\"]}", + "description": "Creates a pull request to merge a feature branch that updates tax calculation logic with reviewers specified." + }, + { + "inputJson": "{\"sourceBranch\":\"bugfix/depreciation-fix\",\"targetBranch\":\"development\",\"title\":\"Fix depreciation calculation bug\",\"description\":\"Correcting logic error causing incorrect asset depreciation values in 2023.\",\"fileChanges\":[{\"filePath\":\"src/assets.js\",\"diff\":\"-incorrect line\\n+corrected line\"}],\"reviewers\":[]}", + "description": "Builds a pull request focused on fixing a depreciation calculation bug, without specifying reviewers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "finance-tools.generateQuery", + "description": "Generates customizable SQL query strings to retrieve financial records from accounting databases. Accepts parameters like tableName, filters, date ranges, selected columns, and sorting preferences. Outputs a valid SQL query string that can be executed on standard relational databases to fetch requested financial information.", + "category": "finance-tools", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "Name of the financial database table to query (e.g., transactions, invoices).", + "required": true, + "defaultValue": "" + }, + { + "name": "selectedColumns", + "type": "array", + "description": "List of column names to include in the result set. If empty or omitted, selects all columns.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs representing column filters. For example, {\"status\":\"paid\",\"category\":\"office\"}. Supports simple equality filtering.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "dateRange", + "type": "object", + "description": "Object specifying date range filter with keys 'startDate' and 'endDate' in ISO format 'YYYY-MM-DD'. Filters results within this period based on a 'date' column.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sortBy", + "type": "string", + "description": "Column name to sort the results by.", + "required": false, + "defaultValue": "" + }, + { + "name": "sortDescending", + "type": "boolean", + "description": "Whether to sort the results in descending order. Defaults to ascending.", + "required": false, + "defaultValue": "false" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of records to return. If not set, no limit is applied.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'query' with the generated SQL query string." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to programmatically construct precise SQL queries to fetch financial data records based on dynamic filters, columns, and ordering requirements. Ideal for scenarios requiring automation in querying accounting systems or financial databases without manual query writing.", + "limitations": "This tool generates syntactically correct SQL queries for standard SQL databases but does not execute them or verify schema presence. It supports simple equality filters and date range filtering based on a 'date' column only. Complex joins, aggregations, or advanced SQL features are not supported.", + "examples": [ + "Generate a query to retrieve all paid invoices between two dates selecting invoice_id, amount, and date.", + "Create a query to fetch the top 10 transactions sorted by amount descending where category is 'office supplies'.", + "Get all records from 'payments' where status is 'completed' without limits." + ] + }, + "tags": [ + "finance", + "SQL", + "query-generation", + "automation", + "accounting", + "data-retrieval" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"invoices\",\"selectedColumns\":[\"invoice_id\",\"amount\",\"date\"],\"filters\":{\"status\":\"paid\"},\"dateRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\"}}", + "description": "Query paid invoices from Q1 2023 selecting invoice ID, amount, and date." + }, + { + "inputJson": "{\"tableName\":\"transactions\",\"filters\":{\"category\":\"office supplies\"},\"sortBy\":\"amount\",\"sortDescending\":true,\"limit\":10}", + "description": "Top 10 office supplies transactions sorted by amount descending." + }, + { + "inputJson": "{\"tableName\":\"payments\",\"filters\":{\"status\":\"completed\"}}", + "description": "Fetch all completed payments with all columns." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "finance-tools.generateArticle", + "description": "Generates a professional financial article based on specified topics, target audience, tone, and length. Accepts input parameters such as article topic, intended reader level, desired tone, and article length. Processes this information to produce a comprehensive, well-structured article suitable for publication or informational use.", + "category": "finance-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the financial article to generate (e.g., cryptocurrency trends, personal budgeting).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended reader level or group (e.g., beginners, investors, financial advisors).", + "required": false, + "defaultValue": "general" + }, + { + "name": "tone", + "type": "string", + "description": "Writing style tone such as formal, casual, persuasive, or informative.", + "required": false, + "defaultValue": "informative" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the article in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a brief summary section at the beginning of the article.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text structured with title, optional summary, and main content sections." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a readable, well-organized financial article on a given topic. It is ideal for content creation in finance blogs, newsletters, and educational resources where tailored tone and length are important.", + "limitations": "Does not provide real-time financial data or personalized financial advice. The article content is based on general knowledge up to the model's cutoff and should be reviewed for accuracy before publication.", + "examples": [ + "Generate an informative article about retirement planning for beginners, approximately 1500 words, with a formal tone.", + "Create a casual, concise article on recent trends in cryptocurrency for retail investors.", + "Produce a persuasive article on the benefits of sustainable investing geared toward financial advisors." + ] + }, + "tags": [ + "finance", + "article generation", + "content creation", + "financial education", + "writing tool" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"cryptocurrency trends\",\"targetAudience\":\"retail investors\",\"tone\":\"informative\",\"length\":1200,\"includeSummary\":true}", + "description": "Generate an informative article about recent cryptocurrency trends targeted at retail investors with a summary included." + }, + { + "inputJson": "{\"topic\":\"personal budgeting\",\"targetAudience\":\"beginners\",\"tone\":\"casual\",\"length\":800,\"includeSummary\":false}", + "description": "Create a casual and concise article on personal budgeting basics for beginners without a summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "finance-tools.createVideo", + "description": "Generates a customized financial explainer video based on user-supplied financial data and script parameters. Accepts inputs like script text, chart data, branding options, and desired video length. Processes these to produce a video file in MP4 format illustrating the financial concepts and data visually and narratively.", + "category": "finance-tools", + "parameters": [ + { + "name": "scriptText", + "type": "string", + "description": "The narrative script text to be spoken or displayed in the video explaining financial data or concepts.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartData", + "type": "object", + "description": "Structured financial data including charts and tables to visualize within the video (e.g., time series, pie charts).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "brandingOptions", + "type": "object", + "description": "Branding settings such as logos, color schemes, and fonts to apply to the video for corporate identity.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "videoLengthSeconds", + "type": "number", + "description": "Target duration of the generated video in seconds, balancing content coverage and viewer engagement.", + "required": false, + "defaultValue": "300" + }, + { + "name": "voiceOver", + "type": "string", + "description": "Preferred voice style or language for the text-to-speech voiceover (e.g., \"en-US-Male1\").", + "required": false, + "defaultValue": "en-US-Female1" + }, + { + "name": "resolution", + "type": "string", + "description": "Output video resolution, e.g., \"1920x1080\" or \"1280x720\".", + "required": false, + "defaultValue": "1280x720" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to include subtitles matching the script text in the video.", + "required": false, + "defaultValue": "true" + }, + { + "name": "backgroundMusicTrack", + "type": "string", + "description": "Optional identifier or URL of background music track to play during the video.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns metadata including video URL for download or streaming, actual length, video format, and thumbnail image URL." + }, + "aiAgent": { + "useCase": "Use this tool to create engaging, professional financial explainer videos from raw data and narration scripts. Ideal for generating reports, investor highlights, or educational content when visual and auditory presentation is needed to simplify complex financial info.", + "limitations": "This tool does not support live data feeds or real-time video generation and cannot create videos without supplied text or data inputs.", + "examples": [ + "Create a 5-minute video explaining Q2 financial results with charts and voiceover.", + "Generate a branded video summary of yearly budget allocations using textual narration.", + "Produce a short tutorial video on investment portfolio diversification with subtitles and background music." + ] + }, + "tags": [ + "video generation", + "financial reporting", + "explainers", + "text-to-speech", + "data visualization", + "branding", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"scriptText\":\"Welcome to the Q2 financial summary. Revenue increased by 10% compared to last quarter.\",\"chartData\":{\"revenue\":[100000,110000]},\"brandingOptions\":{\"logoUrl\":\"https://example.com/logo.png\",\"primaryColor\":\"#004080\"},\"videoLengthSeconds\":300,\"voiceOver\":\"en-US-Male1\",\"resolution\":\"1920x1080\",\"includeSubtitles\":true,\"backgroundMusicTrack\":\"soft-instrumental\"}", + "description": "Create a 5-minute branded video summarizing Q2 revenue growth with charts, male voiceover, HD resolution, subtitles, and soft instrumental music." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "finance-tools.createDashboard", + "description": "Creates a customizable finance dashboard by accepting user-defined data sources, key financial metrics, and visualization preferences. Processes input financial data to generate aggregated analytics and visual components like charts and tables. Outputs a structured dashboard configuration ready for rendering or further integration.", + "category": "finance-tools", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of financial data source objects including type and connection details.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "Array of key financial metrics to calculate and display, e.g., revenue, expenses, profit margin.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationPreferences", + "type": "object", + "description": "Preferences for dashboard visualization including chart types and color schemes.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Time range for data aggregation with start and end dates in ISO format.", + "required": false, + "defaultValue": "" + }, + { + "name": "refreshIntervalMinutes", + "type": "number", + "description": "Interval in minutes to auto-refresh the dashboard data.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "Returns a dashboard configuration object including computed metrics, data visualizations definitions, and metadata for rendering." + }, + "aiAgent": { + "useCase": "Use this tool when a user wants to generate a finance dashboard that visualizes key performance indicators from various financial data sources. Ideal for business analysts or financial managers who require a holistic and customizable analytic view. It helps in automating dashboard creation based on user specifications.", + "limitations": "Does not perform real-time data fetching; data sources must be accessible and in supported formats. It cannot render dashboards but provides configuration for third-party rendering tools.", + "examples": [ + "Create a dashboard with revenue and expenses metrics from accounting software data sources.", + "Generate a finance dashboard with quarterly profit margins visualized as bar charts for the last year.", + "Set up a dashboard that refreshes every 30 minutes to monitor cash flow and budget variance." + ] + }, + "tags": [ + "finance", + "dashboard", + "analytics", + "data-visualization", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[{\"type\":\"csv\",\"connection\":\"https://example.com/data/financials.csv\"}],\"metrics\":[\"revenue\",\"expenses\",\"netProfit\"],\"visualizationPreferences\":{\"chartType\":\"line\",\"colorScheme\":\"blue\"},\"timeRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"},\"refreshIntervalMinutes\":30}", + "description": "Generate a line chart dashboard with revenue, expenses, and net profit from 2023 CSV data, refreshed every 30 minutes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "finance-tools.createInstance", + "description": "Creates a new financial management instance for a business or individual. Accepts input parameters such as instance name, currency code, base financial year, and optional account templates. Processes these to initialize a structured finance management environment with default ledgers and accounts. Outputs an instance identifier and summary of the created setup.", + "category": "finance-tools", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "The name of the finance instance to be created, typically representing a business or financial entity.", + "required": true, + "defaultValue": "" + }, + { + "name": "currencyCode", + "type": "string", + "description": "The three-letter ISO currency code (e.g., USD, EUR) that the instance will use for all monetary values.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseFinancialYear", + "type": "string", + "description": "The starting financial year in YYYY format (e.g., 2024) for fiscal reporting and accounting.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSampleData", + "type": "boolean", + "description": "Whether to populate the instance with sample transaction data and accounts for demonstration or testing purposes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "accountTemplates", + "type": "array", + "description": "Optional array of predefined account templates to initialize the chart of accounts, each entry specifies account type and name.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique identifier of the created finance instance and a summary including name, currency, financial year, and number of initialized accounts." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a new financial management environment tailored to a specific business or personal finance scenario, enabling subsequent accounting operations such as ledger entries, reporting, and analysis.", + "limitations": "Does not perform any actual bookkeeping or transaction processing. It only sets up the initial infrastructure. Currency conversion or multi-currency management is not included in this step.", + "examples": [ + "Create a new finance instance named 'AcmeCorp' using USD starting from fiscal year 2024.", + "Initialize a personal finance instance in EUR with sample data for learning purposes.", + "Create a finance instance with a custom set of account templates for a nonprofit organization." + ] + }, + "tags": [ + "finance", + "instance creation", + "accounting", + "financial management", + "business setup" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"AcmeCorp\",\"currencyCode\":\"USD\",\"baseFinancialYear\":\"2024\",\"includeSampleData\":false}", + "description": "Create a standard business finance instance named AcmeCorp with USD and fiscal year 2024, no sample data." + }, + { + "inputJson": "{\"instanceName\":\"PersonalBudget\",\"currencyCode\":\"EUR\",\"baseFinancialYear\":\"2023\",\"includeSampleData\":true}", + "description": "Create a personal budget finance instance in EUR with sample data to demonstrate usage." + }, + { + "inputJson": "{\"instanceName\":\"NonProfitOrg\",\"currencyCode\":\"GBP\",\"baseFinancialYear\":\"2024\",\"includeSampleData\":false,\"accountTemplates\":[{\"type\":\"Asset\",\"name\":\"Donations\"},{\"type\":\"Liability\",\"name\":\"Grants Payable\"}]}", + "description": "Create a nonprofit finance instance in GBP with custom account templates for donations and liabilities." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "finance-tools.createCredential", + "description": "Generates a secure financial system credential for authentication or API access by accepting user identity details, credential type, and optional expiration. It processes inputs to create a structured credential with security metadata and returns credential data including a unique ID, secret or token, and expiry details.", + "category": "finance-tools", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user or system for whom the credential is created", + "required": true, + "defaultValue": "" + }, + { + "name": "credentialType", + "type": "string", + "description": "Type of credential to create, e.g., 'password', 'apiKey', 'oauthToken'", + "required": true, + "defaultValue": "" + }, + { + "name": "permissions", + "type": "array", + "description": "List of permissions or scopes assigned to the credential", + "required": false, + "defaultValue": "[]" + }, + { + "name": "expirationDate", + "type": "string", + "description": "ISO 8601 formatted date string for credential expiry; leave empty for no expiry", + "required": false, + "defaultValue": "" + }, + { + "name": "requiresMfa", + "type": "boolean", + "description": "Indicates if the credential requires multi-factor authentication", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the credential ID, secret/token, type, creation timestamp, expiration timestamp if applicable, and assigned permissions" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create secure authentication credentials in a financial management system or API, ensuring the credentials have appropriate permissions and security features like expiration and MFA support.", + "limitations": "Does not perform credential revocation, user identity validation beyond userId format, or direct integration with external identity providers.", + "examples": [ + "Create a new API key credential for user 1234 with read and write permissions expiring in 30 days.", + "Generate a password credential for user 5678 that requires MFA and has no expiration.", + "Create an OAuth token credential with limited scope for application integration." + ] + }, + "tags": [ + "finance", + "security", + "credential", + "authentication", + "api-key", + "mfa", + "permissions" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"user123\",\"credentialType\":\"apiKey\",\"permissions\":[\"read\",\"write\"],\"expirationDate\":\"2024-12-31T23:59:59Z\",\"requiresMfa\":true}", + "description": "Create an API key credential for user 'user123' with read/write permissions, expiring end of 2024, requiring MFA." + }, + { + "inputJson": "{\"userId\":\"account567\",\"credentialType\":\"password\",\"permissions\":[],\"expirationDate\":\"\",\"requiresMfa\":false}", + "description": "Create a password credential for 'account567' with no specific permissions or expiration, and no MFA required." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "finance-tools.createTable", + "description": "Creates a customizable financial data table based on provided column definitions and row data. Accepts column configurations including headers and data types, processes input row entries aligning them with the specified schema, and outputs a structured table object suitable for reporting, visualization, or further financial analysis.", + "category": "finance-tools", + "parameters": [ + { + "name": "columns", + "type": "array", + "description": "Array of column definitions, each with a header name and data type (e.g., string, number, date). Defines the table schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "rows", + "type": "array", + "description": "Array of row objects, each containing key-value pairs corresponding to column headers. Represents financial data entries.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTotals", + "type": "boolean", + "description": "Indicates whether to append a totals row summing all numeric columns in the table.", + "required": false, + "defaultValue": "false" + }, + { + "name": "currencyFormat", + "type": "string", + "description": "Currency code (e.g., 'USD', 'EUR') to format numeric values representing monetary amounts in the table.", + "required": false, + "defaultValue": "\"USD\"" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format string (e.g., 'YYYY-MM-DD') to standardize date display in the table.", + "required": false, + "defaultValue": "\"YYYY-MM-DD\"" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed financial table, including columns definition, rows data aligned to schema, and optionally a totals row if included." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate structured and well-formatted financial tables from raw data inputs for analysis, reporting, or visualization purposes. It is ideal for consolidating diverse financial entries into coherent tabular format, supporting totals calculation and standardized formatting.", + "limitations": "This tool does not perform advanced data validation, financial calculations beyond simple totals, or database integration. More complex financial modeling or real-time data updating falls outside its scope.", + "examples": [ + "Create a monthly expense report table with categories, amounts, and dates.", + "Generate a financial summary table including totals for quarterly revenue data.", + "Format raw transaction data into a standardized financial table with currency and date formatting." + ] + }, + "tags": [ + "finance", + "table", + "data-creation", + "financial-report", + "data-formatting" + ], + "examples": [ + { + "inputJson": "{\"columns\":[{\"header\":\"Category\",\"type\":\"string\"},{\"header\":\"Amount\",\"type\":\"number\"},{\"header\":\"Date\",\"type\":\"date\"}],\"rows\":[{\"Category\":\"Office Supplies\",\"Amount\":150.50,\"Date\":\"2024-05-10\"},{\"Category\":\"Travel\",\"Amount\":425.00,\"Date\":\"2024-05-12\"}],\"includeTotals\":true,\"currencyFormat\":\"USD\",\"dateFormat\":\"YYYY-MM-DD\"}", + "description": "Create a table for expense categories, amounts in USD, and dates, including totals row." + }, + { + "inputJson": "{\"columns\":[{\"header\":\"Project\",\"type\":\"string\"},{\"header\":\"Budget\",\"type\":\"number\"}],\"rows\":[{\"Project\":\"Alpha\",\"Budget\":100000},{\"Project\":\"Beta\",\"Budget\":75000}],\"includeTotals\":true,\"currencyFormat\":\"EUR\"}", + "description": "Generate a project budget table in EUR with total budget calculation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "finance-tools.createOpportunity", + "description": "Creates a new business opportunity record based on provided client, potential revenue, expected close date, and opportunity details. It processes these inputs to generate a structured opportunity entry suitable for sales and financial tracking systems, returning a unique opportunity ID and summary for further use.", + "category": "finance-tools", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Name of the potential client or customer for the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "potentialRevenue", + "type": "number", + "description": "Estimated revenue or deal value associated with this opportunity in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedCloseDate", + "type": "string", + "description": "Projected date (ISO 8601 format) when the opportunity is expected to close.", + "required": true, + "defaultValue": "" + }, + { + "name": "stage", + "type": "string", + "description": "Current stage of the opportunity in the sales pipeline (e.g., Prospecting, Proposal, Negotiation).", + "required": false, + "defaultValue": "Prospecting" + }, + { + "name": "description", + "type": "string", + "description": "Additional details or notes describing the opportunity.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) for the potential revenue amount.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or labels categorizing the opportunity for filtering or segmentation.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique opportunity identifier, a summary of the opportunity, and the recorded details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to formalize and register a new sales or financial opportunity based on input parameters like client, expected revenue, and timeline. It helps automate the creation and tracking of opportunities in financial management and CRM systems.", + "limitations": "This tool does not validate client authenticity, does not forecast probability of success, and does not integrate automatically with external CRM platforms without additional connectors.", + "examples": [ + "Create a new sales opportunity for ACME Corp with $100,000 expected revenue closing next quarter.", + "Record an opportunity in the negotiation stage with detailed notes about client interest.", + "Add a tagged opportunity with potential recurring revenue for financial planning." + ] + }, + "tags": [ + "finance", + "sales", + "opportunity", + "business development", + "CRM", + "revenue", + "pipeline", + "management" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"ACME Corporation\",\"potentialRevenue\":250000,\"expectedCloseDate\":\"2024-09-30\",\"stage\":\"Proposal\",\"description\":\"Potential bulk order of 1000 units\",\"currency\":\"USD\",\"tags\":[\"bulk\",\"priority\"]}", + "description": "Create an opportunity with detailed client and stage info, including tags for prioritization." + }, + { + "inputJson": "{\"clientName\":\"Beta Inc\",\"potentialRevenue\":75000,\"expectedCloseDate\":\"2024-07-15\"}", + "description": "Minimal information to quickly create a basic opportunity with default stage and currency." + }, + { + "inputJson": "{\"clientName\":\"Gamma LLC\",\"potentialRevenue\":120000,\"expectedCloseDate\":\"2024-08-01\",\"stage\":\"Negotiation\",\"description\":\"Client requests extended warranty options.\"}", + "description": "Create an opportunity in negotiation stage including a specific note about client requests." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "finance-tools.createVariable", + "description": "Creates a financial variable for use in accounting or financial models. Accepts variable name, type (e.g., number, string, percentage), initial value, and description. Outputs a standardized variable object that can be integrated into financial calculations or reports.", + "category": "finance-tools", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The identifier name of the financial variable to create, e.g. 'interestRate'", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable, such as 'number', 'string', or 'percentage'", + "required": true, + "defaultValue": "" + }, + { + "name": "initialValue", + "type": "string", + "description": "The initial value assigned to this variable; format depends on variableType", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A human-readable description explaining the purpose of the variable", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created financial variable including name, type, value, and description properties" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to define and initialize variables that represent financial metrics or parameters within accounting or financial planning models, ensuring standardized variable creation for further calculations or reporting.", + "limitations": "This tool does not perform validation of the initialValue beyond basic type label and does not link variables to external financial data sources or update values automatically.", + "examples": [ + "Create a variable named 'taxRate' of type percentage with initial value '15%'", + "Initialize a numeric variable 'loanTerm' with value '30' representing loan duration in years", + "Define a descriptive string variable 'accountType' with value 'savings'" + ] + }, + "tags": [ + "finance", + "variable", + "creation", + "accounting", + "financial-modeling", + "parameters" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"taxRate\",\"variableType\":\"percentage\",\"initialValue\":\"15%\",\"description\":\"Standard corporate tax rate\"}", + "description": "Creating a percentage variable representing the tax rate" + }, + { + "inputJson": "{\"variableName\":\"loanTerm\",\"variableType\":\"number\",\"initialValue\":\"30\",\"description\":\"Loan duration in years\"}", + "description": "Creating a numeric variable to represent loan term" + }, + { + "inputJson": "{\"variableName\":\"accountType\",\"variableType\":\"string\",\"initialValue\":\"savings\",\"description\":\"Type of bank account\"}", + "description": "Creating a string variable describing the account type" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "finance-tools.createQuery", + "description": "Generates customized financial queries to extract and analyze data from accounting or financial management systems. Accepts parameters including query type, filters, date ranges, and output format to produce a structured query string or object suitable for database or API use.", + "category": "finance-tools", + "parameters": [ + { + "name": "queryType", + "type": "string", + "description": "Type of financial data to query, e.g., 'transactions', 'invoices', 'balances'.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs specifying filtering criteria such as account IDs, categories, or tags.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO format start date to filter data (inclusive).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO format end date to filter data (inclusive).", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the query output, e.g., 'SQL', 'NoSQL', 'APIRequest'.", + "required": true, + "defaultValue": "SQL" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of results to return. Defaults to no limit if not specified.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string or structured representation plus metadata such as estimated complexity or parameters used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate customized financial queries to retrieve relevant data for accounting tasks, financial analysis, or reporting. It helps agents build precise queries dynamically based on user criteria and system requirements without manual query crafting.", + "limitations": "Does not execute queries or connect to databases; only generates query text or objects. It cannot validate data correctness or results returned by external systems.", + "examples": [ + "Create a SQL query to fetch all sales transactions between 2023-01-01 and 2023-06-30 filtered by region and product category.", + "Generate an APIRequest query to retrieve invoices with status 'pending' and limit to 50 results.", + "Construct a NoSQL query for account balances updated after 2024-01-01." + ] + }, + "tags": [ + "finance", + "query", + "data-extraction", + "financial-analysis", + "accounting", + "database-query" + ], + "examples": [ + { + "inputJson": "{\"queryType\":\"transactions\",\"filters\":{\"region\":\"EMEA\",\"productCategory\":\"Electronics\"},\"startDate\":\"2023-01-01\",\"endDate\":\"2023-06-30\",\"outputFormat\":\"SQL\",\"limit\":100}", + "description": "Generate a SQL query to fetch transactions in EMEA region for Electronics category between January and June 2023, limited to 100 results." + }, + { + "inputJson": "{\"queryType\":\"invoices\",\"filters\":{\"status\":\"pending\"},\"outputFormat\":\"APIRequest\",\"limit\":50}", + "description": "Create an API request query to retrieve up to 50 pending invoices." + }, + { + "inputJson": "{\"queryType\":\"balances\",\"filters\":{},\"startDate\":\"2024-01-01\",\"outputFormat\":\"NoSQL\"}", + "description": "Generate a NoSQL query for account balances updated after January 1, 2024, with no additional filters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "human-resources.analyzeMetric", + "description": "Analyzes specified human resources metrics such as employee turnover rate, time to hire, or absenteeism by processing provided HR data. It calculates performance indicators based on employee data and time periods, outputting a structured report with metric values and trends for informed HR decision making.", + "category": "human-resources", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The name of the HR metric to analyze (e.g., 'turnoverRate', 'timeToHire', 'absenteeism').", + "required": true, + "defaultValue": "" + }, + { + "name": "employeeData", + "type": "array", + "description": "Array of employee records, each containing relevant fields like hire date, termination date, absence days, etc., required for metric calculation.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) for the analysis period to filter relevant data.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) for the analysis period to filter relevant data.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional property to group results by, e.g., department, location, or team.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the computed metric value(s), time period analyzed, optional grouping breakdown, and trend information if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when you need to assess specific HR performance metrics from raw employee data to support reporting, identify trends, or evaluate the effectiveness of HR policies and practices. It is especially useful for generating quantitative insights over a specified time frame or organizational units.", + "limitations": "This tool cannot generate metrics without sufficient or valid employee data input. It does not predict future metrics or handle unstructured textual HR data such as employee feedback or survey results.", + "examples": [ + "Analyze the turnover rate for all employees in the last year.", + "Evaluate average time to hire grouped by department for Q1 2024.", + "Calculate absenteeism rate for a specific office location over the past six months." + ] + }, + "tags": [ + "analysis", + "human-resources", + "metrics", + "employee-performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"turnoverRate\",\"employeeData\":[{\"id\":\"E001\",\"hireDate\":\"2020-01-10\",\"terminationDate\":\"2023-02-15\",\"department\":\"Sales\"},{\"id\":\"E002\",\"hireDate\":\"2021-06-01\",\"terminationDate\":\"\",\"department\":\"Sales\"},{\"id\":\"E003\",\"hireDate\":\"2022-03-12\",\"terminationDate\":\"2023-01-20\",\"department\":\"HR\"}],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\"}", + "description": "Calculate the employee turnover rate for the year 2023 using employee hire and termination dates." + }, + { + "inputJson": "{\"metricName\":\"timeToHire\",\"employeeData\":[{\"id\":\"E101\",\"applicationDate\":\"2023-04-01\",\"hireDate\":\"2023-04-15\"},{\"id\":\"E102\",\"applicationDate\":\"2023-04-10\",\"hireDate\":\"2023-05-01\"}],\"startDate\":\"2023-04-01\",\"endDate\":\"2023-06-30\",\"groupBy\":\"department\"}", + "description": "Analyze the average time to hire grouped by department during Q2 2023." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "finance-tools.createComponent", + "description": "Creates a configurable financial component module used in accounting software or financial dashboards. Accepts component type, configuration options, data sources, and display settings to build reusable modules such as budget trackers, expense charts, or invoice generators, and outputs a component descriptor JSON.", + "category": "finance-tools", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Specifies the type of financial component to create, e.g., 'budgetTracker', 'expenseChart', 'invoiceGenerator'.", + "required": true, + "defaultValue": "" + }, + { + "name": "configuration", + "type": "object", + "description": "An object specifying configuration details such as currency, date range, and user preferences specific to the component.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of identifiers or URLs for financial data sources to be linked with the component, e.g., accounting APIs, transaction databases.", + "required": true, + "defaultValue": "" + }, + { + "name": "displaySettings", + "type": "object", + "description": "Optional display settings like color scheme, layout style, and chart types for visual components.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns a component descriptor object detailing the created component's type, configuration, data source links, and rendering instructions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create or configure financial UI components or modules within accounting and financial management software to automate dashboard generation or reports. It supports scenarios requiring dynamic financial visualization or widget setup based on user or organizational data context.", + "limitations": "This tool does not perform actual financial calculations or data retrieval. It only generates configuration descriptors for components; separate tools are needed for data processing and rendering.", + "examples": [ + "Create a budget tracker component configured for USD currency and monthly date range linked to bank transaction API.", + "Generate an expense chart component with custom color scheme and data source from corporate expense reports.", + "Build an invoice generator configured for European VAT rules and linked to customer database." + ] + }, + "tags": [ + "finance", + "component", + "create", + "financial-management", + "dashboard", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"budgetTracker\",\"configuration\":{\"currency\":\"USD\",\"dateRange\":\"monthly\"},\"dataSources\":[\"bankTransactionsAPI\"],\"displaySettings\":{\"colorScheme\":\"blue\",\"layout\":\"compact\"}}", + "description": "Create a monthly budget tracker component in USD linked to bank transaction API with blue color scheme." + }, + { + "inputJson": "{\"componentType\":\"expenseChart\",\"configuration\":{\"currency\":\"EUR\",\"dateRange\":\"quarterly\"},\"dataSources\":[\"corporateExpenseDB\"],\"displaySettings\":{\"chartType\":\"bar\",\"colorScheme\":\"green\"}}", + "description": "Generate a quarterly expense chart component in EUR linked to corporate expense database with green bar chart." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "human-resources.analyzeNotification", + "description": "Analyzes employee notification messages related to recruitment and internal HR communications to assess sentiment, clarity, and engagement level. Accepts a notification text and optional metadata, processes linguistic and sentiment features, and returns an analysis report including sentiment score, key topics, and readability metrics.", + "category": "human-resources", + "parameters": [ + { + "name": "notificationText", + "type": "string", + "description": "The full text content of the employee notification message to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type of notification (e.g., recruitment, policy update, general announcement). Helps tailor the analysis context.", + "required": false, + "defaultValue": "general" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the notification text to ensure correct linguistic processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeEngagementMetrics", + "type": "boolean", + "description": "Whether to include predicted engagement metrics like expected open and response rates based on message content.", + "required": false, + "defaultValue": "false" + }, + { + "name": "keyTopicCount", + "type": "number", + "description": "Number of key topics or keywords to extract from the notification text.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including sentiment score (-1 to 1), detected key topics, readability score, detected language, notification type, and optional engagement metrics if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate the effectiveness and tone of HR notification messages, particularly in recruitment or employee communication contexts, to improve message clarity, engagement, and response. It supports language understanding, sentiment detection, and keyword extraction to generate actionable insight.", + "limitations": "Does not replace qualitative human review and may not perfectly interpret highly ambiguous or context-dependent messages. Limited to text analysis and does not process multimedia content or external engagement data.", + "examples": [ + "Analyze the sentiment and clarity of a recruitment notification before sending.", + "Evaluate internal policy update messages to assess potential employee engagement.", + "Extract key topics and overall sentiment from a department-wide announcement." + ] + }, + "tags": [ + "human-resources", + "notification", + "analysis", + "sentiment", + "recruitment", + "employee-communication", + "engagement", + "text-analysis" + ], + "examples": [ + { + "inputJson": "{\"notificationText\":\"Dear team, we are excited to announce new recruitment opportunities for our engineering department, aiming to enhance our capabilities and innovate faster.\",\"notificationType\":\"recruitment\",\"language\":\"en\",\"includeEngagementMetrics\":true,\"keyTopicCount\":3}", + "description": "Analyze a recruitment notification for sentiment, key topics, and engagement prediction." + }, + { + "inputJson": "{\"notificationText\":\"Please note the updated remote work policy effective next month. All employees must review the new guidelines.\",\"notificationType\":\"policy update\",\"language\":\"en\",\"includeEngagementMetrics\":false}", + "description": "Evaluate an internal policy update message for sentiment and key topics without engagement metrics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "human-resources.analyzeOrder", + "description": "Analyzes recruitment or procurement orders related to human resources by accepting order data input such as employee equipment requests or hiring requisitions, evaluating their status, compliance, and cost-effectiveness, and producing a detailed report highlighting insights and potential issues.", + "category": "human-resources", + "parameters": [ + { + "name": "orderId", + "type": "string", + "description": "Unique identifier of the order to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "orderData", + "type": "object", + "description": "Structured data representing the details of the order, including items requested, quantities, cost, requester, and dates", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComplianceCheck", + "type": "boolean", + "description": "Flag indicating whether to verify compliance with company HR policies in the analysis", + "required": false, + "defaultValue": "true" + }, + { + "name": "costThreshold", + "type": "number", + "description": "Optional cost limit to flag orders exceeding this value for review", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summary, compliance status, cost evaluation, and recommendations related to the provided HR-related order." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate HR procurement or hiring orders for compliance, cost efficiency, or status insights. It helps in automating the review process of HR-related purchase or recruitment orders to ensure they meet organizational policies and budget constraints.", + "limitations": "This tool does not process financial transactions or directly update order systems; it only analyzes provided order data. It requires structured and complete order data for accurate reports.", + "examples": [ + "Analyze a new equipment purchase order to ensure it complies with HR equipment policies and budget limits.", + "Evaluate a hiring requisition order to check if it meets compliance and cost effectiveness criteria." + ] + }, + "tags": [ + "analysis", + "human-resources", + "order-management", + "compliance", + "cost-control", + "procurement" + ], + "examples": [ + { + "inputJson": "{\"orderId\":\"ORD12345\",\"orderData\":{\"items\":[{\"name\":\"Laptop\",\"quantity\":2,\"price\":1200}],\"requester\":\"Alice Johnson\",\"dateRequested\":\"2024-05-10\"},\"includeComplianceCheck\":true,\"costThreshold\":2500}", + "description": "Analyzes a computer equipment purchase order for compliance and flags if total cost exceeds $2500." + }, + { + "inputJson": "{\"orderId\":\"HRREQ6789\",\"orderData\":{\"position\":\"Software Engineer\",\"department\":\"Engineering\",\"budget\":90000,\"requester\":\"Bob Smith\",\"dateRequested\":\"2024-05-15\"},\"includeComplianceCheck\":true}", + "description": "Analyzes a hiring requisition order to verify compliance with HR hiring policies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Order", + "context": null + } + }, + { + "name": "human-resources.analyzeAlert", + "description": "Analyzes HR security alerts related to employee data or internal access, processing alert details and context to identify potential security risks or policy violations, and returns a detailed risk assessment and recommended actions.", + "category": "human-resources", + "parameters": [ + { + "name": "alertType", + "type": "string", + "description": "Type of security alert to analyze (e.g., data breach, unauthorized access).", + "required": true, + "defaultValue": "" + }, + { + "name": "alertDetails", + "type": "object", + "description": "Structured details about the alert, including timestamps, affected systems, and user activity logs.", + "required": true, + "defaultValue": "" + }, + { + "name": "employeeData", + "type": "object", + "description": "Relevant employee information related to the alert, such as user roles and access permissions.", + "required": false, + "defaultValue": "" + }, + { + "name": "policyRules", + "type": "array", + "description": "List of HR security policies and rules to check against the alert for compliance assessment.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include recommended remediation or follow-up actions in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Analysis report including risk level, violation details if any, affected employees, and recommended actions." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent receives an HR-related security alert that requires assessment for risk and compliance. It helps identify insider threats, unauthorized data access, or policy violations by analyzing alert context combined with employee roles and rules. It supports automating incident response prioritization.", + "limitations": "This tool does not perform real-time intrusion detection or network monitoring. It relies on provided alert data and policy rules, and cannot independently verify data integrity or prevent threats.", + "examples": [ + "Analyze a data breach alert involving unauthorized file access by an employee.", + "Assess an alert indicating multiple failed login attempts from HR system accounts.", + "Evaluate policy violation alerts related to employee access permissions changes." + ] + }, + "tags": [ + "analysis", + "human-resources", + "security", + "alert", + "risk-assessment", + "policy-compliance" + ], + "examples": [ + { + "inputJson": "{\"alertType\":\"unauthorized_access\",\"alertDetails\":{\"timestamp\":\"2024-06-01T10:20:30Z\",\"system\":\"HR_DB\",\"userId\":\"e123\",\"activity\":\"accessed_restricted_records\"},\"employeeData\":{\"e123\":{\"role\":\"HR_Assistant\",\"accessLevel\":\"medium\"}},\"policyRules\":[{\"ruleId\":\"P1\",\"description\":\"No access to salary data without manager approval\",\"criteria\":{\"accessLevel\":\"high\"}}],\"includeRecommendations\":true}", + "description": "Analyzing an alert of unauthorized access to restricted HR records by an assistant-level employee to determine risk and policy violations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "human-resources.downloadReport", + "description": "Downloads various human resources reports based on specified report type, date range, and formatting options. Accepts parameters to filter report data (such as reports on recruitment metrics or employee turnover) and outputs a downloadable file link or binary content in the chosen format (PDF, CSV, XLSX).", + "category": "human-resources", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "Type of report to download, e.g., 'recruitment', 'turnover', 'employeePerformance'.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the report data in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the report data in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the report file, e.g., 'pdf', 'csv', 'xlsx'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to embed charts and graphs in the report (when supported by format).", + "required": false, + "defaultValue": "false" + }, + { + "name": "departmentFilter", + "type": "array", + "description": "List of department IDs to include in the report, if filtering by department is desired.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report download URL and metadata such as filename, file size, and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to obtain a formal human resources report for recruitment, turnover, or other employee-related metrics over a specific date range and in a desired format. Useful for generating insights, preparing presentations, or archiving HR data snapshots.", + "limitations": "Does not generate ad-hoc detailed data extracts or raw employee records; limited to predefined report types and formats. Real-time data may be subject to refresh delays.", + "examples": [ + "Download a recruitment report for Q1 2024 as PDF including charts", + "Get employee turnover report across all departments for 2023 in CSV format", + "Retrieve a performance summary report for the marketing department in XLSX" + ] + }, + "tags": [ + "human-resources", + "reporting", + "download", + "recruitment", + "turnover", + "employee-data", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"recruitment\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"format\":\"pdf\",\"includeCharts\":true}", + "description": "Download a recruitment report for the first quarter of 2024 in PDF format, embedding charts." + }, + { + "inputJson": "{\"reportType\":\"turnover\",\"format\":\"csv\"}", + "description": "Download a turnover report for all available dates in CSV format without charts." + }, + { + "inputJson": "{\"reportType\":\"employeePerformance\",\"departmentFilter\":[\"sales\",\"marketing\"],\"format\":\"xlsx\"}", + "description": "Download an employee performance report for Sales and Marketing departments in Excel format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "human-resources.analyzeCSV", + "description": "This tool accepts a CSV file containing employee or recruitment data, such as candidate information, interview results, or employee performance metrics. It processes the CSV by analyzing and summarizing key HR metrics like average scores, candidate progress, attrition rates, and skill distributions, then outputs a structured report highlighting insights and trends relevant for HR decision-making.", + "category": "human-resources", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV data as a string, containing HR-related records (e.g., employees or candidates).", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character used to separate fields in the CSV (e.g., comma, semicolon).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the first row of the CSV contains header labels.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analysisType", + "type": "string", + "description": "Specifies the focus of analysis, such as 'recruitment', 'performance', or 'attrition'.", + "required": false, + "defaultValue": "recruitment" + }, + { + "name": "dateFormat", + "type": "string", + "description": "The format used for dates within the CSV to parse them correctly (e.g., 'YYYY-MM-DD').", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "fieldsToAnalyze", + "type": "array", + "description": "An array of column names or indices to specifically include in the analysis.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized HR insights including metric calculations, trends, anomalies, and a textual summary report." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent receives raw employee or candidate data in CSV format and needs to generate actionable HR insights, such as recruitment progress or performance highlights, without manual data processing. It helps integrate structured HR data into conversational or reporting workflows.", + "limitations": "This tool does not perform predictive modeling, deep statistical analysis beyond summary metrics, or process non-CSV file formats. It requires properly formatted CSV data with consistent columns.", + "examples": [ + "Analyze applicant scores and interview outcomes from a CSV file to identify top candidates.", + "Summarize employee performance metrics and detect attrition trends from quarterly HR data CSV.", + "Generate insights from recruitment CSV including skill distributions and demographic summaries." + ] + }, + "tags": [ + "human-resources", + "analysis", + "csv", + "recruitment", + "employee-data", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"id,name,score,interview_result\\n1,Alice,85,pass\\n2,Bob,78,fail\\n3,Charlie,92,pass\",\"delimiter\":\",\",\"hasHeader\":true,\"analysisType\":\"recruitment\"}", + "description": "Analyze recruitment candidate scores and interview results in CSV to identify successful applicants." + }, + { + "inputJson": "{\"csvContent\":\"employee_id,performance_score,department,attrition\\n101,88,Sales,false\\n102,60,Sales,true\\n103,90,Engineering,false\",\"delimiter\":\",\",\"hasHeader\":true,\"analysisType\":\"attrition\"}", + "description": "Analyze employee performance and attrition data to summarize department-level attrition trends." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "human-resources.analyzeLead", + "description": "Analyzes lead data from recruitment pipelines to assess lead quality and prioritize follow-up actions. Accepts lead information including demographic, engagement metrics, and source data; processes this information using scoring models to produce a quality score, risk factors, and actionable insights to support recruitment decision-making.", + "category": "human-resources", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "Structured data object containing lead details such as contact info, engagement history, qualifications, and source metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "scoringModel", + "type": "string", + "description": "The model or algorithm name used for lead quality scoring (e.g., 'default', 'customModelV2').", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeRiskAssessment", + "type": "boolean", + "description": "Whether to include risk factors such as potential fraud or data inconsistencies in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "followUpPriorityThreshold", + "type": "number", + "description": "Numeric threshold (0-100) to determine which leads should be prioritized for follow-up based on quality score.", + "required": false, + "defaultValue": "70" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis summary containing the lead quality score, identified risk factors if any, and recommended priority status for follow-up." + }, + "aiAgent": { + "useCase": "Use this tool when seeking to evaluate and prioritize recruitment leads based on available lead data. Suitable for automating lead qualification to optimize recruiting efforts by focusing on high-potential candidates.", + "limitations": "Cannot replace in-depth human assessment for fit or cultural compatibility; quality depends on the input data's completeness and accuracy.", + "examples": [ + "Analyze this new candidate lead to assess quality and recommend if they should be fast-tracked for interview.", + "Provide a risk and priority analysis for recent recruitment leads from a job fair source.", + "Use a specialized custom scoring model to analyze leads for a technical position and highlight any flagged concerns." + ] + }, + "tags": [ + "human-resources", + "analysis", + "lead-management", + "recruitment", + "quality-score", + "risk-assessment", + "prioritization" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"source\":\"LinkedIn\",\"engagementHistory\":[{\"date\":\"2024-04-01\",\"action\":\"clicked_email\"},{\"date\":\"2024-04-15\",\"action\":\"applied_job\"}],\"qualifications\":[\"BSc Computer Science\"],\"experienceYears\":3},\"scoringModel\":\"default\",\"includeRiskAssessment\":true,\"followUpPriorityThreshold\":75}", + "description": "Analyze a LinkedIn candidate lead with recent engagement and 3 years experience, using default scoring to identify quality and risk." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "human-resources.renderFile", + "description": "This tool accepts a file input relevant to human resources, such as resumes, job descriptions, or employee documents, and renders it into a visually formatted, interactive HTML preview or PDF preview. It supports common document formats like DOCX, PDF, and TXT, enhancing recruiter and HR workflows by enabling quick, readable displays of HR documents without requiring separate software.", + "category": "human-resources", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded content of the HR file to be rendered, supporting DOCX, PDF, TXT formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type of the input file, e.g., 'pdf', 'docx', 'txt' to specify processing method.", + "required": true, + "defaultValue": "" + }, + { + "name": "renderFormat", + "type": "string", + "description": "Desired output rendering format, either 'html' for web preview or 'pdf' for formatted PDF preview.", + "required": true, + "defaultValue": "html" + }, + { + "name": "highlightSections", + "type": "array", + "description": "Optional list of keywords or section names to highlight in the rendered output for emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to extract and display metadata such as author, creation date alongside the document content.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing rendered document content as a string (HTML or base64 PDF) and optional metadata extracted from the document." + }, + "aiAgent": { + "useCase": "Use this tool to quickly render and preview various HR-related documents within recruitment or employee management systems, enabling seamless document review without manual software handling. Ideal when files need to be shown embedded in a web interface or processed for PDF output with formatting preserved.", + "limitations": "Cannot edit or create document content; rendering quality depends on source file format fidelity. Complex formatting or unsupported file types may not render correctly.", + "examples": [ + "Render a base64-encoded DOCX resume to HTML for recruiter preview.", + "Generate a PDF preview of a job description document from a client's uploaded PDF.", + "Highlight key sections like 'Experience' and 'Skills' in a text file representing a candidate's profile for easier reading." + ] + }, + "tags": [ + "hr", + "document", + "rendering", + "preview", + "file", + "recruitment" + ], + "examples": [ + { + "inputJson": "{\"fileContent\":\"VGhpcyBpcyBhIHRlc3QgcmVzdW1lLg==\",\"fileType\":\"txt\",\"renderFormat\":\"html\",\"highlightSections\":[\"Experience\",\"Skills\"],\"includeMetadata\":false}", + "description": "Render a simple base64 encoded TXT resume to HTML with highlighted keywords." + }, + { + "inputJson": "{\"fileContent\":\"JVBERi0xLjQKJcfs...\",\"fileType\":\"pdf\",\"renderFormat\":\"pdf\",\"highlightSections\":[],\"includeMetadata\":true}", + "description": "Render a base64 encoded PDF job description as a PDF preview including metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "human-resources.formatFunction", + "description": "Accepts a JavaScript function code string related to HR tasks such as employee data processing or recruitment workflows. The tool reformats the code to industry-standard style conventions (indentation, spacing, braces) for improved readability and maintainability, returning the neatly formatted function code string.", + "category": "human-resources", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "The raw JavaScript function code string to be formatted for HR domain usage.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation. Defaults to 2 spaces.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length before wrapping the code lines. Defaults to 80.", + "required": false, + "defaultValue": "80" + }, + { + "name": "semiColon", + "type": "boolean", + "description": "Whether to add semicolons at the end of statements. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code with consistent style conventions." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or poorly formatted JavaScript functions related to human-resources operations (e.g., employee data calculations, payroll logic, recruitment processes) that need to be cleanly formatted for code review, sharing, or embedding in HR software systems. It helps maintain coding standards and readability.", + "limitations": "This tool only formats JavaScript function syntax related to HR domain but does not validate logic correctness or execute the code. It cannot refactor or optimize function performance.", + "examples": [ + "Format a raw JavaScript function handling employee data validation.", + "Reformat recruitment scoring functions with consistent indentation and line breaks.", + "Apply standard HR coding style to payroll calculation functions to improve readability." + ] + }, + "tags": [ + "formatting", + "code", + "human-resources", + "javascript", + "function", + "style", + "employee-data" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"function calculateSalary(employee){return employee.hours*employee.rate;}\"}", + "description": "Formats a simple payroll calculation function to default style (2 spaces, semicolons, max line length 80)." + }, + { + "inputJson": "{\"functionCode\":\"function isEligible(candidate){if(candidate.yearsExperience>=5)return true;else return false;}\",\"indentSize\":4,\"useTabs\":false,\"semiColon\":true}", + "description": "Formats eligibility checking function with 4 space indentation and semicolons added for clarity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "human-resources.draftDocument", + "description": "Generates a professional HR document draft such as offer letters, employee contracts, or termination notices based on provided template type, employee details, and specific clauses. Inputs include document type, recipient information, customization fields, and optional additional notes. Outputs a formatted text document draft ready for review or further editing.", + "category": "human-resources", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of HR document to draft, e.g., offer letter, contract, termination notice.", + "required": true, + "defaultValue": "" + }, + { + "name": "employeeName", + "type": "string", + "description": "Full name of the employee recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "positionTitle", + "type": "string", + "description": "Job title or position position of the employee related to the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "startOrEndDate", + "type": "string", + "description": "Relevant date such as employment start date or contract end date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "salaryDetails", + "type": "string", + "description": "Salary or compensation details to be included if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalClauses", + "type": "array", + "description": "Optional list of additional clauses or remarks to customize the document content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSignatureBlock", + "type": "boolean", + "description": "Whether to append a signature block placeholder at the end of the document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted document text and metadata including document type and employee name." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate tailored HR-related documents reliably and consistently based on structured employee data and document type, assisting human resources or recruitment processes.", + "limitations": "Does not perform legal validation of document content; customization beyond provided parameters is limited; formatting is plain text without advanced styling.", + "examples": [ + "Draft an offer letter for employee Alice Johnson starting on 2024-07-01 for position Software Engineer with salary $90,000.", + "Create a termination notice for employee Bob Smith with last working day 2024-08-15.", + "Generate a contract document draft for new hire Cynthia Lee including confidentiality clause." + ] + }, + "tags": [ + "drafting", + "human-resources", + "document-generation", + "employee", + "offer-letter", + "contract" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"offer letter\",\"employeeName\":\"Alice Johnson\",\"positionTitle\":\"Software Engineer\",\"startOrEndDate\":\"2024-07-01\",\"salaryDetails\":\"$90,000 per annum\",\"additionalClauses\":[\"Probation period of 3 months\"],\"includeSignatureBlock\":true}", + "description": "Draft an offer letter for Alice Johnson with job title, start date, salary, probation clause and signature block." + }, + { + "inputJson": "{\"documentType\":\"termination notice\",\"employeeName\":\"Bob Smith\",\"startOrEndDate\":\"2024-08-15\",\"includeSignatureBlock\":true}", + "description": "Create a termination notice document for employee Bob Smith with last working day specified and signature block." + }, + { + "inputJson": "{\"documentType\":\"contract\",\"employeeName\":\"Cynthia Lee\",\"positionTitle\":\"Marketing Manager\",\"additionalClauses\":[\"Employee must maintain confidentiality\"],\"includeSignatureBlock\":false}", + "description": "Generate contract draft for Cynthia Lee as Marketing Manager including confidentiality clause without signature block." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "human-resources.composeReport", + "description": "Generates a comprehensive HR report by processing employee-related data such as recruitment statistics, performance reviews, and attendance records. Accepts structured data inputs and configuration options, compiles insights and summaries, and produces a formatted report in PDF or DOCX format.", + "category": "human-resources", + "parameters": [ + { + "name": "reportType", + "type": "string", + "description": "Type of report to generate (e.g., recruitment, performance, attendance). Determines included data and format.", + "required": true, + "defaultValue": "" + }, + { + "name": "employeeData", + "type": "array", + "description": "Array of employee data objects relevant to the report, including fields like ID, name, role, and metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Object specifying start and end dates (ISO 8601 strings) to filter data included in the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeGraphs", + "type": "boolean", + "description": "Whether to include graphical charts (e.g., trends, pie charts) in the report document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format for the report, such as 'pdf' or 'docx'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "title", + "type": "string", + "description": "Custom title to display at the top of the report document.", + "required": false, + "defaultValue": "HR Report" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report file as a base64-encoded string, its filename, and MIME type for download or further use." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate detailed, formatted HR reports from employee data for managerial review, compliance, or recordkeeping. It consolidates multiple data points into a single comprehensive document suitable for presentations or archives.", + "limitations": "The tool does not analyze unstructured text data, cannot access data sources directly, and requires all necessary input data to be provided in structured formats. It also cannot modify or interact with external systems to distribute reports.", + "examples": [ + "Generate a quarterly recruitment summary report including charts in PDF format.", + "Create a performance review report for employees in the sales department for the previous year without graphs.", + "Produce an attendance report for July 2023 in DOCX format with a custom title." + ] + }, + "tags": [ + "human-resources", + "reporting", + "employee-data", + "performance", + "attendance", + "recruitment", + "pdf", + "docx" + ], + "examples": [ + { + "inputJson": "{\"reportType\":\"recruitment\",\"employeeData\":[{\"id\":101,\"name\":\"Alice Smith\",\"role\":\"Developer\",\"recruitmentStatus\":\"Hired\",\"hireDate\":\"2023-02-15\"},{\"id\":102,\"name\":\"Bob Lee\",\"role\":\"Designer\",\"recruitmentStatus\":\"Rejected\",\"hireDate\":\"\"}],\"dateRange\":{\"start\":\"2023-01-01\",\"end\":\"2023-03-31\"},\"includeGraphs\":true,\"outputFormat\":\"pdf\",\"title\":\"Q1 Recruitment Report\"}", + "description": "Creates a recruitment report for Q1 2023 including charts, outputs as PDF with a custom title." + }, + { + "inputJson": "{\"reportType\":\"performance\",\"employeeData\":[{\"id\":201,\"name\":\"Carol Jones\",\"role\":\"Sales\",\"performanceScore\":85},{\"id\":202,\"name\":\"Dan Kim\",\"role\":\"Sales\",\"performanceScore\":90}],\"dateRange\":{\"start\":\"2022-07-01\",\"end\":\"2022-12-31\"},\"includeGraphs\":false,\"outputFormat\":\"docx\"}", + "description": "Generates a performance report for sales employees for second half of 2022 without graphs, outputs DOCX." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "human-resources.buildDatabase", + "description": "Creates a structured employee database for recruitment and employee management by accepting employee records and organizational hierarchy data. Processes the inputs to build a relational database schema tailored to HR needs and outputs a reference to the created database or connection string.", + "category": "human-resources", + "parameters": [ + { + "name": "employeeRecords", + "type": "array", + "description": "An array of employee objects containing personal, contact, employment details (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "organizationalHierarchy", + "type": "object", + "description": "Object representing company structure with departments and reporting lines (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database to build (e.g., SQL, NoSQL); defaults to 'SQL'.", + "required": false, + "defaultValue": "SQL" + }, + { + "name": "enableVersioning", + "type": "boolean", + "description": "Enable version control on records to track changes over time.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeAuditTrail", + "type": "boolean", + "description": "Include an audit trail for all data modifications for compliance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing connection details, database schema overview, and summary of records imported." + }, + "aiAgent": { + "useCase": "Use this tool when tasked to create or update an HR database that consolidates employee and organizational data into a manageable, structured system accessible for querying and reporting. Useful in recruitment systems, employee management, and organizational analysis.", + "limitations": "This tool does not handle real-time data synchronization, does not perform advanced data validation beyond schema consistency, and does not create user-facing interfaces or analytics dashboards.", + "examples": [ + "Build a database from a list of current employees with department info.", + "Create an HR database including employee hierarchy with versioning enabled.", + "Generate a NoSQL employee database with audit trail disabled." + ] + }, + "tags": [ + "human-resources", + "database", + "employee-management", + "recruitment", + "data-structure" + ], + "examples": [ + { + "inputJson": "{\"employeeRecords\":[{\"id\":\"E001\",\"name\":\"Alice Smith\",\"email\":\"alice@example.com\",\"position\":\"Engineer\",\"startDate\":\"2020-01-15\"},{\"id\":\"E002\",\"name\":\"Bob Jones\",\"email\":\"bob@example.com\",\"position\":\"Manager\",\"startDate\":\"2018-07-22\"}],\"organizationalHierarchy\":{\"departments\":[{\"name\":\"Engineering\",\"headId\":\"E002\"}]},\"databaseType\":\"SQL\",\"enableVersioning\":true,\"includeAuditTrail\":true}", + "description": "Create a SQL HR database with two employees and organizational hierarchy, enabling versioning and audit trails." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "human-resources.buildTest", + "description": "Creates customized employee recruitment or evaluation tests by accepting parameters including test name, question list, duration, and difficulty level. It processes the input to assemble a structured test with questions and outputs a ready-to-use test object for use in hiring or assessment processes.", + "category": "human-resources", + "parameters": [ + { + "name": "testName", + "type": "string", + "description": "The title or name of the test being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "questions", + "type": "array", + "description": "An array of question objects, each including the question text, options, correct answer, and optionally question type.", + "required": true, + "defaultValue": "" + }, + { + "name": "durationMinutes", + "type": "number", + "description": "Total time allowed to complete the test, in minutes.", + "required": false, + "defaultValue": "60" + }, + { + "name": "difficultyLevel", + "type": "string", + "description": "The overall difficulty rating of the test; e.g., 'easy', 'medium', 'hard'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "shuffleQuestions", + "type": "boolean", + "description": "Whether to randomize question order in the test.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured test object containing test metadata and the list of questions formatted and ready for deployment or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate structured tests for recruitment or employee evaluation scenarios. It helps standardize test creation by accepting question data and outputting a cohesive test format, useful when automating candidate assessments or skill evaluations.", + "limitations": "This tool does not validate question correctness or ensure test fairness. It does not administer tests or evaluate answers; it only builds the test structure.", + "examples": [ + "Create a 30-minute coding test with 10 medium-difficulty questions for software developer candidates.", + "Generate a customer service skills evaluation test named 'Customer Service Basics' with 15 easy-level multiple choice questions.", + "Build a 45-minute technical assessment test with randomized questions for a data analyst position." + ] + }, + "tags": [ + "human-resources", + "test-building", + "recruitment", + "employee-assessment", + "evaluation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"testName\":\"Software Developer Coding Test\",\"questions\":[{\"questionText\":\"What is a closure in JavaScript?\",\"options\":[\"A variable\",\"A function with preserved scope\",\"An object\",\"A syntax error\"],\"correctAnswer\":\"A function with preserved scope\"},{\"questionText\":\"Which keyword declares a constant?\",\"options\":[\"var\",\"let\",\"const\",\"define\"],\"correctAnswer\":\"const\"}],\"durationMinutes\":30,\"difficultyLevel\":\"medium\",\"shuffleQuestions\":true}", + "description": "Build a 30-minute medium difficulty coding test with two multiple-choice JavaScript questions and shuffle question order." + }, + { + "inputJson": "{\"testName\":\"Customer Service Basics\",\"questions\":[{\"questionText\":\"What is the best way to handle an angry customer?\",\"options\":[\"Ignore them\",\"Listen and empathize\",\"Argue back\",\"Transfer the call\"],\"correctAnswer\":\"Listen and empathize\"}],\"durationMinutes\":20,\"difficultyLevel\":\"easy\",\"shuffleQuestions\":false}", + "description": "Create an easy level 20-minute customer service test with one question, questions not shuffled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "human-resources.generateMetric", + "description": "Generates specific HR analytics metrics from employee and recruitment data. Accepts raw data inputs such as employee headcount, hire dates, turnover events, and survey scores, processes these values according to the selected metric type and time range, and outputs a quantitative metric value with summary statistics and optional trend data.", + "category": "human-resources", + "parameters": [ + { + "name": "metricType", + "type": "string", + "description": "The HR metric to generate (e.g., 'turnoverRate', 'timeToHire', 'employeeEngagementScore').", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (YYYY-MM-DD) for the data range to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (YYYY-MM-DD) for the data range to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "departmentIds", + "type": "array", + "description": "Optional list of department IDs to filter the data. If empty or omitted, includes all departments.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "employeeData", + "type": "array", + "description": "Array of employee records including fields such as hireDate, terminationDate, departmentId, and engagementScore.", + "required": true, + "defaultValue": "" + }, + { + "name": "recruitmentEvents", + "type": "array", + "description": "Array of recruitment event records including applicant dates, hire dates, and positions filled.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeTrend", + "type": "boolean", + "description": "Whether to include trend data over the selected period in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the calculated metric value, a human-readable summary, and optional trend data points over time." + }, + "aiAgent": { + "useCase": "Use this tool when detailed HR metrics are required from raw employee and recruitment datasets to inform business decisions, such as calculating turnover rates, average time to hire, or employee engagement scores across selected departments and date ranges.", + "limitations": "Does not collect or cleanse raw data; assumes input data is accurate and formatted correctly. Cannot generate qualitative insights or interpret causes of metric changes.", + "examples": [ + "Generate turnover rate for all departments for Q1 2024.", + "Calculate average time to hire for the marketing department between two dates.", + "Obtain employee engagement score trends for the last year across all departments." + ] + }, + "tags": [ + "human-resources", + "analytics", + "metrics", + "employee-data", + "recruitment", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"metricType\":\"turnoverRate\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"departmentIds\":[],\"employeeData\":[{\"employeeId\":\"E1\",\"hireDate\":\"2022-06-15\",\"terminationDate\":\"2024-02-10\",\"departmentId\":\"D1\",\"engagementScore\":7},{\"employeeId\":\"E2\",\"hireDate\":\"2020-03-20\",\"terminationDate\":null,\"departmentId\":\"D2\",\"engagementScore\":8},{\"employeeId\":\"E3\",\"hireDate\":\"2021-11-05\",\"terminationDate\":\"2024-03-15\",\"departmentId\":\"D1\",\"engagementScore\":6}],\"recruitmentEvents\":[],\"includeTrend\":true}", + "description": "Calculate the turnover rate and trend in all departments for Q1 2024 using employee hire and termination data." + }, + { + "inputJson": "{\"metricType\":\"timeToHire\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-06-30\",\"departmentIds\":[\"D3\"],\"employeeData\":[],\"recruitmentEvents\":[{\"positionId\":\"P1\",\"applicantDate\":\"2024-02-01\",\"hireDate\":\"2024-02-20\"},{\"positionId\":\"P2\",\"applicantDate\":\"2024-03-10\",\"hireDate\":\"2024-03-25\"}],\"includeTrend\":false}", + "description": "Calculate average time to hire for department D3 in the first half of 2024 based on recruitment event data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "human-resources.generateParagraph", + "description": "Generates a professional, structured paragraph for human resources contexts such as job descriptions, candidate profiles, or employee evaluations based on provided inputs like role, skills, achievements, or performance notes. Outputs a coherent paragraph reflecting the input details in a formal HR style.", + "category": "human-resources", + "parameters": [ + { + "name": "contextType", + "type": "string", + "description": "Type of paragraph to generate: 'jobDescription', 'candidateProfile', or 'employeeEvaluation'.", + "required": true, + "defaultValue": "" + }, + { + "name": "roleName", + "type": "string", + "description": "Name of the job role or employee name relevant to the paragraph.", + "required": false, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Array of key skills or competencies relevant to the role or candidate, used to highlight qualifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "achievements", + "type": "string", + "description": "Summary of notable achievements or contributions to include in the paragraph, especially for evaluations or profiles.", + "required": false, + "defaultValue": "" + }, + { + "name": "performanceNotes", + "type": "string", + "description": "Performance-related comments or remarks, mainly for employee evaluation paragraphs.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the paragraph: e.g., 'formal', 'engaging', or 'concise'. Default is 'formal'.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text under the key 'paragraph'. The paragraph is a single string composed in fluent, professional HR language." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to rapidly create clear, professional HR-related paragraphs for use in job postings, candidate summaries, or employee evaluations. It helps automate standard HR documentation by generating text tailored to specific inputs, saving manual writing effort.", + "limitations": "Cannot verify factual accuracy or replace human HR expertise; generated paragraphs should be reviewed for compliance and correctness. It does not generate entire documents, only individual paragraphs.", + "examples": [ + "Generate a job description paragraph emphasizing required skills for a software developer role.", + "Create a candidate profile summary highlighting skills and achievements.", + "Produce an employee evaluation paragraph based on performance notes and achievements." + ] + }, + "tags": [ + "human-resources", + "text-generation", + "job-description", + "candidate-profile", + "employee-evaluation", + "HR", + "writing-assistance" + ], + "examples": [ + { + "inputJson": "{\"contextType\":\"jobDescription\",\"roleName\":\"Software Engineer\",\"skills\":[\"JavaScript\",\"React\",\"Node.js\"],\"tone\":\"formal\"}", + "description": "Generate a formal job description paragraph for a Software Engineer role focusing on JavaScript, React, and Node.js skills." + }, + { + "inputJson": "{\"contextType\":\"candidateProfile\",\"roleName\":\"Jane Doe\",\"skills\":[\"project management\",\"team leadership\"],\"achievements\":\"Led multiple successful product launches and improved team efficiency by 20%.\",\"tone\":\"engaging\"}", + "description": "Create an engaging candidate profile paragraph for Jane Doe emphasizing leadership and achievements." + }, + { + "inputJson": "{\"contextType\":\"employeeEvaluation\",\"roleName\":\"John Smith\",\"performanceNotes\":\"Consistently meets deadlines and exceeds sales targets.\",\"achievements\":\"Top salesperson Q1 and Q2.\",\"tone\":\"formal\"}", + "description": "Produce a formal employee evaluation paragraph for John Smith based on performance notes and achievements." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "human-resources.buildServer", + "description": "This tool assists HR and IT teams in planning and specifying a dedicated server infrastructure tailored for human resources systems. It accepts inputs such as expected employee count, concurrent users, needed storage size, and compliance requirements. It processes these to recommend hardware specifications, network configurations, and security measures, outputting a detailed server build plan suitable for hosting HR applications securely and efficiently.", + "category": "human-resources", + "parameters": [ + { + "name": "expectedEmployeeCount", + "type": "number", + "description": "Estimated total number of employees in the organization to size capacity.", + "required": true, + "defaultValue": "" + }, + { + "name": "concurrentUsers", + "type": "number", + "description": "Maximum number of users expected to access the system concurrently, for load planning.", + "required": true, + "defaultValue": "" + }, + { + "name": "requiredStorageGB", + "type": "number", + "description": "Amount of storage space in gigabytes needed to store HR data and documents.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance or security standards to adhere to (e.g., GDPR, HIPAA).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "highAvailability", + "type": "boolean", + "description": "Whether the server needs high availability features such as failover clustering.", + "required": false, + "defaultValue": "false" + }, + { + "name": "backupFrequencyHours", + "type": "number", + "description": "Frequency in hours of server backups for disaster recovery planning.", + "required": false, + "defaultValue": "24" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the recommended server specifications, including hardware (CPU, RAM, storage), network setup, security configurations, and compliance features." + }, + "aiAgent": { + "useCase": "Use this tool when designing or upgrading an HR-focused server infrastructure to ensure it supports the organization's workforce size, access patterns, data storage and regulatory compliance requirements efficiently. Ideal for IT and HR collaboration when planning dedicated servers for HR management systems.", + "limitations": "This tool does not provision or deploy physical or cloud servers; it only generates a design and specification document. It doesn't handle application-level configurations or non-technical HR processes.", + "examples": [ + "Design a server plan for a company with 500 employees, up to 50 concurrent HR system users, 2000GB storage need, with GDPR compliance.", + "Generate server specs for an HR system requiring high availability, backups every 12 hours, for 300 employees and 30 concurrent users." + ] + }, + "tags": [ + "human-resources", + "infrastructure", + "server-planning", + "HR-systems", + "compliance", + "capacity-planning" + ], + "examples": [ + { + "inputJson": "{\"expectedEmployeeCount\":500,\"concurrentUsers\":50,\"requiredStorageGB\":2000,\"complianceStandards\":[\"GDPR\"],\"highAvailability\":false,\"backupFrequencyHours\":24}", + "description": "Server build plan for a mid-size company with GDPR compliance, standard backup, without high availability." + }, + { + "inputJson": "{\"expectedEmployeeCount\":300,\"concurrentUsers\":30,\"requiredStorageGB\":1000,\"complianceStandards\":[\"HIPAA\"],\"highAvailability\":true,\"backupFrequencyHours\":12}", + "description": "High availability server specifications for a healthcare company needing HIPAA compliance and frequent backups." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "human-resources.buildCommit", + "description": "This tool generates a structured commit message for code changes related to human resources systems. It accepts inputs such as a summary, detailed description, type of change, affected modules, and issue references, then constructs a standardized commit message suitable for version control. It helps maintain consistent commit messages in HR software projects.", + "category": "human-resources", + "parameters": [ + { + "name": "summary", + "type": "string", + "description": "A brief summary of the change (preferably 50 characters or less)", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the change explaining what and why", + "required": false, + "defaultValue": "" + }, + { + "name": "changeType", + "type": "string", + "description": "Type of change: e.g., feat, fix, docs, chore, refactor", + "required": true, + "defaultValue": "feat" + }, + { + "name": "affectedModules", + "type": "array", + "description": "Array of strings listing HR system modules affected by the change", + "required": false, + "defaultValue": "[]" + }, + { + "name": "issueReferences", + "type": "array", + "description": "Array of issue or ticket IDs related to this change", + "required": false, + "defaultValue": "[]" + }, + { + "name": "breakingChange", + "type": "boolean", + "description": "Flag indicating if the commit includes breaking changes", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object with a single property 'commitMessage' containing the formatted commit message string" + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a standardized commit message for code changes in HR-related software projects, ensuring clarity and uniformity across commits. Useful in automating commit generation based on change metadata provided by a human or another AI agent.", + "limitations": "This tool does not analyze code or determine changes automatically; it relies on input metadata to build the message. It does not interact with version control systems directly.", + "examples": [ + "Generate a commit message for a new HR module feature with summary, detailed description, and issue references.", + "Build a fix commit message that notes breaking changes affecting payroll modules.", + "Create a chore commit for documentation updates without affected modules." + ] + }, + "tags": [ + "commit", + "human-resources", + "version-control", + "message-format", + "automation" + ], + "examples": [ + { + "inputJson": "{\"summary\":\"Add employee onboarding module\",\"description\":\"Introduces the new onboarding module with workflows and document upload.\",\"changeType\":\"feat\",\"affectedModules\":[\"onboarding\"],\"issueReferences\":[\"HR-123\"],\"breakingChange\":false}", + "description": "Feature commit adding onboarding module with issue reference." + }, + { + "inputJson": "{\"summary\":\"Fix payroll calculation bug\",\"description\":\"Corrects rounding error in monthly payroll calculations, affects salaries module.\",\"changeType\":\"fix\",\"affectedModules\":[\"payroll\"],\"issueReferences\":[\"HR-456\"],\"breakingChange\":true}", + "description": "Fix commit with breaking change flag for payroll module." + }, + { + "inputJson": "{\"summary\":\"Update HR documentation\",\"description\":\"Adds new section about remote work policies.\",\"changeType\":\"docs\",\"affectedModules\":[],\"issueReferences\":[],\"breakingChange\":false}", + "description": "Documentation update commit with no specific modules or issue references." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "human-resources.generateEvent", + "description": "Generates a structured event record capturing specific HR activities such as recruitment drives, training sessions, or performance reviews. Accepts details like event type, date, participants, and metadata; processes and validates input; outputs a standardized event object suitable for analytics and reporting systems.", + "category": "human-resources", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of the HR event being recorded (e.g., recruitment, training, performanceReview).", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDate", + "type": "string", + "description": "ISO 8601 formatted date and time when the event occurred.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant identifiers involved in the event (e.g., employee IDs).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "location", + "type": "string", + "description": "Physical or virtual location where the event took place.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief description or notes about the event.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional key-value pairs providing extra context or details about the event.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An event object containing all provided data along with a unique event ID and timestamp for tracking and analytics." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create detailed, standardized records of HR-related events for analytics, auditing, or reporting purposes. It helps agents structure various HR activities uniformly to facilitate downstream processing and insights.", + "limitations": "Does not perform data persistence; does not analyze event content or outcomes; relies on correct and complete input data from users or other systems.", + "examples": [ + "Generate a recruitment event record for a campus hiring drive.", + "Create an event object representing a leadership training session with participant IDs.", + "Record a performance review meeting including notes and location." + ] + }, + "tags": [ + "human-resources", + "event-generation", + "hr-analytics", + "recruitment", + "training", + "performance-review", + "data-structuring" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"recruitment\",\"eventDate\":\"2024-05-15T09:00:00Z\",\"participants\":[\"emp123\",\"emp456\"],\"location\":\"Conference Hall A\",\"description\":\"Annual campus hiring event.\",\"metadata\":{\"recruiter\":\"John Doe\",\"numberOfPositions\":5}}", + "description": "Generate a recruitment event for a campus hiring drive with participants and metadata." + }, + { + "inputJson": "{\"eventType\":\"training\",\"eventDate\":\"2024-06-01T13:30:00Z\",\"participants\":[\"emp789\",\"emp321\"],\"description\":\"Leadership skills workshop.\",\"metadata\":{\"trainer\":\"Jane Smith\"}}", + "description": "Create a training event object recording participant employees and trainer info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "human-resources.generateCSV", + "description": "Generates a CSV file representing employee data based on specified filters and selected fields. Accepts input parameters defining which employee attributes to include, filtering conditions (e.g., department, employment status), and CSV formatting options. Outputs a CSV string compliant with standards, ready for download or integration with HR systems.", + "category": "human-resources", + "parameters": [ + { + "name": "fields", + "type": "array", + "description": "List of employee data fields to include as CSV columns, e.g., ['name','email','department']. At least one field required.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Filter criteria to select employees, such as {department:'Engineering',status:'Active'}. Optional; if omitted, includes all employees.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers as first CSV row (true) or not (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character to separate CSV values, default comma ','.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteValues", + "type": "boolean", + "description": "Whether to wrap values containing delimiter or special characters in double quotes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of employee records to include; 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Object containing the CSV content as a string in 'csvData' field and metadata such as record count." + }, + "aiAgent": { + "useCase": "Use human-resources.generateCSV when you need to export or extract employee information from HR records into a standard CSV format for reporting, audit, migration, or integration tasks. It's useful for generating filtered datasets with specific columns on demand.", + "limitations": "Does not perform data validation beyond basic CSV formatting; cannot fetch data from external HR systems autonomously; requires valid input filters and fields matching the underlying employee dataset.", + "examples": [ + "Generate a CSV of active employees' names and emails.", + "Export employee data for the Engineering department with specific fields.", + "Create a CSV with no headers and tab-delimited values for a quick import." + ] + }, + "tags": [ + "human-resources", + "export", + "employee-data", + "csv", + "reporting", + "hr", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"fields\":[\"name\",\"email\",\"department\"],\"filters\":{\"status\":\"Active\"},\"includeHeaders\":true,\"delimiter\":\",\",\"quoteValues\":true,\"maxRecords\":100}", + "description": "Generate CSV of up to 100 active employees with name, email, and department columns including headers." + }, + { + "inputJson": "{\"fields\":[\"employeeId\",\"name\",\"hireDate\"],\"filters\":{\"department\":\"Engineering\"},\"includeHeaders\":false,\"delimiter\":\"\\t\",\"quoteValues\":true,\"maxRecords\":0}", + "description": "Export all employees from Engineering department with employee ID, name, and hire date, tab-separated without headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "human-resources.generateSummary", + "description": "Generates a concise summary report for specified employees based on their personnel data and performance records. Accepts employee IDs and optional filters, then aggregates data such as roles, tenure, performance metrics, and recent activities to produce a structured text summary usable for HR reviews or reports.", + "category": "human-resources", + "parameters": [ + { + "name": "employeeIds", + "type": "array", + "description": "Array of employee identifiers for whom summaries will be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "includePerformance", + "type": "boolean", + "description": "Whether to include performance evaluation details in the summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateRangeStart", + "type": "string", + "description": "Start date (YYYY-MM-DD) to filter employee data and activities. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateRangeEnd", + "type": "string", + "description": "End date (YYYY-MM-DD) to filter employee data and activities. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum character length for the generated summary text.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing employeeIds as keys and their corresponding summary text as values." + }, + "aiAgent": { + "useCase": "Use this tool when needing concise yet comprehensive summaries of employee profiles and performance for HR decision-making, reporting, or recruitment analysis. It helps condense large personnel data into actionable insights quickly.", + "limitations": "Does not generate evaluations or recommendations. Relies on accurate and timely input data. Summaries are automatically generated and may require human review for sensitive or complex cases.", + "examples": [ + "Generate performance summaries for employees 123, 456, and 789 for the past quarter.", + "Create a brief overview of new hires without performance data included.", + "Summarize employee activity between 2023-01-01 to 2023-03-31 with a summary length limit of 500 characters." + ] + }, + "tags": [ + "human-resources", + "summary-generation", + "employee-data", + "HR-reporting", + "performance-review" + ], + "examples": [ + { + "inputJson": "{\"employeeIds\":[\"123\",\"456\"],\"includePerformance\":true}", + "description": "Generate a summary including performance details for employees with IDs 123 and 456." + }, + { + "inputJson": "{\"employeeIds\":[\"789\"],\"includePerformance\":false,\"dateRangeStart\":\"2024-01-01\",\"dateRangeEnd\":\"2024-03-31\"}", + "description": "Generate a summary excluding performance data for employee 789 for Q1 2024." + }, + { + "inputJson": "{\"employeeIds\":[\"321\"],\"maxSummaryLength\":500}", + "description": "Generate a summary for employee 321 limited to 500 characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "human-resources.createKey", + "description": "Generates a secure digital access key for employees or contractors within an organization's human resources system. Accepts user identifiers, key type, and validity period. Performs key creation with specified permissions and expiry. Returns the generated key string and metadata for access control and audit purposes.", + "category": "human-resources", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the employee or contractor to whom the key is assigned.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyType", + "type": "string", + "description": "Type of key to generate (e.g., 'API', 'doorAccess', 'vpn'). Defines the scope and use of the key.", + "required": true, + "defaultValue": "API" + }, + { + "name": "validFrom", + "type": "string", + "description": "ISO 8601 formatted date-time string specifying when the key becomes active.", + "required": false, + "defaultValue": "" + }, + { + "name": "validUntil", + "type": "string", + "description": "ISO 8601 formatted date-time string specifying when the key expires and becomes invalid.", + "required": false, + "defaultValue": "" + }, + { + "name": "permissions", + "type": "array", + "description": "List of permission strings granted by the key (e.g., ['read', 'write']). Defines access scope.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "note", + "type": "string", + "description": "Optional note or description about the key's purpose or restrictions.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated key string, associated user ID, key type, validity period, permissions, and a unique key ID for auditing and management." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate new digital access keys for employees or contractors as part of onboarding, role changes, or temporary access requests, supporting secure HR resource management and audit trails.", + "limitations": "This tool does not handle physical key creation or management, hardware tokens, nor does it verify user identity beyond provided userId. It also does not manage key revocation or reporting.", + "examples": [ + "Generate an API key for a new contractor valid for 30 days with read and write permissions.", + "Create a door access key for an employee valid only during business hours.", + "Produce a VPN access key valid immediately with full network permissions." + ] + }, + "tags": [ + "security", + "hr", + "keyManagement", + "accessControl", + "employee", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"emp12345\",\"keyType\":\"API\",\"validFrom\":\"2024-06-01T00:00:00Z\",\"validUntil\":\"2024-07-01T00:00:00Z\",\"permissions\":[\"read\",\"write\"],\"note\":\"Temporary API key for project X\"}", + "description": "Create a temporary API key for employee emp12345 valid for one month with read and write permissions." + }, + { + "inputJson": "{\"userId\":\"cont67890\",\"keyType\":\"doorAccess\",\"validFrom\":\"2024-06-10T08:00:00Z\",\"validUntil\":\"2024-06-10T18:00:00Z\",\"permissions\":[\"entry\"],\"note\":\"Single day door access for contractor visit\"}", + "description": "Generate a single day door access key for a contractor to enter office premises during business hours." + }, + { + "inputJson": "{\"userId\":\"emp54321\",\"keyType\":\"vpn\",\"permissions\":[\"fullNetworkAccess\"],\"note\":\"Permanent VPN key for remote employee\"}", + "description": "Create a permanent VPN key with full network access for a remote employee without explicit expiration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "human-resources.createEvent", + "description": "Creates a new HR event such as recruitment drives, training sessions, or employee engagement activities by accepting details like event name, date, location, type, description, and expected participants. It stores and returns the event ID and details for further processing or analytics.", + "category": "human-resources", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The title or name of the HR event to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDate", + "type": "string", + "description": "Scheduled date and time of the event in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "location", + "type": "string", + "description": "Physical or virtual location where the event will take place.", + "required": false, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Category of the event, e.g., recruitment, training, or engagement.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description or agenda of the event.", + "required": false, + "defaultValue": "" + }, + { + "name": "expectedParticipants", + "type": "number", + "description": "Estimated number of participants attending the event.", + "required": false, + "defaultValue": "0" + }, + { + "name": "organizerId", + "type": "string", + "description": "Identifier of the HR staff or department organizing the event.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique event ID, confirmation of creation, and all saved event details." + }, + "aiAgent": { + "useCase": "Use this tool to plan and log HR related events such as recruitment drives or training programs to keep employee and candidate engagement organized and trackable. It is useful when scheduling new events and integrating with event management or analytics systems.", + "limitations": "This tool does not manage event attendance or notifications. It only creates the event record and returns event details.", + "examples": [ + "Create a recruitment drive event for June 10, 2024, in New York office with approx 50 expected candidates.", + "Schedule a virtual training session on new software tools for employees next Monday.", + "Log an employee engagement workshop happening next quarter organized by HR department id 'dept123'." + ] + }, + "tags": [ + "human-resources", + "event", + "creation", + "employee-engagement", + "recruitment", + "training", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"Summer Recruitment Drive\",\"eventDate\":\"2024-06-10T09:00:00Z\",\"location\":\"New York Office\",\"eventType\":\"recruitment\",\"description\":\"Campus recruitment for engineering graduates.\",\"expectedParticipants\":50,\"organizerId\":\"hr_team_01\"}", + "description": "Creates a recruitment event for hiring new graduates at New York office." + }, + { + "inputJson": "{\"eventName\":\"Q2 Software Training\",\"eventDate\":\"2024-06-15T14:00:00Z\",\"location\":\"Virtual - Zoom\",\"eventType\":\"training\",\"description\":\"Training session on updated project management tools.\",\"expectedParticipants\":30,\"organizerId\":\"hr_training_dept\"}", + "description": "Schedules a virtual training session for employees on software tools." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "human-resources.createContainer", + "description": "Creates a virtual container in the Human Resources management system to securely store and manage employee data, recruitment files, or project team info. Accepts container metadata like name, description, and access permissions. Returns confirmation with container ID and status.", + "category": "human-resources", + "parameters": [ + { + "name": "containerName", + "type": "string", + "description": "The unique name for the container to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description outlining the purpose or content of the container.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessLevel", + "type": "string", + "description": "Defines permission level for container access (e.g., 'private', 'team', 'public').", + "required": true, + "defaultValue": "private" + }, + { + "name": "allowedUserIds", + "type": "array", + "description": "List of user IDs allowed to access this container when accessLevel is restricted.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags for categorizing or searching containers.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object with containerId (string), status (string - success or failure), and message (string) indicating creation result." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a secure, managed data storage entity within an HR system for organizing employee records or recruitment documents with controlled access. Ideal to automate resource provisioning and access setup for HR projects or departments.", + "limitations": "This tool does not manage the content inside the container beyond metadata and access permissions. It cannot enforce compliance or data retention policies beyond basic access control.", + "examples": [ + "Create a private container named 'Engineering Candidates' to store resumes and interview notes, accessible only by HR team members.", + "Set up a public container 'Company Policies' for all employees to read but not edit.", + "Create a container tagged 'Project Alpha Team' with restricted access to designated team members only." + ] + }, + "tags": [ + "human-resources", + "container-management", + "data-storage", + "access-control", + "recruitment", + "employee-data" + ], + "examples": [ + { + "inputJson": "{\"containerName\":\"Engineering Candidates\",\"description\":\"Resumes and interview notes for engineering roles\",\"accessLevel\":\"private\",\"allowedUserIds\":[\"user123\",\"user456\"],\"tags\":[\"recruitment\",\"engineering\"]}", + "description": "Creating a private container for engineering candidate files accessible by specific users." + }, + { + "inputJson": "{\"containerName\":\"Company Policies\",\"description\":\"Read-only access for all employees\",\"accessLevel\":\"public\",\"tags\":[\"policy\",\"all-employees\"]}", + "description": "Creating a public container for company policies accessible by all employees." + }, + { + "inputJson": "{\"containerName\":\"Project Alpha Team\",\"description\":\"Confidential project team data storage\",\"accessLevel\":\"team\",\"allowedUserIds\":[\"user789\",\"user321\"]}", + "description": "Creating a team-access container for confidential project data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "human-resources.createPullRequest", + "description": "Creates a Git pull request to propose changes to recruitment-related code or automation scripts within the human resources domain. Accepts repository details, source and target branches, pull request title and description, and optional reviewers. Generates the pull request and returns its URL and metadata.", + "category": "human-resources", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the Git repository where the pull request will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceBranch", + "type": "string", + "description": "The name of the branch containing the proposed changes to be merged.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The branch into which the changes will be merged, typically 'main' or 'master'.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestTitle", + "type": "string", + "description": "The title summarizing the purpose of the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestDescription", + "type": "string", + "description": "A detailed description explaining the changes and rationale in the pull request.", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "An array of usernames or emails of reviewers to request review from.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "labels", + "type": "array", + "description": "Optional tags or labels to categorize the pull request (e.g., 'recruitment', 'automation').", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing details about the created pull request, including its unique id, URL, created date, and current status." + }, + "aiAgent": { + "useCase": "Use this tool when automating updates or improvements to recruitment systems stored in code repositories, such as onboarding automation scripts or HR policy documents in version control. Ideal for programmatically generating pull requests to initiate review and integration workflows.", + "limitations": "This tool does not create or modify branch content, only the pull request metadata and linkage; the source branch must already exist with the changes. It also depends on compatible Git hosting services.", + "examples": [ + "Create a pull request to merge a feature branch that automates interview scheduling into the main recruitment repo branch.", + "Submit a PR to update onboarding workflow scripts with HR team reviewers assigned.", + "Open a pull request with detailed notes on enhancements to the candidate evaluation process automation code." + ] + }, + "tags": [ + "human-resources", + "pull-request", + "code-management", + "automation", + "recruitment" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/company/hr-automation\",\"sourceBranch\":\"feature/schedule-interview\",\"targetBranch\":\"main\",\"pullRequestTitle\":\"Automate interview scheduling\",\"pullRequestDescription\":\"Add a script that automatically schedules interviews based on candidate availability.\",\"reviewers\":[\"hr_lead\",\"devops_team\"],\"labels\":[\"automation\",\"interview\"]}", + "description": "Create a PR to merge interview scheduling automation into the main HR repo branch with assigned reviewers and labels." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "human-resources.createSummary", + "description": "Generates a concise summary report of recruitment or employee data based on provided records. Accepts employee or applicant details as input, processes key attributes such as skills, experience, and statuses, and produces a clear text summary highlighting essential points for HR review.", + "category": "human-resources", + "parameters": [ + { + "name": "records", + "type": "array", + "description": "Array of employee or applicant objects containing their details (e.g. name, role, skills, experience, status).", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryType", + "type": "string", + "description": "Type of summary to generate: e.g. 'applicantOverview', 'employeePerformance', or 'recruitmentStatus'.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the output summary in characters to keep it concise.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeMetrics", + "type": "boolean", + "description": "Whether to include quantitative metrics or statistics in the summary (e.g. average years of experience).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and metadata such as word count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to synthesize detailed employee or recruitment data into a brief, readable overview for HR managers or recruiters, enabling quick decision-making or reporting.", + "limitations": "This tool cannot replace detailed reports or analyses; it produces summaries from provided data and cannot collect data itself or infer beyond given input.", + "examples": [ + "Create a summary overview of job applicants including key qualifications and hiring stage.", + "Generate employee performance summaries highlighting skills and experience.", + "Produce a recruitment progress summary showing current status and candidate counts." + ] + }, + "tags": [ + "human-resources", + "summary", + "employee-data", + "recruitment", + "reporting", + "HR", + "data-synthesis" + ], + "examples": [ + { + "inputJson": "{\"records\":[{\"name\":\"Alice Smith\",\"role\":\"Software Engineer\",\"skills\":[\"JavaScript\",\"React\"],\"experience\":5,\"status\":\"Interviewed\"},{\"name\":\"Bob Jones\",\"role\":\"Software Engineer\",\"skills\":[\"Python\",\"Django\"],\"experience\":3,\"status\":\"Applied\"}],\"summaryType\":\"applicantOverview\",\"maxLength\":400,\"includeMetrics\":true}", + "description": "Summarize key applicant data including skills, experience levels, and current recruitment status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "translation.analyzeTable", + "description": "This tool accepts a data table containing multilingual text entries with optional language codes, analyzes the language distribution and translation consistency within the table, and outputs a structured summary including detected languages, translation quality indicators, and potential mismatches or untranslated segments.", + "category": "translation", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "An array of objects representing rows in the table, each containing text entries for analysis. Required fields in objects may include 'text' and optional 'languageCode'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The source language code (e.g., 'en') to compare against for translation consistency checking.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "An array of language codes representing expected target languages in the table for translation verification.", + "required": false, + "defaultValue": "" + }, + { + "name": "translationColumns", + "type": "array", + "description": "List of keys in the table row objects that correspond to translation fields to analyze for consistency.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectMissingTranslations", + "type": "boolean", + "description": "Whether to check and report missing or incomplete translations in the table.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectLanguageMismatch", + "type": "boolean", + "description": "Whether to detect and report entries where the language detected in text does not match the expected language code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object including detected language distribution summary, translation consistency metrics, list of rows with issues such as missing or mismatched translations, and overall translation quality indicators." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the language content and translation quality of multilingual tabular data, such as glossaries, product descriptions, or survey responses in multiple languages. It helps identify untranslated or inconsistent entries, detect incorrect language tags, and summarize language coverage in the dataset.", + "limitations": "This tool does not perform automatic translation or deep linguistic analysis such as semantic accuracy; it focuses on metadata and surface-level checks (e.g., language detection, presence of translations). It requires structured tabular input and cannot analyze free-form text documents directly.", + "examples": [ + "Analyze a product catalog table to find missing French translations and verify language codes.", + "Check a multilingual glossary table for inconsistent translations and entries with mismatched language tags.", + "Generate a summary report of language distribution and translation completeness for a survey response data table." + ] + }, + "tags": [ + "translation", + "analysis", + "table", + "multilingual", + "quality-check", + "language-detection" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"id\":1,\"en\":\"Welcome\",\"fr\":\"Bienvenue\",\"es\":\"Bienvenido\"},{\"id\":2,\"en\":\"Login\",\"fr\":\"\",\"es\":\"Iniciar sesión\"},{\"id\":3,\"en\":\"Logout\",\"fr\":\"Déconnexion\",\"es\":\"\"}],\"sourceLanguage\":\"en\",\"targetLanguages\":[\"fr\",\"es\"],\"translationColumns\":[\"en\",\"fr\",\"es\"],\"detectMissingTranslations\":true,\"detectLanguageMismatch\":true}", + "description": "Analyze a table with English source and French/Spanish translations to identify missing translations and mismatched languages." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "translation.analyzeRisk", + "description": "This tool accepts translated text along with source and target language codes to analyze security-related risks in the translated content. It processes the text using NLP models specialized in detecting sensitive or risky information that may result from mistranslations or cultural misunderstandings, returning a detailed risk assessment report highlighting potential security concerns in the translation.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The ISO language code of the original text language, e.g. 'en' for English.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The ISO language code of the translation target language, e.g. 'fr' for French.", + "required": true, + "defaultValue": "" + }, + { + "name": "translatedText", + "type": "string", + "description": "The translated text to analyze for security risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextualInformation", + "type": "string", + "description": "Optional context about the content or domain to improve risk analysis accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "If true, includes specific mitigation recommendations for identified risks.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall risk level, a list of identified risk issues with explanations, and optional recommendations for safer translations." + }, + "aiAgent": { + "useCase": "Use this tool when reviewing machine or human translations to detect and analyze potential security, privacy, or compliance risks embedded in the translated content that may arise due to inaccurate or context-insensitive translations. It helps ensure that the translated material does not introduce vulnerabilities or inappropriate exposures in multilingual communications.", + "limitations": "This tool cannot fix the translation errors automatically or guarantee complete risk elimination. It is limited by the quality of the input text and may not catch all domain-specific risks without sufficient contextual information.", + "examples": [ + "Analyze the translated privacy policy from English to Japanese for potential security risks.", + "Evaluate this French product manual translation for risky cultural or compliance issues.", + "Check the Spanish translation of a legal contract for any risks introduced during translation." + ] + }, + "tags": [ + "translation", + "risk analysis", + "security", + "NLP", + "multilingual", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"translatedText\":\"Bitte übermitteln Sie Ihre Passwörter nicht per E-Mail, um Ihre Sicherheit zu gewährleisten.\",\"contextualInformation\":\"IT Security Instructions\",\"includeRecommendations\":true}", + "description": "Analyze German translated IT security instructions from English for risks." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"zh\",\"translatedText\":\"该软件未经授权不得复制或分发。\",\"contextualInformation\":\"Software Licensing\",\"includeRecommendations\":false}", + "description": "Assess Chinese translation of a software license agreement for security and compliance risks without recommendations." + }, + { + "inputJson": "{\"sourceLanguage\":\"fr\",\"targetLanguage\":\"en\",\"translatedText\":\"Do not share your login credentials with anyone.\",\"contextualInformation\":\"Employee Security Policy\",\"includeRecommendations\":true}", + "description": "Review English translation of a French employee security policy text for potential risks and recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "translation.analyzeOpportunity", + "description": "Analyzes a business opportunity text or description in a source language, evaluating its potential value and market fit, and provides insights and recommendations translated into a target language for international stakeholders. Accepts natural language text and language codes as input, processes semantic and market analysis, and outputs a translated analysis report.", + "category": "translation", + "parameters": [ + { + "name": "opportunityText", + "type": "string", + "description": "The descriptive text of the business opportunity to analyze, in the source language.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The ISO code of the language the opportunityText is written in (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The ISO code of the language to translate the analysis results into (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "The industry sector relevant to the opportunity (e.g., 'technology', 'healthcare'). Improves analysis relevance.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "marketRegion", + "type": "string", + "description": "Geographical market region (e.g., 'Europe', 'Asia-Pacific') for contextualizing opportunity potential.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated analysis report, including opportunity potential rating, key strengths and risks, and strategic recommendations in the target language." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the business potential of an opportunity described in one language and provide a detailed, translated analysis for stakeholders in another language to support international business decisions. It combines semantic analysis with translation.", + "limitations": "This tool cannot perform real-time financial forecasting or replace expert human business consultants. Analysis depends on input quality and may not capture nuanced market conditions.", + "examples": [ + "Analyze the opportunity description written in English and provide analysis translated into Spanish.", + "Evaluate a healthcare market opportunity described in Japanese and translate insights into English.", + "Provide a technology sector opportunity assessment from German text and return analysis in French." + ] + }, + "tags": [ + "translation", + "business analysis", + "market opportunity", + "multilingual", + "semantic analysis", + "business intelligence" + ], + "examples": [ + { + "inputJson": "{\"opportunityText\":\"This new app targets sustainable urban commuting with shared electric bikes.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"industry\":\"transportation\",\"marketRegion\":\"Europe\"}", + "description": "Analyzing an English business opportunity text about sustainable urban transportation, with French translation output." + }, + { + "inputJson": "{\"opportunityText\":\"新しい健康管理プラットフォームの開発により、個人のデータ分析が可能。\",\"sourceLanguage\":\"ja\",\"targetLanguage\":\"en\",\"industry\":\"healthcare\",\"marketRegion\":\"Asia-Pacific\"}", + "description": "Analyzing a Japanese healthcare opportunity text, translating analysis results into English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "translation.analyzePayment", + "description": "Analyzes multilingual payment-related text inputs to identify key payment details, such as amounts, dates, currencies, and payment methods. Accepts raw text and source language code. Uses natural language processing and translation to extract normalized payment information. Returns structured, language-agnostic payment data and confidence scores.", + "category": "translation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "Raw input text containing payment information to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "ISO 639-1 code of the input text language, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "extractDetails", + "type": "array", + "description": "List of specific payment details to extract, e.g., ['amount', 'date', 'currency', 'method'].", + "required": false, + "defaultValue": "[\"amount\",\"date\",\"currency\",\"method\"]" + }, + { + "name": "includeTranslation", + "type": "boolean", + "description": "Whether to include a translated normalized version of the payment text in output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted payment details with normalized fields, confidence scores for each extracted element, and optionally translated normalized payment text." + }, + "aiAgent": { + "useCase": "Use this tool when processing payment information embedded in text documents, emails, or messages in various languages to extract and standardize payment details for further business workflows like reconciliation or auditing.", + "limitations": "Cannot verify accuracy of payment details beyond linguistic extraction, and may struggle with ambiguous or incomplete payment information. Does not perform currency conversion or validate payment legitimacy.", + "examples": [ + "Extract payment amount and date from Italian invoice text.", + "Analyze payment instruction in Japanese email and output normalized data.", + "Identify payment method and currency from Spanish payment notification." + ] + }, + "tags": [ + "translation", + "payment", + "NLP", + "multilingual", + "text analysis", + "finance", + "data extraction" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Il pagamento di 1.200 EUR è previsto per il 15 marzo 2024.\",\"sourceLanguage\":\"it\",\"extractDetails\":[\"amount\",\"date\",\"currency\"],\"includeTranslation\":true}", + "description": "Extract the amount, date, and currency from an Italian payment statement including translated normalized text." + }, + { + "inputJson": "{\"text\":\"Please pay $950 by 2024-07-01 using credit card.\",\"sourceLanguage\":\"en\",\"extractDetails\":[\"amount\",\"date\",\"method\"],\"includeTranslation\":false}", + "description": "Analyze English payment instruction to extract amount, due date, and payment method without translation." + }, + { + "inputJson": "{\"text\":\"支払いは10,000円で4月20日に処理されます。\",\"sourceLanguage\":\"ja\",\"extractDetails\":[\"amount\",\"date\",\"currency\"],\"includeTranslation\":true}", + "description": "Extract payment details from Japanese text including amount, date, and currency with translation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "translation.downloadDataset", + "description": "Downloads a language translation dataset from a public repository or API based on specified source and target languages, dataset name, and optional filters. Returns dataset metadata and a link or direct access to the dataset files suitable for training or evaluation purposes.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The source language code (ISO 639-1) of the translation dataset, e.g., 'en' for English.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code (ISO 639-1) of the translation dataset, e.g., 'fr' for French.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetName", + "type": "string", + "description": "The name or identifier of the translation dataset to download, e.g., 'wmt14' or 'ted_talks'.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Optional specific version of the dataset to download; if omitted, the latest stable version is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired format for the downloaded dataset, e.g., 'json', 'csv', 'tsv'; defaults to default dataset format if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include descriptive metadata about the dataset such as size, number of segments, licensing.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata about the downloaded dataset and a URL or local path to the dataset files for access or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically acquire parallel translation datasets for model training, benchmarking translation systems, or linguistic research. It facilitates selecting datasets based on source-target language pairs and dataset versions addressing preparation stages before model development.", + "limitations": "Cannot generate new datasets or translate content directly; only downloads existing public datasets available in repositories. Dataset availability depends on external sources; network issues or dataset removal may cause failures.", + "examples": [ + "Download the English-to-French TED Talks translation dataset in JSON format.", + "Retrieve the latest WMT14 English to German dataset without metadata.", + "Get Spanish to Portuguese translation dataset version 1.0 in CSV format including metadata." + ] + }, + "tags": [ + "translation", + "dataset", + "download", + "language-pairs", + "nlp", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"datasetName\":\"ted_talks\",\"format\":\"json\",\"includeMetadata\":true}", + "description": "Download the TED Talks parallel corpus for English to French in JSON format including metadata." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"datasetName\":\"wmt14\",\"includeMetadata\":false}", + "description": "Get the WMT14 English-German dataset with default format and without metadata." + }, + { + "inputJson": "{\"sourceLanguage\":\"es\",\"targetLanguage\":\"pt\",\"datasetName\":\"open_subtitles\",\"version\":\"1.0\",\"format\":\"csv\"}", + "description": "Retrieve version 1.0 of the OpenSubtitles Spanish to Portuguese translation dataset in CSV format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "translation.downloadJSON", + "description": "Downloads translated text data in a structured JSON format. The tool accepts a list of text entries and target languages, processes the translations via supported translation services, and outputs a JSON object that maps original texts to their translations by language. Useful for exporting multi-language content data.", + "category": "translation", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of strings representing the original texts to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "An array of language codes (e.g., 'en', 'fr', 'es') specifying the target languages for translation.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Optional language code of the source text; if omitted, auto-detection is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeOriginal", + "type": "boolean", + "description": "Whether to include the original text in each translation entry; defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "JSON object mapping each original text to an object of translations keyed by target language codes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to obtain translations of multiple text strings in various target languages and export results as a structured JSON file for integration or storage. It enables easy multi-language content distribution.", + "limitations": "Does not provide real-time streaming translation. Quality depends on underlying translation API. Large input arrays might be rate limited or require batching.", + "examples": [ + "Translate a list of product descriptions into French and Spanish and download the JSON mapping.", + "Generate translation JSON for UI labels from English to multiple target languages.", + "Download translated FAQs into a structured JSON to feed into a multilingual website." + ] + }, + "tags": [ + "translation", + "download", + "json", + "multilingual", + "export", + "text" + ], + "examples": [ + { + "inputJson": "{\"texts\": [\"Hello\", \"Goodbye\"], \"targetLanguages\": [\"fr\", \"es\"], \"sourceLanguage\": \"en\", \"includeOriginal\": true}", + "description": "Translate greetings 'Hello' and 'Goodbye' from English into French and Spanish; include original text." + }, + { + "inputJson": "{\"texts\": [\"Welcome\", \"Thank you\"], \"targetLanguages\": [\"de\"], \"includeOriginal\": false}", + "description": "Translate 'Welcome' and 'Thank you' into German only, excluding original texts in output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "translation.uploadImage", + "description": "Uploads an image containing text in a source language for translation processing. The tool accepts image files (jpeg, png, bmp) and extracts embedded text via OCR, then translates it into a target language. It outputs the translated text and optionally the extracted source text, facilitating translation of image-based text content.", + "category": "translation", + "parameters": [ + { + "name": "imageFilePath", + "type": "string", + "description": "Local file path or URL of the image to upload (supports jpeg, png, bmp).", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Language code (ISO 639-1) of the text in the image; if omitted, auto-detection is attempted.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Language code (ISO 639-1) into which the text should be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "returnExtractedText", + "type": "boolean", + "description": "Whether to include the extracted source text along with the translation in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated text and optionally the extracted source text if requested. Includes status and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when needing to translate text present within images, such as photos of signs, documents, screenshots, or handwritten notes, where uploading the image directly enables text extraction and translation. Ideal for workflows involving mixed media translation without manual transcription.", + "limitations": "Cannot translate images without readable text (e.g., purely graphical images), OCR accuracy may vary based on image quality and fonts, and highly stylized or handwritten text might be less reliably extracted.", + "examples": [ + "Translate the text from this photo of a French restaurant menu into English.", + "Upload an image of a German street sign and translate it to Spanish.", + "Provide the extracted text along with the English translation from this Japanese document scan." + ] + }, + "tags": [ + "translation", + "image-processing", + "OCR", + "multilingual", + "text-extraction", + "media-upload" + ], + "examples": [ + { + "inputJson": "{\"imageFilePath\":\"https://example.com/images/french_menu.jpg\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"en\",\"returnExtractedText\":true}", + "description": "Translate French text in an image of a menu to English and return both extracted and translated text." + }, + { + "inputJson": "{\"imageFilePath\":\"/user/photos/german_sign.png\",\"targetLanguage\":\"es\"}", + "description": "Upload a German street sign image and translate the text into Spanish, with automatic source language detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "translation.sendNotification", + "description": "Sends a translated notification message to specified recipients. Accepts the message text, source and target languages, recipient details, and notification channel. Translates the message into the target language and dispatches it via email, SMS, or push notification, returning the delivery status for each recipient.", + "category": "translation", + "parameters": [ + { + "name": "messageText", + "type": "string", + "description": "The original text of the notification to be translated and sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original message text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code into which the message should be translated (e.g., 'es' for Spanish).", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient objects containing contact details for sending the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationChannel", + "type": "string", + "description": "The channel to send the notification through, such as 'email', 'sms', or 'push'.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for email notifications; ignored for SMS or push notifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification, e.g., 'normal' or 'high'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status and detailed delivery information for each recipient." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to notify users in their preferred languages by translating the notification content and reliably sending it over the specified communication channel. Useful for global applications requiring multilingual outreach via email, SMS, or app push notifications.", + "limitations": "This tool depends on the accuracy of the translation engine and may not handle localized idioms or cultural nuances perfectly. It cannot compose complex multimedia notifications. Delivery success depends on recipient contact validity and channel availability.", + "examples": [ + "Send a reminder notification translated from English to French via email to a list of users.", + "Dispatch a promotional SMS in Spanish to customers in Mexico translated from English.", + "Send a high priority push notification in German for a system outage alert." + ] + }, + "tags": [ + "translation", + "notification", + "multilingual", + "communication", + "email", + "sms", + "push" + ], + "examples": [ + { + "inputJson": "{\"messageText\":\"Your appointment is confirmed.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"recipients\":[{\"email\":\"user1@example.com\"}],\"notificationChannel\":\"email\",\"subject\":\"Appointment Confirmation\",\"priority\":\"normal\"}", + "description": "Send an appointment confirmation email translated into French." + }, + { + "inputJson": "{\"messageText\":\"Big sale starts now!\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"recipients\":[{\"phoneNumber\":\"+5215551234567\"}],\"notificationChannel\":\"sms\"}", + "description": "Send a promotional SMS in Spanish to a Mexican phone number." + }, + { + "inputJson": "{\"messageText\":\"Server outage detected. Please check immediately.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"recipients\":[{\"deviceToken\":\"abcdef123456\"}],\"notificationChannel\":\"push\",\"priority\":\"high\"}", + "description": "Send a high priority push notification warning in German." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "translation.uploadDataset", + "description": "Uploads a translation dataset consisting of text pairs in source and target languages. Accepts dataset files in CSV or JSON format or direct text input. Validates format and uploads for use in training or evaluating translation models.", + "category": "translation", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "The name to assign to the uploaded dataset for identification.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Language code of the source texts in the dataset (e.g., 'en').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Language code of the target translations in the dataset (e.g., 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetFormat", + "type": "string", + "description": "Format of the dataset file: 'csv' or 'json'.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetFileContent", + "type": "string", + "description": "Content of the dataset file as a string. Should adhere to the specified format.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character used if datasetFormat is CSV; default is comma ','.", + "required": false, + "defaultValue": "," + }, + { + "name": "description", + "type": "string", + "description": "Optional brief description of the dataset.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Upload result including dataset ID, name, and status confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to integrate new parallel translation datasets into a translation platform or model training pipeline. It is suitable for uploading bilingual text pairs in supported formats to expand or fine-tune translation resources.", + "limitations": "Does not perform quality checks beyond format validation. Does not support dataset storage beyond the platform's capabilities. File size limits or special encoding requirements are not handled automatically.", + "examples": [ + "Upload a new English-French translation dataset in CSV format for training purposes.", + "Add a JSON dataset of English-Chinese text pairs to the translation system.", + "Provide a name and language codes when uploading a bilingual dataset to ensure correct organization." + ] + }, + "tags": [ + "translation", + "dataset", + "upload", + "bilingual", + "training data", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"English-French News Headlines\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"datasetFormat\":\"csv\",\"datasetFileContent\":\"hello,bonjour\\ngoodbye,au revoir\",\"delimiter\":\",\",\"description\":\"News headlines parallel corpus.\"}", + "description": "Uploading a small CSV bilingual dataset with English to French text pairs." + }, + { + "inputJson": "{\"datasetName\":\"English-Spanish Product Descriptions\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"datasetFormat\":\"json\",\"datasetFileContent\":\"[{\\\"source\\\":\\\"This is a great phone\\\", \\\"target\\\":\\\"Este es un gran teléfono\\\"},{\\\"source\\\":\\\"Fast charging\\\", \\\"target\\\":\\\"Carga rápida\\\"}]\",\"delimiter\":\",\",\"description\":\"Product description translations in JSON.\"}", + "description": "Uploading a JSON format dataset with source and target text keys for English to Spanish." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "translation.formatText", + "description": "Formats translated text according to specified style preferences such as capitalization, punctuation spacing, line breaks, and special character handling. Accepts raw translated string input and processing options, and outputs a cleaned, polished text suitable for publishing or further processing.", + "category": "translation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The translated text input that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeSentences", + "type": "boolean", + "description": "Whether to capitalize the first letter of each sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeExtraSpaces", + "type": "boolean", + "description": "Remove extra spaces between words and after punctuation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineBreakStyle", + "type": "string", + "description": "Style of line breaks: 'none' (no breaks), 'paragraph' (double line breaks), or 'newLine' (single line breaks).", + "required": false, + "defaultValue": "paragraph" + }, + { + "name": "punctuationSpacing", + "type": "string", + "description": "Spacing rule around punctuation: 'standard' for normal spacing, 'none' for no space before punctuation, 'custom' to provide custom spacing.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "customSpacingRules", + "type": "object", + "description": "Custom spacing rules for punctuation if punctuationSpacing is set to 'custom'. e.g., {'comma':'noSpaceAfter','period':'spaceAfter'}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "preserveSpecialCharacters", + "type": "boolean", + "description": "Whether to preserve special characters like emojis or symbols unchanged.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object with a single field 'formattedText' containing the processed, formatted text string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to refine raw translated text to conform to readability and style standards including sentence capitalization, spacing, and line breaks before output or publishing. It helps ensure translated content looks polished without manual editing.", + "limitations": "This tool only formats texts and does not perform any translation, grammar correction, or meaning validation. It assumes the input text is already accurately translated.", + "examples": [ + "Format translated paragraphs ensuring proper sentence capitalization and paragraph breaks.", + "Remove extra spaces and unify punctuation spacing in a translated text snippet.", + "Preserve emojis and special characters while formatting spacing and capitalization in translated output text." + ] + }, + "tags": [ + "translation", + "formatting", + "textProcessing", + "postTranslation", + "localization", + "textCleanup" + ], + "examples": [ + { + "inputJson": "{\"text\":\"hola mundo! esto es una prueba.\\nespero que funcione bien.\",\"capitalizeSentences\":true,\"removeExtraSpaces\":true,\"lineBreakStyle\":\"paragraph\",\"punctuationSpacing\":\"standard\",\"preserveSpecialCharacters\":true}", + "description": "Format a Spanish translated text snippet with sentence capitalization, extra space removal, and paragraph breaks." + }, + { + "inputJson": "{\"text\":\"bonjour tout le monde!c'est un test.\",\"capitalizeSentences\":true,\"removeExtraSpaces\":true,\"lineBreakStyle\":\"none\",\"punctuationSpacing\":\"none\",\"preserveSpecialCharacters\":false}", + "description": "Format French translated text with no line breaks and no space before punctuation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "translation.sendAlert", + "description": "This tool accepts an alert message in a source language and a target language code, translates the alert content accurately using contextual security terminology, and sends the translated alert to a specified recipient or communication channel. It outputs a status report indicating success or failure with details.", + "category": "translation", + "parameters": [ + { + "name": "alertMessage", + "type": "string", + "description": "The original alert message text in the source language to be translated and sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original alert message (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code into which the alert message should be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "Identifier for the recipient, such as an email address, phone number, or username where the alert will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "communicationChannel", + "type": "string", + "description": "The medium used to send the alert, e.g., 'email', 'SMS', 'pushNotification'.", + "required": false, + "defaultValue": "email" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Level of alert urgency (e.g., 'low', 'medium', 'high') which might influence translation style or formatting.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated alert text, final recipient, communication channel used, and a delivery status message indicating success or the error encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to communicate security or operational alerts to users in different languages, ensuring accurate translation of potentially critical and sensitive information before dispatching to designated recipients.", + "limitations": "This tool cannot generate the content of alerts; it only translates and sends already composed alert messages. It does not guarantee delivery beyond initial sending (e.g., message receipt confirmation).", + "examples": [ + "Translate and send a high urgency security alert from English to Spanish via SMS to a user's phone number.", + "Send an operational system alert translated from French to German via email to the IT support team.", + "Dispatch a medium urgency maintenance alert translated from English to Japanese via push notification to a mobile app user." + ] + }, + "tags": [ + "translation", + "alert", + "security", + "messaging", + "multilingual", + "notification", + "communication" + ], + "examples": [ + { + "inputJson": "{\"alertMessage\":\"Unauthorized access detected on server 12.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"recipient\":\"+34611222333\",\"communicationChannel\":\"SMS\",\"urgencyLevel\":\"high\"}", + "description": "Send a high urgency alert translated from English to Spanish via SMS." + }, + { + "inputJson": "{\"alertMessage\":\"Maintenance scheduled for 2 AM UTC.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"ja\",\"recipient\":\"user123\",\"communicationChannel\":\"pushNotification\",\"urgencyLevel\":\"medium\"}", + "description": "Send a maintenance alert from English to Japanese via push notification." + }, + { + "inputJson": "{\"alertMessage\":\"La mise à jour de sécurité est terminée.\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"de\",\"recipient\":\"it-support@example.com\",\"communicationChannel\":\"email\",\"urgencyLevel\":\"low\"}", + "description": "Send a low urgency security update alert from French to German via email." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "translation.formatWord", + "description": "Formats a given word according to specified linguistic and presentation options including language, casing style, and diacritic handling. Accepts a single word string and parameters for target language and formatting preferences, returning the transformed word string ready for display or further processing.", + "category": "translation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word to format. Must be a single word string.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "ISO language code indicating the language context for formatting rules (e.g., 'en', 'fr', 'es').", + "required": true, + "defaultValue": "" + }, + { + "name": "caseStyle", + "type": "string", + "description": "Desired casing style for the output word, options include 'lowercase', 'uppercase', 'capitalize', or 'original' to keep as is.", + "required": false, + "defaultValue": "original" + }, + { + "name": "removeDiacritics", + "type": "boolean", + "description": "Whether to strip diacritic marks from the word (true) or preserve them (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "expandContractions", + "type": "boolean", + "description": "If true and the word is a contraction, expands it to the full form (only supported in some languages).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "The formatted word string after applying the specified casing, language-specific adjustments, and diacritic handling." + }, + "aiAgent": { + "useCase": "Use this tool when needing to present or process a word in a language-aware formatting style, such as preparing text for display, normalization before translation, or conforming to language-specific orthographic rules. Helpful in multilingual applications requiring consistent word formatting.", + "limitations": "Does not perform translation or sentence-level context adjustments. Expansion of contractions is limited to certain languages and may not cover all cases. Does not handle punctuation or multiple words.", + "examples": [ + "Format the English word 'résumé' to uppercase without diacritics.", + "Capitalize a French word preserving diacritics.", + "Expand the English contraction \"don't\" to \"do not\" and capitalize.", + "" + ] + }, + "tags": [ + "translation", + "word", + "formatting", + "language", + "orthography", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"word\":\"résumé\",\"targetLanguage\":\"en\",\"caseStyle\":\"uppercase\",\"removeDiacritics\":true}", + "description": "Convert 'résumé' to uppercase and remove diacritics (output: 'RESUME')." + }, + { + "inputJson": "{\"word\":\"élève\",\"targetLanguage\":\"fr\",\"caseStyle\":\"capitalize\",\"removeDiacritics\":false}", + "description": "Capitalize a French word preserving diacritics (output: 'Élève')." + }, + { + "inputJson": "{\"word\":\"don't\",\"targetLanguage\":\"en\",\"caseStyle\":\"original\",\"expandContractions\":true}", + "description": "Expand the English contraction \"don't\" to \"do not\"." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "translation.formatDataset", + "description": "This tool accepts a dataset containing multilingual text entries and restructures or formats them to a consistent, standardized schema optimized for translation workflows or machine translation systems. It processes input data arrays or objects by normalizing fields, aligning language pairs, cleaning text entries, and outputting a uniformly formatted dataset ready for further translation tasks or model training.", + "category": "translation", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "An array of objects each representing a text entry with language and text fields to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLangField", + "type": "string", + "description": "The name of the field representing the source language code in each data entry.", + "required": false, + "defaultValue": "sourceLang" + }, + { + "name": "targetLangField", + "type": "string", + "description": "The name of the field representing the target language code in each data entry.", + "required": false, + "defaultValue": "targetLang" + }, + { + "name": "textField", + "type": "string", + "description": "The name of the field containing the text to be translated in each entry.", + "required": false, + "defaultValue": "text" + }, + { + "name": "normalizeText", + "type": "boolean", + "description": "Flag to enable normalization of text fields, such as trimming whitespace and uniform casing.", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeDuplicates", + "type": "boolean", + "description": "Flag indicating whether to remove duplicate text entries after formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Defines the structure of the output dataset, e.g., 'json', 'csv', or 'tsv'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A formatted dataset in the specified outputFormat containing consistent language-labeled text entries ready for translation or ML model use." + }, + "aiAgent": { + "useCase": "Use this tool when preparing multilingual datasets for translation tasks or training translation models to ensure all entries follow a uniform schema with clearly labeled source and target languages, and clean text formatting. It facilitates data consistency and quality before feeding into downstream translation pipelines.", + "limitations": "This tool does not perform actual translation or language detection. It requires correctly labeled language fields and does not handle semantic validation of text content.", + "examples": [ + "Format a bilingual dataset from raw text objects to a normalized JSON structure for training a neural machine translation model.", + "Standardize a dataset by trimming and lowercasing texts, removing duplicates, and exporting as CSV for compatibility with translation software.", + "Convert and format multilingual text data embedded in JSON to a TSV file with uniform field names for import into external tools." + ] + }, + "tags": [ + "translation", + "dataset", + "formatting", + "multilingual", + "machine-translation", + "data-preprocessing" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"sourceLang\":\"en\",\"targetLang\":\"fr\",\"text\":\" Hello World! \"},{\"sourceLang\":\"en\",\"targetLang\":\"fr\",\"text\":\"Hello World!\"}],\"sourceLangField\":\"sourceLang\",\"targetLangField\":\"targetLang\",\"textField\":\"text\",\"normalizeText\":true,\"removeDuplicates\":true,\"outputFormat\":\"json\"}", + "description": "Input a raw dataset with English-French text pairs including extra spaces and duplicates, output a normalized JSON dataset with duplicates removed and cleaned texts." + }, + { + "inputJson": "{\"dataset\":[{\"src\":\"es\",\"tgt\":\"en\",\"content\":\"Buenos días\"},{\"src\":\"es\",\"tgt\":\"en\",\"content\":\"buenos días\"}],\"sourceLangField\":\"src\",\"targetLangField\":\"tgt\",\"textField\":\"content\",\"normalizeText\":true,\"removeDuplicates\":false,\"outputFormat\":\"csv\"}", + "description": "Format a Spanish-English dataset with different field names, normalize text casing but keep duplicates, output as CSV string." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "translation.buildContainer", + "description": "This tool creates a deployable container image that encapsulates a machine translation service. It accepts configuration parameters such as source and target languages, translation model specifications, container base image, and resource limits. The output is a container image ready for deployment in cloud or on-premises infrastructure, enabling scalable and isolated translation functionality.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., 'en') of the input texts to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code (e.g., 'fr') for the translation output.", + "required": true, + "defaultValue": "" + }, + { + "name": "translationModel", + "type": "string", + "description": "The identifier or path of the translation model to include in the container (e.g., 'transformer_v2', or 'onnx/custom_model').", + "required": true, + "defaultValue": "" + }, + { + "name": "baseImage", + "type": "string", + "description": "The base container image to use for building (e.g., 'python:3.9-slim').", + "required": false, + "defaultValue": "\"python:3.9-slim\"" + }, + { + "name": "exposePort", + "type": "number", + "description": "Port number that the container will expose for translation service API.", + "required": false, + "defaultValue": "8080" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Resource limit configuration for the container, including CPU and memory constraints (e.g., {\"cpu\": \"2\", \"memory\": \"4Gi\"}).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeSampleTexts", + "type": "boolean", + "description": "Whether to include sample input and output text files in the container for demonstration.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the build status, the container image tag or URL, build logs, and optional warnings if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a deployable container image for a translation service tailored to specific languages and models. It packages all required software and models into a container for easy distribution, deployment, and scaling in various environments such as Kubernetes or cloud platforms.", + "limitations": "This tool does not perform translation itself; it builds the container infrastructure. Model training or tuning must be done beforehand and supplied. It cannot deploy or run containers, only builds them.", + "examples": [ + "Build a Docker container for English to French translation using a custom neural machine translation model.", + "Create a container image exposing API port 5000 with CPU limit of 1 and 2Gi memory for Spanish to German translation.", + "Generate a lightweight container with included sample texts for demonstration of Japanese to English translation." + ] + }, + "tags": [ + "translation", + "container", + "build", + "infrastructure", + "deployment", + "machine learning", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"translationModel\":\"transformer_v2\",\"baseImage\":\"python:3.9-slim\",\"exposePort\":8080,\"resourceLimits\":{\"cpu\":\"2\",\"memory\":\"4Gi\"},\"includeSampleTexts\":true}", + "description": "Builds a container image for English to French translation using transformer_v2 model, exposing port 8080, with resource limits and sample texts." + }, + { + "inputJson": "{\"sourceLanguage\":\"es\",\"targetLanguage\":\"de\",\"translationModel\":\"onnx/custom_model\",\"exposePort\":5000,\"resourceLimits\":{\"cpu\":\"1\",\"memory\":\"2Gi\"}}", + "description": "Creates a container for Spanish to German translation with a custom ONNX model and resource constraints, exposing port 5000." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "translation.formatJSON", + "description": "This tool receives a JSON string representing text content in various languages and reformats it to a standardized, pretty-printed JSON format. It accepts options to control indentation, line breaks, and whether to preserve Unicode characters or escape them. The output is a clean, readable JSON string ready for use in translation pipelines or localization files.", + "category": "translation", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "The input JSON string containing translation data or text elements to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces for indentation in formatted JSON output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "escapeUnicode", + "type": "boolean", + "description": "Whether to escape non-ASCII Unicode characters as \\u sequences (true) or preserve them as is (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort the keys in JSON objects alphabetically in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string under the key 'formattedJson'. If input JSON is invalid, returns an error message under the key 'error'." + }, + "aiAgent": { + "useCase": "Use this tool when you have JSON data representing multilingual text or localization resources that need standard formatting before further processing or translation tasks. It helps ensure consistent indentation and encoding style, facilitating diffing, review, and integration into translation pipelines.", + "limitations": "This tool does not perform language translation or semantic analysis. It only formats JSON syntax and does not correct JSON structure errors or validate translations.", + "examples": [ + "Format JSON string with 4 spaces indentation preserving Unicode characters.", + "Pretty-print JSON with escaped Unicode and sorted keys for translation resource files.", + "Reformat minimal JSON string to standard 2-space indentation." + ] + }, + "tags": [ + "translation", + "JSON", + "formatting", + "localization", + "prettify", + "Unicode", + "data-processing" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"greeting\\\":\\\"Hello\\\", \\\"farewell\\\":\\\"Goodbye\\\"}\",\"indentationSpaces\":4,\"escapeUnicode\":false,\"sortKeys\":false}", + "description": "Format a simple JSON with 4 spaces indentation, preserving Unicode characters." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"farewell\\\":\\\"Adiós\\\", \\\"greeting\\\":\\\"Hola\\\"}\",\"indentationSpaces\":2,\"escapeUnicode\":true,\"sortKeys\":true}", + "description": "Format JSON with escaped Unicode and alphabetical sorting of keys." + }, + { + "inputJson": "{\"jsonString\":\"{\\\"message\\\":\\\"こんにちは\\\"}\",\"indentationSpaces\":2,\"escapeUnicode\":false,\"sortKeys\":false}", + "description": "Format minimal JSON containing Unicode characters without escaping, using default 2 spaces indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "translation.formatTest", + "description": "This tool accepts a code snippet representing a translation test (e.g., localization or internationalization test cases), analyzes its structure and formatting to ensure it follows best practices and standards. It outputs a formatted and cleaned version of the test code along with a summary report of detected issues or improvements.", + "category": "translation", + "parameters": [ + { + "name": "testCode", + "type": "string", + "description": "The raw code snippet of the translation test to be formatted, including assertions and text samples.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming or scripting language of the test code (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Preferred style guideline to format the test (e.g., 'prettier', 'google', or custom).", + "required": false, + "defaultValue": "prettier" + }, + { + "name": "includeReport", + "type": "boolean", + "description": "Whether to include a summary report highlighting format issues and suggestions.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted test code as a string and optionally a report object with details about formatting corrections and recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when working with automated translation or localization tests that require consistent, clean formatting for maintainability and readability. It helps AI agents to produce or validate translation test scripts adhering to style guides before execution or code reviews.", + "limitations": "Does not validate the logical correctness or functional accuracy of the test cases, only their formatting and structural style. It cannot create new translation tests or translate text content itself.", + "examples": [ + "Format this JavaScript translation test code to follow the Prettier style.", + "Clean and format a Python localization test snippet and get a report of improvements.", + "Apply Google style formatting to an internationalization test case script." + ] + }, + "tags": [ + "translation", + "formatting", + "testing", + "i18n", + "localization", + "code-quality" + ], + "examples": [ + { + "inputJson": "{\"testCode\":\"describe('i18n Test',()=>{it('should translate',()=>{expect(translate('hello')).toBe('hola');});});\",\"language\":\"JavaScript\",\"formatStyle\":\"prettier\",\"includeReport\":true}", + "description": "Format a small JavaScript translation test using Prettier style, returning formatted code and a report." + }, + { + "inputJson": "{\"testCode\":\"def test_translate(): assert translate('hello') == 'hola'\",\"language\":\"Python\",\"formatStyle\":\"google\",\"includeReport\":false}", + "description": "Format a basic Python translation test to Google style without a formatting report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "translation.composeWord", + "description": "Generates a single translated word in the target language based on the given source word and specified translation context such as formality or domain. Accepts a source word, source and target languages, and optional parameters to refine the translation, producing a contextually appropriate translated word as output.", + "category": "translation", + "parameters": [ + { + "name": "sourceWord", + "type": "string", + "description": "The single word in the source language to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., 'en' for English) representing the language of the source word.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code (e.g., 'fr' for French) into which the word should be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "formality", + "type": "string", + "description": "Optional parameter to specify the formality level of the translated word, such as 'formal', 'informal', or 'neutral'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "contextDomain", + "type": "string", + "description": "Optional domain or subject context (e.g., 'medical', 'technical', 'legal') to influence the translation choice.", + "required": false, + "defaultValue": "" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "Optional specific part of speech (e.g., noun, verb, adjective) to clarify meaning if the source word is ambiguous.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated word, with metadata about the translation including any applied formality, and confidence or notes if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to translate a single word precisely between languages, considering contextual nuances like domain, formality, or grammatical usage, to generate a suitable single-word translation.", + "limitations": "This tool cannot translate phrases or sentences; it only works for single words. It may not handle idiomatic expressions, slang, or complex morphological variants perfectly.", + "examples": [ + "Translate a technical English word to German with formal tone.", + "Find an informal French translation for an English adjective.", + "Translate a medical term from Spanish to English." + ] + }, + "tags": [ + "translation", + "word", + "language", + "single-word", + "contextual", + "formal", + "domain" + ], + "examples": [ + { + "inputJson": "{\"sourceWord\":\"bank\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"formality\":\"neutral\",\"contextDomain\":\"finance\",\"partOfSpeech\":\"noun\"}", + "description": "Translate the English noun 'bank' (financial institution) into French within financial context, neutral formality." + }, + { + "inputJson": "{\"sourceWord\":\"run\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"formality\":\"informal\",\"partOfSpeech\":\"verb\"}", + "description": "Translate the English verb 'run' into Spanish with an informal tone." + }, + { + "inputJson": "{\"sourceWord\":\"heart\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"contextDomain\":\"medical\"}", + "description": "Translate the English word 'heart' into German in a medical context." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "translation.buildService", + "description": "Creates a customizable translation service infrastructure allowing users to input source languages, target languages, desired translation models, and deployment options. It configures and provisions a translation API service capable of translating text between specified languages with chosen settings, returning service endpoint and configuration details.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguages", + "type": "array", + "description": "List of source language codes (ISO 639-1) that the service will support for translation input.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "List of target language codes (ISO 639-1) that the service will translate text into.", + "required": true, + "defaultValue": "" + }, + { + "name": "translationModel", + "type": "string", + "description": "Identifier or name of the translation model to use (e.g., 'neural', 'statistical', 'customModelV1').", + "required": false, + "defaultValue": "neural" + }, + { + "name": "enableGlossary", + "type": "boolean", + "description": "Flag to enable custom glossaries or dictionaries to improve domain-specific term translation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "deploymentEnvironment", + "type": "string", + "description": "Target environment for deployment such as 'cloud', 'onPremise', or 'hybrid'.", + "required": false, + "defaultValue": "cloud" + }, + { + "name": "maxConcurrentRequests", + "type": "number", + "description": "Maximum number of simultaneous translation requests the service can handle.", + "required": false, + "defaultValue": "50" + }, + { + "name": "loggingEnabled", + "type": "boolean", + "description": "Whether to enable detailed request and response logging for monitoring and debugging.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translation service endpoint URL, API keys or credentials, supported language pairs, and configuration summaries." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to set up or configure a new translation infrastructure service tailored to specific language pairs and translation models for integration into applications or workflows. Ideal for automating environment configuration for translation capabilities.", + "limitations": "Does not perform the translation itself; only builds and configures the service infrastructure. It cannot create translation models but uses existing ones specified by the user.", + "examples": [ + "Build a cloud translation service that supports English and Japanese source languages translating into Spanish and French using a neural model.", + "Create an on-premise translation service supporting German to English translation with glossary enabled and max 100 concurrent requests.", + "Set up a hybrid deployment translation service supporting multiple language pairs with logging disabled." + ] + }, + "tags": [ + "translation", + "service", + "infrastructure", + "build", + "language-processing", + "api", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguages\":[\"en\"],\"targetLanguages\":[\"fr\",\"es\"],\"translationModel\":\"neural\",\"enableGlossary\":true,\"deploymentEnvironment\":\"cloud\",\"maxConcurrentRequests\":100,\"loggingEnabled\":true}", + "description": "Build a cloud-based neural translation service for English input to French and Spanish output with glossary support and enhanced logging." + }, + { + "inputJson": "{\"sourceLanguages\":[\"de\"],\"targetLanguages\":[\"en\"],\"translationModel\":\"customModelV1\",\"enableGlossary\":false,\"deploymentEnvironment\":\"onPremise\",\"maxConcurrentRequests\":20,\"loggingEnabled\":false}", + "description": "Create an on-premise translation service for German to English with a custom model and no glossary or logging." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "translation.buildBranch", + "description": "Generates a localized translation branch of a software project's codebase by integrating translated text resources into the base source files. It accepts a source language code, target language code, and translation mappings, then creates a new code branch reflecting the translations for development and deployment.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original source texts (e.g., 'en').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code for the translation (e.g., 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "translationMappings", + "type": "object", + "description": "Key-value pairs mapping source text keys to translated strings for the target language.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "Name of the existing code branch to base the new translation branch on (default is 'main').", + "required": false, + "defaultValue": "main" + }, + { + "name": "branchName", + "type": "string", + "description": "Name for the new translation branch to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Commit message describing the translation update.", + "required": false, + "defaultValue": "Add localized translations for target language." + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the created branch, including its name, creation status, and any relevant error messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create a new code branch that integrates translations for a target language into a software project, enabling automated localization workflows and managing multilingual codebases effectively.", + "limitations": "This tool does not perform actual translation; it requires pre-generated translation mappings. It assumes access to the version control system and permission to create branches. It does not handle merge conflicts or semantic code changes.", + "examples": [ + "Create a French translation branch from the main branch using provided French text mappings.", + "Generate a new Spanish translation branch named 'feature/spanish-localization' for the codebase.", + "Integrate German translations into a new branch for review and testing." + ] + }, + "tags": [ + "translation", + "code", + "localization", + "branching", + "software-development", + "i18n", + "version-control" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"translationMappings\":{\"welcome_message\":\"Bienvenue\",\"logout_button\":\"Se déconnecter\"},\"baseBranch\":\"main\",\"branchName\":\"feature/french-localization\",\"commitMessage\":\"Add French translation strings.\"}", + "description": "Create a new branch named 'feature/french-localization' based on 'main' that includes French translations for welcome and logout messages." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"translationMappings\":{\"error_404\":\"Página no encontrada\",\"submit_button\":\"Enviar\"},\"branchName\":\"feature/spanish-translation\"}", + "description": "Generate Spanish translation branch with specified text keys, using default base branch 'main' and default commit message." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "translation.formatAPI", + "description": "Formats translation data into a standardized API definition in JSON or YAML format. Accepts source and target languages, key-value translation pairs, and configuration options, then outputs a ready-to-use API schema for translation services in a common format like OpenAPI or a custom JSON structure.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The source language code for the translations (e.g., 'en').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code to which the translation applies (e.g., 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "translations", + "type": "object", + "description": "An object containing key-value pairs where keys are identifiers and values are the translated text strings.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiFormat", + "type": "string", + "description": "The output API format, such as 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata like timestamps, versioning, or language info in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaVersion", + "type": "string", + "description": "Version of the API schema to use, if applicable (e.g., '1.0').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted API specification string under 'apiDefinition' and the format type under 'format'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw translation key-value mappings into a structured and standardized API specification for consumption by multilingual applications or services. It helps automate the creation of translation API endpoints or service mocks based on given data.", + "limitations": "Does not perform actual translation or language detection; only formats data into API specifications. It does not handle runtime API hosting or dynamic translation retrieval.", + "examples": [ + "Format translation data from English to French into a JSON API specification.", + "Generate a YAML API definition with translation keys for a multilingual web app.", + "Include metadata in the output to track versioning in translation API schemas." + ] + }, + "tags": [ + "translation", + "formatting", + "API", + "localization", + "i18n", + "multilingual" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"translations\":{\"greeting\":\"Hola\",\"farewell\":\"Adiós\"},\"apiFormat\":\"json\",\"includeMetadata\":true,\"schemaVersion\":\"1.0\"}", + "description": "Format English to Spanish translations into a JSON API format including metadata." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"translations\":{\"welcomeMessage\":\"Willkommen\",\"thankYou\":\"Danke\"},\"apiFormat\":\"yaml\",\"includeMetadata\":false}", + "description": "Create a YAML API definition from English to German translations without extra metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "translation.buildPullRequest", + "description": "Builds a code pull request to integrate or update translation files in a software repository. Accepts source language, target language(s), translation content or keys, and repository details; processes these inputs to create or modify localized resource files and generates a pull request with these changes, ready for review and integration.", + "category": "translation", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the target code repository where the pull request will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name of the branch to create for the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Source language code (e.g., 'en') representing the original text language.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "Array of target language codes (e.g., ['es','fr']) for which translation files should be created or updated.", + "required": true, + "defaultValue": "" + }, + { + "name": "translationData", + "type": "object", + "description": "An object mapping translation keys to translated strings or objects, structured per language.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Commit message describing the translation update in the pull request.", + "required": false, + "defaultValue": "Update translation files" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The base branch to target for the pull request (e.g., 'main' or 'master').", + "required": false, + "defaultValue": "main" + } + ], + "returns": { + "type": "object", + "description": "Details of the created pull request including pull request URL, branch name, and commit details." + }, + "aiAgent": { + "useCase": "Use when you need to automate adding or updating translated localization files in a code repository and generate a pull request to integrate these changes, facilitating streamlined translation workflows and code reviews.", + "limitations": "This tool does not perform actual translation; it expects translation content as input. It cannot resolve merge conflicts or perform repository access authentication itself.", + "examples": [ + "Create a pull request adding French and German translations based on given translation keys for a repo.", + "Update Spanish localization files with new strings and open a pull request for review.", + "Generate a branch and pull request to fix missing translation keys in Italian and Portuguese." + ] + }, + "tags": [ + "translation", + "pull request", + "localization", + "automation", + "code management" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project\",\"branchName\":\"update-translations-fr\",\"sourceLanguage\":\"en\",\"targetLanguages\":[\"fr\"],\"translationData\":{\"fr\":{\"welcome\":\"Bienvenue\",\"logout\":\"Se déconnecter\"}},\"commitMessage\":\"Add French translations\",\"baseBranch\":\"main\"}", + "description": "Add French translations to the repository via a pull request." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project\",\"branchName\":\"fix-spanish-missing-keys\",\"sourceLanguage\":\"en\",\"targetLanguages\":[\"es\"],\"translationData\":{\"es\":{\"submit\":\"Enviar\",\"cancel\":\"Cancelar\"}},\"commitMessage\":\"Fix missing Spanish translation keys\",\"baseBranch\":\"develop\"}", + "description": "Fix missing Spanish translation keys and create a pull request targeting the develop branch." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "translation.formatContract", + "description": "This tool accepts a contract text in any language along with a target language and standardizes the contract's formatting and terminology according to common legal conventions of that language. It reformats headers, sections, clauses, and legal phrases to produce a polished, standardized contract document in the desired language, facilitating easier legal review and cross-language consistency.", + "category": "translation", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "The full text of the contract that needs to be formatted and translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original contract text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code to which the contract should be formatted and translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The specific formatting style or legal standard to apply (e.g., 'US Contract Style', 'EU Directive style').", + "required": false, + "defaultValue": "Standard" + }, + { + "name": "includeClauseNumbering", + "type": "boolean", + "description": "Whether to include standardized clause numbering in the formatted contract.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract text in the target language along with metadata about transformations applied." + }, + "aiAgent": { + "useCase": "Use this tool when a contract document needs to be translated and reformatted to comply with the legal formatting conventions of a different target language jurisdiction. It helps AI agents deliver polished, legally consistent contracts for review or use in different languages.", + "limitations": "This tool does not perform legal advice or validate legal correctness of contract terms. It does not handle multi-language contracts containing mixed language sections. Formatting depends on predefined styles and may not cover all regional nuances.", + "examples": [ + "Format and translate a contract from English to Spanish with US legal formatting and clause numbers.", + "Convert a French contract into German applying EU directive contract style without clause numbering.", + "Translate a Chinese contract to English using default standard formatting with clause numbering." + ] + }, + "tags": [ + "translation", + "legal", + "contract", + "formatting", + "document", + "multilingual", + "legaltech" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This Agreement is made effective as of...\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"formatStyle\":\"US Contract Style\",\"includeClauseNumbering\":true}", + "description": "Format and translate a US style English contract into Spanish with clause numbering." + }, + { + "inputJson": "{\"contractText\":\"Le présent contrat est conclu...\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"de\",\"formatStyle\":\"EU Directive style\",\"includeClauseNumbering\":false}", + "description": "Reformat a French contract into German applying EU-style formatting without numbering." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "translation.generateDashboard", + "description": "Generates an interactive analytics dashboard summarizing translation data such as volume, quality scores, languages involved, and time trends. Accepts translation job logs, performance metrics, and user preferences as input, processes and aggregates data, then outputs a structured dashboard JSON for visualization or reporting.", + "category": "translation", + "parameters": [ + { + "name": "translationData", + "type": "array", + "description": "Array of translation job objects including source language, target language, quality scores, and timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names to include in the dashboard such as 'volume', 'averageQuality', or 'turnaroundTime'.", + "required": false, + "defaultValue": "[\"volume\",\"averageQuality\"]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying start and end dates for filtering the translation data, format { startDate: string, endDate: string } in ISO 8601.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Field name to group data by on the dashboard, e.g., 'sourceLanguage', 'targetLanguage', or 'month'.", + "required": false, + "defaultValue": "sourceLanguage" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to include time series trend charts for selected metrics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the dashboard output, e.g., 'json' for machine-readable or 'html' for a rendered report.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A structured dashboard object containing aggregated translation metrics, groupings, and optional trend data suitable for rendering or further analysis." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents tasked with providing insights from raw translation data, enabling stakeholders to monitor translation quality, volume, and performance over time. It helps in summarizing key metrics and trends visually or in structured form for decision-making, reporting, or further processing.", + "limitations": "It does not perform raw translation or text conversion, only analyzes and summarizes existing translation data. It requires properly structured input data with relevant metadata for accurate analytics.", + "examples": [ + "Generate a dashboard showing translation volume and quality trends for the past quarter grouped by target language.", + "Provide a summary dashboard of translation job performance filtered for the last month, grouped by source language without trend lines.", + "Create an HTML report dashboard of translation metrics including turnaround time grouped by month for yearly overview." + ] + }, + "tags": [ + "translation", + "analytics", + "dashboard", + "reporting", + "metrics", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"translationData\":[{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"qualityScore\":0.95,\"timestamp\":\"2024-04-01T10:00:00Z\"},{\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"qualityScore\":0.90,\"timestamp\":\"2024-04-02T12:00:00Z\"}],\"metrics\":[\"volume\",\"averageQuality\"],\"timeRange\":{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\"},\"groupBy\":\"targetLanguage\",\"includeTrends\":true,\"outputFormat\":\"json\"}", + "description": "Generate a dashboard for April 2024 showing translation volume and quality average grouped by target language with trends." + }, + { + "inputJson": "{\"translationData\":[{\"sourceLanguage\":\"es\",\"targetLanguage\":\"en\",\"qualityScore\":0.88,\"timestamp\":\"2024-03-15T09:30:00Z\"}],\"metrics\":[\"volume\"],\"groupBy\":\"sourceLanguage\",\"includeTrends\":false,\"outputFormat\":\"json\"}", + "description": "Create a dashboard summarizing translation volume grouped by source language without trends." + }, + { + "inputJson": "{\"translationData\":[{\"sourceLanguage\":\"jp\",\"targetLanguage\":\"en\",\"qualityScore\":0.92,\"timestamp\":\"2023-12-20T15:45:00Z\"}],\"metrics\":[\"turnaroundTime\",\"averageQuality\"],\"timeRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\"},\"groupBy\":\"month\",\"includeTrends\":true,\"outputFormat\":\"html\"}", + "description": "Produce an HTML report dashboard for 2023 showing monthly average quality and turnaround time trends grouped by month." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "translation.buildModule", + "description": "Builds a reusable translation module in a specified programming language that translates text between given source and target languages. It accepts configuration for language pairs, preferred translation engine, and optional authentication keys. The output is source code for a translation module/class that can be integrated into applications.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the text to be translated from (e.g., 'en').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code to translate the text into (e.g., 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language for the generated module (e.g., 'python', 'javascript').", + "required": true, + "defaultValue": "" + }, + { + "name": "translationEngine", + "type": "string", + "description": "The translation API or service to use internally (e.g., 'google', 'microsoft', 'deepl').", + "required": false, + "defaultValue": "google" + }, + { + "name": "apiKey", + "type": "string", + "description": "Optional API key or authentication token for the chosen translation engine.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAutoDetect", + "type": "boolean", + "description": "Whether to include automatic source language detection in the module.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code string and metadata about the module, such as programming language and supported language pair." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a ready-to-use translation module that can be directly integrated into software projects to provide language translation functionality, tailored to specific source and target languages and preferred languages or APIs.", + "limitations": "This tool generates code modules but does not execute or validate the translation results. It does not handle complex localization issues beyond basic text translation.", + "examples": [ + "Generate a Python module to translate from English to Spanish using Google Translate.", + "Build a JavaScript module for French to German translation with auto language detection enabled.", + "Create a reusable translation class in Python for Chinese to English using DeepL API with provided API key." + ] + }, + "tags": [ + "translation", + "code generation", + "module", + "programming", + "language translation", + "API integration" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"programmingLanguage\":\"python\",\"translationEngine\":\"google\",\"apiKey\":\"\",\"includeAutoDetect\":false}", + "description": "Generate a Python module for translating English to Spanish using Google Translate without auto detect." + }, + { + "inputJson": "{\"sourceLanguage\":\"fr\",\"targetLanguage\":\"de\",\"programmingLanguage\":\"javascript\",\"translationEngine\":\"microsoft\",\"apiKey\":\"YOUR_API_KEY_HERE\",\"includeAutoDetect\":true}", + "description": "Build a JavaScript translation module for French to German using Microsoft Translator with auto-detect enabled and API key." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "translation.generateQuery", + "description": "Generates a structured query string in a target language to assist in translation tasks or multilingual code queries. It accepts source text and target language parameters, constructs a linguistically and contextually appropriate query phrase or sentence to facilitate accurate translations or code searches in that language.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The text to be translated or used as the base for generating the query.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code (e.g., 'en', 'fr', 'zh') into which the query should be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryType", + "type": "string", + "description": "Type of query to generate, such as 'search', 'translation', or 'codeSnippet'.", + "required": false, + "defaultValue": "translation" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Whether to include contextual elements around the source text to improve query relevance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated query string in the target language, and metadata about the generation process, such as language code and query type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate natural language queries or code-related queries in a specific target language based on source text inputs. It helps in multilingual search, translation assistance, and coding support across different language contexts, ensuring queries are linguistically appropriate and context-aware.", + "limitations": "This tool generates query strings but does not perform full translations or code execution. Accuracy depends on the input quality and understanding of the target language nuances. It may not handle highly specialized technical jargon perfectly.", + "examples": [ + "Generate a French query to search a codebase for documentation about 'error handling'.", + "Create a natural language query in Japanese for translating the phrase 'data validation rules'.", + "Produce a Spanish search query focusing on 'user authentication methods' in software development." + ] + }, + "tags": [ + "translation", + "queryGeneration", + "multilingual", + "languageProcessing", + "codeSearch" + ], + "examples": [ + { + "inputJson": "{\"sourceText\": \"error handling\", \"targetLanguage\": \"fr\", \"queryType\": \"search\", \"includeContext\": true}", + "description": "Generate a French search query to find information about 'error handling'." + }, + { + "inputJson": "{\"sourceText\": \"data validation rules\", \"targetLanguage\": \"ja\", \"queryType\": \"translation\", \"includeContext\": false}", + "description": "Create a Japanese query to assist in translating 'data validation rules' without additional context." + }, + { + "inputJson": "{\"sourceText\": \"user authentication methods\", \"targetLanguage\": \"es\", \"queryType\": \"codeSnippet\", \"includeContext\": true}", + "description": "Generate a Spanish query to search for code snippets related to 'user authentication methods' including context." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "translation.createLink", + "description": "Generates a shareable URL linking to a web page displaying the provided multilingual translation content. Accepts source text, target language, and optionally translated text to create a URL that users can open in a browser to view the translation validation or review page.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text to be translated or linked with translation.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., en, fr, es) of the source text.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code for which the translation link is created.", + "required": true, + "defaultValue": "" + }, + { + "name": "translatedText", + "type": "string", + "description": "The translated text in the target language, if available. If omitted, the link will show an untranslated or automatic translation placeholder.", + "required": false, + "defaultValue": "" + }, + { + "name": "expirationHours", + "type": "number", + "description": "Optional duration in hours after which the generated link expires. Defaults to no expiration.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secure URL as a string that points to the translation viewing page." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide users or collaborators with a direct hyperlink to view translation results online, enabling easy sharing, review, or validation of translated content across languages. It helps bridge raw text transformations into accessible web content for multilingual communication or review workflows.", + "limitations": "The tool does not perform the actual translation; it only creates a URL referencing existing translation data or placeholders. It requires a backend or web service that supports hosting and resolving these links. It cannot guarantee the translation quality or real-time updates unless integrated with dynamic content systems.", + "examples": [ + "Generate a shareable link to display the French translation of 'Hello, how are you?'.", + "Create a URL for viewing the Spanish translation of the provided English source text with an expiration time of 24 hours.", + "Produce a link for the Chinese translation page given the original Japanese text, even if the translated text is not yet available." + ] + }, + "tags": [ + "translation", + "sharing", + "multilingual", + "link generation", + "content distribution", + "web" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Hello, how are you?\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"translatedText\":\"Bonjour, comment ça va?\",\"expirationHours\":24}", + "description": "Creating a link to view the French translation of an English greeting with a 24-hour expiry." + }, + { + "inputJson": "{\"sourceText\":\"Welcome to our service.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"translatedText\":\"Bienvenido a nuestro servicio.\",\"expirationHours\":0}", + "description": "Generate a permanent link for viewing the Spanish translation of an English welcome message." + }, + { + "inputJson": "{\"sourceText\":\"新しいプロジェクトについて話しましょう。\",\"sourceLanguage\":\"ja\",\"targetLanguage\":\"zh\",\"translatedText\":\"\",\"expirationHours\":12}", + "description": "Generate a link to view the Chinese translation page for a Japanese message when the translated text is not yet provided, with 12 hours validity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "translation.createDashboard", + "description": "Creates an interactive dashboard that visualizes translation project metrics such as volume of text translated, languages involved, turnaround times, and quality scores. Accepts detailed translation data input and configuration options to tailor analytics output for monitoring and managing translation workflows.", + "category": "translation", + "parameters": [ + { + "name": "translationData", + "type": "array", + "description": "Array of translation records with details like source language, target language, word count, duration, and quality score.", + "required": true, + "defaultValue": "" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title displayed at the top of the dashboard for identification or project naming purposes.", + "required": false, + "defaultValue": "Translation Project Metrics" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object defining start and end dates to filter the translation data by timeframe, e.g., {\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"}.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeQualityMetrics", + "type": "boolean", + "description": "Flag indicating whether to include quality assessment charts such as review scores and error rates in the dashboard.", + "required": false, + "defaultValue": "true" + }, + { + "name": "groupBy", + "type": "string", + "description": "Dimension to group metrics by, such as 'languagePair', 'translator', or 'month'.", + "required": false, + "defaultValue": "languagePair" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated dashboard, e.g., 'web', 'pdf', or 'excel'.", + "required": false, + "defaultValue": "web" + } + ], + "returns": { + "type": "object", + "description": "An object containing a dashboard URL or embedded widget code along with a summary of the displayed analytics and raw processed data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create visual and interactive reports summarizing translation workflow data to support project monitoring, quality control, and resource planning. It is valuable in platforms managing multilingual content that require ongoing performance visualization.", + "limitations": "Cannot generate dashboards without structured translation data input. Does not perform translation or language detection itself, only analytics visualization. Custom visualizations beyond preset options are not supported.", + "examples": [ + "Show me a dashboard summarizing last quarter's translations grouped by language pair with quality metrics.", + "Create a translation dashboard in PDF format for all projects from 2023 including word counts and average turnaround time.", + "Generate a web dashboard for translations filtered by translator and including error rates." + ] + }, + "tags": [ + "translation", + "analytics", + "dashboard", + "visualization", + "project management" + ], + "examples": [ + { + "inputJson": "{\"translationData\":[{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"wordCount\":5000,\"durationHours\":10,\"qualityScore\":95,\"date\":\"2024-04-10\"},{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"wordCount\":3000,\"durationHours\":6,\"qualityScore\":92,\"date\":\"2024-04-11\"}],\"dashboardTitle\":\"Q2 Translation Metrics\",\"timeRange\":{\"start\":\"2024-04-01\",\"end\":\"2024-06-30\"},\"includeQualityMetrics\":true,\"groupBy\":\"languagePair\",\"outputFormat\":\"web\"}", + "description": "Create a web-based dashboard for Q2 2024 translation metrics grouped by language pair, including quality scores." + }, + { + "inputJson": "{\"translationData\":[{\"sourceLanguage\":\"de\",\"targetLanguage\":\"en\",\"wordCount\":2000,\"durationHours\":5,\"qualityScore\":88,\"date\":\"2024-05-15\"}],\"dashboardTitle\":\"May Translations\",\"includeQualityMetrics\":false,\"groupBy\":\"translator\",\"outputFormat\":\"pdf\"}", + "description": "Generate PDF dashboard for May translations grouped by translator, excluding quality metrics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "translation.createKPI", + "description": "This tool accepts translation project data and generates key performance indicators (KPIs) relevant to translation quality and efficiency. It processes inputs such as word counts, translation times, error rates, and language pairs, producing a structured report summarizing metrics like average translation speed, accuracy rates, and client satisfaction scores.", + "category": "translation", + "parameters": [ + { + "name": "projectId", + "type": "string", + "description": "Unique identifier of the translation project to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Source language code of the translation", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Target language code of the translation", + "required": true, + "defaultValue": "" + }, + { + "name": "totalWords", + "type": "number", + "description": "Total number of words translated in the project", + "required": true, + "defaultValue": "" + }, + { + "name": "translationTimeMinutes", + "type": "number", + "description": "Total time spent translating in minutes", + "required": true, + "defaultValue": "" + }, + { + "name": "errorCount", + "type": "number", + "description": "Number of translation errors identified during review", + "required": false, + "defaultValue": "0" + }, + { + "name": "reviewerFeedbackScore", + "type": "number", + "description": "Average reviewer feedback score on a scale from 1 to 5", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeClientSatisfaction", + "type": "boolean", + "description": "Whether to include client satisfaction metrics if available", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing KPIs such as average words per minute, accuracy percentage, error rate, reviewer score, and optionally client satisfaction metrics." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the performance and quality of a translation project quantitatively, extracting KPIs for reporting, optimization, or client updates. It is useful for translation management systems and analytics dashboards to track translation efficiency and quality over time.", + "limitations": "This tool does not perform the actual translation or quality assessment itself but relies on input metrics provided. It cannot generate KPIs without valid project performance data.", + "examples": [ + "Generate KPIs for a Spanish to English document project with provided word count and error metrics.", + "Calculate translation speed and accuracy for a recent French to German project.", + "Include client satisfaction metrics to produce a comprehensive KPI report for a completed translation job." + ] + }, + "tags": [ + "translation", + "analytics", + "KPI", + "performance", + "quality", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"projectId\":\"proj123\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"totalWords\":10000,\"translationTimeMinutes\":500,\"errorCount\":20,\"reviewerFeedbackScore\":4.5,\"includeClientSatisfaction\":true}", + "description": "Calculate KPIs for a 10,000-word English to French translation project with error and reviewer feedback data." + }, + { + "inputJson": "{\"projectId\":\"proj456\",\"sourceLanguage\":\"de\",\"targetLanguage\":\"es\",\"totalWords\":5000,\"translationTimeMinutes\":300}", + "description": "Generate basic KPIs (speed) for a German to Spanish translation without error or satisfaction metrics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "translation.createInstance", + "description": "Creates and configures a dedicated translation service instance for processing multilingual text translations. Accepts configuration parameters like source and target languages, model type, and performance options, then sets up an instance capable of translating input text as specified. Outputs an instance identifier and configuration details.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., 'en') of the source text to translate from.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "A list of language codes (e.g., ['fr','de']) representing target languages to translate into.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "Type of translation model to use, e.g., 'neural' or 'statistical'.", + "required": false, + "defaultValue": "neural" + }, + { + "name": "maxConcurrentRequests", + "type": "number", + "description": "Maximum number of simultaneous translation requests the instance can handle.", + "required": false, + "defaultValue": "5" + }, + { + "name": "enableGlossary", + "type": "boolean", + "description": "Whether to apply a custom glossary for domain-specific terms during translation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "instanceName", + "type": "string", + "description": "Optional unique name to assign to the translation instance for identification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details of the created translation instance including a unique instanceId, configured source and target languages, model type, and capacity." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a new translation service setup tailored to specific source and multiple target languages with custom configurations. Ideal for scenarios requiring managing separate translation instances per project or client, enabling configurable performance and settings.", + "limitations": "This tool only creates and configures the translation instance; it does not perform actual text translation or return translated content. Glossary support requires separate glossary data input during instance setup, not handled here.", + "examples": [ + "Create a translation instance from English to French and German using the neural model.", + "Set up a translation instance with enabled glossary support for legal documents, from Spanish to English.", + "Define a translation instance supporting three target languages with a capacity for ten concurrent translation requests." + ] + }, + "tags": [ + "translation", + "instance", + "configuration", + "multilingual", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguages\":[\"fr\",\"de\"],\"modelType\":\"neural\",\"maxConcurrentRequests\":5,\"enableGlossary\":false,\"instanceName\":\"ProjectAlpha\"}", + "description": "Create an instance translating English to French and German using default neural model without glossary, named 'ProjectAlpha'." + }, + { + "inputJson": "{\"sourceLanguage\":\"es\",\"targetLanguages\":[\"en\"],\"enableGlossary\":true}", + "description": "Create a Spanish to English translation instance with glossary enabled, using default parameters." + }, + { + "inputJson": "{\"sourceLanguage\":\"zh\",\"targetLanguages\":[\"en\",\"ja\",\"ko\"],\"maxConcurrentRequests\":10}", + "description": "Create a Chinese to English, Japanese, Korean translation instance capable of handling 10 concurrent requests." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "translation.createCredential", + "description": "Generates a secure authentication credential containing encrypted translation service access tokens and user metadata. Accepts user information and translation service parameters, then produces a signed credential that can be used to authenticate and authorize translation API usage securely.", + "category": "translation", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user requesting the credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "languages", + "type": "array", + "description": "List of language codes that the credential will authorize for translation services.", + "required": true, + "defaultValue": "" + }, + { + "name": "validityPeriodHours", + "type": "number", + "description": "Duration in hours for which the credential remains valid.", + "required": false, + "defaultValue": "24" + }, + { + "name": "accessLevel", + "type": "string", + "description": "Level of access granted, e.g., 'read-only', 'full-access'.", + "required": false, + "defaultValue": "read-only" + }, + { + "name": "encryptionKeyId", + "type": "string", + "description": "Identifier for the encryption key used to sign the credential.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the signed credential token string and its expiration timestamp." + }, + "aiAgent": { + "useCase": "Use this tool to securely create and issue credentials that users or services can use to authenticate and gain authorized access to translation APIs for specified languages. Ideal for environments requiring fine-grained access control and secure token generation for translation-related operations.", + "limitations": "This tool does not perform the translation itself, nor manage token revocation or storage beyond credential creation. It requires an external key management system for encryption keys.", + "examples": [ + "Create a credential for user123 to translate between English and Spanish with full access valid for 48 hours.", + "Generate a read-only credential for user456 authorized only for French translation for 12 hours.", + "Issue a credential with custom encryption key ID for a service account used in automated translations." + ] + }, + "tags": [ + "translation", + "security", + "credential", + "authentication", + "authorization", + "token", + "encryption" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"user123\",\"languages\":[\"en\",\"es\"],\"validityPeriodHours\":48,\"accessLevel\":\"full-access\",\"encryptionKeyId\":\"key-789\"}", + "description": "Generate a full-access credential for user123 for English and Spanish valid 48 hours." + }, + { + "inputJson": "{\"userId\":\"user456\",\"languages\":[\"fr\"],\"validityPeriodHours\":12,\"accessLevel\":\"read-only\",\"encryptionKeyId\":\"key-456\"}", + "description": "Create a read-only credential for user456 limited to French, valid 12 hours." + }, + { + "inputJson": "{\"userId\":\"service_account\",\"languages\":[\"de\",\"it\"],\"encryptionKeyId\":\"key-123\"}", + "description": "Issue default 24-hour read-only credential for service account for German and Italian with specified key." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "translation.createRisk", + "description": "This tool analyzes a given text translation task or process to identify and generate a comprehensive risk report related to security, privacy, and accuracy risks in the translation workflow. It accepts the source text, target languages, context and domain, and generates a structured risk assessment highlighting potential vulnerabilities and mitigation recommendations.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text that is to be translated, provided as input for risk analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "A list of target language codes (e.g., ['fr','de']) for which the translation risk assessment should be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "domainContext", + "type": "string", + "description": "The domain or subject matter context of the text (e.g., legal, medical, technical) to assess domain-specific risks.", + "required": false, + "defaultValue": "" + }, + { + "name": "includePrivacyRisks", + "type": "boolean", + "description": "Whether to include privacy and data protection risks in the assessment; defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Sensitivity classification of the source text (e.g., public, confidential, secret) to tailor risk evaluation.", + "required": false, + "defaultValue": "public" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a riskReport summarizing identified risks, categorized by type (e.g., security, privacy, accuracy), and suggesting mitigation measures, along with a riskLevel rating (low, medium, high)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the potential risks associated with translating sensitive or critical texts across languages and domains, to prevent data leaks, mistranslations, or security breaches in the translation process. Suitable for pre-translation risk assessment or quality assurance workflows.", + "limitations": "The tool does not perform the actual translation; it only assesses potential risks based on input text and metadata, and may not identify all domain-specific risks without detailed context.", + "examples": [ + "Identify security and privacy risks in translating confidential financial reports from English to German and French.", + "Assess translation risks for a public technical manual being localized to Spanish and Chinese.", + "Create a risk assessment for medical records translation into multiple languages with privacy concerns." + ] + }, + "tags": [ + "translation", + "riskAssessment", + "security", + "privacy", + "accuracy", + "multilingual", + "textAnalysis" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Confidential financial report Q4 2023.\",\"targetLanguages\":[\"de\",\"fr\"],\"domainContext\":\"financial\",\"includePrivacyRisks\":true,\"sensitivityLevel\":\"confidential\"}", + "description": "Assess risks for translating a confidential financial report into German and French, focusing on privacy and security." + }, + { + "inputJson": "{\"sourceText\":\"Technical user manual for industrial equipment.\",\"targetLanguages\":[\"es\",\"zh\"],\"domainContext\":\"technical\",\"includePrivacyRisks\":false,\"sensitivityLevel\":\"public\"}", + "description": "Generate risk assessment for translating a technical manual into Spanish and Chinese, without privacy risk considerations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "translation.createVariable", + "description": "Creates a programming variable declaration string that contains a translated text value. Accepts the source text, target language code, and variable naming preferences. Translates the input text and generates a code snippet declaring a variable holding the translated string in the specified programming language syntax.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text string to translate and assign to the variable.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code (e.g., 'fr', 'es') to translate the source text into.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableName", + "type": "string", + "description": "The name of the variable to create in the output code.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language syntax to use for the variable declaration (e.g., 'JavaScript', 'Python').", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "isConstant", + "type": "boolean", + "description": "Indicates if the variable should be declared as a constant (true) or mutable (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated text and the corresponding variable declaration code snippet as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a programming variable that holds translated text in a specific programming language. This is helpful in internationalization or localization scripts to programmatically create variables with translated content in code, simplifying integration.", + "limitations": "This tool only generates variable declarations with translated string content. It does not handle complex localization data structures, context-aware translations, or dynamic runtime translations.", + "examples": [ + "Create a constant JavaScript variable named 'welcomeMsg' with the French translation of 'Welcome to our site!'", + "Generate a Python variable 'errorMessage' with the Spanish translation of 'An error occurred.'", + "Make a mutable variable 'labelText' in JavaScript containing the German translation of 'Submit'" + ] + }, + "tags": [ + "translation", + "variable creation", + "internationalization", + "localization", + "code generation" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Welcome to our site!\",\"targetLanguage\":\"fr\",\"variableName\":\"welcomeMsg\",\"programmingLanguage\":\"JavaScript\",\"isConstant\":true}", + "description": "Create a constant JavaScript variable named 'welcomeMsg' containing the French translation of 'Welcome to our site!'." + }, + { + "inputJson": "{\"sourceText\":\"An error occurred.\",\"targetLanguage\":\"es\",\"variableName\":\"errorMessage\",\"programmingLanguage\":\"Python\",\"isConstant\":false}", + "description": "Generate a mutable Python variable 'errorMessage' with the Spanish translation of 'An error occurred.'." + }, + { + "inputJson": "{\"sourceText\":\"Submit\",\"targetLanguage\":\"de\",\"variableName\":\"labelText\",\"programmingLanguage\":\"JavaScript\",\"isConstant\":false}", + "description": "Create a mutable JavaScript variable named 'labelText' with the German translation of 'Submit'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "translation.createOpportunity", + "description": "This tool accepts a description of a business opportunity in one language and a target language code, then translates and formats the opportunity details to create a localized, clear, and business-ready opportunity text for use in international sales and marketing contexts.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original business opportunity description text to be translated and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "ISO code of the language of the sourceText (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "ISO code of the target language to translate the opportunity into (e.g., 'es' for Spanish).", + "required": true, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "Optional industry domain to tailor opportunity text style and terminology.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Format style of the output opportunity (e.g., 'formal', 'concise', 'detailed').", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated and formatted business opportunity text along with metadata including the original and target languages and a confidence score for translation accuracy." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a clear, professional business opportunity description in another language to aid international sales, marketing campaigns, or partnership proposals. It translates and presents the opportunity in a localized manner, adapting language style and terminology as per industry and format preferences.", + "limitations": "This tool does not create business opportunity content from scratch, it requires an initial source text. It may not capture highly specialized industry jargon without appropriate input parameters, and accuracy depends on source input quality.", + "examples": [ + "Translate a sales opportunity description from English to Spanish for a technology industry partner proposal.", + "Create a formal, detailed opportunity description in French from a concise English source text for marketing outreach.", + "Generate a localized German business opportunity from an English description focusing on healthcare sector terms." + ] + }, + "tags": [ + "translation", + "business", + "internationalization", + "sales", + "marketing", + "localization", + "opportunity" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"We have an exciting new opportunity to partner with leading retailers for expanding our product distribution network.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"industry\":\"retail\",\"formatStyle\":\"formal\"}", + "description": "Translate and format a retail business opportunity from English to formal French." + }, + { + "inputJson": "{\"sourceText\":\"Looking to collaborate with tech startups to innovate our platform.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"industry\":\"technology\",\"formatStyle\":\"concise\"}", + "description": "Create a concise Spanish version of a technology partnership opportunity from English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "translation.createPayment", + "description": "This tool accepts payment details in a source language and translates the relevant payment information fields (such as amount, currency, payee, and payment instructions) into a specified target language, producing a translated payment instruction document or data object suitable for cross-border payment communication.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., 'en', 'fr', 'es') of the incoming payment details to translate from.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code of the target language to translate payment details into.", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentData", + "type": "object", + "description": "An object containing payment information fields such as amount, currency, payee name, and payment instructions in the source language.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The desired output format for the translated payment information, e.g., plain text, JSON, or XML.", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "includeInstructions", + "type": "boolean", + "description": "Whether to include translated payment instructions or terms in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured object or document containing the payment information translated into the target language, formatted according to the specified output format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to facilitate international payment processing by converting payment details or instructions from one language to another, ensuring clarity and compliance in cross-border transactions. It helps standardize communication for payments originating in one language to be understood in another.", + "limitations": "This tool translates payment information fields but does not execute payments or validate payment authenticity. It cannot handle currency conversion or financial compliance checks. It assumes input data is correctly formatted and accurate.", + "examples": [ + "Translate payment details from English to French for invoicing.", + "Create a translated payment instruction document in Spanish for an international client.", + "Convert payment instructions from German to English including special payment terms." + ] + }, + "tags": [ + "translation", + "payment", + "financial", + "cross-border", + "international", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"paymentData\":{\"amount\":\"1500\",\"currency\":\"USD\",\"payeeName\":\"John Doe\",\"paymentInstructions\":\"Please transfer before end of month.\"},\"format\":\"JSON\",\"includeInstructions\":true}", + "description": "Translate US payment instructions from English to French including instructions." + }, + { + "inputJson": "{\"sourceLanguage\":\"de\",\"targetLanguage\":\"en\",\"paymentData\":{\"amount\":\"2000\",\"currency\":\"EUR\",\"payeeName\":\"Maria Schmidt\",\"paymentInstructions\":\"Zahlung innerhalb von 14 Tagen.\"},\"format\":\"plain text\",\"includeInstructions\":true}", + "description": "Convert German payment details and instructions to English in plain text format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "translation.createQuery", + "description": "Creates a structured query string in a specified target language to retrieve translations from a translation database or API. Accepts input text, source and target languages, and optional parameters to customize query format and encoding. Outputs a formatted query string ready for use in translation-related data retrieval.", + "category": "translation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The source text to be translated or included in the query.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Language code of the source text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Language code into which the text is to be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "queryFormat", + "type": "string", + "description": "The format of the query string, such as 'SQL', 'GraphQL', or 'REST'.", + "required": false, + "defaultValue": "\"REST\"" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Whether to include contextual information (like domain or usage) in the query.", + "required": false, + "defaultValue": "false" + }, + { + "name": "encode", + "type": "boolean", + "description": "Whether to URL-encode the output query string for safe HTTP transmission.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string, including its format and optionally an encoded version for transmission." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically construct queries that fetch translations or related data from translation databases or services, especially when an agent must interface with different APIs or systems requiring structured query strings in various formats and languages.", + "limitations": "This tool cannot perform the actual translation or fetch results from the translation service; it only generates the query string. It does not validate the correctness of the query syntax beyond basic structure.", + "examples": [ + "Generate a REST API query to get a French translation for 'hello' from English.", + "Create a SQL query string to search a translation memory database for Spanish equivalents of an English phrase.", + "Produce an encoded GraphQL query to fetch localized texts in German including usage context." + ] + }, + "tags": [ + "translation", + "query generation", + "localization", + "API", + "language processing" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"hello\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"queryFormat\":\"REST\",\"includeContext\":false,\"encode\":true}", + "description": "Generate a URL-encoded REST query string for translating 'hello' from English to French." + }, + { + "inputJson": "{\"inputText\":\"welcome\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"queryFormat\":\"SQL\",\"includeContext\":true,\"encode\":false}", + "description": "Create a SQL query string including context info to find Spanish translations of 'welcome'." + }, + { + "inputJson": "{\"inputText\":\"goodbye\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"queryFormat\":\"GraphQL\",\"includeContext\":true,\"encode\":true}", + "description": "Produce an encoded GraphQL query to retrieve German translations of 'goodbye' with context." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "copywriting.analyzeDashboard", + "description": "This tool accepts copywriting performance dashboard data in JSON format, analyzes key marketing copy metrics such as engagement, conversion rates, and sentiment trends, and provides a detailed summary highlighting strengths, weaknesses, and actionable insights for improving promotional content effectiveness.", + "category": "copywriting", + "parameters": [ + { + "name": "dashboardData", + "type": "object", + "description": "Structured JSON object containing copywriting performance metrics and analytics data from the dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail for analysis; options include 'summary' for brief insights or 'detailed' for comprehensive evaluation.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "timeRange", + "type": "string", + "description": "Optional date range string (e.g., 'last 30 days') specifying the period of dashboard data to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "focusMetrics", + "type": "array", + "description": "Optional list of specific metric names to focus the analysis on, such as ['clickThroughRate', 'engagement']", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis summary including key findings, metric evaluations, trend insights, and recommendations to optimize copywriting performance." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate copywriting campaign performance from dashboard data to generate actionable marketing insights, identify content effectiveness issues, or prioritize areas for copy improvement.", + "limitations": "It cannot directly generate new copywriting content, perform raw data extraction from non-JSON dashboards, or replace domain expert interpretation of nuanced marketing strategies.", + "examples": [ + "Analyze the last 7 days' dashboard data for engagement and conversion metrics and summarize performance.", + "Provide a detailed analysis of the copywriting dashboard focusing on user sentiment trends over the past month.", + "Summarize key strengths and weaknesses from the provided promotional copy dashboard for Q1 2024." + ] + }, + "tags": [ + "copywriting", + "analytics", + "marketing", + "performance", + "dashboard", + "insights", + "content optimization" + ], + "examples": [ + { + "inputJson": "{\"dashboardData\":{\"metrics\":{\"clickThroughRate\":0.08,\"conversionRate\":0.03,\"bounceRate\":0.25,\"engagement\":0.65,\"sentimentScore\":0.7},\"timeRange\":\"2024-05-01 to 2024-05-31\"},\"analysisDepth\":\"summary\"}", + "description": "Analyze May 2024 copywriting dashboard data to get a summary of key marketing metrics and insights." + }, + { + "inputJson": "{\"dashboardData\":{\"metrics\":{\"clickThroughRate\":0.1,\"conversionRate\":0.04,\"bounceRate\":0.2,\"engagement\":0.7,\"sentimentScore\":0.75},\"timeRange\":\"2024-06-01 to 2024-06-15\"},\"analysisDepth\":\"detailed\",\"focusMetrics\":[\"clickThroughRate\",\"sentimentScore\"]}", + "description": "Perform detailed analysis focused on click-through and sentiment scores for early June 2024." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "copywriting.analyzeOpportunity", + "description": "This tool analyzes a given business opportunity description to identify key benefits, target audience segments, potential unique selling points (USPs), and suggest possible marketing angles. It accepts a textual description of the opportunity and optional keywords to focus on, then processes the input with NLP techniques to generate a structured analysis report highlighting growth and marketing potential.", + "category": "copywriting", + "parameters": [ + { + "name": "opportunityDescription", + "type": "string", + "description": "Detailed textual description of the business opportunity to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "List of keywords or phrases to emphasize or look for in the analysis (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "marketSegment", + "type": "string", + "description": "Specific market segment or industry related to the opportunity (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "competitorAnalysisIncluded", + "type": "boolean", + "description": "Whether to include a brief competitor analysis if relevant information is present (default false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing identified benefits, target audience insights, unique selling points, recommended marketing angles, and optionally competitor insights." + }, + "aiAgent": { + "useCase": "Use this tool when assessing new business opportunities or product/service ideas to gather actionable marketing insights and identify how to position and promote the opportunity effectively. Ideal for supporting copywriting, strategy, and growth planning tasks by providing structured, text-based opportunity evaluations.", + "limitations": "Cannot provide real-time market data or deep competitive intelligence beyond text analysis of provided descriptions. Does not generate full marketing campaigns or guarantees market success.", + "examples": [ + "Analyze a startup's new SaaS product description to identify target customers and selling points.", + "Evaluate a summarized business opportunity to find marketing messages and benefits for promotional content.", + "Review an expansion idea in a specific market segment including competitor notes for strategic angles." + ] + }, + "tags": [ + "copywriting", + "analysis", + "business", + "marketing", + "opportunity", + "strategy" + ], + "examples": [ + { + "inputJson": "{\"opportunityDescription\":\"Our innovative eco-friendly packaging solution reduces plastic waste by 80% and lowers costs by 30%, targeting sustainable brands in the food industry.\",\"focusKeywords\":[\"eco-friendly\",\"sustainable\",\"cost reduction\"],\"marketSegment\":\"food packaging\",\"competitorAnalysisIncluded\":true}", + "description": "Analyze an eco-friendly packaging business opportunity emphasizing sustainability and cost benefits in food industry." + }, + { + "inputJson": "{\"opportunityDescription\":\"A mobile app that connects freelance tutors with students emphasizing personalized learning and flexible scheduling.\",\"focusKeywords\":[\"personalized learning\",\"flexible\"],\"marketSegment\":\"education technology\",\"competitorAnalysisIncluded\":false}", + "description": "Assess an educational app opportunity focusing on personalized learning and flexibility." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "copywriting.analyzeLink", + "description": "This tool accepts a URL as input and analyzes the linked webpage content for marketing copy effectiveness. It processes the page text to evaluate tone, clarity, engagement, and persuasive elements. The tool outputs a detailed report scoring the overall copywriting quality along with actionable improvement suggestions.", + "category": "copywriting", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to analyze for copywriting quality.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the webpage content (e.g., 'en' for English) to tailor analysis accordingly.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSuggestions", + "type": "boolean", + "description": "Whether to include detailed copy improvement suggestions in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis scores for tone, clarity, engagement, persuasiveness, and a summary report with optional suggestions to enhance the marketing copy." + }, + "aiAgent": { + "useCase": "Use this tool when you want to assess the effectiveness of marketing copy on a specific webpage URL. It is useful for marketers, content creators, or AI agents aiming to optimize promotional content by providing clarity on copy strengths and weaknesses along with improvement tips.", + "limitations": "Cannot analyze content behind authentication or in non-HTML formats; accuracy depends on the page language and quality of fetchable text; does not replace professional copywriting expertise.", + "examples": [ + "Analyze the marketing copy on https://example.com/product-page to improve conversion rates.", + "Evaluate the tone and engagement of homepage content from a specified link.", + "Provide suggestions to enhance persuasive elements on the landing page given by the URL." + ] + }, + "tags": [ + "copywriting", + "analysis", + "marketing", + "SEO", + "content evaluation", + "link", + "webpage" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/new-product\",\"language\":\"en\",\"includeSuggestions\":true}", + "description": "Analyze the marketing copy on 'https://example.com/new-product' page to get a detailed effectiveness report including improvement suggestions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "copywriting.downloadDataset", + "description": "This tool allows downloading curated datasets relevant to copywriting, including marketing slogans, product descriptions, and advertising copy. Users specify dataset categories, formats, and filters, and the tool processes these inputs to retrieve and deliver downloadable datasets in common file formats such as CSV or JSON.", + "category": "copywriting", + "parameters": [ + { + "name": "datasetCategory", + "type": "string", + "description": "Category of copywriting dataset to download (e.g., slogans, productDescriptions, adCopy).", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired output file format for the dataset (e.g., csv, json).", + "required": true, + "defaultValue": "csv" + }, + { + "name": "language", + "type": "string", + "description": "Language filter for dataset content (e.g., en for English, es for Spanish).", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of records to include in the downloaded dataset.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include usage examples with the dataset entries.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a URL to download the dataset file and metadata describing the dataset such as record count, category, and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to obtain a ready-to-use dataset of copywriting samples or marketing text for training, analysis, or inspiration. It is ideal for gathering structured textual content in marketing domains for offline processing or model training.", + "limitations": "It does not generate new copywriting text or provide real-time recommendations. Dataset quality and size may vary by category. It may not cover very niche or highly specific copywriting domains.", + "examples": [ + "Download a dataset of English marketing slogans in CSV format limited to 500 records.", + "Get a JSON dataset of product descriptions with usage examples for copywriting model training.", + "Retrieve an advertising copy dataset in English with a maximum of 2000 records without usage examples." + ] + }, + "tags": [ + "copywriting", + "dataset", + "download", + "marketing", + "text data", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"datasetCategory\":\"slogans\",\"format\":\"csv\",\"language\":\"en\",\"maxRecords\":500,\"includeExamples\":true}", + "description": "Download 500 English marketing slogans with examples in CSV format." + }, + { + "inputJson": "{\"datasetCategory\":\"productDescriptions\",\"format\":\"json\",\"language\":\"en\",\"maxRecords\":1000,\"includeExamples\":true}", + "description": "Download 1000 English product descriptions including examples in JSON format." + }, + { + "inputJson": "{\"datasetCategory\":\"adCopy\",\"format\":\"csv\",\"language\":\"en\",\"maxRecords\":2000,\"includeExamples\":false}", + "description": "Download 2000 English advertising copy records as CSV without examples." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "copywriting.uploadImage", + "description": "Uploads a marketing or promotional image to a copywriting platform where it can be associated with marketing texts, campaigns, or advertisements. Accepts image files along with metadata inputs, processes the upload by storing the image and linking it to specified campaign or content IDs, and outputs a confirmation with image URL and metadata details.", + "category": "copywriting", + "parameters": [ + { + "name": "imageFile", + "type": "string", + "description": "Base64 encoded string of the image file to upload, or a URL to fetch the image from.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Original or desired name for the image file, including extension (e.g., banner.png).", + "required": true, + "defaultValue": "" + }, + { + "name": "altText", + "type": "string", + "description": "Alternative text description for the image for accessibility and SEO purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignId", + "type": "string", + "description": "Identifier of the campaign or marketing content to associate the uploaded image with.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of keyword tags related to the image content for easier searching and categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "overwriteIfExists", + "type": "boolean", + "description": "Flag indicating whether to overwrite an existing image if the fileName already exists in the system.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Details about the uploaded image including its URL, assigned ID, and associated metadata." + }, + "aiAgent": { + "useCase": "When an AI agent is managing marketing content creation and deployment, it can use this tool to upload relevant images to campaigns or advertisement drafts, ensuring the images are properly stored and linked for downstream copywriting or publishing. It helps in automating the media management part of copywriting workflows.", + "limitations": "This tool does not perform image content analysis, resizing, or optimization. It only uploads and stores images and their metadata. It does not generate images or edit them.", + "examples": [ + "Upload a product advertisement banner image and link it to campaign ID 'camp123'.", + "Upload a new logo image replacing an older version under the same file name.", + "Add an image with descriptive alt text and multiple tags for a social media campaign." + ] + }, + "tags": [ + "copywriting", + "upload", + "image", + "marketing", + "media management", + "campaign", + "advertisement" + ], + "examples": [ + { + "inputJson": "{\"imageFile\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"fileName\":\"spring_sale_banner.png\",\"altText\":\"Spring sale banner featuring flowers\",\"campaignId\":\"camp123\",\"tags\":[\"sale\",\"spring\",\"banner\"],\"overwriteIfExists\":false}", + "description": "Uploading a spring sale banner image linked to campaign 'camp123' with descriptive alt text and tags." + }, + { + "inputJson": "{\"imageFile\":\"https://example.com/logo_v2.png\",\"fileName\":\"company_logo.png\",\"altText\":\"Company logo version 2\",\"overwriteIfExists\":true}", + "description": "Uploading a new company logo image from an external URL and overwriting the existing image file with the same name." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "copywriting.uploadDataset", + "description": "Uploads a dataset of marketing and promotional text samples for training or fine-tuning copywriting AI models. Accepts various file formats (CSV, JSON, TXT) containing labeled copywriting examples, validates and preprocesses the data to ensure quality and consistency, and outputs a summary of the uploaded dataset including record counts and data quality metrics.", + "category": "copywriting", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "File path or URL to the dataset file to upload (CSV, JSON, TXT formats supported).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the dataset file provided. Supported: 'csv', 'json', or 'txt'.", + "required": true, + "defaultValue": "" + }, + { + "name": "labelColumn", + "type": "string", + "description": "The name of the column or key representing the promotional text label or category in the dataset.", + "required": false, + "defaultValue": "" + }, + { + "name": "textColumn", + "type": "string", + "description": "The name of the column or key containing the marketing copy text samples.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateData", + "type": "boolean", + "description": "Whether to perform validation checks and preprocessing on the dataset to ensure quality.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Optional max number of records to upload from the dataset file; uploads entire dataset if not specified or zero.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the uploaded dataset, including total records processed, number of valid records, data format, labels found, and any validation warnings or errors." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when they need to upload and prepare custom datasets of marketing and promotional copy samples for training or fine-tuning copywriting models. It helps ensure the dataset is properly formatted, validated, and summarized before model ingestion to improve model performance and relevance.", + "limitations": "This tool does not perform the training or fine-tuning itself; it only uploads and preprocesses the dataset. It cannot fix deeply flawed or non-promotional data beyond basic validation.", + "examples": [ + "Upload a CSV file of ad headlines and descriptions for a new product category.", + "Upload a JSON dataset containing labeled email subject lines and body text for targeted campaigns.", + "Upload a TXT file with lines of promotional taglines for model fine-tuning." + ] + }, + "tags": [ + "copywriting", + "dataset", + "upload", + "marketing", + "promotional text", + "data preprocessing", + "AI training" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/campaign_headlines.csv\",\"fileFormat\":\"csv\",\"labelColumn\":\"category\",\"textColumn\":\"headline\",\"validateData\":true,\"maxRecords\":1000}", + "description": "Uploading a CSV dataset of marketing campaign headlines with category labels for validation and limited to 1000 records." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/email_subjects.json\",\"fileFormat\":\"json\",\"labelColumn\":\"campaignType\",\"textColumn\":\"subject\",\"validateData\":true}", + "description": "Uploading a public JSON file of email subject lines labeled by campaign type, validating data without record limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "copywriting.renderReport", + "description": "Generates a well-structured marketing or business report based on user-provided data and key points. Accepts input data and optional style preferences, then composes a cohesive narrative report ready for distribution or presentation.", + "category": "copywriting", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the report to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of key bullet points or highlights to include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSummary", + "type": "string", + "description": "A concise summary of relevant data or statistics to be included in the report body.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone or style of the report narrative, e.g., formal, persuasive, or casual.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "language", + "type": "string", + "description": "The language in which to render the report (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to add a call-to-action section at the end of the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "callToActionText", + "type": "string", + "description": "Custom text for the call-to-action if included. Ignored if includeCallToAction is false.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report as a string, including title, intro, body with key points and data summary, and optional call-to-action." + }, + "aiAgent": { + "useCase": "Use this tool when needing to produce professional, cohesive marketing or business reports from structured input points and data summaries. Ideal for generating textual deliverables for internal teams or external clients without manual composition.", + "limitations": "This tool does not analyze raw datasets nor create charts. It also cannot generate reports without meaningful input key points or summaries.", + "examples": [ + "Generate a quarterly marketing performance report highlighting sales growth and customer engagement.", + "Create a product launch report with key features and targeted customer benefits in a persuasive tone.", + "Render a CSR impact report summarizing environmental initiatives and community involvement." + ] + }, + "tags": [ + "copywriting", + "report", + "marketing", + "business", + "document", + "rendering", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Q1 Marketing Performance\",\"keyPoints\":[\"Sales increased by 15% compared to last quarter\",\"Customer engagement rose by 20% across all social platforms\"],\"dataSummary\":\"The marketing campaigns resulted in 50,000 new leads with a conversion rate of 12%.\"}", + "description": "Generate a formal report summarizing key marketing metrics and outcomes for Q1." + }, + { + "inputJson": "{\"title\":\"Product Launch Overview\",\"keyPoints\":[\"Innovative features such as AI-driven analytics\",\"Target market includes mid-sized enterprises\"],\"tone\":\"persuasive\",\"includeCallToAction\":true,\"callToActionText\":\"Contact sales to learn more and schedule a demo.\"}", + "description": "Create a persuasive product launch report including a call to action for sales engagement." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "copywriting.sendNotification", + "description": "This tool accepts parameters to compose and send marketing or promotional notifications via email or SMS to a list of recipients. It processes the input message content, target audience, and delivery channel, then returns a delivery status report indicating success or failure per recipient.", + "category": "copywriting", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The content of the notification message to be sent, including any marketing or promotional text.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "An array of recipient contact information (email addresses or phone numbers) for sending the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliveryChannel", + "type": "string", + "description": "The medium through which to send the notification, e.g., 'email' or 'sms'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "senderName", + "type": "string", + "description": "The name to display as the sender of the notification.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "sendTime", + "type": "string", + "description": "Optional scheduled datetime in ISO 8601 format for sending the notification; if omitted, sends immediately.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the notification send attempt, including success flags and any error messages per recipient." + }, + "aiAgent": { + "useCase": "Use this tool when you need to send marketing or promotional text notifications to multiple users via email or SMS. Ideal for automated campaigns where custom message content and recipient lists are specified, allowing control over delivery time and sender identification.", + "limitations": "This tool does not create or generate the notification content automatically; it requires pre-written message content. It cannot process rich media beyond text. It does not track recipient interactions beyond delivery status.", + "examples": [ + "Send a promotional email notification to a customer list with a customized message.", + "Send an SMS alert about a flash sale to subscribed phone numbers immediately.", + "Schedule an email notification to subscribers next week with a marketing offer." + ] + }, + "tags": [ + "marketing", + "notification", + "email", + "sms", + "promotion", + "copywriting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"Exclusive offer: 20% off on all items!\",\"recipientList\":[\"user1@example.com\",\"user2@example.com\"],\"deliveryChannel\":\"email\",\"senderName\":\"BrandX\"}", + "description": "Send an immediate marketing email notification with a discount offer to two recipients." + }, + { + "inputJson": "{\"messageContent\":\"Flash sale! Get 50% off on select items today only.\",\"recipientList\":[\"+1234567890\", \"+1987654321\"],\"deliveryChannel\":\"sms\"}", + "description": "Send an urgent SMS notification about a flash sale to two phone numbers immediately." + }, + { + "inputJson": "{\"messageContent\":\"Don't miss our upcoming webinar next week! Register now.\",\"recipientList\":[\"user3@example.com\"],\"deliveryChannel\":\"email\",\"sendTime\":\"2024-07-01T09:00:00Z\"}", + "description": "Schedule an email notification about a webinar to be sent next week to a subscriber." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "copywriting.sendAlert", + "description": "This tool generates and sends security alert notifications based on input alert details. It accepts parameters such as alert title, description, severity level, recipient list, and delivery channel, composes a clear and professional alert message, and outputs a confirmation of the sent alert along with message content and delivery status.", + "category": "copywriting", + "parameters": [ + { + "name": "alertTitle", + "type": "string", + "description": "The title or headline of the security alert to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertDescription", + "type": "string", + "description": "A detailed description of the alert including relevant information and instructions.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity of the alert (e.g., low, medium, high, critical) that influences the tone and urgency.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "An array of recipient email addresses or contact identifiers who will receive the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliveryChannel", + "type": "string", + "description": "The communication channel to send the alert through (e.g., email, SMS, in-app notification).", + "required": true, + "defaultValue": "email" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include recommended actions or mitigation steps in the alert message.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the final composed alert message, list of recipients who were sent the alert, delivery channel used, and status of the sending process." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate and send professional security-related alert messages to designated recipients. It is ideal in scenarios requiring clear, urgent communication of security incidents, status updates, or warnings to stakeholders or end-users.", + "limitations": "This tool does not perform actual threat detection or analysis. It relies on provided alert details and does not integrate with communication platforms to retrieve delivery confirmations beyond basic success or failure notices.", + "examples": [ + "Send a high-severity security breach alert email to the IT security team.", + "Notify all users via SMS about a low-level phishing attempt with recommended precautions.", + "Generate and send an in-app notification about scheduled maintenance affecting security services." + ] + }, + "tags": [ + "copywriting", + "alert", + "security", + "notification", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"alertTitle\":\"Critical Vulnerability Detected\",\"alertDescription\":\"A critical vulnerability has been discovered in the authentication system affecting all users. Immediate password reset is advised.\",\"severityLevel\":\"critical\",\"recipients\":[\"security-team@example.com\",\"devops@example.com\"],\"deliveryChannel\":\"email\",\"includeRecommendations\":true}", + "description": "Send a critical severity email alert with recommendations to IT security and devops teams." + }, + { + "inputJson": "{\"alertTitle\":\"Phishing Attempt Warning\",\"alertDescription\":\"We have detected multiple phishing attempts targeting employee emails. Please be vigilant and do not open suspicious emails.\",\"severityLevel\":\"medium\",\"recipients\":[\"all-employees@example.com\"],\"deliveryChannel\":\"in-app\",\"includeRecommendations\":true}", + "description": "Send a medium severity in-app notification warning all employees about phishing attempts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "copywriting.formatTest", + "description": "This tool accepts raw marketing or promotional copy test content (string) and formats it for clear, persuasive presentation. It processes input text applying line breaks, emphasis markers, and bullet points as specified, outputting a structured, easily readable test format suitable for A/B or multivariate copy testing frameworks.", + "category": "copywriting", + "parameters": [ + { + "name": "rawTestContent", + "type": "string", + "description": "The raw text content of the marketing test copy to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "emphasisStyle", + "type": "string", + "description": "Style to emphasize key phrases, e.g., bold, italics, underline. Default is bold.", + "required": false, + "defaultValue": "bold" + }, + { + "name": "useBulletPoints", + "type": "boolean", + "description": "Whether to convert lists or key points into bullet points for clarity", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineBreakStyle", + "type": "string", + "description": "Character(s) to use for line breaks, e.g., newline '\\n' or HTML
", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before inserting a line break", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted marketing copy string ready for testing presentation" + }, + "aiAgent": { + "useCase": "Use this tool when needing to prepare raw marketing test copy for A/B or multivariate testing by formatting it into a clear, persuasive, and structured version that highlights key messages with emphasis and bullet points, improving readability and test effectiveness.", + "limitations": "This tool does not generate original marketing content or analyze test results; it only formats existing raw test copy text according to provided styling parameters.", + "examples": [ + "Format raw marketing copy text with bold emphasis and bullet points for A/B testing.", + "Convert a plain marketing test draft into a structured format using HTML line breaks.", + "Prepare promotional test text with maximum line length and italic emphasis style." + ] + }, + "tags": [ + "copywriting", + "formatting", + "marketing", + "test", + "A/B testing", + "promotion", + "text formatting" + ], + "examples": [ + { + "inputJson": "{\"rawTestContent\":\"Buy now and save 20% on your first order! Limited time offer.\",\"emphasisStyle\":\"bold\",\"useBulletPoints\":true,\"lineBreakStyle\":\"\\n\",\"maxLineLength\":50}", + "description": "Formatting short marketing test text with bold emphasis, bullet points enabled, and 50 character max line length." + }, + { + "inputJson": "{\"rawTestContent\":\"Experience comfort and style\\n- Soft fabric\\n- Modern fit\\n- Affordable price\",\"emphasisStyle\":\"italics\",\"useBulletPoints\":true,\"lineBreakStyle\":\"
\",\"maxLineLength\":100}", + "description": "Formatting marketing test copy with inherent line breaks and bullet points in HTML style with italic emphasis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "copywriting.formatAPI", + "description": "Formats API documentation or description text into clear, marketing-oriented promotional copy that highlights features, benefits, and use cases. Accepts raw API specs or endpoint descriptions and processes them to produce engaging, easy-to-read marketing content suitable for product pages, developer portals, or API catalogs.", + "category": "copywriting", + "parameters": [ + { + "name": "apiDescription", + "type": "string", + "description": "Raw textual description or specification of the API to be reformatted into marketing copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the formatted API copy, such as 'developers', 'product managers', or 'non-technical users'.", + "required": false, + "defaultValue": "developers" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the marketing copy, e.g., 'professional', 'friendly', 'persuasive'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "highlightFeatures", + "type": "boolean", + "description": "Whether to emphasize key API features and benefits explicitly in the output text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in characters) of the formatted marketing copy output. Useful for fitting text into limited display areas.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing formatted marketing copy string optimized for clarity, engagement, and promotional effectiveness." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert technical API documentation or endpoint descriptions into appealing marketing copy that communicates value and features clearly to specific audiences on product websites, sales materials, or developer portals.", + "limitations": "This tool does not generate technical API specifications or code samples, nor does it validate API correctness. It focuses solely on text reformatting for marketing tone and structure.", + "examples": [ + "Turn raw API endpoint descriptions into clear marketing copy for developer outreach.", + "Generate promotional content highlighting API benefits for product landing pages.", + "Convert technical API reference text into accessible and engaging marketing narratives." + ] + }, + "tags": [ + "copywriting", + "API", + "marketing", + "formatting", + "content generation", + "promotional text" + ], + "examples": [ + { + "inputJson": "{\"apiDescription\":\"The Payment API allows secure transaction processing with support for multiple currencies and fraud detection.\",\"targetAudience\":\"developers\",\"tone\":\"professional\",\"highlightFeatures\":true,\"maxLength\":300}", + "description": "Formatting a payment API description into professional marketing copy targeting developers with emphasis on features." + }, + { + "inputJson": "{\"apiDescription\":\"Our Maps API provides real-time geolocation tracking and route optimization.\",\"targetAudience\":\"product managers\",\"tone\":\"friendly\",\"highlightFeatures\":true,\"maxLength\":400}", + "description": "Converting a maps API description into friendly marketing copy for product managers highlighting key benefits." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "copywriting.buildContainer", + "description": "Generates compelling marketing copy and product descriptions for container infrastructure solutions. Accepts inputs like container type, target audience, key features, and tone of voice, then crafts clear, persuasive promotional text tailored for marketing materials or product pages.", + "category": "copywriting", + "parameters": [ + { + "name": "containerType", + "type": "string", + "description": "Type of container infrastructure (e.g., Docker, Kubernetes, LXC) the copy focuses on.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Primary audience for the copy (e.g., DevOps engineers, enterprise IT managers, startups).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of the main features or benefits to highlight in the copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Tone for the writing style (e.g., professional, casual, enthusiastic).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "callToAction", + "type": "string", + "description": "Desired call to action to include in the output text (e.g., Try Now, Learn More).", + "required": false, + "defaultValue": "Learn More" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated copy in words.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text under 'copyText' key." + }, + "aiAgent": { + "useCase": "Use this tool when generating customized and effective marketing or promotional text for container infrastructure products or services. Ideal for creating product descriptions, feature highlights, or sales copy tailored to specific audiences and container technologies.", + "limitations": "This tool does not generate technical documentation, deep tutorials, or code samples. It focuses solely on promotional and marketing copy and may not replace specialized technical writing.", + "examples": [ + "Write promotional text for Kubernetes solution targeting enterprise IT managers focusing on scalability and security with a professional tone.", + "Create a short enthusiastic product description for Docker aimed at startups highlighting ease of use and fast deployment.", + "Generate a casual call-to-action driven copy for container security features aimed at DevOps teams." + ] + }, + "tags": [ + "copywriting", + "marketing", + "containers", + "infrastructure", + "promotional", + "technology", + "productDescription" + ], + "examples": [ + { + "inputJson": "{\"containerType\":\"Kubernetes\",\"targetAudience\":\"enterprise IT managers\",\"keyFeatures\":[\"high scalability\",\"robust security\",\"easy integration\"],\"tone\":\"professional\",\"callToAction\":\"Request a Demo\",\"maxLength\":120}", + "description": "Generate professional marketing copy for Kubernetes container targeting enterprise IT managers." + }, + { + "inputJson": "{\"containerType\":\"Docker\",\"targetAudience\":\"startups\",\"keyFeatures\":[\"quick setup\",\"lightweight\",\"community support\"],\"tone\":\"enthusiastic\",\"callToAction\":\"Get Started\",\"maxLength\":100}", + "description": "Create enthusiastic promotional text for Docker containers aimed at startup companies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "copywriting.buildBranch", + "description": "Generates persuasive marketing copy aimed at promoting a new product branch or feature line. Takes inputs about the branch name, product highlights, target audience, and tone, then produces a polished promotional text suitable for web pages, campaigns, or brochures.", + "category": "copywriting", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "The name of the new product branch or feature line to promote.", + "required": true, + "defaultValue": "" + }, + { + "name": "productHighlights", + "type": "array", + "description": "Key features or benefits of the product branch to emphasize in the copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience for the marketing content, guiding tone and style.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the marketing text (e.g., professional, casual, enthusiastic).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "outputLength", + "type": "number", + "description": "Approximate length of the generated copy in words.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "Generated marketing copy text that can be directly used or adapted for promotional materials." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to create targeted marketing copy for a new product branch or feature line to support promotional content creation quickly. It is helpful to automate persuasive writing tailored to specified features, audience, and tone.", + "limitations": "It cannot create visual materials, guarantee SEO optimization, or replace human marketing experts for complex brand positioning. The generated copy may require editing for brand guidelines and factual accuracy.", + "examples": [ + "Create promotional text for a new line of eco-friendly kitchen appliances aimed at environmentally conscious consumers.", + "Generate enthusiastic product copy for a tech startup's new software module targeting small businesses.", + "Produce professional marketing content for a financial service branch aimed at young adults." + ] + }, + "tags": [ + "copywriting", + "marketing", + "promotion", + "product branch", + "advertising", + "text generation" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"EcoSmart Kitchen Appliances\",\"productHighlights\":[\"Energy-efficient design\",\"Sustainable materials\",\"Smart home integration\"],\"targetAudience\":\"environmentally conscious homeowners\",\"tone\":\"enthusiastic\",\"outputLength\":200}", + "description": "Generate enthusiastic promotional copy for a new eco-friendly home appliance branch." + }, + { + "inputJson": "{\"branchName\":\"BizGrowth CRM Module\",\"productHighlights\":[\"Intuitive interface\",\"Automation of sales tasks\",\"Real-time analytics\"],\"targetAudience\":\"small business owners\",\"tone\":\"professional\",\"outputLength\":150}", + "description": "Professional marketing text for a new CRM software module targeting small businesses." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "content-creation.analyzeChannel", + "description": "Analyzes textual content from a communication channel such as chat logs, forum threads, or social media feeds. It accepts raw text or message arrays, processes linguistic features, engagement metrics, and sentiment trends, and outputs a structured summary including sentiment scores, key topics, user activity stats, and engagement trends over time.", + "category": "content-creation", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of the communication channel (e.g., 'chat', 'forum', 'socialMedia').", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "Array of message objects or strings from the channel to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "fromDate", + "type": "string", + "description": "Start date filter for messages in ISO 8601 format. If empty, analyze all available messages.", + "required": false, + "defaultValue": "" + }, + { + "name": "toDate", + "type": "string", + "description": "End date filter for messages in ISO 8601 format. If empty, analyze all available messages.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopicModeling", + "type": "boolean", + "description": "Whether to extract key topics from the channel content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeUserEngagement", + "type": "boolean", + "description": "Whether to analyze user activity and engagement metrics (e.g., message counts, active users).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment scores, identified key topics, user engagement statistics, and temporal trends based on the input channel data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to summarize and analyze textual data from communication channels for insights on sentiment, topics discussed, and user engagement trends. It's useful for monitoring community health, content effectiveness, or customer feedback channels.", + "limitations": "This tool cannot fetch channel data itself; it requires the caller to supply messages. It also focuses on textual analysis and does not analyze media content such as images or videos attached to messages.", + "examples": [ + "Analyze community sentiment trends over last month from forum posts.", + "Summarize key topics and engagement metrics from a social media feed for a product launch.", + "Identify positive versus negative sentiment in chat logs during a customer support session." + ] + }, + "tags": [ + "analysis", + "content-creation", + "communication", + "sentiment-analysis", + "topic-modeling", + "user-engagement" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"chat\",\"messages\":[{\"user\":\"alice\",\"timestamp\":\"2024-05-01T12:00:00Z\",\"text\":\"I love the new update!\"},{\"user\":\"bob\",\"timestamp\":\"2024-05-01T12:05:00Z\",\"text\":\"It has some bugs though.\"}],\"fromDate\":\"2024-05-01T00:00:00Z\",\"toDate\":\"2024-05-02T00:00:00Z\",\"includeSentimentAnalysis\":true,\"includeTopicModeling\":true,\"includeUserEngagement\":true}", + "description": "Analyze chat messages from May 1, 2024, to understand sentiment, topics, and user engagement." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "content-creation.analyzeVulnerability", + "description": "This tool accepts detailed descriptions of cybersecurity vulnerabilities including technical parameters, exploit conditions, and affected systems. It processes this input to identify root causes, potential impacts, and suggests mitigation strategies. The output is a structured vulnerability analysis report with severity assessment and remediation recommendations.", + "category": "content-creation", + "parameters": [ + { + "name": "vulnerabilityDescription", + "type": "string", + "description": "Detailed text describing the vulnerability, its context and technical details.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected systems, platforms, or software identifiers relevant to the vulnerability.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "exploitConditions", + "type": "string", + "description": "Conditions or prerequisites needed to exploit this vulnerability, if known.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail for the analysis; options are 'basic', 'detailed', or 'comprehensive'.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include suggested mitigation and remediation strategies in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured report object containing vulnerability summary, severity rating, impact assessment, root cause analysis, and optional remediation suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when receiving vulnerability descriptions or reports requiring detailed analysis beyond superficial scanning – to understand root causes, assess risks, and formulate mitigation recommendations in structured format. Ideal for security content creation or documentation workflows needing rich vulnerability insights.", + "limitations": "This tool does not perform live scanning or exploit detection from network data. It relies solely on provided textual descriptions and metadata, so accuracy depends on input quality.", + "examples": [ + "Analyze this vulnerability report and provide severity and remediation suggestions.", + "Given the following vulnerability details, produce a comprehensive analysis with impact assessment.", + "Generate a structured vulnerability report based on the described system weaknesses and exploits." + ] + }, + "tags": [ + "content-creation", + "security", + "vulnerability-analysis", + "risk-assessment", + "remediation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityDescription\":\"A buffer overflow vulnerability exists in the XyzProtocol parser allowing remote attackers to execute arbitrary code.\",\"affectedSystems\":[\"XyzProtocol v2.0\",\"XyzClient Windows\"],\"exploitConditions\":\"Requires sending specially crafted packets to port 1234.\",\"analysisDepth\":\"detailed\",\"includeMitigation\":true}", + "description": "Analyze a detailed buffer overflow vulnerability in a network protocol parser for Windows clients." + }, + { + "inputJson": "{\"vulnerabilityDescription\":\"Improper authentication in the ABC web app login mechanism allowing session hijacking.\",\"analysisDepth\":\"basic\",\"includeMitigation\":false}", + "description": "Basic analysis without mitigation of authentication vulnerability in a web application." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "content-creation.analyzeMarkdown", + "description": "This tool accepts Markdown-formatted text as input and analyzes its structure and content. It parses headings, lists, links, images, code blocks, and other Markdown elements, then provides a detailed summary including the count of each element type, the outline of headings, and any detected issues such as broken links or malformed syntax. Output is a structured JSON report for further content management or quality assurance.", + "category": "content-creation", + "parameters": [ + { + "name": "markdownText", + "type": "string", + "description": "The raw Markdown text to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkLinks", + "type": "boolean", + "description": "Whether to verify the validity of all hyperlinks found in the Markdown.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxHeadingLevel", + "type": "number", + "description": "Maximum Markdown heading level to include in the outline (1-6).", + "required": false, + "defaultValue": "6" + }, + { + "name": "includeSyntaxErrors", + "type": "boolean", + "description": "Whether to include detected Markdown syntax errors in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured report object containing counts of Markdown element types (headings, lists, links, images, code blocks), a hierarchical outline of headings up to maxHeadingLevel, a list of detected broken or suspicious links if checkLinks is true, and optionally a list of syntax errors if includeSyntaxErrors is true." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to understand the structure and content composition of Markdown text, such as preparing content summaries, validating Markdown files before publishing, or extracting navigation outlines for documentation. It helps automate content quality checks and metadata extraction for digital content workflows.", + "limitations": "It does not convert Markdown to other formats or perform semantic content analysis beyond structural elements. Link checking depends on network connectivity and cannot guarantee all URLs are reachable due to transient network conditions or access restrictions.", + "examples": [ + "Analyze a README.md file to extract its heading structure and check for broken links.", + "Verify a blog post's Markdown content to count images and code blocks and report any syntax errors.", + "Generate a content outline from Markdown documentation up to heading level 3 for use in a sidebar navigation menu." + ] + }, + "tags": [ + "content analysis", + "markdown", + "structure parsing", + "link validation", + "documentation", + "content quality" + ], + "examples": [ + { + "inputJson": "{\"markdownText\":\"# Title\\n\\nThis is a paragraph with a [link](https://example.com).\\n\\n## Subtitle\\n- Item 1\\n- Item 2\\n\\n![Image](image.png)\\n\\n```js\\nconsole.log('code block');\\n```\",\"checkLinks\":true,\"maxHeadingLevel\":3,\"includeSyntaxErrors\":true}", + "description": "Analyze a Markdown string with headings, list, image and code block, checking links and including syntax errors." + }, + { + "inputJson": "{\"markdownText\":\"# Main Heading\\nText without links or lists.\",\"checkLinks\":false,\"maxHeadingLevel\":6,\"includeSyntaxErrors\":false}", + "description": "Analyze simple Markdown with just a main heading and some text, no link checking or error reporting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "content-creation.analyzeExpense", + "description": "Analyzes business expense data to provide insights such as total spend, category breakdown, trend analysis over time, and anomaly detection. Accepts structured expense records as input and outputs a detailed analytical report to help manage and optimize company expenditures.", + "category": "content-creation", + "parameters": [ + { + "name": "expenses", + "type": "array", + "description": "An array of expense records, where each record includes attributes like amount, date, category, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range object with 'startDate' and 'endDate' in ISO format to filter expenses for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByCategory", + "type": "boolean", + "description": "Whether to aggregate expenses by their categories for summary statistics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to perform anomaly detection to highlight unusually high or suspicious expenses.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) used for amounts to format output appropriately.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report containing total amounts, spending breakdown by category, trend charts data, and any detected anomalies with explanations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to process detailed business expense lists to extract actionable insights like spending patterns, category-wise summaries, and unusual transactions, aiding financial decision-making and budgeting.", + "limitations": "Does not integrate with external accounting software or access live financial accounts; analysis is limited to provided data. It cannot verify expense legitimacy beyond anomaly patterns.", + "examples": [ + "Analyze the quarterly company expenses to identify overspending categories.", + "Summarize expenses from the past month, group by category, and detect any unusually high transactions.", + "Provide a trend report of monthly expenses over the last year with anomaly highlights." + ] + }, + "tags": [ + "content analysis", + "business", + "finance", + "expense management", + "data aggregation", + "anomaly detection", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"expenses\":[{\"amount\":250.00,\"date\":\"2024-05-01\",\"category\":\"Travel\",\"description\":\"Flight to conference\"},{\"amount\":75.50,\"date\":\"2024-05-03\",\"category\":\"Meals\",\"description\":\"Client lunch\"},{\"amount\":1200.00,\"date\":\"2024-05-10\",\"category\":\"Software\",\"description\":\"Annual subscription\"}],\"dateRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"},\"groupByCategory\":true,\"detectAnomalies\":true,\"currency\":\"USD\"}", + "description": "Analyze May 2024 expenses, group them by category, and detect anomalies, using USD." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "content-creation.downloadVideo", + "description": "This tool downloads a video from a specified URL and saves it locally or in a cloud storage location. It accepts the video URL as input along with optional parameters like output file name, desired quality, and destination path. It processes the URL to fetch the video stream and outputs metadata about the downloaded file, including path, size, duration, and format.", + "category": "content-creation", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to download. Must be a valid direct or streaming video link.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFileName", + "type": "string", + "description": "Desired name for the saved video file, including extension (e.g., 'video.mp4'). If not provided, default name is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "quality", + "type": "string", + "description": "Preferred video quality or resolution to download (e.g., '1080p', '720p'). If not specified, highest available quality is downloaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "savePath", + "type": "string", + "description": "Local or cloud directory path where the video will be saved. Defaults to current working directory if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite the existing file if a file with the same name exists at destination. Defaults to false (to avoid overwriting).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the downloaded video including file path, file size in bytes, video duration in seconds, and video format (file extension)." + }, + "aiAgent": { + "useCase": "Use this tool whenever the agent needs to programmatically download a video from a URL for offline processing, analysis, or archival. Suitable for workflows involving media content ingestion, content curation, or automated downloads where specific quality or naming conventions are required.", + "limitations": "This tool cannot bypass DRM protection or download videos from sites with restrictive access permissions or captchas. It also cannot convert or edit videos beyond selecting available quality variants.", + "examples": [ + "Download a specific video from a public URL to local storage.", + "Fetch and save a YouTube video in 720p quality with a custom file name.", + "Store a video from a direct HTTP link into a specified cloud directory without overwriting existing files." + ] + }, + "tags": [ + "video", + "download", + "content-creation", + "media", + "automation", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/sample.mp4\",\"outputFileName\":\"sample_video.mp4\",\"quality\":\"\",\"savePath\":\"/user/downloads\",\"overwriteExisting\":false}", + "description": "Download a sample video from a direct URL and save it locally under '/user/downloads' with the specified file name." + }, + { + "inputJson": "{\"videoUrl\":\"https://video-platform.com/watch?v=abc123\",\"quality\":\"720p\",\"outputFileName\":\"lecture_720p.mp4\",\"savePath\":\"\",\"overwriteExisting\":true}", + "description": "Download a video from a video platform in 720p quality, save it in the current directory with a custom file name, and overwrite if file exists." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "content-creation.uploadVideo", + "description": "Uploads a video file along with optional metadata to a specified content platform or storage service. Accepts video file data or URL, processes upload with specified encoding and privacy settings, and returns a confirmation with video ID and access URL.", + "category": "content-creation", + "parameters": [ + { + "name": "videoFile", + "type": "string", + "description": "The path or base64-encoded string of the video file to upload. Required if videoUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoUrl", + "type": "string", + "description": "A URL pointing to an existing video file to upload from. Required if videoFile is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the uploaded video for display in the content platform. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Description or caption for the video content. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of strings representing tags or keywords to categorize the video. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "privacy", + "type": "string", + "description": "Privacy setting for the video: public, unlisted, or private.", + "required": false, + "defaultValue": "public" + }, + { + "name": "encodingFormat", + "type": "string", + "description": "Desired target encoding format for the video upload, e.g., mp4, avi, mkv. Defaults to original format if not specified.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the uploaded video's unique identifier, access URL, and upload status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload a video file to a content platform or cloud storage, optionally adding metadata like title, description, and tags. Ideal for automating video content management workflows where video data or existing video URLs must be handled with privacy and encoding control.", + "limitations": "Cannot perform video editing, transcoding beyond basic encoding format conversion, or extensive metadata validation. Does not host videos but interacts with configured storage or platforms only.", + "examples": [ + "Upload a video file located on disk with title and public privacy.", + "Upload a video available at a URL as private access with tags.", + "Upload a video converting it to mp4 format with description included." + ] + }, + "tags": [ + "upload", + "video", + "content-management", + "media", + "file-transfer", + "metadata", + "privacy" + ], + "examples": [ + { + "inputJson": "{\"videoFile\":\"/path/to/video.mov\",\"title\":\"Vacation Highlights\",\"description\":\"Our trip to Hawaii\",\"tags\":[\"travel\",\"vacation\"],\"privacy\":\"public\"}", + "description": "Upload a local video file with metadata and public visibility." + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/sample.avi\",\"privacy\":\"private\",\"encodingFormat\":\"mp4\"}", + "description": "Upload a video from a URL with private privacy and convert to mp4 format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "content-creation.sendThread", + "description": "Sends a communication thread message to specified recipients through a chosen messaging platform. Accepts message content, recipient list, platform type, optional subject, and thread metadata. Processes and dispatches the message, returning a status and message thread ID for reference.", + "category": "content-creation", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The main text content of the message to send in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "An array of recipient identifiers (e.g., emails, user IDs) who will receive the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "The messaging platform to use for sending the thread message (e.g., email, slack, teams).", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Optional subject line or title for the thread message, relevant for platforms like email.", + "required": false, + "defaultValue": "" + }, + { + "name": "threadMetadata", + "type": "object", + "description": "Optional metadata providing context such as thread ID or tags to link the message to an existing conversation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the delivery status, any error messages, and a unique identifier for the sent message thread." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to communicate or post messages within a conversation thread across supported messaging platforms. Ideal for automated responses, notifications, or collaborative messaging in project management and communication tools.", + "limitations": "This tool cannot create new platforms or integrate unsupported messaging systems automatically. It requires valid recipient identifiers and platform access credentials configured elsewhere.", + "examples": [ + "Send a project update message to the entire team on Slack.", + "Notify stakeholders via email with a thread subject and initial message.", + "Reply to an existing discussion thread with additional comments on Microsoft Teams." + ] + }, + "tags": [ + "send", + "thread", + "messaging", + "communication", + "content-creation", + "automation", + "notifications" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"Hello team, the sprint planning meeting is scheduled for tomorrow at 10 AM.\",\"recipients\":[\"team@example.com\"],\"platform\":\"email\",\"subject\":\"Sprint Planning Reminder\",\"threadMetadata\":{}}", + "description": "Send an email with a subject line to remind the team of a meeting." + }, + { + "inputJson": "{\"messageContent\":\"Please review the latest project documents posted.\",\"recipients\":[\"U12345\",\"U67890\"],\"platform\":\"slack\",\"threadMetadata\":{\"threadId\":\"T98765\"}}", + "description": "Send a Slack message replying within an existing thread to remind team members to check documents." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "content-creation.buildQueue", + "description": "Builds a content processing queue by accepting an array of content items and configuration rules, organizing them into a prioritized queue for subsequent content creation tasks. Outputs a structured queue object detailing processing order and metadata.", + "category": "content-creation", + "parameters": [ + { + "name": "contentItems", + "type": "array", + "description": "List of content items to be queued, each with metadata such as type, priority, and dependencies", + "required": true, + "defaultValue": "" + }, + { + "name": "prioritizationRule", + "type": "string", + "description": "Rule to prioritize content items in the queue, e.g., 'urgency', 'deadline', or 'custom'", + "required": false, + "defaultValue": "urgency" + }, + { + "name": "maxQueueLength", + "type": "number", + "description": "Maximum number of items allowed in the queue; excess items are deferred or discarded", + "required": false, + "defaultValue": "100" + }, + { + "name": "dependencyHandling", + "type": "boolean", + "description": "Whether to consider dependencies between content items when building the queue", + "required": false, + "defaultValue": "true" + }, + { + "name": "customPriorityWeights", + "type": "object", + "description": "Custom weights to apply when prioritizing items, e.g., {\"urgency\":0.7, \"deadline\":0.3}", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object representing the built queue containing ordered content items with metadata including position, estimated processing time, and dependencies resolved" + }, + "aiAgent": { + "useCase": "Use this tool when you need to organize a set of content creation tasks into an efficient processing queue based on priority rules and dependencies. It ensures content items are logically ordered for downstream processing, such as automated publishing or editing workflows.", + "limitations": "Does not execute the content processing itself; it only organizes and orders tasks. It relies on accurate metadata in input content items to build a meaningful queue.", + "examples": [ + "Create a queue from a batch of articles and videos prioritizing urgent news.", + "Build a processing queue for content tasks with dependencies, ensuring prerequisite items are handled first.", + "Generate a queue limited to 50 items sorted by deadline for a daily content pipeline." + ] + }, + "tags": [ + "content", + "queue", + "priority", + "workflow", + "automation", + "task management" + ], + "examples": [ + { + "inputJson": "{\"contentItems\":[{\"id\":\"1\",\"type\":\"article\",\"priority\":\"high\",\"deadline\":\"2024-06-20\",\"dependencies\":[]},{\"id\":\"2\",\"type\":\"video\",\"priority\":\"medium\",\"deadline\":\"2024-06-22\",\"dependencies\":[\"1\"]}],\"prioritizationRule\":\"deadline\",\"maxQueueLength\":10,\"dependencyHandling\":true}", + "description": "Build a queue from articles and videos prioritizing by nearest deadline and respecting dependencies between content items." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "content-creation.buildCluster", + "description": "This tool assists in creating and configuring a cluster of content repositories or servers for scalable content management. It accepts parameters defining cluster size, node types, storage options, and network settings, then provisions and initializes a cluster environment. The output includes cluster status, access endpoints, and configuration details.", + "category": "content-creation", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "A unique name identifier for the cluster to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "The number of nodes (servers) to include in the cluster.", + "required": true, + "defaultValue": "3" + }, + { + "name": "nodeType", + "type": "string", + "description": "The type or size specification for the nodes, e.g., 'small', 'medium', 'large'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "storageType", + "type": "string", + "description": "Type of storage to use for content, e.g., 'SSD', 'HDD', or cloud storage provider.", + "required": false, + "defaultValue": "SSD" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration details such as IP ranges, subnet, and security groups.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Flag to enable or disable automatic scaling of cluster nodes based on load.", + "required": false, + "defaultValue": "false" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the cluster will be deployed.", + "required": false, + "defaultValue": "us-east-1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the clusterID, current status, list of node endpoints, and summary of configuration used in building the cluster." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to set up a scalable, distributed content repository or environment for managing digital content across multiple servers or nodes. Ideal for preparing infrastructure to support performance, reliability, and geographic distribution of content services.", + "limitations": "This tool does not handle actual content ingestion or content-specific processing. It also does not perform ongoing cluster maintenance or monitoring beyond initial provisioning.", + "examples": [ + "Create a 5-node medium sized content cluster with SSD storage in the us-west-2 region.", + "Build a default 3-node content cluster with auto-scaling enabled for dynamic load management.", + "Set up a cluster with custom network settings for secure content delivery." + ] + }, + "tags": [ + "content", + "cluster", + "infrastructure", + "scaling", + "content-management" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"mediaRepoCluster\",\"nodeCount\":5,\"nodeType\":\"medium\",\"storageType\":\"SSD\",\"networkConfig\":{\"subnet\":\"10.0.0.0/24\",\"securityGroup\":\"sg-12345678\"},\"enableAutoScaling\":true,\"region\":\"us-west-2\"}", + "description": "Building a 5-node medium cluster with SSD storage and custom network config in US West region, auto-scaling enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "documentation-tools.analyzeBudget", + "description": "Analyzes budget documents or data to extract key financial metrics, identify budget allocation and spending trends, and highlight discrepancies or deviations from planned budgets. Accepts structured or semi-structured budget input (e.g., JSON data or spreadsheet files) and outputs a detailed analysis report with summary statistics and insights.", + "category": "documentation-tools", + "parameters": [ + { + "name": "budgetData", + "type": "object", + "description": "The budget information to analyze, provided as structured JSON representing budget categories, allocations, and expenditures.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Desired format of the analysis report output, e.g., 'summary', 'detailed'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to include spending and allocation trend analysis over time.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., 'USD', 'EUR') used in the budget data for accurate reporting.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "timePeriod", + "type": "string", + "description": "Specific time period to analyze (e.g., 'Q1 2024', 'Fiscal Year 2023').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including total budget, expenditures, variances, trend highlights, and potential anomalies or risks." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate detailed budget data for projects or organizations, to extract insights on spending efficiency, detect deviations from planned budgets, or summarize financial allocations for reporting and documentation purposes.", + "limitations": "This tool cannot perform real-time budget updates or connect directly to financial databases; it analyzes only the provided static budget data. It also cannot replace expert financial auditing but serves as a complementary analysis aid.", + "examples": [ + "Analyze a project's quarterly budget data to summarize expenditures and spot overspending.", + "Generate a detailed report comparing planned vs actual budget allocations for a department.", + "Identify any anomalies or risks in a fiscal year budget dataset for yearly financial documentation." + ] + }, + "tags": [ + "analysis", + "budget", + "financial-reporting", + "documentation", + "business", + "finance" + ], + "examples": [ + { + "inputJson": "{\"budgetData\":{\"Marketing\":{\"allocated\":50000,\"spent\":47000},\"R&D\":{\"allocated\":80000,\"spent\":90000}},\"reportFormat\":\"detailed\",\"includeTrends\":true,\"currency\":\"USD\",\"timePeriod\":\"Q1 2024\"}", + "description": "Analyze Q1 2024 budget for Marketing and R&D departments with detailed report and trend analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Budget", + "context": null + } + }, + { + "name": "documentation-tools.buildCache", + "description": "Builds a documentation cache by processing source files or URLs containing documentation content. It parses specified documentation inputs, applies optional transformation rules, and stores the processed output in a cache for faster retrieval and offline access. Outputs cache metadata and status information.", + "category": "documentation-tools", + "parameters": [ + { + "name": "sourcePaths", + "type": "array", + "description": "List of file paths or URLs to documentation sources to include in the cache.", + "required": true, + "defaultValue": "" + }, + { + "name": "cacheLocation", + "type": "string", + "description": "Filesystem path or storage location where the cache should be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "includePatterns", + "type": "array", + "description": "Array of glob or regex patterns to filter which documentation files or content to include.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludePatterns", + "type": "array", + "description": "Array of glob or regex patterns to exclude certain documentation files or content from the cache.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "transformRules", + "type": "object", + "description": "Optional transformation rules or functions to apply to documentation content during caching (e.g., markdown to HTML).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "verbose", + "type": "boolean", + "description": "Enable verbose logging output during cache building process.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxCacheSizeMB", + "type": "number", + "description": "Maximum size of the cache in megabytes. If exceeded, the cache building will stop or evict old entries.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing cache creation status, number of documents processed, cache location, total size, and any warnings or errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare or refresh a local or remote cache of processed documentation files for faster access, offline usage, or to optimize retrieval performance in documentation systems. It supports filtering, transformation, and size management.", + "limitations": "Does not parse or validate documentation content semantics. Does not handle real-time syncing or live updates beyond the initial cache building. Requires accessible source files or URLs.", + "examples": [ + "Build a cache from markdown files in ./docs folder, saving to ./cache directory.", + "Create a cache from specified URLs excluding deprecated docs, transform markdown to HTML.", + "Build a cache with verbose output and limit max cache size to 100MB." + ] + }, + "tags": [ + "documentation", + "cache", + "build", + "processing", + "offline-access", + "performance" + ], + "examples": [ + { + "inputJson": "{\"sourcePaths\":[\"./docs/api\",\"./docs/guides\"],\"cacheLocation\":\"./cache\",\"includePatterns\":[\"**/*.md\"],\"excludePatterns\":[],\"transformRules\":{\"markdownToHtml\":true},\"verbose\":true,\"maxCacheSizeMB\":100}", + "description": "Build cache from local markdown documentation folders, transform content to HTML, store in './cache' with verbose logging and 100MB size limit." + }, + { + "inputJson": "{\"sourcePaths\":[\"https://docs.example.com/v1\",\"https://docs.example.com/v2\"],\"cacheLocation\":\"/var/cache/docs\",\"includePatterns\":[],\"excludePatterns\":[\"**/deprecated/**\"],\"transformRules\":{},\"verbose\":false,\"maxCacheSizeMB\":500}", + "description": "Create a cache from online documentation URLs, excluding deprecated sections, store at '/var/cache/docs' without transformations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cache", + "context": null + } + }, + { + "name": "data-analytics.downloadVideo", + "description": "This tool downloads a video from a specified URL, optionally selecting a target resolution or format. It accepts the video source URL and optional parameters for desired video quality, format, and output filename. The tool processes video fetching, transcoding if needed, and saves the video file locally or returns a downloadable link.", + "category": "data-analytics", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to download (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "resolution", + "type": "string", + "description": "Desired video resolution (e.g., '1080p', '720p'). If unavailable, downloads best quality.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired video format (e.g., 'mp4', 'webm'). Defaults to format available from source.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFilename", + "type": "string", + "description": "Name for the downloaded video file including extension.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to download available subtitles along with the video.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Object containing status, file path or download link, video metadata (duration, resolution, format), and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically download online video content for further data analytics or offline use, including scenarios requiring specific video quality or format.", + "limitations": "Cannot download videos from sources that require user authentication or DRM-protected content; video availability and resolution depend on the source URL.", + "examples": [ + "Download the latest marketing video from a public URL in 720p mp4 format.", + "Fetch a webinar recording available as a webm file and save it locally.", + "Download a tutorial video including subtitles if available from a given URL." + ] + }, + "tags": [ + "download", + "video", + "media", + "data-analytics", + "fetch", + "transcoding" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/tutorial.mp4\",\"resolution\":\"720p\",\"format\":\"mp4\",\"outputFilename\":\"tutorial_720p.mp4\",\"includeSubtitles\":true}", + "description": "Download tutorial video in 720p mp4 with subtitles saved as tutorial_720p.mp4" + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/live/stream.webm\",\"format\":\"webm\"}", + "description": "Download live stream video in webm format from URL with default resolution" + }, + { + "inputJson": "{\"videoUrl\":\"https://videos.example.com/movie.mov\",\"outputFilename\":\"my_movie.mov\"}", + "description": "Download movie at best available quality, saving as my_movie.mov" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "data-analytics.uploadVideo", + "description": "Uploads a video file along with optional metadata to a data analytics platform for subsequent processing and analysis. Accepts video files in common formats and metadata such as tags and descriptions. Returns a unique video ID and upload status for tracking and reference in data analytics workflows.", + "category": "data-analytics", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local file path or URL of the video file to upload, supports common formats like mp4, avi, mov.", + "required": true, + "defaultValue": "" + }, + { + "name": "videoTitle", + "type": "string", + "description": "Short title or name for the video to help identify it in the system.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoDescription", + "type": "string", + "description": "Detailed description of the video's content, purpose, or other relevant info.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords to categorize and facilitate searching the video later.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "privacySetting", + "type": "string", + "description": "Privacy setting for the video upload, e.g., 'public', 'private', or 'unlisted'.", + "required": false, + "defaultValue": "private" + }, + { + "name": "uploadTimeoutSeconds", + "type": "number", + "description": "Maximum time in seconds allowed for the upload operation before timing out.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status, the assigned unique video ID, and an optional message detailing success or failure." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to upload video content as part of a broader data analytics workflow, for example when incorporating video data for analysis, annotation, or machine learning pipelines. It helps agents handle the initial ingestion step securely and systematically with metadata support.", + "limitations": "This tool does not perform video content analysis, transcoding, or streaming capabilities. It only handles uploading and basic metadata registration.", + "examples": [ + "Upload a marketing campaign video file with descriptive tags for later analytics.", + "Send a recorded meeting video to the analytics platform with privacy set to private.", + "Upload a batch of surveillance videos with appropriate metadata for indexing." + ] + }, + "tags": [ + "upload", + "video", + "data-analytics", + "media", + "metadata", + "file-management" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/user/videos/sales_presentation.mp4\",\"videoTitle\":\"Q2 Sales Presentation\",\"videoDescription\":\"Presentation covering Q2 sales targets and achievements.\",\"tags\":[\"sales\",\"Q2\",\"presentation\"],\"privacySetting\":\"private\",\"uploadTimeoutSeconds\":300}", + "description": "Upload a sales presentation video file with metadata and private access." + }, + { + "inputJson": "{\"videoFilePath\":\"http://example.com/videos/event_highlights.mov\",\"videoTitle\":\"Annual Conference Highlights\",\"tags\":[\"conference\",\"highlights\"],\"privacySetting\":\"public\"}", + "description": "Upload a publicly accessible event highlight video hosted via URL with basic metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "data-analytics.downloadTable", + "description": "Downloads tabular data from a specified data source or query in various file formats such as CSV, Excel, or JSON. Accepts parameters defining the data source, optional filters to refine the table contents, and desired output format. Outputs a downloadable file representing the filtered table data.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "The identifier or connection string for the data source containing the table to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "The name of the table within the data source to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional key-value pairs to filter table rows, where keys are column names and values specify filter criteria.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output file format for the downloaded table data (e.g., csv, xlsx, json).", + "required": true, + "defaultValue": "csv" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the output file.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a URL or data blob representing the downloadable table file in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract structured table data from a data source and provide it in a common file format for offline analysis, reporting, or archiving. Suitable for scenarios requiring data export with optional filtering and format customization.", + "limitations": "Cannot perform complex data transformations beyond simple filtering; relies on accessible and properly formatted data sources.", + "examples": [ + "Download sales data table filtered by region for offline analysis.", + "Export user activity logs table as Excel for reporting.", + "Retrieve product inventory data as JSON without filters." + ] + }, + "tags": [ + "data export", + "table download", + "file format", + "data filter", + "csv", + "excel", + "json" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"warehouse-db\",\"tableName\":\"sales_data\",\"filters\":{\"region\":\"North America\"},\"format\":\"csv\",\"includeHeaders\":true}", + "description": "Download the sales_data table filtered to only include North America region, output as CSV with headers." + }, + { + "inputJson": "{\"dataSource\":\"app-logs\",\"tableName\":\"user_activity\",\"filters\":{},\"format\":\"xlsx\",\"includeHeaders\":true}", + "description": "Download the entire user_activity table from app-logs data source as Excel spreadsheet." + }, + { + "inputJson": "{\"dataSource\":\"inventory-system\",\"tableName\":\"products\",\"filters\":{\"category\":\"electronics\"},\"format\":\"json\",\"includeHeaders\":false}", + "description": "Export products table filtered to electronics category as JSON without column headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "data-analytics.formatComponent", + "description": "Formats code components within data analytics visualizations or reports. Accepts raw component code or object definitions as input, applies specified styling, indentation, and language-specific syntax highlighting options, and outputs formatted, clean, and readable code snippets or components suitable for presentation or embedding within analytic dashboards.", + "category": "data-analytics", + "parameters": [ + { + "name": "componentCode", + "type": "string", + "description": "Raw code or code snippet for the component to format", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming or markup language of the component code for proper formatting and syntax highlighting (e.g., javascript, python, html)", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineWrap", + "type": "number", + "description": "Maximum line length before wrapping code lines. Set 0 or null for no wrapping", + "required": false, + "defaultValue": "80" + }, + { + "name": "highlightSyntax", + "type": "boolean", + "description": "Apply syntax highlighting markup appropriate to the language", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code snippet as a string along with optional syntax-highlighted HTML version" + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean, standardize, and present code components extracted from data analytics scripts or dashboards, to improve readability and integration with reporting or visualization outputs. It is ideal for formatting code snippets in various languages with customizable indentation and syntax highlighting for presentation context.", + "limitations": "It does not execute or validate the functional correctness of the code, nor does it convert code between languages. Complex language-specific formatting nuances might not be perfectly handled for all languages.", + "examples": [ + "Format a JavaScript code snippet for inclusion in an analytics dashboard report.", + "Standardize indentation and enable syntax highlighting for a Python data processing component.", + "Wrap and highlight an HTML snippet used within an analytic visualization tool." + ] + }, + "tags": [ + "formatting", + "code", + "data-analytics", + "component", + "syntax-highlighting", + "indentation" + ], + "examples": [ + { + "inputJson": "{\"componentCode\":\"function plot(data){console.log(data);}\",\"language\":\"javascript\",\"indentSize\":4,\"useTabs\":false,\"lineWrap\":80,\"highlightSyntax\":true}", + "description": "Format a small JavaScript data visualization function with 4-space indent and syntax highlighting." + }, + { + "inputJson": "{\"componentCode\":\"def analyze(data):\\n return sum(data)/len(data)\",\"language\":\"python\",\"indentSize\":2,\"useTabs\":false,\"lineWrap\":0,\"highlightSyntax\":false}", + "description": "Format a Python function with 2-space indent, no syntax highlighting, and no line wrapping." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "data-analytics.uploadTable", + "description": "Uploads a tabular dataset from various file formats (CSV, Excel, JSON) or direct data input, validating and parsing the input to store as a structured table. Outputs a table identifier and metadata for further data analytics processing.", + "category": "data-analytics", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "File path or URL of the tabular data file to upload (supports CSV, XLSX, JSON).", + "required": false, + "defaultValue": "" + }, + { + "name": "rawData", + "type": "string", + "description": "Raw string data of the table in CSV, JSON array, or TSV format if no file path is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Format of the input data file or raw data (csv, excel, json). Required if rawData is provided without extension info.", + "required": false, + "defaultValue": "" + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the table data includes a header row with column names. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character used in CSV or TSV files if not standard comma (e.g. tab or semicolon).", + "required": false, + "defaultValue": "," + }, + { + "name": "tableName", + "type": "string", + "description": "Optional name to assign to the uploaded table for easier reference.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to upload; if zero or not set, uploads entire file.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique table ID, name, number of rows and columns successfully uploaded, and preview of the first few rows." + }, + "aiAgent": { + "useCase": "Use this tool when needing to ingest tabular datasets from various formats into the analytics environment to enable subsequent querying, transformation, or visualization. Ideal for agents managing datasets that come in files or raw data form needing robust parsing and validation.", + "limitations": "Does not perform data cleaning or schema inference beyond header detection. It cannot upload non-tabular or very large streaming data beyond provided limits.", + "examples": [ + "Upload a CSV file to prepare it for analysis.", + "Provide raw JSON array data to create a table representation.", + "Upload an Excel spreadsheet and specify the delimiter for CSV export." + ] + }, + "tags": [ + "upload", + "table", + "data-import", + "analytics", + "file-parsing", + "csv", + "excel", + "json" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"https://example.com/data/sales.csv\",\"hasHeader\":true,\"delimiter\":\",\",\"tableName\":\"SalesData\"}", + "description": "Upload a CSV file with a header to create a table named 'SalesData'." + }, + { + "inputJson": "{\"rawData\":\"id,name,value\\n1,Alice,100\\n2,Bob,200\",\"fileType\":\"csv\",\"hasHeader\":true,\"tableName\":\"UserValues\"}", + "description": "Upload a small CSV raw string with headers as a table called 'UserValues'." + }, + { + "inputJson": "{\"filePath\":\"/files/metrics.xlsx\",\"tableName\":\"MetricsTable\"}", + "description": "Upload an Excel file from local path to the system and assign the name 'MetricsTable'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "data-analytics.sendReply", + "description": "Sends a data-driven reply message to a specified recipient or communication channel based on analyzed insights. Accepts parameters including recipient details, message content, optional data summaries or visuals, and delivery options; processes these to format and dispatch a contextual reply. Returns confirmation status and message metadata.", + "category": "data-analytics", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "The identifier (e.g., email, user ID, or channel) where the reply will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "The main textual content of the reply message to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSummary", + "type": "string", + "description": "A brief summary or highlight of the analyzed data to include in the reply; optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of attachment URLs or base64 encoded images (e.g., charts or graphs) to include with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "deliveryMethod", + "type": "string", + "description": "Method of sending the reply such as 'email', 'chat', or 'api'; defaults to 'email'.", + "required": false, + "defaultValue": "email" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level for the message delivery, e.g., 'normal' or 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "sendTimestamp", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying when to send the reply; if omitted, sends immediately.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object confirming the sending status, including message ID, recipient, timestamp sent, and any error details if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to respond to queries or feedback with data-driven insights, summaries, or visualizations attached, ensuring the communication is contextually relevant and directed to the appropriate recipient or channel.", + "limitations": "This tool cannot compose the reply message content autonomously—it requires the message content to be provided. It also cannot guarantee delivery success for all communication channels, as that depends on external systems.", + "examples": [ + "Send a summarized data analysis report to a client via email.", + "Reply to a user query on a chat channel with attached charts.", + "Schedule sending a high priority alert message with data insights later today." + ] + }, + "tags": [ + "data", + "communication", + "send", + "message", + "reply", + "analytics", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"client@example.com\",\"messageBody\":\"Please find the latest sales data attached.\",\"dataSummary\":\"Sales increased by 10% in Q1.\",\"attachments\":[\"https://example.com/charts/q1_sales.png\"],\"deliveryMethod\":\"email\",\"priority\":\"high\"}", + "description": "Send an email reply to a client including a summary and attached chart." + }, + { + "inputJson": "{\"recipient\":\"support_chat_room\",\"messageBody\":\"Updated metrics for your query: user engagement is up 5%.\",\"deliveryMethod\":\"chat\"}", + "description": "Reply in a chat room with updated metrics as plain text." + }, + { + "inputJson": "{\"recipient\":\"analytics_api_endpoint\",\"messageBody\":\"Automated data report attached.\",\"attachments\":[\"data_report_base64_encoded_string\"],\"deliveryMethod\":\"api\",\"sendTimestamp\":\"2024-06-15T14:00:00Z\"}", + "description": "Schedule sending a data report via API push at a specific time." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "data-analytics.sendThread", + "description": "This tool sends a constructed data analytics discussion thread to a specified communication channel or user group. It accepts an array of message objects forming the thread, processes the sequence and metadata to maintain context, and outputs a result confirming delivery status and any errors encountered.", + "category": "data-analytics", + "parameters": [ + { + "name": "threadMessages", + "type": "array", + "description": "An array of message objects representing the ordered messages in the thread to send, each with text and optional metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetChannel", + "type": "string", + "description": "Identifier of the communication channel or group to which the thread will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Identifier of the user or system sending the thread messages.", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveThreadStructure", + "type": "boolean", + "description": "Whether to maintain original thread message hierarchy and replies while sending.", + "required": false, + "defaultValue": "true" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Optional priority setting for the message delivery: 'low', 'normal', or 'high'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing a success boolean, message count sent, threadId assigned by the system, and optional error details if sending failed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically send a sequence of structured discussion messages (a thread) resulting from data analytics insights or collaborative analysis to a specific communication channel or group. It preserves message order and context to support team collaboration.", + "limitations": "It does not create analytics content or generate messages; messages must be pre-constructed. The tool cannot ensure message format validity beyond basic structure, nor moderate content.", + "examples": [ + "Send a data insights discussion thread to the analytics team Slack channel.", + "Programmatically forward an analysis conversation thread to an external reporting tool's group chat.", + "Dispatch a sequence of analytical decision messages maintaining reply structure to project stakeholders." + ] + }, + "tags": [ + "data-analytics", + "communication", + "thread-management", + "message-sending", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"threadMessages\":[{\"text\":\"Q1 sales increased by 15% compared to last year.\",\"metadata\":{\"author\":\"analyst1\",\"timestamp\":\"2024-06-10T09:00:00Z\"}},{\"text\":\"What are the key drivers behind this growth?\",\"metadata\":{\"author\":\"manager\",\"timestamp\":\"2024-06-10T09:05:00Z\",\"replyTo\":0}},{\"text\":\"Mainly increased online sales and marketing campaigns.\",\"metadata\":{\"author\":\"analyst1\",\"timestamp\":\"2024-06-10T09:10:00Z\",\"replyTo\":1}}],\"targetChannel\":\"channel-analytics-team\",\"senderId\":\"user-123\",\"preserveThreadStructure\":true,\"priorityLevel\":\"normal\"}", + "description": "Send an analytics discussion thread with replies preserved to the analytics team channel." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "data-analytics.renderParagraph", + "description": "Renders a textual paragraph summarizing data insights based on provided metrics and styling options. Accepts raw data values or precomputed statistics, processes them into a coherent natural language paragraph, and outputs the formatted text with optional styling for display in reports or dashboards.", + "category": "data-analytics", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Optional title or heading for the paragraph to provide context or summary topic.", + "required": false, + "defaultValue": "" + }, + { + "name": "dataPoints", + "type": "object", + "description": "An object containing key metrics or statistics to be included in the paragraph, such as averages, counts, or trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Flag to indicate whether to include trend descriptions (increase/decrease over time) in the paragraph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for the paragraph output to support localization.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the rendered paragraph, to enforce brevity.", + "required": false, + "defaultValue": "500" + }, + { + "name": "style", + "type": "string", + "description": "Optional style for the paragraph output (e.g., 'formal', 'conversational') affecting tone and phrasing.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered paragraph text and metadata about the summary such as length." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate readable, human-friendly textual summaries of quantitative data insights for reports, presentations, or dashboards. Ideal for turning raw metrics into narratives that highlight key points and trends in natural language.", + "limitations": "This tool does not perform deep statistical analysis or validation of data quality; it assumes input metrics are preprocessed and accurate. It cannot generate complex multi-paragraph reports or visual charts, only a single summarized paragraph.", + "examples": [ + "Generate a summary paragraph highlighting the average sales and recent trends.", + "Create a brief report paragraph about user engagement stats for a dashboard.", + "Produce a concise paragraph in Spanish describing key performance indicators with a conversational tone." + ] + }, + "tags": [ + "data-analytics", + "rendering", + "text-summarization", + "reporting", + "natural-language", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Monthly Sales Summary\",\"dataPoints\":{\"averageSales\":12500,\"salesChangePercent\":5.2,\"totalOrders\":340},\"includeTrends\":true,\"language\":\"en\",\"maxLength\":300,\"style\":\"formal\"}", + "description": "Generate a formal paragraph summarizing monthly sales data with trends." + }, + { + "inputJson": "{\"title\":\"User Engagement Overview\",\"dataPoints\":{\"activeUsers\":1500,\"dailyIncreasePercent\":2.3},\"includeTrends\":true,\"language\":\"en\",\"maxLength\":200,\"style\":\"conversational\"}", + "description": "Create a conversational paragraph describing recent user engagement trends." + }, + { + "inputJson": "{\"title\":\"Resumen de Rendimiento\",\"dataPoints\":{\"clientesNuevos\":120,\"crecimientoMes\":8},\"includeTrends\":true,\"language\":\"es\",\"maxLength\":250,\"style\":\"formal\"}", + "description": "Produce a formal summary paragraph in Spanish about monthly performance growth." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "data-analytics.formatArticle", + "description": "Formats raw article text by applying structured data analytics-driven enhancements including heading style normalization, paragraph spacing, bullet and numbered list standardization, and inline data visualization placeholders. Accepts raw article content and formatting preferences, outputs a cleanly structured, analytics-optimized formatted article in HTML or markdown.", + "category": "data-analytics", + "parameters": [ + { + "name": "articleText", + "type": "string", + "description": "Raw article content as plain text or minimally formatted string to be processed and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the formatted article, e.g., \"html\" or \"markdown\".", + "required": true, + "defaultValue": "html" + }, + { + "name": "normalizeHeadings", + "type": "boolean", + "description": "Whether to normalize heading styles to a consistent format throughout the article.", + "required": false, + "defaultValue": "true" + }, + { + "name": "standardizeLists", + "type": "boolean", + "description": "Whether to standardize bullet and numbered lists formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "paragraphSpacing", + "type": "number", + "description": "Number of line breaks to insert between paragraphs to improve readability.", + "required": false, + "defaultValue": "1" + }, + { + "name": "insertDataVisualizations", + "type": "boolean", + "description": "If true, replaces recognized data references with placeholders for data visualizations to be added later.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article content as a string in the specified format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw article text into a well-structured, readable format optimized for data analytics presentation or publication, with consistent heading styles, list formatting, spacing, and optionally embedded visualization placeholders. Ideal for preprocessing articles before visualization or further data-driven enhancements.", + "limitations": "Does not perform semantic content rewriting, advanced natural language formatting, or generate actual charts; only inserts placeholders. Limited to simple format normalization and structuring.", + "examples": [ + "Format a raw research article's text into markdown with normalized headings and enhanced paragraph spacing.", + "Convert plain article text to HTML format, standardizing the list styles and adding placeholders for charts referenced in the data.", + "Prepare an article draft in HTML with consistent formatting and line breaks optimized for data analytics publication." + ] + }, + "tags": [ + "data-analytics", + "formatting", + "article", + "text-processing", + "html", + "markdown", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"articleText\":\"Introduction\\nThis article explains data insights.\\n\\nData Points:\\n- Point A\\n- Point B\\nConclusion.\",\"outputFormat\":\"markdown\",\"normalizeHeadings\":true,\"standardizeLists\":true,\"paragraphSpacing\":2,\"insertDataVisualizations\":false}", + "description": "Format a raw article text into markdown with normalized headings, standardized lists, and double paragraph spacing." + }, + { + "inputJson": "{\"articleText\":\"# Sales Report\\nThe quarterly sales increased by 10%. \\n- Top regions: North America, Europe\\nSome referenced data chart here.\",\"outputFormat\":\"html\",\"normalizeHeadings\":true,\"standardizeLists\":true,\"paragraphSpacing\":1,\"insertDataVisualizations\":true}", + "description": "Convert sales report plain text to HTML with normalized headings and list formatting, inserting visualization placeholders where referenced." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "data-analytics.composeArticle", + "description": "Generates a comprehensive article by analyzing provided data sets and insights. Accepts raw data inputs in JSON or CSV format along with parameters specifying focus topics and article structure. Processes data to extract key findings and composes a coherent, well-structured article text output ready for publication or review.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "string", + "description": "Raw data input as JSON string or CSV formatted string to analyze and summarize in the article.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: 'json' or 'csv'. Determines how to parse the data.", + "required": true, + "defaultValue": "json" + }, + { + "name": "focusTopics", + "type": "array", + "description": "List of key topics or keywords to emphasize within the article content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "articleLength", + "type": "number", + "description": "Approximate desired length of the article in words. Adjusts the level of detail and depth.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeVisualDescriptions", + "type": "boolean", + "description": "If true, includes textual descriptions of potential charts or graphs that support the article.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code for article generation, e.g., 'en' for English. Defaults to English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "structureType", + "type": "string", + "description": "Preferred article structure style such as 'standard', 'listicle', or 'storytelling'.", + "required": false, + "defaultValue": "standard" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text and optional metadata such as summary and suggested visuals." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw analytical data into a structured, human-readable article. Ideal for generating reports, blog posts, or summaries that combine data insights with narrative context for easier comprehension by non-experts.", + "limitations": "Cannot perform deep domain-specific analysis beyond general data patterns; may not generate specialized technical content without domain data or expert input. Visual outputs are textually described, no image generation included.", + "examples": [ + "Compose an article summarizing quarterly sales data highlighting trends and recommendations.", + "Generate a 1500-word storytelling style report on survey results focusing on customer satisfaction insights.", + "Create an English article with visual descriptions from JSON market analysis data emphasizing growth areas." + ] + }, + "tags": [ + "article generation", + "data analysis", + "report writing", + "content creation", + "analytics", + "natural language generation" + ], + "examples": [ + { + "inputJson": "{\"data\":\"[{\\\"month\\\":\\\"Jan\\\",\\\"sales\\\":500},{\\\"month\\\":\\\"Feb\\\",\\\"sales\\\":700}]\",\"dataFormat\":\"json\",\"focusTopics\":[\"sales\",\"trend\"],\"articleLength\":800,\"includeVisualDescriptions\":true,\"language\":\"en\",\"structureType\":\"standard\"}", + "description": "Generate a standard English article analyzing monthly sales data with visual descriptions." + }, + { + "inputJson": "{\"data\":\"month,sales\\nJan,500\\nFeb,700\",\"dataFormat\":\"csv\",\"focusTopics\":[\"sales growth\"],\"articleLength\":1200,\"includeVisualDescriptions\":false,\"language\":\"en\",\"structureType\":\"storytelling\"}", + "description": "Create a storytelling article from CSV sales data emphasizing growth trends without visual descriptions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "data-analytics.composeLink", + "description": "Generates a customizable HTML hyperlink element that embeds data insights or analysis references. Accepts a base URL and optional query parameters, link text, and styling options, then outputs a formatted link string for embedding in reports or dashboards.", + "category": "data-analytics", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL to which the link will point, typically a data insight or dashboard page.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryParams", + "type": "object", + "description": "An object containing key-value pairs to append as URL query parameters for filtering or specifying views.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "linkText", + "type": "string", + "description": "The display text for the hyperlink; if empty, the baseUrl is used as link text.", + "required": false, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Boolean flag indicating whether the link should open in a new browser tab or window.", + "required": false, + "defaultValue": "false" + }, + { + "name": "cssClass", + "type": "string", + "description": "CSS class name(s) to apply to the link element for styling purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed HTML link string under the 'htmlLink' property." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to create dynamic, parameterized hyperlinks that reference specific data analyses or filtered dashboard views, for embedding in reports, visualizations, or UI elements. This enables easier navigation and direct access to relevant data insights in a user-friendly format.", + "limitations": "This tool only composes link strings; it does not verify link validity, accessibility, or interact with external web services. URL encoding of query parameters is basic and may not cover all edge cases.", + "examples": [ + "Generate a link to a sales dashboard filtered by region and quarter, with custom display text and styling.", + "Create a plain link to a static data summary page that opens in the same tab.", + "Compose a link with multiple query parameters to pass user-selected filters dynamically." + ] + }, + "tags": [ + "data", + "link", + "html", + "url", + "compose", + "analytics", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://analytics.example.com/dashboard\",\"queryParams\":{\"region\":\"north_america\",\"quarter\":\"Q2\"},\"linkText\":\"View Q2 Sales in North America\",\"openInNewTab\":true,\"cssClass\":\"btn btn-primary\"}", + "description": "Compose a link to a sales dashboard filtered by region and quarter with custom text and styling that opens in a new tab." + }, + { + "inputJson": "{\"baseUrl\":\"https://reports.example.com/summary\",\"linkText\":\"Summary Report\",\"openInNewTab\":false}", + "description": "Create a simple link to a static summary report that opens in the same tab with default styling." + }, + { + "inputJson": "{\"baseUrl\":\"https://data.example.com/view\",\"queryParams\":{\"filter\":\"active\",\"sort\":\"desc\"},\"openInNewTab\":false}", + "description": "Generate a link with multiple query parameters that open in the same tab and use the URL as link text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "data-analytics.buildCluster", + "description": "Builds a cluster infrastructure model based on provided node data and configuration parameters. Accepts an array of node specifications (including CPU, memory, storage) and cluster-level settings. Processes the input to simulate and assemble a cluster layout, returning details about cluster capacity, node roles, and connectivity topology.", + "category": "data-analytics", + "parameters": [ + { + "name": "nodes", + "type": "array", + "description": "Array of node specification objects, each including CPU, memory, storage, and optional role.", + "required": true, + "defaultValue": "" + }, + { + "name": "clusterType", + "type": "string", + "description": "Type of cluster to build (e.g., 'kubernetes', 'hadoop', 'spark').", + "required": true, + "defaultValue": "" + }, + { + "name": "replicationFactor", + "type": "number", + "description": "Replication factor for data redundancy across the cluster.", + "required": false, + "defaultValue": "3" + }, + { + "name": "enableHighAvailability", + "type": "boolean", + "description": "Whether to enable high availability mode in the cluster configuration.", + "required": false, + "defaultValue": "true" + }, + { + "name": "networkTopology", + "type": "string", + "description": "Network topology to emulate (e.g., 'flat', 'hierarchical').", + "required": false, + "defaultValue": "flat" + } + ], + "returns": { + "type": "object", + "description": "An object containing cluster summary including total CPU, memory, storage capacities, node role distribution, replication status, and network topology map." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct a realistic model of a compute cluster to analyze resource distribution, fault tolerance, or simulate workload scenarios based on input node data. It helps plan or evaluate infrastructure designs for distributed computing.", + "limitations": "The tool does not deploy actual infrastructure or run workloads; it provides a simulated cluster model only.", + "examples": [ + "Build a Kubernetes cluster model from 5 nodes with specified CPU and RAM.", + "Simulate a Hadoop cluster with replication factor 2 and hierarchical network topology.", + "Create a Spark cluster configuration with high availability enabled." + ] + }, + "tags": [ + "data-analytics", + "cluster", + "infrastructure", + "simulation", + "resource-planning", + "distributed-systems" + ], + "examples": [ + { + "inputJson": "{\"nodes\":[{\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":500,\"role\":\"worker\"},{\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":500,\"role\":\"worker\"},{\"cpuCores\":16,\"memoryGB\":64,\"storageGB\":1000,\"role\":\"master\"}],\"clusterType\":\"kubernetes\",\"replicationFactor\":3,\"enableHighAvailability\":true,\"networkTopology\":\"flat\"}", + "description": "Build a Kubernetes cluster model with 3 nodes including one master and two workers, high availability enabled, flat network." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "data-analytics.composeComment", + "description": "This tool generates insightful and context-aware comments summarizing data analysis results. It accepts structured data inputs like statistical summaries, charts metadata, or analysis highlights, processes them to form coherent, concise comments tailored to the data context, and outputs a human-readable comment string ready for use in reports, dashboards, or communication.", + "category": "data-analytics", + "parameters": [ + { + "name": "analysisSummary", + "type": "string", + "description": "A concise textual summary or key findings from the data analysis to base the comment on.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the comment, e.g., 'formal', 'informal', 'technical', or 'friendly'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the comment in characters to keep it concise.", + "required": false, + "defaultValue": "300" + }, + { + "name": "highlightMetrics", + "type": "array", + "description": "List of specific metrics or data points to emphasize within the comment.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing a generated comment string summarizing the data analysis insights." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create clear, relevant commentary or explanations from raw or summarized data analytics outputs for communicating findings to stakeholders, enhancing reports, or annotating dashboards.", + "limitations": "Cannot replace expert domain knowledge for complex interpretations or generate comments without meaningful data input; effectiveness depends on input quality and clarity.", + "examples": [ + "Generate a brief commentary summarizing sales trends from monthly data.", + "Create a friendly comment explaining key performance indicators in a dashboard.", + "Compose a formal analysis conclusion highlighting significant statistical results." + ] + }, + "tags": [ + "data-analytics", + "comment-composition", + "summarization", + "reporting", + "communication" + ], + "examples": [ + { + "inputJson": "{\"analysisSummary\":\"Sales increased by 15% in Q1 compared to last year, with the highest growth in the technology sector.\",\"tone\":\"formal\",\"maxLength\":250,\"highlightMetrics\":[\"sales growth\",\"technology sector\"]}", + "description": "Generating a formal comment summarizing sales growth and emphasizing technology sector performance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "data-analytics.buildPipeline", + "description": "Constructs a customizable data analytics pipeline that ingests raw data, applies sequential transformation and analysis steps, and outputs processed datasets and visual insights. Accepts data sources and a user-defined workflow configuration specifying processing modules, parameters, and output options.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of input data sources to ingest, such as file paths, database connections, or API endpoints. Supports CSV, JSON, SQL, and REST sources.", + "required": true, + "defaultValue": "" + }, + { + "name": "pipelineConfig", + "type": "object", + "description": "Defines the sequential steps of the pipeline, including data cleaning, transformation, feature engineering, model training, and visualization. Each step includes module name and parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for processed data and results (e.g., JSON, CSV, Excel, HTML report).", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of pipeline execution for troubleshooting and auditing.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxRetries", + "type": "number", + "description": "Maximum number of retries for transient errors during data ingestion or processing steps.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the processed dataset(s), summary of each pipeline step execution, any generated visualizations as files or links, and logs if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate complex data workflows that include multiple interdependent processing and analysis steps, such as preparing datasets, extracting features, training models, and generating reports. Ideal for scenarios requiring reproducible and configurable analytics pipelines.", + "limitations": "Cannot execute pipeline steps that require specialized hardware or proprietary libraries not supported by the system. Real-time streaming data processing is not supported in this version.", + "examples": [ + "Build a pipeline that ingests CSV sales data, cleans missing values, computes rolling averages, trains a regression model, and outputs predictions as JSON.", + "Create a pipeline to connect to an SQL database, extract user activity data, transform timestamps to local time zone, generate daily summary visualizations, and export reports as HTML.", + "Construct a data pipeline for loading JSON logs, filter records by error severity, aggregate counts per day, and save the results to an Excel file." + ] + }, + "tags": [ + "data analytics", + "pipeline", + "workflow automation", + "data processing", + "machine learning", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[\"./data/sales.csv\"],\"pipelineConfig\":{\"steps\":[{\"module\":\"cleanMissing\",\"params\":{\"method\":\"mean\"}},{\"module\":\"rollingAverage\",\"params\":{\"windowSize\":7}},{\"module\":\"trainRegressionModel\",\"params\":{\"target\":\"sales\",\"features\":[\"rolling_avg\"]}]},{\"module\":\"predict\",\"params\":{\"outputName\":\"sales_forecast\"}}]},\"outputFormat\":\"JSON\",\"enableLogging\":true}", + "description": "Pipeline to clean sales data, compute 7-day rolling average, train a regression model to predict sales, outputting JSON results with logs." + }, + { + "inputJson": "{\"dataSources\":[\"sql://user:pass@host/database:users_activity\"],\"pipelineConfig\":{\"steps\":[{\"module\":\"convertTimezone\",\"params\":{\"timezone\":\"America/New_York\"}},{\"module\":\"generateDailySummary\",\"params\":{\"metrics\":[\"page_views\",\"logins\"]}},{\"module\":\"visualize\",\"params\":{\"type\":\"lineChart\",\"outputFile\":\"./reports/daily_summary.html\"}}]},\"outputFormat\":\"HTML\",\"enableLogging\":false}", + "description": "Pipeline to extract user activity from SQL, convert timezone, generate daily metrics summary, create line chart visual report in HTML." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "data-analytics.buildQueue", + "description": "Builds a virtual queue data structure from an input list of items with timestamps and priorities. It processes the input to arrange items according to queueing rules (FIFO or priority-based) and outputs a structured queue state object suitable for analysis or simulation.", + "category": "data-analytics", + "parameters": [ + { + "name": "items", + "type": "array", + "description": "An array of objects representing queue items, each with attributes like id, timestamp, and priority.", + "required": true, + "defaultValue": "" + }, + { + "name": "queueType", + "type": "string", + "description": "Type of queue ordering to build: 'FIFO' for first-in-first-out or 'Priority' to order by priority value.", + "required": true, + "defaultValue": "FIFO" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of the queue. Excess items will be dropped from the end after ordering.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeWaitingTime", + "type": "boolean", + "description": "Whether to calculate and include estimated waiting time for each queue item based on timestamps.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed queue with ordered items, and if requested, waiting times for each item, plus metadata like totalItems and maxLength." + }, + "aiAgent": { + "useCase": "Use this tool when you need to model, analyze, or simulate queue behavior based on real or synthetic event data. It supports organizing unordered items into structured queue sequences according to FIFO or priority, useful for operational analytics, load balancing simulations, or service optimization scenarios.", + "limitations": "It does not simulate queue dynamics over time with concurrent processing or handle queues with dynamic priority changes after creation.", + "examples": [ + "Create a FIFO queue from a list of customer service requests with timestamps.", + "Build a priority queue from tasks that have priority levels for scheduling analysis.", + "Generate a queue with waiting times included to estimate delays in the system." + ] + }, + "tags": [ + "data-analytics", + "queue", + "infrastructure", + "simulation", + "ordering", + "priority", + "FIFO" + ], + "examples": [ + { + "inputJson": "{\"items\":[{\"id\":\"item1\",\"timestamp\":1610000000,\"priority\":2},{\"id\":\"item2\",\"timestamp\":1610000100,\"priority\":3},{\"id\":\"item3\",\"timestamp\":1610000050,\"priority\":1}],\"queueType\":\"FIFO\",\"maxLength\":3,\"includeWaitingTime\":true}", + "description": "Build a FIFO queue from three items with timestamps and calculate waiting times." + }, + { + "inputJson": "{\"items\":[{\"id\":\"taskA\",\"timestamp\":1620000000,\"priority\":5},{\"id\":\"taskB\",\"timestamp\":1620000100,\"priority\":2},{\"id\":\"taskC\",\"timestamp\":1620000050,\"priority\":8}],\"queueType\":\"Priority\",\"includeWaitingTime\":false}", + "description": "Build a priority-based queue from tasks without calculating waiting times." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "data-analytics.buildWorkflow", + "description": "Builds a customizable data analytics workflow by defining a sequence of processing steps such as data loading, cleaning, transformation, analysis, and visualization. Accepts detailed step configurations as input and outputs a runnable workflow object or script that can be executed to perform the specified analysis pipeline.", + "category": "data-analytics", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "Name of the workflow to be created, used for identification and storage purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "Ordered list of workflow steps; each step is an object specifying the action type (e.g., load, filter, aggregate, visualize), its parameters, and dependencies.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the resulting workflow output such as 'json', 'pythonScript', or 'yaml'. Determines how the workflow is serialized.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeErrorHandling", + "type": "boolean", + "description": "Whether to automatically add basic error handling to each step in the workflow to manage failures gracefully.", + "required": false, + "defaultValue": "true" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to include logging steps or hooks within the workflow to capture runtime information and assist debugging.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated workflow definition serialized according to the requested output format, ready for execution or further integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a reproducible, well-structured data analytics pipeline from a high-level description of necessary steps, enabling automation or integration with data processing platforms. It is ideal for scenarios requiring dynamic workflow creation based on changing analysis requirements.", + "limitations": "This tool does not execute the workflow; it only builds and outputs its definition. It also cannot optimize the workflow for performance or validate external data source connectivity.", + "examples": [ + "Generate a workflow to load sales data CSV, filter for 2023, aggregate total sales by region, and visualize results as a bar chart.", + "Create a data cleaning workflow that standardizes dates, handles missing values, and outputs cleaned dataset in JSON format.", + "Build an analytics pipeline that imports user logs, computes session durations, and exports summarized metrics to a database." + ] + }, + "tags": [ + "data-analytics", + "workflow-building", + "automation", + "pipeline", + "visualization", + "transformation", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"SalesAnalysis2023\",\"steps\":[{\"type\":\"load\",\"params\":{\"source\":\"s3://data/sales_2023.csv\",\"format\":\"csv\"}},{\"type\":\"filter\",\"params\":{\"condition\":\"year == 2023\"}},{\"type\":\"aggregate\",\"params\":{\"groupBy\":[\"region\"],\"metrics\":{\"total_sales\":\"sum\"}}},{\"type\":\"visualize\",\"params\":{\"chartType\":\"bar\",\"x\":\"region\",\"y\":\"total_sales\"}}],\"outputFormat\":\"json\",\"includeErrorHandling\":true,\"enableLogging\":true}", + "description": "Building a sales data analysis workflow for the year 2023 with aggregation and bar chart visualization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "data-analytics.generateAnomaly", + "description": "Generates anomaly detection insights from time series data or tabular sensor logs. Accepts numerical data arrays or CSV-formatted strings, applies statistical or machine learning models to identify deviations from normal patterns, and outputs detected anomalies with timestamps and significance scores.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw input data as CSV string or JSON array of numeric values representing time series or tabular measurements, required for anomaly detection.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the inputData: \"csv\" or \"json\". Determines the parsing method.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "timestampField", + "type": "string", + "description": "Column name or key representing timestamps in the data. Required if dataFormat is csv and timestamps are present.", + "required": false, + "defaultValue": "timestamp" + }, + { + "name": "valueFields", + "type": "array", + "description": "List of column names or keys to analyze for anomalies. If empty, all numeric fields will be analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "method", + "type": "string", + "description": "Anomaly detection method to use: \"statistical\", \"z-score\", \"machine-learning\" (e.g., isolation forest).", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity threshold for anomaly detection, between 0 (low) and 1 (high); controls strictness of anomaly flagging.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of output: \"json\" for structured output or \"csv\" for text formatted anomalies.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing detected anomalies with fields: timestamp, metric name, anomaly score, and boolean flag indicating anomaly presence." + }, + "aiAgent": { + "useCase": "Use this tool when needing to identify unusual patterns, faults, or outliers in time series or sensor data, especially in monitoring, IoT diagnostics, or operational analytics contexts. It helps automate detection of anomalous events to trigger alerts or further analysis.", + "limitations": "This tool requires numerical input data with consistent formatting; it does not handle unstructured or categorical data directly. Accuracy depends on data quality and selected method; requires domain knowledge to interpret results properly.", + "examples": [ + "Detect anomalies in server CPU usage metrics collected every minute in CSV format.", + "Analyze JSON time series from IoT sensors to find irregular readings indicating equipment issues.", + "Generate anomaly report from stock prices timestamps using a machine learning method with high sensitivity." + ] + }, + "tags": [ + "anomaly detection", + "time series", + "data analysis", + "machine learning", + "statistical methods", + "sensor data" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"timestamp,value\\n2024-01-01T00:00Z,20\\n2024-01-01T00:01Z,21\\n2024-01-01T00:02Z,1000\\n2024-01-01T00:03Z,22\",\"dataFormat\":\"csv\",\"timestampField\":\"timestamp\",\"valueFields\":[\"value\"],\"method\":\"z-score\",\"sensitivity\":0.7,\"outputFormat\":\"json\"}", + "description": "Detect anomalies in CPU usage data with a spike at 00:02." + }, + { + "inputJson": "{\"inputData\":\"[{\\\"time\\\":\\\"2024-06-15T12:00:00\\\",\\\"temp\\\":22},{\\\"time\\\":\\\"2024-06-15T12:05:00\\\",\\\"temp\\\":23},{\\\"time\\\":\\\"2024-06-15T12:10:00\\\",\\\"temp\\\":50}]\",\"dataFormat\":\"json\",\"timestampField\":\"time\",\"valueFields\":[\"temp\"],\"method\":\"statistical\",\"sensitivity\":0.6,\"outputFormat\":\"json\"}", + "description": "Analyze JSON temperature readings to find unusual high temperature." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "data-analytics.buildPackage", + "description": "Builds a reusable data analytics package from user-provided datasets and configuration. Accepts input data sources and analysis specifications, processes data transformations and visualization setup, and outputs a ready-to-deploy code package containing scripts, documentation, and visualization assets for easy sharing and execution.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of input data sources, each specified by type and location (e.g., CSV file path, database connection string).", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisConfig", + "type": "object", + "description": "Configuration object specifying analyses to perform, including data transformations, statistical methods, and visualizations.", + "required": true, + "defaultValue": "" + }, + { + "name": "packageName", + "type": "string", + "description": "Name for the generated package, used in output files and metadata.", + "required": false, + "defaultValue": "\"data_analytics_package\"" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the generated package code. Options include 'python', 'r', or 'julia'.", + "required": false, + "defaultValue": "\"python\"" + }, + { + "name": "includeDocumentation", + "type": "boolean", + "description": "Flag to include autogenerated documentation within the package describing usage and analysis overview.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for packaging output: 'zip' archive or 'tar' archive.", + "required": false, + "defaultValue": "\"zip\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing package metadata and a downloadable link or base64 string representing the packaged archive with all generated files." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw data and detailed analytics instructions into a coherent, reusable software package encapsulating all code, configurations, and documentation, facilitating deployment or sharing of complex data analyses.", + "limitations": "The tool does not execute the analyses; it only builds code packages. It cannot validate the correctness of analysis configuration beyond basic schema checks. Large data files should be referenced, not embedded in the package.", + "examples": [ + "Create a Python package for sales data analysis including time series forecasting and visualizations.", + "Generate a zipped R package containing scripts and docs for customer segmentation clustering with provided CSV data sources." + ] + }, + "tags": [ + "data-analytics", + "package-building", + "code-generation", + "data-processing", + "visualization", + "automation" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[{\"type\":\"csv\",\"location\":\"s3://bucket/sales.csv\"}],\"analysisConfig\":{\"transformations\":[{\"name\":\"normalize\",\"columns\":[\"revenue\"]}],\"visualizations\":[{\"type\":\"line_chart\",\"x_axis\":\"date\",\"y_axis\":\"revenue\"}]},\"packageName\":\"sales_analysis\",\"language\":\"python\",\"includeDocumentation\":true,\"outputFormat\":\"zip\"}", + "description": "Build a Python package for sales data analysis with normalization and line chart visualization from CSV data in S3." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "data-analytics.generateReadme", + "description": "Generates a comprehensive README document for a data analytics project based on input specifications such as project description, dataset information, analysis methods, and installation instructions. The tool processes structured input parameters and produces a well-formatted Markdown README text useful for project documentation and sharing.", + "category": "data-analytics", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name of the data analytics project to be documented.", + "required": true, + "defaultValue": "" + }, + { + "name": "projectDescription", + "type": "string", + "description": "A detailed description of the project's purpose, goals, and overview.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasets", + "type": "array", + "description": "An array of dataset descriptions used in the project; each item should include name and brief info about the dataset.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "analysisMethods", + "type": "array", + "description": "List of main data analysis or modeling techniques applied in the project.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "installationInstructions", + "type": "string", + "description": "Optional text describing how to install dependencies or setup environment for the project.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageExamples", + "type": "array", + "description": "An array of usage examples or code snippets illustrating how to use the project or run analyses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "license", + "type": "string", + "description": "License type or terms governing use of the project code/data.", + "required": false, + "defaultValue": "MIT" + }, + { + "name": "contactInfo", + "type": "string", + "description": "Optional contact information or links for further communication or contribution.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing a single field 'readmeContent' with the full Markdown formatted README text string generated from inputs." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents tasked with automating documentation generation for data analytics projects. Given structured input details about datasets, methodologies, and usage, it produces ready-to-publish README files that help end users understand and utilize the project effectively. It streamlines the documentation process, ensuring completeness and clarity.", + "limitations": "The tool does not generate actual data analysis code or notebooks; it only creates documentation text based on the inputs provided. It depends on the user to supply accurate and complete information for best results.", + "examples": [ + "Generate a README for a project analyzing customer churn with description, dataset info, and method details.", + "Create documentation for a project including installation steps and usage code snippets.", + "Produce a standardized README including license and contact information for a data science repository." + ] + }, + "tags": [ + "documentation", + "data analytics", + "markdown", + "README generation", + "project documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"CustomerChurnAnalysis\",\"projectDescription\":\"This project analyzes customer churn rates using historical data from telecom providers.\",\"datasets\":[{\"name\":\"Telecom Customer Data\",\"description\":\"Customer demographics and usage statistics.\"}],\"analysisMethods\":[\"Logistic Regression\",\"Random Forest\"],\"installationInstructions\":\"Run 'pip install -r requirements.txt' to install necessary packages.\",\"usageExamples\":[\"python churn_analysis.py --input data.csv\"],\"license\":\"Apache-2.0\",\"contactInfo\":\"Email: data.team@example.com\"}", + "description": "README generation for a customer churn prediction project with datasets, analysis methods, installation, usage, license, and contact info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "data-analytics.generateConversion", + "description": "Generates a detailed conversion analytics report based on user interaction data and funnel definitions. It accepts raw event logs and funnel steps, calculates conversion rates, drop-off points, and produces summary metrics and visualizations suitable for insights into user behavior and funnel performance.", + "category": "data-analytics", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of event objects representing user interactions with timestamps and event names. Required to analyze funnel steps.", + "required": true, + "defaultValue": "" + }, + { + "name": "funnelSteps", + "type": "array", + "description": "Ordered array of strings defining the names of funnel steps to track conversion through the user journey. Required to structure analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes between funnel steps to consider a conversion valid. Defaults to 60 minutes if not specified.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Flag to indicate if the output should include chart data for visualizing conversions and drop-offs.", + "required": false, + "defaultValue": "true" + }, + { + "name": "segmentBy", + "type": "string", + "description": "Optional event property name to segment conversion metrics by (e.g., userType, region).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall conversion rate, step-by-step conversion metrics, drop-off analysis, optionally visualization data structured for rendering charts." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing user behavior through a defined funnel to understand where users convert or drop off. Ideal for product managers, marketers, or analysts seeking to optimize user flows and increase conversion rates from raw event logs.", + "limitations": "This tool does not collect raw data, requires clean event data input with consistent event names, and does not predict future conversions or perform advanced cohort analysis.", + "examples": [ + "Generate conversion report for a signup funnel with event data.", + "Calculate drop-off rates between checkout steps segmented by user location.", + "Produce visual charts to illustrate conversion rates across multiple funnel steps." + ] + }, + "tags": [ + "data-analytics", + "conversion", + "funnel-analysis", + "user-behavior", + "reporting", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"userId\":\"u1\",\"event\":\"PageView\",\"timestamp\":\"2023-06-01T10:00:00Z\"},{\"userId\":\"u1\",\"event\":\"SignupStart\",\"timestamp\":\"2023-06-01T10:02:00Z\"},{\"userId\":\"u1\",\"event\":\"SignupComplete\",\"timestamp\":\"2023-06-01T10:04:00Z\"},{\"userId\":\"u2\",\"event\":\"PageView\",\"timestamp\":\"2023-06-01T10:01:00Z\"},{\"userId\":\"u2\",\"event\":\"SignupStart\",\"timestamp\":\"2023-06-01T10:10:00Z\"}],\"funnelSteps\":[\"PageView\",\"SignupStart\",\"SignupComplete\"],\"timeWindowMinutes\":30,\"includeVisualizations\":true,\"segmentBy\":\"\"}", + "description": "Analyze a signup funnel conversion with 3 steps and include visual data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "data-analytics.generateGraph", + "description": "Generates a customizable graph visualization from structured data. Accepts input data in array or object format along with graph type and styling options. Processes the data to produce a graph image or embed code representing data insights visually for reports or dashboards.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points or objects to visualize, must contain relevant fields matching xField and yField.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, e.g., 'bar', 'line', 'pie', or 'scatter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "xField", + "type": "string", + "description": "Name of the field in data to use for the x-axis (or categories for pie charts).", + "required": true, + "defaultValue": "" + }, + { + "name": "yField", + "type": "string", + "description": "Name of the field in data to use for the y-axis (numeric values).", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title text for the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme to apply to the graph elements, e.g., 'default', 'dark', 'pastel'.", + "required": false, + "defaultValue": "default" + }, + { + "name": "width", + "type": "number", + "description": "Width of the graph output in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the graph output in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated graph output, e.g., 'png', 'svg', or 'html' embed code.", + "required": false, + "defaultValue": "png" + } + ], + "returns": { + "type": "object", + "description": "Object containing a string 'graphData' with Base64-encoded image data or HTML embed code representing the generated graph." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create visual representations of structured datasets to reveal trends, comparisons, or distributions. Ideal for generating graphs for reports, dashboards, or web pages from JSON or array data inputs.", + "limitations": "Does not perform data preprocessing or statistical analysis; input data must be cleaned and formatted appropriately. Complex interactive graphs or real-time data streaming are not supported.", + "examples": [ + "Generate a bar chart showing sales across regions for last quarter.", + "Create a line graph depicting monthly revenue growth over a year.", + "Produce a pie chart illustrating market share percentages among competitors." + ] + }, + "tags": [ + "data-visualization", + "graph-generation", + "analytics", + "reporting", + "charting", + "visual-insights" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"region\":\"North\",\"sales\":120},{\"region\":\"South\",\"sales\":150},{\"region\":\"East\",\"sales\":100}],\"graphType\":\"bar\",\"xField\":\"region\",\"yField\":\"sales\",\"title\":\"Quarterly Sales by Region\",\"colorScheme\":\"pastel\",\"width\":600,\"height\":400,\"outputFormat\":\"png\"}", + "description": "Generate a pastel-colored bar graph showing sales per region with specified dimensions." + }, + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"revenue\":1000},{\"month\":\"Feb\",\"revenue\":1200},{\"month\":\"Mar\",\"revenue\":1500}],\"graphType\":\"line\",\"xField\":\"month\",\"yField\":\"revenue\",\"title\":\"Monthly Revenue\",\"colorScheme\":\"default\",\"outputFormat\":\"svg\"}", + "description": "Create a line graph in SVG format showing revenue growth over three months." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "data-analytics.generateDiagram", + "description": "Generates a variety of diagrams (e.g., bar chart, line chart, pie chart) from structured data inputs such as arrays or CSV strings. Processes numerical and categorical data to produce visual representations in SVG or PNG format for data analysis and reporting.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data objects or arrays representing the dataset to visualize. Each item should contain fields or values corresponding to dimensions and metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "The type of diagram to generate, such as 'bar', 'line', 'pie', or 'scatter'.", + "required": true, + "defaultValue": "" + }, + { + "name": "xAxisField", + "type": "string", + "description": "The data field to map to the x-axis (for applicable chart types).", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisField", + "type": "string", + "description": "The data field to map to the y-axis (for applicable chart types).", + "required": false, + "defaultValue": "" + }, + { + "name": "colorField", + "type": "string", + "description": "An optional data field used to color-code chart elements (e.g., categories).", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated diagram in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated diagram in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format: 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the diagram's image data as a base64-encoded string and the MIME type corresponding to the outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw structured data into visual diagrams for easier interpretation, insight generation, or reporting. Suitable for data analytics workflows requiring automated chart creation from tabular data.", + "limitations": "Cannot perform advanced statistical analysis or generate interactive charts; supports only common chart types and basic customization.", + "examples": [ + "Generate a bar chart of sales by region from JSON data.", + "Create a pie chart showing market share distribution from an input array.", + "Produce a line chart of temperature over time with specified x and y fields." + ] + }, + "tags": [ + "data-analytics", + "diagram-generation", + "charting", + "visualization", + "svg", + "png", + "data-visualization" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"region\":\"North\",\"sales\":100},{\"region\":\"South\",\"sales\":150},{\"region\":\"East\",\"sales\":90}],\"diagramType\":\"bar\",\"xAxisField\":\"region\",\"yAxisField\":\"sales\",\"width\":600,\"height\":400,\"outputFormat\":\"svg\"}", + "description": "Bar chart showing sales per region from given JSON data." + }, + { + "inputJson": "{\"data\":[{\"category\":\"A\",\"value\":40},{\"category\":\"B\",\"value\":60}],\"diagramType\":\"pie\",\"colorField\":\"category\",\"outputFormat\":\"png\"}", + "description": "Pie chart illustrating category value proportions with color coding." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2023-01-01\",\"temp\":30},{\"date\":\"2023-01-02\",\"temp\":25}],\"diagramType\":\"line\",\"xAxisField\":\"date\",\"yAxisField\":\"temp\",\"width\":800,\"height\":500,\"outputFormat\":\"svg\"}", + "description": "Line chart plotting temperature over specified dates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "data-analytics.generateYAML", + "description": "Generates a YAML-formatted summary report from provided analytical data. Accepts structured JSON input representing metrics, insights, or configurations, processes it to produce an organized, human-readable YAML output suitable for further automation or documentation purposes.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured JSON object containing the data to be summarized and converted into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include descriptive headers or comments in the YAML output for readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the generated YAML for formatting preferences.", + "required": false, + "defaultValue": "2" + }, + { + "name": "keyOrder", + "type": "array", + "description": "Array specifying the preferred order of keys in each YAML object node, if ordering is important.", + "required": false, + "defaultValue": "" + }, + { + "name": "omitEmptyValues", + "type": "boolean", + "description": "If true, fields with empty or null values will be omitted from the YAML output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string value 'yamlOutput' representing the generated YAML document." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured analytical data into a YAML document for configuration, reporting, or integration with systems that consume YAML. Especially useful for generating readable summaries or configurations from JSON data in data analytics workflows.", + "limitations": "This tool does not perform data validation on the input content and assumes well-formed JSON input. It is not intended to replace complex YAML serializers that handle advanced YAML features like anchors or custom tags.", + "examples": [ + "Generate a YAML report from a JSON object containing sales metrics.", + "Convert a data insight JSON into a readable YAML config snippet for deployment.", + "Produce a YAML summary of data analytics output with ordered keys and no empty fields." + ] + }, + "tags": [ + "data-analytics", + "yaml", + "generate", + "reporting", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"metrics\":{\"sales\":1000,\"profit\":200},\"date\":\"2024-06-15\"},\"includeHeaders\":true,\"indentationSpaces\":2,\"keyOrder\":[\"date\",\"metrics\"],\"omitEmptyValues\":true}", + "description": "Generating a YAML report from sales metrics with headers and custom key order." + }, + { + "inputJson": "{\"inputData\":{\"userCount\":5000,\"errorRate\":0.02,\"comments\":\"Monthly user stats\"},\"includeHeaders\":false,\"indentationSpaces\":4,\"omitEmptyValues\":true}", + "description": "Create a YAML snippet without headers and with 4 spaces indentation, excluding empty values." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "data-analytics.createConversion", + "description": "This tool accepts raw event or user interaction data, processes it to calculate conversion metrics such as conversion rates, average conversion time, and funnel drop-off rates, and outputs detailed conversion analytics. It enables analysis of user behavior across defined conversion funnels to identify performance and optimization opportunities.", + "category": "data-analytics", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of user events or interactions data objects to analyze for conversion metrics. Each object includes timestamp, userId, eventType, and other relevant properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionFunnelSteps", + "type": "array", + "description": "Ordered list of event names representing funnel steps to define the conversion path.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes within which funnel steps must occur to count as a conversion. Helps define conversion session length.", + "required": false, + "defaultValue": "60" + }, + { + "name": "groupByUserId", + "type": "boolean", + "description": "Flag to indicate whether to group conversion calculations by unique user ID or consider all events independently.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'summary' provides overview metrics, 'detailed' provides step-wise conversion breakdowns and drop-off analysis.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An object containing conversion analysis results. Includes overall conversion rate, step-wise drop-off counts and percentages, average time to conversion, and optionally detailed funnel progression data per user or event." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw event tracking data into actionable conversion metrics that help understand user journey performance across key funnel steps. It's useful for optimizing marketing, onboarding flows, checkout processes, or any multi-step conversion scenario.", + "limitations": "This tool assumes clean event data with consistent naming and timestamps. It does not perform data cleansing or advanced user-level attribution beyond simple grouping by userId. It also cannot handle real-time streaming data and works on batch inputs only.", + "examples": [ + "Calculate conversion rate and funnel drop-offs for e-commerce checkout funnel steps.", + "Generate detailed conversion metrics for user onboarding process using event logs.", + "Analyze time to convert users from 'Signup' to 'First Purchase' using last month's data." + ] + }, + "tags": [ + "data-analytics", + "conversion", + "funnel-analysis", + "user-behavior", + "metrics", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"timestamp\":\"2024-04-01T10:00:00Z\",\"userId\":\"u1\",\"eventType\":\"landing_page\"},{\"timestamp\":\"2024-04-01T10:05:00Z\",\"userId\":\"u1\",\"eventType\":\"signup\"},{\"timestamp\":\"2024-04-01T10:15:00Z\",\"userId\":\"u1\",\"eventType\":\"purchase\"},{\"timestamp\":\"2024-04-01T11:00:00Z\",\"userId\":\"u2\",\"eventType\":\"landing_page\"},{\"timestamp\":\"2024-04-01T11:10:00Z\",\"userId\":\"u2\",\"eventType\":\"signup\"}],\"conversionFunnelSteps\":[\"landing_page\",\"signup\",\"purchase\"],\"timeWindowMinutes\":60,\"groupByUserId\":true,\"outputFormat\":\"summary\"}", + "description": "Calculate basic conversion rate and funnel drop-offs within 60 minutes time window, grouping by userId for a simple funnel with landing page, signup, and purchase events." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "data-analytics.createQuote", + "description": "Generates a motivational or business-related quote based on input themes, keywords, or data insights. Accepts parameters to customize tone, length, and style, processes the input to synthesize a relevant and impactful quote, and outputs the generated quote text along with metadata about its style and source inspiration.", + "category": "data-analytics", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "Primary theme or topic around which the quote should be generated, e.g., leadership, innovation.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "Specific keywords to incorporate into the quote to tailor its content; optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the quote, e.g., inspirational, humorous, formal.", + "required": false, + "defaultValue": "inspirational" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the quote to fit presentation constraints.", + "required": false, + "defaultValue": "140" + }, + { + "name": "style", + "type": "string", + "description": "Style of the quote such as classical, modern, poetic, or business jargon-oriented.", + "required": false, + "defaultValue": "modern" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote string, theme, tone, style, and an optional brief explanation of the quote's context or inspiration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate contextually relevant, concise motivational or analytical quotes for reports, presentations, or dashboards to enhance data storytelling or audience engagement. It helps produce customized, stylistically appropriate quotes that align with the thematic needs of the analysis.", + "limitations": "Cannot generate quotes that require deep domain-specific expertise or personal anecdotes. It also may not produce perfectly original quotes but synthesizes from learned patterns.", + "examples": [ + "Generate an inspirational quote about innovation using keywords 'creativity' and 'change'.", + "Create a formal, business-style quote on leadership within 100 characters.", + "Provide a humorous quote related to teamwork without specific keywords." + ] + }, + "tags": [ + "generation", + "quote", + "data-insight", + "motivational", + "text-synthesis", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"innovation\",\"keywords\":[\"creativity\",\"change\"],\"tone\":\"inspirational\",\"maxLength\":140,\"style\":\"modern\"}", + "description": "Generate an inspirational quote about innovation incorporating creativity and change." + }, + { + "inputJson": "{\"theme\":\"leadership\",\"tone\":\"formal\",\"maxLength\":100,\"style\":\"business\"}", + "description": "Create a formal business-style leadership quote within 100 characters." + }, + { + "inputJson": "{\"theme\":\"teamwork\",\"tone\":\"humorous\",\"maxLength\":120}", + "description": "Produce a humorous quote related to teamwork with no keywords specified." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "data-analytics.createCertificate", + "description": "Generates a digital X.509 certificate used to securely sign and authenticate data analytics reports or insights. Accepts parameters like public key details, issuer info, validity period, and subject attributes, then creates and returns a signed certificate in standard formats (PEM or DER).", + "category": "data-analytics", + "parameters": [ + { + "name": "subject", + "type": "object", + "description": "Distinguished name fields for the certificate subject (e.g., commonName, organizationName).", + "required": true, + "defaultValue": "" + }, + { + "name": "issuer", + "type": "object", + "description": "Distinguished name fields for the certificate issuer. Use if self-signed; otherwise, specify the Certificate Authority details.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicKeyPem", + "type": "string", + "description": "Public key in PEM format to include in the certificate.", + "required": true, + "defaultValue": "" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the certificate is valid from the issuance date.", + "required": false, + "defaultValue": "365" + }, + { + "name": "serialNumber", + "type": "string", + "description": "Unique serial number for the certificate in hexadecimal format.", + "required": true, + "defaultValue": "" + }, + { + "name": "signatureAlgorithm", + "type": "string", + "description": "Algorithm used to sign the certificate, e.g., sha256WithRSAEncryption.", + "required": false, + "defaultValue": "sha256WithRSAEncryption" + }, + { + "name": "isCa", + "type": "boolean", + "description": "Indicates if the certificate is a CA certificate (can issue other certificates).", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputEncoding", + "type": "string", + "description": "Output format of the certificate: PEM or DER.", + "required": false, + "defaultValue": "PEM" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the certificate data in the specified encoding and metadata like serial number and expiration date." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a digital certificate to secure or authenticate analytics data or reports generated within a system. It helps produce cryptographically signed certificates binding public keys with identifying details, useful for signing data insights, ensuring data integrity and origin authenticity.", + "limitations": "This tool does not handle private key generation or secure storage, nor does it provide a certificate signing service with a trusted third party CA. It only creates certificates from provided public keys and issuer data, so the trust chain depends on external validation.", + "examples": [ + "Create a certificate for signing analytic reports with subject and issuer info and a provided public key.", + "Generate a self-signed CA certificate valid for 1 year to issue subordinate certificates.", + "Produce a PEM-encoded certificate with a specific serial number for data authentication." + ] + }, + "tags": [ + "certificate", + "data security", + "digital signature", + "X.509", + "analytics", + "authentication", + "cryptography" + ], + "examples": [ + { + "inputJson": "{\"subject\":{\"commonName\":\"analytics.example.com\",\"organizationName\":\"Example Analytics\"},\"issuer\":{\"commonName\":\"Example CA\",\"organizationName\":\"Example Org\"},\"publicKeyPem\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn...\\n-----END PUBLIC KEY-----\",\"validityDays\":365,\"serialNumber\":\"01A3F5\",\"signatureAlgorithm\":\"sha256WithRSAEncryption\",\"isCa\":false,\"outputEncoding\":\"PEM\"}", + "description": "Generate a standard user certificate for analytics.example.com valid for 365 days, signed by Example CA." + }, + { + "inputJson": "{\"subject\":{\"commonName\":\"Example Root CA\",\"organizationName\":\"Example Root Org\"},\"issuer\":{\"commonName\":\"Example Root CA\",\"organizationName\":\"Example Root Org\"},\"publicKeyPem\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt...\\n-----END PUBLIC KEY-----\",\"validityDays\":730,\"serialNumber\":\"0001\",\"signatureAlgorithm\":\"sha256WithRSAEncryption\",\"isCa\":true,\"outputEncoding\":\"PEM\"}", + "description": "Generate a self-signed root CA certificate valid for 2 years marked as a CA certificate." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "data-analytics.createCache", + "description": "Creates an in-memory or distributed cache to store computed data insights for faster retrieval and reuse. Accepts configuration parameters such as cache size, eviction policy, and expiration time. Returns a cache instance handle with metadata for monitoring and management.", + "category": "data-analytics", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create, e.g., 'in-memory' or 'distributed'.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxEntries", + "type": "number", + "description": "Maximum number of entries the cache can hold before eviction starts.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "evictionPolicy", + "type": "string", + "description": "Eviction policy to use when maxEntries is reached, e.g., 'LRU', 'FIFO'.", + "required": false, + "defaultValue": "LRU" + }, + { + "name": "expirationSeconds", + "type": "number", + "description": "Time in seconds after which a cached entry expires and is removed.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "enableMetrics", + "type": "boolean", + "description": "Whether to enable cache usage and performance metrics collection.", + "required": false, + "defaultValue": "false" + }, + { + "name": "distributedConfig", + "type": "object", + "description": "Configuration object for distributed caches defining cluster nodes and replication settings.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cache identifier, type, capacity, eviction policy, expiration time, and whether metrics are enabled." + }, + "aiAgent": { + "useCase": "Use this tool when you want to improve performance of data analytics processes by caching intermediate or final computed results, reducing repeated expensive calculations or database queries. It is especially useful for real-time dashboards or repeated queries over stable data sets.", + "limitations": "This tool does not manage actual data processing or analytics; it only creates and configures caching layers. It cannot guarantee cache coherence in highly concurrent distributed systems without external coordination.", + "examples": [ + "Create an in-memory cache limited to 500 entries with LRU eviction.", + "Set up a distributed cache across three nodes with 10,000 entries capacity and entry expiration of one hour.", + "Enable cache metrics to monitor hit rate and evictions for performance tuning." + ] + }, + "tags": [ + "data-analytics", + "cache", + "performance", + "in-memory", + "distributed", + "eviction", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"in-memory\",\"maxEntries\":500,\"evictionPolicy\":\"LRU\",\"expirationSeconds\":1800,\"enableMetrics\":true}", + "description": "Create an in-memory cache with 500 max entries, LRU eviction, entries expire after 30 minutes, and metrics enabled." + }, + { + "inputJson": "{\"cacheType\":\"distributed\",\"maxEntries\":10000,\"evictionPolicy\":\"FIFO\",\"expirationSeconds\":3600,\"enableMetrics\":false,\"distributedConfig\":{\"nodes\":[\"10.0.0.1\",\"10.0.0.2\",\"10.0.0.3\"],\"replicationFactor\":2}}", + "description": "Set up a distributed cache across 3 nodes, 10k entries capacity, FIFO eviction, 1 hour expiration, no metrics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "data-analytics.createChannel", + "description": "Creates a data communication channel within a data analytics environment to aggregate, filter, and distribute streaming or batch data from multiple sources. Accepts configuration parameters defining sources, filters, transformations, and subscribers, and outputs a channel object with status and metadata for integration and monitoring.", + "category": "data-analytics", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "Unique name for the channel to identify it within the system.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source identifiers or endpoints from which the channel will receive data.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filtering rules to apply on incoming data to limit or select specific records.", + "required": false, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "Optional list of transformation steps (e.g., aggregation, mapping) to process data within the channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "subscribers", + "type": "array", + "description": "List of subscriber endpoints or handlers that consume or receive processed data from this channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "isRealTime", + "type": "boolean", + "description": "Flag indicating if the channel processes data streams in real time or batches at intervals.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxBufferSize", + "type": "number", + "description": "Maximum number of data records to buffer in the channel before processing or forwarding.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the channel ID, configuration summary, current status, creation timestamp, and integration metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to establish a structured data pipeline channel for aggregating and processing analytics data in real time or batches, enabling complex workflows like filtering, transformation, and distribution to multiple consumers.", + "limitations": "This tool does not implement actual data storage or processing engines, nor does it handle secure authentication methods for sources or subscribers; it only configures logical communication channels within the analytics environment.", + "examples": [ + "Create a real-time channel aggregating logs from multiple servers with filtering on error level and forwarding to dashboard subscriber.", + "Set up a batch channel that transforms daily sales data with aggregation and sends result to BI tool subscriber.", + "Build a streaming channel that receives sensor data, applies a threshold filter, and alerts subscribers upon anomalies." + ] + }, + "tags": [ + "data", + "analytics", + "channel", + "streaming", + "batch-processing", + "filter", + "transform", + "distribution" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"errorLogs\",\"dataSources\":[\"server1_logs\",\"server2_logs\"],\"filters\":{\"level\":\"error\"},\"transformations\":[],\"subscribers\":[\"dashboardService\"],\"isRealTime\":true,\"maxBufferSize\":500}", + "description": "Create a real-time channel called errorLogs that collects error level logs from multiple servers and forwards them to the dashboard." + }, + { + "inputJson": "{\"channelName\":\"dailySalesBatch\",\"dataSources\":[\"salesDB\"],\"filters\":{},\"transformations\":[{\"type\":\"aggregate\",\"field\":\"amount\",\"operation\":\"sum\"}],\"subscribers\":[\"biTool\"],\"isRealTime\":false,\"maxBufferSize\":10000}", + "description": "Create a batch processing channel for daily sales data that sums sales amounts and sends results to BI tool." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "data-analytics.createBlogPost", + "description": "Generates a comprehensive blog post that analyzes given datasets and visualizes insights. The tool accepts raw data or data URLs, topics to focus on, and visualization preferences, then produces an optimized text post with charts and conclusions suitable for publishing.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "URL or base64-encoded string containing raw tabular data or JSON dataset to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisTopics", + "type": "array", + "description": "Array of key topics or questions to guide data analysis, e.g., ['sales trends', 'customer demographics'].", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "Preferred chart types for data visualization such as ['bar', 'line', 'pie'].", + "required": false, + "defaultValue": "[\"bar\",\"line\"]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience to tailor writing style, e.g., 'marketing professionals'.", + "required": false, + "defaultValue": "" + }, + { + "name": "postLength", + "type": "number", + "description": "Approximate desired length of the blog post in words. Default is 1000 words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate an executive summary at the start of the post.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language of the blog post output, ISO code like 'en' or 'es'.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured blog post including title, introduction, analysis sections with embedded chart data, summary, and conclusion." + }, + "aiAgent": { + "useCase": "Use this tool when you have analytic data and want to create a professional, reader-friendly blog post that presents insights and visualized data clearly to a specified audience. It is ideal for content marketers or data analysts preparing posts based on data findings.", + "limitations": "The tool cannot access live data sources on its own—you must provide data input. It is focused on structured dataset analysis and may not handle unstructured text data well. Also, it produces static content and charts, not interactive dashboards.", + "examples": [ + "Create a 1200-word blog post analyzing customer purchase data with bar and pie charts for marketing managers.", + "Generate a concise blog post summarizing quarterly sales trends including line charts and an executive summary, in Spanish.", + "Produce an 800-word post focusing on user demographics with appropriate visualizations for a general audience." + ] + }, + "tags": [ + "data-analytics", + "blog-post", + "content-generation", + "data-visualization", + "marketing", + "reporting", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"https://example.com/salesdata.csv\",\"analysisTopics\":[\"monthly sales\",\"regional performance\"],\"visualizationTypes\":[\"bar\",\"line\"],\"targetAudience\":\"sales managers\",\"postLength\":1200,\"includeSummary\":true,\"language\":\"en\"}", + "description": "Generate a detailed blog post on sales data with bar and line charts for sales managers." + }, + { + "inputJson": "{\"dataSource\":\"eyJ1c2VycyI6WyJNaWtleSIsIkFsaWNlIiwiQm9iIl19\",\"analysisTopics\":[\"user demographics\"],\"visualizationTypes\":[\"pie\"],\"postLength\":800,\"includeSummary\":true,\"language\":\"en\"}", + "description": "Create a short blog post analyzing provided user demographic data with pie charts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "data-transformation.analyzeHeading", + "description": "Analyzes heading text content to extract structural and semantic information. Accepts a string representing a heading (e.g., from a document or webpage), processes it to detect heading level, text complexity, key phrases, and language tone, then outputs a detailed analysis object summarizing these attributes.", + "category": "data-transformation", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The text content of the heading to analyze, must be a non-empty string.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxKeyPhrases", + "type": "number", + "description": "Maximum number of key phrases to extract from the heading text. Optional parameter, default is 5.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze and include sentiment and tone details in the output. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "ISO language code of the heading text to guide language-specific analysis, defaults to 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing heading analysis results including detected heading level (1-6), length metrics, extracted key phrases, estimated reading complexity, language detected, and optionally sentiment and tone analysis." + }, + "aiAgent": { + "useCase": "Use this tool when an agent encounters heading text from documents or web content and needs to understand its structural role (e.g., H1 vs H3), the complexity of wording, key thematic phrases, or sentiment conveyed by the heading. Useful for document summarization, content restructuring, or SEO analysis.", + "limitations": "This tool does not generate headings or rewrite text. It cannot determine heading level from plain text alone without structural context, so level detection may rely on conventions or input hints.", + "examples": [ + "Analyze the heading text 'Introduction to Machine Learning' to determine key phrases and complexity.", + "Given the heading 'Warning: System Overload Detected', identify sentiment and likely heading importance level.", + "Extract the top 3 key phrases and analyze tone for the heading 'Upcoming Features in Our Product Roadmap'." + ] + }, + "tags": [ + "analysis", + "heading", + "content-structure", + "text-analysis", + "semantic", + "seo", + "document" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Chapter 1: Getting Started with Python\",\"maxKeyPhrases\":3,\"includeSentiment\":true}", + "description": "Analyze a chapter heading to extract key phrases and sentiment." + }, + { + "inputJson": "{\"headingText\":\"Warning: Battery Low\",\"includeSentiment\":true,\"language\":\"en\"}", + "description": "Analyze a warning heading for sentiment and key phrase extraction." + }, + { + "inputJson": "{\"headingText\":\"Features & Benefits of the New Platform\",\"maxKeyPhrases\":5}", + "description": "Analyze heading to extract up to five key phrases without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "data-transformation.analyzeTrend", + "description": "Analyzes time series or sequential numerical data to identify trends, seasonality, and significant changes. Accepts structured datasets such as arrays of timestamped values, performs statistical and smoothing methods, and outputs summarized trend characteristics and detected anomalies.", + "category": "data-transformation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points where each point includes a timestamp and a numeric value to analyze. Required format: [{\"timestamp\":\"ISO8601 string\",\"value\":number}, ...].", + "required": true, + "defaultValue": "" + }, + { + "name": "timeField", + "type": "string", + "description": "The property name in each data point representing the time or date. Defaults to 'timestamp'.", + "required": false, + "defaultValue": "\"timestamp\"" + }, + { + "name": "valueField", + "type": "string", + "description": "The property name in each data point representing the numeric value. Defaults to 'value'.", + "required": false, + "defaultValue": "\"value\"" + }, + { + "name": "windowSize", + "type": "number", + "description": "Size of the moving window (in number of points) for smoothing or calculating moving averages to help identify trends. Default is 5.", + "required": false, + "defaultValue": "5" + }, + { + "name": "detectSeasonality", + "type": "boolean", + "description": "Whether to analyze and report seasonal patterns in the data. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to detect significant deviations or anomalies in the data trend. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "seasonalityPeriod", + "type": "number", + "description": "Expected periodicity length (in data points) for seasonality analysis if seasonality detection is enabled. For example, 12 for monthly data with yearly seasonality. If 0 or omitted, the tool will attempt to infer seasonality.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary of detected trends including slope and direction, identified seasonal cycles (if any), list of detected anomalies with timestamps, and a smoothed version of the input data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract meaningful insights from sequential or time series numeric data, such as sales figures, sensor readings, or performance metrics. It helps characterize overall trends, identify repeating seasonal patterns, and highlight unusual spikes or drops for monitoring or reporting purposes.", + "limitations": "Cannot automatically infer causal factors behind trends or anomalies. It depends on the quality and regularity of input data and may have reduced accuracy with sparse or highly noisy datasets.", + "examples": [ + "Analyze sales data to find upward or downward trends over the last year.", + "Detect seasonal patterns and anomalies in daily website traffic statistics.", + "Summarize trend and unusual points in sensor temperature readings over time." + ] + }, + "tags": [ + "data-transformation", + "trend-analysis", + "time-series", + "analytics", + "seasonality", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2023-01-01T00:00:00Z\",\"value\":100},{\"timestamp\":\"2023-01-02T00:00:00Z\",\"value\":102},{\"timestamp\":\"2023-01-03T00:00:00Z\",\"value\":105},{\"timestamp\":\"2023-01-04T00:00:00Z\",\"value\":103},{\"timestamp\":\"2023-01-05T00:00:00Z\",\"value\":108}],\"timeField\":\"timestamp\",\"valueField\":\"value\",\"windowSize\":3,\"detectSeasonality\":false,\"detectAnomalies\":true}", + "description": "Analyze short daily numeric data series for trend and anomalies without seasonality." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2023-01-01\",\"score\":45},{\"date\":\"2023-02-01\",\"score\":50},{\"date\":\"2023-03-01\",\"score\":48},{\"date\":\"2023-04-01\",\"score\":60}],\"timeField\":\"date\",\"valueField\":\"score\",\"windowSize\":2,\"detectSeasonality\":true,\"seasonalityPeriod\":12}", + "description": "Analyze monthly scores with explicit seasonality period and custom field names." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "data-transformation.analyzeReference", + "description": "Analyzes reference data entries to extract, validate, and summarize bibliographic information. Accepts references in various structured text formats (e.g., JSON, RIS, BibTeX), identifies citation elements, validates consistency, and provides a detailed analysis report with parsed fields and metadata completeness.", + "category": "data-transformation", + "parameters": [ + { + "name": "referenceData", + "type": "string", + "description": "The raw reference data to analyze, formatted as a structured text (e.g., JSON string, RIS, or BibTeX entry).", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The format of the input reference data (e.g., 'json','ris','bibtex').", + "required": true, + "defaultValue": "" + }, + { + "name": "validateFields", + "type": "array", + "description": "List of bibliographic fields to validate for completeness and correctness (e.g., ['author','title','year']).", + "required": false, + "defaultValue": "[\"author\",\"title\",\"year\"]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a concise summary of the reference data highlighting key elements.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing parsed bibliographic fields, validation status for specified fields, detected errors or warnings, and an optional summary." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to parse and validate bibliographic reference data from multiple formats to ensure data consistency, completeness, and extract structured metadata for further processing or citation management.", + "limitations": "This tool cannot retrieve or verify references against external databases or perform semantic citation analysis. It only analyzes the given reference data text for structural and field-level consistency.", + "examples": [ + "Analyze a RIS formatted reference to extract fields and check for missing authors.", + "Validate a BibTeX entry's completeness and format correctness.", + "Summarize key bibliographic details from a JSON-encoded reference record." + ] + }, + "tags": [ + "data-transformation", + "reference-analysis", + "bibliography", + "citation", + "validation" + ], + "examples": [ + { + "inputJson": "{\"referenceData\":\"@article{sample2021, author={John Doe}, title={Research on AI}, year={2021}, journal={AI Journal}}\",\"format\":\"bibtex\",\"validateFields\":[\"author\",\"title\",\"year\"],\"includeSummary\":true}", + "description": "Analyze a BibTeX article entry to parse fields and validate required metadata." + }, + { + "inputJson": "{\"referenceData\":\"TY - JOUR\\nAU - Jane Smith\\nTI - Data Analysis in Practice\\nPY - 2020\\nJO - Data Science Review\\nER - \",\"format\":\"ris\",\"validateFields\":[\"author\",\"title\",\"year\",\"journal\"],\"includeSummary\":false}", + "description": "Validate a RIS formatted journal article reference for completeness without summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "data-transformation.analyzeSession", + "description": "Analyzes user session data logs to extract metrics such as session duration, active time, page views, and user engagement scores. Accepts structured session log input and computes aggregated statistics along with session event summaries as output.", + "category": "data-transformation", + "parameters": [ + { + "name": "sessionLogs", + "type": "array", + "description": "An array of session event objects representing user interactions with timestamps and event types.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone identifier (e.g., 'UTC', 'America/New_York') to properly interpret session timestamps.", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "engagementEventTypes", + "type": "array", + "description": "List of event types to consider for calculating engagement scores (e.g., ['click','scroll','input']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeInactivePeriods", + "type": "boolean", + "description": "Whether to distinguish and include inactive periods between events in session duration calculation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing session-level analytics including total session duration, active duration, number of page views, engagement score, and a timeline summary of events." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw session logs from web or app usage into meaningful analytical metrics that summarize user behavior, session engagement, and navigation patterns. Ideal for session-level user analytics, retention analysis, or behavior tracking pipelines.", + "limitations": "This tool does not perform raw event data cleaning or handle corrupted timestamps. It assumes preprocessed, structured session logs and does not predict future user behavior or segment users beyond session-level aggregation.", + "examples": [ + "Analyze a batch of web session logs to summarize user engagement and session statistics.", + "Calculate session duration and page views from user interaction logs in a specified time zone.", + "Generate engagement scores for sessions based on specified interactive events." + ] + }, + "tags": [ + "session", + "analytics", + "data-transformation", + "user-behavior", + "metrics", + "web-analytics" + ], + "examples": [ + { + "inputJson": "{\"sessionLogs\":[{\"timestamp\":\"2024-05-01T12:00:00Z\",\"eventType\":\"page_load\"},{\"timestamp\":\"2024-05-01T12:05:00Z\",\"eventType\":\"click\"},{\"timestamp\":\"2024-05-01T12:10:00Z\",\"eventType\":\"scroll\"},{\"timestamp\":\"2024-05-01T12:20:00Z\",\"eventType\":\"page_load\"}],\"timeZone\":\"UTC\",\"engagementEventTypes\":[\"click\",\"scroll\"],\"includeInactivePeriods\":false}", + "description": "Calculate session metrics including duration, page views, and engagement score based on clicks and scrolls in UTC time zone." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "data-transformation.analyzeReply", + "description": "Analyzes a text reply or message string to extract sentiment, identify key topics, detect intent, and summarize the content. Accepts textual input and optional language settings, returning a structured object highlighting sentiment metrics, main themes, intent classification, and a concise summary.", + "category": "data-transformation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The full text of the reply or message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the input text (e.g., 'en' for English). This helps tailor analysis models. Defaults to English.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Desired maximum length of the summary output in characters. Defaults to 100.", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis scores in the output. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopics", + "type": "boolean", + "description": "Whether to extract and include key topics from the reply. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeIntent", + "type": "boolean", + "description": "Whether to classify the intent of the reply text. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis results: sentiment scores (if included), list of key topics, intent classification label, and a summary string of the reply content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the contents of a textual reply beyond simple keyword extraction, such as classifying customer feedback, summarizing chat responses, or identifying the intent behind messages. This helps automate response categorization, prioritize follow-ups, or extract insights from communications.", + "limitations": "This tool analyzes textual content only and does not process multimedia inputs. Accuracy of sentiment, topics, and intent detection depends on text quality and supported language. It may not perfectly handle sarcasm, idioms, or very short inputs.", + "examples": [ + "Analyze the sentiment and main topics of this customer reply: 'I'm really disappointed with the service, but your support team was helpful.'", + "Summarize this email reply and identify its intent to decide next steps.", + "Detect whether the user reply is requesting information or making a complaint, and extract key points." + ] + }, + "tags": [ + "analysis", + "text", + "reply", + "sentiment", + "intent", + "summary", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Thank you for the quick response! I appreciate the detailed explanation and the support provided.\",\"language\":\"en\"}", + "description": "A polite customer reply containing positive sentiment and appreciation." + }, + { + "inputJson": "{\"text\":\"I'm not satisfied with the product quality and I want a refund.\",\"includeSentiment\":true,\"includeIntent\":true}", + "description": "A negative feedback reply that likely contains a refund intent." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "data-transformation.analyzeThread", + "description": "Analyzes a communication thread provided as a structured dataset (e.g., messages with timestamps, sender, content). Processes include identifying conversation flow, sentiment trends, key topic extraction, and participant activity summaries. Outputs a detailed analytical report describing these aspects in JSON format.", + "category": "data-transformation", + "parameters": [ + { + "name": "threadData", + "type": "array", + "description": "An array of message objects representing the thread. Each message includes sender, timestamp, and content fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') of the thread content to improve text processing and sentiment analysis accuracy.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of key topics to extract from the conversation thread.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze sentiment trends over the conversation timeline.", + "required": false, + "defaultValue": "true" + }, + { + "name": "participantSummary", + "type": "boolean", + "description": "Whether to include per-participant activity summaries such as message counts and active periods.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON report containing conversation flow structure, extracted key topics, sentiment trend data, and participant activity summaries if included." + }, + "aiAgent": { + "useCase": "Use this tool to analyze any structured communication threads like chat logs, email conversations, or forum discussions. It helps summarize important content topics, monitor sentiment changes over time, and identify active participants or influencers within the thread. Useful for generating insights from large message datasets to guide decision-making or automated summarization.", + "limitations": "Does not support unstructured raw text input not formatted as message arrays. Sentiment and topic extraction accuracy depends on language and quality of input text. Complex sarcasm or multilingual content may reduce accuracy.", + "examples": [ + "Analyze sentiment trends and key topics in a Slack conversation channel's message array.", + "Provide participant activity summaries and conversation flow for customer support email thread.", + "Extract up to 3 key discussion topics from a forum discussion thread and detect negative sentiment spikes." + ] + }, + "tags": [ + "data-transformation", + "thread-analysis", + "communication", + "sentiment-analysis", + "topic-extraction", + "participant-summary" + ], + "examples": [ + { + "inputJson": "{\"threadData\":[{\"sender\":\"alice\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"content\":\"Hey team, let's finalize the project plan.\"},{\"sender\":\"bob\",\"timestamp\":\"2024-06-01T10:05:00Z\",\"content\":\"I think we should focus on improving the UI.\"},{\"sender\":\"carol\",\"timestamp\":\"2024-06-01T10:07:00Z\",\"content\":\"Agreed, usability testing showed some issues.\"}],\"language\":\"en\",\"maxTopics\":3,\"includeSentiment\":true,\"participantSummary\":true}", + "description": "Analyze a short project discussion thread to extract up to 3 key topics, sentiment trends, and participant activity summaries." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "data-transformation.analyzeThreat", + "description": "Analyzes threat intelligence data from various input formats such as raw logs, JSON threat feeds, or structured incident reports. It processes the input to extract key indicators of compromise (IOCs), assess threat severity, and identify attack patterns, producing a structured summary report highlighting potential risks and mitigations.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw threat data input as a string, including raw logs, JSON feeds, or text reports to analyze for threats.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data, e.g., 'json', 'log', or 'text' to guide parsing strategy.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "number", + "description": "Minimum severity level (1-10) to include in the output report; threats below this are ignored.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeMitigations", + "type": "boolean", + "description": "Whether to include recommended mitigations for identified threats in the output summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxItems", + "type": "number", + "description": "Maximum number of threats or indicators to report; limits output size for large inputs.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object summarizing identified threats, including indicators of compromise, severity scores, attack patterns, and optional mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when given unstructured or semi-structured threat intelligence data needing extraction and summarization of key security risks. Ideal for converting raw threat reports or logs into actionable insights for security analysts or automated workflows.", + "limitations": "Does not perform real-time network monitoring or deep forensic analysis. Relies on input data quality. It cannot automatically block or remediate threats, only analyze and summarize.", + "examples": [ + "Analyze raw JSON threat feed to extract indicators with severity above 7.", + "Summarize a set of incident logs for key attack patterns and mitigation steps.", + "Filter threat data to only include critical threats and provide actionable recommendations." + ] + }, + "tags": [ + "analysis", + "threat-intelligence", + "security", + "data-transformation", + "ioc", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"{\\\"attacks\\\":[{\\\"ioc\\\":\\\"192.168.1.1\\\",\\\"severity\\\":8,\\\"type\\\":\\\"IP\\\",\\\"description\\\":\\\"Suspicious login attempts\\\"}]}\" , \"inputFormat\":\"json\",\"severityThreshold\":7,\"includeMitigations\":true,\"maxItems\":10}", + "description": "Analyze a JSON formatted threat feed to extract high-severity IOCs with mitigation suggestions." + }, + { + "inputJson": "{\"inputData\":\"Failed login attempt from 10.0.0.5 at 2023-06-15 10:00; possible brute force attack.\", \"inputFormat\":\"text\",\"severityThreshold\":5,\"includeMitigations\":false}", + "description": "Analyze a plain text log entry indicating a potential brute force attack, excluding mitigations in output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "data-transformation.analyzeDeal", + "description": "This tool accepts structured data about a business deal, including financials, parties involved, timelines, and terms. It analyzes key metrics such as deal value, risk factors, duration, and stakeholder profiles to generate a summary report highlighting deal strengths, weaknesses, and potential risks. Output is a detailed analysis object with insights and recommendations.", + "category": "data-transformation", + "parameters": [ + { + "name": "dealData", + "type": "object", + "description": "Structured object containing all relevant details of the deal, including financial terms, parties, timelines, and conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRiskAssessment", + "type": "boolean", + "description": "Flag to include a detailed risk assessment in the output analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) used for all financial calculations and reporting.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail in the analysis report. Options: summary, detailed, comprehensive.", + "required": false, + "defaultValue": "detailed" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summary metrics, risk evaluations, stakeholder insights, and actionable recommendations for the deal." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the parameters and details of a business deal to identify value opportunities, assess risks, and generate data-driven recommendations. It is particularly useful for deal structuring, due diligence automation, and investment decision support.", + "limitations": "The tool relies on the completeness and accuracy of input deal data; it does not perform legal validation or access external databases for verification.", + "examples": [ + "Analyze a new acquisition deal to estimate financial viability and risk.", + "Generate a summary report on partnership terms and forecast potential risks.", + "Assess a contract renewal deal for value and stakeholder impact." + ] + }, + "tags": [ + "data-transformation", + "business", + "deal-analysis", + "risk-assessment", + "financial-analysis", + "recommendation" + ], + "examples": [ + { + "inputJson": "{\"dealData\":{\"parties\":[\"CompanyA\",\"CompanyB\"],\"value\":50000000,\"currency\":\"USD\",\"terms\":{\"paymentSchedule\":\"2 installments\",\"durationMonths\":24},\"riskFactors\":[\"market volatility\",\"regulatory change\"]},\"includeRiskAssessment\":true,\"currency\":\"USD\",\"analysisDepth\":\"detailed\"}", + "description": "Detailed analysis of a $50M deal between two companies including risk assessment and term evaluation." + }, + { + "inputJson": "{\"dealData\":{\"parties\":[\"StartupX\",\"InvestorY\"],\"value\":2000000,\"currency\":\"EUR\",\"terms\":{\"equityStake\":10,\"durationMonths\":36},\"riskFactors\":[\"early-stage risk\"]},\"includeRiskAssessment\":false,\"currency\":\"EUR\",\"analysisDepth\":\"summary\"}", + "description": "Summary report for an early-stage investment deal focusing on financial terms without risk assessment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "data-transformation.downloadCSV", + "description": "Generates and prepares CSV content from structured data inputs, enabling the user to download the data as a CSV file. Accepts JSON array of objects or arrays representing rows, processes it into a CSV format string, and returns a downloadable file link or file content depending on environment.", + "category": "data-transformation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "The array of objects or arrays representing the tabular data rows to convert into CSV; each object represents a row with key-value pairs mapping columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Determines whether to include the header row with column names derived from object keys. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character to use as the delimiter between CSV fields, typically a comma or semicolon. Defaults to comma ','.", + "required": false, + "defaultValue": "," + }, + { + "name": "fileName", + "type": "string", + "description": "The desired file name for the downloaded CSV file, including extension. Defaults to 'data.csv'.", + "required": false, + "defaultValue": "data.csv" + }, + { + "name": "quoteAll", + "type": "boolean", + "description": "If true, all fields will be wrapped in quotes regardless of content. If false, quotes are added only when necessary. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineTerminator", + "type": "string", + "description": "String to use for line breaks between rows. Defaults to '\\n'.", + "required": false, + "defaultValue": "\\n" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV string content and a suggested file name for download. Contains keys: csvContent (string) and fileName (string)." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to convert structured data (usually JSON arrays of objects or arrays) into CSV format for download or export purposes, such as exporting tabular data from APIs, reports, or databases into a user-friendly CSV file. It handles headers, delimiters, and quoting to produce valid CSV text.", + "limitations": "This tool only converts data into CSV text and generates a downloadable CSV string; it does not support complex nested structures beyond flat JSON objects or arrays, nor does it handle online file hosting or large streaming downloads inherently.", + "examples": [ + "Convert an array of JSON objects representing users to a CSV file including headers.", + "Download tabular sensor data represented as arrays with semicolon delimiter and no headers.", + "Generate a CSV file from data but quote all fields regardless of content." + ] + }, + "tags": [ + "data", + "csv", + "download", + "export", + "transformation", + "file", + "tabular", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"name\":\"Alice\",\"age\":30,\"city\":\"New York\"},{\"name\":\"Bob\",\"age\":25,\"city\":\"Los Angeles\"}],\"includeHeaders\":true,\"delimiter\":\",\",\"fileName\":\"users.csv\",\"quoteAll\":false,\"lineTerminator\":\"\\n\"}", + "description": "Convert an array of user objects into a CSV file named 'users.csv' including headers and using comma delimiter." + }, + { + "inputJson": "{\"data\":[[\"Date\",\"Temp\"],[\"2024-06-01\",23],[\"2024-06-02\",21]],\"includeHeaders\":false,\"delimiter\":\";\",\"fileName\":\"temps.csv\",\"quoteAll\":false,\"lineTerminator\":\"\\r\\n\"}", + "description": "Download temperature data represented as arrays with no headers using semicolon delimiter and Windows style line endings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "data-transformation.analyzeHTML", + "description": "Analyzes input HTML content to extract structural and semantic information, such as tag frequency, depth, presence of inline scripts/styles, and summaries of text content. Accepts raw HTML string and optional analysis scope parameters, producing a detailed JSON report of HTML structure and content characteristics.", + "category": "data-transformation", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analyzeScripts", + "type": "boolean", + "description": "Whether to include analysis of inline and external scripts within the HTML.", + "required": false, + "defaultValue": "false" + }, + { + "name": "analyzeStyles", + "type": "boolean", + "description": "Whether to include analysis of inline and external stylesheets within the HTML.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum DOM tree depth to analyze; deeper nodes are ignored to limit processing.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeTextSummary", + "type": "boolean", + "description": "Whether to generate a summary of the textual content within the HTML nodes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "JSON object containing analysis results, including counts of tags, maximum nesting depth, script and style element info, and optional summarized text content." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically evaluate the complexity, structure, and content of HTML documents—for example, to audit web pages for SEO factors, check for excessive nesting, or gather metrics on use of certain tags or embedded scripts/styles. It is useful in workflows where understanding HTML structure aids decision-making or automated validation.", + "limitations": "Does not execute or render HTML; dynamic content generated by JavaScript is not analyzed. It only processes the static provided HTML string. Complex styling rendering and visual layout cannot be determined.", + "examples": [ + "Analyze the complexity and tag distribution of a given HTML page to inform optimization.", + "Extract and summarize textual content from HTML for later natural language processing.", + "Detect presence and count of inline scripts and styles to evaluate webpage security and maintainability." + ] + }, + "tags": [ + "analysis", + "html", + "web", + "structure", + "content", + "seo", + "validation" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"Test

Header

Paragraph text.

\",\"analyzeScripts\":true,\"analyzeStyles\":false,\"maxDepth\":5,\"includeTextSummary\":true}", + "description": "Analyze a small HTML snippet with scripts included, limit depth to 5, and include text summary." + }, + { + "inputJson": "{\"htmlContent\":\"
  • Item 1
  • Item 2
\",\"analyzeScripts\":false,\"analyzeStyles\":false,\"maxDepth\":3,\"includeTextSummary\":false}", + "description": "Analyze a simple HTML list structure without scripts or styles and without text summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "data-transformation.analyzeXML", + "description": "Analyzes XML input data to extract detailed structural information including element counts, attribute usage, and hierarchy depth. Accepts XML as string input and returns a summary report describing the XML document's structure and complexity.", + "category": "data-transformation", + "parameters": [ + { + "name": "xmlString", + "type": "string", + "description": "The XML data as a string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeAttributes", + "type": "boolean", + "description": "Whether to include analysis of attributes usage alongside elements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth of the XML hierarchy to analyze. Nodes beyond this depth are ignored.", + "required": false, + "defaultValue": "10" + }, + { + "name": "ignoreNamespaces", + "type": "boolean", + "description": "If true, ignore XML namespaces when analyzing element names.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured summary containing element counts, attribute statistics, maximum and average node depths, and a sample structure outline." + }, + "aiAgent": { + "useCase": "Use this tool when needing a quantitative and structural overview of XML documents, such as evaluating complexity, validating expected elements, or summarizing unknown XML data. It helps to understand XML structure without fully parsing or transforming it.", + "limitations": "Cannot perform semantic validation against XML schema or DTD. Does not transform or correct XML, only analyzes structure and statistics.", + "examples": [ + "Analyze the structure complexity of a large XML configuration file.", + "Extract counts of elements and attributes from an XML data dump.", + "Summarize maximum depth and common elements in an XML API response." + ] + }, + "tags": [ + "data-transformation", + "XML", + "structure-analysis", + "data-inspection", + "parsing", + "validation", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"xmlString\":\"ValueAnother\",\"includeAttributes\":true,\"maxDepth\":5,\"ignoreNamespaces\":false}", + "description": "Basic XML with two items; includes attribute analysis." + }, + { + "inputJson": "{\"xmlString\":\"Example\",\"includeAttributes\":false,\"maxDepth\":3,\"ignoreNamespaces\":true}", + "description": "XML with namespaces, analyzed ignoring namespace prefixes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "data-transformation.uploadCSV", + "description": "Uploads a CSV file provided as a string or file path, optionally validates its format and content, and converts it into a structured JSON array output. Supports options for delimiter configuration and header presence detection to handle various CSV formats.", + "category": "data-transformation", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV data as a string to be uploaded and processed.", + "required": true, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Optional path to a CSV file to be read and uploaded instead of raw content string.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character that separates values in the CSV, default is comma ','.", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the CSV includes a header row with column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateSchema", + "type": "object", + "description": "Optional schema object to validate each row of CSV after parsing, keys as column names and values as expected data types.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing parsed JSON array named 'data' and an optional 'errors' array that lists any validation or parsing errors." + }, + "aiAgent": { + "useCase": "Use this tool when you need to ingest CSV formatted data either as string content or from a file path for conversion into JSON structured data within your workflow. It is useful for integrating CSV data into automated AI pipelines that require structured inputs. The tool supports delimiter and header configurations as well as optional schema validation for data integrity checks.", + "limitations": "This tool cannot perform advanced data cleansing or transformation beyond basic parsing and schema validation. Very large CSV files may need to be handled externally due to memory constraints. It does not upload files to remote servers but processes content locally within the running environment.", + "examples": [ + "Upload a CSV string representing user data and parse it into JSON array.", + "Load a CSV file from local system path and convert it into JSON with validation against predefined schema.", + "Process a CSV lacking headers by specifying hasHeader as false to generate objects with positional keys." + ] + }, + "tags": [ + "data-upload", + "csv", + "data-conversion", + "json", + "validation", + "file-processing" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"name,age,status\\nAlice,30,active\\nBob,25,inactive\",\"delimiter\":\",\",\"hasHeader\":true}", + "description": "Uploading a simple CSV string with a header to be parsed into JSON." + }, + { + "inputJson": "{\"filePath\":\"/tmp/data.csv\",\"delimiter\":\";\",\"hasHeader\":true}", + "description": "Loading and processing a CSV file with semicolon delimiter and headers from a file path." + }, + { + "inputJson": "{\"csvContent\":\"John,40,active\\nJane,35,active\",\"hasHeader\":false}", + "description": "Uploading CSV string without header where rows are parsed as arrays indexed by position." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "data-transformation.renderWord", + "description": "Renders a given word or phrase into a visually styled HTML snippet or plain text with optional case transformation and simple text decorations. Accepts input text and formatting options, then outputs a string representing the formatted word ready for inclusion in web pages, documents, or UI components.", + "category": "data-transformation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The word or phrase text to render.", + "required": true, + "defaultValue": "" + }, + { + "name": "renderAsHtml", + "type": "boolean", + "description": "If true, output the word wrapped in HTML tags with styles; if false, output plain text with transformations only.", + "required": false, + "defaultValue": "true" + }, + { + "name": "textCase", + "type": "string", + "description": "Transform text case: 'none' (default), 'upper', 'lower', or 'capitalize' each word.", + "required": false, + "defaultValue": "none" + }, + { + "name": "textColor", + "type": "string", + "description": "CSS color value to apply to the text when rendering as HTML (e.g., '#ff0000' or 'blue').", + "required": false, + "defaultValue": "" + }, + { + "name": "fontWeight", + "type": "string", + "description": "CSS font-weight property value (e.g., 'normal', 'bold', 'lighter'). Only applies if renderAsHtml is true.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "italicize", + "type": "boolean", + "description": "If true, render the text italicized (HTML or plain text with _underscores_).", + "required": false, + "defaultValue": "false" + }, + { + "name": "underline", + "type": "boolean", + "description": "If true, render the text with underline decoration (HTML or plain text with underscores).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'renderedText' with the rendered representation of the input word according to the specified options." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to output a single word or short phrase with simple visual styling or case formatting, especially for embedding in HTML content or styled text output. It helps standardize basic text presentation without complex layout or graphics. Examples include generating colored labels, emphasis styling, or formatted keywords in document generation or web UIs.", + "limitations": "This tool does not support complex rich text formatting, multiline text, or advanced typography. It cannot render images, fonts beyond basic font-weight, or dynamic interactions. It focuses on single-word or short phrases, not paragraphs or large text blocks.", + "examples": [ + "Render the word 'hello' in uppercase and bold blue text as HTML.", + "Render the phrase 'Data Transformation' capitalized, italicized, and underlined in plain text.", + "Output the word 'example' lowercased and colored red in an HTML span tag." + ] + }, + "tags": [ + "text", + "rendering", + "formatting", + "HTML", + "word", + "visual-style" + ], + "examples": [ + { + "inputJson": "{\"text\":\"hello\",\"renderAsHtml\":true,\"textCase\":\"upper\",\"textColor\":\"blue\",\"fontWeight\":\"bold\",\"italicize\":false,\"underline\":false}", + "description": "Render 'hello' in uppercase, bold, blue color as HTML." + }, + { + "inputJson": "{\"text\":\"Data Transformation\",\"renderAsHtml\":false,\"textCase\":\"capitalize\",\"italicize\":true,\"underline\":true}", + "description": "Render 'Data Transformation' capitalized, italic, and underlined in plain text." + }, + { + "inputJson": "{\"text\":\"example\",\"renderAsHtml\":true,\"textCase\":\"lower\",\"textColor\":\"#ff0000\",\"fontWeight\":\"normal\",\"italicize\":false,\"underline\":false}", + "description": "Render 'example' lowercased and red in HTML span." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "data-transformation.sendComment", + "description": "This tool accepts structured comment data and sends it to a specified API endpoint or message service. It processes input parameters including comment text, author info, and destination details, then performs the data transformation into the required format and transmits the comment. The output confirms delivery status and includes message metadata.", + "category": "data-transformation", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the comment author.", + "required": false, + "defaultValue": "\"Anonymous\"" + }, + { + "name": "authorId", + "type": "string", + "description": "Unique identifier for the comment author.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "The API endpoint or messaging service URL to which the comment will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token for accessing the target API or service.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata or tags related to the comment, provided as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "format", + "type": "string", + "description": "Data format to send the comment in, e.g., 'json', 'xml'.", + "required": false, + "defaultValue": "\"json\"" + }, + { + "name": "notifyUser", + "type": "boolean", + "description": "Flag indicating whether to notify the user after comment is sent.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, including success boolean, message ID if applicable, timestamp, and any error details." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to send user-generated comments or feedback to external APIs or messaging services, transforming the input data into a correct format and ensuring secure and reliable transmission. Suitable for embedding comments into third party platforms, discussion boards, or content management systems.", + "limitations": "This tool cannot generate comment content or moderate comments; it only formats and sends provided comment data. It cannot interact with proprietary or unsupported APIs without exact endpoint and authentication details.", + "examples": [ + "Send a user comment to a public API for moderation.", + "Transmit author and comment data to a CMS comment endpoint.", + "Notify a discussion thread service about a new comment with metadata tags." + ] + }, + "tags": [ + "data-transformation", + "communication", + "comment", + "API", + "send", + "message", + "feedback" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"This is a great article!\",\"authorName\":\"John Doe\",\"destinationUrl\":\"https://api.example.com/comments\",\"authToken\":\"abc123\",\"format\":\"json\",\"notifyUser\":true}", + "description": "Send a JSON-formatted comment with author info and notify the user after success." + }, + { + "inputJson": "{\"commentText\":\"Needs more details.\",\"destinationUrl\":\"https://cms.example.org/post/1234/comments\",\"format\":\"xml\"}", + "description": "Send a comment in XML format to a CMS comments endpoint without author information." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "data-transformation.formatCSV", + "description": "Transforms raw CSV text input into a formatted CSV string applying configurable options like delimiter, quoting, line terminator, header capitalization, trimming, and field ordering. Accepts CSV as string, processes formatting rules, and outputs a clean, standardized CSV string for data interoperability or display.", + "category": "data-transformation", + "parameters": [ + { + "name": "csvString", + "type": "string", + "description": "Raw CSV data as a string input to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Field delimiter character to use in output CSV, typically comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteFields", + "type": "boolean", + "description": "Whether to wrap fields in quotes (e.g., double quotes) when needed or always.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character used for quoting fields, usually double quote.", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineTerminator", + "type": "string", + "description": "String to use for line breaks, e.g., \\n or \\r\\n.", + "required": false, + "defaultValue": "\n" + }, + { + "name": "capitalizeHeaders", + "type": "boolean", + "description": "Whether to capitalize the CSV header row fields.", + "required": false, + "defaultValue": "false" + }, + { + "name": "trimFields", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from each field.", + "required": false, + "defaultValue": "true" + }, + { + "name": "fieldOrder", + "type": "array", + "description": "Array of strings specifying desired order of fields in output; fields not listed remain in original order at end.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the formatted CSV string as output in 'formattedCsv' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to clean up or standardize raw or inconsistently formatted CSV data, such as changing delimiters, quoting conventions, line endings, or reordering columns, before further processing or presentation.", + "limitations": "Does not parse malformed or deeply nested CSV with complex embedded newlines reliably. Does not perform CSV validation beyond formatting adjustments.", + "examples": [ + "Format a raw CSV string replacing semicolons with commas and ensuring all fields are quoted.", + "Capitalize header row fields and reorder columns to a specified sequence.", + "Change line endings from Unix (\\n) to Windows (\\r\\n) style in a CSV string." + ] + }, + "tags": [ + "data", + "transformation", + "formatting", + "csv", + "delimiter", + "quoting", + "header", + "cleanup" + ], + "examples": [ + { + "inputJson": "{\"csvString\":\"name;age;city\\nAlice;30;New York\\nBob;25;Los Angeles\",\"delimiter\":\",\",\"quoteFields\":true,\"capitalizeHeaders\":true}", + "description": "Convert semicolon-delimited CSV to comma-delimited, quote all fields and capitalize headers." + }, + { + "inputJson": "{\"csvString\":\"id,name,score\\n2,John,82\\n1,Alice,90\",\"fieldOrder\":[\"name\",\"id\",\"score\"],\"trimFields\":true}", + "description": "Reorder columns to have name first, trim fields of whitespace." + }, + { + "inputJson": "{\"csvString\":\"product,price\\nPen,1.20\\nNotebook,2.50\",\"lineTerminator\":\"\\r\\n\",\"quoteFields\":false}", + "description": "Change line endings to Windows style \\r\\n and disable field quoting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "data-transformation.formatEndpoint", + "description": "Formats a programming API endpoint definition object into a standardized string or code snippet. Accepts structured input representing endpoint details like HTTP method, URL path, query parameters, and response schema. Outputs a formatted endpoint string in REST or GraphQL style for documentation or code generation.", + "category": "data-transformation", + "parameters": [ + { + "name": "endpointDefinition", + "type": "object", + "description": "An object describing the endpoint including method, path, parameters, headers, and response schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The desired format style of the output, e.g., 'REST', 'GraphQL', or 'OpenAPI'.", + "required": false, + "defaultValue": "REST" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the output string.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include HTTP header details in the formatted output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "A string representation of the formatted endpoint according to the specified style, suitable for use in documentation or code templates." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured endpoint data into readable and standardized API endpoint format strings for documentation, code generation, or developer reference. It helps automate producing consistent endpoint descriptions from object forms.", + "limitations": "Does not generate complete API specification documents or validate endpoint correctness. Only formats single endpoint definitions, not entire API collections.", + "examples": [ + "Format a JSON endpoint definition into a REST style URL and method string.", + "Convert a structured endpoint description to a GraphQL query/mutation signature.", + "Output OpenAPI-style endpoint summary string from input object." + ] + }, + "tags": [ + "formatting", + "API", + "endpoint", + "code generation", + "documentation", + "REST", + "GraphQL" + ], + "examples": [ + { + "inputJson": "{\"endpointDefinition\":{\"method\":\"GET\",\"path\":\"/users/{id}\",\"queryParameters\":[{\"name\":\"expand\",\"type\":\"string\",\"required\":false}],\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"}}}},\"formatStyle\":\"REST\",\"indentation\":2,\"includeHeaders\":false}", + "description": "Format a REST GET endpoint with path parameter and optional query parameter without headers." + }, + { + "inputJson": "{\"endpointDefinition\":{\"method\":\"POST\",\"path\":\"/users\",\"bodyParameters\":{\"name\":\"string\",\"email\":\"string\"}},\"formatStyle\":\"GraphQL\",\"indentation\":4,\"includeHeaders\":true}", + "description": "Format a POST endpoint as a GraphQL mutation including HTTP headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "data-transformation.draftWord", + "description": "This tool generates a well-structured draft of a Word document based on input content provided as text or structured JSON objects. It processes headings, paragraphs, lists, and basic formatting instructions to output a .docx file content encoded as a base64 string for easy integration and storage.", + "category": "data-transformation", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main textual content or JSON string describing document structure like headings, paragraphs, and lists.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to use as the main heading of the Word document.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to automatically generate a table of contents at the beginning.", + "required": false, + "defaultValue": "false" + }, + { + "name": "author", + "type": "string", + "description": "Name of the document author to include in metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "fontName", + "type": "string", + "description": "Font family to apply for the document text (e.g., Arial, Times New Roman).", + "required": false, + "defaultValue": "Calibri" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in points to apply to the document text.", + "required": false, + "defaultValue": "11" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64 encoded .docx file content and metadata such as the filename and document summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create Word documents from dynamic or structured content inputs, such as reports, summaries, or formatted notes. It's ideal for automating document generation with configurable text and structure without manual editing.", + "limitations": "Cannot create highly complex Word features such as embedded charts, macros, or advanced styles. Supports only basic formatting and structure like headings, paragraphs, lists, and simple metadata.", + "examples": [ + "Create a Word document report from JSON structured content with headings and paragraphs.", + "Draft a meeting summary with specified author and font settings.", + "Generate a legal notice document with a title and table of contents included." + ] + }, + "tags": [ + "data-transformation", + "document-generation", + "word-processing", + "file-output", + "content-formatting" + ], + "examples": [ + { + "inputJson": "{\"content\":\"{\\\"type\\\":\\\"document\\\",\\\"body\\\":[{\\\"type\\\":\\\"heading\\\",\\\"level\\\":1,\\\"text\\\":\\\"Monthly Report\\\"},{\\\"type\\\":\\\"paragraph\\\",\\\"text\\\":\\\"This report summarizes the monthly sales figures.\\\"}]}\"}", + "description": "Generates a Word document with a level 1 heading and one paragraph of text." + }, + { + "inputJson": "{\"content\":\"Executive Summary\\n\\n- Point one\\n- Point two\\n\\nClosing remarks.\",\"title\":\"Summary Report\",\"includeTableOfContents\":true}", + "description": "Creates a Word document titled 'Summary Report' with bullet points and an automatic table of contents." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "data-transformation.composeNotification", + "description": "This tool accepts structured input parameters describing notification content, recipient details, and delivery preferences, and composes a standardized notification message object suitable for sending via various communication channels. It processes the input to assemble subject, body, metadata, and formatting into a consistent output format.", + "category": "data-transformation", + "parameters": [ + { + "name": "recipient", + "type": "object", + "description": "The recipient information including name and contact details required to address the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "The subject or title of the notification, summarizing its purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main message content of the notification, supporting plain text or simple markup.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Preferred delivery channel such as email, SMS, or push notification.", + "required": true, + "defaultValue": "email" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification (e.g., low, normal, high) affecting delivery urgency.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "attachments", + "type": "array", + "description": "An optional list of attachment metadata objects to include with the notification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional custom key-value pairs to include for extended notification details or tracking.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A composed notification object containing all fields properly structured, ready for downstream dispatch systems." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform disparate notification input data (recipient, message, channel) into a consistent structured notification format that can be consumed by messaging services or notification dispatchers. Ideal for preparing notifications before sending via APIs or services that require a unified notification data shape.", + "limitations": "This tool does not send or deliver notifications, nor does it validate recipient inbox availability or channel correctness beyond simple expected values.", + "examples": [ + "Compose a notification to alert a user via email about a password reset.", + "Create a high priority SMS notification with alert text and no attachments.", + "Prepare a push notification with custom metadata for app notifications." + ] + }, + "tags": [ + "data-transformation", + "notification", + "message-composition", + "communication", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"recipient\":{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\"},\"subject\":\"Welcome to Our Service\",\"body\":\"Hello John, thank you for joining our platform.\",\"channel\":\"email\"}", + "description": "Standard email notification composing a welcome message to a user." + }, + { + "inputJson": "{\"recipient\":{\"phone\":\"+1234567890\"},\"subject\":\"Security Alert\",\"body\":\"Unusual login detected in your account.\",\"channel\":\"sms\",\"priority\":\"high\"}", + "description": "High priority SMS alert notification with security information." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "data-transformation.buildInstance", + "description": "This tool constructs a standardized infrastructure instance object from raw configuration data inputs. It accepts input parameters specifying instance type, configuration settings, resource allocations, and tags, processes them into a unified JSON representation of an instance ready for deployment or further automation workflows.", + "category": "data-transformation", + "parameters": [ + { + "name": "instanceType", + "type": "string", + "description": "Specifies the type or class of the infrastructure instance to build (e.g., 't2.micro', 'standard-vm').", + "required": true, + "defaultValue": "" + }, + { + "name": "configuration", + "type": "object", + "description": "Key-value object defining configuration settings such as OS, network settings, environment variables, and software versions.", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceAllocations", + "type": "object", + "description": "Object specifying hardware resources like CPU cores, RAM size in GB, and disk size in GB allocated to the instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of string tags for categorization, labeling, or metadata purposes associated with the instance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region or availability zone where the instance is intended to be deployed.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the fully assembled infrastructure instance, including all input properties merged in a standardized schema suitable for deployment or integration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert diverse raw infrastructure parameters into a standardized instance object for provisioning or infrastructure-as-code automation. Especially useful for agents assembling environment descriptions from disparate inputs before executing deployment pipelines.", + "limitations": "This tool does not perform actual deployment or validation against cloud providers; it only builds the instance data object. It assumes valid input parameters and does not connect to external APIs to verify configurations.", + "examples": [ + "Build an instance specification for a 't2.micro' AWS VM with specific CPU, RAM, and disk sizes.", + "Prepare a standardized configuration object from given environment settings and tags for automated deployment.", + "Create an instance description for a specific region including network and OS parameters for infrastructure provisioning systems." + ] + }, + "tags": [ + "data-transformation", + "infrastructure", + "instance-building", + "configuration", + "automation", + "cloud", + "deployment-preparation" + ], + "examples": [ + { + "inputJson": "{\"instanceType\":\"t2.micro\",\"configuration\":{\"os\":\"Linux\",\"network\":\"vpc-1234\",\"env\":\"prod\"},\"resourceAllocations\":{\"cpuCores\":1,\"ramGb\":1,\"diskGb\":8},\"tags\":[\"webserver\",\"production\"],\"region\":\"us-west-2\"}", + "description": "Build a Linux based t2.micro instance configuration with production tags in us-west-2." + }, + { + "inputJson": "{\"instanceType\":\"standard-vm\",\"configuration\":{\"os\":\"Windows Server 2019\",\"network\":\"default-net\",\"env\":\"staging\",\"software\":[\"IIS\",\".NET\"]},\"resourceAllocations\":{\"cpuCores\":4,\"ramGb\":16,\"diskGb\":100},\"tags\":[\"staging\",\"backend\"],\"region\":\"eu-central-1\"}", + "description": "Create a Windows Server 2019 VM instance configuration with backend staging environment tags in eu-central-1." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "data-transformation.buildQuery", + "description": "Builds a structured database query string (e.g. SQL) based on the provided input parameters describing the query components such as select fields, table name, conditions, grouping, ordering, and limits. Accepts object inputs defining each part and outputs a validated query string for data retrieval.", + "category": "data-transformation", + "parameters": [ + { + "name": "selectFields", + "type": "array", + "description": "List of field names to include in the SELECT clause of the query.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "The name of the database table to query from.", + "required": true, + "defaultValue": "" + }, + { + "name": "whereConditions", + "type": "object", + "description": "Optional filter conditions as key-value pairs or operators to include in the WHERE clause.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "groupByFields", + "type": "array", + "description": "Optional list of fields to group the results by using GROUP BY.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "orderByFields", + "type": "array", + "description": "Optional list of objects with field and direction ('ASC' or 'DESC') to order the query results.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "limit", + "type": "number", + "description": "Optional limit on the number of results to return.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed query string and optionally, any errors or warnings." + }, + "aiAgent": { + "useCase": "Use this tool when generating database query strings programmatically based on dynamic input parameters describing requested data fields, conditions, grouping, and limits. It simplifies building valid query statements from structured inputs without manual string concatenation. Useful for applications needing custom query generation.", + "limitations": "This tool does not execute the query or validate the existence of tables/fields in the actual database. It assumes simple SQL syntax and does not support complex nested subqueries or database-specific dialects.", + "examples": [ + "Build a SELECT query to retrieve user id and name from the 'users' table where 'status' is 'active', ordered by 'created_at' descending, limited to 10 results.", + "Generate a query selecting 'category' and count of items grouped by 'category' from 'products' with price greater than 100.", + "Create a query selecting all fields from 'orders' with no filter and no limits." + ] + }, + "tags": [ + "data", + "query", + "sql", + "builder", + "database", + "transformation" + ], + "examples": [ + { + "inputJson": "{\"selectFields\":[\"id\",\"name\"],\"tableName\":\"users\",\"whereConditions\":{\"status\":\"active\"},\"orderByFields\":[{\"field\":\"created_at\",\"direction\":\"DESC\"}],\"limit\":10}", + "description": "Select id and name from users where status is active, order by created_at descending, limit 10" + }, + { + "inputJson": "{\"selectFields\":[\"category\",\"COUNT(*) as item_count\"],\"tableName\":\"products\",\"whereConditions\":{\"price\":{\"operator\":\">\",\"value\":100}},\"groupByFields\":[\"category\"]}", + "description": "Select category and count items from products with price > 100, grouped by category" + }, + { + "inputJson": "{\"selectFields\":[\"*\"],\"tableName\":\"orders\"}", + "description": "Select all fields from orders with no filters or limits" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "data-transformation.buildComponent", + "description": "Builds a reusable code component from provided data schema and template inputs. Accepts an object describing the component structure, properties, and optionally code snippets. Processes these inputs to output source code in the specified programming language, facilitating consistent and automated creation of UI or backend components.", + "category": "data-transformation", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The name identifier for the component to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentSchema", + "type": "object", + "description": "An object describing properties, types, and structure of the component inputs and outputs.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateLanguage", + "type": "string", + "description": "The target programming or templating language for the component source code, e.g., JavaScript, TypeScript, React, Vue.", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "includeStyle", + "type": "boolean", + "description": "Flag indicating whether to include style definitions or CSS modules with the component.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customCodeSnippets", + "type": "object", + "description": "Optional object containing code snippets or functions to be embedded within the component, keyed by function or section name.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated component source code string and metadata such as file extension and language." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate code components based on structured schemas or templates, enabling rapid prototyping or codebase automation especially for UI or API modules. It helps convert abstract data definitions into executable code.", + "limitations": "Cannot fully interpret complex business logic or dynamic runtime behaviors; output may require manual refinement for edge cases or advanced customization. Does not generate complete application frameworks, only individual components.", + "examples": [ + "Generate a React button component with specified props and embedded event handler code.", + "Build a data model component in TypeScript from property definitions for use in backend API.", + "Create a styled Vue.js input form component including custom validation snippet." + ] + }, + "tags": [ + "code-generation", + "component-building", + "data-transformation", + "ui-components", + "programmatic-code" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"UserCard\",\"componentSchema\":{\"props\":{\"userName\":\"string\",\"userAge\":\"number\"},\"state\":{},\"methods\":{\"handleClick\":\"function\"}},\"templateLanguage\":\"React\",\"includeStyle\":true}", + "description": "Creating a React UserCard component that accepts userName and userAge props, with an event handler and styles included" + }, + { + "inputJson": "{\"componentName\":\"ApiResponseModel\",\"componentSchema\":{\"fields\":{\"id\":\"string\",\"status\":\"string\",\"data\":\"object\"}},\"templateLanguage\":\"TypeScript\",\"includeStyle\":false}", + "description": "Building a TypeScript model component representing an API response schema with typed fields" + }, + { + "inputJson": "{\"componentName\":\"LoginForm\",\"componentSchema\":{\"props\":{},\"state\":{\"username\":\"string\",\"password\":\"string\"},\"methods\":{\"submitForm\":\"function\"}},\"templateLanguage\":\"Vue\",\"includeStyle\":true,\"customCodeSnippets\":{\"submitForm\":\"async function submitForm() { /* handle login */ }\"}}", + "description": "Generating a styled Vue.js login form component with state and a custom login submission function snippet" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "data-transformation.generateSession", + "description": "Generates a structured user session object for analytics by processing raw event data inputs. Accepts arrays of user events with timestamps, event types, and metadata; organizes them into cohesive session records based on configurable inactivity timeout and session identifiers. Outputs standardized session summaries suitable for downstream analytics processing.", + "category": "data-transformation", + "parameters": [ + { + "name": "events", + "type": "array", + "description": "An array of raw user events containing eventType (string), timestamp (ISO 8601 string), and optional metadata (object).", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionTimeoutMinutes", + "type": "number", + "description": "The inactivity period in minutes after which a session is considered ended and a new one started.", + "required": false, + "defaultValue": "30" + }, + { + "name": "userIdField", + "type": "string", + "description": "The name of the field in event objects that identifies the user, defaults to 'userId'.", + "required": false, + "defaultValue": "userId" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include event metadata in the generated session object.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSessionDurationMinutes", + "type": "number", + "description": "Maximum duration of a single session in minutes, beyond which a new session is split.", + "required": false, + "defaultValue": "120" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of session objects, each including sessionId, userId, sessionStart and sessionEnd timestamps, event count, and optionally aggregated metadata." + }, + "aiAgent": { + "useCase": "Use this tool to transform raw user event logs into structured user sessions by grouping events based on user identity and inactivity periods. It supports analytics tasks like user behavior analysis, funnel tracking, and engagement metrics by generating coherent session data.", + "limitations": "This tool does not perform raw event deduplication or error correction; it assumes input events are pre-validated and chronologically accurate. It does not infer missing user identifiers or handle multi-device session stitching inherently.", + "examples": [ + "Generate user sessions from a list of clickstream events with default 30-minute timeout.", + "Create session records for user interactions with a custom 15-minute inactivity timeout.", + "Produce session summaries including all event metadata for detailed analysis." + ] + }, + "tags": [ + "data-transformation", + "analytics", + "sessionization", + "event-processing", + "user-behavior" + ], + "examples": [ + { + "inputJson": "{\"events\":[{\"eventType\":\"pageview\",\"timestamp\":\"2024-04-25T10:00:00Z\",\"userId\":\"user123\"},{\"eventType\":\"click\",\"timestamp\":\"2024-04-25T10:05:00Z\",\"userId\":\"user123\"},{\"eventType\":\"scroll\",\"timestamp\":\"2024-04-25T10:50:00Z\",\"userId\":\"user123\"}],\"sessionTimeoutMinutes\":30}", + "description": "Generates sessions with default 30-minute timeout splitting events into separate sessions when inactivity exceeds 30 minutes." + }, + { + "inputJson": "{\"events\":[{\"eventType\":\"login\",\"timestamp\":\"2024-04-25T08:00:00Z\",\"userId\":\"u1\",\"metadata\":{\"device\":\"mobile\"}},{\"eventType\":\"purchase\",\"timestamp\":\"2024-04-25T08:10:00Z\",\"userId\":\"u1\",\"metadata\":{\"productId\":\"p123\"}}],\"includeMetadata\":true}", + "description": "Generates a session including detailed event metadata for a user with mobile device and purchase information." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "data-transformation.createSession", + "description": "Creates a standardized analytics session object from raw user interaction data provided as input. Accepts arrays of event objects with timestamps and metadata, processes them to segment into sessions based on inactivity timeout, and outputs structured session objects with aggregated properties such as duration, event count, and userId.", + "category": "data-transformation", + "parameters": [ + { + "name": "events", + "type": "array", + "description": "List of user event objects with at least a timestamp field; required for session segmentation.", + "required": true, + "defaultValue": "" + }, + { + "name": "inactivityTimeoutMinutes", + "type": "number", + "description": "Maximum inactivity period in minutes to separate sessions; events separated by longer gaps start new sessions.", + "required": false, + "defaultValue": "30" + }, + { + "name": "userIdField", + "type": "string", + "description": "The property name in event objects that identifies the user; defaults to 'userId'.", + "required": false, + "defaultValue": "userId" + }, + { + "name": "timestampField", + "type": "string", + "description": "The property name in event objects that holds event timestamps; defaults to 'timestamp'.", + "required": false, + "defaultValue": "timestamp" + }, + { + "name": "sessionMetadata", + "type": "object", + "description": "Optional additional metadata to merge into each created session object.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "array", + "description": "An array of session objects. Each session includes sessionId, userId, start and end timestamps, duration in seconds, eventCount, and merged metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw user event data and need to structure it into sessions for analytics purposes. It is particularly useful for segmenting continuous event streams by periods of inactivity and summarizing session-level metrics essential for user behavior analysis.", + "limitations": "This tool does not perform event data validation beyond required fields and assumes sorted event input by timestamp. It does not handle multi-user event streams mixed without user identifiers distinctly.", + "examples": [ + "Create sessions from a list of click and pageview events to analyze user visit durations.", + "Segment user activity events into sessions with a custom inactivity timeout of 15 minutes.", + "Add custom metadata like device type to each created session object." + ] + }, + "tags": [ + "data-transformation", + "analytics", + "session-creation", + "user-behavior", + "event-processing" + ], + "examples": [ + { + "inputJson": "{\"events\":[{\"userId\":\"user1\",\"timestamp\":\"2024-04-01T10:00:00Z\",\"eventType\":\"pageview\"},{\"userId\":\"user1\",\"timestamp\":\"2024-04-01T10:10:00Z\",\"eventType\":\"click\"},{\"userId\":\"user1\",\"timestamp\":\"2024-04-01T11:00:00Z\",\"eventType\":\"pageview\"}],\"inactivityTimeoutMinutes\":30}", + "description": "Create sessions from three events with an inactivityTimeout of 30 minutes to split sessions after a 50 minute gap." + }, + { + "inputJson": "{\"events\":[{\"userId\":\"user2\",\"timestamp\":\"2024-04-02T09:00:00Z\"},{\"userId\":\"user2\",\"timestamp\":\"2024-04-02T09:16:00Z\"}],\"inactivityTimeoutMinutes\":15}", + "description": "Create sessions with a 15 minute timeout, which will split these two events into separate sessions due to 16 minutes gap." + }, + { + "inputJson": "{\"events\":[{\"user_id\":\"user3\",\"time\":\"2024-04-03T08:00:00Z\"},{\"user_id\":\"user3\",\"time\":\"2024-04-03T08:05:00Z\"}],\"userIdField\":\"user_id\",\"timestampField\":\"time\"}", + "description": "Process events with custom field names for user ID and timestamp to create sessions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "data-transformation.createQueue", + "description": "Creates a new queue data structure based on the given configuration parameters. Accepts inputs such as queue name, maximum size, and persistence options, then initializes a queue either in-memory or persistent store. Outputs queue metadata including ID, status, and configuration details.", + "category": "data-transformation", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "Unique name identifier for the queue to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of items the queue can hold. Use 0 for unlimited size.", + "required": false, + "defaultValue": "0" + }, + { + "name": "persistent", + "type": "boolean", + "description": "Whether the queue should be persisted to disk or a database for durability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "storageType", + "type": "string", + "description": "Type of persistent storage to use (e.g., 'redis', 'database'). Required if persistent is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata or configuration parameters for the queue.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created queue's unique identifier, configuration details, status, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to programmatically initialize or provision a queue data structure for message processing, task scheduling, or event handling, optionally with persistence for reliability. It is ideal in workflows requiring dynamic queue creation with specific constraints such as size or durability.", + "limitations": "Does not handle queue consumer or producer logic, message enqueue/dequeue operations, or distributed queue cluster management. It only creates and configures the queue instance.", + "examples": [ + "Create a transient in-memory queue named 'taskQueue' with unlimited size.", + "Create a persistent queue named 'emailQueue' with max size 1000 stored in Redis.", + "Initialize a limited size (500) in-memory queue named 'jobQueue' with custom metadata." + ] + }, + "tags": [ + "data-transformation", + "queue", + "infrastructure", + "data-structures", + "create", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"taskQueue\"}", + "description": "Create a simple in-memory queue named 'taskQueue' with default unlimited size and non-persistent." + }, + { + "inputJson": "{\"queueName\":\"emailQueue\",\"maxSize\":1000,\"persistent\":true,\"storageType\":\"redis\"}", + "description": "Create a persistent Redis-backed queue 'emailQueue' with max size 1000." + }, + { + "inputJson": "{\"queueName\":\"jobQueue\",\"maxSize\":500,\"metadata\":{\"priority\":\"high\",\"region\":\"us-west\"}}", + "description": "Create an in-memory queue 'jobQueue' limited to 500 items with custom priority and region metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "data-transformation.createDeal", + "description": "Creates a structured business deal object from provided raw input data including parties involved, deal terms, and timeline. It processes inputs like deal name, participants, monetary values, milestones, and status, validating and assembling them into a standardized deal JSON output for downstream business workflows.", + "category": "data-transformation", + "parameters": [ + { + "name": "dealName", + "type": "string", + "description": "The descriptive name of the deal to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the deal, each with a name and role.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "The monetary value of the deal in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (e.g., USD, EUR) for the deal value.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The ISO 8601 formatted start date of the deal.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The ISO 8601 formatted end date or expected close date of the deal.", + "required": false, + "defaultValue": "" + }, + { + "name": "milestones", + "type": "array", + "description": "An optional list of key milestones with titles and target dates within the deal lifecycle.", + "required": false, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current status of the deal (e.g., proposal, negotiation, closed-won, closed-lost).", + "required": false, + "defaultValue": "proposal" + } + ], + "returns": { + "type": "object", + "description": "A standardized deal object containing all validated and structured information including participants, value, dates, milestones, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw or semi-structured business deal information into a validated, standardized data object for CRM integration, deal tracking, or further business processing. It ensures consistency and completeness of deal data by enforcing required fields and formatting.", + "limitations": "This tool does not negotiate deal terms or validate external business logic such as legal compliance or currency exchange rates. It only structures and validates input data format and completeness.", + "examples": [ + "Create a deal object from a new contract including parties, value, and timeline.", + "Generate a deal record for a sales pipeline with milestones and current status.", + "Convert a spreadsheet row of deal information into a structured deal JSON." + ] + }, + "tags": [ + "data-transformation", + "deal-management", + "business", + "crm", + "data-structuring", + "sales" + ], + "examples": [ + { + "inputJson": "{\"dealName\":\"Enterprise License Agreement\",\"parties\":[{\"name\":\"Company A\",\"role\":\"Buyer\"},{\"name\":\"Company B\",\"role\":\"Seller\"}],\"dealValue\":500000,\"currency\":\"USD\",\"startDate\":\"2024-07-01\",\"endDate\":\"2025-06-30\",\"milestones\":[{\"title\":\"Contract Signing\",\"date\":\"2024-07-01\"},{\"title\":\"First Delivery\",\"date\":\"2024-09-01\"}],\"status\":\"negotiation\"}", + "description": "Creating a deal representing a complex enterprise license with multiple milestones." + }, + { + "inputJson": "{\"dealName\":\"Consulting Services Agreement\",\"parties\":[{\"name\":\"Consultant X\",\"role\":\"Seller\"},{\"name\":\"Client Y\",\"role\":\"Buyer\"}],\"dealValue\":120000,\"currency\":\"EUR\",\"status\":\"proposal\"}", + "description": "Creating a simple consulting deal with minimal milestones and status as proposal." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "data-transformation.createCluster", + "description": "Creates a virtual infrastructure cluster configuration based on input parameters specifying node types, resource limits, and network settings. Accepts an object describing desired cluster composition, validates settings, and outputs a structured representation of the cluster ready for deployment or further provisioning.", + "category": "data-transformation", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The unique name to assign to the cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "The total number of nodes to include in the cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeType", + "type": "string", + "description": "The type or size of each node (e.g., small, medium, large) defining resource allocation.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region where the cluster resources will be provisioned.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration including subnet IDs, security groups, and VPC settings for the cluster nodes.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Flag to enable automatic scaling of nodes based on load.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to tag the cluster resources for identification and management.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured cluster configuration object containing cluster metadata, node specifications, network setup, and scaling options." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a detailed configuration blueprint for provisioning infrastructure clusters, especially for cloud or container orchestration platforms. It helps translate high-level cluster requirements into a concrete specification for deployment workflows.", + "limitations": "This tool does not perform actual deployment or provisioning of the cluster resources; it only creates configuration data. It assumes input parameters conform to expected formats but does not validate connectivity or resource availability.", + "examples": [ + "Create a cluster named 'analytics-cluster' with 5 medium nodes in the us-east-1 region.", + "Generate a configuration for a small 3-node cluster with autoscaling enabled.", + "Define a cluster with custom network settings and tagged for the finance department." + ] + }, + "tags": [ + "infrastructure", + "cluster", + "configuration", + "provisioning", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"dev-cluster\",\"nodeCount\":3}", + "description": "Create a cluster named 'dev-cluster' with 3 nodes of default medium size." + }, + { + "inputJson": "{\"clusterName\":\"prod-cluster\",\"nodeCount\":10,\"nodeType\":\"large\",\"region\":\"eu-west-2\",\"enableAutoScaling\":true}", + "description": "Generate a production cluster config with 10 large nodes in EU West with autoscaling enabled." + }, + { + "inputJson": "{\"clusterName\":\"test-cluster\",\"nodeCount\":2,\"networkConfig\":{\"subnetIds\":[\"subnet-123\",\"subnet-456\"],\"securityGroups\":[\"sg-789\"]},\"tags\":{\"environment\":\"test\",\"owner\":\"team-a\"}}", + "description": "Create a 2-node test cluster with specified network config and resource tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "data-transformation.createAttachment", + "description": "Creates a standardized attachment object from raw media data for use in applications like messaging, document management, or content publishing. Accepts binary or base64 encoded media data along with metadata such as filename, mime type, and optional description, then outputs a structured attachment object ready for integration or transmission.", + "category": "data-transformation", + "parameters": [ + { + "name": "mediaData", + "type": "string", + "description": "Base64 encoded string or URL of the media data to be attached.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the file including extension, e.g., 'image.png'.", + "required": true, + "defaultValue": "" + }, + { + "name": "mimeType", + "type": "string", + "description": "The MIME type of the media, e.g., 'image/png' or 'application/pdf'.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description or caption for the attachment.", + "required": false, + "defaultValue": "" + }, + { + "name": "size", + "type": "number", + "description": "Optional size of the media data in bytes. If not provided, it may be calculated from the data length.", + "required": false, + "defaultValue": "" + }, + { + "name": "checksum", + "type": "string", + "description": "Optional checksum (e.g., SHA256) of the media data for integrity verification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An attachment object containing the filename, MIME type, encoded media data, description, size, and checksum fields formatted for use in downstream applications." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw media data or references into a consistent attachment object for uploading, messaging systems, or embedding in documents. It standardizes media information and packages associated metadata, enabling seamless data exchange and processing.", + "limitations": "This tool does not fetch or download media data from URLs—it expects media data to be supplied as a base64 string or a valid URL string but does not verify content accessibility. It also does not perform file type validation beyond MIME type assignment.", + "examples": [ + "Create an attachment object from a base64-encoded image for sending in an email.", + "Generate an attachment from a PDF file's base64 content with description for document management.", + "Package an audio file as an attachment with checksum for integrity check." + ] + }, + "tags": [ + "data", + "transformation", + "media", + "attachment", + "base64", + "file", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"mediaData\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"fileName\":\"sample.png\",\"mimeType\":\"image/png\",\"description\":\"Sample image attachment\"}", + "description": "Creating an image attachment from base64 encoded PNG data with description." + }, + { + "inputJson": "{\"mediaData\":\"https://example.com/audio.mp3\",\"fileName\":\"song.mp3\",\"mimeType\":\"audio/mpeg\",\"description\":\"Background music track\"}", + "description": "Creating an audio attachment object from a URL reference with metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "data-transformation.createPipeline", + "description": "Creates a configurable data transformation pipeline that accepts an array of transformation stages defined as JSON objects. Each stage specifies data operations such as mapping, filtering, aggregation, or format conversion. The tool outputs a single pipeline function object that can be executed to process input data sequentially through the stages, producing transformed data as output.", + "category": "data-transformation", + "parameters": [ + { + "name": "stages", + "type": "array", + "description": "An ordered array of transformation stage definitions. Each stage is an object specifying the transformation type and parameters (e.g., filter conditions, map functions, aggregation methods).", + "required": true, + "defaultValue": "" + }, + { + "name": "pipelineName", + "type": "string", + "description": "Optional name identifier for the pipeline.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateStages", + "type": "boolean", + "description": "Whether to validate the stages definitions for correctness before creating the pipeline. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A pipeline function object that can be invoked with data input to process it according to the configured stages and return the transformed output." + }, + "aiAgent": { + "useCase": "Use this tool when you need to build complex, reusable data processing workflows by chaining multiple transformation operations programmatically. It is ideal for agents orchestrating data cleaning, enrichment, or format conversion tasks that require flexible, declarative pipeline definitions.", + "limitations": "This tool does not execute the pipeline but only creates its configuration/function object. It cannot handle transformations outside of its defined stage types or execute asynchronous operations internally.", + "examples": [ + "Create a pipeline that filters out users under 18, maps user names to uppercase, and aggregates by country.", + "Build a pipeline to convert CSV records to JSON objects and then filter based on a specific field value.", + "Define a pipeline that normalizes date formats, enriches records with geolocation, and outputs transformed JSON data." + ] + }, + "tags": [ + "data-transformation", + "pipeline", + "ETL", + "workflow", + "data-processing", + "mapping", + "filtering", + "aggregation" + ], + "examples": [ + { + "inputJson": "{\"stages\":[{\"type\":\"filter\",\"condition\":\"item.age >= 18\"},{\"type\":\"map\",\"mapping\":\"item.name = item.name.toUpperCase()\"},{\"type\":\"aggregate\",\"key\":\"country\",\"operation\":\"count\"}],\"pipelineName\":\"UserDataProcessing\"}", + "description": "Create a pipeline to filter out users below 18, uppercase their names, and aggregate counts by country." + }, + { + "inputJson": "{\"stages\":[{\"type\":\"convertFormat\",\"from\":\"CSV\",\"to\":\"JSON\"},{\"type\":\"filter\",\"condition\":\"item.status === 'active'\"}],\"pipelineName\":\"CSVtoActiveJSON\"}", + "description": "Create a pipeline that converts CSV data to JSON and filters only active records." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "data-transformation.createSchema", + "description": "Creates a JSON Schema based on a user-defined schema description. Accepts input as an object defining fields, their types, and optional constraints. Processes the input to generate a JSON Schema-compatible object that can be used to validate JSON data structures. Outputs the JSON Schema as a JSON object string.", + "category": "data-transformation", + "parameters": [ + { + "name": "schemaDefinition", + "type": "object", + "description": "An object defining the structure fields, their data types, and optional constraints such as required fields, formats, and enum values.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title of the generated JSON Schema document.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description property to include in the JSON Schema to explain its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "requiredFields", + "type": "array", + "description": "List of field names that are required in the schema, if any.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "allowAdditionalProperties", + "type": "boolean", + "description": "Flag to specify if additional properties not defined in schemaDefinition are allowed.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON Schema object string compliant with the JSON Schema specification, representing the defined fields, types, constraints, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you have a description of expected data fields and types and want to programmatically generate a JSON Schema for validation or documentation. It aids in automating schema creation workflows, API design, and data validation setups.", + "limitations": "This tool does not infer schema from raw data samples; it requires explicit schema definitions as input. It does not support generating schemas for deeply nested or complex recursive structures beyond basic object and array types.", + "examples": [ + "Create a JSON Schema to validate an object with 'name' as string, 'age' as integer, and 'email' as string formatted as email.", + "Generate a schema with required fields including 'id' and 'timestamp' plus allow additional properties.", + "Produce a schema describing a product entity with 'id' (string), 'price' (number), and an optional 'tags' array of strings." + ] + }, + "tags": [ + "data-transformation", + "schema-generation", + "json-schema", + "validation", + "data-structure" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinition\":{\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"integer\"},\"email\":{\"type\":\"string\",\"format\":\"email\"}},\"title\":\"User\",\"description\":\"Schema for user data\",\"requiredFields\":[\"name\",\"email\"],\"allowAdditionalProperties\":false}", + "description": "Generate JSON Schema for a user object with name (string), age (integer), email (string, email format), requiring name and email only, disallowing extra properties." + }, + { + "inputJson": "{\"schemaDefinition\":{\"productId\":{\"type\":\"string\"},\"price\":{\"type\":\"number\"},\"tags\":{\"type\":\"array\",\"items\":{\"type\":\"string\"}}},\"title\":\"Product\",\"description\":\"Schema for product data\",\"requiredFields\":[\"productId\",\"price\"],\"allowAdditionalProperties\":true}", + "description": "Generate product schema requiring productId and price, optional tags array of strings, allowing additional properties." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "data-validation.analyzeSession", + "description": "Analyzes session data logs to validate data quality and integrity by checking for completeness, consistency, and anomaly detection. Accepts session datasets in JSON or CSV formats, processes them to identify missing fields, irregular timestamp sequences, and unexpected attribute values, then returns a comprehensive report summarizing the validation results and detected issues.", + "category": "data-validation", + "parameters": [ + { + "name": "sessionData", + "type": "string", + "description": "Raw session data input as a JSON string or CSV text to be validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input session data: either 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "requiredFields", + "type": "array", + "description": "List of required session fields to check for presence and completeness.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestampField", + "type": "string", + "description": "Field name representing the session timestamp for sequence validation.", + "required": true, + "defaultValue": "timestamp" + }, + { + "name": "allowPartial", + "type": "boolean", + "description": "Whether to allow partial sessions with missing fields or treat them as errors.", + "required": false, + "defaultValue": "false" + }, + { + "name": "anomalyThreshold", + "type": "number", + "description": "Threshold above which detected anomalies in session data are flagged (0-1 scale).", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "A detailed validation report containing overall data quality score, lists of missing required fields, detected anomalies, timestamp consistency status, and summary statistics." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to verify the integrity and quality of collected user session data before analytics or machine learning processing. It assists in identifying corrupt, incomplete, or anomalous session records in raw data logs to ensure reliability of downstream analysis.", + "limitations": "It does not perform session content analysis beyond structural and consistency checks and assumes correctness of specified required fields and timestamp formats. It also cannot correct data, only report issues.", + "examples": [ + "Validate session logs for missing fields and timestamp errors.", + "Check session data consistency before building user behavior models.", + "Generate a report highlighting anomalies in recent session datasets." + ] + }, + "tags": [ + "data-validation", + "session-analysis", + "data-quality", + "anomaly-detection", + "analytics", + "integrity-check" + ], + "examples": [ + { + "inputJson": "{\"sessionData\":\"[{\\\"sessionId\\\":\\\"s1\\\",\\\"userId\\\":101,\\\"timestamp\\\":\\\"2024-05-10T12:00:00Z\\\",\\\"duration\\\":300},{\\\"sessionId\\\":\\\"s2\\\",\\\"userId\\\":102,\\\"timestamp\\\":\\\"2024-05-10T12:05:00Z\\\"}]\",\"dataFormat\":\"json\",\"requiredFields\":[\"sessionId\",\"userId\",\"timestamp\",\"duration\"],\"timestampField\":\"timestamp\",\"allowPartial\":false,\"anomalyThreshold\":0.8}", + "description": "Input session JSON array with one session missing 'duration' field, testing missing required field detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "data-validation.analyzeTrend", + "description": "Analyzes numeric time series data to detect and validate statistically significant trends. Accepts arrays of timestamped numerical values, applies optional smoothing and seasonality adjustments, and computes trend direction, strength, and confidence intervals. Returns detailed trend analysis including significance and potential anomalies.", + "category": "data-validation", + "parameters": [ + { + "name": "timeSeriesData", + "type": "array", + "description": "Array of data points each with a timestamp and numeric value to analyze the trend on.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Format of the timestamps in the data (e.g., ISO8601), used to parse dates correctly.", + "required": false, + "defaultValue": "ISO8601" + }, + { + "name": "smoothingMethod", + "type": "string", + "description": "Optional method for smoothing data before analysis, e.g., 'movingAverage' or 'exponential'.", + "required": false, + "defaultValue": "" + }, + { + "name": "smoothingWindow", + "type": "number", + "description": "Window size (number of points) for smoothing if smoothingMethod is specified.", + "required": false, + "defaultValue": "3" + }, + { + "name": "seasonalityAdjust", + "type": "boolean", + "description": "Whether to adjust for seasonal effects before trend analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Statistical confidence level for trend significance tests (e.g., 0.95).", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to detect and flag anomalies in the time series data during analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall trend direction ('upward','downward','none'), strength (numeric score), p-value for trend significance, confidence intervals, and detected anomalies with timestamps." + }, + "aiAgent": { + "useCase": "Use this tool to validate whether a time series data set shows a meaningful trend, either positive or negative, with statistical confidence. Ideal when quality assurance, model validation, or reporting needs a robust, interpretable trend detection from raw or processed data streams.", + "limitations": "It does not perform forecasting or predict future values; it only analyzes historical data trends. It cannot handle non-numeric or categorical data and assumes reasonably clean and uniformly sampled data for best accuracy.", + "examples": [ + "Analyze sales revenue over the last year to confirm if demand is increasing.", + "Check if website traffic data shows a downward trend after the recent marketing campaign.", + "Detect if there are any anomalous spikes in CPU load time series affecting trend analysis." + ] + }, + "tags": [ + "data-validation", + "trend-analysis", + "time-series", + "statistical-analysis", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"timeSeriesData\":[{\"timestamp\":\"2023-01-01T00:00:00Z\",\"value\":120},{\"timestamp\":\"2023-01-02T00:00:00Z\",\"value\":130},{\"timestamp\":\"2023-01-03T00:00:00Z\",\"value\":128},{\"timestamp\":\"2023-01-04T00:00:00Z\",\"value\":135}],\"dateFormat\":\"ISO8601\",\"smoothingMethod\":\"movingAverage\",\"smoothingWindow\":2,\"seasonalityAdjust\":true,\"confidenceLevel\":0.95,\"detectAnomalies\":true}", + "description": "Analyze a short time series with smoothing and seasonality adjustment enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "data-validation.analyzeThread", + "description": "Analyzes a communication thread, such as an email or chat conversation, to validate data quality and integrity. It accepts thread data including messages, timestamps, and participants, then checks for anomalies like missing entries, inconsistent timestamps, message duplication, or irregular participant involvement. Outputs a detailed report highlighting detected issues and overall thread quality metrics.", + "category": "data-validation", + "parameters": [ + { + "name": "threadData", + "type": "object", + "description": "The complete communication thread data, including messages, participants, and timestamps for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateTimestamps", + "type": "boolean", + "description": "Flag to enable validation of message timestamps for chronological consistency.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkDuplicates", + "type": "boolean", + "description": "Flag to enable detection of duplicate or near-duplicate messages within the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "participantConsistencyThreshold", + "type": "number", + "description": "A threshold percentage (0-100) indicating acceptable deviation in participant message frequency before flagging inconsistencies.", + "required": false, + "defaultValue": "10" + }, + { + "name": "maxThreadLength", + "type": "number", + "description": "Optional maximum number of messages to analyze; threads longer than this will be truncated for performance.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing data quality metrics, anomaly counts (missing messages, duplicates, timestamp issues), participant involvement statistics, and a summary overall quality rating." + }, + "aiAgent": { + "useCase": "Use this tool when you need to ensure the integrity and quality of communication threads prior to processing, such as before analysis, archival, or compliance checks. Applicable for validating threads from email systems, chat logs, or discussion forums to detect data corruption, incompleteness, or suspicious patterns.", + "limitations": "This tool does not interpret message content for sentiment or intent, nor does it extract contextual meaning beyond structural and meta-data validation.", + "examples": [ + "Analyze a customer support chat thread for data consistency and missing messages.", + "Validate an email conversation thread for duplication and chronological order before archival.", + "Check a team discussion thread for participant anomalies and message integrity." + ] + }, + "tags": [ + "validation", + "data-quality", + "communication", + "thread-analysis", + "anomaly-detection", + "timestamps", + "duplicates" + ], + "examples": [ + { + "inputJson": "{\"threadData\":{\"messages\":[{\"id\":\"m1\",\"sender\":\"user1\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"content\":\"Hello\"},{\"id\":\"m2\",\"sender\":\"user2\",\"timestamp\":\"2024-06-01T10:01:00Z\",\"content\":\"Hi\"},{\"id\":\"m3\",\"sender\":\"user1\",\"timestamp\":\"2024-06-01T10:01:30Z\",\"content\":\"How can I help?\"}]},\"validateTimestamps\":true,\"checkDuplicates\":true,\"participantConsistencyThreshold\":10,\"maxThreadLength\":1000}", + "description": "Analyzes a short email thread with 3 messages checking timestamps and duplicate detection." + }, + { + "inputJson": "{\"threadData\":{\"messages\":[{\"id\":\"m1\",\"sender\":\"agent1\",\"timestamp\":\"2024-06-02T08:00:00Z\",\"content\":\"Welcome\"},{\"id\":\"m1-duplicate\",\"sender\":\"agent1\",\"timestamp\":\"2024-06-02T08:00:00Z\",\"content\":\"Welcome\"},{\"id\":\"m2\",\"sender\":\"customer\",\"timestamp\":\"2024-06-02T08:05:00Z\",\"content\":\"Thanks!\"}]},\"validateTimestamps\":true,\"checkDuplicates\":true,\"participantConsistencyThreshold\":20,\"maxThreadLength\":500}", + "description": "Checks a chat thread with intentional duplicate messages to test duplicate detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "data-validation.analyzeReply", + "description": "Analyzes the content and structure of a text reply to assess relevance, sentiment, completeness, and compliance with a given context or guidelines. Accepts a reply text and optional context, performs natural language processing to generate a detailed validation report indicating quality, tone, and potential issues, and outputs structured analysis results including scores and flags.", + "category": "data-validation", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The text content of the reply message to analyze for quality and compliance.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextText", + "type": "string", + "description": "Optional contextual information or original query related to the reply to enhance analysis accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "expectedTone", + "type": "string", + "description": "Desired tone of the reply, e.g., formal, friendly, neutral, to check tone adherence.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "checkCompleteness", + "type": "boolean", + "description": "Whether to evaluate if the reply sufficiently addresses the query or topic.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') of the reply text for accurate processing.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including sentiment score, relevance score, completeness flag, tone match boolean, detected issues list, and an overall validation status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to validate or assess a human or machine-generated reply for quality assurance, customer support optimization, or communication auditing. It helps verify that replies are appropriate, relevant, and meet specified tone and completeness criteria.", + "limitations": "Does not generate or correct replies; analysis accuracy depends on available context and language support; subtle sarcasm or complex humor may be misinterpreted.", + "examples": [ + "Analyze a customer service reply for completeness and friendly tone.", + "Check if a technical support response fully addresses the user's query.", + "Validate a chatbot's reply relevance and detect potential compliance issues." + ] + }, + "tags": [ + "text-analysis", + "validation", + "sentiment-analysis", + "completeness-check", + "tone-detection", + "customer-support", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thank you for reaching out. We have processed your request and will update you soon.\",\"contextText\":\"User inquiry about order status.\",\"expectedTone\":\"friendly\",\"checkCompleteness\":true,\"language\":\"en\"}", + "description": "Analyze a support reply to confirm it is friendly and complete in addressing the user's question." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "data-validation.analyzeIncident", + "description": "This tool accepts a security incident report as input, analyzes its structure, content, and consistency, and then produces a detailed assessment highlighting data completeness, logical inconsistencies, potential false positives, and recommendations for improving data quality and incident handling processes.", + "category": "data-validation", + "parameters": [ + { + "name": "incidentData", + "type": "object", + "description": "Structured JSON object representing the detailed incident report to analyze, including metadata, timeline, actions, and indicators.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateCompleteness", + "type": "boolean", + "description": "Flag to check if the incident report contains all required fields and sections for a thorough analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkConsistency", + "type": "boolean", + "description": "Flag to verify that timeline events and incident attributes are logically consistent within the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectFalsePositives", + "type": "boolean", + "description": "Flag to attempt identification of possible false positive indicators within the incident data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format for output report; options include 'summary' for brief and 'detailed' for comprehensive analysis.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing completeness score, consistency issues list, false positive indicators found, and actionable improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to validate or analyze an incoming security incident report for data quality and integrity before further processing or escalation. It helps ensure the incident data is robust, logically coherent, and actionable by identifying gaps or discrepancies.", + "limitations": "This tool cannot resolve incidents or provide root cause analysis beyond data validation scope. It does not replace human expert review for complex incident investigations.", + "examples": [ + "Analyze a newly received incident report JSON object for completeness and consistency before creating a ticket.", + "Validate an incident record to identify contradictory timeline events and suggest corrections.", + "Generate a detailed data quality report on a security incident to guide the SOC team on missing or erroneous information." + ] + }, + "tags": [ + "data-validation", + "security", + "incident-analysis", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"incidentData\":{\"id\":\"INC12345\",\"type\":\"phishing\",\"reportedAt\":\"2024-04-20T10:15:00Z\",\"details\":{\"affectedUsers\":5,\"indicators\":[{\"type\":\"email\",\"value\":\"suspicious@example.com\"}]},\"timeline\":[{\"timestamp\":\"2024-04-19T08:00:00Z\",\"event\":\"email received\"},{\"timestamp\":\"2024-04-20T09:50:00Z\",\"event\":\"reported to SOC\"}]},\"validateCompleteness\":true,\"checkConsistency\":true,\"detectFalsePositives\":true,\"reportFormat\":\"detailed\"}", + "description": "Detailed analysis of a phishing incident report to check all required fields, timeline consistency, and false positive indicators." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "data-validation.analyzeThreat", + "description": "This tool accepts structured threat intelligence data as input, analyzes the data using predefined criteria and heuristics, and outputs a detailed threat risk assessment report. The input can include indicators such as IP addresses, URLs, file hashes, or textual descriptions. The tool processes these inputs to evaluate threat severity, type, and potential impact, producing a structured summary with risk scores and recommended mitigation actions.", + "category": "data-validation", + "parameters": [ + { + "name": "threatData", + "type": "object", + "description": "Structured object containing threat indicators such as IPs, URLs, hashes, or descriptions. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisLevel", + "type": "string", + "description": "The depth of analysis to perform. Options: 'basic', 'intermediate', 'advanced'. Default is 'intermediate'.", + "required": false, + "defaultValue": "intermediate" + }, + { + "name": "includeMitigations", + "type": "boolean", + "description": "Whether to include suggested mitigation strategies in the output report. Default true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of threat entries to analyze from the input data. Default is 100.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured analysis report containing evaluated threat indicators with risk scores, threat categories, confidence levels, and mitigation recommendations when requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate raw or semi-structured threat intelligence data to determine threat levels, categorize threats, and generate actionable risk assessment reports for security teams or automated defenses. It helps prioritize mitigation by scoring threats based on severity and confidence.", + "limitations": "This tool cannot access live threat intelligence feeds or perform real-time detection; it relies solely on the provided input data. It does not replace human analyst judgment and may not detect zero-day threats or new attack variants not covered by its heuristics.", + "examples": [ + "Analyze a batch of suspicious IP addresses and file hashes for potential malware threats with detailed mitigation suggestions.", + "Evaluate an input list of URLs and textual descriptions to classify phishing risks and produce a risk-scored summary.", + "Provide a quick threat risk overview for a limited set of threat indicators with basic analysis level." + ] + }, + "tags": [ + "data-validation", + "threat-analysis", + "security", + "risk-assessment", + "cybersecurity", + "indicator-evaluation" + ], + "examples": [ + { + "inputJson": "{\"threatData\":{\"ips\":[\"192.0.2.0\",\"198.51.100.5\"],\"urls\":[\"http://malicious.example.com\"],\"hashes\":[\"44d88612fea8a8f36de82e1278abb02f\"],\"descriptions\":[\"Suspicious phishing campaign targeting finance sector.\"]},\"analysisLevel\":\"advanced\",\"includeMitigations\":true,\"maxResults\":50}", + "description": "Analyzing multiple threat indicators with advanced depth including mitigations, limited to 50 entries." + }, + { + "inputJson": "{\"threatData\":{\"ips\":[\"203.0.113.15\"]},\"analysisLevel\":\"basic\",\"includeMitigations\":false}", + "description": "Basic analysis of a single IP threat indicator without mitigation suggestions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "data-validation.analyzeDeal", + "description": "Analyzes the integrity and completeness of a deal object containing business transaction details. It accepts deal data including parties, terms, dates, values, and status. The tool validates required fields, data formats, logical consistency (e.g., dates and amount ranges), and outputs a detailed validation report highlighting errors, warnings, and overall data quality metrics.", + "category": "data-validation", + "parameters": [ + { + "name": "dealData", + "type": "object", + "description": "The deal object containing all relevant business transaction data to be analyzed, including parties, terms, and financial info.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateDates", + "type": "boolean", + "description": "Flag to enable validation of date fields for correct format and logical consistency (e.g., start date before end date).", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateAmounts", + "type": "boolean", + "description": "Flag to enable validation of numeric fields such as deal values, ensuring they are positive and within expected ranges.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateParties", + "type": "boolean", + "description": "Flag to enable validation of party information for presence and valid formatting (e.g., non-empty names).", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level ('error','warning','info') of issues to include in the output report.", + "required": false, + "defaultValue": "warning" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing an array of validation issues with severity, messages, affected fields, and an overall status summary with quality score from 0 to 1." + }, + "aiAgent": { + "useCase": "Use this tool when you need to verify that a deal object has all mandatory information correctly formatted and logically consistent before further processing or storage. It is essential in business workflows that handle deal data integrity to prevent errors downstream.", + "limitations": "This tool does not validate legal correctness or enforce company-specific business rules beyond basic logical and format validations. It cannot resolve discrepancies or perform negotiation assessments.", + "examples": [ + "Analyze a deal object to find missing or invalid fields before saving to database.", + "Check if the deal dates and values are valid and consistent.", + "Generate a report summarizing the data quality issues in a newly imported deal record." + ] + }, + "tags": [ + "data-validation", + "deal", + "business", + "integrity", + "quality-assessment", + "validation", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"dealData\":{\"id\":\"D12345\",\"buyer\":\"Acme Corp\",\"seller\":\"Global Inc\",\"startDate\":\"2024-01-10\",\"endDate\":\"2024-01-09\",\"amount\":-5000,\"currency\":\"USD\",\"status\":\"pending\"},\"validateDates\":true,\"validateAmounts\":true,\"validateParties\":true,\"severityThreshold\":\"warning\"}", + "description": "A deal with invalid endDate before startDate and a negative amount, expecting errors on dates and amounts." + }, + { + "inputJson": "{\"dealData\":{\"id\":\"D67890\",\"buyer\":\"\",\"seller\":\"Global Inc\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-06-01\",\"amount\":100000,\"currency\":\"USD\",\"status\":\"confirmed\"},\"validateDates\":true,\"validateAmounts\":true,\"validateParties\":true,\"severityThreshold\":\"info\"}", + "description": "A deal missing buyer name, which triggers a party validation warning or error." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "data-validation.analyzeXML", + "description": "Analyzes XML data by validating against a provided XML Schema (XSD), checking for well-formedness, and reporting detailed errors. Accepts XML content as a string, optional schema for validation, and options to enable strict validation. Returns a comprehensive report including validation status, errors, warnings, and structural insights.", + "category": "data-validation", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "The XML data as a string to be analyzed and validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaContent", + "type": "string", + "description": "Optional XML Schema (XSD) as string to validate the XML content against.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableSchemaValidation", + "type": "boolean", + "description": "Flag to enable or disable validation of XML content against the provided schema. If true and schema is provided, performs schema validation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxErrors", + "type": "number", + "description": "Maximum number of validation errors to collect before stopping further checks.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall validation status, list of errors and warnings with line/column info, and summary metrics about the XML structure." + }, + "aiAgent": { + "useCase": "Use this tool when you need automated validation of XML data for correctness, adherence to an XML Schema, and to get detailed diagnostics for fixes. It is suitable for data integration pipelines, ETL processes, and quality checks before consuming or transforming XML documents.", + "limitations": "Does not perform semantic validation beyond syntax and schema rules. Cannot fix errors automatically. Large XML documents may impact performance depending on environment constraints.", + "examples": [ + "Validate an XML invoice against its XSD to ensure compliance before processing.", + "Check if an XML configuration file is well-formed and report issues with line numbers.", + "Analyze incoming XML data streams for schema compliance and detailed error diagnostics." + ] + }, + "tags": [ + "validation", + "XML", + "data-quality", + "schema-validation", + "error-reporting" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"ToveJaniReminderDon't forget me this weekend!\",\"schemaContent\":\"\",\"enableSchemaValidation\":false,\"maxErrors\":10}", + "description": "Analyze a simple well-formed XML string without schema validation to confirm structure and well-formedness." + }, + { + "inputJson": "{\"xmlContent\":\"123452024-05-01\",\"schemaContent\":\"\",\"enableSchemaValidation\":true,\"maxErrors\":5}", + "description": "Validate an XML invoice against a provided XSD schema with schema validation enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "data-validation.analyzeHTML", + "description": "This tool accepts HTML content as input and performs comprehensive validation to assess structural correctness, semantic HTML usage, accessibility compliance (such as ARIA attributes), and detect common issues like missing alt attributes or unclosed tags. It outputs a detailed report including error counts, warnings, and suggestions for improving HTML quality and accessibility.", + "category": "data-validation", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML content to be analyzed for validation and quality checks.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to include accessibility rules in the analysis, such as ARIA roles and alt attributes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxErrors", + "type": "number", + "description": "Maximum number of errors to report to limit output size (0 means no limit).", + "required": false, + "defaultValue": "0" + }, + { + "name": "customRules", + "type": "array", + "description": "An optional array of custom validation rules to apply, each as a string representing a rule identifier or expression.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing counts of errors, warnings, and detailed messages describing each issue found in the HTML content, including locations and recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to validate raw HTML content for correctness, semantic accuracy, and accessibility compliance, such as preparing web pages for deployment, auditing third-party HTML code, or ensuring accessibility standards are met automatically. It helps identify layout-breaking issues, accessibility gaps, and best practice violations.", + "limitations": "This tool cannot fix HTML automatically; it provides diagnostic information only. It does not perform rendering or dynamic JavaScript analysis, and complex CSS-related layout issues are out of scope.", + "examples": [ + "Analyze an HTML email template for accessibility issues and structural errors.", + "Check a webpage's raw HTML for unclosed tags and missing required attributes before publishing.", + "Validate third-party HTML snippets ensuring they meet semantic HTML5 standards and accessibility guidelines." + ] + }, + "tags": [ + "validation", + "html", + "accessibility", + "quality-assurance", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"Test

Paragraph without closing\",\"checkAccessibility\":true,\"maxErrors\":5}", + "description": "Validate a snippet with missing closing tags and missing image alt attribute, focusing on accessibility." + }, + { + "inputJson": "{\"htmlContent\":\"

\",\"checkAccessibility\":false,\"maxErrors\":0}", + "description": "Analyze simple HTML without accessibility checks and no error limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "data-validation.downloadCSV", + "description": "Downloads a CSV file from a specified URL and validates its structure and content based on provided validation rules. Accepts the CSV file URL and optional validation parameters, processes the CSV data to check conformity with rules like required columns, data types, and row constraints, then outputs a validation summary report and optionally saves the valid CSV locally.", + "category": "data-validation", + "parameters": [ + { + "name": "fileUrl", + "type": "string", + "description": "The HTTPS URL of the CSV file to download and validate.", + "required": true, + "defaultValue": "" + }, + { + "name": "requiredColumns", + "type": "array", + "description": "List of column names that must exist in the CSV file.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "columnTypes", + "type": "object", + "description": "A mapping of column names to expected data types ('string', 'number', 'boolean', 'date').", + "required": false, + "defaultValue": "{}" + }, + { + "name": "maxRows", + "type": "number", + "description": "Optional maximum number of rows to process; if omitted, process all rows.", + "required": false, + "defaultValue": "" + }, + { + "name": "saveLocal", + "type": "boolean", + "description": "If true and CSV passes validation, save the file locally at the specified path.", + "required": false, + "defaultValue": "false" + }, + { + "name": "localSavePath", + "type": "string", + "description": "File system path to save the CSV file if saveLocal is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing validation results: success boolean, errors array detailing issues, total rows checked, and path if saved locally." + }, + "aiAgent": { + "useCase": "Use this tool when your AI agent needs to programmatically retrieve CSV data from a web location and ensure the data meets defined structural and content rules before further processing or storage. It helps automate the validation and downloading steps in data pipelines.", + "limitations": "This tool does not perform advanced data cleansing beyond validation. It assumes the CSV at the URL is accessible and well-formed; handling broken links or malformed CSV files is limited.", + "examples": [ + "Download and validate a CSV file at a URL ensuring columns 'id' and 'email' exist with string types.", + "Download a CSV file and validate all data types of columns to conform, limiting to 1000 rows max.", + "Download a CSV, validate mandatory columns, then save the validated CSV locally for archival." + ] + }, + "tags": [ + "data-validation", + "download", + "CSV", + "data-integrity", + "automation", + "file-processing" + ], + "examples": [ + { + "inputJson": "{\"fileUrl\":\"https://example.com/data/users.csv\",\"requiredColumns\":[\"id\",\"email\"],\"columnTypes\":{\"id\":\"string\",\"email\":\"string\"},\"saveLocal\":false}", + "description": "Download users CSV and validate presence and types of 'id' and 'email' columns without saving locally." + }, + { + "inputJson": "{\"fileUrl\":\"https://data.example.org/sales.csv\",\"requiredColumns\":[\"date\",\"amount\"],\"columnTypes\":{\"date\":\"date\",\"amount\":\"number\"},\"maxRows\":1000,\"saveLocal\":true,\"localSavePath\":\"/data/validated/sales.csv\"}", + "description": "Download sales data CSV, validate with date and number types, limit to 1000 rows, and save locally." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "data-validation.uploadCSV", + "description": "Uploads a CSV file for data validation, checking format, required columns, and row integrity. Accepts a CSV file path or content string, validates structure and data types, and returns a detailed report of validation results including errors and warnings.", + "category": "data-validation", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "CSV data content as a string to be validated.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local path or URL to the CSV file to be uploaded and validated.", + "required": false, + "defaultValue": "" + }, + { + "name": "requiredColumns", + "type": "array", + "description": "List of column names that must exist in the CSV file.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "validateDataTypes", + "type": "boolean", + "description": "Flag to enable checking of data types in each column.", + "required": false, + "defaultValue": "true" + }, + { + "name": "columnDataTypes", + "type": "object", + "description": "Mapping of column names to expected data types (e.g., 'age':'number').", + "required": false, + "defaultValue": "{}" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows allowed in the CSV file. 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Validation report including validity status, list of errors, warnings, and summary details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to ensure the integrity and quality of incoming CSV data before further processing such as import or analysis. It helps detect missing columns, incorrect formats, and data type mismatches to prevent downstream errors.", + "limitations": "Cannot automatically correct corrupted or badly formatted CSV files; does not perform content semantic validation beyond specified types and columns.", + "examples": [ + "Validate if a CSV file at a URL contains required columns 'id' and 'email' and check for data type compliance.", + "Upload raw CSV content string and ensure it does not exceed 1000 rows and matches expected schema.", + "Check a local CSV file for required columns and numeric data types in certain fields before uploading into a database." + ] + }, + "tags": [ + "data", + "validation", + "CSV", + "upload", + "integrity", + "format-check" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"https://example.com/data.csv\",\"requiredColumns\":[\"id\",\"email\",\"createdAt\"],\"validateDataTypes\":true,\"columnDataTypes\":{\"id\":\"number\",\"email\":\"string\",\"createdAt\":\"date\"},\"maxRows\":1000}", + "description": "Validate a remote CSV file ensuring required columns exist and data types match expected schema, with a row limit of 1000." + }, + { + "inputJson": "{\"csvContent\":\"id,email,age\\n1,test@example.com,25\\n2,foo@bar.com,thirty\",\"requiredColumns\":[\"id\",\"email\",\"age\"],\"validateDataTypes\":true,\"columnDataTypes\":{\"id\":\"number\",\"email\":\"string\",\"age\":\"number\"}}", + "description": "Validate raw CSV content string with age column expected to be numeric; detect data type error in second row." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "data-validation.renderImage", + "description": "Renders an image from raw pixel data or base64 input and performs validation checks on the image format, dimensions, and pixel integrity. Accepts input as raw RGBA pixel array or base64 string, verifies image specs, and outputs a validated HTMLImageElement or canvas element for further processing or display.", + "category": "data-validation", + "parameters": [ + { + "name": "imageData", + "type": "array", + "description": "An array of pixel data in RGBA format (numbers 0-255), representing the image raw pixels. Required if base64Image is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "base64Image", + "type": "string", + "description": "A base64 encoded string of the image to render and validate. Used if imageData is not supplied.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "The width of the image in pixels. Required when providing raw imageData.", + "required": false, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "The height of the image in pixels. Required when providing raw imageData.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateFormat", + "type": "boolean", + "description": "If true, validates that image format is PNG or JPEG when using base64Image input.", + "required": false, + "defaultValue": "true" + }, + { + "name": "allowTransparent", + "type": "boolean", + "description": "Whether to allow images with transparency (alpha channel) when validating RGBA data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a rendered HTMLImageElement or HTMLCanvasElement as output, and validation results including success status and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to validate and render image content provided as raw pixel data or base64 strings, ensuring image integrity before downstream processing, such as UI rendering or further analysis. Useful in pipelines where image quality and format compliance are critical to prevent errors.", + "limitations": "Cannot perform complex image content validation such as object recognition or metadata extraction. Does not modify or enhance image quality, only validates format, dimensions, and pixel integrity.", + "examples": [ + "Render and validate a PNG image provided as base64 to ensure it meets dimension and format requirements.", + "Validate raw RGBA pixel data for correct width, height, and transparency before rendering onto a canvas.", + "Check if an uploaded base64 JPEG image conforms to expected size and format, returning rendering output for UI display." + ] + }, + "tags": [ + "image", + "validation", + "rendering", + "pixels", + "base64", + "format-check", + "canvas" + ], + "examples": [ + { + "inputJson": "{\"base64Image\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"validateFormat\":true}", + "description": "Validate and render a base64-encoded PNG image confirming it is a PNG and has correct dimensions." + }, + { + "inputJson": "{\"imageData\":[255,0,0,255,0,255,0,255,0,0,255,255,255,255,0,255],\"width\":2,\"height\":2,\"allowTransparent\":false}", + "description": "Render and validate raw RGBA pixel data for a 2x2 image without transparency." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "data-validation.renderWord", + "description": "This tool accepts a single word string input and renders it into a visually styled HTML snippet, emphasizing validation results such as error, warning, or success states. It processes the word by wrapping it with markup and applying CSS classes corresponding to the specified validation status, producing a clean HTML string output.", + "category": "data-validation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word string to be rendered and styled according to validation status.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationStatus", + "type": "string", + "description": "Validation status to determine styling; accepted values include 'error', 'warning', 'success', or 'neutral'.", + "required": true, + "defaultValue": "neutral" + }, + { + "name": "highlightColor", + "type": "string", + "description": "Optional CSS color to override default highlight color related to the validation status (e.g., '#FF0000', 'blue').", + "required": false, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "string", + "description": "Optional CSS font size for rendering the word (e.g., '16px', '1em').", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalClasses", + "type": "array", + "description": "Additional CSS class names to append for custom styling purposes.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered word as an HTML string with appropriate styling to visually represent validation state." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize or present the validation status of individual words within a user interface, for example in form validation feedback or quality control dashboards. This helps in rendering words with color-coded or styled indications of their validation states, improving clarity and user experience.", + "limitations": "This tool does not perform the actual validation checks on the word itself; it only renders the word according to a provided validation status. It also assumes a context where HTML rendering is supported; it cannot produce plain text output or other markup formats.", + "examples": [ + "Render the word 'password' as an error highlight indicating invalid entry.", + "Display the word 'valid' in green success style after validation.", + "Show the word 'warning' with a yellow highlight color and custom font size for emphasis." + ] + }, + "tags": [ + "data-validation", + "rendering", + "word", + "visualization", + "html", + "styling", + "validation-status" + ], + "examples": [ + { + "inputJson": "{\"word\":\"username\",\"validationStatus\":\"error\"}", + "description": "Render the word 'username' with error styling indicating invalid input." + }, + { + "inputJson": "{\"word\":\"email\",\"validationStatus\":\"success\",\"fontSize\":\"14px\"}", + "description": "Render the word 'email' indicating successful validation with smaller font size." + }, + { + "inputJson": "{\"word\":\"password\",\"validationStatus\":\"warning\",\"highlightColor\":\"#FFA500\",\"additionalClasses\":[\"bold\"]}", + "description": "Render the word 'password' with a custom orange highlight color and bold styling as a warning." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "data-validation.renderText", + "description": "This tool accepts raw text input along with optional formatting and validation rules, processes the text applying simple rendering such as trimming, escaping, and applying validation checks, and outputs a structured result containing the rendered text along with validation status and error messages if any. It helps ensure text data integrity while producing a sanitized output for further processing or display.", + "category": "data-validation", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The original text input to be rendered and validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the text before rendering.", + "required": false, + "defaultValue": "true" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "Whether to escape HTML characters in the text to prevent markup injection.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validationRules", + "type": "object", + "description": "An object defining validation rules such as minLength, maxLength, and regex patterns to validate the text.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered text and validation results including isValid boolean and an array of validation error messages if invalid." + }, + "aiAgent": { + "useCase": "Use this tool when you need to process and validate text input to ensure it meets specified criteria and is safe for display or storage. It is especially useful in data-validation pipelines or user input sanitation where text integrity must be verified before further use.", + "limitations": "Cannot perform complex natural language processing or formatting beyond basic trimming and escaping. Does not support advanced markdown or rich text rendering.", + "examples": [ + "Render and validate a user comment ensuring it is not empty and free of HTML injection.", + "Sanitize user input text from a form submission before saving to database.", + "Validate input text meets length constraints and pattern before processing." + ] + }, + "tags": [ + "text", + "validation", + "sanitization", + "rendering", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\" \",\"trimWhitespace\":true,\"escapeHtml\":true,\"validationRules\":{\"minLength\":1}}", + "description": "Sanitizes a potentially malicious script tag input by trimming whitespace and escaping HTML, validates it is not empty." + }, + { + "inputJson": "{\"rawText\":\"Hello World\",\"trimWhitespace\":true,\"escapeHtml\":false,\"validationRules\":{\"minLength\":5,\"maxLength\":20}}", + "description": "Processes plain text ensuring it meets length constraints without escaping HTML characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "data-validation.formatParagraph", + "description": "Formats a given text paragraph according to specified styling rules. It accepts raw paragraph text and processes it to adjust indentation, line width wrapping, spacing between sentences, and capitalization style. The output is a neatly formatted paragraph string suitable for consistent display or further textual analysis.", + "category": "data-validation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width for wrapping the paragraph text. Lines will break at or before this length if possible.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to indent each new line of the formatted paragraph.", + "required": false, + "defaultValue": "0" + }, + { + "name": "doubleSpaceAfterPeriod", + "type": "boolean", + "description": "Whether to insert two spaces after each period/full stop instead of one.", + "required": false, + "defaultValue": "false" + }, + { + "name": "capitalizeSentences", + "type": "boolean", + "description": "Whether to capitalize the first letter of each sentence in the paragraph.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph string under the 'formattedText' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to standardize or improve the readability of paragraph text data. This includes preparing text for user displays, data exports, or ensuring consistent textual formatting before further NLP processing. It is especially useful when inputs vary in spacing, capitalization, or line breaks.", + "limitations": "This tool does not perform grammatical correction or semantic analysis. It only adjusts formatting aspects such as spacing, wrapping, and capitalization. It assumes the input is in a natural language paragraph structure and may not handle lists or code well.", + "examples": [ + "Format raw paragraph text with line width 60 and indentation of 4 spaces.", + "Convert a paragraph to have double spaces after periods and no indentation.", + "Capitalize sentences and wrap text at 50 characters width." + ] + }, + "tags": [ + "data-validation", + "formatting", + "text-processing", + "paragraph", + "readability" + ], + "examples": [ + { + "inputJson": "{\"text\":\"this is a sample paragraph. it has inconsistent spacing and capitalization. we want to format it properly.\",\"lineWidth\":50,\"indentation\":4,\"doubleSpaceAfterPeriod\":true,\"capitalizeSentences\":true}", + "description": "Formats a paragraph with indentation, wraps lines at 50 characters, double spaces after periods, and capitalizes sentences." + }, + { + "inputJson": "{\"text\":\"lorem ipsum dolor sit amet, consectetur adipiscing elit. sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.\",\"lineWidth\":60,\"indentation\":0,\"doubleSpaceAfterPeriod\":false,\"capitalizeSentences\":false}", + "description": "Formats a paragraph with line wrapping at 60 characters, no indentation, single space after periods, and no capitalization changes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "data-validation.formatSentence", + "description": "Formats and validates sentences according to specified style rules. Accepts a raw input string and processes it to ensure proper capitalization, punctuation, spacing, and optionally corrects common grammatical inconsistencies. Returns a cleaned, standardized sentence string. Useful for preparing text data for downstream NLP or display.", + "category": "data-validation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The raw input sentence string to be formatted and validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeFirstLetter", + "type": "boolean", + "description": "If true, ensures the first letter of the sentence is capitalized.", + "required": false, + "defaultValue": "true" + }, + { + "name": "endWithPeriod", + "type": "boolean", + "description": "If true, ensures the sentence ends with a period (or other specified punctuation).", + "required": false, + "defaultValue": "true" + }, + { + "name": "allowedPunctuation", + "type": "string", + "description": "String of allowed punctuation characters to retain within the sentence.", + "required": false, + "defaultValue": ".,!?;:" + }, + { + "name": "trimSpaces", + "type": "boolean", + "description": "If true, trims extra spaces within the sentence to single spaces and trims leading/trailing spaces.", + "required": false, + "defaultValue": "true" + }, + { + "name": "correctCommonMistakes", + "type": "boolean", + "description": "If true, attempts to automatically fix common grammatical errors like double spaces, misplaced commas, and contractions.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted sentence string and a validity flag indicating if the input met basic sentence criteria (e.g., proper capitalization and termination). Contains 'formattedSentence' (string) and 'isValid' (boolean)." + }, + "aiAgent": { + "useCase": "Use this tool when validating or standardizing textual sentence input for consistency, quality, or downstream processing. It helps clean up input text, ensuring punctuation and capitalization conform to typical sentence standards, improving readability and reducing errors in NLP pipelines.", + "limitations": "This tool does not perform deep grammar or semantic validation. It cannot guarantee full grammatical correctness or context-based fixes, focusing mainly on surface formatting rules.", + "examples": [ + "Format the input sentence to start with a capital letter and end with a period.", + "Ensure the sentence has proper punctuation and trimmed spaces.", + "Fix common spacing and punctuation inconsistencies in the given sentence." + ] + }, + "tags": [ + "formatting", + "validation", + "text-cleaning", + "sentence", + "nlp-preprocessing" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"this is a test sentence\",\"capitalizeFirstLetter\":true,\"endWithPeriod\":true}", + "description": "Formats a lowercase sentence to start with a capital letter and adds a period at the end." + }, + { + "inputJson": "{\"sentence\":\"Hello, world! \",\"trimSpaces\":true}", + "description": "Trims extra trailing spaces from a properly punctuated sentence." + }, + { + "inputJson": "{\"sentence\":\"this is a test, sentence\",\"correctCommonMistakes\":true}", + "description": "Fixes extra spaces and corrects misplaced comma spacing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "data-validation.formatEndpoint", + "description": "Formats API endpoint strings to a standardized, clean URL format. Accepts raw endpoint strings or URL fragments, optionally normalizing path parameters, query strings, and removing redundant slashes. Produces a validated, properly formatted endpoint URL string for consistent API usage or documentation.", + "category": "data-validation", + "parameters": [ + { + "name": "rawEndpoint", + "type": "string", + "description": "The raw endpoint string or URL fragment to format and normalize.", + "required": true, + "defaultValue": "" + }, + { + "name": "normalizePathParameters", + "type": "boolean", + "description": "Whether to standardize path parameter placeholders (e.g., convert :id or {id} to a specific style).", + "required": false, + "defaultValue": "true" + }, + { + "name": "removeTrailingSlash", + "type": "boolean", + "description": "If true, removes any trailing slash from the formatted endpoint unless it is the root '/'", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortQueryParameters", + "type": "boolean", + "description": "Whether to sort query parameters alphabetically when formatting the endpoint.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formattedEndpoint string and a boolean indicating if the endpoint is valid and normalized." + }, + "aiAgent": { + "useCase": "Use this tool when you need to ensure API endpoints are consistently formatted for validation, comparison, or documentation generation, especially when dealing with varying input formats from multiple services or user inputs.", + "limitations": "This tool only formats and normalizes endpoint strings, but it does not validate endpoint existence, HTTP method correctness, or network accessibility.", + "examples": [ + "Format the raw endpoint '/api//v1/users/:userId/' to a clean URL without trailing slash.", + "Standardize endpoints with mixed path parameter formats like '/api/{id}/details' and '/api/:id/details'.", + "Normalize query parameters order in '/api/items?b=2&a=1' for consistent caching or comparison." + ] + }, + "tags": [ + "data-validation", + "formatting", + "endpoint", + "API", + "URL", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"rawEndpoint\":\"/api//v1/users/:userId/\",\"normalizePathParameters\":true,\"removeTrailingSlash\":true,\"sortQueryParameters\":true}", + "description": "Formats endpoint by removing duplicate slashes, normalizing path parameters, and removing trailing slash." + }, + { + "inputJson": "{\"rawEndpoint\":\"/api/{id}/details?sort=desc&page=2&filter=name\",\"normalizePathParameters\":true,\"removeTrailingSlash\":false,\"sortQueryParameters\":true}", + "description": "Standardizes path parameter style and sorts query parameters alphabetically." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "data-validation.composeSummary", + "description": "This tool accepts raw input data along with specified validation results and composes a clear, concise summary document outlining the data quality status. It processes input details about checks performed, errors found, and overall assessment to produce an informative summary report useful for stakeholders.", + "category": "data-validation", + "parameters": [ + { + "name": "inputDataDescription", + "type": "string", + "description": "Description of the input data set that was validated, including its source and format.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationResults", + "type": "object", + "description": "An object detailing validation checks performed, including passed and failed checks with error messages if any.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLevel", + "type": "string", + "description": "Level of detail for the summary; options include 'brief', 'standard', or 'detailed'.", + "required": false, + "defaultValue": "standard" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag indicating whether the summary should include recommendations for correcting detected data issues.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Custom title for the summary report document.", + "required": false, + "defaultValue": "Data Validation Summary Report" + } + ], + "returns": { + "type": "object", + "description": "A summary report object containing reportTitle, summaryText with data validation overview, detected issues, and optional recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a structured textual summary report describing the outcome of data validation processes, aimed at communicating quality status and issues to data owners or stakeholders. It helps condense complex checks into understandable summaries.", + "limitations": "This tool does not perform data validation itself; it relies on provided validation results. It also does not generate highly technical or domain-specific diagnostic reports beyond summarizing given input.", + "examples": [ + "Provide a summary report of the recent validation results on the customer database.", + "Create a brief summary document highlighting key data quality issues found in the sales data.", + "Generate a detailed data validation summary including corrective recommendations for the input data set." + ] + }, + "tags": [ + "data-validation", + "summary", + "report-generation", + "quality-assessment", + "document" + ], + "examples": [ + { + "inputJson": "{\"inputDataDescription\":\"Customer transaction dataset from Q1 2024, CSV format.\", \"validationResults\":{\"missingValues\":5,\"invalidDates\":2,\"duplicateRecords\":0,\"checksPassed\":12,\"checksFailed\":3,\"errorMessages\":[\"Missing customer IDs in 5 records.\",\"Found 2 invalid transaction dates.\"]}, \"summaryLevel\":\"standard\", \"includeRecommendations\":true, \"reportTitle\":\"Q1 2024 Customer Data Validation Summary\"}", + "description": "Generate a standard summary report with recommendations for Q1 2024 customer data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "data-validation.formatInvoice", + "description": "This tool accepts raw invoice data as JSON, validates essential fields according to common invoice standards, formats the data into a standardized invoice structure, and outputs a JSON object with properly formatted dates, amounts, and validated fields to ensure consistency and readiness for downstream processing or display.", + "category": "data-validation", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "JSON object containing raw invoice data to be validated and formatted, including fields like invoice number, date, vendor info, line items, and totals.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Desired date format for the invoice date fields using Moment.js or similar syntax, e.g. 'YYYY-MM-DD' or 'MM/DD/YYYY'.", + "required": false, + "defaultValue": "\"YYYY-MM-DD\"" + }, + { + "name": "currencyCode", + "type": "string", + "description": "ISO 4217 currency code to format monetary values consistently, e.g. 'USD' or 'EUR'.", + "required": false, + "defaultValue": "\"USD\"" + }, + { + "name": "includeTaxDetails", + "type": "boolean", + "description": "Whether to validate and include tax-related details in the formatted invoice output (e.g. VAT, GST).", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, runs validation without formatting and returns validation results only.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object with 'isValid' boolean indicating if input data passed validation, 'formattedInvoice' containing standardized invoice fields (dates, currency, amounts), and 'errors' array listing validation issues if any." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or semi-structured invoice data and require it to be checked for completeness and correctness, then formatted into a consistent structure suitable for accounting systems or further automated processing. It helps ensure invoice data integrity and uniform presentation.", + "limitations": "This tool does not perform OCR or extract invoice data from images or PDFs. It assumes input data is already digitized in JSON form. It also does not generate invoices from scratch or add missing data beyond validation.", + "examples": [ + "Format raw invoice JSON data to standardize date and currency formats.", + "Validate an invoice object for completeness before submission to accounting software.", + "Format an invoice with European date format and Euro currency code." + ] + }, + "tags": [ + "data-validation", + "formatting", + "invoice", + "finance", + "accounting", + "document-processing" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-1001\",\"date\":\"2024-05-30T14:30:00Z\",\"vendor\":{\"name\":\"Acme Corp\",\"taxId\":\"123-456-789\"},\"lineItems\":[{\"description\":\"Widget\",\"quantity\":10,\"unitPrice\":9.99}],\"total\":99.90},\"dateFormat\":\"DD/MM/YYYY\",\"currencyCode\":\"USD\",\"includeTaxDetails\":true,\"validateOnly\":false}", + "description": "Format an invoice with UK date format and USD currency codes, including tax details." + }, + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"2024-0007\",\"date\":\"2024-06-01\",\"vendor\":{\"name\":\"Beta LLC\",\"taxId\":\"987654321\"},\"lineItems\":[{\"description\":\"Service Fee\",\"quantity\":1,\"unitPrice\":1500}],\"total\":1500},\"dateFormat\":\"YYYY-MM-DD\",\"currencyCode\":\"EUR\",\"includeTaxDetails\":false,\"validateOnly\":false}", + "description": "Format invoice data with ISO date and Euro currency, excluding tax details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "data-validation.draftContract", + "description": "This tool helps draft a preliminary contract document by accepting key contract details such as parties involved, contract terms, obligations, and duration. It processes these inputs to generate a coherent contract draft in text or structured format, ensuring required clauses are included and formatted for clarity.", + "category": "data-validation", + "parameters": [ + { + "name": "partyA", + "type": "string", + "description": "Name of the first party in the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "partyB", + "type": "string", + "description": "Name of the second party in the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "contractTerms", + "type": "array", + "description": "List of main contract terms or obligations included in the agreement", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Contract start date in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "durationMonths", + "type": "number", + "description": "Duration of the contract in months", + "required": false, + "defaultValue": "12" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "Legal jurisdiction governing the contract", + "required": false, + "defaultValue": "United States" + }, + { + "name": "confidentialityClause", + "type": "boolean", + "description": "Whether to include a standard confidentiality clause", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted contract text and a summary of included clauses" + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a clear, well-structured initial draft of a contract based on provided parties, terms, and key contract parameters. It is suitable for generating common contracts such as service agreements, NDAs, or partnership contracts.", + "limitations": "This tool cannot provide legally binding contracts or replace professional legal advice. It does not handle complex legal scenarios, custom clauses requiring detailed legal interpretation, or jurisdiction-specific compliance beyond the basic template.", + "examples": [ + "Draft a service agreement contract between Company A and Company B outlining delivery terms, payment schedule, and termination conditions.", + "Generate a partnership contract draft with confidentiality and a 24-month duration.", + "Create an NDA draft between two parties for a software development project effective immediately." + ] + }, + "tags": [ + "contract", + "drafting", + "legal", + "document", + "data-validation", + "agreement" + ], + "examples": [ + { + "inputJson": "{\"partyA\":\"AlphaTech LLC\",\"partyB\":\"Beta Solutions Inc.\",\"contractTerms\":[\"Service scope includes software development and maintenance\",\"Payment of $10,000 monthly\",\"Termination requires 30 days notice\"],\"effectiveDate\":\"2024-07-01\",\"durationMonths\":24,\"jurisdiction\":\"California, USA\",\"confidentialityClause\":true}", + "description": "Draft a service agreement contract between two technology companies with specific terms, 24-month duration, in California jurisdiction." + }, + { + "inputJson": "{\"partyA\":\"Jane Doe\",\"partyB\":\"John Smith\",\"contractTerms\":[\"Non-disclosure of shared proprietary information\"],\"effectiveDate\":\"2024-06-15\",\"durationMonths\":12,\"confidentialityClause\":true}", + "description": "Generate a basic NDA contract draft between two individuals with confidentiality clause and one year duration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "data-validation.draftWord", + "description": "This tool accepts a target meaning or context description and drafts a single word candidate that fits that meaning. It processes the input semantic intent, applies linguistic and contextual rules, and outputs a proposed word that could match the given description. Useful for generating example test tokens or validating vocabulary requirements.", + "category": "data-validation", + "parameters": [ + { + "name": "meaningDescription", + "type": "string", + "description": "A concise description or definition of the meaning or context the word should represent.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Specify the language code (e.g., 'en' for English) for the drafted word.", + "required": false, + "defaultValue": "en" + }, + { + "name": "wordType", + "type": "string", + "description": "Part of speech requested such as noun, verb, adjective, or adverb; influences word choice.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length for the drafted word in characters to control verbosity.", + "required": false, + "defaultValue": "20" + }, + { + "name": "allowNeologism", + "type": "boolean", + "description": "Allow newly coined or invented words if no existing word fits the description well.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the drafted word string and metadata such as confidence or notes." + }, + "aiAgent": { + "useCase": "Use this tool when constructing test data or validating vocabulary integrity by needing a representative word matching a specific meaning or concept. It helps generate or verify single-word candidates for known or speculative meanings in a controlled manner.", + "limitations": "The tool cannot guarantee dictionary correctness or common usage frequency. It may produce neologisms if allowed and does not handle multiword expressions or idioms.", + "examples": [ + "Draft a noun meaning 'the state of being extremely happy'", + "Provide an adjective meaning 'capable of being easily broken'", + "Generate a verb in English that means 'to move stealthily'" + ] + }, + "tags": [ + "validation", + "word-generation", + "lexical", + "test-data", + "semantic-matching" + ], + "examples": [ + { + "inputJson": "{\"meaningDescription\":\"a word meaning 'extremely large in size'\",\"language\":\"en\",\"wordType\":\"adjective\",\"maxLength\":15,\"allowNeologism\":false}", + "description": "Generate an English adjective meaning 'extremely large in size', limiting word length to 15 characters, no neologisms." + }, + { + "inputJson": "{\"meaningDescription\":\"to look quickly or glance\",\"language\":\"en\",\"wordType\":\"verb\",\"maxLength\":10,\"allowNeologism\":true}", + "description": "Generate a verb meaning 'to look quickly or glance', allowing neologisms and max length 10." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "data-validation.composeSentence", + "description": "This tool accepts an array of words or phrases and composes a grammatically coherent English sentence. It validates the input for sentence structure correctness and outputs a single composed sentence string, optionally ensuring proper punctuation and capitalization.", + "category": "data-validation", + "parameters": [ + { + "name": "words", + "type": "array", + "description": "Array of words or phrases to be composed into a sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "ensureGrammar", + "type": "boolean", + "description": "If true, the tool attempts to ensure the sentence is grammatically correct.", + "required": false, + "defaultValue": "true" + }, + { + "name": "capitalizeFirstLetter", + "type": "boolean", + "description": "If true, capitalizes the first letter of the composed sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "addPeriod", + "type": "boolean", + "description": "If true, appends a period at the end of the sentence if none is present.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed sentence string and a validation status indicating grammatical correctness." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a validated, grammatically correct sentence from given components or fragments, such as when summarizing data, generating content from keywords, or validating text inputs for natural language processing tasks.", + "limitations": "This tool cannot ensure semantic meaning or complex syntactic correctness beyond basic grammar rules, nor can it handle highly complex sentence structures or context-dependent meanings.", + "examples": [ + "Compose a sentence from the words ['quick', 'brown', 'fox'] ensuring proper grammar.", + "Generate a sentence using ['data', 'validation', 'is', 'important'] with capitalization and punctuation.", + "Validate and compose a sentence from fragmented phrases ensuring a period at the end." + ] + }, + "tags": [ + "data-validation", + "sentence-composition", + "grammar-check", + "natural-language-processing", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"words\": [\"the\", \"cat\", \"sat\", \"on\", \"the\", \"mat\"], \"ensureGrammar\": true, \"capitalizeFirstLetter\": true, \"addPeriod\": true}", + "description": "Compose a grammatically correct sentence from a simple list of words with capitalization and punctuation." + }, + { + "inputJson": "{\"words\": [\"please\", \"validate\", \"this\", \"sentence\"], \"ensureGrammar\": false, \"capitalizeFirstLetter\": false, \"addPeriod\": false}", + "description": "Compose a sentence without enforcing grammar, capitalization, or punctuation." + }, + { + "inputJson": "{\"words\": [\"data\", \"validation\", \"enhances\", \"quality\"], \"ensureGrammar\": true}", + "description": "Compose a sentence from key data-validation terms ensuring grammatical correctness." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "data-validation.buildInstance", + "description": "This tool accepts infrastructure instance configuration data as input, validates the data against predefined schema and policy rules, and builds a validated instance object representation. The output is a structured instance validation report along with the validated instance configuration ready for further deployment or analysis.", + "category": "data-validation", + "parameters": [ + { + "name": "instanceConfig", + "type": "object", + "description": "The raw configuration object representing the instance to build and validate (e.g., CPU, memory, region, tags).", + "required": true, + "defaultValue": "" + }, + { + "name": "validationSchema", + "type": "object", + "description": "A schema definition object used to validate the structure and data types of the instance configuration.", + "required": true, + "defaultValue": "" + }, + { + "name": "policyRules", + "type": "array", + "description": "An array of policy rules (as expressions or functions) that the instance configuration must comply with.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "strictValidation", + "type": "boolean", + "description": "If true, enforce strict compliance and fail on any warning-level validation errors.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing 'isValid' boolean, 'errors' array listing validation issues, 'warnings' array for non-critical concerns, and 'validatedInstance' containing the processed instance config." + }, + "aiAgent": { + "useCase": "Use this tool when you need to construct a validated infrastructure instance representation from raw configuration input, ensuring compliance with schema and policy requirements before deployment or storage. This prevents invalid or insecure configurations from progressing in automated infrastructure pipelines.", + "limitations": "This tool does not deploy or provision any actual infrastructure. It only validates and constructs the instance representation based on input and schema. It relies on accurate schema and policy definitions provided externally.", + "examples": [ + "Build and validate an instance config with CPU, memory, region and tags ensuring it meets company policy.", + "Check an instance config against security policy rules before submission.", + "Generate a validation report for automation pipeline input instance definitions." + ] + }, + "tags": [ + "data-validation", + "infrastructure", + "instance", + "schema-validation", + "policy-compliance", + "build" + ], + "examples": [ + { + "inputJson": "{\"instanceConfig\":{\"cpu\":4,\"memoryGb\":16,\"region\":\"us-west-2\",\"tags\":{\"env\":\"prod\"}},\"validationSchema\":{\"type\":\"object\",\"properties\":{\"cpu\":{\"type\":\"number\",\"minimum\":1,\"maximum\":64},\"memoryGb\":{\"type\":\"number\",\"minimum\":1},\"region\":{\"type\":\"string\"},\"tags\":{\"type\":\"object\"}},\"required\":[\"cpu\",\"memoryGb\",\"region\"]},\"policyRules\":[{\"rule\":\"instanceConfig.cpu <= 32\"},{\"rule\":\"instanceConfig.region !== 'us-east-1'\"}],\"strictValidation\":true}", + "description": "Validate an instance config with CPU and memory limits, disallowing the 'us-east-1' region, requiring strict compliance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "data-validation.generateHTML", + "description": "Generates an HTML report summarizing the results of data validation checks. Takes structured validation result data as input, processes errors, warnings, and passes to produce a formatted HTML output highlighting data quality issues and statistics.", + "category": "data-validation", + "parameters": [ + { + "name": "validationResults", + "type": "object", + "description": "A structured object containing data validation results including errors, warnings, and statistics.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title for the HTML report. Defaults to 'Data Validation Report'.", + "required": false, + "defaultValue": "Data Validation Report" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section with statistics in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "errorHighlightColor", + "type": "string", + "description": "Hex or named color code used to highlight errors in the report. Defaults to red (#ff0000).", + "required": false, + "defaultValue": "#ff0000" + }, + { + "name": "warningHighlightColor", + "type": "string", + "description": "Hex or named color code used to highlight warnings. Defaults to orange (#ffa500).", + "required": false, + "defaultValue": "#ffa500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string as 'htmlContent'. This HTML can be rendered for viewing or saved to a file." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to convert raw structured data validation results into a user-friendly, visually formatted HTML report for easier review and presentation. It is useful for generating reports that highlight data quality issues with color-coded errors and warnings, including optional summaries.", + "limitations": "The tool does not perform validation itself; it only generates HTML reports from provided validation data. It cannot customize advanced styling beyond specified highlight colors. The input must conform to expected validation result structure.", + "examples": [ + "Generate an HTML report from JSON validation results for a dataset.", + "Create a colored HTML summary highlighting errors and warnings after validating a CSV file.", + "Output a complete HTML document with a title and summarizing statistics for data quality checks." + ] + }, + "tags": [ + "data-validation", + "HTML", + "report-generation", + "data-quality", + "summary" + ], + "examples": [ + { + "inputJson": "{\"validationResults\":{\"errors\":[{\"field\":\"age\",\"message\":\"Negative value\"}],\"warnings\":[{\"field\":\"email\",\"message\":\"Missing domain\"}],\"statistics\":{\"totalRows\":100,\"errorCount\":1,\"warningCount\":1}},\"title\":\"User Data Validation Report\",\"includeSummary\":true,\"errorHighlightColor\":\"#ff0000\",\"warningHighlightColor\":\"#ffa500\"}", + "description": "Generate an HTML report highlighting errors and warnings for user data validation." + }, + { + "inputJson": "{\"validationResults\":{\"errors\":[],\"warnings\":[],\"statistics\":{\"totalRows\":50,\"errorCount\":0,\"warningCount\":0}},\"title\":\"Empty Validation Results\",\"includeSummary\":false}", + "description": "Generate a simple HTML report without summary when there are no errors or warnings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "data-validation.generateChart", + "description": "Generates a visual chart representing data validation results. Accepts input data and validation metrics, processes them to create a clear chart such as bar, pie, or line graph, and outputs an image URL or embedded chart data for reporting or analysis purposes.", + "category": "data-validation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points or records to visualize, each item should be an object with keys relevant to the chart.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationMetrics", + "type": "object", + "description": "Object containing validation results like error counts, percentage valid, or other statistics to display on the chart.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate (e.g., 'bar', 'pie', 'line').", + "required": false, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X axis if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y axis if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme to apply for the chart elements (e.g., 'default', 'cool', 'warm').", + "required": false, + "defaultValue": "default" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated chart in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated chart in pixels.", + "required": false, + "defaultValue": "400" + } + ], + "returns": { + "type": "object", + "description": "An object containing the chart image in base64 or a URL to the rendered chart image for embedding in reports or dashboards, plus metadata including chart type and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when detailed visualizations of data validation results are needed to communicate data quality, error distributions, or validation statuses to stakeholders. Ideal for creating insightful reports, dashboards, or automated data quality monitoring systems.", + "limitations": "This tool does not perform the data validation itself; it only visualizes the results. It also does not support highly customized or interactive charts beyond basic configuration parameters.", + "examples": [ + "Generate a bar chart showing error counts across multiple dataset fields to include in a validation report.", + "Create a pie chart illustrating the percentage of valid vs invalid records in a dataset.", + "Produce a line chart showing trends in data quality metrics over time for monitoring purposes." + ] + }, + "tags": [ + "data-validation", + "chart-generation", + "visualization", + "reporting", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"field\":\"email\",\"errors\":5},{\"field\":\"phone\",\"errors\":2},{\"field\":\"age\",\"errors\":1}],\"validationMetrics\":{\"totalRecords\":100,\"invalidRecords\":8},\"chartType\":\"bar\",\"title\":\"Validation Error Counts\",\"xAxisLabel\":\"Fields\",\"yAxisLabel\":\"Number of Errors\"}", + "description": "Generate a bar chart showing the number of validation errors grouped by data field." + }, + { + "inputJson": "{\"data\":[{\"category\":\"Valid\",\"count\":92},{\"category\":\"Invalid\",\"count\":8}],\"validationMetrics\":{\"totalRecords\":100,\"invalidRecords\":8},\"chartType\":\"pie\",\"title\":\"Data Validity Distribution\"}", + "description": "Create a pie chart illustrating the proportion of valid versus invalid records in the dataset." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "data-validation.generateXML", + "description": "Generates a well-formed XML document from structured input data, applying optional validation rules and formatting options. Accepts input as an object or JSON string representing data hierarchy, processes it into XML format, and returns a validated XML string ready for integration or storage.", + "category": "data-validation", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The structured input data representing the XML hierarchy to be converted into an XML document.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "The name of the root element in the generated XML document.", + "required": true, + "defaultValue": "root" + }, + { + "name": "validateAgainstSchema", + "type": "boolean", + "description": "Whether to validate the generated XML against a provided XML Schema (XSD).", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaDefinition", + "type": "string", + "description": "XML Schema Definition (XSD) string used to validate the generated XML if validateAgainstSchema is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Whether to format the output XML with indentation and line breaks for readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "encoding", + "type": "string", + "description": "The text encoding specified in the XML declaration (e.g., UTF-8).", + "required": false, + "defaultValue": "UTF-8" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated XML string and optional validation results including errors if validation is requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce XML data output from structured data sources or transform JSON-like objects into XML format for data exchange, configuration, or storage, especially when strict XML schema validation or formatting is required.", + "limitations": "Does not support transformation logic beyond direct mapping of input data structures to XML. Complex conversions or XSLT transformations must be handled separately. Large input data may impact performance.", + "examples": [ + "Generate a configuration XML from object data with root element 'settings' and pretty print enabled.", + "Produce XML from JSON data and validate it against a given XSD schema.", + "Create a simple XML without schema validation, specifying a custom encoding." + ] + }, + "tags": [ + "data-validation", + "generate", + "XML", + "schema-validation", + "formatting", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"person\":{\"name\":\"John Doe\",\"age\":30,\"email\":\"john@example.com\"}},\"rootElementName\":\"personData\",\"validateAgainstSchema\":false,\"prettyPrint\":true,\"encoding\":\"UTF-8\"}", + "description": "Generate a pretty-printed XML document with root element 'personData' from JSON input without schema validation." + }, + { + "inputJson": "{\"inputData\":{\"book\":{\"title\":\"AI Fundamentals\",\"author\":\"Jane Smith\"}},\"rootElementName\":\"library\",\"validateAgainstSchema\":true,\"schemaDefinition\":\"\",\"prettyPrint\":false,\"encoding\":\"UTF-8\"}", + "description": "Generate an XML document for a library with schema validation enabled, but no pretty printing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "data-validation.generateSchema", + "description": "Generates a JSON Schema based on provided sample JSON data to validate the structure and data types. Accepts a sample JSON object or array and optional settings to fine-tune schema generation. Outputs a JSON Schema compatible with standard validators to ensure data quality and integrity.", + "category": "data-validation", + "parameters": [ + { + "name": "sampleData", + "type": "object", + "description": "Sample JSON object or array used as basis to generate the schema (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDescriptions", + "type": "boolean", + "description": "Whether to include descriptive comments in the generated schema for each property.", + "required": false, + "defaultValue": "false" + }, + { + "name": "requiredFields", + "type": "array", + "description": "Explicit list of property names to mark as required in the schema. Overrides automatic inference.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth of nested objects in the generated schema; deeper nesting will be generalized.", + "required": false, + "defaultValue": "5" + }, + { + "name": "additionalProperties", + "type": "boolean", + "description": "Indicates whether properties not specified in the schema are allowed (true) or disallowed (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A valid JSON Schema object representing the data structure and constraints inferred from the sampleData input." + }, + "aiAgent": { + "useCase": "Use this tool when you have sample JSON data and want to automatically create a JSON Schema for validating similar JSON payloads, ensuring data complies with expected structure and types. Useful for data ingestion pipelines, API validation, or enforcing data contracts without manually writing schemas.", + "limitations": "Cannot infer business logic validations, value pattern constraints, or semantic rules beyond structural and type inference. Complex edge cases like polymorphic or circular references are not fully supported.", + "examples": [ + "Generate a JSON Schema from a single example JSON object to validate incoming data.", + "Create a schema that marks certain fields as required based on explicit input.", + "Produce a schema allowing additional unspecified properties for flexible data.", + "" + ] + }, + "tags": [ + "data-validation", + "json-schema", + "schema-generation", + "json", + "validation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sampleData\":{\"name\":\"John\",\"age\":30,\"email\":\"john@example.com\",\"preferences\":{\"newsletter\":true}},\"includeDescriptions\":true}", + "description": "Generate schema from a sample user JSON object with descriptions enabled." + }, + { + "inputJson": "{\"sampleData\":[{\"id\":1,\"value\":\"A\"},{\"id\":2,\"value\":\"B\"}],\"requiredFields\":[\"id\"],\"additionalProperties\":false}", + "description": "Generate schema from array of objects enforcing 'id' as required and disallowing additional properties." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "data-validation.createSession", + "description": "Creates a validated analytics session record by accepting session metadata and user event data, performing integrity checks, and outputting a structured session object for quality-assured analytics processing.", + "category": "data-validation", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier for the analytics session to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier of the user associated with the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp marking session start.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp marking session end.", + "required": false, + "defaultValue": "" + }, + { + "name": "events", + "type": "array", + "description": "Array of user event objects occurring during the session to validate and include.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional session metadata such as device info or location.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "validateEventsOrder", + "type": "boolean", + "description": "Flag to enforce chronological ordering of events during validation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Validated session object containing sessionId, userId, start/end times, validated event list, metadata, and validation status." + }, + "aiAgent": { + "useCase": "Use this tool when building or cleaning analytics session data from raw inputs to ensure sessions are coherent, complete, and timestamps/events are consistent before analysis.", + "limitations": "Does not enrich session data with external sources; does not perform advanced anomaly detection beyond basic validation.", + "examples": [ + "Create a validated session record for user 123 with events captured between two timestamps", + "Validate and assemble session data from raw event logs for analytics ingestion" + ] + }, + "tags": [ + "data-validation", + "analytics", + "session", + "event-validation", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess-001\",\"userId\":\"user-123\",\"startTime\":\"2024-04-27T10:00:00Z\",\"endTime\":\"2024-04-27T10:30:00Z\",\"events\":[{\"eventType\":\"pageView\",\"timestamp\":\"2024-04-27T10:05:00Z\"},{\"eventType\":\"click\",\"timestamp\":\"2024-04-27T10:10:00Z\"}],\"metadata\":{\"device\":\"mobile\",\"location\":\"US\"},\"validateEventsOrder\":true}", + "description": "Create a session with two user events and metadata, enforcing event order validation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "data-validation.createCluster", + "description": "This tool accepts cluster configuration parameters as input, validates the configuration for data quality and integrity, and simulates the creation of a virtual cluster infrastructure for testing purposes. It outputs a detailed validation report and a summary of the cluster setup including node status and configuration checks.", + "category": "data-validation", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The name identifier for the cluster to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of nodes to include in the cluster, must be a positive integer.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeTypes", + "type": "array", + "description": "Array of strings specifying the type or role for each node (e.g., 'worker','master'). Length must match nodeCount.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Object specifying network settings such as subnet, ipRange, and networkPolicy for the cluster.", + "required": false, + "defaultValue": "" + }, + { + "name": "storageConfig", + "type": "object", + "description": "Object defining storage parameters for the cluster nodes, including storageType and capacity per node.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, performs validation and simulation without committing to actual creation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "securitySettings", + "type": "object", + "description": "Security-related settings including encryption enabled flags and access control lists.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a validation report with errors and warnings if any, and a simulated cluster summary including node details and overall cluster status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to validate and simulate the setup of a data cluster infrastructure based on given configuration parameters before deploying it for real. It helps ensure configurations meet data quality, integrity, and security standards and provides feedback on potential issues.", + "limitations": "This tool does not perform actual cluster deployment or interact with real infrastructure APIs; it only validates configurations and simulates outcomes. It also does not optimize cluster configurations automatically.", + "examples": [ + "Validate a 3-node cluster with defined roles and secure network settings.", + "Simulate cluster creation with specific storage configurations to check for configuration errors.", + "Check the cluster configuration with security settings enabled before actual deployment." + ] + }, + "tags": [ + "data-validation", + "cluster-management", + "infrastructure", + "simulation", + "configuration-check" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"TestCluster\",\"nodeCount\":3,\"nodeTypes\":[\"master\",\"worker\",\"worker\"],\"networkConfig\":{\"subnet\":\"192.168.1.0/24\",\"ipRange\":\"192.168.1.1-192.168.1.50\",\"networkPolicy\":\"restrictive\"},\"storageConfig\":{\"storageType\":\"SSD\",\"capacity\":\"500GB\"},\"validateOnly\":true,\"securitySettings\":{\"encryptionEnabled\":true,\"accessControl\":[\"admin\",\"devops\"]}}", + "description": "Validate and simulate a 3-node cluster with master and worker nodes, secure network policy, SSD storage, and encryption enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "data-validation.createReply", + "description": "This tool generates a response message based on validation results from data quality checks. It accepts structured validation outcomes, processes the findings, and constructs a clear, actionable reply summarizing errors, warnings, or confirmations to be communicated to users or systems.", + "category": "data-validation", + "parameters": [ + { + "name": "validationResults", + "type": "object", + "description": "An object detailing the results of data validation, including errors, warnings, and passed checks.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "Identifier or name of the recipient who will receive the reply message, used for personalization.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a summary section of the validation status at the end of the reply.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') to generate the reply message in the specified language.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply message string and metadata about the message such as word count and response status." + }, + "aiAgent": { + "useCase": "Use this tool when you have detailed data validation results and need to create a clear, user-friendly message summarizing the validation issues or confirmations. Ideal for automated communications or feedback loops in data quality pipelines.", + "limitations": "This tool cannot perform validation itself or interpret raw unstructured data; it only formats and summarizes existing validation outcomes into replies.", + "examples": [ + "Create a reply summarizing data validation errors to send to a data steward.", + "Generate a confirmation reply indicating successful data validation for user notification.", + "Produce a reply in Spanish summarizing warnings detected during data quality checks." + ] + }, + "tags": [ + "data-validation", + "communication", + "reporting", + "messaging", + "automation" + ], + "examples": [ + { + "inputJson": "{\"validationResults\":{\"errors\":[{\"field\":\"email\",\"error\":\"Invalid format\"}],\"warnings\":[{\"field\":\"age\",\"warning\":\"Unusually low value\"}],\"passed\":5},\"recipient\":\"Data Steward\",\"includeSummary\":true,\"language\":\"en\"}", + "description": "Generate an English reply for a Data Steward summarizing one error and one warning with a summary." + }, + { + "inputJson": "{\"validationResults\":{\"errors\":[],\"warnings\":[],\"passed\":10},\"recipient\":\"User\",\"includeSummary\":false,\"language\":\"en\"}", + "description": "Generate a brief confirmation reply indicating all checks passed, with no summary section." + }, + { + "inputJson": "{\"validationResults\":{\"errors\":[{\"field\":\"fecha\",\"error\":\"Formato inválido\"}],\"warnings\":[],\"passed\":2},\"recipient\":\"Analista\",\"includeSummary\":true,\"language\":\"es\"}", + "description": "Generate a Spanish reply for an analyst summarizing an invalid date format error with a summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "data-validation.createIncident", + "description": "Creates a structured security incident record by validating and processing input details such as incident type, severity, description, affected assets, timestamp, and reporter information. Outputs a standardized incident object confirming data integrity for further processing or logging.", + "category": "data-validation", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "The category or type of the incident (e.g., Phishing, Data Breach).", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the incident (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedAssets", + "type": "array", + "description": "List of asset identifiers impacted by the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date and time when the incident was detected or occurred.", + "required": true, + "defaultValue": "" + }, + { + "name": "reporter", + "type": "object", + "description": "Information about the individual or system reporting the incident with fields 'name' and 'contact'.", + "required": false, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current incident status (e.g., New, In Progress, Resolved).", + "required": false, + "defaultValue": "New" + } + ], + "returns": { + "type": "object", + "description": "A validated and normalized incident object containing all provided data plus a unique incident ID and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a validated, structured record of a security incident from raw input data before storing it in incident management systems or triggering workflows. It ensures all mandatory fields are present and valid, standardizes severity and status fields, and verifies timestamps and affected assets data formats.", + "limitations": "This tool does not perform incident detection or analysis; it only creates a validated record from already identified incident details. It also does not interface directly with external incident management platforms or databases.", + "examples": [ + "Create a new phishing incident with high severity affecting multiple servers and reported by the IT security team.", + "Record a data breach incident with medium severity and provide detailed description and affected assets list.", + "Generate a security incident record with a critical severity and timestamp for automated alert ingestion." + ] + }, + "tags": [ + "data-validation", + "incident-management", + "security", + "record-creation", + "validation" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"Phishing\",\"severity\":\"High\",\"description\":\"Multiple employees received phishing emails attempting credential theft.\",\"affectedAssets\":[\"user-email-001\",\"user-email-002\"],\"timestamp\":\"2024-05-01T14:30:00Z\",\"reporter\":{\"name\":\"Alice Johnson\",\"contact\":\"alice.johnson@example.com\"}}", + "description": "Creating a phishing incident with multiple affected email accounts and a reporter's contact info." + }, + { + "inputJson": "{\"incidentType\":\"Data Breach\",\"severity\":\"Critical\",\"description\":\"Sensitive data accessed without authorization.\",\"timestamp\":\"2024-06-15T09:00:00Z\"}", + "description": "Recording a critical data breach incident with minimal required fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "data-validation.createThread", + "description": "Creates a communication thread structure by validating and organizing participant data and initial messages. Accepts participant info and optional initial message content, performs validation on user IDs and message formats, and returns a standardized thread object with validated participants and ordered messages.", + "category": "data-validation", + "parameters": [ + { + "name": "participants", + "type": "array", + "description": "Array of participant objects each containing a valid userId and role, representing members of the communication thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessages", + "type": "array", + "description": "Optional array of initial message objects with sender userId, timestamp, and content to initialize the thread messages.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "threadTitle", + "type": "string", + "description": "Optional title for the thread to identify its subject or purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "allowExternalParticipants", + "type": "boolean", + "description": "Flag indicating if participants outside the system are allowed in the thread (for permission validation).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A validated thread object containing a unique threadId, participants list, messages array ordered by timestamp, and metadata such as creation date and threadTitle." + }, + "aiAgent": { + "useCase": "Use this tool when creating or validating a new communication thread in messaging platforms, forums, or collaboration tools to ensure participant data and initial messages adhere to expected formats and integrity rules before thread instantiation.", + "limitations": "This tool does not support real-time message streaming or thread updates post-creation; it also cannot validate participant existence beyond ID format checks.", + "examples": [ + "Create a new thread with three participants and an introductory message.", + "Initialize a thread with participant roles and no initial messages.", + "Create a thread titled 'Project Updates' allowing external participants." + ] + }, + "tags": [ + "data-validation", + "thread-management", + "communication", + "participant-validation", + "message-validation" + ], + "examples": [ + { + "inputJson": "{\"participants\":[{\"userId\":\"user123\",\"role\":\"admin\"},{\"userId\":\"user456\",\"role\":\"member\"}],\"initialMessages\":[{\"senderId\":\"user123\",\"timestamp\":1685623200,\"content\":\"Welcome to the thread.\"}],\"threadTitle\":\"Team Chat\",\"allowExternalParticipants\":false}", + "description": "Create a team chat thread with two participants and one welcome message." + }, + { + "inputJson": "{\"participants\":[{\"userId\":\"user789\",\"role\":\"member\"}],\"initialMessages\":[],\"threadTitle\":\"Announcements\",\"allowExternalParticipants\":true}", + "description": "Create a thread for announcements with one participant and no initial messages, allowing external users." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "data-validation.createDeal", + "description": "Validates input data for a business deal and creates a structured deal object if all validations pass. Accepts various deal details such as title, amount, currency, parties involved, and dates. Checks data types, required fields, and logical consistency, then outputs a validated deal object ready for downstream processing or storage.", + "category": "data-validation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the deal to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "The monetary amount value of the deal. Must be a positive number.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code in ISO 4217 format (e.g., USD, EUR).", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the deal. Each party should be represented as an object with at least a name field.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date of the deal in ISO 8601 format (YYYY-MM-DD). Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date of the deal in ISO 8601 format (YYYY-MM-DD). Must be after startDate if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "isConfidential", + "type": "boolean", + "description": "Flag indicating whether the deal is confidential. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Validated and structured deal object containing all input fields along with validation status and messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a new business deal entity by validating raw input data for completeness, correctness, and logical integrity before committing to storage or further processing. Ideal in CRM, sales pipelines, or contract management scenarios to ensure data quality.", + "limitations": "This tool does not perform deal approval workflows, pricing validation against external systems, or financial forecasting. It only validates input data format, completeness, and logical consistency within the provided fields.", + "examples": [ + "Create a deal for a new client with amount 50000 USD starting next month.", + "Validate and create a confidential deal involving multiple parties with specified start and end dates.", + "Create a deal ensuring currency codes and dates are properly formatted and the amount is positive." + ] + }, + "tags": [ + "data-validation", + "deal-management", + "business", + "crm", + "input-validation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Enterprise Software License\",\"amount\":100000,\"currency\":\"USD\",\"parties\":[{\"name\":\"Client A\"},{\"name\":\"Vendor B\"}],\"startDate\":\"2024-07-01\",\"endDate\":\"2025-06-30\",\"isConfidential\":true}", + "description": "Create a confidential enterprise software license deal between Client A and Vendor B starting July 1, 2024." + }, + { + "inputJson": "{\"title\":\"Consulting Agreement\",\"amount\":25000,\"currency\":\"EUR\",\"parties\":[{\"name\":\"Company X\"}],\"startDate\":\"2024-08-15\"}", + "description": "Create a consulting agreement deal with Company X for 25,000 EUR starting August 15, 2024, without an end date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "data-validation.createChart", + "description": "Generates a visual chart representation to validate and analyze data quality metrics. Accepts structured data input and parameters to define chart type, labels, and style. Outputs a chart object or image for inspection, enabling quick visual identification of data anomalies or quality issues.", + "category": "data-validation", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data objects or values to be visualized in the chart for validation purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Specifies the type of chart to create, e.g., 'bar', 'line', 'pie'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "labels", + "type": "array", + "description": "Optional array of label strings corresponding to data points or categories.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "title", + "type": "string", + "description": "Title of the chart for display purposes.", + "required": false, + "defaultValue": "\"Data Quality Chart\"" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X-axis, describing the data dimension represented horizontally.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y-axis, describing the data dimension represented vertically.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme or palette name to apply for chart elements for better visual distinction.", + "required": false, + "defaultValue": "\"default\"" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output chart in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output chart in pixels.", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered chart in a displayable format (e.g., SVG or base64 image data), metadata about the chart configuration, and any warnings about data quality detected." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a visual representation of data quality metrics or validation results to assist in identifying anomalies, patterns, or inconsistencies through chart visualization. This is especially useful when textual data inspection is insufficient, and a graphical overview improves understanding or reporting.", + "limitations": "This tool does not perform data cleaning or transformation; it only visualizes provided data. It relies on correct input data format and does not generate interpretative analysis automatically. Complex interactive visualizations are not supported.", + "examples": [ + "Create a bar chart of missing value counts per column to validate data completeness.", + "Generate a line chart to visualize error rates over time for a data stream.", + "Show a pie chart distribution of data categories to detect skew or imbalance." + ] + }, + "tags": [ + "data-validation", + "chart", + "visualization", + "data-quality", + "reporting", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"data\": [10, 5, 0, 7], \"chartType\": \"bar\", \"labels\": [\"ColA\", \"ColB\", \"ColC\", \"ColD\"], \"title\": \"Missing Values per Column\", \"xAxisLabel\": \"Columns\", \"yAxisLabel\": \"Count\", \"colorScheme\": \"pastel\", \"width\": 600, \"height\": 400}", + "description": "Bar chart showing counts of missing values per data column for assessing completeness." + }, + { + "inputJson": "{\"data\": [0.1, 0.15, 0.2, 0.12, 0.1], \"chartType\": \"line\", \"labels\": [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\"], \"title\": \"Error Rate Over Months\", \"xAxisLabel\": \"Month\", \"yAxisLabel\": \"Error Rate\", \"colorScheme\": \"cool\", \"width\": 700, \"height\": 500}", + "description": "Line chart to visualize error rate trend over five months for quality monitoring." + }, + { + "inputJson": "{\"data\": [40, 30, 20, 10], \"chartType\": \"pie\", \"labels\": [\"Class A\", \"Class B\", \"Class C\", \"Class D\"], \"title\": \"Data Class Distribution\", \"colorScheme\": \"bright\", \"width\": 500, \"height\": 500}", + "description": "Pie chart representing distribution of data classes to identify imbalance or skew." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "data-validation.createThreat", + "description": "Validates and classifies potential security threats based on input data describing system behavior, network logs, or anomaly indicators. It analyzes provided attributes to create a structured threat object with severity, type, and recommended actions for further handling.", + "category": "data-validation", + "parameters": [ + { + "name": "threatName", + "type": "string", + "description": "The name or identifier for the threat to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the threat scenario or observed activity.", + "required": false, + "defaultValue": "" + }, + { + "name": "indicators", + "type": "array", + "description": "An array of strings representing indicators of compromise or suspicious activities linked to the threat.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity level of the threat (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "medium" + }, + { + "name": "detectedAt", + "type": "string", + "description": "ISO 8601 timestamp string when the threat was detected.", + "required": false, + "defaultValue": "" + }, + { + "name": "sourceIp", + "type": "string", + "description": "Optional source IP address associated with the threat.", + "required": false, + "defaultValue": "" + }, + { + "name": "recommendations", + "type": "array", + "description": "List of recommended actions or mitigations related to the threat.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured threat object including id, name, description, indicators, severity, detection time, source IP, and recommended mitigations." + }, + "aiAgent": { + "useCase": "Use this tool when security data indicates suspicious activities or anomalies and a detailed threat profile needs to be generated for incident response or alerting. It helps transform raw indicators and metadata into a standardized threat object for further processing or reporting.", + "limitations": "This tool does not perform threat detection from raw logs or telemetry; it assumes the input data already indicates a potential threat. It also does not automatically remediate threats.", + "examples": [ + "Create a high severity threat from detected unusual outbound traffic with IP and indicators.", + "Generate a threat profile for unauthorized login attempts including timestamps and recommendations.", + "Add a medium severity threat with multiple indicator signatures and descriptive metadata." + ] + }, + "tags": [ + "data-validation", + "security", + "threat-detection", + "incident-response", + "classification", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"threatName\":\"SuspiciousOutboundTraffic\",\"description\":\"Unusual spikes in outbound traffic detected from multiple hosts.\",\"indicators\":[\"high bandwidth usage\",\"unknown external IP connections\"],\"severityLevel\":\"high\",\"detectedAt\":\"2024-06-20T14:30:00Z\",\"sourceIp\":\"192.168.1.15\",\"recommendations\":[\"Isolate affected hosts\",\"Review firewall rules\",\"Conduct malware scan\"]}", + "description": "Create a high severity threat profile for unusual outbound network traffic with relevant indicators and mitigation steps." + }, + { + "inputJson": "{\"threatName\":\"FailedLoginAttempts\",\"indicators\":[\"multiple failed logins\",\"account lockouts\"],\"severityLevel\":\"medium\",\"detectedAt\":\"2024-06-20T23:15:00Z\"}", + "description": "Generate a medium severity threat profile based on repeated unauthorized login attempts without additional metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "data-validation.createAttachment", + "description": "Creates and validates a digital attachment object for media content, accepting input parameters such as file name, file type, size, and optional metadata. It verifies that the attachment meets specified validation rules (e.g., allowed types, size limits) and produces a validated attachment object ready for storage or transmission.", + "category": "data-validation", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the attachment file, including extension, used for identification and validation.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file, used to confirm allowed media types and enforce validation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileSize", + "type": "number", + "description": "Size of the file in bytes, used to enforce maximum allowed size constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs describing additional attachment details such as creation date or author.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSizeBytes", + "type": "number", + "description": "Optional maximum allowed file size in bytes for validation; if omitted or zero, no size limit is applied.", + "required": false, + "defaultValue": "0" + }, + { + "name": "allowedTypes", + "type": "array", + "description": "Optional list of allowed MIME types for the attachment; if empty or omitted, all types are allowed.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the validated attachment, including fileName, fileType, fileSize, metadata, and a validationStatus indicating success or detailed error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a structured digital media attachment that complies with specific validation constraints such as file type restrictions and size limits, useful in upload handling workflows and data integrity checks.", + "limitations": "This tool does not perform the actual file upload or storage, nor does it process or modify the attachment content. It only validates metadata and basic properties.", + "examples": [ + "Create an attachment object for an image file ensuring it is under 5MB and only PNG or JPEG formats are allowed.", + "Validate and construct an attachment metadata object for a PDF document with optional descriptive metadata.", + "Check that a video attachment meets type and size requirements before upload." + ] + }, + "tags": [ + "validation", + "attachment", + "media", + "file", + "data-quality", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"photo.png\",\"fileType\":\"image/png\",\"fileSize\":4500000,\"metadata\":{\"author\":\"Alice\"},\"maxSizeBytes\":5000000,\"allowedTypes\":[\"image/png\",\"image/jpeg\"]}", + "description": "Validates and creates an attachment for a PNG image under 5MB with author metadata." + }, + { + "inputJson": "{\"fileName\":\"report.pdf\",\"fileType\":\"application/pdf\",\"fileSize\":1200000,\"metadata\":{},\"maxSizeBytes\":2000000,\"allowedTypes\":[\"application/pdf\"]}", + "description": "Creates a validated PDF attachment ensuring file type and size within limits." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "data-validation.createPackage", + "description": "Creates a reusable data validation package tailored for JavaScript projects. Accepts a specification of validation rules, data schemas, and optional configuration options. Outputs a JavaScript code package (module) that implements the specified validations, ready for integration or publishing.", + "category": "data-validation", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "The desired name for the validation package to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "object", + "description": "An object defining validation rules, each key representing a field with associated constraints (e.g., type, required, pattern).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "The environment for which the package is to be generated (e.g., 'node', 'browser').", + "required": false, + "defaultValue": "node" + }, + { + "name": "includeTypeScriptDefinitions", + "type": "boolean", + "description": "Whether to generate TypeScript definition files alongside the JavaScript code.", + "required": false, + "defaultValue": "false" + }, + { + "name": "packageVersion", + "type": "string", + "description": "The semantic version number for the package being created.", + "required": false, + "defaultValue": "1.0.0" + }, + { + "name": "authorName", + "type": "string", + "description": "The author or maintainer name to include in the package metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated package files as strings, including main validation source code, optional TypeScript types, and package metadata (e.g., package.json)" + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a standardized validation library for JavaScript projects based on declarative rules. It is suitable when the user wants to automate creation of reusable validation code packages tailored to specific data schemas or validation logic, including optional TypeScript support and metadata embedding.", + "limitations": "This tool generates code packages but does not publish them to package registries or verify runtime performance and coverage. Complex validation logic requiring custom functions beyond schema-based rules may not be fully supported.", + "examples": [ + "Create a validation package named 'user-validation' for user profile data with required fields and pattern constraints.", + "Generate a validation package with TypeScript support for a product inventory schema targeting browser environments.", + "Create a validation package with custom author info and versioning for an order processing schema." + ] + }, + "tags": [ + "data-validation", + "package-generation", + "JavaScript", + "code-generation", + "schema-validation", + "TypeScript", + "npm-package" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"user-validation\",\"validationRules\":{\"username\":{\"type\":\"string\",\"required\":true,\"pattern\":\"^[a-zA-Z0-9_]{3,15}$\"},\"email\":{\"type\":\"string\",\"required\":true,\"pattern\":\"^\\\\S+@\\\\S+\\\\.\\\\S+$\"},\"age\":{\"type\":\"number\",\"required\":false,\"min\":0}},\"targetEnvironment\":\"node\",\"includeTypeScriptDefinitions\":true,\"packageVersion\":\"1.0.0\",\"authorName\":\"Jane Developer\"}", + "description": "Generate a Node.js validation package named 'user-validation' with rules for username, email, and optional age, including TypeScript definitions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "data-validation.createSchema", + "description": "This tool accepts a data schema definition in JSON format describing fields, types, and validation rules. It processes the input to create a reusable validation schema object compatible with common data validation libraries. The output is a structured schema that can be applied to validate datasets or API payloads efficiently.", + "category": "data-validation", + "parameters": [ + { + "name": "schemaDefinition", + "type": "object", + "description": "JSON object defining the schema fields, types, required flags, and validation constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaName", + "type": "string", + "description": "Optional name for the schema to identify it in validation contexts.", + "required": false, + "defaultValue": "" + }, + { + "name": "allowAdditionalProperties", + "type": "boolean", + "description": "Flag to allow or disallow properties not specified in the schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "strictTypes", + "type": "boolean", + "description": "If true, enforce strict type matching during validation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A compiled validation schema object ready for use to validate data against the specified rules." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a consistent and reusable data validation schema based on flexible JSON definitions describing field types, constraints, and structure. Ideal for validating user input, API requests or datasets before processing.", + "limitations": "The tool does not perform validation itself, only creates schema definitions; actual validation requires applying the generated schema with a validation engine. Complex conditional validations or cross-field dependencies may require additional logic.", + "examples": [ + "Create a schema to validate user profile data with required name, optional age (number), and email format.", + "Generate a schema for an API payload including nested address objects with required postal code and optional apartment number.", + "Build a strict schema disallowing additional properties for financial records with specific numeric and string fields." + ] + }, + "tags": [ + "data-validation", + "schema-generation", + "json-schema", + "input-validation", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinition\":{\"name\":{\"type\":\"string\",\"required\":true},\"age\":{\"type\":\"number\",\"required\":false}},\"schemaName\":\"UserProfile\",\"allowAdditionalProperties\":false,\"strictTypes\":true}", + "description": "Create a strict schema validating user profiles requiring a name string and optional age number, with no additional properties allowed." + }, + { + "inputJson": "{\"schemaDefinition\":{\"email\":{\"type\":\"string\",\"format\":\"email\",\"required\":true},\"address\":{\"type\":\"object\",\"required\":false,\"properties\":{\"postalCode\":{\"type\":\"string\",\"required\":true},\"apartmentNumber\":{\"type\":\"string\",\"required\":false}}}},\"schemaName\":\"ContactInfo\",\"allowAdditionalProperties\":true,\"strictTypes\":false}", + "description": "Generate a flexible schema for contact info including required email, and an optional nested address with required postal code and optional apartment number." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "data-validation.createSpec", + "description": "Creates a data validation specification document based on provided dataset metadata and validation rules. Accepts dataset schema details and user-defined validation constraints as input, then generates a structured specification defining rules for data quality checks to ensure integrity and correctness.", + "category": "data-validation", + "parameters": [ + { + "name": "datasetSchema", + "type": "object", + "description": "An object describing the dataset schema, including fields, data types, and constraints (e.g., required fields, length limits).", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "array", + "description": "An array of validation rule objects that specify detailed constraints such as ranges, regex patterns, uniqueness, and conditional rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "specFormat", + "type": "string", + "description": "Output format of the specification document, e.g., 'JSON Schema', 'YAML', or 'Custom'.", + "required": false, + "defaultValue": "\"JSON Schema\"" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Indicates whether to include example valid and invalid data in the specification document.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured document representing the validation specification, including schema definitions and validation constraints, formatted as requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a formalized data validation specification document from dataset schema and validation rule inputs. Ideal for automating creation of validation documentation, integration with data quality tools, or communicating rules to development teams.", + "limitations": "This tool does not perform the actual data validation; it only creates the specification document. It requires well-defined input schema and rules, and does not infer rules from data samples.", + "examples": [ + "Create a validation spec for a customer data table with fields and rules for required fields, email format, and age range.", + "Generate a JSON Schema validation document from a provided dataset schema and set of validation constraints.", + "Produce a YAML validation spec including examples for a product inventory dataset." + ] + }, + "tags": [ + "data-validation", + "specification", + "schema", + "rules", + "data-quality", + "automation" + ], + "examples": [ + { + "inputJson": "{\"datasetSchema\":{\"fields\":[{\"name\":\"email\",\"type\":\"string\",\"required\":true},{\"name\":\"age\",\"type\":\"integer\",\"required\":false}]},\"validationRules\":[{\"field\":\"email\",\"rule\":\"regex\",\"pattern\":\"^\\\\S+@\\\\S+\\\\.\\\\S+$\"},{\"field\":\"age\",\"rule\":\"range\",\"min\":0,\"max\":120}],\"specFormat\":\"JSON Schema\",\"includeExamples\":true}", + "description": "Generate a JSON Schema spec with email regex and age range validation, including example data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "etl-processes.analyzeQuote", + "description": "Analyzes a provided textual quote to extract metadata such as sentiment, language, key themes, and named entities. Accepts a string quote as input, performs natural language processing to identify emotional tone and important concepts within the text, and returns a structured analysis including sentiment scores, detected language, main topics, and referenced entities.", + "category": "etl-processes", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The textual content of the quote to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the quote.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Whether to extract named entities (persons, places, organizations) mentioned in the quote.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeThemes", + "type": "boolean", + "description": "Whether to extract key themes or topics present in the quote.", + "required": false, + "defaultValue": "true" + }, + { + "name": "languageHint", + "type": "string", + "description": "Optional ISO language code hint (e.g., 'en' for English) to assist language detection.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured analysis object containing the detected language, overall sentiment score and label, an array of key themes, and an array of extracted named entities with their types." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the meaning, sentiment, or key topics of a short textual quote during data extraction or transformation workflows. Especially useful to enrich quote data for insights or classification in ETL pipelines.", + "limitations": "This tool analyzes text but does not verify quote authenticity or context beyond the text itself. Sentiment and theme extraction may vary in accuracy depending on text length and language. It is optimized for short quotes and may not perform well on very long or highly technical texts.", + "examples": [ + "Analyze sentiment and themes of a customer testimonial quote.", + "Extract named entities and topics from a famous quote in a multilingual dataset.", + "Detect the language and sentiment of a social media quote snippet." + ] + }, + "tags": [ + "etl", + "text-analysis", + "quote", + "sentiment", + "named-entities", + "language-detection", + "themes", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"includeSentiment\":true,\"includeEntities\":false,\"includeThemes\":true,\"languageHint\":\"en\"}", + "description": "Analyze an English motivational quote for sentiment and key themes without extracting entities." + }, + { + "inputJson": "{\"quoteText\":\"La vie est un mystère qu'il faut vivre, et non un problème à résoudre.\",\"includeSentiment\":true,\"includeEntities\":true,\"includeThemes\":true,\"languageHint\":\"fr\"}", + "description": "Analyze a French quote including sentiment, entities, and themes with a language hint." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "etl-processes.analyzeAnomaly", + "description": "This tool accepts time series or tabular datasets containing metrics or event logs as input. It applies statistical and machine learning techniques to detect and analyze anomalies or outliers within the data. The output includes detailed anomaly reports, indicating the timestamp, severity, anomaly type, and possible root cause insights, enabling users to understand abnormal events in their ETL pipelines or datasets.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The dataset to analyze, provided as a JSON object or array with time series or tabular structure containing metrics or event logs.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "The name of the field representing the timestamp or time indicator in the data.", + "required": true, + "defaultValue": "" + }, + { + "name": "valueFields", + "type": "array", + "description": "List of one or more field names representing the metrics or values to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionMethod", + "type": "string", + "description": "Anomaly detection algorithm to use, e.g., 'statistical', 'machineLearning', or 'seasonalHybrid'.", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity threshold for anomaly detection, ranging from 0 (lowest) to 1 (highest).", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "maxAnomalies", + "type": "number", + "description": "Maximum number of anomalies to detect and report in the analysis.", + "required": false, + "defaultValue": "100" + }, + { + "name": "explainRootCause", + "type": "boolean", + "description": "Flag indicating whether to attempt root cause analysis for detected anomalies.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeZone", + "type": "string", + "description": "Timezone of the timestamp field (e.g., 'UTC', 'America/New_York').", + "required": false, + "defaultValue": "UTC" + } + ], + "returns": { + "type": "object", + "description": "An anomaly analysis result object containing a list of detected anomalies with timestamp, affected metrics, anomaly severity scores, anomaly type, and optional root cause explanations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to identify unusual patterns, spikes, drops, or outliers in metrics or event log datasets within ETL processes or other analytics contexts. It helps in monitoring data quality, pipeline health, and early warning for unexpected incidents by providing detailed anomaly detection and contextual insights.", + "limitations": "This tool analyzes only structured numeric event or time series data and may not detect anomalies in text data or unstructured logs. Root cause analysis is indicative but not definitive and requires domain expertise to interpret properly.", + "examples": [ + "Detect anomalies in ETL job run durations over the past week.", + "Identify unusual spikes in server CPU usage metrics collected every minute.", + "Analyze daily sales figures for anomalies during a promotion period." + ] + }, + "tags": [ + "etl", + "anomalyDetection", + "analytics", + "timeSeries", + "dataQuality", + "machineLearning" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"cpuUsage\":20.5},{\"timestamp\":\"2024-05-01T00:01:00Z\",\"cpuUsage\":21.0},{\"timestamp\":\"2024-05-01T00:02:00Z\",\"cpuUsage\":95.3},{\"timestamp\":\"2024-05-01T00:03:00Z\",\"cpuUsage\":22.0}],\"timestampField\":\"timestamp\",\"valueFields\":[\"cpuUsage\"],\"detectionMethod\":\"statistical\",\"sensitivity\":0.8,\"maxAnomalies\":10,\"explainRootCause\":true,\"timeZone\":\"UTC\"}", + "description": "Analyze CPU usage time series to detect unusual spikes indicating potential performance issues." + }, + { + "inputJson": "{\"inputData\":[{\"date\":\"2024-06-01\",\"sales\":1200},{\"date\":\"2024-06-02\",\"sales\":1250},{\"date\":\"2024-06-03\",\"sales\":6000},{\"date\":\"2024-06-04\",\"sales\":1300}],\"timestampField\":\"date\",\"valueFields\":[\"sales\"],\"detectionMethod\":\"seasonalHybrid\",\"sensitivity\":0.6,\"maxAnomalies\":5,\"explainRootCause\":false,\"timeZone\":\"America/New_York\"}", + "description": "Detect anomalies in daily sales data during a promotion period, accounting for seasonality." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "etl-processes.analyzeYAML", + "description": "This tool accepts a YAML-formatted string or file path as input, processes it to parse the YAML structure, and performs an analysis including schema validation, key frequency counting, and detection of potential issues like duplicate keys or inconsistent types. It outputs a structured report summarizing the YAML content's structure, statistics, and any anomalies found.", + "category": "etl-processes", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML content as a string to analyze. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Path to a YAML file to analyze. Required if yamlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the YAML content against a provided JSON schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "jsonSchema", + "type": "string", + "description": "JSON Schema as a string to validate the YAML content against. Used only if validateSchema is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeKeyStats", + "type": "boolean", + "description": "Include statistics on key usage frequency and nesting levels in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectDuplicates", + "type": "boolean", + "description": "Detect and report duplicate keys in the YAML content, which can be problematic.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive analysis report including validity status, schema validation results, counts of keys, detected anomalies like duplicates or inconsistent types, and summarized YAML structure details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze and understand YAML data by extracting structural insights, validating the content against schemas, or checking for common YAML issues. It helps in automation workflows involving configuration files, data exchange formats, or any scenario requiring YAML data validation and summary.", + "limitations": "This tool cannot fix YAML errors automatically or transform YAML to other data formats. It depends on valid YAML input and, if schema validation is enabled, a correct JSON schema. It does not execute or interpret YAML content beyond structural and schema analysis.", + "examples": [ + "Analyze a YAML string to validate against a schema and report duplicates.", + "Analyze a YAML file to get key statistics and detect structural inconsistencies.", + "Validate YAML content without a schema to identify duplicates and key frequency." + ] + }, + "tags": [ + "etl", + "yaml", + "analysis", + "validation", + "schema", + "data-quality" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"apiVersion: v1\\nkind: Pod\\nmetadata:\\n name: demo-pod\\nspec:\\n containers:\\n - name: container1\\n image: nginx\\n - name: container1\\n image: busybox\\nvalidateSchema\":false,\"includeKeyStats\":true,\"detectDuplicates\":true}", + "description": "Analyze a YAML string containing a Kubernetes Pod definition to detect duplicate keys and gather key statistics without schema validation." + }, + { + "inputJson": "{\"filePath\":\"/configs/deployment.yaml\",\"validateSchema\":true,\"jsonSchema\":\"{\\\"type\\\": \\\"object\\\", \\\"properties\\\": {\\\"apiVersion\\\": {\\\"type\\\": \\\"string\\\"}}, \\\"required\\\": [\\\"apiVersion\\\"]}\",\"includeKeyStats\":true,\"detectDuplicates\":true}", + "description": "Analyze a YAML file on disk, validating it against a JSON schema that requires an apiVersion field, and reporting duplicates and key stats." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "etl-processes.analyzeConversion", + "description": "Analyzes conversion data from ETL pipelines by accepting raw event or transaction logs, applying filters and segmentation, calculating conversion rates and funnel metrics, and outputting a summary report with key insights on user actions leading to conversions.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of event or transaction objects representing raw conversion data, each containing properties such as userId, eventType, timestamp, and attributes.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEvent", + "type": "string", + "description": "The specific event name that defines a conversion (e.g., 'purchase', 'signup').", + "required": true, + "defaultValue": "" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "An optional object specifying filters to apply on input data (e.g., date ranges, user segments, event attributes) to refine the analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "funnelSteps", + "type": "array", + "description": "An optional ordered list of event names representing steps in the conversion funnel to analyze drop-offs at each stage.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "object", + "description": "An optional object defining the analysis time frame with 'startDate' and 'endDate' in ISO format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing conversion metrics including overall conversion rate, funnel step conversion rates, drop-off percentages, and summary statistics for the specified dataset." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze and quantify conversion performance from raw ETL-collected event data, such as user actions or transactions, to understand how users progress through funnels and to identify bottlenecks or success points in conversion flows.", + "limitations": "Does not perform data extraction from sources or ETL process but operates on input data supplied. Requires well-structured input with clear event naming conventions. Complex attribution models are not supported.", + "examples": [ + "Analyze conversion rate for 'purchase' event within last month for users in a campaign segment.", + "Evaluate funnel drop-offs across steps: 'view_product', 'add_to_cart', 'checkout', 'purchase'.", + "Filter conversion analysis to events occurring in a given date range with custom filters on user attributes." + ] + }, + "tags": [ + "etl", + "conversion", + "analytics", + "funnel-analysis", + "data-transformation", + "event-data" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"userId\":\"u1\",\"eventType\":\"view_product\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"userId\":\"u1\",\"eventType\":\"add_to_cart\",\"timestamp\":\"2024-05-01T10:05:00Z\"},{\"userId\":\"u1\",\"eventType\":\"purchase\",\"timestamp\":\"2024-05-01T10:10:00Z\"},{\"userId\":\"u2\",\"eventType\":\"view_product\",\"timestamp\":\"2024-05-01T11:00:00Z\"},{\"userId\":\"u2\",\"eventType\":\"add_to_cart\",\"timestamp\":\"2024-05-01T11:05:00Z\"}],\"conversionEvent\":\"purchase\",\"filterCriteria\":{\"userSegment\":\"campaignA\"},\"funnelSteps\":[\"view_product\",\"add_to_cart\",\"purchase\"],\"timeFrame\":{\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\"}}", + "description": "Analyze May 2024 campaignA segment conversion funnel and purchase conversion rate." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "etl-processes.analyzeChannel", + "description": "Analyzes communication channel data by extracting, transforming, and aggregating key metrics such as message volume, user engagement, sentiment trends, and peak activity times. Accepts raw channel data logs or structured inputs, processes them to provide insights and summary reports for performance and interaction quality evaluation.", + "category": "etl-processes", + "parameters": [ + { + "name": "channelData", + "type": "array", + "description": "An array of message objects from the channel, each including timestamp, userId, messageText, and metadata. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisPeriodStart", + "type": "string", + "description": "ISO8601 formatted datetime string indicating when to start the analysis period. Defaults to the earliest date in the data if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisPeriodEnd", + "type": "string", + "description": "ISO8601 formatted datetime string indicating when to end the analysis period. Defaults to the latest date in the data if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on messages to track positive/negative trends. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "topUsersCount", + "type": "number", + "description": "Number of top active users to identify by message count. Defaults to 5.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Summary report object including totalMessages, uniqueUsers, peakActivityPeriods, messageVolumeOverTime array, sentimentSummary if requested, and topUsers list with message counts." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract meaningful insights from communication channel message data, such as identifying usage patterns, user engagement, and sentiment trends, especially to inform moderation, product feedback, or community management strategies.", + "limitations": "Does not support real-time streaming analysis; requires batch data input. Sentiment analysis is limited to supported languages and may not capture complex context or sarcasm.", + "examples": [ + "Analyze channel message logs to find peak activity times and identify the top contributors.", + "Get sentiment trend over the last month from channel data to assess community mood.", + "Produce a summary report of user engagement and message volume for a given channel dataset." + ] + }, + "tags": [ + "etl", + "analysis", + "communication", + "channel", + "user engagement", + "sentiment", + "data aggregation" + ], + "examples": [ + { + "inputJson": "{\"channelData\":[{\"timestamp\":\"2024-05-01T09:12:00Z\",\"userId\":\"user123\",\"messageText\":\"Hello everyone!\",\"metadata\":{}},{\"timestamp\":\"2024-05-01T09:15:00Z\",\"userId\":\"user456\",\"messageText\":\"Good morning!\",\"metadata\":{}}],\"analysisPeriodStart\":\"2024-05-01T00:00:00Z\",\"analysisPeriodEnd\":\"2024-05-02T00:00:00Z\",\"includeSentimentAnalysis\":true,\"topUsersCount\":3}", + "description": "Analyze messages from May 1, 2024, including sentiment and top 3 users." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "etl-processes.analyzeVulnerability", + "description": "Analyzes vulnerabilities from security scan reports or vulnerability databases by extracting key details, assessing severity and exploitability, and summarizing findings into structured output for prioritization and remediation planning.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputSource", + "type": "string", + "description": "The source of vulnerability data; can be a file path, URL, or raw JSON string containing vulnerability information.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data: 'json', 'xml', or 'csv'. Determines how the inputSource data will be parsed.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level to include in the analysis (e.g., 'low', 'medium', 'high', 'critical'). Vulnerabilities below this threshold will be filtered out.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeExploitability", + "type": "boolean", + "description": "Whether to assess and include exploitability information for each vulnerability if data is available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional field to group vulnerabilities by, e.g., 'package', 'component', or 'severity'. If empty, no grouping is done.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' or 'csv'. Defines the structure to return analysis results.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary of the vulnerability analysis including total counts, grouped details if applicable, and filtered vulnerability entries with severity and exploitability annotations." + }, + "aiAgent": { + "useCase": "Use this tool when given raw or exported security vulnerability data from scanners or databases that requires detailed analysis to identify critical issues, prioritize fixes, and understand exploitability risks. It supports various input formats and outputs structured summaries to aid in remediation workflows.", + "limitations": "This tool does not perform the vulnerability scanning itself; it relies on already collected vulnerability data. It also cannot guarantee up-to-date exploit information beyond what is present in the input data.", + "examples": [ + "Analyze a JSON vulnerability report filtering for high severity only", + "Summarize vulnerabilities grouped by package from an XML report", + "Export vulnerability analysis results as a CSV for reporting" + ] + }, + "tags": [ + "etl", + "vulnerability", + "security", + "analysis", + "data-processing", + "remediation", + "severity-filter", + "exploitability" + ], + "examples": [ + { + "inputJson": "{\"inputSource\":\"https://example.com/vuln-report.json\",\"inputFormat\":\"json\",\"severityThreshold\":\"high\",\"includeExploitability\":true,\"groupBy\":\"package\",\"outputFormat\":\"json\"}", + "description": "Analyze a JSON vulnerability report from a URL, filtering for high severity vulnerabilities, including exploitability, grouped by package, output in JSON format." + }, + { + "inputJson": "{\"inputSource\":\"/data/scans/scan-results.xml\",\"inputFormat\":\"xml\",\"severityThreshold\":\"medium\",\"includeExploitability\":false,\"groupBy\":\"severity\",\"outputFormat\":\"csv\"}", + "description": "Parse a local XML scan results file, include vulnerabilities of medium or higher severity, do not include exploitability info, group by severity, output CSV." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "etl-processes.analyzeMarkdown", + "description": "Analyzes Markdown text input to extract structured information such as headings, links, code blocks, lists, and metadata. The tool processes raw Markdown content and outputs a detailed summary and categorized components that facilitate further ETL workflows and data transformations.", + "category": "etl-processes", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "The raw Markdown text content to analyze and extract structured elements from.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractHeadings", + "type": "boolean", + "description": "Whether to extract and list all headings with their levels and text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "Whether to extract all hyperlinks and references found within the Markdown content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractCodeBlocks", + "type": "boolean", + "description": "Whether to identify and extract all code blocks, including language if specified.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractLists", + "type": "boolean", + "description": "Whether to extract ordered and unordered lists as nested structures.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractMetadata", + "type": "boolean", + "description": "Whether to extract front-matter or YAML metadata if present at the top of the Markdown.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured analysis object containing arrays of extracted elements such as headings, links, code blocks, lists, metadata summary, and an overall summary of the Markdown document." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to programmatically analyze Markdown documents to extract semantic components for ETL pipelines, content indexing, or document transformations. It helps break down complex Markdown content into structured data suitable for downstream processing or aggregation.", + "limitations": "The tool focuses on common Markdown elements and may not support custom Markdown extensions or embedded HTML elements comprehensively. It does not perform content sentiment analysis or natural language understanding beyond structural parsing.", + "examples": [ + "Analyze the structure of a README.md to extract all headings and links.", + "Extract code samples and metadata from a Markdown blog post for ingestion into a knowledge base.", + "Summarize the list items and headings in a Markdown-based project documentation." + ] + }, + "tags": [ + "etl", + "markdown", + "analysis", + "document-processing", + "content-extraction", + "parsing" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Project Title\\nThis is an example README file.\\n\\n## Features\\n- Easy to use\\n- Fast\\n\\n[Link](https://example.com)\\n\\n```js\\nconsole.log('Hello world');\\n```\",\"extractHeadings\":true,\"extractLinks\":true,\"extractCodeBlocks\":true,\"extractLists\":true,\"extractMetadata\":false}", + "description": "Analyze Markdown README content to extract headings, links, code blocks, and lists without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "etl-processes.analyzeExpense", + "description": "This tool analyzes business expense data by extracting key financial metrics, categorizing expenses, identifying unusual patterns or outliers, and generating summary reports. It accepts structured expense records as input and outputs detailed analytical results to support financial decision-making.", + "category": "etl-processes", + "parameters": [ + { + "name": "expenseData", + "type": "array", + "description": "Array of expense records, where each record includes amount, category, date, and description fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional object specifying startDate and endDate to limit analysis to a specific period.", + "required": false, + "defaultValue": "" + }, + { + "name": "categoriesFilter", + "type": "array", + "description": "Optional list of expense categories to include in the analysis; if omitted, all categories are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "detectOutliers", + "type": "boolean", + "description": "Flag to enable or disable outlier detection in the expense data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to standardize amounts if needed.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including total expenses, category-wise breakdown, outlier flagging, trends over time, and summary statistics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to process and interpret business expense records to provide financial insights, identify irregular spending, or prepare reports that support budgeting and cost optimization decisions.", + "limitations": "This tool does not perform data cleaning or correction; it requires well-structured input. It cannot predict future expenses or integrate external financial data automatically.", + "examples": [ + "Analyze monthly expenses for the last quarter highlighting any anomalies.", + "Summarize the total and category-specific costs for travel and meals expenses.", + "Identify unusual high-value expenses within the last year." + ] + }, + "tags": [ + "etl", + "expense-analysis", + "finance", + "business-intelligence", + "data-processing" + ], + "examples": [ + { + "inputJson": "{\"expenseData\":[{\"amount\":120.50,\"category\":\"Travel\",\"date\":\"2024-04-05\",\"description\":\"Flight to NYC\"},{\"amount\":45.00,\"category\":\"Meals\",\"date\":\"2024-04-06\",\"description\":\"Client lunch\"},{\"amount\":700.00,\"category\":\"Equipment\",\"date\":\"2024-04-07\",\"description\":\"New laptop purchase\"}],\"dateRange\":{\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\"},\"categoriesFilter\":[\"Travel\",\"Meals\"],\"detectOutliers\":true,\"currency\":\"USD\"}", + "description": "Analyze travel and meals expenses for April 2024, detecting outliers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "etl-processes.downloadVideo", + "description": "This tool downloads video content from specified URL sources. It accepts parameters such as the video URL, desired output format, video quality, and optional authentication tokens. The tool fetches the video stream, handles format conversion if needed, and saves the video locally or to a specified path, returning metadata about the downloaded file.", + "category": "etl-processes", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The direct URL or streaming source of the video to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired video file format to save as (e.g., mp4, mkv, webm).", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "quality", + "type": "string", + "description": "Requested video quality or resolution (e.g., 1080p, 720p, highest).", + "required": false, + "defaultValue": "highest" + }, + { + "name": "savePath", + "type": "string", + "description": "The file system path or directory where the video will be saved.", + "required": false, + "defaultValue": "./" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or cookies for accessing protected videos.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for download completion before aborting.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "Details about the downloaded video including file path, format, size in bytes, duration in seconds, and a status message." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically download video content from online sources to local or server storage for further processing or archival. It is suitable for automated data pipelines, content ingestion workflows, and batch downloading scenarios needing format conversion or quality selection.", + "limitations": "Cannot download from websites that actively block automated scraping or require interactive captcha verification. Does not support downloading encrypted DRM-protected videos.", + "examples": [ + "Download a video from a public URL in 720p MP4 format.", + "Save a video from a private source using an authentication token.", + "Fallback to highest quality download when quality parameter is not specified." + ] + }, + "tags": [ + "download", + "video", + "media", + "etl", + "format-conversion", + "streaming", + "automation" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/sample.mp4\",\"outputFormat\":\"mp4\",\"quality\":\"720p\",\"savePath\":\"/videos/\"}", + "description": "Download a sample video from a public URL, save as 720p mp4 in /videos/ directory." + }, + { + "inputJson": "{\"videoUrl\":\"https://privatevideos.com/protected/vid123\",\"authToken\":\"Bearer abcdef12345\",\"outputFormat\":\"webm\"}", + "description": "Download a protected video from a private source with authentication token, saving as webm format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "etl-processes.downloadTable", + "description": "Downloads a structured data table from a specified web API endpoint or database query. Accepts parameters for source URL or connection info, optional authentication credentials, query or API parameters, and export format. Processes the request, extracts the table data, and returns it in the requested format (CSV, JSON, Excel).", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceType", + "type": "string", + "description": "Type of source to download data from: 'api' or 'database'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "For 'api' source type, the full API URL to fetch the table data from.", + "required": false, + "defaultValue": "" + }, + { + "name": "dbConnectionString", + "type": "string", + "description": "For 'database' source type, the connection string to the database server.", + "required": false, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "For 'database' source type, the SQL query to extract the table data.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key if required by the API or database.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the table data: 'csv', 'json', or 'xlsx'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "queryParams", + "type": "object", + "description": "Optional key-value pairs to append as query parameters to the API URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for response before timing out.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the table data in the requested outputFormat, along with metadata such as row count and columns list." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve tabular data from a REST API endpoint or a database by issuing a query or HTTP GET request and then transform or analyze that data downstream. It is most useful for automation pipelines that integrate external data sources into ETL processes or reports.", + "limitations": "The tool does not support streaming of very large datasets natively and expects the data to fit in memory. It assumes RESTful APIs or SQL-based databases. It cannot parse tables from unstructured web pages or non-tabular formats.", + "examples": [ + "Download sales data table from a REST API as JSON.", + "Fetch customer records from a database using a SQL query and export to CSV.", + "Retrieve financial time series data from an authenticated API endpoint as Excel file." + ] + }, + "tags": [ + "download", + "etl", + "table", + "api", + "database", + "data extraction", + "export" + ], + "examples": [ + { + "inputJson": "{\"sourceType\":\"api\",\"sourceUrl\":\"https://api.example.com/v1/sales\",\"authToken\":\"abc123\",\"outputFormat\":\"json\"}", + "description": "Download sales data from a REST API endpoint with authentication, output as JSON." + }, + { + "inputJson": "{\"sourceType\":\"database\",\"dbConnectionString\":\"Server=myServer;Database=salesdb;User Id=user;Password=pass;\",\"query\":\"SELECT * FROM customers WHERE active=1;\",\"outputFormat\":\"csv\"}", + "description": "Query active customer records from a database and download as CSV file." + }, + { + "inputJson": "{\"sourceType\":\"api\",\"sourceUrl\":\"https://financialdata.example.com/api/timeseries\",\"authToken\":\"tokenXYZ\",\"queryParams\":{\"symbol\":\"AAPL\",\"start\":\"2023-01-01\",\"end\":\"2023-06-01\"},\"outputFormat\":\"xlsx\"}", + "description": "Retrieve Apple stock time series data from financial API with parameters, export as Excel." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "etl-processes.uploadTable", + "description": "Uploads tabular data to a specified target destination. Accepts input as CSV text, JSON array of objects, or a file path. Processes the data by parsing and optionally transforming columns, then loads it into a target database table or storage system. Returns status and metadata about the upload operation.", + "category": "etl-processes", + "parameters": [ + { + "name": "dataFormat", + "type": "string", + "description": "The format of the input table data; accepted values are 'csv', 'json', or 'file'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableData", + "type": "string", + "description": "The actual table data content as a CSV string or JSON string when dataFormat is 'csv' or 'json'. Ignored if dataFormat is 'file'.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "The file path or URI pointing to the data file when dataFormat is 'file'.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetConnectionString", + "type": "string", + "description": "Connection string or endpoint where the table data will be uploaded to, e.g., a database connection URI.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetTableName", + "type": "string", + "description": "Name of the target table in the destination to upload data into.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnMapping", + "type": "object", + "description": "Optional mapping of source column names to target column names for transformation purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "truncateBeforeLoad", + "type": "boolean", + "description": "If true, truncate the target table before loading new data. Otherwise, data will be appended.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status (success/failure), number of records uploaded, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload structured tabular data from text, files, or JSON arrays into a database or data warehouse during ETL workflows. It automates parsing, transforming column names, and loading data to a specified target table.", + "limitations": "This tool does not perform complex data validation or transformation beyond simple column renaming. It does not support incremental loads or schema migrations. Only basic CSV, JSON, or file input formats are supported.", + "examples": [ + "Upload CSV string data to a PostgreSQL sales table, truncating existing data.", + "Upload JSON array of user activity logs to a MongoDB collection without deleting existing records.", + "Upload a CSV file located at a URI to a MySQL database table, renaming columns according to a mapping." + ] + }, + "tags": [ + "upload", + "etl", + "table", + "csv", + "json", + "database", + "data-integration" + ], + "examples": [ + { + "inputJson": "{\"dataFormat\":\"csv\",\"tableData\":\"id,name,age\\n1,Alice,30\\n2,Bob,25\",\"targetConnectionString\":\"postgresql://user:pass@host:5432/db\",\"targetTableName\":\"users\",\"truncateBeforeLoad\":true}", + "description": "Upload a small CSV string with user data into a PostgreSQL users table, truncating old data first." + }, + { + "inputJson": "{\"dataFormat\":\"json\",\"tableData\":\"[{\\\"id\\\":101,\\\"event\\\":\\\"login\\\",\\\"time\\\":\\\"2024-01-01T12:00:00Z\\\"}]\",\"targetConnectionString\":\"mongodb://user:pass@host:27017/db\",\"targetTableName\":\"activityLogs\",\"truncateBeforeLoad\":false}", + "description": "Upload JSON array of activity logs into a MongoDB collection, appending data." + }, + { + "inputJson": "{\"dataFormat\":\"file\",\"filePath\":\"s3://mybucket/data/export.csv\",\"targetConnectionString\":\"mysql://user:pass@host:3306/db\",\"targetTableName\":\"sales_data\",\"columnMapping\":{\"product_id\":\"prod_id\",\"sales\":\"amount\"},\"truncateBeforeLoad\":true}", + "description": "Upload a CSV file stored in S3 to MySQL sales_data table with column renaming and truncation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "etl-processes.sendThread", + "description": "This tool sends a communication thread, consisting of multiple messages, to a specified external destination endpoint via an API or webhook. It accepts a thread object containing metadata and messages, processes it into the required format, and delivers a success/failure status along with any response data from the destination.", + "category": "etl-processes", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "The unique identifier of the thread to be sent. Required to retrieve the thread data.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "The URL endpoint where the thread data should be sent, typically a webhook or API endpoint. Must be a valid HTTP/HTTPS URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token (e.g., Bearer token) to authorize the request to the destination.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include thread metadata (like participants, timestamps) in the payload. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "messageFormat", + "type": "string", + "description": "Format to send messages in the payload, e.g., 'text', 'html', or 'markdown'. Defaults to 'text'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the destination to respond before timing out. Defaults to 30 seconds.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Contains the status of the sending operation including success boolean, HTTP status code from destination, and any response body or error message." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to export or forward an existing communication thread from your system to an external communication platform, archiving service, or partner system. It automates sending structured conversation data with optional authentication and customizable payload format.", + "limitations": "This tool does not create or modify thread content; it only sends existing threads. It requires the destination URL to accept POST requests with the thread data. It cannot guarantee delivery beyond the response it receives from the destination endpoint.", + "examples": [ + "Send a customer support conversation thread to an external CRM system webhook for record-keeping.", + "Forward a moderated chat thread to a partner system for compliance review.", + "Export a project discussion thread in markdown format to a collaboration tool via its API." + ] + }, + "tags": [ + "ETL", + "thread", + "send", + "external-communication", + "webhook", + "api-integration", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"abc123\",\"destinationUrl\":\"https://api.externalcrm.com/threads\",\"authToken\":\"Bearer token_xyz\",\"includeMetadata\":true,\"messageFormat\":\"text\",\"timeoutSeconds\":20}", + "description": "Send thread abc123 to an external CRM webhook with authentication, including metadata, sending messages as plain text, waiting 20 seconds for a response." + }, + { + "inputJson": "{\"threadId\":\"project-discussion-789\",\"destinationUrl\":\"https://hooks.collabtool.com/postThread\",\"includeMetadata\":false,\"messageFormat\":\"markdown\"}", + "description": "Send a project discussion thread formatted in markdown to a collaboration tool webhook without metadata, no authentication token provided." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "etl-processes.renderSentence", + "description": "This tool accepts a structured data object representing sentence components such as subject, verb, objects, and modifiers, then composes and renders a grammatically correct English sentence as a string. It transforms input elements into coherent natural language output.", + "category": "etl-processes", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The main subject of the sentence to render.", + "required": true, + "defaultValue": "" + }, + { + "name": "verb", + "type": "string", + "description": "The main verb describing the action or state.", + "required": true, + "defaultValue": "" + }, + { + "name": "objects", + "type": "array", + "description": "An optional array of objects or complements related to the verb.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "modifiers", + "type": "array", + "description": "Optional array of modifiers providing additional sentence details (e.g., adverbs, adjectives, prepositional phrases).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tense", + "type": "string", + "description": "Verb tense to apply: 'present', 'past', or 'future'. Defaults to 'present'.", + "required": false, + "defaultValue": "present" + }, + { + "name": "isPassive", + "type": "boolean", + "description": "Flag indicating if sentence should be rendered in passive voice.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the rendered sentence as a single string under the property 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform structured semantic components of a sentence into a correctly formed, fluent English sentence string during ETL processes that require data normalization or natural language generation from semantic data.", + "limitations": "This tool does not support languages other than English, complex multi-clause sentences, or nuanced syntax beyond basic passive/active voice and simple modifiers.", + "examples": [ + "Render a sentence with subject 'The cat', verb 'eat', and object 'fish' in present tense.", + "Render sentence with subject 'She', verb 'write', and object 'a letter' in past tense, passive voice.", + "Render sentence with subject 'They', verb 'go', modifiers ['quickly', 'to the park'] in future tense." + ] + }, + "tags": [ + "etl", + "sentence rendering", + "natural language generation", + "text transformation" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"The cat\",\"verb\":\"eat\",\"objects\":[\"fish\"],\"modifiers\":[],\"tense\":\"present\",\"isPassive\":false}", + "description": "Render a simple present tense active voice sentence." + }, + { + "inputJson": "{\"subject\":\"She\",\"verb\":\"write\",\"objects\":[\"a letter\"],\"modifiers\":[],\"tense\":\"past\",\"isPassive\":true}", + "description": "Render a past tense passive voice sentence." + }, + { + "inputJson": "{\"subject\":\"They\",\"verb\":\"go\",\"objects\":[],\"modifiers\":[\"quickly\",\"to the park\"],\"tense\":\"future\",\"isPassive\":false}", + "description": "Render a future tense sentence with adverb and prepositional phrase modifiers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Sentence", + "context": null + } + }, + { + "name": "etl-processes.renderSummary", + "description": "This tool accepts raw data input in JSON or CSV format, processes it to extract key metrics and insights, and outputs a clear, concise summary report in text or JSON format. It helps transform extracted data into human-readable summaries suitable for decision-making or reporting.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw data input as a JSON string or CSV text to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data, either 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "summaryType", + "type": "string", + "description": "Type of summary to render, e.g., 'overview', 'statistics', or 'trends'.", + "required": false, + "defaultValue": "overview" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the summary, either 'text' or 'json'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the summary in characters or lines.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated summary as a string and metadata such as summary length and input data statistics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw extracted data into a readable summary that highlights key findings, patterns or statistics. It is ideal for generating human-friendly reports from ETL pipeline outputs, enabling easier interpretation and decision-making.", + "limitations": "This tool does not perform deep data analysis or visualization. It summarizes data based on basic statistics and patterns but cannot replace domain expert analysis or generate complex analytical reports.", + "examples": [ + "Generate a brief summary of sales data from CSV input highlighting total sales and trends.", + "Render a JSON summary report from raw JSON customer feedback data focusing on sentiment distribution.", + "Create a text overview summary of imported JSON data outlining key metrics and data completeness." + ] + }, + "tags": [ + "etl", + "summary", + "data-processing", + "reporting", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"product\\\":\\\"A\\\",\\\"sales\\\":100},{\\\"product\\\":\\\"B\\\",\\\"sales\\\":150}]\",\"inputFormat\":\"json\",\"summaryType\":\"overview\",\"outputFormat\":\"text\",\"maxLength\":200}", + "description": "Summarize simple sales data in JSON format to an overview text." + }, + { + "inputJson": "{\"inputData\":\"product,sales\\nA,100\\nB,150\\nC,200\",\"inputFormat\":\"csv\",\"summaryType\":\"statistics\",\"outputFormat\":\"json\",\"maxLength\":300}", + "description": "Extract statistical summary from CSV sales data output as JSON." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "etl-processes.formatArticle", + "description": "Formats raw article text by applying structured transformations such as trimming, punctuation correction, paragraph segmentation, and optional markdown or HTML styling. Accepts raw article string input and outputs a clean, standardized formatted article string ready for publication or further processing.", + "category": "etl-processes", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The raw article text that needs formatting, including paragraphs and sentences.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format, such as 'plain', 'markdown', or 'html'. Determines formatting style applied.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "applyParagraphSegmentation", + "type": "boolean", + "description": "If true, segments text into paragraphs based on line breaks or sentence cues.", + "required": false, + "defaultValue": "true" + }, + { + "name": "correctPunctuation", + "type": "boolean", + "description": "If true, fixes common punctuation errors and ensures consistent spacing after punctuation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, trims leading and trailing whitespace from lines and the whole text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum character length for a line before wrapping or splitting into paragraphs, only affects plain text.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article text string under the key 'formattedText'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean and standardize raw article text input for downstream processing or presentation, such as preparing content for publishing platforms, newsletters, or further data extraction. It ensures consistent paragraph grouping, punctuation correction, and output formatting (plain, markdown, or html).", + "limitations": "This tool does not perform semantic editing, fact-checking, or language translation. It does not generate summaries or handle multimedia content within articles.", + "examples": [ + "Format raw article text into clean markdown for newsletter inclusion.", + "Produce plain text formatted article with correct paragraphing and punctuation.", + "Convert raw article to html-formatted string for web display." + ] + }, + "tags": [ + "etl", + "formatting", + "article", + "text-processing", + "content-cleaning", + "markdown", + "html" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"This is the first sentence.This is the second sentence.\\n\\nThis is a new paragraph with some extra spaces.\",\"outputFormat\":\"plain\",\"applyParagraphSegmentation\":true,\"correctPunctuation\":true,\"trimWhitespace\":true,\"maxLineLength\":80}", + "description": "Format raw text with paragraphs and punctuation correction into plain text." + }, + { + "inputJson": "{\"rawText\":\"Here is a header\\nAnd some text that follows it.\\nAnother sentence.\",\"outputFormat\":\"markdown\",\"applyParagraphSegmentation\":true,\"correctPunctuation\":true,\"trimWhitespace\":true}", + "description": "Format raw article text to markdown with paragraph segmentation." + }, + { + "inputJson": "{\"rawText\":\"Some raw unformatted article text here. It lacks structure.\",\"outputFormat\":\"html\",\"applyParagraphSegmentation\":false,\"correctPunctuation\":true,\"trimWhitespace\":true}", + "description": "Format raw article text into an HTML string without paragraph segmentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "etl-processes.buildWorkflow", + "description": "Builds a customizable ETL (Extract, Transform, Load) workflow by accepting a configuration object defining data sources, transformation steps, and target destinations. Processes the configuration to output a structured workflow script or object ready for execution by ETL tools or platforms.", + "category": "etl-processes", + "parameters": [ + { + "name": "sources", + "type": "array", + "description": "List of data source definitions including type, connection details, and query parameters for extraction.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "Sequence of transformation steps specifying operations like filtering, mapping, aggregations to apply on extracted data.", + "required": true, + "defaultValue": "" + }, + { + "name": "targets", + "type": "array", + "description": "Definitions of target destinations where processed data is to be loaded, including database or file output details.", + "required": true, + "defaultValue": "" + }, + { + "name": "workflowName", + "type": "string", + "description": "A descriptive name for the ETL workflow.", + "required": false, + "defaultValue": "\"UntitledWorkflow\"" + }, + { + "name": "schedule", + "type": "string", + "description": "Optional cron-style schedule string for automated workflow execution timing.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "errorHandling", + "type": "object", + "description": "Configuration object specifying error handling strategies such as retries, logging, and notification.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A structured ETL workflow object or script, including steps sequenced for execution, metadata about the workflow, and configuration for running the process." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically define complex ETL workflows from configuration data, enabling automated pipeline building for data integration tasks. It suits scenarios where data engineers or AI agents need to assemble multi-step extraction, transformation, and loading processes dynamically without manual scripting.", + "limitations": "This tool does not execute the ETL workflows; it only builds the workflow definition. It also assumes that input configuration is valid and does not validate data connectivity or schema compatibility.", + "examples": [ + "Build an ETL workflow to extract sales data from a SQL database, transform by filtering last quarter's sales, aggregate revenue by region, and load into a data warehouse.", + "Create a nightly scheduled workflow extracting logs from API endpoints, transform JSON logs into tabular format, and save to cloud storage.", + "Generate an ETL workflow that ingests CSV files, applies cleaning and enrichment transformations, and writes results to an analytical data lake." + ] + }, + "tags": [ + "etl", + "workflow", + "data-integration", + "automation", + "pipeline", + "transform", + "extract", + "load" + ], + "examples": [ + { + "inputJson": "{\"sources\":[{\"type\":\"sql\",\"connectionString\":\"Server=myServer;Database=sales;User Id=user;Password=pass;\",\"query\":\"SELECT * FROM orders\"}],\"transformations\":[{\"type\":\"filter\",\"condition\":\"order_date >= '2024-01-01'\"},{\"type\":\"aggregate\",\"groupBy\":[\"region\"],\"aggregates\":{\"revenue\":\"sum\"}}],\"targets\":[{\"type\":\"dataWarehouse\",\"connectionString\":\"Server=dwServer;Database=analytics;\"}],\"workflowName\":\"Q1 Sales Aggregation\",\"schedule\":\"0 0 * * *\",\"errorHandling\":{\"retryCount\":3,\"alertEmails\":[\"ops@example.com\"]}}", + "description": "ETL workflow extracting orders data from SQL, filtering by date, aggregating revenue by region, and loading into a data warehouse with daily schedule and error retry." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "etl-processes.buildCluster", + "description": "Builds a scalable data processing cluster environment for ETL workloads based on configurable parameters. Accepts cluster specifications such as node count, instance type, storage size, and network settings. Provisions and configures the cluster resources, returning connection details and cluster status.", + "category": "etl-processes", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "Unique name identifier for the ETL cluster to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of worker nodes in the cluster to deploy.", + "required": true, + "defaultValue": "3" + }, + { + "name": "instanceType", + "type": "string", + "description": "Type or size of compute instances to use for each node.", + "required": true, + "defaultValue": "m5.large" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "Storage volume size per node in gigabytes.", + "required": false, + "defaultValue": "100" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration settings including VPC ID and subnet IDs.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Whether to enable auto scaling policies on the cluster.", + "required": false, + "defaultValue": "false" + }, + { + "name": "autoScalingConfig", + "type": "object", + "description": "Auto scaling parameters like min/max node counts if enabled.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cluster ID, endpoint connection details, current status, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when an automated process requires provisioning a new ETL cluster environment customized by resource size and performance needs. Ideal for scenarios needing reproducible, scalable data processing clusters without manual cloud setup.", + "limitations": "Does not handle actual ETL job deployment or monitoring after cluster creation. Network and instance types must be valid and supported by the target cloud provider.", + "examples": [ + "Create a 5-node cluster with large instances and 200GB storage per node.", + "Build a minimal ETL cluster with auto scaling enabled between 2 and 10 nodes.", + "Set up a cluster named 'SalesDataProcessing' with specific network configuration in a private VPC." + ] + }, + "tags": [ + "etl", + "cluster", + "provisioning", + "cloud", + "scaling", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"AnalyticsCluster\",\"nodeCount\":5,\"instanceType\":\"m5.xlarge\",\"storageSizeGB\":200,\"enableAutoScaling\":true,\"autoScalingConfig\":{\"minNodes\":3,\"maxNodes\":10}}", + "description": "Creates a 5-node cluster with m5.xlarge instances, 200GB storage, and enabled auto scaling between 3 to 10 nodes." + }, + { + "inputJson": "{\"clusterName\":\"DevTestCluster\",\"nodeCount\":2,\"instanceType\":\"t3.medium\",\"storageSizeGB\":50}", + "description": "Builds a small development/testing cluster with 2 t3.medium instances and 50GB storage each." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "etl-processes.buildPackage", + "description": "Builds a deployable software package from ETL source code and resource files. Accepts a project directory path, optional configuration for build settings, and outputs a packaged artifact such as a ZIP or TAR file ready for deployment or distribution.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceDirectory", + "type": "string", + "description": "Absolute or relative path to the ETL project source code directory to package.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output package archive (e.g., zip, tar.gz).", + "required": false, + "defaultValue": "zip" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Whether to include external dependencies in the package.", + "required": false, + "defaultValue": "true" + }, + { + "name": "buildConfig", + "type": "object", + "description": "Optional build configuration parameters to customize the packaging process.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputPath", + "type": "string", + "description": "File system path where the final package file will be saved. If empty, defaults to sourceDirectory.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object indicating success status, path to the created package file, and any build messages or errors." + }, + "aiAgent": { + "useCase": "Use this tool when you need to compile and bundle ETL process source code and related files into a standardized deployable package (e.g., archive file) for deployment or distribution. It helps automate build steps such as dependency inclusion and output formatting.", + "limitations": "Does not perform source code compilation or validation beyond packaging files. Does not publish or upload the package to remote repositories or artifact servers.", + "examples": [ + "Build a zip package including dependencies from a given ETL project folder.", + "Create a tar.gz archive without dependencies for deployment.", + "Specify a custom output path for the built package file." + ] + }, + "tags": [ + "etl", + "build", + "package", + "deployment", + "automation", + "archive", + "software" + ], + "examples": [ + { + "inputJson": "{\"sourceDirectory\":\"./etlProjects/myPipeline\",\"outputFormat\":\"zip\",\"includeDependencies\":true,\"outputPath\":\"./deploy/myPipeline.zip\"}", + "description": "Build a ZIP package of the ETL project including dependencies, outputting to a custom path." + }, + { + "inputJson": "{\"sourceDirectory\":\"/data/etl/processing\",\"outputFormat\":\"tar.gz\",\"includeDependencies\":false}", + "description": "Create a tar.gz archive without dependencies from the specified ETL source directory." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "etl-processes.generateGraph", + "description": "Generates a graphical visualization from structured data inputs to assist ETL pipelines in visualizing data flows and relationships. Accepts datasets along with parameters specifying graph type, layout, and styling options, then outputs a visual graph representation encoded as SVG or PNG format for embedding or analysis.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "Array of objects representing nodes and edges data for graph construction. Required keys depend on chosen graphType.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, e.g., 'directed', 'undirected', 'flowchart', 'dependency'. Defines the relationships visualization style.", + "required": true, + "defaultValue": "\"directed\"" + }, + { + "name": "layout", + "type": "string", + "description": "Layout algorithm to arrange the graph nodes, such as 'force', 'circular', 'hierarchical', or 'grid'. Affects graph readability and aesthetics.", + "required": false, + "defaultValue": "\"force\"" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the output graph image. Supported options: 'svg' or 'png'.", + "required": false, + "defaultValue": "\"svg\"" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output graph image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output graph image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "nodeStyle", + "type": "object", + "description": "Optional styling options for graph nodes, such as color, size, and shape.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "edgeStyle", + "type": "object", + "description": "Optional styling for edges including color, thickness, and arrow types.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the graph image encoded as a base64 string and metadata including width, height, format, and total nodes and edges counts." + }, + "aiAgent": { + "useCase": "Use this tool when you have extracted or transformed data representing entities and relationships, and you need to generate a visual graph for documentation, analysis, or monitoring purposes within ETL processes. Ideal for visualizing data flows, dependencies, or network structures directly from data sources.", + "limitations": "Cannot generate interactive or dynamic graphs; output is a static image. Complex graphs with very large datasets may not render clearly or efficiently. It requires structured input data; raw unstructured data needs preprocessing.", + "examples": [ + "Generate a flowchart graph displaying the data processing steps between nodes with a hierarchical layout in SVG format.", + "Create a dependency graph showing module interconnections in a directed graph with a circular layout as PNG.", + "Visualize network topology using an undirected graph with force layout and custom styling for nodes and edges." + ] + }, + "tags": [ + "etl", + "graph", + "visualization", + "data-flow", + "dependency", + "image-generation", + "svg", + "png" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"id\":\"A\",\"label\":\"Extract\"},{\"id\":\"B\",\"label\":\"Transform\"},{\"id\":\"C\",\"label\":\"Load\"},{\"source\":\"A\",\"target\":\"B\"},{\"source\":\"B\",\"target\":\"C\"}],\"graphType\":\"directed\",\"layout\":\"hierarchical\",\"outputFormat\":\"svg\",\"width\":800,\"height\":600}", + "description": "Generate a hierarchical directed graph showing an ETL pipeline flow from extract to transform to load in SVG format." + }, + { + "inputJson": "{\"inputData\":[{\"id\":\"module1\",\"label\":\"Module 1\"},{\"id\":\"module2\",\"label\":\"Module 2\"},{\"id\":\"module3\",\"label\":\"Module 3\"},{\"source\":\"module1\",\"target\":\"module2\"},{\"source\":\"module2\",\"target\":\"module3\"}],\"graphType\":\"dependency\",\"layout\":\"circular\",\"outputFormat\":\"png\",\"width\":1024,\"height\":768}", + "description": "Create a circular layout dependency graph of software modules with PNG output format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "etl-processes.generateQuote", + "description": "Generates an inspirational or motivational quote based on specified themes or keywords. Accepts input parameters to customize the theme, length, and language of the quote. Produces a text string containing a relevant quote suitable for use in presentations, reports, or content generation.", + "category": "etl-processes", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "The thematic keyword guiding the type of quote to generate, e.g., 'success', 'innovation', or 'leadership'.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated quote to fit specific display constraints.", + "required": false, + "defaultValue": "200" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') to specify the output quote's language.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeAuthor", + "type": "boolean", + "description": "Flag indicating whether to append the author's name to the quote if available.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text, optional author name, and metadata such as theme and language." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when needing to generate motivational or thematic quotes to enrich content, presentations, or reports. It is ideal to produce context-sensitive and concise quotes based on themes or keywords relevant to the task.", + "limitations": "The tool does not generate original philosophical content and relies on existing knowledge bases; it may not produce quotes for highly obscure or novel themes. It also does not support multiple languages beyond common usage without additional model support.", + "examples": [ + "Generate a short inspirational quote about 'perseverance'.", + "Create a motivational leadership quote in Spanish, max 150 characters, including the author's name.", + "Produce an innovation-themed quote without author attribution for a presentation slide." + ] + }, + "tags": [ + "etl", + "generate", + "quote", + "motivational", + "content-generation", + "text" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"perseverance\",\"maxLength\":100,\"language\":\"en\",\"includeAuthor\":true}", + "description": "Generate a short inspirational quote about perseverance including the author." + }, + { + "inputJson": "{\"theme\":\"leadership\",\"maxLength\":150,\"language\":\"es\",\"includeAuthor\":true}", + "description": "Generate a motivational leadership quote in Spanish including the author." + }, + { + "inputJson": "{\"theme\":\"innovation\",\"maxLength\":120,\"language\":\"en\",\"includeAuthor\":false}", + "description": "Generate an innovation-themed quote without the author's name for concise display." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "etl-processes.generateConversion", + "description": "This tool processes raw user event data and session information to generate conversion metrics, such as conversion rate, total conversions, and funnel drop-offs. It accepts arrays of events and sessions, applies optional filtering and funnel definitions, and outputs key conversion analytics useful for performance tracking.", + "category": "etl-processes", + "parameters": [ + { + "name": "events", + "type": "array", + "description": "An array of user event objects representing user actions with timestamps and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessions", + "type": "array", + "description": "An array of session objects representing user sessions with start and end times.", + "required": false, + "defaultValue": "" + }, + { + "name": "conversionFunnel", + "type": "array", + "description": "An ordered array of event names defining the conversion funnel steps to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO date string to filter events from this start date (inclusive).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO date string to filter events up to this end date (inclusive).", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentBy", + "type": "string", + "description": "Optional field name to segment conversion metrics by (e.g., country, device).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing overall conversion rate, total conversions count, funnel step drop-off counts, and optional segmentation breakdown." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw event and session data into actionable conversion analytics metrics for reporting or further analysis. It is ideal for generating funnel analysis, conversion rates, and identifying drop-offs based on defined event sequences and date ranges.", + "limitations": "This tool cannot clean raw data or handle event data normalization. It assumes input events and sessions are pre-processed into consistent formats. It also does not perform statistical significance testing or anomaly detection.", + "examples": [ + "Generate conversion rate for an e-commerce funnel from user events in the last month.", + "Calculate drop-offs at each step of a signup funnel segmented by device type.", + "Produce total conversion count and conversion rate for marketing campaign events within a specific date range." + ] + }, + "tags": [ + "etl", + "conversion-analysis", + "analytics", + "funnel", + "data-transformation", + "user-events" + ], + "examples": [ + { + "inputJson": "{\"events\":[{\"eventName\":\"Page View\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"userId\":\"u1\"},{\"eventName\":\"Add to Cart\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"userId\":\"u1\"},{\"eventName\":\"Purchase\",\"timestamp\":\"2024-05-01T10:10:00Z\",\"userId\":\"u1\"},{\"eventName\":\"Page View\",\"timestamp\":\"2024-05-02T12:00:00Z\",\"userId\":\"u2\"}],\"conversionFunnel\":[\"Page View\",\"Add to Cart\",\"Purchase\"],\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"}", + "description": "Analyze May 2024 purchase funnel conversion rates from raw page view, add to cart, and purchase events." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "etl-processes.generateAnomaly", + "description": "Generates anomaly detection results from time-series or event log data by extracting features, applying statistical or machine learning models to identify anomalous patterns, and outputs detailed anomaly reports including timestamps, severity scores, and context information.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "Array of data points or event records to analyze for anomalies, typically time-series or structured logs", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "Field name representing the timestamp in each data record for time-based analysis", + "required": true, + "defaultValue": "" + }, + { + "name": "featureFields", + "type": "array", + "description": "List of fields within the data to use as features in anomaly detection", + "required": false, + "defaultValue": "[]" + }, + { + "name": "method", + "type": "string", + "description": "Anomaly detection method to apply (e.g., 'statistical', 'isolationForest', 'autoencoder')", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Threshold sensitivity for flagging anomalies, between 0 (least sensitive) and 1 (most sensitive)", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the anomaly report output, e.g., 'json' or 'csv'", + "required": false, + "defaultValue": "json" + }, + { + "name": "contextWindow", + "type": "number", + "description": "Number of data points before and after an anomaly to include as context in the output", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of detected anomalies with timestamps, severity scores, affected data points, and optional contextual information to support investigation." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing time-series or event log data to detect unusual behavior or patterns such as spikes, drops, or anomalies that may indicate issues like fraud, system faults, or operational incidents. It supports multiple detection methods and outputs detailed reports to guide further analysis.", + "limitations": "This tool does not perform root cause analysis or real-time detection; requires properly formatted input data with accurate timestamps and feature fields. It also depends on the selected detection method's assumptions and may require parameter tuning for optimal results.", + "examples": [ + "Detect anomalies in server CPU usage logs over time to preemptively identify system overloads.", + "Identify unusual patterns in transaction logs that may indicate fraudulent activity.", + "Analyze sensor data streams to spot equipment malfunctions or unexpected deviations." + ] + }, + "tags": [ + "etl", + "anomalyDetection", + "dataAnalysis", + "timeSeries", + "machineLearning", + "analytics", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2023-04-01T12:00:00Z\",\"cpuUsage\":45},{\"timestamp\":\"2023-04-01T12:01:00Z\",\"cpuUsage\":85},{\"timestamp\":\"2023-04-01T12:02:00Z\",\"cpuUsage\":47}],\"timestampField\":\"timestamp\",\"featureFields\":[\"cpuUsage\"],\"method\":\"statistical\",\"sensitivity\":0.9,\"outputFormat\":\"json\",\"contextWindow\":1}", + "description": "Analyze CPU usage time-series data to detect spikes in utilization using a statistical method with high sensitivity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "etl-processes.generateDiagram", + "description": "Generates a visual diagram representing an ETL (Extract, Transform, Load) process based on structured input describing data sources, transformations, and loading targets. Takes JSON or object input defining the process steps and outputs a diagram image or graph data illustrating the workflow.", + "category": "etl-processes", + "parameters": [ + { + "name": "processDefinition", + "type": "object", + "description": "Structured definition of the ETL process including sources, transformations, and targets with metadata and IDs.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramFormat", + "type": "string", + "description": "Output format of the diagram image (e.g., 'png', 'svg') or 'graphData' for a JSON graph structure.", + "required": false, + "defaultValue": "png" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed metadata and descriptions in the diagram nodes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme for the diagram (e.g., 'light', 'dark').", + "required": false, + "defaultValue": "light" + }, + { + "name": "layout", + "type": "string", + "description": "Preferred layout orientation: 'vertical' or 'horizontal'.", + "required": false, + "defaultValue": "vertical" + } + ], + "returns": { + "type": "object", + "description": "An object containing either a base64-encoded string of the generated diagram image or a JSON graph representation if 'graphData' format was requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visualize ETL workflows for documentation, analysis, or presentation. It helps to transform structured ETL definitions into understandable diagrams showing data flow and transformation steps.", + "limitations": "This tool cannot execute or validate the ETL processes themselves; it only visualizes provided structured definitions. Complex custom transformations may not be fully represented visually.", + "examples": [ + "Generate a PNG diagram of an ETL process with three steps: source extraction, transformation, and database load.", + "Create an SVG diagram highlighting detailed metadata of the ETL flow in a horizontal layout.", + "Request a JSON graph data representation to integrate the diagram in another visualization tool." + ] + }, + "tags": [ + "etl", + "diagram", + "visualization", + "workflow", + "data pipeline", + "process mapping" + ], + "examples": [ + { + "inputJson": "{\"processDefinition\":{\"sources\":[{\"id\":\"src1\",\"type\":\"database\",\"name\":\"Customer DB\"}],\"transformations\":[{\"id\":\"trans1\",\"type\":\"filter\",\"name\":\"Filter Active Customers\"}],\"targets\":[{\"id\":\"tgt1\",\"type\":\"datawarehouse\",\"name\":\"Sales DW\"}]},\"diagramFormat\":\"png\",\"includeDetails\":true,\"theme\":\"light\",\"layout\":\"vertical\"}", + "description": "Generate a vertical light-themed PNG diagram illustrating a simple ETL process from a source database, filtering transformation, to a data warehouse target with detailed node info." + }, + { + "inputJson": "{\"processDefinition\":{\"sources\":[{\"id\":\"srcA\",\"type\":\"api\",\"name\":\"Sales API\"}],\"transformations\":[{\"id\":\"transB\",\"type\":\"aggregation\",\"name\":\"Sum Sales\"}],\"targets\":[{\"id\":\"tgtC\",\"type\":\"excel\",\"name\":\"Monthly Report\"}]},\"diagramFormat\":\"svg\",\"includeDetails\":false,\"theme\":\"dark\",\"layout\":\"horizontal\"}", + "description": "Generate a horizontal dark-themed SVG diagram of an ETL process from an API source to an Excel report target, omitting detailed metadata on diagram nodes." + }, + { + "inputJson": "{\"processDefinition\":{\"sources\":[{\"id\":\"source1\",\"type\":\"file\",\"name\":\"CSV Export\"}],\"transformations\":[{\"id\":\"transform1\",\"type\":\"mapping\",\"name\":\"Map Fields\"}],\"targets\":[{\"id\":\"target1\",\"type\":\"database\",\"name\":\"Analytics DB\"}]},\"diagramFormat\":\"graphData\",\"includeDetails\":true,\"theme\":\"light\",\"layout\":\"vertical\"}", + "description": "Output a JSON graph representation of the ETL steps for integration with external visualization tools, including detailed metadata and vertical layout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "etl-processes.generateBlogPost", + "description": "Generates a structured blog post document from given topic, keywords, writing style, and content length preferences. It processes input parameters to produce a coherent, SEO-optimized blog post text ready for publication or further editing.", + "category": "etl-processes", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the blog post to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "An array of relevant keywords to include for SEO optimization within the blog post.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readers to tailor the tone and complexity of the post.", + "required": false, + "defaultValue": "" + }, + { + "name": "writingStyle", + "type": "string", + "description": "Preferred style of writing such as formal, casual, technical, or persuasive to adjust voice and tone.", + "required": false, + "defaultValue": "casual" + }, + { + "name": "contentLength", + "type": "number", + "description": "Approximate target length of the blog post in words.", + "required": false, + "defaultValue": "800" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a concise summary or introduction paragraph at the beginning.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'es') to generate the blog post in.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated blog post with fields for title, body text, summary, and a list of embedded keywords." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a full-length blog post based on a specific topic and preferred style, incorporating relevant keywords for SEO. Useful for content marketing, publishing, or automating blog generation workflows.", + "limitations": "Cannot produce highly specialized technical content without additional domain-specific input; quality depends on clarity of input parameters; does not handle formatting beyond plain text output.", + "examples": [ + "Generate a 1000-word blog post about sustainable gardening targeting novice gardeners in a casual style including keywords 'organic', 'compost', 'eco-friendly'.", + "Create a technical blog post on cloud computing basics suitable for IT professionals with a formal tone.", + "Produce a short summary and detailed blog about healthy meal prep in English for a general audience." + ] + }, + "tags": [ + "etl", + "generate", + "blog", + "content", + "seo", + "writing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Sustainable Gardening Tips\",\"keywords\":[\"organic\",\"compost\",\"eco-friendly\"],\"targetAudience\":\"novice gardeners\",\"writingStyle\":\"casual\",\"contentLength\":1000,\"includeSummary\":true,\"language\":\"en\"}", + "description": "Generate a 1000-word, casual style blog post on sustainable gardening for beginners including specified SEO keywords." + }, + { + "inputJson": "{\"topic\":\"Cloud Computing Basics\",\"targetAudience\":\"IT professionals\",\"writingStyle\":\"formal\",\"contentLength\":1500,\"includeSummary\":true,\"language\":\"en\"}", + "description": "Create a formal 1500-word technical blog post about cloud computing targeting information technology professionals." + }, + { + "inputJson": "{\"topic\":\"Healthy Meal Prep\",\"contentLength\":600,\"includeSummary\":true,\"language\":\"en\"}", + "description": "Produce a concise, 600-word blog post with summary on healthy meal preparation for a general audience." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "etl-processes.generateMarkdown", + "description": "Generates a Markdown-formatted document from structured input data such as JSON or CSV. It processes the input by extracting tables, lists, or key-value pairs and outputs readable Markdown text, enabling easy data presentation or documentation generation.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Structured input data in JSON or CSV format to be converted into Markdown.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "If true, generates a table of contents based on headings in the generated Markdown.", + "required": false, + "defaultValue": "false" + }, + { + "name": "headerLevel", + "type": "number", + "description": "Starting header level (1-6) for generated Markdown headings.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxItemsInList", + "type": "number", + "description": "Maximum number of items to include in generated lists; beyond this, lists are truncated with an indicator.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated Markdown text as a string, suitable for rendering or saving as a Markdown file." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw structured data (JSON or CSV) into human-readable Markdown documentation or reports, such as generating data summaries, tables, or lists for documentation systems, static site generators, or markdown-based notes.", + "limitations": "Does not support complex data transformations, custom styling, or embedding of images. Input must be well-formed JSON or CSV; malformed input may cause errors. Does not parse deeply nested objects beyond basic tabular or list structures.", + "examples": [ + "Generate a markdown report from JSON data of sales figures.", + "Convert a CSV list of users into a Markdown table for documentation.", + "Create a Markdown file with a table of contents from structured input data." + ] + }, + "tags": [ + "etl", + "markdown", + "data-transformation", + "documentation", + "reports", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"name\\\":\\\"Alice\\\",\\\"age\\\":30},{\\\"name\\\":\\\"Bob\\\",\\\"age\\\":25}]\",\"inputFormat\":\"json\",\"includeTableOfContents\":false,\"headerLevel\":2,\"maxItemsInList\":10}", + "description": "Convert a JSON array of objects into a Markdown table." + }, + { + "inputJson": "{\"inputData\":\"name,age\\nAlice,30\\nBob,25\",\"inputFormat\":\"csv\",\"includeTableOfContents\":true,\"headerLevel\":3,\"maxItemsInList\":5}", + "description": "Convert a CSV string into a Markdown table with a table of contents and header level 3." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "etl-processes.generateReadme", + "description": "Generates a comprehensive README document for ETL processes based on provided metadata such as process description, source and destination details, transformation steps, and usage instructions. Accepts structured input and produces a formatted markdown string suitable for project documentation.", + "category": "etl-processes", + "parameters": [ + { + "name": "processName", + "type": "string", + "description": "The name of the ETL process or pipeline to be documented.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of what the ETL process does.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceDetails", + "type": "object", + "description": "Information about data sources including types, locations, and access methods.", + "required": false, + "defaultValue": "" + }, + { + "name": "transformationSteps", + "type": "array", + "description": "An ordered list of transformation step descriptions applied during the ETL process.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationDetails", + "type": "object", + "description": "Details about data destinations including types, locations, and loading methods.", + "required": false, + "defaultValue": "" + }, + { + "name": "usageInstructions", + "type": "string", + "description": "Instructions on how to execute or use the ETL process, including any command examples or parameters.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSections", + "type": "array", + "description": "Sections to include in the README such as ['Overview','Sources','Transformations','Destinations','Usage'].", + "required": false, + "defaultValue": "[\"Overview\",\"Sources\",\"Transformations\",\"Destinations\",\"Usage\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the README output, supported: 'markdown' or 'html'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README document as a string and the format used." + }, + "aiAgent": { + "useCase": "Use this tool when a structured and detailed README file for an ETL process is needed to accompany data infrastructure or data engineering projects. It automates documentation generation from metadata inputs, ensuring consistent and comprehensive project docs.", + "limitations": "This tool cannot generate README content without sufficient input metadata. It does not analyze raw data or the ETL code itself, relying solely on user-provided descriptions and details.", + "examples": [ + "Generate a README for an ETL pipeline extracting customer data from an SQL database, transforming it for analytics, and loading into a data warehouse.", + "Create usage instructions section for running the ETL process via CLI with parameters.", + "Produce a markdown README summarizing the transformation steps involved in a daily batch ETL job." + ] + }, + "tags": [ + "etl", + "documentation", + "generate", + "readme", + "data engineering", + "process", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"processName\":\"CustomerDataETL\",\"description\":\"Extracts customer data from SQL DB, transforms to anonymize personal info, and loads into analytics warehouse.\",\"sourceDetails\":{\"type\":\"SQL Database\",\"location\":\"db.company.com:1433\",\"credentials\":\"Required\"},\"transformationSteps\":[\"Extract all customer records\",\"Anonymize names and emails\",\"Aggregate purchase history\"],\"destinationDetails\":{\"type\":\"Data Warehouse\",\"location\":\"warehouse.company.com\"},\"usageInstructions\":\"Run the script with user credentials: ./run_etl.sh --user --passwd \",\"includeSections\":[\"Overview\",\"Sources\",\"Transformations\",\"Destinations\",\"Usage\"]}", + "description": "Generate a full README in markdown for a customer data ETL pipeline." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "etl-processes.generateTemplate", + "description": "Generates a reusable ETL (Extract, Transform, Load) process template based on user-specified data source configurations, transformation steps, and target destinations. Accepts details such as source type, transformation logic, and output format, then outputs a structured JSON or YAML template for consistent ETL workflows.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceType", + "type": "string", + "description": "Type of data source (e.g., 'mysql', 'csv', 'api'). Defines where the ETL process extracts data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "An ordered list of transformation steps to apply on the extracted data, e.g., filtering, mapping, aggregation. Each step is an object specifying the operation details.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetType", + "type": "string", + "description": "Type of target destination (e.g., 'dataWarehouse', 'jsonFile', 'api'). Defines where the transformed data will be loaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateFormat", + "type": "string", + "description": "The output format of the template; common choices are 'json' or 'yaml'. Determines how the ETL template is serialized.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeSchedule", + "type": "boolean", + "description": "Whether to include a scheduling configuration (e.g., cron expression) in the generated template for automated ETL runs.", + "required": false, + "defaultValue": "false" + }, + { + "name": "scheduleExpression", + "type": "string", + "description": "Cron or scheduler expression defining when to trigger the ETL job. Only used if includeSchedule is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A string representation of the ETL process template in the requested format, containing source details, transformation steps, target configuration, and optional scheduling info." + }, + "aiAgent": { + "useCase": "Use this tool when an automated, repeatable ETL workflow template is needed based on specific source, transformation, and target requirements. It helps standardize ETL jobs, reduces manual configuration, and supports automation by producing exportable templates in JSON or YAML that can be integrated into ETL execution engines.", + "limitations": "This tool generates templates but does not validate connections to actual data sources or execute the ETL process itself.", + "examples": [ + "Generate a JSON ETL template to extract from MySQL, filter and aggregate data, then load into a data warehouse.", + "Produce a YAML template for extracting CSV files, applying mapping transformations, and outputting JSON files.", + "Create a scheduled ETL template that runs hourly to fetch API data and store results into a database." + ] + }, + "tags": [ + "etl", + "template", + "automation", + "data-integration", + "process-design" + ], + "examples": [ + { + "inputJson": "{\"sourceType\":\"mysql\",\"transformations\":[{\"operation\":\"filter\",\"condition\":\"age>30\"},{\"operation\":\"map\",\"fields\":{\"fullname\":\"concat(firstName, ' ', lastName)\"}}],\"targetType\":\"dataWarehouse\",\"templateFormat\":\"json\",\"includeSchedule\":true,\"scheduleExpression\":\"0 0 * * *\"}", + "description": "Generate a JSON ETL template extracting from MySQL with filtering and mapping transformations, loading into a data warehouse and scheduled to run daily at midnight." + }, + { + "inputJson": "{\"sourceType\":\"csv\",\"transformations\":[{\"operation\":\"map\",\"fields\":{\"price\":\"price * 1.2\"}}],\"targetType\":\"jsonFile\",\"templateFormat\":\"yaml\",\"includeSchedule\":false}", + "description": "Create a YAML formatted template to read CSV data, apply a price increment transformation, and output to a JSON file without scheduling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "etl-processes.createCache", + "description": "Creates a configurable in-memory or distributed cache for ETL workflows to store intermediate or final transformed datasets. Accepts cache configuration parameters such as cache type, size limits, expiry policies, and persistence options. Outputs a cache instance reference with status and metadata for integration into ETL pipelines.", + "category": "etl-processes", + "parameters": [ + { + "name": "cacheName", + "type": "string", + "description": "Unique identifier for the cache instance being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create: 'in-memory' or 'distributed'.", + "required": true, + "defaultValue": "in-memory" + }, + { + "name": "maxSizeMB", + "type": "number", + "description": "Maximum size of the cache in megabytes before eviction triggers.", + "required": false, + "defaultValue": "512" + }, + { + "name": "expiryMinutes", + "type": "number", + "description": "Time in minutes after which cached entries expire automatically. Zero means no expiry.", + "required": false, + "defaultValue": "60" + }, + { + "name": "persistenceEnabled", + "type": "boolean", + "description": "Whether to persist cache data to disk for recovery after restarts.", + "required": false, + "defaultValue": "false" + }, + { + "name": "distributedConfig", + "type": "object", + "description": "Optional configuration object for distributed cache settings, e.g., cluster nodes and replication factors.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the cache instance ID, status ('created' or 'error'), configuration summary, and connection details if distributed." + }, + "aiAgent": { + "useCase": "Use this tool when an ETL pipeline requires a performant cache layer to store and reuse transformed data or intermediate results to reduce redundant processing and improve throughput. Especially useful for complex transformations or large datasets where recomputation cost is high.", + "limitations": "This tool does not manage the cache lifecycle beyond creation, nor does it handle actual data insertion or eviction policies runtime management; it only initializes the cache instance. It also does not support all types of caches outside those specified (in-memory or distributed).", + "examples": [ + "Create an in-memory cache named 'etlCache1' with 1GB max size and 30 minutes expiry.", + "Create a distributed cache named 'distributedETLCache' with persistence enabled and replication factor 3.", + "Create a simple in-memory cache with default parameters named 'tempCache'." + ] + }, + "tags": [ + "etl", + "cache", + "in-memory", + "distributed", + "performance", + "data-storage" + ], + "examples": [ + { + "inputJson": "{\"cacheName\":\"etlCache1\",\"cacheType\":\"in-memory\",\"maxSizeMB\":1024,\"expiryMinutes\":30,\"persistenceEnabled\":false}", + "description": "Create an in-memory cache named 'etlCache1' with 1024 MB max size and 30 minutes expiry" + }, + { + "inputJson": "{\"cacheName\":\"distributedETLCache\",\"cacheType\":\"distributed\",\"maxSizeMB\":2048,\"expiryMinutes\":60,\"persistenceEnabled\":true,\"distributedConfig\":{\"nodes\":[\"node1\",\"node2\",\"node3\"],\"replicationFactor\":3}}", + "description": "Create a distributed cache named 'distributedETLCache' with persistence enabled and replication factor 3" + }, + { + "inputJson": "{\"cacheName\":\"tempCache\",\"cacheType\":\"in-memory\"}", + "description": "Create a simple in-memory cache 'tempCache' with default size and expiry" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "etl-processes.createAnomaly", + "description": "This tool accepts time series or event data and applies statistical and machine learning methods to detect anomalies or outliers. It processes input datasets to identify unusual patterns or deviations from normal behavior and outputs structured anomaly reports including anomaly timestamps, scores, and metadata.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "Array of data points or event records, each as an object with timestamp and values to analyze. Required to specify the data to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "Name of the field in each data object representing the timestamp, used to order data chronologically.", + "required": true, + "defaultValue": "timestamp" + }, + { + "name": "valueField", + "type": "string", + "description": "Name of the numeric field in data objects to analyze for anomalies.", + "required": true, + "defaultValue": "value" + }, + { + "name": "method", + "type": "string", + "description": "Anomaly detection method to apply, e.g., 'statistical', 'machineLearning', or 'threshold'.", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity parameter between 0 and 1 controlling anomaly detection strictness; higher means more anomalies detected.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "windowSize", + "type": "number", + "description": "Number of data points or time units to consider for rolling/temporal context in anomaly detection.", + "required": false, + "defaultValue": "10" + }, + { + "name": "threshold", + "type": "number", + "description": "Numeric threshold for anomaly score above which points are marked anomalous (used if method supports thresholding).", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Whether to include additional context data with anomalies in the output, such as raw values or neighboring points.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of detected anomalies with timestamps, anomaly scores, and optional context." + }, + "aiAgent": { + "useCase": "Use this tool when processing time series or event log data to automatically identify unexpected or unusual data points that deviate from normal patterns which may indicate errors, fraud, system faults, or rare events. It supports multiple detection methods and parameters to tailor sensitivity and context.", + "limitations": "This tool does not perform root cause analysis or explain the anomaly origins. It assumes reasonably clean input data and may require tuning of parameters per dataset characteristics. Not suited for non-time series categorical anomaly detection without preprocessing.", + "examples": [ + "Detect anomalies in IoT sensor temperature readings over time to catch device malfunctions.", + "Identify unusual spikes in web traffic logs that might indicate a DDoS attack.", + "Spot abnormal financial transactions deviating from established patterns." + ] + }, + "tags": [ + "etl", + "anomaly-detection", + "analytics", + "time-series", + "machine-learning", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"value\":23.5},{\"timestamp\":\"2024-05-01T00:01:00Z\",\"value\":23.6},{\"timestamp\":\"2024-05-01T00:02:00Z\",\"value\":100.0},{\"timestamp\":\"2024-05-01T00:03:00Z\",\"value\":23.4}],\"timestampField\":\"timestamp\",\"valueField\":\"value\",\"method\":\"statistical\",\"sensitivity\":0.7,\"windowSize\":3,\"threshold\":0.75,\"includeContext\":true}", + "description": "Detect anomalies in a short IoT sensor temperature dataset using statistical method, highlighting the spike to 100.0 as anomalous." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "etl-processes.createConversion", + "description": "This tool accepts raw user interaction or event data, applies transformation rules to identify and extract conversion events (e.g., purchases, sign-ups), and outputs a structured list of conversion records. It supports customizable criteria for defining conversions, filtering conditions, and formats outputs for downstream analytics or reporting systems.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of event objects representing user interactions, each with timestamp, event type, user ID, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEventTypes", + "type": "array", + "description": "List of event type strings that qualify as conversion events (e.g., ['purchase', 'signup']).", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filtering criteria applied to events before conversion extraction, such as date ranges or user segments.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of output conversion data, e.g., 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata fields from the original events in the output conversions.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of extracted conversion events, each with standardized fields such as conversion type, user ID, timestamp, and optionally included metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw event logs or user activity datasets to identify specific conversion events for analytics, attribution, or reporting. It helps extract meaningful conversion insights from unstructured or semi-structured interaction data.", + "limitations": "This tool relies on correctly labeled event types and structured input data. It does not infer new conversion definitions beyond the supplied event types and filters, nor does it perform predictive modeling or anomaly detection.", + "examples": [ + "Extract all purchase conversions from event logs within the last 30 days.", + "Generate a CSV report of sign-up conversions in a marketing campaign filtered by user geography.", + "Identify conversion events including metadata fields from raw web interaction data." + ] + }, + "tags": [ + "etl", + "conversion", + "analytics", + "data-transformation", + "event-processing", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"eventType\":\"purchase\",\"userId\":\"user123\",\"metadata\":{\"productId\":\"prod567\",\"amount\":49.99}},{\"timestamp\":\"2024-05-01T10:05:00Z\",\"eventType\":\"click\",\"userId\":\"user123\",\"metadata\":{\"adId\":\"ad789\"}}],\"conversionEventTypes\":[\"purchase\"],\"filters\":{\"dateRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"}},\"outputFormat\":\"json\",\"includeMetadata\":true}", + "description": "Extract purchase conversions from events within May 2024, including metadata, and output as JSON." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "etl-processes.createAudio", + "description": "Creates an audio file by processing input text or audio snippets with optional transformations such as format conversion, volume adjustment, and noise reduction. Inputs can be raw text for TTS or multiple audio segments to combine. Outputs a processed audio file in the specified format.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputTexts", + "type": "array", + "description": "Array of text strings to convert to speech. Optional if inputAudioSegments provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "inputAudioSegments", + "type": "array", + "description": "Array of audio data URIs or base64 strings representing audio clips to be combined or processed. Optional if inputTexts provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired audio output file format, e.g., mp3, wav, or ogg.", + "required": true, + "defaultValue": "mp3" + }, + { + "name": "sampleRateHz", + "type": "number", + "description": "Sample rate for the output audio in hertz, such as 44100 or 16000.", + "required": false, + "defaultValue": "44100" + }, + { + "name": "volumeGainDb", + "type": "number", + "description": "Gain adjustment in decibels to apply to the output audio. Positive to amplify, negative to reduce volume.", + "required": false, + "defaultValue": "0" + }, + { + "name": "noiseReduction", + "type": "boolean", + "description": "Whether to apply noise reduction processing to the combined audio output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "voiceProfile", + "type": "string", + "description": "Voice profile identifier for text-to-speech synthesis when inputTexts is used. Use empty string for default voice.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the processed audio file data and metadata, including a base64 encoded audio string and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to produce or assemble audio output from text or multiple audio clips, including tasks such as generating speech from text or merging sound snippets with optional quality enhancements like volume normalization or noise reduction.", + "limitations": "This tool does not generate original music compositions, nor does it perform advanced audio editing such as multi-track mixing or effects beyond basic transformations listed. It requires either text inputs for TTS or audio segments to combine; it cannot process other media types.", + "examples": [ + "Create an mp3 audio file speaking the welcome message with default voice.", + "Combine three audio segments into a single wav file with noise reduction applied.", + "Generate a spoken version of a paragraph with increased volume and specific voice profile." + ] + }, + "tags": [ + "audio", + "etl", + "create", + "text-to-speech", + "audio-processing", + "media" + ], + "examples": [ + { + "inputJson": "{\"inputTexts\":[\"Hello, welcome to our service.\"],\"outputFormat\":\"mp3\",\"voiceProfile\":\"en-US-Wavenet-D\"}", + "description": "Generate a spoken MP3 audio from a greeting text using a specific voice profile." + }, + { + "inputJson": "{\"inputAudioSegments\":[\"data:audio/wav;base64,UklGR...\",\"data:audio/wav;base64,UklGR...\"],\"outputFormat\":\"wav\",\"noiseReduction\":true}", + "description": "Combine two WAV audio clips into one WAV file with noise reduction enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "etl-processes.createDiagram", + "description": "Generates a visual flow diagram representing ETL (Extract, Transform, Load) processes based on the provided configuration. Accepts structured input defining data sources, transformations, and destinations, and outputs a diagram in SVG or PNG format illustrating the ETL pipeline steps and their connections.", + "category": "etl-processes", + "parameters": [ + { + "name": "etlConfig", + "type": "object", + "description": "Structured configuration object defining the ETL steps including sources, transformations, and loads with their attributes and relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format for the diagram, such as 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include detailed metadata labels (like field names, types) in the diagram nodes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "layoutStyle", + "type": "string", + "description": "Preferred layout style for the diagram, e.g., 'vertical', 'horizontal', or 'circular'.", + "required": false, + "defaultValue": "vertical" + }, + { + "name": "nodeColorScheme", + "type": "string", + "description": "Color scheme to differentiate node types in the diagram, e.g., 'default', 'monochrome', or a JSON color map string.", + "required": false, + "defaultValue": "default" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated ETL diagram encoded as a base64 string and metadata about the diagram format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to visualize ETL workflows from configuration data to help users understand data pipelines, debug ETL designs, or generate documentation diagrams automatically. It is suitable for converting abstract ETL definitions into easy-to-understand graphical formats.", + "limitations": "This tool cannot execute or validate ETL jobs; it only creates visual diagrams. Extremely large or complex ETL configurations may lead to cluttered or overly complex diagrams. It does not support interactive or dynamic diagram features.", + "examples": [ + "Create a diagram from a JSON ETL config describing source tables, transformations, and destinations.", + "Generate a PNG image showing a horizontal layout of the ETL flow including field-level metadata.", + "Produce a monochrome SVG diagram for a simple ETL pipeline to embed in documentation." + ] + }, + "tags": [ + "ETL", + "diagram", + "visualization", + "data pipeline", + "flowchart", + "image generation" + ], + "examples": [ + { + "inputJson": "{\"etlConfig\":{\"sources\":[{\"name\":\"Orders\",\"type\":\"database\"}],\"transformations\":[{\"name\":\"FilterRecentOrders\",\"operation\":\"filter\",\"condition\":\"order_date > '2023-01-01'\"}],\"loads\":[{\"name\":\"DataWarehouse\",\"type\":\"database\"}],\"connections\":[{\"from\":\"Orders\",\"to\":\"FilterRecentOrders\"},{\"from\":\"FilterRecentOrders\",\"to\":\"DataWarehouse\"}]},\"outputFormat\":\"svg\",\"includeMetadata\":true,\"layoutStyle\":\"vertical\",\"nodeColorScheme\":\"default\"}", + "description": "Generate a vertical SVG ETL diagram with metadata labels showing flow from Orders source through filter transformation to a DataWarehouse load." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "etl-processes.createGraph", + "description": "Creates a structured graph representation from raw data inputs for ETL workflows. Accepts data in various tabular or JSON formats, applies optional data transformations and relationships extraction, then outputs a graph data structure suited for downstream analysis or loading into graph databases.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Raw input data in JSON or tabular structure to be converted into a graph format.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeKey", + "type": "string", + "description": "The key or column name in inputData to use as unique node identifiers.", + "required": true, + "defaultValue": "" + }, + { + "name": "edgeKeys", + "type": "array", + "description": "Array of two strings specifying the keys or columns that define edges between nodes (e.g., ['source', 'target']).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "transformations", + "type": "array", + "description": "Optional array of transformation rules to apply before graph creation, such as filtering or mapping functions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "directed", + "type": "boolean", + "description": "Whether the resulting graph edges should be directed or undirected.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeAttributes", + "type": "boolean", + "description": "Whether to include additional attributes from inputData nodes or edges in the graph output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A graph data structure containing nodes and edges with optional attributes, formatted for graph databases or analysis tools." + }, + "aiAgent": { + "useCase": "This tool is useful when extracting structured relationships from raw datasets during ETL processes, enabling the creation of graph representations to reveal connections or perform graph analytics downstream. Agents can use this to transform tabular or JSON data into graphs for network analysis, knowledge graphs, or graph database ingestion.", + "limitations": "Does not perform advanced graph analytics or visualization; focuses solely on extraction and transformation of input data into graph structures. Requires input data to contain identifiable keys for nodes and edges.", + "examples": [ + "Convert customer transaction data into a graph to analyze customer-product relationships.", + "Build a network graph from JSON social interaction logs to identify influencer nodes.", + "Extract and transform CSV supply chain data into a directed graph for bottleneck detection." + ] + }, + "tags": [ + "ETL", + "graph", + "data transformation", + "relationships", + "nodes", + "edges", + "structured data" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"transactions\":[{\"customerId\":\"C001\",\"productId\":\"P100\"},{\"customerId\":\"C002\",\"productId\":\"P200\"}]},\"nodeKey\":\"customerId\",\"edgeKeys\":[\"customerId\",\"productId\"],\"directed\":true,\"includeAttributes\":false}", + "description": "Create a directed graph from customer transaction data linking customers to products without additional attributes." + }, + { + "inputJson": "{\"inputData\":[{\"id\":\"node1\",\"friend\":\"node2\"},{\"id\":\"node2\",\"friend\":\"node3\"}],\"nodeKey\":\"id\",\"edgeKeys\":[\"id\",\"friend\"],\"directed\":false}", + "description": "Build an undirected social graph from a list of friendships represented as node edges." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "database-management.analyzeBudget", + "description": "This tool analyzes a company's budget data provided as structured JSON or database connection info. It calculates key financial metrics like total spend, category-wise expenses, variance against targets, and forecasts future budget trends, returning a comprehensive budget analysis report.", + "category": "database-management", + "parameters": [ + { + "name": "budgetData", + "type": "object", + "description": "Structured budget data input including income, expenses, categories, and timeline. Required if no databaseConnection provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseConnection", + "type": "object", + "description": "Database connection parameters (host, port, user, password, database) to fetch budget data. Required if no budgetData provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisPeriodStart", + "type": "string", + "description": "Start date for the budget analysis period in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisPeriodEnd", + "type": "string", + "description": "End date for the budget analysis period in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "forecastMonths", + "type": "number", + "description": "Number of future months to forecast budget trends for. Defaults to 3.", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeVarianceAnalysis", + "type": "boolean", + "description": "Flag to include variance analysis comparing actual spend to budgeted amounts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "categories", + "type": "array", + "description": "List of budget categories to specifically analyze. If empty, analyze all categories.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report containing total expenses, income, categorized spending, variance details, and forecasted budget data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to process and interpret business budget data to extract financial insights like spending distribution, variance from planned budgets, and future budget projections for decision making or reporting.", + "limitations": "Does not handle unstructured budget data formats or non-financial data analytics. Forecasting is basic and may not account for complex market conditions or external factors.", + "examples": [ + "Analyze the quarterly budget spent on marketing and forecast next three months.", + "Compare actual expenses versus budgeted amounts for operations for last fiscal year.", + "Provide a detailed breakdown of spending categories with variance analysis for the past six months." + ] + }, + "tags": [ + "database", + "budget", + "financial-analysis", + "forecasting", + "variance", + "business", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"budgetData\":{\"income\":100000,\"expenses\":[{\"category\":\"Marketing\",\"amount\":20000,\"date\":\"2024-01-15\"},{\"category\":\"Operations\",\"amount\":30000,\"date\":\"2024-01-20\"}],\"budgetTargets\":{\"Marketing\":25000,\"Operations\":32000}},\"analysisPeriodStart\":\"2024-01-01\",\"analysisPeriodEnd\":\"2024-03-31\",\"forecastMonths\":3,\"includeVarianceAnalysis\":true,\"categories\":[\"Marketing\",\"Operations\"]}", + "description": "Analyze Q1 2024 budget data for Marketing and Operations with variance analysis and 3-month forecast." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Budget", + "context": null + } + }, + { + "name": "etl-processes.createBlogPost", + "description": "Creates a structured blog post document by extracting and transforming input content and metadata. Accepts raw text content, optional title, author, tags, and publication date, processes for formatting and metadata embedding, and outputs a complete blog post object ready for storage or publishing.", + "category": "etl-processes", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The main textual content of the blog post.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the author of the blog post.", + "required": false, + "defaultValue": "\"Anonymous\"" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords associated with the blog post.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "publishDate", + "type": "string", + "description": "Publication date in ISO 8601 format (e.g., '2024-06-01T12:00:00Z').", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "summary", + "type": "string", + "description": "Short summary or excerpt of the blog post.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "A structured blog post object containing title, content, author, tags, publication date, summary, and a generated unique ID." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a well-structured blog post document from raw inputs such as title, content, and metadata. It is suitable for automating content creation pipelines, preparing posts for CMS ingestion, or standardizing blog content formatting.", + "limitations": "This tool does not perform advanced content writing or SEO optimization. It assumes input content is already finalized and does not generate images or media. It does not publish the blog post to any platform; it only creates the structured post object.", + "examples": [ + "Create a new blog post about data science titled 'Understanding ETL Processes' by author 'Jane Doe' with tags ['data', 'etl', 'pipeline'] and publish date '2024-06-01'.", + "Generate a blog post object with content 'Welcome to our new product launch...', title 'Product Launch Announcement', with no tags or author specified.", + "Create a blog post with title 'Weekly Tech Update', content from user input, and a summary 'Summary of this week's tech news.'" + ] + }, + "tags": [ + "etl", + "blog", + "content creation", + "document", + "metadata", + "post", + "automation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Understanding ETL Processes\",\"content\":\"ETL stands for Extract, Transform, Load...\",\"author\":\"Jane Doe\",\"tags\":[\"data\",\"etl\",\"pipeline\"],\"publishDate\":\"2024-06-01T12:00:00Z\"}", + "description": "Create a blog post about ETL with metadata." + }, + { + "inputJson": "{\"title\":\"Product Launch Announcement\",\"content\":\"Welcome to our new product launch...\"}", + "description": "Minimal blog post with title and content only." + }, + { + "inputJson": "{\"title\":\"Weekly Tech Update\",\"content\":\"This week in tech...\",\"summary\":\"Summary of this week's tech news.\"}", + "description": "Blog post including a short summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "etl-processes.createProposal", + "description": "Generates a structured ETL project proposal document based on input parameters describing the data sources, transformation rules, target destinations, and project timeline. Processes inputs to organize and format the content, producing a clear proposal text outlining the ETL process plan.", + "category": "etl-processes", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "The name/title of the ETL project proposal.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data sources involved; each item is an object describing source type and connection details.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "Array of transformation steps to apply, each describing transformation type and parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetDestinations", + "type": "array", + "description": "List of target data storage or systems where data will be loaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeline", + "type": "string", + "description": "Proposed timeline or schedule for project phases, e.g., start and end dates.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Optional extra notes or remarks about the ETL project.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A proposal document object including a formatted text string summarizing the ETL project details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate a professional ETL project proposal document based on specified project parameters, enabling quick draft creation for project planning or client communication.", + "limitations": "This tool does not perform actual ETL operations or validate technical feasibility; it only generates a descriptive proposal document based on input details.", + "examples": [ + "Create a proposal for an ETL project extracting data from SQL and CSV sources, applying aggregate and filter transformations, and loading into a data warehouse.", + "Generate a timeline-inclusive ETL proposal document for a project integrating multiple APIs as data sources.", + "Draft an ETL proposal specifying source, transformation, target with additional project notes for client review." + ] + }, + "tags": [ + "etl", + "proposal", + "document", + "create", + "project", + "data integration", + "planning" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Customer Data Integration\",\"dataSources\":[{\"type\":\"SQL Database\",\"connection\":\"jdbc:mysql://db.example.com:3306/customers\"},{\"type\":\"CSV File\",\"location\":\"/data/customer_data.csv\"}],\"transformations\":[{\"type\":\"Filter\",\"criteria\":\"country = 'US'\"},{\"type\":\"Aggregate\",\"fields\":[\"sales\"],\"operation\":\"sum\"}],\"targetDestinations\":[{\"type\":\"Data Warehouse\",\"connection\":\"snowflake://warehouse.example.com/db\"}],\"timeline\":\"2024-07-01 to 2024-09-30\",\"additionalNotes\":\"Initial phase focused on North America customers.\"}", + "description": "Create a proposal for integrating customer data from SQL and CSV sources with specified transformations and loading into a data warehouse, including project timeline and notes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Proposal", + "context": null + } + }, + { + "name": "database-management.analyzeMention", + "description": "Analyzes communication mentions stored in a database, such as references to products, brands, or topics within textual data. It accepts parameters to specify the database, time range, and keywords, processes the mentions to generate frequency counts, sentiment scores, and context excerpts, and outputs a structured summary report indicating mention trends and sentiment analysis results.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string to access the target database containing mention data.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the table where mentions are stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "keywordFilter", + "type": "string", + "description": "Keyword or phrase to filter the mentions for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) to limit mentions in the time range for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) to limit mentions in the time range for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag indicating whether to perform sentiment analysis on the mentions (true/false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxContextLength", + "type": "number", + "description": "Maximum number of characters to extract around each mention for context in the output.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object containing total mention count, frequency distribution over time, sentiment summary (if requested), and example context snippets for the mentions found." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze communication mentions stored in a database to understand how frequently a topic or keyword is referenced, track mention trends over time, and optionally perform sentiment analysis on these mentions. It helps in market research, brand monitoring, product feedback aggregation, or social media analysis.", + "limitations": "This tool assumes mentions are stored in a structured database table accessible via a connection string. It does not extract mentions from raw unstructured data or perform real-time streaming analysis. Sentiment analysis accuracy depends on the integrated sentiment model and only covers the text in the mention context.", + "examples": [ + "Analyze how often \"ProductX\" was mentioned in customer feedback between 2023-01-01 and 2023-03-01 with sentiment analysis.", + "Get mention frequency of \"BrandY\" in social media posts over the last month, excluding sentiment analysis.", + "Retrieve mention summary with context snippets for keyword \"launch event\" in the database table 'mentions'." + ] + }, + "tags": [ + "database", + "mention analysis", + "sentiment", + "communication", + "trend analysis", + "text analytics" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=CommDB;User Id=user;Password=pass;\",\"tableName\":\"mentions\",\"keywordFilter\":\"ProductX\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-01\",\"includeSentimentAnalysis\":true,\"maxContextLength\":200}", + "description": "Analyze mentions of 'ProductX' in the 'mentions' table from Jan 1 to Mar 1, 2023, including sentiment analysis with context snippets." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServer;Database=CommDB;User Id=user;Password=pass;\",\"tableName\":\"social_mentions\",\"keywordFilter\":\"BrandY\",\"includeSentimentAnalysis\":false}", + "description": "Get mention frequency for 'BrandY' in 'social_mentions' table, without sentiment analysis, for all available data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Mention", + "context": null + } + }, + { + "name": "database-management.analyzeForecast", + "description": "Analyzes business forecast data stored in a database by applying statistical models and trend analysis to generate insights on expected future performance. Accepts parameters to specify forecast dataset, analysis period, and modeling technique, returning a detailed report with predictive metrics and actionable recommendations.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string to access the target database containing forecast data.", + "required": true, + "defaultValue": "" + }, + { + "name": "forecastTableName", + "type": "string", + "description": "Name of the database table where the forecast data is stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisStartDate", + "type": "string", + "description": "Start date (ISO 8601) of the period for which to analyze forecasts.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisEndDate", + "type": "string", + "description": "End date (ISO 8601) of the period for which to analyze forecasts.", + "required": false, + "defaultValue": "" + }, + { + "name": "modelingTechnique", + "type": "string", + "description": "Statistical or machine learning technique to use for forecasting (e.g., ARIMA, ExponentialSmoothing).", + "required": false, + "defaultValue": "ARIMA" + }, + { + "name": "includeSeasonality", + "type": "boolean", + "description": "Whether to consider seasonal effects in the forecast analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis report output (e.g., JSON, PDF).", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing forecast accuracy metrics, trend insights, confidence intervals, and recommendations for business decision making." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to process and interpret historic and current forecast data stored in a database to generate predictions and trends that aid business planning. It helps in understanding expected outcomes and detecting patterns or anomalies in forecasted data over time.", + "limitations": "Cannot connect to databases without proper credentials or incompatible schema. Does not generate forecasts from raw external data; only analyzes existing forecast records. Modeling techniques are limited to predefined algorithms and may not cover custom models.", + "examples": [ + "Analyze sales forecast trends for Q1 2024 using ARIMA model.", + "Generate a forecast accuracy report for inventory demand data stored in 'prodForecast' table.", + "Evaluate the impact of seasonality on upcoming product forecasts between specified dates." + ] + }, + "tags": [ + "database", + "forecast", + "analysis", + "business-intelligence", + "time-series", + "modeling", + "trend-analysis" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServerAddress;Database=BusinessDB;User Id=myUsername;Password=myPassword;\",\"forecastTableName\":\"monthlySalesForecast\",\"analysisStartDate\":\"2023-01-01\",\"analysisEndDate\":\"2023-12-31\",\"modelingTechnique\":\"ARIMA\",\"includeSeasonality\":true,\"outputFormat\":\"JSON\"}", + "description": "Analyze 2023 monthly sales forecast data using ARIMA and consider seasonality, outputting results in JSON." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServerAddress;Database=InventoryDB;User Id=admin;Password=secret;\",\"forecastTableName\":\"prodForecast\",\"modelingTechnique\":\"ExponentialSmoothing\",\"outputFormat\":\"PDF\"}", + "description": "Generate a PDF report applying exponential smoothing model to product inventory forecast data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Forecast", + "context": null + } + }, + { + "name": "database-management.downloadAttachment", + "description": "This tool downloads an attachment file stored within a database record. It accepts inputs specifying the database connection details, table name, record identifier, and attachment field name. The tool extracts the attachment's binary content and returns it encoded for further processing or saving locally.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string used to connect to the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table containing the attachment.", + "required": true, + "defaultValue": "" + }, + { + "name": "recordId", + "type": "string", + "description": "Unique identifier of the record from which to download the attachment.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachmentFieldName", + "type": "string", + "description": "Name of the column holding the attachment data (e.g., BLOB field).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Expected file format or extension of the attachment, used for proper encoding or naming. Optional.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the attachment filename, content type, and base64-encoded content for download or further processing." + }, + "aiAgent": { + "useCase": "When an AI agent needs to retrieve file attachments saved inside database records—such as images, documents, or media files—this tool enables direct extraction and download based on record id. Useful for database audits, reporting, or exporting embedded files.", + "limitations": "Does not support streaming large files directly; attachment extraction is limited to single records and requires valid credentials and access. Cannot transform or analyze file content, only retrieves stored binary data.", + "examples": [ + "Download the profile picture attachment for user with ID 123 in the users table.", + "Fetch the invoice PDF stored as an attachment for order record 98765.", + "Retrieve and save the media file attached to the article record identified by a unique ID." + ] + }, + "tags": [ + "database", + "download", + "attachment", + "file", + "blob", + "data-access" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"tableName\":\"users\",\"recordId\":\"123\",\"attachmentFieldName\":\"profile_image\",\"fileFormat\":\"jpg\"}", + "description": "Download the profile image attachment for user ID 123 as a JPG file." + }, + { + "inputJson": "{\"connectionString\":\"Server=prodDB;Database=Sales;User Id=admin;Password=admin123;\",\"tableName\":\"invoices\",\"recordId\":\"98765\",\"attachmentFieldName\":\"invoice_pdf\",\"fileFormat\":\"pdf\"}", + "description": "Retrieve the invoice PDF attachment for the order record 98765." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Attachment", + "context": null + } + }, + { + "name": "database-management.downloadHTML", + "description": "Downloads data from a specified database query and exports the results as an HTML file containing a formatted table. Accepts a database connection string and a SQL query, executes the query, and generates an HTML document representing the query output for easy viewing or sharing.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "The database connection string to access the target database (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "sqlQuery", + "type": "string", + "description": "The SQL query string to execute on the database (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The name of the output HTML file. Defaults to 'output.html' if not provided.", + "required": false, + "defaultValue": "output.html" + }, + { + "name": "includeStyles", + "type": "boolean", + "description": "Whether to include basic CSS styles for table formatting in the output HTML. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows from the query result to include in the HTML. If 0 or not set, includes all rows.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the HTML content as a string and the fileName used for saving the file." + }, + "aiAgent": { + "useCase": "Use this tool when you need to export results from a database query into a well-structured HTML file for reporting, sharing, or web display purposes. Useful for generating human-readable query results without manual formatting.", + "limitations": "This tool does not perform complex data transformations or handle multiple queries at once. It requires valid SQL and a correct database connection. It does not interactively render the HTML or upload files to external servers.", + "examples": [ + "Download query results from a PostgreSQL database into an HTML table file.", + "Export a limited number of rows from a large database for quick review as an HTML document." + ] + }, + "tags": [ + "database", + "export", + "HTML", + "query", + "reporting", + "download" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"sqlQuery\":\"SELECT id, name, email FROM users LIMIT 10;\",\"fileName\":\"users.html\",\"includeStyles\":true,\"maxRows\":10}", + "description": "Export the first 10 users from the database as an HTML table with basic styling." + }, + { + "inputJson": "{\"connectionString\":\"Server=prodServer;Database=sales;User Id=admin;Password=secret;\",\"sqlQuery\":\"SELECT product, SUM(quantity) as totalSold FROM orders GROUP BY product ORDER BY totalSold DESC;\",\"fileName\":\"sales_report.html\",\"includeStyles\":false}", + "description": "Generate a sales report grouped by products without CSS styling in the HTML output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "HTML", + "context": null + } + }, + { + "name": "database-management.uploadAttachment", + "description": "Uploads a file attachment (image, document, etc.) associated with a specific database record. Accepts binary or base64-encoded file data, metadata including filename and MIME type, and target record identifier. The tool saves the attachment in the database or linked storage and returns an acknowledgment with attachment ID and status.", + "category": "database-management", + "parameters": [ + { + "name": "recordId", + "type": "string", + "description": "Unique identifier of the database record to attach the file to.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Name of the file being uploaded, including extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file, e.g., image/png or application/pdf.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileData", + "type": "string", + "description": "File content encoded in base64 format for transmission.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Flag to specify if existing attachment for the record should be overwritten.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the attachment content.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the upload, attachment unique ID, and optional message for errors." + }, + "aiAgent": { + "useCase": "Use this tool to attach files such as images, PDFs, or documents to existing database records for archival, record-keeping, or reference purposes. It is ideal when the agent needs to augment database entries with supplementary media or documents.", + "limitations": "Does not handle large files exceeding database or storage limits; does not perform virus scanning or file content validation; requires that the target record ID exists.", + "examples": [ + "Upload a scanned contract PDF to a customer record with ID 12345.", + "Attach a profile picture JPEG to employee record ID emp789.", + "Update the existing attachment on order record ORD001 with a new invoice image." + ] + }, + "tags": [ + "upload", + "attachment", + "database", + "file-management", + "media", + "record-linking" + ], + "examples": [ + { + "inputJson": "{\"recordId\":\"12345\",\"fileName\":\"contract.pdf\",\"fileType\":\"application/pdf\",\"fileData\":\"JVBERi0xLjQKJcfs...\",\"overwrite\":false,\"description\":\"Signed sales contract.\"}", + "description": "Upload a PDF contract file associated with customer record 12345." + }, + { + "inputJson": "{\"recordId\":\"emp789\",\"fileName\":\"profile.jpg\",\"fileType\":\"image/jpeg\",\"fileData\":\"/9j/4AAQSkZJRgABAQEASABIAAD...\",\"overwrite\":false}", + "description": "Attach a profile picture to employee record emp789." + }, + { + "inputJson": "{\"recordId\":\"ORD001\",\"fileName\":\"invoice.png\",\"fileType\":\"image/png\",\"fileData\":\"iVBORw0KGgoAAAANSUhEUgAA...\",\"overwrite\":true,\"description\":\"Updated invoice for order ORD001.\"}", + "description": "Overwrite an existing order attachment with a new invoice image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Attachment", + "context": null + } + }, + { + "name": "database-management.downloadXML", + "description": "Downloads data from a specified database by executing a given SQL query and returns the result formatted as an XML string. The tool accepts connection details, the SQL query to run, and optional pagination parameters. It processes the query, fetches data, and outputs XML-formatted text representing the query results.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "The database connection string used to establish the connection. Required for database access.", + "required": true, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "A SQL SELECT query specifying the data to retrieve from the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "The name of the root XML element wrapping the entire result set.", + "required": false, + "defaultValue": "\"Results\"" + }, + { + "name": "rowElementName", + "type": "string", + "description": "The name of each XML element representing a single row of data.", + "required": false, + "defaultValue": "\"Row\"" + }, + { + "name": "fetchSize", + "type": "number", + "description": "The maximum number of rows to retrieve in this download operation. Use 0 for no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeNulls", + "type": "boolean", + "description": "If true, include XML elements for columns with null values; if false, skip those elements.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single XML string with the query results formatted according to the specified element names." + }, + "aiAgent": { + "useCase": "Use this tool when you need to retrieve data from a relational database and transform it into XML format for integration with systems that consume XML, or for exporting and sharing structured data. It is ideal for applications requiring structured data downloads with customizable XML tagging.", + "limitations": "This tool does not perform query validation beyond syntax; malformed or non-SELECT queries may cause errors. It does not support large streaming exports or complex XML schema validation. It assumes read-only SELECT queries and does not modify database state.", + "examples": [ + "Download all customer records as XML from the sales database.", + "Retrieve the latest 100 orders formatted as XML with custom root and row element names.", + "Export data including null columns explicitly in XML format for a legacy system integration." + ] + }, + "tags": [ + "database", + "download", + "XML", + "SQL", + "data-export", + "query" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"query\":\"SELECT id, name, email FROM customers\",\"rootElementName\":\"Customers\",\"rowElementName\":\"Customer\",\"fetchSize\":0,\"includeNulls\":false}", + "description": "Download all customer records as XML with default fetch size and exclude null columns." + }, + { + "inputJson": "{\"connectionString\":\"Server=prodDb;Database=Orders;User Id=admin;Password=secret;\",\"query\":\"SELECT * FROM orders ORDER BY order_date DESC\",\"rootElementName\":\"OrdersList\",\"rowElementName\":\"Order\",\"fetchSize\":100,\"includeNulls\":true}", + "description": "Fetch the latest 100 orders with all columns including null values, customizing XML element tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "XML", + "context": null + } + }, + { + "name": "database-management.uploadHTML", + "description": "Uploads HTML content and stores it in a specified database table and column for further querying or processing. Accepts raw HTML string, target database connection details, table name, and column name to insert the HTML data. Returns status and record ID upon successful upload.", + "category": "database-management", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML string content to upload into the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Database connection string used to connect and authenticate to the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table where the HTML content will be stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnName", + "type": "string", + "description": "Name of the column in the table to insert the HTML content into.", + "required": true, + "defaultValue": "" + }, + { + "name": "recordId", + "type": "string", + "description": "Optional identifier or primary key value to specify a record for update instead of insert. If empty, a new record is created.", + "required": false, + "defaultValue": "" + }, + { + "name": "upsert", + "type": "boolean", + "description": "If true and recordId is specified, perform an update; otherwise perform an insert.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a success flag, a message for status, and inserted or updated record ID." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to save, archive, or prepare raw HTML content for database-driven applications, content management, or later queries within SQL-based systems. It facilitates storing HTML blobs in structured database tables that can be accessed or manipulated via SQL.", + "limitations": "This tool does not parse or modify HTML content. It only uploads raw HTML strings. It requires valid database connection details and appropriate permissions. It cannot extract data from HTML or handle complex HTML transformations.", + "examples": [ + "Upload a product description HTML snippet into the product_descriptions table for later retrieval.", + "Store a user-generated HTML content piece into a CMS database for publishing.", + "Update an existing database record containing HTML content with new HTML markup." + ] + }, + "tags": [ + "database", + "upload", + "HTML", + "storage", + "SQL", + "content-management" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Welcome

New product launch details

\",\"connectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"tableName\":\"product_descriptions\",\"columnName\":\"html_content\",\"recordId\":\"\",\"upsert\":false}", + "description": "Upload new product description HTML into the 'product_descriptions' table column 'html_content'." + }, + { + "inputJson": "{\"htmlContent\":\"

Updated FAQ section

\",\"connectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"tableName\":\"faqs\",\"columnName\":\"html_body\",\"recordId\":\"123\",\"upsert\":true}", + "description": "Update existing FAQ record with ID 123 to replace HTML content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "HTML", + "context": null + } + }, + { + "name": "database-management.renderDashboard", + "description": "Generates and renders an interactive dashboard from specified database queries and data sources. Accepts database connection details, query instructions, and visualization preferences as input, processes data extraction and aggregation, and outputs a customizable dashboard interface in JSON or HTML format for analytics and insights.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the database to connect to (e.g., MySQL, PostgreSQL, MongoDB).", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Connection string or credentials required to access the database securely.", + "required": true, + "defaultValue": "" + }, + { + "name": "queries", + "type": "array", + "description": "Array of query objects specifying SQL or relevant query language statements to retrieve and process data for the dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationConfig", + "type": "object", + "description": "Configuration object outlining visualization types (charts, tables, graphs), layout, and styling preferences for the dashboard components.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the rendered dashboard, such as 'json', 'html', or 'embeddedCode'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "refreshIntervalSeconds", + "type": "number", + "description": "Optional interval in seconds to auto-refresh dashboard data; set to 0 or omit for static snapshot.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeExportOptions", + "type": "boolean", + "description": "Flag to include exporting features like download as CSV or PDF in the dashboard interface.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered dashboard output, including the dashboard content in the specified format, metadata about data sources, and any warnings or errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide users with visual analytics from live or static database data, allowing interactive exploration and customization via dashboards based on given queries and visualization preferences.", + "limitations": "Does not perform advanced predictive analytics or machine learning model integration; limited to rendering dashboards based on provided queries and configs. Performance depends on database response times and query efficiency.", + "examples": [ + "Render a sales performance dashboard for MySQL database with bar charts and tables.", + "Create an interactive inventory report dashboard from PostgreSQL with auto-refresh every 300 seconds.", + "Generate an HTML snippet dashboard showing customer data analytics with export to PDF option." + ] + }, + "tags": [ + "database", + "dashboard", + "visualization", + "analytics", + "database-management", + "rendering", + "interactive" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"connectionString\":\"postgres://user:pass@localhost:5432/salesdb\",\"queries\":[{\"name\":\"MonthlySales\",\"query\":\"SELECT month, total FROM sales_data ORDER BY month\"}],\"visualizationConfig\":{\"components\":[{\"type\":\"barChart\",\"dataSource\":\"MonthlySales\",\"xAxis\":\"month\",\"yAxis\":\"total\",\"title\":\"Monthly Sales\"}]},\"outputFormat\":\"json\",\"refreshIntervalSeconds\":0,\"includeExportOptions\":true}", + "description": "Render a simple bar chart dashboard of monthly sales from a PostgreSQL database with CSV export enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Dashboard", + "context": null + } + }, + { + "name": "database-management.sendChannel", + "description": "This tool sends a message payload to a specified communication channel within a database-driven notification or messaging system. It accepts channel identifier and message content as input, performs validation and dispatch, then returns the status and message metadata.", + "category": "database-management", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Unique identifier of the target communication channel (e.g., chat room ID, email list ID).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The content of the message to be sent through the channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the message, such as 'low', 'normal', or 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments or URLs to include with the message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sendTime", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying when to send the message; if omitted, sends immediately.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing delivery status, channel ID, timestamp of sending, and message ID." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to deliver messages or notifications stored or managed within database channels, such as alerting users in chat rooms, emailing subscribed lists, or pushing notifications based on data-driven events. It abstracts sending through a database-managed communication channel.", + "limitations": "This tool does not handle direct interactive chat sessions, does not guarantee delivery outside the database system's capabilities, and requires valid channel identifiers pre-registered in the database system.", + "examples": [ + "Send a notification message to the 'support' channel with normal priority.", + "Send a high priority alert message immediately with an attachment to the 'security-alerts' channel.", + "Schedule a message to be sent next day in 'marketing-updates' channel." + ] + }, + "tags": [ + "database", + "messaging", + "notification", + "channel", + "send", + "communication" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"support\",\"messageContent\":\"System maintenance will occur at midnight.\",\"priority\":\"normal\"}", + "description": "Send a maintenance notification to the 'support' channel with default priority." + }, + { + "inputJson": "{\"channelId\":\"security-alerts\",\"messageContent\":\"Unauthorized login attempt detected.\",\"priority\":\"high\",\"attachments\":[\"http://example.com/logs/attempt.log\"]}", + "description": "Send a high priority security alert with attachment to the 'security-alerts' channel." + }, + { + "inputJson": "{\"channelId\":\"marketing-updates\",\"messageContent\":\"Weekly newsletter draft ready for review.\",\"sendTime\":\"2024-06-20T09:00:00Z\"}", + "description": "Schedule the weekly newsletter announcement to 'marketing-updates' channel for future delivery." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Channel", + "context": null + } + }, + { + "name": "database-management.uploadXML", + "description": "Uploads an XML data string into a specified database table. The tool accepts XML formatted data and maps it to the target table schema, optionally validating and transforming elements before insertion. It returns a summary of the upload operation including success count and errors.", + "category": "database-management", + "parameters": [ + { + "name": "xmlData", + "type": "string", + "description": "The XML data string to be uploaded into the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "The name of the target database table where the XML data will be inserted.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Database connection string required to connect and authenticate to the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "mappingConfig", + "type": "object", + "description": "Optional mapping configuration object defining how XML elements map to database columns.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Flag indicating whether to validate the XML against a predefined schema before upload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of records to upload in a single batch operation to optimize performance.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload summary: number of records processed, number of successful inserts, and a list of errors if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to import structured XML data into a relational database system for processing, analysis, or application use. It is useful when the data source is XML files or APIs emitting XML, and the destination is a relational database requiring well-formed data insertion.", + "limitations": "Cannot transform XML data beyond the provided mapping config; complex XML structures requiring recursive or multi-relational inserts may be limited. Does not support automatic schema inference or creation.", + "examples": [ + "Upload XML data from an API into the customers table for a CRM system.", + "Insert product catalog information encoded in XML into the inventory database.", + "Batch import user profile details stored in XML format into a user database table." + ] + }, + "tags": [ + "upload", + "database", + "XML", + "data-import", + "ETL", + "batch-processing" + ], + "examples": [ + { + "inputJson": "{\"xmlData\":\"1John Doe\",\"tableName\":\"customers\",\"connectionString\":\"Server=dbserver;Database=crm;User Id=admin;Password=pass;\",\"mappingConfig\":{\"id\":\"customer_id\",\"name\":\"customer_name\"},\"validateSchema\":true,\"batchSize\":500}", + "description": "Uploading customer data in XML format to the customers table with schema validation and batch size of 500." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "XML", + "context": null + } + }, + { + "name": "database-management.renderVideo", + "description": "This tool renders video content by compiling and processing video data stored in a database. It accepts inputs such as video ID, output format, resolution, and optional rendering options, extracts the video data from the database, processes it according to parameters, and outputs a playable video file or stream URL in the desired format and quality.", + "category": "database-management", + "parameters": [ + { + "name": "videoId", + "type": "string", + "description": "Unique identifier of the video stored in the database to render", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output video format (e.g., mp4, webm, avi)", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "resolution", + "type": "string", + "description": "Output video resolution (e.g., 1920x1080)", + "required": false, + "defaultValue": "1920x1080" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frames per second for the rendered video", + "required": false, + "defaultValue": "30" + }, + { + "name": "bitRate", + "type": "number", + "description": "Bitrate in kbps to control video quality and size", + "required": false, + "defaultValue": "4000" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to embed subtitles stored in the database into the rendered video", + "required": false, + "defaultValue": "false" + }, + { + "name": "watermarkText", + "type": "string", + "description": "Optional text to overlay as a watermark on the video", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a URL to the rendered video file, its format, resolution, and metadata such as size and duration" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or re-render video content stored within a database, whether for format conversion, resolution adjustment, adding overlays like watermarks or subtitles, or streaming preparation. It facilitates delivering videos tailored to client needs from raw or archived video data.", + "limitations": "Does not perform video editing beyond simple overlays (e.g., no cuts or transitions), depends on pre-existing stored video data; does not capture live video streams or handle input video creation from scratch.", + "examples": [ + "Render the 'promo123' video from the database as a 1280x720 MP4 with subtitles included.", + "Generate a high bitrate 4K version of the video with a watermark text 'Sample'.", + "Produce a webm format video from database ID 'vid789' with 24fps frame rate and no subtitles." + ] + }, + "tags": [ + "video", + "database", + "rendering", + "media", + "formatConversion", + "streaming" + ], + "examples": [ + { + "inputJson": "{\"videoId\":\"promo123\",\"outputFormat\":\"mp4\",\"resolution\":\"1280x720\",\"includeSubtitles\":true}", + "description": "Render video 'promo123' as 1280x720 MP4 including subtitles." + }, + { + "inputJson": "{\"videoId\":\"sample001\",\"outputFormat\":\"mp4\",\"resolution\":\"3840x2160\",\"bitRate\":8000,\"watermarkText\":\"Sample\"}", + "description": "Render a 4K MP4 video with 8000 kbps and watermark text." + }, + { + "inputJson": "{\"videoId\":\"vid789\",\"outputFormat\":\"webm\",\"frameRate\":24,\"includeSubtitles\":false}", + "description": "Render 'vid789' in webm format at 24fps with no subtitles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Video", + "context": null + } + }, + { + "name": "database-management.formatSchema", + "description": "Formats a given database schema definition string or JSON object into a standardized, readable, and consistent style. Accepts raw schema input (e.g., SQL CREATE statements or JSON schema), applies formatting rules, and outputs the formatted schema as a string, improving readability and maintainability for developers and DBAs.", + "category": "database-management", + "parameters": [ + { + "name": "schemaInput", + "type": "string", + "description": "The raw database schema definition to format, can be SQL, JSON schema, or similar formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input schema provided, e.g., 'sql', 'json'. Determines parsing and formatting logic.", + "required": true, + "defaultValue": "sql" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format after formatting, e.g., 'sql' or 'json'.", + "required": false, + "defaultValue": "sql" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "4" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "If true, SQL keywords will be converted to uppercase in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineBreakStyle", + "type": "string", + "description": "Preferred line break style: 'lf' for \\n (Unix) or 'crlf' for \\r\\n (Windows).", + "required": false, + "defaultValue": "lf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted schema as a string under 'formattedSchema' key." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to clean up or standardize database schema definitions for better readability or consistency before further processing, such as documentation generation or migration scripting. It helps convert raw or messy schema inputs into a clean, developer-friendly format.", + "limitations": "The tool cannot validate schema correctness or execute the schema. It does not support complex vendor-specific dialects beyond basic SQL and JSON structures. It assumes syntactically correct input.", + "examples": [ + "Format a raw SQL schema string to a consistent style with uppercase keywords and 4-space indentation.", + "Convert a JSON schema of a database table into a prettified JSON string with standardized indentation.", + "Transform an incorrectly formatted SQL schema string to adhere to Unix line endings and consistent casing." + ] + }, + "tags": [ + "database", + "schema", + "formatting", + "sql", + "json", + "readability", + "development" + ], + "examples": [ + { + "inputJson": "{\"schemaInput\":\"CREATE TABLE users(id INT PRIMARY KEY,name VARCHAR(255),email VARCHAR(255));\",\"inputFormat\":\"sql\",\"outputFormat\":\"sql\",\"indentationSpaces\":2,\"uppercaseKeywords\":true,\"lineBreakStyle\":\"lf\"}", + "description": "Format a simple SQL table schema with 2 spaces indentation and uppercase keywords." + }, + { + "inputJson": "{\"schemaInput\":\"{\\\"title\\\": \\\"User\\\", \\\"type\\\": \\\"object\\\", \\\"properties\\\": {\\\"id\\\": {\\\"type\\\": \\\"integer\\\"}, \\\"name\\\": {\\\"type\\\": \\\"string\\\"}}, \\\"required\\\": [\\\"id\\\", \\\"name\\\"]}\",\"inputFormat\":\"json\",\"outputFormat\":\"json\",\"indentationSpaces\":4,\"uppercaseKeywords\":false,\"lineBreakStyle\":\"lf\"}", + "description": "Prettify a JSON schema input with 4 space indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Schema", + "context": null + } + }, + { + "name": "database-management.formatHeading", + "description": "Formats a heading string to match database documentation or UI display standards. Accepts a raw heading string and transforms it by applying case styles, prefix/suffix additions, and custom separators to produce a standardized heading for database management interfaces or export files.", + "category": "database-management", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The raw heading text to format (e.g., column or section name).", + "required": true, + "defaultValue": "" + }, + { + "name": "caseStyle", + "type": "string", + "description": "Specifies the casing to apply: 'uppercase', 'lowercase', 'titlecase', or 'snake_case'.", + "required": false, + "defaultValue": "titlecase" + }, + { + "name": "prefix", + "type": "string", + "description": "String to prepend to the heading (e.g., database name or schema).", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "String to append to the heading (e.g., version or environment info).", + "required": false, + "defaultValue": "" + }, + { + "name": "separator", + "type": "string", + "description": "Separator to use between prefix, heading, and suffix (default is underscore).", + "required": false, + "defaultValue": "_" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the heading text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string under 'formattedHeading' key." + }, + "aiAgent": { + "useCase": "Use this tool when preparing heading strings for consistent display or export in database management systems, such as standardizing column headers in reports, UI labels for database sections, or when exporting metadata to ensure readability and uniformity.", + "limitations": "This tool does not verify the existence of the heading in any database schema or validate semantic correctness; it only formats the string based on the input parameters.", + "examples": [ + "Format the heading 'Customer Name' to uppercase with database prefix 'SalesDB'.", + "Create a snake_case heading from 'Order Date' with suffix 'v2'." + ] + }, + "tags": [ + "database", + "formatting", + "heading", + "string-manipulation", + "UI", + "export" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Customer Name\",\"caseStyle\":\"uppercase\",\"prefix\":\"SalesDB\",\"suffix\":\"\",\"separator\":\"_\",\"trimWhitespace\":true}", + "description": "Format heading with uppercase and prefix 'SalesDB' separated by underscore." + }, + { + "inputJson": "{\"headingText\":\"order date\",\"caseStyle\":\"snake_case\",\"prefix\":\"\",\"suffix\":\"v2\",\"separator\":\"_\",\"trimWhitespace\":true}", + "description": "Format heading in snake_case with suffix 'v2'." + }, + { + "inputJson": "{\"headingText\":\" Product Category \",\"caseStyle\":\"titlecase\",\"prefix\":\"Inventory\",\"suffix\":\"\",\"separator\":\" : \",\"trimWhitespace\":true}", + "description": "Titlecase heading with prefix and custom separator ' : ' after trimming whitespace." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Heading", + "context": null + } + }, + { + "name": "database-management.generateChecklist", + "description": "Generates a detailed checklist document for managing and auditing a specified database. Accepts database type, schema details, and desired checklist sections as input, processes best practices and compliance items, and outputs a structured checklist to guide database maintenance and security.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database to generate checklist for (e.g., MySQL, PostgreSQL, MongoDB).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSchemaReview", + "type": "boolean", + "description": "Whether to include checklist items related to schema design and review.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeBackupProcedures", + "type": "boolean", + "description": "Whether to include checklist items for backups and recovery processes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSecurityChecks", + "type": "boolean", + "description": "Whether to include checklist items for database security and access control.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customSections", + "type": "array", + "description": "Additional custom checklist sections to include by name.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated checklist as an ordered array of sections, with each section having title and list of checklist items." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to help generate comprehensive, standardized checklists for database management, tailored to specific database types and focus areas such as security, backup, and schema design. Useful for audits, compliance, and maintenance planning.", + "limitations": "Cannot perform actual audits or verify database state; generates generic, best-practice-based checklists but does not include real-time or database-specific diagnostics.", + "examples": [ + "Generate a checklist for PostgreSQL focusing on security and backup procedures.", + "Create a MySQL database management checklist including schema review and custom section 'Performance Tuning'.", + "Produce a checklist for MongoDB with only security-related items." + ] + }, + "tags": [ + "database", + "checklist", + "management", + "audit", + "security", + "backup", + "schema" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"includeSchemaReview\":true,\"includeBackupProcedures\":true,\"includeSecurityChecks\":true,\"customSections\":[] }", + "description": "Generate a full checklist for PostgreSQL including schema review, backup, and security." + }, + { + "inputJson": "{\"databaseType\":\"MySQL\",\"includeSchemaReview\":true,\"includeBackupProcedures\":false,\"includeSecurityChecks\":true,\"customSections\":[\"Performance Tuning\"]}", + "description": "Create a MySQL checklist with schema and security, plus a custom performance tuning section, excluding backup procedures." + }, + { + "inputJson": "{\"databaseType\":\"MongoDB\",\"includeSchemaReview\":false,\"includeBackupProcedures\":false,\"includeSecurityChecks\":true,\"customSections\":[] }", + "description": "Generate a MongoDB checklist focusing only on security checks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Checklist", + "context": null + } + }, + { + "name": "database-management.formatHTML", + "description": "Formats database query results or raw database data into a clean, customizable HTML table or list format. Accepts raw data as JSON objects or arrays, applies formatting options such as table styling, column selection, and pagination, and outputs well-structured HTML code for embedding in web pages or reports.", + "category": "database-management", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing database rows or query results to be formatted into HTML. Each object is a record with key-value pairs for fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "Type of HTML format to produce: 'table' for an HTML table or 'list' for an unordered list. Defaults to 'table'.", + "required": false, + "defaultValue": "table" + }, + { + "name": "columns", + "type": "array", + "description": "Array of strings specifying which columns (fields) from the data to include in the output. If empty or omitted, include all columns.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tableClass", + "type": "string", + "description": "CSS class name(s) to apply to the HTML table for styling purposes. Ignored if formatType is 'list'.", + "required": false, + "defaultValue": "" + }, + { + "name": "paginated", + "type": "boolean", + "description": "Whether to paginate the output table with the specified rows per page. False means show all rows at once.", + "required": false, + "defaultValue": "false" + }, + { + "name": "rowsPerPage", + "type": "number", + "description": "Number of rows to show per page if pagination is enabled. Ignored if paginated is false.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property 'html' which includes the generated HTML markup formatted according to the parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you have structured database query results in JSON form that need to be presented as styled, readable HTML tables or lists for web pages or reports. It is especially helpful when you want to customize which columns appear and enable pagination in HTML format without manually coding the markup.", + "limitations": "Does not support formatting of nested objects or very complex hierarchical data structures. Does not generate interactive tables beyond basic pagination. Styling is limited to CSS classes provided; does not inline CSS styles.", + "examples": [ + "Format raw JSON query results from a database into a clean HTML table to embed in a dashboard.", + "Convert a list of user records into an HTML unordered list showing only name and email fields.", + "Create a paginated HTML table with 20 rows per page from query data to improve readability on web pages." + ] + }, + "tags": [ + "database", + "HTML", + "formatting", + "table", + "list", + "pagination", + "web", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"id\":1,\"name\":\"Alice\",\"email\":\"alice@example.com\"},{\"id\":2,\"name\":\"Bob\",\"email\":\"bob@example.com\"}],\"formatType\":\"table\",\"columns\":[\"id\",\"name\",\"email\"],\"tableClass\":\"db-table\",\"paginated\":false,\"rowsPerPage\":10}", + "description": "Format simple user records into an unpaginated HTML table with specific columns and a CSS class." + }, + { + "inputJson": "{\"data\":[{\"product\":\"Widget\",\"price\":9.99},{\"product\":\"Gadget\",\"price\":12.49}],\"formatType\":\"list\",\"columns\":[\"product\"],\"paginated\":false}", + "description": "Convert an array of products into a simple unordered HTML list showing only the product names." + }, + { + "inputJson": "{\"data\":[{\"id\":1,\"value\":\"A\"},{\"id\":2,\"value\":\"B\"},{\"id\":3,\"value\":\"C\"},{\"id\":4,\"value\":\"D\"}],\"formatType\":\"table\",\"paginated\":true,\"rowsPerPage\":2}", + "description": "Create a paginated HTML table showing all columns with 2 rows per page from a small dataset." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "HTML", + "context": null + } + }, + { + "name": "database-management.composeReference", + "description": "This tool accepts database schema details and user requirements to compose a precise database reference or query reference description. It processes inputs like table names, fields, relationships, and context to generate a structured reference document or snippet that can be used for documentation, API referencing, or query generation. Output is a formatted reference string or JSON object summarizing the database entity or query reference.", + "category": "database-management", + "parameters": [ + { + "name": "schemaDetails", + "type": "object", + "description": "An object representing the database schema details including tables, fields, and relationships relevant to the reference to compose.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEntity", + "type": "string", + "description": "The specific database table or entity on which to compose the reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRelations", + "type": "boolean", + "description": "Flag to indicate whether to include related tables and relationships in the reference.", + "required": false, + "defaultValue": "false" + }, + { + "name": "format", + "type": "string", + "description": "The desired output format for the composed reference, e.g., 'json', 'markdown', or 'plainText'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Level of detail to include: 'summary', 'detailed', or 'full'. Controls how comprehensive the reference is.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed reference as a formatted string and optionally a structured representation. Example keys: 'referenceText', 'referenceObject'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a clear and structured database entity or query reference for documentation, API specs, or automated query building. It assists in composing precise references based on schema details and user focus areas, helping clarify database structures and facilitate integrations.", + "limitations": "The tool cannot generate actual database queries or modify database states. It relies on accurate and complete schemaDetails input and does not infer schema from raw data.", + "examples": [ + "Compose a reference for the 'Orders' table including related 'Customers' and 'Products' tables in markdown format.", + "Generate a JSON summary reference for the 'Employee' table without relations.", + "Create a detailed plain text reference for the 'Invoices' entity with all related tables." + ] + }, + "tags": [ + "database", + "reference", + "compose", + "schema", + "documentation", + "query", + "API" + ], + "examples": [ + { + "inputJson": "{\"schemaDetails\":{\"tables\":{\"Orders\":{\"fields\":[\"OrderID\",\"CustomerID\",\"OrderDate\"]},\"Customers\":{\"fields\":[\"CustomerID\",\"Name\"]},\"Products\":{\"fields\":[\"ProductID\",\"ProductName\"]}},\"relationships\":[{\"from\":\"Orders.CustomerID\",\"to\":\"Customers.CustomerID\"},{\"from\":\"Orders.ProductID\",\"to\":\"Products.ProductID\"}]},\"targetEntity\":\"Orders\",\"includeRelations\":true,\"format\":\"markdown\",\"detailLevel\":\"summary\"}", + "description": "Compose a markdown summary reference for 'Orders' including related tables." + }, + { + "inputJson": "{\"schemaDetails\":{\"tables\":{\"Employee\":{\"fields\":[\"EmployeeID\",\"Name\",\"Title\"]}},\"relationships\":[]},\"targetEntity\":\"Employee\",\"includeRelations\":false,\"format\":\"json\",\"detailLevel\":\"summary\"}", + "description": "Generate a JSON summary reference for 'Employee' table without relations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Reference", + "context": null + } + }, + { + "name": "database-management.composeHeading", + "description": "This tool generates a structured heading string for database reports or query results based on provided context such as database name, table name, and optional filters. It accepts inputs detailing the database environment, processes these to compose a clear, informative heading, and outputs the formatted heading text for use in documentation or UI displays.", + "category": "database-management", + "parameters": [ + { + "name": "databaseName", + "type": "string", + "description": "Name of the database to include in the heading", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table relevant to the heading", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs representing applied filters or query conditions (optional)", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeDate", + "type": "boolean", + "description": "Flag to append the current date to the heading", + "required": false, + "defaultValue": "false" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format to use if includeDate is true (e.g., 'YYYY-MM-DD')", + "required": false, + "defaultValue": "YYYY-MM-DD" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed heading string under 'headingText' key" + }, + "aiAgent": { + "useCase": "AI agents should use this tool when generating descriptive headings for database reports, query summaries, or UI components that need to reflect the data scope dynamically, enhancing clarity and user context.", + "limitations": "This tool does not generate SQL queries or fetch actual data; it solely creates heading text based on input parameters. It cannot interpret or validate filter logic beyond formatting key-value pairs.", + "examples": [ + "Generate a heading for database 'SalesDB' and table 'Orders' with filters on 'Region=EMEA' and 'Status=Completed'.", + "Create a heading for 'InventoryDB' and 'Products' table including the current date in 'MM/DD/YYYY' format.", + "Compose a heading for table 'Employees' in 'HRDB' without any filters or date." + ] + }, + "tags": [ + "database", + "heading", + "reporting", + "UI", + "summary", + "query" + ], + "examples": [ + { + "inputJson": "{\"databaseName\":\"SalesDB\",\"tableName\":\"Orders\",\"filters\":{\"Region\":\"EMEA\",\"Status\":\"Completed\"},\"includeDate\":false,\"dateFormat\":\"YYYY-MM-DD\"}", + "description": "Heading for 'Orders' table in 'SalesDB' filtered by Region and Status without date." + }, + { + "inputJson": "{\"databaseName\":\"InventoryDB\",\"tableName\":\"Products\",\"filters\":{},\"includeDate\":true,\"dateFormat\":\"MM/DD/YYYY\"}", + "description": "Heading for 'Products' table in 'InventoryDB' including current date in MM/DD/YYYY." + }, + { + "inputJson": "{\"databaseName\":\"HRDB\",\"tableName\":\"Employees\",\"filters\":{},\"includeDate\":false,\"dateFormat\":\"\"}", + "description": "Heading for 'Employees' table in 'HRDB' with no filters or date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Heading", + "context": null + } + }, + { + "name": "database-management.composeReply", + "description": "This tool generates a professional reply message based on a user's database query, issue report, or request. It accepts the original message content, context about the database system, and desired tone, then composes a concise, context-aware reply suitable for customer support or internal communication. The output is a text string containing the reply message.", + "category": "database-management", + "parameters": [ + { + "name": "originalMessage", + "type": "string", + "description": "The incoming message or query to which a reply is needed.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseContext", + "type": "object", + "description": "Contextual information about the database system (e.g., type, version, affected tables) to inform reply accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "desiredTone", + "type": "string", + "description": "The tone or style for the reply, such as formal, friendly, or technical.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeSolution", + "type": "boolean", + "description": "Whether to include a suggested solution or workaround in the reply.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply message text." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a clear, context-aware response to a database-related question or report, automating communication in helpdesk or internal teams. It helps craft replies that consider the database environment and desired tone for appropriate messaging.", + "limitations": "This tool does not perform actual database queries or corrections; it only composes written replies. It cannot guarantee technical accuracy without proper databaseContext input and may struggle with highly technical or ambiguous queries.", + "examples": [ + "Compose a formal reply to a user reporting slow query performance on a MySQL 5.7 server.", + "Generate a friendly reply addressing a request for data export from a PostgreSQL database.", + "Create a technical reply suggesting a workaround for a deadlock error reported on an Oracle DB." + ] + }, + "tags": [ + "database", + "communication", + "reply", + "support", + "automation", + "customer-service" + ], + "examples": [ + { + "inputJson": "{\"originalMessage\":\"I'm experiencing slow query execution times on our MySQL 5.7 server. Can you help?\",\"databaseContext\":{\"type\":\"MySQL\",\"version\":\"5.7\"},\"desiredTone\":\"formal\",\"includeSolution\":true}", + "description": "Generate a formal support reply addressing slow query performance on MySQL." + }, + { + "inputJson": "{\"originalMessage\":\"Can you provide a data export for the last quarter's sales from the PostgreSQL database?\",\"databaseContext\":{\"type\":\"PostgreSQL\"},\"desiredTone\":\"friendly\",\"includeSolution\":false}", + "description": "Compose a friendly reply to a data export request without giving a solution." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Reply", + "context": null + } + }, + { + "name": "database-management.buildDependency", + "description": "This tool constructs and returns a structured representation of dependencies between database entities such as tables, stored procedures, or views. It accepts inputs describing entities and their relational or functional dependencies, processes these into a dependency graph, and outputs a comprehensive dependency object useful for impact analysis and optimization.", + "category": "database-management", + "parameters": [ + { + "name": "entities", + "type": "array", + "description": "A list of database entities (e.g., tables, views, stored procedures) to consider for dependency building.", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencyRelations", + "type": "array", + "description": "An array of objects each representing a dependency relation between entities, specifying source and target entity names and type of dependency.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeIndirectDependencies", + "type": "boolean", + "description": "Whether to include indirect (transitive) dependencies in the output dependency graph.", + "required": false, + "defaultValue": "false" + }, + { + "name": "filterEntityTypes", + "type": "array", + "description": "Optional list of entity types (e.g., 'table', 'view') to limit dependency construction to specified kinds.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed dependency graph, including nodes for each entity and edges denoting dependencies, with metadata about dependency types and levels." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze and visualize how database objects depend on each other, for instance, before performing schema changes or optimizations. It helps in understanding impact propagation and dependency hierarchy within a database environment.", + "limitations": "This tool does not automatically extract dependencies from live database instances or query logs; it requires user-provided entity and dependency information. It does not execute database queries or perform dependency resolution from database metadata directly.", + "examples": [ + "Build a dependency graph for tables and views involved in a schema migration.", + "Determine indirect dependencies among stored procedures and tables before an update.", + "Filter dependencies to only include tables when analyzing impact." + ] + }, + "tags": [ + "database", + "dependency", + "graph", + "analysis", + "schema-management", + "impact-analysis" + ], + "examples": [ + { + "inputJson": "{\"entities\":[\"users\",\"orders\",\"order_items\",\"products\"],\"dependencyRelations\":[{\"source\":\"orders\",\"target\":\"users\",\"type\":\"foreign-key\"},{\"source\":\"order_items\",\"target\":\"orders\",\"type\":\"foreign-key\"},{\"source\":\"order_items\",\"target\":\"products\",\"type\":\"foreign-key\"}],\"includeIndirectDependencies\":true}", + "description": "Builds a dependency graph including indirect dependencies among tables in an e-commerce database schema." + }, + { + "inputJson": "{\"entities\":[\"usp_getUserOrders\",\"users\",\"orders\"],\"dependencyRelations\":[{\"source\":\"usp_getUserOrders\",\"target\":\"users\",\"type\":\"procedure-call\"},{\"source\":\"usp_getUserOrders\",\"target\":\"orders\",\"type\":\"procedure-call\"}],\"filterEntityTypes\":[\"procedure\",\"table\"]}", + "description": "Constructs dependencies involving a stored procedure and its dependent tables, filtered by entity types." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Dependency", + "context": null + } + }, + { + "name": "database-management.createCitation", + "description": "Creates a structured citation entry in a bibliographic database using provided metadata such as title, authors, publication year, source, and format style. It processes input parameters to generate a citation record suitable for academic or professional reference management systems and returns the formatted citation and database record ID.", + "category": "database-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the work to cite, such as article, book, or paper title.", + "required": true, + "defaultValue": "" + }, + { + "name": "authors", + "type": "array", + "description": "An array of author names in 'LastName, FirstName' format representing all contributors.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicationYear", + "type": "number", + "description": "The year the work was published or issued.", + "required": true, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "The source of the citation, such as journal name, book publisher, or URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style to format the citation in (e.g., APA, MLA, Chicago).", + "required": true, + "defaultValue": "APA" + }, + { + "name": "volume", + "type": "string", + "description": "Volume number of the journal or book series if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "issue", + "type": "string", + "description": "Issue number of the journal if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "pages", + "type": "string", + "description": "Page range, e.g., '23-45', if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "doi", + "type": "string", + "description": "Digital Object Identifier for the citation if available.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the citationId string for referencing in the database and the formattedCitation string representing the citation text formatted according to the specified style." + }, + "aiAgent": { + "useCase": "Use when needing to create and store bibliographic citations systematically, ensuring proper formatting according to academic or publication standards, and managing references within a database for querying or export.", + "limitations": "This tool does not fetch metadata automatically from external sources; all citation metadata must be provided manually. It also does not handle validation of authorship or verify the accuracy of input data.", + "examples": [ + "Create a citation for a journal article with full metadata requested in APA style.", + "Add a book citation with multiple authors formatted in Chicago style.", + "Generate a citation for an online article with a DOI in MLA style." + ] + }, + "tags": [ + "database", + "citation", + "bibliography", + "reference management", + "academic", + "formatting", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Deep Learning Advances\",\"authors\":[\"LeCun, Yann\",\"Bengio, Yoshua\",\"Hinton, Geoffrey\"],\"publicationYear\":2015,\"source\":\"Nature\",\"citationStyle\":\"APA\",\"volume\":\"521\",\"issue\":\"7553\",\"pages\":\"436-444\",\"doi\":\"10.1038/nature14539\"}", + "description": "Create an APA style journal article citation with volume, issue, pages, and DOI." + }, + { + "inputJson": "{\"title\":\"Introduction to Algorithms\",\"authors\":[\"Cormen, Thomas H.\",\"Leiserson, Charles E.\",\"Rivest, Ronald L.\",\"Stein, Clifford\"],\"publicationYear\":2009,\"source\":\"MIT Press\",\"citationStyle\":\"Chicago\"}", + "description": "Generate a Chicago style citation for a well-known book with multiple authors." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Citation", + "context": null + } + }, + { + "name": "database-management.composeThread", + "description": "This tool creates a new communication thread within a database-managed discussion system. It accepts input parameters defining the thread's title, initial message content, author ID, optional tags, and metadata. It processes these to store a new thread record linked to the database, returning the composed thread's unique ID and summary information.", + "category": "database-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the communication thread to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessage", + "type": "string", + "description": "The content of the first message in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Unique identifier of the author creating the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags categorizing the thread, optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata associated with the thread as key-value pairs.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique thread ID, a confirmation message, timestamp, and the thread summary (title, author, tags)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a new discussion thread record in a database-based messaging or forum system, initializing it with an opening message and metadata for categorization and tracking. It is well-suited for automating thread creation workflows in collaborative platforms.", + "limitations": "This tool does not support editing existing threads, message replies beyond the initial message, or retrieving existing threads. It requires valid author identification and database connectivity to succeed.", + "examples": [ + "Create a new support discussion thread titled 'Issue with login' with an initial message describing the problem.", + "Generate a project discussion thread named 'Sprint 5 Planning' authored by user123 including tags 'planning','sprint5'." + ] + }, + "tags": [ + "database", + "thread", + "compose", + "communication", + "messaging", + "discussion" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Bug Report: Login Failure\",\"initialMessage\":\"Users are unable to login since last update.\",\"authorId\":\"user_789\",\"tags\":[\"bug\",\"login\",\"urgent\"],\"metadata\":{\"priority\":\"high\",\"department\":\"IT Support\"}}", + "description": "Creates a new bug report thread with relevant tags and metadata." + }, + { + "inputJson": "{\"title\":\"Weekly Team Meeting\",\"initialMessage\":\"Agenda and notes for the upcoming meeting.\",\"authorId\":\"manager_456\",\"tags\":[\"meeting\",\"team\"],\"metadata\":{}}", + "description": "Starts a team meeting discussion thread with an initial agenda message." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Thread", + "context": null + } + }, + { + "name": "database-management.generateForecast", + "description": "Generates business forecasts based on historical database records. Accepts parameters defining the target database, table, date range, and forecast horizon. Processes time series data using statistical or machine learning models to project future values. Outputs numerical forecasts and confidence intervals to guide business planning.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string to access the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table containing historical data.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeColumn", + "type": "string", + "description": "Name of the datetime column used to order and segment time series data.", + "required": true, + "defaultValue": "" + }, + { + "name": "valueColumn", + "type": "string", + "description": "Name of the numeric column to forecast.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 start date to define the historical data range.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 end date to define the historical data range.", + "required": false, + "defaultValue": "" + }, + { + "name": "forecastHorizon", + "type": "number", + "description": "Number of future time periods to generate forecasts for.", + "required": true, + "defaultValue": "12" + }, + { + "name": "modelType", + "type": "string", + "description": "Type of forecasting model to use, e.g., 'ARIMA', 'Prophet', or 'LSTM'.", + "required": false, + "defaultValue": "ARIMA" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (0-1) for forecast intervals. Defaults to 0.95 (95%).", + "required": false, + "defaultValue": "0.95" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing forecasted values for each future time period with corresponding lower and upper confidence bounds, along with metadata about the forecast model and parameters used." + }, + "aiAgent": { + "useCase": "Use when needing to project future trends from time-stamped numerical data stored in databases to support business decisions such as sales, inventory, or financial planning. This tool automates extraction, modeling, and forecast generation with configurable parameters.", + "limitations": "Does not perform anomaly detection or data cleaning; relies on quality of historical data. Complex domain-specific patterns may not be captured by general models. Requires database access and appropriate permissions.", + "examples": [ + "Generate a 6-month forecast for monthly sales from the sales_data table using ARIMA model.", + "Forecast next quarter revenue from financial_records table considering data from last 3 years.", + "Produce 12-week demand forecast from inventory_usage table applying Prophet model with 90% confidence intervals." + ] + }, + "tags": [ + "forecasting", + "database", + "time-series", + "business-planning", + "analytics", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=db.example.com;Database=salesdb;User Id=readonly;Password=pass123;\",\"tableName\":\"monthly_sales\",\"timeColumn\":\"sale_date\",\"valueColumn\":\"revenue\",\"startDate\":\"2020-01-01\",\"endDate\":\"2023-01-31\",\"forecastHorizon\":6,\"modelType\":\"ARIMA\",\"confidenceLevel\":0.95}", + "description": "Generate a 6-month revenue forecast from monthly_sales table data using ARIMA." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=db.company.com;Database=finance;User Id=finance_user;Password=secret;\",\"tableName\":\"quarterly_financials\",\"timeColumn\":\"quarter_end\",\"valueColumn\":\"profit\",\"forecastHorizon\":4,\"modelType\":\"Prophet\"}", + "description": "Produce a 4-quarter profit forecast using Prophet model with all available data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Forecast", + "context": null + } + }, + { + "name": "database-management.createMention", + "description": "Creates a mention entry in a database, linking a source entity to a target entity within communication records. Accepts identifiers for source and target, context text, timestamp, and optional metadata. Inserts a mention record and returns success status with the mention ID.", + "category": "database-management", + "parameters": [ + { + "name": "sourceEntityId", + "type": "string", + "description": "Unique identifier of the entity that is making the mention (e.g., user ID)", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEntityId", + "type": "string", + "description": "Unique identifier of the entity being mentioned", + "required": true, + "defaultValue": "" + }, + { + "name": "contextText", + "type": "string", + "description": "Optional text content providing context for the mention", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string indicating when the mention occurred", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional arbitrary key-value pairs providing context or attributes for the mention", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object indicating success status and the created mention's unique ID" + }, + "aiAgent": { + "useCase": "Use this tool when you need to record a mention relationship between two entities within a communication-related database, such as logging when a user mentions another user in a message or comment. It ensures consistent creation of mention entries and stores contextual metadata for later reference or querying.", + "limitations": "This tool does not perform validation of entity existence; ensure source and target IDs are valid before use. It only creates mentions but does not support retrieval or deletion of mention records.", + "examples": [ + "Create a mention when user123 mentions user456 in a chat message.", + "Record a mention with additional metadata indicating the platform (e.g., 'mobile app') and the message ID.", + "Log a mention with specific timestamp to track when the mention occurred during a conversation." + ] + }, + "tags": [ + "database", + "mention", + "communication", + "entityLinking", + "recordCreation" + ], + "examples": [ + { + "inputJson": "{\"sourceEntityId\":\"user123\",\"targetEntityId\":\"user456\",\"contextText\":\"Hey @user456, check this out!\",\"timestamp\":\"2024-06-12T09:30:00Z\"}", + "description": "Create a mention from user123 to user456 with contextual message text and timestamp." + }, + { + "inputJson": "{\"sourceEntityId\":\"author789\",\"targetEntityId\":\"topic234\",\"contextText\":\"Discussion about AI advancements.\",\"metadata\":{\"platform\":\"forum\",\"threadId\":\"thread999\"}}", + "description": "Insert a mention linking an author to a discussion topic with additional metadata for forum context." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Mention", + "context": null + } + }, + { + "name": "database-management.createScreenshot", + "description": "This tool accepts database connection details and a SQL query, executes the query on the specified database, and creates a screenshot image of the query result rendered in a tabular HTML format. The output is a base64-encoded PNG image capturing the visual representation of the query results.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database, e.g., MySQL, PostgreSQL, SQLite.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Connection string or URI used to connect to the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "sqlQuery", + "type": "string", + "description": "The SQL query string to retrieve data from the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width in pixels of the screenshot image.", + "required": false, + "defaultValue": "1024" + }, + { + "name": "height", + "type": "number", + "description": "Height in pixels of the screenshot image.", + "required": false, + "defaultValue": "768" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme to style the rendered table (e.g., light, dark).", + "required": false, + "defaultValue": "light" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the screenshot table.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64-encoded PNG image of the query result screenshot and metadata about the capture." + }, + "aiAgent": { + "useCase": "Use this tool when you need a visual snapshot of database query results for reporting, documentation, or sharing as an image rather than raw data. Ideal for creating dashboards, embedding static result images in documents, or previewing query outputs visually.", + "limitations": "This tool cannot modify database contents; it only supports read-only queries for retrieving data. It cannot capture screenshots of non-tabular or interactive database outputs, nor execute non-SQL commands or complex stored procedures safely.", + "examples": [ + "Create a screenshot of customer order data from a PostgreSQL database.", + "Generate an image of a report table for sales data retrieved via an SQL SELECT statement.", + "Capture a visual snapshot of a SQLite query result for inclusion in a presentation." + ] + }, + "tags": [ + "database", + "screenshot", + "SQL", + "query-result", + "visualization", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"connectionString\":\"postgresql://user:pass@localhost:5432/mydb\",\"sqlQuery\":\"SELECT id, name, total FROM orders WHERE status='completed' ORDER BY total DESC LIMIT 10\",\"width\":1200,\"height\":800,\"theme\":\"dark\",\"includeHeaders\":true}", + "description": "Generate a dark-themed screenshot of the top 10 completed orders from a PostgreSQL database." + }, + { + "inputJson": "{\"databaseType\":\"MySQL\",\"connectionString\":\"mysql://root:password@127.0.0.1:3306/sales\",\"sqlQuery\":\"SELECT product_name, SUM(quantity) AS total_sold FROM sales_data GROUP BY product_name ORDER BY total_sold DESC\",\"width\":1000,\"height\":600,\"theme\":\"light\",\"includeHeaders\":true}", + "description": "Create a light-themed screenshot of sales totals grouped by product from a MySQL database." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Screenshot", + "context": null + } + }, + { + "name": "database-management.createMigration", + "description": "Creates a database migration script based on specified schema changes. Accepts details about the database type, migration name, and array of schema change instructions. Generates a migration file content suitable for use with common migration tools to apply or rollback schema changes.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the database (e.g., 'postgresql', 'mysql', 'sqlite') to tailor migration syntax accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "migrationName", + "type": "string", + "description": "A descriptive name for the migration, used to identify the migration script.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaChanges", + "type": "array", + "description": "An array of schema change objects defining operations like 'addTable', 'dropTable', 'addColumn', 'modifyColumn', or 'dropColumn' with necessary details.", + "required": true, + "defaultValue": "" + }, + { + "name": "useTimestamps", + "type": "boolean", + "description": "Indicates whether to automatically add created_at and updated_at timestamp columns to new tables.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the generated migration code for readability.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the migration file name and the generated migration script content as a string." + }, + "aiAgent": { + "useCase": "Use this tool when generating database migration scripts to automate schema updates across different environments or deployments. It helps developers or automated workflows produce consistent migration code based on structured schema change inputs without manual script writing.", + "limitations": "This tool does not execute the migration, validate database connectivity, or handle data migrations. It focuses only on generating schema migration scripts in text form. Complex transformations or custom SQL beyond supported schema changes are not handled.", + "examples": [ + "Create a migration to add a new 'users' table with id, name, and email columns.", + "Generate a migration to add a 'last_login' datetime column to an existing 'accounts' table.", + "Produce a migration to drop a deprecated 'sessions' table." + ] + }, + "tags": [ + "database", + "migration", + "schema", + "automation", + "postgresql", + "mysql", + "sqlite", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"postgresql\",\"migrationName\":\"createUsersTable\",\"schemaChanges\":[{\"action\":\"addTable\",\"tableName\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"serial\",\"primaryKey\":true},{\"name\":\"name\",\"type\":\"varchar(255)\"},{\"name\":\"email\",\"type\":\"varchar(255)\"}]}],\"useTimestamps\":true,\"indentationSpaces\":2}", + "description": "Generate a migration to create a new 'users' table with id, name, and email columns including timestamps." + }, + { + "inputJson": "{\"databaseType\":\"mysql\",\"migrationName\":\"addLastLoginToAccounts\",\"schemaChanges\":[{\"action\":\"addColumn\",\"tableName\":\"accounts\",\"column\":{\"name\":\"last_login\",\"type\":\"datetime\",\"nullable\":true}}],\"useTimestamps\":false,\"indentationSpaces\":4}", + "description": "Create a migration adding a nullable 'last_login' column to the 'accounts' table without additional timestamps, using 4 spaces indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Migration", + "context": null + } + }, + { + "name": "database-management.createChecklist", + "description": "Creates a structured database checklist document to guide database setup, maintenance, or audit tasks. Accepts checklist title, description, and an array of checklist items (each with title, description, criticality, and completion status). Outputs a JSON checklist document summarizing all items with their states and metadata.", + "category": "database-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the checklist document to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A short descriptive summary of the checklist purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "An array of checklist items, each item is an object with fields: title (string), description (string), isCritical (boolean), isCompleted (boolean).", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the created checklist document, including title, description, item count, and detailed list of items with their statuses." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate structured checklists for database management tasks such as setup verification, scheduled audits, backups, or compliance. It helps formalize tasks, track completion status, and highlight critical steps.", + "limitations": "Cannot execute checklist tasks or automatically update status from actual database states; checklist items and statuses must be provided explicitly or updated externally.", + "examples": [ + "Create a checklist titled 'Monthly Database Maintenance' with steps to check backups, review performance logs, and update security patches.", + "Generate an audit checklist for database compliance including critical tasks flagged as urgent.", + "Make a setup checklist for new database deployments including configuration and testing steps." + ] + }, + "tags": [ + "database", + "checklist", + "management", + "audit", + "maintenance", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Monthly Database Maintenance\",\"description\":\"Checklist for routine monthly maintenance tasks.\",\"items\":[{\"title\":\"Verify backups\",\"description\":\"Ensure all backups completed successfully.\",\"isCritical\":true,\"isCompleted\":false},{\"title\":\"Review performance logs\",\"description\":\"Analyze logs for any anomalies.\",\"isCritical\":false,\"isCompleted\":false},{\"title\":\"Patch database software\",\"description\":\"Apply latest security patches.\",\"isCritical\":true,\"isCompleted\":false}]}", + "description": "Creates a checklist for a monthly DB maintenance with critical and non-critical items." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Checklist", + "context": null + } + }, + { + "name": "testing-automation.analyzeSession", + "description": "Analyzes automated testing session logs provided as input, processing test execution data to identify patterns such as flaky tests, failures, duration anomalies, and success rates. Outputs a detailed diagnostic report summarizing session performance metrics and highlighting problem areas for test suites.", + "category": "testing-automation", + "parameters": [ + { + "name": "sessionLogs", + "type": "string", + "description": "Raw session logs or test run results data in a structured format (e.g., JSON or plain text) containing individual test execution details.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the sessionLogs input such as 'json', 'xml', or 'plainText'. Used to correctly parse the input data.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeFlakyDetection", + "type": "boolean", + "description": "Whether to perform flaky test detection by analyzing test results across multiple runs in the session.", + "required": false, + "defaultValue": "true" + }, + { + "name": "durationThresholdSeconds", + "type": "number", + "description": "Duration in seconds above which test runs are flagged as slow or anomalous for further investigation.", + "required": false, + "defaultValue": "30" + }, + { + "name": "aggregateByTestSuite", + "type": "boolean", + "description": "When true, aggregates analysis results by test suite or module to provide higher-level insights.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object detailing session statistics including total tests run, pass/fail counts, flaky tests identified, slow tests, duration metrics, and suggestions for improving test stability and performance." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw automated testing session logs from continuous integration or testing frameworks and you want to diagnose test reliability issues, identify flaky or slow tests, and get a summary of testing session health. It is helpful to automatically extract actionable insights from large volumes of test run data.", + "limitations": "This tool cannot fix test failures or flaky tests, and it requires input logs to be in a supported format and sufficiently detailed to identify patterns. It does not perform code-level debugging or root cause analysis beyond statistical session-level metrics.", + "examples": [ + "Analyze recent test session logs to find flaky tests causing intermittent failures.", + "Provide a diagnostic summary of an end-to-end test run highlighting slow and failing tests.", + "Generate a report aggregating test results by suite to identify unstable components." + ] + }, + "tags": [ + "testing automation", + "session analysis", + "flaky tests", + "test diagnostics", + "continuous integration", + "test performance" + ], + "examples": [ + { + "inputJson": "{\"sessionLogs\":\"[{\\\"testName\\\":\\\"LoginTest\\\",\\\"status\\\":\\\"passed\\\",\\\"duration\\\":15},{\\\"testName\\\":\\\"CheckoutTest\\\",\\\"status\\\":\\\"failed\\\",\\\"duration\\\":45}]\",\"format\":\"json\",\"includeFlakyDetection\":true,\"durationThresholdSeconds\":20,\"aggregateByTestSuite\":false}", + "description": "Analyze a simple json session log with two test cases, detecting flakiness and flagging tests longer than 20 seconds." + }, + { + "inputJson": "{\"sessionLogs\":\"[{'testName':'SearchTest','status':'passed','duration':10},{'testName':'SearchTest','status':'failed','duration':12}]\",\"format\":\"json\",\"includeFlakyDetection\":true,\"durationThresholdSeconds\":30,\"aggregateByTestSuite\":true}", + "description": "Analyze multiple runs of the same test to detect flakiness and aggregate results by suite." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "testing-automation.analyzeReference", + "description": "Analyzes software reference documents or code comments to assess completeness and consistency of API documentation or specification references. Accepts structured reference input (text or JSON), checks for missing elements, inconsistencies, and outputs a detailed report highlighting issues and improvement suggestions.", + "category": "testing-automation", + "parameters": [ + { + "name": "referenceContent", + "type": "string", + "description": "The content of the reference document or API specification text to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Format of the referenceContent (e.g., 'json','yaml','markdown','text'). Helps parsing and analysis.", + "required": true, + "defaultValue": "text" + }, + { + "name": "checkCompleteness", + "type": "boolean", + "description": "Whether to check for completeness of the reference, such as all expected API endpoints or sections documented.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkConsistency", + "type": "boolean", + "description": "Whether to check for internal consistency, e.g., matching parameter types, consistent naming.", + "required": false, + "defaultValue": "true" + }, + { + "name": "expectedSchema", + "type": "object", + "description": "Optional schema or template expected for the reference (e.g., expected keys or sections) to validate against.", + "required": false, + "defaultValue": "" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Level of detail in the output report: 'summary', 'detailed', or 'full'.", + "required": false, + "defaultValue": "detailed" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing a summary, list of detected issues with locations, severity, and recommendations for correcting or improving the reference document." + }, + "aiAgent": { + "useCase": "Use this tool when verifying the quality and integrity of software reference documents such as API specs or developer documentation. It helps automated testing pipelines ensure documentation completeness and correctness before release, reducing runtime errors caused by mismatched or missing references.", + "limitations": "Does not perform semantic understanding beyond structural and syntactic consistency checks. Cannot generate missing documentation content, only detect issues. May require schema input for best accuracy on custom reference formats.", + "examples": [ + "Analyze a REST API specification in JSON format to verify all endpoints and parameters are documented correctly.", + "Check markdown developer documentation for completeness and consistency in parameter descriptions.", + "Validate YAML configuration reference to ensure required sections and fields are present and consistent." + ] + }, + "tags": [ + "testing", + "automation", + "documentation", + "reference-analysis", + "API", + "consistency-check", + "completeness-check" + ], + "examples": [ + { + "inputJson": "{\"referenceContent\":\"{\\\"endpoints\\\": [{\\\"path\\\": \\\"/users\\\", \\\"method\\\": \\\"GET\\\", \\\"params\\\": [{\\\"name\\\": \\\"id\\\", \\\"type\\\": \\\"string\\\"}]}]}\",\"format\":\"json\",\"checkCompleteness\":true,\"checkConsistency\":true,\"detailLevel\":\"detailed\"}", + "description": "Analyze JSON API reference content to detect missing or inconsistent parameters." + }, + { + "inputJson": "{\"referenceContent\":\"# API Reference\\n\\n## GET /users\\n- Params:\\n - id: string (required)\\n - filter: string \\n\\n## POST /users\\n- Payload:\\n - name: string (required)\\n - email: string\",\"format\":\"markdown\",\"checkCompleteness\":true,\"checkConsistency\":true,\"detailLevel\":\"summary\"}", + "description": "Analyze markdown API documentation for completeness and consistency with expected parameters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "testing-automation.analyzeTrend", + "description": "Analyzes trends in automated test suite results over time, accepting test execution data including pass/fail statuses, execution times, and timestamps. Processes this data to identify patterns such as increasing failure rates or performance degradation, and outputs a detailed trend report with visualizable metrics and actionable insights.", + "category": "testing-automation", + "parameters": [ + { + "name": "testResults", + "type": "array", + "description": "Array of test execution result objects including status, execution time, and timestamp for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "object", + "description": "Timeframe for trend analysis, with start and end ISO8601 date strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Attribute to group trend data by, e.g., test suite, test case, or environment.", + "required": false, + "defaultValue": "testCase" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metrics to analyze such as 'failureRate', 'executionTime', or 'flakiness'.", + "required": false, + "defaultValue": "[\"failureRate\",\"executionTime\"]" + }, + { + "name": "thresholds", + "type": "object", + "description": "Threshold values for metrics to highlight concerning trends, e.g. failureRate > 0.1.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to include visualizable data suitable for charting in the results.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a comprehensive trend analysis report including computed metrics, trends (improving, degrading, stable), flagged issues, and optional visualization data arrays." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand how the quality and reliability of automated test suites evolve over time by analyzing historical test execution data. It helps detect degradation, improving trends, or flaky tests to support quality assurance decisions.", + "limitations": "This tool analyzes trends based on supplied historical test data but does not diagnose root causes or suggest specific fixes beyond highlighting metric anomalies.", + "examples": [ + "Analyze the trend of failure rates in the regression suite over the past month.", + "Identify performance degradation in test execution times grouped by environment.", + "Detect flakiness trends in critical test cases and flag those exceeding failure thresholds." + ] + }, + "tags": [ + "testing", + "automation", + "analytics", + "trend-analysis", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"testResults\":[{\"testCase\":\"LoginTest\",\"status\":\"pass\",\"executionTime\":1200,\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"testCase\":\"LoginTest\",\"status\":\"fail\",\"executionTime\":1100,\"timestamp\":\"2024-05-02T10:00:00Z\"},{\"testCase\":\"PaymentTest\",\"status\":\"pass\",\"executionTime\":3000,\"timestamp\":\"2024-05-01T11:00:00Z\"}],\"timeFrame\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-10T00:00:00Z\"},\"groupBy\":\"testCase\",\"metrics\":[\"failureRate\",\"executionTime\"],\"includeVisualizations\":true}", + "description": "Analyze failure rate and execution time trends grouped by test case over a specific timeframe with visual charts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "testing-automation.analyzeHeading", + "description": "Analyzes heading elements in HTML or rendered UI components to verify their structure, hierarchy, and content. Accepts HTML code or test UI element descriptions, processes to identify heading tags (H1-H6), checks for accessibility compliance and correct order, and outputs a detailed report including any inconsistencies or errors found.", + "category": "testing-automation", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "HTML markup or string containing heading elements to analyze, can be partial or full document", + "required": false, + "defaultValue": "" + }, + { + "name": "uiElements", + "type": "array", + "description": "Array of UI component objects representing headings extracted from a rendered page or app, alternative to htmlContent", + "required": false, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "If true, the tool evaluates headings against common accessibility standards (like WCAG)", + "required": false, + "defaultValue": "true" + }, + { + "name": "expectedHierarchy", + "type": "array", + "description": "Optional array defining expected heading tags sequence to validate proper order and nesting, e.g. [\"H1\",\"H2\",\"H2\",\"H3\"]", + "required": false, + "defaultValue": "" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum heading level depth to analyze (from 1 to 6), defaults to 6", + "required": false, + "defaultValue": "6" + } + ], + "returns": { + "type": "object", + "description": "A report detailing each heading found with its level, text content, order position, hierarchy validation status, and accessibility compliance issues if any" + }, + "aiAgent": { + "useCase": "Use this tool when testing automated UI for correct semantic heading implementation and accessibility compliance. It helps verify that headings are used properly for content structure and navigation, ensuring the UI follows best practices and legal accessibility standards.", + "limitations": "Cannot assess visual styling or context beyond heading semantics. Does not parse ambiguity in dynamically generated content if not supplied. Not a full HTML validator or accessibility tool, only focused on heading elements.", + "examples": [ + "Analyze headings in HTML content for correct order and accessibility", + "Check UI component headings against expected hierarchy and report mismatches", + "Validate that no heading level is skipped in a web page snippet" + ] + }, + "tags": [ + "testing", + "automation", + "heading", + "accessibility", + "ui-testing", + "html-analysis" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Main Title

Subsection

Another Subsection

Details

\",\"checkAccessibility\":true}", + "description": "Analyze a simple HTML snippet for heading order and accessibility." + }, + { + "inputJson": "{\"uiElements\":[{\"tagName\":\"H1\",\"text\":\"Dashboard\"},{\"tagName\":\"H3\",\"text\":\"Overview\"},{\"tagName\":\"H2\",\"text\":\"Stats\"}],\"expectedHierarchy\":[\"H1\",\"H2\",\"H3\"]}", + "description": "Check UI elements array for heading hierarchy correctness against expected order." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "testing-automation.analyzeReply", + "description": "This tool analyzes automated testing reply messages (e.g., responses from test environments or APIs) to identify success, failure, error details, and extract key metrics. It accepts raw text or JSON reply content and returns structured analysis including status codes, error summaries, and confidence scores for automated test validation.", + "category": "testing-automation", + "parameters": [ + { + "name": "replyContent", + "type": "string", + "description": "The raw reply message from the test environment or API to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "contentFormat", + "type": "string", + "description": "The format of the reply content, e.g., 'json', 'xml', 'text'", + "required": false, + "defaultValue": "text" + }, + { + "name": "errorKeywords", + "type": "array", + "description": "List of keywords or patterns to identify error conditions in the reply", + "required": false, + "defaultValue": "[\"error\",\"fail\",\"exception\"]" + }, + { + "name": "extractMetrics", + "type": "boolean", + "description": "Whether to extract key metrics or performance stats from the reply if available", + "required": false, + "defaultValue": "true" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) to consider analysis valid", + "required": false, + "defaultValue": "0.75" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis output including status, error details, extracted metrics, and confidence score" + }, + "aiAgent": { + "useCase": "Use this tool to automatically analyze replies from automated test execution systems to determine test outcomes, identify failure causes, and collect metrics for reporting and debugging. It helps AI agents validate test results and diagnose issues without manual inspection.", + "limitations": "This tool cannot execute tests itself or guarantee 100% accuracy in error identification; it depends on reply content quality and recognized keywords/patterns.", + "examples": [ + "Analyze the JSON reply from our REST API test and identify if the test passed or failed.", + "Extract error messages and performance metrics from the automated UI test reply text.", + "Check if the reply from the integration test contains any failure indicators and provide confidence score." + ] + }, + "tags": [ + "testing", + "automation", + "analysis", + "reply", + "error-detection", + "metrics", + "test-validation" + ], + "examples": [ + { + "inputJson": "{\"replyContent\":\"{\\\"status\\\":\\\"failed\\\", \\\"error\\\":\\\"TimeoutException at step 3\\\", \\\"duration_ms\\\": 1250}\",\"contentFormat\":\"json\",\"errorKeywords\":[\"error\",\"failed\",\"exception\"],\"extractMetrics\":true,\"confidenceThreshold\":0.8}", + "description": "Analyze a JSON reply indicating a failed test with error and duration info." + }, + { + "inputJson": "{\"replyContent\":\"Test completed successfully in 2.5 seconds with no errors.\",\"contentFormat\":\"text\",\"errorKeywords\":[\"error\",\"fail\",\"exception\"],\"extractMetrics\":true,\"confidenceThreshold\":0.75}", + "description": "Analyze plain text test reply confirming success and extract duration metric." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "testing-automation.analyzeDeal", + "description": "Analyzes a software deal or contract object within an automated testing framework by evaluating its financial, legal, and risk attributes. Accepts a structured deal object and specific analysis parameters, processes to detect inconsistencies, compliance issues, or risk markers, and outputs a detailed report summarizing the results and suggesting potential issues.", + "category": "testing-automation", + "parameters": [ + { + "name": "dealData", + "type": "object", + "description": "The structured representation of the deal, including financial terms, legal clauses, parties involved, and timeline details.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkCompliance", + "type": "boolean", + "description": "Specifies whether to check the deal against legal and regulatory compliance requirements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "A numeric threshold from 0 to 1 indicating the sensitivity level to flag risk factors; higher means more conservative flagging.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a high-level summary of findings in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') for error messages and report generation.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object that includes compliance checks results, detected risks, inconsistencies found, summary conclusions, and recommendations for the deal's testing and validation phases." + }, + "aiAgent": { + "useCase": "Use this tool when testing automation requires detailed analysis of business deal data to identify compliance issues, contract inconsistencies, or potential risks before deployment or integration. It helps automate business rule validation and risk management during software QA for financial or contractual workflows.", + "limitations": "Cannot interpret non-structured natural language deal texts without prior structuring; not a substitute for legal or financial expert review; analysis accuracy depends on completeness and correctness of input data.", + "examples": [ + "Analyze the compliance and risk of this new sales contract deal object before integration.", + "Check this deal object for inconsistencies and summarize potential risks.", + "Verify if the supplied deal data meets compliance standards and report detailed findings." + ] + }, + "tags": [ + "testing", + "automation", + "business", + "deal", + "analysis", + "risk", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"dealData\":{\"id\":\"D12345\",\"parties\":[\"Company A\",\"Company B\"],\"financialTerms\":{\"amount\":1000000,\"currency\":\"USD\",\"paymentTerms\":\"net 30\"},\"legalClauses\":[\"non-disclosure\",\"liability limitation\"],\"timeline\":{\"startDate\":\"2024-06-01\",\"endDate\":\"2024-12-31\"}},\"checkCompliance\":true,\"riskThreshold\":0.75,\"includeSummary\":true,\"language\":\"en\"}", + "description": "Analyze a comprehensive deal with parties, financial terms, and legal clauses, checking compliance and risks with a default risk threshold." + }, + { + "inputJson": "{\"dealData\":{\"id\":\"D67890\",\"parties\":[\"Vendor X\",\"Client Y\"],\"financialTerms\":{\"amount\":500000,\"currency\":\"EUR\",\"paymentTerms\":\"net 45\"},\"legalClauses\":[\"data protection\",\"termination rights\"],\"timeline\":{\"startDate\":\"2023-09-15\",\"endDate\":\"2024-09-14\"}},\"checkCompliance\":false,\"riskThreshold\":0.6,\"includeSummary\":false,\"language\":\"fr\"}", + "description": "Analyze a different deal focusing on risk detection only, in French language output, without compliance checking or summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "testing-automation.analyzeIncident", + "description": "Analyzes security incident data collected from automated test runs or monitoring tools. Accepts incident logs or event data as input, performs parsing, classification, and root cause analysis using predefined rules and heuristics, and outputs a structured report highlighting incident severity, affected components, likely causes, and recommended remediation steps.", + "category": "testing-automation", + "parameters": [ + { + "name": "incidentData", + "type": "string", + "description": "Raw incident log or event data in JSON or text format collected during testing or monitoring.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisLevel", + "type": "string", + "description": "Depth level of analysis: 'basic' for summary, 'detailed' for thorough root cause and impact analysis.", + "required": false, + "defaultValue": "\"basic\"" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "Optional ISO8601 timestamp indicating start of time range for incidents to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "Optional ISO8601 timestamp indicating end of time range for incidents to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include remediation recommendations in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "componentFilter", + "type": "array", + "description": "Optional list of components or modules to focus the analysis on.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including incident summary, classification, root cause, affected components, severity levels, and remediation recommendations if requested." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to process and analyze automated testing or monitoring security incidents to provide insights and actionable recommendations. It helps synthesize raw incident data into meaningful reports, enabling faster diagnosis and remediation during automated security testing workflows.", + "limitations": "The tool relies on well-structured input data and predefined rules, so it may not accurately analyze highly novel or obfuscated incidents. It does not perform real-time incident detection, only analysis of provided logs or events.", + "examples": [ + "Analyze security incidents from recent automated penetration tests to identify root causes and critical vulnerabilities.", + "Generate a detailed report on all incidents affecting authentication components within the last 24 hours.", + "Summarize security event data focusing on high severity incidents and recommend mitigation steps." + ] + }, + "tags": [ + "analysis", + "security", + "testing-automation", + "incident", + "root-cause", + "remediation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"incidentData\":\"[{\\\"timestamp\\\":\\\"2024-04-10T12:34:56Z\\\",\\\"component\\\":\\\"auth-service\\\",\\\"severity\\\":\\\"high\\\",\\\"description\\\":\\\"Multiple failed login attempts detected\\\"}]\",\"analysisLevel\":\"detailed\",\"timeRangeStart\":\"2024-04-10T00:00:00Z\",\"timeRangeEnd\":\"2024-04-11T00:00:00Z\",\"includeRecommendations\":true,\"componentFilter\":[\"auth-service\"]}", + "description": "Detailed analysis of authentication component incidents within a one-day time range, including remediation." + }, + { + "inputJson": "{\"incidentData\":\"[{\\\"timestamp\\\":\\\"2024-05-01T09:00:00Z\\\",\\\"component\\\":\\\"payment-gateway\\\",\\\"severity\\\":\\\"medium\\\",\\\"description\\\":\\\"Timeout errors during transaction processing\\\"}]\",\"analysisLevel\":\"basic\",\"includeRecommendations\":false}", + "description": "Basic summary report on payment gateway incidents without recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "testing-automation.analyzeXML", + "description": "Analyzes XML input data for structural integrity, schema compliance (XSD), and common issues such as missing elements or invalid attributes. Accepts XML content as a string and optionally an XSD schema to validate against. Produces a detailed report highlighting errors, warnings, and structural summaries suitable for automated testing workflows.", + "category": "testing-automation", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "The XML data as a string to be analyzed for structure and validity.", + "required": true, + "defaultValue": "" + }, + { + "name": "xsdSchema", + "type": "string", + "description": "Optional XML Schema Definition as a string for validating the XML content against specific rules.", + "required": false, + "defaultValue": "" + }, + { + "name": "checkWellFormedness", + "type": "boolean", + "description": "If true, the tool checks the XML for well-formedness (basic XML syntax correctness).", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkSchemaCompliance", + "type": "boolean", + "description": "If true and xsdSchema is provided, validates the XML against the given XSD schema.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxErrors", + "type": "number", + "description": "Maximum number of errors to report before stopping the analysis to avoid overly verbose output.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including well-formedness status, schema validation results, list of errors and warnings, and a summary of the XML structure." + }, + "aiAgent": { + "useCase": "Use this tool when needing automated verification of XML test data or configuration files in testing pipelines, to detect structural issues or schema violations before further processing or deployment. Ideal for ensuring input XML conforms to expected models and is free of format errors.", + "limitations": "Cannot perform semantic validation beyond schema rules, nor fix XML errors. Cannot handle extremely large XML files efficiently in limited memory environments.", + "examples": [ + "Analyze an XML configuration file for schema compliance and report any structural errors.", + "Verify that a generated XML test output is well-formed and contains all required elements as defined by an XSD.", + "Check the validity of multiple XML input samples against a common schema as part of automated regression testing." + ] + }, + "tags": [ + "testing", + "automation", + "XML", + "validation", + "schema", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"Value\",\"xsdSchema\":\"\",\"checkWellFormedness\":true,\"checkSchemaCompliance\":true,\"maxErrors\":10}", + "description": "Validate a simple XML config against a defined XSD schema to ensure structure and attribute types are correct." + }, + { + "inputJson": "{\"xmlContent\":\"Data\",\"checkWellFormedness\":true,\"checkSchemaCompliance\":false}", + "description": "Check if the given XML is well-formed without schema validation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "testing-automation.analyzeThreat", + "description": "Analyzes potential security threats detected during automated testing by evaluating threat data such as logs, signatures, and contextual metadata. Processes input threat reports to classify threat type, severity, and potential impact, generating a detailed analysis report to help prioritize remediation efforts.", + "category": "testing-automation", + "parameters": [ + { + "name": "threatData", + "type": "object", + "description": "Structured data containing raw threat details collected during testing (e.g., logs, signatures, metadata).", + "required": true, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level to include in the analysis report (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include suggested mitigation steps for detected threats in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeFrame", + "type": "string", + "description": "Optional ISO 8601 date range limiting analyzed threat data (format: 'startDate/endDate').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object summarizing classified threats with attributes including threat type, severity, potential impact, confidence scores, and recommended mitigation actions." + }, + "aiAgent": { + "useCase": "Use this tool when automated tests produce raw security threat data and you need a detailed assessment to classify, prioritize, and understand potential impacts of the threats. Ideal for continuous integration pipelines analyzing security testing results to guide developers on remediation priorities.", + "limitations": "This tool analyzes reported threat data but does not perform threat detection itself. It relies on accurate input and cannot guarantee detection of zero-day or unknown threats.", + "examples": [ + "Analyze recent threat logs from automated penetration tests to identify high severity security risks.", + "Evaluate threat data for only high and critical severity issues including suggested remediation.", + "Generate a prioritized security threat analysis for threats detected in the last 24 hours." + ] + }, + "tags": [ + "security", + "testing", + "automation", + "threat-analysis", + "vulnerability", + "penetration-testing", + "risk-assessment" + ], + "examples": [ + { + "inputJson": "{\"threatData\":{\"logs\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"signatureId\":\"SQL_INJECTION_ATTEMPT\",\"severity\":\"high\",\"details\":\"Detected SQL injection attempt on login form.\"}],\"metadata\":{\"source\":\"automated-pen-test\",\"environment\":\"staging\"}},\"severityThreshold\":\"medium\",\"includeMitigation\":true,\"timeFrame\":\"2024-06-01T00:00:00Z/2024-06-02T00:00:00Z\"}", + "description": "Analyze SQL injection attempts in staging environment detected on June 1, including mitigation steps for threats with severity medium and above." + }, + { + "inputJson": "{\"threatData\":{\"logs\":[{\"timestamp\":\"2024-05-30T08:15:00Z\",\"signatureId\":\"XSS_DETECTED\",\"severity\":\"low\",\"details\":\"Cross-site scripting payload detected.\"}],\"metadata\":{\"source\":\"automated-scan\",\"environment\":\"production\"}},\"severityThreshold\":\"high\",\"includeMitigation\":false,\"timeFrame\":\"\"}", + "description": "Analyze only high severity threats from production automated scans, omitting mitigation suggestions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "testing-automation.renderWord", + "description": "Renders a specified word as a styled image for use in automated UI or visual tests. Accepts a string word and formatting parameters, then generates an image (PNG) rendering of the word with those styles, useful for validating text display or generating test assets.", + "category": "testing-automation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The text string word that needs to be rendered as an image.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "The font family to use for rendering the word (e.g., Arial, Times New Roman).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for the rendered word.", + "required": false, + "defaultValue": "24" + }, + { + "name": "fontColor", + "type": "string", + "description": "CSS color value to apply to the text (e.g., #000000 or red).", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the image canvas, specified as a CSS color string.", + "required": false, + "defaultValue": "transparent" + }, + { + "name": "imageWidth", + "type": "number", + "description": "Width of the output image in pixels. If zero, automatically sized to text width.", + "required": false, + "defaultValue": "0" + }, + { + "name": "imageHeight", + "type": "number", + "description": "Height of the output image in pixels. If zero, automatically sized to text height.", + "required": false, + "defaultValue": "0" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render the word in bold weight.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render the word in italic style.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object containing a base64-encoded PNG image data URL representing the rendered word." + }, + "aiAgent": { + "useCase": "Use this tool when automated tests require a consistent, styled rendering of specific words as images to verify UI text rendering, compare visual snapshots, or generate test fixtures for graphical components that contain text.", + "limitations": "This tool only generates static image renderings of a single word and does not support multi-word sentences, advanced typography features, or animated text.", + "examples": [ + "Render the word 'Login' in bold 32px Arial black text with transparent background.", + "Produce an image of the word 'Error' in red italic 28px font on white background.", + "Generate a blue 24px Times New Roman rendering of the word 'Submit' with automatic image sizing." + ] + }, + "tags": [ + "render", + "word", + "image-generation", + "testing", + "visual-testing", + "automation", + "UI" + ], + "examples": [ + { + "inputJson": "{\"word\":\"Test\",\"fontFamily\":\"Arial\",\"fontSize\":24,\"fontColor\":\"#000000\",\"backgroundColor\":\"transparent\",\"imageWidth\":0,\"imageHeight\":0,\"bold\":false,\"italic\":false}", + "description": "Render the word 'Test' in default Arial 24px black font on transparent background, auto-sizing the image." + }, + { + "inputJson": "{\"word\":\"Error\",\"fontFamily\":\"Times New Roman\",\"fontSize\":28,\"fontColor\":\"#ff0000\",\"backgroundColor\":\"#ffffff\",\"imageWidth\":150,\"imageHeight\":50,\"bold\":false,\"italic\":true}", + "description": "Render the italic word 'Error' in red with a white background and fixed 150x50 px image size." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "testing-automation.analyzeHTML", + "description": "Analyzes the provided HTML content to identify accessibility issues, semantic correctness, and potential errors to improve web application quality. Accepts raw HTML string input, performs static analysis, and returns a structured report detailing issues, warnings, and suggestions.", + "category": "testing-automation", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML content to analyze for accessibility and correctness issues.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to perform accessibility checks according to WCAG guidelines.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkSemanticIntegrity", + "type": "boolean", + "description": "Whether to verify semantic correctness of HTML elements and structure.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxIssues", + "type": "number", + "description": "Maximum number of issues to report in the output; helps limit report size.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "A report object including arrays of detected issues with severity levels, descriptions, affected elements, and suggestions for resolution." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the quality of HTML code for accessibility compliance, semantic correctness, or error detection during automated testing of web applications. It helps identify structural and accessibility flaws early to guide developers in remediation.", + "limitations": "This tool performs static analysis only and does not run the HTML in a browser context, so dynamic runtime issues or CSS/JS interactions are not analyzed.", + "examples": [ + "Analyze a webpage's HTML content to find accessibility issues before deployment.", + "Check semantic tag usage in a newly generated HTML snippet for correctness.", + "Generate a report highlighting HTML errors and warnings from automated tests." + ] + }, + "tags": [ + "testing", + "automation", + "html", + "accessibility", + "semantic-analysis", + "web-development", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"Test

Welcome

\\\"\\\"\",\"checkAccessibility\":true,\"checkSemanticIntegrity\":true,\"maxIssues\":10}", + "description": "Analyze a simple HTML snippet to detect missing alt attributes and semantic issues." + }, + { + "inputJson": "{\"htmlContent\":\"

Paragraph with bold text

\",\"checkAccessibility\":false,\"checkSemanticIntegrity\":true,\"maxIssues\":5}", + "description": "Check semantic integrity only, skipping accessibility checks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "testing-automation.sendComment", + "description": "Sends a comment to a specified testing automation system, issue tracker, or code review tool. Accepts target identifiers (e.g., test case ID, issue ID), the comment text, and optional metadata such as author name or notification flags. Returns a confirmation of comment submission status and comment ID if successful.", + "category": "testing-automation", + "parameters": [ + { + "name": "targetId", + "type": "string", + "description": "Identifier of the target item (e.g., test case ID, issue ID) where the comment should be posted.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional name or identifier of the comment author.", + "required": false, + "defaultValue": "" + }, + { + "name": "notifyAssignees", + "type": "boolean", + "description": "Flag indicating whether to notify assignees or watchers of the target item about the new comment.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of tags or labels to categorize or highlight the comment context.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, message, and the unique ID of the posted comment if successful." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically add comments to testing artifacts such as test cases, bug reports, or code reviews as part of automated feedback loops, reports, or status updates. It helps automate communication in testing workflows.", + "limitations": "This tool cannot retrieve or edit existing comments. It solely posts new comments and depends on the target system's API for successful submission.", + "examples": [ + "Send a status update comment to test case TC-1234.", + "Add a debugging remark to issue ID 5678 notifying assignees.", + "Post a code review comment mentioning a specific test failure." + ] + }, + "tags": [ + "testing", + "automation", + "comments", + "communication", + "issue-tracking", + "code-review" + ], + "examples": [ + { + "inputJson": "{\"targetId\":\"TC-1234\",\"commentText\":\"Test executed successfully with all checks passed.\",\"author\":\"automation-bot\",\"notifyAssignees\":true}", + "description": "Post a success comment on a test case to report results and notify assignees." + }, + { + "inputJson": "{\"targetId\":\"BUG-5678\",\"commentText\":\"Reproduced the issue on environment staging-12. Investigating root cause.\",\"author\":\"qa-engine\",\"notifyAssignees\":false}", + "description": "Add a debugging comment to a bug report without notifying assignees." + }, + { + "inputJson": "{\"targetId\":\"CR-9988\",\"commentText\":\"Fails on null input, suggest adding validation.\",\"tags\":[\"critical\",\"validation\"]}", + "description": "Send a code review comment suggesting improvements with relevant tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "testing-automation.uploadCSV", + "description": "Uploads a CSV file containing test case definitions or test data into the automated testing platform. Accepts CSV files as input, validates their format against an optional schema, optionally maps columns to system fields, and returns a summary of import results including success count, errors, and warnings.", + "category": "testing-automation", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "Raw CSV file content as a UTF-8 encoded string containing test data or test case definitions.", + "required": true, + "defaultValue": "" + }, + { + "name": "mapping", + "type": "object", + "description": "Optional mapping object to map CSV column headers to internal field names used in the testing platform.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Flag to enable validation of CSV structure against a predefined schema before upload.", + "required": false, + "defaultValue": "false" + }, + { + "name": "separator", + "type": "string", + "description": "Character used to separate fields in the CSV file. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "skipHeaders", + "type": "boolean", + "description": "Indicates if the first line of the CSV file is a header row to be skipped from data import.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Result object containing counts of successfully uploaded entries, details about failed rows, and any warnings detected during upload." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate importing structured test data or test case definitions from CSV files into an automated testing system as part of test setup or continuous integration workflows. It helps agents handle data ingestion with validation and mapping features.", + "limitations": "Does not perform deep validation of test logic within CSV contents beyond schema validation. Cannot execute tests; only uploads data for test configuration.", + "examples": [ + "Upload test case CSV to set up new automated tests", + "Import test data CSV for parameterized test executions", + "Validate and upload CSV with custom column mappings before test run" + ] + }, + "tags": [ + "testing", + "automation", + "csv", + "upload", + "test-data", + "test-case", + "import" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"TestName,Input,ExpectedOutput\\nLoginTest,username=admin;password=123,LoginSuccess\",\"mapping\":{\"TestName\":\"name\",\"Input\":\"inputData\",\"ExpectedOutput\":\"expectedResult\"},\"validateSchema\":true,\"separator\":\",\",\"skipHeaders\":true}", + "description": "Upload a CSV with test case definitions mapping CSV columns to internal field names with schema validation enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "testing-automation.renderText", + "description": "Renders specified text content into an HTML or plain text format suitable for automated UI tests. Accepts raw text input and outputs the rendered string either with HTML formatting or as plain text. Supports styling options and escaping as needed for accurate test simulation.", + "category": "testing-automation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text content to be rendered for testing.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output format type: 'html' to render text with basic HTML markup, or 'plain' for plain text output.", + "required": false, + "defaultValue": "html" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "If true, escapes HTML entities in the text to prevent injection when rendering as HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "wrapInParagraph", + "type": "boolean", + "description": "If true and format is 'html', wraps the text content in a

tag.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length to truncate the text after rendering. Zero or omitted means no truncation.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered text string under the key 'renderedText'." + }, + "aiAgent": { + "useCase": "Use this tool when automated tests require rendering or formatting textual content realistically, producing HTML or plain text output to verify UI components like text display, formatting, and escaping behavior.", + "limitations": "This tool does not perform advanced styling beyond basic HTML wrapping, nor does it perform localization or dynamic content insertion beyond the raw text provided.", + "examples": [ + "Render a raw string as escaped HTML inside a paragraph for UI text component testing.", + "Produce plain text output from input text without HTML markup for console or log verification.", + "Limit rendered text length to simulate truncation behavior in UI displays." + ] + }, + "tags": [ + "testing", + "automation", + "text", + "rendering", + "html", + "ui-testing" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Hello, & everyone!\",\"format\":\"html\",\"escapeHtml\":true,\"wrapInParagraph\":true}", + "description": "Render a raw string as escaped HTML inside a paragraph." + }, + { + "inputJson": "{\"text\":\"Simple plain text output\",\"format\":\"plain\",\"escapeHtml\":false}", + "description": "Produce plain text output without any HTML tags." + }, + { + "inputJson": "{\"text\":\"This is a very long text that should be cut off.\",\"format\":\"html\",\"maxLength\":20}", + "description": "Render HTML-formatted text truncated after 20 characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "testing-automation.formatInvoice", + "description": "Formats raw invoice data into a standardized, readable invoice document layout suitable for automated testing of invoicing systems. Accepts invoice details as JSON input, applies formatting rules (currency, date, layout), and outputs a well-structured invoice string or JSON, enabling verification of UI or document renders in automation pipelines.", + "category": "testing-automation", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "Structured invoice details including items, totals, and metadata to format into an invoice layout", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) to format monetary values; defaults to USD", + "required": false, + "defaultValue": "USD" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format string (e.g., YYYY-MM-DD, DD/MM/YYYY) to format invoice dates", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "includeTaxes", + "type": "boolean", + "description": "Whether to include tax details in the formatted invoice output", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'string' for formatted invoice text or 'json' for structured formatted data", + "required": false, + "defaultValue": "string" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted invoice as a string or structured JSON depending on outputFormat, including sections like header, line items, totals, and footer" + }, + "aiAgent": { + "useCase": "Use this tool in automated testing scenarios where invoice data must be programmatically formatted into standardized invoice documents to verify UI rendering, PDF generation, or API responses in billing systems. It streamlines validation of invoice layouts and content formatting based on input data.", + "limitations": "Does not perform OCR or recognize invoices from images. Assumes input data correctness and does not validate business logic like payment terms or client credit status.", + "examples": [ + "Format raw invoice JSON to a readable text invoice for UI snapshot comparison.", + "Generate JSON formatted invoice suitable for API response validation in a test.", + "Format invoices with custom date and currency for localization testing." + ] + }, + "tags": [ + "testing", + "automation", + "invoice", + "formatting", + "billing", + "document", + "validation", + "automation-testing" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-1001\",\"date\":\"2024-05-01\",\"billingAddress\":\"123 Acme St, Springfield\",\"items\":[{\"description\":\"Widget A\",\"quantity\":2,\"unitPrice\":50}],\"taxRate\":0.07,\"notes\":\"Thank you for your business.\"},\"currency\":\"USD\",\"dateFormat\":\"MM/DD/YYYY\",\"includeTaxes\":true,\"outputFormat\":\"string\"}", + "description": "Format a US dollar invoice with date in MM/DD/YYYY format including taxes, output as formatted text string." + }, + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"2024-0423\",\"date\":\"2024-04-23\",\"billingAddress\":\"45 Rue de Paris, Lyon\",\"items\":[{\"description\":\"Product X\",\"quantity\":1,\"unitPrice\":100}],\"taxRate\":0.20,\"notes\":\"Paiement à réception.\"},\"currency\":\"EUR\",\"dateFormat\":\"DD/MM/YYYY\",\"includeTaxes\":true,\"outputFormat\":\"json\"}", + "description": "Format a Euro invoice with French local date format including taxes, output as JSON structured invoice." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "testing-automation.formatCSV", + "description": "Formats raw CSV content according to specified formatting options. Accepts CSV text input and applies settings like delimiter, quote character, line endings, and trimming whitespace. Produces a well-structured CSV string compliant with the given parameters, suitable for automated tests or data pipeline validation.", + "category": "testing-automation", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "Raw CSV text input that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Single character to use as a field delimiter, e.g. comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character to quote fields containing delimiters or newlines, e.g. double quote (\").", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineEnding", + "type": "string", + "description": "Line ending sequence to use, e.g. LF '\\n' or CRLF '\\r\\n'.", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Remove leading and trailing whitespace from unquoted fields.", + "required": false, + "defaultValue": "true" + }, + { + "name": "escapeChar", + "type": "string", + "description": "Character to escape quote characters inside quoted fields, typically same as quoteChar repeated.", + "required": false, + "defaultValue": "\"" + } + ], + "returns": { + "type": "string", + "description": "Formatted CSV string with consistent delimiters, quotes, line endings, and whitespace handling as specified by input parameters." + }, + "aiAgent": { + "useCase": "Use this tool when automated testing or data validation requires consistent CSV output formatting. It is useful for normalizing CSV inputs or outputs before comparisons, data ingestion, or pipeline testing. The tool ensures CSV data adheres to expected format conventions, preventing false test failures due to formatting differences.", + "limitations": "Cannot validate CSV semantic correctness beyond format (e.g., data types). Does not parse CSV into structured objects or perform error correction beyond formatting.", + "examples": [ + "Format raw CSV with semicolon delimiter and CRLF line endings.", + "Normalize CSV by trimming whitespaces and standardizing quote characters.", + "Convert CSV delimiters from comma to tab with consistent quoting." + ] + }, + "tags": [ + "testing", + "automation", + "csv", + "formatting", + "data normalization", + "test data preparation" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"Name, Age, City\\n Alice, 30, New York \\nBob, 25, Los Angeles\",\"delimiter\":\",\",\"quoteChar\":\"\\\"\",\"lineEnding\":\"\\r\\n\",\"trimWhitespace\":true}", + "description": "Format CSV with standard comma delimiter, double quotes, CRLF line endings, and trimming whitespaces." + }, + { + "inputJson": "{\"csvContent\":\"id;value;description\\n1;10;Sample text\\n2;20;Another entry\",\"delimiter\":\";\",\"quoteChar\":\"'\",\"lineEnding\":\"\\n\",\"trimWhitespace\":false}", + "description": "Format CSV using semicolon delimiter and single quote character, no trimming whitespace." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "testing-automation.formatEndpoint", + "description": "Formats a software API endpoint definition into a standardized, human-readable string or code snippet. Accepts input as a JSON object describing HTTP method, path, query parameters, headers, and request/response bodies. Outputs a formatted string representation suitable for documentation, testing scripts, or display.", + "category": "testing-automation", + "parameters": [ + { + "name": "endpointDefinition", + "type": "object", + "description": "JSON object describing the API endpoint including method, path, parameters, headers, requestBody, responseBody.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Specifies the desired output format style, e.g., 'curl', 'plainText', 'markdown'.", + "required": false, + "defaultValue": "plainText" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include HTTP headers in the formatted output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'formattedEndpoint' string with the formatted representation of the endpoint." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured API endpoint definitions into readable or executable format representations to assist in automated testing, documentation generation, or communication with developers. It helps ensure consistent, clear formatting of endpoints from raw specs or definitions.", + "limitations": "This tool does not validate the semantic correctness of the API definitions nor execute or test the endpoint. It only formats given data into specific styles.", + "examples": [ + "Format a JSON endpoint definition into a curl command for testing.", + "Generate a markdown formatted endpoint snippet for API documentation.", + "Create a plain text summary of an endpoint's method, path, and parameters." + ] + }, + "tags": [ + "testing", + "automation", + "API", + "formatting", + "endpoint", + "documentation", + "curl", + "api-testing" + ], + "examples": [ + { + "inputJson": "{\"endpointDefinition\":{\"method\":\"POST\",\"path\":\"/users/{userId}/posts\",\"queryParams\":[{\"name\":\"filter\",\"type\":\"string\"}],\"headers\":{\"Authorization\":\"Bearer token\"},\"requestBody\":{\"contentType\":\"application/json\",\"schema\":{\"title\":\"Post\",\"type\":\"object\",\"properties\":{\"title\":{\"type\":\"string\"},\"content\":{\"type\":\"string\"}}}},\"responseBody\":{\"statusCode\":201,\"contentType\":\"application/json\",\"schema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"title\":{\"type\":\"string\"},\"content\":{\"type\":\"string\"}}}}},\"formatStyle\":\"curl\",\"includeHeaders\":true,\"indentationSpaces\":2}", + "description": "Format a POST user posts endpoint as a curl command including headers." + }, + { + "inputJson": "{\"endpointDefinition\":{\"method\":\"GET\",\"path\":\"/products\",\"queryParams\":[{\"name\":\"category\",\"type\":\"string\"},{\"name\":\"limit\",\"type\":\"integer\"}],\"headers\":{},\"requestBody\":null,\"responseBody\":{\"statusCode\":200,\"contentType\":\"application/json\",\"schema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"}}}}}},\"formatStyle\":\"markdown\",\"includeHeaders\":false,\"indentationSpaces\":4}", + "description": "Generate the endpoint details in markdown format without headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "testing-automation.formatSummary", + "description": "Formats raw automated test run summaries into clear, structured reports. Accepts raw summary text or JSON data from testing frameworks, applies customizable formatting options, and outputs a formatted summary text or markdown report suitable for team review or documentation.", + "category": "testing-automation", + "parameters": [ + { + "name": "rawSummary", + "type": "string", + "description": "Raw test run summary as plain text or JSON string from a testing framework, containing test results and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'text' for plain formatted string, 'markdown' for markdown-formatted report.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed test case results (pass/fail, errors) in the formatted summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of output summary text. If exceeded, output will be truncated with an ellipsis.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "highlightFailures", + "type": "boolean", + "description": "If true, failed tests are highlighted (e.g., with markdown bold or uppercase) in the output summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formattedSummary string in the requested format and a summaryLength number indicating the length of the formatted text." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw automated testing result data into a human-readable summary for team communications, reports, or dashboards. It helps standardize outputs from various test frameworks into clear summaries highlighting test outcomes.", + "limitations": "Cannot interpret or re-execute test results. The tool is format-focused and does not analyze or retry failed tests. It depends on correct raw summary input format.", + "examples": [ + "Format raw JSON summary into markdown for a daily report.", + "Generate a brief plain text summary focusing on failures only.", + "Produce a detailed text report including all test case outcomes." + ] + }, + "tags": [ + "testing", + "automation", + "formatting", + "summary", + "reporting", + "software-testing" + ], + "examples": [ + { + "inputJson": "{\"rawSummary\":\"{\\\"totalTests\\\":10,\\\"passed\\\":8,\\\"failed\\\":2,\\\"tests\\\":[{\\\"name\\\":\\\"testLogin\\\",\\\"status\\\":\\\"pass\\\"},{\\\"name\\\":\\\"testSignup\\\",\\\"status\\\":\\\"fail\\\",\\\"error\\\":\\\"Timeout error\\\"}]}\" , \"outputFormat\":\"markdown\", \"includeDetails\":true, \"highlightFailures\":true}", + "description": "Format a JSON test summary into a markdown report including test case details with failed tests highlighted." + }, + { + "inputJson": "{\"rawSummary\":\"All 15 tests passed successfully.\", \"outputFormat\":\"text\", \"includeDetails\":false, \"maxSummaryLength\":100}", + "description": "Format a simple plain text summary without detailed test results, truncated to 100 characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "testing-automation.draftContract", + "description": "Generates a formal contract document draft tailored to specified project details and legal clauses. Accepts inputs such as project scope, party details, terms, and conditions to create a structured contract suitable for review and subsequent automation in testing agreements.", + "category": "testing-automation", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the project or agreement subject to the contract", + "required": true, + "defaultValue": "" + }, + { + "name": "parties", + "type": "array", + "description": "List of parties involved in the contract, with each party object containing name and role", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Contract start date in ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Contract end date in ISO format (YYYY-MM-DD)", + "required": false, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Details about payment schedules, amounts, or conditions", + "required": false, + "defaultValue": "" + }, + { + "name": "deliverables", + "type": "array", + "description": "List of key deliverables or milestones with descriptions and deadlines", + "required": false, + "defaultValue": "" + }, + { + "name": "confidentialityClause", + "type": "boolean", + "description": "Flag to include a confidentiality clause in the contract", + "required": false, + "defaultValue": "false" + }, + { + "name": "terminationConditions", + "type": "string", + "description": "Summary of conditions under which the contract may be terminated", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted contract text formatted for presentation or further processing" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically draft a preliminary contract based on structured project and party data, enabling faster generation of agreement documents for automated software testing scenarios or vendor partnerships.", + "limitations": "This tool does not provide legally binding contracts or legal advice. Further legal review is recommended before finalization.", + "examples": [ + "Draft a contract for a software testing project involving Company A and Company B starting from 2024-07-01, including confidentiality and payment terms.", + "Generate a contract draft for a freelance tester working on multiple deliverables with specific deadlines.", + "Create a contract outline to review termination conditions and confidentiality clauses for an automated testing service agreement." + ] + }, + "tags": [ + "testing-automation", + "contract", + "document-generation", + "legal", + "automation", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Automated UI Testing Suite\",\"parties\":[{\"name\":\"Acme Corp\",\"role\":\"Client\"},{\"name\":\"BetaTest LLC\",\"role\":\"Service Provider\"}],\"startDate\":\"2024-07-01\",\"endDate\":\"2025-06-30\",\"paymentTerms\":\"Monthly payments of $5000 upon milestone completion.\",\"deliverables\":[{\"description\":\"Complete UI test scripts\",\"deadline\":\"2024-09-30\"}],\"confidentialityClause\":true,\"terminationConditions\":\"Either party may terminate with 30 days notice.\"}", + "description": "Draft a contract for an automated testing project between Acme Corp and BetaTest LLC including payment terms, deliverables, confidentiality, and termination conditions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "testing-automation.composeNotification", + "description": "This tool generates a structured notification message suitable for automated testing scenarios. It accepts inputs detailing notification type, recipients, message content, and optional metadata. The tool processes these inputs to compose a standardized notification payload that can be used for verifying notification delivery and content in tests.", + "category": "testing-automation", + "parameters": [ + { + "name": "notificationType", + "type": "string", + "description": "Type of notification to compose (e.g., email, SMS, push).", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as email addresses or phone numbers.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the notification (if applicable).", + "required": false, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main textual content of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data such as priority, tags, or timestamp.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A structured notification object including type, recipients, subject, body, and metadata fields, formatted for use in automated testing assertions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create test notifications for verifying notification system behavior across different channels, ensuring that automated tests receive properly formatted notifications matching expected input.", + "limitations": "It does not send notifications or simulate delivery; it only prepares notification payloads for testing purposes.", + "examples": [ + "Compose a test email notification for two recipients with subject and message body.", + "Create a push notification message with metadata priorities for integration tests.", + "Generate an SMS notification with just a message body for a single recipient." + ] + }, + "tags": [ + "testing", + "automation", + "notification", + "compose", + "message", + "email", + "push", + "sms" + ], + "examples": [ + { + "inputJson": "{\"notificationType\":\"email\",\"recipients\":[\"user1@example.com\",\"user2@example.com\"],\"subject\":\"Test Alert\",\"messageBody\":\"This is a test notification.\",\"metadata\":{\"priority\":\"high\"}}", + "description": "Compose an email notification with subject, multiple recipients, and high priority metadata." + }, + { + "inputJson": "{\"notificationType\":\"push\",\"recipients\":[\"device123\"],\"messageBody\":\"New update available!\",\"metadata\":{\"version\":\"1.2.3\"}}", + "description": "Create a push notification for a single device including a version metadata tag." + }, + { + "inputJson": "{\"notificationType\":\"sms\",\"recipients\":[\"+1234567890\"],\"messageBody\":\"Your code is 12345.\"}", + "description": "Generate an SMS notification with a short message body for one recipient without additional metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "testing-automation.buildVariable", + "description": "Constructs a test automation variable definition used within scripts or frameworks by processing input parameters such as name, type, initial value, and scope. Produces a structured variable object compatible with automated testing frameworks.", + "category": "testing-automation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The identifier name for the test variable to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable (e.g., string, number, boolean, array, object).", + "required": true, + "defaultValue": "" + }, + { + "name": "initialValue", + "type": "string", + "description": "An optional initial value for the variable, represented as a string.", + "required": false, + "defaultValue": "" + }, + { + "name": "scope", + "type": "string", + "description": "The scope where the variable is available (e.g., global, local, test-case).", + "required": false, + "defaultValue": "local" + }, + { + "name": "description", + "type": "string", + "description": "A brief description or purpose of the variable within the test context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the fully defined test automation variable, including name, type, initial value (if any), scope, and description." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create or define variables within an automated testing environment. It is especially useful for generating consistent variable definitions in testing scripts or frameworks where variables need to be tracked with type, scope, and initial values.", + "limitations": "This tool does not handle variable usage or value manipulation beyond initial definition. It also does not validate the semantics of variable names or data types beyond basic string acceptance.", + "examples": [ + "Create a global string variable named 'apiEndpoint' with initial value 'https://example.com/api'.", + "Define a local boolean variable 'isUserLoggedIn' without an initial value.", + "Build an integer test-case scoped variable 'retryCount' initialized to 3." + ] + }, + "tags": [ + "testing", + "automation", + "variable", + "build", + "test-script", + "definition" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"userName\",\"variableType\":\"string\",\"initialValue\":\"testUser\",\"scope\":\"global\",\"description\":\"Stores the username for login tests.\"}", + "description": "Creates a global string variable 'userName' initialized with 'testUser' for login test scenarios." + }, + { + "inputJson": "{\"variableName\":\"maxRetries\",\"variableType\":\"number\",\"initialValue\":\"5\",\"scope\":\"test-case\",\"description\":\"Maximum retry attempts for failed network requests.\"}", + "description": "Defines a test-case scoped numerical variable 'maxRetries' with initial value 5 to control retry logic." + }, + { + "inputJson": "{\"variableName\":\"isFeatureEnabled\",\"variableType\":\"boolean\",\"scope\":\"local\",\"description\":\"Flag to enable or disable a feature toggle.\"}", + "description": "Builds a local boolean variable 'isFeatureEnabled' without a preset value for feature toggle management." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "testing-automation.buildInstance", + "description": "This tool provisions a cloud-based testing instance tailored to automated software test execution. It accepts inputs such as instance type, operating system, test framework configurations, and optional setup scripts. It builds and configures the instance accordingly, returning connection details and status information for integration in testing pipelines.", + "category": "testing-automation", + "parameters": [ + { + "name": "instanceType", + "type": "string", + "description": "Type of compute instance to provision (e.g., t2.medium, m5.large) depending on cloud provider.", + "required": true, + "defaultValue": "" + }, + { + "name": "osImage", + "type": "string", + "description": "Operating system image or version to be installed on the instance (e.g., Ubuntu 20.04, Windows Server 2019).", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Name of the testing framework to pre-install or configure (e.g., Selenium, JUnit, Cypress).", + "required": true, + "defaultValue": "" + }, + { + "name": "setupScripts", + "type": "array", + "description": "List of shell or batch scripts to run post-deployment to customize environment (e.g., install dependencies).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "autoStartTests", + "type": "boolean", + "description": "Whether to automatically trigger the testing framework after instance setup completes.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutMinutes", + "type": "number", + "description": "Maximum time in minutes to wait for instance to be ready before raising an error.", + "required": false, + "defaultValue": "15" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to label and categorize the instance for resource management.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing instanceId (string), status (string, e.g., provisioning, ready, failed), ipAddress (string), and optionally errorMessage (string if failed). This allows test orchestrators to connect and monitor the new testing instance." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the provisioning of isolated test environments dynamically for running automated test suites. It supports configuring OS, test frameworks, and custom setup to integrate into continuous testing pipelines. This enables scaling testing infrastructure on demand.", + "limitations": "This tool does not handle deployment of application artifacts or manage test execution results. It only provisions and configures the test environment instance. Interaction with the test run orchestration must be handled separately.", + "examples": [ + "Provision a Linux instance with Selenium pre-installed and run tests automatically.", + "Create a Windows test instance using JUnit without starting tests automatically immediately.", + "Build a test instance with custom setup scripts to install additional dependencies." + ] + }, + "tags": [ + "automation", + "testing", + "cloud", + "instance", + "provisioning", + "CI/CD", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"instanceType\":\"t2.medium\",\"osImage\":\"Ubuntu 20.04\",\"testFramework\":\"Selenium\",\"setupScripts\":[\"sudo apt-get update\",\"sudo apt-get install -y firefox\"],\"autoStartTests\":true,\"timeoutMinutes\":10,\"tags\":{\"project\":\"webapp\",\"env\":\"staging\"}}", + "description": "Provision a medium Ubuntu instance with Selenium and Firefox installed, auto-starting tests, tagged for project webapp staging environment." + }, + { + "inputJson": "{\"instanceType\":\"m5.large\",\"osImage\":\"Windows Server 2019\",\"testFramework\":\"JUnit\",\"setupScripts\":[],\"autoStartTests\":false,\"timeoutMinutes\":15,\"tags\":{\"department\":\"QA\"}}", + "description": "Create a large Windows instance with JUnit installed without auto-starting tests, tagged under QA department." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "testing-automation.buildQuery", + "description": "Constructs a test automation query for selecting test cases based on criteria such as tags, status, priority, and creation date. Accepts filter parameters and outputs a structured query object or string usable in automated test management systems to retrieve relevant test cases.", + "category": "testing-automation", + "parameters": [ + { + "name": "tags", + "type": "array", + "description": "List of tags to filter test cases. Returns test cases containing any of these tags.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "status", + "type": "string", + "description": "Test case status to filter by (e.g., 'passed', 'failed', 'skipped').", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Test case priority level to filter by (e.g., 'high', 'medium', 'low').", + "required": false, + "defaultValue": "" + }, + { + "name": "createdAfter", + "type": "string", + "description": "ISO 8601 date string to filter test cases created after this date.", + "required": false, + "defaultValue": "" + }, + { + "name": "createdBefore", + "type": "string", + "description": "ISO 8601 date string to filter test cases created before this date.", + "required": false, + "defaultValue": "" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of test cases to return in the query result.", + "required": false, + "defaultValue": "100" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field to sort results by, e.g., 'creationDate', 'priority'.", + "required": false, + "defaultValue": "creationDate" + }, + { + "name": "sortDescending", + "type": "boolean", + "description": "Whether to sort the results in descending order.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured query object containing the combined filters and sorting instructions that can be used by test automation systems to retrieve matching test cases." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to programmatically construct queries for automated test management or execution systems, enabling targeted retrieval of test cases based on specific criteria such as priority, status, tags, and creation date ranges. Ideal for dynamic test selection or reporting.", + "limitations": "This tool does not execute queries nor access datastore; it only builds the query object or string. It cannot validate if the filters correspond to actual test case metadata in any particular system.", + "examples": [ + "Build a query to get all failed test cases tagged with 'login' created in last 30 days.", + "Create a query to fetch top 50 high priority test cases sorted by creation date ascending.", + "Generate a query to find skipped test cases with no tags, sorted by priority descending." + ] + }, + "tags": [ + "testing", + "automation", + "query", + "test-management", + "filter", + "build", + "test-selection" + ], + "examples": [ + { + "inputJson": "{\"tags\":[\"login\",\"smoke\"],\"status\":\"failed\",\"createdAfter\":\"2024-05-01T00:00:00Z\",\"limit\":50,\"sortBy\":\"creationDate\",\"sortDescending\":true}", + "description": "Query to retrieve 50 most recent failed test cases tagged with 'login' or 'smoke' created after May 1, 2024." + }, + { + "inputJson": "{\"priority\":\"high\",\"sortBy\":\"priority\",\"sortDescending\":false,\"limit\":20}", + "description": "Select top 20 high priority test cases sorted by priority ascending." + }, + { + "inputJson": "{\"status\":\"skipped\",\"tags\":[],\"limit\":10}", + "description": "Get 10 skipped test cases with no specific tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "testing-automation.generateTrend", + "description": "Generates analytic trends from automated testing reports. Accepts JSON-formatted test execution data containing timestamps, test case outcomes, durations, and metrics. Processes data to compute trends over time such as pass rate evolution, average duration changes, and failure category frequency. Returns structured trend summaries and visualizable metrics to aid test automation monitoring and reporting.", + "category": "testing-automation", + "parameters": [ + { + "name": "testData", + "type": "array", + "description": "An array of test execution records each including timestamp, status, duration, and metrics. Required for analyzing trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "trendType", + "type": "string", + "description": "Type of trend to generate (e.g., 'passRate', 'duration', 'failureCount'). Determines which analytic dimension to process.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeGranularity", + "type": "string", + "description": "Temporal aggregation level for trends (e.g., 'hourly', 'daily', 'weekly'). Controls time bucket granularity for trend calculations.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted start date for the analysis period. Filters test data from this date onward.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted end date for the analysis period. Filters test data up to this date.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFailedTests", + "type": "boolean", + "description": "If true, failed tests are included in trend calculations; otherwise, only passed tests are considered.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing trend data categorized by time intervals with computed metrics such as pass rate percentages, average durations, and failure counts, suitable for visualizations or further analysis." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing test automation results over time to identify trends in pass/fail rates, test execution durations, or failure patterns. It supports optimizing automated test suites and improving stability by revealing performance insights. Useful in continuous integration environments and testing pipelines.", + "limitations": "Does not perform root cause analysis or predict future trends beyond statistical aggregations. Requires well-structured and consistent test input data; noisy or incomplete data may reduce accuracy.", + "examples": [ + "Generate a daily pass rate trend for the last month from a JSON array of automated test results.", + "Create a weekly average duration trend for performance tests between specific dates.", + "Analyze failure counts by category over hourly intervals from recent test execution logs." + ] + }, + "tags": [ + "testing", + "automation", + "analytics", + "trend", + "test-results", + "CI", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"testData\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"status\":\"passed\",\"duration\":30},{\"timestamp\":\"2024-05-02T10:00:00Z\",\"status\":\"failed\",\"duration\":35}],\"trendType\":\"passRate\",\"timeGranularity\":\"daily\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-03\",\"includeFailedTests\":true}", + "description": "Generate daily pass rate trend from test data within a date range." + }, + { + "inputJson": "{\"testData\":[{\"timestamp\":\"2024-06-01T10:00:00Z\",\"status\":\"passed\",\"duration\":120},{\"timestamp\":\"2024-06-08T10:00:00Z\",\"status\":\"passed\",\"duration\":100}],\"trendType\":\"duration\",\"timeGranularity\":\"weekly\"}", + "description": "Generate weekly average test duration trend from test data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "testing-automation.generateSession", + "description": "Generates a synthetic user session for automated testing of software applications by simulating realistic interaction sequences with specified parameters. Accepts session length, event types, and optional user profile data as input, outputs a structured session object with timestamped events suitable for analytics and testing purposes.", + "category": "testing-automation", + "parameters": [ + { + "name": "sessionLength", + "type": "number", + "description": "Total duration of the generated session in minutes.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventTypes", + "type": "array", + "description": "List of event types to include in the session (e.g., click, pageview, scroll).", + "required": true, + "defaultValue": "" + }, + { + "name": "userProfile", + "type": "object", + "description": "Optional user profile data such as userId, userAgent, and location to personalize the session.", + "required": false, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp string representing the session start time. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxEvents", + "type": "number", + "description": "Maximum number of events generated in the session. Defaults to 100.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object representing the generated session with metadata and an array of timestamped event objects reflecting user interactions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create realistic synthetic user sessions for functional or performance testing of application analytics and interaction tracking. Ideal for validating data pipelines, testing event handling, or simulating user behavior without live data.", + "limitations": "This tool generates synthetic data and does not capture live user interactions; it cannot simulate highly complex user flows requiring detailed domain-specific logic.", + "examples": [ + "Generate a 15-minute session with clicks and pageviews for an anonymous user.", + "Create a session starting at a specific time with custom user profile data for testing.", + "Produce a short session including scroll and hover events limited to 50 events." + ] + }, + "tags": [ + "testing", + "automation", + "session", + "analytics", + "simulation", + "user-behavior" + ], + "examples": [ + { + "inputJson": "{\"sessionLength\":15,\"eventTypes\":[\"click\",\"pageview\"],\"userProfile\":{\"userId\":\"testUser123\",\"location\":\"US\"}}", + "description": "Generate a 15-minute user session with click and pageview events for a test user in the US." + }, + { + "inputJson": "{\"sessionLength\":10,\"eventTypes\":[\"scroll\",\"hover\"],\"startTime\":\"2024-06-01T08:00:00Z\",\"maxEvents\":50}", + "description": "Generate a 10-minute session starting at a fixed time with scroll and hover events capped at 50 events." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "testing-automation.generateHeading", + "description": "Generates a formatted heading text string for use in automated test scripts or reports. Accepts input parameters such as heading text content, heading level (e.g., 1-6), and optional style attributes. Outputs a string representing the heading formatted according to common markup conventions (Markdown, HTML, or plain text) suitable for automated documentation or test logs.", + "category": "testing-automation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The content string of the heading to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level indicating the hierarchy (1 through 6).", + "required": false, + "defaultValue": "1" + }, + { + "name": "styleFormat", + "type": "string", + "description": "Formatting style of the heading output: 'markdown', 'html', or 'plain'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "uppercase", + "type": "boolean", + "description": "Flag to convert heading text to uppercase.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted heading string under property 'formattedHeading' suitable for inclusion in test outputs or reports." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate consistently formatted headings for test automation reports, documentation, or logs, especially when the output format needs to be compatible with markdown, html, or plain text environments. It helps standardize test output presentation.", + "limitations": "Cannot generate complex headings with embedded styling beyond simple format (markdown, html) and text case. Does not support localization or dynamic text substitution.", + "examples": [ + "Generate a level 2 markdown heading 'Test Results Summary'.", + "Create an HTML level 3 heading with uppercase text 'error logs'.", + "Produce a plain text level 1 heading 'Feature Overview'." + ] + }, + "tags": [ + "testing", + "automation", + "heading", + "generate", + "formatting", + "documentation", + "test-reports" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Test Results Summary\",\"level\":2,\"styleFormat\":\"markdown\",\"uppercase\":false}", + "description": "Generate a level 2 Markdown heading with normal case." + }, + { + "inputJson": "{\"text\":\"error logs\",\"level\":3,\"styleFormat\":\"html\",\"uppercase\":true}", + "description": "Generate a level 3 HTML heading with uppercase text." + }, + { + "inputJson": "{\"text\":\"Feature Overview\",\"level\":1,\"styleFormat\":\"plain\",\"uppercase\":false}", + "description": "Generate a level 1 plain text heading." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "testing-automation.generateChart", + "description": "Generates visual charts from automated test result data to help analyze trends, failures, and performance metrics. Accepts test result logs or structured JSON, processes metrics like pass/fail counts, duration, and error types, and produces configurable charts such as line, bar, or pie charts in PNG or SVG format.", + "category": "testing-automation", + "parameters": [ + { + "name": "testData", + "type": "object", + "description": "Structured test results data containing metrics like test names, statuses, durations, and error details.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate, e.g., 'line', 'bar', or 'pie'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title text to display on the chart.", + "required": false, + "defaultValue": "Test Results Chart" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the x-axis of the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the y-axis of the chart (not used for pie charts).", + "required": false, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color scheme to apply to chart elements, e.g., 'default', 'dark', or custom hex codes comma-separated.", + "required": false, + "defaultValue": "default" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, such as 'png' or 'svg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated chart image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated chart image in pixels.", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64 encoded string of the chart image and metadata like image format and dimensions." + }, + "aiAgent": { + "useCase": "Use when automated testing frameworks produce structured test result data that requires visual summarization for quick insight into test trends, failure rates, or performance metrics. This tool helps generate charts ready for dashboards, reports, or further analysis without manual chart creation.", + "limitations": "Cannot create highly customized charts requiring complex interactions or animations; limited to predefined chart types and basic formatting. Requires well-structured input data. Does not analyze raw log files directly.", + "examples": [ + "Generate a bar chart showing pass/fail counts for the latest test run.", + "Produce a pie chart illustrating distribution of error types in test failures.", + "Create a line chart displaying test execution time trends over multiple builds." + ] + }, + "tags": [ + "testing", + "automation", + "chart", + "visualization", + "test-results", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"testData\":{\"tests\":[{\"name\":\"LoginTest\",\"status\":\"pass\",\"duration\":120},{\"name\":\"PaymentTest\",\"status\":\"fail\",\"duration\":200}]},\"chartType\":\"bar\",\"title\":\"Test Status Overview\",\"xAxisLabel\":\"Test Name\",\"yAxisLabel\":\"Duration (ms)\",\"outputFormat\":\"png\"}", + "description": "Generate a bar chart comparing test durations and pass/fail statuses." + }, + { + "inputJson": "{\"testData\":{\"summary\":{\"passed\":80,\"failed\":20}},\"chartType\":\"pie\",\"title\":\"Test Pass/Fail Ratio\",\"outputFormat\":\"svg\"}", + "description": "Generate a pie chart showing the ratio of passed versus failed tests." + }, + { + "inputJson": "{\"testData\":{\"trend\":[{\"build\":1,\"duration\":300},{\"build\":2,\"duration\":280},{\"build\":3,\"duration\":320}]},\"chartType\":\"line\",\"title\":\"Build Duration Trend\",\"xAxisLabel\":\"Build Number\",\"yAxisLabel\":\"Duration (seconds)\"}", + "description": "Generate a line chart for test execution duration trends over builds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "testing-automation.generateXML", + "description": "Generates structured XML test data or configuration files based on provided input objects, schema definitions, or test case parameters. Accepts JSON objects or templates describing the desired XML structure and outputs well-formed XML suitable for automated testing workflows and integration with test suites.", + "category": "testing-automation", + "parameters": [ + { + "name": "dataObject", + "type": "object", + "description": "JSON object representing the data and structure to convert into XML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "Name of the root element in the generated XML document.", + "required": true, + "defaultValue": "root" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "Flag to include the XML declaration header at the beginning of the document (e.g., ).", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces for indentation to format the XML output for readability. Use 0 for no indentation.", + "required": false, + "defaultValue": "2" + }, + { + "name": "attributesMap", + "type": "object", + "description": "Optional map defining which JSON keys should be converted to XML attributes instead of elements. Key is JSON field, value is attribute name.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated XML string under the key 'xmlString'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate XML files from JSON-like representations for testing purposes, such as creating test inputs, configuration files, or simulating XML API responses in automated test scenarios. It aids in transforming structured data into XML format suitable for integration with XML-based testing tools and frameworks.", + "limitations": "Does not validate against specific XML schemas (XSD). Complex XML features such as namespaces, CDATA sections, or processing instructions beyond the basic declaration are not supported.", + "examples": [ + "Generate an XML config from test parameters represented in JSON.", + "Create XML test input files for a legacy system expecting XML format.", + "Produce readable indented XML from nested JSON test data." + ] + }, + "tags": [ + "testing", + "automation", + "XML", + "generate", + "test-data", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"dataObject\":{\"user\":{\"name\":\"Alice\",\"age\":30,\"active\":true}},\"rootElementName\":\"TestUser\",\"includeDeclaration\":true,\"indentationSpaces\":4}", + "description": "Generate XML representing a user object with root element 'TestUser', including XML declaration and indentation." + }, + { + "inputJson": "{\"dataObject\":{\"settings\":{\"theme\":\"dark\",\"notifications\":\"enabled\"}},\"rootElementName\":\"AppSettings\",\"includeDeclaration\":false,\"indentationSpaces\":2,\"attributesMap\":{\"notifications\":\"status\"}}", + "description": "Generate XML for settings with 'notifications' converted to an attribute named 'status', no XML declaration and 2-space indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "testing-automation.createSession", + "description": "Creates a test session for automated testing workflows by accepting session metadata and configuration parameters, initializing the session in the testing system, and returning a session identifier along with status information for tracking test automation activities.", + "category": "testing-automation", + "parameters": [ + { + "name": "sessionName", + "type": "string", + "description": "A unique, human-readable name for the test session to identify it in reports and logs.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "The ISO 8601 formatted timestamp indicating when the test session starts, usually current or scheduled time.", + "required": false, + "defaultValue": "" + }, + { + "name": "testSuiteIds", + "type": "array", + "description": "An array of strings representing IDs of test suites to include in this session.", + "required": true, + "defaultValue": "" + }, + { + "name": "environmentConfig", + "type": "object", + "description": "Configuration details for the environment where tests will run, such as OS, browser version, and hardware specs.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional arbitrary key-value pairs for tagging the session with custom attributes like project name or tester.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the sessionId (string), creation timestamp, status indicating if the session was successfully created, and optional error message if creation failed." + }, + "aiAgent": { + "useCase": "Use this tool when orchestrating automated testing workflows that require programmatic creation and tracking of test sessions across multiple test suites and environments. Ideal for continuous integration pipelines that dynamically schedule test runs.", + "limitations": "This tool does not execute tests or report test results; it only creates and registers test sessions. It also does not handle session updates or deletions.", + "examples": [ + "Create a new test session named 'Regression Suite Run 2024-06-01' including suites IDs ['suite123', 'suite456'] with environment config for Windows 10 and Chrome 90.", + "Initialize a test session with minimal parameters just specifying the session name and suite IDs to quickly start testing.", + "Create a session and attach metadata tags like 'releaseVersion':'2.3.1' and 'priority':'high' for better tracking." + ] + }, + "tags": [ + "testing", + "automation", + "session", + "test management", + "CI", + "QA" + ], + "examples": [ + { + "inputJson": "{\"sessionName\":\"Regression Suite Run 2024-06-01\",\"testSuiteIds\":[\"suite123\",\"suite456\"],\"environmentConfig\":{\"os\":\"Windows 10\",\"browser\":\"Chrome 90\"},\"metadata\":{\"project\":\"PaymentGateway\",\"tester\":\"alice\"}}", + "description": "Create a regression testing session for suites suite123 and suite456 on Windows 10 with Chrome 90 browser environment." + }, + { + "inputJson": "{\"sessionName\":\"Quick Smoke Tests\",\"testSuiteIds\":[\"smoke01\"]}", + "description": "Create a quick smoke test session with just session name and one test suite ID." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "testing-automation.createHeading", + "description": "Generates a heading element for automated UI testing scripts with specified level, text content, and optional attributes. Accepts the heading level (1-6), text to display, and optional HTML attributes. Outputs a structured representation of the heading to insert into test markup or use for verification steps.", + "category": "testing-automation", + "parameters": [ + { + "name": "level", + "type": "number", + "description": "Heading level from 1 to 6 indicating h1 through h6 tags.", + "required": true, + "defaultValue": "" + }, + { + "name": "text", + "type": "string", + "description": "Text content to display inside the heading.", + "required": true, + "defaultValue": "" + }, + { + "name": "attributes", + "type": "object", + "description": "Optional HTML attributes as key-value pairs to add to the heading element (e.g., id, class).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object representing the heading element including level, text, and attributes suitable for test automation frameworks." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically generate heading elements in test automation scripts to verify UI structure, validate accessibility, or automate content checks. It is helpful when creating or augmenting test cases that require heading elements of specific levels and properties.", + "limitations": "Does not render visual elements or execute in a browser; generates only structural data representation for test use. It can't validate heading usage correctness beyond generation.", + "examples": [ + "Create a level 2 heading with text 'Welcome' and class 'main-title'", + "Generate an h1 heading containing 'Dashboard' without extra attributes", + "Produce an h3 heading with text 'Section 3' and id 'sec-3-heading'" + ] + }, + "tags": [ + "ui-testing", + "automation", + "heading", + "html", + "element-generation" + ], + "examples": [ + { + "inputJson": "{\"level\":2,\"text\":\"Welcome\",\"attributes\":{\"class\":\"main-title\"}}", + "description": "Create a level 2 heading with text 'Welcome' and class attribute for testing." + }, + { + "inputJson": "{\"level\":1,\"text\":\"Dashboard\",\"attributes\":{}}", + "description": "Generate a simple h1 heading with text 'Dashboard'." + }, + { + "inputJson": "{\"level\":3,\"text\":\"Section 3\",\"attributes\":{\"id\":\"sec-3-heading\"}}", + "description": "Produce a level 3 heading with specific id attribute for a test case." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "testing-automation.createCluster", + "description": "Creates a cluster infrastructure for distributed automated testing environments. Accepts specifications such as cluster size, node configuration, network settings, and software versions. Provisions the cluster by allocating virtual machines or containers and configures them for testing purposes. Returns cluster details including access endpoints and status.", + "category": "testing-automation", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "Unique name identifier for the cluster to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of nodes or instances in the cluster.", + "required": true, + "defaultValue": "3" + }, + { + "name": "nodeType", + "type": "string", + "description": "Type or size of each node (e.g., t2.medium, n1-standard-4).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region or data center location for cluster deployment.", + "required": false, + "defaultValue": "us-central1" + }, + { + "name": "osImage", + "type": "string", + "description": "Operating system image or container image to deploy on each node.", + "required": false, + "defaultValue": "ubuntu-20.04" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration settings such as subnets, firewall rules.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoScalingEnabled", + "type": "boolean", + "description": "Enable or disable auto-scaling capabilities for the cluster.", + "required": false, + "defaultValue": "false" + }, + { + "name": "softwareStack", + "type": "array", + "description": "List of software packages or testing frameworks to install on each node.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Object containing cluster metadata such as cluster ID, node IP addresses, access credentials, provisioning status, and monitoring endpoints." + }, + "aiAgent": { + "useCase": "Use this tool when an automated testing pipeline requires dynamic provisioning of distributed test clusters to run parallel tests, simulate production environments, or perform integration testing at scale. It supports customizing cluster size, node specs, and software to match testing needs.", + "limitations": "Does not manage ongoing cluster lifecycle beyond initial creation, such as auto-healing or long-term updates. Network configurations must be compatible with cloud or virtual infrastructure policies. Does not support bare metal hardware provisioning.", + "examples": [ + "Create a 5-node cluster of medium instances in the us-east1 region with Selenium grid pre-installed.", + "Create a 10-node Kubernetes cluster for distributed test execution with custom OS images.", + "Provision a small cluster with auto-scaling enabled and standard Linux OS for continuous integration testing." + ] + }, + "tags": [ + "infrastructure", + "automation", + "testing", + "cluster", + "provisioning", + "cloud", + "distributed", + "CI/CD" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"test-cluster-01\",\"nodeCount\":5,\"nodeType\":\"t2.medium\",\"region\":\"us-east-1\",\"osImage\":\"ubuntu-20.04\",\"autoScalingEnabled\":true,\"softwareStack\":[\"selenium\",\"pytest\"]}", + "description": "Create a 5-node cluster in us-east-1 with Ubuntu OS and Selenium & pytest installed, auto-scaling enabled." + }, + { + "inputJson": "{\"clusterName\":\"integration-cluster\",\"nodeCount\":3,\"nodeType\":\"n1-standard-4\",\"region\":\"europe-west1\",\"softwareStack\":[\"docker\",\"kubectl\"]}", + "description": "Create a 3-node Kubernetes-ready cluster in europe-west1 with Docker and kubectl installed." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "testing-automation.createQueue", + "description": "Creates a message queue infrastructure component for managing test task dispatching. Accepts configuration parameters including queue name, maximum size, and persistence options. Sets up the queue with specified properties and returns the queue identifier and status confirmation.", + "category": "testing-automation", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "Unique name identifier for the queue to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of messages the queue can hold; zero or less means unlimited", + "required": false, + "defaultValue": "0" + }, + { + "name": "isPersistent", + "type": "boolean", + "description": "Whether the queue should persist messages to survive system restarts", + "required": false, + "defaultValue": "true" + }, + { + "name": "visibilityTimeout", + "type": "number", + "description": "Timeout in seconds during which a message is invisible to other consumers after being retrieved", + "required": false, + "defaultValue": "30" + }, + { + "name": "deadLetterQueueName", + "type": "string", + "description": "Optional name of a dead letter queue to route failed messages", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing queueId (string), queueName (string), and creationStatus (string) confirming success or error details" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the setup of messaging queues for distributing and managing test jobs, especially in scalable testing environments. It helps create infrastructure queues with configurable properties to support asynchronous test execution and message-driven workflows.", + "limitations": "This tool does not handle sending or receiving messages in the queue, nor does it manage message processing logic. It is only responsible for queue creation and configuration.", + "examples": [ + "Create a persistent queue named 'testJobQueue' with unlimited size", + "Create a queue named 'limitedQueue' with maxSize 100 and a dead letter queue 'deadLetterQ'", + "Create a non-persistent queue named 'tempQueue' with a visibility timeout of 60 seconds" + ] + }, + "tags": [ + "testing", + "automation", + "queue", + "infrastructure", + "message-queue", + "async-testing" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"testJobQueue\",\"maxSize\":0,\"isPersistent\":true}", + "description": "Create a persistent queue named 'testJobQueue' with unlimited size." + }, + { + "inputJson": "{\"queueName\":\"limitedQueue\",\"maxSize\":100,\"isPersistent\":true,\"deadLetterQueueName\":\"deadLetterQ\"}", + "description": "Create a queue 'limitedQueue' with max size 100 and a linked dead letter queue." + }, + { + "inputJson": "{\"queueName\":\"tempQueue\",\"isPersistent\":false,\"visibilityTimeout\":60}", + "description": "Create a non-persistent queue 'tempQueue' with a visibility timeout of 60 seconds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "testing-automation.createReply", + "description": "Generates a reply message based on an incoming testing-related communication, such as bug reports or test results. Accepts input like the original message, reply intent, tone, and optional context, then produces a formatted reply string suitable for automated test communication workflows.", + "category": "testing-automation", + "parameters": [ + { + "name": "originalMessage", + "type": "string", + "description": "The text of the original incoming message that requires a reply (e.g., bug report, test result).", + "required": true, + "defaultValue": "" + }, + { + "name": "replyIntent", + "type": "string", + "description": "The purpose of the reply, such as acknowledging, requesting more info, or reporting status.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the reply, e.g., formal, friendly, concise.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "additionalContext", + "type": "object", + "description": "Optional contextual data to customize the reply, such as test ID, developer name, or severity.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted reply message string under 'replyMessage' key." + }, + "aiAgent": { + "useCase": "Use this tool when the agent needs to automate responses to testing-related communications, such as auto-responding to bug reports, test failures, or test status inquiries, ensuring consistent, context-aware replies.", + "limitations": "Cannot interpret attachments or non-text content; quality depends on input clarity; replies are generated based on provided context and may require human review for complex cases.", + "examples": [ + "Generate a polite acknowledgment reply to a bug report.", + "Create a concise status update reply for a failed test case.", + "Request additional details from a tester about a flaky test." + ] + }, + "tags": [ + "testing", + "automation", + "reply", + "communication", + "bug report", + "test result" + ], + "examples": [ + { + "inputJson": "{\"originalMessage\":\"Test suite 42 failed on the login flow. Error: Timeout.\",\"replyIntent\":\"acknowledge\",\"tone\":\"formal\",\"additionalContext\":{\"testId\":\"42\",\"severity\":\"high\"}}", + "description": "Generate a formal acknowledgment reply to a critical test failure report." + }, + { + "inputJson": "{\"originalMessage\":\"Can you provide the latest results for test case 108?\",\"replyIntent\":\"statusUpdate\",\"tone\":\"concise\",\"additionalContext\":{\"testId\":\"108\"}}", + "description": "Create a concise status update reply for a test inquiry." + }, + { + "inputJson": "{\"originalMessage\":\"I'm seeing intermittent failures on the payment module tests.\",\"replyIntent\":\"requestMoreInfo\",\"tone\":\"friendly\"}", + "description": "Request more information about flaky tests with a friendly tone." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "testing-automation.createThread", + "description": "Creates a communication thread object for use in automated testing scenarios simulating multi-threaded interactions. Accepts parameters defining the thread's unique identifier, participants, and optional metadata. Returns an object representing the thread with its properties initialized to facilitate testing of messaging or thread-based communication features.", + "category": "testing-automation", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "A unique identifier for the thread to be created, used to distinguish it in tests.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "An array of user IDs or names that are participants of the thread.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs providing additional information about the thread, such as creation timestamp or thread type.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag indicating whether the thread is active or archived (defaults to true).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created communication thread, including its ID, participants, metadata, and active status, suitable for use in test scripts." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to simulate or create a communication thread context within automated testing frameworks to validate thread-based interactions, such as messaging apps or collaboration platforms. It helps set up initial conditions for multi-user scenarios.", + "limitations": "This tool does not manage real-time message passing or thread persistence beyond object creation. It only models the thread structure for testing purposes.", + "examples": [ + "Create a thread with ID 'thread123' including users 'alice' and 'bob'.", + "Create an archived thread with metadata indicating creation date.", + "Create a thread with no additional metadata and default active status." + ] + }, + "tags": [ + "testing", + "automation", + "thread", + "communication", + "simulation", + "multi-user" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"thread123\",\"participants\":[\"alice\",\"bob\"],\"metadata\":{\"createdBy\":\"tester\"},\"isActive\":true}", + "description": "Creating an active thread with two participants and metadata." + }, + { + "inputJson": "{\"threadId\":\"testThread1\",\"participants\":[\"user1\"],\"metadata\":{},\"isActive\":false}", + "description": "Creating an archived thread with a single participant and empty metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "testing-automation.createAttachment", + "description": "Creates an attachment file in a specified format from provided test execution data or logs. Accepts input data as text or JSON, converts and packages it into a file (e.g., PNG, PDF, TXT), and returns a downloadable attachment object for use in automated test reports or bug tracking systems.", + "category": "testing-automation", + "parameters": [ + { + "name": "attachmentName", + "type": "string", + "description": "The name of the attachment file to be created, including extension (e.g., report.pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "MIME type of the attachment content (e.g., image/png, application/pdf, text/plain).", + "required": true, + "defaultValue": "" + }, + { + "name": "contentData", + "type": "string", + "description": "The base64 encoded or raw string content used to create the attachment.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceFormat", + "type": "string", + "description": "Indicates the format of input contentData (e.g., rawText, base64, JSON).", + "required": false, + "defaultValue": "rawText" + }, + { + "name": "description", + "type": "string", + "description": "Optional brief description text for the attachment content.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created attachment, including metadata and accessible download link or data URL." + }, + "aiAgent": { + "useCase": "Use this tool to generate standardized attachment files containing logs, screenshots, reports, or test artifacts in automated testing workflows. Ideal for packaging test evidence or data outputs into commonly accepted file formats that can be attached to test results or bug reports.", + "limitations": "This tool does not perform image or PDF rendering beyond packaging provided content. It cannot generate screenshots or capture live data; input content must be provided externally. It also does not upload attachments to external services, only creates the file object.", + "examples": [ + "Create a PDF attachment containing a test failure report to include in the automated test summary.", + "Generate a PNG image attachment from a base64 encoded screenshot for bug tracking.", + "Produce a plain text log file attachment from raw log data during test automation." + ] + }, + "tags": [ + "testing", + "automation", + "attachment", + "file-creation", + "reporting", + "logs" + ], + "examples": [ + { + "inputJson": "{\"attachmentName\":\"testReport.pdf\",\"contentType\":\"application/pdf\",\"contentData\":\"JVBERi0xLjQKJcfs...\",\"sourceFormat\":\"base64\",\"description\":\"Automated test failure report.\"}", + "description": "Create a PDF attachment from base64 encoded PDF content representing a test report." + }, + { + "inputJson": "{\"attachmentName\":\"screenshot.png\",\"contentType\":\"image/png\",\"contentData\":\"iVBORw0KGgoAAAANS...\",\"sourceFormat\":\"base64\",\"description\":\"Screenshot captured during UI test.\"}", + "description": "Create a PNG image attachment from base64 encoded screenshot data." + }, + { + "inputJson": "{\"attachmentName\":\"errorLog.txt\",\"contentType\":\"text/plain\",\"contentData\":\"Error: NullReferenceException at line 42\",\"sourceFormat\":\"rawText\",\"description\":\"Error log from test execution.\"}", + "description": "Create a plain text attachment file from raw error log text input." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "testing-automation.createPipeline", + "description": "Creates a customizable automated testing pipeline configuration by accepting an array of testing stages, environment settings, and trigger options. Processes inputs to build a structured pipeline definition output that can be used to execute automated tests sequentially or in parallel.", + "category": "testing-automation", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The name identifier for the testing pipeline to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "stages", + "type": "array", + "description": "An ordered list of testing stages where each stage defines its type (e.g., unit, integration), commands to run, and optional timeout in seconds.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "object", + "description": "Key-value pairs specifying environment variables or settings to apply during pipeline execution.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "trigger", + "type": "string", + "description": "Defines when the pipeline should be triggered (e.g., 'push', 'pull_request', 'manual').", + "required": false, + "defaultValue": "manual" + }, + { + "name": "parallelExecution", + "type": "boolean", + "description": "Flag indicating if pipeline stages should run in parallel where possible.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the full pipeline configuration including name, stages with commands and timeouts, environment settings, trigger conditions, and execution mode." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate structured automated testing workflows for software projects. It assists in building test pipelines that incorporate different test types, environment variables, and triggers to automate quality assurance processes effectively.", + "limitations": "Does not execute the pipeline or validate external systems; it only generates configuration definitions. It cannot infer optimal stage commands and relies on user-provided commands and stage types.", + "examples": [ + "Create a pipeline named 'CI-Test' with unit and integration test stages triggered on code pushes.", + "Generate a testing pipeline that runs environment setup variables and executes tests in parallel.", + "Build a manual-triggered test pipeline with custom timeout for each stage." + ] + }, + "tags": [ + "testing", + "automation", + "pipeline", + "CI/CD", + "software development", + "workflow", + "test configuration" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"CI-Test\",\"stages\":[{\"type\":\"unit\",\"commands\":[\"npm install\",\"npm test\"],\"timeout\":300},{\"type\":\"integration\",\"commands\":[\"./runIntegrationTests.sh\"],\"timeout\":600}],\"environment\":{\"NODE_ENV\":\"test\"},\"trigger\":\"push\",\"parallelExecution\":false}", + "description": "Defines a CI pipeline named 'CI-Test' with unit and integration stages, running sequentially on code push events." + }, + { + "inputJson": "{\"pipelineName\":\"Parallel-Test\",\"stages\":[{\"type\":\"unit\",\"commands\":[\"pytest tests/unit\"],\"timeout\":120},{\"type\":\"integration\",\"commands\":[\"pytest tests/integration\"],\"timeout\":300}],\"environment\":{\"DB_HOST\":\"localhost\"},\"trigger\":\"manual\",\"parallelExecution\":true}", + "description": "Creates a manually triggered pipeline named 'Parallel-Test' that runs unit and integration tests in parallel." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "testing-automation.createResume", + "description": "Generates a structured professional resume document based on provided user details including personal information, work experience, education, skills, and optional sections. Processes input data to format a clean, organized resume either as JSON or PDF output, suitable for automated testing of resume handling workflows.", + "category": "testing-automation", + "parameters": [ + { + "name": "fullName", + "type": "string", + "description": "The full name of the individual for the resume header.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact details including phone, email, and address.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "A brief professional summary or objective statement.", + "required": false, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "An array of work experience entries, each with company, title, startDate, endDate, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "An array of education entries with institution, degree, fieldOfStudy, startDate, endDate.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "List of professional skills to include on the resume.", + "required": false, + "defaultValue": "" + }, + { + "name": "certifications", + "type": "array", + "description": "Optional array of certification objects with name and date.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' for structured data, 'pdf' for formatted document.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated resume content in the specified format (JSON object or base64 encoded PDF string). Includes metadata about the resume format and validity." + }, + "aiAgent": { + "useCase": "Use this tool when automated generation of professional resumes is required for software testing scenarios such as HR systems, job portals, or document processors. It allows feeding structured data and receiving formatted resume outputs to validate import, display, or processing logic.", + "limitations": "This tool does not provide personalized design or advanced formatting features beyond basic resume sections. It does not validate the factual accuracy of input data or enrich content with external information.", + "examples": [ + "Create a resume JSON document for a software engineer with two years of experience and skills in JavaScript and Python.", + "Generate a PDF resume including education, certifications, and work history for automated end-to-end testing of a recruitment platform.", + "Produce a simple JSON resume with contact info, summary, and skill list to test resume parsing functionality." + ] + }, + "tags": [ + "testing-automation", + "resume", + "document-generation", + "software-testing", + "HR-tech", + "automation" + ], + "examples": [ + { + "inputJson": "{\"fullName\":\"John Doe\",\"contactInfo\":{\"email\":\"john.doe@example.com\",\"phone\":\"555-1234\",\"address\":\"123 Main St, Anytown\"},\"summary\":\"Experienced software engineer specializing in web development.\",\"workExperience\":[{\"company\":\"Tech Corp\",\"title\":\"Frontend Developer\",\"startDate\":\"2019-06\",\"endDate\":\"2021-08\",\"description\":\"Developed user interfaces with React.\"}],\"education\":[{\"institution\":\"State University\",\"degree\":\"B.Sc. Computer Science\",\"fieldOfStudy\":\"Computer Science\",\"startDate\":\"2015-09\",\"endDate\":\"2019-06\"}],\"skills\":[\"JavaScript\",\"React\",\"CSS\"],\"certifications\":[],\"outputFormat\":\"json\"}", + "description": "Create a JSON formatted resume for a frontend developer with education and skills." + }, + { + "inputJson": "{\"fullName\":\"Jane Smith\",\"contactInfo\":{\"email\":\"jane.smith@example.com\",\"phone\":\"555-5678\",\"address\":\"456 Elm St, Othertown\"},\"summary\":\"Project manager with PMP certification and over 10 years of experience.\",\"workExperience\":[{\"company\":\"BuildIt Inc.\",\"title\":\"Project Manager\",\"startDate\":\"2012-05\",\"endDate\":\"2022-01\",\"description\":\"Managed multiple construction projects.\"}],\"education\":[{\"institution\":\"University of Business\",\"degree\":\"MBA\",\"fieldOfStudy\":\"Business Administration\",\"startDate\":\"2008-09\",\"endDate\":\"2010-06\"}],\"skills\":[\"Project Management\",\"Agile\",\"Scrum\"],\"certifications\":[{\"name\":\"PMP\",\"date\":\"2011-04\"}],\"outputFormat\":\"pdf\"}", + "description": "Generate a PDF resume for a project manager including certifications." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "devops.analyzeChannel", + "description": "Analyzes communication channels such as Slack, Microsoft Teams, or email threads within a DevOps environment to evaluate message activity, response times, sentiment trends, topic clusters, and collaboration patterns. Accepts channel identifiers and time ranges, processes message logs and metadata, and outputs structured analytics reports with key insights.", + "category": "devops", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Identifier of the communication channel to analyze (e.g., Slack channel ID or Teams channel GUID)", + "required": true, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "Platform type of the communication channel (e.g., 'slack', 'teams', 'email')", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start timestamp for the analysis period", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end timestamp for the analysis period", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on messages; defaults to false", + "required": false, + "defaultValue": "false" + }, + { + "name": "topicModeling", + "type": "boolean", + "description": "Whether to detect and cluster conversation topics within the channel; defaults to true", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output report format, e.g., 'json' or 'summaryText'; defaults to 'json'", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing analytics of the specified communication channel including message counts, average response times, sentiment over time (if enabled), topic clusters (if enabled), and collaboration metrics like most active users and peak discussion periods." + }, + "aiAgent": { + "useCase": "Use this tool when assessing the health and dynamics of a DevOps communication channel to understand team collaboration efficiency, detect communication bottlenecks, and gain insights from message trends and sentiment. Especially helpful before retrospectives, team evaluations, or incident reviews.", + "limitations": "Cannot access private or encrypted messages without appropriate permissions. Sentiment analysis and topic modeling depend on the quality and language of messages and may not be accurate for code snippets or technical jargon.", + "examples": [ + "Analyze Slack channel C123456 from 2024-01-01 to 2024-01-31 with sentiment analysis enabled.", + "Analyze Microsoft Teams channel 'TeamChat01' for the past week focusing on topic clusters.", + "Generate a summary report of email thread 'project-launch' without sentiment analysis." + ] + }, + "tags": [ + "analysis", + "communication", + "devops", + "collaboration", + "sentiment", + "topic-modeling" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"C123456\",\"platform\":\"slack\",\"startTime\":\"2024-01-01T00:00:00Z\",\"endTime\":\"2024-01-31T23:59:59Z\",\"includeSentiment\":true,\"topicModeling\":true}", + "description": "Analyze a Slack channel for January 2024 including sentiment and topic analysis." + }, + { + "inputJson": "{\"channelId\":\"TeamChat01\",\"platform\":\"teams\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-07T23:59:59Z\",\"includeSentiment\":false,\"topicModeling\":true}", + "description": "Analyze a Microsoft Teams channel for the first week of April 2024 focusing on conversation topics without sentiment." + }, + { + "inputJson": "{\"channelId\":\"project-launch\",\"platform\":\"email\",\"includeSentiment\":false,\"topicModeling\":false,\"outputFormat\":\"summaryText\"}", + "description": "Summarize the email thread named 'project-launch' without advanced analysis, outputting a text summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "testing-automation.createXML", + "description": "Generates a well-formed XML string based on a structured JSON input representing XML elements and attributes. Accepts a JSON object describing nested tags, attributes, and content, and produces a serialized XML document string for use in automated testing scenarios.", + "category": "testing-automation", + "parameters": [ + { + "name": "xmlStructure", + "type": "object", + "description": "A JSON object defining the XML elements hierarchy, with tags, attributes, and nested children, representing the XML to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Whether the output XML string should be formatted with indentation and newlines for readability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentation", + "type": "string", + "description": "The string to use for indentation if prettyPrint is true, e.g., '\\t' or spaces.", + "required": false, + "defaultValue": " " + }, + { + "name": "encoding", + "type": "string", + "description": "The XML encoding to declare in the XML prolog, e.g., 'UTF-8'.", + "required": false, + "defaultValue": "UTF-8" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated XML string under the key 'xmlString'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce valid XML test data dynamically from structured input for automated testing workflows, such as creating configuration files, test payloads, or mock responses. It helps convert JSON-based templates into XML format to integrate with systems requiring XML input.", + "limitations": "This tool does not validate XML schemas or DTDs nor does it support XML namespaces beyond simple attribute declarations. It outputs well-formed XML but does not guarantee schema correctness.", + "examples": [ + "Create an XML document with nested elements and attributes as a test input for an API expecting XML payload.", + "Generate XML config files from a JSON template dynamically for integration testing scenarios.", + "Produce readable pretty printed XML to visually verify the structure before running automated tests." + ] + }, + "tags": [ + "testing", + "automation", + "XML", + "generate", + "serialization", + "test-data" + ], + "examples": [ + { + "inputJson": "{\"xmlStructure\":{\"tag\":\"book\",\"attributes\":{\"id\":\"bk101\"},\"children\":[{\"tag\":\"author\",\"text\":\"Gambardella, Matthew\"},{\"tag\":\"title\",\"text\":\"XML Developer's Guide\"},{\"tag\":\"genre\",\"text\":\"Computer\"},{\"tag\":\"price\",\"text\":\"44.95\"},{\"tag\":\"publish_date\",\"text\":\"2000-10-01\"},{\"tag\":\"description\",\"text\":\"An in-depth look at creating applications with XML.\"}]} ,\"prettyPrint\":true,\"indentation\":\" \",\"encoding\":\"UTF-8\"}", + "description": "Create a pretty-printed XML document representing a book with attributes and child elements." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "testing-automation.createSpec", + "description": "Generates a detailed automated test specification document based on provided requirements and testing criteria. Accepts inputs like feature descriptions, acceptance criteria, and test goals, then produces a structured test spec in JSON or Markdown format suitable for guiding test development and review.", + "category": "testing-automation", + "parameters": [ + { + "name": "featureName", + "type": "string", + "description": "Name of the software feature or component to be tested.", + "required": true, + "defaultValue": "" + }, + { + "name": "featureDescription", + "type": "string", + "description": "A detailed description of the feature's functionality and purpose.", + "required": true, + "defaultValue": "" + }, + { + "name": "acceptanceCriteria", + "type": "array", + "description": "List of acceptance criteria defining what conditions must be met for the feature to be considered successful.", + "required": true, + "defaultValue": "" + }, + { + "name": "testTypes", + "type": "array", + "description": "An array of test types to include in the spec such as 'unit', 'integration', 'e2e', 'performance'.", + "required": false, + "defaultValue": "[\"unit\",\"integration\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format for the generated spec document, e.g., 'JSON' or 'Markdown'.", + "required": false, + "defaultValue": "Markdown" + }, + { + "name": "includeSetupTeardown", + "type": "boolean", + "description": "Flag indicating whether to include test setup and teardown steps sections.", + "required": false, + "defaultValue": "true" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the tests to emphasize: 'high', 'medium', 'low'.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "A structured test specification document containing sections for feature overview, acceptance criteria, detailed test cases per specified test types, and optional setup/teardown instructions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a comprehensive test specification document from informal or semi-structured feature requirements to bootstrap automated testing processes, ensuring consistency and traceability in testing.", + "limitations": "This tool does not generate actual executable test code or scripts, nor does it perform any test execution or validation itself; it solely produces structured test specification documents.", + "examples": [ + "Create a test spec for the user login feature including unit and integration tests in markdown format.", + "Generate a JSON test spec document for a shopping cart feature with acceptance criteria and high priority tests.", + "Produce a test spec for API endpoints with setup and teardown instructions, focusing on end-to-end testing." + ] + }, + "tags": [ + "testing", + "automation", + "test-specification", + "software-testing", + "documentation", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"featureName\":\"User Login\",\"featureDescription\":\"Allows users to login using email and password.\",\"acceptanceCriteria\":[\"User can login with valid credentials\",\"Invalid credentials show error message\"],\"testTypes\":[\"unit\",\"integration\"],\"outputFormat\":\"Markdown\",\"includeSetupTeardown\":true,\"priority\":\"high\"}", + "description": "Generate a Markdown spec document for user login feature with unit and integration tests." + }, + { + "inputJson": "{\"featureName\":\"Shopping Cart\",\"featureDescription\":\"Users can add, remove, and update items in their shopping cart.\",\"acceptanceCriteria\":[\"Items can be added successfully\",\"Removing items updates total\",\"Updating quantity recalculates price\"],\"testTypes\":[\"unit\",\"e2e\"],\"outputFormat\":\"JSON\",\"includeSetupTeardown\":false,\"priority\":\"medium\"}", + "description": "Create a JSON formatted test spec for shopping cart with unit and end-to-end tests, no setup/teardown sections." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "devops.analyzeQuote", + "description": "Analyzes textual quotes related to DevOps practices, extracting key themes such as deployment frequency, automation level, infrastructure scalability, and CI/CD maturity. Accepts a raw quote string and optional context tags, processes natural language to identify and score relevant DevOps concepts, and outputs a structured analysis summarizing insights and sentiment.", + "category": "devops", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The raw text of the quote to analyze for DevOps content and themes.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextTags", + "type": "array", + "description": "Optional list of contextual tags or keywords to guide the analysis towards specific DevOps domains.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis of the quote in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the quote for accurate natural language processing.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A structured summary containing identified DevOps themes with confidence scores, optional sentiment polarity, and a concise narrative interpretation of the quote's implications for DevOps practices." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent encounters raw quotes or statements related to DevOps principles and needs to extract actionable insights or categorize the content by DevOps themes (e.g., CI/CD, automation, scalability). It's useful for summarizing expert opinions, extracting common challenges, or tracking sentiment trends in DevOps discussions.", + "limitations": "The tool relies on natural language processing and may not accurately interpret highly technical jargon or ambiguous statements. It does not execute or validate the feasibility of the practices described, only analyzes textual content.", + "examples": [ + "Analyze this DevOps quote to understand main themes: 'Automating deployments has drastically reduced our lead time and improved reliability.'", + "Extract key DevOps topics from this statement and provide sentiment: 'Our infrastructure still faces scaling challenges despite implementing containers.'", + "Determine the maturity cues and sentiment in this quote: 'Continuous integration pipelines are fully set up, but delivery still requires manual intervention.'" + ] + }, + "tags": [ + "devops", + "analysis", + "quote", + "ci/cd", + "automation", + "infrastructure", + "sentiment", + "text" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"Automating deployments has drastically reduced our lead time and improved reliability.\",\"includeSentiment\":true}", + "description": "Analyze a quote expressing benefits of deployment automation including sentiment." + }, + { + "inputJson": "{\"quoteText\":\"Our infrastructure still faces scaling challenges despite implementing containers.\",\"includeSentiment\":true}", + "description": "Analyze a quote discussing infrastructure scaling challenges and container use with sentiment." + }, + { + "inputJson": "{\"quoteText\":\"Continuous integration pipelines are fully set up, but delivery still requires manual intervention.\",\"contextTags\":[\"ci/cd\",\"deployment\"],\"includeSentiment\":false}", + "description": "Analyze a quote on CI/CD maturity focusing on deployment automation without sentiment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "testing-automation.createSchema", + "description": "Generates a JSON schema for validating test input data structures based on provided field definitions. Accepts a list of fields with types, required flags, and constraints, then constructs a corresponding JSON schema object. Outputs the JSON schema as a string for use in automated test validation.", + "category": "testing-automation", + "parameters": [ + { + "name": "fields", + "type": "array", + "description": "Array of field definitions; each includes field name, type, required flag, and optional constraints such as min/max values or regex patterns.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the schema.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description of the schema's purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalProperties", + "type": "boolean", + "description": "Flag indicating if properties not listed in fields are allowed in the validated data.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JSON schema as a string under 'jsonSchema' key." + }, + "aiAgent": { + "useCase": "Use this tool when automating tests that require validating input data structures against a defined format. Given field specifications, it produces a JSON schema for validation frameworks to ensure test inputs conform to expected types and constraints. Ideal for generating schemas dynamically from test definitions.", + "limitations": "Cannot generate schemas for highly complex or recursive data structures. Does not support all JSON schema keywords or validation features (e.g., conditional schemas).", + "examples": [ + "Generate a schema for user registration form data validation.", + "Create validation schema from test input specifications with constraints like min length and regex pattern." + ] + }, + "tags": [ + "testing", + "automation", + "validation", + "json-schema", + "schema-generation", + "test-data" + ], + "examples": [ + { + "inputJson": "{\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"required\":true,\"constraints\":{\"minLength\":3,\"maxLength\":20}},{\"name\":\"age\",\"type\":\"integer\",\"required\":false,\"constraints\":{\"minimum\":0}},{\"name\":\"email\",\"type\":\"string\",\"required\":true,\"constraints\":{\"format\":\"email\"}}],\"title\":\"User Registration\",\"description\":\"Schema to validate user registration form inputs.\",\"additionalProperties\":false}", + "description": "Create a JSON schema to validate user registration fields with constraints on username length, optional age, and required email." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "devops.analyzeVulnerability", + "description": "Analyzes a given list of software vulnerabilities by categorizing them based on severity, affected components, and exploitability. Accepts input as vulnerability data (e.g., CVE details) and optionally package information, then outputs a comprehensive report with prioritized risks and mitigation suggestions.", + "category": "devops", + "parameters": [ + { + "name": "vulnerabilityData", + "type": "array", + "description": "An array of vulnerability objects to analyze, each including identifiers, descriptions, severity scores, and affected components.", + "required": true, + "defaultValue": "" + }, + { + "name": "packageInfo", + "type": "object", + "description": "Optional metadata about the software package or system where vulnerabilities were detected, including version and dependencies.", + "required": false, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level (e.g., 'low', 'medium', 'high', 'critical') to include in the output report.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeExploitability", + "type": "boolean", + "description": "Flag indicating whether to analyze and include exploitability information in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report, e.g., 'json' or 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A structured report object containing categorized vulnerabilities, risk prioritization, exploitability assessments, and recommended mitigation actions." + }, + "aiAgent": { + "useCase": "Use this tool when detailed, prioritized analysis of software or system vulnerabilities is needed to inform remediation and risk management decisions, especially during security assessments or before deployment. It helps synthesize raw vulnerability lists into actionable insights.", + "limitations": "Cannot patch or fix vulnerabilities directly; relies on input data quality and completeness; exploitability assessment depends on available metadata and may not detect zero-day or undisclosed issues.", + "examples": [ + "Analyze a list of CVEs found in a container image to prioritize patching efforts.", + "Generate a vulnerability risk report for dependencies of a given software project.", + "Filter vulnerabilities to only those with high or critical severity for urgent review." + ] + }, + "tags": [ + "devops", + "security", + "vulnerability analysis", + "risk prioritization", + "continuous integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityData\":[{\"id\":\"CVE-2023-12345\",\"description\":\"Buffer overflow in XYZ\",\"severity\":\"high\",\"affectedComponent\":\"libxyz\",\"exploitability\":\"high\"},{\"id\":\"CVE-2022-54321\",\"description\":\"SQL injection in ABC\",\"severity\":\"medium\",\"affectedComponent\":\"abc-module\",\"exploitability\":\"medium\"}],\"packageInfo\":{\"name\":\"myapp\",\"version\":\"1.2.3\"},\"severityThreshold\":\"medium\",\"includeExploitability\":true,\"outputFormat\":\"json\"}", + "description": "Analyze two vulnerabilities found in myapp version 1.2.3 and generate a JSON report including medium and higher severity issues with exploitability information." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "devops.analyzeExpense", + "description": "Analyzes expense data related to DevOps infrastructure and processes by accepting expense transaction records, categorizing costs (e.g., cloud services, tooling, labor), detecting anomalies, and summarizing total and category-wise expenditures. Outputs an expense report with key insights and potential cost-saving suggestions.", + "category": "devops", + "parameters": [ + { + "name": "expenseData", + "type": "array", + "description": "An array of expense records, each including fields like date, category, amount, and description, representing DevOps-related costs.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) to filter expenses for analysis; only expenses on or after this date are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) to filter expenses for analysis; only expenses on or before this date are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "categoryFilters", + "type": "array", + "description": "Optional list of categories to specifically include in analysis, e.g., ['cloud', 'licensing']; if empty, all categories are analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "If true, the tool will attempt to detect anomalous or unusual expenses that deviate significantly from historical norms.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall cost summary, breakdown by category, detected anomalies, and recommendations for optimizing DevOps expenditures." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze detailed DevOps-related expenses to understand cost distribution, identify unusual or unexpected charges, and to assist in budget planning or cost optimization efforts. Valuable for teams managing cloud infrastructure and tooling expenses wanting automated insights from raw expense data.", + "limitations": "This tool analyzes structured expense data only and cannot access or infer missing transaction details. It does not execute cost actions or directly modify budgets.", + "examples": [ + "Analyze monthly cloud and licensing expenses to find anomalies and summarize costs.", + "Filter expenses from Q1 2024 for tooling category and get optimization suggestions.", + "Provide a category-wise summary of all expenses between two dates with anomaly detection enabled." + ] + }, + "tags": [ + "devops", + "expense", + "cost-analysis", + "anomaly-detection", + "reporting", + "infrastructure", + "budgeting" + ], + "examples": [ + { + "inputJson": "{\"expenseData\":[{\"date\":\"2024-03-01\",\"category\":\"cloud\",\"amount\":1200,\"description\":\"AWS EC2 instances\"},{\"date\":\"2024-03-02\",\"category\":\"licensing\",\"amount\":300,\"description\":\"CI tool license\"},{\"date\":\"2024-03-05\",\"category\":\"labor\",\"amount\":1500,\"description\":\"DevOps consultant hours\"}],\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"categoryFilters\":[\"cloud\",\"licensing\"],\"detectAnomalies\":true}", + "description": "Analyze March 2024 cloud and licensing expenses with anomaly detection." + }, + { + "inputJson": "{\"expenseData\":[{\"date\":\"2024-01-10\",\"category\":\"cloud\",\"amount\":1000,\"description\":\"Azure VM fees\"},{\"date\":\"2024-01-15\",\"category\":\"labor\",\"amount\":2000,\"description\":\"Support hours\"}],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"categoryFilters\":[],\"detectAnomalies\":false}", + "description": "Summarize all January 2024 expenses without anomaly detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "devops.uploadVideo", + "description": "Uploads a video file to a specified cloud storage or video hosting service, optionally applying metadata tags, setting access permissions, and returning the video URL and upload status. Accepts file path or binary content as input and outputs upload confirmation and video accessibility info.", + "category": "devops", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local file path to the video to upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoFileContent", + "type": "string", + "description": "Base64-encoded content of the video if not using file path.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationService", + "type": "string", + "description": "Target service for upload (e.g., 'AWS S3', 'Azure Blob', 'YouTube').", + "required": true, + "defaultValue": "" + }, + { + "name": "storageBucket", + "type": "string", + "description": "The storage bucket or container name in the destination service.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessPermissions", + "type": "object", + "description": "Access permission settings such as 'public', 'private', or custom ACLs.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadataTags", + "type": "object", + "description": "Key-value pairs for video metadata tags (e.g., title, description, keywords).", + "required": false, + "defaultValue": "" + }, + { + "name": "callbackUrl", + "type": "string", + "description": "Optional URL to notify after upload is complete.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object including the upload status, video URL, and metadata confirmation." + }, + "aiAgent": { + "useCase": "Use this tool when automating the deployment or publication of video content as part of DevOps workflows, such as uploading build artifacts that include videos to cloud storage or streaming platforms. It is suited for scenarios requiring reliable video file upload with metadata and access control settings.", + "limitations": "Does not transcode or process video content; assumes the video file is preformatted. Upload speed and success depend on network and service availability. Does not handle video playback or CDN distribution setup.", + "examples": [ + "Upload a tutorial video to AWS S3 with public read access.", + "Upload a marketing video directly from base64 content to YouTube with metadata.", + "Notify a webhook once a training video upload to Azure Blob Storage is complete." + ] + }, + "tags": [ + "upload", + "video", + "devops", + "cloud-storage", + "media-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/home/user/videos/demo.mp4\",\"destinationService\":\"AWS S3\",\"storageBucket\":\"my-videos\",\"accessPermissions\":{\"public\":true},\"metadataTags\":{\"title\":\"Demo Video\",\"description\":\"Demo upload for testing.\"}}", + "description": "Upload a local video file to AWS S3 with public access and metadata tags." + }, + { + "inputJson": "{\"videoFileContent\":\"VGhpcyBpcyBhIGZha2UgYmFzZTY0IGVuY29kZWQgY29udGVudA==\",\"destinationService\":\"YouTube\",\"metadataTags\":{\"title\":\"Sample Video\",\"description\":\"Uploaded via API.\"}}", + "description": "Upload a base64-encoded video directly to YouTube with metadata." + }, + { + "inputJson": "{\"videoFilePath\":\"/videos/training.mp4\",\"destinationService\":\"Azure Blob\",\"storageBucket\":\"training-videos\",\"callbackUrl\":\"https://example.com/upload/callback\"}", + "description": "Upload a training video to Azure Blob Storage and notify a callback URL when upload completes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "devops.downloadVideo", + "description": "Downloads a video file from a specified URL and saves it to a given output directory. Accepts a remote video URL, optionally an output filename, and supports setting a download timeout. Returns the local file path of the downloaded video or an error message if the download fails.", + "category": "devops", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to download. Must be a valid HTTP or HTTPS link.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputDirectory", + "type": "string", + "description": "The local directory path where the video will be saved. Defaults to the current working directory.", + "required": false, + "defaultValue": "." + }, + { + "name": "outputFilename", + "type": "string", + "description": "Optional custom filename for the saved video file. If omitted, the filename will be inferred from the URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download to complete before aborting. Default is 60 seconds.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the path to the saved video file if successful, or an error message if the download failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate downloading video assets from the internet, especially during deployment scripts, build pipelines, or environment setup where video files are prerequisites. It reliably fetches and stores videos locally with control over file names and download timeouts.", + "limitations": "Cannot download videos behind authentication or DRM-protected sources. Does not perform video format validation or conversion. Downloads can fail due to network issues or invalid URLs, which must be handled by the caller.", + "examples": [ + "Download a video from a public URL and save it with a specific filename.", + "Download a video using default filename to a custom directory.", + "Download a video but fail if it takes longer than a specified timeout." + ] + }, + "tags": [ + "devops", + "download", + "video", + "automation", + "deployment", + "media" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/sample.mp4\",\"outputDirectory\":\"/tmp/videos\",\"outputFilename\":\"intro.mp4\",\"timeoutSeconds\":120}", + "description": "Download the video from the provided URL, save it as 'intro.mp4' in '/tmp/videos' with a 2-minute timeout." + }, + { + "inputJson": "{\"videoUrl\":\"https://cdn.example.com/assets/tutorial.mov\",\"outputDirectory\":\"./downloads\",\"timeoutSeconds\":30}", + "description": "Download the video from the URL to './downloads' directory using the filename extracted from the URL, with a 30-second timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "devops.analyzeYAML", + "description": "Analyzes YAML content for syntax validity, schema compliance, and best practice adherence to help identify configuration errors or inconsistencies. Accepts raw YAML text or file path as input, processes parsing and optional schema validation, and outputs detailed analysis results including errors, warnings, and suggestions.", + "category": "devops", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The raw YAML content as a string to be analyzed for syntax and structure issues.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Path to a YAML file to load and analyze. If provided, yamlContent is ignored.", + "required": false, + "defaultValue": "" + }, + { + "name": "schema", + "type": "string", + "description": "Optional JSON Schema or file path to a JSON Schema to validate the YAML content against.", + "required": false, + "defaultValue": "" + }, + { + "name": "checkBestPractices", + "type": "boolean", + "description": "Enable analysis of best practice rules such as duplicate keys, deprecated fields, and style conventions.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxWarnings", + "type": "number", + "description": "Maximum number of warnings to return in the analysis output.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results: isValid indicates syntax validity, errors lists parsing and schema validation errors, warnings contains best practice or style warnings, and suggestions offers remediation advice." + }, + "aiAgent": { + "useCase": "Use this tool when you need to validate and analyze YAML configuration files commonly used in DevOps pipelines, deployment manifests, or infrastructure-as-code templates. It helps detect syntax mistakes, verify schema compliance, and enforce best practices, reducing deployment failures caused by YAML errors.", + "limitations": "Does not execute or apply configurations. Schema validation requires a compatible JSON Schema. Best practice checks are generic and may not cover all domain-specific rules.", + "examples": [ + "Analyze raw YAML content to find syntax errors and style warnings.", + "Validate a deployment manifest file against a provided JSON Schema for compliance.", + "Check a CI/CD pipeline YAML for deprecated keys and suggest modern alternatives." + ] + }, + "tags": [ + "devops", + "yaml", + "validation", + "configuration", + "schema", + "analysis", + "best-practices" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"apiVersion: v1\\nkind: Pod\\nmetadata:\\n name: mypod\\nspec:\\n containers:\\n - name: nginx\\n image: nginx:latest\"}", + "description": "Analyze a simple Kubernetes Pod manifest for syntax and structural issues." + }, + { + "inputJson": "{\"filePath\":\"./deployment.yaml\",\"schema\":\"./k8s-schema.json\",\"checkBestPractices\":true}", + "description": "Analyze a deployment YAML file against the Kubernetes schema and check for best practices warnings." + }, + { + "inputJson": "{\"yamlContent\":\"- key: value\\n- key: value2\\n- key\\n\", \"maxWarnings\":10}", + "description": "Analyze malformed YAML list to identify syntax errors and limit warnings to 10." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "devops.uploadTable", + "description": "Uploads tabular data to a specified remote deployment or CI/CD environment, supporting various data formats (CSV, JSON, Excel). Accepts table data as input, processes it to validate and transform according to target requirements, and uploads it to cloud storage, database, or configuration management systems. Returns status and metadata about the upload result.", + "category": "devops", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "The table data to upload, provided as a string in supported format (e.g., CSV, JSON).", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The format of the input table data, such as 'csv', 'json', or 'excel'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "destination", + "type": "string", + "description": "The target location or service to upload the table to (e.g., cloud storage path, database name).", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or credentials to authorize upload to the target environment.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Flag indicating whether to overwrite existing data at the destination if present.", + "required": false, + "defaultValue": "false" + }, + { + "name": "transformations", + "type": "object", + "description": "Optional transformations to apply on the table data before upload (e.g., column mappings, filters).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "UploadResult object containing status, message, and metadata such as rowsUploaded and destination details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate uploading structured tabular data to a deployment environment for configuration, data seeding, or CI/CD pipeline integration. It is useful for continuously integrating data changes, provisioning databases, or updating configs stored as tables.", + "limitations": "Does not handle arbitrary large files beyond memory limits; limited to specified data formats; requires valid credentials to target environment; does not perform complex schema migrations.", + "examples": [ + "Upload a CSV file of configuration parameters to AWS S3 storage with overwrite enabled.", + "Send JSON tabular data to a PostgreSQL database for seeding test data using an API token.", + "Apply column mapping transformation and upload Excel data to a configuration management system." + ] + }, + "tags": [ + "devops", + "upload", + "table", + "ci/cd", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"name,age\\nAlice,30\\nBob,25\",\"format\":\"csv\",\"destination\":\"s3://mybucket/configs/params.csv\",\"authToken\":\"abc123token\",\"overwrite\":true}", + "description": "Uploading a simple CSV table to AWS S3 bucket with overwrite enabled." + }, + { + "inputJson": "{\"tableData\":\"[{\\\"id\\\":1,\\\"value\\\":100},{\\\"id\\\":2,\\\"value\\\":200}]\",\"format\":\"json\",\"destination\":\"postgresql://db.example.com:5432/testdb\",\"authToken\":\"tokenXYZ\",\"overwrite\":false}", + "description": "Uploading JSON array data as table seed to PostgreSQL database for test environment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "devops.formatQuery", + "description": "Formats and beautifies code queries (such as SQL, GraphQL, or similar query languages) by applying consistent indentation, line breaks, and spacing. Accepts raw query strings as input, processes them according to specified query language rules, and outputs a neatly formatted query string for improved readability and maintainability.", + "category": "devops", + "parameters": [ + { + "name": "queryString", + "type": "string", + "description": "The raw query string that needs formatting, such as an SQL or GraphQL query.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryLanguage", + "type": "string", + "description": "The query language of the input string. Supported values include 'sql', 'graphql'. Determines formatting rules applied.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces used for each indentation level in the formatted query.", + "required": false, + "defaultValue": "2" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "Whether to convert keywords (e.g., SELECT, WHERE) to uppercase for consistency.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineBreakAfterClauses", + "type": "boolean", + "description": "Whether to insert line breaks after major clauses (e.g., FROM, WHERE) in the query for readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted query string under the 'formattedQuery' property." + }, + "aiAgent": { + "useCase": "Use this tool whenever there is a need to automatically format and beautify raw query strings for deployment scripts, configuration files, or CI/CD pipelines, improving code readability and reducing syntax and style errors. It helps maintain consistent formatting standards across the team and automates manual formatting tasks.", + "limitations": "Currently supports only SQL and GraphQL query languages. Does not perform syntax validation or semantic analysis of queries, only formatting. Complex or vendor-specific SQL dialects may not be fully supported.", + "examples": [ + "Format an unformatted SQL query to readable style with keyword uppercasing and standard indentation.", + "Format a GraphQL query string to have consistent indentation and line breaks for deployment automation.", + "Adjust indentation size in a SQL query for compliance with company coding standards." + ] + }, + "tags": [ + "formatting", + "query", + "sql", + "graphql", + "devops", + "automation", + "code-quality" + ], + "examples": [ + { + "inputJson": "{\"queryString\":\"select id,name from users where age>20 order by name\",\"queryLanguage\":\"sql\",\"indentationSize\":4,\"uppercaseKeywords\":true,\"lineBreakAfterClauses\":true}", + "description": "Format a simple SQL query with 4-space indentation and uppercase keywords." + }, + { + "inputJson": "{\"queryString\":\"{ user(id: \\\"1\\\") { name email } }\",\"queryLanguage\":\"graphql\",\"indentationSize\":2,\"uppercaseKeywords\":false,\"lineBreakAfterClauses\":false}", + "description": "Format a GraphQL query without keyword uppercasing and no extra line breaks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "devops.buildSchema", + "description": "Constructs and validates infrastructure-as-code schemas for deployment automation. Accepts input parameters defining resources, properties, and constraints, then generates a comprehensive schema in JSON or YAML format to be used in CI/CD pipelines or infrastructure provisioning tools.", + "category": "devops", + "parameters": [ + { + "name": "resourceDefinitions", + "type": "object", + "description": "An object defining the infrastructure resources, their properties, and interdependencies.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaFormat", + "type": "string", + "description": "The output schema format, either 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to perform validation checks on the constructed schema for correctness and completeness.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Indicates if descriptive comments should be included in the output schema for clarity.", + "required": false, + "defaultValue": "false" + }, + { + "name": "version", + "type": "string", + "description": "Target version of the infrastructure schema standard or framework (e.g., AWS CloudFormation, Terraform) to ensure compatibility.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted infrastructure schema string and validation status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate or update consistent infrastructure deployment schemas programmatically from structured resource definitions, especially for automating DevOps pipelines or integrating with configuration management tools.", + "limitations": "This tool cannot deploy infrastructure directly; it only builds schemas. It assumes valid resource definitions are provided and does not manage external dependencies or runtime state.", + "examples": [ + "Generate a CloudFormation schema for a multi-instance web application.", + "Build a Terraform-compatible schema in YAML format with resource dependencies.", + "Create and validate an infrastructure schema based on custom input resource definitions." + ] + }, + "tags": [ + "devops", + "infrastructure", + "schema", + "automation", + "CICD", + "infrastructure-as-code" + ], + "examples": [ + { + "inputJson": "{\"resourceDefinitions\":{\"EC2Instance\":{\"Type\":\"AWS::EC2::Instance\",\"Properties\":{\"InstanceType\":\"t2.micro\",\"ImageId\":\"ami-0abcdef1234567890\"}}},\"schemaFormat\":\"json\",\"validateSchema\":true,\"includeComments\":true,\"version\":\"CloudFormation 2010-09-09\"}", + "description": "Create a JSON CloudFormation schema for a single EC2 instance with comments included." + }, + { + "inputJson": "{\"resourceDefinitions\":{\"AppServer\":{\"type\":\"terraform_resource\",\"resource_type\":\"aws_instance\",\"properties\":{\"ami\":\"ami-0abcdef1234567890\",\"instance_type\":\"t2.small\"}}},\"schemaFormat\":\"yaml\",\"validateSchema\":true,\"includeComments\":false,\"version\":\"Terraform 1.1\"}", + "description": "Build a YAML Terraform infrastructure schema for an EC2 instance with validation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "devops.generateConversion", + "description": "Generates a conversion report for a specified deployment or CI/CD pipeline by analyzing input logs and metrics data. It accepts deployment logs and pipeline metrics as input, processes them to identify successful versus failed deployment conversions, and outputs a summary report with conversion rates and detailed analytics.", + "category": "devops", + "parameters": [ + { + "name": "deploymentLogs", + "type": "array", + "description": "An array of deployment log entries to analyze for conversion events.", + "required": true, + "defaultValue": "" + }, + { + "name": "pipelineMetrics", + "type": "object", + "description": "An object containing key metrics (e.g., success rate, duration) from the CI/CD pipeline.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "ISO 8601 formatted start time for the conversion analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "ISO 8601 formatted end time for the conversion analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFailedDeployments", + "type": "boolean", + "description": "Whether to include failed deployment attempts in the conversion report analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Requested output format of the conversion report (e.g., json, csv).", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall conversion metrics including total deployment attempts, successful conversions, conversion rate percentage, and detailed breakdown per pipeline stage." + }, + "aiAgent": { + "useCase": "Use this tool when assessing the effectiveness and reliability of deployment pipelines by generating detailed conversion analytics from logs and metrics, enabling data-driven improvements in DevOps processes.", + "limitations": "This tool cannot fetch logs or metrics automatically; it requires pre-collected structured input data. It does not integrate with external monitoring systems directly and lacks real-time streaming analysis.", + "examples": [ + "Generate a conversion report for the last week's deployments focusing only on successful attempts.", + "Create a CSV report showing conversion rates including failed deployments for audit purposes.", + "Analyze a specific pipeline's logs and metrics within a given time range to determine bottlenecks in deployment success." + ] + }, + "tags": [ + "devops", + "analytics", + "conversion", + "deployment", + "CI/CD", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"deploymentLogs\":[{\"timestamp\":\"2024-05-20T14:00:00Z\",\"status\":\"success\"},{\"timestamp\":\"2024-05-20T15:00:00Z\",\"status\":\"failure\"}],\"pipelineMetrics\":{\"attempts\":10,\"successes\":7},\"timeRangeStart\":\"2024-05-20T00:00:00Z\",\"timeRangeEnd\":\"2024-05-21T00:00:00Z\",\"includeFailedDeployments\":true,\"outputFormat\":\"json\"}", + "description": "Generate JSON conversion report including failed deployments within a specific date range." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "devops.generateQuote", + "description": "Generates motivational or insightful quotes tailored for devops teams, supporting customization by category, tone, and length. Accepts optional parameters to specify the theme and style, and outputs a formatted quote string suitable for display in dashboards, commits, or team communications.", + "category": "devops", + "parameters": [ + { + "name": "category", + "type": "string", + "description": "The thematic category of the quote, e.g., 'motivation', 'teamwork', or 'automation'. If empty, defaults to general devops quotes.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The tone of the quote, such as 'inspirational', 'humorous', or 'serious'. Defaults to inspirational.", + "required": false, + "defaultValue": "inspirational" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated quote in number of characters. Defaults to 140 characters.", + "required": false, + "defaultValue": "140" + }, + { + "name": "includeAuthor", + "type": "boolean", + "description": "Whether to include the author's name or source with the quote. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text and optionally the author if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you want to inject motivational, thematic quotes into devops-related channels such as CI/CD job outputs, dashboards, or team chatbots to encourage and inspire teams. Useful for creating engaging interfaces or logs reflecting team culture or focus.", + "limitations": "The tool does not generate technical advice or instructions, only stylized quotes. It may not cover highly specialized devops topics or very recent industry jargon.", + "examples": [ + "Generate an inspirational devops quote about automation less than 100 characters.", + "Create a humorous teamwork quote including the author name.", + "Provide a general motivational quote with a serious tone without the author." + ] + }, + "tags": [ + "devops", + "quote", + "generate", + "motivation", + "teamwork", + "automation" + ], + "examples": [ + { + "inputJson": "{\"category\":\"automation\",\"tone\":\"inspirational\",\"maxLength\":100,\"includeAuthor\":true}", + "description": "Generate an inspirational automation-related quote with the author included, max 100 chars." + }, + { + "inputJson": "{\"category\":\"teamwork\",\"tone\":\"humorous\",\"maxLength\":140,\"includeAuthor\":true}", + "description": "Generate a humorous teamwork quote including the author name." + }, + { + "inputJson": "{\"category\":\"\",\"tone\":\"serious\",\"maxLength\":120,\"includeAuthor\":false}", + "description": "Generate a general motivational serious quote without author attribution." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "devops.generateAnomaly", + "description": "Analyzes timeseries data from infrastructure or application monitoring sources to detect anomalies in metrics such as CPU usage, error rates, or response times. Accepts input data streams or batches and outputs detected anomaly events with details on severity, timestamps, and metric deviations.", + "category": "devops", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "Name of the metric to analyze for anomalies, e.g., 'cpu_usage'", + "required": true, + "defaultValue": "" + }, + { + "name": "dataPoints", + "type": "array", + "description": "Array of objects representing metric data with timestamps and values to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "threshold", + "type": "number", + "description": "Sensitivity level for anomaly detection; lower values detect more anomalies (0-1)", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes over which to analyze and detect anomalies", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "If true, output will include detailed diagnostics about anomaly causes", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a list of detected anomalies with timestamps, severity scores, and optionally detailed diagnostic information." + }, + "aiAgent": { + "useCase": "Use this tool in continuous integration and deployment pipelines or monitoring systems when automatic detection of unusual patterns or spikes in operational metrics is needed to proactively identify potential issues or failures.", + "limitations": "This tool requires sufficiently dense and clean timeseries metric data as input; it cannot diagnose root causes or fix anomalies automatically. It may also have false positives or miss anomalies depending on input quality and configured thresholds.", + "examples": [ + "Detect anomalies in CPU usage for the last hour.", + "Analyze error rate metrics for sudden spikes in a deployment pipeline.", + "Monitor response time data to flag unusual latency patterns." + ] + }, + "tags": [ + "devops", + "anomaly detection", + "monitoring", + "metrics", + "timeseries", + "automation" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"cpu_usage\",\"dataPoints\":[{\"timestamp\":\"2024-06-01T10:00:00Z\",\"value\":20},{\"timestamp\":\"2024-06-01T10:01:00Z\",\"value\":22},{\"timestamp\":\"2024-06-01T10:02:00Z\",\"value\":85},{\"timestamp\":\"2024-06-01T10:03:00Z\",\"value\":23}],\"threshold\":0.7,\"timeWindowMinutes\":15,\"includeDetails\":true}", + "description": "Detect anomalies in CPU usage data over a 15-minute window with detailed output for investigation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "devops.createCache", + "description": "Creates and configures a cache service in a cloud or containerized environment. Accepts parameters such as cache type (e.g., Redis, Memcached), size, eviction policy, and persistence options. Outputs a cache resource descriptor including connection details and status.", + "category": "devops", + "parameters": [ + { + "name": "cacheType", + "type": "string", + "description": "Type of cache to create, e.g., 'redis' or 'memcached'.", + "required": true, + "defaultValue": "" + }, + { + "name": "sizeMB", + "type": "number", + "description": "Maximum size of the cache in megabytes.", + "required": false, + "defaultValue": "256" + }, + { + "name": "evictionPolicy", + "type": "string", + "description": "Cache eviction policy to apply, e.g., 'LRU', 'LFU', or 'noeviction'.", + "required": false, + "defaultValue": "LRU" + }, + { + "name": "persistenceEnabled", + "type": "boolean", + "description": "Whether to enable persistence of cached data to disk (if supported).", + "required": false, + "defaultValue": "false" + }, + { + "name": "replicationEnabled", + "type": "boolean", + "description": "Whether to replicate cache across nodes for high availability.", + "required": false, + "defaultValue": "false" + }, + { + "name": "ttlSeconds", + "type": "number", + "description": "Default time-to-live in seconds for cache entries if not overridden.", + "required": false, + "defaultValue": "3600" + }, + { + "name": "region", + "type": "string", + "description": "Deployment region or zone for the cache instance.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing cache resource metadata including unique ID, connection endpoint, port, status, configured parameters, and access credentials (if applicable)." + }, + "aiAgent": { + "useCase": "Use this tool when automating infrastructure provisioning that requires a managed cache layer to improve application performance or reduce backend load. Suitable for pipelines or scripts to spin up cache instances with custom configurations on cloud or container platforms.", + "limitations": "Does not manage application-level cache invalidation or integrate with application code. Limited to provisioning and initial configuration, not performance monitoring or scaling after creation.", + "examples": [ + "Create a Redis cache with 512MB size and persistence enabled.", + "Set up a memcached instance with LRU eviction in us-east-1 region.", + "Create a replicated Redis cache with a 30 minutes TTL for session data storage." + ] + }, + "tags": [ + "devops", + "cache", + "infrastructure", + "automation", + "provisioning", + "redis", + "memcached" + ], + "examples": [ + { + "inputJson": "{\"cacheType\":\"redis\",\"sizeMB\":512,\"persistenceEnabled\":true}", + "description": "Create a Redis cache with 512MB and persistence enabled." + }, + { + "inputJson": "{\"cacheType\":\"memcached\",\"evictionPolicy\":\"LRU\",\"region\":\"us-east-1\"}", + "description": "Deploy a Memcached cache in the us-east-1 region with LRU eviction." + }, + { + "inputJson": "{\"cacheType\":\"redis\",\"replicationEnabled\":true,\"ttlSeconds\":1800}", + "description": "Create a replicated Redis cache with entries expiring after 1800 seconds (30 minutes)." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "devops.generateYAML", + "description": "Generates YAML configuration files for deployment pipelines, infrastructure as code, or application settings based on structured inputs. Accepts parameters defining services, environments, and deployment stages, and outputs a well-formatted YAML string ready for use in DevOps workflows.", + "category": "devops", + "parameters": [ + { + "name": "configData", + "type": "object", + "description": "Structured configuration data describing services, environments, and deployment settings to be converted into YAML.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include descriptive comments in the generated YAML for clarity.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the YAML output. Typically 2 or 4.", + "required": false, + "defaultValue": "2" + }, + { + "name": "yamlVersion", + "type": "string", + "description": "Specify the YAML version header (e.g., '1.2') to include at the start of the file, or leave empty to omit.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the YAML content string under the 'yamlString' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate YAML configuration files for automated deployment, CI/CD pipelines, or infrastructure definitions from structured data inputs. Ideal for creating repeatable and customizable YAML templates without manual editing.", + "limitations": "This tool does not validate the semantic correctness of the YAML with respect to the target platform (e.g., Kubernetes, Docker Compose). It only generates syntactically correct YAML from the input data structure.", + "examples": [ + "Generate a Kubernetes deployment YAML from service and replica count data.", + "Create a CI pipeline YAML with stages and job definitions based on given parameters.", + "Produce an application configuration YAML including environment variables and resource limits." + ] + }, + "tags": [ + "devops", + "yaml", + "configuration", + "deployment", + "automation", + "infrastructure", + "ci/cd" + ], + "examples": [ + { + "inputJson": "{\"configData\":{\"services\":{\"webapp\":{\"image\":\"myapp:v1\",\"ports\":[80,443]}},\"replicas\":3},\"includeComments\":true,\"indentationSpaces\":2,\"yamlVersion\":\"1.2\"}", + "description": "Generate a two-space indented Kubernetes deployment YAML with comments for a web application service with 3 replicas." + }, + { + "inputJson": "{\"configData\":{\"stages\":[\"build\",\"test\",\"deploy\"],\"jobs\":{\"build\":{\"script\":\"make build\"},\"test\":{\"script\":\"make test\"},\"deploy\":{\"script\":\"make deploy\"}}},\"includeComments\":false,\"indentationSpaces\":4,\"yamlVersion\":\"\"}", + "description": "Generate a CI pipeline YAML without comments, indented with four spaces, defining three stages and corresponding job scripts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "devops.createConversion", + "description": "This tool creates and configures conversion tracking pipelines within DevOps environments, enabling teams to monitor key analytics conversion events during deployment and application lifecycle. It accepts configuration parameters defining conversion criteria, conversion type, and target environments, and outputs a deployment-ready conversion tracking setup manifest or script.", + "category": "devops", + "parameters": [ + { + "name": "conversionName", + "type": "string", + "description": "Unique name identifier for the conversion event to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionType", + "type": "string", + "description": "Type of conversion to track, such as 'purchase', 'signup', or custom event.", + "required": true, + "defaultValue": "" + }, + { + "name": "criteria", + "type": "object", + "description": "Object defining the criteria or conditions for the conversion event (e.g., URL pattern, API response status).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "Deployment environment where the conversion tracking will be configured, e.g., 'production', 'staging'.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationEmails", + "type": "array", + "description": "List of email addresses to notify upon conversion events.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableDebug", + "type": "boolean", + "description": "Flag to enable verbose logging and debugging for the conversion tracking setup.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the conversion tracking deployment manifest or script, and status of the creation process including success flag and messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of analytics conversion tracking configurations integrated directly into DevOps deployment workflows, ensuring conversion metrics are automatically captured and monitored post-deployment. It helps automate tracking setups aligned with deployment environments and specific conversion criteria.", + "limitations": "This tool does not implement real-time analytics or data visualization. It only configures the conversion tracking setup; it cannot analyze the collected conversion data or process event results.", + "examples": [ + "Create a purchase conversion tracking setup for production environment with notification emails.", + "Set up signup conversion event tracking with custom API response criteria in staging environment.", + "Enable debug mode and configure a custom conversion event named 'featureUsed' targeting production environment." + ] + }, + "tags": [ + "devops", + "conversion tracking", + "automation", + "analytics", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"conversionName\":\"PurchaseComplete\",\"conversionType\":\"purchase\",\"criteria\":{\"urlPattern\":\"/checkout/complete\"},\"targetEnvironment\":\"production\",\"notificationEmails\":[\"ops@example.com\",\"analytics@example.com\"],\"enableDebug\":false}", + "description": "Create a purchase conversion event tracking for production with email notifications." + }, + { + "inputJson": "{\"conversionName\":\"UserSignup\",\"conversionType\":\"signup\",\"criteria\":{\"apiResponseCode\":201},\"targetEnvironment\":\"staging\",\"notificationEmails\":[],\"enableDebug\":true}", + "description": "Set up signup conversion tracking on staging environment with debug enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "devops.createChannel", + "description": "Creates a new communication channel within a specified messaging or collaboration platform for DevOps teams. Accepts platform details, channel name, description, members, and optional privacy settings. Outputs confirmation of channel creation, including channel ID and URL if applicable.", + "category": "devops", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "The target communication platform for the channel (e.g., Slack, Microsoft Teams).", + "required": true, + "defaultValue": "" + }, + { + "name": "channelName", + "type": "string", + "description": "The name of the channel to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A short description or purpose of the channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "members", + "type": "array", + "description": "List of user IDs or emails to be added to the channel initially.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Determines if the channel should be private (restricted access) or public.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the created channel, including channel ID, name, URL, privacy status, and a success flag." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically provision communication channels in collaboration platforms to coordinate DevOps activities, streamlining team collaboration and notifications. It supports automated creation as part of deployment or onboarding workflows.", + "limitations": "This tool cannot manage channel content, message posting, or user permissions beyond initial membership and privacy settings. It also depends on platform API availability and correct authentication.", + "examples": [ + "Create a Slack channel named 'deploy-notifications' with a brief purpose and add the DevOps team emails.", + "Set up a private Microsoft Teams channel 'backend-team' with specified members for sensitive infra discussions.", + "Initialize a public channel for a new project on Slack to centralize announcements and alerts." + ] + }, + "tags": [ + "devops", + "communication", + "automation", + "channel", + "collaboration", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"Slack\",\"channelName\":\"deploy-notifications\",\"description\":\"Channel for deployment alerts and notifications.\",\"members\":[\"alice@example.com\",\"bob@example.com\"],\"isPrivate\":false}", + "description": "Create a public Slack channel named 'deploy-notifications' with two members for deployment alerts." + }, + { + "inputJson": "{\"platform\":\"Microsoft Teams\",\"channelName\":\"backend-team\",\"description\":\"Private discussion channel for backend engineers.\",\"members\":[\"charlie@example.com\",\"dana@example.com\"],\"isPrivate\":true}", + "description": "Create a private Microsoft Teams channel for backend engineering team with specified initial members." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "devops.createAudio", + "description": "Generates audio files from text scripts using configurable voice and audio settings. Accepts text input along with parameters like voice type, language, speech rate, volume, and output format, then produces a ready-to-use audio file URL or binary data suitable for deployment or integration in DevOps pipelines.", + "category": "devops", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The script or text content to convert into speech.", + "required": true, + "defaultValue": "" + }, + { + "name": "voiceType", + "type": "string", + "description": "The voice profile to be used for speech synthesis, e.g., 'female', 'male', or specific voice model names.", + "required": false, + "defaultValue": "female" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the speech synthesis, e.g., 'en-US', 'fr-FR'.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "speechRate", + "type": "number", + "description": "Speed multiplier for speech rate; 1 is normal, less than 1 is slower, greater than 1 is faster.", + "required": false, + "defaultValue": "1" + }, + { + "name": "volume", + "type": "number", + "description": "Audio volume level from 0.0 (mute) to 1.0 (max volume).", + "required": false, + "defaultValue": "1" + }, + { + "name": "audioFormat", + "type": "string", + "description": "Output audio format/codec such as 'mp3', 'wav', or 'ogg'.", + "required": false, + "defaultValue": "mp3" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Sample rate in Hz for the output audio, e.g., 22050, 44100.", + "required": false, + "defaultValue": "44100" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the audio file's URL or base64-encoded data and metadata about the generated audio, including format, duration, and size." + }, + "aiAgent": { + "useCase": "Use this tool when an automated system or deployment pipeline requires generating audio announcements, alerts, or voice prompts from dynamic text content within DevOps workflows. It's ideal for producing synthetic speech for CI/CD pipelines, monitoring alerts, or voice-based notifications where manual audio recording is impractical.", + "limitations": "This tool does not perform audio editing or mixing beyond speech synthesis. It cannot recognize or transcribe existing audio, nor does it create music or non-speech sounds. Voice quality depends on underlying text-to-speech engines and may not be suitable for all languages or accents.", + "examples": [ + "Generate an English female voice mp3 audio for a server deployment success message.", + "Create a slower French male voice wav audio for alert notification.", + "Produce a short voice prompt in Spanish with specific sample rate and volume for an IoT device deployment." + ] + }, + "tags": [ + "devops", + "audio", + "text-to-speech", + "deployment", + "automation", + "CI-CD", + "voice-synthesis" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Deployment completed successfully.\",\"voiceType\":\"female\",\"language\":\"en-US\",\"speechRate\":1,\"volume\":1,\"audioFormat\":\"mp3\",\"sampleRate\":44100}", + "description": "Generate English female voice audio in mp3 format for deployment success notification." + }, + { + "inputJson": "{\"text\":\"Attention: High CPU usage detected.\",\"voiceType\":\"male\",\"language\":\"fr-FR\",\"speechRate\":0.9,\"volume\":0.8,\"audioFormat\":\"wav\",\"sampleRate\":22050}", + "description": "Create a French male voice warning alert audio with slower speech and lower volume in wav format." + }, + { + "inputJson": "{\"text\":\"Actualización completada.\",\"voiceType\":\"female\",\"language\":\"es-ES\",\"speechRate\":1.1,\"volume\":1,\"audioFormat\":\"ogg\",\"sampleRate\":48000}", + "description": "Produce a Spanish female voice update notification with slightly faster speech rate in ogg format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "devops.createExpense", + "description": "Creates a new expense record related to DevOps activities such as infrastructure provisioning, tooling subscriptions, or cloud services used in deployment. Accepts details like amount, vendor, date, and category; processes and stores the expense; returns a confirmation including the expense ID and summary.", + "category": "devops", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "The monetary value of the expense in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code of the amount, e.g., USD, EUR.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "vendor", + "type": "string", + "description": "Name of the vendor or service provider related to the expense.", + "required": true, + "defaultValue": "" + }, + { + "name": "expenseDate", + "type": "string", + "description": "Date of the expense in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "Category of the expense, such as cloud services, software licenses, hardware.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description or notes about the expense.", + "required": false, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "Optional identifier linking the expense to a specific DevOps project or team.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with confirmation of the recorded expense, including unique expenseId, amount, currency, vendor, expenseDate, category, and description." + }, + "aiAgent": { + "useCase": "Use this tool when you need to record and track DevOps-related expenses for budgeting, auditing, and cost management purposes, especially when integrating expense data into deployment or project management workflows.", + "limitations": "Does not handle expense approval workflows or payment processing; this tool only creates and stores expense records.", + "examples": [ + "Create an expense for a cloud provider monthly bill.", + "Record a software license purchase under the DevOps tools category.", + "Log hardware purchase expense for a DevOps project." + ] + }, + "tags": [ + "devops", + "expense", + "finance", + "cost-management", + "infrastructure", + "automation" + ], + "examples": [ + { + "inputJson": "{\"amount\":5000,\"currency\":\"USD\",\"vendor\":\"AWS\",\"expenseDate\":\"2024-05-15\",\"category\":\"cloud services\",\"description\":\"Monthly EC2 instance charges\",\"projectId\":\"devops-123\"}", + "description": "Recording a monthly AWS cloud services expense for DevOps project 'devops-123'." + }, + { + "inputJson": "{\"amount\":300,\"currency\":\"USD\",\"vendor\":\"JetBrains\",\"expenseDate\":\"2024-04-01\",\"category\":\"software licenses\",\"description\":\"Team IntelliJ licenses renewal\"}", + "description": "Logging software license renewal expense for JetBrains IntelliJ used by the DevOps team." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "devops.createTemplate", + "description": "Generates infrastructure-as-code or deployment templates by taking parameters like template type, resource definitions, and optional metadata to produce a ready-to-use configuration file in formats such as YAML or JSON for cloud or CI/CD tooling.", + "category": "devops", + "parameters": [ + { + "name": "templateType", + "type": "string", + "description": "Type of template to create, e.g., 'CloudFormation', 'Terraform', or 'GitHubActions'", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceDefinitions", + "type": "object", + "description": "An object describing resources and their parameters to include in the template", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata or additional configuration parameters for the template", + "required": false, + "defaultValue": "{}" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the template file: 'yaml' or 'json'", + "required": true, + "defaultValue": "yaml" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated template", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template as a string and metadata such as templateType and format" + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate infrastructure or deployment templates to automate environment provisioning or CI/CD workflows, based on structured resource definitions and parameters.", + "limitations": "Does not execute or validate the templates; assumes resource definitions are valid and supported by the specified template type.", + "examples": [ + "Generate a Terraform template for deploying an AWS S3 bucket.", + "Create a GitHub Actions workflow template for CI with Node.js.", + "Produce a CloudFormation template for an EC2 instance with tags and security groups." + ] + }, + "tags": [ + "devops", + "template", + "infrastructure-as-code", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"templateType\":\"CloudFormation\",\"resourceDefinitions\":{\"Resources\":{\"MyEC2Instance\":{\"Type\":\"AWS::EC2::Instance\",\"Properties\":{\"InstanceType\":\"t2.micro\",\"ImageId\":\"ami-0abcdef1234567890\"}}}},\"metadata\":{\"description\":\"Sample EC2 instance\"},\"format\":\"yaml\",\"includeComments\":true}", + "description": "Create a CloudFormation YAML template with one EC2 instance including comments." + }, + { + "inputJson": "{\"templateType\":\"GitHubActions\",\"resourceDefinitions\":{\"name\":\"Node.js CI\",\"on\":[\"push\",\"pull_request\"],\"jobs\":{\"build\":{\"runs-on\":\"ubuntu-latest\",\"steps\":[{\"uses\":\"actions/checkout@v2\"},{\"name\":\"Setup Node.js\",\"uses\":\"actions/setup-node@v2\",\"with\":{\"node-version\":\"14\"}},{\"name\":\"Run Tests\",\"run\":\"npm test\"}]}}},\"format\":\"yaml\"}", + "description": "Generate a GitHub Actions workflow YAML for Node.js CI pipeline." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "devops.createGraph", + "description": "Generates a visual graph representing DevOps workflows, infrastructure topology, or CI/CD pipeline steps. Accepts a structured JSON input detailing nodes (e.g., services, servers) and edges (connections, dependencies), processes it to layout the graph logically, and outputs the graph as an SVG or PNG image file.", + "category": "devops", + "parameters": [ + { + "name": "workflowData", + "type": "object", + "description": "JSON object defining nodes and edges of the graph, including labels and types for each node.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, e.g., 'workflow', 'infrastructure', or 'pipeline'.", + "required": false, + "defaultValue": "workflow" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Image format for the output graph file, such as 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "layoutAlgorithm", + "type": "string", + "description": "Algorithm used to arrange the graph layout, e.g., 'dot', 'neato', 'fdp'.", + "required": false, + "defaultValue": "dot" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining node and edge types in the graph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "nodeColorScheme", + "type": "string", + "description": "Color scheme to apply for different node types to enhance visual clarity.", + "required": false, + "defaultValue": "default" + }, + { + "name": "edgeStyle", + "type": "string", + "description": "Style of edges, e.g., 'solid', 'dashed', to represent different connection types.", + "required": false, + "defaultValue": "solid" + } + ], + "returns": { + "type": "object", + "description": "An object containing the graph image data encoded as a base64 string along with metadata such as image format, dimensions, and optional legend details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visualize complex DevOps workflows, infrastructure setups, or CI/CD pipelines programmatically to help teams understand component relationships and process flow. It is ideal for automating architecture documentation or integration into dashboards.", + "limitations": "This tool cannot generate interactive or dynamic graphs beyond static images. It requires well-structured input JSON to accurately represent the graph. It does not render real-time data or perform anomaly detection.", + "examples": [ + "Create a CI/CD pipeline graph from a JSON description of steps and artifact flows.", + "Visualize microservices infrastructure topology with servers, databases, and network connections.", + "Generate a DevOps workflow diagram highlighting build, test, and deployment stages with dependencies." + ] + }, + "tags": [ + "visualization", + "devops", + "ci/cd", + "infrastructure", + "workflow", + "graph generation" + ], + "examples": [ + { + "inputJson": "{\"workflowData\":{\"nodes\":[{\"id\":\"build\",\"label\":\"Build\",\"type\":\"stage\"},{\"id\":\"test\",\"label\":\"Test\",\"type\":\"stage\"},{\"id\":\"deploy\",\"label\":\"Deploy\",\"type\":\"stage\"}],\"edges\":[{\"from\":\"build\",\"to\":\"test\",\"type\":\"step\"},{\"from\":\"test\",\"to\":\"deploy\",\"type\":\"step\"}]},\"graphType\":\"pipeline\",\"outputFormat\":\"svg\"}", + "description": "Generate a pipeline graph with three stages: Build, Test, and Deploy, connected sequentially." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "frontend-development.analyzeForecast", + "description": "This tool analyzes business forecast data related to frontend development projects, such as user engagement projections, feature adoption rates, and revenue estimates. It accepts input as time-series or tabular forecast data with relevant metrics, applies statistical and trend analysis methods to identify growth patterns and risks, and returns a detailed report including key metrics, trend charts, and actionable insights for frontend planning.", + "category": "frontend-development", + "parameters": [ + { + "name": "forecastData", + "type": "array", + "description": "An array of forecast data points representing predicted metrics over time (e.g., user counts, revenue). Each item should be an object with timestamp and metric values.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricsToAnalyze", + "type": "array", + "description": "List of metric names within forecastData to analyze (e.g., [\"userEngagement\", \"revenue\"]).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) of the forecast period to analyze, inclusive.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) of the forecast period to analyze, inclusive.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Whether to include trend and growth rate calculations in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "confidenceInterval", + "type": "number", + "description": "Confidence interval percentage (e.g., 95) to estimate forecast uncertainty bands.", + "required": false, + "defaultValue": "95" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including summary statistics, trend insights, confidence intervals, and visual data representations (as base64-encoded charts or URLs)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quantitatively assess and interpret frontend-focused business forecast data, such as user growth and revenue projections over time, to support product planning, resource allocation, or stakeholder reporting. It aids in recognizing significant trends and potential risks in forecasted frontend performance metrics.", + "limitations": "Does not generate forecasts; only analyzes provided forecast data. Not designed to handle raw logs or qualitative data. Trend analysis is statistical and may not account for unexpected external factors.", + "examples": [ + "Analyze user engagement and revenue forecasts for Q3 to identify key growth drivers.", + "Generate a trend report on feature adoption rates from provided monthly projections.", + "Assess forecast uncertainty and risk factors in upcoming frontend product launches." + ] + }, + "tags": [ + "frontend", + "forecast", + "business-analysis", + "trend-analysis", + "user-engagement", + "revenue-projection" + ], + "examples": [ + { + "inputJson": "{\"forecastData\":[{\"timestamp\":\"2024-07-01T00:00:00Z\",\"userEngagement\":15000,\"revenue\":120000},{\"timestamp\":\"2024-08-01T00:00:00Z\",\"userEngagement\":18000,\"revenue\":140000},{\"timestamp\":\"2024-09-01T00:00:00Z\",\"userEngagement\":21000,\"revenue\":160000}],\"metricsToAnalyze\":[\"userEngagement\",\"revenue\"],\"startDate\":\"2024-07-01\",\"endDate\":\"2024-09-30\",\"includeTrendAnalysis\":true,\"confidenceInterval\":95}", + "description": "Analyze user engagement and revenue forecast data for Q3 2024, including trend lines and confidence intervals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Forecast", + "context": null + } + }, + { + "name": "frontend-development.downloadAttachment", + "description": "This tool enables automated downloading of attachments from web application contexts. It accepts inputs such as the URL of the attachment, MIME type, file name, and optional authentication headers. The tool processes these inputs by fetching the attachment data, handling cross-origin requests if permitted, and triggering a download in the client environment. The output confirms success or provides error details.", + "category": "frontend-development", + "parameters": [ + { + "name": "attachmentUrl", + "type": "string", + "description": "The direct URL or endpoint URL to fetch the attachment from.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired name for the downloaded file including extension.", + "required": false, + "defaultValue": "attachment" + }, + { + "name": "mimeType", + "type": "string", + "description": "The MIME type of the attachment (e.g., image/png, application/pdf).", + "required": false, + "defaultValue": "" + }, + { + "name": "authHeaders", + "type": "object", + "description": "Optional HTTP headers such as authorization tokens to include in the fetch request.", + "required": false, + "defaultValue": "" + }, + { + "name": "useBlobUrl", + "type": "boolean", + "description": "Whether to create a Blob URL for the attachment before downloading (true) or download directly (false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status and an optional error message if the download failed." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to programmatically trigger the browser to download files or attachments, such as images, PDFs, or documents, from given URLs within a frontend web application. This is particularly useful when handling authenticated downloads or when the download URL is dynamically generated.", + "limitations": "This tool cannot bypass browser security restrictions like cross-origin policies that are not enabled on the server side. It assumes the environment supports standard web APIs like Fetch and Blob. It also cannot handle downloads that require complex user interactions beyond standard HTTP GET requests.", + "examples": [ + "Download a PDF report file from a secured URL using an authorization token.", + "Download a user's profile image from a publicly accessible URL and save it as 'profile.png'.", + "Download an attachment from a URL without specifying the MIME type and let the browser handle it by file extension." + ] + }, + "tags": [ + "download", + "attachment", + "frontend", + "file", + "client-side", + "HTTP", + "blob", + "fetch" + ], + "examples": [ + { + "inputJson": "{\"attachmentUrl\":\"https://example.com/files/report.pdf\",\"fileName\":\"AnnualReport2023.pdf\",\"mimeType\":\"application/pdf\",\"authHeaders\":{\"Authorization\":\"Bearer abc123\"},\"useBlobUrl\":true}", + "description": "Download a PDF report from a secured URL with bearer token authentication." + }, + { + "inputJson": "{\"attachmentUrl\":\"https://cdn.example.com/images/profile123.png\",\"fileName\":\"profile.png\",\"mimeType\":\"image/png\",\"useBlobUrl\":false}", + "description": "Download a profile image from a public CDN URL without authentication." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Attachment", + "context": null + } + }, + { + "name": "frontend-development.uploadAttachment", + "description": "Uploads a client-side attachment such as images, videos, or documents to a specified server endpoint. Accepts file data along with metadata and performs multipart/form-data POST requests, returning the upload status and accessible URL for use in frontend applications.", + "category": "frontend-development", + "parameters": [ + { + "name": "fileData", + "type": "string", + "description": "Base64-encoded file content to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Original name of the file including extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the file being uploaded (e.g., image/png, application/pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "uploadUrl", + "type": "string", + "description": "Server URL endpoint where the file will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional bearer token for authorization to upload endpoint.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata object to include with the upload request.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload success status, server response message, and URL of the uploaded attachment if successful." + }, + "aiAgent": { + "useCase": "Use this tool when a frontend application needs to upload user attachments such as profile pictures, documents, or media files to a backend service securely. It helps automate the encoding, forming requests, and parsing upload responses to integrate smoothly with frontend frameworks.", + "limitations": "This tool does not handle file size limitations or client-side validations. It depends on the server endpoint for storage and does not provide file transformation or compression features.", + "examples": [ + "Upload a user's profile photo to the server with authentication token.", + "Send a PDF document selected by the user to the backend for processing.", + "Upload multiple image attachments with extra metadata to a cloud service." + ] + }, + "tags": [ + "frontend", + "file-upload", + "attachment", + "media", + "http", + "multipart", + "client-side" + ], + "examples": [ + { + "inputJson": "{\"fileData\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"fileName\":\"avatar.png\",\"fileType\":\"image/png\",\"uploadUrl\":\"https://api.example.com/upload\",\"authToken\":\"Bearer abc123token\",\"metadata\":{\"userId\":\"42\"}}", + "description": "Upload a PNG avatar image with authentication token and user metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Attachment", + "context": null + } + }, + { + "name": "frontend-development.uploadXML", + "description": "This tool uploads an XML document to a specified frontend server endpoint. It accepts an XML string or a file path, validates the XML format, and sends it via HTTP POST to the given URL. It returns the server response status and message confirming upload success or failure.", + "category": "frontend-development", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "The XML content to upload as a string. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Path to the local XML file to upload. Required if xmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "uploadUrl", + "type": "string", + "description": "The URL endpoint to which the XML file should be uploaded via HTTP POST. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the upload request, e.g., authorization tokens.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeout", + "type": "number", + "description": "Timeout in milliseconds for the upload request before it fails.", + "required": false, + "defaultValue": "30000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the HTTP status code and server response message after attempting the XML upload." + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload XML data from a frontend application to a backend API endpoint that expects XML payloads, such as configuration files, feeds, or data exchanges. It is ideal for validating and sending XML content directly or from files with control over headers and timeout.", + "limitations": "This tool does not parse or transform the XML content beyond validation; it assumes the server endpoint accepts XML payloads in HTTP POST requests. It does not support multi-part uploads or large streaming uploads beyond typical file sizes.", + "examples": [ + "Upload XML string containing user data to a backend upload API.", + "Send a local XML config file to a server endpoint with authorization headers.", + "Upload XML feed to a REST API with a custom timeout setting." + ] + }, + "tags": [ + "upload", + "xml", + "frontend", + "http", + "file", + "api" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"1John Doe\",\"uploadUrl\":\"https://example.com/api/uploadXml\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"timeout\":15000}", + "description": "Upload a small XML string with user data to a backend endpoint with an authorization header and custom timeout." + }, + { + "inputJson": "{\"filePath\":\"/path/to/data.xml\",\"uploadUrl\":\"https://example.com/api/xmlImport\"}", + "description": "Upload a local XML file to the specified API endpoint using default headers and timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "XML", + "context": null + } + }, + { + "name": "frontend-development.generateChecklist", + "description": "Generates a structured frontend development checklist based on project parameters, selected frameworks, and target user experience. Accepts inputs such as project type, frameworks, and checklist categories to produce a detailed, actionable checklist document for developers to follow during client-side development phases.", + "category": "frontend-development", + "parameters": [ + { + "name": "projectType", + "type": "string", + "description": "Type of frontend project (e.g., SPA, PWA, multi-page site) to tailor the checklist accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "frameworks", + "type": "array", + "description": "List of frontend frameworks or libraries used (e.g., React, Vue, Angular).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "checklistCategories", + "type": "array", + "description": "Specific categories to include in the checklist such as accessibility, performance, security, testing.", + "required": false, + "defaultValue": "[\"accessibility\",\"performance\",\"security\",\"testing\"]" + }, + { + "name": "includeBestPractices", + "type": "boolean", + "description": "Whether to include best practice recommendations within the checklist.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output checklist document (e.g., markdown, json, html).", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated checklist content as a string in the requested format and metadata about the checklist." + }, + "aiAgent": { + "useCase": "Use this tool to create tailored frontend development checklists that help ensure coverage of important development aspects like performance optimization, accessibility compliance, security measures, and testing. Ideal for setting up guidelines at project start or generating standardized QA checklists.", + "limitations": "Does not generate code, cannot replace comprehensive project management tools, and relies on input detail to create relevant checklists. It does not automatically update existing checklists with new framework or standard updates.", + "examples": [ + "Generate a checklist for a React SPA focusing on accessibility and performance in markdown format.", + "Create a checklist for a Vue multi-page app including security and testing categories in JSON format." + ] + }, + "tags": [ + "frontend", + "checklist", + "development", + "quality assurance", + "performance", + "accessibility", + "security" + ], + "examples": [ + { + "inputJson": "{\"projectType\":\"SPA\",\"frameworks\":[\"React\"],\"checklistCategories\":[\"accessibility\",\"performance\"],\"includeBestPractices\":true,\"outputFormat\":\"markdown\"}", + "description": "Generate a markdown checklist for a React SPA focusing on accessibility and performance." + }, + { + "inputJson": "{\"projectType\":\"multi-page\",\"frameworks\":[\"Vue\"],\"checklistCategories\":[\"security\",\"testing\"],\"includeBestPractices\":false,\"outputFormat\":\"json\"}", + "description": "Create a JSON format checklist for a Vue multi-page application focusing on security and testing, excluding best practices." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Checklist", + "context": null + } + }, + { + "name": "backend-development.downloadAudio", + "description": "Downloads audio from a specified URL with optional format conversion and quality settings, returning the audio data as a downloadable file or buffer. Accepts a URL, desired audio format, and quality parameters, then processes and retrieves the audio content accordingly.", + "category": "backend-development", + "parameters": [ + { + "name": "audioUrl", + "type": "string", + "description": "The direct URL of the audio file or streaming resource to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetFormat", + "type": "string", + "description": "The audio format to convert to after downloading (e.g., mp3, wav). If empty, keeps original format.", + "required": false, + "defaultValue": "" + }, + { + "name": "quality", + "type": "string", + "description": "Desired quality level of the downloaded audio (e.g., 128kbps, 320kbps). Applies if conversion occurs.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time to wait for the audio download before aborting, in seconds.", + "required": false, + "defaultValue": "30" + }, + { + "name": "returnBuffer", + "type": "boolean", + "description": "If true, returns audio content as a Buffer object; if false, returns a path to the saved audio file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "saveFilePath", + "type": "string", + "description": "Local file path to save the downloaded audio if returnBuffer is false. Required if returnBuffer is false.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing either a buffer of audio data or the file path where the audio was saved, along with metadata like format and size." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically download audio content from a URL within a backend application, optionally converting formats or adjusting quality, useful for building media processing pipelines or audio caching services.", + "limitations": "Cannot download audio from URLs requiring authentication without prior handling; cannot process DRM-protected streams; quality conversion depends on available codecs; large files may require sufficient memory or disk space.", + "examples": [ + "Download an mp3 audio from a URL and save locally.", + "Download an audio stream and convert it to wav format at 320kbps quality, returning the buffer.", + "Download audio with a 10-second timeout and keep original format saving to specified path." + ] + }, + "tags": [ + "download", + "audio", + "backend", + "media", + "conversion", + "file handling" + ], + "examples": [ + { + "inputJson": "{\"audioUrl\":\"https://example.com/audio/song.mp3\",\"targetFormat\":\"\",\"quality\":\"\",\"timeoutSeconds\":30,\"returnBuffer\":false,\"saveFilePath\":\"/tmp/song.mp3\"}", + "description": "Download an MP3 audio file from a URL and save it to /tmp/song.mp3 without conversion." + }, + { + "inputJson": "{\"audioUrl\":\"https://example.com/audio/stream.wav\",\"targetFormat\":\"mp3\",\"quality\":\"320kbps\",\"timeoutSeconds\":60,\"returnBuffer\":true,\"saveFilePath\":\"\"}", + "description": "Download a WAV audio stream, convert it to 320kbps MP3 format, and return it as a buffer." + }, + { + "inputJson": "{\"audioUrl\":\"https://example.com/audio/podcast.ogg\",\"targetFormat\":\"\",\"quality\":\"\",\"timeoutSeconds\":10,\"returnBuffer\":false,\"saveFilePath\":\"/var/audio/podcast.ogg\"}", + "description": "Download an OGG audio file with a 10-second timeout, saving it locally without format conversion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Audio", + "context": null + } + }, + { + "name": "backend-development.downloadYAML", + "description": "Downloads a YAML file from a specified URL or server endpoint. Accepts the source URL and optional authentication headers, then fetches and returns the YAML content as a string. Useful for programmatically retrieving YAML configuration or data files over HTTP(S).", + "category": "backend-development", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the YAML file to download (e.g., https://example.com/config.yaml). Must be publicly accessible or properly authenticated.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the request, such as authorization tokens, formatted as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeout", + "type": "number", + "description": "Timeout duration in milliseconds to wait for the download before aborting the request.", + "required": false, + "defaultValue": "5000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the download and the YAML content as a string. Includes error message if the download fails." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically fetch YAML configuration files or data from web resources within backend systems. This is common for dynamic configuration loading, integration with third-party services, or retrieving infrastructure manifests.", + "limitations": "Cannot parse or validate the YAML content; it only downloads raw text. Does not support non-HTTP protocols or local file paths. Requires that the URL is reachable and the server responds with valid YAML content.", + "examples": [ + "Download a YAML config file from a secure URL with authorization headers.", + "Fetch Kubernetes manifest YAMLs from a cloud endpoint for processing.", + "Retrieve a YAML-formatted data file from a public API endpoint." + ] + }, + "tags": [ + "backend", + "download", + "yaml", + "http", + "configuration", + "api" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/config.yaml\",\"headers\":{\"Authorization\":\"Bearer abc123\"},\"timeout\":7000}", + "description": "Download a protected YAML config file with authorization and increased timeout." + }, + { + "inputJson": "{\"url\":\"https://raw.githubusercontent.com/user/repo/main/deployment.yaml\"}", + "description": "Download a public GitHub raw YAML file without additional headers or timeout specified." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "YAML", + "context": null + } + }, + { + "name": "backend-development.uploadYAML", + "description": "Uploads a YAML configuration file to a specified backend server endpoint. Accepts the YAML content as a string along with target server URL and optional authentication headers, validates the YAML syntax, and sends it via HTTP POST. Returns upload status including success flag, server response code, and response message.", + "category": "backend-development", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML file content as a string to be uploaded and processed by the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetUrl", + "type": "string", + "description": "The full URL of the backend server endpoint where the YAML content will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authHeaders", + "type": "object", + "description": "Optional HTTP headers for authentication (e.g., Authorization tokens) as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds to wait for the upload response before aborting.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'success' boolean, HTTP 'statusCode', and 'message' string providing server response or error details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically upload or update YAML configuration files on a backend service via HTTP API, including secure endpoints requiring headers. It performs YAML syntax validation before upload to avoid malformed data being sent.", + "limitations": "Does not support chunked uploads or extremely large YAML files that exceed HTTP limits. Does not parse or interpret the YAML content semantics beyond syntax validation. The tool does not itself authenticate, but can attach provided headers.", + "examples": [ + "Upload a YAML config to a CI/CD server with a Bearer token header.", + "Send a small Kubernetes manifest YAML to a deployment API endpoint.", + "Validate and upload a server settings YAML file to a management backend URL." + ] + }, + "tags": [ + "backend", + "upload", + "YAML", + "configuration", + "API", + "HTTP", + "server" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"apiVersion: v1\\nkind: ConfigMap\\nmetadata:\\n name: example-config\\ndata:\\n key: value\",\"targetUrl\":\"https://api.example.com/upload-config\",\"authHeaders\":{\"Authorization\":\"Bearer abc123\"},\"timeoutSeconds\":15}", + "description": "Uploading a small YAML config map to a backend API with bearer token authentication and custom timeout." + }, + { + "inputJson": "{\"yamlContent\":\"version: 2\\nservices:\\n web:\\n image: nginx\\n ports:\\n - 80:80\",\"targetUrl\":\"https://deploy.backend.com/upload\",\"authHeaders\":{},\"timeoutSeconds\":30}", + "description": "Uploading a docker-compose style YAML to a deployment backend without authentication headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "YAML", + "context": null + } + }, + { + "name": "backend-development.renderChart", + "description": "Renders a chart image based on the provided chart configuration object describing type, data, and styling options. It processes JSON chart specifications and outputs a base64-encoded PNG image string representing the visual chart. This allows embedding of chart visuals into server-generated reports, emails, or API responses.", + "category": "backend-development", + "parameters": [ + { + "name": "chartConfig", + "type": "object", + "description": "A comprehensive JSON object defining chart type, data series, labels, colors, and styling, following a standard charting schema like Chart.js config.", + "required": true, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "The width of the resulting chart image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "The height of the resulting chart image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Optional background color for the chart canvas, in any valid CSS color format.", + "required": false, + "defaultValue": "transparent" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a base64-encoded PNG image string of the rendered chart under the key 'imageBase64'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate chart images server-side from structured chart data and configurations, such as creating visual analytics for API responses, generating emails with inline charts, or producing report images without client-side rendering dependencies.", + "limitations": "Does not support interactive charts or animation; output is a static PNG image. The chartConfig must follow supported schema syntax; very complex or custom chart types may not render correctly.", + "examples": [ + "Generate a bar chart image from sales data JSON config.", + "Render a pie chart base64 image using provided data and colors.", + "Create a line chart PNG with specific width and transparent background." + ] + }, + "tags": [ + "backend-development", + "chart-rendering", + "image-generation", + "data-visualization", + "reporting", + "api", + "server-side" + ], + "examples": [ + { + "inputJson": "{\"chartConfig\":{\"type\":\"bar\",\"data\":{\"labels\":[\"Q1\",\"Q2\",\"Q3\",\"Q4\"],\"datasets\":[{\"label\":\"Sales\",\"data\":[15000,20000,18000,22000],\"backgroundColor\":\"#4287f5\"}]}},\"width\":800,\"height\":600,\"backgroundColor\":\"#ffffff\"}", + "description": "Render a bar chart illustrating quarterly sales with white background, size 800x600." + }, + { + "inputJson": "{\"chartConfig\":{\"type\":\"pie\",\"data\":{\"labels\":[\"Chrome\",\"Firefox\",\"Safari\"],\"datasets\":[{\"data\":[65,25,10],\"backgroundColor\":[\"#3366cc\",\"#dc3912\",\"#ff9900\"]}]}},\"width\":400,\"height\":400,\"backgroundColor\":\"transparent\"}", + "description": "Render a pie chart image for browser usage statistics, 400x400 px, transparent background." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Chart", + "context": null + } + }, + { + "name": "backend-development.composeChannel", + "description": "Creates a communication channel configuration for backend systems by accepting channel type, participants, and settings, then outputs a structured channel object for integration into messaging or event-driven architectures.", + "category": "backend-development", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of the communication channel such as 'websocket', 'event', or 'pubsub'.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant identifiers or service names that will use the channel.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "settings", + "type": "object", + "description": "Additional configuration settings specific to the channel type, e.g., protocols, security params, or filters.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isPersistent", + "type": "boolean", + "description": "Whether the channel should maintain persistent state across sessions.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxConnections", + "type": "number", + "description": "Maximum allowed concurrent connections for the channel if applicable.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object describing the composed channel with properties like channelId, channelType, participants, settings, and status." + }, + "aiAgent": { + "useCase": "Use this tool when constructing or configuring backend communication channels for messaging, event streams, or real-time interactions to generate a consistent channel configuration object for further deployment or orchestration.", + "limitations": "Does not establish or manage real-time connections; only builds configuration objects. Integration with actual communication protocols or middleware requires additional tools.", + "examples": [ + "Create a websocket channel for chat between user-service and notification-service with max 100 connections.", + "Compose an event channel for asynchronous order processing with persistence enabled.", + "Generate a pubsub channel configuration including participant services and custom security settings." + ] + }, + "tags": [ + "backend", + "communication", + "channel", + "configuration", + "messaging", + "event-driven", + "real-time" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"websocket\",\"participants\":[\"user-service\",\"notification-service\"],\"settings\":{\"protocol\":\"wss\",\"encryption\":\"TLS\"},\"isPersistent\":false,\"maxConnections\":100}", + "description": "Create a secure websocket channel with encryption and limited connections for user and notification services." + }, + { + "inputJson": "{\"channelType\":\"event\",\"participants\":[\"order-service\",\"payment-service\"],\"settings\":{\"eventFormat\":\"JSON\"},\"isPersistent\":true}", + "description": "Compose a persistent event channel between order and payment services using JSON event format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Channel", + "context": null + } + }, + { + "name": "backend-development.draftResume", + "description": "This tool generates a professional resume draft based on user inputs including personal information, work experience, education, skills, and optionally, a targeted job description. It processes structured input data and formats it into a clear, well-organized resume text output suitable for review and further editing.", + "category": "backend-development", + "parameters": [ + { + "name": "personalInfo", + "type": "object", + "description": "Object containing personal details such as name, contact info, and summary (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "Array of work experience entries, each with job title, company, dates, and description (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "Array of education entries, including degree, institution, graduation date (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "List of professional skills relevant to the resume (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetJobDescription", + "type": "string", + "description": "Optional job description or role to tailor the resume towards (not required).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section at the beginning of the resume (default true).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured text output containing the drafted resume, organized into sections: header, summary, experience, education, and skills." + }, + "aiAgent": { + "useCase": "Use this tool when needing to draft a concise, professional resume quickly from structured input data, especially useful in backend applications for recruitment systems or personal career management tools. It helps convert raw resume data into a well-formatted document draft ready for presentation or further editing.", + "limitations": "This tool does not perform grammar or spell checks beyond essential formatting and does not tailor style beyond generic professional norms. It cannot handle unstructured input such as freeform text resumes or optimize designs for visual layout or graphics.", + "examples": [ + "Generate a resume draft from a candidate's work history and education JSON data.", + "Create a resume tailored towards a software engineering job description, including key skills and experience.", + "Produce a plain text resume with summary and skills sections from structured personal data." + ] + }, + "tags": [ + "backend", + "resume", + "document-generation", + "career", + "hr", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"personalInfo\":{\"name\":\"Jane Doe\",\"contact\":\"jane.doe@example.com\",\"summary\":\"Experienced backend developer specializing in scalable REST APIs.\"},\"workExperience\":[{\"jobTitle\":\"Backend Developer\",\"company\":\"Tech Solutions\",\"startDate\":\"2019-05\",\"endDate\":\"2023-03\",\"description\":\"Developed microservices with Node.js and managed cloud infrastructure.\"}],\"education\":[{\"degree\":\"BSc Computer Science\",\"institution\":\"State University\",\"graduationDate\":\"2018\"}],\"skills\":[\"Node.js\",\"REST APIs\",\"AWS\",\"Docker\"],\"includeSummary\":true}", + "description": "Draft a resume for a backend developer with specified personal info, work experience, education, and skills including a summary section." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Resume", + "context": null + } + }, + { + "name": "backend-development.generateFAQ", + "description": "Generates a structured FAQ document based on a domain description or product details provided as input. It processes key topics, common questions, and relevant answers to produce a JSON or Markdown formatted FAQ that can be integrated into backend or API documentation.", + "category": "backend-development", + "parameters": [ + { + "name": "domainDescription", + "type": "string", + "description": "A detailed description of the product, service, or domain area for which the FAQ is generated. Required to extract relevant questions and answers.", + "required": true, + "defaultValue": "" + }, + { + "name": "commonQuestions", + "type": "array", + "description": "Optional list of common user questions to include or prioritize in the FAQ. If omitted, the tool generates questions automatically.", + "required": false, + "defaultValue": "" + }, + { + "name": "answerDetailLevel", + "type": "string", + "description": "Level of detail for answers: 'brief', 'medium', or 'detailed'. Determines the verbosity of generated answers.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "format", + "type": "string", + "description": "Output format of the FAQ document: 'json' for structured data or 'markdown' for documentation-ready text.", + "required": false, + "defaultValue": "json" + }, + { + "name": "maxEntries", + "type": "number", + "description": "Maximum number of FAQ entries to generate, to limit size of the output.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the FAQ content in the requested format; includes question-answer pairs structured as JSON or markdown string for documentation integration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a Frequently Asked Questions document from product or service descriptions to improve backend API documentation, onboarding materials, or help pages. It helps speed up FAQ creation by extracting and organizing relevant questions and answers.", + "limitations": "This tool may not accurately capture very specialized or niche questions without detailed domain input. It cannot verify the technical accuracy of answers beyond the input and its training data limitations.", + "examples": [ + "Generate a FAQ document for our new cloud storage API based on its feature list.", + "Create a markdown FAQ from service description about a payment gateway for backend docs.", + "Produce an FAQ JSON output listing typical developer questions for our REST API." + ] + }, + "tags": [ + "generation", + "backend", + "documentation", + "FAQ", + "API", + "content-creation" + ], + "examples": [ + { + "inputJson": "{ \"domainDescription\": \"Our product is a REST API for managing user profiles with authentication and permissions.\", \"answerDetailLevel\": \"medium\", \"format\": \"json\", \"maxEntries\": 5 }", + "description": "Generate a concise JSON formatted FAQ from a user profile management API description, limited to 5 entries." + }, + { + "inputJson": "{ \"domainDescription\": \"Payment processing service supporting credit cards and PayPal.\", \"format\": \"markdown\", \"answerDetailLevel\": \"detailed\" }", + "description": "Create a detailed markdown formatted FAQ based on a payment service description." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "FAQ", + "context": null + } + }, + { + "name": "backend-development.generateChangelog", + "description": "Generates a structured changelog document from a collection of versioned commits or release data. Accepts input as an array of commit objects or a git diff range, processes them to extract meaningful changes formatted by categories, and outputs a formatted changelog in markdown or JSON format suitable for release notes and documentation.", + "category": "backend-development", + "parameters": [ + { + "name": "commits", + "type": "array", + "description": "An array of commit objects containing message, type, scope, and description to include in the changelog.", + "required": false, + "defaultValue": "" + }, + { + "name": "fromVersion", + "type": "string", + "description": "The starting version or commit hash to determine the range of commits for the changelog generation.", + "required": false, + "defaultValue": "" + }, + { + "name": "toVersion", + "type": "string", + "description": "The ending version or commit hash for the commit range to generate the changelog.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output format for the changelog. Supported values are 'markdown' or 'json'.", + "required": true, + "defaultValue": "markdown" + }, + { + "name": "categoryMapping", + "type": "object", + "description": "Optional mapping of commit types (e.g., feat, fix) to changelog categories (e.g., Features, Bug Fixes) for customization.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMergeCommits", + "type": "boolean", + "description": "Flag to include or exclude merge commits in the changelog generation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted changelog as a string under 'content' and metadata such as version range and number of entries." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a professional and structured changelog document from commit history or release data, especially following semantic commit conventions, for use in release notes or project documentation.", + "limitations": "The tool relies on consistent commit message formats to categorize changes properly; it cannot interpret ambiguous or poorly structured commit messages.", + "examples": [ + "Generate a markdown changelog for commits between v1.0.0 and v1.1.0.", + "Create a JSON changelog from a provided array of commit objects.", + "Produce a changelog including merge commits with customized category mappings." + ] + }, + "tags": [ + "backend-development", + "changelog", + "release-notes", + "versioning", + "documentation", + "git", + "automation" + ], + "examples": [ + { + "inputJson": "{\"fromVersion\":\"v1.0.0\",\"toVersion\":\"v1.2.0\",\"format\":\"markdown\"}", + "description": "Generate a markdown formatted changelog for all commits between versions v1.0.0 and v1.2.0." + }, + { + "inputJson": "{\"commits\":[{\"type\":\"feat\",\"scope\":\"api\",\"description\":\"add user authentication endpoint\"},{\"type\":\"fix\",\"scope\":\"db\",\"description\":\"correct transaction rollback issue\"}],\"format\":\"json\"}", + "description": "Generate a JSON formatted changelog from a given array of commit objects describing features and fixes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Changelog", + "context": null + } + }, + { + "name": "web-development.analyzeSession", + "description": "Analyzes website user session data to extract user behavior patterns, session durations, page navigation paths, and interaction metrics. Accepts raw session logs or structured session data as input, processes the events chronologically per session, and outputs aggregated statistics and visualizable insights such as average session time, bounce rates, and conversion funnels.", + "category": "web-development", + "parameters": [ + { + "name": "sessionData", + "type": "array", + "description": "An array of session events or raw logs representing user interactions during sessions. Each event should include timestamp, session ID, user ID, page/actions.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "object", + "description": "Optional start and end timestamps to filter sessions within a specific period.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeInteractionDetails", + "type": "boolean", + "description": "Flag to include detailed event-level interaction summaries in the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "minSessionDuration", + "type": "number", + "description": "Minimum session duration in seconds to consider a session valid and include in analysis.", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format type: 'summary' for aggregated stats, 'detailed' for event-level data plus stats.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated session analytics including total sessions analyzed, average session duration, page visit frequencies, user engagement metrics, bounce rate, and optionally detailed session event summaries." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or structured session logs from a website and you want to derive meaningful insights about user behavior, engagement, and session quality over a given period. This aids in optimizing UX, identifying drop-off points, and tracking conversion funnels.", + "limitations": "This tool analyzes session data only and does not track real-time sessions or provide predictive analytics. It expects well-structured input data and cannot correct malformed logs.", + "examples": [ + "Analyze session logs from the last week to identify average session durations and bounce rates.", + "Get detailed user interaction events for sessions longer than 5 minutes for further behavioral analysis.", + "Summarize session activities filtered between two dates, outputting a concise overview of page visit distributions." + ] + }, + "tags": [ + "web", + "session", + "analytics", + "user-behavior", + "engagement", + "interaction", + "conversion", + "traffic" + ], + "examples": [ + { + "inputJson": "{\"sessionData\":[{\"sessionId\":\"abc123\",\"userId\":\"user1\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"page\":\"/home\",\"event\":\"pageview\"},{\"sessionId\":\"abc123\",\"userId\":\"user1\",\"timestamp\":\"2024-06-01T10:05:00Z\",\"page\":\"/product\",\"event\":\"click\"},{\"sessionId\":\"def456\",\"userId\":\"user2\",\"timestamp\":\"2024-06-01T11:00:00Z\",\"page\":\"/home\",\"event\":\"pageview\"}],\"timeWindow\":{\"start\":\"2024-06-01T00:00:00Z\",\"end\":\"2024-06-02T00:00:00Z\"},\"includeInteractionDetails\":true,\"minSessionDuration\":60,\"outputFormat\":\"detailed\"}", + "description": "Detailed analysis of two sessions with filtering by one day window and minimum session duration 60 seconds, including detailed event interaction." + }, + { + "inputJson": "{\"sessionData\":[{\"sessionId\":\"xyz789\",\"userId\":\"user3\",\"timestamp\":\"2024-06-10T09:00:00Z\",\"page\":\"/landing\",\"event\":\"pageview\"}],\"includeInteractionDetails\":false,\"outputFormat\":\"summary\"}", + "description": "Summary statistics for a single short session without detailed interactions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "web-development.analyzeThreat", + "description": "Analyzes potential security threats within a website by scanning input threat data such as URLs, scripts, or network activity logs. It performs pattern recognition, vulnerability correlation, and risk assessment to classify threat severity and recommend mitigation steps. Outputs a detailed report with findings, threat levels, and remediation guidance.", + "category": "web-development", + "parameters": [ + { + "name": "threatData", + "type": "string", + "description": "Raw input data representing the potential threat, e.g., suspect URLs, script code, or network logs to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of detail for the analysis: 'basic', 'detailed', or 'full'. Determines thoroughness and resource usage.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Flag to include recommended mitigation steps for identified threats in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "context", + "type": "object", + "description": "Additional context information about the website environment (e.g., software versions, deployed modules) to improve analysis accuracy.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object detailing detected threats with severity levels, descriptions, affected components, and recommended mitigations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate and classify security threats related to web content or network activity, assisting in proactive threat detection and prioritizing responses during web security assessments.", + "limitations": "Cannot perform active exploitation or penetration testing; relies on provided data and known threat patterns. May not detect zero-day threats or novel attack vectors without updated threat intelligence.", + "examples": [ + "Identify and classify threats in suspicious JavaScript code snippets.", + "Analyze given URL lists for potential injection or phishing risks.", + "Provide a security threat assessment report based on website activity logs." + ] + }, + "tags": [ + "security", + "web-development", + "threat-analysis", + "vulnerability-assessment", + "risk-management" + ], + "examples": [ + { + "inputJson": "{\"threatData\":\"\",\"analysisDepth\":\"detailed\",\"includeMitigation\":true}", + "description": "Analyzing suspicious JavaScript code containing obfuscated eval calls." + }, + { + "inputJson": "{\"threatData\":\"http://example.com/login.php?user=admin' OR '1'='1\",\"analysisDepth\":\"basic\",\"includeMitigation\":false}", + "description": "Check a URL suspected of SQL injection attack attempt without mitigation recommendations." + }, + { + "inputJson": "{\"threatData\":\"[{\\\"ip\\\": \\\"192.168.1.100\\\", \\\"action\\\": \\\"failed_login\\\", \\\"timestamp\\\": \\\"2024-06-01T12:30:00Z\\\"}]\",\"context\":{\"softwareVersion\":\"v3.2.1\"},\"analysisDepth\":\"full\",\"includeMitigation\":true}", + "description": "Analyze network logs with failed login attempts plus website context for a comprehensive threat report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "web-development.analyzeIncident", + "description": "Analyzes website security incident data by processing logs, alerts, and incident reports to identify attack vectors, affected components, and potential mitigations. Accepts structured incident details as input and outputs a detailed analysis with root cause, risk assessment, and recommended responses.", + "category": "web-development", + "parameters": [ + { + "name": "incidentId", + "type": "string", + "description": "Unique identifier of the incident to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "logData", + "type": "string", + "description": "Raw logs related to the incident, such as server, firewall, or application logs.", + "required": false, + "defaultValue": "" + }, + { + "name": "alertSummary", + "type": "string", + "description": "Summary of security alerts triggered by the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "incidentReport", + "type": "string", + "description": "Detailed report describing the incident context, timeline, and observations.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation and prevention steps in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis result including identified attack vectors, affected components, root cause summary, risk level, and optional mitigation strategies." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand and summarize a website security incident from provided data, to assist with forensic analysis, impact assessment, and mitigation planning. It helps convert raw incident data into actionable insights and recommendations.", + "limitations": "Cannot perform live data capture or direct remediation actions; analysis quality depends on completeness and accuracy of input data. Does not replace security expert judgment.", + "examples": [ + "Analyze web attack incident given server and firewall logs", + "Summarize root cause of a recent intrusion from incident report and alert data", + "Provide mitigation recommendations based on detailed incident information" + ] + }, + "tags": [ + "security", + "incident analysis", + "web development", + "forensics", + "risk assessment", + "mitigation" + ], + "examples": [ + { + "inputJson": "{\"incidentId\":\"INC12345\",\"logData\":\"[INFO] 2024-06-01T12:30:00Z Login failed for user admin from IP 192.168.1.100\\n[WARN] 2024-06-01T12:31:00Z Multiple failed login attempts detected\\n[ERROR] 2024-06-01T12:32:00Z Possible SQL injection attack detected on /login endpoint\",\"alertSummary\":\"Multiple login attempts triggered brute force alert\",\"incidentReport\":\"At noon, unauthorized access attempts were detected. Attackers attempted brute force login followed by SQL injection on login form.\",\"includeMitigation\":true}", + "description": "Analyze a brute force and SQL injection web attack incident using logs, alerts, and incident report to identify root cause and suggest mitigation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "web-development.uploadCSV", + "description": "Uploads a CSV file to a specified web server endpoint, optionally including authentication headers, and returns the server's response. Accepts CSV content as a string or file path, sends it via HTTP POST, and processes the JSON or text response for confirmation or error handling.", + "category": "web-development", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The CSV data as a string to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local file path to the CSV file to be uploaded. If provided, csvContent is ignored.", + "required": false, + "defaultValue": "" + }, + { + "name": "uploadUrl", + "type": "string", + "description": "The URL of the server endpoint to which the CSV data will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token to include in the request headers for secured endpoints.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalHeaders", + "type": "object", + "description": "Additional HTTP headers as key-value pairs to include in the upload request.", + "required": false, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "The content type of the upload. Defaults to 'text/csv'.", + "required": false, + "defaultValue": "text/csv" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for the upload request to complete before failing.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the success status, server response data, and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically upload CSV data to a web service or endpoint, such as importing bulk user data, updating datasets, or submitting CSV reports to a backend system. It handles authentication and customizable headers, accommodating web-development automation that involves data integration via CSV uploads.", + "limitations": "Cannot automatically parse or validate CSV content structure; relies on provided CSV being correctly formatted. Does not support multipart/form-data uploads with other file types or complex form data.", + "examples": [ + "Upload inventory CSV to remote data API with auth token.", + "Submit user data CSV file from disk to a secure endpoint with custom headers.", + "Send CSV content string to a cloud-based CSV processing endpoint and retrieve status." + ] + }, + "tags": [ + "upload", + "csv", + "web-development", + "http", + "api", + "file-upload", + "automation" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"name,email\\nJohn Doe,john@example.com\\nJane Smith,jane@example.com\",\"uploadUrl\":\"https://api.example.com/upload-csv\",\"authToken\":\"Bearer abc123token\"}", + "description": "Uploading CSV content string with auth token to a REST API endpoint." + }, + { + "inputJson": "{\"filePath\":\"/tmp/data.csv\",\"uploadUrl\":\"https://fileserver.example.org/upload\",\"additionalHeaders\":{\"X-Custom-Header\":\"value\"}}", + "description": "Uploading CSV file from local disk with additional custom HTTP headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "web-development.generateTrend", + "description": "Generates trend analytics from website traffic data by analyzing visitor counts, pageviews, and user engagement over specified time periods. Accepts raw traffic logs or aggregated metrics, processes statistical trends, and outputs summarized trend reports highlighting growth, decline, and peak activity intervals.", + "category": "web-development", + "parameters": [ + { + "name": "trafficData", + "type": "array", + "description": "Array of traffic data objects, each representing visits with timestamps and relevant metrics (e.g., pageviews).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) for trend analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) for trend analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of traffic metrics to analyze (e.g., ['visits', 'pageviews', 'bounceRate']).", + "required": false, + "defaultValue": "[\"visits\"]" + }, + { + "name": "aggregationPeriod", + "type": "string", + "description": "Time interval for data aggregation (e.g., 'daily', 'weekly', 'monthly').", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeForecast", + "type": "boolean", + "description": "Whether to generate forecasted trend data based on current patterns.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing trend summaries for each metric, including period aggregates, growth rates, peak activity periods, and optional forecasts." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze, summarize, and visualize website traffic or user engagement trends over time to inform marketing, content, or development decisions. Useful for detecting growth patterns, seasonal effects, or declines in metrics at various aggregation intervals.", + "limitations": "This tool does not process raw server logs directly and requires pre-parsed or structured traffic data. It cannot identify causal factors behind trends or handle real-time streaming data.", + "examples": [ + "Generate weekly visit and pageview trends for the past six months from raw traffic data.", + "Analyze monthly bounce rate trends over the last year to detect user engagement changes.", + "Produce a daily trend report with forecast on visits and pageviews for the last 30 days." + ] + }, + "tags": [ + "web-development", + "analytics", + "trend-analysis", + "traffic-data", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"trafficData\":[{\"timestamp\":\"2024-01-01T00:00:00Z\",\"visits\":120,\"pageviews\":300},{\"timestamp\":\"2024-01-02T00:00:00Z\",\"visits\":135,\"pageviews\":320}],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"metrics\":[\"visits\",\"pageviews\"],\"aggregationPeriod\":\"daily\",\"includeForecast\":false}", + "description": "Analyze daily visits and pageviews for January 2024 without forecast." + }, + { + "inputJson": "{\"trafficData\":[{\"timestamp\":\"2023-06-01T00:00:00Z\",\"visits\":200,\"bounceRate\":0.45},{\"timestamp\":\"2023-07-01T00:00:00Z\",\"visits\":250,\"bounceRate\":0.40}],\"startDate\":\"2023-06-01\",\"endDate\":\"2023-12-31\",\"metrics\":[\"visits\",\"bounceRate\"],\"aggregationPeriod\":\"monthly\",\"includeForecast\":true}", + "description": "Generate monthly visit and bounce rate trends with forecast for the last half of 2023." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "web-development.generateSession", + "description": "Generates a detailed user session record for web analytics by processing input parameters such as userId, timestamp, pageViews, and optional metadata. It constructs a session object capturing user navigation behavior, session duration, and engagement metrics, outputting a JSON object for analysis or storage.", + "category": "web-development", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user whose session is being generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp indicating when the session started.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 timestamp indicating when the session ended.", + "required": true, + "defaultValue": "" + }, + { + "name": "pageViews", + "type": "array", + "description": "Array of page view objects, each containing url and timestamp representing pages visited during the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional object containing additional session metadata such as device info, browser, or location.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a session analytics object summarizing the user session with userId, duration in seconds, totalPagesVisited, detailed pageViews array, and any passed metadata." + }, + "aiAgent": { + "useCase": "Use when needing to construct or simulate a user's browsing session on a website for analytics, behavior tracking, or testing session data ingestion pipelines. Useful for generating consistent session data for reporting or feeding into analytic systems.", + "limitations": "Does not track real-time user interaction events beyond page view times. Requires accurate timestamps and page view data input. Does not generate real user behavior patterns synthetically.", + "examples": [ + "Generate a session for user '12345' from 9am to 9:30am with 5 page views.", + "Create a detailed session object including user's device metadata and page visit timings.", + "Construct a session summary for analytics with total duration and page count." + ] + }, + "tags": [ + "web", + "analytics", + "session", + "user-behavior", + "tracking", + "data-generation" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"user123\",\"startTime\":\"2024-06-01T09:00:00Z\",\"endTime\":\"2024-06-01T09:15:00Z\",\"pageViews\":[{\"url\":\"/home\",\"timestamp\":\"2024-06-01T09:00:30Z\"},{\"url\":\"/products\",\"timestamp\":\"2024-06-01T09:05:00Z\"},{\"url\":\"/cart\",\"timestamp\":\"2024-06-01T09:10:00Z\"}],\"metadata\":{\"device\":\"mobile\",\"browser\":\"Chrome\"}}", + "description": "Generating a user session starting at 9am, ending at 9:15am with 3 page views and device/browser metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeAnomaly", + "description": "Analyzes input time-series or event log data to detect and localize anomalies using statistical and machine learning techniques. Accepts data in structured array or object format, applies anomaly detection algorithms, and outputs detected anomaly intervals with scores and potential root cause indicators.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Time-series or event log data as an array of objects with timestamps and metric values to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "Name of the field in data objects representing the timestamp. Defaults to 'timestamp'.", + "required": false, + "defaultValue": "\"timestamp\"" + }, + { + "name": "valueFields", + "type": "array", + "description": "List of numeric field names in data to analyze for anomalies. If empty, all numeric fields are used.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "algorithm", + "type": "string", + "description": "Anomaly detection algorithm to use: 'statistical', 'isolationForest', or 'lstm'. Default is 'statistical'.", + "required": false, + "defaultValue": "\"statistical\"" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity of anomaly detection on scale 0 to 1; higher means more anomalies detected. Default is 0.5.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "windowSize", + "type": "number", + "description": "Window size for computing local statistics or sequence steps, expressed in number of data points. Default is 10.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeRootCause", + "type": "boolean", + "description": "Whether to attempt to identify root cause factors correlated with anomalies. Default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with detected anomalies listed per value field, each including start/end timestamps, anomaly scores, and optional root cause indicators if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you have time-series or logged event data from automated workflows, systems, or processes and want to identify unusual patterns or failures automatically. It helps detect unexpected deviations indicative of workflow errors, performance issues, or security breaches, aiding in proactive incident management.", + "limitations": "Cannot guarantee perfect anomaly classification and may produce false positives or negatives depending on data quality. Root cause analysis is approximate and limited to correlation analysis within provided fields. Not designed for unstructured text or image anomaly detection.", + "examples": [ + "Identify anomalies in nightly batch job execution times to detect performance regressions.", + "Analyze sensor data stream from automated manufacturing equipment to catch abnormal operating conditions early.", + "Detect unusual spikes or drops in API response time logs to alert on potential service degradations." + ] + }, + "tags": [ + "automation", + "anomaly-detection", + "time-series", + "monitoring", + "analysis", + "machine-learning", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-06-01T00:00:00Z\",\"cpuUsage\":30,\"memoryUsage\":40},{\"timestamp\":\"2024-06-01T00:01:00Z\",\"cpuUsage\":90,\"memoryUsage\":42},{\"timestamp\":\"2024-06-01T00:02:00Z\",\"cpuUsage\":28,\"memoryUsage\":39}],\"timestampField\":\"timestamp\",\"valueFields\":[\"cpuUsage\"],\"algorithm\":\"statistical\",\"sensitivity\":0.7,\"windowSize\":2,\"includeRootCause\":false}", + "description": "Detect CPU usage anomalies over a 3-minute time-series sample with statistical method." + }, + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"responseTime\":120,\"errorRate\":0.01},{\"timestamp\":\"2024-06-01T12:01:00Z\",\"responseTime\":2500,\"errorRate\":0.2},{\"timestamp\":\"2024-06-01T12:02:00Z\",\"responseTime\":130,\"errorRate\":0.02}],\"valueFields\":[\"responseTime\",\"errorRate\"],\"algorithm\":\"isolationForest\",\"sensitivity\":0.8,\"includeRootCause\":true}", + "description": "Analyze API response time and error rate anomalies with root cause hints using isolation forest method." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeQuote", + "description": "Analyzes textual quotes by extracting key sentiments, themes, and metadata such as author, source, and date if provided. Accepts a quote text string and optional context. Outputs a structured analysis including sentiment scores, identified themes, and metadata details to support further automation or content processing workflows.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The textual content of the quote to analyze for themes, sentiment and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name of the quote to include as metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Optional source or origin where the quote was taken from.", + "required": false, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Optional date associated with the quote, formatted as ISO 8601 string (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the quote text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "themeKeywords", + "type": "array", + "description": "Optional list of keywords to help detect relevant themes in the quote.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original quote text, extracted metadata (author, source, date), sentiment scores (positive, negative, neutral), and an array of detected themes or topics." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically analyze quotes for their sentiment, themes, and contextual metadata. This supports workflows like content curation, summarization, or decision-making automation where understanding quote meaning and origin is essential.", + "limitations": "The tool relies on accurate input text and may not identify highly nuanced meanings or sarcasm. It cannot verify the authenticity of metadata fields such as author or source if provided incorrectly.", + "examples": [ + "Analyze the sentiment and themes of a motivational quote.", + "Extract metadata and detect themes from a historical quote.", + "Determine the emotional tone of a user-provided quote with optional author info." + ] + }, + "tags": [ + "automation", + "analysis", + "quote", + "sentiment", + "themes", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"author\":\"Franklin D. Roosevelt\",\"source\":\"Speech\",\"date\":\"1945-04-13\",\"includeSentiment\":true}", + "description": "Analyze a famous inspirational quote including sentiment and metadata." + }, + { + "inputJson": "{\"quoteText\":\"In the middle of difficulty lies opportunity.\",\"includeSentiment\":true,\"themeKeywords\":[\"difficulty\",\"opportunity\",\"challenge\"]}", + "description": "Analyze a quote to detect specified themes and sentiment without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeConversion", + "description": "This tool analyzes conversion data from automation workflows to evaluate performance metrics such as conversion rates, funnel drop-offs, and time-to-conversion. It accepts structured event logs or tracked user actions as input, processes them to identify conversion patterns, and outputs detailed analytics reports with actionable insights.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "conversionEvents", + "type": "array", + "description": "An array of events representing conversion-related user actions with timestamps and identifiers.", + "required": true, + "defaultValue": "" + }, + { + "name": "funnelSteps", + "type": "array", + "description": "An ordered list of funnel step names defining the expected conversion path.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes to consider the events for conversion analysis.", + "required": false, + "defaultValue": "60" + }, + { + "name": "groupBy", + "type": "string", + "description": "Field name to group conversion metrics by (e.g., userId, campaignId).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDropOffAnalysis", + "type": "boolean", + "description": "Whether to calculate detailed drop-off rates between funnel steps.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analytics report object including overall conversion rate, step-wise conversion rates, drop-off statistics, average time to convert, and grouped summaries if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when automating the evaluation of automated workflows involving user actions or campaigns to understand how effectively these workflows convert users or items through defined steps. Ideal for measuring funnel performance and identifying bottlenecks in automations.", + "limitations": "This tool requires well-structured input data with clear event and timestamp fields. It does not perform event data collection or cleaning and cannot infer funnel steps automatically.", + "examples": [ + "Analyze the conversion rate for an email campaign funnel using tracked user click and signup events.", + "Calculate drop-off points and average conversion time for an e-commerce checkout automation.", + "Group conversion metrics by marketing channel to assess performance across segments." + ] + }, + "tags": [ + "analytics", + "automation", + "conversion", + "funnel-analysis", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"conversionEvents\":[{\"userId\":\"u1\",\"event\":\"page_view\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"userId\":\"u1\",\"event\":\"add_to_cart\",\"timestamp\":\"2024-05-01T10:05:00Z\"},{\"userId\":\"u1\",\"event\":\"purchase\",\"timestamp\":\"2024-05-01T10:10:00Z\"},{\"userId\":\"u2\",\"event\":\"page_view\",\"timestamp\":\"2024-05-01T11:00:00Z\"},{\"userId\":\"u2\",\"event\":\"add_to_cart\",\"timestamp\":\"2024-05-01T11:20:00Z\"}],\"funnelSteps\":[\"page_view\",\"add_to_cart\",\"purchase\"],\"timeWindowMinutes\":60,\"groupBy\":\"userId\",\"includeDropOffAnalysis\":true}", + "description": "Analyze a simple e-commerce checkout funnel to measure conversion rates and drop-offs per user over 60 minutes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeChannel", + "description": "Analyzes communication channels such as email threads, chat rooms, or messaging platforms by processing message histories and metadata to extract key insights like participation levels, sentiment trends, topic distribution, and engagement patterns. The tool accepts channel data and configuration parameters, then outputs a summary report with analytics metrics and visualizable data.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "channelType", + "type": "string", + "description": "Type of communication channel to analyze (e.g., 'email', 'slack', 'teams', 'discord').", + "required": true, + "defaultValue": "" + }, + { + "name": "channelData", + "type": "array", + "description": "Array of message objects containing message text, sender ID, timestamp, and optional metadata to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object with 'start' and 'end' ISO 8601 datetime strings to limit analysis to a specific period.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag to include sentiment analysis on messages (true to enable).", + "required": false, + "defaultValue": "false" + }, + { + "name": "aggregateBy", + "type": "string", + "description": "Granularity for aggregation: 'daily', 'weekly', 'monthly', or 'none'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "topNTopics", + "type": "number", + "description": "Number of top topics to extract and report from message contents.", + "required": false, + "defaultValue": "5" + }, + { + "name": "excludeBots", + "type": "boolean", + "description": "Whether to exclude messages sent by bot or automated accounts from analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object including participation statistics, topic modeling summary, sentiment trends (if enabled), message frequency data visualized by chosen aggregation, and metadata summaries." + }, + "aiAgent": { + "useCase": "Use this tool when needing to obtain actionable insights from communication channel data to understand user engagement, popular discussion topics, sentiment evolution, or activity patterns for workflow optimization or reporting purposes. Particularly useful for project managers, community managers, or automated workflow orchestrators monitoring team or community interactions.", + "limitations": "This tool requires structured message data input and cannot access or scrape channel data autonomously. It does not transcribe voice/video content and may have limited accuracy if message metadata is incomplete or inconsistent.", + "examples": [ + "Analyze the engagement and sentiment trends on the #general Slack channel over the past month.", + "Generate a summary report of topics and participation in an email thread for the last quarter.", + "Provide daily message counts and sentiment analysis for a Discord channel excluding bot messages." + ] + }, + "tags": [ + "automation", + "communication", + "channel analysis", + "sentiment", + "topic modeling", + "workflow", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"channelType\":\"slack\",\"channelData\":[{\"senderId\":\"U123\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"text\":\"Project kickoff meeting scheduled.\"},{\"senderId\":\"U456\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"text\":\"Looking forward to it!\"}],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"includeSentimentAnalysis\":true,\"aggregateBy\":\"weekly\",\"topNTopics\":3,\"excludeBots\":true}", + "description": "Analyze Slack channel messages from May 2024 with sentiment analysis and weekly aggregation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeExpense", + "description": "Analyzes business expense data provided as structured input, categorizing expenses, identifying trends, detecting anomalies such as unusually high or recurring charges, and summarizing total spend by categories and time periods. Outputs a detailed report with actionable insights to help optimize expense management.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "expenseData", + "type": "array", + "description": "Array of expense records, each with fields like amount, date, category, vendor, and description. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date string (ISO 8601) to filter expenses from. Optional, defaults to earliest date.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date string (ISO 8601) to filter expenses up to. Optional, defaults to latest date.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD) to normalize or present amounts. Optional, default is as provided in data.", + "required": false, + "defaultValue": "" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable detection of anomalous expense patterns such as spikes or duplicates. Default true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "categoryMapping", + "type": "object", + "description": "Optional mapping object to standardize or override categories for expenses. Key: original category, Value: standardized category.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing category-wise totals, trend data over time, anomaly list with details, and summary statistics like total spend and average expense amount." + }, + "aiAgent": { + "useCase": "Use this tool to process and analyze business or personal expense data when you need insights into spending patterns, cost saving opportunities, or suspect irregular transactions. It helps automate finance operations by summarizing large expense datasets and highlighting key actionable observations.", + "limitations": "Cannot perform real-time expense tracking or connect to external bank APIs to fetch data. It relies solely on provided structured expense data. Currency conversion rates are not dynamically retrieved and must be pre-processed.", + "examples": [ + "Analyze company expenses for Q1 2024 to identify cost-saving opportunities.", + "Detect anomalies in monthly credit card expenses over the last year.", + "Summarize vendor-wise spending and category trends from uploaded expense reports." + ] + }, + "tags": [ + "automation", + "expense", + "finance", + "analysis", + "cost-management", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"expenseData\":[{\"amount\":120.50,\"date\":\"2024-03-15\",\"category\":\"Travel\",\"vendor\":\"Airway Co.\",\"description\":\"Flight ticket to conference\"},{\"amount\":15.00,\"date\":\"2024-03-16\",\"category\":\"Meals\",\"vendor\":\"Cafe Delight\",\"description\":\"Lunch with client\"},{\"amount\":499.99,\"date\":\"2024-03-20\",\"category\":\"Software\",\"vendor\":\"TechSoft\",\"description\":\"Annual license fee\"}],\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"detectAnomalies\":true}", + "description": "Analyze March 2024 expenses to find totals, categorize spending, and spot irregular charges." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "automation-frameworks.analyzeYAML", + "description": "Analyzes YAML documents by parsing their structure, validating against optional schemas, and extracting key metrics like node counts, nesting depth, and presence of specific keys. Accepts YAML content as a string input and outputs a detailed analysis report as a JSON object.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML content as a string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the YAML content against a provided JSON Schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schema", + "type": "object", + "description": "A JSON Schema object to validate the YAML content against, required if validateSchema is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "extractKeys", + "type": "array", + "description": "List of YAML keys to check for presence and extract values if available.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results such as total node count, maximum nesting depth, key presence map for extracted keys, schema validation result, and any parsing errors." + }, + "aiAgent": { + "useCase": "Use this tool when needing detailed analysis of YAML files within automation workflows, such as verifying configuration files, detecting structural complexity, or ensuring presence of mandatory keys. It helps agents understand YAML content structure and validity programmatically.", + "limitations": "Cannot fix YAML syntax errors or generate schemas. Validation requires a correctly formatted JSON Schema. Large or deeply nested YAML files may impact performance.", + "examples": [ + "Analyze YAML content to get structure metrics and key presence.", + "Validate YAML against a given schema and report errors.", + "Extract specific keys from YAML and summarize their presence." + ] + }, + "tags": [ + "automation", + "YAML", + "analysis", + "validation", + "configuration", + "parsing", + "schema" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"application:\\n name: MyApp\\n version: 1.0\\nenv:\\n - dev\\n - prod\",\"validateSchema\":false,\"schema\":{},\"extractKeys\":[\"application.name\",\"env\"]", + "description": "Analyze basic YAML content without schema validation, check presence of 'application.name' and 'env' keys." + }, + { + "inputJson": "{\"yamlContent\":\"database:\\n host: localhost\\n port: 5432\\nlogging:\\n level: debug\",\"validateSchema\":true,\"schema\":{\"type\":\"object\",\"properties\":{\"database\":{\"type\":\"object\",\"properties\":{\"host\":{\"type\":\"string\"},\"port\":{\"type\":\"number\"}}},\"logging\":{\"type\":\"object\",\"properties\":{\"level\":{\"type\":\"string\"}}}},\"required\":[\"database\",\"logging\"]},\"extractKeys\":[\"database.host\",\"logging.level\"]}", + "description": "Analyze YAML content with JSON Schema validation, verifying required properties and extracting specific keys." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "automation-frameworks.sendThread", + "description": "Sends a communication thread containing multiple messages to specified recipients via supported channels (e.g., email, chat). Accepts input including thread subject, array of messages with metadata, recipient info, and optional priority. Processes messages sequentially and returns delivery status for each recipient and message.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "threadSubject", + "type": "string", + "description": "Subject or title of the thread to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "Array of message objects comprising the thread; each message includes content, sender info, timestamp, and optional attachments.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "Array of recipient identifiers (emails, user IDs) who will receive the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the thread delivery (e.g., normal, high).", + "required": false, + "defaultValue": "normal" + }, + { + "name": "channel", + "type": "string", + "description": "Communication channel to use for sending (e.g., email, slack, sms).", + "required": true, + "defaultValue": "email" + }, + { + "name": "notify", + "type": "boolean", + "description": "Flag indicating whether to send notifications to recipients beyond the message delivery.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall success status, delivery details per recipient and message, and any errors encountered." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically send a full conversation thread or multi-message communication to one or more recipients via automated workflows. It is ideal for automation agents tasked with forwarding conversation history or batch messages consistently and reliably across communication channels.", + "limitations": "It does not support live message updates once sent or interactive real-time chat. Attachments must be pre-encoded and supported by the target channel. Delivery depends on channel availability and recipient address validity.", + "examples": [ + "Send a support conversation thread to a customer via email.", + "Deliver multi-message announcement to team members on Slack channel.", + "Forward a chat transcript to compliance officers with high priority notifications." + ] + }, + "tags": [ + "automation", + "communication", + "thread", + "messaging", + "email", + "chat", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"threadSubject\":\"Monthly Report Discussion\",\"messages\":[{\"content\":\"Hi team, please review the attached monthly report.\",\"sender\":\"manager@example.com\",\"timestamp\":\"2024-04-01T09:00:00Z\"},{\"content\":\"Looks good to me.\",\"sender\":\"analyst@example.com\",\"timestamp\":\"2024-04-01T09:10:00Z\"}],\"recipients\":[\"team@example.com\"],\"priority\":\"normal\",\"channel\":\"email\",\"notify\":true}", + "description": "Send a two-message email thread about a monthly report to the whole team with normal priority and notifications enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "automation-frameworks.sendReply", + "description": "Sends a reply message to a specified communication channel or system. Accepts input parameters defining the recipient, message content, optional attachments, and message metadata. Processes and formats the reply accordingly, then dispatches it. Returns a status object confirming success or detailing errors.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Identifier of the user or channel to whom the reply is sent", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "Text content of the reply message", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional array of attachment objects (e.g., files, images) to include with the reply", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyToMessageId", + "type": "string", + "description": "Optional identifier of the original message to which this is a reply, for threading", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message (e.g., normal, high)", + "required": false, + "defaultValue": "\"normal\"" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata (e.g., tags, timestamps) associated with the reply", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing status ('success' or 'error') and details such as messageId if successful or error information if failed" + }, + "aiAgent": { + "useCase": "Use this tool when the agent needs to programmatically send replies in communication workflows, such as responding to user messages in chatbots, support ticket systems, or internal communications platforms. It supports including attachments, maintaining conversation threads, and setting message priorities, enabling automation of common reply scenarios.", + "limitations": "This tool does not handle message composition semantics or natural language generation; it requires preformatted message content. It cannot guarantee delivery beyond submission to the communication system, and does not support real-time conversational context interpretation.", + "examples": [ + "Send a thank-you reply to a customer support ticket with a PDF attachment.", + "Respond to a chat message referencing the original message ID to maintain thread context.", + "Send a high priority notification reply in an internal messaging channel." + ] + }, + "tags": [ + "automation", + "communication", + "reply", + "message", + "workflow", + "channel", + "attachment", + "priority" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user123\",\"messageContent\":\"Thank you for reaching out! Please see the attached document.\",\"attachments\":[{\"type\":\"file\",\"name\":\"guide.pdf\",\"url\":\"https://example.com/guide.pdf\"}],\"replyToMessageId\":\"msg789\",\"priority\":\"normal\"}", + "description": "Send a reply message with an attached PDF document in response to a specific message." + }, + { + "inputJson": "{\"recipientId\":\"channel456\",\"messageContent\":\"The server maintenance is complete.\",\"priority\":\"high\"}", + "description": "Send a high priority notification to a channel without attachments or threading." + }, + { + "inputJson": "{\"recipientId\":\"user789\",\"messageContent\":\"We have received your request and will get back shortly.\"}", + "description": "Send a simple text reply to a user with default priority and no attachments." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "automation-frameworks.uploadVideo", + "description": "Uploads a video file to a specified online platform or storage service. Accepts video file path or URL input, optional metadata like title and description, and authentication credentials. Performs file validation and uploads the video, returning the upload status and video access URL if successful.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local file system path to the video file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "Target platform to upload the video to (e.g., YouTube, Vimeo, S3).", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the video to set upon upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Description text for the video metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords for categorizing the video.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "privacyStatus", + "type": "string", + "description": "Privacy setting for the video, e.g., public, private, unlisted.", + "required": false, + "defaultValue": "public" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key for the target platform.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success boolean, uploaded video URL if successful, and message describing any error or status." + }, + "aiAgent": { + "useCase": "This tool is useful when automating workflows that require programmatic video uploads, such as content pipelines, scheduled publishing, or backend video management. It abstracts platform-specific upload details and handles authentication and metadata setting.", + "limitations": "It does not transcode or modify video content. Upload success depends on correct credentials and platform API availability. Some platforms may require additional configuration or scopes not handled automatically.", + "examples": [ + "Upload a video file to YouTube with a public privacy setting and basic metadata.", + "Upload a recorded webinar video to Vimeo setting tags for easier search.", + "Upload a training video to AWS S3 with a given auth token for internal use." + ] + }, + "tags": [ + "automation", + "video upload", + "media", + "content management", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/tutorial.mp4\",\"platform\":\"YouTube\",\"title\":\"Automation Tutorial\",\"description\":\"Step by step guide to automation.\",\"tags\":[\"automation\",\"tutorial\"],\"privacyStatus\":\"public\",\"authToken\":\"ya29.a0AfH6SMA...\"}", + "description": "Upload a tutorial video to YouTube as public with tags and description." + }, + { + "inputJson": "{\"videoFilePath\":\"/data/events/webinar.mov\",\"platform\":\"Vimeo\",\"title\":\"Monthly Webinar\",\"description\":\"Recorded webinar session.\",\"tags\":[\"webinar\",\"monthly\"],\"privacyStatus\":\"unlisted\",\"authToken\":\"abcd1234vimeo\"}", + "description": "Upload a webinar video to Vimeo as unlisted with metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "automation-frameworks.downloadVideo", + "description": "Downloads a video file from a specified URL, optionally selecting format and quality. Accepts video URL and optional parameters for output path, video format (e.g., mp4, mkv), quality preset, and subtitle download preference. Processes the request by retrieving video streams and saving the selected video locally.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to download. Required to identify the video source.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputPath", + "type": "string", + "description": "Local file path to save the downloaded video. If omitted, saves to current directory with default naming.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired video format/extension for the output file, e.g., mp4, mkv. If not set, original format is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "quality", + "type": "string", + "description": "Preferred quality level for the download, such as '720p', '1080p', or 'highest'. Defaults to highest available.", + "required": false, + "defaultValue": "highest" + }, + { + "name": "downloadSubtitles", + "type": "boolean", + "description": "If true, attempts to download subtitles along with video if available. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status, saved file path if successful, and error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when an automated workflow requires downloading videos from the internet by URL, such as archiving training videos, collecting media assets, or offline playback preparation. It is ideal for scenarios needing format or quality specification and optional subtitle retrieval.", + "limitations": "Cannot download videos behind paywalls or DRM-protected content. Success depends on the video source's accessibility and supported formats. Does not handle live streams or segmented downloads.", + "examples": [ + "Download a 1080p video from a public URL to local storage.", + "Retrieve a video and accompanying subtitles from a URL and save as mkv.", + "Download a video using default highest quality and automatic naming." + ] + }, + "tags": [ + "automation", + "video", + "download", + "media", + "workflow", + "subtitles" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/video123\",\"outputPath\":\"/videos/video123.mp4\",\"format\":\"mp4\",\"quality\":\"1080p\",\"downloadSubtitles\":true}", + "description": "Download a video in mp4 format at 1080p quality, including subtitles, saving to a specific folder." + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/video456\",\"quality\":\"720p\"}", + "description": "Download a video at 720p quality using default filename and path." + }, + { + "inputJson": "{\"videoUrl\":\"https://example.com/video789\",\"downloadSubtitles\":false}", + "description": "Download video at highest quality without subtitles, using default format and save location." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "automation-frameworks.downloadTable", + "description": "Downloads a tabular dataset from a specified web resource or API endpoint, supporting common data formats like CSV, XLSX, and JSON. Accepts source URL and parameters for authentication or filtering, then retrieves and transforms the data into a standardized table structure for automation workflows.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL pointing to the table data resource (web API endpoint or direct download link).", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional bearer token for authentication if the source requires authorization.", + "required": false, + "defaultValue": "" + }, + { + "name": "queryParams", + "type": "object", + "description": "Optional key-value pairs for query parameters to refine data retrieval (e.g., filters, pagination).", + "required": false, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Specifies the expected table data format: 'csv', 'xlsx', or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time to wait for the download before timing out.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the parsed table data as an array of rows (objects) and metadata such as column headers and source information." + }, + "aiAgent": { + "useCase": "Use this tool when an automation workflow requires extracting structured tabular data from web APIs, public data repositories, or online spreadsheets to further process, analyze, or integrate into downstream tasks without manual download and parsing.", + "limitations": "Cannot scrape HTML tables from arbitrary web pages; expects data in well-defined formats like CSV, XLSX, or JSON. Requires valid access tokens if the source is protected and does not support interactive login flows.", + "examples": [ + "Download survey results in CSV format from a REST API using an authentication token.", + "Fetch monthly sales data as an XLSX file from a secure data endpoint with query filters applied." + ] + }, + "tags": [ + "automation", + "download", + "table", + "data extraction", + "csv", + "xlsx", + "json", + "api" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://api.example.com/data/survey.csv\",\"authToken\":\"abcdef12345\",\"dataFormat\":\"csv\"}", + "description": "Downloading survey results in CSV format from a secure API using an auth token." + }, + { + "inputJson": "{\"sourceUrl\":\"https://files.example.com/reports/monthly.xlsx\",\"dataFormat\":\"xlsx\",\"timeoutSeconds\":60}", + "description": "Downloading a monthly sales report Excel file from a public URL with extended timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "automation-frameworks.renderSummary", + "description": "This tool accepts a structured document object or textual content and generates a clear, concise summary that highlights key points and main ideas. It processes the input by extracting important information and synthesizing it into a readable summary format. The output is a summarized text string that can be used for quick understanding or reporting purposes.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The full text content of the document to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "The format of the input document (e.g., 'text', 'markdown', 'html'). Helps tailor the summary extraction.", + "required": false, + "defaultValue": "text" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length (in characters) for the summary output. Helps control the verbosity of the summary.", + "required": false, + "defaultValue": "500" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "Optional list of keywords to prioritize within the summary for emphasis on specific topics.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeHighlights", + "type": "boolean", + "description": "If true, the summary includes highlighted key sentences or bullet points, otherwise a plain paragraph summary.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary text and optional highlights if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to condense lengthy documents or textual data into brief summaries for faster comprehension or reporting. Ideal for generating executive summaries, project overviews, or distilling meeting notes into key points. It helps automate the manual effort of reading and extracting important information from large text inputs.", + "limitations": "This tool does not perform deep semantic understanding such as sentiment analysis or generating new insights beyond summarization. It is not suitable for summarizing highly technical documents that require domain expertise unless the input is well-structured and clear.", + "examples": [ + "Summarize a project status report into 300 characters focusing on milestones.", + "Create a concise summary of meeting notes highlighting key decisions and action items.", + "Generate a summary for a Markdown formatted article emphasizing provided keywords." + ] + }, + "tags": [ + "automation", + "summary", + "document-processing", + "text-summarization", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"The quarterly project status report indicated that all milestones were met on time, with two minor risks identified regarding resource allocation and system integration. The team recommends continuing current efforts with enhanced monitoring on these risks.\",\"maxSummaryLength\":200,\"includeHighlights\":true}", + "description": "Summarize a project status report with highlights for quick review." + }, + { + "inputJson": "{\"documentContent\":\"# Meeting Notes\\n- Discussed upcoming release schedule\\n- Assigned new tasks for QA\\n- Noted blockers in deployment process\",\"documentFormat\":\"markdown\",\"includeHighlights\":false}", + "description": "Summarize markdown meeting notes into a concise paragraph." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "automation-frameworks.formatComponent", + "description": "Formats source code components according to specified style guidelines and formatting rules. Accepts code component text input along with language and style options, performs parsing and reformatting, then outputs the formatted code string. Supports customization of indentation, line length, and naming conventions.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "componentCode", + "type": "string", + "description": "The raw source code text of the component to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the component code (e.g., 'javascript', 'python').", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Style guide or formatting convention to apply (e.g., 'Google', 'Airbnb', 'PEP8').", + "required": false, + "defaultValue": "Google" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length before wrapping.", + "required": false, + "defaultValue": "80" + }, + { + "name": "convertTabsToSpaces", + "type": "boolean", + "description": "Whether to convert tab characters to spaces in the formatted output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "enforceNamingConventions", + "type": "boolean", + "description": "Whether to attempt renaming variables and functions to conform to style guide conventions.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted component code string and metadata such as applied style and formatting statistics." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw or inconsistently formatted source code components into clean, standardized style according to known formatting conventions. Ideal for preprocessing code before automated testing, code reviews, or inclusion in larger projects to ensure consistency and readability.", + "limitations": "This tool cannot fully refactor code logic or fix semantic errors. It focuses only on formatting and style normalization. Complex language-specific constructs or unconventional code patterns may not be perfectly handled.", + "examples": [ + "Format a JavaScript function component to Airbnb style with 4-space indentation.", + "Reformat a Python class component according to PEP8 style with standard indent and max line length.", + "Convert tabs to spaces and enforce Google style on a TypeScript component snippet." + ] + }, + "tags": [ + "automation", + "code-formatting", + "component", + "source-code", + "style-guide", + "programming", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"componentCode\":\"function foo(){console.log('hello');}\",\"language\":\"javascript\",\"styleGuide\":\"Airbnb\",\"indentSize\":4,\"maxLineLength\":100,\"convertTabsToSpaces\":true,\"enforceNamingConventions\":false}", + "description": "Format a simple JavaScript function to Airbnb style with 4 spaces indentation." + }, + { + "inputJson": "{\"componentCode\":\"class MyClass:\\n def method(self):\\n pass\",\"language\":\"python\",\"styleGuide\":\"PEP8\",\"indentSize\":4,\"maxLineLength\":79,\"convertTabsToSpaces\":true,\"enforceNamingConventions\":true}", + "description": "Format a Python class according to PEP8 with enforced naming conventions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "automation-frameworks.formatArticle", + "description": "This tool accepts an article's raw text or JSON structure with sections and formats it according to specified style guidelines such as font styles, headings, paragraph spacing, list formats, and citation styles. It outputs a formatted article string or structured document ready for publishing or further processing.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "articleContent", + "type": "string", + "description": "The raw text content of the article to format (plain text or markup).", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "The formatting style guide to apply (e.g., APA, MLA, Chicago, or custom).", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format such as 'HTML', 'Markdown', or 'PlainText'.", + "required": false, + "defaultValue": "HTML" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents based on article headings.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language locale code to adjust formatting rules accordingly (e.g., 'en-US', 'en-GB').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article text and metadata, including the formatted content string and optionally a table of contents array." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate applying consistent formatting to raw or lightly structured article content for publishing, academic submission, or internal documentation, including applying style guidelines and generating output in different document formats. It is useful for automating repetitive formatting tasks to ensure style consistency.", + "limitations": "This tool does not generate or edit article content; it only formats existing text. Complex layouts such as multi-column design or embedded multimedia objects are not handled. It may not perfectly replicate proprietary publisher styles.", + "examples": [ + "Format the given article content to APA style in HTML output.", + "Convert raw article text into HTML with MLA formatting including a table of contents.", + "Format an English article to plain text applying Chicago style citations." + ] + }, + "tags": [ + "automation", + "article", + "formatting", + "style-guide", + "document-processing", + "publishing", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"articleContent\":\"Introduction\\nThis is the first paragraph.\\n### Methodology\\nDetails about methods.\",\"styleGuide\":\"APA\",\"outputFormat\":\"HTML\",\"includeTableOfContents\":true,\"language\":\"en-US\"}", + "description": "Format given raw article text to APA style in HTML with a table of contents." + }, + { + "inputJson": "{\"articleContent\":\"# Title\\nSome introductory text.\\n## Section 1\\nContent here.\",\"styleGuide\":\"MLA\",\"outputFormat\":\"Markdown\",\"includeTableOfContents\":false}", + "description": "Format Markdown article using MLA style without table of contents." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "automation-frameworks.composeArticle", + "description": "This tool assists in composing structured articles by accepting inputs such as topic, subtopics, target audience, and tone. It organizes content flow, generates coherent paragraphs, and produces a formatted article draft suitable for editing or publication.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the article to be composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "subtopics", + "type": "array", + "description": "An array of strings representing key points or subtopics to cover within the article.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended readership or demographic for tone and style adaptation (e.g., experts, beginners, general public).", + "required": false, + "defaultValue": "general public" + }, + { + "name": "tone", + "type": "string", + "description": "The desired writing tone such as formal, informal, persuasive, or neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "length", + "type": "number", + "description": "Approximate target length of the article in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeIntroduction", + "type": "boolean", + "description": "Whether to generate an introductory paragraph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeConclusion", + "type": "boolean", + "description": "Whether to generate a concluding paragraph.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete composed article text, structured with sections for introduction, body paragraphs aligned with subtopics, and conclusion." + }, + "aiAgent": { + "useCase": "Use this tool when creating comprehensive articles or blog posts automatically from a given topic and supporting points. Ideal for workflows that require fast content generation for drafts, summarization, or enhancement before human editing.", + "limitations": "Cannot replace detailed expert knowledge or guarantee perfectly factual accuracy; generated content may require fact-checking and refinement.", + "examples": [ + "Compose an article on renewable energy benefits for a general audience in a persuasive tone.", + "Generate a 1500-word article about machine learning subtopics targeting beginner readers with an informal style.", + "Create a concise article on productivity tips including introduction and conclusion, suitable for corporate employees." + ] + }, + "tags": [ + "automation", + "content-creation", + "article-composition", + "writing-assistant", + "workflow", + "document", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"The Future of Artificial Intelligence\",\"subtopics\":[\"AI in healthcare\",\"AI ethics\",\"AI in education\"],\"targetAudience\":\"technology enthusiasts\",\"tone\":\"informative\",\"length\":1200,\"includeIntroduction\":true,\"includeConclusion\":true}", + "description": "Compose an informative article of about 1200 words on AI future trends tailored for tech enthusiasts, covering specified subtopics with intro and conclusion." + }, + { + "inputJson": "{\"topic\":\"Benefits of Meditation\",\"subtopics\":[\"mental health\",\"physical health\",\"productivity\"],\"targetAudience\":\"general public\",\"tone\":\"friendly\",\"length\":800,\"includeIntroduction\":true,\"includeConclusion\":true}", + "description": "Write a friendly, accessible 800-word article explaining meditation benefits focusing on key health and productivity aspects." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "automation-frameworks.buildCluster", + "description": "This tool provisions and configures a computing cluster based on specified parameters such as cluster size, node types, network settings, and desired software packages. It accepts detailed cluster configuration as input, performs orchestration to deploy and initialize nodes, and returns a structured report with cluster status, access endpoints, and resource summaries.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The unique name to identify the cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "The total number of nodes to provision in the cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeType", + "type": "string", + "description": "Type or flavor of nodes to use (e.g., t3.medium, standard_DS3).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region or data center location for the cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration including subnets, security groups, and IP ranges.", + "required": false, + "defaultValue": "" + }, + { + "name": "softwarePackages", + "type": "array", + "description": "List of software packages or services to install on each node.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoScaling", + "type": "boolean", + "description": "Whether to enable autoscaling features based on load.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sshKey", + "type": "string", + "description": "SSH public key string to allow secure access to cluster nodes.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the resulting cluster's status, including cluster ID, access endpoints, node summaries, and configuration details." + }, + "aiAgent": { + "useCase": "Use this tool to automate the deployment of scalable compute clusters in cloud or on-premise environments, ideal for workloads that require parallel processing, data processing pipelines, or container orchestration setups. It helps agents perform complex infrastructure provisioning without manual intervention.", + "limitations": "This tool does not manage cluster runtime workloads or provide monitoring after deployment; it focuses solely on provisioning and initial configuration. It requires valid cloud provider credentials or access to infrastructure APIs which it cannot manage internally.", + "examples": [ + "Create a 5-node Linux cluster with t3.medium instances in us-west-2 for big data processing.", + "Deploy a Kubernetes cluster with 3 nodes, enabling autoscaling, and installing Docker and kubeadm.", + "Build a GPU-enabled cluster in east-us region with 4 nodes and custom network settings." + ] + }, + "tags": [ + "automation", + "infrastructure", + "cluster", + "deployment", + "orchestration", + "cloud", + "scaling" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"analytics-cluster\",\"nodeCount\":5,\"nodeType\":\"t3.medium\",\"region\":\"us-west-2\",\"softwarePackages\":[\"hadoop\",\"spark\"],\"sshKey\":\"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCy...\"}", + "description": "Deploy a 5-node analytics cluster running Hadoop and Spark in the us-west-2 region." + }, + { + "inputJson": "{\"clusterName\":\"k8s-prod\",\"nodeCount\":3,\"nodeType\":\"standard_DS3\",\"region\":\"eastus\",\"autoScaling\":true,\"softwarePackages\":[\"docker\",\"kubeadm\"],\"sshKey\":\"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9...\"}", + "description": "Build a three-node Kubernetes production cluster with autoscaling enabled in East US." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "automation-frameworks.buildPipeline", + "description": "Creates and configures an automated task pipeline by accepting a list of workflow steps, dependencies, and environment settings. It processes the input to build a structured pipeline definition suitable for execution in automation frameworks, returning a JSON representation of the complete pipeline configuration.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The unique name identifier for the pipeline to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered array of task step objects defining individual actions within the pipeline.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "object", + "description": "Optional key-value pairs defining environment variables and settings used during pipeline execution.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "dependencies", + "type": "array", + "description": "Optional array of dependency relations specifying step execution order constraints.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "triggerCondition", + "type": "string", + "description": "Optional condition or event name to automatically trigger the pipeline execution.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the fully defined pipeline configuration, including metadata, steps, dependencies, and environment details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or configure automation workflows that coordinate multiple tasks or processes sequentially or conditionally. Ideal for automating software builds, deployments, data processing workflows, or custom business processes.", + "limitations": "This tool does not execute the pipeline itself; it only builds its configuration. It also does not validate the correctness of commands within steps or connectivity to external systems.", + "examples": [ + "Build a deployment pipeline with three sequential steps: checkout code, run tests, deploy.", + "Create a data processing pipeline with conditional branching depending on data quality checks.", + "Set up a pipeline triggered by a push event that runs linting and compiles source code." + ] + }, + "tags": [ + "automation", + "pipeline", + "workflow", + "build", + "orchestration", + "task-management" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"deployPipeline\",\"steps\":[{\"id\":\"checkout\",\"action\":\"gitCheckout\",\"params\":{\"branch\":\"main\"}},{\"id\":\"test\",\"action\":\"runTests\",\"params\":{}},{\"id\":\"deploy\",\"action\":\"deployApp\",\"params\":{\"environment\":\"production\"}}],\"environment\":{\"NODE_ENV\":\"production\"},\"dependencies\":[{\"from\":\"checkout\",\"to\":\"test\"},{\"from\":\"test\",\"to\":\"deploy\"}],\"triggerCondition\":\"pushToMain\"}", + "description": "A pipeline configuration to automate deployment triggered on code push to main branch, sequentially running checkout, tests, and deployment steps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "automation-frameworks.buildSchema", + "description": "Generates a JSON schema for data validation based on a provided structured specification. Accepts a JSON object describing fields, types, constraints, and relationships, then builds a complete JSON schema output that can be used in automation frameworks to validate data inputs or API payloads.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "schemaDefinition", + "type": "object", + "description": "A structured object defining the fields, data types, required fields, and additional constraints for the schema to build.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaVersion", + "type": "string", + "description": "The JSON Schema draft version to target, such as 'draft-07' or 'draft-2019-09'.", + "required": false, + "defaultValue": "draft-07" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example values in the resulting schema for better documentation and validation guidance.", + "required": false, + "defaultValue": "false" + }, + { + "name": "title", + "type": "string", + "description": "An optional title for the schema to include as metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "An optional description for the schema providing context or purpose.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "The generated JSON schema object that can be used by automation frameworks to validate data or define expected data formats." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to build formal JSON schemas automatically from user requirements or data models to enable validation of inputs in automated workflows or integrations. It helps create standard-compliant JSON schemas suited for validating data structure, types, and constraints based on dynamic input definitions.", + "limitations": "This tool does not generate schemas in formats other than JSON Schema and relies on a well-defined input specification. It cannot infer field constraints or relationships without explicit definition in the input.", + "examples": [ + "Create a JSON schema for a user registration form with required email and password fields and optional age field", + "Build a schema to validate product data including SKU, price, and tags array, using draft-07 version", + "Generate a schema from a provided field definition object including descriptions and example values" + ] + }, + "tags": [ + "automation", + "schema-generation", + "json-schema", + "validation", + "data-modeling" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinition\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"integer\",\"minimum\":0}},\"required\":[\"name\"]},\"schemaVersion\":\"draft-07\",\"includeExamples\":false,\"title\":\"Person Schema\",\"description\":\"Schema for person data\"}", + "description": "Generate a JSON schema for a person object with required name and optional age." + }, + { + "inputJson": "{\"schemaDefinition\":{\"type\":\"object\",\"properties\":{\"email\":{\"type\":\"string\",\"format\":\"email\"},\"password\":{\"type\":\"string\",\"minLength\":8}},\"required\":[\"email\",\"password\"]},\"includeExamples\":true}", + "description": "Build a schema for user credentials including email (format enforced) and password with example values." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Schema", + "context": null + } + }, + { + "name": "automation-frameworks.generateConversion", + "description": "Generates conversion metrics from raw user interaction and sales data to help automate analytics workflows. Accepts input data in JSON format containing events and transactions, processes event-to-purchase funnels, and outputs conversion rate statistics and insights in structured JSON.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Raw input JSON object containing user events and transaction records (required format includes userId, eventType, timestamp, and optionally revenue).", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEvent", + "type": "string", + "description": "The specific event name that indicates a conversion (e.g., \"purchase\", \"signup\").", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowHours", + "type": "number", + "description": "Time window in hours to consider an event sequence valid for conversion calculation.", + "required": false, + "defaultValue": "24" + }, + { + "name": "groupBy", + "type": "array", + "description": "Array of event properties to group the conversion results by (e.g., ['campaignId', 'deviceType']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeRevenue", + "type": "boolean", + "description": "Whether to include revenue metrics in the conversion output if available in input data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing conversion rates, counts, optionally revenue totals, and breakdowns by specified groups, including overall and segmented statistics." + }, + "aiAgent": { + "useCase": "Use this tool when automating analytics workflows that require calculation of conversion rates from event logs and transaction data, such as marketing funnel analysis or user behavior tracking. It simplifies automated data processing pipelines by generating conversion insights from raw event data.", + "limitations": "Does not perform raw data ingestion or cleaning outside of expected JSON format. Not designed for real-time streaming data. Requires input data to have consistent event naming and user identifiers for accurate funnel calculation.", + "examples": [ + "Generate conversion rates for purchases within 48 hours grouped by campaign and device.", + "Calculate signup conversion rate from web interaction data without revenue.", + "Compute conversion metrics from multi-channel event data with revenue included." + ] + }, + "tags": [ + "automation", + "analytics", + "conversion-rate", + "event-processing", + "funnel-analysis", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"events\":[{\"userId\":\"u1\",\"eventType\":\"click\",\"timestamp\":\"2024-04-01T10:00:00Z\"},{\"userId\":\"u1\",\"eventType\":\"purchase\",\"timestamp\":\"2024-04-01T11:00:00Z\",\"revenue\":50}],\"transactions\":[{\"userId\":\"u1\",\"amount\":50,\"timestamp\":\"2024-04-01T11:00:00Z\"}]},\"conversionEvent\":\"purchase\",\"timeWindowHours\":24,\"groupBy\":[\"deviceType\"],\"includeRevenue\":true}", + "description": "Generate purchase conversion rates within a 24-hour window grouped by device type, including revenue." + }, + { + "inputJson": "{\"inputData\":{\"events\":[{\"userId\":\"user123\",\"eventType\":\"visit\",\"timestamp\":\"2024-05-10T09:00:00Z\"},{\"userId\":\"user123\",\"eventType\":\"signup\",\"timestamp\":\"2024-05-10T12:00:00Z\"}]},\"conversionEvent\":\"signup\",\"timeWindowHours\":48,\"groupBy\":[],\"includeRevenue\":false}", + "description": "Calculate signup conversion rate within 48 hours without revenue data or grouping." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "automation-frameworks.generateGraph", + "description": "Generates a customizable graph visualization based on structured input data. Accepts data arrays or objects, graph type selection, and styling options. Processes the data to produce a graph image URL or embeddable SVG output for integration in reports, dashboards, or web pages.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data points or objects representing the graph data to plot, e.g., [{x:1, y:2}, {x:2, y:3}] or array of values for bar chart.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, such as 'line', 'bar', 'pie', or 'scatter'.", + "required": true, + "defaultValue": "line" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated graph in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated graph in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "title", + "type": "string", + "description": "Optional title text to display on the graph.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X axis.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y axis.", + "required": false, + "defaultValue": "" + }, + { + "name": "colors", + "type": "array", + "description": "Optional array of color strings to use for graph elements (bars, lines, pie slices).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the graph output including a URL of the generated graph image or embeddable SVG markup." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the creation of visual data representations from structured datasets within workflows, such as generating reports, dashboards, or interactive presentations. It helps automate visualization tasks by converting raw data into configurable graphical formats quickly.", + "limitations": "Does not perform complex statistical analysis or data transformation beyond simple plotting. Limited to predefined graph types and cannot generate highly customized visualization types like 3D graphs or animations.", + "examples": [ + "Generate a line graph showing monthly sales from an array of data points.", + "Create a pie chart to visualize category distribution with custom colors.", + "Produce a bar chart of survey results with axis labels and a title." + ] + }, + "tags": [ + "automation", + "graph generation", + "visualization", + "data", + "reporting", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"x\":1,\"y\":10},{\"x\":2,\"y\":15},{\"x\":3,\"y\":7}],\"graphType\":\"line\",\"width\":600,\"height\":400,\"title\":\"Monthly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales\",\"colors\":[\"#3366CC\"]}", + "description": "Generate a line graph of monthly sales data with a title and axis labels." + }, + { + "inputJson": "{\"data\":[30,50,20],\"graphType\":\"pie\",\"colors\":[\"#FF6384\",\"#36A2EB\",\"#FFCE56\"],\"title\":\"Market Share\"}", + "description": "Create a pie chart showing market share distribution with custom slice colors." + }, + { + "inputJson": "{\"data\":[5,10,15,20],\"graphType\":\"bar\",\"width\":500,\"height\":300,\"xAxisLabel\":\"Products\",\"yAxisLabel\":\"Units Sold\"}", + "description": "Generate a bar chart of units sold for various products with axis labels." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "automation-frameworks.generateAnomaly", + "description": "Generates anomaly detection results by analyzing time-series or tabular data input using configurable statistical and machine learning methods. Accepts a dataset with timestamped or sequential records, applies anomaly detection algorithms, and outputs identified anomalies with scores, timestamps, and contextual metadata to support automation workflows.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points to analyze; each item should be an object representing a record with timestamp and metric values.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "Name of the field in data items containing the timestamp for temporal ordering.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricFields", + "type": "array", + "description": "List of field names in data items on which to detect anomalies; can include one or more metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "algorithm", + "type": "string", + "description": "The anomaly detection algorithm to use, e.g., 'zScore', 'isolationForest', or 'dbscan'.", + "required": false, + "defaultValue": "zScore" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Threshold or sensitivity setting for anomaly detection; higher values typically mean fewer anomalies detected.", + "required": false, + "defaultValue": "3" + }, + { + "name": "windowSize", + "type": "number", + "description": "Size of moving window (in number of data points) used for algorithms that require temporal context (e.g., moving average).", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "If true, output will include contextual data around each anomaly for better interpretability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected anomalies, each with timestamp, metric name, anomaly score, and optional contextual data about the anomaly." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to identify unusual patterns or outliers automatically within sequential or time-series data to trigger alerts or initiate automated remediation steps. Applicable in monitoring system metrics, sensor data, financial transactions, or any repetitive data streams where anomalies can indicate issues or opportunities.", + "limitations": "Does not handle unstructured or image data. Effectiveness depends on quality and consistency of input timestamps and metric data. May produce false positives if data contains seasonality not accounted for unless configured appropriately.", + "examples": [ + "Detect anomalies in server CPU usage metrics over time.", + "Identify unusual sensor readings in IoT device data streams.", + "Find abnormal spikes or drops in financial transaction volumes for fraud detection." + ] + }, + "tags": [ + "automation", + "anomaly-detection", + "analytics", + "time-series", + "monitoring", + "machine-learning", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-01-01T00:00:00Z\",\"cpu\":20},{\"timestamp\":\"2024-01-01T01:00:00Z\",\"cpu\":22},{\"timestamp\":\"2024-01-01T02:00:00Z\",\"cpu\":95}],\"timestampField\":\"timestamp\",\"metricFields\":[\"cpu\"],\"algorithm\":\"zScore\",\"sensitivity\":2.5}", + "description": "Detect anomalies in hourly CPU usage with z-score method and moderate sensitivity." + }, + { + "inputJson": "{\"data\":[{\"ts\":\"2024-05-01T10:00:00Z\",\"temp\":72,\"humidity\":30},{\"ts\":\"2024-05-01T10:05:00Z\",\"temp\":73,\"humidity\":29},{\"ts\":\"2024-05-01T10:10:00Z\",\"temp\":100,\"humidity\":29}],\"timestampField\":\"ts\",\"metricFields\":[\"temp\",\"humidity\"],\"algorithm\":\"isolationForest\",\"sensitivity\":0.7,\"windowSize\":5}", + "description": "Use isolation forest algorithm on temperature and humidity sensor data detecting anomalies with lower sensitivity for robustness." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "automation-frameworks.generateDiagram", + "description": "Generates a visual workflow or process diagram based on a structured input describing steps, connections, and elements. Accepts JSON or plain text describing the flow, processes it to create nodes and edges, and outputs a diagram file in formats such as PNG, SVG, or PDF.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Structured text or JSON describing the workflow steps and connections to be visualized in the diagram.", + "required": true, + "defaultValue": "" + }, + { + "name": "diagramType", + "type": "string", + "description": "Type of diagram to generate, e.g., 'flowchart', 'sequence', or 'state'.", + "required": false, + "defaultValue": "flowchart" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the resulting diagram file, such as 'png', 'svg', or 'pdf'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining diagram symbols.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme style for the diagram, such as 'light' or 'dark'.", + "required": false, + "defaultValue": "light" + }, + { + "name": "nodeShape", + "type": "string", + "description": "Shape used for diagram nodes, e.g. 'box', 'circle', or 'diamond'.", + "required": false, + "defaultValue": "box" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in points for text within the diagram.", + "required": false, + "defaultValue": "12" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated diagram as a base64 encoded string and metadata about the file (format, width, height)." + }, + "aiAgent": { + "useCase": "Use this tool to automatically create clear, professional diagrams representing workflows or processes from structured input data. It helps visualize steps and connections for documentation, presentations, or automated reporting without manual drawing.", + "limitations": "Cannot interpret unstructured or ambiguous descriptions without clear step and connection definitions. Complex diagrams with extensive conditional logic might not produce optimal layouts.", + "examples": [ + "Generate a flowchart diagram PNG from JSON describing a project's build pipeline.", + "Create a sequence diagram in SVG format from structured textual input describing user interactions.", + "Produce a PDF state diagram with a dark theme illustrating an order processing system." + ] + }, + "tags": [ + "automation", + "diagram", + "workflow", + "visualization", + "flowchart", + "process", + "generate", + "media" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"{\\\"steps\\\": [{\\\"id\\\": \\\"start\\\", \\\"label\\\": \\\"Start\\\"}, {\\\"id\\\": \\\"build\\\", \\\"label\\\": \\\"Build Project\\\"}, {\\\"id\\\": \\\"test\\\", \\\"label\\\": \\\"Run Tests\\\"}, {\\\"id\\\": \\\"deploy\\\", \\\"label\\\": \\\"Deploy\\\"}], \\\"connections\\\": [{\\\"from\\\": \\\"start\\\", \\\"to\\\": \\\"build\\\"}, {\\\"from\\\": \\\"build\\\", \\\"to\\\": \\\"test\\\"}, {\\\"from\\\": \\\"test\\\", \\\"to\\\": \\\"deploy\\\"}]}\"}", + "description": "Generate a PNG flowchart diagram for a build pipeline from JSON describing steps and their connections." + }, + { + "inputJson": "{\"inputData\":\"User -> System: Login request\\nSystem -> Database: Validate credentials\\nDatabase --> System: Validation result\\nSystem -> User: Login response\",\"diagramType\":\"sequence\",\"outputFormat\":\"svg\"}", + "description": "Create an SVG sequence diagram representing user login interactions from plain text sequence description." + }, + { + "inputJson": "{\"inputData\":\"{\\\"states\\\": [{\\\"id\\\": \\\"pending\\\", \\\"label\\\": \\\"Pending\\\"}, {\\\"id\\\": \\\"approved\\\", \\\"label\\\": \\\"Approved\\\"}, {\\\"id\\\": \\\"rejected\\\", \\\"label\\\": \\\"Rejected\\\"}], \\\"transitions\\\": [{\\\"from\\\": \\\"pending\\\", \\\"to\\\": \\\"approved\\\"}, {\\\"from\\\": \\\"pending\\\", \\\"to\\\": \\\"rejected\\\"}]}\",\"diagramType\":\"state\",\"outputFormat\":\"pdf\",\"theme\":\"dark\"}", + "description": "Produce a dark-themed PDF state diagram showing approval process states and transitions from JSON input." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "automation-frameworks.generateQuote", + "description": "Generates an inspirational, motivational, or custom-themed quote for automation workflows. Accepts parameters to specify the theme, author preference, and format, then outputs a formatted quote string suitable for inserting into documents, notifications, or UI elements.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "The subject or theme of the quote, e.g., 'motivation', 'technology', 'automation'.", + "required": false, + "defaultValue": "\"motivation\"" + }, + { + "name": "author", + "type": "string", + "description": "Optional filter to specify quotes by a particular author or source.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeAuthor", + "type": "boolean", + "description": "Flag to indicate whether to include the author's name in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output: 'plain' for text only, 'html' to include markup formatting.", + "required": false, + "defaultValue": "\"plain\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote and optionally the author, formatted per the requested output style." + }, + "aiAgent": { + "useCase": "Use this tool when an automation workflow or application needs to enrich user interaction with contextually relevant quotes, such as daily motivation, status messages, or documentation comments. It helps add a human touch or thematic inspiration dynamically.", + "limitations": "Does not generate original quotes; relies on a fixed or external database of quotes. May not support highly specialized or very recent sources.", + "examples": [ + "Generate a motivational quote with author included in plain text.", + "Create a technology-themed quote without the author in HTML format.", + "Provide a quote from a specific author for a daily automation notification." + ] + }, + "tags": [ + "automation", + "quotes", + "motivation", + "content-generation", + "workflow-enhancement" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"technology\",\"author\":\"Alan Turing\",\"includeAuthor\":true,\"outputFormat\":\"plain\"}", + "description": "Generate a technology-themed quote by Alan Turing with author name included in plain text." + }, + { + "inputJson": "{\"theme\":\"motivation\",\"includeAuthor\":false,\"outputFormat\":\"html\"}", + "description": "Generate a motivational quote in HTML format without including the author." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "automation-frameworks.createConversion", + "description": "Creates a conversion event automation within a workflow automation framework. Accepts configuration inputs defining the target analytics platform, conversion criteria (such as event triggers and parameters), and output actions. Processes these inputs to generate a runnable automation task that tracks and records conversions, outputting a structured confirmation with automation IDs and statuses.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "automationName", + "type": "string", + "description": "The name of the conversion automation to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "analyticsPlatform", + "type": "string", + "description": "The target analytics platform for the conversion tracking (e.g., Google Analytics, Adobe Analytics).", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionTriggerEvent", + "type": "string", + "description": "The event name that triggers a conversion (e.g., purchase_complete, form_submit).", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionParameters", + "type": "object", + "description": "Key-value pairs specifying additional parameters or conditions for the conversion event (e.g., value thresholds, product categories).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "trackRevenue", + "type": "boolean", + "description": "Whether to include revenue tracking in the conversion event.", + "required": false, + "defaultValue": "false" + }, + { + "name": "automationEnabled", + "type": "boolean", + "description": "Flag to enable or disable the automation after creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the newly created automation ID, the status of the automation creation, and a summary of configured conversion parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically set up conversion event tracking automations within supported analytics platforms as part of an automated workflow, such as marketing campaign performance monitoring or sales funnel tracking. This tool simplifies generating consistent, parameterized conversion tracking workflows without manual configuration.", + "limitations": "Does not support all analytics platforms; limited to predefined supported platforms. Cannot retroactively analyze past events, only sets up new tracking automations.", + "examples": [ + "Create a conversion automation for tracking 'purchase_complete' events in Google Analytics including revenue.", + "Set up a disabled conversion automation on Adobe Analytics tracking form submissions with specific form field conditions.", + "Generate a conversion automation that triggers on 'trial_signup' events without revenue tracking, enabled by default." + ] + }, + "tags": [ + "automation", + "conversion", + "analytics", + "workflow", + "event-tracking" + ], + "examples": [ + { + "inputJson": "{\"automationName\":\"PurchaseConversionGA\",\"analyticsPlatform\":\"Google Analytics\",\"conversionTriggerEvent\":\"purchase_complete\",\"conversionParameters\":{\"currency\":\"USD\"},\"trackRevenue\":true,\"automationEnabled\":true}", + "description": "Creating an enabled conversion automation to track purchase completions with revenue in Google Analytics." + }, + { + "inputJson": "{\"automationName\":\"FormSubmitAdobe\",\"analyticsPlatform\":\"Adobe Analytics\",\"conversionTriggerEvent\":\"form_submit\",\"conversionParameters\":{\"formId\":\"signupForm\"},\"trackRevenue\":false,\"automationEnabled\":false}", + "description": "Creating a disabled conversion automation for form submission events in Adobe Analytics with specific form ID." + }, + { + "inputJson": "{\"automationName\":\"TrialSignupConversion\",\"analyticsPlatform\":\"Google Analytics\",\"conversionTriggerEvent\":\"trial_signup\",\"conversionParameters\":{},\"trackRevenue\":false,\"automationEnabled\":true}", + "description": "Creating an enabled conversion automation tracking trial signups in Google Analytics without revenue tracking." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "automation-frameworks.createQuote", + "description": "This tool generates a formatted quote text snippet based on input parameters like quote content, author, context, and optional styling. It processes the inputs to produce a ready-to-use quote string for inclusion in documents, presentations, or automated reports.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The main text of the quote to be included.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "The name of the person who originally said or wrote the quote.", + "required": false, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional background or context information for the quote, such as source or occasion.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeQuotationMarks", + "type": "boolean", + "description": "Flag to determine whether to wrap the quote text in quotation marks.", + "required": false, + "defaultValue": "true" + }, + { + "name": "style", + "type": "string", + "description": "Optional style format to apply, e.g., 'italic', 'bold', or 'plain'.", + "required": false, + "defaultValue": "plain" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted quote string under the 'formattedQuote' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically create well-formatted, citation-ready quote snippets for documents, emails, reports, or presentations based on provided quote text and metadata. It supports customization of style and inclusion of context.", + "limitations": "This tool cannot verify the accuracy or attribution of the quote; it only formats input text. It also does not generate quotes by itself, but formats provided quotes.", + "examples": [ + "Create a formatted quote from text 'To be or not to be', author 'William Shakespeare', with italic style.", + "Generate a plain style quote with quotation marks for a given quote text and author name.", + "Produce a quote snippet without quotation marks including context information." + ] + }, + "tags": [ + "automation", + "quote generation", + "text formatting", + "document automation", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"Imagination is more important than knowledge.\",\"author\":\"Albert Einstein\",\"context\":\"Speech at Princeton University, 1921\",\"includeQuotationMarks\":true,\"style\":\"italic\"}", + "description": "Create an italicized quote with quotation marks, author, and context." + }, + { + "inputJson": "{\"quoteText\":\"The only thing we have to fear is fear itself.\",\"author\":\"Franklin D. Roosevelt\",\"includeQuotationMarks\":false,\"style\":\"bold\"}", + "description": "Generate a bold quote without quotation marks including the author name only." + }, + { + "inputJson": "{\"quoteText\":\"Life is what happens when you're busy making other plans.\",\"includeQuotationMarks\":true,\"style\":\"plain\"}", + "description": "Produce a plain style quote with quotation marks, without author or context." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Quote", + "context": null + } + }, + { + "name": "automation-frameworks.createAudio", + "description": "Generates an audio file from provided text or combines input audio files with optional background music and effects. Accepts text strings or audio file URLs, processes text-to-speech or mixes audio tracks, and outputs a downloadable audio file in specified format and quality.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "Input text to convert to speech; ignored if audioFiles provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "audioFiles", + "type": "array", + "description": "Array of URLs to audio files to be combined or processed; ignored if text is provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "backgroundMusicUrl", + "type": "string", + "description": "URL of background music to mix with main audio; optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "speechVoice", + "type": "string", + "description": "Voice identifier or name for text-to-speech generation; default depends on service.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for text-to-speech processing, e.g., 'en-US'.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Audio output file format such as 'mp3', 'wav', or 'ogg'.", + "required": true, + "defaultValue": "mp3" + }, + { + "name": "bitrate", + "type": "number", + "description": "Bitrate in kbps for the output audio; affects quality and file size.", + "required": false, + "defaultValue": "128" + }, + { + "name": "fadeInSeconds", + "type": "number", + "description": "Duration in seconds for fade-in effect at audio start.", + "required": false, + "defaultValue": "0" + }, + { + "name": "fadeOutSeconds", + "type": "number", + "description": "Duration in seconds for fade-out effect at audio end.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Contains URL to the generated audio file and metadata such as duration and file size." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate generation of audio content from text, or combine multiple audio files with optional background music and audio effects for podcasts, announcements, or multimedia content. Ideal for workflows requiring consistent audio creation and processing without manual editing.", + "limitations": "Does not support complex multi-track editing or advanced audio effects beyond mixing and simple fade. Dependent on quality of text-to-speech engine if text input is provided. Large audio files may incur longer processing times.", + "examples": [ + "Create an audio message from marketing text with a female English voice in mp3 format.", + "Combine several podcast segments into one audio file mixing background music with 10 seconds fade out.", + "Generate an audiobook chapter from plain text with specified language and bitrate." + ] + }, + "tags": [ + "automation", + "audio", + "text-to-speech", + "media-processing", + "audio-mixing" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to our automated audio message system.\",\"speechVoice\":\"en-US-Wavenet-F\",\"outputFormat\":\"mp3\"}", + "description": "Convert text to speech using a female US English voice, output as mp3." + }, + { + "inputJson": "{\"audioFiles\":[\"https://example.com/segment1.mp3\",\"https://example.com/segment2.mp3\"],\"backgroundMusicUrl\":\"https://example.com/background.mp3\",\"outputFormat\":\"wav\",\"fadeOutSeconds\":10}", + "description": "Combine two audio segments with background music and add a 10-second fade-out, output as WAV." + }, + { + "inputJson": "{\"text\":\"Chapter one of the audiobook.\",\"language\":\"en-GB\",\"bitrate\":192,\"outputFormat\":\"ogg\"}", + "description": "Generate audiobook chapter from text with British English voice and higher bitrate in OGG format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "automation-frameworks.createAnomaly", + "description": "This tool analyzes time-series data or streaming input to detect anomalies using configurable statistical or machine learning models. It accepts data series and parameters for sensitivity, anomaly type, and time granularity, then outputs identified anomaly intervals and metadata for use in automations or alerts.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "dataSeries", + "type": "array", + "description": "Array of numeric values or objects representing the time-series data points to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "Name of the timestamp field if data points are objects. If empty, data is considered a simple numeric sequence.", + "required": false, + "defaultValue": "" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity threshold for detecting anomalies, where higher values detect fewer but more significant anomalies.", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "anomalyType", + "type": "string", + "description": "Type of anomaly to detect, e.g., 'point' for single spikes, 'collective' for patterns, or 'contextual' for context-based anomalies.", + "required": false, + "defaultValue": "point" + }, + { + "name": "windowSize", + "type": "number", + "description": "Size of the moving window (in data points) for analysis and anomaly detection context.", + "required": false, + "defaultValue": "10" + }, + { + "name": "minAnomalyDuration", + "type": "number", + "description": "Minimum duration (in number of data points) for anomalies to be reported when detecting collective anomalies.", + "required": false, + "defaultValue": "1" + }, + { + "name": "useMachineLearning", + "type": "boolean", + "description": "Flag indicating whether to use advanced machine learning methods (true) or simple statistical methods (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of detected anomalies, each with start/end timestamps or indices, anomaly scores, and descriptions." + }, + "aiAgent": { + "useCase": "Use this tool when automating workflows that require automatic detection of unusual patterns or spikes in numeric or time-series data, such as monitoring system metrics or user activity logs. It enables triggering alerts or actions upon anomaly detection without manual analysis.", + "limitations": "This tool does not handle image or unstructured text data directly and relies on properly formatted time-series numeric data. It cannot diagnose root causes of anomalies, only detect their existence.", + "examples": [ + "Detect anomalies in website traffic hourly data to trigger resource scaling.", + "Identify unusual spikes in manufacturing sensor data for automated maintenance alerts.", + "Find anomalies in retail sales over days to adjust inventory management automatically." + ] + }, + "tags": [ + "automation", + "anomaly-detection", + "time-series", + "monitoring", + "analytics", + "alerting" + ], + "examples": [ + { + "inputJson": "{\"dataSeries\":[{\"timestamp\":\"2024-01-01T00:00:00Z\",\"value\":100},{\"timestamp\":\"2024-01-01T01:00:00Z\",\"value\":110},{\"timestamp\":\"2024-01-01T02:00:00Z\",\"value\":300},{\"timestamp\":\"2024-01-01T03:00:00Z\",\"value\":115}],\"timestampField\":\"timestamp\",\"sensitivity\":0.7,\"anomalyType\":\"point\",\"windowSize\":3}", + "description": "Detect single-point anomalies in hourly traffic data where a sudden spike occurs at 2am." + }, + { + "inputJson": "{\"dataSeries\":[45,46,47,44,50,90,85,43,44],\"sensitivity\":0.85,\"anomalyType\":\"collective\",\"windowSize\":5,\"minAnomalyDuration\":2}", + "description": "Detect collective anomalies in a numeric sequence representing sensor readings with a duration of at least 2 points." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Anomaly", + "context": null + } + }, + { + "name": "automation-frameworks.createChannel", + "description": "Creates a communication channel within an automation framework by accepting details like channel name, type, participants, and optional configuration. Processes input to establish the channel and returns channel metadata including ID, status, and configuration summary.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "The display name for the new communication channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of the channel, e.g., 'team', 'private', 'broadcast'.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant user IDs or emails to include in the channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional short description or purpose of the channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "isArchived", + "type": "boolean", + "description": "Whether the channel should be created as archived. Usually false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional configuration or custom attributes for the channel.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Metadata object representing the created channel, including unique channel ID, name, type, participants list, status, creation timestamp, and any provided metadata." + }, + "aiAgent": { + "useCase": "Use this tool when automating the setup of communication workflows in platforms that support channels, such as team collaboration or messaging systems. It enables creating new channels programmatically with specified participants and settings, facilitating automated team or topic-based communication clusters within an automation pipeline.", + "limitations": "This tool does not handle message sending within channels, permissions assignment beyond participant inclusion, or integration with external notification systems. It assumes the target environment supports channel creation via API or SDK.", + "examples": [ + "Create a private team channel named 'Dev Team' including a list of developer user IDs.", + "Create a broadcast channel called 'Announcements' that includes all company members.", + "Create a temporary team channel with a description and some metadata for an event coordination." + ] + }, + "tags": [ + "automation", + "communication", + "channel-creation", + "team-collaboration", + "workflow", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"Dev Team\",\"channelType\":\"private\",\"participants\":[\"user123\",\"user456\",\"user789\"],\"description\":\"Development project team channel\"}", + "description": "Creating a private channel named 'Dev Team' with three specified participants." + }, + { + "inputJson": "{\"channelName\":\"Announcements\",\"channelType\":\"broadcast\",\"participants\":[\"user001\",\"user002\",\"user003\",\"user004\"],\"isArchived\":false}", + "description": "Creating a broadcast channel named 'Announcements' with a broad participant list." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "automation-frameworks.createDiagram", + "description": "Generates structured diagrams such as flowcharts, sequence diagrams, or organizational charts based on input specifications. Accepts diagram type, node and edge definitions, and styling options, processes these inputs to build the diagram structure, and outputs a diagram file or data representation.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "diagramType", + "type": "string", + "description": "The type of diagram to create, e.g., flowchart, sequence, orgChart. Required to determine diagram structure.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodes", + "type": "array", + "description": "An array of node objects defining nodes in the diagram. Each node includes at minimum an id and a label.", + "required": true, + "defaultValue": "" + }, + { + "name": "edges", + "type": "array", + "description": "An array of edges defining connections between nodes. Each edge typically includes from and to node IDs, and optionally a label or type.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Styling options such as colors, fonts, shapes, and layout preferences to customize the diagram's appearance.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the generated diagram, e.g., SVG, PNG, JSON data.", + "required": false, + "defaultValue": "SVG" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated diagram in the specified format, including data (base64 or raw) and metadata such as format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate visual diagrams from structured data describing nodes and connections, such as creating flowcharts from process descriptions, sequence diagrams from interaction steps, or org charts from personnel data. It supports various diagram types and styling options to suit different automation needs.", + "limitations": "Cannot interpret unstructured natural language inputs to infer diagram structure. It requires well-defined nodes and edges. Complex layout optimizations are limited, and highly specialized diagram types are not supported.", + "examples": [ + "Create a flowchart diagram visualizing a software deployment process with specific nodes and edges.", + "Generate an organizational chart using employee hierarchy data.", + "Build a sequence diagram from a list of interaction steps between system components." + ] + }, + "tags": [ + "diagram", + "automation", + "flowchart", + "sequence", + "orgChart", + "visualization", + "media" + ], + "examples": [ + { + "inputJson": "{\"diagramType\":\"flowchart\",\"nodes\":[{\"id\":\"start\",\"label\":\"Start\"},{\"id\":\"process1\",\"label\":\"Process Step 1\"},{\"id\":\"end\",\"label\":\"End\"}],\"edges\":[{\"from\":\"start\",\"to\":\"process1\"},{\"from\":\"process1\",\"to\":\"end\"}],\"styleOptions\":{\"nodeShape\":\"rectangle\",\"colorScheme\":\"blue\"},\"outputFormat\":\"SVG\"}", + "description": "Create a simple flowchart with start, process, and end nodes styled in blue rectangles." + }, + { + "inputJson": "{\"diagramType\":\"orgChart\",\"nodes\":[{\"id\":\"ceo\",\"label\":\"CEO\"},{\"id\":\"cto\",\"label\":\"CTO\"},{\"id\":\"dev1\",\"label\":\"Developer 1\"},{\"id\":\"dev2\",\"label\":\"Developer 2\"}],\"edges\":[{\"from\":\"ceo\",\"to\":\"cto\"},{\"from\":\"cto\",\"to\":\"dev1\"},{\"from\":\"cto\",\"to\":\"dev2\"}],\"styleOptions\":{\"nodeShape\":\"ellipse\",\"colorScheme\":\"green\"},\"outputFormat\":\"PNG\"}", + "description": "Generate an organizational chart displaying CEO and tech team hierarchy with green ellipse nodes in PNG format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "automation-frameworks.createDependency", + "description": "This tool automates the creation and setup of a dependency entry in a project's package management configuration. It accepts parameters like dependency name, version, package manager type, and whether it is a dev or runtime dependency. It updates or generates the appropriate manifest file (e.g., package.json, requirements.txt) accordingly and returns the updated dependency manifest content and a success status.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "dependencyName", + "type": "string", + "description": "The name of the dependency to add or create in the project.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "The version or version range of the dependency to use, e.g., '^1.2.3' or 'latest'.", + "required": false, + "defaultValue": "latest" + }, + { + "name": "packageManager", + "type": "string", + "description": "The package manager type to target, e.g., 'npm', 'yarn', 'pip', or 'maven'.", + "required": true, + "defaultValue": "" + }, + { + "name": "isDevDependency", + "type": "boolean", + "description": "Indicates if the dependency should be added as a development dependency.", + "required": false, + "defaultValue": "false" + }, + { + "name": "projectPath", + "type": "string", + "description": "Filesystem path to the project root where the dependency manifest is located or to be created.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the updated dependencies manifest content as a string and a status message indicating success or details of any errors." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically add or create dependencies within different types of automation workflow projects, handling various package managers automatically and generating or updating manifest files without manual file edits. Helpful during CI/CD pipeline setup or automated project scaffolding.", + "limitations": "Does not perform actual installation of dependencies; it only modifies or creates the dependency configuration file. Limited to common package managers specified; custom or unusual package managers are unsupported.", + "examples": [ + "Add a runtime dependency 'lodash' version '4.17.21' to an npm project.", + "Add a dev dependency 'pytest' latest version to a python pip project in 'dev' mode.", + "Create a maven project dependency 'junit' version '5.7.0' in a specified project path." + ] + }, + "tags": [ + "automation", + "dependency", + "package-manager", + "build", + "configuration", + "setup" + ], + "examples": [ + { + "inputJson": "{\"dependencyName\":\"express\",\"version\":\"^4.17.1\",\"packageManager\":\"npm\",\"isDevDependency\":false,\"projectPath\":\"/usr/src/app\"}", + "description": "Add Express as a runtime dependency to an npm project located at /usr/src/app." + }, + { + "inputJson": "{\"dependencyName\":\"pytest\",\"version\":\"latest\",\"packageManager\":\"pip\",\"isDevDependency\":true,\"projectPath\":\"/home/user/project\"}", + "description": "Add Pytest as a development dependency for a Python pip project." + }, + { + "inputJson": "{\"dependencyName\":\"junit\",\"version\":\"5.7.0\",\"packageManager\":\"maven\",\"isDevDependency\":false,\"projectPath\":\"C:\\\\projects\\\\javaapp\"}", + "description": "Add JUnit version 5.7.0 as a runtime dependency in a Maven Java project on Windows." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "automation-frameworks.createVulnerability", + "description": "Creates a structured vulnerability record based on specified inputs such as vulnerability type, severity, affected components, and description. Processes the inputs to generate a standardized vulnerability object useful for tracking and automation workflows in security management systems.", + "category": "automation-frameworks", + "parameters": [ + { + "name": "vulnerabilityType", + "type": "string", + "description": "Type or category of the vulnerability (e.g., SQL Injection, XSS)", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the vulnerability (e.g., Low, Medium, High, Critical)", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description explaining the vulnerability's nature and impact", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of components, modules, or systems affected by the vulnerability", + "required": false, + "defaultValue": "[]" + }, + { + "name": "discoveredDate", + "type": "string", + "description": "Date when the vulnerability was discovered, in ISO 8601 format", + "required": false, + "defaultValue": "" + }, + { + "name": "references", + "type": "array", + "description": "Array of URLs or identifiers referencing external advisory or reports related to the vulnerability", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isConfirmed", + "type": "boolean", + "description": "Flag indicating whether the vulnerability has been confirmed through testing or analysis", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A standardized vulnerability object including fields like id, type, severity, description, affected components, discovery date, references, and confirmation status" + }, + "aiAgent": { + "useCase": "This tool enables AI agents to programmatically generate detailed and standardized vulnerability entries during automated security testing or incident management workflows, facilitating consistent tracking and downstream processing such as ticket creation or report generation.", + "limitations": "This tool does not perform vulnerability detection or validation; it only creates structured records from provided data. It assumes input accuracy and completeness.", + "examples": [ + "Create a high severity SQL Injection vulnerability affecting the payment module with detailed description.", + "Record a confirmed critical XSS vulnerability discovered on 2024-05-15 with external advisory links.", + "Add a medium severity vulnerability for outdated library in authentication service without references." + ] + }, + "tags": [ + "automation", + "security", + "vulnerability", + "record-creation", + "incident-management" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityType\":\"SQL Injection\",\"severity\":\"High\",\"description\":\"Unsanitized user input leads to database manipulation.\",\"affectedComponents\":[\"Payment Module\"],\"discoveredDate\":\"2024-05-10\",\"references\":[\"https://owasp.org/www-community/attacks/SQL_Injection\"],\"isConfirmed\":true}", + "description": "Create a confirmed high severity SQL Injection vulnerability affecting the payment module with reference link." + }, + { + "inputJson": "{\"vulnerabilityType\":\"Cross-Site Scripting (XSS)\",\"severity\":\"Critical\",\"description\":\"Reflected XSS vulnerability on login page that allows script injection.\",\"affectedComponents\":[\"Login Page\"],\"discoveredDate\":\"2024-05-15\",\"references\":[],\"isConfirmed\":true}", + "description": "Record a confirmed critical XSS vulnerability discovered on login page on specific date without references." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "statistics-tools.renderFile", + "description": "This tool accepts a statistical model output file in common formats (e.g., CSV, JSON, or Excel) containing data and summary statistics. It processes the file to generate a comprehensive visual report including charts, tables, and summary statistics rendered as a PDF or image file. The output is suitable for presentations or documentation.", + "category": "statistics-tools", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "File path or URI to the input statistical data file to be rendered. Supports CSV, JSON, and Excel formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the rendered report file. Options include 'pdf', 'png', or 'jpeg'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Flag to include graphical charts such as histograms, scatter plots, or boxplots in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include textual summary statistics and data tables in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to display prominently on the rendered report.", + "required": false, + "defaultValue": "" + }, + { + "name": "pageOrientation", + "type": "string", + "description": "Page orientation for PDF output. Options are 'portrait' or 'landscape'.", + "required": false, + "defaultValue": "portrait" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of data rows to render in tables to prevent oversized reports. Excess data will be summarized.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the path or URI to the generated rendered file and metadata about the report such as file size and number of visual elements included." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to create a professional visual overview report from raw statistical data files to facilitate data communication, presentations, or documentation. It is suitable when users want automated rendering of statistical outputs without manual plotting or formatting.", + "limitations": "This tool does not perform advanced statistical modeling or data cleaning. It only renders data present in supported file formats and may not interpret complex nested data structures. Large datasets may be truncated according to 'maxRows'.", + "examples": [ + "Render a CSV file containing summary statistics as a PDF report including charts and summary tables.", + "Generate a landscape-oriented PNG report from JSON statistical output without charts for embedding into a presentation.", + "Create a JPEG summary report titled 'Sales Data Q2' from an Excel file including charts but excluding numeric tables." + ] + }, + "tags": [ + "statistics", + "rendering", + "reporting", + "visualization", + "file-processing", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/data/summary_stats.csv\",\"outputFormat\":\"pdf\",\"includeCharts\":true,\"includeSummary\":true,\"title\":\"Annual Report Summary\",\"pageOrientation\":\"portrait\",\"maxRows\":50}", + "description": "Render a CSV file into a portrait PDF report with charts and summary tables titled 'Annual Report Summary' limiting tables to 50 rows." + }, + { + "inputJson": "{\"inputFilePath\":\"/data/model_output.json\",\"outputFormat\":\"png\",\"includeCharts\":false,\"includeSummary\":true,\"title\":\"Model Output Overview\",\"pageOrientation\":\"landscape\"}", + "description": "Generate a landscape PNG report from a JSON model output file including only summary text and tables, excluding charts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "statistics-tools.sendMessage", + "description": "Sends a formatted message containing statistical analysis summaries or model results to specified recipients via email or messaging platforms. Accepts input data including analysis type, result summaries, and recipient contact details, then generates and sends a clear message conveying key statistical insights.", + "category": "statistics-tools", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient contact strings (emails or phone numbers) to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of statistical analysis performed (e.g., regression, ANOVA) to contextualize the message content.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "Concise summary text of the statistical results or model outcomes to include in the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "detailedResults", + "type": "string", + "description": "Optional detailed statistical results or model diagnostics to append after the summary in the message.", + "required": false, + "defaultValue": "" + }, + { + "name": "messageFormat", + "type": "string", + "description": "Format of the message to send: 'text' for plain text or 'html' for formatted HTML content.", + "required": false, + "defaultValue": "text" + }, + { + "name": "sendMethod", + "type": "string", + "description": "Method to send the message, e.g., 'email' or 'sms'. Determines delivery channel.", + "required": true, + "defaultValue": "email" + } + ], + "returns": { + "type": "object", + "description": "An object indicating success status, any error messages, and details of message dispatch per recipient." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to communicate statistical analysis results directly to stakeholders, team members, or clients in a clear, formatted message. It streamlines sharing insights from data analyses or modeling within or outside an organization.", + "limitations": "This tool does not perform statistical analysis itself, nor does it validate recipient contact formats or handle mass distribution with throttling. It depends on external messaging/email infrastructure to complete delivery.", + "examples": [ + "Send a regression analysis summary report to a client via email.", + "Send an ANOVA result message to a research team via SMS.", + "Deliver detailed model diagnostics via HTML email to data science stakeholders." + ] + }, + "tags": [ + "statistics", + "communication", + "reporting", + "messaging", + "email", + "sms", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"alice@example.com\"],\"analysisType\":\"Regression\",\"summary\":\"The model explains 85% of variance with significant predictors.\",\"detailedResults\":\"R-squared:0.85, p<0.01 for predictors.\",\"messageFormat\":\"text\",\"sendMethod\":\"email\"}", + "description": "Send a plain text email with regression analysis summary and detailed results to a single recipient." + }, + { + "inputJson": "{\"recipients\":[\"+15551234567\"],\"analysisType\":\"ANOVA\",\"summary\":\"ANOVA indicates significant group differences (p=0.02).\",\"messageFormat\":\"text\",\"sendMethod\":\"sms\"}", + "description": "Send an SMS with ANOVA analysis summary to a phone number." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "statistics-tools.uploadReport", + "description": "Uploads a statistical analysis report file along with metadata to the server for archival and further review. Accepts report files in PDF or DOCX formats, associated metadata like author, title, and description, and stores them securely. Returns confirmation with report ID and upload timestamp.", + "category": "statistics-tools", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path or URL to the report file to upload. Supports PDF and DOCX formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the report author or creator.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the report document.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional brief description or abstract of the report contents.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "An array of tags or keywords related to the report's content for categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "confidential", + "type": "boolean", + "description": "Flag indicating if the report is confidential and should have restricted access.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of successful upload including a unique report ID and the timestamp of upload." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to submit completed statistical reports to a centralized repository. This lets AI agents manage document archival workflows, track report metadata, and enable future retrieval or audit. It is appropriate after generating or receiving finalized report files requiring systematic storage.", + "limitations": "This tool does not perform statistical analysis or validate report content. It also does not convert or edit report files, only uploads them in accepted formats.", + "examples": [ + "Upload a PDF report titled 'Q2 Sales Analysis' by author John Smith with keywords sales, quarterly, revenue.", + "Submit a confidential DOCX report file on clinical trial statistics authored by Dr. Lee.", + "Archive a research summary report with an abstract and multiple descriptive tags." + ] + }, + "tags": [ + "upload", + "report", + "statistics", + "document", + "file-management", + "metadata", + "archival" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/reports/q2_sales_analysis.pdf\",\"author\":\"John Smith\",\"title\":\"Q2 Sales Analysis\",\"description\":\"Detailed analysis of sales trends in Q2.\",\"tags\":[\"sales\",\"quarterly\",\"revenue\"],\"confidential\":false}", + "description": "Uploading a quarterly sales analysis report as a PDF with descriptive metadata." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/reports/clinical_trial_stats.docx\",\"author\":\"Dr. Lee\",\"title\":\"Clinical Trial Statistics\",\"description\":\"Confidential report on clinical trial outcomes.\",\"tags\":[\"clinical\",\"trial\",\"statistics\"],\"confidential\":true}", + "description": "Uploading a confidential DOCX report for clinical trial statistical data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "statistics-tools.renderDocument", + "description": "This tool accepts statistical analysis results and configuration options to generate a well-formatted, comprehensive document report. It processes input statistical data, summary tables, charts, and interpretations, then renders an exportable document (e.g., PDF or HTML) suitable for sharing or publication.", + "category": "statistics-tools", + "parameters": [ + { + "name": "analysisResults", + "type": "object", + "description": "Structured statistical analysis results including models, coefficients, and test statistics to be included in the document.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryTables", + "type": "array", + "description": "Array of summary tables represented as arrays of objects or CSV strings to embed in the document for clear data presentation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "charts", + "type": "array", + "description": "Array of chart specifications or base64-encoded image data to visually represent data findings in the document.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Title of the rendered statistical report document.", + "required": false, + "defaultValue": "Statistical Analysis Report" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the report author or organization to appear on the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag indicating whether to include a textual summary and interpretation section in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the rendered document, e.g., 'pdf', 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "customStyling", + "type": "object", + "description": "Optional styling settings (fonts, colors, layout options) to customize the appearance of the document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the document content encoded as a base64 string and metadata such as filename and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool when you have statistical analysis outputs that need to be compiled into a professional report document for presentation, sharing, or publication. It automates the creation of consistent, visually structured documents including tables, charts, and textual summaries from raw statistical data.", + "limitations": "This tool does not perform any statistical calculations or validate the statistical integrity of input data. It only formats and renders provided content into a document.", + "examples": [ + "Generate a PDF report summarizing regression analysis results with charts.", + "Create an HTML document summarizing survey statistics with summary tables and author info.", + "Render a document including time series analysis outputs with customized styling and a title." + ] + }, + "tags": [ + "statistics", + "document", + "report", + "rendering", + "data visualization", + "pdf", + "html" + ], + "examples": [ + { + "inputJson": "{\"analysisResults\":{\"model\":\"linear regression\",\"coefficients\":[{\"term\":\"x1\",\"estimate\":0.5,\"pValue\":0.01}]},\"summaryTables\":[{\"Variable\":\"x1\",\"Estimate\":0.5,\"PValue\":0.01}],\"charts\":[\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\"],\"documentTitle\":\"Regression Analysis Report\",\"authorName\":\"Dr. Jane Smith\",\"includeSummary\":true,\"outputFormat\":\"pdf\",\"customStyling\":{\"font\":\"Arial\",\"colorScheme\":\"blue\"}}", + "description": "Render a PDF report for a linear regression analysis with tables, charts, summary, and custom style." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "statistics-tools.draftEmail", + "description": "Generates a professional email draft to communicate statistical analysis results. Accepts summary statistics, key findings, audience type, and tone preference as inputs, and produces a clear, concise email draft suitable for sharing insights with stakeholders.", + "category": "statistics-tools", + "parameters": [ + { + "name": "statisticsSummary", + "type": "string", + "description": "A brief summary of the statistical analysis results to include in the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFindings", + "type": "array", + "description": "An array of key points or findings from the statistical analysis to highlight in the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceType", + "type": "string", + "description": "Type of audience for the email (e.g., technical, management, client) to tailor the language accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the email, for example: formal, informal, neutral.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include actionable recommendations based on the analysis findings.", + "required": false, + "defaultValue": "true" + }, + { + "name": "emailSubject", + "type": "string", + "description": "Optional custom subject line for the email. If omitted, a default subject will be generated.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the subject line and body text of the drafted email message." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to communicate statistical analysis results in a professional email format tailored to various audience types and tones. It automates drafting clear and effective emails to convey data insights, reducing manual effort and improving communication quality.", + "limitations": "The tool cannot send emails directly or handle highly specialized domain jargon; it focuses solely on drafting the email text and subject line based on provided inputs.", + "examples": [ + "Draft an email to management summarizing the sales data analysis with key trends and recommendations in a formal tone.", + "Create a technical update email for data science team highlighting statistical findings with an informal tone.", + "Generate an email for clients that explains recent survey statistics simply and neutrally without recommendations." + ] + }, + "tags": [ + "email", + "statistics", + "communication", + "reporting", + "automation", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"statisticsSummary\":\"Our analysis of Q1 sales data reveals a 12% increase compared to last year.\",\"keyFindings\":[\"Sales increased notably in the EMEA region.\",\"Product A outperformed expectations.\",\"Customer retention rates have improved.\"],\"audienceType\":\"management\",\"tone\":\"formal\",\"includeRecommendations\":true,\"emailSubject\":\"Q1 Sales Analysis Results\"}", + "description": "Formal email to management summarizing sales analysis with recommendations and custom subject." + }, + { + "inputJson": "{\"statisticsSummary\":\"The regression model achieved an R-squared of 0.87.\",\"keyFindings\":[\"Significant predictors include age and income.\",\"No multicollinearity detected.\"],\"audienceType\":\"technical\",\"tone\":\"informal\",\"includeRecommendations\":false,\"emailSubject\":\"\"}", + "description": "Informal technical email update about regression model results with no recommendations and default subject." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "statistics-tools.buildServer", + "description": "This tool provisions and configures a statistics analysis server capable of hosting statistical software and managing computational resources. It accepts configuration parameters including software packages to install, hardware specs such as CPU and RAM, and network settings. It outputs deployment details including server IP, status, and installed components.", + "category": "statistics-tools", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "The unique name identifier for the server to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate to the server for statistical computations.", + "required": true, + "defaultValue": "4" + }, + { + "name": "ramGb", + "type": "number", + "description": "Amount of RAM in gigabytes to allocate to the server.", + "required": true, + "defaultValue": "16" + }, + { + "name": "storageGb", + "type": "number", + "description": "Disk storage size in gigabytes for installing statistical software and data storage.", + "required": false, + "defaultValue": "100" + }, + { + "name": "osType", + "type": "string", + "description": "Operating system type to install on the server, e.g., Ubuntu 20.04, CentOS 8.", + "required": true, + "defaultValue": "Ubuntu 20.04" + }, + { + "name": "softwarePackages", + "type": "array", + "description": "List of statistical software packages to install, e.g., ['R', 'Python', 'Jupyter'].", + "required": false, + "defaultValue": "[\"R\", \"Python\"]" + }, + { + "name": "networkSetup", + "type": "object", + "description": "Network configuration details including firewall rules and SSH access setup.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "autoStartServices", + "type": "boolean", + "description": "Whether to automatically start statistical server services after deployment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Details of the provisioned server including IP address, status, installed software, and resource allocation." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automatically provision and configure a dedicated server environment optimized for statistical analysis and modeling workloads. It suits scenarios requiring reproducible environments, specific software installations, and resource allocation for heavy statistical computation tasks.", + "limitations": "Does not handle real-time job scheduling or statistical analysis itself; it only sets up the infrastructure. Network setup options are basic; complex networking must be managed externally.", + "examples": [ + "Deploy a statistical server with 8 CPU cores, 32GB RAM, and R and Python installed.", + "Set up a server named 'stat-analysis-01' running Ubuntu 20.04 with Jupyter notebook and auto starting services.", + "Configure a server with default specs but with custom firewall rules allowing only SSH and HTTP traffic." + ] + }, + "tags": [ + "statistics", + "server", + "infrastructure", + "provisioning", + "setup", + "computing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"stat-server-01\",\"cpuCores\":8,\"ramGb\":32,\"storageGb\":200,\"osType\":\"Ubuntu 20.04\",\"softwarePackages\":[\"R\",\"Python\",\"Jupyter\"],\"networkSetup\":{\"firewallRules\":[{\"port\":22,\"protocol\":\"TCP\",\"action\":\"allow\"},{\"port\":80,\"protocol\":\"TCP\",\"action\":\"allow\"}]},\"autoStartServices\":true}", + "description": "Provision a server with substantial resources and common statistical tools installed. Includes basic firewall allowing SSH and HTTP." + }, + { + "inputJson": "{\"serverName\":\"quick-stat\",\"cpuCores\":4,\"ramGb\":16,\"osType\":\"CentOS 8\",\"softwarePackages\":[\"R\"],\"autoStartServices\":false}", + "description": "Quick server setup with default CPU and RAM, CentOS OS and R installed. Services will not auto-start after setup." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "statistics-tools.buildDatabase", + "description": "This tool accepts raw statistical data in CSV or JSON format and user-defined schema specifications to build a structured, queryable database optimized for statistical analysis and modeling tasks. It processes the input data, validates and normalizes it according to schema rules, and outputs a ready-to-use database connection string or configuration for integration with statistical tools.", + "category": "statistics-tools", + "parameters": [ + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data, accepted values are 'CSV' or 'JSON'.", + "required": true, + "defaultValue": "" + }, + { + "name": "rawData", + "type": "string", + "description": "Raw data as a string in the specified format (CSV or JSON).", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "An object defining the database schema including table names, column types, and constraints to organize the data.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database to build, e.g., 'SQLite', 'PostgreSQL', or 'MySQL'.", + "required": true, + "defaultValue": "SQLite" + }, + { + "name": "optimizeFor", + "type": "string", + "description": "Optimization target, such as 'querySpeed', 'storageEfficiency', or 'analytics'.", + "required": false, + "defaultValue": "querySpeed" + }, + { + "name": "includeIndexes", + "type": "boolean", + "description": "Flag indicating whether to create indexes to speed up queries based on the schema.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the database connection URI or filepath along with metadata describing the database schema and statistics to verify successful construction." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw statistical datasets into structured databases optimized for statistical operations, enabling faster queries and model integration. Ideal when the user provides raw data and a desired schema but lacks database infrastructure.", + "limitations": "Cannot process unstructured or corrupted data; does not implement in-database advanced analytics or machine learning; requires schema definition to build the database correctly.", + "examples": [ + "Build a SQLite database from CSV financial time series data with indexes for fast range queries.", + "Create a PostgreSQL database from JSON survey responses with a schema specifying categorical and continuous variables.", + "Optimize MySQL database schema for analytics workload on demographic data." + ] + }, + "tags": [ + "database", + "statistics", + "data-structuring", + "data-loading", + "schema", + "analytics", + "build" + ], + "examples": [ + { + "inputJson": "{\"dataFormat\":\"CSV\",\"rawData\":\"date,value\\n2023-01-01,100\\n2023-01-02,105\",\"schemaDefinition\":{\"tables\":[{\"name\":\"time_series\",\"columns\":[{\"name\":\"date\",\"type\":\"DATE\"},{\"name\":\"value\",\"type\":\"FLOAT\"}]}]},\"databaseType\":\"SQLite\",\"optimizeFor\":\"querySpeed\",\"includeIndexes\":true}", + "description": "Build a SQLite database from CSV time series data optimized for fast queries." + }, + { + "inputJson": "{\"dataFormat\":\"JSON\",\"rawData\":\"[{\\\"participant\\\":1,\\\"score\\\":85},{\\\"participant\\\":2,\\\"score\\\":90}]\",\"schemaDefinition\":{\"tables\":[{\"name\":\"survey\",\"columns\":[{\"name\":\"participant\",\"type\":\"INTEGER\"},{\"name\":\"score\",\"type\":\"INTEGER\"}]}]},\"databaseType\":\"PostgreSQL\",\"includeIndexes\":false}", + "description": "Create a PostgreSQL database from JSON survey data with a simple schema and no indexes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "statistics-tools.buildTest", + "description": "Creates a statistical hypothesis test based on user-provided sample data and test parameters. Accepts numerical datasets and test details (type, alternative hypothesis, significance level), performs the chosen statistical test, and returns the test statistic, p-value, and conclusion about rejecting the null hypothesis.", + "category": "statistics-tools", + "parameters": [ + { + "name": "sampleData", + "type": "array", + "description": "Array of numerical values representing the sample data to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of hypothesis test to perform: 't-test', 'z-test', 'chi-squared', or 'anova'.", + "required": true, + "defaultValue": "" + }, + { + "name": "alternativeHypothesis", + "type": "string", + "description": "Specifies the alternative hypothesis: 'two-sided', 'less', or 'greater'.", + "required": false, + "defaultValue": "two-sided" + }, + { + "name": "populationMean", + "type": "number", + "description": "Population mean value used for one-sample tests; ignored otherwise.", + "required": false, + "defaultValue": "0" + }, + { + "name": "significanceLevel", + "type": "number", + "description": "Significance level (alpha) for the test, e.g., 0.05 for 5% chance of Type I error.", + "required": false, + "defaultValue": "0.05" + }, + { + "name": "populationStdDev", + "type": "number", + "description": "Population standard deviation, required for z-test; ignored otherwise.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the test statistic numeric value, p-value, the conclusion string indicating if the null hypothesis is rejected, and details of the test performed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to perform common statistical hypothesis tests on sample data within an automated workflow. It supports multiple test types, handles input parameters for test configuration, and provides interpretable hypothesis test results for decision-making or reporting.", + "limitations": "Does not handle multivariate tests, complex modeling, or non-numeric data. Assumes valid input data and test choice; improper configurations may cause errors. Does not perform multiple comparison corrections or advanced statistical diagnostics.", + "examples": [ + "Perform a two-sided t-test on sample data to compare to a population mean of 100 at 0.05 significance.", + "Run a z-test for a given sample with known population standard deviation.", + "Conduct a chi-squared test for goodness-of-fit given frequency counts." + ] + }, + "tags": [ + "statistics", + "hypothesis-testing", + "statistical-analysis", + "data-science", + "t-test", + "z-test", + "chi-squared", + "anova" + ], + "examples": [ + { + "inputJson": "{\"sampleData\":[5.1,5.5,5.0,5.3,5.8],\"testType\":\"t-test\",\"alternativeHypothesis\":\"two-sided\",\"populationMean\":5.0,\"significanceLevel\":0.05}", + "description": "Perform a two-sided t-test comparing sample mean to population mean 5.0 with 5% significance." + }, + { + "inputJson": "{\"sampleData\":[2.3,2.9,3.1,2.7,3.0],\"testType\":\"z-test\",\"populationMean\":2.5,\"populationStdDev\":0.5,\"significanceLevel\":0.01}", + "description": "Run a z-test on sample data with known population SD=0.5, population mean=2.5, alpha=0.01." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "statistics-tools.buildCommit", + "description": "BuildCommit processes input data representing code changes and statistical models of commit history to generate a detailed commit object with metadata analysis. Inputs include commit message, changed files, author info, and optional statistical parameters; it outputs a structured commit summary incorporating statistical insights from the provided data.", + "category": "statistics-tools", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "Commit description text summarizing the code changes", + "required": true, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of changed file paths included in the commit", + "required": true, + "defaultValue": "[]" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the commit author", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the commit author", + "required": true, + "defaultValue": "" + }, + { + "name": "commitDate", + "type": "string", + "description": "ISO 8601 timestamp of the commit date and time", + "required": false, + "defaultValue": "" + }, + { + "name": "statisticalModel", + "type": "object", + "description": "Optional statistical model parameters or data to analyze commit impact or frequency", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDiffSummary", + "type": "boolean", + "description": "Flag to generate a summary of changes based on diffs", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured commit object including metadata fields such as message, author, date, changed files, and statistical analysis results if provided" + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate or analyze a commit object enriched with statistical data, such as assessing commit patterns, impact, or frequency from code repository metadata combined with code changes. It supports building comprehensive commit summaries for further processing or reporting in software development workflows.", + "limitations": "This tool does not execute version control commands or interact with actual repositories; it processes and constructs commit objects from provided input data only.", + "examples": [ + "Create a commit object summarizing the latest changes with author details and generate a diff summary.", + "Build a commit object incorporating a statistical model analyzing commit frequency and author activity.", + "Generate a detailed commit object without statistical data but including metadata and changed files list." + ] + }, + "tags": [ + "statistics", + "commit", + "code", + "modeling", + "analysis", + "software-development", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Fix login bug\",\"changedFiles\":[\"auth/login.js\",\"auth/utils.js\"],\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane.doe@example.com\",\"commitDate\":\"2024-06-01T13:45:00Z\",\"includeDiffSummary\":true}", + "description": "Build a commit object for a bug fix including a diff summary." + }, + { + "inputJson": "{\"commitMessage\":\"Add new analytics module\",\"changedFiles\":[\"analytics/main.js\",\"analytics/helpers.js\"],\"authorName\":\"John Smith\",\"authorEmail\":\"john.smith@example.com\",\"statisticalModel\":{\"commitFrequencyPerDay\":3,\"impactScore\":7.5},\"includeDiffSummary\":false}", + "description": "Generate a commit object including statistical model data describing commit frequency and impact score." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "statistics-tools.generateCSV", + "description": "Generates a CSV file content based on statistical parameters and data patterns. Accepts configuration parameters such as number of rows, columns, data types, distributions (normal, uniform, etc.), and optional seed for reproducibility. Outputs CSV formatted string matching the specifications.", + "category": "statistics-tools", + "parameters": [ + { + "name": "numRows", + "type": "number", + "description": "Number of rows of data to generate (excluding header).", + "required": true, + "defaultValue": "" + }, + { + "name": "numColumns", + "type": "number", + "description": "Number of columns in the CSV data (excluding header).", + "required": true, + "defaultValue": "" + }, + { + "name": "columnNames", + "type": "array", + "description": "Array of strings specifying column header names. Must match numColumns in length. If empty, default names Col1, Col2,... are used.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "columnDistributions", + "type": "array", + "description": "Array of distribution specifications for each column (length = numColumns). Each item is an object specifying distribution type (e.g., 'normal', 'uniform', 'categorical') and parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "seed", + "type": "number", + "description": "Optional integer seed for random number generator to allow reproducible data.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Flag indicating whether to include the header row with column names in output CSV.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV data as a string under key 'csvContent'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate synthetic tabular datasets in CSV format for testing statistical analyses, simulations, or software that processes CSV data. It is ideal for generating controlled datasets with specific statistical distributions and dimensions.", + "limitations": "Cannot generate highly complex relational or hierarchical CSV data. Distribution types are limited to predefined common types (normal, uniform, categorical). Not suitable for large-scale data generation beyond memory limits. Does not validate statistical realism of generated data beyond basic distribution adherence.", + "examples": [ + "Generate a CSV with 100 rows, 3 numeric columns each normally distributed, with column headers 'Age', 'Height', 'Weight'.", + "Create a CSV of 50 rows and 2 columns where first column is categorical with categories ['A', 'B', 'C'] and second column uniform numeric.", + "Produce a reproducible CSV with 10 rows, 4 columns of uniform distributions without header." + ] + }, + "tags": [ + "statistics", + "csv", + "data-generation", + "synthetic-data", + "simulation", + "tabular-data" + ], + "examples": [ + { + "inputJson": "{\"numRows\":10,\"numColumns\":3,\"columnNames\":[\"Age\",\"Income\",\"Score\"],\"columnDistributions\":[{\"type\":\"normal\",\"mean\":30,\"std\":5},{\"type\":\"uniform\",\"min\":30000,\"max\":70000},{\"type\":\"normal\",\"mean\":75,\"std\":10}],\"seed\":42,\"includeHeader\":true}", + "description": "Generate 10 rows of CSV with 3 columns: Age (normal), Income (uniform), Score (normal), with header" + }, + { + "inputJson": "{\"numRows\":5,\"numColumns\":2,\"columnNames\":[\"Category\",\"Value\"],\"columnDistributions\":[{\"type\":\"categorical\",\"categories\":[\"A\",\"B\",\"C\"]},{\"type\":\"uniform\",\"min\":0,\"max\":100}],\"includeHeader\":true}", + "description": "Generate 5 rows of CSV with categorical and uniform columns, including header" + }, + { + "inputJson": "{\"numRows\":3,\"numColumns\":4,\"columnDistributions\":[{\"type\":\"uniform\",\"min\":0,\"max\":1},{\"type\":\"uniform\",\"min\":10,\"max\":20},{\"type\":\"uniform\",\"min\":100,\"max\":200},{\"type\":\"uniform\",\"min\":-5,\"max\":5}],\"includeHeader\":false}", + "description": "Generate 3 rows and 4 columns of uniform distributed numbers without headers" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "statistics-tools.generateSentence", + "description": "Generates a statistically coherent and contextually relevant sentence based on specified input parameters such as topic, sentence complexity, and desired sentiment. The tool uses underlying statistical language models to construct sentences that fit the given criteria, producing a natural language sentence as output.", + "category": "statistics-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme around which the sentence should be constructed.", + "required": true, + "defaultValue": "" + }, + { + "name": "complexityLevel", + "type": "string", + "description": "Desired complexity of the sentence, e.g., 'simple', 'intermediate', or 'complex'. Influences sentence structure and vocabulary.", + "required": false, + "defaultValue": "simple" + }, + { + "name": "sentiment", + "type": "string", + "description": "The emotional tone of the sentence: 'neutral', 'positive', or 'negative'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of words allowed in the generated sentence to control length.", + "required": false, + "defaultValue": "20" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence as a string under the key 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate realistic, grammatically correct sentences that are statistically likely given a topic and desired tone or complexity. It is useful for testing, demonstrations, or generating example data in scenarios requiring variable sentence constructs.", + "limitations": "Cannot guarantee perfect semantic accuracy or factual correctness; sentences are generated based on statistical language patterns, not real understanding or factual databases.", + "examples": [ + "Generate a positive, simple sentence about climate change.", + "Create a complex, negative sentence on economic downturn.", + "Produce a neutral sentence relating to renewable energy limited to 15 words." + ] + }, + "tags": [ + "language-generation", + "sentence", + "statistics", + "NLP", + "text-synthesis", + "sentiment", + "complexity" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"artificial intelligence\",\"complexityLevel\":\"simple\",\"sentiment\":\"neutral\",\"maxLength\":15}", + "description": "Generate a simple, neutral sentence about artificial intelligence." + }, + { + "inputJson": "{\"topic\":\"climate change\",\"complexityLevel\":\"complex\",\"sentiment\":\"positive\",\"maxLength\":25}", + "description": "Generate a complex, positive sentence related to climate change with a maximum length of 25 words." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "statistics-tools.createMetric", + "description": "Creates a custom statistical metric from input data by applying specified aggregation and transformation operations. Accepts structured numerical data with optional grouping keys, computes defined metric formulas, and returns the metric results along with metadata for analytics and reporting.", + "category": "statistics-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing the input dataset where each object contains fields as described in dataSchema.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSchema", + "type": "object", + "description": "Schema defining the structure of input data, including field names, types (number, string), and which fields are keys or values.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricName", + "type": "string", + "description": "The name to assign to the calculated metric output.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationField", + "type": "string", + "description": "The numerical field in the data on which to perform aggregation (e.g., sales, clicks).", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Aggregation method to use: sum, average, median, count, min, max.", + "required": true, + "defaultValue": "sum" + }, + { + "name": "groupByFields", + "type": "array", + "description": "Optional array of field names to group data by before applying aggregation.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "transformationFormula", + "type": "string", + "description": "Optional formula to transform the aggregated value (e.g., \"value / 1000\" for thousands). Use 'value' as the placeholder for aggregated metric.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the metric name as label, the computed metric results as an array of grouped values with keys, and metadata describing the metric parameters." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate custom aggregated metrics from raw numerical datasets that may require grouping and optional transformation. Ideal for analytics dashboards, reporting pipelines, or feature engineering in modeling where metrics like average sales per region or median latency per server are needed.", + "limitations": "This tool does not perform statistical hypothesis testing or model fitting. It only computes aggregations and applies simple formulas on aggregated values. Complex multivariate metrics or time series-specific calculations are beyond its scope.", + "examples": [ + "Calculate total sales by region from sales records.", + "Compute average response time grouped by server with transformation to seconds.", + "Generate count of transactions without grouping." + ] + }, + "tags": [ + "statistics", + "aggregation", + "metric creation", + "data transformation", + "analytics", + "group by" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"region\":\"North\",\"sales\":100},{\"region\":\"South\",\"sales\":150},{\"region\":\"North\",\"sales\":200}],\"dataSchema\":{\"region\":\"string\",\"sales\":\"number\"},\"metricName\":\"TotalSalesByRegion\",\"aggregationField\":\"sales\",\"aggregationMethod\":\"sum\",\"groupByFields\":[\"region\"],\"transformationFormula\":\"\"}", + "description": "Compute total sales grouped by region." + }, + { + "inputJson": "{\"data\":[{\"server\":\"A\",\"latency_ms\":120},{\"server\":\"B\",\"latency_ms\":80},{\"server\":\"A\",\"latency_ms\":100}],\"dataSchema\":{\"server\":\"string\",\"latency_ms\":\"number\"},\"metricName\":\"AvgLatencySeconds\",\"aggregationField\":\"latency_ms\",\"aggregationMethod\":\"average\",\"groupByFields\":[\"server\"],\"transformationFormula\":\"value / 1000\"}", + "description": "Calculate average latency per server and convert milliseconds to seconds." + }, + { + "inputJson": "{\"data\":[{\"transaction_id\":\"t1\",\"amount\":20},{\"transaction_id\":\"t2\",\"amount\":30}],\"dataSchema\":{\"transaction_id\":\"string\",\"amount\":\"number\"},\"metricName\":\"TransactionCount\",\"aggregationField\":\"amount\",\"aggregationMethod\":\"count\",\"groupByFields\":[],\"transformationFormula\":\"\"}", + "description": "Count total number of transactions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "statistics-tools.createNotification", + "description": "Generates a customizable notification message for statistical analysis results. Accepts input parameters that define the analytical context, key statistics summary, notification channel, and formatting preferences. Produces a formatted notification object ready for dispatch to specified recipients or systems.", + "category": "statistics-tools", + "parameters": [ + { + "name": "analysisName", + "type": "string", + "description": "Name or title of the statistical analysis or model being reported.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryStatistics", + "type": "object", + "description": "Key summary statistics from the analysis (e.g., mean, median, p-value) as key-value pairs.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "An array of recipient identifiers (e.g., email addresses or user IDs) to receive the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationChannel", + "type": "string", + "description": "The channel to send the notification through, such as 'email', 'sms', or 'dashboard'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "includePlots", + "type": "boolean", + "description": "Flag indicating whether to include reference to plots or graphical summaries in the notification.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the notification message localization (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "urgent", + "type": "boolean", + "description": "Flag that marks the notification as urgent, potentially affecting priority or formatting.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured notification object containing formatted message text, recipient list, chosen channel, and any attached metadata for dispatching." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to generate clear, structured notification messages that summarize statistical analysis outcomes for stakeholders, tailored by analysis context, audience, and delivery channel.", + "limitations": "This tool only formats and prepares notification messages; it does not send the notifications nor perform statistical calculations. It depends on provided summaries and context to build meaningful content.", + "examples": [ + "Create a notification for a completed regression analysis summarizing coefficients and p-values, to be emailed to data scientists.", + "Generate an urgent SMS notification that includes key hypothesis test results for a dashboard alert system.", + "Prepare a localized notification message summarizing A/B test metrics for a marketing team via email." + ] + }, + "tags": [ + "statistics", + "notification", + "reporting", + "communication", + "summary", + "automation" + ], + "examples": [ + { + "inputJson": "{\"analysisName\":\"Customer Churn Analysis\",\"summaryStatistics\":{\"churnRate\":\"5.2%\",\"pValue\":\"0.03\"},\"recipients\":[\"data.team@example.com\",\"manager@example.com\"],\"notificationChannel\":\"email\",\"includePlots\":true,\"language\":\"en\",\"urgent\":false}", + "description": "Email notification for a churn rate analysis with statistical significance, including plot references." + }, + { + "inputJson": "{\"analysisName\":\"Sales A/B Test\",\"summaryStatistics\":{\"conversionLift\":\"12%\",\"confidenceInterval\":\"[8%,16%]\"},\"recipients\":[\"marketing@example.com\"],\"notificationChannel\":\"sms\",\"includePlots\":false,\"language\":\"en\",\"urgent\":true}", + "description": "Urgent SMS notification for sales A/B test conversion results, without plots." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "statistics-tools.createKey", + "description": "Generates a cryptographic key based on statistical properties, such as randomness tests and entropy measures, to be used for security applications. Accepts parameters to define key length, entropy source, and randomness test thresholds, and outputs a validated cryptographic key with metrics indicating its statistical strength.", + "category": "statistics-tools", + "parameters": [ + { + "name": "keyLength", + "type": "number", + "description": "Length of the cryptographic key in bits to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "entropySource", + "type": "string", + "description": "Type of entropy source to use for random generation (e.g., 'system', 'userInput', 'external').", + "required": true, + "defaultValue": "system" + }, + { + "name": "randomnessTest", + "type": "string", + "description": "Statistical test to validate randomness of the generated key (e.g., 'chiSquared', 'frequency', 'runsTest').", + "required": false, + "defaultValue": "chiSquared" + }, + { + "name": "testThreshold", + "type": "number", + "description": "Threshold value to pass the randomness test, between 0 and 1 representing confidence level.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata about entropy and statistical test results in output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated cryptographic key as a hexadecimal string, the key length, entropy score, randomness test results, and optionally metadata detailing test statistics and parameters used." + }, + "aiAgent": { + "useCase": "Use this tool when a cryptographic key must be generated with an assurance of its statistical randomness and entropy quality, for applications requiring secure keys validated by statistical tests. It helps ensure security by providing keys that meet defined entropy and randomness thresholds.", + "limitations": "This tool does not replace dedicated cryptographic hardware RNGs nor perform cryptanalysis. It only assesses statistical properties of keys, not their cryptographic strength against attacks.", + "examples": [ + "Generate a 256-bit cryptographic key using system entropy and the chi-squared randomness test with 99% confidence threshold.", + "Create a 128-bit key from user-provided entropy and check randomness using the frequency test with default threshold.", + "Produce a 512-bit key with external entropy source including detailed metadata about its entropy and test results." + ] + }, + "tags": [ + "cryptography", + "keyGeneration", + "statistics", + "entropy", + "randomness", + "security" + ], + "examples": [ + { + "inputJson": "{\"keyLength\":256,\"entropySource\":\"system\",\"randomnessTest\":\"chiSquared\",\"testThreshold\":0.99,\"includeMetadata\":true}", + "description": "Generate a 256-bit key using system entropy, validated by chi-squared test at 99% confidence, include metadata." + }, + { + "inputJson": "{\"keyLength\":128,\"entropySource\":\"userInput\",\"randomnessTest\":\"frequency\",\"testThreshold\":0.95,\"includeMetadata\":false}", + "description": "Create a 128-bit key from user input entropy with frequency randomness test at 95% confidence, no metadata." + }, + { + "inputJson": "{\"keyLength\":512,\"entropySource\":\"external\",\"randomnessTest\":\"runsTest\",\"testThreshold\":0.90,\"includeMetadata\":true}", + "description": "Generate a 512-bit key from an external entropy source, validated by runs test at 90% confidence, include metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "statistics-tools.createPullRequest", + "description": "This tool automates the creation of a Git pull request that includes statistical analysis code and model results. It accepts repository details, branch names, commit messages, and analysis scripts or data outputs. The tool commits these to a new branch and opens a pull request for review and integration, streamlining code review of statistical modeling work.", + "category": "statistics-tools", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The HTTPS or SSH URL of the Git repository where the pull request will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The target branch into which the pull request should be merged, usually 'main' or 'master'.", + "required": true, + "defaultValue": "main" + }, + { + "name": "featureBranch", + "type": "string", + "description": "The name of the new branch to create for the pull request with analysis code and results.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "The commit message describing the changes being committed in the feature branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisFiles", + "type": "array", + "description": "An array of file objects containing the path and content of each analysis script or output file to include in the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestTitle", + "type": "string", + "description": "Title of the pull request summarizing the changes for reviewers.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestDescription", + "type": "string", + "description": "A detailed description of the pull request purpose, explaining the statistical analysis and modeling included.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL of the created pull request and its unique identifier or number." + }, + "aiAgent": { + "useCase": "Use this tool when statistical analysis or modeling code changes must be pushed into a Git repository and reviewed via a pull request. This facilitates collaborative code review, version control, and integration of statistical tools and outputs. Ideal for data science teams applying models and tracking changes.", + "limitations": "This tool assumes access authorization to the target repository and that the files provided are valid scripts or outputs. It does not perform statistical validation or code correctness checks; those should be done before pull request creation.", + "examples": [ + "Create a pull request in my data analysis repo with updated regression model and diagnostics files.", + "Push a new branch with time series forecasting scripts and request review through a pull request.", + "Update statistical functions in the repo and open a pull request describing the changes for peer review." + ] + }, + "tags": [ + "git", + "pull-request", + "statistics", + "code", + "collaboration", + "version-control", + "automation" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/statistics-project.git\",\"baseBranch\":\"main\",\"featureBranch\":\"add-regression-analysis\",\"commitMessage\":\"Add linear regression model and results\",\"analysisFiles\":[{\"path\":\"models/regression.R\",\"content\":\"# R code for regression model\\nmodel <- lm(y ~ x, data = dataset)\"},{\"path\":\"results/regression-summary.txt\",\"content\":\"Call:\\nlm(y ~ x, data = dataset)\\nResiduals summary...\"}],\"pullRequestTitle\":\"Add linear regression analysis\",\"pullRequestDescription\":\"This pull request adds a new linear regression model and the corresponding summary output for review.\"}", + "description": "Create a pull request that adds a new linear regression model script and summary results to the repository." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "statistics-tools.createLead", + "description": "This tool accepts raw business data inputs including demographic, behavioral, and engagement metrics to generate a statistical lead scoring model. It processes the data using logistic regression or decision tree algorithms to produce a lead score for each prospect, prioritizing them for sales efforts.", + "category": "statistics-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing prospect data records with features such as demographics, engagement, and prior interactions.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetVariable", + "type": "string", + "description": "The name of the target variable in the dataset indicating lead conversion (e.g., 'converted').", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "The statistical model to create for lead scoring, options include 'logisticRegression' or 'decisionTree'.", + "required": false, + "defaultValue": "logisticRegression" + }, + { + "name": "trainTestSplitRatio", + "type": "number", + "description": "The ratio of data used for training vs testing (between 0 and 1).", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "featureColumns", + "type": "array", + "description": "List of feature column names used for modeling. If empty, all columns except targetVariable are used.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output lead scores, options are 'array' (default) or 'dataFrame'.", + "required": false, + "defaultValue": "array" + } + ], + "returns": { + "type": "object", + "description": "An object containing the lead scoring model summary including performance metrics, feature importance, and a scored dataset with a lead score for each record." + }, + "aiAgent": { + "useCase": "Use this tool when you have a dataset of potential leads with known conversions and want to create a predictive statistical model to score new or existing leads by their likelihood to convert. Ideal for sales and marketing teams aiming to prioritize outreach efforts based on data-driven scores.", + "limitations": "This tool does not perform data cleaning or imputation; input data should be preprocessed. It is limited to logistic regression and simple decision tree models and does not support advanced or ensemble methods. It requires labeled conversion data for supervised modeling.", + "examples": [ + "Create a lead scoring model using logistic regression for a dataset of 10,000 customer interactions.", + "Generate a decision tree lead scoring model using specific features like age, income, and past purchases.", + "Provide lead scores in array format for a marketing campaign prospect list." + ] + }, + "tags": [ + "lead-scoring", + "statistical-modeling", + "customer-prioritization", + "sales-analytics", + "logistic-regression" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"age\":30,\"income\":60000,\"pastPurchases\":2,\"converted\":1},{\"age\":45,\"income\":80000,\"pastPurchases\":0,\"converted\":0}],\"targetVariable\":\"converted\",\"modelType\":\"logisticRegression\",\"trainTestSplitRatio\":0.8,\"featureColumns\":[\"age\",\"income\",\"pastPurchases\"],\"outputFormat\":\"array\"}", + "description": "Create a logistic regression lead scoring model using age, income, and past purchases as features." + }, + { + "inputJson": "{\"data\":[{\"engagementScore\":75,\"lastContactDays\":10,\"converted\":1},{\"engagementScore\":20,\"lastContactDays\":60,\"converted\":0}],\"targetVariable\":\"converted\",\"modelType\":\"decisionTree\",\"trainTestSplitRatio\":0.7,\"featureColumns\":[],\"outputFormat\":\"dataFrame\"}", + "description": "Create a decision tree model based on engagement score and last contact days with output as a dataframe." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "statistics-tools.createCSV", + "description": "This tool generates a CSV formatted string from provided statistical data. It accepts an array of objects representing rows, an optional array specifying column order, and formatting options. It outputs a CSV string ready for saving or further processing.", + "category": "statistics-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects where each object represents a row of data with key-value pairs as columns and values.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Optional array of strings defining the column headers and their order in the output CSV. If omitted, columns are inferred from data keys.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate columns in the CSV. Defaults to comma.", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include the column headers as the first CSV row. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteValues", + "type": "boolean", + "description": "Whether to wrap all values in double quotes to handle special characters. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV string under the key 'csvString'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured statistical data into a CSV format for export, storage, or interoperability with other tools that accept CSV input. It's particularly useful when data is in JSON-like structures but must be shared or analyzed in tabular CSV format.", + "limitations": "This tool does not perform any data validation beyond basic string conversion, nor does it handle extremely large datasets beyond the host environment's memory capacity. It also assumes flat objects (no nested structures).", + "examples": [ + "Create a CSV string from a list of statistical measurement objects.", + "Generate CSV with specified column order for compatibility with a specific importer.", + "Export data to CSV while ensuring values are quoted and headers included." + ] + }, + "tags": [ + "csv", + "export", + "statistics", + "data-formatting", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"Name\":\"Sample A\",\"Mean\":5.2,\"StdDev\":1.1},{\"Name\":\"Sample B\",\"Mean\":3.8,\"StdDev\":0.9}],\"columns\":[\"Name\",\"Mean\",\"StdDev\"],\"delimiter\":\",\",\"includeHeaders\":true,\"quoteValues\":true}", + "description": "Generate CSV from statistical samples with specified column order and quoting." + }, + { + "inputJson": "{\"data\":[{\"Age\":30,\"Height\":175},{\"Age\":22,\"Height\":180}],\"delimiter\":\";\",\"includeHeaders\":true,\"quoteValues\":false}", + "description": "Create semicolon-delimited CSV from demographic data without quoting values." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "statistics-tools.createBranch", + "description": "Creates a statistical decision branch for model building or data segmentation. Accepts input conditions and corresponding subsets or outcomes, processes them to define a branching structure used in decision trees or flow models. Outputs a structured branch object representing the conditional split and resulting paths.", + "category": "statistics-tools", + "parameters": [ + { + "name": "condition", + "type": "string", + "description": "Logical expression defining the branching condition, e.g., 'age > 30'.", + "required": true, + "defaultValue": "" + }, + { + "name": "trueBranch", + "type": "object", + "description": "Sub-branch or outcome when the condition is true, can be a nested branch or a terminal value.", + "required": true, + "defaultValue": "" + }, + { + "name": "falseBranch", + "type": "object", + "description": "Sub-branch or outcome when the condition is false, can be a nested branch or a terminal value.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Optional name or label for this branch for identification purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured branch object representing the condition and its two branches, including nested branches or outcomes." + }, + "aiAgent": { + "useCase": "Use this tool when building or manipulating decision tree models or other branching statistical models to programmatically create conditional splits with defined true/false branches. Ideal for generating or modifying branches in a model based on conditions and expected outcomes.", + "limitations": "Cannot perform statistical validation or optimization of branches; it only constructs the branch structure from given inputs.", + "examples": [ + "Create a branch that splits data where 'income > 50000' with specified outcomes for true and false cases.", + "Construct nested branches for a decision tree classification model with multiple conditions.", + "Generate a labeled branch for segmentation based on demographic conditions." + ] + }, + "tags": [ + "statistics", + "decision-tree", + "branch", + "modeling", + "conditional", + "data-segmentation" + ], + "examples": [ + { + "inputJson": "{\"condition\":\"age > 30\",\"trueBranch\":{\"value\":\"senior\"},\"falseBranch\":{\"value\":\"junior\"},\"branchName\":\"ageSplit\"}", + "description": "Create a branch splitting on age greater than 30, labeling true branch as 'senior' and false branch as 'junior'." + }, + { + "inputJson": "{\"condition\":\"salary >= 70000\",\"trueBranch\":{\"condition\":\"department == 'sales'\",\"trueBranch\":{\"value\":\"high_earner_sales\"},\"falseBranch\":{\"value\":\"high_earner_others\"}},\"falseBranch\":{\"value\":\"low_earner\"},\"branchName\":\"salaryAndDeptSplit\"}", + "description": "Create a nested branch splitting first on salary, then on department for high earners." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "statistics-tools.createConfig", + "description": "Generates a configurable JSON object for statistical analysis setups. Accepts user parameters such as analysis type, variables to analyze, significance level, and model assumptions. Outputs a standardized configuration that can be used to run statistical models or tests in compatible software or scripts.", + "category": "statistics-tools", + "parameters": [ + { + "name": "analysisType", + "type": "string", + "description": "Type of statistical analysis to configure (e.g., 'regression', 'anova', 't-test')", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "array", + "description": "List of variables involved in the analysis, including independent and dependent variables", + "required": true, + "defaultValue": "" + }, + { + "name": "significanceLevel", + "type": "number", + "description": "Significance level (alpha) for hypothesis testing, e.g., 0.05", + "required": false, + "defaultValue": "0.05" + }, + { + "name": "modelAssumptions", + "type": "array", + "description": "List of model assumptions to apply or check (e.g., normality, homoscedasticity)", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeDiagnostics", + "type": "boolean", + "description": "Whether to include diagnostic tests configuration in the output", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output config, options include 'json' or 'yaml'", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A structured configuration object containing parameters for statistical analysis setup, ready to be consumed by analysis tools or scripts." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare detailed and precise statistical analysis configurations based on user input for automated processing or reproducible research. Ideal for generating structured setup files for various statistical tests or modeling tasks.", + "limitations": "Does not perform the statistical analyses itself, nor validate data values. It only creates configuration templates and assumes correct variable names and data formats are supplied.", + "examples": [ + "Create configuration for a regression analysis with two variables and diagnostics enabled.", + "Generate a config for an ANOVA test with significance level set to 0.01.", + "Produce a t-test analysis setup excluding model assumptions and outputting YAML format." + ] + }, + "tags": [ + "statistics", + "configuration", + "modeling", + "analysis", + "setup", + "automation" + ], + "examples": [ + { + "inputJson": "{\"analysisType\":\"regression\",\"variables\":[\"age\",\"income\"],\"significanceLevel\":0.05,\"modelAssumptions\":[\"normality\",\"linearity\"],\"includeDiagnostics\":true,\"outputFormat\":\"json\"}", + "description": "Create a regression analysis config for age and income variables with a 0.05 alpha and standard model assumptions including diagnostics." + }, + { + "inputJson": "{\"analysisType\":\"anova\",\"variables\":[\"group\",\"score\"],\"significanceLevel\":0.01,\"includeDiagnostics\":false}", + "description": "Generate an ANOVA config for group and score variables with a significance level of 0.01 and diagnostics turned off." + }, + { + "inputJson": "{\"analysisType\":\"t-test\",\"variables\":[\"preTest\",\"postTest\"],\"outputFormat\":\"yaml\"}", + "description": "Produce a t-test configuration comparing preTest and postTest variables with YAML output format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "statistics-tools.createModule", + "description": "Creates a customizable JavaScript statistics module based on specified analysis types, data inputs, and configuration options. Accepts analysis types (e.g., regression, clustering), input data schema, and parameters, and generates a modular JS code string implementing selected statistical methods with relevant functions and data handling.", + "category": "statistics-tools", + "parameters": [ + { + "name": "analysisTypes", + "type": "array", + "description": "List of statistical analysis methods to include in the module (e.g., ['regression', 'anova']).", + "required": true, + "defaultValue": "" + }, + { + "name": "inputSchema", + "type": "object", + "description": "Schema describing input data structure, types, and necessary validations for the module functions.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired style of output data (e.g., 'json', 'array', 'object') returned by module functions.", + "required": false, + "defaultValue": "json" + }, + { + "name": "useAsync", + "type": "boolean", + "description": "Whether generated module functions should support asynchronous operations (e.g., for large data or web APIs).", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include descriptive comments in the generated code for better readability and maintainability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "moduleName", + "type": "string", + "description": "Optional name for the generated JS module file or namespace for encapsulation.", + "required": false, + "defaultValue": "StatisticsModule" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JavaScript module code as a string and metadata including the module name and included analysis types." + }, + "aiAgent": { + "useCase": "Use this tool to generate ready-to-use JavaScript modules implementing chosen statistical analyses for integration into applications, enabling automated creation of consistent, maintainable, configurable statistical functions based on data types and analysis needs.", + "limitations": "This tool does not execute the statistical analysis but generates code templates; it assumes input data conform to the described schema and does not validate data itself; advanced or proprietary statistical methods may not be supported.", + "examples": [ + "Create a statistics module with linear regression and clustering functionality for numerical data.", + "Generate a JS module that outputs results as arrays asynchronously with comments for maintainability.", + "Produce a simple ANOVA analysis module for categorical input data with JSON output format." + ] + }, + "tags": [ + "statistics", + "code-generation", + "JavaScript", + "module", + "data-analysis", + "automated-coding", + "regression", + "clustering" + ], + "examples": [ + { + "inputJson": "{\"analysisTypes\":[\"regression\",\"clustering\"],\"inputSchema\":{\"type\":\"object\",\"properties\":{\"x\":{\"type\":\"array\",\"items\":{\"type\":\"number\"}},\"y\":{\"type\":\"array\",\"items\":{\"type\":\"number\"}}},\"required\":[\"x\",\"y\"]},\"outputFormat\":\"json\",\"useAsync\":false,\"includeComments\":true,\"moduleName\":\"MyStatsModule\"}", + "description": "Generate a JS statistics module with regression and clustering analyses, synchronous functions, JSON output, and comments." + }, + { + "inputJson": "{\"analysisTypes\":[\"anova\"],\"inputSchema\":{\"type\":\"object\",\"properties\":{\"groups\":{\"type\":\"array\",\"items\":{\"type\":\"array\",\"items\":{\"type\":\"number\"}}}},\"required\":[\"groups\"]},\"outputFormat\":\"array\",\"useAsync\":true,\"includeComments\":false,\"moduleName\":\"AnovaModule\"}", + "description": "Generate an asynchronous ANOVA analysis module outputting results as arrays without comments." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "statistics-tools.createInvoice", + "description": "Generates a detailed invoice document based on provided statistical analysis results, including itemized services or products, quantities, rates, and applicable taxes. Accepts input data like client info, list of billable items with statistical or analytical service descriptions, and outputs a structured invoice in JSON format suitable for billing or record-keeping.", + "category": "statistics-tools", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Name of the client to whom the invoice is issued", + "required": true, + "defaultValue": "" + }, + { + "name": "clientAddress", + "type": "string", + "description": "Billing address of the client", + "required": false, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date of the invoice in ISO 8601 format (e.g., 2024-06-01)", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date in ISO 8601 format", + "required": false, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "Array of billable items with quantity, description, unit price, and optional tax rate", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for invoice amounts (e.g., USD, EUR)", + "required": true, + "defaultValue": "USD" + }, + { + "name": "taxIncluded", + "type": "boolean", + "description": "Indicates if prices include tax or tax is added separately", + "required": false, + "defaultValue": "false" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or terms to include on the invoice", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured invoice document with totals, tax calculations, client and invoice metadata, and itemized charges" + }, + "aiAgent": { + "useCase": "Use this tool when needing to create professional, detailed invoices for clients based on statistical or analytical services rendered that include clear billing details, tax computations, and customizable fields. This tool helps automate invoicing workflows after statistical analysis completion.", + "limitations": "This tool generates invoices from provided data but does not process payments or verify client account status.", + "examples": [ + "Create an invoice for a consulting client with three statistical report items and respective hourly rates and taxes.", + "Generate a USD invoice for a client including a summary note and payment due date.", + "Produce an invoice listing multiple deliverables with specified quantities and unit prices, including tax separate from base prices." + ] + }, + "tags": [ + "invoice", + "billing", + "statistics", + "document", + "financial", + "automation", + "payment" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"clientAddress\":\"123 Business Rd, Metropolis\",\"invoiceDate\":\"2024-06-15\",\"dueDate\":\"2024-07-15\",\"items\":[{\"description\":\"Data analysis report\",\"quantity\":1,\"unitPrice\":1500,\"taxRate\":0.07},{\"description\":\"Consulting hours\",\"quantity\":10,\"unitPrice\":100,\"taxRate\":0.07}],\"currency\":\"USD\",\"taxIncluded\":false,\"notes\":\"Thank you for your business.\"}", + "description": "Invoice for a client with two billable service items including tax calculated separately and additional notes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "text-analysis.downloadCSV", + "description": "Downloads and generates a CSV file from analyzed text data. Accepts text input or URLs, performs text analysis such as tokenization or sentiment scoring, and outputs the results as a downloadable CSV file containing structured data.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw text data to analyze and convert into CSV format.", + "required": false, + "defaultValue": "" + }, + { + "name": "inputURL", + "type": "string", + "description": "URL of a web page or text resource to fetch and analyze for CSV export.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of text analysis to perform, e.g., 'tokenization', 'sentiment', or 'keywordExtraction'.", + "required": true, + "defaultValue": "tokenization" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers in the CSV output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter used to separate CSV values, such as comma or semicolon.", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV content as a string and the suggested filename for download." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert textual data from direct input or web content into a structured CSV file after applying specific text analysis methods, enabling offline data manipulation or reporting.", + "limitations": "Cannot perform complex NLP tasks beyond predefined analysis types; large or poorly formatted web pages may fail to download or analyze properly.", + "examples": [ + "Download CSV of sentiment scores from given text.", + "Generate CSV with tokenized words from text input.", + "Fetch and analyze a URL's content then download CSV file with extracted keywords." + ] + }, + "tags": [ + "text-analysis", + "download", + "CSV", + "export", + "NLP", + "data-export" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Happy sunny day! Good weather.\",\"analysisType\":\"sentiment\",\"includeHeaders\":true,\"delimiter\":\",\"}", + "description": "Generate a CSV file containing sentiment scores for a short input text." + }, + { + "inputJson": "{\"inputURL\":\"https://example.com/article\",\"analysisType\":\"keywordExtraction\",\"includeHeaders\":true,\"delimiter\":\",\"}", + "description": "Download a CSV file of keywords extracted from a web page URL." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "text-analysis.formatParagraph", + "description": "Formats a raw text paragraph by adjusting indentation, line width, and spacing to produce a cleanly structured paragraph. Accepts plain text input and formatting parameters, outputs a neatly formatted paragraph string respecting the specified style.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "Raw input paragraph text to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum number of characters per line before wrapping. Defaults to 80.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to indent the first line of the paragraph. Defaults to 0.", + "required": false, + "defaultValue": "0" + }, + { + "name": "useJustification", + "type": "boolean", + "description": "Whether to justify the text so both edges align (true) or left-align only (false). Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "spacing", + "type": "number", + "description": "Number of blank lines to add after the paragraph. Defaults to 1.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "string", + "description": "Formatted paragraph string with specified indentation, line width, justification, and spacing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to cleanly present or display text paragraphs in a readable format, such as generating reports, formatting documentation, or preparing text for UI display where line width and indentation matter. It helps transform raw or unformatted text into consistent paragraph blocks.", + "limitations": "This tool does not perform advanced typography tasks such as hyphenation, font styling, or smart punctuation corrections. It only formats plain text paragraphs based on basic layout parameters.", + "examples": [ + "Format a raw paragraph to 60 characters width with an indentation of 4 spaces.", + "Justify a paragraph text with 80 characters width and two blank lines after.", + "Left-align paragraph with no indentation and default width." + ] + }, + "tags": [ + "text", + "formatting", + "paragraph", + "layout", + "indentation", + "justification", + "wrapping" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is an example paragraph that will be formatted by the tool. It demonstrates how line breaks will be inserted according to the specified line width and indentation.\",\"lineWidth\":50,\"indentation\":4,\"useJustification\":false,\"spacing\":1}", + "description": "Format paragraph with 50 character line width and 4 spaces indentation." + }, + { + "inputJson": "{\"text\":\"Justify this paragraph text so both left and right edges align properly over 70 characters per line.\",\"lineWidth\":70,\"indentation\":2,\"useJustification\":true,\"spacing\":2}", + "description": "Justify paragraph with 70 character width, 2 spaces indentation, and double spacing after." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "text-analysis.uploadCSV", + "description": "This tool accepts a CSV file containing text data and metadata, processes the file by validating its format and extracting specified text columns, and outputs a structured JSON object representing the uploaded text entries ready for further natural language analysis.", + "category": "text-analysis", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The file path or URL of the CSV file to upload containing text data.", + "required": true, + "defaultValue": "" + }, + { + "name": "textColumn", + "type": "string", + "description": "The name of the column in the CSV that contains the main text to process.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadataColumns", + "type": "array", + "description": "An array of column names to extract as metadata along with the text, such as author or date.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "delimiter", + "type": "string", + "description": "The delimiter used in the CSV file (default is comma).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the CSV file includes a header row.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object with an entries array, each containing the extracted text and optional metadata fields from the CSV." + }, + "aiAgent": { + "useCase": "Use this tool when you have a CSV file containing text data that needs to be ingested and structured for natural language processing, such as sentiment analysis or topic modeling. It allows extraction of the primary text column and optional metadata, preparing data for downstream NLP tasks or storage.", + "limitations": "Does not perform any text analysis itself, only uploads and structures the CSV data. It cannot handle non-CSV formats or binary file uploads. Very large CSV files may require handling in chunks outside this tool.", + "examples": [ + "Upload a CSV of customer reviews with columns 'reviewText', 'reviewDate', and 'userID' to extract reviews and their metadata.", + "Load a CSV file with tweets in the 'tweet' column to prepare for sentiment analysis.", + "Import a product feedback CSV specifying the text and metadata columns for later topic extraction." + ] + }, + "tags": [ + "upload", + "csv", + "text", + "natural-language-processing", + "data-ingestion", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/reviews.csv\",\"textColumn\":\"reviewText\",\"metadataColumns\":[\"reviewDate\",\"userID\"],\"delimiter\":\",\",\"hasHeader\":true}", + "description": "Upload a CSV file of customer reviews extracting the review text, review date, and user ID." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/tweets.csv\",\"textColumn\":\"tweet\",\"metadataColumns\":[\"username\",\"timestamp\"],\"delimiter\":\",\",\"hasHeader\":true}", + "description": "Upload a CSV of tweets extracting tweet text and metadata for analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "text-analysis.formatInvoice", + "description": "Formats raw invoice data provided as JSON or plain text into a standardized, human-readable invoice document format. It processes input invoice details such as vendor, items, prices, totals, and date, and outputs a well-structured formatted invoice either as plain text or HTML suitable for display or printing.", + "category": "text-analysis", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "The raw invoice data including fields like vendor, invoice number, date, items (description, qty, price), taxes, and totals.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the output format of the formatted invoice. Supported values: 'text', 'html'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "currencySymbol", + "type": "string", + "description": "Currency symbol to use when formatting prices. Defaults to '$'.", + "required": false, + "defaultValue": "$" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code to format dates and numbers according to region-specific conventions. Defaults to 'en-US'.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "includeTaxes", + "type": "boolean", + "description": "If true, include taxes and tax details in the formatted output. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted invoice as a string under 'formattedInvoice' and the used output format under 'format'." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or semi-structured invoice data and need to produce a clean, user-friendly invoice document for display, printing, or emailing. It helps agents convert internal data structures or OCR outputs into a consistent invoice format suitable for end users.", + "limitations": "Cannot extract invoice data from unstructured text or images; it requires structured input. It does not perform validation beyond basic presence of expected fields. Output styling is basic; no complex branding or templates.", + "examples": [ + "Format raw JSON invoice data into a human-readable text invoice for emailing.", + "Generate an HTML formatted invoice with prices in euros and European date format.", + "Display an invoice including detailed tax breakdown for auditing after data extraction." + ] + }, + "tags": [ + "formatting", + "invoice", + "document", + "text-analysis", + "nlp", + "financial", + "rendering" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"vendor\":\"Acme Corp\",\"invoiceNumber\":\"INV-1001\",\"date\":\"2024-05-20\",\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":9.99},{\"description\":\"Widget B\",\"quantity\":5,\"unitPrice\":19.99}],\"taxes\":{\"VAT\":0.2},\"currency\":\"USD\"},\"outputFormat\":\"text\",\"currencySymbol\":\"$\",\"locale\":\"en-US\",\"includeTaxes\":true}", + "description": "Format an invoice with two items, include taxes, output as plain text with US locale and dollar sign." + }, + { + "inputJson": "{\"invoiceData\":{\"vendor\":\"Global Services\",\"invoiceNumber\":\"2024-INV-742\",\"date\":\"2024-06-01\",\"items\":[{\"description\":\"Consulting\",\"quantity\":15,\"unitPrice\":150.00}],\"taxes\":{\"VAT\":0.21},\"currency\":\"EUR\"},\"outputFormat\":\"html\",\"currencySymbol\":\"€\",\"locale\":\"de-DE\",\"includeTaxes\":true}", + "description": "Format a consulting invoice as HTML, using Euro symbol and German locale conventions with VAT included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "text-analysis.renderImage", + "description": "Renders an image visualizing the analysis of input text data. Accepts raw text or text features and creates a graphical representation such as word clouds, sentiment graphs, or entity maps. Outputs image data in a specified format for visualization or reporting.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw text content to be analyzed and visualized.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationType", + "type": "string", + "description": "The type of visualization to generate, e.g., 'wordCloud', 'sentimentGraph', 'entityMap'.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "The desired output image format, such as 'png', 'jpeg', or 'svg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "colorPalette", + "type": "string", + "description": "Color scheme to use in the visualization, e.g., 'default', 'warm', or hex color codes.", + "required": false, + "defaultValue": "default" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Whether to include a legend explaining visualization elements.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the image data as a base64-encoded string and metadata such as format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create visual representations from textual data to enhance comprehension or reporting, including generating word clouds, sentiment trends, or entity relationship maps from given text. Ideal for summarizing large texts visually.", + "limitations": "Cannot perform text analysis itself; expects raw text input without performing deep linguistic processing or advanced NLP feature extraction. Visualization options are limited to predefined types.", + "examples": [ + "Generate a word cloud image from customer feedback text.", + "Produce a sentiment analysis graph image for a given product review.", + "Create an entity relationship map image based on financial news text." + ] + }, + "tags": [ + "text-analysis", + "visualization", + "image-rendering", + "NLP", + "data-visualization", + "word-cloud", + "sentiment", + "entity-recognition" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Artificial intelligence transforms industries.\",\"visualizationType\":\"wordCloud\",\"imageFormat\":\"png\",\"width\":600,\"height\":400,\"colorPalette\":\"warm\",\"showLegend\":true}", + "description": "Render a warm-colored word cloud image from a short AI-related sentence." + }, + { + "inputJson": "{\"inputText\":\"The product received positive and negative feedback.\",\"visualizationType\":\"sentimentGraph\",\"imageFormat\":\"jpeg\",\"width\":800,\"height\":600,\"colorPalette\":\"default\",\"showLegend\":true}", + "description": "Create a sentiment graph image showing positive and negative sentiment trends from customer reviews." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "text-analysis.formatCSV", + "description": "Formats provided raw CSV text input by adjusting delimiters, trimming spaces, enforcing consistent quoting, and optionally aligning columns for readability. Accepts raw CSV string and formatting options, returns cleaned and standardized CSV text as output.", + "category": "text-analysis", + "parameters": [ + { + "name": "csvText", + "type": "string", + "description": "Raw CSV text input to be formatted consistently.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character to use as field delimiter, typically ',' or ';'.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character to use for quoting fields, usually '\"'.", + "required": false, + "defaultValue": "\"" + }, + { + "name": "trimFields", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from each field.", + "required": false, + "defaultValue": "true" + }, + { + "name": "alignColumns", + "type": "boolean", + "description": "Whether to pad fields so columns align vertically for human readability.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "Formatted CSV string output with applied user preferences for delimiters, quoting, trimming, and optional column alignment." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or inconsistent CSV text data that requires uniform formatting to enable reliable parsing, readability, export, or further text analysis. It helps standardize CSV files from diverse sources that may use varied delimiters, inconsistent quoting, or uneven spacing.", + "limitations": "Does not validate CSV data correctness or schema, nor does it parse CSV into structured data objects. It only formats CSV text syntactically without fixing data errors like mismatched columns or improper escapes.", + "examples": [ + "Format this messy CSV snippet with semicolon delimiters and consistent quoting.", + "Clean up CSV text by trimming spaces and aligning columns for better display.", + "Change the CSV delimiter from comma to tab character and ensure all fields are quoted." + ] + }, + "tags": [ + "text-analysis", + "csv", + "formatting", + "data-cleaning", + "delimiter", + "quoting" + ], + "examples": [ + { + "inputJson": "{\"csvText\":\"name , age , city\\nAlice , 30 , New York\\nBob,25,Los Angeles\",\"delimiter\":\",\",\"quoteChar\":\"\\\"\",\"trimFields\":true,\"alignColumns\":true}", + "description": "Format a CSV string with commas as delimiters, trimming fields, and align columns for readability." + }, + { + "inputJson": "{\"csvText\":\"name;age;city\\nJohn ; 40 ; Chicago\\nSara;35; Boston\",\"delimiter\":\";\",\"quoteChar\":\"'\",\"trimFields\":true,\"alignColumns\":false}", + "description": "Format CSV using semicolon delimiters, single quotes for fields, and trim spaces without column alignment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "text-analysis.buildVariable", + "description": "Constructs a programmatic variable representation from natural language specifications. Accepts a textual description of a variable including its name, type, constraints, and optional initial value; parses and processes this to output a structured variable object defining the variable's attributes for code generation or analysis.", + "category": "text-analysis", + "parameters": [ + { + "name": "variableDescription", + "type": "string", + "description": "Natural language text describing the variable's name, type, constraints, and optional initial value.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Programming language context for variable conventions (e.g., 'JavaScript', 'Python'). Defaults to generic definition if unspecified.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeInitialization", + "type": "boolean", + "description": "Whether to include the initial value in the output if specified in the description.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured object representing the variable with properties such as name, type, constraints, and optional initial value, suitable for programmatic use." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to interpret natural language descriptions of variables from user input or documentation to generate or analyze code constructs automatically, facilitating code generation, refactoring, or validation workflows.", + "limitations": "Cannot interpret ambiguous or incomplete descriptions accurately; limited to basic variable attributes without complex data types or embedded logic.", + "examples": [ + "Build a variable named 'totalCount' as an integer with an initial value of 0.", + "Create a variable 'userName' that holds a string, no initial value.", + "Define a boolean variable 'isActive' that defaults to true." + ] + }, + "tags": [ + "text-analysis", + "variable-construction", + "code-generation", + "nlp", + "programming-languages" + ], + "examples": [ + { + "inputJson": "{\"variableDescription\":\"A variable called totalCount of type integer initialized to 0.\",\"targetLanguage\":\"JavaScript\",\"includeInitialization\":true}", + "description": "Builds a JavaScript integer variable 'totalCount' with initial value 0." + }, + { + "inputJson": "{\"variableDescription\":\"Define a string variable userName with no initial value.\",\"targetLanguage\":\"Python\",\"includeInitialization\":false}", + "description": "Creates a Python string variable 'userName' without initialization." + }, + { + "inputJson": "{\"variableDescription\":\"Create a boolean variable isActive defaulted to true.\",\"includeInitialization\":true}", + "description": "Builds a generic boolean variable 'isActive' initialized true." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "text-analysis.buildComponent", + "description": "Builds a reusable text analysis component based on specified NLP techniques and configuration options. Accepts input parameters defining component type (e.g., sentiment analyzer, entity recognizer), language, and customization options, then generates a modular code component ready for integration in applications.", + "category": "text-analysis", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of NLP component to build, e.g., 'sentimentAnalyzer', 'entityRecognizer', 'textClassifier'", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (ISO 639-1) for text processing, e.g., 'en', 'es'", + "required": true, + "defaultValue": "en" + }, + { + "name": "customEntities", + "type": "array", + "description": "List of custom entities or keywords to recognize (only applicable for entityRecognizer)", + "required": false, + "defaultValue": "[]" + }, + { + "name": "usePretrainedModel", + "type": "boolean", + "description": "Whether to use a pretrained model or a basic rule-based approach", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the component results, e.g., 'json', 'xml'", + "required": false, + "defaultValue": "json" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) to consider detections valid", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "An object containing the source code string of the built NLP component and metadata describing the component capabilities and parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate customizable and reusable text analysis components for integration into software projects, such as sentiment analyzers or entity recognizers. It helps automate building domain-specific NLP modules based on given configurations and languages.", + "limitations": "Does not train new deep learning models from raw data; relies on pretrained or rule-based methods. Limited to languages and component types predefined. Does not deploy components, only generates code artifacts.", + "examples": [ + "Build a sentiment analysis component for English social media text with confidence threshold 0.8.", + "Create an entity recognizer that detects custom company names in English using pretrained models.", + "Generate a text classifier component for Spanish with XML output format." + ] + }, + "tags": [ + "text-analysis", + "NLP", + "component-generation", + "code", + "sentiment", + "entity-recognition", + "modular", + "customization" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"sentimentAnalyzer\",\"language\":\"en\",\"usePretrainedModel\":true,\"confidenceThreshold\":0.8}", + "description": "Build a sentiment analysis component for English with high confidence threshold." + }, + { + "inputJson": "{\"componentType\":\"entityRecognizer\",\"language\":\"en\",\"customEntities\":[\"OpenAI\",\"GPT\"],\"usePretrainedModel\":true,\"outputFormat\":\"json\"}", + "description": "Create an English entity recognizer that also detects 'OpenAI' and 'GPT' as custom entities." + }, + { + "inputJson": "{\"componentType\":\"textClassifier\",\"language\":\"es\",\"usePretrainedModel\":false,\"outputFormat\":\"xml\"}", + "description": "Generate a Spanish text classifier component using rule-based methods with XML output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "text-analysis.composeSummary", + "description": "Generates a concise and coherent summary from provided text documents. Accepts raw text or an array of texts, supports customization of summary length and focus points. Processes the input using natural language understanding to produce a readable summary highlighting key information.", + "category": "text-analysis", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of text strings to be summarized. Can be a single document or multiple related documents.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum desired length of the summary in number of sentences. Controls summary conciseness.", + "required": false, + "defaultValue": "5" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "Optional list of keywords to emphasize in the summary to guide focus on specific topics.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input texts to optimize summarization accuracy. Defaults to 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSources", + "type": "boolean", + "description": "If true, include references to source documents or segments in the summary output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text and metadata including the original document count and used parameters." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to condense large volumes of textual data into a brief, readable summary. Ideal for document review, report generation, briefing notes, or content analysis to quickly grasp essential information.", + "limitations": "May not capture highly nuanced or implicit information. Quality depends on input text coherence and language support. Not suitable for real-time streaming text summarization.", + "examples": [ + "Summarize multiple research articles about climate change into a concise report.", + "Produce a brief summary of a long company annual report focusing on financial aspects.", + "Create a summary of customer feedback emails highlighting main complaints." + ] + }, + "tags": [ + "summary", + "text-analysis", + "document", + "natural-language-processing", + "nlp", + "condense", + "focus-keywords" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"The company's revenue doubled in 2023 due to expansion into new markets. However, increased operational costs slightly lowered net profit margins.\"],\"maxSummaryLength\":3,\"focusKeywords\":[\"revenue\",\"profit\"],\"language\":\"en\",\"includeSources\":false}", + "description": "Summarizing a financial update focusing on revenue and profit keywords." + }, + { + "inputJson": "{\"texts\":[\"Climate change is accelerating at an unprecedented rate.\",\"Recent studies indicate severe impacts on biodiversity.\"],\"maxSummaryLength\":2,\"focusKeywords\":[\"climate change\"],\"language\":\"en\",\"includeSources\":true}", + "description": "Summarizing multiple short texts about climate change with source references included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "text-analysis.composeSentence", + "description": "Generates a coherent, natural language sentence based on provided keywords, tone, length preferences, and optional context. Accepts keywords and optional context strings, processes natural language composition using linguistic rules and AI, and outputs a well-formed sentence matching the specified tone and length constraints.", + "category": "text-analysis", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of keywords or key phrases to include in the composed sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the sentence (e.g., formal, casual, persuasive, informative).", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the sentence in words.", + "required": false, + "defaultValue": "20" + }, + { + "name": "context", + "type": "string", + "description": "Optional contextual information to guide sentence composition for relevance.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeKeywordsOnly", + "type": "boolean", + "description": "If true, composes sentence primarily using provided keywords only; otherwise allows additional words for fluency.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed sentence as a string under the key 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to construct natural language sentences that incorporate specific keywords, adhere to a desired tone, and fit length constraints. It is suitable for generating summaries, prompts, or sentences in content creation, customer communication, or language learning scenarios.", + "limitations": "The tool cannot generate complex multi-sentence paragraphs or guarantee factual accuracy; it may struggle with ambiguous keywords or very strict length limits.", + "examples": [ + "Compose a formal sentence including the keywords 'project deadline' and 'team collaboration' under 20 words.", + "Create a casual sentence using the keywords 'coffee', 'morning', and 'meeting' with context about workplace routine.", + "Generate an informative sentence about renewable energy including the keywords 'solar', 'efficiency', and 'cost'." + ] + }, + "tags": [ + "sentence generation", + "natural language", + "text synthesis", + "content creation", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"project\",\"deadline\",\"team\"],\"tone\":\"formal\",\"maxLength\":20,\"context\":\"status update email\",\"includeKeywordsOnly\":false}", + "description": "Compose a formal sentence with keywords related to project deadline and teamwork for an email." + }, + { + "inputJson": "{\"keywords\":[\"coffee\",\"morning\",\"meeting\"],\"tone\":\"casual\",\"maxLength\":15,\"context\":\"office routine\",\"includeKeywordsOnly\":false}", + "description": "Generate a casual sentence about coffee in a morning meeting setting." + }, + { + "inputJson": "{\"keywords\":[\"solar\",\"efficiency\",\"cost\"],\"tone\":\"informative\",\"maxLength\":25,\"includeKeywordsOnly\":true}", + "description": "Create an informative sentence strictly using the keywords about solar energy." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "text-analysis.generateHeading", + "description": "Generates a concise, contextually relevant heading based on a provided text input. The tool accepts a text string, optional maximum heading length, and style preference, then outputs a headline that summarizes or captures the main idea effectively, suitable for articles, reports, or documents.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The main body of text from which to generate the heading. Must be meaningful and sufficient in length.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of characters allowed in the generated heading. Helps control heading length.", + "required": false, + "defaultValue": "60" + }, + { + "name": "style", + "type": "string", + "description": "Preferred style of heading, e.g., 'formal', 'informal', 'clickbait', or 'neutral'. Influences tone and word choice.", + "required": false, + "defaultValue": "neutral" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a succinct and relevant heading or title for a piece of text, such as blog posts, news articles, summaries, or reports, to improve readability and engagement. Useful for content creation, metadata generation, and summarization scenarios.", + "limitations": "Cannot generate headings without adequate or coherent input text. The style parameter influences tone but may not perfectly match user expectations. Headings are generated based on the input context and may require manual adjustment for specialized or technical texts.", + "examples": [ + "Generate a formal heading from a corporate report summary.", + "Create a catchy, informal heading for a blog post about cooking tips.", + "Produce a concise heading limited to 40 characters for a news article." + ] + }, + "tags": [ + "heading", + "text analysis", + "summary", + "content generation", + "NLP", + "title generation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Artificial intelligence (AI) has rapidly transformed the technology landscape by enabling machines to perform tasks that typically require human intelligence, such as speech recognition, decision making, and language translation.\",\"maxLength\":50,\"style\":\"neutral\"}", + "description": "Generate a neutral, concise heading summarizing an AI technology description." + }, + { + "inputJson": "{\"text\":\"Discover 10 amazing tips to improve your cooking skills and wow your guests with delicious meals every time.\",\"style\":\"informal\"}", + "description": "Create an informal and engaging heading for a cooking tips blog post." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Heading", + "context": null + } + }, + { + "name": "text-analysis.generateSession", + "description": "Generates a detailed analytics session report from raw text logs of user interactions by identifying session boundaries, extracting user actions, timestamps, and session metadata, and producing structured session data for analysis.", + "category": "text-analysis", + "parameters": [ + { + "name": "rawTextLogs", + "type": "string", + "description": "Raw text containing user interaction logs to be processed into session data.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionTimeoutMinutes", + "type": "number", + "description": "Duration in minutes of inactivity after which a new session is started.", + "required": false, + "defaultValue": "30" + }, + { + "name": "timestampFormat", + "type": "string", + "description": "The format of timestamps within the raw logs to correctly parse them (e.g., 'YYYY-MM-DD HH:mm:ss').", + "required": false, + "defaultValue": "\"YYYY-MM-DD HH:mm:ss\"" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to extract and include additional metadata like user agent or IP from logs if present.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of parsed sessions, each with sessionId, startTime, endTime, userActions array, and extracted metadata if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert unstructured textual user interaction logs into structured session data to analyze user behavior over individual sessions, duration, and actions. It is ideal for analytics pipelines requiring sessionization from server or event logs that record user interactions as text.", + "limitations": "Does not process binary or structured log formats directly; requires text logs with consistent timestamp and action patterns. Accuracy depends on proper timestamp parsing and conventions of session timeout settings. Does not infer missing data or predict sessions beyond given logs.", + "examples": [ + "Generate sessions from a website click log file to analyze user flow.", + "Convert raw text event logs into sessions for behavior segmentation.", + "Extract sessionized data from chat interaction logs for further analysis." + ] + }, + "tags": [ + "sessionization", + "analytics", + "text-processing", + "user-behavior", + "log-parsing", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"rawTextLogs\":\"2024-06-01 10:00:00 user1 clicked_button home\\n2024-06-01 10:15:00 user1 navigated page2\\n2024-06-01 11:00:00 user1 clicked_button logout\",\"sessionTimeoutMinutes\":30,\"timestampFormat\":\"YYYY-MM-DD HH:mm:ss\",\"includeMetadata\":true}", + "description": "Parsing logs with standard timestamps to group actions into user sessions separated by 30 mins of inactivity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "text-analysis.createSession", + "description": "Creates a semantic session representation from a batch of textual events or interactions, aggregating and analyzing input to identify session boundaries, key topics, and user intent shifts. Accepts an array of text events with timestamps, performs natural language processing to segment and summarize, and outputs a structured session object.", + "category": "text-analysis", + "parameters": [ + { + "name": "textEvents", + "type": "array", + "description": "An ordered array of objects representing text events, each with message and timestamp properties, to be analyzed as part of the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionTimeoutMinutes", + "type": "number", + "description": "Maximum allowed inactive time in minutes between events before starting a new session segment. Helps to detect logical session breaks.", + "required": false, + "defaultValue": "30" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the input text to optimize NLP processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSummaries", + "type": "boolean", + "description": "Whether to generate topic summaries for each detected session segment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured session object containing detected session segments, each with start/end times, aggregated events, key topics, and user intent summaries if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze user conversations, chat logs, or event streams to automatically detect logical session boundaries, understand session content, and extract key topics or intent changes. Helpful for text analytics, user behavior understanding, and conversational analysis.", + "limitations": "Does not track multi-modal inputs beyond text. Accuracy depends on quality and density of events. Not designed for real-time streaming, but batch processing.", + "examples": [ + "Create a user session summary from chat messages to track conversation topics.", + "Divide customer support chat logs into sessions based on inactivity.", + "Analyze forum post timestamps and content to identify discussion sessions and their themes." + ] + }, + "tags": [ + "text-analysis", + "session-segmentation", + "NLP", + "conversation-analysis", + "user-interaction" + ], + "examples": [ + { + "inputJson": "{\"textEvents\":[{\"message\":\"Hello, I need help with my account.\",\"timestamp\":\"2024-04-01T10:00:00Z\"},{\"message\":\"Sure, I can assist you. What issue are you facing?\",\"timestamp\":\"2024-04-01T10:01:00Z\"},{\"message\":\"I forgot my password and can't log in.\",\"timestamp\":\"2024-04-01T10:02:00Z\"},{\"message\":\"Alright, I'll send a password reset link.\",\"timestamp\":\"2024-04-01T10:03:00Z\"},{\"message\":\"Thanks!\",\"timestamp\":\"2024-04-01T10:04:00Z\"},{\"message\":\"By the way, do you offer premium plans?\",\"timestamp\":\"2024-04-01T11:00:00Z\"},{\"message\":\"Yes, we have several plans. Would you like details?\",\"timestamp\":\"2024-04-01T11:01:00Z\"}]}", + "description": "Analyzes chat messages with a 1 hour gap to segment into two sessions and extract summaries." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "text-analysis.createHeading", + "description": "Generates a concise and relevant heading from a given text input. Accepts raw text or paragraph content, analyzes key themes and context, and outputs a short string suitable as a heading or title for the content.", + "category": "text-analysis", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The input text from which to generate the heading, typically a paragraph or multiple sentences.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum number of characters allowed in the generated heading.", + "required": false, + "defaultValue": "60" + }, + { + "name": "style", + "type": "string", + "description": "Desired heading style: 'sentence' for sentence case, 'title' for title case, or 'uppercase' for all caps.", + "required": false, + "defaultValue": "title" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "Optional array of keywords to emphasize in the heading if relevant to the text.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated heading string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a short, relevant, and context-aware heading or title from given text content, such as for summarizing articles, reports, or documents automatically.", + "limitations": "Cannot create highly creative or ambiguous headings; relies on content clarity and presence of key themes in input text.", + "examples": [ + "Create a heading from a news article paragraph.", + "Generate a concise title for a blog post summary.", + "Produce a heading that includes specified keywords if applicable." + ] + }, + "tags": [ + "text analysis", + "heading generation", + "summarization", + "NLP", + "content automation" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Artificial intelligence is transforming the technology landscape by enabling new capabilities such as natural language understanding, computer vision, and autonomous systems.\",\"maxLength\":50,\"style\":\"title\",\"focusKeywords\":[\"Artificial Intelligence\"]}", + "description": "Generate a concise title emphasizing 'Artificial Intelligence' keyword from a tech paragraph." + }, + { + "inputJson": "{\"text\":\"This article explains the benefits of exercise on mental health and physical well-being, backed by recent studies.\",\"maxLength\":45,\"style\":\"sentence\",\"focusKeywords\":[]}", + "description": "Create a sentence case heading summarizing article about exercise benefits." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "text-analysis.createTrend", + "description": "Analyzes input textual data to identify emerging trends by extracting and quantifying recurring keywords, topics, or phrases over time. Accepts an array of texts and optional time stamps, applies natural language processing techniques to detect topic frequency changes, and outputs structured trend analytics including predominant themes, temporal patterns, and confidence scores.", + "category": "text-analysis", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of input text documents or strings to analyze for trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeStamps", + "type": "array", + "description": "Optional array of timestamps corresponding to each text for temporal trend analysis. If omitted, trends are computed without temporal context.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') for NLP processing to improve accuracy in tokenization and topic detection.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "maxTrends", + "type": "number", + "description": "Maximum number of distinct trends to identify and return in the output.", + "required": false, + "defaultValue": "10" + }, + { + "name": "minFrequency", + "type": "number", + "description": "Minimum frequency threshold for keywords or topics to qualify as a trend (absolute count).", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on identified trends to classify general tone or polarity.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of detected trends. Each trend includes a label, frequency counts, temporal distribution if timestamps provided, and optional sentiment score with confidence metrics." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract meaningful trend insights from large collections of text documents across a time span, such as social media comments, news articles, or customer feedback, to support data-driven decision-making or market analysis. It helps identify rising topics or recurrent themes and their temporal dynamics.", + "limitations": "This tool detects trends based on frequency and topic modeling but does not provide causal analysis or deep semantic understanding. It requires sufficient textual input data and may be less accurate with very short texts or mixed languages.", + "examples": [ + "Find rising topics and trends from a month of product reviews to guide feature development.", + "Analyze social media posts over the last 3 months to detect emerging public concerns.", + "Extract key trends from news headlines to support market research reports." + ] + }, + "tags": [ + "text-analysis", + "trend-detection", + "topic-modeling", + "natural-language-processing", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"The new phone model launch was a huge success.\",\"Many users report battery issues in the new model.\",\"Battery life improvements are expected in next release.\",\"The camera quality has been praised by several reviewers.\"],\"timeStamps\":[\"2024-05-01T10:00:00Z\",\"2024-05-10T12:00:00Z\",\"2024-05-15T15:30:00Z\",\"2024-05-20T09:00:00Z\"],\"language\":\"en\",\"maxTrends\":3,\"minFrequency\":1,\"includeSentiment\":true}", + "description": "Analyze product reviews with timestamps to identify top 3 emerging trends including sentiment over a 20-day period." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "text-analysis.createQueue", + "description": "Creates and manages a text processing queue to handle incoming text data for natural language processing tasks. Accepts configuration parameters defining queue capacity, priority rules, and processing order. Outputs a queue object identifier and status indicating readiness for text task enqueuing and processing.", + "category": "text-analysis", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "A unique name identifier for the created text processing queue.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of text items the queue can hold at any time.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "priorityRules", + "type": "object", + "description": "An object defining rules for prioritizing text tasks in the queue (e.g., by urgency, text length).", + "required": false, + "defaultValue": "" + }, + { + "name": "fifo", + "type": "boolean", + "description": "Flag to use First-In-First-Out ordering if true; otherwise priorityRules govern order.", + "required": false, + "defaultValue": "true" + }, + { + "name": "autoProcess", + "type": "boolean", + "description": "Flag to automatically start processing text tasks as they enter the queue if true.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the queue ID, status indicating if ready, current size, and configuration parameters." + }, + "aiAgent": { + "useCase": "Use this tool when managing or orchestrating multiple text analysis tasks that require ordered, prioritized, or throttled processing. It is useful for systems needing controlled handling of incoming text inputs such as chat message streams, document analysis jobs, or batch processing of NLP tasks.", + "limitations": "This tool manages the queue infrastructure but does not perform the text processing itself. It cannot process or analyze text content directly.", + "examples": [ + "Create a named queue called 'urgentProcessing' with priority rules favoring short texts.", + "Create a FIFO queue with auto-processing enabled for real-time chat messages.", + "Create a queue with a maximum size of 500 for batching document classification tasks." + ] + }, + "tags": [ + "queue", + "text-processing", + "nlp", + "infrastructure", + "task-management" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"urgentProcessing\",\"maxSize\":500,\"priorityRules\":{\"shortTextFirst\":true},\"fifo\":false,\"autoProcess\":true}", + "description": "Create a queue named 'urgentProcessing' that prioritizes short texts and auto-processes incoming inputs." + }, + { + "inputJson": "{\"queueName\":\"chatStreamQueue\",\"fifo\":true,\"autoProcess\":true}", + "description": "Create a FIFO queue for real-time chat messages with automatic processing enabled." + }, + { + "inputJson": "{\"queueName\":\"batchAnalysis\",\"maxSize\":1000,\"fifo\":true,\"autoProcess\":false}", + "description": "Create a FIFO queue with capacity for 1000 texts without automatic processing, for batch NLP analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "text-analysis.createReply", + "description": "Generates a contextually relevant, coherent, and polite reply to an input message based on provided conversation context and optional reply style preferences. Accepts the original message text and conversation history to produce a text response suitable for customer support, chatbots, or email communications.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputMessage", + "type": "string", + "description": "The main text message to which the reply should be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversationContext", + "type": "array", + "description": "An array of previous messages with their roles (e.g., user or assistant) providing conversation history for context.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "replyStyle", + "type": "string", + "description": "Optional style of the reply such as formal, casual, concise, or detailed. Defaults to neutral tone.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated reply in characters.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeApology", + "type": "boolean", + "description": "Indicates whether to include an apology if the reply is related to a complaint or issue. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply text under 'replyText' and optionally metadata about the style used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate a human-like, contextually appropriate textual reply to an input message within conversations such as customer support, chatbots, or email responses. It helps maintain polite and context-aware communication.", + "limitations": "The tool cannot access real-time external data or handle non-textual inputs. Replies are generated based on provided input and context only and may not perfectly capture complex emotional nuances or factual correctness beyond given data.", + "examples": [ + "Generate a concise, formal reply to a customer's inquiry about late delivery.", + "Create a casual and friendly response to a user's greeting in a chat.", + "Produce an apologetic reply addressing a reported issue in previous conversation messages." + ] + }, + "tags": [ + "text-generation", + "reply", + "conversation", + "natural-language-processing", + "chatbot", + "customer-support" + ], + "examples": [ + { + "inputJson": "{\"inputMessage\":\"Hello, I wanted to know the status of my recent order.\",\"conversationContext\":[{\"role\":\"user\",\"content\":\"Hello, I wanted to know the status of my recent order.\"}],\"replyStyle\":\"formal\",\"maxLength\":300}", + "description": "Generating a formal reply to a customer asking about their order status." + }, + { + "inputJson": "{\"inputMessage\":\"Thanks for your help!\", \"conversationContext\":[{\"role\":\"user\",\"content\":\"Thanks for your help!\"}],\"replyStyle\":\"casual\",\"maxLength\":200}", + "description": "Creating a casual response to user's expression of gratitude." + }, + { + "inputJson": "{\"inputMessage\":\"I received a damaged product.\",\"conversationContext\":[{\"role\":\"user\",\"content\":\"I received a damaged product.\"}],\"replyStyle\":\"formal\",\"includeApology\":true}", + "description": "Generating a polite and apologetic reply to a damage complaint from a customer." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "text-analysis.createThreat", + "description": "Analyzes textual input describing cybersecurity events or indicators and generates a structured threat report. Accepts raw text or JSON logs, processes to identify threat attributes like type, severity, affected assets, and recommended mitigations, outputting a detailed threat object for further security handling.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "Raw textual description or report of a security event or indicator.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data: 'plain' for raw text, or 'json' for structured logs.", + "required": true, + "defaultValue": "plain" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) for extracted threat attributes to be included in the output.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation steps in the threat report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') of the input text to guide NLP processing.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object describing the extracted threat with fields such as threatType, severity, description, affectedAssets, mitigationSteps, confidenceScores, and sourceMetadata." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing unstructured or semi-structured text related to cybersecurity incidents, alerts, or threat intelligence feeds to create a structured threat profile that can be used for incident response, prioritization, or enrichment of security data. It helps convert vague reports into actionable threat objects.", + "limitations": "This tool cannot detect threats from non-textual data like images or binary files. It relies on the quality and clarity of input text and may miss subtle or novel threats without explicit indicators. It does not directly perform threat remediation or real-time monitoring.", + "examples": [ + "Create a structured threat report from a SOC analyst's incident description.", + "Extract threat details from a JSON log entry containing security alerts.", + "Generate threat objects from unstructured threat intelligence feed text." + ] + }, + "tags": [ + "text-analysis", + "security", + "threat-detection", + "nlp", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Multiple failed logins detected from IP 192.168.1.100 targeting admin accounts, indicating possible brute force attack.\",\"inputFormat\":\"plain\",\"confidenceThreshold\":0.8,\"includeMitigation\":true,\"language\":\"en\"}", + "description": "Analyze a plain text alert describing suspicious login attempts to generate a structured threat report." + }, + { + "inputJson": "{\"inputText\":\"{\\\"event_type\\\":\\\"alert\\\",\\\"category\\\":\\\"intrusion\\\",\\\"details\\\":\\\"Detected malware communication with C2 server IP 10.0.0.42\\\"}\",\"inputFormat\":\"json\",\"confidenceThreshold\":0.75,\"includeMitigation\":false,\"language\":\"en\"}", + "description": "Process a JSON-formatted security alert indicating malware C2 communication to create threat data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "text-analysis.createChart", + "description": "Generates a visual chart representing the frequency of words or phrases extracted from input text(s). Accepts plain text or arrays of strings, processes linguistic data to count occurrences or sentiments, and outputs configuration data representing bar, pie, or line charts for easy visualization of textual patterns.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputTexts", + "type": "array", + "description": "An array of text strings to be analyzed for word or phrase frequency.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate: \"bar\", \"pie\", or \"line\".", + "required": true, + "defaultValue": "bar" + }, + { + "name": "maxItems", + "type": "number", + "description": "Maximum number of top frequency words/phrases to include in the chart.", + "required": false, + "defaultValue": "10" + }, + { + "name": "phraseLength", + "type": "number", + "description": "Number of words to consider as a phrase (1 for single words, >1 for n-grams).", + "required": false, + "defaultValue": "1" + }, + { + "name": "excludeStopWords", + "type": "boolean", + "description": "Whether to exclude common stop words from the frequency analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate text data: \"frequency\" for count or \"sentiment\" for average sentiment score.", + "required": false, + "defaultValue": "frequency" + } + ], + "returns": { + "type": "object", + "description": "An object containing chart type, labels (words/phrases), and corresponding data values suitable for rendering visual charts." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visualize the most prominent words or phrases in one or multiple text documents by generating graph data that reveals frequency or sentiment trends. Ideal for summarizing text analytics results in visual formats such as bar, pie, or line charts.", + "limitations": "Does not generate the actual visual image or graphical file; it only outputs structured data for chart generation. Limited phrase extraction to fixed n-gram lengths without contextual analysis. May not handle very large texts efficiently without preprocessing.", + "examples": [ + "Generate a bar chart of the top 15 most frequent single words in a list of customer feedback texts excluding stop words.", + "Create a pie chart showing the sentiment distribution of 3 different product reviews, analyzing phrases of 2 words each.", + "Produce a line chart of top 10 frequent words over multiple paragraphs with stop words excluded." + ] + }, + "tags": [ + "text-analysis", + "visualization", + "chart-generation", + "word-frequency", + "sentiment-analysis", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"inputTexts\": [\"I love sunny days but hate rainy weather.\", \"Sunny days make me happy.\", \"Rainy weather is gloomy.\"], \"chartType\": \"bar\", \"maxItems\": 5, \"phraseLength\": 1, \"excludeStopWords\": true, \"aggregationMethod\": \"frequency\"}", + "description": "Create a bar chart representing the top 5 most frequent single words excluding common stop words from three short sentences about weather." + }, + { + "inputJson": "{\"inputTexts\": [\"The movie was incredibly thrilling and exciting.\", \"Thrilling scenes kept me on edge.\", \"Exciting and thrilling plot twists.\"], \"chartType\": \"pie\", \"maxItems\": 4, \"phraseLength\": 1, \"excludeStopWords\": true, \"aggregationMethod\": \"frequency\"}", + "description": "Generate a pie chart showing frequency distribution of the top 4 words describing a movie's excitement level, excluding stop words." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "text-analysis.createXML", + "description": "Converts structured text data or JSON-like objects into a well-formed XML document string. Accepts plain text with an optional JSON structure or key-value pairs, enabling configurable tag naming and attribute inclusion, producing XML that can be used for data interchange or storage.", + "category": "text-analysis", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured input data as an object or dictionary representing elements and their values to be converted to XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "Name of the root element enclosing the entire XML document. Defaults to 'root' if not specified.", + "required": false, + "defaultValue": "root" + }, + { + "name": "useAttributes", + "type": "boolean", + "description": "Determines if object keys are treated as XML attributes instead of child elements where applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "If true, includes the XML declaration () at the top of the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentation", + "type": "string", + "description": "String used for indentation for nested elements, e.g., '\\t' or spaces. Pass empty string for no indentation.", + "required": false, + "defaultValue": " " + } + ], + "returns": { + "type": "string", + "description": "A string containing the generated, well-formed XML document based on the input data and parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform structured text or JSON-formatted data into XML for interoperability with systems requiring XML input, such as APIs, legacy systems, or configuration files.", + "limitations": "This tool assumes input data is well-structured and will not validate XML schema or DTD compliance. It does not support advanced XML features like namespaces or processing instructions beyond the standard declaration.", + "examples": [ + "Convert a JSON object representing a book catalog into XML for data exchange.", + "Generate XML from key-value configuration data with attributes for system configuration files.", + "Produce XML documents dynamically for sending XML payloads to external services requiring XML format." + ] + }, + "tags": [ + "xml", + "text-conversion", + "data-format", + "serialization", + "structured-data" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"book\":{\"title\":\"Example Book\",\"author\":\"Jane Doe\",\"year\":2024}},\"rootElementName\":\"library\",\"useAttributes\":false,\"includeDeclaration\":true,\"indentation\":\" \"}", + "description": "Convert a nested JSON object of a book into an XML document with a root element 'library' and proper indentation." + }, + { + "inputJson": "{\"inputData\":{\"config\":{\"version\":\"1.2\",\"enabled\":\"true\"}},\"rootElementName\":\"settings\",\"useAttributes\":true,\"includeDeclaration\":true,\"indentation\":\"\"}", + "description": "Convert configuration key-value pairs into XML using attributes instead of child elements, no indentation, with XML declaration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "text-analysis.createHTML", + "description": "Generates a valid HTML snippet from plain text input, applying optional markup transformations such as paragraphs, headers, lists, and basic inline styles. Accepts plain text and formatting options to produce semantic, clean HTML content for web display or embedding.", + "category": "text-analysis", + "parameters": [ + { + "name": "plainText", + "type": "string", + "description": "The raw plain text input to be converted into HTML content.", + "required": true, + "defaultValue": "" + }, + { + "name": "useParagraphs", + "type": "boolean", + "description": "Whether to wrap text blocks separated by newlines into paragraph tags.", + "required": false, + "defaultValue": "true" + }, + { + "name": "convertHeaders", + "type": "boolean", + "description": "Enable detection and conversion of header-like lines to

-

tags based on markdown-style prefixes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "enableLists", + "type": "boolean", + "description": "Parse lines starting with list markers (-, *, +) into unordered HTML lists.", + "required": false, + "defaultValue": "true" + }, + { + "name": "inlineStyles", + "type": "object", + "description": "Optional mapping of inline styles or tags to apply, e.g., {'bold':'','italic':''} applied to markdown-like syntax in text.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "escapeHtmlCharacters", + "type": "boolean", + "description": "If true, escape HTML special characters in input to prevent injection and ensure valid output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object with 'htmlContent' string property containing the generated HTML snippet." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert user-generated or plain textual content into semantic and structured HTML for web rendering, email templates, or content management systems. It supports basic markdown-like transformations and safe HTML generation for presentation layers.", + "limitations": "This tool supports only basic markup conversions and is not a full markdown to HTML converter. It does not parse complex HTML, scripts, or styles, and does not sanitize malicious content beyond simple escaping.", + "examples": [ + "Create an HTML snippet from user comments preserving paragraphs and converting headers.", + "Generate an HTML version of a short markdown list with bold and italic styling.", + "Produce safe HTML output for embedding plain text content into a webpage with simple formatting." + ] + }, + "tags": [ + "text-analysis", + "html-generation", + "markup-conversion", + "content-formatting", + "plain-text", + "web", + "email" + ], + "examples": [ + { + "inputJson": "{\"plainText\":\"# Welcome\\nThis is a sample text.\\n- Item one\\n- Item two\\n* Item three\\n**bold text** and _italic text_.\",\"useParagraphs\":true,\"convertHeaders\":true,\"enableLists\":true,\"inlineStyles\":{\"bold\":\"\",\"italic\":\"\"},\"escapeHtmlCharacters\":true}", + "description": "Convert a markdown-like plain text input into structured HTML with headers, paragraphs, lists, and inline bold/italic styles with safe escaping." + }, + { + "inputJson": "{\"plainText\":\"Simple text without any markdown.\",\"useParagraphs\":true,\"convertHeaders\":false,\"enableLists\":false,\"inlineStyles\":{},\"escapeHtmlCharacters\":true}", + "description": "Convert plain text to HTML with paragraph tags only, disabling header and list conversion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "text-analysis.createAttachment", + "description": "This tool generates an attachment object from given text content for use in messaging or document systems. It accepts plain text or markdown input, processes it to encode and format as a media attachment (e.g., as a base64-encoded payload or a file-like object), and returns a structured attachment metadata object usable in downstream applications.", + "category": "text-analysis", + "parameters": [ + { + "name": "textContent", + "type": "string", + "description": "The raw text content to be converted into an attachment.", + "required": true, + "defaultValue": "" + }, + { + "name": "filename", + "type": "string", + "description": "The desired filename for the attachment, including extension to indicate file type (e.g., 'notes.txt').", + "required": false, + "defaultValue": "attachment.txt" + }, + { + "name": "mimeType", + "type": "string", + "description": "The MIME type of the attachment content (e.g., 'text/plain', 'text/markdown').", + "required": false, + "defaultValue": "text/plain" + }, + { + "name": "encoding", + "type": "string", + "description": "The text encoding to use for the attachment content, such as 'utf-8' or 'ascii'.", + "required": false, + "defaultValue": "utf-8" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata fields such as creation timestamp and text length in the attachment object.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing keys: filename, mimeType, content (base64 string), size (bytes), and optional metadata like creation time and original text length." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform a piece of text into a shareable, self-contained attachment format for embedding or transmission in messaging platforms, emails, or document workflows. It supports specifying filename and MIME type to ensure compatibility with clients expecting file attachments.", + "limitations": "This tool does not generate binary files beyond encoded text and is not suitable for rich media types like images or audio. It cannot perform content summarization or text transformations beyond encoding and packaging.", + "examples": [ + "Create a text file attachment from meeting notes to send over email.", + "Generate a markdown document attachment containing formatted text for sharing in a chat.", + "Package plain text into an attachment with custom filename and mime type." + ] + }, + "tags": [ + "text", + "attachment", + "create", + "encoding", + "file", + "media" + ], + "examples": [ + { + "inputJson": "{\"textContent\":\"Meeting notes for project X: Discuss timeline and deliverables.\",\"filename\":\"projectX_notes.txt\",\"mimeType\":\"text/plain\",\"encoding\":\"utf-8\",\"includeMetadata\":true}", + "description": "Convert plain meeting notes text into a text/plain attachment with metadata." + }, + { + "inputJson": "{\"textContent\":\"# Weekly Report\\n- Task 1 complete\\n- Task 2 pending\",\"filename\":\"weekly_report.md\",\"mimeType\":\"text/markdown\",\"includeMetadata\":false}", + "description": "Create a markdown file attachment from a formatted text report without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "text-analysis.createPackage", + "description": "Generates a reusable software package for natural language processing tasks. Accepts configuration parameters defining the type of text analysis (e.g., sentiment analysis, entity recognition), programming language, and package metadata. Produces a structured package archive including code, configuration files, and documentation ready for integration or deployment.", + "category": "text-analysis", + "parameters": [ + { + "name": "analysisType", + "type": "string", + "description": "Specifies the kind of text analysis the package should perform, e.g., 'sentiment', 'entityRecognition', 'topicModeling'.", + "required": true, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "The programming language to generate the package in, e.g., 'Python', 'JavaScript'.", + "required": true, + "defaultValue": "Python" + }, + { + "name": "packageName", + "type": "string", + "description": "Name of the package or module to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version number for the generated package, following semantic versioning.", + "required": false, + "defaultValue": "1.0.0" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to include unit tests relevant to the analysis type in the package.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dependencies", + "type": "array", + "description": "An array of string names of additional libraries or frameworks to include as dependencies.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "author", + "type": "string", + "description": "Author name or organization to include in package metadata and documentation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata about the generated package including the package in zipped archive base64 encoded string, metadata summary, and file structure details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate a consistent, ready-to-use software package that performs specified text analysis tasks, suitable for integration into larger projects or deployment environments. It streamlines creating customized NLP tools based on provided parameters.", + "limitations": "The tool cannot implement novel algorithms or perform runtime text analysis itself; it only generates the scaffolding and boilerplate code. It does not handle multi-language NLP beyond the selected programming language, nor guarantees performance of analysis code.", + "examples": [ + "Create a Python package for sentiment analysis with tests included.", + "Generate a JavaScript module for named entity recognition without tests and custom dependencies.", + "Produce a text-analysis package named 'TextInsight' version 2.1.0 authored by 'AI Labs'." + ] + }, + "tags": [ + "text-analysis", + "code-generation", + "package", + "NLP", + "automation", + "software-development" + ], + "examples": [ + { + "inputJson": "{\"analysisType\":\"sentiment\",\"programmingLanguage\":\"Python\",\"packageName\":\"SentimentAnalyzer\",\"version\":\"1.0.0\",\"includeTests\":true,\"dependencies\":[\"nltk\",\"scikit-learn\"],\"author\":\"John Doe\"}", + "description": "Generate a Python sentiment analysis package named 'SentimentAnalyzer' including unit tests and common NLP dependencies." + }, + { + "inputJson": "{\"analysisType\":\"entityRecognition\",\"programmingLanguage\":\"JavaScript\",\"packageName\":\"EntityRecognizer\",\"version\":\"0.1.0\",\"includeTests\":false,\"dependencies\":[\"compromise\"],\"author\":\"\"}", + "description": "Create a minimal JavaScript package for entity recognition without tests, including 'compromise' library dependency." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "api-integration.analyzeTrend", + "description": "Analyzes data trends from various APIs by accepting time series or event data inputs, performing statistical and predictive analytics like moving averages, seasonality detection, and anomaly identification, and returns summarized trend insights and forecast metrics in a structured report.", + "category": "api-integration", + "parameters": [ + { + "name": "apiEndpoints", + "type": "array", + "description": "List of API endpoints to fetch data from (URLs or API identifiers).", + "required": true, + "defaultValue": "" + }, + { + "name": "authTokens", + "type": "object", + "description": "Authentication tokens or credentials keyed by API endpoint for secure access.", + "required": false, + "defaultValue": "" + }, + { + "name": "queryParameters", + "type": "object", + "description": "Optional query parameters to pass when requesting data from each API endpoint.", + "required": false, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 date string marking the start of the data analysis time range.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 date string marking the end of the data analysis time range.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names or keys from the APIs to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisMethods", + "type": "array", + "description": "Statistical or machine learning methods to apply such as movingAverage, anomalyDetection, seasonality.", + "required": false, + "defaultValue": "[\"movingAverage\"]" + }, + { + "name": "forecastHorizon", + "type": "number", + "description": "Number of future periods to forecast in trend prediction models.", + "required": false, + "defaultValue": "7" + }, + { + "name": "includeVisuals", + "type": "boolean", + "description": "Whether to include URLs or base64 encoded charts of trend visualizations in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured report containing summarized trend analyses per metric, detected anomalies, seasonal patterns, and forecasted future values. Includes optional visualization links or encoded images." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to integrate multiple external data APIs, compile their metric data over specified time ranges, and perform advanced trend analyses including anomaly and seasonality detection, as well as forecasting future trends. Useful for market research, KPI monitoring, and decision support.", + "limitations": "This tool depends on the availability and reliability of external APIs and does not handle data cleansing beyond basic validation. It cannot analyze unstructured data or perform sentiment analysis directly.", + "examples": [ + "Analyze sales trends from e-commerce and financial APIs over the last quarter with anomaly detection enabled.", + "Fetch social media engagement and web traffic data, then forecast next week's user activity.", + "Combine IoT sensor readings from multiple endpoints to detect seasonality and predict maintenance needs." + ] + }, + "tags": [ + "api integration", + "trend analysis", + "analytics", + "forecasting", + "anomaly detection", + "time series", + "data aggregation" + ], + "examples": [ + { + "inputJson": "{\"apiEndpoints\":[\"https://api.ecommerce.com/sales\",\"https://api.finance.com/transactions\"],\"authTokens\":{\"https://api.ecommerce.com/sales\":\"token123\",\"https://api.finance.com/transactions\":\"token456\"},\"queryParameters\":{\"region\":\"US\"},\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"metrics\":[\"dailySales\",\"transactionVolume\"],\"analysisMethods\":[\"movingAverage\",\"anomalyDetection\"],\"forecastHorizon\":14,\"includeVisuals\":true}", + "description": "Analyze daily sales and transaction volume for Q1 2024 from two APIs with moving average and anomaly detection, including 2-week forecast and charts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "api-integration.analyzeReference", + "description": "This tool accepts a reference input in the form of a URL, document identifier, or raw text content and performs an analysis to extract structured metadata, key topics, sentiment, and linked entities. It integrates with external APIs for content parsing and knowledge graph linking and outputs a detailed summary report of the reference's context and relevance.", + "category": "api-integration", + "parameters": [ + { + "name": "referenceType", + "type": "string", + "description": "Type of the reference provided: 'url', 'documentId', or 'rawText' to specify how to process the input.", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceValue", + "type": "string", + "description": "The actual value of the reference. Could be a URL string, a document identifier, or raw text content to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the reference content. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language of the reference content for analysis purposes, e.g., 'en' for English. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length in characters for the summary output. Defaults to 500.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "Detailed analysis result including meta information (title, author, date), key topics extracted, sentiment summary, linked entities, and an overall relevance score." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the context and important aspects of a reference resource, such as a URL or document, by extracting metadata, topics, sentiment, and entity links automatically. Ideal for enriching API orchestration workflows that process external content references and require summarized insights.", + "limitations": "Cannot analyze references that are inaccessible or behind paywalls requiring authentication. Does not perform deep domain-specific content validation or fact-checking. Sentiment analysis quality depends on language support and content clarity.", + "examples": [ + "Analyze the URL https://example.com/research-paper and extract key topics and sentiment.", + "Given raw text from user input, summarize content and identify main entities.", + "Analyze document ID 'doc-12345' from a connected document storage to generate a metadata summary and relevance score." + ] + }, + "tags": [ + "api-integration", + "reference-analysis", + "metadata-extraction", + "content-summarization", + "sentiment-analysis", + "entity-linking" + ], + "examples": [ + { + "inputJson": "{\"referenceType\":\"url\",\"referenceValue\":\"https://example.com/article/ai-future\",\"includeSentimentAnalysis\":true,\"language\":\"en\",\"maxSummaryLength\":300}", + "description": "Analyze an article URL to extract summary, key topics, sentiment, and linked entities." + }, + { + "inputJson": "{\"referenceType\":\"rawText\",\"referenceValue\":\"Artificial intelligence is transforming industries worldwide.\",\"includeSentimentAnalysis\":false,\"language\":\"en\",\"maxSummaryLength\":200}", + "description": "Analyze raw text input without sentiment to produce a topical summary and metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "api-integration.analyzeReply", + "description": "Analyzes a communication reply text to extract key sentiments, intents, and entities. Accepts reply text as input and optionally context metadata. Processes the text using NLP techniques to output structured analysis including detected sentiments, intent classification, and recognized named entities, assisting in understanding conversational replies automatically.", + "category": "api-integration", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The raw textual reply message to analyze for sentiments, intents, and entities.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextMetadata", + "type": "object", + "description": "Optional metadata about the conversation context, such as conversation ID, sender info, or previous messages, aiding more accurate analysis.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the reply text to tailor natural language processing accordingly (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeConfidenceScores", + "type": "boolean", + "description": "Whether to include confidence scores for detected intents, sentiments, and entities in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis results including detected sentiment label and score, identified intent(s) and their confidence, extracted named entities with types, and optionally confidence values." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to understand and interpret communication replies automatically, such as customer support chat messages, feedback responses, or conversational interfaces. It helps in detecting user sentiment, intent behind messages, and key entities mentioned to drive next actions or responses.", + "limitations": "The tool does not generate or respond to messages, only analyzes existing reply texts. Its accuracy depends on language and domain specifics; uncommon languages or highly technical jargon may reduce effectiveness.", + "examples": [ + "Analyze sentiment and intent of a customer support reply to determine satisfaction and next steps.", + "Extract named entities and classify user intent from a chatbot message reply to update conversation state.", + "Process incoming email replies to identify actionable intents and summarize key information." + ] + }, + "tags": [ + "analyze", + "NLP", + "reply", + "sentiment-analysis", + "intent-detection", + "entity-recognition", + "communication" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thank you for the quick support! The issue is resolved now.\",\"language\":\"en\",\"includeConfidenceScores\":true}", + "description": "Analyze a positive customer support reply to extract sentiment (positive), intent (gratitude, issue resolved), and entities (none)." + }, + { + "inputJson": "{\"replyText\":\"I'm not satisfied with the delay in delivery.\",\"language\":\"en\"}", + "description": "Detect negative sentiment and intent expressing dissatisfaction in a customer message reply." + }, + { + "inputJson": "{\"replyText\":\"Please schedule a meeting for next Friday with the finance team.\",\"language\":\"en\",\"includeConfidenceScores\":false}", + "description": "Extract intent to schedule a meeting and recognize entities such as date and team name from a reply message." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "api-integration.analyzeIncident", + "description": "Analyzes a security incident by integrating with external security APIs or internal incident databases. Accepts an incident identifier or raw incident data, performs correlation, threat intelligence enrichment, and impact assessment, then returns a detailed analysis report including severity, affected assets, and recommended mitigation steps.", + "category": "api-integration", + "parameters": [ + { + "name": "incidentId", + "type": "string", + "description": "Unique identifier of the security incident to analyze. Required if rawIncidentData is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawIncidentData", + "type": "object", + "description": "Raw data payload representing the security incident details for analysis. Required if incidentId is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "intelligenceSources", + "type": "array", + "description": "List of external threat intelligence source names or API keys to enrich the incident analysis (e.g., VirusTotal, RecordedFuture).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Flag indicating whether to include recommended mitigation steps in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of related incidents or indicators to return in the analysis report.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing detailed incident analysis including severity score, affected assets list, correlated threat indicators, enrichment data from intelligence sources, and mitigation recommendations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need detailed analysis of a security incident by correlating it with threat intelligence and historical incident data for root cause identification, risk assessment, and response guidance. Ideal for automating incident triage and enrichment in security operation workflows.", + "limitations": "Cannot perform real-time incident detection or data collection; it relies on provided incident data or identifiers and accessible APIs. Analysis quality depends on the completeness and accuracy of input data and the availability of integrated intelligence sources.", + "examples": [ + "Analyze incident ID 12345 to determine impact and mitigation steps.", + "Provide deep analysis on provided raw incident data with enrichment from VirusTotal.", + "Return top 5 related incidents and severity for incidentId 'abcde' including mitigation recommendations." + ] + }, + "tags": [ + "security", + "incident-analysis", + "api-integration", + "threat-intelligence", + "automation" + ], + "examples": [ + { + "inputJson": "{\"incidentId\":\"INC20240615A01\",\"includeMitigation\":true,\"maxResults\":5}", + "description": "Analyze a known incident by its ID, include recommended mitigation, return up to 5 related results." + }, + { + "inputJson": "{\"rawIncidentData\":{\"sourceIP\":\"192.168.1.100\",\"eventTime\":\"2024-06-15T12:00:00Z\",\"alertType\":\"malware_detection\"},\"intelligenceSources\":[\"VirusTotal\"],\"includeMitigation\":false}", + "description": "Analyze raw incident data with enrichment from VirusTotal without mitigation steps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "api-integration.analyzeThread", + "description": "Analyzes a communication thread by accepting an array of messages or a thread ID from supported platforms, processing conversation structure, sentiment, key topics, and participant activity, and then returns a detailed summary including insights and identified action items.", + "category": "api-integration", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "The unique identifier of the thread to analyze, if applicable to the platform. If provided, no need to pass messages array.", + "required": false, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "An array of message objects representing the thread to analyze. Each message should include sender, timestamp, and content.", + "required": false, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "The communication platform name to contextualize analysis (e.g., Slack, Email, Forum).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on each message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the thread content for accurate linguistic processing (default is 'en').", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a structured summary of the thread including topics, sentiment overview, participant statistics, timeline of messages, and extracted action items." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract structured insights from a communication thread to understand key topics, overall sentiment, participant engagement, and any actionable items. Useful for summarizing chat conversations, email threads, forum discussions, or customer service exchanges.", + "limitations": "This tool does not fetch threads autonomously; thread data or IDs must be provided. It does not support multimedia content analysis (images, videos). Language support is limited to specified languages, defaulting to English.", + "examples": [ + "Analyze customer support email thread ID 'ABC123' to summarize issues and action items.", + "Provide insights on a Slack conversation including participant sentiment over the last week.", + "Summarize message thread array from a forum discussion to identify key concerns and sentiment trends." + ] + }, + "tags": [ + "analysis", + "communication", + "thread", + "sentiment", + "summary", + "insights" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"thread-789\",\"platform\":\"Slack\",\"includeSentimentAnalysis\":true,\"language\":\"en\"}", + "description": "Analyze a Slack thread by its ID with sentiment analysis enabled." + }, + { + "inputJson": "{\"messages\":[{\"sender\":\"alice@example.com\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"content\":\"We need to finalize the project plan.\"},{\"sender\":\"bob@example.com\",\"timestamp\":\"2024-06-01T10:05:00Z\",\"content\":\"I agree. Let's schedule a meeting.\"}],\"platform\":\"Email\",\"includeSentimentAnalysis\":false}", + "description": "Analyze an email thread provided as message objects without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "api-integration.downloadCSV", + "description": "Downloads CSV data from a specified web API endpoint using optional query parameters and authentication headers, and returns the CSV content as a string for further processing or storage.", + "category": "api-integration", + "parameters": [ + { + "name": "apiUrl", + "type": "string", + "description": "The full URL of the API endpoint that returns CSV data.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryParams", + "type": "object", + "description": "Optional key-value pairs to append as query parameters to the API URL.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers such as authorization tokens to include in the request.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout setting in seconds for the HTTP request. Defaults to 30 seconds.", + "required": false, + "defaultValue": "30" + }, + { + "name": "retryAttempts", + "type": "number", + "description": "Number of retry attempts on request failure. Defaults to 0 (no retries).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the CSV content as a string and metadata including status code and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool to fetch CSV-formatted data from RESTful APIs where the response content-type is CSV or text/csv. It supports adding query parameters and headers including authentication tokens. Ideal for integrations that need to ingest tabular data exported from external services in CSV format.", + "limitations": "This tool does not parse or validate CSV content. It only downloads the raw CSV text. It cannot handle endpoints that require complex authentication workflows beyond static headers or non-HTTP protocols.", + "examples": [ + "Download CSV data from a public financial API with date filters.", + "Fetch user export CSV from a secured API requiring an API key header.", + "Retry downloading a CSV report up to 3 times on transient network failures." + ] + }, + "tags": [ + "api", + "csv", + "download", + "integration", + "data", + "http", + "rest" + ], + "examples": [ + { + "inputJson": "{\"apiUrl\":\"https://api.example.com/data/export.csv\",\"queryParams\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\"},\"headers\":{\"Authorization\":\"Bearer abc123\"},\"timeoutSeconds\":20,\"retryAttempts\":2}", + "description": "Download January 2024 data CSV from an API with authentication and retry logic." + }, + { + "inputJson": "{\"apiUrl\":\"https://public.api.example.com/reports/latest.csv\"}", + "description": "Download a latest report CSV from a public API endpoint with default timeout and no retries." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "api-integration.analyzeXML", + "description": "Analyzes a given XML string or URL source to validate structure, extract specified elements or attributes, and summarize content statistics such as node counts and attribute distributions. Returns a detailed analysis report including errors if any, and extracted data as requested.", + "category": "api-integration", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "XML data as a string input to analyze. Required if xmlUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "xmlUrl", + "type": "string", + "description": "URL to fetch XML data from for analysis. Required if xmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "extractPaths", + "type": "array", + "description": "Array of XPath or simplified node path strings specifying elements or attributes to extract from the XML.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to perform schema validation if XML schema is available or defined in the document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth to traverse the XML tree for statistics gathering. 0 means full traversal.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing validation results, error list, extraction results keyed by requested paths, and summary statistics of the XML document such as total nodes, element counts, and attribute counts." + }, + "aiAgent": { + "useCase": "Use this tool when you need to inspect XML data either from a string or URL input for validation, extracting specific data points using XPath-like queries, or generating a report of XML structure and content summary for integration, debugging, or data processing tasks.", + "limitations": "Cannot perform automatic XML schema inference if no schema is present or linked; does not transform or edit XML, only analyzes and extracts data.", + "examples": [ + "Analyze an XML string to extract all elements' titles.", + "Validate XML fetched from a URL against its schema and summarize node counts.", + "Extract attribute values from specific elements and report XML structure statistics." + ] + }, + "tags": [ + "api", + "xml", + "analysis", + "validation", + "data-extraction", + "integration" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"XML Developer's Guide\",\"extractPaths\":[\"/catalog/book/title\"],\"validateSchema\":false}", + "description": "Extract titles of all elements from a given XML string without schema validation." + }, + { + "inputJson": "{\"xmlUrl\":\"https://example.com/data.xml\",\"extractPaths\":[\"/root/item/@id\"],\"validateSchema\":true,\"maxDepth\":5}", + "description": "Fetch XML from a URL, validate it against schema if available, extract id attributes of elements, and limit traversal depth." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "api-integration.analyzeHTML", + "description": "Analyzes raw HTML content to extract structured information such as title, meta tags, headings, links, and text statistics. Accepts HTML as input, performs DOM parsing and data extraction, and outputs a summarized report in JSON format detailing key HTML elements and content features.", + "category": "api-integration", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML string to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "Whether to extract all links (anchor tags) from the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractHeadings", + "type": "boolean", + "description": "Whether to extract headings (h1 through h6) from the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractMeta", + "type": "boolean", + "description": "Whether to extract meta tags (name, property, content) from the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "textAnalysis", + "type": "boolean", + "description": "Whether to perform basic text statistical analysis such as word count and character count.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing extracted details: page title, meta tags array, heading structure array, link list array, and text statistics object." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically analyze HTML content from web pages or templates to extract meaningful data such as metadata, page structure (headings), outbound links, and content summary for indexing, SEO, or content analysis purposes. It assists in quickly interpreting the HTML without rendering the page.", + "limitations": "Does not execute JavaScript or interpret dynamically generated content. Cannot analyze styling (CSS) or user interactions. Focused on static HTML content analysis only.", + "examples": [ + "Extract all headings and links from a webpage HTML to build a site map summary.", + "Analyze a product page HTML to gather meta descriptions and keywords for SEO validation.", + "Obtain basic text statistics and metadata from an HTML newsletter template." + ] + }, + "tags": [ + "api-integration", + "html", + "analysis", + "web-scraping", + "metadata", + "content-extraction" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"Example Page

Welcome

Sample paragraph.

Example\",\"extractLinks\":true,\"extractHeadings\":true,\"extractMeta\":true,\"textAnalysis\":true}", + "description": "Analyze standard HTML with meta tags, heading, and a link to extract comprehensive data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "api-integration.uploadCSV", + "description": "Uploads a CSV file to a specified REST API endpoint. Accepts CSV data as a string or file path, optional authentication headers, and additional parameters. Processes the CSV content by sending it in HTTP requests to the API and returns the API response status and message.", + "category": "api-integration", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The CSV data content as a string to be uploaded. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local path to the CSV file to be uploaded. Required if csvContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "The full URL of the API endpoint to which the CSV data will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to use for uploading, typically POST or PUT.", + "required": false, + "defaultValue": "POST" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the request, e.g., authentication tokens.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "queryParams", + "type": "object", + "description": "Optional query parameters for the API request as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeout", + "type": "number", + "description": "Request timeout in seconds.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing HTTP status code, response body, and any error messages if the upload fails." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically upload CSV data to external APIs that accept CSV content, such as data import services or cloud storage APIs. It handles the HTTP communication including optional authentication and allows flexibility in supplying CSV data either as a string or file path.", + "limitations": "This tool does not parse or validate CSV content format beyond passing it; it assumes the API endpoint expects CSV format. It does not support multipart uploads or chunking for very large files.", + "examples": [ + "Upload a CSV string of user records to a cloud CRM's import API.", + "Send a local CSV file with inventory data to a REST endpoint requiring an API key header.", + "Upload CSV data to an analytics ingestion API via PUT method with query parameters." + ] + }, + "tags": [ + "api", + "integration", + "upload", + "csv", + "http", + "data-import", + "automation" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"name,email\\nAlice,alice@example.com\",\"apiEndpoint\":\"https://api.example.com/import\",\"httpMethod\":\"POST\",\"headers\":{\"Authorization\":\"Bearer token123\"}}", + "description": "Upload a small CSV string containing user data to an import API with authorization header." + }, + { + "inputJson": "{\"filePath\":\"/tmp/data.csv\",\"apiEndpoint\":\"https://data.api.com/upload\",\"httpMethod\":\"PUT\",\"headers\":{\"X-API-KEY\":\"apikeyvalue\"},\"timeout\":60}", + "description": "Upload a CSV file from local disk to an API endpoint using PUT method and an API key header, with extended timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "api-integration.formatModule", + "description": "Formats source code modules (JavaScript, TypeScript) by accepting raw code input and applying consistent indentation, spacing, line breaks, and code style rules. Outputs the neatly formatted code string ready for use or integration into larger projects.", + "category": "api-integration", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "Raw source code of the module to be formatted (e.g., JS/TS code).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the code to format, e.g., 'javascript' or 'typescript'.", + "required": true, + "defaultValue": "javascript" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use per indentation level.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "semiColons", + "type": "boolean", + "description": "Whether to add semicolons at the end of statements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "singleQuote", + "type": "boolean", + "description": "Whether to use single quotes for strings instead of double quotes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trailingComma", + "type": "string", + "description": "Style of trailing commas: 'none', 'es5', or 'all' to include trailing commas appropriately.", + "required": false, + "defaultValue": "es5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted source code string and optionally any formatting errors or warnings." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or unformatted source module code that needs normalization to consistent style for readability, maintainability, or integration into projects. It is especially useful when generating code snippets or refactoring code programmatically and ensuring stylistic consistency before output or commits.", + "limitations": "Does not perform code linting beyond formatting. It does not fix semantic errors or run static analysis. Limited to JavaScript and TypeScript source code only.", + "examples": [ + "Format a raw JavaScript module with 2 spaces indentation and semicolons.", + "Format TypeScript code using tabs for indentation without semicolons.", + "Change JavaScript source to use double quotes and trailing commas everywhere." + ] + }, + "tags": [ + "api-integration", + "formatting", + "code", + "javascript", + "typescript", + "module", + "style" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function add(a,b){return a+b;}\",\"language\":\"javascript\",\"indentSize\":2,\"useTabs\":false,\"semiColons\":true,\"singleQuote\":true,\"trailingComma\":\"es5\"}", + "description": "Format a simple JS function with 2-space indent, semicolons, and single quotes." + }, + { + "inputJson": "{\"code\":\"const x=1\\nconst y=2\",\"language\":\"typescript\",\"indentSize\":4,\"useTabs\":true,\"semiColons\":false,\"singleQuote\":false,\"trailingComma\":\"none\"}", + "description": "Format TypeScript code using tabs with no semicolons and double quotes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "api-integration.formatInvoice", + "description": "Formats raw invoice data into standardized invoice document formats such as JSON, XML, or PDF-ready structures. Accepts invoice details including client info, line items, taxes, and payment terms, processes formatting rules, and outputs a structured invoice file ready for integration, display, or further processing.", + "category": "api-integration", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "Raw invoice data including client details, items, taxes, and payment info to format into an invoice document.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "Desired output format of the invoice document (e.g., 'JSON', 'XML', 'PDF').", + "required": true, + "defaultValue": "JSON" + }, + { + "name": "includeTaxes", + "type": "boolean", + "description": "Flag to include tax details in the formatted invoice output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for monetary amounts in the invoice (e.g., 'USD', 'EUR').", + "required": false, + "defaultValue": "USD" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code to format dates, numbers, and currency correctly (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted invoice as a string under 'formattedInvoice' and metadata like formatType and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when raw invoice information needs to be converted into standardized document formats for API transmission, display, storage, or further processing. It supports multiple output formats and locale-specific formatting, enabling seamless integration with accounting or billing systems.", + "limitations": "Does not perform OCR or extract invoice data from images or PDFs; expects structured invoice input. It does not perform financial validations or payment processing.", + "examples": [ + "Format a raw invoice JSON into XML with taxes included for sending to a partner.", + "Generate a PDF-ready invoice structure in USD currency with US English locale formatting.", + "Create a JSON formatted invoice excluding tax details for records." + ] + }, + "tags": [ + "api", + "invoice", + "formatting", + "billing", + "document", + "financial" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"clientName\":\"Acme Corp\",\"clientAddress\":\"123 Main St\",\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":9.99}],\"taxRate\":0.07,\"paymentTerms\":\"Net 30\",\"invoiceNumber\":\"INV-1001\",\"invoiceDate\":\"2024-06-01\"},\"formatType\":\"JSON\",\"includeTaxes\":true,\"currency\":\"USD\",\"locale\":\"en-US\"}", + "description": "Format an invoice with client info, line items, taxes, and payment terms into JSON, including taxes, with USD currency and US locale." + }, + { + "inputJson": "{\"invoiceData\":{\"clientName\":\"Globex Ltd\",\"items\":[{\"description\":\"Service Fee\",\"quantity\":1,\"unitPrice\":500}],\"paymentTerms\":\"Due on receipt\",\"invoiceNumber\":\"INV-2024-007\",\"invoiceDate\":\"2024-06-15\"},\"formatType\":\"XML\",\"includeTaxes\":false,\"currency\":\"EUR\",\"locale\":\"de-DE\"}", + "description": "Format a simplified invoice into XML excluding taxes, using EUR currency and German locale." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "api-integration.draftText", + "description": "Generates draft textual content by integrating with external AI-powered text generation APIs. Accepts input parameters such as prompt, tone, language, and length, then calls a configured API to produce coherent draft text for emails, documents, messages, or other content outputs.", + "category": "api-integration", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "The initial text or topic seed to guide the draft text generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone or style of the draft text, e.g., formal, casual, persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "language", + "type": "string", + "description": "Language code to generate the text in, e.g., 'en' for English, 'es' for Spanish.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated draft text in number of tokens or words.", + "required": false, + "defaultValue": "200" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a brief summary of the generated text along with the full draft.", + "required": false, + "defaultValue": "false" + }, + { + "name": "apiKey", + "type": "string", + "description": "API key to authenticate requests with the external text generation service.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated draft text and optional summary, including metadata such as language and tone." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create initial draft content by leveraging API-based text generation services. It is useful for drafting emails, articles, social media posts, or any textual content from a given prompt with specific tone and language requirements.", + "limitations": "This tool depends on the availability and capabilities of external text generation APIs and cannot guarantee perfect grammar or factual accuracy in the generated drafts. It does not perform content validation or fact-checking.", + "examples": [ + "Draft a professional email inviting a client to a meeting.", + "Generate a casual social media post about a product launch.", + "Create a formal summary text in Spanish about a recent event." + ] + }, + "tags": [ + "text-generation", + "content-drafting", + "api-integration", + "natural-language", + "email", + "marketing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"Please draft a professional email to invite a client to discuss project updates.\",\"tone\":\"formal\",\"language\":\"en\",\"maxLength\":150,\"includeSummary\":true,\"apiKey\":\"abcdef12345\"}", + "description": "Generate a formal invitation email draft for a client meeting with summary included." + }, + { + "inputJson": "{\"prompt\":\"New product launch announcement for social media.\",\"tone\":\"casual\",\"language\":\"en\",\"maxLength\":100,\"includeSummary\":false,\"apiKey\":\"abcdef12345\"}", + "description": "Create a casual social media post draft announcing a new product." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "api-integration.composeNotification", + "description": "This tool composes a customized notification message by integrating input parameters such as recipient details, message content, notification type, and optional attachments or metadata. It processes these inputs to generate a structured notification payload ready for delivery via APIs or messaging platforms.", + "category": "api-integration", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier or address of the notification recipient", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "Type of notification, e.g., email, SMS, push, in-app", + "required": true, + "defaultValue": "" + }, + { + "name": "messageSubject", + "type": "string", + "description": "Subject or title of the notification message, if applicable", + "required": false, + "defaultValue": "" + }, + { + "name": "messageBody", + "type": "string", + "description": "Main content body of the notification message", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments or embedded media URLs", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional key-value pairs to customize or enrich the notification (e.g., priority, category)", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Structured notification payload including recipient, type, content, attachments, and metadata ready for API consumption or dispatch" + }, + "aiAgent": { + "useCase": "Use this tool when creating notifications that require composing structured messages by combining recipient info, message content, and optional metadata or attachments, suitable for sending through external notification APIs or messaging systems. Ideal for automating notification workflows or integrating multi-channel delivery.", + "limitations": "This tool does not send or deliver notifications; it only prepares the notification payload. Delivery depends on other tools or systems. It also does not generate message content automatically; input content must be provided.", + "examples": [ + "Compose an email notification to user123 with subject 'Account Update' and message body 'Your account has been updated successfully.'", + "Create a push notification for device ABCD with message 'New alert received' and high priority metadata.", + "Generate an SMS notification to phone number +123456789 with text-only message body." + ] + }, + "tags": [ + "api-integration", + "notification", + "message-composition", + "communication", + "automation", + "multi-channel" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user123\",\"notificationType\":\"email\",\"messageSubject\":\"Account Update\",\"messageBody\":\"Your account has been updated successfully.\",\"attachments\":[],\"metadata\":{\"priority\":\"normal\"}}", + "description": "Compose a standard email notification with subject and body for user 'user123'." + }, + { + "inputJson": "{\"recipientId\":\"deviceABCD\",\"notificationType\":\"push\",\"messageBody\":\"New alert received\",\"metadata\":{\"priority\":\"high\",\"category\":\"alerts\"}}", + "description": "Create a high-priority push notification for a specific device with alert category metadata." + }, + { + "inputJson": "{\"recipientId\":\"+123456789\",\"notificationType\":\"sms\",\"messageBody\":\"Your verification code is 123456.\",\"attachments\":[],\"metadata\":{}}", + "description": "Generate an SMS notification with a verification code message to a phone number." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "api-integration.composeParagraph", + "description": "This tool accepts multiple input texts and optional instructions, then composes a coherent, fluent paragraph combining the inputs based on the instructions. It processes raw text snippets or structured content and outputs a single merged paragraph suitable for reports, summaries, or presentations.", + "category": "api-integration", + "parameters": [ + { + "name": "inputTexts", + "type": "array", + "description": "An array of input text strings or content pieces to be merged into one paragraph.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "instruction", + "type": "string", + "description": "Optional guidance on composition style, tone, or focus to influence the paragraph output.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the composed paragraph to enforce concise output.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en' for English) to generate the paragraph in the desired language.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed paragraph as a single coherent text string, plus metadata such as actual length and language used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to combine multiple text inputs into a single well-structured paragraph, such as creating summaries, generating content merges from different API sources, or preparing unified text outputs for documents or messages.", + "limitations": "This tool cannot generate information beyond input content. It does not fact-check or verify input accuracy and is limited to rephrasing and merging existing texts.", + "examples": [ + "Compose a summary paragraph from three product description snippets.", + "Merge user feedback texts into a unified paragraph highlighting main points.", + "Create a formal paragraph combining multiple technical notes for a report." + ] + }, + "tags": [ + "text-composition", + "api-integration", + "content-assembly", + "paragraph-generation", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"inputTexts\":[\"The new product features advanced AI capabilities.\",\"It offers seamless integration with existing platforms.\",\"Users report improved productivity after deployment.\"],\"instruction\":\"Create a formal summary paragraph.\",\"maxLength\":300,\"language\":\"en\"}", + "description": "Compose a formal summary paragraph from multiple product description snippets." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "api-integration.buildVariable", + "description": "Constructs a programmable variable object for API workflow orchestration. Accepts variable name, type, initial value, and optional metadata; validates and encapsulates these inputs to produce a prepared variable object ready for use within API integration scripts or automation pipelines.", + "category": "api-integration", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique name identifier for the variable to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable such as string, number, boolean, array, or object.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialValue", + "type": "string", + "description": "The initial value assigned to the variable, represented as a JSON string that matches the declared type.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata object containing additional info like description, scope, or validation rules for the variable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured variable object containing name, type, value (parsed if JSON), and metadata fields, validated and ready for API integration use." + }, + "aiAgent": { + "useCase": "Use this tool when constructing dynamic variables during API orchestration or integration scripts where variables must be explicitly defined with type safety and optional metadata for downstream processes or conditional logic.", + "limitations": "Does not execute or evaluate variable expressions; only builds and validates static variable objects from given inputs. Complex variable transformations must be handled separately.", + "examples": [ + "Create a string variable named 'apiToken' with an initial value", + "Build a numeric variable 'retryCount' initialized to 3", + "Define an object variable 'userDetails' with metadata describing usage context" + ] + }, + "tags": [ + "api", + "integration", + "variable", + "build", + "automation", + "workflow", + "orchestration" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"sessionId\",\"variableType\":\"string\",\"initialValue\":\"\\\"abc123xyz\\\"\",\"metadata\":{\"description\":\"Unique session identifier\",\"scope\":\"global\"}}", + "description": "Defines a global string variable 'sessionId' with a specific initial value and descriptive metadata." + }, + { + "inputJson": "{\"variableName\":\"maxRetries\",\"variableType\":\"number\",\"initialValue\":\"5\"}", + "description": "Creates a numeric variable 'maxRetries' initialized to 5 without additional metadata." + }, + { + "inputJson": "{\"variableName\":\"isActive\",\"variableType\":\"boolean\",\"initialValue\":\"true\",\"metadata\":{\"description\":\"Flag to toggle feature activation\"}}", + "description": "Builds a boolean variable 'isActive' set to true with a description for clarity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "api-integration.buildQuery", + "description": "Constructs a structured API query object from input parameters including filters, sorting, pagination, and selected fields. Accepts inputs defining conditions, sort order, page size, and fields to retrieve, and produces a standardized query object suitable for API calls or further request building.", + "category": "api-integration", + "parameters": [ + { + "name": "filters", + "type": "object", + "description": "Key-value pairs defining filtering conditions to apply to the query, where keys are field names and values are filter criteria.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field name to sort the results by. If omitted, no sorting is applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Order of sorting: 'asc' for ascending or 'desc' for descending. Defaults to ascending if sortBy is provided.", + "required": false, + "defaultValue": "asc" + }, + { + "name": "pageSize", + "type": "number", + "description": "Maximum number of records to return in the query. Defaults to 50 if not specified.", + "required": false, + "defaultValue": "50" + }, + { + "name": "pageNumber", + "type": "number", + "description": "Page number for pagination. Defaults to 1 for the first page if not specified.", + "required": false, + "defaultValue": "1" + }, + { + "name": "fields", + "type": "array", + "description": "List of specific fields to retrieve in the query output. If empty or not provided, all fields will be returned.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A query object representing the combined filtering, sorting, pagination, and field selection parameters, ready to be used for constructing or sending API requests." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically assemble API query parameters for endpoints that support structured queries involving filters, sorting criteria, pagination controls, and selected fields. Helps in creating consistent, well-formed query objects to enable dynamic and flexible API integrations.", + "limitations": "This tool does not execute the query or access any API; it only assembles query parameters. It assumes the API supports standard filtering, sorting, and pagination conventions as structured in the output.", + "examples": [ + "Create a query to filter users by status 'active', sort by 'lastLogin' descending, return 20 results per page, requesting page 2, retrieving only 'id', 'name', and 'email' fields.", + "Build a query for products where category is 'books' and price is under 20, sorted ascending by price, returning first 10 results, selecting all fields.", + "Generate a default query with no filters, sorting, limited to 50 records per page, first page, with all fields selected." + ] + }, + "tags": [ + "api", + "query", + "filter", + "pagination", + "sorting", + "fields", + "integration" + ], + "examples": [ + { + "inputJson": "{\"filters\":{\"status\":\"active\"},\"sortBy\":\"lastLogin\",\"sortOrder\":\"desc\",\"pageSize\":20,\"pageNumber\":2,\"fields\":[\"id\",\"name\",\"email\"]}", + "description": "Query users filtered by active status, sorted by lastLogin descending, page 2, 20 results, select id, name and email." + }, + { + "inputJson": "{\"filters\":{\"category\":\"books\",\"price\":{\"lt\":20}},\"sortBy\":\"price\",\"sortOrder\":\"asc\",\"pageSize\":10,\"pageNumber\":1,\"fields\":[]}", + "description": "Query books priced under 20, sorted by ascending price, first page with 10 results, all fields selected." + }, + { + "inputJson": "{}", + "description": "Default query with no filters or sorting, 50 records per page, first page, all fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "api-integration.generateTrend", + "description": "Generates analytical trend data by aggregating and analyzing metrics from one or multiple APIs over a specified time range. Accepts input specifying APIs endpoints, metrics to analyze, time periods, and filtering criteria, and outputs structured trend results including summary statistics and visualizable data points.", + "category": "api-integration", + "parameters": [ + { + "name": "apiEndpoints", + "type": "array", + "description": "List of API endpoint URLs to fetch metric data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names or keys to analyze from the API responses.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "Start timestamp (ISO 8601) for the trend analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "End timestamp (ISO 8601) for the trend analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate data points (e.g., 'sum', 'average', 'max').", + "required": false, + "defaultValue": "average" + }, + { + "name": "filters", + "type": "object", + "description": "Optional key-value pairs to filter data (e.g., region, category).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for trend points (e.g., 'hourly', 'daily', 'weekly').", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "An object containing the aggregated trend data with timestamps, metric values per time interval, and summary statistics like totals and averages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate trends from multiple API sources by aggregating selected metrics over a time range, enabling analytical insights and visualization of changes over time. It's suitable for combining heterogeneous data sources into unified trend reports or dashboards.", + "limitations": "This tool does not perform deep causal analysis or forecasting beyond basic aggregation. It requires the APIs to provide time-series or metric data in a compatible format. Does not handle API authentication internally, which must be managed externally.", + "examples": [ + "Generate daily average user signups and revenue trends for the past month from two marketing and sales APIs.", + "Produce weekly aggregated error rates and system load metrics from multiple infrastructure monitoring APIs over the last quarter.", + "Retrieve and aggregate hourly customer activity metrics with region filters from several e-commerce APIs to identify peak usage times." + ] + }, + "tags": [ + "api", + "analytics", + "trend", + "aggregation", + "time-series", + "metrics", + "data-integration" + ], + "examples": [ + { + "inputJson": "{\"apiEndpoints\":[\"https://api.example.com/marketing/metrics\",\"https://api.example.com/sales/metrics\"],\"metrics\":[\"userSignups\",\"revenue\"],\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-31T23:59:59Z\",\"aggregationMethod\":\"average\",\"granularity\":\"daily\"}", + "description": "Daily average user signups and revenue trends for May 2024 from marketing and sales APIs." + }, + { + "inputJson": "{\"apiEndpoints\":[\"https://infra-monitoring.example.com/api/errors\",\"https://infra-monitoring.example.com/api/load\"],\"metrics\":[\"errorRate\",\"systemLoad\"],\"startTime\":\"2024-01-01T00:00:00Z\",\"endTime\":\"2024-03-31T23:59:59Z\",\"aggregationMethod\":\"max\",\"granularity\":\"weekly\"}", + "description": "Weekly max error rates and system load metrics for Q1 2024 from infrastructure monitoring APIs." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "api-integration.generateSchema", + "description": "Generates a JSON schema based on provided API endpoint definitions or sample JSON data. Accepts an API specification or example payloads, analyzes the structure, and produces a standardized JSON schema useful for validation, integration, or documentation purposes.", + "category": "api-integration", + "parameters": [ + { + "name": "inputType", + "type": "string", + "description": "Type of input to generate schema from; either 'apiSpec' for API specification or 'sampleData' for example JSON payloads.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputData", + "type": "string", + "description": "The raw input data as a JSON string. Should be either a valid API specification (like OpenAPI snippet) or sample JSON data depending on inputType.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetSchemaVersion", + "type": "string", + "description": "Desired JSON schema draft version to generate, e.g., 'draft-07', 'draft-2019-09'. Defaults to 'draft-07'.", + "required": false, + "defaultValue": "draft-07" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example fields in the generated schema based on input data. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "immutableProperties", + "type": "array", + "description": "List of property names to mark as immutable in the schema output. Optional.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated JSON schema as a JSON string along with metadata about the generation process." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or infer JSON schemas from either API specifications or example data payloads to automate validation, documentation, or integration tasks in API workflows.", + "limitations": "This tool cannot fully interpret undocumented or ambiguous data semantics; schema inference may not capture complex validation rules beyond structural data types and simple constraints.", + "examples": [ + "Generate a JSON schema for a REST API endpoint based on an OpenAPI path definition.", + "Create a JSON schema from an example JSON response payload for validating incoming data.", + "Produce a draft-2019-09 JSON schema from sample data marking specific properties immutable." + ] + }, + "tags": [ + "api-integration", + "json-schema", + "schema-generation", + "validation", + "api-specification" + ], + "examples": [ + { + "inputJson": "{\"inputType\":\"sampleData\",\"inputData\":\"{\\\"id\\\":123, \\\"name\\\": \\\"Example\\\", \\\"active\\\": true}\",\"targetSchemaVersion\":\"draft-07\",\"includeExamples\":true}", + "description": "Generate JSON schema from a simple example data object with property types inferred." + }, + { + "inputJson": "{\"inputType\":\"apiSpec\",\"inputData\":\"{\\\"paths\\\":{\\\"/user\\\":{\\\"get\\\":{\\\"responses\\\":{\\\"200\\\":{\\\"content\\\":{\\\"application/json\\\":{\\\"schema\\\":{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"type\\\":\\\"string\\\"}}}}}}}}}}}\",\"targetSchemaVersion\":\"draft-07\",\"includeExamples\":false}", + "description": "Generate JSON schema from an OpenAPI response schema snippet without examples." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "api-integration.createQueue", + "description": "Creates a message queue on a specified messaging service platform by accepting configuration parameters such as queue name, attributes, and access policies. Processes the request by interacting with the target API and returns the queue's unique identifier and endpoint URL upon successful creation.", + "category": "api-integration", + "parameters": [ + { + "name": "serviceProvider", + "type": "string", + "description": "The messaging service provider to create the queue on (e.g., AWS SQS, RabbitMQ, Azure Service Bus).", + "required": true, + "defaultValue": "" + }, + { + "name": "queueName", + "type": "string", + "description": "The name of the queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "attributes", + "type": "object", + "description": "Optional key-value pairs specifying queue attributes like visibility timeout, delivery delay, max message size, etc.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessPolicy", + "type": "string", + "description": "Optional JSON string defining access control policies for the queue.", + "required": false, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "The geographic region or availability zone to create the queue in, if applicable to the provider.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created queue's unique identifier (queueId), endpoint URL (queueUrl), and a status message indicating success or failure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically provision a new message queue on a supported messaging platform as part of workflow orchestration, event-driven architecture setup, or backend infrastructure initialization. It simplifies multi-provider queue creation by standardizing inputs and outputs.", + "limitations": "This tool does not support unsupported or custom messaging platforms not specified by the serviceProvider parameter. It cannot delete, update, or manage existing queues; it only creates new ones. Network or permission errors are outside its direct control.", + "examples": [ + "Create a new queue named 'orderProcessing' on AWS SQS with default settings.", + "Create a RabbitMQ queue named 'taskQueue' with specific access policies for a distributed system.", + "Create an Azure Service Bus queue 'paymentQueue' in the 'eastus' region with a delivery delay of 10 seconds." + ] + }, + "tags": [ + "api-integration", + "queue", + "messaging", + "cloud", + "infrastructure", + "provisioning", + "automation" + ], + "examples": [ + { + "inputJson": "{\"serviceProvider\":\"AWS SQS\",\"queueName\":\"orderProcessing\",\"attributes\":{\"VisibilityTimeout\":\"30\"},\"accessPolicy\":\"\",\"region\":\"us-east-1\"}", + "description": "Create an AWS SQS queue named 'orderProcessing' with a visibility timeout of 30 seconds in the us-east-1 region." + }, + { + "inputJson": "{\"serviceProvider\":\"RabbitMQ\",\"queueName\":\"taskQueue\",\"attributes\":{},\"accessPolicy\":\"{\\\"read\\\": [\\\"user1\\\", \\\"user2\\\"]}\",\"region\":\"\"}", + "description": "Create a RabbitMQ queue named 'taskQueue' with a specific read access policy." + }, + { + "inputJson": "{\"serviceProvider\":\"Azure Service Bus\",\"queueName\":\"paymentQueue\",\"attributes\":{\"DefaultMessageTimeToLive\":\"PT1H\"},\"accessPolicy\":\"\",\"region\":\"eastus\"}", + "description": "Create an Azure Service Bus queue named 'paymentQueue' in the eastus region with a default message TTL of 1 hour." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "api-integration.createThread", + "description": "Creates a new communication thread by integrating with external messaging or collaboration APIs. Accepts parameters like thread title, participants, channel identifiers, and metadata, then processes creation via the specified API, returning details of the created thread including its unique ID and status.", + "category": "api-integration", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "Name of the external API or platform to create the thread on (e.g., Slack, Microsoft Teams).", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title or subject of the thread to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant identifiers (user IDs or emails) to be included in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelId", + "type": "string", + "description": "Identifier of the channel or group in which to create the thread, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value metadata to attach to the thread.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Whether the thread should be private or public.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing details about the created thread including threadId, creationTimestamp, participants, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initiate a new communication thread on behalf of a user or system across various messaging or collaboration platforms. It helps automate setup of conversations by specifying participants and context, streamlining communication workflows.", + "limitations": "This tool cannot fetch or modify existing threads, nor can it send individual messages within threads. It relies on external API permissions and may not support all platforms or thread features universally.", + "examples": [ + "Create a new discussion thread in Slack channel with 3 participants titled 'Q3 Project Planning'.", + "Start a private Microsoft Teams thread including specific user emails for a focused team conversation.", + "Open a public thread in a generic messaging platform channel, attaching metadata for tracking." + ] + }, + "tags": [ + "api-integration", + "thread-creation", + "communication", + "messaging", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"Slack\",\"title\":\"Q3 Project Planning\",\"participants\":[\"U12345\",\"U67890\",\"U54321\"],\"channelId\":\"C98765\",\"metadata\":{\"project\":\"Q3\",\"priority\":\"high\"},\"isPrivate\":false}", + "description": "Creating a public Slack thread titled 'Q3 Project Planning' with three users in channel C98765, including metadata about the project and priority." + }, + { + "inputJson": "{\"apiName\":\"MicrosoftTeams\",\"title\":\"Confidential Team Discussion\",\"participants\":[\"user1@example.com\",\"user2@example.com\"],\"isPrivate\":true}", + "description": "Starting a private Microsoft Teams thread involving two users by their emails, for confidential discussion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "api-integration.createReply", + "description": "This tool constructs and sends a reply message via an integrated communication API. It accepts parameters defining the target recipient or thread, the reply content, optional attachments or metadata, and delivery options. It returns the status of the sent reply including message ID and timestamp.", + "category": "api-integration", + "parameters": [ + { + "name": "conversationId", + "type": "string", + "description": "Identifier of the conversation or thread where the reply will be posted.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the recipient user or group for the reply. Used if conversationId is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The text content of the reply message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "An array of attachment objects (e.g., files, images) to include with the reply.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata such as tags, priority flags, or custom fields attached to the reply.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sendAsNotification", + "type": "boolean", + "description": "If true, send the reply as an immediate notification to the recipient(s).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Response object containing delivery status, sent message ID, timestamp, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate and send a reply message in an ongoing conversation or to a specified user via a communication platform, supporting optional attachments and metadata for context. It streamlines multi-channel communication replies through APIs.", + "limitations": "This tool does not handle composing complex multi-part messages such as threaded conversations beyond simple replies. It also does not perform natural language generation but only sends provided content.", + "examples": [ + "Send a quick reply message to a specific conversation thread.", + "Reply to a user with a file attachment included.", + "Send a notification reply with high priority metadata." + ] + }, + "tags": [ + "api-integration", + "messaging", + "communication", + "reply", + "sendMessage", + "notification" + ], + "examples": [ + { + "inputJson": "{\"conversationId\":\"thread123\",\"messageContent\":\"Thank you for your update! I will review and get back to you.\",\"sendAsNotification\":false}", + "description": "Send a text reply in a conversation thread without notification." + }, + { + "inputJson": "{\"recipientId\":\"user789\",\"messageContent\":\"Here is the document you requested.\",\"attachments\":[{\"type\":\"file\",\"url\":\"https://example.com/doc.pdf\"}],\"sendAsNotification\":true}", + "description": "Send a reply message with a file attachment as an immediate notification to a user." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "api-integration.createPipeline", + "description": "Creates an automated API integration pipeline by orchestrating multiple API calls in a specified sequence with conditions and data transformations. Accepts a configuration object defining each API step, dependencies, and data mapping. Outputs a pipeline ID and status indicating successful creation ready for execution.", + "category": "api-integration", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The unique name to assign to the created API integration pipeline.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered array of step objects, each specifying the API endpoint, HTTP method, headers, request payload, and conditions for execution.", + "required": true, + "defaultValue": "" + }, + { + "name": "trigger", + "type": "object", + "description": "Defines the trigger mechanism for starting the pipeline, such as webhook, schedule, or event-based triggers.", + "required": true, + "defaultValue": "" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Specifies how to handle failures in pipeline steps, including retry count, delay between retries, and backoff strategy.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "concurrencyLimit", + "type": "number", + "description": "Maximum number of steps that can execute concurrently within the pipeline to control resource utilization.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with pipelineId (string) uniquely identifying the created pipeline and status (string) indicating creation success or failure." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate and orchestrate a sequence of API calls with defined dependencies, conditions, and data transformations, such as integrating multiple web services in a workflow. It enables building complex API pipelines without manual coding.", + "limitations": "This tool does not execute or monitor pipelines, only creates their configuration. It cannot generate arbitrary API call content without user input or accurate step definitions. It does not handle authentication automatically for APIs unless included in step definitions.", + "examples": [ + "Create a pipeline that triggers on a webhook and calls three APIs sequentially, passing data between them.", + "Define a scheduled pipeline with retries on failure and concurrency limit set to 2.", + "Set up an event-driven pipeline that conditionally executes steps based on API response content." + ] + }, + "tags": [ + "api", + "integration", + "pipeline", + "orchestration", + "automation", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"OrderProcessing\",\"steps\":[{\"name\":\"ValidateOrder\",\"endpoint\":\"https://api.example.com/validate\",\"method\":\"POST\",\"headers\":{\"Content-Type\":\"application/json\"},\"payloadTemplate\":{\"orderId\":\"{{input.orderId}}\"},\"condition\":null},{\"name\":\"ChargePayment\",\"endpoint\":\"https://api.payment.com/charge\",\"method\":\"POST\",\"headers\":{\"Authorization\":\"Bearer {{secrets.apiToken}}\"},\"payloadTemplate\":{\"amount\":\"{{ValidateOrder.validatedAmount}}\"},\"condition\":{\"step\":\"ValidateOrder\",\"success\":true}},{\"name\":\"NotifyUser\",\"endpoint\":\"https://api.notify.com/send\",\"method\":\"POST\",\"headers\":{\"Content-Type\":\"application/json\"},\"payloadTemplate\":{\"userId\":\"{{input.userId}}\",\"message\":\"Your order was processed.\"},\"condition\":{\"step\":\"ChargePayment\",\"success\":true}}],\"trigger\":{\"type\":\"webhook\",\"url\":\"https://myapp.com/webhook\"},\"retryPolicy\":{\"maxRetries\":3,\"delaySeconds\":5,\"strategy\":\"exponential\"},\"concurrencyLimit\":1}", + "description": "Defines a pipeline named 'OrderProcessing' triggered by a webhook, running three API calls in order with conditions and a retry policy." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "api-integration.createWorkflow", + "description": "Creates an automated workflow by orchestrating multiple API calls and defining data flow and execution logic. Accepts a structured workflow definition including steps, triggers, and actions, validates and sets up the workflow, and returns the configured workflow metadata including execution ID and status.", + "category": "api-integration", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "Name of the workflow to create for identification purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "trigger", + "type": "object", + "description": "Defines the event or schedule that triggers the workflow execution, including type and parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "steps", + "type": "array", + "description": "An ordered list of workflow steps detailing API integration actions, including API endpoints, methods, and input/output mappings.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description providing details about the workflow's purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag indicating whether to enable logging of workflow executions for audit and debug.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing workflowId, name, status such as active or inactive, created timestamp, and optionally error messages if creation failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically define and set up multi-step API workflows that respond to triggers and coordinate different services. It's ideal for designing automation pipelines and orchestrations that require dynamic API interactions.", + "limitations": "This tool does not execute the workflow or handle runtime errors during execution; it only creates and configures the workflow definition. It also requires the caller to provide valid API details and connections.", + "examples": [ + "Create a scheduled daily data sync workflow calling multiple APIs sequentially.", + "Set up an event-driven workflow triggered by an incoming webhook.", + "Define a retry logic in a multi-step API integration workflow." + ] + }, + "tags": [ + "api-integration", + "workflow", + "automation", + "orchestration", + "api", + "trigger" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"DailyDataSync\",\"trigger\":{\"type\":\"schedule\",\"cron\":\"0 0 * * *\"},\"steps\":[{\"name\":\"FetchUserData\",\"apiEndpoint\":\"https://api.example.com/users\",\"method\":\"GET\"},{\"name\":\"UpdateCRM\",\"apiEndpoint\":\"https://crm.example.com/update\",\"method\":\"POST\",\"inputMapping\":{\"userData\":\"FetchUserData.response\"}}],\"description\":\"Daily sync of user data to CRM.\",\"enableLogging\":true}", + "description": "Creates a scheduled workflow that fetches user data and updates a CRM daily with logging enabled." + }, + { + "inputJson": "{\"workflowName\":\"WebhookOrderProcessing\",\"trigger\":{\"type\":\"webhook\",\"url\":\"https://hooks.example.com/neworder\"},\"steps\":[{\"name\":\"ValidateOrder\",\"apiEndpoint\":\"https://api.orders.com/validate\",\"method\":\"POST\",\"inputMapping\":{\"orderData\":\"trigger.payload\"}},{\"name\":\"ConfirmPayment\",\"apiEndpoint\":\"https://payments.example.com/confirm\",\"method\":\"POST\",\"inputMapping\":{\"orderID\":\"ValidateOrder.response.orderId\"}}],\"description\":\"Processes new orders received via webhook, validating and confirming payment.\",\"enableLogging\":false}", + "description": "Sets up an event-driven workflow triggered by a webhook to validate and process new orders." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "api-integration.createDeal", + "description": "Creates a new business deal record by integrating with a CRM or deal management API. Accepts deal details like title, value, currency, associated contacts, stage, and optional metadata. Processes input to construct a valid API request and returns confirmation with deal ID and status.", + "category": "api-integration", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the deal to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "value", + "type": "number", + "description": "Monetary value of the deal in specified currency units.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) for the deal value, e.g., USD, EUR.", + "required": true, + "defaultValue": "" + }, + { + "name": "contacts", + "type": "array", + "description": "Array of contact identifiers linked to the deal.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "stage", + "type": "string", + "description": "Current stage or status of the deal in the sales funnel, e.g., prospect, negotiation.", + "required": false, + "defaultValue": "\"prospect\"" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs with additional deal information such as priority, source, or notes.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique deal identifier, success status, and a message describing the result of the creation attempt." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or register a new business deal within a CRM or sales platform by providing necessary deal details. Ideal for automating sales pipeline management and updating deal records programmatically.", + "limitations": "This tool cannot verify the validity of contact identifiers or enforce business rules beyond the API requirements. It relies on upstream API availability and correct permissions.", + "examples": [ + "Create a new deal titled 'Q2 Subscription Expansion' valued at 50000 USD associated with two contacts.", + "Register a deal with minimum required fields: title, value, and currency.", + "Add a deal including metadata such as source='referral' and priority='high'." + ] + }, + "tags": [ + "api", + "crm", + "deal", + "business", + "sales", + "integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Enterprise Software Upgrade\",\"value\":120000,\"currency\":\"USD\",\"contacts\":[\"contact123\",\"contact456\"],\"stage\":\"negotiation\",\"metadata\":{\"priority\":\"high\",\"source\":\"trade show\"}}", + "description": "Create a high-value deal linked to two contacts with stage 'negotiation' and additional metadata." + }, + { + "inputJson": "{\"title\":\"New Client Onboarding\",\"value\":15000,\"currency\":\"EUR\"}", + "description": "Create a deal with only the required fields for a new client onboarding." + }, + { + "inputJson": "{\"title\":\"Renewal Contract\",\"value\":30000,\"currency\":\"USD\",\"contacts\":[\"contact789\"],\"metadata\":{\"notes\":\"Contract due for renewal in 3 months.\"}}", + "description": "Create a renewal deal for an existing contact including notes in metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "api-integration.createAttachment", + "description": "Creates an attachment by uploading a media file or resource to a given API endpoint. Accepts input such as file data (base64 or URL), file name, MIME type, and metadata. Processes this data by sending it to the target API and returns an object containing the attachment's unique identifier, URL, and status information.", + "category": "api-integration", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the file to attach, including extension (e.g., 'image.png').", + "required": true, + "defaultValue": "" + }, + { + "name": "fileData", + "type": "string", + "description": "Base64 encoded string of the file's binary data, or a publicly accessible URL to the media file.", + "required": true, + "defaultValue": "" + }, + { + "name": "mimeType", + "type": "string", + "description": "The MIME type of the file being attached (e.g., 'image/png' or 'application/pdf').", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs containing additional metadata to associate with the attachment.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetApiUrl", + "type": "string", + "description": "The API endpoint URL where the attachment will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authorization token or API key required to authenticate the upload request.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the attachment's unique ID, accessible URL, upload status, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool whenever you need to programmatically upload or create attachments (media files, documents) to an external service or API, especially when the file data is provided in base64 encoding or via accessible URLs. It helps AI agents integrate media assets into workflows or platforms.", + "limitations": "This tool does not perform file validation or conversion; the input must be correctly formatted and valid. It does not handle batch uploads in one call. Success depends on correct API endpoint and authentication details.", + "examples": [ + "Create an image attachment by uploading a base64 encoded PNG file to a content management system API.", + "Upload a PDF document attachment by providing a URL to a storage API with the correct auth token.", + "Create an attachment with additional metadata for tagging and categorization on the destination platform." + ] + }, + "tags": [ + "api", + "attachment", + "upload", + "media", + "integration", + "file", + "create" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"profile.jpg\",\"fileData\":\"iVBORw0KGgoAAAANSUhEUg...\",\"mimeType\":\"image/jpeg\",\"metadata\":{\"description\":\"User profile picture\"},\"targetApiUrl\":\"https://api.examplecms.com/v1/attachments\",\"authToken\":\"Bearer abcdef12345\"}", + "description": "Upload a base64 encoded JPEG image to a CMS API with metadata and authentication." + }, + { + "inputJson": "{\"fileName\":\"report.pdf\",\"fileData\":\"https://files.example.com/reports/latest.pdf\",\"mimeType\":\"application/pdf\",\"metadata\":{},\"targetApiUrl\":\"https://docstorage.example.com/api/upload\",\"authToken\":\"\"}", + "description": "Upload a PDF by URL to a document storage API without authentication." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "api-integration.createChart", + "description": "Generates a customizable chart image by integrating with chart rendering APIs. Accepts input data arrays, chart type, labels, and styling options. Produces an image URL or base64-encoded chart graphic suitable for embedding in web or mobile applications.", + "category": "api-integration", + "parameters": [ + { + "name": "chartType", + "type": "string", + "description": "Type of chart to create, e.g. 'bar', 'line', 'pie'.", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "array", + "description": "Array of data points or datasets for the chart. Each dataset can include labels and numeric values.", + "required": true, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "Labels corresponding to data points or categories, matching data arrays.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title text to display on the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated chart image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated chart image in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the chart canvas in hexadecimal or CSS format.", + "required": false, + "defaultValue": "white" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Whether to display a legend on the chart.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the chart image output, including a URL or base64 representation suitable for immediate use or embedding." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate visual chart representations from structural data sets via API calls, such as for dashboards, reports, or dynamic web content. It creates visually formatted chart images that can be easily embedded or distributed.", + "limitations": "This tool does not perform data analysis, validation, or complex chart compositions beyond standard chart types. It relies on external APIs for rendering and may not support highly customized or interactive charts.", + "examples": [ + "Create a bar chart showing monthly sales data with labeled months and values.", + "Generate a pie chart of user demographics from provided percentage data.", + "Produce a line chart comparing multiple datasets across time with a legend." + ] + }, + "tags": [ + "api", + "chart", + "visualization", + "image-generation", + "data-presentation", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"chartType\":\"bar\",\"data\":[[10,20,30,40]],\"labels\":[\"Q1\",\"Q2\",\"Q3\",\"Q4\"],\"title\":\"Quarterly Revenue\",\"width\":700,\"height\":500,\"backgroundColor\":\"#f0f0f0\",\"showLegend\":false}", + "description": "Generate a bar chart of quarterly revenue with custom size and background color." + }, + { + "inputJson": "{\"chartType\":\"pie\",\"data\":[50,30,20],\"labels\":[\"Desktop\",\"Mobile\",\"Tablet\"],\"title\":\"User Device Distribution\"}", + "description": "Create a pie chart depicting device usage distribution." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "web-scraping.analyzeNotification", + "description": "This tool accepts a URL or raw HTML content of a webpage and extracts notification messages or alerts presented on that page, analyzing their text, type (e.g., error, warning, info), and timestamps if available. It processes structured and unstructured notifications to provide a summary and categorization of in-page notifications for monitoring or auditing purposes.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The webpage URL to scrape and analyze for notification messages. Optional if rawHtml is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawHtml", + "type": "string", + "description": "Raw HTML content of a webpage to analyze directly without fetching from a URL. Optional if url is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationSelectors", + "type": "array", + "description": "List of CSS selectors to identify notification elements on the page. If empty, default selectors for common notifications are used.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeHidden", + "type": "boolean", + "description": "Whether to include notifications that are hidden (e.g., CSS display:none) in the analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxNotifications", + "type": "number", + "description": "Maximum number of notifications to analyze and return. Helps control output size.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of extracted notifications with properties like text, type (error, warning, info), timestamp if available, and their source CSS selector for reference." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically extract and analyze notification or alert messages from a webpage to monitor site health, errors, or info messages without manual inspection. It is useful for automated monitoring, auditing, or integration systems that track site notifications.", + "limitations": "This tool cannot interact with dynamic notifications that require user interaction or are generated after complex JavaScript events without pre-rendered HTML input. It may not reliably identify notifications if custom styles or obfuscated HTML are used, or if notifications are rendered inside iframes without direct HTML input.", + "examples": [ + "Extract all notifications from 'https://example.com/admin-dashboard' to monitor error and warning messages.", + "Analyze raw HTML from a support page to summarize recent alerts and info messages.", + "Retrieve up to 10 notifications including hidden warnings from a page to audit production site issues." + ] + }, + "tags": [ + "web scraping", + "notification", + "monitoring", + "alert extraction", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/notifications\",\"notificationSelectors\":[\".alert\", \".notification-message\"],\"includeHidden\":false,\"maxNotifications\":20}", + "description": "Extract up to 20 visible notifications from example.com using custom CSS selectors for alerts." + }, + { + "inputJson": "{\"rawHtml\":\"
Server error occurred
Update available
\",\"includeHidden\":false,\"maxNotifications\":5}", + "description": "Analyze raw HTML snippet with error and info notifications provided directly." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "web-scraping.analyzeMetric", + "description": "This tool accepts a URL and a CSS selector or XPath to locate web page elements containing numerical data. It extracts these values from the specified page, performs statistical analysis (such as average, median, min, max, and count), and returns a structured summary of these metrics for web analytics or monitoring purposes.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web page URL to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "selector", + "type": "string", + "description": "CSS selector or XPath expression to identify numeric metric elements on the web page.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectorType", + "type": "string", + "description": "Type of selector ('css' or 'xpath'). Determines how the selector is interpreted.", + "required": false, + "defaultValue": "css" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time to wait for page load and data extraction in seconds.", + "required": false, + "defaultValue": "30" + }, + { + "name": "numericParseLocale", + "type": "string", + "description": "Locale identifier to parse numbers correctly (e.g., 'en-US', 'de-DE').", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "includeOutliers", + "type": "boolean", + "description": "Whether to include statistical outliers in the analysis.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted numeric values and their statistical summary including count, average, median, minimum and maximum values." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and analyze quantitative metrics from a live web page, such as prices, ratings, or counts, identified by selectors. It is suitable for gathering numeric data for dashboards, reporting, or monitoring dynamic metrics online.", + "limitations": "This tool cannot extract metrics that are not present as visible text or attribute values in the DOM. It cannot analyze non-numeric text or images for metrics. The accuracy depends on the correctness of the selector and the page's loading behavior. Complex JavaScript-rendered metrics that require interaction may not be supported.", + "examples": [ + "Extract average product prices from an e-commerce category page using CSS selectors.", + "Collect rating numbers from a review page specified by XPath and calculate summary statistics.", + "Monitor numeric visitor counts displayed on a dashboard for trending analysis using a CSS selector." + ] + }, + "tags": [ + "web scraping", + "data analysis", + "metrics extraction", + "statistics", + "analytics", + "numeric data" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/products\",\"selector\":\".product-price\",\"selectorType\":\"css\",\"timeoutSeconds\":20,\"numericParseLocale\":\"en-US\",\"includeOutliers\":false}", + "description": "Extract prices from product listings on an e-commerce page and analyze statistical metrics." + }, + { + "inputJson": "{\"url\":\"https://news.example.com/stats\",\"selector\":\"//div[@class='visitor-count']\",\"selectorType\":\"xpath\",\"timeoutSeconds\":15,\"numericParseLocale\":\"en-US\",\"includeOutliers\":true}", + "description": "Extract visitor count metrics from a news statistics page using XPath and include outliers in the summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "web-scraping.analyzeEvent", + "description": "This tool accepts a URL of a webpage containing event information, optionally date range and keywords, then scrapes and analyzes event data such as event titles, dates, locations, and descriptions. It outputs a structured summary with event details and basic analytics like event count and date distributions.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The webpage URL to scrape event information from.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRangeStart", + "type": "string", + "description": "Filter events starting no earlier than this date (YYYY-MM-DD). Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "dateRangeEnd", + "type": "string", + "description": "Filter events ending no later than this date (YYYY-MM-DD). Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of keywords to filter event relevance. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxEvents", + "type": "number", + "description": "Maximum number of events to retrieve and analyze. Optional, default 50.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of events with details (title, date, location, description) and overall event analytics like total event count and date range covered." + }, + "aiAgent": { + "useCase": "Use this tool to extract and analyze event details from web pages such as conference listings, meetups, or festivals, providing structured event data for further scheduling or trend analysis. It helps automate event discovery and provides summaries from unstructured event pages.", + "limitations": "This tool cannot access pages behind authentication or dynamically load content requiring JavaScript execution beyond basic scraping capabilities. It may miss events formatted in non-standard HTML or embedded in images or scripts.", + "examples": [ + "Extract event details from https://example.com/conferences for upcoming tech conferences using keyword 'AI'.", + "Get a list of events within specified date range from a local events webpage.", + "Retrieve and count festival events from a community events page, limiting to 30 events." + ] + }, + "tags": [ + "web-scraping", + "event-analysis", + "data-extraction", + "automation", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/events\",\"dateRangeStart\":\"2024-01-01\",\"dateRangeEnd\":\"2024-12-31\",\"keywords\":[\"conference\",\"technology\"],\"maxEvents\":20}", + "description": "Scrape and analyze up to 20 technology conference events in 2024 from the given event listing URL." + }, + { + "inputJson": "{\"url\":\"https://communitysite.org/festivals\",\"keywords\":[\"music\",\"festival\"],\"maxEvents\":15}", + "description": "Retrieve music festival event data from a community events page, up to 15 events without date filtering." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "web-scraping.analyzeAlert", + "description": "This tool accepts a URL and optional alert identification parameters to scrape web pages or alert dashboards for security alert information. It processes HTML content to extract and analyze alert details such as alert type, severity, timestamp, and description, returning a structured summary of the alert and related metadata.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web page URL containing the security alert information to scrape and analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertSelector", + "type": "string", + "description": "CSS selector or XPath to locate the alert elements within the web page for focused extraction.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxAlerts", + "type": "number", + "description": "Maximum number of alerts to analyze from the page if multiple alerts are present.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeRawHtml", + "type": "boolean", + "description": "Whether to include the raw HTML snippet of each alert in the output for reference.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the page to load and alerts to be found before timing out.", + "required": false, + "defaultValue": "15" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of alerts, each with fields like alertType, severity, timestamp, description, and optionally rawHtml, summarizing the analyzed alerts found on the page." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically extract and interpret security alert information presented on web pages or online dashboards, for example to feed alerts into monitoring workflows or aggregate threat intelligence data. It helps structure unstructured web alert data into actionable alert objects.", + "limitations": "Cannot log into sites requiring complex authentication or scrape alerts behind paywalls without prior session cookies. May not accurately parse all alert formats due to diverse HTML structures or obfuscated content.", + "examples": [ + "Extract security alerts from a public website monitoring cybersecurity threats.", + "Analyze an online dashboard page listing recent intrusion detection alerts.", + "Retrieve summary details of vulnerability alerts published on a vendor status page." + ] + }, + "tags": [ + "web-scraping", + "security", + "alert-analysis", + "data-extraction", + "cybersecurity" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/security-alerts\",\"alertSelector\":\".alert-item\",\"maxAlerts\":3}", + "description": "Extract and analyze up to 3 alerts from a security alerts page using the specified CSS selector." + }, + { + "inputJson": "{\"url\":\"https://securitydashboard.example.org/alerts\",\"includeRawHtml\":true}", + "description": "Scrape alerts from security dashboard page and include raw HTML content snippets in the results for detailed inspection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "web-scraping.analyzeParagraph", + "description": "Analyzes a paragraph of HTML content extracted from a web page to extract key information such as sentiment, keyword density, readability score, and named entities. Takes raw HTML or plain text as input and returns a structured summary of linguistic and content features.", + "category": "web-scraping", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML content of the paragraph to analyze, including any inline tags or plain text.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the paragraph text (e.g., 'en' for English) to optimize analysis models.", + "required": false, + "defaultValue": "en" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the paragraph text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Whether to identify and quantify keyword density within the paragraph.", + "required": false, + "defaultValue": "true" + }, + { + "name": "calculateReadability", + "type": "boolean", + "description": "Whether to calculate readability metrics such as Flesch-Kincaid score.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractNamedEntities", + "type": "boolean", + "description": "Whether to detect and categorize named entities like people, organizations, and places.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the paragraph analysis, including plain text extraction, sentiment score, list of keywords with counts, readability score, and detected named entities categorized by type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract meaningful linguistic and semantic insights from a paragraph of HTML content gathered via web scraping. It helps in sentiment assessment, keyword analysis for SEO, readability checking for content quality, and named entity recognition for understanding key subjects. It is useful for content summarization, data enrichment, or further natural language processing pipelines.", + "limitations": "Does not perform full document or multi-paragraph analysis, only single paragraph content. Accuracy depends on the clarity of input text and language support. It is not designed to replace comprehensive NLP platforms for advanced context understanding.", + "examples": [ + "Analyze sentiment and keywords from a blog post paragraph to tailor marketing strategies.", + "Extract named entities from a product description paragraph for catalog categorization.", + "Calculate readability of a news article paragraph for accessibility compliance." + ] + }, + "tags": [ + "web-scraping", + "analysis", + "natural-language-processing", + "sentiment-analysis", + "keyword-extraction", + "readability", + "named-entity-recognition" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

OpenAI continues to advance AI research, pushing the boundaries of natural language processing with innovations in GPT technology.

\",\"language\":\"en\",\"analyzeSentiment\":true,\"extractKeywords\":true,\"calculateReadability\":true,\"extractNamedEntities\":true}", + "description": "Analyze a paragraph about OpenAI to extract sentiment, keywords, readability score, and named entities." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-scraping.analyzeSentence", + "description": "This tool accepts a single sentence extracted from a webpage and performs linguistic and sentiment analysis. It processes the sentence to identify its grammatical structure, key entities, sentiment polarity, and thematic topics. The output is a structured analysis object summarizing linguistic tags and sentiment scores useful for deeper web content understanding.", + "category": "web-scraping", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The sentence text to analyze, extracted from a webpage content.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') of the input sentence to ensure proper linguistic processing.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeEntities", + "type": "boolean", + "description": "Flag to determine if named entity recognition should be included in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Flag to include sentiment polarity analysis of the sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis object containing parts of speech tags, named entities, sentiment polarity and confidence, and extracted topics from the sentence." + }, + "aiAgent": { + "useCase": "Agents should use this tool when they need to analyze specific sentences scraped from web pages to extract meaningful insights such as sentiment, named entities, and syntactic roles. This is useful for content summarization, opinion mining, and automated content tagging in web scraping workflows.", + "limitations": "This tool analyzes one sentence at a time and is limited to the supported languages. It does not extract information beyond the sentence scope nor handle complex discourse analysis across multiple sentences.", + "examples": [ + "Analyze the sentiment and entities in this sentence from a product review.", + "Identify topics and grammatical structure of a sentence scraped from a news article.", + "Extract named entities and sentiment from a social media post sentence extracted via scraping." + ] + }, + "tags": [ + "web-scraping", + "nlp", + "sentence-analysis", + "sentiment-analysis", + "entity-recognition", + "web-content", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"The new smartphone release has garnered mostly positive reviews from tech critics.\",\"language\":\"en\",\"includeEntities\":true,\"includeSentiment\":true}", + "description": "Analyzing a product announcement sentence for sentiment and named entities." + }, + { + "inputJson": "{\"sentence\":\"La pluie a causé des retards sur la ligne de train ce matin.\",\"language\":\"fr\",\"includeEntities\":true,\"includeSentiment\":true}", + "description": "Analyzing a French sentence from a weather report for named entities and sentiment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "web-scraping.analyzeLead", + "description": "Analyzes lead information from a given webpage URL, extracting key business contact data such as company name, contact person, email, phone, and social media profiles. The tool processes the webpage content through structured data parsing and heuristic methods, returning a standardized lead profile object.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the webpage containing the lead information to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectorScope", + "type": "string", + "description": "CSS selector to narrow down the part of the page to scan for lead info; if empty, scans the entire page.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSocialProfiles", + "type": "boolean", + "description": "Whether to attempt extraction of social media profile URLs (LinkedIn, Twitter, etc.) if available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum seconds to wait for page loading and analysis before timing out.", + "required": false, + "defaultValue": "15" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted lead data: company name, contact name, emails, phone numbers, social profiles, and source URL." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to automatically gather structured contact and business lead data from a company webpage or public profile to facilitate lead generation, CRM population, or market research.", + "limitations": "Cannot guarantee 100% accurate extraction due to webpage layout variation or anti-scraping measures. Does not perform lead qualification or enrichment beyond publicly available webpage data.", + "examples": [ + "Extract lead data from 'https://example.com/contact' page", + "Analyze the lead info on a prospect company's about page", + "Get business contact details from a LinkedIn company profile page" + ] + }, + "tags": [ + "web scraping", + "lead extraction", + "business contact", + "data extraction", + "CRM integration" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/contact\",\"selectorScope\":\"#lead-info\",\"includeSocialProfiles\":true,\"timeoutSeconds\":10}", + "description": "Extract lead data from a contact page scoped to #lead-info section including social profiles" + }, + { + "inputJson": "{\"url\":\"https://startup.example.com/about\",\"selectorScope\":\"\",\"includeSocialProfiles\":false,\"timeoutSeconds\":20}", + "description": "Analyze entire about page of a startup for business contact info without social profiles" + }, + { + "inputJson": "{\"url\":\"https://linkedin.com/company/examplecorp\",\"selectorScope\":\".org-top-card\",\"includeSocialProfiles\":true,\"timeoutSeconds\":15}", + "description": "Extract lead information from LinkedIn company profile section with social profile links" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "web-scraping.analyzeOrder", + "description": "This tool accepts a URL of a web page containing an e-commerce order summary or confirmation. It scrapes the page to extract detailed order information such as product names, quantities, prices, order totals, shipping details, and order status. The output is a structured JSON object summarizing the full order data for downstream analysis or record-keeping.", + "category": "web-scraping", + "parameters": [ + { + "name": "orderPageUrl", + "type": "string", + "description": "The URL of the web page containing the order details to extract. Must be publicly accessible or require provided credentials.", + "required": true, + "defaultValue": "" + }, + { + "name": "authCookies", + "type": "object", + "description": "Optional authentication cookies or headers if page access requires login, in key-value pairs.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxProducts", + "type": "number", + "description": "Optional limit on number of products to extract from the order to avoid overload, default is no limit.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeShippingDetails", + "type": "boolean", + "description": "Flag to specify whether to also extract shipping and delivery information if present. Default is true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured order data including an array of products (with name, sku, quantity, unit price), order total amount, currency, shipping address, payment method summary, and order status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve and analyze order details from e-commerce confirmation or summary web pages, especially when APIs are unavailable. It helps automate the extraction of structured order data from web page content for inventory, billing reconciliation, or customer support use cases.", + "limitations": "This tool cannot access dynamically loaded content behind JavaScript that requires running browser scripts unless environment supports that. It also cannot bypass robust anti-scraping protections or CAPTCHA. It requires the page URL to be accessible with provided authentication if needed.", + "examples": [ + "Extract the full order details from the order confirmation page at 'https://shop.example.com/orders/12345'", + "Retrieve product list and prices from an order summary page URL for inventory reconciliation", + "Get shipping address and order status from a user's order page URL requiring login cookies" + ] + }, + "tags": [ + "web-scraping", + "order-analysis", + "ecommerce", + "data-extraction", + "automation", + "business" + ], + "examples": [ + { + "inputJson": "{\"orderPageUrl\":\"https://www.examplestore.com/order/confirm?id=abc123\",\"includeShippingDetails\":true}", + "description": "Extract all order data including shipping details from the given e-commerce order confirmation page URL." + }, + { + "inputJson": "{\"orderPageUrl\":\"https://www.shop.com/orders/98765\",\"authCookies\":{\"sessionid\":\"abcxyz\"},\"maxProducts\":5}", + "description": "Extract up to 5 products from a logged-in user order page providing session cookies for access." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Order", + "context": null + } + }, + { + "name": "web-scraping.analyzeCSV", + "description": "This tool accepts CSV data extracted from websites and performs comprehensive analysis including data validation, pattern detection, and summary statistics generation. It outputs a structured report highlighting data quality, frequent values, missing data, and anomalies to assist in understanding and utilizing the scraped CSV data effectively.", + "category": "web-scraping", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "Raw CSV data as a string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used as delimiter in the CSV data (e.g., comma, semicolon).", + "required": false, + "defaultValue": "," + }, + { + "name": "analyzeMissingData", + "type": "boolean", + "description": "Whether to detect and report columns with missing or null values.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectDataTypes", + "type": "boolean", + "description": "Enable detection of data types for each column (e.g., integer, float, date, string).", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTopValues", + "type": "number", + "description": "Number of top frequent values to report per column for pattern recognition.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSummaryStatistics", + "type": "boolean", + "description": "Whether to generate summary statistics such as mean, median, min, max for numeric columns.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON report including column data types, missing value counts, frequency distributions, summary statistics, and anomaly detection results." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw CSV data scraped from websites and need to quickly understand its structure, quality, and content patterns without manual inspection. It's ideal for preprocessing scraped tabular data before ingestion into databases or analytics pipelines.", + "limitations": "This tool does not fetch CSV data from the web itself; it only analyzes provided CSV content. It may not handle extremely large CSV files efficiently and is not designed for full data cleaning or transformation tasks.", + "examples": [ + "Analyze scraped CSV sales data to identify columns with missing data and understand common product categories.", + "Detect data types and outliers in scraped CSV financial reports for initial quality assessment.", + "Generate summary statistics and frequent value distributions from scraped CSV contact lists for validation and insights." + ] + }, + "tags": [ + "web scraping", + "CSV", + "data analysis", + "data validation", + "pattern detection", + "quality assessment" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"Name,Age,Email\\nJohn Doe,29,john@example.com\\nJane Smith,,jane@example.com\\nAlice Johnson,35,alice@example.com\",\"delimiter\":\",\",\"analyzeMissingData\":true,\"detectDataTypes\":true,\"maxTopValues\":3,\"includeSummaryStatistics\":true}", + "description": "Analyze a small scraped CSV containing personal data with some missing ages to detect missing data and summarize numeric columns." + }, + { + "inputJson": "{\"csvData\":\"Product,Category,Price\\nLaptop,Electronics,999.99\\nPhone,Electronics,699.99\\nCoffee Maker,Home Appliances,49.99\\nLaptop,Electronics,1050.00\",\"delimiter\":\",\",\"analyzeMissingData\":false,\"detectDataTypes\":true,\"maxTopValues\":2,\"includeSummaryStatistics\":true}", + "description": "Analyze product CSV data to determine data types, frequent categories, and price statistics without checking for missing data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "web-scraping.renderDocument", + "description": "Renders a fully loaded web page document from a given URL or raw HTML content, optionally simulating user agent settings and viewport dimensions. It processes the page by executing JavaScript and returns the final rendered HTML along with metadata such as resources loaded and HTTP status.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the web page to load and render. Required if rawHtml is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawHtml", + "type": "string", + "description": "Raw HTML content string to render instead of fetching from a URL. If set, url is ignored.", + "required": false, + "defaultValue": "" + }, + { + "name": "userAgent", + "type": "string", + "description": "Optional user agent string to simulate during rendering (e.g., to mimic a mobile browser).", + "required": false, + "defaultValue": "Mozilla/5.0 (compatible; TPMJSbot/1.0)" + }, + { + "name": "viewportWidth", + "type": "number", + "description": "Viewport width in pixels to emulate during rendering. Influences responsive rendering.", + "required": false, + "defaultValue": "1280" + }, + { + "name": "viewportHeight", + "type": "number", + "description": "Viewport height in pixels to emulate during rendering.", + "required": false, + "defaultValue": "800" + }, + { + "name": "timeoutMs", + "type": "number", + "description": "Maximum time in milliseconds to wait for page load and script execution before returning.", + "required": false, + "defaultValue": "15000" + }, + { + "name": "waitUntil", + "type": "string", + "description": "Load event to wait for before considering rendering complete. Values: 'load', 'domcontentloaded', 'networkidle'.", + "required": false, + "defaultValue": "networkidle" + }, + { + "name": "injectScripts", + "type": "array", + "description": "Optional list of JavaScript code snippets to inject and execute before page load completes (e.g., to modify DOM).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "The rendered document result including final HTML content, HTTP status code, list of loaded resources, and metadata such as page title and load timing." + }, + "aiAgent": { + "useCase": "Use this tool when you need a fully rendered HTML document that includes dynamic content generated by JavaScript, such as SPAs or pages with AJAX-loaded data. It enables extraction of data not available in initial HTML responses by simulating a browser environment. Useful for dynamic web scraping, content archiving, or SEO analysis.", + "limitations": "This tool cannot interact with web pages beyond initial rendering and script execution; it does not support manual user input, complex user interactions, or real-time updates post-load. Pages heavily relying on user authentication or CAPTCHAs may not render as expected.", + "examples": [ + "Render the complete HTML of https://example.com with default viewport and user agent.", + "Render provided raw HTML content simulating a mobile browser viewport of 375x667 and inject custom JavaScript to remove ads before rendering.", + "Fetch and render a news article page waiting for 'domcontentloaded' event instead of 'networkidle' to speed up processing." + ] + }, + "tags": [ + "web scraping", + "rendering", + "dynamic content", + "javascript", + "headless browser", + "html extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://news.example.com/article/12345\",\"userAgent\":\"Mozilla/5.0 (Windows NT 10.0; Win64; x64)\",\"viewportWidth\":1366,\"viewportHeight\":768}", + "description": "Render a news article page from a URL with desktop viewport and default user agent." + }, + { + "inputJson": "{\"rawHtml\":\"Test\",\"viewportWidth\":375,\"viewportHeight\":667,\"userAgent\":\"Mozilla/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X)\"}", + "description": "Render raw HTML simulating an iPhone viewport to obtain final HTML including JavaScript output." + }, + { + "inputJson": "{\"url\":\"https://dynamic.example.com/app\",\"timeoutMs\":20000,\"waitUntil\":\"domcontentloaded\",\"injectScripts\":[\"document.body.style.backgroundColor='lightgrey';\"]}", + "description": "Render a dynamic SPA page with extended timeout, custom load event, and injected JavaScript to alter the page style." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "web-scraping.downloadReport", + "description": "Downloads report documents from specified URLs by fetching the web page or direct document link, optionally handling authentication and selecting output format. It processes input URLs, manages HTTP requests, and returns the report content with metadata for further use or storage.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web address (URL) of the report to download. Supports direct links to reports or web pages containing the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Optional authentication token or API key used for accessing secured reports requiring authorization.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the downloaded report output, e.g., 'pdf', 'html', 'json'. If unsupported, raw content will be returned.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the report to download before timing out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "followRedirects", + "type": "boolean", + "description": "Whether to follow HTTP redirects if the initial URL points to a redirect location.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as download timestamp, content type, and URL in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customHeaders", + "type": "object", + "description": "Optional HTTP headers to include in the request to customize or mimic browser behavior.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded report content as a base64 string or raw text depending on format, along with metadata such as content type, download URL, size in bytes, and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve report documents or data exports from websites — for example, downloading PDFs, HTML pages, or other report files available on public or authenticated URLs. It supports additional options to handle authentication, redirects, and format selection for flexible retrieval.", + "limitations": "Cannot handle JavaScript-rendered dynamic content that requires browser automation; it fetches content via HTTP requests only. Does not parse or extract specific data within reports, only downloads the raw document.", + "examples": [ + "Download a public PDF report from a government website URL.", + "Fetch a JSON report from an authenticated API endpoint using a token.", + "Retrieve HTML report page content, including HTTP headers, without further parsing." + ] + }, + "tags": [ + "web-scraping", + "download", + "report", + "document", + "http", + "automation", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/reports/latest-report.pdf\",\"outputFormat\":\"pdf\"}", + "description": "Download a PDF report from a public URL." + }, + { + "inputJson": "{\"url\":\"https://secure.example.com/api/report\",\"authenticationToken\":\"abc123token\",\"outputFormat\":\"json\"}", + "description": "Download a JSON report from an authenticated API endpoint using a token." + }, + { + "inputJson": "{\"url\":\"https://example.com/report.html\",\"outputFormat\":\"html\",\"includeMetadata\":true}", + "description": "Download an HTML report page with metadata included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "web-scraping.uploadReport", + "description": "This tool accepts a URL and metadata to upload a generated web scraping report document to a remote storage service. It processes the input report data (in JSON or CSV format), validates the content, and uploads the document with appropriate metadata tags, returning a confirmation with the storage location and upload status.", + "category": "web-scraping", + "parameters": [ + { + "name": "reportUrl", + "type": "string", + "description": "The URL of the webpage from which the report was extracted or is related to.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportData", + "type": "string", + "description": "The content of the report to be uploaded, in JSON or CSV format.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the report data, e.g., 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "title", + "type": "string", + "description": "Title of the report to be stored with the document.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of metadata tags to categorize the report (e.g., ['sales','Q1']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "destination", + "type": "string", + "description": "Target remote storage location or bucket name for uploading the report.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload confirmation status, the storage location URL, and any error messages if occurred." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to store processed web scraping reports, including raw or structured data, to a remote storage service with metadata for future access, audit, or sharing.", + "limitations": "This tool does not perform the actual web scraping or report content generation; it handles only the upload and metadata association of the report document.", + "examples": [ + "Upload a sales report JSON file scraped from a competitor website to company cloud storage.", + "Store an extracted product data CSV report to a designated analytics bucket with tags for categorization.", + "Save a quarterly traffic analysis JSON report with relevant metadata for internal reporting." + ] + }, + "tags": [ + "web-scraping", + "upload", + "report", + "document-storage", + "data-management" + ], + "examples": [ + { + "inputJson": "{\"reportUrl\":\"https://example.com/data\",\"reportData\":\"{\\\"sales\\\":1000,\\\"month\\\":\\\"January\\\"}\",\"reportFormat\":\"json\",\"title\":\"January Sales Report\",\"tags\":[\"sales\",\"january\",\"2024\"],\"destination\":\"company-reports-bucket\"}", + "description": "Upload a JSON sales report for January scraped from example.com to the company reports bucket with relevant tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "web-scraping.sendMessage", + "description": "This tool sends a text message through a web interface of a messaging platform by automating web scraping and form submission. It accepts parameters specifying the website URL, the recipient identifier, and the message body. It processes these inputs by programmatically interacting with the web page elements to deliver the message. The output confirms success or failure of the send operation along with relevant status messages.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the messaging web interface where the message should be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientSelector", + "type": "string", + "description": "CSS selector or identifier to locate the recipient input field or chat window on the webpage.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageSelector", + "type": "string", + "description": "CSS selector or identifier to locate the message input textarea or field on the webpage.", + "required": true, + "defaultValue": "" + }, + { + "name": "sendButtonSelector", + "type": "string", + "description": "CSS selector or identifier to locate the send button element on the webpage.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The text message content to be sent to the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Identifier (e.g., username, phone number) used to select the recipient chat or contact on the webpage.", + "required": true, + "defaultValue": "" + }, + { + "name": "waitTimeout", + "type": "number", + "description": "Maximum wait time in milliseconds for elements to become available before aborting.", + "required": false, + "defaultValue": "10000" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status (boolean) and a message providing details or error explanations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate sending text messages via web interfaces of messaging platforms that lack official APIs or when direct API access is unavailable. It is suitable for scenarios requiring web automation to interact with chat windows and submit messages programmatically.", + "limitations": "The tool cannot bypass login authentication or complex CAPTCHA protections. It also depends on stable and known page structure; changes in the web page DOM may cause the tool to fail. It does not support multimedia messages, only plain text.", + "examples": [ + "Send a greeting message to a user in a web-based chat app that has no API.", + "Automate sending status updates to contacts via a web portal by filling chat input automatically.", + "Test web chat UI by programmatically sending test messages during development." + ] + }, + "tags": [ + "web automation", + "messaging", + "scraping", + "chat", + "automation", + "message sending" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://examplechat.com\",\"recipientSelector\":\".contact-list .contact[data-id='user123']\",\"messageSelector\":\"#chat-input\",\"sendButtonSelector\":\"#send-btn\",\"message\":\"Hello! This is a test message.\",\"recipientId\":\"user123\"}", + "description": "Send a simple text message to user123 on examplechat.com by selecting the contact and sending a message." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "web-scraping.renderFile", + "description": "This tool accepts a URL of a web page or media file and renders it into a downloadable file format. It processes web content including HTML pages, images, PDFs, or videos and converts or downloads them as a file, such as PDF snapshots for pages, or original media files for images/videos, enabling offline analysis or archiving.", + "category": "web-scraping", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The web URL of the page or media file that needs to be rendered or downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "renderFormat", + "type": "string", + "description": "Desired output file format (e.g., 'pdf' for webpage snapshots, 'png' for images, or preserve original for media files).", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeResources", + "type": "boolean", + "description": "Whether to include external resources like CSS and images when rendering a webpage into a PDF. Ignored for direct media downloads.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the page or media to load before rendering or download is aborted.", + "required": false, + "defaultValue": "30" + }, + { + "name": "customHeaders", + "type": "object", + "description": "Optional HTTP headers key-value pairs to include in the request (e.g., for authentication or user-agent).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object including the filename, MIME type, and binary content encoded as a base64 string of the rendered file." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to obtain a local or offline copy of web content, such as creating PDF snapshots of dynamic webpages, downloading image or video files for analysis, or archiving web materials in a file format suitable for further processing.", + "limitations": "This tool cannot render interactive or streaming content perfectly (e.g., live video streams or dynamic scripted web apps). It may fail or produce incomplete results on heavily protected or CAPTCHA-guarded pages.", + "examples": [ + "Download and render a webpage as a PDF for offline reading.", + "Retrieve an image file from a URL and save it preserving original format.", + "Get a PDF snapshot of a webpage while including all styling and images." + ] + }, + "tags": [ + "web", + "scraping", + "rendering", + "file-download", + "PDF", + "image-download", + "media" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/article\",\"renderFormat\":\"pdf\",\"includeResources\":true}", + "description": "Render a web article page into a PDF including all images and CSS." + }, + { + "inputJson": "{\"sourceUrl\":\"https://example.com/image.jpg\"}", + "description": "Download an image file from the URL, preserving the original JPEG format." + }, + { + "inputJson": "{\"sourceUrl\":\"https://example.com/videoclip.mp4\",\"renderFormat\":\"mp4\"}", + "description": "Download a video file from the URL preserving original format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "web-scraping.formatFunction", + "description": "Formats and beautifies a JavaScript or TypeScript function code snippet extracted from web scraping activities. Accepts raw function code as a string input and applies standard code formatting rules (indentation, spacing, line breaks) based on given style options. Returns the cleaned and well-formatted function as a string, ready for further analysis or display.", + "category": "web-scraping", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "Raw JavaScript or TypeScript function code to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the output code.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length before wrapping code lines. Set to 0 for no limit.", + "required": false, + "defaultValue": "80" + }, + { + "name": "insertFinalNewline", + "type": "boolean", + "description": "Whether to ensure the output ends with a newline character.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code as a string under 'formattedCode' property." + }, + "aiAgent": { + "useCase": "Use this tool when a raw function code snippet is retrieved from web pages and needs to be normalized for readability, analysis, or storage. Especially helpful for cleaning up minified, poorly-indented, or compacted functions scraped from web sources to a standardized, human-friendly format.", + "limitations": "Does not parse or validate code semantics or fix syntax errors. It only formats given code strings, so input must be a valid function code fragment. Does not execute or transform code functionality.", + "examples": [ + "Format a raw JavaScript function from scraped HTML content to improve readability.", + "Reformat a TypeScript method extracted from web documentation to enforce consistent coding style.", + "Clean and prepare scraped code snippets before applying further static analysis modules." + ] + }, + "tags": [ + "web-scraping", + "formatting", + "code-formatter", + "javascript", + "typescript", + "function", + "beautify" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"function test(){console.log('hello');}\",\"indentSize\":4,\"useTabs\":false,\"maxLineLength\":80,\"insertFinalNewline\":true}", + "description": "Format a simple JavaScript function with 4 spaces indentation." + }, + { + "inputJson": "{\"functionCode\":\"const add=(a,b)=>{return a+b;};\",\"indentSize\":2,\"useTabs\":true,\"maxLineLength\":0,\"insertFinalNewline\":false}", + "description": "Format an arrow function using tabs for indentation and no max line length." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "web-scraping.draftDocument", + "description": "This tool accepts a target website URL and extraction rules, scrapes relevant webpage content, drafts a structured document summarizing key extracted data, and returns the drafted document in Markdown format. It processes HTML content according to user-specified CSS selectors or XPath expressions to create human-readable drafts.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractionRules", + "type": "object", + "description": "An object specifying fields and corresponding CSS selectors or XPath expressions to target data on the webpage.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Optional title to be used as the document header. If empty, the page title is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxItemsPerField", + "type": "number", + "description": "Maximum number of items to extract per field before truncation.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include page metadata like URL and scrape date in the drafted document.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted document in Markdown format, including extracted data organized by fields and optional metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the creation of structured summaries or reports by extracting key information from websites. Ideal for gathering product details, news articles, or data for documentation without manual copy-pasting. The tool abstracts HTML into a readable document draft.", + "limitations": "Cannot execute JavaScript-heavy page rendering; relies on server-side rendered HTML or pre-fetched content. May not accurately extract content if extraction rules are imprecise or website structure changes.", + "examples": [ + "Create a summary document of main product features from an e-commerce page given CSS selectors for product titles and descriptions.", + "Generate a Markdown report of recent news headlines and their summaries from a news website by specifying XPath for headlines and snippets.", + "Draft a document summarizing author and publication dates from a blog homepage using provided selectors." + ] + }, + "tags": [ + "web-scraping", + "document-generation", + "html-extraction", + "automation", + "data-summarization", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/products\",\"extractionRules\":{\"productName\":\".product-title\",\"productDescription\":\".desc\"},\"documentTitle\":\"Product Summary\",\"maxItemsPerField\":5,\"includeMetadata\":true}", + "description": "Scrapes product titles and descriptions from example.com and drafts a Markdown document summarizing up to 5 products with metadata included." + }, + { + "inputJson": "{\"url\":\"https://news.example.org\",\"extractionRules\":{\"headline\":\"//h2[@class='headline']\",\"summary\":\"//p[@class='summary']\"},\"documentTitle\":\"Latest News\",\"maxItemsPerField\":10,\"includeMetadata\":false}", + "description": "Extracts headlines and summaries from a news site using XPath, drafts a document titled 'Latest News' without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "web-scraping.formatReport", + "description": "Formats raw scraped data from websites into a structured, human-readable report. Accepts unstructured or semi-structured scraped content and applies templates, styling, and summarization to produce JSON or HTML reports optimized for review or sharing.", + "category": "web-scraping", + "parameters": [ + { + "name": "rawData", + "type": "string", + "description": "Raw scraped content from the website that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "Desired output format of the report, e.g., 'json' or 'html'.", + "required": true, + "defaultValue": "html" + }, + { + "name": "template", + "type": "string", + "description": "Optional template identifier or markup to define report layout and style.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a brief summary section generated from the raw data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "List of keywords to highlight within the report content for emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxContentLength", + "type": "number", + "description": "Maximum length (in characters) of the content section to include before truncation.", + "required": false, + "defaultValue": "5000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report in the requested format, along with metadata like word count and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when raw web scraped data needs to be organized into polished, readable reports for analysis or presentation. Ideal for summarizing data dumps or generating shareable HTML/JSON reports from scraped content.", + "limitations": "Does not scrape data itself; requires pre-extracted raw content. Formatting depends on available templates; complex layouts require custom templates outside scope. Cannot infer missing data or validate scraped content accuracy.", + "examples": [ + "Format raw HTML scraped from product reviews into an HTML summary page highlighting key terms.", + "Generate a JSON report from raw scraped text for automated downstream processing.", + "Create a concise summary report with keyword emphasis from a large scraped article body." + ] + }, + "tags": [ + "web-scraping", + "report-formatting", + "data-processing", + "html", + "json", + "summary", + "templates" + ], + "examples": [ + { + "inputJson": "{\"rawData\":\"

Product Reviews

Great product, loved the usability.

Could improve battery life.

\",\"formatType\":\"html\",\"template\":\"summaryTemplate1\",\"includeSummary\":true,\"highlightKeywords\":[\"usability\",\"battery\"],\"maxContentLength\":1000}", + "description": "Format raw HTML scraped product reviews into a readable HTML report that highlights specified keywords." + }, + { + "inputJson": "{\"rawData\":\"{\"reviews\":[{\"text\":\"Excellent build quality.\"},{\"text\":\"Battery drains fast.\"}]}\",\"formatType\":\"json\",\"includeSummary\":false}", + "description": "Convert raw scraped JSON review data into a well-structured JSON report without summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "web-scraping.draftEmail", + "description": "Generates a draft email text based on extracted web data. Accepts a URL and optional selectors or keywords to scrape relevant content, then creates an email body summarizing or highlighting that information. Returns a structured draft email with subject, recipients, and body text ready for review or sending.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web page URL from which to scrape data for the email content.", + "required": true, + "defaultValue": "" + }, + { + "name": "cssSelectors", + "type": "array", + "description": "Optional list of CSS selectors to identify which page elements to scrape for assembling the email content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeKeywords", + "type": "array", + "description": "Optional list of keywords to filter or emphasize specific extracted content for the email draft.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "recipientEmails", + "type": "array", + "description": "List of recipient email addresses to include in the draft email.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "emailSubject", + "type": "string", + "description": "Optional subject line for the draft email. If omitted, a subject is auto-generated based on content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the email (e.g., formal, casual, urgent). Defaults to formal.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the draft email fields: subject, recipients, and body text." + }, + "aiAgent": { + "useCase": "Use when needing to quickly compose a customized email summarizing or referencing web content. Particularly useful for preparing outreach, follow-up, or informational emails derived from information scraped from a web page. Helps automate data extraction, content selection, and email wording.", + "limitations": "Cannot send emails or authenticate with email clients; it only drafts email text. Accuracy depends on structure and accessibility of web page data. Complex pages or dynamic content may not be fully supported.", + "examples": [ + "Draft an email summarizing latest blog post content from example.com/news for my colleagues.", + "Create a formal email to send updates pulled from a product page, highlighting key features.", + "Generate a casual email for outreach based on contact information and company description found on a partner's website." + ] + }, + "tags": [ + "web-scraping", + "email", + "automation", + "communication", + "data-extraction", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/news/latest\",\"cssSelectors\":[\".article-title\", \".article-summary\"],\"includeKeywords\":[\"update\",\"important\"],\"recipientEmails\":[\"team@example.com\"],\"emailSubject\":\"Latest News Update\",\"tone\":\"formal\"}", + "description": "Draft a formal email summarizing the latest news article for team distribution." + }, + { + "inputJson": "{\"url\":\"https://shop.example.com/product/12345\",\"cssSelectors\":[\".product-name\", \".price\", \".features-list\"],\"includeKeywords\":[],\"recipientEmails\":[\"partner@example.com\"],\"emailSubject\":\"\",\"tone\":\"casual\"}", + "description": "Generate a casual email highlighting product details to send to a business partner, subject auto-generated." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "web-scraping.buildTest", + "description": "This tool accepts a web scraping target configuration including a URL and selectors, then generates a structured automated test script verifying the scraper's ability to extract the expected data elements. Input includes target URL, CSS or XPath selectors, and expected sample values. Output is a test script in JavaScript (e.g., using Puppeteer or Playwright) that can be run to validate the scraper's correctness.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the web page to scrape and test.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectors", + "type": "object", + "description": "An object mapping data field names to CSS or XPath selectors used to extract data from the page.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedValues", + "type": "object", + "description": "An object mapping data field names to expected sample values to verify correctness of extraction.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The testing framework to use for generated test script, e.g., 'puppeteer' or 'playwright'.", + "required": false, + "defaultValue": "puppeteer" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds for the test page to load and selectors to appear.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeScreenshot", + "type": "boolean", + "description": "Whether to include a screenshot capture step in the generated test for debugging.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a string field 'testScript' with the full generated test code ready to be saved and executed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to ensure your web scraping configuration is correct by automatically generating validation tests. It helps verify that selectors properly extract intended data and that changes on the target site are detected via test failures.", + "limitations": "Does not actually execute or run the test scripts, only generates them. Cannot handle complex dynamic scraping scenarios requiring multi-step interactions beyond page load and selector capture. Generated code needs environment setup for chosen test framework.", + "examples": [ + "Generate a Puppeteer test to verify selectors extracting product name and price from example.com/product.", + "Create a Playwright test script verifying social media profile information selectors on a given URL.", + "Build a test script including screenshots to debug extraction issues for a news article page." + ] + }, + "tags": [ + "web scraping", + "test automation", + "data extraction", + "validation", + "javascript", + "puppeteer", + "playwright" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com/product\",\"selectors\":{\"productName\":\"#product-title\",\"price\":\".price-value\"},\"expectedValues\":{\"productName\":\"Example Product\",\"price\":\"$19.99\"},\"testFramework\":\"puppeteer\",\"timeoutSeconds\":20,\"includeScreenshot\":true}", + "description": "Generate a Puppeteer test script that verifies the productName and price selectors extract the expected values from the product page, including a screenshot for debugging." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "web-scraping.buildServer", + "description": "This tool provisions and configures a scalable web scraping server infrastructure based on input parameters such as desired operating system, server specifications (CPU, RAM, storage), and optional software setup (e.g., headless browsers, proxy configuration). It outputs a summary detailing the server instance information, access credentials, and installed scraping environment components.", + "category": "web-scraping", + "parameters": [ + { + "name": "operatingSystem", + "type": "string", + "description": "The OS to install on the server (e.g., Ubuntu, Debian, CentOS)", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores allocated for the server", + "required": true, + "defaultValue": "2" + }, + { + "name": "ramGb", + "type": "number", + "description": "Amount of RAM in gigabytes", + "required": true, + "defaultValue": "4" + }, + { + "name": "storageGb", + "type": "number", + "description": "Disk storage size in gigabytes", + "required": true, + "defaultValue": "50" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region for server deployment (e.g., us-east-1)", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "installHeadlessBrowser", + "type": "boolean", + "description": "Whether to install headless browser software for scraping", + "required": false, + "defaultValue": "true" + }, + { + "name": "configureProxy", + "type": "boolean", + "description": "Whether to set up proxy services on the server", + "required": false, + "defaultValue": "false" + }, + { + "name": "sshKey", + "type": "string", + "description": "Public SSH key to allow secure server access", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing server instance ID, IP address, OS, installed software list, and SSH access info." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically set up a web scraping server tailored to specific resource and environment requirements, ensuring quick deployment and configuration in a cloud environment or dedicated infrastructure.", + "limitations": "This tool does not execute scraping tasks; it only sets up the server environment. Network setup beyond basic proxy and SSH is not included.", + "examples": [ + "Create a Ubuntu 20.04 server with 4 CPU cores and 8GB RAM including headless browser setup.", + "Deploy a minimal Debian server with 2 cores and 4GB RAM in the eu-west-2 region without proxies.", + "Set up a CentOS server with 8 cores, 16GB RAM, and proxy configured for advanced scraping tasks." + ] + }, + "tags": [ + "web-scraping", + "infrastructure", + "server-setup", + "automation", + "headless-browser", + "proxy", + "cloud" + ], + "examples": [ + { + "inputJson": "{\"operatingSystem\":\"Ubuntu 20.04\",\"cpuCores\":4,\"ramGb\":8,\"storageGb\":100,\"region\":\"us-west-2\",\"installHeadlessBrowser\":true,\"configureProxy\":true,\"sshKey\":\"ssh-rsa AAAAB3Nza...\"}", + "description": "Provision a powerful Ubuntu server with headless browser and proxy enabled in US West region." + }, + { + "inputJson": "{\"operatingSystem\":\"Debian\",\"cpuCores\":2,\"ramGb\":4,\"storageGb\":50,\"region\":\"eu-central-1\",\"installHeadlessBrowser\":false,\"configureProxy\":false,\"sshKey\":\"ssh-rsa AAAAB3Nza...\"}", + "description": "Create a basic Debian server with minimal resources and no proxy or browser installed." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "web-scraping.buildCommit", + "description": "This tool accepts a repository URL and a commit identifier (hash, tag, or branch name), scrapes the repository hosting service's web interface, and extracts detailed commit metadata including author, date, message, changed files, and diffs. It outputs a structured Commit object summarizing the commit data.", + "category": "web-scraping", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the repository web page to scrape (e.g., GitHub, GitLab)", + "required": true, + "defaultValue": "" + }, + { + "name": "commitId", + "type": "string", + "description": "Commit identifier such as SHA hash, tag, or branch name to specify which commit to build data for", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDiff", + "type": "boolean", + "description": "Flag to include full diff of changes in the commit in the output", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum seconds to wait for web requests before timing out", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Structured commit information including author name, email, commit date, commit message, list of changed files, and optionally the diff content for each file changed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically gather commit details from a repository's web interface without direct API access or for websites that lack an official API. Ideal for extracting commit metadata for analysis, auditing, or visualization by scraping the public web pages showing commit info.", + "limitations": "Cannot access private repositories requiring authentication. Output depends on the repository hosting site's HTML structure; changes in web design may break scraping. Limited to what is publicly visible on the repository web UI.", + "examples": [ + "Get commit details including file changes for a specific SHA on GitHub repo URL.", + "Extract commit metadata for the latest commit on a git branch via GitLab web interface.", + "Obtain commit message and author info without API access by scraping Bitbucket commit page." + ] + }, + "tags": [ + "web scraping", + "commit data", + "repository", + "version control", + "metadata extraction", + "git", + "code analysis" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/octocat/Hello-World\",\"commitId\":\"7fd1a60b01f91b314f59951e83fef4a3d05f23e3\",\"includeDiff\":false}", + "description": "Fetch basic commit metadata for a known commit SHA on a GitHub repository." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/gitlab-org/gitlab\",\"commitId\":\"master\",\"includeDiff\":false}", + "description": "Retrieve commit info for the latest commit on the master branch from GitLab repository." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://bitbucket.org/atlassian/python-bitbucket\",\"commitId\":\"a1b2c3d4\",\"includeDiff\":true}", + "description": "Extract detailed commit data including diffs from Bitbucket commit page using a commit hash." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "web-scraping.buildAPI", + "description": "This tool accepts a target website URL and scraping specifications to automatically generate a RESTful API that exposes the extracted data. It processes input parameters defining what content to scrape and how, builds an API with endpoints to query that data, and outputs API specification details including endpoint URLs, request methods, and response schemas.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The website URL from which to scrape data to build the API.", + "required": true, + "defaultValue": "" + }, + { + "name": "scrapingRules", + "type": "object", + "description": "Definitions of selectors or patterns indicating which elements to extract and how to structure the data.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiBasePath", + "type": "string", + "description": "Base path for the generated API endpoints (e.g., /api/v1).", + "required": false, + "defaultValue": "/api/v1" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional authentication setup for the API, such as token-based or API key.", + "required": false, + "defaultValue": "" + }, + { + "name": "rateLimitPerMinute", + "type": "number", + "description": "Optional rate limit on API requests per minute to prevent overload.", + "required": false, + "defaultValue": "60" + }, + { + "name": "cacheDurationSeconds", + "type": "number", + "description": "Duration in seconds to cache scraped data to reduce repeated scraping for API responses.", + "required": false, + "defaultValue": "300" + }, + { + "name": "enablePagination", + "type": "boolean", + "description": "Whether to enable pagination support in API endpoints if multiple items are scraped.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A detailed API specification object including base URL, endpoint definitions, supported HTTP methods, request/response schemas, and usage instructions." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to convert unstructured or semi-structured web data into a consumable API format so applications can query the data programmatically without custom scraping logic. This is useful for quickly building APIs over websites that lack data APIs.", + "limitations": "Cannot scrape websites that block automated scraping, require complex client-side rendering or authentication beyond provided methods. The API performance depends on scraping speed and website stability. It does not host the API but outputs specifications and example code.", + "examples": [ + "Generate an API for product listings on example.com with selectors for name, price, and availability.", + "Create an API for blog posts on a news website, supporting pagination and caching.", + "Build a simple API exposing event data from an event listing site with token-based API key authentication." + ] + }, + "tags": [ + "web-scraping", + "API-generation", + "automation", + "data-extraction", + "REST", + "scraping", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com/products\",\"scrapingRules\":{\"itemsSelector\":\".product-item\",\"fields\":{\"title\":\".product-title\",\"price\":\".product-price\"}},\"apiBasePath\":\"/api/products\",\"rateLimitPerMinute\":100}", + "description": "Build an API exposing product title and price data scraped from example.com/products with a rate limit of 100 requests per minute." + }, + { + "inputJson": "{\"targetUrl\":\"https://news.example.org/articles\",\"scrapingRules\":{\"itemsSelector\":\".article\",\"fields\":{\"headline\":\"h2\",\"author\":\".author-name\",\"date\":\".pub-date\"}},\"enablePagination\":true,\"cacheDurationSeconds\":600}", + "description": "Create an API for news articles with pagination and a caching duration of 10 minutes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "web-scraping.generateSentence", + "description": "This tool accepts a URL and optional CSS selector or XPath to extract text content from a webpage. It processes the extracted text by selecting or constructing a representative sentence from the targeted content. The output is a coherent sentence string summarizing or reflecting the scraped data segment.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the web page to scrape content from. Must be a valid HTTP or HTTPS address.", + "required": true, + "defaultValue": "" + }, + { + "name": "selector", + "type": "string", + "description": "A CSS selector or XPath expression specifying the target element(s) from which to extract text. If empty, entire page text is considered.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSentenceLength", + "type": "number", + "description": "Maximum length (in characters) of the generated sentence. Longer sentences will be truncated suitably.", + "required": false, + "defaultValue": "200" + }, + { + "name": "useSummary", + "type": "boolean", + "description": "If true, attempts to generate a summary sentence from the extracted content rather than a direct sentence extract.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sentence string representing the extracted webpage content." + }, + "aiAgent": { + "useCase": "Use this tool when you need a concise single sentence capturing key information from a specific part or the whole content of a webpage, such as summarizing a news article headline, pulling a product description snippet, or highlighting a key quote. It helps in generating human-readable, extractive summaries directly from web data.", + "limitations": "Cannot guarantee fully coherent or context-aware summaries for complex or multimedia-rich pages. Relies on accessible text and provided selectors. Does not perform deep semantic understanding beyond sentence extraction or simple summarization.", + "examples": [ + "Extract a key sentence from the homepage of example.com using a specific CSS selector for headlines.", + "Generate a summary sentence from a blog post URL without specifying a selector to get the main idea.", + "Retrieve a short product description sentence from an ecommerce product page using XPath." + ] + }, + "tags": [ + "web-scraping", + "text-extraction", + "content-summarization", + "sentence-generation", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://en.wikipedia.org/wiki/OpenAI\",\"selector\":\"p\",\"maxSentenceLength\":150,\"useSummary\":false}", + "description": "Extracts the first coherent sentence from the main paragraph(s) of the OpenAI Wikipedia page." + }, + { + "inputJson": "{\"url\":\"https://news.ycombinator.com/\",\"selector\":\"a.storylink\",\"maxSentenceLength\":100,\"useSummary\":false}", + "description": "Generates a sentence by scraping news headlines from the Hacker News front page via CSS selector." + }, + { + "inputJson": "{\"url\":\"https://example.com/product/12345\",\"selector\":\"//div[@class='product-description']\",\"maxSentenceLength\":120,\"useSummary\":true}", + "description": "Attempts to generate a summary sentence from the product description section located by XPath." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "web-scraping.generateEvent", + "description": "This tool accepts a target website URL and a set of user interaction selectors or event definitions, scrapes the web page content, and generates structured event data reflecting the defined user interactions for analytics tracking. It outputs JSON-formatted event representations suitable for integration with analytics platforms.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the web page to scrape and analyze for generating event data.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventSelectors", + "type": "array", + "description": "An array of CSS selectors or XPath strings identifying page elements to bind events to for extraction (e.g. buttons, links).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of event to generate for each selector, e.g., 'click', 'hover', or 'submit'.", + "required": true, + "defaultValue": "click" + }, + { + "name": "includeAttributes", + "type": "array", + "description": "List of HTML attributes to extract from the elements (e.g. 'id','class','data-*').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "scrollDepthThreshold", + "type": "number", + "description": "Optional scroll depth percentage to generate scroll events when reached (e.g., 80 for 80%).", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for page content and dynamic elements to load before scraping.", + "required": false, + "defaultValue": "10" + }, + { + "name": "userAgent", + "type": "string", + "description": "Optional user agent string to use when fetching the page to simulate different browsers/devices.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object containing an array of generated event definitions. Each event includes selector, event type, captured element attributes, and metadata for analytics integration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate structured event definitions from a live or dynamically loaded webpage for web analytics or user interaction tracking purposes. It helps automate creation of events for buttons, links, forms, and scroll points without manual event mapping.", + "limitations": "Cannot execute or simulate user interactions beyond DOM inspection and event definition generation. Complex JavaScript-driven events or single-page app routing events may require additional instrumentation outside static scraping.", + "examples": [ + "Generate click events for all buttons on the homepage for tracking.", + "Create scroll depth events at 50%, 75%, 100% page scroll on an article page.", + "Extract click events from navigation menu links including their data-category attributes for segmentation." + ] + }, + "tags": [ + "web-scraping", + "event-generation", + "analytics", + "user-interaction", + "automation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"eventSelectors\":[\"button.primary\",\"a.nav-link\"],\"eventType\":\"click\",\"includeAttributes\":[\"id\",\"class\",\"data-tracking\"]}", + "description": "Generate click events for primary buttons and navigation links including tracking attributes." + }, + { + "inputJson": "{\"url\":\"https://news.example.com/article/12345\",\"eventSelectors\":[\"#submitComment\"],\"eventType\":\"submit\",\"timeoutSeconds\":15}", + "description": "Generate a submit event on the comment submission form with extended timeout for page load." + }, + { + "inputJson": "{\"url\":\"https://blogs.example.com/tech\",\"eventSelectors\":[],\"eventType\":\"scroll\",\"scrollDepthThreshold\":80}", + "description": "Generate a scroll event at 80% scroll depth on a blog listing page." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "web-scraping.generateParagraph", + "description": "Generates a coherent paragraph of text by scraping and extracting relevant content from a specified web page URL. Accepts a URL and optional CSS selector to target specific page sections, then processes the content to produce a readable paragraph summarizing or presenting the scraped data.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the web page to scrape content from", + "required": true, + "defaultValue": "" + }, + { + "name": "cssSelector", + "type": "string", + "description": "An optional CSS selector to target specific elements on the page for extraction", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the generated paragraph", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "Language code to filter or process content in a specific language", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated paragraph text along with metadata about the source URL and extraction details" + }, + "aiAgent": { + "useCase": "Use this tool when a concise, coherent paragraph summarizing or presenting main content from a web page is needed, such as for content aggregation, previews, or data extraction in natural language form. Ideal for extracting readable text summaries focused on specific page sections if a CSS selector is provided.", + "limitations": "Cannot handle pages heavily reliant on JavaScript rendering without additional processing; output quality depends on structure of source page; not suited for generating original text beyond extracted content; may struggle with highly dynamic or multi-lingual content without tuning.", + "examples": [ + "Generate a summary paragraph from the main content section of a news article URL.", + "Extract a paragraph from the section identified by .product-description on an e-commerce product page.", + "Produce a brief paragraph (up to 300 characters) from a blog URL filtering only English text." + ] + }, + "tags": [ + "web scraping", + "data extraction", + "content summarization", + "natural language", + "HTML parsing" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/news/today\",\"cssSelector\":\".article-body\",\"maxLength\":400,\"language\":\"en\"}", + "description": "Extract a readable paragraph summarizing the main article body from a news website." + }, + { + "inputJson": "{\"url\":\"https://example.com/products/12345\",\"cssSelector\":\".product-description\",\"maxLength\":300}", + "description": "Generate a concise paragraph from a specific product description section of an e-commerce page." + }, + { + "inputJson": "{\"url\":\"https://exampleblog.com/post/2023/05/interesting-topic\",\"maxLength\":200,\"language\":\"en\"}", + "description": "Produce a brief paragraph up to 200 characters from a blog post focusing on English language content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-scraping.generateMetric", + "description": "This tool accepts a target website URL and a specified analytic metric type, such as 'wordCount', 'averageLoadTime', or 'imageCount'. It scrapes the website's content or metadata, processes the data according to the metric requested, and returns a structured quantitative measurement relevant to that website. The output is a JSON object with the metric name and computed value.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the website or webpage to scrape for metric data.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "Type of metric to generate, e.g., 'wordCount', 'averageLoadTime', 'imageCount'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSubpages", + "type": "boolean", + "description": "Whether to scrape linked subpages within the same domain to aggregate metric data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "userAgent", + "type": "string", + "description": "HTTP User-Agent string to use for requests, useful to mimic browsers.", + "required": false, + "defaultValue": "TPMJS-WebScraperBot/1.0" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for each HTTP request before timeout.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the metricType and the computed numeric value representing the metric for the target site." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly gather quantitative metrics from a website's visible content or performance characteristics without manual navigation. It is ideal for generating SEO metrics like word count, assessing load times, or counting images for analytics or monitoring purposes.", + "limitations": "Does not provide deep user activity analytics or metrics requiring authentication. Metrics are limited to public content accessible by a basic web scraper. Dynamic content rendered by heavy JavaScript frameworks may be incomplete or inaccurate.", + "examples": [ + "Generate the total number of words on https://example.com homepage.", + "Get the average page load time metric for https://news.site including subpages.", + "Count all images on the landing page at https://shop.example with a custom user agent string." + ] + }, + "tags": [ + "web-scraping", + "analytics", + "metric", + "seo", + "performance", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"metricType\":\"wordCount\",\"includeSubpages\":false}", + "description": "Count total visible words on the main page of example.com." + }, + { + "inputJson": "{\"url\":\"https://news.site\",\"metricType\":\"averageLoadTime\",\"includeSubpages\":true}", + "description": "Compute average load time across main and subpages of news.site." + }, + { + "inputJson": "{\"url\":\"https://shop.example\",\"metricType\":\"imageCount\",\"includeSubpages\":false,\"userAgent\":\"CustomBot/2.0\"}", + "description": "Count images on shop.example home page using a custom HTTP user agent." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "web-scraping.createSentence", + "description": "This tool extracts and constructs a meaningful sentence from specified textual content on a web page. Users provide a URL and CSS selector to locate target text elements; the tool scrapes these elements, optionally cleans and combines their text, then returns a coherent extracted sentence for use in summaries, analyses, or as input data.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the web page from which to scrape the text content.", + "required": true, + "defaultValue": "" + }, + { + "name": "cssSelector", + "type": "string", + "description": "A CSS selector string to target specific text-containing elements on the page.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSentenceLength", + "type": "number", + "description": "Maximum length of the created sentence in characters; longer text will be truncated at word boundaries.", + "required": false, + "defaultValue": "200" + }, + { + "name": "includeAltText", + "type": "boolean", + "description": "If true, include alternative text (alt attribute) from images matching the selector when compiling the sentence.", + "required": false, + "defaultValue": "false" + }, + { + "name": "cleanWhitespace", + "type": "boolean", + "description": "If true, collapse multiple spaces and trim leading/trailing whitespace in extracted text before forming the sentence.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed sentence as a string and metadata about the source URL and used selector." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract a concise text sentence from a webpage based on a CSS selector, for purposes like summarizing product features, capturing headlines, or gathering descriptive snippets from web content. It enables structured textual data extraction tailored to specified page elements.", + "limitations": "This tool cannot interpret or generate sentences beyond the raw text content extracted; it does not perform deep natural language generation or semantic summarization. It depends on the accuracy of the CSS selector and the presence of appropriate textual content at the specified location. JavaScript-rendered content may not be fully accessible without appropriate browser context.", + "examples": [ + "Extract the main headline from a news article at a given URL using the headline's CSS selector.", + "Get a product summary sentence from an e-commerce page by targeting the description container.", + "Retrieve a caption sentence from figure elements by including alt text from images matched by the selector." + ] + }, + "tags": [ + "web scraping", + "text extraction", + "sentence creation", + "content processing", + "CSS selector" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/news/article123\",\"cssSelector\":\"h1.headline\",\"maxSentenceLength\":150,\"includeAltText\":false,\"cleanWhitespace\":true}", + "description": "Extract the headline sentence from a news article webpage by targeting the main headline CSS class." + }, + { + "inputJson": "{\"url\":\"https://shop.example.com/product/987\",\"cssSelector\":\"div.product-description\",\"maxSentenceLength\":200,\"includeAltText\":false,\"cleanWhitespace\":true}", + "description": "Create a concise product description sentence from the product details container on an e-commerce product page." + }, + { + "inputJson": "{\"url\":\"https://gallery.example.com/photo/456\",\"cssSelector\":\"figure.caption\",\"maxSentenceLength\":100,\"includeAltText\":true,\"cleanWhitespace\":true}", + "description": "Generate a caption sentence by combining text and image alt text from figure caption elements on a photo gallery page." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Sentence", + "context": null + } + }, + { + "name": "web-scraping.generateSummary", + "description": "This tool accepts a URL of a publicly accessible webpage and optional configuration parameters, then retrieves and extracts the main textual content, processes it using natural language summarization techniques, and returns a concise summary highlighting the key points of the page's content. It supports both general text extraction and focused summaries based on specified keywords or sections.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the webpage to scrape and summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum number of sentences or approximate length for the generated summary.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeImages", + "type": "boolean", + "description": "Flag indicating whether to attempt extracting and including image captions in the summary.", + "required": false, + "defaultValue": "false" + }, + { + "name": "focusKeywords", + "type": "array", + "description": "Array of keywords to focus the summary on specific topics within the page content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the webpage to load before timing out.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summarized text of the webpage, the source URL, optionally extracted images with captions, and metadata like word count and summary generation time." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs a condensed overview of a webpage's content rather than the full text, such as for quick information retrieval, briefing, or topic understanding from arbitrary online articles or documentation. It is particularly useful if direct access to structured data is unavailable and the primary information source is unstructured web text.", + "limitations": "This tool cannot execute javascript-heavy pages requiring complex rendering beyond basic HTML. It does not guarantee extraction from paywalled or dynamically generated content, nor does it provide in-depth analysis beyond summarization. Summaries depend on text extraction quality and may miss context from multimedia or interactive elements.", + "examples": [ + "Summarize the main points from https://example.com/news/article123 for a quick briefing.", + "Generate a concise 3-sentence summary of the product description at https://shop.example.com/product/456.", + "Provide a focused summary highlighting 'climate change' from the webpage https://environment.org/reports/annual-updates" + ] + }, + "tags": [ + "web scraping", + "summarization", + "content extraction", + "URL input", + "natural language processing", + "text summary" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://en.wikipedia.org/wiki/Artificial_intelligence\",\"maxSummaryLength\":5}", + "description": "Summarize the Wikipedia article on Artificial Intelligence with about 5 sentences." + }, + { + "inputJson": "{\"url\":\"https://blog.example.com/2023/06/technology-trends\",\"maxSummaryLength\":3,\"focusKeywords\":[\"AI\",\"blockchain\"]}", + "description": "Generate a brief 3-sentence summary focused on AI and blockchain from a technology trends blog post." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "web-scraping.generateCSV", + "description": "This tool accepts a target website URL and optional CSS selectors to scrape tabular or list data. It extracts the specified data fields from the webpage, processes the data into structured rows and columns, and outputs a CSV formatted string representing the scraped data.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the web page from which to scrape data.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectors", + "type": "object", + "description": "A mapping of column names to CSS selectors to extract the relevant data fields from the page.", + "required": true, + "defaultValue": "" + }, + { + "name": "paginationSelector", + "type": "string", + "description": "CSS selector to navigate pagination links if the data spans multiple pages (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "maxPages", + "type": "number", + "description": "Maximum number of pages to scrape when using pagination. Defaults to 1 (only the first page).", + "required": false, + "defaultValue": "1" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include CSV header row with column names. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV string output and metadata like number of rows extracted." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to extract structured data from web pages that do not provide APIs or downloadable data formats. It is especially useful for gathering tabular information presented in HTML tables or structured lists to convert into CSV for further analysis or reporting.", + "limitations": "Cannot bypass paywalls, handle complex JavaScript-rendered content without additional rendering support, or guarantee data accuracy if page structure changes. Pagination support is simple and may not work for all sites.", + "examples": [ + "Extract pricing tables from an e-commerce site to CSV.", + "Gather sports statistics from a league results page with pagination.", + "Scrape contact info from a directory listing with known CSS selectors." + ] + }, + "tags": [ + "web-scraping", + "csv", + "data-extraction", + "pagination", + "html-parsing" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/products\",\"selectors\":{\"Name\":\".product-title\",\"Price\":\".price\"},\"paginationSelector\":\".next-page\",\"maxPages\":3,\"includeHeaders\":true}", + "description": "Scrape product names and prices from an e-commerce page with up to 3 paginated pages, including CSV headers." + }, + { + "inputJson": "{\"url\":\"https://example.com/sports/stats\",\"selectors\":{\"Player\":\".player-name\",\"Points\":\".points-score\"},\"paginationSelector\":\"\",\"maxPages\":1,\"includeHeaders\":false}", + "description": "Extract player names and points from a sports stats page without pagination and without headers in the CSV output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "web-scraping.createMetric", + "description": "Creates a custom web analytics metric by scraping specified website URLs and extracting relevant numerical data points according to user-defined selectors and aggregation rules. Accepts target URLs, CSS selectors or XPath expressions for data extraction, and parameters to compute metrics such as sums, averages, or counts, then returns a structured metric report.", + "category": "web-scraping", + "parameters": [ + { + "name": "urls", + "type": "array", + "description": "List of target website URLs to scrape data from.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "dataSelector", + "type": "string", + "description": "CSS selector or XPath expression to locate numeric data elements on the webpage.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Method to aggregate extracted numeric values: 'sum', 'average', 'count', or 'max'.", + "required": true, + "defaultValue": "sum" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for each page to load before scraping.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeSubpages", + "type": "boolean", + "description": "If true, also scrape URLs linked from the main pages matching criteria.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customHeaders", + "type": "object", + "description": "Optional HTTP headers to include in requests as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "maxItems", + "type": "number", + "description": "Maximum number of data items to extract per page, or 0 for no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the computed metric value, the list of extracted raw values, and metadata such as URLs processed and timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to derive quantitative metrics from specific numeric data scattered across web pages, such as total product counts, average ratings, or aggregated prices, by defining precise selectors and aggregation logic. It's useful for automated competitor pricing analysis, content size estimation, or web-based KPI generation.", + "limitations": "Cannot extract non-numeric data directly or perform complex transformations beyond basic aggregation. Requires stable page structure and loading; dynamic content behind heavy JavaScript may not be fully supported.", + "examples": [ + "Create a metric of the total number of articles listed across multiple news homepage URLs using their article count selectors.", + "Calculate the average price of products from multiple e-commerce pages by scraping their price elements.", + "Count how many times a specific ad unit appears across a set of web pages to measure ad distribution." + ] + }, + "tags": [ + "web scraping", + "analytics", + "metrics", + "data extraction", + "aggregation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"urls\":[\"https://example.com/page1\",\"https://example.com/page2\"],\"dataSelector\":\".product-price\",\"aggregationMethod\":\"average\",\"timeoutSeconds\":15,\"includeSubpages\":false,\"customHeaders\":{},\"maxItems\":100}", + "description": "Calculate the average product price from two example pages by scraping elements with class 'product-price'." + }, + { + "inputJson": "{\"urls\":[\"https://news.example.com\",\"https://updates.example.com\"],\"dataSelector\":\".article-count\",\"aggregationMethod\":\"sum\",\"timeoutSeconds\":10,\"includeSubpages\":true,\"customHeaders\":{\"User-Agent\":\"Mozilla/5.0\"},\"maxItems\":0}", + "description": "Sum the total number of articles reported on two news sites, including their subpages, using a selector for article counts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "web-scraping.createParagraph", + "description": "Extracts a single paragraph of text content from a specified HTML element on a web page. Accepts a URL and a CSS selector targeting the desired paragraph. Fetches the page content, parses the HTML, and returns the clean text of the first matching paragraph element found.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full URL of the web page to scrape. Required to fetch the HTML content.", + "required": true, + "defaultValue": "" + }, + { + "name": "cssSelector", + "type": "string", + "description": "CSS selector string to identify the paragraph or container element from which to extract text. Defaults to 'p'.", + "required": false, + "defaultValue": "p" + }, + { + "name": "timeout", + "type": "number", + "description": "Timeout in milliseconds for fetching the web page. Prevents hanging on slow responses.", + "required": false, + "defaultValue": "5000" + }, + { + "name": "stripWhitespace", + "type": "boolean", + "description": "Whether to trim and collapse whitespace in the extracted paragraph text. Defaults to true for cleaner output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted paragraph text under 'paragraphText', or an error message if extraction failed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to obtain a focused paragraph of textual content from a specific web page element identified by a CSS selector. Ideal for extracting summaries, descriptions, or key information from online articles, blogs, or documentation without parsing entire pages.", + "limitations": "Cannot handle web pages that require authentication, are behind captchas, or heavily rely on client-side JavaScript to render paragraphs. Only extracts the first element matching the CSS selector.", + "examples": [ + "Extract the introduction paragraph from a news article webpage.", + "Retrieve the first paragraph from a product description section on an e-commerce site.", + "Get the first paragraph of terms and conditions from a legal webpage." + ] + }, + "tags": [ + "web-scraping", + "html-parsing", + "content-extraction", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/article\",\"cssSelector\":\"article p\"}", + "description": "Extract first paragraph inside an article element from a news website." + }, + { + "inputJson": "{\"url\":\"https://shop.example.com/item/123\",\"cssSelector\":\".product-description p\"}", + "description": "Get the first paragraph of product description from an e-commerce product page." + }, + { + "inputJson": "{\"url\":\"https://legal.example.com/terms\",\"cssSelector\":\"#terms-content p\",\"stripWhitespace\":false}", + "description": "Extract first paragraph from the terms and conditions content, preserving original whitespace." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "web-scraping.createService", + "description": "Creates a customizable web scraping service that accepts target URLs and extraction rules, performs crawling and data extraction using specified selectors and scheduling parameters, and outputs structured scraped data in JSON format.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrls", + "type": "array", + "description": "An array of URLs to scrape. Each URL is a string. Required to specify the websites to crawl for data.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractionRules", + "type": "object", + "description": "Object defining CSS selectors or XPath expressions keyed by field names to extract specific data elements from pages. Required for specifying what data to extract.", + "required": true, + "defaultValue": "" + }, + { + "name": "requestHeaders", + "type": "object", + "description": "Optional HTTP headers to use for requests, e.g., user-agent or authentication tokens.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "crawlDepth", + "type": "number", + "description": "Number of link levels to follow when crawling from the target URLs. Defaults to 1 for just the given pages.", + "required": false, + "defaultValue": "1" + }, + { + "name": "crawlDelay", + "type": "number", + "description": "Delay in milliseconds between requests to avoid overloading the website. Default is 1000ms.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "maxPages", + "type": "number", + "description": "Maximum number of pages to scrape in total. Limits the crawl size. Default is 100.", + "required": false, + "defaultValue": "100" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the scraped data (e.g., json, csv). Default is 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "scheduleCron", + "type": "string", + "description": "Optional cron expression to schedule periodic scraping. If empty, scraping runs once immediately.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the scraping job ID, status, summary of pages crawled, and a link or embedded data of extracted structured data in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically collect structured data from one or more websites on a periodic or on-demand basis, especially when you require customization of extraction rules and crawl depth to capture nested linked content.", + "limitations": "Cannot bypass CAPTCHAs, login-protected pages requiring complex authentication, or sites with heavy client-side JavaScript that needs rendering beyond static scraping. Complex data transformations post-extraction must be done separately.", + "examples": [ + "Create a scraping service for e-commerce product listings at specified URLs extracting product name, price, and availability.", + "Set up a scheduled scraper to collect news headlines and timestamps from an array of news site URLs every hour.", + "Scrape job postings from company career pages limited to maximum 50 pages with a 2-second delay between requests." + ] + }, + "tags": [ + "webscraping", + "service", + "data extraction", + "automation", + "crawler", + "scheduled scraping" + ], + "examples": [ + { + "inputJson": "{\"targetUrls\":[\"https://example.com/products\"],\"extractionRules\":{\"productName\":\".product-title\",\"price\":\".price\",\"availability\":\".stock-status\"},\"crawlDepth\":1,\"crawlDelay\":1500,\"maxPages\":50,\"outputFormat\":\"json\",\"scheduleCron\":\"\"}", + "description": "Create a scraping service to extract product data from a single e-commerce site with moderate crawl size and delay." + }, + { + "inputJson": "{\"targetUrls\":[\"https://news.example.com\",\"https://updates.example.net\"],\"extractionRules\":{\"headline\":\"h1.headline\",\"date\":\".date\"},\"crawlDepth\":1,\"crawlDelay\":1000,\"maxPages\":20,\"outputFormat\":\"json\",\"scheduleCron\":\"0 * * * *\"}", + "description": "Set up an hourly scheduled scraping service to collect news headlines and dates from two news websites." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "web-scraping.createEvent", + "description": "This tool accepts a target website URL and a CSS selector or XPath expression representing user interaction points on the page (such as buttons or links). It simulates user events (like clicks, hovers) on those elements, collecting the resulting dynamic data changes or URLs triggered. The output is a structured event log capturing the sequence and outcome of the simulated interactions.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The target website URL to perform event creation on.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "The type of user event to simulate (e.g., click, mouseover).", + "required": true, + "defaultValue": "click" + }, + { + "name": "selector", + "type": "string", + "description": "CSS selector or XPath to identify elements for event simulation.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxEvents", + "type": "number", + "description": "Maximum number of events to simulate to prevent overload.", + "required": false, + "defaultValue": "10" + }, + { + "name": "waitAfterEvent", + "type": "number", + "description": "Milliseconds to wait after firing an event to capture dynamic changes.", + "required": false, + "defaultValue": "500" + }, + { + "name": "captureResult", + "type": "boolean", + "description": "If true, capture the resulting page content or URL after event fire.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An event log object containing the sequence of simulated events, their targets, timestamps, and any resulting data or navigation changes captured." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically simulate user interactions on web pages to extract data triggered only after certain events, such as clicking buttons or hovering elements, enabling automated event-based data scraping.", + "limitations": "This tool cannot execute complex multi-step workflows requiring user authentication or handle pages protected by anti-bot measures. It simulates only predefined event types on static selectors", + "examples": [ + "Simulate click events on product 'Add to Cart' buttons to track resulting cart updates.", + "Fire mouseover events on menu items to reveal hidden submenus and extract their links.", + "Trigger click events on pagination controls to scrape content from multiple pages." + ] + }, + "tags": [ + "web-scraping", + "event-simulation", + "automation", + "user-interaction", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/products\",\"eventType\":\"click\",\"selector\":\".product-card .add-to-cart-button\",\"maxEvents\":5,\"waitAfterEvent\":1000,\"captureResult\":true}", + "description": "Simulate clicks on 'Add to Cart' buttons on a products page, capturing cart update responses." + }, + { + "inputJson": "{\"url\":\"https://example.com/menu\",\"eventType\":\"mouseover\",\"selector\":\".nav-menu > li\",\"maxEvents\":3,\"waitAfterEvent\":800,\"captureResult\":false}", + "description": "Trigger mouseover on main navigation menu items to reveal dropdown submenus." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "web-scraping.createContainer", + "description": "Creates an isolated containerized environment suitable for running web scraping tasks securely and reliably. Accepts configuration inputs such as base image, resource limits, network settings, and startup scripts. Produces a container ID and metadata for managing the lifecycle of the scraping container.", + "category": "web-scraping", + "parameters": [ + { + "name": "baseImage", + "type": "string", + "description": "The Docker image or container base to use for the scraping environment (e.g., 'python:3.9-slim').", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "CPU and memory limits for the container to control resource usage (e.g., {\"cpu\": \"1\", \"memory\": \"512m\"}).", + "required": false, + "defaultValue": "{\"cpu\":\"1\",\"memory\":\"512m\"}" + }, + { + "name": "networkSettings", + "type": "object", + "description": "Configuration for network access like proxy settings or static IP.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "startupScript", + "type": "string", + "description": "Shell or command script to run at container startup to initialize scraping environment.", + "required": false, + "defaultValue": "" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs for environment variables to set inside the container.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "volumeMounts", + "type": "array", + "description": "List of host paths and container paths to mount as volumes for persistent or shared data.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Details about the created container including container ID, status, and applied configuration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically provision isolated and configurable container environments tailored for web scraping jobs, enabling safe execution and easy scaling of scraping tasks. It supports scenarios requiring custom base images, resource control, and specific startup commands.", + "limitations": "Does not perform the scraping itself; only creates container environment infrastructure. Requires a container runtime environment (e.g., Docker) accessible to execute. Does not manage container lifecycle beyond creation.", + "examples": [ + "Create a container for Python-based scraping with limited CPU and memory.", + "Set up a scraping container with proxy network settings and a startup initialization script.", + "Create a container with mounted volumes for scraping results persistence." + ] + }, + "tags": [ + "web-scraping", + "container", + "infrastructure", + "automation", + "environment", + "docker", + "security" + ], + "examples": [ + { + "inputJson": "{\"baseImage\":\"python:3.9-slim\",\"resourceLimits\":{\"cpu\":\"1\",\"memory\":\"512m\"},\"networkSettings\":{},\"startupScript\":\"pip install requests beautifulsoup4\",\"environmentVariables\":{\"SCRAPE_MODE\":\"fast\"},\"volumeMounts\":[{\"hostPath\":\"/data/scrapes\",\"containerPath\":\"/app/data\"}]}", + "description": "Create a Python scraping container with resource limits, installs dependencies on startup, sets env variable, and mounts a host volume." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "web-scraping.createAlert", + "description": "Creates a monitoring alert for specified web pages by detecting defined changes or security-related indicators such as modifications, injections, or suspicious content. Accepts URLs and conditions to track, then continuously or periodically scrapes the page and returns alert triggers when criteria are met.", + "category": "web-scraping", + "parameters": [ + { + "name": "urls", + "type": "array", + "description": "List of URLs to monitor for changes or alerts.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkFrequencyMinutes", + "type": "number", + "description": "Interval in minutes between each scrape to check for updates.", + "required": true, + "defaultValue": "10" + }, + { + "name": "alertConditions", + "type": "object", + "description": "Object defining conditions for triggering alerts, e.g., keywords, regex patterns, or structural changes to detect.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxRetries", + "type": "number", + "description": "Maximum retry attempts on failed scraping during each check cycle.", + "required": false, + "defaultValue": "3" + }, + { + "name": "notifyEmail", + "type": "string", + "description": "Email address to send alert notifications when conditions are met.", + "required": false, + "defaultValue": "" + }, + { + "name": "includePageSnapshot", + "type": "boolean", + "description": "Whether to capture and include a snapshot of the page content when alert triggers.", + "required": false, + "defaultValue": "false" + }, + { + "name": "userAgentString", + "type": "string", + "description": "Custom User-Agent header string to use for scraping requests, to mimic specific browsers if needed.", + "required": false, + "defaultValue": "Mozilla/5.0" + } + ], + "returns": { + "type": "object", + "description": "Return an alert object that includes the triggered URL, detected change summary, timestamp, and optional snapshot or raw data." + }, + "aiAgent": { + "useCase": "Use this tool to setup automated monitoring alerts for webpages where security changes or suspicious activity need to be tracked. For example, monitoring critical vendor sites for unexpected content changes, spotting potential defacements, or detecting injection patterns on public facing pages. It helps automate early detection for web scraping security alerts in ongoing monitoring tasks.", + "limitations": "It cannot perform deep security vulnerability scanning or analyze backend server behavior. It relies on periodic scraping, so real-time alerts are limited by the check frequency. Complex JavaScript-heavy sites may cause incomplete detection depending on scraping method.", + "examples": [ + "Create alerts to monitor a set of URLs for any HTML injection patterns with immediate email notification if detected.", + "Monitor a financial news webpage every 15 minutes and alert when specific keywords appear or disappear.", + "Set up an alert for a vendor's product page to detect any pricing modifications or suspicious script insertions." + ] + }, + "tags": [ + "web scraping", + "security", + "monitoring", + "alerts", + "automation", + "website changes", + "content monitoring" + ], + "examples": [ + { + "inputJson": "{\"urls\":[\"https://example.com\",\"https://secure-site.com/status\"],\"checkFrequencyMinutes\":10,\"alertConditions\":{\"keywords\":[\"injection\",\"hacked\"],\"regexPatterns\":[\"\"]},\"maxRetries\":3,\"notifyEmail\":\"security@company.com\",\"includePageSnapshot\":true}", + "description": "Monitor two URLs every 10 minutes for keywords 'injection' or 'hacked' and any script tag injections, sending email alerts with snapshots." + }, + { + "inputJson": "{\"urls\":[\"https://news.site.com\"],\"checkFrequencyMinutes\":15,\"alertConditions\":{\"keywords\":[\"alert\",\"warning\"]},\"notifyEmail\":\"alerts@domain.org\",\"includePageSnapshot\":false}", + "description": "Alert if the monitored news site contains the keywords 'alert' or 'warning' every 15 minutes, notify by email, no snapshot." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "agent-management.analyzeMarkdown", + "description": "Analyzes markdown text to extract structural and semantic information including headings, links, images, code blocks, and metadata. Accepts a markdown string input, processes the content to identify markdown elements, and outputs a structured summary including element counts, positions, and content extracts for agent decision-making or documentation purposes.", + "category": "agent-management", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "The raw markdown text to analyze for structure and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractHeadings", + "type": "boolean", + "description": "Whether to extract and return all headings with their levels and text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "Whether to identify and return all links with URLs and display texts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractImages", + "type": "boolean", + "description": "Whether to extract image references including alt text and sources.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractCodeBlocks", + "type": "boolean", + "description": "Whether to find and return code blocks with language identifiers and content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includePositions", + "type": "boolean", + "description": "Include positional data (line and character ranges) for elements extracted.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing arrays of extracted markdown elements (headings, links, images, code blocks) and their optional metadata including count summaries and positions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand, summarize, or manipulate markdown content structurally for tasks such as content indexing, metadata extraction, or preparing documentation outlines. It helps in breaking down markdown to discrete elements for downstream processing or agent decision-making.", + "limitations": "This tool does not render markdown visually, nor does it execute embedded scripts or dynamic markdown extensions. It may not fully parse non-standard or highly customized markdown dialects.", + "examples": [ + "Extract all headings and links from a README markdown file.", + "Analyze markdown notes to identify all embedded code snippets and their languages.", + "Summarize markdown documentation by counting and listing links and images." + ] + }, + "tags": [ + "analysis", + "markdown", + "documentation", + "content-extraction", + "agent-management", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Project Title\\nThis project is about...\\n## Features\\n- Easy usage\\n- Fast processing\\n[GitHub](https://github.com)\\n![Logo](logo.png)\\n```js\\nconsole.log('hello');\\n```\",\"extractHeadings\":true,\"extractLinks\":true,\"extractImages\":true,\"extractCodeBlocks\":true,\"includePositions\":false}", + "description": "Extract headings, links, images, and code blocks from a simple project README markdown." + }, + { + "inputJson": "{\"markdownContent\":\"### Notes\\nRemember to check [dependencies](https://deps.com).\\n```python\\ndef foo():\\n pass\\n```\",\"extractHeadings\":true,\"extractLinks\":true,\"extractImages\":false,\"extractCodeBlocks\":true,\"includePositions\":true}", + "description": "Analyze markdown notes extracting headings, links and code blocks with position info, skipping images." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "web-scraping.createKey", + "description": "Generates a cryptographic key pair for secure authentication or encryption in web-scraping applications. Accepts parameters specifying key type (RSA, ECDSA), key size, and usage. Outputs the generated public and private keys in PEM or JWK formats for integration with scraping scripts requiring secure access.", + "category": "web-scraping", + "parameters": [ + { + "name": "keyType", + "type": "string", + "description": "Type of cryptographic key to generate (e.g., RSA, ECDSA).", + "required": true, + "defaultValue": "RSA" + }, + { + "name": "keySize", + "type": "number", + "description": "Key size in bits (e.g., 2048 for RSA). Must be appropriate for keyType.", + "required": false, + "defaultValue": "2048" + }, + { + "name": "usage", + "type": "array", + "description": "Intended uses for the key such as ['sign', 'encrypt'] to tailor key properties.", + "required": false, + "defaultValue": "[\"sign\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the output keys: PEM or JWK.", + "required": false, + "defaultValue": "PEM" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated publicKey and privateKey strings in the requested format." + }, + "aiAgent": { + "useCase": "Use this tool when a web-scraping workflow requires generation of cryptographic keys to authenticate to APIs, decrypt/encrypt data, or sign requests securely. Ideal for automating key creation before deploying scraping agents that interface with security-sensitive web services.", + "limitations": "This tool does not handle secure storage of keys or integrate with external hardware security modules (HSMs). It does not manage key revocation or lifecycle beyond initial creation.", + "examples": [ + "Generate RSA 2048 bit keys for signing API requests.", + "Create ECDSA keys in JWK format for encrypting scraped data.", + "Generate keys with usage specifically for encryption only." + ] + }, + "tags": [ + "web-scraping", + "security", + "key-generation", + "cryptography", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"keyType\":\"RSA\",\"keySize\":2048,\"usage\":[\"sign\"],\"outputFormat\":\"PEM\"}", + "description": "Generate RSA 2048-bit key pair for signing in PEM format." + }, + { + "inputJson": "{\"keyType\":\"ECDSA\",\"keySize\":256,\"usage\":[\"encrypt\"],\"outputFormat\":\"JWK\"}", + "description": "Create an ECDSA key for encryption use returned as JWK." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "web-scraping.createOrder", + "description": "This tool automates the creation of an order on a specified e-commerce website by programmatically filling the checkout form. It accepts order details such as customer info, product SKUs, quantities, shipping method, and payment info, then simulates form submissions to place the order. The output is a confirmation including order ID and status.", + "category": "web-scraping", + "parameters": [ + { + "name": "websiteUrl", + "type": "string", + "description": "The base URL of the e-commerce site where the order will be placed.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerDetails", + "type": "object", + "description": "An object containing customer's name, email, address, and contact number.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of items to order, each with SKU and quantity.", + "required": true, + "defaultValue": "" + }, + { + "name": "shippingMethod", + "type": "string", + "description": "The chosen shipping method identifier available on the site.", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentDetails", + "type": "object", + "description": "Payment information such as card number, expiry, and CVV or alternative payment info.", + "required": true, + "defaultValue": "" + }, + { + "name": "additionalInstructions", + "type": "string", + "description": "Optional special instructions or notes for the order.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with confirmation details including order ID, confirmation message, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically place or simulate placing an order on an e-commerce website by automating form filling and submission, based on structured order data. This is useful for testing, automated purchasing, or scraping checkout processes.", + "limitations": "This tool cannot bypass CAPTCHA or advanced bot protections. It assumes the website structure is compatible and the payment details are valid and authorized externally. It does not handle dynamic or multi-step authentication processes.", + "examples": [ + "Place an order with 3 items including customer shipping and payment info on example e-commerce site.", + "Automate test ordering on staging version of a web store with sample data.", + "Simulate checkout to verify site order confirmation flows." + ] + }, + "tags": [ + "web-scraping", + "order-automation", + "e-commerce", + "checkout", + "form-filling", + "automation" + ], + "examples": [ + { + "inputJson": "{\"websiteUrl\":\"https://shop.example.com\",\"customerDetails\":{\"name\":\"John Doe\",\"email\":\"john.doe@example.com\",\"address\":\"123 Elm St, Springfield\",\"phone\":\"555-1234\"},\"items\":[{\"sku\":\"ABC123\",\"quantity\":2},{\"sku\":\"XYZ789\",\"quantity\":1}],\"shippingMethod\":\"standard\",\"paymentDetails\":{\"cardNumber\":\"4111111111111111\",\"expiry\":\"12/25\",\"cvv\":\"123\"},\"additionalInstructions\":\"Leave package at back door.\"}", + "description": "Order 2 units of SKU ABC123 and 1 unit of SKU XYZ789 for John Doe with standard shipping and credit card payment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "web-scraping.createLead", + "description": "Extracts and compiles potential business lead information from specified web pages. Accepts URLs and optional CSS selectors or XPath expressions to identify relevant data such as contact details, company name, and location. Returns a structured lead object including discovered fields for use in sales or marketing workflows.", + "category": "web-scraping", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the web page to scrape lead information from.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectors", + "type": "object", + "description": "A map of field names to CSS selectors or XPath expressions to locate specific lead data on the page.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLeads", + "type": "number", + "description": "Maximum number of lead entries to extract from the page; useful if multiple leads are present.", + "required": false, + "defaultValue": "1" + }, + { + "name": "includeRawHtml", + "type": "boolean", + "description": "Whether to include raw HTML snippet of each matched lead section in the output for verification.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of lead entries with standardized fields like name, email, phone, company, and address extracted from the target web page." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate structured business lead data from publicly available web sources such as company directories or professional listings by scraping relevant contact info and business details. It's ideal for augmenting CRM systems with fresh lead data from the web.", + "limitations": "This tool cannot access pages behind paywalls or strong anti-bot measures and may not parse data accurately if the page structure is highly dynamic or inconsistent. It relies on the correctness of provided selectors for accurate data extraction.", + "examples": [ + "Extract lead info from a company directory URL using provided CSS selectors.", + "Scrape up to 5 lead entries from a professional networking page without selectors to get default fields.", + "Include raw HTML snippets of lead sections for manual review when extracting from an unknown website structure." + ] + }, + "tags": [ + "web-scraping", + "lead-generation", + "business-data", + "crm", + "sales", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com/directory/company1\",\"selectors\":{\"name\":\".contact-name\",\"email\":\".contact-email\",\"phone\":\".contact-phone\",\"company\":\".company-name\",\"address\":\".company-address\"},\"maxLeads\":1,\"includeRawHtml\":false}", + "description": "Extract one lead from a company directory page using CSS selectors." + }, + { + "inputJson": "{\"targetUrl\":\"https://example.com/members\",\"maxLeads\":5}", + "description": "Scrape up to five lead entries from a member listing page without specifying selectors (uses defaults)." + }, + { + "inputJson": "{\"targetUrl\":\"https://example.com/contacts\",\"selectors\":{\"name\":\"//div[@class='name']\",\"email\":\"//a[contains(@href,'mailto:')]\"},\"includeRawHtml\":true}", + "description": "Extract lead names and emails using XPath selectors including raw HTML snippets for each lead." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "web-scraping.createCSV", + "description": "This tool extracts specified data elements from a given web page URL by selecting HTML elements via CSS selectors, then compiles the extracted data into a structured CSV format string. It accepts parameters defining the URL, data mappings, and pagination options to handle multiple pages, returning the CSV content as a string.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSelectors", + "type": "object", + "description": "An object mapping CSV column names to CSS selectors used to extract the corresponding data from the webpage.", + "required": true, + "defaultValue": "" + }, + { + "name": "paginationSelector", + "type": "string", + "description": "CSS selector for the 'Next' pagination button or link, if the data spans multiple pages (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "maxPages", + "type": "number", + "description": "The maximum number of pages to scrape when pagination is used. Defaults to 1 (no pagination).", + "required": false, + "defaultValue": "1" + }, + { + "name": "delayBetweenRequests", + "type": "number", + "description": "Delay in milliseconds between requests to different pages to reduce server load and mimic human browsing. Defaults to 1000 ms.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV data as a string under the 'csvContent' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically extract structured tabular data from web pages where the data is presented in HTML but not directly downloadable, especially for lists, tables, or repeated elements matching CSS selectors. It supports pagination to gather data spanning multiple pages into a single CSV string for further processing.", + "limitations": "It cannot interact with dynamically loaded content if JavaScript rendering is required beyond initial page load. Complex sites requiring authentication or CAPTCHA solving are not supported. CSS selector accuracy is crucial; incorrect selectors will result in incomplete or empty data.", + "examples": [ + "Extract product listings from an e-commerce category page into CSV using specific CSS selectors for product name, price, and rating.", + "Scrape event data from multiple paginated pages on an event listing site, compiling all events into one CSV.", + "Gather job listings from a recruitment website by specifying selectors for job title, company, and location, handling up to 5 pages of results." + ] + }, + "tags": [ + "web scraping", + "csv export", + "data extraction", + "pagination", + "html parsing" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/products\",\"dataSelectors\":{\"ProductName\":\".product-title\",\"Price\":\".price\",\"Rating\":\".rating-stars\"},\"paginationSelector\":\".next-page\",\"maxPages\":3,\"delayBetweenRequests\":1500}", + "description": "Extract product names, prices, and ratings from a product listing page with pagination up to 3 pages." + }, + { + "inputJson": "{\"url\":\"https://events.example.com/upcoming\",\"dataSelectors\":{\"Event\":\".event-name\",\"Date\":\".event-date\",\"Location\":\".event-location\"},\"paginationSelector\":\"\",\"maxPages\":1,\"delayBetweenRequests\":1000}", + "description": "Extract event details from a single page of an event website." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "web-scraping.createBranch", + "description": "Creates a new git branch on a code repository hosting site (e.g., GitHub, GitLab) by automatically extracting the repo information from a webpage URL and using the hosting platform's API to create the specified branch. Accepts repository webpage URL, branch name, and optional base branch. Returns confirmation and branch details.", + "category": "web-scraping", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the code repository page from which to extract repository info, e.g., GitHub repo page URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "newBranchName", + "type": "string", + "description": "The name of the new branch to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranchName", + "type": "string", + "description": "The existing branch name from which to create the new branch; defaults to the repository's default branch if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Personal access token or OAuth token for authenticating with the repository hosting API.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object confirming branch creation with properties: success (boolean), message (string), branchName (string), baseBranch (string), repositoryUrl (string), branchUrl (string if applicable)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create a new branch in a code repository from a given repository webpage URL during automated workflows or when preparing branches for code changes, without directly interacting with git CLI or manual steps. It enables AI to interact with repository hosting APIs by scraping necessary info and creating branches robustly.", + "limitations": "Cannot operate if the repository URL is invalid or not supported (non-GitHub/GitLab etc.) or if authentication token lacks permissions. Does not handle merge or pull requests. Assumes network connectivity and API availability.", + "examples": [ + "Create a new feature branch named 'feature/login-fix' based off 'main' branch using my GitHub token starting from a GitHub repository URL.", + "From a GitLab repo webpage URL, create a branch called 'hotfix/urgent-bug' without specifying base branch, using an auth token.", + "Given a repo URL on GitHub, create a branch 'test-branch' off branch 'develop' with proper authorization." + ] + }, + "tags": [ + "web-scraping", + "branch-management", + "git", + "code-repository", + "automation", + "api-integration" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/user/example-project\",\"newBranchName\":\"feature/new-ui\",\"baseBranchName\":\"main\",\"authToken\":\"ghp_XXXXXXXXXXXXXXXXXXXX\"}", + "description": "Create a new branch 'feature/new-ui' based on 'main' branch in a GitHub repository using a personal access token." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/org/sample-repo\",\"newBranchName\":\"bugfix/fix-crash\",\"baseBranchName\":\"\",\"authToken\":\"glpat-XXXXXXXXXXXXXXXX\"}", + "description": "Create a new branch 'bugfix/fix-crash' using the default branch as base for a GitLab repository with a given OAuth token." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "web-scraping.createEndpoint", + "description": "Creates a configurable web scraping API endpoint that extracts specified data fields from target web pages. Accepts target URL patterns, CSS or XPath selectors for each data field, request headers, and optional pagination settings. Generates an endpoint URL and scraping logic that returns structured JSON data matching the defined schema.", + "category": "web-scraping", + "parameters": [ + { + "name": "endpointName", + "type": "string", + "description": "Unique name for the created scraping endpoint to identify it.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetUrlPattern", + "type": "string", + "description": "URL or URL pattern (with wildcards) of webpages to scrape data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFields", + "type": "object", + "description": "Mapping of field names to CSS selectors or XPath expressions identifying elements to extract on the page.", + "required": true, + "defaultValue": "" + }, + { + "name": "requestHeaders", + "type": "object", + "description": "Optional HTTP headers to include when making requests to target URLs, e.g., User-Agent.", + "required": false, + "defaultValue": "" + }, + { + "name": "paginationConfig", + "type": "object", + "description": "Optional settings for paginating through multiple pages, including next page selector and max pages.", + "required": false, + "defaultValue": "" + }, + { + "name": "scrapeIntervalSeconds", + "type": "number", + "description": "Optional interval in seconds between automated scrapes for the endpoint (0 for manual only).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Details of the created scraping endpoint including access URL, defined fields, and config summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate a reusable web scraping API endpoint from user-provided instructions about which website URLs to target and what data to extract. This is ideal for creating standardized data access interfaces from web sources without manual coding.", + "limitations": "Cannot handle sites requiring complex interactive sessions (like heavy JavaScript-based navigation or logins), sites with anti-scraping protections, or extract data beyond static page content. Pagination support is limited to straightforward next-page selectors.", + "examples": [ + "Create an endpoint to scrape product names and prices from example.com product pages, paginating through first 5 pages.", + "Generate an API that extracts job titles and company names from a job listing site URL pattern.", + "Build a scraping endpoint to gather article titles and authors from a news site, using custom headers for access." + ] + }, + "tags": [ + "web scraping", + "API endpoint", + "data extraction", + "automation", + "pagination" + ], + "examples": [ + { + "inputJson": "{\"endpointName\":\"exampleProductScraper\",\"targetUrlPattern\":\"https://example.com/products?page=*\",\"dataFields\":{\"productName\":\".product-title\",\"price\":\".price-tag\"},\"requestHeaders\":{\"User-Agent\":\"Mozilla/5.0\"},\"paginationConfig\":{\"nextPageSelector\":\"a.next\",\"maxPages\":5},\"scrapeIntervalSeconds\":3600}", + "description": "Create a scraping endpoint for product name and price with pagination on example.com." + }, + { + "inputJson": "{\"endpointName\":\"jobSiteExtractor\",\"targetUrlPattern\":\"https://jobs.example.com/listings/*\",\"dataFields\":{\"jobTitle\":\"h2.job-title\",\"companyName\":\".company-name\"},\"requestHeaders\":{},\"paginationConfig\":{},\"scrapeIntervalSeconds\":0}", + "description": "Create a scraping endpoint for job titles and company names from job listings, no pagination, manual triggering." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "web-scraping.createSummary", + "description": "This tool accepts a URL or raw HTML content to extract webpage text, then processes the content to generate a concise, coherent summary focusing on the main topics and key information presented on the webpage. It outputs the summary as a plain text string.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage to scrape and summarize. Required if rawHtml is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawHtml", + "type": "string", + "description": "Raw HTML content of a webpage to summarize. Required if url is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary in characters. Defaults to 500.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include section headers in the summary if detected.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for web page fetching when a URL is provided. Defaults to 15 seconds.", + "required": false, + "defaultValue": "15" + } + ], + "returns": { + "type": "object", + "description": "An object with the generated summary text and metadata including the source URL or indication of raw HTML input." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly obtain a concise, readable summary of the main content of a webpage given its URL or raw HTML. It helps extract key points without manual reading of full pages, useful for research, monitoring, or content curation.", + "limitations": "Cannot summarize inaccessible web pages or those requiring interactive navigation or login. Summaries may not capture complex web page layouts or multimedia content meaningfully. Depends on quality of scraped text extraction.", + "examples": [ + "Summarize the main points from https://example.com/latest-news", + "Generate a summary from given raw HTML of a blog post", + "Provide a brief overview of a product page content from a URL" + ] + }, + "tags": [ + "web scraping", + "summary", + "content extraction", + "automation", + "text processing", + "web content" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/article/123\",\"maxSummaryLength\":300}", + "description": "Summarize the article at the specified URL, limiting the summary length to 300 chars." + }, + { + "inputJson": "{\"rawHtml\":\"Test

Headline

Paragraph with detailed info.

\",\"includeHeaders\":true}", + "description": "Generate a summary from provided HTML content including section headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Summary", + "context": null + } + }, + { + "name": "web-scraping.createInvoice", + "description": "This tool accepts a target website URL containing invoice data and scrapes relevant invoice details such as invoice number, date, vendor, items, quantities, prices, and totals. It processes the page content using configured selectors or patterns and outputs a structured invoice JSON object representing the extracted data.", + "category": "web-scraping", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the webpage containing the invoice to scrape.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectors", + "type": "object", + "description": "An optional object mapping invoice field names to CSS selectors or XPath expressions to locate data on the page.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "useHeadlessBrowser", + "type": "boolean", + "description": "Whether to use a headless browser to render dynamic content before scraping.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for page load and scraping before timing out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "authentication", + "type": "object", + "description": "Optional login credentials (username and password) to access protected invoice pages.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the invoice with fields like invoiceNumber, date, vendor, items (array of description, quantity, price), subtotal, tax, total, and currency." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract structured invoice data from an online source, especially if invoices are displayed as web pages without API access. It is suitable for automating data entry or accounting workflows where invoice information must be programmatically retrieved.", + "limitations": "This tool cannot guarantee 100% accuracy if invoice page layouts vary widely or data is rendered in non-text formats (e.g., images without OCR). It cannot process invoices behind complex multi-factor authentication or CAPTCHA without additional support.", + "examples": [ + "Extract invoice data from a supplier's billing portal page.", + "Retrieve invoice details from a public invoice display link for automated accounting.", + "Scrape invoice line items and totals from an online invoice hosted on a secure vendor site." + ] + }, + "tags": [ + "web scraping", + "invoice extraction", + "automation", + "data extraction", + "finance", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/invoice/12345\",\"selectors\":{\"invoiceNumber\":\"#inv-num\",\"date\":\"#inv-date\",\"vendor\":\".vendor-name\",\"items\":\".line-items tr\",\"subtotal\":\"#subtotal\",\"tax\":\"#tax\",\"total\":\"#total\"},\"useHeadlessBrowser\":true,\"timeoutSeconds\":20}", + "description": "Scrapes invoice number, date, vendor, line items, and totals from a sample invoice webpage with given CSS selectors." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "agent-management.analyzeConversion", + "description": "Analyzes AI agent or chatbot interaction data to assess conversion performance. Accepts logs or event data indicating user interactions and conversion events, processes the data to compute metrics such as conversion rate, funnel drop-off points, and conversion times, and outputs a detailed report with insights and visual summary metrics.", + "category": "agent-management", + "parameters": [ + { + "name": "interactionData", + "type": "array", + "description": "Array of interaction event objects capturing user-agent conversations, including timestamps and event types (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEventName", + "type": "string", + "description": "Name of the event that defines a successful conversion (e.g., 'purchaseCompleted').", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowHours", + "type": "number", + "description": "Time window in hours to consider for analyzing recent conversion trends.", + "required": false, + "defaultValue": "24" + }, + { + "name": "funnelStages", + "type": "array", + "description": "Optional ordered list of event names representing funnel stages leading to conversion for drop-off analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeVisualization", + "type": "boolean", + "description": "Flag to include visualization data like funnel charts and conversion graphs in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report object including overall conversion rates, funnel drop-off stats, average time to conversion, and optionally visualization data for insights." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate how effectively an AI agent conversation flow converts users towards a target goal defined by specific events, such as signups or purchases. It helps identify bottlenecks and improves agent strategies by providing detailed conversion analytics.", + "limitations": "This tool relies on pre-collected structured interaction data and cannot collect data by itself. It does not modify agent behavior or directly interact with users.", + "examples": [ + "Analyze conversion rates from chatbot logs to understand user drop-off points.", + "Evaluate recent 7-day conversion trends for AI sales assistant interactions.", + "Generate funnel visualization report for sign-up completion process in chat sessions." + ] + }, + "tags": [ + "analysis", + "conversion", + "agent-management", + "analytics", + "funnel", + "performance" + ], + "examples": [ + { + "inputJson": "{\"interactionData\":[{\"sessionId\":\"s1\",\"timestamp\":1687654321000,\"eventType\":\"startChat\"},{\"sessionId\":\"s1\",\"timestamp\":1687654381000,\"eventType\":\"productView\"},{\"sessionId\":\"s1\",\"timestamp\":1687654441000,\"eventType\":\"purchaseCompleted\"},{\"sessionId\":\"s2\",\"timestamp\":1687654501000,\"eventType\":\"startChat\"},{\"sessionId\":\"s2\",\"timestamp\":1687654561000,\"eventType\":\"productView\"}],\"conversionEventName\":\"purchaseCompleted\",\"timeWindowHours\":48,\"funnelStages\":[\"startChat\",\"productView\",\"purchaseCompleted\"],\"includeVisualization\":true}", + "description": "Analyze chatbot interaction data from the last 48 hours to assess conversion funnel stages for purchase completions, including visualizations of drop-off points." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "agent-management.analyzeAnomaly", + "description": "This tool accepts structured agent operation logs or metrics as input, analyzes them using statistical and machine learning techniques to detect anomalies in agent behavior or performance, and outputs detailed anomaly reports including anomaly type, severity, timestamps, and potential causes.", + "category": "agent-management", + "parameters": [ + { + "name": "agentData", + "type": "object", + "description": "Structured log entries or performance metrics from AI agents to be analyzed for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisWindow", + "type": "number", + "description": "The time window in minutes over which to analyze data for anomalies.", + "required": false, + "defaultValue": "60" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Defines detection sensitivity: low, medium, or high, affecting anomaly detection thresholds.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "anomalyTypes", + "type": "array", + "description": "Specific anomaly categories to detect, e.g., ['performance', 'behavior', 'security']", + "required": false, + "defaultValue": "[\"performance\",\"behavior\"]" + }, + { + "name": "includeRootCauseAnalysis", + "type": "boolean", + "description": "Whether to include potential root cause explanations for detected anomalies in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected anomalies with details like type, severity, timestamps, affected agents, and optional root cause explanations." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring and managing multiple AI agents to identify unusual or unexpected agent behaviors or performance degradations. It helps proactively detect faults, performance drops, or security risks by analyzing logged data or telemetry.", + "limitations": "The tool may not detect anomalies if input data is incomplete or lacks relevant features. It does not automatically resolve issues, only identifies and summarizes anomalies. It requires timely, structured input data from agents to be effective.", + "examples": [ + "Detect anomalous behavior in the last hour for agent cluster A.", + "Find performance anomalies with high sensitivity over the last 3 hours.", + "Analyze agent logs for security-related anomalies and include root cause analysis." + ] + }, + "tags": [ + "agent-management", + "anomaly-detection", + "monitoring", + "analytics", + "AI-agent", + "performance", + "security" + ], + "examples": [ + { + "inputJson": "{\"agentData\":{\"logs\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"agentId\":\"agent01\",\"cpuUsage\":85,\"responseTime\":450},{\"timestamp\":\"2024-06-01T12:05:00Z\",\"agentId\":\"agent01\",\"cpuUsage\":95,\"responseTime\":1020}]},\"analysisWindow\":60,\"sensitivityLevel\":\"high\",\"anomalyTypes\":[\"performance\",\"behavior\"],\"includeRootCauseAnalysis\":true}", + "description": "Analyze recent agent01 performance logs for high sensitivity anomalies, including root cause insights." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "agent-management.analyzeExpense", + "description": "Analyzes business expense data provided as structured input or file to identify trends, categorize spending, detect anomalies, and summarize insights. Inputs can be raw expenses or aggregated data; outputs include categorized totals, anomaly flags, and summarized reports.", + "category": "agent-management", + "parameters": [ + { + "name": "expenseData", + "type": "array", + "description": "Array of expense entries, each including amount, date, category, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "categorizationRules", + "type": "object", + "description": "Optional custom rules or mappings to categorize expenses by keywords or categories.", + "required": false, + "defaultValue": "" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable detection of unusual or suspicious expenses.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summarizePeriod", + "type": "string", + "description": "Period for summarizing expenses (e.g., 'monthly', 'quarterly', 'yearly').", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "currencyCode", + "type": "string", + "description": "Currency code (ISO 4217) for amounts to ensure correct formatting in results.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing categorized expense totals, identified anomalies with details, and a summary report with trends and insights." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent receives raw or structured expense data from business systems or users and needs to generate actionable financial insights. It helps in categorizing spend, detecting suspicious charges, and summarizing spending behavior over a specified period to assist in budgeting and auditing decisions.", + "limitations": "Cannot access external financial databases or verify authenticity of expenses beyond pattern anomalies. Does not handle real-time transaction monitoring or integrate with accounting software directly.", + "examples": [ + "Analyze quarterly expenses to find unusual high-value transactions.", + "Summarize monthly spending by category from the provided expense data.", + "Detect anomalies in recent expense reports according to custom categorization rules." + ] + }, + "tags": [ + "expense", + "analysis", + "business", + "financial", + "categorization", + "anomaly detection", + "summary" + ], + "examples": [ + { + "inputJson": "{\"expenseData\":[{\"amount\":1200.50,\"date\":\"2024-03-15\",\"category\":\"Travel\",\"description\":\"Flight to conference\"},{\"amount\":350,\"date\":\"2024-03-16\",\"category\":\"Meals\",\"description\":\"Team dinner\"}],\"detectAnomalies\":true,\"summarizePeriod\":\"monthly\",\"currencyCode\":\"USD\"}", + "description": "Analyze monthly expenses including travel and meals, detecting anomalies in USD." + }, + { + "inputJson": "{\"expenseData\":[{\"amount\":4500,\"date\":\"2024-01-05\",\"category\":\"Office Supplies\",\"description\":\"New chairs\"},{\"amount\":50,\"date\":\"2024-01-08\",\"category\":\"Meals\",\"description\":\"Coffee meeting\"}],\"categorizationRules\":{\"Office\":\"Office Supplies\"},\"detectAnomalies\":false,\"summarizePeriod\":\"monthly\"}", + "description": "Summarize January expenses with custom categorization rules and no anomaly detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "agent-management.downloadVideo", + "description": "This tool downloads a video file from a specified URL to a designated local or cloud storage path. It accepts the video URL and optional parameters like output file name, format preference, and timeout settings. It processes downloading the video content and outputs the saved file metadata upon success.", + "category": "agent-management", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The direct URL of the video to download", + "required": true, + "defaultValue": "" + }, + { + "name": "outputPath", + "type": "string", + "description": "The local or cloud storage path where the video file will be saved", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional custom name for the saved video file without extension", + "required": false, + "defaultValue": "" + }, + { + "name": "desiredFormat", + "type": "string", + "description": "Preferred video format for the saved file (e.g., mp4, mkv); if different from source, conversion will be attempted", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download to complete before aborting", + "required": false, + "defaultValue": "60" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the file if it already exists at the output path", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the saved video file's metadata: path, size in bytes, format, and download status message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve and locally store or archive video content from a URL, such as collecting training data, saving user-requested videos, or caching media for offline processing. It helps in managing video assets by automating reliable downloading.", + "limitations": "This tool cannot download videos from sites requiring user authentication, complex interaction, or DRM-protected streams. It does not provide built-in video format conversion beyond simple container change if supported.", + "examples": [ + "Download a tutorial video from a public URL and save it locally.", + "Save a webinar recording by specifying a cloud storage path and custom filename.", + "Fetch and store a video with a download timeout and overwrite enabled." + ] + }, + "tags": [ + "video", + "download", + "media", + "file-management", + "agent-management", + "automation", + "streaming" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/tutorial.mp4\",\"outputPath\":\"/videos/tutorials/\",\"fileName\":\"python_basics\",\"desiredFormat\":\"mp4\",\"timeoutSeconds\":120,\"overwrite\":true}", + "description": "Download a tutorial video, save as python_basics.mp4 locally with 2 minutes timeout and overwrite enabled." + }, + { + "inputJson": "{\"videoUrl\":\"https://media.example.org/events/keynote.mkv\",\"outputPath\":\"cloud://storage/videos/\",\"fileName\":\"keynote_2024\",\"desiredFormat\":\"\",\"timeoutSeconds\":90,\"overwrite\":false}", + "description": "Save a keynote video to cloud storage preserving original format with 90 seconds timeout, no overwrite." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "agent-management.analyzeChannel", + "description": "Analyzes communication channels used by AI agents or bots to evaluate message flow, active user engagement, and sentiment. Accepts channel identifiers and optional time ranges, processes message data and metadata, and produces summaries including activity metrics, user participation stats, and sentiment trends to help optimize channel performance.", + "category": "agent-management", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Unique identifier of the communication channel to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start time for analysis period. If omitted, analysis starts from earliest available data.", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end time for analysis period. If omitted, analysis ends at latest available data.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to include sentiment analysis of messages in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxMessages", + "type": "number", + "description": "Maximum number of recent messages to analyze for performance reasons. Defaults to 1000.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "Analysis report object containing channel activity metrics, user engagement statistics, and optional sentiment analysis summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the effectiveness, activity, and user interaction within an AI agent's communication channel, for example to identify peak times, active participants, or overall sentiment toward the bot. This helps in optimizing messaging strategies and improving user experience.", + "limitations": "Does not perform deep content understanding beyond sentiment. Cannot analyze private or encrypted messages. Analysis limited to messages accessible within given time range and maxMessages parameter.", + "examples": [ + "Analyze the support chat channel activity over the past week, including sentiment trends.", + "Get engagement statistics for the 'helpdesk-bot' channel from the last month.", + "Evaluate recent messages in a customer feedback channel to determine user sentiment and active hours." + ] + }, + "tags": [ + "analysis", + "communication", + "channel", + "engagement", + "sentiment", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"support-chat\",\"startTime\":\"2024-04-01T00:00:00Z\",\"endTime\":\"2024-04-07T23:59:59Z\",\"includeSentimentAnalysis\":true,\"maxMessages\":500}", + "description": "Analyze support chat channel activity and sentiment for one week period, max 500 messages." + }, + { + "inputJson": "{\"channelId\":\"helpdesk-bot\",\"includeSentimentAnalysis\":false}", + "description": "Get channel activity summary for 'helpdesk-bot' without sentiment analysis using all available data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "agent-management.analyzeVulnerability", + "description": "This tool accepts vulnerability data in a standardized format and performs a detailed analysis to identify risk severity, exploitability, affected components, and recommended remediation steps. It outputs a structured report summarizing the overall vulnerability impact and mitigation guidance.", + "category": "agent-management", + "parameters": [ + { + "name": "vulnerabilityData", + "type": "object", + "description": "Structured vulnerability details including ID, description, affected systems, and CVSS scores.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextInfo", + "type": "object", + "description": "Optional contextual information such as environment details or asset inventory to tailor the analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRemediation", + "type": "boolean", + "description": "Flag indicating whether to include detailed remediation recommendations in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "Minimum severity level (e.g., low, medium, high, critical) for issues to be included in the analysis report.", + "required": false, + "defaultValue": "low" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive vulnerability analysis report containing severity assessments, exploit risk, affected components, and remediation advice." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess the potential impact and risks of a known vulnerability on specified systems or environments, enabling informed decision-making about mitigation priorities.", + "limitations": "Does not perform real-time vulnerability scanning or discovery. Relies on input data accuracy and does not guarantee detection of zero-day vulnerabilities.", + "examples": [ + "Analyze this CVE data and provide a risk summary for our production environment.", + "Generate a detailed vulnerability impact report including remediation steps for the recent security findings.", + "Assess the exploitability of these vulnerabilities given our current system context and filter out low severity ones." + ] + }, + "tags": [ + "security", + "vulnerability-analysis", + "risk-assessment", + "remediation", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityData\":{\"id\":\"CVE-2023-12345\",\"description\":\"Buffer overflow in XYZ module allows remote code execution.\",\"cvssScore\":8.7,\"affectedSystems\":[\"web-server\",\"database\"]},\"contextInfo\":{\"environment\":\"production\",\"assetInventory\":[\"web-server\",\"database\",\"app-server\"]},\"includeRemediation\":true,\"severityThreshold\":\"medium\"}", + "description": "Analyzing a high severity CVE with context of production environment to generate remediation report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "agent-management.downloadTable", + "description": "Downloads a data table managed by an AI agent or bot into a specified file format. Accepts parameters to identify the agent and table, the desired format (CSV, JSON, or XLSX), and an optional file path to save locally. Processes the table data and outputs a downloadable file or its data URL.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "Unique identifier of the AI agent managing the table to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name or key of the table to be downloaded from the specified agent.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Desired output file format: csv, json, or xlsx.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "savePath", + "type": "string", + "description": "Optional local file path to save the downloaded table. If omitted, returns data as downloadable content.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the success status, the output filename, and either the file path (if saved) or the data content as a string or base64 encoded file content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to export and download structured tabular data managed by an AI agent in common file formats for offline review, reporting, or integration with other systems.", + "limitations": "Cannot download tables not managed by agents or non-tabular data structures. Does not support incremental or partial downloads beyond full table export.", + "examples": [ + "Download the sales data table managed by agent 'agent123' as an Excel file.", + "Get the user activity table from agent 'agentXYZ' in JSON format and save to '/tmp/user_activity.json'.", + "Export the current 'inventory' table from agent 'inventoryBot' as CSV without saving locally to receive as data response." + ] + }, + "tags": [ + "agent", + "download", + "table", + "export", + "data", + "file-format", + "management" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"tableName\":\"salesData\",\"fileFormat\":\"xlsx\",\"savePath\":\"\"}", + "description": "Download the 'salesData' table from 'agent123' as an Excel file and get it as a downloadable content." + }, + { + "inputJson": "{\"agentId\":\"agentXYZ\",\"tableName\":\"userActivity\",\"fileFormat\":\"json\",\"savePath\":\"/tmp/user_activity.json\"}", + "description": "Download the 'userActivity' table from 'agentXYZ' as JSON and save it to the local file path '/tmp/user_activity.json'." + }, + { + "inputJson": "{\"agentId\":\"inventoryBot\",\"tableName\":\"inventory\",\"fileFormat\":\"csv\"}", + "description": "Download the 'inventory' table from 'inventoryBot' as CSV without specifying save path, to retrieve the data content directly." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "agent-management.uploadVideo", + "description": "Uploads a video file to a specified AI agent's media repository. Accepts video file data along with metadata such as title, description, and tags. Processes the upload by validating file format and size, then stores the video for use by the agent. Returns an upload confirmation with video ID and status.", + "category": "agent-management", + "parameters": [ + { + "name": "agentId", + "type": "string", + "description": "Unique identifier of the AI agent to which the video will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "videoFile", + "type": "object", + "description": "Binary data or file reference of the video to upload, including filename and MIME type.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the video being uploaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief description of the video's content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags for categorizing or indexing the video.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isPublic", + "type": "boolean", + "description": "Flag indicating if the video should be publicly accessible or private to the agent.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status, unique video ID, and any error messages if upload failed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to add video content to a specific AI agent's media library, such as training videos, demo clips, or user content that the agent can reference or present.", + "limitations": "This tool does not perform video encoding or compression; videos must be preprocessed externally. It also does not stream videos, only handles upload and storage.", + "examples": [ + "Upload a training video to the agent 'agent123' with title and tags.", + "Upload a private demo video to an AI assistant agent.", + "Attempt to upload a large video file exceeding size limits, expecting an error response." + ] + }, + "tags": [ + "upload", + "video", + "media", + "agent-management", + "storage", + "content-management" + ], + "examples": [ + { + "inputJson": "{\"agentId\":\"agent123\",\"videoFile\":{\"filename\":\"demo.mp4\",\"mimeType\":\"video/mp4\",\"data\":\"\"},\"title\":\"Demo Video\",\"description\":\"A demonstration video for the agent.\",\"tags\":[\"demo\",\"training\"],\"isPublic\":true}", + "description": "Upload a public demo video with metadata to agent 'agent123'." + }, + { + "inputJson": "{\"agentId\":\"agent987\",\"videoFile\":{\"filename\":\"private_clip.mov\",\"mimeType\":\"video/quicktime\",\"data\":\"\"},\"isPublic\":false}", + "description": "Upload a private video clip without title or description to agent 'agent987'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "agent-management.analyzeYAML", + "description": "Analyzes YAML configuration files for AI agents or bots to extract structure, validate syntax, and identify key components and dependencies, returning a comprehensive report on validity, structure, warnings, and detected schema elements.", + "category": "agent-management", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML content string to be analyzed by the tool.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Flag to perform schema validation against a predefined agent configuration schema if true.", + "required": false, + "defaultValue": "false" + }, + { + "name": "returnWarnings", + "type": "boolean", + "description": "Flag indicating whether to include non-critical warnings in the analysis output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing syntax validity, structural outline, semantic validation results, detected key fields, and optional warnings and errors found." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents managing or deploying AI bots who need to programmatically verify and understand YAML configurations for agents or related automation tools, ensuring correctness and extracting meaningful structure before execution.", + "limitations": "The tool cannot fix YAML files or generate YAML from other formats; it only analyzes given YAML content. It may not support custom or proprietary extensions outside typical YAML agent configuration schemas.", + "examples": [ + "Analyze the YAML config to check for syntax errors and return a summary of its structure.", + "Validate if a YAML agent definition conforms to expected schema and identify missing or deprecated fields.", + "Extract key dependencies and components from a YAML file describing a bot's setup or deployment config." + ] + }, + "tags": [ + "analysis", + "yaml", + "agent-management", + "configuration", + "validation", + "parsing" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"name: myAgent\\nversion: 1.0\\ncomponents:\\n - type: sensor\\n id: sensor1\\n - type: processor\\n id: proc1\",\"validateSchema\":true,\"returnWarnings\":true}", + "description": "Analyze an agent YAML config with schema validation enabled and include warnings." + }, + { + "inputJson": "{\"yamlContent\":\"invalid_yaml: [unclosed_sequence\",\"validateSchema\":false,\"returnWarnings\":false}", + "description": "Analyze malformed YAML content to detect syntax errors without schema validation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "agent-management.sendThread", + "description": "Sends a message thread within a communication platform by specifying recipients, message content, and optional metadata. Processes inputs to deliver the thread to targeted users or groups, returning delivery status and thread identifiers.", + "category": "agent-management", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier of the thread to send. If absent, a new thread will be created.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers (user IDs or group IDs) to receive the thread message.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The main content of the thread message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata associated with the thread message such as tags, priority, or timestamps.", + "required": false, + "defaultValue": "" + }, + { + "name": "sendAsBroadcast", + "type": "boolean", + "description": "Flag to indicate if the message should be sent as a broadcast (true) or as a threaded conversation (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, including threadId, messageId, and delivery confirmations for recipients." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send a message thread to one or multiple recipients within a communication platform, managing either new or existing threads. It suits scenarios like bot-initiated notifications, automated conversation starters, or group updates.", + "limitations": "This tool cannot manage the retrieval or parsing of existing threads beyond sending messages; it also does not handle media attachments or complex message formatting by itself.", + "examples": [ + "Send a new announcement thread to a group of users.", + "Continue an existing thread by sending a follow-up message.", + "Broadcast an urgent update to all users without threading." + ] + }, + "tags": [ + "communication", + "thread", + "messaging", + "bot", + "notification", + "agent-management" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"user123\",\"user456\"],\"message\":\"Project update: the deployment is scheduled for tomorrow at 9 AM.\",\"sendAsBroadcast\":false}", + "description": "Send a message thread to specific users with an update about a project deployment." + }, + { + "inputJson": "{\"threadId\":\"thread987\",\"recipients\":[\"user123\"],\"message\":\"Following up on your last message, do you need any assistance?\"}", + "description": "Send a follow-up message within an existing thread to a single user." + }, + { + "inputJson": "{\"recipients\":[\"group_sales\"],\"message\":\"Urgent: Please review the updated sales targets.\",\"sendAsBroadcast\":true}", + "description": "Broadcast an urgent message to the sales group without threading." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "agent-management.formatQuery", + "description": "Formats a raw query string or object into a standardized, syntactically correct query format suitable for code generation or execution. Accepts queries as strings or structured objects, applies formatting rules, indentation, or style preferences, and outputs a clean, consistent query string.", + "category": "agent-management", + "parameters": [ + { + "name": "queryInput", + "type": "string", + "description": "The raw query string or JSON string representing the query object to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming or query language of the input query (e.g., SQL, GraphQL, MongoDB).", + "required": true, + "defaultValue": "SQL" + }, + { + "name": "style", + "type": "string", + "description": "Formatting style preference such as 'compact', 'pretty', or 'standard'.", + "required": false, + "defaultValue": "pretty" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indenting nested structures in the output query.", + "required": false, + "defaultValue": "2" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "If true, keywords in the query will be transformed to uppercase.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted query as a string and metadata such as the detected language and formatting style." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives raw or inconsistent query inputs that need to be normalized and formatted for readability, execution, or further processing. It helps ensure queries comply with expected syntax and style conventions before use by downstream tools or agents.", + "limitations": "Does not validate query semantics or correctness beyond formatting. It cannot fix logic errors or optimize queries. The tool supports common query languages only and may not handle highly complex or proprietary query syntaxes.", + "examples": [ + "Format a raw SQL string to a pretty, indented format with uppercase keywords.", + "Convert a JSON GraphQL query object into a clean, standard GraphQL string.", + "Apply consistent formatting to a MongoDB query expressed as a JSON string." + ] + }, + "tags": [ + "formatting", + "query", + "code", + "agent-management", + "normalization", + "syntax", + "prettify" + ], + "examples": [ + { + "inputJson": "{\"queryInput\":\"select id, name from users where status = 'active' order by name\",\"language\":\"SQL\",\"style\":\"pretty\",\"indentation\":4,\"uppercaseKeywords\":true}", + "description": "Format a simple SQL select statement into pretty format with uppercase keywords and 4-space indentation." + }, + { + "inputJson": "{\"queryInput\":\"{ user(id: \\\"123\\\") { name email } }\",\"language\":\"GraphQL\",\"style\":\"standard\",\"indentation\":2,\"uppercaseKeywords\":false}", + "description": "Format a basic GraphQL query string using standard style with 2-space indentation, preserving keyword case." + }, + { + "inputJson": "{\"queryInput\":\"{ \\\"find\\\": \\\"users\\\", \\\"filter\\\": { \\\"status\\\": \\\"active\\\" } }\",\"language\":\"MongoDB\",\"style\":\"compact\",\"indentation\":2,\"uppercaseKeywords\":false}", + "description": "Format a MongoDB query expressed as a JSON string into a compact single-line format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "agent-management.composeComment", + "description": "Generates a structured, context-aware comment text for AI agent communication or management purposes. Accepts inputs such as recipient identity, message context, tone, and optional metadata, then composes a coherent comment string output that can be used in dialogue interfaces, logs, or notifications.", + "category": "agent-management", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "The identifier or role of the comment recipient (e.g., 'user', 'admin', or username).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContext", + "type": "string", + "description": "Context or topic of the comment to guide content generation (e.g., 'task update', 'error notification').", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style for the comment, such as 'formal', 'friendly', or 'neutral'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "additionalDetails", + "type": "object", + "description": "Optional object containing extra metadata or details to include or reference in the comment.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the comment text output, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed comment string under 'commentText' and metadata such as the used tone and language." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate natural, contextually appropriate comments for communication with users or other agents, such as automated responses, status updates, or explanations. It helps maintain consistent tone and clarity in interactions.", + "limitations": "This tool cannot respond to highly technical queries requiring domain-specific expertise beyond the provided context; it does not generate multi-turn dialogues or handle conversational memory.", + "examples": [ + "Compose a friendly comment updating a user about task progress.", + "Generate a formal error notification comment addressed to an admin.", + "Create a neutral status comment summarizing recent actions for logs." + ] + }, + "tags": [ + "comment", + "communication", + "AI agent", + "message generation", + "tone", + "context" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"user123\", \"messageContext\":\"task update\", \"tone\":\"friendly\", \"additionalDetails\":{\"taskName\":\"Report generation\", \"status\":\"completed\"}, \"language\":\"en\"}", + "description": "Compose a friendly progress comment to user123 about the completed Report generation task." + }, + { + "inputJson": "{\"recipient\":\"admin\", \"messageContext\":\"error notification\", \"tone\":\"formal\", \"additionalDetails\":{\"errorCode\":\"504\", \"service\":\"Data API\"}, \"language\":\"en\"}", + "description": "Generate a formal comment notifying an admin about a 504 error in the Data API service." + }, + { + "inputJson": "{\"recipient\":\"team\", \"messageContext\":\"meeting reminder\", \"tone\":\"neutral\", \"additionalDetails\":{\"meetingTime\":\"3 PM\", \"agenda\":\"Project kickoff\"}, \"language\":\"en\"}", + "description": "Create a neutral comment reminding the team about the 3 PM Project kickoff meeting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "agent-management.composeArticle", + "description": "Generates a structured, coherent article based on specified topic, style, and length. Accepts input parameters including topic keywords, desired tone, article length, and optional outline points. Uses natural language generation to produce an articulated article text output suitable for blog posts, reports, or publication.", + "category": "agent-management", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the article to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The writing tone or style of the article (e.g., formal, informal, persuasive).", + "required": false, + "defaultValue": "formal" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the article in words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "outlinePoints", + "type": "array", + "description": "Optional array of key points or subtopics to include in the article.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the article (e.g., professionals, general public).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeReferences", + "type": "boolean", + "description": "Flag to include or generate citations and references when possible.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete composed article text along with metadata such as word count and article title." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a written article on a given topic with customizable style and length. It is ideal for generating blog posts, informational content, or draft documents that require coherent, topic-focused narrative structure. The tool simplifies article composition by combining topic input and optional outlines to produce ready-to-publish text.", + "limitations": "Cannot create deeply technical or highly specialized content without external expert input. The factual accuracy depends on the underlying model and current knowledge cutoff, so verification is recommended.", + "examples": [ + "Write a 700-word formal article about climate change impacts including key recent developments.", + "Create an informal 300-word blog post about the benefits of meditation for mental health.", + "Generate a persuasive article targeting young professionals about adopting sustainable lifestyle habits with references included." + ] + }, + "tags": [ + "article", + "composition", + "content-generation", + "writing", + "natural-language", + "document", + "AI-agent" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of electric vehicles\",\"tone\":\"formal\",\"length\":600,\"outlinePoints\":[\"Environmental impact\",\"Cost savings\",\"Government incentives\"],\"targetAudience\":\"general public\",\"includeReferences\":true}", + "description": "Compose a formal 600-word article about the benefits of electric vehicles with specified outline points and references." + }, + { + "inputJson": "{\"topic\":\"Remote work tips\",\"tone\":\"informal\",\"length\":400,\"outlinePoints\":[],\"targetAudience\":\"professionals\",\"includeReferences\":false}", + "description": "Generate an informal 400-word article with general advice on remote work productivity." + }, + { + "inputJson": "{\"topic\":\"Healthy eating habits\",\"tone\":\"persuasive\",\"length\":500,\"outlinePoints\":[\"Meal planning\",\"Reducing sugar intake\"],\"targetAudience\":\"young adults\",\"includeReferences\":false}", + "description": "Produce a persuasive article encouraging healthy eating habits aimed at young adults, incorporating meal planning and sugar reduction." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "agent-management.generateConversion", + "description": "Generates a conversion analytics report for AI agents by processing input event data and defining conversion criteria. Accepts event logs and conversion definitions, processes them to calculate conversion rates and funnel metrics, outputs a structured summary of conversion performance to help evaluate agent success.", + "category": "agent-management", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of event objects representing user actions with timestamps and agent identifiers.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionCriteria", + "type": "object", + "description": "Defines the conversion event types or conditions to identify successful outcomes.", + "required": true, + "defaultValue": "" + }, + { + "name": "agentId", + "type": "string", + "description": "Identifier for the AI agent whose conversions are to be generated. Filters eventData if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional start and end timestamps to limit eventData considered in generating conversions.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFunnelSteps", + "type": "boolean", + "description": "Whether to generate detailed funnel step conversion rates along the path to conversion.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing total conversions, conversion rate, and optionally funnel step metrics for the specified agent and time range." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent manager wants to analyze conversion performance metrics from event data related to agent interactions or outputs, to optimize agent workflows and measure success rates against defined goals.", + "limitations": "This tool cannot process raw unstructured text logs or perform real-time event tracking; it relies on structured event data input. It does not provide causal analysis or recommendations, only conversion metrics.", + "examples": [ + "Generate conversion metrics for agent 'Agent007' over last month based on events and conversion criteria.", + "Calculate funnel conversion steps for a newly deployed shopping assistant agent using defined criteria.", + "Report total conversions and conversion rate for an AI chatbot across a specific time range." + ] + }, + "tags": [ + "agent-management", + "analytics", + "conversion", + "reporting", + "AI agents", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"agentId\":\"Agent007\",\"eventType\":\"chatStarted\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"agentId\":\"Agent007\",\"eventType\":\"purchaseMade\",\"timestamp\":\"2024-05-01T10:05:00Z\"}],\"conversionCriteria\":{\"conversionEvent\":\"purchaseMade\"},\"agentId\":\"Agent007\",\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"includeFunnelSteps\":true}", + "description": "Generate detailed conversion report with funnel steps for Agent007 in May 2024." + }, + { + "inputJson": "{\"eventData\":[{\"agentId\":\"SalesBot123\",\"eventType\":\"leadCaptured\",\"timestamp\":\"2024-06-10T14:00:00Z\"},{\"agentId\":\"SalesBot123\",\"eventType\":\"demoScheduled\",\"timestamp\":\"2024-06-10T14:30:00Z\"}],\"conversionCriteria\":{\"conversionEvent\":\"demoScheduled\"},\"agentId\":\"SalesBot123\",\"includeFunnelSteps\":false}", + "description": "Calculate simple conversion rate for SalesBot123 without funnel step details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "agent-management.generateGraph", + "description": "Generates a visual graph representing relationships or workflows between AI agents or bots based on provided metadata. Accepts arrays of agents and connection definitions, processes structural or behavioral data, and outputs a graph definition suitable for visualization or further analysis.", + "category": "agent-management", + "parameters": [ + { + "name": "agents", + "type": "array", + "description": "A list of agent objects with unique ids and optional metadata used as nodes in the graph.", + "required": true, + "defaultValue": "" + }, + { + "name": "connections", + "type": "array", + "description": "List of connection objects defining edges between agent nodes, specifying source, target, and relation type.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate, e.g., 'directed', 'undirected', or 'workflow'.", + "required": false, + "defaultValue": "directed" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to embed agent metadata in the graph nodes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format such as 'JSON', 'DOT', or 'GraphML'.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated graph data in the requested format, including nodes, edges, and optional metadata." + }, + "aiAgent": { + "useCase": "Use this tool when you need to visually or programmatically represent relationships and workflows between multiple AI agents or bots, such as mapping their interactions or dependencies in a management dashboard or automated system.", + "limitations": "This tool does not render visual images; it generates graph data structures that require external visualization tools. It also does not analyze agent behavior beyond provided metadata and connections.", + "examples": [ + "Generate a directed graph showing communication flow between three AI agents.", + "Output an undirected graph of bot dependencies with embedded metadata in GraphML format.", + "Create a workflow graph from a list of agents and their task sequences in DOT format." + ] + }, + "tags": [ + "graph generation", + "agent relationships", + "workflow visualization", + "AI management", + "data modeling" + ], + "examples": [ + { + "inputJson": "{\"agents\":[{\"id\":\"agent1\",\"name\":\"Bot A\"},{\"id\":\"agent2\",\"name\":\"Bot B\"},{\"id\":\"agent3\",\"name\":\"Bot C\"}],\"connections\":[{\"source\":\"agent1\",\"target\":\"agent2\",\"type\":\"sendsMessage\"},{\"source\":\"agent2\",\"target\":\"agent3\",\"type\":\"calls\"}],\"graphType\":\"directed\",\"includeMetadata\":true,\"outputFormat\":\"JSON\"}", + "description": "Generate a directed graph showing message flow and call relations among three agents with metadata included, output as JSON." + }, + { + "inputJson": "{\"agents\":[{\"id\":\"a1\",\"role\":\"helper\"},{\"id\":\"a2\",\"role\":\"processor\"}],\"connections\":[{\"source\":\"a1\",\"target\":\"a2\",\"type\":\"dependsOn\"}],\"graphType\":\"undirected\",\"includeMetadata\":false,\"outputFormat\":\"DOT\"}", + "description": "Create an undirected dependency graph between two agents without metadata, output in DOT format for visualization tools." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "agent-management.generateDiagram", + "description": "Generates a structured diagram representing AI agent workflows from a defined input schema. Accepts JSON inputs describing agents, actions, and their interactions, and produces a visual diagram in SVG or PNG format illustrating the workflow, dependencies, and communication paths among agents.", + "category": "agent-management", + "parameters": [ + { + "name": "workflowDefinition", + "type": "object", + "description": "JSON object defining the AI agent workflow, including agents, actions, triggers, and connections.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format, either 'SVG' or 'PNG'.", + "required": true, + "defaultValue": "SVG" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining diagram elements for clarity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "layoutStyle", + "type": "string", + "description": "Layout style of the diagram, options: 'hierarchical', 'forceDirected', or 'circular'.", + "required": false, + "defaultValue": "hierarchical" + }, + { + "name": "theme", + "type": "string", + "description": "Color theme of the diagram, such as 'light' or 'dark'.", + "required": false, + "defaultValue": "light" + } + ], + "returns": { + "type": "object", + "description": "An object containing the diagram as a base64-encoded image string, the format, and metadata about the diagram." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize complex multi-agent workflows, enabling clearer understanding and communication of agent interactions and processes. It assists in planning, debugging, and documentation of agent-based systems.", + "limitations": "Cannot generate diagrams without a structured workflow definition. Does not support freeform or unstructured input. Visual styling options are limited to predefined layouts and themes.", + "examples": [ + "Generate an SVG diagram of a chatbot agent workflow with action triggers and messaging nodes.", + "Produce a PNG image visualizing agent interactions in a helpdesk automation system.", + "Create a hierarchical diagram including a legend to explain node types and connections." + ] + }, + "tags": [ + "agent-management", + "diagram-generation", + "workflow-visualization", + "ai-agent", + "workflow", + "visualization", + "bot-management", + "planning" + ], + "examples": [ + { + "inputJson": "{\"workflowDefinition\":{\"agents\":[{\"id\":\"agent1\",\"name\":\"QueryHandler\"},{\"id\":\"agent2\",\"name\":\"DataFetcher\"}],\"actions\":[{\"from\":\"agent1\",\"to\":\"agent2\",\"type\":\"requestData\"}]},\"outputFormat\":\"SVG\",\"includeLegend\":true,\"layoutStyle\":\"hierarchical\",\"theme\":\"light\"}", + "description": "Generate a hierarchical SVG diagram of a query handler agent requesting data from a data fetcher agent, including a legend." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeSession", + "description": "Analyzes a prompt engineering session by accepting session logs containing prompts, AI responses, timestamps, and metadata; processes to identify prompt effectiveness, response quality, user interaction patterns, and failure points; outputs a detailed report with metrics and recommendations to optimize future sessions.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "sessionLogs", + "type": "array", + "description": "An array of session interaction objects; each contains a prompt string, AI response string, timestamp, and optional metadata; required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Level of analysis detail: 'basic' for summary statistics, 'detailed' for in-depth insights and pattern recognition.", + "required": false, + "defaultValue": "basic" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include optimization recommendations in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone to interpret timestamps; defaults to UTC if unspecified.", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "language", + "type": "string", + "description": "Language code to filter or prioritize session prompts and responses, e.g. 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing session metrics (e.g., average response length, success rates), qualitative metrics (e.g., prompt clarity scores), identified issues (e.g., common failure modes), user behavior insights, and actionable recommendations if requested." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents managing or optimizing prompt design evaluation workflows. When an agent has session logs from prompt and response interactions, it can invoke this tool to derive actionable insights to improve prompt effectiveness, identify failure patterns, or enhance user engagement strategies.", + "limitations": "Cannot access external data not included in sessionLogs; insights depend on completeness and quality of the provided session data; does not directly modify prompts or models but provides recommendations only.", + "examples": [ + "Analyze the effectiveness of last week's prompt engineering session logs for performance bottlenecks.", + "Provide a detailed report including recommendations for improving prompt clarity in an English language session.", + "Summarize user interaction patterns and failure points from multi-day prompt-response session logs." + ] + }, + "tags": [ + "prompt-engineering", + "analysis", + "session-analytics", + "optimization", + "ai-interactions", + "user-behavior" + ], + "examples": [ + { + "inputJson": "{\"sessionLogs\":[{\"prompt\":\"Explain the theory of relativity.\",\"response\":\"The theory of relativity was developed by Einstein...\",\"timestamp\":\"2024-06-01T12:00:00Z\"},{\"prompt\":\"What is quantum computing?\",\"response\":\"Quantum computing uses quantum bits...\",\"timestamp\":\"2024-06-01T12:05:00Z\"}],\"analysisDepth\":\"detailed\",\"includeRecommendations\":true,\"timeZone\":\"UTC\",\"language\":\"en\"}", + "description": "Analyze two session interactions with detailed depth including recommendations in English UTC time zone." + }, + { + "inputJson": "{\"sessionLogs\":[{\"prompt\":\"Generate a haiku about the ocean.\",\"response\":\"Waves kiss sandy shore...\",\"timestamp\":\"2024-06-02T08:30:00Z\"}],\"includeRecommendations\":false}", + "description": "Perform a basic analysis without recommendations on a single prompt-response pair." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeReference", + "description": "Analyzes a given reference text or URL for key concepts, context relevance, citation quality, and prompt integration suggestions. Accepts plain text or a web URL as input, extracts and evaluates the content, and outputs a structured analysis report to aid prompt refinement and better AI understanding.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "referenceContent", + "type": "string", + "description": "The raw text or URL of the reference material to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of the reference input: 'text' for raw text, 'url' for a web link. Defaults to 'text'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the reference content, e.g., 'en' for English. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxConcepts", + "type": "number", + "description": "Maximum number of key concepts to extract from the reference, capped at 20.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeCitationQuality", + "type": "boolean", + "description": "Whether to evaluate the citation credibility and source reliability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report including extracted key concepts, context relevance score, citation quality evaluation if requested, and suggestions to incorporate the reference effectively into AI prompts." + }, + "aiAgent": { + "useCase": "Use this tool when needing to incorporate external reference material into AI prompts with context-aware understanding. Ideal for prompt engineers refining instructions that leverage cited knowledge or for content summarization agents ensuring references are valid and relevant.", + "limitations": "Cannot access content behind paywalls or dynamically loaded web content. Does not verify factual correctness beyond citation credibility indicators. May struggle with non-textual references such as images or videos.", + "examples": [ + "Analyze the reference text to identify main topics and evaluate its reliability for a medical prompt.", + "Given a URL, extract key ideas and suggest prompt enhancements that leverage the referenced information.", + "Assess a research paper excerpt for context relevance and advise on how to cite it effectively in a prompt." + ] + }, + "tags": [ + "prompt-engineering", + "analysis", + "reference", + "content-analysis", + "citation", + "AI-prompt", + "contextualization" + ], + "examples": [ + { + "inputJson": "{\"referenceContent\":\"https://en.wikipedia.org/wiki/Artificial_intelligence\",\"contentType\":\"url\",\"language\":\"en\",\"maxConcepts\":5,\"includeCitationQuality\":true}", + "description": "Analyze the Wikipedia page on artificial intelligence to extract key concepts and evaluate the credibility of the source." + }, + { + "inputJson": "{\"referenceContent\":\"Artificial intelligence (AI) involves machines simulating human intelligence processes such as learning, reasoning, and self-correction.\",\"contentType\":\"text\",\"language\":\"en\",\"maxConcepts\":3,\"includeCitationQuality\":false}", + "description": "Analyze a brief AI definition text to extract main concepts and relevance without citation quality assessment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeTrend", + "description": "Analyzes input prompt data over time to identify trends and patterns in prompt usage, structure, and performance. Accepts prompt entries with timestamps and optional metadata, performs statistical and linguistic analysis, and outputs key trend insights, such as popularity growth, emerging prompt styles, and performance correlations.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptData", + "type": "array", + "description": "An array of prompt usage records, each including prompt text, timestamp, and optional metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeframe", + "type": "object", + "description": "Time range for trend analysis, including start and end timestamps in ISO format.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metrics to analyze such as 'frequency', 'averageResponseLength', 'sentimentScore'.", + "required": false, + "defaultValue": "[\"frequency\"]" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the prompts for linguistic analysis (e.g., 'en', 'es').", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "minOccurrences", + "type": "number", + "description": "Minimum number of occurrences a prompt pattern must have to be considered in trend analysis.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing trend findings including top trending prompt patterns, changes in frequency over time, linguistic style shifts, and correlations with user engagement metrics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand how prompts evolve over time within a dataset, identify emerging prompt trends, or optimize prompt crafting strategies based on historical usage patterns and performance data.", + "limitations": "Does not predict future trends beyond analyzed data; requires structured input data with timestamps; may not capture trends accurately if input data is sparse or biased.", + "examples": [ + "Analyze prompt trends in user-submitted data over the past month to identify popular prompt formats.", + "Identify shifts in prompt complexity and average response length over the past year.", + "Evaluate correlations between prompt sentiment and response quality in a given dataset." + ] + }, + "tags": [ + "trend-analysis", + "prompt-engineering", + "analytics", + "time-series", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"promptData\":[{\"text\":\"Write a poem about nature.\",\"timestamp\":\"2024-04-01T10:00:00Z\",\"metadata\":{\"responseLength\":120}},{\"text\":\"Generate a creative story on space travel.\",\"timestamp\":\"2024-04-02T11:30:00Z\",\"metadata\":{\"responseLength\":350}},{\"text\":\"Write a poem about nature.\",\"timestamp\":\"2024-04-15T09:20:00Z\",\"metadata\":{\"responseLength\":130}}],\"timeframe\":{\"start\":\"2024-04-01T00:00:00Z\",\"end\":\"2024-04-30T23:59:59Z\"},\"metrics\":[\"frequency\",\"averageResponseLength\"],\"language\":\"en\",\"minOccurrences\":2}", + "description": "Analyze prompt usage frequency and average response length for prompts submitted in April 2024, focusing on prompts appearing at least twice." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeReply", + "description": "Analyzes an AI-generated reply to evaluate its relevance, clarity, tone, and completeness based on provided criteria and original prompt context. Accepts the reply text and optional prompt context, then returns a detailed assessment including detected sentiment, adherence to instructions, and suggestions for improvement.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The AI-generated reply text to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "promptContext", + "type": "string", + "description": "(Optional) The original prompt or context for which the reply was generated to aid analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisCriteria", + "type": "array", + "description": "List of specific criteria to evaluate in the reply such as relevance, tone, clarity, completeness.", + "required": false, + "defaultValue": "[\"relevance\",\"clarity\",\"tone\",\"completeness\"]" + }, + { + "name": "detectSentiment", + "type": "boolean", + "description": "Flag to include sentiment detection in the analysis (e.g., positive, neutral, negative).", + "required": false, + "defaultValue": "true" + }, + { + "name": "suggestImprovements", + "type": "boolean", + "description": "Flag to provide actionable suggestions for improving the reply if deficiencies are found.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report detailing evaluation scores for each criterion, detected sentiment, compliance with prompt context, and improvement suggestions if applicable." + }, + "aiAgent": { + "useCase": "Use this tool to evaluate AI-generated replies in conversational or content generation workflows. It helps verify if replies meet desired quality standards such as relevance and clarity, ensuring better user engagement and satisfaction. Ideal for prompt engineers or automated systems monitoring AI output quality.", + "limitations": "Cannot fully judge factual accuracy or nuanced human intent beyond textual cues. The quality of analysis depends on the clarity of input reply and optional context provided. It may misinterpret sarcasm or implicit content.", + "examples": [ + "Analyze the reply to a customer support prompt to ensure politeness and completeness.", + "Evaluate an AI-generated answer against the original question to detect if it stays on topic.", + "Review a chatbot response for tone appropriateness and provide suggestions to improve friendliness." + ] + }, + "tags": [ + "prompt-engineering", + "analysis", + "quality-evaluation", + "text-analysis", + "ai-generated-content", + "feedback", + "reply-evaluation" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thank you for reaching out. We have processed your request and will update you shortly.\",\"promptContext\":\"Customer asked about the status of their order.\",\"analysisCriteria\":[\"relevance\",\"tone\",\"completeness\"],\"detectSentiment\":true,\"suggestImprovements\":true}", + "description": "Analyzing a customer service reply for relevance to order status query, polite tone, and whether the reply is complete." + }, + { + "inputJson": "{\"replyText\":\"Sorry, I don't know that.\",\"promptContext\":\"User asked for an explanation of blockchain technology.\",\"analysisCriteria\":[\"relevance\",\"clarity\"],\"detectSentiment\":true,\"suggestImprovements\":true}", + "description": "Evaluate a short AI reply that fails to address the user's question adequately, to identify clarity and usefulness issues." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeHTML", + "description": "Analyzes provided HTML content to evaluate prompt engineering aspects such as prompt structure, clarity, length, and presence of AI-related components. Accepts raw HTML string input and returns a detailed report assessing how effectively prompts are embedded or structured within the HTML, helping improve prompt design in web-based interfaces.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML string to be analyzed for prompt engineering qualities.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxPromptLength", + "type": "number", + "description": "Maximum recommended length for each prompt segment; segments exceeding this length are flagged.", + "required": false, + "defaultValue": "500" + }, + { + "name": "checkForAIKeywords", + "type": "boolean", + "description": "Flag to enable scanning of AI-related keywords and phrases within prompts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractPrompts", + "type": "boolean", + "description": "If true, extracts and returns textual prompt content found inside the HTML.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing prompt statistics, detected prompt elements, flagged issues, and optionally extracted prompt texts." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate or optimize prompt presentation embedded within HTML content, such as web-based user interfaces or chatbot pages. It helps identify prompt clarity, structure, and length issues directly from the HTML source, facilitating better prompt engineering.", + "limitations": "This tool analyzes prompt structures only within the provided HTML input and does not execute or render the HTML. It cannot understand dynamic content loaded via scripts or analyze backend prompt usage not visible in the HTML source.", + "examples": [ + "Analyze the prompt quality embedded in this chatbot HTML snippet.", + "Check the HTML page containing user prompts for clarity and length issues.", + "Extract all prompt text elements from this help widget's HTML for review." + ] + }, + "tags": [ + "prompt-analysis", + "html", + "web-interface", + "prompt-optimization", + "ai-prompt", + "text-extraction", + "validation" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Enter your question for AI:

\",\"maxPromptLength\":100,\"checkForAIKeywords\":true,\"extractPrompts\":true}", + "description": "Analyze a simple HTML snippet containing a user input prompt." + }, + { + "inputJson": "{\"htmlContent\":\"

Chatbot Prompt

\",\"maxPromptLength\":200,\"checkForAIKeywords\":false,\"extractPrompts\":true}", + "description": "Analyze HTML with a textarea prompt but skip AI keyword checking." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeIncident", + "description": "Analyzes a detailed incident report prompt to identify key elements, potential ambiguities, and improvement suggestions. Accepts incident description and optional context to evaluate prompt clarity and completeness, returning an analysis with extracted entities, identified issues, and recommendations to optimize prompt quality for AI incident assessment models.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "incidentPrompt", + "type": "string", + "description": "The complete text of the incident report prompt to analyze for clarity and quality.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional background or domain context for incident to inform analysis and improve relevance of suggestions.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include actionable suggestions for improving the incident prompt clarity and informativeness.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis object containing extracted incident entities, detected prompt ambiguities or missing information, and a list of actionable recommendations for prompt enhancement." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess the quality of an incident report prompt to ensure accurate, clear, and complete input before issuing further tasks like summarization, classification, or response generation. It helps enhance prompt engineering by identifying weaknesses and suggesting improvements specific to security incident contexts.", + "limitations": "Cannot access or verify factual accuracy of incident content; analysis is limited to prompt text quality, clarity, and structure, not incident validity or real-world data.", + "examples": [ + "Analyze the given incident prompt for missing details and clarity issues.", + "Check if the incident description includes key security event attributes and suggest improvements.", + "Evaluate ambiguity in the incident prompt and recommend ways to enhance model understanding." + ] + }, + "tags": [ + "prompt-engineering", + "incident-analysis", + "security", + "AI-prompt-optimization", + "clarity-check", + "recommendations" + ], + "examples": [ + { + "inputJson": "{\"incidentPrompt\":\"Unauthorized access was detected on server X. Details are unclear.\",\"context\":\"Security breach in corporate IT environment.\",\"includeRecommendations\":true}", + "description": "Analyze a vague incident prompt describing an unauthorized access event with insufficient details, requesting recommendations." + }, + { + "inputJson": "{\"incidentPrompt\":\"Multiple failed login attempts followed by account lockout for user123.\",\"context\":\"Authentication system monitoring.\",\"includeRecommendations\":false}", + "description": "Analyze a more detailed incident prompt about login failures without requesting recommendations, focusing on entity extraction and ambiguity detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeThread", + "description": "Analyzes a conversation thread consisting of multiple messages to identify prompt themes, evaluate clarity and relevance, detect potential ambiguities, and provide suggestions to improve overall prompt effectiveness. Accepts input as an array of message objects and outputs a detailed analysis report.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "threadMessages", + "type": "array", + "description": "An array of message objects forming the conversation thread to analyze. Each message should include properties like sender and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') of the messages for accurate linguistic analysis.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to include sentiment analysis for emotional context of messages.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum number of words allowed in the summary section of the output.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including identified prompt themes, clarity scores, ambiguity flags, sentiment insights if requested, and improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool to analyze multi-message prompt threads from users or conversation logs to understand overall prompt quality, clarity, and thematic consistency before generating or refining AI prompts.", + "limitations": "The tool does not generate new prompts or rephrase messages. It relies on clear input structure and may have limited accuracy on very informal or highly technical conversations.", + "examples": [ + "Analyze a customer support chat to identify unclear or ambiguous prompts.", + "Evaluate a user's multi-turn prompt for theme consistency and clarity.", + "Provide improvement suggestions on a developer's discussion thread regarding prompt design." + ] + }, + "tags": [ + "analysis", + "prompt", + "thread", + "conversation", + "clarity", + "sentiment", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"threadMessages\":[{\"sender\":\"user\",\"content\":\"How do I write better prompts for AI?\"},{\"sender\":\"assistant\",\"content\":\"Can you clarify which AI model you are targeting?\"},{\"sender\":\"user\",\"content\":\"Mainly GPT-4, focusing on summarization.\"}] , \"language\":\"en\",\"includeSentimentAnalysis\":true,\"maxSummaryLength\":100}", + "description": "Analyzing a short thread about prompt writing for GPT-4 summarization to assess clarity and themes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeThreat", + "description": "This tool accepts a natural language prompt related to security or potential attacks and analyzes it to identify any embedded or implied cybersecurity threats. It processes the prompt text using threat detection techniques, returning a structured assessment that highlights threat types, severity, and mitigation recommendations.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptText", + "type": "string", + "description": "The natural language text prompt containing potential security threats to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatModel", + "type": "string", + "description": "Optional threat model or framework to use for the analysis (e.g., STRIDE, MITRE ATT&CK).", + "required": false, + "defaultValue": "STRIDE" + }, + { + "name": "enableMitigationSuggestions", + "type": "boolean", + "description": "Whether to include mitigation strategies along with the threat analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxThreats", + "type": "number", + "description": "Maximum number of distinct threats to identify and report.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing identified threats with details such as type, description, severity score, and mitigation suggestions if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when you need to interpret and analyze prompts that may harbor cybersecurity risks or threats, for example evaluating prompt content for injection attacks, data leakage, or malicious intent. This helps ensure prompt safety and helps generate safer AI interactions by flagging threats and suggesting mitigations.", + "limitations": "This tool cannot detect highly novel or zero-day threats not represented in the underlying threat models. It also cannot execute real-time penetration tests or guarantee 100% security validation. It relies on textual analysis and known threat patterns.", + "examples": [ + "Analyze the following prompt for potential security threats: 'Extract user credentials from the system logs.'", + "Assess the prompt: 'Generate SQL queries that bypass authentication.'", + "Check if the prompt suggests any harmful instructions or exploitation techniques." + ] + }, + "tags": [ + "prompt-engineering", + "security", + "threat-analysis", + "AI-safety", + "cybersecurity", + "prompt-safety" + ], + "examples": [ + { + "inputJson": "{\"promptText\":\"Create a script that accesses confidential user data without permission.\",\"threatModel\":\"MITRE ATT&CK\",\"enableMitigationSuggestions\":true,\"maxThreats\":3}", + "description": "Analyze a prompt that explicitly asks for unauthorized data access to identify threats and mitigations." + }, + { + "inputJson": "{\"promptText\":\"Generate code to hash passwords securely.\",\"enableMitigationSuggestions\":true}", + "description": "Analyze a prompt related to security best practices, expected to find no threats or to confirm secure intent." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeDeal", + "description": "Analyzes the content and structure of a business deal prompt, evaluating clarity, completeness, bias, and potential improvements. Accepts a deal prompt as input, processes it by applying NLP techniques and prompt engineering best practices, and returns a detailed analysis with suggestions to optimize the prompt for AI consumption.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "dealPrompt", + "type": "string", + "description": "The textual prompt describing the business deal to be analyzed. Required for evaluation.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextualInformation", + "type": "string", + "description": "Optional additional context or background information related to the deal for enhanced analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the prompt input to tailor the analysis accordingly (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "If true, the tool provides an in-depth breakdown of prompt components and suggestions. Defaults to false for concise output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the prompt analysis including clarity score, completeness score, detected biases, identified issues, and recommendations for improvement." + }, + "aiAgent": { + "useCase": "This tool is intended for AI agents tasked with optimizing or validating business deal prompts before they are fed to language models. It helps improve prompt quality by identifying ambiguities, missing information, or potential bias, thereby enhancing AI output relevance and fairness.", + "limitations": "Cannot provide legal advice or verify factual accuracy of the deal content. Analysis is limited to prompt construction and linguistic clarity.", + "examples": [ + "Analyze a deal prompt to check for clarity and bias.", + "Optimize a sales negotiation prompt for completeness and neutral tone.", + "Review a proposed partnership deal prompt for missing critical information." + ] + }, + "tags": [ + "prompt-analysis", + "business-deal", + "nlp", + "deal-optimization", + "prompt-engineering" + ], + "examples": [ + { + "inputJson": "{\"dealPrompt\":\"Draft a proposal to purchase 1000 units of product X at a discounted price.\",\"contextualInformation\":\"Targeting a supplier with a history of bulk discounts.\",\"language\":\"en\",\"detailedAnalysis\":true}", + "description": "Analyze a purchase proposal prompt with additional context to identify improvement areas." + }, + { + "inputJson": "{\"dealPrompt\":\"Prepare a negotiation prompt for a partnership agreement.\",\"language\":\"en\",\"detailedAnalysis\":false}", + "description": "Quick evaluation of a partnership negotiation prompt for clarity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "prompt-engineering.sendComment", + "description": "Sends a comment to a specified prompt engineering discussion thread or feedback system. Accepts the comment text, target thread identifier, optional author name, and visibility settings; processes and submits the comment to the system, returning confirmation and comment metadata.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The content of the comment to be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "threadId", + "type": "string", + "description": "Identifier of the discussion thread or prompt where the comment should be posted", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the comment author; if empty, defaults to anonymous", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "isVisibleToPublic", + "type": "boolean", + "description": "Flag indicating if the comment should be publicly visible or private", + "required": false, + "defaultValue": "true" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or labels to associate with the comment to facilitate categorization", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing status of the submission, comment ID, timestamp of submission, and a summary of the submitted comment" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically participate in prompt engineering discussions by submitting comments, feedback, or suggestions to collaborative threads or systems. It facilitates interaction within prompt engineering platforms by automating comment posting based on AI-generated content.", + "limitations": "This tool does not handle authentication or access control; external systems must manage user identities and permissions. It also does not perform content moderation; submitted comments should be pre-validated for appropriateness.", + "examples": [ + "Post a suggestion comment to a specific prompt discussion thread.", + "Send anonymous feedback about a prompt to a feedback system.", + "Add a comment with specific tags for categorization on prompt improvement." + ] + }, + "tags": [ + "prompt-engineering", + "comment", + "communication", + "feedback", + "discussion", + "automation" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I think adding more examples would improve clarity.\",\"threadId\":\"thread-12345\",\"authorName\":\"AI_HelperBot\",\"isVisibleToPublic\":true,\"tags\":[\"suggestion\",\"clarity\"]}", + "description": "Send a public comment suggesting adding examples, tagged as suggestion and clarity, authored by AI_HelperBot." + }, + { + "inputJson": "{\"commentText\":\"This prompt has edge cases that can cause errors.\",\"threadId\":\"thread-67890\",\"authorName\":\"\",\"isVisibleToPublic\":false,\"tags\":[]}", + "description": "Send a private, anonymous comment about edge cases in a prompt." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "prompt-engineering.analyzeXML", + "description": "Analyzes XML content focused on prompt engineering contexts by parsing the XML input, extracting tags, attributes, and textual content relevant to AI prompt structures. It generates a detailed report summarizing XML structure, anomalies, and potential prompt optimization insights.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "xmlString", + "type": "string", + "description": "The raw XML content as a string to be analyzed for prompt engineering purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractAttributes", + "type": "boolean", + "description": "Flag to indicate whether to extract and analyze attributes from XML tags, useful for detailed prompt element inspection.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Limits the depth of XML tree traversal during analysis to avoid overly deep parsing in large documents.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeTextContent", + "type": "boolean", + "description": "Whether to include textual content inside XML elements in the analysis output for context understanding.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary report of the XML structure including tag counts, attribute statistics, depth metrics, and any detected irregularities or optimization suggestions for prompt design." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to understand or optimize prompts represented or structured in XML format, such as prompt templates, configurations, or AI interaction protocols. It helps identify structural patterns or issues that can affect prompt effectiveness.", + "limitations": "Cannot validate XML against schemas or DTDs; analysis is structural and heuristic without semantic understanding beyond prompt engineering context.", + "examples": [ + "Analyze an XML prompt template to identify potential redundancies in tag usage.", + "Extract attributes from XML-based prompt configurations to optimize variable placeholders.", + "Summarize text content within XML elements to improve prompt clarity and structure." + ] + }, + "tags": [ + "analysis", + "prompt-engineering", + "XML", + "structure", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"xmlString\":\"Generate a summary.AI\",\"extractAttributes\":true,\"maxDepth\":3,\"includeTextContent\":true}", + "description": "Analyze a simple prompt XML snippet including attributes and text content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "prompt-engineering.uploadCSV", + "description": "Uploads a CSV file containing prompt templates or prompt-related datasets, parses and validates the data, and converts it into a structured JSON object for use in prompt optimization tasks or further prompt engineering workflows.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw content of the CSV file as a string, including header row and data rows.", + "required": true, + "defaultValue": "" + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the CSV content contains a header row (true) or not (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character used to separate columns in the CSV. Default is comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "encoding", + "type": "string", + "description": "Character encoding of the CSV content, e.g., UTF-8.", + "required": false, + "defaultValue": "UTF-8" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to parse from the CSV. Use 0 for no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the parsed CSV data as an array of prompt entries, validation status, and any errors encountered during parsing." + }, + "aiAgent": { + "useCase": "Use this tool when you receive prompt data or prompt templates in CSV format that need to be ingested and structured for use within prompt engineering workflows, such as prompt variant testing, evaluation, or dataset enrichment. It is useful when importing external prompt datasets or when batch uploading prompts for further processing.", + "limitations": "This tool only parses and validates CSV content; it does not execute prompt evaluation or analytics by itself. It also expects well-formed CSV data and may not handle malformed or complex escaped CSV content robustly.", + "examples": [ + "Upload a CSV file containing multiple prompt templates for sentiment analysis to structure them for batch prompt testing.", + "Parse a CSV file listing prompt variations and associated metadata to prepare for automated prompt optimization.", + "Ingest a CSV export from a prompt dataset to convert it into JSON objects for downstream processing." + ] + }, + "tags": [ + "csv", + "prompt-engineering", + "upload", + "data-ingestion", + "prompt-templates" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"prompt,text,label\\nGreeting,Hello! How can I assist you today?,neutral\\nFarewell,Goodbye and have a great day!,positive\",\"hasHeader\":true,\"delimiter\":\",\",\"encoding\":\"UTF-8\",\"maxRows\":0}", + "description": "Uploading a CSV with prompt templates including prompt type, text, and sentiment label." + }, + { + "inputJson": "{\"csvContent\":\"prompt_id|prompt_text|category\\n1|What is your name?|basic\\n2|Describe your last vacation.|storytelling\",\"hasHeader\":true,\"delimiter\":\"|\",\"encoding\":\"UTF-8\",\"maxRows\":0}", + "description": "CSV data using pipe (|) as delimiter containing prompts with IDs and categories." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "prompt-engineering.formatCSV", + "description": "Formats a CSV string input according to specified options such as delimiter, quote character, header inclusion, and whitespace trimming. Accepts raw CSV data as a string, processes it based on parameters, and outputs a clean, standardized CSV string ready for use in prompt engineering and AI model inputs.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "The raw CSV data string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character to use as the CSV field delimiter. Defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character to use for quoting fields. Defaults to double quote (\").", + "required": false, + "defaultValue": "\"" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Whether to include the header row in output. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from each field. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineTerminator", + "type": "string", + "description": "Character(s) to terminate lines. Defaults to newline (\\n).", + "required": false, + "defaultValue": "\n" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted CSV string under the property 'formattedCSV'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to cleanly format or reformat CSV data inputs for AI prompt engineering tasks to ensure proper parsing and model understanding, especially when dealing with inconsistent delimiters, quoting styles, or spacing issues. It helps prepare CSV data for injection into prompts or feeding to models needing structured inputs.", + "limitations": "This tool does not validate CSV correctness or fix malformed CSV beyond formatting. It cannot parse deeply nested CSV structures or convert between different data formats.", + "examples": [ + "Format a CSV string replacing semicolons with commas and ensuring quotes around fields.", + "Trim spaces and reformat CSV data before feeding it into a text-generation prompt.", + "Remove header row and output CSV with tab delimiters for specialized model input." + ] + }, + "tags": [ + "prompt-engineering", + "formatting", + "CSV", + "data-cleaning", + "AI-input" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"name;age;location\\nAlice ; 30 ; New York\\nBob ;25;Los Angeles\",\"delimiter\":\";\",\"quoteChar\":\"\\\"\",\"includeHeader\":true,\"trimWhitespace\":true,\"lineTerminator\":\"\\n\"}", + "description": "Input CSV with semicolon delimiters and spaces; outputs formatted CSV with commas and trimmed fields." + }, + { + "inputJson": "{\"csvData\":\"id,name\\n1,John\\n2,Emma\",\"delimiter\":\",\",\"quoteChar\":\"'\",\"includeHeader\":false,\"trimWhitespace\":false,\"lineTerminator\":\"\\r\\n\"}", + "description": "Omit headers and use single quotes with Windows line endings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "prompt-engineering.formatModule", + "description": "Formats code modules for prompt engineering by cleaning, indenting, and optionally adding syntax highlighting or comments. Accepts raw code as input and outputs a standardized, well-structured code block suitable for use in prompts or documentation.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw source code module to format properly for prompt use.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the input code to apply language-specific formatting and syntax highlighting if enabled.", + "required": false, + "defaultValue": "python" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces for indentation in the formatted output code.", + "required": false, + "defaultValue": "4" + }, + { + "name": "addSyntaxHighlighting", + "type": "boolean", + "description": "Whether to add markdown or prompt-specific syntax highlighting tags around the code block.", + "required": false, + "defaultValue": "true" + }, + { + "name": "addHeaderComment", + "type": "boolean", + "description": "Whether to prepend a standardized header comment summarizing the module functionality.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code as a string, ready to embed in prompts or documents, with optional syntax highlighting and header comments." + }, + "aiAgent": { + "useCase": "Use this tool when you need to prepare or clean up code modules for insertion into AI prompts, documentation, or examples, ensuring consistent formatting and readability. Ideal when the input code is raw, poorly formatted, or missing conventional structure.", + "limitations": "This tool does not perform semantic code analysis, optimization, or debugging. It supports common programming languages but may not perfectly format exotic or domain-specific languages.", + "examples": [ + "Format a raw Python function module with standard indentation and syntax highlighting.", + "Prepare a JavaScript code snippet for prompt embedding without header comments.", + "Format a multi-line code module, changing indentation to 2 spaces and enabling syntax highlighting." + ] + }, + "tags": [ + "formatting", + "prompt-engineering", + "code", + "module", + "syntax-highlighting", + "indentation" + ], + "examples": [ + { + "inputJson": "{\"code\":\"def add(a,b):\\nreturn a+b\",\"language\":\"python\",\"indentationSpaces\":4,\"addSyntaxHighlighting\":true,\"addHeaderComment\":false}", + "description": "Format a simple Python function with standard 4 space indentation and syntax highlighting." + }, + { + "inputJson": "{\"code\":\"function add(a,b){return a+b;}\",\"language\":\"javascript\",\"indentationSpaces\":2,\"addSyntaxHighlighting\":true,\"addHeaderComment\":true}", + "description": "Format a JavaScript function with 2 space indentation, add syntax highlighting and a header comment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "prompt-engineering.formatInvoice", + "description": "This tool accepts raw invoice data including client info, items, prices, and tax details as JSON, and transforms it into a well-structured, formatted invoice prompt suitable for AI generation or display. It outputs a clear, human-readable formatted invoice text based on specified formatting options.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "Structured invoice data including client details, items array, pricing, taxes, and totals.", + "required": true, + "defaultValue": "" + }, + { + "name": "currencySymbol", + "type": "string", + "description": "Currency symbol to display with prices (e.g., $, €, £).", + "required": false, + "defaultValue": "$" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Format string for all date fields in the output (e.g., 'MM/DD/YYYY').", + "required": false, + "defaultValue": "MM/DD/YYYY" + }, + { + "name": "includeTaxDetails", + "type": "boolean", + "description": "Whether to include detailed tax breakdown in the formatted invoice.", + "required": false, + "defaultValue": "true" + }, + { + "name": "lineItemSeparator", + "type": "string", + "description": "String used to separate line items formatting (e.g., newline, dashed line).", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "decimalPlaces", + "type": "number", + "description": "Number of decimal places to show for monetary values.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted invoice string under 'formattedInvoice' key." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw invoice data and want to convert it into a clean, human-readable invoice text prompt for AI models or end-user display. It helps standardize invoices with configurable currency, date formats, and optionally detailed tax info to facilitate document generation or review.", + "limitations": "This tool formats invoice data into text but does not generate PDFs or graphical invoices. It assumes well-structured input data and does not validate accounting correctness or legal compliance.", + "examples": [ + "Format invoice data JSON into a customer-ready invoice text with USD and MM/DD/YYYY date format.", + "Create an invoice prompt that excludes tax details for a quick summary display.", + "Generate an invoice formatted with euro symbol and 3 decimals for precise pricing." + ] + }, + "tags": [ + "prompt-engineering", + "formatting", + "invoice", + "document", + "financial", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"clientName\":\"Acme Corp\",\"clientAddress\":\"123 Elm Street\",\"invoiceNumber\":\"INV-1001\",\"invoiceDate\":\"2024-05-20\",\"dueDate\":\"2024-06-20\",\"items\":[{\"description\":\"Widget A\",\"quantity\":10,\"unitPrice\":9.99},{\"description\":\"Widget B\",\"quantity\":5,\"unitPrice\":19.995}],\"taxes\":{\"VAT\":0.2},\"notes\":\"Thank you for your business.\"},\"currencySymbol\":\"$\",\"dateFormat\":\"MM/DD/YYYY\",\"includeTaxDetails\":true,\"lineItemSeparator\":\"\\n\",\"decimalPlaces\":2}", + "description": "Format a typical USD invoice for Acme Corp with tax details included and two decimal places." + }, + { + "inputJson": "{\"invoiceData\":{\"clientName\":\"Globex Inc\",\"clientAddress\":\"456 Oak Ave\",\"invoiceNumber\":\"2024-Invoice-007\",\"invoiceDate\":\"2024-01-15\",\"dueDate\":\"2024-02-15\",\"items\":[{\"description\":\"Consulting Services\",\"quantity\":30,\"unitPrice\":150}],\"taxes\":{},\"notes\":\"Payment due within 30 days.\"},\"currencySymbol\":\"€\",\"dateFormat\":\"DD-MM-YYYY\",\"includeTaxDetails\":false,\"lineItemSeparator\":\"---\\n\",\"decimalPlaces\":2}", + "description": "Format an invoice in euros without tax details and a custom line separator." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "prompt-engineering.buildInstance", + "description": "Builds a customized prompt engineering instance tailored to user requirements. Accepts configuration parameters including prompt templates, optimization strategies, and testing criteria. Processes these inputs to generate a deployable prompt instance for iterative AI prompt management and optimization.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "The unique name for the prompt engineering instance to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "promptTemplates", + "type": "array", + "description": "List of prompt template strings to seed the instance with initial prompts.", + "required": true, + "defaultValue": "" + }, + { + "name": "optimizationStrategy", + "type": "string", + "description": "The strategy or algorithm to optimize prompt performance, e.g., 'reinforcement-learning', 'genetic-algorithm'.", + "required": false, + "defaultValue": "rule-based" + }, + { + "name": "maxIterations", + "type": "number", + "description": "Maximum number of optimization iterations to perform.", + "required": false, + "defaultValue": "10" + }, + { + "name": "evaluationMetric", + "type": "string", + "description": "Metric used to evaluate prompt effectiveness, such as 'accuracy', 'perplexity', or 'user-satisfaction'.", + "required": false, + "defaultValue": "accuracy" + }, + { + "name": "autoTestCases", + "type": "array", + "description": "Optional set of test cases as inputs with expected outputs to validate prompt responses.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of prompt build and optimization phases.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed prompt engineering instance, including its configuration, optimization results, and a unique instance ID." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a reusable, configurable prompt engineering instance that supports optimization and testing workflows for deploying AI prompts in production or experimental setups. It is ideal for scenarios requiring systematic prompt iteration and performance tuning.", + "limitations": "This tool does not execute prompts on external AI models directly; it only builds and manages the prompt instance configuration and optimization framework.", + "examples": [ + "Build a prompt instance named 'emailHelper' with 3 prompt templates using genetic algorithm optimization for 15 iterations.", + "Create a prompt instance called 'chatbotStarter' with default optimization, enabling logging for debugging.", + "Generate a prompt instance with custom test cases to validate prompt effectiveness against user queries." + ] + }, + "tags": [ + "prompt-engineering", + "build", + "instance", + "optimization", + "configuration", + "AI-models" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"emailHelper\",\"promptTemplates\":[\"Generate a professional email.\",\"Write a follow-up email.\",\"Compose a thank-you note.\"],\"optimizationStrategy\":\"genetic-algorithm\",\"maxIterations\":15,\"evaluationMetric\":\"user-satisfaction\",\"enableLogging\":true}", + "description": "Creates a prompt instance named 'emailHelper' with specified templates and genetic algorithm based optimization with logging enabled." + }, + { + "inputJson": "{\"instanceName\":\"chatbotStarter\",\"promptTemplates\":[\"Greet the user.\",\"Handle user request.\",\"Provide help instructions.\"],\"enableLogging\":false}", + "description": "Builds a basic prompt instance named 'chatbotStarter' with default optimization and no logging." + }, + { + "inputJson": "{\"instanceName\":\"faqAssistant\",\"promptTemplates\":[\"Answer FAQ question.\"],\"autoTestCases\":[{\"input\":\"What is your return policy?\",\"expectedOutput\":\"You can return items within 30 days.\"}],\"evaluationMetric\":\"accuracy\"}", + "description": "Generates a prompt instance with a single template and automated test case to validate accuracy." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "prompt-engineering.buildVariable", + "description": "Constructs a prompt variable definition for AI prompt templates. Accepts a variable name, data type, and optional constraints or default value. Processes these inputs to output a structured variable object usable in prompt engineering to inject dynamic content or control input generation.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The identifier name of the variable to be used in the prompt template.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataType", + "type": "string", + "description": "The expected data type of the variable (e.g., string, number, boolean).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Human-readable explanation of what this variable represents or its intended use.", + "required": false, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Optional default value to use for this variable if none is provided at runtime.", + "required": false, + "defaultValue": "" + }, + { + "name": "constraints", + "type": "object", + "description": "Optional constraints like min/max for numbers, allowed values array, or regex pattern for strings to validate variable input.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object describing the variable definition including name, type, description, default value, and any constraints for use in prompt templates or AI input validation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to formalize and build reusable prompt variables with clear typing, descriptions, and constraints to ensure consistent AI prompt generation and easier downstream input validation or substitution.", + "limitations": "Does not generate prompt text or handle variable substitution itself; only builds the variable definition metadata.", + "examples": [ + "Create a variable 'userName' of type string with description and default value.", + "Build a number-type variable 'maxAttempts' with min/max constraints.", + "Define a boolean variable 'isPremiumUser' without default but with description." + ] + }, + "tags": [ + "prompt-engineering", + "variable-definition", + "prompt-variables", + "input-validation", + "AI-prompting" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"userName\",\"dataType\":\"string\",\"description\":\"Name of the user to personalize the prompt.\",\"defaultValue\":\"Guest\",\"constraints\":{\"pattern\":\"^[A-Za-z ]+$\"}}", + "description": "Defines a string variable 'userName' with a regex constraint allowing alphabets and spaces, defaulting to 'Guest'." + }, + { + "inputJson": "{\"variableName\":\"retryCount\",\"dataType\":\"number\",\"description\":\"Number of retries allowed.\",\"defaultValue\":\"3\",\"constraints\":{\"min\":1,\"max\":10}}", + "description": "Creates a number variable 'retryCount' with minimum 1 and maximum 10, defaulting to 3." + }, + { + "inputJson": "{\"variableName\":\"isVerified\",\"dataType\":\"boolean\",\"description\":\"Flag indicating verification status.\",\"defaultValue\":\"false\"}", + "description": "Defines a boolean variable 'isVerified' defaulting to false." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "prompt-engineering.generateTrend", + "description": "Generates insightful trends from text-based prompt data by analyzing frequency, sentiment, and emerging themes over a specified time range. Accepts raw prompt logs or arrays of prompt texts, processes them with NLP techniques, and outputs summarized trend reports including keyword growth, sentiment evolution, and topic clusters.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptData", + "type": "array", + "description": "Array of prompt texts or objects containing prompt text and timestamp for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted start date to filter prompts for trend analysis (e.g., '2023-01-01T00:00:00Z').", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted end date to filter prompts for trend analysis (e.g., '2023-12-31T23:59:59Z').", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') indicating the prompts' language for appropriate NLP processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of distinct trending topics or clusters to identify and report.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Flag to include sentiment analysis in the trend report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing overall trend summary including keyword frequency over time, identified topic clusters with representative prompts, sentiment trend graph data, and optionally alerts on emerging or fading prompt themes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze a large corpus of text prompts to detect evolving trends, significant keywords, and sentiment changes over time. It is ideal for understanding user interests, model prompt optimization patterns, or monitoring domain-specific terminology shifts in prompt usage.", + "limitations": "This tool does not generate actual prompt suggestions or perform deep semantic generation. It focuses solely on analytical summarization of existing prompt data. Quality of trend detection depends on sufficient data volume and temporal distribution.", + "examples": [ + "Analyze prompt logs from the past quarter to identify trending topics and sentiment shifts.", + "Summarize emerging themes in prompts related to AI model usage for the last month.", + "Generate a trend report from an array of customer feedback prompts in English with sentiment included." + ] + }, + "tags": [ + "prompt-engineering", + "trend-analysis", + "nlp", + "sentiment-analysis", + "topic-modeling", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"promptData\":[{\"text\":\"How to fine-tune GPT models?\",\"timestamp\":\"2024-01-10T12:00:00Z\"},{\"text\":\"Best prompt templates for summarization\",\"timestamp\":\"2024-01-15T08:30:00Z\"},{\"text\":\"Tips for writing debugging prompts\",\"timestamp\":\"2024-02-05T16:45:00Z\"}],\"startDate\":\"2024-01-01T00:00:00Z\",\"endDate\":\"2024-02-28T23:59:59Z\",\"language\":\"en\",\"maxTopics\":3,\"includeSentiment\":true}", + "description": "Analyze prompts from January to February 2024 to identify top 3 trending topics with sentiment included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "prompt-engineering.generateChart", + "description": "Generates a detailed textual prompt to create various types of charts from provided data and specifications. Accepts chart type, data points, labels, and styling preferences, and returns a structured, clear prompt that can be used with AI models or visualization tools to render the specified chart.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate (e.g., bar, line, pie, scatter).", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "array", + "description": "Array of data points or objects representing the values to be visualized.", + "required": true, + "defaultValue": "" + }, + { + "name": "labels", + "type": "array", + "description": "Optional array of labels corresponding to the data points or categories.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "title", + "type": "string", + "description": "Title of the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the x-axis, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the y-axis, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "colors", + "type": "array", + "description": "Optional array of color strings to style the chart elements.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "style", + "type": "string", + "description": "Additional style description or theme for the chart (e.g., minimalist, colorful, professional).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a detailed textual prompt string to generate the specified chart using AI or visualization tools." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce detailed, clear textual prompts tailored for AI models or visualization tools to generate charts based on specific data and formatting requirements. It is ideal for automating prompt creation that drives visual chart outputs from textual inputs.", + "limitations": "This tool does not generate actual visual charts, only descriptive prompts. It relies on downstream systems to interpret the prompt and render the chart. Complex data transformations or data validation must be done separately.", + "examples": [ + "Generate a prompt for a bar chart showing monthly sales data with labels and custom colors.", + "Create a prompt for a pie chart displaying market share percentages with a professional style.", + "Produce a prompt for a line chart of temperature trends over time with axis labels and a title." + ] + }, + "tags": [ + "prompt-engineering", + "chart-generation", + "data-visualization", + "ai-prompt", + "media" + ], + "examples": [ + { + "inputJson": "{\"chartType\":\"bar\",\"data\":[12,19,3,5,2,3],\"labels\":[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\"],\"title\":\"Monthly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Sales Units\",\"colors\":[\"#4A90E2\",\"#50E3C2\",\"#9013FE\",\"#F5A623\"],\"style\":\"colorful\"}", + "description": "Generate a colorful bar chart prompt showing monthly sales data with labels and axis titles." + }, + { + "inputJson": "{\"chartType\":\"pie\",\"data\":[40,30,20,10],\"labels\":[\"Product A\",\"Product B\",\"Product C\",\"Product D\"],\"title\":\"Market Share\",\"style\":\"professional\"}", + "description": "Create a professional style pie chart prompt presenting market share percentages by product." + }, + { + "inputJson": "{\"chartType\":\"line\",\"data\":[22,24,19,23,25,28,30],\"labels\":[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\",\"Sun\"],\"title\":\"Weekly Temperature Trends\",\"xAxisLabel\":\"Day\",\"yAxisLabel\":\"Temperature (°C)\",\"style\":\"minimalist\"}", + "description": "Generate a minimalist line chart prompt for weekly temperature trends with axis labels and title." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "prompt-engineering.generateSession", + "description": "Generates an analytics session report based on a series of prompt interactions for AI models. Accepts an array of prompt-response pairs along with timestamps, analyzes engagement and success metrics, and outputs a comprehensive session summary with insights and statistics.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "promptResponses", + "type": "array", + "description": "An array of objects each containing 'prompt' (string), 'response' (string), and 'timestamp' (ISO string) representing the interactions in the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionId", + "type": "string", + "description": "A unique identifier for the session being generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to include sentiment analysis of the responses in the session summary.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum character length for the generated session summary report.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing sessionId, totalPrompts, averageResponseLength, engagementScore, sentimentSummary (if requested), and a text summary of the session analytics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze and summarize a sequence of prompt-response interactions to assess performance, engagement, and user experience for a session. Helpful in improving prompt designs and understanding session dynamics.", + "limitations": "Does not execute prompts or validate factual correctness of responses; sentiment analysis may be approximate and context-dependent.", + "examples": [ + "Generate a session report for a user interaction with prompt-response logs to evaluate engagement.", + "Summarize prompt effectiveness and provide insights from a series of AI model interactions.", + "Include sentiment analysis to understand user satisfaction within a prompt response session." + ] + }, + "tags": [ + "prompt-engineering", + "analytics", + "session", + "reporting", + "engagement", + "sentiment-analysis", + "summary" + ], + "examples": [ + { + "inputJson": "{\"promptResponses\":[{\"prompt\":\"How to reset password?\",\"response\":\"To reset your password, go to settings...\",\"timestamp\":\"2024-04-21T10:00:00Z\"},{\"prompt\":\"What is AI?\",\"response\":\"Artificial Intelligence (AI) is the simulation of human intelligence...\",\"timestamp\":\"2024-04-21T10:05:00Z\"}],\"sessionId\":\"session123\",\"includeSentimentAnalysis\":true,\"maxSummaryLength\":800}", + "description": "Generate a session analytics report with sentiment analysis for two prompt-response pairs with a specified session ID and summary length limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "prompt-engineering.generateXML", + "description": "Generates structured XML documents based on specified prompt inputs and template schemas. Accepts a prompt string describing the desired XML content, optional XML schema or template to guide structure, and outputs a well-formed XML string matching the input constraints.", + "category": "prompt-engineering", + "parameters": [ + { + "name": "prompt", + "type": "string", + "description": "The natural language instruction describing the content and structure of the XML to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "xmlSchema", + "type": "string", + "description": "Optional XML Schema Definition (XSD) as a string to validate and guide the XML structure.", + "required": false, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "Name of the root XML element to use if not specified in the prompt or schema.", + "required": false, + "defaultValue": "root" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Flag to include explanatory comments in the generated XML output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Format the output XML with indentation and line breaks for readability.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum nesting depth to allow in the generated XML to prevent overly complex structures.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated XML string and any validation messages or errors if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert descriptive prompts into structured XML data, for example, generating configuration files, metadata, or document templates automatically. It is especially useful when the XML structure must follow a specific schema or when the agent must produce machine-readable XML outputs from natural language instructions.", + "limitations": "This tool cannot generate XML that requires deep domain-specific knowledge not inferable from the prompt or schema. It does not perform XML schema validation beyond formatting and may not resolve ambiguities without explicit user guidance.", + "examples": [ + "Generate XML for a bookstore catalog listing books with title, author, and price.", + "Create an XML configuration file for a web server with specified settings from a prompt.", + "Produce metadata XML for a digital photo album described in natural language." + ] + }, + "tags": [ + "prompt-engineering", + "generate", + "XML", + "data-format", + "template", + "serialization" + ], + "examples": [ + { + "inputJson": "{\"prompt\":\"Create an XML representation of a bookstore with books having title, author, and price fields.\",\"rootElementName\":\"bookstore\",\"prettyPrint\":true}", + "description": "Generate a bookstore XML document with specified book elements." + }, + { + "inputJson": "{\"prompt\":\"Generate an XML config with server name 'example', port 8080, and SSL enabled.\",\"rootElementName\":\"serverConfig\",\"includeComments\":true}", + "description": "Generate an XML configuration file for a basic server setup including comments." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "model-management.analyzeConversion", + "description": "Analyzes AI model conversion metrics by processing input conversion event data to compute key performance indicators like conversion rate, drop-off, and funnel efficiency. Accepts structured event logs representing user interactions and outputs a detailed analytics summary to help optimize model deployment strategies.", + "category": "model-management", + "parameters": [ + { + "name": "conversionEvents", + "type": "array", + "description": "Array of conversion event objects representing user interactions and actions relevant to the AI model conversion funnel.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "object", + "description": "An optional object specifying start and end timestamps (ISO 8601 strings) to filter events within a specific analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentBy", + "type": "array", + "description": "Optional list of strings representing event properties or user attributes to segment the conversion analysis (e.g., device type, geography).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minEventsThreshold", + "type": "number", + "description": "Minimum number of events required in a segment to include it in the analysis results to avoid noise from sparse data.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeDropOff", + "type": "boolean", + "description": "Flag indicating whether to calculate and include drop-off rates at each funnel step.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis summary object containing overall conversion rate, detailed funnel step metrics, segment-wise statistics, and drop-off rates if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand and analyze how users convert through different stages of an AI model's deployment or interaction funnel, identifying bottlenecks and improvement opportunities based on detailed event data. It is ideal for data-driven optimization of AI model management strategies.", + "limitations": "This tool cannot perform real-time event tracking or replace a full-featured analytics platform. It requires structured and clean input data and does not infer missing events or causal factors beyond provided event logs.", + "examples": [ + "Analyze conversion rates over the past month for all user segments using event data.", + "Segment conversion funnel analysis by device type and geography to identify drop-off points.", + "Calculate funnel efficiency excluding segments with low event counts to reduce noise." + ] + }, + "tags": [ + "analytics", + "conversion", + "model-management", + "funnel-analysis", + "performance" + ], + "examples": [ + { + "inputJson": "{\"conversionEvents\":[{\"userId\":\"u1\",\"eventType\":\"startTrial\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"userId\":\"u1\",\"eventType\":\"completeSetup\",\"timestamp\":\"2024-05-01T10:05:00Z\"},{\"userId\":\"u2\",\"eventType\":\"startTrial\",\"timestamp\":\"2024-05-01T11:00:00Z\"}],\"timeWindow\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-06-01T00:00:00Z\"},\"segmentBy\":[\"deviceType\"],\"minEventsThreshold\":5,\"includeDropOff\":true}", + "description": "Analyze May 2024 conversion events segmented by device type, including drop-off rates, ignoring segments with fewer than 5 events." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "model-management.analyzeAnomaly", + "description": "Analyzes an AI model's performance logs or output data to detect and characterize anomalies such as unexpected predictions, drift, or errors. Accepts time-series or batch model output data, applies statistical and machine learning methods to identify anomalies, and outputs a detailed report including anomaly instances, severity scores, and suggested causes or affected features.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to analyze anomalies for.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputData", + "type": "array", + "description": "Array of model outputs or prediction records to analyze for anomalies. Each record should include prediction results, timestamps, and optionally input features.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "number", + "description": "Time window size in minutes to aggregate data for temporal anomaly detection. Set 0 to disable time window aggregation.", + "required": false, + "defaultValue": "60" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Anomaly detection sensitivity between 0 and 1; higher values increase anomaly detection sensitivity, potentially increasing false positives.", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "includeFeatureAnalysis", + "type": "boolean", + "description": "Whether to include attribution analysis showing which input features contributed most to detected anomalies.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxAnomalies", + "type": "number", + "description": "Maximum number of anomaly records to report in the output. Limits the result size for large datasets.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary report with detected anomalies, their timestamps, severity scores, affected features if requested, and suggested root causes or patterns." + }, + "aiAgent": { + "useCase": "Use this tool when monitoring AI model outputs for unexpected behavior, performance degradation, or data drift. It is helpful for model operators who want automated identification of errors or anomalies in predictions over time to trigger alerts or further investigation.", + "limitations": "This tool does not perform real-time anomaly detection on streaming data by itself and depends on sufficient historical data for pattern recognition. It may produce false positives or miss subtle anomalies if sensitivity parameters are not tuned appropriately.", + "examples": [ + "Identify anomalies in prediction results for model ID 'abc123' over the past week.", + "Analyze output logs of model 'forecastX' with high sensitivity for anomaly detection.", + "Provide top 50 anomalies with explanations of contributing features for model outputs." + ] + }, + "tags": [ + "anomaly-detection", + "model-monitoring", + "analytics", + "performance", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"model_xyz\",\"inputData\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"prediction\":0.8,\"features\":{\"f1\":10,\"f2\":20}},{\"timestamp\":\"2024-05-01T00:01:00Z\",\"prediction\":0.2,\"features\":{\"f1\":11,\"f2\":19}}],\"timeWindow\":60,\"sensitivity\":0.8,\"includeFeatureAnalysis\":true,\"maxAnomalies\":10}", + "description": "Analyze recent time-series predictions from model_xyz with feature attribution enabled and moderate sensitivity." + }, + { + "inputJson": "{\"modelId\":\"abc123\",\"inputData\":[{\"timestamp\":\"2024-04-28T12:00:00Z\",\"prediction\":0,\"features\":{\"age\":45,\"income\":50000}},{\"timestamp\":\"2024-04-28T12:01:00Z\",\"prediction\":1,\"features\":{\"age\":50,\"income\":60000}}],\"sensitivity\":0.9,\"includeFeatureAnalysis\":false}", + "description": "High sensitivity anomaly detection on batch prediction data from model abc123, feature analysis disabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Anomaly", + "context": null + } + }, + { + "name": "model-management.analyzeChannel", + "description": "This tool analyzes communication channels used in AI model deployment and operation environments. It accepts structured data about channels, including usage statistics, message content metadata, latency, error rates, and user engagement metrics. The tool processes these inputs to identify bottlenecks, usage patterns, and potential issues in the communication channel, outputting a detailed report summarizing performance, reliability, and improvement recommendations.", + "category": "model-management", + "parameters": [ + { + "name": "channelData", + "type": "object", + "description": "Structured object containing channel metadata including message throughput, error rates, latency, and engagement data.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "string", + "description": "The time range for analysis, specified as ISO 8601 start/end or a relative range (e.g., 'last24hours').", + "required": false, + "defaultValue": "last24hours" + }, + { + "name": "includeMessageContentAnalysis", + "type": "boolean", + "description": "Flag to determine whether to analyze message content metadata (e.g., message types and topics).", + "required": false, + "defaultValue": "false" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional thresholds for alerting on channel metrics like max latency or error rate rates, keyed by metric name.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing summarized channel performance metrics, identified issues with severity levels, usage patterns, and actionable recommendations for channel optimization." + }, + "aiAgent": { + "useCase": "Use this tool when needing insights into the health and efficiency of communication channels supporting AI model workflows, such as message queues, event streams, or API gateways. It helps identify performance bottlenecks, failure points, and interaction patterns affecting AI model data flow and coordination.", + "limitations": "Does not replace low-level network diagnostics or provide raw packet-level analysis. Its effectiveness depends on the quality and freshness of input channel data. It also does not directly alter channel configuration or manage deployment artifacts.", + "examples": [ + "Analyze last 24 hours of the main event stream channel to identify latency spikes and message error rates.", + "Check the communication channel between AI components for anomalies during the last deployment window.", + "Generate a report on user engagement and message type distribution on the notification channel for the past week." + ] + }, + "tags": [ + "analysis", + "communication", + "channel", + "model-management", + "performance", + "monitoring", + "diagnostics" + ], + "examples": [ + { + "inputJson": "{\"channelData\":{\"throughput\":5000,\"errorRate\":0.02,\"latencyMedianMs\":120,\"engagement\":{\"activeUsers\":200}},\"timeWindow\":\"last24hours\",\"includeMessageContentAnalysis\":true}", + "description": "Analyze a high-throughput channel for errors, latency, and user engagement over the last 24 hours including message content metadata." + }, + { + "inputJson": "{\"channelData\":{\"throughput\":120,\"errorRate\":0.00,\"latencyMedianMs\":50},\"timeWindow\":\"2024-05-01T00:00:00Z/2024-05-07T23:59:59Z\",\"includeMessageContentAnalysis\":false}", + "description": "Analyze a weekly report on a low-volume channel focusing purely on latency and error rates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "model-management.downloadVideo", + "description": "This tool downloads video files associated with AI model resources from a specified URL or cloud storage location. It accepts a video source URL or storage path, optional authentication credentials, and download options such as quality and format. The tool processes the request to securely retrieve and save the video locally or in a specified destination, returning metadata about the downloaded video such as file path, size, and format.", + "category": "model-management", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL or storage path of the video to download. Required for identifying the download source.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local path where the downloaded video will be saved. If not specified, defaults to the current working directory.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key required to access protected video resources. Optional if resource is public.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoFormat", + "type": "string", + "description": "Preferred video file format to download (e.g., mp4, avi). If specified, the tool attempts to download or convert the video to this format.", + "required": false, + "defaultValue": "" + }, + { + "name": "quality", + "type": "string", + "description": "Desired video quality or resolution (e.g., 720p, 1080p). If available, downloads video matching this quality; else downloads default.", + "required": false, + "defaultValue": "\"default\"" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite the file if it already exists at the destination path.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the downloaded video file including local file path, file size in bytes, format, and actual quality downloaded." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve video assets related to AI models, such as training videos, demonstrations, or documentation clips, from URLs or cloud storage for local processing or deployment. It is helpful when direct access or caching of videos is required for model workflows or user interfaces.", + "limitations": "This tool cannot download videos from unsupported or protected platforms requiring complex authentication flows beyond simple tokens. It does not perform video editing or transcoding beyond simple format requests. It relies on accessible network resources and proper authentication.", + "examples": [ + "Download training demo video from a secure cloud URL for local inspection.", + "Retrieve a model usage video in 1080p format from a public content delivery network.", + "Fetch and update the local copy of a video demonstration, overwriting if already present." + ] + }, + "tags": [ + "download", + "video", + "model-management", + "media", + "file-transfer", + "cloud", + "ai-assets" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/model-demo.mp4\",\"destinationPath\":\"/videos/model-demo.mp4\",\"authToken\":\"abc123token\",\"videoFormat\":\"mp4\",\"quality\":\"1080p\",\"overwriteExisting\":true}", + "description": "Download a secured video in mp4 format at 1080p quality to a specified path, overwriting existing file." + }, + { + "inputJson": "{\"videoUrl\":\"https://cdn.example.org/public/model-tutorial.mov\",\"destinationPath\":\"./tutorial.mov\",\"overwriteExisting\":false}", + "description": "Download a public tutorial video to the current folder without overwriting existing file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "model-management.uploadTable", + "description": "Uploads a tabular dataset to an AI model management system for training or inference purposes. Accepts table data in CSV or JSON format, validates and preprocesses it, and stores it linked to a specified model or dataset identifier. Returns a confirmation with upload status and the assigned resource ID.", + "category": "model-management", + "parameters": [ + { + "name": "dataFormat", + "type": "string", + "description": "Format of the table data being uploaded; accepted values are 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "tableData", + "type": "string", + "description": "The raw content of the table data as a CSV string or JSON array of objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelId", + "type": "string", + "description": "Identifier of the AI model or dataset this table is associated with.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description of the table data being uploaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite existing table data for the given modelId if present.", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the table schema against the expected model input schema before uploading.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the upload operation, a unique resourceId for the uploaded table, and any error messages if the upload failed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload structured tabular data to an AI model management platform, particularly before training a new model or updating an existing model's dataset. It handles validation, preprocessing, and persistent storage linked to a model identifier to facilitate downstream model training or inference workflows.", + "limitations": "This tool does not perform data cleaning beyond basic validation, cannot convert unsupported formats, and assumes the data schema matches the model requirements if validateSchema is enabled. It does not directly trigger model retraining.", + "examples": [ + "Upload a CSV dataset to an existing model before retraining.", + "Upload JSON-formatted tabular data with schema validation disabled.", + "Overwrite the existing training data for a model with new CSV data." + ] + }, + "tags": [ + "model-management", + "upload", + "table", + "dataset", + "csv", + "json", + "ai-models" + ], + "examples": [ + { + "inputJson": "{\"dataFormat\":\"csv\",\"tableData\":\"name,age\\nAlice,30\\nBob,25\",\"modelId\":\"model123\",\"description\":\"User demographics data\",\"overwriteExisting\":false,\"validateSchema\":true}", + "description": "Uploading a CSV table with user demographic data for model 'model123' with schema validation enabled." + }, + { + "inputJson": "{\"dataFormat\":\"json\",\"tableData\":\"[{\\\"name\\\":\\\"Eve\\\", \\\"age\\\": 40}, {\\\"name\\\":\\\"John\\\", \\\"age\\\": 35}]\",\"modelId\":\"model456\",\"description\":\"Employee records\",\"overwriteExisting\":true,\"validateSchema\":false}", + "description": "Uploading a JSON array of employee records and overwriting existing data for model 'model456' without schema validation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "model-management.uploadVideo", + "description": "Uploads a video file to an AI model management platform, optionally associating it with a specific model version or dataset. Accepts video files in common formats, performs validation and metadata extraction, then stores the video for training, testing, or demonstration purposes. Returns confirmation with uploaded video ID and metadata.", + "category": "model-management", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local or accessible path to the video file to upload (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "modelId", + "type": "string", + "description": "Identifier of the AI model to associate the uploaded video with (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version tag or identifier of the model version for association (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "datasetId", + "type": "string", + "description": "Identifier of the dataset to which the video should be added (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata about the video (e.g., description, tags) as key-value pairs (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "compressBeforeUpload", + "type": "boolean", + "description": "Whether to compress the video before uploading to save bandwidth (default: false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status, uploaded video unique ID, and extracted metadata such as format, duration, and resolution." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add new video data to an AI model management platform to facilitate training, evaluation, or demonstration. It is useful when the agent handles workflows requiring media uploads linked to specific models or datasets.", + "limitations": "This tool does not perform video content analysis or transcoding beyond optional compression. It does not manage permissions or user authorization; those must be handled separately.", + "examples": [ + "Upload a training video to model 'abc123' version 'v2.0' with descriptive tags.", + "Add a demonstration video to dataset 'dataset789' without linking to a model.", + "Upload a large video with compression enabled to save bandwidth." + ] + }, + "tags": [ + "upload", + "video", + "model-management", + "media", + "AI training", + "dataset", + "model version" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/path/to/video.mp4\",\"modelId\":\"model123\",\"version\":\"v1.0\",\"metadata\":{\"description\":\"Front-facing camera video for object detection.\",\"tags\":[\"front-camera\",\"object-detection\"]},\"compressBeforeUpload\":false}", + "description": "Upload a front-camera video file and associate it with model 'model123' version 'v1.0', including descriptive metadata." + }, + { + "inputJson": "{\"videoFilePath\":\"video_demo.mov\",\"datasetId\":\"dataset456\",\"compressBeforeUpload\":true}", + "description": "Add a demonstration video to dataset 'dataset456' with compression enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "model-management.sendReply", + "description": "Sends a reply message in response to an AI model interaction or system event. Accepts the recipient identifier, the message content, and optional metadata for context or conversation threading. Processes the inputs to dispatch the reply through the appropriate channel and returns a status of the delivery attempt.", + "category": "model-management", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Identifier of the recipient to whom the reply will be sent, such as a user ID or system component.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The textual content of the reply message to send back to the recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversationId", + "type": "string", + "description": "Optional identifier for the conversation or session to which this reply belongs, enabling threading.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data such as timestamps, message type, or context to include with the reply.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object indicating success or failure status of the message delivery, including any error codes or messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send a textual reply to a user or system component as part of managing AI model interactions, workflows, or event-driven communications. It supports threading and context via conversationId and metadata inputs.", + "limitations": "This tool only supports sending text-based replies and does not handle multimedia or complex message types. It assumes the recipient identifier corresponds to a valid and reachable endpoint.", + "examples": [ + "Send a reply to a user confirming model training completion.", + "Reply with an error message to a failed deployment request.", + "Send a status update message linked to an ongoing interaction session." + ] + }, + "tags": [ + "message", + "communication", + "response", + "model-management", + "reply" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user123\",\"messageContent\":\"Model training completed successfully.\",\"conversationId\":\"conv789\",\"metadata\":{\"timestamp\":\"2024-06-01T12:00:00Z\",\"messageType\":\"notification\"}}", + "description": "Send a confirmation reply to a user upon model training completion." + }, + { + "inputJson": "{\"recipientId\":\"systemAgent\",\"messageContent\":\"Deployment failed due to insufficient resources.\",\"metadata\":{\"priority\":\"high\"}}", + "description": "Send an error reply message to a system agent about deployment failure." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "model-management.sendThread", + "description": "Sends a message thread from one user to one or more recipients within an AI model management platform. Accepts thread metadata and message content, verifies recipients, and outputs the status and message thread ID upon successful sending.", + "category": "model-management", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier of the message thread to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "User ID of the sender initiating the message thread send operation.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientIds", + "type": "array", + "description": "Array of user IDs who will receive the message thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "Content of the message to send within the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message (e.g., 'normal', 'high').", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata accompanying the message thread.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the send operation status with success boolean and sent thread ID if successful." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transmit message threads between users within a model management platform, such as notifying team members about model training results or deployment updates. It ensures proper message formatting and recipient validation before sending.", + "limitations": "This tool cannot create new threads from scratch or handle message storage beyond sending. It does not support real-time chat synchronization or multimedia attachments beyond text content.", + "examples": [ + "Send a deployment status update thread from lead data scientist to a group of engineers.", + "Notify model reviewers with a message thread containing evaluation results.", + "Forward a support thread message to a different team within the platform." + ] + }, + "tags": [ + "communication", + "messaging", + "model-management", + "thread", + "send", + "notification" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"thread123\",\"senderId\":\"userAlpha\",\"recipientIds\":[\"userBeta\",\"userGamma\"],\"messageContent\":\"Model training completed successfully.\",\"priority\":\"high\",\"metadata\":{\"modelVersion\":\"v1.2\",\"timestamp\":\"2024-06-15T14:00:00Z\"}}", + "description": "Send a high-priority message thread notifying multiple recipients about successful model training." + }, + { + "inputJson": "{\"threadId\":\"thread789\",\"senderId\":\"userDelta\",\"recipientIds\":[\"userEpsilon\"],\"messageContent\":\"Please review the latest evaluation metrics attached.\",\"priority\":\"normal\"}", + "description": "Send a standard priority message thread with evaluation review request to a single recipient." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "model-management.renderSummary", + "description": "Generates a concise summary report of an AI model's key attributes and performance metrics based on supplied model metadata and evaluation results. Accepts structured input describing model details and outputs a human-readable summary document highlighting essential information for stakeholders.", + "category": "model-management", + "parameters": [ + { + "name": "modelMetadata", + "type": "object", + "description": "An object containing detailed information about the AI model, such as architecture, dataset, training date, and version.", + "required": true, + "defaultValue": "" + }, + { + "name": "performanceMetrics", + "type": "object", + "description": "Evaluation metrics of the model, including accuracy, precision, recall, F1 score, and loss values.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate length (in sentences) of the generated summary report.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag indicating whether to append recommendations based on model performance and usage.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') for the summary text output.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'summaryText' string field with the generated model summary report." + }, + "aiAgent": { + "useCase": "This tool is useful for AI management scenarios where an agent needs to produce human-friendly summaries of AI models for documentation, presentations, or audit purposes. It aids in quickly communicating model details and evaluation results without manual report writing.", + "limitations": "The tool cannot generate very deep technical analyses or directly interpret raw training logs. It relies on well-structured metadata and metrics as input and does not replace detailed technical documentation.", + "examples": [ + "Generate a 5-sentence summary for a computer vision model with provided accuracy and F1 score.", + "Produce a summary including recommendations for a newly evaluated NLP model.", + "Create a summary report in Spanish for a deployed recommendation engine." + ] + }, + "tags": [ + "model-management", + "summary", + "reporting", + "documentation", + "performance", + "AI", + "evaluation" + ], + "examples": [ + { + "inputJson": "{\"modelMetadata\":{\"name\":\"ImageClassifierV3\",\"architecture\":\"ResNet50\",\"dataset\":\"ImageNet\",\"version\":\"3.0\",\"trainingDate\":\"2024-05-15\"},\"performanceMetrics\":{\"accuracy\":0.92,\"precision\":0.91,\"recall\":0.89,\"f1Score\":0.90,\"loss\":0.15},\"summaryLength\":5,\"includeRecommendations\":true,\"language\":\"en\"}", + "description": "Summarize a ResNet50 image classification model with performance metrics and recommendations." + }, + { + "inputJson": "{\"modelMetadata\":{\"name\":\"TextSentimentAnalyzer\",\"architecture\":\"Transformer\",\"dataset\":\"TwitterSentiment\",\"version\":\"1.2\",\"trainingDate\":\"2024-04-01\"},\"performanceMetrics\":{\"accuracy\":0.87,\"precision\":0.88,\"recall\":0.85,\"f1Score\":0.86,\"loss\":0.20},\"summaryLength\":3,\"includeRecommendations\":false,\"language\":\"en\"}", + "description": "Generate a brief summary of an NLP sentiment analysis model." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "model-management.formatTable", + "description": "Formats tabular data for AI model management tasks by applying specified column order, data type conversions, and formatting rules. Accepts an input table as an array of objects and outputs a uniformly formatted table suitable for training or evaluation datasets.", + "category": "model-management", + "parameters": [ + { + "name": "inputTable", + "type": "array", + "description": "The input table data as an array of objects where each object represents a row with column keys.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnOrder", + "type": "array", + "description": "An ordered list of column names to rearrange the table columns in the specified sequence.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "columnFormats", + "type": "object", + "description": "An object mapping column names to desired data types or formatting instructions (e.g., 'numeric', 'string', 'date').", + "required": false, + "defaultValue": "{}" + }, + { + "name": "removeNullRows", + "type": "boolean", + "description": "Flag indicating whether to remove rows that contain null or undefined values in any column.", + "required": false, + "defaultValue": "false" + }, + { + "name": "fillMissingValues", + "type": "object", + "description": "An object specifying columns and the values to fill if missing or null (e.g., {score:0}).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "array", + "description": "An array of uniformly formatted row objects according to specifications to be used as model input or evaluation data." + }, + "aiAgent": { + "useCase": "Use this tool when preparing tabular datasets for AI models that require consistent column ordering and data types. It helps standardize training or evaluation data by enforcing formatting rules, filling missing values, and optionally removing incomplete rows before model consumption.", + "limitations": "This tool does not perform data validation or content quality checks beyond formatting. It does not handle nested objects as cell data or complex transformations like feature engineering.", + "examples": [ + "Format a table to have columns in order ['id','feature','label'], convert 'label' to string, and fill missing 'feature' values with zero.", + "Remove all rows with nulls and reorder columns as specified.", + "Apply date formatting to a column and ensure numeric columns are properly cast." + ] + }, + "tags": [ + "data-formatting", + "model-preparation", + "table", + "data-cleaning", + "AI-training" + ], + "examples": [ + { + "inputJson": "{\"inputTable\":[{\"id\":1,\"feature\":\"10\",\"label\":1},{\"id\":2,\"feature\":null,\"label\":0}],\"columnOrder\":[\"id\",\"feature\",\"label\"],\"columnFormats\":{\"feature\":\"numeric\",\"label\":\"string\"},\"removeNullRows\":false,\"fillMissingValues\":{\"feature\":0}}", + "description": "Fill missing feature with 0, convert feature to numeric, label to string, and reorder columns." + }, + { + "inputJson": "{\"inputTable\":[{\"id\":1,\"feature\":10,\"label\":\"yes\"},{\"id\":2,\"feature\":null,\"label\":\"no\"}],\"removeNullRows\":true}", + "description": "Remove any rows that have nulls and keep original column order." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "model-management.composeLink", + "description": "This tool accepts multiple AI model endpoint URLs or resource identifiers along with optional descriptive metadata, and composes a single unified link or list for easy sharing or embedding. It processes the input array to generate a consolidated link reference that represents all the included AI model resources, facilitating model deployment or collaboration workflows.", + "category": "model-management", + "parameters": [ + { + "name": "modelEndpoints", + "type": "array", + "description": "An array of strings representing individual AI model endpoint URLs or resource identifiers to be linked together.", + "required": true, + "defaultValue": "" + }, + { + "name": "linkName", + "type": "string", + "description": "A user-friendly name for the composite link set to facilitate identification.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "An optional description providing context for the composite link.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to indicate whether to embed metadata such as model version or owner in the composed link.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a composedLink string representing the unified reference URL or resource identifier, and metadata including count of models linked and timestamp of composition." + }, + "aiAgent": { + "useCase": "Use this tool when you need to aggregate multiple AI model endpoints into a single sharable or embeddable link, for example, to simplify deployment references, share collections of related models, or create unified API gateway entries.", + "limitations": "This tool only constructs a reference link and does not deploy or validate model endpoints; it cannot merge or combine model functionality, only compose identifier links.", + "examples": [ + "Create a composite link from three model endpoints for deployment sharing.", + "Generate a named collection linker with metadata about included models.", + "Produce a simple sharable reference from a list of AI model URLs." + ] + }, + "tags": [ + "model-management", + "linking", + "deployment", + "sharing", + "composite", + "URL", + "resource" + ], + "examples": [ + { + "inputJson": "{\"modelEndpoints\":[\"https://api.example.com/model/v1\",\"https://api.example.com/model/v2\",\"https://api.example.com/model/v3\"],\"linkName\":\"Versioned Models\",\"description\":\"Collection of V1 to V3 models\",\"includeMetadata\":true}", + "description": "Create a named composite link including metadata from three versioned model endpoints." + }, + { + "inputJson": "{\"modelEndpoints\":[\"https://mlhost.com/models/abc123\",\"https://mlhost.com/models/xyz789\"],\"includeMetadata\":false}", + "description": "Generate a simple composite link from two model endpoint URLs without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "model-management.buildQueue", + "description": "Creates and configures a message queue infrastructure component to manage model training or deployment jobs. Accepts parameters for queue name, type, retention policy, visibility timeout, and scaling options. Outputs confirmation and queue configuration details to integrate with ML workflows.", + "category": "model-management", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "Unique name identifier for the queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "queueType", + "type": "string", + "description": "Type of the queue, e.g., FIFO or standard queue behavior.", + "required": true, + "defaultValue": "standard" + }, + { + "name": "messageRetentionSeconds", + "type": "number", + "description": "Duration in seconds to retain a message in the queue before it is deleted.", + "required": false, + "defaultValue": "345600" + }, + { + "name": "visibilityTimeoutSeconds", + "type": "number", + "description": "Visibility timeout in seconds during which a message is invisible after being received.", + "required": false, + "defaultValue": "30" + }, + { + "name": "maxReceiveCount", + "type": "number", + "description": "Maximum number of times a message can be received before being sent to dead-letter queue.", + "required": false, + "defaultValue": "5" + }, + { + "name": "deadLetterQueueName", + "type": "string", + "description": "Name of the dead-letter queue for processing failed messages.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableEncryption", + "type": "boolean", + "description": "Flag to enable server-side encryption for messages in the queue.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs for tagging the queue with metadata and ownership information.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the created queue, including its name, URL/ARN, type, and configuration parameters indicating success." + }, + "aiAgent": { + "useCase": "Use this tool when managing AI model pipelines that require asynchronous, reliable message passing for job orchestration, such as scheduling model training or deployment tasks. It helps set up a queue infrastructure tailored to handling message durability, visibility, and failure management in model workflows.", + "limitations": "This tool does not handle message publishing or consumption, only queue creation and configuration. It does not integrate directly with specific cloud providers; implementation needs provider-specific deployment.", + "examples": [ + "Create a FIFO queue named 'modelTrainingQueue' with encryption enabled and a dead-letter queue for failed messages.", + "Build a standard queue 'deploymentJobQueue' with a 5-minute visibility timeout and message retention of 2 days.", + "Set up a queue named 'batchInferenceQueue' tagged for project ownership and default settings." + ] + }, + "tags": [ + "model-management", + "infrastructure", + "queue", + "message-queue", + "job-scheduling", + "ml-pipelines" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"modelTrainingQueue\",\"queueType\":\"FIFO\",\"enableEncryption\":true,\"deadLetterQueueName\":\"modelTrainingDLQ\"}", + "description": "Create a FIFO queue named 'modelTrainingQueue' with encryption enabled and dead-letter queue set to 'modelTrainingDLQ'." + }, + { + "inputJson": "{\"queueName\":\"deploymentJobQueue\",\"queueType\":\"standard\",\"visibilityTimeoutSeconds\":300,\"messageRetentionSeconds\":172800}", + "description": "Create a standard queue 'deploymentJobQueue' with visibility timeout 300 seconds and message retention 2 days." + }, + { + "inputJson": "{\"queueName\":\"batchInferenceQueue\",\"tags\":{\"project\":\"visionAI\",\"owner\":\"teamX\"}}", + "description": "Setup a standard queue 'batchInferenceQueue' tagged with project and ownership metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "model-management.buildCluster", + "description": "Builds a compute cluster tailored for AI model training and deployment by specifying infrastructure and configuration parameters. Accepts inputs like cluster name, node count, machine type, and network settings, then provisions and returns the cluster details including status and endpoints.", + "category": "model-management", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "Unique name identifier for the cluster to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of compute nodes to include in the cluster.", + "required": true, + "defaultValue": "1" + }, + { + "name": "machineType", + "type": "string", + "description": "Type of machine or VM instance (e.g., GPU-enabled) to assign to each node.", + "required": true, + "defaultValue": "standard" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region or data center location for the cluster deployment.", + "required": true, + "defaultValue": "us-central1" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network configuration object including subnet and firewall rules to apply.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoScalingEnabled", + "type": "boolean", + "description": "Enable or disable automatic scaling of cluster nodes based on workload demand.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "array", + "description": "Array of string tags to label and categorize the cluster for management purposes.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object describing the newly created cluster including clusterId, status, node details, endpoints, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI workflow requires provisioning of dedicated compute resources for scalable model training or deployment. Ideal for initiating clusters with specific hardware configurations and network settings to optimize performance and cost management in a cloud or on-prem environment.", + "limitations": "This tool cannot manage existing clusters beyond creation, such as updating or deleting them. It also does not handle the scheduling of training jobs or deployment tasks within the cluster.", + "examples": [ + "Create a 5-node GPU cluster named 'ml-training-cluster' in 'us-west1' region with auto-scaling enabled.", + "Provision a 3-node standard machine cluster tagged with 'experiment' and 'pipelineA' in 'europe-west3'.", + "Build a single-node cluster with custom network settings in 'asia-east1'." + ] + }, + "tags": [ + "model-management", + "cluster", + "infrastructure", + "compute", + "deployment", + "training", + "scaling" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"ml-training-cluster\",\"nodeCount\":5,\"machineType\":\"gpu-standard\",\"region\":\"us-west1\",\"autoScalingEnabled\":true}", + "description": "Create a 5-node GPU-enabled cluster in the US West region with auto-scaling activated." + }, + { + "inputJson": "{\"clusterName\":\"experiment-cluster\",\"nodeCount\":3,\"machineType\":\"standard\",\"region\":\"europe-west3\",\"tags\":[\"experiment\",\"pipelineA\"]}", + "description": "Provision a 3-node standard cluster in Europe West with specific tags for experimental tracking." + }, + { + "inputJson": "{\"clusterName\":\"solo-node\",\"nodeCount\":1,\"machineType\":\"standard\",\"region\":\"asia-east1\",\"networkConfig\":{\"subnet\":\"custom-subnet\",\"firewallRules\":[\"allow-ssh\"]}}", + "description": "Build a single-node cluster with custom network settings in the Asia East region." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "model-management.generateAnomaly", + "description": "Generates anomaly detection models using provided historical and real-time data. Accepts time series or tabular data as input with optional feature specifications, applies statistical or machine learning techniques to identify unusual patterns, and outputs a trained anomaly detection model along with anomaly scores for each observation.", + "category": "model-management", + "parameters": [ + { + "name": "trainingData", + "type": "array", + "description": "Array of data objects representing historical labeled or unlabeled data used for training the anomaly detection model.", + "required": true, + "defaultValue": "" + }, + { + "name": "featureColumns", + "type": "array", + "description": "List of column names within the training data to use as features for anomaly detection.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "modelType", + "type": "string", + "description": "Type of anomaly detection model to generate, such as 'isolationForest', 'autoencoder', or 'statistical'.", + "required": false, + "defaultValue": "isolationForest" + }, + { + "name": "contamination", + "type": "number", + "description": "Estimated proportion of anomalies in the dataset, used to calibrate detection thresholds (value between 0 and 0.5).", + "required": false, + "defaultValue": "0.05" + }, + { + "name": "useRealTimeData", + "type": "boolean", + "description": "Flag indicating whether to incorporate incoming real-time data streams for model updating or evaluation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "updateFrequency", + "type": "string", + "description": "Frequency to update the model when real-time data is used, e.g. 'daily', 'hourly'. Ignored if useRealTimeData is false.", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the trained anomaly detection model metadata, model parameters, and an array of anomaly scores for each input data point, with flags indicating detected anomalies." + }, + "aiAgent": { + "useCase": "Use this tool when a user needs to develop and deploy an anomaly detection model over historical and optionally streaming data to identify unusual patterns or outliers automatically. It supports multiple model types and feature selections for flexible analytics workflows.", + "limitations": "This tool does not perform feature engineering or data cleaning automatically. It assumes well-prepared input data, and anomaly detection effectiveness depends heavily on the choice of model type and data quality. It is not suitable for anomaly explanations or root cause analysis.", + "examples": [ + "Generate an isolation forest based anomaly detection model on server log metrics to identify unusual system behavior.", + "Build an autoencoder model to detect anomalies in IoT sensor data streams with updates every hour.", + "Create a statistical anomaly detection model using selected features from financial transaction data." + ] + }, + "tags": [ + "anomaly-detection", + "model-training", + "analytics", + "machine-learning", + "time-series", + "real-time", + "data-science" + ], + "examples": [ + { + "inputJson": "{\"trainingData\":[{\"timestamp\":\"2024-01-01T00:00:00Z\",\"value\":23.5},{\"timestamp\":\"2024-01-01T01:00:00Z\",\"value\":45.1},{\"timestamp\":\"2024-01-01T02:00:00Z\",\"value\":22.0}],\"featureColumns\":[\"value\"],\"modelType\":\"isolationForest\",\"contamination\":0.05,\"useRealTimeData\":true,\"updateFrequency\":\"hourly\"}", + "description": "Train an isolation forest anomaly detection model on hourly time series values and update model with real-time data every hour." + }, + { + "inputJson": "{\"trainingData\":[{\"sensor1\":0.5,\"sensor2\":0.7},{\"sensor1\":0.55,\"sensor2\":0.72},{\"sensor1\":5.0,\"sensor2\":0.8}],\"featureColumns\":[\"sensor1\",\"sensor2\"],\"modelType\":\"autoencoder\",\"contamination\":0.1,\"useRealTimeData\":false}", + "description": "Generate an autoencoder model for anomaly detection on two sensor features with 10% expected anomaly contamination without real-time updates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "model-management.generateGraph", + "description": "Generates visual graphs representing AI model metrics, training progress, or architecture details. Accepts JSON input specifying graph type, data points, and styling options, processes the data to create visualizations such as line charts, bar charts, or network diagrams, and outputs an SVG or PNG image encoding the graph for integration in reports or dashboards.", + "category": "model-management", + "parameters": [ + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate (e.g., 'line', 'bar', 'pie', 'network')", + "required": true, + "defaultValue": "" + }, + { + "name": "data", + "type": "object", + "description": "Structured data for the graph, including labels and values relevant to the graph type", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title displayed on the graph", + "required": false, + "defaultValue": "" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output graph image in pixels", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output graph image in pixels", + "required": false, + "defaultValue": "600" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color palette to use for the graph's elements", + "required": false, + "defaultValue": "default" + }, + { + "name": "outputFormat", + "type": "string", + "description": "File format for the graph output ('svg' or 'png')", + "required": false, + "defaultValue": "svg" + } + ], + "returns": { + "type": "object", + "description": "An object containing the graph image encoded as a Base64 string, along with metadata such as format and dimensions" + }, + "aiAgent": { + "useCase": "Use this tool when needing to visually represent AI model training statistics, performance metrics, or architecture relationships in a standardized image format for documentation, monitoring dashboards, or presentations. It automates the conversion of structured model data into clear, customizable graphs.", + "limitations": "Does not perform complex analytics or data preprocessing; input data must be clean and structured. Cannot generate interactive graphs or export to formats other than SVG or PNG.", + "examples": [ + "Generate a line chart showing model accuracy over epochs.", + "Create a network diagram visualizing model layers and connections.", + "Produce a bar chart comparing validation losses of multiple models." + ] + }, + "tags": [ + "graph", + "visualization", + "model-management", + "metrics", + "AI", + "monitoring", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"graphType\":\"line\",\"data\":{\"labels\":[\"Epoch 1\",\"Epoch 2\",\"Epoch 3\"],\"datasets\":[{\"label\":\"Accuracy\",\"data\":[0.65,0.78,0.85]}]},\"title\":\"Model Accuracy Over Epochs\",\"width\":800,\"height\":600,\"colorScheme\":\"blue\",\"outputFormat\":\"svg\"}", + "description": "Generate a line chart of model accuracy progression during training." + }, + { + "inputJson": "{\"graphType\":\"network\",\"data\":{\"nodes\":[{\"id\":\"input\",\"label\":\"Input Layer\"},{\"id\":\"hidden1\",\"label\":\"Hidden Layer 1\"},{\"id\":\"output\",\"label\":\"Output Layer\"}],\"edges\":[{\"from\":\"input\",\"to\":\"hidden1\"},{\"from\":\"hidden1\",\"to\":\"output\"}]},\"title\":\"Neural Network Architecture\",\"width\":1000,\"height\":800,\"colorScheme\":\"default\",\"outputFormat\":\"png\"}", + "description": "Create a network diagram showing the layers and connections of a neural network." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "model-management.generateMarkdown", + "description": "Generates a markdown-formatted report summarizing AI model details, including architecture, training metrics, and deployment status. Accepts structured model information as input, formats content with optional sections, and outputs a markdown string suitable for documentation or presentation.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name of the AI model to be documented.", + "required": true, + "defaultValue": "" + }, + { + "name": "architectureDetails", + "type": "string", + "description": "Description of the model's architecture and components.", + "required": true, + "defaultValue": "" + }, + { + "name": "trainingMetrics", + "type": "object", + "description": "Key-value pairs representing training performance metrics such as accuracy, loss, epochs.", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentStatus", + "type": "string", + "description": "Current deployment status or environment of the model (e.g., testing, production).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeUsageInstructions", + "type": "boolean", + "description": "Flag to include a usage instructions section in the markdown output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customNotes", + "type": "string", + "description": "Additional notes or comments to append at the end of the markdown report.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'markdownReport' with the complete markdown text summarizing the model." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate human-readable documentation in markdown format for AI models based on structured input data about the model's architecture, training outcomes, and deployment stage. This helps automate creation of reports for sharing or storing model details.", + "limitations": "This tool does not validate the correctness of metrics or architecture descriptions; it purely formats given input into markdown. It cannot generate content beyond what is provided as input.", + "examples": [ + "Generate a markdown report for a new convolutional neural network with training accuracy and current deployment status.", + "Create documentation markdown including usage instructions for a transformer-based model.", + "Produce a summary markdown highlighting model name, architecture details, and key training metrics without deployment info." + ] + }, + "tags": [ + "model-management", + "generate", + "markdown", + "documentation", + "AI", + "report" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"ImageClassifierV2\",\"architectureDetails\":\"ResNet-50 with batch normalization and dropout layers.\",\"trainingMetrics\":{\"accuracy\":\"92.5%\",\"loss\":\"0.15\",\"epochs\":30},\"deploymentStatus\":\"Production\",\"includeUsageInstructions\":true,\"customNotes\":\"Deployed on AWS infrastructure.\"}", + "description": "Generate a detailed markdown report for an image classification model including deployment and usage instructions." + }, + { + "inputJson": "{\"modelName\":\"TextSummarizer\",\"architectureDetails\":\"Transformer-based encoder-decoder model.\",\"trainingMetrics\":{\"rougeL\":\"0.48\",\"epochs\":25},\"includeUsageInstructions\":false,\"customNotes\":\"\"}", + "description": "Create a markdown summary for a text summarization model without usage instructions or deployment status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Markdown", + "context": null + } + }, + { + "name": "model-management.generateConversion", + "description": "This tool generates a conversion analytics report for an AI model deployment by analyzing input user action data and model interaction logs. It accepts raw interaction logs and user behavior data, processes them to calculate conversion rates, and outputs a structured report detailing conversion metrics, trends, and actionable insights to optimize model performance.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "The unique identifier of the AI model to analyze conversions for.", + "required": true, + "defaultValue": "" + }, + { + "name": "interactionLogs", + "type": "array", + "description": "Array of user interaction records including timestamps and actions relevant to conversion funnel steps.", + "required": true, + "defaultValue": "" + }, + { + "name": "userActions", + "type": "array", + "description": "List of defined user actions representing key steps in the conversion funnel (e.g., visit, signup, purchase).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Start and end timestamps to filter the data analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for metrics aggregation (e.g., hourly, daily, weekly).", + "required": false, + "defaultValue": "daily" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to include trend analysis over the given time range.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing conversion metrics, trend analysis, funnel drop-off points, and recommendations to improve model-driven conversions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate how well an AI model or system is converting user interactions into desired outcomes, such as signups or purchases, by generating comprehensive conversion analytics reports. It helps identify bottlenecks and optimization opportunities in the model's deployment funnel.", + "limitations": "This tool does not perform predictive modeling or real-time conversion tracking. It requires structured interaction logs and clearly defined user actions. It cannot operate without adequate input data representing the conversion funnel.", + "examples": [ + "Generate a conversion report for model 'abc123' using last month's interaction logs to analyze signup rates.", + "Provide daily conversion metrics and trend insights for model 'xyz789' over the past 3 weeks.", + "Analyze conversion funnel drop-offs for model deployment with given user action definitions and interaction dataset." + ] + }, + "tags": [ + "model-management", + "conversion", + "analytics", + "reporting", + "performance", + "user-behavior" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"interactionLogs\":[{\"timestamp\":\"2024-05-01T12:00:00Z\",\"action\":\"visit\",\"userId\":\"u1\"},{\"timestamp\":\"2024-05-01T12:05:00Z\",\"action\":\"signup\",\"userId\":\"u1\"},{\"timestamp\":\"2024-05-02T15:30:00Z\",\"action\":\"visit\",\"userId\":\"u2\"}],\"userActions\":[\"visit\",\"signup\",\"purchase\"],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"granularity\":\"daily\",\"includeTrends\":true}", + "description": "Generate a detailed conversion report for model 'abc123' using May 2024 user interaction logs, analyzing daily signup and purchase rates including trend analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "model-management.generateYAML", + "description": "Generates a YAML configuration string for AI model training or deployment based on input parameters. Accepts model specifications such as model type, hyperparameters, dataset paths, and environment settings, then processes these inputs to produce a structured YAML document for use in automated pipelines or manual configuration.", + "category": "model-management", + "parameters": [ + { + "name": "modelType", + "type": "string", + "description": "Type or architecture of the AI model (e.g., 'transformer', 'cnn').", + "required": true, + "defaultValue": "" + }, + { + "name": "hyperparameters", + "type": "object", + "description": "Key-value pairs of hyperparameters (e.g., learning rate, batch size) to configure model training.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "datasetPath", + "type": "string", + "description": "File path or URI to the training dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationPath", + "type": "string", + "description": "File path or URI to the validation dataset.", + "required": false, + "defaultValue": "" + }, + { + "name": "environment", + "type": "object", + "description": "Environment settings including hardware info and software dependencies.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormatVersion", + "type": "string", + "description": "Version identifier for the YAML configuration schema to generate.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "includeDeployment", + "type": "boolean", + "description": "Flag indicating whether to include deployment configuration in the YAML output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "YAML formatted configuration string ready for use in model training or deployment pipelines." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to dynamically generate or modify YAML configuration files for model training or deployment environments based on user-provided parameters. Ideal for automating pipeline setups or generating reproducible experimental configurations.", + "limitations": "Cannot validate the semantic correctness of the model configurations or ensure compatibility with every training framework; YAML schema variations may not be fully supported depending on 'outputFormatVersion'.", + "examples": [ + "Generate a YAML config for a transformer model with specified hyperparameters and dataset paths.", + "Create a deployment-ready YAML including environment specs for a CNN model.", + "Produce a basic YAML for model training with minimal parameters." + ] + }, + "tags": [ + "model-management", + "configuration", + "yaml", + "model-training", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"modelType\":\"transformer\",\"hyperparameters\":{\"learningRate\":0.001,\"batchSize\":32},\"datasetPath\":\"/data/train.csv\",\"validationPath\":\"/data/val.csv\",\"environment\":{\"gpu\":\"nvidia-tesla-v100\",\"framework\":\"pytorch\"},\"outputFormatVersion\":\"1.0\",\"includeDeployment\":true}", + "description": "Generate a YAML configuration for a transformer model with GPU environment and deployment settings." + }, + { + "inputJson": "{\"modelType\":\"cnn\",\"datasetPath\":\"s3://datasets/image_train\",\"includeDeployment\":false}", + "description": "Generate a minimal YAML configuration for CNN model training without deployment details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "model-management.createConversion", + "description": "Creates a conversion analytics metric by processing user interaction data with a specified conversion event step sequence. Accepts raw user event logs, applies a funnel definition to calculate conversion rates at each step, and outputs a structured conversion report including step-wise counts and overall conversion percentage.", + "category": "model-management", + "parameters": [ + { + "name": "eventLogs", + "type": "array", + "description": "Array of user event objects, each representing a timestamped user action with event name and user ID.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionSteps", + "type": "array", + "description": "Ordered list of event names defining the conversion funnel steps to track.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Maximum time window in minutes allowed between first and last step to count a valid conversion sequence.", + "required": false, + "defaultValue": "30" + }, + { + "name": "uniqueUserBy", + "type": "string", + "description": "User identifier key in event objects to aggregate conversions by unique users.", + "required": false, + "defaultValue": "userId" + }, + { + "name": "includeDropOffs", + "type": "boolean", + "description": "Whether to include intermediate step drop-off counts in the report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Conversion report including counts for each funnel step, drop-off numbers (if requested), total conversions, and overall conversion rate as a percentage." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze user behavior through a conversion funnel defined by sequential events to understand drop-offs and conversion rates from raw event log data. It is ideal for marketing analytics, user behavior analysis, and product optimization tasks.", + "limitations": "This tool assumes event logs are well-formed and timestamped correctly but does not handle noisy or incomplete data cleansing. It also does not perform advanced statistical analysis or predictive modeling beyond conversion rate calculation.", + "examples": [ + "Create a conversion report for a signup funnel with steps: visit landing page, click sign up button, complete registration, within 60 minutes.", + "Calculate conversion rates from raw clickstream data for the purchase funnel with customizable time window and unique user tracking key.", + "Generate detailed drop-off analytics for a multi-step onboarding process using user event logs and funnel definitions." + ] + }, + "tags": [ + "conversion", + "analytics", + "funnel", + "user-behavior", + "model-management", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"eventLogs\":[{\"userId\":\"u1\",\"event\":\"page_view\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"userId\":\"u1\",\"event\":\"click_signup\",\"timestamp\":\"2024-05-01T10:01:00Z\"},{\"userId\":\"u1\",\"event\":\"complete_registration\",\"timestamp\":\"2024-05-01T10:05:00Z\"},{\"userId\":\"u2\",\"event\":\"page_view\",\"timestamp\":\"2024-05-01T10:02:00Z\"},{\"userId\":\"u2\",\"event\":\"click_signup\",\"timestamp\":\"2024-05-01T10:20:00Z\"}],\"conversionSteps\":[\"page_view\",\"click_signup\",\"complete_registration\"],\"timeWindowMinutes\":60,\"uniqueUserBy\":\"userId\",\"includeDropOffs\":true}", + "description": "Basic conversion funnel analysis for signup process within one hour time window." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "model-management.createChannel", + "description": "Creates a communication channel for AI model management workflows. Accepts inputs such as channel name, type (e.g., slack, email, webhook), access permissions, and optional description. Processes configuration and provisioning details, then outputs a summary of the created channel including its unique ID, URL or endpoint, and status.", + "category": "model-management", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "The human-readable name of the channel to create, used for identification and display.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "The type of communication channel to create, e.g., 'slack', 'email', 'webhook'. Determines configuration specifics.", + "required": true, + "defaultValue": "" + }, + { + "name": "accessPermissions", + "type": "object", + "description": "An object defining access control, including roles and user IDs permitted to send or receive messages on this channel.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the channel's purpose or usage context.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value metadata to attach custom settings or tags to the channel.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns details of the created channel including ID, URL or endpoint, configuration summary, and current status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI system or developer needs to establish a new communication channel for real-time or asynchronous messages related to AI model lifecycle management, such as notifications, alerts, or command interfaces. It is useful for integrating AI model workflows into operational platforms like Slack or webhook endpoints.", + "limitations": "This tool does not handle message sending, channel monitoring, or management beyond initial creation. It also does not configure authentication mechanisms beyond simple access permissions provided.", + "examples": [ + "Create a Slack channel named 'model-alerts' with access for data scientists and engineers.", + "Create an email notification channel for model update alerts with specified recipients.", + "Create a webhook channel for model inference request notifications with metadata tags indicating environment." + ] + }, + "tags": [ + "channel", + "communication", + "model-management", + "integration", + "notification", + "permissions" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"model-alerts\",\"channelType\":\"slack\",\"accessPermissions\":{\"roles\":[\"data-scientist\",\"engineer\"]},\"description\":\"Slack channel for model alerts\"}", + "description": "Creates a Slack channel named 'model-alerts' with role-based access for data scientists and engineers." + }, + { + "inputJson": "{\"channelName\":\"model-update-email\",\"channelType\":\"email\",\"accessPermissions\":{\"users\":[\"user1@example.com\",\"user2@example.com\"]},\"description\":\"Email channel for model updates\"}", + "description": "Sets up an email channel to send model update alerts to specified user emails." + }, + { + "inputJson": "{\"channelName\":\"inference-webhook\",\"channelType\":\"webhook\",\"metadata\":{\"env\":\"production\",\"team\":\"mlops\"}}", + "description": "Creates a webhook channel for production inference notifications tagged with environment and team info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "model-management.createCertificate", + "description": "Creates a security certificate for an AI model deployment by accepting model identification details, certificate type, validity period, and encryption settings. It processes these inputs to generate a signed certificate file usable for securing model inference endpoints.", + "category": "model-management", + "parameters": [ + { + "name": "modelId", + "type": "string", + "description": "Unique identifier of the AI model to associate the certificate with.", + "required": true, + "defaultValue": "" + }, + { + "name": "certificateType", + "type": "string", + "description": "Type of certificate to create, e.g., 'SSL', 'CodeSigning', or 'ClientAuth'.", + "required": true, + "defaultValue": "" + }, + { + "name": "validityDays", + "type": "number", + "description": "Number of days the certificate will remain valid from the creation date.", + "required": true, + "defaultValue": "365" + }, + { + "name": "encryptionAlgorithm", + "type": "string", + "description": "The encryption algorithm to use for the certificate, e.g., 'RSA-2048' or 'ECDSA-P256'.", + "required": false, + "defaultValue": "RSA-2048" + }, + { + "name": "issuerName", + "type": "string", + "description": "Name of the certificate issuer authority. Default is the internal CA.", + "required": false, + "defaultValue": "InternalCA" + }, + { + "name": "includePrivateKey", + "type": "boolean", + "description": "Whether to include the private key in the output package (for deployment purposes).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the certificate PEM string, private key PEM string if included, expiration date, and metadata about the certificate." + }, + "aiAgent": { + "useCase": "Use this tool when deploying or updating AI models requiring secure communication channels or authentication. It generates certificates tailored for model endpoints or code signing, ensuring trusted interactions and model integrity. Useful for automating security in CI/CD pipelines for AI systems.", + "limitations": "This tool does not handle certificate revocation or provide a public CA integration; it assumes the usage of internal or preconfigured issuers.", + "examples": [ + "Create an SSL certificate for model 'abc123' valid for 90 days using default settings.", + "Generate a code signing certificate with ECDSA-P256 algorithm for a new model deployment.", + "Produce a client authentication certificate including the private key for internal service authentication." + ] + }, + "tags": [ + "security", + "certificate", + "model-deployment", + "encryption", + "automation" + ], + "examples": [ + { + "inputJson": "{\"modelId\":\"abc123\",\"certificateType\":\"SSL\",\"validityDays\":90}", + "description": "Generate an SSL certificate valid for 90 days for model 'abc123' using default encryption and issuer." + }, + { + "inputJson": "{\"modelId\":\"modelXYZ\",\"certificateType\":\"CodeSigning\",\"validityDays\":180,\"encryptionAlgorithm\":\"ECDSA-P256\",\"includePrivateKey\":true}", + "description": "Create a code signing certificate using ECDSA-P256 algorithm including the private key for secure code verification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "model-management.createExpense", + "description": "Creates a new expense record associated with a model management or AI project, capturing details such as amount, category, date, description, and related project or model identifier. It accepts structured input data, validates it, stores the expense, and returns the created expense record with a unique identifier.", + "category": "model-management", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "Monetary amount of the expense in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) for the amount, e.g., USD, EUR.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "category", + "type": "string", + "description": "Category or type of the expense, such as 'Training Cost', 'Cloud Usage', 'Software License'.", + "required": true, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Date when the expense was incurred in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text about the expense detail or purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "projectId", + "type": "string", + "description": "Identifier of the project or model management context to which this expense is attributed.", + "required": false, + "defaultValue": "" + }, + { + "name": "receiptUrl", + "type": "string", + "description": "Optional URL or link to a scanned receipt or invoice document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created expense record including a unique ID, all submitted details, and a timestamp of creation." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to record financial expenditures related to AI model development, deployment, or management, such as budgeting, tracking cloud costs, or software licenses. It helps centralize and organize expense data linked to projects or models for reporting and auditing purposes.", + "limitations": "This tool cannot process reimbursements or payments; it only records expense data. It does not perform accounting or financial analysis beyond storing the data.", + "examples": [ + "Create a new expense record for a cloud GPU rental of $150 on 2024-05-01 for project ID 'proj_123'.", + "Record a software subscription expense of $30 in EUR with description 'Data labeling tool license' without linking it to a specific project.", + "Add an expense of $500 with a scanned receipt URL for consulting services dated 2024-04-20." + ] + }, + "tags": [ + "model-management", + "expense-tracking", + "finance", + "project-management", + "AI-projects" + ], + "examples": [ + { + "inputJson": "{\"amount\":150.0,\"currency\":\"USD\",\"category\":\"Cloud Usage\",\"date\":\"2024-05-01\",\"description\":\"GPU rental for model training\",\"projectId\":\"proj_123\",\"receiptUrl\":\"\"}", + "description": "Record cloud GPU rental expense for project proj_123." + }, + { + "inputJson": "{\"amount\":30.0,\"currency\":\"EUR\",\"category\":\"Software License\",\"date\":\"2024-04-15\",\"description\":\"Data labeling tool monthly license\",\"projectId\":\"\",\"receiptUrl\":\"\"}", + "description": "Record monthly license expense without project linkage." + }, + { + "inputJson": "{\"amount\":500.0,\"currency\":\"USD\",\"category\":\"Consulting Services\",\"date\":\"2024-04-20\",\"description\":\"Consulting for model optimization\",\"projectId\":\"proj_456\",\"receiptUrl\":\"https://example.com/receipt123.pdf\"}", + "description": "Record consulting service expense with receipt URL for project proj_456." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "model-management.createDiagram", + "description": "Creates a visual diagram representing an AI model architecture or deployment workflow. Accepts inputs detailing model components, connections, and optional annotations; processes these to generate a structured diagram output as a JSON object representing nodes and edges, suitable for rendering or further editing.", + "category": "model-management", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name of the AI model to be represented in the diagram.", + "required": true, + "defaultValue": "" + }, + { + "name": "components", + "type": "array", + "description": "An array of objects describing each component/module of the model (e.g., layers, data inputs, preprocessing steps). Each object includes id, label, and type.", + "required": true, + "defaultValue": "" + }, + { + "name": "connections", + "type": "array", + "description": "An array defining connections between components, each with source and target component ids to represent dataflow or dependencies.", + "required": true, + "defaultValue": "" + }, + { + "name": "annotations", + "type": "array", + "description": "Optional array of annotation objects to add notes or metadata on diagram components or connections.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "layoutType", + "type": "string", + "description": "The preferred layout style for the diagram, e.g., 'hierarchical', 'circular', or 'force-directed'.", + "required": false, + "defaultValue": "hierarchical" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the diagram including nodes, edges, layout metadata, suitable for rendering or export." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize or generate a machine learning model architecture or deployment pipeline diagram from structured component definitions. Useful for documentation, review, or design workflows.", + "limitations": "This tool does not render graphical images itself; it provides diagram data structure only. Complex automatic layout adjustments may be limited depending on layoutType.", + "examples": [ + "Create a diagram for a convolutional neural network model with input, convolutional, pooling, and output layers.", + "Generate a deployment workflow diagram showing model inference servers, data sources, and client applications.", + "Add annotations highlighting which components perform preprocessing vs. model inference." + ] + }, + "tags": [ + "model-management", + "diagram", + "visualization", + "architecture", + "ai-model", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"ImageClassifierCNN\",\"components\":[{\"id\":\"input\",\"label\":\"Input Layer\",\"type\":\"input\"},{\"id\":\"conv1\",\"label\":\"Conv Layer 1\",\"type\":\"conv\"},{\"id\":\"pool1\",\"label\":\"Pooling Layer 1\",\"type\":\"pooling\"},{\"id\":\"fc\",\"label\":\"Fully Connected Layer\",\"type\":\"fc\"},{\"id\":\"output\",\"label\":\"Output Layer\",\"type\":\"output\"}],\"connections\":[{\"source\":\"input\",\"target\":\"conv1\"},{\"source\":\"conv1\",\"target\":\"pool1\"},{\"source\":\"pool1\",\"target\":\"fc\"},{\"source\":\"fc\",\"target\":\"output\"}],\"annotations\":[{\"targetId\":\"conv1\",\"note\":\"Uses 3x3 filters\"}],\"layoutType\":\"hierarchical\"}", + "description": "Defines a typical CNN model diagram with layers and connection flow" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "model-management.createAudio", + "description": "This tool generates synthetic audio files using AI models trained for text-to-speech or audio synthesis. It accepts input parameters such as text scripts, voice profiles, audio format, and sample rate, processes them with the underlying model, and outputs audio data or file references for playback or download.", + "category": "model-management", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The text content to be converted into speech or audio.", + "required": true, + "defaultValue": "" + }, + { + "name": "voiceProfile", + "type": "string", + "description": "The identifier for the voice style or persona to use for synthesis.", + "required": false, + "defaultValue": "default" + }, + { + "name": "audioFormat", + "type": "string", + "description": "The desired output audio file format, e.g., wav, mp3.", + "required": false, + "defaultValue": "wav" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Sample rate (in Hz) for the output audio.", + "required": false, + "defaultValue": "22050" + }, + { + "name": "speed", + "type": "number", + "description": "Speech speed multiplier where 1 is normal speed.", + "required": false, + "defaultValue": "1" + }, + { + "name": "pitch", + "type": "number", + "description": "Pitch adjustment multiplier where 1 is normal pitch.", + "required": false, + "defaultValue": "1" + }, + { + "name": "outputFileName", + "type": "string", + "description": "Optional filename for the generated audio output.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL or path to the generated audio file, audio metadata including format, duration, and sample rate." + }, + "aiAgent": { + "useCase": "Use this tool when text-based input needs to be converted into realistic speech or audio output for applications such as voice assistants, audiobooks, announcements, or multimedia content generation. It allows AI agents to create custom audio dynamically based on provided text and voice preferences.", + "limitations": "This tool cannot generate audio from arbitrary non-textual inputs like images or videos. It does not perform audio editing or mixing post-generation and cannot guarantee human-like prosody in all voices.", + "examples": [ + "Create an audio narration from given script for accessibility features.", + "Generate custom alerts in a specific voice profile for an application.", + "Produce speech outputs from chatbot responses in real-time audio format." + ] + }, + "tags": [ + "audio", + "synthesis", + "text-to-speech", + "model-management", + "media", + "voice", + "tts", + "speech" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to the audio creation tool.\",\"voiceProfile\":\"female_en_us\",\"audioFormat\":\"mp3\",\"sampleRate\":44100,\"speed\":1,\"pitch\":1,\"outputFileName\":\"welcome.mp3\"}", + "description": "Generate an English US female voice reading a welcome message as an MP3 file." + }, + { + "inputJson": "{\"text\":\"Your download is complete.\",\"voiceProfile\":\"male_en_uk\",\"audioFormat\":\"wav\",\"sampleRate\":16000,\"speed\":1.2,\"pitch\":0.9}", + "description": "Create a faster, slightly lower-pitched UK male voice notification in WAV format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "model-management.createDependency", + "description": "Creates and registers a software dependency (e.g., library or package) required by an AI model or its pipeline. Accepts dependency details like name, version, source, and compatibility info, performs validation and integration checks, and outputs a structured record confirming successful creation or errors.", + "category": "model-management", + "parameters": [ + { + "name": "dependencyName", + "type": "string", + "description": "The name of the dependency to create and register, e.g., a library or package name.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "The version string of the dependency, such as semantic versioning e.g. '1.2.3'.", + "required": true, + "defaultValue": "" + }, + { + "name": "source", + "type": "string", + "description": "Source or repository URL of the dependency, e.g., GitHub link or package registry URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "compatiblePlatforms", + "type": "array", + "description": "List of platforms or environments (e.g., 'linux', 'windows', 'macos') where the dependency is supported.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isOptional", + "type": "boolean", + "description": "Flag indicating whether the dependency is optional for the model's functioning or mandatory.", + "required": false, + "defaultValue": "false" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or metadata about the dependency for documentation or audit purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object including dependencyId (unique identifier), status (e.g., 'created', 'exists', or 'error'), and message detailing success or error information." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically add and track external or internal code dependencies required by an AI model's training or deployment pipeline, ensuring proper version and platform compatibility management.", + "limitations": "This tool does not fetch or install the dependencies itself; it only registers and validates dependency metadata. It cannot resolve version conflicts automatically.", + "examples": [ + "Create a new mandatory dependency 'numpy' version '1.21.0' from PyPI repository for Linux and Windows platforms.", + "Register an optional helper library 'matplotlib' version '3.4.2' with source repository link and additional notes.", + "Add a dependency without specifying source to track a legacy internal library." + ] + }, + "tags": [ + "dependency", + "model-management", + "registration", + "versioning", + "compatibility", + "package" + ], + "examples": [ + { + "inputJson": "{\"dependencyName\":\"numpy\",\"version\":\"1.21.0\",\"source\":\"https://pypi.org/project/numpy/1.21.0/\",\"compatiblePlatforms\":[\"linux\",\"windows\"],\"isOptional\":false,\"notes\":\"Core scientific computing library.\"}", + "description": "Register numpy version 1.21.0 as a mandatory dependency supporting Linux and Windows." + }, + { + "inputJson": "{\"dependencyName\":\"matplotlib\",\"version\":\"3.4.2\",\"source\":\"https://github.com/matplotlib/matplotlib\",\"compatiblePlatforms\":[\"linux\",\"windows\",\"macos\"],\"isOptional\":true,\"notes\":\"Optional plotting library.\"}", + "description": "Add matplotlib as an optional dependency with GitHub source for all platforms." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "embedding-generation.analyzeLink", + "description": "This tool accepts a URL as input, fetches and analyzes the web page content, and generates a vector embedding representing the semantic content of that page. It outputs a numeric embedding vector along with metadata such as page title and summary. It helps convert online content into embedding form for downstream semantic search, clustering, or recommendation tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the web page to analyze and embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum seconds to wait when fetching the URL before timing out.", + "required": false, + "defaultValue": "10" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as page title and summary in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for vector generation.", + "required": false, + "defaultValue": "default-embedding-model-v1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as an array of numbers, plus metadata like page title, summary, and the source URL." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert web page content into dense vector embeddings for semantic analysis tasks such as search indexing, clustering, or recommendations based on the content of online resources. It is suitable when given a URL pointing to relevant content.", + "limitations": "This tool does not perform in-depth content extraction for complex web apps or paywalled content. It also cannot embed non-textual elements like images or videos embedded in the page, only text content extracted.", + "examples": [ + "Generate embedding for the page https://en.wikipedia.org/wiki/Artificial_intelligence", + "Fetch and analyze https://news.ycombinator.com and produce semantic vector and metadata", + "Create a vector embedding for https://openai.com/blog and include page summary" + ] + }, + "tags": [ + "embedding", + "link", + "web", + "semantic", + "vector", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://en.wikipedia.org/wiki/Machine_learning\"}", + "description": "Analyze Wikipedia page on Machine Learning to generate embedding and extract metadata." + }, + { + "inputJson": "{\"url\":\"https://www.bbc.com/news\",\"timeoutSeconds\":15,\"includeMetadata\":true}", + "description": "Fetch BBC News homepage with longer timeout and obtain embedding vector with page metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "embedding-generation.analyzeTable", + "description": "Processes tabular data input (CSV string or JSON array of objects) to generate vector embeddings representing the semantic content of each row or column. It supports specifying whether to embed rows or columns, handles optional text normalization, and returns embeddings with associated metadata for downstream similarity search or clustering tasks.", + "category": "embedding-generation", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "Tabular data input as a CSV-formatted string or JSON array of objects representing rows.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the tableData input; valid values are 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "embedBy", + "type": "string", + "description": "Indicates if embeddings should be generated per 'row' or per 'column' of the table.", + "required": false, + "defaultValue": "row" + }, + { + "name": "normalizeText", + "type": "boolean", + "description": "If true, apply text normalization like lowercasing and punctuation removal before embedding.", + "required": false, + "defaultValue": "true" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use, e.g., 'sentence-transformers/all-MiniLM-L6-v2'.", + "required": false, + "defaultValue": "sentence-transformers/all-MiniLM-L6-v2" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to process for embeddings; helps limit resource use. 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of embedding objects, each with an id, the original text segment embedded, and its numerical vector representation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert the semantic content of structured tabular data into vector embeddings for similarity search, clustering, or downstream machine learning tasks. Ideal for data analysis scenarios where comparing rows or columns via semantic similarity is required, such as product catalogs, user attribute tables, or experimental results.", + "limitations": "Cannot process extremely large tables efficiently without pre-filtering; embeddings quality depends on the input text quality and the selected embedding model. Not designed for complex multi-dimensional tables or non-textual data like images.", + "examples": [ + "Generate row embeddings from a CSV product data table to find similar products.", + "Create column embeddings from a JSON array of survey results to identify related attributes.", + "Normalize and embed each row of a CSV containing news headline data for clustering by topic." + ] + }, + "tags": [ + "embedding", + "table", + "vectorization", + "data-analysis", + "semantic-search" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"product,description\\nA,This is a fast red bike\\nB,An electric scooter\\nC,Comfortable running shoes\",\"inputFormat\":\"csv\",\"embedBy\":\"row\",\"normalizeText\":true}", + "description": "Embed each row of a CSV product dataset to later find similar products based on descriptions." + }, + { + "inputJson": "{\"tableData\":\"[{\\\"Name\\\":\\\"Temp\\\",\\\"Jan\\\":5,\\\"Feb\\\":7},{\\\"Name\\\":\\\"Humidity\\\",\\\"Jan\\\":30,\\\"Feb\\\":25}]\",\"inputFormat\":\"json\",\"embedBy\":\"column\",\"normalizeText\":false}", + "description": "Generate embeddings for each column from a JSON array representing monthly weather data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "embedding-generation.analyzeKPI", + "description": "This tool accepts a list of textual descriptions of KPIs (Key Performance Indicators) along with optional metadata, generates semantic embeddings for each KPI, and performs analysis to identify similarity clusters, trends, and key driver factors based on the embeddings. The output includes embedding vectors and an analytical summary highlighting KPI relationships and insights.", + "category": "embedding-generation", + "parameters": [ + { + "name": "kpiTexts", + "type": "array", + "description": "An array of strings, each representing the textual description of a KPI to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "array", + "description": "An optional array of objects providing metadata per KPI, such as dates, categories, or numeric values to enrich analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or identifier of the embedding model to use for generating vector representations.", + "required": false, + "defaultValue": "\"default-embedding-model\"" + }, + { + "name": "similarityThreshold", + "type": "number", + "description": "Numeric threshold (0 to 1) for determining significant similarity between KPI embeddings to form clusters.", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "maxClusters", + "type": "number", + "description": "The maximum number of similarity clusters to identify in the analysis output.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing embeddings for each KPI, clusters of similar KPIs with similarity scores, and an analytical summary describing detected trends and key factors." + }, + "aiAgent": { + "useCase": "Use this tool when you need to semantically analyze multiple KPI descriptions for similarity, relationship patterns, and key insights using vector embeddings, especially for KPI management, business analytics, or performance measurement tasks. It helps distill complex KPIs into clusters and identifying patterns or outliers.", + "limitations": "This tool does not perform numerical statistical analysis beyond embedding-based similarity and clustering. It relies on the quality of input text and embedding model and does not replace expert human analysis of KPI definitions or business context.", + "examples": [ + "Analyze a list of sales and marketing KPIs to find overlapping metrics and key focus areas.", + "Cluster operational KPIs across different departments to identify redundant or similar indicators.", + "Generate semantic embeddings for KPIs to support visualization and strategic decision-making." + ] + }, + "tags": [ + "embedding", + "KPI", + "analytics", + "semantic-analysis", + "clustering", + "business-intelligence" + ], + "examples": [ + { + "inputJson": "{\"kpiTexts\":[\"Monthly Revenue Growth\",\"Customer Churn Rate\",\"Net Promoter Score\",\"Average Handle Time\",\"Employee Turnover Rate\"]}", + "description": "Analyze common business KPIs to detect which ones are semantically similar or related to identify focus areas." + }, + { + "inputJson": "{\"kpiTexts\":[\"Daily Active Users\",\"Monthly Recurring Revenue\",\"Conversion Rate\",\"Bounce Rate\"],\"similarityThreshold\":0.8,\"maxClusters\":5}", + "description": "Analyze product KPIs with a higher similarity threshold and limit of clusters to find tightly related metrics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "embedding-generation.analyzePayment", + "description": "This tool accepts detailed payment transaction data, including textual notes and transaction metadata, and generates vector embeddings that capture semantic information and categorical features useful for downstream analysis such as fraud detection, payment categorization, or anomaly detection. It processes text and numeric attributes to produce a combined embedding vector representing the payment.", + "category": "embedding-generation", + "parameters": [ + { + "name": "paymentData", + "type": "object", + "description": "An object containing the payment information such as amount, description, date, payee, and other metadata to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The embedding generation model to use for encoding text and metadata, e.g., 'finbert-base' or 'universal-sentence-encoder'.", + "required": false, + "defaultValue": "finbert-base" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include numeric and categorical metadata in the embedding along with textual fields.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTextLength", + "type": "number", + "description": "Maximum character length for text fields to use for embedding to avoid excessive input size.", + "required": false, + "defaultValue": "512" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a numeric vector embedding representing the payment transaction, and optionally metadata about the embedding process such as model used and timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert payment transaction data into meaningful vector representations for tasks like fraud detection, payment classification, clustering similar payments, or building search indexes over payments. This tool helps encode semantic and transactional features into embeddings suitable for machine learning pipelines.", + "limitations": "Cannot replace domain-specific fraud classification or payment reconciliation; embeddings provide features but do not produce classification or labels by themselves.", + "examples": [ + "Generate an embedding of a bank payment to use as input for fraud detection model.", + "Create vector embeddings for all recent payments to cluster similar transactions.", + "Analyze payment notes and metadata to build search indexes based on meaning and metadata." + ] + }, + "tags": [ + "embedding", + "payment", + "transaction-analysis", + "fraud-detection", + "vectorization" + ], + "examples": [ + { + "inputJson": "{\"paymentData\":{\"amount\":150.75,\"currency\":\"USD\",\"description\":\"Invoice #1234 payment for consulting services\",\"date\":\"2024-06-15\",\"payee\":\"Acme Consulting\"},\"embeddingModel\":\"finbert-base\",\"includeMetadata\":true,\"maxTextLength\":512}", + "description": "Embedding generation for a consulting service payment including amount and description." + }, + { + "inputJson": "{\"paymentData\":{\"amount\":2500,\"currency\":\"EUR\",\"description\":\"Salary payment June 2024\",\"date\":\"2024-06-30\",\"payee\":\"John Doe\"},\"embeddingModel\":\"universal-sentence-encoder\",\"includeMetadata\":false,\"maxTextLength\":256}", + "description": "Embedding generation focusing on text description only for salary payment, excluding numeric metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "embedding-generation.analyzeDashboard", + "description": "This tool accepts structured dashboard data, including various widget configurations and their associated textual content, and generates vector embeddings that capture the semantic information of the dashboard layout and content. It outputs an analysis object containing embeddings for each widget as well as aggregate analytics to facilitate advanced search, clustering, or recommendation use cases.", + "category": "embedding-generation", + "parameters": [ + { + "name": "dashboardData", + "type": "object", + "description": "Structured JSON object representing the dashboard, including widgets, their types, textual labels, metrics, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Name or identifier of the embedding model to use, supporting options such as 'text-embedding-ada-002' or custom models.", + "required": false, + "defaultValue": "text-embedding-ada-002" + }, + { + "name": "includeAggregateEmbedding", + "type": "boolean", + "description": "Whether to compute and include an aggregate embedding that represents the entire dashboard content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxWidgets", + "type": "number", + "description": "Maximum number of widgets to process from the dashboard for embedding generation, to control processing time and resource use.", + "required": false, + "defaultValue": "50" + }, + { + "name": "normalizeEmbeddings", + "type": "boolean", + "description": "Indicates if the output embeddings should be normalized (unit length vectors).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis object containing a mapping of widget IDs to their corresponding embeddings, an optional aggregate embedding for the entire dashboard, metadata about the processing, and embedding dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to semantically analyze the textual and metadata content of dashboard widgets for purposes such as improving dashboard searchability, enabling similarity comparisons between dashboards, or powering recommendation engines. It transforms heterogeneous dashboard content into a consistent vector space representation.", + "limitations": "This tool does not render visual elements or perform image embeddings and is limited to textual and metadata content. It cannot interpret real-time data streams or perform time series forecasting.", + "examples": [ + "Analyze the embeddings of all widgets in this sales performance dashboard for clustering similar KPIs.", + "Generate a vector representation of the marketing dashboard widgets to power semantic search over widget descriptions.", + "Provide aggregate semantic embedding of the entire dashboard to compare similarity with other dashboards." + ] + }, + "tags": [ + "embedding-generation", + "dashboard", + "analysis", + "vector-embeddings", + "semantic-search", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"dashboardData\":{\"widgets\":[{\"id\":\"w1\",\"type\":\"text\",\"content\":\"Total Revenue Q1\"},{\"id\":\"w2\",\"type\":\"chart\",\"title\":\"Monthly Sales\",\"description\":\"Bar chart showing sales per month\"},{\"id\":\"w3\",\"type\":\"table\",\"title\":\"Top Customers\",\"columns\":[\"Name\",\"Sales\"]}],\"metadata\":{\"author\":\"analyst1\",\"created\":\"2024-05-01\"}},\"embeddingModel\":\"text-embedding-ada-002\",\"includeAggregateEmbedding\":true,\"maxWidgets\":10,\"normalizeEmbeddings\":true}", + "description": "Embedding analysis for a sales dashboard with a few widgets, including generating individual and aggregate embeddings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "embedding-generation.analyzeRisk", + "description": "Analyzes text input to generate vector embeddings specifically optimized for identifying and assessing security risk-related content. Accepts raw text or documents describing potential risks, processes them to output semantic embeddings that highlight risk factors, enabling downstream applications such as risk clustering, similarity search, and threat intelligence.", + "category": "embedding-generation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw text or document content describing security risks to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The name or version of the embedding model to use for risk analysis (e.g., 'risk-specific-v1').", + "required": false, + "defaultValue": "risk-specific-v1" + }, + { + "name": "normalizeOutput", + "type": "boolean", + "description": "Whether to normalize the resulting embedding vectors (unit length).", + "required": false, + "defaultValue": "true" + }, + { + "name": "returnMetadata", + "type": "boolean", + "description": "Include metadata like token count and processing timestamps in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the embedding vector as a numeric array optimized for risk context, plus optional metadata if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to represent security risk-related textual data as dense vectors for machine learning models, similarity search, or clustering, aiding in automated threat detection, risk management, or compliance analysis.", + "limitations": "This tool only generates embeddings; it does not classify or interpret the risk severity, which requires additional models. It assumes input text is in English and properly formatted.", + "examples": [ + "Generate embeddings from a new vulnerability report to cluster it with past risks.", + "Create semantic vectors for incident logs to find similar prior events.", + "Embed risk analysis sections in compliance documents for similarity search." + ] + }, + "tags": [ + "embedding", + "security", + "risk-analysis", + "vectorization", + "nlp" + ], + "examples": [ + { + "inputJson": "{\"text\":\"The recent breach exposed customer PII due to outdated firewall configurations.\",\"embeddingModel\":\"risk-specific-v1\",\"normalizeOutput\":true,\"returnMetadata\":true}", + "description": "Embedding generation for a security incident report describing breached PII risk." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "embedding-generation.analyzeComment", + "description": "Processes a text comment to generate a vector embedding reflecting its semantic content, along with an analysis of sentiment and key topics. Accepts raw comment text and optional language setting, then outputs a multidimensional embedding vector, sentiment polarity, and extracted key topics for use in downstream applications like clustering, search, or recommendation.", + "category": "embedding-generation", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw text content of the comment to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the comment text (e.g., 'en' for English) to guide embedding and analysis accuracy.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the comment text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTopics", + "type": "boolean", + "description": "Whether to extract key topics or keywords from the comment text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the comment's vector embedding (array of floats), sentiment score (positive/neutral/negative), and an array of key topics extracted from the comment." + }, + "aiAgent": { + "useCase": "Use this tool when needing a semantic vector representation of a comment for searching, grouping, or understanding user sentiment and themes. It helps in analyzing user feedback, reviews, or social comments to drive insights or trigger actions.", + "limitations": "Cannot fully understand highly ambiguous, sarcastic, or very short comments; sentiment analysis is approximate and may not capture nuanced emotions; embedding quality depends on language support and contextual richness.", + "examples": [ + "Generate embedding and sentiment for a product review comment to aid in customer feedback analysis.", + "Extract key topics and vector embedding from user forum posts for content recommendation.", + "Analyze social media comments to detect sentiment trends and main discussion points." + ] + }, + "tags": [ + "embedding", + "comment analysis", + "sentiment", + "topic extraction", + "vectorization", + "nlp", + "text analysis" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I love the new update, it's really improved the app's speed!\",\"language\":\"en\",\"includeSentiment\":true,\"includeTopics\":true}", + "description": "Analyze a positive user comment about an app update with sentiment and key topics." + }, + { + "inputJson": "{\"commentText\":\"The recent changes made navigation harder and slower.\",\"includeSentiment\":true}", + "description": "Analyze a negative feedback comment for sentiment and embedding, defaulting to English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "embedding-generation.uploadJSON", + "description": "Uploads a JSON-formatted dataset containing text entries and optional metadata for vector embedding generation. Processes the provided JSON data by validating structure and storing it for embedding computation, returning a status report and summary of uploaded items.", + "category": "embedding-generation", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The JSON string representing an array of text objects with optional metadata to be uploaded for embedding generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetName", + "type": "string", + "description": "A descriptive name for the dataset being uploaded to help identify it later.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, overwrites existing dataset with the same name, otherwise appends or errors out if duplicate.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxEntries", + "type": "number", + "description": "Maximum number of JSON objects to process from the input; useful for limiting upload size.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, number of records accepted, number of records rejected (if any), and an optional error message." + }, + "aiAgent": { + "useCase": "Use this tool when you have JSON-formatted text data that needs to be prepared for vector embedding generation. It is particularly useful for bulk uploading datasets that include text and optional metadata for further NLP processing or search indexing.", + "limitations": "This tool cannot generate embeddings itself; it only uploads and validates JSON data for embedding generation. It also requires the input JSON to be well-formed and follow the expected schema (e.g., an array of objects with text fields).", + "examples": [ + "Upload a JSON array of customer reviews for sentiment embedding.", + "Load a dataset of product descriptions with IDs to generate embeddings later.", + "Submit a JSON list of research paper abstracts to be embedded for semantic search." + ] + }, + "tags": [ + "embeddinggeneration", + "upload", + "json", + "dataset", + "textprocessing" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"[{\\\"text\\\":\\\"Machine learning improves AI capabilities.\\\", \\\"id\\\":1}, {\\\"text\\\":\\\"Natural language processing enables better chatbots.\\\", \\\"id\\\":2}]\",\"datasetName\":\"AI Text Samples\",\"overwriteExisting\":\"false\",\"maxEntries\":2}", + "description": "Uploading a small dataset of AI-related texts with unique IDs for embedding." + }, + { + "inputJson": "{\"jsonData\":\"[{\\\"text\\\":\\\"Deep learning techniques in image analysis.\\\"}, {\\\"text\\\":\\\"Advances in reinforcement learning.\\\"}]\",\"datasetName\":\"ResearchAbstracts\",\"overwriteExisting\":\"true\",\"maxEntries\":10}", + "description": "Uploading research abstracts dataset, overwriting if it exists." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "embedding-generation.sendNotification", + "description": "This tool accepts a notification payload along with embedding vectors associated with the content. It processes by packaging the text embeddings and notification details to send customized notifications to users or systems relevant to the embedding semantics. Output is a status response with delivery metadata.", + "category": "embedding-generation", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the notification recipient", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Text content of the notification message", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingVector", + "type": "array", + "description": "Numerical array representing the semantic embedding of the message content", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Communication channel to send the notification (e.g., email, SMS, push)", + "required": false, + "defaultValue": "push" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification (e.g., low, normal, high)", + "required": false, + "defaultValue": "normal" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional data to include with the notification such as timestamps or tags", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the notification send attempt (e.g., success/failure), timestamp, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you want to send notifications that are generated or selected based on semantic embeddings of the content, enabling context-aware communication to users or systems via multiple channels. It's ideal for embedding-aware alerting or messaging in AI workflows.", + "limitations": "This tool does not generate embeddings itself nor analyze user preferences; it relies on provided embeddings and recipient info. It does not guarantee delivery, only sending status.", + "examples": [ + "Send a push notification alert with high priority to a user based on semantic similarity embedding.", + "Deliver a notification message via email using the embedding vector representing the message context.", + "Send a normal priority SMS notification to a device with additional metadata like timestamp." + ] + }, + "tags": [ + "embedding", + "notification", + "communication", + "semantic", + "vector", + "alert", + "message" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user123\",\"message\":\"Your order has been shipped.\",\"embeddingVector\":[0.12,0.98,0.45,0.22],\"channel\":\"push\",\"priority\":\"high\",\"metadata\":{\"orderId\":\"abc123\",\"timestamp\":\"2024-06-01T12:00:00Z\"}}", + "description": "Send a high priority push notification about a shipped order with embedding vector and metadata." + }, + { + "inputJson": "{\"recipientId\":\"user456\",\"message\":\"Weekly report is ready.\",\"embeddingVector\":[0.33,0.47,0.89,0.11],\"channel\":\"email\",\"priority\":\"normal\"}", + "description": "Send a normal priority email notification about a weekly report using the semantic embedding of the message." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "embedding-generation.uploadDataset", + "description": "Uploads a dataset file for embedding generation workflows. Accepts dataset files in CSV, JSON, or TXT formats, validates and stores them securely for further embedding processing tasks. Returns a confirmation and metadata about the uploaded dataset including its size and format.", + "category": "embedding-generation", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "Name identifier for the uploaded dataset to reference later.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Specifies the format of the dataset file (e.g., csv, json, txt).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Base64 encoded content of the dataset file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the dataset for context.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, overwrites an existing dataset with the same name.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Response object containing upload status, dataset metadata including name, size in bytes, format, and any warnings or errors." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload and register new datasets as part of a pipeline that will later generate embeddings. Suitable for automating dataset management before embedding computations. Ensures datasets are correctly formatted and stored before subsequent processing.", + "limitations": "This tool does not perform any embedding generation itself, only the upload and storage of dataset files. It does not support streaming large files; files must be base64 encoded and fully provided. Does not validate dataset content quality beyond basic format checks.", + "examples": [ + "Upload a CSV dataset named 'customer_reviews.csv' containing product reviews for embedding.", + "Upload a JSON file for a text corpus to be used in training embedding models.", + "Overwrite an existing dataset named 'news_articles' with updated content." + ] + }, + "tags": [ + "embedding", + "dataset", + "upload", + "file", + "data-management", + "embedding-preparation" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"customer_feedback_q1\",\"fileType\":\"csv\",\"fileContent\":\"U29tZSxGYWtlLGRhdGEsU29tZSwxMjM=\",\"description\":\"Customer feedback data for Q1 analysis.\",\"overwriteExisting\":false}", + "description": "Uploads a CSV dataset of customer feedback with a description, without overwriting existing datasets." + }, + { + "inputJson": "{\"datasetName\":\"research_papers\",\"fileType\":\"json\",\"fileContent\":\"W3sidGl0bGUiOiBSZXNlYXJjaCBQYXBlciIsInRlcnMiOiBbInRlcnMgY29udGVudCJdfV0=\",\"overwriteExisting\":true}", + "description": "Uploads and overwrites an existing JSON dataset named 'research_papers' containing paper metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "embedding-generation.renderReport", + "description": "This tool takes structured report data in JSON format and rendering options, then generates a formatted textual report embedding that summarizes and structures the information for downstream machine learning or semantic search tasks. Inputs may include report sections, titles, and style preferences, producing a clean, flattened string embedding output.", + "category": "embedding-generation", + "parameters": [ + { + "name": "reportData", + "type": "object", + "description": "A JSON object containing the structured content of the report, including sections, headings, and text blocks.", + "required": true, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Preferred style for rendering the report text, such as 'concise', 'detailed', or 'bulletPoints'.", + "required": false, + "defaultValue": "concise" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include report metadata (author, date, version) in the rendered output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in tokens or characters) for the output embedding text.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string field 'renderedReport' with the final report text embedding." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured report data into a unified textual embedding suitable for AI semantic indexing, similarity search, or summarization workflows. It is ideal for transforming document domain objects into simplified text for embedding models.", + "limitations": "It does not generate vector embeddings directly; the output is rendering text meant for further embedding steps. It cannot parse unstructured raw text or non-report data formats.", + "examples": [ + "Render a quarterly sales report JSON object into a concise embedding text.", + "Generate a detailed version of a technical report with metadata included.", + "Create a bullet-point style summary embedding from the input report sections." + ] + }, + "tags": [ + "embedding", + "report", + "render", + "document", + "text", + "semantic search", + "summarization" + ], + "examples": [ + { + "inputJson": "{\"reportData\":{\"title\":\"Q1 Sales Report\",\"author\":\"Jane Doe\",\"date\":\"2024-03-31\",\"sections\":[{\"heading\":\"Summary\",\"content\":\"Overall sales increased by 15% compared to last quarter.\"},{\"heading\":\"Top Products\",\"content\":\"Product A led sales with a 25% increase.\"}]},\"style\":\"concise\",\"includeMetadata\":true,\"maxLength\":500}", + "description": "Rendering a concise report embedding including metadata from a sales report JSON." + }, + { + "inputJson": "{\"reportData\":{\"title\":\"Tech Research Findings\",\"sections\":[{\"heading\":\"Introduction\",\"content\":\"This study covers AI impact in healthcare.\"},{\"heading\":\"Results\",\"content\":\"Improved diagnostic accuracy by 5%.\"}]},\"style\":\"detailed\",\"includeMetadata\":false,\"maxLength\":1200}", + "description": "Rendering a detailed version of a technical research report without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "embedding-generation.downloadDataset", + "description": "Downloads a specified embedding dataset used for training or benchmarking embedding generation models. Accepts dataset name and optional filters to select versions or subsets. Provides a downloadable link or direct data output in standard formats such as JSON, CSV, or binary embedding files.", + "category": "embedding-generation", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "The name of the embedding dataset to download (e.g., 'glove', 'fasttext', 'sentence-transformers').", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Specific version or release identifier of the dataset to download, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "subset", + "type": "string", + "description": "Optional subset or split of the dataset to retrieve (e.g., 'train', 'test', 'validation').", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Desired output format for the dataset. Common options include 'json', 'csv', 'bin' for binary embeddings.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include metadata or labels with the downloaded dataset (e.g., source info, licensing).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing downloadUrl for direct download or data field with inline dataset content depending on size/format. Also includes metadata like datasetName, version, and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve embedding datasets for training, evaluation, or research purposes. It helps agents fetch specific dataset versions or subsets in preferred formats to integrate into embedding model workflows or benchmarking pipelines.", + "limitations": "This tool does not preprocess or transform datasets beyond delivering the requested dataset and metadata. It cannot create new embeddings or datasets, only provide existing ones available in the registry.", + "examples": [ + "Download the 'glove' embeddings dataset version '6B' in CSV format.", + "Get the 'sentence-transformers' dataset training subset as JSON.", + "Retrieve the latest 'fasttext' dataset without metadata." + ] + }, + "tags": [ + "embedding-generation", + "dataset", + "download", + "machine-learning", + "nlp", + "data-access" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"glove\",\"version\":\"6B\",\"format\":\"csv\"}", + "description": "Download the GloVe dataset version 6B in CSV format." + }, + { + "inputJson": "{\"datasetName\":\"sentence-transformers\",\"subset\":\"train\",\"format\":\"json\",\"includeMetadata\":true}", + "description": "Download the training subset of Sentence Transformers dataset as JSON with metadata." + }, + { + "inputJson": "{\"datasetName\":\"fasttext\"}", + "description": "Download the latest default version of FastText dataset in default JSON format without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "embedding-generation.sendAlert", + "description": "This tool accepts a security alert message along with optional metadata, generates a vector embedding representation of the alert content for semantic analysis, and sends it to a designated alert management system endpoint. It outputs a success confirmation with the embedding vector and message ID for tracking purposes.", + "category": "embedding-generation", + "parameters": [ + { + "name": "alertMessage", + "type": "string", + "description": "The raw text content of the security alert to be embedded and sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional key-value pairs related to the alert, such as severity, source IP, or timestamp.", + "required": false, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "The identifier of the embedding model to use for vector generation (e.g., 'bert-base', 'openai-text-embedding-002').", + "required": false, + "defaultValue": "openai-text-embedding-002" + }, + { + "name": "destinationEndpoint", + "type": "string", + "description": "The URL or identifier of the endpoint/system where the alert and its embedding should be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEmbeddingInResponse", + "type": "boolean", + "description": "Whether to include the computed embedding vector as part of the tool's return output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a success flag, a unique message ID for tracking, the embedding vector if requested, and any error messages encountered during processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or receives security alert text that requires standardized embedding for downstream semantic analysis, correlation, or alert management workflows. It helps transform textual alerts into vector format and sends them to monitoring or incident response systems for further action.", + "limitations": "This tool cannot perform alert classification, prioritization, or automated mitigation actions by itself. It only generates embeddings and forwards alerts as-is to specified endpoints.", + "examples": [ + "Send embedding of a phishing alert to the SIEM endpoint for clustering.", + "Forward an intrusion detection system alert with associated metadata and embedding to the incident management platform.", + "Embed and send anomalous login event alerts for semantic correlation in the alert manager." + ] + }, + "tags": [ + "embedding", + "security", + "alert", + "semantic-analysis", + "vectorization", + "monitoring", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"alertMessage\":\"Suspicious login detected from IP 192.168.1.15\",\"metadata\":{\"severity\":\"high\",\"timestamp\":\"2024-06-01T12:00:00Z\"},\"embeddingModel\":\"openai-text-embedding-002\",\"destinationEndpoint\":\"https://alerts.mycompany.com/api/v1/receive\",\"includeEmbeddingInResponse\":true}", + "description": "Embed and send a high severity suspicious login security alert with timestamp to the alerts API endpoint, returning the embedding vector in the response." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "file-operations.analyzeEvent", + "description": "Analyzes event log files containing JSON or CSV formatted data to extract key metrics such as event frequency, duration, and error rates. Accepts file path or raw content, processes events to output summarized statistics and anomalies in a structured JSON report.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Path to the event log file to analyze. Supports JSON or CSV formats.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawContent", + "type": "string", + "description": "Raw content of the event log data as a string, used if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the event log data: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "timeField", + "type": "string", + "description": "Name of the timestamp field in the event data for sorting and duration calculations.", + "required": false, + "defaultValue": "timestamp" + }, + { + "name": "eventTypeField", + "type": "string", + "description": "Name of the field that identifies the type/category of the event.", + "required": false, + "defaultValue": "eventType" + }, + { + "name": "errorField", + "type": "string", + "description": "Name of the field indicating error or failure status in events.", + "required": false, + "defaultValue": "error" + }, + { + "name": "analyzeDuration", + "type": "boolean", + "description": "Whether to calculate event durations between start and end events when applicable.", + "required": false, + "defaultValue": "true" + }, + { + "name": "frequencyWindowMinutes", + "type": "number", + "description": "Time window in minutes for calculating event frequency statistics.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON object containing summary statistics such as total event counts, frequency over time windows, duration metrics, and error rates, along with detected anomalies if any." + }, + "aiAgent": { + "useCase": "Use this tool when you have event log files from systems, applications, or sensors and need automated extraction of key analytics like frequency of events, durations, and error occurrences. It helps in monitoring system behavior and detecting anomalies.", + "limitations": "This tool cannot repair malformed log files or interpret event semantics beyond the provided fields. It also assumes timestamps are consistent and does not support real-time streaming data input.", + "examples": [ + "Analyze event logs from a web server to find peak request times and error rates.", + "Process application event logs in CSV to measure average process durations.", + "Inspect sensor event logs to identify anomalies in event frequencies." + ] + }, + "tags": [ + "analysis", + "file-operations", + "event-logs", + "analytics", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/logs/app_events.json\",\"fileFormat\":\"json\",\"timeField\":\"timestamp\",\"eventTypeField\":\"event_type\",\"errorField\":\"error_flag\",\"analyzeDuration\":true,\"frequencyWindowMinutes\":30}", + "description": "Analyze a JSON event log file to extract event frequency every 30 mins, durations and errors." + }, + { + "inputJson": "{\"rawContent\":\"timestamp,eventType,error\\n2024-06-01T10:00:00Z,start,0\\n2024-06-01T10:05:00Z,end,0\\n2024-06-01T10:10:00Z,error,1\",\"fileFormat\":\"csv\",\"timeField\":\"timestamp\",\"eventTypeField\":\"eventType\",\"errorField\":\"error\",\"analyzeDuration\":true,\"frequencyWindowMinutes\":60}", + "description": "Analyze raw CSV event data string with start, end and error events to find durations and error occurrences." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "embedding-generation.formatJSON", + "description": "Formats raw JSON data representing embedding vectors or metadata into a clean, standardized JSON string. Accepts input JSON objects or arrays containing embedding data, applies standardized indentation and spacing, optionally filters keys, and outputs a validated, human-readable JSON string suitable for embedding storage or further processing.", + "category": "embedding-generation", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The raw JSON object or array containing embedding vectors and related metadata to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for JSON indentation to enhance readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "filterKeys", + "type": "array", + "description": "List of keys to retain in the output JSON; if empty or omitted, all keys are preserved.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to sort the object keys alphabetically in the output JSON.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted JSON string and a validity flag indicating if parsing and formatting were successful." + }, + "aiAgent": { + "useCase": "Use this tool when you need to cleanly format, standardize, and optionally filter or sort JSON data representing embedding vectors or metadata before storage, transmission, or further processing by embedding-based systems.", + "limitations": "This tool does not generate embeddings, validate semantic correctness of embedded data, or convert raw text into embeddings. It only reformats and filters provided JSON data.", + "examples": [ + "Format raw embedding vectors JSON with 4 spaces indentation.", + "Filter JSON to only include 'embedding' and 'id' keys and sort keys alphabetically.", + "Produce minimal indented JSON string without filtering or sorting." + ] + }, + "tags": [ + "embedding-generation", + "json-formatting", + "data-cleaning", + "json", + "embedding-data", + "vector-formatting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"id\":\"123abc\",\"embedding\":[0.12,0.34,0.56],\"metadata\":{\"source\":\"user\"}},\"indentationSpaces\":4,\"filterKeys\":[\"id\",\"embedding\"],\"sortKeys\":true}", + "description": "Format an embedding JSON entry keeping only 'id' and 'embedding' keys, sorted alphabetically with 4-space indentation." + }, + { + "inputJson": "{\"inputData\":{\"text\":\"hello world\",\"embedding\":[0.1,0.2,0.3],\"timestamp\":\"2023-01-01\"},\"indentationSpaces\":2,\"filterKeys\":[],\"sortKeys\":false}", + "description": "Format full embedding JSON including all keys, with 2 space indentation and no sorting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "embedding-generation.formatTest", + "description": "This tool accepts raw test definitions related to embedding generation, formats them according to a standardized code style, and outputs the formatted test code as a string. It helps in preparing consistent, well-structured test code for embedding generation components given raw or unformatted test inputs.", + "category": "embedding-generation", + "parameters": [ + { + "name": "rawTestCode", + "type": "string", + "description": "Unformatted or raw test code input related to embedding generation to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the test code (e.g., 'javascript', 'python') to apply appropriate formatting rules.", + "required": true, + "defaultValue": "javascript" + }, + { + "name": "indentStyle", + "type": "string", + "description": "Indentation style to use in formatting (e.g., 'space' or 'tab').", + "required": false, + "defaultValue": "space" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces or tab width for indentation.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted test code as a string with consistent code style." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives raw or inconsistent test code samples for embedding generation components and needs to convert them into consistently formatted, readable test code to integrate into projects or documentation. It ensures uniform style for easier maintenance and review.", + "limitations": "This tool does not execute or validate the correctness of the test logic, only formats the code stylistically. It depends on language and style inputs and may not fully parse highly complex or non-standard code constructs.", + "examples": [ + "Format raw JavaScript unit test code for embedding generation with 2-space indentation.", + "Format unstructured Python embedding test cases to use tabs for indentation." + ] + }, + "tags": [ + "embedding-generation", + "code-formatting", + "test-code", + "software-testing", + "javascript", + "python" + ], + "examples": [ + { + "inputJson": "{\"rawTestCode\":\"describe('Embedding generator', ()=>{test('should return correct vector',()=>{const result=embed('text');expect(result).toHaveLength(1536);});});\",\"language\":\"javascript\",\"indentStyle\":\"space\",\"indentSize\":2}", + "description": "Formats a JavaScript embedding generator test block with 2-space indentation." + }, + { + "inputJson": "{\"rawTestCode\":\"def test_embedding_vector():\\n result = embed('sample')\\n assert len(result) == 1536\",\"language\":\"python\",\"indentStyle\":\"tab\",\"indentSize\":1}", + "description": "Formats a Python test function for embedding vector with tab indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "embedding-generation.formatAPI", + "description": "This tool accepts raw embedding vectors, API specification details, and formatting options to produce a well-structured, ready-to-use API specification snippet for embedding generation endpoints. It formats inputs into code domain API definitions in JSON or YAML for integration in projects.", + "category": "embedding-generation", + "parameters": [ + { + "name": "embeddingVectors", + "type": "array", + "description": "An array of numeric embedding vectors to be included in the API specification.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiSpecification", + "type": "object", + "description": "Object containing API metadata including endpoint path, method, and parameter details.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The output format style for the API specification (e.g., 'json', 'yaml').", + "required": false, + "defaultValue": "\"json\"" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example requests and responses in the API specification.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns the formatted API specification as a string in the requested format, ready for embedding generation integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw embedding data and related endpoint info into a developer-ready API specification snippet for embedding generation services. Ideal for automatic documentation generation or API client scaffolding.", + "limitations": "This tool does not generate the embedding vectors themselves or perform semantic analysis; it only formats given data into API specification code snippets.", + "examples": [ + "Generate a JSON API snippet for an embedding generation endpoint using provided vectors and metadata.", + "Format the embedding generation API specification in YAML including example payloads.", + "Create a minimal JSON API definition with no examples for embedding vectors." + ] + }, + "tags": [ + "embedding", + "API", + "formatting", + "code-generation", + "specification", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"embeddingVectors\":[[0.1,0.2,0.3],[0.4,0.5,0.6]],\"apiSpecification\":{\"endpoint\":\"/generate-embedding\",\"method\":\"POST\",\"parameters\":[{\"name\":\"inputText\",\"type\":\"string\",\"required\":true}]},\"formatStyle\":\"json\",\"includeExamples\":true}", + "description": "Format embedding vectors and API metadata into JSON API spec with examples." + }, + { + "inputJson": "{\"embeddingVectors\":[[0.01,0.02,0.03]],\"apiSpecification\":{\"endpoint\":\"/embedding\",\"method\":\"POST\",\"parameters\":[{\"name\":\"text\",\"type\":\"string\",\"required\":true}]},\"formatStyle\":\"yaml\",\"includeExamples\":false}", + "description": "Create a YAML API spec for embedding endpoint without examples." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "embedding-generation.draftReport", + "description": "This tool accepts a structured prompt describing the topic, target audience, and key points, then generates a coherent draft report text. It performs natural language generation based on the input parameters, producing a structured report draft suitable for further refinement or embedding generation workflows.", + "category": "embedding-generation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the report to draft.", + "required": true, + "defaultValue": "" + }, + { + "name": "audience", + "type": "string", + "description": "The intended audience for the report, guiding tone and style.", + "required": false, + "defaultValue": "general" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of strings with key points or sections to include in the report.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "length", + "type": "number", + "description": "Approximate length of the draft report in words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section at the start.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated report draft text and a summary if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce an initial text draft of a report based on a specific topic, audience, and key points, potentially as a preliminary step before embedding extraction or further content analysis.", + "limitations": "It cannot generate fully finalized or publication-ready reports; the output may require human review and editing for accuracy, detail, and style conformity.", + "examples": [ + "Draft a report about climate change impact for policymakers focusing on economic effects.", + "Generate a technical report draft on AI safety for a specialized research audience.", + "Create a brief draft report summarizing quarterly sales performance for internal stakeholders." + ] + }, + "tags": [ + "embedding-generation", + "NLG", + "report-drafting", + "document", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"The future of renewable energy\",\"audience\":\"environmental researchers\",\"keyPoints\":[\"current trends\",\"technology advancements\",\"policy impacts\"],\"length\":700,\"includeSummary\":true}", + "description": "Generate a detailed report draft on renewable energy targeted to researchers including key technical and policy points." + }, + { + "inputJson": "{\"topic\":\"Quarterly financial summary\",\"audience\":\"company executives\",\"keyPoints\":[\"revenue growth\",\"expenses\",\"profit margins\"],\"length\":400,\"includeSummary\":false}", + "description": "Create a concise draft report of quarterly finances for company executives without a summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "embedding-generation.composeMessage", + "description": "Generates a concise, context-aware communication message embedding from provided text content and optional metadata. Accepts message body text and additional context parameters, processes semantic meaning, and outputs a vector embedding representing the composed message's meaning for downstream similarity search or clustering.", + "category": "embedding-generation", + "parameters": [ + { + "name": "messageBody", + "type": "string", + "description": "Main text content of the message to embed.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextMetadata", + "type": "object", + "description": "Optional key-value pairs to include contextual information (e.g., topic, recipient role).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "Dimensionality of the output embedding vector.", + "required": false, + "defaultValue": "512" + }, + { + "name": "includeSubject", + "type": "boolean", + "description": "Whether to include a separate subject line in the embedding composition.", + "required": false, + "defaultValue": "false" + }, + { + "name": "subjectText", + "type": "string", + "description": "Text of the subject line if 'includeSubject' is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embedding vector as an array of numbers and metadata about the message composition." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a vector representation of a communication message for tasks like semantic search, message clustering, or context-aware retrieval from a message database.", + "limitations": "Does not generate natural language messages or full text; outputs only semantic embeddings. Effectiveness depends on quality of input text and model parameters.", + "examples": [ + "Generate embedding for an email message body with optional subject to support similarity search.", + "Compose an embedding for SMS content with recipient role context for clustering communications.", + "Create vector representation of a chat message for semantic analysis in a customer support system." + ] + }, + "tags": [ + "embedding", + "message", + "text processing", + "semantic search", + "communication", + "vectorization" + ], + "examples": [ + { + "inputJson": "{\"messageBody\":\"Please review the attached project proposal by end of day.\",\"includeSubject\":true,\"subjectText\":\"Project Proposal Review\",\"embeddingDimension\":300}", + "description": "Embedding composition for an email message with subject line included, customized to 300-dimensional vector." + }, + { + "inputJson": "{\"messageBody\":\"Thanks for your quick response, I appreciate it!\",\"contextMetadata\":{\"recipientRole\":\"customer support\"},\"embeddingDimension\":512}", + "description": "Compose embedding for a brief thank-you text message, including recipient role metadata, using default embedding dimension." + }, + { + "inputJson": "{\"messageBody\":\"Reminder: the team meeting is scheduled for 3 PM tomorrow.\",\"includeSubject\":false}", + "description": "Generate embedding for a reminder message without including any subject line." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "embedding-generation.buildService", + "description": "This tool helps set up and configure a vector embedding generation service infrastructure. It accepts configuration parameters such as target model, deployment environment, resource allocation, scaling options, and authentication settings, then builds and deploys the embedding service. The output is a service endpoint URL and deployment status for integration into larger pipelines.", + "category": "embedding-generation", + "parameters": [ + { + "name": "modelName", + "type": "string", + "description": "The name or identifier of the embedding model to deploy (e.g., 'text-embedding-ada-002').", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "The deployment environment for the service (e.g., 'production', 'staging', 'development').", + "required": true, + "defaultValue": "production" + }, + { + "name": "computeResources", + "type": "object", + "description": "Specification of compute resource allocation, including CPU cores and memory in GB.", + "required": false, + "defaultValue": "{\"cpuCores\":4,\"memoryGB\":16}" + }, + { + "name": "scalingOptions", + "type": "object", + "description": "Settings for autoscaling like minInstances and maxInstances for handling varying load.", + "required": false, + "defaultValue": "{\"minInstances\":1,\"maxInstances\":5}" + }, + { + "name": "authenticationToken", + "type": "string", + "description": "Token or key used to secure access to the embedding service endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "loggingEnabled", + "type": "boolean", + "description": "Flag to enable or disable logging for the embedding service operations.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the service endpoint URL, deployment status, and additional metadata such as deployment timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent or developer needs to programmatically provision a scalable vector embedding generation service tailored with specific model and deployment configurations, enabling integration into data pipelines or application infrastructures.", + "limitations": "This tool does not perform the embedding generation itself; it only provisions the infrastructure service. It also does not handle downstream data orchestration or embedding storage beyond providing the service endpoint.", + "examples": [ + "Build a production embedding service using 'text-embedding-ada-002' with autoscaling between 2 and 10 instances.", + "Deploy an embedding service in a staging environment with minimal resources for testing.", + "Create an embedding service with logging disabled and a custom authentication token for secure access." + ] + }, + "tags": [ + "embedding", + "service-building", + "deployment", + "infrastructure", + "vector-search", + "AI-models", + "scaling" + ], + "examples": [ + { + "inputJson": "{\"modelName\":\"text-embedding-ada-002\",\"environment\":\"production\",\"computeResources\":{\"cpuCores\":8,\"memoryGB\":32},\"scalingOptions\":{\"minInstances\":2,\"maxInstances\":10},\"authenticationToken\":\"securetoken123\",\"loggingEnabled\":true}", + "description": "Deploys a production-grade embedding service with specified compute and autoscaling settings, secured by a token and with logging enabled." + }, + { + "inputJson": "{\"modelName\":\"text-embedding-003\",\"environment\":\"staging\",\"authenticationToken\":\"testtoken456\"}", + "description": "Deploys a staging environment service with default resources and autoscaling to test embedding generation integration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "embedding-generation.buildContainer", + "description": "Builds a containerized environment tailored for embedding generation tasks. Accepts configuration parameters defining the container image, resource limits, environment variables, and additional setup scripts. Outputs metadata including container ID, status, and endpoint information for embedding service deployment.", + "category": "embedding-generation", + "parameters": [ + { + "name": "containerImage", + "type": "string", + "description": "Docker image name and tag to use for building the embedding generation container.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuLimit", + "type": "number", + "description": "Maximum CPU units allocated to the container (e.g., 2 for 2 cores).", + "required": false, + "defaultValue": "1" + }, + { + "name": "memoryLimitMb", + "type": "number", + "description": "Maximum memory in megabytes allocated to the container.", + "required": false, + "defaultValue": "2048" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set inside the container.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "setupScript", + "type": "string", + "description": "Optional shell script commands to run during container startup for custom configuration.", + "required": false, + "defaultValue": "" + }, + { + "name": "exposePort", + "type": "number", + "description": "Port number inside the container to expose for embedding generation API access.", + "required": false, + "defaultValue": "8080" + }, + { + "name": "autoStart", + "type": "boolean", + "description": "Whether to automatically start the container after building it.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Metadata about the built container including its unique identifier, current status, and connection endpoint." + }, + "aiAgent": { + "useCase": "Use this tool when you need a dedicated container environment to run an embedding generation model or service. It allows specifying resource constraints and environment customization for scalable and isolated deployment of vector embedding generation tasks.", + "limitations": "Does not perform embedding generation itself; only prepares and manages the container infrastructure. Requires container runtime environment and network access for deployment.", + "examples": [ + "Build a container using 'embedding-gen:latest' image with 4 CPU cores and 8GB memory.", + "Create a container exposing port 9000 with custom environment variables for API keys.", + "Build and auto-start a container including a setup script for model dependencies installation." + ] + }, + "tags": [ + "embedding", + "container", + "infrastructure", + "deployment", + "vector-models", + "resource-management" + ], + "examples": [ + { + "inputJson": "{\"containerImage\":\"embedding-gen:latest\",\"cpuLimit\":4,\"memoryLimitMb\":8192,\"environmentVariables\":{\"API_KEY\":\"abc123\"},\"setupScript\":\"pip install -r requirements.txt\",\"exposePort\":9000,\"autoStart\":true}", + "description": "Builds and starts a container with 4 CPU cores, 8GB RAM, exposing port 9000, setting API_KEY env variable and running a setup script." + }, + { + "inputJson": "{\"containerImage\":\"embedding-gen:cpu-optimized\",\"cpuLimit\":2,\"memoryLimitMb\":4096,\"environmentVariables\":{},\"setupScript\":\"\",\"exposePort\":8080,\"autoStart\":false}", + "description": "Builds a container with 2 CPUs and 4GB memory without auto-start." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "embedding-generation.buildPullRequest", + "description": "Generates a vector embedding representing the semantic content of a pull request, using the PR's title, description, changed files, and review comments as input. Processes this textual and metadata input into a fixed-length numeric vector suitable for downstream tasks like search, classification, or recommendation.", + "category": "embedding-generation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "The detailed description or body of the pull request.", + "required": false, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of filenames or paths that were modified in the pull request.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reviewComments", + "type": "array", + "description": "Array of textual review comments associated with the pull request.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "embeddingDimension", + "type": "number", + "description": "The dimensionality of the output embedding vector. Defaults to 512.", + "required": false, + "defaultValue": "512" + } + ], + "returns": { + "type": "object", + "description": "An object containing the pull request embedding vector as an array of floats and metadata about the embedding." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert pull request information into a semantic vector for tasks like similarity search, clustering, or recommendation in code management workflows. Ideal for embedding PRs to analyze or compare their content and context with other PRs.", + "limitations": "Does not generate embeddings for binary files or non-text content changes. Focuses only on text metadata and file path data; it cannot assess code correctness or test results.", + "examples": [ + "Generate an embedding for a PR with the title, detailed description, and a few review comments.", + "Create a fixed-length numeric vector representing a PR's semantic content for clustering similar PRs.", + "Build an embedding from changed file paths and PR info for downstream recommendation systems." + ] + }, + "tags": [ + "embedding", + "pull-request", + "code-review", + "semantic-search", + "developer-tools", + "vectorization" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Add feature X to improve performance\",\"description\":\"This PR introduces feature X which optimizes the caching layer.\",\"changedFiles\":[\"src/cache.js\",\"src/utils/performance.js\"],\"reviewComments\":[\"Looks good overall.\",\"Consider adding unit tests for edge cases.\"],\"embeddingDimension\":512}", + "description": "Embedding for a pull request adding a performance feature with code and review comments." + }, + { + "inputJson": "{\"title\":\"Fix bug in user authentication\",\"description\":\"Corrected token expiration handling.\",\"changedFiles\":[\"auth/token.js\"],\"reviewComments\":[],\"embeddingDimension\":256}", + "description": "Embedding of a bug fix PR focusing on authentication logic with limited comments and smaller embedding dimension." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "embedding-generation.buildBranch", + "description": "Generates vector embeddings for a specified code branch by extracting and processing the source code files within that branch. Accepts repository info and branch name, processes textual code content to produce embeddings representing the branch semantics. Outputs an object containing the branch embeddings and metadata.", + "category": "embedding-generation", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the Git repository containing the code branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name of the branch to build embeddings for.", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier of the embedding model to use for generating vector embeddings.", + "required": false, + "defaultValue": "code-search-embedding" + }, + { + "name": "fileExtensions", + "type": "array", + "description": "List of code file extensions to include when extracting code for embedding (e.g., [\".js\", \".ts\"]).", + "required": false, + "defaultValue": "[\".js\", \".ts\"]" + }, + { + "name": "maxFiles", + "type": "number", + "description": "Maximum number of code files to process from the branch.", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include code comments in the embedding process or only source code.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated embeddings for the code branch as an array of vectors, along with metadata such as branchName and repositoryUrl." + }, + "aiAgent": { + "useCase": "Use this tool when needing semantic vector embeddings representing the entire code base state of a specific Git branch, allowing downstream tasks like code search, similarity detection, or analysis across branch snapshots. It optimizes for code domain by handling multiple files and customizable filters.", + "limitations": "Does not perform embedding of binary files or non-code assets. Limited to textual code files and depends on availability and compatibility of specified embedding models. May not capture runtime behavior or dynamic code constructs.", + "examples": [ + "Generate embeddings for the 'develop' branch of a repo to enable semantic search.", + "Build vector representations for a feature branch combining JavaScript and TypeScript files.", + "Create embeddings for the main branch excluding comments for lightweight analysis." + ] + }, + "tags": [ + "embedding", + "code", + "branch", + "vector", + "semantic-search", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"branchName\":\"feature/login\",\"embeddingModel\":\"code-search-embedding\",\"fileExtensions\":[\".js\",\".ts\"],\"maxFiles\":50,\"includeComments\":true}", + "description": "Create embeddings for the 'feature/login' branch in a JS/TS project, including comments, processing up to 50 files." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"branchName\":\"main\",\"embeddingModel\":\"code-search-embedding\",\"fileExtensions\":[\".py\"],\"maxFiles\":100,\"includeComments\":false}", + "description": "Build embeddings for the 'main' branch Python files excluding comments, with up to 100 files processed." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "embedding-generation.buildEndpoint", + "description": "Creates a RESTful API endpoint that accepts text input and returns vector embeddings generated by a specified embedding model. It processes the input text by invoking the embedding model, and formats the resulting vector embedding as JSON output for use in downstream applications.", + "category": "embedding-generation", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path where the embedding endpoint will be exposed. Must begin with a slash (e.g., /embed).", + "required": true, + "defaultValue": "" + }, + { + "name": "embeddingModel", + "type": "string", + "description": "Identifier or name of the embedding model to be used for vector generation (e.g., 'text-embedding-ada-002').", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method for the endpoint, typically POST or GET. Defaults to POST.", + "required": false, + "defaultValue": "POST" + }, + { + "name": "maxInputLength", + "type": "number", + "description": "Maximum number of characters allowed in the input text. Inputs exceeding this will be rejected with an error.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata (e.g., model version, timestamp) in the API response.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the API endpoint configuration including path, method, input specifications, and output schema providing text embeddings as numerical vector arrays." + }, + "aiAgent": { + "useCase": "Use this tool to programmatically create an API endpoint to generate vector embeddings for arbitrary text inputs. This is useful for applications that need a custom or immediate embedding service without manual server setup, enabling agents to integrate embedding generation seamlessly into pipelines.", + "limitations": "This tool doesn't deploy or host the endpoint; it builds specification or code for it. It cannot generate embeddings without an actual embedding model backend integration specified separately. It also doesn't handle authentication or rate limiting for the endpoint.", + "examples": [ + "Create an embedding endpoint at /generateEmbedding using the 'text-embedding-ada-002' model.", + "Build a POST API at /textVector that accepts text up to 1500 characters and returns embeddings with metadata.", + "Set up an endpoint '/embedText' with GET method using default model to embed short inputs." + ] + }, + "tags": [ + "embedding", + "API", + "endpoint", + "vectorization", + "text-processing", + "machine-learning", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/embedText\",\"embeddingModel\":\"text-embedding-ada-002\"}", + "description": "Creates a POST endpoint '/embedText' using the model 'text-embedding-ada-002' with default settings." + }, + { + "inputJson": "{\"endpointPath\":\"/textVector\",\"embeddingModel\":\"custom-model-v1\",\"httpMethod\":\"POST\",\"maxInputLength\":1500,\"includeMetadata\":false}", + "description": "Builds a POST API '/textVector' using a custom embedding model, allowing input up to 1500 characters, excluding additional metadata in response." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "file-operations.analyzeNotification", + "description": "Analyzes notification files or data blobs containing notification messages, extracting key metadata and content such as sender, recipients, timestamps, message type, and priority. It processes input files or raw notification JSON to produce a structured summary report highlighting important notification attributes and potential issues.", + "category": "file-operations", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "Path to the notification file to analyze (supports JSON, XML, or text formats).", + "required": false, + "defaultValue": "" + }, + { + "name": "rawNotificationData", + "type": "string", + "description": "Raw notification message as a JSON string for analysis instead of a file.", + "required": false, + "defaultValue": "" + }, + { + "name": "extractContent", + "type": "boolean", + "description": "Flag to extract the main content/body text from the notification message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata fields like sender, recipients, timestamp in the analysis output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkForUrgency", + "type": "boolean", + "description": "Analyze the notification for urgency or high priority flags if present.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxContentLength", + "type": "number", + "description": "Maximum number of characters to extract from content if extractContent is true.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted fields such as sender, recipients, timestamp, messageType, priority, contentSnippet, and any detected issues or warnings." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to interpret the structure and key information within notification files or raw notification messages to summarize or validate them. It is useful in processing alerts, system notifications, or message logs to extract actionable insights or metadata for further automation or reporting.", + "limitations": "Cannot interpret arbitrary binary files or notifications in proprietary encrypted formats. Does not perform sentiment analysis or classify notifications beyond basic metadata extraction.", + "examples": [ + "Analyze a JSON notification log file to summarize sender and urgency.", + "Process raw notification JSON string to extract message timestamp and content snippet.", + "Validate notification text files for missing priority or recipient fields." + ] + }, + "tags": [ + "file analysis", + "notification parsing", + "metadata extraction", + "communication", + "log processing", + "alert analysis" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/data/notifications/alert1.json\",\"extractContent\":true,\"includeMetadata\":true}", + "description": "Analyze a JSON notification file extracting content and metadata." + }, + { + "inputJson": "{\"rawNotificationData\":\"{\\\"sender\\\":\\\"system@company.com\\\",\\\"recipients\\\":[\\\"user@example.com\\\"],\\\"timestamp\\\":\\\"2024-06-12T09:30:00Z\\\",\\\"messageType\\\":\\\"alert\\\",\\\"priority\\\":\\\"high\\\",\\\"content\\\":\\\"Server CPU load is critically high. Immediate action required.\\\"}\",\"checkForUrgency\":true}", + "description": "Analyze raw notification JSON string for urgency and extract fields." + }, + { + "inputJson": "{\"inputFilePath\":\"/logs/notifications.txt\",\"extractContent\":false,\"includeMetadata\":true}", + "description": "Analyze a text notification log file extracting metadata only, no content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "file-operations.analyzeAlert", + "description": "Analyzes a security alert file in JSON or text format to extract key threat indicators, classification, timestamps, and affected systems. It performs pattern matching and severity scoring, outputting a structured summary report for incident response teams.", + "category": "file-operations", + "parameters": [ + { + "name": "alertFilePath", + "type": "string", + "description": "File system path to the alert data file to analyze. Supports JSON and plain text formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the alert file: 'json' or 'text'. Determines parsing method.", + "required": true, + "defaultValue": "json" + }, + { + "name": "severityThreshold", + "type": "number", + "description": "Minimum severity score (0-10) to include alerts in summary. Filters out low severity alerts.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeRawData", + "type": "boolean", + "description": "Whether to include raw alert data in the output for additional context.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customPatterns", + "type": "array", + "description": "Optional array of custom regex patterns to identify additional threat indicators in text alerts.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with alert summary: threat indicators, severity score, classification, timestamps, affected hosts, and optional raw data if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract meaningful, structured data from raw security alert files to aid in threat analysis or incident response automation. It helps quickly interpret alerts to prioritize actions.", + "limitations": "Does not perform deep forensics or network traffic analysis. Limited to textual or JSON alert files. Accuracy dependent on provided patterns and severity scoring rules.", + "examples": [ + "Analyze a JSON alert file and summarize high severity issues", + "Extract threat indicators from a text-based alert log with custom patterns", + "Filter alerts by minimum severity to focus on critical threats" + ] + }, + "tags": [ + "file-operations", + "security", + "analysis", + "alert", + "threat-detection", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"alertFilePath\":\"/var/log/alerts/security_alert_2024-04-01.json\",\"inputFormat\":\"json\",\"severityThreshold\":7,\"includeRawData\":true}", + "description": "Analyze a JSON alert file focusing on alerts with severity 7 and above, including raw data in results." + }, + { + "inputJson": "{\"alertFilePath\":\"/tmp/alerts/weekly_alerts.txt\",\"inputFormat\":\"text\",\"customPatterns\":[\"CVE-\\d{4}-\\d{4,7}\",\"malware detected\"]}", + "description": "Analyze a text alert file looking for CVE identifiers and malware mentions using custom regex patterns." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "file-operations.sendMessage", + "description": "Sends a message file to a specified destination via an available communication channel. Accepts the path to the message file and delivery details, processes the file to prepare it for transmission, and outputs a confirmation and status of the sending operation.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Absolute or relative path to the message file to be sent. Supported file formats include text, JSON, and XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationAddress", + "type": "string", + "description": "The recipient's address or identifier to which the message will be sent, e.g., an email address, phone number, or endpoint URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "transportProtocol", + "type": "string", + "description": "The protocol or method used for sending the message, such as 'SMTP' for email, 'SMS' for text message, or 'HTTP' for API endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional additional headers or metadata to include with the message, like subject, priority, or custom tags.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "retryCount", + "type": "number", + "description": "Number of times to retry sending the message upon failure before reporting an error.", + "required": false, + "defaultValue": "3" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout interval in seconds to wait for the sending operation to complete before aborting.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the message sending operation, including success flag, message ID, and error details if any." + }, + "aiAgent": { + "useCase": "This tool is useful when an agent needs to automate the sending of message files via different communication protocols depending on context, such as sending alert emails, SMS notifications, or HTTP POST messages. It handles file input and protocol selection to facilitate flexible message delivery.", + "limitations": "Cannot compose or generate message contents; requires pre-existing message files. Does not support encrypted or highly specialized proprietary protocols. Delivery depends on external service availability and correct addressing.", + "examples": [ + "Send a notification email using an existing message file.", + "Deliver an SMS message loaded from a text file to a phone number.", + "Post a JSON formatted message file to an API endpoint using HTTP protocol." + ] + }, + "tags": [ + "file", + "message", + "send", + "communication", + "notification", + "automation", + "protocol" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"./alerts/email1.txt\",\"destinationAddress\":\"user@example.com\",\"transportProtocol\":\"SMTP\",\"headers\":{\"subject\":\"Alert Notification\"},\"retryCount\":2,\"timeoutSeconds\":20}", + "description": "Send an email alert message stored in a text file to the user's email address using SMTP." + }, + { + "inputJson": "{\"filePath\":\"./sms/message.txt\",\"destinationAddress\":\"+1234567890\",\"transportProtocol\":\"SMS\",\"retryCount\":1,\"timeoutSeconds\":15}", + "description": "Send an SMS message read from a text file to a specific phone number." + }, + { + "inputJson": "{\"filePath\":\"./data/postMessage.json\",\"destinationAddress\":\"https://api.example.com/messages\",\"transportProtocol\":\"HTTP\",\"headers\":{\"Content-Type\":\"application/json\"},\"retryCount\":3}", + "description": "Post a JSON message file to a REST API endpoint using HTTP protocol with custom headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "file-operations.renderFile", + "description": "This tool accepts a path to a media file (e.g., image, video, PDF) or raw file data and renders a visual representation of the file content onto a specified output format such as an image thumbnail, preview window, or canvas context. It supports scaling, format conversion, and optional annotations (like watermarks or overlays). The output is a rendered file or data URL suitable for display or further processing.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Path or URL to the input media file to be rendered. Required if rawData is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawData", + "type": "string", + "description": "Base64-encoded raw data of the file to render. Used if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for rendering (e.g., 'png', 'jpeg', 'bmp').", + "required": true, + "defaultValue": "png" + }, + { + "name": "width", + "type": "number", + "description": "Width in pixels for the rendered output. Aspect ratio maintained if only width or height specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "Height in pixels for the rendered output. Aspect ratio maintained if only width or height specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "annotations", + "type": "array", + "description": "List of annotation objects to apply on rendering (e.g., watermark text, overlay images). Each annotation specifies type and parameters.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "preserveAspectRatio", + "type": "boolean", + "description": "Flag to preserve the original aspect ratio when resizing (true by default).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered file data as base64 string, the MIME type of the output format, and metadata like width and height." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert or preview media files programmatically, generate thumbnails, or create visual renderings from raw or stored file data for UI display or further transformation. Ideal for image, video keyframe extraction, PDF preview rendering, or overlaying annotations for media content.", + "limitations": "This tool does not perform video transcoding or complex PDF rendering beyond simple page previews. It also cannot edit the original file content beyond overlays or resizing.", + "examples": [ + "Render a PNG thumbnail from a JPEG image file path.", + "Render a base64 PDF preview page as JPEG with a watermark annotation.", + "Generate a scaled BMP output from raw base64 image data without distorting aspect ratio." + ] + }, + "tags": [ + "render", + "file", + "media", + "preview", + "thumbnail", + "image", + "video", + "pdf" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/path/to/image.jpg\",\"outputFormat\":\"png\",\"width\":200}", + "description": "Render a 200px wide PNG thumbnail from a JPEG image file path." + }, + { + "inputJson": "{\"rawData\":\"iVBORw0KGgoAAAANSUhEUgAA...\",\"outputFormat\":\"jpeg\",\"annotations\":[{\"type\":\"watermark\",\"text\":\"Sample\"}],\"preserveAspectRatio\":true}", + "description": "Render a base64 image data to JPEG with a watermark annotation while preserving aspect ratio." + }, + { + "inputJson": "{\"filePath\":\"/path/to/document.pdf\",\"outputFormat\":\"png\",\"width\":300,\"height\":400}", + "description": "Render a 300x400 PNG preview image of a PDF file page." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "file-operations.draftEmail", + "description": "Drafts a professional email based on provided parameters including recipient, subject, message body, and optional tone or style preferences. Processes input text and generates a structured email draft for review or sending.", + "category": "file-operations", + "parameters": [ + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the primary recipient of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content/body text of the email to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccEmails", + "type": "array", + "description": "List of email addresses to be CC'd, if any.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccEmails", + "type": "array", + "description": "List of email addresses to be BCC'd, if any.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the email such as formal, friendly, or persuasive. Defaults to neutral tone.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Flag to include a default signature at the end of the email.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully drafted email in structured format including recipient, subject, body (with tone applied), cc, bcc, and a signature block if included." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate professional email drafts tailored by recipient, subject, and style preferences. Ideal for automating email writing in workflows requiring consistent tone and formatting without manual composition.", + "limitations": "Cannot send emails, verify email addresses, or access personal user signature preferences beyond defaults. Does not handle attachments or complex formatting beyond plain text and basic signature inclusion.", + "examples": [ + "Draft an email to confirm a meeting with a friendly tone.", + "Create a formal email to invite a client to a product demo with CC to the sales team.", + "Generate a quick apology email with a neutral tone including BCC to a manager." + ] + }, + "tags": [ + "email", + "drafting", + "communication", + "file-operations", + "automation", + "professional", + "business" + ], + "examples": [ + { + "inputJson": "{\"recipientEmail\":\"client@example.com\",\"subject\":\"Meeting Confirmation\",\"body\":\"I would like to confirm our meeting scheduled for next Tuesday.\",\"ccEmails\":[\"sales@example.com\"],\"tone\":\"friendly\",\"includeSignature\":true}", + "description": "Drafts a friendly meeting confirmation email to a client with sales team CC'd and includes default signature." + }, + { + "inputJson": "{\"recipientEmail\":\"hr@example.com\",\"subject\":\"Job Application Inquiry\",\"body\":\"I am following up on my job application submitted last week.\",\"tone\":\"formal\",\"includeSignature\":false}", + "description": "Creates a formal email inquiring about a job application without including a signature." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "file-operations.formatReport", + "description": "Formats a given report content into a specified document format such as PDF, HTML, or Markdown. Accepts raw text or structured report data and applies formatting templates, headers, footers, and styling options to produce a well-structured, formatted document as output.", + "category": "file-operations", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "Raw or structured textual content of the report to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "Desired output format of the report (e.g., 'pdf', 'html', 'markdown').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Flag indicating whether to include a header section in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeFooter", + "type": "boolean", + "description": "Flag indicating whether to include a footer section in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "pageSize", + "type": "string", + "description": "Page size to apply if output is a paginated format like PDF (e.g., 'A4', 'Letter').", + "required": false, + "defaultValue": "A4" + }, + { + "name": "customStyles", + "type": "object", + "description": "Optional custom styling parameters including font, colors, and margins.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing formattedReport as a base64-encoded string or text string depending on format, and metadata with information such as format type, page count, and generation time." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives raw or semi-structured report content that needs to be transformed into a polished, formatted document ready for distribution or archiving in formats like PDF, HTML, or Markdown.", + "limitations": "Cannot create highly interactive reports or complex visualizations beyond basic styling; does not support embedded multimedia. Formatting is limited to the predefined templates and style options provided.", + "examples": [ + "Format quarterly sales data into a PDF report with company header and footer.", + "Generate a Markdown-formatted report from a raw text analysis summary.", + "Create an HTML report page from structured report content with custom styling." + ] + }, + "tags": [ + "file-operations", + "formatting", + "report", + "document", + "pdf", + "html", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"Quarterly Sales Report\\nQ1 Results exceed expectations.\",\"formatType\":\"pdf\",\"includeHeader\":true,\"includeFooter\":true,\"pageSize\":\"Letter\"}", + "description": "Format raw text quarterly sales report into a PDF document with header and footer using Letter page size." + }, + { + "inputJson": "{\"reportContent\":\"# Project Status\\n- Task 1 completed\\n- Task 2 in progress\",\"formatType\":\"markdown\",\"includeHeader\":false,\"includeFooter\":false}", + "description": "Generate a clean Markdown report from structured markdown text without header or footer." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "file-operations.composeReport", + "description": "This tool accepts multiple content sections and templates as input, composes a structured report by assembling and formatting these sections, and outputs the report as a formatted document (e.g., PDF or DOCX). It supports customization of headers, footers, table of contents, and styling options.", + "category": "file-operations", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the report to be generated", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "The author or creator of the report", + "required": false, + "defaultValue": "" + }, + { + "name": "sections", + "type": "array", + "description": "An array of section objects, each containing a header and body content for the report", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to include a table of contents in the report", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the report, e.g., PDF, DOCX, or HTML", + "required": true, + "defaultValue": "PDF" + }, + { + "name": "header", + "type": "string", + "description": "Custom header text or HTML to appear on each page", + "required": false, + "defaultValue": "" + }, + { + "name": "footer", + "type": "string", + "description": "Custom footer text or HTML to appear on each page", + "required": false, + "defaultValue": "" + }, + { + "name": "styles", + "type": "object", + "description": "A styles object defining font, color, size, and other formatting options", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report as a base64-encoded string and metadata such as file name and MIME type" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a professional, structured report by combining multiple textual content inputs and formatting them into a cohesive document ready for distribution or archival. Suitable for summarizing data insights, project updates, research outputs, and other multi-section documents.", + "limitations": "This tool does not perform content summarization or data analysis; it only composes and formats provided content. It cannot extract data from images or non-text inputs, nor can it generate interactive documents.", + "examples": [ + "Compose a quarterly financial report from provided text sections and export as PDF.", + "Create a research summary report including custom headers and footers in DOCX format.", + "Generate a product review report with table of contents and styled formatting in HTML." + ] + }, + "tags": [ + "file-operations", + "report-generation", + "document-composition", + "pdf", + "docx", + "html", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Q1 Sales Report\",\"author\":\"Jane Doe\",\"sections\":[{\"header\":\"Executive Summary\",\"body\":\"Sales increased by 15% compared to last quarter.\"},{\"header\":\"Regional Performance\",\"body\":\"The North region outperformed with a 20% growth.\"},{\"header\":\"Recommendations\",\"body\":\"Focus marketing efforts on the West region.\"}],\"includeTableOfContents\":true,\"outputFormat\":\"PDF\",\"header\":\"Confidential - Q1 Report\",\"footer\":\"Page \\u2013 1\",\"styles\":{\"font\":\"Arial\",\"fontSize\":12,\"color\":\"#000000\"}}", + "description": "Compose a quarterly sales report as a PDF with header, footer, and table of contents." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "file-operations.draftDocument", + "description": "Creates a structured draft document based on provided content, format, and metadata. Accepts plain text or markdown content, applies formatting options and templates, and outputs a draft document file path or content preview suitable for further editing or exporting.", + "category": "file-operations", + "parameters": [ + { + "name": "content", + "type": "string", + "description": "The main textual content to include in the draft document, which can be in plain text or markdown format.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The desired output format of the draft document, such as 'docx', 'pdf', 'md', or 'txt'.", + "required": true, + "defaultValue": "docx" + }, + { + "name": "title", + "type": "string", + "description": "Optional title or heading of the document to embed or use in metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to include in the document metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "useTemplate", + "type": "boolean", + "description": "Whether to apply a predefined document template to style the draft document.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs of additional metadata to attach to the document file.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status and either a path to the saved draft document or its content preview." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a draft version of a document programmatically based on given textual content and desired formatting, for example when automating report creation, note-taking, or preparing editable drafts for collaboration.", + "limitations": "Cannot perform complex layout or graphic design adjustments; not suitable for final publishing-quality documents without manual adjustments. Does not support interactive elements or embedded media.", + "examples": [ + "Create a draft report document in DOCX format from markdown notes.", + "Generate a plain text draft of meeting minutes with specified title and author.", + "Draft a PDF summary document applying the standard company template." + ] + }, + "tags": [ + "file", + "document", + "draft", + "formatting", + "template", + "text", + "report" + ], + "examples": [ + { + "inputJson": "{\"content\":\"# Meeting Summary\\nDiscussed project timelines and deliverables.\",\"format\":\"docx\",\"title\":\"Project Meeting Summary\",\"author\":\"Jane Smith\",\"useTemplate\":true,\"metadata\":{\"department\":\"Engineering\"}}", + "description": "Draft a DOCX document with meeting summary content, title, author, and apply a template with metadata." + }, + { + "inputJson": "{\"content\":\"This is a plain text draft without any formatting.\",\"format\":\"txt\",\"useTemplate\":false}", + "description": "Create a simple plain text draft without title, author, or template." + }, + { + "inputJson": "{\"content\":\"## Notes\\n- Item 1\\n- Item 2\",\"format\":\"pdf\",\"useTemplate\":true}", + "description": "Generate a PDF formatted draft of notes applying a predefined template." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "file-operations.buildServer", + "description": "This tool automates the setup and configuration of a server by accepting a configuration file or parameters specifying server type, OS, software stack, and networking settings. It provisions the server environment, installs necessary software, configures services, and outputs a deployment report including status and access details.", + "category": "file-operations", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server to build, e.g., web, database, application.", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server, e.g., Ubuntu 22.04, CentOS 8.", + "required": true, + "defaultValue": "" + }, + { + "name": "softwareStack", + "type": "array", + "description": "List of software packages or stacks to install, e.g., ['nginx', 'mysql'].", + "required": true, + "defaultValue": "" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Networking settings such as IP address, DNS, firewall rules.", + "required": false, + "defaultValue": "" + }, + { + "name": "configurationScript", + "type": "string", + "description": "Optional custom script for additional server configuration.", + "required": false, + "defaultValue": "" + }, + { + "name": "provisioningMethod", + "type": "string", + "description": "Method to provision the server, e.g., 'cloud', 'local-VM', 'container'.", + "required": true, + "defaultValue": "cloud" + }, + { + "name": "autoStartServices", + "type": "boolean", + "description": "Whether to start installed services automatically after setup.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing server deployment status, IP address, access credentials if applicable, and log information about the provisioning process." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically build and configure a new server environment based on specific parameters or configuration files, such as setting up web or database servers in cloud or local virtual environments. It helps automate infrastructure provisioning as part of deployment pipelines.", + "limitations": "This tool does not handle physical hardware provisioning or detailed security hardening tasks. It assumes access to APIs or environments where server provisioning commands can be executed. It also cannot manage complex orchestration or multiple server clustering by itself.", + "examples": [ + "Build a web server running Ubuntu 22.04 with nginx and PHP and configure firewall rules.", + "Provision a database server of type MySQL on CentOS with custom initialization script.", + "Set up an application server in a local VM with specified software stack and networking config." + ] + }, + "tags": [ + "server", + "provisioning", + "automation", + "infrastructure", + "configuration", + "deployment", + "cloud" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"web\",\"operatingSystem\":\"Ubuntu 22.04\",\"softwareStack\":[\"nginx\",\"php\"],\"networkConfig\":{\"ip\":\"192.168.1.100\",\"firewallRules\":[{\"port\":80,\"action\":\"allow\"}]},\"provisioningMethod\":\"cloud\",\"autoStartServices\":true}", + "description": "Build a cloud web server on Ubuntu 22.04 with nginx and PHP installed and open port 80 firewall." + }, + { + "inputJson": "{\"serverType\":\"database\",\"operatingSystem\":\"CentOS 8\",\"softwareStack\":[\"mysql\"],\"configurationScript\":\"#!/bin/bash\\necho 'Initializing database'\",\"provisioningMethod\":\"local-VM\",\"autoStartServices\":false}", + "description": "Provision a local VM database server with MySQL on CentOS 8 and run a custom initialization script." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "file-operations.buildDatabase", + "description": "Builds a structured database file from multiple input data files by parsing and transforming data according to specified schema and format options. Accepts an array of file paths and schema definition to create a consolidated database file in formats like SQLite or JSON files. Outputs the path to the generated database file for use in other applications or analysis.", + "category": "file-operations", + "parameters": [ + { + "name": "inputFiles", + "type": "array", + "description": "List of file paths to input data files to be imported into the database. Supports CSV, JSON, and other structured text formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database to build, e.g., 'sqlite', 'json', or 'csv'. Determines output format of the database.", + "required": true, + "defaultValue": "sqlite" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "Definition of tables/collections and fields to create in the database, including types and constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "File path where the constructed database file will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite the output file if it already exists. Defaults to false to prevent accidental data loss.", + "required": false, + "defaultValue": "false" + }, + { + "name": "batchSize", + "type": "number", + "description": "Number of records to process in each batch to manage memory usage during database build.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "Object containing outputFilePath and status message indicating success or error details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to consolidate multiple structured data files into a single database file for efficient querying and management, such as building a local SQLite DB from CSV exports or JSON logs. Useful for automating database creation from varied inputs and custom schemas.", + "limitations": "Cannot connect to or build remote databases; limited to local file-based database creation. Does not perform advanced data validation or cleaning beyond schema conformity.", + "examples": [ + "Build an SQLite database from multiple CSV files with specified schema.", + "Create a JSON file database from input JSON arrays consolidating all records.", + "Generate a CSV formatted database file from multiple input files with transformed schema fields." + ] + }, + "tags": [ + "file-operations", + "database", + "data-integration", + "ETL", + "batch-processing" + ], + "examples": [ + { + "inputJson": "{\"inputFiles\":[\"data/users.csv\",\"data/orders.csv\"],\"databaseType\":\"sqlite\",\"schemaDefinition\":{\"users\":{\"id\":\"integer\",\"name\":\"string\",\"email\":\"string\"},\"orders\":{\"orderId\":\"integer\",\"userId\":\"integer\",\"amount\":\"float\"}},\"outputFilePath\":\"output/mydb.sqlite\",\"overwriteExisting\":true,\"batchSize\":500}", + "description": "Build an SQLite database from user and order CSV files with defined tables and fields, overwriting existing output file." + }, + { + "inputJson": "{\"inputFiles\":[\"logs/log1.json\",\"logs/log2.json\"],\"databaseType\":\"json\",\"schemaDefinition\":{\"logs\":{\"timestamp\":\"string\",\"level\":\"string\",\"message\":\"string\"}},\"outputFilePath\":\"output/logsdb.json\",\"overwriteExisting\":false}", + "description": "Create a JSON database file from multiple JSON log files with specified schema, without overwriting if file exists." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "file-operations.buildTest", + "description": "This tool generates executable test files (e.g., unit tests or integration tests) from given source code snippets or specifications. It accepts input source code or JSON-based test specifications, applies a selected test framework template, and outputs a ready-to-run test file in a target programming language and framework.", + "category": "file-operations", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The source code or function for which tests need to be generated. Required if testSpecification is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "testSpecification", + "type": "object", + "description": "Optional JSON object specifying test cases, inputs, expected outputs, and test metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Target programming language for the test code (e.g., 'javascript', 'python').", + "required": true, + "defaultValue": "javascript" + }, + { + "name": "testFramework", + "type": "string", + "description": "Testing framework to use for the generated test file (e.g., 'jest', 'mocha', 'pytest').", + "required": true, + "defaultValue": "jest" + }, + { + "name": "testFileName", + "type": "string", + "description": "Name of the output test file including extension (e.g., 'myFunction.test.js').", + "required": true, + "defaultValue": "testFile.test.js" + }, + { + "name": "includeSetup", + "type": "boolean", + "description": "Whether to include setup and teardown scaffolding in the test file.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test file content as a string and metadata such as language and framework used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate test code files from existing source code or structured test specifications to accelerate test creation, especially in continuous integration or code refactoring scenarios. It helps generate valid test scripts ready for integration into projects using specified languages and frameworks.", + "limitations": "The tool does not validate the correctness of the generated tests against the actual runtime behavior. It requires either source code or explicit test specifications as input. It cannot generate tests for undocumented or highly dynamic code without sufficient input details.", + "examples": [ + "Generate a Jest test file for a JavaScript function that sums two numbers.", + "Create a Pytest test file from JSON specification defining multiple input-output test cases for a Python function.", + "Produce a Mocha test file including setup/teardown from provided source code snippet in JavaScript." + ] + }, + "tags": [ + "file-operations", + "test-generation", + "code", + "automated-testing", + "unit-test", + "integration-test", + "code-quality" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"function add(a, b) { return a + b; }\",\"language\":\"javascript\",\"testFramework\":\"jest\",\"testFileName\":\"add.test.js\",\"includeSetup\":true}", + "description": "Generate a Jest test file for a simple add function in JavaScript." + }, + { + "inputJson": "{\"testSpecification\":{\"tests\":[{\"input\":[2,3],\"expected\":5}]},\"language\":\"python\",\"testFramework\":\"pytest\",\"testFileName\":\"test_add.py\",\"includeSetup\":false}", + "description": "Create a Pytest file from a JSON test specification defining a single test case for a Python function." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "file-operations.generateSentence", + "description": "Generates a syntactically correct and semantically coherent English sentence based on optional input parameters such as desired length, style, and keywords to include. The tool processes these inputs to construct a human-readable sentence string output.", + "category": "file-operations", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Approximate desired number of words in the generated sentence. Optional; defaults to 10 if not provided.", + "required": false, + "defaultValue": "10" + }, + { + "name": "style", + "type": "string", + "description": "The writing style or tone of the sentence, such as formal, casual, or narrative. Optional; defaults to neutral.", + "required": false, + "defaultValue": "" + }, + { + "name": "keywords", + "type": "array", + "description": "List of words or phrases that the generated sentence should include when possible. Optional; default empty list.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeComplexGrammar", + "type": "boolean", + "description": "Flag indicating whether to include complex grammatical structures (e.g., subordinate clauses). Optional; defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated English sentence as a single string property 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when a realistic, natural English sentence needs to be generated based on specific stylistic or lexical constraints for file content generation, demonstration, or testing purposes. It assists in producing varied text snippets without external language model calls.", + "limitations": "Cannot guarantee semantic accuracy or domain-specific content quality; generated sentences are generic and may lack contextual awareness beyond input parameters.", + "examples": [ + "Generate a 15-word formal sentence including the keywords 'project' and 'deadline'.", + "Create a short casual sentence with no required keywords.", + "Produce a sentence using complex grammar and the keyword 'innovation'." + ] + }, + "tags": [ + "generation", + "file-operations", + "text", + "language", + "sentence", + "synthetic-text", + "content", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"length\":15,\"style\":\"formal\",\"keywords\":[\"project\",\"deadline\"],\"includeComplexGrammar\":false}", + "description": "Generate a formal sentence approximately 15 words long that includes the words 'project' and 'deadline'." + }, + { + "inputJson": "{\"length\":8,\"style\":\"casual\",\"keywords\":[],\"includeComplexGrammar\":false}", + "description": "Generate a short casual sentence of about 8 words with no specific keywords." + }, + { + "inputJson": "{\"length\":20,\"style\":\"neutral\",\"keywords\":[\"innovation\"],\"includeComplexGrammar\":true}", + "description": "Generate a 20-word sentence with complex grammar that includes the word 'innovation'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "file-operations.generateEvent", + "description": "Generates a structured event log file from input parameters or JSON data, applying optional formatting and saving to a specified file path. It processes event attributes like type, timestamp, and metadata, and outputs a JSON or CSV file representing the event for analytics or auditing purposes.", + "category": "file-operations", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "The type or name of the event to record, e.g., 'user_login'.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string representing when the event occurred. If omitted, current time is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "An object containing key-value pairs with additional event details or context.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output event file, either 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "File system path where the generated event file will be saved. If omitted, returns event as string.", + "required": false, + "defaultValue": "" + }, + { + "name": "appendToFile", + "type": "boolean", + "description": "Whether to append the generated event to an existing file (if true) or overwrite/create new (if false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'success' (boolean), 'message' (string), and optionally 'eventContent' (string) if no file output was specified." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create analytics or audit event records from structured input in either JSON or CSV format for integration into event tracking systems, data pipelines, or log archives.", + "limitations": "This tool does not validate event business logic or guarantee schema conformity beyond basic formatting; it also does not transmit events to remote servers or integrate with event ingestion APIs.", + "examples": [ + "Generate a login event logged as JSON file with metadata about user and device.", + "Create a CSV formatted purchase event and append it to a daily event log.", + "Return event log content as a string instead of saving to file, for further processing." + ] + }, + "tags": [ + "file", + "generate", + "event", + "analytics", + "logging", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"user_login\",\"timestamp\":\"2024-06-01T12:34:56Z\",\"metadata\":{\"userId\":\"u123\",\"ip\":\"192.168.1.10\"},\"outputFormat\":\"json\",\"outputFilePath\":\"/logs/user_login_20240601.json\",\"appendToFile\":false}", + "description": "Generate a JSON event file recording a user login with metadata, overwrite any existing file." + }, + { + "inputJson": "{\"eventType\":\"purchase\",\"metadata\":{\"orderId\":\"order789\",\"amount\":99.99},\"outputFormat\":\"csv\",\"outputFilePath\":\"/logs/purchases.csv\",\"appendToFile\":true}", + "description": "Append a purchase event as a CSV line to an existing purchases log file." + }, + { + "inputJson": "{\"eventType\":\"page_view\",\"metadata\":{\"page\":\"home\",\"duration\":35}}", + "description": "Generate a JSON event string for a page view, using current timestamp and no file output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "file-operations.generateMetric", + "description": "Generates analytical metrics from file content by processing structured or unstructured data within given files. Accepts file paths or raw file data with options to specify metric type and filters, returning computed metric values such as counts, averages, or distributions in JSON format.", + "category": "file-operations", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Path to the input file to be processed for metric generation.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileContent", + "type": "string", + "description": "Raw content of the file to be analyzed if no file path is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "Type of metric to generate, e.g., 'wordCount', 'lineCount', 'averageValue', 'distribution'.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters or parameters for metric calculation (e.g., filter by keyword, numeric range).", + "required": false, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the file content, e.g., 'text', 'csv', 'json'; used for parsing logic.", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated metric name and its calculated value or statistical summary." + }, + "aiAgent": { + "useCase": "Use this tool to compute useful summary statistics or analytical metrics from files containing data or text. It is especially helpful when needing quick aggregated insights from log files, CSVs, JSON records, or plain text. It supports both file paths and raw file content intake, enabling metric extraction such as word counts, averages, distributions, and filtered counts.", + "limitations": "Does not perform complex machine learning analytics or visualizations. Limited to metrics that can be derived from parsing file contents directly and simple filters. Cannot process files without text-based content or binary-only files meaningfully.", + "examples": [ + "Generate a word count metric from a text log file.", + "Calculate the average numeric value in a CSV file column with a filter applied.", + "Compute the distribution of values in a JSON array from raw file content." + ] + }, + "tags": [ + "file-operations", + "analytics", + "metrics", + "data-processing", + "file-analysis" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/logs/server.log\",\"metricType\":\"lineCount\"}", + "description": "Count the total lines in a server log file." + }, + { + "inputJson": "{\"fileContent\":\"name,score\\nAlice,85\\nBob,90\",\"metricType\":\"averageValue\",\"filters\":{\"column\":\"score\"},\"fileFormat\":\"csv\"}", + "description": "Calculate the average score from CSV content provided directly." + }, + { + "inputJson": "{\"filePath\":\"/data/reports/data.json\",\"metricType\":\"distribution\",\"filters\":{\"field\":\"status\"},\"fileFormat\":\"json\"}", + "description": "Compute the distribution of 'status' values in a JSON file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "file-operations.generateSummary", + "description": "This tool accepts the content of a text-based file or document and generates a concise summary capturing the key points. It processes plain text files or textual inputs such as reports, articles, or documents, and produces a brief, coherent summary as output.", + "category": "file-operations", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "The full textual content of the file or document to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "The maximum length of the generated summary in number of characters.", + "required": false, + "defaultValue": "500" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the input content to tailor summarization accordingly (e.g., en, es).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeySentences", + "type": "boolean", + "description": "Whether to include the key sentences extracted from the text in the summary output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary text and optionally key sentences if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create concise summaries of lengthy text documents to quickly understand main points without reading the entire file. Useful for summarizing reports, articles, or any text file content within automated workflows or document processing systems.", + "limitations": "This tool cannot process non-text file formats (e.g., images, audio). The quality of summaries depends on the input text clarity and length; very short texts may produce inadequate summaries.", + "examples": [ + "Summarize a long project report to extract key findings.", + "Generate an executive summary for a textual document file.", + "Create a brief overview from a research paper text." + ] + }, + "tags": [ + "file", + "summary", + "text-processing", + "document", + "automation" + ], + "examples": [ + { + "inputJson": "{\"fileContent\":\"In 2023, the company achieved a 20% growth in revenue due to strategic market expansion and improved product offerings. Customer satisfaction ratings increased by 15% compared to the previous year. Challenges included supply chain disruptions and increased competition in key markets.\",\"maxSummaryLength\":200,\"language\":\"en\",\"includeKeySentences\":false}", + "description": "Generate a concise summary of a business report highlighting growth, customer satisfaction, and challenges." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "file-operations.createContainer", + "description": "Creates a container directory structure on the file system for organizing related files. Accepts a base path and container name, optionally including subdirectories and initial metadata files. Processes parameters to create the folder hierarchy and initializes it for further file management. Returns the full path of the created container and status information.", + "category": "file-operations", + "parameters": [ + { + "name": "basePath", + "type": "string", + "description": "Absolute path where the container directory will be created", + "required": true, + "defaultValue": "" + }, + { + "name": "containerName", + "type": "string", + "description": "Name of the container directory to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "subdirectories", + "type": "array", + "description": "List of subdirectory names to create inside the container", + "required": false, + "defaultValue": "[]" + }, + { + "name": "initializeMetadataFile", + "type": "boolean", + "description": "Whether to create an initial metadata JSON file inside the container", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadataContent", + "type": "object", + "description": "Object containing key-value pairs to write into the metadata file if initialized", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Details of the created container including absolute path, list of created subdirectories, and success status" + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create an organized folder container on the file system for storing and managing related files, optionally with predefined subfolders and metadata initialization. It's useful for setting up project directories, data buckets, or file containers for infrastructure management.", + "limitations": "This tool does not handle file uploads or real containerization technologies like Docker containers. It only manages directory structures on local or network file systems where permissions allow.", + "examples": [ + "Create a container named 'ProjectX' in '/data' with subfolders ['input','output'] and a metadata file with project info.", + "Create a simple container directory at '/tmp/session42' without subdirectories or metadata file." + ] + }, + "tags": [ + "file system", + "directory management", + "container folder", + "infrastructure", + "file organization" + ], + "examples": [ + { + "inputJson": "{\"basePath\":\"/data\",\"containerName\":\"ProjectX\",\"subdirectories\":[\"input\",\"output\"],\"initializeMetadataFile\":true,\"metadataContent\":{\"owner\":\"teamA\",\"created\":\"2024-06-01\"}}", + "description": "Create a container 'ProjectX' with subfolders and metadata file under '/data'." + }, + { + "inputJson": "{\"basePath\":\"/tmp\",\"containerName\":\"session42\",\"subdirectories\":[],\"initializeMetadataFile\":false}", + "description": "Create a simple container directory 'session42' under '/tmp' with no subfolders or metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "file-operations.createEvent", + "description": "Creates a structured event JSON file for analytics purposes based on provided event metadata and attributes. Accepts event name, timestamp, user data, event properties, and file output path. Generates a JSON file representing the event at the specified location, suitable for ingestion into event processing systems.", + "category": "file-operations", + "parameters": [ + { + "name": "eventName", + "type": "string", + "description": "The name of the event to be recorded", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the event occurred", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Unique identifier of the user associated with the event", + "required": false, + "defaultValue": "" + }, + { + "name": "eventProperties", + "type": "object", + "description": "Key-value pairs describing attributes or metadata related to the event", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "Full path including filename where the event JSON will be saved", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object with success status and file path where event was saved" + }, + "aiAgent": { + "useCase": "This tool should be used when there is a need to programmatically generate and save individual analytics event files in JSON format based on variable input data. It helps automate the creation of event data payloads for downstream ingestion or archival, ensuring consistent structure and timestamping.", + "limitations": "It does not validate semantic correctness of event names or properties beyond JSON structure, nor does it send or ingest events into analytics systems itself.", + "examples": [ + "Create a 'purchase' event JSON for user 1234 with order details, saved to /tmp/events/purchase1.json.", + "Generate a 'page_view' event with timestamp and no user ID, write to ./events/view.json.", + "Create a custom event with properties and store to a specific directory for batch upload later." + ] + }, + "tags": [ + "file-operations", + "event", + "analytics", + "create", + "json", + "output" + ], + "examples": [ + { + "inputJson": "{\"eventName\":\"user_signup\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"userId\":\"user_5678\",\"eventProperties\":{\"plan\":\"pro\",\"referrer\":\"ad_campaign_12\"},\"outputFilePath\":\"./events/user_signup_20240601.json\"}", + "description": "Generate a user signup event with metadata and save to a file." + }, + { + "inputJson": "{\"eventName\":\"page_view\",\"timestamp\":\"2024-06-01T11:30:20Z\",\"userId\":\"\",\"eventProperties\":{\"page\":\"home\",\"duration\":35},\"outputFilePath\":\"./events/page_view_home.json\"}", + "description": "Create a page view event without user ID, including page and duration properties." + }, + { + "inputJson": "{\"eventName\":\"purchase\",\"timestamp\":\"2024-06-01T12:45:00Z\",\"userId\":\"user_1234\",\"eventProperties\":{\"product_id\":\"abc123\",\"price\":19.99,\"currency\":\"USD\"},\"outputFilePath\":\"./events/purchase_abc123.json\"}", + "description": "Create a purchase event with detailed pricing and product information." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "file-operations.createMetric", + "description": "This tool accepts raw file data, such as logs, CSVs, or JSON records, and computes statistical or aggregated metrics based on user-defined criteria. It processes file content to produce summary metrics like counts, averages, sums, or custom calculations, outputting a JSON object containing the resulting analytics.", + "category": "file-operations", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "Path to the input data file to be analyzed (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Type of input file: 'csv', 'json', or 'log' (optional, defaults to 'csv').", + "required": false, + "defaultValue": "csv" + }, + { + "name": "metricDefinitions", + "type": "array", + "description": "Array of objects defining metrics to calculate, each with 'field', 'operation' (e.g., count, sum, avg), and 'alias' for output keys (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "filterConditions", + "type": "object", + "description": "Optional filtering criteria to apply on the data before metrics are calculated (e.g., {\"status\":\"active\"}).", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "Optional path to save the resulting metrics JSON; if not specified, output is returned in-memory.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing computed metric results keyed by aliases specified in metricDefinitions." + }, + "aiAgent": { + "useCase": "Use when analytics metrics need to be extracted from raw file-based datasets, such as computing sales totals from CSV reports or error counts from log files. This tool helps automate metric creation from files without manual scripting.", + "limitations": "Does not handle extremely large files that exceed memory limits; designed for files that fit in memory. Does not perform advanced statistical analysis beyond basic aggregations. Not suitable for streaming data processing.", + "examples": [ + "Calculate the total and average sales amount from a CSV sales report.", + "Count the number of error occurrences in a log file filtered by error severity.", + "Generate metrics like average response time and total requests from JSON API logs." + ] + }, + "tags": [ + "file-operations", + "metrics", + "analytics", + "aggregation", + "data-processing", + "csv", + "json", + "log" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/data/sales.csv\",\"fileType\":\"csv\",\"metricDefinitions\":[{\"field\":\"amount\",\"operation\":\"sum\",\"alias\":\"totalSales\"},{\"field\":\"amount\",\"operation\":\"avg\",\"alias\":\"averageSales\"}],\"filterConditions\":{\"region\":\"North\"}}", + "description": "Calculate total and average sales from a CSV filtered to region 'North'." + }, + { + "inputJson": "{\"inputFilePath\":\"/logs/app.log\",\"fileType\":\"log\",\"metricDefinitions\":[{\"field\":\"errorLevel\",\"operation\":\"count\",\"alias\":\"errorCount\"}],\"filterConditions\":{\"errorLevel\":\"ERROR\"}}", + "description": "Count number of ERROR entries in an application log file." + }, + { + "inputJson": "{\"inputFilePath\":\"/data/api_responses.json\",\"fileType\":\"json\",\"metricDefinitions\":[{\"field\":\"responseTime\",\"operation\":\"avg\",\"alias\":\"avgResponseTime\"},{\"field\":\"statusCode\",\"operation\":\"count\",\"alias\":\"totalRequests\"}]}", + "description": "Compute average response time and total requests from JSON API response logs." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Metric", + "context": null + } + }, + { + "name": "file-operations.createService", + "description": "Creates a service configuration and accompanying directory structure within a specified base path. Accepts parameters such as service name, service type (e.g., REST, gRPC), base directory path, and optional template selection. Generates standardized service folder with configuration files and optional starter code, returning the path and a summary of created files.", + "category": "file-operations", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The name identifier for the service to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceType", + "type": "string", + "description": "The type of service to create; e.g., 'REST', 'gRPC', or 'GraphQL'.", + "required": true, + "defaultValue": "" + }, + { + "name": "basePath", + "type": "string", + "description": "Filesystem path where the service directory will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "useTemplate", + "type": "string", + "description": "Optional template name for structuring the service; if empty, a default template is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSampleCode", + "type": "boolean", + "description": "Whether to include starter sample code files in the created service directory.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Details of the created service including the full path and a list of created files with their types" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically scaffold a new service infrastructure component within a given directory, supporting multiple service types and templates. Useful in CI/CD pipelines, automated project generation, or when orchestrating codebase modularization.", + "limitations": "This tool does not implement the actual service logic or handle deployment; it only scaffolds configuration and directory structure according to templates.", + "examples": [ + "Create a new REST service called 'UserAPI' in '/services' with sample code included.", + "Generate a gRPC service named 'PaymentProcessor' with a custom template without sample code.", + "Set up a GraphQL service 'InventoryService' in a specified path using the default template." + ] + }, + "tags": [ + "file", + "service", + "creation", + "infrastructure", + "template", + "scaffolding", + "automation" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"UserAPI\",\"serviceType\":\"REST\",\"basePath\":\"/var/projects/services\",\"useTemplate\":\"\",\"includeSampleCode\":true}", + "description": "Create a REST API service named UserAPI in the /var/projects/services directory, including sample starter code." + }, + { + "inputJson": "{\"serviceName\":\"PaymentProcessor\",\"serviceType\":\"gRPC\",\"basePath\":\"/home/dev/services\",\"useTemplate\":\"payment-template\",\"includeSampleCode\":false}", + "description": "Generate a gRPC service named PaymentProcessor under /home/dev/services using a custom template without sample code." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "file-operations.createNotification", + "description": "Creates a notification file with specified content and metadata. Accepts inputs such as notification title, message body, recipient list, and optional priority level. Processes the inputs to generate a structured notification saved as a JSON or text file. Outputs the file path and confirmation of creation.", + "category": "file-operations", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or subject of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The main body content of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers (e.g., emails or usernames) for the notification.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the notification (e.g., low, normal, high).", + "required": false, + "defaultValue": "normal" + }, + { + "name": "outputFormat", + "type": "string", + "description": "File format for the output notification (json or txt).", + "required": false, + "defaultValue": "json" + }, + { + "name": "outputPath", + "type": "string", + "description": "Path where the notification file will be saved. Defaults to current working directory.", + "required": false, + "defaultValue": "./" + } + ], + "returns": { + "type": "object", + "description": "An object containing the output file path and a success confirmation message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a persistent notification file for auditing, message dispatch, or logging purposes in file systems. It is suitable for creating notifications that can be consumed later by other processes or users, ensuring the notification content and metadata are saved in a structured format.", + "limitations": "This tool does not send or dispatch notifications through communication channels (email, SMS, push). It only creates notification files with content; actual delivery requires additional tools.", + "examples": [ + "Create a high priority notification with title 'Server Alert' sent to admin and support team, saved as JSON file.", + "Generate a simple notification message for users about scheduled maintenance in plain text format saved to a specified folder.", + "Create a normal priority notification with a message body and a list of email recipients, saving output in default path." + ] + }, + "tags": [ + "file", + "notification", + "create", + "message", + "output", + "json", + "text", + "logging" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Server Alert\",\"message\":\"CPU usage exceeded threshold.\",\"recipients\":[\"admin@example.com\",\"support@example.com\"],\"priority\":\"high\",\"outputFormat\":\"json\",\"outputPath\":\"/notifications\"}", + "description": "Create a high priority JSON notification file titled 'Server Alert' for admin and support." + }, + { + "inputJson": "{\"title\":\"Maintenance Notice\",\"message\":\"Scheduled maintenance at 10 PM.\",\"recipients\":[\"user1\",\"user2\"],\"outputFormat\":\"txt\"}", + "description": "Generate a plain text notification about maintenance for two users in default directory." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "file-operations.createOrder", + "description": "Creates a new order file by accepting detailed order information including customer data, list of items with quantities and prices, shipping details, and order metadata, then generates a structured JSON file representing the order ready for storage or further processing.", + "category": "file-operations", + "parameters": [ + { + "name": "orderId", + "type": "string", + "description": "Unique identifier for the order.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerInfo", + "type": "object", + "description": "Object containing customer details like name, contact info, and address.", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of ordered items where each item includes product ID, name, quantity, and price per unit.", + "required": true, + "defaultValue": "" + }, + { + "name": "shippingDetails", + "type": "object", + "description": "Information about shipment method, shipping address, and expected delivery date.", + "required": true, + "defaultValue": "" + }, + { + "name": "orderDate", + "type": "string", + "description": "ISO 8601 formatted date string representing when the order was placed.", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentStatus", + "type": "string", + "description": "Status of the payment for the order (e.g., pending, completed, failed).", + "required": false, + "defaultValue": "pending" + }, + { + "name": "notes", + "type": "string", + "description": "Optional notes or special instructions related to the order.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "File path where the order JSON file will be saved.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing success status and the path to the created order file." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured digital record of a customer order and save it as a file for archival, integration, or further business processing. It is applicable for e-commerce platforms, inventory management, or order tracking systems requiring consistent order file creation.", + "limitations": "This tool does not handle order validation against inventory stock or payment processing; it only formats and writes the order data to a file. It also assumes the provided file path is writable and the agent has necessary permissions.", + "examples": [ + "Create an order file for a new purchase including customer and shipping information.", + "Generate a JSON file summarizing an order with multiple items and save it to disk.", + "Save order details with payment status and notes into a structured file for backend use." + ] + }, + "tags": [ + "file", + "order", + "create", + "business", + "json", + "data-management" + ], + "examples": [ + { + "inputJson": "{\"orderId\":\"ORD12345\",\"customerInfo\":{\"name\":\"Alice Johnson\",\"email\":\"alice@example.com\",\"phone\":\"123-456-7890\",\"address\":\"123 Maple St, Springfield\"},\"items\":[{\"productId\":\"P100\",\"name\":\"Widget\",\"quantity\":3,\"price\":19.99},{\"productId\":\"P200\",\"name\":\"Gadget\",\"quantity\":1,\"price\":99.95}],\"shippingDetails\":{\"method\":\"Standard\",\"address\":\"123 Maple St, Springfield\",\"deliveryDate\":\"2024-07-10\"},\"orderDate\":\"2024-06-25T10:30:00Z\",\"paymentStatus\":\"completed\",\"notes\":\"Leave package at front door.\",\"outputFilePath\":\"/orders/ORD12345.json\"}", + "description": "Creating a complete order JSON file with multiple items, shipping info, and notes." + }, + { + "inputJson": "{\"orderId\":\"ORD54321\",\"customerInfo\":{\"name\":\"Bob Smith\",\"email\":\"bob@example.net\",\"phone\":\"987-654-3210\",\"address\":\"456 Oak Ave, Shelbyville\"},\"items\":[{\"productId\":\"P300\",\"name\":\"Thingamajig\",\"quantity\":2,\"price\":49.50}],\"shippingDetails\":{\"method\":\"Express\",\"address\":\"456 Oak Ave, Shelbyville\",\"deliveryDate\":\"2024-07-05\"},\"orderDate\":\"2024-06-26T14:15:00Z\",\"outputFilePath\":\"/orders/ORD54321.json\"}", + "description": "Generating an order file for a single item with express shipping and default payment status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "file-operations.createKey", + "description": "Generates a cryptographic key file using specified algorithm and key size. Inputs include algorithm type, key length, and output file path. Produces a file containing the generated key in PEM or raw binary format depending on parameters.", + "category": "file-operations", + "parameters": [ + { + "name": "algorithm", + "type": "string", + "description": "The cryptographic algorithm to use for key generation (e.g., RSA, ECDSA, AES).", + "required": true, + "defaultValue": "" + }, + { + "name": "keySize", + "type": "number", + "description": "Size of the key in bits (e.g., 2048 for RSA). Must be valid for selected algorithm.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputPath", + "type": "string", + "description": "File system path where the generated key file will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Output file format: 'PEM' for base64-encoded text or 'RAW' for binary key.", + "required": false, + "defaultValue": "PEM" + }, + { + "name": "passphrase", + "type": "string", + "description": "Optional passphrase to encrypt the key file. Leave empty for unencrypted key.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the outputPath confirming where the key file was saved, and a success boolean indicating operation success." + }, + "aiAgent": { + "useCase": "Use this tool when a cryptographic key needs to be programmatically generated and saved to disk for use in secure communications, encryption, or authentication. It supports various algorithms and formats allowing flexible integration into security workflows.", + "limitations": "Does not support hardware security module (HSM) integration or advanced key lifecycle management. Passphrase encryption is basic and not suitable for high-security scenarios without additional protections.", + "examples": [ + "Generate a 2048-bit RSA key and save it in PEM format with no passphrase.", + "Create a 256-bit AES key saved in raw binary format.", + "Generate an ECDSA key with a passphrase in PEM format." + ] + }, + "tags": [ + "file-operations", + "security", + "cryptography", + "key-generation", + "encryption", + "file-creation" + ], + "examples": [ + { + "inputJson": "{\"algorithm\":\"RSA\",\"keySize\":2048,\"outputPath\":\"/keys/private_rsa.pem\",\"format\":\"PEM\",\"passphrase\":\"\"}", + "description": "Generate a 2048-bit RSA key in PEM format without passphrase." + }, + { + "inputJson": "{\"algorithm\":\"AES\",\"keySize\":256,\"outputPath\":\"/keys/aes_key.bin\",\"format\":\"RAW\",\"passphrase\":\"\"}", + "description": "Generate a 256-bit AES key saved as raw binary file." + }, + { + "inputJson": "{\"algorithm\":\"ECDSA\",\"keySize\":256,\"outputPath\":\"/keys/ecdsa_key.pem\",\"format\":\"PEM\",\"passphrase\":\"mySecretPass\"}", + "description": "Generate an ECDSA key with a passphrase in PEM format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "file-operations.createAlert", + "description": "Creates a structured security alert file based on provided threat details and metadata. Accepts alert information such as title, severity, affected files, timestamps, and description as input, and generates a standardized JSON alert file for security monitoring and response system ingestion.", + "category": "file-operations", + "parameters": [ + { + "name": "alertTitle", + "type": "string", + "description": "The title or name of the security alert to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity level of the alert, such as 'Low', 'Medium', 'High', or 'Critical'.", + "required": true, + "defaultValue": "Medium" + }, + { + "name": "affectedFiles", + "type": "array", + "description": "List of file paths or identifiers that are affected by the security issue.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the security issue triggering the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp indicating when the alert was generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalData", + "type": "object", + "description": "Optional additional metadata or context related to the alert, as key-value pairs.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the JSON string of the alert file and the file name to be saved." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate structured security alert files for ingestion by monitoring systems or for archival. Ideal in automated security pipelines that detect and log threats or anomalies involving files. Use it to create consistent alert files that contain all relevant impact and context details.", + "limitations": "This tool does not perform threat detection or analysis itself; it only formats and generates alert files from given data. It cannot send or distribute alerts, nor does it validate the threat content beyond formatting.", + "examples": [ + "Create an alert for a malware detection with high severity affecting specified files.", + "Generate a low severity alert describing suspicious file changes with optional metadata.", + "Produce a critical alert with timestamp and detailed description for incident reporting." + ] + }, + "tags": [ + "file", + "security", + "alert", + "create", + "monitoring", + "incident" + ], + "examples": [ + { + "inputJson": "{\"alertTitle\":\"Malware Detected\",\"severityLevel\":\"High\",\"affectedFiles\":[\"/usr/bin/evil.exe\",\"/tmp/malicious.dll\"],\"description\":\"Detected a malware infection in system binaries.\",\"timestamp\":\"2024-06-01T12:30:00Z\",\"additionalData\":{\"detector\":\"AVScanner v3.2\",\"scanId\":\"1234567890\"}}", + "description": "Generate a high severity malware detection alert for specific infected files with additional detection metadata." + }, + { + "inputJson": "{\"alertTitle\":\"Suspicious File Modification\",\"severityLevel\":\"Low\",\"description\":\"File modification detected outside of normal change window.\",\"affectedFiles\":[\"/var/log/syslog\"],\"additionalData\":{\"user\":\"unknown\",\"process\":\"unknown\"}}", + "description": "Create a low severity alert for suspicious file modification with minimal metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "file-operations.createConfig", + "description": "Creates a configuration file in JSON or YAML format based on provided parameters. Accepts configuration settings as key-value pairs and outputs a text file string containing the properly formatted configuration. Supports optional formatting options such as indentation and file type selection.", + "category": "file-operations", + "parameters": [ + { + "name": "configData", + "type": "object", + "description": "A key-value object representing configuration settings to include in the config file.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "The output file format: 'json' or 'yaml'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the config file. Defaults to 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the config file (only supported for YAML). Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional desired file name for the config file. If empty, no file name is assigned.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated config file content as a string, the file type, and optional file name." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured config file for software, services, or tools based on dynamic or user-supplied configuration parameters. It is useful for automating config file creation in JSON or YAML format, supporting formatting preferences.", + "limitations": "Cannot generate configuration files in formats other than JSON or YAML. Does not validate configuration semantics or schema correctness beyond formatting.", + "examples": [ + "Create a JSON config file with settings for database connection.", + "Generate a YAML config file with indentation of 4 spaces including comments.", + "Produce a config file without specifying a file name, defaulting to JSON and 2-space indentation." + ] + }, + "tags": [ + "file-creation", + "configuration", + "json", + "yaml", + "automation", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"configData\":{\"host\":\"localhost\",\"port\":8080,\"useSSL\":true},\"fileType\":\"json\",\"indentation\":4,\"includeComments\":false,\"fileName\":\"serverConfig.json\"}", + "description": "Create a JSON config file named 'serverConfig.json' with specified server settings and 4-space indentation." + }, + { + "inputJson": "{\"configData\":{\"database\":\"testdb\",\"user\":\"admin\",\"password\":\"secret\"},\"fileType\":\"yaml\",\"indentation\":2,\"includeComments\":true,\"fileName\":\"\"}", + "description": "Generate a YAML config file with database connection settings, 2-space indentation, including comments, without specifying file name." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "video-processing.downloadCode", + "description": "Downloads video processing code snippets or scripts from specified online repositories or URLs. Accepts a URL or repository identifier and programming language preference, fetches the code relevant to video editing or analysis, and returns the code content as a string or saves it to a file if specified.", + "category": "video-processing", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL of the repository or web page hosting the video processing code to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the desired code snippets (e.g., Python, JavaScript, C++).", + "required": false, + "defaultValue": "Python" + }, + { + "name": "saveToFile", + "type": "boolean", + "description": "If true, saves the downloaded code to a local file instead of just returning it as a string.", + "required": false, + "defaultValue": "false" + }, + { + "name": "filePath", + "type": "string", + "description": "Local file path where the downloaded code should be saved, if saveToFile is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fetched code as a string and the file path if the code was saved locally. Example: { codeContent: string, savedPath: string (empty if not saved) }" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve ready-to-use or sample video processing code snippets or scripts from online sources to assist users in development or automation tasks. This is helpful for fetching up-to-date scripts, examples, or libraries for video editing and analysis purposes.", + "limitations": "Cannot verify the security or correctness of downloaded code; cannot execute or test the code; depends on the accessibility of the URL and repository structure; may not handle complex repository authentication or rate limiting.", + "examples": [ + "Download Python video stabilizer code from a GitHub gist URL.", + "Fetch JavaScript code for video frame extraction from a public repo URL and save it locally.", + "Get C++ OpenCV video filtering sample code from an online resource as a string." + ] + }, + "tags": [ + "video-processing", + "code-download", + "automation", + "scripting", + "video-editing" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://gist.github.com/user123/video_stabilizer.py\",\"language\":\"Python\",\"saveToFile\":false,\"filePath\":\"\"}", + "description": "Download Python video stabilizer script as string from a GitHub Gist URL." + }, + { + "inputJson": "{\"sourceUrl\":\"https://github.com/example/video-tools/blob/main/frame_extraction.js\",\"language\":\"JavaScript\",\"saveToFile\":true,\"filePath\":\"./downloads/frame_extraction.js\"}", + "description": "Download JavaScript frame extraction code and save to local file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "video-processing.analyzeAccount", + "description": "Analyzes video account data by processing video metadata, engagement metrics, and content classification to provide a comprehensive report of account activity and performance. Accepts video account identifiers and configuration parameters, performs data aggregation and video content analysis, and outputs performance insights and content categorization summaries.", + "category": "video-processing", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier for the video account to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Time period for analysis with startDate and endDate in ISO format (YYYY-MM-DD).", + "required": false, + "defaultValue": "{\"startDate\":\"\",\"endDate\":\"\"}" + }, + { + "name": "includeVideoContentAnalysis", + "type": "boolean", + "description": "Whether to perform automated analysis of video content (e.g., scene detection, content classification).", + "required": false, + "defaultValue": "true" + }, + { + "name": "engagementMetrics", + "type": "array", + "description": "List of engagement metrics to include in the analysis, e.g., ['views','likes','comments','shares'].", + "required": false, + "defaultValue": "[\"views\",\"likes\",\"comments\"]" + }, + { + "name": "maxVideos", + "type": "number", + "description": "Maximum number of recent videos to include in the analysis.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing summarized engagement statistics, trending content classifications, video performance metrics, and account activity insights." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a consolidated analysis report about a video content creator's account. This includes extracting insights from engagement data, classifying video content for thematic trends, and summarizing video performance over a given time range.", + "limitations": "The tool requires access to the video platform's data or API and does not perform deep content understanding beyond metadata and general content classification. It cannot generate real-time analytics and depends on the availability and quality of input data.", + "examples": [ + "Analyze engagement and content trends for a specific video creator's account during the last quarter.", + "Generate a performance summary report of the top 50 videos uploaded in the past month.", + "Provide content classification statistics and engagement breakdowns for an influencer’s account." + ] + }, + "tags": [ + "video-processing", + "analysis", + "account", + "engagement", + "content-classification", + "report", + "performance" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"creator123\",\"dateRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\"},\"includeVideoContentAnalysis\":true,\"engagementMetrics\":[\"views\",\"likes\",\"comments\"],\"maxVideos\":50}", + "description": "Analyze the last quarter's performance and content classifications for account 'creator123' including views, likes, and comments across the 50 most recent videos." + }, + { + "inputJson": "{\"accountId\":\"vid_channel_789\",\"includeVideoContentAnalysis\":false,\"maxVideos\":20}", + "description": "Generate engagement report without content analysis for the 20 most recent videos from 'vid_channel_789'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "video-processing.analyzeJSON", + "description": "This tool accepts a JSON input representing metadata or extracted features from a video file, such as frame data, timestamps, detected objects, or scene changes. It processes this structured data to analyze video content patterns like scene durations, object appearance frequencies, motion statistics, and outputs a summarized JSON report highlighting key analytical insights, enabling automated video understanding and reporting.", + "category": "video-processing", + "parameters": [ + { + "name": "inputJSON", + "type": "string", + "description": "A JSON-formatted string containing video metadata or extracted video feature data to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Specifies the type of analysis to perform on the JSON data, e.g., 'sceneAnalysis', 'objectFrequency', or 'motionStatistics'.", + "required": false, + "defaultValue": "sceneAnalysis" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamp details in the analysis output for more granular insights.", + "required": false, + "defaultValue": "false" + }, + { + "name": "minObjectConfidence", + "type": "number", + "description": "Minimum confidence threshold (0-1) for detected objects to be considered in the analysis.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "maxReportItems", + "type": "number", + "description": "Maximum number of top results (e.g. objects or scenes) to include in the output report.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "A JSON object summarizing the analyzed video data, including metrics such as scene durations, object counts and frequencies, motion intensity averages, timestamps (if requested), and other relevant statistical insights derived from the input JSON." + }, + "aiAgent": { + "useCase": "Use this tool when you have video metadata or feature data available in JSON format and require an automated analysis to extract meaningful insights such as scene compositions, object appearances over time, or motion trends without processing raw video frames. It is ideal for building intelligent video indexing, summarization, or quality analysis pipelines where raw video is represented as structured JSON data.", + "limitations": "This tool cannot process raw video files or unstructured video content. It relies on well-formed JSON input with appropriate video metadata or extracted feature data. It does not perform video decoding or feature extraction itself, only analysis of provided JSON representations.", + "examples": [ + "Analyze JSON metadata from a video to report average scene lengths and number of scenes.", + "Calculate frequency of detected objects above a confidence threshold within a JSON object describing video detections.", + "Generate a motion intensity summary from JSON motion vector data with timestamps included." + ] + }, + "tags": [ + "video-processing", + "analysis", + "json", + "video-metadata", + "scene-analysis", + "object-detection", + "motion-analysis" + ], + "examples": [ + { + "inputJson": "{\"inputJSON\":\"{\\\"scenes\\\":[{\\\"start\\\":0,\\\"end\\\":10},{\\\"start\\\":10,\\\"end\\\":25},{\\\"start\\\":25,\\\"end\\\":40}]}\" ,\"analysisType\":\"sceneAnalysis\",\"includeTimestamps\":true}", + "description": "Analyze simple scene metadata JSON to report total number of scenes and their durations including timestamps." + }, + { + "inputJson": "{\"inputJSON\":\"{\\\"objects\\\":[{\\\"label\\\":\\\"person\\\",\\\"confidence\\\":0.8,\\\"timestamp\\\":5},{\\\"label\\\":\\\"car\\\",\\\"confidence\\\":0.6,\\\"timestamp\\\":15},{\\\"label\\\":\\\"person\\\",\\\"confidence\\\":0.9,\\\"timestamp\\\":20}]}\" ,\"analysisType\":\"objectFrequency\",\"minObjectConfidence\":0.7}", + "description": "Analyze detected objects in the JSON and return frequency counts of objects with confidence above 0.7." + }, + { + "inputJson": "{\"inputJSON\":\"{\\\"motion\\\":[{\\\"intensity\\\":0.3,\\\"timestamp\\\":2},{\\\"intensity\\\":0.7,\\\"timestamp\\\":8},{\\\"intensity\\\":0.5,\\\"timestamp\\\":16}]}\" ,\"analysisType\":\"motionStatistics\",\"includeTimestamps\":false}", + "description": "Generate motion intensity statistics from JSON motion vector data without timestamps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "video-processing.analyzeText", + "description": "This tool accepts a video file or a video URL as input and extracts any visible textual content within the video frames. It performs optical character recognition (OCR) on video frames sampled at customizable intervals, identifies text language, and provides a structured output of detected text segments along with their timestamps and bounding boxes, enabling analysis of on-screen text throughout the video.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "URL or file path of the video to analyze for text content.", + "required": true, + "defaultValue": "" + }, + { + "name": "samplingInterval", + "type": "number", + "description": "Time interval in seconds between frames sampled for text extraction. Smaller intervals increase accuracy but require more processing.", + "required": false, + "defaultValue": "1" + }, + { + "name": "languages", + "type": "array", + "description": "List of language codes to limit OCR detection to specific languages, improving accuracy.", + "required": false, + "defaultValue": "[\"eng\"]" + }, + { + "name": "detectHandwritten", + "type": "boolean", + "description": "Whether to attempt detection of handwritten text within video frames.", + "required": false, + "defaultValue": "false" + }, + { + "name": "returnBoundingBoxes", + "type": "boolean", + "description": "Whether to include bounding box coordinates of detected text segments in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of detected text entries with their extracted text, timestamps, confidence scores, bounding boxes (if requested), and identified languages." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when needing to extract and analyze any textual content visible within video files or streams, for example, to extract subtitles embedded as visuals, identify signs or labels in video footage, or index text for search. It is suitable for videos in multiple languages and can provide temporal positioning of text occurrences.", + "limitations": "The accuracy depends on video quality and text visibility. It may struggle with very low resolution, obstructions, or stylized fonts. Handwritten text detection is experimental and less accurate than printed text OCR. It does not perform speech-to-text transcription.", + "examples": [ + "Extract all the visible text every 2 seconds from this product demo video to create an index of on-screen labels.", + "Analyze the movie trailer video to detect and list all text and their display times, including subtitles burnt into the frames.", + "Detect handwritten notes appearing briefly in the educational video to assist with content summarization." + ] + }, + "tags": [ + "video", + "text recognition", + "OCR", + "analysis", + "multilingual", + "subtitles", + "handwriting" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/demo.mp4\",\"samplingInterval\":2,\"languages\":[\"eng\",\"spa\"],\"detectHandwritten\":false,\"returnBoundingBoxes\":true}", + "description": "Extract English and Spanish printed text every 2 seconds from a demo video, returning bounding box coordinates." + }, + { + "inputJson": "{\"videoSource\":\"file:///local/path/trailer.mov\",\"samplingInterval\":1,\"languages\":[\"eng\"],\"detectHandwritten\":false,\"returnBoundingBoxes\":false}", + "description": "Extract visible English text every 1 second from a local movie trailer file without bounding boxes." + }, + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/lecture.mp4\",\"samplingInterval\":3,\"languages\":[\"eng\"],\"detectHandwritten\":true,\"returnBoundingBoxes\":true}", + "description": "Detect both printed and handwritten text visible every 3 seconds in an educational lecture video, including bounding boxes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "video-processing.downloadFile", + "description": "Downloads a video file from a specified URL or online source to a local storage path. It accepts the video URL and optional headers or authentication tokens, performs the network request to retrieve the video content, verifies download completion, and saves the media file locally, returning the file path and metadata.", + "category": "video-processing", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The direct URL or link to the video file to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "The local filesystem path where the downloaded video file should be saved, including filename and extension.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers (e.g., authentication tokens) to include in the download request.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download to complete before timing out.", + "required": false, + "defaultValue": "60" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the destination file if it already exists. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the local path of the downloaded file, the file size in bytes, and a success indicator." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve and store video files from internet sources for offline access or further processing. It supports authenticated downloads and ensures the file is saved locally with appropriate handling for existing files and timeouts.", + "limitations": "Cannot handle video streams that require special download protocols beyond HTTP/HTTPS GET. Does not perform video format validation beyond saving the file. Requires valid URL and network access.", + "examples": [ + "Download a public video file from a direct URL to local storage.", + "Download a video file requiring custom authentication headers.", + "Save a video file to a specific folder, overwriting existing files if necessary." + ] + }, + "tags": [ + "download", + "video", + "network", + "file", + "media", + "fetch" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\": \"https://example.com/videos/sample.mp4\", \"destinationPath\": \"/tmp/sample.mp4\"}", + "description": "Download a video from a public URL and save it to /tmp/sample.mp4 without additional headers." + }, + { + "inputJson": "{\"videoUrl\": \"https://secure.example.com/video/12345\", \"destinationPath\": \"/videos/secure_video.mp4\", \"headers\": {\"Authorization\": \"Bearer abcdef12345\"}, \"timeoutSeconds\": 120}", + "description": "Download a secured video using Bearer token authorization and set a timeout of 120 seconds." + }, + { + "inputJson": "{\"videoUrl\": \"https://example.com/media/myvideo.mov\", \"destinationPath\": \"/media/myvideo.mov\", \"overwrite\": true}", + "description": "Download and overwrite an existing video file at the given path." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "video-processing.analyzeMessage", + "description": "Analyzes the spoken or displayed messages within a video file. It accepts video input, extracts and transcribes audio, detects on-screen text, and processes both to identify key messages, sentiment, and themes. Output includes transcript text and summarized message insights.", + "category": "video-processing", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "URL or local path to the input video file to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for audio transcription (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "extractOnScreenText", + "type": "boolean", + "description": "Whether to extract and analyze on-screen text present within the video frames.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the transcribed and extracted textual messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate number of sentences in the summary of the analyzed message.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the full transcript text, any extracted on-screen text, sentiment scores, and a concise summary of the message content." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the communication content within a video, including spoken dialogue and important text on screen, such as video tutorials, presentations, or marketing content. It helps extract meaningful messages and insights without manual review.", + "limitations": "Cannot analyze messages if audio or on-screen text quality is too poor for accurate extraction or transcription. Supports only languages available for transcription. Does not interpret non-verbal cues like facial expressions or tone beyond text sentiment.", + "examples": [ + "Analyze the key messages in this product demo video.", + "Extract and summarize all spoken and displayed text from a marketing video.", + "Provide a sentiment summary of the main message in this tutorial video." + ] + }, + "tags": [ + "video", + "message analysis", + "transcription", + "text extraction", + "sentiment analysis", + "summarization" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/video1.mp4\",\"language\":\"en\",\"extractOnScreenText\":true,\"sentimentAnalysis\":true,\"summaryLength\":3}", + "description": "Analyze English video for spoken message and on-screen text with sentiment, summarizing main points." + }, + { + "inputJson": "{\"videoUrl\":\"/videos/company-presentation.mov\",\"language\":\"en\",\"extractOnScreenText\":false,\"sentimentAnalysis\":false,\"summaryLength\":2}", + "description": "Analyze spoken messages only from a company presentation video, without on-screen text or sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "video-processing.downloadDocument", + "description": "Downloads documents linked to or embedded in a video file or streaming source. Accepts a video URL or local file path, searches for embedded or linked documents (e.g., subtitles, metadata files, or attachments), then downloads and saves them to a specified output path. Outputs file paths of documents downloaded.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "URL or local file path of the video to scan for linked documents.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTypes", + "type": "array", + "description": "List of document file extensions or types to search for and download (e.g., ['srt', 'vtt', 'pdf']).", + "required": false, + "defaultValue": "[\"srt\",\"vtt\"]" + }, + { + "name": "outputDirectory", + "type": "string", + "description": "Local directory path where downloaded documents should be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxDocuments", + "type": "number", + "description": "Maximum number of documents to download per video source. Use 0 for no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "If true, overwrite files in output directory that have the same name.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a list of file paths to the downloaded documents and a summary status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to extract and retrieve documents embedded or linked within video files or streams, such as subtitles, metadata files, or accompanying documents, in order to perform further processing or analysis.", + "limitations": "This tool cannot extract documents that are only referenced verbally in the video content; it only downloads linked or embedded files. It may not support all possible document types depending on codec and container formats.", + "examples": [ + "Download subtitle files embedded in a video at URL 'https://example.com/video.mp4' and save them locally.", + "Extract linked PDF documents from a lecture recording stored at /videos/lecture.mp4.", + "Retrieve closed captions files of type 'vtt' from a streaming source and save to '/tmp/docs'." + ] + }, + "tags": [ + "video", + "document", + "download", + "subtitles", + "metadata", + "extraction" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/sample.mp4\",\"documentTypes\":[\"srt\",\"pdf\"],\"outputDirectory\":\"/tmp/documents\",\"maxDocuments\":5,\"overwriteExisting\":true}", + "description": "Download up to 5 subtitle files and PDFs embedded or linked from a remote video URL, saving to /tmp/documents, overwriting existing files." + }, + { + "inputJson": "{\"videoSource\":\"/home/user/videos/lecture.mkv\",\"documentTypes\":[\"vtt\"],\"outputDirectory\":\"/home/user/docs\",\"maxDocuments\":0,\"overwriteExisting\":false}", + "description": "Extract all 'vtt' subtitle documents linked or embedded in a local MKV video file, saving to /home/user/docs without overwriting existing files." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "video-processing.formatCode", + "description": "Formats programming code snippets related to video processing tasks. Accepts code string input, processes it to properly indent, apply syntax highlighting, and optionally convert to a specified language or style, then outputs the formatted code as a string suitable for display or embedding in video projects.", + "category": "video-processing", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw code snippet to be formatted, supporting languages commonly used in video processing (e.g., Python, JavaScript, C++).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the input code to determine appropriate syntax rules. Defaults to auto-detection if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Formatting style or theme to apply (e.g., 'default', 'dark', 'monokai'). Determines colors and styling of syntax highlighting.", + "required": false, + "defaultValue": "default" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted code. Defaults to 4.", + "required": false, + "defaultValue": "4" + }, + { + "name": "convertLanguage", + "type": "string", + "description": "Optionally convert the code snippet to another programming language if supported (e.g., convert Python to JavaScript). Empty means no conversion.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted (and optionally converted) code as a string, along with metadata like detected language and applied style." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw or unformatted code snippets related to video processing tasks that need proper syntax formatting for readability or display. Ideal for formatting code before embedding in video tutorials, documentation, or demonstrations. Also useful when normalizing code style or converting between languages relevant for video processing.", + "limitations": "Cannot perfectly convert complex code logic between programming languages; supports standard highlighting and formatting but not execution or correctness verification. Limited language conversion support, primarily standard languages used in video processing.", + "examples": [ + "Format a raw Python code snippet for syntax highlighting with a dark theme.", + "Convert a JavaScript video processing snippet to Python and format the result.", + "Indent and style a C++ code sample with 2-space indentation for embedding." + ] + }, + "tags": [ + "video processing", + "code formatting", + "syntax highlighting", + "programming", + "code conversion" + ], + "examples": [ + { + "inputJson": "{\"code\":\"def process_frame(frame):\\n return frame * 2\",\"language\":\"python\",\"style\":\"monokai\",\"indentSize\":4,\"convertLanguage\":\"\"}", + "description": "Format a Python code snippet with monokai styling and 4-space indentation." + }, + { + "inputJson": "{\"code\":\"function processFrame(frame) { return frame * 2; }\",\"language\":\"javascript\",\"style\":\"default\",\"indentSize\":2,\"convertLanguage\":\"python\"}", + "description": "Convert a JavaScript function to Python code and format with default style and 2-space indentation." + }, + { + "inputJson": "{\"code\":\"#include \\nint main() { std::cout << \\\"Video Processing\\\"; return 0; }\",\"language\":\"cpp\",\"style\":\"dark\",\"indentSize\":2,\"convertLanguage\":\"\"}", + "description": "Format a C++ code snippet with dark style and 2-space indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Code", + "context": null + } + }, + { + "name": "video-processing.composeEmail", + "description": "This tool helps compose an email incorporating video content by accepting a video file URL or path, extracting a short video summary or thumbnail, and generating a personalized email message embedding the video preview and a custom message. It outputs a complete email object with subject, body (HTML), and video attachment or link.", + "category": "video-processing", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "URL or path to the video file to include or reference in the email", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientEmail", + "type": "string", + "description": "Email address of the recipient to whom the email will be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "Email address of the sender", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for the email", + "required": false, + "defaultValue": "\"Check out this video\"" + }, + { + "name": "customMessage", + "type": "string", + "description": "Personalized message to include in the email body alongside the video preview", + "required": false, + "defaultValue": "\"Hello, please see the video attached.\"" + }, + { + "name": "includeThumbnail", + "type": "boolean", + "description": "Whether to extract and embed a video thumbnail image in the email body", + "required": false, + "defaultValue": "true" + }, + { + "name": "thumbnailTimestamp", + "type": "number", + "description": "Timestamp (in seconds) in the video at which to capture the thumbnail", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An email object with subject, htmlBody including embedded video preview or links, plainTextBody message, sender and recipient info, and video attachment or reference URL" + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to generate a professional or personalized email that centers on sharing video content, such as promotional videos, tutorials, or updates. It automates video preview extraction and constructs an email that effectively communicates video context and includes an engaging message.", + "limitations": "This tool does not send the email; it only composes and generates the content. It cannot deeply analyze video content for context beyond thumbnail extraction and basic summary. It requires a valid video URL accessible to the tool.", + "examples": [ + "Compose an email to a client with a product demo video link and a personalized greeting.", + "Generate an email sharing a training video with a company employee including a thumbnail preview.", + "Create an email for a marketing campaign embedding a short clip from a promotional video with custom subject and message." + ] + }, + "tags": [ + "video-processing", + "email", + "composition", + "communication", + "marketing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/demo.mp4\",\"recipientEmail\":\"client@example.com\",\"senderEmail\":\"sales@example.com\",\"subject\":\"Product Demo Video\",\"customMessage\":\"Hi there, please check out our latest product demo!\",\"includeThumbnail\":true,\"thumbnailTimestamp\":10}", + "description": "Compose an email to a client with a product demo video including a thumbnail preview captured at 10 seconds." + }, + { + "inputJson": "{\"videoUrl\":\"https://videos.company.com/training1.mp4\",\"recipientEmail\":\"employee@company.com\",\"senderEmail\":\"hr@company.com\",\"customMessage\":\"Please review this training video before next week.\"}", + "description": "Generate an email sharing a training video with an employee, using default subject and including thumbnail preview at default timestamp." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Email", + "context": null + } + }, + { + "name": "video-processing.uploadDocument", + "description": "This tool allows uploading document files (such as PDFs, DOCX, or TXT) to be embedded or referenced within a video project. It accepts a document file input, metadata describing the document, and an optional thumbnail image. The output confirms successful upload and provides a URL to access the document within the video editing platform.", + "category": "video-processing", + "parameters": [ + { + "name": "documentFile", + "type": "string", + "description": "Path or URL to the document file to be uploaded (PDF, DOCX, TXT formats supported)", + "required": true, + "defaultValue": "" + }, + { + "name": "documentTitle", + "type": "string", + "description": "Title or name of the document for display purposes", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Short description or summary of the document's contents", + "required": false, + "defaultValue": "" + }, + { + "name": "thumbnailImage", + "type": "string", + "description": "Optional path or URL to a thumbnail image representing the document", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags or keywords associated with the document for search and categorization", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, a unique document ID, and URL to access or embed the document" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload external document files into a video editing environment, enabling integration of supporting documents into the video project for reference or presentation. It helps manage associated metadata to facilitate searchability and embedding within video timelines or interfaces.", + "limitations": "This tool does not perform any document content analysis, conversion, or editing. It only uploads and registers the document within the video system.", + "examples": [ + "Upload a PDF design spec document to be linked in the video timeline.", + "Add a presentation slide deck document with a custom thumbnail to the project.", + "Attach a transcript text file associated with a recorded video segment." + ] + }, + "tags": [ + "video", + "upload", + "document", + "file-management", + "media-integration" + ], + "examples": [ + { + "inputJson": "{\"documentFile\":\"https://example.com/files/project_spec.pdf\",\"documentTitle\":\"Project Specifications\",\"description\":\"Detailed specs for Q3 project\",\"thumbnailImage\":\"https://example.com/images/spec_thumb.png\",\"tags\":[\"specs\",\"Q3\",\"design\"]}", + "description": "Uploading a PDF specification document with metadata and thumbnail." + }, + { + "inputJson": "{\"documentFile\":\"C:/Users/user/Documents/notes.docx\",\"documentTitle\":\"Meeting Notes\",\"description\":\"Notes from client meeting\",\"tags\":[\"meeting\",\"notes\"]}", + "description": "Uploading a local DOCX file without thumbnail but with tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "video-processing.formatDocument", + "description": "This tool accepts a video file containing recorded documents or presentations, processes the video to extract and format visible textual content into structured document formats like PDF or DOCX. It supports basic editing like text alignment, font normalization, and page structuring, producing polished documents ready for sharing or archiving.", + "category": "video-processing", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Path or URL of the input video file to process containing the document visuals.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output document format, e.g., 'pdf' or 'docx'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "pagesPerDocument", + "type": "number", + "description": "Number of pages to split the output document into if multiple pages are detected; 0 means single document.", + "required": false, + "defaultValue": "0" + }, + { + "name": "textAlignment", + "type": "string", + "description": "Preferred text alignment in the output document (left, center, right, justify).", + "required": false, + "defaultValue": "left" + }, + { + "name": "fontStyle", + "type": "string", + "description": "Font style to apply to extracted text, e.g., 'Times New Roman', 'Arial'.", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "normalizeFontSize", + "type": "boolean", + "description": "Whether to standardize all extracted text to a uniform font size.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeImages", + "type": "boolean", + "description": "Flag to decide if images extracted from video frames should be included in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for OCR processing, like 'en' for English, to improve text extraction accuracy.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted document in base64 encoding and metadata such as page count and document size." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert videos that show documents, presentations, or whiteboard sessions into well-formatted text documents. It is useful for generating editable and shareable document files from recorded meetings, lectures, or handwritten notes captured in a video.", + "limitations": "Cannot perfectly handle heavily distorted or very low-resolution video frames. Complex layouts or non-text visual content may not be accurately converted. It processes visible text but does not transcribe speech or audio content.", + "examples": [ + "Extract and format a PDF document from the provided lecture recording video.", + "Convert a video showing handwritten notes into a DOCX document with uniform font and left alignment.", + "Generate a formatted multipage PDF from a presentation video, including images and text aligned justified." + ] + }, + "tags": [ + "video-processing", + "document-formatting", + "OCR", + "video-to-document", + "text-extraction", + "document-generation" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/meeting_notes.mp4\",\"outputFormat\":\"pdf\",\"pagesPerDocument\":1,\"textAlignment\":\"left\",\"fontStyle\":\"Times New Roman\",\"normalizeFontSize\":true,\"includeImages\":true,\"language\":\"en\"}", + "description": "Convert a meeting notes video into a single-page, left-aligned, Times New Roman font PDF document including all images." + }, + { + "inputJson": "{\"videoFilePath\":\"http://example.com/handwritten_lecture.mp4\",\"outputFormat\":\"docx\",\"pagesPerDocument\":0,\"textAlignment\":\"justify\",\"fontStyle\":\"Arial\",\"normalizeFontSize\":true,\"includeImages\":false,\"language\":\"en\"}", + "description": "Process an online video of handwritten lecture notes into a justified Arial DOCX document without images, combining all content into one document." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Document", + "context": null + } + }, + { + "name": "video-processing.formatEmail", + "description": "Formats email content embedded within video metadata or subtitles by extracting, sanitizing, and structuring email addresses and associated text for clear display or export. Accepts video files or subtitle files as input, processes email format consistency, and outputs a cleaned, standardized email text file or structured data.", + "category": "video-processing", + "parameters": [ + { + "name": "inputVideoFile", + "type": "string", + "description": "Path or URL to the video file containing embedded email information (optional if subtitleFile is provided).", + "required": false, + "defaultValue": "" + }, + { + "name": "subtitleFile", + "type": "string", + "description": "Path or URL to a subtitle file (SRT/ASS) containing email text to be formatted (optional if inputVideoFile is provided).", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the extracted email content, e.g., 'text', 'json'.", + "required": true, + "defaultValue": "text" + }, + { + "name": "sanitizeEmails", + "type": "boolean", + "description": "Whether to sanitize and validate email addresses to standard format and remove invalid entries.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeContext", + "type": "boolean", + "description": "Include timestamps or surrounding text context for each email extracted (only if available).", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxEmails", + "type": "number", + "description": "Maximum number of email entries to extract and format (0 for unlimited).", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object with a 'formattedOutput' property containing the cleaned, formatted emails in the requested output format." + }, + "aiAgent": { + "useCase": "Use this tool whenever an AI agent needs to extract and clean email information embedded within video content or subtitles for communication, contact extraction, or compliance purposes. It helps in collecting email addresses presented in videos or subtitle tracks and formatting them into a standardized output for downstream applications.", + "limitations": "Cannot extract emails from video content without embedded metadata or subtitle text. Not a tool for detecting emails from video frames via image recognition or speech. Limited to text-based metadata or subtitles only.", + "examples": [ + "Extract all email addresses from the subtitle file of a training video and output them in JSON format.", + "Format and sanitize email addresses embedded in video metadata and export as plain text.", + "Limit extraction to 5 email addresses from a given subtitle file and include timestamps for reference." + ] + }, + "tags": [ + "video-processing", + "email", + "formatting", + "extraction", + "subtitle-processing", + "metadata", + "communication" + ], + "examples": [ + { + "inputJson": "{\"subtitleFile\":\"path/to/video_subtitles.srt\",\"outputFormat\":\"json\",\"sanitizeEmails\":true,\"includeContext\":true,\"maxEmails\":10}", + "description": "Extract up to 10 sanitized emails from a subtitle file with timestamps and export as JSON." + }, + { + "inputJson": "{\"inputVideoFile\":\"https://example.com/video.mp4\",\"outputFormat\":\"text\",\"sanitizeEmails\":true,\"includeContext\":false}", + "description": "Extract and format email addresses embedded in video metadata from a video file as plain text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Email", + "context": null + } + }, + { + "name": "video-processing.uploadCode", + "description": "Uploads custom video processing code to the platform allowing integration of user-defined algorithms into video workflows. Accepts source code files or code snippets in supported languages (e.g., Python, JavaScript), validates and stores them, returning a unique code ID for later execution on videos.", + "category": "video-processing", + "parameters": [ + { + "name": "codeContent", + "type": "string", + "description": "The source code text to be uploaded for video processing integration.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the code (e.g., 'python', 'javascript').", + "required": true, + "defaultValue": "" + }, + { + "name": "codeName", + "type": "string", + "description": "A human-readable name or title for the uploaded code snippet.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A description explaining what the code does and its use case.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum allowed execution time in seconds for the code during processing.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing a unique identifier for the uploaded code, the code name, language, status of upload, and any validation messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload custom video processing algorithms or filters as code to the platform. It enables dynamic extension of video workflows by applying user-defined logic, such as specialized transformations, analysis, or effects that are not natively available.", + "limitations": "This tool only uploads code; it does not execute it. Uploaded code must comply with supported languages and platform constraints. It doesn't validate full functional correctness or security beyond basic syntax validation.", + "examples": [ + "Upload a Python script that detects faces in videos.", + "Add a JavaScript filter for custom color grading.", + "Store a machine learning inference model’s preprocessing code for later use." + ] + }, + "tags": [ + "upload", + "code", + "video", + "processing", + "custom", + "script", + "integration" + ], + "examples": [ + { + "inputJson": "{\"codeContent\":\"def process(video):\\n # code to invert video colors\\n return inverted_video\",\"language\":\"python\",\"codeName\":\"InvertColors\",\"description\":\"Inverts the colors of the input video.\",\"timeoutSeconds\":30}", + "description": "Uploading a Python code snippet named 'InvertColors' which inverts video colors." + }, + { + "inputJson": "{\"codeContent\":\"function enhanceContrast(frame) {\\nreturn enhancedFrame;\\n}\",\"language\":\"javascript\",\"codeName\":\"EnhanceContrast\",\"description\":\"Enhances contrast of video frames.\",\"timeoutSeconds\":45}", + "description": "Uploading a JavaScript function for contrast enhancement in video frames." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "video-processing.composeDocument", + "description": "Composes a finalized video presentation document by merging multiple video clips, images, text annotations, and metadata. The tool accepts JSON inputs describing video segments, overlay text, and layout preferences, performs compositing and sequencing, and outputs a video file along with a structured project document (JSON) summarizing the compilation details and timestamps.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSegments", + "type": "array", + "description": "An array of video clip objects with source URLs, start and end times, and order in the sequence.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageOverlays", + "type": "array", + "description": "An array of image overlay objects specifying image URLs, position coordinates, durations, and layer order on the video timeline.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "textAnnotations", + "type": "array", + "description": "Text objects with content, font style, position, and timing for overlay on video segments.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired video output format (e.g., 'mp4', 'mov', 'webm').", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "resolution", + "type": "string", + "description": "Output video resolution (e.g., '1920x1080').", + "required": false, + "defaultValue": "1920x1080" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frames per second for the output video.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to generate and include a metadata document summarizing the composition details.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed video file URL and a JSON document detailing the composition timeline, sources, overlays, and annotations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assemble multiple media inputs into a final coherent video document with descriptive metadata. Ideal for generating presentations, video reports, or tutorials combining video clips, images, and text overlays.", + "limitations": "Cannot perform advanced video effects like 3D rendering or real-time interactive elements. Does not support editing audio tracks beyond simple sequencing.", + "examples": [ + "Compose a video document from three clips with title overlay and export as mp4.", + "Merge images and text annotations on a base video clip to create a presentation video with metadata JSON.", + "Generate a 1080p video summary document with specified frame rate including timestamps and source references." + ] + }, + "tags": [ + "video", + "composition", + "document", + "editing", + "multimedia", + "overlay", + "sequencing", + "presentation" + ], + "examples": [ + { + "inputJson": "{\"videoSegments\":[{\"sourceUrl\":\"https://example.com/clip1.mp4\",\"startTime\":0,\"endTime\":10,\"order\":1},{\"sourceUrl\":\"https://example.com/clip2.mp4\",\"startTime\":5,\"endTime\":15,\"order\":2}],\"imageOverlays\":[{\"imageUrl\":\"https://example.com/logo.png\",\"position\":{\"x\":50,\"y\":50},\"startTime\":0,\"endTime\":15,\"layer\":1}],\"textAnnotations\":[{\"text\":\"Introduction\",\"font\":\"Arial\",\"position\":{\"x\":100,\"y\":200},\"startTime\":0,\"endTime\":5}],\"outputFormat\":\"mp4\",\"resolution\":\"1280x720\",\"frameRate\":25,\"includeMetadata\":true}", + "description": "Compose a short video combining two clips with a logo image overlay and introductory text, outputting a 1280x720 mp4 video at 25fps including metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Document", + "context": null + } + }, + { + "name": "video-processing.generateDataset", + "description": "Generates a labeled dataset from input video files by extracting frames at specified intervals, applying optional preprocessing, and associating labels or annotations. Accepts multiple video files along with labeling information and outputs a structured dataset suitable for machine learning or analysis tasks.", + "category": "video-processing", + "parameters": [ + { + "name": "videoFiles", + "type": "array", + "description": "Array of input video file paths or URLs to process", + "required": true, + "defaultValue": "" + }, + { + "name": "frameExtractionRate", + "type": "number", + "description": "Number of frames to extract per second from each video", + "required": true, + "defaultValue": "1" + }, + { + "name": "labels", + "type": "object", + "description": "Mapping of video file names to labels or category tags for annotation", + "required": false, + "defaultValue": "{}" + }, + { + "name": "annotationFormat", + "type": "string", + "description": "Format of annotations to include, e.g., 'boundingBoxes', 'segmentation', or 'none'", + "required": false, + "defaultValue": "none" + }, + { + "name": "preprocessingSteps", + "type": "array", + "description": "List of preprocessing steps to apply to extracted frames, e.g., ['resize:224x224','normalize']", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Dataset output format, e.g., 'COCO', 'PascalVOC', 'customJSON'", + "required": false, + "defaultValue": "COCO" + }, + { + "name": "outputLocation", + "type": "string", + "description": "Filesystem path or cloud storage location to save the generated dataset", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the generated dataset summary, including dataset path, total frames extracted, and any errors encountered" + }, + "aiAgent": { + "useCase": "Use this tool when needing to create annotated video frame datasets for training or evaluating computer vision models. Useful for extracting frames at controlled intervals, applying consistent preprocessing, and organizing labels and annotations according to common dataset formats.", + "limitations": "This tool does not perform complex annotation generation like automatic object detection or segmentation. It requires pre-defined labels or minimal annotations provided by the user. It also does not handle real-time video stream processing.", + "examples": [ + "> Generate a dataset from multiple videos extracting 2 frames per second labeled with car and pedestrian tags", + "Generate dataset frames resized to 224x224 pixels with normalization, output in COCO format stored at /datasets/cars_pedestrians", + "Create a dataset extracting frames at 1fps with no annotations for raw frame analysis" + ] + }, + "tags": [ + "video-processing", + "dataset-generation", + "frame-extraction", + "annotation", + "machine-learning", + "computer-vision" + ], + "examples": [ + { + "inputJson": "{\"videoFiles\":[\"/videos/traffic1.mp4\",\"/videos/traffic2.mp4\"],\"frameExtractionRate\":2,\"labels\":{\"traffic1.mp4\":\"car\",\"traffic2.mp4\":\"pedestrian\"},\"annotationFormat\":\"none\",\"preprocessingSteps\":[\"resize:224x224\",\"normalize\"],\"outputFormat\":\"COCO\",\"outputLocation\":\"/datasets/traffic\"}", + "description": "Generate a dataset extracting 2 frames per second from two traffic videos, applying resizing and normalization preprocessing, labeling them as car and pedestrian categories, and saving in COCO format." + }, + { + "inputJson": "{\"videoFiles\":[\"http://example.com/video/drones.mp4\"],\"frameExtractionRate\":1,\"labels\":{},\"annotationFormat\":\"none\",\"preprocessingSteps\":[],\"outputFormat\":\"customJSON\",\"outputLocation\":\"/datasets/drones\"}", + "description": "Create a raw frame dataset with 1fps extraction from an online drone footage video with no labels or preprocessing, outputting to a custom JSON format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "video-processing.generateTest", + "description": "Generates a validation test video clip from a source video file. Accepts a video input path and optional test parameters to create a test segment with specific length, start time, and overlays for assessment. Outputs a test video file suitable for validating video processing workflows.", + "category": "video-processing", + "parameters": [ + { + "name": "sourceVideoPath", + "type": "string", + "description": "Filesystem path or URL to the input video file to generate the test from.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputTestPath", + "type": "string", + "description": "Filesystem path where the generated test video clip will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTimeSeconds", + "type": "number", + "description": "Start time in seconds in the source video to begin the test clip extraction.", + "required": false, + "defaultValue": "0" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "Duration in seconds of the test clip to generate.", + "required": false, + "defaultValue": "10" + }, + { + "name": "overlayText", + "type": "string", + "description": "Text to overlay on the test clip for identification or debugging purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "overlayPosition", + "type": "string", + "description": "Position of the overlay text on the video (e.g., 'top-left','bottom-right').", + "required": false, + "defaultValue": "top-left" + }, + { + "name": "includeAudio", + "type": "boolean", + "description": "Whether to include audio in the test clip output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the output file path and metadata about the generated test clip, including duration and resolution." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create short video clips as test samples from larger video files, for validating video processing pipelines, performing quality checks, or generating sample content with optional overlays for debugging and identification. It supports specifying clip length, start time, audio inclusion, and custom overlays to tailor test videos.", + "limitations": "Cannot generate test clips without a valid source video. Overlay text is limited to simple text strings without styling options. Does not perform format conversion beyond generating the test clip. Requires accessible video path and write permissions at output location.", + "examples": [ + "Generate a 15-second test clip starting at 30 seconds into the video with overlay text 'Test Segment 1'.", + "Create a 10-second silent test clip without audio from the beginning of the source video.", + "Produce a test clip with overlay at bottom-right corner for debugging." + ] + }, + "tags": [ + "video-processing", + "testing", + "validation", + "clip-generation", + "overlay", + "video-editing", + "quality-check" + ], + "examples": [ + { + "inputJson": "{\"sourceVideoPath\":\"/videos/sample.mp4\",\"outputTestPath\":\"/tests/sample_test.mp4\",\"startTimeSeconds\":30,\"durationSeconds\":15,\"overlayText\":\"Test Segment 1\",\"overlayPosition\":\"top-left\",\"includeAudio\":true}", + "description": "Generate a 15-second test clip starting 30 seconds into input video, with overlay text at top-left, including audio." + }, + { + "inputJson": "{\"sourceVideoPath\":\"/videos/event.mp4\",\"outputTestPath\":\"/tests/event_test_silent.mp4\",\"durationSeconds\":10,\"includeAudio\":false}", + "description": "Generate a 10-second silent test clip from start of the event video without overlay text." + }, + { + "inputJson": "{\"sourceVideoPath\":\"/videos/raw_footage.mp4\",\"outputTestPath\":\"/tests/debug_clip.mp4\",\"overlayText\":\"Debug Clip\",\"overlayPosition\":\"bottom-right\"}", + "description": "Generate a default 10-second test clip with overlay text in bottom-right corner for debugging." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "video-processing.createServer", + "description": "Creates and configures a dedicated video processing server instance. Accepts configuration parameters such as server hardware specs, software environment, and networking options. Sets up the server with required video processing frameworks and outputs connection details and status.", + "category": "video-processing", + "parameters": [ + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate for the server instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes to allocate to the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageGB", + "type": "number", + "description": "Disk storage size in gigabytes for video processing data and temporary files.", + "required": true, + "defaultValue": "" + }, + { + "name": "gpuEnabled", + "type": "boolean", + "description": "Whether to enable GPU acceleration for video processing tasks.", + "required": false, + "defaultValue": "false" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server (e.g., Ubuntu 22.04, Windows Server 2019).", + "required": true, + "defaultValue": "" + }, + { + "name": "installedSoftware", + "type": "array", + "description": "List of video processing software or frameworks to pre-install (e.g., FFmpeg, OpenCV, NVIDIA drivers).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "networkConfiguration", + "type": "object", + "description": "Network settings including IP address configuration, firewall rules, and ports to open.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Details of the created server including server ID, IP address, status, and a summary of resources allocated." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically provision a new server for video processing tasks, such as encoding, transcoding, or analysis, ensuring the environment is pre-configured with necessary hardware and software to meet workload demands.", + "limitations": "Does not handle ongoing server management such as scaling, patching, or workload scheduling; does not include automatic deployment of video processing jobs.", + "examples": [ + "Create a video processing server with 8 CPU cores, 32GB RAM, GPU enabled, Ubuntu OS, and FFmpeg installed.", + "Set up a server with minimal resources (4 cores, 16GB RAM) for testing video transcoding pipelines.", + "Provision a high-storage server (500GB) with OpenCV and CUDA drivers for advanced video analytics." + ] + }, + "tags": [ + "video-processing", + "server-creation", + "infrastructure", + "video-encoding", + "GPU-acceleration" + ], + "examples": [ + { + "inputJson": "{\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":200,\"gpuEnabled\":true,\"operatingSystem\":\"Ubuntu 22.04\",\"installedSoftware\":[\"FFmpeg\",\"NVIDIA drivers\"],\"networkConfiguration\":{\"ipType\":\"dynamic\",\"firewallRules\":[{\"port\":22,\"protocol\":\"tcp\",\"action\":\"allow\"},{\"port\":8080,\"protocol\":\"tcp\",\"action\":\"allow\"}]}}", + "description": "Create a robust video processing server with GPU acceleration and common software pre-installed." + }, + { + "inputJson": "{\"cpuCores\":4,\"memoryGB\":16,\"storageGB\":100,\"gpuEnabled\":false,\"operatingSystem\":\"Windows Server 2019\",\"installedSoftware\":[\"OpenCV\"],\"networkConfiguration\":{\"ipType\":\"static\",\"ipAddress\":\"192.168.1.50\",\"firewallRules\":[{\"port\":3389,\"protocol\":\"tcp\",\"action\":\"allow\"}]}}", + "description": "Provision a moderate-capacity Windows server with OpenCV pre-installed for video analysis tasks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "video-processing.createWord", + "description": "This tool generates a single word as a stylized text graphic overlay that can be added to video frames or clips. It accepts the word text along with font style, size, color, position, and optional animation effects, then produces a transparent PNG or video snippet with the word rendered for seamless insertion into video projects.", + "category": "video-processing", + "parameters": [ + { + "name": "wordText", + "type": "string", + "description": "The exact word to create as a text overlay graphic.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family name to apply to the word (e.g., Arial, Helvetica).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in points or pixels for the word graphic.", + "required": false, + "defaultValue": "48" + }, + { + "name": "fontColor", + "type": "string", + "description": "Color of the word text in hex code or CSS color name.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "position", + "type": "object", + "description": "X and Y coordinates (as percentages 0-100) to position the word on the video frame.", + "required": false, + "defaultValue": "{\"x\":50,\"y\":50}" + }, + { + "name": "animationEffect", + "type": "string", + "description": "Optional animation effect applied to the word (e.g., fadeIn, slideUp).", + "required": false, + "defaultValue": "" + }, + { + "name": "duration", + "type": "number", + "description": "Duration in seconds for the word animation or display.", + "required": false, + "defaultValue": "3" + }, + { + "name": "backgroundTransparent", + "type": "boolean", + "description": "If true, outputs with transparent background for overlay purposes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL or path to the generated word overlay asset (PNG image or video snippet), plus metadata like dimensions and format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a customizable word as a graphical overlay for videos, such as titles, captions, or emphasis words, with control over style, animation, and positioning. It aids in generating precise word elements without manual video editing.", + "limitations": "Cannot create multi-word sentences or paragraphs; limited to a single word. Animation options are basic and predefined; does not support complex motion graphics or video integration directly.", + "examples": [ + "Create the word 'Welcome' with large white font at the center with a fadeIn animation.", + "Generate the word 'Sale' in red, bold font positioned bottom-right with no animation.", + "Produce the word 'Hello' in blue, 60pt font with slideUp effect and transparent background." + ] + }, + "tags": [ + "video", + "text-overlay", + "word", + "animation", + "graphics", + "video-editing", + "subtitle" + ], + "examples": [ + { + "inputJson": "{\"wordText\":\"Welcome\",\"fontFamily\":\"Verdana\",\"fontSize\":72,\"fontColor\":\"#FFFFFF\",\"position\":{\"x\":50,\"y\":50},\"animationEffect\":\"fadeIn\",\"duration\":4,\"backgroundTransparent\":true}", + "description": "Create 'Welcome' word in white Verdana font, large size centered with fadeIn animation." + }, + { + "inputJson": "{\"wordText\":\"Sale\",\"fontFamily\":\"Impact\",\"fontSize\":64,\"fontColor\":\"#FF0000\",\"position\":{\"x\":90,\"y\":90},\"animationEffect\":\"\",\"duration\":3,\"backgroundTransparent\":true}", + "description": "Generate 'Sale' in red Impact font positioned bottom-right corner with no animation." + }, + { + "inputJson": "{\"wordText\":\"Hello\",\"fontFamily\":\"Arial\",\"fontSize\":60,\"fontColor\":\"#0000FF\",\"position\":{\"x\":50,\"y\":70},\"animationEffect\":\"slideUp\",\"duration\":5,\"backgroundTransparent\":true}", + "description": "Produce 'Hello' in blue Arial font with slideUp effect positioned mid-lower center." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + }, + { + "name": "video-processing.createDatabase", + "description": "Creates and initializes a structured database to store metadata and analysis results extracted from video files. It accepts configuration parameters detailing database type and schema preferences, processes video metadata and frame analysis summaries, and outputs connection details and status of the created database for subsequent querying and video data management.", + "category": "video-processing", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database to create, e.g., 'sqlite', 'postgresql', or 'mongodb'.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Connection string or file path for the database location and access.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "JSON object defining the database schema including tables, fields, and data types for storing video metadata and analysis results.", + "required": true, + "defaultValue": "" + }, + { + "name": "initializeWithSampleData", + "type": "boolean", + "description": "Whether to populate the database initially with sample video metadata and analysis entries.", + "required": false, + "defaultValue": "false" + }, + { + "name": "enableIndexing", + "type": "boolean", + "description": "Flag to create indexes on key fields to optimize query performance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Details of the database creation status, including success flag, connection info, and any error messages encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to organize video metadata and analysis outputs systematically for efficient storage and retrieval in a dedicated database. Essential for workflows involving large video datasets requiring scalable, queryable infrastructure.", + "limitations": "This tool does not perform video analysis itself; it only creates the database structure to store results from separate analysis tools. It also does not manage database maintenance or real-time updates beyond initial creation.", + "examples": [ + "Create a PostgreSQL database with a predefined schema for storing video timestamps, labels, and face recognition results.", + "Initialize a local SQLite database file with indexes enabled for quick retrieval of video scene metadata.", + "Set up a MongoDB database with sample data to prototype an AI-powered video tagging system." + ] + }, + "tags": [ + "video-processing", + "database", + "metadata", + "video-analysis", + "storage", + "video-metadata", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"sqlite\",\"connectionString\":\"./videos.db\",\"schemaDefinition\":{\"tables\":{\"videos\":{\"fields\":{\"id\":\"INTEGER PRIMARY KEY\",\"filename\":\"TEXT\",\"duration\":\"REAL\",\"format\":\"TEXT\"}},\"frames\":{\"fields\":{\"id\":\"INTEGER PRIMARY KEY\",\"videoId\":\"INTEGER\",\"timestamp\":\"REAL\",\"sceneLabel\":\"TEXT\",\"faceCount\":\"INTEGER\"}}}},\"initializeWithSampleData\":true,\"enableIndexing\":true}", + "description": "Create an SQLite database named videos.db with tables for videos and frame-level metadata, initializing with sample entries and indexes enabled." + }, + { + "inputJson": "{\"databaseType\":\"postgresql\",\"connectionString\":\"postgres://user:pass@localhost:5432/videodb\",\"schemaDefinition\":{\"tables\":{\"video_metadata\":{\"fields\":{\"video_id\":\"UUID PRIMARY KEY\",\"title\":\"VARCHAR(255)\",\"upload_date\":\"DATE\"}},\"analysis_results\":{\"fields\":{\"result_id\":\"UUID PRIMARY KEY\",\"video_id\":\"UUID\",\"label\":\"TEXT\",\"confidence\":\"FLOAT\"}}}},\"initializeWithSampleData\":false,\"enableIndexing\":true}", + "description": "Set up a PostgreSQL database remotely with a schema for video metadata and AI analysis outputs, without initial data population, with indexing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "video-processing.createDataset", + "description": "This tool accepts a collection of video files and associated metadata, along with user-defined labeling criteria and formatting options. It processes the videos by extracting frames, applying optional preprocessing filters, and annotating frames or segments according to labels provided or detected. The output is a structured dataset formatted for machine learning tasks, including images/videos, annotations, and metadata exports.", + "category": "video-processing", + "parameters": [ + { + "name": "videoFiles", + "type": "array", + "description": "List of video file paths or URLs to include in the dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "labelDefinitions", + "type": "object", + "description": "Definitions of labels/tags to apply for annotation, including label names and attributes.", + "required": true, + "defaultValue": "" + }, + { + "name": "frameExtractionRate", + "type": "number", + "description": "Number of frames per second to extract from each video for annotation and dataset inclusion.", + "required": false, + "defaultValue": "1" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output dataset format, e.g., 'COCO', 'PascalVOC', or 'TFRecord'.", + "required": false, + "defaultValue": "COCO" + }, + { + "name": "preprocessingOptions", + "type": "object", + "description": "Options for video preprocessing like resizing, cropping, or color adjustments before dataset creation.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAudio", + "type": "boolean", + "description": "Whether to include extracted audio clips in the dataset if present in videos.", + "required": false, + "defaultValue": "false" + }, + { + "name": "annotationType", + "type": "string", + "description": "Type of annotation to create: 'frameLabel', 'boundingBox', 'segmentationMask', or 'actionLabel'.", + "required": false, + "defaultValue": "frameLabel" + }, + { + "name": "outputDestination", + "type": "string", + "description": "File path or cloud storage location to save the generated dataset files.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with dataset metadata including paths to generated annotation files, extracted frames or clips, and summary statistics like number of videos processed and annotations created." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw video footage into a structured dataset suitable for training machine learning models, especially for computer vision tasks like object detection, classification, and segmentation. It helps automate frame extraction, annotation application, and formatting to common dataset standards.", + "limitations": "The tool does not perform automatic labeling unless labelDefinitions include auto-labeling rules or external AI models are integrated. It requires videos to be accessible and in supported formats. Complex annotations like 3D poses or multi-object tracking need additional processing outside this tool.", + "examples": [ + "Create a dataset by extracting 2 frames per second from surveillance videos with bounding box annotations labeled as 'person' or 'vehicle', output in COCO format.", + "Generate a dataset from sports videos including segmentation masks and save it to cloud storage for model training.", + "Produce a frame-labeled dataset from dashcam footage with audio clips included for multimodal analysis." + ] + }, + "tags": [ + "video-processing", + "dataset-creation", + "machine-learning", + "annotation", + "frame-extraction", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"videoFiles\":[\"s3://videos/input1.mp4\",\"s3://videos/input2.mp4\"],\"labelDefinitions\":{\"person\":{\"color\":\"red\"},\"vehicle\":{\"color\":\"blue\"}},\"frameExtractionRate\":2,\"outputFormat\":\"COCO\",\"annotationType\":\"boundingBox\",\"outputDestination\":\"s3://datasets/output/\"}", + "description": "Extract bounding box annotations for persons and vehicles at 2 fps from two videos and save as COCO dataset in specified S3 path." + }, + { + "inputJson": "{\"videoFiles\":[\"/data/sports_match1.mp4\"],\"labelDefinitions\":{\"player\":{\"color\":\"green\"}},\"frameExtractionRate\":1,\"outputFormat\":\"PascalVOC\",\"annotationType\":\"segmentationMask\",\"includeAudio\":true,\"outputDestination\":\"/data/processed_dataset/\"}", + "description": "Create a PascalVOC dataset from a sports match video including segmentation masks for players and audio clips saved locally." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "video-processing.createMessage", + "description": "Creates a video message by overlaying customizable text onto a background video clip. Accepts a video file or URL, message text, and optional style parameters like font, size, color, and positioning. Outputs a new video file with the message embedded as an overlay, suitable for sharing or communication purposes.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "Path or URL of the background video on which to overlay the message text.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageText", + "type": "string", + "description": "Text content of the message to overlay onto the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontName", + "type": "string", + "description": "Name of the font to use for the message text (e.g., Arial, Helvetica).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Size of the font in points for the message text overlay.", + "required": false, + "defaultValue": "24" + }, + { + "name": "fontColor", + "type": "string", + "description": "Color of the message text in hex code or common color name (e.g., #FFFFFF or white).", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "positionX", + "type": "number", + "description": "Horizontal position in pixels from the left edge of the video frame for the overlay text.", + "required": false, + "defaultValue": "50" + }, + { + "name": "positionY", + "type": "number", + "description": "Vertical position in pixels from the top edge of the video frame for the overlay text.", + "required": false, + "defaultValue": "50" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output video format (e.g., mp4, mov).", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "duration", + "type": "number", + "description": "Duration in seconds to display the message overlay during the video. If shorter than video length, overlay disappears afterwards.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the path or URL to the newly created video message file and metadata including duration and format." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to create a personalized or informative video message by embedding text onto a video clip for communication, marketing, or social sharing. Ideal for generating sharable short videos with custom text overlays.", + "limitations": "Cannot create animated or styled text beyond simple font, size, color, and position. Does not support multi-line text wrapping or advanced video editing effects.", + "examples": [ + "Create a video message from a given video URL with text \"Hello, welcome!\" in blue Arial font at top-left.", + "Overlay a countdown message \"3...2...1...\" on a local MP4 video file with large red font centered.", + "Generate a motivational quote on a background video with white font positioned near bottom-right for 8 seconds." + ] + }, + "tags": [ + "video editing", + "text overlay", + "message creation", + "communication", + "video processing", + "media generation" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"https://example.com/videos/sample.mp4\",\"messageText\":\"Hello, welcome!\",\"fontName\":\"Arial\",\"fontSize\":30,\"fontColor\":\"blue\",\"positionX\":20,\"positionY\":20,\"outputFormat\":\"mp4\",\"duration\":7}", + "description": "Create an MP4 video message overlaying 'Hello, welcome!' in blue Arial font near the top-left corner for 7 seconds." + }, + { + "inputJson": "{\"videoSource\":\"/local/path/to/video.mov\",\"messageText\":\"3...2...1...\",\"fontName\":\"Helvetica\",\"fontSize\":50,\"fontColor\":\"#FF0000\",\"positionX\":400,\"positionY\":200,\"outputFormat\":\"mov\",\"duration\":5}", + "description": "Create a MOV video message with a red countdown text \"3...2...1...\" overlay centered around coordinates (400, 200) for 5 seconds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Message", + "context": null + } + }, + { + "name": "video-processing.createAPI", + "description": "Generates a customizable RESTful API service interface for video processing tasks such as transcoding, filtering, or analysis. Accepts configuration parameters defining video processing features and outputs generated API endpoint definitions and example client requests for integration.", + "category": "video-processing", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The name to assign to the generated API service.", + "required": true, + "defaultValue": "" + }, + { + "name": "videoFormatsSupported", + "type": "array", + "description": "List of video file formats (e.g., mp4, avi) that the API will accept and process.", + "required": true, + "defaultValue": "[\"mp4\"]" + }, + { + "name": "processingFunctions", + "type": "array", + "description": "Array of video processing functions to expose via the API, such as 'transcode', 'extractFrames', 'applyFilter'.", + "required": true, + "defaultValue": "[\"transcode\"]" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Whether the generated API requires authentication for access.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxUploadSizeMB", + "type": "number", + "description": "Maximum allowed upload size in megabytes for video files.", + "required": false, + "defaultValue": "500" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "If true, the API will log processing requests and errors.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Default output video format after processing (e.g., mp4, webm).", + "required": false, + "defaultValue": "mp4" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated API endpoint specifications including routes, accepted parameters, response schemas, and sample client usage examples." + }, + "aiAgent": { + "useCase": "Use this tool to generate ready-to-deploy or prototype RESTful video processing APIs tailored to specific video formats and processing needs. Ideal for integrating video processing capabilities into applications without manual backend coding. Assists AI agents in automating video feature deployments.", + "limitations": "This tool generates API specifications and example code snippets but does not implement or deploy the actual backend services. Does not handle real-time streaming or low-level video codec operations.", + "examples": [ + "Create a video processing API named 'VideoProcessor' supporting mp4 and avi formats with transcoding and frame extraction functions.", + "Generate an API that supports filtering videos and requires authentication for secure usage.", + "Generate an API with a maximum upload size of 100MB that outputs all processed videos in webm format." + ] + }, + "tags": [ + "video", + "API", + "generation", + "processing", + "backend", + "transcoding", + "filtering" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"VideoProcessor\",\"videoFormatsSupported\":[\"mp4\",\"avi\"],\"processingFunctions\":[\"transcode\",\"extractFrames\"],\"authenticationRequired\":true,\"maxUploadSizeMB\":100,\"enableLogging\":true,\"outputFormat\":\"mp4\"}", + "description": "Create an API named VideoProcessor supporting mp4 and avi with transcoding and frame extraction, requiring authentication, 100MB max upload, and mp4 output." + }, + { + "inputJson": "{\"apiName\":\"FilterAPI\",\"videoFormatsSupported\":[\"mp4\"],\"processingFunctions\":[\"applyFilter\"],\"authenticationRequired\":false,\"maxUploadSizeMB\":500,\"enableLogging\":false,\"outputFormat\":\"mp4\"}", + "description": "Create a simple filter-only API for mp4 videos, no authentication, with logging disabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "video-processing.createIssue", + "description": "This tool accepts a video file or video URL along with a detailed description of a problem or bug encountered during video processing or playback. It processes the input by packaging the issue details, metadata about the video file, and environment info into a standardized issue report. The output is a structured issue object ready to be posted to issue trackers or bug management systems.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "A file path, URL, or identifier for the video where the issue was found.", + "required": true, + "defaultValue": "" + }, + { + "name": "issueTitle", + "type": "string", + "description": "A concise title summarizing the issue detected in the video processing workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "issueDescription", + "type": "string", + "description": "A detailed explanation describing the symptoms, steps to reproduce, and context of the issue.", + "required": true, + "defaultValue": "" + }, + { + "name": "environmentDetails", + "type": "object", + "description": "Optional metadata about the environment such as software version, platform, or hardware where the issue occurred.", + "required": false, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity level of the issue (e.g., 'low', 'medium', 'high', 'critical').", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "A structured issue report object containing all provided details along with extracted video metadata such as format, length, and resolution." + }, + "aiAgent": { + "useCase": "This tool is suitable for AI agents dealing with video content analysis platforms, quality assurance tasks, or automated bug reporting systems. When an AI detects anomalies or problems during video processing, it can invoke this tool to generate a well-structured issue report to facilitate tracking and resolution.", + "limitations": "The tool does not perform automatic diagnosis or fix the issues; it only creates a structured report for human or downstream agent review.", + "examples": [ + "Create an issue report for a video file that has audio desync problems.", + "Generate a bug report with severity 'high' for a video that fails to render subtitles properly.", + "Document playback freezing issue from a video URL including environment software versions." + ] + }, + "tags": [ + "video-processing", + "issue-reporting", + "bug-tracking", + "quality-assurance", + "video-analysis" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"http://example.com/video.mp4\",\"issueTitle\":\"Audio desync detected\",\"issueDescription\":\"The audio track lags behind the video by approximately 2 seconds during playback.\",\"environmentDetails\":{\"playerVersion\":\"1.4.2\",\"os\":\"Windows 10\"},\"severityLevel\":\"high\"}", + "description": "Report an audio desynchronization issue for a remote video URL with environment info and high severity." + }, + { + "inputJson": "{\"videoSource\":\"/videos/sample.mov\",\"issueTitle\":\"Subtitle rendering failure\",\"issueDescription\":\"Subtitles do not appear despite being embedded in the video file.\",\"severityLevel\":\"medium\"}", + "description": "Create an issue report about subtitles not rendering for a local video file with default medium severity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "video-processing.createTest", + "description": "Creates a unit test script for video processing functions based on provided video processing parameters and expected outcomes. Accepts a JSON specification of the video operation to test, generates test code in specified language, and outputs the test script as a string for integration in automated pipelines.", + "category": "video-processing", + "parameters": [ + { + "name": "videoOperation", + "type": "object", + "description": "JSON object describing the video processing operation to be tested (e.g., filter type, effect parameters).", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedOutput", + "type": "object", + "description": "Object defining the expected properties or results of the video operation, for assert validation in the test.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "The target testing framework/language for the generated test code (e.g., 'jest', 'mocha', 'pytest').", + "required": true, + "defaultValue": "jest" + }, + { + "name": "includeSetup", + "type": "boolean", + "description": "Whether to include setup and teardown code for video resource initialization in the test script.", + "required": false, + "defaultValue": "true" + }, + { + "name": "testName", + "type": "string", + "description": "The name/description of the test case to be included in the test script.", + "required": false, + "defaultValue": "\"Video Processing Operation Test\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated test script code as a string and the language/framework used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate code tests for video processing functions to validate their behavior against expected outcomes. Particularly useful in continuous integration and code validation for video editing libraries or pipelines.", + "limitations": "Does not execute the test code or verify actual video output. Test logic is limited to what can be expressed in the provided expectedOutput specification. Not suitable for generating end-to-end video playback tests or visual validations.", + "examples": [ + "Generate a Jest test for a video filter operation expecting a certain frame transformation.", + "Create a Pytest unit test for a video transcoding function with specific parameters.", + "Produce a Mocha test script validating color correction effect outputs." + ] + }, + "tags": [ + "video-processing", + "testing", + "code-generation", + "automation", + "unit-test", + "video-editing" + ], + "examples": [ + { + "inputJson": "{\"videoOperation\":{\"type\":\"grayscaleFilter\",\"intensity\":0.8},\"expectedOutput\":{\"frameFormat\":\"grayscale\",\"intensity\":0.8},\"testFramework\":\"jest\",\"includeSetup\":true,\"testName\":\"Grayscale Filter Intensity Test\"}", + "description": "Generate a Jest test for applying a grayscale filter with intensity 0.8 and validate output frame format and intensity." + }, + { + "inputJson": "{\"videoOperation\":{\"type\":\"resize\",\"width\":1920,\"height\":1080},\"expectedOutput\":{\"width\":1920,\"height\":1080},\"testFramework\":\"pytest\",\"includeSetup\":false,\"testName\":\"Resize to Full HD\"}", + "description": "Create a Pytest test to verify the resize function correctly changes video dimensions to 1920x1080." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "video-processing.createAccount", + "description": "Creates a new user account for the video processing platform, accepting user credentials and profile information as input, validating the details, and outputting an account ID and status confirmation upon successful creation.", + "category": "video-processing", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "Unique username for the account login", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "User's email address for notifications and recovery", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Password for account authentication", + "required": true, + "defaultValue": "" + }, + { + "name": "fullName", + "type": "string", + "description": "Full name of the user", + "required": false, + "defaultValue": "" + }, + { + "name": "role", + "type": "string", + "description": "User role for permissions (e.g., admin, editor, viewer)", + "required": false, + "defaultValue": "viewer" + }, + { + "name": "subscriptionPlan", + "type": "string", + "description": "Subscription plan selected for video processing service", + "required": false, + "defaultValue": "free" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique accountId, creation status, and any error messages if applicable" + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to programmatically register or onboard new users into the video processing system, especially when creating accounts with specific roles and subscription plans for access control and billing purposes.", + "limitations": "This tool does not handle password strength validation or send verification emails; these must be handled separately. It also does not manage existing account updates or deletions.", + "examples": [ + "Create a new editor user account with a premium subscription.", + "Register a viewer account for trial access.", + "Add an admin account with full permissions." + ] + }, + "tags": [ + "video-processing", + "account-management", + "user-registration", + "onboarding" + ], + "examples": [ + { + "inputJson": "{\"username\":\"videomaster123\",\"email\":\"master@videoplatform.com\",\"password\":\"SecurePass123!\",\"fullName\":\"Video Master\",\"role\":\"editor\",\"subscriptionPlan\":\"premium\"}", + "description": "Create an editor account with a premium subscription plan." + }, + { + "inputJson": "{\"username\":\"trialuser\",\"email\":\"trial@videoplatform.com\",\"password\":\"TrialPass456\",\"role\":\"viewer\"}", + "description": "Create a basic viewer account for trial usage with default free subscription." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "video-processing.createCommit", + "description": "Creates a version control commit reflecting changes in a video editing project. Accepts a project identifier, list of modified video assets, commit message, and author info. Generates a commit record capturing changed multimedia files, timestamps, and metadata, outputting a commit object with metadata and diff summary.", + "category": "video-processing", + "parameters": [ + { + "name": "projectId", + "type": "string", + "description": "Unique identifier of the video editing project to commit changes for.", + "required": true, + "defaultValue": "" + }, + { + "name": "modifiedAssets", + "type": "array", + "description": "Array of objects representing video/audio/image assets that were changed, including their file paths and change types (added, modified, deleted).", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Descriptive message summarizing the changes included in the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person or system creating the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email of the author creating the commit, for metadata purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp for the commit creation time. Defaults to current time if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the commit with properties including commitId, projectId, authorName, authorEmail, commitMessage, timestamp, and a summary of modified assets (change type and file paths)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to finalize and record a set of changes made in a video-editing project environment into version control. This is useful for maintaining history of multimedia editing sessions or synchronizing collaborative edits.", + "limitations": "This tool does not handle merging conflicts or pushing commits to remote repositories; it only creates a local commit object. It assumes change tracking data is provided by upstream processes.", + "examples": [ + "Create a commit for project 'vid123' with added and modified video clips reflecting today's edits.", + "Record an author's changes with detailed commit message for archival in the version control system.", + "Generate a timestamped commit for modifications including deletions of unused audio tracks." + ] + }, + "tags": [ + "video-processing", + "version-control", + "commit", + "multimedia", + "editing", + "project-management" + ], + "examples": [ + { + "inputJson": "{\"projectId\":\"vid123\",\"modifiedAssets\":[{\"filePath\":\"/videos/clip1.mp4\",\"changeType\":\"modified\"},{\"filePath\":\"/audio/track1.mp3\",\"changeType\":\"added\"}],\"commitMessage\":\"Added background audio and updated clip1 visuals.\",\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane@example.com\",\"timestamp\":\"2024-06-10T14:30:00Z\"}", + "description": "Create a commit for project 'vid123' recording modified video and added audio assets with commit metadata." + }, + { + "inputJson": "{\"projectId\":\"projectX\",\"modifiedAssets\":[{\"filePath\":\"/images/thumbnail.png\",\"changeType\":\"deleted\"}],\"commitMessage\":\"Removed old thumbnail image.\",\"authorName\":\"VideoEditorBot\"}", + "description": "Create a commit for project 'projectX' noting the deletion of a thumbnail image, using current timestamp and no email." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "video-processing.createImage", + "description": "Generates a high-quality image extracted or created from a video file. The tool accepts a video source URL or file path, a timestamp (in seconds) to capture a frame, optional resizing dimensions, and output format. It outputs an image file that can be used for thumbnails, previews, or analysis.", + "category": "video-processing", + "parameters": [ + { + "name": "videoSource", + "type": "string", + "description": "The URL or local path of the source video file to extract the image from.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "number", + "description": "The time in seconds into the video to capture the image frame.", + "required": true, + "defaultValue": "0" + }, + { + "name": "width", + "type": "number", + "description": "The desired width of the output image in pixels. If not set, original frame width is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "height", + "type": "number", + "description": "The desired height of the output image in pixels. If not set, original frame height is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, e.g., 'png', 'jpeg'. Default is 'png'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "quality", + "type": "number", + "description": "JPEG quality from 1 to 100, applicable if outputFormat is jpeg. Defaults to 90.", + "required": false, + "defaultValue": "90" + } + ], + "returns": { + "type": "object", + "description": "An object containing base64 encoded image data and metadata about the image created." + }, + "aiAgent": { + "useCase": "Use this tool when a specific frame image is needed from a video source, such as creating thumbnails, snapshots for video previews, or extracting frames for analysis. It supports precise timestamp frame capture and optional resizing to fit output requirements.", + "limitations": "Cannot extract images from DRM-protected or corrupted videos. Performance depends on video encoding support and input video accessibility. Does not create images from scratch or apply filters beyond resizing.", + "examples": [ + "Create a PNG snapshot of the frame at 10 seconds from a local video file.", + "Generate a JPEG thumbnail image of size 320x240 from a video URL at 5.5 seconds.", + "Extract a full-resolution image frame from video starting point (0 seconds)." + ] + }, + "tags": [ + "video", + "image", + "frame-extraction", + "thumbnail", + "snapshot", + "video-processing", + "media" + ], + "examples": [ + { + "inputJson": "{\"videoSource\":\"/videos/sample.mp4\",\"timestamp\":10,\"outputFormat\":\"png\"}", + "description": "Extract a PNG image from sample.mp4 at 10 seconds." + }, + { + "inputJson": "{\"videoSource\":\"https://example.com/video.mov\",\"timestamp\":5.5,\"width\":320,\"height\":240,\"outputFormat\":\"jpeg\",\"quality\":80}", + "description": "Create a resized JPEG thumbnail at 5.5 seconds from remote video URL." + }, + { + "inputJson": "{\"videoSource\":\"/videos/movie.avi\",\"timestamp\":0}", + "description": "Capture the first frame of a local AVI video in default PNG format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "video-processing.createJSON", + "description": "This tool accepts video metadata and optional frame analysis data as input and processes it to generate a structured JSON file summarizing the video properties, annotations, detected scenes, and other relevant information. The output JSON facilitates video indexing, cataloging, or further automated processing.", + "category": "video-processing", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Path or URL to the input video file to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeFrameAnalysis", + "type": "boolean", + "description": "Flag to include detailed frame-by-frame analysis data in output JSON.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sceneDetectionSensitivity", + "type": "number", + "description": "Sensitivity level for scene boundary detection; higher values detect more scene changes (range 0.0 to 1.0).", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "maxFramesToAnalyze", + "type": "number", + "description": "Maximum number of frames to analyze for frame-level metadata to limit processing time (0 for all frames).", + "required": false, + "defaultValue": "0" + }, + { + "name": "metadataOverrides", + "type": "object", + "description": "Optional key-value pairs to override or add to extracted video metadata in output JSON.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing the video metadata summary, detected scene list with timecodes, optional detailed frame analysis (if requested), and any user overrides applied." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract structured metadata and analytic summaries from video files for cataloging, indexing, or further downstream video processing tasks. It is useful for generating standardized JSON representations describing video content, scenes, and analysis data.", + "limitations": "This tool does not perform actual video editing or rendering and relies on the availability and accessibility of the input video file. Frame analysis is limited by processing capacity and user-defined max frame count.", + "examples": [ + "Generate a JSON summary of the video located at 'https://example.com/video.mp4' including scene detection with medium sensitivity.", + "Create a JSON structured report of a local video file with detailed frame analysis enabled but limit processing to 1000 frames.", + "Produce a metadata JSON with overrides to tag a video as 'ProjectX' with custom fields." + ] + }, + "tags": [ + "video", + "metadata", + "scene-detection", + "frame-analysis", + "json", + "indexing" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/event.mp4\",\"includeFrameAnalysis\":true,\"sceneDetectionSensitivity\":0.7,\"maxFramesToAnalyze\":5000,\"metadataOverrides\":{\"project\":\"Conference2024\",\"reviewed\":false}}", + "description": "Generate JSON metadata and detailed frame-by-frame data with increased scene detection sensitivity and capped frame analysis for a conference video." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "audio-processing.analyzeText", + "description": "This tool analyzes text transcriptions of audio content to extract meaningful linguistic features such as sentiment, keyword density, speaker emotion indicators, and readability scores. It accepts a raw text string as input, processes linguistic and semantic attributes, and outputs a structured summary report characterizing the content and style of the spoken words.", + "category": "audio-processing", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The full text transcription of the audio content to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) of the input text to improve analysis accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the text content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Whether to extract and return the most relevant keywords from the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeReadability", + "type": "boolean", + "description": "Whether to calculate readability and complexity scores for the text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured object containing sentiment scores, a list of keywords with relevance scores, readability metrics, and detected emotional tone indicators detected from the text." + }, + "aiAgent": { + "useCase": "Use this tool when you have a textual transcript derived from audio recordings (such as podcasts, interviews, or lectures) and you need to analyze the linguistic content to understand sentiment trends, main topics, or readability without processing raw audio. It helps in summarizing and extracting insights from spoken content once converted to text.", + "limitations": "This tool does not perform audio to text transcription; it requires clean, formatted text input. Its accuracy depends on the input text quality and language support. It does not detect audio-specific features like intonation or non-verbal sounds.", + "examples": [ + "Analyze a customer support call transcript for sentiment and key topics.", + "Extract keyword density and readability scores from a podcast transcript to create show notes.", + "Evaluate emotional tone and sentiment in a recorded interview text to aid content summarization." + ] + }, + "tags": [ + "audio-processing", + "text-analysis", + "sentiment-analysis", + "keyword-extraction", + "readability", + "transcription-analysis" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Thank you for calling our support line. We are happy to assist you today.\",\"language\":\"en\",\"analyzeSentiment\":true,\"extractKeywords\":true,\"includeReadability\":true}", + "description": "Analyze a short English customer service transcript segment for sentiment, keywords, and readability." + }, + { + "inputJson": "{\"text\":\"In today's episode, we dive into artificial intelligence and its impact on modern technology.\",\"language\":\"en\",\"analyzeSentiment\":false,\"extractKeywords\":true,\"includeReadability\":true}", + "description": "Extract keywords and readability metrics from a podcast episode introduction text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Text", + "context": null + } + }, + { + "name": "audio-processing.analyzeWord", + "description": "Analyzes a spoken word segment from an audio file to extract phonetic transcription, emotional tone, speech clarity, and word duration. Accepts an audio file format (wav, mp3) and timestamps for the word segment, processes audio to identify linguistic and acoustic features, and outputs detailed properties about the word's pronunciation and prosody.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "Path or URL to the audio file containing the spoken word segment to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "number", + "description": "Start time in seconds indicating where the spoken word begins in the audio file.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "number", + "description": "End time in seconds indicating where the spoken word ends in the audio file.", + "required": true, + "defaultValue": "" + }, + { + "name": "languageCode", + "type": "string", + "description": "Optional BCP-47 language code of the spoken word to improve phonetic and linguistic analysis (e.g., 'en-US').", + "required": false, + "defaultValue": "\"en-US\"" + }, + { + "name": "includeEmotionAnalysis", + "type": "boolean", + "description": "Whether to include emotional tone analysis of the spoken word in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing phonetic transcription, estimated emotion (if requested), speech clarity score (0 to 1), duration of the word in seconds, and confidence scores for each analysis dimension." + }, + "aiAgent": { + "useCase": "This tool is useful for AI agents assisting in linguistic research, speech therapy, language learning applications, or voice user interface development, where detailed analysis of individual spoken words within audio files is needed. It helps in understanding pronunciation, emotion, and clarity of a particular word segment.", + "limitations": "Does not perform full sentence or continuous speech analysis; accuracy depends on audio quality; emotion detection is limited to general tone categories and may not capture nuanced emotions.", + "examples": [ + "Analyze the word 'hello' spoken between 2.5s and 3.0s in this conversation audio for phonetic clarity.", + "Extract emotional tone and phonetic details of a single word at 10.1 to 10.5 seconds from a podcast episode.", + "Evaluate the pronunciation clarity of a non-native speaker's spoken word segment in an MP3 file from 5.0 to 5.8 seconds." + ] + }, + "tags": [ + "audio", + "speech", + "linguistics", + "phonetics", + "emotion-analysis", + "word-level", + "speech-clarity" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"https://example.com/audio/conversation.wav\",\"startTime\":2.5,\"endTime\":3.0,\"languageCode\":\"en-US\",\"includeEmotionAnalysis\":true}", + "description": "Analyze phonetic transcription and emotional tone of a spoken word segment in an English conversation audio." + }, + { + "inputJson": "{\"audioFilePath\":\"/local/path/podcast.mp3\",\"startTime\":10.1,\"endTime\":10.5,\"languageCode\":\"en-US\",\"includeEmotionAnalysis\":false}", + "description": "Extract phonetic transcription and speech clarity score of a single word segment from a podcast audio file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "audio-processing.analyzeAccount", + "description": "This tool accepts audio recordings related to business account interactions, such as customer service calls or sales meetings. It processes the audio to analyze speaker sentiment, call engagement metrics, and topic distribution. The output is a comprehensive report summarizing account communication quality and key insights to improve customer relations.", + "category": "audio-processing", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the business account for which the audio is analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "audioFiles", + "type": "array", + "description": "List of audio file URLs or base64-encoded audio data representing account-related interactions to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language spoken in the audio files (ISO 639-1 code) to improve transcription and sentiment accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the spoken content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "topicModeling", + "type": "boolean", + "description": "Whether to extract main topics discussed in the audio to identify key themes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "engagementMetrics", + "type": "boolean", + "description": "Whether to calculate metrics like talk time ratio and interruptions to assess engagement levels.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detailedTranscript", + "type": "boolean", + "description": "Include a full speaker-attributed transcript with timestamps in the output report if true.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including sentiment scores, engagement metrics, identified topics, summary insights, and optionally transcripts, all linked to the specified account." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing audio recordings from business account communications, such as customer support calls or sales discussions, to gain insights on customer sentiment, key discussed topics, and interaction quality. This helps in enhancing customer relationship strategies and training staff.", + "limitations": "Cannot replace human judgment in nuanced communication analysis; accuracy depends on audio quality and language support. Does not analyze non-verbal cues or external context beyond audio content.", + "examples": [ + "Analyze recent customer service calls for account ID 12345 to assess customer satisfaction and call effectiveness.", + "Get a summary of main topics and sentiment trends from sales meeting recordings for account XYZ.", + "Provide an engagement metrics report including talk time ratios for technical support calls related to account ABC." + ] + }, + "tags": [ + "audio", + "business", + "sentiment-analysis", + "topic-modeling", + "customer-service", + "engagement", + "transcription" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"acc123\",\"audioFiles\":[\"https://example.com/call1.mp3\",\"https://example.com/call2.mp3\"],\"language\":\"en\",\"sentimentAnalysis\":true,\"topicModeling\":true,\"engagementMetrics\":true,\"detailedTranscript\":false}", + "description": "Analyze two English audio calls for account 'acc123' with all analyses enabled except transcript." + }, + { + "inputJson": "{\"accountId\":\"client789\",\"audioFiles\":[\"data:audio/wav;base64,UklGRngAAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YQAAAA==\"],\"language\":\"en\",\"sentimentAnalysis\":false,\"topicModeling\":true,\"engagementMetrics\":false,\"detailedTranscript\":true}", + "description": "Analyze one audio recording given as base64 for client 'client789', with topic modeling and transcript included but no sentiment or engagement metrics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "audio-processing.downloadCode", + "description": "Downloads audio processing code files or repositories from specified URLs or repositories, supporting various version control hosts. Accepts source URLs or repository identifiers, optional branch or tag, and target local directory. Returns download success status and local path of saved code.", + "category": "audio-processing", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "URL of the code repository or file to download, e.g., GitHub repo URL or direct raw file link.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchOrTag", + "type": "string", + "description": "Optional branch or tag name to download specific version of the code. If empty, defaults to repository default branch.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetDirectory", + "type": "string", + "description": "Local directory path where the code will be saved after download. If not specified, uses current working directory.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSubmodules", + "type": "boolean", + "description": "Whether to include git submodules if present. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success boolean, message detail, and local path of downloaded code if successful." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically retrieve audio processing code from external repositories or URLs for analysis, modification, or integration within an audio editing or AI workflow. Ideal for automating the setup of audio processing modules or scripts from popular code hosts.", + "limitations": "Does not execute or validate downloaded code; relies on network availability. Limited to public repositories or accessible URLs; private repos require prior authentication setup which is not handled by this tool.", + "examples": [ + "Download audio noise reduction script code from a public GitHub repo for modification.", + "Retrieve latest version of an open-source audio analysis plugin to incorporate into local project.", + "Obtain code files from a repository branch for testing compatibility with audio processing pipeline." + ] + }, + "tags": [ + "audio", + "download", + "code", + "repository", + "automation", + "audio-processing" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://github.com/audio-tools/noise-reduction.git\",\"branchOrTag\":\"master\",\"targetDirectory\":\"/user/projects/audio-tools\"}", + "description": "Download the master branch of 'noise-reduction' audio tool repository into specified local directory." + }, + { + "inputJson": "{\"sourceUrl\":\"https://raw.githubusercontent.com/audio-analysis/fft/main/fft.js\",\"branchOrTag\":\"\",\"targetDirectory\":\"\"}", + "description": "Download a single raw JS file for FFT analysis from GitHub into the current directory." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "audio-processing.analyzeJSON", + "description": "Analyzes an audio file and returns a detailed JSON report containing audio features such as tempo, pitch, key, spectral characteristics, and detected segments. Input can be an audio file URL or base64-encoded audio data. Output is a structured JSON summarizing the audio analysis results for further processing or visualization.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioSource", + "type": "string", + "description": "URL or base64 string of the input audio file to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "Array of analysis types to perform, e.g., ['tempo', 'pitch', 'key', 'segments', 'spectral']", + "required": false, + "defaultValue": "[\"tempo\",\"pitch\",\"key\"]" + }, + { + "name": "segmentDuration", + "type": "number", + "description": "Duration in seconds for segment analysis to chunk audio into parts for segment detection.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeWaveformData", + "type": "boolean", + "description": "Whether to include simplified waveform data in the JSON output for visualization purposes.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing keys for each requested analysis type with detailed metrics and metadata about the audio." + }, + "aiAgent": { + "useCase": "Use this tool when needing comprehensive audio feature extraction from an audio file to enable further AI processing, visualization, or decision-making. Ideal for music analysis, audio quality assessment, or feature extraction for machine learning.", + "limitations": "This tool does not perform speech-to-text transcription or semantic audio classification. It focuses on quantitative audio feature extraction, not content understanding.", + "examples": [ + "Analyze an audio file URL for tempo and pitch.", + "Extract key, tempo, and segment markers from base64-encoded audio.", + "Get detailed spectral features including waveform data for audio visualization." + ] + }, + "tags": [ + "audio", + "analysis", + "feature-extraction", + "tempo", + "pitch", + "spectral", + "segments" + ], + "examples": [ + { + "inputJson": "{\"audioSource\":\"https://example.com/audio/song.mp3\",\"analysisTypes\":[\"tempo\",\"pitch\"]}", + "description": "Analyze an online mp3 file to extract tempo and pitch information." + }, + { + "inputJson": "{\"audioSource\":\"data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEA...\",\"analysisTypes\":[\"key\",\"segments\"],\"segmentDuration\":10}", + "description": "Analyze base64 encoded wav data to extract musical key and segment boundaries with 10 second segments." + }, + { + "inputJson": "{\"audioSource\":\"https://example.com/audio/speech.wav\",\"analysisTypes\":[\"spectral\"],\"includeWaveformData\":true}", + "description": "Analyze a speech wav audio at spectral level including waveform data output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "audio-processing.analyzeMessage", + "description": "Analyzes an audio message file to extract communication features such as sentiment, speaker emotion, speech rate, and keyword highlights. Accepts common audio formats and produces a structured summary including emotional tone, key topic words, and speech metrics.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "Path or URL to the audio message file to analyze (wav, mp3, etc.)", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the message audio (e.g., 'en' for English). Used for keyword extraction and sentiment analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeTranscript", + "type": "boolean", + "description": "Whether to perform speech-to-text transcription and include it in the output summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "emotionModel", + "type": "string", + "description": "Specify the emotion recognition model to use (e.g., 'basic', 'advanced').", + "required": false, + "defaultValue": "basic" + }, + { + "name": "keywordsCount", + "type": "number", + "description": "Number of top keywords to extract from the message content.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "Analysis results including sentiment score, detected emotions, speech rate (words per minute), key topics and an optional transcript of the message." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand or summarize emotional and topical content from audio messages, such as voicemails or customer service calls. It helps extract insights without manual listening, supporting sentiment evaluation, topic spotting, and conversational metrics.", + "limitations": "Does not provide full natural language understanding or context beyond audio content. Accuracy depends on audio quality and language model support. It is not a real-time streaming analyzer, designed for pre-recorded messages.", + "examples": [ + "Analyze sentiment and key topics from a voicemail audio file in English.", + "Extract emotional tone and speech metrics from a customer service call recording.", + "Generate a transcript and keywords summary from a meeting audio message." + ] + }, + "tags": [ + "audio", + "analysis", + "sentiment", + "emotion-detection", + "keyword-extraction", + "speech-metrics", + "voice-message" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"/data/messages/message1.wav\",\"language\":\"en\",\"includeTranscript\":true,\"emotionModel\":\"advanced\",\"keywordsCount\":7}", + "description": "Analyze an English voicemail with advanced emotion detection and return 7 key keywords plus transcript." + }, + { + "inputJson": "{\"audioFilePath\":\"https://example.com/audio/call2.mp3\",\"includeTranscript\":false}", + "description": "Analyze a remote audio file without transcription, extracting sentiment and speech rate." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "audio-processing.downloadFile", + "description": "Downloads an audio file from a specified URL or cloud storage location to local or designated storage. Accepts a URL or cloud path, supports optional authentication tokens, and allows output format conversion options. Produces a successfully downloaded audio file in the target format and location.", + "category": "audio-processing", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL or cloud storage path of the audio file to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token for accessing protected resources.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired audio file format after download (e.g., mp3, wav, flac). Defaults to original format if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationPath", + "type": "string", + "description": "Local file system path or storage target where the file will be saved. Defaults to current working directory.", + "required": false, + "defaultValue": "./" + } + ], + "returns": { + "type": "object", + "description": "Details of the downloaded audio file including file path, format, file size in bytes, and any conversion applied." + }, + "aiAgent": { + "useCase": "Use this tool when needing to fetch audio files from online or cloud sources for further processing or playback within audio processing pipelines. Ideal for acquiring remote media when authentication or format conversion is required.", + "limitations": "Cannot download files from unsupported protocols or sites blocking automated downloads; does not perform audio content analysis or validation beyond file retrieval; conversion only supports common audio formats.", + "examples": [ + "Download an mp3 audio file from a public URL to local storage.", + "Download a protected audio file requiring an authentication token and save as wav format.", + "Fetch an audio file from cloud storage to a specified destination path without format change." + ] + }, + "tags": [ + "audio", + "download", + "file", + "media", + "cloud", + "format-conversion" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/audio/song.mp3\",\"outputFormat\":\"wav\",\"destinationPath\":\"/user/downloads/audio\"}", + "description": "Download an MP3 from a public URL and convert it to WAV format saved to a specified local directory." + }, + { + "inputJson": "{\"sourceUrl\":\"https://privatecloudstorage.com/bucket/audio1234.flac\",\"authToken\":\"abcdef123456\"}", + "description": "Download a protected FLAC audio file using an authentication token, saving in original format to default location." + }, + { + "inputJson": "{\"sourceUrl\":\"https://cdn.example.org/podcast/episode1.aac\",\"destinationPath\":\"./podcasts\"}", + "description": "Download an AAC podcast episode without conversion, saving to a local podcasts directory." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "audio-processing.downloadDocument", + "description": "Downloads an audio-related document from a specified URL, validating its format (PDF, DOCX, TXT) and storing it locally or returning it as a base64 string. Accepts the document URL and options for output format and storage path, enabling integration with audio processing workflows requiring associated documentation.", + "category": "audio-processing", + "parameters": [ + { + "name": "documentUrl", + "type": "string", + "description": "The full URL to the audio-related document to download (supports HTTP/HTTPS).", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the downloaded document: 'base64' to return as string or 'file' to save locally.", + "required": true, + "defaultValue": "file" + }, + { + "name": "savePath", + "type": "string", + "description": "Local filesystem path where to save the document if outputFormat is 'file'. Ignored if outputFormat is 'base64'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing success status, file path if saved, or base64 content string if requested, plus any error message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve and locally save or encode any audio-related documentation (manuals, specs, transcripts) referenced by a URL to facilitate offline access or further parsing. Ideal when the document is needed alongside audio data for analysis or user reference.", + "limitations": "This tool does not parse or analyze the contents of the documents; it only downloads and stores or encodes them. It cannot modify or validate document content beyond format checking. Network errors or invalid URLs may fail the operation.", + "examples": [ + "Download the user manual PDF for the audio device from the given URL and save it locally.", + "Retrieve a transcript document as a base64 string for embedding in a report.", + "Save an online specification DOCX file for later offline review." + ] + }, + "tags": [ + "download", + "document", + "audio-documentation", + "file-storage", + "base64", + "url-fetching" + ], + "examples": [ + { + "inputJson": "{\"documentUrl\":\"https://example.com/audio-manual.pdf\",\"outputFormat\":\"file\",\"savePath\":\"/tmp/audio-manual.pdf\"}", + "description": "Download a PDF manual and save it locally." + }, + { + "inputJson": "{\"documentUrl\":\"https://example.com/audio-transcript.txt\",\"outputFormat\":\"base64\"}", + "description": "Retrieve a transcript document and get its base64 encoded content." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Document", + "context": null + } + }, + { + "name": "audio-processing.uploadCode", + "description": "This tool accepts audio-processing code snippets as input in various programming languages (e.g., Python, JavaScript). It uploads and stores the code securely for integration with audio editing pipelines or AI-assisted audio tools and returns a confirmation with the stored code's metadata and ID for future execution or reference.", + "category": "audio-processing", + "parameters": [ + { + "name": "codeSnippet", + "type": "string", + "description": "The source code snippet for audio processing to be uploaded (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the code snippet, e.g., 'python', 'javascript' (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name or identifier of the code author (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief description of what the code does or its purpose (optional).", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags related to the code functionality for easier categorization and search (optional).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a unique code ID, language, upload timestamp, and optional metadata like description and author." + }, + "aiAgent": { + "useCase": "Use this tool when you want to programmatically upload audio-processing code snippets to a managed system for later retrieval, execution, or sharing, enabling AI agents to integrate dynamic audio-processing logic into workflows.", + "limitations": "This tool does not execute or validate code correctness or security; it only uploads and stores code snippets for later use.", + "examples": [ + "Upload a Python function that normalizes audio volume.", + "Upload a JavaScript snippet for applying a custom audio filter.", + "Store user-defined DSP algorithms in code form for remote execution." + ] + }, + "tags": [ + "audio-processing", + "code-upload", + "snippet-storage", + "programming", + "AI-integration" + ], + "examples": [ + { + "inputJson": "{\"codeSnippet\":\"def normalize(audio):\\n peak = max(abs(audio))\\n return audio/peak\",\"language\":\"python\",\"author\":\"audioDev123\",\"description\":\"Normalizes audio volume to max peak\",\"tags\":[\"normalization\",\"audio\",\"python\"]}", + "description": "Uploading a Python function to normalize the volume of audio data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Code", + "context": null + } + }, + { + "name": "audio-processing.uploadFile", + "description": "Uploads an audio file to the system for subsequent AI-driven audio editing or analysis tasks. Accepts common audio formats (e.g., MP3, WAV) and returns metadata about the uploaded file including duration, format, and sample rate, confirming successful upload and readiness for processing.", + "category": "audio-processing", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "The local path or URL of the audio file to be uploaded. Accepts standard audio formats such as MP3, WAV, FLAC.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional, the name to assign to the uploaded file. If omitted, the original file name is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite an existing file with the same name in the system. Defaults to false, which will reject duplicate names.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the upload operation and metadata of the uploaded audio file, including duration (seconds), format, sample rate (Hz), and file size (bytes)." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to ingest user-provided audio files to prepare for further processing such as transcription, enhancement, or analysis. It handles file validation and storage, providing metadata to facilitate downstream steps.", + "limitations": "This tool only uploads and validates the audio file; it does not perform any audio editing, conversion, or analysis by itself.", + "examples": [ + "Upload a WAV audio recording from local device for noise reduction processing.", + "Upload an MP3 podcast episode URL to initiate transcription.", + "Upload a client's FLAC audio file, ensuring existing file is not overwritten." + ] + }, + "tags": [ + "upload", + "audio", + "file-management", + "media-processing", + "audio-format", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/user/audio/interview.wav\",\"fileName\":\"interview.wav\",\"overwrite\":false}", + "description": "Uploading a local WAV audio file without overwriting existing files." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/audio/sample.mp3\",\"fileName\":\"sample_podcast.mp3\",\"overwrite\":true}", + "description": "Uploading an MP3 audio from a URL with overwrite enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "File", + "context": null + } + }, + { + "name": "audio-processing.uploadDocument", + "description": "Uploads an audio-related document (such as transcripts, annotated scripts, or audio notes) to an audio processing system. Accepts files in common document formats (PDF, DOCX, TXT). Processes metadata extraction and stores the document for further AI-based audio analysis or project management. Returns a confirmation with document ID and summary extraction.", + "category": "audio-processing", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the document file including extension to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "Base64 encoded content of the document file to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Type of the document (e.g., transcript, script, notes) to categorize the upload.", + "required": false, + "defaultValue": "transcript" + }, + { + "name": "projectId", + "type": "string", + "description": "Identifier of the audio project this document relates to, if any.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags to describe or categorize the document for easier searching later.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Object containing upload status, assigned document ID, extracted metadata summary, and optionally detected language or keywords." + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload documents related to audio projects or analyses, such as transcripts or annotated scripts, into an AI audio processing environment for further use and retrieval. Helps agents manage project documents alongside audio files.", + "limitations": "This tool does not process audio files themselves, nor perform transcription. It only uploads documents related to audio projects. It cannot validate the document content beyond basic metadata extraction.", + "examples": [ + "Upload a transcript document to a podcast audio project.", + "Add annotated script notes to a music production project.", + "Upload meeting notes related to an audio recording session." + ] + }, + "tags": [ + "audio", + "document", + "upload", + "project-management", + "transcript", + "annotation" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"episode01_transcript.pdf\",\"fileContentBase64\":\"JVBERi0xLjUKJcfs...\",\"documentType\":\"transcript\",\"projectId\":\"proj123\",\"tags\":[\"podcast\",\"episode1\"]}", + "description": "Upload a PDF transcript of episode 01 for a podcast project." + }, + { + "inputJson": "{\"fileName\":\"session_notes.txt\",\"fileContentBase64\":\"VGhpcyBpcyBhbiBhbm5vdGF0aW9uIGZvciB0aGUgc2Vzc2lvbi4=\",\"documentType\":\"notes\",\"projectId\":\"music789\",\"tags\":[\"mixing\",\"session\"]}", + "description": "Upload plain text notes from a music mixing session." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Document", + "context": null + } + }, + { + "name": "audio-processing.formatCode", + "description": "This tool accepts audio-processing-related source code snippets as input and formats them according to standard code style conventions for improved readability and maintainability. It supports multiple programming languages used in audio processing such as Python, C++, and JavaScript, and returns the formatted code as a string.", + "category": "audio-processing", + "parameters": [ + { + "name": "sourceCode", + "type": "string", + "description": "The raw source code string that needs formatting. Supports audio-processing code in Python, C++, JavaScript, etc.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the source code to apply appropriate formatting rules (e.g., 'python', 'cpp', 'javascript').", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces used for indentation in the formatted output. Typical values are 2 or 4.", + "required": false, + "defaultValue": "4" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum length of each line before wrapping occurs. Helps ensure readable code width.", + "required": false, + "defaultValue": "80" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tab characters for indentation instead of spaces.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted code as a string and any formatting errors or warnings encountered." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to cleanly format audio-processing code snippets for display, sharing, or integration to improve readability and maintain consistent coding style. Ideal when processing code examples, scripts, or library source code related to audio tasks.", + "limitations": "Does not perform code syntax validation or error correction beyond formatting. May not fully support obscure or custom syntaxes beyond common languages specified.", + "examples": [ + "Format a Python script that implements an audio filter with 4-space indentation.", + "Format C++ audio DSP code with 2-space indentation and max line length of 100.", + "Format JavaScript code for an audio visualization module using tabs instead of spaces." + ] + }, + "tags": [ + "audio-processing", + "code-formatting", + "code-style", + "source-code", + "programming", + "audio-development" + ], + "examples": [ + { + "inputJson": "{\"sourceCode\":\"def process_audio(sample):\\n return sample*2\\n\",\"language\":\"python\",\"indentationSpaces\":4,\"maxLineLength\":80,\"useTabs\":false}", + "description": "Format a simple Python function for audio processing with 4-space indentation." + }, + { + "inputJson": "{\"sourceCode\":\"void applyReverb(float* buffer, int size){for(int i=0;i\",\"imageType\":\"waveform\",\"width\":800,\"height\":400,\"colorMap\":\"gray\"}", + "description": "Create a gray-scale waveform image from raw base64 audio data." + }, + { + "inputJson": "{\"audioInput\":\"https://example.com/audio/podcast-episode.wav\",\"imageType\":\"spectrogram\",\"timeRange\":[30,60]}", + "description": "Extract a spectrogram image for the segment between 30 and 60 seconds of a podcast audio file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Image", + "context": null + } + }, + { + "name": "audio-processing.createText", + "description": "Generates textual metadata or captions from an input audio clip by analyzing its content, speech, or sound events. Accepts audio files in common formats and outputs a structured text describing spoken words or audio scene content, useful for captions, indexing, or search.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "File path or URL to the input audio file to analyze; supports formats like mp3, wav, or m4a.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') specifying the spoken language for speech recognition to improve accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeTimestamps", + "type": "boolean", + "description": "Whether to include timestamps for each recognized word or phrase in the output text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxDurationSeconds", + "type": "number", + "description": "Maximum duration of audio to process in seconds; longer audio may be truncated for processing limits.", + "required": false, + "defaultValue": "300" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output text: 'plain' for simple text, 'json' for structured captions with timestamps.", + "required": false, + "defaultValue": "plain" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a 'text' field containing the transcribed or generated descriptive text; optionally includes structured caption data if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create textual representations from audio content for accessibility, search indexing, content summarization, or automated caption generation from audio files. It is suitable for podcasts, videos, interviews, and general audio content where speech or identifiable sounds are present.", + "limitations": "Does not support real-time processing; accuracy depends on audio quality and language support; cannot generate text for music without lyrics or purely instrumental sounds.", + "examples": [ + "Generate a plain transcript of a podcast segment in English.", + "Create timestamped captions for a recorded interview in Spanish.", + "Extract a summarized descriptive text of an environmental sound recording." + ] + }, + "tags": [ + "audio", + "speech-to-text", + "captioning", + "transcription", + "metadata", + "audio analysis" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"/path/to/podcast.mp3\",\"language\":\"en\",\"includeTimestamps\":false,\"maxDurationSeconds\":300,\"outputFormat\":\"plain\"}", + "description": "Generate a plain text transcript of the first 5 minutes of a podcast audio file in English." + }, + { + "inputJson": "{\"audioFilePath\":\"https://example.com/interview.wav\",\"language\":\"es\",\"includeTimestamps\":true,\"maxDurationSeconds\":600,\"outputFormat\":\"json\"}", + "description": "Create JSON formatted captions with timestamps for a Spanish interview audio file up to 10 minutes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Text", + "context": null + } + }, + { + "name": "audio-processing.createAccount", + "description": "Creates a user account specifically for managing audio processing projects and subscriptions. Accepts user details and preferences, validates them, and returns account confirmation with account ID and access tokens for audio editing and AI-driven processing services.", + "category": "audio-processing", + "parameters": [ + { + "name": "username", + "type": "string", + "description": "Unique username for the user account", + "required": true, + "defaultValue": "" + }, + { + "name": "email", + "type": "string", + "description": "Email address for account registration and notifications", + "required": true, + "defaultValue": "" + }, + { + "name": "password", + "type": "string", + "description": "Password for securing the user account", + "required": true, + "defaultValue": "" + }, + { + "name": "subscriptionPlan", + "type": "string", + "description": "Subscription plan for audio processing services (e.g., free, premium)", + "required": false, + "defaultValue": "free" + }, + { + "name": "preferences", + "type": "object", + "description": "User preferences such as default audio formats and processing presets", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object including accountId, username, email, subscriptionPlan, preferences, and an accessToken to authenticate audio processing requests." + }, + "aiAgent": { + "useCase": "Use this tool when creating new user accounts for audio processing platforms that leverage AI for audio editing, enhancement, or analysis. It consolidates user credentials, preferences, and subscription data into one account for personalized service.", + "limitations": "This tool does not handle authentication beyond initial creation, nor does it manage password recovery or advanced user management functions.", + "examples": [ + "Create a new user account with premium subscription and preferences for MP3 output.", + "Register a user with default free plan and custom processing presets." + ] + }, + "tags": [ + "audio-processing", + "account-management", + "user-registration", + "subscription", + "AI-audio" + ], + "examples": [ + { + "inputJson": "{\"username\":\"audiophile123\",\"email\":\"user@example.com\",\"password\":\"SecurePass!2024\",\"subscriptionPlan\":\"premium\",\"preferences\":{\"defaultAudioFormat\":\"wav\",\"autoNormalize\":true}}", + "description": "Creating a premium user account with WAV format preference and auto normalization enabled." + }, + { + "inputJson": "{\"username\":\"newuser\",\"email\":\"newuser@example.com\",\"password\":\"password123\"}", + "description": "Creating a free-tier account with default preferences." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Account", + "context": null + } + }, + { + "name": "audio-processing.createDatabase", + "description": "Creates a structured audio sample database from provided audio files for easy search, categorization, and retrieval. Accepts audio file paths and metadata, processes audio features for indexing, and outputs a JSON database with organized audio entries.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePaths", + "type": "array", + "description": "Array of strings specifying file paths or URLs of audio files to include in the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadataFields", + "type": "array", + "description": "List of metadata field names (e.g. 'artist', 'genre') to associate with each audio entry.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "extractFeatures", + "type": "boolean", + "description": "Whether to automatically extract audio features like tempo, pitch, and timbre for indexing.", + "required": false, + "defaultValue": "true" + }, + { + "name": "databaseName", + "type": "string", + "description": "Name or identifier for the created database.", + "required": false, + "defaultValue": "AudioSampleDB" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output database file (e.g., 'json', 'xml').", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object representing the audio sample database including entries with audio metadata and extracted features, formatted as specified." + }, + "aiAgent": { + "useCase": "Use this tool when needing to organize a collection of audio files into a searchable and structured format for music production, research, or machine learning tasks. It helps agents build databases that facilitate quick retrieval and analysis of audio samples.", + "limitations": "Cannot analyze audio content beyond feature extraction; does not handle audio editing or transcription. Requires valid audio file inputs accessible to the system.", + "examples": [ + "Create a database from a batch of mp3 files for a music cataloging app.", + "Generate an audio sample database with metadata fields for genre and artist for a music recommendation system.", + "Compile a database of environmental sounds with extracted features for a sound classification AI model." + ] + }, + "tags": [ + "audio-processing", + "database", + "audio-samples", + "feature-extraction", + "indexing", + "metadata", + "music", + "machine-learning" + ], + "examples": [ + { + "inputJson": "{\"audioFilePaths\":[\"/audio/snare.wav\",\"/audio/kick.wav\"],\"metadataFields\":[\"instrument\",\"bpm\"],\"extractFeatures\":true,\"databaseName\":\"drumSamples\",\"outputFormat\":\"json\"}", + "description": "Create a JSON database of drum sample audio files with extracted audio features and metadata fields instrument and bpm." + }, + { + "inputJson": "{\"audioFilePaths\":[\"https://example.com/sound1.mp3\",\"https://example.com/sound2.mp3\"],\"metadataFields\":[],\"extractFeatures\":false,\"databaseName\":\"fieldRecordings\"}", + "description": "Create a database named 'fieldRecordings' from remote audio URLs without extracting features." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Database", + "context": null + } + }, + { + "name": "audio-processing.createServer", + "description": "Creates and configures a dedicated server instance optimized for hosting audio processing pipelines. Accepts parameters defining server capacity, supported audio formats, processing plugins, and network settings. Outputs server initialization results including server ID, status, endpoint URLs, and configuration summary.", + "category": "audio-processing", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "Human-readable name for the server instance to identify it in management consoles.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxConcurrentSessions", + "type": "number", + "description": "Maximum number of simultaneous audio processing sessions the server can handle.", + "required": true, + "defaultValue": "10" + }, + { + "name": "supportedFormats", + "type": "array", + "description": "List of audio file formats (e.g., mp3, wav, flac) that the server is configured to process.", + "required": false, + "defaultValue": "[\"mp3\",\"wav\"]" + }, + { + "name": "processingPlugins", + "type": "array", + "description": "Array of audio processing plugin names or identifiers to load on server startup for effects or analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region or data center location where the server should be deployed (e.g., us-east-1).", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Flag to enable automatic scaling of server resources based on load demand.", + "required": false, + "defaultValue": "false" + }, + { + "name": "networkSettings", + "type": "object", + "description": "Custom network configuration parameters such as port mappings, firewall rules, and bandwidth limits.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing serverId, currentStatus, endpointUrls for API access and streaming, and a summary of the effective configuration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically deploy or configure servers dedicated to audio processing tasks. Ideal for launching scalable infrastructure that supports batch or real-time audio effects, format conversion, or analysis pipelines in a network-accessible environment.", + "limitations": "Does not manage individual audio files or processing jobs. This tool strictly handles server infrastructure setup, not application-level audio manipulations or monitoring.", + "examples": [ + "Create a server named 'MixServer01' that supports mp3 and wav formats with auto-scaling enabled.", + "Deploy an audio processing server with specified plugins for noise reduction and equalization in the eu-west-2 region.", + "Configure a small server instance limited to 5 concurrent sessions for testing purposes." + ] + }, + "tags": [ + "audio", + "server", + "infrastructure", + "deployment", + "processing", + "scalable", + "cloud" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"MixServer01\",\"maxConcurrentSessions\":20,\"supportedFormats\":[\"mp3\",\"wav\"],\"processingPlugins\":[\"noiseReduction\",\"equalizer\"],\"region\":\"us-west-2\",\"enableAutoScaling\":true}", + "description": "Create a scalable audio processing server named MixServer01 with noise reduction and equalizer plugins in the US West region." + }, + { + "inputJson": "{\"serverName\":\"TestAudioSrv\",\"maxConcurrentSessions\":5,\"supportedFormats\":[\"flac\"],\"enableAutoScaling\":false}", + "description": "Deploy a small test server handling FLAC format without auto-scaling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "audio-processing.createDataset", + "description": "Creates a structured audio dataset from supplied audio recordings and associated metadata. Accepts an array of audio file paths or URLs along with optional annotations like transcripts, speaker labels, and tags. Processes inputs to generate a standardized dataset suitable for training or evaluation of audio AI models, outputting metadata in JSON format.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFiles", + "type": "array", + "description": "List of audio file paths or URLs to include in the dataset", + "required": true, + "defaultValue": "" + }, + { + "name": "annotations", + "type": "object", + "description": "Optional object containing annotations such as transcripts, speaker info, or tags keyed by audio file identifiers", + "required": false, + "defaultValue": "" + }, + { + "name": "sampleRate", + "type": "number", + "description": "Desired sample rate to which audio files should be resampled", + "required": false, + "defaultValue": "16000" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the output dataset metadata, e.g., 'JSON', 'CSV'", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "includeWaveforms", + "type": "boolean", + "description": "Whether to include pre-processed waveform data representations in the dataset output", + "required": false, + "defaultValue": "false" + }, + { + "name": "normalizeAudio", + "type": "boolean", + "description": "Whether to normalize audio volumes before creating the dataset", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a dataset object with metadata for each audio file, including path, duration, sample rate, and linked annotations. Provides summary statistics and paths to processed audio files if normalization or resampling applied." + }, + "aiAgent": { + "useCase": "Use this tool when building a coherent and standardized audio dataset from raw audio files for machine learning tasks like speech recognition, speaker identification, or audio event detection. It helps aggregate audio and annotations into a consistent format ready for model training or testing.", + "limitations": "This tool does not perform speech-to-text transcription or advanced annotation generation; annotations must be pre-provided or generated externally. It also does not host audio files or handle dataset version control.", + "examples": [ + "Create a dataset from a folder of podcast audio files with speaker and transcript annotations to train a speaker diarization model.", + "Generate a dataset of environmental sound clips with tags for different sound types for an audio classification project.", + "Prepare a normalized and resampled dataset of lecture recordings with timestamps and text transcripts for training ASR models." + ] + }, + "tags": [ + "audio", + "dataset", + "machine-learning", + "preprocessing", + "annotation", + "speech", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"audioFiles\":[\"https://example.com/audio1.wav\",\"https://example.com/audio2.wav\"],\"annotations\":{\"audio1\":{\"transcript\":\"Hello world\",\"speaker\":\"Speaker1\"},\"audio2\":{\"transcript\":\"Testing one two\",\"speaker\":\"Speaker2\"}},\"sampleRate\":22050,\"outputFormat\":\"JSON\",\"includeWaveforms\":true,\"normalizeAudio\":true}", + "description": "Create a JSON dataset from two online audio files with transcripts and speaker labels, resampled to 22050Hz with normalization." + }, + { + "inputJson": "{\"audioFiles\":[\"/local/path/sound1.mp3\",\"/local/path/sound2.mp3\"],\"sampleRate\":16000,\"outputFormat\":\"CSV\",\"includeWaveforms\":false,\"normalizeAudio\":false}", + "description": "Generate a CSV report dataset from two local mp3 sound files without waveform data or normalization, using 16kHz sample rate." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "audio-processing.createTest", + "description": "This tool generates automated audio processing test cases based on provided audio clips and test criteria. It accepts audio input files along with test specifications such as expected properties (e.g., duration, format, sample rate) and outputs a structured test script in JSON format that can be used to validate audio processing pipelines or software components.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "Path or URL to the input audio file to be tested.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedDurationSeconds", + "type": "number", + "description": "Expected duration of audio in seconds for test validation.", + "required": false, + "defaultValue": "" + }, + { + "name": "expectedSampleRate", + "type": "number", + "description": "Expected sample rate (Hz) of the audio file.", + "required": false, + "defaultValue": "" + }, + { + "name": "expectedChannels", + "type": "number", + "description": "Expected number of audio channels (1 for mono, 2 for stereo, etc.).", + "required": false, + "defaultValue": "" + }, + { + "name": "testName", + "type": "string", + "description": "Custom name for the generated test case.", + "required": false, + "defaultValue": "AudioTestCase" + }, + { + "name": "includeWaveformCheck", + "type": "boolean", + "description": "If true, generate test steps to verify waveform shape consistency.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxTestDurationSeconds", + "type": "number", + "description": "Maximum duration of audio to test; audio longer than this will be truncated for test purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object containing a structured automated audio test script including metadata, expected audio properties, and validation steps." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically create structured automated test scripts for audio processing components, validating input audio properties and ensuring conformity to expected audio parameters. Ideal for development or QA scenarios where consistent, repeatable audio tests are needed.", + "limitations": "This tool does not perform audio processing or modification itself. It does not validate the correctness of audio content, only properties. It assumes the provided audio input file is accessible and valid.", + "examples": [ + "Create a test case to validate that an uploaded audio file matches a given sample rate and duration.", + "Generate an audio test script with waveform checks for regression testing in an audio SDK.", + "Produce a truncated audio test for a long audio file with expected channel validation." + ] + }, + "tags": [ + "audio", + "testing", + "automation", + "validation", + "audio-processing", + "qa" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"/samples/test-audio.wav\",\"expectedDurationSeconds\":30,\"expectedSampleRate\":44100,\"expectedChannels\":2,\"testName\":\"StereoAudioTest\",\"includeWaveformCheck\":true}", + "description": "Generates a test script for a stereo audio file expected to be 30 seconds long at 44.1kHz including waveform validation." + }, + { + "inputJson": "{\"audioFilePath\":\"http://example.com/audio/mono-sample.mp3\",\"expectedDurationSeconds\":15,\"expectedChannels\":1,\"testName\":\"MonoAudioShortTest\"}", + "description": "Creates an audio test case for a mono audio sample with 15 seconds duration expected, without waveform checks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "audio-processing.createIssue", + "description": "This tool accepts audio files and metadata related to an audio processing bug or feature request and generates a standardized issue report suitable for code repositories or audio processing projects. It analyzes the input details, formats the issue content with relevant outlines, and outputs a structured issue object containing title, description, and reproduction steps.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFilePath", + "type": "string", + "description": "File path or URL to the audio file that demonstrates the issue or feature request", + "required": true, + "defaultValue": "" + }, + { + "name": "issueType", + "type": "string", + "description": "Type of issue to create, e.g., 'bug', 'feature request', 'improvement'", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description explaining the problem or feature as observed in the audio processing context", + "required": true, + "defaultValue": "" + }, + { + "name": "stepsToReproduce", + "type": "array", + "description": "Step-by-step instructions to reproduce the issue using the audio file and processing tools", + "required": false, + "defaultValue": "[]" + }, + { + "name": "expectedBehavior", + "type": "string", + "description": "Description of the expected behavior or output from the audio processing system", + "required": false, + "defaultValue": "" + }, + { + "name": "actualBehavior", + "type": "string", + "description": "Description of the actual behavior or output observed", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the issue, e.g., 'low', 'medium', 'high'", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "A structured issue object containing fields such as title, formatted description, issue type, priority, and reproduction steps for use in tracking systems" + }, + "aiAgent": { + "useCase": "Use this tool when a user wants to create a structured and clear issue report related to audio processing code or algorithms. It helps synthesize audio evidence and textual descriptions into standardized issue formats suitable for bug tracking or feature planning.", + "limitations": "This tool cannot fix the issue itself or analyze non-audio issue contexts. It does not integrate directly with issue trackers or version control systems.", + "examples": [ + "Create a bug report for audio clipping issue detected in processed file.", + "Generate a feature request issue for adding noise reduction capability using provided audio sample.", + "Document an improvement issue describing latency delay with reproduction steps." + ] + }, + "tags": [ + "audio-processing", + "issue-creation", + "bug-report", + "feature-request", + "audio-debugging", + "code-management" + ], + "examples": [ + { + "inputJson": "{\"audioFilePath\":\"https://example.com/audio/clipping-sample.wav\",\"issueType\":\"bug\",\"description\":\"Audio clipping occurs at high volumes causing distortion.\",\"stepsToReproduce\":[\"Load audio file.\",\"Increase volume above threshold.\",\"Observe clipping distortion.\"],\"expectedBehavior\":\"Clean audio without distortion.\",\"actualBehavior\":\"Distorted audio with clipping artifacts.\",\"priority\":\"high\"}", + "description": "Creating a bug report for an audio clipping distortion issue in a sample audio file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Issue", + "context": null + } + }, + { + "name": "image-processing.analyzeEvent", + "description": "Analyzes images from event photographs or videos to detect and extract detailed information about participants, objects, and activities. Accepts image files or URLs as input along with optional metadata to provide an event context-based analysis. Outputs structured data including detected faces, emotions, actions, and object counts relevant to the event.", + "category": "image-processing", + "parameters": [ + { + "name": "imageInput", + "type": "string", + "description": "URL or Base64-encoded string of the event image to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageType", + "type": "string", + "description": "Format of the input image (jpeg, png, bmp). Default is jpeg.", + "required": false, + "defaultValue": "jpeg" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of event depicted in the image (e.g., wedding, conference, concert), used to tailor analysis parameters.", + "required": false, + "defaultValue": "" + }, + { + "name": "detectFaces", + "type": "boolean", + "description": "Flag to enable facial detection and recognition analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectObjects", + "type": "boolean", + "description": "Flag to enable detection and classification of objects relevant to the event.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectActions", + "type": "boolean", + "description": "Flag to enable action/activity recognition from the image.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxFaces", + "type": "number", + "description": "Maximum number of faces to detect and analyze in the image.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "JSON object containing detected faces with attributes (location, emotions, identity confidence), recognized objects with categories and counts, detected actions, and summary statistics tailored to the event context." + }, + "aiAgent": { + "useCase": "Use this tool to extract rich analytics from event imagery, such as evaluating crowd engagement, participant emotions, and event features from photos or video frames. Ideal for event organizers, marketing teams, or security to gain quick insights without manual image review.", + "limitations": "Cannot reliably recognize specific individuals without prior enrolled facial data. Accuracy depends on image quality and event type context. Not suitable for real-time video stream processing or highly crowded scenes beyond maxFaces limit.", + "examples": [ + "Analyze crowd emotions and face counts in a conference group photo.", + "Detect and count objects such as decorations and equipment in a wedding image.", + "Identify actions like dancing or applause from a concert photograph." + ] + }, + "tags": [ + "image-processing", + "event-analysis", + "facial-recognition", + "object-detection", + "activity-recognition", + "photo-analytics" + ], + "examples": [ + { + "inputJson": "{\"imageInput\":\"https://example.com/images/conference1.jpg\",\"eventType\":\"conference\",\"detectFaces\":true,\"detectObjects\":true,\"detectActions\":false,\"maxFaces\":20}", + "description": "Analyze a conference image URL to detect faces and objects with a higher maxFaces limit." + }, + { + "inputJson": "{\"imageInput\":\"/9j/4AAQSkZJRgABAQEASABIAAD...base64truncated...\",\"imageType\":\"png\",\"eventType\":\"wedding\",\"detectFaces\":true,\"detectObjects\":true,\"detectActions\":true}", + "description": "Analyze a Base64-encoded wedding image with facial, object, and action detection enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "audio-processing.createAPI", + "description": "Creates a customizable RESTful API endpoint to process audio files. Accepts audio input parameters such as file type, audio data, and desired processing actions (noise reduction, format conversion, volume normalization). Returns an API endpoint URL and documentation to enable integration with external systems for automated audio processing workflows.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioInputFormat", + "type": "string", + "description": "The expected audio input format for the API like 'wav', 'mp3', or 'flac'.", + "required": true, + "defaultValue": "wav" + }, + { + "name": "processingActions", + "type": "array", + "description": "List of processing actions to apply in sequence, e.g., ['noiseReduction', 'normalizeVolume', 'convertFormat'].", + "required": true, + "defaultValue": "[\"noiseReduction\"]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output audio format after processing, e.g., 'mp3', 'wav'.", + "required": true, + "defaultValue": "mp3" + }, + { + "name": "sampleRate", + "type": "number", + "description": "The sample rate (Hz) to resample audio to during processing, if applicable.", + "required": false, + "defaultValue": "44100" + }, + { + "name": "bitRate", + "type": "number", + "description": "The bit rate (kbps) for output audio encoding, relevant for compressed formats.", + "required": false, + "defaultValue": "128" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Whether to enable detailed logging of processing steps and API usage.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API endpoint URL, endpoint HTTP method, and usage documentation for integration." + }, + "aiAgent": { + "useCase": "Use this tool when an automated, reusable audio processing endpoint is needed to handle audio files programmatically, enabling integration into workflows such as batch editing, online audio services, or dynamic audio transformations without manual intervention.", + "limitations": "This tool generates the API interface and basic audio processing capabilities but does not handle extremely complex audio transformations requiring custom code beyond predefined processing actions.", + "examples": [ + "Create an API for noise reduction and converting wav audio files to mp3 format for batch processing.", + "Generate an API accepting mp3 files to normalize volume and output in 44100Hz wav format.", + "Build an audio processing API that accepts flac uploads and outputs compressed 128kbps mp3 with logging enabled." + ] + }, + "tags": [ + "audio", + "API", + "processing", + "automation", + "conversion", + "normalization", + "noise-reduction" + ], + "examples": [ + { + "inputJson": "{\"audioInputFormat\":\"wav\",\"processingActions\":[\"noiseReduction\",\"convertFormat\"],\"outputFormat\":\"mp3\",\"sampleRate\":44100,\"bitRate\":128,\"enableLogging\":false}", + "description": "Create an API to reduce noise and convert WAV files to MP3 output with standard audio quality." + }, + { + "inputJson": "{\"audioInputFormat\":\"mp3\",\"processingActions\":[\"normalizeVolume\"],\"outputFormat\":\"wav\",\"sampleRate\":44100,\"enableLogging\":true}", + "description": "Generate an API that normalizes volume for MP3 inputs and returns WAV files with logging enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "audio-processing.createCommit", + "description": "Creates a Git commit representing changes made to audio files or their metadata in a project repository. Accepts diff information or file changes (added, modified, deleted audio assets), commit message, author details, and produces a commit hash and metadata reflecting the audio-focused commit.", + "category": "audio-processing", + "parameters": [ + { + "name": "fileChanges", + "type": "array", + "description": "List of objects describing audio file changes, each including file path, change type (added/modified/deleted), and optional diff data or new audio content reference.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Descriptive commit message summarizing the audio changes included in this commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the individual authoring the commit.", + "required": false, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email of the commit author.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp for the commit time. Defaults to current time if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the commit hash string, the commit message, the author metadata, timestamp, and a summary of audio files affected." + }, + "aiAgent": { + "useCase": "Use this tool when automating version control commits specifically focused on audio files or assets within a project repository. It helps in creating structured, metadata-rich commits reflecting audio changes like edits, additions, or removals of audio tracks or metadata.", + "limitations": "This tool does not perform audio analysis or editing itself; it only packages and registers changes as version control commits. It requires proper diff or file change information as input.", + "examples": [ + "Create a commit for newly added audio samples with a message describing them.", + "Commit modifications to metadata in existing audio tracks with author information.", + "Register deletion of obsolete audio assets in a batch commit." + ] + }, + "tags": [ + "audio", + "version-control", + "commit", + "code-management", + "audio-assets", + "automation" + ], + "examples": [ + { + "inputJson": "{\"fileChanges\":[{\"filePath\":\"/sounds/effect1.wav\",\"changeType\":\"added\"}],\"commitMessage\":\"Add new sound effect 'effect1.wav'\",\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane@example.com\",\"timestamp\":\"2024-06-10T15:30:00Z\"}", + "description": "Creates a commit adding a new audio file named 'effect1.wav'." + }, + { + "inputJson": "{\"fileChanges\":[{\"filePath\":\"/music/theme.mp3\",\"changeType\":\"modified\"}],\"commitMessage\":\"Update background theme music with new mix\",\"authorName\":\"GameDev\",\"authorEmail\":\"gamedev@example.com\"}", + "description": "Commits modifications to an existing audio track with author metadata, timestamp defaults to now." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "audio-processing.createContract", + "description": "This tool accepts audio recordings containing spoken contract terms, processes the audio to transcribe and analyze the content using AI to extract key contractual clauses and structured information, then generates a formal, readable contract document as text output.", + "category": "audio-processing", + "parameters": [ + { + "name": "audioFileUrl", + "type": "string", + "description": "URL of the audio file containing the spoken contract terms.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language spoken in the audio recording (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "contractType", + "type": "string", + "description": "Type of contract to generate (e.g., 'NDA', 'Service Agreement').", + "required": false, + "defaultValue": "" + }, + { + "name": "includeClauses", + "type": "array", + "description": "Specific clauses to ensure inclusion in the generated contract.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format for the generated contract output ('text', 'pdf').", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract document text, metadata about extracted clauses, and a summary of the contract's key terms." + }, + "aiAgent": { + "useCase": "Use this tool when provided with an audio recording of contract negotiation or spoken contract terms, to automatically generate a formal contract document capturing those terms clearly and accurately. Ideal for speeding up contract drafting from voice discussions.", + "limitations": "Cannot replace legal advice or validate contract enforceability; accuracy depends on audio quality and clarity of spoken terms; may need human review before signing.", + "examples": [ + "Generate a service agreement from this recorded negotiation meeting.", + "Create a contract from the client describing terms orally in this audio file.", + "Produce a formal NDA based on the verbal agreement captured in this recording." + ] + }, + "tags": [ + "audio-processing", + "contract-generation", + "transcription", + "legal", + "document-creation", + "AI", + "audio-to-text" + ], + "examples": [ + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/audio/contract_discussion_en.mp3\",\"language\":\"en\",\"contractType\":\"Service Agreement\",\"includeClauses\":[\"confidentiality\",\"payment terms\"],\"outputFormat\":\"text\"}", + "description": "Create a service agreement contract in text from an English audio recording including confidentiality and payment clauses." + }, + { + "inputJson": "{\"audioFileUrl\":\"https://example.com/audio/nda_negotiation.mp3\",\"language\":\"en\",\"contractType\":\"NDA\",\"outputFormat\":\"pdf\"}", + "description": "Generate a NDA contract PDF from a recorded negotiation audio in English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "image-processing.analyzeSentence", + "description": "Analyzes an image containing a sentence to extract and interpret the textual content and its visual properties. Accepts an image file or URL with text, performs optical character recognition (OCR), and analyzes font style, size, orientation, and layout. Returns recognized text and detailed typography analysis.", + "category": "image-processing", + "parameters": [ + { + "name": "imageSource", + "type": "string", + "description": "URL or base64-encoded string of the image containing the sentence to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for OCR processing to improve text recognition accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "detectOrientation", + "type": "boolean", + "description": "Whether to detect and correct text orientation in the image before analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analyzeFontProperties", + "type": "boolean", + "description": "Whether to analyze font properties like style, size, and weight in the image.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted sentence text and typography details such as font style, size, weight, text orientation, and position within the image." + }, + "aiAgent": { + "useCase": "Use this tool when you have an image containing a sentence and need to extract the text along with detailed font and layout information for applications like document digitization, graphic analysis, or accessibility enhancements.", + "limitations": "This tool cannot understand semantic meaning beyond the extracted text or analyze sentences embedded in complex backgrounds with very low contrast or heavy distortions. It is limited to single or multiline sentence extraction in a reasonably clear image.", + "examples": [ + "Extract the sentence and font style from this scanned page image.", + "Analyze the text orientation and font size of the sentence in the image URL.", + "Perform OCR and font analysis on an image containing a sentence in French." + ] + }, + "tags": [ + "image-processing", + "OCR", + "text-extraction", + "typography", + "sentence-analysis" + ], + "examples": [ + { + "inputJson": "{\"imageSource\":\"https://example.com/sample-sentence-image.jpg\",\"language\":\"en\",\"detectOrientation\":true,\"analyzeFontProperties\":true}", + "description": "Analyze an English sentence image from a URL, detecting orientation and font properties." + }, + { + "inputJson": "{\"imageSource\":\"data:image/png;base64,iVBORw0KGgoAAAANS...\",\"language\":\"fr\",\"detectOrientation\":false,\"analyzeFontProperties\":true}", + "description": "Input base64 PNG image containing a French sentence for text extraction and font analysis without orientation correction." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "image-processing.analyzeLead", + "description": "Analyzes an image of a business lead document or business card to extract and evaluate key lead information such as contact details, company name, role, and lead quality indicators. Input accepts image files (JPEG, PNG) or base64 encoded images. Processing includes OCR text extraction, data parsing, and lead quality scoring based on configurable criteria. Output is structured lead data with confidence scores and quality metrics.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64 encoded image data or URL of the image to analyze for lead information.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "Image format of the input data, e.g., jpeg or png. Helps optimize processing.", + "required": false, + "defaultValue": "jpeg" + }, + { + "name": "language", + "type": "string", + "description": "Language of the text in the image for OCR accuracy, using ISO 639-1 code (e.g., 'en').", + "required": false, + "defaultValue": "en" + }, + { + "name": "qualityThreshold", + "type": "number", + "description": "Minimum confidence threshold (0-1) to consider extracted lead data as reliable.", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "extractFields", + "type": "array", + "description": "List of lead data fields to extract and analyze, such as ['name', 'phone', 'email', 'company', 'role'].", + "required": false, + "defaultValue": "[\"name\",\"phone\",\"email\",\"company\",\"role\"]" + }, + { + "name": "evaluateLeadQuality", + "type": "boolean", + "description": "Flag to enable scoring of the lead quality based on completeness and content relevance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing structured lead data extracted from the image, each with confidence scores, plus an overall lead quality score if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when given an image of a business card, lead form, or other lead-related documents, and you need to automatically extract structured contact information and evaluate lead quality for CRM or marketing use. It automates tedious manual data entry and preliminary lead filtering.", + "limitations": "The tool depends on the quality and clarity of the input image; poor image quality or unusual layouts may reduce accuracy. It does not perform full identity verification or detect fraudulent leads.", + "examples": [ + "Extract the contact details and company information from this scanned business card.", + "Analyze this image of a lead form to parse the lead's information and score its quality.", + "Given a photo of a conference attendee badge, extract all possible lead info for CRM entry." + ] + }, + "tags": [ + "image-analysis", + "business", + "lead-extraction", + "OCR", + "contact-info", + "crm", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\",\"imageFormat\":\"png\",\"language\":\"en\",\"extractFields\":[\"name\",\"email\",\"phone\"],\"evaluateLeadQuality\":true}", + "description": "Analyze a base64 encoded PNG image of a business card extracting name, email, phone, and scoring lead quality." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/images/lead_form.jpg\",\"imageFormat\":\"jpeg\",\"language\":\"en\",\"qualityThreshold\":0.8}", + "description": "Analyze a lead capture form image by URL with a high confidence threshold for data reliability." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "image-processing.analyzeAlert", + "description": "Analyzes security alert images such as screenshots or video frames capturing alert messages or warning icons. It identifies alert types, extracts relevant text via OCR, detects severity levels, and outputs a structured summary including alert classification, extracted text, and confidence scores. Input is an image file or URL.", + "category": "image-processing", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "URL of the image containing the security alert to analyze.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageBase64", + "type": "string", + "description": "Base64-encoded image data containing the alert. Used if imageUrl not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for OCR text recognition (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "detectSeverity", + "type": "boolean", + "description": "Flag to detect and classify alert severity (e.g., info, warning, critical).", + "required": false, + "defaultValue": "true" + }, + { + "name": "returnConfidenceScores", + "type": "boolean", + "description": "Whether to include confidence scores for detected fields in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the detected alert type, extracted text content, severity classification (if requested), and confidence scores for each detected element." + }, + "aiAgent": { + "useCase": "Use this tool when you have images containing security alerts—such as screenshots of alert popups, notification banners, or warning icons—and need to automatically interpret the alert type, extract displayed messages, and assess severity to inform security workflows or incident response automation.", + "limitations": "This tool cannot detect alerts that are not visually represented in the image, nor can it comprehend context beyond the visible alert content. Accuracy depends on image quality and clarity. It does not resolve semantic ambiguities beyond OCR and predefined alert categories.", + "examples": [ + "Analyze an image showing a Red Critical alert popup from a security monitoring dashboard.", + "Extract warning messages and severity levels from security alert screenshots to automate ticket classification.", + "Detect and extract text from an alert banner in a surveillance video frame for real-time security monitoring." + ] + }, + "tags": [ + "image-processing", + "security", + "alert-detection", + "OCR", + "severity-classification", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/alert_screenshot.png\",\"language\":\"en\",\"detectSeverity\":true,\"returnConfidenceScores\":true}", + "description": "Analyze a security alert screenshot from a dashboard URL to extract text and classify alert severity." + }, + { + "inputJson": "{\"imageBase64\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"language\":\"en\",\"detectSeverity\":false}", + "description": "Analyze base64 encoded image containing an alert but only extract text without severity classification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "image-processing.downloadReport", + "description": "Downloads a detailed report of the image processing analysis performed on one or multiple images. Accepts image analysis session identifiers or image URLs, compiles data such as detected features, edits history, and metadata, then generates a downloadable report in PDF or CSV format summarizing the image processing results.", + "category": "image-processing", + "parameters": [ + { + "name": "sessionIds", + "type": "array", + "description": "An array of image processing session identifiers to include in the report generation, required if imageUrls is empty.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "imageUrls", + "type": "array", + "description": "An array of image URLs to analyze and include in the report if sessionIds are not provided.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Format of the downloaded report file; supported values are 'pdf' or 'csv'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include image metadata such as resolution, color profile, and EXIF data in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeChangeHistory", + "type": "boolean", + "description": "Include the history of edits performed on the image(s) if available.", + "required": false, + "defaultValue": "true" + }, + { + "name": "saveToPath", + "type": "string", + "description": "Optional file path to save the downloaded report locally; if empty, returns file content as output.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report file content as a base64 string and its filename, or confirmation of saving if a path was provided." + }, + "aiAgent": { + "useCase": "Use this tool to retrieve a comprehensive report summarizing image processing analyses, edits, and metadata for auditing or documentation purposes. Ideal when needing a consolidated report of one or multiple images processed via sessions or direct URLs, delivered in standard document formats.", + "limitations": "Cannot generate reports without any valid session identifiers or image URLs. Does not perform image analysis itself, only compiles and downloads existing analysis data. Maximum file size limits may restrict very large reports.", + "examples": [ + "Download a PDF report of edits and metadata for image session IDs ['sess123', 'sess456'].", + "Generate a CSV report from a list of image URLs with metadata omitted.", + "Save a detailed PDF report locally for audit purposes using provided session identifiers." + ] + }, + "tags": [ + "image-processing", + "report-generation", + "download", + "pdf", + "csv", + "metadata", + "image-analysis" + ], + "examples": [ + { + "inputJson": "{\"sessionIds\":[\"sess123\",\"sess456\"],\"reportFormat\":\"pdf\",\"includeMetadata\":true,\"includeChangeHistory\":true}", + "description": "Download a detailed PDF report for two image processing sessions including metadata and edit history." + }, + { + "inputJson": "{\"imageUrls\":[\"https://example.com/image1.jpg\",\"https://example.com/image2.jpg\"],\"reportFormat\":\"csv\",\"includeMetadata\":false,\"includeChangeHistory\":false}", + "description": "Generate a CSV report from two image URLs without metadata or edit history." + }, + { + "inputJson": "{\"sessionIds\":[\"sess789\"],\"reportFormat\":\"pdf\",\"saveToPath\":\"/tmp/report.pdf\"}", + "description": "Save a PDF report locally for a single image processing session." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "image-processing.analyzeCSV", + "description": "This tool accepts a CSV file containing image metadata or numerical pixel data arranged in rows and columns. It processes the CSV to compute statistical analyses such as mean, median, standard deviation for numeric columns, identify data distribution patterns, and detect anomalies or outliers in the data. The output is a structured summary report in JSON format highlighting key statistics and insights derived from the CSV image-related data.", + "category": "image-processing", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV data as a string to be analyzed, expected to contain numerical or categorical data related to images.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate columns in the CSV data, default is comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the CSV contains a header row with column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analysisColumns", + "type": "array", + "description": "Optional list of column names or indices in the CSV to be specifically analyzed. If empty or omitted, all numerical columns are analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectOutliers", + "type": "boolean", + "description": "If true, the tool will detect and report outliers for numerical data columns.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics per column including count, mean, median, standard deviation, min, max, and detected outliers (if requested). Also includes overall data quality notes and any detected anomalies." + }, + "aiAgent": { + "useCase": "Use this tool when you have image-related datasets exported as CSV and want to quickly extract statistical insights and detect anomalies within the tabular data for further image processing or quality assurance. It's ideal for analyzing pixel intensity distributions, metadata trends, or experimental image data metrics without manual spreadsheet processing.", + "limitations": "This tool does not analyze the raw image files or visual contents themselves. It requires CSV-formatted tabular data. It cannot handle non-numeric imaging formats or perform image recognition or feature extraction.", + "examples": [ + "Analyze a CSV file containing pixel intensity values from multiple images to understand their distribution and identify any anomalies.", + "Provide a summary analysis of image metadata CSV export including date, camera settings, and focus metrics.", + "Detect outliers in numerical columns of a CSV containing processed image features for quality control." + ] + }, + "tags": [ + "analysis", + "CSV", + "image metadata", + "statistics", + "outlier detection", + "data quality" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"id,intensity,exposure\\n1,120,0.01\\n2,130,0.01\\n3,125,0.02\\n4,500,0.01\",\"delimiter\":\",\",\"hasHeader\":true,\"analysisColumns\":[\"intensity\"],\"detectOutliers\":true}", + "description": "Analyze intensity values to find summary statistics and identify the outlier value 500." + }, + { + "inputJson": "{\"csvContent\":\"frame,brightness,contrast\\n1,0.5,0.7\\n2,0.55,0.73\\n3,0.52,0.71\\n4,0.6,0.69\",\"delimiter\":\",\",\"hasHeader\":true,\"analysisColumns\":[],\"detectOutliers\":false}", + "description": "Perform a summary statistical analysis on all numeric columns (brightness and contrast)." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "image-processing.analyzeOrder", + "description": "Analyzes scanned or photographed order documents to extract key order information such as order number, customer name, item list, quantities, prices, and total amounts. Accepts images in common formats and uses OCR and layout analysis to output structured order data for downstream processing.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data of the order document to analyze (required)", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "Format of the image data, e.g. 'png', 'jpeg' (optional, default is 'jpeg')", + "required": false, + "defaultValue": "jpeg" + }, + { + "name": "language", + "type": "string", + "description": "Language code for OCR processing (e.g., 'en' for English) to improve text recognition accuracy (optional)", + "required": false, + "defaultValue": "en" + }, + { + "name": "extractLineItems", + "type": "boolean", + "description": "Flag to enable extraction of detailed line items from the order (optional, default true)", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured JSON object including extracted orderNumber, customerName, orderDate, lineItems array with product, quantity, price, and totalAmount" + }, + "aiAgent": { + "useCase": "Use this tool when you have an image of a business order and need to convert it into structured data automatically. It helps automate order processing, reduce manual data entry, and integrate with inventory or billing systems by extracting key information from scanned or photographed order documents.", + "limitations": "This tool is designed for reasonably clean and legible order documents; it may struggle with poor image quality, unusual layouts, or handwritten orders.", + "examples": [ + "Extract order data from a photographed purchase order received via email.", + "Parse scanned order forms to automate invoice creation.", + "Identify and verify customer and order details from faxed order documents." + ] + }, + "tags": [ + "image-processing", + "OCR", + "order-processing", + "document-analysis", + "automation", + "business" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"\",\"imageFormat\":\"jpeg\",\"language\":\"en\",\"extractLineItems\":true}", + "description": "Analyze a clear JPEG photo of an English-language purchase order with line items." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Order", + "context": null + } + }, + { + "name": "image-processing.analyzeNotification", + "description": "Analyzes images of notifications (such as push notifications or alert banners) to extract key information including text content, style, icon presence, and urgency indicators. Accepts an image file or URL and returns structured data about the notification's textual content, visual features, and inferred notification type.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or URL of the notification image to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code to guide text extraction and recognition (e.g., 'en', 'es').", + "required": false, + "defaultValue": "en" + }, + { + "name": "detectUrgency", + "type": "boolean", + "description": "Whether to analyze visual cues for urgency or priority indicators in the notification.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectIcons", + "type": "boolean", + "description": "Whether to detect presence of icons or logos within the notification image.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing extracted text, a list of detected icons, style features, layout metadata, and an urgency score indicating the notification priority." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze images of digital notifications to extract meaningful structured information such as alert text, icons, style, and urgency to programmatically understand or categorize notification content from screenshots or UI snapshots.", + "limitations": "Cannot guarantee perfect OCR accuracy on complex or stylized text. May not reliably identify all icon types or subtle visual cues if image quality is low or notifications are highly customized.", + "examples": [ + "Extract the message and urgency from this screenshot of a push notification.", + "Identify and list icons present in an alert banner image.", + "Analyze the notification image to retrieve the text and determine if it indicates a critical alert." + ] + }, + "tags": [ + "image-analysis", + "notification", + "OCR", + "UI", + "alert", + "visual-features", + "icon-detection" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"https://example.com/notification1.png\",\"language\":\"en\",\"detectUrgency\":true,\"detectIcons\":true}", + "description": "Analyze a notification image URL to extract text, detect icons, and assess urgency." + }, + { + "inputJson": "{\"imageData\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"language\":\"en\",\"detectUrgency\":false,\"detectIcons\":true}", + "description": "Analyze a Base64 encoded notification screenshot focusing on icon detection but not urgency." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "image-processing.uploadReport", + "description": "This tool accepts an image file along with an associated textual report describing image analysis results or annotations. It uploads both image data and report content to a centralized system for storage and further review. Input includes image binary or base64 string and a structured report object. Output confirms successful upload with a unique report ID and timestamp.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string or URL of the image file to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportContent", + "type": "object", + "description": "Structured object containing textual analysis, annotations, and metadata related to the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title of the report describing the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person or system submitting the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags to categorize or classify the image report.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string indicating when the image/report was created or analyzed.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a unique identifier for the uploaded report, confirmation status, and upload timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload an image along with a detailed, structured report describing analysis results or annotations. It supports scenarios where images and reports need to be archived or made accessible centrally for review or compliance. Ideal for quality inspection, medical imaging reports, or scientific image documentation workflows.", + "limitations": "Does not perform analysis of image content itself; requires pre-prepared reports. Image upload size or format limitations depend on underlying system constraints.", + "examples": [ + "Upload a microscope image with its laboratory report for patient diagnostics.", + "Submit a quality control image and inspection report from an assembly line.", + "Archive a satellite image together with its annotated environmental impact analysis." + ] + }, + "tags": [ + "image", + "upload", + "report", + "analysis", + "annotation", + "documentation", + "storage" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"reportContent\":{\"summary\":\"Image shows clear defect in sample\",\"annotations\":[{\"label\":\"defect\",\"coordinates\":[100,200,150,250]}]},\"reportTitle\":\"Sample Defect Inspection\",\"authorName\":\"QA Inspector\",\"tags\":[\"inspection\",\"defect\"],\"timestamp\":\"2024-06-01T10:30:00Z\"}", + "description": "Upload a quality control inspection image with a report highlighting defects." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/medical_images/image123.jpg\",\"reportContent\":{\"diagnosis\":\"No abnormalities detected\",\"notes\":\"Image taken from MRI scan on patient X\"},\"reportTitle\":\"MRI Scan Report\",\"authorName\":\"Dr. Smith\",\"tags\":[\"medical\",\"MRI\"],\"timestamp\":\"2024-05-30T14:00:00Z\"}", + "description": "Upload a medical MRI image along with diagnostic report for patient record." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "image-processing.sendMessage", + "description": "Sends a multimedia message containing images and optional text to specified recipients via supported messaging platforms. Accepts image files or URLs, message text, and recipient contact information, then delivers the composed message and returns the delivery status and message ID.", + "category": "image-processing", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "Array of image files (as base64 strings or URLs) to include in the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageText", + "type": "string", + "description": "Optional textual content to accompany the images.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipientContacts", + "type": "array", + "description": "Array of recipient identifiers such as phone numbers or email addresses to send the message to.", + "required": true, + "defaultValue": "" + }, + { + "name": "platform", + "type": "string", + "description": "The messaging platform to use (e.g., WhatsApp, SMS, Email).", + "required": false, + "defaultValue": "\"WhatsApp\"" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the message delivery (e.g., normal, high).", + "required": false, + "defaultValue": "\"normal\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of each message sent and unique message IDs for tracking purposes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to send images bundled with text as a message through various communication platforms. Useful for automating alerts, marketing campaigns, or image sharing directly from image processing workflows.", + "limitations": "Cannot handle synchronizing message reads or replies, nor can it modify images prior to sending. The tool depends on platform support and user credentials handled externally.", + "examples": [ + "Send product images with descriptions to a list of customers via WhatsApp.", + "Distribute event photos to participants by SMS with personalized text.", + "Send an image alert with critical information as a high priority message through Email." + ] + }, + "tags": [ + "image-processing", + "messaging", + "communication", + "multimedia", + "automation" + ], + "examples": [ + { + "inputJson": "{\"images\":[\"https://example.com/image1.jpg\",\"https://example.com/image2.jpg\"],\"messageText\":\"Here are the latest product photos.\",\"recipientContacts\":[\"+1234567890\",\"+0987654321\"],\"platform\":\"WhatsApp\",\"priority\":\"normal\"}", + "description": "Sends two images with a text message to two WhatsApp contacts." + }, + { + "inputJson": "{\"images\":[\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\"],\"messageText\":\"Event photos attached.\",\"recipientContacts\":[\"+1122334455\"],\"platform\":\"SMS\",\"priority\":\"high\"}", + "description": "Sends a base64 encoded image and high priority text message to one SMS recipient." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "image-processing.renderFile", + "description": "Renders an image file by applying optional transformations such as resizing, format conversion, and compression. Accepts common image file formats as input and outputs a processed image file according to specified parameters, enabling customized image rendering for various applications.", + "category": "image-processing", + "parameters": [ + { + "name": "inputFilePath", + "type": "string", + "description": "Local path or URL of the image file to be rendered.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format (e.g., 'jpeg', 'png', 'webp').", + "required": false, + "defaultValue": "jpeg" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Width in pixels to resize the image. If omitted, original width is preserved.", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Height in pixels to resize the image. If omitted, original height is preserved.", + "required": false, + "defaultValue": "" + }, + { + "name": "quality", + "type": "number", + "description": "Compression quality for lossy formats (1-100). Higher means better quality, larger file size.", + "required": false, + "defaultValue": "80" + }, + { + "name": "preserveAspectRatio", + "type": "boolean", + "description": "Whether to maintain the aspect ratio when resizing the image. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "Local path where the rendered image will be saved. If omitted, a default path is generated.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the path to the rendered image file and metadata such as final dimensions, file size, and format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to process or transform an existing image file by resizing, changing format, or adjusting quality before delivering, displaying, or saving it. Suitable for image optimization, rendering thumbnails, or preparing images for specific platforms.", + "limitations": "Does not support vector file rendering, complex image editing like filters or compositing, or animations. Limited to standard raster image files with basic transformations.", + "examples": [ + "Render an input PNG to a resized JPEG with 80 quality, maintaining aspect ratio.", + "Convert a TIFF image to a high-quality PNG without resizing.", + "Generate a resized webp thumbnail from a large JPEG image." + ] + }, + "tags": [ + "image-processing", + "render", + "file", + "resize", + "format-conversion", + "compression", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"inputFilePath\":\"/input/photos/picture.png\",\"outputFormat\":\"jpeg\",\"resizeWidth\":800,\"resizeHeight\":600,\"quality\":75,\"preserveAspectRatio\":true,\"outputFilePath\":\"/output/photos/picture_resized.jpeg\"}", + "description": "Resize and convert a PNG image to JPEG format with specific dimensions and quality, preserving aspect ratio." + }, + { + "inputJson": "{\"inputFilePath\":\"/images/raw_scan.tiff\",\"outputFormat\":\"png\",\"quality\":100,\"preserveAspectRatio\":true}", + "description": "Convert a TIFF scan to PNG format at maximum quality without resizing." + }, + { + "inputJson": "{\"inputFilePath\":\"https://example.com/image.jpg\",\"outputFormat\":\"webp\",\"resizeWidth\":200,\"preserveAspectRatio\":true}", + "description": "Download an image from a URL and generate a small webp thumbnail keeping aspect ratio." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "image-processing.renderDocument", + "description": "Renders a document image file into various output formats with options for resizing, cropping, and applying filters. Accepts input images in common formats (JPEG, PNG, TIFF), applies specified transformations, and outputs a processed image suitable for display or printing.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64-encoded image data or URL of the document image to render.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output image format: e.g., 'png', 'jpeg', 'tiff'.", + "required": true, + "defaultValue": "png" + }, + { + "name": "resizeWidth", + "type": "number", + "description": "Width in pixels to resize the output image. If omitted, original width is kept.", + "required": false, + "defaultValue": "" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "Height in pixels to resize the output image. If omitted, original height is kept.", + "required": false, + "defaultValue": "" + }, + { + "name": "cropArea", + "type": "object", + "description": "Cropping rectangle with properties: x (number), y (number), width (number), height (number).", + "required": false, + "defaultValue": "" + }, + { + "name": "applyGrayscale", + "type": "boolean", + "description": "Whether to convert the image to grayscale.", + "required": false, + "defaultValue": "false" + }, + { + "name": "applyContrastEnhancement", + "type": "boolean", + "description": "Whether to enhance the contrast of the image.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered document image encoded as a base64 string and the output format used." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw document images into standardized formats with optional processing such as resizing, cropping, and enhancing contrast or applying grayscale for improved readability or further analysis. Ideal for document image preprocessing before OCR or archival.", + "limitations": "Cannot perform OCR or recognize text content; image quality depends on original input resolution; complex image corrections like perspective warp or noise removal are not supported.", + "examples": [ + "Render a scanned document image from URL to a 1024x768 PNG grayscale image with enhanced contrast.", + "Crop a document photo to a specified rectangle and output as JPEG.", + "Resize an input TIFF document image to 600x800 retaining color." + ] + }, + "tags": [ + "image-processing", + "document", + "rendering", + "image-format", + "preprocessing", + "cropping", + "resizing", + "filters" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"https://example.com/scanned_doc.jpg\",\"outputFormat\":\"png\",\"resizeWidth\":1024,\"resizeHeight\":768,\"applyGrayscale\":true,\"applyContrastEnhancement\":true}", + "description": "Render a scanned document from URL to a 1024x768 PNG grayscale with enhanced contrast." + }, + { + "inputJson": "{\"inputImage\":\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD...\",\"outputFormat\":\"jpeg\",\"cropArea\":{\"x\":100,\"y\":50,\"width\":800,\"height\":1200}}", + "description": "Crop a base64 JPEG document image to the specified rectangle and output as JPEG." + }, + { + "inputJson": "{\"inputImage\":\"https://example.com/document.tiff\",\"outputFormat\":\"png\",\"resizeWidth\":600,\"resizeHeight\":800}", + "description": "Resize a TIFF document image from URL to 600x800 PNG." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "image-processing.draftEmail", + "description": "This tool accepts image data containing photos, scanned documents, or screenshots and analyzes visual content to automatically generate a draft email text. It extracts relevant information such as text via OCR, contextual cues, and key details from images to compose a clear, concise email body, including subject suggestions and recipients if detected. The output is a structured draft email ready for review and sending.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string or URL of the image to process for email drafting.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'fr') to use for OCR and email drafting.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxEmailLength", + "type": "number", + "description": "Maximum length in characters for the drafted email body to keep it concise.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeSubjectSuggestion", + "type": "boolean", + "description": "Whether to generate an email subject line suggestion based on image content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeRecipientDetection", + "type": "boolean", + "description": "Whether to attempt detecting recipient information (emails, names) from the image.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted email text, optional subject suggestion, and detected recipients." + }, + "aiAgent": { + "useCase": "Use this tool when an input image contains information (such as scanned notes, screenshots, or photos of documents) that needs to be converted into a draft email, automating time-consuming manual email composition. It is ideal for scenarios like extracting meeting notes, invoice queries, or image-based memos to generate professional email drafts for user review and sending.", + "limitations": "The tool cannot directly send emails or access email accounts. It relies on image quality for OCR accuracy and may not interpret ambiguous or highly artistic images correctly. It does not replace full email clients or handle complex email formatting.", + "examples": [ + "Draft an email from the attached photo of meeting notes to send to my team.", + "Generate a draft email based on this scanned document image requesting invoice clarification.", + "Create an email draft from this screenshot of a complaint with extracted recipient info if available." + ] + }, + "tags": [ + "image processing", + "email drafting", + "OCR", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"language\":\"en\",\"includeSubjectSuggestion\":true,\"includeRecipientDetection\":true}", + "description": "Draft an email using a base64 PNG image of meeting notes with subject and recipient detection enabled." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/scanned-invoice.jpg\",\"language\":\"en\",\"maxEmailLength\":500,\"includeSubjectSuggestion\":true}", + "description": "Create a concise email draft from a scanned invoice image URL requesting clarification, including a subject suggestion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Email", + "context": null + } + }, + { + "name": "image-processing.draftDocument", + "description": "This tool takes one or multiple images of documents as input, applies image processing techniques to enhance readability and layout, and drafts a clean, structured digital document output such as a PDF or a formatted image file. It supports optional cropping, deskewing, and noise reduction to produce professional digital drafts from scanned or photographed documents.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImages", + "type": "array", + "description": "Array of image file paths or base64 strings representing the document pages to process.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the drafted document, e.g., 'pdf' or 'png'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "applyDeskew", + "type": "boolean", + "description": "Whether to automatically correct skewed document images to straighten text lines.", + "required": false, + "defaultValue": "true" + }, + { + "name": "applyNoiseReduction", + "type": "boolean", + "description": "Whether to reduce visual noise or artifacts to improve document clarity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "applyCrop", + "type": "boolean", + "description": "Enable automatic detection and cropping of document edges to remove background.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxPageWidth", + "type": "number", + "description": "Maximum width in pixels of output document pages; scales images if larger.", + "required": false, + "defaultValue": "2480" + }, + { + "name": "maxPageHeight", + "type": "number", + "description": "Maximum height in pixels of output document pages; scales images if larger.", + "required": false, + "defaultValue": "3508" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted document file as base64 string and metadata such as page count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert raw scanned or photographed document images into clean, well-formatted digital documents for easier reading, archiving, or further processing, especially when inputs are noisy or skewed. Ideal for creating PDFs from multiple page images.", + "limitations": "The tool does not perform OCR or semantic text extraction, so it cannot convert images to editable text documents. It also does not handle handwriting recognition or complex graphic layouts reliably.", + "examples": [ + "Draft a multi-page PDF document from these scanned images of a contract.", + "Create a cleaned-up digital document from photos of a printed report with skew and shadows.", + "Generate a single PDF page with deskewing and noise reduction applied to this photo of a letter." + ] + }, + "tags": [ + "image-processing", + "document", + "drafting", + "pdf", + "enhancement", + "scanned-documents", + "deskew", + "crop" + ], + "examples": [ + { + "inputJson": "{\"inputImages\":[\"base64encodedImage1==\",\"base64encodedImage2==\"],\"outputFormat\":\"pdf\",\"applyDeskew\":true,\"applyNoiseReduction\":true,\"applyCrop\":true}", + "description": "Draft a multi-page PDF document from two base64 encoded scanned images with deskew, noise reduction, and cropping enabled." + }, + { + "inputJson": "{\"inputImages\":[\"/path/to/document1.jpg\"],\"outputFormat\":\"png\",\"applyDeskew\":false,\"applyNoiseReduction\":true,\"applyCrop\":false}", + "description": "Generate a cleaned PNG image from a single photo of a document with noise reduction only, no deskew or crop." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "image-processing.buildTest", + "description": "This tool builds automated image processing tests by accepting test parameters such as input images, processing steps, and expected output characteristics. It generates a structured test specification that can be used to validate image processing pipelines or algorithms by comparing actual outputs against expected results.", + "category": "image-processing", + "parameters": [ + { + "name": "testName", + "type": "string", + "description": "The name identifier for the test case being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputImagePaths", + "type": "array", + "description": "An array of file paths or URLs to input images for the test.", + "required": true, + "defaultValue": "" + }, + { + "name": "processingSteps", + "type": "array", + "description": "A list describing the ordered image processing operations to apply, e.g., resizing, filtering.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedOutputCharacteristics", + "type": "object", + "description": "Specifications describing expected output properties like dimensions, color profile, or checksum for validation.", + "required": true, + "defaultValue": "" + }, + { + "name": "toleranceThreshold", + "type": "number", + "description": "Numeric tolerance level for comparing actual output with expected output, useful for approximate matching.", + "required": false, + "defaultValue": "0.01" + }, + { + "name": "testDescription", + "type": "string", + "description": "Optional detailed description for the test case purpose and conditions.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured test specification object containing test name, input images, processing steps, expected output definitions, tolerance, and optional description. This object can be serialized for use in automated test frameworks." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically define reproducible image processing tests. It is helpful to build test cases that validate correctness and integrity of image transformations and algorithms by specifying inputs, processing steps, and output expectations.", + "limitations": "This tool does not execute the image processing steps or validate actual outputs. It only generates the test definition for later use by test runners or validation scripts.", + "examples": [ + "Create a test to verify that resizing an image preserves aspect ratio and expected dimensions.", + "Build a test case to check if a color filter changes pixels to expected color ranges within tolerance.", + "Define a test specifying expected checksum of an output image after applying a sequence of filters." + ] + }, + "tags": [ + "image-processing", + "test-automation", + "validation", + "image-analysis", + "software-testing" + ], + "examples": [ + { + "inputJson": "{\"testName\":\"resizeTest\",\"inputImagePaths\":[\"/images/sample1.png\"],\"processingSteps\":[{\"operation\":\"resize\",\"width\":100,\"height\":100}],\"expectedOutputCharacteristics\":{\"width\":100,\"height\":100,\"format\":\"png\"},\"toleranceThreshold\":0.005,\"testDescription\":\"Test to verify resizing maintains image dimensions as expected.\"}", + "description": "Defines a test to validate that resizing an image to 100x100 pixels produces an output image of those dimensions." + }, + { + "inputJson": "{\"testName\":\"grayscaleFilterTest\",\"inputImagePaths\":[\"input/photo.jpg\"],\"processingSteps\":[{\"operation\":\"grayscale\"}],\"expectedOutputCharacteristics\":{\"colorMode\":\"grayscale\"},\"toleranceThreshold\":0.01}", + "description": "Creates a test case to confirm applying a grayscale filter results in an image with grayscale color mode." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "image-processing.buildServer", + "description": "This tool helps set up and configure a dedicated image processing server infrastructure tailored for AI workloads. It accepts parameters defining hardware specs, image processing frameworks, and network access configurations. It automates installation of dependencies, deploys relevant services, and outputs server access details along with deployment status.", + "category": "image-processing", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "A unique name to identify the image processing server instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate for the server, impacting processing throughput.", + "required": true, + "defaultValue": "8" + }, + { + "name": "gpuEnabled", + "type": "boolean", + "description": "Flag to determine whether to install GPU support and relevant drivers for accelerated processing.", + "required": false, + "defaultValue": "true" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes dedicated to the server for in-memory image processing tasks.", + "required": true, + "defaultValue": "32" + }, + { + "name": "storageGB", + "type": "number", + "description": "Disk storage size in gigabytes for storing images and intermediate results.", + "required": true, + "defaultValue": "500" + }, + { + "name": "osType", + "type": "string", + "description": "Operating system to install on the server (e.g., Ubuntu 20.04, CentOS 8).", + "required": true, + "defaultValue": "Ubuntu 20.04" + }, + { + "name": "frameworks", + "type": "array", + "description": "List of image processing and AI frameworks to install (e.g., TensorFlow, OpenCV, PyTorch).", + "required": true, + "defaultValue": "[\"OpenCV\",\"TensorFlow\"]" + }, + { + "name": "networkAccess", + "type": "object", + "description": "Network configuration options including allowed IPs and port mappings.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Details about the setup server including connection info, installed frameworks, hardware specs, and deployment logs." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to provision a dedicated server optimized for image processing workloads, automating environment setup to quickly start processing large image datasets or running image analysis models.", + "limitations": "It does not handle scaling of existing servers, nor manage ongoing maintenance or auto-scaling. It cannot provision cloud resources directly but assumes an environment where server provisioning APIs are accessible.", + "examples": [ + "Build an image processing server with GPU support and TensorFlow installed.", + "Deploy a server named 'ImgProcNode1' with 16 CPU cores and 64GB RAM for large batch processing.", + "Setup a server using Ubuntu 20.04 with OpenCV and PyTorch frameworks without GPU support." + ] + }, + "tags": [ + "infrastructure", + "server", + "image-processing", + "deployment", + "automation", + "AI", + "GPU" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"ImgProcServer01\",\"cpuCores\":16,\"gpuEnabled\":true,\"memoryGB\":64,\"storageGB\":1000,\"osType\":\"Ubuntu 20.04\",\"frameworks\":[\"TensorFlow\",\"OpenCV\"],\"networkAccess\":{\"allowedIPs\":[\"192.168.1.0/24\"],\"ports\":[\"22\",\"8080\"]}}", + "description": "Provision a powerful Ubuntu server with GPU, TensorFlow and OpenCV installed, configured for network access only from local subnet." + }, + { + "inputJson": "{\"serverName\":\"BatchProcessNode\",\"cpuCores\":8,\"gpuEnabled\":false,\"memoryGB\":32,\"storageGB\":500,\"osType\":\"CentOS 8\",\"frameworks\":[\"OpenCV\"]}", + "description": "Create a CentOS server optimized for CPU image processing using OpenCV without GPU acceleration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "image-processing.buildCommit", + "description": "This tool accepts a staged collection of image edits and metadata representing changes to an image project, composes these changes into a structured commit object suitable for version control, and outputs a commit summary including hash, message, author info, and affected files. It bridges image editing workflows with code-like commit management.", + "category": "image-processing", + "parameters": [ + { + "name": "stagedEdits", + "type": "array", + "description": "Array of objects representing individual image edits or changes staged for commit, including details such as affected files and edit descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "commitMessage", + "type": "string", + "description": "A descriptive message summarizing the image changes being committed.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author making the commit.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the author for commit metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted string representing the time of the commit. If empty, current time is used.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a commit object containing a unique commitHash, commitMessage, author details, timestamp, and a list of changed files with their modification details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to consolidate a series of image modifications into a formal commit structure for version-controlled image projects or pipelines. It enables tracking, rollback, and collaboration similar to code versioning but applied to image processing workflows.", + "limitations": "This tool does not perform image editing itself or validate the content of edits; it only structures commit information. It also does not interface with actual version control systems but outputs commit data that can be used by such systems.", + "examples": [ + "Create a commit from a batch of edited images to save the current project state.", + "Generate a commit object summarizing user-applied filters and transformations for audit.", + "Build a commit metadata record for collaborative image project changes." + ] + }, + "tags": [ + "image-processing", + "version-control", + "commit", + "edit-tracking", + "metadata", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"stagedEdits\":[{\"file\":\"photo1.jpg\",\"change\":\"brightness adjusted +10%\"},{\"file\":\"photo2.jpg\",\"change\":\"added filter 'vintage'\"}],\"commitMessage\":\"Improve brightness and apply vintage filter to photos\",\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane.doe@example.com\",\"timestamp\":\"2024-06-01T12:00:00Z\"}", + "description": "Commit a set of edits adjusting brightness and adding a filter to a photo collection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "image-processing.generateCSV", + "description": "Generates a CSV file summarizing image metadata and analysis results. The tool accepts an array of images or image URLs, processes each to extract attributes like dimensions, format, color profile statistics, and optional object detection labels, then outputs a structured CSV string with these details for further analysis or reporting.", + "category": "image-processing", + "parameters": [ + { + "name": "imageSources", + "type": "array", + "description": "Array of image input sources, can be base64 strings, URLs, or file paths to process", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDimensions", + "type": "boolean", + "description": "Whether to include image width and height in the CSV output", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeFormat", + "type": "boolean", + "description": "Whether to include image format (e.g., JPEG, PNG) in the CSV output", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeColorProfile", + "type": "boolean", + "description": "Include basic color profile statistics like dominant color and average brightness", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectObjects", + "type": "boolean", + "description": "Enable object detection to list recognized objects and confidence scores in the CSV", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxObjectsPerImage", + "type": "number", + "description": "Maximum number of detected objects to include per image (only if detectObjects is true)", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object with a single field 'csvContent' containing the generated CSV as a string, with header row and subsequent rows per image" + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze a batch of images to extract structured metadata for cataloging, quality control, or machine learning dataset preparation. It converts heterogeneous image information into a standardized CSV format for easy integration with data pipelines or spreadsheet tools.", + "limitations": "Does not perform deep image content analysis beyond basic object detection. Requires input images accessible by URLs or valid encodings. Large batches may take significant processing time.", + "examples": [ + "Generate a CSV summary of uploaded images including dimensions and format.", + "Produce a CSV report listing dominant colors and detected objects from a set of image URLs.", + "Create CSV metadata output for images with object detection enabled limiting to top 3 detected labels per image." + ] + }, + "tags": [ + "image-processing", + "metadata-extraction", + "csv-generation", + "image-analysis", + "batch-processing" + ], + "examples": [ + { + "inputJson": "{\"imageSources\":[\"https://example.com/image1.jpg\",\"https://example.com/image2.png\"],\"includeDimensions\":true,\"includeFormat\":true,\"includeColorProfile\":true,\"detectObjects\":false}", + "description": "Generate CSV with dimensions, format, and color profile for two images by URL." + }, + { + "inputJson": "{\"imageSources\":[\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...\"],\"includeDimensions\":true,\"includeFormat\":true,\"includeColorProfile\":false,\"detectObjects\":true,\"maxObjectsPerImage\":3}", + "description": "Generate CSV for base64 image input including object detection limited to 3 objects per image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "image-processing.generateSentence", + "description": "Generates a natural language sentence describing the content, attributes, or context of an input image. Accepts an image (URL or base64) and parameters influencing description detail and style. Outputs a human-readable sentence summarizing key visual elements or themes in the image.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded image data or a publicly accessible image URL to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en', 'es') for the generated sentence.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "detailLevel", + "type": "string", + "description": "Level of descriptive detail: 'brief', 'normal', or 'detailed'.", + "required": false, + "defaultValue": "\"normal\"" + }, + { + "name": "focusArea", + "type": "object", + "description": "Optional bounding box to focus description on specific image region with keys: {x, y, width, height} as percentages (0-1).", + "required": false, + "defaultValue": "" + }, + { + "name": "style", + "type": "string", + "description": "Stylistic tone for the sentence such as 'formal', 'casual', or 'poetic'.", + "required": false, + "defaultValue": "\"formal\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated descriptive sentence and metadata about analysis confidence." + }, + "aiAgent": { + "useCase": "Use when needing an automatic textual summary or caption for an image to aid understanding, accessibility, or content indexing. Helpful in applications requiring quick human-readable descriptions of visual data without manual annotation.", + "limitations": "Cannot generate highly technical or domain-specific analysis beyond general or commonly recognized objects and scenes. May struggle with abstract art or ambiguous images. Accuracy depends on input clarity and quality.", + "examples": [ + "Generate a detailed English sentence describing the image at this URL.", + "Provide a brief, casual sentence describing the detected objects within the top-left quadrant of this image.", + "Produce a poetic-style sentence in Spanish about the given base64 image." + ] + }, + "tags": [ + "image-caption", + "description-generation", + "natural-language", + "image-analysis", + "accessibility", + "content-summarization" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"https://example.com/image1.jpg\",\"language\":\"en\",\"detailLevel\":\"normal\"}", + "description": "Generate a normal detail sentence describing a JPEG image from URL." + }, + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"language\":\"en\",\"detailLevel\":\"detailed\",\"focusArea\":{\"x\":0.1,\"y\":0.1,\"width\":0.3,\"height\":0.3}}", + "description": "Generate a detailed description focusing on the top-left corner of a base64 encoded image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Sentence", + "context": null + } + }, + { + "name": "image-processing.generateEvent", + "description": "Generates analytics event data by analyzing supplied images to detect specific visual features or occurrences, such as object presence, facial expressions, or environmental changes. The tool accepts image files or URLs and configuration parameters for events to detect, then outputs structured event records for downstream analytics.", + "category": "image-processing", + "parameters": [ + { + "name": "imageInput", + "type": "string", + "description": "URL or base64-encoded string of the input image to analyze for event generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventType", + "type": "string", + "description": "Type of event to detect within the image, such as 'faceDetection', 'objectRecognition', or 'sceneChange'.", + "required": true, + "defaultValue": "" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0 to 1) for detected events to be included in the output.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata (e.g., detection coordinates, timestamps) in output events.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of event records detected in the image, each with properties like event type, confidence score, and optional metadata such as coordinates or timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform image inputs into discrete analytic event records by detecting specific visual cues or features for monitoring, auditing, or behavioral analysis. Suitable for scenarios requiring automated extraction of event data from images.", + "limitations": "Cannot process videos or real-time streams; limited to single images per call. Accuracy of event detection depends on the underlying image analysis models and the quality of input images. Does not generate events unrelated to visual content.", + "examples": [ + "Generate face detection events from a photo to log attendance.", + "Detect presence of specific objects like vehicles in an image for security events.", + "Analyze an environmental image to detect scene changes or anomalies for monitoring." + ] + }, + "tags": [ + "image-processing", + "event-generation", + "analytics", + "object-detection", + "face-detection", + "visual-events" + ], + "examples": [ + { + "inputJson": "{\"imageInput\":\"https://example.com/image1.jpg\",\"eventType\":\"faceDetection\",\"confidenceThreshold\":0.8,\"includeMetadata\":true}", + "description": "Detect faces with confidence above 0.8 in a remote image and include detection metadata." + }, + { + "inputJson": "{\"imageInput\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...\",\"eventType\":\"objectRecognition\",\"confidenceThreshold\":0.6,\"includeMetadata\":false}", + "description": "Recognize objects in a base64-encoded image, including only events with confidence above 0.6, without extra metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "image-processing.createContainer", + "description": "Creates a visual container element within an image canvas by rendering a customizable rectangular or rounded rectangle shape with optional border, background color, opacity, and shadow effects. Accepts parameters defining size, position, style, and outputs an image layer or updated image including the container.", + "category": "image-processing", + "parameters": [ + { + "name": "canvasWidth", + "type": "number", + "description": "Width of the image canvas in pixels where the container will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "canvasHeight", + "type": "number", + "description": "Height of the image canvas in pixels where the container will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "positionX", + "type": "number", + "description": "X coordinate (pixels) of the container's top-left corner relative to the canvas.", + "required": true, + "defaultValue": "" + }, + { + "name": "positionY", + "type": "number", + "description": "Y coordinate (pixels) of the container's top-left corner relative to the canvas.", + "required": true, + "defaultValue": "" + }, + { + "name": "containerWidth", + "type": "number", + "description": "Width in pixels of the container rectangle.", + "required": true, + "defaultValue": "" + }, + { + "name": "containerHeight", + "type": "number", + "description": "Height in pixels of the container rectangle.", + "required": true, + "defaultValue": "" + }, + { + "name": "borderRadius", + "type": "number", + "description": "Radius of corners for rounding in pixels; 0 means sharp corners.", + "required": false, + "defaultValue": "0" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background fill color of the container in hex (#RRGGBB) or CSS color names.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "borderColor", + "type": "string", + "description": "Border color in hex or CSS color name; set empty string for no border.", + "required": false, + "defaultValue": "" + }, + { + "name": "borderWidth", + "type": "number", + "description": "Width of the container border in pixels; 0 means no border.", + "required": false, + "defaultValue": "0" + }, + { + "name": "opacity", + "type": "number", + "description": "Opacity level of the container from 0 (transparent) to 1 (opaque).", + "required": false, + "defaultValue": "1" + }, + { + "name": "shadow", + "type": "object", + "description": "Optional shadow effect with properties: offsetX, offsetY (pixels), blurRadius (pixels), color (string).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the updated image canvas as a base64 PNG data URL and metadata about the container position and style." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically add a styled container or panel element onto a blank or existing image canvas for UI mockups, infographics, or image composition. It helps visualize layout placeholders or highlight sections within images.", + "limitations": "This tool creates simple rectangular containers with style but does not support complex shapes, image clipping, or embedding other image content inside containers.", + "examples": [ + "Create a white rounded rectangle container at position (50,100) sized 300x150 on a 800x600 canvas.", + "Create a transparent container with a blue border and drop shadow at (10,10) on a 500x500 canvas.", + "Create a solid red rectangle container without border or shadow at (0,0) filling the entire 1024x768 canvas." + ] + }, + "tags": [ + "image", + "container", + "shape", + "graphics", + "canvas", + "visual", + "layout" + ], + "examples": [ + { + "inputJson": "{\"canvasWidth\":800,\"canvasHeight\":600,\"positionX\":50,\"positionY\":100,\"containerWidth\":300,\"containerHeight\":150,\"borderRadius\":15,\"backgroundColor\":\"#FFFFFF\",\"borderColor\":\"#000000\",\"borderWidth\":2,\"opacity\":0.9,\"shadow\":{\"offsetX\":5,\"offsetY\":5,\"blurRadius\":10,\"color\":\"rgba(0,0,0,0.3)\"}}", + "description": "Creates a white, rounded container with black border and shadow on an 800x600 canvas." + }, + { + "inputJson": "{\"canvasWidth\":500,\"canvasHeight\":500,\"positionX\":10,\"positionY\":10,\"containerWidth\":200,\"containerHeight\":100,\"borderRadius\":0,\"backgroundColor\":\"#0000FF\",\"borderColor\":\"#FFFFFF\",\"borderWidth\":3,\"opacity\":1,\"shadow\":{\"offsetX\":0,\"offsetY\":0,\"blurRadius\":0,\"color\":\"\"}}", + "description": "Creates a blue rectangular container with white border and no shadow on a 500x500 canvas." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "image-processing.createNotification", + "description": "Generates a visual notification image overlay with customizable text and styling on a given base image. Accepts an input image (URL or base64), notification message, position, background color, opacity, font size and color. Produces an image with the notification visually embedded, output as base64 or URL.", + "category": "image-processing", + "parameters": [ + { + "name": "baseImage", + "type": "string", + "description": "Base image input as a URL or base64 string to overlay the notification on.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Text content of the notification to display on the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "position", + "type": "string", + "description": "Position of the notification overlay on the image. Options: top-left, top-right, bottom-left, bottom-right, center.", + "required": false, + "defaultValue": "bottom-right" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the notification box in CSS color format (e.g., #000000 for black).", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "opacity", + "type": "number", + "description": "Opacity level of the notification background between 0 (transparent) and 1 (opaque).", + "required": false, + "defaultValue": "0.6" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size of the notification text in pixels.", + "required": false, + "defaultValue": "14" + }, + { + "name": "fontColor", + "type": "string", + "description": "CSS color string for the notification text color.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format. Supported: base64 or url. Determines if returns image data or an accessible URL.", + "required": false, + "defaultValue": "base64" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the notification image in the requested format, either as a base64 string or a URL." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create an image that visually presents a notification message directly on top of another image for use in alerts, onboarding tips, or UI previews. Ideal for generating visually integrated notification graphics programmatically.", + "limitations": "Cannot create interactive notifications or animations; generates static image overlays only. Quality depends on input image resolution and text length constraints.", + "examples": [ + "Overlay a warning message 'Update Required' at the bottom right of a user's profile image.", + "Generate a product image with a 'Sale 20% Off' notification at top-left corner.", + "Create a screenshot image with a centered notification 'Session Expired' in semi-transparent box." + ] + }, + "tags": [ + "image-processing", + "notification", + "overlay", + "visual-communication", + "image-editing" + ], + "examples": [ + { + "inputJson": "{\"baseImage\":\"https://example.com/image.jpg\",\"message\":\"Update Required\",\"position\":\"bottom-right\"}", + "description": "Overlay an 'Update Required' notification at the bottom right of the given image URL." + }, + { + "inputJson": "{\"baseImage\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"message\":\"Sale 20% Off\",\"position\":\"top-left\",\"backgroundColor\":\"#FF0000\",\"opacity\":0.7,\"fontSize\":18}", + "description": "Create a base64 output image with a red notification box on the top-left corner showing 'Sale 20% Off' with custom styling." + }, + { + "inputJson": "{\"baseImage\":\"https://example.com/screenshot.png\",\"message\":\"Session Expired\",\"position\":\"center\",\"fontColor\":\"#000000\",\"backgroundColor\":\"#FFFF00\",\"opacity\":0.8,\"outputFormat\":\"url\"}", + "description": "Generate a notification overlay centered on a screenshot image, returning a URL output with yellow background and black text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "image-processing.createEvent", + "description": "This tool accepts image or video input data and analyzes visual changes or user interactions within to create event records for analytics purposes. It processes frames to detect object movements, gestures, or scene changes and outputs structured event data (with timestamps and metadata) representing detected visual events.", + "category": "image-processing", + "parameters": [ + { + "name": "inputMedia", + "type": "string", + "description": "URL or base64 string of the input image or video to process for event detection", + "required": true, + "defaultValue": "" + }, + { + "name": "mediaType", + "type": "string", + "description": "Type of the input media, either 'image' or 'video'", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionMode", + "type": "string", + "description": "Mode of event detection: 'motion', 'gesture', or 'sceneChange'", + "required": true, + "defaultValue": "motion" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity level for detecting events, from 0.0 (low) to 1.0 (high)", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "maxEvents", + "type": "number", + "description": "Maximum number of events to detect before stopping analysis", + "required": false, + "defaultValue": "100" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include detailed metadata for each detected event", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured data object listing detected visual events with timestamps, event types, and optional metadata including position, confidence, and frame number" + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze visual inputs (images or videos) to automatically detect and record significant events such as motion detection, gestures, or scene changes for analytics or monitoring purposes. Ideal for generating event logs that feed into broader analytical pipelines or real-time monitoring.", + "limitations": "Does not perform audio/event detection outside visual domain; accuracy depends on input media quality; limited by predefined detection modes; not suited for complex semantic interpretation beyond specified visual event types.", + "examples": [ + "Detect motion events from a security camera video feed and get event timestamps.", + "Analyze a video of a user performing gestures and create event records for each detected gesture.", + "Process an image sequence to identify scene changes and generate corresponding events." + ] + }, + "tags": [ + "image-processing", + "event-detection", + "analytics", + "motion-detection", + "gesture-recognition", + "video-processing" + ], + "examples": [ + { + "inputJson": "{\"inputMedia\":\"https://example.com/camera_feed.mp4\",\"mediaType\":\"video\",\"detectionMode\":\"motion\",\"sensitivity\":0.7,\"maxEvents\":50,\"includeMetadata\":true}", + "description": "Detect motion events from a video feed URL with high sensitivity and return up to 50 events including metadata." + }, + { + "inputJson": "{\"inputMedia\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"mediaType\":\"image\",\"detectionMode\":\"sceneChange\",\"includeMetadata\":false}", + "description": "Analyze a single image for scene change triggers (useful for image sequences) without metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "image-processing.createAlert", + "description": "Creates a security alert by analyzing input images for anomalies or predefined threats. Accepts an image file, applies detection models or pattern matching, and produces a detailed alert report including threat classification, bounding boxes, confidence scores, and metadata.", + "category": "image-processing", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string of the input image to analyze for security threats.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionModel", + "type": "string", + "description": "Name or type of detection model to use, e.g., 'anomaly', 'weaponDetection', or 'faceRecognition'.", + "required": false, + "defaultValue": "anomaly" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence score (0-1) for detected threats to be included in the alert.", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "alertSeverity", + "type": "string", + "description": "Severity level to assign to alerts: 'low', 'medium', or 'high'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include additional metadata such as timestamp, image resolution, or device info in the alert report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An alert object containing threat classifications, bounding box coordinates, confidence scores, severity levels, and optional metadata describing the analysis results." + }, + "aiAgent": { + "useCase": "Use this tool when an AI system needs to monitor images for security risks such as unauthorized persons, weapons, or unusual anomalies in surveillance footage or uploaded images. Ideal for automated threat detection pipelines requiring actionable alerts with location and severity data.", + "limitations": "This tool cannot perform real-time video analysis, only single image inputs. Detection accuracy depends on the provided model type and input image quality. It does not remediate threats or perform forensic investigations.", + "examples": [ + "Analyze this uploaded security camera photo for potential weapon presence and generate a high severity alert.", + "Check the image for any unauthorized individuals and create an alert with bounding boxes around detected faces.", + "Scan this inspection image for anomalies and output a medium severity alert with confidence scores." + ] + }, + "tags": [ + "image-processing", + "security", + "alert-generation", + "anomaly-detection", + "threat-detection", + "surveillance", + "AI-analysis" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"\",\"detectionModel\":\"weaponDetection\",\"confidenceThreshold\":0.8,\"alertSeverity\":\"high\",\"includeMetadata\":true}", + "description": "Create a high severity alert detecting weapons in a surveillance image with metadata included." + }, + { + "inputJson": "{\"imageData\":\"\",\"detectionModel\":\"faceRecognition\",\"confidenceThreshold\":0.75,\"alertSeverity\":\"medium\",\"includeMetadata\":false}", + "description": "Detect unauthorized persons in an image and generate a medium severity alert without metadata." + }, + { + "inputJson": "{\"imageData\":\"\",\"detectionModel\":\"anomaly\",\"confidenceThreshold\":0.7,\"alertSeverity\":\"low\",\"includeMetadata\":true}", + "description": "Analyze an image for general anomalies and produce a low severity alert including metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "image-processing.createService", + "description": "Creates and configures an image processing service that supports operations like resizing, filtering, and format conversion. Accepts configuration parameters such as service name, supported operations, default output format, and access control settings. Returns service details including endpoint URL and status.", + "category": "image-processing", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name of the image processing service to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedOperations", + "type": "array", + "description": "List of image processing operations the service will support, e.g., resize, crop, filter, convertFormat.", + "required": true, + "defaultValue": "[\"resize\",\"filter\",\"convertFormat\"]" + }, + { + "name": "defaultOutputFormat", + "type": "string", + "description": "Default image output format like jpg, png, or webp if not specified by user.", + "required": false, + "defaultValue": "png" + }, + { + "name": "maxImageSizeMB", + "type": "number", + "description": "Maximum image file size in megabytes that the service will accept for processing.", + "required": false, + "defaultValue": "10" + }, + { + "name": "enableAuthentication", + "type": "boolean", + "description": "Flag to enable or disable authentication requirements for accessing the service.", + "required": false, + "defaultValue": "true" + }, + { + "name": "accessControlList", + "type": "array", + "description": "Optional list of user IDs or API keys allowed to access the service, used if authentication is enabled.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing details about the created service, including its unique ID, endpoint URL, list of supported operations, current status, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create a customizable image processing microservice endpoint for applications that require dynamic image editing capabilities, such as resizing, filtering, and format conversion. This allows scalable integration of image operations within workflows or pipelines.", + "limitations": "This tool does not perform image processing itself, only configures the service that will execute image processing. It cannot manage service scaling or high availability, which must be handled by the infrastructure separately.", + "examples": [ + "Create an image processing service named 'fastImageAPI' supporting resize and convertFormat operations with default output as jpg.", + "Set up a service with authentication disabled for public use supporting resize and filter.", + "Create a service limiting image input size to 5 MB and only allowing specific API keys access." + ] + }, + "tags": [ + "image-processing", + "service-creation", + "image-editing", + "api", + "configuration", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"fastImageAPI\",\"supportedOperations\":[\"resize\",\"convertFormat\"],\"defaultOutputFormat\":\"jpg\",\"maxImageSizeMB\":15,\"enableAuthentication\":true,\"accessControlList\":[\"user123\",\"user456\"]}", + "description": "Create a secure image processing service named fastImageAPI supporting resize and format conversion with JPG output and a 15 MB max image size." + }, + { + "inputJson": "{\"serviceName\":\"publicFilterService\",\"supportedOperations\":[\"filter\"],\"enableAuthentication\":false}", + "description": "Create a public image filtering service without authentication and default PNG output format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Service", + "context": null + } + }, + { + "name": "image-processing.createKey", + "description": "Generates a cryptographic key image embedded with visual security features from input parameters. Accepts key data as a string and configuration for style and visual complexity. Outputs a high-resolution PNG image representing the key visually for secure sharing or verification.", + "category": "image-processing", + "parameters": [ + { + "name": "keyData", + "type": "string", + "description": "The raw key string to visually encode into the image.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageSize", + "type": "number", + "description": "The width and height in pixels of the output square image.", + "required": false, + "defaultValue": "512" + }, + { + "name": "visualStyle", + "type": "string", + "description": "The artistic style to apply to the key image (e.g., 'abstract', 'geometric', 'matrix').", + "required": false, + "defaultValue": "geometric" + }, + { + "name": "complexityLevel", + "type": "number", + "description": "Level of visual complexity and detail, from 1 (simple) to 10 (highly detailed).", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to embed the current timestamp visually within the key image for added security.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing base64-encoded PNG image data of the generated key and metadata including size and style." + }, + "aiAgent": { + "useCase": "Use this tool when a system requires strong visual representation of cryptographic keys or security tokens, for example creating tamper-evident digital key cards or authentication visuals that combine cryptographic data with aesthetic security elements. Ideal for scenarios needing human-verifiable or visually secured keys.", + "limitations": "This tool only generates static visual key images and does not perform cryptographic key generation or management beyond encoding provided strings. It cannot verify or decrypt keys.", + "examples": [ + "Create a geometric style key image of size 1024 pixels embedding a given key string.", + "Generate a simple abstract key image without a timestamp for secure sharing.", + "Produce a highly detailed matrix style visual key image with the current timestamp included." + ] + }, + "tags": [ + "image-processing", + "security", + "visual-key", + "cryptography", + "image-generation", + "authentication", + "security-visualization" + ], + "examples": [ + { + "inputJson": "{\"keyData\":\"ABCD1234EFGH5678\",\"imageSize\":512,\"visualStyle\":\"geometric\",\"complexityLevel\":5,\"includeTimestamp\":true}", + "description": "Generate a medium complexity geometric key image embedding the key with timestamp." + }, + { + "inputJson": "{\"keyData\":\"SECRETKEY9876543210\",\"imageSize\":1024,\"visualStyle\":\"abstract\",\"complexityLevel\":3,\"includeTimestamp\":false}", + "description": "Create a large, less complex abstract style key image without including a timestamp." + }, + { + "inputJson": "{\"keyData\":\"ZXCVBNM123456QWER\",\"imageSize\":256,\"visualStyle\":\"matrix\",\"complexityLevel\":9,\"includeTimestamp\":true}", + "description": "Produce a small, highly detailed matrix style key image embedding key and timestamp." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "image-processing.createPullRequest", + "description": "Creates a code repository pull request that introduces or updates image processing code or related assets. Accepts a code branch name, target base branch, PR title, description, and optional image assets or code snippets. Processes these inputs to create a pull request in a supported version control system, returning PR metadata.", + "category": "image-processing", + "parameters": [ + { + "name": "repository", + "type": "string", + "description": "The name of the code repository where the pull request will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The name of the source branch containing image processing changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The target branch to merge changes into, e.g., 'main' or 'master'.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title of the pull request describing the change.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the pull request including purpose and related issue if any.", + "required": false, + "defaultValue": "" + }, + { + "name": "codeDiff", + "type": "string", + "description": "A code diff or patch content representing the image processing code changes.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageAssets", + "type": "array", + "description": "An array of image asset file paths or base64 strings to include or update as part of the PR.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of usernames or IDs to request review from.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing pull request metadata such as PR ID, URL, and status." + }, + "aiAgent": { + "useCase": "Use this tool when automating the creation of pull requests that introduce or modify image processing code, libraries, or related image assets in a code repository. Ideal for integrating AI-generated code changes or bulk image asset updates into development workflows.", + "limitations": "This tool does not perform code validation, build, or test the PR content. It requires pre-existing branches and repository access tokens. It is limited to repositories and VCS platforms integrated by the environment invoking the tool.", + "examples": [ + "Create a pull request to add a new image filter function in a given repo and notify reviewers.", + "Open a PR that updates multiple image asset files in an assets folder with base64 encoded content.", + "Submit a PR with a description referencing an issue and including code diffs that enhance image resizing." + ] + }, + "tags": [ + "code", + "image-processing", + "pull-request", + "automation", + "version-control", + "repository" + ], + "examples": [ + { + "inputJson": "{\"repository\":\"image-lib\",\"branchName\":\"feature/add-filter\",\"baseBranch\":\"main\",\"title\":\"Add new Gaussian Blur filter\",\"description\":\"Implemented a new image filter to apply Gaussian blur effect.\",\"codeDiff\":\"diff --git a/filter.js b/filter.js\\nnew file mode 100644\\nindex 0000000..e69de29\",\"imageAssets\":[\"assets/blur-sample.png\"],\"reviewers\":[\"alice\",\"bob\"]}", + "description": "Creating a pull request adding a new Gaussian blur image filter with code changes and a sample image asset." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "image-processing.createLead", + "description": "This tool analyzes an input image containing business card(s) or lead info and extracts structured lead data including name, company, title, phone, email, and address. It accepts an image file or URL, processes OCR and data parsing, then outputs a JSON lead object. Useful for converting visual contact info into actionable digital leads.", + "category": "image-processing", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "URL of the image file containing the business card or lead information to process.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageBase64", + "type": "string", + "description": "Base64 encoded image data for the business card or lead image. Used if imageUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "languageHints", + "type": "array", + "description": "Optional array of language codes to assist OCR accuracy (e.g., ['en','es']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectMultipleLeads", + "type": "boolean", + "description": "If true, attempts to detect and extract multiple leads from an image containing multiple business cards.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "JSON object containing extracted lead information such as name, company, title, phone, email, and address. If multiple leads detected, an array of such lead objects is returned." + }, + "aiAgent": { + "useCase": "Use this tool when you have an image containing business card(s) or visible textual lead info and you need to extract that data into structured digital lead objects. Ideal for digitizing offline business contacts from images taken by phone or scanner. It automates lead creation from images for CRM imports.", + "limitations": "The tool relies on OCR quality and may produce errors with poor image resolution, complex layouts, or handwriting. It cannot verify the accuracy or validity of extracted leads or handle non-Latin scripts well without appropriate language hints.", + "examples": [ + "Extract a lead's contact info from a smartphone photo of a business card.", + "Parse multiple leads from an image showing a table with several business cards.", + "Convert a scanned image of a printed flyer to structured lead contact data." + ] + }, + "tags": [ + "image-processing", + "ocr", + "lead-extraction", + "business-card", + "contact-info", + "digital-leads", + "crm" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/images/business_card.jpg\"}", + "description": "Extract lead data from a single business card image URL." + }, + { + "inputJson": "{\"imageBase64\":\"iVBORw0KGgoAAAANSUhEUgAA...\"}", + "description": "Extract lead data from a Base64 encoded business card image." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/images/multiple_cards.jpg\",\"detectMultipleLeads\":true}", + "description": "Extract multiple leads from an image containing several business cards." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "image-processing.createCSV", + "description": "This tool accepts one or more images as input, extracts structured data such as color histograms, object detection counts, or pixel statistics from each image, and generates a CSV file summarizing these metrics per image. The output CSV facilitates quantitative image analysis and comparison.", + "category": "image-processing", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "Array of image files (URLs or base64 strings) to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of image metrics to extract. Options: 'colorHistogram', 'objectCount', 'pixelStats'", + "required": true, + "defaultValue": "[\"colorHistogram\"]" + }, + { + "name": "objectClasses", + "type": "array", + "description": "List of object classes to detect when 'objectCount' metric is enabled; ignored otherwise", + "required": false, + "defaultValue": "[]" + }, + { + "name": "colorHistogramBins", + "type": "number", + "description": "Number of bins per color channel for color histogram (only for 'colorHistogram' metric)", + "required": false, + "defaultValue": "8" + }, + { + "name": "includeImageName", + "type": "boolean", + "description": "Whether to include the image filename or identifier in the CSV output", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated CSV content as a string and a summary of metrics computed per image." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quantitatively analyze multiple images by extracting structured visual data like color distribution, counts of detected objects, or pixel statistics, and compile them into a CSV file for downstream data analysis or reporting.", + "limitations": "This tool does not perform image enhancement or complex image annotation beyond basic object counts. Object detection assumes pre-defined classes and doesn't provide bounding boxes or pixel-wise masks.", + "examples": [ + "Generate a CSV summarizing color histograms and object counts for a folder of wildlife photos.", + "Create a CSV file reporting pixel brightness stats for microscopy images for comparative analysis." + ] + }, + "tags": [ + "image-processing", + "data-extraction", + "CSV", + "color-histogram", + "object-detection" + ], + "examples": [ + { + "inputJson": "{\"images\":[\"https://example.com/image1.jpg\",\"https://example.com/image2.jpg\"],\"metrics\":[\"colorHistogram\",\"objectCount\"],\"objectClasses\":[\"cat\",\"dog\"],\"colorHistogramBins\":16,\"includeImageName\":true}", + "description": "Extract 16-bin color histograms and count cats and dogs in two images, including image names in the CSV." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "image-processing.createBranch", + "description": "Creates a visual branch overlay on a given image, simulating tree branches or vein-like structures. Accepts an input image and branch parameters such as position, length, angle, thickness, and color. Outputs the modified image with the overlaid branches, useful for artistic effects, diagrams, or biological illustration overlays.", + "category": "image-processing", + "parameters": [ + { + "name": "inputImage", + "type": "string", + "description": "Base64-encoded string or URL of the input image to process.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchCount", + "type": "number", + "description": "Number of branches to create and overlay on the image.", + "required": true, + "defaultValue": "5" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length in pixels for each created branch.", + "required": false, + "defaultValue": "100" + }, + { + "name": "minAngle", + "type": "number", + "description": "Minimum branching angle in degrees.", + "required": false, + "defaultValue": "15" + }, + { + "name": "maxAngle", + "type": "number", + "description": "Maximum branching angle in degrees.", + "required": false, + "defaultValue": "45" + }, + { + "name": "thickness", + "type": "number", + "description": "Thickness in pixels of the branch lines.", + "required": false, + "defaultValue": "3" + }, + { + "name": "color", + "type": "string", + "description": "Color of the branches in hex format (e.g., '#005500').", + "required": false, + "defaultValue": "#006400" + }, + { + "name": "randomSeed", + "type": "number", + "description": "Seed for random number generator to ensure reproducibility of generated branches.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the processed image with branches overlay, encoded as a base64 string under 'outputImage'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to augment an image with visually simulated branch-like overlays for artistic, scientific illustration, or graphical annotation purposes. Especially useful when generating organic patterns or vein-like structures on existing images without manual drawing.", + "limitations": "This tool does not generate realistic 3D tree structures or complex fractal vegetation models. It creates 2D branch overlays and does not edit the original image content beyond adding these graphics.", + "examples": [ + "Add 10 green branches of varying angles to a nature photo.", + "Create 3 thick red branches on a plain white background image.", + "Overlay 5 branches with a max length of 50 pixels on a medical leaf scan image." + ] + }, + "tags": [ + "image-processing", + "overlay", + "branch", + "artistic", + "illustration", + "biological", + "annotation", + "graphics" + ], + "examples": [ + { + "inputJson": "{\"inputImage\":\"https://example.com/nature.jpg\",\"branchCount\":10,\"maxLength\":80,\"minAngle\":10,\"maxAngle\":60,\"thickness\":2,\"color\":\"#228B22\"}", + "description": "Add 10 green branches of varying angles to a nature photo." + }, + { + "inputJson": "{\"inputImage\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"branchCount\":3,\"thickness\":5,\"color\":\"#FF0000\"}", + "description": "Create 3 thick red branches on a plain white background image." + }, + { + "inputJson": "{\"inputImage\":\"https://example.com/leaf_scan.png\",\"branchCount\":5,\"maxLength\":50,\"color\":\"#556B2F\"}", + "description": "Overlay 5 branches with a max length of 50 pixels on a medical leaf scan image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "image-processing.createEndpoint", + "description": "This tool generates a REST API endpoint for image processing operations based on given configuration parameters. It accepts specifications such as endpoint path, allowed HTTP methods, processing options (e.g., resize, filter), and output format. The tool produces code snippets or configuration objects defining the endpoint to be integrated within a server or cloud function.", + "category": "image-processing", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path where the image processing endpoint will be accessible (e.g., '/process-image').", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethods", + "type": "array", + "description": "An array of allowed HTTP methods for the endpoint (e.g., ['POST']).", + "required": true, + "defaultValue": "[\"POST\"]" + }, + { + "name": "processingOptions", + "type": "object", + "description": "Configuration object specifying image processing actions such as resize dimensions, filters, and formats.", + "required": true, + "defaultValue": "" + }, + { + "name": "responseFormat", + "type": "string", + "description": "The format of the processed image response, such as 'jpeg', 'png', or 'json' for metadata.", + "required": false, + "defaultValue": "jpeg" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "If true, the generated endpoint will include authentication requirements, such as token validation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated endpoint code snippet or configuration, including endpoint path, methods, and processing logic details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create new REST API endpoints for image processing within a web server or cloud service. It automates generating endpoint code/configuration from parameters describing processing needs, accelerating integration of image processing capabilities.", + "limitations": "This tool generates code or configuration skeletons but does not deploy or run the endpoints automatically. It assumes the user adds generated code to a compatible server environment. It does not support real-time streaming or advanced security policies beyond simple authentication flags.", + "examples": [ + "Create a POST endpoint '/resize-image' that resizes images to 800x600 and outputs jpeg format.", + "Generate an authenticated endpoint '/filter-image' that applies a sepia filter and returns the image in PNG format.", + "Create a GET endpoint '/image-info' that returns image metadata as JSON without processing." + ] + }, + "tags": [ + "image processing", + "API endpoint", + "REST", + "code generation", + "server integration" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/resize-image\",\"httpMethods\":[\"POST\"],\"processingOptions\":{\"resize\":{\"width\":800,\"height\":600}},\"responseFormat\":\"jpeg\",\"authenticationRequired\":false}", + "description": "Create a POST endpoint '/resize-image' to resize images to 800x600 pixels with JPEG output and no authentication." + }, + { + "inputJson": "{\"endpointPath\":\"/filter-image\",\"httpMethods\":[\"POST\"],\"processingOptions\":{\"filter\":\"sepia\"},\"responseFormat\":\"png\",\"authenticationRequired\":true}", + "description": "Create an authenticated POST endpoint '/filter-image' applying a sepia filter returning PNG images." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "image-processing.createConfig", + "description": "Generates a JSON configuration object for image processing pipelines based on input parameters such as resizing, filters, and output format. Accepts options defining image adjustments and outputs a structured config to be used by image processing tools or scripts.", + "category": "image-processing", + "parameters": [ + { + "name": "resizeWidth", + "type": "number", + "description": "The target width in pixels to resize images to. Set 0 to skip resizing width.", + "required": false, + "defaultValue": "0" + }, + { + "name": "resizeHeight", + "type": "number", + "description": "The target height in pixels to resize images to. Set 0 to skip resizing height.", + "required": false, + "defaultValue": "0" + }, + { + "name": "applyFilters", + "type": "array", + "description": "List of filters to apply to the image, e.g., ['grayscale', 'blur']. Empty array means no filters.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "compressionQuality", + "type": "number", + "description": "Compression quality from 0 (lowest) to 100 (highest) for lossy formats like JPEG.", + "required": false, + "defaultValue": "80" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format, e.g., 'jpeg', 'png', or 'webp'.", + "required": true, + "defaultValue": "jpeg" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata (EXIF, IPTC) in the output image.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON configuration object detailing the parameters for image processing, including resizing, filters, compression, format, and metadata options." + }, + "aiAgent": { + "useCase": "Use this tool when generating configuration files or objects for automated image processing workflows, where parameters like resize dimensions, filters, output format, and compression need to be specified programmatically. It helps prepare concise configs for image handling tools or libraries.", + "limitations": "This tool only generates configuration objects and does not perform actual image processing. It does not validate whether the given filter names are supported by specific libraries.", + "examples": [ + "Create an image processing config to resize to 800x600 pixels, apply grayscale filter, and output as PNG with metadata included.", + "Generate a config for no resizing, apply blur and sharpen filters, compress at quality 75 and output as WebP format.", + "Create a JPEG output config with default resizing (keep original size), no filters, quality 90, and exclude metadata." + ] + }, + "tags": [ + "image-processing", + "configuration", + "resize", + "filters", + "compression", + "output-format", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"resizeWidth\":800,\"resizeHeight\":600,\"applyFilters\":[\"grayscale\"],\"compressionQuality\":85,\"outputFormat\":\"png\",\"includeMetadata\":true}", + "description": "Config to resize image to 800x600, apply grayscale filter, save as PNG including metadata with moderate compression." + }, + { + "inputJson": "{\"resizeWidth\":0,\"resizeHeight\":0,\"applyFilters\":[\"blur\",\"sharpen\"],\"compressionQuality\":75,\"outputFormat\":\"webp\",\"includeMetadata\":false}", + "description": "Config with no resizing, apply blur and sharpen filters, output WebP with quality 75 and exclude metadata." + }, + { + "inputJson": "{\"resizeWidth\":0,\"resizeHeight\":0,\"applyFilters\":[],\"compressionQuality\":90,\"outputFormat\":\"jpeg\",\"includeMetadata\":false}", + "description": "Config to output JPEG with default size, no filters, compression quality 90 and no metadata included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "image-processing.createModule", + "description": "Generates a reusable JavaScript module that applies configurable image processing operations to images. Accepts a list of operations and parameters, creates a clean, well-documented module script implementing those operations, and returns the code as a string for direct integration in web or Node.js projects.", + "category": "image-processing", + "parameters": [ + { + "name": "operations", + "type": "array", + "description": "Array of image processing operations to include in the module, each specified by name and its parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "moduleName", + "type": "string", + "description": "The name to assign to the generated JavaScript module.", + "required": false, + "defaultValue": "\"ImageProcessor\"" + }, + { + "name": "includeTests", + "type": "boolean", + "description": "Whether to generate basic unit test code for the module.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The JavaScript module format, e.g., 'ES6', 'CommonJS'.", + "required": false, + "defaultValue": "\"ES6\"" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the source code string of the generated module under 'code' and optionally test code under 'testCode' if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a reusable JavaScript image processing module customized for specific operations. It helps automate the creation of clean, structured code for projects that require custom image manipulation pipelines.", + "limitations": "It cannot execute image processing itself or handle binary image data. It generates code only and does not validate the correctness of logic beyond basic syntax and provided parameters.", + "examples": [ + "Create a module that applies grayscale and blur effects.", + "Generate a module named 'PhotoFilter' supporting contrast and brightness adjustments with test cases.", + "Produce a CommonJS format module that resizes images and exports functions accordingly." + ] + }, + "tags": [ + "image-processing", + "code-generation", + "javascript", + "module", + "automation", + "image", + "programming" + ], + "examples": [ + { + "inputJson": "{\"operations\":[{\"name\":\"grayscale\",\"params\":{}},{\"name\":\"blur\",\"params\":{\"radius\":5}}],\"moduleName\":\"PhotoEffects\",\"includeTests\":true,\"outputFormat\":\"ES6\"}", + "description": "Generate an ES6 module named 'PhotoEffects' implementing grayscale and blur effects with radius 5, including test code." + }, + { + "inputJson": "{\"operations\":[{\"name\":\"resize\",\"params\":{\"width\":800,\"height\":600}}],\"moduleName\":\"ResizeModule\",\"includeTests\":false,\"outputFormat\":\"CommonJS\"}", + "description": "Generate a CommonJS module named 'ResizeModule' that resizes images to 800x600 without test code." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Module", + "context": null + } + }, + { + "name": "notifications.analyzeLink", + "description": "Analyzes a provided URL link to extract metadata such as page title, description, domain reputation, and safety indicators. Accepts a URL string as input, performs content retrieval and analysis using web scraping and security APIs, then returns a summary including link safety score, metadata, and potential alert levels.", + "category": "notifications", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL link to analyze for metadata and safety.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSafetyCheck", + "type": "boolean", + "description": "Whether to perform a safety and reputation check on the link domain.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for retrieving and analyzing the link.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing link metadata including page title, description, domain, link safety score (0 to 1), and alert levels if any suspicious indicators are found." + }, + "aiAgent": { + "useCase": "This tool should be used when needing to evaluate and notify about the safety or relevance of URL links in notifications, alerts, or messages. For example, an AI agent can use it to scan links before forwarding alerts to users, reducing phishing risks or flagging suspicious domains.", + "limitations": "This tool may not accurately analyze dynamically generated or heavily scripted web pages. Safety checks depend on third-party reputation databases and may not reflect real-time threats. It cannot execute or interact with page scripts.", + "examples": [ + "Analyze this suspicious link for safety and metadata before sending a notification: https://example.com/phishing", + "Check the URL https://news.example.com to extract its title and assess its reputation.", + "Evaluate links in an email to flag any potentially harmful URLs before alerting the user." + ] + }, + "tags": [ + "notifications", + "link analysis", + "safety check", + "metadata extraction", + "security", + "URL" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://www.example.com\",\"includeSafetyCheck\":true}", + "description": "Analyze a standard URL including safety and metadata extraction." + }, + { + "inputJson": "{\"url\":\"http://malicious-site.test\",\"includeSafetyCheck\":true,\"timeoutSeconds\":5}", + "description": "Analyze a potentially malicious URL with a shorter timeout parameter." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "notifications.analyzeRisk", + "description": "Analyzes security risk data from incoming alert notifications to assess severity, identify threat sources, and prioritize response actions. Accepts an array of alert objects with metadata, applies risk scoring algorithms, and outputs a detailed risk assessment report with risk levels, affected assets, and recommended mitigation steps.", + "category": "notifications", + "parameters": [ + { + "name": "alerts", + "type": "array", + "description": "Array of alert objects containing security event details such as timestamp, alert type, source IP, severity, and affected assets.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "Numeric threshold (0-100) above which risks are flagged as critical in the analysis.", + "required": false, + "defaultValue": "70" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include mitigation and response recommendations in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeWindowHours", + "type": "number", + "description": "Time window in hours to aggregate and analyze incoming alerts for cumulative risk assessment.", + "required": false, + "defaultValue": "24" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall risk score, detailed list of identified risks with severity levels, associated alerts, affected assets, and optional remediation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to synthesize multiple security notifications into a risk evaluation to inform escalation decisions or automate alert prioritization. Useful for continuous monitoring systems that must highlight urgent threats among many alerts.", + "limitations": "This tool analyzes risk based on provided alert data and heuristics, but does not replace full manual security audits or real-time threat hunting. It cannot prevent attacks or access external threat intelligence beyond input.", + "examples": [ + "Analyze the last 24 hours of alerts to identify critical risks", + "Provide a risk report including mitigation steps for recent intrusion alerts", + "Aggregate multiple notification alerts and determine if urgent action is required" + ] + }, + "tags": [ + "notifications", + "risk analysis", + "security", + "alert prioritization", + "threat assessment", + "cybersecurity" + ], + "examples": [ + { + "inputJson": "{\"alerts\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"alertType\":\"unauthorized_access\",\"sourceIp\":\"192.168.1.15\",\"severity\":85,\"affectedAssets\":[\"server1\"]},{\"timestamp\":\"2024-06-01T12:05:00Z\",\"alertType\":\"malware_detection\",\"sourceIp\":\"10.0.0.2\",\"severity\":90,\"affectedAssets\":[\"workstation12\"]}],\"riskThreshold\":75,\"includeRecommendations\":true,\"timeWindowHours\":24}", + "description": "Analyze a set of alerts for last 24 hours, flagging risks above 75 and including mitigation recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "notifications.analyzeOpportunity", + "description": "Analyzes a business opportunity to assess its potential impact and urgency by evaluating provided opportunity details, risk factors, and stakeholder priorities. Outputs a summary report indicating the opportunity's opportunity score, key risks, recommended alert level, and suggested notification channels.", + "category": "notifications", + "parameters": [ + { + "name": "opportunityDetails", + "type": "object", + "description": "Structured data detailing the opportunity, including description, expected benefits, timelines, and involved departments.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskFactors", + "type": "array", + "description": "List of risk factor objects classifying potential risks with impact and likelihood parameters related to the opportunity.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "stakeholderPriorities", + "type": "object", + "description": "Mapping of stakeholder roles to their priority levels and interests concerning the opportunity.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "notificationChannels", + "type": "array", + "description": "Preferred channels (e.g., email, SMS, slack) through which alerts should be sent if the opportunity warrants immediate notification.", + "required": false, + "defaultValue": "[\"email\"]" + }, + { + "name": "urgentThreshold", + "type": "number", + "description": "Score threshold above which the opportunity is flagged as urgent and triggers immediate notification.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An analysis report summarizing the opportunity score, risk assessment, recommended alert level (info, warning, urgent), and suggested notification channels based on prioritization and urgency." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate a business opportunity's potential benefits and risks to decide whether and how to notify stakeholders. Especially useful for product managers or business analysts automating opportunity monitoring and alerting workflows.", + "limitations": "Does not interface directly with external notification systems to send alerts; focuses on analysis and recommendation output. Requires well-structured input data to produce meaningful results.", + "examples": [ + "Analyze this opportunity's details and risk factors, then determine if an urgent notification is needed.", + "Assess the new product launch chance and suggest appropriate alert level and notification channels.", + "Evaluate the potential partnership deal and produce a summary score and recommended alerts based on stakeholder priorities." + ] + }, + "tags": [ + "notifications", + "analysis", + "business", + "opportunity", + "risk assessment", + "alerting", + "stakeholders" + ], + "examples": [ + { + "inputJson": "{\"opportunityDetails\":{\"description\":\"Launch of new AI-powered analytics tool\",\"expectedBenefits\":\"Increase market share by 10%\",\"timeline\":\"Q4 2024\",\"departmentsInvolved\":[\"Product\",\"Marketing\"]},\"riskFactors\":[{\"type\":\"market\",\"impact\":7,\"likelihood\":6},{\"type\":\"technical\",\"impact\":5,\"likelihood\":4}],\"stakeholderPriorities\":{\"CEO\":10,\"ProductManager\":8},\"notificationChannels\":[\"email\",\"slack\"],\"urgentThreshold\":75}", + "description": "Evaluating a new AI analytics tool launch with moderate market and technical risks, prioritizing CEO and product manager interests, to decide alert urgency and channels." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "notifications.uploadJSON", + "description": "This tool accepts a JSON object representing notification data (such as alerts or messages) and uploads it to a specified notification server or service endpoint. It validates the JSON structure, processes authentication if needed, and returns a status report indicating success or failure along with any error messages and server response details.", + "category": "notifications", + "parameters": [ + { + "name": "jsonData", + "type": "object", + "description": "The JSON object containing notification details to be uploaded, e.g., alert messages, recipients, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointUrl", + "type": "string", + "description": "The URL of the notification server or API endpoint where the JSON data will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token (e.g., Bearer token) required to authorize the upload to the server.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout duration in seconds for the upload request before it fails.", + "required": false, + "defaultValue": "30" + }, + { + "name": "retryCount", + "type": "number", + "description": "Number of retry attempts if the upload fails due to network or server errors.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload result: success boolean, server response status code, response message, and error details if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send structured notification data in JSON format to a notification service or alert management system for processing or dispatch. This is useful for automating alerting workflows, uploading batch notifications, or integrating external alert data into centralized notification platforms.", + "limitations": "This tool cannot generate the notification content; it expects pre-formatted JSON. It does not handle complex retry strategies beyond configured attempts or support multipart uploads. Network issues outside of the retry scope may cause failure.", + "examples": [ + "Upload an alert JSON payload to the corporate monitoring system API endpoint.", + "Send a batch of notification messages in JSON format to a cloud notification service with authentication.", + "Retry sending a notification JSON to an endpoint with a specified timeout and retry count." + ] + }, + "tags": [ + "notifications", + "upload", + "json", + "API", + "alerts", + "integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":{\"alertType\":\"CPU Usage\",\"severity\":\"high\",\"message\":\"CPU usage exceeded 90%\",\"recipients\":[\"admin@example.com\"],\"timestamp\":\"2024-04-26T15:30:00Z\"},\"endpointUrl\":\"https://api.notifications.example.com/upload\",\"authToken\":\"Bearer abc123def456\",\"timeoutSeconds\":20,\"retryCount\":2}", + "description": "Upload a CPU usage alert notification JSON to a secured notification API endpoint with authentication, a 20-second timeout, and 2 retry attempts." + }, + { + "inputJson": "{\"jsonData\":{\"title\":\"Weekly Report\",\"body\":\"The weekly report is ready.\",\"recipients\":[\"team@example.com\"],\"priority\":\"normal\",\"timestamp\":\"2024-04-26T08:00:00Z\"},\"endpointUrl\":\"https://alerts.example.com/notify\"}", + "description": "Send a simple weekly report notification JSON to an alerts endpoint without authentication, using default timeout and retry settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "notifications.downloadDataset", + "description": "Downloads a dataset from a specified data source and sends a notification about the download status. Accepts parameters identifying the dataset, the source URL or API endpoint, and notification settings. Processes the data retrieval and triggers notifications upon success or failure. Returns details about the download and notification delivery.", + "category": "notifications", + "parameters": [ + { + "name": "datasetId", + "type": "string", + "description": "Identifier or name of the dataset to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceUrl", + "type": "string", + "description": "URL or API endpoint from which to download the dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationRecipients", + "type": "array", + "description": "List of email addresses or user IDs to notify about download status.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "notificationMethod", + "type": "string", + "description": "Method for notification delivery: 'email', 'sms', or 'inApp'.", + "required": false, + "defaultValue": "email" + }, + { + "name": "includeDataPreview", + "type": "boolean", + "description": "Whether to include a preview of the dataset in the notification if download succeeds.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the dataset download before considering it failed.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the download status, dataset metadata, notification delivery confirmation, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve a dataset from a remote source and notify users or systems about the success or failure of the download operation. Ideal for automated data workflows where monitoring and alerting on dataset availability is required.", + "limitations": "Does not handle transforming or parsing the downloaded data beyond providing a preview. Notification methods are limited to email, SMS, or in-app and require proper configuration beforehand.", + "examples": [ + "Download the sales data CSV from the company API and notify the analytics team via email.", + "Retrieve a public weather dataset JSON and send an SMS alert if download fails.", + "Fetch a large dataset from a secure URL and send an in-app notification with a data preview upon success." + ] + }, + "tags": [ + "notifications", + "dataset", + "download", + "alert", + "data retrieval", + "workflow automation" + ], + "examples": [ + { + "inputJson": "{\"datasetId\":\"sales_2023q1\",\"sourceUrl\":\"https://api.company.com/datasets/sales_2023q1.csv\",\"notificationRecipients\":[\"analytics@company.com\"],\"notificationMethod\":\"email\",\"includeDataPreview\":true,\"timeoutSeconds\":120}", + "description": "Download a quarterly sales dataset CSV and notify analytics team by email including a data preview." + }, + { + "inputJson": "{\"datasetId\":\"weather_daily\",\"sourceUrl\":\"https://weatherdata.example.com/daily.json\",\"notificationRecipients\":[\"+15555550123\"],\"notificationMethod\":\"sms\",\"includeDataPreview\":false}", + "description": "Download daily weather data and notify a user via SMS if download fails." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "notifications.uploadImage", + "description": "Uploads an image file to a notification service, allowing embedding or sending the image within alert notifications. Accepts image data as a base64 string or URL, processes upload to storage, and returns a reference URL for including in notifications.", + "category": "notifications", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string of the image to upload. Required if imageUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageUrl", + "type": "string", + "description": "Direct URL of the image to upload. Required if imageData is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageName", + "type": "string", + "description": "Name for the uploaded image file, including extension (e.g., 'alert.png').", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "MIME type of the image (e.g., 'image/png', 'image/jpeg').", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationId", + "type": "string", + "description": "Identifier of the notification to associate the image with, if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite the image if one with the same name already exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the uploaded image's accessible URL and an upload status message. Includes 'imageUrl' and 'status' fields." + }, + "aiAgent": { + "useCase": "Use this tool when you need to attach or embed a custom image in notifications, such as alerts or announcements, by uploading image data or linking a remote image. It helps prepare images for inclusion in notification payloads by storing and returning a reference URL.", + "limitations": "Does not handle image resizing or format conversion; requires valid base64 data or a reachable image URL. Does not send the notification itself, only uploads the image for use in notifications.", + "examples": [ + "Upload a custom alert icon as base64 data for a critical notification.", + "Upload an image by providing its URL to embed in a warning notification.", + "Replace an existing notification image by uploading a new image with the same name and overwrite enabled." + ] + }, + "tags": [ + "notifications", + "upload", + "image", + "media", + "alert", + "notification-service", + "file-storage" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"imageName\":\"alert-icon.png\",\"contentType\":\"image/png\",\"overwrite\":false}", + "description": "Upload a base64-encoded PNG image for a notification icon without overwriting existing files." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/image.jpg\",\"imageName\":\"event-photo.jpg\",\"contentType\":\"image/jpeg\",\"notificationId\":\"notif12345\",\"overwrite\":true}", + "description": "Upload an image by URL to associate it with a specific notification, allowing overwrite of existing image." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "notifications.uploadDataset", + "description": "Uploads a dataset file to a specified notification service endpoint, optionally with metadata tags for better categorization. Accepts file content as a base64 string or URL, processes the upload by validating format and size, and returns a status summary including upload ID and any errors encountered.", + "category": "notifications", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "The name identifier for the dataset being uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "The base64-encoded content of the dataset file to upload. Provide either this or fileUrl.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileUrl", + "type": "string", + "description": "URL pointing to the dataset file to fetch and upload. Provide either this or fileContentBase64.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "The file format/type of the dataset (e.g. csv, json, xml). Used for validation and processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadataTags", + "type": "array", + "description": "An optional array of strings tagging the dataset for categorization and filtering in the notification service.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notifyOnCompletion", + "type": "boolean", + "description": "Whether to send a notification upon successful upload completion.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result object containing upload status, a unique uploadId, error messages if any, and confirmation timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when you need to upload datasets to a notification or alerting platform that supports structured data ingestion, allowing subsequent notifications or alerts based on the dataset content. Ideal for integrating data uploads with alert workflows.", + "limitations": "This tool does not process or analyze the dataset content beyond basic format validation. It cannot transform data or trigger notifications by itself beyond optionally signaling completion.", + "examples": [ + "Upload a CSV dataset file encoded in base64 with metadata tags.", + "Upload a dataset by providing a public URL for the file and request a completion notification.", + "Upload a JSON dataset without metadata and no notification needed." + ] + }, + "tags": [ + "upload", + "notifications", + "dataset", + "file-transfer", + "data-management" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"user_activity_log\",\"fileContentBase64\":\"YmFzZTY0ZW5jb2RlZGNvbnRlbnQ=\",\"fileType\":\"csv\",\"metadataTags\":[\"user\",\"activity\"],\"notifyOnCompletion\":true}", + "description": "Uploading a CSV dataset provided as a base64 string with tags and notification on completion enabled." + }, + { + "inputJson": "{\"datasetName\":\"system_metrics\",\"fileUrl\":\"https://example.com/data/system_metrics.json\",\"fileType\":\"json\",\"notifyOnCompletion\":false}", + "description": "Uploading a JSON dataset by fetching file from a URL without metadata tags or notifications." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "notifications.downloadImage", + "description": "This tool downloads an image from a specified URL and sends it as a notification to a user or a group. It accepts parameters to specify the image source URL, notification recipient(s), and optional message text. It processes the URL to fetch the image, then packages and delivers it as part of a notification message. The output confirms success or provides error details.", + "category": "notifications", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The direct URL of the image to download and include in the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "The identifier (user ID or group ID) of the recipient who will receive the image notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageText", + "type": "string", + "description": "Optional text message to accompany the image in the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the image download before timing out. Default is 10 seconds.", + "required": false, + "defaultValue": "10" + }, + { + "name": "retryOnFail", + "type": "boolean", + "description": "Whether to retry downloading the image once if the first attempt fails. Default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a success boolean and an optional error message if the operation failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to fetch an image from a URL and send it as part of a notification to users or groups, such as alerting about new visual content or updates that include images. It enables combining media with alerts for richer communication.", + "limitations": "The tool cannot download images from protected or authenticated URLs, nor can it transform or edit images. It also does not support batch sending to multiple recipients in a single call.", + "examples": [ + "Send a notification with an image URL to a single user with a custom message.", + "Download an image and notify a group without additional text.", + "Attempt download with retry enabled if the first download fails." + ] + }, + "tags": [ + "notification", + "image", + "download", + "alert", + "media", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/alert.jpg\",\"recipientId\":\"user_12345\",\"messageText\":\"New alert image available\",\"timeoutSeconds\":10,\"retryOnFail\":false}", + "description": "Send an alert notification with an image and message to a specific user." + }, + { + "inputJson": "{\"imageUrl\":\"https://cdn.example.org/images/update.png\",\"recipientId\":\"group_67890\",\"messageText\":\"\",\"timeoutSeconds\":5,\"retryOnFail\":true}", + "description": "Send a notification with an image only to a group, retrying download once if needed." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "notifications.formatWord", + "description": "This tool formats a given word string to fit notification display requirements. It accepts a word as input and applies transformations such as capitalization style (e.g., uppercase, lowercase, title case), truncation to a max length, and optional appending of suffixes or prefixes. It returns the formatted word string ready for use in notifications or alerts.", + "category": "notifications", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word string to be formatted for notification display.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalization", + "type": "string", + "description": "Capitalization style to apply: 'uppercase', 'lowercase', 'title' or 'none'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of the formatted word; word will be truncated and suffixed with '...' if exceeded. 0 means no truncation.", + "required": false, + "defaultValue": "0" + }, + { + "name": "prefix", + "type": "string", + "description": "Optional string to prepend to the word.", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "Optional string to append to the word.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "The resulting formatted word string after applying capitalization, truncation, prefix, and suffix." + }, + "aiAgent": { + "useCase": "Use this tool when preparing single-word content for notifications or alerts where display formatting is crucial, such as enforcing capitalization styles, limiting word length for UI constraints, and adding context via prefixes or suffixes. It helps ensure consistent and visually appropriate notification text components.", + "limitations": "This tool only formats single words and does not handle full sentences or multi-word phrases. It also does not perform language translation or semantic modifications.", + "examples": [ + "Format the word 'warning' as uppercase with a max length of 5 characters.", + "Add a prefix 'URGENT: ' to the word 'update' in title case.", + "Truncate the word 'notification' to max 8 characters and append '!' suffix." + ] + }, + "tags": [ + "formatting", + "notification", + "string", + "word", + "capitalization", + "truncation", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"word\":\"warning\",\"capitalization\":\"uppercase\",\"maxLength\":5}", + "description": "Format the word 'warning' as uppercase and truncate to 5 characters." + }, + { + "inputJson": "{\"word\":\"update\",\"capitalization\":\"title\",\"prefix\":\"URGENT: \",\"maxLength\":0}", + "description": "Add prefix 'URGENT: ' and capitalize the word 'update' as title case without truncation." + }, + { + "inputJson": "{\"word\":\"notification\",\"maxLength\":8,\"suffix\":\"!\"}", + "description": "Truncate 'notification' to 8 characters and append an exclamation mark as suffix." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "notifications.renderReport", + "description": "Renders a notification report by compiling provided report data and formatting options into a visual or textual alert-ready format. Accepts structured report content, optional styling preferences, and output format specification. Produces a rendered notification report string suitable for display or sending as an alert.", + "category": "notifications", + "parameters": [ + { + "name": "reportData", + "type": "object", + "description": "Structured content of the report to be rendered, including sections, metrics, and key information.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output format for the report (e.g., 'text', 'html', 'markdown').", + "required": false, + "defaultValue": "text" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Optional styling preferences such as color themes, fonts, and layout details.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a summary section in the rendered report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for localization of report text.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully rendered report as a string along with metadata such as format and length." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured report data into a finalized notification format suitable for user alerting systems, including emails, in-app notifications, or dashboards. It handles formatting, optional localization, and styling to meet presentation requirements.", + "limitations": "Does not handle report data validation or complex graphical chart generation beyond basic styling. Not designed for sending notifications, only rendering content.", + "examples": [ + "Render a sales report as HTML with custom colors for email notification.", + "Generate a plain text system status report with summary in English.", + "Produce a markdown-formatted performance report localized to Spanish without summary section." + ] + }, + "tags": [ + "notifications", + "rendering", + "report", + "formatting", + "alert", + "localization" + ], + "examples": [ + { + "inputJson": "{\"reportData\":{\"title\":\"Weekly Sales Report\",\"content\":[{\"section\":\"Revenue\",\"value\":\"$10,000\"},{\"section\":\"Units Sold\",\"value\":150}]},\"format\":\"html\",\"styleOptions\":{\"colorScheme\":\"blue\"},\"includeSummary\":true,\"language\":\"en\"}", + "description": "Render a weekly sales report to HTML format with blue color scheme including a summary." + }, + { + "inputJson": "{\"reportData\":{\"title\":\"System Status\",\"content\":[{\"section\":\"CPU Usage\",\"value\":\"75%\"},{\"section\":\"Memory\",\"value\":\"65%\"}]},\"format\":\"text\",\"includeSummary\":true,\"language\":\"en\"}", + "description": "Render a system status report as plain text with summary in English." + }, + { + "inputJson": "{\"reportData\":{\"title\":\"Informe de Rendimiento\",\"content\":[{\"section\":\"Usuarios Activos\",\"value\":5000},{\"section\":\"Errores\",\"value\":2}]},\"format\":\"markdown\",\"includeSummary\":false,\"language\":\"es\"}", + "description": "Render a performance report in markdown format localized in Spanish without summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "notifications.formatDataset", + "description": "Formats a dataset of notification entries into a structured text or HTML message suitable for sending as alerts. Accepts an array of notification objects with details like title, message, and timestamp, and applies customizable formatting templates to produce a formatted notification summary string.", + "category": "notifications", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "An array of notification objects each containing details such as title, message, and timestamp to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "The output format of the formatted dataset, e.g., 'text' for plain text or 'html' for HTML formatting.", + "required": false, + "defaultValue": "text" + }, + { + "name": "template", + "type": "string", + "description": "An optional custom template string defining how each notification entry should be formatted. Supports placeholders like {{title}}, {{message}}, {{timestamp}}.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include notification timestamps in the formatted output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Sorting order of the notifications based on timestamp; either 'asc' for ascending or 'desc' for descending.", + "required": false, + "defaultValue": "desc" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'formattedMessage' string property with the fully formatted notification dataset according to the specified options." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw notification data into a human-readable message format for sending alerts or reports via email, SMS, or push notifications. It supports flexible formatting styles for different channels and presentation requirements.", + "limitations": "Does not send notifications itself; purely formats data. Complex formatting beyond simple templating is not supported. Requires well-structured notification objects as input.", + "examples": [ + "Format a batch of system alert notifications into an HTML email body.", + "Convert a list of user notifications into plain text for SMS delivery.", + "Generate a summary text block from raw notification data for logging or display." + ] + }, + "tags": [ + "notifications", + "formatting", + "dataset", + "alert", + "message", + "templating" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"title\":\"Server Down\",\"message\":\"The server is not responding.\",\"timestamp\":\"2024-06-01T12:00:00Z\"},{\"title\":\"Backup Complete\",\"message\":\"Backup finished successfully.\",\"timestamp\":\"2024-06-01T11:00:00Z\"}],\"formatType\":\"text\",\"includeTimestamp\":true,\"sortOrder\":\"desc\"}", + "description": "Format two notifications into a descending timestamp ordered plain text message including timestamps." + }, + { + "inputJson": "{\"dataset\":[{\"title\":\"New Login\",\"message\":\"User logged in from a new device.\",\"timestamp\":\"2024-06-02T09:30:00Z\"}],\"formatType\":\"html\",\"template\":\"

{{title}}: {{message}} at {{timestamp}}

\",\"includeTimestamp\":true}", + "description": "Format a single notification into an HTML paragraph using a custom template including the timestamp." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "notifications.buildService", + "description": "This tool allows the creation and configuration of a notification service infrastructure. It accepts parameters defining notification channels, message templates, delivery rules, and retry policies. The tool processes these inputs to build a scalable and customizable notification service, returning the service configuration details including endpoints and status.", + "category": "notifications", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "Name identifier for the notification service being built.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of notification channels to support (e.g., email, SMS, push).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "messageTemplates", + "type": "object", + "description": "Key-value mapping of channel names to message templates for notifications.", + "required": true, + "defaultValue": "{}" + }, + { + "name": "deliveryRules", + "type": "object", + "description": "Configuration of rules for when and how notifications are sent (e.g., time windows, user preferences).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Defines retry attempts and backoff strategy for failed notification deliveries.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "maxConcurrency", + "type": "number", + "description": "Maximum number of simultaneous notification send operations to allow.", + "required": false, + "defaultValue": "10" + }, + { + "name": "loggingEnabled", + "type": "boolean", + "description": "Enable or disable logging of notification delivery attempts and results.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns the configured notification service details including service ID, configured channels, endpoints, status, and summary of rules and policies." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision a new, customized notification service that handles multiple delivery channels with specific templates and delivery logic. Ideal for automating the setup of infrastructure to send alerts, reminders, or marketing messages through various communication methods.", + "limitations": "This tool does not implement the actual sending of notifications; it builds and configures the notification service infrastructure only. It also does not handle user authentication or message content personalization beyond provided templates.", + "examples": [ + "Build a notification service named 'MarketingAlerts' supporting email and SMS with corresponding templates and a retry policy with 3 retries.", + "Create a notification service for push notifications only, with delivery restricted to business hours and logging disabled.", + "Set up a notification service with channels email, SMS, and push, including custom delivery rules and max concurrency set to 20." + ] + }, + "tags": [ + "notifications", + "service", + "build", + "infrastructure", + "alerts", + "multi-channel", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"MarketingAlerts\",\"channels\":[\"email\",\"sms\"],\"messageTemplates\":{\"email\":\"Hello {{name}}, check out our new offers!\",\"sms\":\"Hi {{name}}, don't miss our deals!\"},\"retryPolicy\":{\"maxRetries\":3,\"backoffMS\":5000},\"loggingEnabled\":true}", + "description": "Creates a notification service 'MarketingAlerts' with email and SMS channels, respective message templates, a retry policy of 3 attempts, and logging enabled." + }, + { + "inputJson": "{\"serviceName\":\"PushOnlyService\",\"channels\":[\"push\"],\"messageTemplates\":{\"push\":\"New event available!\"},\"deliveryRules\":{\"timeWindow\":{\"start\":\"09:00\",\"end\":\"17:00\"}},\"loggingEnabled\":false}", + "description": "Creates a push notifications-only service with delivery restricted to business hours and logging disabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "notifications.draftReport", + "description": "This tool accepts input parameters including report title, recipient list, key data points, and optional formatting instructions. It processes these inputs to compose a professional notification report draft, summarizing core information in a clear, structured message ready for review or sending. Outputs the report content as text along with metadata.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or subject of the report to be drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses or identifiers for the notification report.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataPoints", + "type": "object", + "description": "Key-value pairs representing the main information and metrics to include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section at the beginning of the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Preferred formatting style for the report (e.g., \"formal\", \"brief\", \"technical\").", + "required": false, + "defaultValue": "formal" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Urgency level for the notification report (e.g., \"normal\", \"high\").", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted report text and metadata including title, recipients, and priority." + }, + "aiAgent": { + "useCase": "Use this tool when needing to prepare a clear, structured notification report draft for stakeholders or team members based on provided data points, recipients, and context. It helps in automating generation of professional communication content before sending alerts or notifications.", + "limitations": "Cannot send notifications directly, perform real-time data analytics, or customize advanced formatting like tables or charts beyond simple text summary.", + "examples": [ + "Draft a high priority report summarizing sales data for the marketing team.", + "Create a brief notification report listing server uptime stats for IT support.", + "Generate a formal summary report about project milestones for executive recipients." + ] + }, + "tags": [ + "notifications", + "reporting", + "drafting", + "alerts", + "communication" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Weekly Sales Update\",\"recipients\":[\"sales-team@example.com\",\"manager@example.com\"],\"dataPoints\":{\"TotalSales\":\"$150,000\",\"NewCustomers\":25,\"ReturnedItems\":5},\"includeSummary\":true,\"formatStyle\":\"formal\",\"priorityLevel\":\"normal\"}", + "description": "Draft a formal weekly sales update report for the sales team and manager including key sales metrics." + }, + { + "inputJson": "{\"title\":\"Server Downtime Notification\",\"recipients\":[\"it-support@example.com\"],\"dataPoints\":{\"DowntimeDuration\":\"2 hours\",\"AffectedServices\":\"Database, API Gateway\"},\"includeSummary\":false,\"formatStyle\":\"brief\",\"priorityLevel\":\"high\"}", + "description": "Create a brief high priority notification report about recent server downtime to IT support." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "notifications.composeText", + "description": "This tool constructs a complete notification text message based on input parameters such as recipient name, message purpose, urgency level, and optional call to action. It processes these inputs to generate a coherent, appropriately formatted notification message string suitable for sending via various communication channels.", + "category": "notifications", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "Name of the person receiving the notification; used to personalize the message", + "required": true, + "defaultValue": "" + }, + { + "name": "messagePurpose", + "type": "string", + "description": "Brief description of why the notification is being sent, e.g., 'reminder', 'alert', 'update'", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Sets the urgency tone of the message (e.g., 'low', 'medium', 'high'), affecting phrasing and emphasis", + "required": false, + "defaultValue": "medium" + }, + { + "name": "callToAction", + "type": "string", + "description": "Optional instruction or link the recipient should follow, e.g., 'Please confirm your attendance'", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Flag indicating whether to include the current timestamp in the message", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification text under the 'text' field, and metadata about urgency and timestamp inclusion." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate a clear, personalized notification message with variable urgency and optional call-to-action instructions, suitable for downstream delivery via email, SMS, or push notifications.", + "limitations": "This tool does not send notifications itself, nor does it support multimedia messages or rich formatting beyond plain text. It also cannot infer context beyond provided parameters.", + "examples": [ + "Compose a high urgency notification reminding the recipient to update their password immediately.", + "Create a medium urgency informational update including a link to the new policy document.", + "Generate a low urgency birthday greeting message with recipient's name and timestamp." + ] + }, + "tags": [ + "notifications", + "textGeneration", + "messageComposition", + "personalization", + "alerts", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Alice\",\"messagePurpose\":\"reminder\",\"urgencyLevel\":\"high\",\"callToAction\":\"Reset your password now\",\"includeTimestamp\":true}", + "description": "A high urgency password reset reminder with call to action and timestamp included." + }, + { + "inputJson": "{\"recipientName\":\"Bob\",\"messagePurpose\":\"update\",\"urgencyLevel\":\"medium\",\"callToAction\":\"Review the attached report\",\"includeTimestamp\":false}", + "description": "A medium urgency update notification without timestamp, prompting report review." + }, + { + "inputJson": "{\"recipientName\":\"Carol\",\"messagePurpose\":\"greeting\",\"urgencyLevel\":\"low\",\"callToAction\":\"\",\"includeTimestamp\":true}", + "description": "A low urgency greeting message including recipient's name and timestamp, with no call to action." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "notifications.composeWord", + "description": "Composes a customizable notification message as a single word or concise phrase based on input parameters such as urgency, context, and sentiment. It outputs a well-formed word or short notification keyword suitable for alerts or UI elements.", + "category": "notifications", + "parameters": [ + { + "name": "context", + "type": "string", + "description": "The thematic or situational context for the notification word (e.g., 'error', 'success', 'reminder').", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "The urgency of the notification, such as 'low', 'medium', 'high'. This influences word choice to convey importance.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "sentiment", + "type": "string", + "description": "The emotional tone to convey: 'neutral', 'positive', or 'negative'. Affects word positivity or negativity.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended recipient group for whom the word should be suitable, e.g., 'general', 'technical', 'children'.", + "required": false, + "defaultValue": "general" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') specifying language of the output word.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification word and metadata such as applied parameters and confidence score indicating suitability." + }, + "aiAgent": { + "useCase": "Use this tool when generating concise, impactful notification keywords or labels tailored to specific contexts, urgency levels, and audience sentiment. It helps automate crafting brief alert words for UI badges, system messages, or notification centers.", + "limitations": "This tool generates single words or very short phrases and does not produce full notification messages or multi-sentence content. It cannot guarantee cultural appropriateness beyond the specified language or deeply nuanced meanings.", + "examples": [ + "Compose a notification word for a high urgency error message.", + "Generate a positive notification keyword suitable for children in English.", + "Create a medium urgency reminder word for a technical audience." + ] + }, + "tags": [ + "notifications", + "compose", + "word", + "alert", + "urgency", + "sentiment", + "context" + ], + "examples": [ + { + "inputJson": "{\"context\":\"error\",\"urgencyLevel\":\"high\",\"sentiment\":\"negative\",\"targetAudience\":\"general\",\"language\":\"en\"}", + "description": "Generate a high urgency negative notification word for general audience in English." + }, + { + "inputJson": "{\"context\":\"success\",\"urgencyLevel\":\"low\",\"sentiment\":\"positive\",\"targetAudience\":\"technical\",\"language\":\"en\"}", + "description": "Generate a low urgency positive notification word for technical audience in English." + }, + { + "inputJson": "{\"context\":\"reminder\",\"urgencyLevel\":\"medium\",\"sentiment\":\"neutral\",\"targetAudience\":\"children\",\"language\":\"en\"}", + "description": "Generate a medium urgency neutral notification word tailored for children in English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "notifications.composeMessage", + "description": "Composes a notification message based on given inputs such as recipient details, message content, urgency level, and optional attachments. Processes inputs to produce a structured message object ready for sending or further processing in notification workflows.", + "category": "notifications", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "Email or identifier of the notification recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the notification message.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main textual content of the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency level of the message (e.g., low, normal, high, critical).", + "required": false, + "defaultValue": "normal" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of file attachment URLs or encoded contents.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "format", + "type": "string", + "description": "Message format, e.g., plain text or HTML.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "Optional ISO-8601 timestamp to schedule sending.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured message object containing all provided and processed fields, ready for notification delivery systems." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate a structured notification message for email, SMS, or app alerts by combining recipient info, message content, urgency, formatting, and optional attachments into a single, well-formed message object. It is ideal for preparing messages for downstream sending services.", + "limitations": "This tool does not send notifications itself; it only composes the message content and metadata. It cannot validate recipient addresses or handle delivery failures.", + "examples": [ + "Compose an urgent alert email to the admin about a security breach with an attached log file.", + "Create a normal priority reminder message for a user with a scheduled send time tomorrow.", + "Generate an HTML formatted promotional notification with images for app users." + ] + }, + "tags": [ + "notifications", + "message", + "compose", + "communication", + "alert", + "email", + "sms" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"user@example.com\",\"subject\":\"System Alert\",\"body\":\"Your password will expire in 3 days.\",\"urgencyLevel\":\"high\",\"attachments\":[],\"format\":\"plain\",\"scheduledTime\":\"\"}", + "description": "Compose a high-urgency plain text notification about password expiry for a user." + }, + { + "inputJson": "{\"recipient\":\"admin@company.com\",\"subject\":\"Security Breach Detected\",\"body\":\"Multiple failed logins detected.\",\"urgencyLevel\":\"critical\",\"attachments\":[\"https://example.com/logs/failures.log\"],\"format\":\"plain\",\"scheduledTime\":\"\"}", + "description": "Compose a critical security alert with an attached log file for the admin." + }, + { + "inputJson": "{\"recipient\":\"user123\",\"subject\":\"Weekly Newsletter\",\"body\":\"

This Week's News

Check out our latest updates!

\",\"urgencyLevel\":\"normal\",\"attachments\":[],\"format\":\"html\",\"scheduledTime\":\"2024-06-01T09:00:00Z\"}", + "description": "Compose an HTML formatted newsletter scheduled to send in the future." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "notifications.formatContract", + "description": "This tool formats contract documents into standardized notification templates suitable for alerting stakeholders. It accepts raw contract text and parameters specifying formatting style, key sections to highlight, and output notification type. The output is a formatted notification string optimized for email, SMS, or in-app alerts, preserving critical contract information clearly and concisely.", + "category": "notifications", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "Raw text of the contract document to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "highlightSections", + "type": "array", + "description": "List of key contract sections to emphasize in the notification, e.g., ['termination', 'payment terms'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notificationType", + "type": "string", + "description": "The notification format type: 'email', 'sms', or 'inApp'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the formatted notification output.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a brief summary of the contract in the notification.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted notification string and metadata about highlighted sections." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform lengthy contract documents into concise, readable notifications tailored for different communication channels. Ideal for automated alert systems that notify stakeholders about critical contract details without requiring them to read entire documents.", + "limitations": "Cannot interpret highly complex legal language beyond basic section extraction; does not generate legally binding summaries or advice; output limited by maxLength parameter may omit some details.", + "examples": [ + "Format this contract text for an SMS alert highlighting payment terms and deadlines.", + "Create an email notification from the given contract focusing on cancellation clauses.", + "Generate an in-app notification summarizing the contract with key sections emphasized." + ] + }, + "tags": [ + "notifications", + "formatting", + "contracts", + "legal", + "alerts", + "document processing" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This contract agreement establishes the payment terms and termination conditions between parties.\",\"highlightSections\":[\"payment terms\",\"termination\"],\"notificationType\":\"email\",\"maxLength\":300,\"includeSummary\":true}", + "description": "Format a short contract text into an email notification emphasizing payment and termination sections." + }, + { + "inputJson": "{\"contractText\":\"The service contract details delivery schedules and penalties.\",\"highlightSections\":[\"penalties\"],\"notificationType\":\"sms\",\"maxLength\":160,\"includeSummary\":false}", + "description": "Generate an SMS notification from a service contract focusing on penalties without summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "notifications.buildContainer", + "description": "This tool builds a containerized notification service infrastructure that allows sending alerts via multiple channels. It accepts configuration parameters including notification channels, container specifications, and environment settings. It processes these inputs to generate deployment-ready container specifications (e.g., Docker or Kubernetes manifests) for notification services.", + "category": "notifications", + "parameters": [ + { + "name": "containerName", + "type": "string", + "description": "The unique name for the notification container service to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationChannels", + "type": "array", + "description": "List of notification channels to configure, e.g., ['email','sms','slack'].", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuLimit", + "type": "string", + "description": "CPU resource limit for the container (e.g., '500m' for 0.5 CPU).", + "required": false, + "defaultValue": "500m" + }, + { + "name": "memoryLimit", + "type": "string", + "description": "Memory resource limit for the container (e.g., '256Mi').", + "required": false, + "defaultValue": "256Mi" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to pass into the container.", + "required": false, + "defaultValue": "" + }, + { + "name": "replicaCount", + "type": "number", + "description": "Number of container replicas to deploy for redundancy/scaling.", + "required": false, + "defaultValue": "1" + }, + { + "name": "baseImage", + "type": "string", + "description": "Base container image used for the notification service (e.g., 'node:14-alpine').", + "required": false, + "defaultValue": "node:14-alpine" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated container specification manifest as a string and metadata info such as container name and applied configurations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate container deployment manifests for a notification service that can send alerts via multiple configured channels. The tool helps convert user notification preferences and infrastructure constraints into deployable formats for container orchestration platforms.", + "limitations": "This tool does not deploy containers or verify the runtime notification delivery. It only generates container build and deployment specifications based on inputs. It cannot configure notification backend integrations beyond basic channel selection.", + "examples": [ + "Build a notification container named 'alert-service' supporting email and Slack channels with default resources.", + "Create a notification container with 3 replicas, higher CPU limits, and custom environment variables for API keys.", + "Generate container specs using a specific base image tailored for lightweight notification processing." + ] + }, + "tags": [ + "notifications", + "container", + "build", + "infrastructure", + "deployment", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"containerName\":\"alert-service\",\"notificationChannels\":[\"email\",\"slack\"],\"cpuLimit\":\"500m\",\"memoryLimit\":\"256Mi\",\"environmentVariables\":{\"EMAIL_API_KEY\":\"abc123\"},\"replicaCount\":1,\"baseImage\":\"node:14-alpine\"}", + "description": "Build a notification container named 'alert-service' supporting email and Slack with default CPU/memory and one replica." + }, + { + "inputJson": "{\"containerName\":\"multi-alert\",\"notificationChannels\":[\"sms\",\"email\",\"slack\"],\"cpuLimit\":\"1\",\"memoryLimit\":\"512Mi\",\"environmentVariables\":{\"SMS_API_KEY\":\"xyz789\",\"SLACK_WEBHOOK\":\"https://example.com/webhook\"},\"replicaCount\":3,\"baseImage\":\"node:16-alpine\"}", + "description": "Create a more powerful notification container with three replicas and multiple notification channels configured." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "notifications.buildBranch", + "description": "Constructs a structured notification message for a code branch event, such as creation, update, or deletion. Accepts branch details (name, repository, action), optional metadata, and formats a notification payload suitable for alerting users or integrating with notification systems. Outputs a JSON object representing the complete notification message.", + "category": "notifications", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "The name of the branch related to the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryName", + "type": "string", + "description": "The name of the repository where the branch exists.", + "required": true, + "defaultValue": "" + }, + { + "name": "actionType", + "type": "string", + "description": "Type of branch action triggering notification, e.g., created, updated, deleted.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "The username or identifier of who performed the branch action.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the branch event occurred.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalInfo", + "type": "object", + "description": "Optional additional metadata to include in the notification, such as commit hashes or links.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the formatted notification message to be sent or logged, including all relevant branch event details." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate consistent, structured notifications about branch-related events in code repositories to inform users or trigger workflows. It helps automate alert content creation with contextual details for integration with messaging platforms or monitoring systems.", + "limitations": "This tool does not send the notification itself; it only builds the message payload. It requires external infrastructure to deliver notifications. Also, it does not validate repository existence or branch status beyond formatting provided inputs.", + "examples": [ + "Generate a notification for a newly created branch 'feature/login' in the 'mobile-app' repo by user 'jdoe'.", + "Build a notification for branch deletion event including commit reference and timestamp.", + "Create a message for a branch update carried out by 'alice' with additional links to the pull request." + ] + }, + "tags": [ + "notifications", + "branch", + "code", + "alerts", + "development", + "automation" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"feature/login\",\"repositoryName\":\"mobile-app\",\"actionType\":\"created\",\"author\":\"jdoe\",\"timestamp\":\"2024-06-10T15:30:00Z\"}", + "description": "Notification for branch creation event in mobile-app repo by user jdoe." + }, + { + "inputJson": "{\"branchName\":\"hotfix/issue-123\",\"repositoryName\":\"backend-service\",\"actionType\":\"deleted\",\"timestamp\":\"2024-06-10T16:00:00Z\",\"additionalInfo\":{\"commitHash\":\"a1b2c3d4\"}}", + "description": "Notification for branch deletion with commit hash info." + }, + { + "inputJson": "{\"branchName\":\"release/v2.0\",\"repositoryName\":\"web-frontend\",\"actionType\":\"updated\",\"author\":\"alice\",\"additionalInfo\":{\"prLink\":\"https://repo.com/pull/456\"}}", + "description": "Notification for branch update with PR link included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "notifications.buildPullRequest", + "description": "Builds a structured notification message for a code pull request. Accepts pull request details such as title, author, status, description, and changed files, then assembles a formatted notification object suitable for sending alerts or posting in communication channels.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the pull request to include in the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Username or display name of the pull request author.", + "required": true, + "defaultValue": "" + }, + { + "name": "status", + "type": "string", + "description": "Current status of the pull request (e.g., open, merged, closed).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description or summary of the pull request changes.", + "required": false, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of filenames or paths that have been modified in the pull request.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reviewers", + "type": "array", + "description": "Optional list of reviewers assigned to the pull request.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "commentsCount", + "type": "number", + "description": "Number of comments on the pull request, for summary inclusion.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing formatted notification fields such as title, author, status, message body, and metadata ready to be sent as an alert." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a clear, concise notification about a pull request event for alerts, chat messages, or email. It helps by formatting key PR data into a structured message that can be integrated with notification systems or messaging platforms.", + "limitations": "This tool only builds the notification content and does not handle message delivery or integration with external messaging services.", + "examples": [ + "Create a notification for a newly opened pull request titled 'Add user login', authored by 'devAlice', with 3 changed files.", + "Build an alert message summarizing a merged pull request with comments and reviewers.", + "Generate a concise notification of a closed pull request without a description." + ] + }, + "tags": [ + "notifications", + "pullRequest", + "code", + "alerts", + "build", + "developer", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Fix memory leak in cache module\",\"author\":\"devBob\",\"status\":\"open\",\"description\":\"This PR addresses the memory leak when cache expires.\",\"changedFiles\":[\"cache.js\",\"utils/memory.js\"],\"reviewers\":[\"leadDev\"],\"commentsCount\":2}", + "description": "Notification for an open PR with description, changed files, reviewers, and comment count." + }, + { + "inputJson": "{\"title\":\"Update dependencies to latest\",\"author\":\"devCarol\",\"status\":\"merged\",\"description\":\"Updated all npm dependencies to latest versions.\",\"changedFiles\":[\"package.json\",\"package-lock.json\"],\"reviewers\":[],\"commentsCount\":0}", + "description": "Notification message when a PR is merged with basic details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "notifications.buildEndpoint", + "description": "Constructs a RESTful API endpoint specification for notification services based on given input parameters. Accepts endpoint path, HTTP method, request payload schema, response format, authentication requirements, and optional headers. Outputs a standardized JSON object defining the complete endpoint configuration.", + "category": "notifications", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path for the notification endpoint (e.g., '/notify/email').", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method used by the endpoint (GET, POST, PUT, DELETE).", + "required": true, + "defaultValue": "POST" + }, + { + "name": "requestSchema", + "type": "object", + "description": "JSON Schema object defining the expected structure of the request payload.", + "required": true, + "defaultValue": "" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON Schema object defining the expected structure of the response data.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Indicates whether the endpoint requires authentication (e.g., API key, OAuth).", + "required": false, + "defaultValue": "true" + }, + { + "name": "headers", + "type": "object", + "description": "Optional key-value pairs of HTTP headers that the endpoint expects or returns.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A complete endpoint definition object including path, method, request/response schemas, auth requirement, and headers." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate or standardize notification API endpoint definitions for integrating notification dispatch services. Ideal for microservice or serverless setups where dynamic endpoint configurations are required. It helps agents build the contract for notification API endpoints based on desired data and protocols.", + "limitations": "Does not implement or deploy the endpoint; it only produces the configuration object. It cannot validate network connectivity or runtime behavior of the endpoint code.", + "examples": [ + "Build an endpoint for email notification submission with authentication and specific payload structure.", + "Create a GET endpoint for retrieving notification status without authentication.", + "Generate a PUT endpoint to update notification preferences, including custom headers." + ] + }, + "tags": [ + "notifications", + "endpoint", + "API", + "build", + "configuration", + "REST" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/notify/email\",\"httpMethod\":\"POST\",\"requestSchema\":{\"type\":\"object\",\"properties\":{\"email\":{\"type\":\"string\",\"format\":\"email\"},\"message\":{\"type\":\"string\"}},\"required\":[\"email\",\"message\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"status\":{\"type\":\"string\"},\"messageId\":{\"type\":\"string\"}},\"required\":[\"status\",\"messageId\"]},\"authenticationRequired\":true,\"headers\":{\"Content-Type\":\"application/json\"}}", + "description": "Builds a POST /notify/email endpoint expecting email and message data to send an email notification with authentication." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "notifications.generateKPI", + "description": "Generates key performance indicator (KPI) notification summaries based on specified metrics, timeframes, and thresholds. Accepts KPI definitions with data sources and criteria, processes current and historical data to evaluate KPI status, and produces formatted notification messages suitable for alerting users to KPI achievements or warnings.", + "category": "notifications", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The name or identifier of the KPI to generate a notification for.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "An array of metric names or IDs included in the KPI calculation.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "timeframe", + "type": "object", + "description": "The time range for KPI evaluation, including start and end timestamps in ISO format.", + "required": true, + "defaultValue": "{}" + }, + { + "name": "thresholds", + "type": "object", + "description": "Key-value pairs mapping metric names to threshold values defining alert or achievement boundaries.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "notificationFormat", + "type": "string", + "description": "The output notification format, e.g., 'text', 'html', or 'json'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "includeHistoricalComparison", + "type": "boolean", + "description": "Whether to include comparison with previous periods in the notification summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the notification content as a string and metadata such as KPI value, status (e.g., 'ok', 'warning', 'critical'), and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce concise and actionable KPI notifications from raw metric data to inform users about performance goals, alerts, or trends over specified timeframes. It helps in converting analytic evaluations into human-readable alerts for monitoring or decision-making.", + "limitations": "This tool does not fetch raw data; data preprocessing or aggregation must be done prior. It also cannot configure notification delivery channels or user preferences.", + "examples": [ + "Generate a notification summarizing sales revenue KPI for last week and alert if below target.", + "Create an HTML-formatted KPI notification comparing this month's customer satisfaction score with last month.", + "Produce a JSON notification for system uptime KPI including status and timestamp." + ] + }, + "tags": [ + "notifications", + "KPI", + "analytics", + "alerts", + "performance", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"kpiName\": \"monthlySales\", \"metrics\": [\"salesRevenue\", \"numberOfOrders\"], \"timeframe\": {\"start\": \"2024-05-01T00:00:00Z\", \"end\": \"2024-05-31T23:59:59Z\"}, \"thresholds\": {\"salesRevenue\": 100000}, \"notificationFormat\": \"text\", \"includeHistoricalComparison\": true}", + "description": "Generate a text notification for the monthly sales KPI comparing revenue with threshold and previous month." + }, + { + "inputJson": "{\"kpiName\": \"customerSatisfaction\", \"metrics\": [\"csatScore\"], \"timeframe\": {\"start\": \"2024-06-01T00:00:00Z\", \"end\": \"2024-06-30T23:59:59Z\"}, \"notificationFormat\": \"html\", \"includeHistoricalComparison\": false}", + "description": "Create an HTML KPI notification for customer satisfaction score for the current month without historical comparison." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "notifications.buildModule", + "description": "Builds a customizable notifications module code snippet based on input parameters including notification types, delivery channels, and message templates. Processes these inputs to generate modular, reusable JavaScript code for sending notifications according to configured preferences. Outputs the generated code as a string module.", + "category": "notifications", + "parameters": [ + { + "name": "notificationTypes", + "type": "array", + "description": "Array of notification types to support, e.g., ['email', 'sms', 'push'].", + "required": true, + "defaultValue": "[]" + }, + { + "name": "deliveryChannels", + "type": "object", + "description": "Mapping of notification types to their delivery channel configurations (e.g., SMTP info for email).", + "required": true, + "defaultValue": "{}" + }, + { + "name": "messageTemplates", + "type": "object", + "description": "Templates for each notification type containing placeholders that will be replaced when sending.", + "required": true, + "defaultValue": "{}" + }, + { + "name": "includeLogging", + "type": "boolean", + "description": "Include logging functionality in the module to capture notification sending results.", + "required": false, + "defaultValue": "false" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Configuration object defining retry behavior on failed notifications (max retries, delay).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "string", + "description": "String containing the JavaScript module code implementing the configured notification system." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate a ready-to-use notifications module tailored with specific notification types, delivery channels, and message templates, enabling agents to integrate programmatic notifications into applications without hand coding. Useful for automating alerts, reminders, or updates.", + "limitations": "This tool does not send notifications by itself; it only generates the module code. Runtime environment and credentials must be properly configured separately. Complex dynamic templating or localization beyond placeholders is not supported.", + "examples": [ + "Generate an email and SMS notification module with templates, SMTP config, and SMS API config.", + "Build a push notification module including a retry policy and logging enabled.", + "Create a multi-channel notification module for email and push with basic templates and no logging." + ] + }, + "tags": [ + "notifications", + "code generation", + "module builder", + "alerts", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"notificationTypes\":[\"email\",\"sms\"],\"deliveryChannels\":{\"email\":{\"smtpHost\":\"smtp.example.com\",\"smtpPort\":587,\"username\":\"user@example.com\",\"password\":\"pass\"},\"sms\":{\"apiKey\":\"abcdef123456\",\"apiUrl\":\"https://sms.example.com/send\"}},\"messageTemplates\":{\"email\":\"Hello {{name}}, you have a message.\",\"sms\":\"Hi {{name}}, new notification!\"},\"includeLogging\":true,\"retryPolicy\":{\"maxRetries\":3,\"retryDelayMs\":1000}}", + "description": "Builds a notifications module supporting email and SMS with respective configurations, templates, logging, and retry policy." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "notifications.generateQuery", + "description": "Generates a customizable query string or object based on criteria for notification records, such as by date, priority, status, and recipient. Accepts filtering parameters and outputs a structured query useful for fetching or aggregating notification data from databases or APIs.", + "category": "notifications", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted start date to filter notifications from, inclusive.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted end date to filter notifications until, inclusive.", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityLevels", + "type": "array", + "description": "Array of priority levels (e.g., ['high','medium','low']) to include in the query.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "statuses", + "type": "array", + "description": "Array of notification statuses to filter by (e.g., ['unread','read','archived']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "recipientIds", + "type": "array", + "description": "Array of user IDs representing notification recipients to filter notifications for.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeContentKeywords", + "type": "array", + "description": "Keywords to match in the notification content as filters.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of notifications to retrieve.", + "required": false, + "defaultValue": "100" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field name to sort the results by (e.g., 'date', 'priority').", + "required": false, + "defaultValue": "date" + }, + { + "name": "sortDescending", + "type": "boolean", + "description": "Whether to sort the results in descending order.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing a query with all filters applied, ready to be used in a notification database or API query operation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to build complex queries to retrieve or filter notification data dynamically based on multiple optional criteria like time range, priority, status, recipients, and keywords. It assists agents in constructing structured query parameters compatible with notification storages or services.", + "limitations": "This tool generates query objects or strings but does not execute them or validate against specific database schemas. It cannot access notification data or interpret query results.", + "examples": [ + "Generate a query for unread high priority notifications for user ID '123' in the last week.", + "Create a query to fetch up to 50 notifications containing the keyword 'alert' sorted by priority descending.", + "Build a query filtering notifications between two dates for multiple recipients and status 'read'." + ] + }, + "tags": [ + "notifications", + "query generation", + "filtering", + "alerts", + "data retrieval", + "API" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-06-01T00:00:00Z\",\"endDate\":\"2024-06-07T23:59:59Z\",\"priorityLevels\":[\"high\"],\"statuses\":[\"unread\"],\"recipientIds\":[\"123\"],\"limit\":100,\"sortBy\":\"date\",\"sortDescending\":true}", + "description": "Query for unread high priority notifications for user 123 in the first week of June 2024." + }, + { + "inputJson": "{\"includeContentKeywords\":[\"alert\"],\"limit\":50,\"sortBy\":\"priority\",\"sortDescending\":true}", + "description": "Query for top 50 notifications containing the word 'alert', sorted by priority descending." + }, + { + "inputJson": "{\"startDate\":\"2024-01-01T00:00:00Z\",\"endDate\":\"2024-01-31T23:59:59Z\",\"recipientIds\":[\"234\",\"345\"],\"statuses\":[\"read\"],\"limit\":200}", + "description": "Query for notifications read by users 234 and 345 during January 2024, limited to 200 results." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "notifications.generateDashboard", + "description": "Generates an interactive analytics dashboard summarizing notification data and alert performance metrics. Accepts historical notification records and filter criteria; processes data to compute statistics like delivery success rate, response times, and alert frequencies; outputs a dashboard configuration object or URL for visualization.", + "category": "notifications", + "parameters": [ + { + "name": "notificationData", + "type": "array", + "description": "Array of notification event objects including timestamps, status, and type, to be analyzed for dashboard metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object with start and end ISO date strings to filter the notifications by date.", + "required": false, + "defaultValue": "{\"start\":\"\",\"end\":\"\"}" + }, + { + "name": "filterTypes", + "type": "array", + "description": "List of notification types to include in the analysis (e.g., email, SMS, push).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeResponseMetrics", + "type": "boolean", + "description": "Flag indicating whether to include response time metrics in the dashboard.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title to display on the generated dashboard.", + "required": false, + "defaultValue": "Notification Performance Dashboard" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the dashboard output, such as 'url' for a hosted dashboard link or 'json' for raw config data.", + "required": false, + "defaultValue": "url" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dashboard link or a configuration JSON for rendering the notification analytics dashboard." + }, + "aiAgent": { + "useCase": "Use this tool when a detailed overview of notification delivery and alert performance is needed, such as monitoring system health or user engagement via alerts over a selected period. It helps visualize key metrics to support decision-making and troubleshooting in communication systems.", + "limitations": "This tool does not send notifications or handle real-time updates; it only analyzes historical data and generates dashboard representations. It requires properly formatted input data and does not create visual dashboards directly but provides configuration or links.", + "examples": [ + "Generate a dashboard summarizing all email and push notifications from the last 30 days, including response times, output as a URL.", + "Create a JSON-configured dashboard with filtered SMS alert data for the past week with only delivery metrics, excluding response times." + ] + }, + "tags": [ + "notifications", + "dashboard", + "analytics", + "alerts", + "monitoring", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"notificationData\":[{\"id\":\"1\",\"type\":\"email\",\"status\":\"delivered\",\"timestamp\":\"2024-05-01T12:00:00Z\",\"responseTimeMs\":150},{\"id\":\"2\",\"type\":\"push\",\"status\":\"failed\",\"timestamp\":\"2024-05-01T12:05:00Z\",\"responseTimeMs\":null}],\"timeRange\":{\"start\":\"2024-04-01T00:00:00Z\",\"end\":\"2024-05-01T23:59:59Z\"},\"filterTypes\":[\"email\",\"push\"],\"includeResponseMetrics\":true,\"dashboardTitle\":\"Monthly Notification Report\",\"outputFormat\":\"url\"}", + "description": "Generate a monthly dashboard with email and push notification stats including response times as a URL." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "notifications.createDashboard", + "description": "Creates a customizable notification analytics dashboard based on specified metrics, filters, and visualization preferences. Accepts parameters defining data sources, notification event types, time range, and visualization widgets, then processes these inputs to generate an interactive dashboard summary providing insights on notification delivery, engagement, and failures.", + "category": "notifications", + "parameters": [ + { + "name": "dashboardName", + "type": "string", + "description": "The name identifier for the created dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source identifiers or endpoints to aggregate notification data from.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "notificationTypes", + "type": "array", + "description": "Types of notifications to include (e.g., email, SMS, push).", + "required": false, + "defaultValue": "[\"email\",\"sms\",\"push\"]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Time range filter with start and end ISO8601 datetime strings to limit the data displayed.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metrics to include, such as delivery rate, open rate, click rate, failure count.", + "required": true, + "defaultValue": "[\"deliveryRate\",\"openRate\",\"failureCount\"]" + }, + { + "name": "visualizations", + "type": "array", + "description": "Array specifying types of visual widgets (e.g., bar chart, line graph, pie chart) for displaying each metric.", + "required": false, + "defaultValue": "[\"lineChart\",\"barChart\"]" + }, + { + "name": "filters", + "type": "object", + "description": "Additional filters such as user segments, geographic regions, or platforms to refine dashboard data.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the dashboard ID, name, configuration details, and a URL to access the interactive visualization web interface." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate an interactive, metric-rich dashboard that visualizes notification system performance across multiple channels and dimensions. Ideal for monitoring notification delivery success, engagement metrics, and failure patterns over specific periods to guide operational and business decisions.", + "limitations": "This tool does not fetch raw notification data itself; it requires pre-existing data sources. It cannot generate dashboards for non-notification data or perform real-time data updates without backend support.", + "examples": [ + "Create a dashboard named 'Weekly Email Stats' showing delivery and open rates for email notifications over the last 7 days.", + "Generate a dashboard aggregating push and SMS notification failures with geographic filters for the past month.", + "Build a dashboard with bar and line charts for click rates and delivery rates across all notification types filtered by user segments." + ] + }, + "tags": [ + "notifications", + "dashboard", + "analytics", + "metrics", + "visualization", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"dashboardName\":\"Weekly Notification Overview\",\"dataSources\":[\"notifDb\",\"analyticsApi\"],\"notificationTypes\":[\"email\",\"push\"],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"metrics\":[\"deliveryRate\",\"openRate\",\"failureCount\"],\"visualizations\":[\"lineChart\",\"pieChart\"]}", + "description": "Creates a dashboard summarizing email and push notification delivery, opens, and failures during the first week of May 2024 with line and pie chart visualizations." + }, + { + "inputJson": "{\"dashboardName\":\"SMS Failure Tracker\",\"dataSources\":[\"smsLogs\"],\"notificationTypes\":[\"sms\"],\"metrics\":[\"failureCount\"],\"filters\":{\"region\":\"EMEA\"},\"visualizations\":[\"barChart\"]}", + "description": "Builds an SMS notification failure dashboard filtered by EMEA region, using bar charts for visualization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "notifications.createKPI", + "description": "Creates a notification alert based on specified Key Performance Indicator (KPI) thresholds. Accepts parameters defining the KPI metrics, thresholds, frequency, and recipients. Processes these inputs to schedule and configure notifications that alert stakeholders when KPI criteria are met or exceeded.", + "category": "notifications", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The name of the KPI to monitor for generating notifications.", + "required": true, + "defaultValue": "" + }, + { + "name": "thresholdValue", + "type": "number", + "description": "The numeric threshold that triggers the notification when the KPI reaches or exceeds this value.", + "required": true, + "defaultValue": "" + }, + { + "name": "comparisonOperator", + "type": "string", + "description": "Operator to compare KPI value to threshold (e.g., greater_than, less_than, equal_to).", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationFrequency", + "type": "string", + "description": "How often notifications are sent when KPI meets the condition (e.g., immediate, hourly, daily).", + "required": false, + "defaultValue": "immediate" + }, + { + "name": "recipients", + "type": "array", + "description": "List of email addresses or user IDs to receive the KPI notifications.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageTemplate", + "type": "string", + "description": "Custom message template used in the notification body, supporting placeholders for KPI values.", + "required": false, + "defaultValue": "KPI alert: {kpiName} has reached {currentValue}." + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag to enable or disable the KPI notification on creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object confirming creation status, notification ID, and summary of the configured KPI alert." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically set up real-time or periodic notifications based on KPI thresholds within analytics or monitoring platforms. It helps automate alerting of key business or performance metrics to relevant stakeholders.", + "limitations": "Does not analyze KPI data itself; expects KPI values and names to be defined and available elsewhere. Cannot monitor KPIs without integration to underlying data sources.", + "examples": [ + "Create a notification when website traffic drops below 1000 visits per day, sent immediately to marketing team.", + "Set up daily summary alerts when average order value exceeds $200.", + "Notify the finance team immediately if monthly revenue falls below targets." + ] + }, + "tags": [ + "notifications", + "KPI", + "analytics", + "alerts", + "thresholds", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"Monthly Revenue\",\"thresholdValue\":50000,\"comparisonOperator\":\"less_than\",\"notificationFrequency\":\"immediate\",\"recipients\":[\"finance@example.com\"],\"messageTemplate\":\"Alert: {kpiName} has dropped below threshold with a current value of {currentValue}.\",\"enabled\":true}", + "description": "Create an immediate notification alert for Monthly Revenue KPI dropping below $50,000 sent to the finance team." + }, + { + "inputJson": "{\"kpiName\":\"Website Traffic\",\"thresholdValue\":1000,\"comparisonOperator\":\"less_than\",\"notificationFrequency\":\"hourly\",\"recipients\":[\"marketing@example.com\"],\"enabled\":true}", + "description": "Set up hourly notifications when Website Traffic falls below 1000 visits, notifying marketing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "notifications.createComment", + "description": "Creates and sends a comment notification related to a specific entity or topic within a system. Accepts inputs such as message content, target user or group identifiers, and optional metadata like referencing an object or tagging users. Outputs a notification confirmation including comment ID and timestamp.", + "category": "notifications", + "parameters": [ + { + "name": "message", + "type": "string", + "description": "Text content of the comment to be sent in the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientIds", + "type": "array", + "description": "Array of user or group IDs who will receive the comment notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "relatedObjectId", + "type": "string", + "description": "Identifier of the related entity (e.g., ticket, document) this comment is associated with.", + "required": false, + "defaultValue": "" + }, + { + "name": "taggedUserIds", + "type": "array", + "description": "Optional array of user IDs tagged within the comment for additional alerting.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification, e.g., 'normal', 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "sendEmail", + "type": "boolean", + "description": "Whether to send an email copy of the comment notification to recipients.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Confirmation object including the unique comment ID, timestamp of creation, and status indicating if notification sending succeeded." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate and dispatch comment notifications to users in applications like project management, customer support, or collaboration platforms. It enables creating contextual messages tied to specific objects and targeting precise users or groups for alerting.", + "limitations": "This tool does not handle comment moderation, content validation, or storage beyond notification delivery. It also does not support rich media content or threaded conversations directly.", + "examples": [ + "Notify team members of a new comment on a support ticket with tagging of relevant specialists.", + "Send a high priority comment notification to a project group about an update on a document.", + "Create and deliver a comment notification with email alerts to specified users regarding a task status change." + ] + }, + "tags": [ + "notifications", + "comments", + "communication", + "alerting", + "collaboration", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"message\":\"Please review the latest update on the project plan.\",\"recipientIds\":[\"user123\",\"user456\"],\"relatedObjectId\":\"proj789\",\"taggedUserIds\":[\"user456\"],\"priority\":\"normal\",\"sendEmail\":true}", + "description": "Send a standard priority comment notification about a project to two users with email alert." + }, + { + "inputJson": "{\"message\":\"Urgent: client escalated issue requires immediate attention.\",\"recipientIds\":[\"supportTeam\"],\"priority\":\"high\",\"sendEmail\":false}", + "description": "Send a high priority comment alert to a support team group without email." + }, + { + "inputJson": "{\"message\":\"FYI: Document D123 has been approved.\",\"recipientIds\":[\"user789\"],\"relatedObjectId\":\"docD123\",\"sendEmail\":true}", + "description": "Notify a single user via email about document approval with relevant document ID." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "notifications.createVariable", + "description": "Creates or updates a variable used in notification templates or workflows. Accepts variable name, type, value, and optional metadata. Validates inputs and returns a confirmation with the stored variable details for use in dynamic notifications.", + "category": "notifications", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The name of the variable to create or update. Must be unique within the notification context.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable (e.g., string, number, boolean). This determines how the value is processed and displayed in notifications.", + "required": true, + "defaultValue": "string" + }, + { + "name": "variableValue", + "type": "string", + "description": "The value assigned to the variable, represented as a string but parsed based on variableType.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "An optional description explaining the purpose or usage of the variable in notifications.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs to store additional information about the variable such as scope, tags or constraints.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object confirming creation or update of the variable including its name, type, stored value (parsed by type), description, and metadata if provided." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically define or update variables that will be referenced in notification templates or workflows, enabling dynamic content generation based on variable data.", + "limitations": "This tool only manages variable creation and updates; it does not send notifications or evaluate variable usage in templates.", + "examples": [ + "Create a string variable named 'userName' with the value 'Alice' for personalized notifications.", + "Update a number variable 'discountRate' to 15 for calculating promotional notifications.", + "Add metadata tagging to a boolean variable 'isPremiumUser' indicating user subscription status." + ] + }, + "tags": [ + "notifications", + "variables", + "dynamic content", + "templates", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"userName\",\"variableType\":\"string\",\"variableValue\":\"Alice\",\"description\":\"Stores the recipient's name for personalized greetings.\"}", + "description": "Create a string variable named 'userName' with the value 'Alice' for use in notification templates." + }, + { + "inputJson": "{\"variableName\":\"discountRate\",\"variableType\":\"number\",\"variableValue\":\"15\",\"description\":\"Current discount rate applied to orders.\"}", + "description": "Create a numeric variable 'discountRate' to dynamically update promotional discounts." + }, + { + "inputJson": "{\"variableName\":\"isPremiumUser\",\"variableType\":\"boolean\",\"variableValue\":\"true\",\"metadata\":{\"scope\":\"user\",\"tags\":[\"subscription\",\"premium\"]}}", + "description": "Create a boolean variable indicating if the user has premium subscription status with additional metadata tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "notifications.createVideo", + "description": "Creates a video notification by combining visual elements like text, images, and sounds to produce a short, shareable video alert. Accepts inputs such as title, message, images, audio clips, duration, and style options, then renders and outputs a video file URL ready for distribution.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Main title text displayed prominently in the video notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Supporting message or description text shown in the notification video.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageUrls", + "type": "array", + "description": "Array of image URLs to include in the video as visual elements or backgrounds.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "audioUrl", + "type": "string", + "description": "Optional background audio or voiceover URL to accompany the video notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "Total length of the video notification in seconds; affects how content is paced.", + "required": false, + "defaultValue": "10" + }, + { + "name": "styleTheme", + "type": "string", + "description": "Visual style theme to apply (e.g., 'modern', 'minimal', 'corporate').", + "required": false, + "defaultValue": "modern" + }, + { + "name": "resolution", + "type": "string", + "description": "Video resolution (e.g., '720p', '1080p') for output quality.", + "required": false, + "defaultValue": "720p" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Video file format for output (e.g., 'mp4', 'webm').", + "required": false, + "defaultValue": "mp4" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the video URL, format, resolution, and duration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to create dynamic multimedia alert videos combining text, images, and audio for notifications, promotional messages, or announcements that require engaging visual delivery beyond plain text or static images.", + "limitations": "Cannot perform advanced video editing beyond template-based assembly; requires external URLs for images and audio, no content generation; video length limited by durationSeconds parameter.", + "examples": [ + "Create a 15-second promotional notification video with a title, message, two images, background music, and modern style in 1080p MP4 format.", + "Generate a minimal style 10-second video notification with just title and message for urgent alert delivery.", + "Produce a corporate theme 20-second video notification incorporating voiceover audio and multiple images for event promotion." + ] + }, + "tags": [ + "notifications", + "video", + "multimedia", + "alert", + "create", + "media", + "notification video" + ], + "examples": [ + { + "inputJson": "{\"title\":\"System Update\",\"message\":\"Your device will restart in 5 minutes.\",\"imageUrls\":[\"https://example.com/img1.png\"],\"audioUrl\":\"https://example.com/alert.mp3\",\"durationSeconds\":15,\"styleTheme\":\"modern\",\"resolution\":\"1080p\",\"outputFormat\":\"mp4\"}", + "description": "Creates a 15-second modern style notification video with an image and background audio in 1080p MP4." + }, + { + "inputJson": "{\"title\":\"Meeting Reminder\",\"message\":\"Weekly team sync starts soon.\",\"imageUrls\":[],\"audioUrl\":\"\",\"durationSeconds\":10,\"styleTheme\":\"minimal\",\"resolution\":\"720p\",\"outputFormat\":\"mp4\"}", + "description": "Generates a simple 10-second minimal style video notification with only text, no images or audio." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "notifications.createOpportunity", + "description": "Creates a notification alert representing a new business opportunity. Accepts details like opportunity title, description, priority, and target recipients, processes these to format a clear notification message, and outputs a notification object ready for dispatch or integration into notification systems.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or headline summarizing the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description providing context and details about the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the opportunity notification, e.g., 'low', 'medium', 'high'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers (e.g., emails or user IDs) who will receive the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Optional ISO 8601 date string for when the opportunity expires or requires attention by.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or categories to classify the opportunity notification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted notification with fields like id, title, message, priority, recipients, tags, creation timestamp, and due date if provided." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate structured notifications about new or existing business opportunities for targeted users or teams, enabling organized alerting through notification systems.", + "limitations": "This tool does not send the notification itself; it only creates and formats the notification data object. Integration with messaging or push notification services is required for delivery.", + "examples": [ + "Create an opportunity notification about a new sales lead for the sales team.", + "Notify specific users about an urgent partnership opportunity requiring quick follow-up.", + "Generate a tagged notification alerting managers of an approaching contract renewal deadline." + ] + }, + "tags": [ + "notification", + "business", + "opportunity", + "alert", + "sales", + "task", + "reminder" + ], + "examples": [ + { + "inputJson": "{\"title\":\"New Strategic Partnership\",\"description\":\"Potential partnership opportunity with ABC Corp to expand market reach.\",\"priority\":\"high\",\"recipients\":[\"sales_team@example.com\",\"partner_manager@example.com\"],\"dueDate\":\"2024-07-15T00:00:00Z\",\"tags\":[\"partnership\",\"urgent\"]}", + "description": "Create a high priority notification alerting sales and partner managers about a new partnership opportunity with a due date and tags." + }, + { + "inputJson": "{\"title\":\"Quarterly Client Review\",\"description\":\"Opportunity to review service effectiveness with key client beforehand.\",\"priority\":\"medium\",\"recipients\":[\"account_manager@example.com\"],\"tags\":[\"client\",\"review\"]}", + "description": "Generate a medium priority notification for an account manager regarding a client review opportunity, including tags for filtering." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "messaging.analyzeDashboard", + "description": "Analyzes real-time messaging and chat data to produce a comprehensive dashboard of communication metrics. It accepts chat logs, user activity data, and time range parameters. The tool processes message volumes, sentiment scores, active user counts, and response times, outputting structured analytics data suitable for dashboard visualization.", + "category": "messaging", + "parameters": [ + { + "name": "chatLogs", + "type": "array", + "description": "An array of chat message objects with timestamps, user IDs, and message content to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "userActivityData", + "type": "array", + "description": "An optional array of user activity objects including user IDs and activity timestamps to correlate engagement.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted timestamp to specify the start of analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted timestamp to specify the end of analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag to indicate whether to perform sentiment analysis on message content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone identifier to correctly interpret timestamps and display time-based data.", + "required": false, + "defaultValue": "UTC" + } + ], + "returns": { + "type": "object", + "description": "An object containing metrics such as totalMessages, messagesPerUser, sentimentSummary, activeUsersCount, averageResponseTime, and timeSeriesData for dashboard rendering." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate a detailed analytics dashboard from raw chat and messaging data to gain insights into user engagement, sentiment trends, and communication patterns over a specific period. Ideal for managing community platforms or internal messaging analysis.", + "limitations": "This tool does not provide real-time streaming analytics and depends on complete and accurate input data. It cannot generate visual dashboards but outputs structured data for visualization by other tools.", + "examples": [ + "Analyze messaging activity and sentiment for a team's Slack channel over the past week.", + "Get a report on user engagement and average response times from customer support chat logs last month.", + "Summarize daily message volumes and active user counts for a messaging app's user base over the last 24 hours." + ] + }, + "tags": [ + "messaging", + "analytics", + "dashboard", + "chat", + "sentiment-analysis", + "user-engagement" + ], + "examples": [ + { + "inputJson": "{\"chatLogs\":[{\"timestamp\":\"2024-06-01T09:00:00Z\",\"userId\":\"user1\",\"message\":\"Hello everyone!\"},{\"timestamp\":\"2024-06-01T09:01:30Z\",\"userId\":\"user2\",\"message\":\"Hi! How are you?\"}],\"userActivityData\":[{\"userId\":\"user1\",\"lastActive\":\"2024-06-01T09:05:00Z\"},{\"userId\":\"user2\",\"lastActive\":\"2024-06-01T09:02:00Z\"}],\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-02T00:00:00Z\",\"includeSentimentAnalysis\":true,\"timeZone\":\"UTC\"}", + "description": "Analyze basic two-user chat log with sentiment and activity data for one day" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "notifications.createArticle", + "description": "Creates a notification article suitable for sending as an alert or informational message. Accepts inputs like title, body content, target audience, urgency level, and optionally tags and an expiration date. Processes these inputs into a structured article object that can be used in notification systems or alert dashboards.", + "category": "notifications", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The headline or title of the notification article.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content text of the article providing details of the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "array", + "description": "List of user groups or segments to receive this notification (e.g., admins, users).", + "required": true, + "defaultValue": "[]" + }, + { + "name": "urgency", + "type": "string", + "description": "Urgency level of the notification (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "tags", + "type": "array", + "description": "Optional keywords or categories associated with the article for filtering or classification.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "expirationDate", + "type": "string", + "description": "Optional ISO 8601 datetime string when this notification should expire or become inactive.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured notification article object including all input fields plus a unique articleId and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool to generate well-structured notification articles for alerts, newsletters, or bulletins to be distributed via messaging pipelines or shown in notification centers. Ideal when you need to programmatically create messages with metadata for audience targeting and lifecycle management.", + "limitations": "This tool only creates the data structure for an article; it does not send or deliver the notification, nor does it handle formatting beyond plain text.", + "examples": [ + "Create a high urgency notification for all admins about a planned maintenance.", + "Generate an article with tags related to security updates for a specific user group.", + "Produce a general info notification expiring in 7 days for all registered users." + ] + }, + "tags": [ + "notifications", + "creation", + "article", + "alert", + "message", + "targeting", + "urgency" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Scheduled Maintenance Notice\",\"body\":\"Our system will undergo maintenance on July 10 between 1AM and 3AM UTC.\",\"targetAudience\":[\"admins\"],\"urgency\":\"high\",\"tags\":[\"maintenance\",\"system\"],\"expirationDate\":\"2024-07-11T00:00:00Z\"}", + "description": "Create a high urgency maintenance notification for admins expiring after the maintenance window." + }, + { + "inputJson": "{\"title\":\"Weekly Newsletter\",\"body\":\"Here's what's new this week in our platform.\",\"targetAudience\":[\"allUsers\"],\"urgency\":\"low\",\"tags\":[\"newsletter\"],\"expirationDate\":\"\"}", + "description": "Generate a low urgency weekly newsletter article for all users with no expiration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "messaging.analyzeOpportunity", + "description": "Analyzes messaging data related to a business opportunity by evaluating communication patterns, sentiment, and engagement metrics to provide insights on deal progress and recommendation on next actions. Accepts conversations, contacts involved, and opportunity metadata; outputs an analysis report with key indicators and suggested strategies.", + "category": "messaging", + "parameters": [ + { + "name": "conversationTexts", + "type": "array", + "description": "An array of text messages or chat logs related to the opportunity to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "A list of participant identifiers (e.g., user IDs or names) who are involved in the conversation.", + "required": true, + "defaultValue": "" + }, + { + "name": "opportunityId", + "type": "string", + "description": "Unique identifier for the business opportunity under analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Flag indicating whether to perform sentiment analysis on the conversation texts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeframeDays", + "type": "number", + "description": "Number of past days of conversation data to consider for analysis; defaults to all if not specified.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeEngagementMetrics", + "type": "boolean", + "description": "Determines if engagement stats such as message frequency and response time should be included in the analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including sentiment summary, communication frequency, engagement scores, opportunity health indicators, and recommended next steps." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate text-based interactions linked to sales or business deals to detect signals of opportunity progress, risks, or customer sentiment, helping decision-making on follow-up actions.", + "limitations": "The tool relies on textual conversation data and may not incorporate offline or non-messaging interactions. Sentiment and engagement metrics are based on available message content and may miss context nuances.", + "examples": [ + "Analyze the chat history of opportunity ID 'opp123' for sentiment and engagement scores.", + "Provide a summary of the messaging threads in the past 30 days for opportunity 'abc789' and recommend next actions.", + "Evaluate participant interactions in conversations related to opportunity 'sales456' to assess likelihood of closing." + ] + }, + "tags": [ + "messaging", + "analysis", + "business", + "opportunity", + "sales", + "sentiment", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"conversationTexts\":[\"Hi, just following up on the proposal.\",\"Thanks for the update, we'll review and get back.\",\"Are there any questions about the contract?\"],\"participants\":[\"client_A\",\"sales_B\"],\"opportunityId\":\"opp001\",\"sentimentAnalysis\":true,\"timeframeDays\":30,\"includeEngagementMetrics\":true}", + "description": "Analyze recent 30 days messaging for 'opp001' with sentiment and engagement data to assist sales team in opportunity evaluation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "messaging.downloadDataset", + "description": "Downloads a specified dataset of messaging or chat data from a configured messaging platform or chat service. Accepts parameters identifying the dataset by name or ID, optional filters like date range, and export format. Processes the request by fetching messages or chat logs matching criteria and outputs a downloadable file link or raw data object in the desired format.", + "category": "messaging", + "parameters": [ + { + "name": "datasetId", + "type": "string", + "description": "Unique identifier of the messaging dataset to download, typically provided by the chat service or platform.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Optional ISO 8601 start date to filter messages; only messages from this date forward are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Optional ISO 8601 end date to filter messages; only messages up to this date are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "exportFormat", + "type": "string", + "description": "Desired format of the exported dataset, e.g., 'json', 'csv', or 'txt'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include message metadata such as sender info, timestamps, and message IDs in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxMessages", + "type": "number", + "description": "Maximum number of messages to include in the dataset. Limits size of the download.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing a download URL for the dataset file and metadata about the dataset such as total messages included and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to retrieve historical messaging or chat data from a platform for analysis, compliance, or reporting. It facilitates fetching chat logs or message datasets on demand, optionally filtered by date or size limits, and returns a ready-to-download dataset in a common format.", + "limitations": "Cannot create datasets or modify messaging data; only downloads existing datasets. Requires valid dataset identifiers and access permissions. Large datasets may be truncated based on maxMessages limit. Does not support real-time streaming or continuous syncing.", + "examples": [ + "Download the chat logs dataset with ID 'chat123' in CSV format for last month.", + "Fetch up to 500 messages from dataset 'teamMessages' including metadata in JSON format.", + "Get the entire message dataset 'supportLogs' without date filtering as a plain text file." + ] + }, + "tags": [ + "messaging", + "dataset", + "download", + "chat", + "export", + "data" + ], + "examples": [ + { + "inputJson": "{\"datasetId\":\"chat123\",\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\",\"exportFormat\":\"csv\",\"includeMetadata\":true,\"maxMessages\":1000}", + "description": "Download messages from May 2024 from the dataset 'chat123' in CSV format including message metadata, limited to 1000 messages." + }, + { + "inputJson": "{\"datasetId\":\"teamMessages\",\"exportFormat\":\"json\",\"includeMetadata\":false}", + "description": "Download the full 'teamMessages' dataset in JSON format excluding metadata." + }, + { + "inputJson": "{\"datasetId\":\"supportLogs\",\"exportFormat\":\"txt\",\"maxMessages\":500}", + "description": "Download the first 500 messages from 'supportLogs' in a plain text format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "messaging.downloadImage", + "description": "Downloads an image from a given chat message or URL within a messaging platform. Accepts a message ID or direct image URL, fetches the image data, and outputs the image as a binary buffer or saved file path, enabling integration with chat applications requiring image retrieval.", + "category": "messaging", + "parameters": [ + { + "name": "messageId", + "type": "string", + "description": "The unique identifier of the chat message containing the image to download.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageUrl", + "type": "string", + "description": "Direct URL of the image to download. Used if messageId is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "saveToFile", + "type": "boolean", + "description": "If true, saves the downloaded image to disk at the given path; otherwise returns image data as a buffer.", + "required": false, + "defaultValue": "false" + }, + { + "name": "filePath", + "type": "string", + "description": "File system path where the image should be saved if saveToFile is true.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing image data buffer if not saved to file, or confirmation with file path if saved to disk." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to download images embedded in chat messages or referenced by URLs for processing, analysis, or saving as part of messaging integration workflows.", + "limitations": "Cannot download images from messages without access permissions or unsupported messaging platforms. Does not perform image validation or processing beyond download.", + "examples": [ + "Download the image from chat message with ID '12345'.", + "Fetch the image from URL 'https://example.com/image.png'.", + "Save the photo from message ID 'abc123' to '/tmp/chat-photo.jpg'." + ] + }, + "tags": [ + "messaging", + "download", + "image", + "chat", + "media", + "integration" + ], + "examples": [ + { + "inputJson": "{\"messageId\":\"msg7890\",\"saveToFile\":false}", + "description": "Download image binary from message with ID 'msg7890' without saving to file." + }, + { + "inputJson": "{\"imageUrl\":\"https://cdn.chatapp.com/images/photo.jpg\",\"saveToFile\":true,\"filePath\":\"/user/images/photo.jpg\"}", + "description": "Download image from URL and save it to specified file path." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "messaging.uploadDataset", + "description": "Uploads a structured dataset (e.g., CSV, JSON) to the messaging platform for use in automated chat responses, analytics, or training conversational AI models. Accepts dataset content or file URL, validates format, stores securely, and returns upload status and dataset ID for reference.", + "category": "messaging", + "parameters": [ + { + "name": "datasetContent", + "type": "string", + "description": "Raw dataset content as a string, typically CSV or JSON format. Either this or datasetUrl is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "datasetUrl", + "type": "string", + "description": "URL to download the dataset file if not providing content directly. Either this or datasetContent is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "datasetFormat", + "type": "string", + "description": "Format of the dataset file provided or referenced, e.g., 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + }, + { + "name": "datasetName", + "type": "string", + "description": "Human-readable name for the dataset to identify it within the messaging system.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing dataset with the same name if found (true to overwrite).", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "If true, validate dataset schema against messaging platform requirements before upload.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Result object containing upload success status, assigned dataset ID, and any error messages encountered during processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to load external datasets into a messaging platform to enable data-driven chat features, train or update conversational models, or perform analytics on communication patterns. It is useful when datasets are received as files or URLs and must be ingested securely and validated before use.", + "limitations": "This tool does not parse or interpret dataset content beyond basic format validation. It cannot correct dataset errors or enable real-time streaming of datasets. Large files may require chunking outside this tool.", + "examples": [ + "Upload a CSV file content for chatbot training.", + "Upload a JSON dataset from an accessible URL for analytics.", + "Replace an existing dataset in the messaging platform by overwriting." + ] + }, + "tags": [ + "messaging", + "upload", + "dataset", + "chatbot", + "integration", + "data ingestion" + ], + "examples": [ + { + "inputJson": "{\"datasetContent\":\"id,name,message\\n1,Alice,Hello\\n2,Bob,Hi\",\"datasetFormat\":\"csv\",\"datasetName\":\"ChatSamples\",\"overwriteExisting\":false}", + "description": "Uploading small CSV content directly to store chat sample data." + }, + { + "inputJson": "{\"datasetUrl\":\"https://example.com/chat_data.json\",\"datasetFormat\":\"json\",\"datasetName\":\"CustomerSupportLogs\",\"overwriteExisting\":true}", + "description": "Uploading a JSON dataset from a remote URL and overwriting existing dataset with the same name." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "messaging.formatWord", + "description": "Formats a given word according to specified text styles suitable for real-time messaging contexts. Accepts a word string and applies formatting such as bold, italic, underline, strikethrough, or uppercase transformations. Returns the word wrapped with appropriate markdown or messaging platform syntax for styling.", + "category": "messaging", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single word or token to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to format the word in bold.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to format the word in italic.", + "required": false, + "defaultValue": "false" + }, + { + "name": "underline", + "type": "boolean", + "description": "Whether to underline the word, if supported by the platform.", + "required": false, + "defaultValue": "false" + }, + { + "name": "strikethrough", + "type": "boolean", + "description": "Whether to apply strikethrough formatting to the word.", + "required": false, + "defaultValue": "false" + }, + { + "name": "uppercase", + "type": "boolean", + "description": "Whether to convert the word to uppercase letters.", + "required": false, + "defaultValue": "false" + }, + { + "name": "platform", + "type": "string", + "description": "Target messaging platform to tailor formatting syntax (e.g., 'markdown', 'slack', 'discord').", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted word string ready to be inserted into a messaging conversation with proper style formatting." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to style or emphasize specific words in messages for clarity, emphasis, or presentation purposes, adapting formatting to the messaging platform's syntax constraints.", + "limitations": "Cannot format phrases or entire sentences; only single words. Not all platforms support all formatting styles, and output depends on the specified platform compatibility.", + "examples": [ + "Format the word 'hello' to be bold and italic in markdown.", + "Convert the word 'warning' to uppercase and strikethrough for Slack.", + "Underline the word 'important' for Discord chat." + ] + }, + "tags": [ + "formatting", + "word", + "messaging", + "text-style", + "real-time", + "chat", + "emphasis" + ], + "examples": [ + { + "inputJson": "{\"word\":\"alert\",\"bold\":true,\"italic\":false,\"underline\":false,\"strikethrough\":false,\"uppercase\":false,\"platform\":\"markdown\"}", + "description": "Format the word 'alert' in bold for markdown." + }, + { + "inputJson": "{\"word\":\"update\",\"bold\":false,\"italic\":true,\"underline\":true,\"strikethrough\":false,\"uppercase\":false,\"platform\":\"discord\"}", + "description": "Format the word 'update' italic and underlined for Discord." + }, + { + "inputJson": "{\"word\":\"notice\",\"bold\":false,\"italic\":false,\"underline\":false,\"strikethrough\":true,\"uppercase\":true,\"platform\":\"slack\"}", + "description": "Format the word 'NOTICE' uppercase with strikethrough for Slack." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "messaging.uploadJSON", + "description": "Uploads structured JSON data to a specified real-time messaging channel or chat session, enabling the integration of dynamic data payloads directly into live conversations. Accepts JSON objects as input, optionally tags metadata, and returns an upload confirmation with status and message details.", + "category": "messaging", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "The identifier of the target messaging channel or conversation where JSON data will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "jsonData", + "type": "object", + "description": "The JSON object containing structured data to upload into the messaging channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token required for authorization to post messages in the target channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata key-value pairs to associate with the uploaded JSON data for context or processing.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level assigned to the message; can influence delivery or highlighting (e.g., normal, high).", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status ('success' or 'failure'), a message for details, and optionally a messageId referencing the uploaded content." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to embed structured JSON content into a live messaging environment, such as posting configuration details, status updates, or data snapshots directly into chat channels for real-time collaboration or monitoring. It should be used when structured data transfer in chat is necessary, with authentication and targeting of specific channels.", + "limitations": "Cannot parse or modify JSON content; only uploads provided JSON as-is. Does not support large files beyond practical message size limits. Requires valid authentication and channel identifiers.", + "examples": [ + "Upload system status JSON to the #alerts channel for team notifications.", + "Post user configuration JSON data into a project management chatroom.", + "Send real-time sensor data JSON to a monitoring channel with high priority." + ] + }, + "tags": [ + "messaging", + "upload", + "JSON", + "real-time", + "chat integration", + "data upload", + "API" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"general\",\"jsonData\":{\"event\":\"userJoined\",\"userId\":\"12345\",\"timestamp\":\"2024-06-01T12:34:56Z\"},\"authToken\":\"abcd1234token\",\"metadata\":{\"source\":\"bot\"},\"priority\":\"normal\"}", + "description": "Uploading a user join event JSON payload to the 'general' channel with normal priority." + }, + { + "inputJson": "{\"channelId\":\"alerts\",\"jsonData\":{\"alertType\":\"temperatureThreshold\",\"value\":78.5,\"units\":\"Celsius\"},\"authToken\":\"secureAuthTokenXYZ\",\"priority\":\"high\"}", + "description": "Uploading a high priority temperature alert JSON to the 'alerts' channel." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "messaging.formatDataset", + "description": "Formats a structured dataset for messaging contexts by converting data arrays or objects into user-friendly chat message formats such as tables, lists, or JSON strings. Accepts datasets as arrays or objects, applies specified formatting style, and outputs a string optimized for real-time messaging display.", + "category": "messaging", + "parameters": [ + { + "name": "dataset", + "type": "object", + "description": "The dataset to format; can be an array of records or an object representing data entries.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The desired output format style, e.g., 'table', 'list', 'json', or 'csv'. Determines how the dataset is transformed into a message string.", + "required": true, + "defaultValue": "table" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include headers or keys in the output when applicable, such as in table or CSV formats.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to include in the output to keep the message concise; excess data is truncated with indication.", + "required": false, + "defaultValue": "10" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to use for CSV format. Ignored for other formats.", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'formattedMessage' string optimized for real-time messaging display of the input dataset in the chosen format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to present structured data or datasets within chat or messaging platforms in a clear, readable format. It helps convert raw data into appropriately formatted strings such as tables or lists that are easy to read conversationally. Ideal for summarizing API data, logs, stats, or any tabular information for messaging contexts.", + "limitations": "Cannot render complex rich media like images or interactive elements. Formatting is limited to plain text styles appropriate for messaging (tables, lists, JSON, CSV). Very large datasets should be truncated to avoid oversized messages.", + "examples": [ + "Format the user data JSON into a readable table for chat display.", + "Convert a list of alerts into a bulleted list message.", + "Output recent log entries as CSV format text for easy copy-pasting." + ] + }, + "tags": [ + "messaging", + "formatting", + "dataset", + "chat", + "real-time", + "table", + "list", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"name\":\"Alice\",\"score\":92},{\"name\":\"Bob\",\"score\":87}],\"formatStyle\":\"table\",\"includeHeaders\":true,\"maxRows\":5}", + "description": "Formats a small array of user scores into a readable table for messaging." + }, + { + "inputJson": "{\"dataset\":[\"Task 1 completed\",\"Task 2 pending\",\"Task 3 in progress\"],\"formatStyle\":\"list\",\"includeHeaders\":false}", + "description": "Formats a simple array of status messages into a bulleted list." + }, + { + "inputJson": "{\"dataset\":{\"id\":123,\"temperature\":21.6,\"humidity\":58},\"formatStyle\":\"json\"}", + "description": "Formats a JSON object representing sensor data as a JSON string message." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "messaging.formatJSON", + "description": "Formats a given JSON string or object into a human-readable, properly indented string for displaying in messaging or chat interfaces. Accepts raw JSON string or object input, applies indentation and optional syntax highlighting, and outputs a formatted JSON string suitable for user-friendly display.", + "category": "messaging", + "parameters": [ + { + "name": "jsonInput", + "type": "string", + "description": "Raw JSON string or object to be formatted into readable JSON text.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for each indentation level; helps control output readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "addSyntaxHighlighting", + "type": "boolean", + "description": "If true, adds basic syntax highlighting tags for JSON keys and values to improve visual clarity in messaging clients that support styled text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "If true, sorts the keys of JSON objects alphabetically before formatting to improve consistency and readability.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "A formatted JSON string with indentation, optional sorting and syntax highlighting, ready for display in messaging and chat systems." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw JSON data into a clean, readable format suitable for sending or displaying in real-time messaging and chat applications. It helps make JSON payloads human-friendly by adding indentation, sorting keys optionally, and optionally applying syntax highlighting tags supported by the client.", + "limitations": "This tool does not validate JSON schema, nor does it handle extremely large JSON objects efficiently. It also cannot customize the highlighting beyond simple boolean enable/disable and does not convert JSON to other data formats.", + "examples": [ + "Format a raw JSON string with 4 spaces indentation for a chat message.", + "Pretty-print an object converting it to a readable JSON string with keys sorted alphabetically.", + "Format JSON string with syntax highlighting enabled for enhanced visual display in chat clients." + ] + }, + "tags": [ + "messaging", + "formatting", + "JSON", + "chat", + "readability", + "syntaxHighlighting", + "prettyPrint" + ], + "examples": [ + { + "inputJson": "{\"jsonInput\":\"{\\\"user\\\":\\\"alice\\\",\\\"messages\\\":[\\\"hello\\\",\\\"world\\\"]}\",\"indentation\":4,\"addSyntaxHighlighting\":false,\"sortKeys\":false}", + "description": "Format a raw JSON string with 4 spaces indentation for messaging display." + }, + { + "inputJson": "{\"jsonInput\":\"{\\\"b\\\":2,\\\"a\\\":1}\",\"indentation\":2,\"addSyntaxHighlighting\":true,\"sortKeys\":true}", + "description": "Format JSON string with syntax highlighting and alphabetically sorted keys." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "messaging.formatTest", + "description": "Formats a code snippet written as a test for messaging or chat integration environments. Accepts test code as a string and processes it to apply consistent indentation, syntax highlighting markers, and line breaks suitable for messaging platform display. Returns the formatted test code as a string ready for sending in chat or messaging tools.", + "category": "messaging", + "parameters": [ + { + "name": "codeSnippet", + "type": "string", + "description": "Raw test code snippet as a string that needs formatting", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the test code to enable proper formatting and highlighting (e.g., 'javascript', 'python')", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output", + "required": false, + "defaultValue": "2" + }, + { + "name": "addLineNumbers", + "type": "boolean", + "description": "Whether to prepend line numbers to each line of the formatted test code", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted test code string optimized for messaging platforms with consistent indentation and optional line numbering." + }, + "aiAgent": { + "useCase": "Use this tool when needing to share or display test code related to messaging/chat integrations in a clear, readable format within chat or messaging platforms, ensuring code blocks maintain readability and structure across devices and clients.", + "limitations": "Does not execute or validate the test code logic, only formats the code snippet text for messaging display. Language-specific formatting is basic and not a substitute for full IDE or linter formatting.", + "examples": [ + "Format a JavaScript Jest test snippet with 4 space indentation and line numbers for sharing in Slack.", + "Format a simple Python unittest snippet for readable display in Microsoft Teams chat without line numbers." + ] + }, + "tags": [ + "messaging", + "formatting", + "test", + "code", + "chat", + "syntax-highlighting" + ], + "examples": [ + { + "inputJson": "{\"codeSnippet\":\"test(\\\"should send message\\\", () => {expect(sendMessage(\\\"hello\\\")).toBe(true);});\",\"language\":\"javascript\",\"indentation\":4,\"addLineNumbers\":true}", + "description": "Format a JavaScript test snippet with 4-space indentation and line numbers for sharing in chat." + }, + { + "inputJson": "{\"codeSnippet\":\"def test_send_message():\\n assert send_message(\\\"hello\\\") == True\",\"language\":\"python\",\"indentation\":2,\"addLineNumbers\":false}", + "description": "Format a Python unittest snippet with 2-space indentation without line numbers for chat." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "messaging.formatContract", + "description": "Formats an unstructured contract text or contract data input into a standardized, readable legal contract format suitable for messaging platforms. It accepts raw contract text or JSON contract data, applies formatting rules including sections, clauses, numbering, and styling, and outputs a formatted contract string optimized for chats or messaging systems that support rich text or markdown.", + "category": "messaging", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "Raw unformatted contract text input to be formatted.", + "required": false, + "defaultValue": "" + }, + { + "name": "contractData", + "type": "object", + "description": "Structured contract data in JSON representing clauses, parties, and terms to format into contract text.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Style of formatting output, e.g., 'markdown', 'plainText', 'html'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "includeClauseNumbers", + "type": "boolean", + "description": "Whether to include clause numbering in the formatted contract.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length for wrapping text in the formatted contract.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the formatted contract as a string and metadata indicating formatting style and sections count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send or display legal contract information within messaging or chat platforms and requires the contract to be formatted clearly and readably, preserving clauses and structure. It is useful to convert raw contract text or JSON contract data into a user-friendly contract presentation tailored to messaging context.", + "limitations": "Cannot validate legal correctness or content of contract, only formats given text/data. May not fully support complex formatting beyond basic styling and numbering as allowed by the target messaging platform.", + "examples": [ + "Format raw contract text for display in Slack message.", + "Convert structured JSON contract data into markdown-style contract for chat message.", + "Reformat a dense contract into chunked clauses with numbering for clearer reading in chat." + ] + }, + "tags": [ + "messaging", + "formatting", + "contract", + "legal", + "chat", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This Agreement is made on the 1st of Jan, 2024. The parties agree to the following terms...\",\"formatStyle\":\"markdown\",\"includeClauseNumbers\":true}", + "description": "Format raw contract text input into markdown formatted contract with numbered clauses." + }, + { + "inputJson": "{\"contractData\":{\"title\":\"Service Agreement\",\"clauses\":[{\"title\":\"Scope\",\"text\":\"Provider agrees to...\"},{\"title\":\"Payment\",\"text\":\"Client will pay...\"}]},\"formatStyle\":\"plainText\",\"maxLineLength\":60}", + "description": "Format structured JSON contract data into plain text contract with maximum line length of 60 characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "messaging.draftReport", + "description": "Generates a concise, structured draft report based on key points or chat conversation history provided as input. The tool processes textual inputs, optionally filtering or summarizing conversations, and outputs a formatted report suitable for messaging or communication contexts.", + "category": "messaging", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the report to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentSummary", + "type": "string", + "description": "A brief summary or the main discussion points to include in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to include timestamps for each summarized point in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person or system generating the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Preferred formatting style for the report output, e.g., 'bulletPoints', 'paragraph','markdown'.", + "required": false, + "defaultValue": "bulletPoints" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the draft report in characters. Helps keep the report concise.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the draft report text and metadata such as character count and format style." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a readable draft report summarizing chat conversations or discussion points for messaging platforms or collaborative environments. It helps transform raw or summarized textual data into an organized report format suitable for sharing.", + "limitations": "This tool does not analyze sentiment or detect factual inaccuracies. It requires input summaries or conversation text to function and does not generate reports from non-text media.", + "examples": [ + "Create a meeting summary report from chat logs.", + "Draft a project update report based on key discussion points.", + "Generate a report summarizing customer feedback conversation" + ] + }, + "tags": [ + "messaging", + "reporting", + "summary", + "chat", + "communication", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Weekly Team Sync\",\"contentSummary\":\"- Discussed project deadlines and next steps\\n- Reviewed blockers and assigned action items\\n- Planned next sprint goals\",\"includeTimestamp\":true,\"authorName\":\"AI Assistant\",\"formatStyle\":\"bulletPoints\",\"maxLength\":500}", + "description": "Draft a bullet point report with timestamps and author name included, summarizing the weekly team sync discussion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "messaging.buildContainer", + "description": "Constructs and configures a Docker container environment tailored for real-time messaging and chat applications. Accepts container base image, environment variables, port mappings, and messaging service configurations to produce a ready-to-deploy container specification with necessary middleware and connection setups.", + "category": "messaging", + "parameters": [ + { + "name": "baseImage", + "type": "string", + "description": "Docker base image name (e.g., 'node:16-alpine') to build the container from.", + "required": true, + "defaultValue": "" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set inside the container for configuration purposes.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "portMappings", + "type": "array", + "description": "List of port mappings from host to container (e.g., [{\"hostPort\":3000,\"containerPort\":3000}]) to expose messaging service ports.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "messagingService", + "type": "string", + "description": "The messaging service or protocol to configure inside the container (e.g., 'MQTT', 'WebSocket', 'XMPP').", + "required": true, + "defaultValue": "" + }, + { + "name": "loggingEnabled", + "type": "boolean", + "description": "Flag to enable detailed logging inside the container for debugging messaging traffic.", + "required": false, + "defaultValue": "false" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Optional CPU and memory limits for the container in keys 'cpu' (number cores) and 'memory' (MB).", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the finalized container configuration including Dockerfile content, environment setup, and networking details ready for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate a container environment optimized for real-time messaging applications, ensuring correct base image, environmental setup, service configuration, and connectivity. It supports scenarios like deploying chatbots, messaging middleware, or real-time communication servers within container orchestration environments.", + "limitations": "This tool does not build or run the container but only configures the container specification. It does not handle service orchestration or deployment to platforms like Kubernetes directly.", + "examples": [ + "Create a container with Node.js base image for WebSocket messaging with ports 8080 mapped.", + "Build a lightweight MQTT broker container with environment variables for authentication.", + "Generate a container setup with logging enabled and CPU/memory limits for an XMPP service." + ] + }, + "tags": [ + "messaging", + "container", + "docker", + "real-time", + "chat", + "build", + "infrastructure", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"baseImage\":\"node:16-alpine\",\"environmentVariables\":{\"NODE_ENV\":\"production\",\"API_KEY\":\"abc123\"},\"portMappings\":[{\"hostPort\":8080,\"containerPort\":8080}],\"messagingService\":\"WebSocket\",\"loggingEnabled\":true,\"resourceLimits\":{\"cpu\":1,\"memory\":512}}", + "description": "Creates a Node.js based WebSocket container with production environment, exposes port 8080, enables logging, and sets CPU/memory limits." + }, + { + "inputJson": "{\"baseImage\":\"eclipse-mosquitto:2\",\"environmentVariables\":{},\"portMappings\":[{\"hostPort\":1883,\"containerPort\":1883}],\"messagingService\":\"MQTT\",\"loggingEnabled\":false,\"resourceLimits\":{}}", + "description": "Builds a container for MQTT using the Eclipse Mosquitto image exposing default MQTT port without logging or resource limits." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "messaging.composeWord", + "description": "Composes a single word tailored for messaging contexts, accepting parameters specifying the desired tone, formality level, and additional styling options. It processes these inputs to generate a word that fits the intended usage for real-time chat or messaging platforms and returns the composed word as output.", + "category": "messaging", + "parameters": [ + { + "name": "tone", + "type": "string", + "description": "Desired emotional tone of the word, e.g., friendly, urgent, neutral.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "formalityLevel", + "type": "string", + "description": "Formality level of the word to compose, e.g., formal, informal.", + "required": false, + "defaultValue": "informal" + }, + { + "name": "partOfSpeech", + "type": "string", + "description": "Specify the part of speech for the word, e.g., noun, verb, adjective, adverb.", + "required": false, + "defaultValue": "noun" + }, + { + "name": "lengthLimit", + "type": "number", + "description": "Maximum number of characters allowed for the word; zero means no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeSlang", + "type": "boolean", + "description": "Whether to consider slang or colloquial terms when composing the word.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed word string and metadata including tone, formality, and part of speech." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate a single word optimized for messaging or chat, adapting to tone and formality preferences to suit conversational contexts or branding voice in real-time communication systems. It helps produce context-appropriate vocabulary on demand.", + "limitations": "This tool cannot generate full sentences or phrases, only single words. It may not produce specialized technical vocabulary without appropriate prompt context. It does not handle multi-word expressions or idioms.", + "examples": [ + "Compose a friendly adjective for a chat greeting.", + "Generate a formal noun suitable for a business message.", + "Create a short informal verb including slang when possible." + ] + }, + "tags": [ + "messaging", + "composition", + "word generation", + "tone", + "formality", + "chat", + "real-time" + ], + "examples": [ + { + "inputJson": "{\"tone\":\"friendly\",\"formalityLevel\":\"informal\",\"partOfSpeech\":\"adjective\",\"lengthLimit\":0,\"includeSlang\":false}", + "description": "Generate a friendly, informal adjective word with no length limit and no slang." + }, + { + "inputJson": "{\"tone\":\"neutral\",\"formalityLevel\":\"formal\",\"partOfSpeech\":\"noun\",\"lengthLimit\":10,\"includeSlang\":false}", + "description": "Generate a neutral, formal noun with a maximum of 10 characters, no slang." + }, + { + "inputJson": "{\"tone\":\"urgent\",\"formalityLevel\":\"informal\",\"partOfSpeech\":\"verb\",\"lengthLimit\":6,\"includeSlang\":true}", + "description": "Generate an urgent, informal verb word including slang terms, max length 6 characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "messaging.buildPullRequest", + "description": "This tool generates a formatted pull request message suitable for posting in real-time messaging platforms. It accepts details like branch names, title, description, reviewers, and optionally links to issue trackers. It processes and formats these inputs to create a clear, standardized pull request notification for chat integration.", + "category": "messaging", + "parameters": [ + { + "name": "sourceBranch", + "type": "string", + "description": "The name of the source branch for the pull request", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The name of the target branch to merge into", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title or headline of the pull request", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description or summary of the pull request changes", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of usernames or identifiers of requested reviewers", + "required": false, + "defaultValue": "[]" + }, + { + "name": "issueLink", + "type": "string", + "description": "URL to the related issue or ticket for reference", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDiffStats", + "type": "boolean", + "description": "Whether to include diff statistics such as number of files changed, additions, deletions", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted message string for posting in the messaging platform, including all relevant pull request details" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a well-structured pull request notification message for a chat or messaging platform. It is ideal for bots that monitor code repository events or for generating human-friendly summaries before posting to channels like Slack or Microsoft Teams. This facilitates clear communication and collaboration during development cycles.", + "limitations": "This tool does not create or submit the actual pull request in a code repository; it only builds formatted messages for messaging tools. It does not handle authentication or API interactions with version control systems.", + "examples": [ + "Create a pull request message announcing a new feature branch merging into main with specified reviewers.", + "Generate a message including an issue link and diff stats summarizing the pull request changes.", + "Build a pull request chat message with only the required parameters: branch names and title." + ] + }, + "tags": [ + "messaging", + "pull request", + "chat integration", + "notification", + "code collaboration" + ], + "examples": [ + { + "inputJson": "{\"sourceBranch\":\"feature/login-improvements\",\"targetBranch\":\"main\",\"title\":\"Improve login flow UX\",\"description\":\"Refactor login UI, add error handling, and enhance security checks.\",\"reviewers\":[\"alice\",\"bob\"],\"issueLink\":\"https://tracker.example.com/issues/123\",\"includeDiffStats\":true}", + "description": "Creates a detailed pull request message with reviewers and issue link, including diff stats." + }, + { + "inputJson": "{\"sourceBranch\":\"bugfix/typo-fix\",\"targetBranch\":\"develop\",\"title\":\"Fix typo in README\"}", + "description": "Generates a minimal pull request message with only required fields for a simple text fix." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "messaging.buildBranch", + "description": "Creates a new messaging branch within a chat or messaging platform codebase by initializing the necessary structures and configurations. Accepts a base branch name and optional metadata, processes branch creation including setting up messaging event handlers, and returns details about the new branch created, including its identifier and status.", + "category": "messaging", + "parameters": [ + { + "name": "baseBranchName", + "type": "string", + "description": "The name of the base code branch to branch from, typically a stable or main branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "newBranchName", + "type": "string", + "description": "The desired name for the new messaging branch to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "messagingPlatform", + "type": "string", + "description": "The target messaging platform or framework (e.g., Slack, Microsoft Teams) for which the branch is customized.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeEventHandlers", + "type": "boolean", + "description": "Whether to include default event handler stubs in the new branch code for message events.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional metadata and settings for branch creation such as description, author, or configuration flags.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the new branch ID, name, messaging platform, creation status, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate or assist with initializing new branches in a code repository specifically geared towards messaging applications or chat integrations. Helpful when creating multiple environment branches customized for different messaging platforms or features.", + "limitations": "This tool does not perform the actual code merge or deployment; it only sets up the new branch with initial messaging-specific code infrastructure. It requires access to the version control system and permission to create branches.", + "examples": [ + "Create a new branch 'feature/slack-integration' based off 'main' for Slack messaging platform with event handlers enabled.", + "Build a messaging branch named 'dev/teams-bot' from 'development' branch without event handlers for Microsoft Teams." + ] + }, + "tags": [ + "messaging", + "branch", + "codebase", + "development", + "chat", + "integration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"baseBranchName\":\"main\",\"newBranchName\":\"feature/slack-integration\",\"messagingPlatform\":\"Slack\",\"includeEventHandlers\":true,\"metadata\":{\"author\":\"devUser\",\"description\":\"Slack integration features\"}}", + "description": "Create a 'feature/slack-integration' branch from 'main' with Slack event handlers and metadata." + }, + { + "inputJson": "{\"baseBranchName\":\"dev\",\"newBranchName\":\"dev/teams-bot\",\"messagingPlatform\":\"Microsoft Teams\",\"includeEventHandlers\":false,\"metadata\":{}}", + "description": "Create 'dev/teams-bot' branch from 'dev' without event handlers for Teams bot development." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "messaging.buildEndpoint", + "description": "Constructs a real-time messaging endpoint configuration given protocol, authentication, and routing options. Accepts parameters such as protocol type (e.g., WebSocket, MQTT), security credentials, allowed message types, and optional middleware integrations. Outputs a JSON configuration object representing a ready-to-use messaging endpoint setup for integration in chat or IoT systems.", + "category": "messaging", + "parameters": [ + { + "name": "protocol", + "type": "string", + "description": "Specifies the messaging protocol for the endpoint, e.g., 'WebSocket', 'MQTT', 'SSE'.", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "An object detailing authentication method and credentials, e.g., token or API key info.", + "required": true, + "defaultValue": "" + }, + { + "name": "allowedMessageTypes", + "type": "array", + "description": "List of allowed message types (e.g., 'text', 'image', 'json').", + "required": false, + "defaultValue": "[\"text\"]" + }, + { + "name": "maxConnections", + "type": "number", + "description": "Maximum number of concurrent client connections allowed.", + "required": false, + "defaultValue": "100" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of message traffic for debugging.", + "required": false, + "defaultValue": "false" + }, + { + "name": "middleware", + "type": "array", + "description": "Array of middleware component names or settings to process messages, such as filters or transformers.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns a JSON object representing the fully configured messaging endpoint ready for deployment or integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or configure a messaging endpoint for real-time chat or IoT messaging that requires specific protocols, authentication, and message handling rules. It helps automate setting up endpoints that are compatible with client applications or services.", + "limitations": "Does not provision actual server infrastructure or deploy the endpoint. It only generates the configuration object. It cannot validate connectivity or runtime behavior.", + "examples": [ + "Create a WebSocket endpoint with token authentication for text and JSON messages.", + "Build an MQTT endpoint allowing image messaging with API key authentication and logging enabled.", + "Generate a server-sent events (SSE) endpoint with no authentication and default settings." + ] + }, + "tags": [ + "messaging", + "endpoint", + "configuration", + "real-time", + "chat", + "protocol", + "integration" + ], + "examples": [ + { + "inputJson": "{\"protocol\":\"WebSocket\",\"authentication\":{\"type\":\"token\",\"token\":\"abc123\"},\"allowedMessageTypes\":[\"text\",\"json\"],\"maxConnections\":200,\"enableLogging\":true,\"middleware\":[\"filterProfanity\"]}", + "description": "Build a WebSocket messaging endpoint using token authentication allowing text and JSON messages with logging and a profanity filter." + }, + { + "inputJson": "{\"protocol\":\"MQTT\",\"authentication\":{\"type\":\"apiKey\",\"key\":\"key123\"},\"allowedMessageTypes\":[\"image\"],\"maxConnections\":50,\"enableLogging\":false,\"middleware\":[]}", + "description": "Create an MQTT endpoint with API key authentication supporting image messages without logging or middleware." + }, + { + "inputJson": "{\"protocol\":\"SSE\",\"authentication\":{},\"allowedMessageTypes\":[\"text\"],\"maxConnections\":100,\"enableLogging\":false,\"middleware\":[]}", + "description": "Configure a simple Server-Sent Events endpoint with no authentication and default message settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "messaging.buildModule", + "description": "Constructs a customizable messaging module for real-time chat integration in applications. Accepts configuration inputs including supported protocols, message format options, user authentication methods, and UI customization settings. Outputs a ready-to-deploy code module encapsulating messaging features tailored to the specified parameters.", + "category": "messaging", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The unique name identifier for the messaging module to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedProtocols", + "type": "array", + "description": "Array of messaging protocols to support, e.g., ['WebSocket', 'MQTT', 'XMPP'].", + "required": true, + "defaultValue": "[\"WebSocket\"]" + }, + { + "name": "messageFormat", + "type": "string", + "description": "Preferred message data format such as 'JSON', 'XML', or 'PlainText'.", + "required": true, + "defaultValue": "JSON" + }, + { + "name": "enableEncryption", + "type": "boolean", + "description": "Flag to enable message encryption for secure communication.", + "required": false, + "defaultValue": "false" + }, + { + "name": "authenticationMethod", + "type": "string", + "description": "User authentication method supported, e.g., 'OAuth2', 'JWT', 'None'.", + "required": false, + "defaultValue": "None" + }, + { + "name": "uiTheme", + "type": "string", + "description": "Optional UI theme style applied to the chat interface (e.g., 'light', 'dark').", + "required": false, + "defaultValue": "light" + }, + { + "name": "maxConcurrentConnections", + "type": "number", + "description": "Maximum number of simultaneous client connections allowed by the module.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated messaging module's source code as a string, the list of included protocols, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a fully functional messaging module with real-time chat capabilities tailored to specific application requirements, protocols, and security options. Ideal for integrating chat into web or mobile applications with flexible customization.", + "limitations": "The tool does not handle deployment infrastructure, integration with backend services beyond messaging protocols, or actual runtime environment setup. It also cannot automatically test the module or ensure compatibility with every possible platform.", + "examples": [ + "Build a messaging module named 'ChatPro' supporting WebSocket with JSON messages and OAuth2 authentication.", + "Create a lightweight chat module with MQTT protocol, plain text messages, no encryption, and a dark UI theme.", + "Generate a messaging module with XMPP protocol supporting encrypted messages and JWT authentication, supporting up to 50 concurrent clients." + ] + }, + "tags": [ + "messaging", + "module generation", + "real-time chat", + "protocol support", + "code generation", + "security", + "customization" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"ChatPro\",\"supportedProtocols\":[\"WebSocket\"],\"messageFormat\":\"JSON\",\"enableEncryption\":true,\"authenticationMethod\":\"OAuth2\",\"uiTheme\":\"light\",\"maxConcurrentConnections\":100}", + "description": "Generate a WebSocket-based JSON messaging module with encryption and OAuth2 authentication." + }, + { + "inputJson": "{\"moduleName\":\"LiteChat\",\"supportedProtocols\":[\"MQTT\"],\"messageFormat\":\"PlainText\",\"enableEncryption\":false,\"authenticationMethod\":\"None\",\"uiTheme\":\"dark\",\"maxConcurrentConnections\":20}", + "description": "Build a lightweight MQTT messaging module with plain text messages and no authentication." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "messaging.generateQuery", + "description": "Generates structured query strings for real-time messaging platforms based on filtering criteria, keywords, and user context. Accepts parameters like keywords array, user ID, date range, and flags for including metadata. Outputs a query string compatible with messaging APIs for searching or filtering messages.", + "category": "messaging", + "parameters": [ + { + "name": "keywords", + "type": "array", + "description": "List of keywords or phrases to include in the query filter", + "required": true, + "defaultValue": "[]" + }, + { + "name": "userId", + "type": "string", + "description": "User identifier to filter messages sent or received by this user", + "required": false, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 start date to filter messages from this date", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 end date to filter messages up to this date", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating if the query should include message metadata fields", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of messages to retrieve", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string for messaging API usage, and optionally parameters metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create precise query strings to filter or search messages within real-time messaging platforms or chat services. It is especially helpful when composing complex filters including keywords, user scoping, date ranges, or inclusion of message metadata. By generating standardized query strings, the agent can interact with APIs that require structured queries.", + "limitations": "This tool does not execute the query or fetch messages; it only builds query strings. It assumes standard messaging query syntax and may require adaptation for specific platform dialects.", + "examples": [ + "Generate a query for messages containing 'urgent' and 'deadline' from user 'user123' in the last week.", + "Create a query to find messages with keyword 'error' including metadata, limiting to 50 results.", + "Build a query for messages between 2023-01-01 and 2023-01-31 with keywords 'meeting' or 'schedule'." + ] + }, + "tags": [ + "messaging", + "query", + "filter", + "search", + "real-time", + "chat" + ], + "examples": [ + { + "inputJson": "{\"keywords\":[\"urgent\",\"deadline\"],\"userId\":\"user123\",\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-08T23:59:59Z\",\"includeMetadata\":false,\"maxResults\":100}", + "description": "Query filtering messages containing 'urgent' and 'deadline' from user 'user123' in the first week of May 2024." + }, + { + "inputJson": "{\"keywords\":[\"error\"],\"includeMetadata\":true,\"maxResults\":50}", + "description": "Query for messages with the keyword 'error', including metadata fields, limited to 50 results." + }, + { + "inputJson": "{\"keywords\":[\"meeting\",\"schedule\"],\"startDate\":\"2023-01-01T00:00:00Z\",\"endDate\":\"2023-01-31T23:59:59Z\"}", + "description": "Query for messages containing either 'meeting' or 'schedule' during January 2023." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "messaging.generateLink", + "description": "Generates a secure, customizable messaging link for real-time chat or communication integration. Accepts parameters to specify the target channel, optional user identification, link expiration, and additional query parameters. Produces a URL string that can be shared or embedded to initiate or join messaging sessions.", + "category": "messaging", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Unique identifier of the messaging channel or chat room for which the link is generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Optional user identifier to pre-associate the link with a specific user session.", + "required": false, + "defaultValue": "" + }, + { + "name": "expiresInSeconds", + "type": "number", + "description": "Duration in seconds before the link expires. If zero or omitted, the link does not expire.", + "required": false, + "defaultValue": "0" + }, + { + "name": "queryParams", + "type": "object", + "description": "Additional key-value pairs to append as query parameters in the generated link for customization.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isTemporary", + "type": "boolean", + "description": "Flag indicating whether the link is temporary and should disable reuse after first use.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated messaging link URL as a string property named 'url'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create shareable, customizable links for users to join or initiate messaging channels in real-time chat applications, especially when specifying user context, expiration, or additional parameters for enhanced integration.", + "limitations": "This tool does not handle the actual sending or processing of messages, user authentication, or content moderation. It only generates the URL; proper backend services must support link usage and validation.", + "examples": [ + "Generate a permanent link to channel '12345' for anonymous users.", + "Create a temporary link for user 'user789' that expires in 3600 seconds.", + "Generate a link with extra query parameters to trigger specific client-side behaviors." + ] + }, + "tags": [ + "messaging", + "link generation", + "chat", + "real-time", + "integration", + "sharing" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"general-chat\"}", + "description": "Generate a permanent messaging link for the 'general-chat' channel with no user association and default settings." + }, + { + "inputJson": "{\"channelId\":\"support-room\",\"userId\":\"user123\",\"expiresInSeconds\":1800}", + "description": "Generate a link to 'support-room' tied to user 'user123' which expires in 30 minutes." + }, + { + "inputJson": "{\"channelId\":\"marketing\",\"queryParams\":{\"utm_source\":\"email_campaign\"},\"isTemporary\":true}", + "description": "Generate a temporary link to 'marketing' channel with a UTM parameter for tracking the source." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "messaging.createKPI", + "description": "Generates key performance indicators (KPIs) for messaging platforms by analyzing chat data and metadata. Accepts parameters defining KPI type, time range, and target channels or users. Processes message volumes, response times, user engagement metrics, and outputs structured KPI results for reporting or monitoring.", + "category": "messaging", + "parameters": [ + { + "name": "kpiType", + "type": "string", + "description": "Type of KPI to calculate, e.g., messageVolume, responseTime, userEngagement.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the KPI calculation period, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the KPI calculation period, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of channel IDs to include in KPI calculation. If empty or omitted, includes all channels.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "userIds", + "type": "array", + "description": "List of user IDs to filter the data by. If empty or omitted, includes all users.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeBots", + "type": "boolean", + "description": "Whether to include bot messages in calculations. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured KPI report including metric name, calculated value, unit, and timeframe. Format varies by KPI type." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create measurable performance metrics from messaging data, such as tracking message volume trends, average response times, or user engagement over a specified period for certain channels or users to enable monitoring and decision making.", + "limitations": "Does not collect raw message content, only metadata and aggregated statistics. Does not perform real-time data streaming; requires historical data access. KPI types are limited to predefined metrics like volume, response times, and engagement.", + "examples": [ + "Calculate total messages sent in channel 'sales' between 2024-01-01 and 2024-01-31.", + "Get average first response time for all users from 2024-03-01 to 2024-03-15.", + "Measure user engagement KPIs including bot messages in main support channels for last week." + ] + }, + "tags": [ + "messaging", + "analytics", + "KPI", + "reporting", + "chat", + "performance", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"kpiType\":\"messageVolume\",\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"channels\":[\"general\",\"support\"],\"userIds\":[],\"includeBots\":false}", + "description": "Calculate the total number of messages in the 'general' and 'support' channels during April 2024, excluding bot messages." + }, + { + "inputJson": "{\"kpiType\":\"responseTime\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-07\",\"channels\":[],\"userIds\":[\"user123\",\"user456\"],\"includeBots\":false}", + "description": "Calculate the average response time for two specific users across all channels during the first week of May 2024." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "messaging.generateArticle", + "description": "Generates a coherent, well-structured article suitable for messaging platforms based on given topic, style preferences, and target audience. Accepts inputs such as topic keywords, article length, tone, and format, and outputs a formatted article text ready for sharing or posting.", + "category": "messaging", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main topic or keywords the article should cover", + "required": true, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the article in words", + "required": false, + "defaultValue": "500" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the article, e.g., formal, informal, conversational, professional", + "required": false, + "defaultValue": "conversational" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Intended audience for the article, e.g., general public, developers, marketers", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "Preferred article format: paragraph, list, Q&A, or mixed", + "required": false, + "defaultValue": "paragraph" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action section at the end", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text along with metadata like word count and format" + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate medium-length articles or content pieces suitable for real-time messaging platforms or chat integrations, especially when input constraints are minimal and customization for tone and audience is needed. It helps automate article writing based on dynamic inputs for conversational or informative content.", + "limitations": "Cannot guarantee factual accuracy or up-to-date information, does not research external databases, and may not handle highly technical or specialized subjects reliably. Output requires human review before publishing.", + "examples": [ + "Generate a 600-word informal article on 'remote work productivity tips' aimed at general professionals.", + "Create a short, formal article for developers about new JavaScript features, including a call to action to try the latest version.", + "Produce a conversational list-format article about healthy snacks for office workers without a call to action." + ] + }, + "tags": [ + "messaging", + "article generation", + "content creation", + "text generation", + "chat integration", + "real-time", + "automation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"remote work productivity tips\",\"length\":600,\"tone\":\"informal\",\"targetAudience\":\"general professionals\",\"format\":\"paragraph\",\"includeCallToAction\":false}", + "description": "Generate a 600-word informal article on remote work productivity tips aimed at general professionals." + }, + { + "inputJson": "{\"topic\":\"new JavaScript features\",\"length\":400,\"tone\":\"formal\",\"targetAudience\":\"developers\",\"format\":\"paragraph\",\"includeCallToAction\":true}", + "description": "Generate a 400-word formal article for developers about new JavaScript features, including a call to action." + }, + { + "inputJson": "{\"topic\":\"healthy snacks for office workers\",\"length\":300,\"tone\":\"conversational\",\"targetAudience\":\"office workers\",\"format\":\"list\",\"includeCallToAction\":false}", + "description": "Produce a conversational list-format article about healthy snacks for office workers without a call to action." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "messaging.createTable", + "description": "This tool creates a structured table representation suitable for real-time messaging platforms. It accepts input specifying column headers, row data, and optional formatting. The output is a message-friendly table object that can be rendered or transmitted within chat applications to display organized data clearly.", + "category": "messaging", + "parameters": [ + { + "name": "columns", + "type": "array", + "description": "An array of strings representing the table column headers.", + "required": true, + "defaultValue": "" + }, + { + "name": "rows", + "type": "array", + "description": "A two-dimensional array where each inner array contains cell values for a row corresponding to the columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeader", + "type": "boolean", + "description": "Flag to include the column headers as the table's first row in output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "borderStyle", + "type": "string", + "description": "Specifies the border style of the table; options include 'none', 'simple', or 'grid'.", + "required": false, + "defaultValue": "simple" + }, + { + "name": "maxWidth", + "type": "number", + "description": "Maximum width of the table in characters for message formatting; text will be truncated or wrapped as needed.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing a formatted table string ready for messaging platform display and metadata about columns and rows." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured data into a clear tabular format optimized for display within chat or messaging environments, ensuring readability and proper alignment. Useful for sending reports, summaries, or any data snapshots in conversations.", + "limitations": "This tool does not support advanced interactive table features such as sorting or filtering within the messaging platform. It also does not export to external file formats like CSV or Excel.", + "examples": [ + "Create a table with sales data to send in chat: columns ['Product','Quantity','Price'], rows [[\"Apples\",10,\"$1.00\"],[\"Bananas\",5,\"$0.50\"]].", + "Generate a simple attendee list with names and RSVP status for a meeting chat.", + "Make a leaderboard table showing usernames and scores for a game chat channel." + ] + }, + "tags": [ + "messaging", + "table", + "formatting", + "chat", + "data display" + ], + "examples": [ + { + "inputJson": "{\"columns\":[\"Name\",\"Age\",\"City\"],\"rows\":[[\"Alice\",30,\"New York\"],[\"Bob\",25,\"Los Angeles\"]],\"includeHeader\":true,\"borderStyle\":\"grid\",\"maxWidth\":50}", + "description": "Create a 2-row table with headers and grid border style for a messaging app." + }, + { + "inputJson": "{\"columns\":[\"Task\",\"Status\"],\"rows\":[[\"Deploy update\",\"Completed\"],[\"Fix bug #123\",\"In Progress\"]],\"includeHeader\":true,\"borderStyle\":\"simple\"}", + "description": "Generate a simple border table for task status reporting in chat." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "messaging.createVideo", + "description": "This tool generates a short video clip from provided images, text captions, and optional background audio for real-time messaging contexts. It accepts arrays of image URLs, text overlays, and audio URL, processes these inputs into a cohesive video slideshow with transitions, and returns a video file URL suitable for chat integration.", + "category": "messaging", + "parameters": [ + { + "name": "imageUrls", + "type": "array", + "description": "An array of image URLs to include as video frames or slides, in display order.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "textCaptions", + "type": "array", + "description": "Optional array of text captions corresponding to each image, to overlay on the video frames.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "backgroundAudioUrl", + "type": "string", + "description": "Optional URL to background audio to include in the video, e.g., music or narration (mp3 format preferred).", + "required": false, + "defaultValue": "" + }, + { + "name": "slideDurationSeconds", + "type": "number", + "description": "Duration each image slide should be displayed in seconds. Default is 3 seconds per slide.", + "required": false, + "defaultValue": "3" + }, + { + "name": "videoResolution", + "type": "string", + "description": "Desired output video resolution, e.g., '720p', '1080p'. Defaults to '720p'.", + "required": false, + "defaultValue": "720p" + }, + { + "name": "videoFormat", + "type": "string", + "description": "Output video container format, e.g., 'mp4', 'webm'. Defaults to 'mp4'.", + "required": false, + "defaultValue": "mp4" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated video URL and metadata such as duration and format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create short, visually engaging video messages from static images and optional audio to enhance chat and messaging applications with multimedia content. Ideal for automated creation of video greetings, tutorials, or announcements in messaging platforms.", + "limitations": "This tool cannot generate videos from live video input or perform advanced video editing like cutting existing videos or complex animations. It also requires URLs of source images and audio; it does not perform image or audio content generation internally.", + "examples": [ + "Create a video slideshow from 5 images with captions for a chat greeting.", + "Generate a short video with background music from company event photos for internal messaging.", + "Produce a product highlight video from images and overlay text to share in a team chat." + ] + }, + "tags": [ + "video", + "messaging", + "media", + "slideshow", + "chat integration", + "multimedia", + "content creation" + ], + "examples": [ + { + "inputJson": "{\"imageUrls\":[\"https://example.com/image1.jpg\",\"https://example.com/image2.jpg\"],\"textCaptions\":[\"Welcome\",\"Thank you for joining!\"],\"backgroundAudioUrl\":\"https://example.com/audio.mp3\",\"slideDurationSeconds\":4,\"videoResolution\":\"1080p\",\"videoFormat\":\"mp4\"}", + "description": "Generate a 2-slide video with captions and background audio in 1080p MP4 format." + }, + { + "inputJson": "{\"imageUrls\":[\"https://example.com/photo1.png\"],\"textCaptions\":[\"Hello from the team!\"],\"slideDurationSeconds\":5}", + "description": "Create a single-slide 5-second video greeting with a caption at default 720p resolution and mp4 format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "messaging.createRisk", + "description": "Creates a risk incident report related to messaging or chat interactions by analyzing input metadata and risk details. Accepts parameters describing risk type, severity, affected channels, and description, and outputs a structured risk object with unique ID, timestamp, and status for tracking potential security or compliance issues within messaging platforms.", + "category": "messaging", + "parameters": [ + { + "name": "riskType", + "type": "string", + "description": "Type of risk detected, e.g., phishing, dataLeak, harassment", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the risk: low, medium, high, critical", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedChannels", + "type": "array", + "description": "List of messaging channels or platforms affected by the risk", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the risk incident", + "required": true, + "defaultValue": "" + }, + { + "name": "detectedBy", + "type": "string", + "description": "Identifier of the detection source or system", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp when the risk was detected; if omitted, current time is used", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A risk report object containing riskId, riskType, severity, affectedChannels, description, detectedBy, timestamp, and status indicating if risk is open or resolved" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent identifies or receives information about a security or compliance risk emerging from messaging or chat platforms. It helps document and structure the risk details for tracking and further action within security or incident management workflows.", + "limitations": "This tool does not automatically detect risks from raw chat content; it requires pre-assessed risk information. It also does not resolve or mitigate risks, only creates structured risk records.", + "examples": [ + "Create a risk report for a phishing attempt detected in Slack channel #general with high severity.", + "Document a data leak risk involving exposed customer data in corporate chat app.", + "Record harassment incident detected by moderation AI in messaging platform with medium severity." + ] + }, + "tags": [ + "messaging", + "riskManagement", + "security", + "incidentReporting", + "chatIntegration" + ], + "examples": [ + { + "inputJson": "{\"riskType\":\"phishing\",\"severity\":\"high\",\"affectedChannels\":[\"slack-general\"],\"description\":\"Detected phishing attempt targeting employees with malicious link.\",\"detectedBy\":\"emailFilterBot\",\"timestamp\":\"2024-06-01T15:30:00Z\"}", + "description": "Creating a phishing risk report in Slack channel #general with high severity." + }, + { + "inputJson": "{\"riskType\":\"dataLeak\",\"severity\":\"critical\",\"affectedChannels\":[\"microsoft-teams\"],\"description\":\"Sensitive customer data accidentally shared in Teams chat.\",\"detectedBy\":\"complianceScanner\"}", + "description": "Recording a critical data leak risk in Microsoft Teams without explicit timestamp." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "messaging.createOpportunity", + "description": "Creates a business opportunity record from real-time messaging inputs. Accepts details like opportunity name, client info, estimated value, probability, and expected close date. Processes and validates these inputs, then outputs a structured opportunity object for CRM or sales pipeline integration.", + "category": "messaging", + "parameters": [ + { + "name": "opportunityName", + "type": "string", + "description": "The name or title of the business opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientName", + "type": "string", + "description": "The name of the client or customer related to the opportunity.", + "required": true, + "defaultValue": "" + }, + { + "name": "estimatedValue", + "type": "number", + "description": "Estimated monetary value of the opportunity in USD.", + "required": false, + "defaultValue": "0" + }, + { + "name": "probability", + "type": "number", + "description": "The probability (0-100) that the opportunity will close successfully.", + "required": false, + "defaultValue": "50" + }, + { + "name": "expectedCloseDate", + "type": "string", + "description": "Expected closing date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description or notes about the opportunity.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords related to the opportunity for categorization.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns the created opportunity object, including a unique opportunityId, timestamps, and all provided fields, formatted for easy CRM integration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects opportunity-related information emerging from chat or messaging platforms, aiming to create structured sales records without manual entry. It facilitates seamless capture of potential deals from conversations.", + "limitations": "This tool does not validate the authenticity of the opportunity information or communicate with external CRM systems directly; integration requires additional tooling.", + "examples": [ + "Create a new sales opportunity after a chat conversation reveals client interest.", + "Extract opportunity details mentioned in a team messaging channel and record them.", + "Generate an opportunity record from a messaging app conversation with client details and deal parameters." + ] + }, + "tags": [ + "messaging", + "business", + "sales", + "opportunity", + "CRM", + "real-time", + "integration" + ], + "examples": [ + { + "inputJson": "{\"opportunityName\":\"New Website Development\",\"clientName\":\"Acme Corp\",\"estimatedValue\":150000,\"probability\":70,\"expectedCloseDate\":\"2024-12-31\",\"description\":\"Developing corporate website and e-commerce platform.\",\"tags\":[\"web\",\"development\",\"priority-high\"]}", + "description": "Create an opportunity for Acme Corp's web development project with estimated value and close date." + }, + { + "inputJson": "{\"opportunityName\":\"Cloud Migration Services\",\"clientName\":\"Beta Inc\",\"estimatedValue\":80000,\"probability\":60}", + "description": "Add a cloud migration opportunity for Beta Inc with basic financial estimates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "messaging.createComponent", + "description": "Creates a customizable chat UI component for real-time messaging applications. Accepts configuration options like component type, styles, initial state, and event handlers, and outputs a ready-to-integrate code snippet or object representation of the messaging component tailored to specified requirements.", + "category": "messaging", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of messaging component to create, e.g., 'chatWindow', 'messageInput', 'userList'.", + "required": true, + "defaultValue": "" + }, + { + "name": "styles", + "type": "object", + "description": "Custom style properties to apply, e.g., colors, fonts, spacing, specified as CSS-in-JS style object.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "initialState", + "type": "object", + "description": "Initial state data for the component, such as preloaded messages or user data.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "eventHandlers", + "type": "object", + "description": "Mapping of event names to callback functions or handler names for interactivity, e.g., onMessageSend.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "platform", + "type": "string", + "description": "Target platform for the component, e.g., 'web', 'mobile', to tailor output accordingly.", + "required": false, + "defaultValue": "web" + }, + { + "name": "includeStyles", + "type": "boolean", + "description": "Whether to include styles inline with the component code or not.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output: 'reactComponent', 'vueComponent', 'htmlString', or 'jsonObject'.", + "required": false, + "defaultValue": "reactComponent" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated component code or data structure and metadata, including the component code string, language/framework, and any warnings or notes about compatibility." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate modular messaging UI components customized by type, style, and behavior for integration into messaging platforms or applications. It assists in creating code snippets for chat windows, input fields, or user lists without manual coding.", + "limitations": "Cannot fully implement backend connectivity or real-time data fetching logic; does not support generation of entire chat applications, only frontend components; complex business logic or dynamic state management beyond basic initialState is not supported.", + "examples": [ + "Create a React chat window component with dark theme styles and an event handler for sending messages.", + "Generate a Vue.js message input box without styles for a mobile app, including a placeholder text.", + "Produce a JSON object describing a user list component with default styling for web platform integration." + ] + }, + "tags": [ + "messaging", + "UI", + "component", + "chat", + "real-time", + "frontend", + "code generation", + "customization" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"chatWindow\",\"styles\":{\"backgroundColor\":\"#1a1a1a\",\"color\":\"white\"},\"initialState\":{\"messages\":[]},\"eventHandlers\":{\"onMessageSend\":\"handleSend\"},\"platform\":\"web\",\"includeStyles\":true,\"outputFormat\":\"reactComponent\"}", + "description": "Generate a dark-themed React chat window component with event handler for sending messages." + }, + { + "inputJson": "{\"componentType\":\"messageInput\",\"styles\":{},\"initialState\":{\"text\":\"\"},\"eventHandlers\":{\"onInputChange\":\"handleChange\"},\"platform\":\"mobile\",\"includeStyles\":false,\"outputFormat\":\"vueComponent\"}", + "description": "Create a Vue.js message input component without styles for mobile platform." + }, + { + "inputJson": "{\"componentType\":\"userList\",\"styles\":{\"fontSize\":\"14px\"},\"initialState\":{\"users\":[{\"id\":1,\"name\":\"Alice\"}]},\"eventHandlers\":{},\"platform\":\"web\",\"includeStyles\":true,\"outputFormat\":\"jsonObject\"}", + "description": "Produce a JSON representation of a web user list component with default styling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "email-communication.analyzeHeading", + "description": "Analyzes email subject headings to evaluate effectiveness, detect sentiment, and extract key themes. Accepts a list of subject lines, processes them to identify engagement factors, sentiment polarity, and recurring keywords, and returns a structured summary with metrics and insights for improving email campaign headings.", + "category": "email-communication", + "parameters": [ + { + "name": "headings", + "type": "array", + "description": "Array of email subject heading strings to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the headings for accurate sentiment and keyword analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze sentiment polarity of each heading.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxKeywords", + "type": "number", + "description": "Maximum number of key themes or keywords to extract from the headings.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall statistics such as average sentiment score, frequency of top keywords, and a list with each heading's detailed sentiment and keyword highlights." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating a batch of email subject lines to understand their effectiveness and emotional tone, to optimize for engagement and click-through rates in email marketing campaigns.", + "limitations": "This tool focuses on text analysis of headings only and does not evaluate the full email content, delivery metrics, or recipient reactions outside of sentiment and keyword analysis. It may have limited accuracy on short or ambiguous headings.", + "examples": [ + "Analyze sentiment and key themes for these 10 email headings.", + "Extract the top 5 keywords from a list of subject lines to identify trends.", + "Evaluate whether subject lines are predominantly positive or negative in tone to adjust campaign messaging." + ] + }, + "tags": [ + "email", + "heading", + "analysis", + "sentiment", + "keywords", + "marketing", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"headings\":[\"Limited Time Offer! Save 50% Now\",\"Don't Miss Out on Our New Features\",\"Last Chance: Your Subscription Ends Soon\",\"Welcome to Our Newsletter!\",\"Join Us for an Exclusive Webinar\"],\"language\":\"en\",\"includeSentiment\":true,\"maxKeywords\":5}", + "description": "Analyze sentiment and extract top 5 keywords from a list of 5 marketing email subject headings in English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "email-communication.analyzeReference", + "description": "This tool analyzes the references and citations included in an email body or signature to identify and categorize them. It accepts raw email content as input, processes the text to extract URLs, document titles, or cited works, and returns a structured summary of these references, including their types and relevance.", + "category": "email-communication", + "parameters": [ + { + "name": "emailContent", + "type": "string", + "description": "Raw text content of the email to analyze for references and citations.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Flag indicating whether to include the email signature in the analysis of references.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxReferences", + "type": "number", + "description": "Maximum number of references to extract and analyze from the email content.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Structured object listing extracted references with metadata like type (URL, document, citation), title, source domain if URL, and confidence score." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and interpret references mentioned in an email to assist in understanding context, verify sources, or automate follow-up actions such as information retrieval or compliance checks. It is especially useful for managing emails in professional settings where citations or reference links are common.", + "limitations": "This tool does not verify the accuracy or validity of the references; it only extracts and categorizes them. It is limited to text analysis and cannot access locked or external content behind references.", + "examples": [ + "Analyze references mentioned in a contract negotiation email.", + "Extract and summarize URLs and document citations from an email chain about project specifications.", + "Check for valid reference links in an email before auto-forwarding it to legal review." + ] + }, + "tags": [ + "email", + "analysis", + "references", + "content-extraction", + "automation" + ], + "examples": [ + { + "inputJson": "{\"emailContent\":\"Hi team, please review the report at https://example.com/report.pdf and check the data cited from Smith et al. (2020) in section 3. Also, my signature includes the link https://company.com/about.\",\"includeSignature\":true,\"maxReferences\":5}", + "description": "Analyze an email containing URLs and a bibliographic citation, including signature links." + }, + { + "inputJson": "{\"emailContent\":\"Dear all, as per the guidelines found in the attached document Guidelines_v2.docx and previous emails referencing ISO 9001 standards, please comply accordingly.\",\"includeSignature\":false,\"maxReferences\":3}", + "description": "Extract references from an email mentioning attached documents and standards without including signatures." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "email-communication.analyzeReply", + "description": "Analyzes an email reply message to identify its tone, intent, key topics, and response adequacy. Accepts raw email reply text and optional metadata, processes natural language understanding and sentiment analysis, and outputs structured insights and suggestions to assist in crafting follow-up communications.", + "category": "email-communication", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The full text content of the email reply message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "originalEmailText", + "type": "string", + "description": "Optional original email text that this reply is responding to, used to understand context and relevance.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the email reply for accurate linguistic processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment and tone analysis on the reply text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of key topics to extract from the reply for summary purposes.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the sentiment score and tone, identified intent categories, extracted key topics, relevant action suggestions, and an adequacy rating indicating how well the reply addresses the original message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the content and tone of an incoming email reply to decide how to respond or escalate. The analysis helps in understanding customer satisfaction, urgency, and appropriate next steps in email communications.", + "limitations": "Does not generate replies or detailed response content. May have reduced accuracy with very short or highly informal replies, or unsupported languages.", + "examples": [ + "Analyze tone and intent of this customer reply to determine urgency.", + "Extract key topics from this email response and suggest if a follow-up is needed.", + "Evaluate how adequately this reply addresses the original email's questions." + ] + }, + "tags": [ + "email", + "analysis", + "reply", + "sentiment", + "tone", + "intent", + "communication" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thank you for your prompt response. I appreciate the detailed explanation. I will try the solution and get back to you if there are issues.\",\"originalEmailText\":\"Please try this solution to fix your issue and let me know if it works.\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"maxTopics\":3}", + "description": "Analyzing a polite customer reply with appreciation and willingness to follow up." + }, + { + "inputJson": "{\"replyText\":\"This is not working at all! I am very disappointed and need a refund.\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"maxTopics\":4}", + "description": "Analyzing a dissatisfied customer reply expressing frustration and refund request with no original email supplied." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "email-communication.analyzeDeal", + "description": "Analyzes email communication data related to a specific business deal to assess engagement levels, sentiment, and key discussion points. Accepts deal identifiers and email thread metadata as input, processes sentiment analysis, frequencies, and timelines, and outputs a detailed report highlighting communication effectiveness and potential risks.", + "category": "email-communication", + "parameters": [ + { + "name": "dealId", + "type": "string", + "description": "Unique identifier for the business deal to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailThreadIds", + "type": "array", + "description": "List of IDs of email threads associated with the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) to filter emails within a certain period. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) to filter emails within a certain period. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on email content. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code to use for sentiment and keyword analysis (e.g., 'en'). Defaults to 'en'.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing metrics such as total emails, frequency over time, sentiment summary, key terms, and risk flags related to the deal communication." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate the status and quality of email communications around a particular business deal, identifying engagement trends, sentiment shifts, or warning signs that may impact deal success.", + "limitations": "Does not analyze attachments or phone call transcripts; accuracy depends on language support and quality of email content; cannot infer business outcomes beyond communication metrics.", + "examples": [ + "Analyze the email exchanges for deal ID 12345 from last quarter and summarize sentiment and engagement.", + "Provide a communication analysis report for all threads related to deal ABCD, including frequency and key topics.", + "Assess if the recent email activity on deal XYZ shows any risks or negative sentiment trends." + ] + }, + "tags": [ + "email", + "deal-analysis", + "sentiment", + "business", + "communication", + "engagement", + "email-frequency" + ], + "examples": [ + { + "inputJson": "{\"dealId\":\"deal_001\",\"emailThreadIds\":[\"thread123\",\"thread124\"],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"includeSentimentAnalysis\":true}", + "description": "Analyze communications for deal_001 during Q1 2024 including sentiment." + }, + { + "inputJson": "{\"dealId\":\"deal_xyz\",\"emailThreadIds\":[\"t001\",\"t002\",\"t003\"],\"includeSentimentAnalysis\":false}", + "description": "Analyze email frequency and key terms for deal_xyz without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "email-communication.analyzeHTML", + "description": "Analyzes raw HTML content of an email template to identify email-specific features such as inline styles, external links, image alt texts, and accessibility compliance. It accepts HTML string input, parses and examines structural and style elements, then outputs a detailed report highlighting potential rendering issues, link validity, and best practice adherence for email clients.", + "category": "email-communication", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content of the email to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkLinks", + "type": "boolean", + "description": "Whether to validate external URLs within the HTML for reachability and redirects.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to assess the HTML for basic accessibility features like alt text and semantic tags.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxImageSizeKB", + "type": "number", + "description": "Threshold in kilobytes above which images are flagged for being too large, affecting email load times.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "A structured report object including counts of inline styles, number of images with and without alt text, list of external links with validation status, flagged potential issues for rendering, and accessibility warnings." + }, + "aiAgent": { + "useCase": "Use this tool when preparing or optimizing email HTML content to ensure compatibility across various email clients, improve accessibility, and identify potential errors or best practice violations before sending bulk or transactional emails. Ideal for validating templates or user-submitted HTML before deploying in campaigns.", + "limitations": "Does not execute JavaScript or interactive content; cannot fully emulate all email client rendering quirks; link validation depends on live URL accessibility and may be blocked by some servers.", + "examples": [ + "Analyze this email HTML snippet for missing alt attributes and broken links.", + "Check if the provided newsletter HTML uses best inline styling practices for emails.", + "Validate the accessibility and external link health of this promotional email HTML." + ] + }, + "tags": [ + "email", + "HTML", + "analysis", + "accessibility", + "link-validation", + "email-template", + "email-marketing" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"Visit\",\"checkLinks\":true,\"checkAccessibility\":true,\"maxImageSizeKB\":100}", + "description": "Basic email HTML with one image lacking alt text and a link to check for reachability." + }, + { + "inputJson": "{\"htmlContent\":\"

Welcome!

BannerCheck us out\",\"checkLinks\":true,\"checkAccessibility\":true,\"maxImageSizeKB\":200}", + "description": "Email HTML using inline styles, one properly tagged image, and an external link which is likely unreachable." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "email-communication.analyzeXML", + "description": "This tool accepts email-related XML data (e.g., email campaign configurations, email templates, or logs) and analyzes its structure and content to extract key metrics such as number of messages, presence of specific tags, or structural anomalies. It outputs a structured report summarizing findings, helping users validate and understand their email XML data.", + "category": "email-communication", + "parameters": [ + { + "name": "xmlData", + "type": "string", + "description": "The raw email XML data string to be analyzed, containing email campaign or template information.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "number", + "description": "Level of detail for the analysis report. 1 for basic schema check, higher numbers for deeper content inspection.", + "required": false, + "defaultValue": "1" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the XML against a standard email schema if available (true enables validation).", + "required": false, + "defaultValue": "false" + }, + { + "name": "extractTags", + "type": "array", + "description": "List of specific XML tag names to extract and report on if present in the XML data.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing analysis results including counts of messages, extracted tag data, any schema validation errors, and summary insights about the email XML." + }, + "aiAgent": { + "useCase": "Use this tool when you have email campaign or template data represented in XML format and need to verify its structure, extract key information, or check for potential errors and schema compliance before sending or processing emails. It helps automate validation and insights extraction from complex XML email data.", + "limitations": "This tool does not send emails or modify XML data. It performs analysis only and depends on well-formed XML input; it cannot fix errors, only report them.", + "examples": [ + "Analyze an XML email template to verify presence and count of all and tags.", + "Validate campaign XMLs against known email schemas to ensure compliance before upload.", + "Extract and summarize all tags from bulk email campaign XML data." + ] + }, + "tags": [ + "email", + "XML", + "analysis", + "validation", + "email-campaign", + "automation" + ], + "examples": [ + { + "inputJson": "{\"xmlData\":\"Sale...Update...\",\"analysisDepth\":2,\"validateSchema\":false,\"extractTags\":[\"subject\",\"body\"]}", + "description": "Analyze an email campaign XML with two emails, extracting subject and body tag info." + }, + { + "inputJson": "{\"xmlData\":\"user@example.comadmin@example.com\",\"analysisDepth\":1,\"validateSchema\":true,\"extractTags\":[\"recipient\"]}", + "description": "Validate XML email list against schema and extract recipients." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "email-communication.downloadCSV", + "description": "This tool downloads email campaign data in CSV format. It accepts parameters to specify the campaign id, date range, and fields to include. It fetches email performance metrics such as opens, clicks, bounces, and subscriber info, then outputs a CSV file containing the requested data for offline analysis or reporting.", + "category": "email-communication", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier for the email campaign to download data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (YYYY-MM-DD) for filtering data. Inclusive. Optional, if not set downloads all data.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (YYYY-MM-DD) for filtering data. Inclusive. Optional, if not set downloads all data.", + "required": false, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "Array of fields to include in the CSV output, e.g. ['email','openRate','clicks']. Defaults to key metrics if empty.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include CSV header row with field names. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing CSV content as a string and metadata such as filename." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically retrieve detailed email campaign metrics and subscriber data in CSV format for further processing, reporting, or archiving. It is ideal for agents automating campaign analysis or generating downloadable reports for users.", + "limitations": "This tool does not send emails, nor does it support exporting other formats such as XLSX or JSON. It requires valid campaign identifiers and does not support data outside stored campaign periods.", + "examples": [ + "Download CSV for campaign 'abc123' including only 'email', 'openRate', and 'clicks' fields for last month.", + "Fetch all data for campaign 'xyz789' without date filtering, including all default metrics.", + "Download CSV without headers for campaign 'campaign2024' filtered between '2024-01-01' and '2024-01-31'." + ] + }, + "tags": [ + "email", + "CSV", + "download", + "campaign", + "reporting", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"abc123\",\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"fields\":[\"email\",\"openRate\",\"clicks\"],\"includeHeaders\":true}", + "description": "Download selected fields for a specific campaign during April 2024 with headers included." + }, + { + "inputJson": "{\"campaignId\":\"xyz789\",\"fields\":[],\"includeHeaders\":true}", + "description": "Download complete data with default fields for a campaign with no date filtering." + }, + { + "inputJson": "{\"campaignId\":\"campaign2024\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"fields\":[\"email\",\"bounces\"],\"includeHeaders\":false}", + "description": "Download specific fields without CSV headers for January 2024 campaign data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "email-communication.uploadCSV", + "description": "This tool uploads a CSV file containing recipient emails and optional personalization fields for email campaigns. It parses the CSV, validates email formats, and stores the contacts for subsequent email automation tasks. It outputs a summary of the upload including count of valid, invalid, and duplicate records.", + "category": "email-communication", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV text content to be uploaded containing recipient data", + "required": true, + "defaultValue": "" + }, + { + "name": "emailColumn", + "type": "string", + "description": "The header name in the CSV that contains the email addresses", + "required": true, + "defaultValue": "" + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the CSV includes a header row", + "required": false, + "defaultValue": "true" + }, + { + "name": "customFieldMappings", + "type": "object", + "description": "Optional mapping of other CSV columns to personalization fields (key: field name, value: CSV column)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the result of the upload, including counts of total, valid, invalid and duplicate entries, and details for errors if any" + }, + "aiAgent": { + "useCase": "Use this tool when ingesting recipient lists for email marketing or communication campaigns. It accepts CSV data to quickly and reliably upload bulk contacts, preparing them for personalized email automation. The tool validates emails and highlights any faulty or duplicate entries before campaign execution.", + "limitations": "This tool does not send emails or handle email campaign scheduling. It assumes CSV is UTF-8 encoded and does not support other file formats. It does not perform deep validation against external email services or suppression lists.", + "examples": [ + "Upload a CSV string containing emails and names for a newsletter mailing list.", + "Ingest a CSV file with custom columns mapped to personalization tokens for dynamic email content.", + "Validate and store an uploaded CSV file of contacts for a drip email campaign." + ] + }, + "tags": [ + "email", + "csv", + "upload", + "bulk", + "recipients", + "contacts", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"email,name\\njohn.doe@example.com,John Doe\\njane.smith@example.com,Jane Smith\",\"emailColumn\":\"email\",\"hasHeader\":true,\"customFieldMappings\":{\"name\":\"name\"}}", + "description": "Uploading a CSV with emails and names with header row for a marketing list" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "email-communication.renderText", + "description": "This tool accepts plain text with optional placeholders and styling instructions to generate email-ready HTML content. It processes the input by replacing placeholders with provided values and applying simple text formatting. The output is a string of HTML formatted text suitable for embedding in email bodies, ensuring consistent rendering across email clients.", + "category": "email-communication", + "parameters": [ + { + "name": "plainText", + "type": "string", + "description": "The raw text content to be rendered, which may include placeholders for dynamic values.", + "required": true, + "defaultValue": "" + }, + { + "name": "placeholders", + "type": "object", + "description": "A key-value map where keys correspond to placeholders in the text, and values are their replacements.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "styleOptions", + "type": "object", + "description": "An object specifying simple styling options such as font family, size, color, and alignment to apply to the rendered text.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line; longer lines will be wrapped accordingly for better email client compatibility.", + "required": false, + "defaultValue": "72" + }, + { + "name": "escapeHtml", + "type": "boolean", + "description": "When true, HTML special characters in plainText are escaped to avoid unintended formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML string ready for email embedding under the key 'htmlContent'." + }, + "aiAgent": { + "useCase": "AI agents should use this tool when they need to convert plain or lightly templated text into a well-formatted HTML snippet for inclusion in emails. This is especially useful when sending automated emails that require dynamic content insertion and consistent styling across multiple recipients or platforms.", + "limitations": "This tool does not support complex HTML templates or CSS. It handles basic styling and placeholder substitution only. It cannot render images, attachments, or advanced layout features.", + "examples": [ + "Render a welcome email text with user name placeholders replaced and styled with a specific font and color.", + "Convert a plain text newsletter with line wrapping into HTML with minimal formatting for compatible email clients.", + "Escape HTML characters in user-generated content and insert dynamic data before rendering to HTML." + ] + }, + "tags": [ + "email", + "rendering", + "html", + "templating", + "automation", + "text formatting" + ], + "examples": [ + { + "inputJson": "{\"plainText\":\"Hello {{userName}},\\nWelcome to our service!\", \"placeholders\":{\"userName\":\"Alice\"}, \"styleOptions\":{\"fontFamily\":\"Arial\",\"color\":\"#333333\"}, \"maxLineLength\":80, \"escapeHtml\":true}", + "description": "Render greeting text by replacing {{userName}} with 'Alice', applying Arial font and dark gray text color, wrapping lines at 80 characters." + }, + { + "inputJson": "{\"plainText\":\"Thank you for your order #{{orderNumber}}.\", \"placeholders\":{\"orderNumber\":\"12345\"}, \"styleOptions\":{}, \"maxLineLength\":72, \"escapeHtml\":true}", + "description": "Create a simple order confirmation snippet replacing {{orderNumber}} with actual order number, default styling, and standard max line length." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "email-communication.formatCSV", + "description": "Formats raw CSV data containing email communication information to a structured and standardized CSV string. The tool accepts CSV input as a string, allows optional selection of columns to include, and supports specifying delimiter, text quoting, and header options. It outputs a formatted CSV string ready for importing or sending in email communication workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "Raw CSV data input as a string, which may have inconsistent formatting or extra columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeColumns", + "type": "array", + "description": "Optional list of column names to include in the output. If empty or omitted, all columns are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to use in the output CSV, e.g., comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteCharacter", + "type": "string", + "description": "Character to enclose text fields, typically double quotes.", + "required": false, + "defaultValue": "\"" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include the header row in the output CSV.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted CSV string under the 'formattedCSV' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to clean up, standardize, or selectively format CSV data related to email contacts, messages, or campaigns before sending or further processing. It is especially useful for preparing CSVs with varied inputs into a consistent format for email communication tools or APIs.", + "limitations": "This tool does not validate email formats or correct data errors beyond formatting. It does not parse or analyze email content semantics or detect spam. It only formats CSV strings according to parameters provided.", + "examples": [ + "Format raw CSV export of email contacts to include only name and email fields with proper quoting.", + "Standardize CSV data delimiters and ensure headers for importing into email campaign software.", + "Generate formatted CSV string from raw input for sending personalized email batches." + ] + }, + "tags": [ + "email", + "CSV", + "formatting", + "data-preparation", + "communication", + "automation" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"name,email,phone\\nAlice,a@example.com,123-456-7890\\nBob,b@example.com,098-765-4321\",\"includeColumns\":[\"name\",\"email\"],\"delimiter\":\",\",\"quoteCharacter\":\"\\\"\",\"includeHeaders\":true}", + "description": "Format CSV to include only name and email columns with default delimiter and quoting." + }, + { + "inputJson": "{\"csvData\":\"\"name\";\"email\";\"note\"\\n\"John Doe\";\"john@example.com\";\"VIP\"\\n\"Jane Smith\";\"jane@example.com\";\"\"\",\"includeColumns\":[],\"delimiter\":\";\",\"quoteCharacter\":\"\\\"\",\"includeHeaders\":true}", + "description": "Preserve all columns and format CSV using semicolon delimiter and double-quote character." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "email-communication.formatParagraph", + "description": "Formats a given email paragraph text according to specified style options such as line length, text alignment, indentation, and bullet styling. Accepts raw paragraph text as input and returns the formatted paragraph string ready to be included in email body content.", + "category": "email-communication", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text content to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line before wrapping occurs.", + "required": false, + "defaultValue": "72" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to indent the first line of the paragraph.", + "required": false, + "defaultValue": "4" + }, + { + "name": "bulletStyle", + "type": "string", + "description": "Bullet style to prepend to the paragraph, such as '-', '*', or empty for no bullet.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "The formatted paragraph string, formatted according to the specified parameters, ready for insertion into an email message body." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent is generating or editing email content and needs to produce neatly formatted paragraphs that comply with visual style preferences, such as wrapping lines at a certain length and consistent indentation or bulleting. This is particularly useful when preparing automated email replies, newsletters, or templated content where appearance and readability are important.", + "limitations": "This tool formats plain text paragraphs only; it does not handle HTML or rich-text formatting. It cannot insert images, hyperlinks, or advanced styling beyond basic indentation, line breaks, alignment, and simple bullet marks.", + "examples": [ + "Format a raw block of text into a left-aligned paragraph wrapped at 72 characters with 4 spaces indentation.", + "Apply bullet points using '-' and justify the paragraph text to resemble a list item in an email.", + "Center align a short paragraph without indentation or bullet for an email signature note." + ] + }, + "tags": [ + "email", + "formatting", + "paragraph", + "text-processing", + "automation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"text\":\"This is a sample paragraph that needs to be formatted properly for inclusion in an email. It should wrap lines neatly and indent the first line.\",\"maxLineLength\":50,\"alignment\":\"left\",\"indentationSpaces\":4,\"bulletStyle\":\"\"}", + "description": "Formats a paragraph with left alignment, line wrap at 50 characters, and 4-space indentation without bullet." + }, + { + "inputJson": "{\"text\":\"Please find the tasks listed below:\",\"maxLineLength\":60,\"alignment\":\"left\",\"indentationSpaces\":0,\"bulletStyle\":\"-\"}", + "description": "Formats a single-line paragraph with a '-' bullet and no indentation." + }, + { + "inputJson": "{\"text\":\"Thank you for your time and consideration.\",\"maxLineLength\":70,\"alignment\":\"center\",\"indentationSpaces\":0,\"bulletStyle\":\"\"}", + "description": "Centers a closing sentence without indentation or bullets." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "email-communication.draftContract", + "description": "Generates a professional contract draft based on provided parties' information, terms, and contract type. Accepts party details, key contract clauses, and optional custom terms, then creates a structured contract text output suitable for email sending or further editing.", + "category": "email-communication", + "parameters": [ + { + "name": "partyAName", + "type": "string", + "description": "Name of the first party in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "partyBName", + "type": "string", + "description": "Name of the second party in the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractType", + "type": "string", + "description": "Type of contract to draft (e.g., NDA, Service Agreement, Sale Contract).", + "required": true, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "Date when the contract becomes effective (ISO 8601 format).", + "required": false, + "defaultValue": "" + }, + { + "name": "terms", + "type": "array", + "description": "Array of objects representing key contract terms and conditions with title and description.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "customClauses", + "type": "string", + "description": "Additional custom clauses or notes to include in the contract body.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Generated contract text including header, parties, definitions, terms, clauses, and signature placeholders as a formatted string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate a contract draft based on input parameters describing the parties, contract type, and essential terms. Ideal for automating contract preparation workflows in email communications or legal document generation processes.", + "limitations": "This tool does not perform legal validation or ensure compliance with jurisdictional laws. It outputs a general draft requiring professional legal review before use.", + "examples": [ + "Draft a service agreement contract between 'Acme Corp' and 'Beta LLC' effective from '2024-07-01' with terms about service scope and payment.", + "Generate an NDA contract between 'Alice' and 'Bob' with standard confidentiality terms.", + "Create a sale contract draft for two parties with specified custom terms about delivery and liability." + ] + }, + "tags": [ + "email", + "contract", + "drafting", + "automation", + "document-generation", + "legal" + ], + "examples": [ + { + "inputJson": "{\"partyAName\":\"Acme Corp\",\"partyBName\":\"Beta LLC\",\"contractType\":\"Service Agreement\",\"effectiveDate\":\"2024-07-01\",\"terms\":[{\"title\":\"Scope of Service\",\"description\":\"Acme Corp will provide software development services.\"},{\"title\":\"Payment Terms\",\"description\":\"Beta LLC will pay $5000 monthly.\"}],\"customClauses\":\"Confidentiality must be maintained by both parties.\"}", + "description": "Drafts a service agreement contract between two companies with terms and a confidentiality clause." + }, + { + "inputJson": "{\"partyAName\":\"Alice\",\"partyBName\":\"Bob\",\"contractType\":\"NDA\",\"effectiveDate\":\"2024-06-15\",\"terms\":[{\"title\":\"Confidentiality\",\"description\":\"Both parties agree not to disclose confidential information.\"}],\"customClauses\":\"Duration of agreement is 2 years.\"}", + "description": "Creates a non-disclosure agreement draft between two individuals with a specified duration and confidentiality clause." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "email-communication.buildInstance", + "description": "This tool provisions and configures an email sending infrastructure instance based on specified parameters. It accepts input such as instance type, region, email service provider, and optional security settings, then builds a ready-to-use email communication instance, outputting connection details and configuration status.", + "category": "email-communication", + "parameters": [ + { + "name": "instanceType", + "type": "string", + "description": "The type of email infrastructure instance to create (e.g., 'SMTP', 'API', 'Webhook')", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the instance will be deployed (e.g., 'us-east-1')", + "required": true, + "defaultValue": "" + }, + { + "name": "provider", + "type": "string", + "description": "Email service provider to use for this instance (e.g., 'SendGrid', 'AmazonSES')", + "required": true, + "defaultValue": "" + }, + { + "name": "securitySettings", + "type": "object", + "description": "Optional security configurations such as TLS enforcement, authentication methods, and encryption", + "required": false, + "defaultValue": "" + }, + { + "name": "instanceName", + "type": "string", + "description": "Custom name for the email instance for easier identification", + "required": false, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable or disable detailed logging of email sending activities", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the instanceId, connectionDetails (like host, port, API keys), deploymentStatus, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically provision a new email sending infrastructure tailored to specific providers and geographic regions, for automated email communication workflows or marketing campaigns.", + "limitations": "Does not handle actual email content creation or email sending; it only provisions and configures the infrastructure instance.", + "examples": [ + "Create an SMTP instance with SendGrid in us-east-1 region with TLS enabled.", + "Provision an API-based email instance named 'MarketingMailer' using Amazon SES in eu-west-2 region.", + "Build an email communication instance with detailed logging enabled for debugging purposes." + ] + }, + "tags": [ + "email", + "infrastructure", + "automation", + "provisioning", + "email-sending", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"instanceType\":\"SMTP\",\"region\":\"us-east-1\",\"provider\":\"SendGrid\",\"securitySettings\":{\"tls\":true},\"instanceName\":\"PrimarySMTP\",\"enableLogging\":true}", + "description": "Provision an SMTP instance on SendGrid with TLS enabled in US East region, named PrimarySMTP, with logging enabled." + }, + { + "inputJson": "{\"instanceType\":\"API\",\"region\":\"eu-west-2\",\"provider\":\"AmazonSES\"}", + "description": "Create an API-based email instance in the EU West region using Amazon SES without additional security settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "email-communication.composeParagraph", + "description": "Generates a coherent, professional paragraph for email communication based on a specified topic, tone, and key points. Takes inputs as strings and arrays, processes them to create a well-structured paragraph suitable for various email contexts such as business inquiries, follow-ups, or introductions.", + "category": "email-communication", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme to be addressed in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the paragraph, e.g., formal, friendly, persuasive, or neutral.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "keyPoints", + "type": "array", + "description": "An array of strings representing important points or ideas that should be included in the paragraph.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the paragraph in number of words to control conciseness.", + "required": false, + "defaultValue": "150" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to add a call-to-action sentence at the end of the paragraph.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed paragraph text under the 'paragraph' key." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to generate a clear and contextually appropriate email paragraph based on specific input criteria like topic and tone. Ideal for automating parts of email drafting to ensure natural yet professional language without manual writing.", + "limitations": "Cannot guarantee perfect context comprehension or highly creative writing beyond given input parameters; does not handle full email composition or sign-offs.", + "examples": [ + "Compose a formal paragraph about partnership benefits including key points on trust and reliability.", + "Generate a friendly introduction paragraph highlighting a recent meeting and next steps.", + "Write a concise persuasive paragraph urging timely action on a proposal." + ] + }, + "tags": [ + "email", + "compose", + "paragraph", + "automation", + "professional writing", + "communication" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"collaboration opportunities\",\"tone\":\"formal\",\"keyPoints\":[\"mutual benefits\",\"enhanced productivity\",\"long-term partnership\"],\"maxLength\":120,\"includeCallToAction\":true}", + "description": "Compose a formal paragraph discussing collaboration opportunities emphasizing mutual benefits and including a call to action." + }, + { + "inputJson": "{\"topic\":\"product feedback request\",\"tone\":\"friendly\",\"keyPoints\":[\"customer satisfaction importance\",\"invitation to share honest opinions\"],\"maxLength\":100,\"includeCallToAction\":true}", + "description": "Generate a friendly paragraph encouraging customer feedback to improve satisfaction with an invitation to respond." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "email-communication.buildVariable", + "description": "Constructs a dynamic email variable from provided parameters to be used in templated email campaigns. Accepts variable name, data type, default value, and optional transformation rules. Outputs a structured variable object ready for injection into email templates and automation workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The identifier name for the email variable to be used in templates.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataType", + "type": "string", + "description": "The data type of the variable such as string, number, date, or boolean.", + "required": true, + "defaultValue": "string" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Optional fallback value used when no user data is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "transformationRules", + "type": "object", + "description": "Optional set of rules to modify or format the variable value (e.g., uppercase, date formatting).", + "required": false, + "defaultValue": "" + }, + { + "name": "isRequired", + "type": "boolean", + "description": "Indicates whether the variable must always have a value before sending the email.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the variable with all its defined properties, ready to be integrated into email templates and automation logic." + }, + "aiAgent": { + "useCase": "Use this tool when creating personalized email campaigns that require dynamic, customizable variables based on user data or logic. It helps define variables clearly, including fallback values and transformations ensuring consistent email content generation.", + "limitations": "This tool does not fetch or validate actual user data; it only builds the variable definition structure. It also does not send emails or evaluate complex conditional logic beyond simple transformations.", + "examples": [ + "Create a variable for user first name as a string with fallback 'Customer'.", + "Define a date-type variable for subscription end date with formatting to 'MM/dd/yyyy'.", + "Build a boolean variable indicating if user is premium, default to false, required in email." + ] + }, + "tags": [ + "email", + "variable", + "template", + "automation", + "personalization", + "dynamic", + "build" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"firstName\",\"dataType\":\"string\",\"defaultValue\":\"Customer\",\"transformationRules\":{\"capitalize\":true},\"isRequired\":true}", + "description": "Builds a required string variable named 'firstName' with default 'Customer' and a rule to capitalize the value." + }, + { + "inputJson": "{\"variableName\":\"subscriptionEnd\",\"dataType\":\"date\",\"defaultValue\":\"\",\"transformationRules\":{\"format\":\"MM/dd/yyyy\"},\"isRequired\":false}", + "description": "Constructs an optional date variable for subscription end date with date formatting rule." + }, + { + "inputJson": "{\"variableName\":\"isPremiumUser\",\"dataType\":\"boolean\",\"defaultValue\":\"false\",\"isRequired\":true}", + "description": "Creates a required boolean variable indicating premium user status, defaulting to false." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "email-communication.buildComponent", + "description": "Creates a reusable email template component by accepting inputs like component name, HTML content, inline CSS styles, and optional dynamic placeholders. Processes these inputs to generate a structured JSON representation of the component for use in email builders or automation workflows.", + "category": "email-communication", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The name identifier for the email component to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML code that defines the structure of the email component", + "required": true, + "defaultValue": "" + }, + { + "name": "inlineStyles", + "type": "string", + "description": "CSS styles to be applied inline within the component for consistent rendering", + "required": false, + "defaultValue": "" + }, + { + "name": "placeholders", + "type": "array", + "description": "List of dynamic placeholder names that will be replaced with actual data during email generation", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Optional brief description about the purpose or usage of the component", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the email component, including its name, HTML, styles, placeholders, and description suitable for integration into email systems." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create or update email template components for modular email building or automation. It helps generate standardized, reusable components with dynamic content placeholders that can be used in email campaigns or transactional email systems.", + "limitations": "This tool does not validate HTML content for correctness or email client compatibility; it also does not send emails or render previews.", + "examples": [ + "Create an email header component with logo and navigation links.", + "Build a reusable footer component with unsubscribe link placeholder.", + "Generate a promotional banner component with dynamic discount code placeholder." + ] + }, + "tags": [ + "email", + "component", + "template", + "html", + "css", + "automation", + "dynamic-content" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"Header\",\"htmlContent\":\"
Welcome to our newsletter!
\",\"inlineStyles\":\"table {width:100%;} td {padding:10px;}\",\"placeholders\":[],\"description\":\"Basic header with logo and welcome text.\"}", + "description": "Create a header component with logo and text." + }, + { + "inputJson": "{\"componentName\":\"Footer\",\"htmlContent\":\"\",\"inlineStyles\":\"footer {font-size:12px;color:#888;}\",\"placeholders\":[\"unsubscribe_link\"],\"description\":\"Footer with unsubscribe placeholder.\"}", + "description": "Create a footer component including an unsubscribe link placeholder." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "email-communication.generateSession", + "description": "Generates an email communication session report summarizing key analytics such as total emails sent, open rates, click rates, and recipient engagement within a specified timeframe. Accepts parameters defining the date range, email campaign identifier, and optional segmentation criteria. Outputs a structured analytics summary representing the performance and engagement metrics of the email session.", + "category": "email-communication", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the email campaign to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date of the session period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date of the session period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentCriteria", + "type": "object", + "description": "Optional object defining segmentation filters like recipient demographics or engagement level.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeDetailedEvents", + "type": "boolean", + "description": "Flag whether to include detailed email event logs such as individual opens and clicks.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary analytics of the email session including total sent, opened, clicks, bounce rate, and detailed engagement statistics if requested." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create an overview report of email campaign performance or recipient engagement for a defined session period. It is useful for generating summary analytics for decision making, reporting to stakeholders, or triggering follow-up automation based on engagement metrics.", + "limitations": "This tool does not send emails or adjust campaign settings. It only summarizes historical data and cannot predict future campaign performance or directly modify email content.", + "examples": [ + "Generate a session report for campaign 'ABC123' from 2024-01-01 to 2024-01-31.", + "Provide email engagement summary for campaign 'XYZ789' segmented by recipients in Europe between 2024-03-01 and 2024-03-15.", + "Create a detailed event session report for campaign 'SpringLaunch' for the first quarter of 2024." + ] + }, + "tags": [ + "email", + "analytics", + "session", + "campaign", + "reporting", + "engagement", + "communication" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"camp2024spring\",\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"segmentCriteria\":{\"region\":\"North America\"},\"includeDetailedEvents\":false}", + "description": "Generate a monthly performance summary for the Spring 2024 campaign focused on North American recipients without detailed events." + }, + { + "inputJson": "{\"campaignId\":\"launchpromo2024\",\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-15\",\"segmentCriteria\":{},\"includeDetailedEvents\":true}", + "description": "Create a detailed session report including open and click events for promotional campaign in early April." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "email-communication.generateTrend", + "description": "Generates analytical trend reports based on email campaign data such as open rates, click-through rates, bounce rates, and subscriber engagement over a specified time range. Accepts campaign identifiers and date ranges as input, processes the email metrics to identify upward or downward trends, and outputs summarized trend statistics and visual insights.", + "category": "email-communication", + "parameters": [ + { + "name": "campaignIds", + "type": "array", + "description": "List of unique identifiers for the email campaigns to analyze", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the trend analysis in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the trend analysis in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of email metrics to include in the trend analysis, e.g., 'openRate', 'clickRate', 'bounceRate'", + "required": false, + "defaultValue": "[\"openRate\",\"clickRate\",\"bounceRate\"]" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for trend aggregation: daily, weekly, or monthly", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "An object containing trend summaries for each metric, including date-wise values, percent change, and trend direction indicators." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide insights about the performance trends of email campaigns over time, such as identifying improvements or declines in engagement metrics. Useful for marketing optimization and reporting tasks.", + "limitations": "Does not access real-time data streams or integrate with email service providers directly; requires pre-collected campaign data. It does not predict future trends beyond the analyzed data range.", + "examples": [ + "Generate a weekly trend report for campaign IDs ['camp123', 'camp456'] between 2023-01-01 and 2023-03-31 focusing on open and click rates.", + "Show the monthly bounce rate trend for the campaign 'spring_sale' from 2022-10-01 to 2023-01-31.", + "Analyze daily open, click, and bounce rates trends for multiple campaigns over the past 30 days." + ] + }, + "tags": [ + "email", + "analytics", + "trend analysis", + "marketing", + "campaign performance" + ], + "examples": [ + { + "inputJson": "{\"campaignIds\":[\"camp123\",\"camp789\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"metrics\":[\"openRate\",\"clickRate\"],\"granularity\":\"weekly\"}", + "description": "Generate weekly open and click rate trends for two campaigns over Q1 2023." + }, + { + "inputJson": "{\"campaignIds\":[\"holiday_promo\"],\"startDate\":\"2022-11-01\",\"endDate\":\"2022-12-31\",\"metrics\":[\"bounceRate\"],\"granularity\":\"monthly\"}", + "description": "Monthly bounce rate trend for holiday promo campaign during November and December 2022." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "email-communication.generateSchema", + "description": "Generates a JSON schema definition for email message templates based on provided template structure and field specifications. Accepts a template object describing fields such as subject, body, recipients, and custom variables, then produces a JSON schema used for validating email template data programmatically.", + "category": "email-communication", + "parameters": [ + { + "name": "templateName", + "type": "string", + "description": "Name identifier for the email template to generate schema for.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "Array of field definition objects specifying the name, type, required flag, and description of each template field (e.g., subject, body, cc).", + "required": true, + "defaultValue": "" + }, + { + "name": "allowAdditionalProperties", + "type": "boolean", + "description": "Flag to specify if additional properties beyond the defined fields are allowed in the schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaVersion", + "type": "string", + "description": "Specify the JSON schema version identifier to use, e.g., 'http://json-schema.org/draft-07/schema#'.", + "required": false, + "defaultValue": "http://json-schema.org/draft-07/schema#" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the JSON schema defining the email template's structure, types, and constraints suitable for validation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to formalize and validate email message template data structures programmatically. It helps generate a JSON schema to enforce consistency, required fields, and data types of email templates before generating or sending emails. This is useful in large-scale email automation or templating systems.", + "limitations": "The tool only generates schema definitions and does not validate actual email content or send emails. It requires structured field definitions as input and does not infer schema from free text or existing templates.", + "examples": [ + "Generate a schema for a welcome email template with fields: subject (string, required), body (string, required), cc (array of strings, optional).", + "Create a JSON schema for an invoice email template including fields for recipient, subject, body, and attachments with specified types." + ] + }, + "tags": [ + "email", + "schema", + "validation", + "template", + "automation", + "json-schema" + ], + "examples": [ + { + "inputJson": "{\"templateName\":\"WelcomeEmail\",\"fields\":[{\"name\":\"subject\",\"type\":\"string\",\"required\":true,\"description\":\"Email subject line\"},{\"name\":\"body\",\"type\":\"string\",\"required\":true,\"description\":\"Main email content\"},{\"name\":\"cc\",\"type\":\"array\",\"required\":false,\"description\":\"List of CC email addresses\"}],\"allowAdditionalProperties\":false}", + "description": "Generate schema for a welcome email template with subject, body, and optional cc fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "email-communication.createCluster", + "description": "Creates and configures a scalable email sending cluster infrastructure based on user-defined parameters. The tool accepts input for cluster name, number of nodes, geographic regions, email throughput limits, and failover strategies. It sets up the cluster environment, provisions SMTP nodes, and outputs a summary of the cluster configuration and operational endpoints.", + "category": "email-communication", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The unique name identifier for the email cluster.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "The number of SMTP nodes to include in the cluster for load balancing and redundancy.", + "required": true, + "defaultValue": "3" + }, + { + "name": "regions", + "type": "array", + "description": "List of geographic regions (ISO region codes) where cluster nodes will be deployed for latency optimization.", + "required": true, + "defaultValue": "[\"us-east-1\"]" + }, + { + "name": "maxEmailsPerSecond", + "type": "number", + "description": "Maximum number of emails the cluster can send per second to manage throughput capacity.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "failoverStrategy", + "type": "string", + "description": "Method used for cluster failover (e.g., automatic, manual, weighted) to maintain uptime.", + "required": false, + "defaultValue": "automatic" + }, + { + "name": "enableMonitoring", + "type": "boolean", + "description": "Whether to enable real-time monitoring and alerting for cluster health and performance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the finalized cluster configuration including clusterId, nodes info, endpoint URLs, and status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically deploy or scale an email sending infrastructure that requires multiple SMTP nodes distributed geographically for high availability and throughput. It helps automate the cluster setup process to meet specified email throughput and regional requirements.", + "limitations": "This tool does not handle the setup of email content templates, recipient management, or handle detailed SMTP authentication configurations beyond basic cluster provisioning.", + "examples": [ + "Create an email cluster named 'MarketingCluster' with 5 nodes in US and EU regions for high throughput email campaigns.", + "Setup a failover-capable cluster with monitoring disabled for cost savings.", + "Deploy a minimal cluster for testing with 1 node in a single region." + ] + }, + "tags": [ + "email", + "infrastructure", + "cluster", + "smtp", + "scaling", + "automation", + "failover" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"MarketingCluster\",\"nodeCount\":5,\"regions\":[\"us-east-1\",\"eu-west-1\"],\"maxEmailsPerSecond\":5000,\"failoverStrategy\":\"automatic\",\"enableMonitoring\":true}", + "description": "Create a 5-node email cluster named 'MarketingCluster' with nodes in US East and EU West regions supporting up to 5000 emails/sec and automatic failover with monitoring enabled." + }, + { + "inputJson": "{\"clusterName\":\"TestCluster\",\"nodeCount\":1,\"regions\":[\"us-west-2\"],\"maxEmailsPerSecond\":500,\"failoverStrategy\":\"manual\",\"enableMonitoring\":false}", + "description": "Create a single-node test email cluster with manual failover in US West region with monitoring disabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "email-communication.createQueue", + "description": "Creates a new email sending queue with defined properties such as queue name, concurrency limits, retry policies, and optional scheduling to manage and automate email dispatching efficiently. Accepts queue configuration parameters and returns a confirmation with the queue metadata.", + "category": "email-communication", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "A unique name identifier for the new email queue.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxConcurrentEmails", + "type": "number", + "description": "Maximum number of emails that can be processed concurrently in this queue.", + "required": false, + "defaultValue": "10" + }, + { + "name": "retryAttempts", + "type": "number", + "description": "Number of times to retry sending a failed email before marking it as failed.", + "required": false, + "defaultValue": "3" + }, + { + "name": "retryDelaySeconds", + "type": "number", + "description": "Delay in seconds between each retry attempt for a failed email.", + "required": false, + "defaultValue": "60" + }, + { + "name": "enableScheduling", + "type": "boolean", + "description": "Flag to enable scheduling of emails in this queue at specified times (true or false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "allowedSendingHours", + "type": "array", + "description": "An array specifying allowed hours (0-23) during which emails can be sent, applicable if scheduling is enabled.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text about the purpose or details of the queue.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation details of the created queue including queue ID, name, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically set up a managed email sending queue that controls concurrency, retries, and optionally schedules sending hours, to ensure reliable and efficient email delivery workflows.", + "limitations": "This tool does not send emails itself, nor does it handle individual email content creation or tracking. It only sets up the infrastructure queue parameters for email dispatching.", + "examples": [ + "Create an email queue named 'MarketingCampaign' with concurrency limit 20 and 5 retry attempts.", + "Set up a queue 'TransactionalEmails' that only sends emails between 8 AM and 6 PM with scheduling enabled.", + "Create a simple queue 'DefaultQueue' with default concurrency and retries without scheduling." + ] + }, + "tags": [ + "email", + "queue", + "automation", + "sending", + "retry", + "concurrency", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"MarketingCampaign\",\"maxConcurrentEmails\":20,\"retryAttempts\":5,\"retryDelaySeconds\":120,\"enableScheduling\":false,\"description\":\"Queue for marketing blast emails.\"}", + "description": "Creating a marketing email queue with higher concurrency and retry policies, no scheduling." + }, + { + "inputJson": "{\"queueName\":\"TransactionalEmails\",\"maxConcurrentEmails\":10,\"retryAttempts\":3,\"retryDelaySeconds\":60,\"enableScheduling\":true,\"allowedSendingHours\":[8,9,10,11,12,13,14,15,16,17,18],\"description\":\"Queue for transactional emails sent during business hours.\"}", + "description": "Creating a transactional email queue with scheduling enabled limited to business hours." + }, + { + "inputJson": "{\"queueName\":\"DefaultQueue\"}", + "description": "Creating a default email queue with default parameters and no scheduling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "email-communication.createIncident", + "description": "Creates a security incident report email draft based on input details of the incident, including severity, affected systems, description, and recommended actions. Generates an email-ready structured incident report that can be reviewed and sent to relevant security stakeholders.", + "category": "email-communication", + "parameters": [ + { + "name": "incidentTitle", + "type": "string", + "description": "A brief, descriptive title summarizing the security incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity classification of the incident (e.g., Low, Medium, High, Critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of system names or identifiers affected by the incident.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "incidentDescription", + "type": "string", + "description": "Detailed textual description of what the incident entails.", + "required": true, + "defaultValue": "" + }, + { + "name": "discoveryDate", + "type": "string", + "description": "Date when the incident was discovered, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "recommendedActions", + "type": "string", + "description": "Suggested mitigation or remediation actions to address the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of email addresses to send the incident report to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeAttachments", + "type": "boolean", + "description": "Whether to indicate inclusion of relevant attachments in the email.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated email subject and body text formatted as an incident report." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to draft a structured security incident report email from raw incident data for communication to security teams or stakeholders. It helps automate incident notification by creating clear, consistent email content ready for review and sending.", + "limitations": "The tool does not send emails—only creates the draft content. It cannot validate recipient address correctness or dynamically attach files.", + "examples": [ + "Create an incident email for a newly discovered critical vulnerability affecting backend servers.", + "Generate a security incident report email summarizing a medium severity phishing attack.", + "Draft an incident notification for a detected malware infection including recommended actions." + ] + }, + "tags": [ + "email", + "security", + "incident", + "automation", + "reporting", + "communication" + ], + "examples": [ + { + "inputJson": "{\"incidentTitle\":\"Unauthorized Access Detected\",\"severityLevel\":\"High\",\"affectedSystems\":[\"Database Server 1\",\"Web Server 3\"],\"incidentDescription\":\"Multiple unauthorized login attempts detected on critical servers, indicating possible brute force attack.\",\"discoveryDate\":\"2024-06-10\",\"recommendedActions\":\"Immediately disable affected accounts, reset passwords, and conduct a forensic analysis.\",\"recipients\":[\"security-team@example.com\",\"it-support@example.com\"],\"includeAttachments\":false}", + "description": "Creates a high severity incident email draft detailing unauthorized access attempts affecting two servers, including actions and recipients." + }, + { + "inputJson": "{\"incidentTitle\":\"Malware Infection on Workstation\",\"severityLevel\":\"Medium\",\"affectedSystems\":[\"User PC 42\"],\"incidentDescription\":\"Detected malware activity on a user workstation causing unusual network traffic.\",\"recommendedActions\":\"Isolate the affected machine and run anti-malware scans.\",\"recipients\":[\"security-ops@example.com\"]}", + "description": "Generates an incident report email for a medium severity malware infection on a single workstation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "email-communication.createThread", + "description": "Creates a new email thread by initializing the first message and associated metadata. Accepts details like subject, sender, recipients, optional body, and attachments. Returns a thread ID and summary data for tracking and referencing the conversation thread.", + "category": "email-communication", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "Subject line of the email thread, used to group messages.", + "required": true, + "defaultValue": "" + }, + { + "name": "sender", + "type": "string", + "description": "Email address of the sender initiating the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses to include in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "ccRecipients", + "type": "array", + "description": "Optional list of email addresses to carbon copy on the thread's first message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bccRecipients", + "type": "array", + "description": "Optional list of email addresses to blind carbon copy on the thread's first message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "body", + "type": "string", + "description": "Optional text body content of the initial email in the thread.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments included in the first email message. Each item includes filename and binary or URL.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the thread (e.g., 'normal', 'high').", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the new thread's unique identifier, initial message ID, subject, sender, recipients, and a timestamp." + }, + "aiAgent": { + "useCase": "Use this tool to start a new email conversation thread programmatically, such as when automating customer support emails, onboarding communications, or initiating newsletters. Ideal for agents managing bulk or templated outreach where tracking separate conversations is important.", + "limitations": "This tool does not send the email over SMTP or handle replies; it only creates and stores the thread metadata and initial message. Sending emails requires additional tools. It cannot modify existing threads.", + "examples": [ + "Create a new customer support email thread with subject, sender, and recipients.", + "Initialize a newsletter thread with multiple recipients and attachments.", + "Create a priority thread for urgent team communications." + ] + }, + "tags": [ + "email", + "thread", + "communication", + "automation", + "messaging", + "customer-support" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Welcome to Our Service\",\"sender\":\"support@example.com\",\"recipients\":[\"user1@example.com\"],\"body\":\"Hello and welcome! We are glad to have you.\",\"priority\":\"normal\"}", + "description": "Creates a new email thread welcoming a new user." + }, + { + "inputJson": "{\"subject\":\"Monthly Newsletter\",\"sender\":\"news@example.com\",\"recipients\":[\"subscriber1@example.com\",\"subscriber2@example.com\"],\"attachments\":[{\"filename\":\"newsletter.pdf\",\"url\":\"https://example.com/newsletter.pdf\"}],\"body\":\"Please find attached our latest newsletter.\"}", + "description": "Starts a newsletter thread with multiple recipients and an attachment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "email-communication.createThreat", + "description": "This tool accepts detailed parameters about an email threat scenario, such as sender, subject, content patterns, and risk level, then creates a structured threat report object. It processes inputs to classify and document potential email-based security threats for automation or alerting systems.", + "category": "email-communication", + "parameters": [ + { + "name": "threatName", + "type": "string", + "description": "A concise name identifying the email threat type or campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the email threat, including behavior or characteristics.", + "required": false, + "defaultValue": "" + }, + { + "name": "senderEmail", + "type": "string", + "description": "The email address or domain linked to the threat as sender.", + "required": false, + "defaultValue": "" + }, + { + "name": "subjectPatterns", + "type": "array", + "description": "List of string patterns or keywords commonly found in threat email subjects.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contentPatterns", + "type": "array", + "description": "List of string patterns or keywords indicating malicious content in email body.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "riskLevel", + "type": "string", + "description": "Risk severity level of the threat (e.g., low, medium, high).", + "required": true, + "defaultValue": "medium" + }, + { + "name": "active", + "type": "boolean", + "description": "Flag indicating whether the threat is currently active and should be monitored.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured threat report object containing all provided details and a generated threatId for referencing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent detects or is informed about a new or existing email-based threat and needs to formalize it into a standardized threat object for tracking, analysis, prevention, or alerting purposes. It enables integrating threat intelligence into email security workflows or incident response automation.", + "limitations": "This tool does not itself analyze emails or detect threats automatically; it only creates structured threat representations based on provided information. It does not perform mitigation or direct email filtering.", + "examples": [ + "Create a threat entry for a phishing campaign impersonating a bank with suspicious subject lines.", + "Document an active malware delivery threat via emails containing certain keywords and sender domains.", + "Register a low-risk spam threat pattern with characteristic content phrases." + ] + }, + "tags": [ + "email", + "security", + "threat", + "automation", + "phishing", + "malware", + "riskManagement" + ], + "examples": [ + { + "inputJson": "{\"threatName\":\"BankPhishCampaign\",\"description\":\"Phishing emails impersonating Bank Corp using urgent language.\",\"senderEmail\":\"malicious@fakebank.com\",\"subjectPatterns\":[\"urgent update\",\"account locked\"],\"contentPatterns\":[\"verify your account\",\"click this link\"],\"riskLevel\":\"high\",\"active\":true}", + "description": "Create a high-risk phishing threat profile targeting bank customers." + }, + { + "inputJson": "{\"threatName\":\"MalwareAttachmentSpike\",\"description\":\"Emails delivering malware attachments disguised as invoices.\",\"senderEmail\":\"invoice@unknown.com\",\"subjectPatterns\":[\"invoice\",\"payment due\"],\"contentPatterns\":[\"attachment\",\"download\"],\"riskLevel\":\"medium\",\"active\":true}", + "description": "Document a medium-risk malware email delivery threat with invoice themes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "email-communication.createDeal", + "description": "Creates a business deal record linked to an email communication context. Accepts deal details such as title, value, associated contacts, and email thread ID. Processes this information to generate a structured deal object useful for CRM systems or sales tracking. Returns the created deal information including a unique deal ID and timestamps.", + "category": "email-communication", + "parameters": [ + { + "name": "dealTitle", + "type": "string", + "description": "The title or name of the deal being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "Monetary value of the deal in the specified currency.", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the deal value (e.g., USD, EUR).", + "required": false, + "defaultValue": "USD" + }, + { + "name": "contactEmails", + "type": "array", + "description": "List of email addresses for contacts involved in the deal.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "emailThreadId", + "type": "string", + "description": "Identifier of the email thread to associate the deal with.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedCloseDate", + "type": "string", + "description": "Expected closing date of the deal in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "dealStage", + "type": "string", + "description": "Current stage of the deal lifecycle, e.g., \"Prospecting\", \"Negotiation\".", + "required": false, + "defaultValue": "Prospecting" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or description about the deal.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the dealId, deal details submitted, creation timestamp, and status indication." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to convert an email-based lead or opportunity into a structured business deal record for CRM or sales pipeline tracking. It helps automate deal creation from email interactions by extracting key deal info and linking it to the communication context.", + "limitations": "This tool does not send emails or update existing deals; it only creates new deal records. It requires the email thread to already exist and be identified by its ID.", + "examples": [ + "Create a new deal for an opportunity discussed over email with contacts john@example.com and jane@example.com valued at 5000 USD.", + "Record a deal titled 'Website Redesign' linked to a particular email thread with an expected close date next quarter.", + "Add notes to a new deal about client preferences based on email correspondence." + ] + }, + "tags": [ + "email", + "deal creation", + "business", + "crm", + "sales", + "automation" + ], + "examples": [ + { + "inputJson": "{\"dealTitle\":\"New Software License Sale\",\"dealValue\":12000,\"currency\":\"USD\",\"contactEmails\":[\"saleslead@example.com\"],\"emailThreadId\":\"thread12345\",\"expectedCloseDate\":\"2024-12-31\",\"dealStage\":\"Negotiation\",\"notes\":\"Discussed bulk licensing terms.\"}", + "description": "Creating a software license deal linked to an email thread with value and deal stage." + }, + { + "inputJson": "{\"dealTitle\":\"Consulting Services Proposal\",\"contactEmails\":[\"client@example.com\"],\"emailThreadId\":\"emailthread987\"}", + "description": "Creating a minimal deal entry from an email with required fields only." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "email-communication.createHTML", + "description": "Generates customizable HTML email content based on provided text, images, styles, and layout preferences. Accepts parameters for subject, body text, images, colors, fonts, and responsive layout options. Outputs a complete HTML string ready for email sending or further customization.", + "category": "email-communication", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The email subject line text to include in the message header section.", + "required": false, + "defaultValue": "" + }, + { + "name": "bodyText", + "type": "string", + "description": "Plain text content for the main body of the email.", + "required": true, + "defaultValue": "" + }, + { + "name": "images", + "type": "array", + "description": "List of image URLs to embed or reference in the email content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "primaryColor", + "type": "string", + "description": "Hex code or named color for main accents and elements in the email.", + "required": false, + "defaultValue": "#007BFF" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family name to style the email text content.", + "required": false, + "defaultValue": "Arial, sans-serif" + }, + { + "name": "includeFooter", + "type": "boolean", + "description": "Whether to include a standard footer section in the email HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "isResponsive", + "type": "boolean", + "description": "Flag to enable responsive design for mobile email clients.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing a single HTML string field with the generated email markup." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate styled, professional HTML email content from input text, optional images, and style preferences to be sent via email systems. It helps prepare email-ready HTML without manual coding.", + "limitations": "Cannot send email directly or handle dynamic content personalization per recipient. Does not guarantee full compatibility with all email clients or embed images inline; external hosting is recommended for images.", + "examples": [ + "Create a promotional email HTML with a blue theme including three images.", + "Generate a simple plain text newsletter HTML with a footer but no images.", + "Produce a mobile responsive invitation email with a custom font and primary color." + ] + }, + "tags": [ + "email", + "html", + "template", + "automation", + "email-communication" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Welcome to Our Service\",\"bodyText\":\"Hello, thank you for joining our newsletter!\",\"images\":[\"https://example.com/welcome.png\"],\"primaryColor\":\"#1a73e8\",\"fontFamily\":\"Helvetica, sans-serif\",\"includeFooter\":true,\"isResponsive\":true}", + "description": "A welcome email with a branded blue color, custom font, one image, footer, and responsiveness enabled." + }, + { + "inputJson": "{\"bodyText\":\"Monthly update: Here are the latest news and offers.\",\"includeFooter\":false}", + "description": "A simple monthly update plain HTML email with no images or footer, using default styles." + }, + { + "inputJson": "{\"subject\":\"Event Invitation\",\"bodyText\":\"Join us for an exciting event this weekend!\",\"images\":[],\"primaryColor\":\"#ff5722\",\"fontFamily\":\"Georgia, serif\",\"includeFooter\":true,\"isResponsive\":true}", + "description": "An event invitation styled with an orange accent color, serif font, responsive layout, and including footer." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "email-communication.createChart", + "description": "Generates an embeddable chart image that visualizes email campaign metrics like open rates, click rates, and bounce rates based on provided data. Accepts structured campaign performance data and chart customization options, and produces a URL or base64 image string for embedding in emails or reports.", + "category": "email-communication", + "parameters": [ + { + "name": "campaignData", + "type": "object", + "description": "Structured data object containing email campaign statistics (e.g., openRate, clickRate, bounceRate) over time or segments.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate, such as 'bar', 'line', or 'pie' to best represent the data.", + "required": false, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title text for the chart to be displayed above it.", + "required": false, + "defaultValue": "Email Campaign Metrics" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated chart image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated chart image in pixels.", + "required": false, + "defaultValue": "400" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color theme or palette name used to style the chart.", + "required": false, + "defaultValue": "default" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Flag to include a legend explaining chart elements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "returnFormat", + "type": "string", + "description": "Format of output chart: 'url' for an image URL or 'base64' for a base64-encoded string.", + "required": false, + "defaultValue": "url" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated chart image as either a URL or base64 string, including metadata like chart dimensions and type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to create visual representations of email campaign performance metrics for reports or email content, facilitating easy interpretation of campaign success indicators.", + "limitations": "Cannot generate interactive charts or handle raw unstructured email logs; requires summarized numerical campaign data as input. Does not send emails, only generates chart images.", + "examples": [ + "Create a line chart showing weekly open and click rates for the last month.", + "Generate a pie chart visualizing the distribution of bounce reasons in the latest campaign.", + "Produce a bar chart with custom colors showing click rates per segment." + ] + }, + "tags": [ + "email", + "chart", + "visualization", + "campaign-metrics", + "reporting", + "email-marketing" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":{\"weeks\":[\"Week 1\",\"Week 2\"],\"openRate\":[45,52],\"clickRate\":[12,15]},\"chartType\":\"line\",\"title\":\"Weekly Open and Click Rates\",\"width\":700,\"height\":400,\"colorScheme\":\"cool\",\"includeLegend\":true,\"returnFormat\":\"url\"}", + "description": "Generate a line chart of weekly open and click rates with a cool color scheme." + }, + { + "inputJson": "{\"campaignData\":{\"segments\":[\"Newsletter\",\"Promotions\"],\"clickRate\":[20,30]},\"chartType\":\"bar\",\"title\":\"Click Rates by Segment\",\"width\":600,\"height\":300,\"colorScheme\":\"warm\",\"includeLegend\":false,\"returnFormat\":\"base64\"}", + "description": "Create a bar chart of click rates segmented by mail type, returning a base64 image string." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "email-communication.createXML", + "description": "Generates a well-structured XML document representing email content and metadata, based on provided subject, recipients, body, and optional attachments. Inputs include subject, recipients list, body content (plain text or HTML), and attachment details. Outputs a string containing the complete XML representation suitable for email automation or integration.", + "category": "email-communication", + "parameters": [ + { + "name": "subject", + "type": "string", + "description": "The subject line of the email to be included in the XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipient email addresses to include in the XML envelope.", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "The main content of the email body, can include HTML.", + "required": true, + "defaultValue": "" + }, + { + "name": "isHtml", + "type": "boolean", + "description": "Flag indicating whether the body content is HTML (true) or plain text (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments where each item includes file name and base64 encoded content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sender", + "type": "string", + "description": "Optional sender email address to include in XML metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single property 'xmlContent' containing the XML string representation of the email." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert email details into a standardized XML format for downstream sending systems, archiving, or integrations requiring XML input. Ideal for automating email workflows where XML is the chosen data exchange format.", + "limitations": "This tool does not send the email or validate the correctness of email addresses. It only formats provided data into XML. It cannot interpret or modify email content beyond XML structuring.", + "examples": [ + "Create an XML for a marketing email to multiple recipients with HTML content and attachments.", + "Generate XML email representation from user-provided subject, body text, and recipient list.", + "Format an email draft with sender info, plain text body, and no attachments into XML." + ] + }, + "tags": [ + "email", + "xml", + "email-formatting", + "automation", + "communication", + "integration" + ], + "examples": [ + { + "inputJson": "{\"subject\":\"Monthly Newsletter\",\"recipients\":[\"user1@example.com\",\"user2@example.com\"],\"body\":\"

Welcome!

Enjoy our updates.

\",\"isHtml\":true,\"attachments\":[{\"fileName\":\"newsletter.pdf\",\"content\":\"JVBERi0xLjQKJ...\"}],\"sender\":\"marketing@example.com\"}", + "description": "Create XML for an HTML marketing email with two recipients and one PDF attachment." + }, + { + "inputJson": "{\"subject\":\"Meeting Reminder\",\"recipients\":[\"team@example.com\"],\"body\":\"Don't forget our meeting at 10 AM.\",\"isHtml\":false}", + "description": "Generate XML for plain text meeting reminder to a team email address without attachments." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "XML", + "context": null + } + }, + { + "name": "email-communication.createResume", + "description": "This tool generates a professional resume document based on user-provided personal details, work experience, education, skills, and optional customization parameters. It outputs the resume as a formatted PDF or DOCX file ready for email sending or download.", + "category": "email-communication", + "parameters": [ + { + "name": "fullName", + "type": "string", + "description": "The candidate's full name to appear on the resume header.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactEmail", + "type": "string", + "description": "Email address to include in the contact information section.", + "required": true, + "defaultValue": "" + }, + { + "name": "phone", + "type": "string", + "description": "Phone number to include in the contact details.", + "required": false, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "A brief professional summary or objective statement for the resume.", + "required": false, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "List of work experience entries including company name, position, start/end dates, and descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "List of educational qualifications including institution name, degree, and graduation year.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Array of skills to highlight in the skills section of the resume.", + "required": false, + "defaultValue": "" + }, + { + "name": "includePhoto", + "type": "boolean", + "description": "Indicates whether to include a professional photo on the resume.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format for the resume, e.g., PDF or DOCX.", + "required": false, + "defaultValue": "PDF" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resume file content encoded as base64 string and the MIME type for download or email attachment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a professional resume document from structured user data, for example, to quickly create personalized resumes for job applications via email automation workflows.", + "limitations": "This tool does not perform content quality assessment or job-specific tailoring beyond user input. It requires well-structured and complete data to create a meaningful resume.", + "examples": [ + "Create a PDF resume with full work history and skills for John Doe.", + "Generate a DOCX resume including a profile photo and a professional summary.", + "Produce a resume with minimum contact info and education details only." + ] + }, + "tags": [ + "email", + "document", + "resume", + "automation", + "PDF", + "DOCX", + "professional", + "job application" + ], + "examples": [ + { + "inputJson": "{\"fullName\":\"Jane Smith\",\"contactEmail\":\"jane.smith@example.com\",\"phone\":\"555-123-4567\",\"summary\":\"Experienced software engineer with a focus on machine learning.\",\"workExperience\":[{\"company\":\"Tech Corp\",\"position\":\"Senior Developer\",\"startDate\":\"2018-01\",\"endDate\":\"2023-03\",\"description\":\"Developed scalable machine learning applications.\"},{\"company\":\"Web Solutions\",\"position\":\"Developer\",\"startDate\":\"2015-06\",\"endDate\":\"2017-12\",\"description\":\"Built front-end web interfaces.\"}],\"education\":[{\"institution\":\"University of Technology\",\"degree\":\"BSc Computer Science\",\"graduationYear\":2015}],\"skills\":[\"Python\",\"Machine Learning\",\"JavaScript\"],\"includePhoto\":false,\"outputFormat\":\"PDF\"}", + "description": "Generate a PDF resume for Jane Smith with detailed work experience and skills." + }, + { + "inputJson": "{\"fullName\":\"Mark Johnson\",\"contactEmail\":\"mark.j@example.com\",\"summary\":\"Product manager with 10+ years in tech industry.\",\"workExperience\":[{\"company\":\"Innovatech\",\"position\":\"Product Manager\",\"startDate\":\"2012-05\",\"endDate\":\"2022-12\",\"description\":\"Led cross-functional teams to deliver software products.\"}],\"education\":[{\"institution\":\"State University\",\"degree\":\"MBA\",\"graduationYear\":2011}],\"skills\":[],\"includePhoto\":true,\"outputFormat\":\"DOCX\"}", + "description": "Create a DOCX resume for Mark Johnson including a professional photo." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeThread", + "description": "This tool analyzes communication threads related to infrastructure management, such as message threads from incident reports, support tickets, or operational updates. It accepts raw or structured communication data, processes the content to extract insights on thread activity, sentiment, response times, and key topics, and outputs a detailed analysis report with metrics and summaries.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "threadData", + "type": "array", + "description": "Array of message objects representing the communication thread. Each message includes sender, timestamp, and content.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone identifier to normalize timestamps within the thread.", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on message contents.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum number of sentences to include in the summary report.", + "required": false, + "defaultValue": "5" + }, + { + "name": "keyTopicsCount", + "type": "number", + "description": "Number of key topics to extract and highlight from the thread.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing thread metrics (e.g., total messages, participants, response times), sentiment overview, key topics extracted, and a concise textual summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to derive actionable insights and metrics from infrastructure-related communication threads. It is ideal for summarizing long discussion threads in incident response or operational contexts, understanding interaction dynamics, and extracting common themes or sentiment trends.", + "limitations": "This tool does not debug infrastructure or provide direct remediation steps. It relies on textual content and metadata and cannot analyze attachments or non-textual media within threads.", + "examples": [ + "Analyze a week's worth of support ticket thread to determine average response times and sentiment trends.", + "Summarize incident management communication thread to extract key decisions and outstanding action items.", + "Extract main discussion topics from operational update threads and quantify participant engagement." + ] + }, + "tags": [ + "analysis", + "infrastructure", + "communication", + "thread", + "metrics", + "sentiment", + "summary" + ], + "examples": [ + { + "inputJson": "{\"threadData\":[{\"sender\":\"ops_engineer\",\"timestamp\":\"2024-05-01T09:15:00Z\",\"content\":\"Network latency increased at 09:10 AM, investigating.\"},{\"sender\":\"infra_manager\",\"timestamp\":\"2024-05-01T09:20:00Z\",\"content\":\"Please prioritize this issue, impact on production.\"},{\"sender\":\"ops_engineer\",\"timestamp\":\"2024-05-01T09:40:00Z\",\"content\":\"Identified a faulty router; replacement in progress.\"},{\"sender\":\"infra_manager\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"content\":\"Replacement completed, monitoring network performance.\"}]}", + "description": "Thread about a network latency incident showing problem detection, prioritization, and resolution steps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "email-communication.createSpec", + "description": "Generates a detailed specification document for an email communication domain, based on inputs like target audience, campaign objectives, email types, and compliance requirements. It processes given parameters to output a structured spec document that guides email design, content, automation, and legal compliance.", + "category": "email-communication", + "parameters": [ + { + "name": "targetAudience", + "type": "string", + "description": "Description of the audience segment for the email campaigns, e.g., demographics or customer types.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignGoals", + "type": "string", + "description": "Primary objectives of the email campaigns such as engagement, conversions, or information dissemination.", + "required": true, + "defaultValue": "" + }, + { + "name": "emailTypes", + "type": "array", + "description": "List of email types to include in the spec, e.g., newsletters, promotional, transactional.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "complianceRequirements", + "type": "string", + "description": "Regulatory or legal requirements to consider, such as GDPR or CAN-SPAM.", + "required": false, + "defaultValue": "" + }, + { + "name": "automationFeatures", + "type": "array", + "description": "Desired automation features like scheduling, triggers, or user segmentation rules.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "brandingGuidelines", + "type": "string", + "description": "Branding and style guidelines to be incorporated in the email specification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated email communication specification as structured text and key sections." + }, + "aiAgent": { + "useCase": "Use this tool when you need to produce a comprehensive specification document that outlines email campaign goals, audience targeting, types of emails, compliance rules, branding, and automation plans. Ideal for planning and briefing email marketing or transactional message systems.", + "limitations": "This tool does not generate the actual email content or handle sending. It focuses on creating the documentation/specification for email communication strategy and technical requirements.", + "examples": [ + "Create a spec document for promotional and transactional emails targeting US customers, following GDPR and branding guidelines.", + "Generate an email communication spec focusing on engagement and newsletters for millennials.", + "Produce a detailed marketing email campaign spec including automation triggers and compliance with CAN-SPAM Act." + ] + }, + "tags": [ + "email", + "specification", + "communication", + "campaign", + "automation", + "compliance", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"targetAudience\":\"US-based millennials interested in tech products\",\"campaignGoals\":\"Increase engagement and sales conversions\",\"emailTypes\":[\"newsletter\",\"promotional\"],\"complianceRequirements\":\"GDPR\",\"automationFeatures\":[\"scheduled sending\",\"abandoned cart trigger\"],\"brandingGuidelines\":\"Use brand colors #2563EB and #FFFFFF; font Arial\"}", + "description": "Generate a spec for targeted newsletters and promotions adhering to GDPR for millennials." + }, + { + "inputJson": "{\"targetAudience\":\"Global customers\",\"campaignGoals\":\"Informational updates\",\"emailTypes\":[\"transactional\"],\"complianceRequirements\":\"CAN-SPAM Act\",\"automationFeatures\":[],\"brandingGuidelines\":\"Corporate style guidelines\"}", + "description": "Create a specification for transactional emails with CAN-SPAM compliance and simple automation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Spec", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeHeading", + "description": "Analyzes heading text from infrastructure documentation or configuration files to extract key information such as section purpose, critical components, or priority indicators. Accepts a string representing the heading content, applies natural language processing to interpret the heading's intent or importance, and outputs a structured analysis highlighting its role within infrastructure management context.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The heading or title text to analyze, typically from infrastructure documentation or configuration files.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextType", + "type": "string", + "description": "Optional context to specify the domain, e.g., 'cloud', 'network', or 'hardware' to refine analysis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis output including inferred heading category, summary, detected keywords, and importance level." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing infrastructure-related documents or configurations to interpret section headings and extract meaningful metadata or insights about infrastructure components or priorities indicated by the heading text. Helpful for automated document understanding, indexing, or decision support in infrastructure management.", + "limitations": "Cannot analyze full content beyond the heading text; interpretation is limited by natural language ambiguity and lack of broader document context.", + "examples": [ + "Analyze the heading 'Critical Network Components' to identify its relevance and priority.", + "Interpret the heading 'Cloud Backup Procedures' to summarize its role in the document.", + "Assess the heading 'Hardware Maintenance Schedule' to detect key focus areas." + ] + }, + "tags": [ + "infrastructure-management", + "analysis", + "heading", + "NLP", + "documentation", + "cloud", + "network", + "hardware" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Critical Network Components\"}", + "description": "Analyze a network infrastructure heading for critical components." + }, + { + "inputJson": "{\"headingText\":\"Cloud Backup Procedures\",\"contextType\":\"cloud\"}", + "description": "Analyze a cloud-related heading specifying backup procedures." + }, + { + "inputJson": "{\"headingText\":\"Hardware Maintenance Schedule\"}", + "description": "Analyze a heading related to hardware maintenance timeline." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeXML", + "description": "Analyzes XML configuration files related to cloud or physical infrastructure. Accepts raw XML content or file paths, parses and validates the structure, extracts key configuration elements (e.g., nodes, services, resources), and reports inconsistencies or optimization recommendations in a structured summary.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "xmlContent", + "type": "string", + "description": "Raw XML data as a string to analyze. Required if filePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Path to an XML file containing infrastructure configuration. Required if xmlContent is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the XML against a provided schema if available in the system.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractElements", + "type": "array", + "description": "List of XML element names to extract detailed info from. If empty, extracts all relevant infrastructure elements.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "checkConsistency", + "type": "boolean", + "description": "Perform consistency checks among configuration elements, such as dependencies and resource conflicts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "optimizationHints", + "type": "boolean", + "description": "Whether to include recommendations for optimizing the infrastructure configuration based on analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing validation results, extracted elements summary, consistency check outcomes, and optimization hints if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to parse and analyze XML files that define or describe infrastructure setups, including cloud resource configurations and physical device setups. It is ideal for detecting configuration errors, understanding system topology from XML data, and recommending improvements to infrastructure definitions. Agents can supply XML content or file paths to gain insight into structure and potential issues.", + "limitations": "This tool cannot modify or apply configuration changes; it only analyzes and reports. It relies on well-formed XML input and may not fully validate custom schemas unless provided externally. It does not support non-XML configuration formats.", + "examples": [ + "Analyze an XML network configuration file for errors and optimization recommendations.", + "Extract all service definitions from an infrastructure XML manifest string.", + "Check consistency and validate a physical device setup XML file with specific element extraction." + ] + }, + "tags": [ + "infrastructure", + "XML", + "analysis", + "configuration", + "validation", + "optimization", + "cloud", + "physical" + ], + "examples": [ + { + "inputJson": "{\"xmlContent\":\"webdb\",\"validateSchema\":true,\"extractElements\":[\"node\",\"service\"],\"checkConsistency\":true,\"optimizationHints\":true}", + "description": "Analyze inline XML defining two nodes with services, validate schema, extract nodes and services, check for configuration consistency, and provide optimization hints." + }, + { + "inputJson": "{\"filePath\":\"/configs/infra_devices.xml\",\"validateSchema\":false,\"extractElements\":[],\"checkConsistency\":true,\"optimizationHints\":false}", + "description": "Analyze an external XML file describing physical device infrastructure without schema validation, extracting all elements, checking consistency but skipping optimization suggestions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeHTML", + "description": "Analyzes HTML content of infrastructure management dashboards or monitoring pages to extract key metrics, configuration data, and status indicators. Accepts raw HTML as input, parses it, and outputs structured data summarizing system health, resource usage, and alerts found in the HTML content.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML string representing the infrastructure dashboard or status page to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractMetrics", + "type": "boolean", + "description": "Flag to indicate whether to extract performance and usage metrics from the HTML content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractAlerts", + "type": "boolean", + "description": "Flag to indicate whether to extract alerts or warning messages embedded in the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customSelectors", + "type": "object", + "description": "Optional mapping of user-defined CSS selectors to extract specific additional data points from the HTML.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis result including extracted metrics, alerts, configuration summaries, and any custom data points from the HTML." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to obtain structured status and configuration data from infrastructure web dashboards or HTML reports to inform decisions, trigger alerts, or integrate with logging systems. It is particularly useful when no API is available and only HTML views exist.", + "limitations": "Cannot guarantee accurate extraction if HTML structure is highly dynamic or obfuscated. Complex JavaScript-rendered content not included unless HTML contains static snapshots. Extraction accuracy depends on the quality and consistency of the HTML input.", + "examples": [ + "Analyze the HTML page from a cloud infrastructure monitoring portal to get service status and resource utilization.", + "Extract alerts and warnings from an on-premises hardware status webpage given as raw HTML.", + "Retrieve custom configuration parameters using user-provided CSS selectors from an HTML report." + ] + }, + "tags": [ + "infrastructure", + "html", + "analysis", + "monitoring", + "status", + "metrics", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"
CPU: 35%
Disk space low
\",\"extractMetrics\":true,\"extractAlerts\":true,\"customSelectors\":{}}", + "description": "Extract CPU usage metric and alert from a simple HTML snippet." + }, + { + "inputJson": "{\"htmlContent\":\"
Network throughput: 120Mbps
\",\"extractMetrics\":false,\"extractAlerts\":false,\"customSelectors\":{\"customMetric\":\"#customMetric\"}}", + "description": "Extract a custom metric using a user-defined CSS selector without extracting metrics or alerts by default." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "infrastructure-management.sendComment", + "description": "Sends a comment message to a specified infrastructure resource or service communication channel, such as a ticket, deployment log, or incident report. Accepts the target resource identifier and comment content, processes authentication and delivery, and returns the delivery status and message ID if successful.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "targetResourceId", + "type": "string", + "description": "The unique identifier of the infrastructure resource or service channel to which the comment is sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier of the comment's author; used for tracking and notification purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the comment (e.g., 'low', 'normal', 'high').", + "required": false, + "defaultValue": "normal" + }, + { + "name": "timestamp", + "type": "string", + "description": "Optional ISO 8601 formatted timestamp for the comment creation time. Defaults to current time if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the success status, unique comment message ID (if successful), and explanatory message." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to add a textual commentary, note, or update to an infrastructure-related entity such as deployment tickets, incident dashboards, or configuration logs. It enables programmatic communication and documentation within infrastructure management workflows.", + "limitations": "This tool does not analyze or interpret the comment content, nor does it initiate other actions beyond sending the comment message. It assumes valid authentication and existing communication channels for specified resource IDs.", + "examples": [ + "Add a high-priority comment to the deployment ticket about a configuration fix.", + "Send a normal priority note to the incident report indicating monitoring completed.", + "Post a comment as the system bot updating log status." + ] + }, + "tags": [ + "infrastructure", + "comment", + "communication", + "cloud", + "incident-management", + "ticketing" + ], + "examples": [ + { + "inputJson": "{\"targetResourceId\":\"ticket-12345\",\"commentText\":\"Investigated the issue; root cause identified.\",\"authorId\":\"user-789\",\"priority\":\"high\"}", + "description": "Send a high priority comment about issue investigation results to a ticket." + }, + { + "inputJson": "{\"targetResourceId\":\"incident-2023\",\"commentText\":\"Monitoring resumed after brief outage.\",\"authorId\":\"monitoring-bot\",\"priority\":\"normal\"}", + "description": "Add a normal priority monitoring update to an incident report." + }, + { + "inputJson": "{\"targetResourceId\":\"deploy-log-456\",\"commentText\":\"Deployment completed successfully.\",\"authorId\":\"devops-user\"}", + "description": "Post a success note to a deployment log with default normal priority." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "infrastructure-management.formatSentence", + "description": "Formats a descriptive sentence about an infrastructure component or event for improved clarity, consistency, and readability. Accepts an input sentence related to infrastructure management and applies formatting options such as capitalization style, terminology standardization, and punctuation adjustments to produce a polished output sentence suitable for reports, logs, or alerts.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "inputSentence", + "type": "string", + "description": "The raw sentence related to infrastructure that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeStyle", + "type": "string", + "description": "Style for capitalization: 'sentence' (capitalize first word only), 'title' (capitalize major words), or 'none' (no capitalization changes).", + "required": false, + "defaultValue": "sentence" + }, + { + "name": "standardizeTerminology", + "type": "boolean", + "description": "Whether to standardize common infrastructure terms to predefined standard forms.", + "required": false, + "defaultValue": "true" + }, + { + "name": "punctuationCorrection", + "type": "boolean", + "description": "Whether to correct punctuation issues such as missing periods or excessive spaces.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the output sentence in characters. Longer sentences will be truncated with an ellipsis.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted sentence string and optional metadata about formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when a raw or unstructured sentence describing a cloud or physical infrastructure component, event, or status needs to be polished for inclusion in human-readable reports, dashboards, alerts, or documentation. It helps convert informal or inconsistent sentences into a standardized, clear format that improves communication clarity among infrastructure engineers or management.", + "limitations": "This tool does not perform semantic corrections or verify factual accuracy; it only formats the sentence's appearance. It cannot translate languages or interpret domain-specific jargon beyond generic terminology standardization.", + "examples": [ + "Format an alert message about a server outage for a logs dashboard.", + "Standardize status update sentences from different cloud providers into a consistent style.", + "Polish sentences describing network configuration changes for a management report." + ] + }, + "tags": [ + "formatting", + "infrastructure", + "sentence", + "text-processing", + "reporting", + "logs", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"inputSentence\":\"the vm instance terminated unexpectedly\",\"capitalizeStyle\":\"sentence\",\"standardizeTerminology\":true,\"punctuationCorrection\":true,\"maxLength\":100}", + "description": "Format a sentence describing a virtual machine instance termination with standardized terminology and correct punctuation." + }, + { + "inputJson": "{\"inputSentence\":\"server rack #12 has power loss \",\"capitalizeStyle\":\"title\",\"standardizeTerminology\":true,\"punctuationCorrection\":true,\"maxLength\":100}", + "description": "Format a raw sentence about a server rack power loss with title capitalization and corrections." + }, + { + "inputJson": "{\"inputSentence\":\"network interface eth0 disabled due to error\",\"capitalizeStyle\":\"none\",\"standardizeTerminology\":false,\"punctuationCorrection\":false,\"maxLength\":50}", + "description": "Return the sentence with no capitalization or punctuation changes but apply max length limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "infrastructure-management.renderWord", + "description": "Renders a given word as a stylized image suitable for use in infrastructure management dashboards or documentation. Accepts a text string and rendering options, processes the styling and formatting, and outputs a PNG or SVG image encoding of the rendered word.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The text word to be rendered into an image.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for rendering the word.", + "required": false, + "defaultValue": "24" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family to use, e.g., Arial, Roboto, monospace.", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "color", + "type": "string", + "description": "Text color as a hex code or named color (e.g., #000000 or red).", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color of the image, transparent if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output image format, either 'png' or 'svg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render the word in bold style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render the word in italic style.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the image data as a base64-encoded string and the mime type of the image." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate visually styled textual elements for infrastructure management interfaces, reports, or documentation, where embedding rendered text images improves clarity or aesthetics. This is particularly useful when specific fonts or styling are needed that may not be supported natively in certain environments.", + "limitations": "This tool cannot render multiple words as a phrase with complex layout, nor does it support animations or interactive elements. It only renders single words as static images.", + "examples": [ + "Render the word 'Server' in bold red text with transparent background as PNG.", + "Render the word 'Node' in 30px italic font with blue color, output as SVG.", + "Render the word 'LoadBalancer' in default style with white background." + ] + }, + "tags": [ + "rendering", + "infrastructure", + "visualization", + "image-generation", + "text-to-image", + "ui-element" + ], + "examples": [ + { + "inputJson": "{\"word\":\"Server\",\"fontSize\":28,\"color\":\"#ff0000\",\"bold\":true,\"backgroundColor\":\"\",\"format\":\"png\"}", + "description": "Render the word 'Server' in bold red text with default font and transparent background as a PNG image." + }, + { + "inputJson": "{\"word\":\"Node\",\"fontSize\":30,\"fontFamily\":\"Roboto\",\"color\":\"blue\",\"italic\":true,\"format\":\"svg\"}", + "description": "Render the word 'Node' in 30px italic Roboto font, blue color output as SVG." + }, + { + "inputJson": "{\"word\":\"LoadBalancer\",\"fontSize\":24,\"backgroundColor\":\"#ffffff\"}", + "description": "Render the word 'LoadBalancer' with default font size 24px and white background in PNG format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "infrastructure-management.formatParagraph", + "description": "Formats a paragraph of text typically used in infrastructure change logs, status reports, or documentation. Accepts raw paragraph text and applies consistent indentation, line width wrapping, optional bullet point formatting, and margin spacing. Outputs a well-structured formatted string suitable for display or logging.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width before wrapping occurs. Lines longer than this number will be wrapped to next line.", + "required": false, + "defaultValue": "80" + }, + { + "name": "indentSpaces", + "type": "number", + "description": "Number of spaces to indent each line of the paragraph.", + "required": false, + "defaultValue": "4" + }, + { + "name": "bulletPoint", + "type": "string", + "description": "Optional bullet point or marker to prefix the paragraph lines. If empty, no bulleting is applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "marginSpaces", + "type": "number", + "description": "Number of spaces as left margin before indentation begins, to separate from left boundary or UI elements.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph string as 'formattedText'." + }, + "aiAgent": { + "useCase": "Use this tool when generating or formatting infrastructure-related textual content such as status updates, maintenance logs, or documentation paragraphs where consistent readability and standard layout is required. It helps enforce style guidelines on text blocks before display or storage.", + "limitations": "Does not perform grammar or spell checking, nor does it parse technical content semantically. It focuses solely on whitespace, line wrapping, indentation, and optional bullet formatting.", + "examples": [ + "Format a raw status report paragraph into 80-char wrapped lines with 4-space indentation.", + "Add a bullet point '*' to each line of a maintenance note formatted with 2-space indentation.", + "Wrap and indent a paragraph without bullet points and with a 5-space left margin." + ] + }, + "tags": [ + "formatting", + "text", + "infrastructure", + "documentation", + "reporting", + "indentation", + "wrapping" + ], + "examples": [ + { + "inputJson": "{\"text\":\"The deployment was successful without any errors. All services are running smoothly and responding within acceptable latency thresholds.\",\"lineWidth\":60,\"indentSpaces\":2,\"bulletPoint\":\"-\",\"marginSpaces\":2}", + "description": "Format an update paragraph wrapped to 60 characters, with 2 space indent, prefixed by bullet points, and 2 space left margin." + }, + { + "inputJson": "{\"text\":\"Scheduled maintenance on the database cluster will occur at midnight UTC. Users may experience brief downtime.\",\"lineWidth\":50,\"indentSpaces\":4,\"bulletPoint\":\"\",\"marginSpaces\":0}", + "description": "Format a maintenance note paragraph wrapped to 50 characters with 4 spaces indentation and no bullet points or margin." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "infrastructure-management.formatCSV", + "description": "Formats CSV data for infrastructure configuration or inventory management by accepting raw CSV text and applying specified delimiters, quote characters, and line endings. Produces a clean, well-formatted CSV string suitable for use in cloud or physical infrastructure tools.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "The raw CSV data as a string to be formatted properly.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character to use as a field delimiter, e.g., comma, semicolon, or tab.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character to wrap fields if they contain delimiters or special characters, e.g., double quote.", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineEnding", + "type": "string", + "description": "The line ending sequence used in the output CSV, e.g., \\n or \\r\\n.", + "required": false, + "defaultValue": "\n" + }, + { + "name": "headers", + "type": "array", + "description": "Optional ordered array of header names to enforce or reorder columns in output CSV.", + "required": false, + "defaultValue": "" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from each field before formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted CSV string under 'formattedCSV' key with consistent delimiters and line endings." + }, + "aiAgent": { + "useCase": "Use this tool when needing to clean, standardize, or reformat CSV data related to infrastructure resources, inventories, or configurations before importing into infrastructure management systems or cloud platforms. Ideal for normalizing varying CSV inputs to a consistent format.", + "limitations": "This tool does not validate CSV content correctness or schema conformity; it only formats the raw CSV text. It does not parse nested structures or convert CSV to other data formats.", + "examples": [ + "Format raw inventory CSV with semicolon delimiters and Windows line endings.", + "Standardize cloud resource CSV with specific headers and quote characters.", + "Clean CSV input by trimming whitespace and enforcing comma delimiters." + ] + }, + "tags": [ + "csv", + "formatting", + "infrastructure", + "data-cleaning", + "configuration", + "inventory" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"name, ip, role\\nserver1, 192.168.1.5,backup\",\"delimiter\":\",\",\"quoteChar\":\"\\\"\",\"lineEnding\":\"\\n\",\"headers\":[\"name\",\"ip\",\"role\"],\"trimWhitespace\":true}", + "description": "Format simple CSV with standard comma delimiter and header order." + }, + { + "inputJson": "{\"csvData\":\"hostname;ip address;status\\nrouter1;10.0.0.1;active\",\"delimiter\":\";\",\"quoteChar\":\"\\\"\",\"lineEnding\":\"\\r\\n\",\"headers\":[],\"trimWhitespace\":false}", + "description": "Format CSV using semicolon delimiter and Windows style line endings without trimming whitespace." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "infrastructure-management.formatEndpoint", + "description": "Formats infrastructure endpoint definitions into standardized URL strings for use in cloud and on-prem systems. Accepts endpoint objects with properties like protocol, IP, port, path, and query parameters, and returns consistent, validated endpoint URLs suitable for service configuration and integration.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "endpoint", + "type": "object", + "description": "Endpoint definition object including protocol, IP, port, path, and optional query parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeProtocol", + "type": "boolean", + "description": "Whether to include the protocol scheme (http, https) in the formatted output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "encodeQueryParameters", + "type": "boolean", + "description": "Whether to URL-encode query parameter keys and values.", + "required": false, + "defaultValue": "true" + }, + { + "name": "defaultPort", + "type": "number", + "description": "Default port to use if none specified in the endpoint object.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted endpoint URL string and a validation status indicating if the URL is syntactically valid." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert endpoint definitions from configuration objects into standardized URL strings for use in API calls, network monitoring, or infrastructure management tools. It helps ensure endpoints are correctly formatted, protocols included, and query parameters properly serialized and encoded where needed.", + "limitations": "Does not perform DNS resolution or endpoint availability checks. Cannot infer missing protocol unless explicitly set. Does not validate IP address reachability or security compliance.", + "examples": [ + "Format a given endpoint object into a URL string including protocol and encoded queries.", + "Generate a URL string from an endpoint lacking port info, providing a default port.", + "Format an endpoint excluding the protocol prefix for local network usage." + ] + }, + "tags": [ + "infrastructure", + "endpoint", + "url-formatting", + "networking", + "configuration", + "cloud", + "physical-infrastructure" + ], + "examples": [ + { + "inputJson": "{\"endpoint\":{\"protocol\":\"https\",\"ip\":\"192.168.1.100\",\"port\":443,\"path\":\"/api/v1/status\",\"query\":{\"verbose\":\"true\",\"token\":\"abc123\"}},\"includeProtocol\":true,\"encodeQueryParameters\":true,\"defaultPort\":443}", + "description": "Format a secure endpoint with query parameters encoded and protocol included." + }, + { + "inputJson": "{\"endpoint\":{\"ip\":\"10.0.0.5\",\"path\":\"/metrics\"},\"includeProtocol\":false,\"encodeQueryParameters\":true,\"defaultPort\":9100}", + "description": "Format a local endpoint without protocol, using default port 9100." + }, + { + "inputJson": "{\"endpoint\":{\"protocol\":\"http\",\"ip\":\"example.com\",\"port\":80,\"path\":\"/health\"},\"includeProtocol\":true,\"encodeQueryParameters\":false,\"defaultPort\":80}", + "description": "Format an HTTP endpoint with plain query parameters, protocol included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "infrastructure-management.composeNotification", + "description": "Composes a structured notification message intended for infrastructure management contexts. Accepts inputs such as event details, severity, target audience, and preferred communication channels, then generates a formatted notification ready for dispatch via email, SMS, or other configured endpoints.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "eventTitle", + "type": "string", + "description": "The title or summary of the event triggering the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDetails", + "type": "string", + "description": "Detailed description of the event or alert to include in the notification body.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity of the event, e.g., 'critical', 'warning', 'info', used to adjust notification urgency and formatting.", + "required": false, + "defaultValue": "info" + }, + { + "name": "targetAudience", + "type": "array", + "description": "List of user roles or groups that should receive the notification (e.g., ['oncall', 'engineers']).", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Preferred communication channel for the notification (e.g., 'email', 'sms', 'slack').", + "required": false, + "defaultValue": "email" + }, + { + "name": "additionalData", + "type": "object", + "description": "Optional key-value pairs for custom fields or metadata to include in the notification.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification message, ready for sending, with fields for subject, body content, recipients, and channel." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send alerts or informational messages related to infrastructure events, such as server downtime, deployment updates, or security incidents. It helps format and tailor notifications to the appropriate audience and channels to ensure timely and effective communication.", + "limitations": "This tool composes notification content but does not send or schedule message delivery. It also does not handle localization or translations automatically.", + "examples": [ + "Compose a critical alert notification for on-call engineers via SMS about a server outage.", + "Generate an informational deployment update sent to the engineering team by email.", + "Create a warning message to notify the security group on Slack about suspicious login attempts." + ] + }, + "tags": [ + "infrastructure", + "notification", + "alert", + "communication", + "management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"eventTitle\":\"Server Outage Detected\",\"eventDetails\":\"The primary database server has been unresponsive since 03:15 UTC.\",\"severityLevel\":\"critical\",\"targetAudience\":[\"oncall\",\"dbadmin\"],\"channel\":\"sms\",\"additionalData\":{\"ticketId\":\"INC123456\"}}", + "description": "Compose a critical SMS notification alerting on-call and DB admins about a database outage with incident ticket reference." + }, + { + "inputJson": "{\"eventTitle\":\"Weekly Maintenance Completion\",\"eventDetails\":\"Scheduled maintenance on servers completed successfully.\",\"severityLevel\":\"info\",\"targetAudience\":[\"engineering\"],\"channel\":\"email\"}", + "description": "Create an informational email notification to the engineering team indicating successful completion of maintenance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "infrastructure-management.generateTrend", + "description": "This tool analyzes historical infrastructure monitoring metrics (CPU, memory, network, disk I/O) over a specified time range, detecting trends and anomalies. It accepts time-series metric data and optional filters, processes to identify growth patterns or deviations, and outputs summarized trend insights with confidence scores for informed infrastructure management decisions.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of infrastructure metric names to analyze (e.g., CPUUtilization, NetworkIn).", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp to start trend analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 timestamp to end trend analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationInterval", + "type": "string", + "description": "Time interval for aggregating data points (e.g., 5m, 1h).", + "required": false, + "defaultValue": "1h" + }, + { + "name": "filters", + "type": "object", + "description": "Optional key-value pairs to filter data (e.g., by region, instance type).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeAnomalies", + "type": "boolean", + "description": "Whether to detect and include anomaly detection in the trend output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity parameter for anomaly detection from 0 (low) to 1 (high).", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing trend summaries for each metric, including trend type (upward, downward, stable), anomaly points, and confidence scores." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand infrastructure performance trends over time from historical metric data to aid capacity planning and issue detection. It helps identify performance degradations or improvements and predict future resource needs. AI agents should invoke it when analyzing monitoring data or automating infrastructure optimization decisions.", + "limitations": "This tool does not collect raw metric data itself and requires pre-collected, normalized time-series data. It does not perform root cause analysis beyond trend detection and anomaly flagging. Extremely sparse or noisy data may reduce accuracy.", + "examples": [ + "Generate trends for CPUUtilization and NetworkIn metrics over the last 7 days aggregated hourly.", + "Analyze memory and disk I/O metrics for a specific availability zone filtering region=us-west-2 between two timestamps.", + "Detect anomalies and trends in latency metrics over a 24-hour window with high sensitivity." + ] + }, + "tags": [ + "infrastructure", + "trend-analysis", + "monitoring", + "metrics", + "anomaly-detection", + "performance", + "capacity-planning" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"CPUUtilization\",\"NetworkIn\"],\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T23:59:59Z\",\"aggregationInterval\":\"1h\",\"includeAnomalies\":true,\"sensitivity\":0.6}", + "description": "Analyze hourly CPU and Network input metrics for a full week to understand usage trends and detect anomalies." + }, + { + "inputJson": "{\"metrics\":[\"MemoryUsage\",\"DiskReadOps\"],\"startTime\":\"2024-06-01T00:00:00Z\",\"endTime\":\"2024-06-01T23:59:59Z\",\"filters\":{\"region\":\"us-east-1\"},\"includeAnomalies\":false}", + "description": "Generate daily trends of memory and disk read operations for resources in the us-east-1 region without anomaly detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "infrastructure-management.buildComponent", + "description": "Builds a reusable infrastructure component based on provided specifications. Accepts parameters defining the component's type, configuration, dependencies, and deployment environment. Processes the inputs to generate deployment-ready infrastructure code (e.g., Terraform, CloudFormation templates) and outputs metadata about the component for integration.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of infrastructure component to build (e.g., virtual machine, database, load balancer).", + "required": true, + "defaultValue": "" + }, + { + "name": "configuration", + "type": "object", + "description": "Configuration details specific to the component type such as size, network settings, and version.", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of other component IDs this component depends on to manage provisioning order.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "environment", + "type": "string", + "description": "Target deployment environment (e.g., production, staging, development).", + "required": true, + "defaultValue": "production" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output infrastructure as code format, such as 'Terraform' or 'CloudFormation'.", + "required": false, + "defaultValue": "Terraform" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated infrastructure code as a string, metadata about the component (ID, type), and deployment guidance." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate the creation of cloud or physical infrastructure components by generating standardized and reusable deployment configurations. It is ideal for integrating infrastructure as code generation in larger automation pipelines or infrastructure provisioning workflows.", + "limitations": "Does not handle actual deployment or lifecycle management; generates code artifacts that require separate provisioning tools. It does not verify compatibility with provider-specific constraints beyond general validation.", + "examples": [ + "Build a virtual machine component with a specified CPU and memory configuration for the production environment.", + "Generate an AWS RDS database component in Terraform format with given network settings and backups enabled.", + "Create a load balancer component depending on two existing virtual machine components for staging." + ] + }, + "tags": [ + "infrastructure", + "build", + "component", + "automation", + "IaC", + "cloud", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"virtualMachine\",\"configuration\":{\"cpuCores\":4,\"memoryGB\":16,\"os\":\"Ubuntu20.04\",\"diskSizeGB\":100},\"dependencies\":[],\"environment\":\"production\",\"outputFormat\":\"Terraform\"}", + "description": "Build a production Linux virtual machine component with 4 CPU cores and 16 GB RAM using Terraform." + }, + { + "inputJson": "{\"componentType\":\"database\",\"configuration\":{\"engine\":\"postgresql\",\"version\":\"13\",\"storageGB\":500,\"multiAz\":true},\"dependencies\":[],\"environment\":\"staging\",\"outputFormat\":\"CloudFormation\"}", + "description": "Build a staging PostgreSQL database component with multi-AZ support in CloudFormation format." + }, + { + "inputJson": "{\"componentType\":\"loadBalancer\",\"configuration\":{\"type\":\"application\",\"listeners\":[{\"port\":80,\"protocol\":\"HTTP\"}]},\"dependencies\":[\"vm-1234\",\"vm-5678\"],\"environment\":\"staging\",\"outputFormat\":\"Terraform\"}", + "description": "Build a staging application load balancer that depends on two virtual machines, output in Terraform." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "infrastructure-management.generateSchema", + "description": "Generates infrastructure-as-code schemas based on user-defined infrastructure components and configurations. Accepts input describing cloud or physical resources, their properties, and relationships, then processes this input to generate JSON or YAML schema files compliant with formats like Terraform or CloudFormation. Outputs ready-to-use schema code for infrastructure deployment automation.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureType", + "type": "string", + "description": "Type of infrastructure to generate schema for, e.g., 'terraform', 'cloudformation', or 'kubernetes'.", + "required": true, + "defaultValue": "" + }, + { + "name": "resources", + "type": "array", + "description": "Array of infrastructure resource objects specifying their type, properties, and relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output file format: 'json' or 'yaml'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata (e.g., versioning, author info) in the generated schema.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaVersion", + "type": "string", + "description": "Version of the schema specification to target, e.g., 'v1.0'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated schema as a string and metadata about the schema such as format and version." + }, + "aiAgent": { + "useCase": "Use this tool when automating the creation of infrastructure-as-code templates based on specified resources and configurations. It helps translate abstract infrastructure designs into valid schema definitions for deployment tools like Terraform or CloudFormation, streamlining infrastructure provisioning and management.", + "limitations": "This tool cannot validate external dependencies or runtime infrastructure states, nor can it execute deployment. It only generates schema code from given resource definitions, so input must be accurate and complete for successful use.", + "examples": [ + "Generate a Terraform schema for a simple VPC and EC2 instance setup.", + "Produce a CloudFormation JSON schema for an S3 bucket with versioning enabled.", + "Create a Kubernetes YAML schema for deploying a set of containerized applications." + ] + }, + "tags": [ + "infrastructure", + "schema-generation", + "terraform", + "cloudformation", + "kubernetes", + "IaC", + "automation" + ], + "examples": [ + { + "inputJson": "{\"infrastructureType\":\"terraform\",\"resources\":[{\"type\":\"aws_vpc\",\"name\":\"main_vpc\",\"properties\":{\"cidr_block\":\"10.0.0.0/16\"}},{\"type\":\"aws_instance\",\"name\":\"web_server\",\"properties\":{\"ami\":\"ami-0abcdef1234567890\",\"instance_type\":\"t2.micro\",\"subnet_id\":\"${aws_subnet.main_subnet.id}\"}}],\"outputFormat\":\"json\",\"includeMetadata\":true,\"schemaVersion\":\"1.0\"}", + "description": "Generate a Terraform JSON schema with a VPC and an EC2 instance, including metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "infrastructure-management.createReply", + "description": "Generates a structured reply message for communication regarding infrastructure management tasks. Accepts inputs such as recipient, message content, context (e.g., issue type, request type), and urgency level, then formats and outputs a clear, polite, and context-aware reply suitable for email, chat, or ticketing systems.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "The name or identifier of the message recipient (e.g., user, team).", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The main content or details to be included in the reply message.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Context for the reply such as 'incident', 'request update', or 'general inquiry'.", + "required": false, + "defaultValue": "general inquiry" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency of the reply, e.g., 'low', 'medium', 'high'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeTechnicalDetails", + "type": "boolean", + "description": "Whether to include technical details or not in the reply.", + "required": false, + "defaultValue": "true" + }, + { + "name": "replyFormat", + "type": "string", + "description": "Format of the reply like 'email', 'chat', or 'ticket'.", + "required": false, + "defaultValue": "email" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted reply message text and metadata such as recipient and format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate polite, contextually appropriate replies related to infrastructure management communications, such as responding to incident reports, change requests, or status inquiries. It ensures replies are clear, appropriately detailed, and formatted for the specified communication channel.", + "limitations": "This tool does not send the reply message to recipients; it only generates the message content. It also cannot interpret highly specialized technical logs deeply, relying on provided context.", + "examples": [ + "Generate a reply to a network outage report to the operations team with high urgency including technical details.", + "Create a follow-up reply to a general infrastructure maintenance request via chat without too much technical jargon.", + "Formulate a polite response acknowledging receipt of a support ticket with medium urgency in an email format." + ] + }, + "tags": [ + "communication", + "infrastructure", + "reply", + "messaging", + "automation" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"Operations Team\",\"messageContent\":\"The network outage has been identified and a fix is in progress.\",\"context\":\"incident\",\"urgencyLevel\":\"high\",\"includeTechnicalDetails\":true,\"replyFormat\":\"email\"}", + "description": "Reply to an outage incident for the operations team with technical details included in an email format." + }, + { + "inputJson": "{\"recipient\":\"User123\",\"messageContent\":\"Your infrastructure upgrade request has been received and is scheduled.\",\"context\":\"request update\",\"urgencyLevel\":\"medium\",\"includeTechnicalDetails\":false,\"replyFormat\":\"chat\"}", + "description": "Follow-up reply to a user's upgrade request in a chat format without technical details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "infrastructure-management.createAttachment", + "description": "Creates an attachment resource linking files or media to infrastructure entities such as virtual machines, containers, or physical devices. Accepts input including attachment name, type, the target infrastructure ID, and the file content or URL. Processes the file upload or link creation and returns attachment metadata including ID, storage location, and association details.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "attachmentName", + "type": "string", + "description": "A descriptive name for the attachment to identify it within the infrastructure context.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachmentType", + "type": "string", + "description": "The media type or category of the attachment (e.g., 'logfile', 'screenshot', 'configDump').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetResourceId", + "type": "string", + "description": "The unique identifier of the infrastructure resource (e.g., VM ID, container ID) to which the attachment links.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "Base64 encoded content of the file to be attached. Either this or fileUrl must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileUrl", + "type": "string", + "description": "Optional URL to a hosted file to link as an attachment. Either this or fileContentBase64 must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional additional description or notes about the attachment.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Metadata of the created attachment including its unique ID, associated resource, storage location, attachment name and type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically add or link files/media (logs, screenshots, config files) to managed infrastructure resources for tracking, auditing or support purposes. It enables systematic management of infrastructure attachments by linking raw data or references to specific infrastructure entities.", + "limitations": "This tool does not handle large file streaming or storage policy enforcement; it only creates metadata and stores small attachments or references. It cannot modify or delete existing attachments.", + "examples": [ + "Create an attachment file containing diagnostic logs for a specific VM.", + "Attach a screenshot URL to a container resource for visual verification.", + "Add a configuration dump file content as an attachment to a physical server entity." + ] + }, + "tags": [ + "infrastructure", + "attachments", + "media", + "file-management", + "infrastructure-resources" + ], + "examples": [ + { + "inputJson": "{\"attachmentName\":\"Server Error Logs\",\"attachmentType\":\"logfile\",\"targetResourceId\":\"vm-12345\",\"fileContentBase64\":\"VGhpcyBpcyBhIHNhbXBsZSBsb2cgY29udGVudC4=\",\"description\":\"Error logs captured at the time of failure.\"}", + "description": "Attach a base64 encoded log file content to a virtual machine identified by vm-12345." + }, + { + "inputJson": "{\"attachmentName\":\"Container Screenshot\",\"attachmentType\":\"screenshot\",\"targetResourceId\":\"container-67890\",\"fileUrl\":\"https://example.com/screenshots/container-67890.png\",\"description\":\"Visual check of container state.\"}", + "description": "Attach a screenshot via URL to a container resource for visual verification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "infrastructure-management.createThread", + "description": "Creates a communication thread within an infrastructure management system for coordinating tasks, alerts, or incidents. Accepts inputs such as thread title, participants, initial message, and optional tags. Establishes a new thread resource and returns its unique identifier and metadata details.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "threadTitle", + "type": "string", + "description": "The title or subject of the communication thread to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant identifiers (user IDs or service IDs) who will be part of the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessage", + "type": "string", + "description": "The first message content to start the thread conversation.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or labels to categorize the thread, such as 'incident', 'deployment', or 'alert'.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the thread, e.g., 'low', 'normal', 'high'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique thread ID, creation timestamp, participants list, and thread metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initiate a structured communication channel for coordinating infrastructure-related events, such as incidents, deployments, or alerts, involving multiple participants. It facilitates tracking and managing communications tied to infrastructure management tasks.", + "limitations": "This tool does not send notifications to participants; separate notification tools should be used. It also does not handle message threading or replies beyond the initial message creation.", + "examples": [ + "Create a new incident communication thread titled 'Database Outage Alert' with members from the DB team.", + "Establish a thread for deployment coordination with the release engineering group.", + "Start a tagged communication channel for urgent security patch discussion with security and ops teams." + ] + }, + "tags": [ + "infrastructure", + "communication", + "thread", + "collaboration", + "incident-management", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"threadTitle\":\"Server Maintenance Coordination\",\"participants\":[\"user123\",\"user456\"],\"initialMessage\":\"Starting scheduled server maintenance at 10 PM.\",\"tags\":[\"maintenance\",\"schedule\"],\"priority\":\"high\"}", + "description": "Creating a high priority thread for coordinating server maintenance among two users with specified tags." + }, + { + "inputJson": "{\"threadTitle\":\"Network Outage Incident\",\"participants\":[\"netops1\",\"netops2\",\"manager1\"],\"initialMessage\":\"Detected a network outage in zone 3.\",\"tags\":[\"incident\",\"network\"],\"priority\":\"high\"}", + "description": "Initiating a high priority incident thread involving network operations and management for outage handling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "infrastructure-management.createHTML", + "description": "Creates customized HTML files to visualize infrastructure configurations and statuses. Accepts JSON objects describing servers, networks, and services, processes them into interactive HTML dashboards or reports, and outputs the complete HTML content as a string or file ready for deployment or viewing.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "infrastructureData", + "type": "object", + "description": "JSON object containing infrastructure details like servers, networks, and services with their statuses and properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeStyles", + "type": "boolean", + "description": "Flag indicating whether to embed default CSS styles directly into the generated HTML file for standalone usage.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputType", + "type": "string", + "description": "Format of the output: 'string' returns HTML content as a string, 'file' triggers saving to a specified path.", + "required": false, + "defaultValue": "string" + }, + { + "name": "filePath", + "type": "string", + "description": "File system path to save the HTML file if outputType is set to 'file'. Ignored if outputType is 'string'.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the HTML document to be used in the tag and header section.", + "required": false, + "defaultValue": "Infrastructure Overview" + }, + { + "name": "enableInteractivity", + "type": "boolean", + "description": "Enable interactive elements in the HTML report such as collapsible sections and status filters.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML content as a string and optionally the file path if saved to disk." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw infrastructure data described in JSON format into clean, readable, and interactive HTML reports or dashboards for monitoring, sharing, or documentation purposes. It simplifies the representation of complex infrastructure setups for human operators or stakeholders.", + "limitations": "This tool only generates static or lightly interactive HTML based on provided JSON data. It cannot pull live infrastructure data or manage infrastructure resources directly.", + "examples": [ + "Generate a standalone HTML dashboard showing current server statuses from JSON.", + "Create an HTML report saved to disk displaying network devices and their connections.", + "Produce a minimal styled HTML summary for a cloud infrastructure to embed in documentation." + ] + }, + "tags": [ + "infrastructure", + "HTML", + "reporting", + "visualization", + "dashboard", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"infrastructureData\":{\"servers\":[{\"name\":\"web01\",\"status\":\"healthy\"},{\"name\":\"db01\",\"status\":\"degraded\"}],\"networks\":[{\"name\":\"netA\",\"type\":\"private\"}]},\"title\":\"Prod Infra Status\",\"includeStyles\":true,\"enableInteractivity\":true,\"outputType\":\"string\"}", + "description": "Creates an interactive HTML dashboard as a string showing server health and network info with embedded styles." + }, + { + "inputJson": "{\"infrastructureData\":{\"servers\":[{\"name\":\"app01\",\"status\":\"healthy\",\"ip\":\"10.0.0.5\"}]},\"outputType\":\"file\",\"filePath\":\"/tmp/infra_report.html\",\"title\":\"App Server Report\",\"includeStyles\":false,\"enableInteractivity\":false}", + "description": "Generates a plain HTML file saved to disk for a single server infrastructure report without styles or interactivity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "infrastructure-management.createResume", + "description": "Generates a professional resume document tailored specifically for roles in infrastructure management. Accepts user profile data, including work experience, skills, certifications, education, and preferences, then formats and compiles a structured resume output in PDF or text format to support job applications in the infrastructure domain.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "fullName", + "type": "string", + "description": "The candidate's full name to be displayed on the resume.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInformation", + "type": "object", + "description": "Contact details including email, phone number, and optionally LinkedIn or GitHub URLs.", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "A brief professional summary or objective statement for the resume.", + "required": false, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "An array of work experience entries, each including job title, company name, start/end dates, and description of responsibilities/achievements.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "Array of educational qualifications including degree, institution, and graduation year.", + "required": false, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "List of relevant technical and soft skills related to infrastructure management.", + "required": true, + "defaultValue": "" + }, + { + "name": "certifications", + "type": "array", + "description": "List of relevant certifications with name and issuing organization.", + "required": false, + "defaultValue": "" + }, + { + "name": "resumeFormat", + "type": "string", + "description": "Desired output resume format, e.g., 'PDF' or 'Text'.", + "required": false, + "defaultValue": "PDF" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured object containing the generated resume content as a base64-encoded string or plain text along with the format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a formatted, job-ready resume document for candidates specializing in infrastructure management roles, transforming structured user career data into a professional resume format.", + "limitations": "Cannot verify the accuracy or truthfulness of the input data. Does not provide interview preparation or career counseling. Limited to infrastructure management domain context and may not cover other industries well.", + "examples": [ + "Generate a resume PDF for an infrastructure engineer including 5 years experience, AWS certifications, and cloud deployment skills.", + "Create a plain text resume highlighting network administration skills and recent education for an entry-level candidate.", + "Produce a formatted resume document with detailed work history and a professional summary for a DevOps manager." + ] + }, + "tags": [ + "resume", + "infrastructure", + "document-generation", + "career", + "job-application", + "pdf", + "text", + "infrastructure-management" + ], + "examples": [ + { + "inputJson": "{\"fullName\":\"Alex Morgan\",\"contactInformation\":{\"email\":\"alex.morgan@example.com\",\"phone\":\"+1234567890\",\"linkedin\":\"linkedin.com/in/alexmorgan\"},\"summary\":\"Experienced Infrastructure Engineer specializing in cloud and network solutions.\",\"workExperience\":[{\"jobTitle\":\"Senior Infrastructure Engineer\",\"companyName\":\"TechCorp\",\"startDate\":\"2018-05\",\"endDate\":\"2023-03\",\"description\":\"Designed and maintained cloud infrastructure using AWS and Azure.\"},{\"jobTitle\":\"Infrastructure Engineer\",\"companyName\":\"NetSolutions\",\"startDate\":\"2015-06\",\"endDate\":\"2018-04\",\"description\":\"Managed corporate network security and VPN deployments.\"}],\"education\":[{\"degree\":\"BSc Computer Science\",\"institution\":\"State University\",\"graduationYear\":2015}],\"skills\":[\"AWS\",\"Azure\",\"Docker\",\"Kubernetes\",\"Networking\",\"Linux\"],\"certifications\":[{\"name\":\"AWS Certified Solutions Architect\",\"issuer\":\"Amazon\"}],\"resumeFormat\":\"PDF\"}", + "description": "Generate a PDF resume for a senior infrastructure engineer with AWS certification, work history, and skills." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "monitoring.analyzeReference", + "description": "Analyzes system or application performance reference data to identify patterns, trends, or anomalies. Accepts input logs, metrics, or reference configuration snapshots, processes them using time-series and statistical analysis methods, and outputs a detailed report highlighting performance bottlenecks, deviations, or baseline comparisons.", + "category": "monitoring", + "parameters": [ + { + "name": "referenceData", + "type": "object", + "description": "Structured performance reference data including logs, metrics, or snapshot objects to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "ISO 8601 start time for the analysis window. Optional, defaults to the earliest timestamp in the data.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "ISO 8601 end time for the analysis window. Optional, defaults to the latest timestamp in the data.", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "List of analysis methods to apply, such as ['trend','anomaly','baselineComparison'].", + "required": false, + "defaultValue": "[\"trend\",\"anomaly\"]" + }, + { + "name": "sensitivityThreshold", + "type": "number", + "description": "Threshold parameter (0-1) controlling sensitivity of anomaly detection, higher means more sensitive.", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "includeRawData", + "type": "boolean", + "description": "Whether to include raw reference data in the output for further inspection.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summary, detected anomalies, trend analysis results, and possibly raw data if requested." + }, + "aiAgent": { + "useCase": "Use this tool when performance reference data such as logs, metrics, or snapshots need to be analyzed to identify performance issues, unusual deviations from baseline, or trends over time. Useful for root cause analysis, capacity planning, and monitoring baseline shifts.", + "limitations": "This tool does not perform real-time monitoring or alerting. It analyzes static reference data snapshots or logs and does not integrate with live streaming sources.", + "examples": [ + "Analyze performance logs from last week for anomalies and trend analysis.", + "Compare current reference snapshot against historical baseline to detect deviations.", + "Generate a report of performance trends and anomalies in given metric data within a specific time window." + ] + }, + "tags": [ + "monitoring", + "performance", + "analysis", + "reference data", + "anomaly detection", + "trend analysis" + ], + "examples": [ + { + "inputJson": "{\"referenceData\":{\"logs\":[{\"timestamp\":\"2024-05-01T00:00:00Z\",\"cpu\":75,\"memory\":60},{\"timestamp\":\"2024-05-01T01:00:00Z\",\"cpu\":82,\"memory\":63}]},\"timeRangeStart\":\"2024-05-01T00:00:00Z\",\"timeRangeEnd\":\"2024-05-01T02:00:00Z\",\"analysisTypes\":[\"anomaly\",\"trend\"],\"sensitivityThreshold\":0.8,\"includeRawData\":false}", + "description": "Analyze CPU and memory logs over a 2-hour window to detect anomalies and trends with medium-high sensitivity." + }, + { + "inputJson": "{\"referenceData\":{\"snapshot\":{\"cpuBaseline\":70,\"memoryBaseline\":55,\"iopsBaseline\":100}},\"analysisTypes\":[\"baselineComparison\"],\"includeRawData\":true}", + "description": "Compare current snapshot data against baseline reference values to identify deviations, including raw data in the report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "monitoring.analyzeHeading", + "description": "Analyzes the heading elements extracted from application logs or monitoring dashboards to evaluate their structure, frequency, and relevance. Accepts an array of text headings, processes them to detect patterns and inconsistencies, and outputs a summary report including counts, anomalies, and recommendations for optimized monitoring dashboards.", + "category": "monitoring", + "parameters": [ + { + "name": "headings", + "type": "array", + "description": "An array of heading strings extracted from logs or monitoring dashboards to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "minOccurrence", + "type": "number", + "description": "Minimum number of occurrences for a heading to be considered significant in the analysis.", + "required": false, + "defaultValue": "1" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable detection and reporting of heading anomalies or irregular patterns.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Optional language code (e.g., 'en') for heading text processing and normalization.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A structured report summarizing heading analysis including total unique headings, frequency distribution, anomalies found, and improvement recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze the heading structure of logs, dashboards, or monitoring reports to identify patterns, inconsistencies, or opportunities to improve monitoring clarity and effectiveness. Useful for monitoring system optimizations and quality checks of generated reports.", + "limitations": "This tool does not analyze the content beyond heading text structure and frequency; it cannot interpret the semantic meaning beyond simple normalization or provide deep content insights.", + "examples": [ + "Analyze headings from log files to find missing or redundant sections.", + "Detect anomalies in monitoring dashboard headings indicating misconfigurations.", + "Summarize frequency of event headings to prioritize monitoring focus." + ] + }, + "tags": [ + "monitoring", + "analysis", + "headings", + "logs", + "dashboards", + "pattern-detection", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"headings\":[\"Error Logs\",\"Warning Alerts\",\"Info Messages\",\"Error Logs\",\"Debug Info\",\"Warning Alerts\"]}", + "description": "Analyze frequency and anomalies of typical monitoring log headings." + }, + { + "inputJson": "{\"headings\":[\"CPU Usage\",\"Memory Usage\",\"Disk I/O\",\"CPU Usage\",\"Network Traffic\", \"Memory Usage\"]}", + "description": "Analyze headings from a system metrics dashboard to determine redundancy and frequency." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "monitoring.uploadCSV", + "description": "Uploads a CSV file containing system or application performance metrics to a monitoring platform. Accepts CSV data as a string or file path, parses each row as a metric record, validates the format, and sends the data to the configured monitoring backend. Returns a summary of the upload result including success count and any errors encountered.", + "category": "monitoring", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "The raw CSV content as a string containing monitoring metrics data to upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Path to the CSV file containing the metrics data to upload. Required if csvData is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "The delimiter used in the CSV file (e.g., comma, semicolon).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Specifies whether the CSV data includes a header row.", + "required": false, + "defaultValue": "true" + }, + { + "name": "monitoringEndpoint", + "type": "string", + "description": "The URL or address of the monitoring service endpoint to which the CSV data will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key for authorizing the upload request to the monitoring service.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the upload outcome, including total records processed, successful uploads, and details of any errors." + }, + "aiAgent": { + "useCase": "Use this tool when you have system or application performance data in CSV format that needs to be imported into a monitoring platform for analysis or alerting. Ideal for integrating legacy data exports or bulk metric submissions.", + "limitations": "This tool does not parse non-CSV formats or perform deep data validation beyond basic CSV structure integrity. It does not analyze or visualize data.", + "examples": [ + "Upload CSV metrics file located at '/tmp/metrics.csv' to the monitoring server https://monitoring.example.com/api/ingest with API key.", + "Upload raw CSV data string containing performance metrics, specifying semicolon as delimiter and no header row.", + "Retry uploading CSV data with authentication token for access-controlled monitoring endpoint." + ] + }, + "tags": [ + "monitoring", + "upload", + "CSV", + "metrics", + "performance", + "data ingestion" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/performance_metrics.csv\",\"monitoringEndpoint\":\"https://monitoring.example.com/api/v1/upload\",\"authToken\":\"abcd1234\"}", + "description": "Upload a CSV file located at /data/performance_metrics.csv to a remote monitoring API using an auth token." + }, + { + "inputJson": "{\"csvData\":\"timestamp,cpu_usage,memory_usage\\n2024-05-01T12:00:00Z,55,70\",\"hasHeader\":true,\"monitoringEndpoint\":\"https://metrics.example.org/upload\"}", + "description": "Upload raw CSV string data of CPU and memory usage with headers to the specified monitoring endpoint." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "monitoring.analyzeIncident", + "description": "This tool accepts detailed input about a security incident, such as logs, alerts, incident metadata, and context information. It analyzes the incident data using correlation rules, anomaly detection, and threat intelligence to identify root causes, impacted assets, attack vectors, and severity. It then produces a comprehensive incident analysis report with actionable mitigation steps.", + "category": "monitoring", + "parameters": [ + { + "name": "incidentId", + "type": "string", + "description": "Unique identifier of the incident to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "logData", + "type": "array", + "description": "Array of log entries relevant to the incident analysis. Each entry is an object containing timestamp, source, message, and other fields.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "alerts", + "type": "array", + "description": "List of security alerts associated with the incident, each alert includes type, severity, source, and timestamp.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "incidentMetadata", + "type": "object", + "description": "Additional metadata about the incident such as reported time, reporter, affected systems, current status.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "contextInfo", + "type": "object", + "description": "Contextual information like network topology, asset inventory, known vulnerabilities relevant to this incident.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "correlationRules", + "type": "array", + "description": "Optional set of correlation rules to customize incident analysis behavior. Each rule defines patterns to detect complex incidents.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeMitigationAdvice", + "type": "boolean", + "description": "Flag to include recommended mitigation and remediation steps in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summary, identified root causes, impacted assets, attack vectors, severity, timeline, and mitigation recommendations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when a detailed security incident has been detected and relevant data (logs, alerts, metadata) is available for analysis. It helps identify root causes, affected assets, severity, and recommended response actions to assist security teams or automated systems in incident response workflows.", + "limitations": "The tool requires sufficient input data to produce accurate analysis and cannot replace hands-on forensic investigation or manual contextual judgement. It may not detect incidents outside provided data or rule definitions.", + "examples": [ + "Analyze the incident with ID 'INC-12345' using its logs and alert data to produce a root cause analysis report.", + "Given logs and alert metadata from a detected intrusion attempt, analyze the incident for attack vectors and mitigation steps.", + "Generate a detailed incident analysis including timeline and severity assessment for the incident ID '20240601-SEC'" + ] + }, + "tags": [ + "monitoring", + "security", + "incident-analysis", + "root-cause", + "alert-correlation", + "threat-detection", + "remediation" + ], + "examples": [ + { + "inputJson": "{\"incidentId\":\"INC-20240601-A1\",\"logData\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"source\":\"firewall\",\"message\":\"Blocked connection from suspicious IP\"}],\"alerts\":[{\"type\":\"intrusion\",\"severity\":\"high\",\"source\":\"IDS\",\"timestamp\":\"2024-06-01T12:01:00Z\"}],\"incidentMetadata\":{\"reportedTime\":\"2024-06-01T12:05:00Z\",\"status\":\"open\",\"affectedSystems\":[\"db-server-1\"]},\"contextInfo\":{\"networkTopology\":\"vpc-12, subnet-34\",\"assetInventory\":[{\"id\":\"db-server-1\",\"os\":\"linux\",\"criticality\":\"high\"}]},\"includeMitigationAdvice\":true}", + "description": "Analyze a security incident reported on June 1, 2024, using logs from a firewall, intrusion detection alerts, incident metadata, and asset context to produce a detailed analysis report including mitigation advice." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "monitoring.analyzeThread", + "description": "Analyzes thread activity logs to identify performance bottlenecks and synchronization issues. Accepts thread dump data or runtime thread profiling information as input, processes to detect deadlocks, thread states distribution, CPU usage per thread, and outputs a detailed report highlighting potential threading problems and optimization suggestions.", + "category": "monitoring", + "parameters": [ + { + "name": "threadData", + "type": "string", + "description": "Raw thread dump or profiling data to analyze, in standardized text or JSON format.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisDepth", + "type": "number", + "description": "Level of detail for analysis; higher values yield more thorough checks but increase processing time.", + "required": false, + "defaultValue": "1" + }, + { + "name": "detectDeadlocks", + "type": "boolean", + "description": "Whether to perform deadlock detection during analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "filterThreads", + "type": "array", + "description": "List of thread names or IDs to focus analysis on; if empty, all threads are analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeWindow", + "type": "object", + "description": "Optional time window with 'start' and 'end' ISO8601 timestamps to limit analysis to specific period.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "AnalysisReport object containing summaries of thread states, detected deadlocks, CPU and wait times per thread, and recommended actions for optimization." + }, + "aiAgent": { + "useCase": "Use this tool when diagnosing multi-threading issues in applications, such as detecting thread contention, deadlocks, or CPU hogging threads from thread dumps or profiling outputs. It helps pinpoint threading problems for performance tuning and reliability enhancement.", + "limitations": "Cannot analyze threads without proper thread dump or profiling data input. Does not simulate thread behavior or fix issues automatically; only provides analysis based on supplied data.", + "examples": [ + "Analyze thread dump from production server to find deadlocks.", + "Inspect profiling logs filtered to worker threads to identify CPU bottlenecks.", + "Examine threads active during a specific time window showing slow response times." + ] + }, + "tags": [ + "monitoring", + "thread", + "analysis", + "performance", + "deadlock", + "profiling" + ], + "examples": [ + { + "inputJson": "{\"threadData\":\"{\\\"threads\\\":[{\\\"id\\\":101,\\\"state\\\":\\\"RUNNABLE\\\",\\\"cpuTimeMs\\\":350,\\\"name\\\":\\\"worker-1\\\"},{\\\"id\\\":102,\\\"state\\\":\\\"WAITING\\\",\\\"cpuTimeMs\\\":20,\\\"name\\\":\\\"worker-2\\\"}]}\"}", + "description": "Analyze a simple JSON thread dump for CPU usage and thread states." + }, + { + "inputJson": "{\"threadData\":\"Full thread dump text from JVM\",\"detectDeadlocks\":true,\"filterThreads\":[\"main\",\"worker-1\"]}", + "description": "Analyze a full JVM thread dump focusing on main and worker-1 threads including deadlock detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "monitoring.analyzeReply", + "description": "Analyzes communication reply data, including content, timing, and metadata, to assess response performance, sentiment, and potential issues. Accepts raw reply text along with optional metadata for context; performs linguistic and temporal analysis; outputs a structured report detailing response quality, sentiment scores, and delay metrics.", + "category": "monitoring", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The raw text content of the reply message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp when the reply was sent, used for delay and timing analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "originalMessageTimestamp", + "type": "string", + "description": "ISO 8601 timestamp of the original message to which this reply corresponds, for calculating response latency.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata about the reply, such as sender ID, channel, or message type.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing response latency, sentiment scores, language insights, and quality indicators for the supplied reply." + }, + "aiAgent": { + "useCase": "Use when needing to analyze reply messages in communication monitoring systems to evaluate responsiveness, sentiment, and message quality. Helpful for customer support quality checks, social media monitoring, or internal team communications analysis.", + "limitations": "Does not generate or modify reply content; analysis accuracy depends on completeness and quality of input data; does not handle multimedia content within replies.", + "examples": [ + "Analyze sentiment and response time for a customer service reply.", + "Evaluate if a support reply was prompt and positive in tone.", + "Monitor communication channels to identify slow or negative replies." + ] + }, + "tags": [ + "monitoring", + "analysis", + "communication", + "reply", + "sentiment", + "performance" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thank you for your quick response, I appreciate the help!\",\"timestamp\":\"2024-04-26T15:24:00Z\",\"originalMessageTimestamp\":\"2024-04-26T15:20:00Z\",\"metadata\":{\"senderId\":\"agent123\",\"channel\":\"email\"}}", + "description": "Analyze a customer support reply sent 4 minutes after the original message to assess sentiment and response delay." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "monitoring.analyzeXML", + "description": "Analyzes XML data inputs typically from system or application monitoring logs to extract key performance metrics, identify anomalies, and summarize performance statistics. It accepts raw XML strings or file paths, applies customizable XPath queries or schema validations, and returns structured analysis results highlighting system health indicators.", + "category": "monitoring", + "parameters": [ + { + "name": "xmlInput", + "type": "string", + "description": "The raw XML data string or a filepath to an XML file containing monitoring data to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "xpathQueries", + "type": "array", + "description": "List of XPath query strings applied to extract specific nodes or values from the XML input for focused analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Whether to validate the XML input against a provided XML schema to ensure format correctness before analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schemaPath", + "type": "string", + "description": "File path to the XML Schema Definition (XSD) used for validating the XML input; required if validateSchema is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "anomalyThreshold", + "type": "number", + "description": "Numeric threshold value for detecting anomalies in metric values extracted from XML; used in anomaly detection algorithms.", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "summaryMetrics", + "type": "array", + "description": "List of metric names to include in the summary output; if empty, all extracted metrics are summarized.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing extracted metrics, anomaly detection results, validation status, and summary statistics based on the XML analysis." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to process XML-based monitoring data to extract structured performance metrics, perform anomaly detection on system logs, or validate XML log formats. It is ideal for environments where monitoring outputs are XML formatted and require detailed metric extraction or schema validation before higher-level reasoning.", + "limitations": "Does not parse non-XML formats, cannot correct XML errors beyond reporting validation issues, requires well-formed XML input, and anomaly detection is limited to threshold-based heuristic models rather than advanced ML techniques.", + "examples": [ + "Analyze an XML monitoring log file to extract CPU and memory usage metrics.", + "Validate the XML monitoring data against a standard schema and summarize error rates.", + "Detect anomalies in XML-based system metrics using custom XPath queries and a defined threshold." + ] + }, + "tags": [ + "monitoring", + "XML", + "analysis", + "anomaly detection", + "performance", + "system logs" + ], + "examples": [ + { + "inputJson": "{\"xmlInput\":\"<monitoring><cpu>75</cpu><memory>63</memory></monitoring>\",\"xpathQueries\":[\"/monitoring/cpu\",\"/monitoring/memory\"],\"validateSchema\":false,\"anomalyThreshold\":70,\"summaryMetrics\":[\"cpu\",\"memory\"]}", + "description": "Extract CPU and memory usage from XML string and detect if values exceed anomaly thresholds." + }, + { + "inputJson": "{\"xmlInput\":\"/var/logs/monitoringData.xml\",\"validateSchema\":true,\"schemaPath\":\"/schemas/monitoring.xsd\",\"anomalyThreshold\":85}", + "description": "Validate XML monitoring log file against schema and detect anomalies using threshold 85." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "monitoring.downloadCSV", + "description": "Downloads monitoring data as a CSV file based on specified time range and metrics filters. Accepts parameters like start and end timestamps, a list of monitored metrics, and output formatting options. Returns a CSV-formatted string representing the requested monitoring data for further analysis or storage.", + "category": "monitoring", + "parameters": [ + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted start timestamp for the monitoring data range (e.g., '2024-01-01T00:00:00Z').", + "required": true, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted end timestamp for the monitoring data range, must be after startTime.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names (strings) to include in the CSV export, e.g., ['cpu_usage','memory_usage']. If empty, all available metrics are downloaded.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character used in the CSV output (default is comma ',').", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include header row in the CSV output indicating column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timezone", + "type": "string", + "description": "IANA timezone name for timestamp formatting in CSV. Defaults to UTC if not specified.", + "required": false, + "defaultValue": "UTC" + } + ], + "returns": { + "type": "object", + "description": "Object containing 'csvData' string with monitoring data formatted as CSV, ready for download or saving." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract monitoring metrics data over a specific time range for offline analysis, reporting, or system auditing. It supports filtering by metrics and customization of CSV formatting, enabling AI agents to automate data retrieval for diagnostics or trend analysis.", + "limitations": "This tool does not aggregate or analyze data beyond formatting. It requires valid time ranges and existing metric names; it cannot generate new metrics or transform data beyond CSV formatting.", + "examples": [ + "Download CPU and memory usage metrics from last 24 hours as CSV with headers.", + "Export all available metrics data between two dates with semicolon delimiters.", + "Retrieve monitoring data timestamps formatted in a specific time zone without headers." + ] + }, + "tags": [ + "monitoring", + "data-export", + "CSV", + "metrics", + "performance", + "timeseries" + ], + "examples": [ + { + "inputJson": "{\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-01T23:59:59Z\",\"metrics\":[\"cpu_usage\",\"memory_usage\"],\"delimiter\":\",\",\"includeHeaders\":true,\"timezone\":\"UTC\"}", + "description": "Download CPU and memory usage metrics for May 1, 2024, as CSV with default comma delimiter and headers." + }, + { + "inputJson": "{\"startTime\":\"2024-04-25T00:00:00Z\",\"endTime\":\"2024-04-26T00:00:00Z\",\"metrics\":[],\"delimiter\":\";\",\"includeHeaders\":true,\"timezone\":\"America/New_York\"}", + "description": "Download all available metrics for April 25, 2024, using semicolon as delimiter and timestamps converted to US Eastern Time." + }, + { + "inputJson": "{\"startTime\":\"2024-06-10T08:00:00Z\",\"endTime\":\"2024-06-10T12:00:00Z\",\"metrics\":[\"disk_io\"],\"delimiter\":\",\",\"includeHeaders\":false,\"timezone\":\"UTC\"}", + "description": "Download disk IO metric data from morning hours on June 10th, 2024 as CSV without headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "monitoring.analyzeHTML", + "description": "This tool accepts raw HTML content as input and performs comprehensive analysis to assess frontend performance-related metrics such as DOM size, number of inline styles, external resource links, script usage, and accessibility issues. It returns a detailed report highlighting potential bottlenecks and optimization suggestions to improve web page load and rendering performance.", + "category": "monitoring", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "The raw HTML content of the webpage to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "analyzeResources", + "type": "boolean", + "description": "Flag to indicate whether to analyze linked external resources like CSS and JS files.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDomNodeCount", + "type": "number", + "description": "Threshold number of DOM nodes above which a warning is issued regarding DOM size and complexity.", + "required": false, + "defaultValue": "1500" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to include basic accessibility checks in the analysis (e.g., alt attributes, ARIA roles).", + "required": false, + "defaultValue": "true" + }, + { + "name": "resourceTimeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait when fetching external resources for analysis.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report object containing metrics such as domNodeCount, inlineStyleCount, externalCssCount, scriptCount, accessibilityIssues, resourceLoadWarnings, and optimizationRecommendations." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to evaluate the quality and performance factors of a webpage's HTML content for monitoring, debugging, or optimization purposes. Scenarios include analyzing server-rendered page snapshots, automated frontend performance audits, or integration into real-time monitoring systems to catch performance regressions.", + "limitations": "Cannot execute or simulate JavaScript, so cannot analyze runtime-rendered DOM or dynamic content generated client-side. Accessibility checks are basic and do not replace full audits. External resource analysis depends on network availability and timeouts.", + "examples": [ + "Analyze the HTML source of the homepage to detect performance bottlenecks.", + "Check if the given HTML has too many inline styles or scripts for optimization recommendations.", + "Perform a basic accessibility scan and resource usage summary on the provided HTML content." + ] + }, + "tags": [ + "monitoring", + "performance", + "html", + "frontend", + "accessibility", + "optimization", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"<html><head><title>TestLogo\",\"analyzeResources\":true,\"maxDomNodeCount\":1000,\"checkAccessibility\":true,\"resourceTimeoutSeconds\":3}", + "description": "Analyze a simple HTML page with an inline style, a linked script, and an image with alt text to get DOM counts, resource usage, and accessibility issues." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "monitoring.renderImage", + "description": "This tool accepts time-series monitoring data and configuration parameters for visualization, processes the data to generate performance charts, and outputs a rendered image (PNG or SVG) representing system or application metrics for analysis or reporting.", + "category": "monitoring", + "parameters": [ + { + "name": "metricData", + "type": "array", + "description": "An array of time-series data points to be visualized, where each point includes timestamp and value.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to render such as 'line', 'bar', or 'area'.", + "required": true, + "defaultValue": "line" + }, + { + "name": "width", + "type": "number", + "description": "Width of the output image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the output image in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "title", + "type": "string", + "description": "Title text displayed on the chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "The start and end timestamps defining the time range of the data to render, e.g., {\"start\": \"2024-01-01T00:00:00Z\", \"end\": \"2024-01-01T01:00:00Z\"}.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output image, either 'png' or 'svg'.", + "required": false, + "defaultValue": "png" + }, + { + "name": "legendVisible", + "type": "boolean", + "description": "Whether to display a legend on the chart.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the base64 encoded image data and metadata including image format and dimensions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate visual image representations of monitoring data for system or application performance directly as image files for dashboards, reports, or alerts that require embedded charts.", + "limitations": "This tool cannot perform data collection or alerting and does not generate interactive or real-time updating charts. It only produces static image snapshots based on the provided input data.", + "examples": [ + "Render a line chart PNG image of CPU usage from monitoring data between specified timestamps.", + "Generate an SVG area chart image showing memory consumption with custom width and height.", + "Create a bar chart image with legend disabled and a chart title for disk IO metrics." + ] + }, + "tags": [ + "monitoring", + "visualization", + "image rendering", + "performance metrics", + "charts", + "time-series", + "system monitoring", + "application monitoring" + ], + "examples": [ + { + "inputJson": "{\"metricData\":[{\"timestamp\":\"2024-04-01T12:00:00Z\",\"value\":45},{\"timestamp\":\"2024-04-01T12:01:00Z\",\"value\":47},{\"timestamp\":\"2024-04-01T12:02:00Z\",\"value\":43}],\"chartType\":\"line\",\"width\":1024,\"height\":768,\"title\":\"CPU Usage Over Time\",\"outputFormat\":\"png\",\"legendVisible\":true}", + "description": "Render a line chart PNG image of CPU usage data with specified size and title." + }, + { + "inputJson": "{\"metricData\":[{\"timestamp\":\"2024-04-01T00:00:00Z\",\"value\":150},{\"timestamp\":\"2024-04-01T01:00:00Z\",\"value\":175}],\"chartType\":\"bar\",\"outputFormat\":\"svg\",\"legendVisible\":false}", + "description": "Generate an SVG bar chart image of arbitrary metric data without legend." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Image", + "context": null + } + }, + { + "name": "monitoring.renderWord", + "description": "Renders a single word as a visual element with customizable styling options such as font size, color, and background, primarily for monitoring dashboards or alert displays. Accepts the word as input along with style parameters and outputs a styled HTML snippet or SVG string for embedding in monitoring interfaces.", + "category": "monitoring", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The word text to render visually.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for rendering the word.", + "required": false, + "defaultValue": "14" + }, + { + "name": "fontColor", + "type": "string", + "description": "Hex or standard color name for the word's font color.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Hex or standard color name for the background behind the word.", + "required": false, + "defaultValue": "transparent" + }, + { + "name": "fontWeight", + "type": "string", + "description": "Font weight style like 'normal', 'bold', or numeric values (e.g. '700').", + "required": false, + "defaultValue": "normal" + }, + { + "name": "renderAsSVG", + "type": "boolean", + "description": "Whether to output the rendered word as an SVG string instead of HTML.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered output string and the format type ('html' or 'svg')." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visually emphasize or style a single monitoring term on a dashboard or alert output dynamically, customizing its visual presentation for clarity or priority indication. It is suitable where rendering styled words dynamically enhances monitoring UI or log display.", + "limitations": "Cannot render multiple words or paragraphs; only supports single words. Complex typographic layouts or animations are not supported.", + "examples": [ + "Render the word 'ERROR' in red, bold font and a yellow background.", + "Render the word 'OK' as SVG with font size 18 and green color.", + "Generate an HTML snippet for the word 'Loading' with default style." + ] + }, + "tags": [ + "monitoring", + "rendering", + "visualization", + "dashboard", + "word", + "style", + "html", + "svg" + ], + "examples": [ + { + "inputJson": "{\"word\":\"ALERT\",\"fontSize\":24,\"fontColor\":\"#ff0000\",\"backgroundColor\":\"#ffff00\",\"fontWeight\":\"bold\",\"renderAsSVG\":false}", + "description": "Render the word ALERT in large red bold font on a yellow background as HTML." + }, + { + "inputJson": "{\"word\":\"OK\",\"fontSize\":18,\"fontColor\":\"green\",\"renderAsSVG\":true}", + "description": "Render the word OK in green as an SVG string with font size 18." + }, + { + "inputJson": "{\"word\":\"Loading\"}", + "description": "Render the word Loading with default styles as HTML." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "monitoring.formatParagraph", + "description": "Formats a supplied monitoring-related text paragraph by applying consistent styling, such as indentation, line width wrapping, and optional inclusion of timestamps or metric highlights. Accepts raw text input and outputs a neatly formatted paragraph suitable for reports or dashboards.", + "category": "monitoring", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text related to monitoring data or metrics to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum number of characters per line in the formatted paragraph to ensure readability.", + "required": false, + "defaultValue": "80" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to prepend a formatted timestamp to the paragraph if a timestamp is detected or provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "highlightKeywords", + "type": "array", + "description": "List of keywords or metric names to highlight within the paragraph for emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces used for indenting paragraph lines to improve visual structure.", + "required": false, + "defaultValue": "4" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted paragraph string, ready for display or reporting." + }, + "aiAgent": { + "useCase": "Use this tool when preparing textual monitoring outputs or logs into a human-readable paragraph format that requires consistent line widths, indentation, and keyword emphasis for clarity in dashboards, alerts, or reports. It enhances textual data presentation without altering the underlying content.", + "limitations": "The tool cannot interpret or validate the semantic correctness of monitoring data; it does not parse structured data but only formats existing text. It also cannot add or remove content except applying text styling and wrapping.", + "examples": [ + "Format a raw log message paragraph for presentation in a monitoring report with line width of 100 characters.", + "Highlight metric names such as 'CPU usage' and 'memory' within the monitoring paragraph to emphasize key values.", + "Include timestamps alongside monitoring paragraphs if detected in the input text." + ] + }, + "tags": [ + "formatting", + "monitoring", + "text", + "reporting", + "log", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"text\":\"CPU usage was high during the last hour, reaching 95%. Memory consumption also increased significantly.\",\"lineWidth\":60,\"includeTimestamp\":false,\"highlightKeywords\":[\"CPU usage\",\"Memory\"],\"indentationSpaces\":2}", + "description": "Format a monitoring paragraph with a line width of 60 characters, indent by 2 spaces and highlight keywords 'CPU usage' and 'Memory'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "monitoring.formatSentence", + "description": "Formats a performance monitoring sentence by dynamically injecting metric values, timestamps, and statuses into a customizable template. Accepts input metrics and formatting options, processes placeholders, and outputs a human-readable status sentence suitable for logs or alerts.", + "category": "monitoring", + "parameters": [ + { + "name": "template", + "type": "string", + "description": "Sentence template with placeholders (e.g., '{metric} is {value} at {timestamp}') to format the output sentence.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "object", + "description": "An object containing key-value pairs of metric names and their corresponding values to replace in the template.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampFormat", + "type": "string", + "description": "Format string to represent timestamps (e.g., 'YYYY-MM-DD HH:mm:ss'). Used to format any timestamp placeholders.", + "required": false, + "defaultValue": "YYYY-MM-DD HH:mm:ss" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code (e.g., 'en-US') used for formatting numbers and dates in the sentence.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "capitalizeFirst", + "type": "boolean", + "description": "If true, capitalizes the first letter of the resulting sentence for better readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted monitoring sentence as a string under the 'formattedSentence' field." + }, + "aiAgent": { + "useCase": "Use when generating clear, readable sentences summarizing monitoring data such as metrics, their current values, timestamps, and statuses for logs, alerts, or reports. It helps convert raw metric data into user-friendly text according to a customizable template, improving comprehension.", + "limitations": "Cannot perform complex natural language generation beyond template replacement; it relies on correct templates and provided metrics. Does not validate metrics semantically or fetch data; input must be preprocessed.", + "examples": [ + "Format a CPU usage sentence with current percentage and timestamp using a specific template.", + "Create a log line describing disk usage status with localized timestamp formatting.", + "Generate a monitoring alert sentence with metric names and values inserted into a custom textual pattern." + ] + }, + "tags": [ + "monitoring", + "formatting", + "metrics", + "logging", + "alerts", + "templating" + ], + "examples": [ + { + "inputJson": "{\"template\":\"CPU usage is at {cpu}% as of {timestamp}\",\"metrics\":{\"cpu\":75,\"timestamp\":\"2024-06-01T15:30:00Z\"},\"timestampFormat\":\"YYYY-MM-DD HH:mm:ss\",\"locale\":\"en-US\",\"capitalizeFirst\":true}", + "description": "Format a CPU usage sentence showing percentage and formatted timestamp." + }, + { + "inputJson": "{\"template\":\"Disk space on {disk} is {usage} GB used at {timestamp}\",\"metrics\":{\"disk\":\"/dev/sda1\",\"usage\":120,\"timestamp\":\"2024-06-01T16:00:00Z\"},\"timestampFormat\":\"MMM D, YYYY h:mm A\",\"locale\":\"en-US\",\"capitalizeFirst\":false}", + "description": "Generate a disk usage status sentence with a human-readable timestamp in US English locale." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "monitoring.formatSummary", + "description": "Formats raw monitoring data and performance metrics into a concise, human-readable summary report. Accepts JSON or object inputs containing system/application performance stats, applies optional filters and formatting styles, and outputs a structured summary text or object suitable for dashboards or alerts.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringData", + "type": "object", + "description": "Raw monitoring data including performance metrics and logs to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "string", + "description": "Time period for data summary (e.g., 'last_24_hours', '2024-06-01_to_2024-06-07').", + "required": false, + "defaultValue": "last_24_hours" + }, + { + "name": "includeErrors", + "type": "boolean", + "description": "Flag to include error and anomaly details in the summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'text' for plain summary, 'json' for structured summary object.", + "required": false, + "defaultValue": "text" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the text summary in characters; applied only if outputFormat is 'text'.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted summary, either as a plain text string or a structured summary object depending on outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert extensive monitoring and performance data into clear, manageable summaries that are easy to interpret for reporting, alerting, or dashboard displays. It helps transform raw metrics into informative narratives or structured summaries tailored to specified time frames and detail levels.", + "limitations": "Does not perform data collection or advanced anomaly detection itself; relies on provided input data. Summary quality depends on input completeness and proper data structure. It focuses on formatting and summarizing, not on predictive analytics or real-time alerting.", + "examples": [ + "Generate a short textual summary for last 7 days of monitoring data highlighting errors.", + "Produce a JSON-formatted summary report for application performance metrics from the last hour.", + "Create a plain text summary excluding error logs covering the last 24 hours." + ] + }, + "tags": [ + "monitoring", + "formatting", + "reporting", + "performance", + "summary" + ], + "examples": [ + { + "inputJson": "{\"monitoringData\":{\"cpuUsage\":75,\"memoryUsage\":65,\"errorCount\":3,\"errors\":[{\"timestamp\":\"2024-06-10T12:00:00Z\",\"message\":\"Disk error\"}],\"uptimeHours\":168},\"timeRange\":\"last_7_days\",\"includeErrors\":true,\"outputFormat\":\"text\",\"maxSummaryLength\":300}", + "description": "Create a human-readable performance summary for the last 7 days including error details, limited to 300 characters." + }, + { + "inputJson": "{\"monitoringData\":{\"responseTimeAvg\":200,\"throughput\":5000,\"errorRate\":0.01},\"timeRange\":\"last_1_hour\",\"includeErrors\":false,\"outputFormat\":\"json\"}", + "description": "Generate a structured JSON summary of app performance metrics for the last hour, excluding error details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "monitoring.draftWord", + "description": "Generates a concise, contextually relevant summary word or keyword that represents the main focus of a monitoring data set or report. Accepts structured monitoring metrics or textual description inputs, analyzes key themes or metrics, and outputs a single word summarizing the monitoring content for tagging or alert labeling purposes.", + "category": "monitoring", + "parameters": [ + { + "name": "monitoringData", + "type": "object", + "description": "Structured data object containing system or application monitoring metrics (e.g., CPU usage, error rates) or log excerpts to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "textContext", + "type": "string", + "description": "Optional textual context or description about the monitoring scenario to guide word drafting.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en') indicating the language of textual inputs, affecting word generation.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "focusType", + "type": "string", + "description": "Specify focus area for the draft word, e.g., 'performance', 'error', 'availability', to tailor the summary word.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted single word summarizing the essential monitoring insight or theme." + }, + "aiAgent": { + "useCase": "Use this tool when you need a succinct label or keyword that encapsulates the main theme or critical insight from complex monitoring data or reports. Helpful for alert management, report tagging, or quick summarization to prompt further investigation or classification.", + "limitations": "Cannot generate detailed multi-word summaries or full reports, only a single summary word. Quality depends on richness and clarity of input data. Not suitable for non-monitoring or very sparse input.", + "examples": [ + "Generate a single word capturing this server error log cluster.", + "Draft a keyword representing current system CPU and memory status from this metric set.", + "Provide a summary label describing the recent application downtime incident notes." + ] + }, + "tags": [ + "monitoring", + "summary", + "keyword", + "alerting", + "data-analysis" + ], + "examples": [ + { + "inputJson": "{\"monitoringData\":{\"cpuUsage\":95,\"errorCount\":20,\"memoryUsage\":80},\"textContext\":\"High CPU usage observed along with multiple errors.\",\"language\":\"en\",\"focusType\":\"performance\"}", + "description": "Draft a single word summarizing high CPU and error condition for alert tagging." + }, + { + "inputJson": "{\"monitoringData\":{\"diskFailureRate\":0.02,\"uptime\":99.9},\"textContext\":\"Disk failure rate slightly elevated.\",\"language\":\"en\",\"focusType\":\"availability\"}", + "description": "Generate a concise keyword representing disk availability monitoring status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "monitoring.formatInvoice", + "description": "Formats raw invoice data into a standardized, human-readable invoice document suitable for display or reporting in monitoring dashboards or system logs. Accepts JSON invoice data, applies formatting options like currency and date style, and returns the formatted invoice text or HTML output.", + "category": "monitoring", + "parameters": [ + { + "name": "invoiceData", + "type": "object", + "description": "The raw invoice data including items, prices, taxes, and customer info to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format for the invoice: 'text' for plain text or 'html' for HTML output.", + "required": false, + "defaultValue": "text" + }, + { + "name": "currency", + "type": "string", + "description": "Currency symbol or code to use when formatting monetary amounts, e.g., '$' or 'USD'.", + "required": false, + "defaultValue": "$" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format string to use when displaying dates on the invoice, e.g., 'MM/DD/YYYY' or 'YYYY-MM-DD'.", + "required": false, + "defaultValue": "MM/DD/YYYY" + }, + { + "name": "includeTaxDetails", + "type": "boolean", + "description": "Whether to include detailed tax line items in the formatted invoice output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted invoice as a string under 'formattedInvoice'. It may be in plain text or HTML depending on outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when a system or monitoring agent needs to present invoice data from raw structures in readable or report-friendly formats, for example embedding invoices in monitoring dashboards or sending invoice summaries in system alerts.", + "limitations": "Does not perform invoice data validation or calculations. Assumes input invoiceData is complete and correct. Formatting options are limited to currency, date, basic text or HTML output.", + "examples": [ + "Format a JSON invoice to HTML for a monitoring dashboard display.", + "Generate a plain text invoice summary with specific date and currency formatting.", + "Produce an invoice text with or without tax details based on monitoring alert requirements." + ] + }, + "tags": [ + "monitoring", + "formatting", + "invoice", + "document", + "reporting", + "financial" + ], + "examples": [ + { + "inputJson": "{\"invoiceData\":{\"invoiceNumber\":\"INV-1001\",\"date\":\"2024-05-15\",\"dueDate\":\"2024-06-15\",\"customer\":{\"name\":\"Acme Corp.\",\"address\":\"123 Market St.\"},\"items\":[{\"description\":\"Server hosting\",\"quantity\":3,\"unitPrice\":100}],\"taxes\":[{\"name\":\"VAT\",\"rate\":0.2,\"amount\":60}],\"total\":360},\"outputFormat\":\"html\",\"currency\":\"$\",\"dateFormat\":\"MM/DD/YYYY\",\"includeTaxDetails\":true}", + "description": "Format a complete invoice into HTML with US style date and dollar currency, including tax details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Invoice", + "context": null + } + }, + { + "name": "monitoring.buildInstance", + "description": "This tool provisions and configures a new monitoring instance tailored to specified infrastructure parameters. It accepts inputs including instance specifications, monitoring agent configurations, and alerting thresholds, then builds a deployable instance with integrated performance metrics collection and alert rules. The output confirms the instance setup and provides the connection details and monitoring dashboard URL.", + "category": "monitoring", + "parameters": [ + { + "name": "instanceType", + "type": "string", + "description": "Type or size of the instance to build (e.g., small, medium, large)", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Cloud region or data center location for the instance deployment", + "required": true, + "defaultValue": "" + }, + { + "name": "monitoringAgents", + "type": "array", + "description": "List of monitoring agents to install (e.g., ['CPU', 'memory', 'disk', 'network'])", + "required": true, + "defaultValue": "[]" + }, + { + "name": "alertThresholds", + "type": "object", + "description": "Key-value pairs defining alert thresholds for metrics, e.g., {\"CPU\": 80, \"memory\": 75} representing percentage usage limits", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Flag to enable automatic scaling based on load metrics", + "required": false, + "defaultValue": "false" + }, + { + "name": "instanceName", + "type": "string", + "description": "Optional custom name for the monitoring instance", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing instanceId, status, dashboardUrl, and connectionInfo to use the monitoring instance" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision or reconfigure a monitoring environment for infrastructure components. Suitable for setting up tailored monitoring instances with specific agents and alert settings for new or scaled infrastructure deployments.", + "limitations": "Does not handle underlying infrastructure provisioning outside the monitoring instance (e.g., virtual machines or containers). Cannot perform live metric analysis or issue alerts itself, only builds the instance.", + "examples": [ + "Create a medium instance in us-east-1 with CPU and memory monitoring and alerts set at 85%.", + "Build a large instance with all default monitoring agents and auto-scaling enabled.", + "Set up a small monitoring instance named 'backend-monitor' in Europe region with network and disk monitoring." + ] + }, + "tags": [ + "monitoring", + "infrastructure", + "instance", + "build", + "performance", + "alerting", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"instanceType\":\"medium\",\"region\":\"us-east-1\",\"monitoringAgents\":[\"CPU\",\"memory\"],\"alertThresholds\":{\"CPU\":85,\"memory\":80},\"enableAutoScaling\":false,\"instanceName\":\"\"}", + "description": "Build a medium instance in US East with CPU and memory monitoring and defined alert thresholds." + }, + { + "inputJson": "{\"instanceType\":\"large\",\"region\":\"us-west-2\",\"monitoringAgents\":[\"CPU\",\"memory\",\"disk\",\"network\"],\"alertThresholds\":{},\"enableAutoScaling\":true,\"instanceName\":\"\"}", + "description": "Build a large instance with all monitoring agents and enable auto-scaling." + }, + { + "inputJson": "{\"instanceType\":\"small\",\"region\":\"eu-central-1\",\"monitoringAgents\":[\"network\",\"disk\"],\"alertThresholds\":{},\"enableAutoScaling\":false,\"instanceName\":\"backend-monitor\"}", + "description": "Build a small monitoring instance named 'backend-monitor' in Europe with network and disk monitoring." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "monitoring.composeNotification", + "description": "This tool composes a structured notification message for system or application monitoring alerts. It accepts inputs including alert details, severity level, affected components, and custom formatting options. It processes the inputs to generate a clear, well-formatted notification text ready to be sent via email, SMS, or other communication channels.", + "category": "monitoring", + "parameters": [ + { + "name": "alertTitle", + "type": "string", + "description": "The title or subject of the notification alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertMessage", + "type": "string", + "description": "Detailed message describing the monitoring alert and context.", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity or priority level of the alert (e.g., 'info', 'warning', 'critical').", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of system or application components affected by the alert.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp indicating when the alert was generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeInstructions", + "type": "boolean", + "description": "Whether to include recommended next steps or instructions in the notification.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customFormat", + "type": "string", + "description": "Optional custom formatting template for the notification message using placeholders.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification string and metadata including formatted message and severity." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct a clear and structured notification for monitoring alerts based on variable inputs like severity, affected components, and instructions, suitable for dispatch via communication channels.", + "limitations": "Does not send the notification; only composes the message text. It does not handle localization or multiple language support beyond the provided input. Requires proper formatting templates if customFormat is specified.", + "examples": [ + "Compose a critical alert notification for CPU overload affecting the database server with instructions to restart the service.", + "Generate a warning message notification for high memory usage on multiple components without including instructions.", + "Create an informational alert message including affected services and a timestamp for monitoring dashboard display." + ] + }, + "tags": [ + "monitoring", + "notification", + "alert", + "compose", + "communication", + "system", + "application", + "performance" + ], + "examples": [ + { + "inputJson": "{\"alertTitle\":\"CPU Overload Detected\",\"alertMessage\":\"CPU usage has exceeded 90% on server db01.\",\"severityLevel\":\"critical\",\"affectedComponents\":[\"db01\"],\"timestamp\":\"2024-06-01T14:30:00Z\",\"includeInstructions\":true}", + "description": "Compose a critical alert notification for CPU overload on database server including instructions." + }, + { + "inputJson": "{\"alertTitle\":\"Memory Usage Warning\",\"alertMessage\":\"Memory usage is above 75% on app servers.\",\"severityLevel\":\"warning\",\"affectedComponents\":[\"app01\", \"app02\"],\"includeInstructions\":false}", + "description": "Generate a warning notification for high memory usage on multiple app servers without instructions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "monitoring.buildVariable", + "description": "Constructs a monitoring variable definition used for performance metrics tracking. Accepts inputs defining variable name, type, and optional value source or calculation logic. Produces a structured variable configuration object compatible with monitoring systems, enabling dynamic performance data capture and analysis.", + "category": "monitoring", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique identifier for the monitoring variable to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable (e.g., 'gauge', 'counter', 'histogram').", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A human-readable explanation of what this variable monitors.", + "required": false, + "defaultValue": "" + }, + { + "name": "unit", + "type": "string", + "description": "The measurement unit for this variable (e.g., 'ms', 'requests', 'bytes').", + "required": false, + "defaultValue": "" + }, + { + "name": "valueSource", + "type": "string", + "description": "Expression or source from which the variable's value is derived (e.g., metric name, calculation formula).", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to categorize or label the variable for filtering and grouping.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the configured monitoring variable, including its name, type, description, unit, value source, and tags, structured for integration into monitoring workflows." + }, + "aiAgent": { + "useCase": "Use this tool when defining custom or dynamic monitoring variables as part of setting up a performance monitoring framework. It helps create standardized variable configurations for capturing and analyzing system or application metrics, facilitating alerting and reporting.", + "limitations": "This tool does not collect or ingest actual metric data, nor does it perform real-time monitoring or alerting. It only builds descriptive variable definitions for monitoring frameworks.", + "examples": [ + "Create a counter variable named 'httpRequestCount' to track HTTP requests.", + "Build a gauge variable 'cpuUsage' measuring 'percentage' units derived from system metrics.", + "Define a histogram variable 'responseTime' in milliseconds with tags for service and endpoint." + ] + }, + "tags": [ + "monitoring", + "variable", + "metrics", + "performance", + "configuration", + "build", + "observability" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"httpRequestCount\",\"variableType\":\"counter\",\"description\":\"Total number of HTTP requests received\",\"unit\":\"requests\",\"valueSource\":\"http_request_total\",\"tags\":{\"service\":\"web\",\"endpoint\":\"*\"}}", + "description": "Defines a counter variable to track total HTTP requests with relevant tags." + }, + { + "inputJson": "{\"variableName\":\"cpuUsage\",\"variableType\":\"gauge\",\"description\":\"CPU utilization percentage\",\"unit\":\"%\",\"valueSource\":\"system.cpu.percent\",\"tags\":{\"host\":\"server01\"}}", + "description": "Creates a gauge variable for CPU usage percentage from system metrics." + }, + { + "inputJson": "{\"variableName\":\"responseTime\",\"variableType\":\"histogram\",\"description\":\"API response times in milliseconds\",\"unit\":\"ms\",\"valueSource\":\"api_response_time\",\"tags\":{\"service\":\"api\",\"method\":\"GET\"}}", + "description": "Builds a histogram variable to capture API GET response times with labels." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "monitoring.createQueue", + "description": "Creates a monitoring message queue infrastructure component for system and application performance data ingestion. Accepts configuration parameters such as queue name, type, retention policies, and access controls, then sets up the queue accordingly and returns the queue ID and status confirmation.", + "category": "monitoring", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifier for the queue to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "queueType", + "type": "string", + "description": "Type of the queue, e.g., 'fifo' for first-in-first-out or 'standard' for general use.", + "required": true, + "defaultValue": "standard" + }, + { + "name": "retentionPeriodMinutes", + "type": "number", + "description": "Number of minutes messages should be retained in the queue before automatic deletion.", + "required": false, + "defaultValue": "1440" + }, + { + "name": "maxMessageSizeKB", + "type": "number", + "description": "Maximum size of a single message in kilobytes.", + "required": false, + "defaultValue": "256" + }, + { + "name": "accessControlList", + "type": "array", + "description": "List of access control entries defining who can send or receive messages from the queue.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "visibilityTimeoutSeconds", + "type": "number", + "description": "Time in seconds that a message received from the queue is invisible to other consumers.", + "required": false, + "defaultValue": "30" + }, + { + "name": "enableDeadLetterQueue", + "type": "boolean", + "description": "Flag indicating whether to enable a dead-letter queue for handling failed message processing.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns details of the created queue including its unique ID, creation timestamp, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to provision a messaging queue dedicated to monitoring data streams, enabling efficient data buffering and asynchronous processing for performance metrics and system alerts. Ideal for setting up infrastructure that collects telemetry or log data with controlled retention and access.", + "limitations": "This tool only creates the queue infrastructure; it does not transmit or process message contents nor manage downstream consumers beyond access restrictions. Queue operational behaviors depend on external services or infrastructure.", + "examples": [ + "Create a high-throughput standard queue for monitoring logs with default retention.", + "Create a FIFO queue with a dead-letter queue enabled for performance alerting streams.", + "Create a queue with restricted access to certain monitoring services only." + ] + }, + "tags": [ + "monitoring", + "queue", + "infrastructure", + "performanceData", + "messaging", + "create", + "infrastructureManagement" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"appPerformanceMetrics\",\"queueType\":\"standard\",\"retentionPeriodMinutes\":720,\"maxMessageSizeKB\":128,\"accessControlList\":[{\"entity\":\"serviceA\",\"permissions\":[\"send\"]},{\"entity\":\"serviceB\",\"permissions\":[\"receive\"]}],\"visibilityTimeoutSeconds\":45,\"enableDeadLetterQueue\":true}", + "description": "Create a standard monitoring queue named 'appPerformanceMetrics' with a 12-hour retention, 128KB message size limit, specified access permissions, 45s visibility timeout, and dead-letter queue enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "monitoring.createPackage", + "description": "Creates a deployable monitoring package containing configuration files, scripts, and dependencies to set up system and application performance monitoring. Accepts monitoring targets, metrics definitions, alert rules, and output package format; processes these inputs to generate a ready-to-deploy archive or installer package for monitoring deployment.", + "category": "monitoring", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "Name of the monitoring package to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "monitoringTargets", + "type": "array", + "description": "List of system or application targets (e.g., IPs, hostnames, service names) to monitor.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricsDefinitions", + "type": "object", + "description": "Definitions of metrics to collect from each monitoring target including metric names and collection intervals.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertRules", + "type": "array", + "description": "Array of alerting rules specifying conditions when alerts should be triggered.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output package (e.g., 'zip', 'tar.gz', 'installer').", + "required": false, + "defaultValue": "zip" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Whether to include required monitoring agents and dependencies in the package.", + "required": false, + "defaultValue": "true" + }, + { + "name": "description", + "type": "string", + "description": "Optional description of the monitoring package.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the package file name, download URL or storage path, size in bytes, and a summary of included monitoring targets and alert rules." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the creation of consistent and portable monitoring setups by packaging the necessary configurations and dependencies into a deployable unit. Ideal for setting up monitoring in multiple environments or scaling deployments.", + "limitations": "This tool does not perform deployment or installation of the created package; it only builds the package artifact. It assumes valid input configurations. Validation of complex metric definitions or alert syntax is minimal.", + "examples": [ + "Create a monitoring package for servers 'web01' and 'db01' with CPU and memory metrics, including alerts for high CPU usage.", + "Generate a tar.gz package for monitoring a set of microservices with customized metrics definitions and no alert rules.", + "Build a zip package including all dependencies to monitor specified host IPs with default alert rules." + ] + }, + "tags": [ + "monitoring", + "package", + "configuration", + "deployment", + "automation", + "performance", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"ProdMonitoring\",\"monitoringTargets\":[\"web01.example.com\",\"db01.example.com\"],\"metricsDefinitions\":{\"cpuUsage\":{\"interval\":60},\"memoryUsage\":{\"interval\":60}},\"alertRules\":[{\"metric\":\"cpuUsage\",\"threshold\":85,\"duration\":300,\"severity\":\"high\"}],\"outputFormat\":\"zip\",\"includeDependencies\":true,\"description\":\"Production environment monitoring package.\"}", + "description": "Create a monitoring zip package for production web and database servers with CPU and memory metrics and high CPU alert." + }, + { + "inputJson": "{\"packageName\":\"MicroservicesMonitoring\",\"monitoringTargets\":[\"serviceA\",\"serviceB\"],\"metricsDefinitions\":{\"requestLatency\":{\"interval\":30},\"errorRate\":{\"interval\":30}},\"alertRules\":[],\"outputFormat\":\"tar.gz\",\"includeDependencies\":false}", + "description": "Generate a tar.gz monitoring package for microservices with specified metrics and no alerts, excluding dependencies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "compliance-management.analyzeOpportunity", + "description": "Analyzes business opportunities through the lens of regulatory and policy compliance. Accepts details about the opportunity including industry, jurisdiction, regulatory frameworks involved, and relevant documents. Processes risk factors and compliance requirements, then outputs a detailed report highlighting potential compliance risks, applicable laws, necessary mitigations, and strategic recommendations.", + "category": "compliance-management", + "parameters": [ + { + "name": "opportunityDescription", + "type": "string", + "description": "A detailed textual description of the business opportunity under consideration.", + "required": true, + "defaultValue": "" + }, + { + "name": "industrySector", + "type": "string", + "description": "The primary industry sector where the opportunity is situated (e.g., finance, healthcare, manufacturing).", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdictions", + "type": "array", + "description": "List of countries, states, or regulatory zones impacting this opportunity.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "regulatoryFrameworks", + "type": "array", + "description": "Applicable compliance frameworks or regulations to consider (e.g., GDPR, HIPAA, SOX).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "relatedDocuments", + "type": "array", + "description": "Supporting documents for compliance analysis, such as contracts, policies, or licenses in text format.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "riskToleranceLevel", + "type": "string", + "description": "Defines the acceptable level of compliance risk. Options: low, medium, high.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing a compliance risk assessment score, detailed risk summary, identified applicable regulations, recommended mitigation steps, and strategic next steps to ensure compliance." + }, + "aiAgent": { + "useCase": "This tool is ideal when assessing new business opportunities to understand the compliance risks and requirements before proceeding. AI agents should invoke it to evaluate whether a proposed venture aligns with industry regulations and jurisdictional laws, supplying mitigation recommendations to reduce compliance exposure.", + "limitations": "Does not replace legal counsel; may not capture rapidly changing regulations; limited if critical data is missing or improperly formatted.", + "examples": [ + "Analyze a business expansion opportunity in the healthcare sector within the EU complying with GDPR.", + "Evaluate a financial product launch in multiple US states considering relevant state financial regulations.", + "Assess compliance risks for a manufacturing partnership involving cross-border trade requiring export controls." + ] + }, + "tags": [ + "compliance", + "risk-analysis", + "business-opportunity", + "regulatory", + "policy", + "assessment" + ], + "examples": [ + { + "inputJson": "{\"opportunityDescription\": \"Launching a telehealth platform offering services across the EU.\", \"industrySector\": \"healthcare\", \"jurisdictions\": [\"EU\"], \"regulatoryFrameworks\": [\"GDPR\", \"Medical Device Regulation\"], \"relatedDocuments\": [\"Privacy policy text\", \"Terms of service document\"], \"riskToleranceLevel\": \"low\"}", + "description": "Analyzing telehealth platform opportunity in EU healthcare sector focusing on GDPR and MDR compliance with low risk tolerance." + }, + { + "inputJson": "{\"opportunityDescription\": \"Introduction of a new fintech app for payments in the US.\", \"industrySector\": \"finance\", \"jurisdictions\": [\"US\"], \"regulatoryFrameworks\": [\"SOX\", \"PCI DSS\"], \"relatedDocuments\": [\"App user agreement\", \"Compliance certificate\"], \"riskToleranceLevel\": \"medium\"}", + "description": "Compliance analysis for fintech app launch in US considering Sarbanes-Oxley and payment security standards." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "compliance-management.analyzeRisk", + "description": "This tool analyzes compliance risks by evaluating input data such as regulatory context, organizational policies, asset inventories, and threat information. It processes these inputs to identify, assess, and prioritize potential compliance risks, returning a structured risk report with risk levels, affected controls, and recommended mitigation steps.", + "category": "compliance-management", + "parameters": [ + { + "name": "regulations", + "type": "array", + "description": "List of applicable regulation identifiers or documents to consider during risk analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "organizationalPolicies", + "type": "array", + "description": "Array of organizational policy documents or summaries relevant to compliance scope.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "assetInventory", + "type": "array", + "description": "Detailed list of organizational assets including type, importance, and control mappings.", + "required": true, + "defaultValue": "" + }, + { + "name": "threatIntelligence", + "type": "array", + "description": "Current and historical threat data relevant to the organizational environment and regulations.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "riskToleranceLevel", + "type": "string", + "description": "Defined organizational risk tolerance level to categorize risk severity (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "analysisDate", + "type": "string", + "description": "Date for which the risk analysis is conducted, affecting data relevance and context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive risk assessment report including identified risks, their severity, impacted compliance areas, and recommended actions to mitigate each risk." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate organizational compliance risks based on current regulations, policies, assets, and threats to effectively prioritize risk mitigation efforts and ensure regulatory adherence. It suits situations requiring detailed risk prioritization aligned with organizational context.", + "limitations": "This tool does not perform real-time monitoring, cannot substitute legal advice, and depends on quality of provided input data. It does not auto-update regulations or threats; external updates are needed.", + "examples": [ + "Analyze compliance risks for GDPR and HIPAA regulations considering current organizational policies and assets.", + "Provide a prioritized risk report based on the asset inventory and recent threat intelligence for PCI DSS compliance.", + "Generate risk assessment highlighting critical compliance areas given company risk tolerance and selected regulatory frameworks." + ] + }, + "tags": [ + "compliance", + "risk analysis", + "regulations", + "security", + "policy", + "assessment", + "mitigation" + ], + "examples": [ + { + "inputJson": "{\"regulations\":[\"GDPR\",\"HIPAA\"],\"organizationalPolicies\":[\"Data Privacy Policy\",\"Access Control Policy\"],\"assetInventory\":[{\"id\":\"asset1\",\"type\":\"database\",\"importance\":\"high\",\"controls\":[\"encryption\",\"accessLogging\"]},{\"id\":\"asset2\",\"type\":\"webServer\",\"importance\":\"medium\",\"controls\":[\"firewall\",\"patchManagement\"]}],\"threatIntelligence\":[{\"threat\":\"ransomware\",\"likelihood\":\"medium\"}],\"riskToleranceLevel\":\"medium\",\"analysisDate\":\"2024-05-01\"}", + "description": "Analyze compliance risks for GDPR and HIPAA using current policies, asset inventory, and threat data on specified date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "compliance-management.uploadJSON", + "description": "Uploads JSON-formatted compliance data to a specified compliance management system endpoint. The tool accepts raw JSON compliance data or a JSON file path, validates the JSON format and essential compliance fields, and uploads it via HTTP POST to the given API endpoint URL with optional authentication. It returns a detailed upload status report including success indicators and any error messages.", + "category": "compliance-management", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "Raw JSON compliance data as a string to be uploaded", + "required": false, + "defaultValue": "" + }, + { + "name": "jsonFilePath", + "type": "string", + "description": "File path to a JSON file containing compliance data (used if jsonData is not provided)", + "required": false, + "defaultValue": "" + }, + { + "name": "apiEndpoint", + "type": "string", + "description": "URL of the compliance management system's API endpoint for uploading JSON data", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token for API access (e.g., Bearer token)", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Flag to validate JSON data against a known compliance schema before upload", + "required": false, + "defaultValue": "true" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag to allow overwriting existing compliance records identified in the JSON data", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Upload status object including success flag, HTTP status code, message string, and details of any errors encountered" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to upload up-to-date compliance data in JSON format to a centralized compliance management system or regulatory platform. It is suitable when input compliance info is available either as a JSON string or file. The tool manages authentication, validation, and error reporting to ensure compliance data integrity during upload.", + "limitations": "This tool does not generate or edit compliance JSON data, nor does it perform in-depth compliance validation other than schema checks. It cannot handle other data formats or protocols besides JSON over HTTP POST.", + "examples": [ + "Upload a JSON compliance report string to the compliance system with auth token and schema validation.", + "Upload JSON data from a local file path without authentication to a public API endpoint, allowing existing records to be overwritten.", + "Attempt to upload invalid JSON data and receive detailed validation error messages before upload attempt." + ] + }, + "tags": [ + "compliance", + "upload", + "json", + "api", + "validation", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"{\\\"policyId\\\": \\\"1234\\\", \\\"complianceStatus\\\": \\\"passed\\\"}\",\"apiEndpoint\":\"https://api.compliance.example.com/upload\",\"authToken\":\"Bearer abcdef123456\",\"validateSchema\":true}", + "description": "Upload a small compliance JSON report string with authentication and schema validation enabled." + }, + { + "inputJson": "{\"jsonFilePath\":\"/data/compliance/report.json\",\"apiEndpoint\":\"https://api.compliance.example.com/upload\",\"overwriteExisting\":true}", + "description": "Upload compliance data from a JSON file path to the API endpoint allowing existing records overwrite and no authentication." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "compliance-management.downloadDataset", + "description": "Downloads a compliance-related dataset from a specified regulatory source, filtering by compliance standard and date range. Accepts inputs for dataset identifier, compliance standard code, optional date range, and format preference. Outputs the filtered dataset in the chosen file format (CSV or JSON) ready for analysis or archiving.", + "category": "compliance-management", + "parameters": [ + { + "name": "datasetId", + "type": "string", + "description": "Identifier of the dataset to download from the compliance repository.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandard", + "type": "string", + "description": "Code or name of the compliance standard to filter data (e.g., GDPR, HIPAA).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Optional start date (YYYY-MM-DD) for filtering dataset records.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Optional end date (YYYY-MM-DD) for filtering dataset records.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Preferred output file format, either 'CSV' or 'JSON'.", + "required": false, + "defaultValue": "CSV" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded dataset data in the specified file format along with metadata such as compliance standard, datasetId, date range, and total records." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to obtain relevant compliance datasets filtered by specific standards and optional date ranges from official regulatory repositories for audit, analysis, reporting, or decision-making purposes.", + "limitations": "This tool cannot perform data validation or compliance risk assessment; it only downloads filtered datasets. It depends on the availability of the dataset with the given identifiers and standard codes at the source.", + "examples": [ + "Download the GDPR compliance dataset for Q1 2024 in JSON format.", + "Retrieve HIPAA audit datasets from January to March 2023 as CSV files.", + "Fetch the latest financial compliance dataset without date filtering." + ] + }, + "tags": [ + "compliance", + "dataset", + "download", + "regulation", + "filtering", + "audit", + "data-management" + ], + "examples": [ + { + "inputJson": "{\"datasetId\":\"regulatory-2023\",\"complianceStandard\":\"GDPR\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"fileFormat\":\"JSON\"}", + "description": "Download GDPR dataset for Q1 2023 in JSON format." + }, + { + "inputJson": "{\"datasetId\":\"healthcare-audit\",\"complianceStandard\":\"HIPAA\",\"fileFormat\":\"CSV\"}", + "description": "Download the full HIPAA healthcare audit dataset in CSV without date filters." + }, + { + "inputJson": "{\"datasetId\":\"financial-compliance\",\"complianceStandard\":\"SOX\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-06-30\"}", + "description": "Download financial compliance dataset filtered by SOX for first half of 2024 in default CSV format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "compliance-management.uploadImage", + "description": "Uploads compliance-related image files (e.g., scanned documents, photos of safety checks) to a secure storage system, validates file type and size, and associates images with specified compliance records or cases. Returns an upload result with image ID, status, and URL for further processing.", + "category": "compliance-management", + "parameters": [ + { + "name": "imageBase64", + "type": "string", + "description": "Base64-encoded string of the image file content to upload, supporting standard formats like PNG, JPEG, GIF.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Original file name of the image, used for metadata and storage purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "MIME type of the image file (e.g., image/png, image/jpeg).", + "required": true, + "defaultValue": "" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed file size for upload in megabytes to enforce compliance storage policies.", + "required": false, + "defaultValue": "10" + }, + { + "name": "associatedComplianceId", + "type": "string", + "description": "Identifier of the compliance record or case to associate the uploaded image with.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of tags describing the image context (e.g., 'fire-safety', 'inspection').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notifyOnUpload", + "type": "boolean", + "description": "Whether to send notification to compliance officers upon successful upload.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result of the upload operation including success status, the unique image ID, accessible URL, and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when needing to store and link image evidence or documentation relevant to compliance audits and reports, ensuring images are validated, correctly tagged, and associated with compliance cases for easy retrieval and review.", + "limitations": "This tool does not perform OCR or content analysis on the uploaded images; it only uploads and stores images with metadata. It cannot modify or redact images after upload.", + "examples": [ + "Upload a JPEG photo of a safety inspection to a fire safety compliance record.", + "Upload a scanned PNG document as evidence for OSHA regulatory compliance.", + "Upload multiple tagged images related to environmental compliance for a specific audit." + ] + }, + "tags": [ + "compliance", + "upload", + "image", + "document management", + "audit", + "security", + "regulatory" + ], + "examples": [ + { + "inputJson": "{\"imageBase64\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"fileName\":\"inspection_photo.jpg\",\"fileType\":\"image/jpeg\",\"maxFileSizeMB\":5,\"associatedComplianceId\":\"COMP-2024-12345\",\"tags\":[\"fire-safety\",\"inspection\"],\"notifyOnUpload\":true}", + "description": "Uploading a fire safety inspection photo JPEG under 5MB linked with compliance record COMP-2024-12345, and notifying officers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "compliance-management.uploadDataset", + "description": "Uploads a dataset relevant to regulatory or internal compliance processes. Accepts dataset files in CSV, JSON, or XML formats along with metadata describing the dataset's compliance scope. Validates format and compliance policy tags, stores securely, and returns confirmation and dataset ID.", + "category": "compliance-management", + "parameters": [ + { + "name": "datasetFile", + "type": "string", + "description": "Base64 encoded string of the dataset file content in CSV, JSON, or XML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the dataset file: 'csv', 'json', or 'xml'.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetName", + "type": "string", + "description": "A descriptive name for the dataset being uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceCategory", + "type": "string", + "description": "Compliance category applicable to the dataset, e.g., GDPR, HIPAA, SOX.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description providing additional details about the dataset.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Array of tags associated with the dataset to support search and classification.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with upload confirmation and dataset metadata including a unique dataset ID, upload timestamp, and compliance category." + }, + "aiAgent": { + "useCase": "Use this tool when you need to securely upload datasets for compliance auditing, reporting, or regulatory review. It ensures data integrity, proper classification, and storage with compliance-specific metadata to support later retrieval and verification.", + "limitations": "Does not perform deep content validation beyond format and metadata compliance categorization. It cannot amend or analyze the dataset content for compliance violations.", + "examples": [ + "Upload a GDPR-related customer data CSV file to the compliance repository.", + "Submit a HIPAA dataset in JSON format with tags for sensitive health information.", + "Upload an XML dataset pertaining to financial SOX compliance reporting." + ] + }, + "tags": [ + "upload", + "dataset", + "compliance", + "regulatory", + "data-management", + "security" + ], + "examples": [ + { + "inputJson": "{\"datasetFile\":\"VGhpcyBpcyBhIHRlc3QgZGF0YSBjc3Y=\",\"fileFormat\":\"csv\",\"datasetName\":\"Customer GDPR Dataset Q1\",\"complianceCategory\":\"GDPR\",\"description\":\"Contains personal data of EU customers for Q1 reporting.\",\"tags\":[\"personal-data\",\"EU\",\"Q1\"]}", + "description": "Uploading a CSV file encoding customer personal data governed by GDPR for the first quarter." + }, + { + "inputJson": "{\"datasetFile\":\"eyJkYXRhIjogW3siaWQiOiAxLCAibmFtZSI6ICJKb2huIERvZSJ9XSwgImNhdGVnb3J5IjogIkhJUEEifQ==\",\"fileFormat\":\"json\",\"datasetName\":\"Patient Records HIPAA\",\"complianceCategory\":\"HIPAA\",\"description\":\"Patient health info dataset in JSON format.\",\"tags\":[\"health\",\"patient\",\"private\"]}", + "description": "Uploading a JSON dataset of patient health records related to HIPAA compliance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "compliance-management.downloadImage", + "description": "Downloads an image file from a specified secure URL for compliance documentation. Accepts a URL string and optional authorization headers, validates access permissions to ensure regulatory compliance, retrieves the image, and returns image metadata along with binary data suitable for storage or analysis.", + "category": "compliance-management", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "Secure URL of the image to download. Required to locate the image file on a protected server.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorizationToken", + "type": "string", + "description": "Bearer token or API key for authentication to access restricted image resources. Optional if URL is public.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait when downloading the image before aborting. Helps ensure timely compliance processing.", + "required": false, + "defaultValue": "30" + }, + { + "name": "validateComplianceHeaders", + "type": "boolean", + "description": "If true, checks the HTTP response headers for compliance-related metadata such as content-type and retention policies.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing image metadata (format, size in bytes, timestamp) and the binary image data encoded as a base64 string for downstream compliance storage or auditing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve images that must be stored or audited under compliance regulations, verifying proper access rights and metadata to ensure adherence to data governance policies. Suitable for downloading images from secure or regulated repositories.", + "limitations": "Cannot interpret or modify image content. Does not perform image analysis, only retrieval and basic metadata validation. Relies on provided authentication tokens being valid and permissions being correctly configured on the source server.", + "examples": [ + "Download the compliance required image from a secure URL with a given API token.", + "Fetch an image for audit documentation ensuring the download respects retention policy headers.", + "Retrieve an image from a protected endpoint within a configurable timeout to avoid delays in compliance workflows." + ] + }, + "tags": [ + "download", + "image", + "compliance", + "authentication", + "secure-access", + "media" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://securecompliance.example.com/images/audit-photo-123.png\",\"authorizationToken\":\"Bearer abcdef123456\",\"timeoutSeconds\":20,\"validateComplianceHeaders\":true}", + "description": "Download a compliance audit image from a secure server using a bearer token with a 20-second timeout and header validation." + }, + { + "inputJson": "{\"imageUrl\":\"https://publicimages.example.com/compliance/logo.png\"}", + "description": "Download a publicly accessible compliance-related image without authentication, using default timeout and header validation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "compliance-management.formatText", + "description": "Formats compliance-related text documents according to specified regulatory style guides and formatting rules. Accepts raw text input and applies formatting rules such as header styles, bullet points, numbering, indentation, and font styles specific to compliance documentation. Outputs well-structured, standardized text ready for regulatory submission or internal policy review.", + "category": "compliance-management", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw text content that requires formatting according to compliance guidelines.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The specific compliance style guide or format to apply (e.g., 'HIPAA', 'GDPR', 'SOX').", + "required": true, + "defaultValue": "" + }, + { + "name": "includeNumbering", + "type": "boolean", + "description": "Whether to enable automatic numbering for lists and sections in the text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation for nested bullet points or paragraphs.", + "required": false, + "defaultValue": "4" + }, + { + "name": "capitalizeHeaders", + "type": "boolean", + "description": "If true, converts all headers to uppercase formatting to comply with style guide.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters allowed per line to ensure readability and format consistency.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted text and metadata on formatting applied." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare or clean up compliance documents by enforcing specific regulatory formatting rules, ensuring consistent presentation that meets legal or policy requirements. Ideal for automated compliance report generation or standardizing internal policy documents.", + "limitations": "Does not validate the legal accuracy of the content; only formats text. May not support highly customized or proprietary formatting rules outside standard style guides.", + "examples": [ + "Format a HIPAA compliance report text applying all standard formatting and numbering.", + "Apply GDPR style formatting to a collection of textual policy statements.", + "Standardize indentation and line length in a SOX audit documentation excerpt." + ] + }, + "tags": [ + "compliance", + "text-formatting", + "regulatory", + "documentation", + "style-guide", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"section 1 introduction\\nthis document describes our gdpr compliance approach...\",\"formatStyle\":\"GDPR\",\"includeNumbering\":true,\"indentationSpaces\":4,\"capitalizeHeaders\":true,\"maxLineLength\":80}", + "description": "Format GDPR compliance text with headers capitalized and numbered sections." + }, + { + "inputJson": "{\"inputText\":\"hipaa overview\\n- patient data protection\\n- secure storage\",\"formatStyle\":\"HIPAA\",\"includeNumbering\":true,\"indentationSpaces\":2,\"capitalizeHeaders\":true,\"maxLineLength\":100}", + "description": "Format a short HIPAA compliance overview with bullet points and proper indentation." + }, + { + "inputJson": "{\"inputText\":\"sox controls audit report\\ninternal controls findings and recommendations\",\"formatStyle\":\"SOX\",\"includeNumbering\":false,\"indentationSpaces\":4,\"capitalizeHeaders\":false,\"maxLineLength\":72}", + "description": "Format a SOX audit report excerpt with no numbering and set max line length." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "compliance-management.renderReport", + "description": "Renders a comprehensive compliance report based on provided compliance data and configuration. Accepts detailed compliance findings, organizational metadata, and formatting preferences, then processes these inputs to produce a structured, exportable compliance report in formats like PDF or HTML, suitable for audits and stakeholder review.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceData", + "type": "object", + "description": "Detailed structured data containing compliance findings, checklists, and status indicators to be included in the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "organizationInfo", + "type": "object", + "description": "Metadata about the organization such as name, department, contact info, used to personalize the report header.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "The desired output format of the report, e.g., 'PDF' or 'HTML'.", + "required": true, + "defaultValue": "PDF" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section in the report highlighting key compliance metrics.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateRange", + "type": "object", + "description": "An object specifying the start and end dates to filter compliance data to be included in the report, format: {startDate:'YYYY-MM-DD', endDate:'YYYY-MM-DD'}.", + "required": false, + "defaultValue": "" + }, + { + "name": "customSections", + "type": "array", + "description": "An array of custom section objects to include additional info or notes in the report, each with title and content fields.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered report file as a base64 string along with metadata including format, generation timestamp, and summary statistics." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to generate a formal compliance report document from raw compliance data and organizational info, producing a professional and regulatory-ready report in various export formats.", + "limitations": "Cannot independently validate accuracy of compliance data; it only formats and structures given data into a report. Complex styling beyond standard templates is not supported.", + "examples": [ + "Generate a compliance report in PDF for Q1 2024 including summary", + "Render compliance findings for the IT department as an HTML report", + "Create a compliance report with additional custom notes for auditors" + ] + }, + "tags": [ + "compliance", + "reporting", + "document-generation", + "regulatory", + "audit" + ], + "examples": [ + { + "inputJson": "{\"complianceData\":{\"checks\":[{\"id\":\"chk1\",\"description\":\"Data encryption enabled\",\"status\":\"passed\"},{\"id\":\"chk2\",\"description\":\"User access reviewed\",\"status\":\"failed\"}],\"metrics\":{\"totalChecks\":2,\"passed\":1,\"failed\":1}},\"organizationInfo\":{\"name\":\"Acme Corp\",\"department\":\"IT\",\"contactEmail\":\"it-acme@acme.com\"},\"reportFormat\":\"PDF\",\"includeSummary\":true,\"dateRange\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\"},\"customSections\":[{\"title\":\"Auditor Notes\",\"content\":\"Needs improvement on access reviews.\"}]}", + "description": "Generate a PDF compliance report for Acme Corp's IT department for Q1 2024 including summary and auditor notes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "compliance-management.formatJSON", + "description": "Formats JSON data for compliance-related documents according to specified indentation and property ordering. Accepts raw JSON strings or objects, applies indentation, optional property sorting, and outputs standardized, human-readable JSON suitable for regulatory submissions or internal audits.", + "category": "compliance-management", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The raw JSON data as a string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the output JSON. Defaults to 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortProperties", + "type": "boolean", + "description": "Whether to sort object properties alphabetically at each level. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "removeNullValues", + "type": "boolean", + "description": "Option to remove properties with null values to reduce noise. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "string", + "description": "A formatted JSON string that is human-readable and complies with the specified formatting rules, ready for compliance use." + }, + "aiAgent": { + "useCase": "Use this tool when you need to ensure compliance documentation in JSON format is well formatted with consistent indentation, optional sorting of properties, and removal of null values to meet organizational or regulatory style guides. It is ideal for preparing JSON data for audits, regulatory submissions, or internal compliance reviews.", + "limitations": "This tool does not validate the JSON against compliance-specific schemas or regulatory content requirements; it strictly formats the JSON structure and content presentation. It may not preserve property order if sorting is enabled, potentially affecting semantic meaning if order is significant.", + "examples": [ + "Format raw JSON data with 4-space indentation and sort all properties alphabetically.", + "Prepare JSON data for compliance submission by removing null values and formatting with default indentation.", + "Standardize JSON logs for compliance review without sorting or removing nulls, using 2-space indentation." + ] + }, + "tags": [ + "formatting", + "json", + "compliance", + "data-cleaning", + "regulatory", + "audit" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"{\\\"id\\\":123,\\\"name\\\":\\\"Sample\\\",\\\"details\\\":null}\",\"indentation\":4,\"sortProperties\":true,\"removeNullValues\":true}", + "description": "Format JSON data with 4 spaces indentation, sort properties, and remove null values." + }, + { + "inputJson": "{\"jsonData\":\"{\\\"b\\\":2,\\\"a\\\":1}\",\"indentation\":2,\"sortProperties\":false,\"removeNullValues\":false}", + "description": "Format JSON without sorting and with default 2 spaces indentation." + }, + { + "inputJson": "{\"jsonData\":\"{\\\"key\\\":null,\\\"value\\\":\\\"test\\\"}\",\"removeNullValues\":true}", + "description": "Remove null values from JSON and format with default settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "compliance-management.formatWord", + "description": "Formats a given word or phrase according to specified compliance-related style rules such as uppercase for acronyms, lowercasing for specific terms, or applying legal formatting conventions. Accepts a string input word, formatting style type, and optional parameters, and returns the formatted compliant word string.", + "category": "compliance-management", + "parameters": [ + { + "name": "inputWord", + "type": "string", + "description": "The single word or phrase to format for compliance.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The compliance style to apply, such as 'uppercase', 'lowercase', 'titlecase', or 'legalStyle'.", + "required": true, + "defaultValue": "" + }, + { + "name": "forceFormat", + "type": "boolean", + "description": "If true, enforces formatting even if input already seems compliant.", + "required": false, + "defaultValue": "false" + }, + { + "name": "customRules", + "type": "object", + "description": "Optional custom rules as key-value pairs to override default formatting behaviors (e.g., acronyms, exceptions).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted compliant word or phrase, including applied style details." + }, + "aiAgent": { + "useCase": "Use this tool when needing to ensure that key compliance-related terms or words are formatted consistently and according to regulatory or internal style guides prior to documentation or automated compliance checks. Useful for normalizing terminology in contracts, policies, or reports to avoid ambiguity.", + "limitations": "This tool formats single words or short phrases only; it does not process or validate entire documents or large text blocks. It also does not interpret context beyond specified style rules and custom overrides.", + "examples": [ + "Format the word 'gdpr' to uppercase compliance style.", + "Ensure the term 'non-disclosure agreement' is in legalStyle format.", + "Apply titlecase formatting to the term 'compliance manager'." + ] + }, + "tags": [ + "compliance", + "formatting", + "word-processing", + "regulatory", + "style-guide" + ], + "examples": [ + { + "inputJson": "{\"inputWord\":\"gdpr\",\"formatStyle\":\"uppercase\",\"forceFormat\":true}", + "description": "Formatting 'gdpr' acronym into uppercase compliance style." + }, + { + "inputJson": "{\"inputWord\":\"non-disclosure agreement\",\"formatStyle\":\"legalStyle\"}", + "description": "Applying legal style formatting to a common compliance phrase." + }, + { + "inputJson": "{\"inputWord\":\"compliance manager\",\"formatStyle\":\"titlecase\"}", + "description": "Capitalizing the term as a job title per compliance document style." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "compliance-management.formatAPI", + "description": "Formats API definitions to ensure compliance with specific regulatory and internal policy requirements. Accepts raw API definitions in OpenAPI or Swagger format, applies formatting rules like field order, naming conventions, mandatory compliance annotations, and outputs a standardized, policy-compliant API specification.", + "category": "compliance-management", + "parameters": [ + { + "name": "apiDefinition", + "type": "string", + "description": "Raw API definition document in JSON or YAML format to be formatted for compliance.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input API definition, e.g., 'OpenAPI', 'Swagger'.", + "required": true, + "defaultValue": "OpenAPI" + }, + { + "name": "complianceProfile", + "type": "string", + "description": "Compliance profile to apply, e.g., 'GDPR', 'HIPAA', 'InternalPolicyX'.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output API definition format, e.g., 'OpenAPI', 'Swagger'.", + "required": false, + "defaultValue": "OpenAPI" + }, + { + "name": "includeAnnotations", + "type": "boolean", + "description": "Whether to include compliance annotations or metadata in the formatted API.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted API definition as a string and a summary of compliance checks performed." + }, + "aiAgent": { + "useCase": "Use this tool when you need to ensure that API definitions conform to specific regulatory or corporate compliance standards before deployment or audit. It standardizes API specs to avoid compliance violations and enforces required annotations or data privacy constraints automatically.", + "limitations": "Does not validate runtime API behavior or enforce compliance beyond formatting and annotation of the API spec. Cannot fix underlying logical compliance issues in API implementation.", + "examples": [ + "Format an OpenAPI definition to comply with GDPR, outputting a standardized OpenAPI document with compliance metadata.", + "Convert a Swagger API definition into a HIPAA-compliant format, ensuring required security schemas and annotations are present.", + "Apply an internal company compliance profile to an API spec and produce a formatted, audited API definition file." + ] + }, + "tags": [ + "compliance", + "API", + "formatting", + "regulatory", + "policy", + "OpenAPI", + "Swagger" + ], + "examples": [ + { + "inputJson": "{\"apiDefinition\":\"{\\\"openapi\\\":\\\"3.0.0\\\",\\\"info\\\":{\\\"title\\\":\\\"Sample API\\\",\\\"version\\\":\\\"1.0\\\"},\\\"paths\\\":{}}\",\"inputFormat\":\"OpenAPI\",\"complianceProfile\":\"GDPR\",\"outputFormat\":\"OpenAPI\",\"includeAnnotations\":true}", + "description": "Format an OpenAPI spec ensuring GDPR compliance and include compliance annotations." + }, + { + "inputJson": "{\"apiDefinition\":\"swagger: '2.0', info: {title: 'Test API', version: '1.0'}, paths: {}\",\"inputFormat\":\"Swagger\",\"complianceProfile\":\"HIPAA\",\"outputFormat\":\"Swagger\",\"includeAnnotations\":false}", + "description": "Format a Swagger API definition to meet HIPAA compliance without extra annotations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "compliance-management.buildBranch", + "description": "Builds a compliance-focused code branch by accepting a compliance policy object and source code repository details. It processes the compliance requirements and generates a new repository branch with necessary changes, document templates, and audit logs to ensure adherence to specified regulations. Outputs branch metadata including branch name, commit ID, and summary of compliance tasks applied.", + "category": "compliance-management", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the source code repository where the branch will be created", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The base branch name to create the new compliance branch from", + "required": true, + "defaultValue": "main" + }, + { + "name": "compliancePolicy", + "type": "object", + "description": "An object defining compliance policies, rules, or frameworks to integrate into the branch (e.g., GDPR, HIPAA)", + "required": true, + "defaultValue": "" + }, + { + "name": "branchNamePrefix", + "type": "string", + "description": "Prefix to use for naming the new compliance branch", + "required": false, + "defaultValue": "compliance/" + }, + { + "name": "includeAuditTemplates", + "type": "boolean", + "description": "Flag indicating whether to add audit documentation templates to the new branch", + "required": false, + "defaultValue": "true" + }, + { + "name": "commitMessage", + "type": "string", + "description": "Commit message to use for the initial compliance changes commit", + "required": false, + "defaultValue": "Add compliance-enforcing changes and documentation" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata about the created compliance branch, including branchName, commitId, and a summary of applied compliance modifications." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a new branch in a code repository that embeds or enforces specific compliance requirements based on regulations or internal policies. It automates integrating compliance rules, documentation, and audit trail templates into the codebase for audit readiness and regulatory adherence.", + "limitations": "This tool does not perform static code analysis or guarantee full legal compliance. It creates branch scaffolding and templates but human review and custom implementation are necessary.", + "examples": [ + "Create a new compliance branch for GDPR in our backend repo.", + "Build a HIPAA compliance branch including audit templates for the healthcare app.", + "Generate a compliance branch from 'develop' with PCI DSS requirements integrated." + ] + }, + "tags": [ + "compliance", + "code-branch", + "branching", + "policy-integration", + "audit", + "repository" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/acme/backend\",\"baseBranch\":\"main\",\"compliancePolicy\":{\"regulation\":\"GDPR\",\"requirements\":[\"dataEncryption\",\"accessControl\"]},\"branchNamePrefix\":\"compliance/\",\"includeAuditTemplates\":true,\"commitMessage\":\"Add GDPR compliance features\"}", + "description": "Build a GDPR compliance branch from main with encryption and access control enforcement, including audit templates." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/medsys/app\",\"baseBranch\":\"develop\",\"compliancePolicy\":{\"regulation\":\"HIPAA\",\"requirements\":[\"logging\",\"dataMasking\"]},\"branchNamePrefix\":\"compliance/hipaa-\",\"includeAuditTemplates\":false,\"commitMessage\":\"Integrate HIPAA compliance changes\"}", + "description": "Create a HIPAA compliance branch from develop with logging and data masking features but without audit templates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "compliance-management.buildContainer", + "description": "This tool assists in constructing a compliance-focused container environment according to regulatory and policy requirements. It accepts configuration parameters such as container image, compliance standards to enforce, resource limits, and security settings. It processes these inputs to build a container that integrates compliance controls and outputs a deployment-ready container specification detailing the environment and compliance measures.", + "category": "compliance-management", + "parameters": [ + { + "name": "containerImage", + "type": "string", + "description": "The base container image to use for building the compliance container (e.g., 'ubuntu:20.04').", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards to enforce inside the container (e.g., ['PCI-DSS','HIPAA']).", + "required": true, + "defaultValue": "" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "CPU and memory resource limits to apply to the container, e.g., {'cpu':'2','memory':'4G'}.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableSecurityModules", + "type": "boolean", + "description": "Flag to enable additional container security modules (e.g., SELinux, AppArmor) for compliance.", + "required": false, + "defaultValue": "false" + }, + { + "name": "auditLogging", + "type": "boolean", + "description": "Whether to include audit logging capabilities inside the container environment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "networkPolicies", + "type": "array", + "description": "List of network policy rules to restrict container network traffic for compliance.", + "required": false, + "defaultValue": "" + }, + { + "name": "runtimeUser", + "type": "string", + "description": "User or role that the container runtime should use to enforce least privilege principle.", + "required": false, + "defaultValue": "root" + } + ], + "returns": { + "type": "object", + "description": "An object that includes the final container specification JSON with compliance controls embedded, security configurations, resource limits, and deployment details." + }, + "aiAgent": { + "useCase": "Use this tool when creating containerized infrastructure that must adhere to specific compliance frameworks. It helps automate embedding compliance controls, security policies, and audit mechanisms into container builds to meet regulatory requirements in environments such as finance, healthcare, or government.", + "limitations": "This tool does not perform runtime compliance monitoring or audit log analysis; it focuses only on building and configuring the container for compliance. It also requires validated compliance standard definitions to be effective.", + "examples": [ + "Build a PCI-DSS compliant container using the official Ubuntu image with resource limits and audit logging enabled.", + "Construct a HIPAA-compliant container that restricts network access and enforces AppArmor security.", + "Generate a container specification for GDPR compliance, enabling audit logging and limiting CPU and memory usage." + ] + }, + "tags": [ + "compliance", + "container", + "build", + "security", + "infrastructure", + "policy enforcement" + ], + "examples": [ + { + "inputJson": "{\"containerImage\":\"ubuntu:20.04\",\"complianceStandards\":[\"PCI-DSS\"],\"resourceLimits\":{\"cpu\":\"2\",\"memory\":\"4G\"},\"enableSecurityModules\":true,\"auditLogging\":true,\"networkPolicies\":[\"deny all inbound\"],\"runtimeUser\":\"nonroot\"}", + "description": "Build a PCI-DSS compliant Ubuntu container with enforced resource limits, SELinux enabled, audit logging, and restricted network traffic." + }, + { + "inputJson": "{\"containerImage\":\"alpine:3.14\",\"complianceStandards\":[\"HIPAA\",\"NIST\"],\"enableSecurityModules\":false,\"auditLogging\":true}", + "description": "Construct a lightweight Alpine container compliant with HIPAA and NIST standards, focusing on audit logging." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "compliance-management.buildEndpoint", + "description": "This tool generates a compliant API endpoint specification and template code to ensure adherence to relevant regulatory frameworks (e.g., GDPR, HIPAA). It accepts legal compliance requirements, endpoint functionality details, and preferred technology stack, then produces a ready-to-integrate API endpoint definition with embedded compliance checks and documentation.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceFrameworks", + "type": "array", + "description": "List of compliance frameworks to apply (e.g., GDPR, HIPAA). Each as a string identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointName", + "type": "string", + "description": "Name of the API endpoint to be created, following naming conventions.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for the endpoint (GET, POST, PUT, DELETE, etc.).", + "required": true, + "defaultValue": "" + }, + { + "name": "inputSchema", + "type": "object", + "description": "JSON schema object defining expected input data structure and validation rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON schema object describing the API's successful response data structure.", + "required": true, + "defaultValue": "" + }, + { + "name": "techStack", + "type": "string", + "description": "Primary programming language or framework (e.g., Node.js, Python Flask) for code generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeAuditLogging", + "type": "boolean", + "description": "Whether to include built-in audit logging compliant with data regulations.", + "required": false, + "defaultValue": "true" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Flag specifying if the endpoint requires authenticated access.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated endpoint code as a string, compliance summary detailing applied rules, and documentation snippet." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create API endpoints that must comply with data protection and industry regulations. It helps automate embedding compliance controls such as input validation, logging, and access restrictions, simplifying development for regulated environments.", + "limitations": "Does not deploy endpoints or run security audits beyond embedded compliance rules. Does not replace legal consulting and may require developer customization for complex scenarios.", + "examples": [ + "Generate a GDPR-compliant POST endpoint named 'createUser' in Node.js to accept user registration data.", + "Build a HIPAA-compliant GET endpoint 'fetchPatientRecord' requiring authentication and audit logging.", + "Create a RESTful PUT endpoint for updating orders with input and output JSON schemas, using Python Flask." + ] + }, + "tags": [ + "compliance", + "api", + "endpoint", + "code-generation", + "regulation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"complianceFrameworks\":[\"GDPR\"],\"endpointName\":\"createUser\",\"httpMethod\":\"POST\",\"inputSchema\":{\"type\":\"object\",\"properties\":{\"email\":{\"type\":\"string\",\"format\":\"email\"},\"password\":{\"type\":\"string\",\"minLength\":8}},\"required\":[\"email\",\"password\"]},\"responseSchema\":{\"type\":\"object\",\"properties\":{\"userId\":{\"type\":\"string\"}},\"required\":[\"userId\"]},\"techStack\":\"Node.js\",\"includeAuditLogging\":true,\"authenticationRequired\":true}", + "description": "Generate a GDPR-compliant POST /createUser endpoint in Node.js with audit logging and authentication, validating email and password input." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "compliance-management.buildModule", + "description": "This tool generates a compliance module based on specified regulatory requirements and organizational policies. It accepts a list of compliance standards, policy documents, and user preferences, then processes them to produce a structured, configurable code module that helps enforce and monitor compliance across systems.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceStandards", + "type": "array", + "description": "A list of compliance standards (e.g., GDPR, HIPAA) to be incorporated into the module.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "policyDocuments", + "type": "array", + "description": "An array of policy document texts or structured objects outlining internal compliance rules.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "The software platform or environment (e.g., web, mobile, backend) for which the compliance module is intended.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired format of the output module (e.g., JavaScript, Python, JSON configuration).", + "required": true, + "defaultValue": "JavaScript" + }, + { + "name": "enableMonitoring", + "type": "boolean", + "description": "Flag to include runtime compliance monitoring features in the module.", + "required": false, + "defaultValue": "false" + }, + { + "name": "moduleName", + "type": "string", + "description": "Optional name for the generated compliance module for identification and documentation purposes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated compliance module code or configuration, associated metadata, and any warnings about potential compliance gaps." + }, + "aiAgent": { + "useCase": "Agents should use this tool when they need to programmatically generate a compliance enforcement or monitoring module tailored to specific regulatory requirements and organizational policies, especially to automate compliance tasks in software environments.", + "limitations": "This tool cannot guarantee legal compliance or interpret ambiguous policy language. It requires precise input and cannot adapt to changes in regulations without updated input data.", + "examples": [ + "Generate a GDPR and HIPAA compliance module for a web backend in JavaScript with monitoring enabled.", + "Build a compliance module for internal data privacy policies targeting a mobile app, output in Python.", + "Create a JSON configuration module for SOX compliance based on provided policy documents." + ] + }, + "tags": [ + "compliance", + "module", + "code-generation", + "regulations", + "policy-enforcement", + "automation", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"complianceStandards\":[\"GDPR\",\"HIPAA\"],\"policyDocuments\":[\"Data must be encrypted at rest and in transit.\",\"Access logs must be maintained for 6 months.\"],\"targetPlatform\":\"backend\",\"outputFormat\":\"JavaScript\",\"enableMonitoring\":true,\"moduleName\":\"ComplianceModuleV1\"}", + "description": "Build a JavaScript backend compliance module enforcing GDPR and HIPAA policies with monitoring enabled." + }, + { + "inputJson": "{\"complianceStandards\":[\"SOX\"],\"policyDocuments\":[\"All financial transactions must be logged.\",\"User roles must be segregated based on access levels.\"],\"targetPlatform\":\"web\",\"outputFormat\":\"JSON\",\"enableMonitoring\":false,\"moduleName\":\"SOXConfig\"}", + "description": "Generate a JSON configuration module for SOX compliance focused on financial logs and role segregation without monitoring." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "compliance-management.generateDashboard", + "description": "Generates an interactive compliance dashboard by aggregating regulatory data, audit reports, and policy adherence metrics. Accepts filters such as date ranges, compliance standards, and departments to tailor the data. Outputs visual analytics and key compliance indicators to support risk management and decision-making.", + "category": "compliance-management", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "The start date for compliance data filtering in ISO 8601 format (e.g., 2024-01-01).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date for compliance data filtering in ISO 8601 format (e.g., 2024-01-31).", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards to include (e.g., ['GDPR','HIPAA']). If empty, all standards are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "departments", + "type": "array", + "description": "List of department names to filter data (e.g., ['Finance','IT']). If empty, includes all departments.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeAuditFindings", + "type": "boolean", + "description": "Whether to include audit findings summary in the dashboard.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the dashboard (e.g., 'interactive', 'pdf', 'html'). Defaults to 'interactive'.", + "required": false, + "defaultValue": "interactive" + } + ], + "returns": { + "type": "object", + "description": "A structured dashboard object containing compliance metrics, visual charts, key risk indicators, and audit summaries as specified. Suitable for display or export in requested format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide a comprehensive compliance overview that aggregates multiple data sources filtered by dates, standards, and departments. Ideal for generating reports that help compliance officers and managers monitor adherence and risks easily.", + "limitations": "Cannot perform real-time data fetching; relies on pre-aggregated or accessible compliance data. Does not replace legal advice or interpret standards beyond provided data.", + "examples": [ + "Generate a GDPR and HIPAA compliance dashboard for Q1 2024 focusing on IT and HR departments.", + "Create a PDF report summarizing audit findings and compliance status of the Finance department for 2023.", + "Produce an interactive dashboard covering all compliance standards for the last fiscal year with key risk indicators." + ] + }, + "tags": [ + "compliance", + "dashboard", + "analytics", + "reporting", + "regulatory", + "audit", + "risk-management" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"complianceStandards\":[\"GDPR\",\"HIPAA\"],\"departments\":[\"IT\",\"HR\"],\"includeAuditFindings\":true,\"outputFormat\":\"interactive\"}", + "description": "Generate an interactive compliance dashboard for GDPR and HIPAA standards for IT and HR departments for Q1 2024 including audit findings." + }, + { + "inputJson": "{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\",\"complianceStandards\":[],\"departments\":[\"Finance\"],\"includeAuditFindings\":true,\"outputFormat\":\"pdf\"}", + "description": "Create a PDF compliance report covering all standards with audit findings for the Finance department in 2023." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "compliance-management.createDashboard", + "description": "Creates a customizable compliance dashboard by accepting compliance domain, selected regulations, and data sources. It processes compliance data to aggregate key metrics and visualizes compliance status, trends, and alerts in an interactive dashboard output.", + "category": "compliance-management", + "parameters": [ + { + "name": "complianceDomain", + "type": "string", + "description": "The specific compliance domain such as GDPR, HIPAA, or SOX to focus the dashboard on.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectedRegulations", + "type": "array", + "description": "List of regulations or policies to include in compliance analysis and reporting.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "dataSources", + "type": "array", + "description": "A list of identifiers or endpoints for data sources to be integrated for compliance metric extraction.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title to display at the top of the dashboard.", + "required": false, + "defaultValue": "\"Compliance Dashboard\"" + }, + { + "name": "refreshIntervalMinutes", + "type": "number", + "description": "Number of minutes between automatic data refreshes on the dashboard.", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeAlerts", + "type": "boolean", + "description": "Whether to include real-time compliance alerts and notifications on the dashboard.", + "required": false, + "defaultValue": "true" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "Preferred visualization types to use in the dashboard e.g. charts, tables, gauges.", + "required": false, + "defaultValue": "[\"charts\",\"tables\"]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the rendered compliance dashboard including data summaries, visual components, and configuration metadata." + }, + "aiAgent": { + "useCase": "This tool is used when an agent needs to generate a real-time or periodic summary compliance dashboard tailored to specific regulations and data sources. It is useful for monitoring compliance status, identifying issues, and providing stakeholders a consolidated view for governance or audit purposes.", + "limitations": "Does not collect raw data itself; requires pre-integrated data sources. Does not automate remediation, only visualization and alerting. Visualization customization is limited to predefined types.", + "examples": [ + "Create a GDPR compliance dashboard showing data privacy status with alerts.", + "Generate a dashboard for HIPAA and SOX regulations combining audit logs and incident reports.", + "Set up a compliance dashboard with hourly refresh for ongoing PCI DSS monitoring." + ] + }, + "tags": [ + "compliance", + "dashboard", + "monitoring", + "analytics", + "regulation", + "visualization", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"complianceDomain\":\"GDPR\",\"selectedRegulations\":[\"GDPR Article 5\",\"GDPR Article 32\"],\"dataSources\":[\"database1\",\"logSystemA\"],\"dashboardTitle\":\"GDPR Compliance Overview\",\"refreshIntervalMinutes\":30,\"includeAlerts\":true,\"visualizationTypes\":[\"charts\",\"tables\"]}", + "description": "Create a GDPR-focused compliance dashboard with data from two sources, refreshing every 30 minutes, including alerts, using charts and tables visualizations." + }, + { + "inputJson": "{\"complianceDomain\":\"HIPAA\",\"selectedRegulations\":[\"HIPAA Privacy Rule\"],\"dataSources\":[\"healthRecordsDB\"],\"dashboardTitle\":\"HIPAA Privacy Compliance\",\"refreshIntervalMinutes\":60,\"includeAlerts\":false,\"visualizationTypes\":[\"gauges\"]}", + "description": "Generate a HIPAA Privacy Rule compliance dashboard from health records DB with gauges only, no alerts, updating hourly." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "compliance-management.generateArticle", + "description": "Generates a compliance-related article based on regulatory topics, jurisdiction, and industry. Accepts inputs specifying the article topic, target regulations, jurisdiction, desired length, and industry focus. Produces a coherent, well-structured article draft suitable for compliance documentation or informational resources.", + "category": "compliance-management", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main compliance topic or regulation to cover in the article (e.g., GDPR data privacy).", + "required": true, + "defaultValue": "" + }, + { + "name": "jurisdiction", + "type": "string", + "description": "The legal jurisdiction or geographic region relevant to the article (e.g., EU, US, California).", + "required": true, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "The industry sector the article should target (e.g., finance, healthcare).", + "required": false, + "defaultValue": "" + }, + { + "name": "articleLength", + "type": "number", + "description": "Desired approximate length of the article in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeLatestUpdates", + "type": "boolean", + "description": "Whether to include the latest regulatory updates or amendments in the article.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The language code for the article output (e.g., en, fr).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text and metadata like the topic, jurisdiction, and length." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create informative compliance articles tailored to specific regulations, jurisdictions, or industries. Ideal for compliance teams, legal advisors, or content creators who require preliminary drafts of regulatory content for education, training, or documentation purposes. It helps automate initial writing based on structured input parameters.", + "limitations": "Cannot replace expert legal advice or ensure full legal compliance. Articles are drafts and may require review by qualified personnel for accuracy and completeness. May not capture the very latest legal changes if the data source is outdated.", + "examples": [ + "Generate an article on GDPR compliance requirements in the EU for the healthcare industry.", + "Create a 1500-word article summarizing recent updates to US financial compliance regulations.", + "Draft a basic overview article on California privacy laws for technology companies." + ] + }, + "tags": [ + "compliance", + "article-generation", + "regulations", + "legal", + "documentation", + "content-creation", + "automated-writing" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"GDPR data privacy\",\"jurisdiction\":\"EU\",\"industry\":\"healthcare\",\"articleLength\":1200,\"includeLatestUpdates\":true,\"language\":\"en\"}", + "description": "Generate a 1200-word article about GDPR compliance for the healthcare sector in the EU including the latest updates." + }, + { + "inputJson": "{\"topic\":\"US financial compliance\",\"jurisdiction\":\"US\",\"industry\":\"finance\",\"articleLength\":1500,\"includeLatestUpdates\":false,\"language\":\"en\"}", + "description": "Create a 1500-word article summarizing US financial compliance regulations without the latest amendments." + }, + { + "inputJson": "{\"topic\":\"California privacy laws\",\"jurisdiction\":\"California\",\"industry\":\"technology\",\"articleLength\":800,\"includeLatestUpdates\":true,\"language\":\"en\"}", + "description": "Draft an 800-word overview article on California privacy laws tailored for tech companies including recent changes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "compliance-management.createComment", + "description": "Creates a compliance-related comment within a specific regulatory case or audit record. Accepts inputs including case ID, user ID, comment text, and optional tags or attachments. Processes and stores the comment linked to the compliance case, returning confirmation and comment metadata.", + "category": "compliance-management", + "parameters": [ + { + "name": "caseId", + "type": "string", + "description": "Unique identifier of the compliance case or audit record to which the comment belongs.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier of the user or system creating the comment, for audit trails.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "Text content of the compliance comment to add.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of tags categorizing the comment (e.g., 'risk', 'note', 'follow-up').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachment references (e.g., URLs or file IDs) associated with the comment.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted datetime string representing when the comment was created. Defaults to current time if empty.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object confirming comment creation with the comment ID, linked case ID, timestamp, and status message." + }, + "aiAgent": { + "useCase": "Use this tool when the AI needs to document observations, concerns, or updates within a compliance or regulatory case system. It is suitable for creating audit trail comments, clarifications, or follow-up notes to ensure traceability and accountability in compliance workflows.", + "limitations": "This tool only creates comments; it cannot modify or delete existing comments, nor can it analyze or validate the content of compliance cases themselves.", + "examples": [ + "Create a comment with a note about an identified risk in case CA12345.", + "Add a follow-up comment linked to an audit case for user ID U456.", + "Submit a comment tagging it as 'urgent' with an attached evidence file reference." + ] + }, + "tags": [ + "compliance", + "comment", + "audit", + "documentation", + "case-management" + ], + "examples": [ + { + "inputJson": "{\"caseId\":\"CA12345\",\"userId\":\"U789\",\"commentText\":\"Identified potential conflict of interest in vendor selection.\",\"tags\":[\"risk\",\"vendor\"],\"attachments\":[],\"timestamp\":\"2024-06-01T10:15:30Z\"}", + "description": "Adding a risk-related comment about vendor conflict in a compliance case." + }, + { + "inputJson": "{\"caseId\":\"AUD202406\",\"userId\":\"AUD001\",\"commentText\":\"Requesting further documents from finance department.\",\"tags\":[\"follow-up\"],\"attachments\":[\"file123.pdf\"],\"timestamp\":\"\"}", + "description": "Creating a follow-up comment with an attachment, timestamp defaults to current time." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "compliance-management.createCredential", + "description": "Creates a compliance credential representing verified adherence to specific regulatory requirements or internal policies. Accepts inputs detailing the credential type, issuer, recipient, scope, expiration, and related metadata. Processes and validates input parameters to generate a secure credential object output, which can be stored or shared for compliance verification.", + "category": "compliance-management", + "parameters": [ + { + "name": "credentialType", + "type": "string", + "description": "Specifies the type of compliance credential to create (e.g., GDPR, HIPAA, ISO27001).", + "required": true, + "defaultValue": "" + }, + { + "name": "issuer", + "type": "string", + "description": "The entity issuing this credential, typically an organization or compliance officer's identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipient", + "type": "string", + "description": "Identifier of the individual or organization receiving the credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "scope", + "type": "string", + "description": "Defines the scope or domain of compliance covered by this credential.", + "required": true, + "defaultValue": "" + }, + { + "name": "issueDate", + "type": "string", + "description": "Date the credential is issued, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationDate", + "type": "string", + "description": "Date when the credential expires, in ISO 8601 format (YYYY-MM-DD), if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata as key-value pairs related to the credential.", + "required": false, + "defaultValue": "" + }, + { + "name": "isRevocable", + "type": "boolean", + "description": "Indicates if the credential can be revoked before expiration.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created compliance credential, including a unique credentialId, full details provided, issued status, and timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate and issue compliance credentials to demonstrate an entity's adherence to required regulations or company policies. Ideal for automated compliance workflows that require verifiable credentials for audits, reporting, or access control.", + "limitations": "This tool does not verify the compliance status itself; it only creates the credential representation. Verification of underlying compliance conditions must be conducted externally. It does not handle credential storage or distribution.", + "examples": [ + "Create a GDPR compliance credential for a staff member issued by the company.", + "Generate an ISO27001 certification credential with specific metadata and expiry date.", + "Issue a HIPAA compliance credential to a healthcare provider with revocable status." + ] + }, + "tags": [ + "compliance", + "credential", + "security", + "regulation", + "issuer", + "recipient", + "verification" + ], + "examples": [ + { + "inputJson": "{\"credentialType\":\"GDPR\",\"issuer\":\"CompanyX-ComplianceDept\",\"recipient\":\"user123\",\"scope\":\"PersonalDataHandling\",\"issueDate\":\"2024-06-01\",\"expirationDate\":\"2025-06-01\",\"metadata\":{\"department\":\"Legal\",\"level\":\"Level1\"},\"isRevocable\":true}", + "description": "Create a GDPR compliance credential for an individual with specified metadata and expiration." + }, + { + "inputJson": "{\"credentialType\":\"ISO27001\",\"issuer\":\"AcmeCorp-ComplianceTeam\",\"recipient\":\"partner456\",\"scope\":\"InformationSecurityManagement\",\"issueDate\":\"2024-06-01\",\"metadata\":{\"certificationLevel\":\"Full\",\"auditPeriod\":\"2023-2024\"},\"isRevocable\":false}", + "description": "Create a non-revocable ISO27001 credential for a business partner with audit metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "compliance-management.createInstance", + "description": "Creates a new compliance management instance in the infrastructure domain by configuring required regulatory standards, compliance rules, and environment settings. Accepts input parameters for instance name, compliance standards (e.g., GDPR, HIPAA), and optional descriptions. Returns details including instance ID, status, and configured standards.", + "category": "compliance-management", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "Unique name to identify the compliance management instance", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "List of compliance standards to apply, e.g., ['GDPR','HIPAA']", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Target environment for the instance, e.g., 'production', 'staging'", + "required": false, + "defaultValue": "production" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description for the instance", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details of the created compliance instance including ID, name, environment, standards applied, creation timestamp, and status" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision and configure a new compliance management instance in an infrastructure environment, specifying applicable regulatory standards and environment context to ensure automated compliance workflows are established.", + "limitations": "This tool does not perform compliance audits or monitor compliance status beyond initial instance creation. It assumes valid compliance standards are provided.", + "examples": [ + "Create a compliance instance named 'EU GDPR Compliance' applying GDPR standard in production.", + "Set up a staging compliance environment applying HIPAA and PCI DSS standards.", + "Create a new compliance instance with description for internal audit purposes." + ] + }, + "tags": [ + "compliance", + "infrastructure", + "instance-creation", + "regulatory", + "automation" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"EU GDPR Compliance\",\"complianceStandards\":[\"GDPR\"],\"environment\":\"production\",\"description\":\"Compliance instance for GDPR requirements in EU region\"}", + "description": "Create a production compliance instance applying GDPR standard with descriptive metadata." + }, + { + "inputJson": "{\"instanceName\":\"Health Data Compliance\",\"complianceStandards\":[\"HIPAA\",\"PCI DSS\"],\"environment\":\"staging\"}", + "description": "Set up staging environment compliance instance for healthcare-related regulations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "compliance-management.createRisk", + "description": "Creates a detailed risk record for compliance management by accepting inputs such as risk title, description, category, likelihood and impact ratings, and controls. It processes these inputs to compute a risk score and returns a structured risk object that can be stored or used for further compliance analysis.", + "category": "compliance-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The short, descriptive name of the risk to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed explanation of the nature of the risk and its potential impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "The compliance-related category of the risk, e.g. Data Privacy, Regulatory, Operational.", + "required": true, + "defaultValue": "" + }, + { + "name": "likelihood", + "type": "number", + "description": "Numeric likelihood rating of the risk occurring, typically on a scale from 1 (low) to 5 (high).", + "required": true, + "defaultValue": "" + }, + { + "name": "impact", + "type": "number", + "description": "Numeric impact rating if the risk materializes, typically on a scale from 1 (low) to 5 (high).", + "required": true, + "defaultValue": "" + }, + { + "name": "existingControls", + "type": "array", + "description": "List of existing controls or mitigations addressing this risk.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "riskOwner", + "type": "string", + "description": "Name or identifier of the individual responsible for managing this risk.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created risk, including computed risk score, and all input fields for tracking and further assessment." + }, + "aiAgent": { + "useCase": "Use this tool when needing to formalize and document a compliance-related risk by capturing essential details such as likelihood, impact, and controls to generate a risk profile useful in compliance programs and risk registers.", + "limitations": "This tool does not perform automated risk identification or dynamic risk analysis; it requires manual input of risk parameters.", + "examples": [ + "Create a risk for potential GDPR violation due to insufficient data encryption, likelihood 4, impact 5.", + "Log a regulatory compliance risk related to delayed reporting, likelihood 3, impact 4, with existing controls noted.", + "Document an operational risk category regarding supplier failure with moderate likelihood and impact ratings." + ] + }, + "tags": [ + "compliance", + "risk management", + "risk creation", + "security", + "governance", + "policy" + ], + "examples": [ + { + "inputJson": "{\"title\":\"GDPR Violation Risk\",\"description\":\"Risk of non-compliance with GDPR due to insufficient data encryption\",\"category\":\"Data Privacy\",\"likelihood\":4,\"impact\":5,\"existingControls\":[\"Encryption policy\",\"Regular audits\"],\"riskOwner\":\"John Doe\"}", + "description": "Create a data privacy risk for GDPR non-compliance with high likelihood and impact." + }, + { + "inputJson": "{\"title\":\"Regulatory Reporting Delay\",\"description\":\"Risk of delayed submission of mandatory reports to regulators\",\"category\":\"Regulatory\",\"likelihood\":3,\"impact\":4,\"existingControls\":[\"Automated alerts\"],\"riskOwner\":\"Jane Smith\"}", + "description": "Log a regulatory compliance risk with moderate likelihood and impact including controls." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "compliance-management.createPayment", + "description": "Creates a payment record compliant with relevant regulatory and internal policy frameworks. Accepts payment details including payer info, amount, currency, and compliance metadata, validates input against compliance rules, and outputs a payment record with compliance status and audit trail references.", + "category": "compliance-management", + "parameters": [ + { + "name": "payerId", + "type": "string", + "description": "Unique identifier of the payer initiating the payment, required for compliance tracking.", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "The monetary amount of the payment in specified currency, must be positive.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "ISO currency code for the payment (e.g., USD, EUR).", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Method used for payment such as credit card, bank transfer, or digital wallet.", + "required": true, + "defaultValue": "" + }, + { + "name": "transactionDate", + "type": "string", + "description": "ISO 8601 date-time string representing when the payment occurs.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceChecklist", + "type": "array", + "description": "Array of compliance rule identifiers to validate the payment against (e.g., AML, KYC).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data related to the payment for compliance auditing and tracking.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created payment record ID, compliance validation status, detailed compliance results, and references to audit logs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initiate or record a payment transaction that must adhere to regulatory and internal compliance requirements. This includes verifying payment details against AML/KYC rules and generating a compliance report as part of the payment record. It ensures that any payment processed is accompanied by audit evidence and compliance validation.", + "limitations": "This tool does not execute the actual monetary transfer or handle payment settlement. It only creates and validates payment records for compliance purposes. Real-time interaction with payment gateways or financial institutions is outside its scope.", + "examples": [ + "Create a payment record for a client including KYC and AML compliance check.", + "Log a completed payment with audit metadata for regulatory reporting.", + "Generate a payment entry validating payment method and amount within compliance constraints." + ] + }, + "tags": [ + "compliance", + "payment", + "recordCreation", + "aml", + "kyc", + "audit", + "finance" + ], + "examples": [ + { + "inputJson": "{\"payerId\":\"user123\",\"amount\":250.75,\"currency\":\"USD\",\"paymentMethod\":\"creditCard\",\"transactionDate\":\"2024-06-01T12:30:00Z\",\"complianceChecklist\":[\"AML\",\"KYC\"],\"metadata\":{\"invoiceId\":\"inv789\",\"department\":\"sales\"}}", + "description": "Creating a payment record for a customer, verifying AML and KYC compliance, including invoice reference metadata." + }, + { + "inputJson": "{\"payerId\":\"corporate456\",\"amount\":10000,\"currency\":\"EUR\",\"paymentMethod\":\"bankTransfer\",\"transactionDate\":\"2024-06-01T15:45:00Z\",\"complianceChecklist\":[\"AML\"]}", + "description": "Creating a high-value payment record with AML compliance check via bank transfer method." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "compliance-management.createTable", + "description": "Creates a structured compliance data table to organize and track regulatory or policy requirements, statuses, and associated documents. Accepts a list of compliance items with attributes like requirement ID, description, status, priority, and owner. Outputs a formatted table data structure suitable for reporting and management systems.", + "category": "compliance-management", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "Name of the compliance table being created, identifying its purpose or scope.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "An array of column definitions specifying the columns in the table; each column includes name, type (string, number, boolean, date), and optional description.", + "required": true, + "defaultValue": "" + }, + { + "name": "rows", + "type": "array", + "description": "Array of row objects, each representing a compliance item with keys corresponding to the defined columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include column headers as part of the output table representation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sortByColumn", + "type": "string", + "description": "Optional column name by which to sort the table rows for easier review.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured object representing the compliance table with metadata, columns, and rows formatted for downstream processing or display." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate a structured compliance tracking table from raw compliance data inputs, such as requirement lists or audit findings, to enable systematic monitoring and reporting of regulatory adherence.", + "limitations": "This tool does not perform compliance auditing, validation, or generate policy content; it only structures provided data into a standardized table format.", + "examples": [ + "Create a table of GDPR compliance requirements with status and owners.", + "Generate a compliance tracking table sorted by risk priority.", + "Build a table including custom columns for a new regulatory framework." + ] + }, + "tags": [ + "compliance", + "table", + "data-organization", + "reporting", + "regulatory", + "tracking", + "management" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"GDPR Compliance Tracker\",\"columns\":[{\"name\":\"requirementId\",\"type\":\"string\",\"description\":\"Unique ID of the compliance requirement\"},{\"name\":\"description\",\"type\":\"string\",\"description\":\"Description of the compliance requirement\"},{\"name\":\"status\",\"type\":\"string\",\"description\":\"Current status such as Compliant, Non-Compliant, or Pending\"},{\"name\":\"priority\",\"type\":\"string\",\"description\":\"Priority level such as High, Medium, Low\"},{\"name\":\"owner\",\"type\":\"string\",\"description\":\"Responsible person or team\"}],\"rows\":[{\"requirementId\":\"R1\",\"description\":\"Data encryption at rest\",\"status\":\"Compliant\",\"priority\":\"High\",\"owner\":\"IT Security\"},{\"requirementId\":\"R2\",\"description\":\"Data retention policy\",\"status\":\"Pending\",\"priority\":\"Medium\",\"owner\":\"Legal\"}],\"includeHeaders\":true,\"sortByColumn\":\"priority\"}", + "description": "Create a GDPR compliance tracking table including columns for requirement ID, description, status, priority level, and owner, sorting the rows by priority." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "compliance-management.createVideo", + "description": "Creates a compliance training video based on provided regulatory content, policies, and branding guidelines. Accepts text scripts or documents, processes the content to generate a structured video storyboard, and outputs a finalized video file suitable for employee training and audit purposes.", + "category": "compliance-management", + "parameters": [ + { + "name": "scriptText", + "type": "string", + "description": "The main text or script content for the compliance training video.", + "required": true, + "defaultValue": "" + }, + { + "name": "policyDocuments", + "type": "array", + "description": "List of URLs or file paths to policy documents to incorporate or reference in the video.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "videoLengthLimitMinutes", + "type": "number", + "description": "Maximum length of the video in minutes. The tool will adjust content length accordingly.", + "required": false, + "defaultValue": "10" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') for narration and captions.", + "required": true, + "defaultValue": "en" + }, + { + "name": "includeCaptions", + "type": "boolean", + "description": "Whether to generate closed captions for the video.", + "required": false, + "defaultValue": "true" + }, + { + "name": "brandingTemplateId", + "type": "string", + "description": "Identifier for the corporate branding template to style the video (colors, logos, fonts).", + "required": false, + "defaultValue": "" + }, + { + "name": "voiceoverStyle", + "type": "string", + "description": "Preferred style of voiceover narration, e.g., 'formal', 'friendly', 'neutral'.", + "required": false, + "defaultValue": "neutral" + } + ], + "returns": { + "type": "object", + "description": "An object containing the video URL, duration in seconds, video format, and a summary of included content." + }, + "aiAgent": { + "useCase": "This tool should be used when compliance officers or training coordinators need to produce standardized, clear, and engaging video content to educate employees on regulatory requirements, internal policies, or procedures, helping organizations meet audit and training mandates efficiently.", + "limitations": "The tool cannot create highly customized or interactive videos; it relies on provided text/scripts and templates, and does not handle live filming or real-person actor integration.", + "examples": [ + "Create a 7-minute compliance video in English using provided privacy policy documents and a friendly voiceover style.", + "Generate a video with captions for workplace safety regulations, using the company’s branding template ID 'corp123'.", + "Produce a Spanish-language video summarizing anti-harassment policies with a formal narration tone." + ] + }, + "tags": [ + "compliance", + "video", + "training", + "regulation", + "employee-education", + "automation", + "policy" + ], + "examples": [ + { + "inputJson": "{\"scriptText\":\"Welcome to the data privacy compliance training. This video explains core GDPR requirements employees must follow.\",\"policyDocuments\":[\"https://company.com/docs/gdpr_policy.pdf\"],\"videoLengthLimitMinutes\":5,\"language\":\"en\",\"includeCaptions\":true,\"brandingTemplateId\":\"brand001\",\"voiceoverStyle\":\"formal\"}", + "description": "Creates a 5-minute GDPR compliance training video in English with captions and formal voiceover using the company branding." + }, + { + "inputJson": "{\"scriptText\":\"Este video explica las políticas contra el acoso laboral.\",\"policyDocuments\":[],\"videoLengthLimitMinutes\":6,\"language\":\"es\",\"includeCaptions\":true,\"brandingTemplateId\":\"\",\"voiceoverStyle\":\"neutral\"}", + "description": "Produces a 6-minute Spanish compliance video on anti-harassment policies with captions and neutral narration, without branding template." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "compliance-management.createVariable", + "description": "Creates a compliance variable used in regulatory and policy compliance workflows. Accepts details like variable name, data type, description, default value, and applicable regulations. Processes inputs to define a tracked variable for compliance checks and outputs a confirmation with the variable's metadata and a unique ID.", + "category": "compliance-management", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique name identifier for the compliance variable.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataType", + "type": "string", + "description": "The data type of the variable (e.g., string, number, boolean).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed explanation of what the variable represents and its usage.", + "required": false, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "The initial or default value assigned to this variable if applicable.", + "required": false, + "defaultValue": "" + }, + { + "name": "applicableRegulations", + "type": "array", + "description": "List of regulatory frameworks (e.g., GDPR, HIPAA) that this variable relates to.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isMandatory", + "type": "boolean", + "description": "Indicates whether this variable is mandatory to be filled during compliance checks.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the newly created variable's unique ID, name, data type, description, default value, mandatory status, and related regulations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to define new variables that represent compliance-related data points in your organization's regulatory management system. This helps in structuring and tracking compliance parameters for audits and policy enforcement.", + "limitations": "This tool does not validate the correctness of data types beyond basic string formats and does not enforce regulatory compliance rules autonomously. It only defines variables for compliance tracking.", + "examples": [ + "Create a boolean variable named 'dataRetentionConsent' related to GDPR that is mandatory.", + "Define a variable 'accessLevel' as a string with a default value 'user' applicable to internal compliance policies.", + "Add a numeric variable 'auditFrequency' for HIPAA compliance with no default value." + ] + }, + "tags": [ + "compliance", + "variable", + "create", + "regulatory", + "policy", + "data management" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"dataRetentionConsent\",\"dataType\":\"boolean\",\"description\":\"Indicates if user consent for data retention is given.\",\"defaultValue\":\"false\",\"applicableRegulations\":[\"GDPR\"],\"isMandatory\":true}", + "description": "Creates a mandatory boolean compliance variable to track user consent under GDPR." + }, + { + "inputJson": "{\"variableName\":\"accessLevel\",\"dataType\":\"string\",\"description\":\"Defines access privileges for internal resources.\",\"defaultValue\":\"user\",\"applicableRegulations\":[\"InternalPolicy\"]}", + "description": "Defines an access level variable with a default string value for internal compliance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "compliance-management.createComponent", + "description": "This tool creates a compliance management component based on given regulatory or policy requirements. It accepts regulatory framework details, component type, and optional configuration metadata. The tool processes inputs to generate a standardized compliance component definition, including metadata and compliance controls, outputted as a JSON object suitable for integration into compliance systems.", + "category": "compliance-management", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The name identifier for the compliance component to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "regulatoryFramework", + "type": "string", + "description": "The regulatory or policy framework that the compliance component must adhere to, e.g., GDPR, HIPAA.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentType", + "type": "string", + "description": "The type of compliance component to create, such as Policy, Control, Procedure, or Checklist.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the compliance component.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata related to the component such as version, owner, applicable departments, or tags.", + "required": false, + "defaultValue": "" + }, + { + "name": "effectiveDate", + "type": "string", + "description": "The effective date when the compliance component becomes applicable (ISO 8601 format).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the created compliance component, including component ID, name, type, framework, description, metadata, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate compliance-related code components reflecting specific regulatory frameworks or internal policies, to automate compliance system setups or facilitate tracking and auditing. It helps bridge policy text to executable or definitional compliance artifacts.", + "limitations": "This tool does not validate regulatory requirements for legal accuracy or completeness; it assumes valid input frameworks and does not connect to live regulatory databases or compliance validation engines.", + "examples": [ + "Create a policy component for GDPR data processing compliance.", + "Generate a security control component aligned with HIPAA.", + "Create a checklist component for SOC 2 audit readiness." + ] + }, + "tags": [ + "compliance", + "component", + "policy", + "control", + "automation", + "regulation", + "framework" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"DataRetentionPolicy\",\"regulatoryFramework\":\"GDPR\",\"componentType\":\"Policy\",\"description\":\"Policy defining data retention periods per GDPR requirements.\",\"metadata\":{\"version\":\"1.0\",\"owner\":\"ComplianceTeam\"},\"effectiveDate\":\"2024-07-01\"}", + "description": "Create a GDPR data retention policy component with metadata and effective date." + }, + { + "inputJson": "{\"componentName\":\"AccessControlProcedure\",\"regulatoryFramework\":\"HIPAA\",\"componentType\":\"Procedure\",\"description\":\"Procedure to control access to patient records.\",\"metadata\":{\"version\":\"2.1\",\"owner\":\"SecurityTeam\",\"tags\":[\"access\",\"security\"]}}", + "description": "Create a HIPAA procedure component for access control with versioning and tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "security-tools.analyzeConversion", + "description": "Analyzes security conversion metrics by processing event logs or analytics data to identify conversion rates of security-related actions such as successful authentications, multi-factor enrollment, or security alert responses. Accepts structured input like event arrays or URLs to fetch data, computes conversion statistics, and returns detailed analytics including conversion rates, drop-off points, and recommendations to improve security engagement.", + "category": "security-tools", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of structured event objects representing user security actions (e.g., login attempts, MFA enrollments). Each event should include timestamps, event types, and user identifiers.", + "required": false, + "defaultValue": "" + }, + { + "name": "dataUrl", + "type": "string", + "description": "URL to fetch event log data in JSON format if inputData is not directly provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "conversionEventType", + "type": "string", + "description": "The specific security event to analyze for conversion, such as 'MFA Enrollment' or 'Password Reset Completion'.", + "required": true, + "defaultValue": "MFA Enrollment" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 formatted string representing the start time for the analysis window.", + "required": false, + "defaultValue": "" + }, + { + "name": "endTime", + "type": "string", + "description": "ISO 8601 formatted string representing the end time for the analysis window.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDropOffAnalysis", + "type": "boolean", + "description": "Whether to include detailed drop-off or funnel analysis between steps leading to the conversion event.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minimumEventCount", + "type": "number", + "description": "Minimum count of events per user/session to be included in the analysis for data reliability.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the conversion rate percentage, total number of users/events analyzed, drop-off stage details if requested, and actionable recommendations to improve security-related conversion rates." + }, + "aiAgent": { + "useCase": "Use this tool when tasked with measuring and improving user engagement in security processes such as MFA enrollment, password reset completions, or security alert acknowledgments. It helps identify where users drop off in security workflows and quantifies the effectiveness of security feature adoption.", + "limitations": "This tool cannot perform raw event data extraction from proprietary systems nor can it implement security changes; it only analyzes provided or accessible event data and provides insights based on that data.", + "examples": [ + "Analyze MFA enrollment conversion rates from event logs between two given dates.", + "Evaluate user drop-off during the password reset security flow to improve completion rates.", + "Calculate conversion metrics for security alert acknowledgments to assess responsiveness." + ] + }, + "tags": [ + "security", + "analytics", + "conversion", + "user-behavior", + "MFA", + "authentication", + "funnel-analysis" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"eventType\":\"Login\",\"userId\":\"user123\"},{\"timestamp\":\"2024-05-02T12:00:00Z\",\"eventType\":\"MFA Enrollment\",\"userId\":\"user123\"},{\"timestamp\":\"2024-05-01T11:00:00Z\",\"eventType\":\"Login\",\"userId\":\"user456\"}],\"conversionEventType\":\"MFA Enrollment\",\"startTime\":\"2024-05-01T00:00:00Z\",\"endTime\":\"2024-05-07T00:00:00Z\"}", + "description": "Analyze MFA enrollment conversion rates from a set of user event logs within a date range." + }, + { + "inputJson": "{\"dataUrl\":\"https://example.com/securityEvents.json\",\"conversionEventType\":\"Password Reset Completion\",\"includeDropOffAnalysis\":true}", + "description": "Evaluate password reset completion conversion from events fetched from an external URL, with drop-off analysis enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "security-tools.analyzeChannel", + "description": "Analyzes communication channels such as messaging streams, network tunnels, or API gateways to detect potential security threats, data leaks, or misconfigurations. It accepts channel identifiers and relevant metadata as input, processes logs and traffic data, and outputs a detailed security assessment report highlighting vulnerabilities and anomalies.", + "category": "security-tools", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "Unique identifier or name of the communication channel to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of the channel (e.g., 'websocket', 'REST API', 'message queue').", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "ISO 8601 timestamp indicating the start of the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "ISO 8601 timestamp indicating the end of the analysis period.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrafficSamples", + "type": "boolean", + "description": "Whether to include sample traffic data excerpt in the report for detailed inspection.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Security sensitivity level for threat detection, e.g., 'low', 'medium', 'high'.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or credentials to access channel data securely.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured security assessment report including detected vulnerabilities, anomaly summaries, risk scores, and recommendations for remediation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the security status of communication channels within an application or infrastructure, such as analyzing API gateways, messaging services, or network tunnels, to proactively identify threats or misconfigurations before attackers exploit them.", + "limitations": "This tool cannot modify channels or fix issues automatically. It requires valid authentication and access permissions to the channel data. It cannot guarantee detection of zero-day vulnerabilities or encrypted malicious payload content without decryption keys.", + "examples": [ + "Analyze the WebSocket channel 'chat-service-ws' for the past 24 hours to detect any unusual activity.", + "Perform a security analysis of the REST API channel 'payment-api-v2' between specified timestamps for data leaks.", + "Check the message queue channel 'order-queue' for vulnerabilities and provide a summary report with sample traffic." + ] + }, + "tags": [ + "security", + "analysis", + "communication", + "channel", + "threat-detection", + "vulnerability-assessment" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"chat-service-ws\",\"channelType\":\"websocket\",\"timeRangeStart\":\"2024-06-01T00:00:00Z\",\"timeRangeEnd\":\"2024-06-01T23:59:59Z\",\"includeTrafficSamples\":true,\"sensitivityLevel\":\"high\",\"authToken\":\"abcdef12345\"}", + "description": "Analyzing the 'chat-service-ws' WebSocket channel for one day with high sensitivity and including traffic samples." + }, + { + "inputJson": "{\"channelId\":\"payment-api-v2\",\"channelType\":\"REST API\",\"authToken\":\"token_xyz\",\"sensitivityLevel\":\"medium\"}", + "description": "Perform a default range analysis on the 'payment-api-v2' REST API channel with medium sensitivity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "security-tools.analyzeQuote", + "description": "Analyzes textual quotes for potential security risks such as phishing indicators, social engineering cues, or malicious content. Accepts a string containing the quote, evaluates security threat levels based on content patterns, and returns a structured risk assessment report with severity and suggested actions.", + "category": "security-tools", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The textual content of the quote to be analyzed for security threats.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en') of the quote to tailor analysis for linguistic nuances.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "detailedAnalysis", + "type": "boolean", + "description": "Whether to include a detailed explanation of detected security risks in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the risk level (e.g., 'low', 'medium', 'high'), detected threat types, and recommended security actions or warnings." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate textual quotes or statements for potential security threats, such as phishing attempts, social engineering, or malicious intent embedded in communication content. It helps identify suspicious or harmful quotes in messages, logs, or communications to alert users or trigger mitigations.", + "limitations": "Cannot guarantee detection of all security threats as it relies on patterns and heuristics; may produce false positives or miss novel attack vectors. Not a replacement for comprehensive security audits or live threat analysis.", + "examples": [ + "Analyze this quote for potential security risks: 'Please provide your password immediately to update your account.'", + "Check the following quote for phishing content: 'Dear user, your bank account will be locked unless you verify your details now.'", + "Evaluate if this quote contains social engineering attempts: 'I am from IT, please share your login details to solve the issue.'" + ] + }, + "tags": [ + "security", + "analysis", + "quote", + "phishing", + "socialEngineering", + "riskAssessment" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"Please provide your password immediately to update your account.\",\"language\":\"en\",\"detailedAnalysis\":true}", + "description": "Analyzing a suspicious quote likely to be phishing or social engineering attempt." + }, + { + "inputJson": "{\"quoteText\":\"Our server maintenance starts tomorrow at 2 AM.\",\"language\":\"en\",\"detailedAnalysis\":false}", + "description": "Analyzing a normal, benign quote to confirm low security risk." + }, + { + "inputJson": "{\"quoteText\":\"Click this link to verify your bank information now!\",\"language\":\"en\",\"detailedAnalysis\":true}", + "description": "Analyzing a quote containing a possible malicious call to action." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "security-tools.analyzeExpense", + "description": "Analyzes business expense data to identify potential security risks and anomalies such as fraud, unusual spending patterns, or policy violations. Accepts expense records including amounts, categories, vendors, and dates, then processes them to produce a risk assessment report highlighting suspicious transactions and compliance issues.", + "category": "security-tools", + "parameters": [ + { + "name": "expenses", + "type": "array", + "description": "List of expense records, each containing details like amount, date, category, vendor, and employee ID. Required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "companyPolicyRules", + "type": "object", + "description": "An object defining the company's expense policies and rules (e.g., max allowed amounts per category, prohibited vendors) to check compliance against.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range to filter which expenses to analyze, with 'startDate' and 'endDate' as ISO strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "suspiciousThreshold", + "type": "number", + "description": "Threshold score above which an expense is flagged as suspicious (0 to 1).", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report, e.g., 'json' or 'text'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "A report object containing summary statistics, list of suspicious expenses flagged with reasons and risk scores, and compliance violations found." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess business expense data for security risks such as fraud detection, policy compliance checking, or unusual spending alerts. It helps automate review of large expense datasets to flag problematic entries.", + "limitations": "This tool does not perform audits or confirm fraud; it only flags potential anomalies based on supplied rules and heuristic scoring. It requires accurate policy rules and expense data to be effective and does not connect to external financial systems automatically.", + "examples": [ + "Analyze last quarter's expenses to find non-compliant transactions.", + "Check a batch of expenses for fraud indicators using company policy.", + "Generate a report of suspicious expenses between two dates." + ] + }, + "tags": [ + "security", + "expense", + "fraud-detection", + "compliance", + "risk-analysis", + "business" + ], + "examples": [ + { + "inputJson": "{\"expenses\":[{\"amount\":1500,\"date\":\"2024-05-10\",\"category\":\"Travel\",\"vendor\":\"XYZ Airlines\",\"employeeId\":\"E123\"},{\"amount\":5000,\"date\":\"2024-05-12\",\"category\":\"Office Supplies\",\"vendor\":\"ABC Supplies\",\"employeeId\":\"E456\"}],\"companyPolicyRules\":{\"maxAmountPerCategory\":{\"Travel\":1000,\"Office Supplies\":2000},\"prohibitedVendors\":[\"XYZ Airlines\"]},\"dateRange\":{\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\"},\"suspiciousThreshold\":0.7,\"outputFormat\":\"json\"}", + "description": "Analyzes May 2024 expenses against company policies to flag over-limit amounts and prohibited vendors." + }, + { + "inputJson": "{\"expenses\":[{\"amount\":300,\"date\":\"2024-04-15\",\"category\":\"Entertainment\",\"vendor\":\"Fun Events\",\"employeeId\":\"E789\"}],\"companyPolicyRules\":{\"maxAmountPerCategory\":{\"Entertainment\":500},\"prohibitedVendors\":[]},\"suspiciousThreshold\":0.5}", + "description": "Checks April 2024 entertainment expenses for anomalies with a low suspicion threshold and no prohibited vendors defined." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "security-tools.analyzeVulnerability", + "description": "Analyzes a specified software vulnerability by processing its identifier or details to assess risk level, affected systems, potential exploits, and mitigation strategies. Accepts vulnerability identifiers or descriptions and returns a comprehensive risk analysis report.", + "category": "security-tools", + "parameters": [ + { + "name": "vulnerabilityId", + "type": "string", + "description": "The unique identifier of the vulnerability, such as a CVE ID (e.g., CVE-2023-12345).", + "required": false, + "defaultValue": "" + }, + { + "name": "vulnerabilityDescription", + "type": "string", + "description": "A textual description of the vulnerability details if an ID is not available.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetPlatform", + "type": "string", + "description": "The platform or system the vulnerability affects (e.g., Windows, Linux, Android).", + "required": false, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "The minimum severity level to report (e.g., LOW, MEDIUM, HIGH, CRITICAL).", + "required": false, + "defaultValue": "MEDIUM" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation steps in the analysis report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing vulnerability id, severity score, affected components, exploitability details, and recommended mitigations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the security impact of known or newly discovered vulnerabilities by their identifiers or descriptions, to inform risk management and mitigation planning. Ideal for automated security audits and vulnerability management pipelines.", + "limitations": "Cannot detect unknown vulnerabilities or produce zero-day exploit details; depends on public or integrated vulnerability databases and may not have real-time exploit information.", + "examples": [ + "Analyze the vulnerability CVE-2023-12345 for Linux systems and get mitigation advice.", + "Assess a custom vulnerability description with severity threshold set to HIGH.", + "Provide a risk analysis excluding mitigation recommendations for a known vulnerability ID." + ] + }, + "tags": [ + "security", + "vulnerability", + "risk-analysis", + "mitigation", + "assessment", + "CVE" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityId\":\"CVE-2023-12345\",\"targetPlatform\":\"Linux\",\"includeMitigation\":true}", + "description": "Analyze a known CVE for Linux platform with mitigation steps included." + }, + { + "inputJson": "{\"vulnerabilityDescription\":\"Buffer overflow in XYZ software allows remote code execution.\",\"severityThreshold\":\"HIGH\",\"includeMitigation\":false}", + "description": "Analyze a custom vulnerability description with severity threshold set to HIGH and exclude mitigation details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "security-tools.uploadVideo", + "description": "Uploads a video file securely to a cloud-based video storage and streaming service. Accepts video file data or URL input, validates video format and size, encrypts the video during transfer and storage, and returns a secure streaming URL and video metadata for integration in secure applications.", + "category": "security-tools", + "parameters": [ + { + "name": "videoFile", + "type": "string", + "description": "Base64-encoded video file content to upload. Required if videoUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoUrl", + "type": "string", + "description": "URL of the video to fetch and upload. Required if videoFile is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Original or desired file name of the video including extension (e.g., video.mp4).", + "required": true, + "defaultValue": "" + }, + { + "name": "maxFileSizeMb", + "type": "number", + "description": "Maximum allowed video file size in megabytes.", + "required": false, + "defaultValue": "500" + }, + { + "name": "allowedFormats", + "type": "array", + "description": "List of allowed video file extensions/formats for upload validation (e.g., [\"mp4\",\"webm\",\"mov\"]).", + "required": false, + "defaultValue": "[\"mp4\",\"webm\",\"mov\"]" + }, + { + "name": "encryptionKey", + "type": "string", + "description": "Encryption key or token used to encrypt the video file for secure storage (must meet security requirements).", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional JSON object with custom metadata tags (e.g., title, description, tags) to associate with the uploaded video.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the secure streaming URL of the uploaded video, video metadata including file size, format, duration (if available), and an upload status field indicating success or failure with error details." + }, + "aiAgent": { + "useCase": "Use this tool when you need to securely upload user or system-generated video content to a protected cloud environment for applications like secure video streaming, privacy-conscious video sharing, or integrating videos in security-focused platforms. It ensures encryption in transit and at rest, validates file formats and sizes, and returns ready-to-use secure URLs.", + "limitations": "This tool does not perform video content analysis such as moderation, transcription, or editing. It also requires a valid encryption key and does not support live streaming video uploads directly.", + "examples": [ + "Upload a confidential training video file for secure internal distribution.", + "Fetch a remote video from a trusted URL and securely upload it with encryption and access restrictions.", + "Upload a video file with custom metadata tags like title and description for cataloging in a secure media library." + ] + }, + "tags": [ + "upload", + "video", + "security", + "encryption", + "cloud-storage", + "streaming", + "media", + "secure-upload" + ], + "examples": [ + { + "inputJson": "{\"videoFile\":\"\",\"fileName\":\"training_session.mp4\",\"encryptionKey\":\"s3cur3K3y123\",\"maxFileSizeMb\":200}", + "description": "Uploading a base64 encoded training video file securely with a file size limit and encryption key." + }, + { + "inputJson": "{\"videoUrl\":\"https://trustedsource.com/sample.mov\",\"fileName\":\"sample.mov\",\"encryptionKey\":\"s3cur3K3y123\",\"metadata\":{\"title\":\"Sample Video\",\"description\":\"Secure video upload example\"}}", + "description": "Fetching a video from an external URL and uploading it securely with metadata tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "security-tools.analyzeYAML", + "description": "Analyzes YAML files for security best practices and vulnerabilities by parsing the input YAML content, detecting insecure configurations, unsafe patterns, or common misconfigurations, and producing a detailed security analysis report highlighting issues and recommendations.", + "category": "security-tools", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML content as a string to be analyzed for security issues.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkSchemaCompliance", + "type": "boolean", + "description": "Whether to validate the YAML content against a defined security schema to check compliance.", + "required": false, + "defaultValue": "false" + }, + { + "name": "allowedRiskLevels", + "type": "array", + "description": "An array of risk levels to report on, e.g., ['low', 'medium', 'high']. If empty, report all levels.", + "required": false, + "defaultValue": "[\"low\",\"medium\",\"high\"]" + }, + { + "name": "maxIssues", + "type": "number", + "description": "Maximum number of issues to return in the report. Zero means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns a security analysis report object containing issues found, categorized by severity, with descriptions and remediation suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically assess the security posture of YAML configuration files in applications, infrastructure-as-code, or CI/CD pipelines, to detect insecure settings, vulnerabilities, or standards non-compliance before deployment.", + "limitations": "Does not automatically fix detected issues; limited to static security patterns and known misconfigurations; may not cover all YAML schema specifics; does not perform dynamic runtime security testing.", + "examples": [ + "Analyze this Kubernetes deployment YAML for security risks.", + "Check this Helm values YAML for unsafe configurations.", + "Scan a CI/CD pipeline YAML file for potential security policy violations." + ] + }, + "tags": [ + "security", + "yaml", + "analysis", + "configuration", + "vulnerability", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"apiVersion: v1\\nkind: Pod\\nmetadata:\\n name: insecure-pod\\nspec:\\n containers:\\n - name: busybox\\n image: busybox\\n securityContext:\\n privileged: true\"}", + "description": "Scan a Kubernetes Pod YAML with a privileged container flag set to true, which is a security risk." + }, + { + "inputJson": "{\"yamlContent\":\"version: 1\\nsteps:\\n- script: echo Hello\\n allowPrivilegeEscalation: true\"}", + "description": "Analyze a CI/CD pipeline YAML that allows privilege escalation in a script step." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "security-tools.buildQueue", + "description": "This tool configures and deploys a secure message queue system to facilitate reliable and protected communication between microservices or distributed components. It accepts parameters defining queue type, encryption settings, access controls, and retry policies, then outputs deployment configurations and status reports for integration.", + "category": "security-tools", + "parameters": [ + { + "name": "queueType", + "type": "string", + "description": "The type of queue to build, e.g., 'RabbitMQ', 'AWS SQS', 'Kafka'", + "required": true, + "defaultValue": "" + }, + { + "name": "encryptionEnabled", + "type": "boolean", + "description": "Whether to enable encryption for messages in transit and at rest", + "required": true, + "defaultValue": "true" + }, + { + "name": "accessControlList", + "type": "array", + "description": "List of user or service identifiers with access permissions", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxRetries", + "type": "number", + "description": "Maximum number of retry attempts for failed message deliveries", + "required": false, + "defaultValue": "5" + }, + { + "name": "retryDelaySeconds", + "type": "number", + "description": "Delay between retry attempts in seconds", + "required": false, + "defaultValue": "30" + }, + { + "name": "deadLetterQueueEnabled", + "type": "boolean", + "description": "Whether to enable a dead-letter queue for handling undeliverable messages", + "required": false, + "defaultValue": "true" + }, + { + "name": "region", + "type": "string", + "description": "Deployment region or data center location for the queue infrastructure", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the queue deployment configuration details, including connection endpoints, security settings, access policies, and deployment status." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically set up secure, reliable messaging infrastructure for distributed systems or microservices, ensuring encrypted communication and controlled access. Ideal for automating secure messaging queue deployment as part of CI/CD or infrastructure orchestration.", + "limitations": "This tool does not manage message content or application-level message processing. It does not provide monitoring or analytics of queue usage beyond initial deployment status.", + "examples": [ + "Build a RabbitMQ queue with encryption enabled, access restricted to specific services, and retry policies for message delivery.", + "Deploy an AWS SQS queue with a dead-letter queue enabled and retries set to 3 attempts with 15 seconds delay.", + "Create a Kafka queue in a specified region, enabling encryption and an ACL for authorized users only." + ] + }, + "tags": [ + "security", + "queue", + "messaging", + "deployment", + "infrastructure", + "encryption", + "access-control" + ], + "examples": [ + { + "inputJson": "{\"queueType\":\"RabbitMQ\",\"encryptionEnabled\":true,\"accessControlList\":[\"serviceA\",\"serviceB\"],\"maxRetries\":3,\"retryDelaySeconds\":20,\"deadLetterQueueEnabled\":true,\"region\":\"us-east-1\"}", + "description": "Configure a RabbitMQ queue with encryption, ACL for two services, limited retries, dead-letter queue enabled, deployed in US East." + }, + { + "inputJson": "{\"queueType\":\"AWS SQS\",\"encryptionEnabled\":true,\"accessControlList\":[],\"maxRetries\":5,\"retryDelaySeconds\":30,\"deadLetterQueueEnabled\":true,\"region\":\"eu-west-2\"}", + "description": "Deploy an AWS SQS queue with encryption and dead-letter queue enabled, default retry policies, no ACL restrictions, in EU West." + }, + { + "inputJson": "{\"queueType\":\"Kafka\",\"encryptionEnabled\":false,\"accessControlList\":[\"user1\",\"user2\"],\"maxRetries\":10,\"retryDelaySeconds\":60,\"deadLetterQueueEnabled\":false,\"region\":\"ap-southeast-1\"}", + "description": "Set up a Kafka queue without encryption but with ACL and customized retry parameters in Asia Pacific Southeast." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "security-tools.sendReply", + "description": "Sends a secure, encrypted reply message to a specified recipient as part of an incident response or communication workflow. Accepts input including recipient identifier, message content, encryption preferences, and optional metadata; processes by encrypting the message and sending it over secure channels; outputs a confirmation with delivery status and message ID.", + "category": "security-tools", + "parameters": [ + { + "name": "recipientId", + "type": "string", + "description": "Unique identifier of the recipient to whom the reply will be sent, e.g., user ID or service endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The plaintext content of the reply message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "encryptionType", + "type": "string", + "description": "Specifies the encryption algorithm to use for securing the message, such as AES-256 or RSA.", + "required": false, + "defaultValue": "AES-256" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "If true, the message will be signed with the sender's private key to ensure authenticity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata related to the reply, such as correlation IDs, timestamps, or incident references.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Indicates the priority of the message (e.g., low, normal, high) which may influence delivery handling.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object containing deliveryStatus (e.g., sent, failed), messageId as unique reply identifier, and timestamp of sending." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent must securely respond to alerts, incident communications, or sensitive inquiries, ensuring data confidentiality and integrity through encryption and digital signatures. It is suitable for workflows requiring authenticated and encrypted message exchanges within security operations or compliance systems.", + "limitations": "This tool does not handle message delivery guarantees beyond basic status reporting, nor does it perform recipient validation beyond identifier acceptance. It cannot decrypt incoming messages or manage communication initiation flows.", + "examples": [ + "Send a secure reply to a security team member acknowledging receipt of an incident report.", + "Respond with an encrypted message confirming schedule for a security audit.", + "Send a digitally signed message to a compliance officer including investigation results." + ] + }, + "tags": [ + "security", + "communication", + "encryption", + "incident-response", + "message-sending", + "secure-reply" + ], + "examples": [ + { + "inputJson": "{\"recipientId\":\"user-12345\",\"messageContent\":\"Acknowledged your incident report, initiating analysis.\",\"encryptionType\":\"AES-256\",\"includeSignature\":true,\"metadata\":{\"incidentId\":\"INC-20240601\",\"correlationId\":\"abc123\"},\"priorityLevel\":\"high\"}", + "description": "Send a high-priority encrypted reply acknowledging an incident report with relevant metadata." + }, + { + "inputJson": "{\"recipientId\":\"compliance_officer_01\",\"messageContent\":\"Attached are the finalized compliance audit results.\",\"includeSignature\":true}", + "description": "Send a digitally signed message to a compliance officer without specifying encryptionType explicitly, defaults to AES-256." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "security-tools.sendThread", + "description": "Sends a secure communication thread containing encrypted messages to specified recipients. Accepts a thread object with messages and recipient identifiers, encrypts the content using provided encryption keys or algorithms, and outputs a transmission status indicating success or failure along with message metadata.", + "category": "security-tools", + "parameters": [ + { + "name": "threadId", + "type": "string", + "description": "Unique identifier of the communication thread to send", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "Array of message objects containing text and metadata to be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientIds", + "type": "array", + "description": "List of recipient user or device identifiers to whom the thread will be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "encryptionKey", + "type": "string", + "description": "Encryption key or token used to securely encrypt messages before sending", + "required": true, + "defaultValue": "" + }, + { + "name": "encryptionAlgorithm", + "type": "string", + "description": "Optional encryption algorithm name (e.g., AES-256) to use for message encryption", + "required": false, + "defaultValue": "AES-256" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Optional priority level for sending the thread (e.g., low, normal, high)", + "required": false, + "defaultValue": "normal" + }, + { + "name": "sendTimestamp", + "type": "number", + "description": "Optional UNIX timestamp to schedule the send time; if not provided, send immediately", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing status of the send operation, message IDs, and any error details" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to securely transmit a set of related messages (a communication thread) to multiple recipients, ensuring encryption and privacy. It is ideal for secure messaging applications, collaboration platforms, or any system requiring protected threaded communication.", + "limitations": "This tool does not handle recipient authentication or delivery confirmation beyond transmission status. It requires valid encryption keys and does not provide message decryption or archival capabilities.", + "examples": [ + "Send a secure support conversation thread to multiple agents.", + "Transmit a confidential project update thread encrypted with company keys.", + "Schedule a thread with high priority for immediate delivery to device recipients." + ] + }, + "tags": [ + "security", + "communication", + "thread", + "encryption", + "messaging", + "transmission", + "privacy" + ], + "examples": [ + { + "inputJson": "{\"threadId\":\"thread123\",\"messages\":[{\"text\":\"Hello team, update attached.\",\"timestamp\":1687958400}],\"recipientIds\":[\"userA\",\"userB\"],\"encryptionKey\":\"abc123key\",\"encryptionAlgorithm\":\"AES-256\",\"priorityLevel\":\"high\"}", + "description": "Sending an encrypted thread with one message to two recipients with high priority." + }, + { + "inputJson": "{\"threadId\":\"projectChat\",\"messages\":[{\"text\":\"Please review the design.\",\"timestamp\":1687958500},{\"text\":\"Looks good to me!\",\"timestamp\":1687958600}],\"recipientIds\":[\"userC\"],\"encryptionKey\":\"secureKey987\"}", + "description": "Sending a two-message thread to a single user with default encryption algorithm." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "security-tools.formatQuery", + "description": "Formats and sanitizes raw query strings (e.g., SQL, NoSQL) to improve readability and reduce risks of injection attacks by normalizing whitespace, escaping special characters, and enforcing coding style conventions. Accepts query string inputs and outputs a well-structured, secure query string.", + "category": "security-tools", + "parameters": [ + { + "name": "queryString", + "type": "string", + "description": "The raw query string that needs to be formatted and sanitized.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryLanguage", + "type": "string", + "description": "The type of query language, e.g., 'sql', 'mongo', or 'graphql' to apply appropriate formatting rules.", + "required": true, + "defaultValue": "sql" + }, + { + "name": "escapeCharacters", + "type": "boolean", + "description": "Whether to escape potentially dangerous characters to prevent injection attacks.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation when formatting the query.", + "required": false, + "defaultValue": "2" + }, + { + "name": "uppercaseKeywords", + "type": "boolean", + "description": "Whether to convert query language keywords to uppercase for better readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted and sanitized query string and a boolean indicating if sanitization applied." + }, + "aiAgent": { + "useCase": "Use this tool when preparing raw query strings for secure inclusion in applications or logs, ensuring they follow consistent formatting and reducing security risks like injection by sanitizing inputs based on the query language.", + "limitations": "This tool cannot validate semantic correctness of queries or guarantee complete injection protection; it applies formatting and basic sanitization heuristics but should be combined with proper query parameterization.", + "examples": [ + "Format and sanitize a raw SQL query string before embedding it in a database call.", + "Reformat a MongoDB query expressed as a JSON string for clarity and safety.", + "Process a GraphQL query string to ensure standardized indentation and keyword casing." + ] + }, + "tags": [ + "security", + "formatting", + "query", + "sanitization", + "sql", + "nosql", + "injection-prevention" + ], + "examples": [ + { + "inputJson": "{\"queryString\": \"select * from users where name=\\\"admin\\\";\", \"queryLanguage\": \"sql\", \"escapeCharacters\": true, \"indentationSpaces\": 4, \"uppercaseKeywords\": true}", + "description": "Format and sanitize a simple SQL select statement with 4-space indentation and uppercase keywords." + }, + { + "inputJson": "{\"queryString\": \"{ find: \\\"users\\\", filter: { age: { $gt: 30 } } }\", \"queryLanguage\": \"mongo\", \"escapeCharacters\": true, \"indentationSpaces\": 2, \"uppercaseKeywords\": false}", + "description": "Format a MongoDB query object string for readability, escaping special characters." + }, + { + "inputJson": "{\"queryString\": \"query { user(id: \\\"123\\\") { name email } }\", \"queryLanguage\": \"graphql\", \"escapeCharacters\": false, \"indentationSpaces\": 2, \"uppercaseKeywords\": false}", + "description": "Format a GraphQL query string with standard indentation without escaping characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Query", + "context": null + } + }, + { + "name": "security-tools.formatTable", + "description": "Formats security audit tables by sanitizing sensitive data, enforcing consistent cell formatting, and highlighting suspicious entries. Takes tabular JSON data with security findings as input, processes each cell based on formatting rules and security policies, and outputs a sanitized, well-structured table ready for secure display or reporting.", + "category": "security-tools", + "parameters": [ + { + "name": "inputTable", + "type": "array", + "description": "An array of objects representing table rows with security-related data (e.g., vulnerability details).", + "required": true, + "defaultValue": "" + }, + { + "name": "sensitiveFields", + "type": "array", + "description": "List of field names to mask or obfuscate for security compliance (e.g., 'ipAddress', 'userId').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "highlightCriteria", + "type": "object", + "description": "Rules defining which table cells or rows to highlight based on severity or suspicious patterns (e.g., severity >= high).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "formatRules", + "type": "object", + "description": "Formatting specifications such as text case, date formats, and numeric precision for relevant fields.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "maskCharacter", + "type": "string", + "description": "Single character used to mask sensitive fields in the output table.", + "required": false, + "defaultValue": "*" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with formattedTable: array of sanitized, formatted rows ready for secure presentation or report generation." + }, + "aiAgent": { + "useCase": "Use this tool when processing security scan or audit log tables requiring confidential data sanitization and consistent formatting for reporting, dashboards, or further automated analysis. It ensures sensitive information is masked and critical entries are visually highlighted to aid risk assessment.", + "limitations": "Cannot perform vulnerability scanning or data validation. Formatting rules and highlighting logic must be predefined; it does not infer security risk levels.", + "examples": [ + "Format a scan results table masking user identifiers and highlighting high severity vulnerabilities.", + "Sanitize audit logs to replace IP addresses with masked characters and format timestamps consistently.", + "Apply custom formatting rules on compliance data and highlight entries with suspicious activity detected." + ] + }, + "tags": [ + "security", + "formatting", + "data-sanitization", + "tabular-data", + "reporting", + "highlighting" + ], + "examples": [ + { + "inputJson": "{\"inputTable\":[{\"host\":\"server01.example.com\",\"ipAddress\":\"192.168.1.10\",\"vulnerability\":\"Outdated SSL\",\"severity\":\"high\",\"lastDetected\":\"2024-05-20T12:34:56Z\",\"userId\":\"admin123\"},{\"host\":\"server02.example.com\",\"ipAddress\":\"192.168.1.11\",\"vulnerability\":\"Missing Patches\",\"severity\":\"medium\",\"lastDetected\":\"2024-05-19T08:15:10Z\",\"userId\":\"guest\"}],\"sensitiveFields\":[\"ipAddress\",\"userId\"],\"highlightCriteria\":{\"severity\":\"high\"},\"formatRules\":{\"lastDetected\":{\"dateFormat\":\"YYYY-MM-DD\"}},\"maskCharacter\":\"X\"}", + "description": "Masks 'ipAddress' and 'userId' fields with 'X', highlights rows with severity 'high', formats date to YYYY-MM-DD." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Table", + "context": null + } + }, + { + "name": "security-tools.generateConversion", + "description": "Generates conversion metrics for security-related user actions by processing event data such as page visits, form submissions, or authentication attempts. Accepts raw event logs or tracked user actions as input, filters and segments these events based on specified criteria, calculates conversion rates and counts, and outputs structured analytics for security conversion funnels or campaigns.", + "category": "security-tools", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of security-related event objects (e.g., login attempts, MFA completions, permission changes) to analyze for conversions.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionCriteria", + "type": "object", + "description": "Defines the criteria or conditions that qualify an event as a conversion, including event types, attributes, and sequences.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowStart", + "type": "string", + "description": "ISO 8601 timestamp marking the start of the time window for event filtering.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeWindowEnd", + "type": "string", + "description": "ISO 8601 timestamp marking the end of the time window for event filtering.", + "required": false, + "defaultValue": "" + }, + { + "name": "segmentBy", + "type": "array", + "description": "List of event attribute keys to segment the conversion results by, e.g., user role, device type.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeRawCounts", + "type": "boolean", + "description": "Whether to include raw counts of each event type alongside conversion rates in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing conversion metrics such as total conversions, conversion rates, segmented breakdowns, and optionally raw event counts, structured for security-related conversion analysis." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze how effectively security-related actions convert users through defined funnels or processes, such as tracking MFA enablement rates or successful privilege escalations. It helps quantify and segment conversion metrics from security event data.", + "limitations": "This tool requires properly structured event data and defined conversion criteria; it does not fetch raw events nor perform real-time tracking. It cannot perform causal analysis or detect anomalies beyond simple aggregation.", + "examples": [ + "Calculate conversion rate of users who enabled MFA within a week after a security prompt.", + "Segment login success rate by user roles over the past month.", + "Get counts and conversion rates of permission change requests approved vs. requested in the last quarter." + ] + }, + "tags": [ + "conversion", + "security analytics", + "event processing", + "user behavior", + "metrics", + "funnel analysis" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"userId\":\"u1\",\"eventType\":\"login_success\",\"timestamp\":\"2024-05-01T12:00:00Z\"},{\"userId\":\"u1\",\"eventType\":\"mfa_enabled\",\"timestamp\":\"2024-05-02T08:00:00Z\"},{\"userId\":\"u2\",\"eventType\":\"login_failed\",\"timestamp\":\"2024-05-01T09:30:00Z\"}],\"conversionCriteria\":{\"conversionEvent\":\"mfa_enabled\"},\"timeWindowStart\":\"2024-05-01T00:00:00Z\",\"timeWindowEnd\":\"2024-05-07T23:59:59Z\",\"segmentBy\":[\"eventType\"],\"includeRawCounts\":true}", + "description": "Compute the conversion rate of users who enabled MFA after login within one week and segment by event type including raw event counts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "security-tools.buildCluster", + "description": "This tool provisions and configures a secure computing cluster based on specified parameters. It accepts input such as node types, cluster size, network security settings, and access controls to build an infrastructure cluster optimized for security. The output includes cluster deployment status, configuration details, and security audit summary.", + "category": "security-tools", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "The name identifier for the cluster to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeType", + "type": "string", + "description": "The specification or instance type of the nodes in the cluster (e.g., VM type or container specs).", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of nodes to provision in the cluster.", + "required": true, + "defaultValue": "1" + }, + { + "name": "networkSecurityGroupIds", + "type": "array", + "description": "List of network security group IDs to apply for controlling inbound and outbound traffic.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "enableEncryptionAtRest", + "type": "boolean", + "description": "Flag to enable encryption of data at rest within the cluster resources.", + "required": false, + "defaultValue": "true" + }, + { + "name": "enableEncryptionInTransit", + "type": "boolean", + "description": "Flag to enable encryption for data transmitted between cluster nodes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "accessControlList", + "type": "object", + "description": "Object defining users or roles with access permissions to the cluster, specifying roles and allowed actions.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region or availability zone where the cluster will be built.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the clusterId, deployment status, configuration details, and a security audit summary indicating compliance status and vulnerabilities detected." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to automate deployment of a secure compute cluster with precise control over node configuration, network security settings, encryption, and access control. It is ideal for building infrastructure in cloud or on-prem environments requiring compliance and secure operations.", + "limitations": "This tool does not handle the orchestration or workload scheduling within the cluster; it focuses on provisioning and securing the infrastructure only. It also may not support every cloud provider's API or proprietary features unless extended.", + "examples": [ + "Build a 5-node cluster with encrypted data storage and restricted access roles in the us-west region.", + "Provision a cluster with high-security requirements including specific network security groups and encryption in transit enabled.", + "Create a cluster using m5.large nodes with admin access limited to a specified user group." + ] + }, + "tags": [ + "security", + "infrastructure", + "cluster", + "provisioning", + "encryption", + "access-control", + "network-security" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"secure-cluster-1\",\"nodeType\":\"t3.medium\",\"nodeCount\":3,\"networkSecurityGroupIds\":[\"nsg-12345abc\",\"nsg-67890def\"],\"enableEncryptionAtRest\":true,\"enableEncryptionInTransit\":true,\"accessControlList\":{\"admins\":[\"user1\",\"user2\"]},\"region\":\"us-east-1\"}", + "description": "Build a 3-node cluster 'secure-cluster-1' in the us-east-1 region with encryption enabled and specified network security groups." + }, + { + "inputJson": "{\"clusterName\":\"test-cluster\",\"nodeType\":\"c5.large\",\"nodeCount\":1,\"enableEncryptionAtRest\":false,\"enableEncryptionInTransit\":true,\"region\":\"eu-central-1\"}", + "description": "Provision a single-node cluster in eu-central-1 with encryption of data in transit but not at rest." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "security-tools.buildWorkflow", + "description": "Constructs a security automation workflow by accepting definitions of security tasks, triggers, and actions. Processes the input to assemble a coordinated workflow that can be deployed in security orchestration platforms. Outputs a structured workflow JSON ready for integration or deployment.", + "category": "security-tools", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name for the security workflow to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief summary describing the purpose of the workflow.", + "required": false, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "List of event triggers that initiate the workflow, e.g., vulnerability detected, suspicious login.", + "required": true, + "defaultValue": "" + }, + { + "name": "tasks", + "type": "array", + "description": "Ordered list of security tasks and checks to perform as part of the workflow, with configuration details for each task.", + "required": true, + "defaultValue": "" + }, + { + "name": "actions", + "type": "array", + "description": "List of automated responses or notifications to execute after tasks, such as blocking IP, sending alerts.", + "required": true, + "defaultValue": "" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "Settings defining retry behavior for failed tasks, including max attempts and delay.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Overall timeout duration for the workflow execution, in seconds.", + "required": false, + "defaultValue": "3600" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the assembled security workflow, including metadata, tasks sequence, triggers, and actions, formatted for deployment in security automation systems." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or customize a security orchestration workflow based on provided security triggers, tasks, and response actions to automate incident response processes in infrastructure or applications.", + "limitations": "Does not deploy workflows to execution environments; requires separate platform integration. Cannot validate external system compatibility or simulate workflow execution results.", + "examples": [ + "Create a workflow triggered by malware detection that isolates affected devices and notifies the security team.", + "Build a workflow reacting to unauthorized access attempts by blocking IP and logging audit data.", + "Assemble a vulnerability scan response workflow that schedules patches and sends compliance reports." + ] + }, + "tags": [ + "security", + "automation", + "workflow", + "incident-response", + "orchestration", + "devops", + "cybersecurity" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"Malware Response\",\"description\":\"Automate response to malware detections.\",\"triggers\":[{\"type\":\"malwareDetected\",\"source\":\"endpointProtection\"}],\"tasks\":[{\"name\":\"isolateDevice\",\"parameters\":{\"deviceId\":\"{{device.id}}\"}},{\"name\":\"runForensicAnalysis\",\"parameters\":{\"deviceId\":\"{{device.id}}\"}}],\"actions\":[{\"name\":\"notifyTeam\",\"parameters\":{\"channel\":\"security-alerts\",\"message\":\"Malware detected and device isolated.\"}}],\"retryPolicy\":{\"maxAttempts\":3,\"delaySeconds\":60},\"timeoutSeconds\":1800}", + "description": "Defines a malware detection triggered workflow isolating device, analyzing it, and notifying team." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "security-tools.generateGraph", + "description": "Generates interactive security graphs representing network infrastructure or vulnerability dependencies. Accepts structured security data (e.g., JSON nodes and edges), processes relationships and metrics, and outputs a formatted graph structure suitable for visualization or further security analysis.", + "category": "security-tools", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "Structured data containing nodes and edges representing security entities and their relationships (e.g., in JSON format).", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate (e.g., 'network', 'dependency', 'attackPath').", + "required": false, + "defaultValue": "network" + }, + { + "name": "metrics", + "type": "array", + "description": "List of security metrics or attributes to visualize on the graph nodes or edges (e.g., ['vulnerabilityScore', 'riskLevel']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "highlightCritical", + "type": "boolean", + "description": "If true, visually highlight nodes or edges considered critical based on supplied metrics or thresholds.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the graph (e.g., 'json', 'dot', 'gexf').", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object representing the generated graph structure, including nodes, edges, and optional visualization metadata formatted in the requested outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create visual or data representations of security-related infrastructure or dependency relationships for analysis, reporting, or automated threat modeling. It helps transform raw security data into structured, insightful graphs showcasing vulnerabilities, network layouts, or dependency paths.", + "limitations": "This tool does not perform security analysis or vulnerability detection itself; it only visualizes provided structured data. Accuracy depends on the quality and completeness of the input data. It does not generate detailed reports or natural language summaries.", + "examples": [ + "Generate a network graph from JSON describing servers and connections with vulnerability metrics.", + "Create a dependency graph highlighting critical software components based on risk scores.", + "Output a graph in DOT format showing attack paths between systems." + ] + }, + "tags": [ + "security", + "graph", + "visualization", + "network", + "vulnerability", + "dependency", + "attackPath", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"nodes\":[{\"id\":\"1\",\"label\":\"Server A\",\"vulnerabilityScore\":7.5},{\"id\":\"2\",\"label\":\"Database B\",\"vulnerabilityScore\":9.0}],\"edges\":[{\"from\":\"1\",\"to\":\"2\",\"type\":\"connection\"}]},\"graphType\":\"network\",\"metrics\":[\"vulnerabilityScore\"],\"highlightCritical\":true,\"outputFormat\":\"json\"}", + "description": "Generate a network graph of servers and databases highlighting critical vulnerabilities." + }, + { + "inputJson": "{\"data\":{\"nodes\":[{\"id\":\"sw1\",\"label\":\"Software Component 1\",\"riskLevel\":5},{\"id\":\"sw2\",\"label\":\"Software Component 2\",\"riskLevel\":8}],\"edges\":[{\"from\":\"sw1\",\"to\":\"sw2\",\"type\":\"dependency\"}]},\"graphType\":\"dependency\",\"metrics\":[\"riskLevel\"],\"highlightCritical\":true,\"outputFormat\":\"gexf\"}", + "description": "Create a software dependency graph highlighting components with high risk levels in GEXF format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "security-tools.generateQuote", + "description": "Generates a professional and customizable security-related quote for use in presentations, reports, or motivational materials. Accepts a security topic or keyword and outputs a well-formatted, relevant quote attributed to a renowned expert or an anonymous source if no match is found.", + "category": "security-tools", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The security topic keyword to base the quote on (e.g., 'encryption', 'cybersecurity', 'vulnerability').", + "required": true, + "defaultValue": "" + }, + { + "name": "authorPreference", + "type": "string", + "description": "Preferred author for the quote, if any (e.g., 'Bruce Schneier'). If no match, an anonymous quote is generated.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeCitation", + "type": "boolean", + "description": "Whether to include a citation or source reference with the quote.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated quote.", + "required": false, + "defaultValue": "140" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated quote text, the author name, and optionally the source or citation." + }, + "aiAgent": { + "useCase": "Use this tool when a security-themed quote is needed to enhance documents, presentations, or communications, especially when tailored to a specific security topic or theme. It helps create impactful content with minimal manual search.", + "limitations": "Cannot verify the authenticity of quotes or provide real-time quotes from living experts. Limited to predefined or commonly known quotes related to security topics.", + "examples": [ + "Generate a quote about encryption for a cybersecurity presentation.", + "Provide a short cybersecurity quote attributed to Bruce Schneier.", + "Get a motivational security quote without specifying an author." + ] + }, + "tags": [ + "quote", + "security", + "generation", + "motivation", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"cybersecurity\",\"authorPreference\":\"\",\"includeCitation\":true,\"maxLength\":120}", + "description": "Generate a cybersecurity quote with citation, no specific author, max 120 characters." + }, + { + "inputJson": "{\"topic\":\"encryption\",\"authorPreference\":\"Bruce Schneier\",\"includeCitation\":false,\"maxLength\":140}", + "description": "Generate an encryption quote attributed to Bruce Schneier without citation, up to 140 chars." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "security-tools.generateAnomaly", + "description": "Generates anomaly detection reports from time-series or event log data by analyzing input metrics or logs with statistical and machine learning techniques to identify unusual patterns or outliers. Outputs structured anomaly summaries and confidence scores for security monitoring and incident response.", + "category": "security-tools", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "Array of data points or events to analyze, each as an object with timestamp and metric or event details.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindow", + "type": "number", + "description": "Size of the sliding time window in minutes over which to compute anomaly detection.", + "required": false, + "defaultValue": "60" + }, + { + "name": "detectionAlgorithm", + "type": "string", + "description": "Anomaly detection algorithm to apply (e.g., 'statistical', 'isolationForest', 'dbscan').", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Threshold for anomaly sensitivity, between 0 and 1; higher values report more anomalies.", + "required": false, + "defaultValue": "0.8" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the anomaly report output ('json' or 'csv').", + "required": false, + "defaultValue": "json" + }, + { + "name": "maxAnomalies", + "type": "number", + "description": "Maximum number of anomalies to report; 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing detected anomalies with timestamp, anomaly score, and description, along with summary statistics of the analysis." + }, + "aiAgent": { + "useCase": "Use this tool when needing to detect unusual or suspicious changes in application logs, metrics, or security event data to proactively identify potential security incidents or system faults. It helps prioritize monitoring and alerting by automatically flagging deviations from normal patterns.", + "limitations": "This tool does not provide root cause analysis or automated remediation; quality depends on input data completeness and algorithm settings. Not suitable for non-time-series or unstructured nonsensor data.", + "examples": [ + "Detect anomalies in CPU usage logs over the past day to spot potential attacks.", + "Analyze security event logs to find unusual login patterns.", + "Check network traffic metrics for sudden spikes or drops indicating incidents." + ] + }, + "tags": [ + "security", + "anomaly-detection", + "analytics", + "monitoring", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2024-04-25T10:00:00Z\",\"value\":120},{\"timestamp\":\"2024-04-25T10:05:00Z\",\"value\":300},{\"timestamp\":\"2024-04-25T10:10:00Z\",\"value\":125}],\"timeWindow\":15,\"detectionAlgorithm\":\"statistical\",\"sensitivity\":0.9,\"outputFormat\":\"json\"}", + "description": "Analyze CPU usage values to detect anomalies with high sensitivity over a 15-min window." + }, + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2024-04-26T12:00:00Z\",\"eventType\":\"login_failure\",\"userId\":\"user123\"},{\"timestamp\":\"2024-04-26T12:01:00Z\",\"eventType\":\"login_failure\",\"userId\":\"user123\"},{\"timestamp\":\"2024-04-26T12:05:00Z\",\"eventType\":\"login_success\",\"userId\":\"user123\"}],\"detectionAlgorithm\":\"isolationForest\",\"outputFormat\":\"json\"}", + "description": "Detect anomalies in login failure event sequences to identify possible brute force attempts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "security-tools.generateDiagram", + "description": "Generates detailed security architecture diagrams based on provided system components and security elements. Accepts input data defining network nodes, security controls, and relationships, then produces a graphical representation in SVG or PNG format illustrating the security topology and data flows.", + "category": "security-tools", + "parameters": [ + { + "name": "components", + "type": "array", + "description": "List of system components and assets to include in the diagram, each with properties like id, type, and description.", + "required": true, + "defaultValue": "" + }, + { + "name": "connections", + "type": "array", + "description": "Defines the relationships and data flows between components, including source, target, and connection type.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "diagramStyle", + "type": "string", + "description": "Specifies the visual style for the diagram, e.g., 'minimal', 'detailed', or 'custom'.", + "required": false, + "defaultValue": "minimal" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format of the diagram, either 'svg' or 'png'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "includeLegend", + "type": "boolean", + "description": "Whether to include a legend explaining symbols and colors used in the diagram.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the diagram image as a base64-encoded string and the image format used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create visual security architecture diagrams from structured input data describing network components, security controls, and connections. It assists in visualizing system security topology for analysis or documentation.", + "limitations": "This tool cannot interpret unstructured text descriptions, nor generate interactive or real-time monitoring diagrams. It also does not perform security analysis, only diagram generation.", + "examples": [ + "Generate a network security diagram from a list of servers, firewalls, and encrypted connections.", + "Create a security topology diagram showing connections between microservices and their security controls in SVG format.", + "Visualize security perimeter and internal segmentation with optional legend inclusion in PNG format." + ] + }, + "tags": [ + "security", + "diagram", + "visualization", + "architecture", + "network", + "infrastructure", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"components\":[{\"id\":\"fw1\",\"type\":\"firewall\",\"description\":\"Perimeter Firewall\"},{\"id\":\"db1\",\"type\":\"database\",\"description\":\"Customer DB\"},{\"id\":\"app1\",\"type\":\"application\",\"description\":\"Web Application\"}],\"connections\":[{\"source\":\"app1\",\"target\":\"db1\",\"type\":\"encrypted\"},{\"source\":\"fw1\",\"target\":\"app1\",\"type\":\"filtered\"}],\"diagramStyle\":\"detailed\",\"outputFormat\":\"svg\",\"includeLegend\":true}", + "description": "Generate a detailed SVG diagram showing a firewall, web app, and database with encrypted and filtered connections." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Diagram", + "context": null + } + }, + { + "name": "security-tools.createConversion", + "description": "This tool accepts web security event logs and user interaction data to process and create conversion events that represent successful security actions, such as phishing link clicks converted into incident reports. It outputs structured conversion data useful for security analytics and incident response tracking.", + "category": "security-tools", + "parameters": [ + { + "name": "eventLogs", + "type": "array", + "description": "Array of raw security event log entries from web applications or security devices.", + "required": true, + "defaultValue": "" + }, + { + "name": "userActions", + "type": "array", + "description": "Array of user interaction records relevant to security events, such as clicks or responses to alerts.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionCriteria", + "type": "object", + "description": "Object defining rules and filters that determine how events convert into security conversion records.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Time window in minutes to correlate events and user actions for conversion detection.", + "required": false, + "defaultValue": "15" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the conversion output, e.g., JSON or CSV.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "Structured conversion data outlining detected conversion events including timestamps, user identifiers, event types, and conversion status." + }, + "aiAgent": { + "useCase": "Use this tool when analyzing security logs and user interactions to identify and generate conversion events representing meaningful security outcomes, such as successful phishing alert conversions or incident escalations. Helpful for automated security analytics and reporting.", + "limitations": "This tool does not perform raw log collection or real-time event capture itself. It relies on provided data and criteria to generate conversion events, and does not automate incident remediation.", + "examples": [ + "Create security conversion data from phishing email click logs and user alert responses within a 10-minute correlation window.", + "Generate conversion events identifying successful malware alert follow-ups based on given user action records.", + "Output security conversion summary in CSV format from supplied event logs and interaction data." + ] + }, + "tags": [ + "security", + "analytics", + "conversion", + "event-processing", + "incident-response", + "phishing", + "log-analysis" + ], + "examples": [ + { + "inputJson": "{\"eventLogs\":[{\"eventId\":\"e1\",\"eventType\":\"phishing_click\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"userId\":\"user123\"}],\"userActions\":[{\"actionId\":\"a1\",\"actionType\":\"alert_report\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"userId\":\"user123\"}],\"conversionCriteria\":{\"eventTypeToConvert\":\"phishing_click\",\"userActionType\":\"alert_report\"},\"timeWindowMinutes\":10,\"outputFormat\":\"JSON\"}", + "description": "Identify phishing click events that converted into alert reports by users within 10 minutes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "security-tools.createGraph", + "description": "Creates interactive security-related graphs based on input threat or vulnerability data. Accepts raw or structured input about security incidents, vulnerabilities, or attack paths, processes and organizes this data to generate visual network/topology graphs illustrating relationships, flows, or impact. Produces output as graph data in JSON or visualization formats.", + "category": "security-tools", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured data representing security entities and relationships, such as vulnerabilities, hosts, attack paths, or incidents. Required to generate the graph.", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph visualization to create, e.g., 'network', 'tree', or 'flow'. Defaults to 'network'.", + "required": false, + "defaultValue": "network" + }, + { + "name": "highlightSeverity", + "type": "boolean", + "description": "Whether to visually emphasize nodes or edges based on severity levels present in the input data.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the graph, such as 'json' (graph structure), 'svg', or 'png' for rendered visuals.", + "required": false, + "defaultValue": "json" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional parameters to filter input data before graph creation, e.g., focus on a specific vulnerability type or timeframe.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the graph data, including nodes and edges, along with metadata. If a visualization format was specified, returns a corresponding encoded image or visualization data string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize security data to illustrate relationships among vulnerabilities, attack paths, or threat actors. It aids in quickly understanding complex security scenarios and identifying critical nodes or attack vectors.", + "limitations": "Does not perform vulnerability scanning or data collection itself; requires preprocessed structured input data. Visualization quality depends on input data completeness and correctness. Does not provide remediation advice.", + "examples": [ + "Create a network graph showing the relationships between vulnerabilities and affected hosts from recent scan data.", + "Generate a tree graph depicting the attack path from initial breach to critical asset compromise.", + "Produce an SVG image highlighting vulnerabilities with critical severity on a network topology graph." + ] + }, + "tags": [ + "security", + "graph-generation", + "visualization", + "threat-analysis", + "vulnerability-mapping", + "network-graph" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"nodes\":[{\"id\":\"host1\",\"type\":\"host\"},{\"id\":\"vuln1\",\"type\":\"vulnerability\",\"severity\":\"high\"},{\"id\":\"host2\",\"type\":\"host\"}],\"edges\":[{\"from\":\"host1\",\"to\":\"vuln1\"},{\"from\":\"vuln1\",\"to\":\"host2\"}]},\"graphType\":\"network\",\"highlightSeverity\":true,\"outputFormat\":\"json\"}", + "description": "Generate a network graph highlighting severe vulnerabilities linking hosts." + }, + { + "inputJson": "{\"inputData\":{\"nodes\":[{\"id\":\"initialBreach\",\"type\":\"event\"},{\"id\":\"pivotHost\",\"type\":\"host\"},{\"id\":\"criticalAsset\",\"type\":\"asset\"}],\"edges\":[{\"from\":\"initialBreach\",\"to\":\"pivotHost\"},{\"from\":\"pivotHost\",\"to\":\"criticalAsset\"}]},\"graphType\":\"tree\",\"outputFormat\":\"svg\"}", + "description": "Create a tree graph visualization of an attack path from breach to critical asset in SVG format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "security-tools.createMarkdown", + "description": "Generates a detailed Markdown report summarizing security audit findings based on provided vulnerabilities, risk assessments, and remediation recommendations. Accepts structured input about security issues, processes it to format sections with headers, lists, and badges, and outputs a well-organized Markdown text suitable for documentation or sharing with stakeholders.", + "category": "security-tools", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "Main title for the security report (e.g., 'Weekly Security Audit')", + "required": true, + "defaultValue": "" + }, + { + "name": "date", + "type": "string", + "description": "Date of the report in ISO 8601 format (e.g., '2024-06-01')", + "required": true, + "defaultValue": "" + }, + { + "name": "vulnerabilities", + "type": "array", + "description": "Array of vulnerability objects detailing individual security issues with fields like id, severity, description, and status", + "required": true, + "defaultValue": "" + }, + { + "name": "riskAssessment", + "type": "string", + "description": "Summary narrative providing an overview of risk posture and critical issues", + "required": false, + "defaultValue": "" + }, + { + "name": "recommendations", + "type": "array", + "description": "List of recommended remediation steps or best practices to address the found vulnerabilities", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSummaryBadge", + "type": "boolean", + "description": "Flag to include a summary badge showing total number of vulnerabilities and highest severity", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the complete Markdown content as a string under the key 'markdownReport'" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a professional, readable security audit report in Markdown format for stakeholders or documentation purposes. It transforms raw vulnerability data and assessments into well-structured human-readable text that includes sections and formatting suitable for repositories, emails, or presentations.", + "limitations": "This tool does not perform any security scanning or data validation. It only formats given input into Markdown and relies on accurate input data. It cannot generate or infer security findings on its own.", + "examples": [ + "Generate a Markdown report for last month's penetration test including vulnerabilities, risk assessment summary, and remediation recommendations.", + "Create a security audit report markdown documenting recent findings with date and include an overview badge.", + "Produce a vulnerability report in Markdown format excluding recommendations." + ] + }, + "tags": [ + "security", + "reporting", + "markdown", + "audit", + "vulnerability", + "documentation", + "automation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Q2 Security Audit Report\",\"date\":\"2024-06-01\",\"vulnerabilities\":[{\"id\":\"CVE-2024-1234\",\"severity\":\"High\",\"description\":\"SQL Injection in user login endpoint.\",\"status\":\"Open\"},{\"id\":\"CVE-2023-5678\",\"severity\":\"Medium\",\"description\":\"Outdated TLS version used.\",\"status\":\"Mitigated\"}],\"riskAssessment\":\"Overall risk remains elevated due to critical SQL Injection.\",\"recommendations\":[\"Patch login endpoint immediately.\",\"Upgrade TLS to 1.3.\"],\"includeSummaryBadge\":true}", + "description": "Generate a full Q2 security audit report with vulnerabilities, risk summary, and recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Markdown", + "context": null + } + }, + { + "name": "security-tools.createExpense", + "description": "Creates a secure, validated expense record for a business application. Accepts expense details including amount, currency, category, description, and optionally attached documents. Processes validation, applies encryption to sensitive fields, and returns a secure expense object with unique ID and timestamp.", + "category": "security-tools", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "Monetary amount of the expense, must be positive", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the amount (e.g., USD, EUR)", + "required": true, + "defaultValue": "USD" + }, + { + "name": "category", + "type": "string", + "description": "Expense category such as travel, meals, or office supplies", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Text description or notes about the expense", + "required": false, + "defaultValue": "" + }, + { + "name": "dateIncurred", + "type": "string", + "description": "ISO 8601 date string when the expense was incurred", + "required": false, + "defaultValue": "" + }, + { + "name": "attachedDocuments", + "type": "array", + "description": "List of URLs or base64 encoded attachments related to the expense", + "required": false, + "defaultValue": "[]" + }, + { + "name": "encryptSensitiveData", + "type": "boolean", + "description": "Flag to encrypt sensitive fields such as description for security", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a secure expense record with unique ID, stored fields, and created timestamp" + }, + "aiAgent": { + "useCase": "Use this tool when a business or financial application needs to securely create and store expense records with validation and optional encryption of sensitive information. It ensures expenses comply with expected formats and protect sensitive details against unauthorized access.", + "limitations": "This tool does not handle expense approval workflows or integration with accounting systems; it only creates and secures expense data.", + "examples": [ + "Create an expense record of $120 USD for meals with receipt attachment.", + "Submit a travel expense of 300 EUR with description and encrypt sensitive data.", + "Add an office supplies expense for $45.50 without attachments." + ] + }, + "tags": [ + "security", + "expense", + "business", + "encryption", + "validation", + "finance" + ], + "examples": [ + { + "inputJson": "{\"amount\":120.00,\"currency\":\"USD\",\"category\":\"meals\",\"description\":\"Team lunch\",\"dateIncurred\":\"2024-05-10\",\"attachedDocuments\":[\"https://example.com/receipt123.jpg\"],\"encryptSensitiveData\":true}", + "description": "Create a meal expense with attached receipt and encryption enabled." + }, + { + "inputJson": "{\"amount\":300,\"currency\":\"EUR\",\"category\":\"travel\",\"description\":\"Conference attendance\",\"encryptSensitiveData\":true}", + "description": "Create a travel expense with a description and encrypt sensitive data." + }, + { + "inputJson": "{\"amount\":45.5,\"currency\":\"USD\",\"category\":\"office supplies\"}", + "description": "Create a basic office supplies expense without optional fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "security-tools.createAudio", + "description": "Generates an audio file containing a randomized or passphrase-based spoken password or security phrase for authentication purposes. Accepts parameters for voice style, language, phrase content or length, and output format. Produces an audio file output with the spoken phrase for secure user verification or multi-factor authentication.", + "category": "security-tools", + "parameters": [ + { + "name": "phrase", + "type": "string", + "description": "The exact phrase or password to be spoken in the audio. If empty, a random secure phrase is generated.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en-US') for the voice used in the audio output.", + "required": true, + "defaultValue": "en-US" + }, + { + "name": "voiceStyle", + "type": "string", + "description": "The voice style or gender to use for speech synthesis (e.g., 'male', 'female', 'neutral').", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "phraseLength", + "type": "number", + "description": "Length of the randomly generated phrase in characters if phrase parameter is empty.", + "required": false, + "defaultValue": "12" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The audio file format to generate (e.g., 'mp3', 'wav', 'ogg').", + "required": true, + "defaultValue": "mp3" + }, + { + "name": "speed", + "type": "number", + "description": "Speech rate multiplier where 1 is normal speed.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object containing the audio file's binary data encoded as a base64 string and metadata including format, duration, and phrase used." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create audio clips of secure phrases or passwords for multi-factor authentication or security verification processes requiring audio prompts. This helps in scenarios where verbal password transmission or audio password memorization is preferred. It is useful for generating customized audio security tokens or spoken verification messages.", + "limitations": "This tool does not generate non-verbal sound-based security tokens, nor does it perform encryption. The security level depends on phrase complexity and voice randomness. It cannot replace secure cryptographic authentications on its own.", + "examples": [ + "Create an mp3 audio saying 'secure access granted' in US English female voice.", + "Generate a 16-character random secure password spoken aloud in British English male voice as a wav file.", + "Produce an ogg file with a spoken phrase 'code 4729 alpha' at 1.2x normal speed in neutral voice." + ] + }, + "tags": [ + "audio", + "speech synthesis", + "security", + "password", + "authentication", + "multi-factor", + "voice", + "tts" + ], + "examples": [ + { + "inputJson": "{\"phrase\":\"secure access granted\",\"language\":\"en-US\",\"voiceStyle\":\"female\",\"outputFormat\":\"mp3\"}", + "description": "Generate an mp3 audio with the phrase 'secure access granted' spoken in US English female voice." + }, + { + "inputJson": "{\"phrase\":\"\",\"language\":\"en-GB\",\"voiceStyle\":\"male\",\"phraseLength\":16,\"outputFormat\":\"wav\"}", + "description": "Generate a 16-character random secure password spoken aloud in British English male voice as a wav file." + }, + { + "inputJson": "{\"phrase\":\"code 4729 alpha\",\"language\":\"en-US\",\"voiceStyle\":\"neutral\",\"outputFormat\":\"ogg\",\"speed\":1.2}", + "description": "Produce an ogg audio file with the spoken phrase 'code 4729 alpha' at 1.2x normal speed in neutral voice." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "security-tools.createDependency", + "description": "Creates a secure dependency definition file for a project by accepting a list of dependencies with versions, verifying their sources and integrity hashes, and generating a standardized lock file to ensure consistent and safe dependency installation.", + "category": "security-tools", + "parameters": [ + { + "name": "dependencies", + "type": "array", + "description": "An array of dependency objects, each including name, version, source URL, and optional integrity hash to verify integrity.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the generated dependency file, e.g., 'lockfile' or 'json'.", + "required": false, + "defaultValue": "lockfile" + }, + { + "name": "includeDevDependencies", + "type": "boolean", + "description": "Whether to include development dependencies in the output file.", + "required": false, + "defaultValue": "false" + }, + { + "name": "projectName", + "type": "string", + "description": "Optional name of the project to include in the metadata of the generated file.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dependency file content as a string and metadata about the resolved dependencies, including any integrity verification results." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or update a secure dependency lock file for a software project based on a list of dependencies with versions and integrity information. It helps ensure consistent builds and mitigates supply chain risks by including source and integrity verification.", + "limitations": "This tool does not resolve transitive dependencies automatically. It assumes the input dependencies are already resolved and does not perform deep vulnerability scanning.", + "examples": [ + "Create a lock file with specific versions and hashes for a Node.js project.", + "Generate a JSON dependency file including development dependencies for a Python project.", + "Create a dependency definition for a project specifying a custom name in the metadata." + ] + }, + "tags": [ + "security", + "dependency-management", + "lockfile", + "integrity", + "software-supply-chain" + ], + "examples": [ + { + "inputJson": "{\"dependencies\":[{\"name\":\"lodash\",\"version\":\"4.17.21\",\"sourceUrl\":\"https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz\",\"integrityHash\":\"sha512-abc123...\"}],\"outputFormat\":\"lockfile\",\"includeDevDependencies\":false,\"projectName\":\"my-app\"}", + "description": "Generate a standard lockfile for a Node.js app with lodash locked to version 4.17.21, including integrity hash." + }, + { + "inputJson": "{\"dependencies\":[{\"name\":\"requests\",\"version\":\"2.26.0\",\"sourceUrl\":\"https://pypi.org/project/requests/2.26.0/\"}],\"outputFormat\":\"json\",\"includeDevDependencies\":true,\"projectName\":\"api-client\"}", + "description": "Produce a JSON format dependency file for a Python project including development dependencies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dependency", + "context": null + } + }, + { + "name": "legal-tools.analyzeCustomer", + "description": "Analyzes customer information to assess legal compliance risks and contractual obligations. Accepts customer profiles including identification, jurisdiction, business type, and contract terms. Performs checks against regulatory requirements, sanctions lists, and contract clauses. Outputs a detailed compliance report highlighting potential legal issues and recommendations.", + "category": "legal-tools", + "parameters": [ + { + "name": "customerProfile", + "type": "object", + "description": "Structured data containing customer identification details, jurisdiction, and business class to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractDocuments", + "type": "array", + "description": "Array of contract document texts or structured data related to the customer to review legal clauses and obligations.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "regulatoryJurisdictions", + "type": "array", + "description": "List of legal jurisdictions to consider for compliance checks (e.g., countries, states).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "checkSanctions", + "type": "boolean", + "description": "Whether to check the customer against international sanctions lists.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "If true, includes actionable compliance recommendations in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Compliance report object containing identified legal risks, contract obligations issues, sanctions match results, and optional compliance recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when assessing a customer’s legal risk profile during contract negotiations, onboarding, or ongoing compliance monitoring. It assists in identifying jurisdictional risks, sanction matches, and problematic contract clauses to inform risk mitigation and decision-making.", + "limitations": "Does not substitute for professional legal advice. It cannot interpret complex contract negotiations or dynamic regulatory changes in real-time. Requires structured input and may miss risks from incomplete data.", + "examples": [ + "Analyze a new customer's profile and contracts to identify any legal compliance risks before signing.", + "Check if an existing client falls under any sanctions or regulatory constraints across multiple jurisdictions.", + "Generate a compliance summary report on a prospective customer's contractual obligations and potential risks." + ] + }, + "tags": [ + "legal", + "compliance", + "customer-analysis", + "contract-review", + "risk-assessment", + "sanctions-check" + ], + "examples": [ + { + "inputJson": "{\"customerProfile\":{\"name\":\"ABC Corp\",\"jurisdiction\":\"US\",\"businessType\":\"Import/Export\",\"idNumber\":\"123456789\"},\"contractDocuments\":[\"Sales Agreement text here.\"],\"regulatoryJurisdictions\":[\"US\",\"EU\"],\"checkSanctions\":true,\"includeRecommendations\":true}", + "description": "Analyze a US-based import/export customer with provided contract text and check US and EU regulations including sanctions lists." + }, + { + "inputJson": "{\"customerProfile\":{\"name\":\"Global Trading Ltd.\",\"jurisdiction\":\"GB\",\"businessType\":\"Finance\",\"idNumber\":\"987654321\"},\"checkSanctions\":false,\"includeRecommendations\":true}", + "description": "Analyze a UK financial services customer profile without sanctions check but including compliance recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Customer", + "context": null + } + }, + { + "name": "legal-tools.sendEmail", + "description": "This tool sends emails related to legal contracts and compliance matters. It accepts parameters such as recipient addresses, subject, body content, optional attachments, and urgency flags. The tool processes the input by formatting the email and dispatching it through a configured SMTP server or email API, returning a delivery status with message ID and any errors encountered.", + "category": "legal-tools", + "parameters": [ + { + "name": "to", + "type": "array", + "description": "List of recipient email addresses for the legal email", + "required": true, + "defaultValue": "" + }, + { + "name": "cc", + "type": "array", + "description": "Optional list of CC recipient email addresses", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bcc", + "type": "array", + "description": "Optional list of BCC recipient email addresses", + "required": false, + "defaultValue": "[]" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line of the email", + "required": true, + "defaultValue": "" + }, + { + "name": "body", + "type": "string", + "description": "Main content of the email, supports plain text or HTML", + "required": true, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "Optional list of attachments, each with filename and base64 content", + "required": false, + "defaultValue": "[]" + }, + { + "name": "isHighPriority", + "type": "boolean", + "description": "Flag indicating if the email should be marked as high importance", + "required": false, + "defaultValue": "false" + }, + { + "name": "senderEmail", + "type": "string", + "description": "Email address of the sender", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Status object containing success boolean, messageId if sent, and error message if failed" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to send legally relevant emails such as contract notices, compliance alerts, policy updates, or document sharing to stakeholders. The agent should format the legal context properly and use this tool to communicate through email efficiently.", + "limitations": "This tool only sends emails; it does not verify email deliverability, handle inbound messages, or provide legal advice. Attachments must be pre-encoded by the agent.", + "examples": [ + "Send contract renewal reminders to clients.", + "Notify compliance team about regulatory changes via email.", + "Email signed legal documents to the relevant parties." + ] + }, + "tags": [ + "email", + "legal", + "contract", + "communication", + "notification", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"to\":[\"legalteam@example.com\"],\"cc\":[\"manager@example.com\"],\"bcc\":[],\"subject\":\"Contract Renewal Notice\",\"body\":\"Dear Client, your contract is due for renewal next month.\",\"attachments\":[],\"isHighPriority\":true,\"senderEmail\":\"contracts@examplecorp.com\"}", + "description": "Send a high priority contract renewal notice to the legal team with a manager CC'd." + }, + { + "inputJson": "{\"to\":[\"compliance@example.com\"],\"cc\":[],\"bcc\":[],\"subject\":\"New Compliance Policy Update\",\"body\":\"Please find the attached updated compliance policies effective immediately.\",\"attachments\":[{\"filename\":\"policy.pdf\",\"content\":\"JVBERi0xLjQKJcfs...base64encoded...\"}],\"isHighPriority\":false,\"senderEmail\":\"hr@examplecorp.com\"}", + "description": "Email the compliance team with an updated policy PDF attached from HR." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Email", + "context": null + } + }, + { + "name": "legal-tools.analyzeReport", + "description": "Analyzes legal documents or contract reports in text or PDF format to extract key clauses, compliance risks, deadlines, and summarizes important legal terms. Produces a structured analysis highlighting risks, obligations, and recommendations for review.", + "category": "legal-tools", + "parameters": [ + { + "name": "reportContent", + "type": "string", + "description": "The full text content or base64-encoded PDF of the legal report to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the input report content. Accepted values: 'text' or 'pdf'. Defaults to 'text'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "highlightRisks", + "type": "boolean", + "description": "Whether to highlight compliance or legal risks found within the report. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "summarize", + "type": "boolean", + "description": "Whether to generate a high-level summary of the report's main points. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the report content, e.g., 'en' for English, to assist in accurate analysis. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted clauses, identified risks, deadline dates, key obligations, and an executive summary of the legal report." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to perform detailed review and risk analysis of legal documents or contract reports to support decision-making or compliance monitoring. It helps to quickly identify critical clauses, deadlines, and potential legal issues.", + "limitations": "This tool cannot provide legally binding advice or interpret ambiguous clauses definitively. It may not fully understand jurisdiction-specific regulations or context beyond the text provided.", + "examples": [ + "Analyze a contract report to extract key terms and compliance risks.", + "Summarize a PDF legal audit report highlighting deadlines and obligations.", + "Review provided legal agreement text for potential red flags and critical clauses." + ] + }, + "tags": [ + "legal", + "document-analysis", + "contract", + "compliance", + "risk-assessment", + "report", + "summarization" + ], + "examples": [ + { + "inputJson": "{\"reportContent\":\"This Agreement shall commence on 01 January 2024 and shall continue until 31 December 2024. The Client must deliver all payments within 30 days of invoice receipt. Non-compliance with confidentiality terms may result in penalties.\",\"fileFormat\":\"text\",\"highlightRisks\":true,\"summarize\":true,\"language\":\"en\"}", + "description": "Analyze a legal agreement text for clauses, deadlines, and risks." + }, + { + "inputJson": "{\"reportContent\":\"JVBERi0xLjQKJcfs...base64encodedPDF...\",\"fileFormat\":\"pdf\",\"highlightRisks\":true,\"summarize\":true,\"language\":\"en\"}", + "description": "Analyze a base64-encoded PDF legal report for compliance risks and summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Report", + "context": null + } + }, + { + "name": "legal-tools.buildCode", + "description": "This tool accepts structured input defining legal contract clauses, variables, and conditions, then generates executable code snippets (e.g., smart contract or compliance scripts) that enforce or implement these contractual terms. The output is code in a specified language that automates contract logic for integration into legal software.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractClauses", + "type": "array", + "description": "An array of objects representing contract clauses, each detailing conditions, obligations, and rights to be encoded.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputLanguage", + "type": "string", + "description": "The programming language for the generated code (e.g., Solidity, JavaScript).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include descriptive comments explaining generated code logic.", + "required": false, + "defaultValue": "true" + }, + { + "name": "contractVariables", + "type": "object", + "description": "Object mapping variable names to their types and initial values used within contract clauses.", + "required": false, + "defaultValue": "" + }, + { + "name": "complianceFramework", + "type": "string", + "description": "Optional compliance framework or jurisdiction to consider during code generation (e.g., GDPR, FINRA).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "GeneratedCode containing the code string and metadata such as language and snippet summaries." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate executable code for contract logic from detailed legal clause definitions, enabling seamless automation of legal obligations and compliance checks in software systems. It's ideal when translating legal terms into enforceable code for blockchain smart contracts or compliance automation.", + "limitations": "This tool does not validate the legal validity of clauses or replace legal advice. It also cannot fully guarantee compliance with jurisdictional law beyond predefined frameworks nor optimize code efficiency beyond basic generation.", + "examples": [ + "Generate Solidity code for escrow clauses defined in input.", + "Create JavaScript compliance script enforcing data privacy clauses under GDPR.", + "Produce documented code snippets for contract obligations with variable initialization." + ] + }, + "tags": [ + "legal", + "code-generation", + "contract-automation", + "smart-contracts", + "compliance", + "legal-tech", + "automation" + ], + "examples": [ + { + "inputJson": "{\"contractClauses\":[{\"id\":\"clause1\",\"title\":\"Payment Terms\",\"conditions\":\"On delivery, buyer pays seller within 30 days.\"}],\"outputLanguage\":\"Solidity\",\"includeComments\":true,\"contractVariables\":{\"buyerAddress\":\"address\",\"paymentDueDate\":\"uint256\"},\"complianceFramework\":\"\"}", + "description": "Generate Solidity code with comments for a payment clause including defined variables." + }, + { + "inputJson": "{\"contractClauses\":[{\"id\":\"privacy1\",\"title\":\"Data Usage\",\"conditions\":\"User data must be deleted within 30 days of request.\"}],\"outputLanguage\":\"JavaScript\",\"includeComments\":false,\"contractVariables\":{\"dataDeletionDeadline\":\"Date\"},\"complianceFramework\":\"GDPR\"}", + "description": "Create JavaScript code no comments for data privacy clause under GDPR." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Code", + "context": null + } + }, + { + "name": "customer-support.analyzeHeading", + "description": "This tool analyzes a given heading text from customer support content (such as FAQs, help articles, or chat transcripts) to identify its intent, sentiment, and relevant category. It accepts a string heading, processes linguistic and contextual features, and returns structured insights including intent classification, sentiment score, and suggested category labels to support content organization and enhancement.", + "category": "customer-support", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The heading text from customer support content to analyze (e.g., FAQ title or ticket subject).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the heading text to ensure proper analysis (default is 'en').", + "required": false, + "defaultValue": "en" + }, + { + "name": "intentCategories", + "type": "array", + "description": "Optional list of possible intent categories to classify the heading against (e.g., ['Billing', 'Technical Issue', 'Account']). If empty, default categories are used.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object describing the analysis results: detected intent category, sentiment (positive/neutral/negative), and suggested topic tags." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand or classify short heading texts in customer support contexts to improve content tagging, routing, or insight extraction. Ideal for analyzing FAQ titles, ticket subjects, or knowledge base headings.", + "limitations": "The tool only analyzes the heading text and does not consider the full content body or conversation context, so classification may be limited in cases where the heading is ambiguous.", + "examples": [ + "Analyze the heading 'How do I reset my password?' to identify intent and sentiment.", + "Classify the heading 'Billing dispute for last invoice' within given categories to route support tickets.", + "Determine sentiment and suggest topic tags for the FAQ heading 'Troubleshooting network connection errors'." + ] + }, + "tags": [ + "analysis", + "customer-support", + "NLP", + "content-classification", + "sentiment-analysis", + "intent-detection" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"How do I update my payment method?\",\"language\":\"en\",\"intentCategories\":[\"Billing\",\"Account Update\",\"Technical Issue\"]}", + "description": "Analyze a support FAQ heading related to billing and account update intents." + }, + { + "inputJson": "{\"headingText\":\"Unable to connect to WiFi network\",\"language\":\"en\"}", + "description": "Analyze a technical issue ticket subject with default categories and language." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "legal-tools.createReport", + "description": "Generates a comprehensive legal compliance or contract management report based on provided contract data and compliance parameters. Accepts contract details, relevant dates, compliance checkpoints, and optional notes, processing these inputs to produce a structured report summarizing compliance status and action items.", + "category": "legal-tools", + "parameters": [ + { + "name": "contractId", + "type": "string", + "description": "Unique identifier of the contract for which the report is generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractData", + "type": "object", + "description": "Detailed contract information including parties, terms, and clauses relevant to compliance checks.", + "required": true, + "defaultValue": "" + }, + { + "name": "complianceCheckpoints", + "type": "array", + "description": "List of compliance checkpoints or criteria to evaluate against the contract data.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportDate", + "type": "string", + "description": "The date for which the report is generated, formatted as YYYY-MM-DD.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeActionItems", + "type": "boolean", + "description": "Whether to include recommended action items for any detected compliance issues.", + "required": false, + "defaultValue": "true" + }, + { + "name": "notes", + "type": "string", + "description": "Optional additional notes or comments to include in the report.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured report object containing summary of compliance status, details of any issues found, and optional action items and notes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce a detailed report on legal compliance or contract performance based on specific contract data and compliance criteria. It helps summarize current compliance status and identify areas requiring attention or remediation.", + "limitations": "This tool does not interpret legal language or substitute legal advice; it relies on provided data and predefined checkpoints. It cannot validate legal validity or advise on contract revisions.", + "examples": [ + "Generate a compliance status report for contract ID 12345 checking all GDPR-related clauses.", + "Create a contract performance report including action items for upcoming renewal dates.", + "Produce a summary report for contract X with notes for the legal team." + ] + }, + "tags": [ + "legal", + "report", + "compliance", + "contract", + "management", + "document" + ], + "examples": [ + { + "inputJson": "{\"contractId\":\"C-2023-001\",\"contractData\":{\"parties\":[\"Company A\",\"Company B\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2025-01-01\",\"terms\":[{\"clause\":\"Data Protection\",\"compliant\":true},{\"clause\":\"Renewal Notice\",\"compliant\":false}]},\"complianceCheckpoints\":[\"Data Protection\",\"Renewal Notice\"],\"reportDate\":\"2024-06-01\",\"includeActionItems\":true,\"notes\":\"Urgent review needed for renewal clause.\"}", + "description": "Generate a compliance report for contract C-2023-001 checking specified compliance points and producing action items." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Report", + "context": null + } + }, + { + "name": "customer-support.analyzeTrend", + "description": "This tool accepts historical customer support data including ticket volumes, resolution times, and customer sentiment scores over time. It analyzes these datasets to identify emerging trends, seasonality, and shifts in support demand or customer satisfaction. The output is a structured report summarizing detected patterns, their significance, and potential impact on support operations.", + "category": "customer-support", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of customer support records with timestamps, ticket counts, resolution metrics, and sentiment scores to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "object", + "description": "An object specifying the start and end dates for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "trendType", + "type": "string", + "description": "Type of trend to analyze: 'volume', 'resolutionTime', or 'sentiment'.", + "required": false, + "defaultValue": "volume" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Statistical confidence level (between 0 and 1) to use when reporting significant trends.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "seasonalityDetection", + "type": "boolean", + "description": "Whether to detect and report seasonality effects in the data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing detected trend summaries, including trend direction, magnitude, seasonality patterns, and confidence metrics." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand shifts and emerging patterns in customer support metrics such as ticket volume changes, resolution time trends, or sentiment evolution over time. It helps predict resource needs or identify satisfaction issues early.", + "limitations": "This tool cannot provide root cause analysis or causal inference, only trend detection. It requires clean historical data with consistent time stamps and relevant metrics.", + "examples": [ + "Analyze ticket volume trends from last quarter to plan staffing.", + "Identify seasonality in customer sentiment scores over the past year.", + "Detect whether resolution times have statistically changed in the last two months." + ] + }, + "tags": [ + "analysis", + "customer-support", + "trend-detection", + "metrics", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-03-01\",\"tickets\":120,\"resolutionTime\":30,\"sentiment\":0.75},{\"timestamp\":\"2024-03-02\",\"tickets\":135,\"resolutionTime\":28,\"sentiment\":0.78}],\"timeFrame\":{\"start\":\"2024-03-01\",\"end\":\"2024-03-31\"},\"trendType\":\"volume\",\"confidenceLevel\":0.95,\"seasonalityDetection\":true}", + "description": "Analyze daily ticket volumes in March 2024 for trends and seasonality." + }, + { + "inputJson": "{\"data\":[{\"timestamp\":\"2023-01-01\",\"tickets\":100,\"resolutionTime\":32,\"sentiment\":0.70},{\"timestamp\":\"2023-07-01\",\"tickets\":110,\"resolutionTime\":34,\"sentiment\":0.65}],\"timeFrame\":{\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"},\"trendType\":\"sentiment\",\"confidenceLevel\":0.90,\"seasonalityDetection\":false}", + "description": "Analyze yearly customer sentiment trends in 2023 without seasonality detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "customer-support.analyzeThread", + "description": "Analyzes a customer support communication thread to extract key insights such as sentiment, issue categorization, agent performance metrics, and conversation flow. It processes input text of the entire thread and outputs a structured summary highlighting customer satisfaction, common topics, and recommended actions.", + "category": "customer-support", + "parameters": [ + { + "name": "threadText", + "type": "string", + "description": "Full text of the customer support thread including all messages between customer and agent.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the thread text for accurate analysis (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag to include sentiment analysis of customer messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeIssueCategorization", + "type": "boolean", + "description": "Flag to categorize the issues mentioned in the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeAgentPerformance", + "type": "boolean", + "description": "Flag to evaluate and summarize agent responsiveness and tone.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length in words for the generated summary output.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including sentiment scores, categorized issues, agent performance metrics, and an overall summary of the thread." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the overall quality and key themes of a customer support interaction thread for improving customer service or generating actionable reports. Ideal to assess customer sentiment, classify issues, and evaluate agent communication effectiveness automatically.", + "limitations": "Does not perform real-time message monitoring and may not capture nuanced context beyond textual data. Accuracy depends on language support and thread completeness.", + "examples": [ + "Analyze the customer conversation thread to summarize issues and sentiment.", + "Check agent performance and customer satisfaction from the chat transcript.", + "Provide a categorized summary report of this support email thread." + ] + }, + "tags": [ + "analysis", + "customer-support", + "sentiment", + "issue-categorization", + "agent-performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"threadText\":\"Customer: I'm really unhappy with the delay in my order. Agent: Sorry for the inconvenience, we're checking on that for you.\",\"language\":\"en\",\"includeSentimentAnalysis\":true,\"includeIssueCategorization\":true,\"includeAgentPerformance\":true,\"maxSummaryLength\":150}", + "description": "Analyze a short customer support chat to extract sentiment, issue category, and agent performance." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "customer-support.downloadCSV", + "description": "Downloads customer support data as a CSV file based on specified filters such as date range, ticket status, and priority. Accepts filtering parameters to extract relevant ticket records, processes the data into CSV format, and outputs a downloadable CSV file containing the selected support tickets and their details.", + "category": "customer-support", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "Start date to filter support tickets (ISO 8601 format, e.g. 2024-01-01). Only tickets created or updated after this date are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date to filter support tickets (ISO 8601 format, e.g. 2024-01-31). Only tickets created or updated before this date are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "ticketStatus", + "type": "array", + "description": "List of ticket statuses to include (e.g., ['open','closed','pending']). Filters tickets by their current status.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priorityLevels", + "type": "array", + "description": "List of priority levels to include (e.g., ['low','medium','high']). Filters tickets by priority.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fields", + "type": "array", + "description": "Specific ticket data fields to include in the CSV output (e.g., ['id','subject','customerName','createdDate']). Defaults to common fields if empty.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeClosed", + "type": "boolean", + "description": "If true, includes closed tickets in the export regardless of other filters.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the CSV content as a string and metadata like number of records exported." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate and download customer support ticket data as a CSV for reporting, analysis, or archival. It helps extract filtered ticket information based on date, status, and priority to facilitate external data processing or sharing with stakeholders.", + "limitations": "This tool cannot fetch real-time updates once the CSV is downloaded and does not support exporting data formats other than CSV.", + "examples": [ + "Download all open support tickets created in the last month.", + "Export high priority tickets including closed ones for audit.", + "Retrieve a CSV of tickets containing only id, subject, and customer info fields for a given quarter." + ] + }, + "tags": [ + "customer-support", + "download", + "CSV", + "tickets", + "reporting", + "export" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"ticketStatus\":[\"open\",\"pending\"],\"fields\":[\"id\",\"subject\",\"createdDate\",\"priority\"]}", + "description": "Download all open and pending tickets created in March 2024 with selected fields." + }, + { + "inputJson": "{\"priorityLevels\":[\"high\"],\"includeClosed\":true,\"fields\":[\"id\",\"subject\",\"status\",\"closedDate\"]}", + "description": "Export all high priority tickets including closed ones, with limited fields about status and closing date." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "customer-support.analyzeHTML", + "description": "Analyzes customer support-related HTML content to extract and summarize key elements such as FAQs, contact information, response templates, and support tickets. Accepts raw HTML input and outputs a structured analysis highlighting customer query patterns and common support topics.", + "category": "customer-support", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML string containing customer support data (e.g., webpage, email template, chat transcript).", + "required": true, + "defaultValue": "" + }, + { + "name": "extractFAQs", + "type": "boolean", + "description": "Flag to extract Frequently Asked Questions sections.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractContactInfo", + "type": "boolean", + "description": "Flag to extract contact information such as phone numbers, emails, or live chat links.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractResponseTemplates", + "type": "boolean", + "description": "Flag to identify and extract predefined response templates in the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum character length for the summarized analysis output.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted data categorized into FAQs, contactInfo, responseTemplates, and a textual summary highlighting customer support themes and frequent inquiries." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the structure and content of a customer support HTML page or document. It helps to automatically identify key elements like FAQs, contact info, and common response templates, enabling faster insights into customer support resources and frequent issues.", + "limitations": "Cannot execute dynamic content rendering (e.g., JavaScript-generated content). It processes static HTML only and may not fully capture interactive or media elements.", + "examples": [ + "Extract FAQs and contact info from a support webpage HTML.", + "Generate a summary of common customer questions from an email support template in HTML.", + "Identify response templates used within a customer support chat transcript formatted as HTML." + ] + }, + "tags": [ + "customer-support", + "html", + "analysis", + "faq", + "contact-info", + "templates", + "summary" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

FAQ

  • How to reset password?
  • How to contact support?

Contact us at support@example.com or call 123-456-7890.

\",\"extractFAQs\":true,\"extractContactInfo\":true,\"extractResponseTemplates\":false,\"maxSummaryLength\":500}", + "description": "Extract FAQs and contact info from a simple support page HTML." + }, + { + "inputJson": "{\"htmlContent\":\"
Thank you for reaching out. We will get back to you within 24 hours.
\",\"extractFAQs\":false,\"extractContactInfo\":false,\"extractResponseTemplates\":true,\"maxSummaryLength\":300}", + "description": "Identify and extract predefined response templates from support HTML." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "customer-support.renderWord", + "description": "Renders a given word or phrase into formatted text suitable for customer support interfaces, applying specified style options such as font size, color, emphasis, and localization. Accepts raw text input with styling parameters and outputs HTML or styled text snippet ready for UI integration.", + "category": "customer-support", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw word or phrase to render.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels to apply to the rendered text.", + "required": false, + "defaultValue": "14" + }, + { + "name": "fontColor", + "type": "string", + "description": "Hex color code or color name for the text color (e.g., '#000000' or 'red').", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "fontWeight", + "type": "string", + "description": "Font weight to apply, e.g. 'normal', 'bold', or numeric '400'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to italicize the text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "underline", + "type": "boolean", + "description": "Whether to underline the text.", + "required": false, + "defaultValue": "false" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code for localization or language-specific formatting (e.g., 'en-US').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered HTML string with applied styles for direct insertion into the customer support UI." + }, + "aiAgent": { + "useCase": "Use this tool when presenting dynamic single words or phrases within customer support chat, FAQs, help desks, or notifications that require consistent styling, formatting, and potentially localization. It helps maintain branded appearance and readability in UI components by converting plain text into styled HTML snippets using specified visual and locale parameters.", + "limitations": "This tool does not support rendering entire paragraphs, rich text with images, or interactive elements. It only processes single words or short phrases and outputs static styled text.", + "examples": [ + "Render the word 'Success' in green, bold, italic font.", + "Render 'Error' in red, underlined text with locale 'en-GB'.", + "Render a greeting word in default style for US English locale." + ] + }, + "tags": [ + "customer support", + "text rendering", + "UI formatting", + "localization", + "styling" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Success\",\"fontSize\":16,\"fontColor\":\"#008000\",\"fontWeight\":\"bold\",\"italic\":true,\"underline\":false,\"locale\":\"en-US\"}", + "description": "Render the word 'Success' in green, bold, italicized text with 16px font size." + }, + { + "inputJson": "{\"text\":\"Error\",\"fontSize\":14,\"fontColor\":\"red\",\"fontWeight\":\"normal\",\"italic\":false,\"underline\":true,\"locale\":\"en-GB\"}", + "description": "Render the word 'Error' in red, underlined text with normal font weight and British English locale." + }, + { + "inputJson": "{\"text\":\"Hello\",\"fontSize\":14,\"fontColor\":\"#000000\",\"fontWeight\":\"normal\",\"italic\":false,\"underline\":false,\"locale\":\"en-US\"}", + "description": "Render the greeting 'Hello' with default styling for U.S. English locale." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "customer-support.formatCSV", + "description": "Formats raw CSV data related to customer support tickets by applying customizable settings such as delimiter changes, header adjustments, and whitespace trimming. Accepts CSV content as input, processes it according to specified parameters, and outputs a cleaned and consistently formatted CSV string suitable for further analysis or import.", + "category": "customer-support", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "Raw CSV data as a text string that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "The character to use as the CSV delimiter; defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates whether the CSV content contains a header row.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, trim whitespace from all fields in the CSV.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character used to quote fields containing delimiters or newlines; defaults to double quote (\").", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineEnding", + "type": "string", + "description": "Line ending to use between rows, e.g., '\\n' for Unix or '\\r\\n' for Windows.", + "required": false, + "defaultValue": "\\n" + } + ], + "returns": { + "type": "string", + "description": "A sanitized and formatted CSV string that conforms to the specified parameters and is ready for downstream processing." + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize CSV data related to customer support interactions, such as logs of support tickets or customer feedback, before analysis, reporting, or importing into help desk systems. It helps ensure consistent delimiters, proper header handling, and clean whitespace to reduce errors during data processing.", + "limitations": "This tool does not validate semantic correctness of CSV data or detect logical errors in ticket information. It also does not parse or interpret field contents beyond formatting.", + "examples": [ + "Format a CSV export of support tickets that uses semicolons instead of commas as delimiters.", + "Clean up a raw CSV string by trimming extra spaces around fields and assuring consistent quoting.", + "Convert a CSV without headers to a well-formatted CSV string with trimmed spaces." + ] + }, + "tags": [ + "formatting", + "csv", + "customer-support", + "data-cleaning", + "csv-utility" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"Ticket Id ; User ; Status \\n 123 ; Alice ; Open \\n 124 ; Bob ; Closed \",\"delimiter\":\";\",\"hasHeader\":true,\"trimWhitespace\":true,\"quoteChar\":\"\\\"\",\"lineEnding\":\"\\n\"}", + "description": "Formats a semicolon-delimited CSV string with headers and trims whitespace around fields." + }, + { + "inputJson": "{\"csvContent\":\"123,Alice,Open\\n124,Bob,Closed\",\"delimiter\":\",\",\"hasHeader\":false,\"trimWhitespace\":true,\"quoteChar\":\"\\\"\",\"lineEnding\":\"\\r\\n\"}", + "description": "Formats a comma-delimited CSV without headers and normalizes line endings to Windows style." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "customer-support.formatModule", + "description": "Formats a customer support module code snippet by applying consistent indentation, line breaks, and syntax styling to improve readability and maintainability. Accepts raw code as input, processes it to conform to the specified style guide, and outputs the neatly formatted code string.", + "category": "customer-support", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The raw customer support module code to format, provided as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The programming language of the module code (e.g., 'javascript', 'python'), which guides the formatting style.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationStyle", + "type": "string", + "description": "The style of indentation to apply, such as 'space' or 'tab'.", + "required": false, + "defaultValue": "space" + }, + { + "name": "indentationSize", + "type": "number", + "description": "Number of spaces per indentation level if indentationStyle is 'space'.", + "required": false, + "defaultValue": "2" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum characters allowed per line before wrapping.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted code string under the key 'formattedCode'." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare or improve customer support related code modules by ensuring consistent styling and readability before deployment, sharing, or further processing.", + "limitations": "Cannot fix semantic or logic errors in code; focuses only on formatting and style. Requires the code language to be supported for formatting.", + "examples": [ + "Format a raw JavaScript customer support module for improved readability.", + "Apply 4-space indentation to a Python customer support script.", + "Wrap lines longer than 100 characters in a customer support chatbot code snippet." + ] + }, + "tags": [ + "formatting", + "customer-support", + "code-quality", + "module", + "styling" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function handleRequest(req,res){console.log('Request received');res.send('ok');}\",\"language\":\"javascript\",\"indentationStyle\":\"space\",\"indentationSize\":2,\"maxLineLength\":80}", + "description": "Format a simple JavaScript customer support module with 2 spaces indentation." + }, + { + "inputJson": "{\"code\":\"def handle_request(request):\\n print('Request received')\\n return 'ok'\",\"language\":\"python\",\"indentationStyle\":\"space\",\"indentationSize\":4,\"maxLineLength\":80}", + "description": "Format a Python customer support function using 4 spaces indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "customer-support.draftContract", + "description": "Generates a customizable contract draft based on provided client and service details. Accepts client info, service specifications, contract duration, and optional legal clauses; processes these inputs to produce a well-structured contract text suitable for review and negotiation.", + "category": "customer-support", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name of the client or client entity for whom the contract is drafted.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceDescription", + "type": "string", + "description": "Detailed description of the service or product to be provided under the contract.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractDurationMonths", + "type": "number", + "description": "Length of the contract in months to specify time commitments and obligations.", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Description of payment schedules, amounts, and methods agreed upon.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeConfidentialityClause", + "type": "boolean", + "description": "Whether to include a confidentiality clause in the contract.", + "required": false, + "defaultValue": "false" + }, + { + "name": "additionalClauses", + "type": "array", + "description": "Optional array of additional contract clauses as strings to be included in the draft.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full draft contract text generated from the inputs." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate a legally framed contract draft tailored to a client's details and service specifications, to expedite contract preparation for customer support or service agreements.", + "limitations": "This tool does not replace professional legal advice or comprehensive contract review. It cannot guarantee compliance with jurisdiction-specific laws or handle highly specialized legal clauses.", + "examples": [ + "Draft a 12-month support contract for client Acme Corp with monthly payments and a confidentiality clause.", + "Create a 6-month service contract for individual client Jane Doe without additional clauses.", + "Prepare a contract including specific non-compete clauses for a technology service engagement." + ] + }, + "tags": [ + "customer support", + "contract drafting", + "document generation", + "legal templates", + "service agreements" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corporation\",\"serviceDescription\":\"Annual IT support and maintenance services.\",\"contractDurationMonths\":12,\"paymentTerms\":\"Monthly payment of $5000 via bank transfer.\",\"includeConfidentialityClause\":true,\"additionalClauses\":[\"Non-disclosure of proprietary information.\"]}", + "description": "Draft a 12-month IT support contract for Acme Corporation with confidentiality and non-disclosure clauses." + }, + { + "inputJson": "{\"clientName\":\"Jane Doe\",\"serviceDescription\":\"Monthly subscription for software usage.\",\"contractDurationMonths\":6,\"paymentTerms\":\"Monthly payment of $150 by credit card.\",\"includeConfidentialityClause\":false,\"additionalClauses\":[]}", + "description": "Generate a 6-month software usage contract for individual client Jane Doe without confidentiality clause." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "customer-support.composeParagraph", + "description": "Generates a clear and professional paragraph for customer support communications based on the issue description, desired tone, and customer profile. Accepts textual inputs detailing the purpose and outputs a polished paragraph suitable for emails or chat replies.", + "category": "customer-support", + "parameters": [ + { + "name": "issueDescription", + "type": "string", + "description": "A detailed description of the customer's issue or inquiry to address in the paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The preferred tone of the paragraph such as 'formal', 'friendly', or 'empathetic'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "customerName", + "type": "string", + "description": "The name of the customer to personalize the paragraph, if available.", + "required": false, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Name of the product or service related to the support inquiry.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSolution", + "type": "boolean", + "description": "Whether to include a proposed solution or next steps in the paragraph.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the composed paragraph as a string, ready for use in customer communication." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to draft coherent, context-aware paragraphs for customer communication based on input details. Helps automate personalized support message generation while maintaining professional tone.", + "limitations": "Cannot replace human judgment for complex or sensitive issues. May lack complete context leading to generic or incomplete responses.", + "examples": [ + "Compose a friendly paragraph addressing a delayed shipment issue for customer named Alice regarding the 'SmartHome Hub' product.", + "Generate a formal paragraph explaining troubleshooting steps when a customer reports a login problem.", + "Create an empathetic message for a customer complaining about a defective product without specifying the solution." + ] + }, + "tags": [ + "customer-support", + "text-generation", + "communication", + "paragraph", + "automated-response" + ], + "examples": [ + { + "inputJson": "{\"issueDescription\":\"Customer reports receiving a damaged SmartHome Hub device and wants a replacement.\",\"tone\":\"empathetic\",\"customerName\":\"Alice\",\"productName\":\"SmartHome Hub\",\"includeSolution\":true}", + "description": "Generate an empathetic paragraph offering apologies and outlining replacement process." + }, + { + "inputJson": "{\"issueDescription\":\"Customer cannot log into their account due to password not being accepted.\",\"tone\":\"formal\",\"customerName\":\"\",\"productName\":\"\",\"includeSolution\":true}", + "description": "Generate a formal paragraph detailing troubleshooting steps for login issues without customer name or product specified." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "customer-support.buildInstance", + "description": "Creates a new customer support instance for managing help desks and ticketing workflows. Accepts configuration details including instance name, support channels, team assignment, region, and optional features. Sets up the instance and returns the instance ID and status confirmation.", + "category": "customer-support", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "Unique name for the customer support instance to be created", + "required": true, + "defaultValue": "" + }, + { + "name": "supportChannels", + "type": "array", + "description": "List of support channels to enable (e.g., ['email', 'chat', 'phone'])", + "required": true, + "defaultValue": "[\"email\",\"chat\"]" + }, + { + "name": "assignedTeams", + "type": "array", + "description": "List of team IDs or names assigned to this support instance", + "required": false, + "defaultValue": "[]" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region where the support instance infrastructure will be provisioned", + "required": true, + "defaultValue": "" + }, + { + "name": "enableAutoReply", + "type": "boolean", + "description": "Flag to enable automated replies for common queries", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxAgents", + "type": "number", + "description": "Maximum number of support agents allowed in this instance", + "required": false, + "defaultValue": "10" + }, + { + "name": "priorityLevels", + "type": "array", + "description": "List of priority levels for tickets (e.g., ['low', 'medium', 'high'])", + "required": false, + "defaultValue": "[\"low\",\"medium\",\"high\"]" + } + ], + "returns": { + "type": "object", + "description": "Returns the new support instance identifier, status, and configuration summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provision and configure a new customer support environment to manage tickets, support channels, and team assignments dynamically. It helps automate the setup of support infrastructure tailored to specific organizational needs.", + "limitations": "This tool cannot modify existing instances, handle user permissions, or integrate third-party CRM systems beyond initial channel setup.", + "examples": [ + "Create a new support instance named 'AcmeSupport', enable email and chat channels, assign team 'Tier1', set region to 'us-east', and enable auto-replies.", + "Provision a support instance for 'BetaProduct' with phone and chat enabled, no assigned teams, region 'eu-west', and max 20 agents." + ] + }, + "tags": [ + "customer-support", + "infrastructure", + "instance", + "provisioning", + "helpdesk", + "automation" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"AcmeSupport\",\"supportChannels\":[\"email\",\"chat\"],\"assignedTeams\":[\"Tier1\"],\"region\":\"us-east\",\"enableAutoReply\":true,\"maxAgents\":15,\"priorityLevels\":[\"low\",\"medium\",\"high\"]}", + "description": "Create a support instance named AcmeSupport with email and chat channels, assign Tier1 team, region US East, auto-reply enabled, and 15 max agents." + }, + { + "inputJson": "{\"instanceName\":\"BetaProductSupport\",\"supportChannels\":[\"phone\",\"chat\"],\"assignedTeams\":[],\"region\":\"eu-west\",\"enableAutoReply\":false,\"maxAgents\":20,\"priorityLevels\":[\"low\",\"medium\",\"high\"]}", + "description": "Provision BetaProduct support instance with phone and chat, no team assigned, in EU West region with 20 max agents." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "customer-support.composeSummary", + "description": "Generates a concise summary of a customer's support interaction or ticket based on provided conversation transcripts or ticket details. It processes text inputs to extract key points, issues raised, and resolutions suggested, returning a clear, readable summary to assist customer support agents or documentation.", + "category": "customer-support", + "parameters": [ + { + "name": "conversationTranscript", + "type": "string", + "description": "Raw text of the customer support conversation or chat transcript to summarize.", + "required": false, + "defaultValue": "" + }, + { + "name": "ticketDetails", + "type": "object", + "description": "Structured object containing key ticket information such as issue description, customer notes, and resolution history.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary in characters to ensure brevity.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeResolution", + "type": "boolean", + "description": "Flag to indicate whether the summary should explicitly include the resolution or next steps.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated summary text, including extracted key points, main issues, and resolution notes if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly generate concise and readable summaries of detailed customer support conversations or tickets, to assist agents in understanding case history or for documentation purposes. Ideal for reducing long transcripts into manageable formats for review or reporting.", + "limitations": "Cannot replace human judgment on complex cases; may miss nuanced customer sentiment or implicit context. Not suitable for legal or highly technical issue summarization requiring domain expertise.", + "examples": [ + "Generate a summary for the following chat transcript with the customer.", + "Summarize the ticket details including issue description and resolution provided.", + "Provide a brief summary excluding resolution for a support conversation." + ] + }, + "tags": [ + "customer-support", + "summary", + "conversation-analysis", + "helpdesk", + "ticket-management" + ], + "examples": [ + { + "inputJson": "{\"conversationTranscript\":\"Customer reported an issue with logging into their account. Agent assisted in resetting the password and guided customer through login steps.\"}", + "description": "Summarize a customer support chat transcript describing a login issue and resolution." + }, + { + "inputJson": "{\"ticketDetails\":{\"issueDescription\":\"App crashes on launch\",\"customerNotes\":\"Happening since update\",\"resolutionHistory\":\"Suggested clearing cache, issue resolved\"},\"includeResolution\":true}", + "description": "Summarize structured ticket details including issue description, customer notes, and resolution." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "customer-support.buildVariable", + "description": "Constructs a dynamic variable for customer support workflows based on input parameters such as variable name, type, default value, and optional description. Processes inputs to generate a structured variable object that can be used within customer support automation scripts or rule engines.", + "category": "customer-support", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The identifier name for the variable to be created. Must be unique within its scope.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "Data type of the variable (e.g., string, number, boolean, array). Determines the kind of values the variable can hold.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "An optional default value assigned to the variable, expressed as a string. Should be compatible with the variableType.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "An optional textual description explaining the purpose or usage of this variable within the customer support context.", + "required": false, + "defaultValue": "" + }, + { + "name": "isRequired", + "type": "boolean", + "description": "Indicates whether this variable must have a value provided when used in workflows or automation rules.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured representation of the created variable, including its name, type, default value, description, and required flag, ready for integration into customer support workflow engines." + }, + "aiAgent": { + "useCase": "Use this tool when you need to define or prepare variables dynamically to be used in customer support automation workflows, such as in automated ticket routing, personalized responses, or trigger conditions. It helps standardize variable creation and ensures variables are formatted correctly for downstream use.", + "limitations": "This tool only builds the variable definition structure; it does not validate the variable values during runtime or integrate variables into an actual workflow automatically.", + "examples": [ + "Create a string variable named 'customerPriority' with default 'normal' for prioritizing support tickets.", + "Build a boolean variable 'isEscalated' to track if a ticket requires escalation.", + "Define a number variable 'waitTimeSeconds' without default value for measuring customer wait times." + ] + }, + "tags": [ + "customer-support", + "variable", + "automation", + "workflow", + "build", + "definition" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"customerPriority\",\"variableType\":\"string\",\"defaultValue\":\"normal\",\"description\":\"Priority level of the customer ticket\",\"isRequired\":true}", + "description": "Builds a string variable named 'customerPriority' with default 'normal' and marks it as required." + }, + { + "inputJson": "{\"variableName\":\"isEscalated\",\"variableType\":\"boolean\",\"defaultValue\":\"false\",\"description\":\"Flag indicating if the ticket is escalated\",\"isRequired\":false}", + "description": "Creates a boolean variable 'isEscalated' with default false, optional usage." + }, + { + "inputJson": "{\"variableName\":\"waitTimeSeconds\",\"variableType\":\"number\",\"defaultValue\":\"\",\"description\":\"Time a customer has waited in seconds\",\"isRequired\":false}", + "description": "Generates a number variable 'waitTimeSeconds' without a default value for tracking wait times." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "customer-support.generateSession", + "description": "Generates a detailed customer support session report based on raw interaction data such as chat logs, call transcripts, or ticket updates. Processes input to extract key metrics like session duration, customer sentiment, and resolution status, producing a structured summary of the session for analytics and quality assurance purposes.", + "category": "customer-support", + "parameters": [ + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier of the customer support session to generate the report for.", + "required": true, + "defaultValue": "" + }, + { + "name": "interactionLogs", + "type": "array", + "description": "Array of interaction objects including messages, timestamps, and agent/customer identifiers.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Flag indicating whether to perform sentiment analysis on the interaction messages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code of interaction content to handle appropriate processing and sentiment analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "resolveStatusThreshold", + "type": "number", + "description": "Threshold value (0-1) to classify if the issue was resolved based on confidence scores in the analysis.", + "required": false, + "defaultValue": "0.7" + } + ], + "returns": { + "type": "object", + "description": "Structured session report containing session ID, total duration, participant summary, sentiment scores, resolution status, and key topics/themes discussed." + }, + "aiAgent": { + "useCase": "Use when an AI agent needs to convert raw customer support data into actionable session summaries to understand interaction quality, customer sentiment, and resolution effectiveness. This tool helps deliver analytic reports without manual review of logs or transcripts.", + "limitations": "Cannot replace human judgment for nuanced emotional context or identify all types of resolution failures. Sentiment analysis may be less accurate for highly technical or ambiguous conversations.", + "examples": [ + "Generate a session summary report for sessionId=12345 with full sentiment analysis in English.", + "Analyze customer support logs to determine if the customer's issue was resolved satisfactorily.", + "Produce a summarized session analytics report for multi-language conversations including sentiment metrics." + ] + }, + "tags": [ + "customer-support", + "analytics", + "session-report", + "sentiment-analysis", + "quality-assurance", + "customer-experience", + "ticketing" + ], + "examples": [ + { + "inputJson": "{\"sessionId\":\"sess-001\",\"interactionLogs\":[{\"timestamp\":\"2024-05-01T10:00:00Z\",\"sender\":\"agent\",\"message\":\"Hello, how can I help you today?\"},{\"timestamp\":\"2024-05-01T10:01:00Z\",\"sender\":\"customer\",\"message\":\"I'm having trouble logging into my account.\"},{\"timestamp\":\"2024-05-01T10:05:00Z\",\"sender\":\"agent\",\"message\":\"I have reset your password. Please try logging in now.\"},{\"timestamp\":\"2024-05-01T10:07:00Z\",\"sender\":\"customer\",\"message\":\"It works now, thanks!\"}],\"includeSentimentAnalysis\":true,\"language\":\"en\",\"resolveStatusThreshold\":0.7}", + "description": "Generate a report summarizing a short login-related support session with sentiment analysis in English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "customer-support.createQueue", + "description": "Creates a new customer support queue to organize incoming support tickets or chat requests. Accepts parameters like queue name, department, priority level, and agent assignment rules. Outputs an object confirming queue creation with queue ID and configuration details.", + "category": "customer-support", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifying the support queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "department", + "type": "string", + "description": "The department that the queue will be associated with (e.g., Billing, Technical Support).", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Defines the priority assigned to this queue (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + }, + { + "name": "maxTickets", + "type": "number", + "description": "Maximum number of tickets that can be held in this queue simultaneously.", + "required": false, + "defaultValue": "100" + }, + { + "name": "agentIds", + "type": "array", + "description": "List of agent identifiers assigned to handle tickets in this queue.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "autoAssign", + "type": "boolean", + "description": "Whether tickets in this queue should be automatically assigned to available agents.", + "required": false, + "defaultValue": "true" + }, + { + "name": "escalationMinutes", + "type": "number", + "description": "Number of minutes before a ticket in this queue escalates to higher support level.", + "required": false, + "defaultValue": "60" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique queue ID, queue name, department, configuration details, and creation status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to set up new customer support queues for managing tickets or chats effectively by department, priority, or team assignment rules. It helps structure support workflows and ensures queries are routed properly.", + "limitations": "This tool does not modify or delete existing queues, nor does it assign tickets directly to agents outside of the auto-assignment settings. It only creates queue infrastructure.", + "examples": [ + "Create a high priority billing support queue with automatic agent assignment.", + "Set up a technical support queue limiting max tickets to 50 with escalation after 30 minutes.", + "Create a general inquiries queue with default priority and no specific agent assignments." + ] + }, + "tags": [ + "customer support", + "queue management", + "ticket routing", + "help desk", + "automation" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"BillingUrgent\",\"department\":\"Billing\",\"priorityLevel\":\"high\",\"maxTickets\":50,\"agentIds\":[\"agent123\",\"agent456\"],\"autoAssign\":true,\"escalationMinutes\":30}", + "description": "Create a high priority billing queue with specific agents and quick escalation." + }, + { + "inputJson": "{\"queueName\":\"TechSupport\",\"department\":\"Technical Support\",\"priorityLevel\":\"medium\",\"autoAssign\":true}", + "description": "Create a medium priority technical support queue with default settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "customer-support.createReply", + "description": "Creates a formatted customer support reply message based on the original customer inquiry and specified response content. Accepts the customer's original message, the reply text, optional inclusion of greetings and signatures, and outputs a structured reply ready for sending.", + "category": "customer-support", + "parameters": [ + { + "name": "originalMessage", + "type": "string", + "description": "The customer's original message to which this reply responds.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyText", + "type": "string", + "description": "The main content of the reply message.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeGreeting", + "type": "boolean", + "description": "Whether to include a standard greeting at the beginning of the reply.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSignature", + "type": "boolean", + "description": "Whether to append a standard signature at the end of the reply.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customGreeting", + "type": "string", + "description": "An optional custom greeting to use instead of the default greeting.", + "required": false, + "defaultValue": "" + }, + { + "name": "customSignature", + "type": "string", + "description": "An optional custom signature to use instead of the default signature.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted reply message as a string and metadata about included components." + }, + "aiAgent": { + "useCase": "Use this tool when generating a customer support reply that needs to take the original message context into account and produce a standardized yet customizable response for help desk or support ticket systems.", + "limitations": "This tool does not generate the reply content automatically; it formats given reply text. It does not handle natural language understanding or response suggestion.", + "examples": [ + "Create a reply to a customer complaint including greeting and signature.", + "Generate a brief response without greeting or signature.", + "Use custom greeting and signature for a VIP customer reply." + ] + }, + "tags": [ + "customer support", + "reply generation", + "message formatting", + "help desk" + ], + "examples": [ + { + "inputJson": "{\"originalMessage\":\"I'm having trouble logging into my account.\",\"replyText\":\"We're sorry for the inconvenience. Please try resetting your password using the 'Forgot Password' link.\",\"includeGreeting\":true,\"includeSignature\":true}", + "description": "A reply to a login issue with greeting and signature included." + }, + { + "inputJson": "{\"originalMessage\":\"Thank you for resolving my issue!\",\"replyText\":\"You're welcome! Let us know if you need any more help.\",\"includeGreeting\":false,\"includeSignature\":false}", + "description": "A brief thank you response without greeting or signature." + }, + { + "inputJson": "{\"originalMessage\":\"Can you expedite my order?\",\"replyText\":\"We will prioritize your request and notify you shortly.\",\"includeGreeting\":true,\"includeSignature\":true,\"customGreeting\":\"Dear Valued Customer,\",\"customSignature\":\"Best regards, VIP Support Team\"}", + "description": "Reply with custom greeting and signature for VIP customer." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "customer-support.createChart", + "description": "Generates visual charts representing customer support data such as ticket volumes, resolution times, and customer satisfaction scores. Accepts structured data input and parameters specifying chart type, labels, and styling options, then outputs a chart image or embeddable visualization data.", + "category": "customer-support", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing customer support metrics to visualize, each with numeric values and optional labels.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to create, e.g., 'bar', 'line', 'pie'.", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title of the chart to display.", + "required": false, + "defaultValue": "" + }, + { + "name": "xLabel", + "type": "string", + "description": "Label for the X-axis (if applicable).", + "required": false, + "defaultValue": "" + }, + { + "name": "yLabel", + "type": "string", + "description": "Label for the Y-axis (if applicable).", + "required": false, + "defaultValue": "" + }, + { + "name": "colors", + "type": "array", + "description": "Optional array of color codes to use for the chart elements.", + "required": false, + "defaultValue": "" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Whether to display a legend for the chart.", + "required": false, + "defaultValue": "true" + }, + { + "name": "width", + "type": "number", + "description": "Width of the chart image in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the chart image in pixels.", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the chart image as a base64-encoded PNG string and metadata including type, dimensions, and input summary." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize customer support data such as ticket counts over time, average resolution times by category, or satisfaction ratings distribution. It helps in creating clear, graphical summaries to aid analysis and reporting within customer service contexts.", + "limitations": "Does not perform data analysis or transformation; input data must be prepared and clean. Supports common chart types but does not produce highly customized or interactive charts.", + "examples": [ + "Create a bar chart showing monthly ticket volumes for the last quarter.", + "Generate a pie chart representing percentage breakdown of support issue categories.", + "Produce a line chart tracking average resolution time per week with appropriate axis labels." + ] + }, + "tags": [ + "visualization", + "customer-support", + "charts", + "data-analysis", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"label\":\"January\",\"value\":150},{\"label\":\"February\",\"value\":200},{\"label\":\"March\",\"value\":170}],\"chartType\":\"bar\",\"title\":\"Monthly Ticket Volume\",\"xLabel\":\"Month\",\"yLabel\":\"Tickets\",\"colors\":[\"#4e79a7\",\"#f28e2b\",\"#e15759\"],\"showLegend\":true,\"width\":700,\"height\":400}", + "description": "Bar chart displaying monthly ticket volumes for the first quarter." + }, + { + "inputJson": "{\"data\":[{\"label\":\"Billing\",\"value\":45},{\"label\":\"Technical\",\"value\":30},{\"label\":\"Account\",\"value\":25}],\"chartType\":\"pie\",\"title\":\"Support Issues Breakdown\", \"showLegend\":true}", + "description": "Pie chart showing percentage breakdown of customer support issue categories." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Chart", + "context": null + } + }, + { + "name": "customer-support.createSecret", + "description": "Creates a secret credential for secure customer support operations, such as API keys or tokens. Accepts inputs describing the secret type, associated user or system, and optional metadata. Generates a unique secret value stored securely, returning its identifier and metadata without exposing the raw secret.", + "category": "customer-support", + "parameters": [ + { + "name": "secretType", + "type": "string", + "description": "Type of secret to create (e.g., 'APIKey', 'OAuthToken').", + "required": true, + "defaultValue": "" + }, + { + "name": "associatedEntity", + "type": "string", + "description": "Identifier for the user, system, or service associated with this secret.", + "required": true, + "defaultValue": "" + }, + { + "name": "expiryDate", + "type": "string", + "description": "Optional ISO 8601 date-time string indicating when the secret expires.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs providing additional context or tags for the secret.", + "required": false, + "defaultValue": "" + }, + { + "name": "permissions", + "type": "array", + "description": "List of permissions or scopes assigned to the secret for access control.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the secret identifier, masked or hashed secret representation, associated entity, type, metadata, permissions, and expiry info." + }, + "aiAgent": { + "useCase": "Use this tool when a secure secret or credential is required for customer support systems to authenticate or authorize integrations, services, or users. Ideal for generating API keys, tokens, or other secret credentials tied to specific entities with optional expiration and permissions.", + "limitations": "This tool does not handle secret storage backend setup or secret rotation schedules automatically. It does not reveal the raw secret after creation for security reasons.", + "examples": [ + "Create an API key for a new support chatbot integration with read-only permissions.", + "Generate an OAuth token secret for a support mobile app user expiring in 30 days.", + "Create a secret for system-to-system authentication tagged with environment metadata." + ] + }, + "tags": [ + "security", + "secret", + "customer-support", + "credential", + "API-key", + "token", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"secretType\":\"APIKey\",\"associatedEntity\":\"supportBot123\",\"expiryDate\":\"2025-12-31T23:59:59Z\",\"metadata\":{\"environment\":\"production\",\"project\":\"chatbot\"},\"permissions\":[\"read\"]}", + "description": "Create a production API key for the chatbot support bot with read permission and expiry." + }, + { + "inputJson": "{\"secretType\":\"OAuthToken\",\"associatedEntity\":\"user56789\",\"metadata\":{\"platform\":\"mobileApp\"},\"permissions\":[\"read\",\"write\"]}", + "description": "Generate an OAuth token secret for a mobile app user with read/write scopes and no expiry." + }, + { + "inputJson": "{\"secretType\":\"APIKey\",\"associatedEntity\":\"systemServiceXYZ\",\"metadata\":{\"environment\":\"staging\"},\"permissions\":[\"admin\"]}", + "description": "Create an admin API key for system service on staging environment without expiry." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "customer-support.createHTML", + "description": "Generates customized HTML content for customer support purposes, such as responses, help articles, or ticket updates. Accepts input text, optional styling options, and structural elements to produce clean, semantic HTML output ready for embedding or sending via email or web interfaces.", + "category": "customer-support", + "parameters": [ + { + "name": "contentText", + "type": "string", + "description": "The main textual content to be included in the HTML body, such as support messages or article text.", + "required": true, + "defaultValue": "" + }, + { + "name": "headerText", + "type": "string", + "description": "Optional header or title to be included at the top of the HTML content.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFooter", + "type": "boolean", + "description": "Flag to determine if a standard footer (e.g., company info or contact links) should be included in the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "styleOptions", + "type": "object", + "description": "Object specifying CSS styles such as font family, font size, and colors to customize the appearance.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeLinks", + "type": "boolean", + "description": "If true, email addresses and URLs in contentText are automatically converted to clickable links.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a single field 'html', which holds the generated HTML string incorporating the content, header, optional footer, and styles." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert plain or lightly formatted support text and metadata into well-structured HTML content for customer communication channels like emails, help desk portals, or chat interfaces. Ideal for dynamically generating styled responses or knowledge base content that must be web compatible.", + "limitations": "This tool does not perform complex HTML templating or scripting, does not sanitize arbitrary HTML input for security, and is limited to basic styling and structural elements.", + "examples": [ + "Generate an HTML formatted customer support reply including header and footer.", + "Create a styled help article snippet with default footer disabled.", + "Convert support ticket update text into HTML with clickable links enabled." + ] + }, + "tags": [ + "customer-support", + "html", + "content-generation", + "communication", + "email", + "helpdesk" + ], + "examples": [ + { + "inputJson": "{\"contentText\":\"Dear customer, your issue has been resolved successfully.\",\"headerText\":\"Support Update\",\"includeFooter\":true,\"styleOptions\":{\"fontFamily\":\"Arial\",\"fontSize\":\"14px\",\"color\":\"#333\"},\"includeLinks\":true}", + "description": "Generate a typical customer support update with header and footer plus custom styling." + }, + { + "inputJson": "{\"contentText\":\"Please visit https://support.example.com for FAQs.\",\"headerText\":\"Help Article\",\"includeFooter\":false,\"styleOptions\":{\"fontFamily\":\"Verdana\",\"fontSize\":\"12px\",\"color\":\"#000\"},\"includeLinks\":true}", + "description": "Create a styled help article snippet with clickable link, no footer." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "customer-support.createPipeline", + "description": "Creates a customizable support ticket processing pipeline by defining sequential workflow stages for handling customer issues. Accepts configuration inputs including stage names, conditions, assigned departments, and escalation rules. Outputs a structured pipeline object representing the ordered steps and transitions for automated ticket routing and resolution tracking.", + "category": "customer-support", + "parameters": [ + { + "name": "pipelineName", + "type": "string", + "description": "The unique name identifying the support pipeline to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "stages", + "type": "array", + "description": "An ordered list of workflow stages, each defining a stage name, conditions to enter the stage, responsible team, and any escalation settings.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description about the purpose and scope of the pipeline.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoAssign", + "type": "boolean", + "description": "Flag indicating whether tickets should be automatically assigned to agents within stages if possible.", + "required": false, + "defaultValue": "false" + }, + { + "name": "escalationTimeout", + "type": "number", + "description": "Time in hours after which a ticket in a stage without progress is escalated to higher support levels.", + "required": false, + "defaultValue": "24" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created pipeline, including its unique ID, name, stages array, and configuration metadata." + }, + "aiAgent": { + "useCase": "Use this tool to design and deploy structured customer support workflows that automate routing, assignment, and escalation of service tickets. It helps in systematically managing ticket progress through defined stages for efficient resolution.", + "limitations": "This tool does not handle ticket content processing, automated reply generation, or direct integration with external ticketing systems. It only defines pipeline structure and metadata.", + "examples": [ + "Create a multi-stage support pipeline for billing issues including verification, approval, and closure stages.", + "Set up an escalation pipeline that automatically promotes tickets to higher support levels if not resolved within 48 hours.", + "Define a new ticket processing pipeline for technical support with automatic agent assignment at each stage." + ] + }, + "tags": [ + "customer-support", + "workflow", + "automation", + "ticket-routing", + "pipeline", + "help-desk", + "escalation" + ], + "examples": [ + { + "inputJson": "{\"pipelineName\":\"BillingSupportPipeline\",\"stages\":[{\"stageName\":\"Verification\",\"conditions\":\"ticket.category == 'billing'\",\"assignedDepartment\":\"Billing Team\",\"escalationThreshold\":24},{\"stageName\":\"Approval\",\"conditions\":\"ticket.amount > 1000\",\"assignedDepartment\":\"Finance Team\",\"escalationThreshold\":48},{\"stageName\":\"Closure\",\"conditions\":\"ticket.resolved == true\",\"assignedDepartment\":\"Customer Service\",\"escalationThreshold\":12}],\"description\":\"Pipeline to handle billing related tickets with approval step for high amounts.\",\"autoAssign\":true,\"escalationTimeout\":24}", + "description": "Creates a billing support pipeline with verification, approval for amounts over 1000, and closure stages. Automatic agent assignment enabled." + }, + { + "inputJson": "{\"pipelineName\":\"TechSupportEscalation\",\"stages\":[{\"stageName\":\"InitialResponse\",\"conditions\":\"ticket.category == 'technical'\",\"assignedDepartment\":\"Tech Support Level 1\",\"escalationThreshold\":12},{\"stageName\":\"Level2Support\",\"conditions\":\"ticket.status == 'escalated'\",\"assignedDepartment\":\"Tech Support Level 2\",\"escalationThreshold\":24},{\"stageName\":\"ManagerReview\",\"conditions\":\"ticket.status == 'escalated_twice'\",\"assignedDepartment\":\"Tech Support Manager\",\"escalationThreshold\":48}],\"autoAssign\":false,\"escalationTimeout\":24}", + "description": "Defines a technical support pipeline with escalating levels of support assigned sequentially if tickets remain unresolved." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "customer-support.createWorkflow", + "description": "This tool allows creating a customer support workflow by accepting workflow details such as name, triggers, actions, and conditions. It processes this input to build a structured workflow object that can be integrated into a help desk system to automate routing and handling of support tickets. The output is a detailed workflow configuration object confirming creation.", + "category": "customer-support", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name identifier for the new customer support workflow.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief description of what this workflow does or its purpose.", + "required": false, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "List of events or conditions that initiate the workflow, e.g., 'newTicket', 'ticketEscalated'.", + "required": true, + "defaultValue": "" + }, + { + "name": "actions", + "type": "array", + "description": "Sequence of actions to perform when triggered, such as assigning agents, sending notifications, or updating ticket status.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "array", + "description": "Optional conditional rules to evaluate before executing actions, like ticket priority, customer type, or time constraints.", + "required": false, + "defaultValue": "" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Flag indicating if the workflow should be active immediately after creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A workflow configuration object containing the workflow ID, name, description, triggers, conditions, actions, and activation status, confirming successful creation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate customer support processes by defining workflows that trigger based on ticket events, conditions, and execute a series of actions like assignments and notifications. It helps in scaling support operations and reducing manual intervention.", + "limitations": "This tool does not validate the internal logic correctness of actions or triggers beyond basic schema; it cannot execute the workflow or integrate with external ticketing platforms directly.", + "examples": [ + "Create a workflow named 'High Priority Auto-Assign' that triggers on new tickets marked as high priority and assigns them to senior support agents.", + "Set up a workflow that escalates tickets not updated in 48 hours by sending reminder notifications.", + "Design a workflow to send a satisfaction survey once a ticket is closed if the customer is tagged as 'VIP'." + ] + }, + "tags": [ + "customer-support", + "workflow", + "automation", + "ticketing", + "helpdesk", + "support" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"High Priority Auto-Assign\",\"description\":\"Auto-assigns new high priority tickets to senior agents\",\"triggers\":[\"newTicket\"],\"conditions\":[{\"field\":\"priority\",\"operator\":\"equals\",\"value\":\"high\"}],\"actions\":[{\"type\":\"assignAgent\",\"parameters\":{\"agentGroup\":\"senior\"}}],\"isActive\":true}", + "description": "Creates a workflow that triggers on new tickets with high priority and assigns them to the senior agent group." + }, + { + "inputJson": "{\"workflowName\":\"Stale Ticket Escalation\",\"description\":\"Escalates tickets not updated in 48 hours\",\"triggers\":[\"ticketUpdated\"],\"conditions\":[{\"field\":\"lastUpdate\",\"operator\":\"olderThanHours\",\"value\":48}],\"actions\":[{\"type\":\"sendNotification\",\"parameters\":{\"to\":\"manager\"}}, {\"type\":\"changeStatus\",\"parameters\":{\"status\":\"escalated\"}}],\"isActive\":true}", + "description": "Workflow to escalate tickets that have not been updated in 48 hours by notifying managers and changing ticket status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "customer-support.createSchema", + "description": "Creates a JSON schema for customer support data structures based on user-defined fields and validation rules. Accepts field definitions including names, types, required flags, and constraints, then outputs a compliant JSON schema for use in data validation or integration.", + "category": "customer-support", + "parameters": [ + { + "name": "fields", + "type": "array", + "description": "An array of objects defining each field's name, type, whether it's required, and optional validation constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaTitle", + "type": "string", + "description": "A human-readable title for the schema.", + "required": false, + "defaultValue": "\"CustomerSupportSchema\"" + }, + { + "name": "schemaDescription", + "type": "string", + "description": "A brief description explaining the purpose of the schema.", + "required": false, + "defaultValue": "\"Schema for customer support data validation.\"" + }, + { + "name": "additionalProperties", + "type": "boolean", + "description": "Allow fields not explicitly defined in the schema (true) or prohibit them (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing a JSON Schema draft-07 compliant schema defining the structure, types, and validation rules of customer support data as specified." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate JSON schemas to validate or standardize customer support datasets, ticketing information, or user input forms. Ideal for creating consistent data validation and integration templates for customer support workflows.", + "limitations": "This tool generates schema definitions but does not validate actual data or handle schema versioning beyond draft-07 compliance. It does not support dynamic or deeply nested relational schemas beyond basic JSON Schema capabilities.", + "examples": [ + "Create a schema for customer tickets with required fields 'ticketId' (string), 'priority' (string), and optional 'notes' (string).", + "Generate a JSON schema describing agent profiles with 'agentId' (string), 'name' (string), and 'active' (boolean)." + ] + }, + "tags": [ + "customer-support", + "schema", + "json-schema", + "validation", + "data-structure" + ], + "examples": [ + { + "inputJson": "{\"fields\":[{\"name\":\"ticketId\",\"type\":\"string\",\"required\":true},{\"name\":\"priority\",\"type\":\"string\",\"required\":true},{\"name\":\"notes\",\"type\":\"string\",\"required\":false}],\"schemaTitle\":\"SupportTicket\",\"schemaDescription\":\"Schema for support tickets.\",\"additionalProperties\":false}", + "description": "Generate a JSON schema for support tickets with required ticketId and priority fields and optional notes." + }, + { + "inputJson": "{\"fields\":[{\"name\":\"agentId\",\"type\":\"string\",\"required\":true},{\"name\":\"name\",\"type\":\"string\",\"required\":true},{\"name\":\"active\",\"type\":\"boolean\",\"required\":false}],\"schemaTitle\":\"AgentProfile\",\"schemaDescription\":\"Schema for support agent profiles.\",\"additionalProperties\":false}", + "description": "Create a schema to validate support agent profiles with agentId, name, and an optional active status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "customer-support.createResume", + "description": "Generates a professional resume document based on customer-provided personal details, work experience, education, skills, and other relevant information. Outputs a formatted resume as a PDF or editable document format suitable for job applications and professional use.", + "category": "customer-support", + "parameters": [ + { + "name": "personalDetails", + "type": "object", + "description": "Basic personal information including name, contact info, and professional summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "List of work history entries with company name, role, duration, and key responsibilities.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "List of educational qualifications including institution, degree, and graduation year.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Array of relevant professional skills and competencies.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "certifications", + "type": "array", + "description": "List of professional certifications and courses completed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "Language code to generate the resume in (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired resume output format: 'pdf' or 'docx'.", + "required": false, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resume content encoded as a base64 string and metadata such as file name and MIME type." + }, + "aiAgent": { + "useCase": "Use this tool whenever a customer needs a professionally formatted resume created from structured career and personal data, enabling quick generation of application-ready documents.", + "limitations": "Cannot guarantee optimal design for all industries or personalized writing style; may require manual editing for best results.", + "examples": [ + "Create a resume for a software engineer with 5 years experience at two companies.", + "Generate a resume highlighting education and skills for a recent graduate.", + "Produce a PDF resume with certifications and multiple languages listed." + ] + }, + "tags": [ + "customer-support", + "resume", + "document-generation", + "professional-document", + "career", + "pdf", + "docx" + ], + "examples": [ + { + "inputJson": "{\"personalDetails\":{\"name\":\"Jane Doe\",\"email\":\"jane.doe@example.com\",\"phone\":\"555-1234\",\"summary\":\"Experienced project manager in IT sector.\"},\"workExperience\":[{\"company\":\"Tech Solutions\",\"role\":\"Project Manager\",\"duration\":\"2018-2023\",\"responsibilities\":\"Managed software implementation projects.\"}],\"education\":[{\"institution\":\"State University\",\"degree\":\"B.Sc. Computer Science\",\"graduationYear\":2017}],\"skills\":[\"Project Management\",\"Agile\",\"Scrum\"],\"certifications\":[\"PMP\"],\"language\":\"en\",\"outputFormat\":\"pdf\"}", + "description": "Create a PDF resume for an experienced IT project manager with detailed work experience and certifications." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "marketing-automation.renderWord", + "description": "Renders a word or phrase into a styled graphic image optimized for marketing materials. Accepts text input along with style parameters like font, color, size, and effects, and outputs a base64-encoded PNG image, suitable for embedding in campaigns or ads.", + "category": "marketing-automation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The word or phrase to be rendered visually.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "Font family name to use for text rendering (e.g., Arial, Helvetica).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for the rendered text.", + "required": false, + "defaultValue": "48" + }, + { + "name": "fontColor", + "type": "string", + "description": "CSS color value for the text color (e.g., #FF0000, rgb(0,0,0)).", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "CSS color value for the background behind the text or transparent if empty.", + "required": false, + "defaultValue": "" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render text in bold style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render text in italic style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "textShadow", + "type": "string", + "description": "CSS-compatible text shadow property value to add effects like shadows.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64-encoded PNG image of the rendered word with specified styles." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate visually styled text graphics dynamically for marketing campaigns, ads, emails, or social posts, ensuring consistent branding and visually appealing callouts without manual graphic design work.", + "limitations": "This tool does not generate multi-line formatted paragraphs or complex vector graphics beyond styled single text strings.", + "examples": [ + "Render the word 'Sale' in bold red font for a promotional banner.", + "Create the phrase 'Limited Offer' in italic with a subtle shadow effect for social media.", + "Generate the text 'New Arrival' with transparent background and blue font color for email headers." + ] + }, + "tags": [ + "marketing", + "rendering", + "visualization", + "branding", + "automation", + "text", + "graphics" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Sale\",\"fontFamily\":\"Arial\",\"fontSize\":64,\"fontColor\":\"#FF0000\",\"bold\":true,\"italic\":false,\"textShadow\":\"2px 2px 4px #000000\"}", + "description": "Render 'Sale' word in large bold red font with black shadow for a marketing banner." + }, + { + "inputJson": "{\"text\":\"Limited Offer\",\"fontFamily\":\"Helvetica\",\"fontSize\":48,\"fontColor\":\"#0000FF\",\"bold\":false,\"italic\":true,\"backgroundColor\":\"#FFFFFF\"}", + "description": "Render 'Limited Offer' in italic blue font on white background for social media post." + }, + { + "inputJson": "{\"text\":\"New Arrival\",\"fontFamily\":\"Verdana\",\"fontSize\":36,\"fontColor\":\"#007BFF\",\"backgroundColor\":\"\",\"bold\":false,\"italic\":false,\"textShadow\":\"\"}", + "description": "Render 'New Arrival' text in medium blue font with transparent background for email header." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "marketing-automation.renderText", + "description": "Renders marketing text content by applying specified formatting, templates, and personalization variables to generate customized marketing messages. Accepts raw text input plus formatting options and outputs fully rendered, ready-to-use marketing text suitable for campaigns or channels.", + "category": "marketing-automation", + "parameters": [ + { + "name": "rawText", + "type": "string", + "description": "The raw marketing message content with optional placeholders for personalization variables.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Identifier of a predefined text template to use for consistent styling and layout. If provided, rawText is integrated into the template.", + "required": false, + "defaultValue": "" + }, + { + "name": "personalizationVariables", + "type": "object", + "description": "Key-value pairs to replace placeholders in the raw text or template with personalized data (e.g., recipientName, offerCode).", + "required": false, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Options for text styling such as font, color, size, and emphasis (bold/italic) to enhance message appearance.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Target output format like 'plainText', 'HTML', or 'Markdown' to suit different marketing channels.", + "required": false, + "defaultValue": "plainText" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully rendered marketing text content as a string in the specified output format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce finalized marketing messages by combining raw textual content, templates, and recipient-specific personalization data, with optional styling to generate polished marketing texts for emails, ads, or social media posts.", + "limitations": "This tool does not generate marketing content from scratch or perform semantic content analysis. It focuses on rendering and formatting given input text. It cannot validate template correctness or fetch personalization data itself.", + "examples": [ + "Render a customized promotional email text with recipient name and coupon code inserted, using an HTML template.", + "Format raw marketing text as bold and colored HTML for social media campaign posts.", + "Generate plain text marketing message by replacing placeholders with user attributes without any additional styling." + ] + }, + "tags": [ + "marketing", + "rendering", + "text", + "personalization", + "templates", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"rawText\":\"Hello {{recipientName}}, your exclusive offer code is {{offerCode}}.\",\"templateId\":\"emailPromoBasic\",\"personalizationVariables\":{\"recipientName\":\"John\",\"offerCode\":\"SAVE20\"},\"formattingOptions\":{\"font\":\"Arial\",\"color\":\"#333333\",\"bold\":true},\"outputFormat\":\"HTML\"}", + "description": "Render a personalized promotional email with placeholders replaced in HTML format." + }, + { + "inputJson": "{\"rawText\":\"New product launch next week! Don't miss out.\",\"outputFormat\":\"plainText\"}", + "description": "Render simple plain text marketing message without personalization or template." + }, + { + "inputJson": "{\"rawText\":\"Limited time deal: {{dealDetails}}.\",\"personalizationVariables\":{\"dealDetails\":\"50% off all items\"},\"formattingOptions\":{\"italic\":true},\"outputFormat\":\"Markdown\"}", + "description": "Generate Markdown formatted marketing text with personalized deal details and italic style." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Text", + "context": null + } + }, + { + "name": "marketing-automation.formatParagraph", + "description": "Formats a marketing campaign paragraph text according to specified style options such as text alignment, font style, emphasis, and line spacing. Accepts raw paragraph text input and outputs the formatted HTML string or plaintext with applied styles, ready for inclusion in marketing materials or emails.", + "category": "marketing-automation", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The raw paragraph text content to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment option; accepts 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "fontStyle", + "type": "string", + "description": "Font style to apply; options include 'normal', 'italic', or 'oblique'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "fontWeight", + "type": "string", + "description": "Font weight for emphasis; options are 'normal', 'bold', or 'bolder'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "lineSpacing", + "type": "number", + "description": "Line spacing multiplier; e.g., 1.0 for single spacing, 1.5 for one-and-a-half spacing.", + "required": false, + "defaultValue": "1.0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output; 'html' returns HTML markup with inline styling, 'plaintext' returns styled plain text if possible.", + "required": false, + "defaultValue": "html" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted paragraph string with applied styles in the specified output format. The key 'formattedParagraph' holds the result." + }, + "aiAgent": { + "useCase": "Use this tool when generating or customizing marketing content paragraphs that require consistent styling such as emails, newsletters, or advertisements. It helps produce properly aligned and styled text outputs that can be embedded directly or transformed into HTML email content or rich text formats.", + "limitations": "This tool does not perform spellchecking, grammar correction, or semantic content analysis. It only formats existing text according to style parameters and does not generate new content or handle complex layout beyond paragraph-level styling.", + "examples": [ + "Format a paragraph with center alignment and bold weight for an email intro.", + "Produce justified paragraph text in italic style with increased line spacing for a newsletter.", + "Output a simple left-aligned plaintext paragraph with normal font style for a plain text campaign." + ] + }, + "tags": [ + "marketing", + "automation", + "formatting", + "text", + "email", + "campaign", + "content" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Welcome to our spring sale! Enjoy up to 50% off on selected items.\",\"alignment\":\"center\",\"fontStyle\":\"italic\",\"fontWeight\":\"bold\",\"lineSpacing\":1.5,\"outputFormat\":\"html\"}", + "description": "Center aligned, italic and bold paragraph with 1.5 line spacing in HTML format." + }, + { + "inputJson": "{\"text\":\"Don't miss out on exclusive deals only available this weekend.\",\"alignment\":\"justify\",\"fontStyle\":\"normal\",\"fontWeight\":\"normal\",\"lineSpacing\":1.2,\"outputFormat\":\"html\"}", + "description": "Justified paragraph with normal font style and moderate line spacing in HTML." + }, + { + "inputJson": "{\"text\":\"Subscribe now for weekly updates.\",\"alignment\":\"left\",\"fontStyle\":\"normal\",\"fontWeight\":\"normal\",\"lineSpacing\":1.0,\"outputFormat\":\"plaintext\"}", + "description": "Plaintext output with left alignment and single line spacing for simple campaigns." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Paragraph", + "context": null + } + }, + { + "name": "marketing-automation.formatSentence", + "description": "Formats and customizes marketing sentences by applying capitalization styles, inserting variables, and adding optional suffixes or prefixes. Accepts a sentence template with placeholders and outputs a properly formatted marketing sentence ready for campaign use.", + "category": "marketing-automation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The marketing sentence template to format, may include variable placeholders enclosed in curly braces, e.g., {productName}.", + "required": true, + "defaultValue": "" + }, + { + "name": "variables", + "type": "object", + "description": "Key-value pairs to replace placeholders in the sentence template for personalized content.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "capitalizeStyle", + "type": "string", + "description": "Capitalization style to apply to the whole formatted sentence. Options: 'none', 'firstLetter', 'allCaps', 'titleCase'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "prefix", + "type": "string", + "description": "Optional string to prepend to the sentence for added context or branding.", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "Optional string to append to the sentence to add calls to action or hashtags.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted marketing sentence as a string, ready to be used in automation workflows." + }, + "aiAgent": { + "useCase": "Use this tool when a marketing automation workflow needs to dynamically generate and format marketing sentences with personalized variables and consistent capitalization styles across campaigns. It helps to standardize marketing messages and automate content generation.", + "limitations": "This tool does not do advanced natural language generation or grammar correction beyond simple placeholder replacement and capitalization. It will not optimize sentence semantics or sentiment.", + "examples": [ + "Format a promo sentence with product name variable and capitalize the first letter.", + "Add a hashtag suffix to a marketing sentence and convert it to all caps.", + "Prepend a branding phrase as a prefix and format sentence to title case." + ] + }, + "tags": [ + "marketing", + "automation", + "formatting", + "personalization", + "text-processing", + "campaign", + "sentence" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"Get your {productName} now! Limited offer.\",\"variables\":{\"productName\":\"SmartWatch X\"},\"capitalizeStyle\":\"firstLetter\",\"prefix\":\"Special Deal: \",\"suffix\":\" #Sale\"}", + "description": "Format a marketing sentence with variable replacement, prefix, suffix, and capitalize only the first letter." + }, + { + "inputJson": "{\"sentence\":\"exclusive access to {eventName} starting today.\",\"variables\":{\"eventName\":\"Summer Festival\"},\"capitalizeStyle\":\"titleCase\",\"prefix\":\"\",\"suffix\":\"\"}", + "description": "Generate a marketing sentence using title case capitalization without prefixes or suffixes." + }, + { + "inputJson": "{\"sentence\":\"don't miss out on the {discount}% discount!\",\"variables\":{\"discount\":\"30\"},\"capitalizeStyle\":\"allCaps\",\"prefix\":\"Attention! \",\"suffix\":\"\"}", + "description": "Create a fully capitalized marketing sentence with a prefix and dynamic discount variable." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "marketing-automation.formatCSV", + "description": "This tool accepts raw CSV data or CSV-formatted strings from marketing campaign exports. It processes the CSV by standardizing delimiters, trimming whitespace, optionally normalizing header case, formatting date fields uniformly, and ensuring consistent quoting for special characters. The output is a cleaned, well-structured CSV string ready for reliable import or further analysis.", + "category": "marketing-automation", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "Raw CSV data as a string to be formatted and cleaned.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to use in the output CSV (e.g., comma, semicolon).", + "required": false, + "defaultValue": "," + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from all fields.", + "required": false, + "defaultValue": "true" + }, + { + "name": "normalizeHeaders", + "type": "boolean", + "description": "If true, converts all header names to lowercase and replaces spaces with underscores.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Desired date format for date fields (e.g., 'YYYY-MM-DD'). If empty, dates are unchanged.", + "required": false, + "defaultValue": "" + }, + { + "name": "quoteAllFields", + "type": "boolean", + "description": "Whether to quote all fields in the output CSV, regardless of content.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single string property 'formattedCSV' which holds the cleaned and formatted CSV data." + }, + "aiAgent": { + "useCase": "Use this tool when preparing CSV data from marketing campaign exports or reports for ingestion into analytics systems, ensuring consistent delimiter, cleaned data fields, normalized headers, and uniform date formats. This helps eliminate import errors and standardizes data preprocessing.", + "limitations": "This tool does not parse or validate CSV schema beyond formatting; it cannot infer column data types or fix corrupted CSV structure. Complex transformations or merges are out of scope.", + "examples": [ + "Format raw CSV with inconsistent spacing and header cases for clean import.", + "Standardize the delimiter from semicolon to comma with trimmed fields.", + "Convert date fields to ISO format and quote all CSV fields for compatibility." + ] + }, + "tags": [ + "marketing", + "csv", + "data-formatting", + "automation", + "data-cleaning", + "campaign-analysis" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"Name , Email , Date Signed Up\\n Alice , alice@example.com , 01/22/2023 \",\"delimiter\":\",\",\"trimWhitespace\":true,\"normalizeHeaders\":true,\"dateFormat\":\"YYYY-MM-DD\",\"quoteAllFields\":false}", + "description": "Format CSV with trimmed spaces, normalized headers, and ISO date format." + }, + { + "inputJson": "{\"csvData\":\"name;email;signup_date\\nBob;bob@example.com;22-01-2023\",\"delimiter\":\";\",\"trimWhitespace\":true,\"normalizeHeaders\":false,\"dateFormat\":\"YYYY-MM-DD\",\"quoteAllFields\":true}", + "description": "Use semicolon delimiter, quote all fields, and format dates uniformly." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "marketing-automation.draftText", + "description": "Generates marketing text content such as emails, social media posts, or ad copy based on provided parameters including campaign goals, target audience, tone, and keywords. Takes structured input describing the context, then produces tailored textual drafts ready for review or direct use in campaigns.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignGoal", + "type": "string", + "description": "The primary objective of the marketing campaign (e.g., brand awareness, lead generation).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended audience including demographics and interests.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone or style of the text (e.g., formal, casual, humorous).", + "required": false, + "defaultValue": "\"formal\"" + }, + { + "name": "keywords", + "type": "array", + "description": "List of key terms or phrases to incorporate for SEO or emphasis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "contentType", + "type": "string", + "description": "Type of marketing content to generate (e.g., email, social post, ad copy).", + "required": true, + "defaultValue": "" + }, + { + "name": "length", + "type": "number", + "description": "Approximate desired length of the text in words.", + "required": false, + "defaultValue": "100" + }, + { + "name": "callToAction", + "type": "string", + "description": "Specific call to action to include in the marketing text.", + "required": false, + "defaultValue": "\"\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing text draft and metadata such as word count and content type." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to create customized marketing content quickly based on campaign specifics and target demographics, reducing manual drafting efforts and ensuring tone and keywords align with campaign goals.", + "limitations": "It cannot replace human creativity entirely, may not fully capture brand-specific nuances without detailed input, and generated text may require editing to fit legal or compliance standards.", + "examples": [ + "Generate a friendly social media post for a new product launch targeting young adults.", + "Draft a formal email for a lead generation campaign with keywords about cloud services.", + "Create a short ad copy promoting a summer sale with a strong call to action." + ] + }, + "tags": [ + "marketing", + "content-generation", + "automation", + "text-drafting", + "campaigns", + "copywriting", + "AI-content" + ], + "examples": [ + { + "inputJson": "{\"campaignGoal\":\"lead generation\",\"targetAudience\":\"small business owners aged 30-50 interested in productivity tools\",\"tone\":\"professional\",\"keywords\":[\"efficiency\",\"automation\",\"growth\"],\"contentType\":\"email\",\"length\":150,\"callToAction\":\"Schedule your free demo today\"}", + "description": "Generate a professional email aimed at small business owners to encourage scheduling a demo." + }, + { + "inputJson": "{\"campaignGoal\":\"brand awareness\",\"targetAudience\":\"millennials interested in fitness and wellness\",\"tone\":\"casual\",\"keywords\":[\"healthy lifestyle\",\"community\",\"support\"],\"contentType\":\"social post\",\"length\":50}", + "description": "Create a casual social media post promoting a fitness community brand targeting millennials." + }, + { + "inputJson": "{\"campaignGoal\":\"sales promotion\",\"targetAudience\":\"general consumers\",\"tone\":\"energetic\",\"keywords\":[\"discount\",\"limited time\",\"save now\"],\"contentType\":\"ad copy\",\"length\":30,\"callToAction\":\"Shop now and save!\"}", + "description": "Short, energetic ad copy promoting a limited-time discount offer with a direct call to action." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Text", + "context": null + } + }, + { + "name": "marketing-automation.formatEndpoint", + "description": "Formats and validates marketing API endpoint URLs based on input parameters such as base URL, path segments, and query parameters. Ensures the endpoint is properly encoded and structured for use in automated marketing campaign integrations or API calls.", + "category": "marketing-automation", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL of the marketing API endpoint (e.g., https://api.marketingplatform.com).", + "required": true, + "defaultValue": "" + }, + { + "name": "pathSegments", + "type": "array", + "description": "An array of path segments to append to the base URL, specifying endpoint routes or resources.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "queryParams", + "type": "object", + "description": "A key-value map of query parameters to include in the endpoint URL, properly encoded.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "encodeParameters", + "type": "boolean", + "description": "Whether to URL-encode path segments and query parameters for safe transmission.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully formatted and validated endpoint URL as a string property named 'formattedEndpoint'." + }, + "aiAgent": { + "useCase": "Use this tool when constructing API endpoint URLs dynamically for marketing automation workflows, campaign management, or analytics integrations. It helps ensure URL paths and queries conform to URI standards and prevents malformed requests that could cause integration errors.", + "limitations": "This tool does not perform network requests or validate endpoint availability; it focuses solely on string formatting and encoding of URL components.", + "examples": [ + "Format endpoint with base URL and multiple path segments and query parameters for an email campaign API call.", + "Generate a fully encoded endpoint URL to retrieve marketing analytics data with filter parameters.", + "Create an endpoint URL for campaign status update with dynamic parameters to be used by an automation script." + ] + }, + "tags": [ + "marketing", + "automation", + "API", + "URL", + "formatting", + "integration", + "endpoint" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://api.marketingplatform.com\",\"pathSegments\":[\"campaigns\",\"1234\",\"actions\"],\"queryParams\":{\"actionType\":\"email_open\",\"limit\":\"50\"},\"encodeParameters\":true}", + "description": "Constructs a URL for campaign actions with specific filters and URL-encoded parameters." + }, + { + "inputJson": "{\"baseUrl\":\"https://track.example.com/api\",\"pathSegments\":[\"events\"],\"queryParams\":{\"event\":\"click\",\"source\":\"newsletter\"},\"encodeParameters\":true}", + "description": "Formats a tracking events endpoint with query parameters for event type and source." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "marketing-automation.draftWord", + "description": "Generates marketing campaign wordings such as slogans, call-to-action phrases, or product descriptions based on provided campaign context, target audience, and tone preferences. Accepts inputs on campaign details and outputs optimized wordings ready for use in marketing materials.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name or title of the marketing campaign to contextualize the wording.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the target audience demographics or psychographics for tailored wording.", + "required": true, + "defaultValue": "" + }, + { + "name": "desiredTone", + "type": "string", + "description": "The tone or style of wording desired, e.g., friendly, professional, urgent.", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "wordingType", + "type": "string", + "description": "Type of marketing wording to generate, such as slogan, callToAction, or productDescription.", + "required": true, + "defaultValue": "" + }, + { + "name": "productFeatures", + "type": "array", + "description": "List of key product features or benefits to highlight in the wording.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in characters) of the generated wording.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing wording string appropriate for the campaign." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate persuasive, concise marketing wordings tailored to specific campaigns and audiences for slogans, CTAs, or descriptions that fit defined tone and length constraints.", + "limitations": "Cannot guarantee brand compliance or legal approval; may not fully capture nuanced brand voice without extensive input. Does not produce full-length content like blogs or emails, only short wordings.", + "examples": [ + "Generate a catchy slogan for a youth-targeted eco-friendly apparel campaign with a friendly tone.", + "Create a professional call-to-action phrase for a B2B software product aimed at efficiency.", + "Draft a concise product description highlighting three key features of a new smartphone." + ] + }, + "tags": [ + "marketing", + "automation", + "copywriting", + "content-generation", + "branding", + "slogan", + "call-to-action" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Spring Launch\",\"targetAudience\":\"Young adults interested in sustainable fashion\",\"desiredTone\":\"friendly\",\"wordingType\":\"slogan\",\"productFeatures\":[\"eco-friendly materials\",\"affordable pricing\"],\"maxLength\":50}", + "description": "Generate a friendly slogan for a sustainable fashion campaign aimed at young adults." + }, + { + "inputJson": "{\"campaignName\":\"Enterprise Efficiency Boost\",\"targetAudience\":\"Corporate executives\",\"desiredTone\":\"professional\",\"wordingType\":\"callToAction\",\"productFeatures\":[\"automated workflows\",\"time-saving\"],\"maxLength\":80}", + "description": "Create a professional call-to-action phrase for a B2B software product targeting executives." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "marketing-automation.buildQuery", + "description": "Constructs a dynamic marketing query string or object based on specified campaign parameters, audience filters, and behavioral criteria. Accepts inputs like campaign type, audience segments, conversion goals, and date ranges, then processes these to generate optimized queries for targeting or analysis in marketing platforms. Outputs a query object or string ready for API or database use.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign, e.g., email, social, search, display.", + "required": true, + "defaultValue": "" + }, + { + "name": "audienceSegments", + "type": "array", + "description": "List of audience segments or tags to filter the query.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionGoal", + "type": "string", + "description": "Primary conversion metric to optimize for, e.g., clicks, purchases.", + "required": false, + "defaultValue": "clicks" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the query filter range in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the query filter range in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "includeInactiveUsers", + "type": "boolean", + "description": "Whether to include users who have been inactive in the past period.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of results or records to return, for limiting data size.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed query string and optionally a structured query object suitable for marketing platform APIs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate precise, customizable marketing queries that combine multiple filtering criteria for campaign targeting or performance analysis. Useful for preparing data queries for marketing automation platforms, CRM, or ad management systems requiring complex, parameterized queries.", + "limitations": "This tool does not execute queries or fetch data; it only builds query strings/objects. It may not support all platform-specific query syntaxes without further adaptation. It requires valid inputs to form syntactically correct queries.", + "examples": [ + "Build a query for an email campaign targeting recent purchasers in the last 30 days focusing on purchase conversions.", + "Create a query to analyze social media campaign audience segments including inactive users over the past 6 months.", + "Generate a query for a search campaign limited to specific user tags excluding inactive users." + ] + }, + "tags": [ + "marketing", + "automation", + "query", + "campaign", + "audience", + "filter", + "performance" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"audienceSegments\":[\"recent-purchasers\",\"vip-customers\"],\"conversionGoal\":\"purchase\",\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"includeInactiveUsers\":false,\"maxResults\":500}", + "description": "A query for an email campaign targeting recent purchasers and VIP customers in April 2024 focusing on purchase conversions, excluding inactive users, limiting results to 500." + }, + { + "inputJson": "{\"campaignType\":\"social\",\"audienceSegments\":[\"engaged-users\"],\"conversionGoal\":\"clicks\",\"startDate\":\"2023-11-01\",\"endDate\":\"2024-04-30\",\"includeInactiveUsers\":true}", + "description": "A social campaign query targeting engaged users including inactive users over the last 6 months for click conversion optimization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "marketing-automation.composeNotification", + "description": "This tool generates a tailored marketing notification message based on inputs such as audience segment, message purpose, tone, and channel. It processes these to compose a ready-to-send notification text suited for email, SMS, or app push notifications.", + "category": "marketing-automation", + "parameters": [ + { + "name": "audienceSegment", + "type": "string", + "description": "Specifies the target audience segment for the notification (e.g., 'new customers', 'loyal users').", + "required": true, + "defaultValue": "" + }, + { + "name": "messagePurpose", + "type": "string", + "description": "Defines the main goal of the notification (e.g., 'promotion', 'reminder', 'announcement').", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Sets the tone of the message (e.g., 'formal', 'friendly', 'urgent').", + "required": false, + "defaultValue": "friendly" + }, + { + "name": "channel", + "type": "string", + "description": "Indicates the delivery channel such as 'email', 'sms', or 'push notification'.", + "required": true, + "defaultValue": "" + }, + { + "name": "productName", + "type": "string", + "description": "Optional name of the product or service to include in the notification.", + "required": false, + "defaultValue": "" + }, + { + "name": "callToAction", + "type": "string", + "description": "The call to action text to prompt recipients to respond or engage.", + "required": false, + "defaultValue": "Learn more" + }, + { + "name": "includeDiscount", + "type": "boolean", + "description": "If true, includes a discount or offer in the notification if applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "characterLimit", + "type": "number", + "description": "Optional limit on the message length, useful for SMS or push notifications.", + "required": false, + "defaultValue": "160" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed notification message text and metadata including channel and intended audience." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate marketing notification messages tailored for specific audience segments and channels, ensuring tone and call to action align with campaign goals. Ideal for creating email subject lines, SMS promotions, or app push alerts quickly.", + "limitations": "Does not send notifications, only composes message text. May generate generic content that requires review to ensure brand compliance and legal standards. Does not personalize content beyond provided parameters.", + "examples": [ + "Compose a friendly email promotion for new customers about a sale on the latest product.", + "Create an urgent SMS reminder notification for loyal users about an upcoming event.", + "Generate a casual push notification announcing a new feature with a call to action to try it now." + ] + }, + "tags": [ + "marketing", + "notification", + "automation", + "message composition", + "email", + "sms", + "push", + "campaign" + ], + "examples": [ + { + "inputJson": "{\"audienceSegment\":\"new customers\",\"messagePurpose\":\"promotion\",\"tone\":\"friendly\",\"channel\":\"email\",\"productName\":\"SmartWatch X\",\"callToAction\":\"Shop now\",\"includeDiscount\":true,\"characterLimit\":300}", + "description": "Friendly email promotion for new customers featuring a product and discount." + }, + { + "inputJson": "{\"audienceSegment\":\"loyal users\",\"messagePurpose\":\"reminder\",\"tone\":\"urgent\",\"channel\":\"sms\",\"callToAction\":\"Register now\",\"includeDiscount\":false,\"characterLimit\":160}", + "description": "Urgent SMS reminder for loyal users to register for an event." + }, + { + "inputJson": "{\"audienceSegment\":\"app users\",\"messagePurpose\":\"announcement\",\"tone\":\"casual\",\"channel\":\"push notification\",\"productName\":\"App v2.0\",\"callToAction\":\"Try it now\",\"includeDiscount\":false,\"characterLimit\":100}", + "description": "Casual push notification announcing a new app version with a CTA." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Notification", + "context": null + } + }, + { + "name": "marketing-automation.composeSummary", + "description": "This tool accepts raw marketing campaign data, including performance metrics, audience insights, and campaign objectives. It processes this data to generate a coherent, concise summary report highlighting key results, trends, and recommendations. The output is a structured summary string suitable for stakeholder review or further automation workflows.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignData", + "type": "object", + "description": "Comprehensive data object containing campaign metrics, audience info, and objectives for summarization.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryLength", + "type": "number", + "description": "Approximate desired length of the summary in sentences; controls summary conciseness.", + "required": false, + "defaultValue": "5" + }, + { + "name": "language", + "type": "string", + "description": "Language code (e.g., 'en', 'es') to generate the summary in the specified language.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag to include strategic recommendations based on campaign performance analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Contains a coherent text summary of the campaign performance, insights, and optional recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert complex marketing campaign data into an accessible, actionable summary for stakeholders or decision makers, facilitating quick understanding of campaign effectiveness and next steps.", + "limitations": "Cannot interpret incomplete or poorly structured campaign data; does not generate visualizations or detailed statistical reports; summary quality depends on input data richness and format.", + "examples": [ + "Generate a concise summary of last quarter's email marketing campaign performance, highlighting audience growth and click rates.", + "Compose a summary report for a social media ad campaign in Spanish including key metrics and improvement suggestions.", + "Create a brief overview of PPC campaign effectiveness without recommendations." + ] + }, + "tags": [ + "marketing", + "automation", + "summary", + "campaign", + "report", + "analysis", + "performance", + "communication" + ], + "examples": [ + { + "inputJson": "{\"campaignData\":{\"name\":\"Q2 Email Blast\",\"metrics\":{\"openRate\":0.32,\"clickRate\":0.12,\"conversions\":450},\"audience\":{\"segments\":[\"subscribers\",\"new signups\"]},\"objectives\":[\"increase engagement\",\"boost sales\"]},\"summaryLength\":5,\"language\":\"en\",\"includeRecommendations\":true}", + "description": "Summarize Q2 email campaign performance focusing on core metrics and recommendations." + }, + { + "inputJson": "{\"campaignData\":{\"name\":\"Holiday Social Ads\",\"metrics\":{\"impressions\":150000,\"clicks\":12000,\"ctr\":0.08},\"audience\":{\"regions\":[\"US\",\"Canada\"]},\"objectives\":[\"brand awareness\"]},\"summaryLength\":4,\"language\":\"es\",\"includeRecommendations\":true}", + "description": "Generate a Spanish summary with insights and recommendations for holiday social media ads." + }, + { + "inputJson": "{\"campaignData\":{\"name\":\"PPC Summer Campaign\",\"metrics\":{\"costPerClick\":2.5,\"conversions\":95,\"budgetSpent\":1000},\"audience\":{\"demographics\":{\"ageGroup\":\"25-34\"}},\"objectives\":[\"maximize ROI\"]},\"summaryLength\":3,\"language\":\"en\",\"includeRecommendations\":false}", + "description": "Create a brief PPC campaign summary focusing on key financial metrics without advice." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Summary", + "context": null + } + }, + { + "name": "marketing-automation.buildInstance", + "description": "This tool creates a new marketing campaign automation instance based on specified configurations, including campaign name, channels, target audience, budget, and schedule. It processes the input parameters to provision an automation workflow instance and returns details of the created instance for tracking and management.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "Name of the marketing campaign to identify the automation instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "channels", + "type": "array", + "description": "List of marketing channels to include in the campaign (e.g., email, SMS, social media).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "object", + "description": "Criteria defining the target audience for the campaign, such as demographics and behavior segments.", + "required": true, + "defaultValue": "" + }, + { + "name": "budget", + "type": "number", + "description": "Allocated budget for the marketing campaign in USD.", + "required": false, + "defaultValue": "0" + }, + { + "name": "schedule", + "type": "object", + "description": "Schedule details including start date, end date, and timing for campaign execution.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableTracking", + "type": "boolean", + "description": "Flag to enable performance tracking and analytics for the campaign.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Details of the created marketing automation instance including instance ID, status, configuration summary, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the setup of multi-channel marketing campaigns by defining campaign parameters and provisioning an automation instance that manages execution and tracking. It helps streamline campaign creation without manual configuration steps.", + "limitations": "Cannot execute the campaign activities directly, only provisions the automation instance. Integration with external messaging or ad platforms is required to run the campaign.", + "examples": [ + "Create a new email and social media campaign targeting young adults with a $5000 budget starting next week.", + "Build a marketing automation instance for SMS outreach to a defined customer segment with tracking enabled.", + "Set up a campaign with multiple channels and a fixed schedule for a product launch." + ] + }, + "tags": [ + "marketing", + "automation", + "campaign", + "build", + "instance", + "multi-channel", + "workflow" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Spring Sale Launch\",\"channels\":[\"email\",\"social_media\"],\"targetAudience\":{\"ageRange\":[25,40],\"location\":\"USA\"},\"budget\":10000,\"schedule\":{\"startDate\":\"2024-05-01T08:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\"},\"enableTracking\":true}", + "description": "Create a spring sale campaign targeting US adults aged 25-40 across email and social media with a $10,000 budget and tracking enabled." + }, + { + "inputJson": "{\"campaignName\":\"Product Update SMS Blast\",\"channels\":[\"sms\"],\"targetAudience\":{\"customersSubscribed\":true},\"budget\":2000,\"schedule\":{\"startDate\":\"2024-06-15T09:00:00Z\"},\"enableTracking\":false}", + "description": "Build an SMS campaign for subscribed customers to announce a product update without tracking." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "marketing-automation.buildComponent", + "description": "Builds a reusable marketing automation component as a code snippet or module based on specified campaign logic, triggers, and actions. Accepts campaign requirements, trigger conditions, action sequences, and output format to generate component code to be integrated into marketing automation systems or platforms.", + "category": "marketing-automation", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The unique name identifier for the marketing component to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "triggers", + "type": "array", + "description": "List of trigger definitions that initiate the component's logic, e.g., events or scheduled times.", + "required": true, + "defaultValue": "" + }, + { + "name": "actions", + "type": "array", + "description": "Ordered list of actions the component will execute when triggered, e.g., send email, update CRM.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "array", + "description": "Optional list of condition objects to evaluate before firing actions, supporting logical operators.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Programming language or platform for the output component code (e.g., JavaScript, JSON Workflow).", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "description", + "type": "string", + "description": "Short description of the component purpose or campaign scenario for documentation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated component code as a string and metadata about the component including name and supported platform." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate reusable marketing automation components or workflows from high-level campaign logic specifications to accelerate campaign development and maintain consistency across marketing platforms.", + "limitations": "This tool cannot deploy components directly to platforms or validate runtime integration issues. It also cannot create highly customized UI elements beyond code/logic generation.", + "examples": [ + "Generate a component that triggers on user signup and sends welcome email sequence.", + "Build a marketing automation module that triggers on cart abandonment and applies discount code actions.", + "Create a drip email campaign component triggered weekly for newsletter subscribers." + ] + }, + "tags": [ + "marketing", + "automation", + "component", + "campaign", + "code generation", + "workflow", + "email marketing" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"welcomeEmailSequence\",\"triggers\":[{\"type\":\"event\",\"eventName\":\"userSignup\"}],\"actions\":[{\"type\":\"sendEmail\",\"templateId\":\"welcome1\"},{\"type\":\"wait\",\"durationHours\":24},{\"type\":\"sendEmail\",\"templateId\":\"welcome2\"}],\"outputFormat\":\"JavaScript\",\"description\":\"Sends a two-step welcome email after user signup.\"}", + "description": "Creates a JavaScript component to send a two-step welcome email triggered by user signup." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "marketing-automation.draftContract", + "description": "Generates a customized marketing campaign contract based on client and campaign details provided. Inputs include client info, scope of services, timelines, payment terms, and special clauses. Processes these inputs to produce a ready-to-review contract document in text format outlining key marketing deliverables and legal terms.", + "category": "marketing-automation", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full legal name of the client contracting marketing services", + "required": true, + "defaultValue": "" + }, + { + "name": "clientContact", + "type": "object", + "description": "Contact details of the client including email and phone", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignScope", + "type": "string", + "description": "Detailed description of the marketing campaign scope and objectives", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Contract start date in ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Contract end date in ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Terms related to payments including amounts, schedule, and methods", + "required": true, + "defaultValue": "" + }, + { + "name": "specialClauses", + "type": "array", + "description": "Optional array of special clauses or conditions to include in the contract", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract text and metadata such as contract dates and client name" + }, + "aiAgent": { + "useCase": "Use this tool when preparing formal marketing campaign agreements by inputting client and project-specific details to automate contract drafting. It streamlines contract creation, ensuring all essential legal and operational terms are covered without manual document writing.", + "limitations": "This tool does not provide legal advice or replace professional legal review. It cannot handle complex or jurisdiction-specific legal nuances beyond preset templates.", + "examples": [ + "Draft a marketing campaign contract for a new client launching a three-month digital ad campaign starting next month with specified payment terms.", + "Generate a contract including special clauses about confidentiality and content ownership for a social media marketing project." + ] + }, + "tags": [ + "marketing", + "automation", + "contract", + "document", + "legal", + "campaign", + "drafting" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"Acme Corp\",\"clientContact\":{\"email\":\"john.doe@acme.com\",\"phone\":\"+1234567890\"},\"campaignScope\":\"Launch of new product XYZ with social media and PPC ads\",\"startDate\":\"2024-07-01\",\"endDate\":\"2024-09-30\",\"paymentTerms\":\"50% upfront, 50% upon completion\",\"specialClauses\":[\"Confidentiality agreement\",\"Content ownership remains with client\"]}", + "description": "Draft contract for a digital product launch campaign with standard payment and confidentiality clauses." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "marketing-automation.buildVariable", + "description": "This tool creates a dynamic marketing variable based on specified input criteria, transformation logic, and optional default values. It accepts a variable name, data sources, transformation expressions, and conditions for runtime evaluation. The output is a standardized variable object usable in marketing automation workflows for personalized content and segmentation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique name identifier for the marketing variable to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceFields", + "type": "array", + "description": "An array of strings representing source data fields or parameters to derive the variable from.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationLogic", + "type": "string", + "description": "A string expression or formula used to transform sourceFields into the variable's value, supporting simple functions and conditional logic.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "A fallback value to assign if transformationLogic fails or source data is unavailable.", + "required": false, + "defaultValue": "" + }, + { + "name": "isPersistent", + "type": "boolean", + "description": "Determines whether the variable value should persist across sessions or re-computations.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description of the variable's purpose.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed marketing variable including its name, computed value template, persistence flag, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to define custom marketing variables dynamically from multiple data inputs for personalization, segmentation, or tracking within campaigns. It enables transforming raw data into actionable variables usable in automation rules or templates.", + "limitations": "This tool does not execute the transformation logic at runtime; it only builds the variable definition. It cannot fetch live data or perform complex parsing beyond expression strings supplied. Computation depends on the marketing platform implementation.", + "examples": [ + "Create a personalized discount code variable based on customer purchase history and current promotions.", + "Define a segmentation variable computing risk level from user behavior metrics.", + "Build a dynamic variable for tracking email engagement scoring from multiple event fields." + ] + }, + "tags": [ + "marketing", + "automation", + "variable", + "dynamic", + "transformation", + "personalization" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"discountEligibility\",\"sourceFields\":[\"purchaseHistory\",\"currentOffers\"],\"transformationLogic\":\"purchaseHistory.totalSpent > 500 ? 'VIP' : currentOffers.defaultTier\",\"defaultValue\":\"Standard\",\"isPersistent\":true,\"description\":\"Determines customer's discount tier eligibility.\"}", + "description": "Builds a variable calculating discount eligibility tier from purchase totals and current offers." + }, + { + "inputJson": "{\"variableName\":\"userRiskScore\",\"sourceFields\":[\"loginFrequency\",\"failedLogins\",\"accountAgeDays\"],\"transformationLogic\":\"(failedLogins > 3 || loginFrequency < 2) ? 'High' : 'Low'\",\"defaultValue\":\"Medium\",\"isPersistent\":false,\"description\":\"Risk score based on login behavior.\"}", + "description": "Creates a risk score variable from login-related metrics for segmentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "marketing-automation.generateSession", + "description": "Generates a simulated user session analytics report by processing input parameters such as user demographics, campaign source, device type, session duration, and page views. It outputs a structured session object containing detailed metrics and session metadata to assist in marketing campaign analysis and optimization.", + "category": "marketing-automation", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user initiating the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignSource", + "type": "string", + "description": "Identifier of the marketing campaign or traffic source influencing the session.", + "required": true, + "defaultValue": "" + }, + { + "name": "deviceType", + "type": "string", + "description": "Type of device used in the session (e.g., mobile, desktop, tablet).", + "required": false, + "defaultValue": "desktop" + }, + { + "name": "sessionDuration", + "type": "number", + "description": "Duration of the session in seconds.", + "required": false, + "defaultValue": "300" + }, + { + "name": "pageViews", + "type": "number", + "description": "Number of pages viewed in the session.", + "required": false, + "defaultValue": "3" + }, + { + "name": "location", + "type": "string", + "description": "Geographical location or region of the user during the session.", + "required": false, + "defaultValue": "" + }, + { + "name": "converted", + "type": "boolean", + "description": "Indicates whether the session resulted in a conversion action (e.g., purchase, signup).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the generated session analytics data, including user ID, campaign metadata, device details, session metrics (duration, page views), conversion status, and timestamp." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to generate realistic simulated user session data for marketing analytics, such as testing campaign performance models, generating sample datasets for visualization, or performing what-if analysis on user behavior under different campaign scenarios.", + "limitations": "It does not generate real user data or integrate with live traffic sources; the output is simulated based on input parameters only.", + "examples": [ + "Generate a session for a user from campaign 'spring_sale' on mobile device with 5 page views lasting 600 seconds.", + "Create a session report indicating a conversion event for a desktop user from 'email_campaign'.", + "Simulate multiple sessions from different locations to analyze campaign reach." + ] + }, + "tags": [ + "marketing-automation", + "session-generation", + "analytics", + "campaign-analysis", + "user-behavior", + "simulation" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"user123\",\"campaignSource\":\"spring_sale\",\"deviceType\":\"mobile\",\"sessionDuration\":600,\"pageViews\":5,\"location\":\"USA\",\"converted\":false}", + "description": "Simulate a mobile user session from the spring_sale campaign lasting 10 minutes with 5 page views." + }, + { + "inputJson": "{\"userId\":\"user456\",\"campaignSource\":\"email_campaign\",\"deviceType\":\"desktop\",\"sessionDuration\":300,\"pageViews\":3,\"converted\":true}", + "description": "Generate a desktop session with a conversion from an email campaign." + }, + { + "inputJson": "{\"userId\":\"user789\",\"campaignSource\":\"summer_discount\",\"deviceType\":\"tablet\",\"sessionDuration\":450,\"pageViews\":4,\"location\":\"Canada\",\"converted\":false}", + "description": "Create a tablet user session for a summer discount campaign with moderate engagement." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "marketing-automation.generateTrend", + "description": "Generates marketing trend insights by analyzing historical campaign data, social media metrics, and market conditions. Accepts input data sources and filters; processes these to identify emerging patterns and predicts trending topics, keywords, or product interests. Outputs a structured report with key trends, metrics, and actionable recommendations.", + "category": "marketing-automation", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of data sources to analyze, e.g., ['campaignData','socialMedia','searchTrends']", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Time period for trend analysis with 'startDate' and 'endDate' in ISO format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographic region to focus trend analysis on, e.g., 'US', 'EU', or 'global'.", + "required": false, + "defaultValue": "global" + }, + { + "name": "categoryFilter", + "type": "array", + "description": "Optional list of marketing categories or product types to filter the trend analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minTrendScore", + "type": "number", + "description": "Minimum score threshold to consider a trend significant (0 to 1).", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to include sentiment analysis of social media mentions in trend generation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing identified trends with details including trend name, score, growth metrics, relevant keywords, sentiment summary if requested, and recommendations for marketing actions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze diverse marketing data to detect emerging trends, optimize campaign strategies, or forecast interests in products or topics. It's suited for scenarios requiring synthesis of campaign, social, and market data to provide actionable marketing intelligence.", + "limitations": "It cannot access real-time data unless up-to-date inputs are provided; accuracy depends on the quality and relevance of the input data; does not generate creative content but analyzes existing data for trends.", + "examples": [ + "Identify emerging product trends in the US market from Q1 2023 campaign and social media data.", + "Generate a trend report focusing on sports apparel category for the last 6 months including sentiment analysis.", + "Find top trending keywords and topics in the global market based on social media and search trend data over the past year." + ] + }, + "tags": [ + "trend analysis", + "marketing", + "automation", + "analytics", + "campaign optimization", + "social media", + "sentiment" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[\"campaignData\",\"socialMedia\"],\"timeRange\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\"},\"region\":\"US\",\"categoryFilter\":[\"sportswear\"],\"minTrendScore\":0.6,\"includeSentimentAnalysis\":true}", + "description": "Generate marketing trends for US sportswear category from Q1 2023 data with sentiment." + }, + { + "inputJson": "{\"dataSources\":[\"searchTrends\"],\"timeRange\":{\"startDate\":\"2022-06-01\",\"endDate\":\"2023-05-31\"},\"region\":\"global\",\"categoryFilter\":[],\"minTrendScore\":0.5,\"includeSentimentAnalysis\":false}", + "description": "Find global top search trends over the last year without sentiment analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "marketing-automation.generateChart", + "description": "Generates a marketing data visualization chart based on supplied campaign metrics over a specified time period. Accepts input metrics, time range, chart type, and optional filters, then produces a URL pointing to a rendered chart image or embeddable HTML snippet representing campaign performance.", + "category": "marketing-automation", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "An array of marketing metrics to visualize (e.g., clicks, impressions, conversions).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The ISO 8601 formatted start date for data aggregation (e.g., 2023-01-01).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The ISO 8601 formatted end date for data aggregation (e.g., 2023-01-31).", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate (e.g., line, bar, pie).", + "required": true, + "defaultValue": "line" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filtering criteria such as campaign IDs, channels, or regions to narrow the data scope.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "title", + "type": "string", + "description": "Custom title for the generated chart.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format for the chart, either 'url' for a link or 'html' for embeddable snippet.", + "required": false, + "defaultValue": "url" + } + ], + "returns": { + "type": "object", + "description": "An object containing the chart output either as a URL to the image or an embeddable HTML snippet depending on outputFormat." + }, + "aiAgent": { + "useCase": "Use this tool when needing to visualize marketing campaign data dynamically by specifying metrics, date ranges, and filters to generate charts that support performance analysis and reporting. It assists in automated marketing analytics workflows requiring graphical data representation.", + "limitations": "Cannot generate charts without valid metrics or date range. Does not perform data aggregation or cleaning itself; requires clean, aggregated input data sources. Chart customization options are limited to provided parameters.", + "examples": [ + "Generate a line chart showing clicks and conversions from January 1 to January 31, 2023.", + "Create a pie chart of impressions distribution by channel for Q1 2023.", + "Produce an embeddable bar chart for conversions filtered by campaign ID and region with a custom title." + ] + }, + "tags": [ + "marketing", + "automation", + "chart", + "visualization", + "data-analysis", + "campaign", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"clicks\",\"conversions\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-01-31\",\"chartType\":\"line\"}", + "description": "Generate a line chart showing clicks and conversions over January 2023." + }, + { + "inputJson": "{\"metrics\":[\"impressions\"],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"chartType\":\"pie\",\"filters\":{\"channel\":\"social\"},\"title\":\"Q1 Social Impressions\"}", + "description": "Create a pie chart of impressions by social channel for the first quarter, with a custom title." + }, + { + "inputJson": "{\"metrics\":[\"conversions\"],\"startDate\":\"2023-04-01\",\"endDate\":\"2023-04-30\",\"chartType\":\"bar\",\"filters\":{\"campaignId\":\"camp123\",\"region\":\"NA\"},\"outputFormat\":\"html\"}", + "description": "Produce an embeddable bar chart for conversions in April 2023 filtered by specific campaign and region." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "marketing-automation.generateXML", + "description": "Generates a well-structured XML document representing marketing campaign data. Accepts campaign details input as an object including campaign name, schedule, target audience segments, and content items. Processes this data into a standardized XML format suitable for integration with marketing platforms or for archival purposes.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignName", + "type": "string", + "description": "The name of the marketing campaign to be included in the XML.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Campaign start date in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Campaign end date in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAudiences", + "type": "array", + "description": "Array of strings identifying audience segment names targeted by the campaign.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "contentItems", + "type": "array", + "description": "Array of objects describing content elements (e.g., {type:string, value:string}) included in the campaign.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include optional metadata like creation timestamp and author in the XML.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single property 'xmlString' containing the generated XML as a string." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert detailed marketing campaign information into a precise XML format for automated deployment on marketing platforms or for exporting campaign data in integration workflows. It is especially useful for preparing standardized campaign data exports or for use in systems that consume XML.", + "limitations": "This tool does not validate the semantics of campaign content or audience segments beyond formatting. It cannot connect to external systems or send the XML; it only generates the XML string representation.", + "examples": [ + "Generate XML for a holiday promotion campaign running between specified dates targeting specific audiences with personalized content items.", + "Create XML output including metadata for a new product launch campaign with content such as emails and banners." + ] + }, + "tags": [ + "marketing", + "automation", + "XML", + "campaign", + "data-export", + "formatting", + "integration" + ], + "examples": [ + { + "inputJson": "{\"campaignName\":\"Holiday Blast\",\"startDate\":\"2024-11-01\",\"endDate\":\"2024-12-31\",\"targetAudiences\":[\"Loyal Customers\",\"Newsletter Subscribers\"],\"contentItems\":[{\"type\":\"email\",\"value\":\"Holiday Sale Announcement\"},{\"type\":\"banner\",\"value\":\"Winter Discounts\"}],\"includeMetadata\":true}", + "description": "Generate XML for a Holiday Blast campaign with specified audiences and content including metadata." + }, + { + "inputJson": "{\"campaignName\":\"Product Launch\",\"startDate\":\"2024-07-15\",\"targetAudiences\":[\"Tech Enthusiasts\"],\"contentItems\":[{\"type\":\"email\",\"value\":\"Launch Invitation\"}],\"includeMetadata\":false}", + "description": "Generate XML for a Product Launch campaign without optional metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "marketing-automation.generateSchema", + "description": "Generates a JSON schema for marketing campaign data structures based on provided campaign type and required data fields. Accepts campaign type and an array of field definitions with types and constraints, and produces a JSON Schema to validate data input for automated marketing workflows.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignType", + "type": "string", + "description": "Type of marketing campaign (e.g., email, social media, PPC) for which to generate the schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "Array of objects defining each field's name, data type, and validation rules in the schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include standard metadata fields (e.g., timestamp, campaignId) in the schema.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "JSON object representing the JSON Schema that can be used to validate marketing campaign data inputs." + }, + "aiAgent": { + "useCase": "Use this tool when building or validating marketing automation pipelines that require standardized data inputs. It helps ensure campaign data conforms to expected formats by generating targeted JSON Schemas for different campaign types and their unique data fields.", + "limitations": "This tool generates generic JSON Schemas based on user-defined field properties but does not itself validate data or generate campaign content. It requires detailed field specification input to produce useful schemas.", + "examples": [ + "Generate a JSON schema for an email campaign with recipient email, subject, and body fields.", + "Create a schema for PPC campaigns including fields for keywords, bid amount, and ad copy.", + "Produce a social media campaign schema with fields for post text, image URL, and scheduled date." + ] + }, + "tags": [ + "marketing", + "automation", + "schema", + "JSON Schema", + "data validation", + "campaign", + "marketing-campaign", + "schema-generation" + ], + "examples": [ + { + "inputJson": "{\"campaignType\":\"email\",\"fields\":[{\"name\":\"recipientEmail\",\"type\":\"string\",\"format\":\"email\",\"required\":true},{\"name\":\"subject\",\"type\":\"string\",\"required\":true},{\"name\":\"body\",\"type\":\"string\",\"required\":true}],\"includeMetadata\":true}", + "description": "Generates a JSON schema for an email marketing campaign requiring recipientEmail (as email string), subject, and body fields, including standard metadata." + }, + { + "inputJson": "{\"campaignType\":\"PPC\",\"fields\":[{\"name\":\"keywords\",\"type\":\"array\",\"itemsType\":\"string\",\"required\":true},{\"name\":\"bidAmount\",\"type\":\"number\",\"minimum\":0.01,\"required\":true},{\"name\":\"adCopy\",\"type\":\"string\",\"required\":true}],\"includeMetadata\":false}", + "description": "Creates a schema for PPC campaigns with required keywords (array of strings), positive bidAmount, and adCopy text, excluding metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "marketing-automation.createSession", + "description": "Creates a new marketing session analytics record by accepting session metadata such as user identifiers, timestamps, campaign parameters, and device info. Processes and stores session details to enable subsequent analysis and reporting. Returns an object indicating the created session's unique ID and status.", + "category": "marketing-automation", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Unique identifier for the user associated with the session", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionStart", + "type": "string", + "description": "ISO 8601 timestamp marking session start time", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionEnd", + "type": "string", + "description": "ISO 8601 timestamp marking session end time", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignSource", + "type": "string", + "description": "Source of the marketing campaign driving the session (e.g., google, newsletter)", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignMedium", + "type": "string", + "description": "Medium of the marketing campaign (e.g., cpc, email)", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignName", + "type": "string", + "description": "Name or identifier of the marketing campaign", + "required": false, + "defaultValue": "" + }, + { + "name": "deviceInfo", + "type": "object", + "description": "Object containing device data such as type, OS, and browser info", + "required": false, + "defaultValue": "" + }, + { + "name": "customAttributes", + "type": "object", + "description": "Additional key-value pairs for custom session attributes", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with the created session's unique ID and a status string indicating success or failure" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to log or create a new user session record within a marketing automation system to track user behavior and campaign attribution across sessions. It's suitable for automating session data capture from various sources in real-time or batch processing.", + "limitations": "This tool does not perform session data validation beyond basic type checks, nor does it analyze or aggregate data. It only creates a single session record per call.", + "examples": [ + "Create a new session record for user with ID 'abc123' starting now with campaign source 'google' and medium 'cpc'.", + "Log a session for user 'user456' including device details like browser and OS.", + "Add a custom attribute to a session such as 'loyaltyTier' equal to 'gold'." + ] + }, + "tags": [ + "marketing", + "automation", + "session", + "analytics", + "campaign", + "userTracking" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"user789\",\"sessionStart\":\"2024-06-01T12:00:00Z\",\"campaignSource\":\"newsletter\",\"campaignMedium\":\"email\",\"campaignName\":\"spring_sale\"}", + "description": "Create a session for user 'user789' starting at noon UTC with email newsletter campaign attribution." + }, + { + "inputJson": "{\"userId\":\"user123\",\"sessionStart\":\"2024-06-01T14:30:00Z\",\"sessionEnd\":\"2024-06-01T15:00:00Z\",\"deviceInfo\":{\"type\":\"mobile\",\"os\":\"iOS\",\"browser\":\"Safari\"}}", + "description": "Log a complete session with device details for user 'user123'." + }, + { + "inputJson": "{\"userId\":\"user456\",\"sessionStart\":\"2024-06-01T08:15:00Z\",\"customAttributes\":{\"loyaltyTier\":\"gold\",\"promoCode\":\"SUMMER2024\"}}", + "description": "Create a session with custom attributes for loyalty tier and promo code." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "marketing-automation.createTrend", + "description": "Analyzes marketing campaign performance data over a specified time range to detect and create actionable marketing trends. Accepts campaign metrics such as clicks, impressions, conversions, and revenue, then processes the data using time series analysis and statistical methods to identify emerging trends, peak performance intervals, or decline patterns. Outputs a summarized trend report highlighting key insights, trend direction, and suggested marketing actions.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier for the marketing campaign to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of metric names (e.g., clicks, conversions) to include in trend analysis.", + "required": true, + "defaultValue": "[\"clicks\",\"impressions\",\"conversions\"]" + }, + { + "name": "granularity", + "type": "string", + "description": "Time granularity for trend aggregation, such as 'daily', 'weekly', or 'monthly'.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Statistical confidence level (0-1) to determine significance of detected trends.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include suggested marketing actions based on trend findings.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary of identified trends including trend names, metrics involved, trend directions (up/down/stable), confidence scores, time intervals, and optional marketing recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to identify and quantify emerging marketing trends from campaign data over a defined period to inform strategy optimization, budget allocation, or content adjustment decisions. It helps automate the detection of meaningful performance patterns beyond simple metric reporting.", + "limitations": "This tool cannot access raw campaign data on its own and requires structured input data. It does not predict future trend behavior beyond the given data window and does not analyze qualitative marketing factors or external market conditions.", + "examples": [ + "Create a trend report for campaign ID 'camp123' from 2024-01-01 to 2024-03-31 analyzing clicks and conversions with weekly granularity.", + "Generate marketing trend insights highlighting significant changes in impressions and revenue for campaign 'summerSale' in past 2 months.", + "Identify upward or downward trends in key metrics for a new product launch campaign to assess performance." + ] + }, + "tags": [ + "marketing", + "automation", + "trend-analysis", + "campaign-performance", + "analytics", + "time-series" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"camp123\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"metrics\":[\"clicks\",\"conversions\",\"revenue\"],\"granularity\":\"weekly\",\"confidenceLevel\":0.95,\"includeRecommendations\":true}", + "description": "Analyzes weekly trends in clicks, conversions, and revenue for the specified campaign and period, including actionable recommendations." + }, + { + "inputJson": "{\"campaignId\":\"launch2024\",\"startDate\":\"2024-05-01\",\"endDate\":\"2024-05-31\",\"metrics\":[\"impressions\"],\"granularity\":\"daily\",\"confidenceLevel\":0.90,\"includeRecommendations\":false}", + "description": "Daily impression trend analysis for a product launch campaign without marketing recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "marketing-automation.createCluster", + "description": "Creates a marketing data cluster by grouping customer profiles or campaign data based on specified segmentation criteria. Accepts input data such as customer attributes or campaign metrics, applies clustering algorithms, and outputs clusters for targeted marketing actions.", + "category": "marketing-automation", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of customer or campaign objects to be clustered, each with relevant attributes (e.g., demographics, behavior metrics).", + "required": true, + "defaultValue": "" + }, + { + "name": "clusteringMethod", + "type": "string", + "description": "The clustering algorithm to use (e.g., kmeans, hierarchical, DBSCAN).", + "required": false, + "defaultValue": "kmeans" + }, + { + "name": "numberOfClusters", + "type": "number", + "description": "Number of clusters to generate (applicable for methods like kmeans).", + "required": false, + "defaultValue": "5" + }, + { + "name": "featureFields", + "type": "array", + "description": "List of object keys from inputData to use as features for clustering.", + "required": true, + "defaultValue": "" + }, + { + "name": "normalizeFeatures", + "type": "boolean", + "description": "Indicates whether to normalize feature values before clustering for better accuracy.", + "required": false, + "defaultValue": "true" + }, + { + "name": "distanceMetric", + "type": "string", + "description": "Distance metric to use for clustering (e.g., euclidean, manhattan).", + "required": false, + "defaultValue": "euclidean" + }, + { + "name": "minClusterSize", + "type": "number", + "description": "Minimum number of elements per cluster (applicable for some clustering methods like DBSCAN).", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of clusters, each with its assigned members and cluster centroid or characteristics." + }, + "aiAgent": { + "useCase": "Use this tool when you want to automatically group marketing data such as customer profiles or campaign responses into meaningful clusters for segmentation and targeted campaigns. It supports various clustering methods to tailor grouping strategy based on data nature and marketing goals.", + "limitations": "The tool depends on the quality and relevance of input features and does not perform feature selection. It may not handle very large datasets efficiently in-memory and requires appropriate choice of parameters for meaningful clusters.", + "examples": [ + "Create customer segments from an array of customer profiles using kmeans with 4 clusters.", + "Group campaign responses into clusters based on engagement metrics using DBSCAN.", + "Segment customers by demographic and purchase behavior for personalized marketing." + ] + }, + "tags": [ + "marketing", + "clustering", + "segmentation", + "customer data", + "campaign analysis", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"age\":25,\"income\":50000,\"visits\":10},{\"age\":40,\"income\":80000,\"visits\":5},{\"age\":22,\"income\":48000,\"visits\":12},{\"age\":35,\"income\":75000,\"visits\":7}],\"featureFields\":[\"age\",\"income\",\"visits\"],\"clusteringMethod\":\"kmeans\",\"numberOfClusters\":2,\"normalizeFeatures\":true}", + "description": "Cluster customers into 2 segments using age, income, and visits data with kmeans." + }, + { + "inputJson": "{\"inputData\":[{\"clicks\":100,\"impressions\":1000},{\"clicks\":20,\"impressions\":500},{\"clicks\":150,\"impressions\":1200}],\"featureFields\":[\"clicks\",\"impressions\"],\"clusteringMethod\":\"hierarchical\"}", + "description": "Cluster campaign data based on clicks and impressions using hierarchical clustering." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "marketing-automation.createThread", + "description": "Creates a communication thread for a marketing campaign by accepting campaign ID, participant contacts, initial message content, and optional metadata. The tool sets up the conversation context and returns a unique thread ID along with thread details, enabling automated and organized multi-channel marketing interactions.", + "category": "marketing-automation", + "parameters": [ + { + "name": "campaignId", + "type": "string", + "description": "Unique identifier of the marketing campaign this thread belongs to.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant contact objects (e.g., email, phone) involved in the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialMessage", + "type": "string", + "description": "Content of the first message initiating the thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Communication channel type such as email, SMS, chat, or social media.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata including tags, custom attributes, or scheduling info for the thread.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoArchive", + "type": "boolean", + "description": "Flag to auto-archive the thread after campaign conclusion.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique threadId, assigned participants, campaignId, channel, initialMessage, creation timestamp, and any attached metadata." + }, + "aiAgent": { + "useCase": "Use this tool to initiate and structure a new communication thread linked to a specific marketing campaign, facilitating organized dialogues with targeted participants via chosen communication channels. Ideal when automating multi-channel outreach that needs to be tracked and managed programmatically.", + "limitations": "This tool does not send messages or handle replies; it only creates the communication thread metadata and setup. Actual message delivery and tracking require other tools or integrations.", + "examples": [ + "Create a new email thread for campaign ID 'camp123' with participant emails and an initial welcome message.", + "Set up a multi-participant SMS thread for a product launch campaign with metadata tags for segmentation.", + "Start a social media chat thread for a marketing campaign with automated archiving enabled." + ] + }, + "tags": [ + "marketing", + "automation", + "communication", + "thread", + "campaign", + "multi-channel", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"campaignId\":\"camp123\",\"participants\":[{\"type\":\"email\",\"address\":\"user1@example.com\"},{\"type\":\"email\",\"address\":\"user2@example.com\"}],\"initialMessage\":\"Welcome to our summer sale campaign!\",\"channel\":\"email\",\"metadata\":{\"priority\":\"high\",\"scheduledSend\":\"2024-07-01T09:00:00Z\"},\"autoArchive\":true}", + "description": "Create an email communication thread for participants of a summer sale campaign with scheduling and auto-archiving enabled." + }, + { + "inputJson": "{\"campaignId\":\"launch001\",\"participants\":[{\"type\":\"sms\",\"number\":\"+1234567890\"}],\"initialMessage\":\"Introducing our new product line!\",\"channel\":\"sms\",\"metadata\":{},\"autoArchive\":false}", + "description": "Set up an SMS thread for a new product launch campaign targeting a single participant without auto-archiving." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "marketing-automation.createThreat", + "description": "Generates and registers a simulated marketing security threat scenario based on input parameters such as threat type, target audience, and potential impact. It processes details to create a structured threat report to aid marketing teams in preparing mitigation strategies against relevant digital threats.", + "category": "marketing-automation", + "parameters": [ + { + "name": "threatType", + "type": "string", + "description": "Type of security threat relevant to marketing operations, such as phishing, data leak, or social engineering.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the marketing segment or stakeholders targeted by the threat.", + "required": true, + "defaultValue": "" + }, + { + "name": "potentialImpact", + "type": "string", + "description": "Description of the potential negative effects the threat could have on marketing campaigns or brand reputation.", + "required": true, + "defaultValue": "" + }, + { + "name": "urgencyLevel", + "type": "string", + "description": "Urgency or severity level of the threat, e.g., low, medium, high.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "mitigationSuggestions", + "type": "array", + "description": "List of suggested actions or strategies to mitigate the identified threat, if any.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A detailed marketing threat report object containing the threat summary, detailed description, impacted segments, urgency level, and recommended mitigation steps." + }, + "aiAgent": { + "useCase": "Use this tool when needing to simulate or generate realistic marketing-related security threat scenarios to help prepare teams, plan defenses, or analyze campaign vulnerabilities. It is ideal for automating the creation of structured threat reports based on user inputs for proactive marketing security management.", + "limitations": "This tool generates simulated threat scenarios and does not detect or analyze real-time security incidents or guarantee actual threat predictions.", + "examples": [ + "Create a phishing threat targeting email marketing subscribers with high impact and provide mitigation steps.", + "Generate a data leak scenario affecting customer data in a loyalty program with medium urgency.", + "Produce a social engineering threat scenario for a digital ad campaign with low urgency and suggested precautions." + ] + }, + "tags": [ + "marketing", + "security", + "threat", + "automation", + "simulation", + "campaignProtection" + ], + "examples": [ + { + "inputJson": "{\"threatType\":\"phishing\",\"targetAudience\":\"email marketing subscribers\",\"potentialImpact\":\"loss of customer trust and data compromise\",\"urgencyLevel\":\"high\",\"mitigationSuggestions\":[\"Implement email authentication protocols\",\"Educate customers on phishing signs\",\"Monitor email campaigns for suspicious activity\"]}", + "description": "Create a high urgency phishing threat targeting email subscribers with mitigation steps." + }, + { + "inputJson": "{\"threatType\":\"data leak\",\"targetAudience\":\"loyalty program customers\",\"potentialImpact\":\"exposure of personal data\",\"urgencyLevel\":\"medium\",\"mitigationSuggestions\":[\"Encrypt stored customer data\",\"Limit access to sensitive information\",\"Conduct regular security audits\"]}", + "description": "Generate a medium urgency data leak threat concerning loyalty customers with recommended mitigations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "marketing-automation.createQueue", + "description": "Creates a named marketing message queue to manage and schedule outbound campaign messages. Accepts queueName and optional configuration such as maxQueueSize and retryPolicy. Outputs a queueId and confirmation of queue creation, enabling organized message dispatch within marketing automation systems.", + "category": "marketing-automation", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name of the queue to be created, used to identify the queue within the marketing automation system.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxQueueSize", + "type": "number", + "description": "The maximum number of messages the queue can hold before rejecting new messages; set to 0 or omit for unlimited size.", + "required": false, + "defaultValue": "0" + }, + { + "name": "retryPolicy", + "type": "object", + "description": "An optional object defining retry parameters for failed message sends, including maxRetries (number) and retryIntervalSeconds (number).", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityLevels", + "type": "array", + "description": "Optional array of strings defining priority levels in descending importance (e.g., [\"high\",\"medium\",\"low\"]).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created queue's unique queueId, the queueName, and the effective configuration parameters confirming successful creation." + }, + "aiAgent": { + "useCase": "Use this tool when initializing or managing marketing campaign infrastructures requiring message queues for controlled delivery, scheduling, and retry logic. It helps structure outbound messaging workflows by creating queues specific to campaigns or message types.", + "limitations": "Does not send or process messages directly, only creates and configures the queue infrastructure. It cannot modify queues after creation; separate tools are required for updates.", + "examples": [ + "Create a queue named 'SpringPromo' with max size 1000 and retry policy of 3 attempts every 60 seconds.", + "Initialize a messaging queue for high-priority notifications with priority levels ['urgent', 'normal', 'low']." + ] + }, + "tags": [ + "marketing", + "automation", + "queue", + "campaign-management", + "message-scheduling", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"SummerSaleQueue\",\"maxQueueSize\":5000,\"retryPolicy\":{\"maxRetries\":5,\"retryIntervalSeconds\":120}}", + "description": "Create a queue named SummerSaleQueue with a maximum size of 5000 messages and a retry policy of 5 attempts every 120 seconds." + }, + { + "inputJson": "{\"queueName\":\"NewsletterDispatch\",\"priorityLevels\":[\"high\",\"medium\",\"low\"]}", + "description": "Create a queue named NewsletterDispatch defining three priority levels to manage message sending order." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "marketing-automation.createIncident", + "description": "Creates a security incident record within a marketing automation platform by accepting incident details such as type, severity, description, affected systems, and timestamps. Processes the input to log the incident and outputs a confirmation with the incident ID for tracking and resolution purposes.", + "category": "marketing-automation", + "parameters": [ + { + "name": "incidentType", + "type": "string", + "description": "The category of the security incident (e.g., phishing, data breach).", + "required": true, + "defaultValue": "" + }, + { + "name": "severityLevel", + "type": "string", + "description": "The severity of the incident (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the incident, including observed behavior and impact.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of systems, platforms, or databases affected by the incident.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectedAt", + "type": "string", + "description": "Timestamp when the incident was detected (ISO 8601 format).", + "required": false, + "defaultValue": "" + }, + { + "name": "reportedBy", + "type": "string", + "description": "Identifier or name of the person or system reporting the incident.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Keywords or tags to classify or facilitate searching the incident.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique incident ID, status, and a summary message confirming creation." + }, + "aiAgent": { + "useCase": "Use this tool when automating the creation and logging of security incidents related to marketing systems or campaigns, enabling timely tracking and management of threats. Ideal for integration in automated threat detection and incident response workflows within marketing automation environments.", + "limitations": "This tool does not analyze or detect incidents automatically; it requires that the incident details be provided explicitly. It does not perform remediation or notification actions beyond incident creation.", + "examples": [ + "Create a new phishing incident with high severity affecting the email marketing platform.", + "Log a data breach incident including affected databases and detailed description.", + "Record a low severity suspicious activity incident detected by an external monitoring system." + ] + }, + "tags": [ + "marketing", + "security", + "incident-management", + "automation", + "logging", + "threat-detection" + ], + "examples": [ + { + "inputJson": "{\"incidentType\":\"phishing\",\"severityLevel\":\"high\",\"description\":\"Multiple users received suspicious emails requesting credentials.\",\"affectedSystems\":[\"Email Marketing Platform\"],\"detectedAt\":\"2024-06-10T14:30:00Z\",\"reportedBy\":\"SecurityTeamBot\",\"tags\":[\"email\",\"phishing\",\"urgent\"]}", + "description": "Creates a high severity phishing incident affecting the email marketing platform." + }, + { + "inputJson": "{\"incidentType\":\"data breach\",\"severityLevel\":\"critical\",\"description\":\"Unauthorized access detected to customer data databases.\",\"affectedSystems\":[\"CustomerDB\"],\"detectedAt\":\"2024-06-11T02:00:00Z\",\"reportedBy\":\"AutoAlertSystem\",\"tags\":[\"data breach\",\"urgent\"]}", + "description": "Logs a critical data breach incident impacting customer databases." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Incident", + "context": null + } + }, + { + "name": "marketing-automation.createSecret", + "description": "Creates a secure secret token or API key for use within marketing automation campaigns and integrations. Accepts parameters like secret name, type, expiration, and usage scope, then generates a securely stored secret string. Outputs the secret metadata and masked secret value for authorized use in automation workflows.", + "category": "marketing-automation", + "parameters": [ + { + "name": "secretName", + "type": "string", + "description": "Unique name to identify the secret within marketing automation tools.", + "required": true, + "defaultValue": "" + }, + { + "name": "secretType", + "type": "string", + "description": "Specifies the secret type such as 'apiKey', 'token', or 'password'.", + "required": true, + "defaultValue": "apiKey" + }, + { + "name": "expirationDays", + "type": "number", + "description": "Number of days until the secret expires; 0 means no expiration.", + "required": false, + "defaultValue": "0" + }, + { + "name": "usageScope", + "type": "string", + "description": "Defines where the secret can be used, e.g., 'emailCampaigns', 'crmIntegration'.", + "required": false, + "defaultValue": "" + }, + { + "name": "autoRotate", + "type": "boolean", + "description": "Whether the secret should be automatically rotated upon expiration.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "Optional descriptive text about the secret's purpose.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the secret's metadata including name, type, creation and expiration dates, usage scope, and the masked secret value for secure usage." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate and store secure credentials or tokens for marketing automation workflows, ensuring integration security and automated secrets management for campaigns, APIs, or platform connections.", + "limitations": "This tool does not handle secret retrieval after creation, detailed permission management, or integrate directly with external secret management services.", + "examples": [ + "Create a new API key for email campaign integrations with 30 days expiration.", + "Generate a password secret scoped to CRM integration with no expiration and auto-rotation enabled.", + "Create a token named 'socialMediaAccess' for scheduled posts without expiration." + ] + }, + "tags": [ + "marketing", + "automation", + "security", + "secret-management", + "api-key", + "token", + "credential" + ], + "examples": [ + { + "inputJson": "{\"secretName\":\"emailAPIKey\",\"secretType\":\"apiKey\",\"expirationDays\":30,\"usageScope\":\"emailCampaigns\",\"autoRotate\":false,\"description\":\"API key for transactional email provider\"}", + "description": "Generates a 30-day API key for email campaign integration." + }, + { + "inputJson": "{\"secretName\":\"crmPassword\",\"secretType\":\"password\",\"expirationDays\":0,\"usageScope\":\"crmIntegration\",\"autoRotate\":true,\"description\":\"Password for CRM system integration\"}", + "description": "Creates a non-expiring password secret that auto-rotates for CRM system integration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "marketing-automation.createSchema", + "description": "Generates a JSON schema definition for marketing automation data structures such as campaign configurations, user segmentation criteria, or email templates. Accepts input parameters defining fields and their types, validation rules, and nested structures, then produces a JSON schema usable for data validation and interface generation.", + "category": "marketing-automation", + "parameters": [ + { + "name": "schemaName", + "type": "string", + "description": "The name identifier for the schema to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "An array of field definitions describing each field's name, type, and validation constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A human-readable description of the schema purpose and contents.", + "required": false, + "defaultValue": "" + }, + { + "name": "requiredFields", + "type": "array", + "description": "List of field names that are required within the schema.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "allowAdditionalProperties", + "type": "boolean", + "description": "Flag indicating whether properties not defined in the schema are allowed.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A complete JSON schema object representing the defined marketing data structure, conforming to JSON Schema standards." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate or validate marketing automation data formats such as campaign configurations, targeting rules, or email content templates. It assists in ensuring data consistency and supports UI form generation.", + "limitations": "The tool does not generate actual marketing content or campaign logic; it only produces schema definitions. Complex conditional validation beyond basic JSON Schema features is not supported.", + "examples": [ + "Create a schema for an email campaign configuration with fields for subject, senderEmail, sendDate, and contentBody.", + "Generate a schema for user segmentation criteria including demographic, behavior, and engagement score fields.", + "Define a schema to validate newsletter subscription data with required email and optional preferences." + ] + }, + "tags": [ + "marketing", + "automation", + "schema", + "json-schema", + "data-validation", + "campaign", + "template" + ], + "examples": [ + { + "inputJson": "{\"schemaName\":\"EmailCampaign\",\"fields\":[{\"name\":\"subject\",\"type\":\"string\"},{\"name\":\"senderEmail\",\"type\":\"string\"},{\"name\":\"sendDate\",\"type\":\"string\",\"format\":\"date-time\"},{\"name\":\"contentBody\",\"type\":\"string\"}],\"requiredFields\":[\"subject\",\"senderEmail\",\"sendDate\"],\"allowAdditionalProperties\":false}", + "description": "Generate JSON schema for an email campaign defining subject, sender email, scheduled send date, and content body fields." + }, + { + "inputJson": "{\"schemaName\":\"UserSegmentation\",\"fields\":[{\"name\":\"ageRange\",\"type\":\"object\",\"properties\":{\"min\":{\"type\":\"number\"},\"max\":{\"type\":\"number\"}}},{\"name\":\"interests\",\"type\":\"array\",\"items\":{\"type\":\"string\"}},{\"name\":\"engagementScore\",\"type\":\"number\",\"minimum\":0,\"maximum\":100}],\"requiredFields\":[\"ageRange\"],\"allowAdditionalProperties\":true}", + "description": "Create a schema for user segmentation including age range, interests list, and numeric engagement score." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Schema", + "context": null + } + }, + { + "name": "marketing-automation.createPackage", + "description": "Creates a marketing package by bundling campaign assets, targeting rules, schedules, and budget settings into a deployable unit. Accepts input details like assets (images, copy), audience segments, campaign timeline, and budget allocations, then processes and outputs a package ID with deployment readiness status and summary.", + "category": "marketing-automation", + "parameters": [ + { + "name": "packageName", + "type": "string", + "description": "The name of the marketing package to identify it uniquely", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignAssets", + "type": "array", + "description": "List of campaign assets including images, videos, and copy used in the marketing package", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudienceSegments", + "type": "array", + "description": "Audience segments the campaign targets, defined by demographic or behavioral criteria", + "required": true, + "defaultValue": "" + }, + { + "name": "schedule", + "type": "object", + "description": "Start and end dates along with specific times for campaign activation", + "required": true, + "defaultValue": "" + }, + { + "name": "budgetAllocation", + "type": "object", + "description": "Budget details including total spend and distribution across channels", + "required": true, + "defaultValue": "" + }, + { + "name": "deliveryChannels", + "type": "array", + "description": "Channels through which the marketing package will be delivered, e.g., email, social media, search ads", + "required": true, + "defaultValue": "" + }, + { + "name": "autoOptimize", + "type": "boolean", + "description": "Whether to enable automated optimization based on performance metrics", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique package ID, deployment readiness status, and a summary of the package details" + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a comprehensive marketing campaign package that bundles all necessary assets, targeting criteria, scheduling, and budget information into a cohesive unit ready for deployment. Ideal for automating campaign setup in marketing platforms.", + "limitations": "Does not deploy the package directly; it only prepares and validates the marketing package. Integration with deployment systems is required for actual campaign launch.", + "examples": [ + "Create a marketing package for a summer sale campaign targeting millennials on email and social media with a budget of $10,000 scheduled for July.", + "Bundle assets and audience segments for a holiday promotion to be delivered via search ads and email with auto-optimization enabled." + ] + }, + "tags": [ + "marketing", + "automation", + "campaign", + "package", + "budgets", + "scheduling", + "audience", + "assets" + ], + "examples": [ + { + "inputJson": "{\"packageName\":\"SummerSale2024\",\"campaignAssets\":[{\"type\":\"image\",\"url\":\"https://example.com/banner.jpg\"},{\"type\":\"copy\",\"text\":\"Big Summer Discounts!\"}],\"targetAudienceSegments\":[{\"ageRange\":\"25-34\",\"interests\":[\"fashion\",\"outdoors\"]}],\"schedule\":{\"startDate\":\"2024-07-01\",\"endDate\":\"2024-07-15\"},\"budgetAllocation\":{\"total\":10000,\"channels\":{\"email\":5000,\"socialMedia\":5000}},\"deliveryChannels\":[\"email\",\"socialMedia\"],\"autoOptimize\":true}", + "description": "Creating a summer sale marketing package targeting young adults with specified assets and budget allocation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Package", + "context": null + } + }, + { + "name": "marketing-automation.createResume", + "description": "Generates a professional resume document based on provided personal details, work experience, education, skills, and optional customization settings. Inputs structured data and outputs a formatted resume as PDF or DOCX file, suitable for job applications in marketing and related domains.", + "category": "marketing-automation", + "parameters": [ + { + "name": "personalInfo", + "type": "object", + "description": "Basic personal details including full name, contact info, and professional summary.", + "required": true, + "defaultValue": "" + }, + { + "name": "workExperience", + "type": "array", + "description": "List of work experience entries, each including job title, company, start/end dates, and descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "education", + "type": "array", + "description": "List of educational background entries, such as degrees, institutions, and graduation years.", + "required": true, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Array of skill strings relevant to the marketing domain or desired roles.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "additionalSections", + "type": "array", + "description": "Optional additional resume sections such as certifications, awards, or volunteer work.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the resume document. Supported values: 'pdf', 'docx'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "templateStyle", + "type": "string", + "description": "Choice of resume template style to apply, e.g., 'modern', 'classic', or 'creative'.", + "required": false, + "defaultValue": "modern" + } + ], + "returns": { + "type": "object", + "description": "An object containing a base64 encoded string of the generated resume file and its MIME type." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to produce a customized, professional resume document automatically from structured candidate data for marketing roles or related fields, especially when multiple outputs or template variations are needed. It helps automate resume generation to speed up job application or recruitment processes.", + "limitations": "Does not edit existing resumes or parse unstructured text inputs; limited to provided structured input data and predefined template styles; does not provide semantic optimization or keyword tailoring for ATS systems.", + "examples": [ + "Create a resume in PDF for a marketing manager with 5 years experience, skills in SEO and content marketing, using a modern template.", + "Generate a DOCX resume including certifications, with a classic template style for a junior marketing analyst.", + "Produce a simple PDF resume with only education and skills sections filled, for an entry-level marketing role." + ] + }, + "tags": [ + "marketing", + "automation", + "resume", + "document-generation", + "hr-tech", + "job-application", + "pdf", + "docx" + ], + "examples": [ + { + "inputJson": "{\"personalInfo\":{\"fullName\":\"Jane Doe\",\"contactEmail\":\"jane.doe@example.com\",\"phone\":\"555-1234\",\"professionalSummary\":\"Experienced marketing manager with a focus on digital campaigns.\"},\"workExperience\":[{\"jobTitle\":\"Marketing Manager\",\"company\":\"XYZ Corp\",\"startDate\":\"2018-06\",\"endDate\":\"2023-03\",\"description\":\"Led content marketing and SEO strategy, increasing traffic by 40%.\"}],\"education\":[{\"degree\":\"B.A. in Marketing\",\"institution\":\"State University\",\"graduationYear\":\"2017\"}],\"skills\":[\"SEO\",\"Content Marketing\",\"Google Analytics\"],\"outputFormat\":\"pdf\",\"templateStyle\":\"modern\"}", + "description": "Generate a PDF resume with one work experience entry and key skills using the modern template." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "sales-automation.analyzeDashboard", + "description": "Analyzes sales performance dashboard data by accepting sales metrics, time range, and filter criteria. Processes the input to generate insights including trend analysis, top-performing products or reps, and anomaly detection. Outputs a structured report with key sales KPIs and recommendations to optimize sales strategies.", + "category": "sales-automation", + "parameters": [ + { + "name": "metrics", + "type": "array", + "description": "List of sales metrics to analyze (e.g., revenue, conversionRate, leadCount).", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Object specifying start and end dates for the analysis period in ISO format.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filters to refine data scope such as by region, salesRep, or productCategory.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTrends", + "type": "boolean", + "description": "Whether to include trend analysis over the specified time range.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable detection and highlighting of anomalies in sales data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing analyzed sales KPIs, trends, top performers, anomaly reports, and actionable recommendations for improving sales effectiveness." + }, + "aiAgent": { + "useCase": "Use this tool when tasked with evaluating sales dashboards to extract actionable insights from sales KPIs across selected metrics and time periods. Ideal for generating detailed sales performance reports that help refine sales tactics and forecast future trends.", + "limitations": "This tool relies on accurate and complete input sales data and cannot access external CRM systems directly or update the dashboard data sources. It does not perform raw data extraction or integration with third-party platforms.", + "examples": [ + "Analyze sales revenue and conversion rate for Q1 2024 filtered by region 'North America'.", + "Generate a sales performance report for top products over the last 6 months including trend analysis.", + "Detect anomalies in lead conversion rates for a specific sales rep within the last month." + ] + }, + "tags": [ + "sales", + "automation", + "analytics", + "dashboard", + "performance", + "metrics", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"metrics\":[\"revenue\",\"conversionRate\"],\"timeRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-03-31\"},\"filters\":{\"region\":\"North America\"},\"includeTrends\":true,\"detectAnomalies\":true}", + "description": "Analyze revenue and conversion rate in Q1 2024 for North America with trends and anomaly detection." + }, + { + "inputJson": "{\"metrics\":[\"leadCount\",\"closedDeals\"],\"timeRange\":{\"start\":\"2023-10-01\",\"end\":\"2024-03-31\"},\"filters\":{},\"includeTrends\":true,\"detectAnomalies\":false}", + "description": "Evaluate leads and closed deals over the past 6 months with trend analysis only." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "sales-automation.analyzeTable", + "description": "This tool accepts a sales data table in JSON format and analyzes key sales metrics such as total revenue, lead conversion rates, sales cycle duration, and customer segmentation. It processes the input table to produce a structured summary report highlighting trends, performance indicators, and potential areas for improvement to support sales automation and strategy.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesTable", + "type": "array", + "description": "An array of objects representing sales records, where each record includes fields like leadId, customerSegment, saleAmount, saleDate, and status.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "An object specifying the start and end dates for filtering the sales data to analyze (e.g., {\"start\":\"2023-01-01\",\"end\":\"2023-12-31\"}).", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional field name to group analysis results by (e.g., 'customerSegment' or 'region').", + "required": false, + "defaultValue": "" + }, + { + "name": "includeConversionRate", + "type": "boolean", + "description": "Flag to include lead conversion rate statistics in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSalesCycleAnalysis", + "type": "boolean", + "description": "Flag to include average sales cycle duration and related metrics in the summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing analyzed sales metrics including total revenue, conversion rates, sales cycle durations, grouped statistics if requested, and identified trends." + }, + "aiAgent": { + "useCase": "An AI agent should use this tool when it needs to analyze structured sales tabular data to generate summarized insights such as revenue totals, conversion rates, and sales cycle information. This supports automating sales performance evaluation, reporting, and strategy formulation.", + "limitations": "This tool does not generate raw sales forecasts or predictive models. It requires correctly formatted sales data and cannot interpret unstructured or incomplete data tables.", + "examples": [ + "Analyze sales data from the last quarter grouped by customer segment to find conversion rates and revenue.", + "Summarize total sales and average sales cycle duration for leads marked as closed within the current year.", + "Provide a report on sales performance without grouping but including conversion rates." + ] + }, + "tags": [ + "sales", + "automation", + "analysis", + "reporting", + "lead management", + "metrics", + "table" + ], + "examples": [ + { + "inputJson": "{\"salesTable\":[{\"leadId\":\"L001\",\"customerSegment\":\"Enterprise\",\"saleAmount\":50000,\"saleDate\":\"2024-03-15\",\"status\":\"Closed Won\",\"leadCreatedDate\":\"2024-02-01\"},{\"leadId\":\"L002\",\"customerSegment\":\"SMB\",\"saleAmount\":15000,\"saleDate\":\"2024-03-20\",\"status\":\"Closed Lost\",\"leadCreatedDate\":\"2024-01-25\"}],\"dateRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-03-31\"},\"groupBy\":\"customerSegment\",\"includeConversionRate\":true,\"includeSalesCycleAnalysis\":true}", + "description": "Analyze Q1 2024 sales data grouped by customer segment including conversion rates and sales cycle durations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "sales-automation.analyzeLink", + "description": "Analyzes a given sales-related URL to extract and summarize relevant sales content such as product details, pricing, and promotional offers. Accepts a URL string as input, performs content retrieval and natural language processing to identify key sales information, and returns a structured summary highlighting critical sales elements and potential lead insights.", + "category": "sales-automation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The sales-related URL to analyze. Must be a valid, accessible link containing sales or marketing content.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as page title, meta description, and keywords in the output summary.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum number of words to include in the sales content summary, to control output length.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing the extracted sales content summary, main product or service described, pricing details, promotional offers if any, and optional metadata such as page title and keywords." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly extract and summarize actionable sales information from a web link, such as product descriptions or sales offers, facilitating lead qualification or content analysis without manual browsing.", + "limitations": "Cannot analyze private or paywalled content; performance depends on the accessibility and structure of the webpage; does not interact with dynamic or script-heavy pages that require UI rendering.", + "examples": [ + "Analyze the sales page link to extract key product details and pricing.", + "Summarize the promotional offers from this sales URL for lead generation.", + "Get metadata and main sales highlights from a product landing page link." + ] + }, + "tags": [ + "sales", + "automation", + "analysis", + "web-content", + "lead-generation", + "sales-data", + "url-analysis" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/product123\",\"includeMetadata\":true,\"maxSummaryLength\":150}", + "description": "Analyze a product page URL to extract sales summary, pricing, and metadata with a moderate-length summary." + }, + { + "inputJson": "{\"url\":\"https://promotion.example.com/special-offer\",\"includeMetadata\":false,\"maxSummaryLength\":50}", + "description": "Extract brief promotional offer details from a sales promotion webpage, excluding metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "sales-automation.analyzeComment", + "description": "Analyzes customer or lead comments to identify sentiment, key topics, and sales intent. Accepts a comment text input and optional metadata. Returns analysis including sentiment score, detected topics, and intent classification to help prioritize and tailor sales follow-up.", + "category": "sales-automation", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The text content of the customer's or lead's comment to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the comment text for accurate analysis. Defaults to 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data such as customer ID, timestamp, or context to provide richer analysis.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment score (range -1 to 1), key topics array, and classified intent string indicating the sales-related purpose of the comment." + }, + "aiAgent": { + "useCase": "Use this tool when processing incoming customer or lead comments in order to automatically understand their emotional tone, identify main topics discussed, and assess their intent regarding sales actions. It helps prioritize leads and tailor responses in sales automation workflows.", + "limitations": "Cannot fully understand highly ambiguous or sarcastic comments; limited by language support specified. Does not provide full conversation context or replace human judgment.", + "examples": [ + "Analyze this customer feedback comment to gauge sentiment and sales intent.", + "Determine the key topics and urgency from this sales inquiry comment.", + "Process a lead's message to classify whether they are willing to purchase, need information, or are just browsing." + ] + }, + "tags": [ + "analysis", + "sales", + "comment", + "sentiment-analysis", + "lead-management", + "intent-detection" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I'm really interested in your product but would like to see a demo first.\",\"language\":\"en\"}", + "description": "Detect positive interest and intent to engage from a lead's comment." + }, + { + "inputJson": "{\"commentText\":\"Not happy with the delayed responses last time.\",\"language\":\"en\"}", + "description": "Identify negative sentiment and potential risk for existing customer." + }, + { + "inputJson": "{\"commentText\":\"Can you provide pricing details and bulk order discounts?\",\"language\":\"en\"}", + "description": "Extract intent related to pricing inquiry and possible bulk order interest." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "sales-automation.analyzeOpportunity", + "description": "This tool analyzes sales opportunity data provided as input, including deal size, probability, customer engagement metrics, and competitor information. It processes these factors to assess opportunity strength, predict likelihood of closing, and identify potential risks or areas for improvement. The output is a comprehensive report detailing opportunity score, key drivers, and actionable recommendations.", + "category": "sales-automation", + "parameters": [ + { + "name": "opportunityData", + "type": "object", + "description": "Object containing details about the sales opportunity such as dealValue, closeProbability, customerInteractions, competitorPresence, and salesStage.", + "required": true, + "defaultValue": "" + }, + { + "name": "marketContext", + "type": "string", + "description": "Optional description of the current market or industry context relevant to the opportunity.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeRiskAnalysis", + "type": "boolean", + "description": "If true, include detailed risk factors and mitigation suggestions in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "A number between 0 and 1 specifying the minimum confidence level to consider the opportunity highly probable to close.", + "required": false, + "defaultValue": "0.75" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report containing overall opportunity score (0-100), risk level, key factors influencing the outcome, predicted close likelihood, and tailored recommendations for next steps." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives opportunity-specific sales data and needs to provide a detailed evaluation to support sales decision-making, prioritizing efforts, or forecasting revenue. Ideal for automating sales pipeline analysis, risk assessment, and opportunity scoring to enhance sales team efficiency.", + "limitations": "This tool cannot access real-time external market data or CRM systems directly and relies solely on the provided input data. It cannot guarantee business outcomes or replace human judgment.", + "examples": [ + "Analyze the opportunity with deal size $500K and 60% close probability based on recent customer meetings.", + "Evaluate the sales deal in the technology sector, considering strong competitor activity and the current economic climate.", + "Provide an opportunity strength report including risk factors for a large enterprise software sale at late sales stage." + ] + }, + "tags": [ + "sales", + "analysis", + "opportunity", + "forecasting", + "risk-assessment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"opportunityData\":{\"dealValue\":500000,\"closeProbability\":0.6,\"customerInteractions\":5,\"competitorPresence\":true,\"salesStage\":\"proposal\"},\"marketContext\":\"Technology sector with moderate growth.\",\"includeRiskAnalysis\":true,\"confidenceThreshold\":0.75}", + "description": "Analyze a mid-sized technology sector deal with moderate close probability and competitor presence, including risk factors." + }, + { + "inputJson": "{\"opportunityData\":{\"dealValue\":1200000,\"closeProbability\":0.85,\"customerInteractions\":8,\"competitorPresence\":false,\"salesStage\":\"negotiation\"},\"includeRiskAnalysis\":false,\"confidenceThreshold\":0.8}", + "description": "Evaluate a large deal deep in negotiation with high close probability and no competitor threat, excluding risk analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "sales-automation.analyzeRisk", + "description": "Analyzes potential risks in sales leads and accounts by evaluating data such as credit scores, payment history, and market factors. Accepts lead or account data input, processes risk assessment models, and outputs a detailed risk score and categories identifying potential financial or operational risks affecting sales success.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "Structured data object containing lead or account information including financial, contact, and transaction history details.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskFactors", + "type": "array", + "description": "List of risk factors or criteria to consider such as credit score thresholds, industry risk levels, or outstanding balances.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeMarketAnalysis", + "type": "boolean", + "description": "Whether to incorporate external market trend and competitor risk data into the analysis.", + "required": false, + "defaultValue": "false" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "Minimum confidence level (0-1) for flagging risk issues in the result output.", + "required": false, + "defaultValue": "0.75" + } + ], + "returns": { + "type": "object", + "description": "Risk analysis report including overall risk score (0-1), risk categories flagged, confidence scores for each risk type, and recommended actions for the sales team." + }, + "aiAgent": { + "useCase": "Use this tool when assessing the reliability and riskiness of new or existing sales leads or accounts. Especially helpful in prioritizing outreach and managing exposure to bad debt or fraud. It supports decisions on whether to proceed, request further information, or decline leads based on quantified risk metrics.", + "limitations": "Does not guarantee risk-free leads; depends on quality and completeness of input data. Market analysis may not reflect sudden changes. Not a replacement for compliance checks or legal vetting.", + "examples": [ + "Analyze the credit and payment risk of lead XYZ Corp before scheduling a meeting.", + "Evaluate risk factors for a portfolio of leads to prioritize sales efforts.", + "Determine if a high-value lead shows signs of financial instability based on recent transactions." + ] + }, + "tags": [ + "sales", + "risk-analysis", + "lead-management", + "financial-risk", + "automation" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"companyName\":\"XYZ Corp\",\"creditScore\":620,\"paymentHistory\":[{\"date\":\"2024-01-15\",\"amount\":5000,\"status\":\"late\"}],\"industry\":\"manufacturing\",\"outstandingBalance\":12000},\"riskFactors\":[\"creditScore\",\"paymentHistory\",\"outstandingBalance\"],\"includeMarketAnalysis\":true,\"confidenceThreshold\":0.8}", + "description": "Evaluates risk for a manufacturing company lead including payment delays and credit score." + }, + { + "inputJson": "{\"leadData\":{\"companyName\":\"ABC Inc\",\"creditScore\":780,\"paymentHistory\":[{\"date\":\"2024-02-01\",\"amount\":2000,\"status\":\"on-time\"}],\"industry\":\"software\",\"outstandingBalance\":0},\"riskFactors\":[\"creditScore\"],\"includeMarketAnalysis\":false,\"confidenceThreshold\":0.7}", + "description": "Assesses low-risk software industry lead based on strong credit and good payment history." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "sales-automation.downloadDataset", + "description": "Downloads a sales dataset based on specified filters such as date range, sales region, and lead source. Accepts parameters to customize data granularity and format, then retrieves and exports the dataset as a CSV or JSON file for further analysis or CRM import.", + "category": "sales-automation", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "Start date to filter sales data, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date to filter sales data, in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "salesRegion", + "type": "array", + "description": "List of sales regions to include in dataset (e.g., ['North America', 'EMEA']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "leadSource", + "type": "array", + "description": "List of lead sources to filter by (e.g., ['Website', 'Referral']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed lead information (contact info, previous interactions).", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the exported dataset file, either 'csv' or 'json'.", + "required": false, + "defaultValue": "csv" + }, + { + "name": "granularity", + "type": "string", + "description": "Level of data aggregation: 'daily', 'weekly', or 'monthly'.", + "required": false, + "defaultValue": "daily" + } + ], + "returns": { + "type": "object", + "description": "An object containing a fileUrl string linking to the downloadable dataset file, plus metadata about the dataset generated." + }, + "aiAgent": { + "useCase": "Use this tool when needing to retrieve historical or current sales data for analysis, reporting, or import into other systems. It allows filtered extraction by date range, region, lead source, and data detail level, supporting export in common formats to automate sales process insights or dashboards.", + "limitations": "Does not perform real-time data streaming, data updating, or integration with external CRMs beyond dataset export. It only fetches pre-aggregated or stored sales data snapshots.", + "examples": [ + "Download sales leads from North America region between 2023-01-01 and 2023-03-31 in CSV format including detailed lead info.", + "Export monthly aggregated sales dataset filtered by referral leads between 2022-10-01 and 2022-12-31 as JSON.", + "Get a weekly sales dataset for all regions excluding detailed info for last quarter in CSV." + ] + }, + "tags": [ + "sales", + "dataset", + "download", + "automation", + "lead management", + "export" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"salesRegion\":[\"North America\"],\"includeDetails\":true,\"outputFormat\":\"csv\"}", + "description": "Download detailed sales leads for North America from Jan to Mar 2023 as CSV." + }, + { + "inputJson": "{\"startDate\":\"2022-10-01\",\"endDate\":\"2022-12-31\",\"leadSource\":[\"Referral\"],\"granularity\":\"monthly\",\"outputFormat\":\"json\"}", + "description": "Export monthly summarized sales dataset filtered by referral leads for Q4 2022 in JSON." + }, + { + "inputJson": "{\"startDate\":\"2023-04-01\",\"endDate\":\"2023-06-30\",\"granularity\":\"weekly\",\"includeDetails\":false}", + "description": "Get weekly aggregated sales data for all regions with basic info for Q2 2023 in CSV (default)." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "sales-automation.analyzePayment", + "description": "This tool analyzes payment transaction data to provide insights such as payment success rates, failure reasons, average payment amounts, and trends over time. It accepts detailed payment records as input and outputs a structured analysis report for sales and finance teams to optimize payment processes.", + "category": "sales-automation", + "parameters": [ + { + "name": "paymentRecords", + "type": "array", + "description": "List of payment transactions to analyze, each including amount, status, method, and timestamp", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) to filter payments for analysis", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) to filter payments for analysis", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Field to group results by, such as 'method' or 'status'", + "required": false, + "defaultValue": "status" + } + ], + "returns": { + "type": "object", + "description": "Analysis report including success/failure counts, average amounts, failure reasons breakdown, and trend data" + }, + "aiAgent": { + "useCase": "Use this tool when needing to summarize and gain insights from payment transaction data to identify patterns like payment failures or popular payment methods. Ideal for financial analysis, sales process optimization, or troubleshooting payment issues.", + "limitations": "Does not process raw payment gateway logs directly or initiate payment processing; requires structured transaction data as input.", + "examples": [ + "Analyze payment success rates across different payment methods over the last month.", + "Summarize average payment amounts and identify common failure reasons for recent transactions.", + "Provide trends in payment failures over a custom date range grouped by payment status." + ] + }, + "tags": [ + "sales", + "payment", + "analysis", + "transactions", + "finance", + "automation" + ], + "examples": [ + { + "inputJson": "{\"paymentRecords\":[{\"amount\":100.0,\"status\":\"success\",\"method\":\"credit_card\",\"timestamp\":\"2024-04-01T10:00:00Z\"},{\"amount\":50.0,\"status\":\"failed\",\"method\":\"paypal\",\"timestamp\":\"2024-04-02T12:30:00Z\"},{\"amount\":200.0,\"status\":\"success\",\"method\":\"bank_transfer\",\"timestamp\":\"2024-04-03T15:45:00Z\"}],\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"groupBy\":\"status\"}", + "description": "Analyze payment transaction success and failure counts for April 2024, grouped by payment status." + }, + { + "inputJson": "{\"paymentRecords\":[{\"amount\":75.0,\"status\":\"failed\",\"method\":\"credit_card\",\"timestamp\":\"2024-05-10T09:20:00Z\"},{\"amount\":150.0,\"status\":\"success\",\"method\":\"credit_card\",\"timestamp\":\"2024-05-11T14:00:00Z\"}],\"groupBy\":\"method\"}", + "description": "Summarize payment amounts and success rates grouped by payment method for recent transactions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "sales-automation.downloadJSON", + "description": "This tool downloads sales lead or opportunity data from a specified sales platform or CRM as JSON format. It accepts parameters such as source platform credentials, query filters, and export options, then fetches and returns the matching sales data structured in JSON for easy integration with other systems or analysis.", + "category": "sales-automation", + "parameters": [ + { + "name": "platform", + "type": "string", + "description": "The sales platform or CRM system to download data from (e.g., Salesforce, HubSpot).", + "required": true, + "defaultValue": "" + }, + { + "name": "apiKey", + "type": "string", + "description": "API key or token for authenticating with the sales platform.", + "required": true, + "defaultValue": "" + }, + { + "name": "queryFilters", + "type": "object", + "description": "Filters to apply when querying sales data, such as date range, lead status, or opportunity stage.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "dataType", + "type": "string", + "description": "Type of sales data to download: 'leads', 'opportunities', or 'contacts'.", + "required": true, + "defaultValue": "leads" + }, + { + "name": "includeArchived", + "type": "boolean", + "description": "Whether to include archived or closed records in the download.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of records to retrieve in the download.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of sales data records formatted as JSON objects matching the query filters." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically export filtered sales data from a CRM or sales platform into JSON format for downstream processing, reporting, or integration with analytics systems. It is ideal for automating lead or opportunity data collection without manual export steps.", + "limitations": "This tool cannot update or modify sales data; it only downloads existing data. It requires valid API credentials and the selected platform must support data exports via API. Large datasets may require pagination handled externally.", + "examples": [ + "Download all new leads from Salesforce from last month as JSON.", + "Fetch up to 500 open opportunities from HubSpot including archived records.", + "Retrieve contacts from a sales platform filtered by industry sector." + ] + }, + "tags": [ + "sales", + "automation", + "data export", + "CRM", + "lead management", + "API", + "JSON" + ], + "examples": [ + { + "inputJson": "{\"platform\":\"Salesforce\",\"apiKey\":\"abc123\",\"queryFilters\":{\"createdDate\":{\"from\":\"2024-05-01\",\"to\":\"2024-05-31\"},\"status\":\"New\"},\"dataType\":\"leads\",\"includeArchived\":false,\"maxRecords\":200}", + "description": "Download up to 200 new leads created in May 2024 from Salesforce excluding archived records." + }, + { + "inputJson": "{\"platform\":\"HubSpot\",\"apiKey\":\"token_xyz\",\"queryFilters\":{\"stage\":\"Open\"},\"dataType\":\"opportunities\",\"includeArchived\":true,\"maxRecords\":500}", + "description": "Fetch up to 500 open and archived opportunities from HubSpot." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "sales-automation.downloadImage", + "description": "Downloads an image from a given URL or from a sales-related online resource, allowing sales automation tools to fetch media assets such as product images, promotional banners, or lead-related visuals. The tool accepts a URL or resource identifier and returns the image data or a saved file path.", + "category": "sales-automation", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The URL of the image to download. Required if resourceId is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "resourceId", + "type": "string", + "description": "Identifier for an image resource in a connected sales platform or CMS. Used if imageUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional desired file name to save the image as locally or in storage. If omitted, a default or original file name is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "saveToLocal", + "type": "boolean", + "description": "Flag indicating whether to save the downloaded image locally (true) or just return image data (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for the download operation. Defaults to 30 seconds.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the status of the download, local file path if saved, image metadata such as size and format, or error details if failed." + }, + "aiAgent": { + "useCase": "Use this tool when automating sales workflows that require retrieving images for leads, marketing materials, or product information, such as attaching images to CRM entries or generating sales presentations. It streamlines access to media assets within automated sales processes.", + "limitations": "Does not perform image format conversions beyond what's intrinsically supported by the source. Cannot download images behind authentication without additional credential support. Not for bulk mass download without rate limiting.", + "examples": [ + "Download product image from a URL to attach to a sales lead profile.", + "Fetch promotional banner images from a CMS resource ID to include in automated newsletters.", + "Retrieve and save lead profile pictures from a sales platform for enrichment." + ] + }, + "tags": [ + "sales", + "automation", + "image", + "download", + "media", + "crm", + "marketing", + "asset-management" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/images/product123.jpg\",\"fileName\":\"product123.jpg\",\"saveToLocal\":true}", + "description": "Download product image from URL and save locally with specified file name." + }, + { + "inputJson": "{\"resourceId\":\"promoBanner987\",\"saveToLocal\":false}", + "description": "Download promotional banner image from connected sales platform by resource identifier and return image data without saving." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "sales-automation.uploadJSON", + "description": "Uploads sales lead data in JSON format to the CRM system, validating and processing the input leads to create or update entries, and returning a summary report of the operation including successes and errors.", + "category": "sales-automation", + "parameters": [ + { + "name": "jsonData", + "type": "string", + "description": "The JSON string containing an array of sales lead objects to be uploaded. Each lead should include necessary fields like name, email, and contact info.", + "required": true, + "defaultValue": "" + }, + { + "name": "updateExisting", + "type": "boolean", + "description": "Whether to update existing leads if a matching identifier is found (true) or skip duplicates (false).", + "required": false, + "defaultValue": "true" + }, + { + "name": "crmEndpoint", + "type": "string", + "description": "The API endpoint URL of the CRM system where the data should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Authentication token or API key required to authorize the upload request to the CRM system.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, the tool only validates the JSON data without uploading it, returning validation results.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An upload summary object containing total leads processed, number successfully uploaded or updated, an array of errors for failed records, and an overall status message." + }, + "aiAgent": { + "useCase": "Use this tool when given sales lead data in JSON format that needs to be integrated into a CRM system for follow-up and lead management. It is particularly suitable when the agent must ensure data validity before bulk inserting or updating leads automatically.", + "limitations": "This tool does not parse other formats like CSV or XML; it requires correctly structured JSON input. It cannot generate leads or enrich data, only upload it. It also depends on provided CRM endpoint and valid authorization.", + "examples": [ + "Upload a JSON array of new leads to the CRM, updating existing entries if duplicates are found.", + "Validate a JSON lead dataset before a bulk upload to detect errors without modifying the CRM.", + "Upload leads specifying a custom API endpoint and authentication token for a particular sales system." + ] + }, + "tags": [ + "sales", + "automation", + "CRM", + "upload", + "JSON", + "lead management", + "data validation" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":\"[{\\\"name\\\":\\\"Alice Johnson\\\",\\\"email\\\":\\\"alice@example.com\\\",\\\"phone\\\":\\\"+1234567890\\\"},{\\\"name\\\":\\\"Bob Smith\\\",\\\"email\\\":\\\"bob@example.com\\\",\\\"phone\\\":\\\"+0987654321\\\"}]\",\"updateExisting\":true,\"crmEndpoint\":\"https://api.crmexample.com/leads\",\"authToken\":\"abcdef12345\",\"validateOnly\":false}", + "description": "Uploading two new leads with update on duplicates enabled to the specified CRM endpoint." + }, + { + "inputJson": "{\"jsonData\":\"[{\\\"name\\\":\\\"Charlie Brown\\\",\\\"email\\\":\\\"charlie@invalid\\\"}]\",\"updateExisting\":false,\"crmEndpoint\":\"https://api.crmexample.com/leads\",\"authToken\":\"abcdef12345\",\"validateOnly\":true}", + "description": "Validating a single lead with an invalid email to check for data errors before upload." + }, + { + "inputJson": "{\"jsonData\":\"[{\\\"name\\\":\\\"Dana Lee\\\",\\\"email\\\":\\\"dana@example.com\\\",\\\"phone\\\":\\\"+1122334455\\\"}]\",\"updateExisting\":false,\"crmEndpoint\":\"https://custom.crm.com/api/leads\",\"authToken\":\"token6789\",\"validateOnly\":false}", + "description": "Uploading a single lead without updating existing entries, using custom CRM endpoint and auth token." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "sales-automation.formatWord", + "description": "Formats a given word or term according to specified sales-oriented style rules, such as capitalization style, prefix/suffix addition, and punctuation adjustments. It accepts a word and formatting options, processes these instructions, and returns the formatted word string suited for sales automation documents or communications.", + "category": "sales-automation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The input word or term to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalize", + "type": "string", + "description": "Capitalization style to apply: 'none', 'first', 'all' (none=leave as is, first=capitalize first letter, all=uppercase all letters).", + "required": false, + "defaultValue": "none" + }, + { + "name": "prefix", + "type": "string", + "description": "A string to prepend to the word (e.g., '$', 'Re:', 'New ').", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "A string to append to the word (e.g., '%', ' Inc.').", + "required": false, + "defaultValue": "" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the input word before formatting.", + "required": false, + "defaultValue": "true" + }, + { + "name": "addPeriod", + "type": "boolean", + "description": "Whether to append a period '.' at the end if not already present.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted word string under the 'formattedWord' property." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize or stylize single words or terms in sales automation contexts, such as formatting pricing tags, product names, discount codes, or captions in automated messages and documents to ensure consistent presentation.", + "limitations": "This tool only formats single words or short terms. It does not handle phrases, sentences, or complex text formatting such as font styles, colors, or markdown. It does not validate spelling or semantic correctness.", + "examples": [ + "Format the word 'discount' by capitalizing the first letter and adding a '%' suffix.", + "Format the word ' revenue' by trimming whitespace and converting all letters to uppercase.", + "Format the word 'offer' by adding prefix 'New ' and suffix '!' with first letter capitalized." + ] + }, + "tags": [ + "sales", + "formatting", + "word", + "text-processing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"word\":\" discount \",\"capitalize\":\"first\",\"prefix\":\"\",\"suffix\":\"%\",\"trimWhitespace\":true,\"addPeriod\":false}", + "description": "Trim whitespace from ' discount ', capitalize first letter, and add suffix '%'." + }, + { + "inputJson": "{\"word\":\"revenue\",\"capitalize\":\"all\",\"prefix\":\"$\",\"suffix\":\"\",\"trimWhitespace\":false,\"addPeriod\":true}", + "description": "Convert 'revenue' to uppercase, add '$' prefix, and add a period at the end if missing." + }, + { + "inputJson": "{\"word\":\"offer\",\"capitalize\":\"first\",\"prefix\":\"New \",\"suffix\":\"!\",\"trimWhitespace\":true,\"addPeriod\":false}", + "description": "Trim whitespace, capitalize first letter of 'offer', add 'New ' prefix and '!' suffix." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "sales-automation.renderReport", + "description": "Generates a customizable sales report by processing input sales data, filter criteria, and template preferences. It accepts structured sales records and parameters for date range, metrics selection, and output format, then compiles and renders a formatted report summarizing sales performance.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesData", + "type": "array", + "description": "Array of sales record objects including info like date, amount, product, and sales rep.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) for filtering sales data included in the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) for filtering sales data included in the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of desired metrics to include in the report (e.g., totalSales, averageDealSize).", + "required": false, + "defaultValue": "[\"totalSales\", \"averageDealSize\"]" + }, + { + "name": "groupBy", + "type": "string", + "description": "Category by which to group the report data, such as 'salesRep', 'region', or 'product'.", + "required": false, + "defaultValue": "salesRep" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include graphical charts visualizing the metrics in the rendered report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output format of the report, such as 'pdf', 'html', or 'markdown'.", + "required": false, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered report content as a string and metadata including format and generation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when detailed, customized sales performance reports are needed based on raw sales data inputs. Ideal for generating summaries grouped by relevant categories, with selectable metrics and date filters, providing formatted reports ready for review or distribution.", + "limitations": "This tool does not perform sales data validation or cleaning; input data must be pre-processed. It cannot execute complex predictive analytics or real-time data streaming. It also cannot customize report templates beyond the predefined grouping, metrics, and output format options.", + "examples": [ + "Create a sales report for Q1 2024 grouped by region including total sales and average deal size, output as PDF.", + "Generate an HTML report of sales grouped by product between January and March 2024 including charts for total sales.", + "Render a markdown sales report grouped by sales rep without charts for the entire sales dataset." + ] + }, + "tags": [ + "sales", + "reporting", + "automation", + "data-processing", + "summary", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"salesData\":[{\"date\":\"2024-03-15\",\"amount\":15000,\"product\":\"Product A\",\"salesRep\":\"Alice\"},{\"date\":\"2024-03-20\",\"amount\":20000,\"product\":\"Product B\",\"salesRep\":\"Bob\"}],\"startDate\":\"2024-03-01\",\"endDate\":\"2024-03-31\",\"metrics\":[\"totalSales\",\"averageDealSize\"],\"groupBy\":\"salesRep\",\"includeCharts\":true,\"outputFormat\":\"pdf\"}", + "description": "Generate a March 2024 sales report grouped by sales representative including total sales and average deal size with charts in PDF format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "sales-automation.formatJSON", + "description": "Formats sales-related JSON data records according to customizable rules such as indentation, key sorting, and selective key inclusion. Accepts raw JSON strings representing sales leads or contacts, processes formatting preferences, and outputs a clean, standardized JSON string for easier readability and downstream processing.", + "category": "sales-automation", + "parameters": [ + { + "name": "jsonString", + "type": "string", + "description": "Raw JSON string containing sales data to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the output JSON for readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Whether to alphabetically sort the keys in each JSON object.", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeKeys", + "type": "array", + "description": "List of keys to include in the output JSON objects. If empty or omitted, all keys are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludeKeys", + "type": "array", + "description": "List of keys to exclude from the output JSON objects. Applied after includeKeys filter.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted JSON string under 'formattedJson' key or an error message under 'error' key if the input was invalid." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to present or process sales-related JSON data such as leads, contacts, or opportunities in a standardized and human-readable format. It helps clean up unformatted JSON inputs, enforce consistent key ordering, and filter data fields to meet downstream requirements or display constraints.", + "limitations": "This tool only formats JSON strings and filters keys; it does not validate data semantics, transform data types, or enrich the content. It also assumes input is valid JSON; invalid JSON will cause an error.", + "examples": [ + "Format a messy JSON string of sales leads with 4 space indentation and sorted keys.", + "Format a contacts JSON excluding sensitive fields like 'ssn' and 'creditCard'.", + "Format opportunity records showing only key info: 'id', 'name', 'value', and 'stage'." + ] + }, + "tags": [ + "sales", + "json", + "formatting", + "automation", + "data-cleaning", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"jsonString\":\"{\\\"name\\\":\\\"John Doe\\\", \\\"email\\\":\\\"john@example.com\\\", \\\"lead_score\\\":85, \\\"source\\\":\\\"web\\\"}\",\"indentation\":4,\"sortKeys\":true}", + "description": "Format a single lead with 4 spaces indentation and alphabetically sorted keys." + }, + { + "inputJson": "{\"jsonString\":\"[{\\\"id\\\":1,\\\"name\\\":\\\"Alice\\\",\\\"email\\\":\\\"alice@example.com\\\",\\\"ssn\\\":\\\"123-45-6789\\\"},{\\\"id\\\":2,\\\"name\\\":\\\"Bob\\\",\\\"email\\\":\\\"bob@example.com\\\",\\\"ssn\\\":\\\"987-65-4321\\\"}]\",\"excludeKeys\":[\"ssn\"]}", + "description": "Format an array of contact objects excluding the sensitive 'ssn' field." + }, + { + "inputJson": "{\"jsonString\":\"[{\\\"id\\\":101,\\\"name\\\":\\\"Big Deal\\\",\\\"value\\\":100000,\\\"stage\\\":\\\"proposal\\\",\\\"owner\\\":\\\"Jane\\\"}]\",\"includeKeys\":[\"id\",\"name\",\"value\",\"stage\"]}", + "description": "Format opportunity records showing only essential fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "JSON", + "context": null + } + }, + { + "name": "sales-automation.uploadDataset", + "description": "Uploads a sales dataset in CSV or JSON format to the sales automation system, validating and processing the data to integrate leads, contacts, or opportunities for further sales analysis and automation tasks. Returns a summary of upload status and data quality issues if any.", + "category": "sales-automation", + "parameters": [ + { + "name": "datasetContent", + "type": "string", + "description": "The raw content of the dataset to upload, as a string in CSV or JSON format.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The format of the dataset being uploaded, either 'csv' or 'json'.", + "required": true, + "defaultValue": "" + }, + { + "name": "updateExisting", + "type": "boolean", + "description": "Whether to update existing records if duplicates are found (true) or skip duplicates (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "validateOnly", + "type": "boolean", + "description": "If true, only validate the dataset without uploading it.", + "required": false, + "defaultValue": "false" + }, + { + "name": "source", + "type": "string", + "description": "Optional source identifier for tracking the origin of the dataset upload.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Summary object including success status, number of records processed, records created, updated, skipped, and a list of validation errors if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to import bulk sales data from external sources into the sales automation system for lead management or sales analysis. It is ideal for automating data ingestion workflows or integrating with external CRM exports.", + "limitations": "This tool does not perform advanced data cleansing or transformation beyond basic validation. It cannot upload data formats other than CSV or JSON. It also does not handle API authentication or scheduling of uploads.", + "examples": [ + "Upload a CSV file containing new sales leads with instructions to update duplicates.", + "Validate a JSON dataset for correctness before attempting a full upload.", + "Upload a dataset marking its source as 'monthly CRM export' for auditing purposes." + ] + }, + "tags": [ + "sales", + "upload", + "dataset", + "automation", + "lead-management", + "csv", + "json" + ], + "examples": [ + { + "inputJson": "{\"datasetContent\":\"name,email,phone\\nJohn Doe,john@example.com,1234567890\\nJane Smith,jane@example.com,0987654321\",\"format\":\"csv\",\"updateExisting\":true,\"validateOnly\":false,\"source\":\"crm_export_march\"}", + "description": "Upload a CSV dataset of leads with updating duplicates enabled from a CRM export source." + }, + { + "inputJson": "{\"datasetContent\":\"[{\\\"name\\\":\\\"Alice Johnson\\\",\\\"email\\\":\\\"alice@example.com\\\",\\\"phone\\\":\\\"5555555555\\\"}]\",\"format\":\"json\",\"updateExisting\":false,\"validateOnly\":true,\"source\":\"\"}", + "description": "Validate a JSON dataset containing new lead without uploading it." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "sales-automation.formatText", + "description": "Formats raw sales-related text content such as emails, proposals, or lead notes by applying customizable styling options including capitalization, bullet points, line spacing, and insertion of sales-specific templates. Accepts plain text input and formatting preferences, and outputs the transformed, polished text ready for sales communications.", + "category": "sales-automation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw sales text content to be formatted (e.g., an email draft or lead notes).", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalizeSentences", + "type": "boolean", + "description": "Whether to capitalize the first letter of each sentence in the input text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "useBullets", + "type": "boolean", + "description": "If true, converts line-separated items into bullet points for clarity in lists or proposals.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineSpacing", + "type": "number", + "description": "Number of line breaks to insert between paragraphs or sections (1=single spaced).", + "required": false, + "defaultValue": "1" + }, + { + "name": "insertTemplate", + "type": "string", + "description": "Optional name of a sales text template to prepend or append (e.g., 'followUp', 'introduction'). Use empty string to skip.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formattedText string with the applied styles and templates." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw or unstructured sales text content into polished, professional formats suitable for customer communications, proposals, or lead follow-ups. It automates applying consistent styling and structure to sales texts, saving manual formatting time and improving message clarity.", + "limitations": "This tool does not generate new sales content or rewrite text for tone or style beyond structural formatting. It cannot handle complex language understanding or content sentiment adjustments.", + "examples": [ + "Format my rough sales email draft to capitalize sentences and add bullet points for the product features list.", + "Convert my notes about a lead into a clean, spaced format using the 'followUp' template.", + "Apply single line spacing and no bullets to a sales proposal text block." + ] + }, + "tags": [ + "sales", + "text", + "formatting", + "automation", + "communication", + "lead management" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"hello potential client\\nour product offers several benefits\\n- easy integration\\n- fast support\\nplease consider our offer\",\"capitalizeSentences\":true,\"useBullets\":true,\"lineSpacing\":1,\"insertTemplate\":\"\"}", + "description": "Capitalizes sentences and formats list items with bullets in a sales email draft." + }, + { + "inputJson": "{\"inputText\":\"thank you for your time\\nwe hope to speak soon\",\"capitalizeSentences\":false,\"useBullets\":false,\"lineSpacing\":2,\"insertTemplate\":\"followUp\"}", + "description": "Formats a short thank you note with double line spacing and adds a follow-up sales template." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "sales-automation.formatDataset", + "description": "Formats sales lead datasets by standardizing field names, data types, and cleaning entries to ensure consistency and readiness for analysis or CRM import. Accepts datasets as JSON arrays of objects, applies transformations based on specified options, and outputs a cleaned, formatted dataset in JSON.", + "category": "sales-automation", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "Array of lead data objects to be formatted; each object represents a lead with multiple fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "fieldMappings", + "type": "object", + "description": "Mapping of input field names to standardized field names to unify dataset schema.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "dateFields", + "type": "array", + "description": "List of field names that should be parsed and formatted as ISO date strings.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "removeDuplicates", + "type": "boolean", + "description": "Whether to remove duplicate leads based on a unique identifier field (e.g., email).", + "required": false, + "defaultValue": "true" + }, + { + "name": "uniqueIdField", + "type": "string", + "description": "Name of the field to consider as unique identifier when removing duplicates.", + "required": false, + "defaultValue": "email" + }, + { + "name": "cleanPhoneNumbers", + "type": "boolean", + "description": "Flag to format and standardize phone number fields if present.", + "required": false, + "defaultValue": "true" + }, + { + "name": "defaultValues", + "type": "object", + "description": "Default values to set for missing fields in each lead record.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "array", + "description": "Array of formatted lead objects with standardized fields, consistent data types, and cleaned entries, ready for analysis or import." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw sales leads data with inconsistent field names, data types, or formatting and you need to standardize and clean it before importing to CRM systems or performing analytics. It is ideal for integrating disparate sales datasets to a uniform schema and ensuring data quality.", + "limitations": "This tool cannot validate the accuracy of lead data beyond basic formatting and deduplication. It requires predefined mappings and field lists for best results and does not perform complex data enrichment or prediction.", + "examples": [ + "Format a raw JSON lead dataset by standardizing field names and removing duplicates based on email.", + "Clean and format sales leads including converting date strings to ISO format and normalizing phone numbers.", + "Apply default values for missing fields and unify dataset schema with custom field mappings." + ] + }, + "tags": [ + "sales", + "automation", + "dataset", + "formatting", + "lead-management", + "data-cleaning", + "crm" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"Name\":\"John Smith\",\"Email\":\"john.smith@example.com\",\"SignupDate\":\"03/12/2023\",\"Phone\":\"(555) 123-4567\"},{\"Name\":\"Jane Doe\",\"Email\":\"jane.doe@example.com\",\"SignupDate\":\"12-01-2023\",\"Phone\":\"5551234568\"}],\"fieldMappings\":{\"Name\":\"fullName\",\"Email\":\"email\",\"SignupDate\":\"signupDate\",\"Phone\":\"phoneNumber\"},\"dateFields\":[\"signupDate\"],\"removeDuplicates\":true,\"uniqueIdField\":\"email\",\"cleanPhoneNumbers\":true,\"defaultValues\":{\"status\":\"new\"}}", + "description": "Standardizes a lead dataset by renaming fields, formatting dates and phone numbers, setting default status, and removing duplicates by email." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "sales-automation.formatTest", + "description": "Formats sales automation test scripts by taking raw test code input, applying standardized formatting and beautification rules aligned with best practices, and producing clean, readable, and consistent test code output suitable for review or execution.", + "category": "sales-automation", + "parameters": [ + { + "name": "testCode", + "type": "string", + "description": "Raw test script code as a string that needs formatting to improve readability and compliance with style guidelines.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language or framework of the test code (e.g., 'JavaScript', 'TypeScript', 'Python').", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line length before wrapping code to a new line.", + "required": false, + "defaultValue": "80" + }, + { + "name": "sortImports", + "type": "boolean", + "description": "Whether to alphabetically sort import statements in the test code.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted test code string under the field 'formattedCode' and optionally an array of warnings or notes regarding formatting." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives unformatted or poorly formatted test code related to sales automation scenarios and needs to normalize and beautify it for readability, consistency, or further processing such as code analysis or execution.", + "limitations": "This tool does not validate the correctness or functionality of test code logic, nor does it execute the test. It only reformats code style aspects.", + "examples": [ + "Format this raw sales test script for readability.", + "Beautify my sales automation test code with 4 spaces indentation.", + "Sort imports and format the test code to 100 character line width." + ] + }, + "tags": [ + "sales", + "automation", + "testing", + "formatting", + "code", + "beautification", + "testScripts" + ], + "examples": [ + { + "inputJson": "{\"testCode\":\"describe('Sales Test',()=>{it('should create lead',()=>{expect(createLead()).toBe(true);});});\",\"language\":\"JavaScript\",\"indentSize\":2,\"useTabs\":false,\"lineWidth\":80,\"sortImports\":true}", + "description": "Formats a simple JavaScript sales test code snippet to a clean standard style using 2 space indentation." + }, + { + "inputJson": "{\"testCode\":\"import B from './b';import A from './a';describe('Lead Creation',()=>{it('valid input',()=>{expect(createLead()).toBeTruthy();});});\",\"language\":\"JavaScript\",\"indentSize\":4,\"useTabs\":false,\"lineWidth\":100,\"sortImports\":true}", + "description": "Formats JavaScript test code with 4 space indent and sorted imports alphabetically." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "sales-automation.draftReport", + "description": "Generates a comprehensive sales report draft based on specified criteria such as date range, sales team member, and product categories. It processes raw sales data inputs, applies filters, and summarizes key metrics, producing a structured textual report outline for review or further customization.", + "category": "sales-automation", + "parameters": [ + { + "name": "startDate", + "type": "string", + "description": "The start date for the sales data to include in the report (ISO 8601 format, e.g. 2023-01-01).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date for the sales data to include in the report (ISO 8601 format, e.g. 2023-01-31).", + "required": true, + "defaultValue": "" + }, + { + "name": "salesTeamMemberIds", + "type": "array", + "description": "Optional list of sales team member IDs to filter the report by specific individuals. If empty, includes all.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "productCategoryIds", + "type": "array", + "description": "Optional list of product category IDs to include in the report. If empty, includes all categories.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Flag to include a summary section with key insights and highlights in the report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) for monetary figures in the report. Defaults to USD.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An object containing the textual draft of the sales report including sections for overview, detailed sales data, and optional summary highlights." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a preliminary sales report draft automatically from raw sales data filtered by date, team members, or product categories to assist sales managers in reviewing or presenting sales performance quickly.", + "limitations": "Cannot replace detailed human analysis or integrate external data sources beyond supplied parameters; report content is a draft and should be validated manually.", + "examples": [ + "Generate a sales report draft for January 2024 for the entire sales team.", + "Draft a sales report from last quarter focusing on product categories Electronics and Software.", + "Create a report including only sales made by specific team members in currency EUR." + ] + }, + "tags": [ + "sales", + "automation", + "reporting", + "sales-report", + "drafting", + "data-summary" + ], + "examples": [ + { + "inputJson": "{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"salesTeamMemberIds\":[],\"productCategoryIds\":[],\"includeSummary\":true,\"currency\":\"USD\"}", + "description": "Generate a full sales report for January 2024 with summary in USD." + }, + { + "inputJson": "{\"startDate\":\"2023-10-01\",\"endDate\":\"2023-12-31\",\"salesTeamMemberIds\":[\"TM123\",\"TM456\"],\"productCategoryIds\":[\"PC789\"],\"includeSummary\":false,\"currency\":\"EUR\"}", + "description": "Draft report for Q4 2023 focusing on specified team members and product category without summary, in EUR." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "sales-automation.formatAPI", + "description": "Formats a sales automation API request or response object to comply with a specified sales CRM system's API specifications. Accepts raw JSON data representing sales leads, contacts, or deals, applies transformation rules and field mappings, and outputs a correctly structured API payload ready for integration with the target CRM system.", + "category": "sales-automation", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The raw JSON object representing sales data (e.g., lead, contact, deal) to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetCRM", + "type": "string", + "description": "The target CRM system name (e.g., 'Salesforce', 'HubSpot', 'Zoho') for which the API data should be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataType", + "type": "string", + "description": "Type of sales data to format, such as 'lead', 'contact', or 'deal'.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeOptionalFields", + "type": "boolean", + "description": "Whether to include optional fields defined by the target CRM's API schema in the formatted output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "apiVersion", + "type": "string", + "description": "Specific version of the target CRM API to format data for; defaults to current stable version if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object fully formatted according to the target CRM API specification, ready for API submission or integration." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw sales data objects that need to be converted into the exact JSON schema required for different CRM sales automation APIs. It enables seamless integration and data interchange with sales platforms by automatically mapping fields and formatting nested structures as per CRM standards.", + "limitations": "Cannot perform data validation beyond formatting rules; does not handle API authentication, request sending, or error responses. Only supports predefined CRMs and may not reflect latest undocumented schema changes.", + "examples": [ + "Format a raw lead object for Salesforce API v50 with optional fields included.", + "Convert a contact JSON payload into HubSpot CRM API formatting for version 3.", + "Prepare a sales deal object for Zoho CRM API without optional fields for a quick integration test." + ] + }, + "tags": [ + "sales", + "automation", + "API", + "formatting", + "CRM", + "integration", + "data transformation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"firstName\":\"Jane\",\"lastName\":\"Doe\",\"email\":\"jane.doe@example.com\",\"company\":\"Acme Corp\"},\"targetCRM\":\"Salesforce\",\"dataType\":\"lead\",\"includeOptionalFields\":true,\"apiVersion\":\"50.0\"}", + "description": "Format a raw lead object with basic contact info for Salesforce API version 50.0 including optional fields." + }, + { + "inputJson": "{\"inputData\":{\"email\":\"john.smith@example.com\",\"phoneNumber\":\"123-456-7890\"},\"targetCRM\":\"HubSpot\",\"dataType\":\"contact\",\"includeOptionalFields\":false,\"apiVersion\":\"\"}", + "description": "Format a contact JSON for HubSpot CRM, using the default API version and excluding optional fields." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "sales-automation.formatContract", + "description": "Formats a sales contract document by applying predefined or custom templates, adjusting layout elements, standardizing terminology, and preparing the contract text for final review or electronic delivery. Accepts raw contract text or JSON structured content and outputs a formatted document string.", + "category": "sales-automation", + "parameters": [ + { + "name": "contractContent", + "type": "string", + "description": "The raw contract text or JSON string representing contract clauses and metadata to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateName", + "type": "string", + "description": "Name of the formatting template to apply, such as 'standardSales' or 'enterpriseDeal'.", + "required": false, + "defaultValue": "standardSales" + }, + { + "name": "includeSignatureBlock", + "type": "boolean", + "description": "Whether to add a signature block with placeholders for client and sales representative signatures.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format of the formatted contract, e.g., 'plainText', 'HTML', or 'PDF'.", + "required": false, + "defaultValue": "plainText" + }, + { + "name": "customStyles", + "type": "object", + "description": "Optional styles overriding default template styles such as fonts, colors, or spacing.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract document as a string, along with metadata such as applied template and output format." + }, + "aiAgent": { + "useCase": "Use this tool when preparing sales contract documents for presentation or sending, ensuring they meet company style standards and include necessary elements like signature blocks. It automates the formatting step following contract drafting or data input.", + "limitations": "Cannot generate contract content or legal terms; only formats existing contract text/structure. Does not perform legal validation or negotiation.", + "examples": [ + "Format a raw contract text into a standardized sales contract with signature placeholders in plain text format.", + "Convert structured contract JSON content into a polished HTML document using a custom enterprise template.", + "Produce a PDF formatted sales contract applying company branding and including signature blocks." + ] + }, + "tags": [ + "sales", + "contract", + "formatting", + "automation", + "document", + "template", + "legal", + "crm" + ], + "examples": [ + { + "inputJson": "{\"contractContent\":\"This is a draft contract for customer purchase...\",\"templateName\":\"standardSales\",\"includeSignatureBlock\":true,\"outputFormat\":\"plainText\"}", + "description": "Format a draft plain text contract into a styled sales contract with signature blocks in plain text." + }, + { + "inputJson": "{\"contractContent\":\"{\\\"sections\\\": [{\\\"title\\\": \\\"Terms\\\", \\\"content\\\": \\\"Payment due in 30 days...\\\"}]}\",\"templateName\":\"enterpriseDeal\",\"includeSignatureBlock\":false,\"outputFormat\":\"HTML\"}", + "description": "Format structured contract JSON applying an enterprise HTML template without signature block." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "sales-automation.buildService", + "description": "This tool sets up and configures a customized sales automation service based on specified parameters. It accepts inputs such as target industry, lead source configurations, workflow automations, and notification preferences, then processes these inputs to generate a ready-to-deploy sales automation infrastructure service configuration and deployment package.", + "category": "sales-automation", + "parameters": [ + { + "name": "targetIndustry", + "type": "string", + "description": "Specifies the industry vertical for which the sales automation service is being built (e.g., technology, retail).", + "required": true, + "defaultValue": "" + }, + { + "name": "leadSources", + "type": "array", + "description": "List of lead source configurations, each specifying source type and connection details (e.g., CRM, website forms).", + "required": true, + "defaultValue": "" + }, + { + "name": "automationWorkflows", + "type": "array", + "description": "Array of sales automation workflow definitions including triggers, conditions, and actions to automate sales processes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "notificationSettings", + "type": "object", + "description": "Configuration for notifications, including channels (email, SMS) and event triggers.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "serviceName", + "type": "string", + "description": "Name identifier for the sales automation service instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableAnalytics", + "type": "boolean", + "description": "Flag to include analytics and reporting features in the service.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxConcurrentUsers", + "type": "number", + "description": "Maximum number of concurrent users supported by the service.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing deployment details such as serviceId, configuration summary, and access URLs for the newly created sales automation service." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically provision a tailored sales automation infrastructure that fits the client's specific industry, lead sources, and automation needs, facilitating streamlined lead management and sales workflows without manual configuration.", + "limitations": "This tool does not perform lead generation or CRM data analysis. It only builds the service infrastructure and configuration. Integration with external APIs or ongoing operational maintenance must be handled separately.", + "examples": [ + "Build a sales automation service for a technology company with website form leads and email notifications.", + "Create a retail sales automation service with multiple lead sources and customized workflow automations.", + "Set up a new sales automation instance named 'Q3Growth' enabling analytics and supporting up to 200 users." + ] + }, + "tags": [ + "sales", + "automation", + "service", + "build", + "lead management", + "workflow", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"targetIndustry\":\"technology\",\"leadSources\":[{\"type\":\"CRM\",\"details\":{\"provider\":\"Salesforce\",\"apiKey\":\"abc123\"}}],\"automationWorkflows\":[{\"trigger\":\"newLead\",\"actions\":[\"sendWelcomeEmail\",\"assignSalesRep\"]}],\"notificationSettings\":{\"email\":\"sales-team@example.com\"},\"serviceName\":\"TechGrowthService\",\"enableAnalytics\":true,\"maxConcurrentUsers\":150}", + "description": "Build a technology industry service integrating Salesforce leads, basic workflows, notifications, and analytics support." + }, + { + "inputJson": "{\"targetIndustry\":\"retail\",\"leadSources\":[{\"type\":\"websiteForm\",\"details\":{\"url\":\"https://example.com/signup\"}}],\"automationWorkflows\":[],\"notificationSettings\":{\"email\":\"retail-sales@example.com\",\"sms\":\"+1234567890\"},\"serviceName\":\"RetailSalesAutomator\",\"enableAnalytics\":false,\"maxConcurrentUsers\":50}", + "description": "Create a retail sales automation service with website form leads and multi-channel notifications, without analytics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "sales-automation.buildPullRequest", + "description": "This tool automates the creation of a GitHub pull request (PR) for sales automation-related code changes. It accepts repository details, branch and base branch names, a title and description for the PR, and optionally commit messages and reviewer information. It processes these inputs to generate a pull request on the specified repository, returning PR metadata including URL and status.", + "category": "sales-automation", + "parameters": [ + { + "name": "repositoryOwner", + "type": "string", + "description": "GitHub username or organization owning the repository to modify.", + "required": true, + "defaultValue": "" + }, + { + "name": "repositoryName", + "type": "string", + "description": "Name of the repository where the pull request will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name of the branch containing the proposed changes for the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "Target branch into which changes will be merged, usually 'main' or 'master'.", + "required": true, + "defaultValue": "main" + }, + { + "name": "pullRequestTitle", + "type": "string", + "description": "Title text for the pull request summarizing the change.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestDescription", + "type": "string", + "description": "Detailed description explaining the purpose of the pull request.", + "required": false, + "defaultValue": "" + }, + { + "name": "commitMessages", + "type": "array", + "description": "List of commit messages associated with the changes (optional).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of GitHub usernames to request review from (optional).", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing details of the created pull request including its URL, ID, title, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create a GitHub pull request to propose sales automation code or configuration changes. It supports automated workflows for submitting improvements, bug fixes, or new features to sales tools repositories.", + "limitations": "This tool cannot create or push commits; it requires that the branch with changes already exists. It does not perform code validation or conflict resolution. Access permissions and authentication must be managed separately.", + "examples": [ + "Create a pull request to merge a new sales lead parser to the main branch with a descriptive title and notify team reviewers.", + "Generate a pull request summarizing updates to the sales pipeline automation scripts without specifying reviewers.", + "Open a PR for bugfixes in the sales CRM integration branch with multiple commit messages provided." + ] + }, + "tags": [ + "sales-automation", + "github", + "pull-request", + "automation", + "code-management", + "devops" + ], + "examples": [ + { + "inputJson": "{\"repositoryOwner\":\"sales-team\",\"repositoryName\":\"crm-automation\",\"branchName\":\"feature/lead-parser\",\"baseBranch\":\"main\",\"pullRequestTitle\":\"Add lead parser for new data source\",\"pullRequestDescription\":\"This PR adds code to parse leads from the new lead data source and integrate into CRM.\",\"commitMessages\":[\"Add lead parser module\",\"Update README with parser usage\"],\"reviewers\":[\"jane-doe\",\"john-smith\"]}", + "description": "Create a PR to merge a new lead parser feature branch into main, including a detailed description and reviewers." + }, + { + "inputJson": "{\"repositoryOwner\":\"enterprise\",\"repositoryName\":\"sales-bot\",\"branchName\":\"fix/bug-123\",\"baseBranch\":\"main\",\"pullRequestTitle\":\"Fix bug 123 causing missed notifications\",\"pullRequestDescription\":\"Fixes the notification logic to ensure alerts are sent.\",\"commitMessages\":[\"Fix notification condition in bot logic\"],\"reviewers\":[]}", + "description": "Create a PR for a bug fix in sales bot without requesting reviewers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "sales-automation.buildContainer", + "description": "Builds a scalable containerized environment for sales automation applications. Accepts configuration parameters like container type, resource limits, environment variables, and deployment region. Processes the inputs to provision and configure a container infrastructure optimized for running sales workflow components. Returns deployment details including container ID, status, and endpoint URLs.", + "category": "sales-automation", + "parameters": [ + { + "name": "containerType", + "type": "string", + "description": "Type of container to build (e.g., Docker, Kubernetes pod).", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuLimit", + "type": "number", + "description": "Maximum CPU units allocated to the container.", + "required": false, + "defaultValue": "1" + }, + { + "name": "memoryLimitMb", + "type": "number", + "description": "Maximum memory in megabytes allocated to the container.", + "required": false, + "defaultValue": "512" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to set inside the container.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "storageSizeGb", + "type": "number", + "description": "Size of attached persistent storage in gigabytes.", + "required": false, + "defaultValue": "0" + }, + { + "name": "deploymentRegion", + "type": "string", + "description": "Cloud region where the container should be deployed (e.g., us-east-1).", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "autoScalingEnabled", + "type": "boolean", + "description": "Whether to enable automatic scaling based on load.", + "required": false, + "defaultValue": "false" + }, + { + "name": "startupCommand", + "type": "string", + "description": "Command to run when the container starts.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Information about the built container including id, status, and access URLs." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically provision and configure container infrastructure for deploying sales automation software components. It helps automate environment setup, ensuring consistency and scalability in sales workflows.", + "limitations": "Does not handle orchestration complexities beyond initial container deployment, nor manages in-container application logic.", + "examples": [ + "Deploy a Docker container with 2 CPU units and 1GB RAM in the eu-west-1 region.", + "Create a Kubernetes pod with environment variables for API keys and enable auto-scaling.", + "Build a containerized sales lead processing service with 10GB storage attached." + ] + }, + "tags": [ + "sales", + "automation", + "container", + "infrastructure", + "deployment", + "cloud", + "scalability" + ], + "examples": [ + { + "inputJson": "{\"containerType\":\"Docker\",\"cpuLimit\":2,\"memoryLimitMb\":1024,\"environmentVariables\":{\"API_KEY\":\"abc123\"},\"storageSizeGb\":5,\"deploymentRegion\":\"eu-west-1\",\"autoScalingEnabled\":true,\"startupCommand\":\"npm start\"}", + "description": "Deploy a Docker container with 2 CPU cores, 1GB RAM, environment variable for API key, 5GB storage, in the EU West region with auto-scaling enabled and startup command npm start." + }, + { + "inputJson": "{\"containerType\":\"KubernetesPod\",\"cpuLimit\":4,\"memoryLimitMb\":2048,\"environmentVariables\":{\"DB_HOST\":\"db.sales.local\"},\"storageSizeGb\":10,\"deploymentRegion\":\"us-east-1\",\"autoScalingEnabled\":false,\"startupCommand\":\"./run.sh\"}", + "description": "Create a Kubernetes pod with 4 CPU cores, 2GB RAM, environment variable for database host, 10GB attached storage in US East region without auto-scaling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "sales-automation.composeMessage", + "description": "Generates a customized sales message based on recipient information, sales context, and desired tone. Accepts inputs such as recipient details, product or service description, message purpose, and style preferences. Outputs a polished message text ready for outreach or follow-up communication.", + "category": "sales-automation", + "parameters": [ + { + "name": "recipientName", + "type": "string", + "description": "The name of the message recipient to personalize the greeting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientRole", + "type": "string", + "description": "The professional role or title of the recipient to tailor message content.", + "required": false, + "defaultValue": "" + }, + { + "name": "productDescription", + "type": "string", + "description": "A brief description of the product or service being offered to include in the message.", + "required": true, + "defaultValue": "" + }, + { + "name": "messagePurpose", + "type": "string", + "description": "The main purpose of the message, e.g., initial outreach, follow-up, or closing a sale.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "The desired tone of the message, such as formal, friendly, or persuasive.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to add a clear call to action at the end of the message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customIntro", + "type": "string", + "description": "Optional custom introductory sentence or phrase to start the message.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated message text and metadata such as tone and message purpose." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate tailored sales messages for outreach, follow-ups, or closing communications when provided with recipient details and context, accelerating the messaging workflow while maintaining a personalized approach.", + "limitations": "This tool does not guarantee message effectiveness or handle multi-turn conversation adjustments; it only creates a single message draft based on input parameters.", + "examples": [ + "Compose a friendly follow-up message to a marketing manager about our new email automation tool.", + "Generate a formal initial outreach message targeting CTOs explaining our cybersecurity service.", + "Create a persuasive closing message for a sales lead interested in SaaS solutions." + ] + }, + "tags": [ + "sales", + "automation", + "message generation", + "personalization", + "lead management", + "communication" + ], + "examples": [ + { + "inputJson": "{\"recipientName\":\"Jane Doe\",\"recipientRole\":\"Marketing Manager\",\"productDescription\":\"our new AI-powered email automation platform\",\"messagePurpose\":\"initial outreach\",\"tone\":\"friendly\",\"includeCallToAction\":true}", + "description": "Generate a friendly initial outreach message to a marketing manager about a new email automation product." + }, + { + "inputJson": "{\"recipientName\":\"John Smith\",\"productDescription\":\"cybersecurity consulting services\",\"messagePurpose\":\"follow-up\",\"tone\":\"formal\",\"includeCallToAction\":true,\"customIntro\":\"I hope this message finds you well.\"}", + "description": "Create a formal follow-up message with a custom intro for a cybersecurity consulting service prospect." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Message", + "context": null + } + }, + { + "name": "sales-automation.buildBranch", + "description": "Builds a customized sales automation branch of code that integrates lead capture, qualification, and nurturing workflows. Accepts input parameters defining branch name, target CRM system, automation triggers, and lead scoring criteria. Outputs a ready-to-deploy codebase or script for sales process automation customized to provided specifications.", + "category": "sales-automation", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "The name of the new sales automation branch to create, reflecting its purpose or campaign.", + "required": true, + "defaultValue": "" + }, + { + "name": "crmIntegration", + "type": "string", + "description": "The CRM system identifier (e.g., Salesforce, HubSpot) to which this branch will connect for data exchange.", + "required": true, + "defaultValue": "" + }, + { + "name": "automationTriggers", + "type": "array", + "description": "List of event triggers (e.g., new lead, lead status change) that activate workflows within the branch.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "leadScoringRules", + "type": "object", + "description": "An object defining rules and weights for scoring leads to prioritize sales actions.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "nurtureSequences", + "type": "array", + "description": "An array of predefined communication sequences (emails, calls) for nurturing leads automatically.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeAnalytics", + "type": "boolean", + "description": "Flag to include lead and workflow analytics modules in the branch.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Outputs an object containing the generated branch name, code repository URL or file path, and a summary of integrations and workflows implemented." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or update a sales automation branch that integrates with a CRM and includes customized lead handling workflows based on specified triggers and scoring. Suitable for generating deployable code tailored to sales process automation projects.", + "limitations": "Does not deploy the code automatically or handle real-time debugging. It cannot create CRM accounts or manage CRM-side configurations beyond integration coding.", + "examples": [ + "Create a branch named 'Q3Campaign' integrated with Salesforce, triggered on new leads and status updates, with custom lead scoring based on industry and engagement.", + "Build a sales automation branch for HubSpot that includes nurture email sequences and lead scoring, with analytics enabled.", + "Generate a new branch for a startup's CRM with basic triggers and no analytics to test initial lead capture workflows." + ] + }, + "tags": [ + "sales", + "automation", + "branch", + "crm-integration", + "lead-scoring", + "workflows" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"Q3SalesPush\",\"crmIntegration\":\"Salesforce\",\"automationTriggers\":[\"newLead\",\"leadStatusChange\"],\"leadScoringRules\":{\"industry\":{\"tech\":10,\"finance\":8}},\"nurtureSequences\":[{\"name\":\"WelcomeSequence\",\"steps\":[{\"type\":\"email\",\"delayDays\":0,\"content\":\"Welcome!\"}]}],\"includeAnalytics\":true}", + "description": "Create a Salesforce-integrated branch named 'Q3SalesPush' with triggers on new leads and status changes, lead scoring weighted by industry, nurture email sequences, and analytics enabled." + }, + { + "inputJson": "{\"branchName\":\"HubSpotTest\",\"crmIntegration\":\"HubSpot\",\"automationTriggers\":[\"newLead\"],\"leadScoringRules\":{},\"nurtureSequences\":[],\"includeAnalytics\":false}", + "description": "Build a simple HubSpot sales automation branch triggered on new leads only, without lead scoring or analytics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "sales-automation.buildModule", + "description": "Builds a customizable sales automation module based on provided configuration parameters. Accepts inputs defining lead sources, qualification criteria, sales stages, and communication templates. Processes these inputs to generate a ready-to-deploy module that automates lead capture, nurturing, and conversion tracking workflows.", + "category": "sales-automation", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name of the sales automation module to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "leadSources", + "type": "array", + "description": "List of lead source platforms or channels to integrate, e.g., ['LinkedIn','WebsiteForm','EmailCampaign'].", + "required": true, + "defaultValue": "" + }, + { + "name": "qualificationCriteria", + "type": "object", + "description": "Criteria object defining how leads are qualified, with fields like budget, authority, need, timing.", + "required": true, + "defaultValue": "" + }, + { + "name": "salesStages", + "type": "array", + "description": "Ordered list of sales pipeline stages to include in the module, e.g., ['Prospecting','Qualified','Demo','Negotiation','ClosedWon'].", + "required": true, + "defaultValue": "" + }, + { + "name": "communicationTemplates", + "type": "object", + "description": "Key-value pairs of communication templates for emails or messages at various stages.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableNotifications", + "type": "boolean", + "description": "Flag to enable notifications on lead updates and stage changes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "assignToUserId", + "type": "string", + "description": "User ID to assign new leads by default in this module.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated module code as a string, module metadata, and deployment instructions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate and customize sales workflows by generating modules that handle lead ingestion, qualification, and pipeline management based on specific business rules. Ideal for platforms that allow embedding or deploying tailored sales automation logic.", + "limitations": "This tool does not handle actual deployment or integration with external systems; it only generates the module code and configuration. It also doesn't perform lead analytics or reporting beyond the standard qualification criteria.", + "examples": [ + "Build a sales automation module named 'TechStartupLeads' with lead sources from LinkedIn and Website forms, qualification criteria focusing on budget and timing, sales stages including Prospecting and Demo, and default email templates.", + "Create a module to automate a nonprofit's donor engagement sales process with custom stages and message templates.", + "Generate a module that integrates email campaigns and assigns all leads to a specific sales rep with notifications enabled." + ] + }, + "tags": [ + "sales-automation", + "module-building", + "lead-management", + "workflow", + "pipeline", + "automation", + "customization" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"TechStartupLeads\",\"leadSources\":[\"LinkedIn\",\"WebsiteForm\"],\"qualificationCriteria\":{\"budget\":\">5000\",\"authority\":\"true\",\"need\":\"software\",\"timing\":\"<30days\"},\"salesStages\":[\"Prospecting\",\"Qualified\",\"Demo\",\"Negotiation\",\"ClosedWon\"],\"communicationTemplates\":{\"Prospecting\":\"Hi {{name}}, can we discuss your needs?\",\"Demo\":\"Ready to schedule a demo?\"},\"enableNotifications\":true,\"assignToUserId\":\"user_12345\"}", + "description": "Build a module for tech startup leads integrating LinkedIn and website form sources, with detailed qualification rules and communication templates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "sales-automation.buildConfig", + "description": "Creates a customized sales automation configuration object based on input parameters such as lead sources, sales stages, notification preferences, and integration options. Processes these inputs to generate a structured config that can be used to automate lead management and sales workflows effectively.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadSources", + "type": "array", + "description": "List of lead source identifiers or names to include in the sales automation.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "salesStages", + "type": "array", + "description": "Ordered list of sales stages defining the pipeline steps.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "notificationPreferences", + "type": "object", + "description": "Settings for sales notifications, e.g., email alert enabled, frequency, platform.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "integrations", + "type": "array", + "description": "List of external tools or CRM systems to integrate with, e.g., ['Salesforce', 'HubSpot'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "autoAssignLeads", + "type": "boolean", + "description": "Whether leads should be automatically assigned to sales reps based on rules.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLeadsPerRep", + "type": "number", + "description": "Maximum number of leads assigned to a single sales rep (if auto assignment enabled).", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "A complete sales automation configuration object encapsulating lead sources, sales pipeline stages, notification settings, integration options, and automation rules." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to build or update a sales automation configuration object tailored to specific organizational sales processes, combining lead intake, pipeline stages, and integration preferences into a structured object for deployment or further processing. It helps efficient setup of automated sales workflows.", + "limitations": "This tool does not validate external system credentials or implement the automation workflows themselves; it only generates the configuration data object. It does not perform real-time lead assignment or notify users.", + "examples": [ + "Create a sales automation config for three lead sources with 5 sales stages, email notifications enabled, and Salesforce integration.", + "Build a config with automatic lead assignment enabled and a max of 20 leads per rep, integrating with HubSpot only.", + "Generate config using default notification settings, custom pipeline stages, and no integrations." + ] + }, + "tags": [ + "sales", + "automation", + "configuration", + "lead-management", + "pipeline", + "integration" + ], + "examples": [ + { + "inputJson": "{\"leadSources\":[\"WebsiteForm\",\"TradeShow\",\"Referral\"],\"salesStages\":[\"Lead\",\"Contacted\",\"Qualified\",\"Proposal\",\"Closed\"],\"notificationPreferences\":{\"emailAlerts\":true,\"frequency\":\"daily\"},\"integrations\":[\"Salesforce\"],\"autoAssignLeads\":true,\"maxLeadsPerRep\":15}", + "description": "Configuration including three lead sources, full sales pipeline, daily email alerts, Salesforce integration, and auto lead assignment with 15 leads max per rep." + }, + { + "inputJson": "{\"leadSources\":[\"ColdCall\"],\"salesStages\":[\"Prospect\",\"Negotiation\",\"Won\"],\"notificationPreferences\":{},\"integrations\":[],\"autoAssignLeads\":false}", + "description": "Simplified configuration with a single lead source, minimal sales stages, no notifications, no integrations, and manual lead assignment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "sales-automation.buildEndpoint", + "description": "Builds a REST API endpoint for sales automation systems that handles incoming HTTP requests with lead or opportunity data, processes input parameters according to specified business logic, and returns structured JSON responses indicating success, errors, or processed data. Accepts endpoint path, HTTP method, required parameters, and processing rules as inputs and outputs endpoint configuration and sample code.", + "category": "sales-automation", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URI path of the API endpoint to create (e.g., /leads/new).", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "The HTTP method this endpoint should support (GET, POST, PUT, DELETE).", + "required": true, + "defaultValue": "POST" + }, + { + "name": "requiredParameters", + "type": "array", + "description": "An array of strings representing required JSON parameters this endpoint expects in the request body or query.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "processingLogic", + "type": "object", + "description": "An object defining the business logic to apply to the input parameters (e.g., validation rules, transformations).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Specifies if the endpoint should enforce authentication before processing requests.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the endpoint configuration details including path, method, and auto-generated sample handler code snippet that implements the specified logic." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate standardized API endpoints for integrating sales automation workflows, enabling seamless data intake, processing, and response generation within CRM or lead management platforms. Ideal for rapid prototyping or consistent backend scaffoldings.", + "limitations": "This tool cannot deploy the endpoint to actual servers, handle runtime environments, or perform real-time network communication. It only generates configuration and sample code templates.", + "examples": [ + "Create a POST endpoint at /leads/add that requires 'email' and 'phone' parameters and validates their format.", + "Build a GET endpoint at /opportunities/list that requires authentication but no parameters.", + "Generate a DELETE endpoint at /leads/remove requiring a leadId parameter with authentication." + ] + }, + "tags": [ + "sales automation", + "API", + "endpoint", + "lead management", + "integration", + "REST", + "automation" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/leads/add\",\"httpMethod\":\"POST\",\"requiredParameters\":[\"email\",\"phone\"],\"processingLogic\":{\"validateEmail\":true,\"validatePhone\":true},\"authenticationRequired\":true}", + "description": "Defines a POST endpoint /leads/add that accepts email and phone parameters with validation and requires authentication." + }, + { + "inputJson": "{\"endpointPath\":\"/opportunities/list\",\"httpMethod\":\"GET\",\"requiredParameters\":[],\"processingLogic\":{},\"authenticationRequired\":true}", + "description": "Defines a GET endpoint /opportunities/list that requires authentication and no input parameters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "sales-automation.createKPI", + "description": "Creates a customized sales Key Performance Indicator (KPI) definition based on user inputs, including KPI name, description, calculation formula, relevant sales data fields, and target thresholds. The tool processes these inputs and outputs a structured KPI object suitable for integration into sales dashboards or analytics platforms.", + "category": "sales-automation", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The name of the KPI to create, e.g., 'Monthly Lead Conversion Rate'.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiDescription", + "type": "string", + "description": "A detailed description explaining what the KPI measures and why it is important.", + "required": false, + "defaultValue": "" + }, + { + "name": "calculationFormula", + "type": "string", + "description": "A formula expressed as a string using sales data fields and arithmetic operators to compute the KPI value.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFields", + "type": "array", + "description": "An array of sales data field names (strings) that are inputs to the calculation formula, e.g., ['leadsGenerated', 'leadsConverted'].", + "required": true, + "defaultValue": "" + }, + { + "name": "targetThreshold", + "type": "number", + "description": "The target numeric threshold or benchmark value for this KPI, used for performance evaluation.", + "required": false, + "defaultValue": "" + }, + { + "name": "timePeriod", + "type": "string", + "description": "The time period for measuring this KPI, e.g., 'monthly', 'quarterly', or 'weekly'.", + "required": false, + "defaultValue": "monthly" + }, + { + "name": "isPercentage", + "type": "boolean", + "description": "Indicates whether the KPI value should be expressed as a percentage.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A KPI object containing its name, description, calculation formula, related data fields, target threshold, time period, and formatting metadata suitable for integration into sales analytics tools." + }, + "aiAgent": { + "useCase": "Use this tool when a sales team or automation agent needs to define a custom KPI for monitoring specific sales metrics by specifying how to compute the KPI from available sales data fields. It helps create formal KPI definitions to be tracked and analyzed in dashboards or reporting systems.", + "limitations": "This tool does not connect to live sales data sources or perform actual data calculations. It only creates the KPI definition object. Data ingestion, calculation, and visualization must be handled by other components.", + "examples": [ + "Create a KPI for monthly lead conversion rate using number of converted leads divided by total leads generated as a percentage with a 20% target.", + "Define a quarterly average deal size KPI calculated using total sales revenue divided by number of closed deals with a $5000 target threshold.", + "Generate a weekly number of calls made KPI without a formula, just a direct data field count, marked as a raw number, not a percentage." + ] + }, + "tags": [ + "sales", + "automation", + "KPI", + "analytics", + "metrics", + "performance", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"Monthly Lead Conversion Rate\",\"kpiDescription\":\"Percentage of leads converted to customers each month.\",\"calculationFormula\":\"(leadsConverted / leadsGenerated) * 100\",\"dataFields\":[\"leadsGenerated\",\"leadsConverted\"],\"targetThreshold\":20,\"timePeriod\":\"monthly\",\"isPercentage\":true}", + "description": "Creates a percentage KPI measuring the monthly lead conversion rate with a 20% target." + }, + { + "inputJson": "{\"kpiName\":\"Quarterly Average Deal Size\",\"kpiDescription\":\"Average revenue per closed deal in the quarter.\",\"calculationFormula\":\"totalRevenue / dealsClosed\",\"dataFields\":[\"totalRevenue\",\"dealsClosed\"],\"targetThreshold\":5000,\"timePeriod\":\"quarterly\",\"isPercentage\":false}", + "description": "Defines average deal size KPI measured quarterly with a $5,000 target." + }, + { + "inputJson": "{\"kpiName\":\"Weekly Calls Made\",\"kpiDescription\":\"Total number of sales calls made each week.\",\"calculationFormula\":\"callsMade\",\"dataFields\":[\"callsMade\"],\"timePeriod\":\"weekly\",\"isPercentage\":false}", + "description": "Creates a weekly count KPI for calls made, using a direct data field without calculation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "sales-automation.generateKPI", + "description": "Generates key performance indicators (KPIs) for sales processes based on input sales data and configuration parameters. Accepts raw sales transaction records, lead data, or aggregated metrics, processes them to compute sales KPIs like conversion rate, average deal size, sales cycle length, and outputs a structured KPI report for sales performance analysis.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesData", + "type": "array", + "description": "An array of sales records or transactions, each containing relevant fields such as deal amount, status, dates, and lead info.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiMetrics", + "type": "array", + "description": "List of KPI metric names to calculate, e.g., ['conversionRate', 'averageDealSize', 'salesCycleLength']. If empty, calculates all supported KPIs.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timePeriod", + "type": "object", + "description": "An object defining the start and end date for KPI calculation, e.g., {\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\"}. Only sales data within this period will be considered.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Field name to group KPIs by, such as 'salesRep', 'region', or 'productCategory'. If empty, calculates KPIs for overall data.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., 'USD', 'EUR') to format monetary KPIs appropriately.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "A structured report object containing requested KPIs as key-value pairs, optionally grouped by specified criteria, with calculated values and summary statistics." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to analyze raw or aggregated sales data to produce actionable KPI reports that summarize sales team performance, lead conversion efficiency, deal sizes, and other critical sales metrics over specific time periods or groupings. It aids automated sales performance monitoring and reporting.", + "limitations": "This tool does not perform data cleansing or validation; input data must be pre-processed to ensure correctness. It does not generate visualization charts, only raw KPI metrics. Advanced predictive KPIs or machine-learning based forecasts are beyond its scope.", + "examples": [ + "Generate KPIs for Q1 sales data grouped by sales representative to assess individual performance.", + "Calculate all supported sales KPIs for data from last year without grouping.", + "Compute only conversion rate and average deal size grouped by product category in EUR currency." + ] + }, + "tags": [ + "sales", + "automation", + "KPI", + "analytics", + "reporting", + "performance", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"salesData\":[{\"dealAmount\":5000,\"status\":\"closedWon\",\"closeDate\":\"2024-03-15\",\"salesRep\":\"Alice\"},{\"dealAmount\":3000,\"status\":\"closedLost\",\"closeDate\":\"2024-02-28\",\"salesRep\":\"Bob\"}],\"kpiMetrics\":[\"conversionRate\",\"averageDealSize\"],\"timePeriod\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\"},\"groupBy\":\"salesRep\",\"currency\":\"USD\"}", + "description": "Calculate conversion rate and average deal size by salesRep for Q1 2024 in USD." + }, + { + "inputJson": "{\"salesData\":[{\"dealAmount\":7500,\"status\":\"closedWon\",\"closeDate\":\"2023-07-20\",\"salesRep\":\"Carol\"},{\"dealAmount\":2000,\"status\":\"closedWon\",\"closeDate\":\"2023-05-15\",\"salesRep\":\"Dave\"}],\"kpiMetrics\":[],\"timePeriod\":{\"startDate\":\"2023-01-01\",\"endDate\":\"2023-12-31\"},\"groupBy\":\"\",\"currency\":\"USD\"}", + "description": "Generate all default KPIs for entire 2023 without grouping." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "sales-automation.generateDashboard", + "description": "Generates a comprehensive sales dashboard by processing input sales data, filters, and metrics preferences. The tool accepts sales records and configuration parameters, aggregates and analyzes key sales performance indicators, and outputs a structured dashboard report displaying trends, KPIs, and visual summaries for decision making.", + "category": "sales-automation", + "parameters": [ + { + "name": "salesData", + "type": "array", + "description": "An array of sales records, each including details like date, amount, product, and salesperson.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "An object with 'start' and 'end' date strings to filter sales data within a specific period.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of performance metrics to include, e.g., 'totalSales', 'averageDealSize', 'conversionRate'.", + "required": false, + "defaultValue": "[\"totalSales\",\"averageDealSize\"]" + }, + { + "name": "groupBy", + "type": "string", + "description": "The sales dimension to group data by, such as 'region', 'product', or 'salesperson'.", + "required": false, + "defaultValue": "region" + }, + { + "name": "includeVisuals", + "type": "boolean", + "description": "Flag to include visual chart data in the dashboard output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured sales dashboard object containing aggregated metrics, grouped data summaries, and optionally visual chart configurations ready for rendering." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create a detailed, customizable sales performance dashboard from raw sales data. It helps summarize large datasets into actionable insights by filtering, grouping, and calculating key metrics, suitable for sales teams or management reporting.", + "limitations": "This tool does not perform advanced predictive analytics or real-time data streaming. It requires supplied sales data formatted as expected and cannot connect directly to databases or live feeds.", + "examples": [ + "Generate a sales dashboard for Q1 2024, grouped by product, including total sales and conversion rate metrics.", + "Create a dashboard with average deal size and total sales, focus on the last month, grouped by salesperson.", + "Produce a regional sales dashboard including visuals for the entire past year." + ] + }, + "tags": [ + "sales", + "automation", + "dashboard", + "analytics", + "reporting", + "metrics", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"salesData\":[{\"date\":\"2024-01-10\",\"amount\":1200,\"product\":\"Product A\",\"salesperson\":\"Alice\",\"region\":\"North\"},{\"date\":\"2024-01-11\",\"amount\":900,\"product\":\"Product B\",\"salesperson\":\"Bob\",\"region\":\"South\"}],\"dateRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-03-31\"},\"metrics\":[\"totalSales\",\"averageDealSize\"],\"groupBy\":\"product\",\"includeVisuals\":true}", + "description": "Generate a Q1 sales dashboard grouped by product with total sales and average deal size, including charts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "sales-automation.generateLink", + "description": "Generates a customized sales tracking link based on input parameters such as target URL, campaign name, lead source, and optional UTM parameters. Processes these inputs to produce a trackable, shareable URL optimized for sales campaigns and lead attribution.", + "category": "sales-automation", + "parameters": [ + { + "name": "targetUrl", + "type": "string", + "description": "The base URL of the product or landing page to which the sales link will redirect.", + "required": true, + "defaultValue": "" + }, + { + "name": "campaignName", + "type": "string", + "description": "The name of the sales campaign to associate with the link for tracking purposes.", + "required": true, + "defaultValue": "" + }, + { + "name": "leadSource", + "type": "string", + "description": "Identifier for the source of the lead, such as 'email', 'social', or 'referral'.", + "required": true, + "defaultValue": "" + }, + { + "name": "utmParameters", + "type": "object", + "description": "Optional UTM parameters (utm_medium, utm_campaign, utm_term, utm_content) to append for detailed analytics.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "expiresAt", + "type": "string", + "description": "Optional ISO 8601 timestamp indicating when the link should expire and become inactive.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sales tracking link and related metadata including the full URL and expiration info if set." + }, + "aiAgent": { + "useCase": "Use this tool when generating trackable sales links to embed in outreach emails, social media posts, or advertisements. It helps automatically append campaign and source data for accurate lead tracking and performance analytics.", + "limitations": "Does not create short URLs or handle link shortening by itself. Does not validate that the target URL is reachable or safe.", + "examples": [ + "Generate a sales link for an email campaign promoting a new product with specific UTM tags.", + "Create a referral link for social media posts that expires after 30 days.", + "Generate a trackable link to monitor leads from a trade show campaign." + ] + }, + "tags": [ + "sales", + "automation", + "link-generation", + "tracking", + "marketing", + "lead-management" + ], + "examples": [ + { + "inputJson": "{\"targetUrl\":\"https://example.com/product\",\"campaignName\":\"spring_sale\",\"leadSource\":\"email\",\"utmParameters\":{\"utm_medium\":\"email\",\"utm_campaign\":\"spring_sale_2024\",\"utm_term\":\"discount\",\"utm_content\":\"banner\"},\"expiresAt\":\"2024-08-31T23:59:59Z\"}", + "description": "Generate a sales tracking link for an email campaign with full UTM parameters and expiration date." + }, + { + "inputJson": "{\"targetUrl\":\"https://example.com/signup\",\"campaignName\":\"social_launch\",\"leadSource\":\"social\",\"utmParameters\":{\"utm_medium\":\"social\",\"utm_campaign\":\"launch_campaign\"}}", + "description": "Generate a social media referral link without expiration date using minimal UTM parameters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "sales-automation.generateQuery", + "description": "Generates optimized database queries or search filters to retrieve sales leads based on specified criteria. Accepts parameters such as lead attributes, filtering conditions, sorting preferences, and limit constraints. Produces a structured query string or object suitable for use in CRM or lead management systems.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadAttributes", + "type": "array", + "description": "List of lead attribute fields to include or filter on (e.g., industry, location, revenue).", + "required": true, + "defaultValue": "" + }, + { + "name": "filterConditions", + "type": "object", + "description": "Key-value pairs defining conditions to filter leads (e.g., {\"industry\":\"Technology\", \"revenue\":{\"gt\":1000000}}).", + "required": true, + "defaultValue": "" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field name to sort the results by (e.g., \"lastContactDate\").", + "required": false, + "defaultValue": "" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Sort order direction: \"asc\" for ascending or \"desc\" for descending.", + "required": false, + "defaultValue": "asc" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of leads to return from the query.", + "required": false, + "defaultValue": "50" + }, + { + "name": "queryType", + "type": "string", + "description": "Type/format of the query output, e.g., \"SQL\", \"NoSQL\", or \"filterObject\".", + "required": false, + "defaultValue": "SQL" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string or filter object matching the requested format for lead retrieval." + }, + "aiAgent": { + "useCase": "Use this tool when needing to construct precise queries or filters to fetch relevant leads from sales databases or CRM systems based on dynamic criteria and preferences. It supports generating query strings or filter objects compatible with various backends, helping automate lead selection and avoid manual query writing.", + "limitations": "Cannot directly execute the query on databases or return actual lead data; it only generates query strings/objects. It depends on correct input parameters for valid query generation and may not cover all database-specific query syntaxes.", + "examples": [ + "Generate a SQL query to retrieve technology leads with revenue over 1 million sorted by last contact date.", + "Create a filter object to fetch leads in the healthcare industry located in California with recent activity.", + "Produce a NoSQL query to limit results to 100 leads with specified attributes sorted ascending." + ] + }, + "tags": [ + "sales", + "automation", + "lead generation", + "query", + "CRM", + "filtering", + "database" + ], + "examples": [ + { + "inputJson": "{\"leadAttributes\":[\"name\",\"industry\",\"revenue\",\"location\"],\"filterConditions\":{\"industry\":\"Technology\",\"revenue\":{\"gt\":1000000}},\"sortBy\":\"lastContactDate\",\"sortOrder\":\"desc\",\"limit\":100,\"queryType\":\"SQL\"}", + "description": "Generate an SQL query for technology leads with revenue > 1M, sorted by last contact date descending, limit 100." + }, + { + "inputJson": "{\"leadAttributes\":[\"name\",\"industry\",\"location\",\"lastContactDate\"],\"filterConditions\":{\"industry\":\"Healthcare\",\"location\":\"California\"},\"sortBy\":\"lastContactDate\",\"sortOrder\":\"asc\",\"limit\":50,\"queryType\":\"filterObject\"}", + "description": "Create a filter object for healthcare leads located in California, sorted by last contact date ascending, limit 50." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "sales-automation.createDashboard", + "description": "Creates a customizable sales performance dashboard by accepting sales data sources and user preferences. It processes data to generate visual analytics such as charts and KPIs, outputting a dashboard configuration object for integration in sales platforms.", + "category": "sales-automation", + "parameters": [ + { + "name": "dashboardName", + "type": "string", + "description": "The title to display on the dashboard", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source identifiers or endpoints for sales metrics input", + "required": true, + "defaultValue": "" + }, + { + "name": "dateRange", + "type": "object", + "description": "Start and end dates to filter sales data (format: {start:'YYYY-MM-DD', end:'YYYY-MM-DD'})", + "required": false, + "defaultValue": "{\"start\":\"\",\"end\":\"\"}" + }, + { + "name": "metrics", + "type": "array", + "description": "Key sales metrics to include such as revenue, leads, conversion rate", + "required": true, + "defaultValue": "[\"revenue\",\"leads\",\"conversionRate\"]" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "Chart types to use for metrics, e.g., bar, line, pie", + "required": false, + "defaultValue": "[\"bar\",\"line\"]" + }, + { + "name": "refreshIntervalMinutes", + "type": "number", + "description": "Frequency in minutes to refresh data on the dashboard", + "required": false, + "defaultValue": "60" + }, + { + "name": "includeTargets", + "type": "boolean", + "description": "Whether to display performance targets/goals alongside actuals", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "DashboardConfig object containing widgets, data bindings, layout and settings for rendering the sales dashboard" + }, + "aiAgent": { + "useCase": "Use this tool to programmatically generate a sales dashboard tailored to specific business needs by specifying data inputs, key metrics, visualization formats, and refresh settings. Ideal for automating dashboard creation in sales platforms or CRMs to provide actionable insights.", + "limitations": "Does not connect directly to data sources; input data identifiers or endpoints must be preconfigured and accessible. Visualization options are limited to predefined chart types. Does not support real-time streaming data or complex drill-downs beyond basic filtering.", + "examples": [ + "Create a sales dashboard named 'Q2 Performance' using our CRM data and including revenue and leads metrics with bar and line charts updated hourly.", + "Generate a sales automation dashboard focusing on conversion rate trends last month using pie charts, without showing targets.", + "Build a dashboard for multiple data sources combining sales and marketing leads, displaying revenue and conversion rates with refresh every 30 minutes." + ] + }, + "tags": [ + "sales", + "automation", + "dashboard", + "analytics", + "performance", + "visualization", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"dashboardName\":\"Q2 Sales Overview\",\"dataSources\":[\"crmApi\",\"salesDb\"],\"dateRange\":{\"start\":\"2024-04-01\",\"end\":\"2024-06-30\"},\"metrics\":[\"revenue\",\"leads\",\"conversionRate\"],\"visualizationTypes\":[\"bar\",\"line\"],\"refreshIntervalMinutes\":60,\"includeTargets\":true}", + "description": "Create a dashboard titled 'Q2 Sales Overview' using CRM API and internal sales database, visualizing revenue, leads, and conversion rate with bar and line charts that refresh every hour, including sales targets." + }, + { + "inputJson": "{\"dashboardName\":\"Last Month Conversion Analysis\",\"dataSources\":[\"crmApi\"],\"dateRange\":{\"start\":\"2024-05-01\",\"end\":\"2024-05-31\"},\"metrics\":[\"conversionRate\"],\"visualizationTypes\":[\"pie\"],\"refreshIntervalMinutes\":120,\"includeTargets\":false}", + "description": "Generate a sales dashboard focusing on conversion rate last month, displayed as a pie chart, updating every two hours, without showing sales targets." + }, + { + "inputJson": "{\"dashboardName\":\"Multi-source Sales Metrics\",\"dataSources\":[\"crmApi\",\"marketingDb\"],\"dateRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-06-30\"},\"metrics\":[\"revenue\",\"conversionRate\"],\"visualizationTypes\":[\"bar\"],\"refreshIntervalMinutes\":30,\"includeTargets\":true}", + "description": "Build a sales automation dashboard aggregating multiple data sources, showing revenue and conversion rate as bar charts, updating every 30 minutes, with performance targets included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "sales-automation.createComment", + "description": "Creates a comment associated with a specific sales lead or opportunity to document communication, notes, or updates. Accepts identifiers for the target lead/opportunity and comment content, optionally tagging users or setting visibility. Returns confirmation with comment ID and timestamp.", + "category": "sales-automation", + "parameters": [ + { + "name": "entityId", + "type": "string", + "description": "Unique identifier of the sales lead or opportunity to attach the comment to.", + "required": true, + "defaultValue": "" + }, + { + "name": "entityType", + "type": "string", + "description": "Type of entity to comment on, e.g., 'lead' or 'opportunity'.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "Text content of the comment to add.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier of the user creating the comment.", + "required": false, + "defaultValue": "" + }, + { + "name": "visibility", + "type": "string", + "description": "Visibility level of the comment, e.g., 'public', 'private', or 'team'.", + "required": false, + "defaultValue": "public" + }, + { + "name": "taggedUserIds", + "type": "array", + "description": "An array of user IDs to tag in the comment notifying them.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the new comment's ID, the linked entity ID and type, author ID, timestamp of creation, and the text content." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to document interactions, updates, or notes related to a sales lead or opportunity as part of automated CRM updates. It helps maintain an auditable history and promotes team collaboration by tagging relevant users or setting comment visibility.", + "limitations": "This tool does not handle editing or deleting comments once created, nor does it support rich text or media attachments. It assumes valid entity IDs and user permissions are managed externally.", + "examples": [ + "Add a comment saying 'Client requested a product demo next week' to lead with ID 'L12345'.", + "Create a private internal note on opportunity ID 'O9876' mentioning the budget discussion.", + "Post a public comment tagging user ID 'U4321' about the latest follow-up call on lead 'L555'" + ] + }, + "tags": [ + "sales", + "automation", + "comment", + "lead-management", + "CRM", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"entityId\":\"L12345\",\"entityType\":\"lead\",\"commentText\":\"Client requested a product demo next week.\",\"authorId\":\"U1001\",\"visibility\":\"public\",\"taggedUserIds\":[]}", + "description": "Adding a public comment to a sales lead to record a client request." + }, + { + "inputJson": "{\"entityId\":\"O9876\",\"entityType\":\"opportunity\",\"commentText\":\"Internal note: budget discussion pending approval.\",\"authorId\":\"U2002\",\"visibility\":\"private\",\"taggedUserIds\":[]}", + "description": "Creating a private internal comment on an opportunity about budget matters." + }, + { + "inputJson": "{\"entityId\":\"L555\",\"entityType\":\"lead\",\"commentText\":\"Follow-up call completed, next steps agreed.\",\"authorId\":\"U3003\",\"visibility\":\"public\",\"taggedUserIds\":[\"U4321\"]}", + "description": "Posting a public comment on a lead tagging a colleague for visibility." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "sales-automation.generateArticle", + "description": "Generates a sales-focused article based on specified topics, target audience, desired length, and tone. It accepts keywords or themes related to sales, processes the inputs to create a coherent, well-structured article aimed at engaging potential customers or stakeholders, and outputs the article content as text.", + "category": "sales-automation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the sales article to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the audience for whom the article is intended, influencing style and content focus.", + "required": false, + "defaultValue": "" + }, + { + "name": "articleLength", + "type": "number", + "description": "Approximate desired length of the article in words.", + "required": false, + "defaultValue": "500" + }, + { + "name": "tone", + "type": "string", + "description": "Preferred tone of the article, such as professional, casual, persuasive, or informative.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeCallToAction", + "type": "boolean", + "description": "Whether to include a call-to-action section at the end of the article.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article's title and its full textual content." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to create engaging sales content automatically to accelerate marketing campaigns, nurture leads, or educate prospects. It can transform raw topics or keywords into comprehensive articles tailored to specific audiences and business goals.", + "limitations": "The tool cannot guarantee topic accuracy or compliance with specific legal or ethical standards. It may not produce highly specialized technical content without domain-specific input. It is not meant for creating very short advertising copy or extremely long-form content beyond typical article lengths.", + "examples": [ + "Generate a persuasive sales article on CRM benefits for small business owners.", + "Create an informative article about cloud security sales points targeting IT managers.", + "Write a casual 700-word article on lead generation trends including a call to action." + ] + }, + "tags": [ + "sales", + "content-generation", + "article", + "automation", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of CRM for small businesses\",\"targetAudience\":\"small business owners\",\"articleLength\":600,\"tone\":\"professional\",\"includeCallToAction\":true}", + "description": "Generate a professional article highlighting CRM benefits targeting small business owners with a call to action." + }, + { + "inputJson": "{\"topic\":\"Cloud security solutions\",\"targetAudience\":\"IT managers\",\"articleLength\":800,\"tone\":\"informative\",\"includeCallToAction\":false}", + "description": "Create an informative article about cloud security solutions designed for IT managers without a call to action." + }, + { + "inputJson": "{\"topic\":\"Lead generation trends 2024\",\"targetAudience\":\"marketing professionals\",\"articleLength\":700,\"tone\":\"casual\",\"includeCallToAction\":true}", + "description": "Write a casual 700-word article on latest lead generation trends including a call to action for marketing professionals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "sales-automation.createInstance", + "description": "Creates a new sales automation instance that sets up lead management workflows, sales funnels, and automation triggers based on provided parameters. Accepts configuration inputs such as instance name, target sales channels, automation rules, and user access settings. Outputs a confirmation with instance ID and setup details.", + "category": "sales-automation", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "The unique name identifying the sales automation instance to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetChannels", + "type": "array", + "description": "List of sales channels (e.g., email, phone, social media) to include in the automation.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "automationRules", + "type": "array", + "description": "Array of automation rule objects defining triggers and actions for the sales process.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "userAccessRoles", + "type": "object", + "description": "Mapping of user roles to permissions for accessing and managing this instance.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableNotifications", + "type": "boolean", + "description": "Flag to enable or disable notifications for sales activities within this instance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the newly created instance ID, its configuration summary, creation timestamp, and current status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically establish a new sales automation environment tailored to specific channels, rules, and user roles. Ideal for setting up scalable lead management and automated sales funnels to streamline workflows.", + "limitations": "Does not handle external integrations setup beyond specified channels; does not manage ongoing lead data or sales analytics after instance creation; requires valid automation rules syntax.", + "examples": [ + "Create a sales automation instance named 'Q2Campaign' targeting email and phone channels with predefined follow-up rules.", + "Set up a new instance with social media as the only channel and custom user access roles for the sales team.", + "Enable notifications off for an instance focused on cold calling with specific automation triggers." + ] + }, + "tags": [ + "sales", + "automation", + "lead management", + "workflow", + "instance creation", + "sales funnel" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"Q2Campaign\",\"targetChannels\":[\"email\",\"phone\"],\"automationRules\":[{\"trigger\":\"leadCreated\",\"action\":\"sendEmail\"}],\"userAccessRoles\":{\"salesRep\":\"edit\",\"manager\":\"admin\"},\"enableNotifications\":true}", + "description": "Create an instance named 'Q2Campaign' integrating email and phone sales channels with basic automation and role-based access." + }, + { + "inputJson": "{\"instanceName\":\"SocialPush\",\"targetChannels\":[\"socialMedia\"],\"automationRules\":[{\"trigger\":\"leadAssigned\",\"action\":\"sendSMS\"}],\"userAccessRoles\":{\"agent\":\"edit\"},\"enableNotifications\":false}", + "description": "Create a social media focused sales automation instance with SMS alerts disabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "sales-automation.createCredential", + "description": "Creates a new access credential for sales team members or automated sales bots to securely access sales systems. Accepts user or bot identity details, role, and access scopes. Returns a credential object with ID, secret token, and metadata for use in authentication and authorization workflows.", + "category": "sales-automation", + "parameters": [ + { + "name": "entityId", + "type": "string", + "description": "Unique identifier for the sales team member or bot for whom the credential is being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "entityType", + "type": "string", + "description": "Type of entity requesting credential, e.g., 'user' or 'bot'.", + "required": true, + "defaultValue": "" + }, + { + "name": "role", + "type": "string", + "description": "Role assigned to the credential, defining access level (e.g., 'sales_rep', 'manager', 'automation_bot').", + "required": true, + "defaultValue": "" + }, + { + "name": "scopes", + "type": "array", + "description": "List of permission strings defining what actions the credential allows, e.g., ['read_leads','update_pipeline'].", + "required": true, + "defaultValue": "" + }, + { + "name": "expirationHours", + "type": "number", + "description": "Duration in hours after which the credential expires. If omitted or 0, credential does not expire.", + "required": false, + "defaultValue": "0" + }, + { + "name": "notes", + "type": "string", + "description": "Optional notes describing the purpose of the credential or additional info.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created credential, including credentialId, secretToken, creation timestamp, expiration timestamp (if any), role, scopes, and associated entity info." + }, + "aiAgent": { + "useCase": "Use this tool when automating the creation of secure access credentials for sales personnel or bots needing controlled access to sales automation systems, to integrate identity and permissions dynamically into workflows.", + "limitations": "This tool does not manage credential revocation or audit usage logs; separate tools should be used for those functions.", + "examples": [ + "Create a credential for a new sales representative with read and write permissions to lead data.", + "Generate an access token for a sales automation bot with limited scope and a one-week expiration.", + "Issue a credential for a sales manager role without expiration for long-term use." + ] + }, + "tags": [ + "sales", + "automation", + "credentials", + "security", + "access-control", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"entityId\":\"user_789\",\"entityType\":\"user\",\"role\":\"sales_rep\",\"scopes\":[\"read_leads\",\"update_pipeline\"],\"expirationHours\":168,\"notes\":\"Temporary credential for new hire.\"}", + "description": "Create a temporary credential valid for one week for a new sales rep with appropriate permissions." + }, + { + "inputJson": "{\"entityId\":\"bot_123\",\"entityType\":\"bot\",\"role\":\"automation_bot\",\"scopes\":[\"read_leads\"],\"expirationHours\":0,\"notes\":\"Automation script access.\"}", + "description": "Create a non-expiring credential for a sales automation bot with read-only scope." + }, + { + "inputJson": "{\"entityId\":\"user_456\",\"entityType\":\"user\",\"role\":\"manager\",\"scopes\":[\"read_leads\",\"update_pipeline\",\"approve_deals\"],\"expirationHours\":0,\"notes\":\"Permanent manager credential.\"}", + "description": "Issue a permanent credential for a sales manager with extended permissions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Credential", + "context": null + } + }, + { + "name": "sales-automation.createRisk", + "description": "Creates a sales risk profile based on input data including customer information, deal characteristics, and historical sales performance. The tool processes the inputs to identify potential risks to closing a sale, such as financial instability, competitive threats, or compliance issues, and produces a structured risk assessment report with risk level and detailed factors.", + "category": "sales-automation", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier of the customer or lead", + "required": true, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "Monetary value of the sales deal in USD", + "required": true, + "defaultValue": "" + }, + { + "name": "dealStage", + "type": "string", + "description": "Current stage of the sales pipeline for this deal (e.g., prospecting, negotiation, closed)", + "required": true, + "defaultValue": "" + }, + { + "name": "industry", + "type": "string", + "description": "Industry sector of the customer or lead", + "required": false, + "defaultValue": "" + }, + { + "name": "historicalWinRate", + "type": "number", + "description": "Percentage representing past win rate with this customer or similar deals (0-100)", + "required": false, + "defaultValue": "50" + }, + { + "name": "competitorPresence", + "type": "boolean", + "description": "Indicates if competitors are actively engaged with this customer on this deal", + "required": false, + "defaultValue": "false" + }, + { + "name": "complianceConcerns", + "type": "boolean", + "description": "Flags if there are known regulatory or compliance issues related to this deal", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing overall risk level (low, medium, high), key risk factors identified, and a confidence score (0-1) indicating assessment reliability" + }, + "aiAgent": { + "useCase": "Use this tool when evaluating the likelihood of successful closure for sales opportunities, especially to automate risk scoring based on deal and customer data before allocating sales resources or planning follow-ups. It helps prioritize deals by potential risk and assists risk mitigation planning.", + "limitations": "This tool cannot predict exact outcomes or account for real-time dynamic market changes; it relies on input data quality and predefined heuristics. It does not replace human judgement or detailed legal/financial risk analysis.", + "examples": [ + "Create a risk profile for a $150K deal in negotiation stage with competitor involvement and compliance concerns.", + "Assess risk level for a prospecting deal valued at $50K with no known competitors and average historical win rate.", + "Generate risk report for a deal in healthcare industry with high deal value and moderate historical win rate." + ] + }, + "tags": [ + "sales", + "risk-assessment", + "automation", + "lead-management", + "deal-evaluation", + "sales-pipeline", + "risk-management" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"CUST12345\",\"dealValue\":150000,\"dealStage\":\"negotiation\",\"industry\":\"technology\",\"historicalWinRate\":65,\"competitorPresence\":true,\"complianceConcerns\":true}", + "description": "Risk assessment for a $150K technology deal in negotiation with competitors and compliance flags." + }, + { + "inputJson": "{\"customerId\":\"LEAD67890\",\"dealValue\":50000,\"dealStage\":\"prospecting\",\"industry\":\"retail\",\"historicalWinRate\":40,\"competitorPresence\":false,\"complianceConcerns\":false}", + "description": "Risk profile for a $50K retail prospecting deal with no competitor engagement or compliance issues." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "sales-automation.createVideo", + "description": "Generates a personalized sales video by combining provided script text, customer data, and optional branding assets. Accepts input script and customization options, then produces a ready-to-share video file URL optimized for outreach campaigns.", + "category": "sales-automation", + "parameters": [ + { + "name": "scriptText", + "type": "string", + "description": "The full text script to be narrated or displayed in the video.", + "required": true, + "defaultValue": "" + }, + { + "name": "customerName", + "type": "string", + "description": "Name of the customer to personalize the video content.", + "required": false, + "defaultValue": "" + }, + { + "name": "brandingAssets", + "type": "object", + "description": "Optional branding elements including logo URL and brand colors.", + "required": false, + "defaultValue": "" + }, + { + "name": "voiceType", + "type": "string", + "description": "Type of synthetic voice for narration (e.g., male, female, or specific voice style).", + "required": false, + "defaultValue": "female" + }, + { + "name": "videoLength", + "type": "number", + "description": "Desired length of the video in seconds; automatically adjusted if script is shorter.", + "required": false, + "defaultValue": "60" + }, + { + "name": "backgroundMusicUrl", + "type": "string", + "description": "URL to background music track to include in the video.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to include subtitles synchronized with narration.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL to the generated video file and metadata such as video duration and format." + }, + "aiAgent": { + "useCase": "Use this tool to create personalized sales outreach videos tailored to individual customers or segments by inputting custom scripts and branding details. It is ideal for automated campaign generation where videos enhance engagement and conversion.", + "limitations": "This tool cannot capture live video or real human actor footage; it generates synthesized video content from text and assets only. Video quality depends on input script length and asset resolution.", + "examples": [ + "Create a personalized introduction video for a prospect using their name and our company branding.", + "Generate a product demo video highlighting new features with narration and subtitles.", + "Produce a short sales pitch video with background music and our corporate logo overlay." + ] + }, + "tags": [ + "sales", + "video-creation", + "personalization", + "automation", + "outreach", + "branding" + ], + "examples": [ + { + "inputJson": "{\"scriptText\":\"Hello, [customerName]! We're excited to offer you an exclusive deal.\",\"customerName\":\"Jane\",\"brandingAssets\":{\"logoUrl\":\"https://example.com/logo.png\",\"primaryColor\":\"#0047AB\"},\"voiceType\":\"female\",\"videoLength\":45,\"includeSubtitles\":true}", + "description": "Create a personalized 45-second sales video for a customer named Jane, including company logo and subtitles." + }, + { + "inputJson": "{\"scriptText\":\"Introducing the latest features of our platform. Boost your productivity today.\",\"voiceType\":\"male\",\"backgroundMusicUrl\":\"https://example.com/music.mp3\",\"includeSubtitles\":false}", + "description": "Generate a product demo video narrated by a male voice with background music but no subtitles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "sales-automation.createVariable", + "description": "Creates or defines a dynamic variable within the sales automation system. Accepts parameters defining the variable's name, type, initial value, and description. Processes these inputs to register the variable, enabling its use throughout sales workflows and automation scripts. Outputs a confirmation with the variable's details and unique identifier.", + "category": "sales-automation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique name identifier for the variable to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "Data type of the variable (e.g., string, number, boolean, date).", + "required": true, + "defaultValue": "" + }, + { + "name": "initialValue", + "type": "string", + "description": "Initial value of the variable, expressed as string; must be convertible to variableType.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Brief explanation about the purpose or use of this variable.", + "required": false, + "defaultValue": "" + }, + { + "name": "isGlobal", + "type": "boolean", + "description": "Determines if this variable is available globally across all sales workflows or localized to a specific workflow.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object confirming the creation of the variable, including the variable's name, type, initial value, description, scope, and a unique variable ID." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically define or register new variables in the sales automation environment to customize or extend sales processes. For instance, when automating lead scoring, tracking custom customer attributes, or integrating third-party data points dynamically.", + "limitations": "This tool only creates variables and does not assign or update variable values during workflow execution. It cannot validate complex data types or execute scripts based on variable values.", + "examples": [ + "Create a new numeric variable named 'leadScore' with initial value 0 to be used globally.", + "Define a boolean variable 'isQualifiedLead' with default false, local to a specific sales automation workflow.", + "Create a string variable 'customerRegion' without an initial value and add a description for contextual use." + ] + }, + "tags": [ + "sales", + "automation", + "variable", + "dynamicData", + "workflow", + "leadManagement" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"leadScore\",\"variableType\":\"number\",\"initialValue\":\"0\",\"description\":\"Stores the calculated lead score.\",\"isGlobal\":true}", + "description": "Create a global numeric variable named 'leadScore' initialized to 0 for scoring leads." + }, + { + "inputJson": "{\"variableName\":\"isQualifiedLead\",\"variableType\":\"boolean\",\"initialValue\":\"false\",\"description\":\"Indicates if lead meets qualification criteria.\",\"isGlobal\":false}", + "description": "Create a local boolean variable 'isQualifiedLead' initialized to false for workflow use only." + }, + { + "inputJson": "{\"variableName\":\"customerRegion\",\"variableType\":\"string\",\"description\":\"Region classification of the customer.\",\"isGlobal\":true}", + "description": "Create a global string variable 'customerRegion' without initial value but with a description." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "sales-automation.createOpportunity", + "description": "Creates a new sales opportunity record based on provided customer and deal information. Accepts input details like account name, potential value, expected close date, sales stage, and related contacts. Processes this data to generate a structured opportunity entry suitable for sales pipeline tracking. Returns confirmation including the unique opportunity ID and summary details.", + "category": "sales-automation", + "parameters": [ + { + "name": "accountName", + "type": "string", + "description": "Name of the customer or account this opportunity is associated with", + "required": true, + "defaultValue": "" + }, + { + "name": "opportunityName", + "type": "string", + "description": "Title or name of the sales opportunity", + "required": true, + "defaultValue": "" + }, + { + "name": "potentialValue", + "type": "number", + "description": "Estimated monetary value of the opportunity in dollars", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedCloseDate", + "type": "string", + "description": "Expected date for closing the deal in ISO 8601 format (YYYY-MM-DD)", + "required": false, + "defaultValue": "" + }, + { + "name": "salesStage", + "type": "string", + "description": "Current stage of the opportunity in the sales pipeline (e.g., Qualification, Proposal, Negotiation)", + "required": false, + "defaultValue": "Qualification" + }, + { + "name": "contacts", + "type": "array", + "description": "List of contact objects linked to this opportunity, each containing name and email", + "required": false, + "defaultValue": "[]" + }, + { + "name": "description", + "type": "string", + "description": "Additional notes or description related to the opportunity", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Result object containing opportunityId (string), accountName, opportunityName, potentialValue, salesStage, and confirmation message." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically add a new sales opportunity into a CRM or sales pipeline system, especially when automating lead processing or integrating with sales dashboards. It helps agents formalize deals and track pipeline status automatically.", + "limitations": "This tool does not validate account existence or enrich data from external sources; it assumes provided data is correct and does not manage associated tasks or follow-ups.", + "examples": [ + "Create an opportunity named 'Upgrade Project' with a potential value of $50,000 for Acme Corp, expected to close next month at negotiation stage.", + "Add a new opportunity for 'Beta Inc' with multiple contacts and no expected close date specified.", + "Generate an opportunity for 'Gamma LLC' with the description 'Enterprise deal' and default sales stage." + ] + }, + "tags": [ + "sales", + "automation", + "crm", + "lead management", + "opportunity creation", + "pipeline" + ], + "examples": [ + { + "inputJson": "{\"accountName\":\"Acme Corp\",\"opportunityName\":\"Upgrade Project\",\"potentialValue\":50000,\"expectedCloseDate\":\"2024-07-15\",\"salesStage\":\"Negotiation\",\"contacts\":[{\"name\":\"Jane Doe\",\"email\":\"jane.doe@acme.com\"}],\"description\":\"Upgrade of existing software license.\"}", + "description": "Creating an opportunity for Acme Corp with contacts and specified close date and stage." + }, + { + "inputJson": "{\"accountName\":\"Beta Inc\",\"opportunityName\":\"New Consulting Contract\",\"potentialValue\":150000,\"contacts\":[{\"name\":\"John Smith\",\"email\":\"john.smith@beta.com\"}, {\"name\":\"Alice Brown\",\"email\":\"alice.brown@beta.com\"}]}", + "description": "Opportunity for Beta Inc without expected close date or sales stage (defaults applied)." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "sales-automation.createTable", + "description": "Creates a structured data table representing sales leads or opportunities from provided input arrays or objects. Accepts column definitions and row data, then outputs a formatted table object suitable for sales data management and reporting.", + "category": "sales-automation", + "parameters": [ + { + "name": "columns", + "type": "array", + "description": "An array of column definitions where each column has a 'name' and 'type' (e.g., 'string', 'number', 'date') representing the sales data fields. Required columns to define the table schema.", + "required": true, + "defaultValue": "" + }, + { + "name": "rows", + "type": "array", + "description": "Array of row data objects matching the column schema, each representing a sales lead or opportunity entry.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Optional friendly name for the sales data table to identify in UI or reports.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTotals", + "type": "boolean", + "description": "Flag to indicate whether to automatically calculate and include totals (e.g., total value) at the bottom of numeric columns.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns a table object including the original columns, rows, optional totals summary, and the tableName if provided." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw sales lead data or opportunity entries into a structured table format for management, analytics, or export. It helps automate the creation of organized sales datasets from arrays of lead data and column specifications.", + "limitations": "Does not connect to live sales CRM systems or perform data enrichment. It only formats provided data into a table structure and calculates simple totals for numeric columns.", + "examples": [ + "Create a sales leads table with columns for 'Lead Name', 'Status', and 'Estimated Value' including totals for the value column.", + "Generate a table named 'Q2 Opportunities' from a JSON array of opportunity records with specified columns.", + "Build a simple table from given rows with no totals and default name." + ] + }, + "tags": [ + "sales", + "automation", + "table", + "leads", + "data", + "management", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"columns\":[{\"name\":\"Lead Name\",\"type\":\"string\"},{\"name\":\"Status\",\"type\":\"string\"},{\"name\":\"Estimated Value\",\"type\":\"number\"}],\"rows\":[{\"Lead Name\":\"Acme Inc.\",\"Status\":\"Contacted\",\"Estimated Value\":50000},{\"Lead Name\":\"Beta LLC\",\"Status\":\"Qualified\",\"Estimated Value\":75000}],\"tableName\":\"Sales Leads\",\"includeTotals\":true}", + "description": "Create a sales leads table with totals on 'Estimated Value'." + }, + { + "inputJson": "{\"columns\":[{\"name\":\"Opportunity\",\"type\":\"string\"},{\"name\":\"Stage\",\"type\":\"string\"},{\"name\":\"Close Date\",\"type\":\"date\"}],\"rows\":[{\"Opportunity\":\"Project X\",\"Stage\":\"Proposal\",\"Close Date\":\"2024-08-15\"},{\"Opportunity\":\"Project Y\",\"Stage\":\"Negotiation\",\"Close Date\":\"2024-09-01\"}],\"tableName\":\"Q3 Opportunities\",\"includeTotals\":false}", + "description": "Generate opportunity table for Q3 with no totals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "sales-automation.createQuery", + "description": "Generates a structured query to retrieve or filter sales leads and customer data based on given criteria such as lead status, geography, product interest, and engagement level. Accepts filter parameters and outputs a JSON query object suitable for use with sales CRM databases or APIs.", + "category": "sales-automation", + "parameters": [ + { + "name": "leadStatus", + "type": "string", + "description": "Filter leads by their current status (e.g., \"new\", \"contacted\", \"qualified\"). Empty means no status filter.", + "required": false, + "defaultValue": "" + }, + { + "name": "regions", + "type": "array", + "description": "List of geographic regions to include (e.g., [\"North America\", \"EMEA\"]). Empty list means all regions.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "productInterest", + "type": "string", + "description": "Filter leads who have shown interest in a specific product or product category. Empty means no product filter.", + "required": false, + "defaultValue": "" + }, + { + "name": "minEngagementScore", + "type": "number", + "description": "Minimum engagement score (0-100) to include leads that meet or exceed this threshold. Zero means no minimum.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeInactive", + "type": "boolean", + "description": "Whether to include leads marked as inactive. Default is false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the constructed query with applied filters, formatted for CRM system compatibility." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent needs to dynamically generate a query to extract or segment sales leads from CRM data based on variable filtering criteria supplied by user context or sales strategies. It automates query composition to ensure valid and structured filter logic without manual coding.", + "limitations": "Cannot execute the query or fetch results; only builds the query syntax. It does not validate filter values against live CRM data schemas or guarantee compatibility with every CRM system's specific query language.", + "examples": [ + "Create a query for leads in EMEA interested in 'ProductX' with engagement over 70, excluding inactive leads.", + "Generate a query to retrieve new leads from North America without product interest filter.", + "Build a query to include all contacted leads regardless of region or product interest, including inactive leads." + ] + }, + "tags": [ + "sales", + "automation", + "lead-management", + "query-generation", + "crm", + "filtering" + ], + "examples": [ + { + "inputJson": "{\"leadStatus\":\"new\",\"regions\":[\"North America\"],\"productInterest\":\"\",\"minEngagementScore\":0,\"includeInactive\":false}", + "description": "Query for all new leads in North America, no product filter, excluding inactive leads." + }, + { + "inputJson": "{\"leadStatus\":\"contacted\",\"regions\":[],\"productInterest\":\"ProductX\",\"minEngagementScore\":50,\"includeInactive\":false}", + "description": "Query for contacted leads interested in ProductX with engagement score >= 50 across all regions, excluding inactive leads." + }, + { + "inputJson": "{\"leadStatus\":\"\",\"regions\":[\"EMEA\",\"APAC\"],\"productInterest\":\"ProductY\",\"minEngagementScore\":0,\"includeInactive\":true}", + "description": "Query for all leads in EMEA and APAC interested in ProductY including inactive leads, no minimum engagement score filtering." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "sales-automation.createComponent", + "description": "Creates a reusable sales automation UI component by accepting configuration parameters such as component type, data source, and display options. The tool processes these inputs to generate a ready-to-integrate code snippet or module for use in CRM or sales dashboards, enabling quick assembly of custom sales tools.", + "category": "sales-automation", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of sales component to create, e.g., leadList, salesFunnel, contactCard.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSource", + "type": "string", + "description": "Identifier or URL of the data source for populating the component, such as an API endpoint or database name.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayOptions", + "type": "object", + "description": "Settings controlling the visual presentation, including themes, layout styles, and filters.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Time interval in seconds for auto-refreshing component data.", + "required": false, + "defaultValue": "0" + }, + { + "name": "enableInteractions", + "type": "boolean", + "description": "Whether to enable interactive features like sorting, filtering or inline editing within the component.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated component code as a string along with metadata like component ID and preview URL if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate customizable sales-related UI components to integrate with CRM systems or sales dashboards, especially when the component requires tailored data feeds and visual settings. It accelerates prototyping and deployment of sales automation interfaces.", + "limitations": "Does not automatically connect components to backend systems; integration must be handled separately. Generated code may require manual adjustments to fit complex custom environments.", + "examples": [ + "Create a lead list component that displays recent leads from our CRM API with a dark theme.", + "Generate a sales funnel visualization component sourcing data from the sales database with refresh every 60 seconds.", + "Make a contact card component with inline editing enabled using a local data source." + ] + }, + "tags": [ + "sales", + "automation", + "component", + "UI", + "CRM", + "dashboard", + "code-generation" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"leadList\",\"dataSource\":\"https://api.crm.example.com/leads\",\"displayOptions\":{\"theme\":\"dark\",\"columns\":[\"name\",\"status\",\"lastContacted\"]},\"refreshInterval\":120,\"enableInteractions\":true}", + "description": "Generate a dark-themed lead list component pulling lead data from a CRM API with auto-refresh every two minutes." + }, + { + "inputJson": "{\"componentType\":\"salesFunnel\",\"dataSource\":\"sales_db\",\"displayOptions\":{\"layout\":\"vertical\"},\"refreshInterval\":0,\"enableInteractions\":false}", + "description": "Create a vertical-layout sales funnel component using local sales database without auto-refresh and no interactive features." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "finance-tools.analyzeLead", + "description": "This tool analyzes business lead data to evaluate lead quality, predict conversion likelihood, and segment leads for targeted marketing. It accepts lead attributes such as demographics, engagement metrics, and historical interactions, then applies statistical and ML algorithms to produce a detailed lead score, conversion probability, and recommended next steps to optimize sales efforts.", + "category": "finance-tools", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "An object containing lead attributes including demographics, engagement history, and interaction details required for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "modelType", + "type": "string", + "description": "The predictive model type to use for conversion likelihood (e.g., 'logisticRegression', 'randomForest').", + "required": false, + "defaultValue": "logisticRegression" + }, + { + "name": "includeSegmentation", + "type": "boolean", + "description": "Whether to perform lead segmentation based on behavior and attributes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "historicalConversionRate", + "type": "number", + "description": "The average historical conversion rate to calibrate the model, if available.", + "required": false, + "defaultValue": "" + }, + { + "name": "engagementThreshold", + "type": "number", + "description": "Numeric threshold defining minimum engagement level to consider a lead active.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing leadScore (number), conversionProbability (number between 0 and 1), segmentationLabel (string), and recommendedNextSteps (string) to guide sales strategy." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating potential sales leads to prioritize outreach and optimize conversion efforts. It helps agents assign meaningful scores and predictions based on historical and behavioral data, aiding in more effective sales funnel management.", + "limitations": "The tool relies on the quality and completeness of input lead data; it does not guarantee conversion but provides probabilistic estimates. It does not replace human judgment or incorporate real-time market conditions beyond provided data.", + "examples": [ + "Analyze this lead's potential for conversion based on their demographic and past engagement.", + "Given a batch of new leads, identify high-value prospects likely to convert.", + "Provide segmentation and next step recommendations to improve sales outreach effectiveness." + ] + }, + "tags": [ + "finance", + "leadAnalysis", + "sales", + "conversion", + "predictiveModeling", + "segmentation" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"age\":35,\"industry\":\"Technology\",\"lastContactDaysAgo\":10,\"emailOpens\":5,\"websiteVisits\":12,\"jobTitle\":\"CTO\"},\"modelType\":\"randomForest\",\"includeSegmentation\":true,\"historicalConversionRate\":0.12,\"engagementThreshold\":3}", + "description": "Analyze a technology sector lead with moderate engagement metrics to generate a lead score, conversion probability, segmentation label, and suggested next steps." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Lead", + "context": null + } + }, + { + "name": "finance-tools.analyzeNotification", + "description": "Analyzes financial notification messages to extract and summarize key financial events, alerts, or transactions. Accepts notification text or structured JSON messages, performs natural language understanding and data extraction to identify financial impacts or actions required, and outputs a structured summary highlighting critical financial details and recommended next steps.", + "category": "finance-tools", + "parameters": [ + { + "name": "notificationContent", + "type": "string", + "description": "The text content of the financial notification message to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationFormat", + "type": "string", + "description": "Format of the notification input, e.g., 'text' or 'json'. Defaults to 'text'.", + "required": false, + "defaultValue": "text" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the notification content for accurate parsing and analysis, default is 'en' (English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include recommended actions or next steps in the analysis output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "sensitivityLevel", + "type": "string", + "description": "Level of financial sensitivity for alert prioritization: 'low', 'medium', or 'high'. Defaults to medium.", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted key details such as event type, affected accounts, monetary amounts, urgency level, and optionally recommended actions or alerts." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent receives a financial notification (email, SMS, app alert) and needs to interpret its content to extract actionable financial insights and prioritize responses. It helps in automating the understanding of varied financial communications to guide user decision-making or trigger downstream processing.", + "limitations": "Cannot verify the factual accuracy of the notification content or execute financial transactions. May have reduced accuracy with highly ambiguous or poorly formatted inputs.", + "examples": [ + "Analyze notification content about a credit card transaction alert to extract amount, merchant, and potential fraud indication.", + "Interpret an account balance update notification to summarize changes and flag low balance alerts.", + "Process JSON-formatted bank notification messages to extract transaction details and urgency for follow-up." + ] + }, + "tags": [ + "finance", + "notification", + "analysis", + "financial-alerts", + "data-extraction", + "summarization" + ], + "examples": [ + { + "inputJson": "{\"notificationContent\":\"Alert: Your credit card ending 1234 was charged $250.00 at Amazon on 2024-05-25.\",\"notificationFormat\":\"text\",\"language\":\"en\",\"includeRecommendations\":true,\"sensitivityLevel\":\"high\"}", + "description": "Analyze text notification of a credit card transaction alert for amount, merchant, date, and fraud risk." + }, + { + "inputJson": "{\"notificationContent\":\"{\\\"type\\\":\\\"balance_update\\\",\\\"account\\\":\\\"Savings\\\",\\\"new_balance\\\":1500.00,\\\"timestamp\\\":\\\"2024-05-20T14:30:00Z\\\"}\",\"notificationFormat\":\"json\",\"language\":\"en\",\"includeRecommendations\":false}", + "description": "Analyze JSON notification of a savings account balance update without recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "sales-automation.createArticle", + "description": "Creates a sales-focused article draft based on input topic, target audience, desired tone, and optional keywords. The tool uses natural language generation to produce a structured article including introduction, body, and conclusion aimed at engaging potential leads and guiding them through the sales funnel.", + "category": "sales-automation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme of the sales article to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the intended readership or buyer persona for tailoring content tone and style.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired writing tone for the article, such as professional, casual, persuasive, or informative.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "keywords", + "type": "array", + "description": "A list of key terms or phrases to be incorporated into the article for SEO and relevance.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate desired length of the article in words.", + "required": false, + "defaultValue": "800" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text with structured sections including title, introduction, body, and conclusion." + }, + "aiAgent": { + "useCase": "Use this tool when generating written sales content such as blog articles, whitepapers, or marketing collateral to engage leads and nurture them through the sales funnel. The tool helps automate content creation based on strategic inputs to save time and maintain consistency.", + "limitations": "The tool cannot replace deep domain expertise or human creativity entirely and may require human review and editing to align with specific branding or regulatory requirements.", + "examples": [ + "Create a persuasive sales article on cloud software benefits targeting IT managers.", + "Generate a casual tone article about new sales techniques for small business owners.", + "Write an 800-word informative article on cybersecurity solutions for tech-savvy executives." + ] + }, + "tags": [ + "sales", + "content-generation", + "automation", + "marketing", + "lead-nurturing", + "SEO", + "writing" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"Benefits of CRM Systems\",\"targetAudience\":\"Sales Team Managers\",\"tone\":\"professional\",\"keywords\":[\"CRM\",\"customer relationship management\",\"sales efficiency\"],\"wordCount\":600}", + "description": "Create a professional sales article about CRM benefits targeting sales managers with selected keywords." + }, + { + "inputJson": "{\"topic\":\"Effective Cold Email Strategies\",\"targetAudience\":\"Startup Founders\",\"tone\":\"casual\",\"keywords\":[\"cold email\",\"lead generation\"],\"wordCount\":500}", + "description": "Generate a casual article on cold email strategies aimed at startup founders to boost lead generation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Article", + "context": null + } + }, + { + "name": "finance-tools.analyzeEvent", + "description": "Analyzes financial events such as transactions, investments, or market occurrences. Accepts detailed event data including type, date, amount, and category. Processes this data to provide insights on impact, trends, risk factors, and recommendations. Outputs a structured analysis report highlighting key financial implications and suggested actions.", + "category": "finance-tools", + "parameters": [ + { + "name": "eventType", + "type": "string", + "description": "Type of financial event (e.g., transaction, investment, dividend).", + "required": true, + "defaultValue": "" + }, + { + "name": "eventDate", + "type": "string", + "description": "Date of the financial event in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "Monetary amount related to the event.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the amount (ISO 4217, e.g., USD, EUR).", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "Category of the event (e.g., income, expense, investment).", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional data relevant to the event, such as associated accounts, counterparties, or notes.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "riskLevel", + "type": "string", + "description": "Optional risk level associated with the event (e.g., low, medium, high).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured report including impact summary, trend identification, risk assessment, and recommended financial actions." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract actionable financial insights from discrete financial events, such as evaluating a transaction's effect on cash flow, assessing an investment's performance, or understanding market event implications. Suitable for financial planning, accounting review, and investment analysis workflows.", + "limitations": "Cannot replace comprehensive financial advisory; does not perform forecasting based on external market data; analysis is limited to provided event data without broader context.", + "examples": [ + "Analyze the investment event on 2024-04-01 of $10,000 USD in stock purchase.", + "Provide risk assessment and recommendations for a high-value transaction event categorized as expense.", + "Summarize impact and trends from a series of dividend events for portfolio evaluation." + ] + }, + "tags": [ + "finance", + "event-analysis", + "transaction", + "investment", + "risk-assessment", + "financial-insights" + ], + "examples": [ + { + "inputJson": "{\"eventType\":\"investment\",\"eventDate\":\"2024-04-01\",\"amount\":10000,\"currency\":\"USD\",\"category\":\"stock purchase\",\"metadata\":{\"ticker\":\"AAPL\",\"broker\":\"XYZ Investments\"},\"riskLevel\":\"medium\"}", + "description": "Analysis of a stock purchase investment event including amount, date, and associated metadata." + }, + { + "inputJson": "{\"eventType\":\"transaction\",\"eventDate\":\"2024-05-15\",\"amount\":1500,\"currency\":\"EUR\",\"category\":\"expense\",\"metadata\":{\"vendor\":\"Office Supplies Co.\"},\"riskLevel\":\"low\"}", + "description": "Analyzing a business expense transaction to evaluate its impact on budget and cash flow." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "finance-tools.analyzeMetric", + "description": "Analyzes financial metrics based on provided historical data and parameters. Accepts metric name, array of time-stamped financial values, and optional filters such as date range and comparison benchmarks. Processes trend analysis, calculates key statistics (mean, variance), and optionally compares results against industry benchmarks. Outputs a detailed report with numeric summaries and trend insights.", + "category": "finance-tools", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "The name of the financial metric to analyze (e.g., revenue, profit margin)", + "required": true, + "defaultValue": "" + }, + { + "name": "dataPoints", + "type": "array", + "description": "An array of objects representing data points, each with a timestamp and value for the metric", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 formatted date string to filter data points from this date onward", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 formatted date string to filter data points up to this date", + "required": false, + "defaultValue": "" + }, + { + "name": "compareToBenchmark", + "type": "boolean", + "description": "Flag indicating whether to compare the metric analysis against industry benchmarks", + "required": false, + "defaultValue": "false" + }, + { + "name": "benchmarkValues", + "type": "object", + "description": "Optional object containing benchmark metric values to compare against, keys are metric names", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing statistical summary (mean, variance, min, max), trend analysis (increasing, decreasing, stable), and optional comparison results highlighting deviations from benchmarks" + }, + "aiAgent": { + "useCase": "Use this tool when analyzing historical financial metrics to understand performance trends, variability, and benchmarking against industry standards. Ideal for financial analysts and decision-makers aiming to extract actionable insights from raw metric data over customizable timeframes.", + "limitations": "This tool analyzes provided numerical financial data points only and does not perform data extraction, collection, or forecasting beyond trend analysis. It relies on proper timestamped data input and does not handle unstructured or incomplete data.", + "examples": [ + "Analyze revenue metric from last fiscal year and compare against industry benchmarks.", + "Evaluate profit margin trends over the past 6 months without benchmarking.", + "Calculate variability and identify trends of operating expenses between two specified dates." + ] + }, + "tags": [ + "financial", + "analysis", + "metrics", + "benchmarking", + "trend", + "statistics" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"revenue\",\"dataPoints\":[{\"timestamp\":\"2023-01-01\",\"value\":10000},{\"timestamp\":\"2023-02-01\",\"value\":12000},{\"timestamp\":\"2023-03-01\",\"value\":9000}],\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"compareToBenchmark\":true,\"benchmarkValues\":{\"revenue\":11000}}", + "description": "Analyzes revenue metric from Q1 2023 compared to a benchmark value." + }, + { + "inputJson": "{\"metricName\":\"profitMargin\",\"dataPoints\":[{\"timestamp\":\"2023-04-01\",\"value\":0.15},{\"timestamp\":\"2023-05-01\",\"value\":0.14},{\"timestamp\":\"2023-06-01\",\"value\":0.16}],\"compareToBenchmark\":false}", + "description": "Evaluates profit margin trend for the past 3 months without benchmarking." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "finance-tools.analyzeParagraph", + "description": "Analyzes a text paragraph related to financial content to extract key financial metrics, sentiments, and thematic topics. Accepts a string paragraph input, processes the text using natural language processing specialized for finance, and returns structured data including detected financial concepts, sentiment score, and summary keywords.", + "category": "finance-tools", + "parameters": [ + { + "name": "paragraphText", + "type": "string", + "description": "The financial text paragraph to analyze for metrics, sentiment, and themes.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language of the paragraph text for proper linguistic analysis. Defaults to 'en' (English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis score in the output. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and return key thematic keywords or phrases from the paragraph. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customFinanceTerms", + "type": "array", + "description": "Optional list of custom finance-related terms or phrases to enhance detection accuracy.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing recognized financial metrics, sentiment score, and key topics extracted from the paragraph." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract structured financial insights from unstructured text paragraphs, such as summarizing reports, understanding sentiment in earnings call transcripts, or detecting key financial topics in news articles. It helps transform narrative financial content into actionable data points.", + "limitations": "This tool analyzes text but does not verify factual accuracy or perform deep quantitative financial modeling. It may not handle highly technical or niche financial jargon beyond provided custom terms.", + "examples": [ + "Analyze financial paragraph for key metrics and sentiment.", + "Extract main financial themes and sentiment from quarterly earnings text.", + "Summarize key financial elements and sentiment from an investment report section." + ] + }, + "tags": [ + "finance", + "text analysis", + "sentiment", + "financial metrics", + "NLP", + "paragraph", + "financial reporting" + ], + "examples": [ + { + "inputJson": "{\"paragraphText\":\"The company's revenue increased by 15% year-over-year, driven by strong growth in the software division. However, operating expenses rose as well, impacting net income. Overall sentiment remains cautiously optimistic.\",\"language\":\"en\",\"includeSentiment\":true,\"includeKeywords\":true}", + "description": "Analyzing a financial report paragraph to extract growth metrics, expense impact, and sentiment." + }, + { + "inputJson": "{\"paragraphText\":\"Despite a volatile market, the firm managed to maintain stable cash flow and reduce debt levels significantly.\",\"language\":\"en\",\"includeSentiment\":true,\"includeKeywords\":true}", + "description": "Extracting financial stability indicators and sentiment from a brief investment update." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Paragraph", + "context": null + } + }, + { + "name": "finance-tools.formatFunction", + "description": "Formats a financial calculation function expressed as a JavaScript or TypeScript code string. Accepts a raw function string including variables and calculation logic, applies standardized indentation, consistent spacing, and optional numeric formatting style for financial clarity, and outputs a clean, readable formatted function string suitable for documentation or integration.", + "category": "finance-tools", + "parameters": [ + { + "name": "functionCode", + "type": "string", + "description": "The raw JavaScript/TypeScript function code to format, containing financial calculations. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output. Defaults to 2 for readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useSemicolons", + "type": "boolean", + "description": "Whether to ensure all statements end with semicolons. Defaults to true for standard syntax.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formatNumericLiterals", + "type": "boolean", + "description": "If true, formats numeric literals to include thousand separators and fixed decimals where applicable.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width before wrapping long lines of code. Default is 80 characters.", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted function code string with standardized formatting suitable for financial contexts, ensuring both code correctness and clarity." + }, + "aiAgent": { + "useCase": "Use this tool when you have a raw or minified financial calculation function in JavaScript or TypeScript that needs to be cleaned up and formatted for better readability, maintenance, or documentation. Ideal for integrating or presenting financial algorithm code clearly in reports or codebases.", + "limitations": "This tool does not perform code validation, semantic error checking, or financial correctness verification. It only formats code style and numeric literals as specified. It cannot parse or rewrite business logic beyond formatting.", + "examples": [ + "Format a raw financial interest calculation function before embedding in a financial report.", + "Clean up legacy finance-related script code for maintainability in a project.", + "Convert a minified financial function snippet into readable source code for review." + ] + }, + "tags": [ + "finance", + "formatting", + "code", + "JavaScript", + "TypeScript", + "financial-calculations", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"functionCode\":\"function calcInterest(principal, rate, time) {return principal*rate*time/100}\",\"indentationSpaces\":4,\"useSemicolons\":true,\"formatNumericLiterals\":false,\"lineWidth\":80}", + "description": "Format a simple interest calculation function with 4 spaces indentation and semicolons." + }, + { + "inputJson": "{\"functionCode\":\"function totalAmount(p,r,t){return p+r*p*t/100}\",\"indentationSpaces\":2,\"useSemicolons\":true,\"formatNumericLiterals\":true,\"lineWidth\":80}", + "description": "Format a total amount calculation function with numeric literals formatted for financial clarity." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Function", + "context": null + } + }, + { + "name": "finance-tools.renderFile", + "description": "Renders a financial document file into a specified output format suitable for viewing or sharing. Accepts file content or file path (PDF, Excel, CSV), processes it by converting or styling financial data, and outputs a rendered document (PDF, HTML, or image) with visualization elements like charts or tables if requested.", + "category": "finance-tools", + "parameters": [ + { + "name": "fileContent", + "type": "string", + "description": "Base64-encoded content of the financial file to render. Optional if filePath is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local or accessible path/URL of the financial file to render (PDF, XLSX, CSV). Optional if fileContent is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the rendered file. Supported values: pdf, html, png.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to generate and include charts based on financial data in the rendered output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "pageRange", + "type": "string", + "description": "Page range to render from the document (applies mainly to PDFs), e.g., '1-3'. If empty, renders whole document.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered file content as a base64 string and metadata about the output format and size." + }, + "aiAgent": { + "useCase": "Use this tool when needing to present, share, or visually analyze financial document files by converting raw files into a unified readable format with optional visualization. Useful for generating previews, reports, or embedding financial documents in presentations or web pages.", + "limitations": "Cannot edit underlying financial data or extract detailed analytical data; focuses on rendering visual representation only. Limited support for complex proprietary file formats beyond PDF, XLSX, and CSV.", + "examples": [ + "Render the attached Excel financial report as a PDF file including charts for visualization.", + "Convert an uploaded CSV file containing financial transactions into an HTML table for embedding in a webpage.", + "Generate a PNG image preview of the first two pages of a financial PDF document without charts." + ] + }, + "tags": [ + "finance", + "document rendering", + "file conversion", + "visualization", + "pdf", + "excel", + "csv", + "report" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"https://example.com/reports/quarterly_report.xlsx\",\"outputFormat\":\"pdf\",\"includeCharts\":true}", + "description": "Render an Excel financial report from a URL into a PDF with charts included." + }, + { + "inputJson": "{\"fileContent\":\"JVBERi0xLjQKJeLjz9MKMyAwIG9iago8PC9UeXBlIC9DYXRhbG9n\",\"outputFormat\":\"html\",\"includeCharts\":false}", + "description": "Convert base64 encoded PDF content into an HTML format without charts." + }, + { + "inputJson": "{\"filePath\":\"/files/finance_data.csv\",\"outputFormat\":\"png\",\"pageRange\":\"1-2\",\"includeCharts\":false}", + "description": "Create PNG previews from pages 1 to 2 of a CSV file rendered as table images without charts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "finance-tools.sendMessage", + "description": "Sends a financial-related message such as payment reminders, invoice notifications, or account alerts to specified recipients via email or SMS. Takes message content, recipient details, channel preference, and optional scheduling data as input, processes delivery through integrated communication channels, and returns status of message dispatch including success or failure and timestamps.", + "category": "finance-tools", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "The email address or phone number of the message recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageContent", + "type": "string", + "description": "The body of the message to be sent, including any financial details or instructions.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Preferred communication channel: 'email' or 'sms'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "Optional ISO 8601 formatted date-time to schedule message sending; sends immediately if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Message priority level, e.g., 'normal' or 'high'.", + "required": false, + "defaultValue": "normal" + } + ], + "returns": { + "type": "object", + "description": "An object indicating the delivery status, message ID, timestamp of sending, and any error details if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when needing to send financial messages such as payment reminders, alerts about invoice status, or account notifications to clients or internal users, ensuring communication is delivered via preferred channels with optional scheduling.", + "limitations": "Cannot generate message content automatically; relies on provided content. Limited to sending via email or SMS channels only. Does not handle message retries or failure corrections beyond reporting status.", + "examples": [ + "Send a payment reminder email to a client next Monday at 9 AM.", + "Notify a customer immediately via SMS about a failed transaction.", + "Send an invoice notification email with high priority to an accounting department." + ] + }, + "tags": [ + "finance", + "communication", + "messaging", + "notifications", + "email", + "sms", + "alerts" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"client@example.com\",\"messageContent\":\"Your payment of $500 is due on 2024-07-10.\",\"channel\":\"email\",\"scheduledTime\":\"2024-07-08T09:00:00Z\",\"priority\":\"normal\"}", + "description": "Schedule an email payment reminder to a client for a future date." + }, + { + "inputJson": "{\"recipient\":\"+15551234567\",\"messageContent\":\"Alert: Your recent transaction of $1200 was declined.\",\"channel\":\"sms\",\"priority\":\"high\"}", + "description": "Send an immediate high-priority SMS alert about a declined transaction to a phone number." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "finance-tools.renderDocument", + "description": "This tool accepts structured financial data and a document template type, then renders a formatted financial document such as an invoice, report, or statement as a PDF or HTML output. It processes input data to populate the template, applies styling, and returns a downloadable document for financial management or client presentation.", + "category": "finance-tools", + "parameters": [ + { + "name": "documentType", + "type": "string", + "description": "Type of financial document to render (e.g., 'invoice', 'report', 'statement').", + "required": true, + "defaultValue": "" + }, + { + "name": "financialData", + "type": "object", + "description": "Structured financial data object containing fields relevant to the chosen document type.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the rendered document: 'pdf' or 'html'.", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section in the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code for formatting currencies and dates (e.g., 'en-US', 'fr-FR').", + "required": false, + "defaultValue": "en-US" + } + ], + "returns": { + "type": "object", + "description": "An object containing the rendered document as a base64 string, filename, and mime type for download or display." + }, + "aiAgent": { + "useCase": "Use this tool when you have financial data and need to generate a professional financial document such as invoices, financial reports, or statements for clients or internal use. It helps automate document creation by populating templates according to data and formatting preferences.", + "limitations": "Cannot generate documents without properly structured financial data or unsupported document types. It does not perform data validation or financial calculations, only rendering.", + "examples": [ + "Generate an invoice PDF for client billing using provided financial data.", + "Render a quarterly financial report in HTML format with localized currency and date formats.", + "Create a financial statement document including a summary section in English locale." + ] + }, + "tags": [ + "finance", + "document rendering", + "pdf", + "html", + "invoices", + "reports", + "statements" + ], + "examples": [ + { + "inputJson": "{\"documentType\":\"invoice\",\"financialData\":{\"clientName\":\"Acme Corp\",\"invoiceNumber\":\"INV-1001\",\"date\":\"2024-06-01\",\"items\":[{\"description\":\"Consulting services\",\"quantity\":10,\"unitPrice\":150}],\"currency\":\"USD\"},\"outputFormat\":\"pdf\",\"includeSummary\":true,\"locale\":\"en-US\"}", + "description": "Render a PDF invoice document for Acme Corp using given financial data." + }, + { + "inputJson": "{\"documentType\":\"report\",\"financialData\":{\"title\":\"Q2 Financial Report\",\"periodStart\":\"2024-04-01\",\"periodEnd\":\"2024-06-30\",\"totalRevenue\":120000,\"totalExpenses\":80000,\"netIncome\":40000},\"outputFormat\":\"html\",\"includeSummary\":false,\"locale\":\"en-US\"}", + "description": "Generate an HTML quarterly financial report without summary for internal review." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "finance-tools.formatReport", + "description": "Formats a financial report provided as structured data into a clean, well-organized textual or HTML report for presentation or record-keeping. Accepts input data including sections, figures, and metadata, applies customizable formatting options such as currency style, decimal precision, date formats, and output format, returning a formatted report string ready for display or export.", + "category": "finance-tools", + "parameters": [ + { + "name": "reportData", + "type": "object", + "description": "The financial report data structured with sections, titles, figures, and notes to format", + "required": true, + "defaultValue": "" + }, + { + "name": "currencySymbol", + "type": "string", + "description": "Currency symbol to use for monetary values in the report (e.g., $, €, ¥)", + "required": false, + "defaultValue": "$" + }, + { + "name": "decimalPlaces", + "type": "number", + "description": "Number of decimal places to format financial figures", + "required": false, + "defaultValue": "2" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Date format string to display dates in the report (e.g., YYYY-MM-DD, MM/DD/YYYY)", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section at the end of the report", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format for the report, such as \"text\" or \"html\"", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted report as a string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw or semi-structured financial data into a presentable, standardized financial report for stakeholders, clients, or record-keeping. It is suitable for generating monthly, quarterly, or annual financial summaries in text or HTML formats with customizable numeric and date formatting.", + "limitations": "This tool cannot generate report content or analyze financial data; it only formats provided data. It does not perform calculations or validate financial accuracy.", + "examples": [ + "Format a quarterly financial report into an HTML document with Euro currency and 2 decimal places.", + "Generate a text financial report summary including a totals section with US Dollar currency formatting.", + "Create a financial report formatted with dates shown in MM/DD/YYYY style and omit the summary section." + ] + }, + "tags": [ + "finance", + "report", + "formatting", + "financial-report", + "presentation", + "data-formatting" + ], + "examples": [ + { + "inputJson": "{\"reportData\":{\"title\":\"Q1 2024 Financial Report\",\"date\":\"2024-03-31\",\"sections\":[{\"heading\":\"Revenue\",\"items\":[{\"label\":\"Product Sales\",\"amount\":125000.5},{\"label\":\"Service Income\",\"amount\":45000}]},{\"heading\":\"Expenses\",\"items\":[{\"label\":\"Salaries\",\"amount\":70000},{\"label\":\"Office Rent\",\"amount\":10000}]}]},\"currencySymbol\":\"€\",\"decimalPlaces\":2,\"dateFormat\":\"DD/MM/YYYY\",\"includeSummary\":true,\"outputFormat\":\"html\"}", + "description": "Format a quarterly financial report into HTML using Euro currency symbol, two decimal places, and date format DD/MM/YYYY including a summary section." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "finance-tools.buildServer", + "description": "This tool assists in provisioning and configuring a secure financial data processing server. It accepts configuration details such as hardware specs, software stack, security settings, and compliance options, then simulates the build process and outputs a detailed server setup plan including estimated costs, security configurations, and deployment steps.", + "category": "finance-tools", + "parameters": [ + { + "name": "serverName", + "type": "string", + "description": "The desired name or identifier for the financial server.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate for the server, influencing processing capacity.", + "required": true, + "defaultValue": "4" + }, + { + "name": "memoryGB", + "type": "number", + "description": "Amount of RAM in gigabytes to assign to the server for optimal performance.", + "required": true, + "defaultValue": "16" + }, + { + "name": "storageGB", + "type": "number", + "description": "Disk storage size in gigabytes for financial data and applications.", + "required": true, + "defaultValue": "500" + }, + { + "name": "os", + "type": "string", + "description": "Operating system to install on the server (e.g., Linux, Windows Server).", + "required": true, + "defaultValue": "Linux" + }, + { + "name": "softwareStack", + "type": "array", + "description": "List of software components and financial tools to install (e.g., database, analytics).", + "required": false, + "defaultValue": "[\"PostgreSQL\",\"Python\",\"FinanceAnalytics\"]" + }, + { + "name": "enableFirewall", + "type": "boolean", + "description": "Whether to configure firewall settings to secure the server by default.", + "required": false, + "defaultValue": "true" + }, + { + "name": "backupPlan", + "type": "string", + "description": "Type of backup strategy for financial data (e.g., daily, weekly, none).", + "required": false, + "defaultValue": "daily" + }, + { + "name": "complianceStandards", + "type": "array", + "description": "Compliance standards the server must meet (e.g., PCI-DSS, GDPR).", + "required": false, + "defaultValue": "[\"PCI-DSS\"]" + } + ], + "returns": { + "type": "object", + "description": "An object detailing the server configuration summary, estimated build cost, security setup, and step-by-step deployment instructions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to plan or simulate the building of a specialized financial server infrastructure. It helps in designing the hardware and software environment, ensuring compliance with financial regulations, and producing detailed deployment plans without deploying real resources initially. Useful for budgeting, compliance checks, and architectural design in financial IT projects.", + "limitations": "This tool does not perform actual server provisioning or deployment. It cannot handle real-time infrastructure changes or manage cloud resources directly. It simulates and outputs plans and recommendations only.", + "examples": [ + "Build a financial server named 'FinProd1' with 8 CPU cores, 32GB RAM, Linux OS, and PCI-DSS compliance.", + "Set up a backup plan with weekly backups on a server with Windows Server OS and SQL Server installed.", + "Create a secure financial analytics server with firewall enabled and software stack including PostgreSQL and Python." + ] + }, + "tags": [ + "finance", + "server", + "infrastructure", + "configuration", + "planning", + "compliance", + "security" + ], + "examples": [ + { + "inputJson": "{\"serverName\":\"FinProd1\",\"cpuCores\":8,\"memoryGB\":32,\"storageGB\":1000,\"os\":\"Linux\",\"softwareStack\":[\"PostgreSQL\",\"Python\",\"FinanceAnalytics\"],\"enableFirewall\":true,\"backupPlan\":\"daily\",\"complianceStandards\":[\"PCI-DSS\"]}", + "description": "Configure a high-performance financial server for compliance and analytics." + }, + { + "inputJson": "{\"serverName\":\"BackupServer\",\"cpuCores\":4,\"memoryGB\":16,\"storageGB\":500,\"os\":\"Windows Server\",\"softwareStack\":[\"SQL Server\"],\"enableFirewall\":false,\"backupPlan\":\"weekly\",\"complianceStandards\":[]}", + "description": "Setup a Windows-based financial server optimized for weekly backups." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "finance-tools.buildDatabase", + "description": "This tool creates a structured financial database schema based on user-defined parameters including database type, tables, and indexing options. It processes the schema design inputs and outputs ready-to-deploy SQL DDL statements or a JSON schema representation, facilitating integrated financial data management.", + "category": "finance-tools", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Specifies the type of database to build the schema for, e.g., 'PostgreSQL', 'MySQL', 'SQLite'.", + "required": true, + "defaultValue": "" + }, + { + "name": "tables", + "type": "array", + "description": "An array of table definitions including table name, columns (with types and constraints), and primary keys.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeIndexes", + "type": "boolean", + "description": "Indicates whether to automatically generate indexes on foreign keys and frequently queried columns.", + "required": false, + "defaultValue": "true" + }, + { + "name": "schemaName", + "type": "string", + "description": "An optional namespace or schema name for organizing tables within the database.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated output schema: either 'SQL' to produce DDL statements or 'JSON' for a structured schema object.", + "required": false, + "defaultValue": "SQL" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated database schema in the specified format, including SQL DDL statements or JSON schema, ready for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly define and generate financial database schemas that include tables for transactions, accounts, budgets, and reports. Ideal for automating setup of financial data infrastructure in various popular RDBMS systems without manually writing extensive database creation code.", + "limitations": "Does not support NoSQL databases or complex stored procedures/triggers. Assumes user provides correct table structures and types; does not validate business logic or financial rules.", + "examples": [ + "Generate PostgreSQL schema for financial tables including charts of accounts and transaction records with indexing enabled.", + "Create a JSON schema for a SQLite financial database with tables for invoices and payments without adding indexes.", + "Build MySQL database schema for budgeting app with custom schema name 'financeApp' and output as SQL DDL statements." + ] + }, + "tags": [ + "finance", + "database", + "schema", + "SQL", + "financial-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"tables\":[{\"tableName\":\"accounts\",\"columns\":[{\"name\":\"account_id\",\"type\":\"SERIAL\",\"constraints\":[\"PRIMARY KEY\"]},{\"name\":\"account_name\",\"type\":\"VARCHAR(255)\",\"constraints\":[\"NOT NULL\"]},{\"name\":\"balance\",\"type\":\"DECIMAL(15,2)\"}]},{\"tableName\":\"transactions\",\"columns\":[{\"name\":\"transaction_id\",\"type\":\"SERIAL\",\"constraints\":[\"PRIMARY KEY\"]},{\"name\":\"account_id\",\"type\":\"INT\",\"constraints\":[\"NOT NULL\"]},{\"name\":\"amount\",\"type\":\"DECIMAL(15,2)\",\"constraints\":[\"NOT NULL\"]},{\"name\":\"transaction_date\",\"type\":\"DATE\"}]}],\"includeIndexes\":true,\"outputFormat\":\"SQL\"}", + "description": "Generate a PostgreSQL schema for accounts and transactions tables with indexes enabled, outputting SQL DDL." + }, + { + "inputJson": "{\"databaseType\":\"SQLite\",\"tables\":[{\"tableName\":\"invoices\",\"columns\":[{\"name\":\"invoice_id\",\"type\":\"INTEGER\",\"constraints\":[\"PRIMARY KEY AUTOINCREMENT\"]},{\"name\":\"client_name\",\"type\":\"TEXT\"},{\"name\":\"amount_due\",\"type\":\"REAL\"}]}],\"includeIndexes\":false,\"outputFormat\":\"JSON\"}", + "description": "Generate a SQLite schema for invoices table without indexes, output JSON schema." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "finance-tools.buildTest", + "description": "Creates financial unit tests to validate calculations, formulas, and logic for accounting or budgeting code. Accepts financial code snippets or calculation descriptions, generates test cases with input values and expected outputs, and returns structured test scripts in JavaScript or Python format for automated testing frameworks.", + "category": "finance-tools", + "parameters": [ + { + "name": "codeSnippet", + "type": "string", + "description": "Financial calculation code or formula to build tests for.", + "required": true, + "defaultValue": "" + }, + { + "name": "testFramework", + "type": "string", + "description": "Target testing framework (e.g., Jest, Mocha, PyTest).", + "required": false, + "defaultValue": "Jest" + }, + { + "name": "testCases", + "type": "array", + "description": "Array of input-output objects defining test inputs and expected results.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the code snippet (e.g., JavaScript, Python).", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "includeEdgeCases", + "type": "boolean", + "description": "Whether to automatically generate edge case tests.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing generated test code as a string usable in the specified language and test framework." + }, + "aiAgent": { + "useCase": "Use when needing to verify financial calculations in accounting, budgeting, or financial reporting software. Helps automate generation of unit tests for formulas and logic ensuring correctness and preventing regressions.", + "limitations": "Cannot interpret undocumented or highly complex business domain logic. Generated tests rely on provided input-output pairs or simple code analysis; may require manual refinement.", + "examples": [ + "Create unit tests for a loan interest calculation function.", + "Generate PyTest tests for a budget allocation formula with sample inputs.", + "Build automated tests including edge cases for VAT calculation code snippet." + ] + }, + "tags": [ + "finance", + "testing", + "automation", + "unit-tests", + "code-generation", + "javascript", + "python" + ], + "examples": [ + { + "inputJson": "{\"codeSnippet\":\"function calculateInterest(principal, rate, time) { return principal * rate * time / 100; }\",\"testFramework\":\"Jest\",\"testCases\":[{\"inputs\":{\"principal\":1000,\"rate\":5,\"time\":2},\"expected\":100}],\"language\":\"JavaScript\",\"includeEdgeCases\":true}", + "description": "Generate Jest unit tests validating a simple interest calculation function with sample inputs and edge cases." + }, + { + "inputJson": "{\"codeSnippet\":\"def calculate_vat(price, vat_rate):\\n return price * vat_rate / 100\",\"testFramework\":\"PyTest\",\"language\":\"Python\",\"includeEdgeCases\":false}", + "description": "Create PyTest tests for a Python VAT calculation function without automatic edge cases." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "finance-tools.generateSummary", + "description": "Generates a comprehensive financial summary report from raw transactional data or accounting records. Accepts transactions as input along with optional parameters such as date range, grouping criteria, and summary type. Processes data to produce aggregated outputs like totals, averages, and categorized financial insights in a structured report format.", + "category": "finance-tools", + "parameters": [ + { + "name": "transactions", + "type": "array", + "description": "An array of financial transaction objects each containing amount, date, category, and description fields to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "summaryType", + "type": "string", + "description": "Type of summary to generate, e.g., 'monthly', 'quarterly', 'yearly', or 'custom'.", + "required": true, + "defaultValue": "monthly" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601 format) for filtering transactions. Required if summaryType is 'custom'.", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601 format) for filtering transactions. Required if summaryType is 'custom'.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupByCategory", + "type": "boolean", + "description": "Whether to group and aggregate the summary totals by transaction categories.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "If true, includes basic charts (e.g., pie chart of category spending) in the summary output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured summary report object containing aggregated financial metrics such as total income, total expenses, net balance, breakdowns by category if requested, and optionally visual data representations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate detailed financial summaries from raw transaction data to analyze performance over defined periods or categories. Ideal for budgeting, accounting, or financial review tasks requiring concise aggregated insights.", + "limitations": "This tool does not perform advanced forecasting, anomaly detection, or audit functions. It requires properly formatted transaction input and does not handle multi-currency conversions automatically.", + "examples": [ + "Generate a monthly financial summary grouped by category for the past 3 months.", + "Create a custom summary report between 2023-01-01 and 2023-03-31 including charts.", + "Produce a yearly summary without category grouping to see overall financial performance." + ] + }, + "tags": [ + "finance", + "summary", + "reporting", + "aggregation", + "transactions", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"transactions\":[{\"amount\":1000,\"date\":\"2023-05-01\",\"category\":\"Salary\",\"description\":\"May Salary\"},{\"amount\":-200,\"date\":\"2023-05-05\",\"category\":\"Groceries\",\"description\":\"Supermarket shopping\"},{\"amount\":-50,\"date\":\"2023-05-07\",\"category\":\"Transport\",\"description\":\"Bus pass\"}],\"summaryType\":\"monthly\",\"groupByCategory\":true,\"includeCharts\":true}", + "description": "Generate a monthly summary for May 2023 grouped by category including charts." + }, + { + "inputJson": "{\"transactions\":[{\"amount\":1500,\"date\":\"2023-01-15\",\"category\":\"Freelance\",\"description\":\"Project payment\"},{\"amount\":-300,\"date\":\"2023-02-10\",\"category\":\"Rent\",\"description\":\"February rent\"}],\"summaryType\":\"custom\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-02-28\",\"groupByCategory\":false}", + "description": "Create a custom financial summary covering January and February 2023 without category grouping." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "finance-tools.generateEvent", + "description": "Generates a financial analytics event record based on provided transaction data and contextual parameters. Accepts inputs such as transaction type, amount, currency, timestamp, and optional metadata, then constructs a structured event object used for downstream financial analytics and reporting systems.", + "category": "finance-tools", + "parameters": [ + { + "name": "transactionType", + "type": "string", + "description": "Type of the financial transaction (e.g., payment, refund, chargeback).", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "Monetary value associated with the event, in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "ISO 4217 currency code for the transaction amount (e.g., USD, EUR).", + "required": true, + "defaultValue": "USD" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp of when the event occurred.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional key-value pairs providing context such as user ID, location, payment method.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "eventCategory", + "type": "string", + "description": "Category grouping the event for analytics purposes (e.g., revenue, cost).", + "required": false, + "defaultValue": "transaction" + } + ], + "returns": { + "type": "object", + "description": "A structured financial event object containing the enriched and validated input fields with standardized formatting suitable for ingestion by analytics platforms." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create standardized financial event records from raw transaction data to enable consistent analytics, monitoring, or reporting within financial software systems. The agent should provide essential transaction details and optional metadata to generate enriched event objects.", + "limitations": "This tool does not perform validation beyond basic input formatting, currency conversion, or complex fraud detection. It does not store events or handle batch processing.", + "examples": [ + "Create a payment event of $150 USD for a user purchase with metadata including user ID and location.", + "Generate a refund event with amount 20 EUR and timestamp for reporting.", + "Produce a chargeback event categorized under 'disputes' with payment method details." + ] + }, + "tags": [ + "finance", + "analytics", + "event-generation", + "transaction", + "reporting", + "financial-data" + ], + "examples": [ + { + "inputJson": "{\"transactionType\":\"payment\",\"amount\":150.00,\"currency\":\"USD\",\"timestamp\":\"2024-06-01T14:30:00Z\",\"metadata\":{\"userId\":\"user123\",\"location\":\"NY\"},\"eventCategory\":\"revenue\"}", + "description": "Payment event recording a user purchase with metadata for user and location." + }, + { + "inputJson": "{\"transactionType\":\"refund\",\"amount\":20.00,\"currency\":\"EUR\",\"timestamp\":\"2024-05-28T09:15:00Z\"}", + "description": "Refund event with amount and timestamp for analytics reporting." + }, + { + "inputJson": "{\"transactionType\":\"chargeback\",\"amount\":50.00,\"currency\":\"USD\",\"timestamp\":\"2024-06-02T12:00:00Z\",\"metadata\":{\"paymentMethod\":\"credit_card\"},\"eventCategory\":\"disputes\"}", + "description": "Chargeback event categorized as 'disputes' with extra payment method metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "finance-tools.generateCSV", + "description": "Generates a CSV file string representing financial data, such as transactions or account summaries, from structured input objects. Accepts an array of financial records and optional configuration like custom columns, delimiter, and whether to include headers. Outputs a CSV-formatted string ready for download or storage.", + "category": "finance-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of objects representing financial records, each object containing key-value pairs for columns and values.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Optional array of strings specifying the order and subset of object keys to include as CSV columns.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to separate CSV values, typically comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include a header row with column names at the top of the CSV.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteValues", + "type": "boolean", + "description": "Whether to enclose all CSV values in double quotes, useful for values containing delimiters or special characters.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated CSV data as a single string under the 'csvString' property." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert structured financial data arrays into CSV format for export, reporting, or integration with accounting software that accepts CSV files. It helps transform JSON-like financial datasets into a universally readable CSV string with customizable options.", + "limitations": "Does not validate financial data integrity, perform calculations, or format dates; relies on input data being correctly structured. Not designed to generate very large CSV files efficiently (e.g., millions of records).", + "examples": [ + "Generate a CSV string from an array of transaction objects to download as financial report.", + "Create CSV export of filtered account summary data with custom columns.", + "Convert daily expenses JSON array into a CSV file with semicolon delimiters." + ] + }, + "tags": [ + "finance", + "csv", + "export", + "data-format", + "financial-reporting", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"date\":\"2024-04-01\",\"description\":\"Office Supplies\",\"amount\":150.0,\"category\":\"Office\"},{\"date\":\"2024-04-02\",\"description\":\"Client Lunch\",\"amount\":75.5,\"category\":\"Meals\"}],\"columns\":[\"date\",\"description\",\"amount\"],\"delimiter\":\",\",\"includeHeaders\":true,\"quoteValues\":true}", + "description": "Generate CSV with date, description, and amount columns, including headers, using commas and quoted values." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2024-05-10\",\"vendor\":\"Utility Company\",\"amount\":120,\"paid\":true},{\"date\":\"2024-05-11\",\"vendor\":\"Internet Provider\",\"amount\":60,\"paid\":false}],\"columns\":[],\"delimiter\":\";\",\"includeHeaders\":true,\"quoteValues\":false}", + "description": "Generate CSV with all keys from financial records, using semicolon delimiter and no quotes around values." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "finance-tools.createOrder", + "description": "Creates a new financial purchase order based on customer, product, quantity, pricing, and shipping details. Accepts structured input with order metadata and line items, validates required fields, calculates totals, applies discounts or taxes if specified, and returns a complete order confirmation with order ID and summarized data.", + "category": "finance-tools", + "parameters": [ + { + "name": "customerId", + "type": "string", + "description": "Unique identifier for the customer placing the order", + "required": true, + "defaultValue": "" + }, + { + "name": "orderDate", + "type": "string", + "description": "Date when the order was created, in ISO 8601 format (e.g., 2024-04-27)", + "required": true, + "defaultValue": "" + }, + { + "name": "lineItems", + "type": "array", + "description": "List of products included in the order; each item includes productId, quantity, and unitPrice", + "required": true, + "defaultValue": "" + }, + { + "name": "shippingAddress", + "type": "object", + "description": "Shipping address details including street, city, state, postalCode, and country", + "required": true, + "defaultValue": "" + }, + { + "name": "billingAddress", + "type": "object", + "description": "Billing address details, if different from shipping address", + "required": false, + "defaultValue": "" + }, + { + "name": "discountCode", + "type": "string", + "description": "Optional discount code to apply promotional discounts", + "required": false, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate percentage to apply to the order subtotal (e.g., 7.5 for 7.5%)", + "required": false, + "defaultValue": "0" + }, + { + "name": "notes", + "type": "string", + "description": "Additional notes or instructions for the order", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the orderId, order summary including calculated subtotal, tax, discount, total amount, and the original input data for reference." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate and confirm a complete purchase order record from given customer and product inputs, ensuring data validation, accurate calculations for totals including tax and discounts, and producing a formalized order record for financial or inventory processing.", + "limitations": "This tool does not handle payment processing or inventory availability checks. It assumes valid input references (customer IDs, product IDs) exist in external systems.", + "examples": [ + "Create a purchase order for customer 123 with 3 units of product A priced at $15 each, include shipping address and a 5% tax.", + "Generate an order for customer 789 with two different products, apply a discount code SAVE10, and provide billing address if different from shipping.", + "Produce a new order dated today for customer 456 with one product, no discount, and add special instructions in notes." + ] + }, + "tags": [ + "finance", + "order", + "create", + "purchase", + "billing", + "discount", + "tax", + "shipping" + ], + "examples": [ + { + "inputJson": "{\"customerId\":\"CUST123\",\"orderDate\":\"2024-04-27\",\"lineItems\":[{\"productId\":\"PROD01\",\"quantity\":3,\"unitPrice\":15.00}],\"shippingAddress\":{\"street\":\"123 Elm St\",\"city\":\"Springfield\",\"state\":\"IL\",\"postalCode\":\"62704\",\"country\":\"USA\"},\"taxRate\":5.0}", + "description": "Create an order for customer CUST123 purchasing 3 units of PROD01 at $15 each with 5% tax applied." + }, + { + "inputJson": "{\"customerId\":\"CUST789\",\"orderDate\":\"2024-04-27\",\"lineItems\":[{\"productId\":\"PROD02\",\"quantity\":1,\"unitPrice\":100.00},{\"productId\":\"PROD03\",\"quantity\":2,\"unitPrice\":50.00}],\"shippingAddress\":{\"street\":\"456 Oak Ave\",\"city\":\"Seattle\",\"state\":\"WA\",\"postalCode\":\"98101\",\"country\":\"USA\"},\"billingAddress\":{\"street\":\"789 Pine Rd\",\"city\":\"Seattle\",\"state\":\"WA\",\"postalCode\":\"98102\",\"country\":\"USA\"},\"discountCode\":\"SAVE10\",\"taxRate\":8.25}", + "description": "Generate an order with two products, billing address differing from shipping, applying discount code SAVE10 and 8.25% tax." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "finance-tools.createKey", + "description": "Generates a secure cryptographic key for financial transactions or data encryption. Accepts parameters defining key type, length, and usage constraints, then outputs the key material in a secure encoded format along with metadata for safe storage and usage within financial systems.", + "category": "finance-tools", + "parameters": [ + { + "name": "keyType", + "type": "string", + "description": "Type of cryptographic key to generate, such as 'RSA', 'AES', or 'ECDSA'.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyLength", + "type": "number", + "description": "Length in bits of the key to generate, e.g., 256 for AES or 2048 for RSA. Must be compatible with keyType.", + "required": true, + "defaultValue": "" + }, + { + "name": "usage", + "type": "array", + "description": "Intended usage scenarios for the key, e.g., ['encryption', 'signing'], to set usage policies metadata.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "exportable", + "type": "boolean", + "description": "Flag indicating whether the generated key material can be exported or if it must remain protected in hardware or secure storage.", + "required": false, + "defaultValue": "true" + }, + { + "name": "passphrase", + "type": "string", + "description": "Optional passphrase to protect the key material when exporting or storing, enabling encrypted key extraction.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated key encoded in base64 or hex, key metadata including type, length, usage, exportability, and optional encrypted private key if passphrase provided." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create cryptographic keys for securing financial data or transactions, such as generating keys for encrypting sensitive records, signing digital documents, or securing communication channels in financial applications.", + "limitations": "This tool does not manage key storage lifecycle or integrate with hardware security modules directly; it only generates keys and returns them securely encoded.", + "examples": [ + "Generate a 256-bit AES key for encrypting financial transaction data.", + "Create an RSA 2048-bit key pair for signing digital contracts.", + "Produce an ECDSA key for secure transaction verification with export disabled." + ] + }, + "tags": [ + "cryptography", + "finance", + "key-management", + "security", + "encryption", + "digital-signature" + ], + "examples": [ + { + "inputJson": "{\"keyType\":\"AES\",\"keyLength\":256,\"usage\":[\"encryption\"],\"exportable\":true}", + "description": "Generate an exportable 256-bit AES key for encryption use case." + }, + { + "inputJson": "{\"keyType\":\"RSA\",\"keyLength\":2048,\"usage\":[\"signing\"],\"exportable\":false,\"passphrase\":\"strongpass123\"}", + "description": "Create a non-exportable RSA 2048-bit key pair for signing operations with passphrase protection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "finance-tools.createInvoice", + "description": "Generates a detailed invoice document based on provided client, service, and payment details. Accepts inputs including client information, list of items or services with quantities and prices, tax and discount rates, and payment terms. Processes the data to calculate totals, taxes, and discounts, outputting a structured invoice ready for review or dispatch in JSON format.", + "category": "finance-tools", + "parameters": [ + { + "name": "clientName", + "type": "string", + "description": "Full name or company name of the client to invoice.", + "required": true, + "defaultValue": "" + }, + { + "name": "clientAddress", + "type": "string", + "description": "Mailing address of the client for the invoice.", + "required": false, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "Date of invoice creation in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of items or services, each with description, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a percentage (e.g., 10 for 10%).", + "required": false, + "defaultValue": "0" + }, + { + "name": "discountRate", + "type": "number", + "description": "Discount rate as a percentage applied on subtotal before tax.", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., USD, EUR) for the invoice amounts.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Text describing payment terms (e.g., 'Net 30 days').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object representing the complete invoice, including client details, itemized charges, tax and discount calculations, totals, currency, and payment terms." + }, + "aiAgent": { + "useCase": "Use this tool to generate precise and professional invoices from structured billing data. Ideal for automating billing workflows, preparing invoices for client billing, or integrating with accounting software. It ensures consistent invoice formatting and accurate financial calculations including taxes and discounts.", + "limitations": "Does not generate visual PDF or printable layout formats. Does not validate legal compliance of invoice format or tax rules specific to jurisdictions. Does not send invoices via email or other channels.", + "examples": [ + "Create an invoice for client ACME Corp dated 2024-06-01 with two products, applying a 5% tax and no discount.", + "Generate an invoice for freelance consulting services provided to John Doe with payment terms net 15 days.", + "Prepare an invoice including itemized charges, 10% discount, and currency in EUR." + ] + }, + "tags": [ + "finance", + "invoice", + "billing", + "accounting", + "document-generation", + "tax-calculation" + ], + "examples": [ + { + "inputJson": "{\"clientName\":\"ACME Corporation\",\"clientAddress\":\"123 Business Rd, Commerce City\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-06-15\",\"items\":[{\"description\":\"Consulting Services\",\"quantity\":10,\"unitPrice\":150},{\"description\":\"Travel Reimbursement\",\"quantity\":1,\"unitPrice\":300}],\"taxRate\":5,\"discountRate\":0,\"currency\":\"USD\",\"paymentTerms\":\"Net 15 days\"}", + "description": "Invoice for a client including consulting services and travel reimbursement with 5% tax applied and payment due in 15 days." + }, + { + "inputJson": "{\"clientName\":\"John Doe\",\"invoiceDate\":\"2024-06-10\",\"dueDate\":\"2024-06-25\",\"items\":[{\"description\":\"Web Design Project\",\"quantity\":1,\"unitPrice\":2000}],\"taxRate\":0,\"discountRate\":10,\"currency\":\"USD\",\"paymentTerms\":\"Net 15 days\"}", + "description": "Single-item invoice for web design with a 10% discount, no tax, and payment terms of 15 days." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Invoice", + "context": null + } + }, + { + "name": "finance-tools.createAlert", + "description": "Creates a financial alert based on user-defined criteria such as transaction amount thresholds, suspicious activity patterns, or account balance limits. Accepts parameters to specify alert conditions and notification preferences, then generates an alert configuration that can be activated to monitor financial activities and notify users accordingly.", + "category": "finance-tools", + "parameters": [ + { + "name": "alertName", + "type": "string", + "description": "A unique name identifier for the alert to distinguish it from others.", + "required": true, + "defaultValue": "" + }, + { + "name": "criteria", + "type": "object", + "description": "Defines conditions triggering the alert, such as minimum or maximum transaction amounts, specific transaction types, or unusual activity flags.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationMethods", + "type": "array", + "description": "Preferred channels to receive alert notifications, e.g., email, SMS, or push notification.", + "required": true, + "defaultValue": "[\"email\"]" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Whether the alert is active immediately after creation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Priority level of the alert such as low, medium, or high to categorize its urgency.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed explanation of the alert purpose or conditions.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created alert including its ID, name, criteria, notification settings, status, and metadata." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically set up customized financial alerts for monitoring transactions or account activities that could signify risk, fraud, or financial thresholds being crossed. It enables automation of vigilance and faster response to critical financial events.", + "limitations": "This tool does not perform the actual monitoring or notification delivery itself; it only generates alert configurations. Integration with monitoring engines and notification services is required to operationalize alerts.", + "examples": [ + "Create an alert for transactions exceeding $10,000 with SMS notification.", + "Set up a low balance alert sending email notification when account balance drops below $500.", + "Configure a fraud suspicion alert that triggers on specific flagged transaction types with high severity." + ] + }, + "tags": [ + "finance", + "alerts", + "security", + "monitoring", + "notifications", + "fraud-detection" + ], + "examples": [ + { + "inputJson": "{\"alertName\":\"HighValueTransaction\",\"criteria\":{\"minTransactionAmount\":10000},\"notificationMethods\":[\"sms\"],\"enabled\":true,\"severityLevel\":\"high\",\"description\":\"Alert for transactions exceeding ten thousand dollars.\"}", + "description": "Create an alert for transactions greater than $10,000 with SMS notifications enabled." + }, + { + "inputJson": "{\"alertName\":\"LowBalance\",\"criteria\":{\"maxAccountBalance\":500},\"notificationMethods\":[\"email\"],\"enabled\":true,\"severityLevel\":\"medium\",\"description\":\"Notify when account balance falls below $500.\"}", + "description": "Set up a medium severity alert for low account balance with email notification." + }, + { + "inputJson": "{\"alertName\":\"FraudSuspicion\",\"criteria\":{\"transactionTypes\":[\"suspicious\"],\"minTransactionAmount\":1000},\"notificationMethods\":[\"email\",\"push\"],\"enabled\":false,\"severityLevel\":\"high\",\"description\":\"Alert for suspicious transactions over $1000, initially disabled.\"}", + "description": "Configure a high severity fraud suspicion alert on flagged suspicious transactions, initially disabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "finance-tools.createCSV", + "description": "Generates a CSV file content string from provided financial data objects, with optional filtering of fields and custom delimiters. Accepts an array of financial records and outputs a correctly formatted CSV string suitable for reports, exports, or data processing.", + "category": "finance-tools", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of financial record objects to be converted into CSV rows.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "List of object keys to include as columns in the CSV, in order. If omitted, all keys from the first record are included.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Delimiter character to separate values, default is comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include the CSV header row with column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character to use for quoting fields containing delimiters or special characters, default is double quote (\").", + "required": false, + "defaultValue": "\"" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated CSV content string under 'csvContent' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured financial data into CSV format for purposes such as export, report generation, or integration with accounting software. Ideal when input is a structured array of records and output must be CSV text.", + "limitations": "Does not write CSV data to files or streams, only returns CSV string. It does not validate financial data correctness beyond basic CSV formatting. Complex nested objects are not flattened automatically.", + "examples": [ + "Create CSV with all fields and default comma delimiter", + "Create CSV for only selected fields with tab delimiter", + "Generate CSV without header row for export integration" + ] + }, + "tags": [ + "csv", + "finance", + "data-export", + "reporting", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"date\":\"2024-01-01\",\"category\":\"Income\",\"amount\":1000},{\"date\":\"2024-01-02\",\"category\":\"Expense\",\"amount\":-200}],\"includeHeaders\":true}", + "description": "Generate CSV of full financial records with default settings including headers." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2024-01-01\",\"category\":\"Income\",\"amount\":1000},{\"date\":\"2024-01-02\",\"category\":\"Expense\",\"amount\":-200}],\"fields\":[\"date\",\"amount\"],\"delimiter\":\"\\t\",\"includeHeaders\":true}", + "description": "Generate CSV including only date and amount fields, using tab delimiter." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2024-01-01\",\"category\":\"Income\",\"amount\":1000}],\"includeHeaders\":false}", + "description": "Generate CSV with no header row for a single record." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "finance-tools.createBranch", + "description": "Creates a new financial branch entity within an organization's accounting system. Accepts parameters such as branch name, location, manager, and initial budget allocations. Processes input by validating details, generating a unique branch ID, and setting up initial financial records. Outputs the created branch details including branch ID, name, and assigned manager.", + "category": "finance-tools", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "The official name of the new financial branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "location", + "type": "string", + "description": "Physical or geographical location of the branch office.", + "required": true, + "defaultValue": "" + }, + { + "name": "managerName", + "type": "string", + "description": "Name of the person responsible for managing the branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialBudget", + "type": "number", + "description": "Initial budget allocated to the branch for operational activities, in the organization's currency.", + "required": false, + "defaultValue": "0" + }, + { + "name": "parentCompanyId", + "type": "string", + "description": "Identifier of the parent company to which this branch belongs.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created branch's details, including unique branchId, branchName, location, managerName, initialBudget, and parentCompanyId." + }, + "aiAgent": { + "useCase": "This tool should be used when a financial management agent needs to programmatically add a new branch office or division within an organization’s financial system, ensuring proper linkage and initial funding allocation. It is essential for scaling business units or adding locations in accounting software.", + "limitations": "This tool does not manage ongoing financial transactions, accounting entries, or branch closure. It only creates a branch entity and sets initial parameters.", + "examples": [ + "Create a new branch called 'Midwest Operations' located in Chicago with John Doe as manager and an initial budget of 500,000 USD for the parent company with ID 'COMP123'.", + "Add a branch for 'European Sales' located in Berlin without specifying an initial budget, under parent company 'COMP456'." + ] + }, + "tags": [ + "finance", + "branch management", + "organizational structure", + "accounting", + "financial setup" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"Midwest Operations\",\"location\":\"Chicago, IL\",\"managerName\":\"John Doe\",\"initialBudget\":500000,\"parentCompanyId\":\"COMP123\"}", + "description": "Creates 'Midwest Operations' branch in Chicago with John Doe as manager and a 500,000 initial budget under company COMP123." + }, + { + "inputJson": "{\"branchName\":\"European Sales\",\"location\":\"Berlin, Germany\",\"managerName\":\"Anna Schmidt\",\"initialBudget\":0,\"parentCompanyId\":\"COMP456\"}", + "description": "Adds a 'European Sales' branch in Berlin with Anna Schmidt, no initial budget, linked to company COMP456." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Branch", + "context": null + } + }, + { + "name": "finance-tools.createEndpoint", + "description": "Creates a configurable REST API endpoint for financial management applications that processes incoming requests with specified HTTP methods, validates and transforms input data, executes financial operations or queries, and returns structured JSON responses. Accepts endpoint path, HTTP methods, input schema, and business logic definitions to generate backend API handlers.", + "category": "finance-tools", + "parameters": [ + { + "name": "endpointPath", + "type": "string", + "description": "The URL path for the endpoint (e.g., /api/invoice/create).", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethods", + "type": "array", + "description": "List of HTTP methods the endpoint supports (e.g., [\"GET\",\"POST\"]).", + "required": true, + "defaultValue": "[\"POST\"]" + }, + { + "name": "inputSchema", + "type": "object", + "description": "JSON schema defining required and optional input parameters for request validation.", + "required": true, + "defaultValue": "" + }, + { + "name": "businessLogic", + "type": "string", + "description": "Code snippet or declarative logic defining the financial operations the endpoint performs (e.g., create invoice, query account balance).", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Indicates if the endpoint requires authentication/authorization.", + "required": false, + "defaultValue": "true" + }, + { + "name": "responseSchema", + "type": "object", + "description": "JSON schema defining structure of the endpoint response data.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the generated API endpoint configuration including path, methods, validation rules, and executable business logic." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate backend REST API endpoints for financial applications that handle specific financial operations, ensuring input validation and consistent output structures without manual coding of each endpoint. Ideal for dynamic API generation, automated financial service provision, or prototyping financial microservices.", + "limitations": "This tool does not implement the full backend infrastructure, security layering beyond simple authentication flags, or database connectivity. Complex business logic requiring external integration or asynchronous workflows must be handled separately.", + "examples": [ + "Create an endpoint for submitting new invoices via POST at /api/invoice/create with validated inputs.", + "Generate a GET endpoint at /api/account/balance that returns the current user's account balance after authentication.", + "Build a multi-method endpoint supporting GET and POST to allow both querying and updating financial records with defined input and response schemas." + ] + }, + "tags": [ + "finance", + "API", + "endpoint", + "automation", + "backend", + "financial-management", + "REST" + ], + "examples": [ + { + "inputJson": "{\"endpointPath\":\"/api/invoice/create\",\"httpMethods\":[\"POST\"],\"inputSchema\":{\"type\":\"object\",\"properties\":{\"customerId\":{\"type\":\"string\"},\"amount\":{\"type\":\"number\"},\"dueDate\":{\"type\":\"string\",\"format\":\"date\"}},\"required\":[\"customerId\",\"amount\"]},\"businessLogic\":\"createInvoice(customerId, amount, dueDate)\",\"authenticationRequired\":true,\"responseSchema\":{\"type\":\"object\",\"properties\":{\"invoiceId\":{\"type\":\"string\"},\"status\":{\"type\":\"string\"}},\"required\":[\"invoiceId\",\"status\"]}}", + "description": "Create a POST endpoint /api/invoice/create accepting customerId, amount, and dueDate, that creates a new invoice and returns invoiceId and status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "finance-tools.createConfig", + "description": "Creates a financial management configuration object for budgeting and accounting software. Accepts inputs defining currency, fiscal year start, default tax rates, and enabled modules. Generates a standardized config object for initializing financial applications or workflows.", + "category": "finance-tools", + "parameters": [ + { + "name": "currency", + "type": "string", + "description": "ISO 4217 currency code used in financial calculations (e.g., USD, EUR).", + "required": true, + "defaultValue": "" + }, + { + "name": "fiscalYearStartMonth", + "type": "number", + "description": "Starting month of the fiscal year (1-12).", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultTaxRate", + "type": "number", + "description": "Default tax rate percentage applied to transactions (e.g., 7.5 for 7.5%).", + "required": false, + "defaultValue": "0" + }, + { + "name": "enableBudgetingModule", + "type": "boolean", + "description": "Whether to enable budgeting features in the configuration.", + "required": false, + "defaultValue": "true" + }, + { + "name": "enabledModules", + "type": "array", + "description": "List of enabled financial modules (e.g., ['accountsPayable','reports']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Preferred date format string (e.g., 'YYYY-MM-DD').", + "required": false, + "defaultValue": "YYYY-MM-DD" + } + ], + "returns": { + "type": "object", + "description": "A configuration object containing all specified financial settings formatted for use by financial management systems." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate or initialize a configuration object for financial management software or workflows, setting parameters like currency, fiscal year, tax rate, and enabled modules. It helps ensure consistent financial settings across tools or processes.", + "limitations": "This tool does not validate tax rates for jurisdictions or handle complex tax rules. It only creates a config object, not the financial software itself.", + "examples": [ + "Create a config for a US company with fiscal year starting in October and 8% tax rate.", + "Generate a config enabling budgeting and accounts payable modules with Euro currency.", + "Set a config with fiscal year starting January, default tax 0%, and custom date format." + ] + }, + "tags": [ + "finance", + "configuration", + "budgeting", + "accounting", + "initialization" + ], + "examples": [ + { + "inputJson": "{\"currency\":\"USD\",\"fiscalYearStartMonth\":10,\"defaultTaxRate\":8,\"enableBudgetingModule\":true,\"enabledModules\":[\"budgeting\",\"accountsPayable\"],\"dateFormat\":\"MM/DD/YYYY\"}", + "description": "Create a config for a US company with fiscal year starting in October and 8% tax rate, enabling budgeting and accounts payable modules." + }, + { + "inputJson": "{\"currency\":\"EUR\",\"fiscalYearStartMonth\":1,\"defaultTaxRate\":20,\"enableBudgetingModule\":false,\"enabledModules\":[\"reports\"],\"dateFormat\":\"DD.MM.YYYY\"}", + "description": "Generate a config for a European company with fiscal year starting January, 20% tax, disabled budgeting, enabling reports module." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Config", + "context": null + } + }, + { + "name": "human-resources.analyzeWord", + "description": "Analyzes a given word or term commonly used in human resources contexts to provide insight into its sentiment, relevance, and connotation within recruitment and employee management. Accepts a single word string, processes linguistic and HR-specific sentiment analysis, and outputs interpretive metrics and related HR themes.", + "category": "human-resources", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single HR-related word to analyze for sentiment and contextual relevance.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include a sentiment score analysis of the word (positive, negative, neutral).", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeThemes", + "type": "boolean", + "description": "Whether to provide related HR themes or topics the word is commonly associated with.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the input word for accurate semantic interpretation, default is 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the original word, sentiment score and label (if requested), related HR themes, and a brief explanation of the word's typical usage or connotation in human resources." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand the nuanced sentiment and contextual meaning of specific HR-related words, such as 'engagement' or 'turnover', to better interpret employee feedback, recruitment communications, or job descriptions.", + "limitations": "This tool analyzes only single words, not phrases or sentences. Sentiment and themes are generalized and may not capture all contextual nuances or company-specific jargon.", + "examples": [ + "Analyze the sentiment and themes of the word 'motivation' in an HR context.", + "Check what common HR topics the word 'compliance' relates to.", + "Get sentiment and usage details for the word 'retention' in employee management." + ] + }, + "tags": [ + "human-resources", + "analysis", + "word", + "sentiment", + "recruitment", + "employee-management" + ], + "examples": [ + { + "inputJson": "{\"word\":\"engagement\",\"includeSentiment\":true,\"includeThemes\":true}", + "description": "Analyze the word 'engagement' for sentiment and related HR themes." + }, + { + "inputJson": "{\"word\":\"turnover\",\"includeSentiment\":true,\"includeThemes\":false}", + "description": "Analyze the sentiment of the word 'turnover' without additional theme context." + }, + { + "inputJson": "{\"word\":\"compliance\",\"includeSentiment\":false,\"includeThemes\":true,\"language\":\"en\"}", + "description": "Identify related HR topics associated with the word 'compliance'." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "human-resources.analyzeDataset", + "description": "This tool accepts employee or recruitment datasets in JSON or CSV format and performs comprehensive analysis including statistical summaries, trend identification, and anomaly detection related to hiring, attrition, diversity, and performance metrics. It outputs structured reports with visual data insights and recommendations.", + "category": "human-resources", + "parameters": [ + { + "name": "dataset", + "type": "object", + "description": "The employee or recruitment dataset to analyze, provided as an array of records or parsed JSON objects.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "The format of the dataset, e.g., 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "analysisType", + "type": "array", + "description": "Types of analysis to perform, such as ['attrition', 'diversity', 'performance', 'recruitmentTrends'].", + "required": false, + "defaultValue": "[\"attrition\",\"diversity\",\"performance\"]" + }, + { + "name": "includeVisuals", + "type": "boolean", + "description": "Flag to include charts and graphs in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dateRange", + "type": "object", + "description": "Optional date range filter with 'startDate' and 'endDate' in ISO format to limit data analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output report format, e.g., 'json' or 'pdf'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing statistical summaries, insights based on selected analysis types, and visual data representations if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing an automated deep analysis of HR-related datasets to extract meaningful metrics about workforce composition, recruitment effectiveness, attrition patterns, diversity, and employee performance trends. Ideal for generating actionable insights to support HR decision-making and strategic planning.", + "limitations": "The tool cannot process unstructured data inputs, does not perform predictive modeling beyond trend extrapolation, and requires clean, well-structured datasets for accurate analysis. It does not provide legal or compliance advice based on data.", + "examples": [ + "Analyze employee attrition and diversity trends in a JSON dataset from the last 3 years.", + "Evaluate recruitment funnel efficiency and candidate demographics from a CSV input.", + "Generate a performance summary report with visuals for employees hired in the last year." + ] + }, + "tags": [ + "analysis", + "human-resources", + "employee-data", + "reporting", + "diversity", + "attrition", + "performance", + "recruitment" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"employeeId\":1,\"hireDate\":\"2019-01-15\",\"attrition\":false,\"department\":\"Sales\",\"performanceScore\":8,\"gender\":\"F\"},{\"employeeId\":2,\"hireDate\":\"2020-04-22\",\"attrition\":true,\"department\":\"Engineering\",\"performanceScore\":6,\"gender\":\"M\"}],\"dataFormat\":\"json\",\"analysisType\":[\"attrition\",\"diversity\"],\"includeVisuals\":true,\"dateRange\":{\"startDate\":\"2018-01-01\",\"endDate\":\"2021-12-31\"},\"outputFormat\":\"json\"}", + "description": "Analyze attrition and diversity from a JSON dataset of employee records spanning 2018-2021, including charts in a JSON report." + }, + { + "inputJson": "{\"dataset\":\"employee_data.csv\",\"dataFormat\":\"csv\",\"analysisType\":[\"performance\"],\"includeVisuals\":false,\"outputFormat\":\"json\"}", + "description": "Analyze employee performance scores from a CSV file producing a JSON summary without visuals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dataset", + "context": null + } + }, + { + "name": "human-resources.analyzeAccount", + "description": "Analyzes a business account's HR data by processing employee records, recruitment statistics, and performance metrics over a specified period, producing a comprehensive report detailing workforce composition, turnover rates, recruitment effectiveness, and performance trends.", + "category": "human-resources", + "parameters": [ + { + "name": "accountId", + "type": "string", + "description": "Unique identifier of the business account to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the analysis period in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRecruitmentStats", + "type": "boolean", + "description": "Whether to include recruitment metrics such as number of hires and time-to-fill.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includePerformanceMetrics", + "type": "boolean", + "description": "Whether to include employee performance data and trends.", + "required": false, + "defaultValue": "true" + }, + { + "name": "departmentFilter", + "type": "array", + "description": "Optional list of department names to filter analysis on specific parts of the organization.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A detailed report object including total employee count, turnover rate, recruitment statistics, department breakdowns, and aggregated performance scores." + }, + "aiAgent": { + "useCase": "Use this tool when needing to provide a summarized analysis of a business account's HR data over a certain time frame to inform workforce planning, recruitment strategies, or performance review cycles. Particularly useful for generating insights across departments and tracking trends over time.", + "limitations": "Does not provide real-time data; analysis is limited to the data quality and completeness within the specified time range. Does not forecast future HR needs or predict employee behaviors.", + "examples": [ + "Analyze the HR data of account 'acct123' from 2023-01-01 to 2023-06-30 including recruitment and performance metrics.", + "Generate a department-specific analysis for the marketing and sales departments of account 'acct789' for Q1 2024.", + "Provide a summary report of employee turnover and recruitment effectiveness for account 'acct456' from 2022-07-01 to 2023-07-01, excluding performance metrics." + ] + }, + "tags": [ + "analysis", + "human-resources", + "account", + "recruitment", + "performance", + "report" + ], + "examples": [ + { + "inputJson": "{\"accountId\":\"acct123\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-06-30\",\"includeRecruitmentStats\":true,\"includePerformanceMetrics\":true}", + "description": "Analyze HR data for account 'acct123' from Jan to June 2023 including recruitment and performance." + }, + { + "inputJson": "{\"accountId\":\"acct789\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-03-31\",\"departmentFilter\":[\"Marketing\",\"Sales\"],\"includeRecruitmentStats\":true,\"includePerformanceMetrics\":false}", + "description": "Department-specific HR analysis for Marketing and Sales of account 'acct789' in Q1 2024 excluding performance data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Account", + "context": null + } + }, + { + "name": "human-resources.analyzeMessage", + "description": "Analyzes employee or candidate messages (emails, chat, or feedback) to extract sentiment, detect key topics, and identify communication style. Accepts plain text input and optional metadata, processes natural language understanding techniques, and outputs a structured summary of sentiment scores, topic tags, and communication tone to inform HR decision-making.", + "category": "human-resources", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The full text content of the message to analyze. Required for processing.", + "required": true, + "defaultValue": "" + }, + { + "name": "messageType", + "type": "string", + "description": "Type of message (e.g., 'email', 'chat', 'feedback'). Helps tune analysis. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the message content, for accurate NLP processing. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and return key keywords or phrases from the message. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis result object including sentiment score (numeric), predominant sentiment label, a list of key topics, detected communication style (formal, informal, assertive, passive), and optionally extracted keywords." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to analyze textual communications from employees or candidates to understand sentiment, key concerns or topics, and communication style. Useful in recruitment screening, employee feedback analysis, and improving HR communications.", + "limitations": "It cannot interpret messages with multiple languages mixed in or highly technical jargon without prior domain adaptation. Does not provide deep psychological profiling or guarantee 100% accurate sentiment detection in ambiguous texts.", + "examples": [ + "Analyze the sentiment and main concerns in this candidate's email.", + "Summarize key topics and tone in a recent employee feedback chat message.", + "Detect if the communication style in this email is formal or informal." + ] + }, + "tags": [ + "analysis", + "human-resources", + "sentiment", + "communication", + "NLP", + "employee-feedback", + "candidate-evaluation" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"I appreciate the opportunity but the position doesn't align with my career goals after further reflection.\",\"messageType\":\"email\",\"language\":\"en\",\"includeKeywords\":true}", + "description": "Analyzing a candidate's polite decline email to identify sentiment and key reasons." + }, + { + "inputJson": "{\"messageContent\":\"The new software rollout is causing delays and frustration in our team meetings.\",\"messageType\":\"chat\",\"language\":\"en\",\"includeKeywords\":true}", + "description": "Analyzing team chat feedback about software issues to extract sentiment and key topics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Message", + "context": null + } + }, + { + "name": "human-resources.analyzeJSON", + "description": "This tool accepts JSON-formatted human resources data such as employee records, recruitment applicants, or performance reviews. It analyzes the data to extract key insights like average tenure, skill distribution, candidate demographics, and identifies trends or anomalies. The output is a structured summary report with statistics and analytical highlights in JSON format.", + "category": "human-resources", + "parameters": [ + { + "name": "inputJson", + "type": "string", + "description": "The JSON string containing HR data to analyze, which may include employee profiles, candidate applications, or performance metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "analysisType", + "type": "string", + "description": "Type of analysis to perform such as 'summary', 'trend', or 'anomalyDetection'.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "focusFields", + "type": "array", + "description": "Optional list of fields within input JSON to focus the analysis on (e.g., ['tenure', 'department']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include base64-encoded chart data visualizing key insights in the report.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing analysis results including summary statistics, identified trends, anomalies if any, and optionally charts encoded as base64 strings." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract meaningful insights from raw HR data formatted in JSON, such as summarizing employee demographics, analyzing recruitment applicants, or detecting unusual patterns in performance data. It helps automate understanding large sets of HR-related data without manual processing.", + "limitations": "Cannot perform natural language interpretation of unstructured text fields or integrate data from multiple disconnected sources automatically. Analysis depends on the structure and completeness of input JSON data.", + "examples": [ + "Analyze a JSON list of employee records to summarize average tenure by department.", + "Detect anomalies in monthly recruitment application counts from JSON data.", + "Generate a skill set distribution summary from employee JSON profiles, including charts." + ] + }, + "tags": [ + "analysis", + "human-resources", + "JSON", + "employee-data", + "recruitment", + "performance", + "insights" + ], + "examples": [ + { + "inputJson": "[{\"employeeId\":101,\"department\":\"Sales\",\"tenureMonths\":36,\"skills\":[\"communication\",\"negotiation\"]},{\"employeeId\":102,\"department\":\"Engineering\",\"tenureMonths\":48,\"skills\":[\"java\",\"python\"]}]", + "description": "Analyze employee records JSON to summarize average tenure by department and skill distributions." + }, + { + "inputJson": "[{\"applicationId\":201,\"position\":\"Developer\",\"yearsExperience\":3,\"status\":\"pending\"},{\"applicationId\":202,\"position\":\"Developer\",\"yearsExperience\":5,\"status\":\"rejected\"}]", + "description": "Analyze recruitment applications JSON to find average years of experience of applicants and application status distribution." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "JSON", + "context": null + } + }, + { + "name": "human-resources.downloadFile", + "description": "Downloads a specified file from the human resources system, such as employee documents, recruitment files, or reports. Accepts file identifier and optionally the file type and version. Processes authorization and fetches the latest or specified version of the file, returning the file content and metadata for storage or further processing.", + "category": "human-resources", + "parameters": [ + { + "name": "fileId", + "type": "string", + "description": "Unique identifier of the file to download from the HR system.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "Optional filter specifying the type of file (e.g., 'resume', 'contract', 'policy').", + "required": false, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Specific version of the file to download, if versioning is supported.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata about the file (e.g., creation date, uploader).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing file content as base64 encoded string and metadata if requested, such as file name, size, type, and upload date." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve files related to human resources, such as employee contracts, resumes, policy documents, or recruitment files, from an internal HR management system. It is suitable for automating document retrieval for review, processing, or archival purposes.", + "limitations": "This tool cannot upload or modify files; it only supports downloading existing files by identifier. It also cannot handle authentication itself and requires valid permissions to access requested files.", + "examples": [ + "Download the latest resume file for candidate with ID 'cand123'.", + "Fetch the contract document version 'v2' for employee with file ID 'emp456'.", + "Retrieve the policy document file for HR compliance review." + ] + }, + "tags": [ + "download", + "human-resources", + "file-management", + "document", + "employee-data" + ], + "examples": [ + { + "inputJson": "{\"fileId\":\"emp123_resume\",\"fileType\":\"resume\"}", + "description": "Download the resume file for employee with ID 'emp123'." + }, + { + "inputJson": "{\"fileId\":\"cand789_interview_notes\",\"includeMetadata\":false}", + "description": "Download interview notes file for candidate ID 'cand789' without metadata." + }, + { + "inputJson": "{\"fileId\":\"policy_handbook\",\"version\":\"2023Q2\"}", + "description": "Download specific version '2023Q2' of the HR policy handbook file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "File", + "context": null + } + }, + { + "name": "human-resources.downloadCode", + "description": "Downloads source code files related to human resources recruitment or employee management projects from a specified repository, branch, or path. Accepts repository details and outputs a compressed archive file containing the selected code files for offline review or integration into HR tools.", + "category": "human-resources", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "The URL of the repository hosting the source code to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "branch", + "type": "string", + "description": "The branch name to download code from. Defaults to the main branch if not specified.", + "required": false, + "defaultValue": "main" + }, + { + "name": "path", + "type": "string", + "description": "The path within the repository to the human resources code files or directory.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileTypes", + "type": "array", + "description": "List of file extensions to include in the download (e.g., ['.js', '.py']). If empty, downloads all file types.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSubdirectories", + "type": "boolean", + "description": "Whether to include code files from subdirectories recursively under the specified path.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a URL or binary stream to download the compressed archive file (.zip or .tar.gz) of the requested code files, and metadata such as archive size and file count." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically retrieve specific human resources related code (such as recruitment management scripts or employee database interfaces) from version control repositories for review, deployment, or integration. It is useful for automating code downloads to build or update HR systems without manual repository browsing.", + "limitations": "This tool cannot edit, analyze, or run the code; it only downloads files. It requires valid repository URLs and proper access permissions (e.g., public repos or authorized credentials). It does not handle binary or proprietary package downloads.", + "examples": [ + "Download the latest recruitment automation scripts from the HR project repository's main branch.", + "Retrieve all Python files related to employee analytics located in the /hr-analytics directory of the repo.", + "Get a compressed archive of JavaScript and JSON files under the /src/hr-ui path, including subdirectories." + ] + }, + "tags": [ + "human-resources", + "download", + "code", + "repository", + "automation", + "recruitment", + "employee-management" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/hr-management\",\"branch\":\"develop\",\"path\":\"/scripts/recruitment\",\"fileTypes\":[\".js\",\".py\"],\"includeSubdirectories\":true}", + "description": "Download all JavaScript and Python recruitment script files from the 'develop' branch's recruitment scripts directory, including all subfolders." + }, + { + "inputJson": "{\"repositoryUrl\":\"https://gitlab.com/company/hr-system\",\"path\":\"/src/employee\",\"fileTypes\":[],\"includeSubdirectories\":false}", + "description": "Download all code files from the employee source folder in the default branch, without traversing subdirectories." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Code", + "context": null + } + }, + { + "name": "human-resources.generateDataset", + "description": "This tool generates synthetic employee datasets for human resources purposes based on specified parameters such as number of records, attributes (e.g., age, department, salary), and data distribution constraints. It accepts configuration inputs to produce realistic, anonymized HR datasets useful for testing, training models, and analysis without exposing real employee data.", + "category": "human-resources", + "parameters": [ + { + "name": "numberOfRecords", + "type": "number", + "description": "The total number of employee records to generate in the dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "attributes", + "type": "array", + "description": "An array of employee attribute names to include in the dataset, such as ['age', 'department', 'salary', 'hireDate'].", + "required": true, + "defaultValue": "" + }, + { + "name": "distributionRules", + "type": "object", + "description": "Optional distribution rules to control data generation for attributes, e.g., age range, salary range, categorical department frequencies.", + "required": false, + "defaultValue": "" + }, + { + "name": "includePII", + "type": "boolean", + "description": "Whether to include pseudo personally-identifiable information fields like employee ID, email, or phone number.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output dataset format, e.g., 'JSON', 'CSV'.", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated dataset in the specified format, including metadata about the dataset schema and generation parameters." + }, + "aiAgent": { + "useCase": "Use this tool when needing a large, realistic, and customizable dataset of employee records for testing HR software, performing data analysis experiments, or training machine learning models without using sensitive real employee data. Ideal for scenarios requiring diverse attribute combinations and controlled data distributions.", + "limitations": "This tool cannot generate real employee records or guarantee compliance with legal regulations regarding real personal data since it only produces synthetic data. It may not simulate extremely complex interdependencies between attributes without explicit distribution rules.", + "examples": [ + "Generate a dataset with 1000 employee records including age, department, and salary with salary ranging between 50,000 and 120,000.", + "Create 500 employee records that include hireDate and department with departments distributed unevenly to mimic a real company.", + "Produce a CSV formatted dataset with 200 records including all standard employee attributes without PII for machine learning model training." + ] + }, + "tags": [ + "human-resources", + "dataset", + "synthetic-data", + "employee", + "data-generation", + "testing", + "training-data" + ], + "examples": [ + { + "inputJson": "{\"numberOfRecords\":1000,\"attributes\":[\"age\",\"department\",\"salary\"],\"distributionRules\":{\"age\":{\"min\":22,\"max\":65},\"salary\":{\"min\":50000,\"max\":120000}},\"includePII\":false,\"outputFormat\":\"JSON\"}", + "description": "Generate 1000 employee records with age, department, salary fields, controlling age and salary ranges, excluding PII, in JSON format." + }, + { + "inputJson": "{\"numberOfRecords\":500,\"attributes\":[\"hireDate\",\"department\"],\"distributionRules\":{\"department\":{\"values\":[\"Sales\",\"Engineering\",\"HR\"],\"probabilities\":[0.5,0.3,0.2]}},\"includePII\":false,\"outputFormat\":\"JSON\"}", + "description": "Generate 500 employee records including hireDate and department with custom department distribution, no PII, JSON format." + }, + { + "inputJson": "{\"numberOfRecords\":200,\"attributes\":[\"employeeId\",\"age\",\"email\",\"salary\"],\"includePII\":true,\"outputFormat\":\"CSV\"}", + "description": "Create a CSV dataset with 200 records including employeeId and email as PII fields with age and salary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dataset", + "context": null + } + }, + { + "name": "human-resources.generateTest", + "description": "Generates customized recruitment or employee evaluation tests based on specified job roles and skill focus areas. Accepts input parameters defining the job title, test type, skill categories, and difficulty level, then compiles a tailored set of questions and tasks. Outputs a structured test package including questions, answer keys, and scoring guidelines.", + "category": "human-resources", + "parameters": [ + { + "name": "jobTitle", + "type": "string", + "description": "The target job title for which the test is being generated, to tailor relevant content.", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of test to generate such as 'technical', 'personality', or 'aptitude'.", + "required": true, + "defaultValue": "" + }, + { + "name": "skillAreas", + "type": "array", + "description": "Array of skill categories to focus on in the test, e.g., ['JavaScript', 'Problem Solving'].", + "required": true, + "defaultValue": "" + }, + { + "name": "difficultyLevel", + "type": "string", + "description": "Desired difficulty level of the test: 'beginner', 'intermediate', or 'advanced'.", + "required": false, + "defaultValue": "intermediate" + }, + { + "name": "numberOfQuestions", + "type": "number", + "description": "Approximate number of questions the test should contain.", + "required": false, + "defaultValue": "20" + }, + { + "name": "includeAnswerKey", + "type": "boolean", + "description": "Whether to include an answer key with explanations in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated test composed of questions, answer key if requested, and scoring guidelines tailored to the inputs." + }, + "aiAgent": { + "useCase": "This tool is used when needing to quickly create relevant and role-specific assessment tests for candidates or employees, enabling standardized evaluation in recruitment or performance reviews without manual test creation. It supports various job types and skill focuses, improving efficiency.", + "limitations": "It cannot generate entirely novel test questions beyond its predefined database of templates and question variations. It also does not administer the test or evaluate completed responses.", + "examples": [ + "Generate a technical coding test for a JavaScript developer focusing on algorithms and data structures, intermediate level, with 25 questions.", + "Create a personality assessment test for a project manager role including communication and leadership skills, beginner difficulty.", + "Produce an aptitude test targeting logical reasoning and problem-solving for entry-level analyst position, 15 questions, include answer key." + ] + }, + "tags": [ + "human-resources", + "recruitment", + "test-generation", + "assessment", + "employee-evaluation", + "skills-testing" + ], + "examples": [ + { + "inputJson": "{\"jobTitle\":\"JavaScript Developer\",\"testType\":\"technical\",\"skillAreas\":[\"JavaScript\",\"Algorithms\",\"Data Structures\"],\"difficultyLevel\":\"intermediate\",\"numberOfQuestions\":25,\"includeAnswerKey\":true}", + "description": "Generate a 25-question intermediate technical test for a JavaScript developer focusing on JavaScript and algorithms." + }, + { + "inputJson": "{\"jobTitle\":\"Project Manager\",\"testType\":\"personality\",\"skillAreas\":[\"Communication\",\"Leadership\"],\"difficultyLevel\":\"beginner\",\"numberOfQuestions\":20,\"includeAnswerKey\":true}", + "description": "Create a personality test aimed at assessing communication and leadership skills for a project manager." + }, + { + "inputJson": "{\"jobTitle\":\"Business Analyst\",\"testType\":\"aptitude\",\"skillAreas\":[\"Logical Reasoning\",\"Problem Solving\"],\"difficultyLevel\":\"beginner\",\"numberOfQuestions\":15,\"includeAnswerKey\":false}", + "description": "Produce a 15-question aptitude test with focus on logical reasoning and problem solving for an entry-level analyst." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Test", + "context": null + } + }, + { + "name": "human-resources.generateWord", + "description": "Generates a relevant single word based on specified HR-related contexts such as recruitment phases, employee attributes, or corporate values. Accepts context keywords and optional word style preferences, then produces a single word that aligns with the input to assist in content creation or brainstorming.", + "category": "human-resources", + "parameters": [ + { + "name": "contextKeywords", + "type": "array", + "description": "An array of keywords indicating the HR-related context for the desired word (e.g., ['recruitment','teamwork']).", + "required": true, + "defaultValue": "" + }, + { + "name": "wordType", + "type": "string", + "description": "Specifies the preferred type of word to generate, such as 'noun', 'adjective', or 'verb'.", + "required": false, + "defaultValue": "noun" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the generated word in characters.", + "required": false, + "defaultValue": "20" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "Whether the generated word should start with a capital letter.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create concise HR-related content, labels, or keywords, such as naming recruitment stages, describing employee qualities, or generating motivational terms relevant to human resources. This helps automate and standardize terminology generation for HR documentation, communications, or software interfaces.", + "limitations": "This tool generates single words only, not phrases or sentences. It does not ensure trademark availability or cultural appropriateness of generated terms.", + "examples": [ + "Generate a word related to recruitment that is a noun.", + "Generate an adjective describing a positive employee attribute.", + "Generate a capitalized motivational word related to teamwork." + ] + }, + "tags": [ + "human-resources", + "generate", + "word", + "recruitment", + "employee", + "content-creation", + "labeling" + ], + "examples": [ + { + "inputJson": "{\"contextKeywords\":[\"recruitment\"],\"wordType\":\"noun\"}", + "description": "Generate a noun related to recruitment" + }, + { + "inputJson": "{\"contextKeywords\":[\"employee\",\"motivation\"],\"wordType\":\"adjective\",\"capitalize\":true}", + "description": "Generate a capitalized adjective describing employee motivation" + }, + { + "inputJson": "{\"contextKeywords\":[\"corporate\",\"values\"],\"maxLength\":10}", + "description": "Generate a noun related to corporate values with maximum length 10 characters" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Word", + "context": null + } + }, + { + "name": "human-resources.createServer", + "description": "Creates a virtual server instance tailored for the human resources department to manage recruitment and employee data. Accepts parameters including server type, operating system, storage size, and network configuration. Provisions the server and returns its access credentials and status.", + "category": "human-resources", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server instance required (e.g., 'application', 'database', 'file').", + "required": true, + "defaultValue": "" + }, + { + "name": "operatingSystem", + "type": "string", + "description": "Operating system to install on the server (e.g., 'Ubuntu 22.04', 'Windows Server 2019').", + "required": true, + "defaultValue": "" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "Amount of storage in gigabytes to allocate for the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "ramSizeGB", + "type": "number", + "description": "Amount of RAM in gigabytes to allocate to the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "cpuCores", + "type": "number", + "description": "Number of CPU cores to allocate to the server.", + "required": true, + "defaultValue": "" + }, + { + "name": "networkConfiguration", + "type": "object", + "description": "Network setup details like subnet, IP assignment, and firewall rules.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableBackup", + "type": "boolean", + "description": "Whether to enable automated backups for the server.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Information about the created server including its ID, IP address, status, and access credentials." + }, + "aiAgent": { + "useCase": "Use this tool when establishing dedicated server infrastructure for HR systems managing recruitment pipelines or employee data storage. It helps automate provisioning specific server resources and configurations to meet HR department requirements.", + "limitations": "This tool does not manage higher-level HR software installation or ongoing server maintenance tasks.", + "examples": [ + "Create a Linux application server with 100GB storage and 16GB RAM for recruitment database.", + "Set up a Windows file server with backup enabled for storing employee documents.", + "Provision a database server with 8 CPU cores and 64GB RAM for employee data analytics." + ] + }, + "tags": [ + "infrastructure", + "human-resources", + "server-provisioning", + "hr-systems", + "virtual-server", + "cloud", + "automation" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"application\",\"operatingSystem\":\"Ubuntu 22.04\",\"storageSizeGB\":100,\"ramSizeGB\":16,\"cpuCores\":4,\"networkConfiguration\":{\"subnet\":\"192.168.1.0/24\",\"assignPublicIP\":true,\"firewallRules\":[{\"protocol\":\"tcp\",\"portRange\":\"80-443\",\"action\":\"allow\"}]},\"enableBackup\":true}", + "description": "Provision a Linux application server with web ports open and backups enabled for HR recruitment software." + }, + { + "inputJson": "{\"serverType\":\"file\",\"operatingSystem\":\"Windows Server 2019\",\"storageSizeGB\":500,\"ramSizeGB\":32,\"cpuCores\":8,\"enableBackup\":false}", + "description": "Create a large Windows file server for storing HR employee documents without backups." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Server", + "context": null + } + }, + { + "name": "human-resources.createDataset", + "description": "Creates a structured dataset of employee or recruitment information by accepting detailed input parameters such as employee attributes, recruitment data fields, and filtering options. It processes this input to generate a curated, clean dataset formatted for HR analytics or reporting purposes, outputting the dataset as an array of employee or candidate objects.", + "category": "human-resources", + "parameters": [ + { + "name": "dataType", + "type": "string", + "description": "Type of dataset to create, e.g., 'employee' or 'recruitment'.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "List of fields/attributes to include in the dataset (e.g., ['name', 'department', 'hireDate']).", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Optional filtering criteria to select specific records, specified as key-value pairs (e.g., {department:'Engineering'}).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeInactive", + "type": "boolean", + "description": "Whether to include inactive employees or candidates in the dataset.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxRecords", + "type": "number", + "description": "Maximum number of records to include in the dataset. If omitted, includes all matching records.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the requested dataset as an array of records matching the given parameters, and metadata like totalRecords and fieldsIncluded." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a customized dataset of employee or recruitment information to support analytics, reporting, or decision-making. It enables creating a filtered, focused data extract based on specified attributes, improving the relevance and usability of human resources data.", + "limitations": "This tool does not perform data validation beyond structural compliance and does not connect to external HR systems; it relies on provided data sources being up-to-date and accurate.", + "examples": [ + "Create a dataset of active employees including their names, departments, and hire dates.", + "Generate a recruitment dataset with candidate names, applied positions, and application statuses filtered for the 'Sales' department.", + "Produce a dataset of all employees including inactive staff limited to 100 records." + ] + }, + "tags": [ + "human-resources", + "dataset", + "employee-data", + "recruitment", + "filtering", + "analytics", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"dataType\":\"employee\",\"fields\":[\"name\",\"department\",\"hireDate\"],\"filters\":{\"department\":\"Engineering\"},\"includeInactive\":false}", + "description": "Dataset of active employees in Engineering with their name, department, and hire date." + }, + { + "inputJson": "{\"dataType\":\"recruitment\",\"fields\":[\"candidateName\",\"positionApplied\",\"applicationStatus\"],\"filters\":{\"positionApplied\":\"Sales Manager\"},\"includeInactive\":false}", + "description": "Dataset of recruitment candidates who applied for Sales Manager position with application status included." + }, + { + "inputJson": "{\"dataType\":\"employee\",\"fields\":[\"name\",\"status\"],\"includeInactive\":true,\"maxRecords\":100}", + "description": "Dataset of first 100 employees including inactive staff with their names and employment status." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dataset", + "context": null + } + }, + { + "name": "human-resources.createJSON", + "description": "Creates a structured JSON object representing an employee or candidate profile from provided employee details. Accepts inputs such as personal information, job details, contact info, and skills, then generates a standardized JSON string suitable for storing or processing in HR systems.", + "category": "human-resources", + "parameters": [ + { + "name": "personalInfo", + "type": "object", + "description": "Object containing personal details like first name, last name, date of birth, and gender.", + "required": true, + "defaultValue": "" + }, + { + "name": "jobDetails", + "type": "object", + "description": "Object containing job-related information such as position, department, employment type, and start date.", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Object including contact details such as email, phone number, and address.", + "required": false, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "Array of skill strings representing the employee's or candidate's professional skills.", + "required": false, + "defaultValue": "" + }, + { + "name": "employeeId", + "type": "string", + "description": "Unique identifier for the employee if applicable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "A JSON string that consolidates all the provided input into a standardized employee or candidate profile JSON object." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a well-structured JSON profile for an employee or candidate from specified details, especially for integration with HR management or applicant tracking systems. It helps in creating data records automatically from raw or semi-structured personnel input.", + "limitations": "This tool does not validate the input data beyond type correctness and does not handle updating existing records or deep normalization of content such as address verification or duplicate detection.", + "examples": [ + "Create a JSON employee profile with basic personal and job info.", + "Generate a candidate JSON profile including contact info and skills list.", + "Produce a JSON string for an existing employee record identified by employeeId." + ] + }, + "tags": [ + "human-resources", + "json", + "employee-profile", + "candidate-profile", + "data-generation", + "hr-management" + ], + "examples": [ + { + "inputJson": "{\"personalInfo\":{\"firstName\":\"John\",\"lastName\":\"Doe\",\"dateOfBirth\":\"1985-04-12\",\"gender\":\"male\"},\"jobDetails\":{\"position\":\"Software Engineer\",\"department\":\"Engineering\",\"employmentType\":\"Full-time\",\"startDate\":\"2023-05-01\"},\"contactInfo\":{\"email\":\"john.doe@example.com\",\"phone\":\"555-1234\",\"address\":\"123 Main St, Anytown, USA\"},\"skills\":[\"JavaScript\",\"React\",\"Node.js\"]}", + "description": "Creating a full employee profile JSON with personal info, job details, contact info, and skills." + }, + { + "inputJson": "{\"personalInfo\":{\"firstName\":\"Maria\",\"lastName\":\"Gonzalez\"},\"jobDetails\":{\"position\":\"HR Manager\",\"department\":\"Human Resources\",\"employmentType\":\"Contractor\",\"startDate\":\"2024-01-15\"}}", + "description": "Creating a simple employee JSON profile with required personal and job details only." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "JSON", + "context": null + } + }, + { + "name": "human-resources.createCommit", + "description": "Creates a commit record for code changes related to human resources projects. Accepts details such as commit message, author information, changed files, and optional tags. Processes these inputs to generate a structured commit object used for tracking code history in HR software repositories.", + "category": "human-resources", + "parameters": [ + { + "name": "commitMessage", + "type": "string", + "description": "A concise description of the changes made in this commit. Required for documenting code revisions.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the person making the commit. Used for tracking authorship in version control.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorEmail", + "type": "string", + "description": "Email address of the commit author. Supports proper identification and communication.", + "required": true, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of file paths that were changed, added, or deleted in this commit.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "commitTimestamp", + "type": "string", + "description": "ISO 8601 formatted date and time of when the commit was made. Defaults to current time if unspecified.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or labels for the commit, such as 'bugfix' or 'feature'.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created commit record containing message, author, files, timestamp, and tags." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to record or simulate a code commit related to human resources projects, such as in automated HR software deployment, version tracking of HR policies code, or auditing development changes. It structures commit details into a standard format for version control systems.", + "limitations": "This tool does not interact with actual version control systems or perform code merges; it only creates structured commit data representations.", + "examples": [ + "Create a commit for adding a new employee onboarding script.", + "Record a bugfix commit updating HR compliance validation logic.", + "Tag a feature commit implementing a new payroll calculation method." + ] + }, + "tags": [ + "commit", + "version-control", + "human-resources", + "code-management", + "authoring", + "recording" + ], + "examples": [ + { + "inputJson": "{\"commitMessage\":\"Add employee onboarding automation script\",\"authorName\":\"Jane Doe\",\"authorEmail\":\"jane.doe@example.com\",\"changedFiles\":[\"scripts/onboarding.js\",\"docs/onboarding.md\"],\"commitTimestamp\":\"2024-06-15T10:30:00Z\",\"tags\":[\"feature\"]}", + "description": "Create a commit for a new HR automation feature." + }, + { + "inputJson": "{\"commitMessage\":\"Fix validation bug in leave request form\",\"authorName\":\"John Smith\",\"authorEmail\":\"john.smith@example.com\",\"changedFiles\":[\"forms/leaveRequest.js\"],\"tags\":[\"bugfix\"]}", + "description": "Record a bugfix commit with missing timestamp to use default current time." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Commit", + "context": null + } + }, + { + "name": "human-resources.createTest", + "description": "Creates a customized recruitment test for job candidates by taking input such as test title, description, question list, and duration. Processes the input to assemble the test and outputs a structured test object including metadata and question details ready for deployment in hiring workflows.", + "category": "human-resources", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the test to be created, e.g., 'JavaScript Developer Assessment'.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A brief explanation of the test purpose and scope shown to candidates.", + "required": false, + "defaultValue": "" + }, + { + "name": "questions", + "type": "array", + "description": "An array of question objects each containing question text, type (e.g., multiple-choice, coding, short-answer), options if applicable, and correct answers.", + "required": true, + "defaultValue": "" + }, + { + "name": "durationMinutes", + "type": "number", + "description": "Total time allocated in minutes for candidates to complete the test.", + "required": false, + "defaultValue": "60" + }, + { + "name": "passingScore", + "type": "number", + "description": "Minimum percentage score required to pass the test (0-100).", + "required": false, + "defaultValue": "70" + }, + { + "name": "difficultyLevel", + "type": "string", + "description": "The overall difficulty level of the test (e.g., 'easy', 'medium', 'hard').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "language", + "type": "string", + "description": "The language in which the test is presented, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A structured test object including test id, title, description, questions (with details), duration, passing score, difficulty, language, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a structured, ready-to-use assessment test for evaluating job candidates during recruitment. It is optimized for assembling questions of different types into a formal test format with scoring criteria and timing.", + "limitations": "This tool does not automatically generate question content; questions must be provided as input. It also does not administer the test or store candidate results.", + "examples": [ + "Create a programming test for front-end developers with 10 multiple-choice questions and a time limit of 45 minutes.", + "Generate a medium difficulty test in English for data analysts including coding and short answer questions.", + "Assemble a test titled 'Customer Service Aptitude' with passing score of 80% and duration 30 minutes." + ] + }, + "tags": [ + "human-resources", + "recruitment", + "assessment", + "test-creation", + "employee-evaluation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Frontend Developer Test\",\"description\":\"Assessment for React developers.\",\"questions\":[{\"text\":\"What is JSX?\",\"type\":\"multiple-choice\",\"options\":[\"JavaScript XML\",\"Java Standard\",\"JavaScript Experience\"],\"correctAnswers\":[\"JavaScript XML\"]},{\"text\":\"Write a React component that renders 'Hello World'.\",\"type\":\"coding\",\"correctAnswers\":[]},{\"text\":\"Explain the virtual DOM.\",\"type\":\"short-answer\",\"correctAnswers\":[]}],\"durationMinutes\":60,\"passingScore\":75,\"difficultyLevel\":\"medium\",\"language\":\"en\"}", + "description": "Create a 3-question React developer test with mixed question types and a 60-minute time limit." + }, + { + "inputJson": "{\"title\":\"English Proficiency Test\",\"description\":\"Evaluates reading and writing skills.\",\"questions\":[{\"text\":\"Choose the correct synonym of 'happy'.\",\"type\":\"multiple-choice\",\"options\":[\"sad\",\"joyful\",\"angry\"],\"correctAnswers\":[\"joyful\"]}],\"durationMinutes\":30,\"passingScore\":80,\"difficultyLevel\":\"easy\",\"language\":\"en\"}", + "description": "Create a simple English test with one multiple-choice question and a short duration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Test", + "context": null + } + }, + { + "name": "human-resources.createAPI", + "description": "Generates a customizable RESTful API specification for managing human resources data, including recruitment and employee records. Accepts input of desired entity schemas, authentication method, and endpoints. Outputs an OpenAPI-compliant JSON specification for easy implementation and integration.", + "category": "human-resources", + "parameters": [ + { + "name": "entitySchemas", + "type": "array", + "description": "An array of objects defining entities (e.g., 'employee', 'candidate') with fields and data types to be exposed via the API.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationType", + "type": "string", + "description": "Type of authentication for the API, such as 'OAuth2', 'API Key', or 'None'.", + "required": true, + "defaultValue": "OAuth2" + }, + { + "name": "includeEndpoints", + "type": "array", + "description": "List of CRUD operations (e.g., 'create', 'read', 'update', 'delete') to include for each entity.", + "required": false, + "defaultValue": "[\"create\",\"read\",\"update\",\"delete\"]" + }, + { + "name": "apiVersion", + "type": "string", + "description": "Version string for the API to be generated.", + "required": false, + "defaultValue": "1.0.0" + }, + { + "name": "basePath", + "type": "string", + "description": "Base URL path prefix for the API endpoints.", + "required": false, + "defaultValue": "/api/hr" + } + ], + "returns": { + "type": "object", + "description": "OpenAPI specification JSON object that describes the HR management API endpoints, methods, parameters, and schemas according to the input requirements." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate a standardized, ready-to-implement API specification to manage HR data entities such as employees and candidates. This facilitates rapid integration with HR systems, enabling programmatic management of recruitment and personnel information without manually coding API definitions.", + "limitations": "This tool generates API specifications but does not implement or deploy the API. It cannot create business logic, database connections, or handle real-time integrations beyond static spec generation.", + "examples": [ + "Generate an API spec for employee and candidate entities with OAuth2 authentication.", + "Create an API spec supporting CRUD operations for a custom employee schema with API key auth.", + "Produce a versioned HR API spec with base path '/api/human-resources' and minimal endpoints." + ] + }, + "tags": [ + "human-resources", + "api", + "generation", + "openapi", + "hr-management", + "automation" + ], + "examples": [ + { + "inputJson": "{\"entitySchemas\":[{\"name\":\"employee\",\"fields\":[{\"name\":\"id\",\"type\":\"string\"},{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"position\",\"type\":\"string\"},{\"name\":\"hireDate\",\"type\":\"string\",\"format\":\"date\"}]}],\"authenticationType\":\"OAuth2\",\"includeEndpoints\":[\"create\",\"read\",\"update\",\"delete\"],\"apiVersion\":\"1.0.0\",\"basePath\":\"/api/hr\"}", + "description": "Generate a comprehensive OAuth2 secured HR API for employee entity with full CRUD operations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "API", + "context": null + } + }, + { + "name": "human-resources.createContract", + "description": "This tool generates a customized employment contract document based on provided employee details, role specifications, compensation, and contract terms. It accepts inputs such as employee name, position, start date, salary, contract duration, and legal clauses, then produces a formatted contract document in text or PDF format ready for review and signing.", + "category": "human-resources", + "parameters": [ + { + "name": "employeeName", + "type": "string", + "description": "Full name of the employee the contract is for", + "required": true, + "defaultValue": "" + }, + { + "name": "position", + "type": "string", + "description": "Job title or role the employee will assume", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Employment start date in ISO 8601 format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "salary", + "type": "number", + "description": "Annual salary in the specified currency", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for salary (e.g., USD, EUR)", + "required": true, + "defaultValue": "USD" + }, + { + "name": "contractDurationMonths", + "type": "number", + "description": "Length of the employment contract in months; 0 if permanent", + "required": false, + "defaultValue": "0" + }, + { + "name": "probationPeriodMonths", + "type": "number", + "description": "Duration of probation period in months, if applicable", + "required": false, + "defaultValue": "3" + }, + { + "name": "workLocation", + "type": "string", + "description": "Primary location where the employee will work", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalClauses", + "type": "array", + "description": "Optional additional legal or company-specific clauses to include", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of contract output: 'text' or 'pdf'", + "required": false, + "defaultValue": "text" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract content as a string and metadata including format and page count if applicable" + }, + "aiAgent": { + "useCase": "Use this tool when generating standardized, legally compliant employment contracts tailored to the employee's role and terms. It automates contract drafting to reduce manual errors and speed up the hiring process.", + "limitations": "This tool does not provide legal advice or verify jurisdiction-specific compliance. Final review by legal professionals is recommended.", + "examples": [ + "Generate a full-time software engineer contract starting July 1 with an annual salary of $90,000 USD.", + "Create a 6-month consulting contract for a Marketing Specialist with specified additional clauses.", + "Produce a permanent contract in PDF for a remote customer support representative." + ] + }, + "tags": [ + "human-resources", + "contract", + "employment", + "document-generation", + "recruitment", + "hr-automation" + ], + "examples": [ + { + "inputJson": "{\"employeeName\":\"Jane Doe\",\"position\":\"Software Engineer\",\"startDate\":\"2024-07-01\",\"salary\":90000,\"currency\":\"USD\",\"contractDurationMonths\":0,\"probationPeriodMonths\":3,\"workLocation\":\"New York, NY\",\"additionalClauses\":[\"NonDisclosureAgreement\",\"IntellectualPropertyAssignment\"],\"outputFormat\":\"pdf\"}", + "description": "Create a permanent Software Engineer contract starting July 1 in PDF format including NDA and IP assignment clauses." + }, + { + "inputJson": "{\"employeeName\":\"John Smith\",\"position\":\"Marketing Specialist\",\"startDate\":\"2024-05-15\",\"salary\":60000,\"currency\":\"USD\",\"contractDurationMonths\":6,\"probationPeriodMonths\":0,\"workLocation\":\"Remote\",\"additionalClauses\":[],\"outputFormat\":\"text\"}", + "description": "Generate a 6-month contract for a Marketing Specialist working remotely, output as text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Contract", + "context": null + } + }, + { + "name": "translation.analyzeSentence", + "description": "Analyzes a given sentence in the specified language to provide insights on its linguistic structure, detected language, translation quality indicators, and potential ambiguities. Accepts a text sentence and language code; outputs detailed analysis including language confidence, syntax elements, and complexity score.", + "category": "translation", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The sentence text to analyze for language and translation-related insights.", + "required": true, + "defaultValue": "" + }, + { + "name": "languageCode", + "type": "string", + "description": "ISO 639-1 language code of the sentence to guide analysis (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "detectLanguage", + "type": "boolean", + "description": "If true, the tool detects the language automatically, ignoring provided languageCode.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected language details, syntactic components, translation quality flags, and sentence complexity metrics." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze the linguistic and translation-relevant features of a sentence, such as detecting language, identifying grammatical structure, assessing translation difficulty, or spotting ambiguities that could affect translation quality. Useful for pre-translation analysis or quality control of translated text.", + "limitations": "Does not perform full semantic translation or deep contextual interpretation beyond sentence-level analysis. Not suitable for paragraphs or longer texts as a single input.", + "examples": [ + "Analyze the language and syntax structure of this French sentence.", + "Check the ambiguity and complexity of a given English sentence before translation.", + "Detect language of a short input without specifying the language code explicitly." + ] + }, + "tags": [ + "translation", + "language analysis", + "linguistics", + "sentence analysis", + "syntax", + "translation quality" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"J'aime apprendre de nouvelles langues.\",\"languageCode\":\"fr\",\"detectLanguage\":false}", + "description": "Analyze a French sentence's structure and language details." + }, + { + "inputJson": "{\"sentence\":\"The quick brown fox jumps over the lazy dog.\",\"languageCode\":\"en\",\"detectLanguage\":false}", + "description": "Analyze an English sentence for syntax and complexity." + }, + { + "inputJson": "{\"sentence\":\"Das ist ein Test.\",\"languageCode\":\"\",\"detectLanguage\":true}", + "description": "Automatically detect the language of the sentence and analyze syntax." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Sentence", + "context": null + } + }, + { + "name": "translation.analyzeAlert", + "description": "Analyzes security alert messages written in various languages to identify and translate key threat indicators, severity levels, and recommended actions into a specified target language. Accepts raw alert text and language codes, processes natural language content to extract critical security information, and outputs a structured summary in the desired language for easier comprehension and response.", + "category": "translation", + "parameters": [ + { + "name": "alertText", + "type": "string", + "description": "Raw text of the security alert message to analyze and translate.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "ISO code of the language in which the alert text is originally written. If unknown, the tool will attempt to auto-detect.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "ISO code of the language into which the alert analysis and translation should be provided.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSeverityScore", + "type": "boolean", + "description": "Flag indicating whether to compute and include a severity score for the alert.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractIndicators", + "type": "boolean", + "description": "If true, extracts relevant threat indicators such as IP addresses, URLs, malware names, or CVEs.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured object containing the translated alert summary, severity score (if requested), extracted indicators (if requested), original alert metadata, and confidence levels for the analysis and translation." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to quickly understand and communicate the critical content of a security alert written in a language unfamiliar to the user or security team. It helps in identifying threat details and recommended responses across language barriers, automating multilingual alert triage and response workflows.", + "limitations": "The tool relies on natural language understanding and translation models, so very ambiguous, poorly formatted, or highly specialized technical alerts may yield incomplete or less accurate extractions. It does not perform incident response actions but only analyzes and translates alert content.", + "examples": [ + "Translate and summarize a Japanese security alert into English highlighting threat severity and indicators.", + "Analyze a German phishing alert and extract URLs and malware names while translating summary into Spanish.", + "Translate a Russian vulnerability alert into French and provide a severity score along with key indicators." + ] + }, + "tags": [ + "translation", + "security", + "alert", + "analysis", + "multilingual", + "threat intelligence", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"alertText\":\"生物识别系统检测到异常登录尝试,IP地址为192.168.1.101,可能存在暴力破解风险。请立即检查账户安全。\",\"sourceLanguage\":\"zh\",\"targetLanguage\":\"en\",\"includeSeverityScore\":true,\"extractIndicators\":true}", + "description": "Chinese alert about suspicious login attempt with IP address extraction and translation to English." + }, + { + "inputJson": "{\"alertText\":\"Detección de malware ransomware identificado como 'LockerX' en la red corporativa, potencial impacto alto.\",\"sourceLanguage\":\"es\",\"targetLanguage\":\"en\",\"includeSeverityScore\":true,\"extractIndicators\":true}", + "description": "Spanish alert describing ransomware detected on corporate network requiring translation and severity assessment to English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Alert", + "context": null + } + }, + { + "name": "translation.analyzeNotification", + "description": "Analyzes multilingual notification text to detect language, extract key information such as event type, sender, and urgency, and provides a structured summary suitable for translation or further processing. Accepts notification message strings and optional language hints, outputting an analysis object with identified attributes.", + "category": "translation", + "parameters": [ + { + "name": "notificationText", + "type": "string", + "description": "The full notification message text to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguageHint", + "type": "string", + "description": "Optional ISO language code hint for the source text to improve analysis accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "detectUrgency", + "type": "boolean", + "description": "Whether to analyze the notification text to detect urgency or priority indicators.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected language, extracted key information (event type, sender, date/time, urgency), and a concise summary of the notification content." + }, + "aiAgent": { + "useCase": "Use this tool when processing incoming notifications in various languages to automatically detect their language and extract key information elements for translation or routing. Useful in multilingual communication platforms, alert management, or notification aggregation where structured data is needed from freeform notification texts.", + "limitations": "This tool cannot replace full natural language translation or deep content understanding; it focuses on shallow semantic extraction from notifications and language detection only.", + "examples": [ + "Analyze the notification 'Meeting rescheduled to 3 PM tomorrow' and extract event details.", + "Detect language and summarize the urgency of a Spanish alert message.", + "Extract sender and event type from a push notification in Chinese." + ] + }, + "tags": [ + "translation", + "notification", + "language-detection", + "information-extraction", + "multilingual" + ], + "examples": [ + { + "inputJson": "{\"notificationText\":\"Your appointment with Dr. Smith is confirmed for July 10th, 2 PM.\",\"sourceLanguageHint\":\"en\",\"detectUrgency\":false}", + "description": "Analyze English appointment confirmation notification without urgency detection." + }, + { + "inputJson": "{\"notificationText\":\"重要通知:服务器将在今晚12点进行维护。\",\"sourceLanguageHint\":\"zh\",\"detectUrgency\":true}", + "description": "Analyze Chinese notification about server maintenance detecting urgency level." + }, + { + "inputJson": "{\"notificationText\":\"Réunion annulée vendredi prochain.\",\"sourceLanguageHint\":\"fr\",\"detectUrgency\":true}", + "description": "Analyze French notification about a cancelled meeting with urgency detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Notification", + "context": null + } + }, + { + "name": "translation.analyzeEvent", + "description": "Analyzes multilingual event data by processing event descriptions and metadata in multiple languages to identify translation consistency issues, language usage patterns, and semantic anomalies. Accepts event text data and language codes, then outputs a detailed report highlighting translation quality and detected linguistic discrepancies.", + "category": "translation", + "parameters": [ + { + "name": "eventText", + "type": "string", + "description": "The text content of the event description or summary to analyze for translation quality and issues.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The BCP-47 language code representing the original language of the event text.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "Array of BCP-47 language codes indicating the target languages into which the event text is translated and should be analyzed for consistency.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSemanticAnalysis", + "type": "boolean", + "description": "Whether to perform deeper semantic analysis to detect meaning discrepancies beyond direct translation errors.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxReportItems", + "type": "number", + "description": "Maximum number of translation issues or anomalies to include in the generated report.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing overall translation consistency score, list of detected translation issues and language usage statistics." + }, + "aiAgent": { + "useCase": "Use this tool when given event descriptions or related textual metadata in multiple languages and you need to assess the quality and consistency of their translations, detect possible errors, or understand language usage trends within event data.", + "limitations": "This tool does not perform actual translation or generate translated text; it only analyzes provided multilingual text for quality and consistency. It requires accurate input language codes.", + "examples": [ + "Analyze translation consistency of an event description originally in English translated to Spanish and French.", + "Check semantic consistency between original and translated texts of a conference keynote event.", + "Generate a report of linguistic anomalies found in multilingual event summaries." + ] + }, + "tags": [ + "translation", + "analysis", + "event", + "multilingual", + "semantics", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"eventText\":\"Annual Tech Conference keynote on AI advancements.\",\"sourceLanguage\":\"en\",\"targetLanguages\":[\"es\",\"fr\"],\"includeSemanticAnalysis\":true,\"maxReportItems\":5}", + "description": "Analyze the keynote event description originally in English with Spanish and French translations, including semantic analysis, and limit report to 5 issues." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Event", + "context": null + } + }, + { + "name": "translation.analyzeCSV", + "description": "This tool accepts a CSV file containing multilingual text data, analyzes the content by detecting languages used, evaluating translation consistency across columns, and identifying untranslated or inconsistent entries. It outputs a detailed report summarizing language distribution, translation quality flags, and suggestions for improvement to help ensure translation accuracy in CSV datasets.", + "category": "translation", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The CSV data as a string, containing text entries potentially in multiple languages, structured as rows and columns.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguages", + "type": "array", + "description": "An optional array of source language codes expected in the CSV to help guide detection (e.g., [\"en\",\"fr\"]).", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "An optional array of target language codes that the CSV columns are supposed to be translated into, to check for consistency.", + "required": false, + "defaultValue": "" + }, + { + "name": "translationColumns", + "type": "array", + "description": "An array of column headers or indices that correspond to translated text entries to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "consistencyThreshold", + "type": "number", + "description": "A numeric threshold (0–1) to flag inconsistencies in translation quality or missing translations; defaults to 0.8.", + "required": false, + "defaultValue": "0.8" + } + ], + "returns": { + "type": "object", + "description": "A structured report including detected languages per row and column, quality flags indicating missing or inconsistent translations, and summary statistics for language distribution and translation coverage." + }, + "aiAgent": { + "useCase": "Use this tool when needing to validate or audit multilingual translation data stored in CSV files, particularly to detect language mismatches, missing or low-quality translations, and overall consistency across different language columns.", + "limitations": "Cannot perform in-depth linguistic correctness or grammar checking; does not produce translations but only analyzes existing CSV text data for translation quality and consistency.", + "examples": [ + "Analyze a CSV file to detect which rows have missing French translations compared to the English source.", + "Evaluate a CSV containing UI strings in multiple languages to identify columns with inconsistent or untranslated entries.", + "Generate an overall summary report of language presence and translation coverage in a multilingual CSV dataset." + ] + }, + "tags": [ + "translation", + "CSV", + "multilingual", + "analysis", + "quality-assurance", + "language-detection" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"id,en,fr,de\\n1,Hello,Bonjour,Hallo\\n2,Goodbye,,Auf Wiedersehen\\n3,Thank you,Merci,Danke\",\"translationColumns\":[\"en\",\"fr\",\"de\"]}", + "description": "Analyze a CSV with English source and French, German translations - detect missing translations and inconsistencies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "translation.uploadReport", + "description": "Uploads a report document in supported file formats (PDF, DOCX, TXT) for the purpose of automated translation processing. Accepts the report file, source and target languages, and optional metadata. Returns a confirmation with a translation job ID and status to track progress or retrieve translated outputs later.", + "category": "translation", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the report file including extension (e.g., report.pdf).", + "required": true, + "defaultValue": "" + }, + { + "name": "fileContentBase64", + "type": "string", + "description": "Base64 encoded content of the report file to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the source report content (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "An array of language codes to translate the report into (e.g., ['fr', 'de']).", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs to describe the report context (e.g., {'department':'finance'}).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a unique translationJobId (string) and status (string) indicating if the upload was successful and the job queued." + }, + "aiAgent": { + "useCase": "Use this tool when the user needs to upload a document report for machine translation into one or more target languages. Ideal for multi-language corporate reporting workflows or document localization pipelines. It handles common document file formats and returns a job ID to track or retrieve translations later.", + "limitations": "This tool does not perform the translation itself; it only uploads and queues the report for translation. It does not support scanning images for text translation or non-document file types. The quality and availability of translations depend on downstream translation processing.", + "examples": [ + "Upload a quarterly financial report in English for translation into French and German.", + "Submit a project status DOCX report for localization to Spanish.", + "Upload a TXT meeting summary report for translation into Japanese." + ] + }, + "tags": [ + "translation", + "upload", + "document", + "report", + "multilanguage", + "localization", + "corporate" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"Q1_Financial_Report.pdf\",\"fileContentBase64\":\"JVBERi0xLjQKJcfs...\",\"sourceLanguage\":\"en\",\"targetLanguages\":[\"fr\",\"de\"],\"metadata\":{\"department\":\"finance\",\"year\":\"2024\"}}", + "description": "Uploading a PDF financial report in English for French and German translations with metadata about department and year." + }, + { + "inputJson": "{\"fileName\":\"Project_Status.docx\",\"fileContentBase64\":\"UEsDBBQABgAIAAAAI...\",\"sourceLanguage\":\"en\",\"targetLanguages\":[\"es\"],\"metadata\":{}}", + "description": "Uploading a DOCX project status report for translation into Spanish with no additional metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "translation.downloadReport", + "description": "Downloads a translation report document summarizing translated content between specified languages. Accepts parameters for source and target languages, report format, and filters by date or document type. Processes translation metadata and outputs a downloadable file link for the report.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The original language code of the content to include in the report (e.g., 'en').", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code for the translation content (e.g., 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "reportFormat", + "type": "string", + "description": "The file format of the report to download (e.g., 'pdf', 'xlsx').", + "required": false, + "defaultValue": "pdf" + }, + { + "name": "startDate", + "type": "string", + "description": "Filter translations starting from this date in ISO 8601 format (e.g., '2023-01-01').", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Filter translations up to this date in ISO 8601 format (e.g., '2023-12-31').", + "required": false, + "defaultValue": "" + }, + { + "name": "documentType", + "type": "string", + "description": "Optional filter for the type of translated documents included (e.g., 'legal', 'marketing').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the report download link and metadata including file name, size (in bytes), and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate and retrieve a comprehensive summary report of translation activities or content between specified languages within given timeframes or document categories. It helps agents provide users with ready-to-download translation analytics or status reports.", + "limitations": "Cannot generate reports for unsupported languages or file formats; does not translate content itself, only compiles translation metadata into reports.", + "examples": [ + "Download a PDF report summarizing translations from English to Spanish between January and June 2023.", + "Obtain an Excel translation report filtered by document type 'legal' from French to German.", + "Get a translation activity report for translations done into Japanese without date filters." + ] + }, + "tags": [ + "translation", + "report", + "download", + "document", + "multilingual", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"reportFormat\":\"pdf\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-06-30\"}", + "description": "Download a PDF report summarizing translations from English to Spanish between January and June 2023." + }, + { + "inputJson": "{\"sourceLanguage\":\"fr\",\"targetLanguage\":\"de\",\"reportFormat\":\"xlsx\",\"documentType\":\"legal\"}", + "description": "Download an Excel report filtered by legal documents translated from French to German." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"ja\"}", + "description": "Download a PDF translation report for translations done from English to Japanese with default settings." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Report", + "context": null + } + }, + { + "name": "translation.sendMessage", + "description": "Sends a translated message to a recipient by accepting the original message text, source and target languages, and recipient contact details. It translates the input text and delivers the translated text to the specified recipient via an inline messaging interface or communication protocol. Returns a status indicating success or failure of delivery.", + "category": "translation", + "parameters": [ + { + "name": "originalText", + "type": "string", + "description": "The original message text to be translated and sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Language code (e.g., 'en') of the original message text.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Language code (e.g., 'fr') to translate the message into before sending.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Identifier (e.g., user ID, phone number, or email) of the message recipient.", + "required": true, + "defaultValue": "" + }, + { + "name": "deliveryMethod", + "type": "string", + "description": "Method to send the message, such as 'email', 'sms', or 'inApp'.", + "required": false, + "defaultValue": "inApp" + }, + { + "name": "messageSubject", + "type": "string", + "description": "Optional subject line for the message if applicable (e.g., email subject).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Response object containing delivery status and translated text, including success boolean and an optional error message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to send a message to a user or contact in a different language, automatically translating the original message text and delivering it via a specified communication channel. It is ideal for multilingual communications in apps or services requiring real-time translation and message sending.", + "limitations": "This tool does not support translation quality customization or manual edits before sending, nor can it guarantee delivery success against recipient platform restrictions or network failures.", + "examples": [ + "Send a greeting message translated from English to Spanish to a user's email.", + "Translate a notification from French to German and send it via SMS to a phone number.", + "Deliver a customer support message translated from English to Chinese through an in-app messaging system." + ] + }, + "tags": [ + "translation", + "messaging", + "communication", + "multilingual", + "send", + "automation" + ], + "examples": [ + { + "inputJson": "{\"originalText\":\"Hello, your order has been shipped.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"recipientId\":\"user123@example.com\",\"deliveryMethod\":\"email\",\"messageSubject\":\"Order Update\"}", + "description": "Send an English to Spanish translated order update message to a user's email." + }, + { + "inputJson": "{\"originalText\":\"Votre rendez-vous est confirmé.\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"de\",\"recipientId\":\"+4915123456789\",\"deliveryMethod\":\"sms\"}", + "description": "Send a French to German translated appointment confirmation via SMS to a phone number." + }, + { + "inputJson": "{\"originalText\":\"Please reset your password using the link.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"zh\",\"recipientId\":\"user456\",\"deliveryMethod\":\"inApp\"}", + "description": "Send an English to Chinese translated password reset instruction through in-app messaging system." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "translation.formatReport", + "description": "This tool accepts a translated textual report along with source and target languages, and formats the report text according to specified style guidelines such as line width, paragraph spacing, and text alignment. It produces a well-structured, formatted report text optimized for readability in the target language.", + "category": "translation", + "parameters": [ + { + "name": "translatedText", + "type": "string", + "description": "The full text of the translated report that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Language code of the original report text before translation (e.g., 'en').", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Language code of the translated report text (e.g., 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum number of characters per line to wrap the text (e.g., 80).", + "required": false, + "defaultValue": "80" + }, + { + "name": "paragraphSpacing", + "type": "number", + "description": "Number of blank lines inserted between paragraphs for clarity.", + "required": false, + "defaultValue": "1" + }, + { + "name": "alignment", + "type": "string", + "description": "Text alignment style: 'left', 'right', 'center', or 'justify'.", + "required": false, + "defaultValue": "left" + }, + { + "name": "preserveHeadings", + "type": "boolean", + "description": "Whether to detect and preserve heading formatting within the report text.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted report text reflecting the requested layout and style guidelines." + }, + "aiAgent": { + "useCase": "Use this tool when you have a translated report text that requires proper formatting for presentation or publication, ensuring the translated content is visually structured and readable according to specified styling preferences. This is especially useful after machine or manual translation to finalize the report layout in the target language.", + "limitations": "This tool does not perform translation itself or verify translation accuracy; it only formats already translated report text. It also cannot add or correct content structure beyond text alignment and wrapping.", + "examples": [ + "Format a French translated report to have justified text with 70 characters line width and two blank lines between paragraphs.", + "Prepare a Japanese translated report for presentation with centered headings preserved and left-aligned paragraphs with standard spacing." + ] + }, + "tags": [ + "translation", + "formatting", + "report", + "text-processing", + "multilingual", + "document-preparation" + ], + "examples": [ + { + "inputJson": "{\"translatedText\":\"Le rapport annuel présente les résultats de l'exercice.\\n\\nIl souligne les progrès réalisés...\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"lineWidth\":70,\"paragraphSpacing\":2,\"alignment\":\"justify\",\"preserveHeadings\":true}", + "description": "Formatting a French translated report with justified text, line width 70, and double spacing between paragraphs." + }, + { + "inputJson": "{\"translatedText\":\"年度報告書には、主要な業績指標が記載されています。\\n\\n詳細は以下の通りです。\",\"targetLanguage\":\"ja\",\"lineWidth\":80,\"paragraphSpacing\":1,\"alignment\":\"left\",\"preserveHeadings\":true}", + "description": "Formatting a Japanese translated report with left alignment and standard paragraph spacing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Report", + "context": null + } + }, + { + "name": "translation.renderDocument", + "description": "This tool translates the textual content of a document from a source language to a target language, preserving the original document structure and formatting. It accepts document content as text or markup, performs language translation, and outputs a translated document maintaining layout integrity.", + "category": "translation", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The full textual content of the document to be translated, including any markup or formatting tags if applicable.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original document content (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code into which the document should be translated (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "The format of the document content, such as 'plain', 'html', 'markdown', or 'xml', to help preserve structure during translation.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Whether to preserve original document formatting and markup in the translated output. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated document content as a string in the same format as input, preserving the original document's structure and formatting where possible." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to translate entire documents from one language to another while maintaining the original document formatting and layout, such as translating user manuals, reports, or marketing materials for multilingual audiences. It supports multiple common markup formats and preserves structural elements.", + "limitations": "It cannot handle translation of embedded images or non-textual elements within documents. Complex formatting beyond supported markup may not be perfectly preserved. Accuracy depends on supported language pairs and underlying translation engine capabilities.", + "examples": [ + "Translate an English product manual in HTML format to Spanish while preserving all formatting.", + "Convert a French markdown report to English, keeping markdown structure intact.", + "Translate plain text legal document from German to English without formatting concerns." + ] + }, + "tags": [ + "translation", + "document", + "language", + "formatting", + "multilingual", + "rendering", + "localization" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"

Welcome

This is a user guide.

\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"formatType\":\"html\",\"preserveFormatting\":true}", + "description": "Translate an English HTML user guide to Spanish preserving HTML tags." + }, + { + "inputJson": "{\"documentContent\":\"# Rapport\\nCeci est un rapport important.\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"en\",\"formatType\":\"markdown\",\"preserveFormatting\":true}", + "description": "Translate a French markdown report to English keeping markdown formatting." + }, + { + "inputJson": "{\"documentContent\":\"Financial statement for Q1.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"de\",\"formatType\":\"plain\",\"preserveFormatting\":false}", + "description": "Translate a plain text financial statement from English to German without formatting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Document", + "context": null + } + }, + { + "name": "translation.renderFile", + "description": "This tool accepts a file input containing text content in a source language, processes it by translating the text to a specified target language while preserving the original file format and layout, and outputs a new file in the same format with the translated text rendered appropriately.", + "category": "translation", + "parameters": [ + { + "name": "inputFile", + "type": "string", + "description": "The path or content of the source file to be translated; supports text-based file formats like DOCX, HTML, TXT, and PDF.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') of the original text in the input file.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code into which the file's text content should be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Flag indicating whether to preserve the original file's formatting and layout in the output file.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output file format; if not provided, defaults to the input file's format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated file's content or a path/URL to the rendered translated file in the specified format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to translate the content of documents and maintain the original formatting and file type for purposes such as business reports, manuals, or websites. It is ideal for scenarios requiring quick conversion of localized documents that retain professional appearance and layout.", + "limitations": "Does not support scanned images or purely image-based PDFs without OCR preprocessing. Complex layouts with embedded multimedia may not be perfectly preserved.", + "examples": [ + "Translate a DOCX user manual from English to Spanish preserving all formatting.", + "Render a translated HTML web page from French to German maintaining the original tags and styles.", + "Convert a PDF report from Chinese to English outputting a PDF with translated text." + ] + }, + "tags": [ + "translation", + "file-processing", + "document", + "multilingual", + "rendering", + "format-preservation" + ], + "examples": [ + { + "inputJson": "{\"inputFile\":\"/documents/manual_en.docx\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"preserveFormatting\":true}", + "description": "Translate an English DOCX manual to Spanish while preserving its original formatting." + }, + { + "inputJson": "{\"inputFile\":\"

Bonjour monde

\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"de\",\"outputFormat\":\"html\"}", + "description": "Render a French HTML snippet translated to German preserving HTML structure." + }, + { + "inputJson": "{\"inputFile\":\"/reports/annual_cn.pdf\",\"sourceLanguage\":\"zh\",\"targetLanguage\":\"en\",\"preserveFormatting\":true}", + "description": "Render translated English version of a Chinese PDF annual report preserving formatting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "translation.composeReport", + "description": "This tool accepts a source language text and parameters to translate and compose a coherent, structured report in the target language. It processes the input by translating the content, organizing it into typical report sections, and outputs a formatted report text suitable for professional or formal use.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text content of the report in the source language to be translated and composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') representing the language of the sourceText.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code for the language into which the report should be translated and composed.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportType", + "type": "string", + "description": "The type of report to compose (e.g., 'business', 'technical', 'financial'). This influences tone and structure.", + "required": false, + "defaultValue": "business" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include an executive summary section in the composed report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include a recommendations section in the composed report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Preferred formatting style for the output report, such as 'formal' or 'concise'.", + "required": false, + "defaultValue": "formal" + } + ], + "returns": { + "type": "object", + "description": "An object containing the fully translated and composed report as a formatted text string, structured into typical report sections." + }, + "aiAgent": { + "useCase": "Use this tool when you need to translate a textual report from one language to another while also restructuring and formatting it into a coherent, professional report format suitable for business, technical, or other formal domains. Ideal for agents tasked with multilingual reporting or document localization that requires restructuring beyond simple translation.", + "limitations": "This tool does not perform advanced content generation beyond reorganization and translation; it requires a fully formed source report text input. It cannot handle multimedia content or generate original data or analysis. Translation quality depends on the engine used and may require human review.", + "examples": [ + "Translate a quarterly business performance report from English to Spanish, preserving professional structure and including summary and recommendations sections.", + "Convert a technical report written in German into formal French with concise formatting and without recommendations.", + "Recompose a financial report from Japanese into English, emphasizing clarity and a formal tone." + ] + }, + "tags": [ + "translation", + "report", + "document", + "business", + "technical", + "multilingual", + "composition", + "formal" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"This quarter we increased sales by 15%, exceeding targets. Operational costs remained stable.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"reportType\":\"business\",\"includeSummary\":true,\"includeRecommendations\":true,\"formatStyle\":\"formal\"}", + "description": "Translate a brief business report from English to Spanish, including summary and recommendations." + }, + { + "inputJson": "{\"sourceText\":\"Die neue Softwarearchitektur verbessert die Systemstabilität und Skalierbarkeit deutlich.\",\"sourceLanguage\":\"de\",\"targetLanguage\":\"fr\",\"reportType\":\"technical\",\"includeSummary\":false,\"includeRecommendations\":false,\"formatStyle\":\"concise\"}", + "description": "Convert a technical report from German to French, concise style without summary or recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Report", + "context": null + } + }, + { + "name": "translation.draftDocument", + "description": "This tool accepts a source document text and translates it into a specified target language, producing a draft translated document. It supports various document formats such as plain text, markdown, or HTML, preserving basic formatting where possible. The output is a translated text draft suitable for review or editing.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text content of the document to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code or name of the source text. If not provided, the tool will attempt automatic detection.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code or name for the document translation output.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The format of the document, e.g., plain, markdown, html. Helps preserve formatting in the translation.", + "required": false, + "defaultValue": "plain" + }, + { + "name": "preserveFormatting", + "type": "boolean", + "description": "Whether to preserve the source document's formatting tags in the output where applicable.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated document draft text and metadata, including target language and format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to produce an initial translated draft of a document from one language to another, preserving basic formatting. Applicable in workflows involving multilingual document creation, review, or localization. It helps generate a first-pass translation for further human or automated refinement.", + "limitations": "The tool produces draft translations which may contain inaccuracies or stylistic issues; it doesn't handle complex formatting beyond basic markdown or HTML tags. It does not perform final proofreading or cultural localization.", + "examples": [ + "Translate a product manual from English to Spanish in markdown format preserving headings and lists.", + "Generate a draft translation of a newsletter from French to German with minimal formatting.", + "Translate plain text email content from Japanese to English without formatting preservation." + ] + }, + "tags": [ + "translation", + "document", + "drafting", + "multilingual", + "localization" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"# Introduction\\nWelcome to our product.\\nHere are some features:\n- Easy to use\n- Efficient\\nThank you!\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"format\":\"markdown\",\"preserveFormatting\":true}", + "description": "Translate an English markdown product introduction document to Spanish preserving markdown formatting." + }, + { + "inputJson": "{\"sourceText\":\"Bonjour, voici la newsletter de ce mois.\nMerci de votre lecture.\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"de\",\"format\":\"plain\",\"preserveFormatting\":false}", + "description": "Translate a plain text French newsletter to German without formatting preservation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Document", + "context": null + } + }, + { + "name": "translation.buildServer", + "description": "This tool provisions and configures a server optimized for hosting translation services. It accepts input parameters specifying server resources, preferred cloud provider, target languages, and deployment preferences. It then automates the building of an infrastructure server environment tailored for translation workloads, outputting server details including IP, installed services, and access credentials.", + "category": "translation", + "parameters": [ + { + "name": "cloudProvider", + "type": "string", + "description": "The cloud service provider where the translation server will be deployed (e.g., AWS, Azure, GCP).", + "required": true, + "defaultValue": "" + }, + { + "name": "serverType", + "type": "string", + "description": "The type or tier of server instance to use (e.g., t2.medium, n1-standard-4).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "List of languages the server should support for translation (e.g., ['en', 'fr', 'es']).", + "required": true, + "defaultValue": "" + }, + { + "name": "deploymentRegion", + "type": "string", + "description": "Preferred geographic region for server deployment (e.g., us-east-1, europe-west-2).", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "enableAutoScaling", + "type": "boolean", + "description": "Flag to enable automatic scaling of server resources based on load.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server's public IP address, installed translation service details, access credentials (secured), and status of deployment." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to deploy a dedicated server environment that supports machine translation workflows, including configuring necessary services and resources automatically in a specified cloud environment. It helps streamline setting up infrastructure for translation tasks.", + "limitations": "Does not handle ongoing server maintenance or translations themselves; focuses solely on server provisioning and initial configuration. Requires valid cloud provider credentials and permissions to deploy resources.", + "examples": [ + "Deploy a translation server in AWS to support English, French, and Spanish languages with auto-scaling enabled.", + "Build a GCP server instance optimized for English and Japanese translation services in the asia-east1 region.", + "Create an Azure-based server for multilingual translation supporting English and German without auto-scaling." + ] + }, + "tags": [ + "translation", + "infrastructure", + "cloud", + "server provisioning", + "automation", + "deployment" + ], + "examples": [ + { + "inputJson": "{\"cloudProvider\":\"AWS\",\"serverType\":\"t3.medium\",\"targetLanguages\":[\"en\",\"fr\",\"es\"],\"deploymentRegion\":\"us-east-1\",\"enableAutoScaling\":true}", + "description": "Deploy a medium-tier AWS server in US East with English, French, and Spanish support and auto-scaling enabled." + }, + { + "inputJson": "{\"cloudProvider\":\"GCP\",\"serverType\":\"n1-standard-4\",\"targetLanguages\":[\"en\",\"ja\"],\"deploymentRegion\":\"asia-east1\",\"enableAutoScaling\":false}", + "description": "Build a GCP server in Asia East region for English and Japanese translations without auto-scaling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "translation.buildCommit", + "description": "Generates a translation commit message for code changes by translating the original commit message and relevant metadata into a specified target language. Accepts the original commit message text and language details, processes the translation, and outputs a structured commit message in the target language suitable for version control.", + "category": "translation", + "parameters": [ + { + "name": "originalMessage", + "type": "string", + "description": "The original commit message text to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the original commit message (e.g., 'en' for English).", + "required": true, + "defaultValue": "en" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code to translate the commit message into (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include commit metadata such as author and date in the output commit message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "An object containing optional metadata fields like author, date, and commit hash to include in the translated commit message.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated commit message as 'translatedMessage' and optionally included metadata fields." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate localized commit messages from existing commits for multilingual project repositories or communication with developers speaking different languages. It automates accurate translation of commit messages preserving context and optionally adding commit metadata.", + "limitations": "This tool does not generate or modify the actual code commits; it only translates and formats the commit messages. It requires correct language codes and assumes the original message is well-formed. Cultural or idiomatic expressions in commit messages may not perfectly translate.", + "examples": [ + "Translate original English commit message 'Fix bug in user login flow' to Spanish commit message including author metadata.", + "Generate a French translation of a German original commit message without metadata inclusion.", + "Build a translated commit message from Japanese to English with date and commit hash included." + ] + }, + "tags": [ + "translation", + "commit", + "localization", + "version control", + "developer tools" + ], + "examples": [ + { + "inputJson": "{\"originalMessage\":\"Fix bug in user login flow\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"includeMetadata\":true,\"metadata\":{\"author\":\"Jane Doe\",\"date\":\"2024-06-01\"}}", + "description": "Translate an English commit message to Spanish including author and date metadata." + }, + { + "inputJson": "{\"originalMessage\":\"Korrigieren Fehler beim Benutzerlogin\",\"sourceLanguage\":\"de\",\"targetLanguage\":\"fr\",\"includeMetadata\":false}", + "description": "Translate a German commit message to French without metadata." + }, + { + "inputJson": "{\"originalMessage\":\"ユーザーログインのバグを修正しました\",\"sourceLanguage\":\"ja\",\"targetLanguage\":\"en\",\"includeMetadata\":true,\"metadata\":{\"author\":\"Taro Yamada\",\"commitHash\":\"abc123\"}}", + "description": "Translate a Japanese commit message to English including author and commit hash metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Commit", + "context": null + } + }, + { + "name": "translation.buildAPI", + "description": "Generates a customized translation API code scaffold based on specified source and target languages, preferred frameworks, and optional features. Accepts language pairs and configuration parameters, then outputs ready-to-deploy API code enabling text translation services.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the input text to be translated (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code for the desired translation output (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "framework", + "type": "string", + "description": "The backend framework for which the API code should be generated (e.g., 'Express', 'Flask').", + "required": false, + "defaultValue": "Express" + }, + { + "name": "includeAuth", + "type": "boolean", + "description": "Whether to include authentication middleware code for securing the API endpoints.", + "required": false, + "defaultValue": "false" + }, + { + "name": "translationProvider", + "type": "string", + "description": "The translation engine or external API to integrate (e.g., 'GoogleTranslate', 'DeepL').", + "required": false, + "defaultValue": "GoogleTranslate" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to include request and error logging code in the API.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing source code strings constituting a ready-to-run translation API server, including configuration and sample usage." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate boilerplate code for a translation service API tailored to specific source and target languages and technology stacks, facilitating rapid deployment of translation APIs without manual coding.", + "limitations": "This tool generates scaffolding and integration code but does not implement custom translation models. It depends on existing translation provider APIs and does not handle runtime deployment or environment configuration.", + "examples": [ + "Generate an Express.js API to translate from English to French with authentication and DeepL integration.", + "Build a Flask-based translation API for Spanish to German without auth and using Google Translate.", + "Create a Node.js translation service API for Chinese to Japanese that includes detailed logging." + ] + }, + "tags": [ + "translation", + "API", + "code-generation", + "backend", + "framework", + "localization", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"framework\":\"Express\",\"includeAuth\":true,\"translationProvider\":\"DeepL\",\"enableLogging\":true}", + "description": "Builds an Express.js translation API server code scaffold translating English to French with authentication and logs enabled, integrated with DeepL." + }, + { + "inputJson": "{\"sourceLanguage\":\"es\",\"targetLanguage\":\"de\",\"framework\":\"Flask\",\"includeAuth\":false,\"translationProvider\":\"GoogleTranslate\",\"enableLogging\":false}", + "description": "Generates Flask-based translation API code from Spanish to German, no authentication included, using Google Translate without logging." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "translation.generateEvent", + "description": "Generates a structured analytics event object based on natural language description provided in any language and translates relevant textual content into a target language. Accepts event details and target language, performs language detection and translation of event fields, outputs a ready-to-use event JSON with translated content.", + "category": "translation", + "parameters": [ + { + "name": "eventDescription", + "type": "string", + "description": "Natural language description of the event to generate, including attributes and context.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "Language code of the source text if known; if empty, language detection is performed.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Language code into which the event textual fields should be translated. Required to produce translation.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTimestamp", + "type": "boolean", + "description": "Whether to automatically add the current timestamp to the event data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "eventType", + "type": "string", + "description": "Optional event type to categorize the event, e.g., 'page_view', 'purchase'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the analytics event with translated textual fields, including optional timestamp and event type if provided." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a structured analytics event JSON from a natural language description that may be in any language and produce the event with textual elements translated into a specific target language, facilitating multilingual analytics tracking.", + "limitations": "Cannot verify or infer precise event attribute semantics beyond provided description; relies on input clarity. Does not handle event sending or ingestion, only event object generation and translation.", + "examples": [ + "Generate an analytics event for user clicking the 'submit' button, translating descriptions into Spanish.", + "Create a purchase event with details described in Japanese, output event fields in English.", + "Produce a page view event from a French text description, target language is German." + ] + }, + "tags": [ + "translation", + "analytics", + "event generation", + "multilingual", + "input processing" + ], + "examples": [ + { + "inputJson": "{\"eventDescription\":\"User clicked the 'Buy Now' button on the product page.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"includeTimestamp\":true,\"eventType\":\"click\"}", + "description": "Generate a click event from an English description, translate to Spanish, include timestamp and event type." + }, + { + "inputJson": "{\"eventDescription\":\"ユーザーがログインしました\",\"sourceLanguage\":\"ja\",\"targetLanguage\":\"en\",\"includeTimestamp\":false,\"eventType\":\"login\"}", + "description": "Generate a login event from Japanese description, translate to English, exclude timestamp." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Event", + "context": null + } + }, + { + "name": "translation.generateMetric", + "description": "Generates translation quality metrics from source and translated texts. Accepts source text, translated text, and optional reference translations to calculate metrics such as BLEU, TER, and METEOR. Outputs a comprehensive report of translation quality scores for analysis and comparison.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original source text that was translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "translatedText", + "type": "string", + "description": "The translated text output to be evaluated.", + "required": true, + "defaultValue": "" + }, + { + "name": "referenceTexts", + "type": "array", + "description": "An array of reference translations to compare against for metric calculations (optional but improves accuracy).", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of quality metrics to generate, e.g. ['BLEU','TER','METEOR']. Defaults to ['BLEU','TER','METEOR'].", + "required": false, + "defaultValue": "[\"BLEU\",\"TER\",\"METEOR\"]" + } + ], + "returns": { + "type": "object", + "description": "An object containing each requested metric's score, along with a summary interpretation of the translation quality." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quantitatively evaluate the quality of a translated text against the source and optionally reference translations. Helpful for machine translation evaluation, comparing models, or assessing professional translation outputs.", + "limitations": "Does not perform the translation itself. Metric scores are only as reliable as reference texts and may not capture all nuances of translation quality.", + "examples": [ + "Generate BLEU and TER scores for a machine-translated legal document compared to its source.", + "Evaluate multiple candidate translations against the source and references to determine the best version.", + "Produce a quality report for translations in an automated translation pipeline." + ] + }, + "tags": [ + "translation", + "metrics", + "quality evaluation", + "machine translation", + "BLEU", + "TER", + "METEOR" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Hello world.\",\"translatedText\":\"Hola mundo.\",\"referenceTexts\":[\"Hola mundo.\"],\"metrics\":[\"BLEU\",\"TER\"]}", + "description": "Calculate BLEU and TER scores for a simple English to Spanish translation." + }, + { + "inputJson": "{\"sourceText\":\"The quick brown fox jumps over the lazy dog.\",\"translatedText\":\"Le renard brun rapide saute par-dessus le chien paresseux.\",\"metrics\":[\"METEOR\"]}", + "description": "Evaluate METEOR score of a French translation without additional references." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Metric", + "context": null + } + }, + { + "name": "translation.generateSummary", + "description": "Generates a concise summary of a provided document text written in any language. Accepts document content and optionally detects the language or accepts a specified language code. Produces a brief summary in the same language or translated to a target language if specified.", + "category": "translation", + "parameters": [ + { + "name": "documentText", + "type": "string", + "description": "The full text of the document to be summarized.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "ISO code of the document's language if known; if empty, the tool will auto-detect it.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "ISO code of the language for the summary output. If empty or matches source, summary is in original language.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the summary in characters. If zero or omitted, use default length.", + "required": false, + "defaultValue": "500" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary text and the language code of the summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide a brief overview of lengthy documents in any language, optionally translating the summary to a target language for user comprehension. It is helpful in multilingual support, content digestion, and report synthesis scenarios.", + "limitations": "The tool may produce less accurate summaries for very short or highly technical texts. It might not capture all nuances when translating the summary to a different language. It does not perform original translation of the full document, only the summary output if requested.", + "examples": [ + "Summarize a long French legal document into a short French summary.", + "Generate a summary of a Spanish medical article and translate the summary into English.", + "Provide a concise summary of a Japanese news article in the original Japanese." + ] + }, + "tags": [ + "translation", + "summary", + "document", + "multilingual", + "text-processing", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"documentText\":\"Le rapport annuel détaille les performances financières et les initiatives stratégiques de l'entreprise au cours de l'année passée, mettant en lumière la croissance soutenue et les défis rencontrés.\",\"sourceLanguage\":\"fr\",\"targetLanguage\":\"fr\",\"maxSummaryLength\":200}", + "description": "Summarize a French business report in French with a max length of 200 characters." + }, + { + "inputJson": "{\"documentText\":\"Este estudio analiza los efectos de la contaminación ambiental en la salud pública y propone medidas para mitigar sus impactos.\",\"sourceLanguage\":\"es\",\"targetLanguage\":\"en\",\"maxSummaryLength\":300}", + "description": "Summarize a Spanish environmental study and produce the summary in English." + }, + { + "inputJson": "{\"documentText\":\"東京の最新の観光地情報をまとめた記事で、訪問者に便利なアドバイスや見どころを紹介しています。\",\"sourceLanguage\":\"ja\",\"targetLanguage\":\"\",\"maxSummaryLength\":150}", + "description": "Summarize a Japanese travel article in Japanese with a shorter summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Summary", + "context": null + } + }, + { + "name": "translation.generateCSV", + "description": "Generates a CSV file containing translations of input texts from a source language into one or more target languages. Accepts an array of text entries and language codes, translates each text entry into specified target languages, and outputs a CSV string with the original texts and their translations organized in columns.", + "category": "translation", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "An array of strings representing the text entries to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the source texts (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "An array of language codes to translate the texts into (e.g., ['fr','de']).", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include a header row in the CSV with language labels.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "The delimiter character to separate CSV fields (default is comma).", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "object", + "description": "An object containing a 'csvData' string property with the translated texts in CSV format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate CSV files containing multiple translations of input texts across specified target languages for localization, analysis, or batch export purposes. It is ideal when structured CSV output is needed for integration with spreadsheets or translation management systems.", + "limitations": "The tool does not perform the actual text translation itself; it requires integration with a translation service or calling agent to provide translated content in advance or must be combined with a supported translation API. It also does not support streaming large data or complex CSV formatting beyond delimiter and headers.", + "examples": [ + "Translate a list of English product descriptions into French and German and generate a CSV file for localization upload.", + "Generate a CSV of user interface strings originally in Spanish translated into English and Japanese for app internationalization.", + "Create a CSV for survey questions translated from English into multiple target languages with language-code headers." + ] + }, + "tags": [ + "translation", + "csv", + "multilanguage", + "localization", + "export" + ], + "examples": [ + { + "inputJson": "{\"texts\":[\"Hello\",\"Goodbye\"],\"sourceLanguage\":\"en\",\"targetLanguages\":[\"fr\",\"de\"],\"includeHeaders\":true,\"delimiter\":\",\"}", + "description": "Translate English greetings into French and German and generate CSV with headers." + }, + { + "inputJson": "{\"texts\":[\"Bienvenue\",\"Merci\"],\"sourceLanguage\":\"fr\",\"targetLanguages\":[\"en\"],\"includeHeaders\":false,\"delimiter\":\";\"}", + "description": "Translate French phrases into English and generate CSV without headers using semicolon delimiter." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "CSV", + "context": null + } + }, + { + "name": "translation.createParagraph", + "description": "This tool accepts a short text input and generates a translated paragraph in the target language, optionally localizing style and tone. It processes the given source text, translates it while keeping meaning and context, and outputs a coherent, fluent paragraph suitable for professional or casual use.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text to translate into a paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code of the source text (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code to translate the text into (e.g., 'fr' for French).", + "required": true, + "defaultValue": "" + }, + { + "name": "formality", + "type": "string", + "description": "Tone of the translated paragraph, such as 'formal', 'informal', or 'neutral'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in characters) of the generated paragraph.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated paragraph text in the target language." + }, + "aiAgent": { + "useCase": "Use this tool when a coherent, context-aware translated paragraph is needed from a short source text, such as for document localization, marketing content adaptation, or user communication in another language. It is especially useful when tone and style in the target language should be controlled or adjusted.", + "limitations": "The tool cannot translate multiple paragraphs at once or handle extremely long texts efficiently. It may not perfectly preserve idiomatic or cultural nuances beyond basic tone adjustments. It does not generate paragraphs from scratch without source text.", + "examples": [ + "Translate a short product description from English to French with a formal tone.", + "Create an informally toned Spanish paragraph from an English customer support message.", + "Generate a neutral tone Japanese paragraph from a German announcement." + ] + }, + "tags": [ + "translation", + "language", + "paragraph", + "localization", + "multilingual", + "text-generation" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Our company values innovation and customer satisfaction.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"formality\":\"formal\",\"maxLength\":500}", + "description": "Translate a short business statement from English to formal French." + }, + { + "inputJson": "{\"sourceText\":\"Please remember to submit your report by Friday.\",\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"formality\":\"informal\",\"maxLength\":300}", + "description": "Create an informally toned reminder message in Spanish from English." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Paragraph", + "context": null + } + }, + { + "name": "translation.createEvent", + "description": "Creates a structured translation event record for analytics purposes. Accepts details about source text, target language, translation quality metrics, translator info, and timestamps. Processes inputs into a standardized event object that can be used for tracking and analyzing translation activities.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text content before translation.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code (ISO 639-1) into which the text is translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "translatorId", + "type": "string", + "description": "Identifier for the translator or translation system performing the translation.", + "required": false, + "defaultValue": "" + }, + { + "name": "translationQualityScore", + "type": "number", + "description": "Numeric score indicating the quality of the translation, e.g., confidence or human rating, from 0 to 1.", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted date-time string marking when the translation event occurred.", + "required": false, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (ISO 639-1) of the source text. Defaults to detected language if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A translation event object containing the provided inputs along with a generated unique event ID and a standardized timestamp." + }, + "aiAgent": { + "useCase": "Use this tool to log or generate standardized events representing individual translation actions or transactions, such as when recording translation activities in analytics platforms or monitoring translation throughput and quality. Useful for tracking translator performance, system translations, and quality assessments over time.", + "limitations": "This tool does not perform any translation itself nor evaluate translation quality beyond storing a provided quality score. It only creates event records; further analytics or aggregation must be done separately.", + "examples": [ + "Create a translation event for a text translated from English to French with a quality score of 0.95 by translator ID 'translator123'.", + "Generate an event logging a system-generated translation from Spanish to German without a quality score.", + "Record a translation event for a manual translation with source text, target language, and timestamp provided." + ] + }, + "tags": [ + "translation", + "analytics", + "event", + "logging", + "quality", + "language", + "tracking" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Hello world\",\"targetLanguage\":\"fr\",\"translatorId\":\"translator123\",\"translationQualityScore\":0.95,\"timestamp\":\"2024-06-01T12:00:00Z\",\"sourceLanguage\":\"en\"}", + "description": "Event representing a high-confidence manual translation from English to French." + }, + { + "inputJson": "{\"sourceText\":\"Hola mundo\",\"targetLanguage\":\"de\",\"timestamp\":\"2024-06-01T13:00:00Z\"}", + "description": "Event logging a system translation from Spanish to German without a quality score or translator ID." + }, + { + "inputJson": "{\"sourceText\":\"Good morning\",\"targetLanguage\":\"es\",\"translatorId\":\"translator456\"}", + "description": "Event for a manual translation from unknown source language with translator ID but no timestamp or quality score." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Event", + "context": null + } + }, + { + "name": "translation.createContainer", + "description": "Creates a configurable translation container that bundles multiple translation engines and language preferences into a reusable infrastructure component. Accepts configuration parameters specifying supported languages, preferred translation services, fallback options, and resource limits. Outputs a container object that manages translation requests with consistent behavior across deployments.", + "category": "translation", + "parameters": [ + { + "name": "containerName", + "type": "string", + "description": "A unique name identifier for the translation container to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "supportedLanguages", + "type": "array", + "description": "List of language codes (e.g., ['en','fr','es']) that the container will support for translation.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "preferredEngines", + "type": "array", + "description": "An ordered list of translation engine identifiers to use, defining failover priority.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "fallbackLanguage", + "type": "string", + "description": "Default language code to fallback on if translation to requested language is unavailable.", + "required": false, + "defaultValue": "en" + }, + { + "name": "maxRequestsPerMinute", + "type": "number", + "description": "Rate limit controlling how many translation requests the container can process per minute.", + "required": false, + "defaultValue": "60" + }, + { + "name": "enableCaching", + "type": "boolean", + "description": "Flag to enable or disable caching of recent translations for performance.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for tagging or annotating the container with additional info.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created translation container with configuration details, unique ID, creation timestamp, and endpoint information for sending translation requests." + }, + "aiAgent": { + "useCase": "Use this tool when you need to establish a reusable, configurable translation service container that abstracts multiple translation engines and language settings for streamlined deployment and management. Ideal for applications requiring consistent translation infrastructure across environments with customization options.", + "limitations": "This tool does not perform actual text translation itself; it only creates the container infrastructure that orchestrates translation engines. It also does not manage translation engine credentials or networks.", + "examples": [ + "Create a translation container supporting English, French, and Spanish using Google and Microsoft translators with caching enabled.", + "Set up a container with a high request rate limit and fallback to English when a target language is unsupported.", + "Configure a container tagged for medical documentation translation with preferred engines and metadata." + ] + }, + "tags": [ + "translation", + "infrastructure", + "container", + "localization", + "multi-engine", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"containerName\":\"globalTranslator\",\"supportedLanguages\":[\"en\",\"fr\",\"es\"],\"preferredEngines\":[\"googleTranslate\",\"microsoftTranslator\"],\"fallbackLanguage\":\"en\",\"maxRequestsPerMinute\":120,\"enableCaching\":true}", + "description": "Creates a container supporting English, French, Spanish with favored Google and Microsoft engines, 120 requests/min rate limit and caching." + }, + { + "inputJson": "{\"containerName\":\"medDocTranslator\",\"supportedLanguages\":[\"en\",\"de\"],\"preferredEngines\":[\"customMedicalEngine\"],\"enableCaching\":false,\"metadata\":{\"domain\":\"medical\",\"compliance\":\"HIPAA\"}}", + "description": "Creates a specialized medical translation container for English-German with a custom engine, caching disabled, and compliance tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Container", + "context": null + } + }, + { + "name": "translation.createOrder", + "description": "This tool accepts a translation order request including source text, source language, target language(s), and optional preferences. It processes these inputs to create a structured translation order object for downstream translation workflows or vendor management. The output is a detailed order summary including unique order ID, languages, word count, and delivery preferences.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original text that needs to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The ISO code or name of the original language of the source text.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "Array of ISO codes or names for the target languages to translate into.", + "required": true, + "defaultValue": "" + }, + { + "name": "deadline", + "type": "string", + "description": "Optional deadline for the translation delivery in ISO 8601 date/time format.", + "required": false, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Priority level of the order - e.g., 'normal', 'high', or 'urgent'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "specialInstructions", + "type": "string", + "description": "Optional special instructions or formatting requirements for translators.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured translation order summary including a unique order ID, source and target languages, word count of the source text, priority, deadline, special instructions, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when generating structured translation orders from raw user requests or interfaces. It standardizes order information to pass to translation teams, APIs, or platforms, ensuring necessary details like source/target languages and deadlines are specified clearly for processing.", + "limitations": "This tool does not perform translation itself, nor does it handle payment or vendor selection. It only structures order data from input parameters.", + "examples": [ + "Create a translation order from English to Spanish and French with high priority and a deadline next week.", + "Generate a standard translation order for a German document to be translated into English without special instructions.", + "Make an urgent translation order from Japanese to English and Korean with specific formatting instructions." + ] + }, + "tags": [ + "translation", + "order", + "creation", + "language", + "workflow", + "localization" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Welcome to our website.\",\"sourceLanguage\":\"en\",\"targetLanguages\":[\"es\",\"fr\"],\"deadline\":\"2024-07-05T12:00:00Z\",\"priorityLevel\":\"high\",\"specialInstructions\":\"Please maintain brand terminology.\"}", + "description": "Create a translation order from English to Spanish and French with a high priority and a fixed delivery deadline, including special instructions." + }, + { + "inputJson": "{\"sourceText\":\"Dokument zur Geschäftsleitung.\",\"sourceLanguage\":\"de\",\"targetLanguages\":[\"en\"],\"priorityLevel\":\"normal\"}", + "description": "Generate a standard translation order from German to English without a deadline or special instructions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Order", + "context": null + } + }, + { + "name": "translation.createNotification", + "description": "This tool generates a notification message translated into a specified target language. It accepts input text along with the target language code and optional notification context to tailor the translation style. The output is a JSON object containing the translated notification message ready for use in multilingual communication.", + "category": "translation", + "parameters": [ + { + "name": "sourceText", + "type": "string", + "description": "The original notification text to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The BCP-47 language code indicating the language into which the text should be translated (e.g., 'en', 'es', 'fr').", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Optional parameter to specify the notification context such as 'security', 'reminder', or 'error' to adapt the tone and terminology of the translation.", + "required": false, + "defaultValue": "" + }, + { + "name": "formalTone", + "type": "boolean", + "description": "Optional flag to indicate whether the translated notification should use a formal tone (true) or informal tone (false).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the translated notification text suitable for user display in the target language." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate notification messages for users in different languages, adapting style and tone based on context and language preferences. It is ideal for scenarios requiring localized communication such as alerts, reminders, or status updates in multilingual applications.", + "limitations": "This tool does not generate original notification content; it only translates existing text. It may not handle idiomatic expressions or highly technical jargon perfectly and relies on accurate input language codes and context for best results.", + "examples": [ + "Translate a reminder notification 'Your session will expire soon' into French with a formal tone.", + "Generate a security alert notification in Spanish using informal tone based on the text 'Unusual login detected from your account.'", + "Create an error notification translated into German without specifying context or tone." + ] + }, + "tags": [ + "translation", + "notification", + "multilingual", + "localization", + "communication" + ], + "examples": [ + { + "inputJson": "{\"sourceText\":\"Your session will expire soon.\",\"targetLanguage\":\"fr\",\"context\":\"reminder\",\"formalTone\":true}", + "description": "Translates a session expiration reminder into French using formal tone." + }, + { + "inputJson": "{\"sourceText\":\"Unusual login detected from your account.\",\"targetLanguage\":\"es\",\"context\":\"security\",\"formalTone\":false}", + "description": "Generates a Spanish security alert notification with an informal tone." + }, + { + "inputJson": "{\"sourceText\":\"Error processing your request.\",\"targetLanguage\":\"de\"}", + "description": "Creates a German error notification with default tone and no specific context." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Notification", + "context": null + } + }, + { + "name": "translation.createKey", + "description": "Generates a secure cryptographic key for use in translation encryption or decryption processes. Accepts parameters to specify key type, length, and usage purpose, then produces a key string output suitable for securing translated data exchanges or storage.", + "category": "translation", + "parameters": [ + { + "name": "keyType", + "type": "string", + "description": "Type of cryptographic key to generate, e.g., 'AES' or 'RSA'.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyLength", + "type": "number", + "description": "Length of the key in bits, e.g., 256 for AES-256.", + "required": true, + "defaultValue": "" + }, + { + "name": "usage", + "type": "string", + "description": "Intended usage of the key such as 'encryption', 'decryption', or 'both'.", + "required": false, + "defaultValue": "both" + }, + { + "name": "exportFormat", + "type": "string", + "description": "Format for exported key output, such as 'base64' or 'hex'.", + "required": false, + "defaultValue": "base64" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated cryptographic key string and metadata including key type, length, usage, and export format." + }, + "aiAgent": { + "useCase": "Use this tool when the agent requires a secure cryptographic key to encrypt or decrypt translation data securely between parties or for storing translated content in encrypted form. It helps ensure confidentiality during translation workflows.", + "limitations": "This tool generates keys only; it does not perform encryption or decryption of text itself. It also does not manage key lifecycle or storage beyond providing the generated key string.", + "examples": [ + "Generate an AES 256-bit key for encrypting translation data.", + "Create an RSA 2048-bit key for decrypting secured translation files." + ] + }, + "tags": [ + "translation", + "security", + "encryption", + "key generation", + "cryptography" + ], + "examples": [ + { + "inputJson": "{\"keyType\":\"AES\",\"keyLength\":256,\"usage\":\"encryption\",\"exportFormat\":\"base64\"}", + "description": "Generate a 256-bit AES key for encrypting translated text, output in base64." + }, + { + "inputJson": "{\"keyType\":\"RSA\",\"keyLength\":2048,\"usage\":\"both\",\"exportFormat\":\"hex\"}", + "description": "Create a 2048-bit RSA key pair for encryption and decryption of translation data, exported in hex format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Key", + "context": null + } + }, + { + "name": "translation.createAlert", + "description": "Generates a security alert message in a target language based on an input alert template and context information. Accepts input alert text in a source language along with relevant security context data, translates the alert content accurately while preserving critical security terms, and outputs a localized alert message suitable for distribution to users in the target language.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') of the input alert text to be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code of the language into which the alert should be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "alertTemplate", + "type": "string", + "description": "The alert message template text in the source language, potentially with placeholders for dynamic data.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextData", + "type": "object", + "description": "An object containing key-value pairs to replace placeholders in the alert template and provide contextual details (like threat type, urgency level).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "preserveSecurityTerms", + "type": "boolean", + "description": "If true, key security-related terms should not be translated but kept in the source language to maintain clarity.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the localized alert message string as 'translatedAlert', and metadata including language codes, and applied context data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert predefined security alert messages into multiple target languages while embedding dynamic context details, ensuring that security terminology remains accurate and understandable to localized audiences. Ideal for system administrators or security operations centers that must communicate alerts internationally.", + "limitations": "This tool translates alert messages but does not perform threat analysis or generate new alert content beyond the supplied template. It relies on correct input context data to fill placeholders appropriately, and may not handle idiomatic or cultural nuances perfectly.", + "examples": [ + "Translate a phishing warning alert from English to Spanish embedding current phishing campaign details.", + "Create a localized malware outbreak alert in French using a standard alert template and threat attributes.", + "Generate a German security alert for a detected vulnerability including dynamic severity and affected system details." + ] + }, + "tags": [ + "translation", + "security", + "alert", + "localization", + "multilingual" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"es\",\"alertTemplate\":\"Security alert: Detected {threatType} attack with severity {severityLevel}.\",\"contextData\":{\"threatType\":\"phishing\",\"severityLevel\":\"high\"},\"preserveSecurityTerms\":true}", + "description": "Translate a phishing attack alert from English to Spanish, embedding threat type and severity, preserving security terms." + }, + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"alertTemplate\":\"Urgent: {affectedSystems} have a {threatType} vulnerability.\",\"contextData\":{\"affectedSystems\":\"Servers in data center 3\",\"threatType\":\"ransomware\"},\"preserveSecurityTerms\":true}", + "description": "Create a French alert concerning ransomware vulnerability affecting specified systems." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Alert", + "context": null + } + }, + { + "name": "translation.createPullRequest", + "description": "Creates a code pull request that integrates translated text files into a repository. Accepts source language, target language, file paths to translated content, and repository details. Generates a pull request with translation updates, ready for review and merging.", + "category": "translation", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the git repository where the pull request will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceBranch", + "type": "string", + "description": "Name of the branch from which to create the pull request (usually the main or master branch).", + "required": true, + "defaultValue": "main" + }, + { + "name": "targetBranch", + "type": "string", + "description": "Name of the branch where translation changes will be committed and the pull request targeted.", + "required": true, + "defaultValue": "translation-update" + }, + { + "name": "translatedFiles", + "type": "array", + "description": "List of objects representing translated files, each with keys 'filePath' and 'content' containing the path and translated text respectively.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The original language code of the source text, e.g., 'en'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The target language code for the translation, e.g., 'fr'.", + "required": true, + "defaultValue": "" + }, + { + "name": "pullRequestTitle", + "type": "string", + "description": "Title for the pull request describing the translation update.", + "required": false, + "defaultValue": "Add translation for target language" + }, + { + "name": "pullRequestDescription", + "type": "string", + "description": "Detailed description for the pull request explaining translation scope and details.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Details about the created pull request including URL, branch names, and commit SHA. Contains keys: pullRequestUrl (string), sourceBranch (string), targetBranch (string), commitSha (string)." + }, + "aiAgent": { + "useCase": "Use this tool when you have completed machine or human translations of codebase text resources and need to automate integration by creating a pull request in the repository. It streamlines merging translation updates for review and version control.", + "limitations": "This tool does not perform translations itself and requires valid git repository access and permissions; it cannot resolve merge conflicts or verify translation quality.", + "examples": [ + "Create a PR with updated French translations for the UI text files.", + "Integrate Spanish translated content into the development branch via a pull request.", + "Submit a pull request adding new German translation files to the repo for review." + ] + }, + "tags": [ + "translation", + "pullRequest", + "codeIntegration", + "localization", + "automation" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/app\",\"sourceBranch\":\"main\",\"targetBranch\":\"translation-fr\",\"translatedFiles\":[{\"filePath\":\"locales/fr.json\",\"content\":\"{\\\"greeting\\\":\\\"Bonjour\\\"}\"}],\"sourceLanguage\":\"en\",\"targetLanguage\":\"fr\",\"pullRequestTitle\":\"Add French translations\",\"pullRequestDescription\":\"Added initial French translations for user interface.\"}", + "description": "Create a pull request that adds French translation file to the repository." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "PullRequest", + "context": null + } + }, + { + "name": "translation.createLead", + "description": "This tool accepts lead information in a source language and translates relevant fields into a target language to create a business lead record suitable for international sales and marketing teams. It processes attributes such as name, company, role, and description, returning a standardized, translated lead object to help cross-lingual lead generation.", + "category": "translation", + "parameters": [ + { + "name": "leadData", + "type": "object", + "description": "An object containing lead fields including name, company, role, description, and contact info in the source language.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The ISO language code representing the input text language of the lead data.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The ISO language code for the language into which the lead data should be translated.", + "required": true, + "defaultValue": "" + }, + { + "name": "fieldsToTranslate", + "type": "array", + "description": "An array of strings specifying which lead fields should be translated (e.g., ['name', 'role', 'description']).", + "required": false, + "defaultValue": "[\"name\",\"role\",\"description\"]" + }, + { + "name": "includeOriginalTexts", + "type": "boolean", + "description": "Whether to include the original untranslated text fields in the output for reference.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A lead object with specified fields translated into the target language, including contact information unchanged. If requested, original texts are preserved alongside translations." + }, + "aiAgent": { + "useCase": "Use this tool when generating new sales leads or contacts from multilingual sources that require accurate translation of key descriptive fields for business and marketing teams operating in different languages. It helps normalize and internationalize lead data.", + "limitations": "This tool does not validate lead contact information accuracy or format. It also cannot add leads to CRM systems directly or enrich leads beyond translating given fields.", + "examples": [ + "Translate lead profile from Spanish to English to onboard new international clients.", + "Create a lead in French from lead data submitted in German for a marketing campaign.", + "Prepare a translated lead contact from Japanese to English with role and description fields translated." + ] + }, + "tags": [ + "translation", + "lead generation", + "business", + "multilingual", + "sales", + "marketing" + ], + "examples": [ + { + "inputJson": "{\"leadData\":{\"name\":\"Juan Pérez\",\"company\":\"Tecnología Avanzada\",\"role\":\"Gerente de Proyecto\",\"description\":\"Encargado de la coordinación de proyectos TI.\",\"email\":\"juan.perez@example.com\"},\"sourceLanguage\":\"es\",\"targetLanguage\":\"en\",\"fieldsToTranslate\":[\"name\",\"role\",\"description\"],\"includeOriginalTexts\":true}", + "description": "Translate a Spanish lead's name, role, and description into English, including original Spanish texts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Lead", + "context": null + } + }, + { + "name": "translation.createCSV", + "description": "This tool accepts an array of objects containing text segments in multiple languages and generates a CSV string with translatable fields. It processes input by organizing keys as column headers (e.g., source and target languages) and outputs a CSV formatted string suitable for translation workflows or import into translation management systems.", + "category": "translation", + "parameters": [ + { + "name": "translations", + "type": "array", + "description": "An array of objects where each object has keys representing language codes and values as text strings to be included in the CSV rows.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceLanguage", + "type": "string", + "description": "The language code for the source language column in the CSV, used as one of the headers.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "Array of target language codes that will be used as CSV column headers besides the source language.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include a header row with language codes in the CSV output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character to use as CSV delimiter, default is comma (,).", + "required": false, + "defaultValue": "," + } + ], + "returns": { + "type": "object", + "description": "An object containing a single field 'csvString', which is the complete CSV string representing the translations." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create CSV files from multilingual text data, especially for localization or translation workflow systems that accept CSV imports. Useful for preparing language translation sheets for translators or TMS tools.", + "limitations": "This tool does not perform actual translation; it only formats existing multilingual text data into a CSV. It expects well-structured input with consistent language key usage across input objects.", + "examples": [ + "Create CSV from translation objects with English as source and French, Spanish as targets.", + "Generate a CSV translation sheet with header row disabled.", + "Customize CSV delimiter to semicolon for regional compatibility." + ] + }, + "tags": [ + "translation", + "CSV", + "localization", + "multilingual", + "data export" + ], + "examples": [ + { + "inputJson": "{\"translations\":[{\"en\":\"Hello\",\"fr\":\"Bonjour\",\"es\":\"Hola\"},{\"en\":\"Goodbye\",\"fr\":\"Au revoir\",\"es\":\"Adiós\"}],\"sourceLanguage\":\"en\",\"targetLanguages\":[\"fr\",\"es\"],\"includeHeaders\":true,\"delimiter\":\",\"}", + "description": "Generate a translation CSV with English source and French and Spanish target columns, including headers and default comma delimiter." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "CSV", + "context": null + } + }, + { + "name": "translation.createEndpoint", + "description": "Creates a ready-to-deploy translation API endpoint that accepts text in a source language and returns translations in specified target languages. Inputs include source and target languages, translation engine selection, and optional parameters like formal tone or slang filtering. Outputs include the endpoint URL and example usage code snippets.", + "category": "translation", + "parameters": [ + { + "name": "sourceLanguage", + "type": "string", + "description": "The ISO code of the source language text to be translated from (e.g., 'en' for English).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguages", + "type": "array", + "description": "Array of ISO language codes into which the text will be translated (e.g., ['fr','es']).", + "required": true, + "defaultValue": "" + }, + { + "name": "translationEngine", + "type": "string", + "description": "The translation engine to use (e.g., 'google', 'microsoft', 'deepl').", + "required": false, + "defaultValue": "google" + }, + { + "name": "formalTone", + "type": "boolean", + "description": "Indicates if the translation should use a formal tone when the language supports it.", + "required": false, + "defaultValue": "false" + }, + { + "name": "filterSlang", + "type": "boolean", + "description": "Whether to filter out slang and informal expressions from the output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "responseFormat", + "type": "string", + "description": "Output format of the translation response, e.g., 'json' or 'xml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "customGlossary", + "type": "object", + "description": "Optional glossary terms to apply during translation as key-value pairs (term: translation).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated API endpoint URL, supported methods, sample request and response examples, and usage instructions." + }, + "aiAgent": { + "useCase": "Use this tool to quickly create a deployable translation API endpoint for applications requiring multi-language support. Ideal when an agent needs to integrate or generate translation services with customizable options like tone, slang filtering, and glossary support without manually coding backend endpoints.", + "limitations": "Does not provide real-time dynamic translation beyond initial endpoint creation. The quality depends on the selected translation engine and cannot fully guarantee idiomatic or context-aware output. Does not handle audio or image translations.", + "examples": [ + "Create a translation endpoint that translates English text into French and Spanish using Google engine with formal tone.", + "Generate a translation API endpoint for German to Japanese without slang filtering and with a custom glossary.", + "Create a JSON output translation endpoint from Italian to multiple languages using DeepL engine." + ] + }, + "tags": [ + "translation", + "api", + "endpoint", + "language", + "multilingual", + "automation" + ], + "examples": [ + { + "inputJson": "{\"sourceLanguage\":\"en\",\"targetLanguages\":[\"fr\",\"es\"],\"translationEngine\":\"google\",\"formalTone\":true,\"filterSlang\":false}", + "description": "Generate a Google-powered translation API endpoint translating English text into French and Spanish with formal tone enabled." + }, + { + "inputJson": "{\"sourceLanguage\":\"de\",\"targetLanguages\":[\"ja\"],\"translationEngine\":\"microsoft\",\"formalTone\":false,\"filterSlang\":true,\"customGlossary\":{\"Haus\":\"家\"}}", + "description": "Create a Microsoft translation endpoint translating German to Japanese filtering slang and applying a custom glossary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Endpoint", + "context": null + } + }, + { + "name": "copywriting.analyzeMetric", + "description": "Analyzes specified marketing copywriting performance metrics provided as input data to evaluate effectiveness. The tool processes numeric or structured metric inputs such as engagement, conversion, click-through rates, or sentiment scores, applying statistical and trend analysis to generate an interpretive summary report indicating strengths, weaknesses, and optimization opportunities in promotional texts.", + "category": "copywriting", + "parameters": [ + { + "name": "metricName", + "type": "string", + "description": "Name of the metric to analyze (e.g., conversionRate, clickThroughRate, engagementScore).", + "required": true, + "defaultValue": "" + }, + { + "name": "metricData", + "type": "array", + "description": "Array of numeric values or objects representing the metric data points collected over time or campaigns.", + "required": true, + "defaultValue": "" + }, + { + "name": "timePeriod", + "type": "string", + "description": "Optional: Time period for analysis (e.g., last30Days, Q1_2024), helps contextualize trends.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Flag indicating whether to perform trend analysis on the metric data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "benchmarkValue", + "type": "number", + "description": "Optional benchmark value to compare metric performance against industry or historical standards.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including summary insights, trend assessment, benchmark comparison, and recommendations for improving copywriting performance based on the metric data." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the effectiveness of copywriting-related marketing metrics to guide optimization efforts. Useful for analyzing performance data such as engagement or conversion rates to generate actionable insights and compare against benchmarks.", + "limitations": "This tool does not generate copywriting text itself or collect raw metric data; it requires input metrics pre-collected and focuses solely on analysis and interpretation.", + "examples": [ + "Analyze the conversionRate metric for last30Days to identify trends and compare to benchmark 3.5%.", + "Evaluate engagementScore data over Q1_2024 with trend analysis enabled to extract actionable insights for improving copywriting impact." + ] + }, + "tags": [ + "copywriting", + "analysis", + "marketing-metrics", + "performance", + "trend-analysis", + "conversion", + "engagement" + ], + "examples": [ + { + "inputJson": "{\"metricName\":\"conversionRate\",\"metricData\":[2.3,3.1,3.8,4.0,3.5],\"timePeriod\":\"last30Days\",\"includeTrendAnalysis\":true,\"benchmarkValue\":3.5}", + "description": "Analyze recent conversion rates to determine trends and compare to a benchmark value." + }, + { + "inputJson": "{\"metricName\":\"engagementScore\",\"metricData\":[75,78,80,79,82],\"timePeriod\":\"Q1_2024\",\"includeTrendAnalysis\":true,\"benchmarkValue\":80}", + "description": "Evaluate engagement score over a quarter to generate insights and check performance against benchmark." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Metric", + "context": null + } + }, + { + "name": "copywriting.analyzeCSV", + "description": "This tool accepts a CSV file containing marketing or promotional text data, analyzes the textual content to identify key marketing themes, sentiment, readability, and effectiveness indicators, and produces a structured report summarizing these insights to aid in optimizing copywriting strategies.", + "category": "copywriting", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The raw CSV data as a string including marketing text entries to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "textColumn", + "type": "string", + "description": "The name of the CSV column that contains the marketing copy text to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "sentimentAnalysis", + "type": "boolean", + "description": "Flag to enable sentiment analysis on the text content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "readabilityMetrics", + "type": "boolean", + "description": "Flag to calculate readability scores such as Flesch-Kincaid grade level.", + "required": false, + "defaultValue": "true" + }, + { + "name": "keywordExtraction", + "type": "boolean", + "description": "Flag to extract and highlight key marketing keywords and themes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language of the marketing text for appropriate processing, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report including sentiment summary, readability scores, keyword themes, and suggestions for improving marketing copy effectiveness." + }, + "aiAgent": { + "useCase": "Use this tool when provided with bulk marketing or promotional text data in CSV format to extract actionable insights such as sentiment, readability, and thematic keywords that can help in refining and optimizing marketing copy strategies. It is ideal for content marketers, copywriters, and analysts working with large text datasets to improve messaging effectiveness.", + "limitations": "The tool analyzes only the textual content within a specified CSV column and cannot interpret images or non-text fields. It does not generate new marketing copy but provides analysis and recommendations based on given text. Language support is primarily for widely used languages such as English.", + "examples": [ + "Analyze sentiment and keywords from a CSV of promotional email texts.", + "Evaluate readability and extract marketing themes from ad copy data in CSV.", + "Provide an overview report on the effectiveness of product descriptions stored in CSV format." + ] + }, + "tags": [ + "copywriting", + "analysis", + "CSV", + "marketing", + "sentiment", + "readability", + "keywords" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"id,text\\n1,Save big on our summer sale!\\n2,Introducing the all-new smartphone with cutting-edge features.\",\"textColumn\":\"text\",\"sentimentAnalysis\":true,\"readabilityMetrics\":true,\"keywordExtraction\":true,\"language\":\"en\"}", + "description": "Analyze a CSV with two rows of promotional text to extract sentiment, readability scores, and key marketing keywords." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "CSV", + "context": null + } + }, + { + "name": "copywriting.uploadReport", + "description": "Uploads a written report document to a cloud storage or content management system, accepting the report content in text or file form, applying optional metadata such as title, author, and tags, and returning a confirmation with the storage location URL and upload status.", + "category": "copywriting", + "parameters": [ + { + "name": "reportTitle", + "type": "string", + "description": "The title of the report to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportContent", + "type": "string", + "description": "Text content of the report to upload, if no file is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "reportFilePath", + "type": "string", + "description": "File path or URL of the report file to upload, if uploading from a file instead of text.", + "required": false, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name of the author of the report.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords describing the report for indexing and search purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "uploadDestination", + "type": "string", + "description": "Target destination identifier or URL where the report should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing report with the same title at the destination.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, unique report ID or URL, and a message explaining the result." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload marketing or project reports written or generated by AI to a designated cloud repository or CMS, optionally tagging the document for future retrieval. This allows seamless integration of report generation and publication workflows.", + "limitations": "This tool does not generate report content; it only uploads existing reports. It requires proper access credentials to the upload destination which must be managed externally.", + "examples": [ + "Upload the latest quarterly marketing report as a PDF file to our cloud drive with relevant tags.", + "Save a text version of the sales performance report authored by Jane Doe into the CMS under 'Q1 Reports'.", + "Overwrite the existing annual report in the shared folder with the updated version and tag it as 'final'." + ] + }, + "tags": [ + "copywriting", + "uploading", + "reports", + "document management", + "cloud storage" + ], + "examples": [ + { + "inputJson": "{\"reportTitle\":\"Q2 Marketing Performance\",\"reportContent\":\"This is the textual content of the Q2 marketing report.\",\"uploadDestination\":\"https://cloudstorage.example.com/reports/marketing\",\"tags\":[\"Q2\",\"marketing\",\"performance\"],\"authorName\":\"Alice Johnson\"}", + "description": "Uploading a textual marketing report with tags and author information to a cloud storage URL." + }, + { + "inputJson": "{\"reportTitle\":\"Annual Sales Report 2023\",\"reportFilePath\":\"/local/path/annual_sales_2023.pdf\",\"uploadDestination\":\"s3://company-reports/annual/\",\"overwriteExisting\":true}", + "description": "Uploading an existing PDF file report to an S3 bucket destination with overwrite permission." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Report", + "context": null + } + }, + { + "name": "copywriting.sendMessage", + "description": "Sends a marketing or promotional message to a list of recipients. Accepts message content, recipient contacts, and optional scheduling and personalization parameters. Processes the inputs to dispatch messages via email or SMS and returns a summary of delivery results including successes and failures.", + "category": "copywriting", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The main text content of the marketing message to send, supporting placeholders for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "Array of recipient contacts, each as an object with contact details like email or phone number and optional metadata for personalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "channel", + "type": "string", + "description": "Delivery channel to use, either 'email' or 'sms'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "sendAt", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying when to send the message; if omitted, sends immediately.", + "required": false, + "defaultValue": "" + }, + { + "name": "subjectLine", + "type": "string", + "description": "Subject line of the message when sending via email; ignored for SMS.", + "required": false, + "defaultValue": "" + }, + { + "name": "fromName", + "type": "string", + "description": "Display name of the sender, shown in the message header or SMS sender ID.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableTracking", + "type": "boolean", + "description": "Flag indicating whether to enable click and open tracking for email messages.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the sending operation including total recipients, number successfully queued, failed deliveries with error details, and a unique batch ID for reference." + }, + "aiAgent": { + "useCase": "Use this tool when needing to send promotional or marketing messages to multiple recipients through email or SMS. Suitable for campaigns requiring personalization, scheduling, and delivery tracking. Ideal for automated marketing workflows or outreach agents.", + "limitations": "Does not generate message content automatically; requires complete message text input. Cannot manage recipient list imports or CRM synchronization. Limited to email and SMS channels only, without support for other social or messaging platforms.", + "examples": [ + "Send a scheduled marketing email with personalized greetings to a customer list.", + "Dispatch an immediate SMS alert to a group with a promotional offer.", + "Send a newsletter email with tracking enabled and a custom sender name." + ] + }, + "tags": [ + "marketing", + "communication", + "email", + "sms", + "messaging", + "promotion", + "automation" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"Hello {{firstName}}, check out our new product launch!\",\"recipientList\":[{\"email\":\"alice@example.com\",\"firstName\":\"Alice\"},{\"email\":\"bob@example.com\",\"firstName\":\"Bob\"}],\"channel\":\"email\",\"sendAt\":\"2024-07-01T09:00:00Z\",\"subjectLine\":\"New Product Launch!\",\"fromName\":\"Brand Team\",\"enableTracking\":true}", + "description": "Schedule an email campaign to multiple recipients with personalized greetings, custom sender name, and tracking enabled." + }, + { + "inputJson": "{\"messageContent\":\"Flash Sale! Get 20% off today only.\",\"recipientList\":[{\"phone\":\"+1234567890\"},{\"phone\":\"+1098765432\"}],\"channel\":\"sms\"}", + "description": "Send an immediate SMS marketing message to a list of phone numbers announcing a flash sale." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Message", + "context": null + } + }, + { + "name": "copywriting.renderFile", + "description": "Renders marketing and promotional copy as a formatted text file in specified file format (e.g., TXT, PDF). Accepts input text and style parameters, applies copywriting tone and formatting, and outputs a downloadable file suitable for campaigns or presentations.", + "category": "copywriting", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The marketing or promotional text content to render into a file.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Desired output file format, such as 'txt' or 'pdf'.", + "required": true, + "defaultValue": "txt" + }, + { + "name": "tone", + "type": "string", + "description": "Copywriting tone to apply, e.g., 'formal', 'friendly', or 'professional'.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "includeHeadings", + "type": "boolean", + "description": "Whether to add styled headings automatically based on text structure.", + "required": false, + "defaultValue": "false" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size to use in the rendered file, applicable to supported formats.", + "required": false, + "defaultValue": "12" + }, + { + "name": "fileName", + "type": "string", + "description": "Custom name for the output file without extension.", + "required": false, + "defaultValue": "marketing_copy" + } + ], + "returns": { + "type": "object", + "description": "An object containing the file content as base64 encoded string, file name with extension, and MIME type for download or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate professional, formatted marketing text files directly consumable for campaigns, presentations, or distribution. It converts raw promotional text into styled files in various formats with tone adaptation and optional formatting enhancements.", + "limitations": "The tool does not generate the copywriting content itself; it requires input text to format. Also, complex multi-page PDF layouts or images are not supported.", + "examples": [ + "Render a marketing script as a professional PDF file with formal tone.", + "Generate a plain text promotional flyer with friendly tone and default font size.", + "Create a styled marketing text file named 'SummerCampaign' in TXT format without headings." + ] + }, + "tags": [ + "copywriting", + "file rendering", + "marketing", + "text formatting", + "pdf", + "txt" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\"Introducing our new summer line of eco-friendly products! Save the planet in style.\",\"fileFormat\":\"pdf\",\"tone\":\"friendly\",\"includeHeadings\":true,\"fontSize\":14,\"fileName\":\"SummerPromo\"}", + "description": "Render a friendly tone PDF file with headings and custom font size for a summer product promotion." + }, + { + "inputJson": "{\"inputText\":\"Exclusive offer: Buy one, get one free.\",\"fileFormat\":\"txt\",\"tone\":\"professional\",\"includeHeadings\":false,\"fontSize\":12,\"fileName\":\"Offer\"}", + "description": "Create a plain TXT file with professional tone for an exclusive offer promotion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "File", + "context": null + } + }, + { + "name": "copywriting.buildDatabase", + "description": "This tool helps copywriters and marketing teams create a structured database of persuasive marketing content elements. It accepts arrays of copy snippets, product descriptions, target audience profiles, and campaign goals, then organizes and categorizes them into a searchable, filterable database output for efficient content planning and reuse.", + "category": "copywriting", + "parameters": [ + { + "name": "copySnippets", + "type": "array", + "description": "An array of short marketing text snippets or taglines to include in the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "productDescriptions", + "type": "array", + "description": "An array of detailed product or service descriptions to be catalogued.", + "required": false, + "defaultValue": "" + }, + { + "name": "targetAudiences", + "type": "array", + "description": "Profiles or segment descriptions of intended audiences for the marketing content.", + "required": false, + "defaultValue": "" + }, + { + "name": "campaignGoals", + "type": "array", + "description": "List of marketing campaign objectives or key results to align content with.", + "required": false, + "defaultValue": "" + }, + { + "name": "categorizationMethod", + "type": "string", + "description": "Method to categorize content entries, e.g., by product type, audience, or theme.", + "required": false, + "defaultValue": "theme" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to enrich database entries with metadata such as tone, length, or call-to-action type.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured database object containing organized marketing content entries indexed by categories and metadata, ready for deployment or further editing." + }, + "aiAgent": { + "useCase": "Use this tool when you need to consolidate disparate pieces of marketing copy and related content into a unified, structured database. This aids in content management, reuse, and strategic planning for campaigns targeting various audiences and goals.", + "limitations": "This tool does not generate new copy, evaluate copy effectiveness, or perform sentiment analysis; it strictly organizes existing content elements as provided.", + "examples": [ + "Build a database of short taglines and product descriptions for our new line of sportswear.", + "Organize our collected marketing snippets by target audience segments and campaign objectives.", + "Create a searchable content database from multiple sources to plan upcoming promotional campaigns." + ] + }, + "tags": [ + "copywriting", + "database", + "marketing", + "content-management", + "categorization", + "campaign-planning" + ], + "examples": [ + { + "inputJson": "{\"copySnippets\":[\"Feel the difference.\",\"Unleash your potential.\"],\"productDescriptions\":[\"Lightweight running shoes for everyday use.\",\"Breathable sports jacket with water resistance.\"],\"targetAudiences\":[\"Young adults aged 18-30 interested in fitness.\"],\"campaignGoals\":[\"Increase brand awareness.\",\"Boost online sales.\"],\"categorizationMethod\":\"audience\",\"includeMetadata\":true}", + "description": "Create a marketing content database categorizing snippets and descriptions by audience profile including metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Database", + "context": null + } + }, + { + "name": "copywriting.buildServer", + "description": "Generates persuasive and professional marketing copy for server infrastructure products or services. Accepts input parameters describing server features, target audience, tone, and key selling points. Processes this data to produce original promotional text pieces such as product descriptions, landing page content, or advertising slogans tailored to the server context.", + "category": "copywriting", + "parameters": [ + { + "name": "serverType", + "type": "string", + "description": "Type of server to promote (e.g., dedicated, cloud, VPS).", + "required": true, + "defaultValue": "" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Primary audience of the marketing copy (e.g., IT managers, small business owners).", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of important features or benefits to highlight in the content.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Overall tone of the writing, such as professional, casual, or technical.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "contentLength", + "type": "number", + "description": "Approximate desired length of the generated copy in words.", + "required": false, + "defaultValue": "150" + }, + { + "name": "useCase", + "type": "string", + "description": "Specific use case or scenario to emphasize (e.g., high availability, cost efficiency).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy text along with metadata like word count and suggested headline." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create targeted, effective marketing content for server hardware or hosting services. Ideal for generating product descriptions, promotional web copy, or ad slogans tailored to different server types and audiences.", + "limitations": "This tool cannot generate technical documentation, specifications, or highly detailed configuration instructions. It focuses on marketing language rather than technical accuracy or depth.", + "examples": [ + "Create marketing copy for a cloud server targeting startups with features emphasizing scalability and cost efficiency in a friendly tone.", + "Generate a professional product description for a dedicated server aimed at IT administrators highlighting security and performance.", + "Write a concise advertising slogan for a VPS hosting service emphasizing reliability and 24/7 support." + ] + }, + "tags": [ + "copywriting", + "marketing", + "infrastructure", + "server", + "promotional", + "content-generation" + ], + "examples": [ + { + "inputJson": "{\"serverType\":\"cloud\",\"targetAudience\":\"startups\",\"keyFeatures\":[\"scalability\",\"cost efficiency\",\"easy setup\"],\"tone\":\"friendly\",\"contentLength\":120,\"useCase\":\"scalable infrastructure for growth\"}", + "description": "Generate marketing copy for cloud servers targeting startups emphasizing scalability and cost efficiency with a friendly tone." + }, + { + "inputJson": "{\"serverType\":\"dedicated\",\"targetAudience\":\"IT administrators\",\"keyFeatures\":[\"security\",\"high performance\",\"custom configurations\"],\"tone\":\"professional\",\"contentLength\":200}", + "description": "Create a professional product description for dedicated servers highlighting security and performance features aimed at IT admins." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Server", + "context": null + } + }, + { + "name": "copywriting.buildAPI", + "description": "Generates clear, engaging marketing copy designed to promote and explain software APIs. Accepts API specifications and key selling points as input, processes them to craft persuasive text suitable for documentation, landing pages, or promotional materials. Outputs polished marketing content tailored to the API audience.", + "category": "copywriting", + "parameters": [ + { + "name": "apiName", + "type": "string", + "description": "The official name of the API to be promoted.", + "required": true, + "defaultValue": "" + }, + { + "name": "apiDescription", + "type": "string", + "description": "A brief technical description of what the API does.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyFeatures", + "type": "array", + "description": "List of the main features or benefits of the API to highlight in the copy.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "targetAudience", + "type": "string", + "description": "Description of the ideal users or customers of the API.", + "required": false, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Writing style or tone for the copy, e.g., professional, friendly, casual.", + "required": false, + "defaultValue": "professional" + }, + { + "name": "desiredOutputLength", + "type": "number", + "description": "Approximate length in words of the generated marketing text.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing copy as a string." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to produce persuasive and clear marketing text specifically aimed at promoting an API. Ideal for generating content for product landing pages, API documentation introductions, or promotional emails that communicate the value and features of a software API to developers or business users.", + "limitations": "It cannot generate detailed technical documentation or code samples; it focuses solely on marketing copy. The tool relies on clear and accurate input about the API's features and audience to produce effective outputs.", + "examples": [ + "Generate marketing copy for a new payment processing API highlighting ease of integration and security.", + "Create a friendly promotional paragraph for an AI-powered translation API targeting mobile app developers.", + "Write a professional description for a data analytics API emphasizing scalability and real-time insights." + ] + }, + "tags": [ + "copywriting", + "API", + "marketing", + "promotion", + "software", + "documentation", + "content generation" + ], + "examples": [ + { + "inputJson": "{\"apiName\":\"CloudPay API\",\"apiDescription\":\"An API for secure payment processing with fraud detection.\",\"keyFeatures\":[\"Easy integration\",\"Real-time fraud detection\",\"Supports multiple currencies\"],\"targetAudience\":\"e-commerce developers and payment solution providers\",\"tone\":\"professional\",\"desiredOutputLength\":180}", + "description": "Generate professional marketing copy for a secure payment API highlighting key benefits and audience." + }, + { + "inputJson": "{\"apiName\":\"LinguaAPI\",\"apiDescription\":\"An AI-powered translation API with support for 50+ languages.\",\"keyFeatures\":[\"Fast translations\",\"Highly accurate\",\"Supports text and voice\"],\"targetAudience\":\"mobile app developers\",\"tone\":\"friendly\",\"desiredOutputLength\":150}", + "description": "Create friendly, concise marketing text aimed at developers for an AI translation API." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "API", + "context": null + } + }, + { + "name": "copywriting.buildTest", + "description": "This tool accepts a coding function or module description in text form and generates a marketing-oriented test description or promotional tagline designed to highlight the quality and reliability of the code. It processes the input to craft copywriting content suitable for testing documentation, QA communications, or promotional materials, outputting a concise, persuasive test statement or tagline.", + "category": "copywriting", + "parameters": [ + { + "name": "codeDescription", + "type": "string", + "description": "A brief description or summary of the code, function, or module to be used as input for creating the test-related marketing copy.", + "required": true, + "defaultValue": "" + }, + { + "name": "testType", + "type": "string", + "description": "Type of test to promote (e.g., unit test, integration test, performance test). This helps tailor the marketing text to the test's nature.", + "required": false, + "defaultValue": "unit" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone for the promotional test text (e.g., professional, casual, enthusiastic).", + "required": false, + "defaultValue": "professional" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length for the generated marketing text to ensure brevity and fit marketing needs.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated marketing test copy text as a string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create marketing and promotional text specifically designed to showcase and 'sell' code quality assurance aspects through engaging and professional testing descriptions or taglines. It helps create appealing copy for technical audiences, QA documentation, or promotional channels about the robustness and reliability of software components.", + "limitations": "The tool generates marketing-style copy for tests, but does not create actual test code or scripts, nor does it validate the functionality of the codebase.", + "examples": [ + "Create a catchy unit test tagline promoting a new authentication module.", + "Generate professional promotional text highlighting the importance of integration tests for a payment gateway.", + "Draft a brief enthusiastic marketing statement about performance testing for a database connector." + ] + }, + "tags": [ + "copywriting", + "marketing", + "software testing", + "promotional text", + "code quality", + "test description" + ], + "examples": [ + { + "inputJson": "{\"codeDescription\":\"A function that handles user login authentication.\",\"testType\":\"unit\",\"tone\":\"professional\",\"maxLength\":120}", + "description": "Generating a professional unit test marketing tagline for a user login authentication function." + }, + { + "inputJson": "{\"codeDescription\":\"Module that processes payment transactions securely.\",\"testType\":\"integration\",\"tone\":\"enthusiastic\",\"maxLength\":150}", + "description": "Creating enthusiastic promotional text for integration testing a payment processing module." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Test", + "context": null + } + }, + { + "name": "content-creation.analyzeReference", + "description": "Analyzes a given reference text or citation to extract and summarize key bibliographic details, assess its relevance to specified topics, and identify potential citation quality indicators. Accepts plain text or structured reference inputs and outputs a detailed analysis report including summary, topic relevance, and quality metrics.", + "category": "content-creation", + "parameters": [ + { + "name": "referenceText", + "type": "string", + "description": "The full reference text or citation to be analyzed, in any common citation format.", + "required": true, + "defaultValue": "" + }, + { + "name": "topicKeywords", + "type": "array", + "description": "An optional list of keywords or topics to assess the reference's relevance against.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeQualityIndicators", + "type": "boolean", + "description": "Flag to indicate whether to include citation quality indicators such as journal impact or publication year relevance.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary of the reference, in characters.", + "required": false, + "defaultValue": "300" + } + ], + "returns": { + "type": "object", + "description": "An object containing the parsed citation details, a relevance score based on provided topics, a concise summary of the referenced work, and optional citation quality indicators." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract structured bibliographic data and meaningful content summaries from unstructured reference citations, especially to support research assistance, literature reviews, or automated content validation. It helps assess the relevance and reliability of references within a larger content creation or analysis workflow.", + "limitations": "This tool cannot access or verify the full content of the referenced source; it analyzes only what is provided in the reference text. It may struggle with poorly formatted or ambiguous citations and does not replace specialized bibliographic databases or manual expert review.", + "examples": [ + "Analyze a reference citation to generate a summary and relevance report for a scientific paper.", + "Assess the relevance of a list of references to specified research topics for content curation.", + "Extract key bibliographic details and quality indicators from a provided citation to create a standardized reference entry." + ] + }, + "tags": [ + "content-analysis", + "reference", + "bibliography", + "citation", + "summary", + "research", + "document-processing" + ], + "examples": [ + { + "inputJson": "{\"referenceText\":\"Smith, J. (2020). Advances in AI research. Journal of Computer Science, 35(4), 123-145.\",\"topicKeywords\":[\"artificial intelligence\",\"machine learning\"],\"includeQualityIndicators\":true,\"maxSummaryLength\":250}", + "description": "Analyze a journal article citation with related AI and machine learning keywords to generate a summary and quality indicators." + }, + { + "inputJson": "{\"referenceText\":\"Doe, A. (2018). A study on data privacy. Available at https://example.com/dataprivacy.pdf\",\"topicKeywords\":[],\"includeQualityIndicators\":false,\"maxSummaryLength\":150}", + "description": "Analyze a web publication citation without topic keywords and omit quality indicators, with a short summary limit." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reference", + "context": null + } + }, + { + "name": "content-creation.analyzeSession", + "description": "Analyzes digital content creation sessions by processing input session data such as user actions, timestamps, and content metadata. It identifies patterns like productivity trends, session length distribution, and key activities, then produces a structured report summarizing session analytics and insights to help optimize future content workflows.", + "category": "content-creation", + "parameters": [ + { + "name": "sessionData", + "type": "array", + "description": "An array of objects representing individual user actions and events during the content creation session, including timestamps and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeZone", + "type": "string", + "description": "The time zone identifier (e.g., 'UTC','America/New_York') for interpreting session timestamps.", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "analyzeGranularity", + "type": "string", + "description": "Level of detail for analysis; options include 'summary' for overview or 'detailed' for in-depth activity breakdown.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "includeInactivePeriods", + "type": "boolean", + "description": "Whether to include analysis of user inactive periods within the session.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxReportItems", + "type": "number", + "description": "Maximum number of key activities or events to include in the output report.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing session summary statistics such as total duration, active time, key events ranking, productivity patterns, and possible improvement suggestions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract insights from user content creation session logs to understand behavior patterns, productivity peaks, and workflow bottlenecks. It supports improving content creation efficiency and user experience by analyzing granular session activity data.", + "limitations": "The tool cannot interpret subjective user intentions or psychological states beyond activity data. It requires properly formatted session event data with accurate timestamps and metadata.", + "examples": [ + "Analyze a session log to find most frequent user actions and total active time.", + "Generate a detailed report showing periods of inactivity and suggest optimal session durations.", + "Provide an overview summary of multiple content creation sessions with key metrics and insights." + ] + }, + "tags": [ + "content-analysis", + "session-analytics", + "productivity", + "user-behavior", + "digital-content", + "workflow-optimization" + ], + "examples": [ + { + "inputJson": "{\"sessionData\":[{\"action\":\"edit_text\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"details\":{\"duration\":120}},{\"action\":\"insert_image\",\"timestamp\":\"2024-05-01T10:02:30Z\",\"details\":{}},{\"action\":\"save_document\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"details\":{}}],\"timeZone\":\"UTC\",\"analyzeGranularity\":\"summary\",\"includeInactivePeriods\":false,\"maxReportItems\":5}", + "description": "Summarize a short content editing session analyzing main user actions and total active time." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "content-creation.analyzeTrend", + "description": "This tool accepts a dataset or feed URL containing time-stamped digital content metrics (likes, shares, views) or keywords over a specified date range, then analyzes emerging patterns and growth rates to identify trending topics or content themes. The output is a structured summary of top trends with metrics, growth trajectory, and sentiment where applicable.", + "category": "content-creation", + "parameters": [ + { + "name": "dataSource", + "type": "string", + "description": "URL or file path pointing to the digital content metrics dataset to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date of the analysis period in YYYY-MM-DD format.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date of the analysis period in YYYY-MM-DD format.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricType", + "type": "string", + "description": "Specify which metric to analyze, such as 'likes', 'shares', 'views', or 'mentions'.", + "required": false, + "defaultValue": "mentions" + }, + { + "name": "topN", + "type": "number", + "description": "Number of top trends to return in the analysis output.", + "required": false, + "defaultValue": "5" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on content related to detected trends.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing an array of trend objects, each with name, metricSummary, growthRate, sentimentScore (if applicable), and detail links or references." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and summarize key trending topics or content themes from large digital engagement datasets over time. It's ideal for content strategists or analysts seeking insights about viral phenomena or audience interests based on quantitative metrics.", + "limitations": "This tool cannot analyze non-time-series datasets or data that lacks standardized metric formats. It does not predict future trends, only analyzes historical data within the specified dates, and may not accurately interpret sentiment nuances in complex languages or slang.", + "examples": [ + "Analyze top 5 trending hashtags by mentions on a social media dataset between 2024-01-01 and 2024-01-31.", + "Identify fastest growing content themes by shares in a provided CSV file spanning 3 months.", + "Generate a report with top trends and sentiment from a news article dataset URL for the last week." + ] + }, + "tags": [ + "content-analysis", + "trend-detection", + "time-series", + "social-media", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"dataSource\":\"https://example.com/social-metrics-january.csv\",\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"metricType\":\"mentions\",\"topN\":5,\"includeSentiment\":true}", + "description": "Analyze the top 5 trends by mentions in a social metrics CSV URL data source for January including sentiment." + }, + { + "inputJson": "{\"dataSource\":\"/data/content_metrics.csv\",\"startDate\":\"2024-03-01\",\"endDate\":\"2024-05-31\",\"metricType\":\"shares\",\"topN\":3,\"includeSentiment\":false}", + "description": "Identify top 3 trending content themes by shares in local CSV data over Q1 2024 without sentiment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "content-creation.analyzeIncident", + "description": "Analyzes detailed incident reports provided as textual or structured input to identify root causes, attack vectors, impact assessment, and suggests mitigation steps. Processes raw incident data including logs, timelines, and affected assets, producing a comprehensive analysis summary and recommendations.", + "category": "content-creation", + "parameters": [ + { + "name": "incidentReport", + "type": "string", + "description": "Detailed textual or structured incident report data describing the security incident.", + "required": true, + "defaultValue": "" + }, + { + "name": "logs", + "type": "array", + "description": "An array of log entries (strings or objects) related to the incident to aid analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation and prevention steps in the output analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "analysisDepth", + "type": "string", + "description": "Specifies the detail level of analysis: 'basic', 'detailed', or 'comprehensive'.", + "required": false, + "defaultValue": "detailed" + }, + { + "name": "affectedSystems", + "type": "array", + "description": "List of affected system identifiers or asset names mentioned in the incident.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing root cause analysis, exploited vulnerabilities, impact summary, timeline reconstruction, and optional mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when provided with an incident report and related data to generate a structured comprehensive analysis that summarizes the security breach, identifies causes, affected components, and suggests next steps to remediate and prevent future incidents.", + "limitations": "The tool depends on the quality and completeness of the input incident report and logs; it cannot access external systems or verify data authenticity. It is not a real-time detection engine but an analysis assistant after incidents occur.", + "examples": [ + "\"Analyze this incident report and identify root causes and affected systems.\"", + "\"Given logs and incident summary, provide a detailed impact analysis and mitigation suggestions.\"", + "\"Perform a comprehensive incident investigation based on the provided structured incident data.\"" + ] + }, + "tags": [ + "analysis", + "security", + "incident", + "content-creation", + "investigation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"incidentReport\":\"On 2024-04-10, unauthorized access was detected on server X. Suspicious login attempts were logged repeatedly from IP 192.168.1.100.\",\"logs\":[\"Failed login from 192.168.1.100 at 10:15AM\",\"Successful login from 192.168.1.100 at 10:20AM\"],\"includeMitigation\":true,\"analysisDepth\":\"detailed\",\"affectedSystems\":[\"server X\"]}", + "description": "Analyze a textual incident report with relevant logs to find root causes and recommend mitigation." + }, + { + "inputJson": "{\"incidentReport\":\"A phishing email was received by multiple employees causing credential compromises.\",\"includeMitigation\":true,\"analysisDepth\":\"basic\",\"affectedSystems\":[\"employee workstations\"]}", + "description": "Basic analysis of a phishing incident from summary input." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "content-creation.uploadCSV", + "description": "Uploads a CSV file to a specified remote storage or API endpoint, optionally validating its format and applying column mappings. Accepts CSV content as a string or file path, performs optional validation of required columns, and returns a status object indicating success or detailed error messages.", + "category": "content-creation", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "The content of the CSV file as a UTF-8 encoded string to be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local file path to read the CSV content from if csvContent is not provided. Either csvContent or filePath must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "The remote URL or API endpoint where the CSV file should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or API key used for authorizing the upload request.", + "required": false, + "defaultValue": "" + }, + { + "name": "requiredColumns", + "type": "array", + "description": "List of column names that must be present in the CSV; the tool validates these before uploading.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "columnMappings", + "type": "object", + "description": "Optional object mapping source column names to target names to rename columns automatically during upload.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "validateFormat", + "type": "boolean", + "description": "Whether to validate the CSV format and required columns before uploading. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload status (success/failure), number of rows uploaded, and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically upload CSV data to remote storage or APIs, ensuring the CSV meets specified schema requirements before upload. Ideal for automations that push tabular data or reports to data warehouses or cloud endpoints.", + "limitations": "This tool does not perform deep content validation beyond column presence or rename columns; it does not parse large CSVs in chunks or support resumable uploads. It requires the destination endpoint to accept file uploads via HTTP POST or PUT.", + "examples": [ + "Upload a CSV string to a cloud storage endpoint with required columns validation.", + "Upload a local CSV file to a remote API with a column rename mapping and authentication token.", + "Validate that the CSV contains mandatory columns before uploading it." + ] + }, + "tags": [ + "upload", + "CSV", + "content-creation", + "data-integration", + "file-upload" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"name,email,age\\nAlice,alice@example.com,30\\nBob,bob@example.com,25\",\"destinationUrl\":\"https://api.example.com/upload-csv\",\"authToken\":\"Bearer abc123\",\"requiredColumns\":[\"name\",\"email\"],\"validateFormat\":true}", + "description": "Uploads a CSV provided as a string to an API endpoint, validating that 'name' and 'email' columns exist." + }, + { + "inputJson": "{\"filePath\":\"/tmp/data.csv\",\"destinationUrl\":\"https://storage.example.com/upload\",\"validateFormat\":false}", + "description": "Uploads a CSV file located on disk without validating columns, to a storage service endpoint." + }, + { + "inputJson": "{\"csvContent\":\"product,qty\\nWidget,10\\nGadget,20\",\"destinationUrl\":\"https://api.example.com/upload-csv\",\"columnMappings\":{\"qty\":\"quantity\"}}", + "description": "Uploads CSV replacing 'qty' column with 'quantity' during the upload process." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "content-creation.analyzeThread", + "description": "Analyzes a digital communication thread by processing the input messages to extract key topics, sentiment trends, participant engagement, and conversation dynamics. Accepts an array of messages with metadata and produces a structured summary report with insights on overall tone, main subjects, active participants, and interaction patterns.", + "category": "content-creation", + "parameters": [ + { + "name": "messages", + "type": "array", + "description": "An array of message objects representing the thread to analyze. Each object includes sender, timestamp, and message text.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code of the messages for accurate text processing (e.g., 'en' for English).", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to analyze and include sentiment trends throughout the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTopics", + "type": "number", + "description": "Maximum number of key topics to extract from the thread.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A summary object detailing main topics, sentiment analysis results, participant engagement metrics, and conversational dynamics insights." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the overall content, sentiment, and participation patterns of any communication thread such as chat logs, forum discussions, or email chains. It helps in summarizing large volumes of messages to derive actionable insights for report generation, moderation, or productivity analysis.", + "limitations": "Cannot interpret multimedia content such as images or videos within threads; analysis depends on text quality and completeness of metadata; sentiment analysis may be less accurate for slang, mixed languages, or complex sarcasm.", + "examples": [ + "Analyze the latest support chat to find common user complaints and agent responsiveness.", + "Provide an overview of sentiment and key topics in the recent project discussion thread.", + "Summarize participant activity and tone in the customer feedback emails." + ] + }, + "tags": [ + "analysis", + "content-creation", + "communication", + "thread", + "sentiment-analysis", + "topic-extraction", + "participant-engagement" + ], + "examples": [ + { + "inputJson": "{\"messages\":[{\"sender\":\"alice\",\"timestamp\":\"2024-06-01T09:15:00Z\",\"text\":\"I think the new feature is great!\"},{\"sender\":\"bob\",\"timestamp\":\"2024-06-01T09:16:00Z\",\"text\":\"I agree, but it needs some improvements.\"},{\"sender\":\"alice\",\"timestamp\":\"2024-06-01T09:17:00Z\",\"text\":\"Which areas do you think could be improved?\"},{\"sender\":\"bob\",\"timestamp\":\"2024-06-01T09:20:00Z\",\"text\":\"The UI responsiveness and color scheme.\"}]}", + "description": "Analyzing a short chat thread for key topics and sentiment trends." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "content-creation.analyzeHTML", + "description": "Analyzes provided HTML content to extract structure, count elements, identify inline styles, count accessibility features and detect potential SEO issues. Accepts raw HTML string as input and returns a detailed analysis report with counts, summaries and warnings about content and markup quality.", + "category": "content-creation", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to be analyzed for structure and features.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "If true, perform accessibility feature checks and report issues.", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkSEO", + "type": "boolean", + "description": "If true, analyze HTML for common SEO best practices and flag potential problems.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxElementReportCount", + "type": "number", + "description": "Maximum number of unique HTML element types to include in detail in report.", + "required": false, + "defaultValue": "20" + } + ], + "returns": { + "type": "object", + "description": "Structured report including element counts, inline style counts, accessibility feature summary, SEO warnings, and overall HTML structure summary." + }, + "aiAgent": { + "useCase": "This tool is ideal when an agent needs to evaluate raw HTML content for quality, compliance and optimization purposes. For example, it can assess web page fragments or templates to ensure they follow accessibility and SEO best practices, identify excessive use of inline styles, or summarize HTML element usage to guide content optimization or correction.", + "limitations": "Cannot fully validate against HTML specifications or execute dynamic JavaScript-generated content. It works only on static HTML strings and may not catch all SEO or accessibility issues which require deeper contextual analysis or live page testing.", + "examples": [ + "Analyze this HTML snippet for element usage, accessibility, and SEO warnings.", + "Check if this web page HTML content has excessive inline styles or missing accessibility attributes.", + "Provide a summary report of all HTML elements and potential SEO problems from this content." + ] + }, + "tags": [ + "content-analysis", + "html", + "accessibility", + "seo", + "content-quality", + "web-development" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"Test

Welcome

Hello world

\",\"checkAccessibility\":true,\"checkSEO\":true,\"maxElementReportCount\":10}", + "description": "Analyze a small HTML snippet for accessibility and SEO issues including missing img alt attribute and inline styles." + }, + { + "inputJson": "{\"htmlContent\":\"\",\"checkAccessibility\":false,\"checkSEO\":false,\"maxElementReportCount\":5}", + "description": "Quick analysis of basic HTML with no accessibility or SEO checks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "content-creation.buildInstance", + "description": "Creates and configures a new digital content instance on a specified platform. Accepts parameters such as content type, template ID, custom metadata, and access controls, then provisions the instance accordingly and returns the instance ID and status.", + "category": "content-creation", + "parameters": [ + { + "name": "contentType", + "type": "string", + "description": "Type of content instance to create, e.g., blogPost, videoChannel, or podcastSeries.", + "required": true, + "defaultValue": "" + }, + { + "name": "templateId", + "type": "string", + "description": "Identifier of the template to use for the content instance layout and structure.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Custom metadata key-value pairs describing the content instance, such as tags or description.", + "required": false, + "defaultValue": "" + }, + { + "name": "accessControl", + "type": "object", + "description": "Access control settings defining user roles and permissions for the instance.", + "required": false, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region or data center where the instance will be hosted.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "autoPublish", + "type": "boolean", + "description": "Whether to automatically publish the content instance upon creation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique instanceId, creationStatus (success/failure), and additional details such as URL or error messages." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically provision a new digital content instance for various content types, applying specified templates and access policies, to accelerate content platform setup.", + "limitations": "This tool does not handle actual content creation or content editing within the instance; it only provisions the infrastructure and configuration for the instance.", + "examples": [ + "Create a new blogPost instance with SEO optimized template and restricted editing permissions.", + "Build a podcastSeries instance in the EU region with public access.", + "Provision a videoChannel instance with custom metadata and auto-publish enabled." + ] + }, + "tags": [ + "content-creation", + "instance-provisioning", + "digital-content", + "template", + "configuration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"contentType\":\"blogPost\",\"templateId\":\"tpl-1234\",\"metadata\":{\"title\":\"Tech Trends 2024\",\"tags\":[\"technology\",\"trends\"]},\"accessControl\":{\"roles\":{\"editor\":[\"user1\",\"user2\"],\"viewer\":[\"user3\"]}},\"region\":\"eu-west-1\",\"autoPublish\":false}", + "description": "Provision a blog post content instance with a specified template and access control roles in the EU region without auto-publishing." + }, + { + "inputJson": "{\"contentType\":\"podcastSeries\",\"templateId\":\"pod-temp-v2\",\"metadata\":{\"title\":\"History Hour\",\"description\":\"Weekly history podcast.\"},\"accessControl\":{\"roles\":{\"admin\":[\"producer\"]}},\"autoPublish\":true}", + "description": "Create and auto-publish a podcast series instance using a podcast template with admin access to the producer role." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "content-creation.buildQuery", + "description": "Constructs structured database or API query strings based on provided parameters such as filters, sorting options, selected fields, and pagination. It accepts query criteria in a structured object form, processes them to form a syntactically correct query string compatible with SQL-like or REST API query languages, and returns the generated query string ready for execution or further use.", + "category": "content-creation", + "parameters": [ + { + "name": "filters", + "type": "object", + "description": "Key-value pairs representing field names and their filter conditions to apply in the query (e.g., {\"status\":\"active\",\"age\":{\">=\":30}}).", + "required": false, + "defaultValue": "" + }, + { + "name": "selectFields", + "type": "array", + "description": "List of fields to include in the query result. If empty or omitted, defaults to selecting all fields.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "sortOptions", + "type": "array", + "description": "Array of objects defining sorting preferences, each with 'field' and 'direction' (asc or desc).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "pagination", + "type": "object", + "description": "Object containing pagination parameters: 'page' (number) and 'pageSize' (number) to limit query results.", + "required": false, + "defaultValue": "" + }, + { + "name": "queryType", + "type": "string", + "description": "Type of query to build, e.g., 'SQL', 'REST', or 'GraphQL' to format the query string accordingly.", + "required": false, + "defaultValue": "SQL" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string under the key 'queryString', and optionally the query syntax 'queryType'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate dynamic and complex queries for databases or APIs by specifying criteria like filters, sorting, fields, and pagination. It is useful for agents constructing backend requests or data retrieval commands without manually writing query syntax.", + "limitations": "Cannot execute or validate the generated queries against a live database or API; it only formats query strings based on provided parameters. Complex nested queries or joins may require manual adjustments.", + "examples": [ + "Build a SQL query selecting 'name' and 'email' of users where status is 'active', sorted by 'createdDate' descending, with pagination page 2 size 50.", + "Create a REST API query string to filter products by category 'electronics' and price greater than 100, sorted by price ascending.", + "Generate a GraphQL query for fetching user id and posts with filters on posts' published date." + ] + }, + "tags": [ + "query", + "database", + "API", + "content-creation", + "dynamic generation", + "filtering", + "sorting", + "pagination" + ], + "examples": [ + { + "inputJson": "{\"filters\":{\"status\":\"active\"},\"selectFields\":[\"name\",\"email\"],\"sortOptions\":[{\"field\":\"createdDate\",\"direction\":\"desc\"}],\"pagination\":{\"page\":2,\"pageSize\":50},\"queryType\":\"SQL\"}", + "description": "Build a paginated SQL query retrieving name and email of active users, sorted by creation date descending." + }, + { + "inputJson": "{\"filters\":{\"category\":\"electronics\",\"price\":{\"gt\":100}},\"selectFields\":[\"id\",\"name\",\"price\"],\"sortOptions\":[{\"field\":\"price\",\"direction\":\"asc\"}],\"pagination\":{},\"queryType\":\"REST\"}", + "description": "Construct a REST API query string filtering electronics category with price greater than 100, sorted by ascending price." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "content-creation.sendComment", + "description": "Sends a comment to a specified digital content platform or system such as a blog, social media post, or internal collaboration tool. Accepts parameters including targetId (content to comment on), commentText, optional authorName, and flags for formatting or moderation. Returns confirmation of comment submission with status and commentId if successful.", + "category": "content-creation", + "parameters": [ + { + "name": "targetId", + "type": "string", + "description": "Unique identifier of the content item to which the comment will be posted", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment to be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Optional name to be associated with the comment author", + "required": false, + "defaultValue": "" + }, + { + "name": "formattingOptions", + "type": "object", + "description": "Optional object specifying formatting preferences such as rich text or markdown usage", + "required": false, + "defaultValue": "{}" + }, + { + "name": "moderationFlag", + "type": "boolean", + "description": "Optional flag indicating if the comment should be submitted for moderation before posting", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object indicating submission success or failure, the assigned comment ID if successful, and an optional message explaining errors or status." + }, + "aiAgent": { + "useCase": "This tool is useful for AI agents tasked with automating user engagement by posting comments on articles, posts, or collaborative documents. It should be used when the agent needs to programmatically add commentary, feedback, or discussion responses in various content systems that support comments.", + "limitations": "This tool cannot generate the comment content itself; it only sends comments provided to it. It does not guarantee comment approval if moderation systems reject submissions. It also cannot retrieve or edit existing comments.", + "examples": [ + "Post a supportive comment on a blog article with a specified author name.", + "Submit a comment containing feedback with markdown formatting enabled.", + "Send a comment flagged for moderation on an internal collaboration post." + ] + }, + "tags": [ + "send", + "comment", + "content-creation", + "engagement", + "social", + "moderation", + "feedback" + ], + "examples": [ + { + "inputJson": "{\"targetId\":\"post12345\",\"commentText\":\"Great insights on your latest article!\",\"authorName\":\"AI Bot\",\"formattingOptions\":{},\"moderationFlag\":false}", + "description": "Sending a plain comment with author name to a blog post." + }, + { + "inputJson": "{\"targetId\":\"issue6789\",\"commentText\":\"*Please refer to the attached logs.*\",\"authorName\":\"DevBot\",\"formattingOptions\":{\"markdown\":true},\"moderationFlag\":false}", + "description": "Sending a markdown formatted comment in a collaborative issue tracker." + }, + { + "inputJson": "{\"targetId\":\"doc234\",\"commentText\":\"Please review this paragraph carefully.\",\"authorName\":\"ReviewerAI\",\"formattingOptions\":{},\"moderationFlag\":true}", + "description": "Sending a comment flagged for moderation on a shared document." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "documentation-tools.analyzeQuote", + "description": "Analyzes a given quote text to extract key sentiments, themes, and relevance to specified topics. Accepts quote text and optional context keywords, performs natural language processing to identify sentiment polarity, main themes, and potential impact, returning a structured summary with sentiment score, theme list, and contextual relevance indications.", + "category": "documentation-tools", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The quote text to analyze for sentiment, themes, and relevance.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextKeywords", + "type": "array", + "description": "Optional list of keywords or topics to assess the quote's relevance against.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "language", + "type": "string", + "description": "The language of the quote text to aid accurate analysis, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentimentScore", + "type": "boolean", + "description": "Whether to include a detailed numeric sentiment score in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the sentiment polarity (positive, neutral, negative), a numeric sentimentScore if requested, an array of detected themes, and a relevance map indicating the presence of context keywords in the quote." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand the emotional tone and main conceptual themes within a quote or short excerpt, especially when integrating quotes into documentation or content requiring tone-aware presentation. It helps in assessing quote impact and matching quotes to topics or themes in documents.", + "limitations": "This tool focuses on short quote texts and may not perform well on long paragraphs or ambiguous language. It does not provide author or source attribution accuracy. Sarcasm or complex linguistic nuances might be misinterpreted.", + "examples": [ + "Analyze the sentiment and themes of a motivational quote.", + "Check if a quote relates to teamwork and innovation.", + "Extract key emotions from a historical quote for documentation context." + ] + }, + "tags": [ + "analysis", + "documentation", + "quotes", + "sentiment-analysis", + "text-mining", + "theme-extraction" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only way to do great work is to love what you do.\",\"contextKeywords\":[\"work\",\"passion\"],\"language\":\"en\",\"includeSentimentScore\":true}", + "description": "Analyze a motivational quote with keywords 'work' and 'passion' to extract sentiment and relevance." + }, + { + "inputJson": "{\"quoteText\":\"Success is not final, failure is not fatal: It is the courage to continue that counts.\",\"contextKeywords\":[\"success\",\"failure\",\"courage\"],\"language\":\"en\",\"includeSentimentScore\":false}", + "description": "Analyze an inspirational quote focusing on success, failure, and courage keywords, without numeric sentiment score." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "documentation-tools.downloadVideo", + "description": "Downloads a video from a specified URL for documentation purposes. The tool accepts a video URL and optional parameters such as maximum download size and format preference. It performs validation on the URL, attempts to download the video within constraints, and outputs the video file stored locally or accessible via a path or URL.", + "category": "documentation-tools", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The URL of the video to be downloaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxFileSizeMb", + "type": "number", + "description": "Maximum allowable file size in megabytes for the video download to prevent excessively large downloads.", + "required": false, + "defaultValue": "100" + }, + { + "name": "preferredFormat", + "type": "string", + "description": "Preferred video format to download (e.g., mp4, webm). The tool tries to download the video in this format if available.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "savePath", + "type": "string", + "description": "Local file system path where the downloaded video will be saved. If empty, defaults to a temporary directory.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSubtitles", + "type": "boolean", + "description": "Whether to attempt to also download the video subtitles or captions if available.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the local file path of the downloaded video, file size in bytes, and format info. If subtitles were downloaded, includes subtitle file path." + }, + "aiAgent": { + "useCase": "Use this tool when needing to download video content from the web for integration in documentation, training materials, or offline review, particularly when video examples or tutorials must be embedded or referenced locally.", + "limitations": "Cannot download videos from sites with strict DRM protections or requiring authentication beyond simple URL access. Does not convert videos between formats if preferred format not available. Dependent on internet connectivity and the video's availability.", + "examples": [ + "Download the mp4 video from the specified tutorial URL saving it locally for embedding in the documentation.", + "Download a short demonstration video under 50MB from a public link without subtitles.", + "Download a webm video with subtitles included and save it to the specified directory." + ] + }, + "tags": [ + "download", + "video", + "documentation", + "media", + "offline", + "media-download" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/tutorial.mp4\",\"maxFileSizeMb\":200,\"preferredFormat\":\"mp4\",\"savePath\":\"/docs/videos/\",\"includeSubtitles\":true}", + "description": "Download an MP4 tutorial video up to 200MB with subtitles, saving it in the documentation videos folder." + }, + { + "inputJson": "{\"videoUrl\":\"https://video-host.com/sample.webm\",\"preferredFormat\":\"webm\",\"includeSubtitles\":false}", + "description": "Download a WEBM video from a public source without subtitles, saving to a default temp location." + }, + { + "inputJson": "{\"videoUrl\":\"https://media.example.org/demo.mp4\",\"maxFileSizeMb\":50,\"includeSubtitles\":false}", + "description": "Download an MP4 demo video limited to 50MB in file size without subtitles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "documentation-tools.analyzeVulnerability", + "description": "Analyzes software vulnerability documentation to assess completeness, clarity, and risk description. Accepts raw vulnerability text or structured vulnerability documents, processes linguistic and content aspects, and outputs an evaluation report highlighting unclear sections, missing details, and recommendations to improve documentation quality.", + "category": "documentation-tools", + "parameters": [ + { + "name": "vulnerabilityDocument", + "type": "string", + "description": "Raw text or structured content of vulnerability documentation to analyze, including description, impact, and mitigation details.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "Format of the input document, e.g., 'text', 'markdown', 'json'. Helps tailor parsing and analysis methods.", + "required": false, + "defaultValue": "text" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the documentation content, e.g., 'en', to optimize linguistic analysis.", + "required": false, + "defaultValue": "en" + }, + { + "name": "focusAreas", + "type": "array", + "description": "Specific aspects to focus analysis on, such as ['completeness','clarity','riskSeverity','mitigationDetails'].", + "required": false, + "defaultValue": "[\"completeness\",\"clarity\",\"riskSeverity\",\"mitigationDetails\"]" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "The minimal severity level (e.g., 'medium') to flag as high risk within the analysis output.", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include improvement suggestions in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall evaluation summary, identified issues with locations in text or structure, risk assessment details, and recommended actions to improve the vulnerability documentation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent encounters vulnerability documentation that needs quality assessment before use in security reports or advisories. It helps validate and enhance documentation by identifying vague, incomplete, or inconsistent information, ensuring end-users get reliable and actionable vulnerability details.", + "limitations": "Cannot replace subject matter expert review or verify technical accuracy of vulnerability content. Analysis is limited to text quality, structure, and consistency rather than vulnerability validity.", + "examples": [ + "Analyze a given CVE description for clarity and risk severity explanation.", + "Evaluate markdown formatted vulnerability report focusing on mitigation completeness.", + "Review JSON-based vulnerability details to highlight missing impact or affected components sections." + ] + }, + "tags": [ + "documentation", + "vulnerability", + "analysis", + "security", + "quality-assessment" + ], + "examples": [ + { + "inputJson": "{\"vulnerabilityDocument\":\"CVE-2024-12345: A buffer overflow in the XYZ component allows remote attackers to execute arbitrary code. Impact details are minimal.\",\"documentFormat\":\"text\",\"language\":\"en\",\"focusAreas\":[\"completeness\",\"clarity\"],\"severityThreshold\":\"medium\",\"includeRecommendations\":true}", + "description": "Analyze a plain text CVE summary to identify missing impact information and clarity issues." + }, + { + "inputJson": "{\"vulnerabilityDocument\":\"# Vulnerability Report\\n## Description\\nRemote code execution vulnerability in ABC module.\\n## Impact\\nPotential data breach due to improper validation.\\n## Mitigation\\nUpdate to version 1.2.3.\",\"documentFormat\":\"markdown\",\"language\":\"en\",\"focusAreas\":[\"completeness\",\"mitigationDetails\"],\"severityThreshold\":\"low\",\"includeRecommendations\":true}", + "description": "Assess markdown formatted vulnerability documentation for completeness of mitigation details." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Vulnerability", + "context": null + } + }, + { + "name": "documentation-tools.analyzeExpense", + "description": "Analyzes expense-related documentation such as invoices, receipts, and expense reports to extract key financial information. Accepts documents in text or PDF format, processes them with OCR and NLP techniques to identify expense categories, amounts, dates, and vendors, and produces structured expense summaries with anomalies or inconsistencies highlighted.", + "category": "documentation-tools", + "parameters": [ + { + "name": "documentContent", + "type": "string", + "description": "The raw text content or OCR-extracted text from the expense document to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "documentFormat", + "type": "string", + "description": "The format of the input document, e.g., 'pdf', 'text', or 'image'. Determines processing method.", + "required": true, + "defaultValue": "" + }, + { + "name": "expenseCategories", + "type": "array", + "description": "List of predefined expense categories to classify expenses against (e.g., travel, meals, office supplies).", + "required": false, + "defaultValue": "[\"Travel\", \"Meals\", \"Office Supplies\", \"Lodging\", \"Transportation\", \"Misc\"]" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to detect anomalies such as duplicate expenses or unusually high amounts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (e.g., USD, EUR) to normalize expense amounts. Defaults to 'USD'.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "Structured analysis report including detected expenses with categories, amounts, dates, vendors, and any anomalies found." + }, + "aiAgent": { + "useCase": "Use this tool when you need to process raw or scanned expense documents to extract structured financial data useful for audit, reimbursement, or accounting automation. It helps convert unstructured text or images into actionable expense reports automatically.", + "limitations": "Cannot interpret handwritten expense details reliably. Accuracy depends on quality of OCR text extraction and predefined expense categories. Does not perform currency conversion beyond normalization of codes.", + "examples": [ + "Analyze an invoice PDF to extract expense line items with categories.", + "Review a batch of expense receipts in image format for duplicates and irregular amounts.", + "Summarize an expense report text file highlighting expenses outside predefined categories." + ] + }, + "tags": [ + "documentation", + "expense", + "financial-analysis", + "OCR", + "NLP", + "automation" + ], + "examples": [ + { + "inputJson": "{\"documentContent\":\"Invoice Date: 2024-04-10\\nVendor: Office Supplies Inc.\\nItem: Paper reams\\nAmount: 120.50\\nCategory: Office Supplies\",\"documentFormat\":\"text\",\"expenseCategories\":[\"Office Supplies\",\"Travel\",\"Meals\"],\"detectAnomalies\":true,\"currency\":\"USD\"}", + "description": "Analyze a plain text invoice to extract expense details and classify under given categories." + }, + { + "inputJson": "{\"documentContent\":\"\",\"documentFormat\":\"pdf\",\"expenseCategories\":[\"Travel\",\"Lodging\",\"Meals\"],\"detectAnomalies\":true,\"currency\":\"USD\"}", + "description": "Analyze a PDF receipt for travel expenses and identify any anomalies such as duplicates or unusually high charges." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "documentation-tools.analyzeYAML", + "description": "This tool accepts a YAML formatted string or file input and performs analysis to detect syntax errors, validate against optional schema definitions, and identify common documentation structure issues. It outputs a detailed report listing errors, warnings, and structural insights to assist in improving YAML-based documentation files.", + "category": "documentation-tools", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML content as a string to be analyzed for syntax and structural validation.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "string", + "description": "An optional YAML or JSON schema string to validate the YAML content against for conformity.", + "required": false, + "defaultValue": "" + }, + { + "name": "checkDeprecatedKeys", + "type": "boolean", + "description": "Flag to enable detection of deprecated or discouraged keys in the YAML content based on common best practices.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxWarnings", + "type": "number", + "description": "Maximum number of warnings to report in the analysis output. Excess warnings are truncated.", + "required": false, + "defaultValue": "50" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing arrays of errors, warnings, and informational notes about the YAML content, including line numbers and messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to analyze YAML files primarily used for documentation purposes, such as config files, metadata files, or API documentation specs, to ensure they are syntactically correct and structurally sound. It helps identify errors, validate against optional schemas, and highlight potential documentation best practice issues.", + "limitations": "This tool does not perform semantic validation beyond schema checks and does not fix issues automatically. It relies on user-provided schemas for content validation and cannot generate schemas. It does not analyze non-YAML documentation formats.", + "examples": [ + "Analyze a documentation YAML file to report syntax errors and structural warnings.", + "Validate a YAML content string against a provided JSON schema.", + "Check a YAML file for any deprecated keys used in the documentation format." + ] + }, + "tags": [ + "yaml", + "documentation", + "validation", + "syntax-check", + "schema-validation", + "lint", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"title: Sample API\\ndescription: This is a sample API spec\\nversion: 1.0.0\\npaths:\\n /users:\\n get:\\n summary: Get Users\\n responses:\\n 200:\\n description: Successful response\\n\",\"schemaDefinition\":\"\",\"checkDeprecatedKeys\":true,\"maxWarnings\":10}", + "description": "Analyze a simple API documentation YAML string to check syntax and for deprecated keys." + }, + { + "inputJson": "{\"yamlContent\":\"title: Project Documentation\\ninvalid_yaml: [unclosed sequence\\n\",\"schemaDefinition\":\"\",\"checkDeprecatedKeys\":false}", + "description": "Analyze YAML content with syntax error to detect and report it." + }, + { + "inputJson": "{\"yamlContent\":\"key: value\\n\",\"schemaDefinition\":\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"key\\\":{\\\"type\\\":\\\"string\\\"}},\\\"required\\\":[\\\"key\\\"]}\",\"checkDeprecatedKeys\":false}", + "description": "Validate simple YAML content against a provided JSON schema definition." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "documentation-tools.sendThread", + "description": "Sends a communication thread as a message to a specified recipient or group within a documentation or collaboration platform. Accepts thread content, recipient details, and optional metadata, then posts the thread accordingly, returning confirmation and message ID.", + "category": "documentation-tools", + "parameters": [ + { + "name": "threadContent", + "type": "string", + "description": "The complete content of the communication thread to send, including text and possible formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientId", + "type": "string", + "description": "Identifier of the primary recipient (user or group) to whom the thread will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Optional subject or title of the communication thread being sent.", + "required": false, + "defaultValue": "" + }, + { + "name": "attachments", + "type": "array", + "description": "List of URLs or encoded data of attachments to include with the thread message.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata such as tags, priority level, or timestamps associated with the thread.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing confirmation status, unique message or thread ID, and timestamp of sending." + }, + "aiAgent": { + "useCase": "Use this tool when automating the sending of discussion threads or messages within a documentation system, team collaboration platform, or knowledge base. It enables structured communication by delivering complete threads to intended recipients programmatically during workflow automation or notification dispatch.", + "limitations": "This tool does not compose or generate thread content; it solely sends prepared thread content to specified recipients. It does not handle real-time chat interactions or message edits after sending.", + "examples": [ + "Send a new discussion thread summarizing a project update to a team group.", + "Dispatch a thread containing important documentation changes to specific users.", + "Share a thread with attachments and metadata tags to a project collaborators list." + ] + }, + "tags": [ + "send", + "communication", + "documentation", + "thread", + "collaboration", + "messaging" + ], + "examples": [ + { + "inputJson": "{\"threadContent\":\"Please review the updated API documentation attached.\",\"recipientId\":\"team123\",\"subject\":\"API Docs Update\",\"attachments\":[\"https://docs.example.com/api/v2/update.pdf\"],\"metadata\":{\"priority\":\"high\"}}", + "description": "Send an updated API documentation thread with a PDF attachment to a team identified by 'team123' with high priority." + }, + { + "inputJson": "{\"threadContent\":\"Discussion thread on feature rollout plan.\",\"recipientId\":\"user456\",\"subject\":\"Feature Rollout\",\"attachments\":[],\"metadata\":{}}", + "description": "Send a simple discussion thread about feature rollout to an individual user 'user456' with no attachments or extra metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "data-analytics.uploadCSV", + "description": "Uploads a CSV file for analysis by accepting CSV content or a file path, processes the data by validating and parsing it into structured format, and outputs a summary of data columns and row count to facilitate further analytic operations.", + "category": "data-analytics", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "Raw CSV data content as a string to be parsed and analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "Local or accessible path to a CSV file to upload and parse for analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate values in the CSV, defaults to comma (,).", + "required": false, + "defaultValue": "," + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the first row contains headers; affects parsing and output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to upload and parse for preview or analysis. If 0, upload all rows.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing parsed column names (array of strings), row count (number of data rows uploaded), and an optional sample of the first few rows as array of arrays." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to ingest tabular data from CSV format for downstream analysis or visualization. It allows flexible input via direct CSV content or file paths, supports common CSV variations like different delimiters and header presence, and outputs structured data summaries for efficient processing.", + "limitations": "This tool does not perform data cleansing, transformation, or deep validation beyond basic CSV parsing. It cannot handle extremely large files due to memory constraints and does not support remote file fetching beyond provided accessible paths.", + "examples": [ + "Upload CSV content string representing sales data for quick analysis.", + "Upload a CSV file located at /tmp/data.csv to parse columns and preview data.", + "Specify a semicolon as delimiter when uploading CSV content that uses semicolons instead of commas." + ] + }, + "tags": [ + "data-upload", + "csv", + "data-ingestion", + "analytics-preparation", + "tabular-data" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"name,age,salary\\nAlice,30,70000\\nBob,25,48000\",\"delimiter\":\",\",\"hasHeader\":true,\"maxRows\":10}", + "description": "Uploading CSV content string with header to parse and preview small dataset." + }, + { + "inputJson": "{\"filePath\":\"/data/sales.csv\",\"delimiter\":\",\",\"hasHeader\":true,\"maxRows\":1000}", + "description": "Uploading CSV data from a file path to analyze sales data with standard comma delimiter and headers." + }, + { + "inputJson": "{\"csvContent\":\"id;score;passed\\n1;88;true\\n2;76;false\",\"delimiter\":\";\",\"hasHeader\":true,\"maxRows\":0}", + "description": "Uploading CSV content using semicolon delimiter and parsing all rows with header." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "data-analytics.renderWord", + "description": "This tool accepts a single word as input and renders it as an image visualization applying customizable style parameters such as font, size, color, background, and text effects. It processes the input text and styling options to produce a styled graphic representation suitable for data visualization dashboards, reports, or presentations.", + "category": "data-analytics", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The single word text to be rendered visually.", + "required": true, + "defaultValue": "" + }, + { + "name": "fontFamily", + "type": "string", + "description": "The font family to use for rendering the word (e.g., Arial, Times New Roman).", + "required": false, + "defaultValue": "Arial" + }, + { + "name": "fontSize", + "type": "number", + "description": "Font size in pixels for the rendered word.", + "required": false, + "defaultValue": "48" + }, + { + "name": "fontColor", + "type": "string", + "description": "Hex code or named color for the word's text color.", + "required": false, + "defaultValue": "#000000" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Hex code or named color for the background behind the word.", + "required": false, + "defaultValue": "#FFFFFF" + }, + { + "name": "bold", + "type": "boolean", + "description": "Whether to render the word in bold style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "italic", + "type": "boolean", + "description": "Whether to render the word in italic style.", + "required": false, + "defaultValue": "false" + }, + { + "name": "textEffect", + "type": "string", + "description": "Optional text effect to apply such as 'shadow', 'outline', or 'glow'.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the rendered image in base64 PNG format and metadata about the rendering." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert a text word into a styled visual graphic for embedding in data analytics reports, dashboards, or presentations. It is useful for highlighting key terms or labels with visual emphasis using customizable font and style parameters.", + "limitations": "Cannot render phrases or multiple words at once. Does not generate interactive or animated graphics. Limited to static image output in PNG format.", + "examples": [ + "Render the word 'Revenue' in bold italic with a blue font color and drop shadow.", + "Generate a large red word 'Growth' on a transparent background with outline effect.", + "Create a simple black word 'Data' in standard Arial font on white background." + ] + }, + "tags": [ + "rendering", + "text-visualization", + "font-style", + "image-generation", + "data-presentation", + "word-art" + ], + "examples": [ + { + "inputJson": "{\"word\":\"Profit\",\"fontFamily\":\"Verdana\",\"fontSize\":60,\"fontColor\":\"#2E8B57\",\"backgroundColor\":\"#FFFFFF\",\"bold\":true,\"italic\":false,\"textEffect\":\"shadow\"}", + "description": "Render the word 'Profit' in a large green Verdana font with bold weight and a subtle shadow on white background." + }, + { + "inputJson": "{\"word\":\"Growth\",\"fontFamily\":\"Helvetica\",\"fontSize\":48,\"fontColor\":\"#FF4500\",\"backgroundColor\":\"#000000\",\"bold\":false,\"italic\":true,\"textEffect\":\"outline\"}", + "description": "Render the italic word 'Growth' in bright orange Helvetica with an outline effect on black background." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "data-analytics.sendComment", + "description": "This tool accepts parameters specifying a target data insight report or dashboard, a user identifier, and a text comment to send as feedback or annotation. It processes the input by associating the comment with the specified report and user, storing it in the system, and returns a confirmation with comment ID and timestamp. Useful for collaborative data analysis environments.", + "category": "data-analytics", + "parameters": [ + { + "name": "reportId", + "type": "string", + "description": "Unique identifier of the data report or dashboard to which the comment is attached.", + "required": true, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier of the user submitting the comment.", + "required": true, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "Text content of the comment to send.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "Optional ISO 8601 timestamp representing when the comment was made. Defaults to current time if blank.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional list of tags or keywords related to the comment for categorization or filtering.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of the comment submission, including a unique comment ID, the associated report ID, user ID, comment text, timestamp, and any assigned tags." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically post user or system-generated comments on specific data reports or dashboards during collaborative data analytics. It enables annotation, feedback, or discussion tied directly to data insights, facilitating communication within analytical workflows.", + "limitations": "This tool does not analyze or interpret the comment text content, nor does it perform moderation or sentiment analysis. It only stores and returns comment metadata.", + "examples": [ + "Add a comment to report ID 'rpt-123' from user 'user-789' saying 'Please review the anomaly in Q3 sales'.", + "Attach the comment 'Needs further segmentation analysis' to dashboard 'dash-456' by user 'analyst01'.", + "Send a tagged comment with tags ['urgent','review'] on report 'rpt-234' from user 'user42'." + ] + }, + "tags": [ + "comment", + "feedback", + "data-report", + "collaboration", + "annotation", + "communication" + ], + "examples": [ + { + "inputJson": "{\"reportId\":\"rpt-123\",\"userId\":\"user-789\",\"commentText\":\"Please review the anomaly in Q3 sales.\"}", + "description": "Send a basic comment to a report identifying a sales anomaly." + }, + { + "inputJson": "{\"reportId\":\"dash-456\",\"userId\":\"analyst01\",\"commentText\":\"Needs further segmentation analysis\",\"tags\":[\"analysis\",\"segmentation\"]}", + "description": "Send a comment with tags on a dashboard requesting additional analysis." + }, + { + "inputJson": "{\"reportId\":\"rpt-234\",\"userId\":\"user42\",\"commentText\":\"Urgent: Check data source integrity.\",\"timestamp\":\"2024-06-01T10:15:00Z\",\"tags\":[\"urgent\",\"review\"]}", + "description": "Send an urgent comment with timestamp and tags to a report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "data-analytics.formatEndpoint", + "description": "Formats raw endpoint analytics data into a standardized JSON or CSV structure for easier consumption and visualization. Accepts raw endpoint response times, error rates, and traffic metrics. Processes the data by normalizing timestamps, rounding numeric values, and structuring nested endpoint details. Outputs formatted data as a JSON object or CSV string depending on parameters.", + "category": "data-analytics", + "parameters": [ + { + "name": "rawData", + "type": "object", + "description": "Raw endpoint analytics data containing metrics like response times, error counts, and request volumes.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' for structured JSON object or 'csv' for CSV formatted string.", + "required": false, + "defaultValue": "json" + }, + { + "name": "roundDecimals", + "type": "number", + "description": "Number of decimal places to round numeric metrics to for readability. Defaults to no rounding if zero or omitted.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "When outputFormat is 'csv', whether to include header row with column names.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timestampFormat", + "type": "string", + "description": "Format string to normalize timestamps within the data. If empty, ISO 8601 format is used.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Formatted endpoint analytics data returned either as a JSON object with nested metrics or a string if CSV format is requested." + }, + "aiAgent": { + "useCase": "Use this tool when an agent receives raw, inconsistent endpoint analytics data and needs to reformat it into structured, clean JSON or CSV to feed into visualization tools or reports. Ideal for normalizing timestamps, rounding values, and transforming complex nested metrics into flat or hierarchical structured formats without data loss.", + "limitations": "Cannot validate the correctness of metric values or augment missing data; only formats existing input. Does not analyze or interpret metrics beyond basic rounding and timestamp normalization.", + "examples": [ + "Format raw endpoint performance data into JSON for dashboard ingestion.", + "Convert raw metrics into CSV with headers for export to spreadsheet.", + "Round numeric values to 1 decimal place and output as JSON." + ] + }, + "tags": [ + "data-analytics", + "formatting", + "endpoint", + "json", + "csv", + "metrics", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"rawData\":{\"endpoints\":[{\"url\":\"/api/user\",\"responseTimeMs\":123.4567,\"errorRate\":0.0234,\"timestamp\":\"2024-06-15T12:34:56.789Z\"},{\"url\":\"/api/order\",\"responseTimeMs\":234.5678,\"errorRate\":0.0456,\"timestamp\":\"2024-06-15T12:35:56.789Z\"}]},\"outputFormat\":\"json\",\"roundDecimals\":2,\"timestampFormat\":\"\"}", + "description": "Format raw endpoint data into JSON, rounding numbers to 2 decimals, using default ISO 8601 timestamps." + }, + { + "inputJson": "{\"rawData\":{\"endpoints\":[{\"url\":\"/api/user\",\"responseTimeMs\":123.4567,\"errorRate\":0.0234,\"timestamp\":\"2024-06-15T12:34:56.789Z\"},{\"url\":\"/api/order\",\"responseTimeMs\":234.5678,\"errorRate\":0.0456,\"timestamp\":\"2024-06-15T12:35:56.789Z\"}]},\"outputFormat\":\"csv\",\"roundDecimals\":1,\"includeHeaders\":true}", + "description": "Format raw endpoint data into CSV with headers, rounding numbers to 1 decimal place." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "data-analytics.draftWord", + "description": "Generates a context-aware, data-related word or short phrase based on provided data insights, topics, or themes. Accepts an optional theme or keyword and outputs a relevant analytical term or concise descriptor to assist in summarizing or labeling data topics.", + "category": "data-analytics", + "parameters": [ + { + "name": "theme", + "type": "string", + "description": "Optional keyword or theme to guide the word generation relevant to the data context.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the generated word or phrase.", + "required": false, + "defaultValue": "15" + }, + { + "name": "includeIndustryJargon", + "type": "boolean", + "description": "Whether to include specialized industry-specific terms in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated word or phrase and a confidence score indicating relevance to the provided theme." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a concise, meaningful word or phrase that summarizes or labels a specific data insight, theme, or analytical concept. This helps in creating summaries, labels, or tags for data reports or visualizations.", + "limitations": "Cannot generate full explanations, longer text descriptions, or highly creative content unrelated to data analysis contexts. Limited to single words or short phrases.", + "examples": [ + "Generate a concise word summarizing customer churn insights.", + "Draft a label for sales growth analytics.", + "Create a short phrase that reflects environmental data trends." + ] + }, + "tags": [ + "data", + "analytics", + "word-generation", + "labeling", + "summarization", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"theme\":\"customer retention\",\"maxLength\":12,\"includeIndustryJargon\":true}", + "description": "Generate a concise analytical term related to customer retention including industry jargon." + }, + { + "inputJson": "{\"theme\":\"sales growth\",\"maxLength\":10,\"includeIndustryJargon\":false}", + "description": "Draft a short phrase capturing the essence of sales growth without industry jargon." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "data-analytics.formatSummary", + "description": "Formats a raw data summary object into a structured textual report or customizable format. Accepts summary data as input, applies optional styling and verbosity rules, and outputs a formatted string suitable for presentation or documentation purposes.", + "category": "data-analytics", + "parameters": [ + { + "name": "summaryData", + "type": "object", + "description": "The raw summary data object containing metrics, statistics, and analysis results to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The desired output format style, such as 'plain', 'markdown', or 'html' to control styling and layout.", + "required": false, + "defaultValue": "\"plain\"" + }, + { + "name": "includeSections", + "type": "array", + "description": "List of summary sections to include in the output, e.g., ['overview','statistics','insights']. Empty array includes all.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "verbosityLevel", + "type": "number", + "description": "Controls the detail level in the formatted summary: 1=minimal, 5=very detailed.", + "required": false, + "defaultValue": "\"3\"" + }, + { + "name": "customHeaders", + "type": "object", + "description": "An optional mapping of section keys to custom header titles to override defaults.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing a single 'formattedSummary' string with the fully formatted textual report ready for display or export." + }, + "aiAgent": { + "useCase": "Use this tool when you have a data summary object derived from analytics or reports and need to produce a cleanly formatted, readable textual document for stakeholders or presentations. Ideal for converting raw JSON summary data into human-friendly markdown, HTML, or plain text reports with configurable detail and sections.", + "limitations": "Cannot generate visual charts or graphs, only textual formatted summaries. Does not perform analytics calculations or data aggregation, only formats existing summary data.", + "examples": [ + "Format a summary JSON into a markdown report with detailed verbosity.", + "Generate a plain text summary including only the overview and insights sections.", + "Output an HTML formatted summary with custom headers for presentation." + ] + }, + "tags": [ + "formatting", + "data-summary", + "reporting", + "text-generation", + "presentation" + ], + "examples": [ + { + "inputJson": "{\"summaryData\":{\"overview\":\"Sales increased by 15%\",\"statistics\":{\"totalSales\":15000,\"regionBreakdown\":{\"North\":8000,\"South\":7000}},\"insights\":\"Growth driven mainly by North region.\"},\"formatStyle\":\"markdown\",\"includeSections\":[\"overview\",\"insights\"],\"verbosityLevel\":4,\"customHeaders\":{\"overview\":\"Executive Summary\",\"insights\":\"Key Insights\"}}", + "description": "Format a sales summary to markdown including only overview and insights with custom headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "data-analytics.formatModule", + "description": "Formats source code modules by parsing and reformatting them according to specified style conventions. Accepts code as input along with language and style preferences, processes the formatting, and returns the cleaned, consistently styled module code output.", + "category": "data-analytics", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The source code of the module to be formatted", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the source code (e.g., 'javascript', 'python')", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Formatting style guide to apply (e.g., 'prettier', 'eslint', 'pep8')", + "required": false, + "defaultValue": "prettier" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces to use for indentation", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum line length before wrapping", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted code string and optionally a report of formatting changes or errors." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to standardize or clean source code modules to ensure consistent style and improve readability before analysis or visualization. It is especially useful when handling code snippets from diverse sources that vary in formatting.", + "limitations": "This tool formats code syntax and style but does not perform semantic code analysis or fix logical errors. It supports commonly used programming languages but may not support all language dialects or proprietary syntax.", + "examples": [ + "Format a JavaScript module to prettier style with 4 spaces indents", + "Reformat a Python script according to PEP8 guidelines", + "Standardize indentation and line length of code before visualization" + ] + }, + "tags": [ + "formatting", + "code", + "module", + "style", + "data-analytics", + "code-quality", + "visualization-prep" + ], + "examples": [ + { + "inputJson": "{\"code\":\"function foo( ) {console.log('bar');}\",\"language\":\"javascript\",\"styleGuide\":\"prettier\",\"indentSize\":2,\"useTabs\":false,\"maxLineLength\":80}", + "description": "Format a simple JavaScript function using Prettier style with 2 space indents." + }, + { + "inputJson": "{\"code\":\"def foo():\\n print('bar')\",\"language\":\"python\",\"styleGuide\":\"pep8\",\"indentSize\":4,\"useTabs\":false,\"maxLineLength\":79}", + "description": "Reformat a Python function according to PEP8 with 4 space indentation and line length 79." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "data-analytics.formatCSV", + "description": "Formats CSV data string by applying customizable options such as delimiter, quote character, newline characters, and trimming whitespace. Accepts raw CSV text input and returns a cleaned and consistently formatted CSV string for downstream processing or export.", + "category": "data-analytics", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "Raw CSV data as a string input to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate fields in the CSV, such as comma or semicolon.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character used to quote fields containing special characters (e.g., double quote).", + "required": false, + "defaultValue": "\"" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Flag to trim leading and trailing whitespace from each field.", + "required": false, + "defaultValue": "true" + }, + { + "name": "newlineChar", + "type": "string", + "description": "Character(s) used to separate lines, e.g., \\n or \\r\\n.", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to keep the first row as headers or treat all rows as data.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "string", + "description": "Formatted CSV data string according to the specified options, normalized delimiters, quotes, line breaks, and trimming." + }, + "aiAgent": { + "useCase": "Use this tool when needing to ensure CSV data adheres to consistent formatting standards before analysis, ingestion into systems sensitive to CSV format, or exporting standardized CSV files. It is ideal for cleaning raw CSV text that might have inconsistent delimiters, spacing, or quoting.", + "limitations": "This tool does not parse CSV into structured data formats like JSON or objects; it only reformats raw CSV strings. It cannot fix corrupted or malformed CSV data that breaks fundamental CSV structure.", + "examples": [ + "Format CSV text with semicolon delimiters and no quotes for export.", + "Trim whitespace and unify newlines in raw CSV data fetched from an untrusted source.", + "Standardize CSV with double quotes and commas as delimiter for a reporting pipeline." + ] + }, + "tags": [ + "data-analytics", + "csv", + "formatting", + "data-cleaning", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"csvData\":\"Name , Age , Location \\n Alice , 30 , New York \\n Bob , 25 , Los Angeles\",\"delimiter\":\",\",\"quoteChar\":\"\\\"\",\"trimWhitespace\":true,\"newlineChar\":\"\\n\",\"includeHeaders\":true}", + "description": "Formats CSV with trimmed whitespace, comma delimiter, and default quotes." + }, + { + "inputJson": "{\"csvData\":\"ID;Name;Score\\n1;John Doe;88\\n2;Jane Smith;94\",\"delimiter\":\";\",\"quoteChar\":\"\",\"trimWhitespace\":false,\"newlineChar\":\"\\r\\n\",\"includeHeaders\":true}", + "description": "Formats semicolon-delimited CSV changing newline to Windows style without quotes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "data-analytics.buildVariable", + "description": "Creates a new variable from an existing dataset by applying transformation logic such as arithmetic operations, conditional statements, or aggregation. Accepts JSON-formatted dataset and transformation instructions, processes the data accordingly, and outputs the dataset with the newly constructed variable included.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataset", + "type": "array", + "description": "An array of objects representing the rows of the dataset, with key-value pairs for each field. Required to perform transformations.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableName", + "type": "string", + "description": "The name of the new variable to be added to each data record.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationLogic", + "type": "string", + "description": "A string expression defining the transformation to create the new variable, which may include arithmetic operations, field references, and conditional logic in a simple expression language.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the output dataset; typically 'array' for array of objects or 'json' for JSON string. Defaults to 'array'.", + "required": false, + "defaultValue": "array" + }, + { + "name": "filterCondition", + "type": "string", + "description": "Optional conditional expression to filter dataset rows before applying the transformation.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the updated dataset with the new variable added to each row, in specified output format." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to derive new insights or features from existing structured data by adding computed variables based on logical or mathematical expressions. It helps augment data for analytics or machine learning tasks by creating variables that do not originally exist.", + "limitations": "This tool cannot perform complex multi-step data processing pipelines or advanced statistical operations beyond user-provided transformation logic. It also assumes that input data is well-formed and transformations are syntactically correct.", + "examples": [ + "Create a new variable 'totalCost' by multiplying 'quantity' and 'unitPrice'.", + "Add a variable 'discounted' that is true if 'purchaseAmount' exceeds 100.", + "Filter dataset to only 'region' == 'North' and create variable 'salesTax' as 10% of 'amount'." + ] + }, + "tags": [ + "data transformation", + "variable creation", + "feature engineering", + "dataset augmentation", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"dataset\":[{\"quantity\":5,\"unitPrice\":20},{\"quantity\":3,\"unitPrice\":15}],\"variableName\":\"totalCost\",\"transformationLogic\":\"quantity * unitPrice\",\"outputFormat\":\"array\"}", + "description": "Compute 'totalCost' as the product of quantity and unitPrice for each record." + }, + { + "inputJson": "{\"dataset\":[{\"purchaseAmount\":120},{\"purchaseAmount\":80}],\"variableName\":\"discounted\",\"transformationLogic\":\"purchaseAmount > 100\",\"outputFormat\":\"array\"}", + "description": "Add a boolean variable 'discounted' indicating if purchaseAmount exceeds 100." + }, + { + "inputJson": "{\"dataset\":[{\"region\":\"North\",\"amount\":200},{\"region\":\"South\",\"amount\":150}],\"variableName\":\"salesTax\",\"transformationLogic\":\"amount * 0.1\",\"filterCondition\":\"region == 'North'\",\"outputFormat\":\"array\"}", + "description": "Filter rows where region is 'North', then add 'salesTax' as 10% of amount in those rows." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "data-analytics.buildInstance", + "description": "Builds a configurable data analytics instance based on user specifications. Accepts parameters defining data sources, transformation steps, storage options, and visualization preferences. Processes these inputs to set up an analytics environment and outputs a summary of the created instance including endpoints and configuration details.", + "category": "data-analytics", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "Unique name for the analytics instance to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "List of data source configurations specifying connection details and types.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "Ordered list of data transformation steps to apply to the data sources.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "storageConfig", + "type": "object", + "description": "Configuration details for data storage, including type and access credentials.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationConfig", + "type": "object", + "description": "Settings for desired visualization tools and dashboard options.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableRealtime", + "type": "boolean", + "description": "Flag to enable real-time data processing and updating capabilities.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxComputeUnits", + "type": "number", + "description": "Maximum compute units allocated for the instance to manage performance and cost.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing the instance ID, configuration summary, active endpoints, and access information." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to programmatically provision a customized analytics environment tailored to specific data sources and user requirements. It helps automate infrastructure setup for data ingestion, transformation, storage, and visualization, ensuring rapid deployment of analytic capabilities.", + "limitations": "It cannot automatically optimize transformations or select the best data sources without user input. It does not manage instance scaling beyond the initial maxComputeUnits parameter and does not handle post-deployment monitoring or error remediation.", + "examples": [ + "Create an instance named 'SalesDashboard', connected to SQL and CSV data sources, with standard transformation steps, using cloud storage, and enable real-time updates.", + "Build an instance that processes IoT sensor data with custom transformation, outputs to a local database, and configures visualizations for anomaly detection.", + "Set up an analytics instance with maxComputeUnits=20, integrating multiple data lakes and enabling dashboard visualizations with caching enabled." + ] + }, + "tags": [ + "data-analytics", + "infrastructure", + "instance", + "provisioning", + "automation", + "visualization", + "transformation" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"SalesDashboard\",\"dataSources\":[{\"type\":\"sql\",\"connectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\"},{\"type\":\"csv\",\"filePath\":\"s3://bucket/sales_data.csv\"}],\"transformations\":[{\"step\":\"cleanse\",\"params\":{\"method\":\"remove_nulls\"}},{\"step\":\"aggregate\",\"params\":{\"groupBy\":\"region\",\"metric\":\"sum\"}}],\"storageConfig\":{\"type\":\"cloud\",\"provider\":\"AWS\",\"bucket\":\"analytics-results\"},\"visualizationConfig\":{\"tool\":\"Tableau\",\"dashboardId\":\"db123\"},\"enableRealtime\":true,\"maxComputeUnits\":15}", + "description": "Build a SalesDashboard instance integrating SQL and CSV data with cleansing and aggregation, storing results in AWS, enabling real-time updates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "data-analytics.buildComponent", + "description": "Builds reusable data visualization or dashboard components based on input datasets and configuration parameters. Accepts structured data and component specifications, processes them to create interactive or static visual components, and outputs code or configuration objects ready for integration into data analytics applications.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data objects representing structured dataset to visualize or analyze. Must be provided for component construction.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentType", + "type": "string", + "description": "Type of component to build such as 'barChart', 'lineGraph', 'table', or 'dashboardPanel'. Determines visualization style.", + "required": true, + "defaultValue": "" + }, + { + "name": "config", + "type": "object", + "description": "Configuration object specifying component properties like colors, labels, axes, filters, and interactivity options.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'reactComponent', 'jsonSchema', or 'htmlSnippet'. Defines how the built component is returned.", + "required": false, + "defaultValue": "reactComponent" + }, + { + "name": "theme", + "type": "string", + "description": "Optional theme name to apply styling consistent with existing UI/branding, e.g. 'dark', 'light'.", + "required": false, + "defaultValue": "light" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated component code or configuration, including metadata such as component type and applied configuration." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate data visualization or dashboard components from raw datasets for inclusion in analytics platforms or apps. Ideal for automating UI generation or customizing visual components based on dynamic data inputs.", + "limitations": "This tool does not perform data cleaning or statistical analysis; it assumes input data is preprocessed and suitable for visualization. It also does not render the components but returns code or schema for rendering externally.", + "examples": [ + "Build a bar chart component from sales data with custom color settings.", + "Create a dashboard panel showing key performance indicators from given metrics.", + "Generate a React component for a line graph visualizing monthly revenues." + ] + }, + "tags": [ + "data", + "analytics", + "visualization", + "component", + "dashboard", + "chart", + "code-generation", + "ui" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"Jan\",\"sales\":100},{\"month\":\"Feb\",\"sales\":150}],\"componentType\":\"barChart\",\"config\":{\"color\":\"#FF0000\",\"xAxis\":\"month\",\"yAxis\":\"sales\"},\"outputFormat\":\"reactComponent\",\"theme\":\"dark\"}", + "description": "Build a dark-themed React bar chart component for monthly sales data with red bars." + }, + { + "inputJson": "{\"data\":[{\"metric\":\"Revenue\",\"value\":1000},{\"metric\":\"Profit\",\"value\":200}],\"componentType\":\"dashboardPanel\",\"config\":{\"showLegend\":true},\"outputFormat\":\"jsonSchema\"}", + "description": "Generate a JSON schema for a dashboard panel showing revenue and profit with legends." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "data-analytics.draftContract", + "description": "This tool assists in drafting a contract document based on input parameters such as contract parties, terms, clauses, and duration. It processes structured input data to generate a coherent, legal-style contract draft text output, suitable for review and further customization.", + "category": "data-analytics", + "parameters": [ + { + "name": "partyOneName", + "type": "string", + "description": "Full name of the first contracting party (individual or organization).", + "required": true, + "defaultValue": "" + }, + { + "name": "partyTwoName", + "type": "string", + "description": "Full name of the second contracting party (individual or organization).", + "required": true, + "defaultValue": "" + }, + { + "name": "contractDurationMonths", + "type": "number", + "description": "Length of the contract in months.", + "required": true, + "defaultValue": "" + }, + { + "name": "contractStartDate", + "type": "string", + "description": "Contract start date in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Description of payment terms agreed between parties.", + "required": false, + "defaultValue": "" + }, + { + "name": "confidentialityClause", + "type": "boolean", + "description": "Whether to include a confidentiality clause in the contract.", + "required": false, + "defaultValue": "false" + }, + { + "name": "terminationConditions", + "type": "string", + "description": "Conditions under which the contract can be terminated by either party.", + "required": false, + "defaultValue": "" + }, + { + "name": "additionalClauses", + "type": "array", + "description": "Array of additional custom clauses to include as strings.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated contract draft as a string under the key 'contractText'." + }, + "aiAgent": { + "useCase": "Use this tool when drafting preliminary contract documents between two parties by providing essential details such as party names, contract length, payment terms, and clauses to automate initial contract creation. It helps quickly produce a structured draft that can be reviewed and edited by legal professionals.", + "limitations": "Does not replace professional legal advice. The generated contract draft may lack jurisdiction-specific legal enforceability or complex legal provisions requiring expert review.", + "examples": [ + "Draft a service agreement contract for 12 months starting from 2024-07-01 between Acme Corp and Beta LLC including payment terms and confidentiality clause.", + "Generate a contract draft for a 6-month consulting agreement between John Doe and XYZ Inc. with termination conditions specified.", + "Create a basic partnership contract for an 18-month duration starting 2024-01-15 between Alpha Ltd and Omega Partners with custom additional clauses." + ] + }, + "tags": [ + "document-generation", + "contract-drafting", + "legal", + "automation", + "data-analytics" + ], + "examples": [ + { + "inputJson": "{\"partyOneName\":\"Acme Corporation\",\"partyTwoName\":\"Beta LLC\",\"contractDurationMonths\":12,\"contractStartDate\":\"2024-07-01\",\"paymentTerms\":\"Monthly payment of USD 5,000 within 15 days of invoice receipt.\",\"confidentialityClause\":true,\"terminationConditions\":\"Either party may terminate with 30 days written notice.\",\"additionalClauses\":[\"Dispute resolution via arbitration.\",\"All intellectual property remains with Acme Corporation.\"]}", + "description": "Draft a 1-year contract starting July 1, 2024 with payment, confidentiality, termination, and custom clauses included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Contract", + "context": null + } + }, + { + "name": "data-analytics.generateReference", + "description": "Generates detailed reference documentation for a dataset or data analytics report by analyzing metadata, statistical summaries, and visualizations. Accepts structured data inputs and outputs formatted reference content including variable definitions, data sources, and summary statistics.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataset", + "type": "object", + "description": "The structured dataset or data summary object to generate reference documentation for, including metadata and statistical information.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeVisualizations", + "type": "boolean", + "description": "Whether to include references to visualizations (charts, graphs) in the generated reference content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "The natural language to use for the generated reference content, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The format of the generated reference document; supports 'markdown', 'html', or 'plaintext'.", + "required": false, + "defaultValue": "markdown" + }, + { + "name": "detailedLevel", + "type": "string", + "description": "Level of detail for the reference content: 'summary' for concise, 'detailed' for comprehensive documentation.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reference document as a string, along with metadata such as format and length." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate human-readable reference documentation for data analytics outputs, enabling better understanding and traceability of datasets and analytical results. It is essential for reporting, compliance, and collaboration.", + "limitations": "Cannot replace domain expert interpretation or generate reference documentation without adequate metadata and data summary inputs; visualizations need to be pre-generated and referenced rather than created by this tool.", + "examples": [ + "Generate a markdown reference document for a dataset summarizing sales data including variable definitions and statistics.", + "Create an HTML formatted data reference for a demographic dataset with detailed descriptions and links to charts.", + "Produce a plaintext summary reference describing the columns, data types, and basic statistics of survey results." + ] + }, + "tags": [ + "data", + "analytics", + "reference", + "documentation", + "reporting", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"dataset\":{\"name\":\"SalesData2023\",\"columns\":[{\"name\":\"Date\",\"type\":\"date\",\"description\":\"Date of sale\"},{\"name\":\"Revenue\",\"type\":\"number\",\"description\":\"Sales revenue in USD\"}],\"summaryStats\":{\"Revenue\":{\"mean\":5000,\"min\":1000,\"max\":10000}}},\"includeVisualizations\":true,\"language\":\"en\",\"outputFormat\":\"markdown\",\"detailedLevel\":\"summary\"}", + "description": "Generate a markdown summary reference document for a sales dataset including variable descriptions and summary statistics with visualization references." + }, + { + "inputJson": "{\"dataset\":{\"name\":\"EmployeeSurvey\",\"columns\":[{\"name\":\"Age\",\"type\":\"number\",\"description\":\"Age of respondent\"},{\"name\":\"Satisfaction\",\"type\":\"number\",\"description\":\"Job satisfaction score\"}],\"summaryStats\":{\"Age\":{\"mean\":35,\"min\":22,\"max\":60}}},\"includeVisualizations\":false,\"language\":\"en\",\"outputFormat\":\"plaintext\",\"detailedLevel\":\"detailed\"}", + "description": "Produce a detailed plaintext reference document describing survey data columns and statistics without visualization references." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Reference", + "context": null + } + }, + { + "name": "data-analytics.generateSession", + "description": "Generates a detailed session analytics report based on raw event data input. Accepts user interaction events with timestamps and metadata, processes session segmentation with configurable timeout, and outputs summary metrics including session length, event counts, and user engagement statistics as structured JSON.", + "category": "data-analytics", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of user event objects containing timestamps and metadata for session generation.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionTimeoutMinutes", + "type": "number", + "description": "Time interval in minutes to separate events into different sessions if no activity occurs.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeUserSegments", + "type": "boolean", + "description": "Flag to include user segment analysis within sessions if user attribute data is provided.", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone identifier for interpreting timestamps, defaults to UTC if not provided.", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "maxSessions", + "type": "number", + "description": "Maximum number of sessions to generate for performance control; processes all if zero or omitted.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "A structured JSON object summarizing generated sessions with metrics like session durations, event counts, unique users, and optionally segment analysis." + }, + "aiAgent": { + "useCase": "Use this tool when you need to derive session-level analytics from raw event streams, such as web or app user activity logs. It segments continuous user events into sessions, computes engagement metrics, and can optionally perform user segmentation within those sessions, aiding insights into user behavior patterns and engagement timing.", + "limitations": "This tool cannot process incomplete or inconsistently formatted event data and does not perform real-time streaming analytics. It assumes timestamps are accurate and does not infer missing records.", + "examples": [ + "Generate session analytics for web app user events collected over the last day with default 30-minute session timeout.", + "Create sessions from mobile app event logs, setting session timeout to 15 minutes and including user segmentation.", + "Analyze a large batch of user events with a cap of 100 sessions to limit processing time." + ] + }, + "tags": [ + "analytics", + "sessionization", + "user-behavior", + "event-processing", + "data-insights" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"userId\":\"U1\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"eventType\":\"page_view\"},{\"userId\":\"U1\",\"timestamp\":\"2024-06-01T10:10:00Z\",\"eventType\":\"click\"},{\"userId\":\"U1\",\"timestamp\":\"2024-06-01T11:00:00Z\",\"eventType\":\"page_view\"}],\"sessionTimeoutMinutes\":30,\"includeUserSegments\":false,\"timeZone\":\"UTC\",\"maxSessions\":0}", + "description": "Generate sessions from user U1 events with a 30-minute timeout, no user segmentation, and UTC timezone." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "data-analytics.generateTrend", + "description": "Generates trend analysis from time series or sequential data. Accepts an array of data points with timestamps and values, applies smoothing and statistical methods to identify upward, downward, or stable trends over selected intervals, and outputs a summarized trend report including trend direction, strength, and confidence metrics.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "Array of data points, each including a timestamp and a numeric value to analyze for trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampKey", + "type": "string", + "description": "The key name used in each data point object representing the timestamp (e.g., 'date' or 'time').", + "required": false, + "defaultValue": "timestamp" + }, + { + "name": "valueKey", + "type": "string", + "description": "The key name used in each data point object representing the numeric value to analyze for trends.", + "required": false, + "defaultValue": "value" + }, + { + "name": "trendInterval", + "type": "string", + "description": "The timespan or frequency (e.g., 'daily', 'weekly', 'monthly') over which to aggregate and evaluate the trend.", + "required": false, + "defaultValue": "daily" + }, + { + "name": "smoothingMethod", + "type": "string", + "description": "The smoothing technique to reduce noise before trend detection, options include 'movingAverage', 'exponential', or 'none'.", + "required": false, + "defaultValue": "movingAverage" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Statistical confidence level (0 to 1) to quantify the reliability of the detected trend.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "detectSeasonality", + "type": "boolean", + "description": "Whether to attempt identifying and adjusting for seasonal patterns during trend analysis.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object summarizing the detected trend including direction ('upward', 'downward', 'stable'), strength (numeric score), confidence (probability), and optionally seasonality info." + }, + "aiAgent": { + "useCase": "Use this tool to analyze time-series datasets to automatically identify and summarize trends across specified intervals. Ideal for financial data, sales figures, web analytics, or any timestamped metrics requiring quantitative trend insights. It helps agents understand data evolution without manual statistical expertise.", + "limitations": "This tool assumes moderately clean, timestamped numeric data. It cannot infer causal relationships or predict future data points beyond trend direction. It may be less accurate with highly erratic or sparse data and does not perform full seasonality decomposition beyond basic adjustments.", + "examples": [ + "Identify the monthly sales trend from last year’s daily sales dataset.", + "Detect the trend direction and strength in website daily visitor counts over the past 6 months.", + "Analyze weekly temperature readings to determine if there is an upward or downward trend." + ] + }, + "tags": [ + "data-analytics", + "trend-analysis", + "time-series", + "statistical-analysis", + "business-intelligence", + "visualization-ready" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2023-01-01\",\"value\":100},{\"timestamp\":\"2023-01-02\",\"value\":105},{\"timestamp\":\"2023-01-03\",\"value\":110},{\"timestamp\":\"2023-01-04\",\"value\":108},{\"timestamp\":\"2023-01-05\",\"value\":115}],\"timestampKey\":\"timestamp\",\"valueKey\":\"value\",\"trendInterval\":\"daily\",\"smoothingMethod\":\"movingAverage\",\"confidenceLevel\":0.95,\"detectSeasonality\":true}", + "description": "Analyze daily sales values over 5 days to detect trend direction and strength." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "data-analytics.generateHTML", + "description": "Generates an HTML report from structured data input, applying optional formatting and visualization options. Accepts data in JSON or CSV format, processes it to create tables, charts, and summaries, and outputs a complete HTML string that can be displayed in browsers or embedded in pages.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "string", + "description": "The input dataset in JSON array or CSV string format. Required for generating the report.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: 'json' or 'csv'. Defaults to 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeCharts", + "type": "boolean", + "description": "Whether to include charts in the HTML report to visualize data trends. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of charts to generate if includeCharts is true. Options: 'bar', 'line', 'pie'. Defaults to 'bar'.", + "required": false, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title of the HTML report to display at the top. Optional.", + "required": false, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "Array of column names to include in the report. If empty, includes all columns. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section with aggregates (sum, average) for numeric columns. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "CSS theme name for styling the report. Example themes: 'light', 'dark'. Defaults to 'light'.", + "required": false, + "defaultValue": "light" + } + ], + "returns": { + "type": "object", + "description": "An object containing the full HTML string of the generated report under 'html' key." + }, + "aiAgent": { + "useCase": "Use this tool when a user requests an interactive or well-formatted HTML report from raw structured data inputs, enabling web display or embedding without manual coding. Ideal for quick visualization and sharing of datasets as HTML pages.", + "limitations": "Cannot process unstructured data formats or extremely large datasets exceeding memory limits. Charts are basic and limited to common types; advanced custom visualizations require separate tools.", + "examples": [ + "Generate an HTML report with bar charts from JSON data of sales records.", + "Create a simple HTML table from CSV data without charts.", + "Produce a dark-themed HTML report summarizing monthly expenses with pie charts." + ] + }, + "tags": [ + "data-analytics", + "html", + "report", + "visualization", + "charts", + "data transformation" + ], + "examples": [ + { + "inputJson": "{\"data\":\"[{\\\"product\\\":\\\"A\\\",\\\"sales\\\":100},{\\\"product\\\":\\\"B\\\",\\\"sales\\\":150}]\",\"dataFormat\":\"json\",\"includeCharts\":true,\"chartType\":\"bar\",\"title\":\"Sales Report\",\"columns\":[\"product\",\"sales\"],\"includeSummary\":true,\"theme\":\"light\"}", + "description": "Generate a sales report with bar chart from JSON data." + }, + { + "inputJson": "{\"data\":\"product,sales\\nA,100\\nB,150\",\"dataFormat\":\"csv\",\"includeCharts\":false,\"title\":\"Sales Table\",\"columns\":[],\"includeSummary\":false,\"theme\":\"light\"}", + "description": "Create a simple HTML table without charts from CSV data." + }, + { + "inputJson": "{\"data\":\"[{\\\"category\\\":\\\"Food\\\",\\\"amount\\\":200},{\\\"category\\\":\\\"Utilities\\\",\\\"amount\\\":150}]\",\"dataFormat\":\"json\",\"includeCharts\":true,\"chartType\":\"pie\",\"title\":\"Monthly Expenses\",\"columns\":[\"category\",\"amount\"],\"includeSummary\":true,\"theme\":\"dark\"}", + "description": "Generate a dark themed report with pie chart for monthly expenses." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "data-analytics.generateChart", + "description": "Generates a visual chart from provided structured data. Accepts data arrays and configuration options, processes the data to create various chart types (e.g., line, bar, pie), and outputs a chart image or embeddable HTML snippet for visualization and reporting purposes.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data objects representing rows with key-value pairs; required for plotting the chart.", + "required": true, + "defaultValue": "" + }, + { + "name": "chartType", + "type": "string", + "description": "Type of chart to generate (e.g., 'line', 'bar', 'pie', 'scatter').", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Title of the chart displayed on top.", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisKey", + "type": "string", + "description": "Data object key to use for the x-axis values.", + "required": true, + "defaultValue": "" + }, + { + "name": "yAxisKey", + "type": "string", + "description": "Data object key to use for the y-axis values.", + "required": true, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Color palette name or hex code for the chart elements.", + "required": false, + "defaultValue": "default" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated chart in pixels.", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated chart in pixels.", + "required": false, + "defaultValue": "600" + }, + { + "name": "showLegend", + "type": "boolean", + "description": "Whether to display the chart legend or not.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing chart output such as a base64 encoded image string or embeddable HTML." + }, + "aiAgent": { + "useCase": "Use this tool when needing to create visual representations of data for reports, dashboards, or exploratory data analysis by converting raw data arrays into customizable chart visuals. Ideal for assisting users to understand data trends, distribution, or comparisons clearly.", + "limitations": "Cannot perform advanced statistical analysis or generate charts from unstructured or non-tabular data formats. Does not support real-time data streaming or interactive chart features beyond static images or basic embeddable HTML.", + "examples": [ + "Generate a bar chart visualizing monthly sales figures from an array of sales data objects.", + "Create a pie chart to show percentage distribution of categories in a dataset.", + "Produce a line chart illustrating temperature changes over time with custom dimensions and color scheme." + ] + }, + "tags": [ + "data-visualization", + "chart-generation", + "reporting", + "analytics", + "image-output", + "customizable", + "static-charts" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"month\":\"January\",\"sales\":100},{\"month\":\"February\",\"sales\":150}],\"chartType\":\"bar\",\"title\":\"Monthly Sales\",\"xAxisKey\":\"month\",\"yAxisKey\":\"sales\",\"colorScheme\":\"blue\",\"width\":600,\"height\":400,\"showLegend\":true}", + "description": "Generate a blue bar chart showing sales by month with a title and legend." + }, + { + "inputJson": "{\"data\":[{\"category\":\"A\",\"value\":40},{\"category\":\"B\",\"value\":60}],\"chartType\":\"pie\",\"title\":\"Category Distribution\",\"xAxisKey\":\"category\",\"yAxisKey\":\"value\",\"colorScheme\":\"pastel\",\"width\":500,\"height\":500,\"showLegend\":false}", + "description": "Create a pastel-colored pie chart showing category distribution without legend." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Chart", + "context": null + } + }, + { + "name": "data-analytics.createReference", + "description": "Generates a structured reference dataset from input data by identifying key entities and relationships, enabling consistent cross-referencing and annotation in analytics workflows. Accepts raw or semi-structured data, extracts reference points using customizable extraction rules, and outputs a standardized reference object useful for linking datasets or documentation.", + "category": "data-analytics", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The raw data or dataset object from which to extract reference entities and relationships for analysis and annotation.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractionRules", + "type": "object", + "description": "An optional set of rules or patterns to define how references should be identified and extracted from the input data, such as regex patterns or entity definitions.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include metadata such as timestamps, source info, and extraction confidence scores in the output reference structure.", + "required": false, + "defaultValue": "true" + }, + { + "name": "referenceType", + "type": "string", + "description": "Type or category of references to create, e.g., 'entity', 'term', 'code', allowing for specific tailoring of the extraction process.", + "required": false, + "defaultValue": "entity" + } + ], + "returns": { + "type": "object", + "description": "A structured reference object containing identified entities or terms with their attributes, relationships, and optional metadata suitable for data linkage or annotation." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a consistent and reusable reference framework from complex datasets to enable cross-dataset annotation, linking, and enhanced data analytics. It is especially useful when dealing with semi-structured or unstructured inputs requiring entity extraction and standardization.", + "limitations": "Cannot perform deep semantic understanding or disambiguation beyond rule-based extraction; relies on quality of input data and extraction rules. Not intended to replace full ontology generation tools.", + "examples": [ + "Create a reference of key entities from a product database for linking with sales records.", + "Generate standardized references of technical terms from a semi-structured document corpus.", + "Extract and structure code references from system logs for correlation analysis." + ] + }, + "tags": [ + "data-analytics", + "reference-creation", + "entity-extraction", + "data-linkage", + "annotation", + "standardization" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"documents\":[{\"text\":\"Product A has code X123 and is supplied by Supplier Y.\"}]},\"extractionRules\":{\"entityPatterns\":{\"code\":\"X\\\\d{3}\",\"supplier\":\"Supplier [A-Z]\"}},\"includeMetadata\":true,\"referenceType\":\"entity\"}", + "description": "Extract entities such as product codes and suppliers from product documents, including metadata for reference linking." + }, + { + "inputJson": "{\"inputData\":{\"records\":[{\"term\":\"Latency\",\"definition\":\"The delay before a transfer of data begins.\"},{\"term\":\"Bandwidth\",\"definition\":\"The maximum rate of data transfer.\"}]},\"extractionRules\":{},\"includeMetadata\":false,\"referenceType\":\"term\"}", + "description": "Create a reference of technical terms from a dataset of definitions without additional metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reference", + "context": null + } + }, + { + "name": "data-analytics.createQueue", + "description": "Creates a configurable data processing queue to manage and process data analytics tasks asynchronously. Accepts parameters defining queue capacity, priority handling, and visibility timeout. Returns configuration and status of the created queue for monitoring and management purposes.", + "category": "data-analytics", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name identifier for the queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "maxSize", + "type": "number", + "description": "Maximum number of items the queue can hold before rejecting new entries.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "visibilityTimeout", + "type": "number", + "description": "Duration in seconds that a message remains invisible to other consumers after being retrieved by a worker.", + "required": false, + "defaultValue": "30" + }, + { + "name": "enablePriority", + "type": "boolean", + "description": "Whether the queue should support priority-based message processing.", + "required": false, + "defaultValue": "false" + }, + { + "name": "priorityLevels", + "type": "number", + "description": "Number of priority levels if priority is enabled; ignored if enablePriority is false.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the details and configuration of the newly created queue, including its name, capacity, timeout settings, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to set up an asynchronous data analytics task handling system, enabling efficient processing of incoming workloads in a controlled and configurable manner, suitable for batch processing or streaming data analytics workloads.", + "limitations": "This tool only creates and configures the queue infrastructure; it does not process or analyze data itself. Does not handle persistent storage or direct execution of data analytics tasks within the queue system.", + "examples": [ + "Create a data analytics queue named 'analyticsTaskQueue' with a max size of 500 and 45 seconds visibility timeout.", + "Create a priority-enabled queue named 'priorityDataQueue' with 5 priority levels to manage critical data processing tasks.", + "Set up a default queue with name 'defaultQueue' using all default parameters for standard task queuing scenarios." + ] + }, + "tags": [ + "queue", + "data analytics", + "asynchronous processing", + "task management", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"analyticsTaskQueue\",\"maxSize\":500,\"visibilityTimeout\":45}", + "description": "Create a queue named 'analyticsTaskQueue' with a maximum size of 500 and visibility timeout of 45 seconds." + }, + { + "inputJson": "{\"queueName\":\"priorityDataQueue\",\"enablePriority\":true,\"priorityLevels\":5}", + "description": "Create a priority-enabled queue 'priorityDataQueue' with 5 priority levels for managing urgent data tasks." + }, + { + "inputJson": "{\"queueName\":\"defaultQueue\"}", + "description": "Create a queue 'defaultQueue' with default size and timeout settings for general task processing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "data-analytics.createThread", + "description": "Creates a data analytics discussion thread based on provided datasets and metrics. Accepts data sources, key metrics, and visualization preferences, then generates a structured communication thread summarizing insights for collaborative analysis.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "List of data source identifiers or URLs to include in the discussion thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyMetrics", + "type": "array", + "description": "Array of metric names to focus on for analysis and discussion.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "Preferred types of visualizations (e.g., bar chart, line graph) to include in the thread.", + "required": false, + "defaultValue": "[\"lineGraph\"]" + }, + { + "name": "threadTitle", + "type": "string", + "description": "Title for the discussion thread.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant user IDs to invite to the thread.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to generate a summary of key insights at the start of the thread.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the thread ID, a URL link to access the created thread, and a summary of included insights and visualizations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initiate a focused communication thread that consolidates relevant data analytics insights, visualizations, and key metrics for team collaboration or reporting. It helps in generating a structured discussion space anchored on given datasets and metrics.", + "limitations": "This tool does not perform deep data analytics or modeling itself; it relies on existing processed data or data sources and cannot replace detailed analysis tools. It also does not handle real-time data updates within threads.", + "examples": [ + "Create a discussion thread for sales data Q1 focusing on revenue and customer acquisition metrics with bar chart visualizations.", + "Generate a data insights thread on user engagement metrics including line graphs and notify the marketing team.", + "Set up a thread summarizing product performance KPIs extracting key metrics and including a summary section." + ] + }, + "tags": [ + "data", + "analytics", + "discussion", + "thread", + "collaboration", + "visualization", + "insights" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[\"sales_db_Q1\",\"customer_acquisition_reports\"],\"keyMetrics\":[\"revenue\",\"newCustomers\"],\"visualizationTypes\":[\"barChart\",\"lineGraph\"],\"threadTitle\":\"Q1 Sales Data Analysis\",\"participants\":[\"user123\",\"user456\"],\"includeSummary\":true}", + "description": "Create a sales analysis thread focused on revenue and customers with bar and line charts inviting two users." + }, + { + "inputJson": "{\"dataSources\":[\"engagement_metrics_april\"],\"keyMetrics\":[\"activeUsers\",\"sessionLength\"],\"visualizationTypes\":[\"lineGraph\"],\"threadTitle\":\"April User Engagement Report\",\"participants\":[\"marketing_team\"],\"includeSummary\":true}", + "description": "Generate a user engagement insights thread for April with line graph visualization and marketing team participants." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "data-analytics.createDeal", + "description": "Creates a detailed business deal record from input parameters including involved parties, terms, financial details, and timeline. Processes the inputs to generate a structured deal summary that can be used for reporting, forecasting, or integration with CRM systems.", + "category": "data-analytics", + "parameters": [ + { + "name": "dealName", + "type": "string", + "description": "The title or name identifier for the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "partiesInvolved", + "type": "array", + "description": "List of stakeholders or companies involved in the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "The monetary value of the deal in USD or specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "ISO 8601 format start date of the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "ISO 8601 format expected end or close date of the deal.", + "required": false, + "defaultValue": "" + }, + { + "name": "dealType", + "type": "string", + "description": "Category or type of the deal (e.g., merger, acquisition, partnership).", + "required": false, + "defaultValue": "partnership" + }, + { + "name": "terms", + "type": "string", + "description": "Summary of key terms and conditions relevant to the deal.", + "required": false, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the deal value, e.g., USD, EUR. Default is USD.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "isConfidential", + "type": "boolean", + "description": "Flag indicating if the deal details are confidential.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Structured record representing the created deal including all inputs and a unique deal ID." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to formalize or register new business deals from gathered data or user input to support analytics, reporting, or CRM updates. Ideal for scenarios requiring consistent deal data format and capturing critical deal metadata.", + "limitations": "Does not validate the authenticity or legal enforceability of deal terms. It cannot negotiate or modify deal parameters autonomously.", + "examples": [ + "Create a deal named 'Acquisition of XYZ Corp' involving two parties with a value of $5 million starting next month.", + "Generate a partnership deal record between Company A and Company B lasting two years with specified terms.", + "Record a confidential sales agreement deal for $500,000 with specified start and end dates." + ] + }, + "tags": [ + "data-analytics", + "deal-management", + "business", + "crm", + "financial", + "reporting", + "creation" + ], + "examples": [ + { + "inputJson": "{\"dealName\":\"Acquisition of ABC Ltd\",\"partiesInvolved\":[\"Company X\",\"Company Y\"],\"dealValue\":12000000,\"startDate\":\"2024-07-01\",\"endDate\":\"2025-01-01\",\"dealType\":\"acquisition\",\"terms\":\"All assets transferred upon closure.\",\"currency\":\"USD\",\"isConfidential\":false}", + "description": "Creates an acquisition deal record between two companies with detailed terms." + }, + { + "inputJson": "{\"dealName\":\"Strategic Partnership 2024\",\"partiesInvolved\":[\"Tech Innovators Inc\",\"Global Solutions LLC\"],\"dealValue\":5000000,\"startDate\":\"2024-08-15\",\"dealType\":\"partnership\",\"terms\":\"Joint marketing and development efforts.\",\"currency\":\"USD\",\"isConfidential\":true}", + "description": "Registers a confidential strategic partnership deal with specified value and terms." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "data-analytics.createThreat", + "description": "Creates a detailed threat profile by analyzing security event data and contextual inputs. Accepts logs, alerts, and metadata to identify potential threats, estimate severity, affected assets, and recommended mitigation strategies. Outputs a structured threat report highlighting key indicators and risk assessment.", + "category": "data-analytics", + "parameters": [ + { + "name": "securityEvents", + "type": "array", + "description": "An array of security event objects or logs to analyze, each containing timestamp, eventType, source, and other relevant details.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextualData", + "type": "object", + "description": "Additional context about the environment, such as asset inventory, network topology, or user roles to enhance threat analysis.", + "required": false, + "defaultValue": "" + }, + { + "name": "threatType", + "type": "string", + "description": "Specify the type of threat to focus on, e.g., malware, phishing, insider threat; if omitted, all types are analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "number", + "description": "Minimum severity score (0-10) for threats to be included in the output report.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation steps in the generated threat report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured threat profile containing identified threat indicators, severity scores, affected assets, timestamps, and recommended mitigation actions, formatted as a JSON object suitable for further security processing or reporting." + }, + "aiAgent": { + "useCase": "Use when security event logs and contextual data are available and a comprehensive threat profile is needed to understand current security risks, prioritize response efforts, or generate reports for cybersecurity teams. Especially useful for analyzing large datasets to identify critical threats and their impact.", + "limitations": "Does not replace expert security analysis; may miss novel or highly sophisticated threats without sufficient input data; relies on the quality and completeness of provided security events and context.", + "examples": [ + "Create a threat profile from the past 24 hours of IDS logs to identify high-risk attacks.", + "Analyze recent security alerts to generate a report focusing on insider threats exceeding medium severity.", + "Generate a threat overview including mitigation recommendations based on firewall and endpoint security events." + ] + }, + "tags": [ + "data-analytics", + "threat-analysis", + "security", + "cybersecurity", + "reporting", + "risk-assessment", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"securityEvents\":[{\"timestamp\":\"2024-06-01T15:30:00Z\",\"eventType\":\"malware-detected\",\"source\":\"endpoint-01\",\"details\":{\"malwareName\":\"Trojan.Generic\",\"severity\":7}}],\"contextualData\":{\"assets\":[{\"id\":\"endpoint-01\",\"type\":\"workstation\",\"owner\":\"user123\"}]},\"severityThreshold\":5,\"includeMitigation\":true}", + "description": "Analyze malware detection events from endpoint logs to generate a threat report including mitigation advice." + }, + { + "inputJson": "{\"securityEvents\":[{\"timestamp\":\"2024-06-02T10:00:00Z\",\"eventType\":\"phishing-email\",\"source\":\"emailGateway\",\"details\":{\"sender\":\"suspicious@example.com\",\"severity\":6}}],\"threatType\":\"phishing\",\"includeMitigation\":false}", + "description": "Generate a phishing-related threat profile based on email gateway alerts without mitigation recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Threat", + "context": null + } + }, + { + "name": "data-analytics.createSecret", + "description": "Generates a secure, random secret key suitable for encryption or tokenization within data analytics workflows. Accepts parameters to specify secret length, allowed character sets, and encoding format. Returns the generated secret as a string along with metadata including entropy bits and creation timestamp.", + "category": "data-analytics", + "parameters": [ + { + "name": "length", + "type": "number", + "description": "Length of the secret string to generate, measured in characters. Must be >= 8 for security.", + "required": true, + "defaultValue": "32" + }, + { + "name": "includeSymbols", + "type": "boolean", + "description": "Whether to include symbols (e.g., !@#$%) in the secret for added complexity.", + "required": false, + "defaultValue": "true" + }, + { + "name": "encoding", + "type": "string", + "description": "Output encoding format of the secret, such as 'base64', 'hex', or 'ascii'.", + "required": false, + "defaultValue": "base64" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated secret string, entropy in bits, and the ISO timestamp of creation." + }, + "aiAgent": { + "useCase": "Use this tool when generating cryptographically secure secrets or keys needed in data analytics contexts, such as API tokens, encryption keys for sensitive data, or session identifiers. It ensures the secret meets length and complexity requirements for security best practices.", + "limitations": "Does not store or manage the lifecycle of the secret; only generates it. Not intended for generating passwords tailored to human memorability. Does not validate usage context or compliance requirements.", + "examples": [ + "Generate a 64-character base64 secret with symbols for encrypting sensitive analytics data.", + "Create a 16-character hex secret without symbols for a lightweight token.", + "Produce a 48-character ascii secret including symbols for API authentication." + ] + }, + "tags": [ + "security", + "secret-generation", + "encryption", + "data-analytics", + "key-management" + ], + "examples": [ + { + "inputJson": "{\"length\":64,\"includeSymbols\":true,\"encoding\":\"base64\"}", + "description": "Generate a 64-character base64-encoded secret including symbols for strong encryption keys." + }, + { + "inputJson": "{\"length\":16,\"includeSymbols\":false,\"encoding\":\"hex\"}", + "description": "Create a 16-character hexadecimal secret without symbols for lightweight tokens." + }, + { + "inputJson": "{\"length\":48,\"includeSymbols\":true,\"encoding\":\"ascii\"}", + "description": "Produce a 48-character ASCII string with symbols for API authentication secrets." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Secret", + "context": null + } + }, + { + "name": "data-analytics.createHTML", + "description": "Generates an HTML report from structured data input, creating interactive tables, charts, and summaries. Accepts data as JSON objects or CSV strings, processes for visualization, and outputs a complete, standalone HTML string to embed or save as a file for web display.", + "category": "data-analytics", + "parameters": [ + { + "name": "data", + "type": "string", + "description": "Input data in JSON string or CSV format to visualize and include in the HTML report.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the generated HTML report, displayed as the header.", + "required": false, + "defaultValue": "\"Data Analytics Report\"" + }, + { + "name": "chartTypes", + "type": "array", + "description": "Array of chart types (e.g., bar, line, pie) to include in the report based on data columns.", + "required": false, + "defaultValue": "[\"bar\",\"line\"]" + }, + { + "name": "includeTable", + "type": "boolean", + "description": "Whether to include a data table representation along with charts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "theme", + "type": "string", + "description": "Color theme for the report: 'light' or 'dark'.", + "required": false, + "defaultValue": "\"light\"" + }, + { + "name": "summaryStats", + "type": "boolean", + "description": "Include a summary statistics section with mean, median, and counts for numeric data.", + "required": false, + "defaultValue": "true" + }, + { + "name": "cssStyles", + "type": "string", + "description": "Optional custom CSS styles to embed in the HTML report to override default styling.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object with a single property 'htmlReport' containing the full HTML content string of the report." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw structured data (JSON or CSV) into a user-friendly visual report in HTML format that includes interactive charts and tables for web display or sharing. It suits data insights presentation in dashboards, emails, or static sites without further processing.", + "limitations": "This tool does not support real-time data streaming or extremely large datasets that exceed browser memory limits. It cannot generate reports in formats other than HTML or provide server-side data processing.", + "examples": [ + "Generate an HTML report with bar and pie charts from sales data JSON.", + "Create a dark-themed HTML report including a data table and summary stats from CSV input.", + "Produce a clean HTML page with line charts only using custom CSS to match client branding." + ] + }, + "tags": [ + "data", + "visualization", + "html-report", + "charts", + "tables", + "summary", + "analytics", + "interactive" + ], + "examples": [ + { + "inputJson": "{\"data\":\"[{\\\"month\\\":\\\"Jan\\\", \\\"sales\\\":100},{\\\"month\\\":\\\"Feb\\\", \\\"sales\\\":150}]\",\"title\":\"Monthly Sales Report\",\"chartTypes\":[\"bar\",\"pie\"],\"includeTable\":true,\"theme\":\"light\",\"summaryStats\":true,\"cssStyles\":\"\"}", + "description": "Generate an HTML report with bar and pie charts along with data table and summary for monthly sales data." + }, + { + "inputJson": "{\"data\":\"month,sales\\nJan,100\\nFeb,150\\nMar,200\",\"title\":\"Quarterly Sales\",\"chartTypes\":[\"line\"],\"includeTable\":false,\"theme\":\"dark\",\"summaryStats\":false,\"cssStyles\":\"body { font-family: Arial; }\"}", + "description": "Create a dark-themed HTML report with a line chart from CSV sales data without table and summary stats, including custom CSS." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "HTML", + "context": null + } + }, + { + "name": "data-analytics.createAttachment", + "description": "Creates a media attachment for data analytics reports by embedding visual or document files. Accepts file data or URLs referencing images, PDFs, or charts, validates and processes them, and outputs a structured attachment object suitable for integration into analytic dashboards or reports.", + "category": "data-analytics", + "parameters": [ + { + "name": "attachmentName", + "type": "string", + "description": "The display name for the attachment in the report or analytics dashboard.", + "required": true, + "defaultValue": "" + }, + { + "name": "attachmentType", + "type": "string", + "description": "The type of the attachment, e.g., 'image', 'pdf', or 'chart'. Used to determine processing method.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceData", + "type": "string", + "description": "The raw base64-encoded data of the file or a URL string pointing to the media resource.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description or metadata about the attachment content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags for classifying or filtering the attachment.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "visibleInReport", + "type": "boolean", + "description": "Flag indicating if the attachment should be visible by default in reports or dashboards.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing metadata about the created attachment including a unique ID, type, name, and preview URL if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when generating or enhancing data analytics reports that require embedding rich media attachments such as charts, images, or PDF references to provide a more comprehensive view of insights. It supports linking or embedding visual elements within reports or dashboards for improved data storytelling.", + "limitations": "This tool cannot generate media content automatically; it only processes and packages existing media files or URLs as attachments. It also does not perform image recognition or content validation beyond basic format checking.", + "examples": [ + "Create an image attachment from a base64-encoded PNG chart for the sales report.", + "Attach a PDF document showing detailed analytics methodology to the data dashboard.", + "Add a remote URL pointing to a hosted infographic as an attachment to a report section." + ] + }, + "tags": [ + "data-analytics", + "attachment", + "media", + "reporting", + "visualization", + "dashboard" + ], + "examples": [ + { + "inputJson": "{\"attachmentName\":\"Q1 Sales Chart\",\"attachmentType\":\"image\",\"sourceData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"description\":\"Bar chart showing Q1 sales by region.\",\"tags\":[\"sales\",\"Q1\",\"chart\"],\"visibleInReport\":true}", + "description": "Embedding a base64-encoded PNG image chart to visually represent quarterly sales data." + }, + { + "inputJson": "{\"attachmentName\":\"Analytics Methodology\",\"attachmentType\":\"pdf\",\"sourceData\":\"https://example.com/docs/analytics_methodology.pdf\",\"description\":\"PDF documenting the analytical techniques used.\",\"tags\":[\"methodology\",\"documentation\"],\"visibleInReport\":false}", + "description": "Linking a PDF document by URL that provides detailed methodology information to complement an analytics report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "data-analytics.createPipeline", + "description": "Creates a customizable data analytics pipeline by accepting input data source definitions, transformation steps, and output targets. Processes and composes stages to produce an executable pipeline configuration or script that automates data extraction, cleaning, transformation, and visualization tasks.", + "category": "data-analytics", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "Array of data source configurations including type, location, authentication details (e.g., databases, APIs, files).", + "required": true, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "Ordered list of transformation operations to apply on the data, such as filtering, aggregation, normalization.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputTargets", + "type": "array", + "description": "Array of output destination definitions specifying format (e.g., CSV, JSON, dashboard), location, and delivery method.", + "required": true, + "defaultValue": "" + }, + { + "name": "pipelineName", + "type": "string", + "description": "Human-readable name identifier for the created analytics pipeline.", + "required": false, + "defaultValue": "\"DefaultPipeline\"" + }, + { + "name": "scheduleCron", + "type": "string", + "description": "Optional CRON expression string to schedule automatic pipeline execution.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "includeLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of pipeline execution steps and errors.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with pipelineId (unique identifier) and pipelineDefinition (configuration or code representing the data analytics pipeline)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate repetitive data analytics workflows by producing a reusable pipeline that extracts data from various sources, applies transformations, and outputs results in desired formats. It is useful for preparing data for visualization, reporting, or further analysis.", + "limitations": "This tool does not execute the pipeline itself; it only generates the configuration or code. It requires that downstream infrastructure or orchestration tools run the pipeline. Complex or custom transformations outside the supported set may require manual adjustments.", + "examples": [ + "Create a pipeline to load sales data from a database, aggregate monthly totals, and export the results as CSV files.", + "Generate a scheduled pipeline that fetches JSON data from an API daily, filters entries based on date, and sends summary reports to an email server.", + "Build an analytic pipeline to read multiple CSV files, clean missing values, normalize fields, and output to a visualization dashboard." + ] + }, + "tags": [ + "data-analytics", + "pipeline", + "automation", + "ETL", + "data-transformation", + "workflow", + "scheduling" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[{\"type\":\"sql\",\"connectionString\":\"Server=myServer;Database=sales;User Id=admin;Password=****;\"}],\"transformations\":[{\"operation\":\"aggregate\",\"groupBy\":[\"month\"],\"metrics\":[{\"field\":\"revenue\",\"aggFunc\":\"sum\"}]}],\"outputTargets\":[{\"type\":\"file\",\"format\":\"csv\",\"path\":\"/output/monthly_sales.csv\"}],\"pipelineName\":\"MonthlySalesAggregation\",\"scheduleCron\":\"0 0 1 * *\",\"includeLogging\":true}", + "description": "Create a pipeline named MonthlySalesAggregation that extracts sales data from a SQL database, aggregates revenue by month, exports as CSV, and schedules execution on the first day of each month with logging enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Pipeline", + "context": null + } + }, + { + "name": "data-analytics.createWorkflow", + "description": "This tool enables users to design a data analytics workflow by specifying a sequence of data processing and visualization steps. It accepts structured inputs defining data sources, transformation functions, and visualization configurations, then generates an executable workflow object that can be used to process data and produce visual analytics outputs.", + "category": "data-analytics", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "The name identifying the workflow to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSources", + "type": "array", + "description": "A list of data source objects, each including source type and configuration details for input data.", + "required": true, + "defaultValue": "" + }, + { + "name": "processingSteps", + "type": "array", + "description": "An ordered list of processing step objects describing transformations to be applied on the data.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationConfig", + "type": "object", + "description": "Configuration object specifying the types and settings of visualizations for the final output.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired format of the produced workflow output (e.g., JSON, YAML).", + "required": false, + "defaultValue": "JSON" + } + ], + "returns": { + "type": "object", + "description": "An object representing the complete data analytics workflow, including all steps and configuration, ready for execution in compatible platforms." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate or automate the creation of complex data analytics workflows by defining data inputs, processing steps, and visualization outputs in a structured manner. It is helpful for creating reusable and shareable analytics pipelines without manual coding.", + "limitations": "This tool does not perform the actual data processing or visualization rendering; it only constructs the workflow specification. It does not validate data source connectivity or processing logic correctness beyond structural schema.", + "examples": [ + "Create a workflow to load sales data CSV, apply filtering and aggregation, then create a bar chart visualization.", + "Generate a workflow that connects to a SQL database, executes transformation queries, and produces interactive dashboards.", + "Define a reusable workflow to clean sensor data, calculate statistics, and export visual reports as JSON formatted output." + ] + }, + "tags": [ + "data-analytics", + "workflow", + "automation", + "visualization", + "pipeline", + "ETL", + "processing" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"MonthlySalesAnalysis\",\"dataSources\":[{\"type\":\"csv\",\"path\":\"/data/sales.csv\"}],\"processingSteps\":[{\"operation\":\"filter\",\"parameters\":{\"field\":\"region\",\"value\":\"EMEA\"}},{\"operation\":\"aggregate\",\"parameters\":{\"groupBy\":[\"productCategory\"],\"metrics\":{\"sales\":\"sum\"}}}],\"visualizationConfig\":{\"type\":\"barChart\",\"xAxis\":\"productCategory\",\"yAxis\":\"sales\"},\"outputFormat\":\"JSON\"}", + "description": "Creates a workflow to analyze monthly sales by filtering EMEA region, aggregating sales by product category, and producing a bar chart." + }, + { + "inputJson": "{\"workflowName\":\"SensorDataPipeline\",\"dataSources\":[{\"type\":\"database\",\"connectionString\":\"Server=myServer;Database=sensors;User Id=user;Password=pass;\"}],\"processingSteps\":[{\"operation\":\"clean\",\"parameters\":{\"method\":\"removeNulls\"}},{\"operation\":\"calculate\",\"parameters\":{\"field\":\"temperature\",\"function\":\"average\"}}],\"visualizationConfig\":{\"type\":\"lineChart\",\"xAxis\":\"timestamp\",\"yAxis\":\"temperatureAverage\"},\"outputFormat\":\"JSON\"}", + "description": "Creates a workflow connecting to a sensor database, cleaning data by removing nulls, calculating average temperature, and creating a line chart visualization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Workflow", + "context": null + } + }, + { + "name": "data-transformation.analyzeDashboard", + "description": "Analyzes a dashboard configuration JSON to extract key metrics, widget usage statistics, data source summaries, and layout insights. Accepts dashboard JSON input and optional filters. Produces a structured analysis report summarizing component counts, data source types, metric aggregations, and layout distribution for informed decision-making.", + "category": "data-transformation", + "parameters": [ + { + "name": "dashboardJson", + "type": "string", + "description": "A JSON string representing the dashboard configuration to analyze. Must include widgets, data sources, and layout info.", + "required": true, + "defaultValue": "" + }, + { + "name": "filterWidgetTypes", + "type": "array", + "description": "Optional list of widget types to include in analysis (e.g., ['chart','table']). If empty, all widget types are analyzed.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeDataSourceSummary", + "type": "boolean", + "description": "Whether to summarize data sources usage and types in the analysis output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxWidgets", + "type": "number", + "description": "Maximum number of widgets to analyze; if the dashboard contains more, analysis will be limited to this count.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall dashboard statistics, widget counts by type, aggregated metrics summaries, data source details, and layout usage summary." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to understand the composition and metrics of a given dashboard configuration JSON to generate insights, detect inconsistencies, summarize usage patterns, or prepare reports on dashboard contents without rendering the dashboard.", + "limitations": "Cannot render visualizations or interpret user interaction data; depends on well-formed dashboard JSON input; does not alter or optimize the dashboard configuration.", + "examples": [ + "Analyze a given BI dashboard JSON to extract total number of charts and summarize metrics used.", + "Determine which data sources are most frequently used across widgets in a large dashboard.", + "Provide a report of widget type distributions and layout usage from a supplied dashboard configuration." + ] + }, + "tags": [ + "analysis", + "dashboard", + "data-transformation", + "summary", + "metrics", + "data-sources" + ], + "examples": [ + { + "inputJson": "{\"dashboardJson\":\"{\\\"widgets\\\":[{\\\"id\\\":\\\"w1\\\",\\\"type\\\":\\\"chart\\\",\\\"metrics\\\":[{\\\"name\\\":\\\"revenue\\\"}],\\\"dataSource\\\":\\\"salesDB\\\"},{\\\"id\\\":\\\"w2\\\",\\\"type\\\":\\\"table\\\",\\\"metrics\\\":[{\\\"name\\\":\\\"customerCount\\\"}],\\\"dataSource\\\":\\\"crmDB\\\"}],\\\"layout\\\":{\\\"rows\\\":2,\\\"columns\\\":2}}\",\"filterWidgetTypes\":[\"chart\"],\"includeDataSourceSummary\":true,\"maxWidgets\":50}", + "description": "Analyze the dashboard JSON focusing only on 'chart' widgets and include data source summary." + }, + { + "inputJson": "{\"dashboardJson\":\"{\\\"widgets\\\":[{\\\"id\\\":\\\"w1\\\",\\\"type\\\":\\\"chart\\\",\\\"metrics\\\":[{\\\"name\\\":\\\"sales\\\"}],\\\"dataSource\\\":\\\"db1\\\"},{\\\"id\\\":\\\"w2\\\",\\\"type\\\":\\\"chart\\\",\\\"metrics\\\":[{\\\"name\\\":\\\"profit\\\"}],\\\"dataSource\\\":\\\"db2\\\"}],\\\"layout\\\":{\\\"rows\\\":1,\\\"columns\\\":2}}\",\"filterWidgetTypes\":[],\"includeDataSourceSummary\":false,\"maxWidgets\":100}", + "description": "Analyze all widgets in the dashboard without data source summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "data-transformation.analyzeKPI", + "description": "Analyzes key performance indicator (KPI) data to provide statistical summaries, trend detection, and performance benchmarks over time. Accepts structured KPI data arrays with timestamps and metric values, processes calculations like averages, growth rates, and variance, then outputs an analysis report with insights and recommendations.", + "category": "data-transformation", + "parameters": [ + { + "name": "kpiData", + "type": "array", + "description": "An array of KPI records each containing a timestamp and one or more metric values to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "The name of the field in kpiData objects representing the timestamp (e.g., 'date').", + "required": true, + "defaultValue": "\"date\"" + }, + { + "name": "metricFields", + "type": "array", + "description": "List of strings naming the numeric metric fields in kpiData to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "comparisonPeriods", + "type": "number", + "description": "Number of past periods to compare for trend detection (e.g., compare last 3 months).", + "required": false, + "defaultValue": "3" + }, + { + "name": "calculateBenchmarks", + "type": "boolean", + "description": "Whether to compute performance benchmarks against historical averages.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the analysis report output, such as 'json' or 'text'.", + "required": false, + "defaultValue": "\"json\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics, trend analyses, benchmark comparisons, and actionable insights for each specified KPI metric over the given time series." + }, + "aiAgent": { + "useCase": "Use this tool when needing detailed statistical analysis and performance insights of time-series KPI data, such as sales figures, user engagement metrics, or operational performance indicators. Ideal for dashboard data enrichment, automated report generation, and detecting performance shifts or anomalies in key metrics over defined periods.", + "limitations": "This tool expects well-structured historical KPI data with consistent timestamp formats. It does not perform raw data cleaning or handle missing data imputation. It is not designed for real-time streaming analysis or predictive modeling beyond trend detection.", + "examples": [ + "Analyze monthly sales revenue and user signup KPIs for trend shifts over the past 6 months.", + "Generate a benchmark report comparing current quarter metrics against historical averages for customer retention and churn KPIs.", + "Summarize and detect anomalies in daily web traffic and conversion rates from a time-stamped KPI dataset." + ] + }, + "tags": [ + "data-transformation", + "analysis", + "KPI", + "metrics", + "time-series", + "analytics", + "performance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"kpiData\":[{\"date\":\"2024-01-01\",\"sales\":1000,\"signups\":120},{\"date\":\"2024-02-01\",\"sales\":1100,\"signups\":130},{\"date\":\"2024-03-01\",\"sales\":1050,\"signups\":125}],\"timestampField\":\"date\",\"metricFields\":[\"sales\",\"signups\"],\"comparisonPeriods\":2,\"calculateBenchmarks\":true,\"outputFormat\":\"json\"}", + "description": "Analyze sales and signups over three months comparing last two months, produce JSON report with benchmarks." + }, + { + "inputJson": "{\"kpiData\":[{\"date\":\"2023-12-01\",\"retention\":0.85,\"churn\":0.15},{\"date\":\"2024-01-01\",\"retention\":0.80,\"churn\":0.20},{\"date\":\"2024-02-01\",\"retention\":0.82,\"churn\":0.18}],\"timestampField\":\"date\",\"metricFields\":[\"retention\",\"churn\"],\"comparisonPeriods\":3,\"calculateBenchmarks\":true,\"outputFormat\":\"text\"}", + "description": "Analyze customer retention and churn KPIs over three months, output textual benchmark summary report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "data-transformation.analyzeRisk", + "description": "Analyzes input datasets describing system configurations, vulnerabilities, and threat indicators to assess security risk levels. Accepts JSON or CSV data detailing assets, vulnerabilities, and exposure parameters; performs risk scoring based on common frameworks; outputs a detailed risk report including risk scores, identified critical vulnerabilities, and recommended mitigation priorities.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "The security-related data to analyze, as a JSON or CSV string containing asset and vulnerability details.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data: either 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "riskModel", + "type": "string", + "description": "Risk assessment model to use, e.g., 'CVSS', 'OWASP', or 'custom'.", + "required": false, + "defaultValue": "CVSS" + }, + { + "name": "outputDetailLevel", + "type": "string", + "description": "Level of detail in the risk report: 'summary', 'detailed', or 'full'.", + "required": false, + "defaultValue": "detailed" + }, + { + "name": "includeMitigationSuggestions", + "type": "boolean", + "description": "Whether to include mitigation suggestions in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customWeights", + "type": "object", + "description": "Optional custom weighting factors to adjust risk scores for specific vulnerability types or asset criticality.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured risk assessment report containing overall risk scores, breakdowns by asset and vulnerability, and recommended mitigations." + }, + "aiAgent": { + "useCase": "Use this tool when provided with structured security or system vulnerability data and needing to generate an actionable risk assessment report. Ideal for scenarios requiring automated risk scoring to prioritize security efforts based on data-driven analysis.", + "limitations": "Does not perform vulnerability scanning or collect data; inputs must be pre-processed and curated. The risk models are predefined and may not cover niche security frameworks or dynamic threat intelligence sources.", + "examples": [ + "Analyze risk from JSON vulnerability data for a web application.", + "Generate a summary risk report from imported CSV security asset data.", + "Assess security risk with custom weightings for asset criticality." + ] + }, + "tags": [ + "data transformation", + "risk analysis", + "security", + "vulnerability assessment", + "reporting", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"assetId\\\":\\\"server01\\\", \\\"vulnerabilities\\\": [{\\\"id\\\":\\\"CVE-2023-12345\\\", \\\"severity\\\":9.8}] }]\",", + "description": "Analyze risk from a simple JSON array listing one asset with one critical vulnerability using default CVSS model." + }, + { + "inputJson": "{\"inputData\":\"assetId,vulnerabilityId,severity\\nserver01,CVE-2023-12345,9.8\\nserver02,CVE-2022-56789,5.0\",\"inputFormat\":\"csv\",\"outputDetailLevel\":\"summary\"}", + "description": "Analyze risk from CSV formatted asset vulnerability data producing a summary report." + }, + { + "inputJson": "{\"inputData\":\"[{\\\"assetId\\\":\\\"webapp\\\",\\\"vulnerabilities\\\":[{\\\"id\\\":\\\"OWASP-A1\\\",\\\"severity\\\":8.5}]}]\",\"inputFormat\":\"json\",\"riskModel\":\"OWASP\",\"includeMitigationSuggestions\":false}", + "description": "Analyze risk of a web application using OWASP model without mitigation suggestions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "data-transformation.analyzeComment", + "description": "Analyzes a given text comment to extract key insights such as sentiment polarity, main topics or keywords, and overall language tone. It accepts raw comment text as input and outputs an analysis report detailing sentiment score, detected topics, and tone classification to assist in understanding user feedback or communication patterns.", + "category": "data-transformation", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The raw text content of the comment to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The language code (e.g., 'en' for English) of the comment to improve analysis accuracy.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to extract and return key topics or keywords from the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeTone", + "type": "boolean", + "description": "Whether to classify the overall tone (e.g., formal, informal, neutral) of the comment.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analysis results including sentiment score (-1 to 1), detected keywords array, tone classification string, and a summary message." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand the content and emotional context of user comments, feedback, or messages to provide better responses, routing, or summarization. It helps AI gauge sentiment, extract main topics, and capture tone nuances for communication analysis.", + "limitations": "Does not perform deep context or sarcasm detection. Accuracy depends on language and comment clarity. May not handle highly technical or domain-specific language without additional customization.", + "examples": [ + "Analyze the sentiment and keywords of this customer feedback comment.", + "Detect the emotional tone of this user support message before responding.", + "Extract topics and sentiment from comments left on a product review." + ] + }, + "tags": [ + "analysis", + "text", + "sentiment", + "comment", + "keywords", + "tone", + "communication", + "natural-language-processing" + ], + "examples": [ + { + "inputJson": "{\"commentText\": \"I love how intuitive the new update is, but the app crashes sometimes.\", \"includeSentiment\": true, \"includeKeywords\": true}", + "description": "Analyze sentiment and keywords from a user comment highlighting pros and cons." + }, + { + "inputJson": "{\"commentText\": \"The documentation is confusing and not detailed enough.\", \"includeSentiment\": true, \"includeTone\": true}", + "description": "Analyze sentiment and tone to understand frustration or dissatisfaction expressed in a comment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "data-transformation.analyzePayment", + "description": "Analyzes payment transaction data provided as structured JSON or CSV formats, extracting key financial metrics such as total amounts, average payment values, payment method distribution, and identifying anomalies or missing fields. Outputs a comprehensive summary report including statistics, detected issues, and suggestions for data correction or further processing.", + "category": "data-transformation", + "parameters": [ + { + "name": "paymentData", + "type": "string", + "description": "Raw payment data input as a JSON string or CSV-formatted string containing payment transactions.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input payment data; supported values are 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (e.g., 'USD', 'EUR') used for amounts when standardizing or summarizing.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Flag to enable detection of anomalies such as duplicate payments or unusually high amounts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minPaymentAmount", + "type": "number", + "description": "Minimum payment amount threshold to filter out trivial transactions during analysis.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includePaymentMethodsBreakdown", + "type": "boolean", + "description": "Include statistics on distribution and frequency of different payment methods in the report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A structured analysis report object including total payments count and sum, average payment value, payment methods breakdown, list of data quality issues detected, and anomaly summary if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw payment transaction data and need a detailed analytical summary to understand financial performance metrics, quality issues, or unusual patterns. It is ideal for financial analysts, operations teams, or AI agents automating financial data audits or reporting pipelines.", + "limitations": "Does not perform currency conversion beyond simple labeling; anomalies detection is rule-based and may not catch complex fraud patterns; expects well-formed input data respecting JSON or CSV standards.", + "examples": [ + "Analyze payment JSON data to get total sales, average payment value, and detect anomalies.", + "Provide a CSV string of payments and ask for a report including payment method breakdown, filtering out payments below $10.", + "Check payment data quality issues and summarize overall payment volume in EUR currency." + ] + }, + "tags": [ + "data transformation", + "payment analysis", + "financial data", + "analytics", + "transaction processing", + "data quality" + ], + "examples": [ + { + "inputJson": "{\"paymentData\":\"[{\\\"id\\\":\\\"p1\\\",\\\"amount\\\":100.5,\\\"method\\\":\\\"credit_card\\\",\\\"date\\\":\\\"2024-05-10\\\"},{\\\"id\\\":\\\"p2\\\",\\\"amount\\\":250,\\\"method\\\":\\\"paypal\\\",\\\"date\\\":\\\"2024-05-11\\\"}]\",\"dataFormat\":\"json\",\"currency\":\"USD\",\"detectAnomalies\":true,\"minPaymentAmount\":0,\"includePaymentMethodsBreakdown\":true}", + "description": "Analyze JSON payment data including anomaly detection and payment methods breakdown." + }, + { + "inputJson": "{\"paymentData\":\"id,amount,method,date\\np1,15,cash,2024-05-12\\np2,8,credit_card,2024-05-13\\np3,150,paypal,2024-05-14\",\"dataFormat\":\"csv\",\"currency\":\"EUR\",\"detectAnomalies\":false,\"minPaymentAmount\":10,\"includePaymentMethodsBreakdown\":true}", + "description": "Analyze CSV payment data, filter payments under 10 EUR, without anomaly detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "data-transformation.analyzeLink", + "description": "This tool accepts a URL string as input and analyzes the link to extract metadata such as page title, description, domain information, and content type. It performs HTTP fetching and parsing of the linked content's HTML metadata, returning a structured summary of the link's key attributes.", + "category": "data-transformation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the link to analyze. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "fetchTimeout", + "type": "number", + "description": "Maximum time in milliseconds to wait for fetching the URL content. Optional; defaults to 5000 ms.", + "required": false, + "defaultValue": "5000" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include HTTP response headers in the output metadata. Optional; defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the link's metadata including title, description, domain, content type, final resolved URL, and optionally HTTP headers." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically extract and summarize metadata from a web link to understand its content without manual browsing. Useful for preview generation, content filtering, or link categorization.", + "limitations": "Cannot analyze dynamically generated content behind JavaScript-heavy sites; limited to metadata available in server response and HTML source; may fail on inaccessible or restricted URLs.", + "examples": [ + "Analyze the metadata of a given news article link.", + "Extract the domain and page title from a URL to create a link preview.", + "Check the content type of a supplied URL to classify resource type." + ] + }, + "tags": [ + "data-transformation", + "link-analysis", + "metadata-extraction", + "web-scraping", + "url-processing", + "content-summary" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://www.example.com/article/12345\"}", + "description": "Analyze the metadata of a given article URL to extract title and description." + }, + { + "inputJson": "{\"url\":\"https://github.com\",\"includeHeaders\":true}", + "description": "Fetch link information from github.com including HTTP headers for advanced analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "data-transformation.downloadJSON", + "description": "This tool accepts a JavaScript object or JSON string as input, optionally formats it with indentation, and generates a downloadable JSON file with a specified filename. It helps to easily export data structures as JSON files suitable for client-side downloading in web or app environments.", + "category": "data-transformation", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The JavaScript object or JSON-serializable data to be converted and downloaded as a JSON file.", + "required": true, + "defaultValue": "" + }, + { + "name": "filename", + "type": "string", + "description": "The name of the output file including .json extension to be used for the downloaded file.", + "required": false, + "defaultValue": "\"data.json\"" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Whether to format the JSON output with indentation and spaces for readability (true) or compact (false).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a downloadable Blob URL and the filename used, to facilitate file download actions." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert in-memory data objects or raw JSON strings into a downloadable JSON file for users, such as exporting configurations, reports, or data snapshots in client applications.", + "limitations": "This tool does not handle storage beyond immediate download creation, nor does it validate JSON schema correctness beyond standard serialization. It also requires a runtime environment supporting Blob and URL APIs, typically a browser.", + "examples": [ + "Export the current user settings object as a formatted JSON file named 'settings.json'.", + "Download received API data as a pretty-printed JSON file called 'responseData.json'.", + "Save internal state data objects as a compact JSON file for debugging purposes." + ] + }, + "tags": [ + "download", + "json", + "export", + "data-transformation", + "file", + "client-side" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"user\":{\"id\":123,\"name\":\"Alice\"},\"active\":true},\"filename\":\"user-profile.json\",\"prettyPrint\":true}", + "description": "Download a nicely formatted JSON file named user-profile.json containing user id and name." + }, + { + "inputJson": "{\"data\":{\"items\":[1,2,3],\"count\":3},\"filename\":\"items.json\",\"prettyPrint\":false}", + "description": "Download a compact JSON file named items.json with an array and its count." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "JSON", + "context": null + } + }, + { + "name": "data-transformation.analyzeTable", + "description": "Analyzes a tabular dataset provided as a JSON array of objects or CSV string to produce statistical summaries, data type inference for each column, and detection of missing or anomalous values. Output includes column-wise metadata and summary statistics helping to understand data structure and quality.", + "category": "data-transformation", + "parameters": [ + { + "name": "tableData", + "type": "string", + "description": "The input table data as a JSON array of objects or CSV-formatted string.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the input data: 'json' for JSON array or 'csv' for CSV string.", + "required": true, + "defaultValue": "json" + }, + { + "name": "columnsToAnalyze", + "type": "array", + "description": "Optional list of column names to focus the analysis on. If empty or omitted, analyze all columns.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to perform anomaly detection (simple outlier detection) on numeric columns.", + "required": false, + "defaultValue": "false" + }, + { + "name": "missingValueIndicators", + "type": "array", + "description": "Array of string values that should be considered as missing values in the data (e.g., ['', 'NA', 'null']).", + "required": false, + "defaultValue": "[\"\"]" + } + ], + "returns": { + "type": "object", + "description": "An object mapping column names to metadata including inferred data type, count of non-missing values, count of missing values, basic statistics (min, max, mean, median for numerics), unique values count, and anomaly count if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly understand the structure and quality of tabular data from JSON or CSV input, such as summarizing datasets before further processing, detecting data issues, or generating reports on data characteristics.", + "limitations": "Does not perform advanced statistical modeling or complex anomaly detection beyond simple outlier identification. Large datasets may cause performance issues. Assumes structured tabular data without nested or hierarchical fields.", + "examples": [ + "Analyze the dataset to get column statistics and missing value counts.", + "Detect anomalies in numeric columns of a CSV sales report.", + "Summarize data types and unique values for selected columns in JSON input." + ] + }, + "tags": [ + "data", + "analysis", + "table", + "statistics", + "data-quality", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"tableData\":\"[{'id':1,'age':25,'income':50000},{'id':2,'age':30,'income':null},{'id':3,'age':22,'income':48000}]\",\"dataFormat\":\"json\",\"columnsToAnalyze\":[],\"detectAnomalies\":false,\"missingValueIndicators\":[\"null\",\"null\",\"null\"]}", + "description": "Analyze all columns in a small JSON dataset, identifying missing values and data types." + }, + { + "inputJson": "{\"tableData\":\"id,age,income\\n1,25,50000\\n2,30,\\n3,22,48000\",\"dataFormat\":\"csv\",\"columnsToAnalyze\":[\"age\",\"income\"],\"detectAnomalies\":true,\"missingValueIndicators\":[\"\"]}", + "description": "Analyze specific columns from a CSV input detecting anomalies in numeric columns." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "data-transformation.downloadDataset", + "description": "Downloads dataset files from specified sources such as public API endpoints, cloud storage URLs, or FTP servers. The tool accepts dataset identifiers or URLs, optional authentication details, and output format preferences. It processes the requests by retrieving the data files and delivers them in the requested format or as raw content.", + "category": "data-transformation", + "parameters": [ + { + "name": "sourceUrl", + "type": "string", + "description": "The URL or endpoint from which to download the dataset. Can be HTTP(S), FTP, or cloud storage URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetId", + "type": "string", + "description": "An optional identifier for the dataset if required by the source to specify which dataset to download.", + "required": false, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token or API key required to access protected datasets.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired format for the downloaded dataset file (e.g., csv, json, xml, zip).", + "required": false, + "defaultValue": "csv" + }, + { + "name": "saveToPath", + "type": "string", + "description": "Local file system path where the downloaded dataset will be saved. If empty, the data is returned in memory.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before timing out.", + "required": false, + "defaultValue": "60" + }, + { + "name": "retryAttempts", + "type": "number", + "description": "Number of retry attempts upon failure to download the dataset.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the dataset contents as a byte array or string, along with metadata such as file name, format, and download status." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically download a dataset from a remote URL or API source for data transformation, analysis, or ingestion workflows. It automates fetching datasets given identifiers or URLs, supporting authentication and format selection.", + "limitations": "Cannot transform or parse dataset contents after download; purely a fetching and saving utility. Does not handle proprietary authentication methods beyond token support. Large dataset streaming and pagination are not inherently managed.", + "examples": [ + "Download a public CSV dataset from a URL without authentication.", + "Download a JSON dataset from a secured API using an auth token and save locally.", + "Retry downloading a dataset up to 5 times if initial attempts fail." + ] + }, + "tags": [ + "download", + "dataset", + "data-transformation", + "api", + "file-fetch", + "cloud-storage", + "data-ingestion" + ], + "examples": [ + { + "inputJson": "{\"sourceUrl\":\"https://example.com/data/sample.csv\",\"outputFormat\":\"csv\"}", + "description": "Download a public CSV dataset from an HTTP URL." + }, + { + "inputJson": "{\"sourceUrl\":\"https://api.securedata.com/v1/datasets/12345\",\"authToken\":\"abcdef123456\",\"outputFormat\":\"json\",\"saveToPath\":\"/tmp/dataset.json\"}", + "description": "Download a secured JSON dataset from an API using authentication and save it locally." + }, + { + "inputJson": "{\"sourceUrl\":\"ftp://ftp.example.org/datasets/data.zip\",\"retryAttempts\":5}", + "description": "Download a ZIP dataset file from an FTP server with up to 5 retry attempts on failure." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "data-transformation.uploadImage", + "description": "Uploads an image file to a specified remote server or cloud storage with optional image validation and metadata inclusion. Accepts image file data or URL, processes and compresses image if requested, and returns upload status and location URL.", + "category": "data-transformation", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64 encoded image data or image URL to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetUrl", + "type": "string", + "description": "Remote server or cloud storage URL to upload the image to.", + "required": true, + "defaultValue": "" + }, + { + "name": "imageFormat", + "type": "string", + "description": "Desired image format for upload (e.g., jpg, png). If different from source, image will be converted.", + "required": false, + "defaultValue": "jpg" + }, + { + "name": "compress", + "type": "boolean", + "description": "Flag indicating if the image should be compressed before upload to reduce size.", + "required": false, + "defaultValue": "false" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional dictionary of metadata to attach to the image during upload (e.g., description, tags).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the success status, uploaded image URL, and any error messages encountered during upload." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload image files to remote storage or servers for applications such as content management, backup, or sharing. It supports input as direct image data or URLs, handles compression and format conversion, and returns accessible URLs for downstream use.", + "limitations": "This tool does not support direct image editing beyond simple compression and format conversion. It requires valid remote URLs that accept uploads via specified protocols and cannot verify upload success for all server types.", + "examples": [ + "Upload a PNG image from base64 data to a cloud storage endpoint with compression enabled.", + "Upload an image by providing its URL to a remote content server in JPEG format without compression.", + "Upload an image with metadata tags to a remote endpoint to associate descriptive information." + ] + }, + "tags": [ + "upload", + "image", + "data-transformation", + "compression", + "metadata", + "remote-storage" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA...\",\"targetUrl\":\"https://example-storage.com/upload\",\"imageFormat\":\"jpg\",\"compress\":true}", + "description": "Upload a base64 PNG image to a remote URL converting it to JPG with compression." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/image.png\",\"targetUrl\":\"https://cdn.example.com/api/upload\",\"compress\":false}", + "description": "Upload an image by URL directly to a CDN endpoint in the original format with no compression." + }, + { + "inputJson": "{\"imageData\":\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD...\",\"targetUrl\":\"https://media.example.org/upload\",\"metadata\":{\"title\":\"Profile Pic\",\"tags\":[\"user\",\"avatar\"]}}", + "description": "Upload a base64 JPEG image with metadata information to a media server endpoint." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "data-transformation.sendNotification", + "description": "Sends a notification message to specified recipients via a chosen delivery channel. Accepts input parameters defining the message content, recipient identifiers, and channel type (e.g., email, SMS, push). Processes and formats the notification accordingly, then returns the delivery status and response details for tracking.", + "category": "data-transformation", + "parameters": [ + { + "name": "messageContent", + "type": "string", + "description": "The main content body of the notification to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "Array of recipient identifiers such as email addresses, phone numbers, or device tokens depending on channel.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "The delivery channel type for the notification (e.g., 'email', 'sms', 'push').", + "required": true, + "defaultValue": "" + }, + { + "name": "senderId", + "type": "string", + "description": "Optional identifier for the sender, such as an email address or phone number, displayed to the recipient.", + "required": false, + "defaultValue": "" + }, + { + "name": "subject", + "type": "string", + "description": "Subject or title of the notification, applicable mainly for email or push channels.", + "required": false, + "defaultValue": "" + }, + { + "name": "priority", + "type": "string", + "description": "Priority level of the notification, e.g., 'normal', 'high'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "scheduledTime", + "type": "string", + "description": "Optional ISO 8601 timestamp to schedule notification send time; immediate if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall status of the send operation, array of per-recipient statuses including success or failure, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically send notifications to users or systems across multiple delivery channels such as email, SMS, or push. It consolidates message formatting, multi-channel selection, and tracking into one action for automation and batch processing.", + "limitations": "This tool does not internally handle authentication with third-party messaging services; credentials and transport setup are assumed to be configured externally. It also does not guarantee message delivery, only reports transmission status.", + "examples": [ + "Send an urgent alert email to a list of user emails.", + "Send a promotional SMS message to phone numbers collected from a marketing database.", + "Schedule a push notification for app users at a specific future time." + ] + }, + "tags": [ + "notification", + "messaging", + "data-transformation", + "multi-channel", + "send", + "automation" + ], + "examples": [ + { + "inputJson": "{\"messageContent\":\"Your account balance is low.\",\"recipientList\":[\"user@example.com\"],\"channelType\":\"email\",\"senderId\":\"noreply@bank.com\",\"subject\":\"Alert: Low Balance\",\"priority\":\"high\"}", + "description": "Send a high-priority alert email about account balance to a user." + }, + { + "inputJson": "{\"messageContent\":\"Don't miss our sale! 20% off all items.\",\"recipientList\":[\"+1234567890\",\"+1987654321\"],\"channelType\":\"sms\"}", + "description": "Send a promotional SMS message to a list of phone numbers." + }, + { + "inputJson": "{\"messageContent\":\"Your daily summary is ready.\",\"recipientList\":[\"deviceToken123\"],\"channelType\":\"push\",\"scheduledTime\":\"2024-07-01T09:00:00Z\"}", + "description": "Schedule a push notification to app users at 9 AM UTC." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "data-transformation.uploadJSON", + "description": "Uploads a JSON data object to a specified remote server endpoint via HTTP POST. Accepts raw JSON input or a JSON string, validates syntax optionally, and sends it to the target URL. Returns the server's response status and body to confirm successful upload or report errors.", + "category": "data-transformation", + "parameters": [ + { + "name": "jsonData", + "type": "object", + "description": "The JSON object to be uploaded to the server. Must be valid JSON data.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetUrl", + "type": "string", + "description": "The remote server URL where the JSON data should be uploaded via HTTP POST.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSyntax", + "type": "boolean", + "description": "If true, validates JSON syntax before upload to catch errors early.", + "required": false, + "defaultValue": "true" + }, + { + "name": "headers", + "type": "object", + "description": "Additional HTTP headers as key-value pairs to include in the upload request, e.g. for authentication.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time to wait for server response before timing out, in seconds.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the server response status code, success boolean, response body, and any error message encountered during upload." + }, + "aiAgent": { + "useCase": "Use this tool when you need to send JSON formatted data to a remote API endpoint, such as submitting configurations, updating records, or syncing data stores. It handles direct POST upload and optionally verifies the JSON is valid before sending. Suitable in workflows requiring programmatic data transfer and API interactions.", + "limitations": "This tool does not transform or generate JSON content; it only uploads given valid JSON data. It cannot handle non-JSON payloads or perform complex authentication flows beyond header customization.", + "examples": [ + "Upload a configuration JSON object to a remote server endpoint.", + "Send sensor data formatted as JSON to a cloud service for storage.", + "Post user profile updates in JSON format to a REST API." + ] + }, + "tags": [ + "upload", + "json", + "http", + "data-transfer", + "api", + "remote", + "post" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":{\"userId\":123,\"action\":\"update\",\"preferences\":{\"theme\":\"dark\"}},\"targetUrl\":\"https://api.example.com/user/update\",\"validateSyntax\":true}", + "description": "Uploading user profile update JSON to a REST API endpoint with syntax validation enabled." + }, + { + "inputJson": "{\"jsonData\":{\"sensorId\":\"abc123\",\"temperature\":22.5,\"humidity\":58},\"targetUrl\":\"https://dataserver.example.com/upload\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"timeoutSeconds\":10}", + "description": "Uploading IoT sensor data as JSON to a cloud data ingestion endpoint with an authorization header and a 10-second timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "data-transformation.uploadDataset", + "description": "Uploads a dataset file to a specified storage location or data platform. Accepts dataset files in common formats (CSV, JSON, XLSX) along with metadata. Processes the file by validating format and content, then stores the dataset for downstream use, returning upload status and dataset reference info.", + "category": "data-transformation", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local or accessible path or URL to the dataset file to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Format of the dataset file. Supported: 'csv', 'json', 'xlsx'.", + "required": true, + "defaultValue": "" + }, + { + "name": "destination", + "type": "string", + "description": "Target storage or platform identifier where the dataset will be uploaded (e.g., cloud bucket, database name).", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata about the dataset; keys and values providing context (e.g., description, tags, author).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "Whether to overwrite an existing dataset with the same name at the destination.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Result of the upload operation including success status, dataset identifier at destination, and messages if any." + }, + "aiAgent": { + "useCase": "Use when you need to programmatically upload structured data files into a target repository for further processing, storage, or analytics. Useful in automating data ingestion pipelines from diverse sources and formats with metadata tracking.", + "limitations": "Does not perform extensive data cleaning or transformation other than format validation. Does not handle streaming data or databases directly. Requires accessible file path or URL and correct format specification.", + "examples": [ + "Upload a CSV sales dataset to the cloud storage bucket 'sales-data' with descriptive metadata.", + "Upload a JSON configuration dataset to the analytics platform specifying overwrite true.", + "Upload an XLSX scientific data file to a local database directory without metadata." + ] + }, + "tags": [ + "upload", + "dataset", + "data ingestion", + "file upload", + "data transformation", + "csv", + "json", + "xlsx" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/sales_q1.csv\",\"fileFormat\":\"csv\",\"destination\":\"cloud_bucket_sales\",\"metadata\":{\"description\":\"Q1 sales data\",\"author\":\"analytics_team\"},\"overwrite\":false}", + "description": "Uploading a CSV file containing Q1 sales data to a cloud storage bucket with metadata." + }, + { + "inputJson": "{\"filePath\":\"https://example.com/config.json\",\"fileFormat\":\"json\",\"destination\":\"analytics_platform\",\"metadata\":{},\"overwrite\":true}", + "description": "Uploading a JSON configuration file to an analytics platform with overwrite enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "data-transformation.renderReport", + "description": "This tool accepts structured data inputs along with a template and configuration settings to generate formatted reports in PDF or HTML. It processes raw data, applies the specified template styles and formats, and produces a visually organized report document suitable for presentations or sharing.", + "category": "data-transformation", + "parameters": [ + { + "name": "data", + "type": "object", + "description": "The structured data to be included in the report, e.g., JSON objects or arrays representing the report content.", + "required": true, + "defaultValue": "" + }, + { + "name": "template", + "type": "string", + "description": "A report template identifier or a raw template string defining layout, styling, and content placeholders.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The output report format, either 'pdf' or 'html'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "includeTableOfContents", + "type": "boolean", + "description": "Whether to generate and include a table of contents in the report.", + "required": false, + "defaultValue": "false" + }, + { + "name": "pageSize", + "type": "string", + "description": "Page size for PDF output (e.g., 'A4', 'Letter'). Ignored if format is 'html'.", + "required": false, + "defaultValue": "A4" + }, + { + "name": "includePageNumbers", + "type": "boolean", + "description": "Whether to include page numbers in the footer of each report page.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language locale for report generation to adapt formatting and text direction, e.g., 'en', 'fr'.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated report as a base64-encoded string under 'reportContent' and a MIME type of the output file under 'mimeType'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert raw structured data and a chosen template into a finalized report document in PDF or HTML format suitable for distribution or presentation. It is ideal for generating business, financial, or technical reports programmatically within workflows.", + "limitations": "This tool does not perform data analysis or validation — it expects input data to be preprocessed and clean. It cannot generate reports without a valid template or produce formats other than PDF and HTML. Complex interactive reports are not supported.", + "examples": [ + "Generate a quarterly sales summary report in PDF using the 'corporate' template with page numbers and a table of contents.", + "Produce a HTML formatted technical report from JSON data in French locale without page numbers.", + "Create a PDF financial report with Letter size pages using custom template and including page numbers." + ] + }, + "tags": [ + "data-transformation", + "report-generation", + "pdf", + "html", + "template", + "document" + ], + "examples": [ + { + "inputJson": "{\"data\":{\"sales\":[{\"month\":\"Jan\",\"revenue\":100000},{\"month\":\"Feb\",\"revenue\":120000}]},\"template\":\"corporate\",\"format\":\"pdf\",\"includeTableOfContents\":true,\"pageSize\":\"A4\",\"includePageNumbers\":true,\"language\":\"en\"}", + "description": "Generate a PDF quarterly sales report using the corporate template with table of contents and page numbers." + }, + { + "inputJson": "{\"data\":{\"metrics\":{\"cpu\":75,\"memory\":60}},\"template\":\"technical\",\"format\":\"html\",\"includeTableOfContents\":false,\"includePageNumbers\":false,\"language\":\"fr\"}", + "description": "Produce an HTML technical report in French without page numbers from system metrics data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Report", + "context": null + } + }, + { + "name": "data-transformation.formatContract", + "description": "Transforms a contract document provided in JSON or plain text into a professionally formatted text or PDF output. Accepts the contract content and formatting options, applies standard legal document styling, and returns a formatted contract suitable for presentation or signing.", + "category": "data-transformation", + "parameters": [ + { + "name": "contractContent", + "type": "string", + "description": "The raw content of the contract in JSON or plain text format.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Specifies the format of the input contract content, e.g., 'json' or 'text'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format, such as 'pdf' or 'text'.", + "required": true, + "defaultValue": "pdf" + }, + { + "name": "styleTemplate", + "type": "string", + "description": "Name or identifier of the formatting style template to apply (e.g., 'standardLegal', 'minimalist').", + "required": false, + "defaultValue": "standardLegal" + }, + { + "name": "includePageNumbers", + "type": "boolean", + "description": "If true, include page numbers in the formatted document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "headerFooterText", + "type": "object", + "description": "Optional text to include in headers and footers, e.g., {'header':'Confidential', 'footer':'Company Name - 2024'}.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted contract document as a base64 encoded string and a MIME type indicating the file type." + }, + "aiAgent": { + "useCase": "Use this tool when you have a contract draft in JSON or plain text format and need to produce a clean, consistently styled formatted document for review, printing, or electronic signing. It helps automate producing professional legal documents with standard formatting, pagination, and optional branding or legalese in headers/footers.", + "limitations": "Cannot interpret or generate contract content; does not provide legal advice or validate contract clauses. The input must be well-structured and suitable for formatting. Complex embedded media or annotations are not supported.", + "examples": [ + "Format a contract JSON object into a PDF with standard legal styling and page numbers.", + "Convert a plain text contract draft into a minimalist styled PDF without headers/footers.", + "Generate a text-based formatted contract file from JSON including custom header and footer notes." + ] + }, + "tags": [ + "data-transformation", + "contract", + "document-formatting", + "legal", + "pdf", + "text", + "formatting" + ], + "examples": [ + { + "inputJson": "{\"contractContent\":\"{\\\"parties\\\":[\\\"Alice\\\",\\\"Bob\\\"],\\\"terms\\\":[\\\"Payment within 30 days\\\",\\\"Confidentiality clause\\\"]}\",\"inputFormat\":\"json\",\"outputFormat\":\"pdf\",\"styleTemplate\":\"standardLegal\",\"includePageNumbers\":true,\"headerFooterText\":{\"header\":\"Confidential Agreement\",\"footer\":\"ACME Corp 2024\"}}", + "description": "Format a JSON contract with standard legal style to PDF including page numbers and custom header/footer." + }, + { + "inputJson": "{\"contractContent\":\"This contract establishes the terms between Alice and Bob including payment and confidentiality.\",\"inputFormat\":\"text\",\"outputFormat\":\"text\",\"styleTemplate\":\"minimalist\",\"includePageNumbers\":false,\"headerFooterText\":{}}", + "description": "Format a plain text contract into a minimalist styled text output without page numbers or headers/footers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "data-transformation.buildPullRequest", + "description": "Builds a structured pull request object from given inputs including source branch, target branch, title, description, and optional reviewers or labels. It validates required fields, organizes the data into a standard pull request format used in code collaboration platforms, and outputs the pull request object ready for submission.", + "category": "data-transformation", + "parameters": [ + { + "name": "sourceBranch", + "type": "string", + "description": "The name of the source branch for the pull request.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The name of the target branch where changes will be merged.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "The title of the pull request summarizing the changes made.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the pull request, explaining the purpose and changes.", + "required": false, + "defaultValue": "" + }, + { + "name": "reviewers", + "type": "array", + "description": "List of usernames or IDs to request reviews from.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "labels", + "type": "array", + "description": "List of labels or tags to classify the pull request.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "draft", + "type": "boolean", + "description": "Whether the pull request should be created as a draft (not ready to merge).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed pull request, including all input fields and standardized metadata." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically prepare a pull request object with all necessary details for submission in a version control system. This is applicable in automation pipelines, code bot integrations, or assisted development tools preparing changes for review.", + "limitations": "This tool does not connect to any repository or remote service; it only builds the pull request object. Actual submission to version control hosting services like GitHub or GitLab requires additional integration.", + "examples": [ + "Create a pull request from feature/login to develop with a descriptive title and multiple reviewers.", + "Prepare a draft pull request with labels for enhancement and backend area.", + "Build a standard pull request object for hotfix targeting master from a specific branch with no reviewers or labels." + ] + }, + "tags": [ + "data-transformation", + "pull-request", + "code-collaboration", + "automation", + "version-control", + "development", + "build" + ], + "examples": [ + { + "inputJson": "{\"sourceBranch\":\"feature/login\",\"targetBranch\":\"develop\",\"title\":\"Add login feature\",\"description\":\"Implements user login with validation and session management.\",\"reviewers\":[\"alice\",\"bob\"],\"labels\":[\"feature\",\"backend\"],\"draft\":false}", + "description": "Building a pull request for new login feature from feature branch to develop with reviewers and labels." + }, + { + "inputJson": "{\"sourceBranch\":\"hotfix/urgent-fix\",\"targetBranch\":\"master\",\"title\":\"Fix critical bug in payment processing\",\"description\":\"Corrects a bug causing failed transactions.\",\"reviewers\":[],\"labels\":[\"bugfix\"],\"draft\":false}", + "description": "Building an urgent hotfix pull request targeting master with bugfix label and no reviewers." + }, + { + "inputJson": "{\"sourceBranch\":\"feature/ui-update\",\"targetBranch\":\"develop\",\"title\":\"Draft: UI redesign proposal\",\"description\":\"Initial draft for UI redesign, pending review.\",\"reviewers\":[\"carol\"],\"labels\":[\"draft\",\"UI\"],\"draft\":true}", + "description": "Building a draft pull request for UI redesign with a designated reviewer and labels." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "data-transformation.buildContainer", + "description": "Builds a data container by aggregating, transforming, and packaging input datasets into a structured container format. Accepts multiple data inputs in JSON or CSV, applies optional schema and transformations, and outputs a containerized data object suitable for further processing or storage.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "Array of data objects or file paths (JSON or CSV) to be included in the container.", + "required": true, + "defaultValue": "" + }, + { + "name": "containerType", + "type": "string", + "description": "The target container format to build: 'JSON', 'ZIP', or 'tar'.", + "required": true, + "defaultValue": "JSON" + }, + { + "name": "schema", + "type": "object", + "description": "Optional schema definition to validate and transform input data fields.", + "required": false, + "defaultValue": "" + }, + { + "name": "transformations", + "type": "array", + "description": "List of transformation rules to apply on input data, such as filters or mapping functions.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag to include generation metadata (timestamps, source info) inside the container.", + "required": false, + "defaultValue": "true" + }, + { + "name": "compressionLevel", + "type": "number", + "description": "Compression level for ZIP or tar containers from 0 (none) to 9 (max).", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "A structured data container object containing the aggregated and transformed data, along with metadata if requested, formatted as per containerType." + }, + "aiAgent": { + "useCase": "Use this tool when you need to unify and package multiple diverse data sources into a single, validated container for easy downstream processing or transport. Suitable for scenarios needing aggregation, format standardization, and optional compression.", + "limitations": "Does not support complex relational database exports or streaming large datasets beyond available memory. Cannot perform real-time data ingestion.", + "examples": [ + "Build a JSON container from multiple JSON data objects applying a standardized schema.", + "Package CSV data files into a compressed ZIP container with transformation filters applied.", + "Aggregate and validate data inputs into a tar archive including metadata for auditing." + ] + }, + "tags": [ + "data-transformation", + "container-build", + "aggregation", + "schema-validation", + "compression" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"name\":\"John\",\"age\":30},{\"name\":\"Jane\",\"age\":25}],\"containerType\":\"JSON\",\"schema\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"number\"}},\"required\":[\"name\",\"age\"]},\"includeMetadata\":true}", + "description": "Aggregate in-memory JSON objects into a JSON container with schema validation and metadata." + }, + { + "inputJson": "{\"inputData\":[\"data1.csv\",\"data2.csv\"],\"containerType\":\"ZIP\",\"transformations\":[{\"field\":\"age\",\"operation\":\"filter\",\"value\":\">18\"}],\"compressionLevel\":7}", + "description": "Build a ZIP container from CSV files applying a filter transformation and moderate compression." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "data-transformation.buildService", + "description": "Builds a structured service configuration object from given input parameters specifying service name, environment, dependencies, and resource limits. Accepts inputs as JSON or structured parameters, validates and assembles a finalized service deployment specification JSON.", + "category": "data-transformation", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name identifier of the service to build.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Target deployment environment (e.g., production, staging).", + "required": true, + "defaultValue": "" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of service dependencies by name, specifying other services this service depends on.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Resource constraints including CPU and memory limits for the service.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "replicas", + "type": "number", + "description": "Desired number of service replicas to deploy.", + "required": false, + "defaultValue": "1" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata labels and annotations for the service configuration.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the complete service configuration specification suitable for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically generate or update a service deployment specification from component parameters, enabling automated configuration generation for deployment pipelines or infrastructure management.", + "limitations": "Does not deploy or run the service. It cannot validate runtime compatibility beyond structural correctness. It does not generate code or scripts, only configuration objects.", + "examples": [ + "Build a service config for a web-app with database dependency in production environment with 3 replicas.", + "Create a staging environment service setup named 'analytics-service' with resource limits for CPU and memory.", + "Generate a deployment spec for a backend microservice with metadata labels and no dependencies." + ] + }, + "tags": [ + "data-transformation", + "service", + "configuration", + "infrastructure", + "deployment", + "build", + "automation" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"user-api\",\"environment\":\"production\",\"dependencies\":[\"auth-service\",\"db-service\"],\"resourceLimits\":{\"cpu\":\"500m\",\"memory\":\"256Mi\"},\"replicas\":3}", + "description": "Build a production service configuration named 'user-api' with dependencies and resource limits, scaled to 3 replicas." + }, + { + "inputJson": "{\"serviceName\":\"cache\",\"environment\":\"staging\",\"replicas\":1}", + "description": "Build a minimal staging environment service configuration named 'cache' with a single replica and no dependencies." + }, + { + "inputJson": "{\"serviceName\":\"analytics\",\"environment\":\"production\",\"dependencies\":[],\"metadata\":{\"team\":\"data-science\",\"priority\":\"high\"}}", + "description": "Create a production service configuration named 'analytics' with metadata labels for team and priority, no dependencies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "data-transformation.buildConfig", + "description": "Builds a structured configuration object from provided parameters in various formats (JSON, YAML, or key-value) and returns it as a normalized JSON config string. Accepts input as raw configuration data or parameter object, processes and merges defaults, validates required keys, and outputs ready-to-use configuration text.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputFormat", + "type": "string", + "description": "Specifies the format of the input configuration data, e.g., 'json', 'yaml', or 'keyValue'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "configData", + "type": "string", + "description": "The raw configuration content as a string matching the specified inputFormat.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultConfig", + "type": "object", + "description": "A JSON object containing default configuration keys and values to merge with input config.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "If true, perform schema validation against a predefined JSON schema before building the config.", + "required": false, + "defaultValue": "false" + }, + { + "name": "requiredKeys", + "type": "array", + "description": "An array of strings listing keys that must be present in the final configuration; tool errors if missing.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format for the built configuration: 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a 'configString' which is the built configuration in the specified outputFormat, and 'configObject' which is the parsed JSON object representing the configuration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert and build a configuration file from raw input in various formats, merge it with default settings, enforce required keys, and obtain a clean, validated config output in JSON or YAML format. Ideal for dynamic config generation or transformation pipelines.", + "limitations": "This tool does not perform deep validation beyond required keys and optional JSON schema validation; it cannot execute configuration or resolve environment-specific variables.", + "examples": [ + "Build a JSON config from given YAML input merging with defaults", + "Validate and build a config ensuring certain keys are present", + "Convert key-value pair config string into formatted JSON" + ] + }, + "tags": [ + "data transformation", + "config builder", + "json", + "yaml", + "validation", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"inputFormat\":\"yaml\",\"configData\":\"\\nserver:\\n port: 8080\\ndatabase:\\n host: localhost\\n port: 3306\\n\",\"defaultConfig\":{\"server\":{\"host\":\"0.0.0.0\"},\"database\":{\"user\":\"root\"}},\"validateSchema\":false,\"requiredKeys\":[\"server\",\"database\"],\"outputFormat\":\"json\"}", + "description": "Build JSON config from YAML input with default values merged and required keys enforced." + }, + { + "inputJson": "{\"inputFormat\":\"keyValue\",\"configData\":\"host=example.com\\nport=443\\n\",\"defaultConfig\":{},\"validateSchema\":false,\"requiredKeys\":[\"host\",\"port\"],\"outputFormat\":\"json\"}", + "description": "Build JSON config from simple key-value input string, requiring host and port keys." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Config", + "context": null + } + }, + { + "name": "data-transformation.buildBranch", + "description": "Constructs a structured representation of a code branch from input data describing commits and metadata. Accepts branch information including commit details, author, and parent branches, then outputs a comprehensive branch object suitable for code management or version control automation.", + "category": "data-transformation", + "parameters": [ + { + "name": "branchName", + "type": "string", + "description": "Name of the branch to build (e.g., feature/new-ui)", + "required": true, + "defaultValue": "" + }, + { + "name": "commits", + "type": "array", + "description": "Array of commit objects containing message, author, timestamp, and hash", + "required": true, + "defaultValue": "" + }, + { + "name": "parentBranches", + "type": "array", + "description": "List of parent branch names this branch is derived from", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional metadata for the branch like creation date or tags", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "A comprehensive branch object including name, commit history, parent branch references, and metadata suitable for version control tasks." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create a detailed branch representation from raw commit and branch metadata, especially for automated code workflow orchestration or code repository management where structured branch objects are needed.", + "limitations": "This tool builds a data representation of a branch but does not perform actual version control operations such as pushing to remote repositories or merging branches.", + "examples": [ + "Build a branch object for a new feature branch with three commits.", + "Create a branch structure from a series of commit data and reference to a main parent branch.", + "Assemble metadata-rich branch information including commits and tags for automation purposes." + ] + }, + "tags": [ + "data-transformation", + "branch", + "version-control", + "code-management", + "commit-history" + ], + "examples": [ + { + "inputJson": "{\"branchName\":\"feature/login-improvements\",\"commits\":[{\"message\":\"Add login form validation\",\"author\":\"dev1\",\"timestamp\":\"2024-06-01T10:00:00Z\",\"hash\":\"a1b2c3\"},{\"message\":\"Fix login redirect bug\",\"author\":\"dev2\",\"timestamp\":\"2024-06-02T13:15:00Z\",\"hash\":\"d4e5f6\"}],\"parentBranches\":[\"develop\"],\"metadata\":{\"createdBy\":\"dev1\",\"priority\":\"high\"}}", + "description": "Build a branch named 'feature/login-improvements' with two commits derived from 'develop' branch along with metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "data-transformation.generateDashboard", + "description": "This tool accepts raw JSON or CSV data representing analytics metrics, user activity, or KPIs and generates a customizable dashboard configuration object. It processes the input data, applies aggregation, filtering, and visualization rules as specified in parameters, and outputs a structured dashboard model including charts, tables, and summary widgets ready for rendering by UI frameworks.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "Raw data as JSON string or CSV content representing analytics metrics or events.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "Format of the input data. Supported values: 'json' or 'csv'.", + "required": true, + "defaultValue": "" + }, + { + "name": "visualizationTypes", + "type": "array", + "description": "List of visualization types to include in the dashboard, e.g., ['barChart','lineChart','table'].", + "required": false, + "defaultValue": "[\"barChart\",\"lineChart\",\"table\"]" + }, + { + "name": "filters", + "type": "object", + "description": "Object specifying filters to apply on data before visualization, e.g., {\"dateRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-01-31\"},\"region\":\"EMEA\"}.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "aggregationMethod", + "type": "string", + "description": "Aggregation function to summarize data, such as 'sum', 'average', 'count'.", + "required": false, + "defaultValue": "sum" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title to display on the generated dashboard.", + "required": false, + "defaultValue": "\"Analytics Dashboard\"" + }, + { + "name": "theme", + "type": "string", + "description": "Optional dashboard theme like 'light' or 'dark' to adjust visual styling.", + "required": false, + "defaultValue": "\"light\"" + } + ], + "returns": { + "type": "object", + "description": "A structured dashboard configuration object including metadata, a list of visualization widgets with their types, data sources post-filtering & aggregation, and layout details suitable for UI rendering." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to transform raw metric or event data into a coherent, visual dashboard configuration that can be rendered by front-end analytics applications or BI tools. Ideal for generating summary analytics views from raw or semi-structured data inputs automatically.", + "limitations": "Cannot render or display the dashboard UI itself; only provides structured configuration data. Complex custom visualizations beyond predefined types are not supported. Requires reasonably structured input data for meaningful output.", + "examples": [ + "Generate a dashboard from user activity JSON logs with line charts and tables.", + "Create a sales KPI dashboard from CSV sales records filtered by region and date range.", + "Summarize website traffic analytics into a dashboard with bar and line charts using average aggregation." + ] + }, + "tags": [ + "data-transformation", + "dashboard", + "analytics", + "visualization", + "aggregation", + "filtering", + "BI" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"date\\\":\\\"2024-06-01\\\",\\\"sales\\\":100},{\\\"date\\\":\\\"2024-06-02\\\",\\\"sales\\\":150}]\",\"inputFormat\":\"json\",\"visualizationTypes\":[\"lineChart\"],\"filters\":{\"dateRange\":{\"start\":\"2024-06-01\",\"end\":\"2024-06-30\"}},\"aggregationMethod\":\"sum\",\"dashboardTitle\":\"June Sales\"}", + "description": "Generate a line chart dashboard showing total sales per day for June from JSON data." + }, + { + "inputJson": "{\"inputData\":\"date,region,sales\\n2024-06-01,EMEA,200\\n2024-06-01,APAC,180\\n2024-06-02,EMEA,210\",\"inputFormat\":\"csv\",\"visualizationTypes\":[\"barChart\",\"table\"],\"filters\":{\"region\":\"EMEA\"},\"aggregationMethod\":\"sum\",\"dashboardTitle\":\"EMEA Region Sales\"}", + "description": "Create a dashboard with bar chart and table visualizations showing sales in the EMEA region from CSV input." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "data-transformation.buildModule", + "description": "This tool accepts structured input describing a software module's components, such as functions, classes, dependencies, and configuration options. It processes this description to generate complete module code in a specified programming language, assembling the defined components into a cohesive, ready-to-use code module as a text output.", + "category": "data-transformation", + "parameters": [ + { + "name": "moduleName", + "type": "string", + "description": "The name identifier for the module to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language for the generated code module (e.g., JavaScript, Python).", + "required": true, + "defaultValue": "" + }, + { + "name": "components", + "type": "array", + "description": "An array of component objects defining the module's internal parts such as functions, classes, and variables with their signatures and details.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDependencies", + "type": "boolean", + "description": "Whether to include import or require statements for external dependencies.", + "required": false, + "defaultValue": "true" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of external dependencies to include, each as a string name or path.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "moduleConfig", + "type": "object", + "description": "Optional configuration parameters for the module such as export style or coding conventions.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated source code as a string along with optional metadata such as file name and language." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically build a structured code module from a high-level design description, including functions, classes, and dependencies, especially for rapid prototyping or code scaffolding in supported languages.", + "limitations": "This tool does not compile or run the generated code. It cannot validate logic correctness or handle dynamic runtime configurations. It generates code based on provided static component definitions only.", + "examples": [ + "Generate a JavaScript module named 'mathUtils' including add and subtract functions.", + "Create a Python module with a class for data processing and associated helper functions.", + "Build a module that imports lodash and exports utility functions under specified config." + ] + }, + "tags": [ + "code-generation", + "module-building", + "software-engineering", + "code-scaffolding", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"moduleName\":\"stringUtils\",\"language\":\"JavaScript\",\"components\":[{\"type\":\"function\",\"name\":\"capitalize\",\"params\":[\"text\"],\"body\":\"return text.charAt(0).toUpperCase() + text.slice(1);\"},{\"type\":\"function\",\"name\":\"toLowerCase\",\"params\":[\"text\"],\"body\":\"return text.toLowerCase();\"}],\"includeDependencies\":false,\"dependencies\":[],\"moduleConfig\":{\"exportStyle\":\"named\"}}", + "description": "Build a JavaScript module named 'stringUtils' with two utility functions for string capitalization and lowering case, no dependencies, using named exports." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "data-transformation.createKPI", + "description": "Creates a Key Performance Indicator (KPI) metric from raw input data by applying specified aggregation functions and filters. Accepts input data as arrays of objects representing records, processes it to compute KPI values based on user-defined parameters, and outputs structured KPI summaries for analytics dashboards or reporting.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "Array of objects containing raw data records from which the KPI will be derived.", + "required": true, + "defaultValue": "" + }, + { + "name": "metricField", + "type": "string", + "description": "The key in input data objects representing the numeric metric to aggregate or analyze for the KPI.", + "required": true, + "defaultValue": "" + }, + { + "name": "aggregationFunction", + "type": "string", + "description": "The aggregation method to apply to metricField values. Supported functions include 'sum', 'average', 'count', 'max', and 'min'.", + "required": true, + "defaultValue": "sum" + }, + { + "name": "filterConditions", + "type": "object", + "description": "Optional key-value pairs to filter input records before aggregation. Keys are data fields, values are the required matching value.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "groupByFields", + "type": "array", + "description": "Optional list of data field names to group the KPI calculation by, producing results per group.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timePeriod", + "type": "string", + "description": "Optional ISO date range string (e.g., '2023-01-01/2023-01-31') to limit data considered in the KPI calculation.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the returned KPI result: 'summary' returns a numeric value, 'detailed' returns an array with grouped breakdowns.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the computed KPI value(s). If groupByFields specified or outputFormat is 'detailed', returns an array of objects with group keys and KPI values; otherwise returns a single numeric KPI value under the key 'kpiValue'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform raw dataset inputs into actionable Key Performance Indicators for monitoring or reporting purposes. It is useful in scenarios requiring aggregation of metrics possibly filtered by criteria, grouped by categories, and summarized over time windows to produce analytics-friendly KPI outputs.", + "limitations": "This tool cannot perform complex predictive analytics or trend forecasting. It requires structured data input and does not infer semantics from unstructured text. Aggregation functions are limited to basic summaries and cannot apply custom formulae.", + "examples": [ + "Create a monthly sales sum KPI for January 2023 filtered by region.", + "Compute average customer rating grouped by product category.", + "Generate total active user count without grouping or filters." + ] + }, + "tags": [ + "data-transformation", + "KPI", + "analytics", + "aggregation", + "filtering", + "grouping", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"date\":\"2023-01-05\",\"region\":\"East\",\"sales\":100},{\"date\":\"2023-01-10\",\"region\":\"East\",\"sales\":150},{\"date\":\"2023-01-15\",\"region\":\"West\",\"sales\":200}],\"metricField\":\"sales\",\"aggregationFunction\":\"sum\",\"filterConditions\":{\"region\":\"East\"},\"timePeriod\":\"2023-01-01/2023-01-31\",\"outputFormat\":\"summary\"}", + "description": "Calculate the total sales in January 2023 for the East region." + }, + { + "inputJson": "{\"inputData\":[{\"product\":\"A\",\"category\":\"Electronics\",\"rating\":4.5},{\"product\":\"B\",\"category\":\"Electronics\",\"rating\":4.0},{\"product\":\"C\",\"category\":\"Books\",\"rating\":5.0}],\"metricField\":\"rating\",\"aggregationFunction\":\"average\",\"groupByFields\":[\"category\"],\"outputFormat\":\"detailed\"}", + "description": "Compute average customer rating grouped by product category." + }, + { + "inputJson": "{\"inputData\":[{\"userId\":\"user1\",\"active\":true},{\"userId\":\"user2\",\"active\":false},{\"userId\":\"user3\",\"active\":true}],\"metricField\":\"active\",\"aggregationFunction\":\"count\",\"filterConditions\":{\"active\":true},\"outputFormat\":\"summary\"}", + "description": "Count number of active users from dataset." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "data-transformation.generateKPI", + "description": "Generates key performance indicators (KPIs) from structured input data. Accepts raw or aggregated datasets in JSON format, applies specified KPI formulas or metrics, and outputs KPI values with optional breakdowns per dimension or time period. Useful for producing business analytics metrics from operational data.", + "category": "data-transformation", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The structured source data from which to calculate KPIs, typically as an array of records with numerical and categorical fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiDefinitions", + "type": "array", + "description": "List of KPI definitions specifying metric names, calculation formulas, aggregation functions, and fields to use. Each element is an object defining one KPI.", + "required": true, + "defaultValue": "" + }, + { + "name": "groupByFields", + "type": "array", + "description": "Optional array of field names to group the data by before KPI calculation (e.g., by region, product).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeGranularity", + "type": "string", + "description": "Optional time granularity for time-based KPIs, such as 'daily', 'weekly', 'monthly'. Requires time fields in input data.", + "required": false, + "defaultValue": "" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "Optional filtering criteria applied to inputData to restrict records before KPI calculation. Should be key-value pairs for fields and allowed values.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object mapping KPI names to their calculated values. Values can be simple numbers or nested objects keyed by groupByFields or time periods." + }, + "aiAgent": { + "useCase": "Use this tool when needing to compute business or operational metrics (KPIs) from raw or aggregated data to support reporting or analytics tasks. The tool supports grouping and filtering to tailor the KPIs to specific segments or time frames.", + "limitations": "This tool does not source or clean raw data; input data must be preprocessed and formatted correctly. Complex KPI formulas requiring external data joins or advanced statistical methods are not supported directly.", + "examples": [ + "Generate sales and profit margin KPIs grouped by product category and month from transaction records.", + "Calculate customer churn rate and average revenue per user (ARPU) filtered for a specific region.", + "Produce overall operational KPIs like average handle time and first call resolution rate from service desk logs." + ] + }, + "tags": [ + "data-transformation", + "analytics", + "KPI", + "business-intelligence", + "metrics", + "aggregation", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"date\":\"2023-01-01\",\"category\":\"A\",\"sales\":100,\"profit\":30},{\"date\":\"2023-01-01\",\"category\":\"B\",\"sales\":150,\"profit\":50},{\"date\":\"2023-02-01\",\"category\":\"A\",\"sales\":120,\"profit\":40}],\"kpiDefinitions\":[{\"name\":\"totalSales\",\"field\":\"sales\",\"aggregation\":\"sum\"},{\"name\":\"profitMargin\",\"formula\":\"sum(profit)/sum(sales)\"}],\"groupByFields\":[\"category\"],\"timeGranularity\":\"monthly\"}", + "description": "Calculate total sales and profit margin KPIs grouped by category and month." + }, + { + "inputJson": "{\"inputData\":[{\"customerId\":1,\"region\":\"North\",\"churned\":false,\"revenue\":500},{\"customerId\":2,\"region\":\"South\",\"churned\":true,\"revenue\":0}],\"kpiDefinitions\":[{\"name\":\"churnRate\",\"formula\":\"count(churned==true)/count()\"},{\"name\":\"averageRevenuePerUser\",\"formula\":\"sum(revenue)/count()\"}],\"filterCriteria\":{\"region\":[\"North\"]}}", + "description": "Calculate customer churn rate and ARPU filtered for the North region." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "data-transformation.generateQuery", + "description": "Generates structured SQL queries from user-defined specifications. Accepts an input object describing tables, fields, filtering criteria, sorting, and aggregation. Processes to produce syntactically correct SQL query strings compatible with common relational databases.", + "category": "data-transformation", + "parameters": [ + { + "name": "tables", + "type": "array", + "description": "List of table names involved in the query. Required for FROM clause and joins.", + "required": true, + "defaultValue": "" + }, + { + "name": "fields", + "type": "array", + "description": "List of fields to select. Can include aliases and aggregate functions.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "array", + "description": "Array of filter objects specifying conditions for WHERE clause (field, operator, value).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "joins", + "type": "array", + "description": "Array of join definitions specifying type, left table, right table and join condition.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "groupBy", + "type": "array", + "description": "List of fields for GROUP BY clause to aggregate results.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "orderBy", + "type": "array", + "description": "List of ordering instructions with field and direction (ASC/DESC).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "limit", + "type": "number", + "description": "Limits the number of rows returned by the query.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "Object with a single property 'query' containing the generated SQL query string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct SQL queries based on user intent or structured query parameters. It helps transform natural language or structured data into executable SQL code, supporting data analysis, reporting, or database interaction workflows.", + "limitations": "This tool generates standard SQL queries but does not validate schema correctness or execute queries against a database. It cannot optimize complex query performance or generate queries for non-SQL data stores.", + "examples": [ + "Generate a SELECT query to get user names and emails where user is active.", + "Create a query joining orders and customers tables filtered by order date.", + "Generate an aggregation query to count sales per region ordered by total sales descending." + ] + }, + "tags": [ + "sql", + "query-generation", + "data-transformation", + "database", + "code-generation", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"tables\":[\"users\"],\"fields\":[\"id\",\"name\",\"email\"],\"filters\":[{\"field\":\"active\",\"operator\":\"=\",\"value\":true}],\"joins\":[],\"groupBy\":[],\"orderBy\":[{\"field\":\"name\",\"direction\":\"ASC\"}],\"limit\":100}", + "description": "Select id, name, email from users where active=true ordered by name ascending, limit 100." + }, + { + "inputJson": "{\"tables\":[\"orders\",\"customers\"],\"fields\":[\"orders.id\",\"customers.name\",\"orders.total\"],\"filters\":[{\"field\":\"orders.date\",\"operator\":\">=\",\"value\":\"2023-01-01\"}],\"joins\":[{\"type\":\"INNER JOIN\",\"leftTable\":\"orders\",\"rightTable\":\"customers\",\"condition\":\"orders.customer_id = customers.id\"}],\"groupBy\":[],\"orderBy\":[{\"field\":\"orders.date\",\"direction\":\"DESC\"}],\"limit\":50}", + "description": "Inner join orders and customers selecting order id, customer name, order total where order date is after 2023-01-01 ordered by date descending." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "data-transformation.createDashboard", + "description": "Creates a customizable analytics dashboard from structured data sources by accepting datasets and configuration options; processes data visualizations like charts and tables; outputs a dashboard JSON object defining the layout, widgets, and data bindings ready for rendering or further integration.", + "category": "data-transformation", + "parameters": [ + { + "name": "dataSources", + "type": "array", + "description": "An array of data source objects containing datasets to be visualized. Each data source includes data and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "widgets", + "type": "array", + "description": "List of widget configurations specifying type (chart, table, KPI), data mapping, and display options for each dashboard element.", + "required": true, + "defaultValue": "" + }, + { + "name": "layout", + "type": "object", + "description": "Object defining the dashboard layout including grid size, widget positions, and sizing for flexible arrangement.", + "required": false, + "defaultValue": "" + }, + { + "name": "theme", + "type": "string", + "description": "Optional theme name to style the dashboard visuals with predefined colors and fonts.", + "required": false, + "defaultValue": "light" + }, + { + "name": "title", + "type": "string", + "description": "Title of the dashboard for display purposes.", + "required": false, + "defaultValue": "\"Untitled Dashboard\"" + } + ], + "returns": { + "type": "object", + "description": "A dashboard configuration object containing the processed layout, widget setups, data links, and styling information representable in JSON format for rendering or saving." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured, interactive analytics dashboard from given datasets and specifications, particularly when visual summaries across multiple data sources and visualization types are required. It helps generate a ready-to-render dashboard configuration for BI tools or web apps.", + "limitations": "Does not execute or render the dashboard UI; cannot fetch or refresh data sources dynamically; widgets are limited to predefined visualization types; requires input data to be preprocessed and clean.", + "examples": [ + "Create a sales performance dashboard with bar charts and KPIs from quarterly data.", + "Generate a custom dashboard layout showing user engagement metrics and tables from multiple input datasets.", + "Build a dashboard with pie charts and line graphs using specified color themes and grid layouts." + ] + }, + "tags": [ + "data transformation", + "dashboard", + "analytics", + "visualization", + "BI", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"dataSources\":[{\"id\":\"ds1\",\"data\":[{\"month\":\"Jan\",\"sales\":1000},{\"month\":\"Feb\",\"sales\":1500}]},{\"id\":\"ds2\",\"data\":[{\"product\":\"A\",\"units\":200},{\"product\":\"B\",\"units\":300}]}],\"widgets\":[{\"type\":\"barChart\",\"dataSourceId\":\"ds1\",\"xField\":\"month\",\"yField\":\"sales\",\"title\":\"Monthly Sales\"},{\"type\":\"table\",\"dataSourceId\":\"ds2\",\"columns\":[\"product\",\"units\"],\"title\":\"Product Units Sold\"}],\"layout\":{\"columns\":2,\"rows\":1,\"positions\":[{\"widgetId\":0,\"col\":1,\"row\":1},{\"widgetId\":1,\"col\":2,\"row\":1}]},\"theme\":\"light\",\"title\":\"Sales Dashboard\"}", + "description": "Create a sales dashboard with a bar chart of monthly sales and a table of product units sold, arranged in two columns on one row with a light theme." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "data-transformation.createInstance", + "description": "Creates a new data transformation instance based on a specified configuration object. Accepts input parameters defining the data source type, transformation rules, and output format. Processes the configuration to instantiate an executable transformation pipeline, returning a reference object with instance ID, status, and summary of the setup.", + "category": "data-transformation", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "Unique name to identify the transformation instance.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceType", + "type": "string", + "description": "Type of data source (e.g., 'csv', 'json', 'database').", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationRules", + "type": "object", + "description": "Specification of transformation rules and mappings to apply on data.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output data format after transformation (e.g., 'json', 'xml').", + "required": true, + "defaultValue": "" + }, + { + "name": "schedule", + "type": "string", + "description": "Optional cron expression to schedule recurring transformation runs.", + "required": false, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable or disable detailed logging of the transformation process.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing instanceId, creationTimestamp, currentStatus, and a brief summary of the transformation configuration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically set up a reusable data transformation instance by defining the data source type, transformation logic, and output format. Ideal for automating ETL pipelines or data integration tasks where configuration is required before execution.", + "limitations": "This tool does not execute the transformation itself; it only creates the instance. It cannot validate the correctness of transformation rules beyond basic schema checks.", + "examples": [ + "Create a data transformation instance that reads CSV files, applies specified mapping rules, and outputs JSON format.", + "Set up a scheduled instance for transforming database exports into XML nightly.", + "Generate a transformation instance with logging enabled for debugging purposes." + ] + }, + "tags": [ + "data-transformation", + "instance-creation", + "etl", + "pipeline", + "automation" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"csvToJsonTransform\",\"sourceType\":\"csv\",\"transformationRules\":{\"mapColumns\":{\"Name\":\"fullName\",\"Age\":\"ageYears\"}},\"outputFormat\":\"json\",\"enableLogging\":true}", + "description": "Create an instance to transform CSV data to JSON with column mappings and logging enabled." + }, + { + "inputJson": "{\"instanceName\":\"dbExportToXml\",\"sourceType\":\"database\",\"transformationRules\":{\"filterRows\":{\"status\":\"active\"}},\"outputFormat\":\"xml\",\"schedule\":\"0 2 * * *\"}", + "description": "Scheduled instance to export active database records and convert them into XML format at 2 AM daily." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "data-transformation.createVideo", + "description": "Creates a video file by combining a sequence of images, audio tracks, and optional text overlays. Accepts input in form of image URLs or base64-encoded images, audio files, and timing parameters. Processes these inputs to produce a playable video file in specified format and resolution.", + "category": "data-transformation", + "parameters": [ + { + "name": "images", + "type": "array", + "description": "Array of image objects representing frames or slides to include in the video. Each object contains image data (URL or base64) and optional display duration in seconds.", + "required": true, + "defaultValue": "" + }, + { + "name": "audioTracks", + "type": "array", + "description": "Array of audio track objects to overlay on the video. Each object includes audio data (URL or base64) and start time in seconds for playback.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "textOverlays", + "type": "array", + "description": "Optional array of text overlay objects specifying text content, position (x,y), font size, color, start time, and duration on screen.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "videoFormat", + "type": "string", + "description": "Output video file format, e.g., 'mp4', 'webm', or 'avi'.", + "required": false, + "defaultValue": "mp4" + }, + { + "name": "frameRate", + "type": "number", + "description": "Frames per second (fps) for the output video. Typical values are between 24 and 60.", + "required": false, + "defaultValue": "30" + }, + { + "name": "resolution", + "type": "object", + "description": "Resolution of the output video with width and height in pixels.", + "required": false, + "defaultValue": "{\"width\":1280,\"height\":720}" + }, + { + "name": "loopAudio", + "type": "boolean", + "description": "Whether to loop audio tracks to match video length if audio is shorter.", + "required": false, + "defaultValue": "false" + }, + { + "name": "backgroundColor", + "type": "string", + "description": "Background color for video frames where images do not cover entire frame, in hex format (e.g., '#000000').", + "required": false, + "defaultValue": "#000000" + } + ], + "returns": { + "type": "object", + "description": "Object containing video metadata and data URL or download URL of the created video file." + }, + "aiAgent": { + "useCase": "Use this tool when an AI or automation agent needs to programmatically generate videos from dynamic sets of images, audio, and texts—such as creating video summaries, tutorials, presentations, or marketing clips without manual video editing.", + "limitations": "This tool cannot perform complex video editing tasks like advanced transitions, effects, or 3D animations. It relies on input image and audio quality, supports limited video formats and resolutions dictated by processing engine.", + "examples": [ + "Create a slideshow video from a series of product images with background music and captions for each slide.", + "Generate a tutorial video with step images, overlayed instructions as text, and a narrator audio track.", + "Produce a marketing clip combining branded images and an audio jingle, exporting as MP4 in 1080p." + ] + }, + "tags": [ + "video", + "creation", + "media", + "images", + "audio", + "text-overlay", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"images\":[{\"data\":\"https://example.com/image1.jpg\",\"duration\":3},{\"data\":\"https://example.com/image2.jpg\",\"duration\":4}],\"audioTracks\":[{\"data\":\"https://example.com/music.mp3\",\"startTime\":0}],\"textOverlays\":[{\"text\":\"Welcome\",\"x\":100,\"y\":50,\"fontSize\":24,\"color\":\"#FFFFFF\",\"startTime\":0,\"duration\":3}],\"videoFormat\":\"mp4\",\"frameRate\":30,\"resolution\":{\"width\":1280,\"height\":720}}", + "description": "Create a 7-second MP4 video slideshow from 2 images with background music and a welcome text overlay." + }, + { + "inputJson": "{\"images\":[{\"data\":\"data:image/png;base64,iVBORw0KGgoAAAANS...\",\"duration\":5}],\"audioTracks\":[],\"videoFormat\":\"webm\",\"frameRate\":25,\"resolution\":{\"width\":1920,\"height\":1080},\"backgroundColor\":\"#FFFFFF\"}", + "description": "Generate a 5-second white background video in WebM format from a single base64-encoded image without audio." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "data-transformation.createRisk", + "description": "Creates a structured risk assessment object from given input data including risk description, likelihood, impact, and mitigation steps. It validates input parameters, computes a risk severity score, and outputs a detailed risk object suitable for security or project risk management processes.", + "category": "data-transformation", + "parameters": [ + { + "name": "riskId", + "type": "string", + "description": "A unique identifier for the risk being created.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the identified risk.", + "required": true, + "defaultValue": "" + }, + { + "name": "likelihood", + "type": "number", + "description": "The likelihood of the risk occurring, on a numeric scale (e.g., 1-5).", + "required": true, + "defaultValue": "" + }, + { + "name": "impact", + "type": "number", + "description": "The potential impact severity if the risk occurs, on a numeric scale (e.g., 1-5).", + "required": true, + "defaultValue": "" + }, + { + "name": "mitigationSteps", + "type": "array", + "description": "List of recommended mitigation steps or controls for managing the risk.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "category", + "type": "string", + "description": "Risk category or type (e.g., Security, Operational, Compliance).", + "required": false, + "defaultValue": "General" + }, + { + "name": "detectedDate", + "type": "string", + "description": "Date the risk was identified, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured Risk object including id, description, likelihood, impact, severity score, mitigation steps, category, and detected date." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to create or transform raw risk data inputs into standardized risk assessment objects, typically during security assessments, compliance checks, or project risk evaluations. It helps in generating a consistent risk profile with calculated severity for further analysis or reporting.", + "limitations": "This tool does not conduct risk analysis or identify risks from unstructured data; it requires predefined input parameters. It cannot evaluate the effectiveness of mitigation steps, nor replace expert judgment in risk prioritization.", + "examples": [ + "Create a risk entry for a new cybersecurity threat with description, likelihood 4, impact 5, and mitigation steps.", + "Generate a risk object for operational risk detected during audit with medium likelihood and low impact.", + "Build a general compliance risk using the given risk ID, description, and category." + ] + }, + "tags": [ + "data-transformation", + "risk-management", + "security", + "compliance", + "assessment", + "severity-calculation" + ], + "examples": [ + { + "inputJson": "{\"riskId\":\"RISK-2024-001\",\"description\":\"Unauthorized access to confidential customer data.\",\"likelihood\":4,\"impact\":5,\"mitigationSteps\":[\"Implement multi-factor authentication\",\"Regular access audits\"],\"category\":\"Security\",\"detectedDate\":\"2024-05-12\"}", + "description": "Creating a security risk object for unauthorized data access with mitigation steps and severity calculated." + }, + { + "inputJson": "{\"riskId\":\"RISK-2024-002\",\"description\":\"Project delay due to supplier failure.\",\"likelihood\":3,\"impact\":3,\"mitigationSteps\":[\"Identify alternative suppliers\",\"Increase inventory buffer\"],\"category\":\"Operational\"}", + "description": "Creating an operational risk object with moderate risk values and mitigation strategies." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "data-transformation.createPayment", + "description": "Creates a structured payment object from input data including payer and payee information, amount, currency, and optional metadata. Validates and formats the input to produce a standardized payment JSON object ready for processing or storage.", + "category": "data-transformation", + "parameters": [ + { + "name": "payerId", + "type": "string", + "description": "Unique identifier for the payer initiating the payment.", + "required": true, + "defaultValue": "" + }, + { + "name": "payeeId", + "type": "string", + "description": "Unique identifier for the payee receiving the payment.", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "The numeric value of the payment amount to be transferred, must be positive.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The ISO 4217 currency code (e.g., USD, EUR) used in the payment transaction.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "paymentDate", + "type": "string", + "description": "ISO 8601 formatted date and time string representing when the payment is made.", + "required": false, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Method of payment, e.g., credit_card, bank_transfer, paypal.", + "required": false, + "defaultValue": "bank_transfer" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs containing additional payment information or notes.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A validated, standardized payment object containing payerId, payeeId, amount, currency, paymentDate, paymentMethod, and metadata fields suitable for downstream processing." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct a consistent payment data structure from raw input parameters, ensuring proper format, validation, and default handling for integration into payment processing systems or databases.", + "limitations": "This tool does not execute payments or communicate with financial institutions; it solely prepares the payment data structure.", + "examples": [ + "Create a payment record for $150 USD from user123 to vendor456 scheduled for today using credit card.", + "Generate a payment object for transferring 200 EUR from clientA to supplierB with notes in metadata.", + "Build a payment JSON for instant bank transfer of 50 USD between two account IDs." + ] + }, + "tags": [ + "data-transformation", + "payment", + "financial", + "create", + "formatting", + "validation" + ], + "examples": [ + { + "inputJson": "{\"payerId\":\"user123\",\"payeeId\":\"vendor456\",\"amount\":150,\"currency\":\"USD\",\"paymentDate\":\"2024-06-01T10:00:00Z\",\"paymentMethod\":\"credit_card\",\"metadata\":{\"orderId\":\"ORD789\"}}", + "description": "Create a credit card payment of $150 USD from user123 to vendor456 with associated order ID." + }, + { + "inputJson": "{\"payerId\":\"clientA\",\"payeeId\":\"supplierB\",\"amount\":200,\"currency\":\"EUR\",\"paymentMethod\":\"bank_transfer\"}", + "description": "Generate payment structure for a 200 EUR bank transfer with no specific payment date, defaults apply." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "data-transformation.createOpportunity", + "description": "Creates a standardized Opportunity object from raw input data by extracting, validating, and transforming relevant business opportunity information such as customer details, potential revenue, stage, and expected close date. Outputs a structured Opportunity JSON ready for CRM integration or further processing.", + "category": "data-transformation", + "parameters": [ + { + "name": "rawInputData", + "type": "object", + "description": "Raw input data containing opportunity details in any format (e.g., from form submissions, spreadsheets, or APIs).", + "required": true, + "defaultValue": "" + }, + { + "name": "mappingSchema", + "type": "object", + "description": "Defines how to map fields from rawInputData to standardized Opportunity fields (e.g., keys to 'customerName', 'amount', 'stage').", + "required": true, + "defaultValue": "" + }, + { + "name": "validateFields", + "type": "boolean", + "description": "Flag to enable validation of required Opportunity fields such as customerName and amount.", + "required": false, + "defaultValue": "true" + }, + { + "name": "defaultStage", + "type": "string", + "description": "Default sales stage to assign if none found in the input data.", + "required": false, + "defaultValue": "Prospecting" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the opportunity amount if not specified in the input.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "A standardized Opportunity object with fields like customerName, amount, currency, stage, expectedCloseDate, and additional metadata for CRM ingestion or reporting." + }, + "aiAgent": { + "useCase": "Use this tool when the AI agent receives unstructured or semi-structured business lead data requiring normalization into a clean Opportunity object for CRM systems or sales analytics. It helps convert disparate input formats into a consistent schema with validation and default handling.", + "limitations": "Cannot enrich or validate external customer data beyond given inputs; complex nested raw data may require pre-processing before mapping.", + "examples": [ + "Create an Opportunity object from submitted web form data containing lead info and potential deal size.", + "Transform spreadsheet rows of prospect details into standardized Opportunity JSON for bulk upload.", + "Generate Opportunity objects from mixed API responses for integration with sales pipeline software." + ] + }, + "tags": [ + "data-transformation", + "business", + "CRM", + "opportunity", + "sales", + "normalization", + "data-mapping" + ], + "examples": [ + { + "inputJson": "{\"rawInputData\":{\"clientName\":\"Acme Corp\",\"potentialRevenue\":\"50000\",\"closeDate\":\"2024-12-31\",\"status\":\"Negotiation\"},\"mappingSchema\":{\"customerName\":\"clientName\",\"amount\":\"potentialRevenue\",\"expectedCloseDate\":\"closeDate\",\"stage\":\"status\"},\"validateFields\":true,\"defaultStage\":\"Qualification\",\"currency\":\"USD\"}", + "description": "Map raw client lead data into standardized Opportunity structure with validation enabled." + }, + { + "inputJson": "{\"rawInputData\":{\"company\":\"Beta LLC\",\"dealSize\":120000},\"mappingSchema\":{\"customerName\":\"company\",\"amount\":\"dealSize\"},\"validateFields\":false,\"defaultStage\":\"Prospecting\"}", + "description": "Create Opportunity with minimal fields and default stage; skip validation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "data-transformation.createTable", + "description": "Creates a structured data table from raw input data by defining columns and rows. Accepts input as an array of objects or arrays, along with optional column configurations. Outputs a consistent table representation as an array of objects with uniform keys, suitable for further data processing or export.", + "category": "data-transformation", + "parameters": [ + { + "name": "dataRows", + "type": "array", + "description": "An array of data entries representing rows; can be arrays or objects. Each entry corresponds to one table row.", + "required": true, + "defaultValue": "" + }, + { + "name": "columnHeaders", + "type": "array", + "description": "Optional array of strings defining the column headers. If omitted and dataRows contains objects, keys are extracted automatically.", + "required": false, + "defaultValue": "" + }, + { + "name": "fillMissingValues", + "type": "boolean", + "description": "If true, missing values in rows are filled with nulls to ensure consistent column counts.", + "required": false, + "defaultValue": "true" + }, + { + "name": "convertToObjects", + "type": "boolean", + "description": "If true, converts all rows into objects using columnHeaders as keys. If false, output remains array of arrays.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a standardized table object containing 'headers' as an array of strings and 'rows' as an array of objects with keys matching headers. Ensures uniform structure for further data handling." + }, + "aiAgent": { + "useCase": "Use this tool when incoming data needs to be structured into a tabular format, especially when source data varies in format or completeness. Ideal for preparing data for visualization, storage, or transformation workflows requiring consistent tables. It simplifies heterogeneous or incomplete records into uniform rows and columns.", + "limitations": "Does not parse or clean individual cell content beyond uniform structuring. It cannot infer complex data types or validate data semantic correctness. Not designed for large-scale database table creation or direct database interaction.", + "examples": [ + "Create a table from JSON array where some rows have missing fields.", + "Convert array of arrays into a table with specified column headers.", + "Fill missing values with null to maintain alignment in the table output." + ] + }, + "tags": [ + "data-transformation", + "table", + "structure", + "formatting", + "preprocessing" + ], + "examples": [ + { + "inputJson": "{\"dataRows\":[{\"name\":\"Alice\",\"age\":30},{\"name\":\"Bob\"}],\"fillMissingValues\":true}", + "description": "Create a table from array of objects with missing fields, filling missing values." + }, + { + "inputJson": "{\"dataRows\":[[\"Alice\",30],[\"Bob\"],[\"Charlie\",25]],\"columnHeaders\":[\"name\",\"age\"],\"convertToObjects\":true}", + "description": "Convert array of arrays to table objects with specified headers." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "data-transformation.createVariable", + "description": "Creates a declaration statement of a programming variable based on the specified language, variable name, type, and initial value. Accepts variable details and outputs a code snippet string initializing the variable as per language syntax conventions.", + "category": "data-transformation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The name identifier for the variable to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "Data type of the variable, such as int, string, boolean, float, or language-specific types.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialValue", + "type": "string", + "description": "Optional initial value to assign to the variable; left empty if no initialization desired.", + "required": false, + "defaultValue": "" + }, + { + "name": "programmingLanguage", + "type": "string", + "description": "Target programming language for the variable declaration, e.g., JavaScript, Python, Java, C#, or C++. Case insensitive.", + "required": true, + "defaultValue": "" + }, + { + "name": "isConstant", + "type": "boolean", + "description": "Whether the variable should be declared as a constant (immutable) if supported by the language.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated variable declaration code as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to generate syntactically correct variable declaration code for a specified language and variable configuration, such as during code generation, templating, or automated scripting.", + "limitations": "The tool does not validate semantic correctness of variable types beyond basic mappings and does not generate complex initialization expressions or handle language-specific scoping or modifiers beyond constants.", + "examples": [ + "Create a constant integer variable named maxCount initialized to 10 in JavaScript.", + "Generate a mutable string variable userName with no initial value in Python.", + "Declare a boolean variable isEnabled initialized to true in Java." + ] + }, + "tags": [ + "data-transformation", + "code-generation", + "variable", + "programming", + "templating" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"maxCount\",\"variableType\":\"int\",\"initialValue\":\"10\",\"programmingLanguage\":\"JavaScript\",\"isConstant\":true}", + "description": "Create a constant integer variable named maxCount initialized to 10 in JavaScript." + }, + { + "inputJson": "{\"variableName\":\"userName\",\"variableType\":\"string\",\"initialValue\":\"\",\"programmingLanguage\":\"Python\",\"isConstant\":false}", + "description": "Create a mutable string variable userName with no initial value in Python." + }, + { + "inputJson": "{\"variableName\":\"isEnabled\",\"variableType\":\"boolean\",\"initialValue\":\"true\",\"programmingLanguage\":\"Java\",\"isConstant\":false}", + "description": "Create a mutable boolean variable isEnabled initialized to true in Java." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "data-validation.analyzeDashboard", + "description": "Analyzes dashboard data to validate data quality and integrity by examining metrics, visualizations, and filters. Accepts JSON dashboard configurations including data sources, metrics, filters, and layout. Processes to detect inconsistencies, missing data, or anomalies and produces a comprehensive report of validation results and suggested corrections.", + "category": "data-validation", + "parameters": [ + { + "name": "dashboardConfig", + "type": "object", + "description": "JSON object representing the dashboard configuration including data sources, metrics, filters, and visual elements to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "array", + "description": "Optional list of specific validation rules or checks to apply, such as 'missingData', 'outliers', or 'filterConflicts'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeSuggestions", + "type": "boolean", + "description": "Whether to include suggestions for correcting detected data issues in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxIssues", + "type": "number", + "description": "Maximum number of detected issues to include in the report to avoid excessive detail.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary of validation results including total issues detected, detailed issues list with type, severity, location on dashboard, and optional suggestions for fixes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to validate the accuracy, completeness, and consistency of data presented in dashboard configurations often before deployment or update. It helps ensure dashboards do not contain errors like missing data, inconsistent filters, or visual misrepresentations that could mislead users.", + "limitations": "Cannot directly connect to live data sources to fetch real-time data; requires dashboard configuration input. Does not fix issues automatically, only suggests corrections. May not detect all domain-specific semantic errors without custom validation rules.", + "examples": [ + "Analyze a sales dashboard config for missing values and conflicting filters.", + "Check marketing dashboard metrics for outliers and data inconsistencies.", + "Validate proposed dashboard layout and data sources for correctness before release." + ] + }, + "tags": [ + "data-validation", + "dashboard", + "analytics", + "quality-assurance", + "data-integrity", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"dashboardConfig\":{\"widgets\":[{\"type\":\"chart\",\"dataSource\":\"sales_db\",\"metric\":\"total_sales\",\"filters\":[{\"field\":\"region\",\"value\":\"NA\"}]}]}, \"validationRules\":[\"missingData\",\"filterConflicts\"], \"includeSuggestions\":true, \"maxIssues\":10}", + "description": "Analyze a sales dashboard configuration to identify missing data issues and filter conflicts, returning suggestions for fixing detected problems." + }, + { + "inputJson": "{\"dashboardConfig\":{\"widgets\":[{\"type\":\"table\",\"dataSource\":\"marketing_stats\",\"metric\":\"click_rate\",\"filters\":[]}],\"layout\":{\"rows\":1,\"columns\":1}}, \"validationRules\":[\"outliers\"], \"includeSuggestions\":false}", + "description": "Analyze a marketing dashboard focusing on detecting outliers in click rates without suggestions in the report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "data-validation.analyzeLink", + "description": "This tool accepts a URL or hyperlink string and performs a thorough analysis to validate its format, check for URL safety, accessibility, and potential redirections. It outputs a detailed report including URL validity, HTTP status, safety assessment, final resolved URL, and any detected issues like broken links or suspicious patterns.", + "category": "data-validation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL or hyperlink string to be analyzed for validation and safety checks.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Whether to perform an HTTP request to verify the URL is accessible (default: true).", + "required": false, + "defaultValue": "true" + }, + { + "name": "checkRedirects", + "type": "boolean", + "description": "Whether to follow the URL redirects to find the final destination URL (default: true).", + "required": false, + "defaultValue": "true" + }, + { + "name": "safetyScan", + "type": "boolean", + "description": "Whether to perform a safety scan to detect potentially malicious URLs (default: true).", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "The maximum time in seconds to wait for HTTP responses during checks (default: 5).", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing the URL validation results, including isValidFormat (boolean), httpStatusCode (number|null), isAccessible (boolean|null), finalUrl (string|null), safetyStatus (string), issues (array of strings describing detected issues)" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to verify if a URL is syntactically valid, accessible, safe to visit, and to detect any redirects or potential issues such as broken links or suspicious URLs before further processing or presentation to users.", + "limitations": "This tool cannot guarantee absolute safety from all malicious URLs. It relies on heuristics and publicly available safety databases, and may not detect zero-day or very new threats. It also depends on network availability for accessibility and redirect checks.", + "examples": [ + "Analyze the safety and accessibility of the URL https://example.com.", + "Check if https://malicious-site.test is a valid and safe link to share.", + "Verify accessibility and final redirect destination of the provided hyperlink." + ] + }, + "tags": [ + "validation", + "links", + "URL", + "security", + "accessibility", + "analysis" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\"}", + "description": "Basic validation and safety check on a common URL." + }, + { + "inputJson": "{\"url\":\"http://bit.ly/2HlzRf1\",\"checkRedirects\":true}", + "description": "Analyze a shortened URL and follow redirects to find the final destination." + }, + { + "inputJson": "{\"url\":\"htp://invalid-url\",\"checkAccessibility\":false}", + "description": "Test URL with invalid format and skip accessibility check to just validate syntax." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "data-validation.analyzeRisk", + "description": "This tool accepts structured data records containing various attributes relevant to security and operational contexts. It processes this input by applying configurable risk analysis algorithms including threat probability estimation, impact assessment, and vulnerability correlation. The output is a detailed risk report with risk scores, categorizations (e.g., high, medium, low), and suggested mitigations to inform decision-making and prioritization.", + "category": "data-validation", + "parameters": [ + { + "name": "dataRecords", + "type": "array", + "description": "An array of data objects representing assets, events, or conditions to be analyzed for risk. Each record should include necessary attributes like asset value, known vulnerabilities, and threat indicators.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskModel", + "type": "string", + "description": "The specific risk analysis model or methodology to apply (e.g., 'OWASP Top 10', 'NIST SP 800-30', 'custom'). Determines how risk factors are weighted and aggregated.", + "required": false, + "defaultValue": "NIST SP 800-30" + }, + { + "name": "thresholdHigh", + "type": "number", + "description": "Numeric threshold above which risk is categorized as 'High'. Helps in classifying the severity of detected risks.", + "required": false, + "defaultValue": "0.7" + }, + { + "name": "thresholdMedium", + "type": "number", + "description": "Numeric threshold above which risk is categorized as 'Medium'. Values below this but above Medium threshold are 'Low'.", + "required": false, + "defaultValue": "0.4" + }, + { + "name": "includeMitigations", + "type": "boolean", + "description": "Whether the output should include recommended mitigation strategies for identified risks.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of risk assessments for each input record, including calculated risk score, risk level (High, Medium, Low), identified risk factors, and optional mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess and prioritize security or operational risks based on input data about the environment, assets, vulnerabilities, or threats. It is ideal for generating risk reports to guide mitigation and resource allocation decisions.", + "limitations": "Does not perform real-time monitoring or breach detection. Quality and completeness of risk evaluation depend heavily on input data accuracy and chosen risk model.", + "examples": [ + "Analyze risk levels for a list of IT assets with known vulnerabilities using the NIST model.", + "Evaluate risk for security events input and receive mitigation recommendations.", + "Generate a risk report for operational risks in a manufacturing environment with customized thresholds." + ] + }, + "tags": [ + "data-validation", + "risk-analysis", + "security", + "assessment", + "threat-evaluation", + "mitigation" + ], + "examples": [ + { + "inputJson": "{\"dataRecords\":[{\"id\":\"asset1\",\"assetValue\":100000,\"vulnerabilities\":[\"CVE-2021-1234\"],\"threatIndicators\":[\"phishing\"]}],\"riskModel\":\"NIST SP 800-30\",\"thresholdHigh\":0.7,\"thresholdMedium\":0.4,\"includeMitigations\":true}", + "description": "Analyzing risk for a single IT asset with a known vulnerability and phishing threat indicator using default NIST risk thresholds and including mitigation suggestions." + }, + { + "inputJson": "{\"dataRecords\":[{\"id\":\"event42\",\"eventType\":\"loginFailure\",\"frequency\":50,\"impactScore\":0.3}],\"riskModel\":\"custom\",\"thresholdHigh\":0.8,\"thresholdMedium\":0.5,\"includeMitigations\":false}", + "description": "Evaluating an event risk profile with a custom model and thresholds, excluding mitigation recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "data-validation.sendNotification", + "description": "Sends a notification message to specified recipients when a data validation event occurs. Accepts inputs for message content, recipient details, and notification type, processes the information to format a notification, and outputs the delivery status and any errors encountered.", + "category": "data-validation", + "parameters": [ + { + "name": "message", + "type": "string", + "description": "The content of the notification message to be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipients", + "type": "array", + "description": "A list of recipient contact strings such as email addresses or phone numbers to receive the notification.", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "The type or channel of notification to send, e.g. 'email', 'sms', or 'push'.", + "required": true, + "defaultValue": "email" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the notification, such as 'high', 'normal', or 'low'.", + "required": false, + "defaultValue": "normal" + }, + { + "name": "subject", + "type": "string", + "description": "Optional subject line for the notification when sent via email or similar channels.", + "required": false, + "defaultValue": "" + }, + { + "name": "dataValidationEventId", + "type": "string", + "description": "Identifier for the data validation event triggering this notification, for tracking purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "sendAsync", + "type": "boolean", + "description": "Flag indicating whether to send the notification asynchronously (default true).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the notification delivery for each recipient, including success indicators and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to notify stakeholders or systems about the results or status of data validation operations. It facilitates real-time alerts or messages for errors, warnings, or completions to ensure prompt attention.", + "limitations": "This tool does not perform data validation itself, nor can it guarantee delivery on unreliable communication channels. It also does not support advanced multi-channel fallbacks or analytics.", + "examples": [ + "Send a warning notification to the data engineering team if data validation fails.", + "Notify the compliance officer via email with the details of validation errors.", + "Alert system administrators by SMS about high priority data validation exceptions." + ] + }, + "tags": [ + "notification", + "data-validation", + "alert", + "communication", + "messaging", + "event-driven" + ], + "examples": [ + { + "inputJson": "{\"message\":\"Data validation failed for batch #123.\",\"recipients\":[\"ops-team@example.com\"],\"notificationType\":\"email\",\"priority\":\"high\",\"subject\":\"Validation Error Alert\",\"dataValidationEventId\":\"evt-7890\",\"sendAsync\":true}", + "description": "Send a high priority email notification about a failed validation event to the operations team." + }, + { + "inputJson": "{\"message\":\"Data integrity check passed successfully.\",\"recipients\":[\"admin@example.com\",\"qa-team@example.com\"],\"notificationType\":\"email\",\"priority\":\"normal\",\"subject\":\"Validation Success\",\"sendAsync\":false}", + "description": "Synchronous notification to admin and QA team on successful data validation." + }, + { + "inputJson": "{\"message\":\"Critical validation error detected.\",\"recipients\":[\"+15551234567\"],\"notificationType\":\"sms\",\"priority\":\"high\",\"sendAsync\":true}", + "description": "Send a high priority SMS alert about a critical data validation error to a phone number." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "data-validation.uploadImage", + "description": "This tool accepts image files as input and performs validation checks to ensure image quality and integrity. It verifies file format, resolution, file size, and scans for corruption or unsupported content. The tool returns a validation report indicating if the image meets specified criteria or detailing errors found.", + "category": "data-validation", + "parameters": [ + { + "name": "imageData", + "type": "string", + "description": "Base64-encoded string or URL of the image file to validate", + "required": true, + "defaultValue": "" + }, + { + "name": "allowedFormats", + "type": "array", + "description": "List of acceptable image formats (e.g., [\"jpg\", \"png\", \"gif\"]). If empty, defaults to common formats.", + "required": false, + "defaultValue": "[\"jpg\",\"png\",\"gif\",\"bmp\",\"tiff\"]" + }, + { + "name": "minResolution", + "type": "object", + "description": "Minimum required resolution with width and height in pixels (e.g., {\"width\":800,\"height\":600})", + "required": false, + "defaultValue": "{\"width\":0,\"height\":0}" + }, + { + "name": "maxResolution", + "type": "object", + "description": "Maximum allowed resolution with width and height in pixels", + "required": false, + "defaultValue": "{\"width\":10000,\"height\":10000}" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed file size in megabytes", + "required": false, + "defaultValue": "5" + }, + { + "name": "scanForCorruption", + "type": "boolean", + "description": "If true, performs a scan to detect corrupted or partially broken images", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "ValidationResult object containing overall isValid boolean, list of error messages if any, detected image format, dimensions, and file size in bytes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to validate uploaded image files for format correctness, quality thresholds, and integrity before further processing such as analysis, classification, or storage. It helps ensure only valid images that meet criteria proceed.", + "limitations": "This tool cannot repair corrupted images or enhance image quality. It does not perform detailed content analysis beyond format and structural validation.", + "examples": [ + "Validate if user-uploaded profile picture is an acceptable JPEG or PNG under 5MB and minimum 400x400 pixels.", + "Check batch of images for valid formats and no corruption before processing.", + "Validate an image URL's format and size before downloading and using it." + ] + }, + "tags": [ + "image", + "validation", + "upload", + "file-quality", + "format-check", + "corruption-detection" + ], + "examples": [ + { + "inputJson": "{\"imageData\":\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA\",\"allowedFormats\":[\"png\",\"jpg\"],\"minResolution\":{\"width\":400,\"height\":400},\"maxFileSizeMB\":2,\"scanForCorruption\":true}", + "description": "Validate a small uploaded PNG image ensuring it meets size and format requirements." + }, + { + "inputJson": "{\"imageData\":\"https://example.com/photo.jpg\",\"allowedFormats\":[\"jpg\"],\"minResolution\":{\"width\":800,\"height\":600},\"maxResolution\":{\"width\":1920,\"height\":1080},\"maxFileSizeMB\":3,\"scanForCorruption\":true}", + "description": "Validate an image by URL with resolution and size constraints to confirm it is suitable for website use." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "data-validation.uploadDataset", + "description": "Uploads a dataset in CSV or JSON format to the data validation system. It performs initial integrity checks such as schema conformity, missing values detection, and basic data quality assessment. Returns a detailed validation report indicating detected issues and summary statistics.", + "category": "data-validation", + "parameters": [ + { + "name": "datasetName", + "type": "string", + "description": "The unique name to identify the uploaded dataset.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of the dataset being uploaded. Supported formats: 'csv', 'json'.", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetContent", + "type": "string", + "description": "The raw content of the dataset in string format, representing the complete CSV text or JSON array/object.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinition", + "type": "object", + "description": "Optional JSON schema defining expected fields, types, and constraints for validating dataset structure and data types.", + "required": false, + "defaultValue": "" + }, + { + "name": "allowPartialUpload", + "type": "boolean", + "description": "If true, allows upload to succeed with warnings even if some non-critical validation issues are found.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing validation results including success status, list of detected errors or warnings, row counts, and summary statistics for numeric fields." + }, + "aiAgent": { + "useCase": "Use this tool when ingesting new datasets that require automated data quality and integrity validation before further processing or storage. This is especially useful for ensuring datasets meet schema requirements and contain no critical data quality issues to prevent downstream errors.", + "limitations": "This tool validates format, schema compliance, and basic data integrity but does not perform deep semantic validation or complex anomaly detection. It relies on provided schema for structure validation and cannot correct data errors automatically.", + "examples": [ + "Upload a sales transactions CSV file with specified schema to validate field types and completeness.", + "Ingest a JSON dataset of customer profiles ensuring required attributes are present and valid.", + "Submit a dataset with known missing optional fields but allow partial upload with warnings." + ] + }, + "tags": [ + "data-validation", + "dataset-management", + "upload", + "data-quality", + "schema-validation" + ], + "examples": [ + { + "inputJson": "{\"datasetName\":\"customer_data_june\",\"dataFormat\":\"csv\",\"datasetContent\":\"id,name,email,age\\n1,John Doe,john@example.com,30\\n2,Jane Smith,jane@sample.com,25\",\"schemaDefinition\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"integer\"},\"name\":{\"type\":\"string\"},\"email\":{\"type\":\"string\",\"format\":\"email\"},\"age\":{\"type\":\"integer\",\"minimum\":0}},\"required\":[\"id\",\"name\",\"email\"]},\"allowPartialUpload\":false}", + "description": "Uploading a customer data CSV with specific schema requiring id, name, email fields." + }, + { + "inputJson": "{\"datasetName\":\"product_inventory\",\"dataFormat\":\"json\",\"datasetContent\":\"[{\\\"product_id\\\":101,\\\"name\\\":\\\"Widget\\\",\\\"quantity\\\":50},{\\\"product_id\\\":102,\\\"name\\\":\\\"Gadget\\\",\\\"quantity\\\":-5}]\",\"schemaDefinition\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"product_id\":{\"type\":\"integer\"},\"name\":{\"type\":\"string\"},\"quantity\":{\"type\":\"integer\",\"minimum\":0}},\"required\":[\"product_id\",\"name\",\"quantity\"]}},\"allowPartialUpload\":true}", + "description": "Uploading a product inventory dataset with quantity validation and allowing partial upload despite a negative quantity warning." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "data-validation.downloadDataset", + "description": "Downloads datasets from specified URL sources, validates their integrity using optional checksum verification and format checks, and outputs the dataset content along with validation status and metadata.", + "category": "data-validation", + "parameters": [ + { + "name": "datasetUrl", + "type": "string", + "description": "The URL from which to download the dataset file.", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedChecksum", + "type": "string", + "description": "Optional SHA256 checksum string to verify dataset integrity after download.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileFormat", + "type": "string", + "description": "Expected format of the dataset file (e.g., csv, json, xml) for validation purposes.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed file size in megabytes to prevent downloading excessively large files.", + "required": false, + "defaultValue": "100" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download to complete before timing out.", + "required": false, + "defaultValue": "60" + }, + { + "name": "retryCount", + "type": "number", + "description": "Number of retry attempts if the download fails due to network errors.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the dataset content as a string or parsed structure, validation status, error messages if any, and metadata such as file size and download duration." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically retrieve datasets from remote URLs and ensure their quality by validating file integrity and format before processing. This is helpful in data pipelines, automated data ingestion, or pre-processing steps where verified data is crucial.", + "limitations": "This tool does not parse complex nested data formats fully, only basic format validation is performed. It cannot handle datasets requiring authentication or stored behind secured APIs without additional support. It does not perform semantic validation of data content beyond format and size checks.", + "examples": [ + "Download a CSV file from a public repository and verify its SHA256 checksum.", + "Fetch a JSON dataset with a file size limit to avoid large downloads.", + "Attempt to download a dataset with retry support on unstable connections." + ] + }, + "tags": [ + "data-validation", + "dataset-download", + "integrity-check", + "file-download", + "format-validation" + ], + "examples": [ + { + "inputJson": "{\"datasetUrl\":\"https://example.com/data/sample.csv\",\"expectedChecksum\":\"d2d2d2e1f1c3a4b5c6d7e8f9a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8g9h0\",\"fileFormat\":\"csv\",\"maxFileSizeMB\":50}", + "description": "Download a CSV dataset from a public URL with checksum verification and 50 MB size limit." + }, + { + "inputJson": "{\"datasetUrl\":\"https://api.opendata.org/dataset.json\",\"fileFormat\":\"json\",\"timeoutSeconds\":30,\"retryCount\":2}", + "description": "Download a JSON dataset with a 30 second timeout and up to 2 retries on failure." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Dataset", + "context": null + } + }, + { + "name": "data-validation.downloadImage", + "description": "Downloads an image from a provided URL and validates its integrity by checking if the image data is fully retrievable and matches expected content-type headers. Accepts image URL and optional timeout parameters, returns download status, image metadata, and validation results.", + "category": "data-validation", + "parameters": [ + { + "name": "imageUrl", + "type": "string", + "description": "The URL of the image to download and validate.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before timing out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "validateContentType", + "type": "boolean", + "description": "Whether to validate the HTTP Content-Type header corresponds to a known image MIME type.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxImageSizeMB", + "type": "number", + "description": "Maximum allowed image size in megabytes; downloads exceeding this size are aborted.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing a success flag, image metadata (format, size, dimensions), HTTP status code, error messages if any, and validation results indicating integrity and content-type checks." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically download images from URLs for validation purposes, ensuring the image is authentic, complete, and meets size and type expectations before processing or storage. Applicable in pipelines for data ingestion, web scraping, or content validation workflows.", + "limitations": "Does not perform deep content authenticity checks beyond content-type validation and size. Cannot validate images behind authentication or require advanced image forensic checks.", + "examples": [ + "Download and validate an image from a public URL to ensure it is complete and a valid JPEG before processing.", + "Check if an image from a URL meets size constraints and content-type expectations before saving.", + "Download an image with a custom timeout and validate its MIME type to avoid corrupted downloads." + ] + }, + "tags": [ + "data-validation", + "download", + "image", + "url", + "integrity-check", + "media" + ], + "examples": [ + { + "inputJson": "{\"imageUrl\":\"https://example.com/image.jpg\",\"timeoutSeconds\":15,\"validateContentType\":true}", + "description": "Download and validate a JPEG image from a public URL with a 15 second timeout and content-type check." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/large-image.png\",\"maxImageSizeMB\":5}", + "description": "Attempt to download an image enforcing a maximum size of 5 MB, to prevent excessive resource use." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/image.gif\",\"validateContentType\":false}", + "description": "Download a GIF image without validating the content-type header." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Image", + "context": null + } + }, + { + "name": "data-validation.formatDataset", + "description": "Formats a dataset by validating and standardizing its structure based on provided schema rules. Accepts dataset input as JSON or CSV string, applies formatting rules such as type coercion, required field enforcement, and date formatting, and outputs a cleaned, consistently structured dataset in JSON format along with validation status and error details if any.", + "category": "data-validation", + "parameters": [ + { + "name": "dataset", + "type": "string", + "description": "Input dataset as a JSON string or CSV string to be formatted and validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatType", + "type": "string", + "description": "Specify the input dataset format type: 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "schema", + "type": "object", + "description": "Schema object defining expected fields, data types, required flags, and formatting rules.", + "required": true, + "defaultValue": "" + }, + { + "name": "dateFormat", + "type": "string", + "description": "Desired date format string to normalize date fields (e.g., 'YYYY-MM-DD').", + "required": false, + "defaultValue": "YYYY-MM-DD" + }, + { + "name": "enforceRequiredFields", + "type": "boolean", + "description": "Whether to enforce required fields defined in the schema and report missing fields as errors.", + "required": false, + "defaultValue": "true" + }, + { + "name": "coerceTypes", + "type": "boolean", + "description": "Whether to attempt coercion of field values to the specified types in the schema.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing 'formattedDataset' (array of validated and formatted records), 'isValid' (boolean indicating overall dataset validity), and 'errors' (array detailing any errors per record)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to clean, validate, and standardize datasets before analysis or ingestion into systems. Ideal for transforming raw JSON or CSV data into a consistent format ensuring data integrity follows a predefined schema, normalizing types and date representations.", + "limitations": "The tool does not perform advanced data imputation or external reference checks. It relies on the accuracy and completeness of the provided schema for validation and formatting.", + "examples": [ + "Format a CSV sales data file according to provided schema to ensure dates and numbers are standardized and required fields exist.", + "Validate JSON customer records against a schema to ensure all required fields are present, correct data types, and normalize dates.", + "Coerce and format a loosely structured JSON dataset of events to a consistent shape and output clean JSON array." + ] + }, + "tags": [ + "data-validation", + "dataset-formatting", + "data-cleaning", + "schema-validation", + "json", + "csv" + ], + "examples": [ + { + "inputJson": "{\"dataset\":\"[{\\\"id\\\":\\\"123\\\",\\\"date\\\":\\\"01/12/2024\\\",\\\"amount\\\":\\\"1000\\\"},{\\\"id\\\":\\\"124\\\",\\\"date\\\":\\\"2024-12-02\\\",\\\"amount\\\":\\\"950.5\\\"}]\",\"formatType\":\"json\",\"schema\":{\"id\":{\"type\":\"string\",\"required\":true},\"date\":{\"type\":\"date\",\"required\":true},\"amount\":{\"type\":\"number\",\"required\":true}},\"dateFormat\":\"YYYY-MM-DD\",\"enforceRequiredFields\":true,\"coerceTypes\":true}", + "description": "Format JSON dataset, coercing types and normalizing dates to YYYY-MM-DD." + }, + { + "inputJson": "{\"dataset\":\"id,date,amount\\n1,2024/01/15,1500\\n2,15-01-2024,2000\",\"formatType\":\"csv\",\"schema\":{\"id\":{\"type\":\"number\",\"required\":true},\"date\":{\"type\":\"date\",\"required\":true},\"amount\":{\"type\":\"number\",\"required\":true}},\"dateFormat\":\"YYYY-MM-DD\",\"enforceRequiredFields\":true,\"coerceTypes\":true}", + "description": "Format CSV string dataset by parsing and validating fields with date conversion." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "data-validation.sendAlert", + "description": "This tool accepts alert details including severity, message, and metadata about a security-related data validation failure. It processes the input to format and send alerts through configured notification channels (email, SMS, or webhook). It returns a confirmation of alert delivery status with timestamps and any error messages.", + "category": "data-validation", + "parameters": [ + { + "name": "alertSeverity", + "type": "string", + "description": "Severity level of the alert (e.g., low, medium, high, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "alertMessage", + "type": "string", + "description": "Primary message describing the data validation issue triggering the alert.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional contextual information related to the alert such as data source, validation rule, or affected dataset.", + "required": false, + "defaultValue": "" + }, + { + "name": "notificationChannels", + "type": "array", + "description": "List of channels to send the alert through (e.g., ['email', 'sms', 'webhook']).", + "required": true, + "defaultValue": "[\"email\"]" + }, + { + "name": "recipients", + "type": "array", + "description": "List of recipients for the alert notification, such as email addresses or phone numbers.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "webhookUrl", + "type": "string", + "description": "Webhook URL to send alert payload if 'webhook' is among notification channels.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Object containing the status of the alert dispatch including success flags, timestamps, and error details if any." + }, + "aiAgent": { + "useCase": "Use this tool when a data validation process detects anomalies or failures that require immediate attention, and automated alerting is necessary to notify security teams or data owners through preferred communication channels.", + "limitations": "This tool does not itself perform data validation or fix data issues; it only sends alert notifications. Channel configurations like email server setup or SMS gateway integrations must be preconfigured externally.", + "examples": [ + "Send an alert for a critical data validation failure to email and SMS recipients.", + "Dispatch a high severity alert with metadata via webhook to monitoring system." + ] + }, + "tags": [ + "data-validation", + "alerting", + "notification", + "security", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"alertSeverity\":\"critical\",\"alertMessage\":\"Data integrity check failed for Customer dataset.\",\"metadata\":{\"ruleId\":\"VAL-102\",\"source\":\"ETL Pipeline\"},\"notificationChannels\":[\"email\",\"sms\"],\"recipients\":[\"secops@example.com\",\"+15555551234\"]}", + "description": "Send a critical alert about data integrity failure to security operations via email and SMS." + }, + { + "inputJson": "{\"alertSeverity\":\"high\",\"alertMessage\":\"Unexpected null values detected in transaction records.\",\"metadata\":{\"affectedTable\":\"transactions_2024\"},\"notificationChannels\":[\"webhook\"],\"recipients\":[],\"webhookUrl\":\"https://hooks.example.com/alerts\"}", + "description": "Send a high severity alert with metadata through a webhook to an incident tracking system." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "data-validation.formatWord", + "description": "This tool accepts a word input as a string and formats it according to specified parameters such as case style (e.g., uppercase, lowercase, title case), locale-specific capitalization rules, and optional trimming of whitespace. It outputs the transformed word string, ensuring consistent formatting for data validation or display purposes.", + "category": "data-validation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The input word string to format.", + "required": true, + "defaultValue": "" + }, + { + "name": "caseStyle", + "type": "string", + "description": "The desired case format: 'uppercase', 'lowercase', 'titlecase', or 'none' for no change.", + "required": false, + "defaultValue": "none" + }, + { + "name": "locale", + "type": "string", + "description": "Locale code (e.g., 'en-US', 'tr-TR') to apply locale-specific casing rules when applicable.", + "required": false, + "defaultValue": "en-US" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Whether to trim leading and trailing whitespace from the input word before formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted word string under 'formattedWord' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize the format of a single word input for data validation, UI display, or text normalization, especially when locale-specific casing or whitespace trimming is needed. It helps ensure consistent word formatting across data entries or user inputs.", + "limitations": "This tool only formats a single word string; it does not handle multiple words or sentences, nor does it perform semantic validation or spell checking.", + "examples": [ + "Format the word 'straße' to uppercase with German locale rules.", + "Convert the word ' example ' to title case and trim whitespace.", + "Return the lowercase version of the input word without trimming." + ] + }, + "tags": [ + "formatting", + "validation", + "string", + "word", + "localization", + "text-processing" + ], + "examples": [ + { + "inputJson": "{\"word\":\"straße\",\"caseStyle\":\"uppercase\",\"locale\":\"de-DE\",\"trimWhitespace\":true}", + "description": "Formats the German word 'straße' to uppercase with German locale rules, resulting in 'STRASSE'." + }, + { + "inputJson": "{\"word\":\" example \",\"caseStyle\":\"titlecase\",\"locale\":\"en-US\",\"trimWhitespace\":true}", + "description": "Trims whitespace and converts 'example' to Title Case, resulting in 'Example'." + }, + { + "inputJson": "{\"word\":\"Hello\",\"caseStyle\":\"lowercase\",\"locale\":\"en-US\",\"trimWhitespace\":false}", + "description": "Returns 'hello' by converting the input word to lowercase without trimming whitespace." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "data-validation.formatText", + "description": "This tool accepts raw text input and formats it according to specified standards such as trimming whitespace, converting case styles (uppercase, lowercase, title case), normalizing whitespace, and applying custom replacements. It outputs the formatted text string ready for validation or further processing.", + "category": "data-validation", + "parameters": [ + { + "name": "inputText", + "type": "string", + "description": "The raw input text string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "Remove leading and trailing whitespace from the input text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "caseStyle", + "type": "string", + "description": "Convert the text to a case style: 'none', 'uppercase', 'lowercase', or 'titlecase'.", + "required": false, + "defaultValue": "none" + }, + { + "name": "normalizeWhitespace", + "type": "boolean", + "description": "Reduce multiple internal whitespace characters to a single space.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customReplacements", + "type": "object", + "description": "An object containing key-value pairs for replacing specific substrings in the text. Keys are strings to find; values are replacement strings.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted text string under 'formattedText' key." + }, + "aiAgent": { + "useCase": "Use this tool when raw text inputs require cleaning and standard formatting before validation or further processing, such as normalizing user input, logs, or dataset entries to ensure consistency. It helps prepare text data by adjusting case, removing unwanted whitespace, and applying specific substring replacements to match a desired format.", + "limitations": "This tool does not perform semantic text analysis, grammar correction, or language translation. It only modifies formatting aspects based on supplied parameters.", + "examples": [ + "Format a user-submitted address by trimming spaces and converting to title case.", + "Normalize log messages by converting to lowercase and removing extra internal spaces.", + "Apply specific substring replacements like correcting common misspellings before validation." + ] + }, + "tags": [ + "formatting", + "text", + "data cleaning", + "validation", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"inputText\":\" hello WORLD! \",\"trimWhitespace\":true,\"caseStyle\":\"titlecase\",\"normalizeWhitespace\":true,\"customReplacements\":{}}", + "description": "Trim spaces and convert text to title case." + }, + { + "inputJson": "{\"inputText\":\"This is a TEST.\",\"trimWhitespace\":false,\"caseStyle\":\"lowercase\",\"normalizeWhitespace\":true,\"customReplacements\":{}}", + "description": "Normalize internal spaces and convert all letters to lowercase." + }, + { + "inputJson": "{\"inputText\":\"Errorrrrr in input.\",\"trimWhitespace\":true,\"caseStyle\":\"none\",\"normalizeWhitespace\":true,\"customReplacements\":{\"Errorrrrr\":\"Error\"}}", + "description": "Trim spaces, normalize whitespace, and fix a repeated character mistake with custom replacement." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Text", + "context": null + } + }, + { + "name": "data-validation.composeWord", + "description": "This tool accepts parameters to construct a word that meets specified validation constraints such as length boundaries, character sets, and inclusion or exclusion of certain substrings. It processes the constraints and composes a single word string that adheres to all given validation rules. It outputs the composed word or an error message if no valid word can be created.", + "category": "data-validation", + "parameters": [ + { + "name": "minLength", + "type": "number", + "description": "The minimum length of the composed word (inclusive).", + "required": false, + "defaultValue": "1" + }, + { + "name": "maxLength", + "type": "number", + "description": "The maximum length of the composed word (inclusive).", + "required": false, + "defaultValue": "20" + }, + { + "name": "allowedCharacters", + "type": "string", + "description": "String containing all allowed characters that can be used in the composed word.", + "required": false, + "defaultValue": "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" + }, + { + "name": "mustIncludeSubstrings", + "type": "array", + "description": "Array of substrings that must appear somewhere within the composed word.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "mustExcludeSubstrings", + "type": "array", + "description": "Array of substrings that must not appear anywhere in the composed word.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "caseSensitive", + "type": "boolean", + "description": "Whether the substring constraints are case sensitive.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing either the composed valid word or an error message if no valid word could be generated." + }, + "aiAgent": { + "useCase": "An AI agent should use data-validation.composeWord when it needs to generate a single word that complies with specific validation constraints before further processing or submitting to systems requiring validated input. This is useful for generating test data, passwords, codes, or controlled vocabulary entries that fulfill exact integrity rules.", + "limitations": "This tool cannot generate meaningful dictionary words on demand; it constructs words syntactically valid based on the parameters, but without semantic awareness. It also may fail to generate a word if given overly restrictive constraints.", + "examples": [ + "Compose a word of length between 5 and 8 with only lowercase letters that includes 'cat' but excludes 'dog'.", + "Generate a case-insensitive word of length 3 to 6 that must include the substrings 'ab' and exclude 'xyz'.", + "Create a valid word of length 4 to 10 using letters only, without any substring constraints." + ] + }, + "tags": [ + "data-validation", + "word-generation", + "string-composition", + "input-validation", + "constraint-satisfaction" + ], + "examples": [ + { + "inputJson": "{\"minLength\":5,\"maxLength\":8,\"allowedCharacters\":\"abcdefghijklmnopqrstuvwxyz\",\"mustIncludeSubstrings\":[\"cat\"],\"mustExcludeSubstrings\":[\"dog\"],\"caseSensitive\":false}", + "description": "Compose a lowercase word between 5 and 8 letters that includes 'cat' and excludes 'dog'" + }, + { + "inputJson": "{\"minLength\":3,\"maxLength\":6,\"allowedCharacters\":\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\",\"mustIncludeSubstrings\":[\"Ab\"],\"mustExcludeSubstrings\":[\"xyz\"],\"caseSensitive\":true}", + "description": "Generate a case-sensitive word including 'Ab' but not containing 'xyz', length 3-6" + }, + { + "inputJson": "{\"minLength\":4,\"maxLength\":10,\"allowedCharacters\":\"abcdefghijklmnopqrstuvwxyz\",\"mustIncludeSubstrings\":[],\"mustExcludeSubstrings\":[],\"caseSensitive\":true}", + "description": "Create a lowercase word of length between 4 and 10 with no substring constraints" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Word", + "context": null + } + }, + { + "name": "data-validation.formatTest", + "description": "Validates and formats test code snippets to ensure consistent style and correctness. Accepts code as a string in common programming languages, applies formatting rules (indentation, spacing), and returns the formatted code along with validation status and error messages if formatting rules are violated.", + "category": "data-validation", + "parameters": [ + { + "name": "code", + "type": "string", + "description": "The source code of the test to be validated and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the test code (e.g., 'javascript', 'python').", + "required": true, + "defaultValue": "" + }, + { + "name": "styleGuide", + "type": "string", + "description": "Optional style guide or formatting rules to follow (e.g., 'Google', 'Airbnb').", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed line length for the formatted code.", + "required": false, + "defaultValue": "80" + }, + { + "name": "fixErrors", + "type": "boolean", + "description": "Whether to automatically fix detected formatting errors if possible.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the formatted test code, validation status, and an array of formatting errors if any." + }, + "aiAgent": { + "useCase": "Use this tool when needing to ensure test code snippets conform to specific formatting and style standards before integration or further processing. It is particularly useful for preparing tests to pass CI/CD linters or for generating readable code examples.", + "limitations": "This tool does not validate test logic or correctness beyond formatting rules. It also may not support all programming languages or deep semantic validation.", + "examples": [ + "Format and validate a JavaScript Jest test snippet to conform to Airbnb style guide.", + "Check and automatically fix formatting issues in a Python unittest test case.", + "Validate formatting of a Java JUnit test without automatic fixing." + ] + }, + "tags": [ + "data-validation", + "formatting", + "code", + "test", + "style-guide", + "linting" + ], + "examples": [ + { + "inputJson": "{\"code\":\"test(\\\"adds 1 + 2 to equal 3\\\",()=>{expect(sum(1,2)).toBe(3);});\",\"language\":\"javascript\",\"styleGuide\":\"Airbnb\",\"maxLineLength\":80,\"fixErrors\":true}", + "description": "Format and fix a JavaScript Jest test snippet according to Airbnb style guide." + }, + { + "inputJson": "{\"code\":\"def test_addition():\\n assert add(1,2) == 3\",\"language\":\"python\",\"styleGuide\":\"Google\",\"maxLineLength\":100,\"fixErrors\":false}", + "description": "Validate formatting of a Python unittest function using Google style guide without fixing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "data-validation.formatContract", + "description": "Formats a contract text input according to specified style guidelines and ensures standard contract sections are present and properly structured. Accepts raw contract text, formatting rules, and returns the formatted contract text with summarized compliance to standards.", + "category": "data-validation", + "parameters": [ + { + "name": "contractText", + "type": "string", + "description": "The raw text of the contract document to be formatted and validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The style guideline to apply for formatting, e.g., 'legal-standard', 'compact', or 'detailed'.", + "required": false, + "defaultValue": "legal-standard" + }, + { + "name": "requiredSections", + "type": "array", + "description": "List of contract section names that must be present, e.g., ['Introduction','Terms','Signatures'].", + "required": false, + "defaultValue": "[\"Introduction\",\"Terms\",\"Signatures\"]" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum number of characters per line after formatting, for readability.", + "required": false, + "defaultValue": "80" + }, + { + "name": "includeNumbering", + "type": "boolean", + "description": "Whether to include section and subsection numbering in the formatted contract.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the formatted contract text and a compliance summary indicating presence of required sections." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to prepare a contract document for review or publication by ensuring formatting standards and critical sections are included correctly. Ideal for standardizing contracts or legal documents to improve clarity and compliance.", + "limitations": "Cannot interpret legal content correctness or validate legal enforceability; only formats and checks structural presence of specified contract sections.", + "examples": [ + "Format this raw contract text according to legal standard style including Introduction, Terms, and Signatures sections.", + "Given a contract draft, apply compact formatting and add numbering to sections.", + "Check if the contract text includes required standard sections and format it to a max line length of 100 characters." + ] + }, + "tags": [ + "data-validation", + "formatting", + "contract", + "legal", + "document", + "structure", + "compliance" + ], + "examples": [ + { + "inputJson": "{\"contractText\":\"This Agreement is made between Buyer and Seller...\\nTerms and conditions follow...\\nSignatures: Buyer and Seller.\",\"formatStyle\":\"legal-standard\",\"requiredSections\":[\"Introduction\",\"Terms\",\"Signatures\"],\"maxLineLength\":80,\"includeNumbering\":true}", + "description": "Format a plain contract text applying the legal standard style, ensuring all standard sections are present and numbering is included." + }, + { + "inputJson": "{\"contractText\":\"Confidentiality Agreement text here...\",\"formatStyle\":\"compact\",\"requiredSections\":[\"Definitions\",\"Obligations\",\"Termination\"],\"maxLineLength\":100,\"includeNumbering\":false}", + "description": "Format a confidentiality agreement in a compact style without numbering but verifying required sections are included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Contract", + "context": null + } + }, + { + "name": "data-validation.buildPullRequest", + "description": "This tool accepts structured data about code changes, validations, and metadata to build a comprehensive Pull Request object often used in code hosting and review platforms. Given inputs like title, description, changed files, and validation results, it constructs a validated Pull Request object ready for further processing or submission.", + "category": "data-validation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the pull request, summarizing the changes.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Detailed description of the pull request.", + "required": false, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Username or identifier of the pull request author.", + "required": true, + "defaultValue": "" + }, + { + "name": "changedFiles", + "type": "array", + "description": "List of files changed with details such as filename and change type.", + "required": true, + "defaultValue": "" + }, + { + "name": "validations", + "type": "object", + "description": "Object containing validation results such as build status, test coverage, lint warnings, and code quality metrics.", + "required": false, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The base branch against which the PR is created, e.g., 'main' or 'develop'.", + "required": true, + "defaultValue": "main" + }, + { + "name": "targetBranch", + "type": "string", + "description": "The feature or topic branch that contains the changes for the pull request.", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A PullRequest object structured with metadata, change details, validation summaries, and ready to be used for submission or review." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to aggregate and validate all relevant data related to a code change into a single Pull Request object for code review, CI/CD pipeline integration, or further automation. It ensures the PR data is consistent and includes validated build/test results to improve automation reliability.", + "limitations": "This tool does not create the pull request in a remote repository; it only builds the PR data object. It also does not perform validations itself but expects validation results as inputs.", + "examples": [ + "Build a pull request object for a feature branch with files changed and test results.", + "Generate a pull request object that includes validation info from CI indicating build success and coverage.", + "Assemble a pull request for review based on provided metadata, changed files and linting warnings." + ] + }, + "tags": [ + "data-validation", + "pull-request", + "code", + "ci-cd", + "automation", + "code-review" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Add user authentication\",\"description\":\"Implement OAuth2 login flow\",\"author\":\"devAlice\",\"changedFiles\":[{\"filename\":\"auth.js\",\"changeType\":\"modified\"},{\"filename\":\"login.html\",\"changeType\":\"added\"}],\"validations\":{\"buildStatus\":\"success\",\"testCoverage\":92,\"lintWarnings\":3},\"baseBranch\":\"main\",\"targetBranch\":\"feature/auth\"}", + "description": "Build a PullRequest object for a feature branch adding authentication with validations from CI." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "PullRequest", + "context": null + } + }, + { + "name": "data-validation.draftReport", + "description": "This tool accepts data validation results as input and drafts a structured report summarizing data quality issues, metrics, and recommendations. It processes validation flags, error counts, and data profiles to generate a clear, human-readable report useful for stakeholders and data engineers.", + "category": "data-validation", + "parameters": [ + { + "name": "validationResults", + "type": "object", + "description": "An object containing the output of data validation processes including error details, warning counts, and summary statistics.", + "required": true, + "defaultValue": "" + }, + { + "name": "reportTitle", + "type": "string", + "description": "Title of the report to be included in the header section.", + "required": false, + "defaultValue": "\"Data Validation Report\"" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Flag indicating whether to append remediation recommendations based on validation issues found.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Specifies the desired output format of the report, e.g., 'text', 'markdown', or 'html'.", + "required": false, + "defaultValue": "\"text\"" + }, + { + "name": "dateGenerated", + "type": "string", + "description": "Optional ISO 8601 date string to include as the report generation date. Defaults to the current date if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the drafted report as a string in the requested format and metadata such as word count and a summary of included sections." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw data validation outputs and you need to create a comprehensive and readable report for data quality stakeholders that summarizes errors, warnings, data profiles, and actionable recommendations.", + "limitations": "This tool does not perform data validation itself; it only drafts reports based on provided validation data. It cannot analyze raw data or execute real-time validation.", + "examples": [ + "Draft a markdown report summarizing the results of a recent database validation run including recommendations.", + "Generate a plain text data quality report from JSON validation output to share with data engineers.", + "Create an HTML formatted data validation summary for a BI dashboard display." + ] + }, + "tags": [ + "data-validation", + "reporting", + "data-quality", + "summary", + "automation", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"validationResults\":{\"errors\":{\"missingValues\":15,\"invalidFormats\":3},\"warnings\":{\"duplicates\":7},\"summary\":{\"totalRecords\":1000,\"validatedFields\":10}},\"reportTitle\":\"Monthly Data Quality Report\",\"includeRecommendations\":true,\"outputFormat\":\"markdown\",\"dateGenerated\":\"2024-06-05T10:30:00Z\"}", + "description": "Generate a markdown report titled 'Monthly Data Quality Report' including recommendations and validation summary with errors and warnings." + }, + { + "inputJson": "{\"validationResults\":{\"errors\":{},\"warnings\":{\"incompleteData\":5},\"summary\":{\"totalRecords\":5000,\"validatedFields\":8}},\"reportTitle\":\"Quarterly Data Validation\",\"includeRecommendations\":false,\"outputFormat\":\"text\"}", + "description": "Create a plain text quarterly data validation report that includes warnings but excludes remediation suggestions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Report", + "context": null + } + }, + { + "name": "data-validation.buildContainer", + "description": "Validates the integrity and quality of container infrastructure configurations by accepting container specification data (e.g., Dockerfile, Kubernetes YAML) and checking for common misconfigurations, security issues, and compliance errors. Outputs a detailed validation report highlighting detected issues and suggestions for remediation.", + "category": "data-validation", + "parameters": [ + { + "name": "containerSpec", + "type": "string", + "description": "Configuration data defining the container setup, such as Dockerfile contents or Kubernetes manifest in YAML or JSON format.", + "required": true, + "defaultValue": "" + }, + { + "name": "specFormat", + "type": "string", + "description": "The format of the container specification provided (e.g., 'dockerfile', 'kubernetes', 'helm').", + "required": true, + "defaultValue": "dockerfile" + }, + { + "name": "validateSecurity", + "type": "boolean", + "description": "Whether to perform security checks on container configuration, such as scanning for insecure base images or exposed secrets.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateCompliance", + "type": "boolean", + "description": "Whether to check container specs against compliance standards like CIS benchmarks or internal policies.", + "required": false, + "defaultValue": "true" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "If true, treat warnings as errors causing validation failure; otherwise, only report them.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the validation report output, either 'json' for machine-readable or 'text' for human-readable report.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An object containing the validation results including a summary, detailed list of issues with severity levels, and remediation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to verify container infrastructure configuration files for correctness, security, or compliance before deployment. It helps catch errors early, improve container security posture, and ensure adherence to organizational policies.", + "limitations": "This tool does not build or deploy containers; it only validates configuration data. It requires well-formed input specifications and cannot fix detected issues automatically.", + "examples": [ + "Validate a Dockerfile for security vulnerabilities and compliance issues.", + "Check a Kubernetes YAML manifest for configuration errors and policy violations.", + "Generate a human-readable report summarizing container spec validation findings." + ] + }, + "tags": [ + "validation", + "container", + "infrastructure", + "security", + "compliance", + "kubernetes", + "docker", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"containerSpec\":\"FROM ubuntu:18.04\\nRUN apt-get update && apt-get install -y curl\\nEXPOSE 8080\",\"specFormat\":\"dockerfile\",\"validateSecurity\":true,\"validateCompliance\":true,\"strictMode\":false,\"outputFormat\":\"json\"}", + "description": "Validate a Dockerfile for security and compliance issues with JSON output." + }, + { + "inputJson": "{\"containerSpec\":\"apiVersion: v1\\nkind: Pod\\nmetadata:\\n name: test-pod\\nspec:\\n containers:\\n - name: nginx\\n image: nginx:latest\\n ports:\\n - containerPort: 80\",\"specFormat\":\"kubernetes\",\"validateSecurity\":true,\"validateCompliance\":false,\"strictMode\":true,\"outputFormat\":\"text\"}", + "description": "Validate a Kubernetes pod manifest focusing on security issues in strict mode, generating human-readable text report." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "data-validation.composeText", + "description": "This tool accepts multiple text inputs along with specified validation rules, validates each text for compliance (e.g., length, forbidden words, format), and composes a single, cleaned, and concatenated output text string that meets the specified validation criteria. It outputs the composed text and a validation report per input segment.", + "category": "data-validation", + "parameters": [ + { + "name": "texts", + "type": "array", + "description": "Array of text strings to validate and compose into a single output.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "object", + "description": "Object specifying validation rules such as minLength, maxLength, forbiddenWords, regexPatterns for each input text segment.", + "required": true, + "defaultValue": "" + }, + { + "name": "concatenationSeparator", + "type": "string", + "description": "String used to separate concatenated texts in the composed output.", + "required": false, + "defaultValue": " " + }, + { + "name": "toLowerCase", + "type": "boolean", + "description": "If true, converts all text to lowercase before validation and concatenation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "trimWhitespace", + "type": "boolean", + "description": "If true, trims leading and trailing whitespace from each input text before processing.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'composedText' which is the validated, concatenated string, and 'validationReport', an array of validation results for each input text segment indicating pass/fail and error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when given multiple text inputs that must be validated against defined quality or style criteria before assembling them into one unified text output. It helps ensure data integrity, conformity to content rules, and prepares text data for downstream processing or display.", + "limitations": "Cannot generate or correct text content beyond validation and basic formatting (e.g., not capable of grammar correction or semantic improvements). Validation is limited to the specified rules and does not infer meaning or context outside defined patterns.", + "examples": [ + "Validate an array of user-submitted comments to ensure none exceed 200 characters and contain forbidden words before composing a summary text.", + "Compose multiple validated product descriptions into a single formatted catalog entry ensuring each description meets length and style restrictions.", + "Validate and concatenate multiple code or script snippets ensuring they match required syntax patterns before deployment." + ] + }, + "tags": [ + "validation", + "text", + "concatenation", + "data-quality", + "content-processing", + "input-sanitization" + ], + "examples": [ + { + "inputJson": "{\"texts\": [\"Hello, world!\", \"This is a test.\"], \"validationRules\": {\"minLength\": 5, \"maxLength\": 50}, \"concatenationSeparator\": \" \", \"toLowerCase\": false, \"trimWhitespace\": true}", + "description": "Validate two input sentences for minimum and maximum length, then concatenate with a space." + }, + { + "inputJson": "{\"texts\": [\" ForbiddenWord should not appear.\", \"Valid text here.\"], \"validationRules\": {\"forbiddenWords\": [\"ForbiddenWord\"]}, \"concatenationSeparator\": \" - \", \"toLowerCase\": true, \"trimWhitespace\": true}", + "description": "Check texts to not contain forbidden word and convert to lowercase before joining with ' - '." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Text", + "context": null + } + }, + { + "name": "data-validation.buildService", + "description": "Builds a customizable data validation service based on provided schema definitions and validation rules. Accepts JSON schema or custom rule objects as input, processes these to generate a validation service endpoint that can be integrated into application pipelines, and outputs service configuration details and validation reports.", + "category": "data-validation", + "parameters": [ + { + "name": "schemaDefinition", + "type": "object", + "description": "JSON schema or equivalent object defining the data structure and constraints to be validated.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "array", + "description": "Array of additional custom validation rules beyond schema constraints, formatted as objects specifying field, rule type, and parameters.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "serviceName", + "type": "string", + "description": "Unique name to identify the validation service being built.", + "required": true, + "defaultValue": "" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable detailed logging of validation attempts and results.", + "required": false, + "defaultValue": "false" + }, + { + "name": "responseFormat", + "type": "string", + "description": "Format of the validation response, e.g., 'json', 'xml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "maxPayloadSize", + "type": "number", + "description": "Maximum size (in bytes) of data payloads that the service will accept for validation.", + "required": false, + "defaultValue": "1048576" + } + ], + "returns": { + "type": "object", + "description": "An object containing the configuration details of the built validation service, including endpoint URL, supported operations, and initial validation results." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create a tailored data validation service for specific datasets or applications, especially when validation schemas and rules must be dynamically defined and deployed as a service endpoint. It is useful for automating data quality assurance pipelines.", + "limitations": "This tool does not perform runtime validation on live data streams; it only builds the validation service infrastructure. It also doesn't handle schema evolution or versioning beyond initial build.", + "examples": [ + "Build a validation service to enforce schema compliance and custom rules for a sales data ingestion pipeline.", + "Create a data validation service that rejects inputs exceeding a certain payload size and logs all validation attempts.", + "Generate a JSON-response validation service named 'UserInputValidator' with specified schema and optional additional custom rules." + ] + }, + "tags": [ + "data-validation", + "service-building", + "schema-validation", + "data-quality", + "automation" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinition\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"integer\",\"minimum\":18}},\"required\":[\"name\",\"age\"]},\"validationRules\":[{\"field\":\"name\",\"ruleType\":\"regex\",\"pattern\":\"^[A-Za-z ]+$\"}],\"serviceName\":\"UserDataValidator\",\"enableLogging\":true,\"responseFormat\":\"json\",\"maxPayloadSize\":2048}", + "description": "Build a validation service named UserDataValidator to validate user data with a schema enforcing name and minimum age, including custom regex rule for name, logging enabled, JSON response, and max payload size of 2048 bytes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "data-validation.buildBranch", + "description": "This tool accepts a version control repository snapshot and a branching strategy specification to construct a logical representation of a project branch. It validates branch name conventions, applies rules for branch hierarchy and merge paths, and outputs a branch object with metadata ensuring data consistency for code integration workflows.", + "category": "data-validation", + "parameters": [ + { + "name": "repositorySnapshot", + "type": "object", + "description": "An object representing the current state of the repository, including existing branches and commits.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "The desired name for the new branch following naming conventions.", + "required": true, + "defaultValue": "" + }, + { + "name": "baseBranch", + "type": "string", + "description": "The name of the existing branch from which to create the new branch.", + "required": true, + "defaultValue": "" + }, + { + "name": "branchingStrategy", + "type": "string", + "description": "The branching strategy to enforce (e.g., 'gitflow', 'githubflow', or 'custom').", + "required": false, + "defaultValue": "gitflow" + }, + { + "name": "validateNaming", + "type": "boolean", + "description": "Whether to enforce branch naming conventions according to the strategy.", + "required": false, + "defaultValue": "true" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata to attach to the branch (e.g., author, creationDate).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed branch with validated name, base reference, strategy applied, and metadata for integration consistency." + }, + "aiAgent": { + "useCase": "Use this tool when integrating codebases or preparing new feature or release branches programmatically in CI/CD pipelines to ensure branch names and structures comply with organizational standards and branching workflows. It helps prevent invalid or inconsistent branch configurations that cause integration issues.", + "limitations": "This tool does not perform actual source code merging or repository manipulation; it constructs and validates branch metadata objects only. It relies on accurate input repository snapshots and cannot enforce downstream policy enforcement outside the input scope.", + "examples": [ + "Create a new feature branch 'feature/login' based off 'develop' following gitflow strategy.", + "Build a release branch named 'release/1.2.0' from 'develop' with metadata tags for tracking.", + "Validate and build a hotfix branch 'hotfix/urgent-fix' ensuring it matches naming policy." + ] + }, + "tags": [ + "data-validation", + "branch-management", + "version-control", + "code-quality", + "ci-cd", + "branching-strategy" + ], + "examples": [ + { + "inputJson": "{\"repositorySnapshot\":{\"branches\":[\"main\",\"develop\",\"feature/old\"],\"commits\":{}},\"branchName\":\"feature/login\",\"baseBranch\":\"develop\",\"branchingStrategy\":\"gitflow\",\"validateNaming\":true,\"metadata\":{\"author\":\"alice\",\"creationDate\":\"2024-06-01T10:00:00Z\"}}", + "description": "Create a new feature branch 'feature/login' from 'develop' validating gitflow naming conventions with metadata." + }, + { + "inputJson": "{\"repositorySnapshot\":{\"branches\":[\"main\",\"develop\"],\"commits\":{}},\"branchName\":\"release/1.2.0\",\"baseBranch\":\"develop\",\"branchingStrategy\":\"gitflow\",\"validateNaming\":true}", + "description": "Build a release branch 'release/1.2.0' from 'develop' with default gitflow strategy, no extra metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "data-validation.buildEndpoint", + "description": "Builds a data validation API endpoint specification based on provided input schema and validation rules. Accepts JSON schema defining data structure and validation constraints, processes them to generate endpoint configuration including HTTP method, URL pattern, and validation logic. Outputs a JSON object describing the endpoint specification ready for implementation or documentation.", + "category": "data-validation", + "parameters": [ + { + "name": "endpointName", + "type": "string", + "description": "Unique name identifier for the validation endpoint.", + "required": true, + "defaultValue": "" + }, + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method to use for the endpoint (e.g., POST, GET).", + "required": true, + "defaultValue": "POST" + }, + { + "name": "urlPattern", + "type": "string", + "description": "URL path pattern for the endpoint, including parameters if any.", + "required": true, + "defaultValue": "" + }, + { + "name": "jsonSchema", + "type": "object", + "description": "JSON Schema object defining the structure and validation rules for input data.", + "required": true, + "defaultValue": "" + }, + { + "name": "customValidationScripts", + "type": "array", + "description": "Optional array of custom validation scripts or expressions to enforce additional rules beyond JSON schema.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Flag to specify if the endpoint requires authentication.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the fully defined validation endpoint specification, including metadata, route, method, validation schemas, and security settings." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate API endpoint specifications focused on data validation, especially for validating JSON payloads against complex schemas. It aids in standardizing validation endpoints in backend services or API gateways by producing detailed endpoint descriptions to guide implementation or testing.", + "limitations": "This tool generates endpoint specifications but does not implement or deploy the endpoint. It cannot handle non-JSON data validation or generate executable code for server frameworks automatically.", + "examples": [ + "Build an endpoint named 'userRegistration' with POST method at '/api/register' validating user registration data.", + "Create a validation endpoint that requires authentication for updating user profile data.", + "Generate an endpoint spec with custom validation scripts to enforce cross-field dependencies in input data." + ] + }, + "tags": [ + "data-validation", + "api", + "endpoint", + "json-schema", + "validation", + "backend", + "specification" + ], + "examples": [ + { + "inputJson": "{\"endpointName\":\"createUser\",\"httpMethod\":\"POST\",\"urlPattern\":\"/users/create\",\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"username\":{\"type\":\"string\"},\"email\":{\"type\":\"string\",\"format\":\"email\"},\"age\":{\"type\":\"integer\",\"minimum\":18}},\"required\":[\"username\",\"email\"]},\"customValidationScripts\":[],\"authenticationRequired\":true}", + "description": "Generates a POST /users/create endpoint specification validating username (string), email (string email format), and optional age (integer >= 18), requiring authentication." + }, + { + "inputJson": "{\"endpointName\":\"submitOrder\",\"httpMethod\":\"POST\",\"urlPattern\":\"/orders/submit\",\"jsonSchema\":{\"type\":\"object\",\"properties\":{\"productId\":{\"type\":\"string\"},\"quantity\":{\"type\":\"integer\",\"minimum\":1}},\"required\":[\"productId\",\"quantity\"]},\"customValidationScripts\":[\"quantity <= 100\"],\"authenticationRequired\":false}", + "description": "Builds an order submission endpoint validating productId and quantity, limiting quantity to max 100 via custom script, without authentication." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "data-validation.generateLink", + "description": "Generates a validated, well-formed URL string based on input components such as base URL, path segments, and query parameters. It ensures URL safety by encoding parts and validates inputs to produce a reliable link string for use in data records or applications.", + "category": "data-validation", + "parameters": [ + { + "name": "baseUrl", + "type": "string", + "description": "The base URL or domain (e.g., 'https://example.com') which is required as the foundation for the generated link.", + "required": true, + "defaultValue": "" + }, + { + "name": "pathSegments", + "type": "array", + "description": "An array of path segments to append to the base URL (e.g., ['user', 'profile']). Each segment will be properly URL-encoded.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "queryParams", + "type": "object", + "description": "An object defining query parameters as key-value pairs to add to the URL (e.g., {id: '123', ref: 'abc'}). Keys and values are encoded automatically.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeTrailingSlash", + "type": "boolean", + "description": "Specifies whether to include a trailing slash at the end of the URL path.", + "required": false, + "defaultValue": "false" + }, + { + "name": "forceHttps", + "type": "boolean", + "description": "If true, forces the URL scheme to HTTPS regardless of the input baseUrl scheme.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Contains the finalized validated URL string under the 'url' property." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to construct or validate URLs dynamically from multiple components, ensuring correctness and encoding safety to prevent data corruption or broken links. It is ideal for preparing URLs for web calls, reports, or stored references.", + "limitations": "This tool does not perform DNS or availability checks on URLs. It only constructs and validates URL syntax, not the existence or reachability of the generated link.", + "examples": [ + "Generate a user profile URL from a base domain and path segments with query parameters.", + "Create a link for a product page ensuring HTTPS and a trailing slash.", + "Build a URL with multiple query parameters from a dictionary input." + ] + }, + "tags": [ + "url", + "validation", + "generation", + "data-quality", + "web", + "encoding" + ], + "examples": [ + { + "inputJson": "{\"baseUrl\":\"https://example.com\",\"pathSegments\":[\"user\",\"profile\"],\"queryParams\":{\"id\":\"123\",\"ref\":\"abc\"}}", + "description": "Generate a user profile URL with query parameters." + }, + { + "inputJson": "{\"baseUrl\":\"http://mywebsite.org\",\"pathSegments\":[\"product\",\"5678\"],\"includeTrailingSlash\":true,\"forceHttps\":true}", + "description": "Build a product page URL forcing HTTPS and including a trailing slash." + }, + { + "inputJson": "{\"baseUrl\":\"https://api.service.io\",\"queryParams\":{\"search\":\"test data\",\"page\":\"2\"}}", + "description": "Generate API request URL with encoded query parameters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Link", + "context": null + } + }, + { + "name": "data-validation.generateQuery", + "description": "Generates SQL or NoSQL query strings based on provided data schema and validation rules. Accepts an object describing table/collection structure and desired validation conditions; processes these to produce a query string that can be used to validate data integrity or retrieve specific data subsets according to validation criteria. Outputs a query string tailored to the specified database type.", + "category": "data-validation", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of database for which to generate the query (e.g., 'sql', 'mongodb').", + "required": true, + "defaultValue": "" + }, + { + "name": "schema", + "type": "object", + "description": "Object representing the data schema, including fields and types.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationRules", + "type": "array", + "description": "Array of validation rules or conditions to include in the query. Each rule defines field constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "logicalOperator", + "type": "string", + "description": "Logical operator to combine validation rules, either 'AND' or 'OR'.", + "required": false, + "defaultValue": "AND" + }, + { + "name": "limit", + "type": "number", + "description": "Optional limit on number of results returned by the query, applicable mostly for data retrieval queries.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string suitable for execution against the specified database." + }, + "aiAgent": { + "useCase": "Use when an AI system needs to programmatically create validation queries for datasets in SQL or NoSQL databases based on dynamic data schema and validation criteria. This is crucial for data quality checks, enforcing integrity constraints, or extracting subsets of data that meet specific validation conditions.", + "limitations": "Cannot execute queries or validate actual data; only generates query strings. Does not support complex nested or custom validation logic beyond simple field constraints. Assumes valid input schema and rules format.", + "examples": [ + "Generate a SQL query to validate that 'age' is greater than 18 and 'email' is not null.", + "Generate a MongoDB query to find documents where 'status' equals 'active' or 'score' is above 90.", + "Create a query limiting to 100 results where 'createdAt' falls within the last month." + ] + }, + "tags": [ + "data", + "validation", + "query-generation", + "sql", + "nosql", + "database", + "integrity" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"sql\",\"schema\":{\"tableName\":\"Users\",\"fields\":[{\"name\":\"age\",\"type\":\"integer\"},{\"name\":\"email\",\"type\":\"string\"}]},\"validationRules\":[{\"field\":\"age\",\"operator\":\">\",\"value\":18},{\"field\":\"email\",\"operator\":\"IS NOT NULL\"}],\"logicalOperator\":\"AND\",\"limit\":100}", + "description": "Generate a SQL query to select users older than 18 with a non-null email, limiting results to 100." + }, + { + "inputJson": "{\"databaseType\":\"mongodb\",\"schema\":{\"collectionName\":\"orders\",\"fields\":[{\"name\":\"status\",\"type\":\"string\"},{\"name\":\"total\",\"type\":\"number\"}]},\"validationRules\":[{\"field\":\"status\",\"operator\":\"=\",\"value\":\"shipped\"},{\"field\":\"total\",\"operator\":\">\",\"value\":50}],\"logicalOperator\":\"OR\"}", + "description": "Generate a MongoDB query to find orders that are either shipped or with total over 50." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "data-validation.buildModule", + "description": "Generates a customizable JavaScript validation module based on user-defined schema rules. Accepts a JSON schema defining field validations, formats, and constraints, then processes it to produce reusable validation functions that check data integrity and report validation errors.", + "category": "data-validation", + "parameters": [ + { + "name": "schemaDefinition", + "type": "object", + "description": "A JSON schema object specifying fields, their types, and validation constraints to build the module from.", + "required": true, + "defaultValue": "" + }, + { + "name": "moduleName", + "type": "string", + "description": "The desired name of the generated validation module (used for naming the exported object).", + "required": false, + "defaultValue": "validationModule" + }, + { + "name": "includeErrorMessages", + "type": "boolean", + "description": "Flag indicating if the generated module should include detailed error messages with validation results.", + "required": false, + "defaultValue": "true" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "Programming language for the generated module code; defaults to JavaScript.", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "strictMode", + "type": "boolean", + "description": "Enables strict type and constraint enforcement in the validation logic.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated module code as a string, and metadata about the generation." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically generate a validation module tailored to specific data structures and constraints. Ideal for automating data validation setup in projects where JSON schemas define input requirements.", + "limitations": "This tool generates validation modules based on the provided schema but does not execute the validation. It cannot guarantee runtime environment compatibility beyond standard JavaScript. Complex or custom validations beyond schema constraints are not supported.", + "examples": [ + "Generate a validation module for user registration data with required email and password fields.", + "Build a module validating product data with nested objects and array constraints.", + "Create a strict validation module including detailed error messages for form inputs." + ] + }, + "tags": [ + "data-validation", + "code-generation", + "javascript", + "schema", + "module-building", + "validation-module" + ], + "examples": [ + { + "inputJson": "{\"schemaDefinition\":{\"email\":{\"type\":\"string\",\"format\":\"email\",\"required\":true},\"password\":{\"type\":\"string\",\"minLength\":8,\"required\":true},\"age\":{\"type\":\"number\",\"minimum\":18}},\"moduleName\":\"userValidator\",\"includeErrorMessages\":true,\"targetLanguage\":\"JavaScript\",\"strictMode\":true}", + "description": "Generate a validation module named 'userValidator' for user signup data requiring an email, password of min length 8, and an optional minimum age of 18." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Module", + "context": null + } + }, + { + "name": "data-validation.generateArticle", + "description": "Generates a structured, quality-checked article draft based on input topic and outline. Accepts a topic string, optional outline array, and article length preference. Performs content generation and data-validation checks for coherence, grammar, and plagiarism. Outputs a text article ready for review and publication.", + "category": "data-validation", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "The main subject or theme for the article to be generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "outline", + "type": "array", + "description": "Optional array of strings defining headings or key points for organizing the article.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "wordCount", + "type": "number", + "description": "Approximate desired length of the article in words.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeReferences", + "type": "boolean", + "description": "Whether to include reference citations or sources in the article.", + "required": false, + "defaultValue": "false" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the output article text (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated article text, a summary of validation checks including grammar and coherence scores, and a flag indicating if potential plagiarism was detected." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate an article draft on a given topic that meets quality standards, including coherence, grammar, and originality, reducing manual editing effort. Especially useful for content creators, automated reporting, and documentation generation.", + "limitations": "The tool cannot guarantee absolute factual accuracy or deep expert knowledge. It may struggle with very specialized topics or highly creative writing styles. Plagiarism detection is heuristic and not definitive.", + "examples": [ + "Generate a 1200-word article on 'benefits of renewable energy', with an outline on types of renewables.", + "Create a short 500-word article about 'how to train a puppy' in English.", + "Produce an article draft in Spanish about 'history of the internet' including references." + ] + }, + "tags": [ + "generation", + "validation", + "content", + "article", + "writing", + "nlp", + "coherence", + "grammar" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"benefits of renewable energy\",\"outline\":[\"Introduction\",\"Types of renewable energy\",\"Environmental impact\",\"Economic benefits\"],\"wordCount\":1200,\"includeReferences\":true,\"language\":\"en\"}", + "description": "Generate a detailed article on renewable energy benefits with a structured outline and references." + }, + { + "inputJson": "{\"topic\":\"how to train a puppy\",\"wordCount\":500,\"language\":\"en\"}", + "description": "Generate a concise beginner's guide article on puppy training in English without an outline." + }, + { + "inputJson": "{\"topic\":\"history of the internet\",\"includeReferences\":true,\"language\":\"es\"}", + "description": "Create a spanned article draft in Spanish about the history of the internet including sources." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Article", + "context": null + } + }, + { + "name": "data-validation.createKPI", + "description": "This tool accepts parameters defining a Key Performance Indicator (KPI) such as metric name, target value(s), calculation formula, data source, and evaluation frequency. It validates the inputs for consistency and completeness, then creates a KPI definition object that can be used for monitoring and reporting performance metrics, ensuring KPI integrity and clarity.", + "category": "data-validation", + "parameters": [ + { + "name": "kpiName", + "type": "string", + "description": "The unique name identifying the KPI to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "metric", + "type": "string", + "description": "The metric or measurement the KPI tracks, e.g., 'salesRevenue' or 'customerSatisfaction'.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetValue", + "type": "number", + "description": "The target numeric value the KPI aims to achieve.", + "required": true, + "defaultValue": "" + }, + { + "name": "calculationFormula", + "type": "string", + "description": "Optional arithmetic or logical formula to calculate the KPI from raw data; if none, metric value is used as is.", + "required": false, + "defaultValue": "" + }, + { + "name": "evaluationFrequency", + "type": "string", + "description": "Frequency at which the KPI should be evaluated, e.g., 'daily', 'weekly', 'monthly'.", + "required": true, + "defaultValue": "monthly" + }, + { + "name": "dataSource", + "type": "string", + "description": "Identifier or URI of the data source where metric data is retrieved from.", + "required": true, + "defaultValue": "" + }, + { + "name": "thresholds", + "type": "object", + "description": "Optional object defining threshold values to categorize KPI results, e.g., {warning: 70, critical: 50}.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created KPI definition including validated parameters and a unique KPI identifier." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to define and validate a new KPI for analytics or monitoring systems to ensure consistency in metric definitions and target settings. It is ideal during analytics setup, dashboard configurations, or automated monitoring creation.", + "limitations": "This tool does not perform the actual metric data extraction or ongoing KPI calculation — it creates and validates only the KPI definition metadata.", + "examples": [ + "Create a KPI named 'Monthly Sales Growth' tracking 'salesRevenue' with a 10% growth target evaluated monthly.", + "Define a customer satisfaction KPI using a formula combining several survey scores with thresholds for warning and critical alerts.", + "Set up a weekly operational efficiency KPI pulling data from a specified data source without a custom calculation formula." + ] + }, + "tags": [ + "data-validation", + "KPI", + "analytics", + "monitoring", + "performance-metrics" + ], + "examples": [ + { + "inputJson": "{\"kpiName\":\"Monthly Sales Growth\",\"metric\":\"salesRevenue\",\"targetValue\":1100000,\"calculationFormula\":\"(currentMonthSales - previousMonthSales) / previousMonthSales * 100\",\"evaluationFrequency\":\"monthly\",\"dataSource\":\"salesDB\",\"thresholds\":{\"warning\":8,\"critical\":5}}", + "description": "Creating a KPI for monthly sales revenue growth with target 1,100,000 and formula for growth percentage with thresholds for alerts." + }, + { + "inputJson": "{\"kpiName\":\"Customer Satisfaction Index\",\"metric\":\"surveyScore\",\"targetValue\":85,\"calculationFormula\":\"(positiveResponses / totalResponses) * 100\",\"evaluationFrequency\":\"weekly\",\"dataSource\":\"customerFeedbackAPI\"}", + "description": "Defining a weekly KPI for customer satisfaction index based on survey scores using a positivity ratio formula." + }, + { + "inputJson": "{\"kpiName\":\"Operational Efficiency\",\"metric\":\"machineUptime\",\"targetValue\":95,\"evaluationFrequency\":\"daily\",\"dataSource\":\"iotDeviceLogs\"}", + "description": "Setting up a daily KPI to track machine uptime percentage without a custom formula, with a target of 95% uptime." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "data-validation.createDashboard", + "description": "Creates an interactive data validation dashboard that visualizes the quality metrics and validation results of datasets. Accepts multiple data validation reports and configuration settings, processes them to generate visual summaries, and outputs a dashboard object with charts, tables, and alerts to monitor data integrity and trends over time.", + "category": "data-validation", + "parameters": [ + { + "name": "validationReports", + "type": "array", + "description": "An array of data validation report objects containing results and metrics to visualize.", + "required": true, + "defaultValue": "" + }, + { + "name": "dashboardConfig", + "type": "object", + "description": "Configuration object specifying dashboard layout, metrics to display, thresholds for alerts, and visualization options.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "refreshInterval", + "type": "number", + "description": "Time interval in seconds to auto-refresh the dashboard data visualizations. Set 0 for manual refresh only.", + "required": false, + "defaultValue": "0" + }, + { + "name": "includeHistoricalData", + "type": "boolean", + "description": "Flag to include historical trends of data validation results if available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "theme", + "type": "string", + "description": "UI theme for the dashboard display, e.g., 'light' or 'dark'.", + "required": false, + "defaultValue": "light" + } + ], + "returns": { + "type": "object", + "description": "A dashboard object containing structured visual elements such as charts, tables, and alerts summarizing data validation results, ready to be rendered in a UI." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to synthesize multiple data validation outputs into a coherent visualization interface, enabling human users or automated systems to quickly assess data quality and trends across datasets. Ideal for monitoring ongoing data pipelines or validating batch data sets.", + "limitations": "This tool does not itself perform validation checks; it only visualizes existing validation results. It also does not support real-time streaming data or auto-correct data errors.", + "examples": [ + "Generate a data validation dashboard from multiple CSV and JSON validation reports", + "Create a dashboard highlighting metrics of data completeness, accuracy, and consistency with alerts on violations", + "Build a refreshable dashboard summarizing validation trends with historical data included" + ] + }, + "tags": [ + "data-validation", + "dashboard", + "visualization", + "data-quality", + "monitoring", + "analytics" + ], + "examples": [ + { + "inputJson": "{\"validationReports\":[{\"datasetName\":\"sales_data.csv\",\"metrics\":{\"completeness\":0.95,\"accuracy\":0.98},\"issues\":[{\"type\":\"missing_values\",\"count\":10}]},{\"datasetName\":\"customer_data.json\",\"metrics\":{\"completeness\":0.99,\"accuracy\":0.97},\"issues\":[]}],\"dashboardConfig\":{\"layout\":\"grid\",\"alertThresholds\":{\"completeness\":0.9,\"accuracy\":0.95}},\"refreshInterval\":300,\"includeHistoricalData\":true,\"theme\":\"dark\"}", + "description": "Create a data validation dashboard visualizing metrics and issues for sales and customer data with alerts and a dark theme, refreshing every 5 minutes and including historical validation trends." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "data-validation.createInstance", + "description": "Creates a data validation instance configured to check datasets for quality and integrity. Accepts configuration parameters defining validation rules, data schema, and error handling preferences. Returns a validation instance identifier and settings summary usable for executing validations or integrating into data pipelines.", + "category": "data-validation", + "parameters": [ + { + "name": "validationRules", + "type": "object", + "description": "An object defining the validation rules to apply, such as required fields, data types, and custom constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataSchema", + "type": "object", + "description": "The data schema to validate against, detailing expected fields, types, and formats for datasets.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceName", + "type": "string", + "description": "A human-readable name for the validation instance to identify it within the system.", + "required": false, + "defaultValue": "" + }, + { + "name": "errorHandling", + "type": "string", + "description": "Strategy for handling validation errors: 'failFast', 'collectAll', or 'logOnly'.", + "required": false, + "defaultValue": "collectAll" + }, + { + "name": "enabled", + "type": "boolean", + "description": "Flag to enable or disable the validation instance immediately upon creation.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique instance ID, name, validation rules summary, and status indicating the instance is ready for use." + }, + "aiAgent": { + "useCase": "Use this tool when needing to establish a reusable validation configuration for datasets to ensure data quality and integrity across pipelines or applications. Ideal for creating validation schemas before batch or stream data processing.", + "limitations": "Does not execute validations itself; only creates and configures validation instances. Actual validation execution requires separate tools or processes.", + "examples": [ + "Create a validation instance that enforces required fields and data types for customer records.", + "Set up an instance to check date formats and value ranges in sensor data feeds.", + "Create a validation instance that logs all errors without halting processing." + ] + }, + "tags": [ + "data-validation", + "instance-creation", + "configuration", + "data-quality", + "data-integrity" + ], + "examples": [ + { + "inputJson": "{\"validationRules\":{\"requiredFields\":[\"id\",\"email\"],\"fieldTypes\":{\"id\":\"integer\",\"email\":\"string\"}},\"dataSchema\":{\"fields\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"email\",\"type\":\"string\"}]},\"instanceName\":\"CustomerRecordValidation\",\"errorHandling\":\"collectAll\",\"enabled\":true}", + "description": "Create a validation instance named CustomerRecordValidation enforcing required id and email fields with specified data types." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Instance", + "context": null + } + }, + { + "name": "data-validation.createComment", + "description": "Creates a structured comment for data validation reports based on input parameters such as author, content, severity level, and associated data items. The tool processes the inputs to generate a standardized comment object suitable for logging, review, or further processing in validation workflows.", + "category": "data-validation", + "parameters": [ + { + "name": "author", + "type": "string", + "description": "Name or identifier of the comment author", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Text content of the comment describing the validation note or issue", + "required": true, + "defaultValue": "" + }, + { + "name": "severity", + "type": "string", + "description": "Severity level of the comment, e.g., info, warning, error", + "required": false, + "defaultValue": "info" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp for the comment creation time", + "required": false, + "defaultValue": "" + }, + { + "name": "relatedDataItems", + "type": "array", + "description": "List of identifiers for data items related to this comment", + "required": false, + "defaultValue": "[]" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags to categorize the comment for filtering and searching", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "A structured comment object including author, content, severity, timestamp, related data, and tags" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate standardized, rich comments for data validation results or logs. It is suitable for creating consistent feedback or notes linked to data items during validation workflows, enabling easier tracking and review of validation issues.", + "limitations": "This tool doesn't perform validation itself; it only creates comment objects based on input parameters. It does not analyze or interpret validation results beyond the supplied content.", + "examples": [ + "Create a warning comment by user 'ValidatorBot' about missing values in dataset columns ID and Name.", + "Generate an informational comment noting that all checks passed for data item 12345.", + "Add an error-level comment about schema mismatch detected in field 'age' with relevant tags for quick filtering." + ] + }, + "tags": [ + "data-validation", + "comment", + "logging", + "reporting", + "metadata", + "structured-data" + ], + "examples": [ + { + "inputJson": "{\"author\":\"ValidatorBot\",\"content\":\"Missing values detected in columns ID and Name.\",\"severity\":\"warning\",\"timestamp\":\"2024-06-15T14:22:00Z\",\"relatedDataItems\":[\"colID\",\"colName\"],\"tags\":[\"missing-values\",\"data-quality\"]}", + "description": "Warning comment about missing values in specific columns." + }, + { + "inputJson": "{\"author\":\"AutoValidator\",\"content\":\"All checks passed for data item 12345.\",\"severity\":\"info\",\"timestamp\":\"2024-06-15T14:25:00Z\",\"relatedDataItems\":[\"12345\"],\"tags\":[\"validation-pass\"]}", + "description": "Informational comment indicating data item passed all validations." + }, + { + "inputJson": "{\"author\":\"SchemaChecker\",\"content\":\"Schema mismatch detected in field 'age'. Expected integer, found string.\",\"severity\":\"error\",\"timestamp\":\"2024-06-15T14:30:00Z\",\"relatedDataItems\":[\"ageField\"],\"tags\":[\"schema-error\",\"critical\"]}", + "description": "Error comment about schema mismatch in a specific field." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Comment", + "context": null + } + }, + { + "name": "data-validation.createRisk", + "description": "This tool accepts structured data inputs describing potential security incidents, vulnerabilities, or threats, creates a formal risk assessment by analyzing the inputs against predefined criteria, and outputs a detailed risk object including risk level, impact assessment, and mitigation recommendations.", + "category": "data-validation", + "parameters": [ + { + "name": "incidentDetails", + "type": "object", + "description": "Structured object containing details of the incident or threat to be assessed, including type, description, and context.", + "required": true, + "defaultValue": "" + }, + { + "name": "vulnerabilityData", + "type": "object", + "description": "Optional object containing vulnerability information relevant to the risk assessment.", + "required": false, + "defaultValue": "" + }, + { + "name": "severityThreshold", + "type": "string", + "description": "The minimum severity level to consider when creating risk (e.g., 'low', 'medium', 'high').", + "required": false, + "defaultValue": "medium" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Flag indicating whether to include recommended mitigation actions in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "assessmentDate", + "type": "string", + "description": "Date string specifying when the risk assessment is performed, in ISO 8601 format.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created risk, including riskId, riskLevel (e.g., low/medium/high), impactDescription, likelihood, and recommendedMitigations if enabled." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent processes security-related data inputs describing events, vulnerabilities, or threats and needs to generate structured risk assessments automatically to support prioritization and decision-making.", + "limitations": "This tool does not perform dynamic threat detection or real-time monitoring; it relies on provided input data and predefined criteria for risk evaluation, so input data accuracy affects output quality.", + "examples": [ + "Create risk assessment for a reported software vulnerability with given severity and exploitability details.", + "Generate a risk object from a recent security incident log describing unauthorized access attempts.", + "Assess risk based on a summarized report of network threats and vulnerability status." + ] + }, + "tags": [ + "data-validation", + "security", + "risk-assessment", + "incident-analysis", + "vulnerability-management" + ], + "examples": [ + { + "inputJson": "{\"incidentDetails\":{\"type\":\"software vulnerability\",\"description\":\"Buffer overflow in module XYZ\",\"context\":\"Version 1.2.3 detected with vulnerable function\"},\"vulnerabilityData\":{\"id\":\"CVE-2024-1234\",\"severity\":\"high\",\"exploitability\":\"exploitable\"},\"severityThreshold\":\"medium\",\"includeMitigation\":true,\"assessmentDate\":\"2024-06-01T12:00:00Z\"}", + "description": "Assess risk for a software vulnerability with CVE identifier and high severity." + }, + { + "inputJson": "{\"incidentDetails\":{\"type\":\"security incident\",\"description\":\"Multiple failed login attempts detected\",\"context\":\"From external IPs over past 24 hours\"},\"severityThreshold\":\"low\",\"includeMitigation\":false}", + "description": "Create risk assessment for repeated unauthorized access attempts, excluding mitigation recommendations." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "data-validation.createVideo", + "description": "This tool accepts raw video media data or video metadata inputs and validates them against specified quality and integrity criteria. It processes video files or their attributes, checking for resolution, format compliance, frame rate consistency, and presence of corruption. The output is a detailed validation report indicating passed checks, warnings, and errors to assure video data quality for further processing or distribution.", + "category": "data-validation", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "File path or URL of the video file to validate, supports common formats (e.g., mp4, avi, mov).", + "required": true, + "defaultValue": "" + }, + { + "name": "expectedFormat", + "type": "string", + "description": "Expected video codec or container format to verify compatibility (e.g., 'mp4', 'h264').", + "required": false, + "defaultValue": "" + }, + { + "name": "minResolutionWidth", + "type": "number", + "description": "Minimum acceptable horizontal resolution (width in pixels) for video validation.", + "required": false, + "defaultValue": "0" + }, + { + "name": "minResolutionHeight", + "type": "number", + "description": "Minimum acceptable vertical resolution (height in pixels) for video validation.", + "required": false, + "defaultValue": "0" + }, + { + "name": "minFrameRate", + "type": "number", + "description": "Minimum acceptable frame rate (frames per second) for the video.", + "required": false, + "defaultValue": "0" + }, + { + "name": "maxFileSizeMB", + "type": "number", + "description": "Maximum allowed video file size in megabytes to ensure data constraints.", + "required": false, + "defaultValue": "0" + }, + { + "name": "checkCorruption", + "type": "boolean", + "description": "Whether to scan the video file for corruption or decoding errors.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing a validation summary including status, passed checks, warnings, and errors found in the video data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to verify if a given video asset meets predetermined quality and format requirements before ingestion, distribution, or processing. It's particularly useful in video content pipelines to ensure data integrity and compatibility.", + "limitations": "This tool does not perform video content analysis such as scene detection or object recognition. It cannot repair corrupted videos, only detect integrity issues. Does not support live streaming validation or network-based video streams.", + "examples": [ + "Validate a video file path to confirm it is an mp4 of at least 1920x1080 resolution and 30fps frame rate.", + "Check if a given video file is corrupted and meets a maximum file size constraint.", + "Verify that a video file follows an expected codec and format before encoding workflows." + ] + }, + "tags": [ + "validation", + "video", + "media", + "quality assurance", + "integrity check", + "format compliance" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/sample.mp4\",\"expectedFormat\":\"mp4\",\"minResolutionWidth\":1920,\"minResolutionHeight\":1080,\"minFrameRate\":30,\"checkCorruption\":true}", + "description": "Validate an mp4 video file is Full HD or better at 30fps and is not corrupted." + }, + { + "inputJson": "{\"videoFilePath\":\"https://example.com/media/video.avi\",\"expectedFormat\":\"avi\",\"maxFileSizeMB\":500,\"checkCorruption\":true}", + "description": "Check an avi video from a URL ensuring it is under 500MB and free of corruption." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Video", + "context": null + } + }, + { + "name": "data-validation.createTable", + "description": "This tool accepts a dataset schema definition and optional row data, then creates a standardized table structure with built-in validation rules. It processes input specifying column names, types, and constraints to generate a data table ready for validating data integrity or further processing. The output is a table object with columns, data rows, and validation methods.", + "category": "data-validation", + "parameters": [ + { + "name": "schema", + "type": "array", + "description": "An array of column definitions, each specifying name, type, and optional constraints (e.g., required, unique).", + "required": true, + "defaultValue": "" + }, + { + "name": "rows", + "type": "array", + "description": "Optional array of data rows to initialize the table with, matching the schema specified.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "allowEmpty", + "type": "boolean", + "description": "Specifies whether empty tables (with no rows) are allowed. Defaults to true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateOnInsert", + "type": "boolean", + "description": "If true, new rows added will be validated against the schema constraints automatically.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created table, including schema, data rows, and validation functions to check data integrity." + }, + "aiAgent": { + "useCase": "Use this tool to construct a validated table structure from given schema and optional data. It's useful when an agent needs to enforce data quality rules, prepare data for further validation, or create a consistent data model from input schemas.", + "limitations": "This tool does not perform data transformation or cleaning beyond enforcing schema constraints. It assumes schema correctness and does not infer schemas from data.", + "examples": [ + "Create a table with columns 'id' (number, required) and 'email' (string, unique) with initial rows.", + "Create an empty table with specified schema for future data insertion validation.", + "Create a table without allowing empty datasets, enforcing immediate population of data." + ] + }, + "tags": [ + "data-validation", + "table", + "schema", + "data-quality", + "create", + "structure" + ], + "examples": [ + { + "inputJson": "{\"schema\":[{\"name\":\"id\",\"type\":\"number\",\"constraints\":{\"required\":true}},{\"name\":\"email\",\"type\":\"string\",\"constraints\":{\"unique\":true}}],\"rows\":[{\"id\":1,\"email\":\"a@example.com\"},{\"id\":2,\"email\":\"b@example.com\"}]}", + "description": "Create a table with 2 columns (id and email), both with constraints, and initialize with 2 data rows." + }, + { + "inputJson": "{\"schema\":[{\"name\":\"username\",\"type\":\"string\",\"constraints\":{\"required\":true}},{\"name\":\"age\",\"type\":\"number\"}],\"allowEmpty\":false}", + "description": "Create a table schema requiring no empty rows, with username required and optional age." + }, + { + "inputJson": "{\"schema\":[{\"name\":\"productId\",\"type\":\"string\",\"constraints\":{\"required\":true}},{\"name\":\"price\",\"type\":\"number\"}],\"validateOnInsert\":true}", + "description": "Create a table with productId required; validating data automatically on row insertions." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Table", + "context": null + } + }, + { + "name": "data-validation.createQuery", + "description": "This tool generates a structured query object or string based on user-defined data validation criteria. It accepts input parameters that define validation rules such as field names, expected data types, value ranges, and conditional logic. The tool processes these inputs to construct a query used to validate datasets or database entries, facilitating automated quality checks. Output is a query string or object compatible with validation engines or query processors.", + "category": "data-validation", + "parameters": [ + { + "name": "fields", + "type": "array", + "description": "An array of objects each specifying a field name and associated validation rules to include in the query, e.g., data types, required status, and constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "logicalOperator", + "type": "string", + "description": "The logical operator (e.g., AND, OR) that connects individual field validation conditions in the query.", + "required": false, + "defaultValue": "AND" + }, + { + "name": "queryFormat", + "type": "string", + "description": "The format of the output query, such as 'SQL', 'MongoDB', or 'CustomObject'. Determines the style and syntax of the generated query.", + "required": false, + "defaultValue": "CustomObject" + }, + { + "name": "includeNullChecks", + "type": "boolean", + "description": "If true, the generated query includes checks for null or missing values for each field as part of validation.", + "required": false, + "defaultValue": "true" + }, + { + "name": "caseSensitive", + "type": "boolean", + "description": "Specifies whether string comparisons in the query should be case sensitive.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query as a string or structured object, ready to be used by data validation systems or query processors. Includes metadata about the query format and fields included." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create precise validation queries based on complex criteria for automated data quality checks or integrity verification in databases or data processing workflows. It helps bridge human-readable rules into executable query representations.", + "limitations": "This tool does not execute the queries or validate data itself; it only constructs validation query structures. It requires well-defined input parameters and does not handle ambiguous or incomplete validation criteria.", + "examples": [ + "Create a validation query checking if 'age' is an integer between 0 and 120 and 'email' matches an email regex pattern.", + "Generate a MongoDB query object to validate that 'status' is either 'active' or 'pending' and 'lastLogin' is not null.", + "Produce an SQL WHERE clause string validating that 'price' is a positive number and 'category' is not null." + ] + }, + "tags": [ + "data-validation", + "query-generation", + "rules", + "automated-checks", + "database", + "integrity", + "quality" + ], + "examples": [ + { + "inputJson": "{\"fields\":[{\"name\":\"age\",\"type\":\"number\",\"min\":0,\"max\":120},{\"name\":\"email\",\"type\":\"string\",\"pattern\":\"^[\\\\w.-]+@[\\\\w.-]+\\\\.[a-z]{2,}$\"}],\"logicalOperator\":\"AND\",\"queryFormat\":\"SQL\",\"includeNullChecks\":true,\"caseSensitive\":false}", + "description": "Generate an SQL WHERE clause validating 'age' is between 0 and 120 and 'email' matches the given regex, including null checks for both fields." + }, + { + "inputJson": "{\"fields\":[{\"name\":\"status\",\"type\":\"string\",\"allowedValues\":[\"active\",\"pending\"]},{\"name\":\"lastLogin\",\"type\":\"date\"}],\"logicalOperator\":\"AND\",\"queryFormat\":\"MongoDB\",\"includeNullChecks\":true,\"caseSensitive\":true}", + "description": "Generate a MongoDB query object validating 'status' is either 'active' or 'pending' and 'lastLogin' is not null, with case-sensitive string comparison." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "etl-processes.buildInstance", + "description": "This tool builds a new ETL processing instance given specific configuration inputs. It accepts configuration parameters such as source data endpoint, transformation rules, destination storage details, and runtime environment settings. The tool processes these inputs to create and initialize an ETL instance ready to execute data extraction, transformation, and loading tasks. It outputs a confirmation with instance ID, status, and configuration summary.", + "category": "etl-processes", + "parameters": [ + { + "name": "instanceName", + "type": "string", + "description": "Unique name for the ETL instance to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceConfig", + "type": "object", + "description": "Configuration object defining the data source parameters (type, connection details, authentication).", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationRules", + "type": "array", + "description": "An array of transformation rule objects defining how to process and transform source data.", + "required": true, + "defaultValue": "" + }, + { + "name": "destinationConfig", + "type": "object", + "description": "Configuration object defining where and how transformed data is stored (e.g., database connection info).", + "required": true, + "defaultValue": "" + }, + { + "name": "runtimeSettings", + "type": "object", + "description": "Optional runtime parameters such as scheduling, retries, and resource limits for the ETL instance.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "enableLogging", + "type": "boolean", + "description": "Flag to enable or disable detailed logging for the ETL instance.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the instance ID, current status, and a summary of the configured parameters confirming successful creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create and configure a new ETL processing instance, specifying data source, transformation logic, and destination storage for automated data workflows. It is useful for initializing ETL pipelines before execution or deployment.", + "limitations": "This tool does not execute or monitor the ETL process; it only creates and configures the instance. It also cannot validate source data quality or dynamically adjust configurations post-creation.", + "examples": [ + "Create a new ETL instance that extracts sales data from a REST API, applies currency conversion transformations, and loads it into a SQL warehouse.", + "Build an ETL instance connecting to a file-based source, applying cleansing rules, and storing results in cloud object storage with logging enabled." + ] + }, + "tags": [ + "etl", + "build", + "instance", + "data-integration", + "automation", + "pipeline", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"instanceName\":\"salesDataPipeline\",\"sourceConfig\":{\"type\":\"api\",\"endpoint\":\"https://api.example.com/sales\",\"authToken\":\"abcdef12345\"},\"transformationRules\":[{\"type\":\"currencyConversion\",\"from\":\"USD\",\"to\":\"EUR\",\"rate\":0.85}],\"destinationConfig\":{\"type\":\"sql\",\"host\":\"db.example.com\",\"database\":\"analytics\",\"user\":\"etl_user\",\"password\":\"secret\"},\"runtimeSettings\":{\"schedule\":\"0 2 * * *\",\"maxRetries\":3},\"enableLogging\":true}", + "description": "Create an ETL instance for daily sales data extraction from API with currency conversion and load into SQL database with logging enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Instance", + "context": null + } + }, + { + "name": "data-validation.createVariable", + "description": "Creates a variable definition specification used in data validation and transformation workflows. Accepts the variable name, type, optional default value, and validation constraints. Processes these inputs to produce a structured variable definition object that can be used for consistent data validation rules enforcement.", + "category": "data-validation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique identifier name for the variable to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "The data type of the variable (e.g., string, number, boolean, date).", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Optional default value assigned to the variable if no value is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "required", + "type": "boolean", + "description": "Indicates whether the variable must have a value (true) or can be optional (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "validationRules", + "type": "object", + "description": "An object specifying validation constraints such as min, max, regex pattern, allowed values.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created variable definition including name, type, default value, requirement status, and validation rules." + }, + "aiAgent": { + "useCase": "Use this tool when constructing or augmenting data validation schemas or configurations that require a precise specification of data variables. It helps standardize variable definitions to ensure consistent validation and data integrity across systems.", + "limitations": "This tool does not perform actual data validation or data transformation; it only creates variable definition specifications for use in validation processes.", + "examples": [ + "Define a required numeric variable 'age' with min=0 and max=120.", + "Create an optional string variable 'email' with regex to match email format.", + "Generate a boolean variable 'isActive' with default value true." + ] + }, + "tags": [ + "data-validation", + "variable-definition", + "schema", + "validation-rules", + "data-quality", + "configuration" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"age\",\"variableType\":\"number\",\"defaultValue\":\"\",\"required\":true,\"validationRules\":{\"min\":0,\"max\":120}}", + "description": "Create a required numeric variable 'age' with min 0 and max 120." + }, + { + "inputJson": "{\"variableName\":\"email\",\"variableType\":\"string\",\"defaultValue\":\"\",\"required\":false,\"validationRules\":{\"pattern\":\"^[\\\\w.-]+@[\\\\w.-]+\\\\.[a-zA-Z]{2,6}$\"}}", + "description": "Create an optional string variable 'email' validated by regex pattern for email format." + }, + { + "inputJson": "{\"variableName\":\"isActive\",\"variableType\":\"boolean\",\"defaultValue\":\"true\",\"required\":false,\"validationRules\":{}}", + "description": "Create an optional boolean variable 'isActive' with default value true." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "data-validation.createComponent", + "description": "Creates a reusable data validation component based on a defined validation schema. Accepts a JSON schema defining validation rules for data fields, processes it to generate a validation function component that can be integrated into applications, and outputs the component code as a string for use in data validation workflows.", + "category": "data-validation", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "The name to assign to the generated validation component.", + "required": true, + "defaultValue": "" + }, + { + "name": "validationSchema", + "type": "object", + "description": "A JSON schema object defining the validation rules and constraints for the data fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Target programming language for the component code, e.g., 'JavaScript', 'TypeScript'.", + "required": false, + "defaultValue": "\"JavaScript\"" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include explanatory comments in the generated component code.", + "required": false, + "defaultValue": "true" + }, + { + "name": "exportType", + "type": "string", + "description": "The export style for the component code, e.g., 'default' or 'named'.", + "required": false, + "defaultValue": "\"default\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated component code as a string and metadata about the generated component." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a standardized, reusable component for validating data against a specific schema. This is useful in scenarios where applications require consistent data validation logic encapsulated in a component for maintainability, reusability, and integration into codebases automatically or by developers.", + "limitations": "This tool generates component code based on provided schemas but does not execute validation nor test the generated code's runtime behavior. It assumes valid JSON schemas and a supported target language.", + "examples": [ + "Generate a JavaScript validation component named 'UserValidator' based on a JSON schema defining user data requirements.", + "Create a TypeScript data validation component with explanatory comments included, using a provided field validation schema.", + "Produce a named export React validation component for form data checking from the given validation rules." + ] + }, + "tags": [ + "data-validation", + "component-generation", + "schema-validation", + "code-generation", + "javascript", + "typescript" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"UserValidator\",\"validationSchema\":{\"type\":\"object\",\"properties\":{\"username\":{\"type\":\"string\",\"minLength\":3},\"email\":{\"type\":\"string\",\"format\":\"email\"}},\"required\":[\"username\",\"email\"]},\"language\":\"JavaScript\",\"includeComments\":true,\"exportType\":\"default\"}", + "description": "Generate a JavaScript default-export component named 'UserValidator' with comments from a JSON schema validating username and email." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Component", + "context": null + } + }, + { + "name": "etl-processes.analyzeSession", + "description": "Analyzes session data by processing input session logs or data objects to extract insights such as user behavior patterns, session durations, event frequencies, and funnel conversion metrics. It accepts raw session records or structured session data, performs aggregation and statistical analysis, and outputs a comprehensive report including key session metrics and visual summaries.", + "category": "etl-processes", + "parameters": [ + { + "name": "sessionData", + "type": "array", + "description": "Array of session event objects or records representing user sessions to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeFrame", + "type": "object", + "description": "Optional time frame filter with 'start' and 'end' ISO 8601 date strings to limit sessions analyzed.", + "required": false, + "defaultValue": "" + }, + { + "name": "aggregationLevel", + "type": "string", + "description": "Granularity of analysis: 'session', 'user', or 'event' level aggregation.", + "required": false, + "defaultValue": "session" + }, + { + "name": "includeFunnels", + "type": "boolean", + "description": "Whether to perform funnel analysis to measure conversion rates through defined steps.", + "required": false, + "defaultValue": "false" + }, + { + "name": "funnelSteps", + "type": "array", + "description": "Array of event names defining the funnel steps to analyze, required if includeFunnels is true.", + "required": false, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of custom session metrics to compute, e.g., ['averageDuration', 'bounceRate'].", + "required": false, + "defaultValue": "['averageDuration','sessionCount','bounceRate']" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated session metrics, analysis summaries, funnel conversion data (if requested), and optional visual data representations such as charts or graphs data." + }, + "aiAgent": { + "useCase": "Use this tool when you need to analyze raw or semi-structured session data to extract meaningful user behavior information, identify engagement patterns, and assess session quality or conversion funnels. It is particularly useful for converting log data into actionable analytics and business insights.", + "limitations": "Does not capture real-time streaming session data or integrate directly with live telemetry sources. Requires session data to be pre-collected and passed in compatible format. Does not perform advanced predictive modeling or user segmentation beyond provided metrics.", + "examples": [ + "Analyze session logs from the past week to understand user engagement and average session length.", + "Calculate funnel conversion rates for a series of predefined steps in the user session data.", + "Generate a report with key session metrics focusing on bounce rate and session counts for a specific time period." + ] + }, + "tags": [ + "session", + "analysis", + "etl", + "analytics", + "user-behavior", + "conversion", + "funnels" + ], + "examples": [ + { + "inputJson": "{\"sessionData\":[{\"sessionId\":\"s1\",\"userId\":\"u1\",\"events\":[{\"name\":\"pageView\",\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"name\":\"purchase\",\"timestamp\":\"2024-05-01T10:05:00Z\"}],\"startTime\":\"2024-05-01T10:00:00Z\",\"endTime\":\"2024-05-01T10:05:00Z\"}],\"timeFrame\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-07T23:59:59Z\"},\"aggregationLevel\":\"session\",\"includeFunnels\":true,\"funnelSteps\":[\"pageView\",\"purchase\"],\"metrics\":[\"averageDuration\",\"bounceRate\"]}", + "description": "Analyze a week's worth of session data to extract average session duration and funnel conversion from page views to purchases." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Session", + "context": null + } + }, + { + "name": "etl-processes.analyzeTrend", + "description": "This tool accepts time series data or ordered event data as input along with configurable parameters for trend analysis methods such as moving averages or linear regression. It processes the data to detect and quantify underlying trends over specified time intervals, outputting metrics like trend direction, slope, strength, and confidence intervals, aiding sequential data analysis.", + "category": "etl-processes", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of data points representing the time series or ordered metric values to analyze, typically objects with timestamp and value properties.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeField", + "type": "string", + "description": "Name of the field in data objects that contains the timestamp or ordinal indicator for sequencing the data points.", + "required": true, + "defaultValue": "timestamp" + }, + { + "name": "valueField", + "type": "string", + "description": "Name of the field in data objects that contains the numerical value to analyze for trends.", + "required": true, + "defaultValue": "value" + }, + { + "name": "method", + "type": "string", + "description": "The trend analysis method to apply. Supported options include 'linearRegression', 'movingAverage', and 'exponentialSmoothing'.", + "required": false, + "defaultValue": "linearRegression" + }, + { + "name": "windowSize", + "type": "number", + "description": "For moving average or smoothing methods, the size of the window (number of points) to consider for calculations.", + "required": false, + "defaultValue": "5" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Confidence level (between 0 and 1) used when calculating trend confidence intervals, if applicable.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "returnRawData", + "type": "boolean", + "description": "If true, includes the processed intermediate data points in the output for detailed inspection.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the overall trend analysis results including detected trend direction ('up','down','none'), slope value, confidence intervals, and optionally processed data points." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and quantify trends from ordered numerical data, such as sales over time, website traffic, or sensor readings, to support business intelligence or operational decision making. It helps identify whether data shows increasing, decreasing, or stable trends and the strength and confidence of such trends.", + "limitations": "This tool analyzes linear or smoothing-based trends and does not detect seasonal patterns, cyclical effects, or perform complex forecasting. It requires clean, regularly ordered input data and does not impute missing values automatically.", + "examples": [ + "Analyze sales figures over the last year to determine if revenue is trending upward or downward.", + "Detect trends in daily active users from website traffic data using a moving average method.", + "Evaluate whether sensor measurements are showing any consistent increase or decrease over the past month with confidence estimates." + ] + }, + "tags": [ + "etl", + "trend-analysis", + "time-series", + "analytics", + "data-processing", + "linear-regression", + "moving-average" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2023-01-01\",\"value\":120},{\"timestamp\":\"2023-01-02\",\"value\":130},{\"timestamp\":\"2023-01-03\",\"value\":128},{\"timestamp\":\"2023-01-04\",\"value\":135},{\"timestamp\":\"2023-01-05\",\"value\":140}],\"timeField\":\"timestamp\",\"valueField\":\"value\",\"method\":\"linearRegression\",\"confidenceLevel\":0.95}", + "description": "Analyze a small set of daily sales data using linear regression to identify overall trend and confidence." + }, + { + "inputJson": "{\"data\":[{\"date\":\"2023-06-01\",\"value\":200},{\"date\":\"2023-06-02\",\"value\":195},{\"date\":\"2023-06-03\",\"value\":190},{\"date\":\"2023-06-04\",\"value\":185},{\"date\":\"2023-06-05\",\"value\":180}],\"timeField\":\"date\",\"valueField\":\"value\",\"method\":\"movingAverage\",\"windowSize\":3,\"returnRawData\":true}", + "description": "Apply moving average smoothing on sales decline data over 5 days, returning intermediate processed points." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Trend", + "context": null + } + }, + { + "name": "etl-processes.analyzeReply", + "description": "Analyzes reply messages or responses in a data pipeline context by extracting key information such as sentiment, intent, keyword presence, and response time. Input includes the reply text and optional metadata. Output is a structured analysis report encapsulating these insights for further processing or reporting.", + "category": "etl-processes", + "parameters": [ + { + "name": "replyText", + "type": "string", + "description": "The text content of the reply or message to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata associated with the reply, such as timestamp, sender, or channel info.", + "required": false, + "defaultValue": "" + }, + { + "name": "analyzeSentiment", + "type": "boolean", + "description": "Indicates whether to perform sentiment analysis on the reply text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractKeywords", + "type": "boolean", + "description": "Determines if keywords should be extracted from the reply text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectIntent", + "type": "boolean", + "description": "Enables intent detection based on the reply content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "responseTimestamp", + "type": "string", + "description": "ISO 8601 timestamp string indicating when the reply was sent, used to compute response time if requestTimestamp is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "requestTimestamp", + "type": "string", + "description": "ISO 8601 timestamp string of the original request or prompt to calculate response latency.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing sentiment score, recognized intent, keywords found, response time in seconds, and any metadata processed." + }, + "aiAgent": { + "useCase": "Use this tool to analyze text reply messages during ETL processes to extract communication insights such as sentiment polarity, intent classification, keywords for categorization, and timing metrics like response delays. Ideal for pipelines handling communication logs or customer feedback aggregation.", + "limitations": "This tool does not generate reply content or perform deep contextual understanding beyond basic NLP-level analysis. It requires textual input and cannot process multimedia replies or non-text formats.", + "examples": [ + "Analyze a customer support reply to extract sentiment and intent to prioritize follow-up.", + "Extract keywords and measure response times from automated email replies to improve workflow efficiency.", + "Process chat reply logs with metadata to generate analytics for communication patterns." + ] + }, + "tags": [ + "analysis", + "reply", + "communication", + "sentiment-analysis", + "intent-detection", + "keyword-extraction", + "response-time", + "etl-process" + ], + "examples": [ + { + "inputJson": "{\"replyText\":\"Thank you for your quick response, the solution works perfectly!\",\"metadata\":{\"sender\":\"user123\",\"channel\":\"email\"},\"analyzeSentiment\":true,\"extractKeywords\":true,\"detectIntent\":true,\"responseTimestamp\":\"2024-05-10T14:35:00Z\",\"requestTimestamp\":\"2024-05-10T14:30:00Z\"}", + "description": "Analyze a thank-you reply email including sentiment, keyword extraction, and response time calculation." + }, + { + "inputJson": "{\"replyText\":\"Can you please provide the invoice by the end of the day?\",\"analyzeSentiment\":true,\"extractKeywords\":true,\"detectIntent\":true}", + "description": "Analyze a request reply message for intent and important keywords." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Reply", + "context": null + } + }, + { + "name": "etl-processes.analyzeIncident", + "description": "This tool accepts structured security incident data as input, processes it to identify key patterns, root causes, impacted systems, and timelines, and outputs a comprehensive incident analysis report. It helps security teams understand the incident scope and recommend mitigation steps.", + "category": "etl-processes", + "parameters": [ + { + "name": "incidentData", + "type": "object", + "description": "Structured data describing the security incident, including logs, alerts, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRootCauseAnalysis", + "type": "boolean", + "description": "Whether to perform a detailed root cause analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeWindowHours", + "type": "number", + "description": "The time window in hours around the incident timestamp to analyze logs and events.", + "required": false, + "defaultValue": "24" + }, + { + "name": "severityFilter", + "type": "string", + "description": "Filter events by severity level (e.g., low, medium, high).", + "required": false, + "defaultValue": "high" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired format of the analysis report (e.g., json, text, markdown).", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing identified patterns, root causes, affected assets, timeline summary, and recommended mitigation actions." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to analyze raw or preprocessed security incident data to derive actionable insights such as root cause, attack vectors, impacted systems, and recommended mitigation steps. It's ideal for automated incident response or forensic investigations.", + "limitations": "This tool cannot replace human expert judgment and cannot analyze incidents without structured data inputs. It does not perform real-time monitoring or detection, only post-incident analysis.", + "examples": [ + "Analyze a security breach incident to identify root cause and affected systems.", + "Generate a detailed report from firewall and IDS alerts surrounding an incident.", + "Filter and summarize only high severity events during analysis." + ] + }, + "tags": [ + "etl", + "security", + "incident analysis", + "root cause", + "forensics", + "post-incident", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"incidentData\":{\"alerts\":[{\"timestamp\":\"2024-06-01T10:15:30Z\",\"severity\":\"high\",\"description\":\"Unauthorized access attempt detected on server 12.\"},{\"timestamp\":\"2024-06-01T10:16:00Z\",\"severity\":\"medium\",\"description\":\"Suspicious login from IP 192.168.1.50.\"}],\"metadata\":{\"incidentId\":\"INC123456\",\"detectedAt\":\"2024-06-01T10:15:00Z\",\"affectedSystems\":[\"server12\"]}},\"includeRootCauseAnalysis\":true,\"timeWindowHours\":12,\"severityFilter\":\"high\",\"outputFormat\":\"json\"}", + "description": "Analyze a high severity security incident with alerts and metadata, focusing on 12 hours surrounding the detected breach, including root cause analysis, output as JSON." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Incident", + "context": null + } + }, + { + "name": "etl-processes.analyzeThread", + "description": "Analyzes a communication thread extracted from messaging platforms or forums by examining message content, participants, and timestamps to produce insights such as sentiment trends, active users, message frequency, and topic summaries. Accepts JSON-formatted thread data as input and outputs a structured analysis report.", + "category": "etl-processes", + "parameters": [ + { + "name": "threadData", + "type": "object", + "description": "A JSON object representing the communication thread, including messages, participants, and metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRangeStart", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying the start of the time range to analyze within the thread.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeRangeEnd", + "type": "string", + "description": "Optional ISO 8601 timestamp specifying the end of the time range to analyze within the thread.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on message contents to identify tone and mood of the thread.", + "required": false, + "defaultValue": "true" + }, + { + "name": "topNParticipants", + "type": "number", + "description": "Number of top active participants to include in the summary by message count.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object summarizing the thread, including message counts, active participants, sentiment scores over time, topic keywords, and time-based message distribution." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract meaningful insights from a communication thread, such as identifying key participants, sentiment changes, or activity spikes within a specified timeframe. Ideal for analyzing conversations from chat logs, email threads, or forum discussions to support monitoring, summarization, or trend detection.", + "limitations": "This tool cannot replace detailed discourse analysis or understand context beyond textual content. It does not perform language translation or deep semantic interpretation beyond keyword/topic extraction and sentiment scoring.", + "examples": [ + "Analyze the last month's conversation in this Slack channel thread for sentiment and activity trends.", + "Summarize the top contributors and message frequency in this forum thread between two dates.", + "Perform sentiment analysis and list key topics from this email chain thread." + ] + }, + "tags": [ + "etl", + "analysis", + "thread", + "communication", + "sentiment", + "participants", + "timing" + ], + "examples": [ + { + "inputJson": "{\"threadData\":{\"messages\":[{\"id\":\"m1\",\"sender\":\"alice\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"content\":\"Looking forward to the project kickoff.\"},{\"id\":\"m2\",\"sender\":\"bob\",\"timestamp\":\"2024-05-01T10:05:00Z\",\"content\":\"Me too, it's exciting!\"},{\"id\":\"m3\",\"sender\":\"alice\",\"timestamp\":\"2024-05-01T11:00:00Z\",\"content\":\"Let's make sure to finalize the specs.\"}],\"participants\":[\"alice\",\"bob\"]},\"timeRangeStart\":\"2024-05-01T00:00:00Z\",\"timeRangeEnd\":\"2024-05-02T00:00:00Z\",\"includeSentimentAnalysis\":true,\"topNParticipants\":2}", + "description": "Analyze a short conversation thread between two participants over one day, including sentiment analysis and participant ranking." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "etl-processes.analyzeThreat", + "description": "Analyzes raw threat intelligence data inputs by extracting key indicators, categorizing threat types, assessing severity levels, and generating a structured report summarizing potential risks and mitigation suggestions. Accepts threat data as JSON or text logs and outputs a detailed threat analysis object.", + "category": "etl-processes", + "parameters": [ + { + "name": "threatData", + "type": "string", + "description": "Raw threat intelligence data as JSON string or unstructured text for analysis", + "required": true, + "defaultValue": "" + }, + { + "name": "dataFormat", + "type": "string", + "description": "Format of input threat data, e.g., 'json', 'text'", + "required": true, + "defaultValue": "json" + }, + { + "name": "threatCategories", + "type": "array", + "description": "List of threat categories to focus the analysis on, e.g., ['malware','phishing']", + "required": false, + "defaultValue": "[]" + }, + { + "name": "severityThreshold", + "type": "number", + "description": "Minimum severity level (1-10) to include in the analysis output", + "required": false, + "defaultValue": "1" + }, + { + "name": "includeMitigation", + "type": "boolean", + "description": "Whether to include recommended mitigation actions in the output", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing structured analysis including identified indicators, threat categories, severity scores, confidence levels, and optional mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when provided with raw or semi-structured threat intelligence data that needs to be analyzed for security threat detection, classification, and severity assessment to aid decision making in security operations or incident response.", + "limitations": "This tool does not perform real-time threat detection or network scanning; it only analyzes provided static or historical threat intelligence data. It cannot access external threat feeds or update automatically.", + "examples": [ + "Analyze a JSON array of malware samples to assess their threat severity and obtain mitigation steps.", + "Process unstructured phishing email logs to identify common indicators and categorize threat types.", + "Filter threat intelligence focusing only on ransomware threats above a certain severity threshold with mitigation advice." + ] + }, + "tags": [ + "threat analysis", + "etl", + "security", + "cybersecurity", + "data transformation", + "threat intelligence", + "risk assessment" + ], + "examples": [ + { + "inputJson": "{\"threatData\":\"[{\\\"indicator\\\":\\\"192.168.0.10\\\", \\\"type\\\":\\\"ip\\\", \\\"category\\\":\\\"malware\\\", \\\"severity\\\":7}]\",\"dataFormat\":\"json\",\"severityThreshold\":5,\"includeMitigation\":true}", + "description": "Analyze JSON input of malware IP indicators with severity threshold 5 and include mitigation" + }, + { + "inputJson": "{\"threatData\":\"Suspicious email headers indicating possible phishing attempt from domain fakebank.com\",\"dataFormat\":\"text\",\"threatCategories\":[\"phishing\"],\"includeMitigation\":true}", + "description": "Analyze unstructured text log focusing on phishing threat category including mitigation" + }, + { + "inputJson": "{\"threatData\":\"[{\\\"indicator\\\":\\\"ransomfile.exe\\\", \\\"type\\\":\\\"file\\\", \\\"category\\\":\\\"ransomware\\\", \\\"severity\\\":9}]\",\"dataFormat\":\"json\",\"threatCategories\":[\"ransomware\"],\"severityThreshold\":8,\"includeMitigation\":false}", + "description": "Analyze JSON input filtering for ransomware with severity above 8 and no mitigation recommendations" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Threat", + "context": null + } + }, + { + "name": "etl-processes.analyzeHTML", + "description": "Analyzes raw HTML content or URLs by extracting and summarizing its structure, metadata, text content, and links. Accepts HTML string or webpage URL as input, parses the document DOM, and returns a comprehensive analysis including metadata tags, headings hierarchy, link references, text summary, and basic statistics on elements.", + "category": "etl-processes", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content to analyze. Optional if url is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "url", + "type": "string", + "description": "URL of the webpage to fetch and analyze. Optional if htmlContent is provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTextSummary", + "type": "boolean", + "description": "Whether to generate a text summary from the main content of the HTML.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum number of words in the generated text summary. Ignored if includeTextSummary is false.", + "required": false, + "defaultValue": "150" + }, + { + "name": "extractMetadata", + "type": "boolean", + "description": "Whether to extract metadata tags like title, description, keywords, and open graph info.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "Whether to extract all href links from the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractHeadings", + "type": "boolean", + "description": "Whether to extract the hierarchical structure of headings (h1-h6).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing metadata (title, description, keywords, open graph), list of links, headings hierarchy, a text summary string if requested, and basic element counts (paragraphs, images, scripts)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to quickly analyze and summarize the structure and content of HTML documents or webpages for data extraction, content auditing, SEO analysis, or web scraping preprocessing. Ideal when given either raw HTML or a URL to analyze page metadata, headings, links, and textual content.", + "limitations": "Does not execute JavaScript, so dynamically loaded content might be missing. Cannot interact with interactive or multimedia web features. Summary is basic and not deeply semantic. Requires valid HTML or reachable URLs.", + "examples": [ + "Analyze the metadata, headings, and links of a marketing webpage for SEO keywords.", + "Extract and summarize main textual content and links from a blog post HTML string.", + "Fetch a URL and provide structured info about its metadata, links, and heading outline." + ] + }, + "tags": [ + "analysis", + "html", + "metadata", + "seo", + "webscraping", + "content-summary", + "dom-parsing", + "etl" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"includeTextSummary\":true,\"maxSummaryLength\":100}", + "description": "Analyze the webpage at example.com extracting metadata, headings, links, and a 100-word summary." + }, + { + "inputJson": "{\"htmlContent\":\"Test

Main Heading

This is a paragraph.

A Link\",\"extractMetadata\":true,\"extractLinks\":true,\"extractHeadings\":true,\"includeTextSummary\":false}", + "description": "Analyze raw HTML content extracting metadata, links, and heading structure without text summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "etl-processes.analyzeXML", + "description": "Analyzes XML input data by extracting specified elements or attributes, applying optional XPath queries, and generating a detailed summary report including counts, structure, and data patterns. Accepts XML strings and parameters to customize extraction and analysis scope, and outputs structured insights useful for downstream ETL processes.", + "category": "etl-processes", + "parameters": [ + { + "name": "xmlString", + "type": "string", + "description": "The XML data as a string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "xpathQueries", + "type": "array", + "description": "Array of XPath query strings to select specific nodes or attributes for analysis.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeAttributes", + "type": "boolean", + "description": "Flag to indicate whether to include attributes of nodes in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth of XML tree to analyze; deeper nodes will be ignored if set.", + "required": false, + "defaultValue": "10" + }, + { + "name": "summaryStats", + "type": "boolean", + "description": "Whether to include summary statistics such as counts of elements, unique values, and text length distribution.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a structured object containing analysis summary including element counts, attribute summaries, results of XPath queries, and optionally statistical insights detailing distribution or anomalies found in XML data." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract meaningful structured insights from XML datasets in ETL pipelines. It helps discover data distribution, validate XML structure, or extract specific elements for transformation. Ideal for automating understanding of unknown or complex XML sources before integration.", + "limitations": "Cannot perform full XML validation against schemas. Large XML documents may require pre-processing as this tool is optimized for moderate-size XML inputs. Complex transformations or edits to XML are out of scope.", + "examples": [ + "Analyze an XML string to count all 'product' elements and extract their 'id' attributes.", + "Use XPath queries to extract all 'order' nodes placed within the last month from XML data.", + "Generate a summary report including attributes analysis and text content character distributions for a given XML document." + ] + }, + "tags": [ + "etl", + "xml", + "analysis", + "data-extraction", + "xpath", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"xmlString\":\"DressShirt\",\"xpathQueries\":[\"//product\"],\"includeAttributes\":true,\"maxDepth\":5,\"summaryStats\":true}", + "description": "Analyze a catalog XML to list all product nodes and include attribute summaries." + }, + { + "inputJson": "{\"xmlString\":\"\",\"xpathQueries\":[\"//order[@date>'2024-04-25']\"],\"includeAttributes\":true,\"maxDepth\":3,\"summaryStats\":false}", + "description": "Extract orders placed after a specific date using XPath and summarize matching nodes." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "XML", + "context": null + } + }, + { + "name": "etl-processes.downloadCSV", + "description": "This tool downloads CSV files from specified URLs. It accepts the URL of the CSV file, optional HTTP headers for authenticated requests, and a timeout setting. It fetches the CSV data over HTTP(S) and returns the CSV content as a string for downstream processing or saving to disk.", + "category": "etl-processes", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The full HTTP or HTTPS URL pointing to the CSV file to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers as key-value pairs for custom requests such as authentication tokens.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download before aborting.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing the raw CSV content as a string and metadata such as HTTP status code and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically retrieve CSV data from a web endpoint or file server, especially when direct read APIs are unavailable. It handles HTTP fetching reliably including optional headers and timeout settings.", + "limitations": "Does not parse the CSV data; only downloads raw CSV content. Does not handle non-HTTP protocols like FTP or file system paths.", + "examples": [ + "Download a public CSV file from a government data portal URL.", + "Download a CSV report behind an API that requires an authorization header.", + "Download a CSV file with a short timeout to avoid long waits." + ] + }, + "tags": [ + "download", + "CSV", + "HTTP", + "etl", + "data extraction", + "file download" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/data.csv\"}", + "description": "Download a simple CSV file from a public URL without additional headers." + }, + { + "inputJson": "{\"url\":\"https://secureapi.com/report.csv\",\"headers\":{\"Authorization\":\"Bearer abc123xyz\"}}", + "description": "Download a CSV file requiring an authorization bearer token." + }, + { + "inputJson": "{\"url\":\"https://example.com/large.csv\",\"timeoutSeconds\":10}", + "description": "Download a large CSV file but abort if it takes longer than 10 seconds." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "etl-processes.sendComment", + "description": "This tool accepts a text comment along with context such as target data entity and author information. It processes the input by formatting and attaching the comment metadata, then sends it to a specified destination such as a data record, log system, or ETL pipeline audit trail. It outputs a delivery status and comment ID if successful.", + "category": "etl-processes", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The textual content of the comment to be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEntityId", + "type": "string", + "description": "Identifier of the data entity or record the comment refers to", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Name or identifier of the comment author", + "required": false, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 timestamp when the comment is created; if omitted current time is used", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationType", + "type": "string", + "description": "Type of destination to send the comment to, e.g., 'database', 'log', or 'auditTrail'", + "required": false, + "defaultValue": "auditTrail" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata to attach to the comment (tags, priority, etc.)", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the status of the send operation, including success flag, comment ID, and error message if any" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to log, annotate, or attach user or system-generated comments within an ETL process for traceability, auditing, or collaboration. It is helpful for enriching data entities with contextual remarks in structured pipelines.", + "limitations": "This tool does not perform comment moderation, natural language understanding of the comment content, or complex routing beyond specified destination types.", + "examples": [ + "Send a comment annotating a data record during an ETL operation", + "Log a message to the ETL audit trail after a transformation step", + "Attach an author note to a dataset in the data warehouse for later review" + ] + }, + "tags": [ + "etl", + "comment", + "logging", + "annotation", + "auditTrail", + "dataPipeline", + "communication" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"Validated customer address data.\",\"targetEntityId\":\"cust12345\",\"authorName\":\"etlAgent42\",\"destinationType\":\"auditTrail\"}", + "description": "Send an audit trail comment about customer data validation." + }, + { + "inputJson": "{\"commentText\":\"Transformation step failed due to null value.\",\"targetEntityId\":\"transformStep7\",\"authorName\":\"systemMonitor\",\"timestamp\":\"2024-06-01T10:15:30Z\",\"destinationType\":\"log\"}", + "description": "Log an error comment about a failed transformation step with timestamp." + }, + { + "inputJson": "{\"commentText\":\"Reviewed data load results, no anomalies found.\",\"targetEntityId\":\"loadJob9876\",\"authorName\":\"dataEngineer\"}", + "description": "Attach a review comment to a data load job; defaults to auditTrail destination." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Comment", + "context": null + } + }, + { + "name": "etl-processes.renderWord", + "description": "This tool accepts a single string as input and processes it to render the word into a specified format for data pipelines, including transformations like casing (uppercase, lowercase, title case), character filtering, and optional embedding into template strings. It outputs the transformed word as a string suitable for further ETL processing or generation tasks.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputWord", + "type": "string", + "description": "The original word string to be rendered and transformed.", + "required": true, + "defaultValue": "" + }, + { + "name": "caseFormat", + "type": "string", + "description": "The casing format to apply: 'uppercase', 'lowercase', or 'titlecase'.", + "required": false, + "defaultValue": "lowercase" + }, + { + "name": "removeNonAlpha", + "type": "boolean", + "description": "Whether to remove all non-alphabetic characters from the word.", + "required": false, + "defaultValue": "false" + }, + { + "name": "prefix", + "type": "string", + "description": "Optional prefix string to prepend to the rendered word.", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "Optional suffix string to append to the rendered word.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "The rendered and transformed word string after applying requested formatting and modifications." + }, + "aiAgent": { + "useCase": "Use this tool when you need to systematically format and clean individual words during ETL processing, such as standardizing case, removing unwanted characters, and embedding words within prefixes or suffixes for downstream consumption in data pipelines.", + "limitations": "This tool processes only single words (strings without spaces); it does not handle phrases or full sentences and does not perform complex linguistic or semantic transformation.", + "examples": [ + "Render 'ExampleWord123' as uppercase with non-alphabetic characters removed.", + "Convert input word to title case and add a prefix and suffix around it.", + "Simply lowercase the input word without additional changes." + ] + }, + "tags": [ + "etl", + "transform", + "text-processing", + "word-formatting", + "string-manipulation" + ], + "examples": [ + { + "inputJson": "{\"inputWord\":\"ExampleWord123\",\"caseFormat\":\"uppercase\",\"removeNonAlpha\":true,\"prefix\":\"PRE_\",\"suffix\":\"_SUF\"}", + "description": "Convert 'ExampleWord123' to uppercase, remove digits, and add prefix and suffix." + }, + { + "inputJson": "{\"inputWord\":\"helloWorld\",\"caseFormat\":\"titlecase\",\"removeNonAlpha\":false,\"prefix\":\"\",\"suffix\":\"_end\"}", + "description": "Title case the word 'helloWorld' and append '_end' as suffix." + }, + { + "inputJson": "{\"inputWord\":\"Data123\",\"caseFormat\":\"lowercase\",\"removeNonAlpha\":true,\"prefix\":\"\",\"suffix\":\"\"}", + "description": "Lowercase the word 'Data123' and remove non-alphabetic characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Word", + "context": null + } + }, + { + "name": "etl-processes.draftWord", + "description": "This tool accepts raw textual input and drafts a refined single word fitting specific semantic and stylistic constraints. It processes inputs such as root words, synonyms, or thematic context, and outputs a polished word tailored for inclusion in data extraction, transformation, or labeling workflows requiring precise vocabulary.", + "category": "etl-processes", + "parameters": [ + { + "name": "rootWord", + "type": "string", + "description": "The initial word or root text based on which the new word draft will be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetLanguage", + "type": "string", + "description": "The language code (e.g., 'en', 'fr') for the drafted word to conform to language rules.", + "required": false, + "defaultValue": "\"en\"" + }, + { + "name": "desiredPartOfSpeech", + "type": "string", + "description": "Specifies the grammatical category (e.g., noun, verb, adjective) that the drafted word should fit.", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "thematicContext", + "type": "string", + "description": "Optional context or domain theme to guide the semantic nature of the drafted word (e.g., 'technology', 'finance').", + "required": false, + "defaultValue": "\"\"" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length allowed for the drafted word.", + "required": false, + "defaultValue": "20" + }, + { + "name": "includeSynonyms", + "type": "boolean", + "description": "If true, provide synonyms along with the primary drafted word as output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Outputs an object containing the primary drafted word and optionally a list of synonyms if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate or refine single word labels, tags, or keywords from raw text inputs during ETL workflows. Ideal for creating normalized and semantically relevant terminology to improve data consistency and searchability.", + "limitations": "This tool does not generate multi-word phrases or sentences and may not produce words suitable for highly specialized technical jargon without adequate context.", + "examples": [ + "Draft a concise noun from the root word 'analyze' for labeling dataset fields.", + "Generate a synonym-rich adjective related to 'efficient' in English for tagging performance metrics.", + "Create a thematic noun in the finance domain based on the root word 'fund'." + ] + }, + "tags": [ + "etl", + "word-generation", + "text-processing", + "labeling", + "normalization", + "synonyms" + ], + "examples": [ + { + "inputJson": "{\"rootWord\":\"analyze\",\"desiredPartOfSpeech\":\"noun\",\"targetLanguage\":\"en\",\"maxLength\":15,\"includeSynonyms\":true}", + "description": "Drafts a noun-based word from 'analyze' in English, with synonyms, suitable for dataset labeling." + }, + { + "inputJson": "{\"rootWord\":\"fast\",\"desiredPartOfSpeech\":\"adjective\",\"includeSynonyms\":false}", + "description": "Generates an adjective form of 'fast' without synonyms." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Word", + "context": null + } + }, + { + "name": "etl-processes.formatEndpoint", + "description": "This tool accepts an API endpoint configuration object and reformats it according to specified style and structure rules. It processes endpoint data like method, URL, headers, parameters, and request/response schema, outputting a standardized JSON or YAML representation suitable for ETL workflows or API documentation.", + "category": "etl-processes", + "parameters": [ + { + "name": "endpointData", + "type": "object", + "description": "The input endpoint configuration object including method, URL, headers, query/body parameters, and schemas. Required for formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format for the formatted endpoint: 'json' or 'yaml'. Default is 'json'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeDefaults", + "type": "boolean", + "description": "Whether to include default values explicitly in the formatted output. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the output format, applicable to JSON/YAML formatting. Defaults to 2.", + "required": false, + "defaultValue": "2" + }, + { + "name": "urlTemplateStyle", + "type": "string", + "description": "Defines the style to format URL templates. Options include 'colonParam' (e.g., /users/:id) or 'bracketParam' (e.g., /users/{id}). Default is 'bracketParam'.", + "required": false, + "defaultValue": "bracketParam" + } + ], + "returns": { + "type": "string", + "description": "A string containing the formatted endpoint configuration in the desired style and format (JSON or YAML)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to standardize or reformat raw API endpoint definitions or configurations before loading into an ETL pipeline, or preparing for API documentation and integration. It helps unify diverse endpoint formats into consistent, structured outputs for downstream processing.", + "limitations": "This tool does not validate or test the endpoint functionality or network accessibility. It also does not generate endpoint data from scratch but only reformats provided input objects. It doesn't cover security policies or authentication specifics beyond headers formatting.", + "examples": [ + "Format a raw endpoint object to YAML with bracketed URL parameters for API documentation.", + "Convert an endpoint definition to JSON with colon-styled URL parameters for easier frontend integration.", + "Include default values explicitly in the output JSON for thorough configuration auditing." + ] + }, + "tags": [ + "etl", + "api", + "endpoint", + "formatting", + "data-transformation", + "json", + "yaml" + ], + "examples": [ + { + "inputJson": "{\"endpointData\":{\"method\":\"GET\",\"url\":\"/users/{userId}\",\"headers\":{\"Accept\":\"application/json\"},\"queryParameters\":[{\"name\":\"expand\",\"type\":\"string\",\"required\":false,\"default\":\"\"}],\"responseSchema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"}}}},\"outputFormat\":\"yaml\",\"includeDefaults\":false,\"indentation\":2,\"urlTemplateStyle\":\"bracketParam\"}", + "description": "Format a GET endpoint in YAML with bracket style URL parameters without explicit defaults." + }, + { + "inputJson": "{\"endpointData\":{\"method\":\"POST\",\"url\":\"/orders/:orderId/items\",\"headers\":{\"Content-Type\":\"application/json\"},\"bodyParameters\":[{\"name\":\"quantity\",\"type\":\"integer\",\"required\":true,\"default\":1}],\"responseSchema\":{\"type\":\"object\",\"properties\":{\"itemId\":{\"type\":\"string\"},\"status\":{\"type\":\"string\"}}}},\"outputFormat\":\"json\",\"includeDefaults\":true,\"indentation\":4,\"urlTemplateStyle\":\"colonParam\"}", + "description": "Format a POST endpoint in JSON with colon-style URL parameters and including default values explicitly." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Endpoint", + "context": null + } + }, + { + "name": "etl-processes.formatModule", + "description": "Formats ETL process module code by applying consistent code style, formatting indentation, replacing tabs with spaces, and optionally minifying or beautifying the module source code. Accepts raw module source as input and outputs the formatted code string compliant with given style options.", + "category": "etl-processes", + "parameters": [ + { + "name": "moduleSource", + "type": "string", + "description": "Raw source code of the ETL process module that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentSize", + "type": "number", + "description": "Number of spaces used for indentation in the formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs instead of spaces for indentation.", + "required": false, + "defaultValue": "false" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum characters per line before wrapping (0 for no limit).", + "required": false, + "defaultValue": "0" + }, + { + "name": "minify", + "type": "boolean", + "description": "If true, minimize the code by removing unnecessary whitespace and line breaks.", + "required": false, + "defaultValue": "false" + }, + { + "name": "beautify", + "type": "boolean", + "description": "If true, prettify the code applying consistent line breaks and spacing.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted ETL module source code as a string under the 'formattedSource' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent or developer needs to standardize the formatting of ETL process module source code for better readability, maintainability, or preparation before deployment and version control. It is useful when cleaning up raw or inconsistent code input, or when integrating ETL code snippets from multiple sources.", + "limitations": "This tool does not perform syntax validation, semantic analysis, or code execution. It does not transform or optimize the logic; only formatting changes are applied. Extremely malformed code input might produce incorrect formatting output.", + "examples": [ + "Format an ETL module source string to use 4 spaces indentation without tabs.", + "Minify an ETL processing module source code for deployment.", + "Pretty print raw ETL module code replacing tabs with 2 spaces and limiting lines to 80 chars." + ] + }, + "tags": [ + "etl", + "code-formatting", + "module", + "source-code", + "beautify", + "minify", + "developer-tools" + ], + "examples": [ + { + "inputJson": "{\"moduleSource\":\"function extract(){\\n\\tconsole.log('extracting data');\\n}\\nfunction transform(data){return data;}\\n\",\"indentSize\":4,\"useTabs\":false,\"minify\":false,\"beautify\":true,\"lineWidth\":80}", + "description": "Format ETL module code with 4 spaces indentation, no tabs, beautify output." + }, + { + "inputJson": "{\"moduleSource\":\"function extract(){\\n console.log('extracting data');\\n}\\nfunction transform(data){return data;}\\n\",\"indentSize\":2,\"useTabs\":true,\"minify\":true,\"beautify\":false,\"lineWidth\":0}", + "description": "Minify ETL module source using tabs for indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Module", + "context": null + } + }, + { + "name": "etl-processes.formatSummary", + "description": "Transforms raw text summaries or extracted document data into consistently formatted summaries based on specified styles and length constraints. Accepts input summary text or structured summary data, applies transformation rules like length trimming, formatting style (e.g., bullet points, paragraphs), and outputs a ready-to-use formatted summary string.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputSummary", + "type": "string", + "description": "Raw summary text or JSON string representing extracted summary data to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "Requested formatting style for the output summary, e.g., 'paragraph', 'bulletPoints', or 'numberedList'.", + "required": false, + "defaultValue": "paragraph" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the formatted summary in characters. The output will be trimmed to this length if necessary.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "preserveKeyPoints", + "type": "boolean", + "description": "If true, attempts to preserve key points or highlights from the input summary when trimming or formatting.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted summary string ready for display or further processing." + }, + "aiAgent": { + "useCase": "Use this tool when needing to standardize and cleanly format summaries extracted from documents or raw text notes into a consistent layout for reporting, display in UI, or downstream analysis. It is ideal in ETL pipelines where summary text must be normalized and length-controlled.", + "limitations": "This tool does not generate new summary content or perform summarization itself; it only formats and trims existing summary input. It cannot interpret complex semantic context beyond reformatting.", + "examples": [ + "Format a raw extracted meeting summary into bullet points no longer than 500 characters.", + "Convert a JSON-based key points summary into a clean paragraph format for email inclusion.", + "Trim a lengthy summary text to a maximum of 300 characters preserving main highlights." + ] + }, + "tags": [ + "etl", + "formatting", + "document-summary", + "text-processing", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"inputSummary\":\"Weekly project update: Completed milestone 2, started on feature X, delayed testing due to resource constraints.\",\"formatStyle\":\"bulletPoints\",\"maxLength\":200,\"preserveKeyPoints\":true}", + "description": "Formats a raw project update summary into bullet points, limiting length to 200 characters." + }, + { + "inputJson": "{\"inputSummary\":\"{\\\"keyPoints\\\":[\\\"Budget approved\\\",\\\"Team ramp-up next week\\\"]}\",\"formatStyle\":\"paragraph\",\"maxLength\":1000,\"preserveKeyPoints\":true}", + "description": "Converts a JSON keyPoints summary into a single paragraph style formatted summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Summary", + "context": null + } + }, + { + "name": "etl-processes.composeParagraph", + "description": "This tool accepts an array of text snippets or sentences as input, optionally applies transformation rules like text normalization and ordering, and composes them into a coherent, well-structured paragraph. It outputs the combined paragraph as a single string, suitable for use in ETL workflows where textual data extraction and synthesis is required.", + "category": "etl-processes", + "parameters": [ + { + "name": "textSegments", + "type": "array", + "description": "Array of text snippets or sentences to be composed into a paragraph.", + "required": true, + "defaultValue": "" + }, + { + "name": "normalizeWhitespace", + "type": "boolean", + "description": "Whether to normalize whitespace between segments (e.g., trim and single spaces).", + "required": false, + "defaultValue": "true" + }, + { + "name": "capitalizeFirstSentence", + "type": "boolean", + "description": "Whether to ensure the first sentence starts with a capital letter.", + "required": false, + "defaultValue": "true" + }, + { + "name": "insertSeparators", + "type": "string", + "description": "String to insert between segments; defaults to single space if empty.", + "required": false, + "defaultValue": " " + }, + { + "name": "orderSegments", + "type": "array", + "description": "Optional array of integer indices to reorder textSegments before composing; if empty, original order is used.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed paragraph as a single string field named 'paragraph'." + }, + "aiAgent": { + "useCase": "Use this tool when you have multiple text fragments extracted from disparate sources that require clean merging into a cohesive paragraph for ETL pipelines, reporting, or data summarization. It standardizes spacing, capitalization, and order to produce readable, consistent text output.", + "limitations": "Does not perform advanced natural language generation, semantic coherence checking, or complex paraphrasing. It assumes input segments are suitable for simple concatenation and basic formatting.", + "examples": [ + "Combine several extracted sentences into one paragraph with normalized spacing.", + "Reorder and merge text snippets into a paragraph for a report summary.", + "Convert an array of log messages or description parts into a formatted paragraph." + ] + }, + "tags": [ + "etl", + "text-composition", + "paragraph", + "text-processing", + "data-transformation" + ], + "examples": [ + { + "inputJson": "{\"textSegments\":[\"data was collected on Monday.\",\"The results are significant.\",\"Further analysis is needed.\"],\"normalizeWhitespace\":true,\"capitalizeFirstSentence\":true,\"insertSeparators\":\" \",\"orderSegments\":[] }", + "description": "Compose three sentences in original order with normalized spacing and capitalization." + }, + { + "inputJson": "{\"textSegments\":[\"step two involves cleaning.\",\"first, gather data.\",\"then analyze.\"],\"normalizeWhitespace\":true,\"capitalizeFirstSentence\":true,\"insertSeparators\":\" \",\"orderSegments\":[1,2,0] }", + "description": "Reorder segments to logical sequence, then compose into a paragraph." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Paragraph", + "context": null + } + }, + { + "name": "etl-processes.generateTrend", + "description": "Generates data trend analytics from given time series or event datasets. Accepts input data as arrays or objects containing timestamped values, processes to identify trends such as increases, decreases, seasonality, or anomalies, and outputs structured trend reports including summary statistics and detected patterns.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "array", + "description": "An array of objects representing time series data points, each with timestamp and value fields, to analyze for trends.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeField", + "type": "string", + "description": "The key name in inputData objects representing the timestamp; defaults to 'timestamp'.", + "required": false, + "defaultValue": "\"timestamp\"" + }, + { + "name": "valueField", + "type": "string", + "description": "The key name in inputData objects representing the numeric value to analyze; defaults to 'value'.", + "required": false, + "defaultValue": "\"value\"" + }, + { + "name": "trendType", + "type": "string", + "description": "Type of trend analysis to perform: 'linear', 'seasonal', 'anomaly', or 'all' for comprehensive analysis.", + "required": false, + "defaultValue": "\"all\"" + }, + { + "name": "seasonalityPeriod", + "type": "number", + "description": "Optional period length (e.g., 7 for weekly) to detect seasonal trends. Required if trendType includes 'seasonal'.", + "required": false, + "defaultValue": "" + }, + { + "name": "confidenceLevel", + "type": "number", + "description": "Statistical confidence level (0-1) for trend significance reporting, default is 0.95.", + "required": false, + "defaultValue": "0.95" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' for structured data or 'text' for human-readable summary.", + "required": false, + "defaultValue": "\"json\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing trend analysis results including overall trend direction, strength, seasonality patterns if detected, anomaly points, and confidence metrics formatted as requested." + }, + "aiAgent": { + "useCase": "Use this tool when you have timestamped data and want to identify underlying trends such as upward or downward direction, seasonal cycles, or anomalies in the dataset. This helps with forecasting, monitoring KPIs, and gaining insights on temporal data patterns. It is useful in ETL pipelines, data quality monitoring, and analytics dashboards.", + "limitations": "The tool requires reasonably clean and sufficiently dense time series data. It does not perform causal inference and may not handle irregular time intervals or missing data without preprocessing. It cannot predict future values beyond trend characterization.", + "examples": [ + "Generate an overall upward or downward trend report from daily sales figures with seasonal weekly patterns.", + "Identify anomalies and unusual spikes in server CPU usage logs over the past month.", + "Provide a textual summary of trends detected in temperature sensor readings including seasonality and anomalies." + ] + }, + "tags": [ + "etl", + "trend-analysis", + "time-series", + "analytics", + "data-processing", + "seasonality", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2023-01-01T00:00:00Z\",\"value\":100},{\"timestamp\":\"2023-01-02T00:00:00Z\",\"value\":110},{\"timestamp\":\"2023-01-03T00:00:00Z\",\"value\":120}],\"trendType\":\"linear\",\"outputFormat\":\"json\"}", + "description": "Analyze a simple ascending trend in daily values." + }, + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2023-01-01T00:00:00Z\",\"value\":200},{\"timestamp\":\"2023-01-08T00:00:00Z\",\"value\":210},{\"timestamp\":\"2023-01-15T00:00:00Z\",\"value\":205}],\"trendType\":\"seasonal\",\"seasonalityPeriod\":7}", + "description": "Detect weekly seasonality in sparse weekly samples." + }, + { + "inputJson": "{\"inputData\":[{\"timestamp\":\"2023-04-01T12:00:00Z\",\"value\":50},{\"timestamp\":\"2023-04-02T12:00:00Z\",\"value\":300},{\"timestamp\":\"2023-04-03T12:00:00Z\",\"value\":55}],\"trendType\":\"anomaly\",\"outputFormat\":\"text\"}", + "description": "Identify anomalies in sensor readings with textual output." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Trend", + "context": null + } + }, + { + "name": "etl-processes.buildVariable", + "description": "This tool builds a variable definition object used within ETL (Extract, Transform, Load) processes. It accepts inputs including the variable name, data type, optional transformation logic, and metadata, then produces a structured JSON representation of the variable. This aids in dynamically constructing transformation pipelines or parameterizing ETL jobs.", + "category": "etl-processes", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The name of the variable to create, used as an identifier in ETL workflows.", + "required": true, + "defaultValue": "" + }, + { + "name": "dataType", + "type": "string", + "description": "The data type of the variable, e.g., string, integer, date, or boolean.", + "required": true, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Optional default value for the variable, represented as a string to be parsed per the data type.", + "required": false, + "defaultValue": "" + }, + { + "name": "transformationLogic", + "type": "string", + "description": "Optional transformation expression or code snippet that defines how to compute or modify the variable's value during ETL.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs storing additional metadata about the variable, such as source column mapping or validation rules.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured variable definition including name, type, optional default, transformation logic, and metadata for use in ETL processes." + }, + "aiAgent": { + "useCase": "Use this tool when building dynamic ETL pipelines where variables must be defined programmatically with associated data types, default values, transformation rules, and metadata. It helps agents create or modify ETL variable schemas for consistent downstream use.", + "limitations": "Does not execute transformations or validate runtime variable values; it only produces the variable definition object.", + "examples": [ + "Define a string variable 'customerId' with no default and basic metadata", + "Create a date variable 'transactionDate' with transformation logic to parse date strings", + "Build an integer variable 'orderCount' with default 0 and validation metadata" + ] + }, + "tags": [ + "etl", + "variable", + "data-transformation", + "pipeline", + "definition", + "parameterization" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"customerId\",\"dataType\":\"string\",\"defaultValue\":\"\",\"transformationLogic\":\"\",\"metadata\":{\"sourceColumn\":\"cust_id\",\"nullable\":false}}", + "description": "Create a string variable named 'customerId' mapped from source column 'cust_id' with nullability false." + }, + { + "inputJson": "{\"variableName\":\"transactionDate\",\"dataType\":\"date\",\"defaultValue\":\"\",\"transformationLogic\":\"parseDate(input)\",\"metadata\":{\"format\":\"yyyy-MM-dd\"}}", + "description": "Build a date variable 'transactionDate' with a transformation logic to parse input strings into date type." + }, + { + "inputJson": "{\"variableName\":\"orderCount\",\"dataType\":\"integer\",\"defaultValue\":\"0\",\"transformationLogic\":\"\",\"metadata\":{\"minValue\":0}}", + "description": "Define an integer variable 'orderCount' with default 0 and metadata specifying minimum value constraint." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "etl-processes.buildQuery", + "description": "Builds a SQL query string based on provided input parameters such as selected columns, conditions, sorting, and table name. Accepts structured inputs for columns, filters, order, and pagination, constructs a valid SQL SELECT query, and outputs the query string for execution or further processing.", + "category": "etl-processes", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "The name of the database table to query.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectColumns", + "type": "array", + "description": "List of column names to select from the table. If empty or not provided, selects all columns (*).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "whereConditions", + "type": "object", + "description": "An object representing filter conditions as key-value pairs. Keys are column names; values are filter criteria. Supports basic equality filtering.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "orderBy", + "type": "array", + "description": "Array of objects specifying columns to order by with direction. Each object has 'column' (string) and 'direction' ('ASC' or 'DESC').", + "required": false, + "defaultValue": "[]" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of records to return. If omitted, no limit is applied.", + "required": false, + "defaultValue": "" + }, + { + "name": "offset", + "type": "number", + "description": "Number of records to skip before starting to return records, useful for pagination. Default is 0.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed SQL query string under the 'query' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate SQL SELECT queries based on dynamic input parameters for ETL workflows, data extraction, or reporting needs. It helps to avoid error-prone manual string concatenations and ensures consistent query syntax generation.", + "limitations": "This tool only builds simple SELECT queries with basic WHERE conditions using equality checks. It does not support complex SQL features like JOINs, subqueries, aggregations, or advanced filtering operators.", + "examples": [ + "Build a query selecting 'id' and 'name' columns from 'users' where 'status'='active' sorted by 'created_at' descending with limit 10.", + "Generate a query on 'orders' without filters selecting all columns with offset pagination starting at 20 records.", + "Create a query on 'products' selecting 'id' and 'price' columns with multiple where conditions and ascending order by price." + ] + }, + "tags": [ + "etl", + "sql", + "query", + "build", + "data-extraction" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"users\",\"selectColumns\":[\"id\",\"name\",\"email\"],\"whereConditions\":{\"status\":\"active\"},\"orderBy\":[{\"column\":\"created_at\",\"direction\":\"DESC\"}],\"limit\":10,\"offset\":0}", + "description": "Select id, name, email from active users ordered by creation date descending with limit 10." + }, + { + "inputJson": "{\"tableName\":\"orders\",\"selectColumns\":[],\"whereConditions\":{},\"orderBy\":[],\"limit\":50,\"offset\":20}", + "description": "Select all columns from orders table with limit 50 and offset 20 for pagination." + }, + { + "inputJson": "{\"tableName\":\"products\",\"selectColumns\":[\"id\",\"price\"],\"whereConditions\":{\"category\":\"electronics\",\"in_stock\":\"true\"},\"orderBy\":[{\"column\":\"price\",\"direction\":\"ASC\"}],\"limit\":100,\"offset\":0}", + "description": "Select id and price from products in electronics category and in stock, order by price ascending." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "etl-processes.buildComponent", + "description": "Builds a reusable data transformation component for ETL pipelines. Accepts configuration for extraction parameters, transformation logic in code or expression format, and loading targets. Outputs a validated ETL component object ready to integrate or deploy in data processing workflows.", + "category": "etl-processes", + "parameters": [ + { + "name": "componentName", + "type": "string", + "description": "Name identifier for the ETL component being built.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractConfig", + "type": "object", + "description": "Configuration details for data extraction including source type, connection info, and query parameters.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformLogic", + "type": "string", + "description": "Transformation logic as code snippet or expression to apply on extracted data.", + "required": true, + "defaultValue": "" + }, + { + "name": "loadConfig", + "type": "object", + "description": "Configuration for loading data specifying target destination, authentication, and write mode.", + "required": true, + "defaultValue": "" + }, + { + "name": "componentDescription", + "type": "string", + "description": "Optional textual description of the ETL component's purpose and behavior.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateSyntax", + "type": "boolean", + "description": "Flag to validate transformation logic syntax before building the component.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An ETL component object including validated configuration, transformation logic, and metadata for integration." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically assemble or customize reusable ETL components for modular data workflows, allowing consistent data extraction, transformation, and loading. Ideal for automating pipeline construction or generating components for deployment.", + "limitations": "This tool does not execute the ETL process itself or handle runtime errors during data processing; it only builds and validates the component configuration and transformation logic syntactically.", + "examples": [ + "Build an ETL component to extract data from a MySQL database, transform with Python code to clean nulls, and load into a data warehouse.", + "Create a reusable transformation component that normalizes date formats from source JSON files before loading.", + "Assemble an ETL component with extraction from REST API, SQL-based transformation, and loading to cloud storage." + ] + }, + "tags": [ + "etl", + "component", + "build", + "data-transformation", + "pipeline", + "automation", + "extract", + "transform", + "load" + ], + "examples": [ + { + "inputJson": "{\"componentName\":\"mysqlToWarehouse\",\"extractConfig\":{\"sourceType\":\"mysql\",\"connectionString\":\"mysql://user:pass@host:3306/db\",\"query\":\"SELECT * FROM sales\"},\"transformLogic\":\"def transform(df): df['amount'] = df['amount'].fillna(0); return df\",\"loadConfig\":{\"targetType\":\"warehouse\",\"connectionString\":\"warehouse://user:pass@host/db\",\"writeMode\":\"append\"},\"componentDescription\":\"Extract sales data from MySQL, clean null amounts, load to warehouse\",\"validateSyntax\":true}", + "description": "Build an ETL component to extract all sales data from MySQL, replace null amounts with 0, and append to a data warehouse." + }, + { + "inputJson": "{\"componentName\":\"apiJsonNormalizer\",\"extractConfig\":{\"sourceType\":\"restApi\",\"endpoint\":\"https://api.example.com/data\",\"auth\":{\"type\":\"token\",\"token\":\"abc123\"}},\"transformLogic\":\"def transform(df): df['date'] = pd.to_datetime(df['date'], errors='coerce'); return df\",\"loadConfig\":{\"targetType\":\"s3\",\"bucket\":\"my-bucket\",\"path\":\"normalized/\"},\"componentDescription\":\"Extract JSON data from REST API, normalize date fields, load to S3 bucket\",\"validateSyntax\":true}", + "description": "Create an ETL component extracting JSON data from API, normalizing dates, and loading to S3 storage." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Component", + "context": null + } + }, + { + "name": "etl-processes.generateSession", + "description": "Generates user sessions from raw event logs by grouping events based on user identifiers and configurable inactivity timeout, producing session records with start/end times, duration, and event counts for analytics.", + "category": "etl-processes", + "parameters": [ + { + "name": "events", + "type": "array", + "description": "An array of event objects containing userId and timestamp, representing raw user activity logs to be grouped into sessions.", + "required": true, + "defaultValue": "" + }, + { + "name": "userIdField", + "type": "string", + "description": "The key in each event object representing the user identifier.", + "required": false, + "defaultValue": "userId" + }, + { + "name": "timestampField", + "type": "string", + "description": "The key in each event object representing the event timestamp in ISO 8601 format or UNIX epoch milliseconds.", + "required": false, + "defaultValue": "timestamp" + }, + { + "name": "sessionTimeoutMinutes", + "type": "number", + "description": "The inactivity timeout in minutes to separate sessions; if no event occurs within this period, a new session starts.", + "required": false, + "defaultValue": "30" + }, + { + "name": "maxSessionDurationMinutes", + "type": "number", + "description": "Optional maximum duration in minutes allowed for a session before forcibly closing it, regardless of activity.", + "required": false, + "defaultValue": "0" + }, + { + "name": "sortEvents", + "type": "boolean", + "description": "Whether to sort events by timestamp before processing. Default true assumes events may be unordered.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing an array of session records, each with userId, sessionId, startTime, endTime, durationMinutes, and eventCount." + }, + "aiAgent": { + "useCase": "Use this tool when you have raw user event data and want to create meaningful session records for analytics, such as measuring user engagement and session behavior by grouping events into sessions based on inactivity. It works best for web or app usage logs where sessionizing by timeout is required.", + "limitations": "This tool does not infer sessions without clear timestamps or user identifiers and does not perform deep event content analysis. It assumes events include valid timestamp and userId fields. Sessions are generated solely by inactivity timeouts; it does not consider other session delimiters like logout.", + "examples": [ + "Generate sessions from web clickstream events with default 30-minute timeout.", + "Create sessions for mobile app events where the session timeout is 15 minutes.", + "Process unordered events by setting sortEvents to true before sessionizing." + ] + }, + "tags": [ + "etl", + "sessionization", + "analytics", + "user-engagement", + "event-processing", + "time-series", + "aggregation" + ], + "examples": [ + { + "inputJson": "{\"events\":[{\"userId\":\"user1\",\"timestamp\":\"2024-06-01T10:00:00Z\"},{\"userId\":\"user1\",\"timestamp\":\"2024-06-01T10:10:00Z\"},{\"userId\":\"user1\",\"timestamp\":\"2024-06-01T11:00:00Z\"},{\"userId\":\"user2\",\"timestamp\":\"2024-06-01T09:50:00Z\"}],\"sessionTimeoutMinutes\":30}", + "description": "Generate sessions from an array of events with a 30-minute inactivity timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Session", + "context": null + } + }, + { + "name": "etl-processes.createSession", + "description": "Creates an analytics session record by extracting session details from input event data, transforming fields such as timestamps and user IDs, and loading the session object into a target analytics store. Accepts raw event arrays and outputs a standardized session summary.", + "category": "etl-processes", + "parameters": [ + { + "name": "events", + "type": "array", + "description": "Array of raw event objects representing user interactions within a session. Each event should contain at least a timestamp and eventName.", + "required": true, + "defaultValue": "" + }, + { + "name": "sessionId", + "type": "string", + "description": "Unique identifier for the session. If not supplied, the tool will generate a UUID for the session.", + "required": false, + "defaultValue": "" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier for the user associated with the session. Optional if events contain user info.", + "required": false, + "defaultValue": "" + }, + { + "name": "sessionTimeoutMinutes", + "type": "number", + "description": "Duration in minutes to consider inactivity as session end. Defaults to 30 minutes.", + "required": false, + "defaultValue": "30" + }, + { + "name": "targetStore", + "type": "string", + "description": "Destination store name to load the created session data, e.g. database or analytics platform. Optional, session summary returned regardless.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured session object including sessionId, userId, start and end timestamps, event count, and summary metrics." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a consolidated session record from raw event-level interaction data, enabling session-level analytics and reporting in your ETL workflows. Ideal for scenarios where events come unordered or lack explicit session grouping.", + "limitations": "This tool does not analyze event semantics beyond temporal grouping and basic summarization. It does not perform deep user behavior analysis or anomaly detection.", + "examples": [ + "Create a session from web clickstream events with a 15-minute timeout", + "Generate a session summary for events missing explicit sessionId, auto-generating it", + "Load created session data into the 'analytics_sessions' database store" + ] + }, + "tags": [ + "etl", + "analytics", + "session", + "data-transformation", + "event-processing" + ], + "examples": [ + { + "inputJson": "{\"events\":[{\"timestamp\":\"2024-06-01T10:00:00Z\",\"eventName\":\"pageView\"},{\"timestamp\":\"2024-06-01T10:10:00Z\",\"eventName\":\"click\"}] ,\"sessionTimeoutMinutes\":20}", + "description": "Create a session with a 20-minute timeout from two events 10 minutes apart" + }, + { + "inputJson": "{\"events\":[{\"timestamp\":\"2024-06-01T09:00:00Z\",\"eventName\":\"login\"},{\"timestamp\":\"2024-06-01T09:45:00Z\",\"eventName\":\"logout\"}],\"userId\":\"user123\"}", + "description": "Generate a session for user user123 with default 30-minute timeout" + }, + { + "inputJson": "{\"events\":[{\"timestamp\":\"2024-06-01T11:00:00Z\",\"eventName\":\"start\"},{\"timestamp\":\"2024-06-01T11:05:00Z\",\"eventName\":\"purchase\"}],\"targetStore\":\"analytics_db\"}", + "description": "Create a session and specify to load results into analytics_db store" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "etl-processes.createTrend", + "description": "This tool accepts time-series data and configuration parameters to extract meaningful trends by applying smoothing, aggregation, and pattern detection algorithms. It outputs trend summaries and time points highlighting significant upward or downward movements, facilitating data-driven insights.", + "category": "etl-processes", + "parameters": [ + { + "name": "data", + "type": "array", + "description": "An array of objects representing time-series data points, each with at least a timestamp and a numeric value.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestampField", + "type": "string", + "description": "The key name in each data object that holds the timestamp value.", + "required": true, + "defaultValue": "timestamp" + }, + { + "name": "valueField", + "type": "string", + "description": "The key name in each data object that holds the numeric value to analyze for trends.", + "required": true, + "defaultValue": "value" + }, + { + "name": "aggregationInterval", + "type": "string", + "description": "Time interval for aggregating data points (e.g., 'daily', 'weekly', 'monthly').", + "required": false, + "defaultValue": "daily" + }, + { + "name": "smoothingMethod", + "type": "string", + "description": "Method used to smooth data, such as 'movingAverage', 'exponential', or 'none'.", + "required": false, + "defaultValue": "movingAverage" + }, + { + "name": "smoothingWindowSize", + "type": "number", + "description": "The window size for smoothing the data series, relevant if smoothing is applied.", + "required": false, + "defaultValue": "3" + }, + { + "name": "trendDetectionMethod", + "type": "string", + "description": "Algorithm used for detecting trends, e.g., 'linearRegression', 'threshold', or 'none'.", + "required": false, + "defaultValue": "linearRegression" + }, + { + "name": "threshold", + "type": "number", + "description": "Minimum magnitude of change to qualify as a significant trend, used by threshold methods.", + "required": false, + "defaultValue": "0.05" + }, + { + "name": "includeSubTrends", + "type": "boolean", + "description": "Whether to detect and return smaller trends nested within major trends.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing detected trend summaries, including start and end timestamps, direction, magnitude, and confidence scores, plus metadata about the analysis." + }, + "aiAgent": { + "useCase": "Use this tool when needing to transform raw time-stamped numeric data into summarized trends that reveal patterns over time. Ideal for business analytics, financial market analysis, or monitoring sensor data to identify significant increases, decreases, or stable periods.", + "limitations": "It cannot detect causal relationships or apply domain-specific anomaly detection without additional customization. It assumes reasonably clean and continuous time series data.", + "examples": [ + "Identify monthly sales trends from raw daily sales data.", + "Detect significant upward or downward trends in website traffic logs.", + "Summarize energy consumption trends using weekly aggregated sensor readings." + ] + }, + "tags": [ + "etl", + "trend-analysis", + "time-series", + "data-aggregation", + "smoothing", + "analytics", + "pattern-detection" + ], + "examples": [ + { + "inputJson": "{\"data\":[{\"timestamp\":\"2024-01-01T00:00:00Z\",\"value\":100},{\"timestamp\":\"2024-01-02T00:00:00Z\",\"value\":105},{\"timestamp\":\"2024-01-03T00:00:00Z\",\"value\":102},{\"timestamp\":\"2024-01-04T00:00:00Z\",\"value\":110}],\"timestampField\":\"timestamp\",\"valueField\":\"value\",\"aggregationInterval\":\"daily\",\"smoothingMethod\":\"movingAverage\",\"smoothingWindowSize\":2,\"trendDetectionMethod\":\"linearRegression\",\"threshold\":0.03,\"includeSubTrends\":false}", + "description": "Analyze daily sales data with moving average smoothing and detect overall linear trends exceeding 3% change." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Trend", + "context": null + } + }, + { + "name": "etl-processes.generateXML", + "description": "Generates an XML document from provided structured data such as JSON or object arrays. Accepts input data and mapping rules defining how the data fields correspond to XML elements and attributes, then outputs a well-formed XML string or file ready for downstream integration or storage.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "Structured data (e.g., JSON object or array) to convert into XML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "Name of the root element in the generated XML document.", + "required": true, + "defaultValue": "" + }, + { + "name": "itemElementName", + "type": "string", + "description": "Name of the element to wrap each data item, applicable if inputData is an array.", + "required": false, + "defaultValue": "item" + }, + { + "name": "attributeMapping", + "type": "object", + "description": "Optional mapping of data fields to XML attributes instead of elements; key is data field, value is attribute name.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "Flag indicating whether to include the XML declaration header (e.g., ).", + "required": false, + "defaultValue": "true" + }, + { + "name": "prettyPrint", + "type": "boolean", + "description": "Whether to format the output XML with indentation and line breaks for readability.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated XML string and optionally metadata like root element name." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform structured data like JSON or arrays into an XML document for data exchange, configuration, or storage. It is ideal when a programmatic conversion is needed with customizable XML structure such as element and attribute naming.", + "limitations": "This tool does not perform XML schema validation, nor does it transform complex data types like mixed content or namespaces automatically. It assumes input data is simple JSON-compatible objects or arrays.", + "examples": [ + "Generate an XML config file from a JSON object describing app settings.", + "Convert a list of user records in JSON to XML for importing into an XML-based system.", + "Create a well-formed XML feed from structured data with specified root and item element names." + ] + }, + "tags": [ + "etl", + "xml", + "data transformation", + "xml generation", + "json to xml" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"users\":[{\"id\":1,\"name\":\"Alice\"},{\"id\":2,\"name\":\"Bob\"}]},\"rootElementName\":\"Users\",\"itemElementName\":\"User\",\"attributeMapping\":{\"id\":\"userId\"},\"includeDeclaration\":true,\"prettyPrint\":true}", + "description": "Generate XML with users each as element, mapping id field to userId attribute." + }, + { + "inputJson": "{\"inputData\":{\"config\":{\"theme\":\"dark\",\"language\":\"en\"}},\"rootElementName\":\"Config\",\"includeDeclaration\":false,\"prettyPrint\":false}", + "description": "Generate a compact XML config document without XML declaration from flat JSON object." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "etl-processes.createQueue", + "description": "Creates a message queue within a specified infrastructure environment for ETL workflows. Accepts configuration parameters such as queue name, type (e.g., FIFO, standard), retention period, visibility timeout, and encryption settings. Returns a summary of the created queue including identifiers and configuration details.", + "category": "etl-processes", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name for the queue to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "queueType", + "type": "string", + "description": "The type of queue to create, e.g., 'standard' or 'FIFO'.", + "required": true, + "defaultValue": "standard" + }, + { + "name": "retentionPeriodSeconds", + "type": "number", + "description": "Message retention period in seconds (time messages are kept in the queue).", + "required": false, + "defaultValue": "345600" + }, + { + "name": "visibilityTimeoutSeconds", + "type": "number", + "description": "Duration in seconds that a message received from a queue will be invisible to other consumers.", + "required": false, + "defaultValue": "30" + }, + { + "name": "encryptionEnabled", + "type": "boolean", + "description": "Flag indicating whether server-side encryption should be enabled for the queue.", + "required": false, + "defaultValue": "false" + }, + { + "name": "tags", + "type": "object", + "description": "Key-value pairs to tag the queue for identification or billing purposes.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object containing the queue's unique identifier, name, type, configuration details, creation timestamp, and an endpoint URL if applicable." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to provision messaging infrastructure to support ETL pipelines requiring reliable asynchronous data transfer. Use it to dynamically create queues with customized configurations to integrate various data sources and processing stages.", + "limitations": "Does not handle the population of data into the queue or its consumption by downstream services; focuses solely on creation and basic configuration.", + "examples": [ + "Create a FIFO queue named 'etl-data-queue' with message retention of 48 hours and encryption enabled.", + "Set up a standard queue 'task-queue' with default retention and a visibility timeout of 45 seconds.", + "Create a queue with custom tags for billing purposes in the production environment." + ] + }, + "tags": [ + "etl", + "queue", + "infrastructure", + "messaging", + "data-pipeline", + "cloud" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"etl-data-queue\",\"queueType\":\"FIFO\",\"retentionPeriodSeconds\":172800,\"visibilityTimeoutSeconds\":45,\"encryptionEnabled\":true,\"tags\":{\"environment\":\"production\",\"team\":\"analytics\"}}", + "description": "Create a FIFO queue named 'etl-data-queue' with 48 hour retention, 45 seconds visibility timeout, encryption enabled, and tags for production environment and analytics team." + }, + { + "inputJson": "{\"queueName\":\"task-queue\",\"queueType\":\"standard\"}", + "description": "Create a standard queue called 'task-queue' with default retention and visibility timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Queue", + "context": null + } + }, + { + "name": "etl-processes.generateSchema", + "description": "Generates a data schema definition from sample data or field definitions provided. Accepts either raw sample data records (JSON array) or explicit field descriptions, processes them to infer data types, constraints, and relationships, and outputs a standardized schema in JSON Schema or Avro format.", + "category": "etl-processes", + "parameters": [ + { + "name": "sampleData", + "type": "array", + "description": "An array of sample data records to infer the schema from. Each record should be a JSON object with fields and values.", + "required": false, + "defaultValue": "" + }, + { + "name": "fieldDefinitions", + "type": "array", + "description": "Explicit field definitions to build the schema from. Each field includes name, type, and optional constraints.", + "required": false, + "defaultValue": "" + }, + { + "name": "schemaFormat", + "type": "string", + "description": "The output schema format to generate. Supported formats: \"json-schema\", \"avro\".", + "required": true, + "defaultValue": "\"json-schema\"" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example values from sample data in the schema output for clarity.", + "required": false, + "defaultValue": "false" + }, + { + "name": "requiredFields", + "type": "array", + "description": "Optional list of field names to mark as required in the schema; overrides inference from data.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated schema as a string and its format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically create data schemas from example datasets or given field specifications to aid in ETL pipelines, validation, or data integration. Useful when manual schema creation is inefficient or when input data structure is semi-structured or unknown.", + "limitations": "This tool cannot perfectly infer semantic meanings or complex relationships beyond flat or nested structures, nor does it generate business logic or transformations beyond schema definitions.", + "examples": [ + "Generate a JSON Schema from sample user profile records for validation.", + "Create an Avro schema from explicit field definitions for a streaming pipeline.", + "Produce a JSON Schema including example values extracted from sample data." + ] + }, + "tags": [ + "etl", + "schema", + "generate", + "json-schema", + "avro", + "data-validation", + "data-integration" + ], + "examples": [ + { + "inputJson": "{\"sampleData\":[{\"id\":1,\"name\":\"Alice\",\"email\":\"alice@example.com\",\"age\":30}],\"schemaFormat\":\"json-schema\",\"includeExamples\":true}", + "description": "Generate a JSON Schema from a sample array of user records including example values." + }, + { + "inputJson": "{\"fieldDefinitions\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"timestamp\",\"type\":\"string\"},{\"name\":\"value\",\"type\":\"float\"}],\"schemaFormat\":\"avro\",\"requiredFields\":[\"id\",\"timestamp\"]}", + "description": "Create an Avro schema from specified fields marking id and timestamp as required." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Schema", + "context": null + } + }, + { + "name": "etl-processes.createReply", + "description": "This tool accepts an extracted data object representing a communication or query, processes transformation rules or templates on the input, and produces a structured reply message suitable for sending back to the originator. Input includes the original data and optional transformation parameters; output is the constructed reply content with metadata.", + "category": "etl-processes", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "The extracted input data object representing the original message or query to which a reply is needed. Must include fields like sender, message content, and context.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyTemplate", + "type": "string", + "description": "A string template or expression guiding how to transform input data into a reply. Supports placeholders for fields in the inputData object.", + "required": false, + "defaultValue": "\"Thank you for your message. We will get back to you shortly.\"" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Flag indicating whether to include metadata like timestamps and reply IDs in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customReplyFields", + "type": "object", + "description": "Optional object specifying additional fields or overrides to be included in the reply beyond the standard template.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the generated reply message string, recipient information, and optionally metadata such as reply timestamp and a unique reply identifier." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a structured reply message as part of an ETL communication workflow, converting extracted input data into a formatted response, optionally applying templates and metadata. Suitable for automating replies during data ingestion or processing pipelines involving communications.", + "limitations": "This tool does not generate the original input data or perform natural language understanding beyond template substitution. It cannot deduce reply content without provided templates or explicit fields.", + "examples": [ + "Generate a reply to a customer inquiry extracted from email data using a polite, templated message.", + "Produce an automated response for a support ticket entry extracted as JSON, including metadata for tracking.", + "Create a customized reply based on extracted chat log data overriding specific fields in the reply." + ] + }, + "tags": [ + "etl", + "reply", + "communication", + "transformation", + "template", + "messageGeneration" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"sender\":\"john.doe@example.com\",\"message\":\"What is my account balance?\",\"context\":\"account inquiry\"},\"replyTemplate\":\"Dear {{inputData.sender}},\\nThank you for contacting support. Regarding your inquiry: '{{inputData.message}}', we find your current balance is $1,234.56.\",\"includeMetadata\":true}", + "description": "Generate a reply to an account balance inquiry email message using a templated response with metadata included." + }, + { + "inputJson": "{\"inputData\":{\"sender\":\"support@company.com\",\"message\":\"Request received.\",\"context\":\"auto-reply\"},\"replyTemplate\":\"{{inputData.message}} We will process your request shortly.\",\"includeMetadata\":false}", + "description": "Create a simple automated acknowledgement reply without extra metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "etl-processes.createCluster", + "description": "Creates a data processing cluster optimized for ETL workloads. Accepts configuration inputs like node count, node type, and software environment, then provisions and initializes the cluster infrastructure. Outputs cluster metadata including access endpoints, status, and configuration details.", + "category": "etl-processes", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "Unique name identifier for the cluster to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "Number of nodes to provision in the cluster.", + "required": true, + "defaultValue": "3" + }, + { + "name": "nodeType", + "type": "string", + "description": "Type or SKU of nodes to use for the cluster (e.g., standard, high-memory).", + "required": true, + "defaultValue": "standard" + }, + { + "name": "softwareStack", + "type": "array", + "description": "List of software components to install on each node (e.g., Spark, Hadoop, Kafka).", + "required": false, + "defaultValue": "[\"Spark\"]" + }, + { + "name": "region", + "type": "string", + "description": "Geographical region where cluster should be deployed.", + "required": false, + "defaultValue": "us-east-1" + }, + { + "name": "autoScaling", + "type": "boolean", + "description": "Whether to enable automatic scaling of the cluster nodes based on load.", + "required": false, + "defaultValue": "false" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "Amount of storage in GB allocated to each node.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "Metadata about the created cluster including id, status, endpoints, and configuration." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to automate the provisioning of a data processing cluster tailored for ETL workflows, enabling scalable data extraction, transformation, and load operations. It provides structured inputs for cluster sizing and software configuration and returns essential connection details for further orchestration.", + "limitations": "Does not provision clusters outside of supported cloud providers or on-premise hardware. Does not manage ongoing cluster scaling beyond initial configuration.", + "examples": [ + "Create a cluster named 'etl-prod' with 5 high-memory nodes including Spark and Kafka.", + "Provision a standard 3-node cluster in the 'eu-central-1' region with auto-scaling enabled.", + "Initialize a cluster with 10 nodes and 500GB storage per node running a custom software stack." + ] + }, + "tags": [ + "etl", + "cluster", + "provisioning", + "data-pipelines", + "infrastructure", + "automation", + "scalability" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"etl-prod\",\"nodeCount\":5,\"nodeType\":\"high-memory\",\"softwareStack\":[\"Spark\",\"Kafka\"],\"region\":\"us-east-2\",\"autoScaling\":true,\"storageSizeGB\":200}", + "description": "Create a 5-node high-memory ETL cluster with Spark and Kafka in US East (Ohio) region, enabling auto scaling." + }, + { + "inputJson": "{\"clusterName\":\"test-cluster\",\"nodeCount\":3,\"nodeType\":\"standard\",\"softwareStack\":[\"Spark\"],\"region\":\"eu-central-1\",\"autoScaling\":false,\"storageSizeGB\":100}", + "description": "Provision a 3-node standard cluster for testing in EU Central with Spark only and default storage." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cluster", + "context": null + } + }, + { + "name": "etl-processes.createThread", + "description": "Creates a communication thread as part of an ETL process to manage interaction logs or comments related to data processing tasks. Accepts inputs such as thread title, participants, initial message content, and metadata, processes this information to create and store a new discussion thread, and outputs the details of the created thread including a unique thread ID and timestamp.", + "category": "etl-processes", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or subject of the communication thread to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "An array of participant identifiers (e.g., user IDs or emails) who are members of the thread.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "initialMessage", + "type": "string", + "description": "The content of the initial message to start the thread with.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs to attach additional metadata to the thread (e.g., tags, related ETL job ID).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "isPrivate", + "type": "boolean", + "description": "Flag indicating if the thread should be private (visible only to participants).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing threadId (string), title (string), participants (array), createdAt (ISO 8601 timestamp string), initialMessage (string), metadata (object), and isPrivate (boolean), representing the newly created thread." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initiate a new discussion thread related to an ETL process, for example, to log a conversation about a specific data import job or to coordinate team communication around a data transformation task. It helps organize communication linked to ETL workflows in a structured manner.", + "limitations": "This tool does not support updating or deleting threads, managing message replies within threads, or real-time message streaming. It only creates new threads with initial content.", + "examples": [ + "Create a thread titled 'Daily Import Issues' with the data engineering team and an initial message reporting an error.", + "Start a private thread for troubleshooting the monthly aggregation job with select participants.", + "Create a thread tagged with 'ETL' and 'urgent' for immediate attention requests." + ] + }, + "tags": [ + "etl", + "communication", + "thread", + "collaboration", + "logging", + "process management" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Monthly ETL Review\",\"participants\":[\"user1@example.com\",\"user2@example.com\"],\"initialMessage\":\"Let's discuss the outcomes of the latest ETL run.\",\"metadata\":{\"jobId\":\"etl_2024_06\"},\"isPrivate\":false}", + "description": "Creates a public thread titled 'Monthly ETL Review' with two participants and attaches metadata for the related ETL job." + }, + { + "inputJson": "{\"title\":\"ETL Failure Alert\",\"participants\":[\"devteam@example.com\"],\"initialMessage\":\"Immediate investigation required for ETL failure at 3AM.\",\"metadata\":{\"severity\":\"high\"},\"isPrivate\":true}", + "description": "Starts a private urgent thread with the development team to address a critical ETL failure." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "etl-processes.createAttachment", + "description": "Creates a structured attachment entity from provided binary or base64 media data, applying optional metadata and format validation. Accepts file content and properties, then processes and returns a standardized attachment object ready for downstream ETL pipelines or storage.", + "category": "etl-processes", + "parameters": [ + { + "name": "fileName", + "type": "string", + "description": "Name of the attachment file including extension (e.g., 'image.png').", + "required": true, + "defaultValue": "" + }, + { + "name": "contentType", + "type": "string", + "description": "MIME type of the attachment content (e.g., 'image/png').", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "Base64 encoded string or binary string of the attachment content.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs containing metadata about the attachment (e.g., author, date created).", + "required": false, + "defaultValue": "" + }, + { + "name": "validateFormat", + "type": "boolean", + "description": "If true, performs format validation based on contentType and file signature.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSizeBytes", + "type": "number", + "description": "Maximum allowable size of the attachment content in bytes; attachments larger than this will be rejected.", + "required": false, + "defaultValue": "10485760" + } + ], + "returns": { + "type": "object", + "description": "Returns an Attachment object containing the original file name, content type, validated base64 content string, metadata, size in bytes, and timestamp of creation." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a normalized attachment object from raw media content for integration into ETL workflows, ensuring content validity and metadata enrichment for storage or further processing.", + "limitations": "This tool does not perform content extraction, media transcoding, or virus scanning. It only packages and optionally validates raw content and metadata into a standardized attachment format.", + "examples": [ + "Create a PNG image attachment from a base64 string with author metadata.", + "Construct a PDF attachment ensuring the content size is below 10MB before processing.", + "Generate an audio file attachment storing the content type and creation date for archival." + ] + }, + "tags": [ + "etl", + "attachment", + "media", + "file-processing", + "base64", + "validation", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"fileName\":\"report.pdf\",\"contentType\":\"application/pdf\",\"content\":\"JVBERi0xLjQKJ...base64...\",\"metadata\":{\"author\":\"Jane Doe\",\"created\":\"2024-05-10T14:30:00Z\"},\"validateFormat\":true,\"maxSizeBytes\":5242880}", + "description": "Create a PDF attachment from a base64 encoded content string with metadata and validate format, limiting size to 5MB." + }, + { + "inputJson": "{\"fileName\":\"photo.jpg\",\"contentType\":\"image/jpeg\",\"content\":\"/9j/4AAQSkZJRgABAQAAAQABAAD...base64...\",\"metadata\":{\"location\":\"NYC\",\"event\":\"Conference\"},\"validateFormat\":true,\"maxSizeBytes\":10485760}", + "description": "Create a JPEG image attachment with location and event metadata, validate MIME type and signature." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Attachment", + "context": null + } + }, + { + "name": "etl-processes.createDeal", + "description": "Creates a new deal record by extracting data from a source object, transforming fields according to provided mappings and rules, and preparing a standardized deal object suitable for loading into CRM or sales systems. Accepts input data and configuration parameters, then outputs a validated deal object.", + "category": "etl-processes", + "parameters": [ + { + "name": "sourceData", + "type": "object", + "description": "Raw input data object containing deal information extracted from external or internal sources.", + "required": true, + "defaultValue": "" + }, + { + "name": "fieldMappings", + "type": "object", + "description": "Key-value pairs where keys are deal object fields and values are sourceData fields to map from.", + "required": true, + "defaultValue": "" + }, + { + "name": "transformationRules", + "type": "object", + "description": "Optional functions or expressions to transform specific fields during processing (e.g., date formatting, currency conversion).", + "required": false, + "defaultValue": "" + }, + { + "name": "defaultValues", + "type": "object", + "description": "Default values to apply for deal fields if missing in source data.", + "required": false, + "defaultValue": "" + }, + { + "name": "validateData", + "type": "boolean", + "description": "Flag indicating whether to validate the resulting deal object against required schema and business rules.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Standardized deal object with mapped and transformed fields, ready for loading into target systems. May include validation status and error messages if validation is enabled." + }, + "aiAgent": { + "useCase": "Use this tool when ingesting raw deal data from various sales or external sources into a uniform structure for downstream processing or CRM ingestion. It facilitates consistent and validated deal records by applying configurable mappings and transformations.", + "limitations": "This tool does not connect to external data sources directly or persist the created deal to databases; it focuses solely on transforming and validating deal data objects.", + "examples": [ + "Create a deal from a JSON payload received from a web form, mapping form fields to CRM deal fields.", + "Transform and validate sales data exported from a spreadsheet for integration into the CRM.", + "Apply currency conversion and date formatting rules while creating standardized deal records from API responses." + ] + }, + "tags": [ + "etl", + "deal-management", + "data-transformation", + "crm", + "sales-data", + "validation" + ], + "examples": [ + { + "inputJson": "{\"sourceData\":{\"clientName\":\"Acme Corp\",\"amountUSD\":25000,\"closeDate\":\"2024-06-15T00:00:00Z\"},\"fieldMappings\":{\"dealName\":\"clientName\",\"dealAmount\":\"amountUSD\",\"expectedClose\":\"closeDate\"},\"transformationRules\":{\"dealAmount\":\"value => value * 1.1\"},\"defaultValues\":{\"dealStage\":\"prospecting\"},\"validateData\":true}", + "description": "Create a deal by mapping clientName to dealName, converting amountUSD to dealAmount with a 10% increase, mapping closeDate to expectedClose, applying a default stage, and validating the result." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "database-management.analyzeQuote", + "description": "This tool analyzes a textual quote stored in a database record, extracting insights such as sentiment, keyword frequency, and thematic categorizations. It accepts the quote text and optional metadata, performs natural language processing to identify sentiment polarity, key terms, and categorizes the quote by theme, then outputs a structured analysis summarizing these elements.", + "category": "database-management", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The textual content of the quote to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceId", + "type": "string", + "description": "Optional identifier linking the quote to a data source or database record.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the quote text to guide NLP models, defaults to 'en' for English.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to include sentiment analysis results in the output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeKeywords", + "type": "boolean", + "description": "Whether to identify and include keyword frequency analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeThemes", + "type": "boolean", + "description": "Whether to categorize the quote into thematic categories.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A JSON object containing sentiment polarity score, a list of keywords with frequency counts, and assigned thematic categories if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you have a quote stored in a database and want to quickly gain insights about its sentiment, identify important keywords, or organize it thematically for improved content management and retrieval. It aids tasks like content curation, sentiment tracking over time, and tagging quotes for topical analysis.", + "limitations": "This tool does not perform full semantic understanding beyond keyword extraction and categorization and is limited to languages supported by the underlying NLP models. It cannot handle extremely long texts efficiently or provide contextual quote comparisons.", + "examples": [ + "Analyze sentiment and keywords for a quote about innovation in technology.", + "Categorize a motivational quote by theme and extract its keywords.", + "Perform a sentiment and thematic analysis on a short customer testimonial quote." + ] + }, + "tags": [ + "analysis", + "quote", + "database", + "sentiment", + "keyword-extraction", + "thematic-categorization", + "NLP" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"includeSentiment\":true,\"includeKeywords\":true,\"includeThemes\":true}", + "description": "Analyze a motivational quote for sentiment, keywords, and themes." + }, + { + "inputJson": "{\"quoteText\":\"Artificial intelligence will reshape the world as we know it.\",\"language\":\"en\",\"includeSentiment\":true,\"includeKeywords\":true,\"includeThemes\":true}", + "description": "Analyze a technology-related quote for insights and classification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Quote", + "context": null + } + }, + { + "name": "database-management.analyzeChannel", + "description": "Analyzes communication channels within a database to provide insights such as usage frequency, message volume, participant activity, and sentiment trends. Accepts parameters defining the channel identifier, time range, and analysis types. Outputs a structured report summarizing channel statistics and patterns.", + "category": "database-management", + "parameters": [ + { + "name": "channelId", + "type": "string", + "description": "The unique identifier of the communication channel to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date of the analysis period in ISO 8601 format (e.g., 2023-01-01T00:00:00Z).", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date of the analysis period in ISO 8601 format (e.g., 2023-01-31T23:59:59Z).", + "required": false, + "defaultValue": "" + }, + { + "name": "analysisTypes", + "type": "array", + "description": "Array of analysis types to perform, e.g., ['frequency', 'sentiment', 'participantActivity'].", + "required": false, + "defaultValue": "[\"frequency\", \"sentiment\", \"participantActivity\"]" + }, + { + "name": "includeArchived", + "type": "boolean", + "description": "Whether to include data from archived messages and threads in the analysis.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A detailed report object including message counts, participant statistics, sentiment analysis summaries, and usage patterns for the specified channel and period." + }, + "aiAgent": { + "useCase": "Use this tool when you need to assess the activity and engagement metrics of a specific communication channel stored in your database, such as for performance monitoring, user engagement insights, or channel moderation. It's ideal for summarizing historical communication data by period and identifying trends or anomalies.", + "limitations": "This tool depends on the underlying data quality and availability; it cannot analyze data not stored or accessible in the database. Sentiment analysis accuracy depends on the language and context of messages. It does not perform moderation actions or real-time monitoring.", + "examples": [ + "Analyze message volume and participant activity for channel 'channel123' between January 1 and January 31, 2024.", + "Generate a sentiment trend report for 'channel456' including archived messages.", + "Provide basic frequency analysis for channel 'channel789' without a specified date range." + ] + }, + "tags": [ + "database-management", + "channel-analysis", + "communication", + "analytics", + "engagement", + "sentiment", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"channelId\":\"channel123\",\"startDate\":\"2024-01-01T00:00:00Z\",\"endDate\":\"2024-01-31T23:59:59Z\",\"analysisTypes\":[\"frequency\",\"participantActivity\"]}", + "description": "Analyze frequency and participant activity in channel123 during January 2024." + }, + { + "inputJson": "{\"channelId\":\"channel456\",\"analysisTypes\":[\"sentiment\"],\"includeArchived\":true}", + "description": "Analyze sentiment including archived messages in channel456, no date range specified." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Channel", + "context": null + } + }, + { + "name": "database-management.analyzeExpense", + "description": "Analyzes business expense data from a specified database to provide detailed reports including total spend by category, trends over time, and anomalies. Accepts parameters to filter expenses by date range, category, and minimum amount, and returns aggregated summaries and insights to aid financial decision-making.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string or URI to access the expense database (e.g., SQL connection string).", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date for the analysis period in ISO 8601 format (e.g., '2023-01-01').", + "required": false, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date for the analysis period in ISO 8601 format (e.g., '2023-12-31').", + "required": false, + "defaultValue": "" + }, + { + "name": "categories", + "type": "array", + "description": "List of expense categories to include in the analysis (e.g., ['Travel','Supplies']). If empty or omitted, all categories are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "minimumAmount", + "type": "number", + "description": "Minimum expense amount to consider in the analysis. Expenses below this value are ignored.", + "required": false, + "defaultValue": "0" + }, + { + "name": "detectAnomalies", + "type": "boolean", + "description": "Whether to perform anomaly detection to flag unusual expenses.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing aggregated expense reports including total spent, breakdown by category, monthly trends, and detected anomalies if requested." + }, + "aiAgent": { + "useCase": "Use this tool when needing detailed insights into business expenses stored in a database. It helps identify spending patterns over a period, highlight categories with highest costs, and optionally detect outlier expenses that may need review. Suitable for financial analysis, budgeting, and auditing support.", + "limitations": "This tool cannot modify database data or perform real-time streaming analysis. It relies on the accuracy and completeness of the stored data. Anomaly detection is basic and may not catch all irregularities or might produce false positives.", + "examples": [ + "Analyze expense totals and category breakdowns for last quarter.", + "Detect possible expense anomalies for all travel and entertainment categories in the past year.", + "Provide monthly trend analysis for office supplies expenses above $1000." + ] + }, + "tags": [ + "database", + "expense analysis", + "financial reporting", + "business intelligence", + "anomaly detection" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myserver;Database=ExpensesDB;User Id=admin;Password=secret;\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-03-31\",\"categories\":[\"Travel\",\"Meals\"],\"minimumAmount\":50,\"detectAnomalies\":true}", + "description": "Analyze travel and meals expenses from the first quarter of 2023, ignoring expenses below $50 and looking for anomalies." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myserver;Database=ExpensesDB;User Id=admin;Password=secret;\",\"categories\":[],\"detectAnomalies\":false}", + "description": "Generate an overall expense summary report for all categories without anomaly detection." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myserver;Database=ExpensesDB;User Id=admin;Password=secret;\",\"startDate\":\"2023-06-01\",\"endDate\":\"2023-06-30\",\"categories\":[\"Office Supplies\"],\"minimumAmount\":1000}", + "description": "Monthly analysis for office supplies expenses in June 2023, including only expenses over $1000." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Expense", + "context": null + } + }, + { + "name": "database-management.uploadVideo", + "description": "Uploads a video file to a specified database or media repository. Accepts video data as a file path or binary, along with metadata such as title, description, tags, and associated user info. Stores the video in the database and returns a record containing the video's unique ID and storage details.", + "category": "database-management", + "parameters": [ + { + "name": "videoFilePath", + "type": "string", + "description": "Local path to the video file to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "videoBinaryData", + "type": "string", + "description": "Base64 encoded video data as an alternative to file path. Used if videoFilePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Title of the video being uploaded.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description of the video content.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags or keywords to categorize the video.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "userId", + "type": "string", + "description": "Identifier of the user uploading the video.", + "required": false, + "defaultValue": "" + }, + { + "name": "databaseName", + "type": "string", + "description": "Target database or media repository name where video will be stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Flag indicating whether to overwrite a video if a duplicate exists.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with the video's unique ID, confirmation status, storage location URL or path, and any error message if upload failed." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to store or register video files into a structured database or media repository, especially when handling large video datasets or user-generated videos requiring metadata association. It manages file input, metadata, and properly indexes the video for retrieval.", + "limitations": "This tool does not perform video transcoding, format conversion, or validate video content integrity beyond basic file existence. It depends on underlying database support for video storage and size limits.", + "examples": [ + "Upload a video file 'intro.mp4' to the 'UserMediaDB' with title, description, and tags for later retrieval by a social platform.", + "Store base64 encoded video data with user metadata into the corporate media archive database.", + "Overwrite an existing video record if another video with the same title exists in the database." + ] + }, + "tags": [ + "database", + "upload", + "video", + "media-management", + "file-storage", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"videoFilePath\":\"/videos/holiday.mp4\",\"title\":\"Summer Holiday 2023\",\"description\":\"Family trip at the beach.\",\"tags\":[\"family\",\"vacation\",\"beach\"],\"userId\":\"user123\",\"databaseName\":\"MediaDB\",\"overwriteExisting\":false}", + "description": "Upload a local video file with metadata to the MediaDB without overwriting." + }, + { + "inputJson": "{\"videoBinaryData\":\"VGhpcyBpcyBhIGZha2UgdmlkZW8gYmluYXJ5IGRhdGE=\",\"title\":\"FakeVideo\",\"databaseName\":\"MediaDB\"}", + "description": "Upload base64 encoded video binary data directly to the MediaDB." + }, + { + "inputJson": "{\"videoFilePath\":\"/videos/event.mp4\",\"title\":\"Annual Event\",\"databaseName\":\"EventDB\",\"overwriteExisting\":true}", + "description": "Upload a video and overwrite any existing record with the same title in the EventDB." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "database-management.analyzeMarkdown", + "description": "Analyzes Markdown-formatted text containing database schemas or data definitions to extract structural information. Accepts Markdown strings with embedded database tables, schema descriptions, or entity-relationship information. Processes and identifies tables, fields, types, and relationships, returning a structured summary suitable for database documentation or processing pipelines.", + "category": "database-management", + "parameters": [ + { + "name": "markdownContent", + "type": "string", + "description": "The Markdown text input containing database schema or data definitions to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractTables", + "type": "boolean", + "description": "Whether to extract tables defined in Markdown as structured objects.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractRelationships", + "type": "boolean", + "description": "Whether to analyze and extract relationships or references between entities described.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxTables", + "type": "number", + "description": "Maximum number of tables to analyze from the Markdown input to limit output size.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "Structured summary including parsed tables with fields and types, identified relationships, and additional metadata extracted from the Markdown input." + }, + "aiAgent": { + "useCase": "Use this tool when provided with database schema or related information embedded in Markdown documents, such as technical documentation or README files, and when you need to extract structured data representations automatically. It suits database engineers or documentation tools requiring schema analysis from markup sources.", + "limitations": "Cannot interpret non-standard or highly ambiguous Markdown not related to database schemas. It may miss nuanced semantic relationships not explicitly described in the text or Markdown structure.", + "examples": [ + "Analyze this README's schema definitions in Markdown to generate a JSON representation of database tables.", + "Extract the list of tables and their relationships from a technical Markdown document describing a data model.", + "Summarize Markdown-formatted database documentation for ETL pipeline validation." + ] + }, + "tags": [ + "database", + "markdown", + "schema-analysis", + "documentation", + "parsing", + "data-structures" + ], + "examples": [ + { + "inputJson": "{\"markdownContent\":\"# Database Schema\\n\\n## Users Table\\n| Field | Type | Description |\\n|-------|------|-------------|\\n| id | int | Primary key |\\n| name | text | User's name |\\n\\n## Orders Table\\n| Field | Type | Description |\\n|-----------|--------|---------------------|\\n| order_id | int | Order ID (PK) |\\n| user_id | int | Foreign key to Users|\\n| amount | decimal| Order total amount |\",\"extractTables\":true,\"extractRelationships\":true,\"maxTables\":5}", + "description": "Extract tables and relationships from a Markdown document describing a Users and Orders database schema" + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "database-management.downloadVideo", + "description": "This tool facilitates downloading video files stored within a specified database. Users provide the database connection details, the table name, and the unique identifier of the video record. The tool retrieves the video binary data and saves it to a specified file path or returns it as a base64 string for further processing.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string to establish access to the database containing the video records.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the table where video data is stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "videoId", + "type": "string", + "description": "Unique identifier of the video record to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFilePath", + "type": "string", + "description": "Local file path where the video will be saved. If empty, video data is returned as base64 string instead.", + "required": false, + "defaultValue": "" + }, + { + "name": "videoColumnName", + "type": "string", + "description": "Name of the column that contains the video binary data in the table.", + "required": false, + "defaultValue": "video_data" + } + ], + "returns": { + "type": "object", + "description": "Returns an object indicating success status and either the saved file path or the base64 encoded video data as a string." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to extract or retrieve video files stored as binary blobs within a database for offline processing, playback, or archiving. This is especially useful in media management, digital asset mining, or content migration scenarios where videos are stored inside database tables rather than separate file systems.", + "limitations": "This tool cannot stream videos or support partial downloads. It requires correct database credentials and access permissions. It does not handle video format conversion or corruption fixes. Very large video files may impact memory when returned as base64 strings.", + "examples": [ + "Download a video by ID from a PostgreSQL database and save it locally.", + "Retrieve a video stored in a MySQL database and return it as base64 for embedding in a report.", + "Fetch video data where the video binary column name differs from default 'video_data'." + ] + }, + "tags": [ + "database", + "video", + "download", + "media", + "binary", + "blob", + "dataRetrieval" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=mydbserver;Database=mediaDB;User Id=admin;Password=secret;\",\"tableName\":\"videos\",\"videoId\":\"vid12345\",\"outputFilePath\":\"/videos/output/vid12345.mp4\"}", + "description": "Download the video with ID 'vid12345' from the 'videos' table and save to local path." + }, + { + "inputJson": "{\"connectionString\":\"Server=mydb;Database=mediaDB;User Id=user;Password=pwd;\",\"tableName\":\"video_assets\",\"videoId\":\"asset001\",\"outputFilePath\":\"\"}", + "description": "Retrieve video binary data as a base64 string from 'video_assets' table without saving to file." + }, + { + "inputJson": "{\"connectionString\":\"Server=localhost;Database=mediaDB;User Id=admin;Password=admin123;\",\"tableName\":\"media_store\",\"videoId\":\"a1b2c3\",\"outputFilePath\":\"/tmp/video_a1b2c3.mov\",\"videoColumnName\":\"video_blob\"}", + "description": "Download a video where the binary data column is named 'video_blob' and save locally as .mov." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "database-management.downloadTable", + "description": "This tool connects to a specified relational database, queries a table with optional filtering and pagination, and downloads the resulting data in CSV or JSON format. It accepts connection parameters, table name, optional SQL WHERE clause, limit, offset, and output format, then returns the extracted data file content as a string.", + "category": "database-management", + "parameters": [ + { + "name": "dbType", + "type": "string", + "description": "Type of the database (e.g., 'postgresql', 'mysql', 'mssql') to determine driver and syntax.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Database connection string or URI to establish connection.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the table to download data from.", + "required": true, + "defaultValue": "" + }, + { + "name": "whereClause", + "type": "string", + "description": "Optional SQL WHERE clause to filter rows (without 'WHERE' keyword).", + "required": false, + "defaultValue": "" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of rows to download; if omitted, downloads all rows.", + "required": false, + "defaultValue": "" + }, + { + "name": "offset", + "type": "number", + "description": "Number of rows to skip before starting to download, for pagination.", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format to download data in: 'csv' or 'json'.", + "required": true, + "defaultValue": "csv" + } + ], + "returns": { + "type": "object", + "description": "An object containing the downloaded table data as a string, and metadata like format and row count." + }, + "aiAgent": { + "useCase": "Use this tool when needing to extract data from a database table for offline analysis, reporting, or data transfer. Especially useful for agents automating data exports with filtering, pagination, and format control.", + "limitations": "Cannot handle complex joins or queries beyond single-table with optional WHERE filters; depends on accessible database credentials and network. No direct support for binary or BLOB data extraction.", + "examples": [ + "Download all data from 'users' table in PostgreSQL as CSV.", + "Download 100 rows of 'orders' table where status='shipped' in MySQL as JSON.", + "Download records from Oracle DB 'employees' table, skipping first 200 rows, output as CSV." + ] + }, + "tags": [ + "database", + "download", + "export", + "table", + "csv", + "json", + "filter", + "pagination" + ], + "examples": [ + { + "inputJson": "{\"dbType\":\"postgresql\",\"connectionString\":\"postgres://user:pass@localhost:5432/mydb\",\"tableName\":\"customers\",\"whereClause\":\"country='USA'\",\"limit\":1000,\"offset\":0,\"outputFormat\":\"csv\"}", + "description": "Download up to 1000 customer records from PostgreSQL where country is USA, output in CSV." + }, + { + "inputJson": "{\"dbType\":\"mysql\",\"connectionString\":\"mysql://user:pass@dbserver:3306/shop\",\"tableName\":\"orders\",\"whereClause\":\"status='completed'\",\"limit\":500,\"offset\":10,\"outputFormat\":\"json\"}", + "description": "Download 500 completed orders from MySQL shop database starting from 11th record, output in JSON." + }, + { + "inputJson": "{\"dbType\":\"mssql\",\"connectionString\":\"Server=myServer;Database=myDB;User Id=user;Password=pass;\",\"tableName\":\"employees\",\"whereClause\":\"department='HR'\",\"limit\":100,\"offset\":0,\"outputFormat\":\"csv\"}", + "description": "Download first 100 employees in HR department from MS SQL Server as CSV." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Table", + "context": null + } + }, + { + "name": "database-management.analyzeYAML", + "description": "Analyzes YAML-formatted configuration or schema files related to database management, extracting structural information such as table definitions, relationships, keys, and constraints. Accepts a YAML string input, parses it to identify database components, and outputs a structured report summarizing database schema elements and potential inconsistencies or alerts.", + "category": "database-management", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML string content representing database schema or configuration to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRelationships", + "type": "boolean", + "description": "Whether to include analysis of relationships such as foreign keys between tables.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectInconsistencies", + "type": "boolean", + "description": "Whether to check and report potential schema inconsistencies or common errors.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxDepth", + "type": "number", + "description": "Maximum depth level for nested YAML structures to analyze to avoid excessively deep recursion.", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "An object containing summaries of tables, columns, keys, relationships, constraints, and any detected inconsistencies or warnings discovered in the YAML schema." + }, + "aiAgent": { + "useCase": "Use this tool when you have database schema or configuration defined in YAML and need to programmatically extract structural metadata such as tables, columns, keys, constraints, and identify potential schema issues to automate documentation or validation workflows.", + "limitations": "Cannot interpret binary or non-YAML formats; analysis is limited to schema elements explicitly defined in the YAML; complex domain-specific semantics may not be fully understood.", + "examples": [ + "Analyze a YAML DB schema to extract table and key information for documentation.", + "Check a YAML config for missing keys or inconsistencies in table definitions.", + "Generate a summary report of schema components from a YAML database configuration." + ] + }, + "tags": [ + "database", + "YAML", + "schema-analysis", + "configuration", + "validation", + "metadata", + "parsing" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"tables:\\n users:\\n columns:\\n id:\\n type: integer\\n primaryKey: true\\n email:\\n type: string\\n unique: true\\n profile_id:\\n type: integer\\n relationships:\\n profile_id:\\n references: profiles.id\\n profiles:\\n columns:\\n id:\\n type: integer\\n primaryKey: true\\n bio:\\n type: text\\nincludeRelationships:true,detectInconsistencies:true,maxDepth:10\"", + "description": "Input YAML content describes two tables with columns and relationships; expects output summarizing schema details and relationships." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "database-management.sendReply", + "description": "Sends a reply message linked to a specific database record or query context. It accepts parameters to specify the target record identifier, reply content, optional metadata about the sender, and the database connection info. The tool processes these inputs by validating the record presence, appending the reply to a designated replies table or log, and returns a status confirming successful dispatch and storage of the reply.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string or URI for accessing the target database where replies are stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "recordId", + "type": "string", + "description": "Unique identifier of the database record to which this reply is related.", + "required": true, + "defaultValue": "" + }, + { + "name": "replyContent", + "type": "string", + "description": "The textual content of the reply message to be sent and stored.", + "required": true, + "defaultValue": "" + }, + { + "name": "senderInfo", + "type": "object", + "description": "An object containing optional information about the sender such as name, userID, or role.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted datetime string specifying when the reply was created; defaults to current time if not provided.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object indicating the success status, the unique reply ID created, and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to send and log a reply or comment linked to a specific database record, such as responding to a support ticket, appending notes to a customer profile, or adding audit trail comments. It ensures reply consistency and traceability within database systems.", + "limitations": "This tool cannot initiate communications outside the database system or directly notify users; it only records replies linked to database entries. It requires a valid and accessible database connection and appropriate permissions.", + "examples": [ + "Send a reply comment to ticket ID 12345 in the customer support database.", + "Append a system-generated note to order record ABC987 in the orders table.", + "Log moderator feedback linked to user record U456 with sender identification." + ] + }, + "tags": [ + "database", + "reply", + "comment", + "record", + "message", + "logging", + "communication" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=mydbserver;Database=SupportDB;User Id=admin;Password=pwd;\",\"recordId\":\"ticket12345\",\"replyContent\":\"We have resolved your issue, please confirm.\",\"senderInfo\":{\"name\":\"SupportAgent1\"},\"timestamp\":\"2024-06-01T14:30:00Z\"}", + "description": "Send a support agent's reply message linked to a particular ticket record in the support database." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myorders;Database=OrdersDB;User Id=admin;Password=pwd;\",\"recordId\":\"orderXYZ890\",\"replyContent\":\"Order has been shipped today.\",\"senderInfo\":{\"name\":\"System\",\"role\":\"automated\"}}", + "description": "Add an automated shipping update reply to an order record without explicit timestamp, using current time." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Reply", + "context": null + } + }, + { + "name": "database-management.sendThread", + "description": "Sends a communication thread containing messages to a specified database channel or thread-enabled storage. Accepts thread metadata and message contents, processes data by formatting and validating, then stores it in the targeted database system. Returns confirmation with thread ID and status.", + "category": "database-management", + "parameters": [ + { + "name": "databaseId", + "type": "string", + "description": "Unique identifier of the target database where the thread will be sent.", + "required": true, + "defaultValue": "" + }, + { + "name": "channelId", + "type": "string", + "description": "Identifier of the database channel or collection to which the thread belongs.", + "required": true, + "defaultValue": "" + }, + { + "name": "threadTitle", + "type": "string", + "description": "Title or subject of the thread, describing its context or topic.", + "required": true, + "defaultValue": "" + }, + { + "name": "messages", + "type": "array", + "description": "Array of message objects forming the thread. Each message includes senderId, timestamp, and text content.", + "required": true, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata for the thread such as tags, priority, or custom attributes.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Result status object containing sentThreadId, success boolean, and optional error messages if any." + }, + "aiAgent": { + "useCase": "Use this tool when needing to send or store a structured conversation thread into a database system that organizes communications by threads or channels, such as team collaboration databases or customer support logs.", + "limitations": "Does not create new database or channels; requires existing database and channel IDs. Cannot send real-time messages; operates in batch storage context.", + "examples": [ + "Send a support conversation thread to the customer support database channel.", + "Store a project discussion thread to a shared team database channel.", + "Submit a sequence of chat messages under a titled thread for archival in a business communication database." + ] + }, + "tags": [ + "database", + "communication", + "threading", + "message storage", + "database channel", + "data send" + ], + "examples": [ + { + "inputJson": "{\"databaseId\":\"db-12345\",\"channelId\":\"chan-9876\",\"threadTitle\":\"Customer Support Issue #452\",\"messages\":[{\"senderId\":\"user-1\",\"timestamp\":1685400000,\"text\":\"Initial complaint message.\"},{\"senderId\":\"agent-42\",\"timestamp\":1685400600,\"text\":\"Acknowledged receipt, investigating.\"}],\"metadata\":{\"priority\":\"high\",\"tags\":[\"support\",\"urgent\"]}}", + "description": "Send a customer support conversation thread with two messages and metadata to a support database channel." + }, + { + "inputJson": "{\"databaseId\":\"projectDB\",\"channelId\":\"dev-discussions\",\"threadTitle\":\"Feature X design discussion\",\"messages\":[{\"senderId\":\"devA\",\"timestamp\":1685401000,\"text\":\"Proposed architecture update.\"},{\"senderId\":\"devB\",\"timestamp\":1685401200,\"text\":\"Agreed, looks good.\"}],\"metadata\":{}}", + "description": "Store a project discussion thread with developer messages into the development discussions channel." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Thread", + "context": null + } + }, + { + "name": "database-management.renderParagraph", + "description": "This tool accepts a database query result object and renders a descriptive, human-readable paragraph summarizing key insights or data points from the results. It extracts relevant fields and statistics, then composes a coherent narrative paragraph detailing the query output.", + "category": "database-management", + "parameters": [ + { + "name": "queryResult", + "type": "object", + "description": "The database query result data to be summarized and rendered into a paragraph. This includes rows and associated metadata.", + "required": true, + "defaultValue": "" + }, + { + "name": "highlightFields", + "type": "array", + "description": "An array of field names to emphasize in the rendered paragraph for clarity and focus.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum character length of the output paragraph to ensure concise rendering.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeStatistics", + "type": "boolean", + "description": "Whether to include simple statistics (e.g., counts, averages) in the paragraph summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the rendered paragraph as a string under 'paragraph', along with metadata like character count." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to convert structured database query outputs into natural language paragraphs for summarization, reporting, or communication purposes. Ideal when presenting data insights to non-technical users or generating textual summaries from raw results.", + "limitations": "This tool does not perform the actual database querying; it only processes given result data to render paragraphs. It may not capture complex statistical or relational insights beyond basic summarization.", + "examples": [ + "Generate a concise paragraph summary from sales data query results.", + "Create a human-readable paragraph highlighting key fields from the recent user activity logs.", + "Compose a summary paragraph of inventory database query results emphasizing stock levels." + ] + }, + "tags": [ + "database", + "rendering", + "summary", + "natural-language", + "paragraph", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"queryResult\":{\"rows\":[{\"product\":\"Widget A\",\"unitsSold\":120,\"revenue\":2400},{\"product\":\"Widget B\",\"unitsSold\":80,\"revenue\":1600}],\"rowCount\":2},\"highlightFields\":[\"product\",\"unitsSold\"],\"maxLength\":300,\"includeStatistics\":true}", + "description": "Summarize sales data focusing on product names and units sold, including statistics, limited to 300 characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Paragraph", + "context": null + } + }, + { + "name": "database-management.renderSummary", + "description": "Generates a concise textual summary report about a specified database schema or query results. Accepts database connection details along with a target schema or query, analyzes table structures, indexes, and/or query output, then produces a human-readable summary highlighting key statistics, relationships, and data insights.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string used to connect and retrieve metadata or query results.", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaName", + "type": "string", + "description": "Name of the database schema to analyze and summarize. Required if query is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "SQL query string to execute and summarize its result set. Optional; overrides schemaName if provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeIndexes", + "type": "boolean", + "description": "Whether to include index details in the summary report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary text in characters.", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summary text and metadata about the analysis." + }, + "aiAgent": { + "useCase": "Use this tool when an agent needs to provide an overview or documentation of database structures or query outputs without manual inspection, facilitating quick understanding of data models, table relationships, or query results.", + "limitations": "Cannot perform detailed data profiling or content analysis beyond metadata and aggregate statistics; not suitable for very large schemas without performance impact.", + "examples": [ + "Summarize the structure of the 'sales' schema including tables and indexes.", + "Generate a summary report for the results returned by a complex SQL query.", + "Provide an overview of database schema for documentation purposes." + ] + }, + "tags": [ + "database", + "summary", + "report", + "schema-analysis", + "query-results" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=myserver;Database=mydb;User Id=admin;Password=pass;\",\"schemaName\":\"public\",\"includeIndexes\":true,\"maxSummaryLength\":500}", + "description": "Generate a summary report for the 'public' schema including indexes with a summary length limit of 500 characters." + }, + { + "inputJson": "{\"connectionString\":\"Server=myserver;Database=mydb;User Id=admin;Password=pass;\",\"query\":\"SELECT * FROM orders WHERE order_date > '2023-01-01'\",\"includeIndexes\":false,\"maxSummaryLength\":1000}", + "description": "Generate a summary of the result set from a specific query without including index info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Summary", + "context": null + } + }, + { + "name": "database-management.draftInvoice", + "description": "Generates a draft invoice document by compiling client details, a list of billed items, tax rates, and payment terms. Accepts structured inputs to calculate totals and apply taxes, producing a formatted invoice object ready for review or database insertion.", + "category": "database-management", + "parameters": [ + { + "name": "clientId", + "type": "string", + "description": "Unique identifier of the client to whom the invoice will be issued.", + "required": true, + "defaultValue": "" + }, + { + "name": "invoiceDate", + "type": "string", + "description": "The date the invoice is issued in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "dueDate", + "type": "string", + "description": "Payment due date for the invoice in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "items", + "type": "array", + "description": "List of items/services billed, each with description, quantity, and unit price.", + "required": true, + "defaultValue": "" + }, + { + "name": "taxRate", + "type": "number", + "description": "Applicable tax rate as a decimal (e.g., 0.07 for 7%).", + "required": false, + "defaultValue": "0" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code for the invoice amounts (e.g., USD, EUR). Defaults to USD.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "paymentTerms", + "type": "string", + "description": "Text describing payment terms (e.g., 'Net 30 days').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A structured invoice draft including client info, itemized charges, subtotal, tax amount, total due, currency, invoice and due dates, and payment terms." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a detailed draft invoice combining multiple data sources such as client info and billing items before finalizing and storing it in a database or sending to clients. It automates calculation of totals and tax application, ensuring accurate invoice generation.", + "limitations": "Does not validate client existence in the database or perform payment processing. It creates a draft only, not a finalized or signed invoice.", + "examples": [ + "Create a draft invoice for client ID 'C1001' dated 2024-05-15 with three billed items and 5% tax.", + "Generate a draft invoice with no tax for a freelance project with specified payment terms.", + "Draft an invoice in EUR currency with due date 30 days after invoice date." + ] + }, + "tags": [ + "database", + "invoice", + "billing", + "document-generation", + "finance", + "drafting", + "accounting" + ], + "examples": [ + { + "inputJson": "{\"clientId\":\"C1001\",\"invoiceDate\":\"2024-05-15\",\"dueDate\":\"2024-06-14\",\"items\":[{\"description\":\"Consulting services\",\"quantity\":10,\"unitPrice\":150},{\"description\":\"Software license\",\"quantity\":1,\"unitPrice\":1200}],\"taxRate\":0.07,\"currency\":\"USD\",\"paymentTerms\":\"Net 30 days\"}", + "description": "Draft an invoice with two line items including tax and payment terms." + }, + { + "inputJson": "{\"clientId\":\"F2002\",\"invoiceDate\":\"2024-05-20\",\"items\":[{\"description\":\"Graphic design work\",\"quantity\":15,\"unitPrice\":75}],\"taxRate\":0,\"currency\":\"USD\"}", + "description": "Create a tax-free draft invoice without specifying due date or payment terms." + }, + { + "inputJson": "{\"clientId\":\"I3003\",\"invoiceDate\":\"2024-06-01\",\"dueDate\":\"2024-06-30\",\"items\":[{\"description\":\"Consultation\",\"quantity\":5,\"unitPrice\":200}],\"taxRate\":0.2,\"currency\":\"EUR\",\"paymentTerms\":\"Due upon receipt\"}", + "description": "Generate a Euro currency invoice with 20% VAT and immediate payment terms." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Invoice", + "context": null + } + }, + { + "name": "database-management.formatLink", + "description": "This tool accepts a database connection string or URL containing credentials and connection parameters, validates and formats it into a standardized, human-readable form. It outputs a cleaned, formatted link string suitable for display, logging or configuration purposes, optionally masking sensitive info like passwords.", + "category": "database-management", + "parameters": [ + { + "name": "link", + "type": "string", + "description": "The raw database connection link or URL string to be formatted and normalized.", + "required": true, + "defaultValue": "" + }, + { + "name": "maskSensitive", + "type": "boolean", + "description": "If true, sensitive information such as passwords in the link will be masked with asterisks.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output format for the link: 'standard' for normalized URL, 'pretty' for multi-line readable display.", + "required": false, + "defaultValue": "standard" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted link string and metadata about the formatting process" + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert raw or irregular database connection strings into a consistent, user-friendly format for display, documentation, or logging, especially when handling credentials that should be masked. It assists in improving readability and ensuring uniform link presentation across systems.", + "limitations": "This tool does not validate the actual ability to connect to the database, nor does it parse or restructure custom or non-standard database link formats. It only formats and masks within known URL patterns.", + "examples": [ + "Format a raw PostgreSQL connection string masking the password.", + "Convert a MySQL link into a pretty multi-line display with masked credentials.", + "Standardize and mask a MongoDB URI." + ] + }, + "tags": [ + "database", + "formatting", + "link", + "connection-string", + "security", + "normalization" + ], + "examples": [ + { + "inputJson": "{\"link\":\"postgres://user:secretpass@localhost:5432/mydb?sslmode=disable\",\"maskSensitive\":true,\"outputFormat\":\"standard\"}", + "description": "Format a PostgreSQL connection link with password masked." + }, + { + "inputJson": "{\"link\":\"mysql://admin:admin123@db.example.com:3306/shop\",\"maskSensitive\":true,\"outputFormat\":\"pretty\"}", + "description": "Pretty format a MySQL connection string with masked password." + }, + { + "inputJson": "{\"link\":\"mongodb+srv://cluster0.mongodb.net/mydb?retryWrites=true&w=majority\",\"maskSensitive\":false,\"outputFormat\":\"standard\"}", + "description": "Standard format MongoDB SRV connection URI without masking." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Link", + "context": null + } + }, + { + "name": "database-management.formatComponent", + "description": "Formats a database schema component or query snippet by applying consistent indentation, line breaks, and keyword casing. Accepts SQL or JSON schema components as input and outputs a well-structured, human-readable formatted string.", + "category": "database-management", + "parameters": [ + { + "name": "componentType", + "type": "string", + "description": "Type of component to format, e.g., 'SQLQuery', 'JSONSchema'", + "required": true, + "defaultValue": "" + }, + { + "name": "componentContent", + "type": "string", + "description": "The raw component code or text to format", + "required": true, + "defaultValue": "" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output", + "required": false, + "defaultValue": "2" + }, + { + "name": "keywordCase", + "type": "string", + "description": "Case style for keywords (e.g., 'upper', 'lower', 'capitalize')", + "required": false, + "defaultValue": "upper" + }, + { + "name": "lineWidth", + "type": "number", + "description": "Maximum line width before wrapping (0 means no forced wrapping)", + "required": false, + "defaultValue": "80" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted component as a string under 'formattedContent' property" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to present or store formatted, readable database components such as SQL queries or JSON schema snippets, ensuring consistent style and readability. It is especially useful for generating code snippets in documentation, reports, or user interfaces where clarity and formatting consistency are important.", + "limitations": "Does not validate syntactic correctness beyond formatting. It cannot perform semantic analysis or fix syntax errors. It only supports limited component types (SQLQuery, JSONSchema) and does not handle full database schemas or other database languages like PL/SQL, T-SQL, or NoSQL dialects.", + "examples": [ + "Format a raw SQL query snippet with 4 spaces indentation and uppercase keywords.", + "Format a JSON schema snippet with 2 spaces indentation and default settings.", + "Format a SQL snippet with lowercase keywords and line width set to 100 characters." + ] + }, + "tags": [ + "formatting", + "database", + "SQL", + "JSON", + "code-style", + "schema" + ], + "examples": [ + { + "inputJson": "{\"componentType\":\"SQLQuery\",\"componentContent\":\"select id,name from users where active=1 order by name\",\"indentationSpaces\":4,\"keywordCase\":\"upper\",\"lineWidth\":80}", + "description": "Format a simple SQL select query with 4 spaces indentation and uppercase keywords." + }, + { + "inputJson": "{\"componentType\":\"JSONSchema\",\"componentContent\":\"{\\\"type\\\":\\\"object\\\",\\\"properties\\\":{\\\"id\\\":{\\\"type\\\":\\\"integer\\\"},\\\"name\\\":{\\\"type\\\":\\\"string\\\"}}}\",\"indentationSpaces\":2,\"keywordCase\":\"lower\"}", + "description": "Format a JSON schema snippet with 2 spaces indentation and lowercase keywords." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Component", + "context": null + } + }, + { + "name": "database-management.draftParagraph", + "description": "Generates a coherent explanatory paragraph describing database content based on a provided database schema or query result summary. Accepts schema definitions or data summaries, analyzes structure or results, and outputs a detailed textual paragraph suitable for documentation or report purposes.", + "category": "database-management", + "parameters": [ + { + "name": "schemaDescription", + "type": "string", + "description": "A textual description of the database schema including tables, columns, and relationships. Provide either this or querySummary, but one is required.", + "required": false, + "defaultValue": "" + }, + { + "name": "querySummary", + "type": "string", + "description": "A summary or description of query results or dataset content to generate paragraph about. Provide either this or schemaDescription, at least one required.", + "required": false, + "defaultValue": "" + }, + { + "name": "focusArea", + "type": "string", + "description": "Specific aspect to emphasize such as relationships, data trends, or constraints. Optional to guide paragraph focus.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language in which to generate the paragraph, e.g., 'English' or 'Spanish'. Defaults to English.", + "required": false, + "defaultValue": "English" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in words) for the generated paragraph. Defaults to 150 words.", + "required": false, + "defaultValue": "150" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated descriptive paragraph as a single string under 'paragraph'." + }, + "aiAgent": { + "useCase": "This tool is useful when an AI agent needs to create human-readable documentation, reports, or explanations about database schemas or query results. For example, generating an overview paragraph describing the tables and their relations or explaining the observed data in query output to non-technical readers.", + "limitations": "The tool cannot replace detailed technical documentation that requires complex code examples or exhaustive schema details. It also cannot provide exact query code or perform live data analysis; it generates descriptive text based solely on input summaries.", + "examples": [ + "Generate a paragraph explaining the tables and foreign key relationships in a given schema description.", + "Create a summary paragraph describing the results of a sales query output focusing on trends.", + "Draft an overview paragraph emphasizing constraints and data types from the schema description." + ] + }, + "tags": [ + "database", + "documentation", + "summary", + "schema", + "query", + "paragraph", + "explanation" + ], + "examples": [ + { + "inputJson": "{\"schemaDescription\":\"The database contains three tables: Customers with customer_id, name, and contact details; Orders with order_id, customer_id, order_date; and Products with product_id and price. Customers and Orders are linked via customer_id.\",\"language\":\"English\",\"maxLength\":120}", + "description": "Draft a paragraph describing the given schema's tables and relationships in English, max 120 words." + }, + { + "inputJson": "{\"querySummary\":\"The sales report query returns that product A has the highest sales, product B saw a 10% decrease, and orders peaked in December.\",\"focusArea\":\"sales trends\",\"language\":\"English\",\"maxLength\":150}", + "description": "Generate a paragraph focusing on sales trends from the given query summary." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Paragraph", + "context": null + } + }, + { + "name": "database-management.formatArticle", + "description": "This tool accepts an article stored as a database record, including its raw text and metadata, and formats it into a structured, clean HTML or Markdown string. It processes elements like headings, paragraphs, lists, images, and links to produce a properly formatted article output for display or publishing.", + "category": "database-management", + "parameters": [ + { + "name": "articleId", + "type": "string", + "description": "The unique identifier of the article record to format from the database.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired formatting output: 'html' or 'markdown'.", + "required": true, + "defaultValue": "html" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include article metadata (author, date, tags) in the formatted output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxContentLength", + "type": "number", + "description": "Maximum number of characters from the article content to include in the output. Use 0 for no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "sanitizeHtml", + "type": "boolean", + "description": "For HTML output, whether to sanitize the HTML to remove unsafe tags and attributes.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted article string and metadata info if requested." + }, + "aiAgent": { + "useCase": "Use this tool when the AI needs to convert raw article data from a database into clean, well-structured HTML or Markdown for display or publishing, including optional metadata. It is ideal for content management systems or automated reporting where articles must be presented nicely.", + "limitations": "This tool does not fetch or query the article record itself; the articleId must reference an existing record accessible by the system. It only formats the given article content and metadata; it cannot generate new content or correct article errors.", + "examples": [ + "Format article 'abc123' into HTML including metadata for website display.", + "Generate a Markdown version of a specific article without including metadata.", + "Create an HTML snippet of an article limited to first 500 characters, sanitized for safe embedding." + ] + }, + "tags": [ + "database", + "formatting", + "article", + "content-management", + "html", + "markdown" + ], + "examples": [ + { + "inputJson": "{\"articleId\":\"abc123\",\"outputFormat\":\"html\",\"includeMetadata\":true,\"maxContentLength\":0,\"sanitizeHtml\":true}", + "description": "Format the full article 'abc123' as sanitized HTML including metadata." + }, + { + "inputJson": "{\"articleId\":\"xyz789\",\"outputFormat\":\"markdown\",\"includeMetadata\":false,\"maxContentLength\":1000,\"sanitizeHtml\":false}", + "description": "Format up to 1000 characters of article 'xyz789' as Markdown excluding metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Article", + "context": null + } + }, + { + "name": "database-management.composeLink", + "description": "This tool accepts parameters describing two database tables and their relationship keys, then composes a valid SQL JOIN link clause connecting these tables. It processes input details such as table names, join type, and join keys, and outputs a string representing the SQL JOIN condition for composing efficient multi-table queries.", + "category": "database-management", + "parameters": [ + { + "name": "leftTable", + "type": "string", + "description": "Name of the left-side table in the join clause.", + "required": true, + "defaultValue": "" + }, + { + "name": "rightTable", + "type": "string", + "description": "Name of the right-side table to join.", + "required": true, + "defaultValue": "" + }, + { + "name": "leftKey", + "type": "string", + "description": "Column name in the left table to join on.", + "required": true, + "defaultValue": "" + }, + { + "name": "rightKey", + "type": "string", + "description": "Column name in the right table to join on.", + "required": true, + "defaultValue": "" + }, + { + "name": "joinType", + "type": "string", + "description": "Type of SQL join to compose, such as INNER, LEFT, RIGHT, or FULL.", + "required": false, + "defaultValue": "INNER" + }, + { + "name": "aliasLeftTable", + "type": "string", + "description": "Optional alias for the left table in the join statement.", + "required": false, + "defaultValue": "" + }, + { + "name": "aliasRightTable", + "type": "string", + "description": "Optional alias for the right table in the join statement.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed SQL JOIN clause as a string under 'joinClause' key." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate precise SQL JOIN clauses dynamically between two tables for composing multi-table queries in database management contexts. It helps automate SQL generation based on table names and join keys, improving efficiency in query construction tasks.", + "limitations": "The tool generates JOIN clauses for two tables only and does not validate table or column existence in the database schema. It does not handle complex multi-join or nested query composition.", + "examples": [ + "Join the 'Users' and 'Orders' tables on 'UserID' with a LEFT JOIN.", + "Compose an INNER JOIN between 'Products' and 'Categories' using 'CategoryID'.", + "Create a RIGHT JOIN between 'Employees' and 'Departments' with aliases 'e' and 'd'." + ] + }, + "tags": [ + "database", + "SQL", + "join", + "compose", + "query", + "table", + "management" + ], + "examples": [ + { + "inputJson": "{\"leftTable\":\"Users\",\"rightTable\":\"Orders\",\"leftKey\":\"UserID\",\"rightKey\":\"UserID\",\"joinType\":\"LEFT\"}", + "description": "Compose a LEFT JOIN clause between Users and Orders on UserID columns." + }, + { + "inputJson": "{\"leftTable\":\"Products\",\"rightTable\":\"Categories\",\"leftKey\":\"CategoryID\",\"rightKey\":\"CategoryID\",\"joinType\":\"INNER\"}", + "description": "Compose an INNER JOIN clause between Products and Categories on CategoryID." + }, + { + "inputJson": "{\"leftTable\":\"Employees\",\"rightTable\":\"Departments\",\"leftKey\":\"DepartmentID\",\"rightKey\":\"ID\",\"joinType\":\"RIGHT\",\"aliasLeftTable\":\"e\",\"aliasRightTable\":\"d\"}", + "description": "Compose a RIGHT JOIN clause between Employees (alias e) and Departments (alias d) on DepartmentID and ID columns." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Link", + "context": null + } + }, + { + "name": "database-management.composeComment", + "description": "This tool accepts parameters including the database table name, record identifier, author details, and comment content to compose a structured comment entry for that record. It processes input to validate mandatory fields and formats the comment data ready for insertion or update in the specified database. The output is a JSON object representing the composed comment with metadata, suitable for database storage or further processing.", + "category": "database-management", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "The name of the database table where the comment will be associated.", + "required": true, + "defaultValue": "" + }, + { + "name": "recordId", + "type": "string", + "description": "The unique identifier of the record to which the comment is linked.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorId", + "type": "string", + "description": "Identifier or username of the comment author.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "Display name of the comment author.", + "required": false, + "defaultValue": "" + }, + { + "name": "commentText", + "type": "string", + "description": "The text content of the comment.", + "required": true, + "defaultValue": "" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 formatted timestamp representing when the comment was composed. If not provided, current time is used.", + "required": false, + "defaultValue": "" + }, + { + "name": "parentCommentId", + "type": "string", + "description": "Optional identifier of the parent comment if this is a reply.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the composed comment including fields like commentId, tableName, recordId, authorId, commentText, timestamp, and optionally parentCommentId." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create or prepare a comment entry linked to a specific database record for insertion or update. It ensures all required fields for comment creation are gathered and structured consistently for database management workflows.", + "limitations": "This tool does not perform the actual database insertion or update operation; it only composes and formats the comment data structure. It also does not validate database schema or permissions.", + "examples": [ + "Compose a comment for record 789 in the Tickets table by user123 with the text 'Issue resolved as per the latest update.'", + "Create a reply comment linked to comment 456 on the Orders table for author Jane_Doe with explanatory details.", + "Prepare a new comment with current timestamp for record 101 in the Products table authored by admin user." + ] + }, + "tags": [ + "database", + "comment", + "compose", + "record", + "metadata", + "communication", + "management" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"Tickets\",\"recordId\":\"789\",\"authorId\":\"user123\",\"authorName\":\"John Smith\",\"commentText\":\"Issue resolved as per the latest update.\",\"timestamp\":\"2024-06-01T12:30:00Z\"}", + "description": "Compose a comment on the Tickets table record with specified author and timestamp." + }, + { + "inputJson": "{\"tableName\":\"Orders\",\"recordId\":\"234\",\"authorId\":\"Jane_Doe\",\"commentText\":\"Following up on previous feedback.\",\"parentCommentId\":\"456\"}", + "description": "Create a reply comment on Orders record linked to parent comment 456." + }, + { + "inputJson": "{\"tableName\":\"Products\",\"recordId\":\"101\",\"authorId\":\"admin\" ,\"commentText\":\"Initial review completed.\"}", + "description": "Prepare a new comment without timestamp provided, which will default to current time." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Comment", + "context": null + } + }, + { + "name": "database-management.buildQueue", + "description": "Creates and configures a message queue infrastructure component for database management workflows. Accepts parameters defining queue name, type (e.g., FIFO, standard), visibility timeout, message retention period, and maximum message size. Outputs a queue configuration object including connection details and queue identifiers for integration with database services.", + "category": "database-management", + "parameters": [ + { + "name": "queueName", + "type": "string", + "description": "The unique name to assign to the queue for identification and access.", + "required": true, + "defaultValue": "" + }, + { + "name": "queueType", + "type": "string", + "description": "The type of queue to create; options typically include 'FIFO' or 'Standard'.", + "required": true, + "defaultValue": "Standard" + }, + { + "name": "visibilityTimeoutSeconds", + "type": "number", + "description": "The duration in seconds that a message received from the queue will be invisible to other consumers until processed or returned.", + "required": false, + "defaultValue": "30" + }, + { + "name": "messageRetentionPeriodSeconds", + "type": "number", + "description": "The duration in seconds that a message is retained in the queue if not deleted or processed.", + "required": false, + "defaultValue": "345600" + }, + { + "name": "maxMessageSizeBytes", + "type": "number", + "description": "Maximum allowed size in bytes for a message in the queue.", + "required": false, + "defaultValue": "262144" + }, + { + "name": "deadLetterQueueEnabled", + "type": "boolean", + "description": "Flag to enable a dead-letter queue for messages that can't be processed after multiple attempts.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxReceiveCount", + "type": "number", + "description": "Maximum number of times a message is received before moving to the dead-letter queue (if enabled).", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An object containing details about the created queue, including queueId, queueUrl/connectionString, queueType, and configuration parameters for integration and monitoring." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create and configure message queues that support database task workflows, asynchronous processing, or event-based triggers in database management systems. It helps especially in cloud or distributed environments where queue infrastructure is required to decouple components.", + "limitations": "Does not handle message publishing or consumption; only queue creation and configuration. Does not manage underlying physical infrastructure or permissions beyond initial setup.", + "examples": [ + "Create a FIFO queue named 'db-task-queue' with a 60-second visibility timeout.", + "Build a standard queue with a dead-letter queue enabled for error handling.", + "Set up a queue configured for messages up to 128 KB with a retention period of one week." + ] + }, + "tags": [ + "database", + "queue", + "infrastructure", + "message-queue", + "asynchronous-processing", + "cloud", + "task-management" + ], + "examples": [ + { + "inputJson": "{\"queueName\":\"dbTaskQueue\",\"queueType\":\"FIFO\",\"visibilityTimeoutSeconds\":45,\"messageRetentionPeriodSeconds\":604800,\"maxMessageSizeBytes\":131072,\"deadLetterQueueEnabled\":true,\"maxReceiveCount\":3}", + "description": "Creates a FIFO database task queue with 45 seconds visibility timeout, 1 week retention, 128 KB max message size, dead-letter queue enabled with max 3 retries." + }, + { + "inputJson": "{\"queueName\":\"standardDbQueue\",\"queueType\":\"Standard\",\"deadLetterQueueEnabled\":false}", + "description": "Creates a standard database queue with default visibility timeout, message retention, and no dead-letter queue." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Queue", + "context": null + } + }, + { + "name": "database-management.buildCluster", + "description": "Builds a new database cluster by specifying cluster configuration parameters such as node count, instance type, storage size, and network setup. Processes these inputs to provision and initialize a cluster, returning the cluster ID, status, and connection details upon successful creation.", + "category": "database-management", + "parameters": [ + { + "name": "clusterName", + "type": "string", + "description": "A unique name identifier for the cluster to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeCount", + "type": "number", + "description": "The total number of nodes in the cluster to provision.", + "required": true, + "defaultValue": "" + }, + { + "name": "instanceType", + "type": "string", + "description": "The type/specification of database instances (e.g., CPU, memory) for each node.", + "required": true, + "defaultValue": "" + }, + { + "name": "storageSizeGB", + "type": "number", + "description": "The storage size in gigabytes allocated to each node's database volume.", + "required": true, + "defaultValue": "" + }, + { + "name": "region", + "type": "string", + "description": "The geographic region or availability zone where the cluster will be deployed.", + "required": true, + "defaultValue": "" + }, + { + "name": "multiAZ", + "type": "boolean", + "description": "Whether the cluster nodes should be deployed across multiple availability zones for redundancy.", + "required": false, + "defaultValue": "false" + }, + { + "name": "networkConfig", + "type": "object", + "description": "Network settings including VPC ID, subnet IDs, and security group IDs for cluster networking.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of cluster creation, including clusterId, status (e.g., provisioning, active), endpoint connection info, and detailed node summaries." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically provision a new database cluster with specified capacity and configuration in a cloud or data center environment. Ideal for initializing environments for scalable database workloads, testing, or production deployment.", + "limitations": "This tool does not handle post-deployment cluster management such as scaling, backups, or failover management. It requires correct permissions and existing networking infrastructure. It cannot validate the instance types beyond format consistency.", + "examples": [ + "Create a 5-node cluster with medium instance types and 100GB storage each in us-east-1.", + "Build a multi-AZ cluster named 'analytics-prod' with 3 nodes and 500GB storage per node.", + "Provision a small test cluster with 2 nodes in the eu-west-2 region with default network settings." + ] + }, + "tags": [ + "database", + "cluster", + "provisioning", + "infrastructure", + "cloud", + "deployment", + "automation" + ], + "examples": [ + { + "inputJson": "{\"clusterName\":\"test-cluster\",\"nodeCount\":3,\"instanceType\":\"db.m4.large\",\"storageSizeGB\":100,\"region\":\"us-east-1\",\"multiAZ\":false}", + "description": "Create a 3-node cluster with medium instances and 100GB storage in US East region without multi-AZ." + }, + { + "inputJson": "{\"clusterName\":\"analytics-prod\",\"nodeCount\":5,\"instanceType\":\"db.r5.xlarge\",\"storageSizeGB\":500,\"region\":\"us-west-2\",\"multiAZ\":true,\"networkConfig\":{\"vpcId\":\"vpc-12345\",\"subnetIds\":[\"subnet-123\",\"subnet-456\"],\"securityGroupIds\":[\"sg-12345\"]}}", + "description": "Build a 5-node highly available multi-AZ cluster with advanced network settings." + }, + { + "inputJson": "{\"clusterName\":\"dev-cluster\",\"nodeCount\":2,\"instanceType\":\"db.t3.medium\",\"storageSizeGB\":50,\"region\":\"eu-central-1\"}", + "description": "Provision a small development cluster with 2 nodes and default network configuration." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Cluster", + "context": null + } + }, + { + "name": "database-management.composeArticle", + "description": "This tool composes a structured article by querying a database for relevant data based on given topics and keywords, synthesizing the information into a coherent article with sections and references. It accepts input parameters for topics, desired length, and style, and outputs a ready-to-use article text and metadata.", + "category": "database-management", + "parameters": [ + { + "name": "topics", + "type": "array", + "description": "List of main topics or keywords to base the article on.", + "required": true, + "defaultValue": "" + }, + { + "name": "desiredLength", + "type": "number", + "description": "Approximate word count desired for the article.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "writingStyle", + "type": "string", + "description": "Tone or style of the article such as 'formal', 'casual', or 'technical'.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeReferences", + "type": "boolean", + "description": "Whether to include references or citations from the database sources.", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "Language code for the generated article, e.g., 'en' for English.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed article text, metadata including sections, word count, and optionally references." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate a comprehensive article or report by extracting and synthesizing information from a structured database, tailored to specific topics and stylistic preferences. It is especially useful for automating content creation in knowledge bases or content management systems.", + "limitations": "This tool cannot generate articles without relevant data present in the database. It does not replace human editorial review for accuracy or style nuances.", + "examples": [ + "Compose a 1500-word technical article on renewable energy technology in English with references included.", + "Generate a casual 800-word article about latest trends in wearable devices without references.", + "Create a formal report-style article about data privacy laws focusing on European countries." + ] + }, + "tags": [ + "database", + "article generation", + "content synthesis", + "document creation", + "query", + "writing" + ], + "examples": [ + { + "inputJson": "{\"topics\":[\"climate change\",\"carbon footprint\"],\"desiredLength\":1200,\"writingStyle\":\"formal\",\"includeReferences\":true,\"language\":\"en\"}", + "description": "Compose a formal article about climate change and carbon footprint including references, approx 1200 words." + }, + { + "inputJson": "{\"topics\":[\"blockchain technology\"],\"desiredLength\":800,\"writingStyle\":\"technical\",\"includeReferences\":false,\"language\":\"en\"}", + "description": "Generate a concise technical article on blockchain technology without references." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Article", + "context": null + } + }, + { + "name": "database-management.buildPipeline", + "description": "Constructs a configurable data processing pipeline for database operations. Accepts a sequence of pipeline stages with specific operation types and parameters, validates their order and compatibility, and outputs an executable pipeline configuration object that can be run to perform complex data transformations, queries, and aggregations on a specified database.", + "category": "database-management", + "parameters": [ + { + "name": "pipelineStages", + "type": "array", + "description": "An ordered list of pipeline stages, where each stage specifies an operation type (e.g., filter, join, aggregate) and its relevant parameters. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "sourceDatabase", + "type": "string", + "description": "The identifier or connection string of the source database where the pipeline will be executed. Required.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetDatabase", + "type": "string", + "description": "Optional identifier or connection string of the target database for storing pipeline output results.", + "required": false, + "defaultValue": "" + }, + { + "name": "runImmediately", + "type": "boolean", + "description": "Flag indicating whether to execute the pipeline immediately after building. Defaults to false.", + "required": false, + "defaultValue": "false" + }, + { + "name": "errorHandlingStrategy", + "type": "string", + "description": "Defines how the pipeline should handle runtime errors (e.g., 'stopOnError', 'skipError', 'logAndContinue'). Defaults to 'stopOnError'.", + "required": false, + "defaultValue": "stopOnError" + }, + { + "name": "maxConcurrency", + "type": "number", + "description": "Maximum number of concurrent operations allowed in the pipeline execution. Defaults to 1 (sequential).", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object representing the constructed pipeline, including its validated stages, configuration details, and an executable method to run the pipeline on the specified databases." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assemble complex multi-stage data workflows involving filtering, joining, transforming, or aggregating data within or across databases. Ideal for scenarios requiring automated generation of pipeline scripts or config objects from user-defined operations.", + "limitations": "Does not execute pipeline on unsupported or incompatible database types. Cannot optimize pipeline stages beyond specified parameters. Does not support real-time streaming data pipelines currently.", + "examples": [ + "Build a pipeline with filter and join stages to transform data from sales_db and save results to analytics_db.", + "Create an aggregation pipeline summarizing user activity with error skipping.", + "Generate and immediately run a pipeline that extracts and transforms data, handling up to 3 concurrent operations." + ] + }, + "tags": [ + "database", + "pipeline", + "data-processing", + "automation", + "query-building", + "ETL", + "aggregation" + ], + "examples": [ + { + "inputJson": "{\"pipelineStages\":[{\"type\":\"filter\",\"conditions\":{\"field\":\"status\",\"operator\":\"=\",\"value\":\"active\"}},{\"type\":\"join\",\"with\":\"customer_db\",\"on\":{\"customerId\":\"userId\"}},{\"type\":\"aggregate\",\"groupBy\":[\"region\"],\"metrics\":{\"sales\":\"sum\"}}],\"sourceDatabase\":\"sales_db\",\"targetDatabase\":\"analytics_db\",\"runImmediately\":false}", + "description": "Builds a pipeline filtering active records, joining with customer data, and aggregating sales by region for later execution." + }, + { + "inputJson": "{\"pipelineStages\":[{\"type\":\"aggregate\",\"groupBy\":[\"userId\"],\"metrics\":{\"loginCount\":\"count\"}}],\"sourceDatabase\":\"user_db\",\"runImmediately\":true,\"errorHandlingStrategy\":\"skipError\",\"maxConcurrency\":3}", + "description": "Generates and runs immediately an aggregation pipeline counting user logins with error skipping and concurrency up to 3." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Pipeline", + "context": null + } + }, + { + "name": "database-management.buildPackage", + "description": "This tool creates a deployable database management package based on provided configuration details, schema definitions, and optional scripts. It processes inputs like database type, schema information, setup scripts, and package metadata to produce a ready-to-deploy package archive (e.g., a ZIP file) that can initialize and manage the specified database environment.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the target database system (e.g., 'PostgreSQL', 'MySQL', 'SQLite').", + "required": true, + "defaultValue": "" + }, + { + "name": "schemaDefinitions", + "type": "string", + "description": "SQL or JSON string defining database tables, relationships, indexes, and constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "setupScripts", + "type": "array", + "description": "Optional array of SQL or script strings to run during package deployment for setup or seeding data.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "packageName", + "type": "string", + "description": "Name of the database management package to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "version", + "type": "string", + "description": "Version number for the package, following semantic versioning (e.g., '1.0.0').", + "required": false, + "defaultValue": "1.0.0" + }, + { + "name": "includeMigrationTool", + "type": "boolean", + "description": "Whether to include migration tools/scripts for managing schema updates.", + "required": false, + "defaultValue": "false" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output package archive, e.g., 'zip' or 'tar.gz'.", + "required": false, + "defaultValue": "zip" + } + ], + "returns": { + "type": "object", + "description": "Object containing package metadata and a base64 encoded string of the package archive ready for deployment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to create a consistent, portable database management package tailored to a specific database type and schema definition. It is ideal for automating database deployment setups, migrations, or distributing database initialization packages.", + "limitations": "Cannot connect to actual databases or execute scripts; only builds the package based on inputs. Complex schema validations or proprietary database features may need external handling.", + "examples": [ + "Build a PostgreSQL package named 'userdb' version 1.2.0 including schema definitions and setup scripts.", + "Create a MySQL package with no migration tools and default zip output.", + "Generate a SQLite package with just schema and minimal setup scripts." + ] + }, + "tags": [ + "database", + "package", + "build", + "schema", + "deployment", + "migration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"schemaDefinitions\":\"CREATE TABLE users (id SERIAL PRIMARY KEY, name VARCHAR(100), email VARCHAR(100) UNIQUE);\",\"setupScripts\":[\"INSERT INTO users (name,email) VALUES ('Admin', 'admin@example.com');\"],\"packageName\":\"userdb\",\"version\":\"1.2.0\",\"includeMigrationTool\":true,\"outputFormat\":\"zip\"}", + "description": "Builds a PostgreSQL package named 'userdb' version 1.2.0 with users table and initial seed data including migration tools in zip format." + }, + { + "inputJson": "{\"databaseType\":\"MySQL\",\"schemaDefinitions\":\"CREATE TABLE products (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), price DECIMAL(10,2));\",\"packageName\":\"productCatalog\",\"version\":\"1.0.0\",\"includeMigrationTool\":false,\"outputFormat\":\"zip\"}", + "description": "Creates a MySQL package named 'productCatalog' with products table schema, no migration tools, default version 1.0.0, output as zip." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Package", + "context": null + } + }, + { + "name": "database-management.buildWorkflow", + "description": "Constructs an automated workflow for database operations by accepting a series of operation steps, conditional logic, and execution parameters. The tool processes this structured input to produce a valid workflow definition JSON compatible with orchestration engines, facilitating automated and repeatable database management tasks.", + "category": "database-management", + "parameters": [ + { + "name": "workflowName", + "type": "string", + "description": "Descriptive name for the workflow to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "operations", + "type": "array", + "description": "Ordered list of database operation objects defining each step (e.g., queries, updates, backups). Each operation includes type, parameters, and optional conditions.", + "required": true, + "defaultValue": "" + }, + { + "name": "conditions", + "type": "object", + "description": "Optional global conditional logic dictating workflow branching based on operation outcomes or external variables.", + "required": false, + "defaultValue": "" + }, + { + "name": "executionSettings", + "type": "object", + "description": "Settings controlling workflow execution parameters such as retries, timeouts, and concurrency.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the fully assembled workflow definition ready for deployment or further customization." + }, + "aiAgent": { + "useCase": "Use this tool when there is a need to programmatically define a sequence of database tasks, optionally with branching and execution control, enabling automation of routine or complex database management workflows without manual scripting.", + "limitations": "This tool does not execute the workflow; it only builds the workflow definition. It requires valid and executable operations to be provided. It cannot validate database connectivity or operation success beyond structural correctness.", + "examples": [ + "Build a workflow named 'NightlyBackup' with steps to dump the database and then optimize tables.", + "Create a workflow with conditional steps that update user records only if a prior validation step passes.", + "Generate a workflow definition including retries and timeout settings for critical operations." + ] + }, + "tags": [ + "database", + "workflow", + "automation", + "orchestration", + "management" + ], + "examples": [ + { + "inputJson": "{\"workflowName\":\"DailyDataCleanup\",\"operations\":[{\"type\":\"query\",\"query\":\"DELETE FROM logs WHERE created_at < NOW() - INTERVAL '30 days'\"},{\"type\":\"backup\",\"target\":\"s3://db-backups/daily/\"}],\"executionSettings\":{\"retryCount\":3,\"timeoutSeconds\":600}}", + "description": "Build a daily cleanup workflow with log deletion and S3 backup, including retry and timeout settings." + }, + { + "inputJson": "{\"workflowName\":\"UserOnboarding\",\"operations\":[{\"type\":\"validate\",\"query\":\"SELECT COUNT(*) FROM users WHERE email = ?\",\"parameters\":[\"user@example.com\"]},{\"type\":\"insert\",\"table\":\"users\",\"data\":{\"email\":\"user@example.com\",\"status\":\"active\"}}],\"conditions\":{\"onFailure\":\"halt\"}}", + "description": "Create a workflow for user onboarding that validates existence before inserting, halting on validation failure." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Workflow", + "context": null + } + }, + { + "name": "database-management.generateConversion", + "description": "Generates detailed conversion analytics by processing database records that contain user interactions and events. Accepts parameters defining conversion criteria, timeframe, and segmentation. Outputs conversion rates, counts, and funnel progression statistics to aid in performance analysis and optimization.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string for the target database to query user interaction events.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEvent", + "type": "string", + "description": "Name of the event that defines a conversion (e.g., 'purchase', 'signup').", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "Start date (ISO 8601) for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "End date (ISO 8601) for the analysis period.", + "required": true, + "defaultValue": "" + }, + { + "name": "userIdField", + "type": "string", + "description": "Database field name representing the unique user identifier.", + "required": true, + "defaultValue": "" + }, + { + "name": "eventTable", + "type": "string", + "description": "Name of the database table storing event or interaction records.", + "required": true, + "defaultValue": "" + }, + { + "name": "segmentBy", + "type": "array", + "description": "Optional list of database fields to segment conversion data by (e.g., ['deviceType', 'campaignId']).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "conversionFunnelEvents", + "type": "array", + "description": "Optional ordered list of events representing a conversion funnel to analyze stepwise drop-off rates.", + "required": false, + "defaultValue": "[]" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall conversion rate, conversion counts, optionally segmented by specified fields, and funnel step conversion statistics if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to extract and analyze conversion metrics from user interaction data stored in a database. Ideal for generating conversion rates for marketing or product analytics, segmenting conversions by dimensions, and understanding funnel progression over a specified timeframe.", + "limitations": "This tool requires the underlying database to contain relevant event data with consistent schema and user identifiers. It does not perform data cleaning or validate event semantics beyond the specified parameters and relies on accurate input for meaningful results.", + "examples": [ + "Generate overall purchase conversion rate for the last month from the event table 'user_events'", + "Analyze signup conversion segmented by device type and campaign over a quarter", + "Calculate stepwise funnel conversion from visit to add_to_cart to purchase events" + ] + }, + "tags": [ + "conversion", + "analytics", + "database", + "user-behavior", + "funnel-analysis", + "segmentation" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=mydb;Database=prod;User Id=admin;Password=secret;\",\"conversionEvent\":\"purchase\",\"startDate\":\"2023-01-01\",\"endDate\":\"2023-01-31\",\"userIdField\":\"user_id\",\"eventTable\":\"user_events\",\"segmentBy\":[],\"conversionFunnelEvents\":[]}", + "description": "Calculate purchase conversion rate in January 2023 from user_events table." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=mydb;Database=prod;User Id=admin;Password=secret;\",\"conversionEvent\":\"signup\",\"startDate\":\"2023-04-01\",\"endDate\":\"2023-06-30\",\"userIdField\":\"user_id\",\"eventTable\":\"user_events\",\"segmentBy\":[\"device_type\",\"campaign_id\"],\"conversionFunnelEvents\":[]}", + "description": "Generate signup conversion segmented by device and campaign for Q2 2023." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=mydb;Database=prod;User Id=admin;Password=secret;\",\"conversionEvent\":\"purchase\",\"startDate\":\"2023-05-01\",\"endDate\":\"2023-05-31\",\"userIdField\":\"user_id\",\"eventTable\":\"user_events\",\"segmentBy\":[],\"conversionFunnelEvents\":[\"visit\",\"add_to_cart\",\"purchase\"]}", + "description": "Calculate funnel conversion from visit to purchase for May 2023." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Conversion", + "context": null + } + }, + { + "name": "database-management.generateGraph", + "description": "Generates a data visualization graph from database query results. Accepts a SQL query, fetches corresponding data from the specified database, processes it into a structured format, and produces a graphical data representation such as bar chart, line chart, or pie chart in SVG or PNG format. Supports customizable graph types, labels, and styling options.", + "category": "database-management", + "parameters": [ + { + "name": "databaseConnectionString", + "type": "string", + "description": "Connection string used to connect to the target database (required to fetch data)", + "required": true, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "SQL query string to retrieve data, must return data suitable for graphing (e.g., categorical and numerical columns)", + "required": true, + "defaultValue": "" + }, + { + "name": "graphType", + "type": "string", + "description": "Type of graph to generate. Supported types: bar, line, pie, scatter", + "required": true, + "defaultValue": "bar" + }, + { + "name": "title", + "type": "string", + "description": "Optional title to display on the generated graph", + "required": false, + "defaultValue": "" + }, + { + "name": "xAxisLabel", + "type": "string", + "description": "Label for the X axis of the graph", + "required": false, + "defaultValue": "" + }, + { + "name": "yAxisLabel", + "type": "string", + "description": "Label for the Y axis of the graph", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Output image format for the graph: svg or png", + "required": false, + "defaultValue": "svg" + }, + { + "name": "width", + "type": "number", + "description": "Width of the generated graph image in pixels", + "required": false, + "defaultValue": "800" + }, + { + "name": "height", + "type": "number", + "description": "Height of the generated graph image in pixels", + "required": false, + "defaultValue": "600" + } + ], + "returns": { + "type": "object", + "description": "An object containing the graph image encoded as a base64 string along with metadata such as image format and graph type" + }, + "aiAgent": { + "useCase": "Use this tool when you need to visualize database query results as graphs for reporting, dashboards, or data analysis. Especially useful when the raw data is large or complex and a graphical summary is desired. The agent should provide a valid query and specify graph preferences.", + "limitations": "Cannot interpret queries returning non-tabular or unsuitable data for graphs. Does not support complex custom visualizations like interactive charts or multi-axis graphs. Relies on database connectivity and correct query syntax.", + "examples": [ + "Generate a bar chart for monthly sales totals from sales database", + "Create a pie chart representing market share by product category", + "Produce a line chart showing stock prices over time" + ] + }, + "tags": [ + "database", + "graph", + "visualization", + "data-analysis", + "reporting", + "SQL", + "chart" + ], + "examples": [ + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServerAddress;Database=myDB;User Id=user;Password=pass;\",\"query\":\"SELECT month, total_sales FROM sales_data ORDER BY month\",\"graphType\":\"bar\",\"title\":\"Monthly Sales\",\"xAxisLabel\":\"Month\",\"yAxisLabel\":\"Total Sales\",\"outputFormat\":\"png\",\"width\":1024,\"height\":768}", + "description": "Generate a PNG bar chart of monthly sales data from the sales_data table." + }, + { + "inputJson": "{\"databaseConnectionString\":\"Server=myServerAddress;Database=myDB;User Id=user;Password=pass;\",\"query\":\"SELECT category, SUM(quantity) as total_quantity FROM products GROUP BY category\",\"graphType\":\"pie\",\"title\":\"Product Category Distribution\",\"outputFormat\":\"svg\"}", + "description": "Create an SVG pie chart showing total quantity by product category." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Graph", + "context": null + } + }, + { + "name": "database-management.generateAnomaly", + "description": "Generates anomaly detection results by analyzing specified database tables using configurable detection algorithms. Accepts input parameters including database connection details, target tables, anomaly detection method, and sensitivity thresholds. Processes data to identify unusual patterns or outliers and outputs detailed anomaly reports and summary statistics.", + "category": "database-management", + "parameters": [ + { + "name": "connectionString", + "type": "string", + "description": "Database connection string to access the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "tables", + "type": "array", + "description": "List of database table names to analyze for anomalies.", + "required": true, + "defaultValue": "" + }, + { + "name": "detectionMethod", + "type": "string", + "description": "Choice of anomaly detection algorithm to apply (e.g., 'statistical', 'machineLearning').", + "required": false, + "defaultValue": "statistical" + }, + { + "name": "sensitivity", + "type": "number", + "description": "Sensitivity threshold for anomaly detection, ranging from 0 (low sensitivity) to 1 (high sensitivity).", + "required": false, + "defaultValue": "0.75" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional start and end timestamps to filter data by a specific time range. Format: {start: 'YYYY-MM-DD', end: 'YYYY-MM-DD'}.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDetails", + "type": "boolean", + "description": "Whether to include detailed anomaly data points in the output report.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing anomaly detection summary, including detected anomalies per table, severity scores, timestamps, and optionally detailed anomaly records." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically identify unusual or suspicious data patterns in one or more database tables, such as detecting fraud, data quality issues, or performance anomalies. It is suitable for periodic monitoring or detailed investigation of data irregularities using configurable algorithms.", + "limitations": "This tool does not modify database data and cannot perform predictive maintenance or root cause analysis beyond flagging anomalies.", + "examples": [ + "Detect anomalies in sales and inventory tables for the last month with medium sensitivity.", + "Find unusual activity patterns in user logs using machine learning detection method.", + "Generate detailed anomaly reports for performance metrics over a specified time range." + ] + }, + "tags": [ + "database", + "anomaly-detection", + "analytics", + "data-quality", + "monitoring" + ], + "examples": [ + { + "inputJson": "{\"connectionString\":\"Server=myServer;Database=myDB;User Id=myUser;Password=myPass;\",\"tables\":[\"sales\",\"inventory\"],\"detectionMethod\":\"statistical\",\"sensitivity\":0.7,\"timeRange\":{\"start\":\"2024-01-01\",\"end\":\"2024-01-31\"},\"includeDetails\":true}", + "description": "Detect anomalies in sales and inventory tables from January 2024 with a statistical method and medium sensitivity." + }, + { + "inputJson": "{\"connectionString\":\"Server=prodDb;Database=analytics;User Id=admin;Password=secure123;\",\"tables\":[\"user_logs\"],\"detectionMethod\":\"machineLearning\",\"sensitivity\":0.8,\"includeDetails\":false}", + "description": "Find anomalies in user_logs table using machine learning detection with high sensitivity, excluding detailed anomaly data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Anomaly", + "context": null + } + }, + { + "name": "database-management.generateQuote", + "description": "Generates a motivational or business-related quote based on the specified category and optional author filter. Accepts category and optional author as inputs, retrieves quotes from the database matching the criteria, and outputs a single quote with author and category information.", + "category": "database-management", + "parameters": [ + { + "name": "category", + "type": "string", + "description": "The category of quotes to generate (e.g., 'motivation', 'business', 'wisdom').", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Optional author name to filter quotes by a specific author.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Optional maximum length of the generated quote in characters.", + "required": false, + "defaultValue": "200" + } + ], + "returns": { + "type": "object", + "description": "An object containing the quote text, author, and category." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to provide a relevant, categorized quote from a database for motivational, educational, or business contexts. It is helpful to retrieve quotes matching certain themes or authors during presentations, reports, or communications.", + "limitations": "Cannot generate original quotes; only retrieves existing quotes from the database. The quality depends on the database content and availability of quotes matching filters.", + "examples": [ + "Generate a motivational quote to inspire the team.", + "Provide a business quote by Steve Jobs.", + "Find a wisdom quote no longer than 100 characters." + ] + }, + "tags": [ + "database", + "quote", + "generation", + "motivational", + "business", + "inspiration" + ], + "examples": [ + { + "inputJson": "{\"category\":\"motivation\"}", + "description": "Generate a random motivational quote with no specific author." + }, + { + "inputJson": "{\"category\":\"business\",\"author\":\"Steve Jobs\"}", + "description": "Generate a business quote by Steve Jobs." + }, + { + "inputJson": "{\"category\":\"wisdom\",\"maxLength\":100}", + "description": "Generate a wisdom quote no longer than 100 characters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "database-management.generateReadme", + "description": "Generates a comprehensive README markdown document for a given database schema. Accepts schema details including tables, fields, data types, and relationships, and creates human-readable documentation that outlines the database structure, usage examples, and connection information.", + "category": "database-management", + "parameters": [ + { + "name": "databaseName", + "type": "string", + "description": "The name of the database to document.", + "required": true, + "defaultValue": "" + }, + { + "name": "schema", + "type": "object", + "description": "An object describing the database schema: tables, columns, data types, primary/foreign keys, and relationships.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include sample queries or usage examples in the README.", + "required": false, + "defaultValue": "false" + }, + { + "name": "connectionInfo", + "type": "object", + "description": "Optional object containing connection parameters like host, port, user, and database to include in the README.", + "required": false, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the generated documentation. Currently supports 'markdown'.", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated README content as a string in the specified format." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically generate clear, structured documentation for a database schema, facilitating developer onboarding, maintenance, and knowledge sharing. This is useful after designing or updating a database schema to keep documentation in sync.", + "limitations": "The tool cannot generate documentation for database behavior outside the schema (e.g., stored procedures, performance tuning) and does not connect to the database to extract live schema info; it requires schema input provided explicitly.", + "examples": [ + "Generate a README document for a new e-commerce database schema including tables, fields, and relationships.", + "Create documentation that includes connection details and sample SQL queries for accessing the data.", + "Produce a markdown README for a legacy database schema to aid new developers in understanding the structure." + ] + }, + "tags": [ + "documentation", + "database", + "schema", + "readme", + "markdown", + "database-management", + "db-schema" + ], + "examples": [ + { + "inputJson": "{\"databaseName\":\"EcommerceDB\",\"schema\":{\"tables\":[{\"name\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"integer\",\"primaryKey\":true},{\"name\":\"email\",\"type\":\"string\"},{\"name\":\"password\",\"type\":\"string\"}]},{\"name\":\"orders\",\"columns\":[{\"name\":\"order_id\",\"type\":\"integer\",\"primaryKey\":true},{\"name\":\"user_id\",\"type\":\"integer\",\"foreignKey\":{\"table\":\"users\",\"column\":\"id\"}},{\"name\":\"amount\",\"type\":\"decimal\"}]}]},\"includeExamples\":true,\"connectionInfo\":{\"host\":\"localhost\",\"port\":5432,\"user\":\"admin\",\"database\":\"EcommerceDB\"},\"outputFormat\":\"markdown\"}", + "description": "Generate README for a simple e-commerce database including connection info and example queries." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Readme", + "context": null + } + }, + { + "name": "database-management.generateYAML", + "description": "Generates a YAML representation of database schema or query results. Accepts JSON input describing database tables, columns, and optionally data rows or query output, then converts this structured data into formatted YAML for configuration, documentation, or data exchange purposes.", + "category": "database-management", + "parameters": [ + { + "name": "inputData", + "type": "object", + "description": "JSON object representing the database schema or query results to be converted into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeDataRows", + "type": "boolean", + "description": "Whether to include actual data rows from query results in the YAML output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentationSpaces", + "type": "number", + "description": "Number of spaces to use for YAML indentation formatting (commonly 2 or 4).", + "required": false, + "defaultValue": "2" + }, + { + "name": "useExplicitTypes", + "type": "boolean", + "description": "Whether to include explicit YAML data type tags for keys and values in the output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated YAML string representation under the 'yamlString' key." + }, + "aiAgent": { + "useCase": "Use this tool when you need to convert structured database schema definitions or query output data from JSON format into a human-readable YAML format. This is useful for generating configuration files, documentation, or exchanging data between systems that utilize YAML.", + "limitations": "This tool does not connect to databases or execute queries by itself. It only converts provided JSON structured data into YAML format. It cannot validate the correctness of the database schema or query results data input.", + "examples": [ + "Convert JSON schema of tables and columns into YAML for documentation.", + "Generate YAML config file representing database schema details from a JSON object.", + "Transform JSON query result set including some data rows into a YAML formatted output." + ] + }, + "tags": [ + "database", + "yaml", + "schema", + "query", + "export", + "format-conversion" + ], + "examples": [ + { + "inputJson": "{\"inputData\":{\"tables\":[{\"name\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"email\",\"type\":\"string\"},{\"name\":\"created_at\",\"type\":\"datetime\"}]}]},\"includeDataRows\":false,\"indentationSpaces\":2,\"useExplicitTypes\":false}", + "description": "Convert a simple JSON database schema with table and columns into YAML format without including data rows." + }, + { + "inputJson": "{\"inputData\":{\"tables\":[{\"name\":\"products\",\"columns\":[{\"name\":\"product_id\",\"type\":\"integer\"},{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"price\",\"type\":\"float\"}],\"rows\":[{\"product_id\":1,\"name\":\"Laptop\",\"price\":899.99},{\"product_id\":2,\"name\":\"Mouse\",\"price\":19.99}]}]},\"includeDataRows\":true,\"indentationSpaces\":4,\"useExplicitTypes\":true}", + "description": "Generate YAML including schema and data rows with explicit data types and 4-space indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "YAML", + "context": null + } + }, + { + "name": "database-management.generateTemplate", + "description": "Generates a customizable SQL query template or database schema template based on provided table name, columns, and optional constraints. Accepts table structure inputs and outputs a formatted template to help users quickly create or document database structures.", + "category": "database-management", + "parameters": [ + { + "name": "tableName", + "type": "string", + "description": "Name of the database table to generate the template for.", + "required": true, + "defaultValue": "" + }, + { + "name": "columns", + "type": "array", + "description": "List of column definitions including name and data type, and optional constraints.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeConstraints", + "type": "boolean", + "description": "Whether to include common constraints (e.g., primary key, foreign key) annotations in the template.", + "required": false, + "defaultValue": "true" + }, + { + "name": "templateType", + "type": "string", + "description": "Type of template to generate: 'createTable' for SQL CREATE TABLE statement, or 'doc' for a documentation-style schema template.", + "required": false, + "defaultValue": "createTable" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated template as a string along with metadata about the template type and included elements." + }, + "aiAgent": { + "useCase": "Use this tool when needing to quickly generate database table schema templates or SQL CREATE TABLE statements based on specified table structure inputs. It helps automate the creation of reusable, clear database definitions for documentation or initial schema setup.", + "limitations": "This tool does not connect to any actual database or verify existing schema states. It cannot generate complex database-wide schema relations or migration scripts beyond a single table template.", + "examples": [ + "Generate a CREATE TABLE SQL template for a user table with id, name, and email columns.", + "Create a documentation style template for a product table specifying columns and data types without SQL syntax.", + "Generate a SQL template including primary key constraint for an orders table." + ] + }, + "tags": [ + "database", + "template", + "schema", + "SQL", + "table", + "automation", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"tableName\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"INT\"},{\"name\":\"username\",\"type\":\"VARCHAR(50)\"},{\"name\":\"email\",\"type\":\"VARCHAR(100)\"}],\"includeConstraints\":true,\"templateType\":\"createTable\"}", + "description": "Generate SQL CREATE TABLE template including constraints for a users table with id, username, and email columns." + }, + { + "inputJson": "{\"tableName\":\"products\",\"columns\":[{\"name\":\"product_id\",\"type\":\"INT\"},{\"name\":\"product_name\",\"type\":\"VARCHAR(100)\"},{\"name\":\"price\",\"type\":\"DECIMAL(10,2)\"}],\"includeConstraints\":false,\"templateType\":\"doc\"}", + "description": "Generate a documentation-style schema template for products table without constraints." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "database-management.generateBlogPost", + "description": "Generates a formatted blog post document using specified database content and metadata. Accepts parameters like topic, author, key points, and optional database query to enrich content. Outputs a structured blog post with title, body, metadata suitable for CMS or publishing.", + "category": "database-management", + "parameters": [ + { + "name": "topic", + "type": "string", + "description": "Main topic or title of the blog post to generate.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the author of the blog post.", + "required": false, + "defaultValue": "" + }, + { + "name": "keyPoints", + "type": "array", + "description": "List of key points or sections to include in the blog post, guiding the content structure.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "databaseQuery", + "type": "string", + "description": "Optional SQL query string to fetch related data from a connected database for content enrichment.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length (in words) of the generated blog post content.", + "required": false, + "defaultValue": "1000" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "Whether to include a summary section at the beginning of the blog post.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Returns a blog post object containing title, author, date, summary, content sections, and metadata for publishing." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automatically produce a structured blog post derived from database contents and specified highlights. Ideal for content automation in CMS or publishing workflows where input parameters define focus and depth.", + "limitations": "Cannot guarantee stylistic consistency or deep creativity in writing; output quality depends on input completeness. Database query execution is limited to predefined schemas and permissions.", + "examples": [ + "Generate a blog post about 'AI in Healthcare' authored by 'Jane Doe' including key points about benefits and challenges.", + "Create a blog post with topic 'Quarterly Sales Report' using a SQL query to retrieve sales data from the database.", + "Produce a summarized blog post about 'Cloud Security' without specifying an author but including main key points." + ] + }, + "tags": [ + "database", + "blog", + "content-generation", + "automation", + "CMS", + "document" + ], + "examples": [ + { + "inputJson": "{\"topic\":\"AI in Healthcare\",\"author\":\"Jane Doe\",\"keyPoints\":[\"Benefits\",\"Challenges\",\"Future Trends\"],\"databaseQuery\":\"SELECT * FROM health_ai_data WHERE year=2023;\",\"maxLength\":1200,\"includeSummary\":true}", + "description": "Generate a detailed blog post about AI in Healthcare using provided data and key points." + }, + { + "inputJson": "{\"topic\":\"Quarterly Sales Report\",\"author\":\"\",\"keyPoints\":[],\"databaseQuery\":\"SELECT region, total_sales FROM sales WHERE quarter='Q1';\",\"maxLength\":800,\"includeSummary\":false}", + "description": "Create a blog post summarizing Q1 sales using a database query, without an author or summary section." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "BlogPost", + "context": null + } + }, + { + "name": "database-management.createCache", + "description": "Creates a cache layer for a specified database query or dataset to improve read performance. Accepts database connection details, a query or table name to cache, cache expiration time, and cache storage options. Returns cache configuration details including cache ID, status, and expiry.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the database (e.g., MySQL, PostgreSQL, MongoDB) to connect and cache from", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Database connection string or URI to access the database", + "required": true, + "defaultValue": "" + }, + { + "name": "query", + "type": "string", + "description": "The SQL query or dataset identifier to cache", + "required": false, + "defaultValue": "" + }, + { + "name": "tableName", + "type": "string", + "description": "Name of the database table to cache if caching entire table; mutually exclusive with query", + "required": false, + "defaultValue": "" + }, + { + "name": "cacheExpirySeconds", + "type": "number", + "description": "Time in seconds before the cache expires and refreshes", + "required": false, + "defaultValue": "3600" + }, + { + "name": "cacheStorage", + "type": "string", + "description": "Type of cache storage to use (e.g., Redis, Memcached, in-memory)", + "required": false, + "defaultValue": "in-memory" + }, + { + "name": "maxCacheSizeMB", + "type": "number", + "description": "Maximum size of the cache in megabytes", + "required": false, + "defaultValue": "100" + }, + { + "name": "autoRefresh", + "type": "boolean", + "description": "Whether the cache should automatically refresh upon expiration", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object describing the created cache including cacheId, status (active/failed), expiry time, and statistics like size and hit rate" + }, + "aiAgent": { + "useCase": "Use this tool when you need to optimize database read performance by creating a cache for frequently accessed queries or tables. It helps reduce database load and accelerates data retrieval in applications or systems that support caching layers.", + "limitations": "This tool does not perform actual query optimization or database tuning; it only manages caching. It cannot handle write-through or write-back caching strategies inherently and assumes read-only cache use cases.", + "examples": [ + "Create a cache for the sales table in a PostgreSQL database to improve dashboard performance.", + "Cache the result of a complex SQL query on MySQL with a 2-hour expiry for analytics.", + "Set up an in-memory cache for MongoDB collection data with auto-refresh enabled." + ] + }, + "tags": [ + "database", + "cache", + "performance", + "query-optimization", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"PostgreSQL\",\"connectionString\":\"postgresql://user:pass@host:5432/dbname\",\"tableName\":\"sales\",\"cacheExpirySeconds\":7200,\"cacheStorage\":\"Redis\",\"maxCacheSizeMB\":500,\"autoRefresh\":true}", + "description": "Create a Redis cache for the entire 'sales' table in PostgreSQL with 2-hour expiry and auto refresh enabled." + }, + { + "inputJson": "{\"databaseType\":\"MySQL\",\"connectionString\":\"mysql://user:pass@host:3306/dbname\",\"query\":\"SELECT * FROM orders WHERE status = 'pending'\",\"cacheExpirySeconds\":1800,\"cacheStorage\":\"Memcached\",\"maxCacheSizeMB\":200,\"autoRefresh\":false}", + "description": "Create a Memcached cache for a specific query on MySQL with 30 minutes expiry and no auto refresh." + }, + { + "inputJson": "{\"databaseType\":\"MongoDB\",\"connectionString\":\"mongodb://user:pass@host:27017/dbname\",\"tableName\":\"customers\",\"cacheExpirySeconds\":3600,\"cacheStorage\":\"in-memory\",\"maxCacheSizeMB\":100,\"autoRefresh\":true}", + "description": "Create an in-memory cache for the 'customers' collection in MongoDB with 1-hour expiry and auto refresh enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Cache", + "context": null + } + }, + { + "name": "database-management.createExpense", + "description": "Creates a new expense record in the database with details such as amount, date, category, description, and associated metadata. Accepts structured input parameters, validates required fields, and returns the created expense object including its unique ID and timestamps.", + "category": "database-management", + "parameters": [ + { + "name": "amount", + "type": "number", + "description": "The monetary amount of the expense, required and must be positive.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (ISO 4217) for the expense amount, e.g., 'USD'. Defaults to 'USD'.", + "required": false, + "defaultValue": "USD" + }, + { + "name": "date", + "type": "string", + "description": "The date when the expense occurred in ISO 8601 format (YYYY-MM-DD), required.", + "required": true, + "defaultValue": "" + }, + { + "name": "category", + "type": "string", + "description": "The expense category such as 'Travel', 'Meals', or 'Office Supplies', required.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional detailed description or notes about the expense.", + "required": false, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "Optional payment method used like 'Credit Card', 'Cash', or 'Bank Transfer'.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional metadata as key-value pairs related to the expense.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "An object representing the newly created expense record including unique ID, input fields, creation and update timestamps." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to record or log a new business expense into a database system, ensuring structured data entry and persistent storage for financial tracking. Ideal for automating bookkeeping or expense reporting workflows.", + "limitations": "Does not perform currency conversion, approval workflows, or complex validation beyond required fields and basic formatting. Relies on external database to be available and correctly configured.", + "examples": [ + "Create an expense for a business lunch: amount 45.50, currency USD, date 2024-06-10, category Meals, description 'Lunch with client'.", + "Log a travel expense of 300 EUR on 2024-05-30 under category Travel with payment method 'Credit Card'.", + "Add an office supplies purchase costing 123.99 USD, dated 2024-06-01, and include metadata with vendor name 'Staples' and receipt number." + ] + }, + "tags": [ + "database", + "expense", + "create", + "financial", + "business", + "record", + "transaction" + ], + "examples": [ + { + "inputJson": "{\"amount\":45.50,\"currency\":\"USD\",\"date\":\"2024-06-10\",\"category\":\"Meals\",\"description\":\"Lunch with client\"}", + "description": "Create an expense record for a business lunch." + }, + { + "inputJson": "{\"amount\":300,\"currency\":\"EUR\",\"date\":\"2024-05-30\",\"category\":\"Travel\",\"paymentMethod\":\"Credit Card\"}", + "description": "Log a travel expense paid by credit card." + }, + { + "inputJson": "{\"amount\":123.99,\"currency\":\"USD\",\"date\":\"2024-06-01\",\"category\":\"Office Supplies\",\"metadata\":{\"vendor\":\"Staples\",\"receiptNumber\":\"A12345\"}}", + "description": "Add office supplies purchase with extra metadata." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Expense", + "context": null + } + }, + { + "name": "database-management.createConversion", + "description": "Creates a database conversion report by analyzing raw event and user data to calculate key conversion metrics over a specified time range. Inputs include source database connection, conversion funnel steps, and filters. Outputs structured conversion metrics for further analysis.", + "category": "database-management", + "parameters": [ + { + "name": "sourceDatabase", + "type": "string", + "description": "Connection string or identifier for the source database containing event and user data", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionSteps", + "type": "array", + "description": "Ordered list of events or user actions defining the conversion funnel steps", + "required": true, + "defaultValue": "[]" + }, + { + "name": "startDate", + "type": "string", + "description": "Starting date (inclusive) for the data analysis in ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "Ending date (inclusive) for the data analysis in ISO format (YYYY-MM-DD)", + "required": true, + "defaultValue": "" + }, + { + "name": "userFilters", + "type": "object", + "description": "Optional filters to apply on user segments, e.g., demographics or cohorts", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeDropOffRates", + "type": "boolean", + "description": "Whether to compute drop-off rates between funnel steps", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing computed conversion metrics such as counts per funnel step, conversion rates between steps, and optional drop-off statistics" + }, + "aiAgent": { + "useCase": "Use this tool when building analytics dashboards or reports that require calculating conversion rates and funnel analysis directly from raw database event data. It helps in automating the extraction and computation of key performance indicators related to user conversions.", + "limitations": "This tool assumes the source database schema includes event or action logs with timestamps; it does not perform data cleaning or schema inference and requires correct input parameters.", + "examples": [ + "Create a conversion report from my event database showing signup to purchase funnel for last month.", + "Calculate funnel conversion rates for user onboarding steps filtered by a specific user segment.", + "Generate drop-off rates for ecommerce funnel steps from the analytics database between specific dates." + ] + }, + "tags": [ + "database", + "conversion", + "analytics", + "funnels", + "reporting", + "metrics" + ], + "examples": [ + { + "inputJson": "{\"sourceDatabase\":\"postgresql://user:password@host:5432/eventsdb\",\"conversionSteps\":[\"landing_page_view\",\"signup\",\"email_confirmed\",\"purchase\"],\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\",\"userFilters\":{\"country\":\"US\"},\"includeDropOffRates\":true}", + "description": "Calculate conversion funnel in January 2024 for US users from landing page view to purchase." + }, + { + "inputJson": "{\"sourceDatabase\":\"mysql://user:pass@localhost:3306/appdb\",\"conversionSteps\":[\"app_start\",\"feature_used\",\"subscription_started\"],\"startDate\":\"2024-04-01\",\"endDate\":\"2024-04-30\",\"userFilters\":{},\"includeDropOffRates\":false}", + "description": "Generate conversion metrics for app usage funnel in April 2024 without drop-off rates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Conversion", + "context": null + } + }, + { + "name": "database-management.createCertificate", + "description": "Creates a new SSL/TLS certificate entry in the database to manage security credentials. Accepts certificate data such as common name, issuer, validity period, and public key, then stores this certificate metadata securely. Returns confirmation including certificate ID and status.", + "category": "database-management", + "parameters": [ + { + "name": "commonName", + "type": "string", + "description": "The common name (CN) for the certificate, typically a domain name or entity name.", + "required": true, + "defaultValue": "" + }, + { + "name": "issuer", + "type": "string", + "description": "The name of the certificate authority issuing the certificate.", + "required": true, + "defaultValue": "" + }, + { + "name": "validFrom", + "type": "string", + "description": "The start date of the certificate validity period in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "validTo", + "type": "string", + "description": "The end date of the certificate validity period in ISO 8601 format.", + "required": true, + "defaultValue": "" + }, + { + "name": "publicKey", + "type": "string", + "description": "The public key associated with the certificate, in PEM or DER format as a string.", + "required": true, + "defaultValue": "" + }, + { + "name": "serialNumber", + "type": "string", + "description": "Unique serial number assigned to the certificate.", + "required": true, + "defaultValue": "" + }, + { + "name": "certificateType", + "type": "string", + "description": "Type of the certificate (e.g., SSL, CodeSigning, ClientAuth).", + "required": false, + "defaultValue": "SSL" + } + ], + "returns": { + "type": "object", + "description": "An object containing the stored certificate ID, a status message, and optionally error details if creation failed." + }, + "aiAgent": { + "useCase": "Use this tool when needing to store security certificate metadata in a database system for management, tracking, or validation purposes during security and identity workflows. It is relevant for applications managing certificate inventories or automating TLS certificate lifecycle.", + "limitations": "This tool only stores certificate metadata; it does not generate actual cryptographic keys or sign certificates.", + "examples": [ + "Create a new SSL certificate entry for domain example.com with validity for one year.", + "Store a client authentication certificate's metadata after receiving it from a certificate authority.", + "Update the database by adding a new code signing certificate record for auditing." + ] + }, + "tags": [ + "database", + "security", + "certificate", + "ssl", + "tls", + "management", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"commonName\":\"example.com\",\"issuer\":\"Example CA\",\"validFrom\":\"2024-01-01T00:00:00Z\",\"validTo\":\"2025-01-01T00:00:00Z\",\"publicKey\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkq...\\n-----END PUBLIC KEY-----\",\"serialNumber\":\"1234567890ABCDEF\",\"certificateType\":\"SSL\"}", + "description": "Create an SSL certificate entry for example.com valid for one year from 2024-01-01." + }, + { + "inputJson": "{\"commonName\":\"client.user1\",\"issuer\":\"Example CA\",\"validFrom\":\"2024-05-01T00:00:00Z\",\"validTo\":\"2026-05-01T00:00:00Z\",\"publicKey\":\"-----BEGIN PUBLIC KEY-----\\nMIICIjANBgkq...\\n-----END PUBLIC KEY-----\",\"serialNumber\":\"ABCDEF1234567890\",\"certificateType\":\"ClientAuth\"}", + "description": "Store a client authentication certificate's metadata valid for two years." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Certificate", + "context": null + } + }, + { + "name": "database-management.createChannel", + "description": "Creates a new communication channel entry in the database with specified attributes such as name, type, permissions, and metadata. Accepts channel details as input, processes validations, stores the channel record, and returns the created channel's unique identifier and details.", + "category": "database-management", + "parameters": [ + { + "name": "channelName", + "type": "string", + "description": "The unique name identifier for the channel to create", + "required": true, + "defaultValue": "" + }, + { + "name": "channelType", + "type": "string", + "description": "Type of the channel, e.g., 'public', 'private', or 'encrypted'", + "required": true, + "defaultValue": "" + }, + { + "name": "permissions", + "type": "object", + "description": "An object defining access permissions for the channel (e.g., roles allowed)", + "required": false, + "defaultValue": "{}" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional metadata associated with the channel such as description or tags", + "required": false, + "defaultValue": "{}" + }, + { + "name": "createdBy", + "type": "string", + "description": "User ID or identifier for the channel creator", + "required": true, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique channel ID, name, type, permissions, metadata, creator, and creation timestamp" + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a new communication channel record in a database system, such as setting up new chat rooms, notification streams, or topic channels with specific access controls and metadata. It supports managing channel lifecycle by providing standard attributes required for channel management in multi-user systems.", + "limitations": "This tool does not establish real-time communication protocols or messaging infrastructure; it only creates and stores channel metadata in the database. Integration with messaging services and user notification is outside its scope.", + "examples": [ + "Create a public channel named 'general' accessible to all users", + "Create a private channel named 'dev-team' restricted to team members", + "Create an encrypted channel for sensitive communications with custom metadata" + ] + }, + "tags": [ + "database", + "channel management", + "communication", + "create", + "permissions", + "metadata" + ], + "examples": [ + { + "inputJson": "{\"channelName\":\"general\",\"channelType\":\"public\",\"permissions\":{},\"metadata\":{\"description\":\"General discussion channel\"},\"createdBy\":\"user123\"}", + "description": "Create a public channel named 'general' with a description and no special permissions." + }, + { + "inputJson": "{\"channelName\":\"dev-team\",\"channelType\":\"private\",\"permissions\":{\"roles\":[\"developer\",\"manager\"]},\"metadata\":{\"description\":\"Development team discussions\"},\"createdBy\":\"user456\"}", + "description": "Create a private channel for the development team with restricted access based on roles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Channel", + "context": null + } + }, + { + "name": "database-management.createDiagram", + "description": "Generates a visual Entity-Relationship Diagram (ERD) for a specified database schema. Accepts database connection details and optional customization parameters, processes the schema metadata, and outputs a diagram file (SVG/PNG) or JSON representation of the diagram structure for further use or visualization.", + "category": "database-management", + "parameters": [ + { + "name": "dbType", + "type": "string", + "description": "Type of the database (e.g., mysql, postgres, oracle) to connect and extract schema from.", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Database connection string or URL to access the target database.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeTables", + "type": "array", + "description": "Optional list of table names to include in the diagram; if empty, all tables are included.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "excludeTables", + "type": "array", + "description": "Optional list of table names to exclude from the diagram.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format of the diagram: 'svg', 'png', or 'json'.", + "required": false, + "defaultValue": "svg" + }, + { + "name": "showIndexes", + "type": "boolean", + "description": "Whether to include index information on the diagram.", + "required": false, + "defaultValue": "true" + }, + { + "name": "showColumnTypes", + "type": "boolean", + "description": "Whether to display column data types in the diagram.", + "required": false, + "defaultValue": "true" + }, + { + "name": "diagramTitle", + "type": "string", + "description": "Optional title text to display at the top of the diagram.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the diagram in the specified format as a base64 string or as structured JSON, plus metadata about included tables and relationships." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to visualize a relational database schema clearly, such as for documentation, analysis, or communication with development teams. It helps in generating ER diagrams automatically from live databases without manual diagram construction.", + "limitations": "Cannot modify or alter database schema; depends on database connectivity and permissions; complex or very large schemas may result in crowded diagrams; does not support non-relational databases.", + "examples": [ + "Create an ER diagram in PNG format from a PostgreSQL database connection.", + "Generate a JSON object representing the schema diagram for inclusion in a documentation system.", + "Produce an SVG ER diagram including only specific tables for a MySQL database." + ] + }, + "tags": [ + "database", + "diagram", + "ERD", + "schema-visualization", + "database-management", + "visualization", + "documentation" + ], + "examples": [ + { + "inputJson": "{\"dbType\":\"postgres\",\"connectionString\":\"postgresql://user:pass@localhost:5432/mydb\",\"outputFormat\":\"png\",\"diagramTitle\":\"Customer DB Schema\"}", + "description": "Generate a PNG ER diagram for a PostgreSQL database with a custom title." + }, + { + "inputJson": "{\"dbType\":\"mysql\",\"connectionString\":\"mysql://user:pass@localhost/mydb\",\"includeTables\":[\"users\",\"orders\"],\"excludeTables\":[],\"outputFormat\":\"svg\",\"showIndexes\":false}", + "description": "Create an SVG diagram for MySQL including only 'users' and 'orders' tables without index info." + }, + { + "inputJson": "{\"dbType\":\"oracle\",\"connectionString\":\"oracle://user:pass@host:1521/dbname\",\"outputFormat\":\"json\",\"showColumnTypes\":false}", + "description": "Output a JSON structured diagram for an Oracle database without column types displayed." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Diagram", + "context": null + } + }, + { + "name": "database-management.createGraph", + "description": "Creates a graph data structure representation from given database tables and relationships. Accepts parameters describing nodes and edges, processes relational data into a graph model, and outputs the graph in a standard JSON format suitable for visualization or graph database import.", + "category": "database-management", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Type of the source database (e.g., 'mysql', 'postgres', 'mongodb').", + "required": true, + "defaultValue": "" + }, + { + "name": "connectionString", + "type": "string", + "description": "Connection string or URI to connect to the source database.", + "required": true, + "defaultValue": "" + }, + { + "name": "nodeTables", + "type": "array", + "description": "List of table names to be treated as nodes in the graph.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "edgeRelations", + "type": "array", + "description": "List of relationship definitions representing edges, each with 'from', 'to', and optionally 'label' fields.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "includeProperties", + "type": "boolean", + "description": "Whether to include node and edge properties in the graph output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "limitRowsPerTable", + "type": "number", + "description": "Maximum number of rows to process per table to limit graph size; 0 means no limit.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'nodes' array and 'edges' array representing the created graph data structure in JSON format." + }, + "aiAgent": { + "useCase": "Use this tool when you need to transform relational database schema and data into a graph data model for visualization, analysis, or importing into graph databases. It is ideal for generating node-edge representations from tables and their relationships automatically.", + "limitations": "This tool cannot connect to databases without correct credentials and URI, does not perform data cleaning, and may not support complex or non-relational schemas fully. It doesn't generate visual graphs, only the data structure.", + "examples": [ + "Create a graph from a MySQL database with 'users' and 'orders' tables as nodes connected by foreign keys.", + "Generate a graph model including properties for nodes and edges with a row limit to reduce output size.", + "Build a graph JSON from PostgreSQL database specifying relationships for visualizing the social network." + ] + }, + "tags": [ + "database-management", + "graph-creation", + "relational-to-graph", + "data-visualization", + "graph-structure" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"mysql\",\"connectionString\":\"mysql://user:pass@localhost:3306/shopdb\",\"nodeTables\":[\"users\",\"orders\"],\"edgeRelations\":[{\"from\":\"users\",\"to\":\"orders\",\"label\":\"placed\"}],\"includeProperties\":true,\"limitRowsPerTable\":100}", + "description": "Create a graph JSON from 'users' and 'orders' tables in a MySQL database with edges labeled 'placed'." + }, + { + "inputJson": "{\"databaseType\":\"postgres\",\"connectionString\":\"postgresql://admin:1234@localhost:5432/social\",\"nodeTables\":[\"people\",\"friends\"],\"edgeRelations\":[{\"from\":\"people\",\"to\":\"people\",\"label\":\"friend_of\"}],\"includeProperties\":false,\"limitRowsPerTable\":0}", + "description": "Generate friend-of relationships graph for 'people' table in PostgreSQL without properties included." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Graph", + "context": null + } + }, + { + "name": "database-management.createAudio", + "description": "This tool accepts structured input data such as text transcripts or audio metadata and creates new audio entries in a database with associated metadata including title, duration, format, and tags. It processes inputs to generate properly formatted audio database records and returns the newly created audio record's ID and status confirmation.", + "category": "database-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the audio entry to create", + "required": true, + "defaultValue": "" + }, + { + "name": "audioContent", + "type": "string", + "description": "Base64 encoded audio file content or URL reference to audio source", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The audio file format (e.g., mp3, wav, flac)", + "required": true, + "defaultValue": "" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "Duration of the audio clip in seconds", + "required": false, + "defaultValue": "0" + }, + { + "name": "tags", + "type": "array", + "description": "List of descriptive tags for categorizing the audio", + "required": false, + "defaultValue": "[]" + }, + { + "name": "transcript", + "type": "string", + "description": "Optional text transcript of the audio content", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the created audio record ID, status message, and any validation errors." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to add new audio records into a database by providing audio data and metadata, facilitating media management or cataloging systems. It is suitable for organizing audio assets with searchable metadata and optional transcripts.", + "limitations": "This tool does not perform audio generation or editing, only creates database records for existing audio data. Audio content must be provided as a file or URL; encoding or processing audio beyond metadata storage is out of scope.", + "examples": [ + "Create a new podcast episode audio record including title, mp3 audio data, duration, and transcript.", + "Add an audio clip to the database with tags for music and ambient sound.", + "Store a voice memo audio entry including its text transcript for search purposes." + ] + }, + "tags": [ + "database", + "audio", + "create", + "media-management", + "metadata", + "cataloging" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Morning Podcast Episode 1\",\"audioContent\":\"base64encodedstring...\",\"format\":\"mp3\",\"durationSeconds\":3600,\"tags\":[\"podcast\",\"morning\"],\"transcript\":\"Welcome to the first episode...\"}", + "description": "Creating a new podcast episode audio record with metadata and transcript." + }, + { + "inputJson": "{\"title\":\"Forest Ambience\",\"audioContent\":\"http://example.com/audio/forest.wav\",\"format\":\"wav\",\"durationSeconds\":180,\"tags\":[\"ambient\",\"nature\"]}", + "description": "Adding a nature ambient sound audio clip by URL with tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Audio", + "context": null + } + }, + { + "name": "database-management.createTemplate", + "description": "This tool creates a reusable database query template based on user-defined parameters, including the template name, target database type, SQL query with placeholders, and optional metadata. It accepts JSON inputs describing the template structure, validates the SQL syntax against the specified database dialect, and outputs a template ID and details for storage and future querying.", + "category": "database-management", + "parameters": [ + { + "name": "templateName", + "type": "string", + "description": "Name of the query template to identify it uniquely.", + "required": true, + "defaultValue": "" + }, + { + "name": "databaseType", + "type": "string", + "description": "Type of database for which the template is designed (e.g., MySQL, PostgreSQL).", + "required": true, + "defaultValue": "" + }, + { + "name": "sqlQuery", + "type": "string", + "description": "The SQL query string with placeholders for parameters (e.g., ':userId').", + "required": true, + "defaultValue": "" + }, + { + "name": "parametersSchema", + "type": "object", + "description": "JSON schema defining expected parameters and their types for the SQL query placeholders.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description of what the template does.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created template ID, template name, database type, SQL query, parameters schema, and creation timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically create standardized, reusable SQL query templates that can be stored and executed later with dynamic parameters, ensuring consistency across database queries and facilitating automation in data management tasks.", + "limitations": "This tool does not execute the SQL query or validate the correctness of parameter values at runtime; it only validates syntax and structure based on the database type. It does not support non-SQL databases or complex stored procedures.", + "examples": [ + "Create an SQL query template to select user data by user ID for a PostgreSQL database.", + "Generate a reusable insert statement template for a MySQL database with defined parameter schema.", + "Create a description-rich template for updating order status with placeholders for order ID and status." + ] + }, + "tags": [ + "database", + "template", + "SQL", + "query-generation", + "automation", + "database-management" + ], + "examples": [ + { + "inputJson": "{\"templateName\":\"GetUserById\",\"databaseType\":\"PostgreSQL\",\"sqlQuery\":\"SELECT * FROM users WHERE user_id = :userId;\",\"parametersSchema\":{\"userId\":{\"type\":\"integer\"}},\"description\":\"Fetch user details by user ID.\"}", + "description": "Create a PostgreSQL query template to select user details by user ID with parameter validation." + }, + { + "inputJson": "{\"templateName\":\"InsertNewOrder\",\"databaseType\":\"MySQL\",\"sqlQuery\":\"INSERT INTO orders (user_id, product_id, quantity) VALUES (:userId, :productId, :quantity);\",\"parametersSchema\":{\"userId\":{\"type\":\"integer\"},\"productId\":{\"type\":\"integer\"},\"quantity\":{\"type\":\"integer\"}},\"description\":\"Insert a new order record with user, product, and quantity.\"}", + "description": "Create a MySQL insert statement template with multiple parameters." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Template", + "context": null + } + }, + { + "name": "database-management.createYAML", + "description": "This tool accepts structured database query results or schema definitions as input objects and converts them into a well-formed YAML formatted string. It processes JSON-like inputs representing tables, columns, or query outputs and produces human-readable YAML files suitable for configuration, export, or documentation use.", + "category": "database-management", + "parameters": [ + { + "name": "dataObject", + "type": "object", + "description": "Structured input data representing database query results or schema to be converted into YAML format.", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in generated YAML to enhance readability.", + "required": false, + "defaultValue": "2" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "If true, includes descriptive comments or metadata in the YAML output when available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "sortKeys", + "type": "boolean", + "description": "Sorts keys alphabetically in the output YAML for consistency if set to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated YAML string under the 'yamlString' key." + }, + "aiAgent": { + "useCase": "Use this tool when needing to export or transform structured database query results, schemas, or configuration objects into YAML format for use in config files, documentation, or interoperability with other systems that accept YAML inputs.", + "limitations": "Does not validate the semantics of the input data; only converts provided structure. Complex circular references or unsupported data types may cause conversion issues.", + "examples": [ + "Convert a JSON representation of a database schema into YAML for configuration.", + "Export query results from a database as YAML to include in documentation.", + "Generate YAML formatted backups of certain database metadata for integration with other tools." + ] + }, + "tags": [ + "database", + "YAML", + "export", + "serialization", + "configuration", + "schema", + "query-results" + ], + "examples": [ + { + "inputJson": "{\"dataObject\":{\"tables\":[{\"name\":\"users\",\"columns\":[{\"name\":\"id\",\"type\":\"integer\"},{\"name\":\"name\",\"type\":\"string\"}]}]},\"indentation\":4,\"includeComments\":false,\"sortKeys\":true}", + "description": "Converts a simple database schema object describing tables and columns into an indented, sorted YAML string without comments." + }, + { + "inputJson": "{\"dataObject\":{\"queryResult\":[{\"id\":1,\"name\":\"Alice\"},{\"id\":2,\"name\":\"Bob\"}]},\"indentation\":2,\"includeComments\":true,\"sortKeys\":false}", + "description": "Transforms query results data into a YAML string with comments included, keeping original key order." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "YAML", + "context": null + } + }, + { + "name": "database-management.createBlogPost", + "description": "This tool creates a new blog post entry in a database. It accepts inputs such as the post title, content body, author name, tags, and an optional publication date. The tool processes these inputs and inserts a structured blog post record into the database, returning the unique ID and timestamp of the created entry.", + "category": "database-management", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title of the blog post.", + "required": true, + "defaultValue": "" + }, + { + "name": "content", + "type": "string", + "description": "The main content body of the blog post.", + "required": true, + "defaultValue": "" + }, + { + "name": "author", + "type": "string", + "description": "Name of the blog post author.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "List of tags associated with the blog post for categorization.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "publicationDate", + "type": "string", + "description": "Optional ISO 8601 formatted date-time string to set the publish date; uses current date if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Returns an object including the unique identifier of the created blog post, the creation timestamp, and confirmation of the stored fields." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to add new blog post content into a CMS or database programmatically, ensuring consistent structure and storing metadata like tags and publication date.", + "limitations": "This tool does not handle media uploads (images/videos), does not perform content moderation or validation beyond simple presence checks, and assumes the backing database is reachable and correctly configured.", + "examples": [ + "Create a new blog post titled 'Tech Trends 2024' by author 'Jane Doe' with tags ['technology','2024'] published immediately.", + "Add a draft post with a future publication date to schedule release.", + "Insert a blog post without tags or publication date." + ] + }, + "tags": [ + "database", + "blog", + "create", + "content-management", + "cms", + "post", + "publication" + ], + "examples": [ + { + "inputJson": "{\"title\":\"My First Blog Post\",\"content\":\"This is the content of my first post.\",\"author\":\"Alice Smith\",\"tags\":[\"introduction\",\"welcome\"],\"publicationDate\":\"2024-06-01T09:00:00Z\"}", + "description": "Create a blog post with all fields including a scheduled publication date." + }, + { + "inputJson": "{\"title\":\"Weekly Update\",\"content\":\"Updates for the week...\",\"author\":\"Bob Lee\",\"tags\":[],\"publicationDate\":\"\"}", + "description": "Create an immediate publication blog post without tags." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "BlogPost", + "context": null + } + }, + { + "name": "testing-automation.analyzeLink", + "description": "This tool accepts a URL string input and performs automated analysis of the link's health and quality. It fetches the link, checks HTTP status, identifies redirects, validates SSL certificate, scans for broken or dead links within the page, and evaluates page load performance indicators. The output is a structured report detailing link accessibility, security, and internal link integrity, assisting in automated web testing and monitoring.", + "category": "testing-automation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL of the link to analyze. Must be a valid HTTP/HTTPS URL.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkInternalLinks", + "type": "boolean", + "description": "If true, scans and reports on broken links within the linked page.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the link to respond before aborting.", + "required": false, + "defaultValue": "10" + }, + { + "name": "maxInternalLinks", + "type": "number", + "description": "Maximum number of internal links to analyze within the page to limit scan scope.", + "required": false, + "defaultValue": "100" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing HTTP status, SSL certificate validity, redirect chain, page load time, and broken internal links count and details." + }, + "aiAgent": { + "useCase": "Use this tool when automated testing requires evaluating the validity, accessibility, and security of web links, such as verifying URLs in web applications, checking link rot, or monitoring website health in continuous integration workflows.", + "limitations": "This tool does not perform content analysis beyond link-level checks and cannot guarantee detection of dynamically generated links loaded by scripts after page load. It requires network access to the URL and may fail with highly protected or geo-restricted sites.", + "examples": [ + "Analyze the link 'https://example.com' for HTTP status and internal link breaks.", + "Check if 'https://secure-site.org' has a valid SSL certificate and no broken internal links.", + "Verify that the link 'http://oldsite.net/page' is accessible with no redirects outside the domain." + ] + }, + "tags": [ + "testing", + "automation", + "link-analysis", + "web-testing", + "url-validation" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"checkInternalLinks\":true,\"timeoutSeconds\":8,\"maxInternalLinks\":50}", + "description": "Analyze example.com with internal link checking, timeout 8 sec, limit to 50 internal links." + }, + { + "inputJson": "{\"url\":\"https://expired.badssl.com\",\"checkInternalLinks\":false}", + "description": "Check SSL validity and HTTP status on a known site with an expired SSL certificate, without scanning internal links." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Link", + "context": null + } + }, + { + "name": "testing-automation.analyzeKPI", + "description": "Analyzes Key Performance Indicators (KPIs) from automated testing data by processing input test run metrics, applying statistical methods and threshold evaluations to determine performance trends and issues, and produces a detailed report including KPI trends, anomalies, and improvement recommendations.", + "category": "testing-automation", + "parameters": [ + { + "name": "testRunData", + "type": "array", + "description": "An array of objects representing individual test runs with metrics such as duration, pass/fail status, and timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiDefinitions", + "type": "object", + "description": "An object defining KPIs to analyze, each with calculation formulas, threshold values for alerts, and target goals.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional date range to filter test runs, with 'startDate' and 'endDate' ISO strings.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeAnomalies", + "type": "boolean", + "description": "Flag to indicate if anomaly detection on KPI trends should be included in the analysis.", + "required": false, + "defaultValue": "true" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output report, e.g., 'json' for structured data or 'csv' for tabular data.", + "required": false, + "defaultValue": "json" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including KPI evaluation results, trend graphs (base64 images or data URIs), anomaly alerts, and recommendations for improving test KPIs." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to evaluate automated testing KPIs over a series of test runs to assess software quality trends, detect performance regressions, and recommend areas for process improvement within software development lifecycles.", + "limitations": "Cannot directly access external test data sources or databases; requires all test run data and KPI definitions to be supplied in input. It does not perform tests or collect data itself, only analyzes provided data.", + "examples": [ + "Analyze KPIs for the last month of nightly test runs to detect any regressions in test pass rates.", + "Generate a KPI report identifying slow test cases and suggesting optimization points based on duration thresholds.", + "Evaluate current test automation effectiveness by analyzing flakiness and failure rate KPIs over quarterly data." + ] + }, + "tags": [ + "testing", + "automation", + "analytics", + "KPI", + "performance", + "software quality", + "test metrics" + ], + "examples": [ + { + "inputJson": "{\"testRunData\":[{\"testId\":\"login_01\",\"duration\":1200,\"passed\":true,\"timestamp\":\"2024-05-01T10:00:00Z\"},{\"testId\":\"login_01\",\"duration\":1500,\"passed\":false,\"timestamp\":\"2024-05-02T10:00:00Z\"},{\"testId\":\"payment_02\",\"duration\":800,\"passed\":true,\"timestamp\":\"2024-05-01T10:10:00Z\"}],\"kpiDefinitions\":{\"passRate\":{\"formula\":\"passed/total\",\"threshold\":0.95,\"target\":1.0},\"avgDuration\":{\"formula\":\"avg(duration)\",\"threshold\":1000,\"target\":500}},\"timeRange\":{\"startDate\":\"2024-05-01T00:00:00Z\",\"endDate\":\"2024-05-31T23:59:59Z\"},\"includeAnomalies\":true,\"outputFormat\":\"json\"}", + "description": "Analyze pass rate and average duration KPIs from test runs in May 2024, including anomaly detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "KPI", + "context": null + } + }, + { + "name": "testing-automation.analyzeComment", + "description": "Analyzes a software development comment string to extract sentiment, detect actionable items, and identify potential code quality concerns. Accepts a comment text input, processes it using natural language analysis and domain-specific heuristics, and outputs a structured report detailing sentiment, issue tags, and recommended follow-up actions.", + "category": "testing-automation", + "parameters": [ + { + "name": "commentText", + "type": "string", + "description": "The textual content of the software comment to analyze (e.g., code review comments, commit messages).", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "The natural language of the comment, to improve analysis accuracy (e.g., 'en' for English).", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeSentiment", + "type": "boolean", + "description": "Whether to perform sentiment analysis on the comment text.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectActions", + "type": "boolean", + "description": "Whether to detect actionable items or requests in the comment.", + "required": false, + "defaultValue": "true" + }, + { + "name": "detectCodeQualityConcerns", + "type": "boolean", + "description": "Whether to identify references to code quality issues in the comment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "A detailed analysis report object containing overall sentiment, a list of detected actionable items, and identified code quality concerns, each with explanations and confidence scores." + }, + "aiAgent": { + "useCase": "This tool is ideal for AI agents automating software testing workflows to analyze comments found in code reviews, commit logs, or issue trackers. It helps detect tone, prioritize actionable feedback, and surface potential quality issues early. Agents can use it to summarize comments, generate recommended tasks, or flag problematic remarks requiring human attention.", + "limitations": "This tool is optimized for textual comments in a limited set of natural languages and may not accurately interpret highly technical jargon, sarcasm, or cultural nuances. It cannot execute code or verify the correctness of suggested actions.", + "examples": [ + "Analyze the sentiment and actionable requests in this code review comment.", + "Detect any code quality concerns mentioned in the latest commit message.", + "Summarize actionable feedback from developer comments on a pull request." + ] + }, + "tags": [ + "testing", + "automation", + "comment analysis", + "sentiment", + "code review", + "actionable feedback" + ], + "examples": [ + { + "inputJson": "{\"commentText\":\"I think this function is a bit too complex and might cause issues later. Please consider refactoring it.\",\"language\":\"en\",\"includeSentiment\":true,\"detectActions\":true,\"detectCodeQualityConcerns\":true}", + "description": "Analyze a constructive code review comment mentioning complexity and refactoring request." + }, + { + "inputJson": "{\"commentText\":\"Looks good to me, no changes needed.\",\"includeSentiment\":true}", + "description": "Analyze a positive approval comment with no actionable requests." + }, + { + "inputJson": "{\"commentText\":\"This hack is ugly but works. We should clean it up before release.\",\"includeSentiment\":true,\"detectActions\":true,\"detectCodeQualityConcerns\":true}", + "description": "Analyze a comment describing a workaround that might affect code quality and contains a cleanup action request." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Comment", + "context": null + } + }, + { + "name": "testing-automation.analyzeDashboard", + "description": "Analyzes automated testing dashboard data by accepting JSON-formatted test execution and results logs. Processes metrics such as pass/fail rates, test coverage, execution times, and trends over time. Produces a structured summary report highlighting key performance indicators, flakiness alerts, and areas for test improvement.", + "category": "testing-automation", + "parameters": [ + { + "name": "dashboardData", + "type": "object", + "description": "A JSON object representing the structured test execution logs and results to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional object defining start and end timestamps (ISO 8601 strings) to filter the dashboard data period.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeFlakinessAnalysis", + "type": "boolean", + "description": "Flag indicating whether to analyze test flakiness based on historical inconsistent test outcomes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "minTestCoverageThreshold", + "type": "number", + "description": "Minimum test coverage percentage to identify under-covered test areas; values 0-100.", + "required": false, + "defaultValue": "80" + }, + { + "name": "trendAnalysisPeriodDays", + "type": "number", + "description": "Number of recent days over which to analyze trend data for test performance metrics.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing summarized test results metrics, trend insights, flakiness alerts, and coverage warnings." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to summarize and interpret complex automated testing dashboard data to provide actionable insights like test stability, coverage gaps, and execution trends. Ideal for continuous integration pipelines and quality engineers seeking data-driven testing improvements.", + "limitations": "This tool does not run tests, cannot fix test failures, and relies on properly structured and comprehensive test result data input for accurate analysis.", + "examples": [ + "Analyze dashboard data for the last month highlighting flaky tests and coverage below 90%.", + "Summarize test execution trends ignoring flakiness analysis over a custom date range.", + "Generate a report from recent CI pipeline test data including flakiness insights and coverage metrics." + ] + }, + "tags": [ + "automated testing", + "dashboard analysis", + "test results", + "test coverage", + "flakiness detection", + "CI/CD", + "trend analysis" + ], + "examples": [ + { + "inputJson": "{\"dashboardData\":{\"tests\":[{\"id\":\"T001\",\"status\":\"pass\",\"duration\":120,\"timestamp\":\"2024-05-20T10:00:00Z\"},{\"id\":\"T002\",\"status\":\"fail\",\"duration\":150,\"timestamp\":\"2024-05-20T10:05:00Z\"},{\"id\":\"T001\",\"status\":\"fail\",\"duration\":110,\"timestamp\":\"2024-05-19T10:00:00Z\"}]},\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-31T23:59:59Z\"},\"includeFlakinessAnalysis\":true,\"minTestCoverageThreshold\":85,\"trendAnalysisPeriodDays\":30}", + "description": "Analyze May test dashboard data with flakiness analysis, considering tests with coverage less than 85%." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Dashboard", + "context": null + } + }, + { + "name": "testing-automation.analyzeRisk", + "description": "Analyzes software test automation suites to identify and evaluate potential risks that could impact test reliability, security, and effectiveness. Takes as input test scripts, test environment details, and risk criteria to output a detailed risk assessment report with prioritized risk items and suggested mitigations.", + "category": "testing-automation", + "parameters": [ + { + "name": "testScripts", + "type": "array", + "description": "An array of test script objects or code snippets to analyze for risks.", + "required": true, + "defaultValue": "" + }, + { + "name": "testEnvironment", + "type": "object", + "description": "Details of the test environment including OS, browsers, network configurations relevant for risk analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "riskCriteria", + "type": "object", + "description": "Customizable risk criteria including categories such as security risks, flaky tests, data sensitivity, and infrastructure dependencies.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeHistoricalFailures", + "type": "boolean", + "description": "Flag indicating whether to include analysis of historical test failures to assess risk patterns.", + "required": false, + "defaultValue": "false" + }, + { + "name": "maxRiskItems", + "type": "number", + "description": "Maximum number of top risk items to report (prioritized by risk score).", + "required": false, + "defaultValue": "10" + } + ], + "returns": { + "type": "object", + "description": "A structured risk assessment report containing identified risk items, their severity, likelihood, potential impact, and recommended mitigation actions." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess risks in a software test automation suite, such as identifying fragile tests, security weaknesses in test scripts, or environment-related risks that could cause unreliable test results or security vulnerabilities.", + "limitations": "Cannot automatically fix identified risks or execute tests. Does not analyze manual tests or production system risks beyond test automation context.", + "examples": [ + "Analyze risk in our latest Selenium test scripts given our QA environment settings.", + "Assess potential security and reliability risks in our automated test suite before release.", + "Generate a prioritized list of flaky tests from historical failure data for mitigation planning." + ] + }, + "tags": [ + "testing", + "automation", + "risk-analysis", + "security", + "quality-assurance", + "test-scripts", + "flaky-tests" + ], + "examples": [ + { + "inputJson": "{\"testScripts\":[{\"id\":\"TS001\",\"content\":\"Login test script using Selenium WebDriver\"},{\"id\":\"TS002\",\"content\":\"Data validation script with API mocks\"}],\"testEnvironment\":{\"os\":\"Windows 10\",\"browsers\":[\"Chrome 90\",\"Firefox 88\"],\"network\":\"corporate VPN\"},\"riskCriteria\":{\"riskCategories\":[\"flaky-tests\",\"security\",\"data-sensitivity\"]},\"includeHistoricalFailures\":true,\"maxRiskItems\":5}", + "description": "Analyze login and data validation Selenium scripts in specified environment focusing on flaky tests, security, and data sensitivity, including test failure history with top 5 risks." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Risk", + "context": null + } + }, + { + "name": "testing-automation.analyzeTable", + "description": "Analyzes tabular test data or test result tables to detect anomalies, summarize key metrics, and identify outliers or patterns impacting software test automation. Accepts table data in JSON format, processes each row and column for statistical and consistency checks, and returns a structured report highlighting potential issues and test coverage insights.", + "category": "testing-automation", + "parameters": [ + { + "name": "tableData", + "type": "array", + "description": "An array of objects representing rows in the table; each object contains column key-value pairs. Required to analyze test data or results.", + "required": true, + "defaultValue": "" + }, + { + "name": "keyColumns", + "type": "array", + "description": "List of column names to use as keys or identifiers for grouping and analysis. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "numericColumns", + "type": "array", + "description": "List of column names expected to contain numeric values for statistical analysis like mean and standard deviation. Optional.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "detectionThreshold", + "type": "number", + "description": "Threshold value for flagging anomalies or outliers in numeric data, specified as number of standard deviations from mean.", + "required": false, + "defaultValue": "3" + }, + { + "name": "includeSummary", + "type": "boolean", + "description": "If true, includes a statistical summary (mean, median, mode) for numeric columns in the output report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxRowSamples", + "type": "number", + "description": "Maximum number of example rows to include in the report for each detected anomaly or pattern. Helps keep report concise.", + "required": false, + "defaultValue": "5" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing detected anomalies, summary statistics, outlier details, and possible data inconsistencies or missing values." + }, + "aiAgent": { + "useCase": "Use this tool when needing automated insight into test automation data presented as tables, such as pass/fail rates, execution times, or coverage metrics, to detect unexpected results or data integrity issues that might affect CI/CD pipelines.", + "limitations": "Cannot fix data errors or execute tests; limited to analyzing provided data format (array of objects). Statistical anomaly detection is basic and may require domain-specific tuning.", + "examples": [ + "Analyze a test results table JSON to find tests with abnormally long execution times.", + "Summarize coverage metrics in a table and flag any unexpected zero coverage areas.", + "Detect missing data or inconsistent status entries in automated test logs represented as table data." + ] + }, + "tags": [ + "testing", + "automation", + "table", + "analysis", + "anomaly-detection", + "quality-assurance", + "data-validation" + ], + "examples": [ + { + "inputJson": "{\"tableData\":[{\"testName\":\"LoginTest\",\"status\":\"PASS\",\"durationMs\":120},{\"testName\":\"CheckoutTest\",\"status\":\"FAIL\",\"durationMs\":430},{\"testName\":\"SearchTest\",\"status\":\"PASS\",\"durationMs\":200},{\"testName\":\"ProfileUpdateTest\",\"status\":\"PASS\",\"durationMs\":180},{\"testName\":\"LongRunningTest\",\"status\":\"PASS\",\"durationMs\":1500}],\"keyColumns\":[\"testName\"],\"numericColumns\":[\"durationMs\"],\"detectionThreshold\":2,\"includeSummary\":true,\"maxRowSamples\":3}", + "description": "Analyze test result durations to detect tests with unusually long execution times and provide summary statistics." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Table", + "context": null + } + }, + { + "name": "testing-automation.analyzeOpportunity", + "description": "Analyzes opportunities for automated testing improvements within a software development project. Accepts inputs describing current test coverage, test types, historical test results, and project goals. Processes these inputs to identify gaps, suggest automation candidates, and estimate potential impact. Returns a detailed analysis report highlighting actionable testing automation opportunities.", + "category": "testing-automation", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the software project to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "currentTestCoverage", + "type": "number", + "description": "Current percentage of code or features covered by automated tests (0-100).", + "required": true, + "defaultValue": "" + }, + { + "name": "testTypesIncluded", + "type": "array", + "description": "Array of existing automated test types in use (e.g., unit, integration, UI).", + "required": true, + "defaultValue": "" + }, + { + "name": "historicalTestResults", + "type": "object", + "description": "Historical test results data including failure rates and flaky tests statistics.", + "required": false, + "defaultValue": "" + }, + { + "name": "projectGoals", + "type": "array", + "description": "List of automation or quality goals prioritized by the project (e.g., reduce regression bugs, speed CI).", + "required": false, + "defaultValue": "" + }, + { + "name": "maxEffortLevel", + "type": "string", + "description": "Maximum acceptable effort level for implementing new automation opportunities (e.g., low, medium, high).", + "required": false, + "defaultValue": "medium" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing identified gaps in testing, recommended automation opportunities, estimated effort and benefits, and prioritization based on project goals." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating current software test automation to identify significant gaps and actionable opportunities to improve test automation coverage and quality. It helps select areas where automation investments yield the highest impact on quality and development efficiency.", + "limitations": "The tool depends on accurate and current input data; it cannot perform actual automation or generate detailed automation scripts. It does not assess code complexity or specific technical feasibility.", + "examples": [ + "Analyze testing gaps and automation opportunities for Project X with 65% coverage and unit/integration tests.", + "Evaluate automation opportunities focusing on reducing flaky UI tests in Project Y.", + "Identify test automation gaps in Project Z considering goals to speed up CI pipelines." + ] + }, + "tags": [ + "testing", + "automation", + "analysis", + "quality-assurance", + "test-coverage" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"Project Phoenix\",\"currentTestCoverage\":70,\"testTypesIncluded\":[\"unit\",\"integration\"],\"historicalTestResults\":{\"failureRate\":0.05,\"flakyTestsPercentage\":0.02},\"projectGoals\":[\"reduce regression bugs\",\"accelerate CI pipeline\"],\"maxEffortLevel\":\"medium\"}", + "description": "Analyze test automation opportunities for Project Phoenix with moderate coverage and focus on reducing regressions and speeding CI." + }, + { + "inputJson": "{\"projectName\":\"AlphaApp\",\"currentTestCoverage\":40,\"testTypesIncluded\":[\"unit\"],\"historicalTestResults\":{\"failureRate\":0.10,\"flakyTestsPercentage\":0.05},\"projectGoals\":[\"expand UI test coverage\"],\"maxEffortLevel\":\"high\"}", + "description": "Evaluate opportunities for expanding UI test automation in AlphaApp with low coverage and high test failure rates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Opportunity", + "context": null + } + }, + { + "name": "testing-automation.analyzePayment", + "description": "Analyzes payment transaction records to identify inconsistencies, fraud indicators, and performance anomalies. Accepts structured payment data input, executes validation against business rules, anomaly detection, and fraud pattern analysis, then outputs a detailed report of findings including risk scores and flagged entries.", + "category": "testing-automation", + "parameters": [ + { + "name": "paymentData", + "type": "array", + "description": "An array of payment transaction objects to be analyzed, each containing timestamp, amount, payer, payee, and status fields.", + "required": true, + "defaultValue": "" + }, + { + "name": "fraudDetectionRules", + "type": "object", + "description": "An optional object specifying custom rules or thresholds for fraud detection analysis.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "performanceThresholds", + "type": "object", + "description": "An optional object defining acceptable performance metrics such as transaction processing times for anomaly detection.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeDetailedLogs", + "type": "boolean", + "description": "Flag indicating if detailed transaction processing logs should be included in the analysis output.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing summary statistics, risk assessment scores, identified anomalies and fraud flags, plus optionally detailed analysis logs." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically validate large volumes of payment transactions to detect potential fraud, anomalies in payment behavior, or performance bottlenecks before deploying or releasing payment processing systems.", + "limitations": "This tool analyzes transactional data based on supplied rules and cannot directly interface with live payment gateways or fix detected issues. Accuracy depends on quality and completeness of input data and correctness of fraud/performance rules.", + "examples": [ + "Analyze a batch of payment transactions for fraud indicators and performance anomalies.", + "Check a payment log dataset to produce a compliance and risk report.", + "Perform anomaly detection on payment amounts and processing durations with custom thresholds." + ] + }, + "tags": [ + "testing", + "automation", + "payment", + "fraud detection", + "anomaly detection", + "performance analysis" + ], + "examples": [ + { + "inputJson": "{\"paymentData\":[{\"timestamp\":\"2024-06-01T12:00:00Z\",\"amount\":120.50,\"payer\":\"user123\",\"payee\":\"merchant456\",\"status\":\"completed\"},{\"timestamp\":\"2024-06-01T12:05:00Z\",\"amount\":12700,\"payer\":\"user789\",\"payee\":\"merchant456\",\"status\":\"completed\"}],\"fraudDetectionRules\":{\"maxAmount\":10000},\"performanceThresholds\":{\"maxProcessingTimeMs\":2000},\"includeDetailedLogs\":true}", + "description": "Analyze two payment records with a custom maximum allowed amount and performance timing threshold, including detailed logs." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Payment", + "context": null + } + }, + { + "name": "testing-automation.uploadImage", + "description": "Uploads an image file to a specified testing automation platform or service, enabling test scripts to access visual assets for UI validation or automated visual comparison. Accepts image data or URL and returns upload status with a reference link or ID.", + "category": "testing-automation", + "parameters": [ + { + "name": "imageBase64", + "type": "string", + "description": "Base64-encoded string of the image file to be uploaded. Required if imageUrl is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "imageUrl", + "type": "string", + "description": "URL pointing to the image file to be uploaded. Required if imageBase64 is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "Optional file name to assign to the uploaded image, including extension (e.g., 'screenshot.png').", + "required": false, + "defaultValue": "image.png" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "Identifier or endpoint of the testing platform or environment where the image should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "If true, allows overwriting an existing image with the same file name in target environment.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload success status, uploaded image ID or URL reference, and message for error or success." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically upload images that will be used in automated test scenarios, such as UI snapshot validations, visual regression tests, or as test data inputs. It enables AI agents to integrate images into testing platforms dynamically, supporting continuous integration workflows.", + "limitations": "This tool does not perform image validation or preprocessing, nor does it support uploading non-image files. The upload depends on the target environment's API and network accessibility.", + "examples": [ + "Upload a base64 image representing a UI screenshot to the testing server for visual validation.", + "Provide a direct URL of an image to upload it into the test asset repository before running automated layout checks.", + "Overwrite an existing image in the test environment with a new screenshot for the latest test iteration." + ] + }, + "tags": [ + "upload", + "image", + "testing", + "automation", + "UI", + "visual-testing", + "test-assets" + ], + "examples": [ + { + "inputJson": "{\"imageBase64\":\"iVBORw0KGgoAAAANSUhEUgAAAAUA...\",\"fileName\":\"homepage.png\",\"targetEnvironment\":\"https://test-platform.example.com/api/upload\",\"overwrite\":false}", + "description": "Upload a base64 encoded PNG image named homepage.png to the specified test platform without overwriting." + }, + { + "inputJson": "{\"imageUrl\":\"https://example.com/assets/button.png\",\"fileName\":\"button.png\",\"targetEnvironment\":\"https://test-platform.example.com/api/upload\",\"overwrite\":true}", + "description": "Upload an image by URL, overwriting any existing file named button.png in the test automation environment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Image", + "context": null + } + }, + { + "name": "testing-automation.sendNotification", + "description": "Sends a notification message during automated testing workflows. Accepts inputs including recipient identifiers, message content, notification type (e.g., email, SMS, in-app), and optional metadata. Processes this data to dispatch the specified notification and returns a status report indicating success or failure for each recipient.", + "category": "testing-automation", + "parameters": [ + { + "name": "recipients", + "type": "array", + "description": "List of recipient identifiers such as email addresses or user IDs to whom the notification will be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "The content of the notification message to be sent", + "required": true, + "defaultValue": "" + }, + { + "name": "notificationType", + "type": "string", + "description": "The type of notification channel to use, such as 'email', 'sms', or 'inApp'", + "required": true, + "defaultValue": "email" + }, + { + "name": "subject", + "type": "string", + "description": "Subject line for notifications that support it, like email", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional optional data to customize or enrich the notification (e.g., priority, tags)", + "required": false, + "defaultValue": "" + }, + { + "name": "simulate", + "type": "boolean", + "description": "If true, simulates sending without actual dispatch, useful for test validation", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing a summary status including overall success boolean and an array of results per recipient with individual success and error messages if any" + }, + "aiAgent": { + "useCase": "Use this tool within automated testing scenarios that require programmatic notification dispatch to verify messaging functionality, alert testing teams, or simulate user notification workflows. It's ideal for integration tests that check end-to-end notification pipelines or for sending test alerts during CI/CD runs.", + "limitations": "This tool does not support message content localization or message templates; notifications require fully composed text. It cannot guarantee delivery beyond initial dispatch and is not a full messaging platform.", + "examples": [ + "Send a test email notification to QA team members after a critical test suite completes.", + "Dispatch in-app notifications to a set of user IDs during UI automation tests.", + "Simulate SMS notification sending to validate notification pipeline without sending actual messages." + ] + }, + "tags": [ + "testing", + "notification", + "automation", + "messaging", + "email", + "sms", + "in-app" + ], + "examples": [ + { + "inputJson": "{\"recipients\":[\"qa-team@example.com\"],\"message\":\"Automated test suite completed successfully.\",\"notificationType\":\"email\",\"subject\":\"Test Suite Report\",\"simulate\":false}", + "description": "Send an email notification to the QA team after automated tests complete." + }, + { + "inputJson": "{\"recipients\":[\"user123\",\"user456\"],\"message\":\"Your session will expire soon.\",\"notificationType\":\"inApp\",\"simulate\":false}", + "description": "Send an in-app notification to users to warn session expiration during UI tests." + }, + { + "inputJson": "{\"recipients\":[\"+1234567890\"],\"message\":\"Test SMS notification for pipeline check.\",\"notificationType\":\"sms\",\"simulate\":true}", + "description": "Simulate sending an SMS notification to validate the notification sending process without actual dispatch." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Notification", + "context": null + } + }, + { + "name": "testing-automation.uploadJSON", + "description": "Uploads a JSON-formatted test configuration or test case data to a specified testing automation platform or service. Accepts JSON content as input and sends it to a target endpoint or local testing environment, returning success status and any error messages.", + "category": "testing-automation", + "parameters": [ + { + "name": "jsonContent", + "type": "string", + "description": "The JSON string containing test configuration or test case data to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetUrl", + "type": "string", + "description": "The URL of the testing automation platform or API endpoint where the JSON should be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authorization token or API key used for authentication at the target endpoint.", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite existing JSON data at the target if present (true) or reject (false).", + "required": false, + "defaultValue": "false" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time to wait for upload response before timing out.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "An object containing upload status, including success boolean, server response message, and optional error details." + }, + "aiAgent": { + "useCase": "This tool should be used when an AI agent needs to programmatically submit JSON test configurations or case definitions to a testing automation system for execution or management. It is suitable for integrating automated test data input pipelines, continuous integration workflows, or remote test environment setups.", + "limitations": "This tool does not validate the semantic correctness of the JSON content beyond JSON syntax and does not execute tests. It also depends on the target platform accepting JSON uploads and user having appropriate permissions.", + "examples": [ + "Upload JSON test case data to a remote testing API with authentication.", + "Send updated test configuration JSON to a local test management server, replacing old data.", + "Attempt to upload test suite JSON without overwriting existing data, handling failure if present." + ] + }, + "tags": [ + "testing", + "automation", + "upload", + "json", + "test-management", + "API" + ], + "examples": [ + { + "inputJson": "{\"jsonContent\":\"{\\\"testName\\\":\\\"LoginTest\\\",\\\"steps\\\":[{\\\"action\\\":\\\"openUrl\\\",\\\"target\\\":\\\"/login\\\"}]}\" ,\"targetUrl\":\"https://test-platform.example.com/api/upload\",\"authToken\":\"abc123token\",\"overwriteExisting\":true,\"timeoutSeconds\":30}", + "description": "Uploading a simple login test case JSON to a remote API with overwrite enabled." + }, + { + "inputJson": "{\"jsonContent\":\"{\\\"suiteName\\\":\\\"SmokeTests\\\",\\\"tests\\\":[{\\\"id\\\":1,\\\"name\\\":\\\"HomePageLoad\\\"}]}\",\"targetUrl\":\"http://localhost:8080/upload\",\"overwriteExisting\":false}", + "description": "Uploading smoke test suite JSON to a local test manager without overwriting existing data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "JSON", + "context": null + } + }, + { + "name": "testing-automation.uploadDataset", + "description": "Uploads a dataset file to a specified test automation platform or environment. Accepts CSV, JSON, or Excel files and processes them for integration with testing workflows. Returns upload status and metadata including file size, record count, and a unique dataset ID for reference in subsequent automated tests.", + "category": "testing-automation", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local or network path to the dataset file to upload (CSV, JSON, XLSX)", + "required": true, + "defaultValue": "" + }, + { + "name": "datasetName", + "type": "string", + "description": "A descriptive name for the uploaded dataset for identification", + "required": true, + "defaultValue": "" + }, + { + "name": "fileType", + "type": "string", + "description": "The format of the dataset file: 'csv', 'json', or 'xlsx'", + "required": true, + "defaultValue": "" + }, + { + "name": "targetEnvironment", + "type": "string", + "description": "The test environment or platform where the dataset will be uploaded (e.g., 'staging', 'dev')", + "required": false, + "defaultValue": "" + }, + { + "name": "overwriteExisting", + "type": "boolean", + "description": "Whether to overwrite an existing dataset with the same name", + "required": false, + "defaultValue": "false" + }, + { + "name": "notifyOnCompletion", + "type": "boolean", + "description": "If true, sends a notification once the upload and processing are complete", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the upload result: success status, dataset ID, file size in bytes, number of records loaded, and any error messages if applicable" + }, + "aiAgent": { + "useCase": "Use this tool when automating testing workflows that require loading structured data sets into test environments. Ideal for feeding test data for functional, regression, or performance tests. Facilitates controlled dataset versioning and availability across different automated test stages.", + "limitations": "Does not validate dataset content consistency or schema beyond file type recognition. Upload success depends on connectivity and target environment permissions. Large files may require additional handling outside basic upload.", + "examples": [ + "Upload a CSV dataset named 'UserCredentials' to the staging environment, overwriting any existing dataset with the same name.", + "Upload an Excel file containing product catalog data without overwriting, and notify when upload completes.", + "Upload a JSON dataset to the default environment without notifications or overwrite." + ] + }, + "tags": [ + "testing", + "automation", + "dataset", + "upload", + "test-data", + "csv", + "json", + "excel" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/data/test_users.csv\",\"datasetName\":\"UserCredentials\",\"fileType\":\"csv\",\"targetEnvironment\":\"staging\",\"overwriteExisting\":true,\"notifyOnCompletion\":true}", + "description": "Upload a CSV dataset named 'UserCredentials' to the staging environment and overwrite existing datasets with the same name, notify when done." + }, + { + "inputJson": "{\"filePath\":\"/data/products.xlsx\",\"datasetName\":\"ProductCatalog\",\"fileType\":\"xlsx\",\"overwriteExisting\":false,\"notifyOnCompletion\":false}", + "description": "Upload an Excel dataset called 'ProductCatalog' without overwriting or notifications to default environment." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Dataset", + "context": null + } + }, + { + "name": "testing-automation.formatDataset", + "description": "Formats a test dataset according to specified schema and formatting rules to prepare it for automated testing scenarios. Accepts raw dataset input in JSON or CSV format, applies transformations such as type casting, normalization, and field renaming, and outputs a structured dataset ready for use in test automation tools.", + "category": "testing-automation", + "parameters": [ + { + "name": "inputData", + "type": "string", + "description": "The raw dataset content as a string, in JSON array or CSV format, to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputFormat", + "type": "string", + "description": "The format of the inputData: either 'json' or 'csv'.", + "required": true, + "defaultValue": "json" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The desired output dataset format: 'json' or 'csv'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "schemaMapping", + "type": "object", + "description": "An object defining how to map and transform fields: keys are target field names, values specify source fields and optional transformation rules.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "normalizeValues", + "type": "boolean", + "description": "Whether to normalize numerical values in the dataset to a standard range (0 to 1).", + "required": false, + "defaultValue": "false" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "If outputFormat is 'csv', whether to include header row with field names.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted dataset as a string under 'formattedData', and metadata such as record count and field names." + }, + "aiAgent": { + "useCase": "Use this tool when preparing raw test datasets to conform to a specific schema or format required by automated testing systems. It helps convert and format data inputs systematically for integration in test scenarios, ensuring consistent data structure and types.", + "limitations": "This tool does not perform data validation beyond structural transformations and basic type casting. It cannot generate test data or perform complex data integrity checks. It assumes input data is well-formed in the specified format.", + "examples": [ + "Format a raw JSON dataset to a CSV with specified schema mapping.", + "Convert CSV test data into normalized JSON format for testing input.", + "Rename and cast fields in existing JSON data for automated test scenario compatibility." + ] + }, + "tags": [ + "testing", + "automation", + "dataset", + "formatting", + "data-preparation", + "test-data" + ], + "examples": [ + { + "inputJson": "{\"inputData\":\"[{\\\"userId\\\":\\\"123\\\",\\\"age\\\":\\\"27\\\",\\\"score\\\":\\\"0.85\\\"},{\\\"userId\\\":\\\"456\\\",\\\"age\\\":\\\"31\\\",\\\"score\\\":\\\"0.90\\\"}]\",\"inputFormat\":\"json\",\"outputFormat\":\"csv\",\"schemaMapping\":{\"id\":{\"source\":\"userId\",\"type\":\"string\"},\"age\":{\"source\":\"age\",\"type\":\"number\"},\"performanceScore\":{\"source\":\"score\",\"type\":\"number\"}},\"normalizeValues\":true,\"includeHeaders\":true}", + "description": "Convert JSON array to CSV, renaming fields and normalizing numerical scores." + }, + { + "inputJson": "{\"inputData\":\"userId,age\\n789,45\\n012,38\",\"inputFormat\":\"csv\",\"outputFormat\":\"json\",\"schemaMapping\":{\"identifier\":{\"source\":\"userId\"},\"userAge\":{\"source\":\"age\",\"type\":\"number\"}},\"normalizeValues\":false}", + "description": "Parse CSV data, rename fields and output as JSON." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Dataset", + "context": null + } + }, + { + "name": "testing-automation.sendAlert", + "description": "Sends a security alert notification during automated testing processes. Accepts alert details like severity, message, and optional metadata. Processes the input to simulate sending alerts to configured monitoring or incident response systems. Returns the status and timestamp of the alert dispatch.", + "category": "testing-automation", + "parameters": [ + { + "name": "alertLevel", + "type": "string", + "description": "Severity of the alert (e.g., info, warning, critical).", + "required": true, + "defaultValue": "" + }, + { + "name": "message", + "type": "string", + "description": "Detailed message describing the alert event.", + "required": true, + "defaultValue": "" + }, + { + "name": "recipientList", + "type": "array", + "description": "List of recipient identifiers to receive the alert (e.g., emails, user IDs).", + "required": false, + "defaultValue": "[]" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional additional key-value pairs with context information about the alert.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timestamp", + "type": "string", + "description": "ISO 8601 format timestamp of when the alert was generated; defaults to current time if omitted.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing confirmation of alert sending status, including a success flag, alert ID, and timestamp." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically simulate or send security alert notifications during software testing automation. It is suited for triggering alerts within test environments to validate alert handling workflows or incident response automation.", + "limitations": "This tool does not connect to real-world security systems by itself; it simulates alert sending or triggers alerts within configured test environments only. It does not analyze alert contents or perform threat detection.", + "examples": [ + "Send a critical alert to on-call security team emails during an automated penetration test.", + "Notify the monitoring dashboard with a warning alert and additional context metadata.", + "Generate an informational alert for audit logging during automated security scans." + ] + }, + "tags": [ + "testing", + "security", + "automation", + "alert", + "notification", + "incident-response" + ], + "examples": [ + { + "inputJson": "{\"alertLevel\":\"critical\",\"message\":\"Unauthorized access detected in test environment\",\"recipientList\":[\"security-team@example.com\"],\"metadata\":{\"source\":\"penetration-test-runner\",\"testId\":\"PT-2024-06-001\"}}", + "description": "Send critical alert with context metadata to security team emails during a security test." + }, + { + "inputJson": "{\"alertLevel\":\"warning\",\"message\":\"Suspicious login attempt detected\",\"recipientList\":[\"oncall@example.com\",\"security@example.com\"]}", + "description": "Send warning alert to multiple recipients about suspicious login during automated testing." + }, + { + "inputJson": "{\"alertLevel\":\"info\",\"message\":\"Automated scan completed successfully\"}", + "description": "Send informational alert indicating success of automated security scan without recipients specified." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "send", + "object": "Alert", + "context": null + } + }, + { + "name": "testing-automation.formatTest", + "description": "Formats source code of automated test scripts into a consistent, readable style based on specified formatting rules or code style guidelines. Accepts raw test code as input along with optional style configurations, processes the code formatting, and outputs the beautified, standardized test code for better maintenance and readability.", + "category": "testing-automation", + "parameters": [ + { + "name": "testCode", + "type": "string", + "description": "The raw automated test script source code to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Programming or scripting language of the test code (e.g., JavaScript, Python, Java).", + "required": true, + "defaultValue": "" + }, + { + "name": "styleConfig", + "type": "object", + "description": "Optional configuration object defining code style rules like indentation size, brace style, maximum line length.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxLineLength", + "type": "number", + "description": "Maximum allowed length for each line to enforce wrapping or formatting accordingly.", + "required": false, + "defaultValue": "80" + }, + { + "name": "useTabs", + "type": "boolean", + "description": "Whether to use tabs (true) or spaces (false) for indentation.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted test code as a string and optionally a summary of formatting actions taken." + }, + "aiAgent": { + "useCase": "Use this tool when you have automated test scripts that require consistent formatting for readability, maintainability, or integration into a codebase with strict style guidelines. It is particularly useful after generation or modification of tests by various tools or manual editing that results in inconsistent style.", + "limitations": "This tool does not execute or validate tests; it only reformats source code. It relies on correct language specification for best results and does not fix semantic or syntactic errors in the test code.", + "examples": [ + "Format a raw Python unittest script to use 4-space indentation and maximum line length of 100.", + "Reformat a JavaScript test script to use tabs instead of spaces and apply standard Airbnb style conventions.", + "Beautify a Java test file to ensure consistent brace style and line wrapping." + ] + }, + "tags": [ + "testing", + "formatting", + "automation", + "code-style", + "test-scripts", + "code-quality" + ], + "examples": [ + { + "inputJson": "{\"testCode\":\"def testAddition():\\n assert add(1,2)==3\",\"language\":\"python\",\"styleConfig\":{\"indentSize\":4,\"braceStyle\":\"collapse\"},\"maxLineLength\":80,\"useTabs\":false}", + "description": "Format a simple Python test function with 4-space indentation and standard brace style." + }, + { + "inputJson": "{\"testCode\":\"describe('Array test', function(){it('should have length', function(){expect(arr.length).toBe(3);});});\",\"language\":\"javascript\",\"styleConfig\":{\"indentSize\":2},\"maxLineLength\":80,\"useTabs\":true}", + "description": "Format a JavaScript Jasmine test spec to use tabs and 2-space indentation equivalent." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Test", + "context": null + } + }, + { + "name": "testing-automation.formatWord", + "description": "Formats a given word string according to specified casing and delimiter styles to standardize input for testing automation scripts. Accepts an input word and applies transformations such as camelCase, PascalCase, snake_case, kebab-case, uppercase, or lowercase, optionally using a custom delimiter. Returns the formatted word string suitable for consistent use in test scripts and automation workflows.", + "category": "testing-automation", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The input word string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "formatStyle", + "type": "string", + "description": "The casing style to apply. Options include camelCase, PascalCase, snake_case, kebab-case, uppercase, lowercase.", + "required": true, + "defaultValue": "" + }, + { + "name": "customDelimiter", + "type": "string", + "description": "Optional custom delimiter to use when formatStyle is snake_case or kebab-case. Defaults to '_' for snake_case and '-' for kebab-case if empty.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted word string under the key 'formattedWord'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to normalize or standardize single word inputs for automated testing scripts to ensure consistency in naming conventions, variable generation, or data transformation. It helps maintain uniform style across test automation, reducing errors caused by inconsistent formatting.", + "limitations": "This tool formats only single words or tokens, not complex phrases or sentences. It does not correct spelling, grammar, or handle multiple word transformations beyond the specified format styles.", + "examples": [ + "Format the word 'testValue' to snake_case.", + "Convert the word 'errorHandler' to PascalCase.", + "Change the word 'data-point' to uppercase." + ] + }, + "tags": [ + "formatting", + "string", + "testing", + "automation", + "casing", + "word", + "standardization" + ], + "examples": [ + { + "inputJson": "{\"word\":\"testValue\",\"formatStyle\":\"snake_case\"}", + "description": "Convert 'testValue' into 'test_value' using snake_case." + }, + { + "inputJson": "{\"word\":\"errorHandler\",\"formatStyle\":\"PascalCase\"}", + "description": "Format 'errorHandler' to 'ErrorHandler' as a PascalCase word." + }, + { + "inputJson": "{\"word\":\"data-point\",\"formatStyle\":\"uppercase\"}", + "description": "Transform 'data-point' to 'DATA-POINT' in uppercase." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Word", + "context": null + } + }, + { + "name": "testing-automation.buildBranch", + "description": "Builds and tests a specified code branch in a software repository. Accepts repository URL, branch name, and build configuration parameters. It clones the branch, executes build scripts or commands, runs automated tests, and outputs a build report including success status, logs, and test results.", + "category": "testing-automation", + "parameters": [ + { + "name": "repositoryUrl", + "type": "string", + "description": "URL of the code repository to clone (e.g., git HTTPS or SSH URL)", + "required": true, + "defaultValue": "" + }, + { + "name": "branchName", + "type": "string", + "description": "Name of the branch to build and test (e.g., 'feature/login')", + "required": true, + "defaultValue": "" + }, + { + "name": "buildCommands", + "type": "array", + "description": "Array of shell commands or scripts to run the build process", + "required": true, + "defaultValue": "[\"npm install\",\"npm run build\"]" + }, + { + "name": "testCommands", + "type": "array", + "description": "Array of shell commands or scripts to execute automated tests", + "required": false, + "defaultValue": "[\"npm test\"]" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables for the build and test processes", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds allowed for the build and test process before aborting", + "required": false, + "defaultValue": "600" + }, + { + "name": "verboseLogging", + "type": "boolean", + "description": "If true, produces detailed logs during build and test", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing build success boolean, an array of log strings, and test results summary with pass/fail counts." + }, + "aiAgent": { + "useCase": "Use this tool when needing to automate the process of building and testing code changes on a specific branch. It helps verify integration, catch build errors early, and confirm test passes on feature or bugfix branches before merging. Useful for continuous integration (CI) workflows or validation during development.", + "limitations": "Does not perform code merges or handle conflict resolution. Requires accessible repository and environment configured to run supplied commands. It does not deploy built artifacts or run performance tests.", + "examples": [ + "Build and test the 'develop' branch of a repository with default build and test commands.", + "Build a feature branch with custom environment variables and extended timeout.", + "Run a build with verbose logs for debugging purposes." + ] + }, + "tags": [ + "testing", + "automation", + "build", + "ci", + "branch", + "continuous-integration", + "software-development" + ], + "examples": [ + { + "inputJson": "{\"repositoryUrl\":\"https://github.com/example/project.git\",\"branchName\":\"develop\",\"buildCommands\":[\"npm install\",\"npm run build\"],\"testCommands\":[\"npm test\"],\"environmentVariables\":{},\"timeoutSeconds\":600,\"verboseLogging\":false}", + "description": "Build and test the 'develop' branch with standard npm commands." + }, + { + "inputJson": "{\"repositoryUrl\":\"git@github.com:example/project.git\",\"branchName\":\"feature/login\",\"buildCommands\":[\"./configure\",\"make\"],\"testCommands\":[\"make test\"],\"environmentVariables\":{\"NODE_ENV\":\"test\"},\"timeoutSeconds\":1200,\"verboseLogging\":true}", + "description": "Build 'feature/login' branch using custom build commands and verbose logging." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Branch", + "context": null + } + }, + { + "name": "testing-automation.buildService", + "description": "This tool automates the building and deployment of a test service environment based on provided configuration parameters. It accepts service definitions, dependencies, environment variables, and deployment settings, then orchestrates the setup using containerization or cloud infrastructure. The output is a report detailing the deployment status, service endpoints, and any errors encountered during the build process.", + "category": "testing-automation", + "parameters": [ + { + "name": "serviceName", + "type": "string", + "description": "The unique name identifier for the service to be built.", + "required": true, + "defaultValue": "" + }, + { + "name": "serviceVersion", + "type": "string", + "description": "The version tag of the service to build and deploy.", + "required": false, + "defaultValue": "latest" + }, + { + "name": "dependencies", + "type": "array", + "description": "List of external services or modules that the service depends upon, specified by name or URL.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to configure the service runtime environment.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "deploymentType", + "type": "string", + "description": "Specifies the type of deployment: 'docker', 'kubernetes', or 'serverless'.", + "required": true, + "defaultValue": "docker" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Defines resource constraints like CPU and memory limits for the service containers.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "autoStart", + "type": "boolean", + "description": "Whether to automatically start the service after building and deployment.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the deployment status (success/failure), service endpoints with URLs or IP addresses if applicable, and a detailed log of the build process including any errors or warnings." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automate the setup and deployment of a test environment for a microservice or similar component within a larger application system. It is particularly useful for continuous integration pipelines or automated regression testing workflows.", + "limitations": "This tool does not perform the actual testing or validation of the service functionality after deployment. It also does not manage complex multi-service orchestrations beyond specified dependencies.", + "examples": [ + "Build and deploy a test version of the user authentication service using Docker, with predefined environment variables.", + "Deploy a microservice with specific CPU and memory limits to a Kubernetes cluster without auto-starting it.", + "Set up a serverless test environment for an API gateway service specifying its dependencies." + ] + }, + "tags": [ + "automation", + "testing", + "deployment", + "service", + "infrastructure", + "CI/CD", + "containerization" + ], + "examples": [ + { + "inputJson": "{\"serviceName\":\"auth-service\",\"serviceVersion\":\"1.2.3\",\"dependencies\":[\"user-db\",\"email-service\"],\"environmentVariables\":{\"NODE_ENV\":\"test\",\"LOG_LEVEL\":\"debug\"},\"deploymentType\":\"docker\",\"resourceLimits\":{\"cpu\":\"500m\",\"memory\":\"256Mi\"},\"autoStart\":true}", + "description": "Deploys the 'auth-service' version 1.2.3 via Docker with specified dependencies, environment variables, resource limits, and auto-start enabled." + }, + { + "inputJson": "{\"serviceName\":\"payment-gateway\",\"deploymentType\":\"kubernetes\",\"autoStart\":false}", + "description": "Builds the latest version of 'payment-gateway' service and deploys it to Kubernetes cluster but does not start it automatically." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Service", + "context": null + } + }, + { + "name": "testing-automation.buildContainer", + "description": "Builds and configures a test container environment based on specified parameters such as base image, resource limits, environment variables, and setup scripts. Accepts configuration inputs, provisions the container with desired software and settings, and outputs container ID and status for integration in automated testing pipelines.", + "category": "testing-automation", + "parameters": [ + { + "name": "baseImage", + "type": "string", + "description": "Docker image name or identifier to use as the base for the test container.", + "required": true, + "defaultValue": "" + }, + { + "name": "containerName", + "type": "string", + "description": "Optional name to assign to the container for easier identification.", + "required": false, + "defaultValue": "" + }, + { + "name": "environmentVariables", + "type": "object", + "description": "Key-value pairs of environment variables to be set inside the container.", + "required": false, + "defaultValue": "" + }, + { + "name": "resourceLimits", + "type": "object", + "description": "Resource constraints for the container, e.g., CPU shares and memory limit in MB.", + "required": false, + "defaultValue": "" + }, + { + "name": "setupCommands", + "type": "array", + "description": "List of shell commands or scripts to execute within the container for setup purposes.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "exposePorts", + "type": "array", + "description": "List of ports to expose from the container for networking during tests.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "autoRemove", + "type": "boolean", + "description": "Flag to specify if the container should be automatically removed after test execution.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the container ID, status (e.g., created, running, error), and any error messages if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to programmatically provision containerized environments tailored for automated software testing. Ideal for setting up isolated test environments that require custom configurations, environment variables, and software setup, facilitating repeatable and consistent testing workflows.", + "limitations": "This tool does not perform in-container test execution or cleanup beyond optional auto-removal. It requires a container runtime environment (like Docker) to be accessible and cannot manage network orchestration beyond port exposure.", + "examples": [ + "Create a container based on 'node:14' image with a memory limit of 512MB and environment variable NODE_ENV=testing.", + "Build a test container named 'api-test-env' exposing ports 8080 and 9090, including setup commands to install dependencies.", + "Provision a lightweight container from 'alpine:latest' with autoRemove=true after tests complete." + ] + }, + "tags": [ + "testing", + "automation", + "containerization", + "infrastructure", + "docker", + "ci-cd" + ], + "examples": [ + { + "inputJson": "{\"baseImage\":\"node:14\",\"containerName\":\"test-container\",\"environmentVariables\":{\"NODE_ENV\":\"test\"},\"resourceLimits\":{\"memoryMB\":512},\"setupCommands\":[\"npm install\"],\"exposePorts\":[3000],\"autoRemove\":false}", + "description": "Create a Node.js 14 test container named 'test-container' with 512MB memory limit, NODE_ENV=test, runs npm install, and exposes port 3000." + }, + { + "inputJson": "{\"baseImage\":\"python:3.9\",\"containerName\":\"api-test-env\",\"environmentVariables\":{\"ENV\":\"staging\"},\"resourceLimits\":{\"memoryMB\":1024,\"cpuShares\":512},\"setupCommands\":[\"pip install -r requirements.txt\",\"python setup.py install\"],\"exposePorts\":[8080,9090],\"autoRemove\":true}", + "description": "Build a Python 3.9 container called 'api-test-env' for staging with memory and CPU constraints, setup commands, exposing ports 8080 and 9090, and auto-remove enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Container", + "context": null + } + }, + { + "name": "testing-automation.formatAPI", + "description": "Formats raw API specification inputs into standardized API definition formats such as OpenAPI or RAML. Accepts an unstructured or semi-structured API description object and converts it into a clean, consistent formatted string output suitable for automated API testing tools and documentation generators.", + "category": "testing-automation", + "parameters": [ + { + "name": "apiInput", + "type": "object", + "description": "The raw or semi-structured API specification object to format, which may include endpoints, methods, parameters, and descriptions.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "The target API specification format to produce, e.g., 'OpenAPI', 'RAML', or 'Swagger'.", + "required": true, + "defaultValue": "\"OpenAPI\"" + }, + { + "name": "includeExamples", + "type": "boolean", + "description": "Whether to include example request and response payloads in the formatted output.", + "required": false, + "defaultValue": "false" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in the formatted output for readability.", + "required": false, + "defaultValue": "2" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted API specification string and metadata such as the format type." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent has received an API specification in an unstructured or loosely structured format and needs to produce a clean, standardized API definition document to support automated testing, validation, or documentation. It ensures consistency and compliance with common API specification standards.", + "limitations": "Cannot validate the completeness or semantic correctness of API details; does not generate API schemas from scratch but formats existing input data.", + "examples": [ + "Format a raw JSON API spec into an OpenAPI v3 specification string.", + "Convert a semi-structured internal API description to RAML format with examples included.", + "Reformat a Swagger 2.0 spec to a neatly indented OpenAPI 3.0 document." + ] + }, + "tags": [ + "formatting", + "API", + "testing-automation", + "OpenAPI", + "RAML", + "Swagger", + "automation" + ], + "examples": [ + { + "inputJson": "{\"apiInput\":{\"paths\":{\"/users\":{\"get\":{\"summary\":\"List users\",\"responses\":{\"200\":{\"description\":\"successful operation\"}}}}}},\"outputFormat\":\"OpenAPI\",\"includeExamples\":true,\"indentation\":2}", + "description": "Format a simple GET endpoint spec into OpenAPI format including example payloads." + }, + { + "inputJson": "{\"apiInput\":{\"endpoints\":[{\"path\":\"/items\",\"method\":\"POST\",\"description\":\"Create item\",\"parameters\":[{\"name\":\"name\",\"type\":\"string\"}] }]},\"outputFormat\":\"RAML\",\"includeExamples\":false,\"indentation\":4}", + "description": "Convert a basic POST endpoint description to RAML format without examples using 4-space indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "API", + "context": null + } + }, + { + "name": "testing-automation.buildEndpoint", + "description": "Builds a test API endpoint stub based on provided specifications such as HTTP method, path, expected request parameters, and response schema. Accepts input describing the endpoint configuration, and outputs generated code or configuration snippet to be used in automated testing environments.", + "category": "testing-automation", + "parameters": [ + { + "name": "httpMethod", + "type": "string", + "description": "HTTP method for the endpoint (e.g., GET, POST, PUT, DELETE).", + "required": true, + "defaultValue": "" + }, + { + "name": "endpointPath", + "type": "string", + "description": "URI path of the endpoint, supporting path parameters (e.g., /users/{id}).", + "required": true, + "defaultValue": "" + }, + { + "name": "requestParams", + "type": "object", + "description": "Specification of expected request parameters including path, query, headers, and body parameters with types.", + "required": false, + "defaultValue": "" + }, + { + "name": "responseSchema", + "type": "object", + "description": "Schema defining the structure and types of the expected response payload.", + "required": true, + "defaultValue": "" + }, + { + "name": "authenticationRequired", + "type": "boolean", + "description": "Flag indicating if the endpoint requires authentication logic in the stub.", + "required": false, + "defaultValue": "false" + }, + { + "name": "statusCode", + "type": "number", + "description": "HTTP status code that the endpoint should respond with (default 200).", + "required": false, + "defaultValue": "200" + }, + { + "name": "language", + "type": "string", + "description": "Programming or specification language for output (e.g., JavaScript, Python, OpenAPI).", + "required": false, + "defaultValue": "JavaScript" + } + ], + "returns": { + "type": "object", + "description": "Generated endpoint stub code or configuration as a string, with metadata like language and endpoint identifier." + }, + "aiAgent": { + "useCase": "Use this tool to automatically generate mock or stub API endpoint implementations for integration testing or automated test scenarios, based on detailed endpoint configuration. It helps to rapidly scaffold endpoint mocks without manual coding.", + "limitations": "Does not fully implement backend logic or persistence, only generates static stubs based on input specs. Complex dynamic behavior or data-driven mocking is not supported.", + "examples": [ + "Build a POST /users endpoint stub with JSON body request and 201 response.", + "Generate a GET /items/{itemId} endpoint stub that requires authentication and returns a JSON object.", + "Create a DELETE /orders/{orderId} stub with status 204 response and no body." + ] + }, + "tags": [ + "testing", + "automation", + "api", + "endpoint", + "stub", + "mock", + "integration" + ], + "examples": [ + { + "inputJson": "{\"httpMethod\":\"POST\",\"endpointPath\":\"/users\",\"requestParams\":{\"body\":{\"name\":\"string\",\"email\":\"string\"}},\"responseSchema\":{\"id\":\"number\",\"name\":\"string\",\"email\":\"string\"},\"authenticationRequired\":true,\"statusCode\":201,\"language\":\"JavaScript\"}", + "description": "Generate a POST /users endpoint stub requiring auth and accepting a JSON body with name and email, responding with 201 and a user object." + }, + { + "inputJson": "{\"httpMethod\":\"GET\",\"endpointPath\":\"/products/{productId}\",\"requestParams\":{\"path\":{\"productId\":\"string\"}},\"responseSchema\":{\"productId\":\"string\",\"name\":\"string\",\"price\":\"number\"},\"authenticationRequired\":false,\"statusCode\":200,\"language\":\"OpenAPI\"}", + "description": "Generate a GET endpoint for /products/{productId} returning a product object in OpenAPI spec format." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Endpoint", + "context": null + } + }, + { + "name": "testing-automation.generateKPI", + "description": "Generates key performance indicators (KPIs) for automated testing results by analyzing test execution data such as pass rates, failure trends, test coverage, and execution times. Accepts raw test logs or summarized test reports as input and outputs structured KPI metrics to help evaluate testing effectiveness and identify bottlenecks.", + "category": "testing-automation", + "parameters": [ + { + "name": "testData", + "type": "array", + "description": "An array of test result objects including testId, status, executionTime, and optional error details representing individual test executions.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiMetrics", + "type": "array", + "description": "List of specific KPIs to calculate, e.g., ['passRate', 'failureRate', 'averageExecutionTime', 'testCoverage']", + "required": true, + "defaultValue": "[\"passRate\", \"failureRate\", \"averageExecutionTime\"]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Optional time range filter with 'start' and 'end' ISO date strings to limit the tests considered for KPI calculation.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional field name by which to group KPIs, e.g., 'testSuite', 'component', or 'tester'.", + "required": false, + "defaultValue": "" + }, + { + "name": "minTestCount", + "type": "number", + "description": "Minimum number of tests required in a group to report KPIs for that group.", + "required": false, + "defaultValue": "1" + } + ], + "returns": { + "type": "object", + "description": "An object containing calculated KPIs keyed by the group (or 'overall' if no grouping), each with the requested KPI metrics and their values." + }, + "aiAgent": { + "useCase": "Use this tool when you have automated test execution data and need quantitative KPIs to monitor testing health, identify trends, and improve test quality or coverage. It is ideal for generating dashboards or reports that summarize test results over time or by components.", + "limitations": "Cannot perform root cause analysis of failures or recommend fixes; relies on accurate and complete input test data; limited to KPIs pre-defined or supported by the tool.", + "examples": [ + "Calculate overall pass rate and average execution time from last week's test executions.", + "Generate KPIs grouped by test suite to identify suites with high failure rates.", + "Filter test data by a specific date range and report test coverage KPI." + ] + }, + "tags": [ + "testing", + "automation", + "KPI", + "analytics", + "test-metrics", + "quality-assurance" + ], + "examples": [ + { + "inputJson": "{\"testData\":[{\"testId\":\"T1\",\"status\":\"pass\",\"executionTime\":120},{\"testId\":\"T2\",\"status\":\"fail\",\"executionTime\":200}],\"kpiMetrics\":[\"passRate\",\"failureRate\",\"averageExecutionTime\"],\"timeRange\":{},\"groupBy\":\"\",\"minTestCount\":1}", + "description": "Calculate pass rate, failure rate, and average execution time overall." + }, + { + "inputJson": "{\"testData\":[{\"testId\":\"T1\",\"status\":\"pass\",\"executionTime\":150,\"testSuite\":\"Login\"},{\"testId\":\"T2\",\"status\":\"fail\",\"executionTime\":300,\"testSuite\":\"Login\"},{\"testId\":\"T3\",\"status\":\"pass\",\"executionTime\":100,\"testSuite\":\"Dashboard\"}],\"kpiMetrics\":[\"passRate\"],\"groupBy\":\"testSuite\"}", + "description": "Calculate pass rate grouped by test suite." + }, + { + "inputJson": "{\"testData\":[{\"testId\":\"T1\",\"status\":\"pass\",\"executionTime\":120,\"date\":\"2024-05-01T10:00:00Z\"},{\"testId\":\"T2\",\"status\":\"fail\",\"executionTime\":200,\"date\":\"2024-05-02T10:00:00Z\"}],\"kpiMetrics\":[\"passRate\"],\"timeRange\":{\"start\":\"2024-05-01T00:00:00Z\",\"end\":\"2024-05-01T23:59:59Z\"}}", + "description": "Calculate pass rate for tests executed on May 1, 2024." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "KPI", + "context": null + } + }, + { + "name": "testing-automation.generateDashboard", + "description": "Generates an interactive testing analytics dashboard based on provided test execution data and configuration. Accepts arrays of test results, metadata, and user-defined metrics. Processes data to create visualizations like pass rates, failure trends, and test coverage summarized in a customizable dashboard layout. Outputs a structured dashboard object ready for rendering or reporting.", + "category": "testing-automation", + "parameters": [ + { + "name": "testResults", + "type": "array", + "description": "An array of test execution result objects including status, timestamps, and test identifiers.", + "required": true, + "defaultValue": "" + }, + { + "name": "metrics", + "type": "array", + "description": "List of specific metrics or KPIs to include in the dashboard, such as pass rate, average duration, failure frequency.", + "required": false, + "defaultValue": "[\"passRate\",\"failureRate\"]" + }, + { + "name": "timeRange", + "type": "object", + "description": "Specified start and end timestamps to filter test results by execution date.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Field to group test results by for trend analysis, e.g., 'testSuite', 'testType', or 'environment'.", + "required": false, + "defaultValue": "testSuite" + }, + { + "name": "includeLogs", + "type": "boolean", + "description": "Whether to include recent error logs or stack traces in the dashboard for failed tests.", + "required": false, + "defaultValue": "false" + }, + { + "name": "dashboardLayout", + "type": "string", + "description": "Preferred layout style of the dashboard, e.g., 'summary', 'detailed', 'custom'.", + "required": false, + "defaultValue": "summary" + } + ], + "returns": { + "type": "object", + "description": "A dashboard object containing structured data and visualization components representing analytics of the test runs, suitable for rendering in a UI or exporting." + }, + "aiAgent": { + "useCase": "Use this tool when needing an automated, consolidated view of software test executions to analyze quality trends, identify problematic areas, and communicate results through rich visual dashboards. Ideal for continuous integration reports, QA team reviews, and stakeholder reporting.", + "limitations": "Does not execute tests or fetch raw data autonomously; requires pre-collected and formatted test results input. Visualization is provided as structured data, not as rendered graphics or UI components.", + "examples": [ + "Generate a dashboard for the last week's regression test runs grouped by test suite showing pass and failure rates.", + "Create a detailed dashboard including error logs for failed tests in nightly build executions.", + "Produce a summary layout dashboard to track test coverage and average duration over a custom time range." + ] + }, + "tags": [ + "testing", + "automation", + "dashboard", + "analytics", + "test-results", + "visualization" + ], + "examples": [ + { + "inputJson": "{\"testResults\":[{\"testId\":\"loginTest\",\"status\":\"passed\",\"timestamp\":\"2024-06-15T10:00:00Z\",\"duration\":12},{\"testId\":\"purchaseTest\",\"status\":\"failed\",\"timestamp\":\"2024-06-15T10:05:00Z\",\"duration\":30}],\"metrics\":[\"passRate\",\"failureRate\"],\"timeRange\":{\"start\":\"2024-06-01T00:00:00Z\",\"end\":\"2024-06-15T23:59:59Z\"},\"groupBy\":\"testId\",\"includeLogs\":true,\"dashboardLayout\":\"detailed\"}", + "description": "Generate a detailed dashboard from test results for the first half of June, grouped by test ID, including pass/failure rates and failure logs." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Dashboard", + "context": null + } + }, + { + "name": "testing-automation.createKPI", + "description": "Generates customizable Key Performance Indicators (KPIs) for automated testing projects by analyzing test run data and metrics. Accepts test suite results and configuration inputs to calculate KPIs such as pass rate, average execution time, and defect density. Outputs structured KPI reports to track testing effectiveness over time.", + "category": "testing-automation", + "parameters": [ + { + "name": "testRunData", + "type": "array", + "description": "Array of test run result objects including status, execution time, and defects for each test case.", + "required": true, + "defaultValue": "" + }, + { + "name": "kpiTypes", + "type": "array", + "description": "List of KPI types to calculate from available options such as ['passRate','avgExecutionTime','defectDensity'].", + "required": true, + "defaultValue": "[\"passRate\",\"avgExecutionTime\"]" + }, + { + "name": "timeFrame", + "type": "string", + "description": "The time period during which to calculate KPIs, e.g., 'lastWeek', 'lastMonth', 'custom'.", + "required": false, + "defaultValue": "lastWeek" + }, + { + "name": "customDateRange", + "type": "object", + "description": "If timeFrame is 'custom', specifies {\"startDate\":\"YYYY-MM-DD\",\"endDate\":\"YYYY-MM-DD\"} for KPI calculation.", + "required": false, + "defaultValue": "" + }, + { + "name": "groupBy", + "type": "string", + "description": "Optional dimension to group KPI results by, e.g., 'testSuite', 'component', or 'tester'.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeTrendAnalysis", + "type": "boolean", + "description": "Whether to include trend analysis over the selected timeframe comparing current KPIs to previous periods.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing calculated KPI metrics with key-value pairs per KPI type, optionally grouped by specified dimensions. Includes numeric values and trend indicators if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you need to derive meaningful KPIs from automated testing results to monitor and evaluate test effectiveness, test quality, and efficiency over time across different test suites or components. It helps in decision making for quality assurance and release readiness.", + "limitations": "This tool does not perform raw test execution or log parsing; it requires preprocessed test run data as input. It also cannot infer root causes or suggest fixes based on KPIs alone.", + "examples": [ + "Calculate pass rate and average execution time KPIs for the last month grouped by test suite.", + "Generate defect density KPI with trend analysis comparing last week to the previous week.", + "Create KPIs for a custom date range without grouping." + ] + }, + "tags": [ + "testing", + "automation", + "KPI", + "analytics", + "quality-assurance", + "reporting" + ], + "examples": [ + { + "inputJson": "{\"testRunData\":[{\"testId\":\"TC01\",\"status\":\"passed\",\"executionTime\":12.4,\"defects\":0},{\"testId\":\"TC02\",\"status\":\"failed\",\"executionTime\":10.8,\"defects\":2}],\"kpiTypes\":[\"passRate\",\"avgExecutionTime\"],\"timeFrame\":\"lastWeek\",\"groupBy\":\"testSuite\",\"includeTrendAnalysis\":true}", + "description": "Calculate pass rate and average execution time KPIs for last week, grouped by test suite, with trend analysis." + }, + { + "inputJson": "{\"testRunData\":[{\"testId\":\"TC10\",\"status\":\"passed\",\"executionTime\":15.3,\"defects\":1},{\"testId\":\"TC11\",\"status\":\"passed\",\"executionTime\":11.7,\"defects\":0}],\"kpiTypes\":[\"defectDensity\"],\"timeFrame\":\"custom\",\"customDateRange\":{\"startDate\":\"2024-01-01\",\"endDate\":\"2024-01-31\"},\"includeTrendAnalysis\":false}", + "description": "Generate defect density KPI for test runs in January 2024 with no trend analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "KPI", + "context": null + } + }, + { + "name": "testing-automation.generateQuery", + "description": "Generates automated test queries based on input criteria for testing software application databases or APIs. Accepts query parameters such as target entity, filters, and query type, processes them into executable query statements for use in testing assertions or data retrieval during automation workflows.", + "category": "testing-automation", + "parameters": [ + { + "name": "targetEntity", + "type": "string", + "description": "The main database table or API resource to query in the test.", + "required": true, + "defaultValue": "" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value pairs representing field conditions to apply as filters in the query.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "queryType", + "type": "string", + "description": "Type of query to generate, e.g., 'select', 'count', or 'exists' to customize query structure.", + "required": false, + "defaultValue": "select" + }, + { + "name": "maxResults", + "type": "number", + "description": "Maximum number of results to return; limits the query result size.", + "required": false, + "defaultValue": "100" + }, + { + "name": "sortBy", + "type": "string", + "description": "Optional field to sort the results by, ascending order.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query string optimized for use in automated testing tools and assertions." + }, + "aiAgent": { + "useCase": "Use this tool when automating tests that require dynamic generation of database or API queries based on variable test parameters or filters. Ideal for generating test queries to validate data or system behavior without manually writing each query.", + "limitations": "Does not execute queries or validate query correctness against a specific database dialect; it generates syntactically generic queries that might need adjustment for specific environments.", + "examples": [ + "Generate a select query for the 'users' entity filtering by 'status:active'.", + "Create a count query to verify the number of 'orders' with 'status:pending'.", + "Generate a query to check existence of records in 'products' with 'category:electronics', limiting to 10 results." + ] + }, + "tags": [ + "testing", + "automation", + "query", + "database", + "API", + "test-generation", + "software-testing" + ], + "examples": [ + { + "inputJson": "{\"targetEntity\":\"users\",\"filters\":{\"status\":\"active\"},\"queryType\":\"select\",\"maxResults\":50,\"sortBy\":\"created_at\"}", + "description": "Generate a select query for active users, limiting to 50 results sorted by creation date." + }, + { + "inputJson": "{\"targetEntity\":\"orders\",\"filters\":{\"status\":\"pending\"},\"queryType\":\"count\"}", + "description": "Generate a count query to get the number of pending orders." + }, + { + "inputJson": "{\"targetEntity\":\"products\",\"filters\":{\"category\":\"electronics\"},\"queryType\":\"exists\",\"maxResults\":10}", + "description": "Generate an existence query for electronics products, limit to 10 to test presence." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Query", + "context": null + } + }, + { + "name": "testing-automation.createLink", + "description": "Creates a testable hyperlink element representation based on specified parameters, enabling automated test scripts to interact with consistent link objects. Accepts input such as URL, display text, and optional attributes, producing a structured link object suitable for UI automation frameworks.", + "category": "testing-automation", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The URL that the created link should point to.", + "required": true, + "defaultValue": "" + }, + { + "name": "displayText", + "type": "string", + "description": "The text shown for the link in the UI.", + "required": true, + "defaultValue": "" + }, + { + "name": "openInNewTab", + "type": "boolean", + "description": "Flag indicating whether the link should open in a new browser tab.", + "required": false, + "defaultValue": "false" + }, + { + "name": "cssClass", + "type": "string", + "description": "Optional CSS class(es) to apply to the link element for styling or identification.", + "required": false, + "defaultValue": "" + }, + { + "name": "id", + "type": "string", + "description": "Optional ID attribute for the link element to uniquely identify it during tests.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the configured link element with properties for URL, text, target behavior, and optional attributes, formatted for automated UI testing usage." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate standardized clickable link elements for test automation scripts or UI component simulations, ensuring consistent link creation during automated testing or mock setups.", + "limitations": "This tool does not render actual UI elements or verify link usability in browsers; it only creates structured link representations for automation purposes.", + "examples": [ + "Create a link for testing navigation to https://example.com with text 'Visit Example'.", + "Generate a link that opens in a new tab with custom CSS class for styling validation.", + "Produce a uniquely identified link element for targeted UI interaction in automated tests." + ] + }, + "tags": [ + "testing", + "automation", + "link", + "ui", + "web", + "element", + "create" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"displayText\":\"Visit Example\",\"openInNewTab\":false,\"cssClass\":\"nav-link\",\"id\":\"link1\"}", + "description": "Create a standard link to https://example.com with text 'Visit Example', styled with 'nav-link' CSS class and unique ID for testing." + }, + { + "inputJson": "{\"url\":\"https://docs.example.com\",\"displayText\":\"Documentation\",\"openInNewTab\":true,\"cssClass\":\"doc-link\",\"id\":\"\"}", + "description": "Generate a link opening in a new tab to documentation URL with text 'Documentation' and a CSS class to identify it during testing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Link", + "context": null + } + }, + { + "name": "testing-automation.createDashboard", + "description": "Creates a customizable test analytics dashboard by accepting test result data and configuration options. It processes aggregated test metrics like pass rates, failure trends, and runtime statistics, and outputs an interactive dashboard URL or embed code for real-time testing insights.", + "category": "testing-automation", + "parameters": [ + { + "name": "testResultData", + "type": "array", + "description": "Array of test result objects containing test names, statuses, timestamps, and error details.", + "required": true, + "defaultValue": "" + }, + { + "name": "dashboardTitle", + "type": "string", + "description": "Title to display on the dashboard header.", + "required": false, + "defaultValue": "\"Test Analytics Dashboard\"" + }, + { + "name": "metricsToInclude", + "type": "array", + "description": "List of metric keys to display on the dashboard, e.g., ['passRate','failures','avgRuntime'].", + "required": false, + "defaultValue": "[\"passRate\",\"failures\",\"avgRuntime\"]" + }, + { + "name": "refreshIntervalSeconds", + "type": "number", + "description": "Interval in seconds at which the dashboard auto-refreshes to show latest test data.", + "required": false, + "defaultValue": "60" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output: 'url' to a hosted dashboard or 'embedCode' for HTML embed snippet.", + "required": false, + "defaultValue": "\"url\"" + }, + { + "name": "theme", + "type": "string", + "description": "Visual theme of the dashboard, e.g., 'light' or 'dark'.", + "required": false, + "defaultValue": "\"light\"" + } + ], + "returns": { + "type": "object", + "description": "An object containing dashboard access information: URL or embed code, dashboard ID, and metadata like last updated time." + }, + "aiAgent": { + "useCase": "Use this tool when you need to generate a real-time dashboard to visualize automated testing results, helping teams monitor test performance, identify flaky tests, and track trends over time without manual reporting.", + "limitations": "Does not perform test execution or result aggregation from raw logs; expects structured test result data as input. It cannot customize visualizations beyond predefined metrics or replace dedicated BI tools.", + "examples": [ + "Generate a dashboard with pass/fail trends and average runtime for nightly regression tests.", + "Create an embeddable dashboard snippet to show test suite health on the team's portal page.", + "Get a URL to a live dashboard refreshing every 30 seconds for continuous integration test reporting." + ] + }, + "tags": [ + "testing", + "automation", + "dashboard", + "analytics", + "test-reporting", + "continuous-integration" + ], + "examples": [ + { + "inputJson": "{\"testResultData\":[{\"testName\":\"LoginTest\",\"status\":\"passed\",\"timestamp\":\"2024-06-10T08:30:00Z\"},{\"testName\":\"PaymentTest\",\"status\":\"failed\",\"timestamp\":\"2024-06-10T08:35:00Z\",\"error\":\"Timeout\"}],\"dashboardTitle\":\"Nightly Regression Tests\",\"metricsToInclude\":[\"passRate\",\"failures\"],\"refreshIntervalSeconds\":120,\"outputFormat\":\"url\",\"theme\":\"dark\"}", + "description": "Create a dark-themed dashboard URL focusing on pass rate and failures with 2-minute auto-refresh." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Dashboard", + "context": null + } + }, + { + "name": "testing-automation.createRisk", + "description": "This tool accepts detailed inputs about software testing scenarios, such as test case descriptions, affected components, and severity levels, then analyzes the inputs to generate a structured risk report. The output includes identified risks, their potential impact, likelihood, and suggested mitigation strategies for automated testing pipelines.", + "category": "testing-automation", + "parameters": [ + { + "name": "testScenarioDescription", + "type": "string", + "description": "Detailed description of the test scenario or condition under consideration.", + "required": true, + "defaultValue": "" + }, + { + "name": "affectedComponents", + "type": "array", + "description": "List of system components or modules affected by the scenario.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "severityLevel", + "type": "string", + "description": "Severity level of the potential risk, e.g., 'low', 'medium', 'high'.", + "required": true, + "defaultValue": "" + }, + { + "name": "likelihood", + "type": "string", + "description": "Estimated probability of the risk occurring, e.g., 'unlikely', 'possible', 'likely'.", + "required": true, + "defaultValue": "" + }, + { + "name": "mitigationStrategies", + "type": "array", + "description": "Optional list of suggested mitigation strategies or controls.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "includeComplianceAssessment", + "type": "boolean", + "description": "Whether to assess the risk impact against compliance standards (if applicable).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "A structured risk report object containing risk name, description, impact, likelihood, severity, and mitigation recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when generating formalized risk assessments from automated testing scenarios to assist risk management and decision-making processes in development pipelines. It helps prioritize test failures or scenario risks based on impact and likelihood, and suggests mitigations.", + "limitations": "This tool does not perform real security vulnerability scanning or dynamic code analysis. It relies on input accuracy and does not replace expert security reviews. Compliance assessments are limited to provided metadata and may not cover all regulatory requirements.", + "examples": [ + "Generate a risk report for a login module test case that fails rate limiting checks.", + "Create a risk assessment for a scenario where a payment API returns timeout errors under load.", + "Produce mitigation suggestions for risks identified in a data encryption test suite." + ] + }, + "tags": [ + "testing", + "risk-assessment", + "automation", + "security", + "quality-assurance", + "mitigation" + ], + "examples": [ + { + "inputJson": "{\"testScenarioDescription\":\"Automated test detects that session timeout does not trigger as expected after 30 minutes of inactivity.\",\"affectedComponents\":[\"SessionManagement\",\"AuthenticationService\"],\"severityLevel\":\"high\",\"likelihood\":\"likely\",\"mitigationStrategies\":[\"Implement stricter session timeout policies\",\"Add automated alerts for session expiration failures\"],\"includeComplianceAssessment\":true}", + "description": "Assess risk of missing session timeout detection in authentication workflows." + }, + { + "inputJson": "{\"testScenarioDescription\":\"Load test reveals API endpoint returns 503 errors under moderate traffic.\",\"affectedComponents\":[\"PaymentAPI\",\"LoadBalancer\"],\"severityLevel\":\"medium\",\"likelihood\":\"possible\",\"mitigationStrategies\":[\"Scale backend servers dynamically\",\"Optimize load balancer configuration\"],\"includeComplianceAssessment\":false}", + "description": "Create risk analysis for intermittent API downtime detected during load testing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Risk", + "context": null + } + }, + { + "name": "testing-automation.createPayment", + "description": "This tool automates the creation of payment transactions in a test environment. It accepts payment details such as payer information, amount, currency, and payment method, processes these inputs to simulate payment creation, and returns a structured response with payment status, transaction ID, and amount paid, facilitating automated testing workflows for payment systems.", + "category": "testing-automation", + "parameters": [ + { + "name": "payerId", + "type": "string", + "description": "The unique identifier of the payer initiating the payment.", + "required": true, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "The amount to be paid in specified currency units.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The three-letter ISO currency code for the payment (e.g., USD, EUR).", + "required": true, + "defaultValue": "" + }, + { + "name": "paymentMethod", + "type": "string", + "description": "The payment method used (e.g., credit_card, bank_transfer, paypal).", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional description or memo for the payment.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Optional key-value pairs for additional payment metadata.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing details about the simulated payment creation, including success status, transaction ID, payment amount, and optional error messages if creation failed." + }, + "aiAgent": { + "useCase": "Use this tool when automating test scenarios involving payment processing systems where realistic payment creation simulations are needed. It helps validate integration, error handling, and payment workflows without real transactions.", + "limitations": "This tool simulates payment creation only within a testing environment; it cannot process real payments or interact with live payment gateways.", + "examples": [ + "Create a payment of $150 USD via credit card for testing order payment workflows.", + "Simulate a bank transfer payment of 200 EUR with metadata for automated invoice processing tests.", + "Generate a PayPal payment of 99.99 USD with a description for UI functional tests in payment modules." + ] + }, + "tags": [ + "automation", + "payment", + "testing", + "simulation", + "finance", + "transaction", + "QA" + ], + "examples": [ + { + "inputJson": "{\"payerId\":\"user-123\",\"amount\":150.00,\"currency\":\"USD\",\"paymentMethod\":\"credit_card\",\"description\":\"Test payment for order #456\"}", + "description": "Simulates creating a $150 payment via credit card for user user-123." + }, + { + "inputJson": "{\"payerId\":\"user-789\",\"amount\":200,\"currency\":\"EUR\",\"paymentMethod\":\"bank_transfer\",\"metadata\":{\"invoiceId\":\"inv-2024\"}}", + "description": "Simulates a 200 EUR bank transfer payment with invoice metadata for user-789." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Payment", + "context": null + } + }, + { + "name": "testing-automation.createOpportunity", + "description": "Creates a test opportunity entity within an automated testing framework for business domain applications. Accepts parameters defining opportunity details such as title, description, lead source, amount, and expected close date. Validates inputs and returns a structured confirmation with the created opportunity's unique ID and status.", + "category": "testing-automation", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or name of the opportunity to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "A detailed description of the opportunity.", + "required": false, + "defaultValue": "" + }, + { + "name": "leadSource", + "type": "string", + "description": "The origin or source of the lead related to the opportunity (e.g., 'Web', 'Referral').", + "required": false, + "defaultValue": "" + }, + { + "name": "amount", + "type": "number", + "description": "The estimated financial value of the opportunity in the relevant currency.", + "required": false, + "defaultValue": "0" + }, + { + "name": "expectedCloseDate", + "type": "string", + "description": "The expected close date of the opportunity, in ISO 8601 format (YYYY-MM-DD).", + "required": false, + "defaultValue": "" + }, + { + "name": "probability", + "type": "number", + "description": "The probability of successfully closing the opportunity, expressed as a percentage (0-100).", + "required": false, + "defaultValue": "0" + }, + { + "name": "assignedTo", + "type": "string", + "description": "Identifier for the user or team assigned to this opportunity.", + "required": false, + "defaultValue": "" + }, + { + "name": "metadata", + "type": "object", + "description": "Additional custom key-value pairs related to the opportunity for extended test scenarios.", + "required": false, + "defaultValue": "{}" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing the unique identifier of the created opportunity, status message indicating success or failure, and any validation error details if applicable." + }, + "aiAgent": { + "useCase": "Use this tool when simulating or automating business process workflows involving the creation of sales or lead opportunities in a CRM or similar system during automated testing scenarios. It allows agents to generate realistic test data and verify system behavior under controlled inputs.", + "limitations": "This tool does not handle persistence beyond the testing framework context, nor does it integrate directly with real CRM systems. It also does not validate complex business rules beyond basic input validation.", + "examples": [ + "Create a new sales opportunity titled 'Enterprise Subscription Deal' with an estimated amount of 50000 and expected close date next month.", + "Add a lead opportunity from 'Referral' source with 75% closing probability, assigned to sales rep ID 'user123'.", + "Generate a minimal opportunity with only the required title parameter for testing defaults." + ] + }, + "tags": [ + "testing", + "automation", + "business", + "opportunity", + "CRM", + "lead management" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Enterprise Subscription Deal\",\"description\":\"Deal for enterprise-level subscription plan.\",\"leadSource\":\"Web\",\"amount\":50000,\"expectedCloseDate\":\"2024-07-15\",\"probability\":60,\"assignedTo\":\"user123\",\"metadata\":{\"region\":\"EMEA\"}}", + "description": "Create a detailed opportunity with financial and assignment details." + }, + { + "inputJson": "{\"title\":\"Referral Opportunity\",\"leadSource\":\"Referral\",\"probability\":75,\"assignedTo\":\"user123\"}", + "description": "Create an opportunity from referral source with high close probability." + }, + { + "inputJson": "{\"title\":\"Basic Opportunity\"}", + "description": "Create a minimal opportunity with only the required title." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Opportunity", + "context": null + } + }, + { + "name": "testing-automation.createQuery", + "description": "Generates a query string or object for automated test scenarios based on specified criteria. Accepts parameters defining the target data, filters, sorting, and pagination settings to construct queries used in testing data retrieval or validation steps within automated test workflows. Outputs the query in the requested format (e.g., SQL, NoSQL, RESTful).", + "category": "testing-automation", + "parameters": [ + { + "name": "queryType", + "type": "string", + "description": "Type of query to create, e.g., 'SQL', 'NoSQL', or 'REST'.", + "required": true, + "defaultValue": "" + }, + { + "name": "filterCriteria", + "type": "object", + "description": "An object specifying key-value pairs for filtering data in the query.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sortBy", + "type": "string", + "description": "Field name to sort the results by.", + "required": false, + "defaultValue": "" + }, + { + "name": "sortOrder", + "type": "string", + "description": "Sort direction: 'asc' for ascending or 'desc' for descending.", + "required": false, + "defaultValue": "asc" + }, + { + "name": "limit", + "type": "number", + "description": "Maximum number of results to return (pagination).", + "required": false, + "defaultValue": "100" + }, + { + "name": "offset", + "type": "number", + "description": "Number of records to skip (pagination offset).", + "required": false, + "defaultValue": "0" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Format of the output query string, e.g., 'string' for raw query or 'object' for structured format.", + "required": false, + "defaultValue": "string" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated query in the specified output format, including the raw query string or structured query object." + }, + "aiAgent": { + "useCase": "This tool is useful for AI agents automating the creation of queries to retrieve or manipulate test data dynamically in various test environments. It supports building queries across different query languages and formats, enabling flexible integration into diverse testing frameworks. Use it when you need to generate parameterized or filtered queries automatically to validate application data or behavior.", + "limitations": "It does not execute queries or validate query semantics against actual databases; it builds syntactically correct queries based on input but cannot guarantee runtime correctness or database compatibility.", + "examples": [ + "Create an SQL query to retrieve active users sorted by last login descending, limit 50.", + "Generate a NoSQL query filtering orders with status 'pending' and sort by creation date ascending.", + "Produce a REST query string to request products filtered by category 'electronics' with pagination." + ] + }, + "tags": [ + "testing", + "automation", + "query", + "test-data", + "SQL", + "NoSQL", + "REST", + "filtering" + ], + "examples": [ + { + "inputJson": "{\"queryType\":\"SQL\",\"filterCriteria\":{\"status\":\"active\"},\"sortBy\":\"last_login\",\"sortOrder\":\"desc\",\"limit\":50,\"offset\":0,\"outputFormat\":\"string\"}", + "description": "Generate an SQL query string to select active users sorted by last login date descending, limited to 50 records." + }, + { + "inputJson": "{\"queryType\":\"NoSQL\",\"filterCriteria\":{\"order_status\":\"pending\"},\"sortBy\":\"created_at\",\"sortOrder\":\"asc\",\"limit\":100,\"offset\":0,\"outputFormat\":\"object\"}", + "description": "Generate a NoSQL structured query object to find pending orders sorted by creation date ascending." + }, + { + "inputJson": "{\"queryType\":\"REST\",\"filterCriteria\":{\"category\":\"electronics\"},\"limit\":20,\"offset\":10,\"outputFormat\":\"string\"}", + "description": "Create a RESTful query string for products filtered by electronics category with pagination (limit 20, offset 10)." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Query", + "context": null + } + }, + { + "name": "testing-automation.createVariable", + "description": "Creates a new variable definition for use in automated test scripts. Accepts variable name, type, initial value, scope, and optional description. Processes input to generate a standardized variable object compatible with testing frameworks, outputting the variable metadata.", + "category": "testing-automation", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "The unique identifier for the variable to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "Data type of the variable, e.g., string, number, boolean, array, object.", + "required": true, + "defaultValue": "" + }, + { + "name": "initialValue", + "type": "string", + "description": "The initial value assigned to the variable, as a string representation.", + "required": false, + "defaultValue": "" + }, + { + "name": "scope", + "type": "string", + "description": "Defines the variable scope, e.g., global, local, or testCase.", + "required": false, + "defaultValue": "local" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description explaining the purpose of the variable.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created variable with name, type, value, scope, and description properties, ready for integration into test scripts." + }, + "aiAgent": { + "useCase": "Use this tool when generating or modifying automated test scripts to programmatically define new variables with specified attributes ensuring consistency and correctness in test automation codebases. It is particularly useful for AI agents assembling or updating complex test configurations.", + "limitations": "This tool does not execute code or validate variable usage context within specific test frameworks; it only generates variable definitions. It does not manage variable lifecycle or runtime behavior.", + "examples": [ + "Create a string variable named 'username' with initial value 'testUser' in the global scope.", + "Define a boolean variable 'isLoggedIn' initialized to false, local to the current test case.", + "Add a numeric variable 'retryCount' without initial value in default scope with a description explaining its role in retry logic." + ] + }, + "tags": [ + "testing", + "automation", + "variable", + "code-generation", + "test-scripting" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"username\",\"variableType\":\"string\",\"initialValue\":\"testUser\",\"scope\":\"global\",\"description\":\"Stores the username for login tests.\"}", + "description": "Create a global string variable 'username' initialized to 'testUser' with a descriptive note." + }, + { + "inputJson": "{\"variableName\":\"isLoggedIn\",\"variableType\":\"boolean\",\"initialValue\":\"false\",\"scope\":\"local\",\"description\":\"Indicates login state during tests.\"}", + "description": "Define a local boolean variable 'isLoggedIn' with initial value false." + }, + { + "inputJson": "{\"variableName\":\"retryCount\",\"variableType\":\"number\",\"initialValue\":\"\",\"scope\":\"local\",\"description\":\"Counts number of retries on failed requests.\"}", + "description": "Create a local numeric variable 'retryCount' without initial value and add a description." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Variable", + "context": null + } + }, + { + "name": "devops.analyzeHeading", + "description": "Analyzes a given heading string found in documentation files or code comments within a DevOps context to determine its clarity, relevance, and formatting quality. Accepts the heading text and optional context like heading level and surrounding text, then returns an evaluation score and improvement suggestions to help standardize documentation and improve readibility in deployment or infrastructure projects.", + "category": "devops", + "parameters": [ + { + "name": "headingText", + "type": "string", + "description": "The exact text content of the heading to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "headingLevel", + "type": "number", + "description": "The heading level (e.g., 1 for H1, 2 for H2) to understand its importance and formatting context. Optional but recommended.", + "required": false, + "defaultValue": "" + }, + { + "name": "contextText", + "type": "string", + "description": "Optional surrounding text or description that provides additional context for the heading to improve analysis accuracy.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing a clarity score (0-100), relevance rating (string), a list of suggestions for improvement, and a boolean indicating if the heading complies with specified style guidelines." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to assess the quality and compliance of headings in deployment or infrastructure documentation, such as README files or internal wikis, to ensure consistent and clear documentation practices across projects.", + "limitations": "Cannot fully understand domain-specific meaning or deep semantic relevance beyond format and general clarity; suggestions are stylistic and may need human review.", + "examples": [ + "Analyze the heading 'Continuous Deployment Pipeline' at level 2 for style compliance.", + "Evaluate the heading 'Step 1: Setup Infrastructure' with surrounding context about deployment steps.", + "Check if 'Env Var Config' heading is clear and relevant in the deployment docs." + ] + }, + "tags": [ + "analysis", + "documentation", + "heading", + "devops", + "formatting", + "style", + "readability" + ], + "examples": [ + { + "inputJson": "{\"headingText\":\"Continuous Integration Overview\",\"headingLevel\":1,\"contextText\":\"This section introduces the CI process used in our codebase.\"}", + "description": "Analyzing a level 1 heading for a CI overview section in documentation." + }, + { + "inputJson": "{\"headingText\":\"Step 3: Deploy\",\"headingLevel\":2,\"contextText\":\"Details about deployment stages in the release pipeline.\"}", + "description": "Examining a step heading in deployment pipeline documentation for clarity and formatting." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Heading", + "context": null + } + }, + { + "name": "devops.analyzeThread", + "description": "Analyzes communication threads from project management or continuous integration tools to identify bottlenecks, sentiment trends, and key discussion topics. Accepts thread data in JSON format including messages, timestamps, and participants. Outputs a detailed report summarizing interaction patterns, response times, sentiment scores, and topic clusters.", + "category": "devops", + "parameters": [ + { + "name": "threadData", + "type": "object", + "description": "JSON object representing the communication thread, including messages, sender info, and timestamps.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeSentimentAnalysis", + "type": "boolean", + "description": "Whether to perform sentiment analysis on messages to assess tone and emotion.", + "required": false, + "defaultValue": "true" + }, + { + "name": "timeZone", + "type": "string", + "description": "Time zone identifier to normalize timestamps for accurate timing analysis.", + "required": false, + "defaultValue": "UTC" + }, + { + "name": "maxTopicClusters", + "type": "number", + "description": "Maximum number of discussion topic clusters to extract from the thread.", + "required": false, + "defaultValue": "5" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the thread messages to optimize analysis accuracy.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "Report object containing summary metrics such as average response times, sentiment distribution, identified key topics, participant engagement stats, and interaction bottlenecks." + }, + "aiAgent": { + "useCase": "Use this tool when needing to understand communication efficiency and dynamics within technical or development-related conversation threads, such as in Slack, Jira, or GitHub discussions. Ideal for identifying delays, sentiment shifts, and main discussion points to improve team collaboration and project flow.", + "limitations": "Cannot interpret non-textual content like images or videos embedded in threads. May have reduced accuracy for languages or dialects not supported. Does not provide real-time monitoring; works on provided thread snapshots.", + "examples": [ + "Analyze a conversation thread from a Jira issue discussion to identify why resolution slowed down.", + "Summarize and assess sentiment of recent CI/CD pipeline notifications and developer comments.", + "Extract main topics and participation stats from Slack messages related to deployment planning." + ] + }, + "tags": [ + "communication", + "analysis", + "devops", + "thread", + "sentiment", + "topic modeling", + "collaboration" + ], + "examples": [ + { + "inputJson": "{\"threadData\":{\"messages\":[{\"id\":\"m1\",\"sender\":\"user1\",\"timestamp\":\"2024-05-01T10:00:00Z\",\"text\":\"We need to fix the deployment script errors ASAP.\"},{\"id\":\"m2\",\"sender\":\"user2\",\"timestamp\":\"2024-05-01T10:15:00Z\",\"text\":\"I believe a syntax error is causing the failure.\"},{\"id\":\"m3\",\"sender\":\"user1\",\"timestamp\":\"2024-05-01T10:45:00Z\",\"text\":\"I pushed a fix, please test.\"}]},\"includeSentimentAnalysis\":true,\"timeZone\":\"UTC\",\"maxTopicClusters\":3,\"language\":\"en\"}", + "description": "Analyze a short thread from a deployment issue discussion including messages, timestamps, and participants, with sentiment analysis enabled." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Thread", + "context": null + } + }, + { + "name": "devops.analyzeDeal", + "description": "Analyzes a software deployment deal by examining contract terms, infrastructure requirements, and service level agreements (SLAs) to assess risk, compatibility with existing DevOps processes, and cost implications. Takes deal details as input and outputs a structured analysis report highlighting potential integration risks and optimization suggestions.", + "category": "devops", + "parameters": [ + { + "name": "dealDetails", + "type": "object", + "description": "Structured object containing the terms, technical requirements, and SLAs of the deployment deal to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "currentInfrastructure", + "type": "object", + "description": "Details about the current infrastructure and deployment environment to check compatibility with the deal requirements.", + "required": false, + "defaultValue": "" + }, + { + "name": "riskThreshold", + "type": "number", + "description": "A value between 0 and 1 specifying the risk tolerance level; higher values tolerate more risk.", + "required": false, + "defaultValue": "0.5" + }, + { + "name": "optimizeForCost", + "type": "boolean", + "description": "Flag indicating whether to prioritize cost optimization suggestions in the analysis.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object including risk assessment, compatibility status, cost impact estimation, and recommended next steps for the deployment deal." + }, + "aiAgent": { + "useCase": "Use this tool when evaluating new or existing software deployment agreements to automatically analyze deal terms in the context of current DevOps capabilities, identify risks or integration challenges, and generate actionable recommendations. It helps automate decision-making for deal acceptance, renegotiation, or infrastructure adjustment.", + "limitations": "This tool cannot replace detailed legal or financial advice; it focuses on technical and operational aspects of deployment deals and provides estimates rather than final decisions.", + "examples": [ + "Analyze the terms of a new cloud hosting deal against my current Kubernetes infrastructure.", + "Evaluate the SLA and technical compatibility of a proposed continuous integration service contract.", + "Provide risk and cost analysis for a software deployment agreement considering our existing DevOps pipeline." + ] + }, + "tags": [ + "analysis", + "deal", + "devops", + "risk assessment", + "infrastructure", + "sla", + "cost optimization" + ], + "examples": [ + { + "inputJson": "{\"dealDetails\":{\"contractLengthMonths\":12,\"slaUptimePercentage\":99.9,\"infrastructureRequirements\":{\"cpuCores\":8,\"memoryGb\":32}},\"currentInfrastructure\":{\"cpuCores\":16,\"memoryGb\":64,\"platform\":\"Kubernetes\"},\"riskThreshold\":0.3,\"optimizeForCost\":true}", + "description": "Analyze a 12-month contract deal with specific SLA and infrastructure requirements against a Kubernetes cluster with given resources, assessing risk under a moderate risk threshold, prioritizing cost optimization." + }, + { + "inputJson": "{\"dealDetails\":{\"contractLengthMonths\":24,\"slaUptimePercentage\":99.99,\"infrastructureRequirements\":{\"cpuCores\":32,\"memoryGb\":128}},\"currentInfrastructure\":{\"cpuCores\":16,\"memoryGb\":64,\"platform\":\"AWS EC2\"},\"riskThreshold\":0.7,\"optimizeForCost\":false}", + "description": "Evaluate a 2-year deal with high SLA and large resource requirements against smaller existing AWS EC2 infrastructure, with higher risk tolerance, focusing on compatibility and risk but not cost optimization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Deal", + "context": null + } + }, + { + "name": "devops.analyzeHTML", + "description": "Analyzes HTML code provided as a string or file to extract key metrics such as element counts, potential accessibility issues, inline styles, script tags, and unused CSS classes. Outputs a structured report to aid DevOps and frontend teams in optimizing and validating HTML before deployment.", + "category": "devops", + "parameters": [ + { + "name": "htmlContent", + "type": "string", + "description": "Raw HTML content as a string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "checkAccessibility", + "type": "boolean", + "description": "Flag to enable accessibility checks on the HTML content.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxElementCount", + "type": "number", + "description": "Threshold for total HTML element count to flag as potentially excessive complexity.", + "required": false, + "defaultValue": "5000" + }, + { + "name": "includeInlineStyles", + "type": "boolean", + "description": "Flag to report occurrences of inline CSS styles within HTML elements.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportUnusedCssClasses", + "type": "boolean", + "description": "Flag to identify CSS classes declared but unused in the HTML content.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Structured report including total elements, list of element types and counts, accessible issue summaries, inline styles count, script tag count, and unused CSS classes." + }, + "aiAgent": { + "useCase": "Use this tool when needing to assess the quality and complexity of HTML code for deployment pipelines or during continuous integration. It helps identify potential issues such as accessibility problems, excessive DOM complexity, or anti-patterns like inline styling that could impact performance and maintainability.", + "limitations": "This tool analyzes only HTML content statically; it does not execute JavaScript or handle dynamically generated content. It does not fully validate HTML for correctness or run a full accessibility compliance audit.", + "examples": [ + "Analyze provided HTML string for accessibility issues and inline styles.", + "Check an HTML file for excessive number of elements and unused CSS classes.", + "Generate a report summarizing element counts and script usage from raw HTML code." + ] + }, + "tags": [ + "analysis", + "html", + "devops", + "accessibility", + "frontend", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"htmlContent\":\"

Title

This is a paragraph.

\",\"checkAccessibility\":true,\"includeInlineStyles\":true,\"reportUnusedCssClasses\":true}", + "description": "Analyze an HTML snippet containing a style block with unused CSS, inline styles, and a script tag." + }, + { + "inputJson": "{\"htmlContent\":\"
TextMore Text
\",\"checkAccessibility\":false,\"includeInlineStyles\":false,\"reportUnusedCssClasses\":false}", + "description": "Analyze minimal HTML content without accessibility or style reports." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "HTML", + "context": null + } + }, + { + "name": "devops.uploadCSV", + "description": "Uploads a CSV file to a specified remote server or cloud storage within a DevOps pipeline. It accepts CSV data as a string or file path, validates the CSV format optionally, and uploads it using protocols like SFTP or HTTP to a given destination. Returns a status report including success or error details.", + "category": "devops", + "parameters": [ + { + "name": "csvData", + "type": "string", + "description": "CSV content as a string; mutually exclusive with csvFilePath. Required if csvFilePath is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "csvFilePath", + "type": "string", + "description": "Local path to a CSV file to be uploaded; mutually exclusive with csvData. Required if csvData is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "destinationUrl", + "type": "string", + "description": "URL or path of the remote server or cloud storage location to upload the CSV file to (e.g., sftp://host/path or https://bucket-name.s3.amazonaws.com).", + "required": true, + "defaultValue": "" + }, + { + "name": "authentication", + "type": "object", + "description": "Authentication credentials needed to access the destination server, such as username, password, privateKey, or token.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateCSV", + "type": "boolean", + "description": "If true, performs basic CSV validation (checks for consistent columns and format) before uploading.", + "required": false, + "defaultValue": "true" + }, + { + "name": "overwrite", + "type": "boolean", + "description": "If true, overwrite existing file at the destination if it exists; otherwise, fail if file exists.", + "required": false, + "defaultValue": "false" + }, + { + "name": "uploadMethod", + "type": "string", + "description": "Protocol to use for uploading: e.g., 'sftp', 'httpPut', 'awsS3'. Determines upload implementation.", + "required": true, + "defaultValue": "sftp" + } + ], + "returns": { + "type": "object", + "description": "An object reporting the status of the upload operation including success boolean, message string, and optionally an error code." + }, + "aiAgent": { + "useCase": "Use this tool when you need to automate uploading CSV files as part of a deployment or data integration workflow in DevOps pipelines. Suitable for pushing config files, data snapshots, or reports to servers or cloud storage with authentication and optional validation to ensure data integrity before upload.", + "limitations": "Does not parse or transform CSV content beyond basic validation; does not handle large stream uploads or multipart uploads natively; upload methods must support provided authentication schemes; error handling depends on destination server responses.", + "examples": [ + "Upload a CSV config file stored locally to a secured SFTP server with overwrite enabled.", + "Upload a CSV content string to an AWS S3 bucket using an access token.", + "Validate and upload a CSV report to an HTTP endpoint with basic auth." + ] + }, + "tags": [ + "upload", + "csv", + "devops", + "automation", + "sftp", + "http", + "aws", + "file-transfer" + ], + "examples": [ + { + "inputJson": "{\"csvFilePath\":\"./reports/metrics.csv\",\"destinationUrl\":\"sftp://deploy.example.com/configs/metrics.csv\",\"authentication\":{\"username\":\"deployuser\",\"password\":\"securePass123\"},\"validateCSV\":true,\"overwrite\":true,\"uploadMethod\":\"sftp\"}", + "description": "Upload local CSV file './reports/metrics.csv' to an SFTP server path with overwrite enabled." + }, + { + "inputJson": "{\"csvData\":\"id,name,score\\n1,Alice,85\\n2,Bob,90\",\"destinationUrl\":\"https://mybucket.s3.amazonaws.com/data/stats.csv\",\"authentication\":{\"token\":\"AWS_TOKEN_ABC123\"},\"validateCSV\":true,\"overwrite\":false,\"uploadMethod\":\"awsS3\"}", + "description": "Upload CSV data from string to AWS S3 bucket without overwriting existing file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "CSV", + "context": null + } + }, + { + "name": "devops.downloadCSV", + "description": "Downloads a CSV file from a specified remote HTTP/HTTPS URL and optionally saves it to a local file path. Validates the URL format and provides the CSV content as a string or writes it directly to disk. Useful for automating retrieval of CSV data for deployment or CI/CD pipelines.", + "category": "devops", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The HTTP or HTTPS URL from which to download the CSV file.", + "required": true, + "defaultValue": "" + }, + { + "name": "saveToPath", + "type": "string", + "description": "Optional local file path to save the downloaded CSV content. If omitted, the CSV content is returned as a string.", + "required": false, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Timeout in seconds for the HTTP request. Defaults to 30 seconds.", + "required": false, + "defaultValue": "30" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to include in the request as key-value pairs.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "verifySSL", + "type": "boolean", + "description": "Whether to verify SSL certificates for HTTPS requests. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'content' (the CSV data as string if not saved to file), 'savedFilePath' (path if saved), and 'status' (HTTP status code)." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically retrieve CSV files from web URLs during deployment or automation tasks, such as importing configuration data, environment variables, or deployment manifests. It enables agents to fetch fresh data from remote sources efficiently.", + "limitations": "Does not parse or validate CSV content beyond basic download. Does not support FTP or other protocols besides HTTP/HTTPS. The caller must handle large files appropriately to avoid memory issues.", + "examples": [ + "Download CSV from a public URL and return content as string.", + "Download CSV and save it to a specific local path for later processing.", + "Download CSV with custom HTTP headers and SSL verification disabled." + ] + }, + "tags": [ + "download", + "CSV", + "HTTP", + "devops", + "automation", + "file", + "network", + "fetch" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com/data/config.csv\"}", + "description": "Download CSV from a public URL and return its content as string." + }, + { + "inputJson": "{\"url\":\"https://example.com/data/state.csv\",\"saveToPath\":\"/tmp/state.csv\"}", + "description": "Download CSV and save it locally at /tmp/state.csv." + }, + { + "inputJson": "{\"url\":\"https://secure.example.com/data/metrics.csv\",\"headers\":{\"Authorization\":\"Bearer token123\"},\"verifySSL\":false}", + "description": "Download CSV with authorization header and without verifying SSL certificates." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "CSV", + "context": null + } + }, + { + "name": "devops.formatSentence", + "description": "This tool accepts a raw sentence string and formats it according to specified style rules commonly used in DevOps documentation and commit messages. It processes input text by adjusting capitalization, punctuation, and optionally adds a prefix or suffix. The output is a formatted sentence string suitable for logs, documentation, or commit descriptions.", + "category": "devops", + "parameters": [ + { + "name": "sentence", + "type": "string", + "description": "The raw input sentence that needs formatting.", + "required": true, + "defaultValue": "" + }, + { + "name": "capitalize", + "type": "boolean", + "description": "If true, capitalizes the first character of the sentence.", + "required": false, + "defaultValue": "true" + }, + { + "name": "ensurePeriod", + "type": "boolean", + "description": "If true, ensures the sentence ends with a period.", + "required": false, + "defaultValue": "true" + }, + { + "name": "toLowerRest", + "type": "boolean", + "description": "If true, converts the rest of the sentence (excluding first character) to lowercase.", + "required": false, + "defaultValue": "false" + }, + { + "name": "prefix", + "type": "string", + "description": "Optional string to prepend before the sentence.", + "required": false, + "defaultValue": "" + }, + { + "name": "suffix", + "type": "string", + "description": "Optional string to append after the sentence.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "string", + "description": "Formatted sentence string adjusted for capitalization, punctuation, and optional prefix/suffix." + }, + "aiAgent": { + "useCase": "Use this tool when you need consistent formatting of textual sentences in DevOps contexts such as commit messages, deployment logs, or documentation snippets. It helps enforce style conventions like capitalization and punctuation automatically, enhancing readability and standardization of text used in automation pipelines or version control.", + "limitations": "This tool does not perform advanced grammar corrections, language translations, or semantic analysis. It only adjusts simple typographic and stylistic sentence formatting based on provided parameters.", + "examples": [ + "Format a raw commit message to start with a capital letter and end with a period.", + "Add a specific prefix tag before a debug message sentence while standardizing punctuation.", + "Convert all but the first letter in a deployment log sentence to lowercase and append a suffix string." + ] + }, + "tags": [ + "formatting", + "devops", + "sentences", + "documentation", + "commit", + "logging" + ], + "examples": [ + { + "inputJson": "{\"sentence\":\"deploy service to production environment\", \"capitalize\":true, \"ensurePeriod\":true}", + "description": "Capitalizes the first letter and adds a period if missing." + }, + { + "inputJson": "{\"sentence\":\"FIX the broken pipeline\", \"toLowerRest\":true, \"ensurePeriod\":false}", + "description": "Capitalizes first letter only, converts rest to lowercase, does not add period." + }, + { + "inputJson": "{\"sentence\":\"restart completed\", \"prefix\":\"[INFO] \", \"suffix\":\" [OK]\", \"capitalize\":true}", + "description": "Adds prefix and suffix, ensures capitalization." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Sentence", + "context": null + } + }, + { + "name": "devops.formatCSV", + "description": "Formats CSV content according to specified options such as delimiter, quote character, line ending, and header inclusion. Accepts raw CSV string input, processes it to standardize or customize CSV format, and outputs the transformed CSV string ready for deployment pipelines or configuration files.", + "category": "devops", + "parameters": [ + { + "name": "csvContent", + "type": "string", + "description": "Raw CSV data as a string to be formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "delimiter", + "type": "string", + "description": "Character used to separate CSV fields. Default is comma ','.", + "required": false, + "defaultValue": "," + }, + { + "name": "quoteChar", + "type": "string", + "description": "Character used to quote fields containing special characters. Default is double quote '\"'.", + "required": false, + "defaultValue": "\"" + }, + { + "name": "lineEnding", + "type": "string", + "description": "Line ending style, e.g., '\\n' for Unix, '\\r\\n' for Windows. Default is '\\n'.", + "required": false, + "defaultValue": "\\n" + }, + { + "name": "includeHeaders", + "type": "boolean", + "description": "Whether to include header row in output CSV. Default is true.", + "required": false, + "defaultValue": "true" + }, + { + "name": "trimFields", + "type": "boolean", + "description": "Whether to trim whitespace from each field. Default is true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the formatted CSV string under the key 'formattedCSV'." + }, + "aiAgent": { + "useCase": "Use this tool when you need to standardize CSV format from raw input or customize CSV output to match target system requirements in DevOps pipelines, such as adjusting delimiters, line endings, quoting behavior, or header inclusion before deployment or processing.", + "limitations": "This tool does not perform CSV parsing validations or handle malformed CSV inputs beyond basic formatting. It does not transform CSV data content, only formatting aspects.", + "examples": [ + "Format raw CSV string to use semicolon delimiter and Windows line endings for deployment.", + "Convert CSV to exclude headers and trim all fields for input to a config file.", + "Change quote character to single quote and ensure Unix line endings for CI pipeline compatibility." + ] + }, + "tags": [ + "devops", + "csv", + "formatting", + "data-processing", + "automation" + ], + "examples": [ + { + "inputJson": "{\"csvContent\":\"name, age, city\\nAlice, 30, New York\\nBob,25,Los Angeles\",\"delimiter\":\";\",\"quoteChar\":\"'\",\"lineEnding\":\"\\r\\n\",\"includeHeaders\":true,\"trimFields\":true}", + "description": "Format CSV to use semicolon delimiter, single quote characters, Windows line endings, keep headers, and trim fields." + }, + { + "inputJson": "{\"csvContent\":\"host,port\\nlocalhost,8080\\n192.168.0.1,443\",\"delimiter\":\",\",\"quoteChar\":\"\\\"\",\"lineEnding\":\"\\n\",\"includeHeaders\":false,\"trimFields\":false}", + "description": "Output CSV without headers and keep original whitespace with default comma delimiter and quote character." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "CSV", + "context": null + } + }, + { + "name": "devops.composeSentence", + "description": "This tool accepts an array of keywords or phrases related to devops topics and constructs a coherent, professional sentence suitable for documentation, commit messages, or deployment logs. It processes the input phrases to generate a fluent sentence summarizing DevOps actions or statuses.", + "category": "devops", + "parameters": [ + { + "name": "phrases", + "type": "array", + "description": "Array of strings containing keywords or short phrases to be included in the sentence.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "tone", + "type": "string", + "description": "Tone of the sentence to be composed. Options could include 'formal', 'informal', or 'neutral'.", + "required": false, + "defaultValue": "neutral" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum length of the composed sentence in characters.", + "required": false, + "defaultValue": "120" + } + ], + "returns": { + "type": "object", + "description": "An object containing the composed sentence as a string under the property 'sentence'." + }, + "aiAgent": { + "useCase": "Use this tool when needing to generate clear, concise sentences from fragmented DevOps-related input phrases, for example composing commit descriptions, deployment notes, or status updates that synthesize multiple inputs into readable English sentences.", + "limitations": "This tool cannot generate highly technical or domain-specific sentences without sufficient context and may produce generic sentences if input phrases lack detail.", + "examples": [ + "Compose a formal sentence summarizing deployment success and rollback procedures.", + "Create a neutral tone sentence from given keywords: CI pipeline, tests passed, deploy scheduled.", + "Generate a short commit message sentence including bug fix and version number." + ] + }, + "tags": [ + "devops", + "sentence", + "compose", + "automation", + "documentation", + "commit message" + ], + "examples": [ + { + "inputJson": "{\"phrases\":[\"deployment\", \"successful\", \"no errors\", \"duration 5 minutes\"], \"tone\":\"formal\", \"maxLength\":100}", + "description": "Compose a formal sentence reporting a successful deployment with no errors." + }, + { + "inputJson": "{\"phrases\":[\"CI pipeline\", \"tests passed\", \"ready for production\"], \"tone\":\"neutral\"}", + "description": "Create a neutral sentence summarizing the CI pipeline status and readiness for production." + }, + { + "inputJson": "{\"phrases\":[\"fix bug\", \"memory leak\", \"version 1.4.2\"], \"tone\":\"informal\", \"maxLength\":80}", + "description": "Generate an informal short commit message sentence about a bug fix and version update." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "compose", + "object": "Sentence", + "context": null + } + }, + { + "name": "devops.buildQuery", + "description": "Constructs dynamic SQL or NoSQL queries based on provided parameters such as filters, selection fields, sorting options, and pagination controls. Accepts query components as input and outputs a syntactically correct query string ready for executing against a data source, facilitating automated database interaction within CI/CD workflows and infrastructure scripts.", + "category": "devops", + "parameters": [ + { + "name": "databaseType", + "type": "string", + "description": "Specifies the target database type, e.g., 'sql' or 'nosql', to tailor query syntax accordingly.", + "required": true, + "defaultValue": "" + }, + { + "name": "tableOrCollection", + "type": "string", + "description": "Name of the SQL table or NoSQL collection on which the query is built.", + "required": true, + "defaultValue": "" + }, + { + "name": "selectFields", + "type": "array", + "description": "Array of strings defining which fields or columns to select; an empty array means all fields.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "filters", + "type": "object", + "description": "Key-value map of filter conditions that are combined using AND logic, e.g., { 'status': 'active', 'age': { '$gt': 18 } }.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "sortOptions", + "type": "object", + "description": "Defines sorting as field-direction pairs, e.g., { 'createdAt': 'desc' }. Supports ascending or descending order.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "limit", + "type": "number", + "description": "Limits number of results returned by the query. Zero or less means no limit.", + "required": false, + "defaultValue": "0" + }, + { + "name": "offset", + "type": "number", + "description": "Number of records to skip for pagination purposes. Zero means start from the beginning.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing the constructed query string formatted for the specified database type and an optional parameters array/object if parameterized queries are used." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent or automated system needs to generate valid database queries dynamically based on user input or system parameters during deployment pipelines or infrastructure automation. It helps abstract query construction, ensuring the outputs are ready to execute without manual coding.", + "limitations": "This tool builds basic to moderately complex queries but does not optimize query execution plans or support advanced database-specific features such as triggers, stored procedures, or complex joins beyond simple table selections.", + "examples": [ + "Create a SQL query to select active users with pagination for reporting.", + "Generate a NoSQL query filtering documents by timestamp and sort descending.", + "Build a query selecting specific fields from a table with sorting and limit for API data fetching." + ] + }, + "tags": [ + "devops", + "query builder", + "database", + "automation", + "CI/CD", + "infrastructure" + ], + "examples": [ + { + "inputJson": "{\"databaseType\":\"sql\",\"tableOrCollection\":\"users\",\"selectFields\":[\"id\",\"name\",\"email\"],\"filters\":{\"status\":\"active\"},\"sortOptions\":{\"createdAt\":\"desc\"},\"limit\":10,\"offset\":0}", + "description": "Build SQL query selecting id, name, and email from users table filtered by active status, sorted by creation date descending, limited to 10 results." + }, + { + "inputJson": "{\"databaseType\":\"nosql\",\"tableOrCollection\":\"orders\",\"filters\":{\"status\":\"pending\",\"amount\":{\"$gt\":100}},\"sortOptions\":{\"orderDate\":\"asc\"},\"limit\":5}", + "description": "Generate NoSQL query for orders collection filtering pending status and amount greater than 100, sorted by order date ascending with a limit of 5." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Query", + "context": null + } + }, + { + "name": "devops.buildVariable", + "description": "Generates environment or configuration variables dynamically for deployment scripts or CI/CD pipelines. Accepts variable name, type, and optional value templates or sources, and outputs a structured variable object ready for injection into build or deployment stages.", + "category": "devops", + "parameters": [ + { + "name": "variableName", + "type": "string", + "description": "Name identifier for the variable to be built (e.g., 'API_URL').", + "required": true, + "defaultValue": "" + }, + { + "name": "variableType", + "type": "string", + "description": "Type of the variable, such as 'string', 'number', 'boolean', or 'json'.", + "required": true, + "defaultValue": "" + }, + { + "name": "valueSource", + "type": "string", + "description": "Source for the variable value, e.g., literal value, environment variable name, or file path.", + "required": false, + "defaultValue": "" + }, + { + "name": "defaultValue", + "type": "string", + "description": "Default fallback value if the source does not provide one.", + "required": false, + "defaultValue": "" + }, + { + "name": "isSecret", + "type": "boolean", + "description": "Flag indicating if the variable contains sensitive data requiring masking or encryption.", + "required": false, + "defaultValue": "false" + }, + { + "name": "description", + "type": "string", + "description": "Optional human-readable description of the variable’s purpose.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "Structured object with variableName, variableType, value, isSecret flag, and description fields representing the constructed variable." + }, + "aiAgent": { + "useCase": "Use this tool when dynamically creating or managing environment or configuration variables during automated build or deployment orchestration. It helps standardize variable creation from various input sources (literal, environment, files), including handling secret flags, so the variables can be consumed consistently during continuous integration/continuous deployment (CI/CD) processes.", + "limitations": "This tool does not fetch or retrieve external secrets securely; it only builds variable metadata and value placeholders. It also does not perform runtime injection into build systems, which must be handled separately.", + "examples": [ + "Create a string variable named 'DATABASE_URL' with a default connection string.", + "Build a boolean variable 'ENABLE_FEATURE_X' from an environment variable with a fallback to 'false'.", + "Construct a secret variable 'API_KEY' without exposing its value in logs." + ] + }, + "tags": [ + "devops", + "configuration", + "environment", + "variable", + "build", + "CI/CD", + "automation" + ], + "examples": [ + { + "inputJson": "{\"variableName\":\"DATABASE_URL\",\"variableType\":\"string\",\"valueSource\":\"env:DB_URL\",\"defaultValue\":\"postgres://localhost:5432/mydb\",\"isSecret\":false,\"description\":\"Connection string for the main database.\"}", + "description": "Builds a string variable for database URL with environment variable source and default fallback." + }, + { + "inputJson": "{\"variableName\":\"ENABLE_FEATURE_X\",\"variableType\":\"boolean\",\"valueSource\":\"env:FEATURE_X_ENABLED\",\"defaultValue\":\"false\",\"isSecret\":false,\"description\":\"Toggle for enabling feature X in deployment.\"}", + "description": "Builds a boolean configuration flag from environment source with a fallback." + }, + { + "inputJson": "{\"variableName\":\"API_KEY\",\"variableType\":\"string\",\"valueSource\":\"secret-store:apiKey\",\"defaultValue\":\"\",\"isSecret\":true,\"description\":\"Secret API key for external service authentication.\"}", + "description": "Builds a secret variable representing an API key, flagged for secure handling." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "build", + "object": "Variable", + "context": null + } + }, + { + "name": "devops.generateHTML", + "description": "Generates customizable HTML pages based on structured input parameters specifying layout, content sections, styles, and optional metadata. Accepts JSON describing the page structure and style preferences, processes this to create clean, responsive HTML markup suitable for deployment as static files or embedding in web projects.", + "category": "devops", + "parameters": [ + { + "name": "pageTitle", + "type": "string", + "description": "The title of the HTML page, used in the tag and optionally as a header in the body.", + "required": true, + "defaultValue": "" + }, + { + "name": "contentSections", + "type": "array", + "description": "An array of objects defining sections of the page. Each section object includes type (e.g., header, paragraph, image), content, and optional styling info.", + "required": true, + "defaultValue": "" + }, + { + "name": "styles", + "type": "object", + "description": "An object specifying CSS styles or theme preferences that will be embedded or linked in the HTML to style elements consistently.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeMeta", + "type": "boolean", + "description": "Flag indicating whether to include standard meta tags in the head section like charset and viewport (true by default).", + "required": false, + "defaultValue": "true" + }, + { + "name": "language", + "type": "string", + "description": "HTML document language attribute value, e.g., 'en' for English. Defaults to 'en'.", + "required": false, + "defaultValue": "en" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML as a string under the key 'htmlContent', ready for writing to a file or serving via HTTP." + }, + "aiAgent": { + "useCase": "Use this tool when needing to programmatically create HTML pages for deployment pipelines, preview environments, documentation sites, or simple UI prototypes based on structured content and style inputs. It automates static HTML generation from configuration data without requiring manual coding.", + "limitations": "Does not generate dynamic or client-side interactive scripts beyond static HTML and embedded styles. Complex JavaScript-driven UI components are out of scope. Not suitable for full web app scaffolding or server-side rendering.", + "examples": [ + "Generate a landing page HTML with header, paragraphs, images, and custom color scheme.", + "Create a documentation page by passing sections as structured content and including metadata tags.", + "Produce a minimal HTML page with specified language and no additional meta tags." + ] + }, + "tags": [ + "html", + "generation", + "static-site", + "devops", + "automation", + "templating" + ], + "examples": [ + { + "inputJson": "{\"pageTitle\":\"Welcome to DevOps Portal\",\"contentSections\":[{\"type\":\"header\",\"content\":\"Hello, DevOps Team!\",\"style\":{\"color\":\"#2c3e50\",\"fontSize\":\"24px\"}},{\"type\":\"paragraph\",\"content\":\"This page summarizes the deployment status and important links.\",\"style\":{\"fontSize\":\"16px\"}},{\"type\":\"image\",\"content\":\"https://example.com/logo.png\",\"style\":{\"width\":\"200px\"}}],\"styles\":{\"body\":{\"fontFamily\":\"Arial, sans-serif\",\"margin\":\"20px\"}},\"includeMeta\":true,\"language\":\"en\"}", + "description": "Generate a styled DevOps dashboard landing page HTML from structured sections including header, paragraph, and an image with custom styles." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "HTML", + "context": null + } + }, + { + "name": "devops.generateXML", + "description": "Generates a well-formed XML document from a provided JSON object representing hierarchical data and attributes. It accepts configuration options for the root element name, indentation style, and whether to include an XML declaration. Outputs a serialized XML string ready for use in deployment scripts or configuration files.", + "category": "devops", + "parameters": [ + { + "name": "jsonData", + "type": "object", + "description": "JSON object representing the content and structure to serialize into XML, including tag names, attributes, and nested elements.", + "required": true, + "defaultValue": "" + }, + { + "name": "rootElementName", + "type": "string", + "description": "Name of the root element to use in the generated XML document (overrides root in jsonData if present).", + "required": false, + "defaultValue": "root" + }, + { + "name": "includeDeclaration", + "type": "boolean", + "description": "Whether to include the XML declaration (e.g., <?xml version=\"1.0\" encoding=\"UTF-8\"?>) at the top of the document.", + "required": false, + "defaultValue": "true" + }, + { + "name": "indentation", + "type": "string", + "description": "Characters to use for indentation (e.g., '\\t' or ' ') for pretty-printing the XML output.", + "required": false, + "defaultValue": " " + } + ], + "returns": { + "type": "object", + "description": "An object containing a single property 'xmlString' which holds the generated XML document as a string." + }, + "aiAgent": { + "useCase": "Use this tool when needing to convert configuration data or deployment instructions from JSON format to XML format, especially for DevOps pipelines or infrastructure definitions requiring XML configuration files. It is helpful when scripting or automating deployment processes needing XML output from structured data.", + "limitations": "This tool converts JSON objects to XML but does not validate domain-specific XML schemas. It does not support complex XML constructs like DTDs, namespaces beyond basic attributes, or mixed content beyond simple text nodes.", + "examples": [ + "Generate XML from a JSON object describing a server configuration with attributes and nested elements.", + "Produce XML configuration file with a custom root element and pretty indentation for easier human readability.", + "Convert JSON deployment metadata into a standard XML format including the XML declaration." + ] + }, + "tags": [ + "devops", + "xml", + "generate", + "serialization", + "configuration", + "automation" + ], + "examples": [ + { + "inputJson": "{\"jsonData\":{\"server\":{\"@ip\":\"192.168.1.1\",\"port\":8080,\"description\":\"Test server\"}},\"rootElementName\":\"deployment\",\"includeDeclaration\":true,\"indentation\":\" \"}", + "description": "Generate an XML deployment file from JSON describing a server with IP attribute and nested elements, using 'deployment' as root and 2-space indentation." + }, + { + "inputJson": "{\"jsonData\":{\"app\":{\"name\":\"MyApp\",\"version\":\"1.2.3\",\"features\":{\"feature\":[{\"@enabled\":\"true\",\"#text\":\"Logging\"},{\"@enabled\":\"false\",\"#text\":\"Debug\"}]}}},\"rootElementName\":\"\",\"includeDeclaration\":false,\"indentation\":\"\\t\"}", + "description": "Convert JSON app info to XML without declaration, using tab indentation and JSON root element as root XML element." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "XML", + "context": null + } + }, + { + "name": "devops.createSession", + "description": "Creates a new user session record for analytics during deployment or monitoring processes. Accepts session metadata such as user ID, start time, environment tags, and optional custom attributes. Processes and validates input, then generates a unique session ID and returns session details for tracking and analysis integration.", + "category": "devops", + "parameters": [ + { + "name": "userId", + "type": "string", + "description": "Identifier of the user starting the session, supports UUID or string user names.", + "required": true, + "defaultValue": "" + }, + { + "name": "startTime", + "type": "string", + "description": "ISO 8601 timestamp indicating when the session started.", + "required": true, + "defaultValue": "" + }, + { + "name": "environment", + "type": "string", + "description": "Deployment environment name such as 'production', 'staging', or 'development'.", + "required": true, + "defaultValue": "" + }, + { + "name": "customAttributes", + "type": "object", + "description": "Optional key-value pairs to attach custom metadata to the session, such as features enabled or experiment flags.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "durationSeconds", + "type": "number", + "description": "Expected or initial session duration in seconds; can be updated later.", + "required": false, + "defaultValue": "0" + }, + { + "name": "isActive", + "type": "boolean", + "description": "Indicates if the session is active upon creation. Defaults to true.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated sessionId, all input parameters echoed back, plus server timestamp confirming session creation." + }, + "aiAgent": { + "useCase": "Use this tool when tracking user or service sessions in deployment environments to monitor activity periods, gather analytics, and correlate sessions with deployments or infrastructure events. Ideal for continuous integration systems that want to analyze usage or runtime sessions reliably.", + "limitations": "This tool does not itself analyze session data trends or perform further analytics; it is only for creating and initializing session records.", + "examples": [ + "Create a new session for user 'user123' starting now in production environment.", + "Initialize a session with custom attributes including featureFlag and userRole.", + "Create a session marked inactive for scheduled batch jobs in staging." + ] + }, + "tags": [ + "devops", + "analytics", + "session", + "monitoring", + "deployment", + "tracking", + "automation" + ], + "examples": [ + { + "inputJson": "{\"userId\":\"user123\",\"startTime\":\"2024-06-22T14:30:00Z\",\"environment\":\"production\",\"customAttributes\":{\"featureFlag\":\"betaFeature\",\"userRole\":\"admin\"},\"durationSeconds\":3600,\"isActive\":true}", + "description": "Create a session with user identifier 'user123' starting at a given time in the production environment including custom attributes indicating beta feature usage and admin role." + }, + { + "inputJson": "{\"userId\":\"serviceAccount42\",\"startTime\":\"2024-06-22T18:00:00Z\",\"environment\":\"staging\",\"isActive\":false}", + "description": "Create an inactive session for a service account in the staging environment representing a batch or scripted process." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Session", + "context": null + } + }, + { + "name": "devops.createHeading", + "description": "Generates formatted heading strings for configuration files, deployment scripts, or documentation. Accepts heading text, level, and optional style, then outputs a string formatted accordingly for use in code comments or markdown files to improve readability and organization in infrastructure automation and DevOps scripts.", + "category": "devops", + "parameters": [ + { + "name": "text", + "type": "string", + "description": "The heading text to be formatted as a heading", + "required": true, + "defaultValue": "" + }, + { + "name": "level", + "type": "number", + "description": "Heading level to determine formatting style or number of prefix characters (e.g., 1-6 for markdown or indentation)", + "required": true, + "defaultValue": "1" + }, + { + "name": "style", + "type": "string", + "description": "Formatting style to apply: for example, 'markdown', 'hashComment', or 'underline' for different output formats", + "required": false, + "defaultValue": "markdown" + } + ], + "returns": { + "type": "string", + "description": "A formatted heading string suitable for insertion into code comments, configuration files, or documentation scripts." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to generate clear, properly formatted section headings within deployment scripts, infrastructure-as-code files, or documentation to improve clarity and structure. This helps in auto-generating or annotating DevOps related files with consistent heading styles.", + "limitations": "Does not generate complex documentation sections or content beyond single-line headings. Formatting options are limited to predefined styles and do not support custom templates or rich formatting beyond plain text styles.", + "examples": [ + "Create a level 2 markdown heading with the text 'Deployment Steps'.", + "Generate a hash-comment style level 3 heading 'Environment Variables' for a shell script.", + "Produce an underline style level 1 heading 'Configuration' for a config file comment block." + ] + }, + "tags": [ + "devops", + "heading", + "formatting", + "documentation", + "scripts" + ], + "examples": [ + { + "inputJson": "{\"text\":\"Deployment Steps\",\"level\":2,\"style\":\"markdown\"}", + "description": "Generate a markdown level 2 heading for deployment steps section." + }, + { + "inputJson": "{\"text\":\"Environment Variables\",\"level\":3,\"style\":\"hashComment\"}", + "description": "Create a level 3 heading using hash-style comments for a shell script section." + }, + { + "inputJson": "{\"text\":\"Configuration\",\"level\":1,\"style\":\"underline\"}", + "description": "Produce an underline style heading for configuration section in a config file." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Heading", + "context": null + } + }, + { + "name": "devops.createDeal", + "description": "Creates a structured deal record for DevOps-related business transactions, such as contracts for infrastructure projects or software deployment agreements. Accepts deal metadata including parties involved, deal terms, deadlines, and budget. Validates and formats inputs, then outputs a unique deal ID and full deal summary for integration with project management systems.", + "category": "devops", + "parameters": [ + { + "name": "dealName", + "type": "string", + "description": "The official name or title of the deal to be created.", + "required": true, + "defaultValue": "" + }, + { + "name": "partiesInvolved", + "type": "array", + "description": "An array of strings listing all companies or individuals participating in the deal.", + "required": true, + "defaultValue": "" + }, + { + "name": "startDate", + "type": "string", + "description": "The start date of the deal in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "endDate", + "type": "string", + "description": "The end date or expected completion date of the deal in ISO 8601 format (YYYY-MM-DD).", + "required": true, + "defaultValue": "" + }, + { + "name": "dealValue", + "type": "number", + "description": "The total monetary value of the deal, in the specified currency.", + "required": true, + "defaultValue": "" + }, + { + "name": "currency", + "type": "string", + "description": "The currency code (ISO 4217) used for the deal value, e.g., USD, EUR.", + "required": true, + "defaultValue": "USD" + }, + { + "name": "termsAndConditions", + "type": "string", + "description": "Text describing the key terms, responsibilities, and conditions for this deal.", + "required": false, + "defaultValue": "" + }, + { + "name": "isConfidential", + "type": "boolean", + "description": "Indicates whether the deal details should be marked as confidential.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the unique deal identifier, creation timestamp, and a detailed summary of the deal including all input fields and the calculated duration in days." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to formalize and log business agreements specifically related to DevOps projects, such as contracts for cloud infrastructure deployments, consulting services, or software implementation deals. It standardizes deal creation for automation and tracking.", + "limitations": "This tool does not negotiate terms or validate legal compliance; it only structures and records provided deal information. Does not handle payment processing or contract signing workflows.", + "examples": [ + "Create a new deal for a cloud migration project between two companies with a six-month duration and specified budget.", + "Record a confidential consulting contract with specified terms and parties involved.", + "Generate a deal summary for software deployment agreement with start and end dates, and deal value." + ] + }, + "tags": [ + "devops", + "deal", + "business", + "contract", + "automation", + "project-management" + ], + "examples": [ + { + "inputJson": "{\"dealName\":\"Cloud Infrastructure Migration\",\"partiesInvolved\":[\"TechCorp\",\"CloudServe\"],\"startDate\":\"2024-07-01\",\"endDate\":\"2024-12-31\",\"dealValue\":250000,\"currency\":\"USD\",\"termsAndConditions\":\"Standard SLA applies.\",\"isConfidential\":false}", + "description": "Create a deal for a cloud infrastructure migration project between TechCorp and CloudServe spanning six months with a $250,000 budget." + }, + { + "inputJson": "{\"dealName\":\"DevOps Consulting Contract\",\"partiesInvolved\":[\"InnovateX\",\"ConsultPlus\"],\"startDate\":\"2024-08-15\",\"endDate\":\"2025-02-15\",\"dealValue\":150000,\"currency\":\"EUR\",\"termsAndConditions\":\"Consulting services with monthly progress reports.\",\"isConfidential\":true}", + "description": "Record a confidential consulting contract deal involving InnovateX and ConsultPlus." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Deal", + "context": null + } + }, + { + "name": "devops.createReply", + "description": "Creates a templated reply message for communications in DevOps workflows, such as responding to deployment status updates, incident reports, or change requests. Accepts input including recipient, message context, and tone, then generates a customized reply text ready for posting or sending.", + "category": "devops", + "parameters": [ + { + "name": "recipient", + "type": "string", + "description": "The target recipient of the reply message, typically a username or email, to personalize the reply.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "string", + "description": "Brief description or identifier of the message context, e.g., 'deployment failure', 'incident update', to tailor the reply content appropriately.", + "required": true, + "defaultValue": "" + }, + { + "name": "tone", + "type": "string", + "description": "Desired tone of the reply message, such as 'formal', 'informal', or 'concise' to adjust style and wording.", + "required": false, + "defaultValue": "formal" + }, + { + "name": "includeNextSteps", + "type": "boolean", + "description": "Flag indicating whether to append suggested next steps or actions in the reply message.", + "required": false, + "defaultValue": "true" + }, + { + "name": "additionalNotes", + "type": "string", + "description": "Optional field for any extra notes or details to include in the reply message for clarity or context.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated reply text content ready for use in communication." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to automatically generate clear, context-aware replies in DevOps communication threads such as deployment notifications, incident reports, or change requests. It helps maintain consistent, professional responses and reduces manual message crafting.", + "limitations": "The tool cannot autonomously verify factual accuracy or retrieve real-time status; it relies on provided context and does not replace human judgment on sensitive communications.", + "examples": [ + "Generate a formal reply to a deployment failure notification including next steps.", + "Create a concise incident update reply without additional notes.", + "Respond informally to a change request confirmation with extra clarifications." + ] + }, + "tags": [ + "devops", + "communication", + "reply", + "automation", + "deployment", + "incident", + "templating" + ], + "examples": [ + { + "inputJson": "{\"recipient\":\"alice@example.com\",\"context\":\"deployment failure\",\"tone\":\"formal\",\"includeNextSteps\":true,\"additionalNotes\":\"Investigating root cause.\"}", + "description": "Generate a formal reply to report a deployment failure and outline next steps including investigation note." + }, + { + "inputJson": "{\"recipient\":\"bob@company.com\",\"context\":\"incident update\",\"tone\":\"concise\",\"includeNextSteps\":false,\"additionalNotes\":\"\"}", + "description": "Create a concise reply to provide an incident update without next steps or extra notes." + }, + { + "inputJson": "{\"recipient\":\"carol@devteam.io\",\"context\":\"change request confirmation\",\"tone\":\"informal\",\"includeNextSteps\":true,\"additionalNotes\":\"Please confirm if downtime is acceptable.\"}", + "description": "Generate an informal reply confirming a change request and ask for downtime confirmation as extra note." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Reply", + "context": null + } + }, + { + "name": "devops.createThread", + "description": "Creates a new communication thread within a DevOps collaboration platform or issue tracking system. Accepts parameters specifying thread title, participants, initial message content, and optional tags. Processes inputs to initialize a thread for team discussions or issue tracking, returning thread ID and metadata.", + "category": "devops", + "parameters": [ + { + "name": "title", + "type": "string", + "description": "The title or subject of the thread to create.", + "required": true, + "defaultValue": "" + }, + { + "name": "participants", + "type": "array", + "description": "List of participant usernames or IDs to include in the thread.", + "required": true, + "defaultValue": "[]" + }, + { + "name": "initialMessage", + "type": "string", + "description": "The initial message content to start the thread with.", + "required": true, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional tags or labels to categorize the thread.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "priority", + "type": "string", + "description": "Optional priority level of the thread (e.g., 'low', 'medium', 'high').", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the created thread's unique identifier, creation timestamp, participant list, and status." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to initiate a structured team discussion or issue tracking thread in a DevOps environment, such as after detecting an incident or deployment event. It enables automated creation of threads for collaboration and follow-up.", + "limitations": "This tool does not send notifications by itself or integrate with external messaging platforms beyond the configured DevOps system. It requires valid participant identifiers and cannot update threads after creation.", + "examples": [ + "Create a thread titled 'Deployment Issue on Backend' with dev team members and an initial alert message.", + "Start a high priority thread for urgent bug tracking including QA and Engineering.", + "Create a general discussion thread tagged 'weekly sync' inviting the project managers." + ] + }, + "tags": [ + "devops", + "communication", + "thread", + "collaboration", + "issue-tracking", + "automation" + ], + "examples": [ + { + "inputJson": "{\"title\":\"Deployment Issue on Backend\",\"participants\":[\"dev1\",\"dev2\",\"qa1\"],\"initialMessage\":\"We encountered a failure during the latest deployment. Please investigate.\",\"tags\":[\"incident\",\"backend\"]}", + "description": "Create a thread about a backend deployment issue including developers and QA." + }, + { + "inputJson": "{\"title\":\"Weekly Standup Sync\",\"participants\":[\"pm1\",\"pm2\",\"teamlead\"],\"initialMessage\":\"Agenda items for weekly sync meeting.\",\"tags\":[\"meeting\"],\"priority\":\"medium\"}", + "description": "Start a team meeting thread for project managers and leads." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Thread", + "context": null + } + }, + { + "name": "devops.createResume", + "description": "Generates a professional resume document optimized for DevOps roles. Accepts structured input including personal details, skills, certifications, work experience, and education, then formats and compiles this data into a polished resume in PDF or plain text format.", + "category": "devops", + "parameters": [ + { + "name": "fullName", + "type": "string", + "description": "Applicant's full name to display on the resume", + "required": true, + "defaultValue": "" + }, + { + "name": "contactInfo", + "type": "object", + "description": "Contact details including email, phone, and LinkedIn URL", + "required": true, + "defaultValue": "" + }, + { + "name": "summary", + "type": "string", + "description": "Brief professional summary or objective section", + "required": false, + "defaultValue": "" + }, + { + "name": "skills", + "type": "array", + "description": "List of technical and soft skills relevant to DevOps", + "required": true, + "defaultValue": "[]" + }, + { + "name": "certifications", + "type": "array", + "description": "List of certifications with name and date", + "required": false, + "defaultValue": "[]" + }, + { + "name": "workExperience", + "type": "array", + "description": "Chronological list of job roles with company, dates, and responsibilities", + "required": true, + "defaultValue": "[]" + }, + { + "name": "education", + "type": "array", + "description": "Educational background including degrees, schools, and dates", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'pdf' or 'txt'", + "required": true, + "defaultValue": "pdf" + } + ], + "returns": { + "type": "object", + "description": "An object containing the resume document as base64-encoded string and metadata such as format and a filename" + }, + "aiAgent": { + "useCase": "Use this tool when you need to automatically generate a professional resume tailored for DevOps roles from structured user input. It helps create consistent, well-formatted resumes for deployment or application workflows, such as automated job application pipelines.", + "limitations": "This tool does not perform natural language enhancement or optimization of resume text; it formats provided data but does not create content beyond summarizing input. It also cannot customize design elements beyond basic formatting.", + "examples": [ + "Create a resume PDF for a DevOps engineer with specified skills and experience.", + "Generate a plain text resume document focusing on certifications and education.", + "Produce a resume file that an automated system can attach to job applications." + ] + }, + "tags": [ + "devops", + "resume", + "document", + "generation", + "automation", + "pdf", + "txt" + ], + "examples": [ + { + "inputJson": "{\"fullName\":\"Jane Smith\",\"contactInfo\":{\"email\":\"jane.smith@example.com\",\"phone\":\"555-6789\",\"linkedin\":\"https://linkedin.com/in/janesmith\"},\"summary\":\"Experienced DevOps engineer with 5+ years in cloud infrastructure and automation.\",\"skills\":[\"AWS\",\"Docker\",\"Kubernetes\",\"Terraform\"],\"certifications\":[{\"name\":\"AWS Certified Solutions Architect\",\"date\":\"2022-05\"}],\"workExperience\":[{\"company\":\"Tech Solutions\",\"role\":\"Senior DevOps Engineer\",\"startDate\":\"2019-06\",\"endDate\":\"Present\",\"responsibilities\":\"Managed Kubernetes clusters and automated CI/CD pipelines.\"}],\"education\":[{\"degree\":\"B.Sc. Computer Science\",\"school\":\"State University\",\"startDate\":\"2012\",\"endDate\":\"2016\"}],\"outputFormat\":\"pdf\"}", + "description": "Generate a PDF resume for a senior DevOps engineer including certifications and relevant skills." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Resume", + "context": null + } + }, + { + "name": "frontend-development.analyzeConversion", + "description": "Analyzes frontend user interaction data to calculate conversion rates and identify key factors influencing user behavior. Accepts event logs or user session data with conversion definitions, processes to compute conversion metrics and funnel drop-offs, and outputs detailed conversion analytics and insights to optimize client-side user flows.", + "category": "frontend-development", + "parameters": [ + { + "name": "eventData", + "type": "array", + "description": "Array of user events or interactions captured from the frontend, including timestamps and event types.", + "required": true, + "defaultValue": "" + }, + { + "name": "conversionEvent", + "type": "string", + "description": "The event name or criterion that defines a successful conversion (e.g., 'purchaseCompleted').", + "required": true, + "defaultValue": "" + }, + { + "name": "funnelSteps", + "type": "array", + "description": "Ordered list of event names representing intermediate funnel steps leading up to the conversion event.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "timeWindowMinutes", + "type": "number", + "description": "Optional time window in minutes to consider user events as part of the same session for conversion analysis.", + "required": false, + "defaultValue": "30" + }, + { + "name": "groupByProperty", + "type": "string", + "description": "Optional user property or attribute (e.g., 'deviceType' or 'referrer') to segment conversion analysis by.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing overall conversion rate, funnel step conversion rates, drop-off analysis, and segmented statistics if requested." + }, + "aiAgent": { + "useCase": "Use this tool when you have frontend user interaction data and need to understand how effectively users are converting through defined funnels, identify bottlenecks, and segment conversions by user properties for optimizing UI/UX and marketing strategies.", + "limitations": "Does not collect user data directly; requires pre-collected and cleaned event logs. Cannot infer causation or perform predictive modeling. Funnel steps must be defined explicitly.", + "examples": [ + "Calculate conversion rate for purchase completion from session event logs.", + "Analyze funnel drop-offs between 'viewProduct', 'addToCart', and 'purchaseCompleted' events.", + "Segment conversion rates by device type to optimize mobile experience." + ] + }, + "tags": [ + "frontend", + "analytics", + "conversion", + "user-behavior", + "funnel-analysis", + "optimization" + ], + "examples": [ + { + "inputJson": "{\"eventData\":[{\"userId\":\"u1\",\"event\":\"viewProduct\",\"timestamp\":1686000000000},{\"userId\":\"u1\",\"event\":\"addToCart\",\"timestamp\":1686000050000},{\"userId\":\"u1\",\"event\":\"purchaseCompleted\",\"timestamp\":1686000100000},{\"userId\":\"u2\",\"event\":\"viewProduct\",\"timestamp\":1686000200000},{\"userId\":\"u2\",\"event\":\"addToCart\",\"timestamp\":1686000250000}],\"conversionEvent\":\"purchaseCompleted\",\"funnelSteps\":[\"viewProduct\",\"addToCart\",\"purchaseCompleted\"],\"timeWindowMinutes\":30,\"groupByProperty\":\"\"}", + "description": "Analyze purchase funnel conversion and drop-offs within a 30-minute session window from raw frontend event data." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Conversion", + "context": null + } + }, + { + "name": "frontend-development.uploadTable", + "description": "Uploads tabular data to a frontend application component for display and interaction. Accepts data in CSV, JSON array of objects, or Excel file formats, processes and validates the input, and outputs a standardized JSON array representing the table rows for rendering in UI table components.", + "category": "frontend-development", + "parameters": [ + { + "name": "data", + "type": "string", + "description": "The raw table data to upload, either as CSV text, JSON stringified array of objects, or base64 Excel file content.", + "required": true, + "defaultValue": "" + }, + { + "name": "format", + "type": "string", + "description": "The format of the input data: 'csv', 'json', or 'excel'.", + "required": true, + "defaultValue": "" + }, + { + "name": "hasHeader", + "type": "boolean", + "description": "Indicates if the input data includes a header row/keys for columns (applies to CSV and Excel).", + "required": false, + "defaultValue": "true" + }, + { + "name": "validateSchema", + "type": "object", + "description": "Optional JSON schema object to validate each table row against before uploading.", + "required": false, + "defaultValue": "" + }, + { + "name": "maxRows", + "type": "number", + "description": "Maximum number of rows to process from input data (to limit large uploads).", + "required": false, + "defaultValue": "1000" + } + ], + "returns": { + "type": "object", + "description": "Returns an object containing a standardized JSON array of row objects representing the table data, plus metadata including number of rows processed and any validation errors." + }, + "aiAgent": { + "useCase": "Use this tool when an AI needs to upload or ingest tabular data into a frontend user interface from various common formats (CSV, JSON, Excel) to enable rendering, editing, or further processing in client-side applications. Appropriate when transforming raw table data into a structure suitable for frontend table components.", + "limitations": "Cannot perform complex data transformation beyond basic format parsing and optional schema validation; does not handle asynchronous uploading or storage persistence; expects input data size within limits specified; does not render UI, only prepares data structure.", + "examples": [ + "Upload CSV data representing user records to display in a dashboard table.", + "Ingest JSON stringified array of product info objects for rendering in a frontend grid.", + "Parse an Excel file base64 string with sales data and validate against a given schema for consistency before display." + ] + }, + "tags": [ + "frontend", + "upload", + "table", + "data-import", + "csv", + "json", + "excel", + "validation" + ], + "examples": [ + { + "inputJson": "{\"data\":\"id,name,age\\n1,Alice,30\\n2,Bob,25\",\"format\":\"csv\",\"hasHeader\":true}", + "description": "Upload a simple CSV string with headers representing user IDs, names, and ages." + }, + { + "inputJson": "{\"data\":\"[{\\\"id\\\":1,\\\"name\\\":\\\"Widget\\\",\\\"price\\\":19.99},{\\\"id\\\":2,\\\"name\\\":\\\"Gadget\\\",\\\"price\\\":29.99}]\",\"format\":\"json\"}", + "description": "Upload JSON array of objects representing product items with id, name, price." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Table", + "context": null + } + }, + { + "name": "frontend-development.analyzeMarkdown", + "description": "Analyzes Markdown-formatted text input to extract a detailed structural overview including headings, lists, links, images, code blocks, and inline styles. Outputs a comprehensive summary of Markdown elements and statistics for front-end processing or content validation.", + "category": "frontend-development", + "parameters": [ + { + "name": "markdownText", + "type": "string", + "description": "The raw Markdown text content to analyze.", + "required": true, + "defaultValue": "" + }, + { + "name": "extractHeadings", + "type": "boolean", + "description": "Whether to identify and return all heading elements with their levels.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractLinks", + "type": "boolean", + "description": "Whether to extract all hyperlinks and their associated text from the Markdown.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractLists", + "type": "boolean", + "description": "Whether to extract all list structures (ordered and unordered) from the Markdown.", + "required": false, + "defaultValue": "true" + }, + { + "name": "extractImages", + "type": "boolean", + "description": "Whether to extract all image elements along with alt text and source URLs.", + "required": false, + "defaultValue": "true" + }, + { + "name": "includeStatistics", + "type": "boolean", + "description": "Whether to include counts for each Markdown element type in the output summary.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing arrays of extracted Markdown elements (headings, links, lists, images, code blocks) and aggregate statistics summarizing their counts." + }, + "aiAgent": { + "useCase": "This tool is intended for AI agents that need to understand or transform Markdown content in frontend contexts, such as preview rendering, content validation, or automated report generation. Agents can use it to parse and summarize Markdown structure before further processing or UI display.", + "limitations": "This tool does not convert Markdown to HTML or other formats; it only analyzes and extracts structural information. It may not handle malformed Markdown perfectly or custom extensions beyond standard Markdown syntax.", + "examples": [ + "Analyze the headings and links in this blog post markdown for generating a table of contents.", + "Provide a summary of images and code blocks used in the README markdown to check content completeness.", + "Extract lists and statistics from markdown notes before converting them into frontend components." + ] + }, + "tags": [ + "frontend", + "markdown", + "analysis", + "content-processing", + "text-parsing", + "ui-development" + ], + "examples": [ + { + "inputJson": "{\"markdownText\":\"# Title\\nSome introductory text.\\n\\n## Subtitle\\n- item 1\\n- item 2\\n\\n[OpenAI](https://openai.com) provides AI tools.\\n\\n![Logo](https://openai.com/logo.png)\",\"extractHeadings\":true,\"extractLinks\":true,\"extractLists\":true,\"extractImages\":true,\"includeStatistics\":true}", + "description": "Analyze a markdown string containing headings, lists, a link, and an image to extract all respective elements and counts." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Markdown", + "context": null + } + }, + { + "name": "frontend-development.uploadVideo", + "description": "Uploads a video file from the client-side to a specified remote server endpoint. Accepts video files in common formats, supports optional metadata like title and description, and returns the upload status and URL to the stored video.", + "category": "frontend-development", + "parameters": [ + { + "name": "filePath", + "type": "string", + "description": "Local path or URL of the video file to upload.", + "required": true, + "defaultValue": "" + }, + { + "name": "serverEndpoint", + "type": "string", + "description": "URL of the server API endpoint to which the video will be uploaded.", + "required": true, + "defaultValue": "" + }, + { + "name": "title", + "type": "string", + "description": "Optional title for the video to accompany the upload.", + "required": false, + "defaultValue": "" + }, + { + "name": "description", + "type": "string", + "description": "Optional textual description for the video metadata.", + "required": false, + "defaultValue": "" + }, + { + "name": "tags", + "type": "array", + "description": "Optional array of tags or keywords describing the video content.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "authToken", + "type": "string", + "description": "Optional authentication token for server authorization.", + "required": false, + "defaultValue": "" + }, + { + "name": "chunkSizeMB", + "type": "number", + "description": "Optional size in megabytes for dividing uploads into chunks (for large files).", + "required": false, + "defaultValue": "5" + }, + { + "name": "retryCount", + "type": "number", + "description": "Number of retry attempts in case of upload failures.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing 'success' (boolean), 'videoUrl' (string URL of the uploaded video if successful), and 'message' (any error or success text)." + }, + "aiAgent": { + "useCase": "Use this tool to upload video files from client applications to a backend server, especially when automating video content management, user-generated content upload, or media sharing features. It is ideal when metadata and upload progress control are needed.", + "limitations": "This tool doesn't perform video encoding/transcoding or validation beyond file presence and basic format checks. It requires a reachable server endpoint accepting video uploads. It does not provide playback or storage management beyond upload.", + "examples": [ + "Upload a user profile introduction video to the content server with title and tags.", + "Send a large training webinar video in chunks and retry on failure to ensure upload completes.", + "Upload a demonstration clip using authentication token for authorization." + ] + }, + "tags": [ + "frontend", + "video", + "upload", + "media", + "client-side", + "file-upload", + "chunked-upload" + ], + "examples": [ + { + "inputJson": "{\"filePath\":\"/videos/intro.mp4\",\"serverEndpoint\":\"https://api.mymediaapp.com/upload\",\"title\":\"Intro Video\",\"description\":\"User introduction video.\",\"tags\":[\"intro\",\"profile\"],\"authToken\":\"abc123token\"}", + "description": "Upload a local intro video to the media server with metadata and authentication." + }, + { + "inputJson": "{\"filePath\":\"/videos/webinar.mov\",\"serverEndpoint\":\"https://media.example.com/api/upload\",\"chunkSizeMB\":10,\"retryCount\":5}", + "description": "Upload a large webinar video in 10MB chunks with retries on failures." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "upload", + "object": "Video", + "context": null + } + }, + { + "name": "frontend-development.analyzeYAML", + "description": "Analyzes a YAML string representing frontend configuration or interface data, validating syntax, extracting structural information such as keys and nesting levels, and identifying potential issues like duplicates or schema mismatches. Returns a detailed analysis report useful for debugging and optimizing frontend YAML configurations.", + "category": "frontend-development", + "parameters": [ + { + "name": "yamlContent", + "type": "string", + "description": "The YAML content string to be analyzed for correctness and structure.", + "required": true, + "defaultValue": "" + }, + { + "name": "validateSchema", + "type": "boolean", + "description": "Flag indicating whether to validate against a provided JSON schema if available.", + "required": false, + "defaultValue": "false" + }, + { + "name": "schema", + "type": "object", + "description": "An optional JSON schema object to validate the YAML content against (if validateSchema is true).", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An analysis report containing syntax validity, list of top-level keys, nesting depth, duplicates found, schema validation results, and any warnings or errors detected." + }, + "aiAgent": { + "useCase": "This tool is ideal when an AI agent needs to understand and validate YAML files used for frontend configurations, component definitions, or CI/CD settings, ensuring correctness and exposing structural insights before further processing or code generation.", + "limitations": "Cannot fix errors automatically or fully interpret user intent behind YAML contents; limited to syntactic and schema-level analysis.", + "examples": [ + "Analyze the YAML configuration for a React component to ensure it meets the schema.", + "Check for duplicates and nesting depth in the frontend settings YAML.", + "Validate the provided YAML against a given JSON schema to find any mismatches." + ] + }, + "tags": [ + "frontend", + "YAML", + "analysis", + "validation", + "configuration", + "schema" + ], + "examples": [ + { + "inputJson": "{\"yamlContent\":\"components:\\n header:\\n type: Header\\n props:\\n title: Welcome\\n footer:\\n type: Footer\\n props:\\n text: '© 2024'\\n\",\"validateSchema\":false}", + "description": "Analyze a simple YAML frontend components config without schema validation to check keys and structure." + }, + { + "inputJson": "{\"yamlContent\":\"settings:\\n theme: dark\\n layout: grid\\n theme: light\\n\",\"validateSchema\":false}", + "description": "Analyze YAML with duplicate keys to find and report duplicates in frontend settings." + }, + { + "inputJson": "{\"yamlContent\":\"app:\\n name: SampleApp\\n version: 1.0.0\\n\",\"validateSchema\":true,\"schema\":{\"type\":\"object\",\"properties\":{\"app\":{\"type\":\"object\",\"properties\":{\"name\":{\"type\":\"string\"},\"version\":{\"type\":\"string\"}},\"required\":[\"name\",\"version\"]}},\"required\":[\"app\"]}}", + "description": "Validate frontend app config YAML against a JSON schema to confirm required fields and types." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "YAML", + "context": null + } + }, + { + "name": "frontend-development.downloadVideo", + "description": "This tool enables downloading a video file from a specified URL in a frontend web application context. It accepts the video source URL and optional parameters like filename and mime type. It processes the URL to initiate a client-side download and returns a status indicating success or failure of the operation.", + "category": "frontend-development", + "parameters": [ + { + "name": "videoUrl", + "type": "string", + "description": "The direct URL of the video file to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "fileName", + "type": "string", + "description": "The desired filename for the downloaded video. If omitted, the name is derived from the URL.", + "required": false, + "defaultValue": "" + }, + { + "name": "mimeType", + "type": "string", + "description": "The MIME type of the video file (e.g., 'video/mp4'). Used to specify the content type if needed.", + "required": false, + "defaultValue": "" + }, + { + "name": "useCorsProxy", + "type": "boolean", + "description": "Whether to route the download request via a CORS proxy to bypass cross-origin restrictions. Defaults to false.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object with status (success or error) and an optional message providing details about the download result." + }, + "aiAgent": { + "useCase": "Use this tool when a web frontend interface needs to provide users with the ability to download videos directly from provided URLs, for example in video gallery applications, e-learning platforms, or multimedia portals. It handles browser-compatible client-side download initiation, including optional filename settings.", + "limitations": "This tool cannot download videos that are protected by DRM or require authentication tokens not provided in URL. Cross-origin restrictions may prevent successful downloads unless a CORS proxy is enabled and allowed. It does not perform video format conversions or streaming processing.", + "examples": [ + "Download a video from a public MP4 URL to the user's device with a custom filename.", + "Download a video ensuring the MIME type is specified for correct handling by the browser.", + "Download a video URL which has CORS restrictions requiring use of a proxy." + ] + }, + "tags": [ + "frontend", + "video", + "download", + "media", + "client-side", + "browser" + ], + "examples": [ + { + "inputJson": "{\"videoUrl\":\"https://example.com/videos/sample.mp4\",\"fileName\":\"lesson1.mp4\",\"mimeType\":\"video/mp4\",\"useCorsProxy\":false}", + "description": "Download a publicly accessible MP4 video with a specified filename." + }, + { + "inputJson": "{\"videoUrl\":\"https://media-host.com/content/video.webm\"}", + "description": "Download a WebM video using the URL with default filename derived from URL." + }, + { + "inputJson": "{\"videoUrl\":\"https://restricted-site.com/protectedvideo.mp4\",\"useCorsProxy\":true}", + "description": "Download a video from a site with CORS restrictions using a proxy." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Video", + "context": null + } + }, + { + "name": "frontend-development.draftSummary", + "description": "Generates a concise textual summary of frontend component code or user interface descriptions provided as input. Accepts component source code or structured UI metadata, analyzes structure and key functions, and outputs a human-readable summary highlighting main purposes, features, and usage notes.", + "category": "frontend-development", + "parameters": [ + { + "name": "inputCode", + "type": "string", + "description": "Source code or structured description of the frontend component or UI to summarize.", + "required": true, + "defaultValue": "" + }, + { + "name": "inputType", + "type": "string", + "description": "Type of input provided: 'code' for raw source code, 'metadata' for structured UI info.", + "required": true, + "defaultValue": "code" + }, + { + "name": "language", + "type": "string", + "description": "Programming language of the inputCode, e.g., 'JavaScript', 'TypeScript', 'JSX'.", + "required": false, + "defaultValue": "JavaScript" + }, + { + "name": "maxSummaryLength", + "type": "number", + "description": "Maximum length of the generated summary in characters.", + "required": false, + "defaultValue": "500" + }, + { + "name": "includeUsageExamples", + "type": "boolean", + "description": "Whether to include usage examples in the summary if detected.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing the summarized text of the frontend component or UI description, including main features and key notes." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to understand or explain existing frontend components by generating concise summaries for documentation, onboarding, or reviews. It helps convert source or metadata inputs into readable overviews without requiring manual interpretation.", + "limitations": "Cannot execute or render the code; summaries depend on code quality and clarity; may miss dynamic behaviors not evident from static code or metadata.", + "examples": [ + "Summarize a React component source code to document its props and main functionality.", + "Generate a brief summary from UI metadata describing form fields and validation rules.", + "Create a usage and feature overview from a TypeScript widget source snippet." + ] + }, + "tags": [ + "frontend", + "summary", + "documentation", + "code-analysis", + "UI", + "component" + ], + "examples": [ + { + "inputJson": "{\"inputCode\":\"function Button(props) { return <button onClick={props.onClick}>{props.label}</button>; }\",\"inputType\":\"code\",\"language\":\"JSX\",\"maxSummaryLength\":300,\"includeUsageExamples\":true}", + "description": "Summarize a simple React Button component code with usage example included." + }, + { + "inputJson": "{\"inputCode\":\"{\\\"componentName\\\":\\\"LoginForm\\\", \\\"fields\\\":[{\\\"name\\\":\\\"username\\\",\\\"type\\\":\\\"text\\\"}, {\\\"name\\\":\\\"password\\\",\\\"type\\\":\\\"password\\\"}], \\\"validation\\\":{\\\"username\\\":\\\"required\\\", \\\"password\\\":\\\"required\\\"}}\",\"inputType\":\"metadata\",\"maxSummaryLength\":400,\"includeUsageExamples\":false}", + "description": "Generate a summary of a LoginForm UI described via JSON metadata without usage examples." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "draft", + "object": "Summary", + "context": null + } + }, + { + "name": "frontend-development.generateQuote", + "description": "Generates a dynamic inspirational quote component for frontend applications. Accepts optional parameters including author name, quote text, style options, and animation preferences, then produces a JSON representation of the quote component ready for rendering or further customization.", + "category": "frontend-development", + "parameters": [ + { + "name": "quoteText", + "type": "string", + "description": "The main text of the quote to display.", + "required": true, + "defaultValue": "" + }, + { + "name": "authorName", + "type": "string", + "description": "The name of the person who authored the quote. Optional, defaults to empty if not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "textStyle", + "type": "object", + "description": "Styling options for the quote text such as font size, color, and weight (e.g., {\"fontSize\":\"16px\",\"color\":\"#333\"}).", + "required": false, + "defaultValue": "{}" + }, + { + "name": "authorStyle", + "type": "object", + "description": "Styling options for the author text such as font style, color, and size.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "animate", + "type": "boolean", + "description": "If true, include animation effects like fade-in or slide for the quote component.", + "required": false, + "defaultValue": "false" + }, + { + "name": "animationType", + "type": "string", + "description": "Type of animation to apply when animate is true (e.g., 'fade', 'slide', 'zoom').", + "required": false, + "defaultValue": "fade" + } + ], + "returns": { + "type": "object", + "description": "A JSON object representing the quote component, including text, author, styling, and animation properties, suitable for rendering in a frontend environment." + }, + "aiAgent": { + "useCase": "Use this tool when you need to dynamically generate styled quote components for web or mobile frontend interfaces, enabling customizable text, author attribution, and user experience animations without manually crafting each component.", + "limitations": "This tool does not fetch quotes from external databases or APIs; it requires the quote text and author to be provided explicitly. It also does not generate graphical images, only structured JSON representation of the quote component.", + "examples": [ + "Generate a quote component showing \"The only limit to our realization of tomorrow is our doubts of today.\" by Franklin D. Roosevelt with a blue text color and fade animation.", + "Create a minimalistic quote component with no author displayed, styled with a serif font and no animation.", + "Produce a quote component with custom author styling and slide animation for enhanced user interaction." + ] + }, + "tags": [ + "frontend", + "quote", + "UI", + "component", + "generate", + "animation", + "styling" + ], + "examples": [ + { + "inputJson": "{\"quoteText\":\"The only limit to our realization of tomorrow is our doubts of today.\",\"authorName\":\"Franklin D. Roosevelt\",\"textStyle\":{\"color\":\"#007BFF\",\"fontSize\":\"18px\"},\"animate\":true,\"animationType\":\"fade\"}", + "description": "Generate a blue styled quote with author name and fade-in animation." + }, + { + "inputJson": "{\"quoteText\":\"Carpe diem. Seize the day.\",\"animate\":false}", + "description": "Generate a simple quote with no author and no animation." + }, + { + "inputJson": "{\"quoteText\":\"Innovation distinguishes between a leader and a follower.\",\"authorName\":\"Steve Jobs\",\"authorStyle\":{\"fontStyle\":\"italic\",\"color\":\"#555\"},\"animate\":true,\"animationType\":\"slide\"}", + "description": "Create a quote with italic author styling and slide animation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Quote", + "context": null + } + }, + { + "name": "backend-development.analyzeCitation", + "description": "Analyzes a citation string or structured citation data to extract key components such as authors, title, publication year, source, and DOI. It validates format compliance with common citation styles (APA, MLA, Chicago), identifies missing or malformed elements, and provides a structured citation object suitable for backend referencing and further processing.", + "category": "backend-development", + "parameters": [ + { + "name": "citationInput", + "type": "string", + "description": "The raw citation text or string to be analyzed.", + "required": true, + "defaultValue": "" + }, + { + "name": "citationStyle", + "type": "string", + "description": "The citation style format to validate against (e.g., 'APA', 'MLA', 'Chicago').", + "required": false, + "defaultValue": "APA" + }, + { + "name": "returnFormat", + "type": "string", + "description": "The desired output format for the structured citation (e.g., 'JSON', 'XML').", + "required": false, + "defaultValue": "JSON" + }, + { + "name": "strictValidation", + "type": "boolean", + "description": "Whether to enforce strict adherence to the citation style rules during analysis.", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "An object containing extracted citation fields (author(s), title, year, source, DOI, etc.), validation status, detected citation style, and any warnings or errors related to parsing or format compliance." + }, + "aiAgent": { + "useCase": "Use this tool to process raw or formatted citation strings from research papers, articles, or bibliographies to extract structured citation data for backend storage, validation, or further metadata enrichment in academic, publishing, or content management systems.", + "limitations": "Cannot perfectly parse highly ambiguous, incomplete, or non-standard citation strings. May misinterpret citations outside the supported styles or those with significant formatting errors.", + "examples": [ + "Analyze a raw APA style citation string to extract metadata and verify compliance.", + "Parse a citation in MLA style and return structured JSON fields for backend indexing.", + "Identify missing components in a Chicago style citation and provide validation warnings." + ] + }, + "tags": [ + "citation", + "bibliography", + "parsing", + "validation", + "metadata", + "backend", + "academic" + ], + "examples": [ + { + "inputJson": "{\"citationInput\":\"Smith, J. (2020). Understanding AI. Journal of AI Research, 15(3), 45-67.\", \"citationStyle\":\"APA\", \"returnFormat\":\"JSON\", \"strictValidation\":true}", + "description": "Analyzing a well-formed APA citation string to extract structured fields and validate format." + }, + { + "inputJson": "{\"citationInput\":\"Doe, Jane. 'Exploring Machine Learning' 2018, Tech Press.\", \"citationStyle\":\"MLA\", \"returnFormat\":\"JSON\", \"strictValidation\":false}", + "description": "Parsing an MLA formatted citation with minor formatting inconsistencies, returning structured data." + }, + { + "inputJson": "{\"citationInput\":\"Green, T. The future of computing, 2019.\", \"citationStyle\":\"Chicago\", \"returnFormat\":\"JSON\", \"strictValidation\":true}", + "description": "Analyzing a potentially incomplete Chicago citation highlighting missing publisher/source info." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Citation", + "context": null + } + }, + { + "name": "frontend-development.generateTemplate", + "description": "Generates customizable frontend HTML templates based on specified layout, style preferences, and component requirements. Accepts parameters defining template type (e.g., landing page, dashboard), color schemes, component list, and additional meta information, producing ready-to-use HTML and CSS code snippets.", + "category": "frontend-development", + "parameters": [ + { + "name": "templateType", + "type": "string", + "description": "Specifies the type of frontend template to generate such as 'landingPage', 'dashboard', 'profile', or custom.", + "required": true, + "defaultValue": "" + }, + { + "name": "colorScheme", + "type": "string", + "description": "Defines the primary color scheme for the template in CSS-compatible format (e.g., hex code or predefined schemes like 'light' or 'dark').", + "required": false, + "defaultValue": "light" + }, + { + "name": "components", + "type": "array", + "description": "List of UI components to include in the template, such as ['navbar','footer','card','button','form'].", + "required": false, + "defaultValue": "[]" + }, + { + "name": "responsive", + "type": "boolean", + "description": "Indicates whether the generated template should be responsive and adapt to different screen sizes.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customCSS", + "type": "string", + "description": "Additional user-provided CSS styles to include or override in the generated template.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the generated HTML and CSS code strings, ready for integration into frontend projects." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to quickly generate base frontend templates adjusted to specific types and styling parameters, streamlining UI prototyping or initial project setup without manual coding from scratch.", + "limitations": "This tool does not generate backend code, handle dynamic data binding, or create complex interactive logic beyond static template generation.", + "examples": [ + "Generate a landing page template with dark color scheme including navbar, footer, and sign-up form.", + "Create a responsive dashboard template with cards and buttons using a light theme.", + "Produce a profile page template that includes custom CSS overrides for branding." + ] + }, + "tags": [ + "frontend", + "template", + "UI", + "HTML", + "CSS", + "generator", + "responsive" + ], + "examples": [ + { + "inputJson": "{\"templateType\":\"landingPage\",\"colorScheme\":\"dark\",\"components\":[\"navbar\",\"footer\",\"form\"],\"responsive\":true,\"customCSS\":\"body { font-family: Arial, sans-serif; }\"}", + "description": "Generate a responsive dark-themed landing page template with navbar, footer, and a form, including custom font styling." + }, + { + "inputJson": "{\"templateType\":\"dashboard\",\"colorScheme\":\"light\",\"components\":[\"navbar\",\"card\",\"button\"],\"responsive\":true,\"customCSS\":\"\"}", + "description": "Create a light-themed dashboard template with navigation bar, cards, and buttons, supporting responsive design." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Template", + "context": null + } + }, + { + "name": "backend-development.analyzeMention", + "description": "Analyzes a mention text extracted from communication platforms to identify key attributes such as sentiment, intent, named entities, and relevance within a conversation context. Accepts raw mention text and optional context metadata; outputs structured analysis including sentiment score, detected intent, entities, and recommendation tags.", + "category": "backend-development", + "parameters": [ + { + "name": "mentionText", + "type": "string", + "description": "The text content of the mention to be analyzed for intent, sentiment, and entities.", + "required": true, + "defaultValue": "" + }, + { + "name": "contextMetadata", + "type": "object", + "description": "Optional object containing metadata about the conversation context (e.g., conversationId, userRole) to improve analysis accuracy.", + "required": false, + "defaultValue": "" + }, + { + "name": "language", + "type": "string", + "description": "Language code of the mention text (e.g., 'en', 'es') to improve language-specific processing.", + "required": false, + "defaultValue": "en" + }, + { + "name": "includeRecommendations", + "type": "boolean", + "description": "Whether to include recommendation tags based on the analysis (e.g., escalation needed).", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An analysis report including sentiment score (-1 to 1), identified intent label, extracted named entities with types, and optional recommendation tags." + }, + "aiAgent": { + "useCase": "Use this tool when processing mentions from communication platforms (e.g., chat messages, comments) to understand user sentiment, identify intent for routing or automated responses, extract relevant entities for context enrichment, and generate actionable recommendations. It helps in enhancing backend services dealing with communication analysis and improving responsiveness.", + "limitations": "This tool cannot fully understand complex sarcasm or nuanced humor and may require complementary context data for improved accuracy. It does not perform user identification or privacy filtering.", + "examples": [ + "Analyze a customer support mention to detect negative sentiment and whether escalation is required.", + "Extract entities and intent from a chat mention to route the message to the appropriate department.", + "Determine the sentiment and provide recommendations for a social media comment mention." + ] + }, + "tags": [ + "analysis", + "backend", + "communication", + "sentiment-analysis", + "intent-detection", + "entity-extraction", + "recommendation" + ], + "examples": [ + { + "inputJson": "{\"mentionText\":\"I'm really unhappy with the service I received today.\",\"language\":\"en\",\"includeRecommendations\":true}", + "description": "Analyze a negative customer support mention with sentiment and recommendation." + }, + { + "inputJson": "{\"mentionText\":\"Can you help me reset my password?\",\"language\":\"en\"}", + "description": "Detect intent and entities in a user query mention for backend processing." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Mention", + "context": null + } + }, + { + "name": "backend-development.analyzeForecast", + "description": "This tool analyzes business forecast data to identify trends, assess accuracy, and provide insights. It accepts time series forecast objects or arrays of predicted values with optional actual results for comparison. The tool processes data to evaluate forecast performance, detect anomalies, and output summary statistics and actionable recommendations.", + "category": "backend-development", + "parameters": [ + { + "name": "forecastData", + "type": "array", + "description": "An array of forecast points where each point includes a timestamp and a predicted value, optionally with actual observed value for accuracy assessment.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeUnit", + "type": "string", + "description": "The unit of time for the forecast intervals (e.g., 'day', 'week', 'month'). Helps in trend analysis and aggregation.", + "required": false, + "defaultValue": "day" + }, + { + "name": "includeAnomalyDetection", + "type": "boolean", + "description": "Whether to perform anomaly detection on forecast errors to highlight unusual deviations.", + "required": false, + "defaultValue": "true" + }, + { + "name": "historicalData", + "type": "array", + "description": "Optional historical observed data for building baselines or validating forecast trends. Array of objects with timestamp and actual value.", + "required": false, + "defaultValue": "" + }, + { + "name": "confidenceThreshold", + "type": "number", + "description": "The minimum confidence level (0-1) for identifying reliable forecast trends and anomalies.", + "required": false, + "defaultValue": "0.95" + } + ], + "returns": { + "type": "object", + "description": "Returns an analysis report including trend summary, accuracy metrics (like MAPE, RMSE), anomaly flags, and practical recommendations to improve forecasting or detect issues." + }, + "aiAgent": { + "useCase": "Use this tool when you need to evaluate the quality and characteristics of business forecast data to support decision making. It helps identify inaccuracies, detect unusual patterns, and improve confidence in forecasting models.", + "limitations": "The tool assumes time series forecast data with defined time intervals and numeric values; it does not generate forecasts or handle qualitative predictions. Anomaly detection may produce false positives depending on data noise.", + "examples": [ + "Analyze forecast accuracy for monthly sales projections for next quarter.", + "Identify anomalies in daily web traffic forecasts compared to actual counts.", + "Summarize trends and potential issues in a weekly demand forecast with historical sales." + ] + }, + "tags": [ + "analysis", + "forecast", + "business", + "time-series", + "accuracy", + "anomaly-detection" + ], + "examples": [ + { + "inputJson": "{\"forecastData\":[{\"timestamp\":\"2024-01-01\",\"predicted\":150,\"actual\":145},{\"timestamp\":\"2024-01-02\",\"predicted\":160,\"actual\":null},{\"timestamp\":\"2024-01-03\",\"predicted\":155,\"actual\":158}],\"timeUnit\":\"day\",\"includeAnomalyDetection\":true}", + "description": "Analyze daily sales forecast for three days with partial actuals to assess accuracy and detect anomalies." + }, + { + "inputJson": "{\"forecastData\":[{\"timestamp\":\"2024-04\",\"predicted\":1000,\"actual\":980},{\"timestamp\":\"2024-05\",\"predicted\":1100,\"actual\":1150},{\"timestamp\":\"2024-06\",\"predicted\":1050,\"actual\":null}],\"timeUnit\":\"month\",\"includeAnomalyDetection\":false,\"confidenceThreshold\":0.9}", + "description": "Evaluate monthly sales projections with actuals and custom confidence for trend reliability without anomaly detection." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Forecast", + "context": null + } + }, + { + "name": "backend-development.analyzeBudget", + "description": "Analyzes a project or department budget by processing detailed income and expense data to produce a comprehensive financial summary including total allocation, spending distribution, remaining funds, and variance from planned budget. Accepts raw budget data objects or arrays, performs aggregation and classification, and outputs structured analysis results.", + "category": "backend-development", + "parameters": [ + { + "name": "budgetData", + "type": "object", + "description": "Detailed budget data including income, expenses, allocations, and categories for analysis.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeVarianceAnalysis", + "type": "boolean", + "description": "Flag to include variance between planned and actual spending in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "reportFormat", + "type": "string", + "description": "Output format of the report, e.g., 'summary' for brief or 'detailed' for granular analysis.", + "required": false, + "defaultValue": "summary" + }, + { + "name": "currency", + "type": "string", + "description": "Currency code (ISO 4217) used to format financial values in the report.", + "required": false, + "defaultValue": "USD" + } + ], + "returns": { + "type": "object", + "description": "An analysis report object containing total budget, total spent, remaining funds, categorized spend breakdown, and optionally variance details and recommendations." + }, + "aiAgent": { + "useCase": "Use this tool when needing to evaluate financial health of a backend project or department by aggregating complex budget data into actionable insights and summaries. Useful to detect overspending, underutilization, and improve future budget planning.", + "limitations": "Does not predict future budget trends or handle forecasting beyond given data. Assumes accurate and complete input budget data.", + "examples": [ + "Analyze this backend services budget data and output a detailed spending summary.", + "Provide a budget variance report comparing planned vs actual expenses for Q1.", + "Summarize total income and expenses of the finance department budget with a high-level overview." + ] + }, + "tags": [ + "backend", + "budget", + "financial-analysis", + "reporting", + "project-management", + "expenses" + ], + "examples": [ + { + "inputJson": "{\"budgetData\":{\"plannedIncome\":500000,\"plannedExpenses\":{\"salaries\":300000,\"infrastructure\":100000,\"tools\":50000,\"marketing\":20000},\"actualExpenses\":{\"salaries\":320000,\"infrastructure\":90000,\"tools\":45000,\"marketing\":25000}},\"includeVarianceAnalysis\":true,\"reportFormat\":\"detailed\",\"currency\":\"USD\"}", + "description": "Analyze detailed planned and actual expense data including variance for a backend project budget." + }, + { + "inputJson": "{\"budgetData\":{\"income\":120000,\"expenses\":[{\"category\":\"hosting\",\"amount\":30000},{\"category\":\"development\",\"amount\":70000},{\"category\":\"consulting\",\"amount\":15000}]},\"includeVarianceAnalysis\":false,\"reportFormat\":\"summary\",\"currency\":\"EUR\"}", + "description": "Summarize total income and categorized expenses of a department budget without variance analysis." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "analyze", + "object": "Budget", + "context": null + } + }, + { + "name": "backend-development.downloadHTML", + "description": "This tool accepts a URL or raw HTML content as input, optionally allows setting HTTP headers and saves the fetched or provided HTML content to a specified file path on the server. It performs downloading of HTML pages or saving raw HTML strings, enabling backend systems to store webpage snapshots or HTML content for further processing or archiving.", + "category": "backend-development", + "parameters": [ + { + "name": "url", + "type": "string", + "description": "The web URL to download HTML content from. If empty, rawHtml must be provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "rawHtml", + "type": "string", + "description": "Raw HTML content to save directly to a file, used if URL is not provided.", + "required": false, + "defaultValue": "" + }, + { + "name": "filePath", + "type": "string", + "description": "The server file path where the HTML content will be saved.", + "required": true, + "defaultValue": "" + }, + { + "name": "headers", + "type": "object", + "description": "Optional HTTP headers to send when downloading HTML from URL.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "timeout", + "type": "number", + "description": "Timeout in seconds for the HTTP request when downloading from URL.", + "required": false, + "defaultValue": "30" + } + ], + "returns": { + "type": "object", + "description": "Result object containing success status, saved file path, and any error messages." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically download and save HTML pages from the internet or save provided raw HTML content to a file on the backend. This is useful for archiving web content, caching snapshots for offline processing, or storing generated HTML for later retrieval.", + "limitations": "Cannot execute JavaScript on the page; it only fetches raw HTML content. Requires proper server file system permissions for saving files. Does not parse or modify HTML content; only downloads or saves as-is.", + "examples": [ + "Download the HTML of https://example.com with custom headers and save it to /tmp/example.html.", + "Save provided raw HTML string to /var/www/html/snapshot.html.", + "Download HTML from a URL with a 10-second timeout and save to a specific path." + ] + }, + "tags": [ + "backend", + "html", + "download", + "web", + "file-saving", + "http" + ], + "examples": [ + { + "inputJson": "{\"url\":\"https://example.com\",\"filePath\":\"/tmp/example.html\",\"headers\":{\"User-Agent\":\"MyAgent\"},\"timeout\":20}", + "description": "Download HTML content from https://example.com with a custom User-Agent header and save to /tmp/example.html." + }, + { + "inputJson": "{\"rawHtml\":\"<html><body><h1>Hello</h1></body></html>\",\"filePath\":\"/tmp/hello.html\"}", + "description": "Save raw HTML string to /tmp/hello.html on the server." + }, + { + "inputJson": "{\"url\":\"https://jsonplaceholder.typicode.com/posts/1\",\"filePath\":\"/tmp/post1.html\",\"timeout\":10}", + "description": "Download the HTML content of a JSONPlaceholder post URL and save it with a 10-second timeout." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "HTML", + "context": null + } + }, + { + "name": "backend-development.downloadAttachment", + "description": "Downloads an attachment file from a backend server by specifying the resource endpoint and attachment identifier. Accepts parameters such as the API endpoint URL, authentication token, attachment ID, and optional timeout settings. Processes the request by contacting the server API and retrieves the attachment, returning the binary data along with metadata like filename and content type.", + "category": "backend-development", + "parameters": [ + { + "name": "apiEndpoint", + "type": "string", + "description": "The full URL of the backend server API endpoint to download the attachment from (e.g., https://api.example.com/attachments).", + "required": true, + "defaultValue": "" + }, + { + "name": "attachmentId", + "type": "string", + "description": "Unique identifier of the attachment to download.", + "required": true, + "defaultValue": "" + }, + { + "name": "authToken", + "type": "string", + "description": "Bearer token or API key used for authentication with the backend server.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeoutSeconds", + "type": "number", + "description": "Maximum time in seconds to wait for the download request before timing out.", + "required": false, + "defaultValue": "30" + }, + { + "name": "includeMetadata", + "type": "boolean", + "description": "Whether to include metadata such as filename and content-type in the output.", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "An object containing the attachment binary data (as base64 string) and optional metadata (filename, contentType)." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to retrieve and process attachment files stored on a backend server, requiring an authenticated API call to fetch the binary content for further processing or delivery. It is especially useful when attachments are accessible only via authenticated endpoints.", + "limitations": "Cannot handle attachments from unauthenticated or unsupported APIs. Does not perform file type conversion or scanning; only downloads raw data.", + "examples": [ + "Download the PDF attachment with ID 'abc123' from 'https://api.example.com/attachments' using a given auth token.", + "Fetch an image attachment from a secured backend endpoint and include metadata for file handling.", + "Retrieve a document attachment with a custom timeout setting for slow server response." + ] + }, + "tags": [ + "backend", + "attachment", + "download", + "API", + "file", + "binary", + "authentication" + ], + "examples": [ + { + "inputJson": "{\"apiEndpoint\":\"https://api.example.com/attachments\",\"attachmentId\":\"file_789\",\"authToken\":\"Bearer abcdef123456\",\"timeoutSeconds\":20,\"includeMetadata\":true}", + "description": "Download attachment with ID 'file_789' from specified API with auth and a 20-second timeout, including metadata." + }, + { + "inputJson": "{\"apiEndpoint\":\"https://myserver.com/api/v1/files\",\"attachmentId\":\"img_456\",\"authToken\":\"Token xyz987\",\"includeMetadata\":false}", + "description": "Fetch image attachment 'img_456' without metadata from another backend API using Token-based auth." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "download", + "object": "Attachment", + "context": null + } + }, + { + "name": "backend-development.renderVideo", + "description": "Renders a video file by combining input media assets and applying optional effects, resizing, and encoding parameters. Accepts source video or image files, configuration for transitions, overlay texts, and output format to produce a fully processed video file ready for delivery or storage.", + "category": "backend-development", + "parameters": [ + { + "name": "inputMedia", + "type": "array", + "description": "Array of input media objects specifying type (video/image), source URL or base64, and optional start/end times for clipping.", + "required": true, + "defaultValue": "" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output video format (e.g., mp4, webm, avi).", + "required": true, + "defaultValue": "mp4" + }, + { + "name": "resolution", + "type": "object", + "description": "Output resolution object with width and height in pixels.", + "required": false, + "defaultValue": "{\"width\":1920,\"height\":1080}" + }, + { + "name": "frameRate", + "type": "number", + "description": "Target frames per second for the output video.", + "required": false, + "defaultValue": "30" + }, + { + "name": "transitionEffect", + "type": "string", + "description": "Name of transition effect to apply between media assets (e.g., fade, slide).", + "required": false, + "defaultValue": "" + }, + { + "name": "overlayText", + "type": "array", + "description": "Optional array of text overlays, with content, position, start time, and duration.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "bitrate", + "type": "number", + "description": "Target video bitrate in kbps for output file compression.", + "required": false, + "defaultValue": "2500" + } + ], + "returns": { + "type": "object", + "description": "Object containing output video URL, format, resolution, duration, and size in bytes." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically generate or transform videos on the backend by combining multimedia inputs, applying effects or overlays, and exporting a configured video file. Ideal for automated video production pipelines, content personalization, or media workflows.", + "limitations": "This tool does not perform advanced video editing like motion tracking or 3D effects. It does not support live streaming generation or real-time rendering. Input media compatibility depends on underlying codecs.", + "examples": [ + "Create a promotional video by merging intro clip and product images with fade transitions, output as mp4 at 1080p.", + "Render a video slideshow from a list of images with overlay text captions and export at 30fps.", + "Combine multiple video snippets, resize output to 720p, and set bitrate for mobile device optimization." + ] + }, + "tags": [ + "video", + "rendering", + "backend", + "media-processing", + "encoding", + "automation" + ], + "examples": [ + { + "inputJson": "{\"inputMedia\":[{\"type\":\"video\",\"source\":\"https://example.com/intro.mp4\"},{\"type\":\"image\",\"source\":\"https://example.com/product1.jpg\",\"start\":0,\"end\":5}],\"outputFormat\":\"mp4\",\"resolution\":{\"width\":1920,\"height\":1080},\"frameRate\":30,\"transitionEffect\":\"fade\",\"overlayText\":[{\"content\":\"Welcome to Product\",\"position\":{\"x\":100,\"y\":50},\"start\":1,\"duration\":4}],\"bitrate\":3000}", + "description": "Render a mp4 video combining an intro video and a product image with fade transitions and overlay text." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "render", + "object": "Video", + "context": null + } + }, + { + "name": "backend-development.formatSchema", + "description": "Formats given JSON schema definitions into consistently styled, human-readable code strings. Accepts schema objects or strings, applies indentation, property ordering, and optional output format (JSON or YAML). Returns the formatted schema as a string to improve readability and maintainability in backend development.", + "category": "backend-development", + "parameters": [ + { + "name": "schema", + "type": "object", + "description": "JSON schema object defining data structure to format (required).", + "required": true, + "defaultValue": "" + }, + { + "name": "indentation", + "type": "number", + "description": "Number of spaces to use for indentation in formatted output.", + "required": false, + "defaultValue": "2" + }, + { + "name": "propertyOrder", + "type": "string", + "description": "Defines the order of properties: 'alphabetical', 'asIs', or 'custom'.", + "required": false, + "defaultValue": "alphabetical" + }, + { + "name": "customOrder", + "type": "array", + "description": "Array of property names specifying a custom ordering if propertyOrder is 'custom'.", + "required": false, + "defaultValue": "[]" + }, + { + "name": "outputFormat", + "type": "string", + "description": "Desired output format: 'json' or 'yaml'.", + "required": false, + "defaultValue": "json" + }, + { + "name": "includeComments", + "type": "boolean", + "description": "Whether to include schema descriptions as comments in the output if supported (only YAML).", + "required": false, + "defaultValue": "false" + } + ], + "returns": { + "type": "object", + "description": "Returns an object with a single string property 'formattedSchema' containing the schema code string formatted as requested." + }, + "aiAgent": { + "useCase": "This tool is used when an AI agent needs to format or beautify a backend JSON schema definition to standardize style, improve readability, or convert schema formats for configuration or documentation purposes. It helps generate clean schema files in JSON or YAML with consistent indentation and property ordering.", + "limitations": "The tool cannot validate schema correctness, resolve schema references ($ref), or transform schema version dialects. It formats only and assumes input schemas are valid JSON objects.", + "examples": [ + "Format a JSON schema object with 4-space indentation and alphabetical property ordering in JSON output.", + "Generate a YAML formatted schema with property descriptions included as comments.", + "Apply a custom property order in the output for improved readability." + ] + }, + "tags": [ + "backend", + "schema", + "formatting", + "json", + "yaml", + "code-style" + ], + "examples": [ + { + "inputJson": "{\"schema\":{\"type\":\"object\",\"properties\":{\"id\":{\"type\":\"string\"},\"name\":{\"type\":\"string\"},\"age\":{\"type\":\"number\"}},\"required\":[\"id\",\"name\"]},\"indentation\":4,\"propertyOrder\":\"alphabetical\",\"outputFormat\":\"json\",\"includeComments\":false}", + "description": "Format a simple JSON schema with 4 spaces indentation and alphabetical ordering in JSON." + }, + { + "inputJson": "{\"schema\":{\"type\":\"object\",\"properties\":{\"title\":{\"type\":\"string\",\"description\":\"The title of the book\"},\"author\":{\"type\":\"string\"},\"year\":{\"type\":\"integer\",\"description\":\"Year of publication\"}},\"required\":[\"title\",\"author\"]},\"indentation\":2,\"propertyOrder\":\"asIs\",\"outputFormat\":\"yaml\",\"includeComments\":true}", + "description": "Format schema to YAML with comments and as-is property order with 2 spaces indentation." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "format", + "object": "Schema", + "context": null + } + }, + { + "name": "backend-development.generateForecast", + "description": "Generates business forecasts by analyzing historical data and applying statistical or machine learning models. Accepts time-series data, forecasting horizon, and algorithm selection as inputs; produces projected future values with confidence intervals.", + "category": "backend-development", + "parameters": [ + { + "name": "historicalData", + "type": "array", + "description": "An array of historical data points, each with timestamp and value fields, representing past business metrics.", + "required": true, + "defaultValue": "" + }, + { + "name": "forecastHorizon", + "type": "number", + "description": "Number of future time periods to generate forecasts for.", + "required": true, + "defaultValue": "" + }, + { + "name": "timeUnit", + "type": "string", + "description": "Granularity of time intervals in the historical data and forecast (e.g., 'day', 'week', 'month').", + "required": true, + "defaultValue": "day" + }, + { + "name": "algorithm", + "type": "string", + "description": "Forecasting algorithm to use, such as 'ARIMA', 'ExponentialSmoothing', or 'Prophet'.", + "required": false, + "defaultValue": "Prophet" + }, + { + "name": "includeConfidenceInterval", + "type": "boolean", + "description": "Whether to include confidence intervals in the forecast output.", + "required": false, + "defaultValue": "true" + }, + { + "name": "seasonalityFrequency", + "type": "number", + "description": "Seasonality period length, e.g., 7 for weekly seasonality on daily data; 0 means no seasonality.", + "required": false, + "defaultValue": "0" + } + ], + "returns": { + "type": "object", + "description": "An object containing forecasted values for each future time period with timestamps, predicted values, and optionally confidence intervals (lower and upper bounds)." + }, + "aiAgent": { + "useCase": "Use this tool when needing to predict future business metrics (like sales, revenue, or user activity) based on historical trends. It helps in planning, inventory management, budgeting, and strategic decision-making by generating data-driven forecasts.", + "limitations": "This tool requires sufficient quality historical data and may not capture sudden unexpected events or complex external factors affecting the business. It assumes time series continuity and may produce unreliable results with highly sparse or irregular data.", + "examples": [ + "Generate a 30-day sales forecast using historical daily sales data.", + "Forecast revenue for the next 12 months using monthly aggregated data with seasonal patterns.", + "Produce weekly active user projections for the next 8 weeks using ARIMA algorithm." + ] + }, + "tags": [ + "forecasting", + "business-intelligence", + "time-series", + "backend-development", + "machine-learning", + "prediction" + ], + "examples": [ + { + "inputJson": "{\"historicalData\":[{\"timestamp\":\"2023-01-01\",\"value\":100},{\"timestamp\":\"2023-01-02\",\"value\":120},{\"timestamp\":\"2023-01-03\",\"value\":130}],\"forecastHorizon\":7,\"timeUnit\":\"day\",\"algorithm\":\"Prophet\",\"includeConfidenceInterval\":true,\"seasonalityFrequency\":7}", + "description": "Forecast the next 7 days of daily sales using Prophet with weekly seasonality." + }, + { + "inputJson": "{\"historicalData\":[{\"timestamp\":\"2022-01\",\"value\":5000},{\"timestamp\":\"2022-02\",\"value\":5100},{\"timestamp\":\"2022-03\",\"value\":5300}],\"forecastHorizon\":6,\"timeUnit\":\"month\",\"algorithm\":\"ExponentialSmoothing\",\"includeConfidenceInterval\":false,\"seasonalityFrequency\":12}", + "description": "Generate a 6-month revenue forecast from monthly historical data without confidence intervals." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Forecast", + "context": null + } + }, + { + "name": "backend-development.generateChecklist", + "description": "Generates a structured checklist document for backend development tasks based on provided project requirements and checklist categories. Accepts project details, target checklist categories, and optional priorities, then creates an itemized checklist output to guide development and quality assurance.", + "category": "backend-development", + "parameters": [ + { + "name": "projectName", + "type": "string", + "description": "Name of the backend project for which the checklist is generated.", + "required": true, + "defaultValue": "" + }, + { + "name": "categories", + "type": "array", + "description": "Array of checklist category names to include (e.g., ['API Design','Security','Testing']).", + "required": true, + "defaultValue": "" + }, + { + "name": "priorityLevel", + "type": "string", + "description": "Optional priority level for tasks (e.g., 'high', 'medium', 'low'), which influences checklist item emphasis.", + "required": false, + "defaultValue": "" + }, + { + "name": "includeDescriptions", + "type": "boolean", + "description": "Flag indicating whether to include detailed descriptions for each checklist item.", + "required": false, + "defaultValue": "true" + }, + { + "name": "customTasks", + "type": "array", + "description": "Optional array of custom checklist items to add in addition to standard categories.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object containing the checklist with categories as keys and arrays of tasks (with optional descriptions and priorities) as values." + }, + "aiAgent": { + "useCase": "Use this tool when generating comprehensive and organized backend development checklists tailored to specific project needs and focus areas, helping teams track essential tasks for architecture, security, testing, and deployment stages. It supports project scoping and quality assurance planning.", + "limitations": "This tool generates general checklist items based on categories and does not replace expert planning or adapt dynamically to very specific or evolving project requirements.", + "examples": [ + "Generate a checklist for a backend API project focusing on security and testing categories with high priority level.", + "Create a checklist for 'Order Management' backend including API Design, Database, and Deployment categories without descriptions.", + "Add custom tasks to a backend development checklist for a microservices project focused on scalability and monitoring." + ] + }, + "tags": [ + "backend", + "checklist", + "project-management", + "development", + "quality-assurance", + "task-tracking" + ], + "examples": [ + { + "inputJson": "{\"projectName\":\"User Authentication Service\",\"categories\":[\"API Design\",\"Security\",\"Testing\"],\"priorityLevel\":\"high\",\"includeDescriptions\":true}", + "description": "Generate a detailed checklist for a user authentication backend service focusing on API design, security, and testing with high priority tasks." + }, + { + "inputJson": "{\"projectName\":\"Order Processing System\",\"categories\":[\"Database\",\"Deployment\"],\"includeDescriptions\":false}", + "description": "Generate a checklist for order processing backend focusing on database and deployment tasks without detailed descriptions." + }, + { + "inputJson": "{\"projectName\":\"Microservices Platform\",\"categories\":[\"Monitoring\"],\"customTasks\":[{\"task\":\"Implement circuit breaker pattern\",\"description\":\"Add fault tolerance to services\",\"priority\":\"medium\"}],\"includeDescriptions\":true}", + "description": "Generate a checklist for microservices monitoring including a custom task to implement circuit breaker pattern." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "generate", + "object": "Checklist", + "context": null + } + }, + { + "name": "backend-development.createMention", + "description": "Creates a user mention entity within a backend system, accepting information about the mention type, the target user ID, and optional contextual metadata. Processes these inputs to generate a structured mention object that can be stored or sent via APIs for notifications or referencing users in messages.", + "category": "backend-development", + "parameters": [ + { + "name": "mentionType", + "type": "string", + "description": "The type of mention, such as 'user', 'group', or 'role'. Determines how the mention should be processed and formatted.", + "required": true, + "defaultValue": "" + }, + { + "name": "targetId", + "type": "string", + "description": "The unique identifier of the entity (user, group, or role) to mention.", + "required": true, + "defaultValue": "" + }, + { + "name": "context", + "type": "object", + "description": "Optional contextual information related to the mention, such as messageId, channelId, or additional tags.", + "required": false, + "defaultValue": "{}" + }, + { + "name": "includeNotification", + "type": "boolean", + "description": "Whether to trigger a notification to the mentioned entity if supported by the system.", + "required": false, + "defaultValue": "true" + }, + { + "name": "displayName", + "type": "string", + "description": "Optional display name to override the default user or entity name in the mention output.", + "required": false, + "defaultValue": "" + } + ], + "returns": { + "type": "object", + "description": "An object representing the created mention entity, including the mention type, target ID, formatted mention string, and notification flag." + }, + "aiAgent": { + "useCase": "Use this tool when you need to programmatically create mention entities to reference users, groups, or roles within backend communications or notifications, enabling consistent formatting and optional notification triggers within messaging or collaborative applications.", + "limitations": "Does not handle the actual delivery of notifications or validation of target ID existence; those are handled by other system components or services.", + "examples": [ + "Create a mention for a user ID '12345' to include in a message with notification enabled.", + "Create a mention for a group ID 'dev-team' without triggering notifications, including contextual metadata about the related channel.", + "Create a mention with a custom display name overriding the default user name." + ] + }, + "tags": [ + "backend", + "communication", + "mention", + "notification", + "user-reference" + ], + "examples": [ + { + "inputJson": "{\"mentionType\":\"user\",\"targetId\":\"u12345\",\"includeNotification\":true}", + "description": "Create a user mention with notification enabled." + }, + { + "inputJson": "{\"mentionType\":\"group\",\"targetId\":\"g9876\",\"includeNotification\":false,\"context\":{\"channelId\":\"ch456\"}}", + "description": "Create a group mention without notification, including context info." + }, + { + "inputJson": "{\"mentionType\":\"user\",\"targetId\":\"u12345\",\"displayName\":\"Alice\",\"includeNotification\":true}", + "description": "Create a user mention with a custom display name and notification." + } + ], + "qualityScore": 0.88, + "skeleton": { + "verb": "create", + "object": "Mention", + "context": null + } + }, + { + "name": "infrastructure-management.analyzeWord", + "description": "This tool accepts a single word related to infrastructure management, analyzes its relevance and context within infrastructure domains, and provides insights such as common usage, related technical terms, and potential implications for system design or operation. Input is a string word, output includes analysis report with semantic context and usage examples.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "word", + "type": "string", + "description": "The infrastructure-related word to analyze for context and relevance.", + "required": true, + "defaultValue": "" + }, + { + "name": "includeRelatedTerms", + "type": "boolean", + "description": "Whether to include related technical terms and synonyms in the analysis report.", + "required": false, + "defaultValue": "true" + }, + { + "name": "maxExamples", + "type": "number", + "description": "Maximum number of usage examples to include in analysis output.", + "required": false, + "defaultValue": "3" + } + ], + "returns": { + "type": "object", + "description": "An object containing the analyzed word, its domain relevance score, related terms list, usage examples array, and a brief semantic analysis summary." + }, + "aiAgent": { + "useCase": "Use this tool when you need to understand how a specific word relates to infrastructure management contexts, such as when interpreting documentation, clarifying terminology, or exploring potential impacts of technical concepts represented by that word. It helps in knowledge extraction and domain-specific linguistic analysis.", + "limitations": "Does not provide real-time monitoring data or configurations. It only analyzes the semantic and contextual aspects of a single word and does not handle phrases or sentences.", + "examples": [ + "Analyze the word 'scalability' in an infrastructure context.", + "Find related terms and usage examples for 'load balancer'.", + "Provide semantic insights for the term 'containerization' with up to 5 usage examples." + ] + }, + "tags": [ + "analysis", + "infrastructure", + "terminology", + "semantic", + "word", + "context" + ], + "examples": [ + { + "inputJson": "{\"word\":\"scalability\",\"includeRelatedTerms\":true,\"maxExamples\":3}", + "description": "Analyze the word 'scalability' with related terms and 3 usage examples." + }, + { + "inputJson": "{\"word\":\"load balancer\",\"includeRelatedTerms\":false,\"maxExamples\":2}", + "description": "Analyze 'load balancer' without related terms and limit to 2 usage examples." + } + ], + "qualityScore": 0.85, + "skeleton": { + "verb": "analyze", + "object": "Word", + "context": null + } + }, + { + "name": "infrastructure-management.createWord", + "description": "Generates a domain-specific technical term or word relevant to infrastructure management based on context keywords provided. Accepts input keywords describing infrastructure components or concepts, then uses a predefined lexicon and linguistic rules to create a plausible new word. Outputs the generated word as a string to assist with naming or documentation tasks.", + "category": "infrastructure-management", + "parameters": [ + { + "name": "contextKeywords", + "type": "array", + "description": "List of keywords describing infrastructure components, systems, or concepts to guide word creation.", + "required": true, + "defaultValue": "" + }, + { + "name": "wordType", + "type": "string", + "description": "Type of word to generate, such as 'noun', 'verb', or 'adjective'.", + "required": false, + "defaultValue": "noun" + }, + { + "name": "maxLength", + "type": "number", + "description": "Maximum allowed length of the generated word.", + "required": false, + "defaultValue": "15" + }, + { + "name": "includeSuffix", + "type": "boolean", + "description": "Whether to append common technical suffixes to the generated word (e.g., '-node', '-net').", + "required": false, + "defaultValue": "true" + } + ], + "returns": { + "type": "object", + "description": "Object containing the generated word string and metadata about its origin and type. Includes 'word' (string) and 'wordType' (string) fields." + }, + "aiAgent": { + "useCase": "Use this tool when an AI agent needs to create a novel, context-appropriate technical term related to infrastructure management, such as for naming new components, concepts, or features in documentation or product design.", + "limitations": "Cannot guarantee that the generated word is officially recognized or free from existing trademarks. Not suitable for generating general dictionary words unrelated to infrastructure contexts.", + "examples": [ + "Generate a new noun word related to cloud computing nodes.", + "Create a technical adjective describing network security features.", + "Suggest a verb word for automated infrastructure orchestration." + ] + }, + "tags": [ + "word-generation", + "infrastructure", + "naming", + "technical-terms", + "content-creation" + ], + "examples": [ + { + "inputJson": "{\"contextKeywords\":[\"cloud\",\"storage\",\"virtual\"],\"wordType\":\"noun\",\"maxLength\":12,\"includeSuffix\":true}", + "description": "Generate a noun word related to cloud storage virtualization with suffixes." + }, + { + "inputJson": "{\"contextKeywords\":[\"deploy\",\"automation\"],\"wordType\":\"verb\",\"maxLength\":10,\"includeSuffix\":false}", + "description": "Generate a verb word related to deployment automation without suffixes." + } + ], + "qualityScore": 0.85, + "skeleton": { + "verb": "create", + "object": "Word", + "context": null + } + } + ] +} \ No newline at end of file diff --git a/apps/web/next.config.ts b/apps/web/next.config.ts index 7fab650..9a21942 100644 --- a/apps/web/next.config.ts +++ b/apps/web/next.config.ts @@ -4,6 +4,15 @@ const nextConfig: NextConfig = { transpilePackages: ['@tpmjs/ui', '@tpmjs/utils', '@tpmjs/db', '@tpmjs/types', '@tpmjs/env'], reactStrictMode: true, serverExternalPackages: ['@tpmjs/package-executor'], + async redirects() { + return [ + { + source: '/tools-ideas', + destination: '/tool-ideas', + permanent: true, + }, + ]; + }, }; export default nextConfig; diff --git a/apps/web/package.json b/apps/web/package.json index 001685d..c5fa8be 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -37,6 +37,7 @@ "react-dom": "^19.0.0", "react-markdown": "^10.1.0", "react-syntax-highlighter": "^16.1.0", + "react-virtuoso": "^4.18.1", "rehype-raw": "^7.0.0", "rehype-sanitize": "^6.0.0", "remark-gfm": "^4.0.1", diff --git a/apps/web/src/app/api/tool-ideas/route.ts b/apps/web/src/app/api/tool-ideas/route.ts new file mode 100644 index 0000000..e9afcd1 --- /dev/null +++ b/apps/web/src/app/api/tool-ideas/route.ts @@ -0,0 +1,128 @@ +import { readFileSync } from 'node:fs'; +import { join } from 'node:path'; +import { type NextRequest, NextResponse } from 'next/server'; + +export const dynamic = 'force-dynamic'; +export const maxDuration = 60; + +interface ToolIdea { + name: string; + description: string; + category: string; + parameters: Array<{ + name: string; + type: string; + description: string; + required: boolean; + defaultValue: string; + }>; + returns: { + type: string; + description: string; + }; + aiAgent: { + useCase: string; + limitations: string; + examples: string[]; + }; + tags: string[]; + examples: Array<{ + inputJson: string; + description: string; + }>; + qualityScore: number; + skeleton: { + verb: string; + object: string; + context: string | null; + }; +} + +interface ToolIdeasData { + metadata: { + exportedAt: string; + count: number; + minQuality: number; + excludeNonsensical: boolean; + }; + tools: ToolIdea[]; +} + +// Cache the data in memory +let cachedData: ToolIdeasData | null = null; + +function loadToolIdeas(): ToolIdeasData { + if (cachedData) { + return cachedData; + } + + try { + const filePath = join(process.cwd(), 'data', 'tools-export.json'); + const fileContent = readFileSync(filePath, 'utf-8'); + cachedData = JSON.parse(fileContent) as ToolIdeasData; + return cachedData; + } catch (error) { + console.error('Failed to load tool ideas:', error); + return { + metadata: { exportedAt: '', count: 0, minQuality: 0, excludeNonsensical: false }, + tools: [], + }; + } +} + +export async function GET(request: NextRequest) { + const searchParams = request.nextUrl.searchParams; + const search = searchParams.get('search')?.toLowerCase() || ''; + const category = searchParams.get('category') || ''; + const minQuality = Number.parseFloat(searchParams.get('minQuality') || '0'); + const verb = searchParams.get('verb') || ''; + const limit = Math.min(Number.parseInt(searchParams.get('limit') || '100'), 1000); + const offset = Number.parseInt(searchParams.get('offset') || '0'); + + const data = loadToolIdeas(); + let tools = data.tools; + + // Apply filters + if (search) { + tools = tools.filter( + (t) => + t.name.toLowerCase().includes(search) || + t.description.toLowerCase().includes(search) || + t.tags.some((tag) => tag.toLowerCase().includes(search)) + ); + } + + if (category) { + tools = tools.filter((t) => t.category === category); + } + + if (minQuality > 0) { + tools = tools.filter((t) => t.qualityScore >= minQuality); + } + + if (verb) { + tools = tools.filter((t) => t.skeleton.verb === verb); + } + + const totalCount = tools.length; + + // Apply pagination + const paginatedTools = tools.slice(offset, offset + limit); + + // Get unique categories and verbs for filters + const categories = [...new Set(data.tools.map((t) => t.category))].sort(); + const verbs = [...new Set(data.tools.map((t) => t.skeleton.verb))].sort(); + + return NextResponse.json({ + success: true, + data: paginatedTools, + meta: { + total: totalCount, + limit, + offset, + hasMore: offset + limit < totalCount, + categories, + verbs, + }, + }); +} diff --git a/apps/web/src/app/tool-ideas/ToolIdeasClient.tsx b/apps/web/src/app/tool-ideas/ToolIdeasClient.tsx new file mode 100644 index 0000000..559e002 --- /dev/null +++ b/apps/web/src/app/tool-ideas/ToolIdeasClient.tsx @@ -0,0 +1,322 @@ +'use client'; + +import { Badge } from '@tpmjs/ui/Badge/Badge'; +import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@tpmjs/ui/Card/Card'; +import { Input } from '@tpmjs/ui/Input/Input'; +import { ProgressBar } from '@tpmjs/ui/ProgressBar/ProgressBar'; +import { Select } from '@tpmjs/ui/Select/Select'; +import { Spinner } from '@tpmjs/ui/Spinner/Spinner'; +import { useCallback, useEffect, useState } from 'react'; +import { Virtuoso } from 'react-virtuoso'; + +interface ToolIdea { + name: string; + description: string; + category: string; + parameters: Array<{ + name: string; + type: string; + description: string; + required: boolean; + defaultValue: string; + }>; + returns: { + type: string; + description: string; + }; + aiAgent: { + useCase: string; + limitations: string; + examples: string[]; + }; + tags: string[]; + qualityScore: number; + skeleton: { + verb: string; + object: string; + context: string | null; + }; +} + +interface ApiResponse { + success: boolean; + data: ToolIdea[]; + meta: { + total: number; + limit: number; + offset: number; + hasMore: boolean; + categories: string[]; + verbs: string[]; + }; +} + +export function ToolIdeasClient() { + const [tools, setTools] = useState<ToolIdea[]>([]); + const [loading, setLoading] = useState(true); + const [search, setSearch] = useState(''); + const [category, setCategory] = useState(''); + const [verb, setVerb] = useState(''); + const [minQuality, setMinQuality] = useState('0'); + const [categories, setCategories] = useState<string[]>([]); + const [verbs, setVerbs] = useState<string[]>([]); + const [total, setTotal] = useState(0); + const [expandedId, setExpandedId] = useState<string | null>(null); + + const fetchTools = useCallback(async () => { + setLoading(true); + try { + const params = new URLSearchParams(); + if (search) params.set('search', search); + if (category) params.set('category', category); + if (verb) params.set('verb', verb); + if (minQuality !== '0') params.set('minQuality', minQuality); + params.set('limit', '10000'); // Load all for client-side virtualization + + const response = await fetch(`/api/tool-ideas?${params}`); + const data: ApiResponse = await response.json(); + + if (data.success) { + setTools(data.data); + setTotal(data.meta.total); + if (categories.length === 0) { + setCategories(data.meta.categories); + } + if (verbs.length === 0) { + setVerbs(data.meta.verbs); + } + } + } catch (error) { + console.error('Failed to fetch tools:', error); + } finally { + setLoading(false); + } + }, [search, category, verb, minQuality, categories.length, verbs.length]); + + useEffect(() => { + const debounce = setTimeout(fetchTools, 300); + return () => clearTimeout(debounce); + }, [fetchTools]); + + const qualityColor = (score: number) => { + if (score >= 0.9) return 'text-green-600'; + if (score >= 0.7) return 'text-yellow-600'; + return 'text-red-600'; + }; + + const ToolCard = ({ tool }: { tool: ToolIdea }) => { + const isExpanded = expandedId === tool.name; + + return ( + <Card + className="mb-3 cursor-pointer hover:border-primary/50 transition-colors" + onClick={() => setExpandedId(isExpanded ? null : tool.name)} + > + <CardHeader className="pb-2"> + <div className="flex items-start justify-between gap-2"> + <div className="flex-1 min-w-0"> + <CardTitle className="text-base font-mono truncate">{tool.name}</CardTitle> + <div className="flex flex-wrap gap-1.5 mt-1.5"> + <Badge variant="secondary" size="sm"> + {tool.category} + </Badge> + <Badge variant="outline" size="sm"> + {tool.skeleton.verb} + </Badge> + <Badge variant="outline" size="sm"> + {tool.skeleton.object} + </Badge> + </div> + </div> + <div className="flex flex-col items-end gap-1"> + <span className={`text-sm font-semibold ${qualityColor(tool.qualityScore)}`}> + {(tool.qualityScore * 100).toFixed(0)}% + </span> + <ProgressBar value={tool.qualityScore * 100} size="sm" className="w-16" /> + </div> + </div> + </CardHeader> + <CardContent className="pt-0"> + <CardDescription className={isExpanded ? '' : 'line-clamp-2'}> + {tool.description} + </CardDescription> + + {isExpanded && ( + <div className="mt-4 space-y-4"> + {/* Parameters */} + <div> + <h4 className="text-sm font-semibold text-foreground mb-2"> + Parameters ({tool.parameters.length}) + </h4> + <div className="space-y-1.5"> + {tool.parameters.map((param) => ( + <div + key={param.name} + className="text-xs bg-surface rounded px-2 py-1.5 flex items-start gap-2" + > + <code className="font-mono text-primary">{param.name}</code> + <Badge variant="outline" size="sm"> + {param.type} + </Badge> + {param.required && ( + <Badge variant="error" size="sm"> + required + </Badge> + )} + <span className="text-foreground-tertiary flex-1">{param.description}</span> + </div> + ))} + </div> + </div> + + {/* Returns */} + <div> + <h4 className="text-sm font-semibold text-foreground mb-2">Returns</h4> + <div className="text-xs bg-surface rounded px-2 py-1.5"> + <code className="font-mono text-primary">{tool.returns.type}</code> + <span className="text-foreground-tertiary ml-2">{tool.returns.description}</span> + </div> + </div> + + {/* AI Agent Guidance */} + <div> + <h4 className="text-sm font-semibold text-foreground mb-2">AI Agent Guidance</h4> + <p className="text-xs text-foreground-secondary">{tool.aiAgent.useCase}</p> + {tool.aiAgent.limitations && ( + <p className="text-xs text-foreground-tertiary mt-1"> + <span className="font-medium">Limitations:</span> {tool.aiAgent.limitations} + </p> + )} + </div> + + {/* Tags */} + <div className="flex flex-wrap gap-1"> + {tool.tags.map((tag) => ( + <Badge key={tag} variant="secondary" size="sm"> + {tag} + </Badge> + ))} + </div> + </div> + )} + </CardContent> + </Card> + ); + }; + + // Build options for Select components + const categoryOptions = [ + { value: '', label: 'All categories' }, + ...categories.map((cat) => ({ value: cat, label: cat })), + ]; + + const verbOptions = [ + { value: '', label: 'All verbs' }, + ...verbs.map((v) => ({ value: v, label: v })), + ]; + + const qualityOptions = [ + { value: '0', label: 'Any quality' }, + { value: '0.9', label: '90%+ (Excellent)' }, + { value: '0.8', label: '80%+ (Great)' }, + { value: '0.7', label: '70%+ (Good)' }, + ]; + + return ( + <div className="space-y-4"> + {/* Filters */} + <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-3 bg-surface p-4 rounded-lg border border-border"> + <div> + <label + htmlFor="tool-search" + className="text-xs font-medium text-foreground-secondary mb-1.5 block" + > + Search + </label> + <Input + id="tool-search" + type="text" + placeholder="Search tools..." + value={search} + onChange={(e) => setSearch(e.target.value)} + size="sm" + /> + </div> + + <div> + <label + htmlFor="tool-category" + className="text-xs font-medium text-foreground-secondary mb-1.5 block" + > + Category + </label> + <Select + id="tool-category" + value={category} + onChange={(e) => setCategory(e.target.value)} + options={categoryOptions} + size="sm" + /> + </div> + + <div> + <label + htmlFor="tool-verb" + className="text-xs font-medium text-foreground-secondary mb-1.5 block" + > + Verb + </label> + <Select + id="tool-verb" + value={verb} + onChange={(e) => setVerb(e.target.value)} + options={verbOptions} + size="sm" + /> + </div> + + <div> + <label + htmlFor="tool-quality" + className="text-xs font-medium text-foreground-secondary mb-1.5 block" + > + Min Quality + </label> + <Select + id="tool-quality" + value={minQuality} + onChange={(e) => setMinQuality(e.target.value)} + options={qualityOptions} + size="sm" + /> + </div> + </div> + + {/* Results count */} + <div className="flex items-center justify-between text-sm text-foreground-secondary"> + <span>{loading ? 'Loading...' : `${total.toLocaleString()} tools`}</span> + {!loading && total > 0 && <span className="text-xs">Click a tool to expand details</span>} + </div> + + {/* Virtualized list */} + {loading ? ( + <div className="flex items-center justify-center py-20"> + <Spinner size="lg" /> + </div> + ) : tools.length === 0 ? ( + <div className="text-center py-20 text-foreground-secondary"> + No tools found matching your filters. + </div> + ) : ( + <div className="h-[calc(100vh-320px)] min-h-[400px]"> + <Virtuoso + data={tools} + itemContent={(_, tool) => <ToolCard tool={tool} />} + overscan={200} + style={{ height: '100%' }} + /> + </div> + )} + </div> + ); +} diff --git a/apps/web/src/app/tool-ideas/page.tsx b/apps/web/src/app/tool-ideas/page.tsx new file mode 100644 index 0000000..76a7dd7 --- /dev/null +++ b/apps/web/src/app/tool-ideas/page.tsx @@ -0,0 +1,27 @@ +import { Container } from '@tpmjs/ui/Container/Container'; +import type { Metadata } from 'next'; +import { ToolIdeasClient } from './ToolIdeasClient'; + +export const metadata: Metadata = { + title: 'Tool Ideas | TPMJS', + description: 'Browse 10,000 AI-generated tool ideas for agents', +}; + +export const dynamic = 'force-dynamic'; + +export default function ToolIdeasPage() { + return ( + <main className="min-h-screen bg-background py-8"> + <Container size="xl"> + <div className="mb-8"> + <h1 className="text-3xl font-bold text-foreground mb-2">Tool Ideas</h1> + <p className="text-foreground-secondary"> + Browse 10,000 AI-generated tool ideas for agents. Filter by category, quality score, or + search. + </p> + </div> + <ToolIdeasClient /> + </Container> + </main> + ); +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index efcee80..f230a17 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -140,10 +140,10 @@ importers: version: 10.4.22(postcss@8.5.6) eslint: specifier: ^9.39.1 - version: 9.39.1(jiti@1.21.7) + version: 9.39.1(jiti@2.6.1) eslint-config-next: specifier: ^16.0.4 - version: 16.0.4(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) + version: 16.0.4(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) postcss: specifier: ^8.5.1 version: 8.5.6 @@ -292,6 +292,9 @@ importers: react-syntax-highlighter: specifier: ^16.1.0 version: 16.1.0(react@19.2.0) + react-virtuoso: + specifier: ^4.18.1 + version: 4.18.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0) rehype-raw: specifier: ^7.0.0 version: 7.0.0 @@ -577,6 +580,58 @@ importers: specifier: ^4.1.13 version: 4.1.13 + packages/tool-ideas: + dependencies: + '@ai-sdk/openai': + specifier: ^3.0.1 + version: 3.0.1(zod@3.25.76) + ai: + specifier: ^6.0.3 + version: 6.0.3(zod@3.25.76) + better-sqlite3: + specifier: ^11.8.1 + version: 11.10.0 + chalk: + specifier: ^5.4.1 + version: 5.6.2 + commander: + specifier: ^13.0.0 + version: 13.1.0 + drizzle-orm: + specifier: ^0.38.3 + version: 0.38.4(@opentelemetry/api@1.9.0)(@prisma/client@6.19.0(prisma@6.19.0(typescript@5.9.3))(typescript@5.9.3))(@types/better-sqlite3@7.6.13)(@types/react@19.2.7)(better-sqlite3@11.10.0)(pg@8.16.3)(prisma@6.19.0(typescript@5.9.3))(react@19.2.0) + ora: + specifier: ^8.1.1 + version: 8.2.0 + p-limit: + specifier: ^6.2.0 + version: 6.2.0 + zod: + specifier: ^3.24.1 + version: 3.25.76 + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../config/tsconfig + '@types/better-sqlite3': + specifier: ^7.6.12 + version: 7.6.13 + '@types/node': + specifier: ^22.10.5 + version: 22.19.1 + drizzle-kit: + specifier: ^0.30.1 + version: 0.30.6 + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + tsx: + specifier: ^4.19.2 + version: 4.21.0 + typescript: + specifier: ^5.7.2 + version: 5.9.3 + packages/tools: dependencies: ai: @@ -723,6 +778,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/audience-persona: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/base64-decode: dependencies: ai: @@ -787,6 +858,54 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/budget-variance: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/campaign-brief: + dependencies: + ai: + specifier: ^4.0.0 + version: 4.3.19(react@19.2.0)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/cash-flow-project: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/changelog-entry: dependencies: ai: @@ -803,6 +922,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/churn-risk-score: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/claim-checklist: dependencies: ai: @@ -844,6 +979,38 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/compensation-band: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/competitor-brief: + dependencies: + ai: + specifier: ^4.0.0 + version: 4.3.19(react@19.2.0)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/config-normalize: dependencies: ai: @@ -860,6 +1027,38 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/content-calendar-plan: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/contract-clause-scan: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/conventional-commit-suggest: dependencies: ai: @@ -876,6 +1075,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/copyright-notice: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/coverage-tracker: dependencies: ai: @@ -968,6 +1183,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/curriculum-map: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/data-classification-heuristic: dependencies: ai: @@ -1121,6 +1352,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/email-subject-score: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/env-var-docs-generate: dependencies: ai: @@ -1185,6 +1432,38 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/exit-interview-summarize: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/expense-categorize: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/extract-json-ld: dependencies: ai: @@ -1248,6 +1527,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/feedback-themes: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/fetch-text: dependencies: ai: @@ -1264,6 +1559,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/gdpr-data-map: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/glossary-build: dependencies: ai: @@ -1328,6 +1639,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/health-score-calculate: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/html-sanitize: dependencies: ai: @@ -1369,6 +1696,70 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/interview-questions: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/invoice-data-extract: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/invoice-terms-extract: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/job-description-draft: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/json-path-query: dependencies: ai: @@ -1429,6 +1820,54 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/lead-score: + dependencies: + ai: + specifier: ^4.0.0 + version: 4.3.19(react@19.2.0)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/learning-objective-write: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/lesson-plan-outline: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/linear-regression-ols: dependencies: ai: @@ -1569,6 +2008,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/nda-template-draft: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/normalize-whitespace: dependencies: ai: @@ -1601,6 +2056,70 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/nps-analysis: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/objection-response: + dependencies: + ai: + specifier: ^4.0.0 + version: 4.3.19(react@19.2.0)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/offer-letter-draft: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/onboarding-checklist: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/openapi-snippet-build: dependencies: ai: @@ -1617,6 +2136,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/org-chart-format: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/page-brief: dependencies: '@mozilla/readability': @@ -1648,6 +2183,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/performance-review-draft: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/permutation-test: dependencies: ai: @@ -1680,6 +2231,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/policy-doc-format: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/postmortem-action-extractor: dependencies: ai: @@ -1728,6 +2295,38 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/pricing-page-copy: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/progress-report-draft: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/prompt-to-workflow-skeleton: dependencies: ai: @@ -1744,6 +2343,54 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/proposal-outline: + dependencies: + ai: + specifier: ^4.0.0 + version: 4.3.19(react@19.2.0)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/quiz-generate: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/ratio-analysis: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/recipe-curate-rank: dependencies: ai: @@ -1793,6 +2440,28 @@ importers: version: 5.9.3 packages/tools/official/recipe-hash: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + json-stable-stringify: + specifier: ^1.3.0 + version: 1.3.0 + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + '@types/json-stable-stringify': + specifier: ^1.2.0 + version: 1.2.0 + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/recipe-publish-manifest: dependencies: ai: specifier: 6.0.0-beta.124 @@ -1808,7 +2477,7 @@ importers: specifier: ^5.9.3 version: 5.9.3 - packages/tools/official/recipe-publish-manifest: + packages/tools/official/reconciliation-match: dependencies: ai: specifier: 6.0.0-beta.124 @@ -1904,6 +2573,38 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/renewal-forecast: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/response-template-suggest: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/retention-policy-draft: dependencies: ai: @@ -1920,6 +2621,38 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/revenue-breakdown: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/risk-clause-highlight: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/robots-policy: dependencies: ai: @@ -2025,6 +2758,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/rubric-create: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/runbook-draft: dependencies: ai: @@ -2114,6 +2863,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/social-post-draft: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/source-credibility: dependencies: ai: @@ -2171,6 +2936,38 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/survey-analyze: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/syllabus-format: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/table-extract: dependencies: ai: @@ -2193,6 +2990,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/tax-deduction-scan: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/template-render: dependencies: ai: @@ -2269,6 +3082,22 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/ticket-categorize: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/time-series-decompose-lite: dependencies: ai: @@ -2358,6 +3187,38 @@ importers: specifier: ^5.9.3 version: 5.9.3 + packages/tools/official/tos-readability: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + + packages/tools/official/trademark-check: + dependencies: + ai: + specifier: 6.0.0-beta.124 + version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13) + devDependencies: + '@tpmjs/tsconfig': + specifier: workspace:* + version: link:../../../config/tsconfig + tsup: + specifier: ^8.3.5 + version: 8.5.1(jiti@2.6.1)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2) + typescript: + specifier: ^5.9.3 + version: 5.9.3 + packages/tools/official/url-normalize: dependencies: ai: @@ -2743,6 +3604,12 @@ packages: peerDependencies: zod: ^3.25.76 || ^4.1.8 + '@ai-sdk/provider-utils@2.2.8': + resolution: {integrity: sha512-fqhG+4sCVv8x7nFzYnFo19ryhAa3w096Kmc3hWxMQfW/TubPOmt3A6tYZhl4mUfQWWQMsuSkLrtjlWuXBVSGQA==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.23.8 + '@ai-sdk/provider-utils@3.0.18': resolution: {integrity: sha512-ypv1xXMsgGcNKUP+hglKqtdDuMg68nWHucPPAhIENrbFAI+xCHiqPVN8Zllxyv1TNZwGWUghPxJXU+Mqps0YRQ==} engines: {node: '>=18'} @@ -2793,6 +3660,10 @@ packages: peerDependencies: zod: ^3.25.76 || ^4.1.8 + '@ai-sdk/provider@1.1.3': + resolution: {integrity: sha512-qZMxYJ0qqX/RfnuIaab+zp8UAeJn/ygXXAffR5I4N0n1IrvA6qBsjc8hXLmBiMV2zoXlifkacF7sEFnYnjBcqg==} + engines: {node: '>=18'} + '@ai-sdk/provider@2.0.0': resolution: {integrity: sha512-6o7Y2SeO9vFKB8lArHXehNuusnpddKPk7xqL7T2/b+OvXMRIXUO1rR4wcv1hAFUAT9avGZshty3Wlua/XA7TvA==} engines: {node: '>=18'} @@ -2813,12 +3684,28 @@ packages: resolution: {integrity: sha512-2lR4w7mr9XrydzxBSjir4N6YMGdXD+Np1Sh0RXABh7tWdNFFwIeRI1Q+SaYZMbfL8Pg8RRLcrxQm51yxTLhokg==} engines: {node: '>=18'} + '@ai-sdk/react@1.2.12': + resolution: {integrity: sha512-jK1IZZ22evPZoQW3vlkZ7wvjYGYF+tRBKXtrcolduIkQ/m/sOAVcVeVDUDvh1T91xCnWCdUGCPZg2avZ90mv3g==} + engines: {node: '>=18'} + peerDependencies: + react: ^18 || ^19 || ^19.0.0-rc + zod: ^3.23.8 + peerDependenciesMeta: + zod: + optional: true + '@ai-sdk/react@3.0.3': resolution: {integrity: sha512-mLIgQuBdIX9gxCYQN3Pv/J8ARoFreIKYr/TVQtI+FwEzejuGFimTyhDln7UIBfrnm3Mpn1xENIWZfDfCRF7wkw==} engines: {node: '>=18'} peerDependencies: react: ^18 || ~19.0.1 || ~19.1.2 || ^19.2.1 + '@ai-sdk/ui-utils@1.2.11': + resolution: {integrity: sha512-3zcwCc8ezzFlwp3ZD15wAPjf2Au4s3vAbKsXQVyhxODHcmu0iyPO2Eua6D/vicq/AUm/BAo60r97O6HU+EI0+w==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.23.8 + '@alloc/quick-lru@5.2.0': resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} engines: {node: '>=10'} @@ -3091,6 +3978,9 @@ packages: resolution: {integrity: sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==} engines: {node: '>=18'} + '@drizzle-team/brocli@0.10.2': + resolution: {integrity: sha512-z33Il7l5dKjUgGULTqBsQBQwckHh5AbIuxhdsIxDDiZAzBOrZO6q9ogcWC65kU382AfynTfgNumVcNIjuIua6w==} + '@emnapi/core@1.7.1': resolution: {integrity: sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==} @@ -3100,6 +3990,20 @@ packages: '@emnapi/wasi-threads@1.1.0': resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + '@esbuild-kit/core-utils@3.3.2': + resolution: {integrity: sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==} + deprecated: 'Merged into tsx: https://tsx.is' + + '@esbuild-kit/esm-loader@2.6.5': + resolution: {integrity: sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==} + deprecated: 'Merged into tsx: https://tsx.is' + + '@esbuild/aix-ppc64@0.19.12': + resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + '@esbuild/aix-ppc64@0.21.5': resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} engines: {node: '>=12'} @@ -3118,6 +4022,18 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/android-arm64@0.18.20': + resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm64@0.19.12': + resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm64@0.21.5': resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} @@ -3136,6 +4052,18 @@ packages: cpu: [arm64] os: [android] + '@esbuild/android-arm@0.18.20': + resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + + '@esbuild/android-arm@0.19.12': + resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + '@esbuild/android-arm@0.21.5': resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} @@ -3154,6 +4082,18 @@ packages: cpu: [arm] os: [android] + '@esbuild/android-x64@0.18.20': + resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + '@esbuild/android-x64@0.19.12': + resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + '@esbuild/android-x64@0.21.5': resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} @@ -3172,6 +4112,18 @@ packages: cpu: [x64] os: [android] + '@esbuild/darwin-arm64@0.18.20': + resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-arm64@0.19.12': + resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-arm64@0.21.5': resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} @@ -3190,6 +4142,18 @@ packages: cpu: [arm64] os: [darwin] + '@esbuild/darwin-x64@0.18.20': + resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + '@esbuild/darwin-x64@0.19.12': + resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + '@esbuild/darwin-x64@0.21.5': resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} @@ -3208,6 +4172,18 @@ packages: cpu: [x64] os: [darwin] + '@esbuild/freebsd-arm64@0.18.20': + resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-arm64@0.19.12': + resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-arm64@0.21.5': resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} @@ -3226,6 +4202,18 @@ packages: cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-x64@0.18.20': + resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.19.12': + resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} @@ -3244,6 +4232,18 @@ packages: cpu: [x64] os: [freebsd] + '@esbuild/linux-arm64@0.18.20': + resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm64@0.19.12': + resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm64@0.21.5': resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} @@ -3262,6 +4262,18 @@ packages: cpu: [arm64] os: [linux] + '@esbuild/linux-arm@0.18.20': + resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-arm@0.19.12': + resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + '@esbuild/linux-arm@0.21.5': resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} @@ -3280,6 +4292,18 @@ packages: cpu: [arm] os: [linux] + '@esbuild/linux-ia32@0.18.20': + resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-ia32@0.19.12': + resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-ia32@0.21.5': resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} @@ -3298,6 +4322,18 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-loong64@0.18.20': + resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-loong64@0.19.12': + resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} @@ -3316,6 +4352,18 @@ packages: cpu: [loong64] os: [linux] + '@esbuild/linux-mips64el@0.18.20': + resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-mips64el@0.19.12': + resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-mips64el@0.21.5': resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} @@ -3334,6 +4382,18 @@ packages: cpu: [mips64el] os: [linux] + '@esbuild/linux-ppc64@0.18.20': + resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-ppc64@0.19.12': + resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-ppc64@0.21.5': resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} @@ -3352,6 +4412,18 @@ packages: cpu: [ppc64] os: [linux] + '@esbuild/linux-riscv64@0.18.20': + resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-riscv64@0.19.12': + resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-riscv64@0.21.5': resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} @@ -3370,6 +4442,18 @@ packages: cpu: [riscv64] os: [linux] + '@esbuild/linux-s390x@0.18.20': + resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-s390x@0.19.12': + resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-s390x@0.21.5': resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} @@ -3388,6 +4472,18 @@ packages: cpu: [s390x] os: [linux] + '@esbuild/linux-x64@0.18.20': + resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/linux-x64@0.19.12': + resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + '@esbuild/linux-x64@0.21.5': resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} @@ -3418,6 +4514,18 @@ packages: cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-x64@0.18.20': + resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.19.12': + resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + '@esbuild/netbsd-x64@0.21.5': resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} @@ -3448,6 +4556,18 @@ packages: cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-x64@0.18.20': + resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.19.12': + resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} @@ -3478,6 +4598,18 @@ packages: cpu: [arm64] os: [openharmony] + '@esbuild/sunos-x64@0.18.20': + resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + '@esbuild/sunos-x64@0.19.12': + resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + '@esbuild/sunos-x64@0.21.5': resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} @@ -3496,6 +4628,18 @@ packages: cpu: [x64] os: [sunos] + '@esbuild/win32-arm64@0.18.20': + resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-arm64@0.19.12': + resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-arm64@0.21.5': resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} @@ -3514,6 +4658,18 @@ packages: cpu: [arm64] os: [win32] + '@esbuild/win32-ia32@0.18.20': + resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-ia32@0.19.12': + resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-ia32@0.21.5': resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} @@ -3532,6 +4688,18 @@ packages: cpu: [ia32] os: [win32] + '@esbuild/win32-x64@0.18.20': + resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + '@esbuild/win32-x64@0.19.12': + resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + '@esbuild/win32-x64@0.21.5': resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} @@ -4070,6 +5238,9 @@ packages: cpu: [x64] os: [win32] + '@petamoriken/float16@3.9.3': + resolution: {integrity: sha512-8awtpHXCx/bNpFt4mt2xdkgtgVvKqty8VbjHI/WWWQuEw+KLzFot3f4+LkQY9YmOtq7A5GdOnqoIC8Pdygjk2g==} + '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -4276,9 +5447,6 @@ packages: '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} - '@standard-schema/spec@1.0.0': - resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} - '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} @@ -4523,6 +5691,9 @@ packages: '@types/babel__traverse@7.28.0': resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==} + '@types/better-sqlite3@7.6.13': + resolution: {integrity: sha512-NMv9ASNARoKksWtsq/SHakpYAYnhBrQgGD8zkLYk/jaK8jUGn08CfEdTRgYhMypUQAfzSP8W6gNLe0q19/t4VA==} + '@types/cheerio@0.22.35': resolution: {integrity: sha512-yD57BchKRvTV+JD53UZ6PD8KWY5g5rvvMLRnZR3EQBCZXiDT/HR+pKpMzFGlWNhFrXlo7VPZXtKvIEwZkAWOIA==} @@ -4622,6 +5793,9 @@ packages: '@types/debug@4.1.12': resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + '@types/diff-match-patch@1.0.36': + resolution: {integrity: sha512-xFdR6tkm0MWvBfO8xXCSsinYxHcqkQUlcHeSpMC2ukzOb6lwQAfDmW+Qt0AvlGd8HpsS28qKsB+oPeJn9I39jg==} + '@types/diff@6.0.0': resolution: {integrity: sha512-dhVCYGv3ZSbzmQaBSagrv1WJ6rXCdkyTcDyoNu1MD8JohI7pR7k8wdZEm+mvdxRKXyHVwckFzWU1vJc+Z29MlA==} @@ -4649,6 +5823,10 @@ packages: '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + '@types/json-stable-stringify@1.2.0': + resolution: {integrity: sha512-PEHY3ohqolHqAzDyB1+31tFaAMnoLN7x/JgdcGmNZ2uvtEJ6rlFCUYNQc0Xe754xxCYLNGZbLUGydSE6tS4S9A==} + deprecated: This is a stub types definition. json-stable-stringify provides its own type definitions, so you do not need this installed. + '@types/json5@0.0.29': resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} @@ -5007,6 +6185,16 @@ packages: resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} engines: {node: '>= 14'} + ai@4.3.19: + resolution: {integrity: sha512-dIE2bfNpqHN3r6IINp9znguYdhIOheKW2LDigAMrgt/upT3B8eBGPSCblENvaZGoq+hxaN9fSMzjWpbqloP+7Q==} + engines: {node: '>=18'} + peerDependencies: + react: ^18 || ^19 || ^19.0.0-rc + zod: ^3.23.8 + peerDependenciesMeta: + react: + optional: true + ai@5.0.106: resolution: {integrity: sha512-M5obwavxSJJ3tGlAFqI6eltYNJB0D20X6gIBCFx/KVorb/X1fxVVfiZZpZb+Gslu4340droSOjT0aKQFCarNVg==} engines: {node: '>=18'} @@ -5200,6 +6388,9 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + baseline-browser-mapping@2.8.31: resolution: {integrity: sha512-a28v2eWrrRWPpJSzxc+mKwm0ZtVx/G8SepdQZDArnXYU/XS+IF6mp8aB/4E+hH1tyGCoDo3KlUCdlSxGDsRkAw==} hasBin: true @@ -5219,6 +6410,9 @@ packages: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} + better-sqlite3@11.10.0: + resolution: {integrity: sha512-EwhOpyXiOEL/lKzHz9AW1msWFNzGc/z+LzeB3/jnFJpxu+th2yqvzsSWas1v9jgs9+xiXJcD5A8CJxAG2TaghQ==} + bidi-js@1.0.3: resolution: {integrity: sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==} @@ -5226,6 +6420,12 @@ packages: resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} + bindings@1.5.0: + resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} + + bl@4.1.0: + resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + bluebird@3.7.2: resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} @@ -5261,6 +6461,12 @@ packages: resolution: {integrity: sha512-WIsKqkSC0ABoBJuT1LEX+2HEvNmNKKgnTAyd0fL8qzK4SH2i9NXg+t08YtdZp/V9IZ33cxe3iV4yM0qg8lMQng==} engines: {node: '>=16.20.1'} + buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + + buffer@5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + bundle-require@5.1.0: resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -5370,6 +6576,9 @@ packages: resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} engines: {node: '>= 14.16.0'} + chownr@1.1.4: + resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} + chrono-node@2.9.0: resolution: {integrity: sha512-glI4YY2Jy6JII5l3d5FN6rcrIbKSQqKPhWsIRYPK2IK8Mm4Q1ZZFdYIaDqglUNf7gNwG+kWIzTn0omzzE0VkvQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -5426,6 +6635,10 @@ packages: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} + commander@13.1.0: + resolution: {integrity: sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==} + engines: {node: '>=18'} + commander@14.0.2: resolution: {integrity: sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==} engines: {node: '>=20'} @@ -5745,10 +6958,18 @@ packages: decode-named-character-reference@1.2.0: resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==} + decompress-response@6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} + deep-eql@5.0.2: resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} engines: {node: '>=6'} + deep-extend@0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} + deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} @@ -5816,6 +7037,9 @@ packages: didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + diff-match-patch@1.0.5: + resolution: {integrity: sha512-IayShXAgj/QMXgB0IWmKx+rOPuGMhqm5w6jvFxmVenXKIzRqTAAsbBPT3kWQeGANj3jGgvcvv4yK6SxqYmikgw==} + diff@7.0.0: resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==} engines: {node: '>=0.3.1'} @@ -5868,6 +7092,102 @@ packages: resolution: {integrity: sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w==} engines: {node: '>=12'} + drizzle-kit@0.30.6: + resolution: {integrity: sha512-U4wWit0fyZuGuP7iNmRleQyK2V8wCuv57vf5l3MnG4z4fzNTjY/U13M8owyQ5RavqvqxBifWORaR3wIUzlN64g==} + hasBin: true + + drizzle-orm@0.38.4: + resolution: {integrity: sha512-s7/5BpLKO+WJRHspvpqTydxFob8i1vo2rEx4pY6TGY7QSMuUfWUuzaY0DIpXCkgHOo37BaFC+SJQb99dDUXT3Q==} + peerDependencies: + '@aws-sdk/client-rds-data': '>=3' + '@cloudflare/workers-types': '>=4' + '@electric-sql/pglite': '>=0.2.0' + '@libsql/client': '>=0.10.0' + '@libsql/client-wasm': '>=0.10.0' + '@neondatabase/serverless': '>=0.10.0' + '@op-engineering/op-sqlite': '>=2' + '@opentelemetry/api': ^1.4.1 + '@planetscale/database': '>=1' + '@prisma/client': '*' + '@tidbcloud/serverless': '*' + '@types/better-sqlite3': '*' + '@types/pg': '*' + '@types/react': '>=18' + '@types/sql.js': '*' + '@vercel/postgres': '>=0.8.0' + '@xata.io/client': '*' + better-sqlite3: '>=7' + bun-types: '*' + expo-sqlite: '>=14.0.0' + knex: '*' + kysely: '*' + mysql2: '>=2' + pg: '>=8' + postgres: '>=3' + prisma: '*' + react: '>=18' + sql.js: '>=1' + sqlite3: '>=5' + peerDependenciesMeta: + '@aws-sdk/client-rds-data': + optional: true + '@cloudflare/workers-types': + optional: true + '@electric-sql/pglite': + optional: true + '@libsql/client': + optional: true + '@libsql/client-wasm': + optional: true + '@neondatabase/serverless': + optional: true + '@op-engineering/op-sqlite': + optional: true + '@opentelemetry/api': + optional: true + '@planetscale/database': + optional: true + '@prisma/client': + optional: true + '@tidbcloud/serverless': + optional: true + '@types/better-sqlite3': + optional: true + '@types/pg': + optional: true + '@types/react': + optional: true + '@types/sql.js': + optional: true + '@vercel/postgres': + optional: true + '@xata.io/client': + optional: true + better-sqlite3: + optional: true + bun-types: + optional: true + expo-sqlite: + optional: true + knex: + optional: true + kysely: + optional: true + mysql2: + optional: true + pg: + optional: true + postgres: + optional: true + prisma: + optional: true + react: + optional: true + sql.js: + optional: true + sqlite3: + optional: true + dunder-proto@1.0.1: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} @@ -5911,6 +7231,9 @@ packages: encoding-sniffer@0.2.1: resolution: {integrity: sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==} + end-of-stream@1.4.5: + resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==} + enhanced-resolve@5.18.3: resolution: {integrity: sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==} engines: {node: '>=10.13.0'} @@ -5930,6 +7253,10 @@ packages: resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==} engines: {node: '>=0.12'} + env-paths@3.0.0: + resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + es-abstract@1.24.0: resolution: {integrity: sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==} engines: {node: '>= 0.4'} @@ -5970,6 +7297,16 @@ packages: peerDependencies: esbuild: '>=0.12 <1' + esbuild@0.18.20: + resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} + engines: {node: '>=12'} + hasBin: true + + esbuild@0.19.12: + resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} + engines: {node: '>=12'} + hasBin: true + esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} @@ -6147,6 +7484,10 @@ packages: resolution: {integrity: sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg==} engines: {node: '>=18.0.0'} + expand-template@2.0.3: + resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} + engines: {node: '>=6'} + expect-type@1.2.2: resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} engines: {node: '>=12.0.0'} @@ -6218,6 +7559,9 @@ packages: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} + file-uri-to-path@1.0.0: + resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} + fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} @@ -6310,6 +7654,9 @@ packages: resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} engines: {node: '>= 0.6'} + fs-constants@1.0.0: + resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} @@ -6333,6 +7680,11 @@ packages: functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + gel@2.2.0: + resolution: {integrity: sha512-q0ma7z2swmoamHQusey8ayo8+ilVdzDt4WTxSPzq/yRqvucWRfymRVMvNgmSC0XK7eNjjEZEcplxpgaNojKdmQ==} + engines: {node: '>= 18.0.0'} + hasBin: true + generator-function@2.0.1: resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} engines: {node: '>= 0.4'} @@ -6375,6 +7727,9 @@ packages: resolution: {integrity: sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==} hasBin: true + github-from-package@0.0.0: + resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} + glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -6602,6 +7957,9 @@ packages: resolution: {integrity: sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ==} engines: {node: '>=0.10.0'} + ieee754@1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + ignore@5.3.2: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} @@ -6625,6 +7983,9 @@ packages: inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + ini@4.1.1: resolution: {integrity: sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -6842,6 +8203,10 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + isexe@3.1.1: + resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==} + engines: {node: '>=16'} + isomorphic-dompurify@2.35.0: resolution: {integrity: sha512-a9+LQqylQCU8f1zmsYmg2tfrbdY2YS/Hc+xntcq/mDI2MY3Q108nq8K23BWDIg6YGC5JsUMC15fj2ZMqCzt/+A==} engines: {node: '>=20.19.5'} @@ -6935,6 +8300,10 @@ packages: json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + json-stable-stringify@1.3.0: + resolution: {integrity: sha512-qtYiSSFlwot9XHtF9bD9c7rwKjr+RecWT//ZnPvSmEjpV5mmPOCN4j8UjY5hbjNkOwZ/jQv3J6R1/pL7RwgMsg==} + engines: {node: '>= 0.4'} + json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} @@ -6947,9 +8316,17 @@ packages: engines: {node: '>=6'} hasBin: true + jsondiffpatch@0.6.0: + resolution: {integrity: sha512-3QItJOXp2AP1uv7waBkao5nCvhEv+QmJAd38Ybq7wNI74Q+BBmnLn4EDKz6yI9xGAIQoUF87qHt+kc1IVxB4zQ==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + jsonify@0.0.1: + resolution: {integrity: sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==} + jsonpath-plus@10.3.0: resolution: {integrity: sha512-8TNmfeTCk2Le33A3vRRwtuworG/L5RrgMvdjhKZxvyShO+mBu2fP50OWUjRLNtvw344DdDarFh9buFAZs5ujeA==} engines: {node: '>=18.0.0'} @@ -7386,6 +8763,10 @@ packages: resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} engines: {node: '>=18'} + mimic-response@3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} + min-indent@1.0.1: resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} engines: {node: '>=4'} @@ -7411,6 +8792,9 @@ packages: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} + mkdirp-classic@0.5.3: + resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} + mkdirp@0.5.6: resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} hasBin: true @@ -7507,6 +8891,9 @@ packages: engines: {node: ^18 || >=20} hasBin: true + napi-build-utils@2.0.0: + resolution: {integrity: sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==} + napi-postinstall@0.3.4: resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} @@ -7551,6 +8938,10 @@ packages: sass: optional: true + node-abi@3.85.0: + resolution: {integrity: sha512-zsFhmbkAzwhTft6nd3VxcG0cvJsT70rL+BIGHWVq5fi6MwGrHwzqKaxXE+Hl2GmnGItnDKPPkO5/LQqjVkIdFg==} + engines: {node: '>=10'} + node-fetch-native@1.6.7: resolution: {integrity: sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==} @@ -7622,6 +9013,9 @@ packages: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} engines: {node: '>= 0.8'} + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + onetime@7.0.0: resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} engines: {node: '>=18'} @@ -7688,6 +9082,10 @@ packages: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} + p-limit@6.2.0: + resolution: {integrity: sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA==} + engines: {node: '>=18'} + p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -7942,6 +9340,11 @@ packages: resolution: {integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==} engines: {node: '>=0.10.0'} + prebuild-install@7.1.3: + resolution: {integrity: sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==} + engines: {node: '>=10'} + hasBin: true + prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -7999,6 +9402,9 @@ packages: psl@1.15.0: resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==} + pump@3.0.3: + resolution: {integrity: sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==} + punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -8031,6 +9437,10 @@ packages: rc9@2.1.2: resolution: {integrity: sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==} + rc@1.2.8: + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + hasBin: true + react-docgen-typescript@2.4.0: resolution: {integrity: sha512-ZtAp5XTO5HRzQctjPU0ybY0RRCQO19X/8fxn3w7y2VVTUbGHDKULPTL4ky3vB05euSgG5NpALhEhDPvQ56wvXg==} peerDependencies: @@ -8063,6 +9473,12 @@ packages: peerDependencies: react: '>= 0.14.0' + react-virtuoso@4.18.1: + resolution: {integrity: sha512-KF474cDwaSb9+SJ380xruBB4P+yGWcVkcu26HtMqYNMTYlYbrNy8vqMkE+GpAApPPufJqgOLMoWMFG/3pJMXUA==} + peerDependencies: + react: '>=16 || >=17 || >= 18 || >= 19' + react-dom: '>=16 || >=17 || >= 18 || >=19' + react@19.2.0: resolution: {integrity: sha512-tmbWg6W31tQLeB5cdIBOicJDJRR2KzXsV7uSK9iNfLWQ5bIZfxuPEHp7M8wiHyHnn0DD1i7w3Zmin0FtkrwoCQ==} engines: {node: '>=0.10.0'} @@ -8074,6 +9490,10 @@ packages: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} @@ -8289,6 +9709,9 @@ packages: secure-compare@3.0.1: resolution: {integrity: sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw==} + secure-json-parse@2.7.0: + resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==} + semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -8337,6 +9760,10 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} + shell-quote@1.8.3: + resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==} + engines: {node: '>= 0.4'} + shiki@3.19.0: resolution: {integrity: sha512-77VJr3OR/VUZzPiStyRhADmO2jApMM0V2b1qf0RpfWya8Zr1PeZev5AEpPGAAKWdiYUtcZGBE4F5QvJml1PvWA==} @@ -8366,6 +9793,12 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} + simple-concat@1.0.1: + resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} + + simple-get@4.0.1: + resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} + sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -8381,6 +9814,9 @@ packages: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} + source-map-support@0.5.21: + resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} @@ -8495,6 +9931,9 @@ packages: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} engines: {node: '>= 0.4'} + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + stringify-entities@4.0.4: resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} @@ -8518,6 +9957,10 @@ packages: resolution: {integrity: sha512-SlyRoSkdh1dYP0PzclLE7r0M9sgbFKKMFXpFRUMNuKhQSbC6VQIGzq3E0qsfvGJaUFJPGv6Ws1NZ/haTAjfbMA==} engines: {node: '>=12'} + strip-json-comments@2.0.1: + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} + engines: {node: '>=0.10.0'} + strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} @@ -8595,6 +10038,13 @@ packages: resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} engines: {node: '>=6'} + tar-fs@2.1.4: + resolution: {integrity: sha512-mDAjwmZdh7LTT6pNleZ05Yt65HC3E+NiQzl672vQG38jIrehtJk/J3mNwIg+vShQPcLF/LV7CMnDW6vjj6sfYQ==} + + tar-stream@2.2.0: + resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} + engines: {node: '>=6'} + term-size@2.2.1: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} engines: {node: '>=8'} @@ -9181,6 +10631,11 @@ packages: engines: {node: '>= 8'} hasBin: true + which@4.0.0: + resolution: {integrity: sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==} + engines: {node: ^16.13.0 || >=18.0.0} + hasBin: true + why-is-node-running@2.3.0: resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} engines: {node: '>=8'} @@ -9210,6 +10665,9 @@ packages: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + ws@8.18.3: resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} engines: {node: '>=10.0.0'} @@ -9268,6 +10726,10 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} + yocto-queue@1.2.2: + resolution: {integrity: sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==} + engines: {node: '>=12.20'} + yoctocolors-cjs@2.1.3: resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} engines: {node: '>=18'} @@ -9376,6 +10838,13 @@ snapshots: '@ai-sdk/provider-utils': 4.0.1(zod@4.1.13) zod: 4.1.13 + '@ai-sdk/provider-utils@2.2.8(zod@4.1.13)': + dependencies: + '@ai-sdk/provider': 1.1.3 + nanoid: 3.3.11 + secure-json-parse: 2.7.0 + zod: 4.1.13 + '@ai-sdk/provider-utils@3.0.18(zod@3.25.76)': dependencies: '@ai-sdk/provider': 2.0.0 @@ -9404,7 +10873,7 @@ snapshots: '@ai-sdk/provider-utils@4.0.0-beta.42(effect@3.18.4)(zod@4.1.13)': dependencies: '@ai-sdk/provider': 3.0.0-beta.23 - '@standard-schema/spec': 1.0.0 + '@standard-schema/spec': 1.1.0 eventsource-parser: 3.0.6 zod: 4.1.13 optionalDependencies: @@ -9431,6 +10900,10 @@ snapshots: eventsource-parser: 3.0.6 zod: 3.25.76 + '@ai-sdk/provider@1.1.3': + dependencies: + json-schema: 0.4.0 + '@ai-sdk/provider@2.0.0': dependencies: json-schema: 0.4.0 @@ -9451,6 +10924,16 @@ snapshots: dependencies: json-schema: 0.4.0 + '@ai-sdk/react@1.2.12(react@19.2.0)(zod@4.1.13)': + dependencies: + '@ai-sdk/provider-utils': 2.2.8(zod@4.1.13) + '@ai-sdk/ui-utils': 1.2.11(zod@4.1.13) + react: 19.2.0 + swr: 2.3.7(react@19.2.0) + throttleit: 2.1.0 + optionalDependencies: + zod: 4.1.13 + '@ai-sdk/react@3.0.3(react@19.2.0)(zod@4.1.13)': dependencies: '@ai-sdk/provider-utils': 4.0.1(zod@4.1.13) @@ -9461,6 +10944,13 @@ snapshots: transitivePeerDependencies: - zod + '@ai-sdk/ui-utils@1.2.11(zod@4.1.13)': + dependencies: + '@ai-sdk/provider': 1.1.3 + '@ai-sdk/provider-utils': 2.2.8(zod@4.1.13) + zod: 4.1.13 + zod-to-json-schema: 3.25.0(zod@4.1.13) + '@alloc/quick-lru@5.2.0': {} '@antfu/install-pkg@1.1.0': @@ -9863,6 +11353,8 @@ snapshots: '@csstools/css-tokenizer@3.0.4': {} + '@drizzle-team/brocli@0.10.2': {} + '@emnapi/core@1.7.1': dependencies: '@emnapi/wasi-threads': 1.1.0 @@ -9879,6 +11371,19 @@ snapshots: tslib: 2.8.1 optional: true + '@esbuild-kit/core-utils@3.3.2': + dependencies: + esbuild: 0.18.20 + source-map-support: 0.5.21 + + '@esbuild-kit/esm-loader@2.6.5': + dependencies: + '@esbuild-kit/core-utils': 3.3.2 + get-tsconfig: 4.13.0 + + '@esbuild/aix-ppc64@0.19.12': + optional: true + '@esbuild/aix-ppc64@0.21.5': optional: true @@ -9888,6 +11393,12 @@ snapshots: '@esbuild/aix-ppc64@0.27.0': optional: true + '@esbuild/android-arm64@0.18.20': + optional: true + + '@esbuild/android-arm64@0.19.12': + optional: true + '@esbuild/android-arm64@0.21.5': optional: true @@ -9897,6 +11408,12 @@ snapshots: '@esbuild/android-arm64@0.27.0': optional: true + '@esbuild/android-arm@0.18.20': + optional: true + + '@esbuild/android-arm@0.19.12': + optional: true + '@esbuild/android-arm@0.21.5': optional: true @@ -9906,6 +11423,12 @@ snapshots: '@esbuild/android-arm@0.27.0': optional: true + '@esbuild/android-x64@0.18.20': + optional: true + + '@esbuild/android-x64@0.19.12': + optional: true + '@esbuild/android-x64@0.21.5': optional: true @@ -9915,6 +11438,12 @@ snapshots: '@esbuild/android-x64@0.27.0': optional: true + '@esbuild/darwin-arm64@0.18.20': + optional: true + + '@esbuild/darwin-arm64@0.19.12': + optional: true + '@esbuild/darwin-arm64@0.21.5': optional: true @@ -9924,6 +11453,12 @@ snapshots: '@esbuild/darwin-arm64@0.27.0': optional: true + '@esbuild/darwin-x64@0.18.20': + optional: true + + '@esbuild/darwin-x64@0.19.12': + optional: true + '@esbuild/darwin-x64@0.21.5': optional: true @@ -9933,6 +11468,12 @@ snapshots: '@esbuild/darwin-x64@0.27.0': optional: true + '@esbuild/freebsd-arm64@0.18.20': + optional: true + + '@esbuild/freebsd-arm64@0.19.12': + optional: true + '@esbuild/freebsd-arm64@0.21.5': optional: true @@ -9942,6 +11483,12 @@ snapshots: '@esbuild/freebsd-arm64@0.27.0': optional: true + '@esbuild/freebsd-x64@0.18.20': + optional: true + + '@esbuild/freebsd-x64@0.19.12': + optional: true + '@esbuild/freebsd-x64@0.21.5': optional: true @@ -9951,6 +11498,12 @@ snapshots: '@esbuild/freebsd-x64@0.27.0': optional: true + '@esbuild/linux-arm64@0.18.20': + optional: true + + '@esbuild/linux-arm64@0.19.12': + optional: true + '@esbuild/linux-arm64@0.21.5': optional: true @@ -9960,6 +11513,12 @@ snapshots: '@esbuild/linux-arm64@0.27.0': optional: true + '@esbuild/linux-arm@0.18.20': + optional: true + + '@esbuild/linux-arm@0.19.12': + optional: true + '@esbuild/linux-arm@0.21.5': optional: true @@ -9969,6 +11528,12 @@ snapshots: '@esbuild/linux-arm@0.27.0': optional: true + '@esbuild/linux-ia32@0.18.20': + optional: true + + '@esbuild/linux-ia32@0.19.12': + optional: true + '@esbuild/linux-ia32@0.21.5': optional: true @@ -9978,6 +11543,12 @@ snapshots: '@esbuild/linux-ia32@0.27.0': optional: true + '@esbuild/linux-loong64@0.18.20': + optional: true + + '@esbuild/linux-loong64@0.19.12': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true @@ -9987,6 +11558,12 @@ snapshots: '@esbuild/linux-loong64@0.27.0': optional: true + '@esbuild/linux-mips64el@0.18.20': + optional: true + + '@esbuild/linux-mips64el@0.19.12': + optional: true + '@esbuild/linux-mips64el@0.21.5': optional: true @@ -9996,6 +11573,12 @@ snapshots: '@esbuild/linux-mips64el@0.27.0': optional: true + '@esbuild/linux-ppc64@0.18.20': + optional: true + + '@esbuild/linux-ppc64@0.19.12': + optional: true + '@esbuild/linux-ppc64@0.21.5': optional: true @@ -10005,6 +11588,12 @@ snapshots: '@esbuild/linux-ppc64@0.27.0': optional: true + '@esbuild/linux-riscv64@0.18.20': + optional: true + + '@esbuild/linux-riscv64@0.19.12': + optional: true + '@esbuild/linux-riscv64@0.21.5': optional: true @@ -10014,6 +11603,12 @@ snapshots: '@esbuild/linux-riscv64@0.27.0': optional: true + '@esbuild/linux-s390x@0.18.20': + optional: true + + '@esbuild/linux-s390x@0.19.12': + optional: true + '@esbuild/linux-s390x@0.21.5': optional: true @@ -10023,6 +11618,12 @@ snapshots: '@esbuild/linux-s390x@0.27.0': optional: true + '@esbuild/linux-x64@0.18.20': + optional: true + + '@esbuild/linux-x64@0.19.12': + optional: true + '@esbuild/linux-x64@0.21.5': optional: true @@ -10038,6 +11639,12 @@ snapshots: '@esbuild/netbsd-arm64@0.27.0': optional: true + '@esbuild/netbsd-x64@0.18.20': + optional: true + + '@esbuild/netbsd-x64@0.19.12': + optional: true + '@esbuild/netbsd-x64@0.21.5': optional: true @@ -10053,6 +11660,12 @@ snapshots: '@esbuild/openbsd-arm64@0.27.0': optional: true + '@esbuild/openbsd-x64@0.18.20': + optional: true + + '@esbuild/openbsd-x64@0.19.12': + optional: true + '@esbuild/openbsd-x64@0.21.5': optional: true @@ -10068,6 +11681,12 @@ snapshots: '@esbuild/openharmony-arm64@0.27.0': optional: true + '@esbuild/sunos-x64@0.18.20': + optional: true + + '@esbuild/sunos-x64@0.19.12': + optional: true + '@esbuild/sunos-x64@0.21.5': optional: true @@ -10077,6 +11696,12 @@ snapshots: '@esbuild/sunos-x64@0.27.0': optional: true + '@esbuild/win32-arm64@0.18.20': + optional: true + + '@esbuild/win32-arm64@0.19.12': + optional: true + '@esbuild/win32-arm64@0.21.5': optional: true @@ -10086,6 +11711,12 @@ snapshots: '@esbuild/win32-arm64@0.27.0': optional: true + '@esbuild/win32-ia32@0.18.20': + optional: true + + '@esbuild/win32-ia32@0.19.12': + optional: true + '@esbuild/win32-ia32@0.21.5': optional: true @@ -10095,6 +11726,12 @@ snapshots: '@esbuild/win32-ia32@0.27.0': optional: true + '@esbuild/win32-x64@0.18.20': + optional: true + + '@esbuild/win32-x64@0.19.12': + optional: true + '@esbuild/win32-x64@0.21.5': optional: true @@ -10104,11 +11741,6 @@ snapshots: '@esbuild/win32-x64@0.27.0': optional: true - '@eslint-community/eslint-utils@4.9.0(eslint@9.39.1(jiti@1.21.7))': - dependencies: - eslint: 9.39.1(jiti@1.21.7) - eslint-visitor-keys: 3.4.3 - '@eslint-community/eslint-utils@4.9.0(eslint@9.39.1(jiti@2.6.1))': dependencies: eslint: 9.39.1(jiti@2.6.1) @@ -10541,6 +12173,8 @@ snapshots: '@oxc-resolver/binding-win32-x64-msvc@11.14.0': optional: true + '@petamoriken/float16@3.9.3': {} + '@pkgjs/parseargs@0.11.0': optional: true @@ -10714,8 +12348,6 @@ snapshots: '@shikijs/vscode-textmate@10.0.2': {} - '@standard-schema/spec@1.0.0': {} - '@standard-schema/spec@1.1.0': {} '@storybook/addon-actions@8.6.14(storybook@8.6.14(prettier@2.8.8))': @@ -11035,6 +12667,10 @@ snapshots: dependencies: '@babel/types': 7.28.5 + '@types/better-sqlite3@7.6.13': + dependencies: + '@types/node': 22.19.1 + '@types/cheerio@0.22.35': dependencies: '@types/node': 22.19.1 @@ -11160,6 +12796,8 @@ snapshots: dependencies: '@types/ms': 2.1.0 + '@types/diff-match-patch@1.0.36': {} + '@types/diff@6.0.0': {} '@types/doctrine@0.0.9': {} @@ -11186,6 +12824,10 @@ snapshots: '@types/json-schema@7.0.15': {} + '@types/json-stable-stringify@1.2.0': + dependencies: + json-stable-stringify: 1.3.0 + '@types/json5@0.0.29': {} '@types/katex@0.16.7': {} @@ -11257,23 +12899,6 @@ snapshots: dependencies: '@types/webidl-conversions': 7.0.3 - '@typescript-eslint/eslint-plugin@8.48.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)': - dependencies: - '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.48.0 - '@typescript-eslint/type-utils': 8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/utils': 8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.48.0 - eslint: 9.39.1(jiti@1.21.7) - graphemer: 1.4.0 - ignore: 7.0.5 - natural-compare: 1.4.0 - ts-api-utils: 2.1.0(typescript@5.9.3) - typescript: 5.9.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/eslint-plugin@8.48.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 @@ -11291,18 +12916,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)': - dependencies: - '@typescript-eslint/scope-manager': 8.48.0 - '@typescript-eslint/types': 8.48.0 - '@typescript-eslint/typescript-estree': 8.48.0(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.48.0 - debug: 4.4.3 - eslint: 9.39.1(jiti@1.21.7) - typescript: 5.9.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 8.48.0 @@ -11333,18 +12946,6 @@ snapshots: dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)': - dependencies: - '@typescript-eslint/types': 8.48.0 - '@typescript-eslint/typescript-estree': 8.48.0(typescript@5.9.3) - '@typescript-eslint/utils': 8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) - debug: 4.4.3 - eslint: 9.39.1(jiti@1.21.7) - ts-api-utils: 2.1.0(typescript@5.9.3) - typescript: 5.9.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/type-utils@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 8.48.0 @@ -11374,17 +12975,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)': - dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@1.21.7)) - '@typescript-eslint/scope-manager': 8.48.0 - '@typescript-eslint/types': 8.48.0 - '@typescript-eslint/typescript-estree': 8.48.0(typescript@5.9.3) - eslint: 9.39.1(jiti@1.21.7) - typescript: 5.9.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/utils@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) @@ -11575,6 +13165,18 @@ snapshots: agent-base@7.1.4: {} + ai@4.3.19(react@19.2.0)(zod@4.1.13): + dependencies: + '@ai-sdk/provider': 1.1.3 + '@ai-sdk/provider-utils': 2.2.8(zod@4.1.13) + '@ai-sdk/react': 1.2.12(react@19.2.0)(zod@4.1.13) + '@ai-sdk/ui-utils': 1.2.11(zod@4.1.13) + '@opentelemetry/api': 1.9.0 + jsondiffpatch: 0.6.0 + zod: 4.1.13 + optionalDependencies: + react: 19.2.0 + ai@5.0.106(zod@3.25.76): dependencies: '@ai-sdk/gateway': 2.0.18(zod@3.25.76) @@ -11821,6 +13423,8 @@ snapshots: balanced-match@1.0.2: {} + base64-js@1.5.1: {} + baseline-browser-mapping@2.8.31: {} basic-auth@2.0.1: @@ -11839,12 +13443,27 @@ snapshots: dependencies: is-windows: 1.0.2 + better-sqlite3@11.10.0: + dependencies: + bindings: 1.5.0 + prebuild-install: 7.1.3 + bidi-js@1.0.3: dependencies: require-from-string: 2.0.2 binary-extensions@2.3.0: {} + bindings@1.5.0: + dependencies: + file-uri-to-path: 1.0.0 + + bl@4.1.0: + dependencies: + buffer: 5.7.1 + inherits: 2.0.4 + readable-stream: 3.6.2 + bluebird@3.7.2: {} bm25@0.1.1: @@ -11895,6 +13514,13 @@ snapshots: bson@6.10.4: {} + buffer-from@1.1.2: {} + + buffer@5.7.1: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + bundle-require@5.1.0(esbuild@0.27.0): dependencies: esbuild: 0.27.0 @@ -12031,6 +13657,8 @@ snapshots: dependencies: readdirp: 4.1.2 + chownr@1.1.4: {} + chrono-node@2.9.0: {} ci-info@3.9.0: {} @@ -12073,6 +13701,8 @@ snapshots: commander@12.1.0: {} + commander@13.1.0: {} + commander@14.0.2: {} commander@4.1.1: {} @@ -12397,8 +14027,14 @@ snapshots: dependencies: character-entities: 2.0.2 + decompress-response@6.0.0: + dependencies: + mimic-response: 3.1.0 + deep-eql@5.0.2: {} + deep-extend@0.6.0: {} + deep-is@0.1.4: {} deepmerge-ts@7.1.5: {} @@ -12460,8 +14096,7 @@ snapshots: detect-indent@6.1.0: {} - detect-libc@2.1.2: - optional: true + detect-libc@2.1.2: {} devlop@1.1.0: dependencies: @@ -12469,6 +14104,8 @@ snapshots: didyoumean@1.2.2: {} + diff-match-patch@1.0.5: {} + diff@7.0.0: {} dir-glob@3.0.1: @@ -12519,6 +14156,27 @@ snapshots: dotenv@17.2.3: {} + drizzle-kit@0.30.6: + dependencies: + '@drizzle-team/brocli': 0.10.2 + '@esbuild-kit/esm-loader': 2.6.5 + esbuild: 0.19.12 + esbuild-register: 3.6.0(esbuild@0.19.12) + gel: 2.2.0 + transitivePeerDependencies: + - supports-color + + drizzle-orm@0.38.4(@opentelemetry/api@1.9.0)(@prisma/client@6.19.0(prisma@6.19.0(typescript@5.9.3))(typescript@5.9.3))(@types/better-sqlite3@7.6.13)(@types/react@19.2.7)(better-sqlite3@11.10.0)(pg@8.16.3)(prisma@6.19.0(typescript@5.9.3))(react@19.2.0): + optionalDependencies: + '@opentelemetry/api': 1.9.0 + '@prisma/client': 6.19.0(prisma@6.19.0(typescript@5.9.3))(typescript@5.9.3) + '@types/better-sqlite3': 7.6.13 + '@types/react': 19.2.7 + better-sqlite3: 11.10.0 + pg: 8.16.3 + prisma: 6.19.0(typescript@5.9.3) + react: 19.2.0 + dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.2 @@ -12558,6 +14216,10 @@ snapshots: iconv-lite: 0.6.3 whatwg-encoding: 3.1.1 + end-of-stream@1.4.5: + dependencies: + once: 1.4.0 + enhanced-resolve@5.18.3: dependencies: graceful-fs: 4.2.11 @@ -12574,6 +14236,8 @@ snapshots: entities@6.0.1: {} + env-paths@3.0.0: {} + es-abstract@1.24.0: dependencies: array-buffer-byte-length: 1.0.2 @@ -12677,6 +14341,13 @@ snapshots: is-date-object: 1.1.0 is-symbol: 1.1.1 + esbuild-register@3.6.0(esbuild@0.19.12): + dependencies: + debug: 4.4.3 + esbuild: 0.19.12 + transitivePeerDependencies: + - supports-color + esbuild-register@3.6.0(esbuild@0.25.12): dependencies: debug: 4.4.3 @@ -12684,6 +14355,57 @@ snapshots: transitivePeerDependencies: - supports-color + esbuild@0.18.20: + optionalDependencies: + '@esbuild/android-arm': 0.18.20 + '@esbuild/android-arm64': 0.18.20 + '@esbuild/android-x64': 0.18.20 + '@esbuild/darwin-arm64': 0.18.20 + '@esbuild/darwin-x64': 0.18.20 + '@esbuild/freebsd-arm64': 0.18.20 + '@esbuild/freebsd-x64': 0.18.20 + '@esbuild/linux-arm': 0.18.20 + '@esbuild/linux-arm64': 0.18.20 + '@esbuild/linux-ia32': 0.18.20 + '@esbuild/linux-loong64': 0.18.20 + '@esbuild/linux-mips64el': 0.18.20 + '@esbuild/linux-ppc64': 0.18.20 + '@esbuild/linux-riscv64': 0.18.20 + '@esbuild/linux-s390x': 0.18.20 + '@esbuild/linux-x64': 0.18.20 + '@esbuild/netbsd-x64': 0.18.20 + '@esbuild/openbsd-x64': 0.18.20 + '@esbuild/sunos-x64': 0.18.20 + '@esbuild/win32-arm64': 0.18.20 + '@esbuild/win32-ia32': 0.18.20 + '@esbuild/win32-x64': 0.18.20 + + esbuild@0.19.12: + optionalDependencies: + '@esbuild/aix-ppc64': 0.19.12 + '@esbuild/android-arm': 0.19.12 + '@esbuild/android-arm64': 0.19.12 + '@esbuild/android-x64': 0.19.12 + '@esbuild/darwin-arm64': 0.19.12 + '@esbuild/darwin-x64': 0.19.12 + '@esbuild/freebsd-arm64': 0.19.12 + '@esbuild/freebsd-x64': 0.19.12 + '@esbuild/linux-arm': 0.19.12 + '@esbuild/linux-arm64': 0.19.12 + '@esbuild/linux-ia32': 0.19.12 + '@esbuild/linux-loong64': 0.19.12 + '@esbuild/linux-mips64el': 0.19.12 + '@esbuild/linux-ppc64': 0.19.12 + '@esbuild/linux-riscv64': 0.19.12 + '@esbuild/linux-s390x': 0.19.12 + '@esbuild/linux-x64': 0.19.12 + '@esbuild/netbsd-x64': 0.19.12 + '@esbuild/openbsd-x64': 0.19.12 + '@esbuild/sunos-x64': 0.19.12 + '@esbuild/win32-arm64': 0.19.12 + '@esbuild/win32-ia32': 0.19.12 + '@esbuild/win32-x64': 0.19.12 + esbuild@0.21.5: optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 @@ -12776,32 +14498,12 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-config-next@16.0.4(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3): - dependencies: - '@next/eslint-plugin-next': 16.0.4 - eslint: 9.39.1(jiti@1.21.7) - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@1.21.7)) - eslint-plugin-import: 2.32.0(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@1.21.7)) - eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.1(jiti@1.21.7)) - eslint-plugin-react: 7.37.5(eslint@9.39.1(jiti@1.21.7)) - eslint-plugin-react-hooks: 7.0.1(eslint@9.39.1(jiti@1.21.7)) - globals: 16.4.0 - typescript-eslint: 8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) - optionalDependencies: - typescript: 5.9.3 - transitivePeerDependencies: - - '@typescript-eslint/parser' - - eslint-import-resolver-webpack - - eslint-plugin-import-x - - supports-color - eslint-config-next@16.0.4(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3): dependencies: '@next/eslint-plugin-next': 16.0.4 eslint: 9.39.1(jiti@2.6.1) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@2.6.1)) + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1)) eslint-plugin-import: 2.32.0(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.1(jiti@2.6.1)) eslint-plugin-react: 7.37.5(eslint@9.39.1(jiti@2.6.1)) @@ -12824,22 +14526,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@1.21.7)): - dependencies: - '@nolyfill/is-core-module': 1.0.39 - debug: 4.4.3 - eslint: 9.39.1(jiti@1.21.7) - get-tsconfig: 4.13.0 - is-bun-module: 2.0.0 - stable-hash: 0.0.5 - tinyglobby: 0.2.15 - unrs-resolver: 1.11.1 - optionalDependencies: - eslint-plugin-import: 2.32.0(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@1.21.7)) - transitivePeerDependencies: - - supports-color - - eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@2.6.1)): + eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1)): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.3 @@ -12864,23 +14551,13 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@1.21.7)): - dependencies: - debug: 3.2.7 - optionalDependencies: - eslint: 9.39.1(jiti@1.21.7) - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@1.21.7)) - transitivePeerDependencies: - - supports-color - - eslint-module-utils@2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)): + eslint-module-utils@2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1)): dependencies: debug: 3.2.7 optionalDependencies: eslint: 9.39.1(jiti@2.6.1) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.1(jiti@2.6.1)) + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1)) transitivePeerDependencies: - supports-color @@ -12913,33 +14590,6 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.32.0(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@1.21.7)): - dependencies: - '@rtsao/scc': 1.1.0 - array-includes: 3.1.9 - array.prototype.findlastindex: 1.2.6 - array.prototype.flat: 1.3.3 - array.prototype.flatmap: 1.3.3 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 9.39.1(jiti@1.21.7) - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@1.21.7)) - hasown: 2.0.2 - is-core-module: 2.16.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.8 - object.groupby: 1.0.3 - object.values: 1.2.1 - semver: 6.3.1 - string.prototype.trimend: 1.0.9 - tsconfig-paths: 3.15.0 - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - eslint-plugin-import@2.32.0(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)): dependencies: '@rtsao/scc': 1.1.0 @@ -12951,7 +14601,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.39.1(jiti@2.6.1) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.1(jiti@2.6.1)) + eslint-module-utils: 2.12.1(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1)))(eslint@9.39.1(jiti@2.6.1)) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -12967,25 +14617,6 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.1(jiti@1.21.7)): - dependencies: - aria-query: 5.3.2 - array-includes: 3.1.9 - array.prototype.flatmap: 1.3.3 - ast-types-flow: 0.0.8 - axe-core: 4.11.0 - axobject-query: 4.1.0 - damerau-levenshtein: 1.0.8 - emoji-regex: 9.2.2 - eslint: 9.39.1(jiti@1.21.7) - hasown: 2.0.2 - jsx-ast-utils: 3.3.5 - language-tags: 1.0.9 - minimatch: 3.1.2 - object.fromentries: 2.0.8 - safe-regex-test: 1.1.0 - string.prototype.includes: 2.0.1 - eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.1(jiti@2.6.1)): dependencies: aria-query: 5.3.2 @@ -13009,17 +14640,6 @@ snapshots: dependencies: eslint: 9.39.1(jiti@2.6.1) - eslint-plugin-react-hooks@7.0.1(eslint@9.39.1(jiti@1.21.7)): - dependencies: - '@babel/core': 7.28.5 - '@babel/parser': 7.28.5 - eslint: 9.39.1(jiti@1.21.7) - hermes-parser: 0.25.1 - zod: 4.1.13 - zod-validation-error: 4.0.2(zod@4.1.13) - transitivePeerDependencies: - - supports-color - eslint-plugin-react-hooks@7.0.1(eslint@9.39.1(jiti@2.6.1)): dependencies: '@babel/core': 7.28.5 @@ -13031,28 +14651,6 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-plugin-react@7.37.5(eslint@9.39.1(jiti@1.21.7)): - dependencies: - array-includes: 3.1.9 - array.prototype.findlast: 1.2.5 - array.prototype.flatmap: 1.3.3 - array.prototype.tosorted: 1.1.4 - doctrine: 2.1.0 - es-iterator-helpers: 1.2.1 - eslint: 9.39.1(jiti@1.21.7) - estraverse: 5.3.0 - hasown: 2.0.2 - jsx-ast-utils: 3.3.5 - minimatch: 3.1.2 - object.entries: 1.1.9 - object.fromentries: 2.0.8 - object.values: 1.2.1 - prop-types: 15.8.1 - resolve: 2.0.0-next.5 - semver: 6.3.1 - string.prototype.matchall: 4.0.12 - string.prototype.repeat: 1.0.0 - eslint-plugin-react@7.37.5(eslint@9.39.1(jiti@2.6.1)): dependencies: array-includes: 3.1.9 @@ -13084,47 +14682,6 @@ snapshots: eslint-visitor-keys@4.2.1: {} - eslint@9.39.1(jiti@1.21.7): - dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@1.21.7)) - '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.21.1 - '@eslint/config-helpers': 0.4.2 - '@eslint/core': 0.17.0 - '@eslint/eslintrc': 3.3.1 - '@eslint/js': 9.39.1 - '@eslint/plugin-kit': 0.4.1 - '@humanfs/node': 0.16.7 - '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.4.3 - '@types/estree': 1.0.8 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.6 - debug: 4.4.3 - escape-string-regexp: 4.0.0 - eslint-scope: 8.4.0 - eslint-visitor-keys: 4.2.1 - espree: 10.4.0 - esquery: 1.6.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 8.0.0 - find-up: 5.0.0 - glob-parent: 6.0.2 - ignore: 5.3.2 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.4 - optionalDependencies: - jiti: 1.21.7 - transitivePeerDependencies: - - supports-color - eslint@9.39.1(jiti@2.6.1): dependencies: '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.1(jiti@2.6.1)) @@ -13200,6 +14757,8 @@ snapshots: eventsource-parser@3.0.6: {} + expand-template@2.0.3: {} + expect-type@1.2.2: {} express@4.22.1: @@ -13298,6 +14857,8 @@ snapshots: dependencies: flat-cache: 4.0.1 + file-uri-to-path@1.0.0: {} + fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -13393,6 +14954,8 @@ snapshots: fresh@0.5.2: {} + fs-constants@1.0.0: {} + fs-extra@7.0.1: dependencies: graceful-fs: 4.2.11 @@ -13421,6 +14984,17 @@ snapshots: functions-have-names@1.2.3: {} + gel@2.2.0: + dependencies: + '@petamoriken/float16': 3.9.3 + debug: 4.4.3 + env-paths: 3.0.0 + semver: 7.7.3 + shell-quote: 1.8.3 + which: 4.0.0 + transitivePeerDependencies: + - supports-color + generator-function@2.0.1: {} generic-pool@3.9.0: {} @@ -13472,6 +15046,8 @@ snapshots: nypm: 0.6.2 pathe: 2.0.3 + github-from-package@0.0.0: {} + glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -13813,6 +15389,8 @@ snapshots: dependencies: safer-buffer: 2.1.2 + ieee754@1.2.1: {} + ignore@5.3.2: {} ignore@7.0.5: {} @@ -13828,6 +15406,8 @@ snapshots: inherits@2.0.4: {} + ini@1.3.8: {} + ini@4.1.1: {} inline-style-parser@0.2.7: {} @@ -14021,6 +15601,8 @@ snapshots: isexe@2.0.0: {} + isexe@3.1.1: {} + isomorphic-dompurify@2.35.0: dependencies: dompurify: 3.3.1 @@ -14151,6 +15733,14 @@ snapshots: json-stable-stringify-without-jsonify@1.0.1: {} + json-stable-stringify@1.3.0: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + isarray: 2.0.5 + jsonify: 0.0.1 + object-keys: 1.1.1 + json-stringify-safe@5.0.1: {} json5@1.0.2: @@ -14159,10 +15749,18 @@ snapshots: json5@2.2.3: {} + jsondiffpatch@0.6.0: + dependencies: + '@types/diff-match-patch': 1.0.36 + chalk: 5.6.2 + diff-match-patch: 1.0.5 + jsonfile@4.0.0: optionalDependencies: graceful-fs: 4.2.11 + jsonify@0.0.1: {} + jsonpath-plus@10.3.0: dependencies: '@jsep-plugin/assignment': 1.3.0(jsep@1.4.0) @@ -14814,6 +16412,8 @@ snapshots: mimic-function@5.0.1: {} + mimic-response@3.1.0: {} + min-indent@1.0.1: {} minimatch@10.1.1: @@ -14834,6 +16434,8 @@ snapshots: minipass@7.1.2: {} + mkdirp-classic@0.5.3: {} + mkdirp@0.5.6: dependencies: minimist: 1.2.8 @@ -14934,6 +16536,8 @@ snapshots: nanoid@5.1.6: {} + napi-build-utils@2.0.0: {} + napi-postinstall@0.3.4: {} natural-compare@1.4.0: {} @@ -14998,6 +16602,10 @@ snapshots: - '@babel/core' - babel-plugin-macros + node-abi@3.85.0: + dependencies: + semver: 7.7.3 + node-fetch-native@1.6.7: {} node-releases@2.0.27: {} @@ -15072,6 +16680,10 @@ snapshots: dependencies: ee-first: 1.1.1 + once@1.4.0: + dependencies: + wrappy: 1.0.2 + onetime@7.0.0: dependencies: mimic-function: 5.0.1 @@ -15172,6 +16784,10 @@ snapshots: dependencies: yocto-queue: 0.1.0 + p-limit@6.2.0: + dependencies: + yocto-queue: 1.2.2 + p-locate@4.1.0: dependencies: p-limit: 2.3.0 @@ -15411,6 +17027,21 @@ snapshots: dependencies: xtend: 4.0.2 + prebuild-install@7.1.3: + dependencies: + detect-libc: 2.1.2 + expand-template: 2.0.3 + github-from-package: 0.0.0 + minimist: 1.2.8 + mkdirp-classic: 0.5.3 + napi-build-utils: 2.0.0 + node-abi: 3.85.0 + pump: 3.0.3 + rc: 1.2.8 + simple-get: 4.0.1 + tar-fs: 2.1.4 + tunnel-agent: 0.6.0 + prelude-ls@1.2.1: {} prettier@2.8.8: {} @@ -15462,6 +17093,11 @@ snapshots: dependencies: punycode: 2.3.1 + pump@3.0.3: + dependencies: + end-of-stream: 1.4.5 + once: 1.4.0 + punycode@2.3.1: {} pure-rand@6.1.0: {} @@ -15490,6 +17126,13 @@ snapshots: defu: 6.1.4 destr: 2.0.5 + rc@1.2.8: + dependencies: + deep-extend: 0.6.0 + ini: 1.3.8 + minimist: 1.2.8 + strip-json-comments: 2.0.1 + react-docgen-typescript@2.4.0(typescript@5.9.3): dependencies: typescript: 5.9.3 @@ -15546,6 +17189,11 @@ snapshots: react: 19.2.0 refractor: 5.0.0 + react-virtuoso@4.18.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0): + dependencies: + react: 19.2.0 + react-dom: 19.2.0(react@19.2.0) + react@19.2.0: {} read-cache@1.0.0: @@ -15559,6 +17207,12 @@ snapshots: pify: 4.0.1 strip-bom: 3.0.0 + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + readdirp@3.6.0: dependencies: picomatch: 2.3.1 @@ -15880,6 +17534,8 @@ snapshots: secure-compare@3.0.1: {} + secure-json-parse@2.7.0: {} + semver@6.3.1: {} semver@7.7.3: {} @@ -15991,6 +17647,8 @@ snapshots: shebang-regex@3.0.0: {} + shell-quote@1.8.3: {} + shiki@3.19.0: dependencies: '@shikijs/core': 3.19.0 @@ -16036,6 +17694,14 @@ snapshots: signal-exit@4.1.0: {} + simple-concat@1.0.1: {} + + simple-get@4.0.1: + dependencies: + decompress-response: 6.0.0 + once: 1.4.0 + simple-concat: 1.0.1 + sisteransi@1.0.5: {} slash@3.0.0: {} @@ -16044,6 +17710,11 @@ snapshots: source-map-js@1.2.1: {} + source-map-support@0.5.21: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + source-map@0.6.1: {} source-map@0.7.6: {} @@ -16208,6 +17879,10 @@ snapshots: define-properties: 1.2.1 es-object-atoms: 1.1.1 + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + stringify-entities@4.0.4: dependencies: character-entities-html4: 2.1.0 @@ -16229,6 +17904,8 @@ snapshots: strip-indent@4.1.1: {} + strip-json-comments@2.0.1: {} + strip-json-comments@3.1.1: {} strip-json-comments@5.0.3: {} @@ -16314,6 +17991,21 @@ snapshots: tapable@2.3.0: {} + tar-fs@2.1.4: + dependencies: + chownr: 1.1.4 + mkdirp-classic: 0.5.3 + pump: 3.0.3 + tar-stream: 2.2.0 + + tar-stream@2.2.0: + dependencies: + bl: 4.1.0 + end-of-stream: 1.4.5 + fs-constants: 1.0.0 + inherits: 2.0.4 + readable-stream: 3.6.2 + term-size@2.2.1: {} thenify-all@1.6.0: @@ -16571,17 +18263,6 @@ snapshots: possible-typed-array-names: 1.1.0 reflect.getprototypeof: 1.0.10 - typescript-eslint@8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3): - dependencies: - '@typescript-eslint/eslint-plugin': 8.48.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/parser': 8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/typescript-estree': 8.48.0(typescript@5.9.3) - '@typescript-eslint/utils': 8.48.0(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3) - eslint: 9.39.1(jiti@1.21.7) - typescript: 5.9.3 - transitivePeerDependencies: - - supports-color - typescript-eslint@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3): dependencies: '@typescript-eslint/eslint-plugin': 8.48.0(@typescript-eslint/parser@8.48.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.1(jiti@2.6.1))(typescript@5.9.3) @@ -16938,6 +18619,10 @@ snapshots: dependencies: isexe: 2.0.0 + which@4.0.0: + dependencies: + isexe: 3.1.1 + why-is-node-running@2.3.0: dependencies: siginfo: 2.0.0 @@ -16967,6 +18652,8 @@ snapshots: string-width: 5.1.2 strip-ansi: 7.1.2 + wrappy@1.0.2: {} + ws@8.18.3: {} xml-name-validator@5.0.0: {} @@ -17004,12 +18691,18 @@ snapshots: yocto-queue@0.1.0: {} + yocto-queue@1.2.2: {} + yoctocolors-cjs@2.1.3: {} zod-to-json-schema@3.25.0(zod@3.25.76): dependencies: zod: 3.25.76 + zod-to-json-schema@3.25.0(zod@4.1.13): + dependencies: + zod: 4.1.13 + zod-validation-error@4.0.2(zod@4.1.13): dependencies: zod: 4.1.13